diff --git a/ASSESSMENT.md b/ASSESSMENT.md new file mode 100644 index 00000000..6b6d1f46 --- /dev/null +++ b/ASSESSMENT.md @@ -0,0 +1,395 @@ +# Assessment of fix/default_values Branch + +## Executive Summary + +**Recommendation: DO NOT MERGE as-is, but cherry-pick the core functionality with fixes** + +The `fix/default_values` branch contains useful improvements for CLI usability but has significant issues that prevent merging as-is: +- Branch is 14+ months old (created November 2023) +- Based on v1.7.2, while main is now at v1.8.5 +- Contains massive unrelated changes (deleted dist files, workflow modifications, removed tests) +- Has one failing test that needs updating +- Contains useful core functionality that should be preserved + +## Branch Details + +- **Branch Name**: `fix/default_values` +- **Created**: November 19, 2023 +- **Base Version**: v1.7.2 +- **Current Main**: v1.8.5 (December 2024) +- **Age**: ~14 months +- **Total Changes**: 362 files changed (mostly dist/ deletions) +- **Source Changes**: 10 files (73 insertions, 289 deletions) + +## Key Commits + +### Main Feature Commits + +1. **73f281e** (2023-11-19) - `fix(defaults): add default path for readme and action for cli usage` + - Adds default values for `pathsAction` and `pathsReadme` CLI arguments + - Makes CLI usage easier by defaulting to `./action.yml` and `README.md` + +2. **4f62514** (2023-11-19) - `fix(defaults): fix npm release blockage` + - Modifies GitHub workflow to allow releases from non-main branches + +## Changes Analysis + +### Positive Changes (Worth Keeping) + +#### 1. Default CLI Arguments (src/inputs.ts) + +**What it does:** +- Adds `default: './action.yml'` to the `pathsAction` CLI argument +- Adds `default: 'README.md'` to the `pathsReadme` CLI argument +- Adds `default?: string` to the `ArgvOptionProperties` type + +**Why it's useful:** +- Improves CLI user experience by not requiring `--action` and `--readme` flags +- Follows common conventions (most projects have action.yml and README.md in root) +- Aligns with how most CLI tools work (sensible defaults) + +**Current behavior without defaults:** +```bash +# User must specify both paths +npx github-action-readme-generator --action ./action.yml --readme README.md +``` + +**Behavior with defaults:** +```bash +# User can omit paths if using standard locations +npx github-action-readme-generator +``` + +**Code changes:** +```typescript +// Type definition enhancement +export type ArgvOptionProperties = { + [key: string]: { + alias: string | string[]; + describe: string; + parseValues?: boolean; + type?: string; + default?: string; // ✅ NEW + }; +}; + +// Action path default +argvOptions[ConfigKeys.pathsAction] = { + alias: ['pathsAction', 'action'], + type: 'string', + describe: 'Path to the action.yml', + default: './action.yml', // ✅ NEW +}; + +// README path default +argvOptions[ConfigKeys.pathsReadme] = { + alias: ['pathsReadme', 'readme'], + type: 'string', + describe: 'Path to the README file', + default: 'README.md', // ✅ NEW +}; +``` + +### Negative Changes (Should NOT Keep) + +#### 1. Deleted dist/ Files +- **Change**: Removes all 191,873 lines from `dist/bin/index.js` and other dist files +- **Impact**: Breaks the GitHub Action functionality +- **Why bad**: dist/ files are required for GitHub Actions to work without compilation +- **Status**: Current main has dist/ files properly committed + +#### 2. Removed Tests +- **Change**: Deletes 3 valuable tests in `__tests__/inputs.test.ts` + - `collectAllDefaultValuesFromAction with non-existent action.yml` + - `collectAllDefaultValuesFromAction loads this actions own action.yml` + - `loadConfig transforms INPUT_ env vars to paths` +- **Impact**: Reduces test coverage and removes important edge case validation +- **Why bad**: These tests document expected behavior and prevent regressions + +#### 3. Removed Documentation Comments +- **Change**: Removes detailed comments explaining action.yml loading behavior +- **Impact**: Makes code harder to understand for future maintainers +- **Example**: Removed this helpful comment: + ```typescript + // This loads the defaults from THIS action's own action.yml file (github-action-readme-generator's action.yml) + // NOT the user's action.yml file (which is loaded separately via the 'action' input parameter) + // Therefore, we use __dirname to find this package's action.yml regardless of where it's installed + ``` + +#### 4. Workflow Changes +- **Change**: Removes `github.ref_name == 'main'` condition from npm-release workflow +- **Impact**: Could trigger releases from any branch +- **Why bad**: Violates release management best practices + +#### 5. Action Description Changes +- **Change**: Expands the action.yml description with formatting issues +- **Impact**: Description shows `f ile`, `y ml`, `o f` (broken words), `***HOW***` markdown rendering issues +- **Why bad**: Breaks the action marketplace presentation + +#### 6. Removed Integration Test +- **Change**: Deletes `__tests__/integration-issue-335.test.ts` (103 lines) +- **Impact**: Removes regression test for a specific issue +- **Why bad**: Historical bug tests are valuable for preventing regressions + +### Test Failure + +**Failing Test:** `loadRequiredConfig: config missing` + +**Issue:** The test expects paths:action and paths:readme to be missing and throw an error, but with defaults they're no longer missing. + +**Current expectation:** +```typescript +expect(() => loadRequiredConfig(log, config)).toThrowError( + /Missing required keys: paths:action, paths:readme, owner, repo/ +); +``` + +**Actual result:** +``` +"Missing required keys: owner, repo" +``` + +**Fix needed:** Update test expectation to: +```typescript +expect(() => loadRequiredConfig(log, config)).toThrowError( + /Missing required keys: owner, repo/ +); +``` + +## Impact Assessment + +### 🟢 Benefits if Merged (Core Feature Only) + +1. **Better CLI UX**: Users can run `npx github-action-readme-generator` without specifying common file paths +2. **Follows Conventions**: Aligns with CLI tool best practices +3. **Reduced Friction**: Lowers barrier to entry for first-time users +4. **Backward Compatible**: Doesn't break existing usage (explicit paths still work) + +### 🔴 Risks if Merged As-Is + +1. **Broken Action**: Missing dist/ files would break GitHub Action functionality +2. **Lost Tests**: Reduces test coverage and removes edge case validation +3. **Release Issues**: Workflow changes could cause unintended releases +4. **Documentation Loss**: Removes helpful code comments +5. **Stale Branch**: Based on 14-month-old code, may have merge conflicts + +### ⚠️ Compatibility Concerns + +1. **Version Gap**: 1.7.2 → 1.8.5 (unknown changes in between due to grafted git history) +2. **Dependency Drift**: Package versions may have changed +3. **Test Framework**: No visible breaking changes in test structure +4. **API Changes**: Inputs API appears stable between versions + +## Recommendations + +### Option 1: Cherry-Pick Core Changes (RECOMMENDED) + +**Steps:** +1. Create a new branch from current main (v1.8.5) +2. Apply only the default values changes from `src/inputs.ts`: + - Add `default?: string` to `ArgvOptionProperties` type + - Add `default: './action.yml'` to `pathsAction` + - Add `default: 'README.md'` to `pathsReadme` +3. Update the failing test expectation +4. Run full test suite +5. Update documentation to mention new default behavior +6. Create PR with clear description + +**Estimated effort:** 30-60 minutes + +**Risk level:** Low + +### Option 2: Close Branch Without Merging + +**Rationale:** +- Branch is too old and diverged +- Core feature is small enough to re-implement fresh +- Reduces risk of introducing bugs from stale code + +**If chosen:** +1. Create new issue documenting the feature request +2. Reference commits 73f281e and 4f62514 for context +3. Close the fix/default_values branch +4. Implement fresh on current main + +**Estimated effort:** 45-90 minutes + +**Risk level:** Very low + +### Option 3: Full Merge with Cleanup (NOT RECOMMENDED) + +**Required work:** +1. Rebase branch on current main (high conflict risk) +2. Restore deleted dist/ files +3. Restore deleted tests +4. Restore documentation comments +5. Revert workflow changes +6. Revert action.yml description changes +7. Fix integration test deletion +8. Update failing test +9. Run full CI/CD pipeline + +**Estimated effort:** 4-6 hours + +**Risk level:** High + +## Testing Verification + +### Current State Tests +- ✅ 109/110 tests pass on fix/default_values branch +- ❌ 1 test fails (expected behavior change with defaults) +- ✅ Build succeeds +- ✅ CLI works with defaults + +### Required Testing After Implementation +1. **Unit Tests**: Verify default values work in inputs.test.ts +2. **Integration Tests**: Test CLI with and without explicit paths +3. **Action Tests**: Verify GitHub Action still works (with dist/ files) +4. **Backward Compatibility**: Test with explicit paths still works +5. **Error Cases**: Verify missing owner/repo still errors appropriately + +## Code Quality Notes + +### Good Practices in Branch +- ✅ Follows conventional commit format +- ✅ Clear commit messages +- ✅ Minimal code changes for feature +- ✅ Type-safe implementation + +### Issues in Branch +- ❌ Mixed concerns (feature + infrastructure changes) +- ❌ Test deletions without justification +- ❌ Documentation removals +- ❌ Large binary file changes (dist/) + +## Conclusion + +The core feature (default CLI arguments) is **valuable and should be preserved**, but the branch as a whole should **NOT be merged directly**. + +**Recommended approach:** Cherry-pick the 5-line core feature onto current main, update the test, and create a clean PR. This provides all the benefits with minimal risk. + +**Reason:** The branch contains too many problematic changes (deleted dist files, removed tests, workflow modifications) that would require extensive cleanup. The core feature is simple enough to re-apply cleanly in 30-60 minutes. + +## Implementation Guide (Option 1 - Recommended) + +### Step-by-Step Instructions + +1. **Create feature branch from main:** + ```bash + git checkout main + git pull + git checkout -b feat/cli-default-paths + ``` + +2. **Apply changes to src/inputs.ts:** + ```typescript + // Line ~46: Add to type definition + export type ArgvOptionProperties = { + [key: string]: { + alias: string | string[]; + describe: string; + parseValues?: boolean; + type?: string; + default?: string; // ADD THIS LINE + }; + }; + + // Line ~77: Add to pathsAction + argvOptions[ConfigKeys.pathsAction] = { + alias: ['pathsAction', 'action'], + type: 'string', + describe: 'Path to the action.yml', + default: './action.yml', // ADD THIS LINE + }; + + // Line ~89: Add to pathsReadme + argvOptions[ConfigKeys.pathsReadme] = { + alias: ['pathsReadme', 'readme'], + type: 'string', + describe: 'Path to the README file', + default: 'README.md', // ADD THIS LINE + }; + ``` + +3. **Update test in __tests__/inputs.test.ts:** + ```typescript + // Find the test "loadRequiredConfig: config missing" + // Update the expectation from: + expect(() => loadRequiredConfig(log, config)).toThrowError( + /Missing required keys: paths:action, paths:readme, owner, repo/ + ); + + // To: + expect(() => loadRequiredConfig(log, config)).toThrowError( + /Missing required keys: owner, repo/ + ); + ``` + +4. **Run tests:** + ```bash + npm test + ``` + +5. **Build and verify:** + ```bash + npm run build + npm run lint + ``` + +6. **Test CLI manually:** + ```bash + # Without arguments (should use defaults) + node dist/bin/index.js + + # With explicit arguments (should still work) + node dist/bin/index.js --action ./action.yml --readme README.md + ``` + +7. **Commit with conventional commit format:** + ```bash + git add src/inputs.ts __tests__/inputs.test.ts + git commit -m "feat(cli): add default values for action and readme paths + + - Add default './action.yml' for --action argument + - Add default 'README.md' for --readme argument + - Update ArgvOptionProperties type to support defaults + - Update test expectation for required config validation + + This improves CLI UX by not requiring users to specify + paths when using standard file locations. + + Closes #XXX" + ``` + +8. **Create PR with description:** + ```markdown + ## Description + Adds default values for CLI arguments to improve user experience. + + ## Changes + - Adds `default: './action.yml'` for `--action` CLI argument + - Adds `default: 'README.md'` for `--readme` CLI argument + - Updates type definition to support default values + - Updates test to reflect new behavior + + ## Motivation + Users running the CLI tool no longer need to specify `--action` and + `--readme` when using standard file locations. This follows CLI best + practices and reduces friction for new users. + + ## Testing + - [x] All existing tests pass + - [x] Updated test for required config validation + - [x] Manually tested CLI with and without arguments + - [x] Verified backward compatibility + + ## References + - Original work in fix/default_values branch (commits 73f281e, 4f62514) + ``` + +--- + +**Assessment Date:** 2024-12-28 +**Assessed By:** GitHub Copilot +**Branch Commit:** 4f62514 +**Main Version:** v1.8.5 diff --git a/README.md b/README.md index cded9cdd..7567b87c 100644 --- a/README.md +++ b/README.md @@ -133,34 +133,34 @@ This configuration will automatically regenerate your README whenever `action.ym # from. # # Default: action.yml - action: "" + action: '' # Description: The absolute or relative path to the markdown output file that # contains the formatting tokens within it. # # Default: README.md - readme: "" + readme: '' # Description: The GitHub Action repository owner, this field is autodetected by # default. Example: `bitflight-devops` or `your-gh-username` # - owner: "" + owner: '' # Description: The GitHub Action repository name, this field is autodetected by # default. Example: `github-action-readme-generator` # - repo: "" + repo: '' # Description: Save the provided values in a `.ghadocs.json` file. This will # update any existing `.ghadocs.json` file that is in place. # # Default: false - save: "" + save: '' # Description: Use `prettier` to pretty print the new README.md file # # Default: true - pretty: "" + pretty: '' # Description: Enable the update of the usage version to match the latest version # in the `package.json` file Output if your action repo is @@ -168,24 +168,24 @@ This configuration will automatically regenerate your README whenever `action.ym # `uses: reviewdog/action-eslint@1.0.1` # # Default: true - versioning_enabled: "" + versioning_enabled: '' # Description: Set a specific version to display in the README.md, maybe you want # to use a major or minor version # - version_override: "" + version_override: '' # Description: Prefix the version with this value, if it isn't already prefixed # # Default: v - version_prefix: "" + version_prefix: '' # Description: If versioning is disabled, use this branch in the usage example, # where the default is `main` Output if your action repo is # `reviewdog/action-eslint`: `uses: reviewdog/action-eslint@main` # # Default: main - versioning_default_branch: "" + versioning_default_branch: '' # Description: Add a prefix to the README title. The title template looks like # this: @@ -193,12 +193,12 @@ This configuration will automatically regenerate your README whenever `action.ym # # {brand}{prefix}{title} # # Default: GitHub Action: - title_prefix: "" + title_prefix: '' # Description: Include additional badge showing latest tag # # Default: true - include_github_version_badge: "" + include_github_version_badge: '' # Description: Create the branding svg image from the branding object in # `action.yml` then save it to this path. Then update the `README.md` file to @@ -210,7 +210,7 @@ This configuration will automatically regenerate your README whenever `action.ym # # {brand}{prefix}{title} # # Default: .github/ghadocs/branding.svg - branding_svg_path: "" + branding_svg_path: '' # Description: Prefix the title in the `` section with the svg # branding image The title template looks like this: @@ -218,7 +218,7 @@ This configuration will automatically regenerate your README whenever `action.ym # # {brand}{prefix}{title} # # Default: true - branding_as_title_prefix: "" + branding_as_title_prefix: '' ``` diff --git a/__tests__/inputs.test.ts b/__tests__/inputs.test.ts index 38899308..e9a70b01 100644 --- a/__tests__/inputs.test.ts +++ b/__tests__/inputs.test.ts @@ -227,7 +227,7 @@ describe('inputs', () => { vi.stubEnv('INPUT_ACTION', 'testaction'); expect(() => loadRequiredConfig(log, config)).toThrowError( - /Missing required keys: paths:action, paths:readme, owner, repo/, + /Missing required keys: owner, repo/, ); }); diff --git a/__tests__/integration-issue-335.test.ts b/__tests__/integration-issue-335.test.ts index e6810341..f0029628 100644 --- a/__tests__/integration-issue-335.test.ts +++ b/__tests__/integration-issue-335.test.ts @@ -46,7 +46,7 @@ describe('Integration Test - Issue #335: Execution from different directory', () } }); - it('should fail when executed from a directory other than the project root', async () => { + it('should work when executed from a directory other than the project root with defaults', async () => { // Step 1: Create a temporary directory to simulate user's project tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'gha-test-335-')); @@ -93,11 +93,12 @@ runs: // The fix gracefully handles this by logging a debug message and returning empty defaults // In our test, we've moved the action.yml file to simulate this scenario - // The test validates that the current implementation gracefully handles missing action.yml - // but still requires other required inputs (paths:action, paths:readme) + // With default values for paths:action (./action.yml) and paths:readme (README.md), + // and with owner/repo auto-detected from the .git config, the tool now works + // without requiring any explicit inputs - this is the desired behavior! expect(() => { // eslint-disable-next-line no-new new Inputs({}, log); - }).toThrow(/Missing required keys/); + }).not.toThrow(); }); }); diff --git a/dist/bin/index.js b/dist/bin/index.js index c50f7655..5c03735f 100755 --- a/dist/bin/index.js +++ b/dist/bin/index.js @@ -168831,12 +168831,14 @@ argvOptions["save" /* Save */] = { argvOptions["paths:action" /* pathsAction */] = { alias: ["pathsAction", "action"], type: "string", - describe: "Path to the action.yml" + describe: "Path to the action.yml", + default: "./action.yml" }; argvOptions["paths:readme" /* pathsReadme */] = { alias: ["pathsReadme", "readme"], type: "string", - describe: "Path to the README file" + describe: "Path to the README file", + default: "README.md" }; argvOptions["branding_svg_path" /* BrandingSvgPath */] = { alias: "svg", @@ -191870,4 +191872,4 @@ feather-icons/dist/feather.js: sax/lib/sax.js: (*! http://mths.be/fromcodepoint v0.1.0 by @mathias *) */ -//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vbm9kZV9tb2R1bGVzL0BhY3Rpb25zL2NvcmUvc3JjL3V0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9jb21tYW5kLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9maWxlLWNvbW1hbmQudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BhY3Rpb25zL2h0dHAtY2xpZW50L3NyYy9wcm94eS50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdHVubmVsL2xpYi90dW5uZWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3R1bm5lbC9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jb3JlL3N5bWJvbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY29yZS9lcnJvcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY29yZS9jb25zdGFudHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY29yZS91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3RpbWVycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2RlcHMvc3RyZWFtc2VhcmNoL3NibWguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYXN0aWZ5L2J1c2JveS9kZXBzL2RpY2VyL2xpYi9QYXJ0U3RyZWFtLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvbGliL3V0aWxzL2dldExpbWl0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvZGVwcy9kaWNlci9saWIvSGVhZGVyUGFyc2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvZGVwcy9kaWNlci9saWIvRGljZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYXN0aWZ5L2J1c2JveS9saWIvdXRpbHMvZGVjb2RlVGV4dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi91dGlscy9wYXJzZVBhcmFtcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi91dGlscy9iYXNlbmFtZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi90eXBlcy9tdWx0aXBhcnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYXN0aWZ5L2J1c2JveS9saWIvdXRpbHMvRGVjb2Rlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi90eXBlcy91cmxlbmNvZGVkLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvbGliL21haW4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvY29uc3RhbnRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL2dsb2JhbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL3N5bWJvbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvd2ViaWRsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL2RhdGFVUkwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvZmlsZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC9mb3JtZGF0YS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC9ib2R5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2NvcmUvcmVxdWVzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9kaXNwYXRjaGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Rpc3BhdGNoZXItYmFzZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jb3JlL2Nvbm5lY3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9zcmMvbGxodHRwL3V0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvc3JjL2xsaHR0cC9jb25zdGFudHMudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvaGFuZGxlci9SZWRpcmVjdEhhbmRsZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvaW50ZXJjZXB0b3IvcmVkaXJlY3RJbnRlcmNlcHRvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9sbGh0dHAvbGxodHRwLXdhc20uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbGxodHRwL2xsaHR0cF9zaW1kLXdhc20uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY2xpZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL25vZGUvZml4ZWQtcXVldWUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvcG9vbC1zdGF0cy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9wb29sLWJhc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvcG9vbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9iYWxhbmNlZC1wb29sLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2NvbXBhdC9kaXNwYXRjaGVyLXdlYWtyZWYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYWdlbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYXBpL3JlYWRhYmxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hYm9ydC1zaWduYWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYXBpL2FwaS1yZXF1ZXN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hcGktc3RyZWFtLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hcGktcGlwZWxpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYXBpL2FwaS11cGdyYWRlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hcGktY29ubmVjdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9hcGkvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9tb2NrLWVycm9ycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9tb2NrL21vY2stc3ltYm9scy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9tb2NrL21vY2stdXRpbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9tb2NrLWludGVyY2VwdG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL21vY2svbW9jay1jbGllbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9tb2NrLXBvb2wuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9wbHVyYWxpemVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL21vY2svcGVuZGluZy1pbnRlcmNlcHRvcnMtZm9ybWF0dGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL21vY2svbW9jay1hZ2VudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9wcm94eS1hZ2VudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9oYW5kbGVyL1JldHJ5SGFuZGxlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9nbG9iYWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvaGFuZGxlci9EZWNvcmF0b3JIYW5kbGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL2hlYWRlcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvcmVzcG9uc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvcmVxdWVzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9maWxlYXBpL3N5bWJvbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmlsZWFwaS9wcm9ncmVzc2V2ZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZpbGVhcGkvZW5jb2RpbmcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmlsZWFwaS91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZpbGVhcGkvZmlsZXJlYWRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jYWNoZS9zeW1ib2xzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2NhY2hlL3V0aWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY2FjaGUvY2FjaGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY2FjaGUvY2FjaGVzdG9yYWdlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Nvb2tpZXMvY29uc3RhbnRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Nvb2tpZXMvdXRpbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jb29raWVzL3BhcnNlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Nvb2tpZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvd2Vic29ja2V0L2NvbnN0YW50cy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi93ZWJzb2NrZXQvc3ltYm9scy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi93ZWJzb2NrZXQvZXZlbnRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3dlYnNvY2tldC91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3dlYnNvY2tldC9jb25uZWN0aW9uLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3dlYnNvY2tldC9mcmFtZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi93ZWJzb2NrZXQvcmVjZWl2ZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvd2Vic29ja2V0L3dlYnNvY2tldC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9odHRwLWNsaWVudC9zcmMvaW5kZXgudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BhY3Rpb25zL2h0dHAtY2xpZW50L3NyYy9hdXRoLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9vaWRjLXV0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9zdW1tYXJ5LnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9wYXRoLXV0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9pby9zcmMvaW8tdXRpbC50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGFjdGlvbnMvaW8vc3JjL2lvLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9leGVjL3NyYy90b29scnVubmVyLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9leGVjL3NyYy9leGVjLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9wbGF0Zm9ybS50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGFjdGlvbnMvY29yZS9zcmMvY29yZS50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGFjdGlvbnMvZ2l0aHViL3NyYy9jb250ZXh0LnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9hc3luYy9kaXN0L2FzeW5jLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9ub2RlX21vZHVsZXMvaW5pL2luaS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbGliL25jb25mL2Zvcm1hdHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL25jb25mL2xpYi9uY29uZi9zdG9yZXMvbWVtb3J5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYvY29tbW9uLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYvcHJvdmlkZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL25jb25mL3BhY2thZ2UuanNvbiIsICIuLi8uLi9ub2RlX21vZHVsZXMveTE4bi9idWlsZC9pbmRleC5janMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhcmdzLXBhcnNlci9idWlsZC9pbmRleC5janMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Fuc2ktcmVnZXgvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N0cmlwLWFuc2kvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N0cmluZy13aWR0aC9ub2RlX21vZHVsZXMvaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Vtb2ppLXJlZ2V4L2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdHJpbmctd2lkdGgvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Fuc2ktc3R5bGVzL25vZGVfbW9kdWxlcy9jb2xvci1uYW1lL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9hbnNpLXN0eWxlcy9ub2RlX21vZHVsZXMvY29sb3ItY29udmVydC9jb252ZXJzaW9ucy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYW5zaS1zdHlsZXMvbm9kZV9tb2R1bGVzL2NvbG9yLWNvbnZlcnQvcm91dGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Fuc2ktc3R5bGVzL25vZGVfbW9kdWxlcy9jb2xvci1jb252ZXJ0L2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9hbnNpLXN0eWxlcy9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL3dyYXAtYW5zaS9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL2NsaXVpL2J1aWxkL2luZGV4LmNqcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZXNjYWxhZGUvc3luYy9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZ2V0LWNhbGxlci1maWxlL2luZGV4LnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXF1aXJlLWRpcmVjdG9yeS9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL3lhcmdzL2J1aWxkL2luZGV4LmNqcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL3lhcmdzL2luZGV4LmNqcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbGliL25jb25mL3N0b3Jlcy9hcmd2LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYvc3RvcmVzL2Vudi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc2VjdXJlLWtleXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL25jb25mL2xpYi9uY29uZi9zdG9yZXMvZmlsZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbGliL25jb25mL3N0b3Jlcy9saXRlcmFsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy9pZGVudGl0eS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3Zpc2l0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvZG9jL2RpcmVjdGl2ZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9kb2MvYW5jaG9ycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2RvYy9hcHBseVJldml2ZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy90b0pTLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvbm9kZXMvTm9kZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL0FsaWFzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvbm9kZXMvU2NhbGFyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvZG9jL2NyZWF0ZU5vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy9Db2xsZWN0aW9uLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc3RyaW5naWZ5L3N0cmluZ2lmeUNvbW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zdHJpbmdpZnkvZm9sZEZsb3dMaW5lcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3N0cmluZ2lmeS9zdHJpbmdpZnlTdHJpbmcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zdHJpbmdpZnkvc3RyaW5naWZ5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc3RyaW5naWZ5L3N0cmluZ2lmeVBhaXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9sb2cuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvbWVyZ2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy9hZGRQYWlyVG9KU01hcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL1BhaXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zdHJpbmdpZnkvc3RyaW5naWZ5Q29sbGVjdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL1lBTUxNYXAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEvY29tbW9uL21hcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL1lBTUxTZXEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEvY29tbW9uL3NlcS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9jb21tb24vc3RyaW5nLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL2NvbW1vbi9udWxsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL2NvcmUvYm9vbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEvY29yZS9mbG9hdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9jb3JlL2ludC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9jb3JlL3NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9qc29uL3NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS95YW1sLTEuMS9iaW5hcnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvcGFpcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvb21hcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS95YW1sLTEuMS9ib29sLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL3lhbWwtMS4xL2Zsb2F0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL3lhbWwtMS4xL2ludC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS95YW1sLTEuMS9zZXQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvdGltZXN0YW1wLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL3lhbWwtMS4xL3NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS90YWdzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL1NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3N0cmluZ2lmeS9zdHJpbmdpZnlEb2N1bWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2RvYy9Eb2N1bWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2Vycm9ycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1wcm9wcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvdXRpbC1jb250YWlucy1uZXdsaW5lLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS91dGlsLWZsb3ctaW5kZW50LWNoZWNrLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS91dGlsLW1hcC1pbmNsdWRlcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1ibG9jay1tYXAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL3Jlc29sdmUtYmxvY2stc2VxLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS9yZXNvbHZlLWVuZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1mbG93LWNvbGxlY3Rpb24uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL2NvbXBvc2UtY29sbGVjdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1ibG9jay1zY2FsYXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL3Jlc29sdmUtZmxvdy1zY2FsYXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL2NvbXBvc2Utc2NhbGFyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS91dGlsLWVtcHR5LXNjYWxhci1wb3NpdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvY29tcG9zZS1ub2RlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS9jb21wb3NlLWRvYy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvY29tcG9zZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9wYXJzZS9jc3Qtc2NhbGFyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcGFyc2UvY3N0LXN0cmluZ2lmeS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3BhcnNlL2NzdC12aXNpdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3BhcnNlL2NzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3BhcnNlL2xleGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcGFyc2UvbGluZS1jb3VudGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcGFyc2UvcGFyc2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcHVibGljLWFwaS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2luZGV4LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL3dlYnBhY2svdW5pdmVyc2FsTW9kdWxlRGVmaW5pdGlvbiIsICJ3ZWJwYWNrOi8vZmVhdGhlci93ZWJwYWNrL2Jvb3RzdHJhcCIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY2xhc3NuYW1lcy9kZWR1cGUuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvZXMvYXJyYXkvZnJvbS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvYS1mdW5jdGlvbi5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvYW4tb2JqZWN0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9hcnJheS1mcm9tLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9hcnJheS1pbmNsdWRlcy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvYmluZC1jb250ZXh0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9jYWxsLXdpdGgtc2FmZS1pdGVyYXRpb24tY2xvc2luZy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY2hlY2stY29ycmVjdG5lc3Mtb2YtaXRlcmF0aW9uLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9jbGFzc29mLXJhdy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY2xhc3NvZi5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY29weS1jb25zdHJ1Y3Rvci1wcm9wZXJ0aWVzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9jb3JyZWN0LXByb3RvdHlwZS1nZXR0ZXIuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2NyZWF0ZS1pdGVyYXRvci1jb25zdHJ1Y3Rvci5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY3JlYXRlLXByb3BlcnR5LWRlc2NyaXB0b3IuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZGVmaW5lLWl0ZXJhdG9yLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9kZXNjcmlwdG9ycy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZG9jdW1lbnQtY3JlYXRlLWVsZW1lbnQuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2VudW0tYnVnLWtleXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2V4cG9ydC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZmFpbHMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2Z1bmN0aW9uLXRvLXN0cmluZy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZ2V0LWl0ZXJhdG9yLW1ldGhvZC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZ2xvYmFsLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9oYXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2hpZGRlbi1rZXlzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9oaWRlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9odG1sLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pZTgtZG9tLWRlZmluZS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvaW5kZXhlZC1vYmplY3QuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2ludGVybmFsLXN0YXRlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pcy1hcnJheS1pdGVyYXRvci1tZXRob2QuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2lzLWZvcmNlZC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvaXMtb2JqZWN0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pcy1wdXJlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pdGVyYXRvcnMtY29yZS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvaXRlcmF0b3JzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9uYXRpdmUtc3ltYm9sLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9uYXRpdmUtd2Vhay1tYXAuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1jcmVhdGUuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1kZWZpbmUtcHJvcGVydGllcy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWRlZmluZS1wcm9wZXJ0eS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktZGVzY3JpcHRvci5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktbmFtZXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1nZXQtb3duLXByb3BlcnR5LXN5bWJvbHMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1nZXQtcHJvdG90eXBlLW9mLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9vYmplY3Qta2V5cy1pbnRlcm5hbC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWtleXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1wcm9wZXJ0eS1pcy1lbnVtZXJhYmxlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9vYmplY3Qtc2V0LXByb3RvdHlwZS1vZi5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb3duLWtleXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3BhdGguanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3JlZGVmaW5lLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9yZXF1aXJlLW9iamVjdC1jb2VyY2libGUuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3NldC1nbG9iYWwuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3NldC10by1zdHJpbmctdGFnLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9zaGFyZWQta2V5LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9zaGFyZWQuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3N0cmluZy1hdC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvdG8tYWJzb2x1dGUtaW5kZXguanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3RvLWluZGV4ZWQtb2JqZWN0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy90by1pbnRlZ2VyLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy90by1sZW5ndGguanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3RvLW9iamVjdC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvdG8tcHJpbWl0aXZlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy91aWQuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3ZhbGlkYXRlLXNldC1wcm90b3R5cGUtb2YtYXJndW1lbnRzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmZyb20uanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcuaXRlcmF0b3IuanMiLCAid2VicGFjazovL2ZlYXRoZXIvKHdlYnBhY2spL2J1aWxkaW4vZ2xvYmFsLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL3NyYy9pY29uLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL3NyYy9pY29ucy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9zcmMvaW5kZXguanMiLCAid2VicGFjazovL2ZlYXRoZXIvc3JjL3JlcGxhY2UuanMiLCAid2VicGFjazovL2ZlYXRoZXIvc3JjL3RvLXN2Zy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc2F4L2xpYi9zYXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2luaGVyaXRzL2luaGVyaXRzX2Jyb3dzZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2luaGVyaXRzL2luaGVyaXRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9xdWV1ZS9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvYm1wLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvaWNvLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvY3VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvZGRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvZ2lmLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvaGVpZi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL2ljbnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy9qMmMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy9qcDIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy9qcGcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC91dGlscy9iaXQtcmVhZGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvanhsLXN0cmVhbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL2p4bC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL2t0eC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3BuZy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3BubS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3BzZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3N2Zy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3RnYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3RpZmYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy93ZWJwLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC9kZXRlY3Rvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mYXN0LWRlZXAtZXF1YWwvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jhc2U2NC1qcy9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdGlueS1pbmZsYXRlL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmljb2RlLXRyaWUvc3dhcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5pY29kZS10cmllL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9kZmEvc3JjL1N0YXRlTWFjaGluZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvY2xvbmUvY2xvbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jyb3RsaS9kZWMvc3RyZWFtcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlYy9iaXRfcmVhZGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9icm90bGkvZGVjL2RpY3Rpb25hcnktZGF0YS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlYy9kaWN0aW9uYXJ5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9icm90bGkvZGVjL2h1ZmZtYW4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jyb3RsaS9kZWMvY29udGV4dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlYy9wcmVmaXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jyb3RsaS9kZWMvdHJhbnNmb3JtLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9icm90bGkvZGVjL2RlY29kZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlY29tcHJlc3MuanMiLCAiLi4vLi4vc3JjL2lucHV0cy50cyIsICIuLi8uLi9zcmMvQWN0aW9uLnRzIiwgIi4uLy4uL3NyYy9jb25zdGFudHMudHMiLCAiLi4vLi4vc3JjL2xvZ3Rhc2svaW5kZXgudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS92ZW5kb3IvYW5zaS1zdHlsZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS92ZW5kb3Ivc3VwcG9ydHMtY29sb3IvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS91dGlsaXRpZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS9pbmRleC5qcyIsICIuLi8uLi9zcmMvdXRpbC50cyIsICIuLi8uLi9zcmMvaGVscGVycy50cyIsICIuLi8uLi9zcmMvdW5pY29kZS13b3JkLW1hdGNoLnRzIiwgIi4uLy4uL3NyYy9yZWFkbWUtZWRpdG9yLnRzIiwgIi4uLy4uL3NyYy9wcmV0dGllci50cyIsICIuLi8uLi9zcmMvcmVhZG1lLWdlbmVyYXRvci50cyIsICIuLi8uLi9zcmMvc2VjdGlvbnMvdXBkYXRlLWJhZGdlcy50cyIsICIuLi8uLi9zcmMvc3ZnLWVkaXRvci5tdHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3V0aWxzL21ldGhvZHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3V0aWxzL3V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvbmFtZXNwYWNlcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdXRpbHMvd2luZG93LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9CYXNlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy91dGlscy9hZG9wdGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL29wdGlvbmFsL2FycmFuZ2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL21vZHVsZXMvY29yZS9yZWdleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9vcHRpb25hbC9jbGFzcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9vcHRpb25hbC9jc3MuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL21vZHVsZXMvb3B0aW9uYWwvZGF0YS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9vcHRpb25hbC9tZW1vcnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3R5cGVzL0NvbG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9Qb2ludC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdHlwZXMvTWF0cml4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvcGFyc2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9Cb3guanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3R5cGVzL0xpc3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL21vZHVsZXMvY29yZS9zZWxlY3Rvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9jb3JlL2V2ZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9FdmVudFRhcmdldC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9jb3JlL2RlZmF1bHRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9TVkdBcnJheS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdHlwZXMvU1ZHTnVtYmVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvYXR0ci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvRG9tLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9FbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL29wdGlvbmFsL3N1Z2FyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL29wdGlvbmFsL3RyYW5zZm9ybS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvQ29udGFpbmVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9EZWZzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9TaGFwZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9jb3JlL2NpcmNsZWQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0VsbGlwc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0ZyYWdtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvZ3JhZGllbnRlZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvR3JhZGllbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1BhdHRlcm4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0ltYWdlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9Qb2ludEFycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvcG9pbnRlZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvTGluZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvTWFya2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9hbmltYXRpb24vQ29udHJvbGxlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdXRpbHMvcGF0aFBhcnNlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdHlwZXMvUGF0aEFycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9hbmltYXRpb24vTW9ycGhhYmxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9QYXRoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvcG9seS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvUG9seWdvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvUG9seWxpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1JlY3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2FuaW1hdGlvbi9RdWV1ZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvYW5pbWF0aW9uL0FuaW1hdG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9hbmltYXRpb24vVGltZWxpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2FuaW1hdGlvbi9SdW5uZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1N2Zy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvU3ltYm9sLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvdGV4dGFibGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1RleHQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1RzcGFuLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9DaXJjbGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0NsaXBQYXRoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9Gb3JlaWduT2JqZWN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvY29udGFpbmVyR2VvbWV0cnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0cuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0EuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL01hc2suanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1N0b3AuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1N0eWxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9UZXh0UGF0aC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvVXNlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tYWluLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL2RlZmF1bHRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL29iamVjdENyZWF0aW9uVXRpbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0V2ZW50VGFyZ2V0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3RhZ1V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL25hbWVzcGFjZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL05vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0F0dHIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL21peGlucy9Ob25Eb2N1bWVudFR5cGVDaGlsZE5vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvbm9kZXNUb05vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL21peGlucy9DaGlsZE5vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0NoYXJhY3RlckRhdGEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0NvbW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0V2ZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9DdXN0b21FdmVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vVGV4dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vTm9kZUZpbHRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy91dGlscy9Ob2RlSXRlcmF0b3IuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL21peGlucy9lbGVtZW50QWNjZXNzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3N0clV0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3JlZ2V4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL290aGVyL0Nzc1F1ZXJ5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9taXhpbnMvUGFyZW50Tm9kZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vbWl4aW5zL05vbkVsZW1lbnRQYXJlbnROb2RlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9Eb2N1bWVudEZyYWdtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9odG1sL0hUTUxQYXJzZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvbWFwVXRpbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0VsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL2h0bWwvSFRNTEVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL2h0bWwvSFRNTExpbmtFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL3N2Zy9TVkdFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHUG9pbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvb3RoZXIvUG9pbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvb3RoZXIvQm94LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHTWF0cml4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL1BvaW50Q2xvdWQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvcGF0aFV0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3RleHRVdGlscy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0RlY29kZVN0cmVhbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0VuY29kZVN0cmVhbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0Jhc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy9OdW1iZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy91dGlscy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0FycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvTGF6eUFycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvQml0ZmllbGQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy9CdWZmZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy9PcHRpb25hbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL1Jlc2VydmVkLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvU3RyaW5nLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvU3RydWN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvVmVyc2lvbmVkU3RydWN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvUG9pbnRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9fZGVmaW5lX3Byb3BlcnR5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy90c2xpYi90c2xpYi5lczYubWpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmljb2RlLXByb3BlcnRpZXMvZGlzdC9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5pY29kZS1wcm9wZXJ0aWVzL2Rpc3QvZGF0YS5qc29uIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL25vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvYmFzZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9mcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9UVEZGb250LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2RlY29yYXRvcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2RpcmVjdG9yeS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2NtYXAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2hlYWQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2hoZWEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2htdHguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL21heHAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL25hbWUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZW5jb2RpbmdzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3RhYmxlcy9PUzIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3Bvc3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2N2dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZnBnbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvbG9jYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvcHJlcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZ2x5Zi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGRm9udC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGSW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvY2ZmL0NGRlRvcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGRGljdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGT3BlcmFuZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGUG9pbnRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGUHJpdmF0ZURpY3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvY2ZmL0NGRlN0YW5kYXJkU3RyaW5ncy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGRW5jb2RpbmdzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2NmZi9DRkZDaGFyc2V0cy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvdmFyaWF0aW9ucy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvb3BlbnR5cGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1ZPUkcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0VCTEMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0VCRFQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3NiaXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0NPTFIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0NQQUwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0JBU0UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0dERUYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0dQT1MuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0dTVUIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0pTVEYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0hWQVIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0RTSUcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2dhc3AuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2hkbXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2tlcm4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0xUU0guanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1BDTFQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1ZETVguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3ZoZWEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3ZtdHguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2F2YXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2JzbG4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2FhdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZmVhdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZnZhci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZ3Zhci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvanVzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvbW9yeC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvb3BiZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9DbWFwUHJvY2Vzc29yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2xheW91dC9MYXlvdXRFbmdpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L0tlcm5Qcm9jZXNzb3IuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L1VuaWNvZGVMYXlvdXRFbmdpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L0dseXBoUnVuLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL0JCb3guanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L1NjcmlwdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9sYXlvdXQvR2x5cGhQb3NpdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9hYXQvQUFUTGF5b3V0RW5naW5lLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2FhdC9BQVRGZWF0dXJlTWFwLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2FhdC9BQVRNb3J4UHJvY2Vzc29yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2FhdC9BQVRTdGF0ZU1hY2hpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvYWF0L0FBVExvb2t1cFRhYmxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL09UTGF5b3V0RW5naW5lLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL1NoYXBpbmdQbGFuLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvc2hhcGVycy9EZWZhdWx0U2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvQXJhYmljU2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvSGFuZ3VsU2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL0dseXBoSW5mby5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9vcGVudHlwZS9PVFByb2Nlc3Nvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9vcGVudHlwZS9HbHlwaEl0ZXJhdG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvSW5kaWNTaGFwZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvc2hhcGVycy9pbmRpYy5qc29uIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvdXNlLmpzb24iLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvc2hhcGVycy9pbmRpYy1kYXRhLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvVW5pdmVyc2FsU2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL0dTVUJQcm9jZXNzb3IuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvR1BPU1Byb2Nlc3Nvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9UVEZHbHlwaC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9HbHlwaC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9QYXRoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL1N0YW5kYXJkTmFtZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZ2x5cGgvQ0ZGR2x5cGguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZ2x5cGgvU0JJWEdseXBoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL0NPTFJHbHlwaC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9HbHlwaFZhcmlhdGlvblByb2Nlc3Nvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9zdWJzZXQvVFRGU3Vic2V0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3N1YnNldC9TdWJzZXQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZ2x5cGgvVFRGR2x5cGhFbmNvZGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3N1YnNldC9DRkZTdWJzZXQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvV09GRkZvbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1dPRkZEaXJlY3RvcnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvV09GRjJGb250LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL1dPRkYyR2x5cGguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1dPRkYyRGlyZWN0b3J5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL1RydWVUeXBlQ29sbGVjdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9ERm9udC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9jb25maWcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvYmJveFV0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHR3JhcGhpY3NFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHU1ZHRWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR1BhdGhFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHTGVuZ3RoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHQW5pbWF0ZWRMZW5ndGguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0RvY3VtZW50VHlwZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR1JlY3RFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR0xpbmVFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL3N2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR0ltYWdlRWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vRG9jdW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL1dpbmRvdy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9mYWN0b3JpZXMuanMiLCAiLi4vLi4vc3JjL3NlY3Rpb25zL3VwZGF0ZS1icmFuZGluZy50cyIsICIuLi8uLi9zcmMvc2VjdGlvbnMvdXBkYXRlLWRlc2NyaXB0aW9uLnRzIiwgIi4uLy4uL3NyYy9tYXJrZG93bmVyL2luZGV4LnRzIiwgIi4uLy4uL3NyYy9zZWN0aW9ucy91cGRhdGUtaW5wdXRzLnRzIiwgIi4uLy4uL3NyYy9zZWN0aW9ucy91cGRhdGUtb3V0cHV0cy50cyIsICIuLi8uLi9zcmMvc2VjdGlvbnMvdXBkYXRlLXRpdGxlLnRzIiwgIi4uLy4uL3NyYy9zZWN0aW9ucy91cGRhdGUtdXNhZ2UudHMiLCAiLi4vLi4vc3JjL3NlY3Rpb25zL2luZGV4LnRzIiwgIi4uLy4uL3NyYy9jb25maWcudHMiLCAiLi4vLi4vc3JjL3NhdmUudHMiLCAiLi4vLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogW251bGwsIG51bGwsIG51bGwsIG51bGwsICIndXNlIHN0cmljdCc7XG5cbnZhciBuZXQgPSByZXF1aXJlKCduZXQnKTtcbnZhciB0bHMgPSByZXF1aXJlKCd0bHMnKTtcbnZhciBodHRwID0gcmVxdWlyZSgnaHR0cCcpO1xudmFyIGh0dHBzID0gcmVxdWlyZSgnaHR0cHMnKTtcbnZhciBldmVudHMgPSByZXF1aXJlKCdldmVudHMnKTtcbnZhciBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKTtcbnZhciB1dGlsID0gcmVxdWlyZSgndXRpbCcpO1xuXG5cbmV4cG9ydHMuaHR0cE92ZXJIdHRwID0gaHR0cE92ZXJIdHRwO1xuZXhwb3J0cy5odHRwc092ZXJIdHRwID0gaHR0cHNPdmVySHR0cDtcbmV4cG9ydHMuaHR0cE92ZXJIdHRwcyA9IGh0dHBPdmVySHR0cHM7XG5leHBvcnRzLmh0dHBzT3Zlckh0dHBzID0gaHR0cHNPdmVySHR0cHM7XG5cblxuZnVuY3Rpb24gaHR0cE92ZXJIdHRwKG9wdGlvbnMpIHtcbiAgdmFyIGFnZW50ID0gbmV3IFR1bm5lbGluZ0FnZW50KG9wdGlvbnMpO1xuICBhZ2VudC5yZXF1ZXN0ID0gaHR0cC5yZXF1ZXN0O1xuICByZXR1cm4gYWdlbnQ7XG59XG5cbmZ1bmN0aW9uIGh0dHBzT3Zlckh0dHAob3B0aW9ucykge1xuICB2YXIgYWdlbnQgPSBuZXcgVHVubmVsaW5nQWdlbnQob3B0aW9ucyk7XG4gIGFnZW50LnJlcXVlc3QgPSBodHRwLnJlcXVlc3Q7XG4gIGFnZW50LmNyZWF0ZVNvY2tldCA9IGNyZWF0ZVNlY3VyZVNvY2tldDtcbiAgYWdlbnQuZGVmYXVsdFBvcnQgPSA0NDM7XG4gIHJldHVybiBhZ2VudDtcbn1cblxuZnVuY3Rpb24gaHR0cE92ZXJIdHRwcyhvcHRpb25zKSB7XG4gIHZhciBhZ2VudCA9IG5ldyBUdW5uZWxpbmdBZ2VudChvcHRpb25zKTtcbiAgYWdlbnQucmVxdWVzdCA9IGh0dHBzLnJlcXVlc3Q7XG4gIHJldHVybiBhZ2VudDtcbn1cblxuZnVuY3Rpb24gaHR0cHNPdmVySHR0cHMob3B0aW9ucykge1xuICB2YXIgYWdlbnQgPSBuZXcgVHVubmVsaW5nQWdlbnQob3B0aW9ucyk7XG4gIGFnZW50LnJlcXVlc3QgPSBodHRwcy5yZXF1ZXN0O1xuICBhZ2VudC5jcmVhdGVTb2NrZXQgPSBjcmVhdGVTZWN1cmVTb2NrZXQ7XG4gIGFnZW50LmRlZmF1bHRQb3J0ID0gNDQzO1xuICByZXR1cm4gYWdlbnQ7XG59XG5cblxuZnVuY3Rpb24gVHVubmVsaW5nQWdlbnQob3B0aW9ucykge1xuICB2YXIgc2VsZiA9IHRoaXM7XG4gIHNlbGYub3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gIHNlbGYucHJveHlPcHRpb25zID0gc2VsZi5vcHRpb25zLnByb3h5IHx8IHt9O1xuICBzZWxmLm1heFNvY2tldHMgPSBzZWxmLm9wdGlvbnMubWF4U29ja2V0cyB8fCBodHRwLkFnZW50LmRlZmF1bHRNYXhTb2NrZXRzO1xuICBzZWxmLnJlcXVlc3RzID0gW107XG4gIHNlbGYuc29ja2V0cyA9IFtdO1xuXG4gIHNlbGYub24oJ2ZyZWUnLCBmdW5jdGlvbiBvbkZyZWUoc29ja2V0LCBob3N0LCBwb3J0LCBsb2NhbEFkZHJlc3MpIHtcbiAgICB2YXIgb3B0aW9ucyA9IHRvT3B0aW9ucyhob3N0LCBwb3J0LCBsb2NhbEFkZHJlc3MpO1xuICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSBzZWxmLnJlcXVlc3RzLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICB2YXIgcGVuZGluZyA9IHNlbGYucmVxdWVzdHNbaV07XG4gICAgICBpZiAocGVuZGluZy5ob3N0ID09PSBvcHRpb25zLmhvc3QgJiYgcGVuZGluZy5wb3J0ID09PSBvcHRpb25zLnBvcnQpIHtcbiAgICAgICAgLy8gRGV0ZWN0IHRoZSByZXF1ZXN0IHRvIGNvbm5lY3Qgc2FtZSBvcmlnaW4gc2VydmVyLFxuICAgICAgICAvLyByZXVzZSB0aGUgY29ubmVjdGlvbi5cbiAgICAgICAgc2VsZi5yZXF1ZXN0cy5zcGxpY2UoaSwgMSk7XG4gICAgICAgIHBlbmRpbmcucmVxdWVzdC5vblNvY2tldChzb2NrZXQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHNvY2tldC5kZXN0cm95KCk7XG4gICAgc2VsZi5yZW1vdmVTb2NrZXQoc29ja2V0KTtcbiAgfSk7XG59XG51dGlsLmluaGVyaXRzKFR1bm5lbGluZ0FnZW50LCBldmVudHMuRXZlbnRFbWl0dGVyKTtcblxuVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLmFkZFJlcXVlc3QgPSBmdW5jdGlvbiBhZGRSZXF1ZXN0KHJlcSwgaG9zdCwgcG9ydCwgbG9jYWxBZGRyZXNzKSB7XG4gIHZhciBzZWxmID0gdGhpcztcbiAgdmFyIG9wdGlvbnMgPSBtZXJnZU9wdGlvbnMoe3JlcXVlc3Q6IHJlcX0sIHNlbGYub3B0aW9ucywgdG9PcHRpb25zKGhvc3QsIHBvcnQsIGxvY2FsQWRkcmVzcykpO1xuXG4gIGlmIChzZWxmLnNvY2tldHMubGVuZ3RoID49IHRoaXMubWF4U29ja2V0cykge1xuICAgIC8vIFdlIGFyZSBvdmVyIGxpbWl0IHNvIHdlJ2xsIGFkZCBpdCB0byB0aGUgcXVldWUuXG4gICAgc2VsZi5yZXF1ZXN0cy5wdXNoKG9wdGlvbnMpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8vIElmIHdlIGFyZSB1bmRlciBtYXhTb2NrZXRzIGNyZWF0ZSBhIG5ldyBvbmUuXG4gIHNlbGYuY3JlYXRlU29ja2V0KG9wdGlvbnMsIGZ1bmN0aW9uKHNvY2tldCkge1xuICAgIHNvY2tldC5vbignZnJlZScsIG9uRnJlZSk7XG4gICAgc29ja2V0Lm9uKCdjbG9zZScsIG9uQ2xvc2VPclJlbW92ZSk7XG4gICAgc29ja2V0Lm9uKCdhZ2VudFJlbW92ZScsIG9uQ2xvc2VPclJlbW92ZSk7XG4gICAgcmVxLm9uU29ja2V0KHNvY2tldCk7XG5cbiAgICBmdW5jdGlvbiBvbkZyZWUoKSB7XG4gICAgICBzZWxmLmVtaXQoJ2ZyZWUnLCBzb2NrZXQsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIG9uQ2xvc2VPclJlbW92ZShlcnIpIHtcbiAgICAgIHNlbGYucmVtb3ZlU29ja2V0KHNvY2tldCk7XG4gICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2ZyZWUnLCBvbkZyZWUpO1xuICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjbG9zZScsIG9uQ2xvc2VPclJlbW92ZSk7XG4gICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2FnZW50UmVtb3ZlJywgb25DbG9zZU9yUmVtb3ZlKTtcbiAgICB9XG4gIH0pO1xufTtcblxuVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLmNyZWF0ZVNvY2tldCA9IGZ1bmN0aW9uIGNyZWF0ZVNvY2tldChvcHRpb25zLCBjYikge1xuICB2YXIgc2VsZiA9IHRoaXM7XG4gIHZhciBwbGFjZWhvbGRlciA9IHt9O1xuICBzZWxmLnNvY2tldHMucHVzaChwbGFjZWhvbGRlcik7XG5cbiAgdmFyIGNvbm5lY3RPcHRpb25zID0gbWVyZ2VPcHRpb25zKHt9LCBzZWxmLnByb3h5T3B0aW9ucywge1xuICAgIG1ldGhvZDogJ0NPTk5FQ1QnLFxuICAgIHBhdGg6IG9wdGlvbnMuaG9zdCArICc6JyArIG9wdGlvbnMucG9ydCxcbiAgICBhZ2VudDogZmFsc2UsXG4gICAgaGVhZGVyczoge1xuICAgICAgaG9zdDogb3B0aW9ucy5ob3N0ICsgJzonICsgb3B0aW9ucy5wb3J0XG4gICAgfVxuICB9KTtcbiAgaWYgKG9wdGlvbnMubG9jYWxBZGRyZXNzKSB7XG4gICAgY29ubmVjdE9wdGlvbnMubG9jYWxBZGRyZXNzID0gb3B0aW9ucy5sb2NhbEFkZHJlc3M7XG4gIH1cbiAgaWYgKGNvbm5lY3RPcHRpb25zLnByb3h5QXV0aCkge1xuICAgIGNvbm5lY3RPcHRpb25zLmhlYWRlcnMgPSBjb25uZWN0T3B0aW9ucy5oZWFkZXJzIHx8IHt9O1xuICAgIGNvbm5lY3RPcHRpb25zLmhlYWRlcnNbJ1Byb3h5LUF1dGhvcml6YXRpb24nXSA9ICdCYXNpYyAnICtcbiAgICAgICAgbmV3IEJ1ZmZlcihjb25uZWN0T3B0aW9ucy5wcm94eUF1dGgpLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgfVxuXG4gIGRlYnVnKCdtYWtpbmcgQ09OTkVDVCByZXF1ZXN0Jyk7XG4gIHZhciBjb25uZWN0UmVxID0gc2VsZi5yZXF1ZXN0KGNvbm5lY3RPcHRpb25zKTtcbiAgY29ubmVjdFJlcS51c2VDaHVua2VkRW5jb2RpbmdCeURlZmF1bHQgPSBmYWxzZTsgLy8gZm9yIHYwLjZcbiAgY29ubmVjdFJlcS5vbmNlKCdyZXNwb25zZScsIG9uUmVzcG9uc2UpOyAvLyBmb3IgdjAuNlxuICBjb25uZWN0UmVxLm9uY2UoJ3VwZ3JhZGUnLCBvblVwZ3JhZGUpOyAgIC8vIGZvciB2MC42XG4gIGNvbm5lY3RSZXEub25jZSgnY29ubmVjdCcsIG9uQ29ubmVjdCk7ICAgLy8gZm9yIHYwLjcgb3IgbGF0ZXJcbiAgY29ubmVjdFJlcS5vbmNlKCdlcnJvcicsIG9uRXJyb3IpO1xuICBjb25uZWN0UmVxLmVuZCgpO1xuXG4gIGZ1bmN0aW9uIG9uUmVzcG9uc2UocmVzKSB7XG4gICAgLy8gVmVyeSBoYWNreS4gVGhpcyBpcyBuZWNlc3NhcnkgdG8gYXZvaWQgaHR0cC1wYXJzZXIgbGVha3MuXG4gICAgcmVzLnVwZ3JhZGUgPSB0cnVlO1xuICB9XG5cbiAgZnVuY3Rpb24gb25VcGdyYWRlKHJlcywgc29ja2V0LCBoZWFkKSB7XG4gICAgLy8gSGFja3kuXG4gICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbigpIHtcbiAgICAgIG9uQ29ubmVjdChyZXMsIHNvY2tldCwgaGVhZCk7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiBvbkNvbm5lY3QocmVzLCBzb2NrZXQsIGhlYWQpIHtcbiAgICBjb25uZWN0UmVxLnJlbW92ZUFsbExpc3RlbmVycygpO1xuICAgIHNvY2tldC5yZW1vdmVBbGxMaXN0ZW5lcnMoKTtcblxuICAgIGlmIChyZXMuc3RhdHVzQ29kZSAhPT0gMjAwKSB7XG4gICAgICBkZWJ1ZygndHVubmVsaW5nIHNvY2tldCBjb3VsZCBub3QgYmUgZXN0YWJsaXNoZWQsIHN0YXR1c0NvZGU9JWQnLFxuICAgICAgICByZXMuc3RhdHVzQ29kZSk7XG4gICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgdmFyIGVycm9yID0gbmV3IEVycm9yKCd0dW5uZWxpbmcgc29ja2V0IGNvdWxkIG5vdCBiZSBlc3RhYmxpc2hlZCwgJyArXG4gICAgICAgICdzdGF0dXNDb2RlPScgKyByZXMuc3RhdHVzQ29kZSk7XG4gICAgICBlcnJvci5jb2RlID0gJ0VDT05OUkVTRVQnO1xuICAgICAgb3B0aW9ucy5yZXF1ZXN0LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgICAgc2VsZi5yZW1vdmVTb2NrZXQocGxhY2Vob2xkZXIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoaGVhZC5sZW5ndGggPiAwKSB7XG4gICAgICBkZWJ1ZygnZ290IGlsbGVnYWwgcmVzcG9uc2UgYm9keSBmcm9tIHByb3h5Jyk7XG4gICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgdmFyIGVycm9yID0gbmV3IEVycm9yKCdnb3QgaWxsZWdhbCByZXNwb25zZSBib2R5IGZyb20gcHJveHknKTtcbiAgICAgIGVycm9yLmNvZGUgPSAnRUNPTk5SRVNFVCc7XG4gICAgICBvcHRpb25zLnJlcXVlc3QuZW1pdCgnZXJyb3InLCBlcnJvcik7XG4gICAgICBzZWxmLnJlbW92ZVNvY2tldChwbGFjZWhvbGRlcik7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGRlYnVnKCd0dW5uZWxpbmcgY29ubmVjdGlvbiBoYXMgZXN0YWJsaXNoZWQnKTtcbiAgICBzZWxmLnNvY2tldHNbc2VsZi5zb2NrZXRzLmluZGV4T2YocGxhY2Vob2xkZXIpXSA9IHNvY2tldDtcbiAgICByZXR1cm4gY2Ioc29ja2V0KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIG9uRXJyb3IoY2F1c2UpIHtcbiAgICBjb25uZWN0UmVxLnJlbW92ZUFsbExpc3RlbmVycygpO1xuXG4gICAgZGVidWcoJ3R1bm5lbGluZyBzb2NrZXQgY291bGQgbm90IGJlIGVzdGFibGlzaGVkLCBjYXVzZT0lc1xcbicsXG4gICAgICAgICAgY2F1c2UubWVzc2FnZSwgY2F1c2Uuc3RhY2spO1xuICAgIHZhciBlcnJvciA9IG5ldyBFcnJvcigndHVubmVsaW5nIHNvY2tldCBjb3VsZCBub3QgYmUgZXN0YWJsaXNoZWQsICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAnY2F1c2U9JyArIGNhdXNlLm1lc3NhZ2UpO1xuICAgIGVycm9yLmNvZGUgPSAnRUNPTk5SRVNFVCc7XG4gICAgb3B0aW9ucy5yZXF1ZXN0LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgIHNlbGYucmVtb3ZlU29ja2V0KHBsYWNlaG9sZGVyKTtcbiAgfVxufTtcblxuVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLnJlbW92ZVNvY2tldCA9IGZ1bmN0aW9uIHJlbW92ZVNvY2tldChzb2NrZXQpIHtcbiAgdmFyIHBvcyA9IHRoaXMuc29ja2V0cy5pbmRleE9mKHNvY2tldClcbiAgaWYgKHBvcyA9PT0gLTEpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgdGhpcy5zb2NrZXRzLnNwbGljZShwb3MsIDEpO1xuXG4gIHZhciBwZW5kaW5nID0gdGhpcy5yZXF1ZXN0cy5zaGlmdCgpO1xuICBpZiAocGVuZGluZykge1xuICAgIC8vIElmIHdlIGhhdmUgcGVuZGluZyByZXF1ZXN0cyBhbmQgYSBzb2NrZXQgZ2V0cyBjbG9zZWQgYSBuZXcgb25lXG4gICAgLy8gbmVlZHMgdG8gYmUgY3JlYXRlZCB0byB0YWtlIG92ZXIgaW4gdGhlIHBvb2wgZm9yIHRoZSBvbmUgdGhhdCBjbG9zZWQuXG4gICAgdGhpcy5jcmVhdGVTb2NrZXQocGVuZGluZywgZnVuY3Rpb24oc29ja2V0KSB7XG4gICAgICBwZW5kaW5nLnJlcXVlc3Qub25Tb2NrZXQoc29ja2V0KTtcbiAgICB9KTtcbiAgfVxufTtcblxuZnVuY3Rpb24gY3JlYXRlU2VjdXJlU29ja2V0KG9wdGlvbnMsIGNiKSB7XG4gIHZhciBzZWxmID0gdGhpcztcbiAgVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLmNyZWF0ZVNvY2tldC5jYWxsKHNlbGYsIG9wdGlvbnMsIGZ1bmN0aW9uKHNvY2tldCkge1xuICAgIHZhciBob3N0SGVhZGVyID0gb3B0aW9ucy5yZXF1ZXN0LmdldEhlYWRlcignaG9zdCcpO1xuICAgIHZhciB0bHNPcHRpb25zID0gbWVyZ2VPcHRpb25zKHt9LCBzZWxmLm9wdGlvbnMsIHtcbiAgICAgIHNvY2tldDogc29ja2V0LFxuICAgICAgc2VydmVybmFtZTogaG9zdEhlYWRlciA/IGhvc3RIZWFkZXIucmVwbGFjZSgvOi4qJC8sICcnKSA6IG9wdGlvbnMuaG9zdFxuICAgIH0pO1xuXG4gICAgLy8gMCBpcyBkdW1teSBwb3J0IGZvciB2MC42XG4gICAgdmFyIHNlY3VyZVNvY2tldCA9IHRscy5jb25uZWN0KDAsIHRsc09wdGlvbnMpO1xuICAgIHNlbGYuc29ja2V0c1tzZWxmLnNvY2tldHMuaW5kZXhPZihzb2NrZXQpXSA9IHNlY3VyZVNvY2tldDtcbiAgICBjYihzZWN1cmVTb2NrZXQpO1xuICB9KTtcbn1cblxuXG5mdW5jdGlvbiB0b09wdGlvbnMoaG9zdCwgcG9ydCwgbG9jYWxBZGRyZXNzKSB7XG4gIGlmICh0eXBlb2YgaG9zdCA9PT0gJ3N0cmluZycpIHsgLy8gc2luY2UgdjAuMTBcbiAgICByZXR1cm4ge1xuICAgICAgaG9zdDogaG9zdCxcbiAgICAgIHBvcnQ6IHBvcnQsXG4gICAgICBsb2NhbEFkZHJlc3M6IGxvY2FsQWRkcmVzc1xuICAgIH07XG4gIH1cbiAgcmV0dXJuIGhvc3Q7IC8vIGZvciB2MC4xMSBvciBsYXRlclxufVxuXG5mdW5jdGlvbiBtZXJnZU9wdGlvbnModGFyZ2V0KSB7XG4gIGZvciAodmFyIGkgPSAxLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICB2YXIgb3ZlcnJpZGVzID0gYXJndW1lbnRzW2ldO1xuICAgIGlmICh0eXBlb2Ygb3ZlcnJpZGVzID09PSAnb2JqZWN0Jykge1xuICAgICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhvdmVycmlkZXMpO1xuICAgICAgZm9yICh2YXIgaiA9IDAsIGtleUxlbiA9IGtleXMubGVuZ3RoOyBqIDwga2V5TGVuOyArK2opIHtcbiAgICAgICAgdmFyIGsgPSBrZXlzW2pdO1xuICAgICAgICBpZiAob3ZlcnJpZGVzW2tdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0YXJnZXRba10gPSBvdmVycmlkZXNba107XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRhcmdldDtcbn1cblxuXG52YXIgZGVidWc7XG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9ERUJVRyAmJiAvXFxidHVubmVsXFxiLy50ZXN0KHByb2Nlc3MuZW52Lk5PREVfREVCVUcpKSB7XG4gIGRlYnVnID0gZnVuY3Rpb24oKSB7XG4gICAgdmFyIGFyZ3MgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO1xuICAgIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGFyZ3NbMF0gPSAnVFVOTkVMOiAnICsgYXJnc1swXTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXJncy51bnNoaWZ0KCdUVU5ORUw6Jyk7XG4gICAgfVxuICAgIGNvbnNvbGUuZXJyb3IuYXBwbHkoY29uc29sZSwgYXJncyk7XG4gIH1cbn0gZWxzZSB7XG4gIGRlYnVnID0gZnVuY3Rpb24oKSB7fTtcbn1cbmV4cG9ydHMuZGVidWcgPSBkZWJ1ZzsgLy8gZm9yIHRlc3RcbiIsICJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vbGliL3R1bm5lbCcpO1xuIiwgIm1vZHVsZS5leHBvcnRzID0ge1xuICBrQ2xvc2U6IFN5bWJvbCgnY2xvc2UnKSxcbiAga0Rlc3Ryb3k6IFN5bWJvbCgnZGVzdHJveScpLFxuICBrRGlzcGF0Y2g6IFN5bWJvbCgnZGlzcGF0Y2gnKSxcbiAga1VybDogU3ltYm9sKCd1cmwnKSxcbiAga1dyaXRpbmc6IFN5bWJvbCgnd3JpdGluZycpLFxuICBrUmVzdW1pbmc6IFN5bWJvbCgncmVzdW1pbmcnKSxcbiAga1F1ZXVlOiBTeW1ib2woJ3F1ZXVlJyksXG4gIGtDb25uZWN0OiBTeW1ib2woJ2Nvbm5lY3QnKSxcbiAga0Nvbm5lY3Rpbmc6IFN5bWJvbCgnY29ubmVjdGluZycpLFxuICBrSGVhZGVyc0xpc3Q6IFN5bWJvbCgnaGVhZGVycyBsaXN0JyksXG4gIGtLZWVwQWxpdmVEZWZhdWx0VGltZW91dDogU3ltYm9sKCdkZWZhdWx0IGtlZXAgYWxpdmUgdGltZW91dCcpLFxuICBrS2VlcEFsaXZlTWF4VGltZW91dDogU3ltYm9sKCdtYXgga2VlcCBhbGl2ZSB0aW1lb3V0JyksXG4gIGtLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkOiBTeW1ib2woJ2tlZXAgYWxpdmUgdGltZW91dCB0aHJlc2hvbGQnKSxcbiAga0tlZXBBbGl2ZVRpbWVvdXRWYWx1ZTogU3ltYm9sKCdrZWVwIGFsaXZlIHRpbWVvdXQnKSxcbiAga0tlZXBBbGl2ZTogU3ltYm9sKCdrZWVwIGFsaXZlJyksXG4gIGtIZWFkZXJzVGltZW91dDogU3ltYm9sKCdoZWFkZXJzIHRpbWVvdXQnKSxcbiAga0JvZHlUaW1lb3V0OiBTeW1ib2woJ2JvZHkgdGltZW91dCcpLFxuICBrU2VydmVyTmFtZTogU3ltYm9sKCdzZXJ2ZXIgbmFtZScpLFxuICBrTG9jYWxBZGRyZXNzOiBTeW1ib2woJ2xvY2FsIGFkZHJlc3MnKSxcbiAga0hvc3Q6IFN5bWJvbCgnaG9zdCcpLFxuICBrTm9SZWY6IFN5bWJvbCgnbm8gcmVmJyksXG4gIGtCb2R5VXNlZDogU3ltYm9sKCd1c2VkJyksXG4gIGtSdW5uaW5nOiBTeW1ib2woJ3J1bm5pbmcnKSxcbiAga0Jsb2NraW5nOiBTeW1ib2woJ2Jsb2NraW5nJyksXG4gIGtQZW5kaW5nOiBTeW1ib2woJ3BlbmRpbmcnKSxcbiAga1NpemU6IFN5bWJvbCgnc2l6ZScpLFxuICBrQnVzeTogU3ltYm9sKCdidXN5JyksXG4gIGtRdWV1ZWQ6IFN5bWJvbCgncXVldWVkJyksXG4gIGtGcmVlOiBTeW1ib2woJ2ZyZWUnKSxcbiAga0Nvbm5lY3RlZDogU3ltYm9sKCdjb25uZWN0ZWQnKSxcbiAga0Nsb3NlZDogU3ltYm9sKCdjbG9zZWQnKSxcbiAga05lZWREcmFpbjogU3ltYm9sKCduZWVkIGRyYWluJyksXG4gIGtSZXNldDogU3ltYm9sKCdyZXNldCcpLFxuICBrRGVzdHJveWVkOiBTeW1ib2wuZm9yKCdub2RlanMuc3RyZWFtLmRlc3Ryb3llZCcpLFxuICBrTWF4SGVhZGVyc1NpemU6IFN5bWJvbCgnbWF4IGhlYWRlcnMgc2l6ZScpLFxuICBrUnVubmluZ0lkeDogU3ltYm9sKCdydW5uaW5nIGluZGV4JyksXG4gIGtQZW5kaW5nSWR4OiBTeW1ib2woJ3BlbmRpbmcgaW5kZXgnKSxcbiAga0Vycm9yOiBTeW1ib2woJ2Vycm9yJyksXG4gIGtDbGllbnRzOiBTeW1ib2woJ2NsaWVudHMnKSxcbiAga0NsaWVudDogU3ltYm9sKCdjbGllbnQnKSxcbiAga1BhcnNlcjogU3ltYm9sKCdwYXJzZXInKSxcbiAga09uRGVzdHJveWVkOiBTeW1ib2woJ2Rlc3Ryb3kgY2FsbGJhY2tzJyksXG4gIGtQaXBlbGluaW5nOiBTeW1ib2woJ3BpcGVsaW5pbmcnKSxcbiAga1NvY2tldDogU3ltYm9sKCdzb2NrZXQnKSxcbiAga0hvc3RIZWFkZXI6IFN5bWJvbCgnaG9zdCBoZWFkZXInKSxcbiAga0Nvbm5lY3RvcjogU3ltYm9sKCdjb25uZWN0b3InKSxcbiAga1N0cmljdENvbnRlbnRMZW5ndGg6IFN5bWJvbCgnc3RyaWN0IGNvbnRlbnQgbGVuZ3RoJyksXG4gIGtNYXhSZWRpcmVjdGlvbnM6IFN5bWJvbCgnbWF4UmVkaXJlY3Rpb25zJyksXG4gIGtNYXhSZXF1ZXN0czogU3ltYm9sKCdtYXhSZXF1ZXN0c1BlckNsaWVudCcpLFxuICBrUHJveHk6IFN5bWJvbCgncHJveHkgYWdlbnQgb3B0aW9ucycpLFxuICBrQ291bnRlcjogU3ltYm9sKCdzb2NrZXQgcmVxdWVzdCBjb3VudGVyJyksXG4gIGtJbnRlcmNlcHRvcnM6IFN5bWJvbCgnZGlzcGF0Y2ggaW50ZXJjZXB0b3JzJyksXG4gIGtNYXhSZXNwb25zZVNpemU6IFN5bWJvbCgnbWF4IHJlc3BvbnNlIHNpemUnKSxcbiAga0hUVFAyU2Vzc2lvbjogU3ltYm9sKCdodHRwMlNlc3Npb24nKSxcbiAga0hUVFAyU2Vzc2lvblN0YXRlOiBTeW1ib2woJ2h0dHAyU2Vzc2lvbiBzdGF0ZScpLFxuICBrSFRUUDJCdWlsZFJlcXVlc3Q6IFN5bWJvbCgnaHR0cDIgYnVpbGQgcmVxdWVzdCcpLFxuICBrSFRUUDFCdWlsZFJlcXVlc3Q6IFN5bWJvbCgnaHR0cDEgYnVpbGQgcmVxdWVzdCcpLFxuICBrSFRUUDJDb3B5SGVhZGVyczogU3ltYm9sKCdodHRwMiBjb3B5IGhlYWRlcnMnKSxcbiAga0hUVFBDb25uVmVyc2lvbjogU3ltYm9sKCdodHRwIGNvbm5lY3Rpb24gdmVyc2lvbicpLFxuICBrUmV0cnlIYW5kbGVyRGVmYXVsdFJldHJ5OiBTeW1ib2woJ3JldHJ5IGFnZW50IGRlZmF1bHQgcmV0cnknKSxcbiAga0NvbnN0cnVjdDogU3ltYm9sKCdjb25zdHJ1Y3RhYmxlJylcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY2xhc3MgVW5kaWNpRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSlcbiAgICB0aGlzLm5hbWUgPSAnVW5kaWNpRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlInXG4gIH1cbn1cblxuY2xhc3MgQ29ubmVjdFRpbWVvdXRFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIENvbm5lY3RUaW1lb3V0RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0Nvbm5lY3RUaW1lb3V0RXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnQ29ubmVjdCBUaW1lb3V0IEVycm9yJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX0NPTk5FQ1RfVElNRU9VVCdcbiAgfVxufVxuXG5jbGFzcyBIZWFkZXJzVGltZW91dEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSGVhZGVyc1RpbWVvdXRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnSGVhZGVyc1RpbWVvdXRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdIZWFkZXJzIFRpbWVvdXQgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSEVBREVSU19USU1FT1VUJ1xuICB9XG59XG5cbmNsYXNzIEhlYWRlcnNPdmVyZmxvd0Vycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSGVhZGVyc092ZXJmbG93RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0hlYWRlcnNPdmVyZmxvd0Vycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ0hlYWRlcnMgT3ZlcmZsb3cgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSEVBREVSU19PVkVSRkxPVydcbiAgfVxufVxuXG5jbGFzcyBCb2R5VGltZW91dEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgQm9keVRpbWVvdXRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnQm9keVRpbWVvdXRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdCb2R5IFRpbWVvdXQgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfQk9EWV9USU1FT1VUJ1xuICB9XG59XG5cbmNsYXNzIFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSwgc3RhdHVzQ29kZSwgaGVhZGVycywgYm9keSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgUmVzcG9uc2VTdGF0dXNDb2RlRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ1Jlc3BvbnNlU3RhdHVzQ29kZUVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1Jlc3BvbnNlIFN0YXR1cyBDb2RlIEVycm9yJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX1JFU1BPTlNFX1NUQVRVU19DT0RFJ1xuICAgIHRoaXMuYm9keSA9IGJvZHlcbiAgICB0aGlzLnN0YXR1cyA9IHN0YXR1c0NvZGVcbiAgICB0aGlzLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlXG4gICAgdGhpcy5oZWFkZXJzID0gaGVhZGVyc1xuICB9XG59XG5cbmNsYXNzIEludmFsaWRBcmd1bWVudEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSW52YWxpZEFyZ3VtZW50RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0ludmFsaWRBcmd1bWVudEVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ0ludmFsaWQgQXJndW1lbnQgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSU5WQUxJRF9BUkcnXG4gIH1cbn1cblxuY2xhc3MgSW52YWxpZFJldHVyblZhbHVlRXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSlcbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLCBJbnZhbGlkUmV0dXJuVmFsdWVFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnSW52YWxpZFJldHVyblZhbHVlRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnSW52YWxpZCBSZXR1cm4gVmFsdWUgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSU5WQUxJRF9SRVRVUk5fVkFMVUUnXG4gIH1cbn1cblxuY2xhc3MgUmVxdWVzdEFib3J0ZWRFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFJlcXVlc3RBYm9ydGVkRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0Fib3J0RXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnUmVxdWVzdCBhYm9ydGVkJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX0FCT1JURUQnXG4gIH1cbn1cblxuY2xhc3MgSW5mb3JtYXRpb25hbEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSW5mb3JtYXRpb25hbEVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdJbmZvcm1hdGlvbmFsRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnUmVxdWVzdCBpbmZvcm1hdGlvbidcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9JTkZPJ1xuICB9XG59XG5cbmNsYXNzIFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1JlcXVlc3QgYm9keSBsZW5ndGggZG9lcyBub3QgbWF0Y2ggY29udGVudC1sZW5ndGggaGVhZGVyJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX1JFUV9DT05URU5UX0xFTkdUSF9NSVNNQVRDSCdcbiAgfVxufVxuXG5jbGFzcyBSZXNwb25zZUNvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgUmVzcG9uc2VDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnUmVzcG9uc2VDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdSZXNwb25zZSBib2R5IGxlbmd0aCBkb2VzIG5vdCBtYXRjaCBjb250ZW50LWxlbmd0aCBoZWFkZXInXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfUkVTX0NPTlRFTlRfTEVOR1RIX01JU01BVENIJ1xuICB9XG59XG5cbmNsYXNzIENsaWVudERlc3Ryb3llZEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgQ2xpZW50RGVzdHJveWVkRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0NsaWVudERlc3Ryb3llZEVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1RoZSBjbGllbnQgaXMgZGVzdHJveWVkJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX0RFU1RST1lFRCdcbiAgfVxufVxuXG5jbGFzcyBDbGllbnRDbG9zZWRFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIENsaWVudENsb3NlZEVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdDbGllbnRDbG9zZWRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdUaGUgY2xpZW50IGlzIGNsb3NlZCdcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9DTE9TRUQnXG4gIH1cbn1cblxuY2xhc3MgU29ja2V0RXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlLCBzb2NrZXQpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFNvY2tldEVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdTb2NrZXRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdTb2NrZXQgZXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfU09DS0VUJ1xuICAgIHRoaXMuc29ja2V0ID0gc29ja2V0XG4gIH1cbn1cblxuY2xhc3MgTm90U3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSlcbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLCBOb3RTdXBwb3J0ZWRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnTm90U3VwcG9ydGVkRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnTm90IHN1cHBvcnRlZCBlcnJvcidcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9OT1RfU1VQUE9SVEVEJ1xuICB9XG59XG5cbmNsYXNzIEJhbGFuY2VkUG9vbE1pc3NpbmdVcHN0cmVhbUVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgTm90U3VwcG9ydGVkRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ01pc3NpbmdVcHN0cmVhbUVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ05vIHVwc3RyZWFtIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBCYWxhbmNlZFBvb2wnXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfQlBMX01JU1NJTkdfVVBTVFJFQU0nXG4gIH1cbn1cblxuY2xhc3MgSFRUUFBhcnNlckVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSwgY29kZSwgZGF0YSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSFRUUFBhcnNlckVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdIVFRQUGFyc2VyRXJyb3InXG4gICAgdGhpcy5jb2RlID0gY29kZSA/IGBIUEVfJHtjb2RlfWAgOiB1bmRlZmluZWRcbiAgICB0aGlzLmRhdGEgPSBkYXRhID8gZGF0YS50b1N0cmluZygpIDogdW5kZWZpbmVkXG4gIH1cbn1cblxuY2xhc3MgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFJlc3BvbnNlRXhjZWVkZWRNYXhTaXplRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ1Jlc3BvbnNlRXhjZWVkZWRNYXhTaXplRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnUmVzcG9uc2UgY29udGVudCBleGNlZWRlZCBtYXggc2l6ZSdcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9SRVNfRVhDRUVERURfTUFYX1NJWkUnXG4gIH1cbn1cblxuY2xhc3MgUmVxdWVzdFJldHJ5RXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlLCBjb2RlLCB7IGhlYWRlcnMsIGRhdGEgfSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgUmVxdWVzdFJldHJ5RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ1JlcXVlc3RSZXRyeUVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1JlcXVlc3QgcmV0cnkgZXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfUkVRX1JFVFJZJ1xuICAgIHRoaXMuc3RhdHVzQ29kZSA9IGNvZGVcbiAgICB0aGlzLmRhdGEgPSBkYXRhXG4gICAgdGhpcy5oZWFkZXJzID0gaGVhZGVyc1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBIVFRQUGFyc2VyRXJyb3IsXG4gIFVuZGljaUVycm9yLFxuICBIZWFkZXJzVGltZW91dEVycm9yLFxuICBIZWFkZXJzT3ZlcmZsb3dFcnJvcixcbiAgQm9keVRpbWVvdXRFcnJvcixcbiAgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBDb25uZWN0VGltZW91dEVycm9yLFxuICBSZXNwb25zZVN0YXR1c0NvZGVFcnJvcixcbiAgSW52YWxpZEFyZ3VtZW50RXJyb3IsXG4gIEludmFsaWRSZXR1cm5WYWx1ZUVycm9yLFxuICBSZXF1ZXN0QWJvcnRlZEVycm9yLFxuICBDbGllbnREZXN0cm95ZWRFcnJvcixcbiAgQ2xpZW50Q2xvc2VkRXJyb3IsXG4gIEluZm9ybWF0aW9uYWxFcnJvcixcbiAgU29ja2V0RXJyb3IsXG4gIE5vdFN1cHBvcnRlZEVycm9yLFxuICBSZXNwb25zZUNvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBCYWxhbmNlZFBvb2xNaXNzaW5nVXBzdHJlYW1FcnJvcixcbiAgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvcixcbiAgUmVxdWVzdFJldHJ5RXJyb3Jcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCB1bmRlZmluZWQ+fSAqL1xuY29uc3QgaGVhZGVyTmFtZUxvd2VyQ2FzZWRSZWNvcmQgPSB7fVxuXG4vLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9IVFRQL0hlYWRlcnNcbmNvbnN0IHdlbGxrbm93bkhlYWRlck5hbWVzID0gW1xuICAnQWNjZXB0JyxcbiAgJ0FjY2VwdC1FbmNvZGluZycsXG4gICdBY2NlcHQtTGFuZ3VhZ2UnLFxuICAnQWNjZXB0LVJhbmdlcycsXG4gICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1DcmVkZW50aWFscycsXG4gICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU1ldGhvZHMnLFxuICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLU1heC1BZ2UnLFxuICAnQWNjZXNzLUNvbnRyb2wtUmVxdWVzdC1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLVJlcXVlc3QtTWV0aG9kJyxcbiAgJ0FnZScsXG4gICdBbGxvdycsXG4gICdBbHQtU3ZjJyxcbiAgJ0FsdC1Vc2VkJyxcbiAgJ0F1dGhvcml6YXRpb24nLFxuICAnQ2FjaGUtQ29udHJvbCcsXG4gICdDbGVhci1TaXRlLURhdGEnLFxuICAnQ29ubmVjdGlvbicsXG4gICdDb250ZW50LURpc3Bvc2l0aW9uJyxcbiAgJ0NvbnRlbnQtRW5jb2RpbmcnLFxuICAnQ29udGVudC1MYW5ndWFnZScsXG4gICdDb250ZW50LUxlbmd0aCcsXG4gICdDb250ZW50LUxvY2F0aW9uJyxcbiAgJ0NvbnRlbnQtUmFuZ2UnLFxuICAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3knLFxuICAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3ktUmVwb3J0LU9ubHknLFxuICAnQ29udGVudC1UeXBlJyxcbiAgJ0Nvb2tpZScsXG4gICdDcm9zcy1PcmlnaW4tRW1iZWRkZXItUG9saWN5JyxcbiAgJ0Nyb3NzLU9yaWdpbi1PcGVuZXItUG9saWN5JyxcbiAgJ0Nyb3NzLU9yaWdpbi1SZXNvdXJjZS1Qb2xpY3knLFxuICAnRGF0ZScsXG4gICdEZXZpY2UtTWVtb3J5JyxcbiAgJ0Rvd25saW5rJyxcbiAgJ0VDVCcsXG4gICdFVGFnJyxcbiAgJ0V4cGVjdCcsXG4gICdFeHBlY3QtQ1QnLFxuICAnRXhwaXJlcycsXG4gICdGb3J3YXJkZWQnLFxuICAnRnJvbScsXG4gICdIb3N0JyxcbiAgJ0lmLU1hdGNoJyxcbiAgJ0lmLU1vZGlmaWVkLVNpbmNlJyxcbiAgJ0lmLU5vbmUtTWF0Y2gnLFxuICAnSWYtUmFuZ2UnLFxuICAnSWYtVW5tb2RpZmllZC1TaW5jZScsXG4gICdLZWVwLUFsaXZlJyxcbiAgJ0xhc3QtTW9kaWZpZWQnLFxuICAnTGluaycsXG4gICdMb2NhdGlvbicsXG4gICdNYXgtRm9yd2FyZHMnLFxuICAnT3JpZ2luJyxcbiAgJ1Blcm1pc3Npb25zLVBvbGljeScsXG4gICdQcmFnbWEnLFxuICAnUHJveHktQXV0aGVudGljYXRlJyxcbiAgJ1Byb3h5LUF1dGhvcml6YXRpb24nLFxuICAnUlRUJyxcbiAgJ1JhbmdlJyxcbiAgJ1JlZmVyZXInLFxuICAnUmVmZXJyZXItUG9saWN5JyxcbiAgJ1JlZnJlc2gnLFxuICAnUmV0cnktQWZ0ZXInLFxuICAnU2VjLVdlYlNvY2tldC1BY2NlcHQnLFxuICAnU2VjLVdlYlNvY2tldC1FeHRlbnNpb25zJyxcbiAgJ1NlYy1XZWJTb2NrZXQtS2V5JyxcbiAgJ1NlYy1XZWJTb2NrZXQtUHJvdG9jb2wnLFxuICAnU2VjLVdlYlNvY2tldC1WZXJzaW9uJyxcbiAgJ1NlcnZlcicsXG4gICdTZXJ2ZXItVGltaW5nJyxcbiAgJ1NlcnZpY2UtV29ya2VyLUFsbG93ZWQnLFxuICAnU2VydmljZS1Xb3JrZXItTmF2aWdhdGlvbi1QcmVsb2FkJyxcbiAgJ1NldC1Db29raWUnLFxuICAnU291cmNlTWFwJyxcbiAgJ1N0cmljdC1UcmFuc3BvcnQtU2VjdXJpdHknLFxuICAnU3VwcG9ydHMtTG9hZGluZy1Nb2RlJyxcbiAgJ1RFJyxcbiAgJ1RpbWluZy1BbGxvdy1PcmlnaW4nLFxuICAnVHJhaWxlcicsXG4gICdUcmFuc2Zlci1FbmNvZGluZycsXG4gICdVcGdyYWRlJyxcbiAgJ1VwZ3JhZGUtSW5zZWN1cmUtUmVxdWVzdHMnLFxuICAnVXNlci1BZ2VudCcsXG4gICdWYXJ5JyxcbiAgJ1ZpYScsXG4gICdXV1ctQXV0aGVudGljYXRlJyxcbiAgJ1gtQ29udGVudC1UeXBlLU9wdGlvbnMnLFxuICAnWC1ETlMtUHJlZmV0Y2gtQ29udHJvbCcsXG4gICdYLUZyYW1lLU9wdGlvbnMnLFxuICAnWC1QZXJtaXR0ZWQtQ3Jvc3MtRG9tYWluLVBvbGljaWVzJyxcbiAgJ1gtUG93ZXJlZC1CeScsXG4gICdYLVJlcXVlc3RlZC1XaXRoJyxcbiAgJ1gtWFNTLVByb3RlY3Rpb24nXG5dXG5cbmZvciAobGV0IGkgPSAwOyBpIDwgd2VsbGtub3duSGVhZGVyTmFtZXMubGVuZ3RoOyArK2kpIHtcbiAgY29uc3Qga2V5ID0gd2VsbGtub3duSGVhZGVyTmFtZXNbaV1cbiAgY29uc3QgbG93ZXJDYXNlZEtleSA9IGtleS50b0xvd2VyQ2FzZSgpXG4gIGhlYWRlck5hbWVMb3dlckNhc2VkUmVjb3JkW2tleV0gPSBoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZFtsb3dlckNhc2VkS2V5XSA9XG4gICAgbG93ZXJDYXNlZEtleVxufVxuXG4vLyBOb3RlOiBvYmplY3QgcHJvdG90eXBlcyBzaG91bGQgbm90IGJlIGFibGUgdG8gYmUgcmVmZXJlbmNlZC4gZS5nLiBgT2JqZWN0I2hhc093blByb3BlcnR5YC5cbk9iamVjdC5zZXRQcm90b3R5cGVPZihoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZCwgbnVsbClcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHdlbGxrbm93bkhlYWRlck5hbWVzLFxuICBoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBrRGVzdHJveWVkLCBrQm9keVVzZWQgfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IEluY29taW5nTWVzc2FnZSB9ID0gcmVxdWlyZSgnaHR0cCcpXG5jb25zdCBzdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgbmV0ID0gcmVxdWlyZSgnbmV0JylcbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IgfSA9IHJlcXVpcmUoJy4vZXJyb3JzJylcbmNvbnN0IHsgQmxvYiB9ID0gcmVxdWlyZSgnYnVmZmVyJylcbmNvbnN0IG5vZGVVdGlsID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IHN0cmluZ2lmeSB9ID0gcmVxdWlyZSgncXVlcnlzdHJpbmcnKVxuY29uc3QgeyBoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZCB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKVxuXG5jb25zdCBbbm9kZU1ham9yLCBub2RlTWlub3JdID0gcHJvY2Vzcy52ZXJzaW9ucy5ub2RlLnNwbGl0KCcuJykubWFwKHYgPT4gTnVtYmVyKHYpKVxuXG5mdW5jdGlvbiBub3AgKCkge31cblxuZnVuY3Rpb24gaXNTdHJlYW0gKG9iaikge1xuICByZXR1cm4gb2JqICYmIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIHR5cGVvZiBvYmoucGlwZSA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygb2JqLm9uID09PSAnZnVuY3Rpb24nXG59XG5cbi8vIGJhc2VkIG9uIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlLWZldGNoL2ZldGNoLWJsb2IvYmxvYi84YWI1ODdkMzQwODBkZTk0MTQwYjU0ZjA3MTY4NDUxZTdkMGI2NTVlL2luZGV4LmpzI0wyMjktTDI0MSAoTUlUIExpY2Vuc2UpXG5mdW5jdGlvbiBpc0Jsb2JMaWtlIChvYmplY3QpIHtcbiAgcmV0dXJuIChCbG9iICYmIG9iamVjdCBpbnN0YW5jZW9mIEJsb2IpIHx8IChcbiAgICBvYmplY3QgJiZcbiAgICB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJlxuICAgICh0eXBlb2Ygb2JqZWN0LnN0cmVhbSA9PT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgdHlwZW9mIG9iamVjdC5hcnJheUJ1ZmZlciA9PT0gJ2Z1bmN0aW9uJykgJiZcbiAgICAvXihCbG9ifEZpbGUpJC8udGVzdChvYmplY3RbU3ltYm9sLnRvU3RyaW5nVGFnXSlcbiAgKVxufVxuXG5mdW5jdGlvbiBidWlsZFVSTCAodXJsLCBxdWVyeVBhcmFtcykge1xuICBpZiAodXJsLmluY2x1ZGVzKCc/JykgfHwgdXJsLmluY2x1ZGVzKCcjJykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1F1ZXJ5IHBhcmFtcyBjYW5ub3QgYmUgcGFzc2VkIHdoZW4gdXJsIGFscmVhZHkgY29udGFpbnMgXCI/XCIgb3IgXCIjXCIuJylcbiAgfVxuXG4gIGNvbnN0IHN0cmluZ2lmaWVkID0gc3RyaW5naWZ5KHF1ZXJ5UGFyYW1zKVxuXG4gIGlmIChzdHJpbmdpZmllZCkge1xuICAgIHVybCArPSAnPycgKyBzdHJpbmdpZmllZFxuICB9XG5cbiAgcmV0dXJuIHVybFxufVxuXG5mdW5jdGlvbiBwYXJzZVVSTCAodXJsKSB7XG4gIGlmICh0eXBlb2YgdXJsID09PSAnc3RyaW5nJykge1xuICAgIHVybCA9IG5ldyBVUkwodXJsKVxuXG4gICAgaWYgKCEvXmh0dHBzPzovLnRlc3QodXJsLm9yaWdpbiB8fCB1cmwucHJvdG9jb2wpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIHByb3RvY29sOiB0aGUgVVJMIG11c3Qgc3RhcnQgd2l0aCBgaHR0cDpgIG9yIGBodHRwczpgLicpXG4gICAgfVxuXG4gICAgcmV0dXJuIHVybFxuICB9XG5cbiAgaWYgKCF1cmwgfHwgdHlwZW9mIHVybCAhPT0gJ29iamVjdCcpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMOiBUaGUgVVJMIGFyZ3VtZW50IG11c3QgYmUgYSBub24tbnVsbCBvYmplY3QuJylcbiAgfVxuXG4gIGlmICghL15odHRwcz86Ly50ZXN0KHVybC5vcmlnaW4gfHwgdXJsLnByb3RvY29sKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignSW52YWxpZCBVUkwgcHJvdG9jb2w6IHRoZSBVUkwgbXVzdCBzdGFydCB3aXRoIGBodHRwOmAgb3IgYGh0dHBzOmAuJylcbiAgfVxuXG4gIGlmICghKHVybCBpbnN0YW5jZW9mIFVSTCkpIHtcbiAgICBpZiAodXJsLnBvcnQgIT0gbnVsbCAmJiB1cmwucG9ydCAhPT0gJycgJiYgIU51bWJlci5pc0Zpbml0ZShwYXJzZUludCh1cmwucG9ydCkpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMOiBwb3J0IG11c3QgYmUgYSB2YWxpZCBpbnRlZ2VyIG9yIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIGludGVnZXIuJylcbiAgICB9XG5cbiAgICBpZiAodXJsLnBhdGggIT0gbnVsbCAmJiB0eXBlb2YgdXJsLnBhdGggIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIHBhdGg6IHRoZSBwYXRoIG11c3QgYmUgYSBzdHJpbmcgb3IgbnVsbC91bmRlZmluZWQuJylcbiAgICB9XG5cbiAgICBpZiAodXJsLnBhdGhuYW1lICE9IG51bGwgJiYgdHlwZW9mIHVybC5wYXRobmFtZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignSW52YWxpZCBVUkwgcGF0aG5hbWU6IHRoZSBwYXRobmFtZSBtdXN0IGJlIGEgc3RyaW5nIG9yIG51bGwvdW5kZWZpbmVkLicpXG4gICAgfVxuXG4gICAgaWYgKHVybC5ob3N0bmFtZSAhPSBudWxsICYmIHR5cGVvZiB1cmwuaG9zdG5hbWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIGhvc3RuYW1lOiB0aGUgaG9zdG5hbWUgbXVzdCBiZSBhIHN0cmluZyBvciBudWxsL3VuZGVmaW5lZC4nKVxuICAgIH1cblxuICAgIGlmICh1cmwub3JpZ2luICE9IG51bGwgJiYgdHlwZW9mIHVybC5vcmlnaW4gIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIG9yaWdpbjogdGhlIG9yaWdpbiBtdXN0IGJlIGEgc3RyaW5nIG9yIG51bGwvdW5kZWZpbmVkLicpXG4gICAgfVxuXG4gICAgY29uc3QgcG9ydCA9IHVybC5wb3J0ICE9IG51bGxcbiAgICAgID8gdXJsLnBvcnRcbiAgICAgIDogKHVybC5wcm90b2NvbCA9PT0gJ2h0dHBzOicgPyA0NDMgOiA4MClcbiAgICBsZXQgb3JpZ2luID0gdXJsLm9yaWdpbiAhPSBudWxsXG4gICAgICA/IHVybC5vcmlnaW5cbiAgICAgIDogYCR7dXJsLnByb3RvY29sfS8vJHt1cmwuaG9zdG5hbWV9OiR7cG9ydH1gXG4gICAgbGV0IHBhdGggPSB1cmwucGF0aCAhPSBudWxsXG4gICAgICA/IHVybC5wYXRoXG4gICAgICA6IGAke3VybC5wYXRobmFtZSB8fCAnJ30ke3VybC5zZWFyY2ggfHwgJyd9YFxuXG4gICAgaWYgKG9yaWdpbi5lbmRzV2l0aCgnLycpKSB7XG4gICAgICBvcmlnaW4gPSBvcmlnaW4uc3Vic3RyaW5nKDAsIG9yaWdpbi5sZW5ndGggLSAxKVxuICAgIH1cblxuICAgIGlmIChwYXRoICYmICFwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgICAgcGF0aCA9IGAvJHtwYXRofWBcbiAgICB9XG4gICAgLy8gbmV3IFVSTChwYXRoLCBvcmlnaW4pIGlzIHVuc2FmZSB3aGVuIGBwYXRoYCBjb250YWlucyBhbiBhYnNvbHV0ZSBVUkxcbiAgICAvLyBGcm9tIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9VUkwvVVJMOlxuICAgIC8vIElmIGZpcnN0IHBhcmFtZXRlciBpcyBhIHJlbGF0aXZlIFVSTCwgc2Vjb25kIHBhcmFtIGlzIHJlcXVpcmVkLCBhbmQgd2lsbCBiZSB1c2VkIGFzIHRoZSBiYXNlIFVSTC5cbiAgICAvLyBJZiBmaXJzdCBwYXJhbWV0ZXIgaXMgYW4gYWJzb2x1dGUgVVJMLCBhIGdpdmVuIHNlY29uZCBwYXJhbSB3aWxsIGJlIGlnbm9yZWQuXG4gICAgdXJsID0gbmV3IFVSTChvcmlnaW4gKyBwYXRoKVxuICB9XG5cbiAgcmV0dXJuIHVybFxufVxuXG5mdW5jdGlvbiBwYXJzZU9yaWdpbiAodXJsKSB7XG4gIHVybCA9IHBhcnNlVVJMKHVybClcblxuICBpZiAodXJsLnBhdGhuYW1lICE9PSAnLycgfHwgdXJsLnNlYXJjaCB8fCB1cmwuaGFzaCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCB1cmwnKVxuICB9XG5cbiAgcmV0dXJuIHVybFxufVxuXG5mdW5jdGlvbiBnZXRIb3N0bmFtZSAoaG9zdCkge1xuICBpZiAoaG9zdFswXSA9PT0gJ1snKSB7XG4gICAgY29uc3QgaWR4ID0gaG9zdC5pbmRleE9mKCddJylcblxuICAgIGFzc2VydChpZHggIT09IC0xKVxuICAgIHJldHVybiBob3N0LnN1YnN0cmluZygxLCBpZHgpXG4gIH1cblxuICBjb25zdCBpZHggPSBob3N0LmluZGV4T2YoJzonKVxuICBpZiAoaWR4ID09PSAtMSkgcmV0dXJuIGhvc3RcblxuICByZXR1cm4gaG9zdC5zdWJzdHJpbmcoMCwgaWR4KVxufVxuXG4vLyBJUCBhZGRyZXNzZXMgYXJlIG5vdCB2YWxpZCBzZXJ2ZXIgbmFtZXMgcGVyIFJGQzYwNjZcbi8vID4gQ3VycmVudGx5LCB0aGUgb25seSBzZXJ2ZXIgbmFtZXMgc3VwcG9ydGVkIGFyZSBETlMgaG9zdG5hbWVzXG5mdW5jdGlvbiBnZXRTZXJ2ZXJOYW1lIChob3N0KSB7XG4gIGlmICghaG9zdCkge1xuICAgIHJldHVybiBudWxsXG4gIH1cblxuICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGhvc3QsICdzdHJpbmcnKVxuXG4gIGNvbnN0IHNlcnZlcm5hbWUgPSBnZXRIb3N0bmFtZShob3N0KVxuICBpZiAobmV0LmlzSVAoc2VydmVybmFtZSkpIHtcbiAgICByZXR1cm4gJydcbiAgfVxuXG4gIHJldHVybiBzZXJ2ZXJuYW1lXG59XG5cbmZ1bmN0aW9uIGRlZXBDbG9uZSAob2JqKSB7XG4gIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG9iaikpXG59XG5cbmZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZSAob2JqKSB7XG4gIHJldHVybiAhIShvYmogIT0gbnVsbCAmJiB0eXBlb2Ygb2JqW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9PT0gJ2Z1bmN0aW9uJylcbn1cblxuZnVuY3Rpb24gaXNJdGVyYWJsZSAob2JqKSB7XG4gIHJldHVybiAhIShvYmogIT0gbnVsbCAmJiAodHlwZW9mIG9ialtTeW1ib2wuaXRlcmF0b3JdID09PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBvYmpbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID09PSAnZnVuY3Rpb24nKSlcbn1cblxuZnVuY3Rpb24gYm9keUxlbmd0aCAoYm9keSkge1xuICBpZiAoYm9keSA9PSBudWxsKSB7XG4gICAgcmV0dXJuIDBcbiAgfSBlbHNlIGlmIChpc1N0cmVhbShib2R5KSkge1xuICAgIGNvbnN0IHN0YXRlID0gYm9keS5fcmVhZGFibGVTdGF0ZVxuICAgIHJldHVybiBzdGF0ZSAmJiBzdGF0ZS5vYmplY3RNb2RlID09PSBmYWxzZSAmJiBzdGF0ZS5lbmRlZCA9PT0gdHJ1ZSAmJiBOdW1iZXIuaXNGaW5pdGUoc3RhdGUubGVuZ3RoKVxuICAgICAgPyBzdGF0ZS5sZW5ndGhcbiAgICAgIDogbnVsbFxuICB9IGVsc2UgaWYgKGlzQmxvYkxpa2UoYm9keSkpIHtcbiAgICByZXR1cm4gYm9keS5zaXplICE9IG51bGwgPyBib2R5LnNpemUgOiBudWxsXG4gIH0gZWxzZSBpZiAoaXNCdWZmZXIoYm9keSkpIHtcbiAgICByZXR1cm4gYm9keS5ieXRlTGVuZ3RoXG4gIH1cblxuICByZXR1cm4gbnVsbFxufVxuXG5mdW5jdGlvbiBpc0Rlc3Ryb3llZCAoc3RyZWFtKSB7XG4gIHJldHVybiAhc3RyZWFtIHx8ICEhKHN0cmVhbS5kZXN0cm95ZWQgfHwgc3RyZWFtW2tEZXN0cm95ZWRdKVxufVxuXG5mdW5jdGlvbiBpc1JlYWRhYmxlQWJvcnRlZCAoc3RyZWFtKSB7XG4gIGNvbnN0IHN0YXRlID0gc3RyZWFtICYmIHN0cmVhbS5fcmVhZGFibGVTdGF0ZVxuICByZXR1cm4gaXNEZXN0cm95ZWQoc3RyZWFtKSAmJiBzdGF0ZSAmJiAhc3RhdGUuZW5kRW1pdHRlZFxufVxuXG5mdW5jdGlvbiBkZXN0cm95IChzdHJlYW0sIGVycikge1xuICBpZiAoc3RyZWFtID09IG51bGwgfHwgIWlzU3RyZWFtKHN0cmVhbSkgfHwgaXNEZXN0cm95ZWQoc3RyZWFtKSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHR5cGVvZiBzdHJlYW0uZGVzdHJveSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2Yoc3RyZWFtKS5jb25zdHJ1Y3RvciA9PT0gSW5jb21pbmdNZXNzYWdlKSB7XG4gICAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9wdWxsLzM4NTA1L2ZpbGVzXG4gICAgICBzdHJlYW0uc29ja2V0ID0gbnVsbFxuICAgIH1cblxuICAgIHN0cmVhbS5kZXN0cm95KGVycilcbiAgfSBlbHNlIGlmIChlcnIpIHtcbiAgICBwcm9jZXNzLm5leHRUaWNrKChzdHJlYW0sIGVycikgPT4ge1xuICAgICAgc3RyZWFtLmVtaXQoJ2Vycm9yJywgZXJyKVxuICAgIH0sIHN0cmVhbSwgZXJyKVxuICB9XG5cbiAgaWYgKHN0cmVhbS5kZXN0cm95ZWQgIT09IHRydWUpIHtcbiAgICBzdHJlYW1ba0Rlc3Ryb3llZF0gPSB0cnVlXG4gIH1cbn1cblxuY29uc3QgS0VFUEFMSVZFX1RJTUVPVVRfRVhQUiA9IC90aW1lb3V0PShcXGQrKS9cbmZ1bmN0aW9uIHBhcnNlS2VlcEFsaXZlVGltZW91dCAodmFsKSB7XG4gIGNvbnN0IG0gPSB2YWwudG9TdHJpbmcoKS5tYXRjaChLRUVQQUxJVkVfVElNRU9VVF9FWFBSKVxuICByZXR1cm4gbSA/IHBhcnNlSW50KG1bMV0sIDEwKSAqIDEwMDAgOiBudWxsXG59XG5cbi8qKlxuICogUmV0cmlldmVzIGEgaGVhZGVyIG5hbWUgYW5kIHJldHVybnMgaXRzIGxvd2VyY2FzZSB2YWx1ZS5cbiAqIEBwYXJhbSB7c3RyaW5nIHwgQnVmZmVyfSB2YWx1ZSBIZWFkZXIgbmFtZVxuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gaGVhZGVyTmFtZVRvU3RyaW5nICh2YWx1ZSkge1xuICByZXR1cm4gaGVhZGVyTmFtZUxvd2VyQ2FzZWRSZWNvcmRbdmFsdWVdIHx8IHZhbHVlLnRvTG93ZXJDYXNlKClcbn1cblxuZnVuY3Rpb24gcGFyc2VIZWFkZXJzIChoZWFkZXJzLCBvYmogPSB7fSkge1xuICAvLyBGb3IgSDIgc3VwcG9ydFxuICBpZiAoIUFycmF5LmlzQXJyYXkoaGVhZGVycykpIHJldHVybiBoZWFkZXJzXG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBoZWFkZXJzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgY29uc3Qga2V5ID0gaGVhZGVyc1tpXS50b1N0cmluZygpLnRvTG93ZXJDYXNlKClcbiAgICBsZXQgdmFsID0gb2JqW2tleV1cblxuICAgIGlmICghdmFsKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzW2kgKyAxXSkpIHtcbiAgICAgICAgb2JqW2tleV0gPSBoZWFkZXJzW2kgKyAxXS5tYXAoeCA9PiB4LnRvU3RyaW5nKCd1dGY4JykpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYmpba2V5XSA9IGhlYWRlcnNbaSArIDFdLnRvU3RyaW5nKCd1dGY4JylcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgdmFsID0gW3ZhbF1cbiAgICAgICAgb2JqW2tleV0gPSB2YWxcbiAgICAgIH1cbiAgICAgIHZhbC5wdXNoKGhlYWRlcnNbaSArIDFdLnRvU3RyaW5nKCd1dGY4JykpXG4gICAgfVxuICB9XG5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9wdWxsLzQ2NTI4XG4gIGlmICgnY29udGVudC1sZW5ndGgnIGluIG9iaiAmJiAnY29udGVudC1kaXNwb3NpdGlvbicgaW4gb2JqKSB7XG4gICAgb2JqWydjb250ZW50LWRpc3Bvc2l0aW9uJ10gPSBCdWZmZXIuZnJvbShvYmpbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXSkudG9TdHJpbmcoJ2xhdGluMScpXG4gIH1cblxuICByZXR1cm4gb2JqXG59XG5cbmZ1bmN0aW9uIHBhcnNlUmF3SGVhZGVycyAoaGVhZGVycykge1xuICBjb25zdCByZXQgPSBbXVxuICBsZXQgaGFzQ29udGVudExlbmd0aCA9IGZhbHNlXG4gIGxldCBjb250ZW50RGlzcG9zaXRpb25JZHggPSAtMVxuXG4gIGZvciAobGV0IG4gPSAwOyBuIDwgaGVhZGVycy5sZW5ndGg7IG4gKz0gMikge1xuICAgIGNvbnN0IGtleSA9IGhlYWRlcnNbbiArIDBdLnRvU3RyaW5nKClcbiAgICBjb25zdCB2YWwgPSBoZWFkZXJzW24gKyAxXS50b1N0cmluZygndXRmOCcpXG5cbiAgICBpZiAoa2V5Lmxlbmd0aCA9PT0gMTQgJiYgKGtleSA9PT0gJ2NvbnRlbnQtbGVuZ3RoJyB8fCBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtbGVuZ3RoJykpIHtcbiAgICAgIHJldC5wdXNoKGtleSwgdmFsKVxuICAgICAgaGFzQ29udGVudExlbmd0aCA9IHRydWVcbiAgICB9IGVsc2UgaWYgKGtleS5sZW5ndGggPT09IDE5ICYmIChrZXkgPT09ICdjb250ZW50LWRpc3Bvc2l0aW9uJyB8fCBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtZGlzcG9zaXRpb24nKSkge1xuICAgICAgY29udGVudERpc3Bvc2l0aW9uSWR4ID0gcmV0LnB1c2goa2V5LCB2YWwpIC0gMVxuICAgIH0gZWxzZSB7XG4gICAgICByZXQucHVzaChrZXksIHZhbClcbiAgICB9XG4gIH1cblxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL3B1bGwvNDY1MjhcbiAgaWYgKGhhc0NvbnRlbnRMZW5ndGggJiYgY29udGVudERpc3Bvc2l0aW9uSWR4ICE9PSAtMSkge1xuICAgIHJldFtjb250ZW50RGlzcG9zaXRpb25JZHhdID0gQnVmZmVyLmZyb20ocmV0W2NvbnRlbnREaXNwb3NpdGlvbklkeF0pLnRvU3RyaW5nKCdsYXRpbjEnKVxuICB9XG5cbiAgcmV0dXJuIHJldFxufVxuXG5mdW5jdGlvbiBpc0J1ZmZlciAoYnVmZmVyKSB7XG4gIC8vIFNlZSwgaHR0cHM6Ly9naXRodWIuY29tL21jb2xsaW5hL3VuZGljaS9wdWxsLzMxOVxuICByZXR1cm4gYnVmZmVyIGluc3RhbmNlb2YgVWludDhBcnJheSB8fCBCdWZmZXIuaXNCdWZmZXIoYnVmZmVyKVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZUhhbmRsZXIgKGhhbmRsZXIsIG1ldGhvZCwgdXBncmFkZSkge1xuICBpZiAoIWhhbmRsZXIgfHwgdHlwZW9mIGhhbmRsZXIgIT09ICdvYmplY3QnKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoYW5kbGVyIG11c3QgYmUgYW4gb2JqZWN0JylcbiAgfVxuXG4gIGlmICh0eXBlb2YgaGFuZGxlci5vbkNvbm5lY3QgIT09ICdmdW5jdGlvbicpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb25Db25uZWN0IG1ldGhvZCcpXG4gIH1cblxuICBpZiAodHlwZW9mIGhhbmRsZXIub25FcnJvciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkVycm9yIG1ldGhvZCcpXG4gIH1cblxuICBpZiAodHlwZW9mIGhhbmRsZXIub25Cb2R5U2VudCAhPT0gJ2Z1bmN0aW9uJyAmJiBoYW5kbGVyLm9uQm9keVNlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkJvZHlTZW50IG1ldGhvZCcpXG4gIH1cblxuICBpZiAodXBncmFkZSB8fCBtZXRob2QgPT09ICdDT05ORUNUJykge1xuICAgIGlmICh0eXBlb2YgaGFuZGxlci5vblVwZ3JhZGUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvblVwZ3JhZGUgbWV0aG9kJylcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgaWYgKHR5cGVvZiBoYW5kbGVyLm9uSGVhZGVycyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9uSGVhZGVycyBtZXRob2QnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgaGFuZGxlci5vbkRhdGEgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkRhdGEgbWV0aG9kJylcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGhhbmRsZXIub25Db21wbGV0ZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9uQ29tcGxldGUgbWV0aG9kJylcbiAgICB9XG4gIH1cbn1cblxuLy8gQSBib2R5IGlzIGRpc3R1cmJlZCBpZiBpdCBoYXMgYmVlbiByZWFkIGZyb20gYW5kIGl0IGNhbm5vdFxuLy8gYmUgcmUtdXNlZCB3aXRob3V0IGxvc2luZyBzdGF0ZSBvciBkYXRhLlxuZnVuY3Rpb24gaXNEaXN0dXJiZWQgKGJvZHkpIHtcbiAgcmV0dXJuICEhKGJvZHkgJiYgKFxuICAgIHN0cmVhbS5pc0Rpc3R1cmJlZFxuICAgICAgPyBzdHJlYW0uaXNEaXN0dXJiZWQoYm9keSkgfHwgYm9keVtrQm9keVVzZWRdIC8vIFRPRE8gKGZpeCk6IFdoeSBpcyBib2R5W2tCb2R5VXNlZF0gbmVlZGVkP1xuICAgICAgOiBib2R5W2tCb2R5VXNlZF0gfHxcbiAgICAgICAgYm9keS5yZWFkYWJsZURpZFJlYWQgfHxcbiAgICAgICAgKGJvZHkuX3JlYWRhYmxlU3RhdGUgJiYgYm9keS5fcmVhZGFibGVTdGF0ZS5kYXRhRW1pdHRlZCkgfHxcbiAgICAgICAgaXNSZWFkYWJsZUFib3J0ZWQoYm9keSlcbiAgKSlcbn1cblxuZnVuY3Rpb24gaXNFcnJvcmVkIChib2R5KSB7XG4gIHJldHVybiAhIShib2R5ICYmIChcbiAgICBzdHJlYW0uaXNFcnJvcmVkXG4gICAgICA/IHN0cmVhbS5pc0Vycm9yZWQoYm9keSlcbiAgICAgIDogL3N0YXRlOiAnZXJyb3JlZCcvLnRlc3Qobm9kZVV0aWwuaW5zcGVjdChib2R5KVxuICAgICAgKSkpXG59XG5cbmZ1bmN0aW9uIGlzUmVhZGFibGUgKGJvZHkpIHtcbiAgcmV0dXJuICEhKGJvZHkgJiYgKFxuICAgIHN0cmVhbS5pc1JlYWRhYmxlXG4gICAgICA/IHN0cmVhbS5pc1JlYWRhYmxlKGJvZHkpXG4gICAgICA6IC9zdGF0ZTogJ3JlYWRhYmxlJy8udGVzdChub2RlVXRpbC5pbnNwZWN0KGJvZHkpXG4gICAgICApKSlcbn1cblxuZnVuY3Rpb24gZ2V0U29ja2V0SW5mbyAoc29ja2V0KSB7XG4gIHJldHVybiB7XG4gICAgbG9jYWxBZGRyZXNzOiBzb2NrZXQubG9jYWxBZGRyZXNzLFxuICAgIGxvY2FsUG9ydDogc29ja2V0LmxvY2FsUG9ydCxcbiAgICByZW1vdGVBZGRyZXNzOiBzb2NrZXQucmVtb3RlQWRkcmVzcyxcbiAgICByZW1vdGVQb3J0OiBzb2NrZXQucmVtb3RlUG9ydCxcbiAgICByZW1vdGVGYW1pbHk6IHNvY2tldC5yZW1vdGVGYW1pbHksXG4gICAgdGltZW91dDogc29ja2V0LnRpbWVvdXQsXG4gICAgYnl0ZXNXcml0dGVuOiBzb2NrZXQuYnl0ZXNXcml0dGVuLFxuICAgIGJ5dGVzUmVhZDogc29ja2V0LmJ5dGVzUmVhZFxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uICogY29udmVydEl0ZXJhYmxlVG9CdWZmZXIgKGl0ZXJhYmxlKSB7XG4gIGZvciBhd2FpdCAoY29uc3QgY2h1bmsgb2YgaXRlcmFibGUpIHtcbiAgICB5aWVsZCBCdWZmZXIuaXNCdWZmZXIoY2h1bmspID8gY2h1bmsgOiBCdWZmZXIuZnJvbShjaHVuaylcbiAgfVxufVxuXG5sZXQgUmVhZGFibGVTdHJlYW1cbmZ1bmN0aW9uIFJlYWRhYmxlU3RyZWFtRnJvbSAoaXRlcmFibGUpIHtcbiAgaWYgKCFSZWFkYWJsZVN0cmVhbSkge1xuICAgIFJlYWRhYmxlU3RyZWFtID0gcmVxdWlyZSgnc3RyZWFtL3dlYicpLlJlYWRhYmxlU3RyZWFtXG4gIH1cblxuICBpZiAoUmVhZGFibGVTdHJlYW0uZnJvbSkge1xuICAgIHJldHVybiBSZWFkYWJsZVN0cmVhbS5mcm9tKGNvbnZlcnRJdGVyYWJsZVRvQnVmZmVyKGl0ZXJhYmxlKSlcbiAgfVxuXG4gIGxldCBpdGVyYXRvclxuICByZXR1cm4gbmV3IFJlYWRhYmxlU3RyZWFtKFxuICAgIHtcbiAgICAgIGFzeW5jIHN0YXJ0ICgpIHtcbiAgICAgICAgaXRlcmF0b3IgPSBpdGVyYWJsZVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0oKVxuICAgICAgfSxcbiAgICAgIGFzeW5jIHB1bGwgKGNvbnRyb2xsZXIpIHtcbiAgICAgICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgaXRlcmF0b3IubmV4dCgpXG4gICAgICAgIGlmIChkb25lKSB7XG4gICAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgICAgY29udHJvbGxlci5jbG9zZSgpXG4gICAgICAgICAgfSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBidWYgPSBCdWZmZXIuaXNCdWZmZXIodmFsdWUpID8gdmFsdWUgOiBCdWZmZXIuZnJvbSh2YWx1ZSlcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUobmV3IFVpbnQ4QXJyYXkoYnVmKSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udHJvbGxlci5kZXNpcmVkU2l6ZSA+IDBcbiAgICAgIH0sXG4gICAgICBhc3luYyBjYW5jZWwgKHJlYXNvbikge1xuICAgICAgICBhd2FpdCBpdGVyYXRvci5yZXR1cm4oKVxuICAgICAgfVxuICAgIH0sXG4gICAgMFxuICApXG59XG5cbi8vIFRoZSBjaHVuayBzaG91bGQgYmUgYSBGb3JtRGF0YSBpbnN0YW5jZSBhbmQgY29udGFpbnNcbi8vIGFsbCB0aGUgcmVxdWlyZWQgbWV0aG9kcy5cbmZ1bmN0aW9uIGlzRm9ybURhdGFMaWtlIChvYmplY3QpIHtcbiAgcmV0dXJuIChcbiAgICBvYmplY3QgJiZcbiAgICB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJlxuICAgIHR5cGVvZiBvYmplY3QuYXBwZW5kID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIG9iamVjdC5kZWxldGUgPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2Ygb2JqZWN0LmdldCA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIHR5cGVvZiBvYmplY3QuZ2V0QWxsID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIG9iamVjdC5oYXMgPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2Ygb2JqZWN0LnNldCA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIG9iamVjdFtTeW1ib2wudG9TdHJpbmdUYWddID09PSAnRm9ybURhdGEnXG4gIClcbn1cblxuZnVuY3Rpb24gdGhyb3dJZkFib3J0ZWQgKHNpZ25hbCkge1xuICBpZiAoIXNpZ25hbCkgeyByZXR1cm4gfVxuICBpZiAodHlwZW9mIHNpZ25hbC50aHJvd0lmQWJvcnRlZCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHNpZ25hbC50aHJvd0lmQWJvcnRlZCgpXG4gIH0gZWxzZSB7XG4gICAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgICAvLyBET01FeGNlcHRpb24gbm90IGF2YWlsYWJsZSA8IHYxNy4wLjBcbiAgICAgIGNvbnN0IGVyciA9IG5ldyBFcnJvcignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZCcpXG4gICAgICBlcnIubmFtZSA9ICdBYm9ydEVycm9yJ1xuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGFkZEFib3J0TGlzdGVuZXIgKHNpZ25hbCwgbGlzdGVuZXIpIHtcbiAgaWYgKCdhZGRFdmVudExpc3RlbmVyJyBpbiBzaWduYWwpIHtcbiAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBsaXN0ZW5lciwgeyBvbmNlOiB0cnVlIH0pXG4gICAgcmV0dXJuICgpID0+IHNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIGxpc3RlbmVyKVxuICB9XG4gIHNpZ25hbC5hZGRMaXN0ZW5lcignYWJvcnQnLCBsaXN0ZW5lcilcbiAgcmV0dXJuICgpID0+IHNpZ25hbC5yZW1vdmVMaXN0ZW5lcignYWJvcnQnLCBsaXN0ZW5lcilcbn1cblxuY29uc3QgaGFzVG9XZWxsRm9ybWVkID0gISFTdHJpbmcucHJvdG90eXBlLnRvV2VsbEZvcm1lZFxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB2YWxcbiAqL1xuZnVuY3Rpb24gdG9VU1ZTdHJpbmcgKHZhbCkge1xuICBpZiAoaGFzVG9XZWxsRm9ybWVkKSB7XG4gICAgcmV0dXJuIGAke3ZhbH1gLnRvV2VsbEZvcm1lZCgpXG4gIH0gZWxzZSBpZiAobm9kZVV0aWwudG9VU1ZTdHJpbmcpIHtcbiAgICByZXR1cm4gbm9kZVV0aWwudG9VU1ZTdHJpbmcodmFsKVxuICB9XG5cbiAgcmV0dXJuIGAke3ZhbH1gXG59XG5cbi8vIFBhcnNlZCBhY2NvcmRpbmdseSB0byBSRkMgOTExMFxuLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkxMTAjZmllbGQuY29udGVudC1yYW5nZVxuZnVuY3Rpb24gcGFyc2VSYW5nZUhlYWRlciAocmFuZ2UpIHtcbiAgaWYgKHJhbmdlID09IG51bGwgfHwgcmFuZ2UgPT09ICcnKSByZXR1cm4geyBzdGFydDogMCwgZW5kOiBudWxsLCBzaXplOiBudWxsIH1cblxuICBjb25zdCBtID0gcmFuZ2UgPyByYW5nZS5tYXRjaCgvXmJ5dGVzIChcXGQrKS0oXFxkKylcXC8oXFxkKyk/JC8pIDogbnVsbFxuICByZXR1cm4gbVxuICAgID8ge1xuICAgICAgICBzdGFydDogcGFyc2VJbnQobVsxXSksXG4gICAgICAgIGVuZDogbVsyXSA/IHBhcnNlSW50KG1bMl0pIDogbnVsbCxcbiAgICAgICAgc2l6ZTogbVszXSA/IHBhcnNlSW50KG1bM10pIDogbnVsbFxuICAgICAgfVxuICAgIDogbnVsbFxufVxuXG5jb25zdCBrRW51bWVyYWJsZVByb3BlcnR5ID0gT2JqZWN0LmNyZWF0ZShudWxsKVxua0VudW1lcmFibGVQcm9wZXJ0eS5lbnVtZXJhYmxlID0gdHJ1ZVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgbm9wLFxuICBpc0Rpc3R1cmJlZCxcbiAgaXNFcnJvcmVkLFxuICBpc1JlYWRhYmxlLFxuICB0b1VTVlN0cmluZyxcbiAgaXNSZWFkYWJsZUFib3J0ZWQsXG4gIGlzQmxvYkxpa2UsXG4gIHBhcnNlT3JpZ2luLFxuICBwYXJzZVVSTCxcbiAgZ2V0U2VydmVyTmFtZSxcbiAgaXNTdHJlYW0sXG4gIGlzSXRlcmFibGUsXG4gIGlzQXN5bmNJdGVyYWJsZSxcbiAgaXNEZXN0cm95ZWQsXG4gIGhlYWRlck5hbWVUb1N0cmluZyxcbiAgcGFyc2VSYXdIZWFkZXJzLFxuICBwYXJzZUhlYWRlcnMsXG4gIHBhcnNlS2VlcEFsaXZlVGltZW91dCxcbiAgZGVzdHJveSxcbiAgYm9keUxlbmd0aCxcbiAgZGVlcENsb25lLFxuICBSZWFkYWJsZVN0cmVhbUZyb20sXG4gIGlzQnVmZmVyLFxuICB2YWxpZGF0ZUhhbmRsZXIsXG4gIGdldFNvY2tldEluZm8sXG4gIGlzRm9ybURhdGFMaWtlLFxuICBidWlsZFVSTCxcbiAgdGhyb3dJZkFib3J0ZWQsXG4gIGFkZEFib3J0TGlzdGVuZXIsXG4gIHBhcnNlUmFuZ2VIZWFkZXIsXG4gIG5vZGVNYWpvcixcbiAgbm9kZU1pbm9yLFxuICBub2RlSGFzQXV0b1NlbGVjdEZhbWlseTogbm9kZU1ham9yID4gMTggfHwgKG5vZGVNYWpvciA9PT0gMTggJiYgbm9kZU1pbm9yID49IDEzKSxcbiAgc2FmZUhUVFBNZXRob2RzOiBbJ0dFVCcsICdIRUFEJywgJ09QVElPTlMnLCAnVFJBQ0UnXVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5sZXQgZmFzdE5vdyA9IERhdGUubm93KClcbmxldCBmYXN0Tm93VGltZW91dFxuXG5jb25zdCBmYXN0VGltZXJzID0gW11cblxuZnVuY3Rpb24gb25UaW1lb3V0ICgpIHtcbiAgZmFzdE5vdyA9IERhdGUubm93KClcblxuICBsZXQgbGVuID0gZmFzdFRpbWVycy5sZW5ndGhcbiAgbGV0IGlkeCA9IDBcbiAgd2hpbGUgKGlkeCA8IGxlbikge1xuICAgIGNvbnN0IHRpbWVyID0gZmFzdFRpbWVyc1tpZHhdXG5cbiAgICBpZiAodGltZXIuc3RhdGUgPT09IDApIHtcbiAgICAgIHRpbWVyLnN0YXRlID0gZmFzdE5vdyArIHRpbWVyLmRlbGF5XG4gICAgfSBlbHNlIGlmICh0aW1lci5zdGF0ZSA+IDAgJiYgZmFzdE5vdyA+PSB0aW1lci5zdGF0ZSkge1xuICAgICAgdGltZXIuc3RhdGUgPSAtMVxuICAgICAgdGltZXIuY2FsbGJhY2sodGltZXIub3BhcXVlKVxuICAgIH1cblxuICAgIGlmICh0aW1lci5zdGF0ZSA9PT0gLTEpIHtcbiAgICAgIHRpbWVyLnN0YXRlID0gLTJcbiAgICAgIGlmIChpZHggIT09IGxlbiAtIDEpIHtcbiAgICAgICAgZmFzdFRpbWVyc1tpZHhdID0gZmFzdFRpbWVycy5wb3AoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZmFzdFRpbWVycy5wb3AoKVxuICAgICAgfVxuICAgICAgbGVuIC09IDFcbiAgICB9IGVsc2Uge1xuICAgICAgaWR4ICs9IDFcbiAgICB9XG4gIH1cblxuICBpZiAoZmFzdFRpbWVycy5sZW5ndGggPiAwKSB7XG4gICAgcmVmcmVzaFRpbWVvdXQoKVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlZnJlc2hUaW1lb3V0ICgpIHtcbiAgaWYgKGZhc3ROb3dUaW1lb3V0ICYmIGZhc3ROb3dUaW1lb3V0LnJlZnJlc2gpIHtcbiAgICBmYXN0Tm93VGltZW91dC5yZWZyZXNoKClcbiAgfSBlbHNlIHtcbiAgICBjbGVhclRpbWVvdXQoZmFzdE5vd1RpbWVvdXQpXG4gICAgZmFzdE5vd1RpbWVvdXQgPSBzZXRUaW1lb3V0KG9uVGltZW91dCwgMWUzKVxuICAgIGlmIChmYXN0Tm93VGltZW91dC51bnJlZikge1xuICAgICAgZmFzdE5vd1RpbWVvdXQudW5yZWYoKVxuICAgIH1cbiAgfVxufVxuXG5jbGFzcyBUaW1lb3V0IHtcbiAgY29uc3RydWN0b3IgKGNhbGxiYWNrLCBkZWxheSwgb3BhcXVlKSB7XG4gICAgdGhpcy5jYWxsYmFjayA9IGNhbGxiYWNrXG4gICAgdGhpcy5kZWxheSA9IGRlbGF5XG4gICAgdGhpcy5vcGFxdWUgPSBvcGFxdWVcblxuICAgIC8vICAtMiBub3QgaW4gdGltZXIgbGlzdFxuICAgIC8vICAtMSBpbiB0aW1lciBsaXN0IGJ1dCBpbmFjdGl2ZVxuICAgIC8vICAgMCBpbiB0aW1lciBsaXN0IHdhaXRpbmcgZm9yIHRpbWVcbiAgICAvLyA+IDAgaW4gdGltZXIgbGlzdCB3YWl0aW5nIGZvciB0aW1lIHRvIGV4cGlyZVxuICAgIHRoaXMuc3RhdGUgPSAtMlxuXG4gICAgdGhpcy5yZWZyZXNoKClcbiAgfVxuXG4gIHJlZnJlc2ggKCkge1xuICAgIGlmICh0aGlzLnN0YXRlID09PSAtMikge1xuICAgICAgZmFzdFRpbWVycy5wdXNoKHRoaXMpXG4gICAgICBpZiAoIWZhc3ROb3dUaW1lb3V0IHx8IGZhc3RUaW1lcnMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHJlZnJlc2hUaW1lb3V0KClcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnN0YXRlID0gMFxuICB9XG5cbiAgY2xlYXIgKCkge1xuICAgIHRoaXMuc3RhdGUgPSAtMVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBzZXRUaW1lb3V0IChjYWxsYmFjaywgZGVsYXksIG9wYXF1ZSkge1xuICAgIHJldHVybiBkZWxheSA8IDFlM1xuICAgICAgPyBzZXRUaW1lb3V0KGNhbGxiYWNrLCBkZWxheSwgb3BhcXVlKVxuICAgICAgOiBuZXcgVGltZW91dChjYWxsYmFjaywgZGVsYXksIG9wYXF1ZSlcbiAgfSxcbiAgY2xlYXJUaW1lb3V0ICh0aW1lb3V0KSB7XG4gICAgaWYgKHRpbWVvdXQgaW5zdGFuY2VvZiBUaW1lb3V0KSB7XG4gICAgICB0aW1lb3V0LmNsZWFyKClcbiAgICB9IGVsc2Uge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpXG4gICAgfVxuICB9XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8qKlxuICogQ29weXJpZ2h0IEJyaWFuIFdoaXRlLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL21zY2RleC9zdHJlYW1zZWFyY2hcbiAqXG4gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0b1xuICogZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGVcbiAqIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vclxuICogc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4gKlxuICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbiAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuICpcbiAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lOR1xuICogRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HU1xuICogSU4gVEhFIFNPRlRXQVJFLlxuICpcbiAqIEJhc2VkIGhlYXZpbHkgb24gdGhlIFN0cmVhbWluZyBCb3llci1Nb29yZS1Ib3JzcG9vbCBDKysgaW1wbGVtZW50YXRpb25cbiAqIGJ5IEhvbmdsaSBMYWkgYXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9Gb29CYXJXaWRnZXQvYm95ZXItbW9vcmUtaG9yc3Bvb2xcbiAqL1xuY29uc3QgRXZlbnRFbWl0dGVyID0gcmVxdWlyZSgnbm9kZTpldmVudHMnKS5FdmVudEVtaXR0ZXJcbmNvbnN0IGluaGVyaXRzID0gcmVxdWlyZSgnbm9kZTp1dGlsJykuaW5oZXJpdHNcblxuZnVuY3Rpb24gU0JNSCAobmVlZGxlKSB7XG4gIGlmICh0eXBlb2YgbmVlZGxlID09PSAnc3RyaW5nJykge1xuICAgIG5lZWRsZSA9IEJ1ZmZlci5mcm9tKG5lZWRsZSlcbiAgfVxuXG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKG5lZWRsZSkpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdUaGUgbmVlZGxlIGhhcyB0byBiZSBhIFN0cmluZyBvciBhIEJ1ZmZlci4nKVxuICB9XG5cbiAgY29uc3QgbmVlZGxlTGVuZ3RoID0gbmVlZGxlLmxlbmd0aFxuXG4gIGlmIChuZWVkbGVMZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBuZWVkbGUgY2Fubm90IGJlIGFuIGVtcHR5IFN0cmluZy9CdWZmZXIuJylcbiAgfVxuXG4gIGlmIChuZWVkbGVMZW5ndGggPiAyNTYpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBuZWVkbGUgY2Fubm90IGhhdmUgYSBsZW5ndGggYmlnZ2VyIHRoYW4gMjU2LicpXG4gIH1cblxuICB0aGlzLm1heE1hdGNoZXMgPSBJbmZpbml0eVxuICB0aGlzLm1hdGNoZXMgPSAwXG5cbiAgdGhpcy5fb2NjID0gbmV3IEFycmF5KDI1NilcbiAgICAuZmlsbChuZWVkbGVMZW5ndGgpIC8vIEluaXRpYWxpemUgb2NjdXJyZW5jZSB0YWJsZS5cbiAgdGhpcy5fbG9va2JlaGluZF9zaXplID0gMFxuICB0aGlzLl9uZWVkbGUgPSBuZWVkbGVcbiAgdGhpcy5fYnVmcG9zID0gMFxuXG4gIHRoaXMuX2xvb2tiZWhpbmQgPSBCdWZmZXIuYWxsb2MobmVlZGxlTGVuZ3RoKVxuXG4gIC8vIFBvcHVsYXRlIG9jY3VycmVuY2UgdGFibGUgd2l0aCBhbmFseXNpcyBvZiB0aGUgbmVlZGxlLFxuICAvLyBpZ25vcmluZyBsYXN0IGxldHRlci5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBuZWVkbGVMZW5ndGggLSAxOyArK2kpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby12YXJcbiAgICB0aGlzLl9vY2NbbmVlZGxlW2ldXSA9IG5lZWRsZUxlbmd0aCAtIDEgLSBpXG4gIH1cbn1cbmluaGVyaXRzKFNCTUgsIEV2ZW50RW1pdHRlcilcblxuU0JNSC5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSA9IDBcbiAgdGhpcy5tYXRjaGVzID0gMFxuICB0aGlzLl9idWZwb3MgPSAwXG59XG5cblNCTUgucHJvdG90eXBlLnB1c2ggPSBmdW5jdGlvbiAoY2h1bmssIHBvcykge1xuICBpZiAoIUJ1ZmZlci5pc0J1ZmZlcihjaHVuaykpIHtcbiAgICBjaHVuayA9IEJ1ZmZlci5mcm9tKGNodW5rLCAnYmluYXJ5JylcbiAgfVxuICBjb25zdCBjaGxlbiA9IGNodW5rLmxlbmd0aFxuICB0aGlzLl9idWZwb3MgPSBwb3MgfHwgMFxuICBsZXQgclxuICB3aGlsZSAociAhPT0gY2hsZW4gJiYgdGhpcy5tYXRjaGVzIDwgdGhpcy5tYXhNYXRjaGVzKSB7IHIgPSB0aGlzLl9zYm1oX2ZlZWQoY2h1bmspIH1cbiAgcmV0dXJuIHJcbn1cblxuU0JNSC5wcm90b3R5cGUuX3NibWhfZmVlZCA9IGZ1bmN0aW9uIChkYXRhKSB7XG4gIGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoXG4gIGNvbnN0IG5lZWRsZSA9IHRoaXMuX25lZWRsZVxuICBjb25zdCBuZWVkbGVMZW5ndGggPSBuZWVkbGUubGVuZ3RoXG4gIGNvbnN0IGxhc3ROZWVkbGVDaGFyID0gbmVlZGxlW25lZWRsZUxlbmd0aCAtIDFdXG5cbiAgLy8gUG9zaXRpdmU6IHBvaW50cyB0byBhIHBvc2l0aW9uIGluIGBkYXRhYFxuICAvLyAgICAgICAgICAgcG9zID09IDMgcG9pbnRzIHRvIGRhdGFbM11cbiAgLy8gTmVnYXRpdmU6IHBvaW50cyB0byBhIHBvc2l0aW9uIGluIHRoZSBsb29rYmVoaW5kIGJ1ZmZlclxuICAvLyAgICAgICAgICAgcG9zID09IC0yIHBvaW50cyB0byBsb29rYmVoaW5kW2xvb2tiZWhpbmRfc2l6ZSAtIDJdXG4gIGxldCBwb3MgPSAtdGhpcy5fbG9va2JlaGluZF9zaXplXG4gIGxldCBjaFxuXG4gIGlmIChwb3MgPCAwKSB7XG4gICAgLy8gTG9va2JlaGluZCBidWZmZXIgaXMgbm90IGVtcHR5LiBQZXJmb3JtIEJveWVyLU1vb3JlLUhvcnNwb29sXG4gICAgLy8gc2VhcmNoIHdpdGggY2hhcmFjdGVyIGxvb2t1cCBjb2RlIHRoYXQgY29uc2lkZXJzIGJvdGggdGhlXG4gICAgLy8gbG9va2JlaGluZCBidWZmZXIgYW5kIHRoZSBjdXJyZW50IHJvdW5kJ3MgaGF5c3RhY2sgZGF0YS5cbiAgICAvL1xuICAgIC8vIExvb3AgdW50aWxcbiAgICAvLyAgIHRoZXJlIGlzIGEgbWF0Y2guXG4gICAgLy8gb3IgdW50aWxcbiAgICAvLyAgIHdlJ3ZlIG1vdmVkIHBhc3QgdGhlIHBvc2l0aW9uIHRoYXQgcmVxdWlyZXMgdGhlXG4gICAgLy8gICBsb29rYmVoaW5kIGJ1ZmZlci4gSW4gdGhpcyBjYXNlIHdlIHN3aXRjaCB0byB0aGVcbiAgICAvLyAgIG9wdGltaXplZCBsb29wLlxuICAgIC8vIG9yIHVudGlsXG4gICAgLy8gICB0aGUgY2hhcmFjdGVyIHRvIGxvb2sgYXQgbGllcyBvdXRzaWRlIHRoZSBoYXlzdGFjay5cbiAgICB3aGlsZSAocG9zIDwgMCAmJiBwb3MgPD0gbGVuIC0gbmVlZGxlTGVuZ3RoKSB7XG4gICAgICBjaCA9IHRoaXMuX3NibWhfbG9va3VwX2NoYXIoZGF0YSwgcG9zICsgbmVlZGxlTGVuZ3RoIC0gMSlcblxuICAgICAgaWYgKFxuICAgICAgICBjaCA9PT0gbGFzdE5lZWRsZUNoYXIgJiZcbiAgICAgICAgdGhpcy5fc2JtaF9tZW1jbXAoZGF0YSwgcG9zLCBuZWVkbGVMZW5ndGggLSAxKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSA9IDBcbiAgICAgICAgKyt0aGlzLm1hdGNoZXNcbiAgICAgICAgdGhpcy5lbWl0KCdpbmZvJywgdHJ1ZSlcblxuICAgICAgICByZXR1cm4gKHRoaXMuX2J1ZnBvcyA9IHBvcyArIG5lZWRsZUxlbmd0aClcbiAgICAgIH1cbiAgICAgIHBvcyArPSB0aGlzLl9vY2NbY2hdXG4gICAgfVxuXG4gICAgLy8gTm8gbWF0Y2guXG5cbiAgICBpZiAocG9zIDwgMCkge1xuICAgICAgLy8gVGhlcmUncyB0b28gZmV3IGRhdGEgZm9yIEJveWVyLU1vb3JlLUhvcnNwb29sIHRvIHJ1bixcbiAgICAgIC8vIHNvIGxldCdzIHVzZSBhIGRpZmZlcmVudCBhbGdvcml0aG0gdG8gc2tpcCBhcyBtdWNoIGFzXG4gICAgICAvLyB3ZSBjYW4uXG4gICAgICAvLyBGb3J3YXJkIHBvcyB1bnRpbFxuICAgICAgLy8gICB0aGUgdHJhaWxpbmcgcGFydCBvZiBsb29rYmVoaW5kICsgZGF0YVxuICAgICAgLy8gICBsb29rcyBsaWtlIHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5lZWRsZVxuICAgICAgLy8gb3IgdW50aWxcbiAgICAgIC8vICAgcG9zID09IDBcbiAgICAgIHdoaWxlIChwb3MgPCAwICYmICF0aGlzLl9zYm1oX21lbWNtcChkYXRhLCBwb3MsIGxlbiAtIHBvcykpIHsgKytwb3MgfVxuICAgIH1cblxuICAgIGlmIChwb3MgPj0gMCkge1xuICAgICAgLy8gRGlzY2FyZCBsb29rYmVoaW5kIGJ1ZmZlci5cbiAgICAgIHRoaXMuZW1pdCgnaW5mbycsIGZhbHNlLCB0aGlzLl9sb29rYmVoaW5kLCAwLCB0aGlzLl9sb29rYmVoaW5kX3NpemUpXG4gICAgICB0aGlzLl9sb29rYmVoaW5kX3NpemUgPSAwXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEN1dCBvZmYgcGFydCBvZiB0aGUgbG9va2JlaGluZCBidWZmZXIgdGhhdCBoYXNcbiAgICAgIC8vIGJlZW4gcHJvY2Vzc2VkIGFuZCBhcHBlbmQgdGhlIGVudGlyZSBoYXlzdGFja1xuICAgICAgLy8gaW50byBpdC5cbiAgICAgIGNvbnN0IGJ5dGVzVG9DdXRPZmYgPSB0aGlzLl9sb29rYmVoaW5kX3NpemUgKyBwb3NcbiAgICAgIGlmIChieXRlc1RvQ3V0T2ZmID4gMCkge1xuICAgICAgICAvLyBUaGUgY3V0IG9mZiBkYXRhIGlzIGd1YXJhbnRlZWQgbm90IHRvIGNvbnRhaW4gdGhlIG5lZWRsZS5cbiAgICAgICAgdGhpcy5lbWl0KCdpbmZvJywgZmFsc2UsIHRoaXMuX2xvb2tiZWhpbmQsIDAsIGJ5dGVzVG9DdXRPZmYpXG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2xvb2tiZWhpbmQuY29weSh0aGlzLl9sb29rYmVoaW5kLCAwLCBieXRlc1RvQ3V0T2ZmLFxuICAgICAgICB0aGlzLl9sb29rYmVoaW5kX3NpemUgLSBieXRlc1RvQ3V0T2ZmKVxuICAgICAgdGhpcy5fbG9va2JlaGluZF9zaXplIC09IGJ5dGVzVG9DdXRPZmZcblxuICAgICAgZGF0YS5jb3B5KHRoaXMuX2xvb2tiZWhpbmQsIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSlcbiAgICAgIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSArPSBsZW5cblxuICAgICAgdGhpcy5fYnVmcG9zID0gbGVuXG4gICAgICByZXR1cm4gbGVuXG4gICAgfVxuICB9XG5cbiAgcG9zICs9IChwb3MgPj0gMCkgKiB0aGlzLl9idWZwb3NcblxuICAvLyBMb29rYmVoaW5kIGJ1ZmZlciBpcyBub3cgZW1wdHkuIFdlIG9ubHkgbmVlZCB0byBjaGVjayBpZiB0aGVcbiAgLy8gbmVlZGxlIGlzIGluIHRoZSBoYXlzdGFjay5cbiAgaWYgKGRhdGEuaW5kZXhPZihuZWVkbGUsIHBvcykgIT09IC0xKSB7XG4gICAgcG9zID0gZGF0YS5pbmRleE9mKG5lZWRsZSwgcG9zKVxuICAgICsrdGhpcy5tYXRjaGVzXG4gICAgaWYgKHBvcyA+IDApIHsgdGhpcy5lbWl0KCdpbmZvJywgdHJ1ZSwgZGF0YSwgdGhpcy5fYnVmcG9zLCBwb3MpIH0gZWxzZSB7IHRoaXMuZW1pdCgnaW5mbycsIHRydWUpIH1cblxuICAgIHJldHVybiAodGhpcy5fYnVmcG9zID0gcG9zICsgbmVlZGxlTGVuZ3RoKVxuICB9IGVsc2Uge1xuICAgIHBvcyA9IGxlbiAtIG5lZWRsZUxlbmd0aFxuICB9XG5cbiAgLy8gVGhlcmUgd2FzIG5vIG1hdGNoLiBJZiB0aGVyZSdzIHRyYWlsaW5nIGhheXN0YWNrIGRhdGEgdGhhdCB3ZSBjYW5ub3RcbiAgLy8gbWF0Y2ggeWV0IHVzaW5nIHRoZSBCb3llci1Nb29yZS1Ib3JzcG9vbCBhbGdvcml0aG0gKGJlY2F1c2UgdGhlIHRyYWlsaW5nXG4gIC8vIGRhdGEgaXMgbGVzcyB0aGFuIHRoZSBuZWVkbGUgc2l6ZSkgdGhlbiBtYXRjaCB1c2luZyBhIG1vZGlmaWVkXG4gIC8vIGFsZ29yaXRobSB0aGF0IHN0YXJ0cyBtYXRjaGluZyBmcm9tIHRoZSBiZWdpbm5pbmcgaW5zdGVhZCBvZiB0aGUgZW5kLlxuICAvLyBXaGF0ZXZlciB0cmFpbGluZyBkYXRhIGlzIGxlZnQgYWZ0ZXIgcnVubmluZyB0aGlzIGFsZ29yaXRobSBpcyBhZGRlZCB0b1xuICAvLyB0aGUgbG9va2JlaGluZCBidWZmZXIuXG4gIHdoaWxlIChcbiAgICBwb3MgPCBsZW4gJiZcbiAgICAoXG4gICAgICBkYXRhW3Bvc10gIT09IG5lZWRsZVswXSB8fFxuICAgICAgKFxuICAgICAgICAoQnVmZmVyLmNvbXBhcmUoXG4gICAgICAgICAgZGF0YS5zdWJhcnJheShwb3MsIHBvcyArIGxlbiAtIHBvcyksXG4gICAgICAgICAgbmVlZGxlLnN1YmFycmF5KDAsIGxlbiAtIHBvcylcbiAgICAgICAgKSAhPT0gMClcbiAgICAgIClcbiAgICApXG4gICkge1xuICAgICsrcG9zXG4gIH1cbiAgaWYgKHBvcyA8IGxlbikge1xuICAgIGRhdGEuY29weSh0aGlzLl9sb29rYmVoaW5kLCAwLCBwb3MsIHBvcyArIChsZW4gLSBwb3MpKVxuICAgIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSA9IGxlbiAtIHBvc1xuICB9XG5cbiAgLy8gRXZlcnl0aGluZyB1bnRpbCBwb3MgaXMgZ3VhcmFudGVlZCBub3QgdG8gY29udGFpbiBuZWVkbGUgZGF0YS5cbiAgaWYgKHBvcyA+IDApIHsgdGhpcy5lbWl0KCdpbmZvJywgZmFsc2UsIGRhdGEsIHRoaXMuX2J1ZnBvcywgcG9zIDwgbGVuID8gcG9zIDogbGVuKSB9XG5cbiAgdGhpcy5fYnVmcG9zID0gbGVuXG4gIHJldHVybiBsZW5cbn1cblxuU0JNSC5wcm90b3R5cGUuX3NibWhfbG9va3VwX2NoYXIgPSBmdW5jdGlvbiAoZGF0YSwgcG9zKSB7XG4gIHJldHVybiAocG9zIDwgMClcbiAgICA/IHRoaXMuX2xvb2tiZWhpbmRbdGhpcy5fbG9va2JlaGluZF9zaXplICsgcG9zXVxuICAgIDogZGF0YVtwb3NdXG59XG5cblNCTUgucHJvdG90eXBlLl9zYm1oX21lbWNtcCA9IGZ1bmN0aW9uIChkYXRhLCBwb3MsIGxlbikge1xuICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbjsgKytpKSB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdmFyXG4gICAgaWYgKHRoaXMuX3NibWhfbG9va3VwX2NoYXIoZGF0YSwgcG9zICsgaSkgIT09IHRoaXMuX25lZWRsZVtpXSkgeyByZXR1cm4gZmFsc2UgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbm1vZHVsZS5leHBvcnRzID0gU0JNSFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBpbmhlcml0cyA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpLmluaGVyaXRzXG5jb25zdCBSZWFkYWJsZVN0cmVhbSA9IHJlcXVpcmUoJ25vZGU6c3RyZWFtJykuUmVhZGFibGVcblxuZnVuY3Rpb24gUGFydFN0cmVhbSAob3B0cykge1xuICBSZWFkYWJsZVN0cmVhbS5jYWxsKHRoaXMsIG9wdHMpXG59XG5pbmhlcml0cyhQYXJ0U3RyZWFtLCBSZWFkYWJsZVN0cmVhbSlcblxuUGFydFN0cmVhbS5wcm90b3R5cGUuX3JlYWQgPSBmdW5jdGlvbiAobikge31cblxubW9kdWxlLmV4cG9ydHMgPSBQYXJ0U3RyZWFtXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gZ2V0TGltaXQgKGxpbWl0cywgbmFtZSwgZGVmYXVsdExpbWl0KSB7XG4gIGlmIChcbiAgICAhbGltaXRzIHx8XG4gICAgbGltaXRzW25hbWVdID09PSB1bmRlZmluZWQgfHxcbiAgICBsaW1pdHNbbmFtZV0gPT09IG51bGxcbiAgKSB7IHJldHVybiBkZWZhdWx0TGltaXQgfVxuXG4gIGlmIChcbiAgICB0eXBlb2YgbGltaXRzW25hbWVdICE9PSAnbnVtYmVyJyB8fFxuICAgIGlzTmFOKGxpbWl0c1tuYW1lXSlcbiAgKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoJ0xpbWl0ICcgKyBuYW1lICsgJyBpcyBub3QgYSB2YWxpZCBudW1iZXInKSB9XG5cbiAgcmV0dXJuIGxpbWl0c1tuYW1lXVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBFdmVudEVtaXR0ZXIgPSByZXF1aXJlKCdub2RlOmV2ZW50cycpLkV2ZW50RW1pdHRlclxuY29uc3QgaW5oZXJpdHMgPSByZXF1aXJlKCdub2RlOnV0aWwnKS5pbmhlcml0c1xuY29uc3QgZ2V0TGltaXQgPSByZXF1aXJlKCcuLi8uLi8uLi9saWIvdXRpbHMvZ2V0TGltaXQnKVxuXG5jb25zdCBTdHJlYW1TZWFyY2ggPSByZXF1aXJlKCcuLi8uLi9zdHJlYW1zZWFyY2gvc2JtaCcpXG5cbmNvbnN0IEJfRENSTEYgPSBCdWZmZXIuZnJvbSgnXFxyXFxuXFxyXFxuJylcbmNvbnN0IFJFX0NSTEYgPSAvXFxyXFxuL2dcbmNvbnN0IFJFX0hEUiA9IC9eKFteOl0rKTpbIFxcdF0/KFtcXHgwMC1cXHhGRl0rKT8kLyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLWNvbnRyb2wtcmVnZXhcblxuZnVuY3Rpb24gSGVhZGVyUGFyc2VyIChjZmcpIHtcbiAgRXZlbnRFbWl0dGVyLmNhbGwodGhpcylcblxuICBjZmcgPSBjZmcgfHwge31cbiAgY29uc3Qgc2VsZiA9IHRoaXNcbiAgdGhpcy5ucmVhZCA9IDBcbiAgdGhpcy5tYXhlZCA9IGZhbHNlXG4gIHRoaXMubnBhaXJzID0gMFxuICB0aGlzLm1heEhlYWRlclBhaXJzID0gZ2V0TGltaXQoY2ZnLCAnbWF4SGVhZGVyUGFpcnMnLCAyMDAwKVxuICB0aGlzLm1heEhlYWRlclNpemUgPSBnZXRMaW1pdChjZmcsICdtYXhIZWFkZXJTaXplJywgODAgKiAxMDI0KVxuICB0aGlzLmJ1ZmZlciA9ICcnXG4gIHRoaXMuaGVhZGVyID0ge31cbiAgdGhpcy5maW5pc2hlZCA9IGZhbHNlXG4gIHRoaXMuc3MgPSBuZXcgU3RyZWFtU2VhcmNoKEJfRENSTEYpXG4gIHRoaXMuc3Mub24oJ2luZm8nLCBmdW5jdGlvbiAoaXNNYXRjaCwgZGF0YSwgc3RhcnQsIGVuZCkge1xuICAgIGlmIChkYXRhICYmICFzZWxmLm1heGVkKSB7XG4gICAgICBpZiAoc2VsZi5ucmVhZCArIGVuZCAtIHN0YXJ0ID49IHNlbGYubWF4SGVhZGVyU2l6ZSkge1xuICAgICAgICBlbmQgPSBzZWxmLm1heEhlYWRlclNpemUgLSBzZWxmLm5yZWFkICsgc3RhcnRcbiAgICAgICAgc2VsZi5ucmVhZCA9IHNlbGYubWF4SGVhZGVyU2l6ZVxuICAgICAgICBzZWxmLm1heGVkID0gdHJ1ZVxuICAgICAgfSBlbHNlIHsgc2VsZi5ucmVhZCArPSAoZW5kIC0gc3RhcnQpIH1cblxuICAgICAgc2VsZi5idWZmZXIgKz0gZGF0YS50b1N0cmluZygnYmluYXJ5Jywgc3RhcnQsIGVuZClcbiAgICB9XG4gICAgaWYgKGlzTWF0Y2gpIHsgc2VsZi5fZmluaXNoKCkgfVxuICB9KVxufVxuaW5oZXJpdHMoSGVhZGVyUGFyc2VyLCBFdmVudEVtaXR0ZXIpXG5cbkhlYWRlclBhcnNlci5wcm90b3R5cGUucHVzaCA9IGZ1bmN0aW9uIChkYXRhKSB7XG4gIGNvbnN0IHIgPSB0aGlzLnNzLnB1c2goZGF0YSlcbiAgaWYgKHRoaXMuZmluaXNoZWQpIHsgcmV0dXJuIHIgfVxufVxuXG5IZWFkZXJQYXJzZXIucHJvdG90eXBlLnJlc2V0ID0gZnVuY3Rpb24gKCkge1xuICB0aGlzLmZpbmlzaGVkID0gZmFsc2VcbiAgdGhpcy5idWZmZXIgPSAnJ1xuICB0aGlzLmhlYWRlciA9IHt9XG4gIHRoaXMuc3MucmVzZXQoKVxufVxuXG5IZWFkZXJQYXJzZXIucHJvdG90eXBlLl9maW5pc2ggPSBmdW5jdGlvbiAoKSB7XG4gIGlmICh0aGlzLmJ1ZmZlcikgeyB0aGlzLl9wYXJzZUhlYWRlcigpIH1cbiAgdGhpcy5zcy5tYXRjaGVzID0gdGhpcy5zcy5tYXhNYXRjaGVzXG4gIGNvbnN0IGhlYWRlciA9IHRoaXMuaGVhZGVyXG4gIHRoaXMuaGVhZGVyID0ge31cbiAgdGhpcy5idWZmZXIgPSAnJ1xuICB0aGlzLmZpbmlzaGVkID0gdHJ1ZVxuICB0aGlzLm5yZWFkID0gdGhpcy5ucGFpcnMgPSAwXG4gIHRoaXMubWF4ZWQgPSBmYWxzZVxuICB0aGlzLmVtaXQoJ2hlYWRlcicsIGhlYWRlcilcbn1cblxuSGVhZGVyUGFyc2VyLnByb3RvdHlwZS5fcGFyc2VIZWFkZXIgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICh0aGlzLm5wYWlycyA9PT0gdGhpcy5tYXhIZWFkZXJQYWlycykgeyByZXR1cm4gfVxuXG4gIGNvbnN0IGxpbmVzID0gdGhpcy5idWZmZXIuc3BsaXQoUkVfQ1JMRilcbiAgY29uc3QgbGVuID0gbGluZXMubGVuZ3RoXG4gIGxldCBtLCBoXG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47ICsraSkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXZhclxuICAgIGlmIChsaW5lc1tpXS5sZW5ndGggPT09IDApIHsgY29udGludWUgfVxuICAgIGlmIChsaW5lc1tpXVswXSA9PT0gJ1xcdCcgfHwgbGluZXNbaV1bMF0gPT09ICcgJykge1xuICAgICAgLy8gZm9sZGVkIGhlYWRlciBjb250ZW50XG4gICAgICAvLyBSRkMyODIyIHNheXMgdG8ganVzdCByZW1vdmUgdGhlIENSTEYgYW5kIG5vdCB0aGUgd2hpdGVzcGFjZSBmb2xsb3dpbmdcbiAgICAgIC8vIGl0LCBzbyB3ZSBmb2xsb3cgdGhlIFJGQyBhbmQgaW5jbHVkZSB0aGUgbGVhZGluZyB3aGl0ZXNwYWNlIC4uLlxuICAgICAgaWYgKGgpIHtcbiAgICAgICAgdGhpcy5oZWFkZXJbaF1bdGhpcy5oZWFkZXJbaF0ubGVuZ3RoIC0gMV0gKz0gbGluZXNbaV1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBwb3NDb2xvbiA9IGxpbmVzW2ldLmluZGV4T2YoJzonKVxuICAgIGlmIChcbiAgICAgIHBvc0NvbG9uID09PSAtMSB8fFxuICAgICAgcG9zQ29sb24gPT09IDBcbiAgICApIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBtID0gUkVfSERSLmV4ZWMobGluZXNbaV0pXG4gICAgaCA9IG1bMV0udG9Mb3dlckNhc2UoKVxuICAgIHRoaXMuaGVhZGVyW2hdID0gdGhpcy5oZWFkZXJbaF0gfHwgW11cbiAgICB0aGlzLmhlYWRlcltoXS5wdXNoKChtWzJdIHx8ICcnKSlcbiAgICBpZiAoKyt0aGlzLm5wYWlycyA9PT0gdGhpcy5tYXhIZWFkZXJQYWlycykgeyBicmVhayB9XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBIZWFkZXJQYXJzZXJcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgV3JpdGFibGVTdHJlYW0gPSByZXF1aXJlKCdub2RlOnN0cmVhbScpLldyaXRhYmxlXG5jb25zdCBpbmhlcml0cyA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpLmluaGVyaXRzXG5cbmNvbnN0IFN0cmVhbVNlYXJjaCA9IHJlcXVpcmUoJy4uLy4uL3N0cmVhbXNlYXJjaC9zYm1oJylcblxuY29uc3QgUGFydFN0cmVhbSA9IHJlcXVpcmUoJy4vUGFydFN0cmVhbScpXG5jb25zdCBIZWFkZXJQYXJzZXIgPSByZXF1aXJlKCcuL0hlYWRlclBhcnNlcicpXG5cbmNvbnN0IERBU0ggPSA0NVxuY29uc3QgQl9PTkVEQVNIID0gQnVmZmVyLmZyb20oJy0nKVxuY29uc3QgQl9DUkxGID0gQnVmZmVyLmZyb20oJ1xcclxcbicpXG5jb25zdCBFTVBUWV9GTiA9IGZ1bmN0aW9uICgpIHt9XG5cbmZ1bmN0aW9uIERpY2VyIChjZmcpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIERpY2VyKSkgeyByZXR1cm4gbmV3IERpY2VyKGNmZykgfVxuICBXcml0YWJsZVN0cmVhbS5jYWxsKHRoaXMsIGNmZylcblxuICBpZiAoIWNmZyB8fCAoIWNmZy5oZWFkZXJGaXJzdCAmJiB0eXBlb2YgY2ZnLmJvdW5kYXJ5ICE9PSAnc3RyaW5nJykpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcignQm91bmRhcnkgcmVxdWlyZWQnKSB9XG5cbiAgaWYgKHR5cGVvZiBjZmcuYm91bmRhcnkgPT09ICdzdHJpbmcnKSB7IHRoaXMuc2V0Qm91bmRhcnkoY2ZnLmJvdW5kYXJ5KSB9IGVsc2UgeyB0aGlzLl9icGFyc2VyID0gdW5kZWZpbmVkIH1cblxuICB0aGlzLl9oZWFkZXJGaXJzdCA9IGNmZy5oZWFkZXJGaXJzdFxuXG4gIHRoaXMuX2Rhc2hlcyA9IDBcbiAgdGhpcy5fcGFydHMgPSAwXG4gIHRoaXMuX2ZpbmlzaGVkID0gZmFsc2VcbiAgdGhpcy5fcmVhbEZpbmlzaCA9IGZhbHNlXG4gIHRoaXMuX2lzUHJlYW1ibGUgPSB0cnVlXG4gIHRoaXMuX2p1c3RNYXRjaGVkID0gZmFsc2VcbiAgdGhpcy5fZmlyc3RXcml0ZSA9IHRydWVcbiAgdGhpcy5faW5IZWFkZXIgPSB0cnVlXG4gIHRoaXMuX3BhcnQgPSB1bmRlZmluZWRcbiAgdGhpcy5fY2IgPSB1bmRlZmluZWRcbiAgdGhpcy5faWdub3JlRGF0YSA9IGZhbHNlXG4gIHRoaXMuX3BhcnRPcHRzID0geyBoaWdoV2F0ZXJNYXJrOiBjZmcucGFydEh3bSB9XG4gIHRoaXMuX3BhdXNlID0gZmFsc2VcblxuICBjb25zdCBzZWxmID0gdGhpc1xuICB0aGlzLl9ocGFyc2VyID0gbmV3IEhlYWRlclBhcnNlcihjZmcpXG4gIHRoaXMuX2hwYXJzZXIub24oJ2hlYWRlcicsIGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgICBzZWxmLl9pbkhlYWRlciA9IGZhbHNlXG4gICAgc2VsZi5fcGFydC5lbWl0KCdoZWFkZXInLCBoZWFkZXIpXG4gIH0pXG59XG5pbmhlcml0cyhEaWNlciwgV3JpdGFibGVTdHJlYW0pXG5cbkRpY2VyLnByb3RvdHlwZS5lbWl0ID0gZnVuY3Rpb24gKGV2KSB7XG4gIGlmIChldiA9PT0gJ2ZpbmlzaCcgJiYgIXRoaXMuX3JlYWxGaW5pc2gpIHtcbiAgICBpZiAoIXRoaXMuX2ZpbmlzaGVkKSB7XG4gICAgICBjb25zdCBzZWxmID0gdGhpc1xuICAgICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIHNlbGYuZW1pdCgnZXJyb3InLCBuZXcgRXJyb3IoJ1VuZXhwZWN0ZWQgZW5kIG9mIG11bHRpcGFydCBkYXRhJykpXG4gICAgICAgIGlmIChzZWxmLl9wYXJ0ICYmICFzZWxmLl9pZ25vcmVEYXRhKSB7XG4gICAgICAgICAgY29uc3QgdHlwZSA9IChzZWxmLl9pc1ByZWFtYmxlID8gJ1ByZWFtYmxlJyA6ICdQYXJ0JylcbiAgICAgICAgICBzZWxmLl9wYXJ0LmVtaXQoJ2Vycm9yJywgbmV3IEVycm9yKHR5cGUgKyAnIHRlcm1pbmF0ZWQgZWFybHkgZHVlIHRvIHVuZXhwZWN0ZWQgZW5kIG9mIG11bHRpcGFydCBkYXRhJykpXG4gICAgICAgICAgc2VsZi5fcGFydC5wdXNoKG51bGwpXG4gICAgICAgICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gdHJ1ZVxuICAgICAgICAgICAgc2VsZi5lbWl0KCdmaW5pc2gnKVxuICAgICAgICAgICAgc2VsZi5fcmVhbEZpbmlzaCA9IGZhbHNlXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gdHJ1ZVxuICAgICAgICBzZWxmLmVtaXQoJ2ZpbmlzaCcpXG4gICAgICAgIHNlbGYuX3JlYWxGaW5pc2ggPSBmYWxzZVxuICAgICAgfSlcbiAgICB9XG4gIH0gZWxzZSB7IFdyaXRhYmxlU3RyZWFtLnByb3RvdHlwZS5lbWl0LmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfVxufVxuXG5EaWNlci5wcm90b3R5cGUuX3dyaXRlID0gZnVuY3Rpb24gKGRhdGEsIGVuY29kaW5nLCBjYikge1xuICAvLyBpZ25vcmUgdW5leHBlY3RlZCBkYXRhIChlLmcuIGV4dHJhIHRyYWlsZXIgZGF0YSBhZnRlciBmaW5pc2hlZClcbiAgaWYgKCF0aGlzLl9ocGFyc2VyICYmICF0aGlzLl9icGFyc2VyKSB7IHJldHVybiBjYigpIH1cblxuICBpZiAodGhpcy5faGVhZGVyRmlyc3QgJiYgdGhpcy5faXNQcmVhbWJsZSkge1xuICAgIGlmICghdGhpcy5fcGFydCkge1xuICAgICAgdGhpcy5fcGFydCA9IG5ldyBQYXJ0U3RyZWFtKHRoaXMuX3BhcnRPcHRzKVxuICAgICAgaWYgKHRoaXMuX2V2ZW50cy5wcmVhbWJsZSkgeyB0aGlzLmVtaXQoJ3ByZWFtYmxlJywgdGhpcy5fcGFydCkgfSBlbHNlIHsgdGhpcy5faWdub3JlKCkgfVxuICAgIH1cbiAgICBjb25zdCByID0gdGhpcy5faHBhcnNlci5wdXNoKGRhdGEpXG4gICAgaWYgKCF0aGlzLl9pbkhlYWRlciAmJiByICE9PSB1bmRlZmluZWQgJiYgciA8IGRhdGEubGVuZ3RoKSB7IGRhdGEgPSBkYXRhLnNsaWNlKHIpIH0gZWxzZSB7IHJldHVybiBjYigpIH1cbiAgfVxuXG4gIC8vIGFsbG93cyBmb3IgXCJlYXNpZXJcIiB0ZXN0aW5nXG4gIGlmICh0aGlzLl9maXJzdFdyaXRlKSB7XG4gICAgdGhpcy5fYnBhcnNlci5wdXNoKEJfQ1JMRilcbiAgICB0aGlzLl9maXJzdFdyaXRlID0gZmFsc2VcbiAgfVxuXG4gIHRoaXMuX2JwYXJzZXIucHVzaChkYXRhKVxuXG4gIGlmICh0aGlzLl9wYXVzZSkgeyB0aGlzLl9jYiA9IGNiIH0gZWxzZSB7IGNiKCkgfVxufVxuXG5EaWNlci5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuX3BhcnQgPSB1bmRlZmluZWRcbiAgdGhpcy5fYnBhcnNlciA9IHVuZGVmaW5lZFxuICB0aGlzLl9ocGFyc2VyID0gdW5kZWZpbmVkXG59XG5cbkRpY2VyLnByb3RvdHlwZS5zZXRCb3VuZGFyeSA9IGZ1bmN0aW9uIChib3VuZGFyeSkge1xuICBjb25zdCBzZWxmID0gdGhpc1xuICB0aGlzLl9icGFyc2VyID0gbmV3IFN0cmVhbVNlYXJjaCgnXFxyXFxuLS0nICsgYm91bmRhcnkpXG4gIHRoaXMuX2JwYXJzZXIub24oJ2luZm8nLCBmdW5jdGlvbiAoaXNNYXRjaCwgZGF0YSwgc3RhcnQsIGVuZCkge1xuICAgIHNlbGYuX29uaW5mbyhpc01hdGNoLCBkYXRhLCBzdGFydCwgZW5kKVxuICB9KVxufVxuXG5EaWNlci5wcm90b3R5cGUuX2lnbm9yZSA9IGZ1bmN0aW9uICgpIHtcbiAgaWYgKHRoaXMuX3BhcnQgJiYgIXRoaXMuX2lnbm9yZURhdGEpIHtcbiAgICB0aGlzLl9pZ25vcmVEYXRhID0gdHJ1ZVxuICAgIHRoaXMuX3BhcnQub24oJ2Vycm9yJywgRU1QVFlfRk4pXG4gICAgLy8gd2UgbXVzdCBwZXJmb3JtIHNvbWUga2luZCBvZiByZWFkIG9uIHRoZSBzdHJlYW0gZXZlbiB0aG91Z2ggd2UgYXJlXG4gICAgLy8gaWdub3JpbmcgdGhlIGRhdGEsIG90aGVyd2lzZSBub2RlJ3MgUmVhZGFibGUgc3RyZWFtIHdpbGwgbm90IGVtaXQgJ2VuZCdcbiAgICAvLyBhZnRlciBwdXNoaW5nIG51bGwgdG8gdGhlIHN0cmVhbVxuICAgIHRoaXMuX3BhcnQucmVzdW1lKClcbiAgfVxufVxuXG5EaWNlci5wcm90b3R5cGUuX29uaW5mbyA9IGZ1bmN0aW9uIChpc01hdGNoLCBkYXRhLCBzdGFydCwgZW5kKSB7XG4gIGxldCBidWY7IGNvbnN0IHNlbGYgPSB0aGlzOyBsZXQgaSA9IDA7IGxldCByOyBsZXQgc2hvdWxkV3JpdGVNb3JlID0gdHJ1ZVxuXG4gIGlmICghdGhpcy5fcGFydCAmJiB0aGlzLl9qdXN0TWF0Y2hlZCAmJiBkYXRhKSB7XG4gICAgd2hpbGUgKHRoaXMuX2Rhc2hlcyA8IDIgJiYgKHN0YXJ0ICsgaSkgPCBlbmQpIHtcbiAgICAgIGlmIChkYXRhW3N0YXJ0ICsgaV0gPT09IERBU0gpIHtcbiAgICAgICAgKytpXG4gICAgICAgICsrdGhpcy5fZGFzaGVzXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy5fZGFzaGVzKSB7IGJ1ZiA9IEJfT05FREFTSCB9XG4gICAgICAgIHRoaXMuX2Rhc2hlcyA9IDBcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rhc2hlcyA9PT0gMikge1xuICAgICAgaWYgKChzdGFydCArIGkpIDwgZW5kICYmIHRoaXMuX2V2ZW50cy50cmFpbGVyKSB7IHRoaXMuZW1pdCgndHJhaWxlcicsIGRhdGEuc2xpY2Uoc3RhcnQgKyBpLCBlbmQpKSB9XG4gICAgICB0aGlzLnJlc2V0KClcbiAgICAgIHRoaXMuX2ZpbmlzaGVkID0gdHJ1ZVxuICAgICAgLy8gbm8gbW9yZSBwYXJ0cyB3aWxsIGJlIGFkZGVkXG4gICAgICBpZiAoc2VsZi5fcGFydHMgPT09IDApIHtcbiAgICAgICAgc2VsZi5fcmVhbEZpbmlzaCA9IHRydWVcbiAgICAgICAgc2VsZi5lbWl0KCdmaW5pc2gnKVxuICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gZmFsc2VcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rhc2hlcykgeyByZXR1cm4gfVxuICB9XG4gIGlmICh0aGlzLl9qdXN0TWF0Y2hlZCkgeyB0aGlzLl9qdXN0TWF0Y2hlZCA9IGZhbHNlIH1cbiAgaWYgKCF0aGlzLl9wYXJ0KSB7XG4gICAgdGhpcy5fcGFydCA9IG5ldyBQYXJ0U3RyZWFtKHRoaXMuX3BhcnRPcHRzKVxuICAgIHRoaXMuX3BhcnQuX3JlYWQgPSBmdW5jdGlvbiAobikge1xuICAgICAgc2VsZi5fdW5wYXVzZSgpXG4gICAgfVxuICAgIGlmICh0aGlzLl9pc1ByZWFtYmxlICYmIHRoaXMuX2V2ZW50cy5wcmVhbWJsZSkgeyB0aGlzLmVtaXQoJ3ByZWFtYmxlJywgdGhpcy5fcGFydCkgfSBlbHNlIGlmICh0aGlzLl9pc1ByZWFtYmxlICE9PSB0cnVlICYmIHRoaXMuX2V2ZW50cy5wYXJ0KSB7IHRoaXMuZW1pdCgncGFydCcsIHRoaXMuX3BhcnQpIH0gZWxzZSB7IHRoaXMuX2lnbm9yZSgpIH1cbiAgICBpZiAoIXRoaXMuX2lzUHJlYW1ibGUpIHsgdGhpcy5faW5IZWFkZXIgPSB0cnVlIH1cbiAgfVxuICBpZiAoZGF0YSAmJiBzdGFydCA8IGVuZCAmJiAhdGhpcy5faWdub3JlRGF0YSkge1xuICAgIGlmICh0aGlzLl9pc1ByZWFtYmxlIHx8ICF0aGlzLl9pbkhlYWRlcikge1xuICAgICAgaWYgKGJ1ZikgeyBzaG91bGRXcml0ZU1vcmUgPSB0aGlzLl9wYXJ0LnB1c2goYnVmKSB9XG4gICAgICBzaG91bGRXcml0ZU1vcmUgPSB0aGlzLl9wYXJ0LnB1c2goZGF0YS5zbGljZShzdGFydCwgZW5kKSlcbiAgICAgIGlmICghc2hvdWxkV3JpdGVNb3JlKSB7IHRoaXMuX3BhdXNlID0gdHJ1ZSB9XG4gICAgfSBlbHNlIGlmICghdGhpcy5faXNQcmVhbWJsZSAmJiB0aGlzLl9pbkhlYWRlcikge1xuICAgICAgaWYgKGJ1ZikgeyB0aGlzLl9ocGFyc2VyLnB1c2goYnVmKSB9XG4gICAgICByID0gdGhpcy5faHBhcnNlci5wdXNoKGRhdGEuc2xpY2Uoc3RhcnQsIGVuZCkpXG4gICAgICBpZiAoIXRoaXMuX2luSGVhZGVyICYmIHIgIT09IHVuZGVmaW5lZCAmJiByIDwgZW5kKSB7IHRoaXMuX29uaW5mbyhmYWxzZSwgZGF0YSwgc3RhcnQgKyByLCBlbmQpIH1cbiAgICB9XG4gIH1cbiAgaWYgKGlzTWF0Y2gpIHtcbiAgICB0aGlzLl9ocGFyc2VyLnJlc2V0KClcbiAgICBpZiAodGhpcy5faXNQcmVhbWJsZSkgeyB0aGlzLl9pc1ByZWFtYmxlID0gZmFsc2UgfSBlbHNlIHtcbiAgICAgIGlmIChzdGFydCAhPT0gZW5kKSB7XG4gICAgICAgICsrdGhpcy5fcGFydHNcbiAgICAgICAgdGhpcy5fcGFydC5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlmICgtLXNlbGYuX3BhcnRzID09PSAwKSB7XG4gICAgICAgICAgICBpZiAoc2VsZi5fZmluaXNoZWQpIHtcbiAgICAgICAgICAgICAgc2VsZi5fcmVhbEZpbmlzaCA9IHRydWVcbiAgICAgICAgICAgICAgc2VsZi5lbWl0KCdmaW5pc2gnKVxuICAgICAgICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gZmFsc2VcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHNlbGYuX3VucGF1c2UoKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fcGFydC5wdXNoKG51bGwpXG4gICAgdGhpcy5fcGFydCA9IHVuZGVmaW5lZFxuICAgIHRoaXMuX2lnbm9yZURhdGEgPSBmYWxzZVxuICAgIHRoaXMuX2p1c3RNYXRjaGVkID0gdHJ1ZVxuICAgIHRoaXMuX2Rhc2hlcyA9IDBcbiAgfVxufVxuXG5EaWNlci5wcm90b3R5cGUuX3VucGF1c2UgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICghdGhpcy5fcGF1c2UpIHsgcmV0dXJuIH1cblxuICB0aGlzLl9wYXVzZSA9IGZhbHNlXG4gIGlmICh0aGlzLl9jYikge1xuICAgIGNvbnN0IGNiID0gdGhpcy5fY2JcbiAgICB0aGlzLl9jYiA9IHVuZGVmaW5lZFxuICAgIGNiKClcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IERpY2VyXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8vIE5vZGUgaGFzIGFsd2F5cyB1dGYtOFxuY29uc3QgdXRmOERlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoJ3V0Zi04JylcbmNvbnN0IHRleHREZWNvZGVycyA9IG5ldyBNYXAoW1xuICBbJ3V0Zi04JywgdXRmOERlY29kZXJdLFxuICBbJ3V0ZjgnLCB1dGY4RGVjb2Rlcl1cbl0pXG5cbmZ1bmN0aW9uIGRlY29kZVRleHQgKHRleHQsIHRleHRFbmNvZGluZywgZGVzdEVuY29kaW5nKSB7XG4gIGlmICh0ZXh0KSB7XG4gICAgaWYgKHRleHREZWNvZGVycy5oYXMoZGVzdEVuY29kaW5nKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHRleHREZWNvZGVycy5nZXQoZGVzdEVuY29kaW5nKS5kZWNvZGUoQnVmZmVyLmZyb20odGV4dCwgdGV4dEVuY29kaW5nKSlcbiAgICAgIH0gY2F0Y2ggKGUpIHsgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0cnkge1xuICAgICAgICB0ZXh0RGVjb2RlcnMuc2V0KGRlc3RFbmNvZGluZywgbmV3IFRleHREZWNvZGVyKGRlc3RFbmNvZGluZykpXG4gICAgICAgIHJldHVybiB0ZXh0RGVjb2RlcnMuZ2V0KGRlc3RFbmNvZGluZykuZGVjb2RlKEJ1ZmZlci5mcm9tKHRleHQsIHRleHRFbmNvZGluZykpXG4gICAgICB9IGNhdGNoIChlKSB7IH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRleHRcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBkZWNvZGVUZXh0XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IGRlY29kZVRleHQgPSByZXF1aXJlKCcuL2RlY29kZVRleHQnKVxuXG5jb25zdCBSRV9FTkNPREVEID0gLyUoW2EtZkEtRjAtOV17Mn0pL2dcblxuZnVuY3Rpb24gZW5jb2RlZFJlcGxhY2VyIChtYXRjaCwgYnl0ZSkge1xuICByZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShwYXJzZUludChieXRlLCAxNikpXG59XG5cbmZ1bmN0aW9uIHBhcnNlUGFyYW1zIChzdHIpIHtcbiAgY29uc3QgcmVzID0gW11cbiAgbGV0IHN0YXRlID0gJ2tleSdcbiAgbGV0IGNoYXJzZXQgPSAnJ1xuICBsZXQgaW5xdW90ZSA9IGZhbHNlXG4gIGxldCBlc2NhcGluZyA9IGZhbHNlXG4gIGxldCBwID0gMFxuICBsZXQgdG1wID0gJydcblxuICBmb3IgKHZhciBpID0gMCwgbGVuID0gc3RyLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdmFyXG4gICAgY29uc3QgY2hhciA9IHN0cltpXVxuICAgIGlmIChjaGFyID09PSAnXFxcXCcgJiYgaW5xdW90ZSkge1xuICAgICAgaWYgKGVzY2FwaW5nKSB7IGVzY2FwaW5nID0gZmFsc2UgfSBlbHNlIHtcbiAgICAgICAgZXNjYXBpbmcgPSB0cnVlXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChjaGFyID09PSAnXCInKSB7XG4gICAgICBpZiAoIWVzY2FwaW5nKSB7XG4gICAgICAgIGlmIChpbnF1b3RlKSB7XG4gICAgICAgICAgaW5xdW90ZSA9IGZhbHNlXG4gICAgICAgICAgc3RhdGUgPSAna2V5J1xuICAgICAgICB9IGVsc2UgeyBpbnF1b3RlID0gdHJ1ZSB9XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgeyBlc2NhcGluZyA9IGZhbHNlIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGVzY2FwaW5nICYmIGlucXVvdGUpIHsgdG1wICs9ICdcXFxcJyB9XG4gICAgICBlc2NhcGluZyA9IGZhbHNlXG4gICAgICBpZiAoKHN0YXRlID09PSAnY2hhcnNldCcgfHwgc3RhdGUgPT09ICdsYW5nJykgJiYgY2hhciA9PT0gXCInXCIpIHtcbiAgICAgICAgaWYgKHN0YXRlID09PSAnY2hhcnNldCcpIHtcbiAgICAgICAgICBzdGF0ZSA9ICdsYW5nJ1xuICAgICAgICAgIGNoYXJzZXQgPSB0bXAuc3Vic3RyaW5nKDEpXG4gICAgICAgIH0gZWxzZSB7IHN0YXRlID0gJ3ZhbHVlJyB9XG4gICAgICAgIHRtcCA9ICcnXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKHN0YXRlID09PSAna2V5JyAmJlxuICAgICAgICAoY2hhciA9PT0gJyonIHx8IGNoYXIgPT09ICc9JykgJiZcbiAgICAgICAgcmVzLmxlbmd0aCkge1xuICAgICAgICBpZiAoY2hhciA9PT0gJyonKSB7IHN0YXRlID0gJ2NoYXJzZXQnIH0gZWxzZSB7IHN0YXRlID0gJ3ZhbHVlJyB9XG4gICAgICAgIHJlc1twXSA9IFt0bXAsIHVuZGVmaW5lZF1cbiAgICAgICAgdG1wID0gJydcbiAgICAgICAgY29udGludWVcbiAgICAgIH0gZWxzZSBpZiAoIWlucXVvdGUgJiYgY2hhciA9PT0gJzsnKSB7XG4gICAgICAgIHN0YXRlID0gJ2tleSdcbiAgICAgICAgaWYgKGNoYXJzZXQpIHtcbiAgICAgICAgICBpZiAodG1wLmxlbmd0aCkge1xuICAgICAgICAgICAgdG1wID0gZGVjb2RlVGV4dCh0bXAucmVwbGFjZShSRV9FTkNPREVELCBlbmNvZGVkUmVwbGFjZXIpLFxuICAgICAgICAgICAgICAnYmluYXJ5JyxcbiAgICAgICAgICAgICAgY2hhcnNldClcbiAgICAgICAgICB9XG4gICAgICAgICAgY2hhcnNldCA9ICcnXG4gICAgICAgIH0gZWxzZSBpZiAodG1wLmxlbmd0aCkge1xuICAgICAgICAgIHRtcCA9IGRlY29kZVRleHQodG1wLCAnYmluYXJ5JywgJ3V0ZjgnKVxuICAgICAgICB9XG4gICAgICAgIGlmIChyZXNbcF0gPT09IHVuZGVmaW5lZCkgeyByZXNbcF0gPSB0bXAgfSBlbHNlIHsgcmVzW3BdWzFdID0gdG1wIH1cbiAgICAgICAgdG1wID0gJydcbiAgICAgICAgKytwXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKCFpbnF1b3RlICYmIChjaGFyID09PSAnICcgfHwgY2hhciA9PT0gJ1xcdCcpKSB7IGNvbnRpbnVlIH1cbiAgICB9XG4gICAgdG1wICs9IGNoYXJcbiAgfVxuICBpZiAoY2hhcnNldCAmJiB0bXAubGVuZ3RoKSB7XG4gICAgdG1wID0gZGVjb2RlVGV4dCh0bXAucmVwbGFjZShSRV9FTkNPREVELCBlbmNvZGVkUmVwbGFjZXIpLFxuICAgICAgJ2JpbmFyeScsXG4gICAgICBjaGFyc2V0KVxuICB9IGVsc2UgaWYgKHRtcCkge1xuICAgIHRtcCA9IGRlY29kZVRleHQodG1wLCAnYmluYXJ5JywgJ3V0ZjgnKVxuICB9XG5cbiAgaWYgKHJlc1twXSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKHRtcCkgeyByZXNbcF0gPSB0bXAgfVxuICB9IGVsc2UgeyByZXNbcF1bMV0gPSB0bXAgfVxuXG4gIHJldHVybiByZXNcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBwYXJzZVBhcmFtc1xuIiwgIid1c2Ugc3RyaWN0J1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGJhc2VuYW1lIChwYXRoKSB7XG4gIGlmICh0eXBlb2YgcGF0aCAhPT0gJ3N0cmluZycpIHsgcmV0dXJuICcnIH1cbiAgZm9yICh2YXIgaSA9IHBhdGgubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby12YXJcbiAgICBzd2l0Y2ggKHBhdGguY2hhckNvZGVBdChpKSkge1xuICAgICAgY2FzZSAweDJGOiAvLyAnLydcbiAgICAgIGNhc2UgMHg1QzogLy8gJ1xcJ1xuICAgICAgICBwYXRoID0gcGF0aC5zbGljZShpICsgMSlcbiAgICAgICAgcmV0dXJuIChwYXRoID09PSAnLi4nIHx8IHBhdGggPT09ICcuJyA/ICcnIDogcGF0aClcbiAgICB9XG4gIH1cbiAgcmV0dXJuIChwYXRoID09PSAnLi4nIHx8IHBhdGggPT09ICcuJyA/ICcnIDogcGF0aClcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLy8gVE9ETzpcbi8vICAqIHN1cHBvcnQgMSBuZXN0ZWQgbXVsdGlwYXJ0IGxldmVsXG4vLyAgICAoc2VlIHNlY29uZCBtdWx0aXBhcnQgZXhhbXBsZSBoZXJlOlxuLy8gICAgIGh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0MDEvaW50ZXJhY3QvZm9ybXMuaHRtbCNkaWR4LW11bHRpcGFydGZvcm0tZGF0YSlcbi8vICAqIHN1cHBvcnQgbGltaXRzLmZpZWxkTmFtZVNpemVcbi8vICAgICAtLSB0aGlzIHdpbGwgcmVxdWlyZSBtb2RpZmljYXRpb25zIHRvIHV0aWxzLnBhcnNlUGFyYW1zXG5cbmNvbnN0IHsgUmVhZGFibGUgfSA9IHJlcXVpcmUoJ25vZGU6c3RyZWFtJylcbmNvbnN0IHsgaW5oZXJpdHMgfSA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpXG5cbmNvbnN0IERpY2VyID0gcmVxdWlyZSgnLi4vLi4vZGVwcy9kaWNlci9saWIvRGljZXInKVxuXG5jb25zdCBwYXJzZVBhcmFtcyA9IHJlcXVpcmUoJy4uL3V0aWxzL3BhcnNlUGFyYW1zJylcbmNvbnN0IGRlY29kZVRleHQgPSByZXF1aXJlKCcuLi91dGlscy9kZWNvZGVUZXh0JylcbmNvbnN0IGJhc2VuYW1lID0gcmVxdWlyZSgnLi4vdXRpbHMvYmFzZW5hbWUnKVxuY29uc3QgZ2V0TGltaXQgPSByZXF1aXJlKCcuLi91dGlscy9nZXRMaW1pdCcpXG5cbmNvbnN0IFJFX0JPVU5EQVJZID0gL15ib3VuZGFyeSQvaVxuY29uc3QgUkVfRklFTEQgPSAvXmZvcm0tZGF0YSQvaVxuY29uc3QgUkVfQ0hBUlNFVCA9IC9eY2hhcnNldCQvaVxuY29uc3QgUkVfRklMRU5BTUUgPSAvXmZpbGVuYW1lJC9pXG5jb25zdCBSRV9OQU1FID0gL15uYW1lJC9pXG5cbk11bHRpcGFydC5kZXRlY3QgPSAvXm11bHRpcGFydFxcL2Zvcm0tZGF0YS9pXG5mdW5jdGlvbiBNdWx0aXBhcnQgKGJveSwgY2ZnKSB7XG4gIGxldCBpXG4gIGxldCBsZW5cbiAgY29uc3Qgc2VsZiA9IHRoaXNcbiAgbGV0IGJvdW5kYXJ5XG4gIGNvbnN0IGxpbWl0cyA9IGNmZy5saW1pdHNcbiAgY29uc3QgaXNQYXJ0QUZpbGUgPSBjZmcuaXNQYXJ0QUZpbGUgfHwgKChmaWVsZE5hbWUsIGNvbnRlbnRUeXBlLCBmaWxlTmFtZSkgPT4gKGNvbnRlbnRUeXBlID09PSAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyB8fCBmaWxlTmFtZSAhPT0gdW5kZWZpbmVkKSlcbiAgY29uc3QgcGFyc2VkQ29uVHlwZSA9IGNmZy5wYXJzZWRDb25UeXBlIHx8IFtdXG4gIGNvbnN0IGRlZkNoYXJzZXQgPSBjZmcuZGVmQ2hhcnNldCB8fCAndXRmOCdcbiAgY29uc3QgcHJlc2VydmVQYXRoID0gY2ZnLnByZXNlcnZlUGF0aFxuICBjb25zdCBmaWxlT3B0cyA9IHsgaGlnaFdhdGVyTWFyazogY2ZnLmZpbGVId20gfVxuXG4gIGZvciAoaSA9IDAsIGxlbiA9IHBhcnNlZENvblR5cGUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShwYXJzZWRDb25UeXBlW2ldKSAmJlxuICAgICAgUkVfQk9VTkRBUlkudGVzdChwYXJzZWRDb25UeXBlW2ldWzBdKSkge1xuICAgICAgYm91bmRhcnkgPSBwYXJzZWRDb25UeXBlW2ldWzFdXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNoZWNrRmluaXNoZWQgKCkge1xuICAgIGlmIChuZW5kcyA9PT0gMCAmJiBmaW5pc2hlZCAmJiAhYm95Ll9kb25lKSB7XG4gICAgICBmaW5pc2hlZCA9IGZhbHNlXG4gICAgICBzZWxmLmVuZCgpXG4gICAgfVxuICB9XG5cbiAgaWYgKHR5cGVvZiBib3VuZGFyeSAhPT0gJ3N0cmluZycpIHsgdGhyb3cgbmV3IEVycm9yKCdNdWx0aXBhcnQ6IEJvdW5kYXJ5IG5vdCBmb3VuZCcpIH1cblxuICBjb25zdCBmaWVsZFNpemVMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpZWxkU2l6ZScsIDEgKiAxMDI0ICogMTAyNClcbiAgY29uc3QgZmlsZVNpemVMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpbGVTaXplJywgSW5maW5pdHkpXG4gIGNvbnN0IGZpbGVzTGltaXQgPSBnZXRMaW1pdChsaW1pdHMsICdmaWxlcycsIEluZmluaXR5KVxuICBjb25zdCBmaWVsZHNMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpZWxkcycsIEluZmluaXR5KVxuICBjb25zdCBwYXJ0c0xpbWl0ID0gZ2V0TGltaXQobGltaXRzLCAncGFydHMnLCBJbmZpbml0eSlcbiAgY29uc3QgaGVhZGVyUGFpcnNMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2hlYWRlclBhaXJzJywgMjAwMClcbiAgY29uc3QgaGVhZGVyU2l6ZUxpbWl0ID0gZ2V0TGltaXQobGltaXRzLCAnaGVhZGVyU2l6ZScsIDgwICogMTAyNClcblxuICBsZXQgbmZpbGVzID0gMFxuICBsZXQgbmZpZWxkcyA9IDBcbiAgbGV0IG5lbmRzID0gMFxuICBsZXQgY3VyRmlsZVxuICBsZXQgY3VyRmllbGRcbiAgbGV0IGZpbmlzaGVkID0gZmFsc2VcblxuICB0aGlzLl9uZWVkRHJhaW4gPSBmYWxzZVxuICB0aGlzLl9wYXVzZSA9IGZhbHNlXG4gIHRoaXMuX2NiID0gdW5kZWZpbmVkXG4gIHRoaXMuX25wYXJ0cyA9IDBcbiAgdGhpcy5fYm95ID0gYm95XG5cbiAgY29uc3QgcGFyc2VyQ2ZnID0ge1xuICAgIGJvdW5kYXJ5LFxuICAgIG1heEhlYWRlclBhaXJzOiBoZWFkZXJQYWlyc0xpbWl0LFxuICAgIG1heEhlYWRlclNpemU6IGhlYWRlclNpemVMaW1pdCxcbiAgICBwYXJ0SHdtOiBmaWxlT3B0cy5oaWdoV2F0ZXJNYXJrLFxuICAgIGhpZ2hXYXRlck1hcms6IGNmZy5oaWdoV2F0ZXJNYXJrXG4gIH1cblxuICB0aGlzLnBhcnNlciA9IG5ldyBEaWNlcihwYXJzZXJDZmcpXG4gIHRoaXMucGFyc2VyLm9uKCdkcmFpbicsIGZ1bmN0aW9uICgpIHtcbiAgICBzZWxmLl9uZWVkRHJhaW4gPSBmYWxzZVxuICAgIGlmIChzZWxmLl9jYiAmJiAhc2VsZi5fcGF1c2UpIHtcbiAgICAgIGNvbnN0IGNiID0gc2VsZi5fY2JcbiAgICAgIHNlbGYuX2NiID0gdW5kZWZpbmVkXG4gICAgICBjYigpXG4gICAgfVxuICB9KS5vbigncGFydCcsIGZ1bmN0aW9uIG9uUGFydCAocGFydCkge1xuICAgIGlmICgrK3NlbGYuX25wYXJ0cyA+IHBhcnRzTGltaXQpIHtcbiAgICAgIHNlbGYucGFyc2VyLnJlbW92ZUxpc3RlbmVyKCdwYXJ0Jywgb25QYXJ0KVxuICAgICAgc2VsZi5wYXJzZXIub24oJ3BhcnQnLCBza2lwUGFydClcbiAgICAgIGJveS5oaXRQYXJ0c0xpbWl0ID0gdHJ1ZVxuICAgICAgYm95LmVtaXQoJ3BhcnRzTGltaXQnKVxuICAgICAgcmV0dXJuIHNraXBQYXJ0KHBhcnQpXG4gICAgfVxuXG4gICAgLy8gaGFjayBiZWNhdXNlIHN0cmVhbXMyIF9hbHdheXNfIGRvZXNuJ3QgZW1pdCAnZW5kJyB1bnRpbCBuZXh0VGljaywgc28gbGV0XG4gICAgLy8gdXMgZW1pdCAnZW5kJyBlYXJseSBzaW5jZSB3ZSBrbm93IHRoZSBwYXJ0IGhhcyBlbmRlZCBpZiB3ZSBhcmUgYWxyZWFkeVxuICAgIC8vIHNlZWluZyB0aGUgbmV4dCBwYXJ0XG4gICAgaWYgKGN1ckZpZWxkKSB7XG4gICAgICBjb25zdCBmaWVsZCA9IGN1ckZpZWxkXG4gICAgICBmaWVsZC5lbWl0KCdlbmQnKVxuICAgICAgZmllbGQucmVtb3ZlQWxsTGlzdGVuZXJzKCdlbmQnKVxuICAgIH1cblxuICAgIHBhcnQub24oJ2hlYWRlcicsIGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgICAgIGxldCBjb250eXBlXG4gICAgICBsZXQgZmllbGRuYW1lXG4gICAgICBsZXQgcGFyc2VkXG4gICAgICBsZXQgY2hhcnNldFxuICAgICAgbGV0IGVuY29kaW5nXG4gICAgICBsZXQgZmlsZW5hbWVcbiAgICAgIGxldCBuc2l6ZSA9IDBcblxuICAgICAgaWYgKGhlYWRlclsnY29udGVudC10eXBlJ10pIHtcbiAgICAgICAgcGFyc2VkID0gcGFyc2VQYXJhbXMoaGVhZGVyWydjb250ZW50LXR5cGUnXVswXSlcbiAgICAgICAgaWYgKHBhcnNlZFswXSkge1xuICAgICAgICAgIGNvbnR5cGUgPSBwYXJzZWRbMF0udG9Mb3dlckNhc2UoKVxuICAgICAgICAgIGZvciAoaSA9IDAsIGxlbiA9IHBhcnNlZC5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICAgICAgICAgICAgaWYgKFJFX0NIQVJTRVQudGVzdChwYXJzZWRbaV1bMF0pKSB7XG4gICAgICAgICAgICAgIGNoYXJzZXQgPSBwYXJzZWRbaV1bMV0udG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICBicmVha1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoY29udHlwZSA9PT0gdW5kZWZpbmVkKSB7IGNvbnR5cGUgPSAndGV4dC9wbGFpbicgfVxuICAgICAgaWYgKGNoYXJzZXQgPT09IHVuZGVmaW5lZCkgeyBjaGFyc2V0ID0gZGVmQ2hhcnNldCB9XG5cbiAgICAgIGlmIChoZWFkZXJbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXSkge1xuICAgICAgICBwYXJzZWQgPSBwYXJzZVBhcmFtcyhoZWFkZXJbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXVswXSlcbiAgICAgICAgaWYgKCFSRV9GSUVMRC50ZXN0KHBhcnNlZFswXSkpIHsgcmV0dXJuIHNraXBQYXJ0KHBhcnQpIH1cbiAgICAgICAgZm9yIChpID0gMCwgbGVuID0gcGFyc2VkLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgICAgaWYgKFJFX05BTUUudGVzdChwYXJzZWRbaV1bMF0pKSB7XG4gICAgICAgICAgICBmaWVsZG5hbWUgPSBwYXJzZWRbaV1bMV1cbiAgICAgICAgICB9IGVsc2UgaWYgKFJFX0ZJTEVOQU1FLnRlc3QocGFyc2VkW2ldWzBdKSkge1xuICAgICAgICAgICAgZmlsZW5hbWUgPSBwYXJzZWRbaV1bMV1cbiAgICAgICAgICAgIGlmICghcHJlc2VydmVQYXRoKSB7IGZpbGVuYW1lID0gYmFzZW5hbWUoZmlsZW5hbWUpIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7IHJldHVybiBza2lwUGFydChwYXJ0KSB9XG5cbiAgICAgIGlmIChoZWFkZXJbJ2NvbnRlbnQtdHJhbnNmZXItZW5jb2RpbmcnXSkgeyBlbmNvZGluZyA9IGhlYWRlclsnY29udGVudC10cmFuc2Zlci1lbmNvZGluZyddWzBdLnRvTG93ZXJDYXNlKCkgfSBlbHNlIHsgZW5jb2RpbmcgPSAnN2JpdCcgfVxuXG4gICAgICBsZXQgb25EYXRhLFxuICAgICAgICBvbkVuZFxuXG4gICAgICBpZiAoaXNQYXJ0QUZpbGUoZmllbGRuYW1lLCBjb250eXBlLCBmaWxlbmFtZSkpIHtcbiAgICAgICAgLy8gZmlsZS9iaW5hcnkgZmllbGRcbiAgICAgICAgaWYgKG5maWxlcyA9PT0gZmlsZXNMaW1pdCkge1xuICAgICAgICAgIGlmICghYm95LmhpdEZpbGVzTGltaXQpIHtcbiAgICAgICAgICAgIGJveS5oaXRGaWxlc0xpbWl0ID0gdHJ1ZVxuICAgICAgICAgICAgYm95LmVtaXQoJ2ZpbGVzTGltaXQnKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc2tpcFBhcnQocGFydClcbiAgICAgICAgfVxuXG4gICAgICAgICsrbmZpbGVzXG5cbiAgICAgICAgaWYgKCFib3kuX2V2ZW50cy5maWxlKSB7XG4gICAgICAgICAgc2VsZi5wYXJzZXIuX2lnbm9yZSgpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICArK25lbmRzXG4gICAgICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZVN0cmVhbShmaWxlT3B0cylcbiAgICAgICAgY3VyRmlsZSA9IGZpbGVcbiAgICAgICAgZmlsZS5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIC0tbmVuZHNcbiAgICAgICAgICBzZWxmLl9wYXVzZSA9IGZhbHNlXG4gICAgICAgICAgY2hlY2tGaW5pc2hlZCgpXG4gICAgICAgICAgaWYgKHNlbGYuX2NiICYmICFzZWxmLl9uZWVkRHJhaW4pIHtcbiAgICAgICAgICAgIGNvbnN0IGNiID0gc2VsZi5fY2JcbiAgICAgICAgICAgIHNlbGYuX2NiID0gdW5kZWZpbmVkXG4gICAgICAgICAgICBjYigpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICBmaWxlLl9yZWFkID0gZnVuY3Rpb24gKG4pIHtcbiAgICAgICAgICBpZiAoIXNlbGYuX3BhdXNlKSB7IHJldHVybiB9XG4gICAgICAgICAgc2VsZi5fcGF1c2UgPSBmYWxzZVxuICAgICAgICAgIGlmIChzZWxmLl9jYiAmJiAhc2VsZi5fbmVlZERyYWluKSB7XG4gICAgICAgICAgICBjb25zdCBjYiA9IHNlbGYuX2NiXG4gICAgICAgICAgICBzZWxmLl9jYiA9IHVuZGVmaW5lZFxuICAgICAgICAgICAgY2IoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBib3kuZW1pdCgnZmlsZScsIGZpZWxkbmFtZSwgZmlsZSwgZmlsZW5hbWUsIGVuY29kaW5nLCBjb250eXBlKVxuXG4gICAgICAgIG9uRGF0YSA9IGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgICAgICAgaWYgKChuc2l6ZSArPSBkYXRhLmxlbmd0aCkgPiBmaWxlU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgICBjb25zdCBleHRyYWxlbiA9IGZpbGVTaXplTGltaXQgLSBuc2l6ZSArIGRhdGEubGVuZ3RoXG4gICAgICAgICAgICBpZiAoZXh0cmFsZW4gPiAwKSB7IGZpbGUucHVzaChkYXRhLnNsaWNlKDAsIGV4dHJhbGVuKSkgfVxuICAgICAgICAgICAgZmlsZS50cnVuY2F0ZWQgPSB0cnVlXG4gICAgICAgICAgICBmaWxlLmJ5dGVzUmVhZCA9IGZpbGVTaXplTGltaXRcbiAgICAgICAgICAgIHBhcnQucmVtb3ZlQWxsTGlzdGVuZXJzKCdkYXRhJylcbiAgICAgICAgICAgIGZpbGUuZW1pdCgnbGltaXQnKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfSBlbHNlIGlmICghZmlsZS5wdXNoKGRhdGEpKSB7IHNlbGYuX3BhdXNlID0gdHJ1ZSB9XG5cbiAgICAgICAgICBmaWxlLmJ5dGVzUmVhZCA9IG5zaXplXG4gICAgICAgIH1cblxuICAgICAgICBvbkVuZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBjdXJGaWxlID0gdW5kZWZpbmVkXG4gICAgICAgICAgZmlsZS5wdXNoKG51bGwpXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIG5vbi1maWxlIGZpZWxkXG4gICAgICAgIGlmIChuZmllbGRzID09PSBmaWVsZHNMaW1pdCkge1xuICAgICAgICAgIGlmICghYm95LmhpdEZpZWxkc0xpbWl0KSB7XG4gICAgICAgICAgICBib3kuaGl0RmllbGRzTGltaXQgPSB0cnVlXG4gICAgICAgICAgICBib3kuZW1pdCgnZmllbGRzTGltaXQnKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc2tpcFBhcnQocGFydClcbiAgICAgICAgfVxuXG4gICAgICAgICsrbmZpZWxkc1xuICAgICAgICArK25lbmRzXG4gICAgICAgIGxldCBidWZmZXIgPSAnJ1xuICAgICAgICBsZXQgdHJ1bmNhdGVkID0gZmFsc2VcbiAgICAgICAgY3VyRmllbGQgPSBwYXJ0XG5cbiAgICAgICAgb25EYXRhID0gZnVuY3Rpb24gKGRhdGEpIHtcbiAgICAgICAgICBpZiAoKG5zaXplICs9IGRhdGEubGVuZ3RoKSA+IGZpZWxkU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgICBjb25zdCBleHRyYWxlbiA9IChmaWVsZFNpemVMaW1pdCAtIChuc2l6ZSAtIGRhdGEubGVuZ3RoKSlcbiAgICAgICAgICAgIGJ1ZmZlciArPSBkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCAwLCBleHRyYWxlbilcbiAgICAgICAgICAgIHRydW5jYXRlZCA9IHRydWVcbiAgICAgICAgICAgIHBhcnQucmVtb3ZlQWxsTGlzdGVuZXJzKCdkYXRhJylcbiAgICAgICAgICB9IGVsc2UgeyBidWZmZXIgKz0gZGF0YS50b1N0cmluZygnYmluYXJ5JykgfVxuICAgICAgICB9XG5cbiAgICAgICAgb25FbmQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgY3VyRmllbGQgPSB1bmRlZmluZWRcbiAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCkgeyBidWZmZXIgPSBkZWNvZGVUZXh0KGJ1ZmZlciwgJ2JpbmFyeScsIGNoYXJzZXQpIH1cbiAgICAgICAgICBib3kuZW1pdCgnZmllbGQnLCBmaWVsZG5hbWUsIGJ1ZmZlciwgZmFsc2UsIHRydW5jYXRlZCwgZW5jb2RpbmcsIGNvbnR5cGUpXG4gICAgICAgICAgLS1uZW5kc1xuICAgICAgICAgIGNoZWNrRmluaXNoZWQoKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qIEFzIG9mIG5vZGVAMmVmZTRhYjc2MTY2NiAodjAuMTAuMjkrL3YwLjExLjE0KyksIGJ1c2JveSBoYWQgYmVjb21lXG4gICAgICAgICBicm9rZW4uIFN0cmVhbXMyL3N0cmVhbXMzIGlzIGEgaHVnZSBibGFjayBib3ggb2YgY29uZnVzaW9uLCBidXRcbiAgICAgICAgIHNvbWVob3cgb3ZlcnJpZGluZyB0aGUgc3luYyBzdGF0ZSBzZWVtcyB0byBmaXggdGhpbmdzIGFnYWluIChhbmQgc3RpbGxcbiAgICAgICAgIHNlZW1zIHRvIHdvcmsgZm9yIHByZXZpb3VzIG5vZGUgdmVyc2lvbnMpLlxuICAgICAgKi9cbiAgICAgIHBhcnQuX3JlYWRhYmxlU3RhdGUuc3luYyA9IGZhbHNlXG5cbiAgICAgIHBhcnQub24oJ2RhdGEnLCBvbkRhdGEpXG4gICAgICBwYXJ0Lm9uKCdlbmQnLCBvbkVuZClcbiAgICB9KS5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICBpZiAoY3VyRmlsZSkgeyBjdXJGaWxlLmVtaXQoJ2Vycm9yJywgZXJyKSB9XG4gICAgfSlcbiAgfSkub24oJ2Vycm9yJywgZnVuY3Rpb24gKGVycikge1xuICAgIGJveS5lbWl0KCdlcnJvcicsIGVycilcbiAgfSkub24oJ2ZpbmlzaCcsIGZ1bmN0aW9uICgpIHtcbiAgICBmaW5pc2hlZCA9IHRydWVcbiAgICBjaGVja0ZpbmlzaGVkKClcbiAgfSlcbn1cblxuTXVsdGlwYXJ0LnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uIChjaHVuaywgY2IpIHtcbiAgY29uc3QgciA9IHRoaXMucGFyc2VyLndyaXRlKGNodW5rKVxuICBpZiAociAmJiAhdGhpcy5fcGF1c2UpIHtcbiAgICBjYigpXG4gIH0gZWxzZSB7XG4gICAgdGhpcy5fbmVlZERyYWluID0gIXJcbiAgICB0aGlzLl9jYiA9IGNiXG4gIH1cbn1cblxuTXVsdGlwYXJ0LnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHNlbGYgPSB0aGlzXG5cbiAgaWYgKHNlbGYucGFyc2VyLndyaXRhYmxlKSB7XG4gICAgc2VsZi5wYXJzZXIuZW5kKClcbiAgfSBlbHNlIGlmICghc2VsZi5fYm95Ll9kb25lKSB7XG4gICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICBzZWxmLl9ib3kuX2RvbmUgPSB0cnVlXG4gICAgICBzZWxmLl9ib3kuZW1pdCgnZmluaXNoJylcbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uIHNraXBQYXJ0IChwYXJ0KSB7XG4gIHBhcnQucmVzdW1lKClcbn1cblxuZnVuY3Rpb24gRmlsZVN0cmVhbSAob3B0cykge1xuICBSZWFkYWJsZS5jYWxsKHRoaXMsIG9wdHMpXG5cbiAgdGhpcy5ieXRlc1JlYWQgPSAwXG5cbiAgdGhpcy50cnVuY2F0ZWQgPSBmYWxzZVxufVxuXG5pbmhlcml0cyhGaWxlU3RyZWFtLCBSZWFkYWJsZSlcblxuRmlsZVN0cmVhbS5wcm90b3R5cGUuX3JlYWQgPSBmdW5jdGlvbiAobikge31cblxubW9kdWxlLmV4cG9ydHMgPSBNdWx0aXBhcnRcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgUkVfUExVUyA9IC9cXCsvZ1xuXG5jb25zdCBIRVggPSBbXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDBcbl1cblxuZnVuY3Rpb24gRGVjb2RlciAoKSB7XG4gIHRoaXMuYnVmZmVyID0gdW5kZWZpbmVkXG59XG5EZWNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uIChzdHIpIHtcbiAgLy8gUmVwbGFjZSAnKycgd2l0aCAnICcgYmVmb3JlIGRlY29kaW5nXG4gIHN0ciA9IHN0ci5yZXBsYWNlKFJFX1BMVVMsICcgJylcbiAgbGV0IHJlcyA9ICcnXG4gIGxldCBpID0gMDsgbGV0IHAgPSAwOyBjb25zdCBsZW4gPSBzdHIubGVuZ3RoXG4gIGZvciAoOyBpIDwgbGVuOyArK2kpIHtcbiAgICBpZiAodGhpcy5idWZmZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKCFIRVhbc3RyLmNoYXJDb2RlQXQoaSldKSB7XG4gICAgICAgIHJlcyArPSAnJScgKyB0aGlzLmJ1ZmZlclxuICAgICAgICB0aGlzLmJ1ZmZlciA9IHVuZGVmaW5lZFxuICAgICAgICAtLWkgLy8gcmV0cnkgY2hhcmFjdGVyXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmJ1ZmZlciArPSBzdHJbaV1cbiAgICAgICAgKytwXG4gICAgICAgIGlmICh0aGlzLmJ1ZmZlci5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICByZXMgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShwYXJzZUludCh0aGlzLmJ1ZmZlciwgMTYpKVxuICAgICAgICAgIHRoaXMuYnVmZmVyID0gdW5kZWZpbmVkXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHN0cltpXSA9PT0gJyUnKSB7XG4gICAgICBpZiAoaSA+IHApIHtcbiAgICAgICAgcmVzICs9IHN0ci5zdWJzdHJpbmcocCwgaSlcbiAgICAgICAgcCA9IGlcbiAgICAgIH1cbiAgICAgIHRoaXMuYnVmZmVyID0gJydcbiAgICAgICsrcFxuICAgIH1cbiAgfVxuICBpZiAocCA8IGxlbiAmJiB0aGlzLmJ1ZmZlciA9PT0gdW5kZWZpbmVkKSB7IHJlcyArPSBzdHIuc3Vic3RyaW5nKHApIH1cbiAgcmV0dXJuIHJlc1xufVxuRGVjb2Rlci5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuYnVmZmVyID0gdW5kZWZpbmVkXG59XG5cbm1vZHVsZS5leHBvcnRzID0gRGVjb2RlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBEZWNvZGVyID0gcmVxdWlyZSgnLi4vdXRpbHMvRGVjb2RlcicpXG5jb25zdCBkZWNvZGVUZXh0ID0gcmVxdWlyZSgnLi4vdXRpbHMvZGVjb2RlVGV4dCcpXG5jb25zdCBnZXRMaW1pdCA9IHJlcXVpcmUoJy4uL3V0aWxzL2dldExpbWl0JylcblxuY29uc3QgUkVfQ0hBUlNFVCA9IC9eY2hhcnNldCQvaVxuXG5VcmxFbmNvZGVkLmRldGVjdCA9IC9eYXBwbGljYXRpb25cXC94LXd3dy1mb3JtLXVybGVuY29kZWQvaVxuZnVuY3Rpb24gVXJsRW5jb2RlZCAoYm95LCBjZmcpIHtcbiAgY29uc3QgbGltaXRzID0gY2ZnLmxpbWl0c1xuICBjb25zdCBwYXJzZWRDb25UeXBlID0gY2ZnLnBhcnNlZENvblR5cGVcbiAgdGhpcy5ib3kgPSBib3lcblxuICB0aGlzLmZpZWxkU2l6ZUxpbWl0ID0gZ2V0TGltaXQobGltaXRzLCAnZmllbGRTaXplJywgMSAqIDEwMjQgKiAxMDI0KVxuICB0aGlzLmZpZWxkTmFtZVNpemVMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpZWxkTmFtZVNpemUnLCAxMDApXG4gIHRoaXMuZmllbGRzTGltaXQgPSBnZXRMaW1pdChsaW1pdHMsICdmaWVsZHMnLCBJbmZpbml0eSlcblxuICBsZXQgY2hhcnNldFxuICBmb3IgKHZhciBpID0gMCwgbGVuID0gcGFyc2VkQ29uVHlwZS5sZW5ndGg7IGkgPCBsZW47ICsraSkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXZhclxuICAgIGlmIChBcnJheS5pc0FycmF5KHBhcnNlZENvblR5cGVbaV0pICYmXG4gICAgICAgIFJFX0NIQVJTRVQudGVzdChwYXJzZWRDb25UeXBlW2ldWzBdKSkge1xuICAgICAgY2hhcnNldCA9IHBhcnNlZENvblR5cGVbaV1bMV0udG9Mb3dlckNhc2UoKVxuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBpZiAoY2hhcnNldCA9PT0gdW5kZWZpbmVkKSB7IGNoYXJzZXQgPSBjZmcuZGVmQ2hhcnNldCB8fCAndXRmOCcgfVxuXG4gIHRoaXMuZGVjb2RlciA9IG5ldyBEZWNvZGVyKClcbiAgdGhpcy5jaGFyc2V0ID0gY2hhcnNldFxuICB0aGlzLl9maWVsZHMgPSAwXG4gIHRoaXMuX3N0YXRlID0gJ2tleSdcbiAgdGhpcy5fY2hlY2tpbmdCeXRlcyA9IHRydWVcbiAgdGhpcy5fYnl0ZXNLZXkgPSAwXG4gIHRoaXMuX2J5dGVzVmFsID0gMFxuICB0aGlzLl9rZXkgPSAnJ1xuICB0aGlzLl92YWwgPSAnJ1xuICB0aGlzLl9rZXlUcnVuYyA9IGZhbHNlXG4gIHRoaXMuX3ZhbFRydW5jID0gZmFsc2VcbiAgdGhpcy5faGl0TGltaXQgPSBmYWxzZVxufVxuXG5VcmxFbmNvZGVkLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uIChkYXRhLCBjYikge1xuICBpZiAodGhpcy5fZmllbGRzID09PSB0aGlzLmZpZWxkc0xpbWl0KSB7XG4gICAgaWYgKCF0aGlzLmJveS5oaXRGaWVsZHNMaW1pdCkge1xuICAgICAgdGhpcy5ib3kuaGl0RmllbGRzTGltaXQgPSB0cnVlXG4gICAgICB0aGlzLmJveS5lbWl0KCdmaWVsZHNMaW1pdCcpXG4gICAgfVxuICAgIHJldHVybiBjYigpXG4gIH1cblxuICBsZXQgaWR4ZXE7IGxldCBpZHhhbXA7IGxldCBpOyBsZXQgcCA9IDA7IGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoXG5cbiAgd2hpbGUgKHAgPCBsZW4pIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdrZXknKSB7XG4gICAgICBpZHhlcSA9IGlkeGFtcCA9IHVuZGVmaW5lZFxuICAgICAgZm9yIChpID0gcDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgIGlmICghdGhpcy5fY2hlY2tpbmdCeXRlcykgeyArK3AgfVxuICAgICAgICBpZiAoZGF0YVtpXSA9PT0gMHgzRC8qID0gKi8pIHtcbiAgICAgICAgICBpZHhlcSA9IGlcbiAgICAgICAgICBicmVha1xuICAgICAgICB9IGVsc2UgaWYgKGRhdGFbaV0gPT09IDB4MjYvKiAmICovKSB7XG4gICAgICAgICAgaWR4YW1wID0gaVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2NoZWNraW5nQnl0ZXMgJiYgdGhpcy5fYnl0ZXNLZXkgPT09IHRoaXMuZmllbGROYW1lU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgdGhpcy5faGl0TGltaXQgPSB0cnVlXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jaGVja2luZ0J5dGVzKSB7ICsrdGhpcy5fYnl0ZXNLZXkgfVxuICAgICAgfVxuXG4gICAgICBpZiAoaWR4ZXEgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAvLyBrZXkgd2l0aCBhc3NpZ25tZW50XG4gICAgICAgIGlmIChpZHhlcSA+IHApIHsgdGhpcy5fa2V5ICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwLCBpZHhlcSkpIH1cbiAgICAgICAgdGhpcy5fc3RhdGUgPSAndmFsJ1xuXG4gICAgICAgIHRoaXMuX2hpdExpbWl0ID0gZmFsc2VcbiAgICAgICAgdGhpcy5fY2hlY2tpbmdCeXRlcyA9IHRydWVcbiAgICAgICAgdGhpcy5fdmFsID0gJydcbiAgICAgICAgdGhpcy5fYnl0ZXNWYWwgPSAwXG4gICAgICAgIHRoaXMuX3ZhbFRydW5jID0gZmFsc2VcbiAgICAgICAgdGhpcy5kZWNvZGVyLnJlc2V0KClcblxuICAgICAgICBwID0gaWR4ZXEgKyAxXG4gICAgICB9IGVsc2UgaWYgKGlkeGFtcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIGtleSB3aXRoIG5vIGFzc2lnbm1lbnRcbiAgICAgICAgKyt0aGlzLl9maWVsZHNcbiAgICAgICAgbGV0IGtleTsgY29uc3Qga2V5VHJ1bmMgPSB0aGlzLl9rZXlUcnVuY1xuICAgICAgICBpZiAoaWR4YW1wID4gcCkgeyBrZXkgPSAodGhpcy5fa2V5ICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwLCBpZHhhbXApKSkgfSBlbHNlIHsga2V5ID0gdGhpcy5fa2V5IH1cblxuICAgICAgICB0aGlzLl9oaXRMaW1pdCA9IGZhbHNlXG4gICAgICAgIHRoaXMuX2NoZWNraW5nQnl0ZXMgPSB0cnVlXG4gICAgICAgIHRoaXMuX2tleSA9ICcnXG4gICAgICAgIHRoaXMuX2J5dGVzS2V5ID0gMFxuICAgICAgICB0aGlzLl9rZXlUcnVuYyA9IGZhbHNlXG4gICAgICAgIHRoaXMuZGVjb2Rlci5yZXNldCgpXG5cbiAgICAgICAgaWYgKGtleS5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQoa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgICAgICAgICcnLFxuICAgICAgICAgICAga2V5VHJ1bmMsXG4gICAgICAgICAgICBmYWxzZSlcbiAgICAgICAgfVxuXG4gICAgICAgIHAgPSBpZHhhbXAgKyAxXG4gICAgICAgIGlmICh0aGlzLl9maWVsZHMgPT09IHRoaXMuZmllbGRzTGltaXQpIHsgcmV0dXJuIGNiKCkgfVxuICAgICAgfSBlbHNlIGlmICh0aGlzLl9oaXRMaW1pdCkge1xuICAgICAgICAvLyB3ZSBtYXkgbm90IGhhdmUgaGl0IHRoZSBhY3R1YWwgbGltaXQgaWYgdGhlcmUgYXJlIGVuY29kZWQgYnl0ZXMuLi5cbiAgICAgICAgaWYgKGkgPiBwKSB7IHRoaXMuX2tleSArPSB0aGlzLmRlY29kZXIud3JpdGUoZGF0YS50b1N0cmluZygnYmluYXJ5JywgcCwgaSkpIH1cbiAgICAgICAgcCA9IGlcbiAgICAgICAgaWYgKCh0aGlzLl9ieXRlc0tleSA9IHRoaXMuX2tleS5sZW5ndGgpID09PSB0aGlzLmZpZWxkTmFtZVNpemVMaW1pdCkge1xuICAgICAgICAgIC8vIHllcCwgd2UgYWN0dWFsbHkgZGlkIGhpdCB0aGUgbGltaXRcbiAgICAgICAgICB0aGlzLl9jaGVja2luZ0J5dGVzID0gZmFsc2VcbiAgICAgICAgICB0aGlzLl9rZXlUcnVuYyA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHAgPCBsZW4pIHsgdGhpcy5fa2V5ICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwKSkgfVxuICAgICAgICBwID0gbGVuXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlkeGFtcCA9IHVuZGVmaW5lZFxuICAgICAgZm9yIChpID0gcDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgIGlmICghdGhpcy5fY2hlY2tpbmdCeXRlcykgeyArK3AgfVxuICAgICAgICBpZiAoZGF0YVtpXSA9PT0gMHgyNi8qICYgKi8pIHtcbiAgICAgICAgICBpZHhhbXAgPSBpXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fY2hlY2tpbmdCeXRlcyAmJiB0aGlzLl9ieXRlc1ZhbCA9PT0gdGhpcy5maWVsZFNpemVMaW1pdCkge1xuICAgICAgICAgIHRoaXMuX2hpdExpbWl0ID0gdHJ1ZVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5fY2hlY2tpbmdCeXRlcykgeyArK3RoaXMuX2J5dGVzVmFsIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGlkeGFtcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICsrdGhpcy5fZmllbGRzXG4gICAgICAgIGlmIChpZHhhbXAgPiBwKSB7IHRoaXMuX3ZhbCArPSB0aGlzLmRlY29kZXIud3JpdGUoZGF0YS50b1N0cmluZygnYmluYXJ5JywgcCwgaWR4YW1wKSkgfVxuICAgICAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQodGhpcy5fa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgICAgICBkZWNvZGVUZXh0KHRoaXMuX3ZhbCwgJ2JpbmFyeScsIHRoaXMuY2hhcnNldCksXG4gICAgICAgICAgdGhpcy5fa2V5VHJ1bmMsXG4gICAgICAgICAgdGhpcy5fdmFsVHJ1bmMpXG4gICAgICAgIHRoaXMuX3N0YXRlID0gJ2tleSdcblxuICAgICAgICB0aGlzLl9oaXRMaW1pdCA9IGZhbHNlXG4gICAgICAgIHRoaXMuX2NoZWNraW5nQnl0ZXMgPSB0cnVlXG4gICAgICAgIHRoaXMuX2tleSA9ICcnXG4gICAgICAgIHRoaXMuX2J5dGVzS2V5ID0gMFxuICAgICAgICB0aGlzLl9rZXlUcnVuYyA9IGZhbHNlXG4gICAgICAgIHRoaXMuZGVjb2Rlci5yZXNldCgpXG5cbiAgICAgICAgcCA9IGlkeGFtcCArIDFcbiAgICAgICAgaWYgKHRoaXMuX2ZpZWxkcyA9PT0gdGhpcy5maWVsZHNMaW1pdCkgeyByZXR1cm4gY2IoKSB9XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuX2hpdExpbWl0KSB7XG4gICAgICAgIC8vIHdlIG1heSBub3QgaGF2ZSBoaXQgdGhlIGFjdHVhbCBsaW1pdCBpZiB0aGVyZSBhcmUgZW5jb2RlZCBieXRlcy4uLlxuICAgICAgICBpZiAoaSA+IHApIHsgdGhpcy5fdmFsICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwLCBpKSkgfVxuICAgICAgICBwID0gaVxuICAgICAgICBpZiAoKHRoaXMuX3ZhbCA9PT0gJycgJiYgdGhpcy5maWVsZFNpemVMaW1pdCA9PT0gMCkgfHxcbiAgICAgICAgICAgICh0aGlzLl9ieXRlc1ZhbCA9IHRoaXMuX3ZhbC5sZW5ndGgpID09PSB0aGlzLmZpZWxkU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgLy8geWVwLCB3ZSBhY3R1YWxseSBkaWQgaGl0IHRoZSBsaW1pdFxuICAgICAgICAgIHRoaXMuX2NoZWNraW5nQnl0ZXMgPSBmYWxzZVxuICAgICAgICAgIHRoaXMuX3ZhbFRydW5jID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAocCA8IGxlbikgeyB0aGlzLl92YWwgKz0gdGhpcy5kZWNvZGVyLndyaXRlKGRhdGEudG9TdHJpbmcoJ2JpbmFyeScsIHApKSB9XG4gICAgICAgIHAgPSBsZW5cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgY2IoKVxufVxuXG5VcmxFbmNvZGVkLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICh0aGlzLmJveS5fZG9uZSkgeyByZXR1cm4gfVxuXG4gIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2tleScgJiYgdGhpcy5fa2V5Lmxlbmd0aCA+IDApIHtcbiAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQodGhpcy5fa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgICcnLFxuICAgICAgdGhpcy5fa2V5VHJ1bmMsXG4gICAgICBmYWxzZSlcbiAgfSBlbHNlIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ3ZhbCcpIHtcbiAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQodGhpcy5fa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgIGRlY29kZVRleHQodGhpcy5fdmFsLCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgIHRoaXMuX2tleVRydW5jLFxuICAgICAgdGhpcy5fdmFsVHJ1bmMpXG4gIH1cbiAgdGhpcy5ib3kuX2RvbmUgPSB0cnVlXG4gIHRoaXMuYm95LmVtaXQoJ2ZpbmlzaCcpXG59XG5cbm1vZHVsZS5leHBvcnRzID0gVXJsRW5jb2RlZFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBXcml0YWJsZVN0cmVhbSA9IHJlcXVpcmUoJ25vZGU6c3RyZWFtJykuV3JpdGFibGVcbmNvbnN0IHsgaW5oZXJpdHMgfSA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpXG5jb25zdCBEaWNlciA9IHJlcXVpcmUoJy4uL2RlcHMvZGljZXIvbGliL0RpY2VyJylcblxuY29uc3QgTXVsdGlwYXJ0UGFyc2VyID0gcmVxdWlyZSgnLi90eXBlcy9tdWx0aXBhcnQnKVxuY29uc3QgVXJsZW5jb2RlZFBhcnNlciA9IHJlcXVpcmUoJy4vdHlwZXMvdXJsZW5jb2RlZCcpXG5jb25zdCBwYXJzZVBhcmFtcyA9IHJlcXVpcmUoJy4vdXRpbHMvcGFyc2VQYXJhbXMnKVxuXG5mdW5jdGlvbiBCdXNib3kgKG9wdHMpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIEJ1c2JveSkpIHsgcmV0dXJuIG5ldyBCdXNib3kob3B0cykgfVxuXG4gIGlmICh0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdCdXNib3kgZXhwZWN0ZWQgYW4gb3B0aW9ucy1PYmplY3QuJylcbiAgfVxuICBpZiAodHlwZW9mIG9wdHMuaGVhZGVycyAhPT0gJ29iamVjdCcpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdCdXNib3kgZXhwZWN0ZWQgYW4gb3B0aW9ucy1PYmplY3Qgd2l0aCBoZWFkZXJzLWF0dHJpYnV0ZS4nKVxuICB9XG4gIGlmICh0eXBlb2Ygb3B0cy5oZWFkZXJzWydjb250ZW50LXR5cGUnXSAhPT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdNaXNzaW5nIENvbnRlbnQtVHlwZS1oZWFkZXIuJylcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBoZWFkZXJzLFxuICAgIC4uLnN0cmVhbU9wdGlvbnNcbiAgfSA9IG9wdHNcblxuICB0aGlzLm9wdHMgPSB7XG4gICAgYXV0b0Rlc3Ryb3k6IGZhbHNlLFxuICAgIC4uLnN0cmVhbU9wdGlvbnNcbiAgfVxuICBXcml0YWJsZVN0cmVhbS5jYWxsKHRoaXMsIHRoaXMub3B0cylcblxuICB0aGlzLl9kb25lID0gZmFsc2VcbiAgdGhpcy5fcGFyc2VyID0gdGhpcy5nZXRQYXJzZXJCeUhlYWRlcnMoaGVhZGVycylcbiAgdGhpcy5fZmluaXNoZWQgPSBmYWxzZVxufVxuaW5oZXJpdHMoQnVzYm95LCBXcml0YWJsZVN0cmVhbSlcblxuQnVzYm95LnByb3RvdHlwZS5lbWl0ID0gZnVuY3Rpb24gKGV2KSB7XG4gIGlmIChldiA9PT0gJ2ZpbmlzaCcpIHtcbiAgICBpZiAoIXRoaXMuX2RvbmUpIHtcbiAgICAgIHRoaXMuX3BhcnNlcj8uZW5kKClcbiAgICAgIHJldHVyblxuICAgIH0gZWxzZSBpZiAodGhpcy5fZmluaXNoZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLl9maW5pc2hlZCA9IHRydWVcbiAgfVxuICBXcml0YWJsZVN0cmVhbS5wcm90b3R5cGUuZW1pdC5hcHBseSh0aGlzLCBhcmd1bWVudHMpXG59XG5cbkJ1c2JveS5wcm90b3R5cGUuZ2V0UGFyc2VyQnlIZWFkZXJzID0gZnVuY3Rpb24gKGhlYWRlcnMpIHtcbiAgY29uc3QgcGFyc2VkID0gcGFyc2VQYXJhbXMoaGVhZGVyc1snY29udGVudC10eXBlJ10pXG5cbiAgY29uc3QgY2ZnID0ge1xuICAgIGRlZkNoYXJzZXQ6IHRoaXMub3B0cy5kZWZDaGFyc2V0LFxuICAgIGZpbGVId206IHRoaXMub3B0cy5maWxlSHdtLFxuICAgIGhlYWRlcnMsXG4gICAgaGlnaFdhdGVyTWFyazogdGhpcy5vcHRzLmhpZ2hXYXRlck1hcmssXG4gICAgaXNQYXJ0QUZpbGU6IHRoaXMub3B0cy5pc1BhcnRBRmlsZSxcbiAgICBsaW1pdHM6IHRoaXMub3B0cy5saW1pdHMsXG4gICAgcGFyc2VkQ29uVHlwZTogcGFyc2VkLFxuICAgIHByZXNlcnZlUGF0aDogdGhpcy5vcHRzLnByZXNlcnZlUGF0aFxuICB9XG5cbiAgaWYgKE11bHRpcGFydFBhcnNlci5kZXRlY3QudGVzdChwYXJzZWRbMF0pKSB7XG4gICAgcmV0dXJuIG5ldyBNdWx0aXBhcnRQYXJzZXIodGhpcywgY2ZnKVxuICB9XG4gIGlmIChVcmxlbmNvZGVkUGFyc2VyLmRldGVjdC50ZXN0KHBhcnNlZFswXSkpIHtcbiAgICByZXR1cm4gbmV3IFVybGVuY29kZWRQYXJzZXIodGhpcywgY2ZnKVxuICB9XG4gIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgQ29udGVudC1UeXBlLicpXG59XG5cbkJ1c2JveS5wcm90b3R5cGUuX3dyaXRlID0gZnVuY3Rpb24gKGNodW5rLCBlbmNvZGluZywgY2IpIHtcbiAgdGhpcy5fcGFyc2VyLndyaXRlKGNodW5rLCBjYilcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBCdXNib3lcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSBCdXNib3lcbm1vZHVsZS5leHBvcnRzLkJ1c2JveSA9IEJ1c2JveVxuXG5tb2R1bGUuZXhwb3J0cy5EaWNlciA9IERpY2VyXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgTWVzc2FnZUNoYW5uZWwsIHJlY2VpdmVNZXNzYWdlT25Qb3J0IH0gPSByZXF1aXJlKCd3b3JrZXJfdGhyZWFkcycpXG5cbmNvbnN0IGNvcnNTYWZlTGlzdGVkTWV0aG9kcyA9IFsnR0VUJywgJ0hFQUQnLCAnUE9TVCddXG5jb25zdCBjb3JzU2FmZUxpc3RlZE1ldGhvZHNTZXQgPSBuZXcgU2V0KGNvcnNTYWZlTGlzdGVkTWV0aG9kcylcblxuY29uc3QgbnVsbEJvZHlTdGF0dXMgPSBbMTAxLCAyMDQsIDIwNSwgMzA0XVxuXG5jb25zdCByZWRpcmVjdFN0YXR1cyA9IFszMDEsIDMwMiwgMzAzLCAzMDcsIDMwOF1cbmNvbnN0IHJlZGlyZWN0U3RhdHVzU2V0ID0gbmV3IFNldChyZWRpcmVjdFN0YXR1cylcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2Jsb2NrLWJhZC1wb3J0XG5jb25zdCBiYWRQb3J0cyA9IFtcbiAgJzEnLCAnNycsICc5JywgJzExJywgJzEzJywgJzE1JywgJzE3JywgJzE5JywgJzIwJywgJzIxJywgJzIyJywgJzIzJywgJzI1JywgJzM3JywgJzQyJywgJzQzJywgJzUzJywgJzY5JywgJzc3JywgJzc5JyxcbiAgJzg3JywgJzk1JywgJzEwMScsICcxMDInLCAnMTAzJywgJzEwNCcsICcxMDknLCAnMTEwJywgJzExMScsICcxMTMnLCAnMTE1JywgJzExNycsICcxMTknLCAnMTIzJywgJzEzNScsICcxMzcnLFxuICAnMTM5JywgJzE0MycsICcxNjEnLCAnMTc5JywgJzM4OScsICc0MjcnLCAnNDY1JywgJzUxMicsICc1MTMnLCAnNTE0JywgJzUxNScsICc1MjYnLCAnNTMwJywgJzUzMScsICc1MzInLFxuICAnNTQwJywgJzU0OCcsICc1NTQnLCAnNTU2JywgJzU2MycsICc1ODcnLCAnNjAxJywgJzYzNicsICc5ODknLCAnOTkwJywgJzk5MycsICc5OTUnLCAnMTcxOScsICcxNzIwJywgJzE3MjMnLFxuICAnMjA0OScsICczNjU5JywgJzQwNDUnLCAnNTA2MCcsICc1MDYxJywgJzYwMDAnLCAnNjU2NicsICc2NjY1JywgJzY2NjYnLCAnNjY2NycsICc2NjY4JywgJzY2NjknLCAnNjY5NycsXG4gICcxMDA4MCdcbl1cblxuY29uc3QgYmFkUG9ydHNTZXQgPSBuZXcgU2V0KGJhZFBvcnRzKVxuXG4vLyBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLXJlZmVycmVyLXBvbGljeS8jcmVmZXJyZXItcG9saWNpZXNcbmNvbnN0IHJlZmVycmVyUG9saWN5ID0gW1xuICAnJyxcbiAgJ25vLXJlZmVycmVyJyxcbiAgJ25vLXJlZmVycmVyLXdoZW4tZG93bmdyYWRlJyxcbiAgJ3NhbWUtb3JpZ2luJyxcbiAgJ29yaWdpbicsXG4gICdzdHJpY3Qtb3JpZ2luJyxcbiAgJ29yaWdpbi13aGVuLWNyb3NzLW9yaWdpbicsXG4gICdzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJyxcbiAgJ3Vuc2FmZS11cmwnXG5dXG5jb25zdCByZWZlcnJlclBvbGljeVNldCA9IG5ldyBTZXQocmVmZXJyZXJQb2xpY3kpXG5cbmNvbnN0IHJlcXVlc3RSZWRpcmVjdCA9IFsnZm9sbG93JywgJ21hbnVhbCcsICdlcnJvciddXG5cbmNvbnN0IHNhZmVNZXRob2RzID0gWydHRVQnLCAnSEVBRCcsICdPUFRJT05TJywgJ1RSQUNFJ11cbmNvbnN0IHNhZmVNZXRob2RzU2V0ID0gbmV3IFNldChzYWZlTWV0aG9kcylcblxuY29uc3QgcmVxdWVzdE1vZGUgPSBbJ25hdmlnYXRlJywgJ3NhbWUtb3JpZ2luJywgJ25vLWNvcnMnLCAnY29ycyddXG5cbmNvbnN0IHJlcXVlc3RDcmVkZW50aWFscyA9IFsnb21pdCcsICdzYW1lLW9yaWdpbicsICdpbmNsdWRlJ11cblxuY29uc3QgcmVxdWVzdENhY2hlID0gW1xuICAnZGVmYXVsdCcsXG4gICduby1zdG9yZScsXG4gICdyZWxvYWQnLFxuICAnbm8tY2FjaGUnLFxuICAnZm9yY2UtY2FjaGUnLFxuICAnb25seS1pZi1jYWNoZWQnXG5dXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0LWJvZHktaGVhZGVyLW5hbWVcbmNvbnN0IHJlcXVlc3RCb2R5SGVhZGVyID0gW1xuICAnY29udGVudC1lbmNvZGluZycsXG4gICdjb250ZW50LWxhbmd1YWdlJyxcbiAgJ2NvbnRlbnQtbG9jYXRpb24nLFxuICAnY29udGVudC10eXBlJyxcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8yMDIxXG4gIC8vICdDb250ZW50LUxlbmd0aCcgaXMgYSBmb3JiaWRkZW4gaGVhZGVyIG5hbWUsIHdoaWNoIGlzIHR5cGljYWxseVxuICAvLyByZW1vdmVkIGluIHRoZSBIZWFkZXJzIGltcGxlbWVudGF0aW9uLiBIb3dldmVyLCB1bmRpY2kgZG9lc24ndFxuICAvLyBmaWx0ZXIgb3V0IGhlYWRlcnMsIHNvIHdlIGFkZCBpdCBoZXJlLlxuICAnY29udGVudC1sZW5ndGgnXG5dXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNlbnVtZGVmLXJlcXVlc3RkdXBsZXhcbmNvbnN0IHJlcXVlc3REdXBsZXggPSBbXG4gICdoYWxmJ1xuXVxuXG4vLyBodHRwOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmb3JiaWRkZW4tbWV0aG9kXG5jb25zdCBmb3JiaWRkZW5NZXRob2RzID0gWydDT05ORUNUJywgJ1RSQUNFJywgJ1RSQUNLJ11cbmNvbnN0IGZvcmJpZGRlbk1ldGhvZHNTZXQgPSBuZXcgU2V0KGZvcmJpZGRlbk1ldGhvZHMpXG5cbmNvbnN0IHN1YnJlc291cmNlID0gW1xuICAnYXVkaW8nLFxuICAnYXVkaW93b3JrbGV0JyxcbiAgJ2ZvbnQnLFxuICAnaW1hZ2UnLFxuICAnbWFuaWZlc3QnLFxuICAncGFpbnR3b3JrbGV0JyxcbiAgJ3NjcmlwdCcsXG4gICdzdHlsZScsXG4gICd0cmFjaycsXG4gICd2aWRlbycsXG4gICd4c2x0JyxcbiAgJydcbl1cbmNvbnN0IHN1YnJlc291cmNlU2V0ID0gbmV3IFNldChzdWJyZXNvdXJjZSlcblxuLyoqIEB0eXBlIHtnbG9iYWxUaGlzWydET01FeGNlcHRpb24nXX0gKi9cbmNvbnN0IERPTUV4Y2VwdGlvbiA9IGdsb2JhbFRoaXMuRE9NRXhjZXB0aW9uID8/ICgoKSA9PiB7XG4gIC8vIERPTUV4Y2VwdGlvbiB3YXMgb25seSBtYWRlIGEgZ2xvYmFsIGluIE5vZGUgdjE3LjAuMCxcbiAgLy8gYnV0IGZldGNoIHN1cHBvcnRzID49IHYxNi44LlxuICB0cnkge1xuICAgIGF0b2IoJ34nKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKGVycikuY29uc3RydWN0b3JcbiAgfVxufSkoKVxuXG5sZXQgY2hhbm5lbFxuXG4vKiogQHR5cGUge2dsb2JhbFRoaXNbJ3N0cnVjdHVyZWRDbG9uZSddfSAqL1xuY29uc3Qgc3RydWN0dXJlZENsb25lID1cbiAgZ2xvYmFsVGhpcy5zdHJ1Y3R1cmVkQ2xvbmUgPz9cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL2Jsb2IvYjI3YWUyNGRjYzQyNTFiYWQ3MjZkOWQ4NGJhZjY3OGQxZjcwN2ZlZC9saWIvaW50ZXJuYWwvc3RydWN0dXJlZF9jbG9uZS5qc1xuICAvLyBzdHJ1Y3R1cmVkQ2xvbmUgd2FzIGFkZGVkIGluIHYxNy4wLjAsIGJ1dCBmZXRjaCBzdXBwb3J0cyB2MTYuOFxuICBmdW5jdGlvbiBzdHJ1Y3R1cmVkQ2xvbmUgKHZhbHVlLCBvcHRpb25zID0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ21pc3NpbmcgYXJndW1lbnQnKVxuICAgIH1cblxuICAgIGlmICghY2hhbm5lbCkge1xuICAgICAgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpXG4gICAgfVxuICAgIGNoYW5uZWwucG9ydDEudW5yZWYoKVxuICAgIGNoYW5uZWwucG9ydDIudW5yZWYoKVxuICAgIGNoYW5uZWwucG9ydDEucG9zdE1lc3NhZ2UodmFsdWUsIG9wdGlvbnM/LnRyYW5zZmVyKVxuICAgIHJldHVybiByZWNlaXZlTWVzc2FnZU9uUG9ydChjaGFubmVsLnBvcnQyKS5tZXNzYWdlXG4gIH1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIERPTUV4Y2VwdGlvbixcbiAgc3RydWN0dXJlZENsb25lLFxuICBzdWJyZXNvdXJjZSxcbiAgZm9yYmlkZGVuTWV0aG9kcyxcbiAgcmVxdWVzdEJvZHlIZWFkZXIsXG4gIHJlZmVycmVyUG9saWN5LFxuICByZXF1ZXN0UmVkaXJlY3QsXG4gIHJlcXVlc3RNb2RlLFxuICByZXF1ZXN0Q3JlZGVudGlhbHMsXG4gIHJlcXVlc3RDYWNoZSxcbiAgcmVkaXJlY3RTdGF0dXMsXG4gIGNvcnNTYWZlTGlzdGVkTWV0aG9kcyxcbiAgbnVsbEJvZHlTdGF0dXMsXG4gIHNhZmVNZXRob2RzLFxuICBiYWRQb3J0cyxcbiAgcmVxdWVzdER1cGxleCxcbiAgc3VicmVzb3VyY2VTZXQsXG4gIGJhZFBvcnRzU2V0LFxuICByZWRpcmVjdFN0YXR1c1NldCxcbiAgY29yc1NhZmVMaXN0ZWRNZXRob2RzU2V0LFxuICBzYWZlTWV0aG9kc1NldCxcbiAgZm9yYmlkZGVuTWV0aG9kc1NldCxcbiAgcmVmZXJyZXJQb2xpY3lTZXRcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLy8gSW4gY2FzZSBvZiBicmVha2luZyBjaGFuZ2VzLCBpbmNyZWFzZSB0aGUgdmVyc2lvblxuLy8gbnVtYmVyIHRvIGF2b2lkIGNvbmZsaWN0cy5cbmNvbnN0IGdsb2JhbE9yaWdpbiA9IFN5bWJvbC5mb3IoJ3VuZGljaS5nbG9iYWxPcmlnaW4uMScpXG5cbmZ1bmN0aW9uIGdldEdsb2JhbE9yaWdpbiAoKSB7XG4gIHJldHVybiBnbG9iYWxUaGlzW2dsb2JhbE9yaWdpbl1cbn1cblxuZnVuY3Rpb24gc2V0R2xvYmFsT3JpZ2luIChuZXdPcmlnaW4pIHtcbiAgaWYgKG5ld09yaWdpbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGdsb2JhbFRoaXMsIGdsb2JhbE9yaWdpbiwge1xuICAgICAgdmFsdWU6IHVuZGVmaW5lZCxcbiAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlXG4gICAgfSlcblxuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgcGFyc2VkVVJMID0gbmV3IFVSTChuZXdPcmlnaW4pXG5cbiAgaWYgKHBhcnNlZFVSTC5wcm90b2NvbCAhPT0gJ2h0dHA6JyAmJiBwYXJzZWRVUkwucHJvdG9jb2wgIT09ICdodHRwczonKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgT25seSBodHRwICYgaHR0cHMgdXJscyBhcmUgYWxsb3dlZCwgcmVjZWl2ZWQgJHtwYXJzZWRVUkwucHJvdG9jb2x9YClcbiAgfVxuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShnbG9iYWxUaGlzLCBnbG9iYWxPcmlnaW4sIHtcbiAgICB2YWx1ZTogcGFyc2VkVVJMLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgIGNvbmZpZ3VyYWJsZTogZmFsc2VcbiAgfSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGdldEdsb2JhbE9yaWdpbixcbiAgc2V0R2xvYmFsT3JpZ2luXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcmVkaXJlY3RTdGF0dXNTZXQsIHJlZmVycmVyUG9saWN5U2V0OiByZWZlcnJlclBvbGljeVRva2VucywgYmFkUG9ydHNTZXQgfSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsgZ2V0R2xvYmFsT3JpZ2luIH0gPSByZXF1aXJlKCcuL2dsb2JhbCcpXG5jb25zdCB7IHBlcmZvcm1hbmNlIH0gPSByZXF1aXJlKCdwZXJmX2hvb2tzJylcbmNvbnN0IHsgaXNCbG9iTGlrZSwgdG9VU1ZTdHJpbmcsIFJlYWRhYmxlU3RyZWFtRnJvbSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7IGlzVWludDhBcnJheSB9ID0gcmVxdWlyZSgndXRpbC90eXBlcycpXG5cbmxldCBzdXBwb3J0ZWRIYXNoZXMgPSBbXVxuXG4vLyBodHRwczovL25vZGVqcy5vcmcvYXBpL2NyeXB0by5odG1sI2RldGVybWluaW5nLWlmLWNyeXB0by1zdXBwb3J0LWlzLXVuYXZhaWxhYmxlXG4vKiogQHR5cGUge2ltcG9ydCgnY3J5cHRvJyl8dW5kZWZpbmVkfSAqL1xubGV0IGNyeXB0b1xuXG50cnkge1xuICBjcnlwdG8gPSByZXF1aXJlKCdjcnlwdG8nKVxuICBjb25zdCBwb3NzaWJsZVJlbGV2YW50SGFzaGVzID0gWydzaGEyNTYnLCAnc2hhMzg0JywgJ3NoYTUxMiddXG4gIHN1cHBvcnRlZEhhc2hlcyA9IGNyeXB0by5nZXRIYXNoZXMoKS5maWx0ZXIoKGhhc2gpID0+IHBvc3NpYmxlUmVsZXZhbnRIYXNoZXMuaW5jbHVkZXMoaGFzaCkpXG4vKiBjOCBpZ25vcmUgbmV4dCAzICovXG59IGNhdGNoIHtcbn1cblxuZnVuY3Rpb24gcmVzcG9uc2VVUkwgKHJlc3BvbnNlKSB7XG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXNwb25zZXNcbiAgLy8gQSByZXNwb25zZSBoYXMgYW4gYXNzb2NpYXRlZCBVUkwuIEl0IGlzIGEgcG9pbnRlciB0byB0aGUgbGFzdCBVUkxcbiAgLy8gaW4gcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0IGFuZCBudWxsIGlmIHJlc3BvbnNlXHUyMDE5cyBVUkwgbGlzdCBpcyBlbXB0eS5cbiAgY29uc3QgdXJsTGlzdCA9IHJlc3BvbnNlLnVybExpc3RcbiAgY29uc3QgbGVuZ3RoID0gdXJsTGlzdC5sZW5ndGhcbiAgcmV0dXJuIGxlbmd0aCA9PT0gMCA/IG51bGwgOiB1cmxMaXN0W2xlbmd0aCAtIDFdLnRvU3RyaW5nKClcbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtcmVzcG9uc2UtbG9jYXRpb24tdXJsXG5mdW5jdGlvbiByZXNwb25zZUxvY2F0aW9uVVJMIChyZXNwb25zZSwgcmVxdWVzdEZyYWdtZW50KSB7XG4gIC8vIDEuIElmIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgbm90IGEgcmVkaXJlY3Qgc3RhdHVzLCB0aGVuIHJldHVybiBudWxsLlxuICBpZiAoIXJlZGlyZWN0U3RhdHVzU2V0LmhhcyhyZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIC8vIDIuIExldCBsb2NhdGlvbiBiZSB0aGUgcmVzdWx0IG9mIGV4dHJhY3RpbmcgaGVhZGVyIGxpc3QgdmFsdWVzIGdpdmVuXG4gIC8vIGBMb2NhdGlvbmAgYW5kIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgbGV0IGxvY2F0aW9uID0gcmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdsb2NhdGlvbicpXG5cbiAgLy8gMy4gSWYgbG9jYXRpb24gaXMgYSBoZWFkZXIgdmFsdWUsIHRoZW4gc2V0IGxvY2F0aW9uIHRvIHRoZSByZXN1bHQgb2ZcbiAgLy8gICAgcGFyc2luZyBsb2NhdGlvbiB3aXRoIHJlc3BvbnNlXHUyMDE5cyBVUkwuXG4gIGlmIChsb2NhdGlvbiAhPT0gbnVsbCAmJiBpc1ZhbGlkSGVhZGVyVmFsdWUobG9jYXRpb24pKSB7XG4gICAgbG9jYXRpb24gPSBuZXcgVVJMKGxvY2F0aW9uLCByZXNwb25zZVVSTChyZXNwb25zZSkpXG4gIH1cblxuICAvLyA0LiBJZiBsb2NhdGlvbiBpcyBhIFVSTCB3aG9zZSBmcmFnbWVudCBpcyBudWxsLCB0aGVuIHNldCBsb2NhdGlvblx1MjAxOXNcbiAgLy8gZnJhZ21lbnQgdG8gcmVxdWVzdEZyYWdtZW50LlxuICBpZiAobG9jYXRpb24gJiYgIWxvY2F0aW9uLmhhc2gpIHtcbiAgICBsb2NhdGlvbi5oYXNoID0gcmVxdWVzdEZyYWdtZW50XG4gIH1cblxuICAvLyA1LiBSZXR1cm4gbG9jYXRpb24uXG4gIHJldHVybiBsb2NhdGlvblxufVxuXG4vKiogQHJldHVybnMge1VSTH0gKi9cbmZ1bmN0aW9uIHJlcXVlc3RDdXJyZW50VVJMIChyZXF1ZXN0KSB7XG4gIHJldHVybiByZXF1ZXN0LnVybExpc3RbcmVxdWVzdC51cmxMaXN0Lmxlbmd0aCAtIDFdXG59XG5cbmZ1bmN0aW9uIHJlcXVlc3RCYWRQb3J0IChyZXF1ZXN0KSB7XG4gIC8vIDEuIExldCB1cmwgYmUgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkwuXG4gIGNvbnN0IHVybCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG5cbiAgLy8gMi4gSWYgdXJsXHUyMDE5cyBzY2hlbWUgaXMgYW4gSFRUUChTKSBzY2hlbWUgYW5kIHVybFx1MjAxOXMgcG9ydCBpcyBhIGJhZCBwb3J0LFxuICAvLyB0aGVuIHJldHVybiBibG9ja2VkLlxuICBpZiAodXJsSXNIdHRwSHR0cHNTY2hlbWUodXJsKSAmJiBiYWRQb3J0c1NldC5oYXModXJsLnBvcnQpKSB7XG4gICAgcmV0dXJuICdibG9ja2VkJ1xuICB9XG5cbiAgLy8gMy4gUmV0dXJuIGFsbG93ZWQuXG4gIHJldHVybiAnYWxsb3dlZCdcbn1cblxuZnVuY3Rpb24gaXNFcnJvckxpa2UgKG9iamVjdCkge1xuICByZXR1cm4gb2JqZWN0IGluc3RhbmNlb2YgRXJyb3IgfHwgKFxuICAgIG9iamVjdD8uY29uc3RydWN0b3I/Lm5hbWUgPT09ICdFcnJvcicgfHxcbiAgICBvYmplY3Q/LmNvbnN0cnVjdG9yPy5uYW1lID09PSAnRE9NRXhjZXB0aW9uJ1xuICApXG59XG5cbi8vIENoZWNrIHdoZXRoZXIgfHN0YXR1c1RleHR8IGlzIGEgQnl0ZVN0cmluZyBhbmRcbi8vIG1hdGNoZXMgdGhlIFJlYXNvbi1QaHJhc2UgdG9rZW4gcHJvZHVjdGlvbi5cbi8vIFJGQyAyNjE2OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMjYxNlxuLy8gUkZDIDcyMzA6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMwXG4vLyBcInJlYXNvbi1waHJhc2UgPSAqKCBIVEFCIC8gU1AgLyBWQ0hBUiAvIG9icy10ZXh0IClcIlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2Nocm9taXVtL2Nocm9taXVtL2Jsb2IvOTQuMC40NjA0LjEvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9mZXRjaC9yZXNwb25zZS5jYyNMMTE2XG5mdW5jdGlvbiBpc1ZhbGlkUmVhc29uUGhyYXNlIChzdGF0dXNUZXh0KSB7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc3RhdHVzVGV4dC5sZW5ndGg7ICsraSkge1xuICAgIGNvbnN0IGMgPSBzdGF0dXNUZXh0LmNoYXJDb2RlQXQoaSlcbiAgICBpZiAoXG4gICAgICAhKFxuICAgICAgICAoXG4gICAgICAgICAgYyA9PT0gMHgwOSB8fCAvLyBIVEFCXG4gICAgICAgICAgKGMgPj0gMHgyMCAmJiBjIDw9IDB4N2UpIHx8IC8vIFNQIC8gVkNIQVJcbiAgICAgICAgICAoYyA+PSAweDgwICYmIGMgPD0gMHhmZilcbiAgICAgICAgKSAvLyBvYnMtdGV4dFxuICAgICAgKVxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMCNzZWN0aW9uLTMuMi42XG4gKiBAcGFyYW0ge251bWJlcn0gY1xuICovXG5mdW5jdGlvbiBpc1Rva2VuQ2hhckNvZGUgKGMpIHtcbiAgc3dpdGNoIChjKSB7XG4gICAgY2FzZSAweDIyOlxuICAgIGNhc2UgMHgyODpcbiAgICBjYXNlIDB4Mjk6XG4gICAgY2FzZSAweDJjOlxuICAgIGNhc2UgMHgyZjpcbiAgICBjYXNlIDB4M2E6XG4gICAgY2FzZSAweDNiOlxuICAgIGNhc2UgMHgzYzpcbiAgICBjYXNlIDB4M2Q6XG4gICAgY2FzZSAweDNlOlxuICAgIGNhc2UgMHgzZjpcbiAgICBjYXNlIDB4NDA6XG4gICAgY2FzZSAweDViOlxuICAgIGNhc2UgMHg1YzpcbiAgICBjYXNlIDB4NWQ6XG4gICAgY2FzZSAweDdiOlxuICAgIGNhc2UgMHg3ZDpcbiAgICAgIC8vIERRVU9URSBhbmQgXCIoKSwvOjs8PT4/QFtcXF17fVwiXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICBkZWZhdWx0OlxuICAgICAgLy8gVkNIQVIgJXgyMS03RVxuICAgICAgcmV0dXJuIGMgPj0gMHgyMSAmJiBjIDw9IDB4N2VcbiAgfVxufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSBjaGFyYWN0ZXJzXG4gKi9cbmZ1bmN0aW9uIGlzVmFsaWRIVFRQVG9rZW4gKGNoYXJhY3RlcnMpIHtcbiAgaWYgKGNoYXJhY3RlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFyYWN0ZXJzLmxlbmd0aDsgKytpKSB7XG4gICAgaWYgKCFpc1Rva2VuQ2hhckNvZGUoY2hhcmFjdGVycy5jaGFyQ29kZUF0KGkpKSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaGVhZGVyLW5hbWVcbiAqIEBwYXJhbSB7c3RyaW5nfSBwb3RlbnRpYWxWYWx1ZVxuICovXG5mdW5jdGlvbiBpc1ZhbGlkSGVhZGVyTmFtZSAocG90ZW50aWFsVmFsdWUpIHtcbiAgcmV0dXJuIGlzVmFsaWRIVFRQVG9rZW4ocG90ZW50aWFsVmFsdWUpXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaGVhZGVyLXZhbHVlXG4gKiBAcGFyYW0ge3N0cmluZ30gcG90ZW50aWFsVmFsdWVcbiAqL1xuZnVuY3Rpb24gaXNWYWxpZEhlYWRlclZhbHVlIChwb3RlbnRpYWxWYWx1ZSkge1xuICAvLyAtIEhhcyBubyBsZWFkaW5nIG9yIHRyYWlsaW5nIEhUVFAgdGFiIG9yIHNwYWNlIGJ5dGVzLlxuICAvLyAtIENvbnRhaW5zIG5vIDB4MDAgKE5VTCkgb3IgSFRUUCBuZXdsaW5lIGJ5dGVzLlxuICBpZiAoXG4gICAgcG90ZW50aWFsVmFsdWUuc3RhcnRzV2l0aCgnXFx0JykgfHxcbiAgICBwb3RlbnRpYWxWYWx1ZS5zdGFydHNXaXRoKCcgJykgfHxcbiAgICBwb3RlbnRpYWxWYWx1ZS5lbmRzV2l0aCgnXFx0JykgfHxcbiAgICBwb3RlbnRpYWxWYWx1ZS5lbmRzV2l0aCgnICcpXG4gICkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgaWYgKFxuICAgIHBvdGVudGlhbFZhbHVlLmluY2x1ZGVzKCdcXDAnKSB8fFxuICAgIHBvdGVudGlhbFZhbHVlLmluY2x1ZGVzKCdcXHInKSB8fFxuICAgIHBvdGVudGlhbFZhbHVlLmluY2x1ZGVzKCdcXG4nKVxuICApIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyNzZXQtcmVxdWVzdHMtcmVmZXJyZXItcG9saWN5LW9uLXJlZGlyZWN0XG5mdW5jdGlvbiBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0IChyZXF1ZXN0LCBhY3R1YWxSZXNwb25zZSkge1xuICAvLyAgR2l2ZW4gYSByZXF1ZXN0IHJlcXVlc3QgYW5kIGEgcmVzcG9uc2UgYWN0dWFsUmVzcG9uc2UsIHRoaXMgYWxnb3JpdGhtXG4gIC8vICB1cGRhdGVzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeSBhY2NvcmRpbmcgdG8gdGhlIFJlZmVycmVyLVBvbGljeVxuICAvLyAgaGVhZGVyIChpZiBhbnkpIGluIGFjdHVhbFJlc3BvbnNlLlxuXG4gIC8vIDEuIExldCBwb2xpY3kgYmUgdGhlIHJlc3VsdCBvZiBleGVjdXRpbmcgXHUwMEE3IDguMSBQYXJzZSBhIHJlZmVycmVyIHBvbGljeVxuICAvLyBmcm9tIGEgUmVmZXJyZXItUG9saWN5IGhlYWRlciBvbiBhY3R1YWxSZXNwb25zZS5cblxuICAvLyA4LjEgUGFyc2UgYSByZWZlcnJlciBwb2xpY3kgZnJvbSBhIFJlZmVycmVyLVBvbGljeSBoZWFkZXJcbiAgLy8gMS4gTGV0IHBvbGljeS10b2tlbnMgYmUgdGhlIHJlc3VsdCBvZiBleHRyYWN0aW5nIGhlYWRlciBsaXN0IHZhbHVlcyBnaXZlbiBgUmVmZXJyZXItUG9saWN5YCBhbmQgcmVzcG9uc2VcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBjb25zdCB7IGhlYWRlcnNMaXN0IH0gPSBhY3R1YWxSZXNwb25zZVxuICAvLyAyLiBMZXQgcG9saWN5IGJlIHRoZSBlbXB0eSBzdHJpbmcuXG4gIC8vIDMuIEZvciBlYWNoIHRva2VuIGluIHBvbGljeS10b2tlbnMsIGlmIHRva2VuIGlzIGEgcmVmZXJyZXIgcG9saWN5IGFuZCB0b2tlbiBpcyBub3QgdGhlIGVtcHR5IHN0cmluZywgdGhlbiBzZXQgcG9saWN5IHRvIHRva2VuLlxuICAvLyA0LiBSZXR1cm4gcG9saWN5LlxuICBjb25zdCBwb2xpY3lIZWFkZXIgPSAoaGVhZGVyc0xpc3QuZ2V0KCdyZWZlcnJlci1wb2xpY3knKSA/PyAnJykuc3BsaXQoJywnKVxuXG4gIC8vIE5vdGU6IEFzIHRoZSByZWZlcnJlci1wb2xpY3kgY2FuIGNvbnRhaW4gbXVsdGlwbGUgcG9saWNpZXNcbiAgLy8gc2VwYXJhdGVkIGJ5IGNvbW1hLCB3ZSBuZWVkIHRvIGxvb3AgdGhyb3VnaCBhbGwgb2YgdGhlbVxuICAvLyBhbmQgcGljayB0aGUgZmlyc3QgdmFsaWQgb25lLlxuICAvLyBSZWY6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvSGVhZGVycy9SZWZlcnJlci1Qb2xpY3kjc3BlY2lmeV9hX2ZhbGxiYWNrX3BvbGljeVxuICBsZXQgcG9saWN5ID0gJydcbiAgaWYgKHBvbGljeUhlYWRlci5sZW5ndGggPiAwKSB7XG4gICAgLy8gVGhlIHJpZ2h0LW1vc3QgcG9saWN5IHRha2VzIHByZWNlZGVuY2UuXG4gICAgLy8gVGhlIGxlZnQtbW9zdCBwb2xpY3kgaXMgdGhlIGZhbGxiYWNrLlxuICAgIGZvciAobGV0IGkgPSBwb2xpY3lIZWFkZXIubGVuZ3RoOyBpICE9PSAwOyBpLS0pIHtcbiAgICAgIGNvbnN0IHRva2VuID0gcG9saWN5SGVhZGVyW2kgLSAxXS50cmltKClcbiAgICAgIGlmIChyZWZlcnJlclBvbGljeVRva2Vucy5oYXModG9rZW4pKSB7XG4gICAgICAgIHBvbGljeSA9IHRva2VuXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gMi4gSWYgcG9saWN5IGlzIG5vdCB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyByZWZlcnJlciBwb2xpY3kgdG8gcG9saWN5LlxuICBpZiAocG9saWN5ICE9PSAnJykge1xuICAgIHJlcXVlc3QucmVmZXJyZXJQb2xpY3kgPSBwb2xpY3lcbiAgfVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY3Jvc3Mtb3JpZ2luLXJlc291cmNlLXBvbGljeS1jaGVja1xuZnVuY3Rpb24gY3Jvc3NPcmlnaW5SZXNvdXJjZVBvbGljeUNoZWNrICgpIHtcbiAgLy8gVE9ET1xuICByZXR1cm4gJ2FsbG93ZWQnXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWNvcnMtY2hlY2tcbmZ1bmN0aW9uIGNvcnNDaGVjayAoKSB7XG4gIC8vIFRPRE9cbiAgcmV0dXJuICdzdWNjZXNzJ1xufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC10YW8tY2hlY2tcbmZ1bmN0aW9uIFRBT0NoZWNrICgpIHtcbiAgLy8gVE9ET1xuICByZXR1cm4gJ3N1Y2Nlc3MnXG59XG5cbmZ1bmN0aW9uIGFwcGVuZEZldGNoTWV0YWRhdGEgKGh0dHBSZXF1ZXN0KSB7XG4gIC8vICBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLWZldGNoLW1ldGFkYXRhLyNzZWMtZmV0Y2gtZGVzdC1oZWFkZXJcbiAgLy8gIFRPRE9cblxuICAvLyAgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3dlYmFwcHNlYy1mZXRjaC1tZXRhZGF0YS8jc2VjLWZldGNoLW1vZGUtaGVhZGVyXG5cbiAgLy8gIDEuIEFzc2VydDogclx1MjAxOXMgdXJsIGlzIGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMLlxuICAvLyAgVE9ET1xuXG4gIC8vICAyLiBMZXQgaGVhZGVyIGJlIGEgU3RydWN0dXJlZCBIZWFkZXIgd2hvc2UgdmFsdWUgaXMgYSB0b2tlbi5cbiAgbGV0IGhlYWRlciA9IG51bGxcblxuICAvLyAgMy4gU2V0IGhlYWRlclx1MjAxOXMgdmFsdWUgdG8gclx1MjAxOXMgbW9kZS5cbiAgaGVhZGVyID0gaHR0cFJlcXVlc3QubW9kZVxuXG4gIC8vICA0LiBTZXQgYSBzdHJ1Y3R1cmVkIGZpZWxkIHZhbHVlIGBTZWMtRmV0Y2gtTW9kZWAvaGVhZGVyIGluIHJcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5zZXQoJ3NlYy1mZXRjaC1tb2RlJywgaGVhZGVyKVxuXG4gIC8vICBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLWZldGNoLW1ldGFkYXRhLyNzZWMtZmV0Y2gtc2l0ZS1oZWFkZXJcbiAgLy8gIFRPRE9cblxuICAvLyAgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3dlYmFwcHNlYy1mZXRjaC1tZXRhZGF0YS8jc2VjLWZldGNoLXVzZXItaGVhZGVyXG4gIC8vICBUT0RPXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNhcHBlbmQtYS1yZXF1ZXN0LW9yaWdpbi1oZWFkZXJcbmZ1bmN0aW9uIGFwcGVuZFJlcXVlc3RPcmlnaW5IZWFkZXIgKHJlcXVlc3QpIHtcbiAgLy8gMS4gTGV0IHNlcmlhbGl6ZWRPcmlnaW4gYmUgdGhlIHJlc3VsdCBvZiBieXRlLXNlcmlhbGl6aW5nIGEgcmVxdWVzdCBvcmlnaW4gd2l0aCByZXF1ZXN0LlxuICBsZXQgc2VyaWFsaXplZE9yaWdpbiA9IHJlcXVlc3Qub3JpZ2luXG5cbiAgLy8gMi4gSWYgcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgaXMgXCJjb3JzXCIgb3IgcmVxdWVzdFx1MjAxOXMgbW9kZSBpcyBcIndlYnNvY2tldFwiLCB0aGVuIGFwcGVuZCAoYE9yaWdpbmAsIHNlcmlhbGl6ZWRPcmlnaW4pIHRvIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAocmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnY29ycycgfHwgcmVxdWVzdC5tb2RlID09PSAnd2Vic29ja2V0Jykge1xuICAgIGlmIChzZXJpYWxpemVkT3JpZ2luKSB7XG4gICAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnb3JpZ2luJywgc2VyaWFsaXplZE9yaWdpbilcbiAgICB9XG5cbiAgLy8gMy4gT3RoZXJ3aXNlLCBpZiByZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgbmVpdGhlciBgR0VUYCBub3IgYEhFQURgLCB0aGVuOlxuICB9IGVsc2UgaWYgKHJlcXVlc3QubWV0aG9kICE9PSAnR0VUJyAmJiByZXF1ZXN0Lm1ldGhvZCAhPT0gJ0hFQUQnKSB7XG4gICAgLy8gMS4gU3dpdGNoIG9uIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeTpcbiAgICBzd2l0Y2ggKHJlcXVlc3QucmVmZXJyZXJQb2xpY3kpIHtcbiAgICAgIGNhc2UgJ25vLXJlZmVycmVyJzpcbiAgICAgICAgLy8gU2V0IHNlcmlhbGl6ZWRPcmlnaW4gdG8gYG51bGxgLlxuICAgICAgICBzZXJpYWxpemVkT3JpZ2luID0gbnVsbFxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnbm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUnOlxuICAgICAgY2FzZSAnc3RyaWN0LW9yaWdpbic6XG4gICAgICBjYXNlICdzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJzpcbiAgICAgICAgLy8gSWYgcmVxdWVzdFx1MjAxOXMgb3JpZ2luIGlzIGEgdHVwbGUgb3JpZ2luLCBpdHMgc2NoZW1lIGlzIFwiaHR0cHNcIiwgYW5kIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBzY2hlbWUgaXMgbm90IFwiaHR0cHNcIiwgdGhlbiBzZXQgc2VyaWFsaXplZE9yaWdpbiB0byBgbnVsbGAuXG4gICAgICAgIGlmIChyZXF1ZXN0Lm9yaWdpbiAmJiB1cmxIYXNIdHRwc1NjaGVtZShyZXF1ZXN0Lm9yaWdpbikgJiYgIXVybEhhc0h0dHBzU2NoZW1lKHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpKSkge1xuICAgICAgICAgIHNlcmlhbGl6ZWRPcmlnaW4gPSBudWxsXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ3NhbWUtb3JpZ2luJzpcbiAgICAgICAgLy8gSWYgcmVxdWVzdFx1MjAxOXMgb3JpZ2luIGlzIG5vdCBzYW1lIG9yaWdpbiB3aXRoIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBvcmlnaW4sIHRoZW4gc2V0IHNlcmlhbGl6ZWRPcmlnaW4gdG8gYG51bGxgLlxuICAgICAgICBpZiAoIXNhbWVPcmlnaW4ocmVxdWVzdCwgcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCkpKSB7XG4gICAgICAgICAgc2VyaWFsaXplZE9yaWdpbiA9IG51bGxcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLy8gRG8gbm90aGluZy5cbiAgICB9XG5cbiAgICBpZiAoc2VyaWFsaXplZE9yaWdpbikge1xuICAgICAgLy8gMi4gQXBwZW5kIChgT3JpZ2luYCwgc2VyaWFsaXplZE9yaWdpbikgdG8gcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnb3JpZ2luJywgc2VyaWFsaXplZE9yaWdpbilcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gY29hcnNlbmVkU2hhcmVkQ3VycmVudFRpbWUgKGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5KSB7XG4gIC8vIFRPRE9cbiAgcmV0dXJuIHBlcmZvcm1hbmNlLm5vdygpXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjcmVhdGUtYW4tb3BhcXVlLXRpbWluZy1pbmZvXG5mdW5jdGlvbiBjcmVhdGVPcGFxdWVUaW1pbmdJbmZvICh0aW1pbmdJbmZvKSB7XG4gIHJldHVybiB7XG4gICAgc3RhcnRUaW1lOiB0aW1pbmdJbmZvLnN0YXJ0VGltZSA/PyAwLFxuICAgIHJlZGlyZWN0U3RhcnRUaW1lOiAwLFxuICAgIHJlZGlyZWN0RW5kVGltZTogMCxcbiAgICBwb3N0UmVkaXJlY3RTdGFydFRpbWU6IHRpbWluZ0luZm8uc3RhcnRUaW1lID8/IDAsXG4gICAgZmluYWxTZXJ2aWNlV29ya2VyU3RhcnRUaW1lOiAwLFxuICAgIGZpbmFsTmV0d29ya1Jlc3BvbnNlU3RhcnRUaW1lOiAwLFxuICAgIGZpbmFsTmV0d29ya1JlcXVlc3RTdGFydFRpbWU6IDAsXG4gICAgZW5kVGltZTogMCxcbiAgICBlbmNvZGVkQm9keVNpemU6IDAsXG4gICAgZGVjb2RlZEJvZHlTaXplOiAwLFxuICAgIGZpbmFsQ29ubmVjdGlvblRpbWluZ0luZm86IG51bGxcbiAgfVxufVxuXG4vLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9vcmlnaW4uaHRtbCNwb2xpY3ktY29udGFpbmVyXG5mdW5jdGlvbiBtYWtlUG9saWN5Q29udGFpbmVyICgpIHtcbiAgLy8gTm90ZTogdGhlIGZldGNoIHNwZWMgZG9lc24ndCBtYWtlIHVzZSBvZiBlbWJlZGRlciBwb2xpY3kgb3IgQ1NQIGxpc3RcbiAgcmV0dXJuIHtcbiAgICByZWZlcnJlclBvbGljeTogJ3N0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4nXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvb3JpZ2luLmh0bWwjY2xvbmUtYS1wb2xpY3ktY29udGFpbmVyXG5mdW5jdGlvbiBjbG9uZVBvbGljeUNvbnRhaW5lciAocG9saWN5Q29udGFpbmVyKSB7XG4gIHJldHVybiB7XG4gICAgcmVmZXJyZXJQb2xpY3k6IHBvbGljeUNvbnRhaW5lci5yZWZlcnJlclBvbGljeVxuICB9XG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyNkZXRlcm1pbmUtcmVxdWVzdHMtcmVmZXJyZXJcbmZ1bmN0aW9uIGRldGVybWluZVJlcXVlc3RzUmVmZXJyZXIgKHJlcXVlc3QpIHtcbiAgLy8gMS4gTGV0IHBvbGljeSBiZSByZXF1ZXN0J3MgcmVmZXJyZXIgcG9saWN5LlxuICBjb25zdCBwb2xpY3kgPSByZXF1ZXN0LnJlZmVycmVyUG9saWN5XG5cbiAgLy8gTm90ZTogcG9saWN5IGNhbm5vdCAoc2hvdWxkbid0KSBiZSBudWxsIG9yIGFuIGVtcHR5IHN0cmluZy5cbiAgYXNzZXJ0KHBvbGljeSlcblxuICAvLyAyLiBMZXQgZW52aXJvbm1lbnQgYmUgcmVxdWVzdFx1MjAxOXMgY2xpZW50LlxuXG4gIGxldCByZWZlcnJlclNvdXJjZSA9IG51bGxcblxuICAvLyAzLiBTd2l0Y2ggb24gcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXI6XG4gIGlmIChyZXF1ZXN0LnJlZmVycmVyID09PSAnY2xpZW50Jykge1xuICAgIC8vIE5vdGU6IG5vZGUgaXNuJ3QgYSBicm93c2VyIGFuZCBkb2Vzbid0IGltcGxlbWVudCBkb2N1bWVudC9pZnJhbWVzLFxuICAgIC8vIHNvIHdlIGJ5cGFzcyB0aGlzIHN0ZXAgYW5kIHJlcGxhY2UgaXQgd2l0aCBvdXIgb3duLlxuXG4gICAgY29uc3QgZ2xvYmFsT3JpZ2luID0gZ2V0R2xvYmFsT3JpZ2luKClcblxuICAgIGlmICghZ2xvYmFsT3JpZ2luIHx8IGdsb2JhbE9yaWdpbi5vcmlnaW4gPT09ICdudWxsJykge1xuICAgICAgcmV0dXJuICduby1yZWZlcnJlcidcbiAgICB9XG5cbiAgICAvLyBub3RlOiB3ZSBuZWVkIHRvIGNsb25lIGl0IGFzIGl0J3MgbXV0YXRlZFxuICAgIHJlZmVycmVyU291cmNlID0gbmV3IFVSTChnbG9iYWxPcmlnaW4pXG4gIH0gZWxzZSBpZiAocmVxdWVzdC5yZWZlcnJlciBpbnN0YW5jZW9mIFVSTCkge1xuICAgIC8vIExldCByZWZlcnJlclNvdXJjZSBiZSByZXF1ZXN0XHUyMDE5cyByZWZlcnJlci5cbiAgICByZWZlcnJlclNvdXJjZSA9IHJlcXVlc3QucmVmZXJyZXJcbiAgfVxuXG4gIC8vIDQuIExldCByZXF1ZXN0XHUyMDE5cyByZWZlcnJlclVSTCBiZSB0aGUgcmVzdWx0IG9mIHN0cmlwcGluZyByZWZlcnJlclNvdXJjZSBmb3JcbiAgLy8gICAgdXNlIGFzIGEgcmVmZXJyZXIuXG4gIGxldCByZWZlcnJlclVSTCA9IHN0cmlwVVJMRm9yUmVmZXJyZXIocmVmZXJyZXJTb3VyY2UpXG5cbiAgLy8gNS4gTGV0IHJlZmVycmVyT3JpZ2luIGJlIHRoZSByZXN1bHQgb2Ygc3RyaXBwaW5nIHJlZmVycmVyU291cmNlIGZvciB1c2UgYXNcbiAgLy8gICAgYSByZWZlcnJlciwgd2l0aCB0aGUgb3JpZ2luLW9ubHkgZmxhZyBzZXQgdG8gdHJ1ZS5cbiAgY29uc3QgcmVmZXJyZXJPcmlnaW4gPSBzdHJpcFVSTEZvclJlZmVycmVyKHJlZmVycmVyU291cmNlLCB0cnVlKVxuXG4gIC8vIDYuIElmIHRoZSByZXN1bHQgb2Ygc2VyaWFsaXppbmcgcmVmZXJyZXJVUkwgaXMgYSBzdHJpbmcgd2hvc2UgbGVuZ3RoIGlzXG4gIC8vICAgIGdyZWF0ZXIgdGhhbiA0MDk2LCBzZXQgcmVmZXJyZXJVUkwgdG8gcmVmZXJyZXJPcmlnaW4uXG4gIGlmIChyZWZlcnJlclVSTC50b1N0cmluZygpLmxlbmd0aCA+IDQwOTYpIHtcbiAgICByZWZlcnJlclVSTCA9IHJlZmVycmVyT3JpZ2luXG4gIH1cblxuICBjb25zdCBhcmVTYW1lT3JpZ2luID0gc2FtZU9yaWdpbihyZXF1ZXN0LCByZWZlcnJlclVSTClcbiAgY29uc3QgaXNOb25Qb3RlbnRpYWxseVRydXN0V29ydGh5ID0gaXNVUkxQb3RlbnRpYWxseVRydXN0d29ydGh5KHJlZmVycmVyVVJMKSAmJlxuICAgICFpc1VSTFBvdGVudGlhbGx5VHJ1c3R3b3J0aHkocmVxdWVzdC51cmwpXG5cbiAgLy8gOC4gRXhlY3V0ZSB0aGUgc3dpdGNoIHN0YXRlbWVudHMgY29ycmVzcG9uZGluZyB0byB0aGUgdmFsdWUgb2YgcG9saWN5OlxuICBzd2l0Y2ggKHBvbGljeSkge1xuICAgIGNhc2UgJ29yaWdpbic6IHJldHVybiByZWZlcnJlck9yaWdpbiAhPSBudWxsID8gcmVmZXJyZXJPcmlnaW4gOiBzdHJpcFVSTEZvclJlZmVycmVyKHJlZmVycmVyU291cmNlLCB0cnVlKVxuICAgIGNhc2UgJ3Vuc2FmZS11cmwnOiByZXR1cm4gcmVmZXJyZXJVUkxcbiAgICBjYXNlICdzYW1lLW9yaWdpbic6XG4gICAgICByZXR1cm4gYXJlU2FtZU9yaWdpbiA/IHJlZmVycmVyT3JpZ2luIDogJ25vLXJlZmVycmVyJ1xuICAgIGNhc2UgJ29yaWdpbi13aGVuLWNyb3NzLW9yaWdpbic6XG4gICAgICByZXR1cm4gYXJlU2FtZU9yaWdpbiA/IHJlZmVycmVyVVJMIDogcmVmZXJyZXJPcmlnaW5cbiAgICBjYXNlICdzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJzoge1xuICAgICAgY29uc3QgY3VycmVudFVSTCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG5cbiAgICAgIC8vIDEuIElmIHRoZSBvcmlnaW4gb2YgcmVmZXJyZXJVUkwgYW5kIHRoZSBvcmlnaW4gb2YgcmVxdWVzdFx1MjAxOXMgY3VycmVudFxuICAgICAgLy8gICAgVVJMIGFyZSB0aGUgc2FtZSwgdGhlbiByZXR1cm4gcmVmZXJyZXJVUkwuXG4gICAgICBpZiAoc2FtZU9yaWdpbihyZWZlcnJlclVSTCwgY3VycmVudFVSTCkpIHtcbiAgICAgICAgcmV0dXJuIHJlZmVycmVyVVJMXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIElmIHJlZmVycmVyVVJMIGlzIGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMIGFuZCByZXF1ZXN0XHUyMDE5c1xuICAgICAgLy8gICAgY3VycmVudCBVUkwgaXMgbm90IGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMLCB0aGVuIHJldHVybiBub1xuICAgICAgLy8gICAgcmVmZXJyZXIuXG4gICAgICBpZiAoaXNVUkxQb3RlbnRpYWxseVRydXN0d29ydGh5KHJlZmVycmVyVVJMKSAmJiAhaXNVUkxQb3RlbnRpYWxseVRydXN0d29ydGh5KGN1cnJlbnRVUkwpKSB7XG4gICAgICAgIHJldHVybiAnbm8tcmVmZXJyZXInXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIFJldHVybiByZWZlcnJlck9yaWdpbi5cbiAgICAgIHJldHVybiByZWZlcnJlck9yaWdpblxuICAgIH1cbiAgICBjYXNlICdzdHJpY3Qtb3JpZ2luJzogLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgICAgLyoqXG4gICAgICAgICAqIDEuIElmIHJlZmVycmVyVVJMIGlzIGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMIGFuZFxuICAgICAgICAgKiByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTCBpcyBub3QgYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwsXG4gICAgICAgICAqIHRoZW4gcmV0dXJuIG5vIHJlZmVycmVyLlxuICAgICAgICAgKiAyLiBSZXR1cm4gcmVmZXJyZXJPcmlnaW5cbiAgICAgICAgKi9cbiAgICBjYXNlICduby1yZWZlcnJlci13aGVuLWRvd25ncmFkZSc6IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbiAgICAgIC8qKlxuICAgICAgICogMS4gSWYgcmVmZXJyZXJVUkwgaXMgYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwgYW5kXG4gICAgICAgKiByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTCBpcyBub3QgYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwsXG4gICAgICAgKiB0aGVuIHJldHVybiBubyByZWZlcnJlci5cbiAgICAgICAqIDIuIFJldHVybiByZWZlcnJlck9yaWdpblxuICAgICAgKi9cblxuICAgIGRlZmF1bHQ6IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbiAgICAgIHJldHVybiBpc05vblBvdGVudGlhbGx5VHJ1c3RXb3J0aHkgPyAnbm8tcmVmZXJyZXInIDogcmVmZXJyZXJPcmlnaW5cbiAgfVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3dlYmFwcHNlYy1yZWZlcnJlci1wb2xpY3kvI3N0cmlwLXVybFxuICogQHBhcmFtIHtVUkx9IHVybFxuICogQHBhcmFtIHtib29sZWFufHVuZGVmaW5lZH0gb3JpZ2luT25seVxuICovXG5mdW5jdGlvbiBzdHJpcFVSTEZvclJlZmVycmVyICh1cmwsIG9yaWdpbk9ubHkpIHtcbiAgLy8gMS4gQXNzZXJ0OiB1cmwgaXMgYSBVUkwuXG4gIGFzc2VydCh1cmwgaW5zdGFuY2VvZiBVUkwpXG5cbiAgLy8gMi4gSWYgdXJsXHUyMDE5cyBzY2hlbWUgaXMgYSBsb2NhbCBzY2hlbWUsIHRoZW4gcmV0dXJuIG5vIHJlZmVycmVyLlxuICBpZiAodXJsLnByb3RvY29sID09PSAnZmlsZTonIHx8IHVybC5wcm90b2NvbCA9PT0gJ2Fib3V0OicgfHwgdXJsLnByb3RvY29sID09PSAnYmxhbms6Jykge1xuICAgIHJldHVybiAnbm8tcmVmZXJyZXInXG4gIH1cblxuICAvLyAzLiBTZXQgdXJsXHUyMDE5cyB1c2VybmFtZSB0byB0aGUgZW1wdHkgc3RyaW5nLlxuICB1cmwudXNlcm5hbWUgPSAnJ1xuXG4gIC8vIDQuIFNldCB1cmxcdTIwMTlzIHBhc3N3b3JkIHRvIHRoZSBlbXB0eSBzdHJpbmcuXG4gIHVybC5wYXNzd29yZCA9ICcnXG5cbiAgLy8gNS4gU2V0IHVybFx1MjAxOXMgZnJhZ21lbnQgdG8gbnVsbC5cbiAgdXJsLmhhc2ggPSAnJ1xuXG4gIC8vIDYuIElmIHRoZSBvcmlnaW4tb25seSBmbGFnIGlzIHRydWUsIHRoZW46XG4gIGlmIChvcmlnaW5Pbmx5KSB7XG4gICAgLy8gMS4gU2V0IHVybFx1MjAxOXMgcGF0aCB0byBcdTAwQUIgdGhlIGVtcHR5IHN0cmluZyBcdTAwQkIuXG4gICAgdXJsLnBhdGhuYW1lID0gJydcblxuICAgIC8vIDIuIFNldCB1cmxcdTIwMTlzIHF1ZXJ5IHRvIG51bGwuXG4gICAgdXJsLnNlYXJjaCA9ICcnXG4gIH1cblxuICAvLyA3LiBSZXR1cm4gdXJsLlxuICByZXR1cm4gdXJsXG59XG5cbmZ1bmN0aW9uIGlzVVJMUG90ZW50aWFsbHlUcnVzdHdvcnRoeSAodXJsKSB7XG4gIGlmICghKHVybCBpbnN0YW5jZW9mIFVSTCkpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIC8vIElmIGNoaWxkIG9mIGFib3V0LCByZXR1cm4gdHJ1ZVxuICBpZiAodXJsLmhyZWYgPT09ICdhYm91dDpibGFuaycgfHwgdXJsLmhyZWYgPT09ICdhYm91dDpzcmNkb2MnKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8vIElmIHNjaGVtZSBpcyBkYXRhLCByZXR1cm4gdHJ1ZVxuICBpZiAodXJsLnByb3RvY29sID09PSAnZGF0YTonKSByZXR1cm4gdHJ1ZVxuXG4gIC8vIElmIGZpbGUsIHJldHVybiB0cnVlXG4gIGlmICh1cmwucHJvdG9jb2wgPT09ICdmaWxlOicpIHJldHVybiB0cnVlXG5cbiAgcmV0dXJuIGlzT3JpZ2luUG90ZW50aWFsbHlUcnVzdHdvcnRoeSh1cmwub3JpZ2luKVxuXG4gIGZ1bmN0aW9uIGlzT3JpZ2luUG90ZW50aWFsbHlUcnVzdHdvcnRoeSAob3JpZ2luKSB7XG4gICAgLy8gSWYgb3JpZ2luIGlzIGV4cGxpY2l0bHkgbnVsbCwgcmV0dXJuIGZhbHNlXG4gICAgaWYgKG9yaWdpbiA9PSBudWxsIHx8IG9yaWdpbiA9PT0gJ251bGwnKSByZXR1cm4gZmFsc2VcblxuICAgIGNvbnN0IG9yaWdpbkFzVVJMID0gbmV3IFVSTChvcmlnaW4pXG5cbiAgICAvLyBJZiBzZWN1cmUsIHJldHVybiB0cnVlXG4gICAgaWYgKG9yaWdpbkFzVVJMLnByb3RvY29sID09PSAnaHR0cHM6JyB8fCBvcmlnaW5Bc1VSTC5wcm90b2NvbCA9PT0gJ3dzczonKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIC8vIElmIGxvY2FsaG9zdCBvciB2YXJpYW50cywgcmV0dXJuIHRydWVcbiAgICBpZiAoL14xMjcoPzpcXC5bMC05XSspezAsMn1cXC5bMC05XSskfF5cXFsoPzowKjopKj86PzAqMVxcXSQvLnRlc3Qob3JpZ2luQXNVUkwuaG9zdG5hbWUpIHx8XG4gICAgIChvcmlnaW5Bc1VSTC5ob3N0bmFtZSA9PT0gJ2xvY2FsaG9zdCcgfHwgb3JpZ2luQXNVUkwuaG9zdG5hbWUuaW5jbHVkZXMoJ2xvY2FsaG9zdC4nKSkgfHxcbiAgICAgKG9yaWdpbkFzVVJMLmhvc3RuYW1lLmVuZHNXaXRoKCcubG9jYWxob3N0JykpKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIC8vIElmIGFueSBvdGhlciwgcmV0dXJuIGZhbHNlXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtc3VicmVzb3VyY2UtaW50ZWdyaXR5LyNkb2VzLXJlc3BvbnNlLW1hdGNoLW1ldGFkYXRhbGlzdFxuICogQHBhcmFtIHtVaW50OEFycmF5fSBieXRlc1xuICogQHBhcmFtIHtzdHJpbmd9IG1ldGFkYXRhTGlzdFxuICovXG5mdW5jdGlvbiBieXRlc01hdGNoIChieXRlcywgbWV0YWRhdGFMaXN0KSB7XG4gIC8vIElmIG5vZGUgaXMgbm90IGJ1aWx0IHdpdGggT3BlblNTTCBzdXBwb3J0LCB3ZSBjYW5ub3QgY2hlY2tcbiAgLy8gYSByZXF1ZXN0J3MgaW50ZWdyaXR5LCBzbyBhbGxvdyBpdCBieSBkZWZhdWx0ICh0aGUgc3BlYyB3aWxsXG4gIC8vIGFsbG93IHJlcXVlc3RzIGlmIGFuIGludmFsaWQgaGFzaCBpcyBnaXZlbiwgYXMgcHJlY2VkZW5jZSkuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBpZjogb25seSBpZiBub2RlIGlzIGJ1aWx0IHdpdGggLS13aXRob3V0LXNzbCAqL1xuICBpZiAoY3J5cHRvID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLy8gMS4gTGV0IHBhcnNlZE1ldGFkYXRhIGJlIHRoZSByZXN1bHQgb2YgcGFyc2luZyBtZXRhZGF0YUxpc3QuXG4gIGNvbnN0IHBhcnNlZE1ldGFkYXRhID0gcGFyc2VNZXRhZGF0YShtZXRhZGF0YUxpc3QpXG5cbiAgLy8gMi4gSWYgcGFyc2VkTWV0YWRhdGEgaXMgbm8gbWV0YWRhdGEsIHJldHVybiB0cnVlLlxuICBpZiAocGFyc2VkTWV0YWRhdGEgPT09ICdubyBtZXRhZGF0YScpIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLy8gMy4gSWYgcmVzcG9uc2UgaXMgbm90IGVsaWdpYmxlIGZvciBpbnRlZ3JpdHkgdmFsaWRhdGlvbiwgcmV0dXJuIGZhbHNlLlxuICAvLyBUT0RPXG5cbiAgLy8gNC4gSWYgcGFyc2VkTWV0YWRhdGEgaXMgdGhlIGVtcHR5IHNldCwgcmV0dXJuIHRydWUuXG4gIGlmIChwYXJzZWRNZXRhZGF0YS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLy8gNS4gTGV0IG1ldGFkYXRhIGJlIHRoZSByZXN1bHQgb2YgZ2V0dGluZyB0aGUgc3Ryb25nZXN0XG4gIC8vICAgIG1ldGFkYXRhIGZyb20gcGFyc2VkTWV0YWRhdGEuXG4gIGNvbnN0IHN0cm9uZ2VzdCA9IGdldFN0cm9uZ2VzdE1ldGFkYXRhKHBhcnNlZE1ldGFkYXRhKVxuICBjb25zdCBtZXRhZGF0YSA9IGZpbHRlck1ldGFkYXRhTGlzdEJ5QWxnb3JpdGhtKHBhcnNlZE1ldGFkYXRhLCBzdHJvbmdlc3QpXG5cbiAgLy8gNi4gRm9yIGVhY2ggaXRlbSBpbiBtZXRhZGF0YTpcbiAgZm9yIChjb25zdCBpdGVtIG9mIG1ldGFkYXRhKSB7XG4gICAgLy8gMS4gTGV0IGFsZ29yaXRobSBiZSB0aGUgYWxnIGNvbXBvbmVudCBvZiBpdGVtLlxuICAgIGNvbnN0IGFsZ29yaXRobSA9IGl0ZW0uYWxnb1xuXG4gICAgLy8gMi4gTGV0IGV4cGVjdGVkVmFsdWUgYmUgdGhlIHZhbCBjb21wb25lbnQgb2YgaXRlbS5cbiAgICBjb25zdCBleHBlY3RlZFZhbHVlID0gaXRlbS5oYXNoXG5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvY29tbWl0L2U0YzVjYzdhNWU0ODA5MzIyMDUyOGRmZGQxYzQwMTJkYzM4MzdhMGVcbiAgICAvLyBcImJlIGxpYmVyYWwgd2l0aCBwYWRkaW5nXCIuIFRoaXMgaXMgYW5ub3lpbmcsIGFuZCBpdCdzIG5vdCBldmVuIGluIHRoZSBzcGVjLlxuXG4gICAgLy8gMy4gTGV0IGFjdHVhbFZhbHVlIGJlIHRoZSByZXN1bHQgb2YgYXBwbHlpbmcgYWxnb3JpdGhtIHRvIGJ5dGVzLlxuICAgIGxldCBhY3R1YWxWYWx1ZSA9IGNyeXB0by5jcmVhdGVIYXNoKGFsZ29yaXRobSkudXBkYXRlKGJ5dGVzKS5kaWdlc3QoJ2Jhc2U2NCcpXG5cbiAgICBpZiAoYWN0dWFsVmFsdWVbYWN0dWFsVmFsdWUubGVuZ3RoIC0gMV0gPT09ICc9Jykge1xuICAgICAgaWYgKGFjdHVhbFZhbHVlW2FjdHVhbFZhbHVlLmxlbmd0aCAtIDJdID09PSAnPScpIHtcbiAgICAgICAgYWN0dWFsVmFsdWUgPSBhY3R1YWxWYWx1ZS5zbGljZSgwLCAtMilcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFjdHVhbFZhbHVlID0gYWN0dWFsVmFsdWUuc2xpY2UoMCwgLTEpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNC4gSWYgYWN0dWFsVmFsdWUgaXMgYSBjYXNlLXNlbnNpdGl2ZSBtYXRjaCBmb3IgZXhwZWN0ZWRWYWx1ZSxcbiAgICAvLyAgICByZXR1cm4gdHJ1ZS5cbiAgICBpZiAoY29tcGFyZUJhc2U2NE1peGVkKGFjdHVhbFZhbHVlLCBleHBlY3RlZFZhbHVlKSkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gIH1cblxuICAvLyA3LiBSZXR1cm4gZmFsc2UuXG4gIHJldHVybiBmYWxzZVxufVxuXG4vLyBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLXN1YnJlc291cmNlLWludGVncml0eS8jZ3JhbW1hcmRlZi1oYXNoLXdpdGgtb3B0aW9uc1xuLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL0NTUDIvI3NvdXJjZS1saXN0LXN5bnRheFxuLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzUyMzQjYXBwZW5kaXgtQi4xXG5jb25zdCBwYXJzZUhhc2hXaXRoT3B0aW9ucyA9IC8oPzxhbGdvPnNoYTI1NnxzaGEzODR8c2hhNTEyKS0oKD88aGFzaD5bQS1aYS16MC05Ky9dK3xbQS1aYS16MC05Xy1dKyk9ezAsMn0oPzpcXHN8JCkoICtbIS1+XSopPyk/L2lcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtc3VicmVzb3VyY2UtaW50ZWdyaXR5LyNwYXJzZS1tZXRhZGF0YVxuICogQHBhcmFtIHtzdHJpbmd9IG1ldGFkYXRhXG4gKi9cbmZ1bmN0aW9uIHBhcnNlTWV0YWRhdGEgKG1ldGFkYXRhKSB7XG4gIC8vIDEuIExldCByZXN1bHQgYmUgdGhlIGVtcHR5IHNldC5cbiAgLyoqIEB0eXBlIHt7IGFsZ286IHN0cmluZywgaGFzaDogc3RyaW5nIH1bXX0gKi9cbiAgY29uc3QgcmVzdWx0ID0gW11cblxuICAvLyAyLiBMZXQgZW1wdHkgYmUgZXF1YWwgdG8gdHJ1ZS5cbiAgbGV0IGVtcHR5ID0gdHJ1ZVxuXG4gIC8vIDMuIEZvciBlYWNoIHRva2VuIHJldHVybmVkIGJ5IHNwbGl0dGluZyBtZXRhZGF0YSBvbiBzcGFjZXM6XG4gIGZvciAoY29uc3QgdG9rZW4gb2YgbWV0YWRhdGEuc3BsaXQoJyAnKSkge1xuICAgIC8vIDEuIFNldCBlbXB0eSB0byBmYWxzZS5cbiAgICBlbXB0eSA9IGZhbHNlXG5cbiAgICAvLyAyLiBQYXJzZSB0b2tlbiBhcyBhIGhhc2gtd2l0aC1vcHRpb25zLlxuICAgIGNvbnN0IHBhcnNlZFRva2VuID0gcGFyc2VIYXNoV2l0aE9wdGlvbnMuZXhlYyh0b2tlbilcblxuICAgIC8vIDMuIElmIHRva2VuIGRvZXMgbm90IHBhcnNlLCBjb250aW51ZSB0byB0aGUgbmV4dCB0b2tlbi5cbiAgICBpZiAoXG4gICAgICBwYXJzZWRUb2tlbiA9PT0gbnVsbCB8fFxuICAgICAgcGFyc2VkVG9rZW4uZ3JvdXBzID09PSB1bmRlZmluZWQgfHxcbiAgICAgIHBhcnNlZFRva2VuLmdyb3Vwcy5hbGdvID09PSB1bmRlZmluZWRcbiAgICApIHtcbiAgICAgIC8vIE5vdGU6IENocm9taXVtIGJsb2NrcyB0aGUgcmVxdWVzdCBhdCB0aGlzIHBvaW50LCBidXQgRmlyZWZveFxuICAgICAgLy8gZ2l2ZXMgYSB3YXJuaW5nIHRoYXQgYW4gaW52YWxpZCBpbnRlZ3JpdHkgd2FzIGdpdmVuLiBUaGVcbiAgICAgIC8vIGNvcnJlY3QgYmVoYXZpb3IgaXMgdG8gaWdub3JlIHRoZXNlLCBhbmQgc3Vic2VxdWVudGx5IG5vdFxuICAgICAgLy8gY2hlY2sgdGhlIGludGVncml0eSBvZiB0aGUgcmVzb3VyY2UuXG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIC8vIDQuIExldCBhbGdvcml0aG0gYmUgdGhlIGhhc2gtYWxnbyBjb21wb25lbnQgb2YgdG9rZW4uXG4gICAgY29uc3QgYWxnb3JpdGhtID0gcGFyc2VkVG9rZW4uZ3JvdXBzLmFsZ28udG9Mb3dlckNhc2UoKVxuXG4gICAgLy8gNS4gSWYgYWxnb3JpdGhtIGlzIGEgaGFzaCBmdW5jdGlvbiByZWNvZ25pemVkIGJ5IHRoZSB1c2VyXG4gICAgLy8gICAgYWdlbnQsIGFkZCB0aGUgcGFyc2VkIHRva2VuIHRvIHJlc3VsdC5cbiAgICBpZiAoc3VwcG9ydGVkSGFzaGVzLmluY2x1ZGVzKGFsZ29yaXRobSkpIHtcbiAgICAgIHJlc3VsdC5wdXNoKHBhcnNlZFRva2VuLmdyb3VwcylcbiAgICB9XG4gIH1cblxuICAvLyA0LiBSZXR1cm4gbm8gbWV0YWRhdGEgaWYgZW1wdHkgaXMgdHJ1ZSwgb3RoZXJ3aXNlIHJldHVybiByZXN1bHQuXG4gIGlmIChlbXB0eSA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiAnbm8gbWV0YWRhdGEnXG4gIH1cblxuICByZXR1cm4gcmVzdWx0XG59XG5cbi8qKlxuICogQHBhcmFtIHt7IGFsZ286ICdzaGEyNTYnIHwgJ3NoYTM4NCcgfCAnc2hhNTEyJyB9W119IG1ldGFkYXRhTGlzdFxuICovXG5mdW5jdGlvbiBnZXRTdHJvbmdlc3RNZXRhZGF0YSAobWV0YWRhdGFMaXN0KSB7XG4gIC8vIExldCBhbGdvcml0aG0gYmUgdGhlIGFsZ28gY29tcG9uZW50IG9mIHRoZSBmaXJzdCBpdGVtIGluIG1ldGFkYXRhTGlzdC5cbiAgLy8gQ2FuIGJlIHNoYTI1NlxuICBsZXQgYWxnb3JpdGhtID0gbWV0YWRhdGFMaXN0WzBdLmFsZ29cbiAgLy8gSWYgdGhlIGFsZ29yaXRobSBpcyBzaGE1MTIsIHRoZW4gaXQgaXMgdGhlIHN0cm9uZ2VzdFxuICAvLyBhbmQgd2UgY2FuIHJldHVybiBpbW1lZGlhdGVseVxuICBpZiAoYWxnb3JpdGhtWzNdID09PSAnNScpIHtcbiAgICByZXR1cm4gYWxnb3JpdGhtXG4gIH1cblxuICBmb3IgKGxldCBpID0gMTsgaSA8IG1ldGFkYXRhTGlzdC5sZW5ndGg7ICsraSkge1xuICAgIGNvbnN0IG1ldGFkYXRhID0gbWV0YWRhdGFMaXN0W2ldXG4gICAgLy8gSWYgdGhlIGFsZ29yaXRobSBpcyBzaGE1MTIsIHRoZW4gaXQgaXMgdGhlIHN0cm9uZ2VzdFxuICAgIC8vIGFuZCB3ZSBjYW4gYnJlYWsgdGhlIGxvb3AgaW1tZWRpYXRlbHlcbiAgICBpZiAobWV0YWRhdGEuYWxnb1szXSA9PT0gJzUnKSB7XG4gICAgICBhbGdvcml0aG0gPSAnc2hhNTEyJ1xuICAgICAgYnJlYWtcbiAgICAvLyBJZiB0aGUgYWxnb3JpdGhtIGlzIHNoYTM4NCwgdGhlbiBhIHBvdGVudGlhbCBzaGEyNTYgb3Igc2hhMzg0IGlzIGlnbm9yZWRcbiAgICB9IGVsc2UgaWYgKGFsZ29yaXRobVszXSA9PT0gJzMnKSB7XG4gICAgICBjb250aW51ZVxuICAgIC8vIGFsZ29yaXRobSBpcyBzaGEyNTYsIGNoZWNrIGlmIGFsZ29yaXRobSBpcyBzaGEzODQgYW5kIGlmIHNvLCBzZXQgaXQgYXNcbiAgICAvLyB0aGUgc3Ryb25nZXN0XG4gICAgfSBlbHNlIGlmIChtZXRhZGF0YS5hbGdvWzNdID09PSAnMycpIHtcbiAgICAgIGFsZ29yaXRobSA9ICdzaGEzODQnXG4gICAgfVxuICB9XG4gIHJldHVybiBhbGdvcml0aG1cbn1cblxuZnVuY3Rpb24gZmlsdGVyTWV0YWRhdGFMaXN0QnlBbGdvcml0aG0gKG1ldGFkYXRhTGlzdCwgYWxnb3JpdGhtKSB7XG4gIGlmIChtZXRhZGF0YUxpc3QubGVuZ3RoID09PSAxKSB7XG4gICAgcmV0dXJuIG1ldGFkYXRhTGlzdFxuICB9XG5cbiAgbGV0IHBvcyA9IDBcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBtZXRhZGF0YUxpc3QubGVuZ3RoOyArK2kpIHtcbiAgICBpZiAobWV0YWRhdGFMaXN0W2ldLmFsZ28gPT09IGFsZ29yaXRobSkge1xuICAgICAgbWV0YWRhdGFMaXN0W3BvcysrXSA9IG1ldGFkYXRhTGlzdFtpXVxuICAgIH1cbiAgfVxuXG4gIG1ldGFkYXRhTGlzdC5sZW5ndGggPSBwb3NcblxuICByZXR1cm4gbWV0YWRhdGFMaXN0XG59XG5cbi8qKlxuICogQ29tcGFyZXMgdHdvIGJhc2U2NCBzdHJpbmdzLCBhbGxvd2luZyBmb3IgYmFzZTY0dXJsXG4gKiBpbiB0aGUgc2Vjb25kIHN0cmluZy5cbiAqXG4qIEBwYXJhbSB7c3RyaW5nfSBhY3R1YWxWYWx1ZSBhbHdheXMgYmFzZTY0XG4gKiBAcGFyYW0ge3N0cmluZ30gZXhwZWN0ZWRWYWx1ZSBiYXNlNjQgb3IgYmFzZTY0dXJsXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAqL1xuZnVuY3Rpb24gY29tcGFyZUJhc2U2NE1peGVkIChhY3R1YWxWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSkge1xuICBpZiAoYWN0dWFsVmFsdWUubGVuZ3RoICE9PSBleHBlY3RlZFZhbHVlLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYWN0dWFsVmFsdWUubGVuZ3RoOyArK2kpIHtcbiAgICBpZiAoYWN0dWFsVmFsdWVbaV0gIT09IGV4cGVjdGVkVmFsdWVbaV0pIHtcbiAgICAgIGlmIChcbiAgICAgICAgKGFjdHVhbFZhbHVlW2ldID09PSAnKycgJiYgZXhwZWN0ZWRWYWx1ZVtpXSA9PT0gJy0nKSB8fFxuICAgICAgICAoYWN0dWFsVmFsdWVbaV0gPT09ICcvJyAmJiBleHBlY3RlZFZhbHVlW2ldID09PSAnXycpXG4gICAgICApIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtdXBncmFkZS1pbnNlY3VyZS1yZXF1ZXN0cy8jdXBncmFkZS1yZXF1ZXN0XG5mdW5jdGlvbiB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwgKHJlcXVlc3QpIHtcbiAgLy8gVE9ET1xufVxuXG4vKipcbiAqIEBsaW5rIHtodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9vcmlnaW4uaHRtbCNzYW1lLW9yaWdpbn1cbiAqIEBwYXJhbSB7VVJMfSBBXG4gKiBAcGFyYW0ge1VSTH0gQlxuICovXG5mdW5jdGlvbiBzYW1lT3JpZ2luIChBLCBCKSB7XG4gIC8vIDEuIElmIEEgYW5kIEIgYXJlIHRoZSBzYW1lIG9wYXF1ZSBvcmlnaW4sIHRoZW4gcmV0dXJuIHRydWUuXG4gIGlmIChBLm9yaWdpbiA9PT0gQi5vcmlnaW4gJiYgQS5vcmlnaW4gPT09ICdudWxsJykge1xuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvLyAyLiBJZiBBIGFuZCBCIGFyZSBib3RoIHR1cGxlIG9yaWdpbnMgYW5kIHRoZWlyIHNjaGVtZXMsXG4gIC8vICAgIGhvc3RzLCBhbmQgcG9ydCBhcmUgaWRlbnRpY2FsLCB0aGVuIHJldHVybiB0cnVlLlxuICBpZiAoQS5wcm90b2NvbCA9PT0gQi5wcm90b2NvbCAmJiBBLmhvc3RuYW1lID09PSBCLmhvc3RuYW1lICYmIEEucG9ydCA9PT0gQi5wb3J0KSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8vIDMuIFJldHVybiBmYWxzZS5cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmZ1bmN0aW9uIGNyZWF0ZURlZmVycmVkUHJvbWlzZSAoKSB7XG4gIGxldCByZXNcbiAgbGV0IHJlalxuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHJlcyA9IHJlc29sdmVcbiAgICByZWogPSByZWplY3RcbiAgfSlcblxuICByZXR1cm4geyBwcm9taXNlLCByZXNvbHZlOiByZXMsIHJlamVjdDogcmVqIH1cbn1cblxuZnVuY3Rpb24gaXNBYm9ydGVkIChmZXRjaFBhcmFtcykge1xuICByZXR1cm4gZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zdGF0ZSA9PT0gJ2Fib3J0ZWQnXG59XG5cbmZ1bmN0aW9uIGlzQ2FuY2VsbGVkIChmZXRjaFBhcmFtcykge1xuICByZXR1cm4gZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zdGF0ZSA9PT0gJ2Fib3J0ZWQnIHx8XG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zdGF0ZSA9PT0gJ3Rlcm1pbmF0ZWQnXG59XG5cbmNvbnN0IG5vcm1hbGl6ZU1ldGhvZFJlY29yZCA9IHtcbiAgZGVsZXRlOiAnREVMRVRFJyxcbiAgREVMRVRFOiAnREVMRVRFJyxcbiAgZ2V0OiAnR0VUJyxcbiAgR0VUOiAnR0VUJyxcbiAgaGVhZDogJ0hFQUQnLFxuICBIRUFEOiAnSEVBRCcsXG4gIG9wdGlvbnM6ICdPUFRJT05TJyxcbiAgT1BUSU9OUzogJ09QVElPTlMnLFxuICBwb3N0OiAnUE9TVCcsXG4gIFBPU1Q6ICdQT1NUJyxcbiAgcHV0OiAnUFVUJyxcbiAgUFVUOiAnUFVUJ1xufVxuXG4vLyBOb3RlOiBvYmplY3QgcHJvdG90eXBlcyBzaG91bGQgbm90IGJlIGFibGUgdG8gYmUgcmVmZXJlbmNlZC4gZS5nLiBgT2JqZWN0I2hhc093blByb3BlcnR5YC5cbk9iamVjdC5zZXRQcm90b3R5cGVPZihub3JtYWxpemVNZXRob2RSZWNvcmQsIG51bGwpXG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1tZXRob2Qtbm9ybWFsaXplXG4gKiBAcGFyYW0ge3N0cmluZ30gbWV0aG9kXG4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZU1ldGhvZCAobWV0aG9kKSB7XG4gIHJldHVybiBub3JtYWxpemVNZXRob2RSZWNvcmRbbWV0aG9kLnRvTG93ZXJDYXNlKCldID8/IG1ldGhvZFxufVxuXG4vLyBodHRwczovL2luZnJhLnNwZWMud2hhdHdnLm9yZy8jc2VyaWFsaXplLWEtamF2YXNjcmlwdC12YWx1ZS10by1hLWpzb24tc3RyaW5nXG5mdW5jdGlvbiBzZXJpYWxpemVKYXZhc2NyaXB0VmFsdWVUb0pTT05TdHJpbmcgKHZhbHVlKSB7XG4gIC8vIDEuIExldCByZXN1bHQgYmUgPyBDYWxsKCVKU09OLnN0cmluZ2lmeSUsIHVuZGVmaW5lZCwgXHUwMEFCIHZhbHVlIFx1MDBCQikuXG4gIGNvbnN0IHJlc3VsdCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKVxuXG4gIC8vIDIuIElmIHJlc3VsdCBpcyB1bmRlZmluZWQsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIGlmIChyZXN1bHQgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1ZhbHVlIGlzIG5vdCBKU09OIHNlcmlhbGl6YWJsZScpXG4gIH1cblxuICAvLyAzLiBBc3NlcnQ6IHJlc3VsdCBpcyBhIHN0cmluZy5cbiAgYXNzZXJ0KHR5cGVvZiByZXN1bHQgPT09ICdzdHJpbmcnKVxuXG4gIC8vIDQuIFJldHVybiByZXN1bHQuXG4gIHJldHVybiByZXN1bHRcbn1cblxuLy8gaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy0lMjVpdGVyYXRvcnByb3RvdHlwZSUyNS1vYmplY3RcbmNvbnN0IGVzSXRlcmF0b3JQcm90b3R5cGUgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoT2JqZWN0LmdldFByb3RvdHlwZU9mKFtdW1N5bWJvbC5pdGVyYXRvcl0oKSkpXG5cbi8qKlxuICogQHNlZSBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2Rmbi1pdGVyYXRvci1wcm90b3R5cGUtb2JqZWN0XG4gKiBAcGFyYW0geygpID0+IHVua25vd25bXX0gaXRlcmF0b3JcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIG5hbWUgb2YgdGhlIGluc3RhbmNlXG4gKiBAcGFyYW0geydrZXknfCd2YWx1ZSd8J2tleSt2YWx1ZSd9IGtpbmRcbiAqL1xuZnVuY3Rpb24gbWFrZUl0ZXJhdG9yIChpdGVyYXRvciwgbmFtZSwga2luZCkge1xuICBjb25zdCBvYmplY3QgPSB7XG4gICAgaW5kZXg6IDAsXG4gICAga2luZCxcbiAgICB0YXJnZXQ6IGl0ZXJhdG9yXG4gIH1cblxuICBjb25zdCBpID0ge1xuICAgIG5leHQgKCkge1xuICAgICAgLy8gMS4gTGV0IGludGVyZmFjZSBiZSB0aGUgaW50ZXJmYWNlIGZvciB3aGljaCB0aGUgaXRlcmF0b3IgcHJvdG90eXBlIG9iamVjdCBleGlzdHMuXG5cbiAgICAgIC8vIDIuIExldCB0aGlzVmFsdWUgYmUgdGhlIHRoaXMgdmFsdWUuXG5cbiAgICAgIC8vIDMuIExldCBvYmplY3QgYmUgPyBUb09iamVjdCh0aGlzVmFsdWUpLlxuXG4gICAgICAvLyA0LiBJZiBvYmplY3QgaXMgYSBwbGF0Zm9ybSBvYmplY3QsIHRoZW4gcGVyZm9ybSBhIHNlY3VyaXR5XG4gICAgICAvLyAgICBjaGVjaywgcGFzc2luZzpcblxuICAgICAgLy8gNS4gSWYgb2JqZWN0IGlzIG5vdCBhIGRlZmF1bHQgaXRlcmF0b3Igb2JqZWN0IGZvciBpbnRlcmZhY2UsXG4gICAgICAvLyAgICB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzKSAhPT0gaSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgIGAnbmV4dCcgY2FsbGVkIG9uIGFuIG9iamVjdCB0aGF0IGRvZXMgbm90IGltcGxlbWVudCBpbnRlcmZhY2UgJHtuYW1lfSBJdGVyYXRvci5gXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gNi4gTGV0IGluZGV4IGJlIG9iamVjdFx1MjAxOXMgaW5kZXguXG4gICAgICAvLyA3LiBMZXQga2luZCBiZSBvYmplY3RcdTIwMTlzIGtpbmQuXG4gICAgICAvLyA4LiBMZXQgdmFsdWVzIGJlIG9iamVjdFx1MjAxOXMgdGFyZ2V0J3MgdmFsdWUgcGFpcnMgdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAgY29uc3QgeyBpbmRleCwga2luZCwgdGFyZ2V0IH0gPSBvYmplY3RcbiAgICAgIGNvbnN0IHZhbHVlcyA9IHRhcmdldCgpXG5cbiAgICAgIC8vIDkuIExldCBsZW4gYmUgdGhlIGxlbmd0aCBvZiB2YWx1ZXMuXG4gICAgICBjb25zdCBsZW4gPSB2YWx1ZXMubGVuZ3RoXG5cbiAgICAgIC8vIDEwLiBJZiBpbmRleCBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gbGVuLCB0aGVuIHJldHVyblxuICAgICAgLy8gICAgIENyZWF0ZUl0ZXJSZXN1bHRPYmplY3QodW5kZWZpbmVkLCB0cnVlKS5cbiAgICAgIGlmIChpbmRleCA+PSBsZW4pIHtcbiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IHVuZGVmaW5lZCwgZG9uZTogdHJ1ZSB9XG4gICAgICB9XG5cbiAgICAgIC8vIDExLiBMZXQgcGFpciBiZSB0aGUgZW50cnkgaW4gdmFsdWVzIGF0IGluZGV4IGluZGV4LlxuICAgICAgY29uc3QgcGFpciA9IHZhbHVlc1tpbmRleF1cblxuICAgICAgLy8gMTIuIFNldCBvYmplY3RcdTIwMTlzIGluZGV4IHRvIGluZGV4ICsgMS5cbiAgICAgIG9iamVjdC5pbmRleCA9IGluZGV4ICsgMVxuXG4gICAgICAvLyAxMy4gUmV0dXJuIHRoZSBpdGVyYXRvciByZXN1bHQgZm9yIHBhaXIgYW5kIGtpbmQuXG4gICAgICByZXR1cm4gaXRlcmF0b3JSZXN1bHQocGFpciwga2luZClcbiAgICB9LFxuICAgIC8vIFRoZSBjbGFzcyBzdHJpbmcgb2YgYW4gaXRlcmF0b3IgcHJvdG90eXBlIG9iamVjdCBmb3IgYSBnaXZlbiBpbnRlcmZhY2UgaXMgdGhlXG4gICAgLy8gcmVzdWx0IG9mIGNvbmNhdGVuYXRpbmcgdGhlIGlkZW50aWZpZXIgb2YgdGhlIGludGVyZmFjZSBhbmQgdGhlIHN0cmluZyBcIiBJdGVyYXRvclwiLlxuICAgIFtTeW1ib2wudG9TdHJpbmdUYWddOiBgJHtuYW1lfSBJdGVyYXRvcmBcbiAgfVxuXG4gIC8vIFRoZSBbW1Byb3RvdHlwZV1dIGludGVybmFsIHNsb3Qgb2YgYW4gaXRlcmF0b3IgcHJvdG90eXBlIG9iamVjdCBtdXN0IGJlICVJdGVyYXRvclByb3RvdHlwZSUuXG4gIE9iamVjdC5zZXRQcm90b3R5cGVPZihpLCBlc0l0ZXJhdG9yUHJvdG90eXBlKVxuICAvLyBlc0l0ZXJhdG9yUHJvdG90eXBlIG5lZWRzIHRvIGJlIHRoZSBwcm90b3R5cGUgb2YgaVxuICAvLyB3aGljaCBpcyB0aGUgcHJvdG90eXBlIG9mIGFuIGVtcHR5IG9iamVjdC4gWWVzLCBpdCdzIGNvbmZ1c2luZy5cbiAgcmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZih7fSwgaSlcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNpdGVyYXRvci1yZXN1bHRcbmZ1bmN0aW9uIGl0ZXJhdG9yUmVzdWx0IChwYWlyLCBraW5kKSB7XG4gIGxldCByZXN1bHRcblxuICAvLyAxLiBMZXQgcmVzdWx0IGJlIGEgdmFsdWUgZGV0ZXJtaW5lZCBieSB0aGUgdmFsdWUgb2Yga2luZDpcbiAgc3dpdGNoIChraW5kKSB7XG4gICAgY2FzZSAna2V5Jzoge1xuICAgICAgLy8gMS4gTGV0IGlkbEtleSBiZSBwYWlyXHUyMDE5cyBrZXkuXG4gICAgICAvLyAyLiBMZXQga2V5IGJlIHRoZSByZXN1bHQgb2YgY29udmVydGluZyBpZGxLZXkgdG8gYW5cbiAgICAgIC8vICAgIEVDTUFTY3JpcHQgdmFsdWUuXG4gICAgICAvLyAzLiByZXN1bHQgaXMga2V5LlxuICAgICAgcmVzdWx0ID0gcGFpclswXVxuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY2FzZSAndmFsdWUnOiB7XG4gICAgICAvLyAxLiBMZXQgaWRsVmFsdWUgYmUgcGFpclx1MjAxOXMgdmFsdWUuXG4gICAgICAvLyAyLiBMZXQgdmFsdWUgYmUgdGhlIHJlc3VsdCBvZiBjb252ZXJ0aW5nIGlkbFZhbHVlIHRvXG4gICAgICAvLyAgICBhbiBFQ01BU2NyaXB0IHZhbHVlLlxuICAgICAgLy8gMy4gcmVzdWx0IGlzIHZhbHVlLlxuICAgICAgcmVzdWx0ID0gcGFpclsxXVxuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY2FzZSAna2V5K3ZhbHVlJzoge1xuICAgICAgLy8gMS4gTGV0IGlkbEtleSBiZSBwYWlyXHUyMDE5cyBrZXkuXG4gICAgICAvLyAyLiBMZXQgaWRsVmFsdWUgYmUgcGFpclx1MjAxOXMgdmFsdWUuXG4gICAgICAvLyAzLiBMZXQga2V5IGJlIHRoZSByZXN1bHQgb2YgY29udmVydGluZyBpZGxLZXkgdG8gYW5cbiAgICAgIC8vICAgIEVDTUFTY3JpcHQgdmFsdWUuXG4gICAgICAvLyA0LiBMZXQgdmFsdWUgYmUgdGhlIHJlc3VsdCBvZiBjb252ZXJ0aW5nIGlkbFZhbHVlIHRvXG4gICAgICAvLyAgICBhbiBFQ01BU2NyaXB0IHZhbHVlLlxuICAgICAgLy8gNS4gTGV0IGFycmF5IGJlICEgQXJyYXlDcmVhdGUoMikuXG4gICAgICAvLyA2LiBDYWxsICEgQ3JlYXRlRGF0YVByb3BlcnR5KGFycmF5LCBcIjBcIiwga2V5KS5cbiAgICAgIC8vIDcuIENhbGwgISBDcmVhdGVEYXRhUHJvcGVydHkoYXJyYXksIFwiMVwiLCB2YWx1ZSkuXG4gICAgICAvLyA4LiByZXN1bHQgaXMgYXJyYXkuXG4gICAgICByZXN1bHQgPSBwYWlyXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIC8vIDIuIFJldHVybiBDcmVhdGVJdGVyUmVzdWx0T2JqZWN0KHJlc3VsdCwgZmFsc2UpLlxuICByZXR1cm4geyB2YWx1ZTogcmVzdWx0LCBkb25lOiBmYWxzZSB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jYm9keS1mdWxseS1yZWFkXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGZ1bGx5UmVhZEJvZHkgKGJvZHksIHByb2Nlc3NCb2R5LCBwcm9jZXNzQm9keUVycm9yKSB7XG4gIC8vIDEuIElmIHRhc2tEZXN0aW5hdGlvbiBpcyBudWxsLCB0aGVuIHNldCB0YXNrRGVzdGluYXRpb24gdG9cbiAgLy8gICAgdGhlIHJlc3VsdCBvZiBzdGFydGluZyBhIG5ldyBwYXJhbGxlbCBxdWV1ZS5cblxuICAvLyAyLiBMZXQgc3VjY2Vzc1N0ZXBzIGdpdmVuIGEgYnl0ZSBzZXF1ZW5jZSBieXRlcyBiZSB0byBxdWV1ZSBhXG4gIC8vICAgIGZldGNoIHRhc2sgdG8gcnVuIHByb2Nlc3NCb2R5IGdpdmVuIGJ5dGVzLCB3aXRoIHRhc2tEZXN0aW5hdGlvbi5cbiAgY29uc3Qgc3VjY2Vzc1N0ZXBzID0gcHJvY2Vzc0JvZHlcblxuICAvLyAzLiBMZXQgZXJyb3JTdGVwcyBiZSB0byBxdWV1ZSBhIGZldGNoIHRhc2sgdG8gcnVuIHByb2Nlc3NCb2R5RXJyb3IsXG4gIC8vICAgIHdpdGggdGFza0Rlc3RpbmF0aW9uLlxuICBjb25zdCBlcnJvclN0ZXBzID0gcHJvY2Vzc0JvZHlFcnJvclxuXG4gIC8vIDQuIExldCByZWFkZXIgYmUgdGhlIHJlc3VsdCBvZiBnZXR0aW5nIGEgcmVhZGVyIGZvciBib2R5XHUyMDE5cyBzdHJlYW0uXG4gIC8vICAgIElmIHRoYXQgdGhyZXcgYW4gZXhjZXB0aW9uLCB0aGVuIHJ1biBlcnJvclN0ZXBzIHdpdGggdGhhdFxuICAvLyAgICBleGNlcHRpb24gYW5kIHJldHVybi5cbiAgbGV0IHJlYWRlclxuXG4gIHRyeSB7XG4gICAgcmVhZGVyID0gYm9keS5zdHJlYW0uZ2V0UmVhZGVyKClcbiAgfSBjYXRjaCAoZSkge1xuICAgIGVycm9yU3RlcHMoZSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIC8vIDUuIFJlYWQgYWxsIGJ5dGVzIGZyb20gcmVhZGVyLCBnaXZlbiBzdWNjZXNzU3RlcHMgYW5kIGVycm9yU3RlcHMuXG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcmVhZEFsbEJ5dGVzKHJlYWRlcilcbiAgICBzdWNjZXNzU3RlcHMocmVzdWx0KVxuICB9IGNhdGNoIChlKSB7XG4gICAgZXJyb3JTdGVwcyhlKVxuICB9XG59XG5cbi8qKiBAdHlwZSB7UmVhZGFibGVTdHJlYW19ICovXG5sZXQgUmVhZGFibGVTdHJlYW0gPSBnbG9iYWxUaGlzLlJlYWRhYmxlU3RyZWFtXG5cbmZ1bmN0aW9uIGlzUmVhZGFibGVTdHJlYW1MaWtlIChzdHJlYW0pIHtcbiAgaWYgKCFSZWFkYWJsZVN0cmVhbSkge1xuICAgIFJlYWRhYmxlU3RyZWFtID0gcmVxdWlyZSgnc3RyZWFtL3dlYicpLlJlYWRhYmxlU3RyZWFtXG4gIH1cblxuICByZXR1cm4gc3RyZWFtIGluc3RhbmNlb2YgUmVhZGFibGVTdHJlYW0gfHwgKFxuICAgIHN0cmVhbVtTeW1ib2wudG9TdHJpbmdUYWddID09PSAnUmVhZGFibGVTdHJlYW0nICYmXG4gICAgdHlwZW9mIHN0cmVhbS50ZWUgPT09ICdmdW5jdGlvbidcbiAgKVxufVxuXG5jb25zdCBNQVhJTVVNX0FSR1VNRU5UX0xFTkdUSCA9IDY1NTM1XG5cbi8qKlxuICogQHNlZSBodHRwczovL2luZnJhLnNwZWMud2hhdHdnLm9yZy8jaXNvbW9ycGhpYy1kZWNvZGVcbiAqIEBwYXJhbSB7bnVtYmVyW118VWludDhBcnJheX0gaW5wdXRcbiAqL1xuZnVuY3Rpb24gaXNvbW9ycGhpY0RlY29kZSAoaW5wdXQpIHtcbiAgLy8gMS4gVG8gaXNvbW9ycGhpYyBkZWNvZGUgYSBieXRlIHNlcXVlbmNlIGlucHV0LCByZXR1cm4gYSBzdHJpbmcgd2hvc2UgY29kZSBwb2ludFxuICAvLyAgICBsZW5ndGggaXMgZXF1YWwgdG8gaW5wdXRcdTIwMTlzIGxlbmd0aCBhbmQgd2hvc2UgY29kZSBwb2ludHMgaGF2ZSB0aGUgc2FtZSB2YWx1ZXNcbiAgLy8gICAgYXMgdGhlIHZhbHVlcyBvZiBpbnB1dFx1MjAxOXMgYnl0ZXMsIGluIHRoZSBzYW1lIG9yZGVyLlxuXG4gIGlmIChpbnB1dC5sZW5ndGggPCBNQVhJTVVNX0FSR1VNRU5UX0xFTkdUSCkge1xuICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLmlucHV0KVxuICB9XG5cbiAgcmV0dXJuIGlucHV0LnJlZHVjZSgocHJldmlvdXMsIGN1cnJlbnQpID0+IHByZXZpb3VzICsgU3RyaW5nLmZyb21DaGFyQ29kZShjdXJyZW50KSwgJycpXG59XG5cbi8qKlxuICogQHBhcmFtIHtSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VWludDhBcnJheT59IGNvbnRyb2xsZXJcbiAqL1xuZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1DbG9zZSAoY29udHJvbGxlcikge1xuICB0cnkge1xuICAgIGNvbnRyb2xsZXIuY2xvc2UoKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBUT0RPOiBhZGQgY29tbWVudCBleHBsYWluaW5nIHdoeSB0aGlzIGVycm9yIG9jY3Vycy5cbiAgICBpZiAoIWVyci5tZXNzYWdlLmluY2x1ZGVzKCdDb250cm9sbGVyIGlzIGFscmVhZHkgY2xvc2VkJykpIHtcbiAgICAgIHRocm93IGVyclxuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9pbmZyYS5zcGVjLndoYXR3Zy5vcmcvI2lzb21vcnBoaWMtZW5jb2RlXG4gKiBAcGFyYW0ge3N0cmluZ30gaW5wdXRcbiAqL1xuZnVuY3Rpb24gaXNvbW9ycGhpY0VuY29kZSAoaW5wdXQpIHtcbiAgLy8gMS4gQXNzZXJ0OiBpbnB1dCBjb250YWlucyBubyBjb2RlIHBvaW50cyBncmVhdGVyIHRoYW4gVSswMEZGLlxuICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7XG4gICAgYXNzZXJ0KGlucHV0LmNoYXJDb2RlQXQoaSkgPD0gMHhGRilcbiAgfVxuXG4gIC8vIDIuIFJldHVybiBhIGJ5dGUgc2VxdWVuY2Ugd2hvc2UgbGVuZ3RoIGlzIGVxdWFsIHRvIGlucHV0XHUyMDE5cyBjb2RlXG4gIC8vICAgIHBvaW50IGxlbmd0aCBhbmQgd2hvc2UgYnl0ZXMgaGF2ZSB0aGUgc2FtZSB2YWx1ZXMgYXMgdGhlXG4gIC8vICAgIHZhbHVlcyBvZiBpbnB1dFx1MjAxOXMgY29kZSBwb2ludHMsIGluIHRoZSBzYW1lIG9yZGVyXG4gIHJldHVybiBpbnB1dFxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9zdHJlYW1zLnNwZWMud2hhdHdnLm9yZy8jcmVhZGFibGVzdHJlYW1kZWZhdWx0cmVhZGVyLXJlYWQtYWxsLWJ5dGVzXG4gKiBAc2VlIGh0dHBzOi8vc3RyZWFtcy5zcGVjLndoYXR3Zy5vcmcvI3JlYWQtbG9vcFxuICogQHBhcmFtIHtSZWFkYWJsZVN0cmVhbURlZmF1bHRSZWFkZXJ9IHJlYWRlclxuICovXG5hc3luYyBmdW5jdGlvbiByZWFkQWxsQnl0ZXMgKHJlYWRlcikge1xuICBjb25zdCBieXRlcyA9IFtdXG4gIGxldCBieXRlTGVuZ3RoID0gMFxuXG4gIHdoaWxlICh0cnVlKSB7XG4gICAgY29uc3QgeyBkb25lLCB2YWx1ZTogY2h1bmsgfSA9IGF3YWl0IHJlYWRlci5yZWFkKClcblxuICAgIGlmIChkb25lKSB7XG4gICAgICAvLyAxLiBDYWxsIHN1Y2Nlc3NTdGVwcyB3aXRoIGJ5dGVzLlxuICAgICAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoYnl0ZXMsIGJ5dGVMZW5ndGgpXG4gICAgfVxuXG4gICAgLy8gMS4gSWYgY2h1bmsgaXMgbm90IGEgVWludDhBcnJheSBvYmplY3QsIGNhbGwgZmFpbHVyZVN0ZXBzXG4gICAgLy8gICAgd2l0aCBhIFR5cGVFcnJvciBhbmQgYWJvcnQgdGhlc2Ugc3RlcHMuXG4gICAgaWYgKCFpc1VpbnQ4QXJyYXkoY2h1bmspKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdSZWNlaXZlZCBub24tVWludDhBcnJheSBjaHVuaycpXG4gICAgfVxuXG4gICAgLy8gMi4gQXBwZW5kIHRoZSBieXRlcyByZXByZXNlbnRlZCBieSBjaHVuayB0byBieXRlcy5cbiAgICBieXRlcy5wdXNoKGNodW5rKVxuICAgIGJ5dGVMZW5ndGggKz0gY2h1bmsubGVuZ3RoXG5cbiAgICAvLyAzLiBSZWFkLWxvb3AgZ2l2ZW4gcmVhZGVyLCBieXRlcywgc3VjY2Vzc1N0ZXBzLCBhbmQgZmFpbHVyZVN0ZXBzLlxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaXMtbG9jYWxcbiAqIEBwYXJhbSB7VVJMfSB1cmxcbiAqL1xuZnVuY3Rpb24gdXJsSXNMb2NhbCAodXJsKSB7XG4gIGFzc2VydCgncHJvdG9jb2wnIGluIHVybCkgLy8gZW5zdXJlIGl0J3MgYSB1cmwgb2JqZWN0XG5cbiAgY29uc3QgcHJvdG9jb2wgPSB1cmwucHJvdG9jb2xcblxuICByZXR1cm4gcHJvdG9jb2wgPT09ICdhYm91dDonIHx8IHByb3RvY29sID09PSAnYmxvYjonIHx8IHByb3RvY29sID09PSAnZGF0YTonXG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd8VVJMfSB1cmxcbiAqL1xuZnVuY3Rpb24gdXJsSGFzSHR0cHNTY2hlbWUgKHVybCkge1xuICBpZiAodHlwZW9mIHVybCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gdXJsLnN0YXJ0c1dpdGgoJ2h0dHBzOicpXG4gIH1cblxuICByZXR1cm4gdXJsLnByb3RvY29sID09PSAnaHR0cHM6J1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtc2NoZW1lXG4gKiBAcGFyYW0ge1VSTH0gdXJsXG4gKi9cbmZ1bmN0aW9uIHVybElzSHR0cEh0dHBzU2NoZW1lICh1cmwpIHtcbiAgYXNzZXJ0KCdwcm90b2NvbCcgaW4gdXJsKSAvLyBlbnN1cmUgaXQncyBhIHVybCBvYmplY3RcblxuICBjb25zdCBwcm90b2NvbCA9IHVybC5wcm90b2NvbFxuXG4gIHJldHVybiBwcm90b2NvbCA9PT0gJ2h0dHA6JyB8fCBwcm90b2NvbCA9PT0gJ2h0dHBzOidcbn1cblxuLyoqXG4gKiBGZXRjaCBzdXBwb3J0cyBub2RlID49IDE2LjguMCwgYnV0IE9iamVjdC5oYXNPd24gd2FzIGFkZGVkIGluIHYxNi45LjAuXG4gKi9cbmNvbnN0IGhhc093biA9IE9iamVjdC5oYXNPd24gfHwgKChkaWN0LCBrZXkpID0+IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkaWN0LCBrZXkpKVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgaXNBYm9ydGVkLFxuICBpc0NhbmNlbGxlZCxcbiAgY3JlYXRlRGVmZXJyZWRQcm9taXNlLFxuICBSZWFkYWJsZVN0cmVhbUZyb20sXG4gIHRvVVNWU3RyaW5nLFxuICB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwsXG4gIGNvYXJzZW5lZFNoYXJlZEN1cnJlbnRUaW1lLFxuICBkZXRlcm1pbmVSZXF1ZXN0c1JlZmVycmVyLFxuICBtYWtlUG9saWN5Q29udGFpbmVyLFxuICBjbG9uZVBvbGljeUNvbnRhaW5lcixcbiAgYXBwZW5kRmV0Y2hNZXRhZGF0YSxcbiAgYXBwZW5kUmVxdWVzdE9yaWdpbkhlYWRlcixcbiAgVEFPQ2hlY2ssXG4gIGNvcnNDaGVjayxcbiAgY3Jvc3NPcmlnaW5SZXNvdXJjZVBvbGljeUNoZWNrLFxuICBjcmVhdGVPcGFxdWVUaW1pbmdJbmZvLFxuICBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0LFxuICBpc1ZhbGlkSFRUUFRva2VuLFxuICByZXF1ZXN0QmFkUG9ydCxcbiAgcmVxdWVzdEN1cnJlbnRVUkwsXG4gIHJlc3BvbnNlVVJMLFxuICByZXNwb25zZUxvY2F0aW9uVVJMLFxuICBpc0Jsb2JMaWtlLFxuICBpc1VSTFBvdGVudGlhbGx5VHJ1c3R3b3J0aHksXG4gIGlzVmFsaWRSZWFzb25QaHJhc2UsXG4gIHNhbWVPcmlnaW4sXG4gIG5vcm1hbGl6ZU1ldGhvZCxcbiAgc2VyaWFsaXplSmF2YXNjcmlwdFZhbHVlVG9KU09OU3RyaW5nLFxuICBtYWtlSXRlcmF0b3IsXG4gIGlzVmFsaWRIZWFkZXJOYW1lLFxuICBpc1ZhbGlkSGVhZGVyVmFsdWUsXG4gIGhhc093bixcbiAgaXNFcnJvckxpa2UsXG4gIGZ1bGx5UmVhZEJvZHksXG4gIGJ5dGVzTWF0Y2gsXG4gIGlzUmVhZGFibGVTdHJlYW1MaWtlLFxuICByZWFkYWJsZVN0cmVhbUNsb3NlLFxuICBpc29tb3JwaGljRW5jb2RlLFxuICBpc29tb3JwaGljRGVjb2RlLFxuICB1cmxJc0xvY2FsLFxuICB1cmxIYXNIdHRwc1NjaGVtZSxcbiAgdXJsSXNIdHRwSHR0cHNTY2hlbWUsXG4gIHJlYWRBbGxCeXRlcyxcbiAgbm9ybWFsaXplTWV0aG9kUmVjb3JkLFxuICBwYXJzZU1ldGFkYXRhXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrVXJsOiBTeW1ib2woJ3VybCcpLFxuICBrSGVhZGVyczogU3ltYm9sKCdoZWFkZXJzJyksXG4gIGtTaWduYWw6IFN5bWJvbCgnc2lnbmFsJyksXG4gIGtTdGF0ZTogU3ltYm9sKCdzdGF0ZScpLFxuICBrR3VhcmQ6IFN5bWJvbCgnZ3VhcmQnKSxcbiAga1JlYWxtOiBTeW1ib2woJ3JlYWxtJylcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyB0eXBlcyB9ID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IGhhc093biwgdG9VU1ZTdHJpbmcgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5cbi8qKiBAdHlwZSB7aW1wb3J0KCcuLi8uLi90eXBlcy93ZWJpZGwnKS5XZWJpZGx9ICovXG5jb25zdCB3ZWJpZGwgPSB7fVxud2ViaWRsLmNvbnZlcnRlcnMgPSB7fVxud2ViaWRsLnV0aWwgPSB7fVxud2ViaWRsLmVycm9ycyA9IHt9XG5cbndlYmlkbC5lcnJvcnMuZXhjZXB0aW9uID0gZnVuY3Rpb24gKG1lc3NhZ2UpIHtcbiAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoYCR7bWVzc2FnZS5oZWFkZXJ9OiAke21lc3NhZ2UubWVzc2FnZX1gKVxufVxuXG53ZWJpZGwuZXJyb3JzLmNvbnZlcnNpb25GYWlsZWQgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICBjb25zdCBwbHVyYWwgPSBjb250ZXh0LnR5cGVzLmxlbmd0aCA9PT0gMSA/ICcnIDogJyBvbmUgb2YnXG4gIGNvbnN0IG1lc3NhZ2UgPVxuICAgIGAke2NvbnRleHQuYXJndW1lbnR9IGNvdWxkIG5vdCBiZSBjb252ZXJ0ZWQgdG9gICtcbiAgICBgJHtwbHVyYWx9OiAke2NvbnRleHQudHlwZXMuam9pbignLCAnKX0uYFxuXG4gIHJldHVybiB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgaGVhZGVyOiBjb250ZXh0LnByZWZpeCxcbiAgICBtZXNzYWdlXG4gIH0pXG59XG5cbndlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50ID0gZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgcmV0dXJuIHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICBoZWFkZXI6IGNvbnRleHQucHJlZml4LFxuICAgIG1lc3NhZ2U6IGBcIiR7Y29udGV4dC52YWx1ZX1cIiBpcyBhbiBpbnZhbGlkICR7Y29udGV4dC50eXBlfS5gXG4gIH0pXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jaW1wbGVtZW50c1xud2ViaWRsLmJyYW5kQ2hlY2sgPSBmdW5jdGlvbiAoViwgSSwgb3B0cyA9IHVuZGVmaW5lZCkge1xuICBpZiAob3B0cz8uc3RyaWN0ICE9PSBmYWxzZSAmJiAhKFYgaW5zdGFuY2VvZiBJKSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0lsbGVnYWwgaW52b2NhdGlvbicpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIFY/LltTeW1ib2wudG9TdHJpbmdUYWddID09PSBJLnByb3RvdHlwZVtTeW1ib2wudG9TdHJpbmdUYWddXG4gIH1cbn1cblxud2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2sgPSBmdW5jdGlvbiAoeyBsZW5ndGggfSwgbWluLCBjdHgpIHtcbiAgaWYgKGxlbmd0aCA8IG1pbikge1xuICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgIG1lc3NhZ2U6IGAke21pbn0gYXJndW1lbnQke21pbiAhPT0gMSA/ICdzJyA6ICcnfSByZXF1aXJlZCwgYCArXG4gICAgICAgICAgICAgICBgYnV0JHtsZW5ndGggPyAnIG9ubHknIDogJyd9ICR7bGVuZ3RofSBmb3VuZC5gLFxuICAgICAgLi4uY3R4XG4gICAgfSlcbiAgfVxufVxuXG53ZWJpZGwuaWxsZWdhbENvbnN0cnVjdG9yID0gZnVuY3Rpb24gKCkge1xuICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgaGVhZGVyOiAnVHlwZUVycm9yJyxcbiAgICBtZXNzYWdlOiAnSWxsZWdhbCBjb25zdHJ1Y3RvcidcbiAgfSlcbn1cblxuLy8gaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1lY21hc2NyaXB0LWRhdGEtdHlwZXMtYW5kLXZhbHVlc1xud2ViaWRsLnV0aWwuVHlwZSA9IGZ1bmN0aW9uIChWKSB7XG4gIHN3aXRjaCAodHlwZW9mIFYpIHtcbiAgICBjYXNlICd1bmRlZmluZWQnOiByZXR1cm4gJ1VuZGVmaW5lZCdcbiAgICBjYXNlICdib29sZWFuJzogcmV0dXJuICdCb29sZWFuJ1xuICAgIGNhc2UgJ3N0cmluZyc6IHJldHVybiAnU3RyaW5nJ1xuICAgIGNhc2UgJ3N5bWJvbCc6IHJldHVybiAnU3ltYm9sJ1xuICAgIGNhc2UgJ251bWJlcic6IHJldHVybiAnTnVtYmVyJ1xuICAgIGNhc2UgJ2JpZ2ludCc6IHJldHVybiAnQmlnSW50J1xuICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICBjYXNlICdvYmplY3QnOiB7XG4gICAgICBpZiAoViA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gJ051bGwnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAnT2JqZWN0J1xuICAgIH1cbiAgfVxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2Fic3RyYWN0LW9wZGVmLWNvbnZlcnR0b2ludFxud2ViaWRsLnV0aWwuQ29udmVydFRvSW50ID0gZnVuY3Rpb24gKFYsIGJpdExlbmd0aCwgc2lnbmVkbmVzcywgb3B0cyA9IHt9KSB7XG4gIGxldCB1cHBlckJvdW5kXG4gIGxldCBsb3dlckJvdW5kXG5cbiAgLy8gMS4gSWYgYml0TGVuZ3RoIGlzIDY0LCB0aGVuOlxuICBpZiAoYml0TGVuZ3RoID09PSA2NCkge1xuICAgIC8vIDEuIExldCB1cHBlckJvdW5kIGJlIDJeNTMgXHUyMjEyIDEuXG4gICAgdXBwZXJCb3VuZCA9IE1hdGgucG93KDIsIDUzKSAtIDFcblxuICAgIC8vIDIuIElmIHNpZ25lZG5lc3MgaXMgXCJ1bnNpZ25lZFwiLCB0aGVuIGxldCBsb3dlckJvdW5kIGJlIDAuXG4gICAgaWYgKHNpZ25lZG5lc3MgPT09ICd1bnNpZ25lZCcpIHtcbiAgICAgIGxvd2VyQm91bmQgPSAwXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDMuIE90aGVyd2lzZSBsZXQgbG93ZXJCb3VuZCBiZSBcdTIyMTIyXjUzICsgMS5cbiAgICAgIGxvd2VyQm91bmQgPSBNYXRoLnBvdygtMiwgNTMpICsgMVxuICAgIH1cbiAgfSBlbHNlIGlmIChzaWduZWRuZXNzID09PSAndW5zaWduZWQnKSB7XG4gICAgLy8gMi4gT3RoZXJ3aXNlLCBpZiBzaWduZWRuZXNzIGlzIFwidW5zaWduZWRcIiwgdGhlbjpcblxuICAgIC8vIDEuIExldCBsb3dlckJvdW5kIGJlIDAuXG4gICAgbG93ZXJCb3VuZCA9IDBcblxuICAgIC8vIDIuIExldCB1cHBlckJvdW5kIGJlIDJeYml0TGVuZ3RoIFx1MjIxMiAxLlxuICAgIHVwcGVyQm91bmQgPSBNYXRoLnBvdygyLCBiaXRMZW5ndGgpIC0gMVxuICB9IGVsc2Uge1xuICAgIC8vIDMuIE90aGVyd2lzZTpcblxuICAgIC8vIDEuIExldCBsb3dlckJvdW5kIGJlIC0yXmJpdExlbmd0aCBcdTIyMTIgMS5cbiAgICBsb3dlckJvdW5kID0gTWF0aC5wb3coLTIsIGJpdExlbmd0aCkgLSAxXG5cbiAgICAvLyAyLiBMZXQgdXBwZXJCb3VuZCBiZSAyXmJpdExlbmd0aCBcdTIyMTIgMSBcdTIyMTIgMS5cbiAgICB1cHBlckJvdW5kID0gTWF0aC5wb3coMiwgYml0TGVuZ3RoIC0gMSkgLSAxXG4gIH1cblxuICAvLyA0LiBMZXQgeCBiZSA/IFRvTnVtYmVyKFYpLlxuICBsZXQgeCA9IE51bWJlcihWKVxuXG4gIC8vIDUuIElmIHggaXMgXHUyMjEyMCwgdGhlbiBzZXQgeCB0byArMC5cbiAgaWYgKHggPT09IDApIHtcbiAgICB4ID0gMFxuICB9XG5cbiAgLy8gNi4gSWYgdGhlIGNvbnZlcnNpb24gaXMgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbRW5mb3JjZVJhbmdlXSBleHRlbmRlZCBhdHRyaWJ1dGUsIHRoZW46XG4gIGlmIChvcHRzLmVuZm9yY2VSYW5nZSA9PT0gdHJ1ZSkge1xuICAgIC8vIDEuIElmIHggaXMgTmFOLCArXHUyMjFFLCBvciBcdTIyMTJcdTIyMUUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKFxuICAgICAgTnVtYmVyLmlzTmFOKHgpIHx8XG4gICAgICB4ID09PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkgfHxcbiAgICAgIHggPT09IE51bWJlci5ORUdBVElWRV9JTkZJTklUWVxuICAgICkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdJbnRlZ2VyIGNvbnZlcnNpb24nLFxuICAgICAgICBtZXNzYWdlOiBgQ291bGQgbm90IGNvbnZlcnQgJHtWfSB0byBhbiBpbnRlZ2VyLmBcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMi4gU2V0IHggdG8gSW50ZWdlclBhcnQoeCkuXG4gICAgeCA9IHdlYmlkbC51dGlsLkludGVnZXJQYXJ0KHgpXG5cbiAgICAvLyAzLiBJZiB4IDwgbG93ZXJCb3VuZCBvciB4ID4gdXBwZXJCb3VuZCwgdGhlblxuICAgIC8vICAgIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICh4IDwgbG93ZXJCb3VuZCB8fCB4ID4gdXBwZXJCb3VuZCkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdJbnRlZ2VyIGNvbnZlcnNpb24nLFxuICAgICAgICBtZXNzYWdlOiBgVmFsdWUgbXVzdCBiZSBiZXR3ZWVuICR7bG93ZXJCb3VuZH0tJHt1cHBlckJvdW5kfSwgZ290ICR7eH0uYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyA0LiBSZXR1cm4geC5cbiAgICByZXR1cm4geFxuICB9XG5cbiAgLy8gNy4gSWYgeCBpcyBub3QgTmFOIGFuZCB0aGUgY29udmVyc2lvbiBpcyB0byBhbiBJRExcbiAgLy8gICAgdHlwZSBhc3NvY2lhdGVkIHdpdGggdGhlIFtDbGFtcF0gZXh0ZW5kZWRcbiAgLy8gICAgYXR0cmlidXRlLCB0aGVuOlxuICBpZiAoIU51bWJlci5pc05hTih4KSAmJiBvcHRzLmNsYW1wID09PSB0cnVlKSB7XG4gICAgLy8gMS4gU2V0IHggdG8gbWluKG1heCh4LCBsb3dlckJvdW5kKSwgdXBwZXJCb3VuZCkuXG4gICAgeCA9IE1hdGgubWluKE1hdGgubWF4KHgsIGxvd2VyQm91bmQpLCB1cHBlckJvdW5kKVxuXG4gICAgLy8gMi4gUm91bmQgeCB0byB0aGUgbmVhcmVzdCBpbnRlZ2VyLCBjaG9vc2luZyB0aGVcbiAgICAvLyAgICBldmVuIGludGVnZXIgaWYgaXQgbGllcyBoYWxmd2F5IGJldHdlZW4gdHdvLFxuICAgIC8vICAgIGFuZCBjaG9vc2luZyArMCByYXRoZXIgdGhhbiBcdTIyMTIwLlxuICAgIGlmIChNYXRoLmZsb29yKHgpICUgMiA9PT0gMCkge1xuICAgICAgeCA9IE1hdGguZmxvb3IoeClcbiAgICB9IGVsc2Uge1xuICAgICAgeCA9IE1hdGguY2VpbCh4KVxuICAgIH1cblxuICAgIC8vIDMuIFJldHVybiB4LlxuICAgIHJldHVybiB4XG4gIH1cblxuICAvLyA4LiBJZiB4IGlzIE5hTiwgKzAsICtcdTIyMUUsIG9yIFx1MjIxMlx1MjIxRSwgdGhlbiByZXR1cm4gKzAuXG4gIGlmIChcbiAgICBOdW1iZXIuaXNOYU4oeCkgfHxcbiAgICAoeCA9PT0gMCAmJiBPYmplY3QuaXMoMCwgeCkpIHx8XG4gICAgeCA9PT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZIHx8XG4gICAgeCA9PT0gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZXG4gICkge1xuICAgIHJldHVybiAwXG4gIH1cblxuICAvLyA5LiBTZXQgeCB0byBJbnRlZ2VyUGFydCh4KS5cbiAgeCA9IHdlYmlkbC51dGlsLkludGVnZXJQYXJ0KHgpXG5cbiAgLy8gMTAuIFNldCB4IHRvIHggbW9kdWxvIDJeYml0TGVuZ3RoLlxuICB4ID0geCAlIE1hdGgucG93KDIsIGJpdExlbmd0aClcblxuICAvLyAxMS4gSWYgc2lnbmVkbmVzcyBpcyBcInNpZ25lZFwiIGFuZCB4IFx1MjI2NSAyXmJpdExlbmd0aCBcdTIyMTIgMSxcbiAgLy8gICAgdGhlbiByZXR1cm4geCBcdTIyMTIgMl5iaXRMZW5ndGguXG4gIGlmIChzaWduZWRuZXNzID09PSAnc2lnbmVkJyAmJiB4ID49IE1hdGgucG93KDIsIGJpdExlbmd0aCkgLSAxKSB7XG4gICAgcmV0dXJuIHggLSBNYXRoLnBvdygyLCBiaXRMZW5ndGgpXG4gIH1cblxuICAvLyAxMi4gT3RoZXJ3aXNlLCByZXR1cm4geC5cbiAgcmV0dXJuIHhcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNhYnN0cmFjdC1vcGRlZi1pbnRlZ2VycGFydFxud2ViaWRsLnV0aWwuSW50ZWdlclBhcnQgPSBmdW5jdGlvbiAobikge1xuICAvLyAxLiBMZXQgciBiZSBmbG9vcihhYnMobikpLlxuICBjb25zdCByID0gTWF0aC5mbG9vcihNYXRoLmFicyhuKSlcblxuICAvLyAyLiBJZiBuIDwgMCwgdGhlbiByZXR1cm4gLTEgXHUwMEQ3IHIuXG4gIGlmIChuIDwgMCkge1xuICAgIHJldHVybiAtMSAqIHJcbiAgfVxuXG4gIC8vIDMuIE90aGVyd2lzZSwgcmV0dXJuIHIuXG4gIHJldHVybiByXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtc2VxdWVuY2VcbndlYmlkbC5zZXF1ZW5jZUNvbnZlcnRlciA9IGZ1bmN0aW9uIChjb252ZXJ0ZXIpIHtcbiAgcmV0dXJuIChWKSA9PiB7XG4gICAgLy8gMS4gSWYgVHlwZShWKSBpcyBub3QgT2JqZWN0LCB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAod2ViaWRsLnV0aWwuVHlwZShWKSAhPT0gJ09iamVjdCcpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgaGVhZGVyOiAnU2VxdWVuY2UnLFxuICAgICAgICBtZXNzYWdlOiBgVmFsdWUgb2YgdHlwZSAke3dlYmlkbC51dGlsLlR5cGUoVil9IGlzIG5vdCBhbiBPYmplY3QuYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBMZXQgbWV0aG9kIGJlID8gR2V0TWV0aG9kKFYsIEBAaXRlcmF0b3IpLlxuICAgIC8qKiBAdHlwZSB7R2VuZXJhdG9yfSAqL1xuICAgIGNvbnN0IG1ldGhvZCA9IFY/LltTeW1ib2wuaXRlcmF0b3JdPy4oKVxuICAgIGNvbnN0IHNlcSA9IFtdXG5cbiAgICAvLyAzLiBJZiBtZXRob2QgaXMgdW5kZWZpbmVkLCB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAoXG4gICAgICBtZXRob2QgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgdHlwZW9mIG1ldGhvZC5uZXh0ICE9PSAnZnVuY3Rpb24nXG4gICAgKSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogJ1NlcXVlbmNlJyxcbiAgICAgICAgbWVzc2FnZTogJ09iamVjdCBpcyBub3QgYW4gaXRlcmF0b3IuJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2NyZWF0ZS1zZXF1ZW5jZS1mcm9tLWl0ZXJhYmxlXG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IG1ldGhvZC5uZXh0KClcblxuICAgICAgaWYgKGRvbmUpIHtcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgc2VxLnB1c2goY29udmVydGVyKHZhbHVlKSlcbiAgICB9XG5cbiAgICByZXR1cm4gc2VxXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy10by1yZWNvcmRcbndlYmlkbC5yZWNvcmRDb252ZXJ0ZXIgPSBmdW5jdGlvbiAoa2V5Q29udmVydGVyLCB2YWx1ZUNvbnZlcnRlcikge1xuICByZXR1cm4gKE8pID0+IHtcbiAgICAvLyAxLiBJZiBUeXBlKE8pIGlzIG5vdCBPYmplY3QsIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICh3ZWJpZGwudXRpbC5UeXBlKE8pICE9PSAnT2JqZWN0Jykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdSZWNvcmQnLFxuICAgICAgICBtZXNzYWdlOiBgVmFsdWUgb2YgdHlwZSAke3dlYmlkbC51dGlsLlR5cGUoTyl9IGlzIG5vdCBhbiBPYmplY3QuYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBMZXQgcmVzdWx0IGJlIGEgbmV3IGVtcHR5IGluc3RhbmNlIG9mIHJlY29yZDxLLCBWPi5cbiAgICBjb25zdCByZXN1bHQgPSB7fVxuXG4gICAgaWYgKCF0eXBlcy5pc1Byb3h5KE8pKSB7XG4gICAgICAvLyBPYmplY3Qua2V5cyBvbmx5IHJldHVybnMgZW51bWVyYWJsZSBwcm9wZXJ0aWVzXG4gICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoTylcblxuICAgICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgICAvLyAxLiBMZXQgdHlwZWRLZXkgYmUga2V5IGNvbnZlcnRlZCB0byBhbiBJREwgdmFsdWUgb2YgdHlwZSBLLlxuICAgICAgICBjb25zdCB0eXBlZEtleSA9IGtleUNvbnZlcnRlcihrZXkpXG5cbiAgICAgICAgLy8gMi4gTGV0IHZhbHVlIGJlID8gR2V0KE8sIGtleSkuXG4gICAgICAgIC8vIDMuIExldCB0eXBlZFZhbHVlIGJlIHZhbHVlIGNvbnZlcnRlZCB0byBhbiBJREwgdmFsdWUgb2YgdHlwZSBWLlxuICAgICAgICBjb25zdCB0eXBlZFZhbHVlID0gdmFsdWVDb252ZXJ0ZXIoT1trZXldKVxuXG4gICAgICAgIC8vIDQuIFNldCByZXN1bHRbdHlwZWRLZXldIHRvIHR5cGVkVmFsdWUuXG4gICAgICAgIHJlc3VsdFt0eXBlZEtleV0gPSB0eXBlZFZhbHVlXG4gICAgICB9XG5cbiAgICAgIC8vIDUuIFJldHVybiByZXN1bHQuXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfVxuXG4gICAgLy8gMy4gTGV0IGtleXMgYmUgPyBPLltbT3duUHJvcGVydHlLZXlzXV0oKS5cbiAgICBjb25zdCBrZXlzID0gUmVmbGVjdC5vd25LZXlzKE8pXG5cbiAgICAvLyA0LiBGb3IgZWFjaCBrZXkgb2Yga2V5cy5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzKSB7XG4gICAgICAvLyAxLiBMZXQgZGVzYyBiZSA/IE8uW1tHZXRPd25Qcm9wZXJ0eV1dKGtleSkuXG4gICAgICBjb25zdCBkZXNjID0gUmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoTywga2V5KVxuXG4gICAgICAvLyAyLiBJZiBkZXNjIGlzIG5vdCB1bmRlZmluZWQgYW5kIGRlc2MuW1tFbnVtZXJhYmxlXV0gaXMgdHJ1ZTpcbiAgICAgIGlmIChkZXNjPy5lbnVtZXJhYmxlKSB7XG4gICAgICAgIC8vIDEuIExldCB0eXBlZEtleSBiZSBrZXkgY29udmVydGVkIHRvIGFuIElETCB2YWx1ZSBvZiB0eXBlIEsuXG4gICAgICAgIGNvbnN0IHR5cGVkS2V5ID0ga2V5Q29udmVydGVyKGtleSlcblxuICAgICAgICAvLyAyLiBMZXQgdmFsdWUgYmUgPyBHZXQoTywga2V5KS5cbiAgICAgICAgLy8gMy4gTGV0IHR5cGVkVmFsdWUgYmUgdmFsdWUgY29udmVydGVkIHRvIGFuIElETCB2YWx1ZSBvZiB0eXBlIFYuXG4gICAgICAgIGNvbnN0IHR5cGVkVmFsdWUgPSB2YWx1ZUNvbnZlcnRlcihPW2tleV0pXG5cbiAgICAgICAgLy8gNC4gU2V0IHJlc3VsdFt0eXBlZEtleV0gdG8gdHlwZWRWYWx1ZS5cbiAgICAgICAgcmVzdWx0W3R5cGVkS2V5XSA9IHR5cGVkVmFsdWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA1LiBSZXR1cm4gcmVzdWx0LlxuICAgIHJldHVybiByZXN1bHRcbiAgfVxufVxuXG53ZWJpZGwuaW50ZXJmYWNlQ29udmVydGVyID0gZnVuY3Rpb24gKGkpIHtcbiAgcmV0dXJuIChWLCBvcHRzID0ge30pID0+IHtcbiAgICBpZiAob3B0cy5zdHJpY3QgIT09IGZhbHNlICYmICEoViBpbnN0YW5jZW9mIGkpKSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogaS5uYW1lLFxuICAgICAgICBtZXNzYWdlOiBgRXhwZWN0ZWQgJHtWfSB0byBiZSBhbiBpbnN0YW5jZSBvZiAke2kubmFtZX0uYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gVlxuICB9XG59XG5cbndlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyID0gZnVuY3Rpb24gKGNvbnZlcnRlcnMpIHtcbiAgcmV0dXJuIChkaWN0aW9uYXJ5KSA9PiB7XG4gICAgY29uc3QgdHlwZSA9IHdlYmlkbC51dGlsLlR5cGUoZGljdGlvbmFyeSlcbiAgICBjb25zdCBkaWN0ID0ge31cblxuICAgIGlmICh0eXBlID09PSAnTnVsbCcgfHwgdHlwZSA9PT0gJ1VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiBkaWN0XG4gICAgfSBlbHNlIGlmICh0eXBlICE9PSAnT2JqZWN0Jykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdEaWN0aW9uYXJ5JyxcbiAgICAgICAgbWVzc2FnZTogYEV4cGVjdGVkICR7ZGljdGlvbmFyeX0gdG8gYmUgb25lIG9mOiBOdWxsLCBVbmRlZmluZWQsIE9iamVjdC5gXG4gICAgICB9KVxuICAgIH1cblxuICAgIGZvciAoY29uc3Qgb3B0aW9ucyBvZiBjb252ZXJ0ZXJzKSB7XG4gICAgICBjb25zdCB7IGtleSwgZGVmYXVsdFZhbHVlLCByZXF1aXJlZCwgY29udmVydGVyIH0gPSBvcHRpb25zXG5cbiAgICAgIGlmIChyZXF1aXJlZCA9PT0gdHJ1ZSkge1xuICAgICAgICBpZiAoIWhhc093bihkaWN0aW9uYXJ5LCBrZXkpKSB7XG4gICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgaGVhZGVyOiAnRGljdGlvbmFyeScsXG4gICAgICAgICAgICBtZXNzYWdlOiBgTWlzc2luZyByZXF1aXJlZCBrZXkgXCIke2tleX1cIi5gXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsZXQgdmFsdWUgPSBkaWN0aW9uYXJ5W2tleV1cbiAgICAgIGNvbnN0IGhhc0RlZmF1bHQgPSBoYXNPd24ob3B0aW9ucywgJ2RlZmF1bHRWYWx1ZScpXG5cbiAgICAgIC8vIE9ubHkgdXNlIGRlZmF1bHRWYWx1ZSBpZiB2YWx1ZSBpcyB1bmRlZmluZWQgYW5kXG4gICAgICAvLyBhIGRlZmF1bHRWYWx1ZSBvcHRpb25zIHdhcyBwcm92aWRlZC5cbiAgICAgIGlmIChoYXNEZWZhdWx0ICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgIHZhbHVlID0gdmFsdWUgPz8gZGVmYXVsdFZhbHVlXG4gICAgICB9XG5cbiAgICAgIC8vIEEga2V5IGNhbiBiZSBvcHRpb25hbCBhbmQgaGF2ZSBubyBkZWZhdWx0IHZhbHVlLlxuICAgICAgLy8gV2hlbiB0aGlzIGhhcHBlbnMsIGRvIG5vdCBwZXJmb3JtIGEgY29udmVyc2lvbixcbiAgICAgIC8vIGFuZCBkbyBub3QgYXNzaWduIHRoZSBrZXkgYSB2YWx1ZS5cbiAgICAgIGlmIChyZXF1aXJlZCB8fCBoYXNEZWZhdWx0IHx8IHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdmFsdWUgPSBjb252ZXJ0ZXIodmFsdWUpXG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIG9wdGlvbnMuYWxsb3dlZFZhbHVlcyAmJlxuICAgICAgICAgICFvcHRpb25zLmFsbG93ZWRWYWx1ZXMuaW5jbHVkZXModmFsdWUpXG4gICAgICAgICkge1xuICAgICAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICAgIGhlYWRlcjogJ0RpY3Rpb25hcnknLFxuICAgICAgICAgICAgbWVzc2FnZTogYCR7dmFsdWV9IGlzIG5vdCBhbiBhY2NlcHRlZCB0eXBlLiBFeHBlY3RlZCBvbmUgb2YgJHtvcHRpb25zLmFsbG93ZWRWYWx1ZXMuam9pbignLCAnKX0uYFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICBkaWN0W2tleV0gPSB2YWx1ZVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBkaWN0XG4gIH1cbn1cblxud2ViaWRsLm51bGxhYmxlQ29udmVydGVyID0gZnVuY3Rpb24gKGNvbnZlcnRlcikge1xuICByZXR1cm4gKFYpID0+IHtcbiAgICBpZiAoViA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIFZcbiAgICB9XG5cbiAgICByZXR1cm4gY29udmVydGVyKFYpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy1ET01TdHJpbmdcbndlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyA9IGZ1bmN0aW9uIChWLCBvcHRzID0ge30pIHtcbiAgLy8gMS4gSWYgViBpcyBudWxsIGFuZCB0aGUgY29udmVyc2lvbiBpcyB0byBhbiBJREwgdHlwZVxuICAvLyAgICBhc3NvY2lhdGVkIHdpdGggdGhlIFtMZWdhY3lOdWxsVG9FbXB0eVN0cmluZ11cbiAgLy8gICAgZXh0ZW5kZWQgYXR0cmlidXRlLCB0aGVuIHJldHVybiB0aGUgRE9NU3RyaW5nIHZhbHVlXG4gIC8vICAgIHRoYXQgcmVwcmVzZW50cyB0aGUgZW1wdHkgc3RyaW5nLlxuICBpZiAoViA9PT0gbnVsbCAmJiBvcHRzLmxlZ2FjeU51bGxUb0VtcHR5U3RyaW5nKSB7XG4gICAgcmV0dXJuICcnXG4gIH1cblxuICAvLyAyLiBMZXQgeCBiZSA/IFRvU3RyaW5nKFYpLlxuICBpZiAodHlwZW9mIFYgPT09ICdzeW1ib2wnKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQ291bGQgbm90IGNvbnZlcnQgYXJndW1lbnQgb2YgdHlwZSBzeW1ib2wgdG8gc3RyaW5nLicpXG4gIH1cblxuICAvLyAzLiBSZXR1cm4gdGhlIElETCBET01TdHJpbmcgdmFsdWUgdGhhdCByZXByZXNlbnRzIHRoZVxuICAvLyAgICBzYW1lIHNlcXVlbmNlIG9mIGNvZGUgdW5pdHMgYXMgdGhlIG9uZSB0aGVcbiAgLy8gICAgRUNNQVNjcmlwdCBTdHJpbmcgdmFsdWUgeCByZXByZXNlbnRzLlxuICByZXR1cm4gU3RyaW5nKFYpXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtQnl0ZVN0cmluZ1xud2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZyA9IGZ1bmN0aW9uIChWKSB7XG4gIC8vIDEuIExldCB4IGJlID8gVG9TdHJpbmcoVikuXG4gIC8vIE5vdGU6IERPTVN0cmluZyBjb252ZXJ0ZXIgcGVyZm9ybSA/IFRvU3RyaW5nKFYpXG4gIGNvbnN0IHggPSB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcoVilcblxuICAvLyAyLiBJZiB0aGUgdmFsdWUgb2YgYW55IGVsZW1lbnQgb2YgeCBpcyBncmVhdGVyIHRoYW5cbiAgLy8gICAgMjU1LCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgeC5sZW5ndGg7IGluZGV4KyspIHtcbiAgICBpZiAoeC5jaGFyQ29kZUF0KGluZGV4KSA+IDI1NSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBjb252ZXJ0IGFyZ3VtZW50IHRvIGEgQnl0ZVN0cmluZyBiZWNhdXNlIHRoZSBjaGFyYWN0ZXIgYXQgJyArXG4gICAgICAgIGBpbmRleCAke2luZGV4fSBoYXMgYSB2YWx1ZSBvZiAke3guY2hhckNvZGVBdChpbmRleCl9IHdoaWNoIGlzIGdyZWF0ZXIgdGhhbiAyNTUuYFxuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIC8vIDMuIFJldHVybiBhbiBJREwgQnl0ZVN0cmluZyB2YWx1ZSB3aG9zZSBsZW5ndGggaXMgdGhlXG4gIC8vICAgIGxlbmd0aCBvZiB4LCBhbmQgd2hlcmUgdGhlIHZhbHVlIG9mIGVhY2ggZWxlbWVudCBpc1xuICAvLyAgICB0aGUgdmFsdWUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgZWxlbWVudCBvZiB4LlxuICByZXR1cm4geFxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2VzLVVTVlN0cmluZ1xud2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nID0gdG9VU1ZTdHJpbmdcblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy1ib29sZWFuXG53ZWJpZGwuY29udmVydGVycy5ib29sZWFuID0gZnVuY3Rpb24gKFYpIHtcbiAgLy8gMS4gTGV0IHggYmUgdGhlIHJlc3VsdCBvZiBjb21wdXRpbmcgVG9Cb29sZWFuKFYpLlxuICBjb25zdCB4ID0gQm9vbGVhbihWKVxuXG4gIC8vIDIuIFJldHVybiB0aGUgSURMIGJvb2xlYW4gdmFsdWUgdGhhdCBpcyB0aGUgb25lIHRoYXQgcmVwcmVzZW50c1xuICAvLyAgICB0aGUgc2FtZSB0cnV0aCB2YWx1ZSBhcyB0aGUgRUNNQVNjcmlwdCBCb29sZWFuIHZhbHVlIHguXG4gIHJldHVybiB4XG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtYW55XG53ZWJpZGwuY29udmVydGVycy5hbnkgPSBmdW5jdGlvbiAoVikge1xuICByZXR1cm4gVlxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2VzLWxvbmctbG9uZ1xud2ViaWRsLmNvbnZlcnRlcnNbJ2xvbmcgbG9uZyddID0gZnVuY3Rpb24gKFYpIHtcbiAgLy8gMS4gTGV0IHggYmUgPyBDb252ZXJ0VG9JbnQoViwgNjQsIFwic2lnbmVkXCIpLlxuICBjb25zdCB4ID0gd2ViaWRsLnV0aWwuQ29udmVydFRvSW50KFYsIDY0LCAnc2lnbmVkJylcblxuICAvLyAyLiBSZXR1cm4gdGhlIElETCBsb25nIGxvbmcgdmFsdWUgdGhhdCByZXByZXNlbnRzXG4gIC8vICAgIHRoZSBzYW1lIG51bWVyaWMgdmFsdWUgYXMgeC5cbiAgcmV0dXJuIHhcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy11bnNpZ25lZC1sb25nLWxvbmdcbndlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBsb25nIGxvbmcnXSA9IGZ1bmN0aW9uIChWKSB7XG4gIC8vIDEuIExldCB4IGJlID8gQ29udmVydFRvSW50KFYsIDY0LCBcInVuc2lnbmVkXCIpLlxuICBjb25zdCB4ID0gd2ViaWRsLnV0aWwuQ29udmVydFRvSW50KFYsIDY0LCAndW5zaWduZWQnKVxuXG4gIC8vIDIuIFJldHVybiB0aGUgSURMIHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSB0aGF0XG4gIC8vICAgIHJlcHJlc2VudHMgdGhlIHNhbWUgbnVtZXJpYyB2YWx1ZSBhcyB4LlxuICByZXR1cm4geFxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2VzLXVuc2lnbmVkLWxvbmdcbndlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBsb25nJ10gPSBmdW5jdGlvbiAoVikge1xuICAvLyAxLiBMZXQgeCBiZSA/IENvbnZlcnRUb0ludChWLCAzMiwgXCJ1bnNpZ25lZFwiKS5cbiAgY29uc3QgeCA9IHdlYmlkbC51dGlsLkNvbnZlcnRUb0ludChWLCAzMiwgJ3Vuc2lnbmVkJylcblxuICAvLyAyLiBSZXR1cm4gdGhlIElETCB1bnNpZ25lZCBsb25nIHZhbHVlIHRoYXRcbiAgLy8gICAgcmVwcmVzZW50cyB0aGUgc2FtZSBudW1lcmljIHZhbHVlIGFzIHguXG4gIHJldHVybiB4XG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtdW5zaWduZWQtc2hvcnRcbndlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBzaG9ydCddID0gZnVuY3Rpb24gKFYsIG9wdHMpIHtcbiAgLy8gMS4gTGV0IHggYmUgPyBDb252ZXJ0VG9JbnQoViwgMTYsIFwidW5zaWduZWRcIikuXG4gIGNvbnN0IHggPSB3ZWJpZGwudXRpbC5Db252ZXJ0VG9JbnQoViwgMTYsICd1bnNpZ25lZCcsIG9wdHMpXG5cbiAgLy8gMi4gUmV0dXJuIHRoZSBJREwgdW5zaWduZWQgc2hvcnQgdmFsdWUgdGhhdCByZXByZXNlbnRzXG4gIC8vICAgIHRoZSBzYW1lIG51bWVyaWMgdmFsdWUgYXMgeC5cbiAgcmV0dXJuIHhcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNpZGwtQXJyYXlCdWZmZXJcbndlYmlkbC5jb252ZXJ0ZXJzLkFycmF5QnVmZmVyID0gZnVuY3Rpb24gKFYsIG9wdHMgPSB7fSkge1xuICAvLyAxLiBJZiBUeXBlKFYpIGlzIG5vdCBPYmplY3QsIG9yIFYgZG9lcyBub3QgaGF2ZSBhblxuICAvLyAgICBbW0FycmF5QnVmZmVyRGF0YV1dIGludGVybmFsIHNsb3QsIHRoZW4gdGhyb3cgYVxuICAvLyAgICBUeXBlRXJyb3IuXG4gIC8vIHNlZTogaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1wcm9wZXJ0aWVzLW9mLXRoZS1hcnJheWJ1ZmZlci1pbnN0YW5jZXNcbiAgLy8gc2VlOiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLXByb3BlcnRpZXMtb2YtdGhlLXNoYXJlZGFycmF5YnVmZmVyLWluc3RhbmNlc1xuICBpZiAoXG4gICAgd2ViaWRsLnV0aWwuVHlwZShWKSAhPT0gJ09iamVjdCcgfHxcbiAgICAhdHlwZXMuaXNBbnlBcnJheUJ1ZmZlcihWKVxuICApIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmNvbnZlcnNpb25GYWlsZWQoe1xuICAgICAgcHJlZml4OiBgJHtWfWAsXG4gICAgICBhcmd1bWVudDogYCR7Vn1gLFxuICAgICAgdHlwZXM6IFsnQXJyYXlCdWZmZXInXVxuICAgIH0pXG4gIH1cblxuICAvLyAyLiBJZiB0aGUgY29udmVyc2lvbiBpcyBub3QgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbQWxsb3dTaGFyZWRdIGV4dGVuZGVkIGF0dHJpYnV0ZSwgYW5kXG4gIC8vICAgIElzU2hhcmVkQXJyYXlCdWZmZXIoVikgaXMgdHJ1ZSwgdGhlbiB0aHJvdyBhXG4gIC8vICAgIFR5cGVFcnJvci5cbiAgaWYgKG9wdHMuYWxsb3dTaGFyZWQgPT09IGZhbHNlICYmIHR5cGVzLmlzU2hhcmVkQXJyYXlCdWZmZXIoVikpIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICBoZWFkZXI6ICdBcnJheUJ1ZmZlcicsXG4gICAgICBtZXNzYWdlOiAnU2hhcmVkQXJyYXlCdWZmZXIgaXMgbm90IGFsbG93ZWQuJ1xuICAgIH0pXG4gIH1cblxuICAvLyAzLiBJZiB0aGUgY29udmVyc2lvbiBpcyBub3QgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbQWxsb3dSZXNpemFibGVdIGV4dGVuZGVkIGF0dHJpYnV0ZSwgYW5kXG4gIC8vICAgIElzUmVzaXphYmxlQXJyYXlCdWZmZXIoVikgaXMgdHJ1ZSwgdGhlbiB0aHJvdyBhXG4gIC8vICAgIFR5cGVFcnJvci5cbiAgLy8gTm90ZTogcmVzaXphYmxlIEFycmF5QnVmZmVycyBhcmUgY3VycmVudGx5IGEgcHJvcG9zYWwuXG5cbiAgLy8gNC4gUmV0dXJuIHRoZSBJREwgQXJyYXlCdWZmZXIgdmFsdWUgdGhhdCBpcyBhXG4gIC8vICAgIHJlZmVyZW5jZSB0byB0aGUgc2FtZSBvYmplY3QgYXMgVi5cbiAgcmV0dXJuIFZcbn1cblxud2ViaWRsLmNvbnZlcnRlcnMuVHlwZWRBcnJheSA9IGZ1bmN0aW9uIChWLCBULCBvcHRzID0ge30pIHtcbiAgLy8gMS4gTGV0IFQgYmUgdGhlIElETCB0eXBlIFYgaXMgYmVpbmcgY29udmVydGVkIHRvLlxuXG4gIC8vIDIuIElmIFR5cGUoVikgaXMgbm90IE9iamVjdCwgb3IgViBkb2VzIG5vdCBoYXZlIGFcbiAgLy8gICAgW1tUeXBlZEFycmF5TmFtZV1dIGludGVybmFsIHNsb3Qgd2l0aCBhIHZhbHVlXG4gIC8vICAgIGVxdWFsIHRvIFRcdTIwMTlzIG5hbWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIGlmIChcbiAgICB3ZWJpZGwudXRpbC5UeXBlKFYpICE9PSAnT2JqZWN0JyB8fFxuICAgICF0eXBlcy5pc1R5cGVkQXJyYXkoVikgfHxcbiAgICBWLmNvbnN0cnVjdG9yLm5hbWUgIT09IFQubmFtZVxuICApIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmNvbnZlcnNpb25GYWlsZWQoe1xuICAgICAgcHJlZml4OiBgJHtULm5hbWV9YCxcbiAgICAgIGFyZ3VtZW50OiBgJHtWfWAsXG4gICAgICB0eXBlczogW1QubmFtZV1cbiAgICB9KVxuICB9XG5cbiAgLy8gMy4gSWYgdGhlIGNvbnZlcnNpb24gaXMgbm90IHRvIGFuIElETCB0eXBlIGFzc29jaWF0ZWRcbiAgLy8gICAgd2l0aCB0aGUgW0FsbG93U2hhcmVkXSBleHRlbmRlZCBhdHRyaWJ1dGUsIGFuZFxuICAvLyAgICBJc1NoYXJlZEFycmF5QnVmZmVyKFYuW1tWaWV3ZWRBcnJheUJ1ZmZlcl1dKSBpc1xuICAvLyAgICB0cnVlLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICBpZiAob3B0cy5hbGxvd1NoYXJlZCA9PT0gZmFsc2UgJiYgdHlwZXMuaXNTaGFyZWRBcnJheUJ1ZmZlcihWLmJ1ZmZlcikpIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICBoZWFkZXI6ICdBcnJheUJ1ZmZlcicsXG4gICAgICBtZXNzYWdlOiAnU2hhcmVkQXJyYXlCdWZmZXIgaXMgbm90IGFsbG93ZWQuJ1xuICAgIH0pXG4gIH1cblxuICAvLyA0LiBJZiB0aGUgY29udmVyc2lvbiBpcyBub3QgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbQWxsb3dSZXNpemFibGVdIGV4dGVuZGVkIGF0dHJpYnV0ZSwgYW5kXG4gIC8vICAgIElzUmVzaXphYmxlQXJyYXlCdWZmZXIoVi5bW1ZpZXdlZEFycmF5QnVmZmVyXV0pIGlzXG4gIC8vICAgIHRydWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIC8vIE5vdGU6IHJlc2l6YWJsZSBhcnJheSBidWZmZXJzIGFyZSBjdXJyZW50bHkgYSBwcm9wb3NhbFxuXG4gIC8vIDUuIFJldHVybiB0aGUgSURMIHZhbHVlIG9mIHR5cGUgVCB0aGF0IGlzIGEgcmVmZXJlbmNlXG4gIC8vICAgIHRvIHRoZSBzYW1lIG9iamVjdCBhcyBWLlxuICByZXR1cm4gVlxufVxuXG53ZWJpZGwuY29udmVydGVycy5EYXRhVmlldyA9IGZ1bmN0aW9uIChWLCBvcHRzID0ge30pIHtcbiAgLy8gMS4gSWYgVHlwZShWKSBpcyBub3QgT2JqZWN0LCBvciBWIGRvZXMgbm90IGhhdmUgYVxuICAvLyAgICBbW0RhdGFWaWV3XV0gaW50ZXJuYWwgc2xvdCwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgIT09ICdPYmplY3QnIHx8ICF0eXBlcy5pc0RhdGFWaWV3KFYpKSB7XG4gICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgaGVhZGVyOiAnRGF0YVZpZXcnLFxuICAgICAgbWVzc2FnZTogJ09iamVjdCBpcyBub3QgYSBEYXRhVmlldy4nXG4gICAgfSlcbiAgfVxuXG4gIC8vIDIuIElmIHRoZSBjb252ZXJzaW9uIGlzIG5vdCB0byBhbiBJREwgdHlwZSBhc3NvY2lhdGVkXG4gIC8vICAgIHdpdGggdGhlIFtBbGxvd1NoYXJlZF0gZXh0ZW5kZWQgYXR0cmlidXRlLCBhbmRcbiAgLy8gICAgSXNTaGFyZWRBcnJheUJ1ZmZlcihWLltbVmlld2VkQXJyYXlCdWZmZXJdXSkgaXMgdHJ1ZSxcbiAgLy8gICAgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKG9wdHMuYWxsb3dTaGFyZWQgPT09IGZhbHNlICYmIHR5cGVzLmlzU2hhcmVkQXJyYXlCdWZmZXIoVi5idWZmZXIpKSB7XG4gICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgaGVhZGVyOiAnQXJyYXlCdWZmZXInLFxuICAgICAgbWVzc2FnZTogJ1NoYXJlZEFycmF5QnVmZmVyIGlzIG5vdCBhbGxvd2VkLidcbiAgICB9KVxuICB9XG5cbiAgLy8gMy4gSWYgdGhlIGNvbnZlcnNpb24gaXMgbm90IHRvIGFuIElETCB0eXBlIGFzc29jaWF0ZWRcbiAgLy8gICAgd2l0aCB0aGUgW0FsbG93UmVzaXphYmxlXSBleHRlbmRlZCBhdHRyaWJ1dGUsIGFuZFxuICAvLyAgICBJc1Jlc2l6YWJsZUFycmF5QnVmZmVyKFYuW1tWaWV3ZWRBcnJheUJ1ZmZlcl1dKSBpc1xuICAvLyAgICB0cnVlLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAvLyBOb3RlOiByZXNpemFibGUgQXJyYXlCdWZmZXJzIGFyZSBjdXJyZW50bHkgYSBwcm9wb3NhbFxuXG4gIC8vIDQuIFJldHVybiB0aGUgSURMIERhdGFWaWV3IHZhbHVlIHRoYXQgaXMgYSByZWZlcmVuY2VcbiAgLy8gICAgdG8gdGhlIHNhbWUgb2JqZWN0IGFzIFYuXG4gIHJldHVybiBWXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jQnVmZmVyU291cmNlXG53ZWJpZGwuY29udmVydGVycy5CdWZmZXJTb3VyY2UgPSBmdW5jdGlvbiAoViwgb3B0cyA9IHt9KSB7XG4gIGlmICh0eXBlcy5pc0FueUFycmF5QnVmZmVyKFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkFycmF5QnVmZmVyKFYsIG9wdHMpXG4gIH1cblxuICBpZiAodHlwZXMuaXNUeXBlZEFycmF5KFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlR5cGVkQXJyYXkoViwgVi5jb25zdHJ1Y3RvcilcbiAgfVxuXG4gIGlmICh0eXBlcy5pc0RhdGFWaWV3KFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkRhdGFWaWV3KFYsIG9wdHMpXG4gIH1cblxuICB0aHJvdyBuZXcgVHlwZUVycm9yKGBDb3VsZCBub3QgY29udmVydCAke1Z9IHRvIGEgQnVmZmVyU291cmNlLmApXG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxCeXRlU3RyaW5nPiddID0gd2ViaWRsLnNlcXVlbmNlQ29udmVydGVyKFxuICB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nXG4pXG5cbndlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nXSA9IHdlYmlkbC5zZXF1ZW5jZUNvbnZlcnRlcihcbiAgd2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPEJ5dGVTdHJpbmc+J11cbilcblxud2ViaWRsLmNvbnZlcnRlcnNbJ3JlY29yZDxCeXRlU3RyaW5nLCBCeXRlU3RyaW5nPiddID0gd2ViaWRsLnJlY29yZENvbnZlcnRlcihcbiAgd2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZyxcbiAgd2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZ1xuKVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgd2ViaWRsXG59XG4iLCAiY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgYXRvYiB9ID0gcmVxdWlyZSgnYnVmZmVyJylcbmNvbnN0IHsgaXNvbW9ycGhpY0RlY29kZSB9ID0gcmVxdWlyZSgnLi91dGlsJylcblxuY29uc3QgZW5jb2RlciA9IG5ldyBUZXh0RW5jb2RlcigpXG5cbi8qKlxuICogQHNlZSBodHRwczovL21pbWVzbmlmZi5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtdG9rZW4tY29kZS1wb2ludFxuICovXG5jb25zdCBIVFRQX1RPS0VOX0NPREVQT0lOVFMgPSAvXlshIyQlJicqKy0uXl98fkEtWmEtejAtOV0rJC9cbmNvbnN0IEhUVFBfV0hJVEVTUEFDRV9SRUdFWCA9IC8oXFx1MDAwQXxcXHUwMDBEfFxcdTAwMDl8XFx1MDAyMCkvIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbi8qKlxuICogQHNlZSBodHRwczovL21pbWVzbmlmZi5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtcXVvdGVkLXN0cmluZy10b2tlbi1jb2RlLXBvaW50XG4gKi9cbmNvbnN0IEhUVFBfUVVPVEVEX1NUUklOR19UT0tFTlMgPSAvW1xcdTAwMDl8XFx1MDAyMC1cXHUwMDdFfFxcdTAwODAtXFx1MDBGRl0vIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RhdGEtdXJsLXByb2Nlc3NvclxuLyoqIEBwYXJhbSB7VVJMfSBkYXRhVVJMICovXG5mdW5jdGlvbiBkYXRhVVJMUHJvY2Vzc29yIChkYXRhVVJMKSB7XG4gIC8vIDEuIEFzc2VydDogZGF0YVVSTFx1MjAxOXMgc2NoZW1lIGlzIFwiZGF0YVwiLlxuICBhc3NlcnQoZGF0YVVSTC5wcm90b2NvbCA9PT0gJ2RhdGE6JylcblxuICAvLyAyLiBMZXQgaW5wdXQgYmUgdGhlIHJlc3VsdCBvZiBydW5uaW5nIHRoZSBVUkxcbiAgLy8gc2VyaWFsaXplciBvbiBkYXRhVVJMIHdpdGggZXhjbHVkZSBmcmFnbWVudFxuICAvLyBzZXQgdG8gdHJ1ZS5cbiAgbGV0IGlucHV0ID0gVVJMU2VyaWFsaXplcihkYXRhVVJMLCB0cnVlKVxuXG4gIC8vIDMuIFJlbW92ZSB0aGUgbGVhZGluZyBcImRhdGE6XCIgc3RyaW5nIGZyb20gaW5wdXQuXG4gIGlucHV0ID0gaW5wdXQuc2xpY2UoNSlcblxuICAvLyA0LiBMZXQgcG9zaXRpb24gcG9pbnQgYXQgdGhlIHN0YXJ0IG9mIGlucHV0LlxuICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuXG4gIC8vIDUuIExldCBtaW1lVHlwZSBiZSB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYVxuICAvLyBzZXF1ZW5jZSBvZiBjb2RlIHBvaW50cyB0aGF0IGFyZSBub3QgZXF1YWxcbiAgLy8gdG8gVSswMDJDICgsKSwgZ2l2ZW4gcG9zaXRpb24uXG4gIGxldCBtaW1lVHlwZSA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0KFxuICAgICcsJyxcbiAgICBpbnB1dCxcbiAgICBwb3NpdGlvblxuICApXG5cbiAgLy8gNi4gU3RyaXAgbGVhZGluZyBhbmQgdHJhaWxpbmcgQVNDSUkgd2hpdGVzcGFjZVxuICAvLyBmcm9tIG1pbWVUeXBlLlxuICAvLyBVbmRpY2kgaW1wbGVtZW50YXRpb24gbm90ZTogd2UgbmVlZCB0byBzdG9yZSB0aGVcbiAgLy8gbGVuZ3RoIGJlY2F1c2UgaWYgdGhlIG1pbWV0eXBlIGhhcyBzcGFjZXMgcmVtb3ZlZCxcbiAgLy8gdGhlIHdyb25nIGFtb3VudCB3aWxsIGJlIHNsaWNlZCBmcm9tIHRoZSBpbnB1dCBpblxuICAvLyBzdGVwICM5XG4gIGNvbnN0IG1pbWVUeXBlTGVuZ3RoID0gbWltZVR5cGUubGVuZ3RoXG4gIG1pbWVUeXBlID0gcmVtb3ZlQVNDSUlXaGl0ZXNwYWNlKG1pbWVUeXBlLCB0cnVlLCB0cnVlKVxuXG4gIC8vIDcuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlblxuICAvLyByZXR1cm4gZmFpbHVyZVxuICBpZiAocG9zaXRpb24ucG9zaXRpb24gPj0gaW5wdXQubGVuZ3RoKSB7XG4gICAgcmV0dXJuICdmYWlsdXJlJ1xuICB9XG5cbiAgLy8gOC4gQWR2YW5jZSBwb3NpdGlvbiBieSAxLlxuICBwb3NpdGlvbi5wb3NpdGlvbisrXG5cbiAgLy8gOS4gTGV0IGVuY29kZWRCb2R5IGJlIHRoZSByZW1haW5kZXIgb2YgaW5wdXQuXG4gIGNvbnN0IGVuY29kZWRCb2R5ID0gaW5wdXQuc2xpY2UobWltZVR5cGVMZW5ndGggKyAxKVxuXG4gIC8vIDEwLiBMZXQgYm9keSBiZSB0aGUgcGVyY2VudC1kZWNvZGluZyBvZiBlbmNvZGVkQm9keS5cbiAgbGV0IGJvZHkgPSBzdHJpbmdQZXJjZW50RGVjb2RlKGVuY29kZWRCb2R5KVxuXG4gIC8vIDExLiBJZiBtaW1lVHlwZSBlbmRzIHdpdGggVSswMDNCICg7KSwgZm9sbG93ZWQgYnlcbiAgLy8gemVybyBvciBtb3JlIFUrMDAyMCBTUEFDRSwgZm9sbG93ZWQgYnkgYW4gQVNDSUlcbiAgLy8gY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgXCJiYXNlNjRcIiwgdGhlbjpcbiAgaWYgKC87KFxcdTAwMjApezAsfWJhc2U2NCQvaS50ZXN0KG1pbWVUeXBlKSkge1xuICAgIC8vIDEuIExldCBzdHJpbmdCb2R5IGJlIHRoZSBpc29tb3JwaGljIGRlY29kZSBvZiBib2R5LlxuICAgIGNvbnN0IHN0cmluZ0JvZHkgPSBpc29tb3JwaGljRGVjb2RlKGJvZHkpXG5cbiAgICAvLyAyLiBTZXQgYm9keSB0byB0aGUgZm9yZ2l2aW5nLWJhc2U2NCBkZWNvZGUgb2ZcbiAgICAvLyBzdHJpbmdCb2R5LlxuICAgIGJvZHkgPSBmb3JnaXZpbmdCYXNlNjQoc3RyaW5nQm9keSlcblxuICAgIC8vIDMuIElmIGJvZHkgaXMgZmFpbHVyZSwgdGhlbiByZXR1cm4gZmFpbHVyZS5cbiAgICBpZiAoYm9keSA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICByZXR1cm4gJ2ZhaWx1cmUnXG4gICAgfVxuXG4gICAgLy8gNC4gUmVtb3ZlIHRoZSBsYXN0IDYgY29kZSBwb2ludHMgZnJvbSBtaW1lVHlwZS5cbiAgICBtaW1lVHlwZSA9IG1pbWVUeXBlLnNsaWNlKDAsIC02KVxuXG4gICAgLy8gNS4gUmVtb3ZlIHRyYWlsaW5nIFUrMDAyMCBTUEFDRSBjb2RlIHBvaW50cyBmcm9tIG1pbWVUeXBlLFxuICAgIC8vIGlmIGFueS5cbiAgICBtaW1lVHlwZSA9IG1pbWVUeXBlLnJlcGxhY2UoLyhcXHUwMDIwKSskLywgJycpXG5cbiAgICAvLyA2LiBSZW1vdmUgdGhlIGxhc3QgVSswMDNCICg7KSBjb2RlIHBvaW50IGZyb20gbWltZVR5cGUuXG4gICAgbWltZVR5cGUgPSBtaW1lVHlwZS5zbGljZSgwLCAtMSlcbiAgfVxuXG4gIC8vIDEyLiBJZiBtaW1lVHlwZSBzdGFydHMgd2l0aCBVKzAwM0IgKDspLCB0aGVuIHByZXBlbmRcbiAgLy8gXCJ0ZXh0L3BsYWluXCIgdG8gbWltZVR5cGUuXG4gIGlmIChtaW1lVHlwZS5zdGFydHNXaXRoKCc7JykpIHtcbiAgICBtaW1lVHlwZSA9ICd0ZXh0L3BsYWluJyArIG1pbWVUeXBlXG4gIH1cblxuICAvLyAxMy4gTGV0IG1pbWVUeXBlUmVjb3JkIGJlIHRoZSByZXN1bHQgb2YgcGFyc2luZ1xuICAvLyBtaW1lVHlwZS5cbiAgbGV0IG1pbWVUeXBlUmVjb3JkID0gcGFyc2VNSU1FVHlwZShtaW1lVHlwZSlcblxuICAvLyAxNC4gSWYgbWltZVR5cGVSZWNvcmQgaXMgZmFpbHVyZSwgdGhlbiBzZXRcbiAgLy8gbWltZVR5cGVSZWNvcmQgdG8gdGV4dC9wbGFpbjtjaGFyc2V0PVVTLUFTQ0lJLlxuICBpZiAobWltZVR5cGVSZWNvcmQgPT09ICdmYWlsdXJlJykge1xuICAgIG1pbWVUeXBlUmVjb3JkID0gcGFyc2VNSU1FVHlwZSgndGV4dC9wbGFpbjtjaGFyc2V0PVVTLUFTQ0lJJylcbiAgfVxuXG4gIC8vIDE1LiBSZXR1cm4gYSBuZXcgZGF0YTogVVJMIHN0cnVjdCB3aG9zZSBNSU1FXG4gIC8vIHR5cGUgaXMgbWltZVR5cGVSZWNvcmQgYW5kIGJvZHkgaXMgYm9keS5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RhdGEtdXJsLXN0cnVjdFxuICByZXR1cm4geyBtaW1lVHlwZTogbWltZVR5cGVSZWNvcmQsIGJvZHkgfVxufVxuXG4vLyBodHRwczovL3VybC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtdXJsLXNlcmlhbGl6ZXJcbi8qKlxuICogQHBhcmFtIHtVUkx9IHVybFxuICogQHBhcmFtIHtib29sZWFufSBleGNsdWRlRnJhZ21lbnRcbiAqL1xuZnVuY3Rpb24gVVJMU2VyaWFsaXplciAodXJsLCBleGNsdWRlRnJhZ21lbnQgPSBmYWxzZSkge1xuICBpZiAoIWV4Y2x1ZGVGcmFnbWVudCkge1xuICAgIHJldHVybiB1cmwuaHJlZlxuICB9XG5cbiAgY29uc3QgaHJlZiA9IHVybC5ocmVmXG4gIGNvbnN0IGhhc2hMZW5ndGggPSB1cmwuaGFzaC5sZW5ndGhcblxuICByZXR1cm4gaGFzaExlbmd0aCA9PT0gMCA/IGhyZWYgOiBocmVmLnN1YnN0cmluZygwLCBocmVmLmxlbmd0aCAtIGhhc2hMZW5ndGgpXG59XG5cbi8vIGh0dHBzOi8vaW5mcmEuc3BlYy53aGF0d2cub3JnLyNjb2xsZWN0LWEtc2VxdWVuY2Utb2YtY29kZS1wb2ludHNcbi8qKlxuICogQHBhcmFtIHsoY2hhcjogc3RyaW5nKSA9PiBib29sZWFufSBjb25kaXRpb25cbiAqIEBwYXJhbSB7c3RyaW5nfSBpbnB1dFxuICogQHBhcmFtIHt7IHBvc2l0aW9uOiBudW1iZXIgfX0gcG9zaXRpb25cbiAqL1xuZnVuY3Rpb24gY29sbGVjdEFTZXF1ZW5jZU9mQ29kZVBvaW50cyAoY29uZGl0aW9uLCBpbnB1dCwgcG9zaXRpb24pIHtcbiAgLy8gMS4gTGV0IHJlc3VsdCBiZSB0aGUgZW1wdHkgc3RyaW5nLlxuICBsZXQgcmVzdWx0ID0gJydcblxuICAvLyAyLiBXaGlsZSBwb3NpdGlvbiBkb2Vzblx1MjAxOXQgcG9pbnQgcGFzdCB0aGUgZW5kIG9mIGlucHV0IGFuZCB0aGVcbiAgLy8gY29kZSBwb2ludCBhdCBwb3NpdGlvbiB3aXRoaW4gaW5wdXQgbWVldHMgdGhlIGNvbmRpdGlvbiBjb25kaXRpb246XG4gIHdoaWxlIChwb3NpdGlvbi5wb3NpdGlvbiA8IGlucHV0Lmxlbmd0aCAmJiBjb25kaXRpb24oaW5wdXRbcG9zaXRpb24ucG9zaXRpb25dKSkge1xuICAgIC8vIDEuIEFwcGVuZCB0aGF0IGNvZGUgcG9pbnQgdG8gdGhlIGVuZCBvZiByZXN1bHQuXG4gICAgcmVzdWx0ICs9IGlucHV0W3Bvc2l0aW9uLnBvc2l0aW9uXVxuXG4gICAgLy8gMi4gQWR2YW5jZSBwb3NpdGlvbiBieSAxLlxuICAgIHBvc2l0aW9uLnBvc2l0aW9uKytcbiAgfVxuXG4gIC8vIDMuIFJldHVybiByZXN1bHQuXG4gIHJldHVybiByZXN1bHRcbn1cblxuLyoqXG4gKiBBIGZhc3RlciBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzIHRoYXQgb25seSB3b3JrcyB3aGVuIGNvbXBhcmluZyBhIHNpbmdsZSBjaGFyYWN0ZXIuXG4gKiBAcGFyYW0ge3N0cmluZ30gY2hhclxuICogQHBhcmFtIHtzdHJpbmd9IGlucHV0XG4gKiBAcGFyYW0ge3sgcG9zaXRpb246IG51bWJlciB9fSBwb3NpdGlvblxuICovXG5mdW5jdGlvbiBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdCAoY2hhciwgaW5wdXQsIHBvc2l0aW9uKSB7XG4gIGNvbnN0IGlkeCA9IGlucHV0LmluZGV4T2YoY2hhciwgcG9zaXRpb24ucG9zaXRpb24pXG4gIGNvbnN0IHN0YXJ0ID0gcG9zaXRpb24ucG9zaXRpb25cblxuICBpZiAoaWR4ID09PSAtMSkge1xuICAgIHBvc2l0aW9uLnBvc2l0aW9uID0gaW5wdXQubGVuZ3RoXG4gICAgcmV0dXJuIGlucHV0LnNsaWNlKHN0YXJ0KVxuICB9XG5cbiAgcG9zaXRpb24ucG9zaXRpb24gPSBpZHhcbiAgcmV0dXJuIGlucHV0LnNsaWNlKHN0YXJ0LCBwb3NpdGlvbi5wb3NpdGlvbilcbn1cblxuLy8gaHR0cHM6Ly91cmwuc3BlYy53aGF0d2cub3JnLyNzdHJpbmctcGVyY2VudC1kZWNvZGVcbi8qKiBAcGFyYW0ge3N0cmluZ30gaW5wdXQgKi9cbmZ1bmN0aW9uIHN0cmluZ1BlcmNlbnREZWNvZGUgKGlucHV0KSB7XG4gIC8vIDEuIExldCBieXRlcyBiZSB0aGUgVVRGLTggZW5jb2Rpbmcgb2YgaW5wdXQuXG4gIGNvbnN0IGJ5dGVzID0gZW5jb2Rlci5lbmNvZGUoaW5wdXQpXG5cbiAgLy8gMi4gUmV0dXJuIHRoZSBwZXJjZW50LWRlY29kaW5nIG9mIGJ5dGVzLlxuICByZXR1cm4gcGVyY2VudERlY29kZShieXRlcylcbn1cblxuLy8gaHR0cHM6Ly91cmwuc3BlYy53aGF0d2cub3JnLyNwZXJjZW50LWRlY29kZVxuLyoqIEBwYXJhbSB7VWludDhBcnJheX0gaW5wdXQgKi9cbmZ1bmN0aW9uIHBlcmNlbnREZWNvZGUgKGlucHV0KSB7XG4gIC8vIDEuIExldCBvdXRwdXQgYmUgYW4gZW1wdHkgYnl0ZSBzZXF1ZW5jZS5cbiAgLyoqIEB0eXBlIHtudW1iZXJbXX0gKi9cbiAgY29uc3Qgb3V0cHV0ID0gW11cblxuICAvLyAyLiBGb3IgZWFjaCBieXRlIGJ5dGUgaW4gaW5wdXQ6XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgaW5wdXQubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBieXRlID0gaW5wdXRbaV1cblxuICAgIC8vIDEuIElmIGJ5dGUgaXMgbm90IDB4MjUgKCUpLCB0aGVuIGFwcGVuZCBieXRlIHRvIG91dHB1dC5cbiAgICBpZiAoYnl0ZSAhPT0gMHgyNSkge1xuICAgICAgb3V0cHV0LnB1c2goYnl0ZSlcblxuICAgIC8vIDIuIE90aGVyd2lzZSwgaWYgYnl0ZSBpcyAweDI1ICglKSBhbmQgdGhlIG5leHQgdHdvIGJ5dGVzXG4gICAgLy8gYWZ0ZXIgYnl0ZSBpbiBpbnB1dCBhcmUgbm90IGluIHRoZSByYW5nZXNcbiAgICAvLyAweDMwICgwKSB0byAweDM5ICg5KSwgMHg0MSAoQSkgdG8gMHg0NiAoRiksXG4gICAgLy8gYW5kIDB4NjEgKGEpIHRvIDB4NjYgKGYpLCBhbGwgaW5jbHVzaXZlLCBhcHBlbmQgYnl0ZVxuICAgIC8vIHRvIG91dHB1dC5cbiAgICB9IGVsc2UgaWYgKFxuICAgICAgYnl0ZSA9PT0gMHgyNSAmJlxuICAgICAgIS9eWzAtOUEtRmEtZl17Mn0kL2kudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGlucHV0W2kgKyAxXSwgaW5wdXRbaSArIDJdKSlcbiAgICApIHtcbiAgICAgIG91dHB1dC5wdXNoKDB4MjUpXG5cbiAgICAvLyAzLiBPdGhlcndpc2U6XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDEuIExldCBieXRlUG9pbnQgYmUgdGhlIHR3byBieXRlcyBhZnRlciBieXRlIGluIGlucHV0LFxuICAgICAgLy8gZGVjb2RlZCwgYW5kIHRoZW4gaW50ZXJwcmV0ZWQgYXMgaGV4YWRlY2ltYWwgbnVtYmVyLlxuICAgICAgY29uc3QgbmV4dFR3b0J5dGVzID0gU3RyaW5nLmZyb21DaGFyQ29kZShpbnB1dFtpICsgMV0sIGlucHV0W2kgKyAyXSlcbiAgICAgIGNvbnN0IGJ5dGVQb2ludCA9IE51bWJlci5wYXJzZUludChuZXh0VHdvQnl0ZXMsIDE2KVxuXG4gICAgICAvLyAyLiBBcHBlbmQgYSBieXRlIHdob3NlIHZhbHVlIGlzIGJ5dGVQb2ludCB0byBvdXRwdXQuXG4gICAgICBvdXRwdXQucHVzaChieXRlUG9pbnQpXG5cbiAgICAgIC8vIDMuIFNraXAgdGhlIG5leHQgdHdvIGJ5dGVzIGluIGlucHV0LlxuICAgICAgaSArPSAyXG4gICAgfVxuICB9XG5cbiAgLy8gMy4gUmV0dXJuIG91dHB1dC5cbiAgcmV0dXJuIFVpbnQ4QXJyYXkuZnJvbShvdXRwdXQpXG59XG5cbi8vIGh0dHBzOi8vbWltZXNuaWZmLnNwZWMud2hhdHdnLm9yZy8jcGFyc2UtYS1taW1lLXR5cGVcbi8qKiBAcGFyYW0ge3N0cmluZ30gaW5wdXQgKi9cbmZ1bmN0aW9uIHBhcnNlTUlNRVR5cGUgKGlucHV0KSB7XG4gIC8vIDEuIFJlbW92ZSBhbnkgbGVhZGluZyBhbmQgdHJhaWxpbmcgSFRUUCB3aGl0ZXNwYWNlXG4gIC8vIGZyb20gaW5wdXQuXG4gIGlucHV0ID0gcmVtb3ZlSFRUUFdoaXRlc3BhY2UoaW5wdXQsIHRydWUsIHRydWUpXG5cbiAgLy8gMi4gTGV0IHBvc2l0aW9uIGJlIGEgcG9zaXRpb24gdmFyaWFibGUgZm9yIGlucHV0LFxuICAvLyBpbml0aWFsbHkgcG9pbnRpbmcgYXQgdGhlIHN0YXJ0IG9mIGlucHV0LlxuICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuXG4gIC8vIDMuIExldCB0eXBlIGJlIHRoZSByZXN1bHQgb2YgY29sbGVjdGluZyBhIHNlcXVlbmNlXG4gIC8vIG9mIGNvZGUgcG9pbnRzIHRoYXQgYXJlIG5vdCBVKzAwMkYgKC8pIGZyb21cbiAgLy8gaW5wdXQsIGdpdmVuIHBvc2l0aW9uLlxuICBjb25zdCB0eXBlID0gY29sbGVjdEFTZXF1ZW5jZU9mQ29kZVBvaW50c0Zhc3QoXG4gICAgJy8nLFxuICAgIGlucHV0LFxuICAgIHBvc2l0aW9uXG4gIClcblxuICAvLyA0LiBJZiB0eXBlIGlzIHRoZSBlbXB0eSBzdHJpbmcgb3IgZG9lcyBub3Qgc29sZWx5XG4gIC8vIGNvbnRhaW4gSFRUUCB0b2tlbiBjb2RlIHBvaW50cywgdGhlbiByZXR1cm4gZmFpbHVyZS5cbiAgLy8gaHR0cHM6Ly9taW1lc25pZmYuc3BlYy53aGF0d2cub3JnLyNodHRwLXRva2VuLWNvZGUtcG9pbnRcbiAgaWYgKHR5cGUubGVuZ3RoID09PSAwIHx8ICFIVFRQX1RPS0VOX0NPREVQT0lOVFMudGVzdCh0eXBlKSkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIC8vIDUuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlbiByZXR1cm5cbiAgLy8gZmFpbHVyZVxuICBpZiAocG9zaXRpb24ucG9zaXRpb24gPiBpbnB1dC5sZW5ndGgpIHtcbiAgICByZXR1cm4gJ2ZhaWx1cmUnXG4gIH1cblxuICAvLyA2LiBBZHZhbmNlIHBvc2l0aW9uIGJ5IDEuIChUaGlzIHNraXBzIHBhc3QgVSswMDJGICgvKS4pXG4gIHBvc2l0aW9uLnBvc2l0aW9uKytcblxuICAvLyA3LiBMZXQgc3VidHlwZSBiZSB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYSBzZXF1ZW5jZSBvZlxuICAvLyBjb2RlIHBvaW50cyB0aGF0IGFyZSBub3QgVSswMDNCICg7KSBmcm9tIGlucHV0LCBnaXZlblxuICAvLyBwb3NpdGlvbi5cbiAgbGV0IHN1YnR5cGUgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdChcbiAgICAnOycsXG4gICAgaW5wdXQsXG4gICAgcG9zaXRpb25cbiAgKVxuXG4gIC8vIDguIFJlbW92ZSBhbnkgdHJhaWxpbmcgSFRUUCB3aGl0ZXNwYWNlIGZyb20gc3VidHlwZS5cbiAgc3VidHlwZSA9IHJlbW92ZUhUVFBXaGl0ZXNwYWNlKHN1YnR5cGUsIGZhbHNlLCB0cnVlKVxuXG4gIC8vIDkuIElmIHN1YnR5cGUgaXMgdGhlIGVtcHR5IHN0cmluZyBvciBkb2VzIG5vdCBzb2xlbHlcbiAgLy8gY29udGFpbiBIVFRQIHRva2VuIGNvZGUgcG9pbnRzLCB0aGVuIHJldHVybiBmYWlsdXJlLlxuICBpZiAoc3VidHlwZS5sZW5ndGggPT09IDAgfHwgIUhUVFBfVE9LRU5fQ09ERVBPSU5UUy50ZXN0KHN1YnR5cGUpKSB7XG4gICAgcmV0dXJuICdmYWlsdXJlJ1xuICB9XG5cbiAgY29uc3QgdHlwZUxvd2VyY2FzZSA9IHR5cGUudG9Mb3dlckNhc2UoKVxuICBjb25zdCBzdWJ0eXBlTG93ZXJjYXNlID0gc3VidHlwZS50b0xvd2VyQ2FzZSgpXG5cbiAgLy8gMTAuIExldCBtaW1lVHlwZSBiZSBhIG5ldyBNSU1FIHR5cGUgcmVjb3JkIHdob3NlIHR5cGVcbiAgLy8gaXMgdHlwZSwgaW4gQVNDSUkgbG93ZXJjYXNlLCBhbmQgc3VidHlwZSBpcyBzdWJ0eXBlLFxuICAvLyBpbiBBU0NJSSBsb3dlcmNhc2UuXG4gIC8vIGh0dHBzOi8vbWltZXNuaWZmLnNwZWMud2hhdHdnLm9yZy8jbWltZS10eXBlXG4gIGNvbnN0IG1pbWVUeXBlID0ge1xuICAgIHR5cGU6IHR5cGVMb3dlcmNhc2UsXG4gICAgc3VidHlwZTogc3VidHlwZUxvd2VyY2FzZSxcbiAgICAvKiogQHR5cGUge01hcDxzdHJpbmcsIHN0cmluZz59ICovXG4gICAgcGFyYW1ldGVyczogbmV3IE1hcCgpLFxuICAgIC8vIGh0dHBzOi8vbWltZXNuaWZmLnNwZWMud2hhdHdnLm9yZy8jbWltZS10eXBlLWVzc2VuY2VcbiAgICBlc3NlbmNlOiBgJHt0eXBlTG93ZXJjYXNlfS8ke3N1YnR5cGVMb3dlcmNhc2V9YFxuICB9XG5cbiAgLy8gMTEuIFdoaWxlIHBvc2l0aW9uIGlzIG5vdCBwYXN0IHRoZSBlbmQgb2YgaW5wdXQ6XG4gIHdoaWxlIChwb3NpdGlvbi5wb3NpdGlvbiA8IGlucHV0Lmxlbmd0aCkge1xuICAgIC8vIDEuIEFkdmFuY2UgcG9zaXRpb24gYnkgMS4gKFRoaXMgc2tpcHMgcGFzdCBVKzAwM0IgKDspLilcbiAgICBwb3NpdGlvbi5wb3NpdGlvbisrXG5cbiAgICAvLyAyLiBDb2xsZWN0IGEgc2VxdWVuY2Ugb2YgY29kZSBwb2ludHMgdGhhdCBhcmUgSFRUUFxuICAgIC8vIHdoaXRlc3BhY2UgZnJvbSBpbnB1dCBnaXZlbiBwb3NpdGlvbi5cbiAgICBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzKFxuICAgICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtd2hpdGVzcGFjZVxuICAgICAgY2hhciA9PiBIVFRQX1dISVRFU1BBQ0VfUkVHRVgudGVzdChjaGFyKSxcbiAgICAgIGlucHV0LFxuICAgICAgcG9zaXRpb25cbiAgICApXG5cbiAgICAvLyAzLiBMZXQgcGFyYW1ldGVyTmFtZSBiZSB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYVxuICAgIC8vIHNlcXVlbmNlIG9mIGNvZGUgcG9pbnRzIHRoYXQgYXJlIG5vdCBVKzAwM0IgKDspXG4gICAgLy8gb3IgVSswMDNEICg9KSBmcm9tIGlucHV0LCBnaXZlbiBwb3NpdGlvbi5cbiAgICBsZXQgcGFyYW1ldGVyTmFtZSA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHMoXG4gICAgICAoY2hhcikgPT4gY2hhciAhPT0gJzsnICYmIGNoYXIgIT09ICc9JyxcbiAgICAgIGlucHV0LFxuICAgICAgcG9zaXRpb25cbiAgICApXG5cbiAgICAvLyA0LiBTZXQgcGFyYW1ldGVyTmFtZSB0byBwYXJhbWV0ZXJOYW1lLCBpbiBBU0NJSVxuICAgIC8vIGxvd2VyY2FzZS5cbiAgICBwYXJhbWV0ZXJOYW1lID0gcGFyYW1ldGVyTmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgICAvLyA1LiBJZiBwb3NpdGlvbiBpcyBub3QgcGFzdCB0aGUgZW5kIG9mIGlucHV0LCB0aGVuOlxuICAgIGlmIChwb3NpdGlvbi5wb3NpdGlvbiA8IGlucHV0Lmxlbmd0aCkge1xuICAgICAgLy8gMS4gSWYgdGhlIGNvZGUgcG9pbnQgYXQgcG9zaXRpb24gd2l0aGluIGlucHV0IGlzXG4gICAgICAvLyBVKzAwM0IgKDspLCB0aGVuIGNvbnRpbnVlLlxuICAgICAgaWYgKGlucHV0W3Bvc2l0aW9uLnBvc2l0aW9uXSA9PT0gJzsnKSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIEFkdmFuY2UgcG9zaXRpb24gYnkgMS4gKFRoaXMgc2tpcHMgcGFzdCBVKzAwM0QgKD0pLilcbiAgICAgIHBvc2l0aW9uLnBvc2l0aW9uKytcbiAgICB9XG5cbiAgICAvLyA2LiBJZiBwb3NpdGlvbiBpcyBwYXN0IHRoZSBlbmQgb2YgaW5wdXQsIHRoZW4gYnJlYWsuXG4gICAgaWYgKHBvc2l0aW9uLnBvc2l0aW9uID4gaW5wdXQubGVuZ3RoKSB7XG4gICAgICBicmVha1xuICAgIH1cblxuICAgIC8vIDcuIExldCBwYXJhbWV0ZXJWYWx1ZSBiZSBudWxsLlxuICAgIGxldCBwYXJhbWV0ZXJWYWx1ZSA9IG51bGxcblxuICAgIC8vIDguIElmIHRoZSBjb2RlIHBvaW50IGF0IHBvc2l0aW9uIHdpdGhpbiBpbnB1dCBpc1xuICAgIC8vIFUrMDAyMiAoXCIpLCB0aGVuOlxuICAgIGlmIChpbnB1dFtwb3NpdGlvbi5wb3NpdGlvbl0gPT09ICdcIicpIHtcbiAgICAgIC8vIDEuIFNldCBwYXJhbWV0ZXJWYWx1ZSB0byB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmdcbiAgICAgIC8vIGFuIEhUVFAgcXVvdGVkIHN0cmluZyBmcm9tIGlucHV0LCBnaXZlbiBwb3NpdGlvblxuICAgICAgLy8gYW5kIHRoZSBleHRyYWN0LXZhbHVlIGZsYWcuXG4gICAgICBwYXJhbWV0ZXJWYWx1ZSA9IGNvbGxlY3RBbkhUVFBRdW90ZWRTdHJpbmcoaW5wdXQsIHBvc2l0aW9uLCB0cnVlKVxuXG4gICAgICAvLyAyLiBDb2xsZWN0IGEgc2VxdWVuY2Ugb2YgY29kZSBwb2ludHMgdGhhdCBhcmUgbm90XG4gICAgICAvLyBVKzAwM0IgKDspIGZyb20gaW5wdXQsIGdpdmVuIHBvc2l0aW9uLlxuICAgICAgY29sbGVjdEFTZXF1ZW5jZU9mQ29kZVBvaW50c0Zhc3QoXG4gICAgICAgICc7JyxcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHBvc2l0aW9uXG4gICAgICApXG5cbiAgICAvLyA5LiBPdGhlcndpc2U6XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDEuIFNldCBwYXJhbWV0ZXJWYWx1ZSB0byB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmdcbiAgICAgIC8vIGEgc2VxdWVuY2Ugb2YgY29kZSBwb2ludHMgdGhhdCBhcmUgbm90IFUrMDAzQiAoOylcbiAgICAgIC8vIGZyb20gaW5wdXQsIGdpdmVuIHBvc2l0aW9uLlxuICAgICAgcGFyYW1ldGVyVmFsdWUgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdChcbiAgICAgICAgJzsnLFxuICAgICAgICBpbnB1dCxcbiAgICAgICAgcG9zaXRpb25cbiAgICAgIClcblxuICAgICAgLy8gMi4gUmVtb3ZlIGFueSB0cmFpbGluZyBIVFRQIHdoaXRlc3BhY2UgZnJvbSBwYXJhbWV0ZXJWYWx1ZS5cbiAgICAgIHBhcmFtZXRlclZhbHVlID0gcmVtb3ZlSFRUUFdoaXRlc3BhY2UocGFyYW1ldGVyVmFsdWUsIGZhbHNlLCB0cnVlKVxuXG4gICAgICAvLyAzLiBJZiBwYXJhbWV0ZXJWYWx1ZSBpcyB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIGNvbnRpbnVlLlxuICAgICAgaWYgKHBhcmFtZXRlclZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDEwLiBJZiBhbGwgb2YgdGhlIGZvbGxvd2luZyBhcmUgdHJ1ZVxuICAgIC8vIC0gcGFyYW1ldGVyTmFtZSBpcyBub3QgdGhlIGVtcHR5IHN0cmluZ1xuICAgIC8vIC0gcGFyYW1ldGVyTmFtZSBzb2xlbHkgY29udGFpbnMgSFRUUCB0b2tlbiBjb2RlIHBvaW50c1xuICAgIC8vIC0gcGFyYW1ldGVyVmFsdWUgc29sZWx5IGNvbnRhaW5zIEhUVFAgcXVvdGVkLXN0cmluZyB0b2tlbiBjb2RlIHBvaW50c1xuICAgIC8vIC0gbWltZVR5cGVcdTIwMTlzIHBhcmFtZXRlcnNbcGFyYW1ldGVyTmFtZV0gZG9lcyBub3QgZXhpc3RcbiAgICAvLyB0aGVuIHNldCBtaW1lVHlwZVx1MjAxOXMgcGFyYW1ldGVyc1twYXJhbWV0ZXJOYW1lXSB0byBwYXJhbWV0ZXJWYWx1ZS5cbiAgICBpZiAoXG4gICAgICBwYXJhbWV0ZXJOYW1lLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgSFRUUF9UT0tFTl9DT0RFUE9JTlRTLnRlc3QocGFyYW1ldGVyTmFtZSkgJiZcbiAgICAgIChwYXJhbWV0ZXJWYWx1ZS5sZW5ndGggPT09IDAgfHwgSFRUUF9RVU9URURfU1RSSU5HX1RPS0VOUy50ZXN0KHBhcmFtZXRlclZhbHVlKSkgJiZcbiAgICAgICFtaW1lVHlwZS5wYXJhbWV0ZXJzLmhhcyhwYXJhbWV0ZXJOYW1lKVxuICAgICkge1xuICAgICAgbWltZVR5cGUucGFyYW1ldGVycy5zZXQocGFyYW1ldGVyTmFtZSwgcGFyYW1ldGVyVmFsdWUpXG4gICAgfVxuICB9XG5cbiAgLy8gMTIuIFJldHVybiBtaW1lVHlwZS5cbiAgcmV0dXJuIG1pbWVUeXBlXG59XG5cbi8vIGh0dHBzOi8vaW5mcmEuc3BlYy53aGF0d2cub3JnLyNmb3JnaXZpbmctYmFzZTY0LWRlY29kZVxuLyoqIEBwYXJhbSB7c3RyaW5nfSBkYXRhICovXG5mdW5jdGlvbiBmb3JnaXZpbmdCYXNlNjQgKGRhdGEpIHtcbiAgLy8gMS4gUmVtb3ZlIGFsbCBBU0NJSSB3aGl0ZXNwYWNlIGZyb20gZGF0YS5cbiAgZGF0YSA9IGRhdGEucmVwbGFjZSgvW1xcdTAwMDlcXHUwMDBBXFx1MDAwQ1xcdTAwMERcXHUwMDIwXS9nLCAnJykgIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuICAvLyAyLiBJZiBkYXRhXHUyMDE5cyBjb2RlIHBvaW50IGxlbmd0aCBkaXZpZGVzIGJ5IDQgbGVhdmluZ1xuICAvLyBubyByZW1haW5kZXIsIHRoZW46XG4gIGlmIChkYXRhLmxlbmd0aCAlIDQgPT09IDApIHtcbiAgICAvLyAxLiBJZiBkYXRhIGVuZHMgd2l0aCBvbmUgb3IgdHdvIFUrMDAzRCAoPSkgY29kZSBwb2ludHMsXG4gICAgLy8gdGhlbiByZW1vdmUgdGhlbSBmcm9tIGRhdGEuXG4gICAgZGF0YSA9IGRhdGEucmVwbGFjZSgvPT89JC8sICcnKVxuICB9XG5cbiAgLy8gMy4gSWYgZGF0YVx1MjAxOXMgY29kZSBwb2ludCBsZW5ndGggZGl2aWRlcyBieSA0IGxlYXZpbmdcbiAgLy8gYSByZW1haW5kZXIgb2YgMSwgdGhlbiByZXR1cm4gZmFpbHVyZS5cbiAgaWYgKGRhdGEubGVuZ3RoICUgNCA9PT0gMSkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIC8vIDQuIElmIGRhdGEgY29udGFpbnMgYSBjb2RlIHBvaW50IHRoYXQgaXMgbm90IG9uZSBvZlxuICAvLyAgVSswMDJCICgrKVxuICAvLyAgVSswMDJGICgvKVxuICAvLyAgQVNDSUkgYWxwaGFudW1lcmljXG4gIC8vIHRoZW4gcmV0dXJuIGZhaWx1cmUuXG4gIGlmICgvW14rLzAtOUEtWmEtel0vLnRlc3QoZGF0YSkpIHtcbiAgICByZXR1cm4gJ2ZhaWx1cmUnXG4gIH1cblxuICBjb25zdCBiaW5hcnkgPSBhdG9iKGRhdGEpXG4gIGNvbnN0IGJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkoYmluYXJ5Lmxlbmd0aClcblxuICBmb3IgKGxldCBieXRlID0gMDsgYnl0ZSA8IGJpbmFyeS5sZW5ndGg7IGJ5dGUrKykge1xuICAgIGJ5dGVzW2J5dGVdID0gYmluYXJ5LmNoYXJDb2RlQXQoYnl0ZSlcbiAgfVxuXG4gIHJldHVybiBieXRlc1xufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29sbGVjdC1hbi1odHRwLXF1b3RlZC1zdHJpbmdcbi8vIHRlc3RzOiBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZXhhbXBsZS1odHRwLXF1b3RlZC1zdHJpbmdcbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IGlucHV0XG4gKiBAcGFyYW0ge3sgcG9zaXRpb246IG51bWJlciB9fSBwb3NpdGlvblxuICogQHBhcmFtIHtib29sZWFuP30gZXh0cmFjdFZhbHVlXG4gKi9cbmZ1bmN0aW9uIGNvbGxlY3RBbkhUVFBRdW90ZWRTdHJpbmcgKGlucHV0LCBwb3NpdGlvbiwgZXh0cmFjdFZhbHVlKSB7XG4gIC8vIDEuIExldCBwb3NpdGlvblN0YXJ0IGJlIHBvc2l0aW9uLlxuICBjb25zdCBwb3NpdGlvblN0YXJ0ID0gcG9zaXRpb24ucG9zaXRpb25cblxuICAvLyAyLiBMZXQgdmFsdWUgYmUgdGhlIGVtcHR5IHN0cmluZy5cbiAgbGV0IHZhbHVlID0gJydcblxuICAvLyAzLiBBc3NlcnQ6IHRoZSBjb2RlIHBvaW50IGF0IHBvc2l0aW9uIHdpdGhpbiBpbnB1dFxuICAvLyBpcyBVKzAwMjIgKFwiKS5cbiAgYXNzZXJ0KGlucHV0W3Bvc2l0aW9uLnBvc2l0aW9uXSA9PT0gJ1wiJylcblxuICAvLyA0LiBBZHZhbmNlIHBvc2l0aW9uIGJ5IDEuXG4gIHBvc2l0aW9uLnBvc2l0aW9uKytcblxuICAvLyA1LiBXaGlsZSB0cnVlOlxuICB3aGlsZSAodHJ1ZSkge1xuICAgIC8vIDEuIEFwcGVuZCB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYSBzZXF1ZW5jZSBvZiBjb2RlIHBvaW50c1xuICAgIC8vIHRoYXQgYXJlIG5vdCBVKzAwMjIgKFwiKSBvciBVKzAwNUMgKFxcKSBmcm9tIGlucHV0LCBnaXZlblxuICAgIC8vIHBvc2l0aW9uLCB0byB2YWx1ZS5cbiAgICB2YWx1ZSArPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzKFxuICAgICAgKGNoYXIpID0+IGNoYXIgIT09ICdcIicgJiYgY2hhciAhPT0gJ1xcXFwnLFxuICAgICAgaW5wdXQsXG4gICAgICBwb3NpdGlvblxuICAgIClcblxuICAgIC8vIDIuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlbiBicmVhay5cbiAgICBpZiAocG9zaXRpb24ucG9zaXRpb24gPj0gaW5wdXQubGVuZ3RoKSB7XG4gICAgICBicmVha1xuICAgIH1cblxuICAgIC8vIDMuIExldCBxdW90ZU9yQmFja3NsYXNoIGJlIHRoZSBjb2RlIHBvaW50IGF0IHBvc2l0aW9uIHdpdGhpblxuICAgIC8vIGlucHV0LlxuICAgIGNvbnN0IHF1b3RlT3JCYWNrc2xhc2ggPSBpbnB1dFtwb3NpdGlvbi5wb3NpdGlvbl1cblxuICAgIC8vIDQuIEFkdmFuY2UgcG9zaXRpb24gYnkgMS5cbiAgICBwb3NpdGlvbi5wb3NpdGlvbisrXG5cbiAgICAvLyA1LiBJZiBxdW90ZU9yQmFja3NsYXNoIGlzIFUrMDA1QyAoXFwpLCB0aGVuOlxuICAgIGlmIChxdW90ZU9yQmFja3NsYXNoID09PSAnXFxcXCcpIHtcbiAgICAgIC8vIDEuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlbiBhcHBlbmRcbiAgICAgIC8vIFUrMDA1QyAoXFwpIHRvIHZhbHVlIGFuZCBicmVhay5cbiAgICAgIGlmIChwb3NpdGlvbi5wb3NpdGlvbiA+PSBpbnB1dC5sZW5ndGgpIHtcbiAgICAgICAgdmFsdWUgKz0gJ1xcXFwnXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIEFwcGVuZCB0aGUgY29kZSBwb2ludCBhdCBwb3NpdGlvbiB3aXRoaW4gaW5wdXQgdG8gdmFsdWUuXG4gICAgICB2YWx1ZSArPSBpbnB1dFtwb3NpdGlvbi5wb3NpdGlvbl1cblxuICAgICAgLy8gMy4gQWR2YW5jZSBwb3NpdGlvbiBieSAxLlxuICAgICAgcG9zaXRpb24ucG9zaXRpb24rK1xuXG4gICAgLy8gNi4gT3RoZXJ3aXNlOlxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAxLiBBc3NlcnQ6IHF1b3RlT3JCYWNrc2xhc2ggaXMgVSswMDIyIChcIikuXG4gICAgICBhc3NlcnQocXVvdGVPckJhY2tzbGFzaCA9PT0gJ1wiJylcblxuICAgICAgLy8gMi4gQnJlYWsuXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIC8vIDYuIElmIHRoZSBleHRyYWN0LXZhbHVlIGZsYWcgaXMgc2V0LCB0aGVuIHJldHVybiB2YWx1ZS5cbiAgaWYgKGV4dHJhY3RWYWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZVxuICB9XG5cbiAgLy8gNy4gUmV0dXJuIHRoZSBjb2RlIHBvaW50cyBmcm9tIHBvc2l0aW9uU3RhcnQgdG8gcG9zaXRpb24sXG4gIC8vIGluY2x1c2l2ZSwgd2l0aGluIGlucHV0LlxuICByZXR1cm4gaW5wdXQuc2xpY2UocG9zaXRpb25TdGFydCwgcG9zaXRpb24ucG9zaXRpb24pXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL21pbWVzbmlmZi5zcGVjLndoYXR3Zy5vcmcvI3NlcmlhbGl6ZS1hLW1pbWUtdHlwZVxuICovXG5mdW5jdGlvbiBzZXJpYWxpemVBTWltZVR5cGUgKG1pbWVUeXBlKSB7XG4gIGFzc2VydChtaW1lVHlwZSAhPT0gJ2ZhaWx1cmUnKVxuICBjb25zdCB7IHBhcmFtZXRlcnMsIGVzc2VuY2UgfSA9IG1pbWVUeXBlXG5cbiAgLy8gMS4gTGV0IHNlcmlhbGl6YXRpb24gYmUgdGhlIGNvbmNhdGVuYXRpb24gb2YgbWltZVR5cGVcdTIwMTlzXG4gIC8vICAgIHR5cGUsIFUrMDAyRiAoLyksIGFuZCBtaW1lVHlwZVx1MjAxOXMgc3VidHlwZS5cbiAgbGV0IHNlcmlhbGl6YXRpb24gPSBlc3NlbmNlXG5cbiAgLy8gMi4gRm9yIGVhY2ggbmFtZSBcdTIxOTIgdmFsdWUgb2YgbWltZVR5cGVcdTIwMTlzIHBhcmFtZXRlcnM6XG4gIGZvciAobGV0IFtuYW1lLCB2YWx1ZV0gb2YgcGFyYW1ldGVycy5lbnRyaWVzKCkpIHtcbiAgICAvLyAxLiBBcHBlbmQgVSswMDNCICg7KSB0byBzZXJpYWxpemF0aW9uLlxuICAgIHNlcmlhbGl6YXRpb24gKz0gJzsnXG5cbiAgICAvLyAyLiBBcHBlbmQgbmFtZSB0byBzZXJpYWxpemF0aW9uLlxuICAgIHNlcmlhbGl6YXRpb24gKz0gbmFtZVxuXG4gICAgLy8gMy4gQXBwZW5kIFUrMDAzRCAoPSkgdG8gc2VyaWFsaXphdGlvbi5cbiAgICBzZXJpYWxpemF0aW9uICs9ICc9J1xuXG4gICAgLy8gNC4gSWYgdmFsdWUgZG9lcyBub3Qgc29sZWx5IGNvbnRhaW4gSFRUUCB0b2tlbiBjb2RlXG4gICAgLy8gICAgcG9pbnRzIG9yIHZhbHVlIGlzIHRoZSBlbXB0eSBzdHJpbmcsIHRoZW46XG4gICAgaWYgKCFIVFRQX1RPS0VOX0NPREVQT0lOVFMudGVzdCh2YWx1ZSkpIHtcbiAgICAgIC8vIDEuIFByZWNlZGUgZWFjaCBvY2N1cmVuY2Ugb2YgVSswMDIyIChcIikgb3JcbiAgICAgIC8vICAgIFUrMDA1QyAoXFwpIGluIHZhbHVlIHdpdGggVSswMDVDIChcXCkuXG4gICAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoLyhcXFxcfFwiKS9nLCAnXFxcXCQxJylcblxuICAgICAgLy8gMi4gUHJlcGVuZCBVKzAwMjIgKFwiKSB0byB2YWx1ZS5cbiAgICAgIHZhbHVlID0gJ1wiJyArIHZhbHVlXG5cbiAgICAgIC8vIDMuIEFwcGVuZCBVKzAwMjIgKFwiKSB0byB2YWx1ZS5cbiAgICAgIHZhbHVlICs9ICdcIidcbiAgICB9XG5cbiAgICAvLyA1LiBBcHBlbmQgdmFsdWUgdG8gc2VyaWFsaXphdGlvbi5cbiAgICBzZXJpYWxpemF0aW9uICs9IHZhbHVlXG4gIH1cblxuICAvLyAzLiBSZXR1cm4gc2VyaWFsaXphdGlvbi5cbiAgcmV0dXJuIHNlcmlhbGl6YXRpb25cbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNodHRwLXdoaXRlc3BhY2VcbiAqIEBwYXJhbSB7c3RyaW5nfSBjaGFyXG4gKi9cbmZ1bmN0aW9uIGlzSFRUUFdoaXRlU3BhY2UgKGNoYXIpIHtcbiAgcmV0dXJuIGNoYXIgPT09ICdcXHInIHx8IGNoYXIgPT09ICdcXG4nIHx8IGNoYXIgPT09ICdcXHQnIHx8IGNoYXIgPT09ICcgJ1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtd2hpdGVzcGFjZVxuICogQHBhcmFtIHtzdHJpbmd9IHN0clxuICovXG5mdW5jdGlvbiByZW1vdmVIVFRQV2hpdGVzcGFjZSAoc3RyLCBsZWFkaW5nID0gdHJ1ZSwgdHJhaWxpbmcgPSB0cnVlKSB7XG4gIGxldCBsZWFkID0gMFxuICBsZXQgdHJhaWwgPSBzdHIubGVuZ3RoIC0gMVxuXG4gIGlmIChsZWFkaW5nKSB7XG4gICAgZm9yICg7IGxlYWQgPCBzdHIubGVuZ3RoICYmIGlzSFRUUFdoaXRlU3BhY2Uoc3RyW2xlYWRdKTsgbGVhZCsrKTtcbiAgfVxuXG4gIGlmICh0cmFpbGluZykge1xuICAgIGZvciAoOyB0cmFpbCA+IDAgJiYgaXNIVFRQV2hpdGVTcGFjZShzdHJbdHJhaWxdKTsgdHJhaWwtLSk7XG4gIH1cblxuICByZXR1cm4gc3RyLnNsaWNlKGxlYWQsIHRyYWlsICsgMSlcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vaW5mcmEuc3BlYy53aGF0d2cub3JnLyNhc2NpaS13aGl0ZXNwYWNlXG4gKiBAcGFyYW0ge3N0cmluZ30gY2hhclxuICovXG5mdW5jdGlvbiBpc0FTQ0lJV2hpdGVzcGFjZSAoY2hhcikge1xuICByZXR1cm4gY2hhciA9PT0gJ1xccicgfHwgY2hhciA9PT0gJ1xcbicgfHwgY2hhciA9PT0gJ1xcdCcgfHwgY2hhciA9PT0gJ1xcZicgfHwgY2hhciA9PT0gJyAnXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2luZnJhLnNwZWMud2hhdHdnLm9yZy8jc3RyaXAtbGVhZGluZy1hbmQtdHJhaWxpbmctYXNjaWktd2hpdGVzcGFjZVxuICovXG5mdW5jdGlvbiByZW1vdmVBU0NJSVdoaXRlc3BhY2UgKHN0ciwgbGVhZGluZyA9IHRydWUsIHRyYWlsaW5nID0gdHJ1ZSkge1xuICBsZXQgbGVhZCA9IDBcbiAgbGV0IHRyYWlsID0gc3RyLmxlbmd0aCAtIDFcblxuICBpZiAobGVhZGluZykge1xuICAgIGZvciAoOyBsZWFkIDwgc3RyLmxlbmd0aCAmJiBpc0FTQ0lJV2hpdGVzcGFjZShzdHJbbGVhZF0pOyBsZWFkKyspO1xuICB9XG5cbiAgaWYgKHRyYWlsaW5nKSB7XG4gICAgZm9yICg7IHRyYWlsID4gMCAmJiBpc0FTQ0lJV2hpdGVzcGFjZShzdHJbdHJhaWxdKTsgdHJhaWwtLSk7XG4gIH1cblxuICByZXR1cm4gc3RyLnNsaWNlKGxlYWQsIHRyYWlsICsgMSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGRhdGFVUkxQcm9jZXNzb3IsXG4gIFVSTFNlcmlhbGl6ZXIsXG4gIGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHMsXG4gIGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0LFxuICBzdHJpbmdQZXJjZW50RGVjb2RlLFxuICBwYXJzZU1JTUVUeXBlLFxuICBjb2xsZWN0QW5IVFRQUXVvdGVkU3RyaW5nLFxuICBzZXJpYWxpemVBTWltZVR5cGVcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBCbG9iLCBGaWxlOiBOYXRpdmVGaWxlIH0gPSByZXF1aXJlKCdidWZmZXInKVxuY29uc3QgeyB0eXBlcyB9ID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IGtTdGF0ZSB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgaXNCbG9iTGlrZSB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuL3dlYmlkbCcpXG5jb25zdCB7IHBhcnNlTUlNRVR5cGUsIHNlcmlhbGl6ZUFNaW1lVHlwZSB9ID0gcmVxdWlyZSgnLi9kYXRhVVJMJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IGVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKVxuXG5jbGFzcyBGaWxlIGV4dGVuZHMgQmxvYiB7XG4gIGNvbnN0cnVjdG9yIChmaWxlQml0cywgZmlsZU5hbWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIC8vIFRoZSBGaWxlIGNvbnN0cnVjdG9yIGlzIGludm9rZWQgd2l0aCB0d28gb3IgdGhyZWUgcGFyYW1ldGVycywgZGVwZW5kaW5nXG4gICAgLy8gb24gd2hldGhlciB0aGUgb3B0aW9uYWwgZGljdGlvbmFyeSBwYXJhbWV0ZXIgaXMgdXNlZC4gV2hlbiB0aGUgRmlsZSgpXG4gICAgLy8gY29uc3RydWN0b3IgaXMgaW52b2tlZCwgdXNlciBhZ2VudHMgbXVzdCBydW4gdGhlIGZvbGxvd2luZyBzdGVwczpcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDIsIHsgaGVhZGVyOiAnRmlsZSBjb25zdHJ1Y3RvcicgfSlcblxuICAgIGZpbGVCaXRzID0gd2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPEJsb2JQYXJ0PiddKGZpbGVCaXRzKVxuICAgIGZpbGVOYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKGZpbGVOYW1lKVxuICAgIG9wdGlvbnMgPSB3ZWJpZGwuY29udmVydGVycy5GaWxlUHJvcGVydHlCYWcob3B0aW9ucylcblxuICAgIC8vIDEuIExldCBieXRlcyBiZSB0aGUgcmVzdWx0IG9mIHByb2Nlc3NpbmcgYmxvYiBwYXJ0cyBnaXZlbiBmaWxlQml0cyBhbmRcbiAgICAvLyBvcHRpb25zLlxuICAgIC8vIE5vdGU6IEJsb2IgaGFuZGxlcyB0aGlzIGZvciB1c1xuXG4gICAgLy8gMi4gTGV0IG4gYmUgdGhlIGZpbGVOYW1lIGFyZ3VtZW50IHRvIHRoZSBjb25zdHJ1Y3Rvci5cbiAgICBjb25zdCBuID0gZmlsZU5hbWVcblxuICAgIC8vIDMuIFByb2Nlc3MgRmlsZVByb3BlcnR5QmFnIGRpY3Rpb25hcnkgYXJndW1lbnQgYnkgcnVubmluZyB0aGUgZm9sbG93aW5nXG4gICAgLy8gc3Vic3RlcHM6XG5cbiAgICAvLyAgICAxLiBJZiB0aGUgdHlwZSBtZW1iZXIgaXMgcHJvdmlkZWQgYW5kIGlzIG5vdCB0aGUgZW1wdHkgc3RyaW5nLCBsZXQgdFxuICAgIC8vICAgIGJlIHNldCB0byB0aGUgdHlwZSBkaWN0aW9uYXJ5IG1lbWJlci4gSWYgdCBjb250YWlucyBhbnkgY2hhcmFjdGVyc1xuICAgIC8vICAgIG91dHNpZGUgdGhlIHJhbmdlIFUrMDAyMCB0byBVKzAwN0UsIHRoZW4gc2V0IHQgdG8gdGhlIGVtcHR5IHN0cmluZ1xuICAgIC8vICAgIGFuZCByZXR1cm4gZnJvbSB0aGVzZSBzdWJzdGVwcy5cbiAgICAvLyAgICAyLiBDb252ZXJ0IGV2ZXJ5IGNoYXJhY3RlciBpbiB0IHRvIEFTQ0lJIGxvd2VyY2FzZS5cbiAgICBsZXQgdCA9IG9wdGlvbnMudHlwZVxuICAgIGxldCBkXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbGFiZWxzXG4gICAgc3Vic3RlcDoge1xuICAgICAgaWYgKHQpIHtcbiAgICAgICAgdCA9IHBhcnNlTUlNRVR5cGUodClcblxuICAgICAgICBpZiAodCA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgICAgdCA9ICcnXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWxhYmVsc1xuICAgICAgICAgIGJyZWFrIHN1YnN0ZXBcbiAgICAgICAgfVxuXG4gICAgICAgIHQgPSBzZXJpYWxpemVBTWltZVR5cGUodCkudG9Mb3dlckNhc2UoKVxuICAgICAgfVxuXG4gICAgICAvLyAgICAzLiBJZiB0aGUgbGFzdE1vZGlmaWVkIG1lbWJlciBpcyBwcm92aWRlZCwgbGV0IGQgYmUgc2V0IHRvIHRoZVxuICAgICAgLy8gICAgbGFzdE1vZGlmaWVkIGRpY3Rpb25hcnkgbWVtYmVyLiBJZiBpdCBpcyBub3QgcHJvdmlkZWQsIHNldCBkIHRvIHRoZVxuICAgICAgLy8gICAgY3VycmVudCBkYXRlIGFuZCB0aW1lIHJlcHJlc2VudGVkIGFzIHRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHNpbmNlXG4gICAgICAvLyAgICB0aGUgVW5peCBFcG9jaCAod2hpY2ggaXMgdGhlIGVxdWl2YWxlbnQgb2YgRGF0ZS5ub3coKSBbRUNNQS0yNjJdKS5cbiAgICAgIGQgPSBvcHRpb25zLmxhc3RNb2RpZmllZFxuICAgIH1cblxuICAgIC8vIDQuIFJldHVybiBhIG5ldyBGaWxlIG9iamVjdCBGIHN1Y2ggdGhhdDpcbiAgICAvLyBGIHJlZmVycyB0byB0aGUgYnl0ZXMgYnl0ZSBzZXF1ZW5jZS5cbiAgICAvLyBGLnNpemUgaXMgc2V0IHRvIHRoZSBudW1iZXIgb2YgdG90YWwgYnl0ZXMgaW4gYnl0ZXMuXG4gICAgLy8gRi5uYW1lIGlzIHNldCB0byBuLlxuICAgIC8vIEYudHlwZSBpcyBzZXQgdG8gdC5cbiAgICAvLyBGLmxhc3RNb2RpZmllZCBpcyBzZXQgdG8gZC5cblxuICAgIHN1cGVyKHByb2Nlc3NCbG9iUGFydHMoZmlsZUJpdHMsIG9wdGlvbnMpLCB7IHR5cGU6IHQgfSlcbiAgICB0aGlzW2tTdGF0ZV0gPSB7XG4gICAgICBuYW1lOiBuLFxuICAgICAgbGFzdE1vZGlmaWVkOiBkLFxuICAgICAgdHlwZTogdFxuICAgIH1cbiAgfVxuXG4gIGdldCBuYW1lICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5uYW1lXG4gIH1cblxuICBnZXQgbGFzdE1vZGlmaWVkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5sYXN0TW9kaWZpZWRcbiAgfVxuXG4gIGdldCB0eXBlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS50eXBlXG4gIH1cbn1cblxuY2xhc3MgRmlsZUxpa2Uge1xuICBjb25zdHJ1Y3RvciAoYmxvYkxpa2UsIGZpbGVOYW1lLCBvcHRpb25zID0ge30pIHtcbiAgICAvLyBUT0RPOiBhcmd1bWVudCBpZGwgdHlwZSBjaGVja1xuXG4gICAgLy8gVGhlIEZpbGUgY29uc3RydWN0b3IgaXMgaW52b2tlZCB3aXRoIHR3byBvciB0aHJlZSBwYXJhbWV0ZXJzLCBkZXBlbmRpbmdcbiAgICAvLyBvbiB3aGV0aGVyIHRoZSBvcHRpb25hbCBkaWN0aW9uYXJ5IHBhcmFtZXRlciBpcyB1c2VkLiBXaGVuIHRoZSBGaWxlKClcbiAgICAvLyBjb25zdHJ1Y3RvciBpcyBpbnZva2VkLCB1c2VyIGFnZW50cyBtdXN0IHJ1biB0aGUgZm9sbG93aW5nIHN0ZXBzOlxuXG4gICAgLy8gMS4gTGV0IGJ5dGVzIGJlIHRoZSByZXN1bHQgb2YgcHJvY2Vzc2luZyBibG9iIHBhcnRzIGdpdmVuIGZpbGVCaXRzIGFuZFxuICAgIC8vIG9wdGlvbnMuXG5cbiAgICAvLyAyLiBMZXQgbiBiZSB0aGUgZmlsZU5hbWUgYXJndW1lbnQgdG8gdGhlIGNvbnN0cnVjdG9yLlxuICAgIGNvbnN0IG4gPSBmaWxlTmFtZVxuXG4gICAgLy8gMy4gUHJvY2VzcyBGaWxlUHJvcGVydHlCYWcgZGljdGlvbmFyeSBhcmd1bWVudCBieSBydW5uaW5nIHRoZSBmb2xsb3dpbmdcbiAgICAvLyBzdWJzdGVwczpcblxuICAgIC8vICAgIDEuIElmIHRoZSB0eXBlIG1lbWJlciBpcyBwcm92aWRlZCBhbmQgaXMgbm90IHRoZSBlbXB0eSBzdHJpbmcsIGxldCB0XG4gICAgLy8gICAgYmUgc2V0IHRvIHRoZSB0eXBlIGRpY3Rpb25hcnkgbWVtYmVyLiBJZiB0IGNvbnRhaW5zIGFueSBjaGFyYWN0ZXJzXG4gICAgLy8gICAgb3V0c2lkZSB0aGUgcmFuZ2UgVSswMDIwIHRvIFUrMDA3RSwgdGhlbiBzZXQgdCB0byB0aGUgZW1wdHkgc3RyaW5nXG4gICAgLy8gICAgYW5kIHJldHVybiBmcm9tIHRoZXNlIHN1YnN0ZXBzLlxuICAgIC8vICAgIFRPRE9cbiAgICBjb25zdCB0ID0gb3B0aW9ucy50eXBlXG5cbiAgICAvLyAgICAyLiBDb252ZXJ0IGV2ZXJ5IGNoYXJhY3RlciBpbiB0IHRvIEFTQ0lJIGxvd2VyY2FzZS5cbiAgICAvLyAgICBUT0RPXG5cbiAgICAvLyAgICAzLiBJZiB0aGUgbGFzdE1vZGlmaWVkIG1lbWJlciBpcyBwcm92aWRlZCwgbGV0IGQgYmUgc2V0IHRvIHRoZVxuICAgIC8vICAgIGxhc3RNb2RpZmllZCBkaWN0aW9uYXJ5IG1lbWJlci4gSWYgaXQgaXMgbm90IHByb3ZpZGVkLCBzZXQgZCB0byB0aGVcbiAgICAvLyAgICBjdXJyZW50IGRhdGUgYW5kIHRpbWUgcmVwcmVzZW50ZWQgYXMgdGhlIG51bWJlciBvZiBtaWxsaXNlY29uZHMgc2luY2VcbiAgICAvLyAgICB0aGUgVW5peCBFcG9jaCAod2hpY2ggaXMgdGhlIGVxdWl2YWxlbnQgb2YgRGF0ZS5ub3coKSBbRUNNQS0yNjJdKS5cbiAgICBjb25zdCBkID0gb3B0aW9ucy5sYXN0TW9kaWZpZWQgPz8gRGF0ZS5ub3coKVxuXG4gICAgLy8gNC4gUmV0dXJuIGEgbmV3IEZpbGUgb2JqZWN0IEYgc3VjaCB0aGF0OlxuICAgIC8vIEYgcmVmZXJzIHRvIHRoZSBieXRlcyBieXRlIHNlcXVlbmNlLlxuICAgIC8vIEYuc2l6ZSBpcyBzZXQgdG8gdGhlIG51bWJlciBvZiB0b3RhbCBieXRlcyBpbiBieXRlcy5cbiAgICAvLyBGLm5hbWUgaXMgc2V0IHRvIG4uXG4gICAgLy8gRi50eXBlIGlzIHNldCB0byB0LlxuICAgIC8vIEYubGFzdE1vZGlmaWVkIGlzIHNldCB0byBkLlxuXG4gICAgdGhpc1trU3RhdGVdID0ge1xuICAgICAgYmxvYkxpa2UsXG4gICAgICBuYW1lOiBuLFxuICAgICAgdHlwZTogdCxcbiAgICAgIGxhc3RNb2RpZmllZDogZFxuICAgIH1cbiAgfVxuXG4gIHN0cmVhbSAoLi4uYXJncykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ibG9iTGlrZS5zdHJlYW0oLi4uYXJncylcbiAgfVxuXG4gIGFycmF5QnVmZmVyICguLi5hcmdzKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZUxpa2UpXG5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmJsb2JMaWtlLmFycmF5QnVmZmVyKC4uLmFyZ3MpXG4gIH1cblxuICBzbGljZSAoLi4uYXJncykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ibG9iTGlrZS5zbGljZSguLi5hcmdzKVxuICB9XG5cbiAgdGV4dCAoLi4uYXJncykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ibG9iTGlrZS50ZXh0KC4uLmFyZ3MpXG4gIH1cblxuICBnZXQgc2l6ZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZUxpa2UpXG5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmJsb2JMaWtlLnNpemVcbiAgfVxuXG4gIGdldCB0eXBlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlTGlrZSlcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uYmxvYkxpa2UudHlwZVxuICB9XG5cbiAgZ2V0IG5hbWUgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5uYW1lXG4gIH1cblxuICBnZXQgbGFzdE1vZGlmaWVkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlTGlrZSlcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ubGFzdE1vZGlmaWVkXG4gIH1cblxuICBnZXQgW1N5bWJvbC50b1N0cmluZ1RhZ10gKCkge1xuICAgIHJldHVybiAnRmlsZSdcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhGaWxlLnByb3RvdHlwZSwge1xuICBbU3ltYm9sLnRvU3RyaW5nVGFnXToge1xuICAgIHZhbHVlOiAnRmlsZScsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH0sXG4gIG5hbWU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGxhc3RNb2RpZmllZDoga0VudW1lcmFibGVQcm9wZXJ0eVxufSlcblxud2ViaWRsLmNvbnZlcnRlcnMuQmxvYiA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoQmxvYilcblxud2ViaWRsLmNvbnZlcnRlcnMuQmxvYlBhcnQgPSBmdW5jdGlvbiAoViwgb3B0cykge1xuICBpZiAod2ViaWRsLnV0aWwuVHlwZShWKSA9PT0gJ09iamVjdCcpIHtcbiAgICBpZiAoaXNCbG9iTGlrZShWKSkge1xuICAgICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2IoViwgeyBzdHJpY3Q6IGZhbHNlIH0pXG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgQXJyYXlCdWZmZXIuaXNWaWV3KFYpIHx8XG4gICAgICB0eXBlcy5pc0FueUFycmF5QnVmZmVyKFYpXG4gICAgKSB7XG4gICAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuQnVmZmVyU291cmNlKFYsIG9wdHMpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyhWLCBvcHRzKVxufVxuXG53ZWJpZGwuY29udmVydGVyc1snc2VxdWVuY2U8QmxvYlBhcnQ+J10gPSB3ZWJpZGwuc2VxdWVuY2VDb252ZXJ0ZXIoXG4gIHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2JQYXJ0XG4pXG5cbi8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9GaWxlQVBJLyNkZm4tRmlsZVByb3BlcnR5QmFnXG53ZWJpZGwuY29udmVydGVycy5GaWxlUHJvcGVydHlCYWcgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBrZXk6ICdsYXN0TW9kaWZpZWQnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ2xvbmcgbG9uZyddLFxuICAgIGdldCBkZWZhdWx0VmFsdWUgKCkge1xuICAgICAgcmV0dXJuIERhdGUubm93KClcbiAgICB9XG4gIH0sXG4gIHtcbiAgICBrZXk6ICd0eXBlJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyxcbiAgICBkZWZhdWx0VmFsdWU6ICcnXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdlbmRpbmdzJyxcbiAgICBjb252ZXJ0ZXI6ICh2YWx1ZSkgPT4ge1xuICAgICAgdmFsdWUgPSB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcodmFsdWUpXG4gICAgICB2YWx1ZSA9IHZhbHVlLnRvTG93ZXJDYXNlKClcblxuICAgICAgaWYgKHZhbHVlICE9PSAnbmF0aXZlJykge1xuICAgICAgICB2YWx1ZSA9ICd0cmFuc3BhcmVudCdcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlXG4gICAgfSxcbiAgICBkZWZhdWx0VmFsdWU6ICd0cmFuc3BhcmVudCdcbiAgfVxuXSlcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9GaWxlQVBJLyNwcm9jZXNzLWJsb2ItcGFydHNcbiAqIEBwYXJhbSB7KE5vZGVKUy5UeXBlZEFycmF5fEJsb2J8c3RyaW5nKVtdfSBwYXJ0c1xuICogQHBhcmFtIHt7IHR5cGU6IHN0cmluZywgZW5kaW5nczogc3RyaW5nIH19IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gcHJvY2Vzc0Jsb2JQYXJ0cyAocGFydHMsIG9wdGlvbnMpIHtcbiAgLy8gMS4gTGV0IGJ5dGVzIGJlIGFuIGVtcHR5IHNlcXVlbmNlIG9mIGJ5dGVzLlxuICAvKiogQHR5cGUge05vZGVKUy5UeXBlZEFycmF5W119ICovXG4gIGNvbnN0IGJ5dGVzID0gW11cblxuICAvLyAyLiBGb3IgZWFjaCBlbGVtZW50IGluIHBhcnRzOlxuICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgcGFydHMpIHtcbiAgICAvLyAxLiBJZiBlbGVtZW50IGlzIGEgVVNWU3RyaW5nLCBydW4gdGhlIGZvbGxvd2luZyBzdWJzdGVwczpcbiAgICBpZiAodHlwZW9mIGVsZW1lbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyAxLiBMZXQgcyBiZSBlbGVtZW50LlxuICAgICAgbGV0IHMgPSBlbGVtZW50XG5cbiAgICAgIC8vIDIuIElmIHRoZSBlbmRpbmdzIG1lbWJlciBvZiBvcHRpb25zIGlzIFwibmF0aXZlXCIsIHNldCBzXG4gICAgICAvLyAgICB0byB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmcgbGluZSBlbmRpbmdzIHRvIG5hdGl2ZVxuICAgICAgLy8gICAgb2YgZWxlbWVudC5cbiAgICAgIGlmIChvcHRpb25zLmVuZGluZ3MgPT09ICduYXRpdmUnKSB7XG4gICAgICAgIHMgPSBjb252ZXJ0TGluZUVuZGluZ3NOYXRpdmUocylcbiAgICAgIH1cblxuICAgICAgLy8gMy4gQXBwZW5kIHRoZSByZXN1bHQgb2YgVVRGLTggZW5jb2RpbmcgcyB0byBieXRlcy5cbiAgICAgIGJ5dGVzLnB1c2goZW5jb2Rlci5lbmNvZGUocykpXG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHR5cGVzLmlzQW55QXJyYXlCdWZmZXIoZWxlbWVudCkgfHxcbiAgICAgIHR5cGVzLmlzVHlwZWRBcnJheShlbGVtZW50KVxuICAgICkge1xuICAgICAgLy8gMi4gSWYgZWxlbWVudCBpcyBhIEJ1ZmZlclNvdXJjZSwgZ2V0IGEgY29weSBvZiB0aGVcbiAgICAgIC8vICAgIGJ5dGVzIGhlbGQgYnkgdGhlIGJ1ZmZlciBzb3VyY2UsIGFuZCBhcHBlbmQgdGhvc2VcbiAgICAgIC8vICAgIGJ5dGVzIHRvIGJ5dGVzLlxuICAgICAgaWYgKCFlbGVtZW50LmJ1ZmZlcikgeyAvLyBBcnJheUJ1ZmZlclxuICAgICAgICBieXRlcy5wdXNoKG5ldyBVaW50OEFycmF5KGVsZW1lbnQpKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYnl0ZXMucHVzaChcbiAgICAgICAgICBuZXcgVWludDhBcnJheShlbGVtZW50LmJ1ZmZlciwgZWxlbWVudC5ieXRlT2Zmc2V0LCBlbGVtZW50LmJ5dGVMZW5ndGgpXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGlzQmxvYkxpa2UoZWxlbWVudCkpIHtcbiAgICAgIC8vIDMuIElmIGVsZW1lbnQgaXMgYSBCbG9iLCBhcHBlbmQgdGhlIGJ5dGVzIGl0IHJlcHJlc2VudHNcbiAgICAgIC8vICAgIHRvIGJ5dGVzLlxuICAgICAgYnl0ZXMucHVzaChlbGVtZW50KVxuICAgIH1cbiAgfVxuXG4gIC8vIDMuIFJldHVybiBieXRlcy5cbiAgcmV0dXJuIGJ5dGVzXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvRmlsZUFQSS8jY29udmVydC1saW5lLWVuZGluZ3MtdG8tbmF0aXZlXG4gKiBAcGFyYW0ge3N0cmluZ30gc1xuICovXG5mdW5jdGlvbiBjb252ZXJ0TGluZUVuZGluZ3NOYXRpdmUgKHMpIHtcbiAgLy8gMS4gTGV0IG5hdGl2ZSBsaW5lIGVuZGluZyBiZSBiZSB0aGUgY29kZSBwb2ludCBVKzAwMEEgTEYuXG4gIGxldCBuYXRpdmVMaW5lRW5kaW5nID0gJ1xcbidcblxuICAvLyAyLiBJZiB0aGUgdW5kZXJseWluZyBwbGF0Zm9ybVx1MjAxOXMgY29udmVudGlvbnMgYXJlIHRvXG4gIC8vICAgIHJlcHJlc2VudCBuZXdsaW5lcyBhcyBhIGNhcnJpYWdlIHJldHVybiBhbmQgbGluZSBmZWVkXG4gIC8vICAgIHNlcXVlbmNlLCBzZXQgbmF0aXZlIGxpbmUgZW5kaW5nIHRvIHRoZSBjb2RlIHBvaW50XG4gIC8vICAgIFUrMDAwRCBDUiBmb2xsb3dlZCBieSB0aGUgY29kZSBwb2ludCBVKzAwMEEgTEYuXG4gIGlmIChwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInKSB7XG4gICAgbmF0aXZlTGluZUVuZGluZyA9ICdcXHJcXG4nXG4gIH1cblxuICByZXR1cm4gcy5yZXBsYWNlKC9cXHI/XFxuL2csIG5hdGl2ZUxpbmVFbmRpbmcpXG59XG5cbi8vIElmIHRoaXMgZnVuY3Rpb24gaXMgbW92ZWQgdG8gLi91dGlsLmpzLCBzb21lIHRvb2xzIChzdWNoIGFzXG4vLyByb2xsdXApIHdpbGwgd2FybiBhYm91dCBjaXJjdWxhciBkZXBlbmRlbmNpZXMuIFNlZTpcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xNjI5XG5mdW5jdGlvbiBpc0ZpbGVMaWtlIChvYmplY3QpIHtcbiAgcmV0dXJuIChcbiAgICAoTmF0aXZlRmlsZSAmJiBvYmplY3QgaW5zdGFuY2VvZiBOYXRpdmVGaWxlKSB8fFxuICAgIG9iamVjdCBpbnN0YW5jZW9mIEZpbGUgfHwgKFxuICAgICAgb2JqZWN0ICYmXG4gICAgICAodHlwZW9mIG9iamVjdC5zdHJlYW0gPT09ICdmdW5jdGlvbicgfHxcbiAgICAgIHR5cGVvZiBvYmplY3QuYXJyYXlCdWZmZXIgPT09ICdmdW5jdGlvbicpICYmXG4gICAgICBvYmplY3RbU3ltYm9sLnRvU3RyaW5nVGFnXSA9PT0gJ0ZpbGUnXG4gICAgKVxuICApXG59XG5cbm1vZHVsZS5leHBvcnRzID0geyBGaWxlLCBGaWxlTGlrZSwgaXNGaWxlTGlrZSB9XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgaXNCbG9iTGlrZSwgdG9VU1ZTdHJpbmcsIG1ha2VJdGVyYXRvciB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsga1N0YXRlIH0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBGaWxlOiBVbmRpY2lGaWxlLCBGaWxlTGlrZSwgaXNGaWxlTGlrZSB9ID0gcmVxdWlyZSgnLi9maWxlJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuL3dlYmlkbCcpXG5jb25zdCB7IEJsb2IsIEZpbGU6IE5hdGl2ZUZpbGUgfSA9IHJlcXVpcmUoJ2J1ZmZlcicpXG5cbi8qKiBAdHlwZSB7Z2xvYmFsVGhpc1snRmlsZSddfSAqL1xuY29uc3QgRmlsZSA9IE5hdGl2ZUZpbGUgPz8gVW5kaWNpRmlsZVxuXG4vLyBodHRwczovL3hoci5zcGVjLndoYXR3Zy5vcmcvI2Zvcm1kYXRhXG5jbGFzcyBGb3JtRGF0YSB7XG4gIGNvbnN0cnVjdG9yIChmb3JtKSB7XG4gICAgaWYgKGZvcm0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5jb252ZXJzaW9uRmFpbGVkKHtcbiAgICAgICAgcHJlZml4OiAnRm9ybURhdGEgY29uc3RydWN0b3InLFxuICAgICAgICBhcmd1bWVudDogJ0FyZ3VtZW50IDEnLFxuICAgICAgICB0eXBlczogWyd1bmRlZmluZWQnXVxuICAgICAgfSlcbiAgICB9XG5cbiAgICB0aGlzW2tTdGF0ZV0gPSBbXVxuICB9XG5cbiAgYXBwZW5kIChuYW1lLCB2YWx1ZSwgZmlsZW5hbWUgPSB1bmRlZmluZWQpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdGb3JtRGF0YS5hcHBlbmQnIH0pXG5cbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMyAmJiAhaXNCbG9iTGlrZSh2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgIFwiRmFpbGVkIHRvIGV4ZWN1dGUgJ2FwcGVuZCcgb24gJ0Zvcm1EYXRhJzogcGFyYW1ldGVyIDIgaXMgbm90IG9mIHR5cGUgJ0Jsb2InXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyAxLiBMZXQgdmFsdWUgYmUgdmFsdWUgaWYgZ2l2ZW47IG90aGVyd2lzZSBibG9iVmFsdWUuXG5cbiAgICBuYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKG5hbWUpXG4gICAgdmFsdWUgPSBpc0Jsb2JMaWtlKHZhbHVlKVxuICAgICAgPyB3ZWJpZGwuY29udmVydGVycy5CbG9iKHZhbHVlLCB7IHN0cmljdDogZmFsc2UgfSlcbiAgICAgIDogd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKHZhbHVlKVxuICAgIGZpbGVuYW1lID0gYXJndW1lbnRzLmxlbmd0aCA9PT0gM1xuICAgICAgPyB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcoZmlsZW5hbWUpXG4gICAgICA6IHVuZGVmaW5lZFxuXG4gICAgLy8gMi4gTGV0IGVudHJ5IGJlIHRoZSByZXN1bHQgb2YgY3JlYXRpbmcgYW4gZW50cnkgd2l0aFxuICAgIC8vIG5hbWUsIHZhbHVlLCBhbmQgZmlsZW5hbWUgaWYgZ2l2ZW4uXG4gICAgY29uc3QgZW50cnkgPSBtYWtlRW50cnkobmFtZSwgdmFsdWUsIGZpbGVuYW1lKVxuXG4gICAgLy8gMy4gQXBwZW5kIGVudHJ5IHRvIHRoaXNcdTIwMTlzIGVudHJ5IGxpc3QuXG4gICAgdGhpc1trU3RhdGVdLnB1c2goZW50cnkpXG4gIH1cblxuICBkZWxldGUgKG5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdGb3JtRGF0YS5kZWxldGUnIH0pXG5cbiAgICBuYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKG5hbWUpXG5cbiAgICAvLyBUaGUgZGVsZXRlKG5hbWUpIG1ldGhvZCBzdGVwcyBhcmUgdG8gcmVtb3ZlIGFsbCBlbnRyaWVzIHdob3NlIG5hbWVcbiAgICAvLyBpcyBuYW1lIGZyb20gdGhpc1x1MjAxOXMgZW50cnkgbGlzdC5cbiAgICB0aGlzW2tTdGF0ZV0gPSB0aGlzW2tTdGF0ZV0uZmlsdGVyKGVudHJ5ID0+IGVudHJ5Lm5hbWUgIT09IG5hbWUpXG4gIH1cblxuICBnZXQgKG5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdGb3JtRGF0YS5nZXQnIH0pXG5cbiAgICBuYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKG5hbWUpXG5cbiAgICAvLyAxLiBJZiB0aGVyZSBpcyBubyBlbnRyeSB3aG9zZSBuYW1lIGlzIG5hbWUgaW4gdGhpc1x1MjAxOXMgZW50cnkgbGlzdCxcbiAgICAvLyB0aGVuIHJldHVybiBudWxsLlxuICAgIGNvbnN0IGlkeCA9IHRoaXNba1N0YXRlXS5maW5kSW5kZXgoKGVudHJ5KSA9PiBlbnRyeS5uYW1lID09PSBuYW1lKVxuICAgIGlmIChpZHggPT09IC0xKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIC8vIDIuIFJldHVybiB0aGUgdmFsdWUgb2YgdGhlIGZpcnN0IGVudHJ5IHdob3NlIG5hbWUgaXMgbmFtZSBmcm9tXG4gICAgLy8gdGhpc1x1MjAxOXMgZW50cnkgbGlzdC5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdW2lkeF0udmFsdWVcbiAgfVxuXG4gIGdldEFsbCAobmFtZSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0Zvcm1EYXRhLmdldEFsbCcgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcobmFtZSlcblxuICAgIC8vIDEuIElmIHRoZXJlIGlzIG5vIGVudHJ5IHdob3NlIG5hbWUgaXMgbmFtZSBpbiB0aGlzXHUyMDE5cyBlbnRyeSBsaXN0LFxuICAgIC8vIHRoZW4gcmV0dXJuIHRoZSBlbXB0eSBsaXN0LlxuICAgIC8vIDIuIFJldHVybiB0aGUgdmFsdWVzIG9mIGFsbCBlbnRyaWVzIHdob3NlIG5hbWUgaXMgbmFtZSwgaW4gb3JkZXIsXG4gICAgLy8gZnJvbSB0aGlzXHUyMDE5cyBlbnRyeSBsaXN0LlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV1cbiAgICAgIC5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5uYW1lID09PSBuYW1lKVxuICAgICAgLm1hcCgoZW50cnkpID0+IGVudHJ5LnZhbHVlKVxuICB9XG5cbiAgaGFzIChuYW1lKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRm9ybURhdGEpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnRm9ybURhdGEuaGFzJyB9KVxuXG4gICAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyhuYW1lKVxuXG4gICAgLy8gVGhlIGhhcyhuYW1lKSBtZXRob2Qgc3RlcHMgYXJlIHRvIHJldHVybiB0cnVlIGlmIHRoZXJlIGlzIGFuIGVudHJ5XG4gICAgLy8gd2hvc2UgbmFtZSBpcyBuYW1lIGluIHRoaXNcdTIwMTlzIGVudHJ5IGxpc3Q7IG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmZpbmRJbmRleCgoZW50cnkpID0+IGVudHJ5Lm5hbWUgPT09IG5hbWUpICE9PSAtMVxuICB9XG5cbiAgc2V0IChuYW1lLCB2YWx1ZSwgZmlsZW5hbWUgPSB1bmRlZmluZWQpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdGb3JtRGF0YS5zZXQnIH0pXG5cbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMyAmJiAhaXNCbG9iTGlrZSh2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgIFwiRmFpbGVkIHRvIGV4ZWN1dGUgJ3NldCcgb24gJ0Zvcm1EYXRhJzogcGFyYW1ldGVyIDIgaXMgbm90IG9mIHR5cGUgJ0Jsb2InXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyBUaGUgc2V0KG5hbWUsIHZhbHVlKSBhbmQgc2V0KG5hbWUsIGJsb2JWYWx1ZSwgZmlsZW5hbWUpIG1ldGhvZCBzdGVwc1xuICAgIC8vIGFyZTpcblxuICAgIC8vIDEuIExldCB2YWx1ZSBiZSB2YWx1ZSBpZiBnaXZlbjsgb3RoZXJ3aXNlIGJsb2JWYWx1ZS5cblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcobmFtZSlcbiAgICB2YWx1ZSA9IGlzQmxvYkxpa2UodmFsdWUpXG4gICAgICA/IHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2IodmFsdWUsIHsgc3RyaWN0OiBmYWxzZSB9KVxuICAgICAgOiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcodmFsdWUpXG4gICAgZmlsZW5hbWUgPSBhcmd1bWVudHMubGVuZ3RoID09PSAzXG4gICAgICA/IHRvVVNWU3RyaW5nKGZpbGVuYW1lKVxuICAgICAgOiB1bmRlZmluZWRcblxuICAgIC8vIDIuIExldCBlbnRyeSBiZSB0aGUgcmVzdWx0IG9mIGNyZWF0aW5nIGFuIGVudHJ5IHdpdGggbmFtZSwgdmFsdWUsIGFuZFxuICAgIC8vIGZpbGVuYW1lIGlmIGdpdmVuLlxuICAgIGNvbnN0IGVudHJ5ID0gbWFrZUVudHJ5KG5hbWUsIHZhbHVlLCBmaWxlbmFtZSlcblxuICAgIC8vIDMuIElmIHRoZXJlIGFyZSBlbnRyaWVzIGluIHRoaXNcdTIwMTlzIGVudHJ5IGxpc3Qgd2hvc2UgbmFtZSBpcyBuYW1lLCB0aGVuXG4gICAgLy8gcmVwbGFjZSB0aGUgZmlyc3Qgc3VjaCBlbnRyeSB3aXRoIGVudHJ5IGFuZCByZW1vdmUgdGhlIG90aGVycy5cbiAgICBjb25zdCBpZHggPSB0aGlzW2tTdGF0ZV0uZmluZEluZGV4KChlbnRyeSkgPT4gZW50cnkubmFtZSA9PT0gbmFtZSlcbiAgICBpZiAoaWR4ICE9PSAtMSkge1xuICAgICAgdGhpc1trU3RhdGVdID0gW1xuICAgICAgICAuLi50aGlzW2tTdGF0ZV0uc2xpY2UoMCwgaWR4KSxcbiAgICAgICAgZW50cnksXG4gICAgICAgIC4uLnRoaXNba1N0YXRlXS5zbGljZShpZHggKyAxKS5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5uYW1lICE9PSBuYW1lKVxuICAgICAgXVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyA0LiBPdGhlcndpc2UsIGFwcGVuZCBlbnRyeSB0byB0aGlzXHUyMDE5cyBlbnRyeSBsaXN0LlxuICAgICAgdGhpc1trU3RhdGVdLnB1c2goZW50cnkpXG4gICAgfVxuICB9XG5cbiAgZW50cmllcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRm9ybURhdGEpXG5cbiAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKFxuICAgICAgKCkgPT4gdGhpc1trU3RhdGVdLm1hcChwYWlyID0+IFtwYWlyLm5hbWUsIHBhaXIudmFsdWVdKSxcbiAgICAgICdGb3JtRGF0YScsXG4gICAgICAna2V5K3ZhbHVlJ1xuICAgIClcbiAgfVxuXG4gIGtleXMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IHRoaXNba1N0YXRlXS5tYXAocGFpciA9PiBbcGFpci5uYW1lLCBwYWlyLnZhbHVlXSksXG4gICAgICAnRm9ybURhdGEnLFxuICAgICAgJ2tleSdcbiAgICApXG4gIH1cblxuICB2YWx1ZXMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IHRoaXNba1N0YXRlXS5tYXAocGFpciA9PiBbcGFpci5uYW1lLCBwYWlyLnZhbHVlXSksXG4gICAgICAnRm9ybURhdGEnLFxuICAgICAgJ3ZhbHVlJ1xuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0geyh2YWx1ZTogc3RyaW5nLCBrZXk6IHN0cmluZywgc2VsZjogRm9ybURhdGEpID0+IHZvaWR9IGNhbGxiYWNrRm5cbiAgICogQHBhcmFtIHt1bmtub3dufSB0aGlzQXJnXG4gICAqL1xuICBmb3JFYWNoIChjYWxsYmFja0ZuLCB0aGlzQXJnID0gZ2xvYmFsVGhpcykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0Zvcm1EYXRhLmZvckVhY2gnIH0pXG5cbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrRm4gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgIFwiRmFpbGVkIHRvIGV4ZWN1dGUgJ2ZvckVhY2gnIG9uICdGb3JtRGF0YSc6IHBhcmFtZXRlciAxIGlzIG5vdCBvZiB0eXBlICdGdW5jdGlvbicuXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzKSB7XG4gICAgICBjYWxsYmFja0ZuLmFwcGx5KHRoaXNBcmcsIFt2YWx1ZSwga2V5LCB0aGlzXSlcbiAgICB9XG4gIH1cbn1cblxuRm9ybURhdGEucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl0gPSBGb3JtRGF0YS5wcm90b3R5cGUuZW50cmllc1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhGb3JtRGF0YS5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0Zvcm1EYXRhJyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Zvcm0tY29udHJvbC1pbmZyYXN0cnVjdHVyZS5odG1sI2NyZWF0ZS1hbi1lbnRyeVxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAqIEBwYXJhbSB7c3RyaW5nfEJsb2J9IHZhbHVlXG4gKiBAcGFyYW0gez9zdHJpbmd9IGZpbGVuYW1lXG4gKiBAcmV0dXJuc1xuICovXG5mdW5jdGlvbiBtYWtlRW50cnkgKG5hbWUsIHZhbHVlLCBmaWxlbmFtZSkge1xuICAvLyAxLiBTZXQgbmFtZSB0byB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmcgbmFtZSBpbnRvIGEgc2NhbGFyIHZhbHVlIHN0cmluZy5cbiAgLy8gXCJUbyBjb252ZXJ0IGEgc3RyaW5nIGludG8gYSBzY2FsYXIgdmFsdWUgc3RyaW5nLCByZXBsYWNlIGFueSBzdXJyb2dhdGVzXG4gIC8vICB3aXRoIFUrRkZGRC5cIlxuICAvLyBzZWU6IGh0dHBzOi8vbm9kZWpzLm9yZy9kaXN0L2xhdGVzdC12MTgueC9kb2NzL2FwaS9idWZmZXIuaHRtbCNidWZ0b3N0cmluZ2VuY29kaW5nLXN0YXJ0LWVuZFxuICBuYW1lID0gQnVmZmVyLmZyb20obmFtZSkudG9TdHJpbmcoJ3V0ZjgnKVxuXG4gIC8vIDIuIElmIHZhbHVlIGlzIGEgc3RyaW5nLCB0aGVuIHNldCB2YWx1ZSB0byB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmdcbiAgLy8gICAgdmFsdWUgaW50byBhIHNjYWxhciB2YWx1ZSBzdHJpbmcuXG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgdmFsdWUgPSBCdWZmZXIuZnJvbSh2YWx1ZSkudG9TdHJpbmcoJ3V0ZjgnKVxuICB9IGVsc2Uge1xuICAgIC8vIDMuIE90aGVyd2lzZTpcblxuICAgIC8vIDEuIElmIHZhbHVlIGlzIG5vdCBhIEZpbGUgb2JqZWN0LCB0aGVuIHNldCB2YWx1ZSB0byBhIG5ldyBGaWxlIG9iamVjdCxcbiAgICAvLyAgICByZXByZXNlbnRpbmcgdGhlIHNhbWUgYnl0ZXMsIHdob3NlIG5hbWUgYXR0cmlidXRlIHZhbHVlIGlzIFwiYmxvYlwiXG4gICAgaWYgKCFpc0ZpbGVMaWtlKHZhbHVlKSkge1xuICAgICAgdmFsdWUgPSB2YWx1ZSBpbnN0YW5jZW9mIEJsb2JcbiAgICAgICAgPyBuZXcgRmlsZShbdmFsdWVdLCAnYmxvYicsIHsgdHlwZTogdmFsdWUudHlwZSB9KVxuICAgICAgICA6IG5ldyBGaWxlTGlrZSh2YWx1ZSwgJ2Jsb2InLCB7IHR5cGU6IHZhbHVlLnR5cGUgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBJZiBmaWxlbmFtZSBpcyBnaXZlbiwgdGhlbiBzZXQgdmFsdWUgdG8gYSBuZXcgRmlsZSBvYmplY3QsXG4gICAgLy8gICAgcmVwcmVzZW50aW5nIHRoZSBzYW1lIGJ5dGVzLCB3aG9zZSBuYW1lIGF0dHJpYnV0ZSBpcyBmaWxlbmFtZS5cbiAgICBpZiAoZmlsZW5hbWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLyoqIEB0eXBlIHtGaWxlUHJvcGVydHlCYWd9ICovXG4gICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICB0eXBlOiB2YWx1ZS50eXBlLFxuICAgICAgICBsYXN0TW9kaWZpZWQ6IHZhbHVlLmxhc3RNb2RpZmllZFxuICAgICAgfVxuXG4gICAgICB2YWx1ZSA9IChOYXRpdmVGaWxlICYmIHZhbHVlIGluc3RhbmNlb2YgTmF0aXZlRmlsZSkgfHwgdmFsdWUgaW5zdGFuY2VvZiBVbmRpY2lGaWxlXG4gICAgICAgID8gbmV3IEZpbGUoW3ZhbHVlXSwgZmlsZW5hbWUsIG9wdGlvbnMpXG4gICAgICAgIDogbmV3IEZpbGVMaWtlKHZhbHVlLCBmaWxlbmFtZSwgb3B0aW9ucylcbiAgICB9XG4gIH1cblxuICAvLyA0LiBSZXR1cm4gYW4gZW50cnkgd2hvc2UgbmFtZSBpcyBuYW1lIGFuZCB3aG9zZSB2YWx1ZSBpcyB2YWx1ZS5cbiAgcmV0dXJuIHsgbmFtZSwgdmFsdWUgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHsgRm9ybURhdGEgfVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBCdXNib3kgPSByZXF1aXJlKCdAZmFzdGlmeS9idXNib3knKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7XG4gIFJlYWRhYmxlU3RyZWFtRnJvbSxcbiAgaXNCbG9iTGlrZSxcbiAgaXNSZWFkYWJsZVN0cmVhbUxpa2UsXG4gIHJlYWRhYmxlU3RyZWFtQ2xvc2UsXG4gIGNyZWF0ZURlZmVycmVkUHJvbWlzZSxcbiAgZnVsbHlSZWFkQm9keVxufSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IEZvcm1EYXRhIH0gPSByZXF1aXJlKCcuL2Zvcm1kYXRhJylcbmNvbnN0IHsga1N0YXRlIH0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyB3ZWJpZGwgfSA9IHJlcXVpcmUoJy4vd2ViaWRsJylcbmNvbnN0IHsgRE9NRXhjZXB0aW9uLCBzdHJ1Y3R1cmVkQ2xvbmUgfSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsgQmxvYiwgRmlsZTogTmF0aXZlRmlsZSB9ID0gcmVxdWlyZSgnYnVmZmVyJylcbmNvbnN0IHsga0JvZHlVc2VkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgaXNFcnJvcmVkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBpc1VpbnQ4QXJyYXksIGlzQXJyYXlCdWZmZXIgfSA9IHJlcXVpcmUoJ3V0aWwvdHlwZXMnKVxuY29uc3QgeyBGaWxlOiBVbmRpY2lGaWxlIH0gPSByZXF1aXJlKCcuL2ZpbGUnKVxuY29uc3QgeyBwYXJzZU1JTUVUeXBlLCBzZXJpYWxpemVBTWltZVR5cGUgfSA9IHJlcXVpcmUoJy4vZGF0YVVSTCcpXG5cbmxldCByYW5kb21cbnRyeSB7XG4gIGNvbnN0IGNyeXB0byA9IHJlcXVpcmUoJ25vZGU6Y3J5cHRvJylcbiAgcmFuZG9tID0gKG1heCkgPT4gY3J5cHRvLnJhbmRvbUludCgwLCBtYXgpXG59IGNhdGNoIHtcbiAgcmFuZG9tID0gKG1heCkgPT4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbShtYXgpKVxufVxuXG5sZXQgUmVhZGFibGVTdHJlYW0gPSBnbG9iYWxUaGlzLlJlYWRhYmxlU3RyZWFtXG5cbi8qKiBAdHlwZSB7Z2xvYmFsVGhpc1snRmlsZSddfSAqL1xuY29uc3QgRmlsZSA9IE5hdGl2ZUZpbGUgPz8gVW5kaWNpRmlsZVxuY29uc3QgdGV4dEVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKVxuY29uc3QgdGV4dERlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoKVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1ib2R5aW5pdC1leHRyYWN0XG5mdW5jdGlvbiBleHRyYWN0Qm9keSAob2JqZWN0LCBrZWVwYWxpdmUgPSBmYWxzZSkge1xuICBpZiAoIVJlYWRhYmxlU3RyZWFtKSB7XG4gICAgUmVhZGFibGVTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbiAgfVxuXG4gIC8vIDEuIExldCBzdHJlYW0gYmUgbnVsbC5cbiAgbGV0IHN0cmVhbSA9IG51bGxcblxuICAvLyAyLiBJZiBvYmplY3QgaXMgYSBSZWFkYWJsZVN0cmVhbSBvYmplY3QsIHRoZW4gc2V0IHN0cmVhbSB0byBvYmplY3QuXG4gIGlmIChvYmplY3QgaW5zdGFuY2VvZiBSZWFkYWJsZVN0cmVhbSkge1xuICAgIHN0cmVhbSA9IG9iamVjdFxuICB9IGVsc2UgaWYgKGlzQmxvYkxpa2Uob2JqZWN0KSkge1xuICAgIC8vIDMuIE90aGVyd2lzZSwgaWYgb2JqZWN0IGlzIGEgQmxvYiBvYmplY3QsIHNldCBzdHJlYW0gdG8gdGhlXG4gICAgLy8gICAgcmVzdWx0IG9mIHJ1bm5pbmcgb2JqZWN0XHUyMDE5cyBnZXQgc3RyZWFtLlxuICAgIHN0cmVhbSA9IG9iamVjdC5zdHJlYW0oKVxuICB9IGVsc2Uge1xuICAgIC8vIDQuIE90aGVyd2lzZSwgc2V0IHN0cmVhbSB0byBhIG5ldyBSZWFkYWJsZVN0cmVhbSBvYmplY3QsIGFuZCBzZXRcbiAgICAvLyAgICB1cCBzdHJlYW0uXG4gICAgc3RyZWFtID0gbmV3IFJlYWRhYmxlU3RyZWFtKHtcbiAgICAgIGFzeW5jIHB1bGwgKGNvbnRyb2xsZXIpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKFxuICAgICAgICAgIHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnID8gdGV4dEVuY29kZXIuZW5jb2RlKHNvdXJjZSkgOiBzb3VyY2VcbiAgICAgICAgKVxuICAgICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiByZWFkYWJsZVN0cmVhbUNsb3NlKGNvbnRyb2xsZXIpKVxuICAgICAgfSxcbiAgICAgIHN0YXJ0ICgpIHt9LFxuICAgICAgdHlwZTogdW5kZWZpbmVkXG4gICAgfSlcbiAgfVxuXG4gIC8vIDUuIEFzc2VydDogc3RyZWFtIGlzIGEgUmVhZGFibGVTdHJlYW0gb2JqZWN0LlxuICBhc3NlcnQoaXNSZWFkYWJsZVN0cmVhbUxpa2Uoc3RyZWFtKSlcblxuICAvLyA2LiBMZXQgYWN0aW9uIGJlIG51bGwuXG4gIGxldCBhY3Rpb24gPSBudWxsXG5cbiAgLy8gNy4gTGV0IHNvdXJjZSBiZSBudWxsLlxuICBsZXQgc291cmNlID0gbnVsbFxuXG4gIC8vIDguIExldCBsZW5ndGggYmUgbnVsbC5cbiAgbGV0IGxlbmd0aCA9IG51bGxcblxuICAvLyA5LiBMZXQgdHlwZSBiZSBudWxsLlxuICBsZXQgdHlwZSA9IG51bGxcblxuICAvLyAxMC4gU3dpdGNoIG9uIG9iamVjdDpcbiAgaWYgKHR5cGVvZiBvYmplY3QgPT09ICdzdHJpbmcnKSB7XG4gICAgLy8gU2V0IHNvdXJjZSB0byB0aGUgVVRGLTggZW5jb2Rpbmcgb2Ygb2JqZWN0LlxuICAgIC8vIE5vdGU6IHNldHRpbmcgc291cmNlIHRvIGEgVWludDhBcnJheSBoZXJlIGJyZWFrcyBzb21lIG1vY2tpbmcgYXNzdW1wdGlvbnMuXG4gICAgc291cmNlID0gb2JqZWN0XG5cbiAgICAvLyBTZXQgdHlwZSB0byBgdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04YC5cbiAgICB0eXBlID0gJ3RleHQvcGxhaW47Y2hhcnNldD1VVEYtOCdcbiAgfSBlbHNlIGlmIChvYmplY3QgaW5zdGFuY2VvZiBVUkxTZWFyY2hQYXJhbXMpIHtcbiAgICAvLyBVUkxTZWFyY2hQYXJhbXNcblxuICAgIC8vIHNwZWMgc2F5cyB0byBydW4gYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIG9uIGJvZHkubGlzdFxuICAgIC8vIHRoaXMgaXMgaW1wbGVtZW50ZWQgaW4gTm9kZS5qcyBhcyBhcGFydCBvZiBhbiBVUkxTZWFyY2hQYXJhbXMgaW5zdGFuY2UgdG9TdHJpbmcgbWV0aG9kXG4gICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9lNDZjNjgwYmYyYjIxMWJiZDUyY2Y5NTljYTE3ZWU5OGM3ZjY1N2Y1L2xpYi9pbnRlcm5hbC91cmwuanMjTDQ5MFxuICAgIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9lNDZjNjgwYmYyYjIxMWJiZDUyY2Y5NTljYTE3ZWU5OGM3ZjY1N2Y1L2xpYi9pbnRlcm5hbC91cmwuanMjTDExMDBcblxuICAgIC8vIFNldCBzb3VyY2UgdG8gdGhlIHJlc3VsdCBvZiBydW5uaW5nIHRoZSBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQgc2VyaWFsaXplciB3aXRoIG9iamVjdFx1MjAxOXMgbGlzdC5cbiAgICBzb3VyY2UgPSBvYmplY3QudG9TdHJpbmcoKVxuXG4gICAgLy8gU2V0IHR5cGUgdG8gYGFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PVVURi04YC5cbiAgICB0eXBlID0gJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PVVURi04J1xuICB9IGVsc2UgaWYgKGlzQXJyYXlCdWZmZXIob2JqZWN0KSkge1xuICAgIC8vIEJ1ZmZlclNvdXJjZS9BcnJheUJ1ZmZlclxuXG4gICAgLy8gU2V0IHNvdXJjZSB0byBhIGNvcHkgb2YgdGhlIGJ5dGVzIGhlbGQgYnkgb2JqZWN0LlxuICAgIHNvdXJjZSA9IG5ldyBVaW50OEFycmF5KG9iamVjdC5zbGljZSgpKVxuICB9IGVsc2UgaWYgKEFycmF5QnVmZmVyLmlzVmlldyhvYmplY3QpKSB7XG4gICAgLy8gQnVmZmVyU291cmNlL0FycmF5QnVmZmVyVmlld1xuXG4gICAgLy8gU2V0IHNvdXJjZSB0byBhIGNvcHkgb2YgdGhlIGJ5dGVzIGhlbGQgYnkgb2JqZWN0LlxuICAgIHNvdXJjZSA9IG5ldyBVaW50OEFycmF5KG9iamVjdC5idWZmZXIuc2xpY2Uob2JqZWN0LmJ5dGVPZmZzZXQsIG9iamVjdC5ieXRlT2Zmc2V0ICsgb2JqZWN0LmJ5dGVMZW5ndGgpKVxuICB9IGVsc2UgaWYgKHV0aWwuaXNGb3JtRGF0YUxpa2Uob2JqZWN0KSkge1xuICAgIGNvbnN0IGJvdW5kYXJ5ID0gYC0tLS1mb3JtZGF0YS11bmRpY2ktMCR7YCR7cmFuZG9tKDFlMTEpfWAucGFkU3RhcnQoMTEsICcwJyl9YFxuICAgIGNvbnN0IHByZWZpeCA9IGAtLSR7Ym91bmRhcnl9XFxyXFxuQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhYFxuXG4gICAgLyohIGZvcm1kYXRhLXBvbHlmaWxsLiBNSVQgTGljZW5zZS4gSmltbXkgV1x1MDBFNHJ0aW5nIDxodHRwczovL2ppbW15LndhcnRpbmcuc2Uvb3BlbnNvdXJjZT4gKi9cbiAgICBjb25zdCBlc2NhcGUgPSAoc3RyKSA9PlxuICAgICAgc3RyLnJlcGxhY2UoL1xcbi9nLCAnJTBBJykucmVwbGFjZSgvXFxyL2csICclMEQnKS5yZXBsYWNlKC9cIi9nLCAnJTIyJylcbiAgICBjb25zdCBub3JtYWxpemVMaW5lZmVlZHMgPSAodmFsdWUpID0+IHZhbHVlLnJlcGxhY2UoL1xccj9cXG58XFxyL2csICdcXHJcXG4nKVxuXG4gICAgLy8gU2V0IGFjdGlvbiB0byB0aGlzIHN0ZXA6IHJ1biB0aGUgbXVsdGlwYXJ0L2Zvcm0tZGF0YVxuICAgIC8vIGVuY29kaW5nIGFsZ29yaXRobSwgd2l0aCBvYmplY3RcdTIwMTlzIGVudHJ5IGxpc3QgYW5kIFVURi04LlxuICAgIC8vIC0gVGhpcyBlbnN1cmVzIHRoYXQgdGhlIGJvZHkgaXMgaW1tdXRhYmxlIGFuZCBjYW4ndCBiZSBjaGFuZ2VkIGFmdGVyd29yZHNcbiAgICAvLyAtIFRoYXQgdGhlIGNvbnRlbnQtbGVuZ3RoIGlzIGNhbGN1bGF0ZWQgaW4gYWR2YW5jZS5cbiAgICAvLyAtIEFuZCB0aGF0IGFsbCBwYXJ0cyBhcmUgcHJlLWVuY29kZWQgYW5kIHJlYWR5IHRvIGJlIHNlbnQuXG5cbiAgICBjb25zdCBibG9iUGFydHMgPSBbXVxuICAgIGNvbnN0IHJuID0gbmV3IFVpbnQ4QXJyYXkoWzEzLCAxMF0pIC8vICdcXHJcXG4nXG4gICAgbGVuZ3RoID0gMFxuICAgIGxldCBoYXNVbmtub3duU2l6ZVZhbHVlID0gZmFsc2VcblxuICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBvYmplY3QpIHtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IGNodW5rID0gdGV4dEVuY29kZXIuZW5jb2RlKHByZWZpeCArXG4gICAgICAgICAgYDsgbmFtZT1cIiR7ZXNjYXBlKG5vcm1hbGl6ZUxpbmVmZWVkcyhuYW1lKSl9XCJgICtcbiAgICAgICAgICBgXFxyXFxuXFxyXFxuJHtub3JtYWxpemVMaW5lZmVlZHModmFsdWUpfVxcclxcbmApXG4gICAgICAgIGJsb2JQYXJ0cy5wdXNoKGNodW5rKVxuICAgICAgICBsZW5ndGggKz0gY2h1bmsuYnl0ZUxlbmd0aFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgY2h1bmsgPSB0ZXh0RW5jb2Rlci5lbmNvZGUoYCR7cHJlZml4fTsgbmFtZT1cIiR7ZXNjYXBlKG5vcm1hbGl6ZUxpbmVmZWVkcyhuYW1lKSl9XCJgICtcbiAgICAgICAgICAodmFsdWUubmFtZSA/IGA7IGZpbGVuYW1lPVwiJHtlc2NhcGUodmFsdWUubmFtZSl9XCJgIDogJycpICsgJ1xcclxcbicgK1xuICAgICAgICAgIGBDb250ZW50LVR5cGU6ICR7XG4gICAgICAgICAgICB2YWx1ZS50eXBlIHx8ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nXG4gICAgICAgICAgfVxcclxcblxcclxcbmApXG4gICAgICAgIGJsb2JQYXJ0cy5wdXNoKGNodW5rLCB2YWx1ZSwgcm4pXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUuc2l6ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICBsZW5ndGggKz0gY2h1bmsuYnl0ZUxlbmd0aCArIHZhbHVlLnNpemUgKyBybi5ieXRlTGVuZ3RoXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaGFzVW5rbm93blNpemVWYWx1ZSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGNodW5rID0gdGV4dEVuY29kZXIuZW5jb2RlKGAtLSR7Ym91bmRhcnl9LS1gKVxuICAgIGJsb2JQYXJ0cy5wdXNoKGNodW5rKVxuICAgIGxlbmd0aCArPSBjaHVuay5ieXRlTGVuZ3RoXG4gICAgaWYgKGhhc1Vua25vd25TaXplVmFsdWUpIHtcbiAgICAgIGxlbmd0aCA9IG51bGxcbiAgICB9XG5cbiAgICAvLyBTZXQgc291cmNlIHRvIG9iamVjdC5cbiAgICBzb3VyY2UgPSBvYmplY3RcblxuICAgIGFjdGlvbiA9IGFzeW5jIGZ1bmN0aW9uICogKCkge1xuICAgICAgZm9yIChjb25zdCBwYXJ0IG9mIGJsb2JQYXJ0cykge1xuICAgICAgICBpZiAocGFydC5zdHJlYW0pIHtcbiAgICAgICAgICB5aWVsZCAqIHBhcnQuc3RyZWFtKClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB5aWVsZCBwYXJ0XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXQgdHlwZSB0byBgbXVsdGlwYXJ0L2Zvcm0tZGF0YTsgYm91bmRhcnk9YCxcbiAgICAvLyBmb2xsb3dlZCBieSB0aGUgbXVsdGlwYXJ0L2Zvcm0tZGF0YSBib3VuZGFyeSBzdHJpbmcgZ2VuZXJhdGVkXG4gICAgLy8gYnkgdGhlIG11bHRpcGFydC9mb3JtLWRhdGEgZW5jb2RpbmcgYWxnb3JpdGhtLlxuICAgIHR5cGUgPSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YTsgYm91bmRhcnk9JyArIGJvdW5kYXJ5XG4gIH0gZWxzZSBpZiAoaXNCbG9iTGlrZShvYmplY3QpKSB7XG4gICAgLy8gQmxvYlxuXG4gICAgLy8gU2V0IHNvdXJjZSB0byBvYmplY3QuXG4gICAgc291cmNlID0gb2JqZWN0XG5cbiAgICAvLyBTZXQgbGVuZ3RoIHRvIG9iamVjdFx1MjAxOXMgc2l6ZS5cbiAgICBsZW5ndGggPSBvYmplY3Quc2l6ZVxuXG4gICAgLy8gSWYgb2JqZWN0XHUyMDE5cyB0eXBlIGF0dHJpYnV0ZSBpcyBub3QgdGhlIGVtcHR5IGJ5dGUgc2VxdWVuY2UsIHNldFxuICAgIC8vIHR5cGUgdG8gaXRzIHZhbHVlLlxuICAgIGlmIChvYmplY3QudHlwZSkge1xuICAgICAgdHlwZSA9IG9iamVjdC50eXBlXG4gICAgfVxuICB9IGVsc2UgaWYgKHR5cGVvZiBvYmplY3RbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgLy8gSWYga2VlcGFsaXZlIGlzIHRydWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKGtlZXBhbGl2ZSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigna2VlcGFsaXZlJylcbiAgICB9XG5cbiAgICAvLyBJZiBvYmplY3QgaXMgZGlzdHVyYmVkIG9yIGxvY2tlZCwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAodXRpbC5pc0Rpc3R1cmJlZChvYmplY3QpIHx8IG9iamVjdC5sb2NrZWQpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICdSZXNwb25zZSBib2R5IG9iamVjdCBzaG91bGQgbm90IGJlIGRpc3R1cmJlZCBvciBsb2NrZWQnXG4gICAgICApXG4gICAgfVxuXG4gICAgc3RyZWFtID1cbiAgICAgIG9iamVjdCBpbnN0YW5jZW9mIFJlYWRhYmxlU3RyZWFtID8gb2JqZWN0IDogUmVhZGFibGVTdHJlYW1Gcm9tKG9iamVjdClcbiAgfVxuXG4gIC8vIDExLiBJZiBzb3VyY2UgaXMgYSBieXRlIHNlcXVlbmNlLCB0aGVuIHNldCBhY3Rpb24gdG8gYVxuICAvLyBzdGVwIHRoYXQgcmV0dXJucyBzb3VyY2UgYW5kIGxlbmd0aCB0byBzb3VyY2VcdTIwMTlzIGxlbmd0aC5cbiAgaWYgKHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnIHx8IHV0aWwuaXNCdWZmZXIoc291cmNlKSkge1xuICAgIGxlbmd0aCA9IEJ1ZmZlci5ieXRlTGVuZ3RoKHNvdXJjZSlcbiAgfVxuXG4gIC8vIDEyLiBJZiBhY3Rpb24gaXMgbm9uLW51bGwsIHRoZW4gcnVuIHRoZXNlIHN0ZXBzIGluIGluIHBhcmFsbGVsOlxuICBpZiAoYWN0aW9uICE9IG51bGwpIHtcbiAgICAvLyBSdW4gYWN0aW9uLlxuICAgIGxldCBpdGVyYXRvclxuICAgIHN0cmVhbSA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7XG4gICAgICBhc3luYyBzdGFydCAoKSB7XG4gICAgICAgIGl0ZXJhdG9yID0gYWN0aW9uKG9iamVjdClbU3ltYm9sLmFzeW5jSXRlcmF0b3JdKClcbiAgICAgIH0sXG4gICAgICBhc3luYyBwdWxsIChjb250cm9sbGVyKSB7XG4gICAgICAgIGNvbnN0IHsgdmFsdWUsIGRvbmUgfSA9IGF3YWl0IGl0ZXJhdG9yLm5leHQoKVxuICAgICAgICBpZiAoZG9uZSkge1xuICAgICAgICAgIC8vIFdoZW4gcnVubmluZyBhY3Rpb24gaXMgZG9uZSwgY2xvc2Ugc3RyZWFtLlxuICAgICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnRyb2xsZXIuY2xvc2UoKVxuICAgICAgICAgIH0pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gV2hlbmV2ZXIgb25lIG9yIG1vcmUgYnl0ZXMgYXJlIGF2YWlsYWJsZSBhbmQgc3RyZWFtIGlzIG5vdCBlcnJvcmVkLFxuICAgICAgICAgIC8vIGVucXVldWUgYSBVaW50OEFycmF5IHdyYXBwaW5nIGFuIEFycmF5QnVmZmVyIGNvbnRhaW5pbmcgdGhlIGF2YWlsYWJsZVxuICAgICAgICAgIC8vIGJ5dGVzIGludG8gc3RyZWFtLlxuICAgICAgICAgIGlmICghaXNFcnJvcmVkKHN0cmVhbSkpIHtcbiAgICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShuZXcgVWludDhBcnJheSh2YWx1ZSkpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb250cm9sbGVyLmRlc2lyZWRTaXplID4gMFxuICAgICAgfSxcbiAgICAgIGFzeW5jIGNhbmNlbCAocmVhc29uKSB7XG4gICAgICAgIGF3YWl0IGl0ZXJhdG9yLnJldHVybigpXG4gICAgICB9LFxuICAgICAgdHlwZTogdW5kZWZpbmVkXG4gICAgfSlcbiAgfVxuXG4gIC8vIDEzLiBMZXQgYm9keSBiZSBhIGJvZHkgd2hvc2Ugc3RyZWFtIGlzIHN0cmVhbSwgc291cmNlIGlzIHNvdXJjZSxcbiAgLy8gYW5kIGxlbmd0aCBpcyBsZW5ndGguXG4gIGNvbnN0IGJvZHkgPSB7IHN0cmVhbSwgc291cmNlLCBsZW5ndGggfVxuXG4gIC8vIDE0LiBSZXR1cm4gKGJvZHksIHR5cGUpLlxuICByZXR1cm4gW2JvZHksIHR5cGVdXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNib2R5aW5pdC1zYWZlbHktZXh0cmFjdFxuZnVuY3Rpb24gc2FmZWx5RXh0cmFjdEJvZHkgKG9iamVjdCwga2VlcGFsaXZlID0gZmFsc2UpIHtcbiAgaWYgKCFSZWFkYWJsZVN0cmVhbSkge1xuICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gICAgUmVhZGFibGVTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbiAgfVxuXG4gIC8vIFRvIHNhZmVseSBleHRyYWN0IGEgYm9keSBhbmQgYSBgQ29udGVudC1UeXBlYCB2YWx1ZSBmcm9tXG4gIC8vIGEgYnl0ZSBzZXF1ZW5jZSBvciBCb2R5SW5pdCBvYmplY3Qgb2JqZWN0LCBydW4gdGhlc2Ugc3RlcHM6XG5cbiAgLy8gMS4gSWYgb2JqZWN0IGlzIGEgUmVhZGFibGVTdHJlYW0gb2JqZWN0LCB0aGVuOlxuICBpZiAob2JqZWN0IGluc3RhbmNlb2YgUmVhZGFibGVTdHJlYW0pIHtcbiAgICAvLyBBc3NlcnQ6IG9iamVjdCBpcyBuZWl0aGVyIGRpc3R1cmJlZCBub3IgbG9ja2VkLlxuICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gICAgYXNzZXJ0KCF1dGlsLmlzRGlzdHVyYmVkKG9iamVjdCksICdUaGUgYm9keSBoYXMgYWxyZWFkeSBiZWVuIGNvbnN1bWVkLicpXG4gICAgLy8gaXN0YW5idWwgaWdub3JlIG5leHRcbiAgICBhc3NlcnQoIW9iamVjdC5sb2NrZWQsICdUaGUgc3RyZWFtIGlzIGxvY2tlZC4nKVxuICB9XG5cbiAgLy8gMi4gUmV0dXJuIHRoZSByZXN1bHRzIG9mIGV4dHJhY3Rpbmcgb2JqZWN0LlxuICByZXR1cm4gZXh0cmFjdEJvZHkob2JqZWN0LCBrZWVwYWxpdmUpXG59XG5cbmZ1bmN0aW9uIGNsb25lQm9keSAoYm9keSkge1xuICAvLyBUbyBjbG9uZSBhIGJvZHkgYm9keSwgcnVuIHRoZXNlIHN0ZXBzOlxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWJvZHktY2xvbmVcblxuICAvLyAxLiBMZXQgXHUwMEFCIG91dDEsIG91dDIgXHUwMEJCIGJlIHRoZSByZXN1bHQgb2YgdGVlaW5nIGJvZHlcdTIwMTlzIHN0cmVhbS5cbiAgY29uc3QgW291dDEsIG91dDJdID0gYm9keS5zdHJlYW0udGVlKClcbiAgY29uc3Qgb3V0MkNsb25lID0gc3RydWN0dXJlZENsb25lKG91dDIsIHsgdHJhbnNmZXI6IFtvdXQyXSB9KVxuICAvLyBUaGlzLCBmb3Igd2hhdGV2ZXIgcmVhc29ucywgdW5yZWZzIG91dDJDbG9uZSB3aGljaCBhbGxvd3NcbiAgLy8gdGhlIHByb2Nlc3MgdG8gZXhpdCBieSBpdHNlbGYuXG4gIGNvbnN0IFssIGZpbmFsQ2xvbmVdID0gb3V0MkNsb25lLnRlZSgpXG5cbiAgLy8gMi4gU2V0IGJvZHlcdTIwMTlzIHN0cmVhbSB0byBvdXQxLlxuICBib2R5LnN0cmVhbSA9IG91dDFcblxuICAvLyAzLiBSZXR1cm4gYSBib2R5IHdob3NlIHN0cmVhbSBpcyBvdXQyIGFuZCBvdGhlciBtZW1iZXJzIGFyZSBjb3BpZWQgZnJvbSBib2R5LlxuICByZXR1cm4ge1xuICAgIHN0cmVhbTogZmluYWxDbG9uZSxcbiAgICBsZW5ndGg6IGJvZHkubGVuZ3RoLFxuICAgIHNvdXJjZTogYm9keS5zb3VyY2VcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiAqIGNvbnN1bWVCb2R5IChib2R5KSB7XG4gIGlmIChib2R5KSB7XG4gICAgaWYgKGlzVWludDhBcnJheShib2R5KSkge1xuICAgICAgeWllbGQgYm9keVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdHJlYW0gPSBib2R5LnN0cmVhbVxuXG4gICAgICBpZiAodXRpbC5pc0Rpc3R1cmJlZChzdHJlYW0pKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSBib2R5IGhhcyBhbHJlYWR5IGJlZW4gY29uc3VtZWQuJylcbiAgICAgIH1cblxuICAgICAgaWYgKHN0cmVhbS5sb2NrZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlIHN0cmVhbSBpcyBsb2NrZWQuJylcbiAgICAgIH1cblxuICAgICAgLy8gQ29tcGF0LlxuICAgICAgc3RyZWFtW2tCb2R5VXNlZF0gPSB0cnVlXG5cbiAgICAgIHlpZWxkICogc3RyZWFtXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHRocm93SWZBYm9ydGVkIChzdGF0ZSkge1xuICBpZiAoc3RhdGUuYWJvcnRlZCkge1xuICAgIHRocm93IG5ldyBET01FeGNlcHRpb24oJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQuJywgJ0Fib3J0RXJyb3InKVxuICB9XG59XG5cbmZ1bmN0aW9uIGJvZHlNaXhpbk1ldGhvZHMgKGluc3RhbmNlKSB7XG4gIGNvbnN0IG1ldGhvZHMgPSB7XG4gICAgYmxvYiAoKSB7XG4gICAgICAvLyBUaGUgYmxvYigpIG1ldGhvZCBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoZSByZXN1bHQgb2ZcbiAgICAgIC8vIHJ1bm5pbmcgY29uc3VtZSBib2R5IHdpdGggdGhpcyBhbmQgdGhlIGZvbGxvd2luZyBzdGVwXG4gICAgICAvLyBnaXZlbiBhIGJ5dGUgc2VxdWVuY2UgYnl0ZXM6IHJldHVybiBhIEJsb2Igd2hvc2VcbiAgICAgIC8vIGNvbnRlbnRzIGFyZSBieXRlcyBhbmQgd2hvc2UgdHlwZSBhdHRyaWJ1dGUgaXMgdGhpc1x1MjAxOXNcbiAgICAgIC8vIE1JTUUgdHlwZS5cbiAgICAgIHJldHVybiBzcGVjQ29uc3VtZUJvZHkodGhpcywgKGJ5dGVzKSA9PiB7XG4gICAgICAgIGxldCBtaW1lVHlwZSA9IGJvZHlNaW1lVHlwZSh0aGlzKVxuXG4gICAgICAgIGlmIChtaW1lVHlwZSA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgICAgbWltZVR5cGUgPSAnJ1xuICAgICAgICB9IGVsc2UgaWYgKG1pbWVUeXBlKSB7XG4gICAgICAgICAgbWltZVR5cGUgPSBzZXJpYWxpemVBTWltZVR5cGUobWltZVR5cGUpXG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZXR1cm4gYSBCbG9iIHdob3NlIGNvbnRlbnRzIGFyZSBieXRlcyBhbmQgdHlwZSBhdHRyaWJ1dGVcbiAgICAgICAgLy8gaXMgbWltZVR5cGUuXG4gICAgICAgIHJldHVybiBuZXcgQmxvYihbYnl0ZXNdLCB7IHR5cGU6IG1pbWVUeXBlIH0pXG4gICAgICB9LCBpbnN0YW5jZSlcbiAgICB9LFxuXG4gICAgYXJyYXlCdWZmZXIgKCkge1xuICAgICAgLy8gVGhlIGFycmF5QnVmZmVyKCkgbWV0aG9kIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhlIHJlc3VsdFxuICAgICAgLy8gb2YgcnVubmluZyBjb25zdW1lIGJvZHkgd2l0aCB0aGlzIGFuZCB0aGUgZm9sbG93aW5nIHN0ZXBcbiAgICAgIC8vIGdpdmVuIGEgYnl0ZSBzZXF1ZW5jZSBieXRlczogcmV0dXJuIGEgbmV3IEFycmF5QnVmZmVyXG4gICAgICAvLyB3aG9zZSBjb250ZW50cyBhcmUgYnl0ZXMuXG4gICAgICByZXR1cm4gc3BlY0NvbnN1bWVCb2R5KHRoaXMsIChieXRlcykgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYnl0ZXMpLmJ1ZmZlclxuICAgICAgfSwgaW5zdGFuY2UpXG4gICAgfSxcblxuICAgIHRleHQgKCkge1xuICAgICAgLy8gVGhlIHRleHQoKSBtZXRob2Qgc3RlcHMgYXJlIHRvIHJldHVybiB0aGUgcmVzdWx0IG9mIHJ1bm5pbmdcbiAgICAgIC8vIGNvbnN1bWUgYm9keSB3aXRoIHRoaXMgYW5kIFVURi04IGRlY29kZS5cbiAgICAgIHJldHVybiBzcGVjQ29uc3VtZUJvZHkodGhpcywgdXRmOERlY29kZUJ5dGVzLCBpbnN0YW5jZSlcbiAgICB9LFxuXG4gICAganNvbiAoKSB7XG4gICAgICAvLyBUaGUganNvbigpIG1ldGhvZCBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZ1xuICAgICAgLy8gY29uc3VtZSBib2R5IHdpdGggdGhpcyBhbmQgcGFyc2UgSlNPTiBmcm9tIGJ5dGVzLlxuICAgICAgcmV0dXJuIHNwZWNDb25zdW1lQm9keSh0aGlzLCBwYXJzZUpTT05Gcm9tQnl0ZXMsIGluc3RhbmNlKVxuICAgIH0sXG5cbiAgICBhc3luYyBmb3JtRGF0YSAoKSB7XG4gICAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBpbnN0YW5jZSlcblxuICAgICAgdGhyb3dJZkFib3J0ZWQodGhpc1trU3RhdGVdKVxuXG4gICAgICBjb25zdCBjb250ZW50VHlwZSA9IHRoaXMuaGVhZGVycy5nZXQoJ0NvbnRlbnQtVHlwZScpXG5cbiAgICAgIC8vIElmIG1pbWVUeXBlXHUyMDE5cyBlc3NlbmNlIGlzIFwibXVsdGlwYXJ0L2Zvcm0tZGF0YVwiLCB0aGVuOlxuICAgICAgaWYgKC9tdWx0aXBhcnRcXC9mb3JtLWRhdGEvLnRlc3QoY29udGVudFR5cGUpKSB7XG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSB7fVxuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzLmhlYWRlcnMpIGhlYWRlcnNba2V5LnRvTG93ZXJDYXNlKCldID0gdmFsdWVcblxuICAgICAgICBjb25zdCByZXNwb25zZUZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcblxuICAgICAgICBsZXQgYnVzYm95XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBidXNib3kgPSBuZXcgQnVzYm95KHtcbiAgICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgICBwcmVzZXJ2ZVBhdGg6IHRydWVcbiAgICAgICAgICB9KVxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKGAke2Vycn1gLCAnQWJvcnRFcnJvcicpXG4gICAgICAgIH1cblxuICAgICAgICBidXNib3kub24oJ2ZpZWxkJywgKG5hbWUsIHZhbHVlKSA9PiB7XG4gICAgICAgICAgcmVzcG9uc2VGb3JtRGF0YS5hcHBlbmQobmFtZSwgdmFsdWUpXG4gICAgICAgIH0pXG4gICAgICAgIGJ1c2JveS5vbignZmlsZScsIChuYW1lLCB2YWx1ZSwgZmlsZW5hbWUsIGVuY29kaW5nLCBtaW1lVHlwZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGNodW5rcyA9IFtdXG5cbiAgICAgICAgICBpZiAoZW5jb2RpbmcgPT09ICdiYXNlNjQnIHx8IGVuY29kaW5nLnRvTG93ZXJDYXNlKCkgPT09ICdiYXNlNjQnKSB7XG4gICAgICAgICAgICBsZXQgYmFzZTY0Y2h1bmsgPSAnJ1xuXG4gICAgICAgICAgICB2YWx1ZS5vbignZGF0YScsIChjaHVuaykgPT4ge1xuICAgICAgICAgICAgICBiYXNlNjRjaHVuayArPSBjaHVuay50b1N0cmluZygpLnJlcGxhY2UoL1tcXHJcXG5dL2dtLCAnJylcblxuICAgICAgICAgICAgICBjb25zdCBlbmQgPSBiYXNlNjRjaHVuay5sZW5ndGggLSBiYXNlNjRjaHVuay5sZW5ndGggJSA0XG4gICAgICAgICAgICAgIGNodW5rcy5wdXNoKEJ1ZmZlci5mcm9tKGJhc2U2NGNodW5rLnNsaWNlKDAsIGVuZCksICdiYXNlNjQnKSlcblxuICAgICAgICAgICAgICBiYXNlNjRjaHVuayA9IGJhc2U2NGNodW5rLnNsaWNlKGVuZClcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB2YWx1ZS5vbignZW5kJywgKCkgPT4ge1xuICAgICAgICAgICAgICBjaHVua3MucHVzaChCdWZmZXIuZnJvbShiYXNlNjRjaHVuaywgJ2Jhc2U2NCcpKVxuICAgICAgICAgICAgICByZXNwb25zZUZvcm1EYXRhLmFwcGVuZChuYW1lLCBuZXcgRmlsZShjaHVua3MsIGZpbGVuYW1lLCB7IHR5cGU6IG1pbWVUeXBlIH0pKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdmFsdWUub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICAgICAgICAgICAgY2h1bmtzLnB1c2goY2h1bmspXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgdmFsdWUub24oJ2VuZCcsICgpID0+IHtcbiAgICAgICAgICAgICAgcmVzcG9uc2VGb3JtRGF0YS5hcHBlbmQobmFtZSwgbmV3IEZpbGUoY2h1bmtzLCBmaWxlbmFtZSwgeyB0eXBlOiBtaW1lVHlwZSB9KSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIGNvbnN0IGJ1c2JveVJlc29sdmUgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgYnVzYm95Lm9uKCdmaW5pc2gnLCByZXNvbHZlKVxuICAgICAgICAgIGJ1c2JveS5vbignZXJyb3InLCAoZXJyKSA9PiByZWplY3QobmV3IFR5cGVFcnJvcihlcnIpKSlcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAodGhpcy5ib2R5ICE9PSBudWxsKSBmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIGNvbnN1bWVCb2R5KHRoaXNba1N0YXRlXS5ib2R5KSkgYnVzYm95LndyaXRlKGNodW5rKVxuICAgICAgICBidXNib3kuZW5kKClcbiAgICAgICAgYXdhaXQgYnVzYm95UmVzb2x2ZVxuXG4gICAgICAgIHJldHVybiByZXNwb25zZUZvcm1EYXRhXG4gICAgICB9IGVsc2UgaWYgKC9hcHBsaWNhdGlvblxcL3gtd3d3LWZvcm0tdXJsZW5jb2RlZC8udGVzdChjb250ZW50VHlwZSkpIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBpZiBtaW1lVHlwZVx1MjAxOXMgZXNzZW5jZSBpcyBcImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZFwiLCB0aGVuOlxuXG4gICAgICAgIC8vIDEuIExldCBlbnRyaWVzIGJlIHRoZSByZXN1bHQgb2YgcGFyc2luZyBieXRlcy5cbiAgICAgICAgbGV0IGVudHJpZXNcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBsZXQgdGV4dCA9ICcnXG4gICAgICAgICAgLy8gYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIHBhcnNlciB3aWxsIGtlZXAgdGhlIEJPTS5cbiAgICAgICAgICAvLyBodHRwczovL3VybC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtdXJsZW5jb2RlZC1wYXJzZXJcbiAgICAgICAgICAvLyBOb3RlIHRoYXQgc3RyZWFtaW5nIGRlY29kZXIgaXMgc3RhdGVmdWwgYW5kIGNhbm5vdCBiZSByZXVzZWRcbiAgICAgICAgICBjb25zdCBzdHJlYW1pbmdEZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCd1dGYtOCcsIHsgaWdub3JlQk9NOiB0cnVlIH0pXG5cbiAgICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIGNvbnN1bWVCb2R5KHRoaXNba1N0YXRlXS5ib2R5KSkge1xuICAgICAgICAgICAgaWYgKCFpc1VpbnQ4QXJyYXkoY2h1bmspKSB7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0V4cGVjdGVkIFVpbnQ4QXJyYXkgY2h1bmsnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGV4dCArPSBzdHJlYW1pbmdEZWNvZGVyLmRlY29kZShjaHVuaywgeyBzdHJlYW06IHRydWUgfSlcbiAgICAgICAgICB9XG4gICAgICAgICAgdGV4dCArPSBzdHJlYW1pbmdEZWNvZGVyLmRlY29kZSgpXG4gICAgICAgICAgZW50cmllcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXModGV4dClcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgLy8gaXN0YW5idWwgaWdub3JlIG5leHQ6IFVuY2xlYXIgd2hlbiBuZXcgVVJMU2VhcmNoUGFyYW1zIGNhbiBmYWlsIG9uIGEgc3RyaW5nLlxuICAgICAgICAgIC8vIDIuIElmIGVudHJpZXMgaXMgZmFpbHVyZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAgICAgICB0aHJvdyBPYmplY3QuYXNzaWduKG5ldyBUeXBlRXJyb3IoKSwgeyBjYXVzZTogZXJyIH0pXG4gICAgICAgIH1cblxuICAgICAgICAvLyAzLiBSZXR1cm4gYSBuZXcgRm9ybURhdGEgb2JqZWN0IHdob3NlIGVudHJpZXMgYXJlIGVudHJpZXMuXG4gICAgICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIGVudHJpZXMpIHtcbiAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQobmFtZSwgdmFsdWUpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZvcm1EYXRhXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBXYWl0IGEgdGljayBiZWZvcmUgY2hlY2tpbmcgaWYgdGhlIHJlcXVlc3QgaGFzIGJlZW4gYWJvcnRlZC5cbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBhIFR5cGVFcnJvciBjYW4gYmUgdGhyb3duIHdoZW4gYW4gQWJvcnRFcnJvciBzaG91bGQuXG4gICAgICAgIGF3YWl0IFByb21pc2UucmVzb2x2ZSgpXG5cbiAgICAgICAgdGhyb3dJZkFib3J0ZWQodGhpc1trU3RhdGVdKVxuXG4gICAgICAgIC8vIE90aGVyd2lzZSwgdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICBoZWFkZXI6IGAke2luc3RhbmNlLm5hbWV9LmZvcm1EYXRhYCxcbiAgICAgICAgICBtZXNzYWdlOiAnQ291bGQgbm90IHBhcnNlIGNvbnRlbnQgYXMgRm9ybURhdGEuJ1xuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRob2RzXG59XG5cbmZ1bmN0aW9uIG1peGluQm9keSAocHJvdG90eXBlKSB7XG4gIE9iamVjdC5hc3NpZ24ocHJvdG90eXBlLnByb3RvdHlwZSwgYm9keU1peGluTWV0aG9kcyhwcm90b3R5cGUpKVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtYm9keS1jb25zdW1lLWJvZHlcbiAqIEBwYXJhbSB7UmVzcG9uc2V8UmVxdWVzdH0gb2JqZWN0XG4gKiBAcGFyYW0geyh2YWx1ZTogdW5rbm93bikgPT4gdW5rbm93bn0gY29udmVydEJ5dGVzVG9KU1ZhbHVlXG4gKiBAcGFyYW0ge1Jlc3BvbnNlfFJlcXVlc3R9IGluc3RhbmNlXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHNwZWNDb25zdW1lQm9keSAob2JqZWN0LCBjb252ZXJ0Qnl0ZXNUb0pTVmFsdWUsIGluc3RhbmNlKSB7XG4gIHdlYmlkbC5icmFuZENoZWNrKG9iamVjdCwgaW5zdGFuY2UpXG5cbiAgdGhyb3dJZkFib3J0ZWQob2JqZWN0W2tTdGF0ZV0pXG5cbiAgLy8gMS4gSWYgb2JqZWN0IGlzIHVudXNhYmxlLCB0aGVuIHJldHVybiBhIHByb21pc2UgcmVqZWN0ZWRcbiAgLy8gICAgd2l0aCBhIFR5cGVFcnJvci5cbiAgaWYgKGJvZHlVbnVzYWJsZShvYmplY3Rba1N0YXRlXS5ib2R5KSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0JvZHkgaXMgdW51c2FibGUnKVxuICB9XG5cbiAgLy8gMi4gTGV0IHByb21pc2UgYmUgYSBuZXcgcHJvbWlzZS5cbiAgY29uc3QgcHJvbWlzZSA9IGNyZWF0ZURlZmVycmVkUHJvbWlzZSgpXG5cbiAgLy8gMy4gTGV0IGVycm9yU3RlcHMgZ2l2ZW4gZXJyb3IgYmUgdG8gcmVqZWN0IHByb21pc2Ugd2l0aCBlcnJvci5cbiAgY29uc3QgZXJyb3JTdGVwcyA9IChlcnJvcikgPT4gcHJvbWlzZS5yZWplY3QoZXJyb3IpXG5cbiAgLy8gNC4gTGV0IHN1Y2Nlc3NTdGVwcyBnaXZlbiBhIGJ5dGUgc2VxdWVuY2UgZGF0YSBiZSB0byByZXNvbHZlXG4gIC8vICAgIHByb21pc2Ugd2l0aCB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgY29udmVydEJ5dGVzVG9KU1ZhbHVlXG4gIC8vICAgIHdpdGggZGF0YS4gSWYgdGhhdCB0aHJldyBhbiBleGNlcHRpb24sIHRoZW4gcnVuIGVycm9yU3RlcHNcbiAgLy8gICAgd2l0aCB0aGF0IGV4Y2VwdGlvbi5cbiAgY29uc3Qgc3VjY2Vzc1N0ZXBzID0gKGRhdGEpID0+IHtcbiAgICB0cnkge1xuICAgICAgcHJvbWlzZS5yZXNvbHZlKGNvbnZlcnRCeXRlc1RvSlNWYWx1ZShkYXRhKSlcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBlcnJvclN0ZXBzKGUpXG4gICAgfVxuICB9XG5cbiAgLy8gNS4gSWYgb2JqZWN0XHUyMDE5cyBib2R5IGlzIG51bGwsIHRoZW4gcnVuIHN1Y2Nlc3NTdGVwcyB3aXRoIGFuXG4gIC8vICAgIGVtcHR5IGJ5dGUgc2VxdWVuY2UuXG4gIGlmIChvYmplY3Rba1N0YXRlXS5ib2R5ID09IG51bGwpIHtcbiAgICBzdWNjZXNzU3RlcHMobmV3IFVpbnQ4QXJyYXkoKSlcbiAgICByZXR1cm4gcHJvbWlzZS5wcm9taXNlXG4gIH1cblxuICAvLyA2LiBPdGhlcndpc2UsIGZ1bGx5IHJlYWQgb2JqZWN0XHUyMDE5cyBib2R5IGdpdmVuIHN1Y2Nlc3NTdGVwcyxcbiAgLy8gICAgZXJyb3JTdGVwcywgYW5kIG9iamVjdFx1MjAxOXMgcmVsZXZhbnQgZ2xvYmFsIG9iamVjdC5cbiAgYXdhaXQgZnVsbHlSZWFkQm9keShvYmplY3Rba1N0YXRlXS5ib2R5LCBzdWNjZXNzU3RlcHMsIGVycm9yU3RlcHMpXG5cbiAgLy8gNy4gUmV0dXJuIHByb21pc2UuXG4gIHJldHVybiBwcm9taXNlLnByb21pc2Vcbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2JvZHktdW51c2FibGVcbmZ1bmN0aW9uIGJvZHlVbnVzYWJsZSAoYm9keSkge1xuICAvLyBBbiBvYmplY3QgaW5jbHVkaW5nIHRoZSBCb2R5IGludGVyZmFjZSBtaXhpbiBpc1xuICAvLyBzYWlkIHRvIGJlIHVudXNhYmxlIGlmIGl0cyBib2R5IGlzIG5vbi1udWxsIGFuZFxuICAvLyBpdHMgYm9keVx1MjAxOXMgc3RyZWFtIGlzIGRpc3R1cmJlZCBvciBsb2NrZWQuXG4gIHJldHVybiBib2R5ICE9IG51bGwgJiYgKGJvZHkuc3RyZWFtLmxvY2tlZCB8fCB1dGlsLmlzRGlzdHVyYmVkKGJvZHkuc3RyZWFtKSlcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLyN1dGYtOC1kZWNvZGVcbiAqIEBwYXJhbSB7QnVmZmVyfSBidWZmZXJcbiAqL1xuZnVuY3Rpb24gdXRmOERlY29kZUJ5dGVzIChidWZmZXIpIHtcbiAgaWYgKGJ1ZmZlci5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gJydcbiAgfVxuXG4gIC8vIDEuIExldCBidWZmZXIgYmUgdGhlIHJlc3VsdCBvZiBwZWVraW5nIHRocmVlIGJ5dGVzIGZyb21cbiAgLy8gICAgaW9RdWV1ZSwgY29udmVydGVkIHRvIGEgYnl0ZSBzZXF1ZW5jZS5cblxuICAvLyAyLiBJZiBidWZmZXIgaXMgMHhFRiAweEJCIDB4QkYsIHRoZW4gcmVhZCB0aHJlZVxuICAvLyAgICBieXRlcyBmcm9tIGlvUXVldWUuIChEbyBub3RoaW5nIHdpdGggdGhvc2UgYnl0ZXMuKVxuICBpZiAoYnVmZmVyWzBdID09PSAweEVGICYmIGJ1ZmZlclsxXSA9PT0gMHhCQiAmJiBidWZmZXJbMl0gPT09IDB4QkYpIHtcbiAgICBidWZmZXIgPSBidWZmZXIuc3ViYXJyYXkoMylcbiAgfVxuXG4gIC8vIDMuIFByb2Nlc3MgYSBxdWV1ZSB3aXRoIGFuIGluc3RhbmNlIG9mIFVURi04XHUyMDE5c1xuICAvLyAgICBkZWNvZGVyLCBpb1F1ZXVlLCBvdXRwdXQsIGFuZCBcInJlcGxhY2VtZW50XCIuXG4gIGNvbnN0IG91dHB1dCA9IHRleHREZWNvZGVyLmRlY29kZShidWZmZXIpXG5cbiAgLy8gNC4gUmV0dXJuIG91dHB1dC5cbiAgcmV0dXJuIG91dHB1dFxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9pbmZyYS5zcGVjLndoYXR3Zy5vcmcvI3BhcnNlLWpzb24tYnl0ZXMtdG8tYS1qYXZhc2NyaXB0LXZhbHVlXG4gKiBAcGFyYW0ge1VpbnQ4QXJyYXl9IGJ5dGVzXG4gKi9cbmZ1bmN0aW9uIHBhcnNlSlNPTkZyb21CeXRlcyAoYnl0ZXMpIHtcbiAgcmV0dXJuIEpTT04ucGFyc2UodXRmOERlY29kZUJ5dGVzKGJ5dGVzKSlcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWJvZHktbWltZS10eXBlXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi9yZXNwb25zZScpLlJlc3BvbnNlfGltcG9ydCgnLi9yZXF1ZXN0JykuUmVxdWVzdH0gb2JqZWN0XG4gKi9cbmZ1bmN0aW9uIGJvZHlNaW1lVHlwZSAob2JqZWN0KSB7XG4gIGNvbnN0IHsgaGVhZGVyc0xpc3QgfSA9IG9iamVjdFtrU3RhdGVdXG4gIGNvbnN0IGNvbnRlbnRUeXBlID0gaGVhZGVyc0xpc3QuZ2V0KCdjb250ZW50LXR5cGUnKVxuXG4gIGlmIChjb250ZW50VHlwZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIHJldHVybiBwYXJzZU1JTUVUeXBlKGNvbnRlbnRUeXBlKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgZXh0cmFjdEJvZHksXG4gIHNhZmVseUV4dHJhY3RCb2R5LFxuICBjbG9uZUJvZHksXG4gIG1peGluQm9keVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yLFxuICBOb3RTdXBwb3J0ZWRFcnJvclxufSA9IHJlcXVpcmUoJy4vZXJyb3JzJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7IGtIVFRQMkJ1aWxkUmVxdWVzdCwga0hUVFAyQ29weUhlYWRlcnMsIGtIVFRQMUJ1aWxkUmVxdWVzdCB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuL3V0aWwnKVxuXG4vLyB0b2tlblJlZ0V4cCBhbmQgaGVhZGVyQ2hhclJlZ2V4IGhhdmUgYmVlbiBsaWZ0ZWQgZnJvbVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL2Jsb2IvbWFpbi9saWIvX2h0dHBfY29tbW9uLmpzXG5cbi8qKlxuICogVmVyaWZpZXMgdGhhdCB0aGUgZ2l2ZW4gdmFsIGlzIGEgdmFsaWQgSFRUUCB0b2tlblxuICogcGVyIHRoZSBydWxlcyBkZWZpbmVkIGluIFJGQyA3MjMwXG4gKiBTZWUgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzAjc2VjdGlvbi0zLjIuNlxuICovXG5jb25zdCB0b2tlblJlZ0V4cCA9IC9eW1xcXl9gYS16QS1aXFwtMC05ISMkJSYnKisufH5dKyQvXG5cbi8qKlxuICogTWF0Y2hlcyBpZiB2YWwgY29udGFpbnMgYW4gaW52YWxpZCBmaWVsZC12Y2hhclxuICogIGZpZWxkLXZhbHVlICAgID0gKiggZmllbGQtY29udGVudCAvIG9icy1mb2xkIClcbiAqICBmaWVsZC1jb250ZW50ICA9IGZpZWxkLXZjaGFyIFsgMSooIFNQIC8gSFRBQiApIGZpZWxkLXZjaGFyIF1cbiAqICBmaWVsZC12Y2hhciAgICA9IFZDSEFSIC8gb2JzLXRleHRcbiAqL1xuY29uc3QgaGVhZGVyQ2hhclJlZ2V4ID0gL1teXFx0XFx4MjAtXFx4N2VcXHg4MC1cXHhmZl0vXG5cbi8vIFZlcmlmaWVzIHRoYXQgYSBnaXZlbiBwYXRoIGlzIHZhbGlkIGRvZXMgbm90IGNvbnRhaW4gY29udHJvbCBjaGFycyBcXHgwMCB0byBcXHgyMFxuY29uc3QgaW52YWxpZFBhdGhSZWdleCA9IC9bXlxcdTAwMjEtXFx1MDBmZl0vXG5cbmNvbnN0IGtIYW5kbGVyID0gU3ltYm9sKCdoYW5kbGVyJylcblxuY29uc3QgY2hhbm5lbHMgPSB7fVxuXG5sZXQgZXh0cmFjdEJvZHlcblxudHJ5IHtcbiAgY29uc3QgZGlhZ25vc3RpY3NDaGFubmVsID0gcmVxdWlyZSgnZGlhZ25vc3RpY3NfY2hhbm5lbCcpXG4gIGNoYW5uZWxzLmNyZWF0ZSA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6cmVxdWVzdDpjcmVhdGUnKVxuICBjaGFubmVscy5ib2R5U2VudCA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6cmVxdWVzdDpib2R5U2VudCcpXG4gIGNoYW5uZWxzLmhlYWRlcnMgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOnJlcXVlc3Q6aGVhZGVycycpXG4gIGNoYW5uZWxzLnRyYWlsZXJzID0gZGlhZ25vc3RpY3NDaGFubmVsLmNoYW5uZWwoJ3VuZGljaTpyZXF1ZXN0OnRyYWlsZXJzJylcbiAgY2hhbm5lbHMuZXJyb3IgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOnJlcXVlc3Q6ZXJyb3InKVxufSBjYXRjaCB7XG4gIGNoYW5uZWxzLmNyZWF0ZSA9IHsgaGFzU3Vic2NyaWJlcnM6IGZhbHNlIH1cbiAgY2hhbm5lbHMuYm9keVNlbnQgPSB7IGhhc1N1YnNjcmliZXJzOiBmYWxzZSB9XG4gIGNoYW5uZWxzLmhlYWRlcnMgPSB7IGhhc1N1YnNjcmliZXJzOiBmYWxzZSB9XG4gIGNoYW5uZWxzLnRyYWlsZXJzID0geyBoYXNTdWJzY3JpYmVyczogZmFsc2UgfVxuICBjaGFubmVscy5lcnJvciA9IHsgaGFzU3Vic2NyaWJlcnM6IGZhbHNlIH1cbn1cblxuY2xhc3MgUmVxdWVzdCB7XG4gIGNvbnN0cnVjdG9yIChvcmlnaW4sIHtcbiAgICBwYXRoLFxuICAgIG1ldGhvZCxcbiAgICBib2R5LFxuICAgIGhlYWRlcnMsXG4gICAgcXVlcnksXG4gICAgaWRlbXBvdGVudCxcbiAgICBibG9ja2luZyxcbiAgICB1cGdyYWRlLFxuICAgIGhlYWRlcnNUaW1lb3V0LFxuICAgIGJvZHlUaW1lb3V0LFxuICAgIHJlc2V0LFxuICAgIHRocm93T25FcnJvcixcbiAgICBleHBlY3RDb250aW51ZVxuICB9LCBoYW5kbGVyKSB7XG4gICAgaWYgKHR5cGVvZiBwYXRoICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdwYXRoIG11c3QgYmUgYSBzdHJpbmcnKVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICBwYXRoWzBdICE9PSAnLycgJiZcbiAgICAgICEocGF0aC5zdGFydHNXaXRoKCdodHRwOi8vJykgfHwgcGF0aC5zdGFydHNXaXRoKCdodHRwczovLycpKSAmJlxuICAgICAgbWV0aG9kICE9PSAnQ09OTkVDVCdcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigncGF0aCBtdXN0IGJlIGFuIGFic29sdXRlIFVSTCBvciBzdGFydCB3aXRoIGEgc2xhc2gnKVxuICAgIH0gZWxzZSBpZiAoaW52YWxpZFBhdGhSZWdleC5leGVjKHBhdGgpICE9PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgcmVxdWVzdCBwYXRoJylcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIG1ldGhvZCAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWV0aG9kIG11c3QgYmUgYSBzdHJpbmcnKVxuICAgIH0gZWxzZSBpZiAodG9rZW5SZWdFeHAuZXhlYyhtZXRob2QpID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgcmVxdWVzdCBtZXRob2QnKVxuICAgIH1cblxuICAgIGlmICh1cGdyYWRlICYmIHR5cGVvZiB1cGdyYWRlICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd1cGdyYWRlIG11c3QgYmUgYSBzdHJpbmcnKVxuICAgIH1cblxuICAgIGlmIChoZWFkZXJzVGltZW91dCAhPSBudWxsICYmICghTnVtYmVyLmlzRmluaXRlKGhlYWRlcnNUaW1lb3V0KSB8fCBoZWFkZXJzVGltZW91dCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgaGVhZGVyc1RpbWVvdXQnKVxuICAgIH1cblxuICAgIGlmIChib2R5VGltZW91dCAhPSBudWxsICYmICghTnVtYmVyLmlzRmluaXRlKGJvZHlUaW1lb3V0KSB8fCBib2R5VGltZW91dCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgYm9keVRpbWVvdXQnKVxuICAgIH1cblxuICAgIGlmIChyZXNldCAhPSBudWxsICYmIHR5cGVvZiByZXNldCAhPT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgcmVzZXQnKVxuICAgIH1cblxuICAgIGlmIChleHBlY3RDb250aW51ZSAhPSBudWxsICYmIHR5cGVvZiBleHBlY3RDb250aW51ZSAhPT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgZXhwZWN0Q29udGludWUnKVxuICAgIH1cblxuICAgIHRoaXMuaGVhZGVyc1RpbWVvdXQgPSBoZWFkZXJzVGltZW91dFxuXG4gICAgdGhpcy5ib2R5VGltZW91dCA9IGJvZHlUaW1lb3V0XG5cbiAgICB0aGlzLnRocm93T25FcnJvciA9IHRocm93T25FcnJvciA9PT0gdHJ1ZVxuXG4gICAgdGhpcy5tZXRob2QgPSBtZXRob2RcblxuICAgIHRoaXMuYWJvcnQgPSBudWxsXG5cbiAgICBpZiAoYm9keSA9PSBudWxsKSB7XG4gICAgICB0aGlzLmJvZHkgPSBudWxsXG4gICAgfSBlbHNlIGlmICh1dGlsLmlzU3RyZWFtKGJvZHkpKSB7XG4gICAgICB0aGlzLmJvZHkgPSBib2R5XG5cbiAgICAgIGNvbnN0IHJTdGF0ZSA9IHRoaXMuYm9keS5fcmVhZGFibGVTdGF0ZVxuICAgICAgaWYgKCFyU3RhdGUgfHwgIXJTdGF0ZS5hdXRvRGVzdHJveSkge1xuICAgICAgICB0aGlzLmVuZEhhbmRsZXIgPSBmdW5jdGlvbiBhdXRvRGVzdHJveSAoKSB7XG4gICAgICAgICAgdXRpbC5kZXN0cm95KHRoaXMpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5ib2R5Lm9uKCdlbmQnLCB0aGlzLmVuZEhhbmRsZXIpXG4gICAgICB9XG5cbiAgICAgIHRoaXMuZXJyb3JIYW5kbGVyID0gZXJyID0+IHtcbiAgICAgICAgaWYgKHRoaXMuYWJvcnQpIHtcbiAgICAgICAgICB0aGlzLmFib3J0KGVycilcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmVycm9yID0gZXJyXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMuYm9keS5vbignZXJyb3InLCB0aGlzLmVycm9ySGFuZGxlcilcbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNCdWZmZXIoYm9keSkpIHtcbiAgICAgIHRoaXMuYm9keSA9IGJvZHkuYnl0ZUxlbmd0aCA/IGJvZHkgOiBudWxsXG4gICAgfSBlbHNlIGlmIChBcnJheUJ1ZmZlci5pc1ZpZXcoYm9keSkpIHtcbiAgICAgIHRoaXMuYm9keSA9IGJvZHkuYnVmZmVyLmJ5dGVMZW5ndGggPyBCdWZmZXIuZnJvbShib2R5LmJ1ZmZlciwgYm9keS5ieXRlT2Zmc2V0LCBib2R5LmJ5dGVMZW5ndGgpIDogbnVsbFxuICAgIH0gZWxzZSBpZiAoYm9keSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSB7XG4gICAgICB0aGlzLmJvZHkgPSBib2R5LmJ5dGVMZW5ndGggPyBCdWZmZXIuZnJvbShib2R5KSA6IG51bGxcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBib2R5ID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5ib2R5ID0gYm9keS5sZW5ndGggPyBCdWZmZXIuZnJvbShib2R5KSA6IG51bGxcbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNGb3JtRGF0YUxpa2UoYm9keSkgfHwgdXRpbC5pc0l0ZXJhYmxlKGJvZHkpIHx8IHV0aWwuaXNCbG9iTGlrZShib2R5KSkge1xuICAgICAgdGhpcy5ib2R5ID0gYm9keVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2JvZHkgbXVzdCBiZSBhIHN0cmluZywgYSBCdWZmZXIsIGEgUmVhZGFibGUgc3RyZWFtLCBhbiBpdGVyYWJsZSwgb3IgYW4gYXN5bmMgaXRlcmFibGUnKVxuICAgIH1cblxuICAgIHRoaXMuY29tcGxldGVkID0gZmFsc2VcblxuICAgIHRoaXMuYWJvcnRlZCA9IGZhbHNlXG5cbiAgICB0aGlzLnVwZ3JhZGUgPSB1cGdyYWRlIHx8IG51bGxcblxuICAgIHRoaXMucGF0aCA9IHF1ZXJ5ID8gdXRpbC5idWlsZFVSTChwYXRoLCBxdWVyeSkgOiBwYXRoXG5cbiAgICB0aGlzLm9yaWdpbiA9IG9yaWdpblxuXG4gICAgdGhpcy5pZGVtcG90ZW50ID0gaWRlbXBvdGVudCA9PSBudWxsXG4gICAgICA/IG1ldGhvZCA9PT0gJ0hFQUQnIHx8IG1ldGhvZCA9PT0gJ0dFVCdcbiAgICAgIDogaWRlbXBvdGVudFxuXG4gICAgdGhpcy5ibG9ja2luZyA9IGJsb2NraW5nID09IG51bGwgPyBmYWxzZSA6IGJsb2NraW5nXG5cbiAgICB0aGlzLnJlc2V0ID0gcmVzZXQgPT0gbnVsbCA/IG51bGwgOiByZXNldFxuXG4gICAgdGhpcy5ob3N0ID0gbnVsbFxuXG4gICAgdGhpcy5jb250ZW50TGVuZ3RoID0gbnVsbFxuXG4gICAgdGhpcy5jb250ZW50VHlwZSA9IG51bGxcblxuICAgIHRoaXMuaGVhZGVycyA9ICcnXG5cbiAgICAvLyBPbmx5IGZvciBIMlxuICAgIHRoaXMuZXhwZWN0Q29udGludWUgPSBleHBlY3RDb250aW51ZSAhPSBudWxsID8gZXhwZWN0Q29udGludWUgOiBmYWxzZVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaGVhZGVycykpIHtcbiAgICAgIGlmIChoZWFkZXJzLmxlbmd0aCAlIDIgIT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoZWFkZXJzIGFycmF5IG11c3QgYmUgZXZlbicpXG4gICAgICB9XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGhlYWRlcnMubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAgICAgcHJvY2Vzc0hlYWRlcih0aGlzLCBoZWFkZXJzW2ldLCBoZWFkZXJzW2kgKyAxXSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGhlYWRlcnMgJiYgdHlwZW9mIGhlYWRlcnMgPT09ICdvYmplY3QnKSB7XG4gICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoaGVhZGVycylcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBrZXkgPSBrZXlzW2ldXG4gICAgICAgIHByb2Nlc3NIZWFkZXIodGhpcywga2V5LCBoZWFkZXJzW2tleV0pXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChoZWFkZXJzICE9IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaGVhZGVycyBtdXN0IGJlIGFuIG9iamVjdCBvciBhbiBhcnJheScpXG4gICAgfVxuXG4gICAgaWYgKHV0aWwuaXNGb3JtRGF0YUxpa2UodGhpcy5ib2R5KSkge1xuICAgICAgaWYgKHV0aWwubm9kZU1ham9yIDwgMTYgfHwgKHV0aWwubm9kZU1ham9yID09PSAxNiAmJiB1dGlsLm5vZGVNaW5vciA8IDgpKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignRm9ybS1EYXRhIGJvZGllcyBhcmUgb25seSBzdXBwb3J0ZWQgaW4gbm9kZSB2MTYuOCBhbmQgbmV3ZXIuJylcbiAgICAgIH1cblxuICAgICAgaWYgKCFleHRyYWN0Qm9keSkge1xuICAgICAgICBleHRyYWN0Qm9keSA9IHJlcXVpcmUoJy4uL2ZldGNoL2JvZHkuanMnKS5leHRyYWN0Qm9keVxuICAgICAgfVxuXG4gICAgICBjb25zdCBbYm9keVN0cmVhbSwgY29udGVudFR5cGVdID0gZXh0cmFjdEJvZHkoYm9keSlcbiAgICAgIGlmICh0aGlzLmNvbnRlbnRUeXBlID09IG51bGwpIHtcbiAgICAgICAgdGhpcy5jb250ZW50VHlwZSA9IGNvbnRlbnRUeXBlXG4gICAgICAgIHRoaXMuaGVhZGVycyArPSBgY29udGVudC10eXBlOiAke2NvbnRlbnRUeXBlfVxcclxcbmBcbiAgICAgIH1cbiAgICAgIHRoaXMuYm9keSA9IGJvZHlTdHJlYW0uc3RyZWFtXG4gICAgICB0aGlzLmNvbnRlbnRMZW5ndGggPSBib2R5U3RyZWFtLmxlbmd0aFxuICAgIH0gZWxzZSBpZiAodXRpbC5pc0Jsb2JMaWtlKGJvZHkpICYmIHRoaXMuY29udGVudFR5cGUgPT0gbnVsbCAmJiBib2R5LnR5cGUpIHtcbiAgICAgIHRoaXMuY29udGVudFR5cGUgPSBib2R5LnR5cGVcbiAgICAgIHRoaXMuaGVhZGVycyArPSBgY29udGVudC10eXBlOiAke2JvZHkudHlwZX1cXHJcXG5gXG4gICAgfVxuXG4gICAgdXRpbC52YWxpZGF0ZUhhbmRsZXIoaGFuZGxlciwgbWV0aG9kLCB1cGdyYWRlKVxuXG4gICAgdGhpcy5zZXJ2ZXJuYW1lID0gdXRpbC5nZXRTZXJ2ZXJOYW1lKHRoaXMuaG9zdClcblxuICAgIHRoaXNba0hhbmRsZXJdID0gaGFuZGxlclxuXG4gICAgaWYgKGNoYW5uZWxzLmNyZWF0ZS5oYXNTdWJzY3JpYmVycykge1xuICAgICAgY2hhbm5lbHMuY3JlYXRlLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzIH0pXG4gICAgfVxuICB9XG5cbiAgb25Cb2R5U2VudCAoY2h1bmspIHtcbiAgICBpZiAodGhpc1trSGFuZGxlcl0ub25Cb2R5U2VudCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHRoaXNba0hhbmRsZXJdLm9uQm9keVNlbnQoY2h1bmspXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5hYm9ydChlcnIpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25SZXF1ZXN0U2VudCAoKSB7XG4gICAgaWYgKGNoYW5uZWxzLmJvZHlTZW50Lmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICBjaGFubmVscy5ib2R5U2VudC5wdWJsaXNoKHsgcmVxdWVzdDogdGhpcyB9KVxuICAgIH1cblxuICAgIGlmICh0aGlzW2tIYW5kbGVyXS5vblJlcXVlc3RTZW50KSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25SZXF1ZXN0U2VudCgpXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5hYm9ydChlcnIpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCkge1xuICAgIGFzc2VydCghdGhpcy5hYm9ydGVkKVxuICAgIGFzc2VydCghdGhpcy5jb21wbGV0ZWQpXG5cbiAgICBpZiAodGhpcy5lcnJvcikge1xuICAgICAgYWJvcnQodGhpcy5lcnJvcilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hYm9ydCA9IGFib3J0XG4gICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25Db25uZWN0KGFib3J0KVxuICAgIH1cbiAgfVxuXG4gIG9uSGVhZGVycyAoc3RhdHVzQ29kZSwgaGVhZGVycywgcmVzdW1lLCBzdGF0dXNUZXh0KSB7XG4gICAgYXNzZXJ0KCF0aGlzLmFib3J0ZWQpXG4gICAgYXNzZXJ0KCF0aGlzLmNvbXBsZXRlZClcblxuICAgIGlmIChjaGFubmVscy5oZWFkZXJzLmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICBjaGFubmVscy5oZWFkZXJzLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzLCByZXNwb25zZTogeyBzdGF0dXNDb2RlLCBoZWFkZXJzLCBzdGF0dXNUZXh0IH0gfSlcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHRoaXNba0hhbmRsZXJdLm9uSGVhZGVycyhzdGF0dXNDb2RlLCBoZWFkZXJzLCByZXN1bWUsIHN0YXR1c1RleHQpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmFib3J0KGVycilcbiAgICB9XG4gIH1cblxuICBvbkRhdGEgKGNodW5rKSB7XG4gICAgYXNzZXJ0KCF0aGlzLmFib3J0ZWQpXG4gICAgYXNzZXJ0KCF0aGlzLmNvbXBsZXRlZClcblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25EYXRhKGNodW5rKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5hYm9ydChlcnIpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICBvblVwZ3JhZGUgKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHNvY2tldCkge1xuICAgIGFzc2VydCghdGhpcy5hYm9ydGVkKVxuICAgIGFzc2VydCghdGhpcy5jb21wbGV0ZWQpXG5cbiAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25VcGdyYWRlKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHNvY2tldClcbiAgfVxuXG4gIG9uQ29tcGxldGUgKHRyYWlsZXJzKSB7XG4gICAgdGhpcy5vbkZpbmFsbHkoKVxuXG4gICAgYXNzZXJ0KCF0aGlzLmFib3J0ZWQpXG5cbiAgICB0aGlzLmNvbXBsZXRlZCA9IHRydWVcbiAgICBpZiAoY2hhbm5lbHMudHJhaWxlcnMuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICAgIGNoYW5uZWxzLnRyYWlsZXJzLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzLCB0cmFpbGVycyB9KVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25Db21wbGV0ZSh0cmFpbGVycylcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vIFRPRE8gKGZpeCk6IFRoaXMgbWlnaHQgYmUgYSBiYWQgaWRlYT9cbiAgICAgIHRoaXMub25FcnJvcihlcnIpXG4gICAgfVxuICB9XG5cbiAgb25FcnJvciAoZXJyb3IpIHtcbiAgICB0aGlzLm9uRmluYWxseSgpXG5cbiAgICBpZiAoY2hhbm5lbHMuZXJyb3IuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICAgIGNoYW5uZWxzLmVycm9yLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzLCBlcnJvciB9KVxuICAgIH1cblxuICAgIGlmICh0aGlzLmFib3J0ZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLmFib3J0ZWQgPSB0cnVlXG5cbiAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25FcnJvcihlcnJvcilcbiAgfVxuXG4gIG9uRmluYWxseSAoKSB7XG4gICAgaWYgKHRoaXMuZXJyb3JIYW5kbGVyKSB7XG4gICAgICB0aGlzLmJvZHkub2ZmKCdlcnJvcicsIHRoaXMuZXJyb3JIYW5kbGVyKVxuICAgICAgdGhpcy5lcnJvckhhbmRsZXIgPSBudWxsXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZW5kSGFuZGxlcikge1xuICAgICAgdGhpcy5ib2R5Lm9mZignZW5kJywgdGhpcy5lbmRIYW5kbGVyKVxuICAgICAgdGhpcy5lbmRIYW5kbGVyID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIC8vIFRPRE86IGFkanVzdCB0byBzdXBwb3J0IEgyXG4gIGFkZEhlYWRlciAoa2V5LCB2YWx1ZSkge1xuICAgIHByb2Nlc3NIZWFkZXIodGhpcywga2V5LCB2YWx1ZSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgc3RhdGljIFtrSFRUUDFCdWlsZFJlcXVlc3RdIChvcmlnaW4sIG9wdHMsIGhhbmRsZXIpIHtcbiAgICAvLyBUT0RPOiBNaWdyYXRlIGhlYWRlciBwYXJzaW5nIGhlcmUsIHRvIG1ha2UgUmVxdWVzdHNcbiAgICAvLyBIVFRQIGFnbm9zdGljXG4gICAgcmV0dXJuIG5ldyBSZXF1ZXN0KG9yaWdpbiwgb3B0cywgaGFuZGxlcilcbiAgfVxuXG4gIHN0YXRpYyBba0hUVFAyQnVpbGRSZXF1ZXN0XSAob3JpZ2luLCBvcHRzLCBoYW5kbGVyKSB7XG4gICAgY29uc3QgaGVhZGVycyA9IG9wdHMuaGVhZGVyc1xuICAgIG9wdHMgPSB7IC4uLm9wdHMsIGhlYWRlcnM6IG51bGwgfVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IG5ldyBSZXF1ZXN0KG9yaWdpbiwgb3B0cywgaGFuZGxlcilcblxuICAgIHJlcXVlc3QuaGVhZGVycyA9IHt9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzKSkge1xuICAgICAgaWYgKGhlYWRlcnMubGVuZ3RoICUgMiAhPT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2hlYWRlcnMgYXJyYXkgbXVzdCBiZSBldmVuJylcbiAgICAgIH1cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaGVhZGVycy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICBwcm9jZXNzSGVhZGVyKHJlcXVlc3QsIGhlYWRlcnNbaV0sIGhlYWRlcnNbaSArIDFdLCB0cnVlKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoaGVhZGVycyAmJiB0eXBlb2YgaGVhZGVycyA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhoZWFkZXJzKVxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGtleSA9IGtleXNbaV1cbiAgICAgICAgcHJvY2Vzc0hlYWRlcihyZXF1ZXN0LCBrZXksIGhlYWRlcnNba2V5XSwgdHJ1ZSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGhlYWRlcnMgIT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoZWFkZXJzIG11c3QgYmUgYW4gb2JqZWN0IG9yIGFuIGFycmF5JylcbiAgICB9XG5cbiAgICByZXR1cm4gcmVxdWVzdFxuICB9XG5cbiAgc3RhdGljIFtrSFRUUDJDb3B5SGVhZGVyc10gKHJhdykge1xuICAgIGNvbnN0IHJhd0hlYWRlcnMgPSByYXcuc3BsaXQoJ1xcclxcbicpXG4gICAgY29uc3QgaGVhZGVycyA9IHt9XG5cbiAgICBmb3IgKGNvbnN0IGhlYWRlciBvZiByYXdIZWFkZXJzKSB7XG4gICAgICBjb25zdCBba2V5LCB2YWx1ZV0gPSBoZWFkZXIuc3BsaXQoJzogJylcblxuICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUubGVuZ3RoID09PSAwKSBjb250aW51ZVxuXG4gICAgICBpZiAoaGVhZGVyc1trZXldKSBoZWFkZXJzW2tleV0gKz0gYCwke3ZhbHVlfWBcbiAgICAgIGVsc2UgaGVhZGVyc1trZXldID0gdmFsdWVcbiAgICB9XG5cbiAgICByZXR1cm4gaGVhZGVyc1xuICB9XG59XG5cbmZ1bmN0aW9uIHByb2Nlc3NIZWFkZXJWYWx1ZSAoa2V5LCB2YWwsIHNraXBBcHBlbmQpIHtcbiAgaWYgKHZhbCAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0Jykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihgaW52YWxpZCAke2tleX0gaGVhZGVyYClcbiAgfVxuXG4gIHZhbCA9IHZhbCAhPSBudWxsID8gYCR7dmFsfWAgOiAnJ1xuXG4gIGlmIChoZWFkZXJDaGFyUmVnZXguZXhlYyh2YWwpICE9PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKGBpbnZhbGlkICR7a2V5fSBoZWFkZXJgKVxuICB9XG5cbiAgcmV0dXJuIHNraXBBcHBlbmQgPyB2YWwgOiBgJHtrZXl9OiAke3ZhbH1cXHJcXG5gXG59XG5cbmZ1bmN0aW9uIHByb2Nlc3NIZWFkZXIgKHJlcXVlc3QsIGtleSwgdmFsLCBza2lwQXBwZW5kID0gZmFsc2UpIHtcbiAgaWYgKHZhbCAmJiAodHlwZW9mIHZhbCA9PT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkodmFsKSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoYGludmFsaWQgJHtrZXl9IGhlYWRlcmApXG4gIH0gZWxzZSBpZiAodmFsID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmIChcbiAgICByZXF1ZXN0Lmhvc3QgPT09IG51bGwgJiZcbiAgICBrZXkubGVuZ3RoID09PSA0ICYmXG4gICAga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdob3N0J1xuICApIHtcbiAgICBpZiAoaGVhZGVyQ2hhclJlZ2V4LmV4ZWModmFsKSAhPT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKGBpbnZhbGlkICR7a2V5fSBoZWFkZXJgKVxuICAgIH1cbiAgICAvLyBDb25zdW1lZCBieSBDbGllbnRcbiAgICByZXF1ZXN0Lmhvc3QgPSB2YWxcbiAgfSBlbHNlIGlmIChcbiAgICByZXF1ZXN0LmNvbnRlbnRMZW5ndGggPT09IG51bGwgJiZcbiAgICBrZXkubGVuZ3RoID09PSAxNCAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC1sZW5ndGgnXG4gICkge1xuICAgIHJlcXVlc3QuY29udGVudExlbmd0aCA9IHBhcnNlSW50KHZhbCwgMTApXG4gICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUocmVxdWVzdC5jb250ZW50TGVuZ3RoKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIGNvbnRlbnQtbGVuZ3RoIGhlYWRlcicpXG4gICAgfVxuICB9IGVsc2UgaWYgKFxuICAgIHJlcXVlc3QuY29udGVudFR5cGUgPT09IG51bGwgJiZcbiAgICBrZXkubGVuZ3RoID09PSAxMiAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC10eXBlJ1xuICApIHtcbiAgICByZXF1ZXN0LmNvbnRlbnRUeXBlID0gdmFsXG4gICAgaWYgKHNraXBBcHBlbmQpIHJlcXVlc3QuaGVhZGVyc1trZXldID0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsLCBza2lwQXBwZW5kKVxuICAgIGVsc2UgcmVxdWVzdC5oZWFkZXJzICs9IHByb2Nlc3NIZWFkZXJWYWx1ZShrZXksIHZhbClcbiAgfSBlbHNlIGlmIChcbiAgICBrZXkubGVuZ3RoID09PSAxNyAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAndHJhbnNmZXItZW5jb2RpbmcnXG4gICkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCB0cmFuc2Zlci1lbmNvZGluZyBoZWFkZXInKVxuICB9IGVsc2UgaWYgKFxuICAgIGtleS5sZW5ndGggPT09IDEwICYmXG4gICAga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdjb25uZWN0aW9uJ1xuICApIHtcbiAgICBjb25zdCB2YWx1ZSA9IHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnID8gdmFsLnRvTG93ZXJDYXNlKCkgOiBudWxsXG4gICAgaWYgKHZhbHVlICE9PSAnY2xvc2UnICYmIHZhbHVlICE9PSAna2VlcC1hbGl2ZScpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjb25uZWN0aW9uIGhlYWRlcicpXG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gJ2Nsb3NlJykge1xuICAgICAgcmVxdWVzdC5yZXNldCA9IHRydWVcbiAgICB9XG4gIH0gZWxzZSBpZiAoXG4gICAga2V5Lmxlbmd0aCA9PT0gMTAgJiZcbiAgICBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2tlZXAtYWxpdmUnXG4gICkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBrZWVwLWFsaXZlIGhlYWRlcicpXG4gIH0gZWxzZSBpZiAoXG4gICAga2V5Lmxlbmd0aCA9PT0gNyAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAndXBncmFkZSdcbiAgKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIHVwZ3JhZGUgaGVhZGVyJylcbiAgfSBlbHNlIGlmIChcbiAgICBrZXkubGVuZ3RoID09PSA2ICYmXG4gICAga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdleHBlY3QnXG4gICkge1xuICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWRFcnJvcignZXhwZWN0IGhlYWRlciBub3Qgc3VwcG9ydGVkJylcbiAgfSBlbHNlIGlmICh0b2tlblJlZ0V4cC5leGVjKGtleSkgPT09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgaGVhZGVyIGtleScpXG4gIH0gZWxzZSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWwubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKHNraXBBcHBlbmQpIHtcbiAgICAgICAgICBpZiAocmVxdWVzdC5oZWFkZXJzW2tleV0pIHJlcXVlc3QuaGVhZGVyc1trZXldICs9IGAsJHtwcm9jZXNzSGVhZGVyVmFsdWUoa2V5LCB2YWxbaV0sIHNraXBBcHBlbmQpfWBcbiAgICAgICAgICBlbHNlIHJlcXVlc3QuaGVhZGVyc1trZXldID0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsW2ldLCBza2lwQXBwZW5kKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlcXVlc3QuaGVhZGVycyArPSBwcm9jZXNzSGVhZGVyVmFsdWUoa2V5LCB2YWxbaV0pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHNraXBBcHBlbmQpIHJlcXVlc3QuaGVhZGVyc1trZXldID0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsLCBza2lwQXBwZW5kKVxuICAgICAgZWxzZSByZXF1ZXN0LmhlYWRlcnMgKz0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsKVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IFJlcXVlc3RcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgRXZlbnRFbWl0dGVyID0gcmVxdWlyZSgnZXZlbnRzJylcblxuY2xhc3MgRGlzcGF0Y2hlciBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gIGRpc3BhdGNoICgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpXG4gIH1cblxuICBjbG9zZSAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKVxuICB9XG5cbiAgZGVzdHJveSAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gRGlzcGF0Y2hlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBEaXNwYXRjaGVyID0gcmVxdWlyZSgnLi9kaXNwYXRjaGVyJylcbmNvbnN0IHtcbiAgQ2xpZW50RGVzdHJveWVkRXJyb3IsXG4gIENsaWVudENsb3NlZEVycm9yLFxuICBJbnZhbGlkQXJndW1lbnRFcnJvclxufSA9IHJlcXVpcmUoJy4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyBrRGVzdHJveSwga0Nsb3NlLCBrRGlzcGF0Y2gsIGtJbnRlcmNlcHRvcnMgfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcblxuY29uc3Qga0Rlc3Ryb3llZCA9IFN5bWJvbCgnZGVzdHJveWVkJylcbmNvbnN0IGtDbG9zZWQgPSBTeW1ib2woJ2Nsb3NlZCcpXG5jb25zdCBrT25EZXN0cm95ZWQgPSBTeW1ib2woJ29uRGVzdHJveWVkJylcbmNvbnN0IGtPbkNsb3NlZCA9IFN5bWJvbCgnb25DbG9zZWQnKVxuY29uc3Qga0ludGVyY2VwdGVkRGlzcGF0Y2ggPSBTeW1ib2woJ0ludGVyY2VwdGVkIERpc3BhdGNoJylcblxuY2xhc3MgRGlzcGF0Y2hlckJhc2UgZXh0ZW5kcyBEaXNwYXRjaGVyIHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXNba0Rlc3Ryb3llZF0gPSBmYWxzZVxuICAgIHRoaXNba09uRGVzdHJveWVkXSA9IG51bGxcbiAgICB0aGlzW2tDbG9zZWRdID0gZmFsc2VcbiAgICB0aGlzW2tPbkNsb3NlZF0gPSBbXVxuICB9XG5cbiAgZ2V0IGRlc3Ryb3llZCAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0Rlc3Ryb3llZF1cbiAgfVxuXG4gIGdldCBjbG9zZWQgKCkge1xuICAgIHJldHVybiB0aGlzW2tDbG9zZWRdXG4gIH1cblxuICBnZXQgaW50ZXJjZXB0b3JzICgpIHtcbiAgICByZXR1cm4gdGhpc1trSW50ZXJjZXB0b3JzXVxuICB9XG5cbiAgc2V0IGludGVyY2VwdG9ycyAobmV3SW50ZXJjZXB0b3JzKSB7XG4gICAgaWYgKG5ld0ludGVyY2VwdG9ycykge1xuICAgICAgZm9yIChsZXQgaSA9IG5ld0ludGVyY2VwdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgICBjb25zdCBpbnRlcmNlcHRvciA9IHRoaXNba0ludGVyY2VwdG9yc11baV1cbiAgICAgICAgaWYgKHR5cGVvZiBpbnRlcmNlcHRvciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW50ZXJjZXB0b3IgbXVzdCBiZSBhbiBmdW5jdGlvbicpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzW2tJbnRlcmNlcHRvcnNdID0gbmV3SW50ZXJjZXB0b3JzXG4gIH1cblxuICBjbG9zZSAoY2FsbGJhY2spIHtcbiAgICBpZiAoY2FsbGJhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGVyciA/IHJlamVjdChlcnIpIDogcmVzb2x2ZShkYXRhKVxuICAgICAgICB9KVxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgY2FsbGJhY2snKVxuICAgIH1cblxuICAgIGlmICh0aGlzW2tEZXN0cm95ZWRdKSB7XG4gICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBjYWxsYmFjayhuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKSwgbnVsbCkpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAodGhpc1trQ2xvc2VkXSkge1xuICAgICAgaWYgKHRoaXNba09uQ2xvc2VkXSkge1xuICAgICAgICB0aGlzW2tPbkNsb3NlZF0ucHVzaChjYWxsYmFjaylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKG51bGwsIG51bGwpKVxuICAgICAgfVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpc1trQ2xvc2VkXSA9IHRydWVcbiAgICB0aGlzW2tPbkNsb3NlZF0ucHVzaChjYWxsYmFjaylcblxuICAgIGNvbnN0IG9uQ2xvc2VkID0gKCkgPT4ge1xuICAgICAgY29uc3QgY2FsbGJhY2tzID0gdGhpc1trT25DbG9zZWRdXG4gICAgICB0aGlzW2tPbkNsb3NlZF0gPSBudWxsXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhbGxiYWNrcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjYWxsYmFja3NbaV0obnVsbCwgbnVsbClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaG91bGQgbm90IGVycm9yLlxuICAgIHRoaXNba0Nsb3NlXSgpXG4gICAgICAudGhlbigoKSA9PiB0aGlzLmRlc3Ryb3koKSlcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgcXVldWVNaWNyb3Rhc2sob25DbG9zZWQpXG4gICAgICB9KVxuICB9XG5cbiAgZGVzdHJveSAoZXJyLCBjYWxsYmFjaykge1xuICAgIGlmICh0eXBlb2YgZXJyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjYWxsYmFjayA9IGVyclxuICAgICAgZXJyID0gbnVsbFxuICAgIH1cblxuICAgIGlmIChjYWxsYmFjayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICB0aGlzLmRlc3Ryb3koZXJyLCAoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGVyciA/IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBzaG91bGQgbmV2ZXIgZXJyb3IgKi8gcmVqZWN0KGVycikgOiByZXNvbHZlKGRhdGEpXG4gICAgICAgIH0pXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjYWxsYmFjaycpXG4gICAgfVxuXG4gICAgaWYgKHRoaXNba0Rlc3Ryb3llZF0pIHtcbiAgICAgIGlmICh0aGlzW2tPbkRlc3Ryb3llZF0pIHtcbiAgICAgICAgdGhpc1trT25EZXN0cm95ZWRdLnB1c2goY2FsbGJhY2spXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBjYWxsYmFjayhudWxsLCBudWxsKSlcbiAgICAgIH1cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghZXJyKSB7XG4gICAgICBlcnIgPSBuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKVxuICAgIH1cblxuICAgIHRoaXNba0Rlc3Ryb3llZF0gPSB0cnVlXG4gICAgdGhpc1trT25EZXN0cm95ZWRdID0gdGhpc1trT25EZXN0cm95ZWRdIHx8IFtdXG4gICAgdGhpc1trT25EZXN0cm95ZWRdLnB1c2goY2FsbGJhY2spXG5cbiAgICBjb25zdCBvbkRlc3Ryb3llZCA9ICgpID0+IHtcbiAgICAgIGNvbnN0IGNhbGxiYWNrcyA9IHRoaXNba09uRGVzdHJveWVkXVxuICAgICAgdGhpc1trT25EZXN0cm95ZWRdID0gbnVsbFxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjYWxsYmFja3MubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY2FsbGJhY2tzW2ldKG51bGwsIG51bGwpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2hvdWxkIG5vdCBlcnJvci5cbiAgICB0aGlzW2tEZXN0cm95XShlcnIpLnRoZW4oKCkgPT4ge1xuICAgICAgcXVldWVNaWNyb3Rhc2sob25EZXN0cm95ZWQpXG4gICAgfSlcbiAgfVxuXG4gIFtrSW50ZXJjZXB0ZWREaXNwYXRjaF0gKG9wdHMsIGhhbmRsZXIpIHtcbiAgICBpZiAoIXRoaXNba0ludGVyY2VwdG9yc10gfHwgdGhpc1trSW50ZXJjZXB0b3JzXS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXNba0ludGVyY2VwdGVkRGlzcGF0Y2hdID0gdGhpc1trRGlzcGF0Y2hdXG4gICAgICByZXR1cm4gdGhpc1trRGlzcGF0Y2hdKG9wdHMsIGhhbmRsZXIpXG4gICAgfVxuXG4gICAgbGV0IGRpc3BhdGNoID0gdGhpc1trRGlzcGF0Y2hdLmJpbmQodGhpcylcbiAgICBmb3IgKGxldCBpID0gdGhpc1trSW50ZXJjZXB0b3JzXS5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgZGlzcGF0Y2ggPSB0aGlzW2tJbnRlcmNlcHRvcnNdW2ldKGRpc3BhdGNoKVxuICAgIH1cbiAgICB0aGlzW2tJbnRlcmNlcHRlZERpc3BhdGNoXSA9IGRpc3BhdGNoXG4gICAgcmV0dXJuIGRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpXG4gIH1cblxuICBkaXNwYXRjaCAob3B0cywgaGFuZGxlcikge1xuICAgIGlmICghaGFuZGxlciB8fCB0eXBlb2YgaGFuZGxlciAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaGFuZGxlciBtdXN0IGJlIGFuIG9iamVjdCcpXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGlmICghb3B0cyB8fCB0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdvcHRzIG11c3QgYmUgYW4gb2JqZWN0LicpXG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzW2tEZXN0cm95ZWRdIHx8IHRoaXNba09uRGVzdHJveWVkXSkge1xuICAgICAgICB0aHJvdyBuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpc1trQ2xvc2VkXSkge1xuICAgICAgICB0aHJvdyBuZXcgQ2xpZW50Q2xvc2VkRXJyb3IoKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpc1trSW50ZXJjZXB0ZWREaXNwYXRjaF0ob3B0cywgaGFuZGxlcilcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmICh0eXBlb2YgaGFuZGxlci5vbkVycm9yICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkVycm9yIG1ldGhvZCcpXG4gICAgICB9XG5cbiAgICAgIGhhbmRsZXIub25FcnJvcihlcnIpXG5cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IERpc3BhdGNoZXJCYXNlXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IG5ldCA9IHJlcXVpcmUoJ25ldCcpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yLCBDb25uZWN0VGltZW91dEVycm9yIH0gPSByZXF1aXJlKCcuL2Vycm9ycycpXG5cbmxldCB0bHMgLy8gaW5jbHVkZSB0bHMgY29uZGl0aW9uYWxseSBzaW5jZSBpdCBpcyBub3QgYWx3YXlzIGF2YWlsYWJsZVxuXG4vLyBUT0RPOiBzZXNzaW9uIHJlLXVzZSBkb2VzIG5vdCB3YWl0IGZvciB0aGUgZmlyc3Rcbi8vIGNvbm5lY3Rpb24gdG8gcmVzb2x2ZSB0aGUgc2Vzc2lvbiBhbmQgbWlnaHQgdGhlcmVmb3JlXG4vLyByZXNvbHZlIHRoZSBzYW1lIHNlcnZlcm5hbWUgbXVsdGlwbGUgdGltZXMgZXZlbiB3aGVuXG4vLyByZS11c2UgaXMgZW5hYmxlZC5cblxubGV0IFNlc3Npb25DYWNoZVxuLy8gRklYTUU6IHJlbW92ZSB3b3JrYXJvdW5kIHdoZW4gdGhlIE5vZGUgYnVnIGlzIGZpeGVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvaXNzdWVzLzQ5MzQ0I2lzc3VlY29tbWVudC0xNzQxNzc2MzA4XG5pZiAoZ2xvYmFsLkZpbmFsaXphdGlvblJlZ2lzdHJ5ICYmICFwcm9jZXNzLmVudi5OT0RFX1Y4X0NPVkVSQUdFKSB7XG4gIFNlc3Npb25DYWNoZSA9IGNsYXNzIFdlYWtTZXNzaW9uQ2FjaGUge1xuICAgIGNvbnN0cnVjdG9yIChtYXhDYWNoZWRTZXNzaW9ucykge1xuICAgICAgdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMgPSBtYXhDYWNoZWRTZXNzaW9uc1xuICAgICAgdGhpcy5fc2Vzc2lvbkNhY2hlID0gbmV3IE1hcCgpXG4gICAgICB0aGlzLl9zZXNzaW9uUmVnaXN0cnkgPSBuZXcgZ2xvYmFsLkZpbmFsaXphdGlvblJlZ2lzdHJ5KChrZXkpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX3Nlc3Npb25DYWNoZS5zaXplIDwgdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlZiA9IHRoaXMuX3Nlc3Npb25DYWNoZS5nZXQoa2V5KVxuICAgICAgICBpZiAocmVmICE9PSB1bmRlZmluZWQgJiYgcmVmLmRlcmVmKCkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMuX3Nlc3Npb25DYWNoZS5kZWxldGUoa2V5KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIGdldCAoc2Vzc2lvbktleSkge1xuICAgICAgY29uc3QgcmVmID0gdGhpcy5fc2Vzc2lvbkNhY2hlLmdldChzZXNzaW9uS2V5KVxuICAgICAgcmV0dXJuIHJlZiA/IHJlZi5kZXJlZigpIDogbnVsbFxuICAgIH1cblxuICAgIHNldCAoc2Vzc2lvbktleSwgc2Vzc2lvbikge1xuICAgICAgaWYgKHRoaXMuX21heENhY2hlZFNlc3Npb25zID09PSAwKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICB0aGlzLl9zZXNzaW9uQ2FjaGUuc2V0KHNlc3Npb25LZXksIG5ldyBXZWFrUmVmKHNlc3Npb24pKVxuICAgICAgdGhpcy5fc2Vzc2lvblJlZ2lzdHJ5LnJlZ2lzdGVyKHNlc3Npb24sIHNlc3Npb25LZXkpXG4gICAgfVxuICB9XG59IGVsc2Uge1xuICBTZXNzaW9uQ2FjaGUgPSBjbGFzcyBTaW1wbGVTZXNzaW9uQ2FjaGUge1xuICAgIGNvbnN0cnVjdG9yIChtYXhDYWNoZWRTZXNzaW9ucykge1xuICAgICAgdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMgPSBtYXhDYWNoZWRTZXNzaW9uc1xuICAgICAgdGhpcy5fc2Vzc2lvbkNhY2hlID0gbmV3IE1hcCgpXG4gICAgfVxuXG4gICAgZ2V0IChzZXNzaW9uS2V5KSB7XG4gICAgICByZXR1cm4gdGhpcy5fc2Vzc2lvbkNhY2hlLmdldChzZXNzaW9uS2V5KVxuICAgIH1cblxuICAgIHNldCAoc2Vzc2lvbktleSwgc2Vzc2lvbikge1xuICAgICAgaWYgKHRoaXMuX21heENhY2hlZFNlc3Npb25zID09PSAwKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5fc2Vzc2lvbkNhY2hlLnNpemUgPj0gdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMpIHtcbiAgICAgICAgLy8gcmVtb3ZlIHRoZSBvbGRlc3Qgc2Vzc2lvblxuICAgICAgICBjb25zdCB7IHZhbHVlOiBvbGRlc3RLZXkgfSA9IHRoaXMuX3Nlc3Npb25DYWNoZS5rZXlzKCkubmV4dCgpXG4gICAgICAgIHRoaXMuX3Nlc3Npb25DYWNoZS5kZWxldGUob2xkZXN0S2V5KVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9zZXNzaW9uQ2FjaGUuc2V0KHNlc3Npb25LZXksIHNlc3Npb24pXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGJ1aWxkQ29ubmVjdG9yICh7IGFsbG93SDIsIG1heENhY2hlZFNlc3Npb25zLCBzb2NrZXRQYXRoLCB0aW1lb3V0LCAuLi5vcHRzIH0pIHtcbiAgaWYgKG1heENhY2hlZFNlc3Npb25zICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKG1heENhY2hlZFNlc3Npb25zKSB8fCBtYXhDYWNoZWRTZXNzaW9ucyA8IDApKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdtYXhDYWNoZWRTZXNzaW9ucyBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciBvciB6ZXJvJylcbiAgfVxuXG4gIGNvbnN0IG9wdGlvbnMgPSB7IHBhdGg6IHNvY2tldFBhdGgsIC4uLm9wdHMgfVxuICBjb25zdCBzZXNzaW9uQ2FjaGUgPSBuZXcgU2Vzc2lvbkNhY2hlKG1heENhY2hlZFNlc3Npb25zID09IG51bGwgPyAxMDAgOiBtYXhDYWNoZWRTZXNzaW9ucylcbiAgdGltZW91dCA9IHRpbWVvdXQgPT0gbnVsbCA/IDEwZTMgOiB0aW1lb3V0XG4gIGFsbG93SDIgPSBhbGxvd0gyICE9IG51bGwgPyBhbGxvd0gyIDogZmFsc2VcbiAgcmV0dXJuIGZ1bmN0aW9uIGNvbm5lY3QgKHsgaG9zdG5hbWUsIGhvc3QsIHByb3RvY29sLCBwb3J0LCBzZXJ2ZXJuYW1lLCBsb2NhbEFkZHJlc3MsIGh0dHBTb2NrZXQgfSwgY2FsbGJhY2spIHtcbiAgICBsZXQgc29ja2V0XG4gICAgaWYgKHByb3RvY29sID09PSAnaHR0cHM6Jykge1xuICAgICAgaWYgKCF0bHMpIHtcbiAgICAgICAgdGxzID0gcmVxdWlyZSgndGxzJylcbiAgICAgIH1cbiAgICAgIHNlcnZlcm5hbWUgPSBzZXJ2ZXJuYW1lIHx8IG9wdGlvbnMuc2VydmVybmFtZSB8fCB1dGlsLmdldFNlcnZlck5hbWUoaG9zdCkgfHwgbnVsbFxuXG4gICAgICBjb25zdCBzZXNzaW9uS2V5ID0gc2VydmVybmFtZSB8fCBob3N0bmFtZVxuICAgICAgY29uc3Qgc2Vzc2lvbiA9IHNlc3Npb25DYWNoZS5nZXQoc2Vzc2lvbktleSkgfHwgbnVsbFxuXG4gICAgICBhc3NlcnQoc2Vzc2lvbktleSlcblxuICAgICAgc29ja2V0ID0gdGxzLmNvbm5lY3Qoe1xuICAgICAgICBoaWdoV2F0ZXJNYXJrOiAxNjM4NCwgLy8gVExTIGluIG5vZGUgY2FuJ3QgaGF2ZSBiaWdnZXIgSFdNIGFueXdheS4uLlxuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBzZXJ2ZXJuYW1lLFxuICAgICAgICBzZXNzaW9uLFxuICAgICAgICBsb2NhbEFkZHJlc3MsXG4gICAgICAgIC8vIFRPRE8oSFRUUC8yKTogQWRkIHN1cHBvcnQgZm9yIGgyY1xuICAgICAgICBBTFBOUHJvdG9jb2xzOiBhbGxvd0gyID8gWydodHRwLzEuMScsICdoMiddIDogWydodHRwLzEuMSddLFxuICAgICAgICBzb2NrZXQ6IGh0dHBTb2NrZXQsIC8vIHVwZ3JhZGUgc29ja2V0IGNvbm5lY3Rpb25cbiAgICAgICAgcG9ydDogcG9ydCB8fCA0NDMsXG4gICAgICAgIGhvc3Q6IGhvc3RuYW1lXG4gICAgICB9KVxuXG4gICAgICBzb2NrZXRcbiAgICAgICAgLm9uKCdzZXNzaW9uJywgZnVuY3Rpb24gKHNlc3Npb24pIHtcbiAgICAgICAgICAvLyBUT0RPIChmaXgpOiBDYW4gYSBzZXNzaW9uIGJlY29tZSBpbnZhbGlkIG9uY2UgZXN0YWJsaXNoZWQ/IERvbid0IHRoaW5rIHNvP1xuICAgICAgICAgIHNlc3Npb25DYWNoZS5zZXQoc2Vzc2lvbktleSwgc2Vzc2lvbilcbiAgICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KCFodHRwU29ja2V0LCAnaHR0cFNvY2tldCBjYW4gb25seSBiZSBzZW50IG9uIFRMUyB1cGRhdGUnKVxuICAgICAgc29ja2V0ID0gbmV0LmNvbm5lY3Qoe1xuICAgICAgICBoaWdoV2F0ZXJNYXJrOiA2NCAqIDEwMjQsIC8vIFNhbWUgYXMgbm9kZWpzIGZzIHN0cmVhbXMuXG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIGxvY2FsQWRkcmVzcyxcbiAgICAgICAgcG9ydDogcG9ydCB8fCA4MCxcbiAgICAgICAgaG9zdDogaG9zdG5hbWVcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gU2V0IFRDUCBrZWVwIGFsaXZlIG9wdGlvbnMgb24gdGhlIHNvY2tldCBoZXJlIGluc3RlYWQgb2YgaW4gY29ubmVjdCgpIGZvciB0aGUgY2FzZSBvZiBhc3NpZ25pbmcgdGhlIHNvY2tldFxuICAgIGlmIChvcHRpb25zLmtlZXBBbGl2ZSA9PSBudWxsIHx8IG9wdGlvbnMua2VlcEFsaXZlKSB7XG4gICAgICBjb25zdCBrZWVwQWxpdmVJbml0aWFsRGVsYXkgPSBvcHRpb25zLmtlZXBBbGl2ZUluaXRpYWxEZWxheSA9PT0gdW5kZWZpbmVkID8gNjBlMyA6IG9wdGlvbnMua2VlcEFsaXZlSW5pdGlhbERlbGF5XG4gICAgICBzb2NrZXQuc2V0S2VlcEFsaXZlKHRydWUsIGtlZXBBbGl2ZUluaXRpYWxEZWxheSlcbiAgICB9XG5cbiAgICBjb25zdCBjYW5jZWxUaW1lb3V0ID0gc2V0dXBUaW1lb3V0KCgpID0+IG9uQ29ubmVjdFRpbWVvdXQoc29ja2V0KSwgdGltZW91dClcblxuICAgIHNvY2tldFxuICAgICAgLnNldE5vRGVsYXkodHJ1ZSlcbiAgICAgIC5vbmNlKHByb3RvY29sID09PSAnaHR0cHM6JyA/ICdzZWN1cmVDb25uZWN0JyA6ICdjb25uZWN0JywgZnVuY3Rpb24gKCkge1xuICAgICAgICBjYW5jZWxUaW1lb3V0KClcblxuICAgICAgICBpZiAoY2FsbGJhY2spIHtcbiAgICAgICAgICBjb25zdCBjYiA9IGNhbGxiYWNrXG4gICAgICAgICAgY2FsbGJhY2sgPSBudWxsXG4gICAgICAgICAgY2IobnVsbCwgdGhpcylcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICAgIGNhbmNlbFRpbWVvdXQoKVxuXG4gICAgICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgICAgIGNvbnN0IGNiID0gY2FsbGJhY2tcbiAgICAgICAgICBjYWxsYmFjayA9IG51bGxcbiAgICAgICAgICBjYihlcnIpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICByZXR1cm4gc29ja2V0XG4gIH1cbn1cblxuZnVuY3Rpb24gc2V0dXBUaW1lb3V0IChvbkNvbm5lY3RUaW1lb3V0LCB0aW1lb3V0KSB7XG4gIGlmICghdGltZW91dCkge1xuICAgIHJldHVybiAoKSA9PiB7fVxuICB9XG5cbiAgbGV0IHMxID0gbnVsbFxuICBsZXQgczIgPSBudWxsXG4gIGNvbnN0IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vIHNldEltbWVkaWF0ZSBpcyBhZGRlZCB0byBtYWtlIHN1cmUgdGhhdCB3ZSBwcmlvdG9yaXNlIHNvY2tldCBlcnJvciBldmVudHMgb3ZlciB0aW1lb3V0c1xuICAgIHMxID0gc2V0SW1tZWRpYXRlKCgpID0+IHtcbiAgICAgIGlmIChwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInKSB7XG4gICAgICAgIC8vIFdpbmRvd3MgbmVlZHMgYW4gZXh0cmEgc2V0SW1tZWRpYXRlIHByb2JhYmx5IGR1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmZXJlbmNlcyBpbiB0aGUgc29ja2V0IGxvZ2ljXG4gICAgICAgIHMyID0gc2V0SW1tZWRpYXRlKCgpID0+IG9uQ29ubmVjdFRpbWVvdXQoKSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9uQ29ubmVjdFRpbWVvdXQoKVxuICAgICAgfVxuICAgIH0pXG4gIH0sIHRpbWVvdXQpXG4gIHJldHVybiAoKSA9PiB7XG4gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZClcbiAgICBjbGVhckltbWVkaWF0ZShzMSlcbiAgICBjbGVhckltbWVkaWF0ZShzMilcbiAgfVxufVxuXG5mdW5jdGlvbiBvbkNvbm5lY3RUaW1lb3V0IChzb2NrZXQpIHtcbiAgdXRpbC5kZXN0cm95KHNvY2tldCwgbmV3IENvbm5lY3RUaW1lb3V0RXJyb3IoKSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBidWlsZENvbm5lY3RvclxuIiwgbnVsbCwgbnVsbCwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHsga0JvZHlVc2VkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IgfSA9IHJlcXVpcmUoJy4uL2NvcmUvZXJyb3JzJylcbmNvbnN0IEVFID0gcmVxdWlyZSgnZXZlbnRzJylcblxuY29uc3QgcmVkaXJlY3RhYmxlU3RhdHVzQ29kZXMgPSBbMzAwLCAzMDEsIDMwMiwgMzAzLCAzMDcsIDMwOF1cblxuY29uc3Qga0JvZHkgPSBTeW1ib2woJ2JvZHknKVxuXG5jbGFzcyBCb2R5QXN5bmNJdGVyYWJsZSB7XG4gIGNvbnN0cnVjdG9yIChib2R5KSB7XG4gICAgdGhpc1trQm9keV0gPSBib2R5XG4gICAgdGhpc1trQm9keVVzZWRdID0gZmFsc2VcbiAgfVxuXG4gIGFzeW5jICogW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSAoKSB7XG4gICAgYXNzZXJ0KCF0aGlzW2tCb2R5VXNlZF0sICdkaXN0dXJiZWQnKVxuICAgIHRoaXNba0JvZHlVc2VkXSA9IHRydWVcbiAgICB5aWVsZCAqIHRoaXNba0JvZHldXG4gIH1cbn1cblxuY2xhc3MgUmVkaXJlY3RIYW5kbGVyIHtcbiAgY29uc3RydWN0b3IgKGRpc3BhdGNoLCBtYXhSZWRpcmVjdGlvbnMsIG9wdHMsIGhhbmRsZXIpIHtcbiAgICBpZiAobWF4UmVkaXJlY3Rpb25zICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKG1heFJlZGlyZWN0aW9ucykgfHwgbWF4UmVkaXJlY3Rpb25zIDwgMCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWF4UmVkaXJlY3Rpb25zIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIHV0aWwudmFsaWRhdGVIYW5kbGVyKGhhbmRsZXIsIG9wdHMubWV0aG9kLCBvcHRzLnVwZ3JhZGUpXG5cbiAgICB0aGlzLmRpc3BhdGNoID0gZGlzcGF0Y2hcbiAgICB0aGlzLmxvY2F0aW9uID0gbnVsbFxuICAgIHRoaXMuYWJvcnQgPSBudWxsXG4gICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBtYXhSZWRpcmVjdGlvbnM6IDAgfSAvLyBvcHRzIG11c3QgYmUgYSBjb3B5XG4gICAgdGhpcy5tYXhSZWRpcmVjdGlvbnMgPSBtYXhSZWRpcmVjdGlvbnNcbiAgICB0aGlzLmhhbmRsZXIgPSBoYW5kbGVyXG4gICAgdGhpcy5oaXN0b3J5ID0gW11cblxuICAgIGlmICh1dGlsLmlzU3RyZWFtKHRoaXMub3B0cy5ib2R5KSkge1xuICAgICAgLy8gVE9ETyAoZml4KTogUHJvdmlkZSBzb21lIHdheSBmb3IgdGhlIHVzZXIgdG8gY2FjaGUgdGhlIGZpbGUgdG8gZS5nLiAvdG1wXG4gICAgICAvLyBzbyB0aGF0IGl0IGNhbiBiZSBkaXNwYXRjaGVkIGFnYWluP1xuICAgICAgLy8gVE9ETyAoZml4KTogRG8gd2UgbmVlZCAxMDAtZXhwZWN0IHN1cHBvcnQgdG8gcHJvdmlkZSBhIHdheSB0byBkbyB0aGlzIHByb3Blcmx5P1xuICAgICAgaWYgKHV0aWwuYm9keUxlbmd0aCh0aGlzLm9wdHMuYm9keSkgPT09IDApIHtcbiAgICAgICAgdGhpcy5vcHRzLmJvZHlcbiAgICAgICAgICAub24oJ2RhdGEnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBhc3NlcnQoZmFsc2UpXG4gICAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdHMuYm9keS5yZWFkYWJsZURpZFJlYWQgIT09ICdib29sZWFuJykge1xuICAgICAgICB0aGlzLm9wdHMuYm9keVtrQm9keVVzZWRdID0gZmFsc2VcbiAgICAgICAgRUUucHJvdG90eXBlLm9uLmNhbGwodGhpcy5vcHRzLmJvZHksICdkYXRhJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHRoaXNba0JvZHlVc2VkXSA9IHRydWVcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMub3B0cy5ib2R5ICYmIHR5cGVvZiB0aGlzLm9wdHMuYm9keS5waXBlVG8gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIC8vIFRPRE8gKGZpeCk6IFdlIGNhbid0IGFjY2VzcyBSZWFkYWJsZVN0cmVhbSBpbnRlcm5hbCBzdGF0ZVxuICAgICAgLy8gdG8gZGV0ZXJtaW5lIHdoZXRoZXIgb3Igbm90IGl0IGhhcyBiZWVuIGRpc3R1cmJlZC4gVGhpcyBpcyBqdXN0XG4gICAgICAvLyBhIHdvcmthcm91bmQuXG4gICAgICB0aGlzLm9wdHMuYm9keSA9IG5ldyBCb2R5QXN5bmNJdGVyYWJsZSh0aGlzLm9wdHMuYm9keSlcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGhpcy5vcHRzLmJvZHkgJiZcbiAgICAgIHR5cGVvZiB0aGlzLm9wdHMuYm9keSAhPT0gJ3N0cmluZycgJiZcbiAgICAgICFBcnJheUJ1ZmZlci5pc1ZpZXcodGhpcy5vcHRzLmJvZHkpICYmXG4gICAgICB1dGlsLmlzSXRlcmFibGUodGhpcy5vcHRzLmJvZHkpXG4gICAgKSB7XG4gICAgICAvLyBUT0RPOiBTaG91bGQgd2UgYWxsb3cgcmUtdXNpbmcgaXRlcmFibGUgaWYgIXRoaXMub3B0cy5pZGVtcG90ZW50XG4gICAgICAvLyBvciB0aHJvdWdoIHNvbWUgb3RoZXIgZmxhZz9cbiAgICAgIHRoaXMub3B0cy5ib2R5ID0gbmV3IEJvZHlBc3luY0l0ZXJhYmxlKHRoaXMub3B0cy5ib2R5KVxuICAgIH1cbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQpIHtcbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmhhbmRsZXIub25Db25uZWN0KGFib3J0LCB7IGhpc3Rvcnk6IHRoaXMuaGlzdG9yeSB9KVxuICB9XG5cbiAgb25VcGdyYWRlIChzdGF0dXNDb2RlLCBoZWFkZXJzLCBzb2NrZXQpIHtcbiAgICB0aGlzLmhhbmRsZXIub25VcGdyYWRlKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHNvY2tldClcbiAgfVxuXG4gIG9uRXJyb3IgKGVycm9yKSB7XG4gICAgdGhpcy5oYW5kbGVyLm9uRXJyb3IoZXJyb3IpXG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHJlc3VtZSwgc3RhdHVzVGV4dCkge1xuICAgIHRoaXMubG9jYXRpb24gPSB0aGlzLmhpc3RvcnkubGVuZ3RoID49IHRoaXMubWF4UmVkaXJlY3Rpb25zIHx8IHV0aWwuaXNEaXN0dXJiZWQodGhpcy5vcHRzLmJvZHkpXG4gICAgICA/IG51bGxcbiAgICAgIDogcGFyc2VMb2NhdGlvbihzdGF0dXNDb2RlLCBoZWFkZXJzKVxuXG4gICAgaWYgKHRoaXMub3B0cy5vcmlnaW4pIHtcbiAgICAgIHRoaXMuaGlzdG9yeS5wdXNoKG5ldyBVUkwodGhpcy5vcHRzLnBhdGgsIHRoaXMub3B0cy5vcmlnaW4pKVxuICAgIH1cblxuICAgIGlmICghdGhpcy5sb2NhdGlvbikge1xuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkhlYWRlcnMoc3RhdHVzQ29kZSwgaGVhZGVycywgcmVzdW1lLCBzdGF0dXNUZXh0KVxuICAgIH1cblxuICAgIGNvbnN0IHsgb3JpZ2luLCBwYXRobmFtZSwgc2VhcmNoIH0gPSB1dGlsLnBhcnNlVVJMKG5ldyBVUkwodGhpcy5sb2NhdGlvbiwgdGhpcy5vcHRzLm9yaWdpbiAmJiBuZXcgVVJMKHRoaXMub3B0cy5wYXRoLCB0aGlzLm9wdHMub3JpZ2luKSkpXG4gICAgY29uc3QgcGF0aCA9IHNlYXJjaCA/IGAke3BhdGhuYW1lfSR7c2VhcmNofWAgOiBwYXRobmFtZVxuXG4gICAgLy8gUmVtb3ZlIGhlYWRlcnMgcmVmZXJyaW5nIHRvIHRoZSBvcmlnaW5hbCBVUkwuXG4gICAgLy8gQnkgZGVmYXVsdCBpdCBpcyBIb3N0IG9ubHksIHVubGVzcyBpdCdzIGEgMzAzIChzZWUgYmVsb3cpLCB3aGljaCByZW1vdmVzIGFsc28gYWxsIENvbnRlbnQtKiBoZWFkZXJzLlxuICAgIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNi40XG4gICAgdGhpcy5vcHRzLmhlYWRlcnMgPSBjbGVhblJlcXVlc3RIZWFkZXJzKHRoaXMub3B0cy5oZWFkZXJzLCBzdGF0dXNDb2RlID09PSAzMDMsIHRoaXMub3B0cy5vcmlnaW4gIT09IG9yaWdpbilcbiAgICB0aGlzLm9wdHMucGF0aCA9IHBhdGhcbiAgICB0aGlzLm9wdHMub3JpZ2luID0gb3JpZ2luXG4gICAgdGhpcy5vcHRzLm1heFJlZGlyZWN0aW9ucyA9IDBcbiAgICB0aGlzLm9wdHMucXVlcnkgPSBudWxsXG5cbiAgICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMSNzZWN0aW9uLTYuNC40XG4gICAgLy8gSW4gY2FzZSBvZiBIVFRQIDMwMywgYWx3YXlzIHJlcGxhY2UgbWV0aG9kIHRvIGJlIGVpdGhlciBIRUFEIG9yIEdFVFxuICAgIGlmIChzdGF0dXNDb2RlID09PSAzMDMgJiYgdGhpcy5vcHRzLm1ldGhvZCAhPT0gJ0hFQUQnKSB7XG4gICAgICB0aGlzLm9wdHMubWV0aG9kID0gJ0dFVCdcbiAgICAgIHRoaXMub3B0cy5ib2R5ID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIG9uRGF0YSAoY2h1bmspIHtcbiAgICBpZiAodGhpcy5sb2NhdGlvbikge1xuICAgICAgLypcbiAgICAgICAgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi02LjRcblxuICAgICAgICBUTERSOiB1bmRpY2kgYWx3YXlzIGlnbm9yZXMgM3h4IHJlc3BvbnNlIGJvZGllcy5cblxuICAgICAgICBSZWRpcmVjdGlvbiBpcyB1c2VkIHRvIHNlcnZlIHRoZSByZXF1ZXN0ZWQgcmVzb3VyY2UgZnJvbSBhbm90aGVyIFVSTCwgc28gaXQgaXMgYXNzdW1lcyB0aGF0XG4gICAgICAgIG5vIGJvZHkgaXMgZ2VuZXJhdGVkIChhbmQgdGh1cyBjYW4gYmUgaWdub3JlZCkuIEV2ZW4gdGhvdWdoIGdlbmVyYXRpbmcgYSBib2R5IGlzIG5vdCBwcm9oaWJpdGVkLlxuXG4gICAgICAgIEZvciBzdGF0dXMgMzAxLCAzMDIsIDMwMywgMzA3IGFuZCAzMDggKHRoZSBsYXR0ZXIgZnJvbSBSRkMgNzIzOCksIHRoZSBzcGVjcyBtZW50aW9uIHRoYXQgdGhlIGJvZHkgdXN1YWxseVxuICAgICAgICAod2hpY2ggbWVhbnMgaXQncyBvcHRpb25hbCBhbmQgbm90IG1hbmRhdGVkKSBjb250YWluIGp1c3QgYW4gaHlwZXJsaW5rIHRvIHRoZSB2YWx1ZSBvZlxuICAgICAgICB0aGUgTG9jYXRpb24gcmVzcG9uc2UgaGVhZGVyLCBzbyB0aGUgYm9keSBjYW4gYmUgaWdub3JlZCBzYWZlbHkuXG5cbiAgICAgICAgRm9yIHN0YXR1cyAzMDAsIHdoaWNoIGlzIFwiTXVsdGlwbGUgQ2hvaWNlc1wiLCB0aGUgc3BlYyBtZW50aW9ucyBib3RoIGdlbmVyYXRpbmcgYSBMb2NhdGlvblxuICAgICAgICByZXNwb25zZSBoZWFkZXIgQU5EIGEgcmVzcG9uc2UgYm9keSB3aXRoIHRoZSBvdGhlciBwb3NzaWJsZSBsb2NhdGlvbiB0byBmb2xsb3cuXG4gICAgICAgIFNpbmNlIHRoZSBzcGVjIGV4cGxpY2l0aWx5IGNob29zZXMgbm90IHRvIHNwZWNpZnkgYSBmb3JtYXQgZm9yIHN1Y2ggYm9keSBhbmQgbGVhdmUgaXQgdG9cbiAgICAgICAgc2VydmVycyBhbmQgYnJvd3NlcnMgaW1wbGVtZW50b3JzLCB3ZSBpZ25vcmUgdGhlIGJvZHkgYXMgdGhlcmUgaXMgbm8gc3BlY2lmaWVkIHdheSB0byBldmVudHVhbGx5IHBhcnNlIGl0LlxuICAgICAgKi9cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkRhdGEoY2h1bmspXG4gICAgfVxuICB9XG5cbiAgb25Db21wbGV0ZSAodHJhaWxlcnMpIHtcbiAgICBpZiAodGhpcy5sb2NhdGlvbikge1xuICAgICAgLypcbiAgICAgICAgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi02LjRcblxuICAgICAgICBUTERSOiB1bmRpY2kgYWx3YXlzIGlnbm9yZXMgM3h4IHJlc3BvbnNlIHRyYWlsZXJzIGFzIHRoZXkgYXJlIG5vdCBleHBlY3RlZCBpbiBjYXNlIG9mIHJlZGlyZWN0aW9uc1xuICAgICAgICBhbmQgbmVpdGhlciBhcmUgdXNlZnVsIGlmIHByZXNlbnQuXG5cbiAgICAgICAgU2VlIGNvbW1lbnQgb24gb25EYXRhIG1ldGhvZCBhYm92ZSBmb3IgbW9yZSBkZXRhaWxlZCBpbmZvcm1hdGlvbnMuXG4gICAgICAqL1xuXG4gICAgICB0aGlzLmxvY2F0aW9uID0gbnVsbFxuICAgICAgdGhpcy5hYm9ydCA9IG51bGxcblxuICAgICAgdGhpcy5kaXNwYXRjaCh0aGlzLm9wdHMsIHRoaXMpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGFuZGxlci5vbkNvbXBsZXRlKHRyYWlsZXJzKVxuICAgIH1cbiAgfVxuXG4gIG9uQm9keVNlbnQgKGNodW5rKSB7XG4gICAgaWYgKHRoaXMuaGFuZGxlci5vbkJvZHlTZW50KSB7XG4gICAgICB0aGlzLmhhbmRsZXIub25Cb2R5U2VudChjaHVuaylcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gcGFyc2VMb2NhdGlvbiAoc3RhdHVzQ29kZSwgaGVhZGVycykge1xuICBpZiAocmVkaXJlY3RhYmxlU3RhdHVzQ29kZXMuaW5kZXhPZihzdGF0dXNDb2RlKSA9PT0gLTEpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBoZWFkZXJzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgaWYgKGhlYWRlcnNbaV0udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAnbG9jYXRpb24nKSB7XG4gICAgICByZXR1cm4gaGVhZGVyc1tpICsgMV1cbiAgICB9XG4gIH1cbn1cblxuLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi02LjQuNFxuZnVuY3Rpb24gc2hvdWxkUmVtb3ZlSGVhZGVyIChoZWFkZXIsIHJlbW92ZUNvbnRlbnQsIHVua25vd25PcmlnaW4pIHtcbiAgaWYgKGhlYWRlci5sZW5ndGggPT09IDQpIHtcbiAgICByZXR1cm4gdXRpbC5oZWFkZXJOYW1lVG9TdHJpbmcoaGVhZGVyKSA9PT0gJ2hvc3QnXG4gIH1cbiAgaWYgKHJlbW92ZUNvbnRlbnQgJiYgdXRpbC5oZWFkZXJOYW1lVG9TdHJpbmcoaGVhZGVyKS5zdGFydHNXaXRoKCdjb250ZW50LScpKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuICBpZiAodW5rbm93bk9yaWdpbiAmJiAoaGVhZGVyLmxlbmd0aCA9PT0gMTMgfHwgaGVhZGVyLmxlbmd0aCA9PT0gNiB8fCBoZWFkZXIubGVuZ3RoID09PSAxOSkpIHtcbiAgICBjb25zdCBuYW1lID0gdXRpbC5oZWFkZXJOYW1lVG9TdHJpbmcoaGVhZGVyKVxuICAgIHJldHVybiBuYW1lID09PSAnYXV0aG9yaXphdGlvbicgfHwgbmFtZSA9PT0gJ2Nvb2tpZScgfHwgbmFtZSA9PT0gJ3Byb3h5LWF1dGhvcml6YXRpb24nXG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbi8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNi40XG5mdW5jdGlvbiBjbGVhblJlcXVlc3RIZWFkZXJzIChoZWFkZXJzLCByZW1vdmVDb250ZW50LCB1bmtub3duT3JpZ2luKSB7XG4gIGNvbnN0IHJldCA9IFtdXG4gIGlmIChBcnJheS5pc0FycmF5KGhlYWRlcnMpKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBoZWFkZXJzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICBpZiAoIXNob3VsZFJlbW92ZUhlYWRlcihoZWFkZXJzW2ldLCByZW1vdmVDb250ZW50LCB1bmtub3duT3JpZ2luKSkge1xuICAgICAgICByZXQucHVzaChoZWFkZXJzW2ldLCBoZWFkZXJzW2kgKyAxXSlcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSBpZiAoaGVhZGVycyAmJiB0eXBlb2YgaGVhZGVycyA9PT0gJ29iamVjdCcpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhoZWFkZXJzKSkge1xuICAgICAgaWYgKCFzaG91bGRSZW1vdmVIZWFkZXIoa2V5LCByZW1vdmVDb250ZW50LCB1bmtub3duT3JpZ2luKSkge1xuICAgICAgICByZXQucHVzaChrZXksIGhlYWRlcnNba2V5XSlcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgYXNzZXJ0KGhlYWRlcnMgPT0gbnVsbCwgJ2hlYWRlcnMgbXVzdCBiZSBhbiBvYmplY3Qgb3IgYW4gYXJyYXknKVxuICB9XG4gIHJldHVybiByZXRcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBSZWRpcmVjdEhhbmRsZXJcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgUmVkaXJlY3RIYW5kbGVyID0gcmVxdWlyZSgnLi4vaGFuZGxlci9SZWRpcmVjdEhhbmRsZXInKVxuXG5mdW5jdGlvbiBjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yICh7IG1heFJlZGlyZWN0aW9uczogZGVmYXVsdE1heFJlZGlyZWN0aW9ucyB9KSB7XG4gIHJldHVybiAoZGlzcGF0Y2gpID0+IHtcbiAgICByZXR1cm4gZnVuY3Rpb24gSW50ZXJjZXB0IChvcHRzLCBoYW5kbGVyKSB7XG4gICAgICBjb25zdCB7IG1heFJlZGlyZWN0aW9ucyA9IGRlZmF1bHRNYXhSZWRpcmVjdGlvbnMgfSA9IG9wdHNcblxuICAgICAgaWYgKCFtYXhSZWRpcmVjdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIGRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlZGlyZWN0SGFuZGxlciA9IG5ldyBSZWRpcmVjdEhhbmRsZXIoZGlzcGF0Y2gsIG1heFJlZGlyZWN0aW9ucywgb3B0cywgaGFuZGxlcilcbiAgICAgIG9wdHMgPSB7IC4uLm9wdHMsIG1heFJlZGlyZWN0aW9uczogMCB9IC8vIFN0b3Agc3ViIGRpc3BhdGNoZXIgZnJvbSBhbHNvIHJlZGlyZWN0aW5nLlxuICAgICAgcmV0dXJuIGRpc3BhdGNoKG9wdHMsIHJlZGlyZWN0SGFuZGxlcilcbiAgICB9XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yXG4iLCAibW9kdWxlLmV4cG9ydHMgPSAnQUdGemJRRUFBQUFCTUFoZ0FYOEJmMkFEZjM5L0FYOWdCSDkvZjM4QmYyQUFBR0FEZjM5L0FHQUJmd0JnQW45L0FHQUdmMzkvZjM5L0FBTExBUWdEWlc1MkdIZGhjMjFmYjI1ZmFHVmhaR1Z5YzE5amIyMXdiR1YwWlFBQ0EyVnVkaFYzWVhOdFgyOXVYMjFsYzNOaFoyVmZZbVZuYVc0QUFBTmxibllMZDJGemJWOXZibDkxY213QUFRTmxibllPZDJGemJWOXZibDl6ZEdGMGRYTUFBUU5sYm5ZVWQyRnpiVjl2Ymw5b1pXRmtaWEpmWm1sbGJHUUFBUU5sYm5ZVWQyRnpiVjl2Ymw5b1pXRmtaWEpmZG1Gc2RXVUFBUU5sYm5ZTWQyRnpiVjl2Ymw5aWIyUjVBQUVEWlc1MkdIZGhjMjFmYjI1ZmJXVnpjMkZuWlY5amIyMXdiR1YwWlFBQUEwWkZBd01FQUFBRkFBQUFBQUFBQlFFRkFBVUZCUUFBQmdBQUFBQUdCZ1lHQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFCQUFBQkFRY0FBQVVGQXdBQkJBVUJjQUVTRWdVREFRQUNCZ2dCZndGQmdOUUVDd2ZSQlNJR2JXVnRiM0o1QWdBTFgybHVhWFJwWVd4cGVtVUFDUmxmWDJsdVpHbHlaV04wWDJaMWJtTjBhVzl1WDNSaFlteGxBUUFMYkd4b2RIUndYMmx1YVhRQUNoaHNiR2gwZEhCZmMyaHZkV3hrWDJ0bFpYQmZZV3hwZG1VQVFReHNiR2gwZEhCZllXeHNiMk1BREFadFlXeHNiMk1BUmd0c2JHaDBkSEJmWm5KbFpRQU5CR1p5WldVQVNBOXNiR2gwZEhCZloyVjBYM1I1Y0dVQURoVnNiR2gwZEhCZloyVjBYMmgwZEhCZmJXRnFiM0lBRHhWc2JHaDBkSEJmWjJWMFgyaDBkSEJmYldsdWIzSUFFQkZzYkdoMGRIQmZaMlYwWDIxbGRHaHZaQUFSRm14c2FIUjBjRjluWlhSZmMzUmhkSFZ6WDJOdlpHVUFFaEpzYkdoMGRIQmZaMlYwWDNWd1ozSmhaR1VBRXd4c2JHaDBkSEJmY21WelpYUUFGQTVzYkdoMGRIQmZaWGhsWTNWMFpRQVZGR3hzYUhSMGNGOXpaWFIwYVc1bmMxOXBibWwwQUJZTmJHeG9kSFJ3WDJacGJtbHphQUFYREd4c2FIUjBjRjl3WVhWelpRQVlEV3hzYUhSMGNGOXlaWE4xYldVQUdSdHNiR2gwZEhCZmNtVnpkVzFsWDJGbWRHVnlYM1Z3WjNKaFpHVUFHaEJzYkdoMGRIQmZaMlYwWDJWeWNtNXZBQnNYYkd4b2RIUndYMmRsZEY5bGNuSnZjbDl5WldGemIyNEFIQmRzYkdoMGRIQmZjMlYwWDJWeWNtOXlYM0psWVhOdmJnQWRGR3hzYUhSMGNGOW5aWFJmWlhKeWIzSmZjRzl6QUI0UmJHeG9kSFJ3WDJWeWNtNXZYMjVoYldVQUh4SnNiR2gwZEhCZmJXVjBhRzlrWDI1aGJXVUFJQkpzYkdoMGRIQmZjM1JoZEhWelgyNWhiV1VBSVJwc2JHaDBkSEJmYzJWMFgyeGxibWxsYm5SZmFHVmhaR1Z5Y3dBaUlXeHNhSFIwY0Y5elpYUmZiR1Z1YVdWdWRGOWphSFZ1YTJWa1gyeGxibWQwYUFBakhXeHNhSFIwY0Y5elpYUmZiR1Z1YVdWdWRGOXJaV1Z3WDJGc2FYWmxBQ1FrYkd4b2RIUndYM05sZEY5c1pXNXBaVzUwWDNSeVlXNXpabVZ5WDJWdVkyOWthVzVuQUNVWWJHeG9kSFJ3WDIxbGMzTmhaMlZmYm1WbFpITmZaVzltQUQ4SkZ3RUFRUUVMRVFFQ0F3UUZDd1lITlRrM01TOHRKeXNwQ3NMZ0FrVUNBQXNJQUJDSWdJQ0FBQXNaQUNBQUVNS0FnSUFBR2lBQUlBSTJBamdnQUNBQk9nQW9DeHdBSUFBZ0FDOEJNaUFBTFFBdUlBQVF3WUNBZ0FBUWdJQ0FnQUFMS2dFQmYwSEFBQkRHZ0lDQUFDSUJFTUtBZ0lBQUdpQUJRWUNJZ0lBQU5nSTRJQUVnQURvQUtDQUJDd29BSUFBUXlJQ0FnQUFMQndBZ0FDMEFLQXNIQUNBQUxRQXFDd2NBSUFBdEFDc0xCd0FnQUMwQUtRc0hBQ0FBTHdFeUN3Y0FJQUF0QUM0TFJRRUVmeUFBS0FJWUlRRWdBQzBBTFNFQ0lBQXRBQ2doQXlBQUtBSTRJUVFnQUJEQ2dJQ0FBQm9nQUNBRU5nSTRJQUFnQXpvQUtDQUFJQUk2QUMwZ0FDQUJOZ0lZQ3hFQUlBQWdBU0FCSUFKcUVNT0FnSUFBQ3hBQUlBQkJBRUhjQUJETWdJQ0FBQm9MWndFQmYwRUFJUUVDUUNBQUtBSU1EUUFDUUFKQUFrQUNRQ0FBTFFBdkRnTUJBQU1DQ3lBQUtBSTRJZ0ZGRFFBZ0FTZ0NMQ0lCUlEwQUlBQWdBUkdBZ0lDQUFBQWlBUTBEQzBFQUR3c1F5b0NBZ0FBQUN5QUFRY09XZ0lBQU5nSVFRUTRoQVFzZ0FRc2VBQUpBSUFBb0Fnd05BQ0FBUWRHYmdJQUFOZ0lRSUFCQkZUWUNEQXNMRmdBQ1FDQUFLQUlNUVJWSERRQWdBRUVBTmdJTUN3c1dBQUpBSUFBb0FneEJGa2NOQUNBQVFRQTJBZ3dMQ3djQUlBQW9BZ3dMQndBZ0FDZ0NFQXNKQUNBQUlBRTJBaEFMQndBZ0FDZ0NGQXNpQUFKQUlBQkJKRWtOQUJES2dJQ0FBQUFMSUFCQkFuUkJvTE9BZ0FCcUtBSUFDeUlBQWtBZ0FFRXVTUTBBRU1xQWdJQUFBQXNnQUVFQ2RFR3d0SUNBQUdvb0FnQUw3Z3NCQVg5QjY2aUFnQUFoQVFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUlBQkJuSDlxRHZRRFkySUFBV0ZoWVdGaFlRSURCQVZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaEJnY0lDUW9MREEwT0QyRmhZV0ZoRUdGaFlXRmhZV0ZoWVdGaEVXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlSSVRGQlVXRnhnWkdodGhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhIQjBlSHlBaElpTWtKU1luS0NrcUt5d3RMaTh3TVRJek5EVTJZVGM0T1RwaFlXRmhZV0ZoWVR0aFlXRThZV0ZoWVQwK1AyRmhZV0ZoWVdGaFFHRmhRV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVVKRFJFVkdSMGhKU2t0TVRVNVBVRkZTVTJGaFlXRmhZV0ZoVkZWV1YxaFpXbHRoWEYxaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmVZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhYMkJoQzBIaHA0Q0FBQThMUWFTaGdJQUFEd3RCeTZ5QWdBQVBDMEgrc1lDQUFBOExRY0NrZ0lBQUR3dEJxNlNBZ0FBUEMwR05xSUNBQUE4TFFlS21nSUFBRHd0QmdMQ0FnQUFQQzBHNXI0Q0FBQThMUWRla2dJQUFEd3RCNzUrQWdBQVBDMEhobjRDQUFBOExRZnFmZ0lBQUR3dEI4cUNBZ0FBUEMwR29yNENBQUE4TFFhNnlnSUFBRHd0QmlMQ0FnQUFQQzBIc3A0Q0FBQThMUVlLaWdJQUFEd3RCanAyQWdBQVBDMEhRcm9DQUFBOExRY3FqZ0lBQUR3dEJ4YktBZ0FBUEMwSGZuSUNBQUE4TFFkS2NnSUFBRHd0QnhLQ0FnQUFQQzBIWG9JQ0FBQThMUWFLZmdJQUFEd3RCN2E2QWdBQVBDMEdyc0lDQUFBOExRZFNsZ0lBQUR3dEJ6SzZBZ0FBUEMwSDZyb0NBQUE4TFFmeXJnSUFBRHd0QjByQ0FnQUFQQzBIeG5ZQ0FBQThMUWJ1Z2dJQUFEd3RCOTZ1QWdBQVBDMEdRc1lDQUFBOExRZGV4Z0lBQUR3dEJvcTJBZ0FBUEMwSFVwNENBQUE4TFFlQ3JnSUFBRHd0Qm42eUFnQUFQQzBIcnNZQ0FBQThMUWRXZmdJQUFEd3RCeXJHQWdBQVBDMEhlcFlDQUFBOExRZFNlZ0lBQUR3dEI5SnlBZ0FBUEMwR25zb0NBQUE4TFFiR2RnSUFBRHd0Qm9KMkFnQUFQQzBHNXNZQ0FBQThMUWJ5d2dJQUFEd3RCa3FHQWdBQVBDMEd6cG9DQUFBOExRZW1zZ0lBQUR3dEJySjZBZ0FBUEMwSFVxNENBQUE4TFFmZW1nSUFBRHd0QmdLYUFnQUFQQzBHd29ZQ0FBQThMUWY2ZWdJQUFEd3RCamFPQWdBQVBDMEdKcllDQUFBOExRZmVpZ0lBQUR3dEJvTEdBZ0FBUEMwR3VuNENBQUE4TFFjYWxnSUFBRHd0QjZKNkFnQUFQQzBHVG9vQ0FBQThMUWNLdmdJQUFEd3RCdzUyQWdBQVBDMEdMcklDQUFBOExRZUdkZ0lBQUR3dEJqYStBZ0FBUEMwSHFvWUNBQUE4TFFiU3RnSUFBRHd0QjBxK0FnQUFQQzBIZnNvQ0FBQThMUWRLeWdJQUFEd3RCOExDQWdBQVBDMEdwb29DQUFBOExRZm1qZ0lBQUR3dEJtWjZBZ0FBUEMwRzFySUNBQUE4TFFadXdnSUFBRHd0QmtyS0FnQUFQQzBHMnE0Q0FBQThMUWNLaWdJQUFEd3RCK0xLQWdBQVBDMEdlcFlDQUFBOExRZENpZ0lBQUR3dEJ1cDZBZ0FBUEMwR0Jub0NBQUE4TEVNcUFnSUFBQUF0QjFxR0FnQUFoQVFzZ0FRc1dBQ0FBSUFBdEFDMUIvZ0Z4SUFGQkFFZHlPZ0F0Q3hrQUlBQWdBQzBBTFVIOUFYRWdBVUVBUjBFQmRISTZBQzBMR1FBZ0FDQUFMUUF0UWZzQmNTQUJRUUJIUVFKMGNqb0FMUXNaQUNBQUlBQXRBQzFCOXdGeElBRkJBRWRCQTNSeU9nQXRDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FnQWlCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MU1FFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NCQ0lFUlEwQUlBQWdBU0FDSUFGcklBUVJnWUNBZ0FBQUlnTkJmMGNOQUNBQVFjYVJnSUFBTmdJUVFSZ2hBd3NnQXdzdUFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUl3SWdSRkRRQWdBQ0FFRVlDQWdJQUFBQ0VEQ3lBREMwa0JBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWdnaUJFVU5BQ0FBSUFFZ0FpQUJheUFFRVlHQWdJQUFBQ0lEUVg5SERRQWdBRUgyaW9DQUFEWUNFRUVZSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ05DSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3RKQVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSU1JZ1JGRFFBZ0FDQUJJQUlnQVdzZ0JCR0JnSUNBQUFBaUEwRi9SdzBBSUFCQjdacUFnQUEyQWhCQkdDRURDeUFEQ3k0QkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BamdpQkVVTkFDQUFJQVFSZ0lDQWdBQUFJUU1MSUFNTFNRRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDRUNJRVJRMEFJQUFnQVNBQ0lBRnJJQVFSZ1lDQWdBQUFJZ05CZjBjTkFDQUFRWldRZ0lBQU5nSVFRUmdoQXdzZ0F3c3VBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJOElnUkZEUUFnQUNBRUVZQ0FnSUFBQUNFREN5QURDMGtCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FoUWlCRVVOQUNBQUlBRWdBaUFCYXlBRUVZR0FnSUFBQUNJRFFYOUhEUUFnQUVHcW00Q0FBRFlDRUVFWUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NRQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXd0SkFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUlZSWdSRkRRQWdBQ0FCSUFJZ0FXc2dCQkdCZ0lDQUFBQWlBMEYvUncwQUlBQkI3Wk9BZ0FBMkFoQkJHQ0VEQ3lBREN5NEJBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWtRaUJFVU5BQ0FBSUFRUmdJQ0FnQUFBSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ0pDSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3N1QVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSXNJZ1JGRFFBZ0FDQUVFWUNBZ0lBQUFDRURDeUFEQzBrQkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BaWdpQkVVTkFDQUFJQUVnQWlBQmF5QUVFWUdBZ0lBQUFDSURRWDlIRFFBZ0FFSDJpSUNBQURZQ0VFRVlJUU1MSUFNTExnRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDVUNJRVJRMEFJQUFnQkJHQWdJQ0FBQUFoQXdzZ0F3dEpBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJY0lnUkZEUUFnQUNBQklBSWdBV3NnQkJHQmdJQ0FBQUFpQTBGL1J3MEFJQUJCd3BtQWdBQTJBaEJCR0NFREN5QURDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FrZ2lCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MU1FFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NJQ0lFUlEwQUlBQWdBU0FDSUFGcklBUVJnWUNBZ0FBQUlnTkJmMGNOQUNBQVFaU1VnSUFBTmdJUVFSZ2hBd3NnQXdzdUFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUpNSWdSRkRRQWdBQ0FFRVlDQWdJQUFBQ0VEQ3lBREN5NEJBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWxRaUJFVU5BQ0FBSUFRUmdJQ0FnQUFBSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ1dDSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3RGQVFGL0FrQUNRQ0FBTHdFd1FSUnhRUlJIRFFCQkFTRURJQUF0QUNoQkFVWU5BU0FBTHdFeVFlVUFSaUVEREFFTElBQXRBQ2xCQlVZaEF3c2dBQ0FET2dBdVFRQUwvZ0VCQTM5QkFTRURBa0FnQUM4Qk1DSUVRUWh4RFFBZ0FDa0RJRUlBVWlFREN3SkFBa0FnQUMwQUxrVU5BRUVCSVFVZ0FDMEFLVUVGUmcwQlFRRWhCU0FFUWNBQWNVVWdBM0ZCQVVjTkFRdEJBQ0VGSUFSQndBQnhEUUJCQWlFRklBUkIvLzhEY1NJRFFRaHhEUUFDUUNBRFFZQUVjVVVOQUFKQUlBQXRBQ2hCQVVjTkFDQUFMUUF0UVFweERRQkJCUThMUVFRUEN3SkFJQU5CSUhFTkFBSkFJQUF0QUNoQkFVWU5BQ0FBTHdFeVFmLy9BM0VpQUVHY2YycEI1QUJKRFFBZ0FFSE1BVVlOQUNBQVFiQUNSZzBBUVFRaEJTQUVRU2h4UlEwQ0lBTkJpQVJ4UVlBRVJnMENDMEVBRHd0QkFFRURJQUFwQXlCUUd5RUZDeUFGQzJJQkFuOUJBQ0VCQWtBZ0FDMEFLRUVCUmcwQUlBQXZBVEpCLy84RGNTSUNRWngvYWtIa0FFa05BQ0FDUWN3QlJnMEFJQUpCc0FKR0RRQWdBQzhCTUNJQVFjQUFjUTBBUVFFaEFTQUFRWWdFY1VHQUJFWU5BQ0FBUVNoeFJTRUJDeUFCQzZjQkFRTi9Ba0FDUUFKQUlBQXRBQ3BGRFFBZ0FDMEFLMFVOQUVFQUlRTWdBQzhCTUNJRVFRSnhSUTBCREFJTFFRQWhBeUFBTHdFd0lnUkJBWEZGRFFFTFFRRWhBeUFBTFFBb1FRRkdEUUFnQUM4Qk1rSC8vd054SWdWQm5IOXFRZVFBU1EwQUlBVkJ6QUZHRFFBZ0JVR3dBa1lOQUNBRVFjQUFjUTBBUVFBaEF5QUVRWWdFY1VHQUJFWU5BQ0FFUVNoeFFRQkhJUU1MSUFCQkFEc0JNQ0FBUVFBNkFDOGdBd3VaQVFFQ2Z3SkFBa0FDUUNBQUxRQXFSUTBBSUFBdEFDdEZEUUJCQUNFQklBQXZBVEFpQWtFQ2NVVU5BUXdDQzBFQUlRRWdBQzhCTUNJQ1FRRnhSUTBCQzBFQklRRWdBQzBBS0VFQlJnMEFJQUF2QVRKQi8vOERjU0lBUVp4L2FrSGtBRWtOQUNBQVFjd0JSZzBBSUFCQnNBSkdEUUFnQWtIQUFIRU5BRUVBSVFFZ0FrR0lCSEZCZ0FSR0RRQWdBa0VvY1VFQVJ5RUJDeUFCQzFrQUlBQkJHR3BDQURjREFDQUFRZ0EzQXdBZ0FFRTRha0lBTndNQUlBQkJNR3BDQURjREFDQUFRU2hxUWdBM0F3QWdBRUVnYWtJQU53TUFJQUJCRUdwQ0FEY0RBQ0FBUVFocVFnQTNBd0FnQUVIZEFUWUNIRUVBQzNzQkFYOENRQ0FBS0FJTUlnTU5BQUpBSUFBb0FnUkZEUUFnQUNBQk5nSUVDd0pBSUFBZ0FTQUNFTVNBZ0lBQUlnTU5BQ0FBS0FJTUR3c2dBQ0FETmdJY1FRQWhBeUFBS0FJRUlnRkZEUUFnQUNBQklBSWdBQ2dDQ0JHQmdJQ0FBQUFpQVVVTkFDQUFJQUkyQWhRZ0FDQUJOZ0lNSUFFaEF3c2dBd3ZrOHdFRERuOERmZ1IvSTRDQWdJQUFRUkJySWdNa2dJQ0FnQUFnQVNFRUlBRWhCU0FCSVFZZ0FTRUhJQUVoQ0NBQklRa2dBU0VLSUFFaEN5QUJJUXdnQVNFTklBRWhEaUFCSVE4Q1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBZ0FDZ0NIQ0lRUVg5cUR0MEIyZ0VCMlFFQ0F3UUZCZ2NJQ1FvTERBME8yQUVQRU5jQkVSTFdBUk1VRlJZWEdCa2FHK0FCM3dFY0hSN1ZBUjhnSVNJakpDWFVBU1luS0NrcUt5elRBZElCTFM3UkFkQUJMekF4TWpNME5UWTNPRGs2T3p3OVBqOUFRVUpEUkVWRzJ3RkhTRWxLendIT0FVdk5BVXpNQVUxT1QxQlJVbE5VVlZaWFdGbGFXMXhkWGw5Z1lXSmpaR1ZtWjJocGFtdHNiVzV2Y0hGeWMzUjFkbmQ0ZVhwN2ZIMStmNEFCZ1FHQ0FZTUJoQUdGQVlZQmh3R0lBWWtCaWdHTEFZd0JqUUdPQVk4QmtBR1JBWklCa3dHVUFaVUJsZ0dYQVpnQm1RR2FBWnNCbkFHZEFaNEJud0dnQWFFQm9nR2pBYVFCcFFHbUFhY0JxQUdwQWFvQnF3R3NBYTBCcmdHdkFiQUJzUUd5QWJNQnRBRzFBYllCdHdITEFjb0J1QUhKQWJrQnlBRzZBYnNCdkFHOUFiNEJ2d0hBQWNFQndnSERBY1FCeFFIR0FRRGNBUXRCQUNFUURNWUJDMEVPSVJBTXhRRUxRUTBoRUF6RUFRdEJEeUVRRE1NQkMwRVFJUkFNd2dFTFFSTWhFQXpCQVF0QkZDRVFETUFCQzBFVklSQU12d0VMUVJZaEVBeStBUXRCRnlFUURMMEJDMEVZSVJBTXZBRUxRUmtoRUF5N0FRdEJHaUVRRExvQkMwRWJJUkFNdVFFTFFSd2hFQXk0QVF0QkNDRVFETGNCQzBFZElSQU10Z0VMUVNBaEVBeTFBUXRCSHlFUURMUUJDMEVISVJBTXN3RUxRU0VoRUF5eUFRdEJJaUVRRExFQkMwRWVJUkFNc0FFTFFTTWhFQXl2QVF0QkVpRVFESzRCQzBFUklSQU1yUUVMUVNRaEVBeXNBUXRCSlNFUURLc0JDMEVtSVJBTXFnRUxRU2NoRUF5cEFRdEJ3d0VoRUF5b0FRdEJLU0VRREtjQkMwRXJJUkFNcGdFTFFTd2hFQXlsQVF0QkxTRVFES1FCQzBFdUlSQU1vd0VMUVM4aEVBeWlBUXRCeEFFaEVBeWhBUXRCTUNFUURLQUJDMEUwSVJBTW53RUxRUXdoRUF5ZUFRdEJNU0VRREowQkMwRXlJUkFNbkFFTFFUTWhFQXliQVF0Qk9TRVFESm9CQzBFMUlSQU1tUUVMUWNVQklSQU1tQUVMUVFzaEVBeVhBUXRCT2lFUURKWUJDMEUySVJBTWxRRUxRUW9oRUF5VUFRdEJOeUVRREpNQkMwRTRJUkFNa2dFTFFUd2hFQXlSQVF0Qk95RVFESkFCQzBFOUlSQU1qd0VMUVFraEVBeU9BUXRCS0NFUURJMEJDMEUrSVJBTWpBRUxRVDhoRUF5TEFRdEJ3QUFoRUF5S0FRdEJ3UUFoRUF5SkFRdEJ3Z0FoRUF5SUFRdEJ3d0FoRUF5SEFRdEJ4QUFoRUF5R0FRdEJ4UUFoRUF5RkFRdEJ4Z0FoRUF5RUFRdEJLaUVRRElNQkMwSEhBQ0VRRElJQkMwSElBQ0VRRElFQkMwSEpBQ0VRRElBQkMwSEtBQ0VRREg4TFFjc0FJUkFNZmd0QnpRQWhFQXg5QzBITUFDRVFESHdMUWM0QUlSQU1ld3RCendBaEVBeDZDMEhRQUNFUURIa0xRZEVBSVJBTWVBdEIwZ0FoRUF4M0MwSFRBQ0VRREhZTFFkUUFJUkFNZFF0QjFnQWhFQXgwQzBIVkFDRVFESE1MUVFZaEVBeHlDMEhYQUNFUURIRUxRUVVoRUF4d0MwSFlBQ0VRREc4TFFRUWhFQXh1QzBIWkFDRVFERzBMUWRvQUlSQU1iQXRCMndBaEVBeHJDMEhjQUNFUURHb0xRUU1oRUF4cEMwSGRBQ0VRREdnTFFkNEFJUkFNWnd0QjN3QWhFQXhtQzBIaEFDRVFER1VMUWVBQUlSQU1aQXRCNGdBaEVBeGpDMEhqQUNFUURHSUxRUUloRUF4aEMwSGtBQ0VRREdBTFFlVUFJUkFNWHd0QjVnQWhFQXhlQzBIbkFDRVFERjBMUWVnQUlSQU1YQXRCNlFBaEVBeGJDMEhxQUNFUURGb0xRZXNBSVJBTVdRdEI3QUFoRUF4WUMwSHRBQ0VRREZjTFFlNEFJUkFNVmd0Qjd3QWhFQXhWQzBId0FDRVFERlFMUWZFQUlSQU1Vd3RCOGdBaEVBeFNDMEh6QUNFUURGRUxRZlFBSVJBTVVBdEI5UUFoRUF4UEMwSDJBQ0VRREU0TFFmY0FJUkFNVFF0QitBQWhFQXhNQzBINUFDRVFERXNMUWZvQUlSQU1TZ3RCK3dBaEVBeEpDMEg4QUNFUURFZ0xRZjBBSVJBTVJ3dEIvZ0FoRUF4R0MwSC9BQ0VRREVVTFFZQUJJUkFNUkF0QmdRRWhFQXhEQzBHQ0FTRVFERUlMUVlNQklSQU1RUXRCaEFFaEVBeEFDMEdGQVNFUUREOExRWVlCSVJBTVBndEJod0VoRUF3OUMwR0lBU0VRRER3TFFZa0JJUkFNT3d0QmlnRWhFQXc2QzBHTEFTRVFERGtMUVl3QklSQU1PQXRCalFFaEVBdzNDMEdPQVNFUUREWUxRWThCSVJBTU5RdEJrQUVoRUF3MEMwR1JBU0VRRERNTFFaSUJJUkFNTWd0Qmt3RWhFQXd4QzBHVUFTRVFEREFMUVpVQklSQU1Md3RCbGdFaEVBd3VDMEdYQVNFUURDMExRWmdCSVJBTUxBdEJtUUVoRUF3ckMwR2FBU0VRRENvTFFac0JJUkFNS1F0Qm5BRWhFQXdvQzBHZEFTRVFEQ2NMUVo0QklSQU1KZ3RCbndFaEVBd2xDMEdnQVNFUURDUUxRYUVCSVJBTUl3dEJvZ0VoRUF3aUMwR2pBU0VRRENFTFFhUUJJUkFNSUF0QnBRRWhFQXdmQzBHbUFTRVFEQjRMUWFjQklSQU1IUXRCcUFFaEVBd2NDMEdwQVNFUURCc0xRYW9CSVJBTUdndEJxd0VoRUF3WkMwR3NBU0VRREJnTFFhMEJJUkFNRnd0QnJnRWhFQXdXQzBFQklSQU1GUXRCcndFaEVBd1VDMEd3QVNFUURCTUxRYkVCSVJBTUVndEJzd0VoRUF3UkMwR3lBU0VRREJBTFFiUUJJUkFNRHd0QnRRRWhFQXdPQzBHMkFTRVFEQTBMUWJjQklSQU1EQXRCdUFFaEVBd0xDMEc1QVNFUURBb0xRYm9CSVJBTUNRdEJ1d0VoRUF3SUMwSEdBU0VRREFjTFFid0JJUkFNQmd0QnZRRWhFQXdGQzBHK0FTRVFEQVFMUWI4QklSQU1Bd3RCd0FFaEVBd0NDMEhDQVNFUURBRUxRY0VCSVJBTEEwQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQ0FRRHNjQkFBRUNBd1FGQmdjSUNRb0xEQTBPRHhBUkVoTVVGUllYR0JrYUd4d2VIeUFoSXlVb1AwQkJSRVZHUjBoSlNrdE1UVTlRVVZKVDNnTlhXVnRjWFdCaVpXWm5hR2xxYTJ4dGIzQnhjbk4wZFhaM2VIbDZlM3g5Zm9BQmdnR0ZBWVlCaHdHSkFZc0JqQUdOQVk0Qmp3R1FBWkVCbEFHVkFaWUJsd0dZQVprQm1nR2JBWndCblFHZUFaOEJvQUdoQWFJQm93R2tBYVVCcGdHbkFhZ0JxUUdxQWFzQnJBR3RBYTRCcndHd0FiRUJzZ0d6QWJRQnRRRzJBYmNCdUFHNUFib0J1d0c4QWIwQnZnRy9BY0FCd1FIQ0FjTUJ4QUhGQWNZQnh3SElBY2tCeWdITEFjd0J6UUhPQWM4QjBBSFJBZElCMHdIVUFkVUIxZ0hYQWRnQjJRSGFBZHNCM0FIZEFkNEI0QUhoQWVJQjR3SGtBZVVCNWdIbkFlZ0I2UUhxQWVzQjdBSHRBZTRCN3dId0FmRUI4Z0h6QVprQ3BBS3dBdjRDL2dJTElBRWlCQ0FDUnczekFVSGRBU0VRRFA4REN5QUJJaEFnQWtjTjNRRkJ3d0VoRUF6K0F3c2dBU0lCSUFKSERaQUJRZmNBSVJBTS9RTUxJQUVpQVNBQ1J3MkdBVUh2QUNFUURQd0RDeUFCSWdFZ0FrY05mMEhxQUNFUURQc0RDeUFCSWdFZ0FrY05lMEhvQUNFUURQb0RDeUFCSWdFZ0FrY05lRUhtQUNFUURQa0RDeUFCSWdFZ0FrY05Ha0VZSVJBTStBTUxJQUVpQVNBQ1J3MFVRUkloRUF6M0F3c2dBU0lCSUFKSERWbEJ4UUFoRUF6MkF3c2dBU0lCSUFKSERVcEJQeUVRRFBVREN5QUJJZ0VnQWtjTlNFRThJUkFNOUFNTElBRWlBU0FDUncxQlFURWhFQXp6QXdzZ0FDMEFMa0VCUmczckF3eUhBZ3NnQUNBQklnRWdBaERBZ0lDQUFFRUJSdzNtQVNBQVFnQTNBeUFNNXdFTElBQWdBU0lCSUFJUXRJQ0FnQUFpRUEzbkFTQUJJUUVNOVFJTEFrQWdBU0lCSUFKSERRQkJCaUVRRFBBREN5QUFJQUZCQVdvaUFTQUNFTHVBZ0lBQUloQU42QUVnQVNFQkRERUxJQUJDQURjRElFRVNJUkFNMVFNTElBRWlFQ0FDUncwclFSMGhFQXp0QXdzQ1FDQUJJZ0VnQWtZTkFDQUJRUUZxSVFGQkVDRVFETlFEQzBFSElSQU03QU1MSUFCQ0FDQUFLUU1nSWhFZ0FpQUJJaEJyclNJU2ZTSVRJQk1nRVZZYk53TWdJQkVnRWxZaUZFVU41UUZCQ0NFUURPc0RDd0pBSUFFaUFTQUNSZzBBSUFCQmlZQ0FnQUEyQWdnZ0FDQUJOZ0lFSUFFaEFVRVVJUkFNMGdNTFFRa2hFQXpxQXdzZ0FTRUJJQUFwQXlCUURlUUJJQUVoQVF6eUFnc0NRQ0FCSWdFZ0FrY05BRUVMSVJBTTZRTUxJQUFnQVVFQmFpSUJJQUlRdG9DQWdBQWlFQTNsQVNBQklRRU04Z0lMSUFBZ0FTSUJJQUlRdUlDQWdBQWlFQTNsQVNBQklRRU04Z0lMSUFBZ0FTSUJJQUlRdUlDQWdBQWlFQTNtQVNBQklRRU1EUXNnQUNBQklnRWdBaEM2Z0lDQUFDSVFEZWNCSUFFaEFRendBZ3NDUUNBQklnRWdBa2NOQUVFUElSQU01UU1MSUFFdEFBQWlFRUU3UmcwSUlCQkJEVWNONkFFZ0FVRUJhaUVCRE84Q0N5QUFJQUVpQVNBQ0VMcUFnSUFBSWhBTjZBRWdBU0VCRFBJQ0N3TkFBa0FnQVMwQUFFSHd0WUNBQUdvdEFBQWlFRUVCUmcwQUlCQkJBa2NONndFZ0FDZ0NCQ0VRSUFCQkFEWUNCQ0FBSUJBZ0FVRUJhaUlCRUxtQWdJQUFJaEFONmdFZ0FTRUJEUFFDQ3lBQlFRRnFJZ0VnQWtjTkFBdEJFaUVRRE9JREN5QUFJQUVpQVNBQ0VMcUFnSUFBSWhBTjZRRWdBU0VCREFvTElBRWlBU0FDUncwR1FSc2hFQXpnQXdzQ1FDQUJJZ0VnQWtjTkFFRVdJUkFNNEFNTElBQkJpb0NBZ0FBMkFnZ2dBQ0FCTmdJRUlBQWdBU0FDRUxpQWdJQUFJaEFONmdFZ0FTRUJRU0FoRUF6R0F3c0NRQ0FCSWdFZ0FrWU5BQU5BQWtBZ0FTMEFBRUh3dDRDQUFHb3RBQUFpRUVFQ1JnMEFBa0FnRUVGL2FnNEU1UUhzQVFEckFld0JDeUFCUVFGcUlRRkJDQ0VRRE1nREN5QUJRUUZxSWdFZ0FrY05BQXRCRlNFUUROOERDMEVWSVJBTTNnTUxBMEFDUUNBQkxRQUFRZkM1Z0lBQWFpMEFBQ0lRUVFKR0RRQWdFRUYvYWc0RTNnSHNBZUFCNndIc0FRc2dBVUVCYWlJQklBSkhEUUFMUVJnaEVBemRBd3NDUUNBQklnRWdBa1lOQUNBQVFZdUFnSUFBTmdJSUlBQWdBVFlDQkNBQklRRkJCeUVRRE1RREMwRVpJUkFNM0FNTElBRkJBV29oQVF3Q0N3SkFJQUVpRkNBQ1J3MEFRUm9oRUF6YkF3c2dGQ0VCQWtBZ0ZDMEFBRUZ6YWc0VTNRTHVBdTRDN2dMdUF1NEM3Z0x1QXU0QzdnTHVBdTRDN2dMdUF1NEM3Z0x1QXU0QzdnSUE3Z0lMUVFBaEVDQUFRUUEyQWh3Z0FFR3ZpNENBQURZQ0VDQUFRUUkyQWd3Z0FDQVVRUUZxTmdJVUROb0RDd0pBSUFFdEFBQWlFRUU3UmcwQUlCQkJEVWNONkFFZ0FVRUJhaUVCRE9VQ0N5QUJRUUZxSVFFTFFTSWhFQXkvQXdzQ1FDQUJJaEFnQWtjTkFFRWNJUkFNMkFNTFFnQWhFU0FRSVFFZ0VDMEFBRUZRYWc0MzV3SG1BUUVDQXdRRkJnY0lBQUFBQUFBQUFBa0tDd3dORGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRHhBUkVoTVVBQXRCSGlFUURMMERDMElDSVJFTTVRRUxRZ01oRVF6a0FRdENCQ0VSRE9NQkMwSUZJUkVNNGdFTFFnWWhFUXpoQVF0Q0J5RVJET0FCQzBJSUlSRU0zd0VMUWdraEVRemVBUXRDQ2lFUkROMEJDMElMSVJFTTNBRUxRZ3doRVF6YkFRdENEU0VSRE5vQkMwSU9JUkVNMlFFTFFnOGhFUXpZQVF0Q0NpRVJETmNCQzBJTElSRU0xZ0VMUWd3aEVRelZBUXRDRFNFUkROUUJDMElPSVJFTTB3RUxRZzhoRVF6U0FRdENBQ0VSQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FDQVFMUUFBUVZCcURqZmxBZVFCQUFFQ0F3UUZCZ2ZtQWVZQjVnSG1BZVlCNWdIbUFRZ0pDZ3NNRGVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0VPRHhBUkVoUG1BUXRDQWlFUkRPUUJDMElESVJFTTR3RUxRZ1FoRVF6aUFRdENCU0VSRE9FQkMwSUdJUkVNNEFFTFFnY2hFUXpmQVF0Q0NDRVJETjRCQzBJSklSRU0zUUVMUWdvaEVRemNBUXRDQ3lFUkROc0JDMElNSVJFTTJnRUxRZzBoRVF6WkFRdENEaUVSRE5nQkMwSVBJUkVNMXdFTFFnb2hFUXpXQVF0Q0N5RVJETlVCQzBJTUlSRU0xQUVMUWcwaEVRelRBUXRDRGlFUkROSUJDMElQSVJFTTBRRUxJQUJDQUNBQUtRTWdJaEVnQWlBQkloQnJyU0lTZlNJVElCTWdFVlliTndNZ0lCRWdFbFlpRkVVTjBnRkJIeUVRRE1BREN3SkFJQUVpQVNBQ1JnMEFJQUJCaVlDQWdBQTJBZ2dnQUNBQk5nSUVJQUVoQVVFa0lSQU1wd01MUVNBaEVBeS9Bd3NnQUNBQkloQWdBaEMrZ0lDQUFFRi9hZzRGdGdFQXhRSUIwUUhTQVF0QkVTRVFES1FEQ3lBQVFRRTZBQzhnRUNFQkRMc0RDeUFCSWdFZ0FrY04wZ0ZCSkNFUURMc0RDeUFCSWcwZ0FrY05Ia0hHQUNFUURMb0RDeUFBSUFFaUFTQUNFTEtBZ0lBQUloQU4xQUVnQVNFQkRMVUJDeUFCSWhBZ0FrY05Ka0hRQUNFUURMZ0RDd0pBSUFFaUFTQUNSdzBBUVNnaEVBeTRBd3NnQUVFQU5nSUVJQUJCaklDQWdBQTJBZ2dnQUNBQklBRVFzWUNBZ0FBaUVBM1RBU0FCSVFFTTJBRUxBa0FnQVNJUUlBSkhEUUJCS1NFUURMY0RDeUFRTFFBQUlnRkJJRVlORkNBQlFRbEhEZE1CSUJCQkFXb2hBUXdWQ3dKQUlBRWlBU0FDUmcwQUlBRkJBV29oQVF3WEMwRXFJUkFNdFFNTEFrQWdBU0lRSUFKSERRQkJLeUVRRExVREN3SkFJQkF0QUFBaUFVRUpSZzBBSUFGQklFY04xUUVMSUFBdEFDeEJDRVlOMHdFZ0VDRUJESkVEQ3dKQUlBRWlBU0FDUncwQVFTd2hFQXkwQXdzZ0FTMEFBRUVLUnczVkFTQUJRUUZxSVFFTXlRSUxJQUVpRGlBQ1J3M1ZBVUV2SVJBTXNnTUxBMEFDUUNBQkxRQUFJaEJCSUVZTkFBSkFJQkJCZG1vT0JBRGNBZHdCQU5vQkN5QUJJUUVNNEFFTElBRkJBV29pQVNBQ1J3MEFDMEV4SVJBTXNRTUxRVEloRUNBQkloUWdBa1lOc0FNZ0FpQVVheUFBS0FJQUlnRnFJUlVnRkNBQmEwRURhaUVXQWtBRFFDQVVMUUFBSWhkQklISWdGeUFYUWI5L2FrSC9BWEZCR2trYlFmOEJjU0FCUWZDN2dJQUFhaTBBQUVjTkFRSkFJQUZCQTBjTkFFRUdJUUVNbGdNTElBRkJBV29oQVNBVVFRRnFJaFFnQWtjTkFBc2dBQ0FWTmdJQURMRURDeUFBUVFBMkFnQWdGQ0VCRE5rQkMwRXpJUkFnQVNJVUlBSkdEYThESUFJZ0ZHc2dBQ2dDQUNJQmFpRVZJQlFnQVd0QkNHb2hGZ0pBQTBBZ0ZDMEFBQ0lYUVNCeUlCY2dGMEcvZjJwQi93RnhRUnBKRzBIL0FYRWdBVUgwdTRDQUFHb3RBQUJIRFFFQ1FDQUJRUWhIRFFCQkJTRUJESlVEQ3lBQlFRRnFJUUVnRkVFQmFpSVVJQUpIRFFBTElBQWdGVFlDQUF5d0F3c2dBRUVBTmdJQUlCUWhBUXpZQVF0Qk5DRVFJQUVpRkNBQ1JnMnVBeUFDSUJScklBQW9BZ0FpQVdvaEZTQVVJQUZyUVFWcUlSWUNRQU5BSUJRdEFBQWlGMEVnY2lBWElCZEJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkIwTUtBZ0FCcUxRQUFSdzBCQWtBZ0FVRUZSdzBBUVFjaEFReVVBd3NnQVVFQmFpRUJJQlJCQVdvaUZDQUNSdzBBQ3lBQUlCVTJBZ0FNcndNTElBQkJBRFlDQUNBVUlRRU0xd0VMQWtBZ0FTSUJJQUpHRFFBRFFBSkFJQUV0QUFCQmdMNkFnQUJxTFFBQUloQkJBVVlOQUNBUVFRSkdEUW9nQVNFQkROMEJDeUFCUVFGcUlnRWdBa2NOQUF0Qk1DRVFESzREQzBFd0lSQU1yUU1MQWtBZ0FTSUJJQUpHRFFBRFFBSkFJQUV0QUFBaUVFRWdSZzBBSUJCQmRtb09CTmtCMmdIYUFka0IyZ0VMSUFGQkFXb2lBU0FDUncwQUMwRTRJUkFNclFNTFFUZ2hFQXlzQXdzRFFBSkFJQUV0QUFBaUVFRWdSZzBBSUJCQkNVY05Bd3NnQVVFQmFpSUJJQUpIRFFBTFFUd2hFQXlyQXdzRFFBSkFJQUV0QUFBaUVFRWdSZzBBQWtBQ1FDQVFRWFpxRGdUYUFRRUIyZ0VBQ3lBUVFTeEdEZHNCQ3lBQklRRU1CQXNnQVVFQmFpSUJJQUpIRFFBTFFUOGhFQXlxQXdzZ0FTRUJETnNCQzBIQUFDRVFJQUVpRkNBQ1JnMm9BeUFDSUJScklBQW9BZ0FpQVdvaEZpQVVJQUZyUVFacUlSY0NRQU5BSUJRdEFBQkJJSElnQVVHQXdJQ0FBR290QUFCSERRRWdBVUVHUmcyT0F5QUJRUUZxSVFFZ0ZFRUJhaUlVSUFKSERRQUxJQUFnRmpZQ0FBeXBBd3NnQUVFQU5nSUFJQlFoQVF0Qk5pRVFESTREQ3dKQUlBRWlEeUFDUncwQVFjRUFJUkFNcHdNTElBQkJqSUNBZ0FBMkFnZ2dBQ0FQTmdJRUlBOGhBU0FBTFFBc1FYOXFEZ1ROQWRVQjF3SFpBWWNEQ3lBQlFRRnFJUUVNekFFTEFrQWdBU0lCSUFKR0RRQURRQUpBSUFFdEFBQWlFRUVnY2lBUUlCQkJ2MzlxUWY4QmNVRWFTUnRCL3dGeEloQkJDVVlOQUNBUVFTQkdEUUFDUUFKQUFrQUNRQ0FRUVoxL2FnNFRBQU1EQXdNREF3TUJBd01EQXdNREF3TURBZ01MSUFGQkFXb2hBVUV4SVJBTWtRTUxJQUZCQVdvaEFVRXlJUkFNa0FNTElBRkJBV29oQVVFeklSQU1qd01MSUFFaEFRelFBUXNnQVVFQmFpSUJJQUpIRFFBTFFUVWhFQXlsQXd0Qk5TRVFES1FEQ3dKQUlBRWlBU0FDUmcwQUEwQUNRQ0FCTFFBQVFZQzhnSUFBYWkwQUFFRUJSZzBBSUFFaEFRelRBUXNnQVVFQmFpSUJJQUpIRFFBTFFUMGhFQXlrQXd0QlBTRVFES01EQ3lBQUlBRWlBU0FDRUxDQWdJQUFJaEFOMWdFZ0FTRUJEQUVMSUJCQkFXb2hBUXRCUENFUURJY0RDd0pBSUFFaUFTQUNSdzBBUWNJQUlSQU1vQU1MQWtBRFFBSkFJQUV0QUFCQmQyb09HQUFDL2dMK0FvUUQvZ0wrQXY0Qy9nTCtBdjRDL2dMK0F2NEMvZ0wrQXY0Qy9nTCtBdjRDL2dMK0F2NENBUDRDQ3lBQlFRRnFJZ0VnQWtjTkFBdEJ3Z0FoRUF5Z0F3c2dBVUVCYWlFQklBQXRBQzFCQVhGRkRiMEJJQUVoQVF0QkxDRVFESVVEQ3lBQklnRWdBa2NOMHdGQnhBQWhFQXlkQXdzRFFBSkFJQUV0QUFCQmtNQ0FnQUJxTFFBQVFRRkdEUUFnQVNFQkRMY0NDeUFCUVFGcUlnRWdBa2NOQUF0QnhRQWhFQXljQXdzZ0RTMEFBQ0lRUVNCR0RiTUJJQkJCT2tjTmdRTWdBQ2dDQkNFQklBQkJBRFlDQkNBQUlBRWdEUkN2Z0lDQUFDSUJEZEFCSUExQkFXb2hBUXl6QWd0Qnh3QWhFQ0FCSWcwZ0FrWU5tZ01nQWlBTmF5QUFLQUlBSWdGcUlSWWdEU0FCYTBFRmFpRVhBMEFnRFMwQUFDSVVRU0J5SUJRZ0ZFRy9mMnBCL3dGeFFScEpHMEgvQVhFZ0FVR1F3b0NBQUdvdEFBQkhEWUFESUFGQkJVWU45QUlnQVVFQmFpRUJJQTFCQVdvaURTQUNSdzBBQ3lBQUlCWTJBZ0FNbWdNTFFjZ0FJUkFnQVNJTklBSkdEWmtESUFJZ0RXc2dBQ2dDQUNJQmFpRVdJQTBnQVd0QkNXb2hGd05BSUEwdEFBQWlGRUVnY2lBVUlCUkJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkJsc0tBZ0FCcUxRQUFSdzMvQWdKQUlBRkJDVWNOQUVFQ0lRRU05UUlMSUFGQkFXb2hBU0FOUVFGcUlnMGdBa2NOQUFzZ0FDQVdOZ0lBREprREN3SkFJQUVpRFNBQ1J3MEFRY2tBSVJBTW1RTUxBa0FDUUNBTkxRQUFJZ0ZCSUhJZ0FTQUJRYjkvYWtIL0FYRkJHa2tiUWY4QmNVR1NmMm9PQndDQUE0QURnQU9BQTRBREFZQURDeUFOUVFGcUlRRkJQaUVRRElBREN5QU5RUUZxSVFGQlB5RVFEUDhDQzBIS0FDRVFJQUVpRFNBQ1JnMlhBeUFDSUExcklBQW9BZ0FpQVdvaEZpQU5JQUZyUVFGcUlSY0RRQ0FOTFFBQUloUkJJSElnRkNBVVFiOS9ha0gvQVhGQkdra2JRZjhCY1NBQlFhRENnSUFBYWkwQUFFY04vUUlnQVVFQlJnM3dBaUFCUVFGcUlRRWdEVUVCYWlJTklBSkhEUUFMSUFBZ0ZqWUNBQXlYQXd0Qnl3QWhFQ0FCSWcwZ0FrWU5sZ01nQWlBTmF5QUFLQUlBSWdGcUlSWWdEU0FCYTBFT2FpRVhBMEFnRFMwQUFDSVVRU0J5SUJRZ0ZFRy9mMnBCL3dGeFFScEpHMEgvQVhFZ0FVR2l3b0NBQUdvdEFBQkhEZndDSUFGQkRrWU44QUlnQVVFQmFpRUJJQTFCQVdvaURTQUNSdzBBQ3lBQUlCWTJBZ0FNbGdNTFFjd0FJUkFnQVNJTklBSkdEWlVESUFJZ0RXc2dBQ2dDQUNJQmFpRVdJQTBnQVd0QkQyb2hGd05BSUEwdEFBQWlGRUVnY2lBVUlCUkJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkJ3TUtBZ0FCcUxRQUFSdzM3QWdKQUlBRkJEMGNOQUVFRElRRU04UUlMSUFGQkFXb2hBU0FOUVFGcUlnMGdBa2NOQUFzZ0FDQVdOZ0lBREpVREMwSE5BQ0VRSUFFaURTQUNSZzJVQXlBQ0lBMXJJQUFvQWdBaUFXb2hGaUFOSUFGclFRVnFJUmNEUUNBTkxRQUFJaFJCSUhJZ0ZDQVVRYjkvYWtIL0FYRkJHa2tiUWY4QmNTQUJRZERDZ0lBQWFpMEFBRWNOK2dJQ1FDQUJRUVZIRFFCQkJDRUJEUEFDQ3lBQlFRRnFJUUVnRFVFQmFpSU5JQUpIRFFBTElBQWdGallDQUF5VUF3c0NRQ0FCSWcwZ0FrY05BRUhPQUNFUURKUURDd0pBQWtBQ1FBSkFJQTB0QUFBaUFVRWdjaUFCSUFGQnYzOXFRZjhCY1VFYVNSdEIvd0Z4UVoxL2FnNFRBUDBDL1FMOUF2MEMvUUw5QXYwQy9RTDlBdjBDL1FMOUFnSDlBdjBDL1FJQ0EvMENDeUFOUVFGcUlRRkJ3UUFoRUF6OUFnc2dEVUVCYWlFQlFjSUFJUkFNL0FJTElBMUJBV29oQVVIREFDRVFEUHNDQ3lBTlFRRnFJUUZCeEFBaEVBejZBZ3NDUUNBQklnRWdBa1lOQUNBQVFZMkFnSUFBTmdJSUlBQWdBVFlDQkNBQklRRkJ4UUFoRUF6NkFndEJ6d0FoRUF5U0F3c2dFQ0VCQWtBQ1FDQVFMUUFBUVhacURnUUJxQUtvQWdDb0Fnc2dFRUVCYWlFQkMwRW5JUkFNK0FJTEFrQWdBU0lCSUFKSERRQkIwUUFoRUF5UkF3c0NRQ0FCTFFBQVFTQkdEUUFnQVNFQkRJMEJDeUFCUVFGcUlRRWdBQzBBTFVFQmNVVU54d0VnQVNFQkRJd0JDeUFCSWhjZ0FrY055QUZCMGdBaEVBeVBBd3RCMHdBaEVDQUJJaFFnQWtZTmpnTWdBaUFVYXlBQUtBSUFJZ0ZxSVJZZ0ZDQUJhMEVCYWlFWEEwQWdGQzBBQUNBQlFkYkNnSUFBYWkwQUFFY056QUVnQVVFQlJnM0hBU0FCUVFGcUlRRWdGRUVCYWlJVUlBSkhEUUFMSUFBZ0ZqWUNBQXlPQXdzQ1FDQUJJZ0VnQWtjTkFFSFZBQ0VRREk0REN5QUJMUUFBUVFwSERjd0JJQUZCQVdvaEFRekhBUXNDUUNBQklnRWdBa2NOQUVIV0FDRVFESTBEQ3dKQUFrQWdBUzBBQUVGMmFnNEVBTTBCelFFQnpRRUxJQUZCQVdvaEFRekhBUXNnQVVFQmFpRUJRY29BSVJBTTh3SUxJQUFnQVNJQklBSVFyb0NBZ0FBaUVBM0xBU0FCSVFGQnpRQWhFQXp5QWdzZ0FDMEFLVUVpUmcyRkF3eW1BZ3NDUUNBQklnRWdBa2NOQUVIYkFDRVFESW9EQzBFQUlSUkJBU0VYUVFFaEZrRUFJUkFDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnQVMwQUFFRlFhZzRLMUFIVEFRQUJBZ01FQlFZSTFRRUxRUUloRUF3R0MwRURJUkFNQlF0QkJDRVFEQVFMUVFVaEVBd0RDMEVHSVJBTUFndEJCeUVRREFFTFFRZ2hFQXRCQUNFWFFRQWhGa0VBSVJRTXpBRUxRUWtoRUVFQklSUkJBQ0VYUVFBaEZnekxBUXNDUUNBQklnRWdBa2NOQUVIZEFDRVFESWtEQ3lBQkxRQUFRUzVIRGN3QklBRkJBV29oQVF5bUFnc2dBU0lCSUFKSERjd0JRZDhBSVJBTWh3TUxBa0FnQVNJQklBSkdEUUFnQUVHT2dJQ0FBRFlDQ0NBQUlBRTJBZ1FnQVNFQlFkQUFJUkFNN2dJTFFlQUFJUkFNaGdNTFFlRUFJUkFnQVNJQklBSkdEWVVESUFJZ0FXc2dBQ2dDQUNJVWFpRVdJQUVnRkd0QkEyb2hGd05BSUFFdEFBQWdGRUhpd29DQUFHb3RBQUJIRGMwQklCUkJBMFlOekFFZ0ZFRUJhaUVVSUFGQkFXb2lBU0FDUncwQUN5QUFJQlkyQWdBTWhRTUxRZUlBSVJBZ0FTSUJJQUpHRFlRRElBSWdBV3NnQUNnQ0FDSVVhaUVXSUFFZ0ZHdEJBbW9oRndOQUlBRXRBQUFnRkVIbXdvQ0FBR290QUFCSERjd0JJQlJCQWtZTnpnRWdGRUVCYWlFVUlBRkJBV29pQVNBQ1J3MEFDeUFBSUJZMkFnQU1oQU1MUWVNQUlSQWdBU0lCSUFKR0RZTURJQUlnQVdzZ0FDZ0NBQ0lVYWlFV0lBRWdGR3RCQTJvaEZ3TkFJQUV0QUFBZ0ZFSHB3b0NBQUdvdEFBQkhEY3NCSUJSQkEwWU56Z0VnRkVFQmFpRVVJQUZCQVdvaUFTQUNSdzBBQ3lBQUlCWTJBZ0FNZ3dNTEFrQWdBU0lCSUFKSERRQkI1UUFoRUF5REF3c2dBQ0FCUVFGcUlnRWdBaENvZ0lDQUFDSVFEYzBCSUFFaEFVSFdBQ0VRRE9rQ0N3SkFJQUVpQVNBQ1JnMEFBMEFDUUNBQkxRQUFJaEJCSUVZTkFBSkFBa0FDUUNBUVFiaC9hZzRMQUFIUEFjOEJ6d0hQQWM4Qnp3SFBBYzhCQXM4QkN5QUJRUUZxSVFGQjBnQWhFQXp0QWdzZ0FVRUJhaUVCUWRNQUlSQU03QUlMSUFGQkFXb2hBVUhVQUNFUURPc0NDeUFCUVFGcUlnRWdBa2NOQUF0QjVBQWhFQXlDQXd0QjVBQWhFQXlCQXdzRFFBSkFJQUV0QUFCQjhNS0FnQUJxTFFBQUloQkJBVVlOQUNBUVFYNXFEZ1BQQWRBQjBRSFNBUXNnQVVFQmFpSUJJQUpIRFFBTFFlWUFJUkFNZ0FNTEFrQWdBU0lCSUFKR0RRQWdBVUVCYWlFQkRBTUxRZWNBSVJBTS93SUxBMEFDUUNBQkxRQUFRZkRFZ0lBQWFpMEFBQ0lRUVFGR0RRQUNRQ0FRUVg1cURnVFNBZE1CMUFFQTFRRUxJQUVoQVVIWEFDRVFET2NDQ3lBQlFRRnFJZ0VnQWtjTkFBdEI2QUFoRUF6K0Fnc0NRQ0FCSWdFZ0FrY05BRUhwQUNFUURQNENDd0pBSUFFdEFBQWlFRUYyYWc0YXVnSFZBZFVCdkFIVkFkVUIxUUhWQWRVQjFRSFZBZFVCMVFIVkFkVUIxUUhWQWRVQjFRSFZBZFVCMVFIS0FkVUIxUUVBMHdFTElBRkJBV29oQVF0QkJpRVFET01DQ3dOQUFrQWdBUzBBQUVId3hvQ0FBR290QUFCQkFVWU5BQ0FCSVFFTW5nSUxJQUZCQVdvaUFTQUNSdzBBQzBIcUFDRVFEUHNDQ3dKQUlBRWlBU0FDUmcwQUlBRkJBV29oQVF3REMwSHJBQ0VRRFBvQ0N3SkFJQUVpQVNBQ1J3MEFRZXdBSVJBTStnSUxJQUZCQVdvaEFRd0JDd0pBSUFFaUFTQUNSdzBBUWUwQUlSQU0rUUlMSUFGQkFXb2hBUXRCQkNFUURONENDd0pBSUFFaUZDQUNSdzBBUWU0QUlSQU05d0lMSUJRaEFRSkFBa0FDUUNBVUxRQUFRZkRJZ0lBQWFpMEFBRUYvYWc0SDFBSFZBZFlCQUp3Q0FRTFhBUXNnRkVFQmFpRUJEQW9MSUJSQkFXb2hBUXpOQVF0QkFDRVFJQUJCQURZQ0hDQUFRWnVTZ0lBQU5nSVFJQUJCQnpZQ0RDQUFJQlJCQVdvMkFoUU05Z0lMQWtBRFFBSkFJQUV0QUFCQjhNaUFnQUJxTFFBQUloQkJCRVlOQUFKQUFrQWdFRUYvYWc0SDBnSFRBZFFCMlFFQUJBSFpBUXNnQVNFQlFkb0FJUkFNNEFJTElBRkJBV29oQVVIY0FDRVFETjhDQ3lBQlFRRnFJZ0VnQWtjTkFBdEI3d0FoRUF6MkFnc2dBVUVCYWlFQkRNc0JDd0pBSUFFaUZDQUNSdzBBUWZBQUlSQU05UUlMSUJRdEFBQkJMMGNOMUFFZ0ZFRUJhaUVCREFZTEFrQWdBU0lVSUFKSERRQkI4UUFoRUF6MEFnc0NRQ0FVTFFBQUlnRkJMMGNOQUNBVVFRRnFJUUZCM1FBaEVBemJBZ3NnQVVGMmFpSUVRUlpMRGRNQlFRRWdCSFJCaVlDQUFuRkZEZE1CRE1vQ0N3SkFJQUVpQVNBQ1JnMEFJQUZCQVdvaEFVSGVBQ0VRRE5vQ0MwSHlBQ0VRRFBJQ0N3SkFJQUVpRkNBQ1J3MEFRZlFBSVJBTThnSUxJQlFoQVFKQUlCUXRBQUJCOE15QWdBQnFMUUFBUVg5cURnUEpBcFFDQU5RQkMwSGhBQ0VRRE5nQ0N3SkFJQUVpRkNBQ1JnMEFBMEFDUUNBVUxRQUFRZkRLZ0lBQWFpMEFBQ0lCUVFOR0RRQUNRQ0FCUVg5cURnTExBZ0RWQVFzZ0ZDRUJRZDhBSVJBTTJnSUxJQlJCQVdvaUZDQUNSdzBBQzBIekFDRVFEUEVDQzBIekFDRVFEUEFDQ3dKQUlBRWlBU0FDUmcwQUlBQkJqNENBZ0FBMkFnZ2dBQ0FCTmdJRUlBRWhBVUhnQUNFUUROY0NDMEgxQUNFUURPOENDd0pBSUFFaUFTQUNSdzBBUWZZQUlSQU03d0lMSUFCQmo0Q0FnQUEyQWdnZ0FDQUJOZ0lFSUFFaEFRdEJBeUVRRE5RQ0N3TkFJQUV0QUFCQklFY053d0lnQVVFQmFpSUJJQUpIRFFBTFFmY0FJUkFNN0FJTEFrQWdBU0lCSUFKSERRQkIrQUFoRUF6c0Fnc2dBUzBBQUVFZ1J3M09BU0FCUVFGcUlRRU03d0VMSUFBZ0FTSUJJQUlRcklDQWdBQWlFQTNPQVNBQklRRU1qZ0lMQWtBZ0FTSUVJQUpIRFFCQitnQWhFQXpxQWdzZ0JDMEFBRUhNQUVjTjBRRWdCRUVCYWlFQlFSTWhFQXpQQVFzQ1FDQUJJZ1FnQWtjTkFFSDdBQ0VRRE9rQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUVZxSVJBRFFDQUVMUUFBSUFGQjhNNkFnQUJxTFFBQVJ3M1FBU0FCUVFWR0RjNEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRZnNBSVJBTTZBSUxBa0FnQVNJRUlBSkhEUUJCL0FBaEVBem9BZ3NDUUFKQUlBUXRBQUJCdlg5cURnd0EwUUhSQWRFQjBRSFJBZEVCMFFIUkFkRUIwUUVCMFFFTElBUkJBV29oQVVIbUFDRVFETThDQ3lBRVFRRnFJUUZCNXdBaEVBek9BZ3NDUUNBQklnUWdBa2NOQUVIOUFDRVFET2NDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRSnFJUkFDUUFOQUlBUXRBQUFnQVVIdHo0Q0FBR290QUFCSERjOEJJQUZCQWtZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSDlBQ0VRRE9jQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVJBaEVBek1BUXNDUUNBQklnUWdBa2NOQUVIK0FDRVFET1lDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRVnFJUkFDUUFOQUlBUXRBQUFnQVVIMnpvQ0FBR290QUFCSERjNEJJQUZCQlVZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSCtBQ0VRRE9ZQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVJZaEVBekxBUXNDUUNBQklnUWdBa2NOQUVIL0FDRVFET1VDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRTnFJUkFDUUFOQUlBUXRBQUFnQVVIOHpvQ0FBR290QUFCSERjMEJJQUZCQTBZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSC9BQ0VRRE9VQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVFVaEVBektBUXNDUUNBQklnUWdBa2NOQUVHQUFTRVFET1FDQ3lBRUxRQUFRZGtBUnczTEFTQUVRUUZxSVFGQkNDRVFETWtCQ3dKQUlBRWlCQ0FDUncwQVFZRUJJUkFNNHdJTEFrQUNRQ0FFTFFBQVFiSi9hZzREQU13QkFjd0JDeUFFUVFGcUlRRkI2d0FoRUF6S0Fnc2dCRUVCYWlFQlFld0FJUkFNeVFJTEFrQWdBU0lFSUFKSERRQkJnZ0VoRUF6aUFnc0NRQUpBSUFRdEFBQkJ1SDlxRGdnQXl3SExBY3NCeXdITEFjc0JBY3NCQ3lBRVFRRnFJUUZCNmdBaEVBekpBZ3NnQkVFQmFpRUJRZTBBSVJBTXlBSUxBa0FnQVNJRUlBSkhEUUJCZ3dFaEVBemhBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSQWdCQ0FCYTBFQ2FpRVVBa0FEUUNBRUxRQUFJQUZCZ00rQWdBQnFMUUFBUnczSkFTQUJRUUpHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQkEyQWdCQmd3RWhFQXpoQWd0QkFDRVFJQUJCQURZQ0FDQVVRUUZxSVFFTXhnRUxBa0FnQVNJRUlBSkhEUUJCaEFFaEVBemdBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFRWFpRVFBa0FEUUNBRUxRQUFJQUZCZzgrQWdBQnFMUUFBUnczSUFTQUJRUVJHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQmhBRWhFQXpnQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVqSVJBTXhRRUxBa0FnQVNJRUlBSkhEUUJCaFFFaEVBemZBZ3NDUUFKQUlBUXRBQUJCdEg5cURnZ0F5QUhJQWNnQnlBSElBY2dCQWNnQkN5QUVRUUZxSVFGQjd3QWhFQXpHQWdzZ0JFRUJhaUVCUWZBQUlSQU14UUlMQWtBZ0FTSUVJQUpIRFFCQmhnRWhFQXplQWdzZ0JDMEFBRUhGQUVjTnhRRWdCRUVCYWlFQkRJTUNDd0pBSUFFaUJDQUNSdzBBUVljQklSQU0zUUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkEyb2hFQUpBQTBBZ0JDMEFBQ0FCUVlqUGdJQUFhaTBBQUVjTnhRRWdBVUVEUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFZY0JJUkFNM1FJTElBQkJBRFlDQUNBUVFRRnFJUUZCTFNFUURNSUJDd0pBSUFFaUJDQUNSdzBBUVlnQklSQU0zQUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkNHb2hFQUpBQTBBZ0JDMEFBQ0FCUWREUGdJQUFhaTBBQUVjTnhBRWdBVUVJUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFZZ0JJUkFNM0FJTElBQkJBRFlDQUNBUVFRRnFJUUZCS1NFUURNRUJDd0pBSUFFaUFTQUNSdzBBUVlrQklSQU0yd0lMUVFFaEVDQUJMUUFBUWQ4QVJ3M0FBU0FCUVFGcUlRRU1nUUlMQWtBZ0FTSUVJQUpIRFFCQmlnRWhFQXphQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQTBBZ0JDMEFBQ0FCUVl6UGdJQUFhaTBBQUVjTndRRWdBVUVCUmcydkFpQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR0tBU0VRRE5rQ0N3SkFJQUVpQkNBQ1J3MEFRWXNCSVJBTTJRSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQW1vaEVBSkFBMEFnQkMwQUFDQUJRWTdQZ0lBQWFpMEFBRWNOd1FFZ0FVRUNSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVlzQklSQU0yUUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJBaUVRREw0QkN3SkFJQUVpQkNBQ1J3MEFRWXdCSVJBTTJBSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRZkRQZ0lBQWFpMEFBRWNOd0FFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVl3QklSQU0yQUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJIeUVRREwwQkN3SkFJQUVpQkNBQ1J3MEFRWTBCSVJBTTF3SUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRZkxQZ0lBQWFpMEFBRWNOdndFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVkwQklSQU0xd0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJDU0VRREx3QkN3SkFJQUVpQkNBQ1J3MEFRWTRCSVJBTTFnSUxBa0FDUUNBRUxRQUFRYmQvYWc0SEFMOEJ2d0cvQWI4QnZ3RUJ2d0VMSUFSQkFXb2hBVUg0QUNFUURMMENDeUFFUVFGcUlRRkIrUUFoRUF5OEFnc0NRQ0FCSWdRZ0FrY05BRUdQQVNFUUROVUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUdSejRDQUFHb3RBQUJIRGIwQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHUEFTRVFETlVDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUmdoRUF5NkFRc0NRQ0FCSWdRZ0FrY05BRUdRQVNFUUROUUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUdYejRDQUFHb3RBQUJIRGJ3QklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHUUFTRVFETlFDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUmNoRUF5NUFRc0NRQ0FCSWdRZ0FrY05BRUdSQVNFUUROTUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFacUlSQUNRQU5BSUFRdEFBQWdBVUdhejRDQUFHb3RBQUJIRGJzQklBRkJCa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHUkFTRVFETk1DQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUlVoRUF5NEFRc0NRQ0FCSWdRZ0FrY05BRUdTQVNFUUROSUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUdoejRDQUFHb3RBQUJIRGJvQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHU0FTRVFETklDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUjRoRUF5M0FRc0NRQ0FCSWdRZ0FrY05BRUdUQVNFUURORUNDeUFFTFFBQVFjd0FSdzI0QVNBRVFRRnFJUUZCQ2lFUURMWUJDd0pBSUFRZ0FrY05BRUdVQVNFUUROQUNDd0pBQWtBZ0JDMEFBRUcvZjJvT0R3QzVBYmtCdVFHNUFia0J1UUc1QWJrQnVRRzVBYmtCdVFHNUFRRzVBUXNnQkVFQmFpRUJRZjRBSVJBTXR3SUxJQVJCQVdvaEFVSC9BQ0VRRExZQ0N3SkFJQVFnQWtjTkFFR1ZBU0VRRE04Q0N3SkFBa0FnQkMwQUFFRy9mMm9PQXdDNEFRRzRBUXNnQkVFQmFpRUJRZjBBSVJBTXRnSUxJQVJCQVdvaEJFR0FBU0VRRExVQ0N3SkFJQVFnQWtjTkFFR1dBU0VRRE00Q0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUZxSVJBQ1FBTkFJQVF0QUFBZ0FVR256NENBQUdvdEFBQkhEYllCSUFGQkFVWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdXQVNFUURNNENDeUFBUVFBMkFnQWdFRUVCYWlFQlFRc2hFQXl6QVFzQ1FDQUVJQUpIRFFCQmx3RWhFQXpOQWdzQ1FBSkFBa0FDUUNBRUxRQUFRVk5xRGlNQXVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCdUFHNEFRRzRBYmdCdUFHNEFiZ0JBcmdCdUFHNEFRTzRBUXNnQkVFQmFpRUJRZnNBSVJBTXRnSUxJQVJCQVdvaEFVSDhBQ0VRRExVQ0N5QUVRUUZxSVFSQmdRRWhFQXkwQWdzZ0JFRUJhaUVFUVlJQklSQU1zd0lMQWtBZ0JDQUNSdzBBUVpnQklSQU16QUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJHb2hFQUpBQTBBZ0JDMEFBQ0FCUWFuUGdJQUFhaTBBQUVjTnRBRWdBVUVFUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFaZ0JJUkFNekFJTElBQkJBRFlDQUNBUVFRRnFJUUZCR1NFUURMRUJDd0pBSUFRZ0FrY05BRUdaQVNFUURNc0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUd1ejRDQUFHb3RBQUJIRGJNQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHWkFTRVFETXNDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUVloRUF5d0FRc0NRQ0FFSUFKSERRQkJtZ0VoRUF6S0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVCYWlFUUFrQURRQ0FFTFFBQUlBRkJ0TStBZ0FCcUxRQUFSdzJ5QVNBQlFRRkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCbWdFaEVBektBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRWNJUkFNcndFTEFrQWdCQ0FDUncwQVFac0JJUkFNeVFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBV29oRUFKQUEwQWdCQzBBQUNBQlFiYlBnSUFBYWkwQUFFY05zUUVnQVVFQlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWnNCSVJBTXlRSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkp5RVFESzRCQ3dKQUlBUWdBa2NOQUVHY0FTRVFETWdDQ3dKQUFrQWdCQzBBQUVHc2Yyb09BZ0FCc1FFTElBUkJBV29oQkVHR0FTRVFESzhDQ3lBRVFRRnFJUVJCaHdFaEVBeXVBZ3NDUUNBRUlBSkhEUUJCblFFaEVBekhBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFQmFpRVFBa0FEUUNBRUxRQUFJQUZCdU0rQWdBQnFMUUFBUncydkFTQUJRUUZHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQm5RRWhFQXpIQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVtSVJBTXJBRUxBa0FnQkNBQ1J3MEFRWjRCSVJBTXhnSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRYnJQZ0lBQWFpMEFBRWNOcmdFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVo0QklSQU14Z0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJBeUVRREtzQkN3SkFJQVFnQWtjTkFFR2ZBU0VRRE1VQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUpxSVJBQ1FBTkFJQVF0QUFBZ0FVSHR6NENBQUdvdEFBQkhEYTBCSUFGQkFrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdmQVNFUURNVUNDeUFBUVFBMkFnQWdFRUVCYWlFQlFRd2hFQXlxQVFzQ1FDQUVJQUpIRFFCQm9BRWhFQXpFQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRURhaUVRQWtBRFFDQUVMUUFBSUFGQnZNK0FnQUJxTFFBQVJ3MnNBU0FCUVFOR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJvQUVoRUF6RUFnc2dBRUVBTmdJQUlCQkJBV29oQVVFTklSQU1xUUVMQWtBZ0JDQUNSdzBBUWFFQklSQU13d0lMQWtBQ1FDQUVMUUFBUWJwL2FnNExBS3dCckFHc0Fhd0JyQUdzQWF3QnJBR3NBUUdzQVFzZ0JFRUJhaUVFUVlzQklSQU1xZ0lMSUFSQkFXb2hCRUdNQVNFUURLa0NDd0pBSUFRZ0FrY05BRUdpQVNFUURNSUNDeUFFTFFBQVFkQUFSdzJwQVNBRVFRRnFJUVFNNlFFTEFrQWdCQ0FDUncwQVFhTUJJUkFNd1FJTEFrQUNRQ0FFTFFBQVFiZC9hZzRIQWFvQnFnR3FBYW9CcWdFQXFnRUxJQVJCQVdvaEJFR09BU0VRREtnQ0N5QUVRUUZxSVFGQklpRVFES1lCQ3dKQUlBUWdBa2NOQUVHa0FTRVFETUFDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRRnFJUkFDUUFOQUlBUXRBQUFnQVVIQXo0Q0FBR290QUFCSERhZ0JJQUZCQVVZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR2tBU0VRRE1BQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVIwaEVBeWxBUXNDUUNBRUlBSkhEUUJCcFFFaEVBeS9BZ3NDUUFKQUlBUXRBQUJCcm45cURnTUFxQUVCcUFFTElBUkJBV29oQkVHUUFTRVFES1lDQ3lBRVFRRnFJUUZCQkNFUURLUUJDd0pBSUFRZ0FrY05BRUdtQVNFUURMNENDd0pBQWtBQ1FBSkFBa0FnQkMwQUFFRy9mMm9PRlFDcUFhb0JxZ0dxQWFvQnFnR3FBYW9CcWdHcUFRR3FBYW9CQXFvQnFnRURxZ0dxQVFTcUFRc2dCRUVCYWlFRVFZZ0JJUkFNcUFJTElBUkJBV29oQkVHSkFTRVFES2NDQ3lBRVFRRnFJUVJCaWdFaEVBeW1BZ3NnQkVFQmFpRUVRWThCSVJBTXBRSUxJQVJCQVdvaEJFR1JBU0VRREtRQ0N3SkFJQVFnQWtjTkFFR25BU0VRREwwQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUpxSVJBQ1FBTkFJQVF0QUFBZ0FVSHR6NENBQUdvdEFBQkhEYVVCSUFGQkFrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUduQVNFUURMMENDeUFBUVFBMkFnQWdFRUVCYWlFQlFSRWhFQXlpQVFzQ1FDQUVJQUpIRFFCQnFBRWhFQXk4QWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUNhaUVRQWtBRFFDQUVMUUFBSUFGQndzK0FnQUJxTFFBQVJ3MmtBU0FCUVFKR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJxQUVoRUF5OEFnc2dBRUVBTmdJQUlCQkJBV29oQVVFc0lSQU1vUUVMQWtBZ0JDQUNSdzBBUWFrQklSQU11d0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJHb2hFQUpBQTBBZ0JDMEFBQ0FCUWNYUGdJQUFhaTBBQUVjTm93RWdBVUVFUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFha0JJUkFNdXdJTElBQkJBRFlDQUNBUVFRRnFJUUZCS3lFUURLQUJDd0pBSUFRZ0FrY05BRUdxQVNFUURMb0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUhLejRDQUFHb3RBQUJIRGFJQklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHcUFTRVFETG9DQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUlFoRUF5ZkFRc0NRQ0FFSUFKSERRQkJxd0VoRUF5NUFnc0NRQUpBQWtBQ1FDQUVMUUFBUWI1L2FnNFBBQUVDcEFHa0FhUUJwQUdrQWFRQnBBR2tBYVFCcEFHa0FRT2tBUXNnQkVFQmFpRUVRWk1CSVJBTW9nSUxJQVJCQVdvaEJFR1VBU0VRREtFQ0N5QUVRUUZxSVFSQmxRRWhFQXlnQWdzZ0JFRUJhaUVFUVpZQklSQU1ud0lMQWtBZ0JDQUNSdzBBUWF3QklSQU11QUlMSUFRdEFBQkJ4UUJIRFo4QklBUkJBV29oQkF6Z0FRc0NRQ0FFSUFKSERRQkJyUUVoRUF5M0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVDYWlFUUFrQURRQ0FFTFFBQUlBRkJ6YytBZ0FCcUxRQUFSdzJmQVNBQlFRSkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCclFFaEVBeTNBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRU9JUkFNbkFFTEFrQWdCQ0FDUncwQVFhNEJJUkFNdGdJTElBUXRBQUJCMEFCSERaMEJJQVJCQVdvaEFVRWxJUkFNbXdFTEFrQWdCQ0FDUncwQVFhOEJJUkFNdFFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJDR29oRUFKQUEwQWdCQzBBQUNBQlFkRFBnSUFBYWkwQUFFY05uUUVnQVVFSVJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRYThCSVJBTXRRSUxJQUJCQURZQ0FDQVFRUUZxSVFGQktpRVFESm9CQ3dKQUlBUWdBa2NOQUVHd0FTRVFETFFDQ3dKQUFrQWdCQzBBQUVHcmYyb09Dd0NkQVowQm5RR2RBWjBCblFHZEFaMEJuUUVCblFFTElBUkJBV29oQkVHYUFTRVFESnNDQ3lBRVFRRnFJUVJCbXdFaEVBeWFBZ3NDUUNBRUlBSkhEUUJCc1FFaEVBeXpBZ3NDUUFKQUlBUXRBQUJCdjM5cURoUUFuQUdjQVp3Qm5BR2NBWndCbkFHY0Fad0JuQUdjQVp3Qm5BR2NBWndCbkFHY0Fad0JBWndCQ3lBRVFRRnFJUVJCbVFFaEVBeWFBZ3NnQkVFQmFpRUVRWndCSVJBTW1RSUxBa0FnQkNBQ1J3MEFRYklCSVJBTXNnSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQTJvaEVBSkFBMEFnQkMwQUFDQUJRZG5QZ0lBQWFpMEFBRWNObWdFZ0FVRURSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWJJQklSQU1zZ0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJJU0VRREpjQkN3SkFJQVFnQWtjTkFFR3pBU0VRRExFQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUVpxSVJBQ1FBTkFJQVF0QUFBZ0FVSGR6NENBQUdvdEFBQkhEWmtCSUFGQkJrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUd6QVNFUURMRUNDeUFBUVFBMkFnQWdFRUVCYWlFQlFSb2hFQXlXQVFzQ1FDQUVJQUpIRFFCQnRBRWhFQXl3QWdzQ1FBSkFBa0FnQkMwQUFFRzdmMm9PRVFDYUFab0JtZ0dhQVpvQm1nR2FBWm9CbWdFQm1nR2FBWm9CbWdHYUFRS2FBUXNnQkVFQmFpRUVRWjBCSVJBTW1BSUxJQVJCQVdvaEJFR2VBU0VRREpjQ0N5QUVRUUZxSVFSQm53RWhFQXlXQWdzQ1FDQUVJQUpIRFFCQnRRRWhFQXl2QWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUZhaUVRQWtBRFFDQUVMUUFBSUFGQjVNK0FnQUJxTFFBQVJ3MlhBU0FCUVFWR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJ0UUVoRUF5dkFnc2dBRUVBTmdJQUlCQkJBV29oQVVFb0lSQU1sQUVMQWtBZ0JDQUNSdzBBUWJZQklSQU1yZ0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFtb2hFQUpBQTBBZ0JDMEFBQ0FCUWVyUGdJQUFhaTBBQUVjTmxnRWdBVUVDUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFiWUJJUkFNcmdJTElBQkJBRFlDQUNBUVFRRnFJUUZCQnlFUURKTUJDd0pBSUFRZ0FrY05BRUczQVNFUURLMENDd0pBQWtBZ0JDMEFBRUc3ZjJvT0RnQ1dBWllCbGdHV0FaWUJsZ0dXQVpZQmxnR1dBWllCbGdFQmxnRUxJQVJCQVdvaEJFR2hBU0VRREpRQ0N5QUVRUUZxSVFSQm9nRWhFQXlUQWdzQ1FDQUVJQUpIRFFCQnVBRWhFQXlzQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUNhaUVRQWtBRFFDQUVMUUFBSUFGQjdjK0FnQUJxTFFBQVJ3MlVBU0FCUVFKR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJ1QUVoRUF5c0Fnc2dBRUVBTmdJQUlCQkJBV29oQVVFU0lSQU1rUUVMQWtBZ0JDQUNSdzBBUWJrQklSQU1xd0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFXb2hFQUpBQTBBZ0JDMEFBQ0FCUWZEUGdJQUFhaTBBQUVjTmt3RWdBVUVCUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFia0JJUkFNcXdJTElBQkJBRFlDQUNBUVFRRnFJUUZCSUNFUURKQUJDd0pBSUFRZ0FrY05BRUc2QVNFUURLb0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFGcUlSQUNRQU5BSUFRdEFBQWdBVUh5ejRDQUFHb3RBQUJIRFpJQklBRkJBVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHNkFTRVFES29DQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUThoRUF5UEFRc0NRQ0FFSUFKSERRQkJ1d0VoRUF5cEFnc0NRQUpBSUFRdEFBQkJ0MzlxRGdjQWtnR1NBWklCa2dHU0FRR1NBUXNnQkVFQmFpRUVRYVVCSVJBTWtBSUxJQVJCQVdvaEJFR21BU0VRREk4Q0N3SkFJQVFnQWtjTkFFRzhBU0VRREtnQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUWRxSVJBQ1FBTkFJQVF0QUFBZ0FVSDB6NENBQUdvdEFBQkhEWkFCSUFGQkIwWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUc4QVNFUURLZ0NDeUFBUVFBMkFnQWdFRUVCYWlFQlFSc2hFQXlOQVFzQ1FDQUVJQUpIRFFCQnZRRWhFQXluQWdzQ1FBSkFBa0FnQkMwQUFFRytmMm9PRWdDUkFaRUJrUUdSQVpFQmtRR1JBWkVCa1FFQmtRR1JBWkVCa1FHUkFaRUJBcEVCQ3lBRVFRRnFJUVJCcEFFaEVBeVBBZ3NnQkVFQmFpRUVRYWNCSVJBTWpnSUxJQVJCQVdvaEJFR29BU0VRREkwQ0N3SkFJQVFnQWtjTkFFRytBU0VRREtZQ0N5QUVMUUFBUWM0QVJ3Mk5BU0FFUVFGcUlRUU16d0VMQWtBZ0JDQUNSdzBBUWI4QklSQU1wUUlMQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdCQzBBQUVHL2Yyb09GUUFCQWdPY0FRUUZCcHdCbkFHY0FRY0lDUW9MbkFFTURRNFBuQUVMSUFSQkFXb2hBVUhvQUNFUURKb0NDeUFFUVFGcUlRRkI2UUFoRUF5WkFnc2dCRUVCYWlFQlFlNEFJUkFNbUFJTElBUkJBV29oQVVIeUFDRVFESmNDQ3lBRVFRRnFJUUZCOHdBaEVBeVdBZ3NnQkVFQmFpRUJRZllBSVJBTWxRSUxJQVJCQVdvaEFVSDNBQ0VRREpRQ0N5QUVRUUZxSVFGQitnQWhFQXlUQWdzZ0JFRUJhaUVFUVlNQklSQU1rZ0lMSUFSQkFXb2hCRUdFQVNFUURKRUNDeUFFUVFGcUlRUkJoUUVoRUF5UUFnc2dCRUVCYWlFRVFaSUJJUkFNandJTElBUkJBV29oQkVHWUFTRVFESTRDQ3lBRVFRRnFJUVJCb0FFaEVBeU5BZ3NnQkVFQmFpRUVRYU1CSVJBTWpBSUxJQVJCQVdvaEJFR3FBU0VRRElzQ0N3SkFJQVFnQWtZTkFDQUFRWkNBZ0lBQU5nSUlJQUFnQkRZQ0JFR3JBU0VRRElzQ0MwSEFBU0VRREtNQ0N5QUFJQVVnQWhDcWdJQ0FBQ0lCRFlzQklBVWhBUXhjQ3dKQUlBWWdBa1lOQUNBR1FRRnFJUVVNalFFTFFjSUJJUkFNb1FJTEEwQUNRQ0FRTFFBQVFYWnFEZ1NNQVFBQWp3RUFDeUFRUVFGcUloQWdBa2NOQUF0Qnd3RWhFQXlnQWdzQ1FDQUhJQUpHRFFBZ0FFR1JnSUNBQURZQ0NDQUFJQWMyQWdRZ0J5RUJRUUVoRUF5SEFndEJ4QUVoRUF5ZkFnc0NRQ0FISUFKSERRQkJ4UUVoRUF5ZkFnc0NRQUpBSUFjdEFBQkJkbW9PQkFIT0FjNEJBTTRCQ3lBSFFRRnFJUVlNalFFTElBZEJBV29oQlF5SkFRc0NRQ0FISUFKSERRQkJ4Z0VoRUF5ZUFnc0NRQUpBSUFjdEFBQkJkbW9PRndHUEFZOEJBWThCandHUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0dQQVk4Qmp3R1BBUUNQQVFzZ0IwRUJhaUVIQzBHd0FTRVFESVFDQ3dKQUlBZ2dBa2NOQUVISUFTRVFESjBDQ3lBSUxRQUFRU0JIRFkwQklBQkJBRHNCTWlBSVFRRnFJUUZCc3dFaEVBeURBZ3NnQVNFWEFrQURRQ0FYSWdjZ0FrWU5BU0FITFFBQVFWQnFRZjhCY1NJUVFRcFBEY3dCQWtBZ0FDOEJNaUlVUVprelN3MEFJQUFnRkVFS2JDSVVPd0V5SUJCQi8vOERjeUFVUWY3L0EzRkpEUUFnQjBFQmFpRVhJQUFnRkNBUWFpSVFPd0V5SUJCQi8vOERjVUhvQjBrTkFRc0xRUUFoRUNBQVFRQTJBaHdnQUVIQmlZQ0FBRFlDRUNBQVFRMDJBZ3dnQUNBSFFRRnFOZ0lVREp3Q0MwSEhBU0VRREpzQ0N5QUFJQWdnQWhDdWdJQ0FBQ0lRUlEzS0FTQVFRUlZIRFl3QklBQkJ5QUUyQWh3Z0FDQUlOZ0lVSUFCQnlaZUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBeWFBZ3NDUUNBSklBSkhEUUJCekFFaEVBeWFBZ3RCQUNFVVFRRWhGMEVCSVJaQkFDRVFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFJQWt0QUFCQlVHb09DcFlCbFFFQUFRSURCQVVHQ0pjQkMwRUNJUkFNQmd0QkF5RVFEQVVMUVFRaEVBd0VDMEVGSVJBTUF3dEJCaUVRREFJTFFRY2hFQXdCQzBFSUlSQUxRUUFoRjBFQUlSWkJBQ0VVREk0QkMwRUpJUkJCQVNFVVFRQWhGMEVBSVJZTWpRRUxBa0FnQ2lBQ1J3MEFRYzRCSVJBTW1RSUxJQW90QUFCQkxrY05qZ0VnQ2tFQmFpRUpETW9CQ3lBTElBSkhEWTRCUWRBQklSQU1sd0lMQWtBZ0N5QUNSZzBBSUFCQmpvQ0FnQUEyQWdnZ0FDQUxOZ0lFUWJjQklSQU0vZ0VMUWRFQklSQU1sZ0lMQWtBZ0JDQUNSdzBBUWRJQklSQU1sZ0lMSUFJZ0JHc2dBQ2dDQUNJUWFpRVVJQVFnRUd0QkJHb2hDd05BSUFRdEFBQWdFRUg4ejRDQUFHb3RBQUJIRFk0QklCQkJCRVlONlFFZ0VFRUJhaUVRSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQjBnRWhFQXlWQWdzZ0FDQU1JQUlRcklDQWdBQWlBUTJOQVNBTUlRRU11QUVMQWtBZ0JDQUNSdzBBUWRRQklSQU1sQUlMSUFJZ0JHc2dBQ2dDQUNJUWFpRVVJQVFnRUd0QkFXb2hEQU5BSUFRdEFBQWdFRUdCMElDQUFHb3RBQUJIRFk4QklCQkJBVVlOamdFZ0VFRUJhaUVRSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQjFBRWhFQXlUQWdzQ1FDQUVJQUpIRFFCQjFnRWhFQXlUQWdzZ0FpQUVheUFBS0FJQUloQnFJUlFnQkNBUWEwRUNhaUVMQTBBZ0JDMEFBQ0FRUVlQUWdJQUFhaTBBQUVjTmpnRWdFRUVDUmcyUUFTQVFRUUZxSVJBZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSFdBU0VRREpJQ0N3SkFJQVFnQWtjTkFFSFhBU0VRREpJQ0N3SkFBa0FnQkMwQUFFRzdmMm9PRUFDUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0dQQVk4QkFZOEJDeUFFUVFGcUlRUkJ1d0VoRUF6NUFRc2dCRUVCYWlFRVFid0JJUkFNK0FFTEFrQWdCQ0FDUncwQVFkZ0JJUkFNa1FJTElBUXRBQUJCeUFCSERZd0JJQVJCQVdvaEJBekVBUXNDUUNBRUlBSkdEUUFnQUVHUWdJQ0FBRFlDQ0NBQUlBUTJBZ1JCdmdFaEVBejNBUXRCMlFFaEVBeVBBZ3NDUUNBRUlBSkhEUUJCMmdFaEVBeVBBZ3NnQkMwQUFFSElBRVlOd3dFZ0FFRUJPZ0FvRExrQkN5QUFRUUk2QUM4Z0FDQUVJQUlRcG9DQWdBQWlFQTJOQVVIQ0FTRVFEUFFCQ3lBQUxRQW9RWDlxRGdLM0Fia0J1QUVMQTBBQ1FDQUVMUUFBUVhacURnUUFqZ0dPQVFDT0FRc2dCRUVCYWlJRUlBSkhEUUFMUWQwQklSQU1pd0lMSUFCQkFEb0FMeUFBTFFBdFFRUnhSUTJFQWdzZ0FFRUFPZ0F2SUFCQkFUb0FOQ0FCSVFFTWpBRUxJQkJCRlVZTjJnRWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFhZU9nSUFBTmdJUUlBQkJFallDREVFQUlSQU1pQUlMQWtBZ0FDQVFJQUlRdElDQWdBQWlCQTBBSUJBaEFReUJBZ3NDUUNBRVFSVkhEUUFnQUVFRE5nSWNJQUFnRURZQ0ZDQUFRYkNZZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNaUFJTElBQkJBRFlDSENBQUlCQTJBaFFnQUVHbmpvQ0FBRFlDRUNBQVFSSTJBZ3hCQUNFUURJY0NDeUFRUVJWR0RkWUJJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSGFqWUNBQURZQ0VDQUFRUlEyQWd4QkFDRVFESVlDQ3lBQUtBSUVJUmNnQUVFQU5nSUVJQkFnRWFkcUloWWhBU0FBSUJjZ0VDQVdJQlFiSWhBUXRZQ0FnQUFpRkVVTmpRRWdBRUVITmdJY0lBQWdFRFlDRkNBQUlCUTJBZ3hCQUNFUURJVUNDeUFBSUFBdkFUQkJnQUZ5T3dFd0lBRWhBUXRCS2lFUURPb0JDeUFRUVJWR0RkRUJJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR0RqSUNBQURZQ0VDQUFRUk0yQWd4QkFDRVFESUlDQ3lBUVFSVkdEYzhCSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUdhajRDQUFEWUNFQ0FBUVNJMkFneEJBQ0VRRElFQ0N5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRdDRDQWdBQWlFQTBBSUFGQkFXb2hBUXlOQVFzZ0FFRU1OZ0ljSUFBZ0VEWUNEQ0FBSUFGQkFXbzJBaFJCQUNFUURJQUNDeUFRUVJWR0Rjd0JJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR2FqNENBQURZQ0VDQUFRU0kyQWd4QkFDRVFEUDhCQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVF0NENBZ0FBaUVBMEFJQUZCQVdvaEFReU1BUXNnQUVFTk5nSWNJQUFnRURZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFA0QkN5QVFRUlZHRGNrQklBQkJBRFlDSENBQUlBRTJBaFFnQUVIR2pJQ0FBRFlDRUNBQVFTTTJBZ3hCQUNFUURQMEJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXVZQ0FnQUFpRUEwQUlBRkJBV29oQVF5TEFRc2dBRUVPTmdJY0lBQWdFRFlDRENBQUlBRkJBV28yQWhSQkFDRVFEUHdCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCd0pXQWdBQTJBaEFnQUVFQ05nSU1RUUFoRUF6N0FRc2dFRUVWUmczRkFTQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnhveUFnQUEyQWhBZ0FFRWpOZ0lNUVFBaEVBejZBUXNnQUVFUU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFEUGtCQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVF1WUNBZ0FBaUJBMEFJQUZCQVdvaEFRenhBUXNnQUVFUk5nSWNJQUFnQkRZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFBnQkN5QVFRUlZHRGNFQklBQkJBRFlDSENBQUlBRTJBaFFnQUVIR2pJQ0FBRFlDRUNBQVFTTTJBZ3hCQUNFUURQY0JDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXVZQ0FnQUFpRUEwQUlBRkJBV29oQVF5SUFRc2dBRUVUTmdJY0lBQWdFRFlDRENBQUlBRkJBV28yQWhSQkFDRVFEUFlCQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVF1WUNBZ0FBaUJBMEFJQUZCQVdvaEFRenRBUXNnQUVFVU5nSWNJQUFnQkRZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFBVQkN5QVFRUlZHRGIwQklBQkJBRFlDSENBQUlBRTJBaFFnQUVHYWo0Q0FBRFlDRUNBQVFTSTJBZ3hCQUNFUURQUUJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXQ0Q0FnQUFpRUEwQUlBRkJBV29oQVF5R0FRc2dBRUVXTmdJY0lBQWdFRFlDRENBQUlBRkJBV28yQWhSQkFDRVFEUE1CQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVF0NENBZ0FBaUJBMEFJQUZCQVdvaEFRenBBUXNnQUVFWE5nSWNJQUFnQkRZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFBJQkN5QUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnpaT0FnQUEyQWhBZ0FFRU1OZ0lNUVFBaEVBenhBUXRDQVNFUkN5QVFRUUZxSVFFQ1FDQUFLUU1nSWhKQy8vLy8vLy8vLy84UFZnMEFJQUFnRWtJRWhpQVJoRGNESUNBQklRRU1oQUVMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUd0aVlDQUFEWUNFQ0FBUVF3MkFneEJBQ0VRRE84QkN5QUFRUUEyQWh3Z0FDQVFOZ0lVSUFCQnpaT0FnQUEyQWhBZ0FFRU1OZ0lNUVFBaEVBenVBUXNnQUNnQ0JDRVhJQUJCQURZQ0JDQVFJQkduYWlJV0lRRWdBQ0FYSUJBZ0ZpQVVHeUlRRUxXQWdJQUFJaFJGRFhNZ0FFRUZOZ0ljSUFBZ0VEWUNGQ0FBSUJRMkFneEJBQ0VRRE8wQkN5QUFRUUEyQWh3Z0FDQVFOZ0lVSUFCQnFweUFnQUEyQWhBZ0FFRVBOZ0lNUVFBaEVBenNBUXNnQUNBUUlBSVF0SUNBZ0FBaUFRMEJJQkFoQVF0QkRpRVFETkVCQ3dKQUlBRkJGVWNOQUNBQVFRSTJBaHdnQUNBUU5nSVVJQUJCc0ppQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF6cUFRc2dBRUVBTmdJY0lBQWdFRFlDRkNBQVFhZU9nSUFBTmdJUUlBQkJFallDREVFQUlSQU02UUVMSUFGQkFXb2hFQUpBSUFBdkFUQWlBVUdBQVhGRkRRQUNRQ0FBSUJBZ0FoQzdnSUNBQUNJQkRRQWdFQ0VCREhBTElBRkJGVWNOdWdFZ0FFRUZOZ0ljSUFBZ0VEWUNGQ0FBUWZtWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTTZRRUxBa0FnQVVHZ0JIRkJvQVJIRFFBZ0FDMEFMVUVDY1EwQUlBQkJBRFlDSENBQUlCQTJBaFFnQUVHV2s0Q0FBRFlDRUNBQVFRUTJBZ3hCQUNFUURPa0JDeUFBSUJBZ0FoQzlnSUNBQUJvZ0VDRUJBa0FDUUFKQUFrQUNRQ0FBSUJBZ0FoQ3pnSUNBQUE0V0FnRUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBd1FMSUFCQkFUb0FMZ3NnQUNBQUx3RXdRY0FBY2pzQk1DQVFJUUVMUVNZaEVBelJBUXNnQUVFak5nSWNJQUFnRURZQ0ZDQUFRYVdXZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNNlFFTElBQkJBRFlDSENBQUlCQTJBaFFnQUVIVmk0Q0FBRFlDRUNBQVFSRTJBZ3hCQUNFUURPZ0JDeUFBTFFBdFFRRnhSUTBCUWNNQklSQU16Z0VMQWtBZ0RTQUNSZzBBQTBBQ1FDQU5MUUFBUVNCR0RRQWdEU0VCRE1RQkN5QU5RUUZxSWcwZ0FrY05BQXRCSlNFUURPY0JDMEVsSVJBTTVnRUxJQUFvQWdRaEJDQUFRUUEyQWdRZ0FDQUVJQTBRcjRDQWdBQWlCRVVOclFFZ0FFRW1OZ0ljSUFBZ0JEWUNEQ0FBSUExQkFXbzJBaFJCQUNFUURPVUJDeUFRUVJWR0Rhc0JJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSDlqWUNBQURZQ0VDQUFRUjAyQWd4QkFDRVFET1FCQ3lBQVFTYzJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNNHdFTElCQWhBVUVCSVJRQ1FBSkFBa0FDUUFKQUFrQUNRQ0FBTFFBc1FYNXFEZ2NHQlFVREFRSUFCUXNnQUNBQUx3RXdRUWh5T3dFd0RBTUxRUUloRkF3QkMwRUVJUlFMSUFCQkFUb0FMQ0FBSUFBdkFUQWdGSEk3QVRBTElCQWhBUXRCS3lFUURNb0JDeUFBUVFBMkFod2dBQ0FRTmdJVUlBQkJxNUtBZ0FBMkFoQWdBRUVMTmdJTVFRQWhFQXppQVFzZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWVHUGdJQUFOZ0lRSUFCQkNqWUNERUVBSVJBTTRRRUxJQUJCQURvQUxDQVFJUUVNdlFFTElCQWhBVUVCSVJRQ1FBSkFBa0FDUUFKQUlBQXRBQ3hCZTJvT0JBTUJBZ0FGQ3lBQUlBQXZBVEJCQ0hJN0FUQU1Bd3RCQWlFVURBRUxRUVFoRkFzZ0FFRUJPZ0FzSUFBZ0FDOEJNQ0FVY2pzQk1Bc2dFQ0VCQzBFcElSQU14UUVMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUh3bElDQUFEWUNFQ0FBUVFNMkFneEJBQ0VRRE4wQkN3SkFJQTR0QUFCQkRVY05BQ0FBS0FJRUlRRWdBRUVBTmdJRUFrQWdBQ0FCSUE0UXNZQ0FnQUFpQVEwQUlBNUJBV29oQVF4MUN5QUFRU3cyQWh3Z0FDQUJOZ0lNSUFBZ0RrRUJhallDRkVFQUlSQU0zUUVMSUFBdEFDMUJBWEZGRFFGQnhBRWhFQXpEQVFzQ1FDQU9JQUpIRFFCQkxTRVFETndCQ3dKQUFrQURRQUpBSUE0dEFBQkJkbW9PQkFJQUFBTUFDeUFPUVFGcUlnNGdBa2NOQUF0QkxTRVFETjBCQ3lBQUtBSUVJUUVnQUVFQU5nSUVBa0FnQUNBQklBNFFzWUNBZ0FBaUFRMEFJQTRoQVF4MEN5QUFRU3cyQWh3Z0FDQU9OZ0lVSUFBZ0FUWUNERUVBSVJBTTNBRUxJQUFvQWdRaEFTQUFRUUEyQWdRQ1FDQUFJQUVnRGhDeGdJQ0FBQ0lCRFFBZ0RrRUJhaUVCREhNTElBQkJMRFlDSENBQUlBRTJBZ3dnQUNBT1FRRnFOZ0lVUVFBaEVBemJBUXNnQUNnQ0JDRUVJQUJCQURZQ0JDQUFJQVFnRGhDeGdJQ0FBQ0lFRGFBQklBNGhBUXpPQVFzZ0VFRXNSdzBCSUFGQkFXb2hFRUVCSVFFQ1FBSkFBa0FDUUFKQUlBQXRBQ3hCZTJvT0JBTUJBZ1FBQ3lBUUlRRU1CQXRCQWlFQkRBRUxRUVFoQVFzZ0FFRUJPZ0FzSUFBZ0FDOEJNQ0FCY2pzQk1DQVFJUUVNQVFzZ0FDQUFMd0V3UVFoeU93RXdJQkFoQVF0Qk9TRVFETDhCQ3lBQVFRQTZBQ3dnQVNFQkMwRTBJUkFNdlFFTElBQWdBQzhCTUVFZ2Nqc0JNQ0FCSVFFTUFnc2dBQ2dDQkNFRUlBQkJBRFlDQkFKQUlBQWdCQ0FCRUxHQWdJQUFJZ1FOQUNBQklRRU14d0VMSUFCQk56WUNIQ0FBSUFFMkFoUWdBQ0FFTmdJTVFRQWhFQXpVQVFzZ0FFRUlPZ0FzSUFFaEFRdEJNQ0VRRExrQkN3SkFJQUF0QUNoQkFVWU5BQ0FCSVFFTUJBc2dBQzBBTFVFSWNVVU5rd0VnQVNFQkRBTUxJQUF0QURCQklIRU5sQUZCeFFFaEVBeTNBUXNDUUNBUElBSkdEUUFDUUFOQUFrQWdEeTBBQUVGUWFpSUJRZjhCY1VFS1NRMEFJQThoQVVFMUlSQU11Z0VMSUFBcEF5QWlFVUtacytiTW1iUG16QmxXRFFFZ0FDQVJRZ3ArSWhFM0F5QWdFU0FCclVML0FZTWlFa0ovaFZZTkFTQUFJQkVnRW53M0F5QWdEMEVCYWlJUElBSkhEUUFMUVRraEVBelJBUXNnQUNnQ0JDRUNJQUJCQURZQ0JDQUFJQUlnRDBFQmFpSUVFTEdBZ0lBQUlnSU5sUUVnQkNFQkRNTUJDMEU1SVJBTXp3RUxBa0FnQUM4Qk1DSUJRUWh4UlEwQUlBQXRBQ2hCQVVjTkFDQUFMUUF0UVFoeFJRMlFBUXNnQUNBQlFmZjdBM0ZCZ0FSeU93RXdJQThoQVF0Qk55RVFETFFCQ3lBQUlBQXZBVEJCRUhJN0FUQU1xd0VMSUJCQkZVWU5pd0VnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRZkNPZ0lBQU5nSVFJQUJCSERZQ0RFRUFJUkFNeXdFTElBQkJ3d0EyQWh3Z0FDQUJOZ0lNSUFBZ0RVRUJhallDRkVFQUlSQU15Z0VMQWtBZ0FTMEFBRUU2UncwQUlBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkN2Z0lDQUFDSVFEUUFnQVVFQmFpRUJER01MSUFCQnd3QTJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTXlnRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR3hrWUNBQURZQ0VDQUFRUW8yQWd4QkFDRVFETWtCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCb0ptQWdBQTJBaEFnQUVFZU5nSU1RUUFoRUF6SUFRc2dBRUVBTmdJQUN5QUFRWUFTT3dFcUlBQWdGMEVCYWlJQklBSVFxSUNBZ0FBaUVBMEJJQUVoQVF0Qnh3QWhFQXlzQVFzZ0VFRVZSdzJEQVNBQVFkRUFOZ0ljSUFBZ0FUWUNGQ0FBUWVPWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTXhBRUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDbmdJQ0FBQ0lRRFFBZ0FTRUJERjRMSUFCQjBnQTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNd3dFTElBQkJBRFlDSENBQUlCUTJBaFFnQUVIQnFJQ0FBRFlDRUNBQVFRYzJBZ3dnQUVFQU5nSUFRUUFoRUF6Q0FRc2dBQ2dDQkNFUUlBQkJBRFlDQkFKQUlBQWdFQ0FCRUtlQWdJQUFJaEFOQUNBQklRRU1YUXNnQUVIVEFEWUNIQ0FBSUFFMkFoUWdBQ0FRTmdJTVFRQWhFQXpCQVF0QkFDRVFJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR0FrWUNBQURZQ0VDQUFRUWsyQWd3TXdBRUxJQkJCRlVZTmZTQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQmxJMkFnQUEyQWhBZ0FFRWhOZ0lNUVFBaEVBeS9BUXRCQVNFV1FRQWhGMEVBSVJSQkFTRVFDeUFBSUJBNkFDc2dBVUVCYWlFQkFrQUNRQ0FBTFFBdFFSQnhEUUFDUUFKQUFrQWdBQzBBS2c0REFRQUNCQXNnRmtVTkF3d0NDeUFVRFFFTUFnc2dGMFVOQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFSzJBZ0lBQUloQU5BQ0FCSVFFTVhBc2dBRUhZQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeStBUXNnQUNnQ0JDRUVJQUJCQURZQ0JBSkFJQUFnQkNBQkVLMkFnSUFBSWdRTkFDQUJJUUVNclFFTElBQkIyUUEyQWh3Z0FDQUJOZ0lVSUFBZ0JEWUNERUVBSVJBTXZRRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDdGdJQ0FBQ0lFRFFBZ0FTRUJES3NCQ3lBQVFkb0FOZ0ljSUFBZ0FUWUNGQ0FBSUFRMkFneEJBQ0VRREx3QkN5QUFLQUlFSVFRZ0FFRUFOZ0lFQWtBZ0FDQUVJQUVRcllDQWdBQWlCQTBBSUFFaEFReXBBUXNnQUVIY0FEWUNIQ0FBSUFFMkFoUWdBQ0FFTmdJTVFRQWhFQXk3QVFzQ1FDQUJMUUFBUVZCcUloQkIvd0Z4UVFwUERRQWdBQ0FRT2dBcUlBRkJBV29oQVVIUEFDRVFES0lCQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVFyWUNBZ0FBaUJBMEFJQUVoQVF5bkFRc2dBRUhlQURZQ0hDQUFJQUUyQWhRZ0FDQUVOZ0lNUVFBaEVBeTZBUXNnQUVFQU5nSUFJQmRCQVdvaEFRSkFJQUF0QUNsQkkwOE5BQ0FCSVFFTVdRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFkT0pnSUFBTmdJUUlBQkJDRFlDREVFQUlSQU11UUVMSUFCQkFEWUNBQXRCQUNFUUlBQkJBRFlDSENBQUlBRTJBaFFnQUVHUXM0Q0FBRFlDRUNBQVFRZzJBZ3dNdHdFTElBQkJBRFlDQUNBWFFRRnFJUUVDUUNBQUxRQXBRU0ZIRFFBZ0FTRUJERllMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUdiaW9DQUFEWUNFQ0FBUVFnMkFneEJBQ0VRRExZQkN5QUFRUUEyQWdBZ0YwRUJhaUVCQWtBZ0FDMEFLU0lRUVYxcVFRdFBEUUFnQVNFQkRGVUxBa0FnRUVFR1N3MEFRUUVnRUhSQnlnQnhSUTBBSUFFaEFReFZDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWZlSmdJQUFOZ0lRSUFCQkNEWUNEQXkxQVFzZ0VFRVZSZzF4SUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUc1allDQUFEWUNFQ0FBUVJvMkFneEJBQ0VRRExRQkN5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRcDRDQWdBQWlFQTBBSUFFaEFReFVDeUFBUWVVQU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFETE1CQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVFwNENBZ0FBaUVBMEFJQUVoQVF4TkN5QUFRZElBTmdJY0lBQWdBVFlDRkNBQUlCQTJBZ3hCQUNFUURMSUJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXA0Q0FnQUFpRUEwQUlBRWhBUXhOQ3lBQVFkTUFOZ0ljSUFBZ0FUWUNGQ0FBSUJBMkFneEJBQ0VRRExFQkN5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRcDRDQWdBQWlFQTBBSUFFaEFReFJDeUFBUWVVQU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFETEFCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCeG9xQWdBQTJBaEFnQUVFSE5nSU1RUUFoRUF5dkFRc2dBQ2dDQkNFUUlBQkJBRFlDQkFKQUlBQWdFQ0FCRUtlQWdJQUFJaEFOQUNBQklRRU1TUXNnQUVIU0FEWUNIQ0FBSUFFMkFoUWdBQ0FRTmdJTVFRQWhFQXl1QVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFS2VBZ0lBQUloQU5BQ0FCSVFFTVNRc2dBRUhUQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeXRBUXNnQUNnQ0JDRVFJQUJCQURZQ0JBSkFJQUFnRUNBQkVLZUFnSUFBSWhBTkFDQUJJUUVNVFFzZ0FFSGxBRFlDSENBQUlBRTJBaFFnQUNBUU5nSU1RUUFoRUF5c0FRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFkeUlnSUFBTmdJUUlBQkJCellDREVFQUlSQU1xd0VMSUJCQlAwY05BU0FCUVFGcUlRRUxRUVVoRUF5UUFRdEJBQ0VRSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUg5a29DQUFEWUNFQ0FBUVFjMkFnd01xQUVMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQ25nSUNBQUNJUURRQWdBU0VCREVJTElBQkIwZ0EyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTXB3RUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDbmdJQ0FBQ0lRRFFBZ0FTRUJERUlMSUFCQjB3QTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNcGdFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkNuZ0lDQUFDSVFEUUFnQVNFQkRFWUxJQUJCNVFBMkFod2dBQ0FCTmdJVUlBQWdFRFlDREVFQUlSQU1wUUVMSUFBb0FnUWhBU0FBUVFBMkFnUUNRQ0FBSUFFZ0ZCQ25nSUNBQUNJQkRRQWdGQ0VCREQ4TElBQkIwZ0EyQWh3Z0FDQVVOZ0lVSUFBZ0FUWUNERUVBSVJBTXBBRUxJQUFvQWdRaEFTQUFRUUEyQWdRQ1FDQUFJQUVnRkJDbmdJQ0FBQ0lCRFFBZ0ZDRUJERDhMSUFCQjB3QTJBaHdnQUNBVU5nSVVJQUFnQVRZQ0RFRUFJUkFNb3dFTElBQW9BZ1FoQVNBQVFRQTJBZ1FDUUNBQUlBRWdGQkNuZ0lDQUFDSUJEUUFnRkNFQkRFTUxJQUJCNVFBMkFod2dBQ0FVTmdJVUlBQWdBVFlDREVFQUlSQU1vZ0VMSUFCQkFEWUNIQ0FBSUJRMkFoUWdBRUhEajRDQUFEWUNFQ0FBUVFjMkFneEJBQ0VRREtFQkN5QUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnc0K0FnQUEyQWhBZ0FFRUhOZ0lNUVFBaEVBeWdBUXRCQUNFUUlBQkJBRFlDSENBQUlCUTJBaFFnQUVHTW5JQ0FBRFlDRUNBQVFRYzJBZ3dNbndFTElBQkJBRFlDSENBQUlCUTJBaFFnQUVHTW5JQ0FBRFlDRUNBQVFRYzJBZ3hCQUNFUURKNEJDeUFBUVFBMkFod2dBQ0FVTmdJVUlBQkIvcEdBZ0FBMkFoQWdBRUVITmdJTVFRQWhFQXlkQVFzZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVk2YmdJQUFOZ0lRSUFCQkJqWUNERUVBSVJBTW5BRUxJQkJCRlVZTlZ5QUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnpJNkFnQUEyQWhBZ0FFRWdOZ0lNUVFBaEVBeWJBUXNnQUVFQU5nSUFJQkJCQVdvaEFVRWtJUkFMSUFBZ0VEb0FLU0FBS0FJRUlSQWdBRUVBTmdJRUlBQWdFQ0FCRUt1QWdJQUFJaEFOVkNBQklRRU1QZ3NnQUVFQU5nSUFDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0JEWUNGQ0FBUWZHYmdJQUFOZ0lRSUFCQkJqWUNEQXlYQVFzZ0FVRVZSZzFRSUFCQkFEWUNIQ0FBSUFVMkFoUWdBRUh3aklDQUFEWUNFQ0FBUVJzMkFneEJBQ0VRREpZQkN5QUFLQUlFSVFVZ0FFRUFOZ0lFSUFBZ0JTQVFFS21BZ0lBQUlnVU5BU0FRUVFGcUlRVUxRYTBCSVJBTWV3c2dBRUhCQVRZQ0hDQUFJQVUyQWd3Z0FDQVFRUUZxTmdJVVFRQWhFQXlUQVFzZ0FDZ0NCQ0VHSUFCQkFEWUNCQ0FBSUFZZ0VCQ3BnSUNBQUNJR0RRRWdFRUVCYWlFR0MwR3VBU0VRREhnTElBQkJ3Z0UyQWh3Z0FDQUdOZ0lNSUFBZ0VFRUJhallDRkVFQUlSQU1rQUVMSUFCQkFEWUNIQ0FBSUFjMkFoUWdBRUdYaTRDQUFEWUNFQ0FBUVEwMkFneEJBQ0VRREk4QkN5QUFRUUEyQWh3Z0FDQUlOZ0lVSUFCQjQ1Q0FnQUEyQWhBZ0FFRUpOZ0lNUVFBaEVBeU9BUXNnQUVFQU5nSWNJQUFnQ0RZQ0ZDQUFRWlNOZ0lBQU5nSVFJQUJCSVRZQ0RFRUFJUkFNalFFTFFRRWhGa0VBSVJkQkFDRVVRUUVoRUFzZ0FDQVFPZ0FySUFsQkFXb2hDQUpBQWtBZ0FDMEFMVUVRY1EwQUFrQUNRQUpBSUFBdEFDb09Bd0VBQWdRTElCWkZEUU1NQWdzZ0ZBMEJEQUlMSUJkRkRRRUxJQUFvQWdRaEVDQUFRUUEyQWdRZ0FDQVFJQWdRcllDQWdBQWlFRVVOUFNBQVFja0JOZ0ljSUFBZ0NEWUNGQ0FBSUJBMkFneEJBQ0VRREl3QkN5QUFLQUlFSVFRZ0FFRUFOZ0lFSUFBZ0JDQUlFSzJBZ0lBQUlnUkZEWFlnQUVIS0FUWUNIQ0FBSUFnMkFoUWdBQ0FFTmdJTVFRQWhFQXlMQVFzZ0FDZ0NCQ0VFSUFCQkFEWUNCQ0FBSUFRZ0NSQ3RnSUNBQUNJRVJRMTBJQUJCeXdFMkFod2dBQ0FKTmdJVUlBQWdCRFlDREVFQUlSQU1pZ0VMSUFBb0FnUWhCQ0FBUVFBMkFnUWdBQ0FFSUFvUXJZQ0FnQUFpQkVVTmNpQUFRYzBCTmdJY0lBQWdDallDRkNBQUlBUTJBZ3hCQUNFUURJa0JDd0pBSUFzdEFBQkJVR29pRUVIL0FYRkJDazhOQUNBQUlCQTZBQ29nQzBFQmFpRUtRYllCSVJBTWNBc2dBQ2dDQkNFRUlBQkJBRFlDQkNBQUlBUWdDeEN0Z0lDQUFDSUVSUTF3SUFCQnp3RTJBaHdnQUNBTE5nSVVJQUFnQkRZQ0RFRUFJUkFNaUFFTElBQkJBRFlDSENBQUlBUTJBaFFnQUVHUXM0Q0FBRFlDRUNBQVFRZzJBZ3dnQUVFQU5nSUFRUUFoRUF5SEFRc2dBVUVWUmcwL0lBQkJBRFlDSENBQUlBdzJBaFFnQUVITWpvQ0FBRFlDRUNBQVFTQTJBZ3hCQUNFUURJWUJDeUFBUVlFRU93RW9JQUFvQWdRaEVDQUFRZ0EzQXdBZ0FDQVFJQXhCQVdvaURCQ3JnSUNBQUNJUVJRMDRJQUJCMHdFMkFod2dBQ0FNTmdJVUlBQWdFRFlDREVFQUlSQU1oUUVMSUFCQkFEWUNBQXRCQUNFUUlBQkJBRFlDSENBQUlBUTJBaFFnQUVIWW00Q0FBRFlDRUNBQVFRZzJBZ3dNZ3dFTElBQW9BZ1FoRUNBQVFnQTNBd0FnQUNBUUlBdEJBV29pQ3hDcmdJQ0FBQ0lRRFFGQnhnRWhFQXhwQ3lBQVFRSTZBQ2dNVlFzZ0FFSFZBVFlDSENBQUlBczJBaFFnQUNBUU5nSU1RUUFoRUF5QUFRc2dFRUVWUmcwM0lBQkJBRFlDSENBQUlBUTJBaFFnQUVHa2pJQ0FBRFlDRUNBQVFSQTJBZ3hCQUNFUURIOExJQUF0QURSQkFVY05OQ0FBSUFRZ0FoQzhnSUNBQUNJUVJRMDBJQkJCRlVjTk5TQUFRZHdCTmdJY0lBQWdCRFlDRkNBQVFkV1dnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1mZ3RCQUNFUUlBQkJBRFlDSENBQVFhK0xnSUFBTmdJUUlBQkJBallDRENBQUlCUkJBV28yQWhRTWZRdEJBQ0VRREdNTFFRSWhFQXhpQzBFTklSQU1ZUXRCRHlFUURHQUxRU1VoRUF4ZkMwRVRJUkFNWGd0QkZTRVFERjBMUVJZaEVBeGNDMEVYSVJBTVd3dEJHQ0VRREZvTFFSa2hFQXhaQzBFYUlSQU1XQXRCR3lFUURGY0xRUndoRUF4V0MwRWRJUkFNVlF0Qkh5RVFERlFMUVNFaEVBeFRDMEVqSVJBTVVndEJ4Z0FoRUF4UkMwRXVJUkFNVUF0Qkx5RVFERThMUVRzaEVBeE9DMEU5SVJBTVRRdEJ5QUFoRUF4TUMwSEpBQ0VRREVzTFFjc0FJUkFNU2d0QnpBQWhFQXhKQzBIT0FDRVFERWdMUWRFQUlSQU1Sd3RCMVFBaEVBeEdDMEhZQUNFUURFVUxRZGtBSVJBTVJBdEIyd0FoRUF4REMwSGtBQ0VRREVJTFFlVUFJUkFNUVF0QjhRQWhFQXhBQzBIMEFDRVFERDhMUVkwQklSQU1QZ3RCbHdFaEVBdzlDMEdwQVNFUUREd0xRYXdCSVJBTU93dEJ3QUVoRUF3NkMwRzVBU0VRRERrTFFhOEJJUkFNT0F0QnNRRWhFQXczQzBHeUFTRVFERFlMUWJRQklSQU1OUXRCdFFFaEVBdzBDMEc2QVNFUURETUxRYjBCSVJBTU1ndEJ2d0VoRUF3eEMwSEJBU0VRRERBTElBQkJBRFlDSENBQUlBUTJBaFFnQUVIcGk0Q0FBRFlDRUNBQVFSODJBZ3hCQUNFUURFZ0xJQUJCMndFMkFod2dBQ0FFTmdJVUlBQkIrcGFBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhIQ3lBQVFmZ0FOZ0ljSUFBZ0REWUNGQ0FBUWNxWWdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTVJnc2dBRUhSQURZQ0hDQUFJQVUyQWhRZ0FFR3dsNENBQURZQ0VDQUFRUlUyQWd4QkFDRVFERVVMSUFCQitRQTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNUkFzZ0FFSDRBRFlDSENBQUlBRTJBaFFnQUVIS21JQ0FBRFlDRUNBQVFSVTJBZ3hCQUNFUURFTUxJQUJCNUFBMkFod2dBQ0FCTmdJVUlBQkI0NWVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhDQ3lBQVFkY0FOZ0ljSUFBZ0FUWUNGQ0FBUWNtWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTVFRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFibU5nSUFBTmdJUUlBQkJHallDREVFQUlSQU1RQXNnQUVIQ0FEWUNIQ0FBSUFFMkFoUWdBRUhqbUlDQUFEWUNFQ0FBUVJVMkFneEJBQ0VRREQ4TElBQkJBRFlDQkNBQUlBOGdEeEN4Z0lDQUFDSUVSUTBCSUFCQk9qWUNIQ0FBSUFRMkFnd2dBQ0FQUVFGcU5nSVVRUUFoRUF3K0N5QUFLQUlFSVFRZ0FFRUFOZ0lFQWtBZ0FDQUVJQUVRc1lDQWdBQWlCRVVOQUNBQVFUczJBaHdnQUNBRU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTVBnc2dBVUVCYWlFQkRDMExJQTlCQVdvaEFRd3RDeUFBUVFBMkFod2dBQ0FQTmdJVUlBQkI1SktBZ0FBMkFoQWdBRUVFTmdJTVFRQWhFQXc3Q3lBQVFUWTJBaHdnQUNBRU5nSVVJQUFnQWpZQ0RFRUFJUkFNT2dzZ0FFRXVOZ0ljSUFBZ0RqWUNGQ0FBSUFRMkFneEJBQ0VRRERrTElBQkIwQUEyQWh3Z0FDQUJOZ0lVSUFCQmtaaUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBdzRDeUFOUVFGcUlRRU1MQXNnQUVFVk5nSWNJQUFnQVRZQ0ZDQUFRWUtaZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTmdzZ0FFRWJOZ0ljSUFBZ0FUWUNGQ0FBUVpHWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTU5Rc2dBRUVQTmdJY0lBQWdBVFlDRkNBQVFaR1hnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1OQXNnQUVFTE5nSWNJQUFnQVRZQ0ZDQUFRWkdYZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTXdzZ0FFRWFOZ0ljSUFBZ0FUWUNGQ0FBUVlLWmdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTU1nc2dBRUVMTmdJY0lBQWdBVFlDRkNBQVFZS1pnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1NUXNnQUVFS05nSWNJQUFnQVRZQ0ZDQUFRZVNXZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTUFzZ0FFRWVOZ0ljSUFBZ0FUWUNGQ0FBUWZtWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTUx3c2dBRUVBTmdJY0lBQWdFRFlDRkNBQVFkcU5nSUFBTmdJUUlBQkJGRFlDREVFQUlSQU1MZ3NnQUVFRU5nSWNJQUFnQVRZQ0ZDQUFRYkNZZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTFFzZ0FFRUFOZ0lBSUF0QkFXb2hDd3RCdUFFaEVBd1NDeUFBUVFBMkFnQWdFRUVCYWlFQlFmVUFJUkFNRVFzZ0FTRUJBa0FnQUMwQUtVRUZSdzBBUWVNQUlSQU1FUXRCNGdBaEVBd1FDMEVBSVJBZ0FFRUFOZ0ljSUFCQjVKR0FnQUEyQWhBZ0FFRUhOZ0lNSUFBZ0ZFRUJhallDRkF3b0N5QUFRUUEyQWdBZ0YwRUJhaUVCUWNBQUlSQU1EZ3RCQVNFQkN5QUFJQUU2QUN3Z0FFRUFOZ0lBSUJkQkFXb2hBUXRCS0NFUURBc0xJQUVoQVF0Qk9DRVFEQWtMQWtBZ0FTSVBJQUpHRFFBRFFBSkFJQTh0QUFCQmdMNkFnQUJxTFFBQUlnRkJBVVlOQUNBQlFRSkhEUU1nRDBFQmFpRUJEQVFMSUE5QkFXb2lEeUFDUncwQUMwRStJUkFNSWd0QlBpRVFEQ0VMSUFCQkFEb0FMQ0FQSVFFTUFRdEJDeUVRREFZTFFUb2hFQXdGQ3lBQlFRRnFJUUZCTFNFUURBUUxJQUFnQVRvQUxDQUFRUUEyQWdBZ0ZrRUJhaUVCUVF3aEVBd0RDeUFBUVFBMkFnQWdGMEVCYWlFQlFRb2hFQXdDQ3lBQVFRQTJBZ0FMSUFCQkFEb0FMQ0FOSVFGQkNTRVFEQUFMQzBFQUlSQWdBRUVBTmdJY0lBQWdDellDRkNBQVFjMlFnSUFBTmdJUUlBQkJDVFlDREF3WEMwRUFJUkFnQUVFQU5nSWNJQUFnQ2pZQ0ZDQUFRZW1LZ0lBQU5nSVFJQUJCQ1RZQ0RBd1dDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0NUWUNGQ0FBUWJlUWdJQUFOZ0lRSUFCQkNUWUNEQXdWQzBFQUlSQWdBRUVBTmdJY0lBQWdDRFlDRkNBQVFaeVJnSUFBTmdJUUlBQkJDVFlDREF3VUMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRYzJRZ0lBQU5nSVFJQUJCQ1RZQ0RBd1RDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWVtS2dJQUFOZ0lRSUFCQkNUWUNEQXdTQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFiZVFnSUFBTmdJUUlBQkJDVFlDREF3UkMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRWnlSZ0lBQU5nSVFJQUJCQ1RZQ0RBd1FDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVplVmdJQUFOZ0lRSUFCQkR6WUNEQXdQQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFaZVZnSUFBTmdJUUlBQkJEellDREF3T0MwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRY0NTZ0lBQU5nSVFJQUJCQ3pZQ0RBd05DMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVpXSmdJQUFOZ0lRSUFCQkN6WUNEQXdNQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFlR1BnSUFBTmdJUUlBQkJDallDREF3TEMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRZnVQZ0lBQU5nSVFJQUJCQ2pZQ0RBd0tDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWZHWmdJQUFOZ0lRSUFCQkFqWUNEQXdKQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFjU1VnSUFBTmdJUUlBQkJBallDREF3SUMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRZktWZ0lBQU5nSVFJQUJCQWpZQ0RBd0hDeUFBUVFJMkFod2dBQ0FCTmdJVUlBQkJuSnFBZ0FBMkFoQWdBRUVXTmdJTVFRQWhFQXdHQzBFQklSQU1CUXRCMUFBaEVDQUJJZ1FnQWtZTkJDQURRUWhxSUFBZ0JDQUNRZGpDZ0lBQVFRb1F4WUNBZ0FBZ0F5Z0NEQ0VFSUFNb0FnZ09Bd0VFQWdBTEVNcUFnSUFBQUFzZ0FFRUFOZ0ljSUFCQnRacUFnQUEyQWhBZ0FFRVhOZ0lNSUFBZ0JFRUJhallDRkVFQUlSQU1BZ3NnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRY3FhZ0lBQU5nSVFJQUJCQ1RZQ0RFRUFJUkFNQVFzQ1FDQUJJZ1FnQWtjTkFFRWlJUkFNQVFzZ0FFR0pnSUNBQURZQ0NDQUFJQVEyQWdSQklTRVFDeUFEUVJCcUpJQ0FnSUFBSUJBTHJ3RUJBbjhnQVNnQ0FDRUdBa0FDUUNBQ0lBTkdEUUFnQkNBR2FpRUVJQVlnQTJvZ0Ftc2hCeUFDSUFaQmYzTWdCV29pQm1vaEJRTkFBa0FnQWkwQUFDQUVMUUFBUmcwQVFRSWhCQXdEQ3dKQUlBWU5BRUVBSVFRZ0JTRUNEQU1MSUFaQmYyb2hCaUFFUVFGcUlRUWdBa0VCYWlJQ0lBTkhEUUFMSUFjaEJpQURJUUlMSUFCQkFUWUNBQ0FCSUFZMkFnQWdBQ0FDTmdJRUR3c2dBVUVBTmdJQUlBQWdCRFlDQUNBQUlBSTJBZ1FMQ2dBZ0FCREhnSUNBQUF2eU5nRUxmeU9BZ0lDQUFFRVFheUlCSklDQWdJQUFBa0JCQUNnQ29OQ0FnQUFOQUVFQUVNdUFnSUFBUVlEVWhJQUFheUlDUWRrQVNRMEFRUUFoQXdKQVFRQW9BdURUZ0lBQUlnUU5BRUVBUW44M0F1elRnSUFBUVFCQ2dJQ0VnSUNBd0FBM0F1VFRnSUFBUVFBZ0FVRUlha0Z3Y1VIWXF0V3FCWE1pQkRZQzROT0FnQUJCQUVFQU5nTDAwNENBQUVFQVFRQTJBc1RUZ0lBQUMwRUFJQUkyQXN6VGdJQUFRUUJCZ05TRWdBQTJBc2pUZ0lBQVFRQkJnTlNFZ0FBMkFwalFnSUFBUVFBZ0JEWUNyTkNBZ0FCQkFFRi9OZ0tvMElDQUFBTkFJQU5CeE5DQWdBQnFJQU5CdU5DQWdBQnFJZ1EyQWdBZ0JDQURRYkRRZ0lBQWFpSUZOZ0lBSUFOQnZOQ0FnQUJxSUFVMkFnQWdBMEhNMElDQUFHb2dBMEhBMElDQUFHb2lCVFlDQUNBRklBUTJBZ0FnQTBIVTBJQ0FBR29nQTBISTBJQ0FBR29pQkRZQ0FDQUVJQVUyQWdBZ0EwSFEwSUNBQUdvZ0JEWUNBQ0FEUVNCcUlnTkJnQUpIRFFBTFFZRFVoSUFBUVhoQmdOU0VnQUJyUVE5eFFRQkJnTlNFZ0FCQkNHcEJEM0ViSWdOcUlnUkJCR29nQWtGSWFpSUZJQU5ySWdOQkFYSTJBZ0JCQUVFQUtBTHcwNENBQURZQ3BOQ0FnQUJCQUNBRE5nS1UwSUNBQUVFQUlBUTJBcURRZ0lBQVFZRFVoSUFBSUFWcVFUZzJBZ1FMQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFJQUJCN0FGTERRQUNRRUVBS0FLSTBJQ0FBQ0lHUVJBZ0FFRVRha0Z3Y1NBQVFRdEpHeUlDUVFOMklnUjJJZ05CQTNGRkRRQUNRQUpBSUFOQkFYRWdCSEpCQVhNaUJVRURkQ0lFUWJEUWdJQUFhaUlESUFSQnVOQ0FnQUJxS0FJQUlnUW9BZ2dpQWtjTkFFRUFJQVpCZmlBRmQzRTJBb2pRZ0lBQURBRUxJQU1nQWpZQ0NDQUNJQU0yQWd3TElBUkJDR29oQXlBRUlBVkJBM1FpQlVFRGNqWUNCQ0FFSUFWcUlnUWdCQ2dDQkVFQmNqWUNCQXdNQ3lBQ1FRQW9BcERRZ0lBQUlnZE5EUUVDUUNBRFJRMEFBa0FDUUNBRElBUjBRUUlnQkhRaUEwRUFJQU5yY25FaUEwRUFJQU5yY1VGL2FpSURJQU5CREhaQkVIRWlBM1lpQkVFRmRrRUljU0lGSUFOeUlBUWdCWFlpQTBFQ2RrRUVjU0lFY2lBRElBUjJJZ05CQVhaQkFuRWlCSElnQXlBRWRpSURRUUYyUVFGeElnUnlJQU1nQkhacUlnUkJBM1FpQTBHdzBJQ0FBR29pQlNBRFFialFnSUFBYWlnQ0FDSURLQUlJSWdCSERRQkJBQ0FHUVg0Z0JIZHhJZ1kyQW9qUWdJQUFEQUVMSUFVZ0FEWUNDQ0FBSUFVMkFnd0xJQU1nQWtFRGNqWUNCQ0FESUFSQkEzUWlCR29nQkNBQ2F5SUZOZ0lBSUFNZ0Ftb2lBQ0FGUVFGeU5nSUVBa0FnQjBVTkFDQUhRWGh4UWJEUWdJQUFhaUVDUVFBb0FwelFnSUFBSVFRQ1FBSkFJQVpCQVNBSFFRTjJkQ0lJY1EwQVFRQWdCaUFJY2pZQ2lOQ0FnQUFnQWlFSURBRUxJQUlvQWdnaENBc2dDQ0FFTmdJTUlBSWdCRFlDQ0NBRUlBSTJBZ3dnQkNBSU5nSUlDeUFEUVFocUlRTkJBQ0FBTmdLYzBJQ0FBRUVBSUFVMkFwRFFnSUFBREF3TFFRQW9Bb3pRZ0lBQUlnbEZEUUVnQ1VFQUlBbHJjVUYvYWlJRElBTkJESFpCRUhFaUEzWWlCRUVGZGtFSWNTSUZJQU55SUFRZ0JYWWlBMEVDZGtFRWNTSUVjaUFESUFSMklnTkJBWFpCQW5FaUJISWdBeUFFZGlJRFFRRjJRUUZ4SWdSeUlBTWdCSFpxUVFKMFFialNnSUFBYWlnQ0FDSUFLQUlFUVhoeElBSnJJUVFnQUNFRkFrQURRQUpBSUFVb0FoQWlBdzBBSUFWQkZHb29BZ0FpQTBVTkFnc2dBeWdDQkVGNGNTQUNheUlGSUFRZ0JTQUVTU0lGR3lFRUlBTWdBQ0FGR3lFQUlBTWhCUXdBQ3dzZ0FDZ0NHQ0VLQWtBZ0FDZ0NEQ0lJSUFCR0RRQWdBQ2dDQ0NJRFFRQW9BcGpRZ0lBQVNSb2dDQ0FETmdJSUlBTWdDRFlDREF3TEN3SkFJQUJCRkdvaUJTZ0NBQ0lERFFBZ0FDZ0NFQ0lEUlEwRElBQkJFR29oQlFzRFFDQUZJUXNnQXlJSVFSUnFJZ1VvQWdBaUF3MEFJQWhCRUdvaEJTQUlLQUlRSWdNTkFBc2dDMEVBTmdJQURBb0xRWDhoQWlBQVFiOS9TdzBBSUFCQkUyb2lBMEZ3Y1NFQ1FRQW9Bb3pRZ0lBQUlnZEZEUUJCQUNFTEFrQWdBa0dBQWtrTkFFRWZJUXNnQWtILy8vOEhTdzBBSUFOQkNIWWlBeUFEUVlEK1AycEJFSFpCQ0hFaUEzUWlCQ0FFUVlEZ0gycEJFSFpCQkhFaUJIUWlCU0FGUVlDQUQycEJFSFpCQW5FaUJYUkJEM1lnQXlBRWNpQUZjbXNpQTBFQmRDQUNJQU5CRldwMlFRRnhja0VjYWlFTEMwRUFJQUpySVFRQ1FBSkFBa0FDUUNBTFFRSjBRYmpTZ0lBQWFpZ0NBQ0lGRFFCQkFDRURRUUFoQ0F3QkMwRUFJUU1nQWtFQVFSa2dDMEVCZG1zZ0MwRWZSaHQwSVFCQkFDRUlBMEFDUUNBRktBSUVRWGh4SUFKcklnWWdCRThOQUNBR0lRUWdCU0VJSUFZTkFFRUFJUVFnQlNFSUlBVWhBd3dEQ3lBRElBVkJGR29vQWdBaUJpQUdJQVVnQUVFZGRrRUVjV3BCRUdvb0FnQWlCVVliSUFNZ0Joc2hBeUFBUVFGMElRQWdCUTBBQ3dzQ1FDQURJQWh5RFFCQkFDRUlRUUlnQzNRaUEwRUFJQU5yY2lBSGNTSURSUTBESUFOQkFDQURhM0ZCZjJvaUF5QURRUXgyUVJCeElnTjJJZ1ZCQlhaQkNIRWlBQ0FEY2lBRklBQjJJZ05CQW5aQkJIRWlCWElnQXlBRmRpSURRUUYyUVFKeElnVnlJQU1nQlhZaUEwRUJka0VCY1NJRmNpQURJQVYyYWtFQ2RFRzQwb0NBQUdvb0FnQWhBd3NnQTBVTkFRc0RRQ0FES0FJRVFYaHhJQUpySWdZZ0JFa2hBQUpBSUFNb0FoQWlCUTBBSUFOQkZHb29BZ0FoQlFzZ0JpQUVJQUFiSVFRZ0F5QUlJQUFiSVFnZ0JTRURJQVVOQUFzTElBaEZEUUFnQkVFQUtBS1EwSUNBQUNBQ2EwOE5BQ0FJS0FJWUlRc0NRQ0FJS0FJTUlnQWdDRVlOQUNBSUtBSUlJZ05CQUNnQ21OQ0FnQUJKR2lBQUlBTTJBZ2dnQXlBQU5nSU1EQWtMQWtBZ0NFRVVhaUlGS0FJQUlnTU5BQ0FJS0FJUUlnTkZEUU1nQ0VFUWFpRUZDd05BSUFVaEJpQURJZ0JCRkdvaUJTZ0NBQ0lERFFBZ0FFRVFhaUVGSUFBb0FoQWlBdzBBQ3lBR1FRQTJBZ0FNQ0FzQ1FFRUFLQUtRMElDQUFDSURJQUpKRFFCQkFDZ0NuTkNBZ0FBaEJBSkFBa0FnQXlBQ2F5SUZRUkJKRFFBZ0JDQUNhaUlBSUFWQkFYSTJBZ1JCQUNBRk5nS1EwSUNBQUVFQUlBQTJBcHpRZ0lBQUlBUWdBMm9nQlRZQ0FDQUVJQUpCQTNJMkFnUU1BUXNnQkNBRFFRTnlOZ0lFSUFRZ0Eyb2lBeUFES0FJRVFRRnlOZ0lFUVFCQkFEWUNuTkNBZ0FCQkFFRUFOZ0tRMElDQUFBc2dCRUVJYWlFRERBb0xBa0JCQUNnQ2xOQ0FnQUFpQUNBQ1RRMEFRUUFvQXFEUWdJQUFJZ01nQW1vaUJDQUFJQUpySWdWQkFYSTJBZ1JCQUNBRk5nS1UwSUNBQUVFQUlBUTJBcURRZ0lBQUlBTWdBa0VEY2pZQ0JDQURRUWhxSVFNTUNnc0NRQUpBUVFBb0F1RFRnSUFBUlEwQVFRQW9BdWpUZ0lBQUlRUU1BUXRCQUVKL053THMwNENBQUVFQVFvQ0FoSUNBZ01BQU53TGswNENBQUVFQUlBRkJER3BCY0hGQjJLclZxZ1Z6TmdMZzA0Q0FBRUVBUVFBMkF2VFRnSUFBUVFCQkFEWUN4Tk9BZ0FCQmdJQUVJUVFMUVFBaEF3SkFJQVFnQWtISEFHb2lCMm9pQmtFQUlBUnJJZ3R4SWdnZ0Frc05BRUVBUVRBMkF2alRnSUFBREFvTEFrQkJBQ2dDd05PQWdBQWlBMFVOQUFKQVFRQW9BcmpUZ0lBQUlnUWdDR29pQlNBRVRRMEFJQVVnQTAwTkFRdEJBQ0VEUVFCQk1EWUMrTk9BZ0FBTUNndEJBQzBBeE5PQWdBQkJCSEVOQkFKQUFrQUNRRUVBS0FLZzBJQ0FBQ0lFUlEwQVFjalRnSUFBSVFNRFFBSkFJQU1vQWdBaUJTQUVTdzBBSUFVZ0F5Z0NCR29nQkVzTkF3c2dBeWdDQ0NJRERRQUxDMEVBRU11QWdJQUFJZ0JCZjBZTkJTQUlJUVlDUUVFQUtBTGswNENBQUNJRFFYOXFJZ1FnQUhGRkRRQWdDQ0FBYXlBRUlBQnFRUUFnQTJ0eGFpRUdDeUFHSUFKTkRRVWdCa0grLy8vL0Iwc05CUUpBUVFBb0FzRFRnSUFBSWdORkRRQkJBQ2dDdU5PQWdBQWlCQ0FHYWlJRklBUk5EUVlnQlNBRFN3MEdDeUFHRU11QWdJQUFJZ01nQUVjTkFRd0hDeUFHSUFCcklBdHhJZ1pCL3YvLy93ZExEUVFnQmhETGdJQ0FBQ0lBSUFNb0FnQWdBeWdDQkdwR0RRTWdBQ0VEQ3dKQUlBTkJmMFlOQUNBQ1FjZ0FhaUFHVFEwQUFrQWdCeUFHYTBFQUtBTG8wNENBQUNJRWFrRUFJQVJyY1NJRVFmNy8vLzhIVFEwQUlBTWhBQXdIQ3dKQUlBUVF5NENBZ0FCQmYwWU5BQ0FFSUFacUlRWWdBeUVBREFjTFFRQWdCbXNReTRDQWdBQWFEQVFMSUFNaEFDQURRWDlIRFFVTUF3dEJBQ0VJREFjTFFRQWhBQXdGQ3lBQVFYOUhEUUlMUVFCQkFDZ0N4Tk9BZ0FCQkJISTJBc1RUZ0lBQUN5QUlRZjcvLy84SFN3MEJJQWdReTRDQWdBQWhBRUVBRU11QWdJQUFJUU1nQUVGL1JnMEJJQU5CZjBZTkFTQUFJQU5QRFFFZ0F5QUFheUlHSUFKQk9HcE5EUUVMUVFCQkFDZ0N1Tk9BZ0FBZ0Jtb2lBellDdU5PQWdBQUNRQ0FEUVFBb0FyelRnSUFBVFEwQVFRQWdBellDdk5PQWdBQUxBa0FDUUFKQUFrQkJBQ2dDb05DQWdBQWlCRVVOQUVISTA0Q0FBQ0VEQTBBZ0FDQURLQUlBSWdVZ0F5Z0NCQ0lJYWtZTkFpQURLQUlJSWdNTkFBd0RDd3NDUUFKQVFRQW9BcGpRZ0lBQUlnTkZEUUFnQUNBRFR3MEJDMEVBSUFBMkFwalFnSUFBQzBFQUlRTkJBQ0FHTmdMTTA0Q0FBRUVBSUFBMkFzalRnSUFBUVFCQmZ6WUNxTkNBZ0FCQkFFRUFLQUxnMDRDQUFEWUNyTkNBZ0FCQkFFRUFOZ0xVMDRDQUFBTkFJQU5CeE5DQWdBQnFJQU5CdU5DQWdBQnFJZ1EyQWdBZ0JDQURRYkRRZ0lBQWFpSUZOZ0lBSUFOQnZOQ0FnQUJxSUFVMkFnQWdBMEhNMElDQUFHb2dBMEhBMElDQUFHb2lCVFlDQUNBRklBUTJBZ0FnQTBIVTBJQ0FBR29nQTBISTBJQ0FBR29pQkRZQ0FDQUVJQVUyQWdBZ0EwSFEwSUNBQUdvZ0JEWUNBQ0FEUVNCcUlnTkJnQUpIRFFBTElBQkJlQ0FBYTBFUGNVRUFJQUJCQ0dwQkQzRWJJZ05xSWdRZ0JrRklhaUlGSUFOcklnTkJBWEkyQWdSQkFFRUFLQUx3MDRDQUFEWUNwTkNBZ0FCQkFDQUROZ0tVMElDQUFFRUFJQVEyQXFEUWdJQUFJQUFnQldwQk9EWUNCQXdDQ3lBRExRQU1RUWh4RFFBZ0JDQUZTUTBBSUFRZ0FFOE5BQ0FFUVhnZ0JHdEJEM0ZCQUNBRVFRaHFRUTl4R3lJRmFpSUFRUUFvQXBUUWdJQUFJQVpxSWdzZ0JXc2lCVUVCY2pZQ0JDQURJQWdnQm1vMkFnUkJBRUVBS0FMdzA0Q0FBRFlDcE5DQWdBQkJBQ0FGTmdLVTBJQ0FBRUVBSUFBMkFxRFFnSUFBSUFRZ0MycEJPRFlDQkF3QkN3SkFJQUJCQUNnQ21OQ0FnQUFpQ0U4TkFFRUFJQUEyQXBqUWdJQUFJQUFoQ0FzZ0FDQUdhaUVGUWNqVGdJQUFJUU1DUUFKQUFrQUNRQUpBQWtBQ1FBTkFJQU1vQWdBZ0JVWU5BU0FES0FJSUlnTU5BQXdDQ3dzZ0F5MEFERUVJY1VVTkFRdEJ5Tk9BZ0FBaEF3TkFBa0FnQXlnQ0FDSUZJQVJMRFFBZ0JTQURLQUlFYWlJRklBUkxEUU1MSUFNb0FnZ2hBd3dBQ3dzZ0F5QUFOZ0lBSUFNZ0F5Z0NCQ0FHYWpZQ0JDQUFRWGdnQUd0QkQzRkJBQ0FBUVFocVFROXhHMm9pQ3lBQ1FRTnlOZ0lFSUFWQmVDQUZhMEVQY1VFQUlBVkJDR3BCRDNFYmFpSUdJQXNnQW1vaUFtc2hBd0pBSUFZZ0JFY05BRUVBSUFJMkFxRFFnSUFBUVFCQkFDZ0NsTkNBZ0FBZ0Eyb2lBellDbE5DQWdBQWdBaUFEUVFGeU5nSUVEQU1MQWtBZ0JrRUFLQUtjMElDQUFFY05BRUVBSUFJMkFwelFnSUFBUVFCQkFDZ0NrTkNBZ0FBZ0Eyb2lBellDa05DQWdBQWdBaUFEUVFGeU5nSUVJQUlnQTJvZ0F6WUNBQXdEQ3dKQUlBWW9BZ1FpQkVFRGNVRUJSdzBBSUFSQmVIRWhCd0pBQWtBZ0JFSC9BVXNOQUNBR0tBSUlJZ1VnQkVFRGRpSUlRUU4wUWJEUWdJQUFhaUlBUmhvQ1FDQUdLQUlNSWdRZ0JVY05BRUVBUVFBb0FvalFnSUFBUVg0Z0NIZHhOZ0tJMElDQUFBd0NDeUFFSUFCR0dpQUVJQVUyQWdnZ0JTQUVOZ0lNREFFTElBWW9BaGdoQ1FKQUFrQWdCaWdDRENJQUlBWkdEUUFnQmlnQ0NDSUVJQWhKR2lBQUlBUTJBZ2dnQkNBQU5nSU1EQUVMQWtBZ0JrRVVhaUlFS0FJQUlnVU5BQ0FHUVJCcUlnUW9BZ0FpQlEwQVFRQWhBQXdCQ3dOQUlBUWhDQ0FGSWdCQkZHb2lCQ2dDQUNJRkRRQWdBRUVRYWlFRUlBQW9BaEFpQlEwQUN5QUlRUUEyQWdBTElBbEZEUUFDUUFKQUlBWWdCaWdDSENJRlFRSjBRYmpTZ0lBQWFpSUVLQUlBUncwQUlBUWdBRFlDQUNBQURRRkJBRUVBS0FLTTBJQ0FBRUYrSUFWM2NUWUNqTkNBZ0FBTUFnc2dDVUVRUVJRZ0NTZ0NFQ0FHUmh0cUlBQTJBZ0FnQUVVTkFRc2dBQ0FKTmdJWUFrQWdCaWdDRUNJRVJRMEFJQUFnQkRZQ0VDQUVJQUEyQWhnTElBWW9BaFFpQkVVTkFDQUFRUlJxSUFRMkFnQWdCQ0FBTmdJWUN5QUhJQU5xSVFNZ0JpQUhhaUlHS0FJRUlRUUxJQVlnQkVGK2NUWUNCQ0FDSUFOcUlBTTJBZ0FnQWlBRFFRRnlOZ0lFQWtBZ0EwSC9BVXNOQUNBRFFYaHhRYkRRZ0lBQWFpRUVBa0FDUUVFQUtBS0kwSUNBQUNJRlFRRWdBMEVEZG5RaUEzRU5BRUVBSUFVZ0EzSTJBb2pRZ0lBQUlBUWhBd3dCQ3lBRUtBSUlJUU1MSUFNZ0FqWUNEQ0FFSUFJMkFnZ2dBaUFFTmdJTUlBSWdBellDQ0F3REMwRWZJUVFDUUNBRFFmLy8vd2RMRFFBZ0EwRUlkaUlFSUFSQmdQNC9ha0VRZGtFSWNTSUVkQ0lGSUFWQmdPQWZha0VRZGtFRWNTSUZkQ0lBSUFCQmdJQVBha0VRZGtFQ2NTSUFkRUVQZGlBRUlBVnlJQUJ5YXlJRVFRRjBJQU1nQkVFVmFuWkJBWEZ5UVJ4cUlRUUxJQUlnQkRZQ0hDQUNRZ0EzQWhBZ0JFRUNkRUc0MG9DQUFHb2hCUUpBUVFBb0FvelFnSUFBSWdCQkFTQUVkQ0lJY1EwQUlBVWdBallDQUVFQUlBQWdDSEkyQW96UWdJQUFJQUlnQlRZQ0dDQUNJQUkyQWdnZ0FpQUNOZ0lNREFNTElBTkJBRUVaSUFSQkFYWnJJQVJCSDBZYmRDRUVJQVVvQWdBaEFBTkFJQUFpQlNnQ0JFRjRjU0FEUmcwQ0lBUkJIWFloQUNBRVFRRjBJUVFnQlNBQVFRUnhha0VRYWlJSUtBSUFJZ0FOQUFzZ0NDQUNOZ0lBSUFJZ0JUWUNHQ0FDSUFJMkFnd2dBaUFDTmdJSURBSUxJQUJCZUNBQWEwRVBjVUVBSUFCQkNHcEJEM0ViSWdOcUlnc2dCa0ZJYWlJSUlBTnJJZ05CQVhJMkFnUWdBQ0FJYWtFNE5nSUVJQVFnQlVFM0lBVnJRUTl4UVFBZ0JVRkpha0VQY1J0cVFVRnFJZ2dnQ0NBRVFSQnFTUnNpQ0VFak5nSUVRUUJCQUNnQzhOT0FnQUEyQXFUUWdJQUFRUUFnQXpZQ2xOQ0FnQUJCQUNBTE5nS2cwSUNBQUNBSVFSQnFRUUFwQXREVGdJQUFOd0lBSUFoQkFDa0N5Tk9BZ0FBM0FnaEJBQ0FJUVFocU5nTFEwNENBQUVFQUlBWTJBc3pUZ0lBQVFRQWdBRFlDeU5PQWdBQkJBRUVBTmdMVTA0Q0FBQ0FJUVNScUlRTURRQ0FEUVFjMkFnQWdBMEVFYWlJRElBVkpEUUFMSUFnZ0JFWU5BeUFJSUFnb0FnUkJmbkUyQWdRZ0NDQUlJQVJySWdBMkFnQWdCQ0FBUVFGeU5nSUVBa0FnQUVIL0FVc05BQ0FBUVhoeFFiRFFnSUFBYWlFREFrQUNRRUVBS0FLSTBJQ0FBQ0lGUVFFZ0FFRURkblFpQUhFTkFFRUFJQVVnQUhJMkFvalFnSUFBSUFNaEJRd0JDeUFES0FJSUlRVUxJQVVnQkRZQ0RDQURJQVEyQWdnZ0JDQUROZ0lNSUFRZ0JUWUNDQXdFQzBFZklRTUNRQ0FBUWYvLy93ZExEUUFnQUVFSWRpSURJQU5CZ1A0L2FrRVFka0VJY1NJRGRDSUZJQVZCZ09BZmFrRVFka0VFY1NJRmRDSUlJQWhCZ0lBUGFrRVFka0VDY1NJSWRFRVBkaUFESUFWeUlBaHlheUlEUVFGMElBQWdBMEVWYW5aQkFYRnlRUnhxSVFNTElBUWdBellDSENBRVFnQTNBaEFnQTBFQ2RFRzQwb0NBQUdvaEJRSkFRUUFvQW96UWdJQUFJZ2hCQVNBRGRDSUdjUTBBSUFVZ0JEWUNBRUVBSUFnZ0JuSTJBb3pRZ0lBQUlBUWdCVFlDR0NBRUlBUTJBZ2dnQkNBRU5nSU1EQVFMSUFCQkFFRVpJQU5CQVhacklBTkJIMFliZENFRElBVW9BZ0FoQ0FOQUlBZ2lCU2dDQkVGNGNTQUFSZzBESUFOQkhYWWhDQ0FEUVFGMElRTWdCU0FJUVFSeGFrRVFhaUlHS0FJQUlnZ05BQXNnQmlBRU5nSUFJQVFnQlRZQ0dDQUVJQVEyQWd3Z0JDQUVOZ0lJREFNTElBVW9BZ2dpQXlBQ05nSU1JQVVnQWpZQ0NDQUNRUUEyQWhnZ0FpQUZOZ0lNSUFJZ0F6WUNDQXNnQzBFSWFpRUREQVVMSUFVb0FnZ2lBeUFFTmdJTUlBVWdCRFlDQ0NBRVFRQTJBaGdnQkNBRk5nSU1JQVFnQXpZQ0NBdEJBQ2dDbE5DQWdBQWlBeUFDVFEwQVFRQW9BcURRZ0lBQUlnUWdBbW9pQlNBRElBSnJJZ05CQVhJMkFnUkJBQ0FETmdLVTBJQ0FBRUVBSUFVMkFxRFFnSUFBSUFRZ0FrRURjallDQkNBRVFRaHFJUU1NQXd0QkFDRURRUUJCTURZQytOT0FnQUFNQWdzQ1FDQUxSUTBBQWtBQ1FDQUlJQWdvQWh3aUJVRUNkRUc0MG9DQUFHb2lBeWdDQUVjTkFDQURJQUEyQWdBZ0FBMEJRUUFnQjBGK0lBVjNjU0lITmdLTTBJQ0FBQXdDQ3lBTFFSQkJGQ0FMS0FJUUlBaEdHMm9nQURZQ0FDQUFSUTBCQ3lBQUlBczJBaGdDUUNBSUtBSVFJZ05GRFFBZ0FDQUROZ0lRSUFNZ0FEWUNHQXNnQ0VFVWFpZ0NBQ0lEUlEwQUlBQkJGR29nQXpZQ0FDQURJQUEyQWhnTEFrQUNRQ0FFUVE5TERRQWdDQ0FFSUFKcUlnTkJBM0kyQWdRZ0NDQURhaUlESUFNb0FnUkJBWEkyQWdRTUFRc2dDQ0FDYWlJQUlBUkJBWEkyQWdRZ0NDQUNRUU55TmdJRUlBQWdCR29nQkRZQ0FBSkFJQVJCL3dGTERRQWdCRUY0Y1VHdzBJQ0FBR29oQXdKQUFrQkJBQ2dDaU5DQWdBQWlCVUVCSUFSQkEzWjBJZ1J4RFFCQkFDQUZJQVJ5TmdLSTBJQ0FBQ0FESVFRTUFRc2dBeWdDQ0NFRUN5QUVJQUEyQWd3Z0F5QUFOZ0lJSUFBZ0F6WUNEQ0FBSUFRMkFnZ01BUXRCSHlFREFrQWdCRUgvLy84SFN3MEFJQVJCQ0hZaUF5QURRWUQrUDJwQkVIWkJDSEVpQTNRaUJTQUZRWURnSDJwQkVIWkJCSEVpQlhRaUFpQUNRWUNBRDJwQkVIWkJBbkVpQW5SQkQzWWdBeUFGY2lBQ2Ntc2lBMEVCZENBRUlBTkJGV3AyUVFGeGNrRWNhaUVEQ3lBQUlBTTJBaHdnQUVJQU53SVFJQU5CQW5SQnVOS0FnQUJxSVFVQ1FDQUhRUUVnQTNRaUFuRU5BQ0FGSUFBMkFnQkJBQ0FISUFKeU5nS00wSUNBQUNBQUlBVTJBaGdnQUNBQU5nSUlJQUFnQURZQ0RBd0JDeUFFUVFCQkdTQURRUUYyYXlBRFFSOUdHM1FoQXlBRktBSUFJUUlDUUFOQUlBSWlCU2dDQkVGNGNTQUVSZzBCSUFOQkhYWWhBaUFEUVFGMElRTWdCU0FDUVFSeGFrRVFhaUlHS0FJQUlnSU5BQXNnQmlBQU5nSUFJQUFnQlRZQ0dDQUFJQUEyQWd3Z0FDQUFOZ0lJREFFTElBVW9BZ2dpQXlBQU5nSU1JQVVnQURZQ0NDQUFRUUEyQWhnZ0FDQUZOZ0lNSUFBZ0F6WUNDQXNnQ0VFSWFpRUREQUVMQWtBZ0NrVU5BQUpBQWtBZ0FDQUFLQUljSWdWQkFuUkJ1TktBZ0FCcUlnTW9BZ0JIRFFBZ0F5QUlOZ0lBSUFnTkFVRUFJQWxCZmlBRmQzRTJBb3pRZ0lBQURBSUxJQXBCRUVFVUlBb29BaEFnQUVZYmFpQUlOZ0lBSUFoRkRRRUxJQWdnQ2pZQ0dBSkFJQUFvQWhBaUEwVU5BQ0FJSUFNMkFoQWdBeUFJTmdJWUN5QUFRUlJxS0FJQUlnTkZEUUFnQ0VFVWFpQUROZ0lBSUFNZ0NEWUNHQXNDUUFKQUlBUkJEMHNOQUNBQUlBUWdBbW9pQTBFRGNqWUNCQ0FBSUFOcUlnTWdBeWdDQkVFQmNqWUNCQXdCQ3lBQUlBSnFJZ1VnQkVFQmNqWUNCQ0FBSUFKQkEzSTJBZ1FnQlNBRWFpQUVOZ0lBQWtBZ0IwVU5BQ0FIUVhoeFFiRFFnSUFBYWlFQ1FRQW9BcHpRZ0lBQUlRTUNRQUpBUVFFZ0IwRURkblFpQ0NBR2NRMEFRUUFnQ0NBR2NqWUNpTkNBZ0FBZ0FpRUlEQUVMSUFJb0FnZ2hDQXNnQ0NBRE5nSU1JQUlnQXpZQ0NDQURJQUkyQWd3Z0F5QUlOZ0lJQzBFQUlBVTJBcHpRZ0lBQVFRQWdCRFlDa05DQWdBQUxJQUJCQ0dvaEF3c2dBVUVRYWlTQWdJQ0FBQ0FEQ3dvQUlBQVF5WUNBZ0FBTDRnMEJCMzhDUUNBQVJRMEFJQUJCZUdvaUFTQUFRWHhxS0FJQUlnSkJlSEVpQUdvaEF3SkFJQUpCQVhFTkFDQUNRUU54UlEwQklBRWdBU2dDQUNJQ2F5SUJRUUFvQXBqUWdJQUFJZ1JKRFFFZ0FpQUFhaUVBQWtBZ0FVRUFLQUtjMElDQUFFWU5BQUpBSUFKQi93RkxEUUFnQVNnQ0NDSUVJQUpCQTNZaUJVRURkRUd3MElDQUFHb2lCa1lhQWtBZ0FTZ0NEQ0lDSUFSSERRQkJBRUVBS0FLSTBJQ0FBRUYrSUFWM2NUWUNpTkNBZ0FBTUF3c2dBaUFHUmhvZ0FpQUVOZ0lJSUFRZ0FqWUNEQXdDQ3lBQktBSVlJUWNDUUFKQUlBRW9BZ3dpQmlBQlJnMEFJQUVvQWdnaUFpQUVTUm9nQmlBQ05nSUlJQUlnQmpZQ0RBd0JDd0pBSUFGQkZHb2lBaWdDQUNJRURRQWdBVUVRYWlJQ0tBSUFJZ1FOQUVFQUlRWU1BUXNEUUNBQ0lRVWdCQ0lHUVJScUlnSW9BZ0FpQkEwQUlBWkJFR29oQWlBR0tBSVFJZ1FOQUFzZ0JVRUFOZ0lBQ3lBSFJRMEJBa0FDUUNBQklBRW9BaHdpQkVFQ2RFRzQwb0NBQUdvaUFpZ0NBRWNOQUNBQ0lBWTJBZ0FnQmcwQlFRQkJBQ2dDak5DQWdBQkJmaUFFZDNFMkFvelFnSUFBREFNTElBZEJFRUVVSUFjb0FoQWdBVVliYWlBR05nSUFJQVpGRFFJTElBWWdCellDR0FKQUlBRW9BaEFpQWtVTkFDQUdJQUkyQWhBZ0FpQUdOZ0lZQ3lBQktBSVVJZ0pGRFFFZ0JrRVVhaUFDTmdJQUlBSWdCallDR0F3QkN5QURLQUlFSWdKQkEzRkJBMGNOQUNBRElBSkJmbkUyQWdSQkFDQUFOZ0tRMElDQUFDQUJJQUJxSUFBMkFnQWdBU0FBUVFGeU5nSUVEd3NnQVNBRFR3MEFJQU1vQWdRaUFrRUJjVVVOQUFKQUFrQWdBa0VDY1EwQUFrQWdBMEVBS0FLZzBJQ0FBRWNOQUVFQUlBRTJBcURRZ0lBQVFRQkJBQ2dDbE5DQWdBQWdBR29pQURZQ2xOQ0FnQUFnQVNBQVFRRnlOZ0lFSUFGQkFDZ0NuTkNBZ0FCSERRTkJBRUVBTmdLUTBJQ0FBRUVBUVFBMkFwelFnSUFBRHdzQ1FDQURRUUFvQXB6UWdJQUFSdzBBUVFBZ0FUWUNuTkNBZ0FCQkFFRUFLQUtRMElDQUFDQUFhaUlBTmdLUTBJQ0FBQ0FCSUFCQkFYSTJBZ1FnQVNBQWFpQUFOZ0lBRHdzZ0FrRjRjU0FBYWlFQUFrQUNRQ0FDUWY4QlN3MEFJQU1vQWdnaUJDQUNRUU4ySWdWQkEzUkJzTkNBZ0FCcUlnWkdHZ0pBSUFNb0Fnd2lBaUFFUncwQVFRQkJBQ2dDaU5DQWdBQkJmaUFGZDNFMkFvalFnSUFBREFJTElBSWdCa1lhSUFJZ0JEWUNDQ0FFSUFJMkFnd01BUXNnQXlnQ0dDRUhBa0FDUUNBREtBSU1JZ1lnQTBZTkFDQURLQUlJSWdKQkFDZ0NtTkNBZ0FCSkdpQUdJQUkyQWdnZ0FpQUdOZ0lNREFFTEFrQWdBMEVVYWlJQ0tBSUFJZ1FOQUNBRFFSQnFJZ0lvQWdBaUJBMEFRUUFoQmd3QkN3TkFJQUloQlNBRUlnWkJGR29pQWlnQ0FDSUVEUUFnQmtFUWFpRUNJQVlvQWhBaUJBMEFDeUFGUVFBMkFnQUxJQWRGRFFBQ1FBSkFJQU1nQXlnQ0hDSUVRUUowUWJqU2dJQUFhaUlDS0FJQVJ3MEFJQUlnQmpZQ0FDQUdEUUZCQUVFQUtBS00wSUNBQUVGK0lBUjNjVFlDak5DQWdBQU1BZ3NnQjBFUVFSUWdCeWdDRUNBRFJodHFJQVkyQWdBZ0JrVU5BUXNnQmlBSE5nSVlBa0FnQXlnQ0VDSUNSUTBBSUFZZ0FqWUNFQ0FDSUFZMkFoZ0xJQU1vQWhRaUFrVU5BQ0FHUVJScUlBSTJBZ0FnQWlBR05nSVlDeUFCSUFCcUlBQTJBZ0FnQVNBQVFRRnlOZ0lFSUFGQkFDZ0NuTkNBZ0FCSERRRkJBQ0FBTmdLUTBJQ0FBQThMSUFNZ0FrRitjVFlDQkNBQklBQnFJQUEyQWdBZ0FTQUFRUUZ5TmdJRUN3SkFJQUJCL3dGTERRQWdBRUY0Y1VHdzBJQ0FBR29oQWdKQUFrQkJBQ2dDaU5DQWdBQWlCRUVCSUFCQkEzWjBJZ0J4RFFCQkFDQUVJQUJ5TmdLSTBJQ0FBQ0FDSVFBTUFRc2dBaWdDQ0NFQUN5QUFJQUUyQWd3Z0FpQUJOZ0lJSUFFZ0FqWUNEQ0FCSUFBMkFnZ1BDMEVmSVFJQ1FDQUFRZi8vL3dkTERRQWdBRUVJZGlJQ0lBSkJnUDQvYWtFUWRrRUljU0lDZENJRUlBUkJnT0FmYWtFUWRrRUVjU0lFZENJR0lBWkJnSUFQYWtFUWRrRUNjU0lHZEVFUGRpQUNJQVJ5SUFaeWF5SUNRUUYwSUFBZ0FrRVZhblpCQVhGeVFSeHFJUUlMSUFFZ0FqWUNIQ0FCUWdBM0FoQWdBa0VDZEVHNDBvQ0FBR29oQkFKQUFrQkJBQ2dDak5DQWdBQWlCa0VCSUFKMElnTnhEUUFnQkNBQk5nSUFRUUFnQmlBRGNqWUNqTkNBZ0FBZ0FTQUVOZ0lZSUFFZ0FUWUNDQ0FCSUFFMkFnd01BUXNnQUVFQVFSa2dBa0VCZG1zZ0FrRWZSaHQwSVFJZ0JDZ0NBQ0VHQWtBRFFDQUdJZ1FvQWdSQmVIRWdBRVlOQVNBQ1FSMTJJUVlnQWtFQmRDRUNJQVFnQmtFRWNXcEJFR29pQXlnQ0FDSUdEUUFMSUFNZ0FUWUNBQ0FCSUFRMkFoZ2dBU0FCTmdJTUlBRWdBVFlDQ0F3QkN5QUVLQUlJSWdBZ0FUWUNEQ0FFSUFFMkFnZ2dBVUVBTmdJWUlBRWdCRFlDRENBQklBQTJBZ2dMUVFCQkFDZ0NxTkNBZ0FCQmYyb2lBVUYvSUFFYk5nS28wSUNBQUFzTEJBQUFBQXRPQUFKQUlBQU5BRDhBUVJCMER3c0NRQ0FBUWYvL0EzRU5BQ0FBUVg5TURRQUNRQ0FBUVJCMlFBQWlBRUYvUncwQVFRQkJNRFlDK05PQWdBQkJmdzhMSUFCQkVIUVBDeERLZ0lDQUFBQUw4Z0lDQTM4QmZnSkFJQUpGRFFBZ0FDQUJPZ0FBSUFJZ0FHb2lBMEYvYWlBQk9nQUFJQUpCQTBrTkFDQUFJQUU2QUFJZ0FDQUJPZ0FCSUFOQmZXb2dBVG9BQUNBRFFYNXFJQUU2QUFBZ0FrRUhTUTBBSUFBZ0FUb0FBeUFEUVh4cUlBRTZBQUFnQWtFSlNRMEFJQUJCQUNBQWEwRURjU0lFYWlJRElBRkIvd0Z4UVlHQ2hBaHNJZ0UyQWdBZ0F5QUNJQVJyUVh4eElnUnFJZ0pCZkdvZ0FUWUNBQ0FFUVFsSkRRQWdBeUFCTmdJSUlBTWdBVFlDQkNBQ1FYaHFJQUUyQWdBZ0FrRjBhaUFCTmdJQUlBUkJHVWtOQUNBRElBRTJBaGdnQXlBQk5nSVVJQU1nQVRZQ0VDQURJQUUyQWd3Z0FrRndhaUFCTmdJQUlBSkJiR29nQVRZQ0FDQUNRV2hxSUFFMkFnQWdBa0ZrYWlBQk5nSUFJQVFnQTBFRWNVRVljaUlGYXlJQ1FTQkpEUUFnQWExQ2dZQ0FnQkIrSVFZZ0F5QUZhaUVCQTBBZ0FTQUdOd01ZSUFFZ0JqY0RFQ0FCSUFZM0F3Z2dBU0FHTndNQUlBRkJJR29oQVNBQ1FXQnFJZ0pCSDBzTkFBc0xJQUFMQzQ1SUFRQkJnQWdMaGtnQkFBQUFBZ0FBQUFNQUFBQUFBQUFBQUFBQUFBUUFBQUFGQUFBQUFBQUFBQUFBQUFBR0FBQUFCd0FBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFbHVkbUZzYVdRZ1kyaGhjaUJwYmlCMWNtd2djWFZsY25rQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5aWIyUjVBRU52Ym5SbGJuUXRUR1Z1WjNSb0lHOTJaWEptYkc5M0FFTm9kVzVySUhOcGVtVWdiM1psY21ac2IzY0FVbVZ6Y0c5dWMyVWdiM1psY21ac2IzY0FTVzUyWVd4cFpDQnRaWFJvYjJRZ1ptOXlJRWhVVkZBdmVDNTRJSEpsY1hWbGMzUUFTVzUyWVd4cFpDQnRaWFJvYjJRZ1ptOXlJRkpVVTFBdmVDNTRJSEpsY1hWbGMzUUFSWGh3WldOMFpXUWdVMDlWVWtORklHMWxkR2h2WkNCbWIzSWdTVU5GTDNndWVDQnlaWEYxWlhOMEFFbHVkbUZzYVdRZ1kyaGhjaUJwYmlCMWNtd2dabkpoWjIxbGJuUWdjM1JoY25RQVJYaHdaV04wWldRZ1pHOTBBRk53WVc0Z1kyRnNiR0poWTJzZ1pYSnliM0lnYVc0Z2IyNWZjM1JoZEhWekFFbHVkbUZzYVdRZ2NtVnpjRzl1YzJVZ2MzUmhkSFZ6QUVsdWRtRnNhV1FnWTJoaGNtRmpkR1Z5SUdsdUlHTm9kVzVySUdWNGRHVnVjMmx2Ym5NQVZYTmxjaUJqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmY21WelpYUmdJR05oYkd4aVlXTnJJR1Z5Y205eUFHQnZibDlqYUhWdWExOW9aV0ZrWlhKZ0lHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOXRaWE56WVdkbFgySmxaMmx1WUNCallXeHNZbUZqYXlCbGNuSnZjZ0JnYjI1ZlkyaDFibXRmWlhoMFpXNXphVzl1WDNaaGJIVmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmYzNSaGRIVnpYMk52YlhCc1pYUmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmZG1WeWMybHZibDlqYjIxd2JHVjBaV0FnWTJGc2JHSmhZMnNnWlhKeWIzSUFZRzl1WDNWeWJGOWpiMjF3YkdWMFpXQWdZMkZzYkdKaFkyc2daWEp5YjNJQVlHOXVYMk5vZFc1clgyTnZiWEJzWlhSbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCZ2IyNWZhR1ZoWkdWeVgzWmhiSFZsWDJOdmJYQnNaWFJsWUNCallXeHNZbUZqYXlCbGNuSnZjZ0JnYjI1ZmJXVnpjMkZuWlY5amIyMXdiR1YwWldBZ1kyRnNiR0poWTJzZ1pYSnliM0lBWUc5dVgyMWxkR2h2WkY5amIyMXdiR1YwWldBZ1kyRnNiR0poWTJzZ1pYSnliM0lBWUc5dVgyaGxZV1JsY2w5bWFXVnNaRjlqYjIxd2JHVjBaV0FnWTJGc2JHSmhZMnNnWlhKeWIzSUFZRzl1WDJOb2RXNXJYMlY0ZEdWdWMybHZibDl1WVcxbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCVmJtVjRjR1ZqZEdWa0lHTm9ZWElnYVc0Z2RYSnNJSE5sY25abGNnQkpiblpoYkdsa0lHaGxZV1JsY2lCMllXeDFaU0JqYUdGeUFFbHVkbUZzYVdRZ2FHVmhaR1Z5SUdacFpXeGtJR05vWVhJQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5MlpYSnphVzl1QUVsdWRtRnNhV1FnYldsdWIzSWdkbVZ5YzJsdmJnQkpiblpoYkdsa0lHMWhhbTl5SUhabGNuTnBiMjRBUlhod1pXTjBaV1FnYzNCaFkyVWdZV1owWlhJZ2RtVnljMmx2YmdCRmVIQmxZM1JsWkNCRFVreEdJR0ZtZEdWeUlIWmxjbk5wYjI0QVNXNTJZV3hwWkNCSVZGUlFJSFpsY25OcGIyNEFTVzUyWVd4cFpDQm9aV0ZrWlhJZ2RHOXJaVzRBVTNCaGJpQmpZV3hzWW1GamF5Qmxjbkp2Y2lCcGJpQnZibDkxY213QVNXNTJZV3hwWkNCamFHRnlZV04wWlhKeklHbHVJSFZ5YkFCVmJtVjRjR1ZqZEdWa0lITjBZWEowSUdOb1lYSWdhVzRnZFhKc0FFUnZkV0pzWlNCQUlHbHVJSFZ5YkFCRmJYQjBlU0JEYjI1MFpXNTBMVXhsYm1kMGFBQkpiblpoYkdsa0lHTm9ZWEpoWTNSbGNpQnBiaUJEYjI1MFpXNTBMVXhsYm1kMGFBQkVkWEJzYVdOaGRHVWdRMjl1ZEdWdWRDMU1aVzVuZEdnQVNXNTJZV3hwWkNCamFHRnlJR2x1SUhWeWJDQndZWFJvQUVOdmJuUmxiblF0VEdWdVozUm9JR05oYmlkMElHSmxJSEJ5WlhObGJuUWdkMmwwYUNCVWNtRnVjMlpsY2kxRmJtTnZaR2x1WndCSmJuWmhiR2xrSUdOb1lYSmhZM1JsY2lCcGJpQmphSFZ1YXlCemFYcGxBRk53WVc0Z1kyRnNiR0poWTJzZ1pYSnliM0lnYVc0Z2IyNWZhR1ZoWkdWeVgzWmhiSFZsQUZOd1lXNGdZMkZzYkdKaFkyc2daWEp5YjNJZ2FXNGdiMjVmWTJoMWJtdGZaWGgwWlc1emFXOXVYM1poYkhWbEFFbHVkbUZzYVdRZ1kyaGhjbUZqZEdWeUlHbHVJR05vZFc1cklHVjRkR1Z1YzJsdmJuTWdkbUZzZFdVQVRXbHpjMmx1WnlCbGVIQmxZM1JsWkNCTVJpQmhablJsY2lCb1pXRmtaWElnZG1Gc2RXVUFTVzUyWVd4cFpDQmdWSEpoYm5ObVpYSXRSVzVqYjJScGJtZGdJR2hsWVdSbGNpQjJZV3gxWlFCSmJuWmhiR2xrSUdOb1lYSmhZM1JsY2lCcGJpQmphSFZ1YXlCbGVIUmxibk5wYjI1eklIRjFiM1JsSUhaaGJIVmxBRWx1ZG1Gc2FXUWdZMmhoY21GamRHVnlJR2x1SUdOb2RXNXJJR1Y0ZEdWdWMybHZibk1nY1hWdmRHVmtJSFpoYkhWbEFGQmhkWE5sWkNCaWVTQnZibDlvWldGa1pYSnpYMk52YlhCc1pYUmxBRWx1ZG1Gc2FXUWdSVTlHSUhOMFlYUmxBRzl1WDNKbGMyVjBJSEJoZFhObEFHOXVYMk5vZFc1clgyaGxZV1JsY2lCd1lYVnpaUUJ2Ymw5dFpYTnpZV2RsWDJKbFoybHVJSEJoZFhObEFHOXVYMk5vZFc1clgyVjRkR1Z1YzJsdmJsOTJZV3gxWlNCd1lYVnpaUUJ2Ymw5emRHRjBkWE5mWTI5dGNHeGxkR1VnY0dGMWMyVUFiMjVmZG1WeWMybHZibDlqYjIxd2JHVjBaU0J3WVhWelpRQnZibDkxY214ZlkyOXRjR3hsZEdVZ2NHRjFjMlVBYjI1ZlkyaDFibXRmWTI5dGNHeGxkR1VnY0dGMWMyVUFiMjVmYUdWaFpHVnlYM1poYkhWbFgyTnZiWEJzWlhSbElIQmhkWE5sQUc5dVgyMWxjM05oWjJWZlkyOXRjR3hsZEdVZ2NHRjFjMlVBYjI1ZmJXVjBhRzlrWDJOdmJYQnNaWFJsSUhCaGRYTmxBRzl1WDJobFlXUmxjbDltYVdWc1pGOWpiMjF3YkdWMFpTQndZWFZ6WlFCdmJsOWphSFZ1YTE5bGVIUmxibk5wYjI1ZmJtRnRaU0J3WVhWelpRQlZibVY0Y0dWamRHVmtJSE53WVdObElHRm1kR1Z5SUhOMFlYSjBJR3hwYm1VQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5amFIVnVhMTlsZUhSbGJuTnBiMjVmYm1GdFpRQkpiblpoYkdsa0lHTm9ZWEpoWTNSbGNpQnBiaUJqYUhWdWF5QmxlSFJsYm5OcGIyNXpJRzVoYldVQVVHRjFjMlVnYjI0Z1EwOU9Ua1ZEVkM5VmNHZHlZV1JsQUZCaGRYTmxJRzl1SUZCU1NTOVZjR2R5WVdSbEFFVjRjR1ZqZEdWa0lFaFVWRkF2TWlCRGIyNXVaV04wYVc5dUlGQnlaV1poWTJVQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5dFpYUm9iMlFBUlhod1pXTjBaV1FnYzNCaFkyVWdZV1owWlhJZ2JXVjBhRzlrQUZOd1lXNGdZMkZzYkdKaFkyc2daWEp5YjNJZ2FXNGdiMjVmYUdWaFpHVnlYMlpwWld4a0FGQmhkWE5sWkFCSmJuWmhiR2xrSUhkdmNtUWdaVzVqYjNWdWRHVnlaV1FBU1c1MllXeHBaQ0J0WlhSb2IyUWdaVzVqYjNWdWRHVnlaV1FBVlc1bGVIQmxZM1JsWkNCamFHRnlJR2x1SUhWeWJDQnpZMmhsYldFQVVtVnhkV1Z6ZENCb1lYTWdhVzUyWVd4cFpDQmdWSEpoYm5ObVpYSXRSVzVqYjJScGJtZGdBRk5YU1ZSRFNGOVFVazlZV1FCVlUwVmZVRkpQV0ZrQVRVdEJRMVJKVmtsVVdRQlZUbEJTVDBORlUxTkJRa3hGWDBWT1ZFbFVXUUJEVDFCWkFFMVBWa1ZFWDFCRlVrMUJUa1ZPVkV4WkFGUlBUMTlGUVZKTVdRQk9UMVJKUmxrQVJrRkpURVZFWDBSRlVFVk9SRVZPUTFrQVFrRkVYMGRCVkVWWFFWa0FVRXhCV1FCUVZWUUFRMGhGUTB0UFZWUUFSMEZVUlZkQldWOVVTVTFGVDFWVUFGSkZVVlZGVTFSZlZFbE5SVTlWVkFCT1JWUlhUMUpMWDBOUFRrNUZRMVJmVkVsTlJVOVZWQUJEVDA1T1JVTlVTVTlPWDFSSlRVVlBWVlFBVEU5SFNVNWZWRWxOUlU5VlZBQk9SVlJYVDFKTFgxSkZRVVJmVkVsTlJVOVZWQUJRVDFOVUFFMUpVMFJKVWtWRFZFVkVYMUpGVVZWRlUxUUFRMHhKUlU1VVgwTk1UMU5GUkY5U1JWRlZSVk5VQUVOTVNVVk9WRjlEVEU5VFJVUmZURTlCUkY5Q1FVeEJUa05GUkY5U1JWRlZSVk5VQUVKQlJGOVNSVkZWUlZOVUFFaFVWRkJmVWtWUlZVVlRWRjlUUlU1VVgxUlBYMGhVVkZCVFgxQlBVbFFBVWtWUVQxSlVBRWxOWDBGZlZFVkJVRTlVQUZKRlUwVlVYME5QVGxSRlRsUUFUazlmUTA5T1ZFVk9WQUJRUVZKVVNVRk1YME5QVGxSRlRsUUFTRkJGWDBsT1ZrRk1TVVJmUTA5T1UxUkJUbFFBU0ZCRlgwTkNYMUpGVTBWVUFFZEZWQUJJVUVWZlUxUlNTVU5VQUVOUFRrWk1TVU5VQUZSRlRWQlBVa0ZTV1Y5U1JVUkpVa1ZEVkFCUVJWSk5RVTVGVGxSZlVrVkVTVkpGUTFRQVEwOU9Ua1ZEVkFCTlZVeFVTVjlUVkVGVVZWTUFTRkJGWDBsT1ZrRk1TVVJmVTFSQlZGVlRBRlJQVDE5TlFVNVpYMUpGVVZWRlUxUlRBRVZCVWt4WlgwaEpUbFJUQUZWT1FWWkJTVXhCUWt4RlgwWlBVbDlNUlVkQlRGOVNSVUZUVDA1VEFFOVFWRWxQVGxNQVUxZEpWRU5JU1U1SFgxQlNUMVJQUTA5TVV3QldRVkpKUVU1VVgwRk1VMDlmVGtWSFQxUkpRVlJGVXdCTlZVeFVTVkJNUlY5RFNFOUpRMFZUQUVsT1ZFVlNUa0ZNWDFORlVsWkZVbDlGVWxKUFVnQlhSVUpmVTBWU1ZrVlNYMVZPUzA1UFYwNWZSVkpTVDFJQVVrRkpURWRWVGw5RlVsSlBVZ0JKUkVWT1ZFbFVXVjlRVWs5V1NVUkZVbDlCVlZSSVJVNVVTVU5CVkVsUFRsOUZVbEpQVWdCVFUweGZRMFZTVkVsR1NVTkJWRVZmUlZKU1QxSUFTVTVXUVV4SlJGOVlYMFpQVWxkQlVrUkZSRjlHVDFJQVUwVlVYMUJCVWtGTlJWUkZVZ0JIUlZSZlVFRlNRVTFGVkVWU0FFaFFSVjlWVTBWU0FGTkZSVjlQVkVoRlVnQklVRVZmUTBKZlEwaFZUa3RmU0VWQlJFVlNBRTFMUTBGTVJVNUVRVklBVTBWVVZWQUFWMFZDWDFORlVsWkZVbDlKVTE5RVQxZE9BRlJGUVZKRVQxZE9BRWhRUlY5RFRFOVRSVVJmUTA5T1RrVkRWRWxQVGdCSVJWVlNTVk5VU1VOZlJWaFFTVkpCVkVsUFRnQkVTVk5EVDA1T1JVTlVSVVJmVDFCRlVrRlVTVTlPQUU1UFRsOUJWVlJJVDFKSlZFRlVTVlpGWDBsT1JrOVNUVUZVU1U5T0FFaFFSVjlKVGxaQlRFbEVYMVpGVWxOSlQwNEFTRkJGWDBOQ1gwMUZVMU5CUjBWZlFrVkhTVTRBVTBsVVJWOUpVMTlHVWs5YVJVNEFTRkJGWDBsT1ZrRk1TVVJmU0VWQlJFVlNYMVJQUzBWT0FFbE9Wa0ZNU1VSZlZFOUxSVTRBUms5U1FrbEVSRVZPQUVWT1NFRk9RMFZmV1U5VlVsOURRVXhOQUVoUVJWOUpUbFpCVEVsRVgxVlNUQUJDVEU5RFMwVkVYMEpaWDFCQlVrVk9WRUZNWDBOUFRsUlNUMHdBVFV0RFQwd0FRVU5NQUVoUVJWOUpUbFJGVWs1QlRBQlNSVkZWUlZOVVgwaEZRVVJGVWw5R1NVVk1SRk5mVkU5UFgweEJVa2RGWDFWT1QwWkdTVU5KUVV3QVNGQkZYMDlMQUZWT1RFbE9Td0JWVGt4UFEwc0FVRkpKQUZKRlZGSlpYMWRKVkVnQVNGQkZYMGxPVmtGTVNVUmZRMDlPVkVWT1ZGOU1SVTVIVkVnQVNGQkZYMVZPUlZoUVJVTlVSVVJmUTA5T1ZFVk9WRjlNUlU1SFZFZ0FSa3hWVTBnQVVGSlBVRkJCVkVOSUFFMHRVMFZCVWtOSUFGVlNTVjlVVDA5ZlRFOU9Sd0JRVWs5RFJWTlRTVTVIQUUxSlUwTkZURXhCVGtWUFZWTmZVRVZTVTBsVFZFVk9WRjlYUVZKT1NVNUhBRTFKVTBORlRFeEJUa1ZQVlZOZlYwRlNUa2xPUndCSVVFVmZTVTVXUVV4SlJGOVVVa0ZPVTBaRlVsOUZUa05QUkVsT1J3QkZlSEJsWTNSbFpDQkRVa3hHQUVoUVJWOUpUbFpCVEVsRVgwTklWVTVMWDFOSldrVUFUVTlXUlFCRFQwNVVTVTVWUlFCSVVFVmZRMEpmVTFSQlZGVlRYME5QVFZCTVJWUkZBRWhRUlY5RFFsOUlSVUZFUlZKVFgwTlBUVkJNUlZSRkFFaFFSVjlEUWw5V1JWSlRTVTlPWDBOUFRWQk1SVlJGQUVoUVJWOURRbDlWVWt4ZlEwOU5VRXhGVkVVQVNGQkZYME5DWDBOSVZVNUxYME5QVFZCTVJWUkZBRWhRUlY5RFFsOUlSVUZFUlZKZlZrRk1WVVZmUTA5TlVFeEZWRVVBU0ZCRlgwTkNYME5JVlU1TFgwVllWRVZPVTBsUFRsOVdRVXhWUlY5RFQwMVFURVZVUlFCSVVFVmZRMEpmUTBoVlRrdGZSVmhVUlU1VFNVOU9YMDVCVFVWZlEwOU5VRXhGVkVVQVNGQkZYME5DWDAxRlUxTkJSMFZmUTA5TlVFeEZWRVVBU0ZCRlgwTkNYMDFGVkVoUFJGOURUMDFRVEVWVVJRQklVRVZmUTBKZlNFVkJSRVZTWDBaSlJVeEVYME5QVFZCTVJWUkZBRVJGVEVWVVJRQklVRVZmU1U1V1FVeEpSRjlGVDBaZlUxUkJWRVVBU1U1V1FVeEpSRjlUVTB4ZlEwVlNWRWxHU1VOQlZFVUFVRUZWVTBVQVRrOWZVa1ZUVUU5T1UwVUFWVTVUVlZCUVQxSlVSVVJmVFVWRVNVRmZWRmxRUlFCSFQwNUZBRTVQVkY5QlEwTkZVRlJCUWt4RkFGTkZVbFpKUTBWZlZVNUJWa0ZKVEVGQ1RFVUFVa0ZPUjBWZlRrOVVYMU5CVkVsVFJrbEJRa3hGQUU5U1NVZEpUbDlKVTE5VlRsSkZRVU5JUVVKTVJRQlNSVk5RVDA1VFJWOUpVMTlUVkVGTVJRQlFWVkpIUlFCTlJWSkhSUUJTUlZGVlJWTlVYMGhGUVVSRlVsOUdTVVZNUkZOZlZFOVBYMHhCVWtkRkFGSkZVVlZGVTFSZlNFVkJSRVZTWDFSUFQxOU1RVkpIUlFCUVFWbE1UMEZFWDFSUFQxOU1RVkpIUlFCSlRsTlZSa1pKUTBsRlRsUmZVMVJQVWtGSFJRQklVRVZmVUVGVlUwVkVYMVZRUjFKQlJFVUFTRkJGWDFCQlZWTkZSRjlJTWw5VlVFZFNRVVJGQUZOUFZWSkRSUUJCVGs1UFZVNURSUUJVVWtGRFJRQklVRVZmVlU1RldGQkZRMVJGUkY5VFVFRkRSUUJFUlZORFVrbENSUUJWVGxOVlFsTkRVa2xDUlFCU1JVTlBVa1FBU0ZCRlgwbE9Wa0ZNU1VSZlRVVlVTRTlFQUU1UFZGOUdUMVZPUkFCUVVrOVFSa2xPUkFCVlRrSkpUa1FBVWtWQ1NVNUVBRlZPUVZWVVNFOVNTVnBGUkFCTlJWUklUMFJmVGs5VVgwRk1URTlYUlVRQVNGUlVVRjlXUlZKVFNVOU9YMDVQVkY5VFZWQlFUMUpVUlVRQVFVeFNSVUZFV1Y5U1JWQlBVbFJGUkFCQlEwTkZVRlJGUkFCT1QxUmZTVTFRVEVWTlJVNVVSVVFBVEU5UFVGOUVSVlJGUTFSRlJBQklVRVZmUTFKZlJWaFFSVU5VUlVRQVNGQkZYMHhHWDBWWVVFVkRWRVZFQUVOU1JVRlVSVVFBU1UxZlZWTkZSQUJJVUVWZlVFRlZVMFZFQUZSSlRVVlBWVlJmVDBORFZWSkZSQUJRUVZsTlJVNVVYMUpGVVZWSlVrVkVBRkJTUlVOUFRrUkpWRWxQVGw5U1JWRlZTVkpGUkFCUVVrOVlXVjlCVlZSSVJVNVVTVU5CVkVsUFRsOVNSVkZWU1ZKRlJBQk9SVlJYVDFKTFgwRlZWRWhGVGxSSlEwRlVTVTlPWDFKRlVWVkpVa1ZFQUV4RlRrZFVTRjlTUlZGVlNWSkZSQUJUVTB4ZlEwVlNWRWxHU1VOQlZFVmZVa1ZSVlVsU1JVUUFWVkJIVWtGRVJWOVNSVkZWU1ZKRlJBQlFRVWRGWDBWWVVFbFNSVVFBVUZKRlEwOU9SRWxVU1U5T1gwWkJTVXhGUkFCRldGQkZRMVJCVkVsUFRsOUdRVWxNUlVRQVVrVldRVXhKUkVGVVNVOU9YMFpCU1V4RlJBQlRVMHhmU0VGT1JGTklRVXRGWDBaQlNVeEZSQUJNVDBOTFJVUUFWRkpCVGxOR1QxSk5RVlJKVDA1ZlFWQlFURWxGUkFCT1QxUmZUVTlFU1VaSlJVUUFUazlVWDBWWVZFVk9SRVZFQUVKQlRrUlhTVVJVU0Y5TVNVMUpWRjlGV0VORlJVUkZSQUJUU1ZSRlgwbFRYMDlXUlZKTVQwRkVSVVFBU0VWQlJBQkZlSEJsWTNSbFpDQklWRlJRTHdBQVhoTUFBQ1lUQUFBd0VBQUE4QmNBQUowVEFBQVZFZ0FBT1JjQUFQQVNBQUFLRUFBQWRSSUFBSzBTQUFDQ0V3QUFUeFFBQUg4UUFBQ2dGUUFBSXhRQUFJa1NBQUNMRkFBQVRSVUFBTlFSQUFEUEZBQUFFQmdBQU1rV0FBRGNGZ0FBd1JFQUFPQVhBQUM3RkFBQWRCUUFBSHdWQUFEbEZBQUFDQmNBQUI4UUFBQmxGUUFBb3hRQUFDZ1ZBQUFDRlFBQW1SVUFBQ3dRQUFDTEdRQUFUdzhBQU5RT0FBQnFFQUFBemhBQUFBSVhBQUNKRGdBQWJoTUFBQndUQUFCbUZBQUFWaGNBQU1FVEFBRE5Fd0FBYkJNQUFHZ1hBQUJtRndBQVh4Y0FBQ0lUQUFET0R3QUFhUTRBQU5nT0FBQmpGZ0FBeXhNQUFLb09BQUFvRndBQUpoY0FBTVVUQUFCZEZnQUE2QkVBQUdjVEFBQmxFd0FBOGhZQUFITVRBQUFkRndBQStSWUFBUE1SQUFEUERnQUF6aFVBQUF3U0FBQ3pFUUFBcFJFQUFHRVFBQUF5RndBQXV4TUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFRSUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlEQWdJQ0FnSUFBQUlDQUFJQ0FBSUNBZ0lDQWdJQ0FnSUFCQUFBQUFBQUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQUFBQUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0FDQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ0FBSUNBZ0lDQUFBQ0FnQUNBZ0FDQWdJQ0FnSUNBZ0lDQUFNQUJBQUFBQUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBQUFBQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQUFnQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBYkc5elpXVmxjQzFoYkdsMlpRQUFBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVCQVFFQkFRRUJBUUVCQVFJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJZMmgxYm10bFpBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFFQUFRRUJBUUVBQUFFQkFBRUJBQUVCQVFFQkFRRUJBUUVBQUFBQUFBQUFBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJsWTNScGIyNWxiblF0YkdWdVozUm9iMjV5YjNoNUxXTnZibTVsWTNScGIyNEFBQUFBQUFBQUFBQUFBQUFBQUFCeVlXNXpabVZ5TFdWdVkyOWthVzVuY0dkeVlXUmxEUW9OQ2cwS1UwME5DZzBLVkZSUUwwTkZMMVJUVUM4QUFBQUFBQUFBQUFBQUFBQUJBZ0FCQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUFBQUFBQUFBQVFJQUFRTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVBUUVGQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUFBQUFBQUFBQUFBRUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQkFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQUFBQUFBQUFBQUFBQVFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBTUVBQUFFQkFRRUJBUUVCQVFFQkFVRUJBUUVCQVFFQkFRRUJBUUFCQUFHQndRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBRUFBUUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFBQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlBQUFBQUFBQURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3QUFBQUFBQUFNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFBQUFBSUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01BQUFBQUFBQURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCT1QxVk9RMFZGUTB0UFZWUk9SVU5VUlZSRlExSkpRa1ZNVlZOSVJWUkZRVVJUUlVGU1EwaFNSMFZEVkVsV1NWUlpURVZPUkVGU1ZrVlBWRWxHV1ZCVVNVOU9VME5JVTBWQldWTlVRVlJEU0VkRlQxSkVTVkpGUTFSUFVsUlNRMGhRUVZKQlRVVlVSVkpWVWtORlFsTkRVa2xDUlVGU1JFOVhUa0ZEUlVsT1JFNUxRMHRWUWxORFVrbENSVWhVVkZBdlFVUlVVQzg9J1xuIiwgIm1vZHVsZS5leHBvcnRzID0gJ0FHRnpiUUVBQUFBQk1BaGdBWDhCZjJBRGYzOS9BWDlnQkg5L2YzOEJmMkFBQUdBRGYzOS9BR0FCZndCZ0FuOS9BR0FHZjM5L2YzOS9BQUxMQVFnRFpXNTJHSGRoYzIxZmIyNWZhR1ZoWkdWeWMxOWpiMjF3YkdWMFpRQUNBMlZ1ZGhWM1lYTnRYMjl1WDIxbGMzTmhaMlZmWW1WbmFXNEFBQU5sYm5ZTGQyRnpiVjl2Ymw5MWNtd0FBUU5sYm5ZT2QyRnpiVjl2Ymw5emRHRjBkWE1BQVFObGJuWVVkMkZ6YlY5dmJsOW9aV0ZrWlhKZlptbGxiR1FBQVFObGJuWVVkMkZ6YlY5dmJsOW9aV0ZrWlhKZmRtRnNkV1VBQVFObGJuWU1kMkZ6YlY5dmJsOWliMlI1QUFFRFpXNTJHSGRoYzIxZmIyNWZiV1Z6YzJGblpWOWpiMjF3YkdWMFpRQUFBMFpGQXdNRUFBQUZBQUFBQUFBQUJRRUZBQVVGQlFBQUJnQUFBQUFHQmdZR0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFBQUJBUWNBQUFVRkF3QUJCQVVCY0FFU0VnVURBUUFDQmdnQmZ3RkJnTlFFQ3dmUkJTSUdiV1Z0YjNKNUFnQUxYMmx1YVhScFlXeHBlbVVBQ1JsZlgybHVaR2x5WldOMFgyWjFibU4wYVc5dVgzUmhZbXhsQVFBTGJHeG9kSFJ3WDJsdWFYUUFDaGhzYkdoMGRIQmZjMmh2ZFd4a1gydGxaWEJmWVd4cGRtVUFRUXhzYkdoMGRIQmZZV3hzYjJNQURBWnRZV3hzYjJNQVJndHNiR2gwZEhCZlpuSmxaUUFOQkdaeVpXVUFTQTlzYkdoMGRIQmZaMlYwWDNSNWNHVUFEaFZzYkdoMGRIQmZaMlYwWDJoMGRIQmZiV0ZxYjNJQUR4VnNiR2gwZEhCZloyVjBYMmgwZEhCZmJXbHViM0lBRUJGc2JHaDBkSEJmWjJWMFgyMWxkR2h2WkFBUkZteHNhSFIwY0Y5blpYUmZjM1JoZEhWelgyTnZaR1VBRWhKc2JHaDBkSEJmWjJWMFgzVndaM0poWkdVQUV3eHNiR2gwZEhCZmNtVnpaWFFBRkE1c2JHaDBkSEJmWlhobFkzVjBaUUFWRkd4c2FIUjBjRjl6WlhSMGFXNW5jMTlwYm1sMEFCWU5iR3hvZEhSd1gyWnBibWx6YUFBWERHeHNhSFIwY0Y5d1lYVnpaUUFZRFd4c2FIUjBjRjl5WlhOMWJXVUFHUnRzYkdoMGRIQmZjbVZ6ZFcxbFgyRm1kR1Z5WDNWd1ozSmhaR1VBR2hCc2JHaDBkSEJmWjJWMFgyVnljbTV2QUJzWGJHeG9kSFJ3WDJkbGRGOWxjbkp2Y2w5eVpXRnpiMjRBSEJkc2JHaDBkSEJmYzJWMFgyVnljbTl5WDNKbFlYTnZiZ0FkRkd4c2FIUjBjRjluWlhSZlpYSnliM0pmY0c5ekFCNFJiR3hvZEhSd1gyVnljbTV2WDI1aGJXVUFIeEpzYkdoMGRIQmZiV1YwYUc5a1gyNWhiV1VBSUJKc2JHaDBkSEJmYzNSaGRIVnpYMjVoYldVQUlScHNiR2gwZEhCZmMyVjBYMnhsYm1sbGJuUmZhR1ZoWkdWeWN3QWlJV3hzYUhSMGNGOXpaWFJmYkdWdWFXVnVkRjlqYUhWdWEyVmtYMnhsYm1kMGFBQWpIV3hzYUhSMGNGOXpaWFJmYkdWdWFXVnVkRjlyWldWd1gyRnNhWFpsQUNRa2JHeG9kSFJ3WDNObGRGOXNaVzVwWlc1MFgzUnlZVzV6Wm1WeVgyVnVZMjlrYVc1bkFDVVliR3hvZEhSd1gyMWxjM05oWjJWZmJtVmxaSE5mWlc5bUFEOEpGd0VBUVFFTEVRRUNBd1FGQ3dZSE5UazNNUzh0SnlzcENyTGdBa1VDQUFzSUFCQ0lnSUNBQUFzWkFDQUFFTUtBZ0lBQUdpQUFJQUkyQWpnZ0FDQUJPZ0FvQ3h3QUlBQWdBQzhCTWlBQUxRQXVJQUFRd1lDQWdBQVFnSUNBZ0FBTEtnRUJmMEhBQUJER2dJQ0FBQ0lCRU1LQWdJQUFHaUFCUVlDSWdJQUFOZ0k0SUFFZ0FEb0FLQ0FCQ3dvQUlBQVF5SUNBZ0FBTEJ3QWdBQzBBS0FzSEFDQUFMUUFxQ3djQUlBQXRBQ3NMQndBZ0FDMEFLUXNIQUNBQUx3RXlDd2NBSUFBdEFDNExSUUVFZnlBQUtBSVlJUUVnQUMwQUxTRUNJQUF0QUNnaEF5QUFLQUk0SVFRZ0FCRENnSUNBQUJvZ0FDQUVOZ0k0SUFBZ0F6b0FLQ0FBSUFJNkFDMGdBQ0FCTmdJWUN4RUFJQUFnQVNBQklBSnFFTU9BZ0lBQUN4QUFJQUJCQUVIY0FCRE1nSUNBQUJvTFp3RUJmMEVBSVFFQ1FDQUFLQUlNRFFBQ1FBSkFBa0FDUUNBQUxRQXZEZ01CQUFNQ0N5QUFLQUk0SWdGRkRRQWdBU2dDTENJQlJRMEFJQUFnQVJHQWdJQ0FBQUFpQVEwREMwRUFEd3NReW9DQWdBQUFDeUFBUWNPV2dJQUFOZ0lRUVE0aEFRc2dBUXNlQUFKQUlBQW9BZ3dOQUNBQVFkR2JnSUFBTmdJUUlBQkJGVFlDREFzTEZnQUNRQ0FBS0FJTVFSVkhEUUFnQUVFQU5nSU1Dd3NXQUFKQUlBQW9BZ3hCRmtjTkFDQUFRUUEyQWd3TEN3Y0FJQUFvQWd3TEJ3QWdBQ2dDRUFzSkFDQUFJQUUyQWhBTEJ3QWdBQ2dDRkFzaUFBSkFJQUJCSkVrTkFCREtnSUNBQUFBTElBQkJBblJCb0xPQWdBQnFLQUlBQ3lJQUFrQWdBRUV1U1EwQUVNcUFnSUFBQUFzZ0FFRUNkRUd3dElDQUFHb29BZ0FMN2dzQkFYOUI2NmlBZ0FBaEFRSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFJQUJCbkg5cUR2UURZMklBQVdGaFlXRmhZUUlEQkFWaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhCZ2NJQ1FvTERBME9EMkZoWVdGaEVHRmhZV0ZoWVdGaFlXRmhFV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZUklURkJVV0Z4Z1pHaHRoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoSEIwZUh5QWhJaU1rSlNZbktDa3FLeXd0TGk4d01USXpORFUyWVRjNE9UcGhZV0ZoWVdGaFlUdGhZV0U4WVdGaFlUMCtQMkZoWVdGaFlXRmhRR0ZoUVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlVSkRSRVZHUjBoSlNrdE1UVTVQVUZGU1UyRmhZV0ZoWVdGaFZGVldWMWhaV2x0aFhGMWhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZlWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWDJCaEMwSGhwNENBQUE4TFFhU2hnSUFBRHd0Qnk2eUFnQUFQQzBIK3NZQ0FBQThMUWNDa2dJQUFEd3RCcTZTQWdBQVBDMEdOcUlDQUFBOExRZUttZ0lBQUR3dEJnTENBZ0FBUEMwRzVyNENBQUE4TFFkZWtnSUFBRHd0Qjc1K0FnQUFQQzBIaG40Q0FBQThMUWZxZmdJQUFEd3RCOHFDQWdBQVBDMEdvcjRDQUFBOExRYTZ5Z0lBQUR3dEJpTENBZ0FBUEMwSHNwNENBQUE4TFFZS2lnSUFBRHd0QmpwMkFnQUFQQzBIUXJvQ0FBQThMUWNxamdJQUFEd3RCeGJLQWdBQVBDMEhmbklDQUFBOExRZEtjZ0lBQUR3dEJ4S0NBZ0FBUEMwSFhvSUNBQUE4TFFhS2ZnSUFBRHd0QjdhNkFnQUFQQzBHcnNJQ0FBQThMUWRTbGdJQUFEd3RCeks2QWdBQVBDMEg2cm9DQUFBOExRZnlyZ0lBQUR3dEIwckNBZ0FBUEMwSHhuWUNBQUE4TFFidWdnSUFBRHd0Qjk2dUFnQUFQQzBHUXNZQ0FBQThMUWRleGdJQUFEd3RCb3EyQWdBQVBDMEhVcDRDQUFBOExRZUNyZ0lBQUR3dEJuNnlBZ0FBUEMwSHJzWUNBQUE4TFFkV2ZnSUFBRHd0QnlyR0FnQUFQQzBIZXBZQ0FBQThMUWRTZWdJQUFEd3RCOUp5QWdBQVBDMEduc29DQUFBOExRYkdkZ0lBQUR3dEJvSjJBZ0FBUEMwRzVzWUNBQUE4TFFieXdnSUFBRHd0QmtxR0FnQUFQQzBHenBvQ0FBQThMUWVtc2dJQUFEd3RCcko2QWdBQVBDMEhVcTRDQUFBOExRZmVtZ0lBQUR3dEJnS2FBZ0FBUEMwR3dvWUNBQUE4TFFmNmVnSUFBRHd0QmphT0FnQUFQQzBHSnJZQ0FBQThMUWZlaWdJQUFEd3RCb0xHQWdBQVBDMEd1bjRDQUFBOExRY2FsZ0lBQUR3dEI2SjZBZ0FBUEMwR1Rvb0NBQUE4TFFjS3ZnSUFBRHd0Qnc1MkFnQUFQQzBHTHJJQ0FBQThMUWVHZGdJQUFEd3RCamErQWdBQVBDMEhxb1lDQUFBOExRYlN0Z0lBQUR3dEIwcStBZ0FBUEMwSGZzb0NBQUE4TFFkS3lnSUFBRHd0QjhMQ0FnQUFQQzBHcG9vQ0FBQThMUWZtamdJQUFEd3RCbVo2QWdBQVBDMEcxcklDQUFBOExRWnV3Z0lBQUR3dEJrcktBZ0FBUEMwRzJxNENBQUE4TFFjS2lnSUFBRHd0QitMS0FnQUFQQzBHZXBZQ0FBQThMUWRDaWdJQUFEd3RCdXA2QWdBQVBDMEdCbm9DQUFBOExFTXFBZ0lBQUFBdEIxcUdBZ0FBaEFRc2dBUXNXQUNBQUlBQXRBQzFCL2dGeElBRkJBRWR5T2dBdEN4a0FJQUFnQUMwQUxVSDlBWEVnQVVFQVIwRUJkSEk2QUMwTEdRQWdBQ0FBTFFBdFFmc0JjU0FCUVFCSFFRSjBjam9BTFFzWkFDQUFJQUF0QUMxQjl3RnhJQUZCQUVkQkEzUnlPZ0F0Q3k0QkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BZ0FpQkVVTkFDQUFJQVFSZ0lDQWdBQUFJUU1MSUFNTFNRRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDQkNJRVJRMEFJQUFnQVNBQ0lBRnJJQVFSZ1lDQWdBQUFJZ05CZjBjTkFDQUFRY2FSZ0lBQU5nSVFRUmdoQXdzZ0F3c3VBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJd0lnUkZEUUFnQUNBRUVZQ0FnSUFBQUNFREN5QURDMGtCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FnZ2lCRVVOQUNBQUlBRWdBaUFCYXlBRUVZR0FnSUFBQUNJRFFYOUhEUUFnQUVIMmlvQ0FBRFlDRUVFWUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NOQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXd0SkFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUlNSWdSRkRRQWdBQ0FCSUFJZ0FXc2dCQkdCZ0lDQUFBQWlBMEYvUncwQUlBQkI3WnFBZ0FBMkFoQkJHQ0VEQ3lBREN5NEJBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWpnaUJFVU5BQ0FBSUFRUmdJQ0FnQUFBSVFNTElBTUxTUUVDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ0VDSUVSUTBBSUFBZ0FTQUNJQUZySUFRUmdZQ0FnQUFBSWdOQmYwY05BQ0FBUVpXUWdJQUFOZ0lRUVJnaEF3c2dBd3N1QVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSThJZ1JGRFFBZ0FDQUVFWUNBZ0lBQUFDRURDeUFEQzBrQkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BaFFpQkVVTkFDQUFJQUVnQWlBQmF5QUVFWUdBZ0lBQUFDSURRWDlIRFFBZ0FFR3FtNENBQURZQ0VFRVlJUU1MSUFNTExnRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDUUNJRVJRMEFJQUFnQkJHQWdJQ0FBQUFoQXdzZ0F3dEpBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJWUlnUkZEUUFnQUNBQklBSWdBV3NnQkJHQmdJQ0FBQUFpQTBGL1J3MEFJQUJCN1pPQWdBQTJBaEJCR0NFREN5QURDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FrUWlCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NKQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXdzdUFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUlzSWdSRkRRQWdBQ0FFRVlDQWdJQUFBQ0VEQ3lBREMwa0JBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWlnaUJFVU5BQ0FBSUFFZ0FpQUJheUFFRVlHQWdJQUFBQ0lEUVg5SERRQWdBRUgyaUlDQUFEWUNFRUVZSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ1VDSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3RKQVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSWNJZ1JGRFFBZ0FDQUJJQUlnQVdzZ0JCR0JnSUNBQUFBaUEwRi9SdzBBSUFCQndwbUFnQUEyQWhCQkdDRURDeUFEQ3k0QkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9Ba2dpQkVVTkFDQUFJQVFSZ0lDQWdBQUFJUU1MSUFNTFNRRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDSUNJRVJRMEFJQUFnQVNBQ0lBRnJJQVFSZ1lDQWdBQUFJZ05CZjBjTkFDQUFRWlNVZ0lBQU5nSVFRUmdoQXdzZ0F3c3VBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FKTUlnUkZEUUFnQUNBRUVZQ0FnSUFBQUNFREN5QURDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FsUWlCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NXQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXd0RkFRRi9Ba0FDUUNBQUx3RXdRUlJ4UVJSSERRQkJBU0VESUFBdEFDaEJBVVlOQVNBQUx3RXlRZVVBUmlFRERBRUxJQUF0QUNsQkJVWWhBd3NnQUNBRE9nQXVRUUFML2dFQkEzOUJBU0VEQWtBZ0FDOEJNQ0lFUVFoeERRQWdBQ2tESUVJQVVpRURDd0pBQWtBZ0FDMEFMa1VOQUVFQklRVWdBQzBBS1VFRlJnMEJRUUVoQlNBRVFjQUFjVVVnQTNGQkFVY05BUXRCQUNFRklBUkJ3QUJ4RFFCQkFpRUZJQVJCLy84RGNTSURRUWh4RFFBQ1FDQURRWUFFY1VVTkFBSkFJQUF0QUNoQkFVY05BQ0FBTFFBdFFRcHhEUUJCQlE4TFFRUVBDd0pBSUFOQklIRU5BQUpBSUFBdEFDaEJBVVlOQUNBQUx3RXlRZi8vQTNFaUFFR2NmMnBCNUFCSkRRQWdBRUhNQVVZTkFDQUFRYkFDUmcwQVFRUWhCU0FFUVNoeFJRMENJQU5CaUFSeFFZQUVSZzBDQzBFQUR3dEJBRUVESUFBcEF5QlFHeUVGQ3lBRkMySUJBbjlCQUNFQkFrQWdBQzBBS0VFQlJnMEFJQUF2QVRKQi8vOERjU0lDUVp4L2FrSGtBRWtOQUNBQ1Fjd0JSZzBBSUFKQnNBSkdEUUFnQUM4Qk1DSUFRY0FBY1EwQVFRRWhBU0FBUVlnRWNVR0FCRVlOQUNBQVFTaHhSU0VCQ3lBQkM2Y0JBUU4vQWtBQ1FBSkFJQUF0QUNwRkRRQWdBQzBBSzBVTkFFRUFJUU1nQUM4Qk1DSUVRUUp4UlEwQkRBSUxRUUFoQXlBQUx3RXdJZ1JCQVhGRkRRRUxRUUVoQXlBQUxRQW9RUUZHRFFBZ0FDOEJNa0gvL3dOeElnVkJuSDlxUWVRQVNRMEFJQVZCekFGR0RRQWdCVUd3QWtZTkFDQUVRY0FBY1EwQVFRQWhBeUFFUVlnRWNVR0FCRVlOQUNBRVFTaHhRUUJISVFNTElBQkJBRHNCTUNBQVFRQTZBQzhnQXd1WkFRRUNmd0pBQWtBQ1FDQUFMUUFxUlEwQUlBQXRBQ3RGRFFCQkFDRUJJQUF2QVRBaUFrRUNjVVVOQVF3Q0MwRUFJUUVnQUM4Qk1DSUNRUUZ4UlEwQkMwRUJJUUVnQUMwQUtFRUJSZzBBSUFBdkFUSkIvLzhEY1NJQVFaeC9ha0hrQUVrTkFDQUFRY3dCUmcwQUlBQkJzQUpHRFFBZ0FrSEFBSEVOQUVFQUlRRWdBa0dJQkhGQmdBUkdEUUFnQWtFb2NVRUFSeUVCQ3lBQkMwa0JBWHNnQUVFUWF2ME1BQUFBQUFBQUFBQUFBQUFBQUFBQUFDSUIvUXNEQUNBQUlBSDlDd01BSUFCQk1Hb2dBZjBMQXdBZ0FFRWdhaUFCL1FzREFDQUFRZDBCTmdJY1FRQUxld0VCZndKQUlBQW9BZ3dpQXcwQUFrQWdBQ2dDQkVVTkFDQUFJQUUyQWdRTEFrQWdBQ0FCSUFJUXhJQ0FnQUFpQXcwQUlBQW9BZ3dQQ3lBQUlBTTJBaHhCQUNFRElBQW9BZ1FpQVVVTkFDQUFJQUVnQWlBQUtBSUlFWUdBZ0lBQUFDSUJSUTBBSUFBZ0FqWUNGQ0FBSUFFMkFnd2dBU0VEQ3lBREMrVHpBUU1PZndOK0JIOGpnSUNBZ0FCQkVHc2lBeVNBZ0lDQUFDQUJJUVFnQVNFRklBRWhCaUFCSVFjZ0FTRUlJQUVoQ1NBQklRb2dBU0VMSUFFaERDQUJJUTBnQVNFT0lBRWhEd0pBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQ0FBS0FJY0loQkJmMm9PM1FIYUFRSFpBUUlEQkFVR0J3Z0pDZ3NNRFE3WUFROFExd0VSRXRZQkV4UVZGaGNZR1JvYjRBSGZBUndkSHRVQkh5QWhJaU1rSmRRQkppY29LU29yTE5NQjBnRXRMdEVCMEFFdk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVWJiQVVkSVNVclBBYzRCUzgwQlRNd0JUVTVQVUZGU1UxUlZWbGRZV1ZwYlhGMWVYMkJoWW1Oa1pXWm5hR2xxYTJ4dGJtOXdjWEp6ZEhWMmQzaDVlbnQ4Zlg1L2dBR0JBWUlCZ3dHRUFZVUJoZ0dIQVlnQmlRR0tBWXNCakFHTkFZNEJqd0dRQVpFQmtnR1RBWlFCbFFHV0FaY0JtQUdaQVpvQm13R2NBWjBCbmdHZkFhQUJvUUdpQWFNQnBBR2xBYVlCcHdHb0Fha0JxZ0dyQWF3QnJRR3VBYThCc0FHeEFiSUJzd0cwQWJVQnRnRzNBY3NCeWdHNEFja0J1UUhJQWJvQnV3RzhBYjBCdmdHL0FjQUJ3UUhDQWNNQnhBSEZBY1lCQU53QkMwRUFJUkFNeGdFTFFRNGhFQXpGQVF0QkRTRVFETVFCQzBFUElSQU13d0VMUVJBaEVBekNBUXRCRXlFUURNRUJDMEVVSVJBTXdBRUxRUlVoRUF5L0FRdEJGaUVRREw0QkMwRVhJUkFNdlFFTFFSZ2hFQXk4QVF0QkdTRVFETHNCQzBFYUlSQU11Z0VMUVJzaEVBeTVBUXRCSENFUURMZ0JDMEVJSVJBTXR3RUxRUjBoRUF5MkFRdEJJQ0VRRExVQkMwRWZJUkFNdEFFTFFRY2hFQXl6QVF0QklTRVFETElCQzBFaUlSQU1zUUVMUVI0aEVBeXdBUXRCSXlFUURLOEJDMEVTSVJBTXJnRUxRUkVoRUF5dEFRdEJKQ0VRREt3QkMwRWxJUkFNcXdFTFFTWWhFQXlxQVF0Qkp5RVFES2tCQzBIREFTRVFES2dCQzBFcElSQU1wd0VMUVNzaEVBeW1BUXRCTENFUURLVUJDMEV0SVJBTXBBRUxRUzRoRUF5akFRdEJMeUVRREtJQkMwSEVBU0VRREtFQkMwRXdJUkFNb0FFTFFUUWhFQXlmQVF0QkRDRVFESjRCQzBFeElSQU1uUUVMUVRJaEVBeWNBUXRCTXlFUURKc0JDMEU1SVJBTW1nRUxRVFVoRUF5WkFRdEJ4UUVoRUF5WUFRdEJDeUVRREpjQkMwRTZJUkFNbGdFTFFUWWhFQXlWQVF0QkNpRVFESlFCQzBFM0lSQU1rd0VMUVRnaEVBeVNBUXRCUENFUURKRUJDMEU3SVJBTWtBRUxRVDBoRUF5UEFRdEJDU0VRREk0QkMwRW9JUkFNalFFTFFUNGhFQXlNQVF0QlB5RVFESXNCQzBIQUFDRVFESW9CQzBIQkFDRVFESWtCQzBIQ0FDRVFESWdCQzBIREFDRVFESWNCQzBIRUFDRVFESVlCQzBIRkFDRVFESVVCQzBIR0FDRVFESVFCQzBFcUlSQU1nd0VMUWNjQUlSQU1nZ0VMUWNnQUlSQU1nUUVMUWNrQUlSQU1nQUVMUWNvQUlSQU1md3RCeXdBaEVBeCtDMEhOQUNFUURIMExRY3dBSVJBTWZBdEJ6Z0FoRUF4N0MwSFBBQ0VRREhvTFFkQUFJUkFNZVF0QjBRQWhFQXg0QzBIU0FDRVFESGNMUWRNQUlSQU1kZ3RCMUFBaEVBeDFDMEhXQUNFUURIUUxRZFVBSVJBTWN3dEJCaUVRREhJTFFkY0FJUkFNY1F0QkJTRVFESEFMUWRnQUlSQU1id3RCQkNFUURHNExRZGtBSVJBTWJRdEIyZ0FoRUF4c0MwSGJBQ0VRREdzTFFkd0FJUkFNYWd0QkF5RVFER2tMUWQwQUlSQU1hQXRCM2dBaEVBeG5DMEhmQUNFUURHWUxRZUVBSVJBTVpRdEI0QUFoRUF4a0MwSGlBQ0VRREdNTFFlTUFJUkFNWWd0QkFpRVFER0VMUWVRQUlSQU1ZQXRCNVFBaEVBeGZDMEhtQUNFUURGNExRZWNBSVJBTVhRdEI2QUFoRUF4Y0MwSHBBQ0VRREZzTFFlb0FJUkFNV2d0QjZ3QWhFQXhaQzBIc0FDRVFERmdMUWUwQUlSQU1Wd3RCN2dBaEVBeFdDMEh2QUNFUURGVUxRZkFBSVJBTVZBdEI4UUFoRUF4VEMwSHlBQ0VRREZJTFFmTUFJUkFNVVF0QjlBQWhFQXhRQzBIMUFDRVFERThMUWZZQUlSQU1UZ3RCOXdBaEVBeE5DMEg0QUNFUURFd0xRZmtBSVJBTVN3dEIrZ0FoRUF4S0MwSDdBQ0VRREVrTFFmd0FJUkFNU0F0Qi9RQWhFQXhIQzBIK0FDRVFERVlMUWY4QUlSQU1SUXRCZ0FFaEVBeEVDMEdCQVNFUURFTUxRWUlCSVJBTVFndEJnd0VoRUF4QkMwR0VBU0VRREVBTFFZVUJJUkFNUHd0QmhnRWhFQXcrQzBHSEFTRVFERDBMUVlnQklSQU1QQXRCaVFFaEVBdzdDMEdLQVNFUUREb0xRWXNCSVJBTU9RdEJqQUVoRUF3NEMwR05BU0VRRERjTFFZNEJJUkFNTmd0Qmp3RWhFQXcxQzBHUUFTRVFERFFMUVpFQklSQU1Nd3RCa2dFaEVBd3lDMEdUQVNFUURERUxRWlFCSVJBTU1BdEJsUUVoRUF3dkMwR1dBU0VRREM0TFFaY0JJUkFNTFF0Qm1BRWhFQXdzQzBHWkFTRVFEQ3NMUVpvQklSQU1LZ3RCbXdFaEVBd3BDMEdjQVNFUURDZ0xRWjBCSVJBTUp3dEJuZ0VoRUF3bUMwR2ZBU0VRRENVTFFhQUJJUkFNSkF0Qm9RRWhFQXdqQzBHaUFTRVFEQ0lMUWFNQklSQU1JUXRCcEFFaEVBd2dDMEdsQVNFUURCOExRYVlCSVJBTUhndEJwd0VoRUF3ZEMwR29BU0VRREJ3TFFha0JJUkFNR3d0QnFnRWhFQXdhQzBHckFTRVFEQmtMUWF3QklSQU1HQXRCclFFaEVBd1hDMEd1QVNFUURCWUxRUUVoRUF3VkMwR3ZBU0VRREJRTFFiQUJJUkFNRXd0QnNRRWhFQXdTQzBHekFTRVFEQkVMUWJJQklSQU1FQXRCdEFFaEVBd1BDMEcxQVNFUURBNExRYllCSVJBTURRdEJ0d0VoRUF3TUMwRzRBU0VRREFzTFFia0JJUkFNQ2d0QnVnRWhFQXdKQzBHN0FTRVFEQWdMUWNZQklSQU1Cd3RCdkFFaEVBd0dDMEc5QVNFUURBVUxRYjRCSVJBTUJBdEJ2d0VoRUF3REMwSEFBU0VRREFJTFFjSUJJUkFNQVF0QndRRWhFQXNEUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUlCQU94d0VBQVFJREJBVUdCd2dKQ2dzTURRNFBFQkVTRXhRVkZoY1lHUm9iSEI0ZklDRWpKU2cvUUVGRVJVWkhTRWxLUzB4TlQxQlJVbFBlQTFkWlcxeGRZR0psWm1kb2FXcHJiRzF2Y0hGeWMzUjFkbmQ0ZVhwN2ZIMStnQUdDQVlVQmhnR0hBWWtCaXdHTUFZMEJqZ0dQQVpBQmtRR1VBWlVCbGdHWEFaZ0JtUUdhQVpzQm5BR2RBWjRCbndHZ0FhRUJvZ0dqQWFRQnBRR21BYWNCcUFHcEFhb0Jxd0dzQWEwQnJnR3ZBYkFCc1FHeUFiTUJ0QUcxQWJZQnR3RzRBYmtCdWdHN0Fid0J2UUcrQWI4QndBSEJBY0lCd3dIRUFjVUJ4Z0hIQWNnQnlRSEtBY3NCekFITkFjNEJ6d0hRQWRFQjBnSFRBZFFCMVFIV0FkY0IyQUhaQWRvQjJ3SGNBZDBCM2dIZ0FlRUI0Z0hqQWVRQjVRSG1BZWNCNkFIcEFlb0I2d0hzQWUwQjdnSHZBZkFCOFFIeUFmTUJtUUtrQXJBQy9nTCtBZ3NnQVNJRUlBSkhEZk1CUWQwQklSQU0vd01MSUFFaUVDQUNSdzNkQVVIREFTRVFEUDREQ3lBQklnRWdBa2NOa0FGQjl3QWhFQXo5QXdzZ0FTSUJJQUpIRFlZQlFlOEFJUkFNL0FNTElBRWlBU0FDUncxL1Flb0FJUkFNK3dNTElBRWlBU0FDUncxN1FlZ0FJUkFNK2dNTElBRWlBU0FDUncxNFFlWUFJUkFNK1FNTElBRWlBU0FDUncwYVFSZ2hFQXo0QXdzZ0FTSUJJQUpIRFJSQkVpRVFEUGNEQ3lBQklnRWdBa2NOV1VIRkFDRVFEUFlEQ3lBQklnRWdBa2NOU2tFL0lSQU05UU1MSUFFaUFTQUNSdzFJUVR3aEVBejBBd3NnQVNJQklBSkhEVUZCTVNFUURQTURDeUFBTFFBdVFRRkdEZXNEREljQ0N5QUFJQUVpQVNBQ0VNQ0FnSUFBUVFGSERlWUJJQUJDQURjRElBem5BUXNnQUNBQklnRWdBaEMwZ0lDQUFDSVFEZWNCSUFFaEFRejFBZ3NDUUNBQklnRWdBa2NOQUVFR0lSQU04QU1MSUFBZ0FVRUJhaUlCSUFJUXU0Q0FnQUFpRUEzb0FTQUJJUUVNTVFzZ0FFSUFOd01nUVJJaEVBelZBd3NnQVNJUUlBSkhEU3RCSFNFUURPMERDd0pBSUFFaUFTQUNSZzBBSUFGQkFXb2hBVUVRSVJBTTFBTUxRUWNoRUF6c0F3c2dBRUlBSUFBcEF5QWlFU0FDSUFFaUVHdXRJaEo5SWhNZ0V5QVJWaHMzQXlBZ0VTQVNWaUlVUlEzbEFVRUlJUkFNNndNTEFrQWdBU0lCSUFKR0RRQWdBRUdKZ0lDQUFEWUNDQ0FBSUFFMkFnUWdBU0VCUVJRaEVBelNBd3RCQ1NFUURPb0RDeUFCSVFFZ0FDa0RJRkFONUFFZ0FTRUJEUElDQ3dKQUlBRWlBU0FDUncwQVFRc2hFQXpwQXdzZ0FDQUJRUUZxSWdFZ0FoQzJnSUNBQUNJUURlVUJJQUVoQVF6eUFnc2dBQ0FCSWdFZ0FoQzRnSUNBQUNJUURlVUJJQUVoQVF6eUFnc2dBQ0FCSWdFZ0FoQzRnSUNBQUNJUURlWUJJQUVoQVF3TkN5QUFJQUVpQVNBQ0VMcUFnSUFBSWhBTjV3RWdBU0VCRFBBQ0N3SkFJQUVpQVNBQ1J3MEFRUThoRUF6bEF3c2dBUzBBQUNJUVFUdEdEUWdnRUVFTlJ3M29BU0FCUVFGcUlRRU03d0lMSUFBZ0FTSUJJQUlRdW9DQWdBQWlFQTNvQVNBQklRRU04Z0lMQTBBQ1FDQUJMUUFBUWZDMWdJQUFhaTBBQUNJUVFRRkdEUUFnRUVFQ1J3M3JBU0FBS0FJRUlSQWdBRUVBTmdJRUlBQWdFQ0FCUVFGcUlnRVF1WUNBZ0FBaUVBM3FBU0FCSVFFTTlBSUxJQUZCQVdvaUFTQUNSdzBBQzBFU0lSQU00Z01MSUFBZ0FTSUJJQUlRdW9DQWdBQWlFQTNwQVNBQklRRU1DZ3NnQVNJQklBSkhEUVpCR3lFUURPQURDd0pBSUFFaUFTQUNSdzBBUVJZaEVBemdBd3NnQUVHS2dJQ0FBRFlDQ0NBQUlBRTJBZ1FnQUNBQklBSVF1SUNBZ0FBaUVBM3FBU0FCSVFGQklDRVFETVlEQ3dKQUlBRWlBU0FDUmcwQUEwQUNRQ0FCTFFBQVFmQzNnSUFBYWkwQUFDSVFRUUpHRFFBQ1FDQVFRWDlxRGdUbEFld0JBT3NCN0FFTElBRkJBV29oQVVFSUlSQU15QU1MSUFGQkFXb2lBU0FDUncwQUMwRVZJUkFNM3dNTFFSVWhFQXplQXdzRFFBSkFJQUV0QUFCQjhMbUFnQUJxTFFBQUloQkJBa1lOQUNBUVFYOXFEZ1RlQWV3QjRBSHJBZXdCQ3lBQlFRRnFJZ0VnQWtjTkFBdEJHQ0VRRE4wREN3SkFJQUVpQVNBQ1JnMEFJQUJCaTRDQWdBQTJBZ2dnQUNBQk5nSUVJQUVoQVVFSElSQU14QU1MUVJraEVBemNBd3NnQVVFQmFpRUJEQUlMQWtBZ0FTSVVJQUpIRFFCQkdpRVFETnNEQ3lBVUlRRUNRQ0FVTFFBQVFYTnFEaFRkQXU0QzdnTHVBdTRDN2dMdUF1NEM3Z0x1QXU0QzdnTHVBdTRDN2dMdUF1NEM3Z0x1QWdEdUFndEJBQ0VRSUFCQkFEWUNIQ0FBUWErTGdJQUFOZ0lRSUFCQkFqWUNEQ0FBSUJSQkFXbzJBaFFNMmdNTEFrQWdBUzBBQUNJUVFUdEdEUUFnRUVFTlJ3M29BU0FCUVFGcUlRRU01UUlMSUFGQkFXb2hBUXRCSWlFUURMOERDd0pBSUFFaUVDQUNSdzBBUVJ3aEVBellBd3RDQUNFUklCQWhBU0FRTFFBQVFWQnFEamZuQWVZQkFRSURCQVVHQndnQUFBQUFBQUFBQ1FvTERBME9BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVBFQkVTRXhRQUMwRWVJUkFNdlFNTFFnSWhFUXpsQVF0Q0F5RVJET1FCQzBJRUlSRU00d0VMUWdVaEVRemlBUXRDQmlFUkRPRUJDMElISVJFTTRBRUxRZ2doRVF6ZkFRdENDU0VSRE40QkMwSUtJUkVNM1FFTFFnc2hFUXpjQVF0Q0RDRVJETnNCQzBJTklSRU0yZ0VMUWc0aEVRelpBUXRDRHlFUkROZ0JDMElLSVJFTTF3RUxRZ3NoRVF6V0FRdENEQ0VSRE5VQkMwSU5JUkVNMUFFTFFnNGhFUXpUQVF0Q0R5RVJETklCQzBJQUlSRUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUJBdEFBQkJVR29PTitVQjVBRUFBUUlEQkFVR0IrWUI1Z0htQWVZQjVnSG1BZVlCQ0FrS0N3d041Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFRNFBFQkVTRStZQkMwSUNJUkVNNUFFTFFnTWhFUXpqQVF0Q0JDRVJET0lCQzBJRklSRU00UUVMUWdZaEVRemdBUXRDQnlFUkROOEJDMElJSVJFTTNnRUxRZ2toRVF6ZEFRdENDaUVSRE53QkMwSUxJUkVNMndFTFFnd2hFUXphQVF0Q0RTRVJETmtCQzBJT0lSRU0yQUVMUWc4aEVRelhBUXRDQ2lFUkROWUJDMElMSVJFTTFRRUxRZ3doRVF6VUFRdENEU0VSRE5NQkMwSU9JUkVNMGdFTFFnOGhFUXpSQVFzZ0FFSUFJQUFwQXlBaUVTQUNJQUVpRUd1dEloSjlJaE1nRXlBUlZoczNBeUFnRVNBU1ZpSVVSUTNTQVVFZklSQU13QU1MQWtBZ0FTSUJJQUpHRFFBZ0FFR0pnSUNBQURZQ0NDQUFJQUUyQWdRZ0FTRUJRU1FoRUF5bkF3dEJJQ0VRREw4REN5QUFJQUVpRUNBQ0VMNkFnSUFBUVg5cURnVzJBUURGQWdIUkFkSUJDMEVSSVJBTXBBTUxJQUJCQVRvQUx5QVFJUUVNdXdNTElBRWlBU0FDUnczU0FVRWtJUkFNdXdNTElBRWlEU0FDUncwZVFjWUFJUkFNdWdNTElBQWdBU0lCSUFJUXNvQ0FnQUFpRUEzVUFTQUJJUUVNdFFFTElBRWlFQ0FDUncwbVFkQUFJUkFNdUFNTEFrQWdBU0lCSUFKSERRQkJLQ0VRRExnREN5QUFRUUEyQWdRZ0FFR01nSUNBQURZQ0NDQUFJQUVnQVJDeGdJQ0FBQ0lRRGRNQklBRWhBUXpZQVFzQ1FDQUJJaEFnQWtjTkFFRXBJUkFNdHdNTElCQXRBQUFpQVVFZ1JnMFVJQUZCQ1VjTjB3RWdFRUVCYWlFQkRCVUxBa0FnQVNJQklBSkdEUUFnQVVFQmFpRUJEQmNMUVNvaEVBeTFBd3NDUUNBQkloQWdBa2NOQUVFcklSQU10UU1MQWtBZ0VDMEFBQ0lCUVFsR0RRQWdBVUVnUnczVkFRc2dBQzBBTEVFSVJnM1RBU0FRSVFFTWtRTUxBa0FnQVNJQklBSkhEUUJCTENFUURMUURDeUFCTFFBQVFRcEhEZFVCSUFGQkFXb2hBUXpKQWdzZ0FTSU9JQUpIRGRVQlFTOGhFQXl5QXdzRFFBSkFJQUV0QUFBaUVFRWdSZzBBQWtBZ0VFRjJhZzRFQU53QjNBRUEyZ0VMSUFFaEFRemdBUXNnQVVFQmFpSUJJQUpIRFFBTFFURWhFQXl4QXd0Qk1pRVFJQUVpRkNBQ1JnMndBeUFDSUJScklBQW9BZ0FpQVdvaEZTQVVJQUZyUVFOcUlSWUNRQU5BSUJRdEFBQWlGMEVnY2lBWElCZEJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkI4THVBZ0FCcUxRQUFSdzBCQWtBZ0FVRURSdzBBUVFZaEFReVdBd3NnQVVFQmFpRUJJQlJCQVdvaUZDQUNSdzBBQ3lBQUlCVTJBZ0FNc1FNTElBQkJBRFlDQUNBVUlRRU0yUUVMUVRNaEVDQUJJaFFnQWtZTnJ3TWdBaUFVYXlBQUtBSUFJZ0ZxSVJVZ0ZDQUJhMEVJYWlFV0FrQURRQ0FVTFFBQUloZEJJSElnRnlBWFFiOS9ha0gvQVhGQkdra2JRZjhCY1NBQlFmUzdnSUFBYWkwQUFFY05BUUpBSUFGQkNFY05BRUVGSVFFTWxRTUxJQUZCQVdvaEFTQVVRUUZxSWhRZ0FrY05BQXNnQUNBVk5nSUFETEFEQ3lBQVFRQTJBZ0FnRkNFQkROZ0JDMEUwSVJBZ0FTSVVJQUpHRGE0RElBSWdGR3NnQUNnQ0FDSUJhaUVWSUJRZ0FXdEJCV29oRmdKQUEwQWdGQzBBQUNJWFFTQnlJQmNnRjBHL2YycEIvd0Z4UVJwSkcwSC9BWEVnQVVIUXdvQ0FBR290QUFCSERRRUNRQ0FCUVFWSERRQkJCeUVCREpRREN5QUJRUUZxSVFFZ0ZFRUJhaUlVSUFKSERRQUxJQUFnRlRZQ0FBeXZBd3NnQUVFQU5nSUFJQlFoQVF6WEFRc0NRQ0FCSWdFZ0FrWU5BQU5BQWtBZ0FTMEFBRUdBdm9DQUFHb3RBQUFpRUVFQlJnMEFJQkJCQWtZTkNpQUJJUUVNM1FFTElBRkJBV29pQVNBQ1J3MEFDMEV3SVJBTXJnTUxRVEFoRUF5dEF3c0NRQ0FCSWdFZ0FrWU5BQU5BQWtBZ0FTMEFBQ0lRUVNCR0RRQWdFRUYyYWc0RTJRSGFBZG9CMlFIYUFRc2dBVUVCYWlJQklBSkhEUUFMUVRnaEVBeXRBd3RCT0NFUURLd0RDd05BQWtBZ0FTMEFBQ0lRUVNCR0RRQWdFRUVKUncwREN5QUJRUUZxSWdFZ0FrY05BQXRCUENFUURLc0RDd05BQWtBZ0FTMEFBQ0lRUVNCR0RRQUNRQUpBSUJCQmRtb09CTm9CQVFIYUFRQUxJQkJCTEVZTjJ3RUxJQUVoQVF3RUN5QUJRUUZxSWdFZ0FrY05BQXRCUHlFUURLb0RDeUFCSVFFTTJ3RUxRY0FBSVJBZ0FTSVVJQUpHRGFnRElBSWdGR3NnQUNnQ0FDSUJhaUVXSUJRZ0FXdEJCbW9oRndKQUEwQWdGQzBBQUVFZ2NpQUJRWURBZ0lBQWFpMEFBRWNOQVNBQlFRWkdEWTRESUFGQkFXb2hBU0FVUVFGcUloUWdBa2NOQUFzZ0FDQVdOZ0lBREtrREN5QUFRUUEyQWdBZ0ZDRUJDMEUySVJBTWpnTUxBa0FnQVNJUElBSkhEUUJCd1FBaEVBeW5Bd3NnQUVHTWdJQ0FBRFlDQ0NBQUlBODJBZ1FnRHlFQklBQXRBQ3hCZjJvT0JNMEIxUUhYQWRrQmh3TUxJQUZCQVdvaEFRek1BUXNDUUNBQklnRWdBa1lOQUFOQUFrQWdBUzBBQUNJUVFTQnlJQkFnRUVHL2YycEIvd0Z4UVJwSkcwSC9BWEVpRUVFSlJnMEFJQkJCSUVZTkFBSkFBa0FDUUFKQUlCQkJuWDlxRGhNQUF3TURBd01EQXdFREF3TURBd01EQXdNQ0F3c2dBVUVCYWlFQlFURWhFQXlSQXdzZ0FVRUJhaUVCUVRJaEVBeVFBd3NnQVVFQmFpRUJRVE1oRUF5UEF3c2dBU0VCRE5BQkN5QUJRUUZxSWdFZ0FrY05BQXRCTlNFUURLVURDMEUxSVJBTXBBTUxBa0FnQVNJQklBSkdEUUFEUUFKQUlBRXRBQUJCZ0x5QWdBQnFMUUFBUVFGR0RRQWdBU0VCRE5NQkN5QUJRUUZxSWdFZ0FrY05BQXRCUFNFUURLUURDMEU5SVJBTW93TUxJQUFnQVNJQklBSVFzSUNBZ0FBaUVBM1dBU0FCSVFFTUFRc2dFRUVCYWlFQkMwRThJUkFNaHdNTEFrQWdBU0lCSUFKSERRQkJ3Z0FoRUF5Z0F3c0NRQU5BQWtBZ0FTMEFBRUYzYWc0WUFBTCtBdjRDaEFQK0F2NEMvZ0wrQXY0Qy9nTCtBdjRDL2dMK0F2NEMvZ0wrQXY0Qy9nTCtBdjRDL2dJQS9nSUxJQUZCQVdvaUFTQUNSdzBBQzBIQ0FDRVFES0FEQ3lBQlFRRnFJUUVnQUMwQUxVRUJjVVVOdlFFZ0FTRUJDMEVzSVJBTWhRTUxJQUVpQVNBQ1J3M1RBVUhFQUNFUURKMERDd05BQWtBZ0FTMEFBRUdRd0lDQUFHb3RBQUJCQVVZTkFDQUJJUUVNdHdJTElBRkJBV29pQVNBQ1J3MEFDMEhGQUNFUURKd0RDeUFOTFFBQUloQkJJRVlOc3dFZ0VFRTZSdzJCQXlBQUtBSUVJUUVnQUVFQU5nSUVJQUFnQVNBTkVLK0FnSUFBSWdFTjBBRWdEVUVCYWlFQkRMTUNDMEhIQUNFUUlBRWlEU0FDUmcyYUF5QUNJQTFySUFBb0FnQWlBV29oRmlBTklBRnJRUVZxSVJjRFFDQU5MUUFBSWhSQklISWdGQ0FVUWI5L2FrSC9BWEZCR2trYlFmOEJjU0FCUVpEQ2dJQUFhaTBBQUVjTmdBTWdBVUVGUmczMEFpQUJRUUZxSVFFZ0RVRUJhaUlOSUFKSERRQUxJQUFnRmpZQ0FBeWFBd3RCeUFBaEVDQUJJZzBnQWtZTm1RTWdBaUFOYXlBQUtBSUFJZ0ZxSVJZZ0RTQUJhMEVKYWlFWEEwQWdEUzBBQUNJVVFTQnlJQlFnRkVHL2YycEIvd0Z4UVJwSkcwSC9BWEVnQVVHV3dvQ0FBR290QUFCSERmOENBa0FnQVVFSlJ3MEFRUUloQVF6MUFnc2dBVUVCYWlFQklBMUJBV29pRFNBQ1J3MEFDeUFBSUJZMkFnQU1tUU1MQWtBZ0FTSU5JQUpIRFFCQnlRQWhFQXlaQXdzQ1FBSkFJQTB0QUFBaUFVRWdjaUFCSUFGQnYzOXFRZjhCY1VFYVNSdEIvd0Z4UVpKL2FnNEhBSUFEZ0FPQUE0QURnQU1CZ0FNTElBMUJBV29oQVVFK0lSQU1nQU1MSUExQkFXb2hBVUUvSVJBTS93SUxRY29BSVJBZ0FTSU5JQUpHRFpjRElBSWdEV3NnQUNnQ0FDSUJhaUVXSUEwZ0FXdEJBV29oRndOQUlBMHRBQUFpRkVFZ2NpQVVJQlJCdjM5cVFmOEJjVUVhU1J0Qi93RnhJQUZCb01LQWdBQnFMUUFBUnczOUFpQUJRUUZHRGZBQ0lBRkJBV29oQVNBTlFRRnFJZzBnQWtjTkFBc2dBQ0FXTmdJQURKY0RDMEhMQUNFUUlBRWlEU0FDUmcyV0F5QUNJQTFySUFBb0FnQWlBV29oRmlBTklBRnJRUTVxSVJjRFFDQU5MUUFBSWhSQklISWdGQ0FVUWI5L2FrSC9BWEZCR2trYlFmOEJjU0FCUWFMQ2dJQUFhaTBBQUVjTi9BSWdBVUVPUmczd0FpQUJRUUZxSVFFZ0RVRUJhaUlOSUFKSERRQUxJQUFnRmpZQ0FBeVdBd3RCekFBaEVDQUJJZzBnQWtZTmxRTWdBaUFOYXlBQUtBSUFJZ0ZxSVJZZ0RTQUJhMEVQYWlFWEEwQWdEUzBBQUNJVVFTQnlJQlFnRkVHL2YycEIvd0Z4UVJwSkcwSC9BWEVnQVVIQXdvQ0FBR290QUFCSERmc0NBa0FnQVVFUFJ3MEFRUU1oQVF6eEFnc2dBVUVCYWlFQklBMUJBV29pRFNBQ1J3MEFDeUFBSUJZMkFnQU1sUU1MUWMwQUlSQWdBU0lOSUFKR0RaUURJQUlnRFdzZ0FDZ0NBQ0lCYWlFV0lBMGdBV3RCQldvaEZ3TkFJQTB0QUFBaUZFRWdjaUFVSUJSQnYzOXFRZjhCY1VFYVNSdEIvd0Z4SUFGQjBNS0FnQUJxTFFBQVJ3MzZBZ0pBSUFGQkJVY05BRUVFSVFFTThBSUxJQUZCQVdvaEFTQU5RUUZxSWcwZ0FrY05BQXNnQUNBV05nSUFESlFEQ3dKQUlBRWlEU0FDUncwQVFjNEFJUkFNbEFNTEFrQUNRQUpBQWtBZ0RTMEFBQ0lCUVNCeUlBRWdBVUcvZjJwQi93RnhRUnBKRzBIL0FYRkJuWDlxRGhNQS9RTDlBdjBDL1FMOUF2MEMvUUw5QXYwQy9RTDlBdjBDQWYwQy9RTDlBZ0lEL1FJTElBMUJBV29oQVVIQkFDRVFEUDBDQ3lBTlFRRnFJUUZCd2dBaEVBejhBZ3NnRFVFQmFpRUJRY01BSVJBTSt3SUxJQTFCQVdvaEFVSEVBQ0VRRFBvQ0N3SkFJQUVpQVNBQ1JnMEFJQUJCallDQWdBQTJBZ2dnQUNBQk5nSUVJQUVoQVVIRkFDRVFEUG9DQzBIUEFDRVFESklEQ3lBUUlRRUNRQUpBSUJBdEFBQkJkbW9PQkFHb0FxZ0NBS2dDQ3lBUVFRRnFJUUVMUVNjaEVBejRBZ3NDUUNBQklnRWdBa2NOQUVIUkFDRVFESkVEQ3dKQUlBRXRBQUJCSUVZTkFDQUJJUUVNalFFTElBRkJBV29oQVNBQUxRQXRRUUZ4UlEzSEFTQUJJUUVNakFFTElBRWlGeUFDUnczSUFVSFNBQ0VRREk4REMwSFRBQ0VRSUFFaUZDQUNSZzJPQXlBQ0lCUnJJQUFvQWdBaUFXb2hGaUFVSUFGclFRRnFJUmNEUUNBVUxRQUFJQUZCMXNLQWdBQnFMUUFBUnczTUFTQUJRUUZHRGNjQklBRkJBV29oQVNBVVFRRnFJaFFnQWtjTkFBc2dBQ0FXTmdJQURJNERDd0pBSUFFaUFTQUNSdzBBUWRVQUlSQU1qZ01MSUFFdEFBQkJDa2NOekFFZ0FVRUJhaUVCRE1jQkN3SkFJQUVpQVNBQ1J3MEFRZFlBSVJBTWpRTUxBa0FDUUNBQkxRQUFRWFpxRGdRQXpRSE5BUUhOQVFzZ0FVRUJhaUVCRE1jQkN5QUJRUUZxSVFGQnlnQWhFQXp6QWdzZ0FDQUJJZ0VnQWhDdWdJQ0FBQ0lRRGNzQklBRWhBVUhOQUNFUURQSUNDeUFBTFFBcFFTSkdEWVVEREtZQ0N3SkFJQUVpQVNBQ1J3MEFRZHNBSVJBTWlnTUxRUUFoRkVFQklSZEJBU0VXUVFBaEVBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FDQUJMUUFBUVZCcURnclVBZE1CQUFFQ0F3UUZCZ2pWQVF0QkFpRVFEQVlMUVFNaEVBd0ZDMEVFSVJBTUJBdEJCU0VRREFNTFFRWWhFQXdDQzBFSElSQU1BUXRCQ0NFUUMwRUFJUmRCQUNFV1FRQWhGQXpNQVF0QkNTRVFRUUVoRkVFQUlSZEJBQ0VXRE1zQkN3SkFJQUVpQVNBQ1J3MEFRZDBBSVJBTWlRTUxJQUV0QUFCQkxrY056QUVnQVVFQmFpRUJES1lDQ3lBQklnRWdBa2NOekFGQjN3QWhFQXlIQXdzQ1FDQUJJZ0VnQWtZTkFDQUFRWTZBZ0lBQU5nSUlJQUFnQVRZQ0JDQUJJUUZCMEFBaEVBenVBZ3RCNEFBaEVBeUdBd3RCNFFBaEVDQUJJZ0VnQWtZTmhRTWdBaUFCYXlBQUtBSUFJaFJxSVJZZ0FTQVVhMEVEYWlFWEEwQWdBUzBBQUNBVVFlTENnSUFBYWkwQUFFY056UUVnRkVFRFJnM01BU0FVUVFGcUlSUWdBVUVCYWlJQklBSkhEUUFMSUFBZ0ZqWUNBQXlGQXd0QjRnQWhFQ0FCSWdFZ0FrWU5oQU1nQWlBQmF5QUFLQUlBSWhScUlSWWdBU0FVYTBFQ2FpRVhBMEFnQVMwQUFDQVVRZWJDZ0lBQWFpMEFBRWNOekFFZ0ZFRUNSZzNPQVNBVVFRRnFJUlFnQVVFQmFpSUJJQUpIRFFBTElBQWdGallDQUF5RUF3dEI0d0FoRUNBQklnRWdBa1lOZ3dNZ0FpQUJheUFBS0FJQUloUnFJUllnQVNBVWEwRURhaUVYQTBBZ0FTMEFBQ0FVUWVuQ2dJQUFhaTBBQUVjTnl3RWdGRUVEUmczT0FTQVVRUUZxSVJRZ0FVRUJhaUlCSUFKSERRQUxJQUFnRmpZQ0FBeURBd3NDUUNBQklnRWdBa2NOQUVIbEFDRVFESU1EQ3lBQUlBRkJBV29pQVNBQ0VLaUFnSUFBSWhBTnpRRWdBU0VCUWRZQUlSQU02UUlMQWtBZ0FTSUJJQUpHRFFBRFFBSkFJQUV0QUFBaUVFRWdSZzBBQWtBQ1FBSkFJQkJCdUg5cURnc0FBYzhCendIUEFjOEJ6d0hQQWM4Qnp3RUN6d0VMSUFGQkFXb2hBVUhTQUNFUURPMENDeUFCUVFGcUlRRkIwd0FoRUF6c0Fnc2dBVUVCYWlFQlFkUUFJUkFNNndJTElBRkJBV29pQVNBQ1J3MEFDMEhrQUNFUURJSURDMEhrQUNFUURJRURDd05BQWtBZ0FTMEFBRUh3d29DQUFHb3RBQUFpRUVFQlJnMEFJQkJCZm1vT0E4OEIwQUhSQWRJQkN5QUJRUUZxSWdFZ0FrY05BQXRCNWdBaEVBeUFBd3NDUUNBQklnRWdBa1lOQUNBQlFRRnFJUUVNQXd0QjV3QWhFQXovQWdzRFFBSkFJQUV0QUFCQjhNU0FnQUJxTFFBQUloQkJBVVlOQUFKQUlCQkJmbW9PQk5JQjB3SFVBUURWQVFzZ0FTRUJRZGNBSVJBTTV3SUxJQUZCQVdvaUFTQUNSdzBBQzBIb0FDRVFEUDRDQ3dKQUlBRWlBU0FDUncwQVFla0FJUkFNL2dJTEFrQWdBUzBBQUNJUVFYWnFEaHE2QWRVQjFRRzhBZFVCMVFIVkFkVUIxUUhWQWRVQjFRSFZBZFVCMVFIVkFkVUIxUUhWQWRVQjFRSFZBY29CMVFIVkFRRFRBUXNnQVVFQmFpRUJDMEVHSVJBTTR3SUxBMEFDUUNBQkxRQUFRZkRHZ0lBQWFpMEFBRUVCUmcwQUlBRWhBUXllQWdzZ0FVRUJhaUlCSUFKSERRQUxRZW9BSVJBTSt3SUxBa0FnQVNJQklBSkdEUUFnQVVFQmFpRUJEQU1MUWVzQUlSQU0rZ0lMQWtBZ0FTSUJJQUpIRFFCQjdBQWhFQXo2QWdzZ0FVRUJhaUVCREFFTEFrQWdBU0lCSUFKSERRQkI3UUFoRUF6NUFnc2dBVUVCYWlFQkMwRUVJUkFNM2dJTEFrQWdBU0lVSUFKSERRQkI3Z0FoRUF6M0Fnc2dGQ0VCQWtBQ1FBSkFJQlF0QUFCQjhNaUFnQUJxTFFBQVFYOXFEZ2ZVQWRVQjFnRUFuQUlCQXRjQkN5QVVRUUZxSVFFTUNnc2dGRUVCYWlFQkRNMEJDMEVBSVJBZ0FFRUFOZ0ljSUFCQm01S0FnQUEyQWhBZ0FFRUhOZ0lNSUFBZ0ZFRUJhallDRkF6MkFnc0NRQU5BQWtBZ0FTMEFBRUh3eUlDQUFHb3RBQUFpRUVFRVJnMEFBa0FDUUNBUVFYOXFEZ2ZTQWRNQjFBSFpBUUFFQWRrQkN5QUJJUUZCMmdBaEVBemdBZ3NnQVVFQmFpRUJRZHdBSVJBTTN3SUxJQUZCQVdvaUFTQUNSdzBBQzBIdkFDRVFEUFlDQ3lBQlFRRnFJUUVNeXdFTEFrQWdBU0lVSUFKSERRQkI4QUFoRUF6MUFnc2dGQzBBQUVFdlJ3M1VBU0FVUVFGcUlRRU1CZ3NDUUNBQkloUWdBa2NOQUVIeEFDRVFEUFFDQ3dKQUlCUXRBQUFpQVVFdlJ3MEFJQlJCQVdvaEFVSGRBQ0VRRE5zQ0N5QUJRWFpxSWdSQkZrc04wd0ZCQVNBRWRFR0pnSUFDY1VVTjB3RU15Z0lMQWtBZ0FTSUJJQUpHRFFBZ0FVRUJhaUVCUWQ0QUlSQU0yZ0lMUWZJQUlSQU04Z0lMQWtBZ0FTSVVJQUpIRFFCQjlBQWhFQXp5QWdzZ0ZDRUJBa0FnRkMwQUFFSHd6SUNBQUdvdEFBQkJmMm9PQThrQ2xBSUExQUVMUWVFQUlSQU0yQUlMQWtBZ0FTSVVJQUpHRFFBRFFBSkFJQlF0QUFCQjhNcUFnQUJxTFFBQUlnRkJBMFlOQUFKQUlBRkJmMm9PQXNzQ0FOVUJDeUFVSVFGQjN3QWhFQXphQWdzZ0ZFRUJhaUlVSUFKSERRQUxRZk1BSVJBTThRSUxRZk1BSVJBTThBSUxBa0FnQVNJQklBSkdEUUFnQUVHUGdJQ0FBRFlDQ0NBQUlBRTJBZ1FnQVNFQlFlQUFJUkFNMXdJTFFmVUFJUkFNN3dJTEFrQWdBU0lCSUFKSERRQkI5Z0FoRUF6dkFnc2dBRUdQZ0lDQUFEWUNDQ0FBSUFFMkFnUWdBU0VCQzBFRElSQU0xQUlMQTBBZ0FTMEFBRUVnUnczREFpQUJRUUZxSWdFZ0FrY05BQXRCOXdBaEVBenNBZ3NDUUNBQklnRWdBa2NOQUVINEFDRVFET3dDQ3lBQkxRQUFRU0JIRGM0QklBRkJBV29oQVF6dkFRc2dBQ0FCSWdFZ0FoQ3NnSUNBQUNJUURjNEJJQUVoQVF5T0Fnc0NRQ0FCSWdRZ0FrY05BRUg2QUNFUURPb0NDeUFFTFFBQVFjd0FSdzNSQVNBRVFRRnFJUUZCRXlFUURNOEJDd0pBSUFFaUJDQUNSdzBBUWZzQUlSQU02UUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJXb2hFQU5BSUFRdEFBQWdBVUh3em9DQUFHb3RBQUJIRGRBQklBRkJCVVlOemdFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQit3QWhFQXpvQWdzQ1FDQUJJZ1FnQWtjTkFFSDhBQ0VRRE9nQ0N3SkFBa0FnQkMwQUFFRzlmMm9PREFEUkFkRUIwUUhSQWRFQjBRSFJBZEVCMFFIUkFRSFJBUXNnQkVFQmFpRUJRZVlBSVJBTXp3SUxJQVJCQVdvaEFVSG5BQ0VRRE00Q0N3SkFJQUVpQkNBQ1J3MEFRZjBBSVJBTTV3SUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQW1vaEVBSkFBMEFnQkMwQUFDQUJRZTNQZ0lBQWFpMEFBRWNOendFZ0FVRUNSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWYwQUlSQU01d0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJFQ0VRRE13QkN3SkFJQUVpQkNBQ1J3MEFRZjRBSVJBTTVnSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQldvaEVBSkFBMEFnQkMwQUFDQUJRZmJPZ0lBQWFpMEFBRWNOemdFZ0FVRUZSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWY0QUlSQU01Z0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJGaUVRRE1zQkN3SkFJQUVpQkNBQ1J3MEFRZjhBSVJBTTVRSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQTJvaEVBSkFBMEFnQkMwQUFDQUJRZnpPZ0lBQWFpMEFBRWNOelFFZ0FVRURSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWY4QUlSQU01UUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJCU0VRRE1vQkN3SkFJQUVpQkNBQ1J3MEFRWUFCSVJBTTVBSUxJQVF0QUFCQjJRQkhEY3NCSUFSQkFXb2hBVUVJSVJBTXlRRUxBa0FnQVNJRUlBSkhEUUJCZ1FFaEVBempBZ3NDUUFKQUlBUXRBQUJCc245cURnTUF6QUVCekFFTElBUkJBV29oQVVIckFDRVFETW9DQ3lBRVFRRnFJUUZCN0FBaEVBekpBZ3NDUUNBQklnUWdBa2NOQUVHQ0FTRVFET0lDQ3dKQUFrQWdCQzBBQUVHNGYyb09DQURMQWNzQnl3SExBY3NCeXdFQnl3RUxJQVJCQVdvaEFVSHFBQ0VRRE1rQ0N5QUVRUUZxSVFGQjdRQWhFQXpJQWdzQ1FDQUJJZ1FnQWtjTkFFR0RBU0VRRE9FQ0N5QUNJQVJySUFBb0FnQWlBV29oRUNBRUlBRnJRUUpxSVJRQ1FBTkFJQVF0QUFBZ0FVR0F6NENBQUdvdEFBQkhEY2tCSUFGQkFrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0VEWUNBRUdEQVNFUURPRUNDMEVBSVJBZ0FFRUFOZ0lBSUJSQkFXb2hBUXpHQVFzQ1FDQUJJZ1FnQWtjTkFFR0VBU0VRRE9BQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUVJxSVJBQ1FBTkFJQVF0QUFBZ0FVR0R6NENBQUdvdEFBQkhEY2dCSUFGQkJFWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdFQVNFUURPQUNDeUFBUVFBMkFnQWdFRUVCYWlFQlFTTWhFQXpGQVFzQ1FDQUJJZ1FnQWtjTkFFR0ZBU0VRRE44Q0N3SkFBa0FnQkMwQUFFRzBmMm9PQ0FESUFjZ0J5QUhJQWNnQnlBRUJ5QUVMSUFSQkFXb2hBVUh2QUNFUURNWUNDeUFFUVFGcUlRRkI4QUFoRUF6RkFnc0NRQ0FCSWdRZ0FrY05BRUdHQVNFUURONENDeUFFTFFBQVFjVUFSdzNGQVNBRVFRRnFJUUVNZ3dJTEFrQWdBU0lFSUFKSERRQkJod0VoRUF6ZEFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVEYWlFUUFrQURRQ0FFTFFBQUlBRkJpTStBZ0FCcUxRQUFSdzNGQVNBQlFRTkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCaHdFaEVBemRBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRXRJUkFNd2dFTEFrQWdBU0lFSUFKSERRQkJpQUVoRUF6Y0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVJYWlFUUFrQURRQ0FFTFFBQUlBRkIwTStBZ0FCcUxRQUFSdzNFQVNBQlFRaEdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCaUFFaEVBemNBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRXBJUkFNd1FFTEFrQWdBU0lCSUFKSERRQkJpUUVoRUF6YkFndEJBU0VRSUFFdEFBQkIzd0JIRGNBQklBRkJBV29oQVF5QkFnc0NRQ0FCSWdRZ0FrY05BRUdLQVNFUUROb0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFGcUlSQURRQ0FFTFFBQUlBRkJqTStBZ0FCcUxRQUFSdzNCQVNBQlFRRkdEYThDSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVlvQklSQU0yUUlMQWtBZ0FTSUVJQUpIRFFCQml3RWhFQXpaQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUNhaUVRQWtBRFFDQUVMUUFBSUFGQmpzK0FnQUJxTFFBQVJ3M0JBU0FCUVFKR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJpd0VoRUF6WkFnc2dBRUVBTmdJQUlCQkJBV29oQVVFQ0lSQU12Z0VMQWtBZ0FTSUVJQUpIRFFCQmpBRWhFQXpZQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQWtBRFFDQUVMUUFBSUFGQjhNK0FnQUJxTFFBQVJ3M0FBU0FCUVFGR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJqQUVoRUF6WUFnc2dBRUVBTmdJQUlCQkJBV29oQVVFZklSQU12UUVMQWtBZ0FTSUVJQUpIRFFCQmpRRWhFQXpYQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQWtBRFFDQUVMUUFBSUFGQjhzK0FnQUJxTFFBQVJ3Mi9BU0FCUVFGR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJqUUVoRUF6WEFnc2dBRUVBTmdJQUlCQkJBV29oQVVFSklSQU12QUVMQWtBZ0FTSUVJQUpIRFFCQmpnRWhFQXpXQWdzQ1FBSkFJQVF0QUFCQnQzOXFEZ2NBdndHL0FiOEJ2d0cvQVFHL0FRc2dCRUVCYWlFQlFmZ0FJUkFNdlFJTElBUkJBV29oQVVINUFDRVFETHdDQ3dKQUlBRWlCQ0FDUncwQVFZOEJJUkFNMVFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCV29oRUFKQUEwQWdCQzBBQUNBQlFaSFBnSUFBYWkwQUFFY052UUVnQVVFRlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWThCSVJBTTFRSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkdDRVFETG9CQ3dKQUlBRWlCQ0FDUncwQVFaQUJJUkFNMUFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBbW9oRUFKQUEwQWdCQzBBQUNBQlFaZlBnSUFBYWkwQUFFY052QUVnQVVFQ1JnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWkFCSVJBTTFBSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkZ5RVFETGtCQ3dKQUlBRWlCQ0FDUncwQVFaRUJJUkFNMHdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCbW9oRUFKQUEwQWdCQzBBQUNBQlFaclBnSUFBYWkwQUFFY051d0VnQVVFR1JnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWkVCSVJBTTB3SUxJQUJCQURZQ0FDQVFRUUZxSVFGQkZTRVFETGdCQ3dKQUlBRWlCQ0FDUncwQVFaSUJJUkFNMGdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCV29oRUFKQUEwQWdCQzBBQUNBQlFhSFBnSUFBYWkwQUFFY051Z0VnQVVFRlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWklCSVJBTTBnSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkhpRVFETGNCQ3dKQUlBRWlCQ0FDUncwQVFaTUJJUkFNMFFJTElBUXRBQUJCekFCSERiZ0JJQVJCQVdvaEFVRUtJUkFNdGdFTEFrQWdCQ0FDUncwQVFaUUJJUkFNMEFJTEFrQUNRQ0FFTFFBQVFiOS9hZzRQQUxrQnVRRzVBYmtCdVFHNUFia0J1UUc1QWJrQnVRRzVBYmtCQWJrQkN5QUVRUUZxSVFGQi9nQWhFQXkzQWdzZ0JFRUJhaUVCUWY4QUlSQU10Z0lMQWtBZ0JDQUNSdzBBUVpVQklSQU16d0lMQWtBQ1FDQUVMUUFBUWI5L2FnNERBTGdCQWJnQkN5QUVRUUZxSVFGQi9RQWhFQXkyQWdzZ0JFRUJhaUVFUVlBQklSQU10UUlMQWtBZ0JDQUNSdzBBUVpZQklSQU16Z0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFXb2hFQUpBQTBBZ0JDMEFBQ0FCUWFmUGdJQUFhaTBBQUVjTnRnRWdBVUVCUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFaWUJJUkFNemdJTElBQkJBRFlDQUNBUVFRRnFJUUZCQ3lFUURMTUJDd0pBSUFRZ0FrY05BRUdYQVNFUURNMENDd0pBQWtBQ1FBSkFJQVF0QUFCQlUyb09Jd0M0QWJnQnVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCQWJnQnVBRzRBYmdCdUFFQ3VBRzRBYmdCQTdnQkN5QUVRUUZxSVFGQit3QWhFQXkyQWdzZ0JFRUJhaUVCUWZ3QUlSQU10UUlMSUFSQkFXb2hCRUdCQVNFUURMUUNDeUFFUVFGcUlRUkJnZ0VoRUF5ekFnc0NRQ0FFSUFKSERRQkJtQUVoRUF6TUFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVFYWlFUUFrQURRQ0FFTFFBQUlBRkJxYytBZ0FCcUxRQUFSdzIwQVNBQlFRUkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCbUFFaEVBek1BZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRVpJUkFNc1FFTEFrQWdCQ0FDUncwQVFaa0JJUkFNeXdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCV29oRUFKQUEwQWdCQzBBQUNBQlFhN1BnSUFBYWkwQUFFY05zd0VnQVVFRlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWmtCSVJBTXl3SUxJQUJCQURZQ0FDQVFRUUZxSVFGQkJpRVFETEFCQ3dKQUlBUWdBa2NOQUVHYUFTRVFETW9DQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRRnFJUkFDUUFOQUlBUXRBQUFnQVVHMHo0Q0FBR290QUFCSERiSUJJQUZCQVVZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR2FBU0VRRE1vQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVJ3aEVBeXZBUXNDUUNBRUlBSkhEUUJCbXdFaEVBekpBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFQmFpRVFBa0FEUUNBRUxRQUFJQUZCdHMrQWdBQnFMUUFBUncyeEFTQUJRUUZHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQm13RWhFQXpKQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVuSVJBTXJnRUxBa0FnQkNBQ1J3MEFRWndCSVJBTXlBSUxBa0FDUUNBRUxRQUFRYXgvYWc0Q0FBR3hBUXNnQkVFQmFpRUVRWVlCSVJBTXJ3SUxJQVJCQVdvaEJFR0hBU0VRREs0Q0N3SkFJQVFnQWtjTkFFR2RBU0VRRE1jQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUZxSVJBQ1FBTkFJQVF0QUFBZ0FVRzR6NENBQUdvdEFBQkhEYThCSUFGQkFVWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdkQVNFUURNY0NDeUFBUVFBMkFnQWdFRUVCYWlFQlFTWWhFQXlzQVFzQ1FDQUVJQUpIRFFCQm5nRWhFQXpHQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQWtBRFFDQUVMUUFBSUFGQnVzK0FnQUJxTFFBQVJ3MnVBU0FCUVFGR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJuZ0VoRUF6R0Fnc2dBRUVBTmdJQUlCQkJBV29oQVVFRElSQU1xd0VMQWtBZ0JDQUNSdzBBUVo4QklSQU14UUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFtb2hFQUpBQTBBZ0JDMEFBQ0FCUWUzUGdJQUFhaTBBQUVjTnJRRWdBVUVDUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFaOEJJUkFNeFFJTElBQkJBRFlDQUNBUVFRRnFJUUZCRENFUURLb0JDd0pBSUFRZ0FrY05BRUdnQVNFUURNUUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFOcUlSQUNRQU5BSUFRdEFBQWdBVUc4ejRDQUFHb3RBQUJIRGF3QklBRkJBMFlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHZ0FTRVFETVFDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUTBoRUF5cEFRc0NRQ0FFSUFKSERRQkJvUUVoRUF6REFnc0NRQUpBSUFRdEFBQkJ1bjlxRGdzQXJBR3NBYXdCckFHc0Fhd0JyQUdzQWF3QkFhd0JDeUFFUVFGcUlRUkJpd0VoRUF5cUFnc2dCRUVCYWlFRVFZd0JJUkFNcVFJTEFrQWdCQ0FDUncwQVFhSUJJUkFNd2dJTElBUXRBQUJCMEFCSERha0JJQVJCQVdvaEJBenBBUXNDUUNBRUlBSkhEUUJCb3dFaEVBekJBZ3NDUUFKQUlBUXRBQUJCdDM5cURnY0JxZ0dxQWFvQnFnR3FBUUNxQVFzZ0JFRUJhaUVFUVk0QklSQU1xQUlMSUFSQkFXb2hBVUVpSVJBTXBnRUxBa0FnQkNBQ1J3MEFRYVFCSVJBTXdBSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRY0RQZ0lBQWFpMEFBRWNOcUFFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWFRQklSQU13QUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJIU0VRREtVQkN3SkFJQVFnQWtjTkFFR2xBU0VRREw4Q0N3SkFBa0FnQkMwQUFFR3VmMm9PQXdDb0FRR29BUXNnQkVFQmFpRUVRWkFCSVJBTXBnSUxJQVJCQVdvaEFVRUVJUkFNcEFFTEFrQWdCQ0FDUncwQVFhWUJJUkFNdmdJTEFrQUNRQUpBQWtBQ1FDQUVMUUFBUWI5L2FnNFZBS29CcWdHcUFhb0JxZ0dxQWFvQnFnR3FBYW9CQWFvQnFnRUNxZ0dxQVFPcUFhb0JCS29CQ3lBRVFRRnFJUVJCaUFFaEVBeW9BZ3NnQkVFQmFpRUVRWWtCSVJBTXB3SUxJQVJCQVdvaEJFR0tBU0VRREtZQ0N5QUVRUUZxSVFSQmp3RWhFQXlsQWdzZ0JFRUJhaUVFUVpFQklSQU1wQUlMQWtBZ0JDQUNSdzBBUWFjQklSQU12UUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFtb2hFQUpBQTBBZ0JDMEFBQ0FCUWUzUGdJQUFhaTBBQUVjTnBRRWdBVUVDUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFhY0JJUkFNdlFJTElBQkJBRFlDQUNBUVFRRnFJUUZCRVNFUURLSUJDd0pBSUFRZ0FrY05BRUdvQVNFUURMd0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUhDejRDQUFHb3RBQUJIRGFRQklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHb0FTRVFETHdDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRU3doRUF5aEFRc0NRQ0FFSUFKSERRQkJxUUVoRUF5N0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVFYWlFUUFrQURRQ0FFTFFBQUlBRkJ4YytBZ0FCcUxRQUFSdzJqQVNBQlFRUkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCcVFFaEVBeTdBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRXJJUkFNb0FFTEFrQWdCQ0FDUncwQVFhb0JJUkFNdWdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBbW9oRUFKQUEwQWdCQzBBQUNBQlFjclBnSUFBYWkwQUFFY05vZ0VnQVVFQ1JnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRYW9CSVJBTXVnSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkZDRVFESjhCQ3dKQUlBUWdBa2NOQUVHckFTRVFETGtDQ3dKQUFrQUNRQUpBSUFRdEFBQkJ2bjlxRGc4QUFRS2tBYVFCcEFHa0FhUUJwQUdrQWFRQnBBR2tBYVFCQTZRQkN5QUVRUUZxSVFSQmt3RWhFQXlpQWdzZ0JFRUJhaUVFUVpRQklSQU1vUUlMSUFSQkFXb2hCRUdWQVNFUURLQUNDeUFFUVFGcUlRUkJsZ0VoRUF5ZkFnc0NRQ0FFSUFKSERRQkJyQUVoRUF5NEFnc2dCQzBBQUVIRkFFY05ud0VnQkVFQmFpRUVET0FCQ3dKQUlBUWdBa2NOQUVHdEFTRVFETGNDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRSnFJUkFDUUFOQUlBUXRBQUFnQVVITno0Q0FBR290QUFCSERaOEJJQUZCQWtZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR3RBU0VRRExjQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVE0aEVBeWNBUXNDUUNBRUlBSkhEUUJCcmdFaEVBeTJBZ3NnQkMwQUFFSFFBRWNOblFFZ0JFRUJhaUVCUVNVaEVBeWJBUXNDUUNBRUlBSkhEUUJCcndFaEVBeTFBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFSWFpRVFBa0FEUUNBRUxRQUFJQUZCME0rQWdBQnFMUUFBUncyZEFTQUJRUWhHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQnJ3RWhFQXkxQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVxSVJBTW1nRUxBa0FnQkNBQ1J3MEFRYkFCSVJBTXRBSUxBa0FDUUNBRUxRQUFRYXQvYWc0TEFKMEJuUUdkQVowQm5RR2RBWjBCblFHZEFRR2RBUXNnQkVFQmFpRUVRWm9CSVJBTW13SUxJQVJCQVdvaEJFR2JBU0VRREpvQ0N3SkFJQVFnQWtjTkFFR3hBU0VRRExNQ0N3SkFBa0FnQkMwQUFFRy9mMm9PRkFDY0Fad0JuQUdjQVp3Qm5BR2NBWndCbkFHY0Fad0JuQUdjQVp3Qm5BR2NBWndCbkFFQm5BRUxJQVJCQVdvaEJFR1pBU0VRREpvQ0N5QUVRUUZxSVFSQm5BRWhFQXlaQWdzQ1FDQUVJQUpIRFFCQnNnRWhFQXl5QWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRURhaUVRQWtBRFFDQUVMUUFBSUFGQjJjK0FnQUJxTFFBQVJ3MmFBU0FCUVFOR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJzZ0VoRUF5eUFnc2dBRUVBTmdJQUlCQkJBV29oQVVFaElSQU1sd0VMQWtBZ0JDQUNSdzBBUWJNQklSQU1zUUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJtb2hFQUpBQTBBZ0JDMEFBQ0FCUWQzUGdJQUFhaTBBQUVjTm1RRWdBVUVHUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFiTUJJUkFNc1FJTElBQkJBRFlDQUNBUVFRRnFJUUZCR2lFUURKWUJDd0pBSUFRZ0FrY05BRUcwQVNFUURMQUNDd0pBQWtBQ1FDQUVMUUFBUWJ0L2FnNFJBSm9CbWdHYUFab0JtZ0dhQVpvQm1nR2FBUUdhQVpvQm1nR2FBWm9CQXBvQkN5QUVRUUZxSVFSQm5RRWhFQXlZQWdzZ0JFRUJhaUVFUVo0QklSQU1sd0lMSUFSQkFXb2hCRUdmQVNFUURKWUNDd0pBSUFRZ0FrY05BRUcxQVNFUURLOENDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUhrejRDQUFHb3RBQUJIRFpjQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHMUFTRVFESzhDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRU2doRUF5VUFRc0NRQ0FFSUFKSERRQkJ0Z0VoRUF5dUFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVDYWlFUUFrQURRQ0FFTFFBQUlBRkI2cytBZ0FCcUxRQUFSdzJXQVNBQlFRSkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCdGdFaEVBeXVBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRUhJUkFNa3dFTEFrQWdCQ0FDUncwQVFiY0JJUkFNclFJTEFrQUNRQ0FFTFFBQVFidC9hZzRPQUpZQmxnR1dBWllCbGdHV0FaWUJsZ0dXQVpZQmxnR1dBUUdXQVFzZ0JFRUJhaUVFUWFFQklSQU1sQUlMSUFSQkFXb2hCRUdpQVNFUURKTUNDd0pBSUFRZ0FrY05BRUc0QVNFUURLd0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUh0ejRDQUFHb3RBQUJIRFpRQklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHNEFTRVFES3dDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUkloRUF5UkFRc0NRQ0FFSUFKSERRQkJ1UUVoRUF5ckFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVCYWlFUUFrQURRQ0FFTFFBQUlBRkI4TStBZ0FCcUxRQUFSdzJUQVNBQlFRRkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCdVFFaEVBeXJBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRWdJUkFNa0FFTEFrQWdCQ0FDUncwQVFib0JJUkFNcWdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBV29oRUFKQUEwQWdCQzBBQUNBQlFmTFBnSUFBYWkwQUFFY05rZ0VnQVVFQlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRYm9CSVJBTXFnSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkR5RVFESThCQ3dKQUlBUWdBa2NOQUVHN0FTRVFES2tDQ3dKQUFrQWdCQzBBQUVHM2Yyb09Cd0NTQVpJQmtnR1NBWklCQVpJQkN5QUVRUUZxSVFSQnBRRWhFQXlRQWdzZ0JFRUJhaUVFUWFZQklSQU1qd0lMQWtBZ0JDQUNSdzBBUWJ3QklSQU1xQUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkIyb2hFQUpBQTBBZ0JDMEFBQ0FCUWZUUGdJQUFhaTBBQUVjTmtBRWdBVUVIUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFid0JJUkFNcUFJTElBQkJBRFlDQUNBUVFRRnFJUUZCR3lFUURJMEJDd0pBSUFRZ0FrY05BRUc5QVNFUURLY0NDd0pBQWtBQ1FDQUVMUUFBUWI1L2FnNFNBSkVCa1FHUkFaRUJrUUdSQVpFQmtRR1JBUUdSQVpFQmtRR1JBWkVCa1FFQ2tRRUxJQVJCQVdvaEJFR2tBU0VRREk4Q0N5QUVRUUZxSVFSQnB3RWhFQXlPQWdzZ0JFRUJhaUVFUWFnQklSQU1qUUlMQWtBZ0JDQUNSdzBBUWI0QklSQU1wZ0lMSUFRdEFBQkJ6Z0JIRFkwQklBUkJBV29oQkF6UEFRc0NRQ0FFSUFKSERRQkJ2d0VoRUF5bEFnc0NRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUNBRUxRQUFRYjkvYWc0VkFBRUNBNXdCQkFVR25BR2NBWndCQndnSkNndWNBUXdORGcrY0FRc2dCRUVCYWlFQlFlZ0FJUkFNbWdJTElBUkJBV29oQVVIcEFDRVFESmtDQ3lBRVFRRnFJUUZCN2dBaEVBeVlBZ3NnQkVFQmFpRUJRZklBSVJBTWx3SUxJQVJCQVdvaEFVSHpBQ0VRREpZQ0N5QUVRUUZxSVFGQjlnQWhFQXlWQWdzZ0JFRUJhaUVCUWZjQUlSQU1sQUlMSUFSQkFXb2hBVUg2QUNFUURKTUNDeUFFUVFGcUlRUkJnd0VoRUF5U0Fnc2dCRUVCYWlFRVFZUUJJUkFNa1FJTElBUkJBV29oQkVHRkFTRVFESkFDQ3lBRVFRRnFJUVJCa2dFaEVBeVBBZ3NnQkVFQmFpRUVRWmdCSVJBTWpnSUxJQVJCQVdvaEJFR2dBU0VRREkwQ0N5QUVRUUZxSVFSQm93RWhFQXlNQWdzZ0JFRUJhaUVFUWFvQklSQU1pd0lMQWtBZ0JDQUNSZzBBSUFCQmtJQ0FnQUEyQWdnZ0FDQUVOZ0lFUWFzQklSQU1pd0lMUWNBQklSQU1vd0lMSUFBZ0JTQUNFS3FBZ0lBQUlnRU5pd0VnQlNFQkRGd0xBa0FnQmlBQ1JnMEFJQVpCQVdvaEJReU5BUXRCd2dFaEVBeWhBZ3NEUUFKQUlCQXRBQUJCZG1vT0JJd0JBQUNQQVFBTElCQkJBV29pRUNBQ1J3MEFDMEhEQVNFUURLQUNDd0pBSUFjZ0FrWU5BQ0FBUVpHQWdJQUFOZ0lJSUFBZ0J6WUNCQ0FISVFGQkFTRVFESWNDQzBIRUFTRVFESjhDQ3dKQUlBY2dBa2NOQUVIRkFTRVFESjhDQ3dKQUFrQWdCeTBBQUVGMmFnNEVBYzRCemdFQXpnRUxJQWRCQVdvaEJneU5BUXNnQjBFQmFpRUZESWtCQ3dKQUlBY2dBa2NOQUVIR0FTRVFESjRDQ3dKQUFrQWdCeTBBQUVGMmFnNFhBWThCandFQmp3R1BBWThCandHUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0dQQVk4QkFJOEJDeUFIUVFGcUlRY0xRYkFCSVJBTWhBSUxBa0FnQ0NBQ1J3MEFRY2dCSVJBTW5RSUxJQWd0QUFCQklFY05qUUVnQUVFQU93RXlJQWhCQVdvaEFVR3pBU0VRRElNQ0N5QUJJUmNDUUFOQUlCY2lCeUFDUmcwQklBY3RBQUJCVUdwQi93RnhJaEJCQ2s4TnpBRUNRQ0FBTHdFeUloUkJtVE5MRFFBZ0FDQVVRUXBzSWhRN0FUSWdFRUgvL3dOeklCUkIvdjhEY1VrTkFDQUhRUUZxSVJjZ0FDQVVJQkJxSWhBN0FUSWdFRUgvL3dOeFFlZ0hTUTBCQ3d0QkFDRVFJQUJCQURZQ0hDQUFRY0dKZ0lBQU5nSVFJQUJCRFRZQ0RDQUFJQWRCQVdvMkFoUU1uQUlMUWNjQklSQU1td0lMSUFBZ0NDQUNFSzZBZ0lBQUloQkZEY29CSUJCQkZVY05qQUVnQUVISUFUWUNIQ0FBSUFnMkFoUWdBRUhKbDRDQUFEWUNFQ0FBUVJVMkFneEJBQ0VRREpvQ0N3SkFJQWtnQWtjTkFFSE1BU0VRREpvQ0MwRUFJUlJCQVNFWFFRRWhGa0VBSVJBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBZ0NTMEFBRUZRYWc0S2xnR1ZBUUFCQWdNRUJRWUlsd0VMUVFJaEVBd0dDMEVESVJBTUJRdEJCQ0VRREFRTFFRVWhFQXdEQzBFR0lSQU1BZ3RCQnlFUURBRUxRUWdoRUF0QkFDRVhRUUFoRmtFQUlSUU1qZ0VMUVFraEVFRUJJUlJCQUNFWFFRQWhGZ3lOQVFzQ1FDQUtJQUpIRFFCQnpnRWhFQXlaQWdzZ0NpMEFBRUV1UncyT0FTQUtRUUZxSVFrTXlnRUxJQXNnQWtjTmpnRkIwQUVoRUF5WEFnc0NRQ0FMSUFKR0RRQWdBRUdPZ0lDQUFEWUNDQ0FBSUFzMkFnUkJ0d0VoRUF6K0FRdEIwUUVoRUF5V0Fnc0NRQ0FFSUFKSERRQkIwZ0VoRUF5V0Fnc2dBaUFFYXlBQUtBSUFJaEJxSVJRZ0JDQVFhMEVFYWlFTEEwQWdCQzBBQUNBUVFmelBnSUFBYWkwQUFFY05qZ0VnRUVFRVJnM3BBU0FRUVFGcUlSQWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUhTQVNFUURKVUNDeUFBSUF3Z0FoQ3NnSUNBQUNJQkRZMEJJQXdoQVF5NEFRc0NRQ0FFSUFKSERRQkIxQUVoRUF5VUFnc2dBaUFFYXlBQUtBSUFJaEJxSVJRZ0JDQVFhMEVCYWlFTUEwQWdCQzBBQUNBUVFZSFFnSUFBYWkwQUFFY05qd0VnRUVFQlJnMk9BU0FRUVFGcUlSQWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUhVQVNFUURKTUNDd0pBSUFRZ0FrY05BRUhXQVNFUURKTUNDeUFDSUFScklBQW9BZ0FpRUdvaEZDQUVJQkJyUVFKcUlRc0RRQ0FFTFFBQUlCQkJnOUNBZ0FCcUxRQUFSdzJPQVNBUVFRSkdEWkFCSUJCQkFXb2hFQ0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWRZQklSQU1rZ0lMQWtBZ0JDQUNSdzBBUWRjQklSQU1rZ0lMQWtBQ1FDQUVMUUFBUWJ0L2FnNFFBSThCandHUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0VCandFTElBUkJBV29oQkVHN0FTRVFEUGtCQ3lBRVFRRnFJUVJCdkFFaEVBejRBUXNDUUNBRUlBSkhEUUJCMkFFaEVBeVJBZ3NnQkMwQUFFSElBRWNOakFFZ0JFRUJhaUVFRE1RQkN3SkFJQVFnQWtZTkFDQUFRWkNBZ0lBQU5nSUlJQUFnQkRZQ0JFRytBU0VRRFBjQkMwSFpBU0VRREk4Q0N3SkFJQVFnQWtjTkFFSGFBU0VRREk4Q0N5QUVMUUFBUWNnQVJnM0RBU0FBUVFFNkFDZ011UUVMSUFCQkFqb0FMeUFBSUFRZ0FoQ21nSUNBQUNJUURZMEJRY0lCSVJBTTlBRUxJQUF0QUNoQmYyb09BcmNCdVFHNEFRc0RRQUpBSUFRdEFBQkJkbW9PQkFDT0FZNEJBSTRCQ3lBRVFRRnFJZ1FnQWtjTkFBdEIzUUVoRUF5TEFnc2dBRUVBT2dBdklBQXRBQzFCQkhGRkRZUUNDeUFBUVFBNkFDOGdBRUVCT2dBMElBRWhBUXlNQVFzZ0VFRVZSZzNhQVNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCcDQ2QWdBQTJBaEFnQUVFU05nSU1RUUFoRUF5SUFnc0NRQ0FBSUJBZ0FoQzBnSUNBQUNJRURRQWdFQ0VCRElFQ0N3SkFJQVJCRlVjTkFDQUFRUU0yQWh3Z0FDQVFOZ0lVSUFCQnNKaUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBeUlBZ3NnQUVFQU5nSWNJQUFnRURZQ0ZDQUFRYWVPZ0lBQU5nSVFJQUJCRWpZQ0RFRUFJUkFNaHdJTElCQkJGVVlOMWdFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWRxTmdJQUFOZ0lRSUFCQkZEWUNERUVBSVJBTWhnSUxJQUFvQWdRaEZ5QUFRUUEyQWdRZ0VDQVJwMm9pRmlFQklBQWdGeUFRSUJZZ0ZCc2lFQkMxZ0lDQUFDSVVSUTJOQVNBQVFRYzJBaHdnQUNBUU5nSVVJQUFnRkRZQ0RFRUFJUkFNaFFJTElBQWdBQzhCTUVHQUFYSTdBVEFnQVNFQkMwRXFJUkFNNmdFTElCQkJGVVlOMFFFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVlPTWdJQUFOZ0lRSUFCQkV6WUNERUVBSVJBTWdnSUxJQkJCRlVZTnp3RWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFacVBnSUFBTmdJUUlBQkJJallDREVFQUlSQU1nUUlMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQzNnSUNBQUNJUURRQWdBVUVCYWlFQkRJMEJDeUFBUVF3MkFod2dBQ0FRTmdJTUlBQWdBVUVCYWpZQ0ZFRUFJUkFNZ0FJTElCQkJGVVlOekFFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVpxUGdJQUFOZ0lRSUFCQklqWUNERUVBSVJBTS93RUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDM2dJQ0FBQ0lRRFFBZ0FVRUJhaUVCREl3QkN5QUFRUTAyQWh3Z0FDQVFOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU0vZ0VMSUJCQkZVWU55UUVnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRY2FNZ0lBQU5nSVFJQUJCSXpZQ0RFRUFJUkFNL1FFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkM1Z0lDQUFDSVFEUUFnQVVFQmFpRUJESXNCQ3lBQVFRNDJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTS9BRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSEFsWUNBQURZQ0VDQUFRUUkyQWd4QkFDRVFEUHNCQ3lBUVFSVkdEY1VCSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhHaklDQUFEWUNFQ0FBUVNNMkFneEJBQ0VRRFBvQkN5QUFRUkEyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTStRRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDNWdJQ0FBQ0lFRFFBZ0FVRUJhaUVCRFBFQkN5QUFRUkUyQWh3Z0FDQUVOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU0rQUVMSUJCQkZVWU53UUVnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRY2FNZ0lBQU5nSVFJQUJCSXpZQ0RFRUFJUkFNOXdFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkM1Z0lDQUFDSVFEUUFnQVVFQmFpRUJESWdCQ3lBQVFSTTJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTTlnRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDNWdJQ0FBQ0lFRFFBZ0FVRUJhaUVCRE8wQkN5QUFRUlEyQWh3Z0FDQUVOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU05UUVMSUJCQkZVWU52UUVnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRWnFQZ0lBQU5nSVFJQUJCSWpZQ0RFRUFJUkFNOUFFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkMzZ0lDQUFDSVFEUUFnQVVFQmFpRUJESVlCQ3lBQVFSWTJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTTh3RUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDM2dJQ0FBQ0lFRFFBZ0FVRUJhaUVCRE9rQkN5QUFRUmMyQWh3Z0FDQUVOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU04Z0VMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhOazRDQUFEWUNFQ0FBUVF3MkFneEJBQ0VRRFBFQkMwSUJJUkVMSUJCQkFXb2hBUUpBSUFBcEF5QWlFa0wvLy8vLy8vLy8vdzlXRFFBZ0FDQVNRZ1NHSUJHRU53TWdJQUVoQVF5RUFRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFhMkpnSUFBTmdJUUlBQkJERFlDREVFQUlSQU03d0VMSUFCQkFEWUNIQ0FBSUJBMkFoUWdBRUhOazRDQUFEWUNFQ0FBUVF3MkFneEJBQ0VRRE80QkN5QUFLQUlFSVJjZ0FFRUFOZ0lFSUJBZ0VhZHFJaFloQVNBQUlCY2dFQ0FXSUJRYkloQVF0WUNBZ0FBaUZFVU5jeUFBUVFVMkFod2dBQ0FRTmdJVUlBQWdGRFlDREVFQUlSQU03UUVMSUFCQkFEWUNIQ0FBSUJBMkFoUWdBRUdxbklDQUFEWUNFQ0FBUVE4MkFneEJBQ0VRRE93QkN5QUFJQkFnQWhDMGdJQ0FBQ0lCRFFFZ0VDRUJDMEVPSVJBTTBRRUxBa0FnQVVFVlJ3MEFJQUJCQWpZQ0hDQUFJQkEyQWhRZ0FFR3dtSUNBQURZQ0VDQUFRUlUyQWd4QkFDRVFET29CQ3lBQVFRQTJBaHdnQUNBUU5nSVVJQUJCcDQ2QWdBQTJBaEFnQUVFU05nSU1RUUFoRUF6cEFRc2dBVUVCYWlFUUFrQWdBQzhCTUNJQlFZQUJjVVVOQUFKQUlBQWdFQ0FDRUx1QWdJQUFJZ0VOQUNBUUlRRU1jQXNnQVVFVlJ3MjZBU0FBUVFVMkFod2dBQ0FRTmdJVUlBQkIrWmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXpwQVFzQ1FDQUJRYUFFY1VHZ0JFY05BQ0FBTFFBdFFRSnhEUUFnQUVFQU5nSWNJQUFnRURZQ0ZDQUFRWmFUZ0lBQU5nSVFJQUJCQkRZQ0RFRUFJUkFNNlFFTElBQWdFQ0FDRUwyQWdJQUFHaUFRSVFFQ1FBSkFBa0FDUUFKQUlBQWdFQ0FDRUxPQWdJQUFEaFlDQVFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRREJBc2dBRUVCT2dBdUN5QUFJQUF2QVRCQndBQnlPd0V3SUJBaEFRdEJKaUVRRE5FQkN5QUFRU00yQWh3Z0FDQVFOZ0lVSUFCQnBaYUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBenBBUXNnQUVFQU5nSWNJQUFnRURZQ0ZDQUFRZFdMZ0lBQU5nSVFJQUJCRVRZQ0RFRUFJUkFNNkFFTElBQXRBQzFCQVhGRkRRRkJ3d0VoRUF6T0FRc0NRQ0FOSUFKR0RRQURRQUpBSUEwdEFBQkJJRVlOQUNBTklRRU14QUVMSUExQkFXb2lEU0FDUncwQUMwRWxJUkFNNXdFTFFTVWhFQXptQVFzZ0FDZ0NCQ0VFSUFCQkFEWUNCQ0FBSUFRZ0RSQ3ZnSUNBQUNJRVJRMnRBU0FBUVNZMkFod2dBQ0FFTmdJTUlBQWdEVUVCYWpZQ0ZFRUFJUkFNNVFFTElCQkJGVVlOcXdFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWYyTmdJQUFOZ0lRSUFCQkhUWUNERUVBSVJBTTVBRUxJQUJCSnpZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBempBUXNnRUNFQlFRRWhGQUpBQWtBQ1FBSkFBa0FDUUFKQUlBQXRBQ3hCZm1vT0J3WUZCUU1CQWdBRkN5QUFJQUF2QVRCQkNISTdBVEFNQXd0QkFpRVVEQUVMUVFRaEZBc2dBRUVCT2dBc0lBQWdBQzhCTUNBVWNqc0JNQXNnRUNFQkMwRXJJUkFNeWdFTElBQkJBRFlDSENBQUlCQTJBaFFnQUVHcmtvQ0FBRFlDRUNBQVFRczJBZ3hCQUNFUURPSUJDeUFBUVFBMkFod2dBQ0FCTmdJVUlBQkI0WStBZ0FBMkFoQWdBRUVLTmdJTVFRQWhFQXpoQVFzZ0FFRUFPZ0FzSUJBaEFReTlBUXNnRUNFQlFRRWhGQUpBQWtBQ1FBSkFBa0FnQUMwQUxFRjdhZzRFQXdFQ0FBVUxJQUFnQUM4Qk1FRUljanNCTUF3REMwRUNJUlFNQVF0QkJDRVVDeUFBUVFFNkFDd2dBQ0FBTHdFd0lCUnlPd0V3Q3lBUUlRRUxRU2toRUF6RkFRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFmQ1VnSUFBTmdJUUlBQkJBellDREVFQUlSQU0zUUVMQWtBZ0RpMEFBRUVOUncwQUlBQW9BZ1FoQVNBQVFRQTJBZ1FDUUNBQUlBRWdEaEN4Z0lDQUFDSUJEUUFnRGtFQmFpRUJESFVMSUFCQkxEWUNIQ0FBSUFFMkFnd2dBQ0FPUVFGcU5nSVVRUUFoRUF6ZEFRc2dBQzBBTFVFQmNVVU5BVUhFQVNFUURNTUJDd0pBSUE0Z0FrY05BRUV0SVJBTTNBRUxBa0FDUUFOQUFrQWdEaTBBQUVGMmFnNEVBZ0FBQXdBTElBNUJBV29pRGlBQ1J3MEFDMEV0SVJBTTNRRUxJQUFvQWdRaEFTQUFRUUEyQWdRQ1FDQUFJQUVnRGhDeGdJQ0FBQ0lCRFFBZ0RpRUJESFFMSUFCQkxEWUNIQ0FBSUE0MkFoUWdBQ0FCTmdJTVFRQWhFQXpjQVFzZ0FDZ0NCQ0VCSUFCQkFEWUNCQUpBSUFBZ0FTQU9FTEdBZ0lBQUlnRU5BQ0FPUVFGcUlRRU1jd3NnQUVFc05nSWNJQUFnQVRZQ0RDQUFJQTVCQVdvMkFoUkJBQ0VRRE5zQkN5QUFLQUlFSVFRZ0FFRUFOZ0lFSUFBZ0JDQU9FTEdBZ0lBQUlnUU5vQUVnRGlFQkRNNEJDeUFRUVN4SERRRWdBVUVCYWlFUVFRRWhBUUpBQWtBQ1FBSkFBa0FnQUMwQUxFRjdhZzRFQXdFQ0JBQUxJQkFoQVF3RUMwRUNJUUVNQVF0QkJDRUJDeUFBUVFFNkFDd2dBQ0FBTHdFd0lBRnlPd0V3SUJBaEFRd0JDeUFBSUFBdkFUQkJDSEk3QVRBZ0VDRUJDMEU1SVJBTXZ3RUxJQUJCQURvQUxDQUJJUUVMUVRRaEVBeTlBUXNnQUNBQUx3RXdRU0J5T3dFd0lBRWhBUXdDQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVFzWUNBZ0FBaUJBMEFJQUVoQVF6SEFRc2dBRUUzTmdJY0lBQWdBVFlDRkNBQUlBUTJBZ3hCQUNFUUROUUJDeUFBUVFnNkFDd2dBU0VCQzBFd0lSQU11UUVMQWtBZ0FDMEFLRUVCUmcwQUlBRWhBUXdFQ3lBQUxRQXRRUWh4UlEyVEFTQUJJUUVNQXdzZ0FDMEFNRUVnY1EyVUFVSEZBU0VRRExjQkN3SkFJQThnQWtZTkFBSkFBMEFDUUNBUExRQUFRVkJxSWdGQi93RnhRUXBKRFFBZ0R5RUJRVFVoRUF5NkFRc2dBQ2tESUNJUlFwbXo1c3lacytiTUdWWU5BU0FBSUJGQ0NuNGlFVGNESUNBUklBR3RRdjhCZ3lJU1FuK0ZWZzBCSUFBZ0VTQVNmRGNESUNBUFFRRnFJZzhnQWtjTkFBdEJPU0VRRE5FQkN5QUFLQUlFSVFJZ0FFRUFOZ0lFSUFBZ0FpQVBRUUZxSWdRUXNZQ0FnQUFpQWcyVkFTQUVJUUVNd3dFTFFUa2hFQXpQQVFzQ1FDQUFMd0V3SWdGQkNIRkZEUUFnQUMwQUtFRUJSdzBBSUFBdEFDMUJDSEZGRFpBQkN5QUFJQUZCOS9zRGNVR0FCSEk3QVRBZ0R5RUJDMEUzSVJBTXRBRUxJQUFnQUM4Qk1FRVFjanNCTUF5ckFRc2dFRUVWUmcyTEFTQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQjhJNkFnQUEyQWhBZ0FFRWNOZ0lNUVFBaEVBekxBUXNnQUVIREFEWUNIQ0FBSUFFMkFnd2dBQ0FOUVFGcU5nSVVRUUFoRUF6S0FRc0NRQ0FCTFFBQVFUcEhEUUFnQUNnQ0JDRVFJQUJCQURZQ0JBSkFJQUFnRUNBQkVLK0FnSUFBSWhBTkFDQUJRUUZxSVFFTVl3c2dBRUhEQURZQ0hDQUFJQkEyQWd3Z0FDQUJRUUZxTmdJVVFRQWhFQXpLQVFzZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWJHUmdJQUFOZ0lRSUFCQkNqWUNERUVBSVJBTXlRRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR2dtWUNBQURZQ0VDQUFRUjQyQWd4QkFDRVFETWdCQ3lBQVFRQTJBZ0FMSUFCQmdCSTdBU29nQUNBWFFRRnFJZ0VnQWhDb2dJQ0FBQ0lRRFFFZ0FTRUJDMEhIQUNFUURLd0JDeUFRUVJWSERZTUJJQUJCMFFBMkFod2dBQ0FCTmdJVUlBQkI0NWVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXpFQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFS2VBZ0lBQUloQU5BQ0FCSVFFTVhnc2dBRUhTQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBekRBUXNnQUVFQU5nSWNJQUFnRkRZQ0ZDQUFRY0dvZ0lBQU5nSVFJQUJCQnpZQ0RDQUFRUUEyQWdCQkFDRVFETUlCQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVFwNENBZ0FBaUVBMEFJQUVoQVF4ZEN5QUFRZE1BTmdJY0lBQWdBVFlDRkNBQUlCQTJBZ3hCQUNFUURNRUJDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVlDUmdJQUFOZ0lRSUFCQkNUWUNEQXpBQVFzZ0VFRVZSZzE5SUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUdVallDQUFEWUNFQ0FBUVNFMkFneEJBQ0VRREw4QkMwRUJJUlpCQUNFWFFRQWhGRUVCSVJBTElBQWdFRG9BS3lBQlFRRnFJUUVDUUFKQUlBQXRBQzFCRUhFTkFBSkFBa0FDUUNBQUxRQXFEZ01CQUFJRUN5QVdSUTBEREFJTElCUU5BUXdDQ3lBWFJRMEJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXJZQ0FnQUFpRUEwQUlBRWhBUXhjQ3lBQVFkZ0FOZ0ljSUFBZ0FUWUNGQ0FBSUJBMkFneEJBQ0VRREw0QkN5QUFLQUlFSVFRZ0FFRUFOZ0lFQWtBZ0FDQUVJQUVRcllDQWdBQWlCQTBBSUFFaEFReXRBUXNnQUVIWkFEWUNIQ0FBSUFFMkFoUWdBQ0FFTmdJTVFRQWhFQXk5QVFzZ0FDZ0NCQ0VFSUFCQkFEWUNCQUpBSUFBZ0JDQUJFSzJBZ0lBQUlnUU5BQ0FCSVFFTXF3RUxJQUJCMmdBMkFod2dBQ0FCTmdJVUlBQWdCRFlDREVFQUlSQU12QUVMSUFBb0FnUWhCQ0FBUVFBMkFnUUNRQ0FBSUFRZ0FSQ3RnSUNBQUNJRURRQWdBU0VCREtrQkN5QUFRZHdBTmdJY0lBQWdBVFlDRkNBQUlBUTJBZ3hCQUNFUURMc0JDd0pBSUFFdEFBQkJVR29pRUVIL0FYRkJDazhOQUNBQUlCQTZBQ29nQVVFQmFpRUJRYzhBSVJBTW9nRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDdGdJQ0FBQ0lFRFFBZ0FTRUJES2NCQ3lBQVFkNEFOZ0ljSUFBZ0FUWUNGQ0FBSUFRMkFneEJBQ0VRRExvQkN5QUFRUUEyQWdBZ0YwRUJhaUVCQWtBZ0FDMEFLVUVqVHcwQUlBRWhBUXhaQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCMDRtQWdBQTJBaEFnQUVFSU5nSU1RUUFoRUF5NUFRc2dBRUVBTmdJQUMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRWkN6Z0lBQU5nSVFJQUJCQ0RZQ0RBeTNBUXNnQUVFQU5nSUFJQmRCQVdvaEFRSkFJQUF0QUNsQklVY05BQ0FCSVFFTVZnc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFadUtnSUFBTmdJUUlBQkJDRFlDREVFQUlSQU10Z0VMSUFCQkFEWUNBQ0FYUVFGcUlRRUNRQ0FBTFFBcEloQkJYV3BCQzA4TkFDQUJJUUVNVlFzQ1FDQVFRUVpMRFFCQkFTQVFkRUhLQUhGRkRRQWdBU0VCREZVTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkI5NG1BZ0FBMkFoQWdBRUVJTmdJTURMVUJDeUFRUVJWR0RYRWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFibU5nSUFBTmdJUUlBQkJHallDREVFQUlSQU10QUVMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQ25nSUNBQUNJUURRQWdBU0VCREZRTElBQkI1UUEyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTXN3RUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDbmdJQ0FBQ0lRRFFBZ0FTRUJERTBMSUFCQjBnQTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNc2dFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkNuZ0lDQUFDSVFEUUFnQVNFQkRFMExJQUJCMHdBMkFod2dBQ0FCTmdJVUlBQWdFRFlDREVFQUlSQU1zUUVMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQ25nSUNBQUNJUURRQWdBU0VCREZFTElBQkI1UUEyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTXNBRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSEdpb0NBQURZQ0VDQUFRUWMyQWd4QkFDRVFESzhCQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVFwNENBZ0FBaUVBMEFJQUVoQVF4SkN5QUFRZElBTmdJY0lBQWdBVFlDRkNBQUlCQTJBZ3hCQUNFUURLNEJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXA0Q0FnQUFpRUEwQUlBRWhBUXhKQ3lBQVFkTUFOZ0ljSUFBZ0FUWUNGQ0FBSUJBMkFneEJBQ0VRREswQkN5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRcDRDQWdBQWlFQTBBSUFFaEFReE5DeUFBUWVVQU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFES3dCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCM0lpQWdBQTJBaEFnQUVFSE5nSU1RUUFoRUF5ckFRc2dFRUUvUncwQklBRkJBV29oQVF0QkJTRVFESkFCQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFmMlNnSUFBTmdJUUlBQkJCellDREF5b0FRc2dBQ2dDQkNFUUlBQkJBRFlDQkFKQUlBQWdFQ0FCRUtlQWdJQUFJaEFOQUNBQklRRU1RZ3NnQUVIU0FEWUNIQ0FBSUFFMkFoUWdBQ0FRTmdJTVFRQWhFQXluQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFS2VBZ0lBQUloQU5BQ0FCSVFFTVFnc2dBRUhUQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeW1BUXNnQUNnQ0JDRVFJQUJCQURZQ0JBSkFJQUFnRUNBQkVLZUFnSUFBSWhBTkFDQUJJUUVNUmdzZ0FFSGxBRFlDSENBQUlBRTJBaFFnQUNBUU5nSU1RUUFoRUF5bEFRc2dBQ2dDQkNFQklBQkJBRFlDQkFKQUlBQWdBU0FVRUtlQWdJQUFJZ0VOQUNBVUlRRU1Qd3NnQUVIU0FEWUNIQ0FBSUJRMkFoUWdBQ0FCTmdJTVFRQWhFQXlrQVFzZ0FDZ0NCQ0VCSUFCQkFEWUNCQUpBSUFBZ0FTQVVFS2VBZ0lBQUlnRU5BQ0FVSVFFTVB3c2dBRUhUQURZQ0hDQUFJQlEyQWhRZ0FDQUJOZ0lNUVFBaEVBeWpBUXNnQUNnQ0JDRUJJQUJCQURZQ0JBSkFJQUFnQVNBVUVLZUFnSUFBSWdFTkFDQVVJUUVNUXdzZ0FFSGxBRFlDSENBQUlCUTJBaFFnQUNBQk5nSU1RUUFoRUF5aUFRc2dBRUVBTmdJY0lBQWdGRFlDRkNBQVFjT1BnSUFBTmdJUUlBQkJCellDREVFQUlSQU1vUUVMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhEajRDQUFEWUNFQ0FBUVFjMkFneEJBQ0VRREtBQkMwRUFJUkFnQUVFQU5nSWNJQUFnRkRZQ0ZDQUFRWXljZ0lBQU5nSVFJQUJCQnpZQ0RBeWZBUXNnQUVFQU5nSWNJQUFnRkRZQ0ZDQUFRWXljZ0lBQU5nSVFJQUJCQnpZQ0RFRUFJUkFNbmdFTElBQkJBRFlDSENBQUlCUTJBaFFnQUVIK2tZQ0FBRFlDRUNBQVFRYzJBZ3hCQUNFUURKMEJDeUFBUVFBMkFod2dBQ0FCTmdJVUlBQkJqcHVBZ0FBMkFoQWdBRUVHTmdJTVFRQWhFQXljQVFzZ0VFRVZSZzFYSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhNam9DQUFEWUNFQ0FBUVNBMkFneEJBQ0VRREpzQkN5QUFRUUEyQWdBZ0VFRUJhaUVCUVNRaEVBc2dBQ0FRT2dBcElBQW9BZ1FoRUNBQVFRQTJBZ1FnQUNBUUlBRVFxNENBZ0FBaUVBMVVJQUVoQVF3K0N5QUFRUUEyQWdBTFFRQWhFQ0FBUVFBMkFod2dBQ0FFTmdJVUlBQkI4WnVBZ0FBMkFoQWdBRUVHTmdJTURKY0JDeUFCUVJWR0RWQWdBRUVBTmdJY0lBQWdCVFlDRkNBQVFmQ01nSUFBTmdJUUlBQkJHellDREVFQUlSQU1sZ0VMSUFBb0FnUWhCU0FBUVFBMkFnUWdBQ0FGSUJBUXFZQ0FnQUFpQlEwQklCQkJBV29oQlF0QnJRRWhFQXg3Q3lBQVFjRUJOZ0ljSUFBZ0JUWUNEQ0FBSUJCQkFXbzJBaFJCQUNFUURKTUJDeUFBS0FJRUlRWWdBRUVBTmdJRUlBQWdCaUFRRUttQWdJQUFJZ1lOQVNBUVFRRnFJUVlMUWE0QklSQU1lQXNnQUVIQ0FUWUNIQ0FBSUFZMkFnd2dBQ0FRUVFGcU5nSVVRUUFoRUF5UUFRc2dBRUVBTmdJY0lBQWdCellDRkNBQVFaZUxnSUFBTmdJUUlBQkJEVFlDREVFQUlSQU1qd0VMSUFCQkFEWUNIQ0FBSUFnMkFoUWdBRUhqa0lDQUFEWUNFQ0FBUVFrMkFneEJBQ0VRREk0QkN5QUFRUUEyQWh3Z0FDQUlOZ0lVSUFCQmxJMkFnQUEyQWhBZ0FFRWhOZ0lNUVFBaEVBeU5BUXRCQVNFV1FRQWhGMEVBSVJSQkFTRVFDeUFBSUJBNkFDc2dDVUVCYWlFSUFrQUNRQ0FBTFFBdFFSQnhEUUFDUUFKQUFrQWdBQzBBS2c0REFRQUNCQXNnRmtVTkF3d0NDeUFVRFFFTUFnc2dGMFVOQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQ0FBSUJBZ0NCQ3RnSUNBQUNJUVJRMDlJQUJCeVFFMkFod2dBQ0FJTmdJVUlBQWdFRFlDREVFQUlSQU1qQUVMSUFBb0FnUWhCQ0FBUVFBMkFnUWdBQ0FFSUFnUXJZQ0FnQUFpQkVVTmRpQUFRY29CTmdJY0lBQWdDRFlDRkNBQUlBUTJBZ3hCQUNFUURJc0JDeUFBS0FJRUlRUWdBRUVBTmdJRUlBQWdCQ0FKRUsyQWdJQUFJZ1JGRFhRZ0FFSExBVFlDSENBQUlBazJBaFFnQUNBRU5nSU1RUUFoRUF5S0FRc2dBQ2dDQkNFRUlBQkJBRFlDQkNBQUlBUWdDaEN0Z0lDQUFDSUVSUTF5SUFCQnpRRTJBaHdnQUNBS05nSVVJQUFnQkRZQ0RFRUFJUkFNaVFFTEFrQWdDeTBBQUVGUWFpSVFRZjhCY1VFS1R3MEFJQUFnRURvQUtpQUxRUUZxSVFwQnRnRWhFQXh3Q3lBQUtBSUVJUVFnQUVFQU5nSUVJQUFnQkNBTEVLMkFnSUFBSWdSRkRYQWdBRUhQQVRZQ0hDQUFJQXMyQWhRZ0FDQUVOZ0lNUVFBaEVBeUlBUXNnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRWkN6Z0lBQU5nSVFJQUJCQ0RZQ0RDQUFRUUEyQWdCQkFDRVFESWNCQ3lBQlFSVkdEVDhnQUVFQU5nSWNJQUFnRERZQ0ZDQUFRY3lPZ0lBQU5nSVFJQUJCSURZQ0RFRUFJUkFNaGdFTElBQkJnUVE3QVNnZ0FDZ0NCQ0VRSUFCQ0FEY0RBQ0FBSUJBZ0RFRUJhaUlNRUt1QWdJQUFJaEJGRFRnZ0FFSFRBVFlDSENBQUlBdzJBaFFnQUNBUU5nSU1RUUFoRUF5RkFRc2dBRUVBTmdJQUMwRUFJUkFnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRZGliZ0lBQU5nSVFJQUJCQ0RZQ0RBeURBUXNnQUNnQ0JDRVFJQUJDQURjREFDQUFJQkFnQzBFQmFpSUxFS3VBZ0lBQUloQU5BVUhHQVNFUURHa0xJQUJCQWpvQUtBeFZDeUFBUWRVQk5nSWNJQUFnQ3pZQ0ZDQUFJQkEyQWd4QkFDRVFESUFCQ3lBUVFSVkdEVGNnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRYVNNZ0lBQU5nSVFJQUJCRURZQ0RFRUFJUkFNZndzZ0FDMEFORUVCUncwMElBQWdCQ0FDRUx5QWdJQUFJaEJGRFRRZ0VFRVZSdzAxSUFCQjNBRTJBaHdnQUNBRU5nSVVJQUJCMVphQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF4K0MwRUFJUkFnQUVFQU5nSWNJQUJCcjR1QWdBQTJBaEFnQUVFQ05nSU1JQUFnRkVFQmFqWUNGQXg5QzBFQUlSQU1Zd3RCQWlFUURHSUxRUTBoRUF4aEMwRVBJUkFNWUF0QkpTRVFERjhMUVJNaEVBeGVDMEVWSVJBTVhRdEJGaUVRREZ3TFFSY2hFQXhiQzBFWUlSQU1XZ3RCR1NFUURGa0xRUm9oRUF4WUMwRWJJUkFNVnd0QkhDRVFERllMUVIwaEVBeFZDMEVmSVJBTVZBdEJJU0VRREZNTFFTTWhFQXhTQzBIR0FDRVFERkVMUVM0aEVBeFFDMEV2SVJBTVR3dEJPeUVRREU0TFFUMGhFQXhOQzBISUFDRVFERXdMUWNrQUlSQU1Td3RCeXdBaEVBeEtDMEhNQUNFUURFa0xRYzRBSVJBTVNBdEIwUUFoRUF4SEMwSFZBQ0VRREVZTFFkZ0FJUkFNUlF0QjJRQWhFQXhFQzBIYkFDRVFERU1MUWVRQUlSQU1RZ3RCNVFBaEVBeEJDMEh4QUNFUURFQUxRZlFBSVJBTVB3dEJqUUVoRUF3K0MwR1hBU0VRREQwTFFha0JJUkFNUEF0QnJBRWhFQXc3QzBIQUFTRVFERG9MUWJrQklSQU1PUXRCcndFaEVBdzRDMEd4QVNFUUREY0xRYklCSVJBTU5ndEJ0QUVoRUF3MUMwRzFBU0VRRERRTFFib0JJUkFNTXd0QnZRRWhFQXd5QzBHL0FTRVFEREVMUWNFQklSQU1NQXNnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRZW1MZ0lBQU5nSVFJQUJCSHpZQ0RFRUFJUkFNU0FzZ0FFSGJBVFlDSENBQUlBUTJBaFFnQUVINmxvQ0FBRFlDRUNBQVFSVTJBZ3hCQUNFUURFY0xJQUJCK0FBMkFod2dBQ0FNTmdJVUlBQkJ5cGlBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhHQ3lBQVFkRUFOZ0ljSUFBZ0JUWUNGQ0FBUWJDWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTVJRc2dBRUg1QURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeEVDeUFBUWZnQU5nSWNJQUFnQVRZQ0ZDQUFRY3FZZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNUXdzZ0FFSGtBRFlDSENBQUlBRTJBaFFnQUVIamw0Q0FBRFlDRUNBQVFSVTJBZ3hCQUNFUURFSUxJQUJCMXdBMkFod2dBQ0FCTmdJVUlBQkJ5WmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCdVkyQWdBQTJBaEFnQUVFYU5nSU1RUUFoRUF4QUN5QUFRY0lBTmdJY0lBQWdBVFlDRkNBQVFlT1lnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1Qd3NnQUVFQU5nSUVJQUFnRHlBUEVMR0FnSUFBSWdSRkRRRWdBRUU2TmdJY0lBQWdCRFlDRENBQUlBOUJBV28yQWhSQkFDRVFERDRMSUFBb0FnUWhCQ0FBUVFBMkFnUUNRQ0FBSUFRZ0FSQ3hnSUNBQUNJRVJRMEFJQUJCT3pZQ0hDQUFJQVEyQWd3Z0FDQUJRUUZxTmdJVVFRQWhFQXcrQ3lBQlFRRnFJUUVNTFFzZ0QwRUJhaUVCREMwTElBQkJBRFlDSENBQUlBODJBaFFnQUVIa2tvQ0FBRFlDRUNBQVFRUTJBZ3hCQUNFUUREc0xJQUJCTmpZQ0hDQUFJQVEyQWhRZ0FDQUNOZ0lNUVFBaEVBdzZDeUFBUVM0MkFod2dBQ0FPTmdJVUlBQWdCRFlDREVFQUlSQU1PUXNnQUVIUUFEWUNIQ0FBSUFFMkFoUWdBRUdSbUlDQUFEWUNFQ0FBUVJVMkFneEJBQ0VRRERnTElBMUJBV29oQVF3c0N5QUFRUlUyQWh3Z0FDQUJOZ0lVSUFCQmdwbUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBdzJDeUFBUVJzMkFod2dBQ0FCTmdJVUlBQkJrWmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXcxQ3lBQVFRODJBaHdnQUNBQk5nSVVJQUJCa1plQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF3MEN5QUFRUXMyQWh3Z0FDQUJOZ0lVSUFCQmtaZUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBd3pDeUFBUVJvMkFod2dBQ0FCTmdJVUlBQkJncG1BZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXd5Q3lBQVFRczJBaHdnQUNBQk5nSVVJQUJCZ3BtQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF3eEN5QUFRUW8yQWh3Z0FDQUJOZ0lVSUFCQjVKYUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBd3dDeUFBUVI0MkFod2dBQ0FCTmdJVUlBQkIrWmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXd2Q3lBQVFRQTJBaHdnQUNBUU5nSVVJQUJCMm8yQWdBQTJBaEFnQUVFVU5nSU1RUUFoRUF3dUN5QUFRUVEyQWh3Z0FDQUJOZ0lVSUFCQnNKaUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBd3RDeUFBUVFBMkFnQWdDMEVCYWlFTEMwRzRBU0VRREJJTElBQkJBRFlDQUNBUVFRRnFJUUZCOVFBaEVBd1JDeUFCSVFFQ1FDQUFMUUFwUVFWSERRQkI0d0FoRUF3UkMwSGlBQ0VRREJBTFFRQWhFQ0FBUVFBMkFod2dBRUhra1lDQUFEWUNFQ0FBUVFjMkFnd2dBQ0FVUVFGcU5nSVVEQ2dMSUFCQkFEWUNBQ0FYUVFGcUlRRkJ3QUFoRUF3T0MwRUJJUUVMSUFBZ0FUb0FMQ0FBUVFBMkFnQWdGMEVCYWlFQkMwRW9JUkFNQ3dzZ0FTRUJDMEU0SVJBTUNRc0NRQ0FCSWc4Z0FrWU5BQU5BQWtBZ0R5MEFBRUdBdm9DQUFHb3RBQUFpQVVFQlJnMEFJQUZCQWtjTkF5QVBRUUZxSVFFTUJBc2dEMEVCYWlJUElBSkhEUUFMUVQ0aEVBd2lDMEUrSVJBTUlRc2dBRUVBT2dBc0lBOGhBUXdCQzBFTElSQU1CZ3RCT2lFUURBVUxJQUZCQVdvaEFVRXRJUkFNQkFzZ0FDQUJPZ0FzSUFCQkFEWUNBQ0FXUVFGcUlRRkJEQ0VRREFNTElBQkJBRFlDQUNBWFFRRnFJUUZCQ2lFUURBSUxJQUJCQURZQ0FBc2dBRUVBT2dBc0lBMGhBVUVKSVJBTUFBc0xRUUFoRUNBQVFRQTJBaHdnQUNBTE5nSVVJQUJCelpDQWdBQTJBaEFnQUVFSk5nSU1EQmNMUVFBaEVDQUFRUUEyQWh3Z0FDQUtOZ0lVSUFCQjZZcUFnQUEyQWhBZ0FFRUpOZ0lNREJZTFFRQWhFQ0FBUVFBMkFod2dBQ0FKTmdJVUlBQkJ0NUNBZ0FBMkFoQWdBRUVKTmdJTURCVUxRUUFoRUNBQVFRQTJBaHdnQUNBSU5nSVVJQUJCbkpHQWdBQTJBaEFnQUVFSk5nSU1EQlFMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnpaQ0FnQUEyQWhBZ0FFRUpOZ0lNREJNTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkI2WXFBZ0FBMkFoQWdBRUVKTmdJTURCSUxRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCdDVDQWdBQTJBaEFnQUVFSk5nSU1EQkVMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQm5KR0FnQUEyQWhBZ0FFRUpOZ0lNREJBTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkJsNVdBZ0FBMkFoQWdBRUVQTmdJTURBOExRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCbDVXQWdBQTJBaEFnQUVFUE5nSU1EQTRMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQndKS0FnQUEyQWhBZ0FFRUxOZ0lNREEwTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkJsWW1BZ0FBMkFoQWdBRUVMTmdJTURBd0xRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCNFkrQWdBQTJBaEFnQUVFS05nSU1EQXNMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQis0K0FnQUEyQWhBZ0FFRUtOZ0lNREFvTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkI4Wm1BZ0FBMkFoQWdBRUVDTmdJTURBa0xRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCeEpTQWdBQTJBaEFnQUVFQ05nSU1EQWdMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQjhwV0FnQUEyQWhBZ0FFRUNOZ0lNREFjTElBQkJBallDSENBQUlBRTJBaFFnQUVHY21vQ0FBRFlDRUNBQVFSWTJBZ3hCQUNFUURBWUxRUUVoRUF3RkMwSFVBQ0VRSUFFaUJDQUNSZzBFSUFOQkNHb2dBQ0FFSUFKQjJNS0FnQUJCQ2hERmdJQ0FBQ0FES0FJTUlRUWdBeWdDQ0E0REFRUUNBQXNReW9DQWdBQUFDeUFBUVFBMkFod2dBRUcxbW9DQUFEWUNFQ0FBUVJjMkFnd2dBQ0FFUVFGcU5nSVVRUUFoRUF3Q0N5QUFRUUEyQWh3Z0FDQUVOZ0lVSUFCQnlwcUFnQUEyQWhBZ0FFRUpOZ0lNUVFBaEVBd0JDd0pBSUFFaUJDQUNSdzBBUVNJaEVBd0JDeUFBUVltQWdJQUFOZ0lJSUFBZ0JEWUNCRUVoSVJBTElBTkJFR29rZ0lDQWdBQWdFQXV2QVFFQ2Z5QUJLQUlBSVFZQ1FBSkFJQUlnQTBZTkFDQUVJQVpxSVFRZ0JpQURhaUFDYXlFSElBSWdCa0YvY3lBRmFpSUdhaUVGQTBBQ1FDQUNMUUFBSUFRdEFBQkdEUUJCQWlFRURBTUxBa0FnQmcwQVFRQWhCQ0FGSVFJTUF3c2dCa0YvYWlFR0lBUkJBV29oQkNBQ1FRRnFJZ0lnQTBjTkFBc2dCeUVHSUFNaEFnc2dBRUVCTmdJQUlBRWdCallDQUNBQUlBSTJBZ1FQQ3lBQlFRQTJBZ0FnQUNBRU5nSUFJQUFnQWpZQ0JBc0tBQ0FBRU1lQWdJQUFDL0kyQVF0L0k0Q0FnSUFBUVJCcklnRWtnSUNBZ0FBQ1FFRUFLQUtnMElDQUFBMEFRUUFReTRDQWdBQkJnTlNFZ0FCcklnSkIyUUJKRFFCQkFDRURBa0JCQUNnQzROT0FnQUFpQkEwQVFRQkNmemNDN05PQWdBQkJBRUtBZ0lTQWdJREFBRGNDNU5PQWdBQkJBQ0FCUVFocVFYQnhRZGlxMWFvRmN5SUVOZ0xnMDRDQUFFRUFRUUEyQXZUVGdJQUFRUUJCQURZQ3hOT0FnQUFMUVFBZ0FqWUN6Tk9BZ0FCQkFFR0ExSVNBQURZQ3lOT0FnQUJCQUVHQTFJU0FBRFlDbU5DQWdBQkJBQ0FFTmdLczBJQ0FBRUVBUVg4MkFxalFnSUFBQTBBZ0EwSEUwSUNBQUdvZ0EwRzQwSUNBQUdvaUJEWUNBQ0FFSUFOQnNOQ0FnQUJxSWdVMkFnQWdBMEc4MElDQUFHb2dCVFlDQUNBRFFjelFnSUFBYWlBRFFjRFFnSUFBYWlJRk5nSUFJQVVnQkRZQ0FDQURRZFRRZ0lBQWFpQURRY2pRZ0lBQWFpSUVOZ0lBSUFRZ0JUWUNBQ0FEUWREUWdJQUFhaUFFTmdJQUlBTkJJR29pQTBHQUFrY05BQXRCZ05TRWdBQkJlRUdBMUlTQUFHdEJEM0ZCQUVHQTFJU0FBRUVJYWtFUGNSc2lBMm9pQkVFRWFpQUNRVWhxSWdVZ0Eyc2lBMEVCY2pZQ0FFRUFRUUFvQXZEVGdJQUFOZ0trMElDQUFFRUFJQU0yQXBUUWdJQUFRUUFnQkRZQ29OQ0FnQUJCZ05TRWdBQWdCV3BCT0RZQ0JBc0NRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBZ0FFSHNBVXNOQUFKQVFRQW9Bb2pRZ0lBQUlnWkJFQ0FBUVJOcVFYQnhJQUJCQzBrYklnSkJBM1lpQkhZaUEwRURjVVVOQUFKQUFrQWdBMEVCY1NBRWNrRUJjeUlGUVFOMElnUkJzTkNBZ0FCcUlnTWdCRUc0MElDQUFHb29BZ0FpQkNnQ0NDSUNSdzBBUVFBZ0JrRitJQVYzY1RZQ2lOQ0FnQUFNQVFzZ0F5QUNOZ0lJSUFJZ0F6WUNEQXNnQkVFSWFpRURJQVFnQlVFRGRDSUZRUU55TmdJRUlBUWdCV29pQkNBRUtBSUVRUUZ5TmdJRURBd0xJQUpCQUNnQ2tOQ0FnQUFpQjAwTkFRSkFJQU5GRFFBQ1FBSkFJQU1nQkhSQkFpQUVkQ0lEUVFBZ0EydHljU0lEUVFBZ0EydHhRWDlxSWdNZ0EwRU1ka0VRY1NJRGRpSUVRUVYyUVFoeElnVWdBM0lnQkNBRmRpSURRUUoyUVFSeElnUnlJQU1nQkhZaUEwRUJka0VDY1NJRWNpQURJQVIySWdOQkFYWkJBWEVpQkhJZ0F5QUVkbW9pQkVFRGRDSURRYkRRZ0lBQWFpSUZJQU5CdU5DQWdBQnFLQUlBSWdNb0FnZ2lBRWNOQUVFQUlBWkJmaUFFZDNFaUJqWUNpTkNBZ0FBTUFRc2dCU0FBTmdJSUlBQWdCVFlDREFzZ0F5QUNRUU55TmdJRUlBTWdCRUVEZENJRWFpQUVJQUpySWdVMkFnQWdBeUFDYWlJQUlBVkJBWEkyQWdRQ1FDQUhSUTBBSUFkQmVIRkJzTkNBZ0FCcUlRSkJBQ2dDbk5DQWdBQWhCQUpBQWtBZ0JrRUJJQWRCQTNaMElnaHhEUUJCQUNBR0lBaHlOZ0tJMElDQUFDQUNJUWdNQVFzZ0FpZ0NDQ0VJQ3lBSUlBUTJBZ3dnQWlBRU5nSUlJQVFnQWpZQ0RDQUVJQWcyQWdnTElBTkJDR29oQTBFQUlBQTJBcHpRZ0lBQVFRQWdCVFlDa05DQWdBQU1EQXRCQUNnQ2pOQ0FnQUFpQ1VVTkFTQUpRUUFnQ1d0eFFYOXFJZ01nQTBFTWRrRVFjU0lEZGlJRVFRVjJRUWh4SWdVZ0EzSWdCQ0FGZGlJRFFRSjJRUVJ4SWdSeUlBTWdCSFlpQTBFQmRrRUNjU0lFY2lBRElBUjJJZ05CQVhaQkFYRWlCSElnQXlBRWRtcEJBblJCdU5LQWdBQnFLQUlBSWdBb0FnUkJlSEVnQW1zaEJDQUFJUVVDUUFOQUFrQWdCU2dDRUNJRERRQWdCVUVVYWlnQ0FDSURSUTBDQ3lBREtBSUVRWGh4SUFKcklnVWdCQ0FGSUFSSklnVWJJUVFnQXlBQUlBVWJJUUFnQXlFRkRBQUxDeUFBS0FJWUlRb0NRQ0FBS0FJTUlnZ2dBRVlOQUNBQUtBSUlJZ05CQUNnQ21OQ0FnQUJKR2lBSUlBTTJBZ2dnQXlBSU5nSU1EQXNMQWtBZ0FFRVVhaUlGS0FJQUlnTU5BQ0FBS0FJUUlnTkZEUU1nQUVFUWFpRUZDd05BSUFVaEN5QURJZ2hCRkdvaUJTZ0NBQ0lERFFBZ0NFRVFhaUVGSUFnb0FoQWlBdzBBQ3lBTFFRQTJBZ0FNQ2d0QmZ5RUNJQUJCdjM5TERRQWdBRUVUYWlJRFFYQnhJUUpCQUNnQ2pOQ0FnQUFpQjBVTkFFRUFJUXNDUUNBQ1FZQUNTUTBBUVI4aEN5QUNRZi8vL3dkTERRQWdBMEVJZGlJRElBTkJnUDQvYWtFUWRrRUljU0lEZENJRUlBUkJnT0FmYWtFUWRrRUVjU0lFZENJRklBVkJnSUFQYWtFUWRrRUNjU0lGZEVFUGRpQURJQVJ5SUFWeWF5SURRUUYwSUFJZ0EwRVZhblpCQVhGeVFSeHFJUXNMUVFBZ0Ftc2hCQUpBQWtBQ1FBSkFJQXRCQW5SQnVOS0FnQUJxS0FJQUlnVU5BRUVBSVFOQkFDRUlEQUVMUVFBaEF5QUNRUUJCR1NBTFFRRjJheUFMUVI5R0czUWhBRUVBSVFnRFFBSkFJQVVvQWdSQmVIRWdBbXNpQmlBRVR3MEFJQVloQkNBRklRZ2dCZzBBUVFBaEJDQUZJUWdnQlNFRERBTUxJQU1nQlVFVWFpZ0NBQ0lHSUFZZ0JTQUFRUjEyUVFSeGFrRVFhaWdDQUNJRlJoc2dBeUFHR3lFRElBQkJBWFFoQUNBRkRRQUxDd0pBSUFNZ0NISU5BRUVBSVFoQkFpQUxkQ0lEUVFBZ0EydHlJQWR4SWdORkRRTWdBMEVBSUFOcmNVRi9haUlESUFOQkRIWkJFSEVpQTNZaUJVRUZka0VJY1NJQUlBTnlJQVVnQUhZaUEwRUNka0VFY1NJRmNpQURJQVYySWdOQkFYWkJBbkVpQlhJZ0F5QUZkaUlEUVFGMlFRRnhJZ1Z5SUFNZ0JYWnFRUUowUWJqU2dJQUFhaWdDQUNFREN5QURSUTBCQ3dOQUlBTW9BZ1JCZUhFZ0Ftc2lCaUFFU1NFQUFrQWdBeWdDRUNJRkRRQWdBMEVVYWlnQ0FDRUZDeUFHSUFRZ0FCc2hCQ0FESUFnZ0FCc2hDQ0FGSVFNZ0JRMEFDd3NnQ0VVTkFDQUVRUUFvQXBEUWdJQUFJQUpyVHcwQUlBZ29BaGdoQ3dKQUlBZ29BZ3dpQUNBSVJnMEFJQWdvQWdnaUEwRUFLQUtZMElDQUFFa2FJQUFnQXpZQ0NDQURJQUEyQWd3TUNRc0NRQ0FJUVJScUlnVW9BZ0FpQXcwQUlBZ29BaEFpQTBVTkF5QUlRUkJxSVFVTEEwQWdCU0VHSUFNaUFFRVVhaUlGS0FJQUlnTU5BQ0FBUVJCcUlRVWdBQ2dDRUNJRERRQUxJQVpCQURZQ0FBd0lDd0pBUVFBb0FwRFFnSUFBSWdNZ0Fra05BRUVBS0FLYzBJQ0FBQ0VFQWtBQ1FDQURJQUpySWdWQkVFa05BQ0FFSUFKcUlnQWdCVUVCY2pZQ0JFRUFJQVUyQXBEUWdJQUFRUUFnQURZQ25OQ0FnQUFnQkNBRGFpQUZOZ0lBSUFRZ0FrRURjallDQkF3QkN5QUVJQU5CQTNJMkFnUWdCQ0FEYWlJRElBTW9BZ1JCQVhJMkFnUkJBRUVBTmdLYzBJQ0FBRUVBUVFBMkFwRFFnSUFBQ3lBRVFRaHFJUU1NQ2dzQ1FFRUFLQUtVMElDQUFDSUFJQUpORFFCQkFDZ0NvTkNBZ0FBaUF5QUNhaUlFSUFBZ0Ftc2lCVUVCY2pZQ0JFRUFJQVUyQXBUUWdJQUFRUUFnQkRZQ29OQ0FnQUFnQXlBQ1FRTnlOZ0lFSUFOQkNHb2hBd3dLQ3dKQUFrQkJBQ2dDNE5PQWdBQkZEUUJCQUNnQzZOT0FnQUFoQkF3QkMwRUFRbjgzQXV6VGdJQUFRUUJDZ0lDRWdJQ0F3QUEzQXVUVGdJQUFRUUFnQVVFTWFrRndjVUhZcXRXcUJYTTJBdURUZ0lBQVFRQkJBRFlDOU5PQWdBQkJBRUVBTmdMRTA0Q0FBRUdBZ0FRaEJBdEJBQ0VEQWtBZ0JDQUNRY2NBYWlJSGFpSUdRUUFnQkdzaUMzRWlDQ0FDU3cwQVFRQkJNRFlDK05PQWdBQU1DZ3NDUUVFQUtBTEEwNENBQUNJRFJRMEFBa0JCQUNnQ3VOT0FnQUFpQkNBSWFpSUZJQVJORFFBZ0JTQURUUTBCQzBFQUlRTkJBRUV3TmdMNDA0Q0FBQXdLQzBFQUxRREUwNENBQUVFRWNRMEVBa0FDUUFKQVFRQW9BcURRZ0lBQUlnUkZEUUJCeU5PQWdBQWhBd05BQWtBZ0F5Z0NBQ0lGSUFSTERRQWdCU0FES0FJRWFpQUVTdzBEQ3lBREtBSUlJZ01OQUFzTFFRQVF5NENBZ0FBaUFFRi9SZzBGSUFnaEJnSkFRUUFvQXVUVGdJQUFJZ05CZjJvaUJDQUFjVVVOQUNBSUlBQnJJQVFnQUdwQkFDQURhM0ZxSVFZTElBWWdBazBOQlNBR1FmNy8vLzhIU3cwRkFrQkJBQ2dDd05PQWdBQWlBMFVOQUVFQUtBSzQwNENBQUNJRUlBWnFJZ1VnQkUwTkJpQUZJQU5MRFFZTElBWVF5NENBZ0FBaUF5QUFSdzBCREFjTElBWWdBR3NnQzNFaUJrSCsvLy8vQjBzTkJDQUdFTXVBZ0lBQUlnQWdBeWdDQUNBREtBSUVha1lOQXlBQUlRTUxBa0FnQTBGL1JnMEFJQUpCeUFCcUlBWk5EUUFDUUNBSElBWnJRUUFvQXVqVGdJQUFJZ1JxUVFBZ0JHdHhJZ1JCL3YvLy93ZE5EUUFnQXlFQURBY0xBa0FnQkJETGdJQ0FBRUYvUmcwQUlBUWdCbW9oQmlBRElRQU1Cd3RCQUNBR2F4RExnSUNBQUJvTUJBc2dBeUVBSUFOQmYwY05CUXdEQzBFQUlRZ01Cd3RCQUNFQURBVUxJQUJCZjBjTkFndEJBRUVBS0FMRTA0Q0FBRUVFY2pZQ3hOT0FnQUFMSUFoQi92Ly8vd2RMRFFFZ0NCRExnSUNBQUNFQVFRQVF5NENBZ0FBaEF5QUFRWDlHRFFFZ0EwRi9SZzBCSUFBZ0EwOE5BU0FESUFCcklnWWdBa0U0YWswTkFRdEJBRUVBS0FLNDA0Q0FBQ0FHYWlJRE5nSzQwNENBQUFKQUlBTkJBQ2dDdk5PQWdBQk5EUUJCQUNBRE5nSzgwNENBQUFzQ1FBSkFBa0FDUUVFQUtBS2cwSUNBQUNJRVJRMEFRY2pUZ0lBQUlRTURRQ0FBSUFNb0FnQWlCU0FES0FJRUlnaHFSZzBDSUFNb0FnZ2lBdzBBREFNTEN3SkFBa0JCQUNnQ21OQ0FnQUFpQTBVTkFDQUFJQU5QRFFFTFFRQWdBRFlDbU5DQWdBQUxRUUFoQTBFQUlBWTJBc3pUZ0lBQVFRQWdBRFlDeU5PQWdBQkJBRUYvTmdLbzBJQ0FBRUVBUVFBb0F1RFRnSUFBTmdLczBJQ0FBRUVBUVFBMkF0VFRnSUFBQTBBZ0EwSEUwSUNBQUdvZ0EwRzQwSUNBQUdvaUJEWUNBQ0FFSUFOQnNOQ0FnQUJxSWdVMkFnQWdBMEc4MElDQUFHb2dCVFlDQUNBRFFjelFnSUFBYWlBRFFjRFFnSUFBYWlJRk5nSUFJQVVnQkRZQ0FDQURRZFRRZ0lBQWFpQURRY2pRZ0lBQWFpSUVOZ0lBSUFRZ0JUWUNBQ0FEUWREUWdJQUFhaUFFTmdJQUlBTkJJR29pQTBHQUFrY05BQXNnQUVGNElBQnJRUTl4UVFBZ0FFRUlha0VQY1JzaUEyb2lCQ0FHUVVocUlnVWdBMnNpQTBFQmNqWUNCRUVBUVFBb0F2RFRnSUFBTmdLazBJQ0FBRUVBSUFNMkFwVFFnSUFBUVFBZ0JEWUNvTkNBZ0FBZ0FDQUZha0U0TmdJRURBSUxJQU10QUF4QkNIRU5BQ0FFSUFWSkRRQWdCQ0FBVHcwQUlBUkJlQ0FFYTBFUGNVRUFJQVJCQ0dwQkQzRWJJZ1ZxSWdCQkFDZ0NsTkNBZ0FBZ0Jtb2lDeUFGYXlJRlFRRnlOZ0lFSUFNZ0NDQUdhallDQkVFQVFRQW9BdkRUZ0lBQU5nS2swSUNBQUVFQUlBVTJBcFRRZ0lBQVFRQWdBRFlDb05DQWdBQWdCQ0FMYWtFNE5nSUVEQUVMQWtBZ0FFRUFLQUtZMElDQUFDSUlUdzBBUVFBZ0FEWUNtTkNBZ0FBZ0FDRUlDeUFBSUFacUlRVkJ5Tk9BZ0FBaEF3SkFBa0FDUUFKQUFrQUNRQUpBQTBBZ0F5Z0NBQ0FGUmcwQklBTW9BZ2dpQXcwQURBSUxDeUFETFFBTVFRaHhSUTBCQzBISTA0Q0FBQ0VEQTBBQ1FDQURLQUlBSWdVZ0JFc05BQ0FGSUFNb0FnUnFJZ1VnQkVzTkF3c2dBeWdDQ0NFRERBQUxDeUFESUFBMkFnQWdBeUFES0FJRUlBWnFOZ0lFSUFCQmVDQUFhMEVQY1VFQUlBQkJDR3BCRDNFYmFpSUxJQUpCQTNJMkFnUWdCVUY0SUFWclFROXhRUUFnQlVFSWFrRVBjUnRxSWdZZ0N5QUNhaUlDYXlFREFrQWdCaUFFUncwQVFRQWdBallDb05DQWdBQkJBRUVBS0FLVTBJQ0FBQ0FEYWlJRE5nS1UwSUNBQUNBQ0lBTkJBWEkyQWdRTUF3c0NRQ0FHUVFBb0FwelFnSUFBUncwQVFRQWdBallDbk5DQWdBQkJBRUVBS0FLUTBJQ0FBQ0FEYWlJRE5nS1EwSUNBQUNBQ0lBTkJBWEkyQWdRZ0FpQURhaUFETmdJQURBTUxBa0FnQmlnQ0JDSUVRUU54UVFGSERRQWdCRUY0Y1NFSEFrQUNRQ0FFUWY4QlN3MEFJQVlvQWdnaUJTQUVRUU4ySWdoQkEzUkJzTkNBZ0FCcUlnQkdHZ0pBSUFZb0Fnd2lCQ0FGUncwQVFRQkJBQ2dDaU5DQWdBQkJmaUFJZDNFMkFvalFnSUFBREFJTElBUWdBRVlhSUFRZ0JUWUNDQ0FGSUFRMkFnd01BUXNnQmlnQ0dDRUpBa0FDUUNBR0tBSU1JZ0FnQmtZTkFDQUdLQUlJSWdRZ0NFa2FJQUFnQkRZQ0NDQUVJQUEyQWd3TUFRc0NRQ0FHUVJScUlnUW9BZ0FpQlEwQUlBWkJFR29pQkNnQ0FDSUZEUUJCQUNFQURBRUxBMEFnQkNFSUlBVWlBRUVVYWlJRUtBSUFJZ1VOQUNBQVFSQnFJUVFnQUNnQ0VDSUZEUUFMSUFoQkFEWUNBQXNnQ1VVTkFBSkFBa0FnQmlBR0tBSWNJZ1ZCQW5SQnVOS0FnQUJxSWdRb0FnQkhEUUFnQkNBQU5nSUFJQUFOQVVFQVFRQW9Bb3pRZ0lBQVFYNGdCWGR4TmdLTTBJQ0FBQXdDQ3lBSlFSQkJGQ0FKS0FJUUlBWkdHMm9nQURZQ0FDQUFSUTBCQ3lBQUlBazJBaGdDUUNBR0tBSVFJZ1JGRFFBZ0FDQUVOZ0lRSUFRZ0FEWUNHQXNnQmlnQ0ZDSUVSUTBBSUFCQkZHb2dCRFlDQUNBRUlBQTJBaGdMSUFjZ0Eyb2hBeUFHSUFkcUlnWW9BZ1FoQkFzZ0JpQUVRWDV4TmdJRUlBSWdBMm9nQXpZQ0FDQUNJQU5CQVhJMkFnUUNRQ0FEUWY4QlN3MEFJQU5CZUhGQnNOQ0FnQUJxSVFRQ1FBSkFRUUFvQW9qUWdJQUFJZ1ZCQVNBRFFRTjJkQ0lEY1EwQVFRQWdCU0FEY2pZQ2lOQ0FnQUFnQkNFRERBRUxJQVFvQWdnaEF3c2dBeUFDTmdJTUlBUWdBallDQ0NBQ0lBUTJBZ3dnQWlBRE5nSUlEQU1MUVI4aEJBSkFJQU5CLy8vL0Iwc05BQ0FEUVFoMklnUWdCRUdBL2o5cVFSQjJRUWh4SWdSMElnVWdCVUdBNEI5cVFSQjJRUVJ4SWdWMElnQWdBRUdBZ0E5cVFSQjJRUUp4SWdCMFFROTJJQVFnQlhJZ0FISnJJZ1JCQVhRZ0F5QUVRUlZxZGtFQmNYSkJIR29oQkFzZ0FpQUVOZ0ljSUFKQ0FEY0NFQ0FFUVFKMFFialNnSUFBYWlFRkFrQkJBQ2dDak5DQWdBQWlBRUVCSUFSMElnaHhEUUFnQlNBQ05nSUFRUUFnQUNBSWNqWUNqTkNBZ0FBZ0FpQUZOZ0lZSUFJZ0FqWUNDQ0FDSUFJMkFnd01Bd3NnQTBFQVFSa2dCRUVCZG1zZ0JFRWZSaHQwSVFRZ0JTZ0NBQ0VBQTBBZ0FDSUZLQUlFUVhoeElBTkdEUUlnQkVFZGRpRUFJQVJCQVhRaEJDQUZJQUJCQkhGcVFSQnFJZ2dvQWdBaUFBMEFDeUFJSUFJMkFnQWdBaUFGTmdJWUlBSWdBallDRENBQ0lBSTJBZ2dNQWdzZ0FFRjRJQUJyUVE5eFFRQWdBRUVJYWtFUGNSc2lBMm9pQ3lBR1FVaHFJZ2dnQTJzaUEwRUJjallDQkNBQUlBaHFRVGcyQWdRZ0JDQUZRVGNnQld0QkQzRkJBQ0FGUVVscVFROXhHMnBCUVdvaUNDQUlJQVJCRUdwSkd5SUlRU00yQWdSQkFFRUFLQUx3MDRDQUFEWUNwTkNBZ0FCQkFDQUROZ0tVMElDQUFFRUFJQXMyQXFEUWdJQUFJQWhCRUdwQkFDa0MwTk9BZ0FBM0FnQWdDRUVBS1FMSTA0Q0FBRGNDQ0VFQUlBaEJDR28yQXREVGdJQUFRUUFnQmpZQ3pOT0FnQUJCQUNBQU5nTEkwNENBQUVFQVFRQTJBdFRUZ0lBQUlBaEJKR29oQXdOQUlBTkJCellDQUNBRFFRUnFJZ01nQlVrTkFBc2dDQ0FFUmcwRElBZ2dDQ2dDQkVGK2NUWUNCQ0FJSUFnZ0JHc2lBRFlDQUNBRUlBQkJBWEkyQWdRQ1FDQUFRZjhCU3cwQUlBQkJlSEZCc05DQWdBQnFJUU1DUUFKQVFRQW9Bb2pRZ0lBQUlnVkJBU0FBUVFOMmRDSUFjUTBBUVFBZ0JTQUFjallDaU5DQWdBQWdBeUVGREFFTElBTW9BZ2doQlFzZ0JTQUVOZ0lNSUFNZ0JEWUNDQ0FFSUFNMkFnd2dCQ0FGTmdJSURBUUxRUjhoQXdKQUlBQkIvLy8vQjBzTkFDQUFRUWgySWdNZ0EwR0EvajlxUVJCMlFRaHhJZ04wSWdVZ0JVR0E0QjlxUVJCMlFRUnhJZ1YwSWdnZ0NFR0FnQTlxUVJCMlFRSnhJZ2gwUVE5MklBTWdCWElnQ0hKcklnTkJBWFFnQUNBRFFSVnFka0VCY1hKQkhHb2hBd3NnQkNBRE5nSWNJQVJDQURjQ0VDQURRUUowUWJqU2dJQUFhaUVGQWtCQkFDZ0NqTkNBZ0FBaUNFRUJJQU4wSWdaeERRQWdCU0FFTmdJQVFRQWdDQ0FHY2pZQ2pOQ0FnQUFnQkNBRk5nSVlJQVFnQkRZQ0NDQUVJQVEyQWd3TUJBc2dBRUVBUVJrZ0EwRUJkbXNnQTBFZlJodDBJUU1nQlNnQ0FDRUlBMEFnQ0NJRktBSUVRWGh4SUFCR0RRTWdBMEVkZGlFSUlBTkJBWFFoQXlBRklBaEJCSEZxUVJCcUlnWW9BZ0FpQ0EwQUN5QUdJQVEyQWdBZ0JDQUZOZ0lZSUFRZ0JEWUNEQ0FFSUFRMkFnZ01Bd3NnQlNnQ0NDSURJQUkyQWd3Z0JTQUNOZ0lJSUFKQkFEWUNHQ0FDSUFVMkFnd2dBaUFETmdJSUN5QUxRUWhxSVFNTUJRc2dCU2dDQ0NJRElBUTJBZ3dnQlNBRU5nSUlJQVJCQURZQ0dDQUVJQVUyQWd3Z0JDQUROZ0lJQzBFQUtBS1UwSUNBQUNJRElBSk5EUUJCQUNnQ29OQ0FnQUFpQkNBQ2FpSUZJQU1nQW1zaUEwRUJjallDQkVFQUlBTTJBcFRRZ0lBQVFRQWdCVFlDb05DQWdBQWdCQ0FDUVFOeU5nSUVJQVJCQ0dvaEF3d0RDMEVBSVFOQkFFRXdOZ0w0MDRDQUFBd0NDd0pBSUF0RkRRQUNRQUpBSUFnZ0NDZ0NIQ0lGUVFKMFFialNnSUFBYWlJREtBSUFSdzBBSUFNZ0FEWUNBQ0FBRFFGQkFDQUhRWDRnQlhkeElnYzJBb3pRZ0lBQURBSUxJQXRCRUVFVUlBc29BaEFnQ0VZYmFpQUFOZ0lBSUFCRkRRRUxJQUFnQ3pZQ0dBSkFJQWdvQWhBaUEwVU5BQ0FBSUFNMkFoQWdBeUFBTmdJWUN5QUlRUlJxS0FJQUlnTkZEUUFnQUVFVWFpQUROZ0lBSUFNZ0FEWUNHQXNDUUFKQUlBUkJEMHNOQUNBSUlBUWdBbW9pQTBFRGNqWUNCQ0FJSUFOcUlnTWdBeWdDQkVFQmNqWUNCQXdCQ3lBSUlBSnFJZ0FnQkVFQmNqWUNCQ0FJSUFKQkEzSTJBZ1FnQUNBRWFpQUVOZ0lBQWtBZ0JFSC9BVXNOQUNBRVFYaHhRYkRRZ0lBQWFpRURBa0FDUUVFQUtBS0kwSUNBQUNJRlFRRWdCRUVEZG5RaUJIRU5BRUVBSUFVZ0JISTJBb2pRZ0lBQUlBTWhCQXdCQ3lBREtBSUlJUVFMSUFRZ0FEWUNEQ0FESUFBMkFnZ2dBQ0FETmdJTUlBQWdCRFlDQ0F3QkMwRWZJUU1DUUNBRVFmLy8vd2RMRFFBZ0JFRUlkaUlESUFOQmdQNC9ha0VRZGtFSWNTSURkQ0lGSUFWQmdPQWZha0VRZGtFRWNTSUZkQ0lDSUFKQmdJQVBha0VRZGtFQ2NTSUNkRUVQZGlBRElBVnlJQUp5YXlJRFFRRjBJQVFnQTBFVmFuWkJBWEZ5UVJ4cUlRTUxJQUFnQXpZQ0hDQUFRZ0EzQWhBZ0EwRUNkRUc0MG9DQUFHb2hCUUpBSUFkQkFTQURkQ0lDY1EwQUlBVWdBRFlDQUVFQUlBY2dBbkkyQW96UWdJQUFJQUFnQlRZQ0dDQUFJQUEyQWdnZ0FDQUFOZ0lNREFFTElBUkJBRUVaSUFOQkFYWnJJQU5CSDBZYmRDRURJQVVvQWdBaEFnSkFBMEFnQWlJRktBSUVRWGh4SUFSR0RRRWdBMEVkZGlFQ0lBTkJBWFFoQXlBRklBSkJCSEZxUVJCcUlnWW9BZ0FpQWcwQUN5QUdJQUEyQWdBZ0FDQUZOZ0lZSUFBZ0FEWUNEQ0FBSUFBMkFnZ01BUXNnQlNnQ0NDSURJQUEyQWd3Z0JTQUFOZ0lJSUFCQkFEWUNHQ0FBSUFVMkFnd2dBQ0FETmdJSUN5QUlRUWhxSVFNTUFRc0NRQ0FLUlEwQUFrQUNRQ0FBSUFBb0Fod2lCVUVDZEVHNDBvQ0FBR29pQXlnQ0FFY05BQ0FESUFnMkFnQWdDQTBCUVFBZ0NVRitJQVYzY1RZQ2pOQ0FnQUFNQWdzZ0NrRVFRUlFnQ2lnQ0VDQUFSaHRxSUFnMkFnQWdDRVVOQVFzZ0NDQUtOZ0lZQWtBZ0FDZ0NFQ0lEUlEwQUlBZ2dBellDRUNBRElBZzJBaGdMSUFCQkZHb29BZ0FpQTBVTkFDQUlRUlJxSUFNMkFnQWdBeUFJTmdJWUN3SkFBa0FnQkVFUFN3MEFJQUFnQkNBQ2FpSURRUU55TmdJRUlBQWdBMm9pQXlBREtBSUVRUUZ5TmdJRURBRUxJQUFnQW1vaUJTQUVRUUZ5TmdJRUlBQWdBa0VEY2pZQ0JDQUZJQVJxSUFRMkFnQUNRQ0FIUlEwQUlBZEJlSEZCc05DQWdBQnFJUUpCQUNnQ25OQ0FnQUFoQXdKQUFrQkJBU0FIUVFOMmRDSUlJQVp4RFFCQkFDQUlJQVp5TmdLSTBJQ0FBQ0FDSVFnTUFRc2dBaWdDQ0NFSUN5QUlJQU0yQWd3Z0FpQUROZ0lJSUFNZ0FqWUNEQ0FESUFnMkFnZ0xRUUFnQlRZQ25OQ0FnQUJCQUNBRU5nS1EwSUNBQUFzZ0FFRUlhaUVEQ3lBQlFSQnFKSUNBZ0lBQUlBTUxDZ0FnQUJESmdJQ0FBQXZpRFFFSGZ3SkFJQUJGRFFBZ0FFRjRhaUlCSUFCQmZHb29BZ0FpQWtGNGNTSUFhaUVEQWtBZ0FrRUJjUTBBSUFKQkEzRkZEUUVnQVNBQktBSUFJZ0pySWdGQkFDZ0NtTkNBZ0FBaUJFa05BU0FDSUFCcUlRQUNRQ0FCUVFBb0FwelFnSUFBUmcwQUFrQWdBa0gvQVVzTkFDQUJLQUlJSWdRZ0FrRURkaUlGUVFOMFFiRFFnSUFBYWlJR1Job0NRQ0FCS0FJTUlnSWdCRWNOQUVFQVFRQW9Bb2pRZ0lBQVFYNGdCWGR4TmdLSTBJQ0FBQXdEQ3lBQ0lBWkdHaUFDSUFRMkFnZ2dCQ0FDTmdJTURBSUxJQUVvQWhnaEJ3SkFBa0FnQVNnQ0RDSUdJQUZHRFFBZ0FTZ0NDQ0lDSUFSSkdpQUdJQUkyQWdnZ0FpQUdOZ0lNREFFTEFrQWdBVUVVYWlJQ0tBSUFJZ1FOQUNBQlFSQnFJZ0lvQWdBaUJBMEFRUUFoQmd3QkN3TkFJQUloQlNBRUlnWkJGR29pQWlnQ0FDSUVEUUFnQmtFUWFpRUNJQVlvQWhBaUJBMEFDeUFGUVFBMkFnQUxJQWRGRFFFQ1FBSkFJQUVnQVNnQ0hDSUVRUUowUWJqU2dJQUFhaUlDS0FJQVJ3MEFJQUlnQmpZQ0FDQUdEUUZCQUVFQUtBS00wSUNBQUVGK0lBUjNjVFlDak5DQWdBQU1Bd3NnQjBFUVFSUWdCeWdDRUNBQlJodHFJQVkyQWdBZ0JrVU5BZ3NnQmlBSE5nSVlBa0FnQVNnQ0VDSUNSUTBBSUFZZ0FqWUNFQ0FDSUFZMkFoZ0xJQUVvQWhRaUFrVU5BU0FHUVJScUlBSTJBZ0FnQWlBR05nSVlEQUVMSUFNb0FnUWlBa0VEY1VFRFJ3MEFJQU1nQWtGK2NUWUNCRUVBSUFBMkFwRFFnSUFBSUFFZ0FHb2dBRFlDQUNBQklBQkJBWEkyQWdRUEN5QUJJQU5QRFFBZ0F5Z0NCQ0lDUVFGeFJRMEFBa0FDUUNBQ1FRSnhEUUFDUUNBRFFRQW9BcURRZ0lBQVJ3MEFRUUFnQVRZQ29OQ0FnQUJCQUVFQUtBS1UwSUNBQUNBQWFpSUFOZ0tVMElDQUFDQUJJQUJCQVhJMkFnUWdBVUVBS0FLYzBJQ0FBRWNOQTBFQVFRQTJBcERRZ0lBQVFRQkJBRFlDbk5DQWdBQVBDd0pBSUFOQkFDZ0NuTkNBZ0FCSERRQkJBQ0FCTmdLYzBJQ0FBRUVBUVFBb0FwRFFnSUFBSUFCcUlnQTJBcERRZ0lBQUlBRWdBRUVCY2pZQ0JDQUJJQUJxSUFBMkFnQVBDeUFDUVhoeElBQnFJUUFDUUFKQUlBSkIvd0ZMRFFBZ0F5Z0NDQ0lFSUFKQkEzWWlCVUVEZEVHdzBJQ0FBR29pQmtZYUFrQWdBeWdDRENJQ0lBUkhEUUJCQUVFQUtBS0kwSUNBQUVGK0lBVjNjVFlDaU5DQWdBQU1BZ3NnQWlBR1Job2dBaUFFTmdJSUlBUWdBallDREF3QkN5QURLQUlZSVFjQ1FBSkFJQU1vQWd3aUJpQURSZzBBSUFNb0FnZ2lBa0VBS0FLWTBJQ0FBRWthSUFZZ0FqWUNDQ0FDSUFZMkFnd01BUXNDUUNBRFFSUnFJZ0lvQWdBaUJBMEFJQU5CRUdvaUFpZ0NBQ0lFRFFCQkFDRUdEQUVMQTBBZ0FpRUZJQVFpQmtFVWFpSUNLQUlBSWdRTkFDQUdRUkJxSVFJZ0JpZ0NFQ0lFRFFBTElBVkJBRFlDQUFzZ0IwVU5BQUpBQWtBZ0F5QURLQUljSWdSQkFuUkJ1TktBZ0FCcUlnSW9BZ0JIRFFBZ0FpQUdOZ0lBSUFZTkFVRUFRUUFvQW96UWdJQUFRWDRnQkhkeE5nS00wSUNBQUF3Q0N5QUhRUkJCRkNBSEtBSVFJQU5HRzJvZ0JqWUNBQ0FHUlEwQkN5QUdJQWMyQWhnQ1FDQURLQUlRSWdKRkRRQWdCaUFDTmdJUUlBSWdCallDR0FzZ0F5Z0NGQ0lDUlEwQUlBWkJGR29nQWpZQ0FDQUNJQVkyQWhnTElBRWdBR29nQURZQ0FDQUJJQUJCQVhJMkFnUWdBVUVBS0FLYzBJQ0FBRWNOQVVFQUlBQTJBcERRZ0lBQUR3c2dBeUFDUVg1eE5nSUVJQUVnQUdvZ0FEWUNBQ0FCSUFCQkFYSTJBZ1FMQWtBZ0FFSC9BVXNOQUNBQVFYaHhRYkRRZ0lBQWFpRUNBa0FDUUVFQUtBS0kwSUNBQUNJRVFRRWdBRUVEZG5RaUFIRU5BRUVBSUFRZ0FISTJBb2pRZ0lBQUlBSWhBQXdCQ3lBQ0tBSUlJUUFMSUFBZ0FUWUNEQ0FDSUFFMkFnZ2dBU0FDTmdJTUlBRWdBRFlDQ0E4TFFSOGhBZ0pBSUFCQi8vLy9CMHNOQUNBQVFRaDJJZ0lnQWtHQS9qOXFRUkIyUVFoeElnSjBJZ1FnQkVHQTRCOXFRUkIyUVFSeElnUjBJZ1lnQmtHQWdBOXFRUkIyUVFKeElnWjBRUTkySUFJZ0JISWdCbkpySWdKQkFYUWdBQ0FDUVJWcWRrRUJjWEpCSEdvaEFnc2dBU0FDTmdJY0lBRkNBRGNDRUNBQ1FRSjBRYmpTZ0lBQWFpRUVBa0FDUUVFQUtBS00wSUNBQUNJR1FRRWdBblFpQTNFTkFDQUVJQUUyQWdCQkFDQUdJQU55TmdLTTBJQ0FBQ0FCSUFRMkFoZ2dBU0FCTmdJSUlBRWdBVFlDREF3QkN5QUFRUUJCR1NBQ1FRRjJheUFDUVI5R0czUWhBaUFFS0FJQUlRWUNRQU5BSUFZaUJDZ0NCRUY0Y1NBQVJnMEJJQUpCSFhZaEJpQUNRUUYwSVFJZ0JDQUdRUVJ4YWtFUWFpSURLQUlBSWdZTkFBc2dBeUFCTmdJQUlBRWdCRFlDR0NBQklBRTJBZ3dnQVNBQk5nSUlEQUVMSUFRb0FnZ2lBQ0FCTmdJTUlBUWdBVFlDQ0NBQlFRQTJBaGdnQVNBRU5nSU1JQUVnQURZQ0NBdEJBRUVBS0FLbzBJQ0FBRUYvYWlJQlFYOGdBUnMyQXFqUWdJQUFDd3NFQUFBQUMwNEFBa0FnQUEwQVB3QkJFSFFQQ3dKQUlBQkIvLzhEY1EwQUlBQkJmMHdOQUFKQUlBQkJFSFpBQUNJQVFYOUhEUUJCQUVFd05nTDQwNENBQUVGL0R3c2dBRUVRZEE4TEVNcUFnSUFBQUF2eUFnSURmd0YrQWtBZ0FrVU5BQ0FBSUFFNkFBQWdBaUFBYWlJRFFYOXFJQUU2QUFBZ0FrRURTUTBBSUFBZ0FUb0FBaUFBSUFFNkFBRWdBMEY5YWlBQk9nQUFJQU5CZm1vZ0FUb0FBQ0FDUVFkSkRRQWdBQ0FCT2dBRElBTkJmR29nQVRvQUFDQUNRUWxKRFFBZ0FFRUFJQUJyUVFOeElnUnFJZ01nQVVIL0FYRkJnWUtFQ0d3aUFUWUNBQ0FESUFJZ0JHdEJmSEVpQkdvaUFrRjhhaUFCTmdJQUlBUkJDVWtOQUNBRElBRTJBZ2dnQXlBQk5nSUVJQUpCZUdvZ0FUWUNBQ0FDUVhScUlBRTJBZ0FnQkVFWlNRMEFJQU1nQVRZQ0dDQURJQUUyQWhRZ0F5QUJOZ0lRSUFNZ0FUWUNEQ0FDUVhCcUlBRTJBZ0FnQWtGc2FpQUJOZ0lBSUFKQmFHb2dBVFlDQUNBQ1FXUnFJQUUyQWdBZ0JDQURRUVJ4UVJoeUlnVnJJZ0pCSUVrTkFDQUJyVUtCZ0lDQUVINGhCaUFESUFWcUlRRURRQ0FCSUFZM0F4Z2dBU0FHTndNUUlBRWdCamNEQ0NBQklBWTNBd0FnQVVFZ2FpRUJJQUpCWUdvaUFrRWZTdzBBQ3dzZ0FBc0xqa2dCQUVHQUNBdUdTQUVBQUFBQ0FBQUFBd0FBQUFBQUFBQUFBQUFBQkFBQUFBVUFBQUFBQUFBQUFBQUFBQVlBQUFBSEFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBU1c1MllXeHBaQ0JqYUdGeUlHbHVJSFZ5YkNCeGRXVnllUUJUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYMkp2WkhrQVEyOXVkR1Z1ZEMxTVpXNW5kR2dnYjNabGNtWnNiM2NBUTJoMWJtc2djMmw2WlNCdmRtVnlabXh2ZHdCU1pYTndiMjV6WlNCdmRtVnlabXh2ZHdCSmJuWmhiR2xrSUcxbGRHaHZaQ0JtYjNJZ1NGUlVVQzk0TG5nZ2NtVnhkV1Z6ZEFCSmJuWmhiR2xrSUcxbGRHaHZaQ0JtYjNJZ1VsUlRVQzk0TG5nZ2NtVnhkV1Z6ZEFCRmVIQmxZM1JsWkNCVFQxVlNRMFVnYldWMGFHOWtJR1p2Y2lCSlEwVXZlQzU0SUhKbGNYVmxjM1FBU1c1MllXeHBaQ0JqYUdGeUlHbHVJSFZ5YkNCbWNtRm5iV1Z1ZENCemRHRnlkQUJGZUhCbFkzUmxaQ0JrYjNRQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5emRHRjBkWE1BU1c1MllXeHBaQ0J5WlhOd2IyNXpaU0J6ZEdGMGRYTUFTVzUyWVd4cFpDQmphR0Z5WVdOMFpYSWdhVzRnWTJoMWJtc2daWGgwWlc1emFXOXVjd0JWYzJWeUlHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOXlaWE5sZEdBZ1kyRnNiR0poWTJzZ1pYSnliM0lBWUc5dVgyTm9kVzVyWDJobFlXUmxjbUFnWTJGc2JHSmhZMnNnWlhKeWIzSUFZRzl1WDIxbGMzTmhaMlZmWW1WbmFXNWdJR05oYkd4aVlXTnJJR1Z5Y205eUFHQnZibDlqYUhWdWExOWxlSFJsYm5OcGIyNWZkbUZzZFdWZ0lHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOXpkR0YwZFhOZlkyOXRjR3hsZEdWZ0lHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOTJaWEp6YVc5dVgyTnZiWEJzWlhSbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCZ2IyNWZkWEpzWDJOdmJYQnNaWFJsWUNCallXeHNZbUZqYXlCbGNuSnZjZ0JnYjI1ZlkyaDFibXRmWTI5dGNHeGxkR1ZnSUdOaGJHeGlZV05ySUdWeWNtOXlBR0J2Ymw5b1pXRmtaWEpmZG1Gc2RXVmZZMjl0Y0d4bGRHVmdJR05oYkd4aVlXTnJJR1Z5Y205eUFHQnZibDl0WlhOellXZGxYMk52YlhCc1pYUmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmYldWMGFHOWtYMk52YlhCc1pYUmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmYUdWaFpHVnlYMlpwWld4a1gyTnZiWEJzWlhSbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCZ2IyNWZZMmgxYm10ZlpYaDBaVzV6YVc5dVgyNWhiV1ZnSUdOaGJHeGlZV05ySUdWeWNtOXlBRlZ1Wlhod1pXTjBaV1FnWTJoaGNpQnBiaUIxY213Z2MyVnlkbVZ5QUVsdWRtRnNhV1FnYUdWaFpHVnlJSFpoYkhWbElHTm9ZWElBU1c1MllXeHBaQ0JvWldGa1pYSWdabWxsYkdRZ1kyaGhjZ0JUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYM1psY25OcGIyNEFTVzUyWVd4cFpDQnRhVzV2Y2lCMlpYSnphVzl1QUVsdWRtRnNhV1FnYldGcWIzSWdkbVZ5YzJsdmJnQkZlSEJsWTNSbFpDQnpjR0ZqWlNCaFpuUmxjaUIyWlhKemFXOXVBRVY0Y0dWamRHVmtJRU5TVEVZZ1lXWjBaWElnZG1WeWMybHZiZ0JKYm5aaGJHbGtJRWhVVkZBZ2RtVnljMmx2YmdCSmJuWmhiR2xrSUdobFlXUmxjaUIwYjJ0bGJnQlRjR0Z1SUdOaGJHeGlZV05ySUdWeWNtOXlJR2x1SUc5dVgzVnliQUJKYm5aaGJHbGtJR05vWVhKaFkzUmxjbk1nYVc0Z2RYSnNBRlZ1Wlhod1pXTjBaV1FnYzNSaGNuUWdZMmhoY2lCcGJpQjFjbXdBUkc5MVlteGxJRUFnYVc0Z2RYSnNBRVZ0Y0hSNUlFTnZiblJsYm5RdFRHVnVaM1JvQUVsdWRtRnNhV1FnWTJoaGNtRmpkR1Z5SUdsdUlFTnZiblJsYm5RdFRHVnVaM1JvQUVSMWNHeHBZMkYwWlNCRGIyNTBaVzUwTFV4bGJtZDBhQUJKYm5aaGJHbGtJR05vWVhJZ2FXNGdkWEpzSUhCaGRHZ0FRMjl1ZEdWdWRDMU1aVzVuZEdnZ1kyRnVKM1FnWW1VZ2NISmxjMlZ1ZENCM2FYUm9JRlJ5WVc1elptVnlMVVZ1WTI5a2FXNW5BRWx1ZG1Gc2FXUWdZMmhoY21GamRHVnlJR2x1SUdOb2RXNXJJSE5wZW1VQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5b1pXRmtaWEpmZG1Gc2RXVUFVM0JoYmlCallXeHNZbUZqYXlCbGNuSnZjaUJwYmlCdmJsOWphSFZ1YTE5bGVIUmxibk5wYjI1ZmRtRnNkV1VBU1c1MllXeHBaQ0JqYUdGeVlXTjBaWElnYVc0Z1kyaDFibXNnWlhoMFpXNXphVzl1Y3lCMllXeDFaUUJOYVhOemFXNW5JR1Y0Y0dWamRHVmtJRXhHSUdGbWRHVnlJR2hsWVdSbGNpQjJZV3gxWlFCSmJuWmhiR2xrSUdCVWNtRnVjMlpsY2kxRmJtTnZaR2x1WjJBZ2FHVmhaR1Z5SUhaaGJIVmxBRWx1ZG1Gc2FXUWdZMmhoY21GamRHVnlJR2x1SUdOb2RXNXJJR1Y0ZEdWdWMybHZibk1nY1hWdmRHVWdkbUZzZFdVQVNXNTJZV3hwWkNCamFHRnlZV04wWlhJZ2FXNGdZMmgxYm1zZ1pYaDBaVzV6YVc5dWN5QnhkVzkwWldRZ2RtRnNkV1VBVUdGMWMyVmtJR0o1SUc5dVgyaGxZV1JsY25OZlkyOXRjR3hsZEdVQVNXNTJZV3hwWkNCRlQwWWdjM1JoZEdVQWIyNWZjbVZ6WlhRZ2NHRjFjMlVBYjI1ZlkyaDFibXRmYUdWaFpHVnlJSEJoZFhObEFHOXVYMjFsYzNOaFoyVmZZbVZuYVc0Z2NHRjFjMlVBYjI1ZlkyaDFibXRmWlhoMFpXNXphVzl1WDNaaGJIVmxJSEJoZFhObEFHOXVYM04wWVhSMWMxOWpiMjF3YkdWMFpTQndZWFZ6WlFCdmJsOTJaWEp6YVc5dVgyTnZiWEJzWlhSbElIQmhkWE5sQUc5dVgzVnliRjlqYjIxd2JHVjBaU0J3WVhWelpRQnZibDlqYUhWdWExOWpiMjF3YkdWMFpTQndZWFZ6WlFCdmJsOW9aV0ZrWlhKZmRtRnNkV1ZmWTI5dGNHeGxkR1VnY0dGMWMyVUFiMjVmYldWemMyRm5aVjlqYjIxd2JHVjBaU0J3WVhWelpRQnZibDl0WlhSb2IyUmZZMjl0Y0d4bGRHVWdjR0YxYzJVQWIyNWZhR1ZoWkdWeVgyWnBaV3hrWDJOdmJYQnNaWFJsSUhCaGRYTmxBRzl1WDJOb2RXNXJYMlY0ZEdWdWMybHZibDl1WVcxbElIQmhkWE5sQUZWdVpYaHdaV04wWldRZ2MzQmhZMlVnWVdaMFpYSWdjM1JoY25RZ2JHbHVaUUJUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYMk5vZFc1clgyVjRkR1Z1YzJsdmJsOXVZVzFsQUVsdWRtRnNhV1FnWTJoaGNtRmpkR1Z5SUdsdUlHTm9kVzVySUdWNGRHVnVjMmx2Ym5NZ2JtRnRaUUJRWVhWelpTQnZiaUJEVDA1T1JVTlVMMVZ3WjNKaFpHVUFVR0YxYzJVZ2IyNGdVRkpKTDFWd1ozSmhaR1VBUlhod1pXTjBaV1FnU0ZSVVVDOHlJRU52Ym01bFkzUnBiMjRnVUhKbFptRmpaUUJUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYMjFsZEdodlpBQkZlSEJsWTNSbFpDQnpjR0ZqWlNCaFpuUmxjaUJ0WlhSb2IyUUFVM0JoYmlCallXeHNZbUZqYXlCbGNuSnZjaUJwYmlCdmJsOW9aV0ZrWlhKZlptbGxiR1FBVUdGMWMyVmtBRWx1ZG1Gc2FXUWdkMjl5WkNCbGJtTnZkVzUwWlhKbFpBQkpiblpoYkdsa0lHMWxkR2h2WkNCbGJtTnZkVzUwWlhKbFpBQlZibVY0Y0dWamRHVmtJR05vWVhJZ2FXNGdkWEpzSUhOamFHVnRZUUJTWlhGMVpYTjBJR2hoY3lCcGJuWmhiR2xrSUdCVWNtRnVjMlpsY2kxRmJtTnZaR2x1WjJBQVUxZEpWRU5JWDFCU1QxaFpBRlZUUlY5UVVrOVlXUUJOUzBGRFZFbFdTVlJaQUZWT1VGSlBRMFZUVTBGQ1RFVmZSVTVVU1ZSWkFFTlBVRmtBVFU5V1JVUmZVRVZTVFVGT1JVNVVURmtBVkU5UFgwVkJVa3haQUU1UFZFbEdXUUJHUVVsTVJVUmZSRVZRUlU1RVJVNURXUUJDUVVSZlIwRlVSVmRCV1FCUVRFRlpBRkJWVkFCRFNFVkRTMDlWVkFCSFFWUkZWMEZaWDFSSlRVVlBWVlFBVWtWUlZVVlRWRjlVU1UxRlQxVlVBRTVGVkZkUFVrdGZRMDlPVGtWRFZGOVVTVTFGVDFWVUFFTlBUazVGUTFSSlQwNWZWRWxOUlU5VlZBQk1UMGRKVGw5VVNVMUZUMVZVQUU1RlZGZFBVa3RmVWtWQlJGOVVTVTFGVDFWVUFGQlBVMVFBVFVsVFJFbFNSVU5VUlVSZlVrVlJWVVZUVkFCRFRFbEZUbFJmUTB4UFUwVkVYMUpGVVZWRlUxUUFRMHhKUlU1VVgwTk1UMU5GUkY5TVQwRkVYMEpCVEVGT1EwVkVYMUpGVVZWRlUxUUFRa0ZFWDFKRlVWVkZVMVFBU0ZSVVVGOVNSVkZWUlZOVVgxTkZUbFJmVkU5ZlNGUlVVRk5mVUU5U1ZBQlNSVkJQVWxRQVNVMWZRVjlVUlVGUVQxUUFVa1ZUUlZSZlEwOU9WRVZPVkFCT1QxOURUMDVVUlU1VUFGQkJVbFJKUVV4ZlEwOU9WRVZPVkFCSVVFVmZTVTVXUVV4SlJGOURUMDVUVkVGT1ZBQklVRVZmUTBKZlVrVlRSVlFBUjBWVUFFaFFSVjlUVkZKSlExUUFRMDlPUmt4SlExUUFWRVZOVUU5U1FWSlpYMUpGUkVsU1JVTlVBRkJGVWsxQlRrVk9WRjlTUlVSSlVrVkRWQUJEVDA1T1JVTlVBRTFWVEZSSlgxTlVRVlJWVXdCSVVFVmZTVTVXUVV4SlJGOVRWRUZVVlZNQVZFOVBYMDFCVGxsZlVrVlJWVVZUVkZNQVJVRlNURmxmU0VsT1ZGTUFWVTVCVmtGSlRFRkNURVZmUms5U1gweEZSMEZNWDFKRlFWTlBUbE1BVDFCVVNVOU9Vd0JUVjBsVVEwaEpUa2RmVUZKUFZFOURUMHhUQUZaQlVrbEJUbFJmUVV4VFQxOU9SVWRQVkVsQlZFVlRBRTFWVEZSSlVFeEZYME5JVDBsRFJWTUFTVTVVUlZKT1FVeGZVMFZTVmtWU1gwVlNVazlTQUZkRlFsOVRSVkpXUlZKZlZVNUxUazlYVGw5RlVsSlBVZ0JTUVVsTVIxVk9YMFZTVWs5U0FFbEVSVTVVU1ZSWlgxQlNUMVpKUkVWU1gwRlZWRWhGVGxSSlEwRlVTVTlPWDBWU1VrOVNBRk5UVEY5RFJWSlVTVVpKUTBGVVJWOUZVbEpQVWdCSlRsWkJURWxFWDFoZlJrOVNWMEZTUkVWRVgwWlBVZ0JUUlZSZlVFRlNRVTFGVkVWU0FFZEZWRjlRUVZKQlRVVlVSVklBU0ZCRlgxVlRSVklBVTBWRlgwOVVTRVZTQUVoUVJWOURRbDlEU0ZWT1MxOUlSVUZFUlZJQVRVdERRVXhGVGtSQlVnQlRSVlJWVUFCWFJVSmZVMFZTVmtWU1gwbFRYMFJQVjA0QVZFVkJVa1JQVjA0QVNGQkZYME5NVDFORlJGOURUMDVPUlVOVVNVOU9BRWhGVlZKSlUxUkpRMTlGV0ZCSlVrRlVTVTlPQUVSSlUwTlBUazVGUTFSRlJGOVBVRVZTUVZSSlQwNEFUazlPWDBGVlZFaFBVa2xVUVZSSlZrVmZTVTVHVDFKTlFWUkpUMDRBU0ZCRlgwbE9Wa0ZNU1VSZlZrVlNVMGxQVGdCSVVFVmZRMEpmVFVWVFUwRkhSVjlDUlVkSlRnQlRTVlJGWDBsVFgwWlNUMXBGVGdCSVVFVmZTVTVXUVV4SlJGOUlSVUZFUlZKZlZFOUxSVTRBU1U1V1FVeEpSRjlVVDB0RlRnQkdUMUpDU1VSRVJVNEFSVTVJUVU1RFJWOVpUMVZTWDBOQlRFMEFTRkJGWDBsT1ZrRk1TVVJmVlZKTUFFSk1UME5MUlVSZlFsbGZVRUZTUlU1VVFVeGZRMDlPVkZKUFRBQk5TME5QVEFCQlEwd0FTRkJGWDBsT1ZFVlNUa0ZNQUZKRlVWVkZVMVJmU0VWQlJFVlNYMFpKUlV4RVUxOVVUMDlmVEVGU1IwVmZWVTVQUmtaSlEwbEJUQUJJVUVWZlQwc0FWVTVNU1U1TEFGVk9URTlEU3dCUVVra0FVa1ZVVWxsZlYwbFVTQUJJVUVWZlNVNVdRVXhKUkY5RFQwNVVSVTVVWDB4RlRrZFVTQUJJVUVWZlZVNUZXRkJGUTFSRlJGOURUMDVVUlU1VVgweEZUa2RVU0FCR1RGVlRTQUJRVWs5UVVFRlVRMGdBVFMxVFJVRlNRMGdBVlZKSlgxUlBUMTlNVDA1SEFGQlNUME5GVTFOSlRrY0FUVWxUUTBWTVRFRk9SVTlWVTE5UVJWSlRTVk5VUlU1VVgxZEJVazVKVGtjQVRVbFRRMFZNVEVGT1JVOVZVMTlYUVZKT1NVNUhBRWhRUlY5SlRsWkJURWxFWDFSU1FVNVRSa1ZTWDBWT1EwOUVTVTVIQUVWNGNHVmpkR1ZrSUVOU1RFWUFTRkJGWDBsT1ZrRk1TVVJmUTBoVlRrdGZVMGxhUlFCTlQxWkZBRU5QVGxSSlRsVkZBRWhRUlY5RFFsOVRWRUZVVlZOZlEwOU5VRXhGVkVVQVNGQkZYME5DWDBoRlFVUkZVbE5mUTA5TlVFeEZWRVVBU0ZCRlgwTkNYMVpGVWxOSlQwNWZRMDlOVUV4RlZFVUFTRkJGWDBOQ1gxVlNURjlEVDAxUVRFVlVSUUJJVUVWZlEwSmZRMGhWVGt0ZlEwOU5VRXhGVkVVQVNGQkZYME5DWDBoRlFVUkZVbDlXUVV4VlJWOURUMDFRVEVWVVJRQklVRVZmUTBKZlEwaFZUa3RmUlZoVVJVNVRTVTlPWDFaQlRGVkZYME5QVFZCTVJWUkZBRWhRUlY5RFFsOURTRlZPUzE5RldGUkZUbE5KVDA1ZlRrRk5SVjlEVDAxUVRFVlVSUUJJVUVWZlEwSmZUVVZUVTBGSFJWOURUMDFRVEVWVVJRQklVRVZmUTBKZlRVVlVTRTlFWDBOUFRWQk1SVlJGQUVoUVJWOURRbDlJUlVGRVJWSmZSa2xGVEVSZlEwOU5VRXhGVkVVQVJFVk1SVlJGQUVoUVJWOUpUbFpCVEVsRVgwVlBSbDlUVkVGVVJRQkpUbFpCVEVsRVgxTlRURjlEUlZKVVNVWkpRMEZVUlFCUVFWVlRSUUJPVDE5U1JWTlFUMDVUUlFCVlRsTlZVRkJQVWxSRlJGOU5SVVJKUVY5VVdWQkZBRWRQVGtVQVRrOVVYMEZEUTBWUVZFRkNURVVBVTBWU1ZrbERSVjlWVGtGV1FVbE1RVUpNUlFCU1FVNUhSVjlPVDFSZlUwRlVTVk5HU1VGQ1RFVUFUMUpKUjBsT1gwbFRYMVZPVWtWQlEwaEJRa3hGQUZKRlUxQlBUbE5GWDBsVFgxTlVRVXhGQUZCVlVrZEZBRTFGVWtkRkFGSkZVVlZGVTFSZlNFVkJSRVZTWDBaSlJVeEVVMTlVVDA5ZlRFRlNSMFVBVWtWUlZVVlRWRjlJUlVGRVJWSmZWRTlQWDB4QlVrZEZBRkJCV1V4UFFVUmZWRTlQWDB4QlVrZEZBRWxPVTFWR1JrbERTVVZPVkY5VFZFOVNRVWRGQUVoUVJWOVFRVlZUUlVSZlZWQkhVa0ZFUlFCSVVFVmZVRUZWVTBWRVgwZ3lYMVZRUjFKQlJFVUFVMDlWVWtORkFFRk9UazlWVGtORkFGUlNRVU5GQUVoUVJWOVZUa1ZZVUVWRFZFVkVYMU5RUVVORkFFUkZVME5TU1VKRkFGVk9VMVZDVTBOU1NVSkZBRkpGUTA5U1JBQklVRVZmU1U1V1FVeEpSRjlOUlZSSVQwUUFUazlVWDBaUFZVNUVBRkJTVDFCR1NVNUVBRlZPUWtsT1JBQlNSVUpKVGtRQVZVNUJWVlJJVDFKSldrVkVBRTFGVkVoUFJGOU9UMVJmUVV4TVQxZEZSQUJJVkZSUVgxWkZVbE5KVDA1ZlRrOVVYMU5WVUZCUFVsUkZSQUJCVEZKRlFVUlpYMUpGVUU5U1ZFVkVBRUZEUTBWUVZFVkVBRTVQVkY5SlRWQk1SVTFGVGxSRlJBQk1UMDlRWDBSRlZFVkRWRVZFQUVoUVJWOURVbDlGV0ZCRlExUkZSQUJJVUVWZlRFWmZSVmhRUlVOVVJVUUFRMUpGUVZSRlJBQkpUVjlWVTBWRUFFaFFSVjlRUVZWVFJVUUFWRWxOUlU5VlZGOVBRME5WVWtWRUFGQkJXVTFGVGxSZlVrVlJWVWxTUlVRQVVGSkZRMDlPUkVsVVNVOU9YMUpGVVZWSlVrVkVBRkJTVDFoWlgwRlZWRWhGVGxSSlEwRlVTVTlPWDFKRlVWVkpVa1ZFQUU1RlZGZFBVa3RmUVZWVVNFVk9WRWxEUVZSSlQwNWZVa1ZSVlVsU1JVUUFURVZPUjFSSVgxSkZVVlZKVWtWRUFGTlRURjlEUlZKVVNVWkpRMEZVUlY5U1JWRlZTVkpGUkFCVlVFZFNRVVJGWDFKRlVWVkpVa1ZFQUZCQlIwVmZSVmhRU1ZKRlJBQlFVa1ZEVDA1RVNWUkpUMDVmUmtGSlRFVkVBRVZZVUVWRFZFRlVTVTlPWDBaQlNVeEZSQUJTUlZaQlRFbEVRVlJKVDA1ZlJrRkpURVZFQUZOVFRGOUlRVTVFVTBoQlMwVmZSa0ZKVEVWRUFFeFBRMHRGUkFCVVVrRk9VMFpQVWsxQlZFbFBUbDlCVUZCTVNVVkVBRTVQVkY5TlQwUkpSa2xGUkFCT1QxUmZSVmhVUlU1RVJVUUFRa0ZPUkZkSlJGUklYMHhKVFVsVVgwVllRMFZGUkVWRUFGTkpWRVZmU1ZOZlQxWkZVa3hQUVVSRlJBQklSVUZFQUVWNGNHVmpkR1ZrSUVoVVZGQXZBQUJlRXdBQUpoTUFBREFRQUFEd0Z3QUFuUk1BQUJVU0FBQTVGd0FBOEJJQUFBb1FBQUIxRWdBQXJSSUFBSUlUQUFCUEZBQUFmeEFBQUtBVkFBQWpGQUFBaVJJQUFJc1VBQUJORlFBQTFCRUFBTThVQUFBUUdBQUF5UllBQU53V0FBREJFUUFBNEJjQUFMc1VBQUIwRkFBQWZCVUFBT1VVQUFBSUZ3QUFIeEFBQUdVVkFBQ2pGQUFBS0JVQUFBSVZBQUNaRlFBQUxCQUFBSXNaQUFCUER3QUExQTRBQUdvUUFBRE9FQUFBQWhjQUFJa09BQUJ1RXdBQUhCTUFBR1lVQUFCV0Z3QUF3Uk1BQU0wVEFBQnNFd0FBYUJjQUFHWVhBQUJmRndBQUloTUFBTTRQQUFCcERnQUEyQTRBQUdNV0FBRExFd0FBcWc0QUFDZ1hBQUFtRndBQXhSTUFBRjBXQUFEb0VRQUFaeE1BQUdVVEFBRHlGZ0FBY3hNQUFCMFhBQUQ1RmdBQTh4RUFBTThPQUFET0ZRQUFEQklBQUxNUkFBQ2xFUUFBWVJBQUFESVhBQUM3RXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVCQWdFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQUFBQUFBQUFBQUFBQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnTUNBZ0lDQWdBQUFnSUFBZ0lBQWdJQ0FnSUNBZ0lDQWdBRUFBQUFBQUFDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0FBQUFJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FBSUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlBQWdJQ0FnSUFBQUlDQUFJQ0FBSUNBZ0lDQWdJQ0FnSUFBd0FFQUFBQUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQUFBQUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0FDQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQnNiM05sWldWd0xXRnNhWFpsQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRRUJBUUVCQVFFQkFRRUJBZ0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFGamFIVnVhMlZrQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBUUFCQVFFQkFRQUFBUUVBQVFFQUFRRUJBUUVCQVFFQkFRQUFBQUFBQUFBQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQUFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHVmpkR2x2Ym1WdWRDMXNaVzVuZEdodmJuSnZlSGt0WTI5dWJtVmpkR2x2YmdBQUFBQUFBQUFBQUFBQUFBQUFBSEpoYm5ObVpYSXRaVzVqYjJScGJtZHdaM0poWkdVTkNnMEtEUXBUVFEwS0RRcFVWRkF2UTBVdlZGTlFMd0FBQUFBQUFBQUFBQUFBQUFFQ0FBRURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFBQUFBQUFBQUJBZ0FCQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQkFRVUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUFBQUFBQUFBQVFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUFBQUFBQUFBQUFBQUJBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXdRQUFBUUVCQVFFQkFRRUJBUUVCUVFFQkFRRUJBUUVCQVFFQkFBRUFBWUhCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFBQkFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUFNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQUFBQUFBQUFBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQUFBQWdBQUFBQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3QUFBQUFBQUFNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRTVQVlU1RFJVVkRTMDlWVkU1RlExUkZWRVZEVWtsQ1JVeFZVMGhGVkVWQlJGTkZRVkpEU0ZKSFJVTlVTVlpKVkZsTVJVNUVRVkpXUlU5VVNVWlpVRlJKVDA1VFEwaFRSVUZaVTFSQlZFTklSMFZQVWtSSlVrVkRWRTlTVkZKRFNGQkJVa0ZOUlZSRlVsVlNRMFZDVTBOU1NVSkZRVkpFVDFkT1FVTkZTVTVFVGt0RFMxVkNVME5TU1VKRlNGUlVVQzlCUkZSUUx3PT0nXG4iLCAiLy8gQHRzLWNoZWNrXG5cbid1c2Ugc3RyaWN0J1xuXG4vKiBnbG9iYWwgV2ViQXNzZW1ibHkgKi9cblxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IG5ldCA9IHJlcXVpcmUoJ25ldCcpXG5jb25zdCBodHRwID0gcmVxdWlyZSgnaHR0cCcpXG5jb25zdCB7IHBpcGVsaW5lIH0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4vY29yZS91dGlsJylcbmNvbnN0IHRpbWVycyA9IHJlcXVpcmUoJy4vdGltZXJzJylcbmNvbnN0IFJlcXVlc3QgPSByZXF1aXJlKCcuL2NvcmUvcmVxdWVzdCcpXG5jb25zdCBEaXNwYXRjaGVyQmFzZSA9IHJlcXVpcmUoJy4vZGlzcGF0Y2hlci1iYXNlJylcbmNvbnN0IHtcbiAgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBSZXNwb25zZUNvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBJbnZhbGlkQXJndW1lbnRFcnJvcixcbiAgUmVxdWVzdEFib3J0ZWRFcnJvcixcbiAgSGVhZGVyc1RpbWVvdXRFcnJvcixcbiAgSGVhZGVyc092ZXJmbG93RXJyb3IsXG4gIFNvY2tldEVycm9yLFxuICBJbmZvcm1hdGlvbmFsRXJyb3IsXG4gIEJvZHlUaW1lb3V0RXJyb3IsXG4gIEhUVFBQYXJzZXJFcnJvcixcbiAgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvcixcbiAgQ2xpZW50RGVzdHJveWVkRXJyb3Jcbn0gPSByZXF1aXJlKCcuL2NvcmUvZXJyb3JzJylcbmNvbnN0IGJ1aWxkQ29ubmVjdG9yID0gcmVxdWlyZSgnLi9jb3JlL2Nvbm5lY3QnKVxuY29uc3Qge1xuICBrVXJsLFxuICBrUmVzZXQsXG4gIGtTZXJ2ZXJOYW1lLFxuICBrQ2xpZW50LFxuICBrQnVzeSxcbiAga1BhcnNlcixcbiAga0Nvbm5lY3QsXG4gIGtCbG9ja2luZyxcbiAga1Jlc3VtaW5nLFxuICBrUnVubmluZyxcbiAga1BlbmRpbmcsXG4gIGtTaXplLFxuICBrV3JpdGluZyxcbiAga1F1ZXVlLFxuICBrQ29ubmVjdGVkLFxuICBrQ29ubmVjdGluZyxcbiAga05lZWREcmFpbixcbiAga05vUmVmLFxuICBrS2VlcEFsaXZlRGVmYXVsdFRpbWVvdXQsXG4gIGtIb3N0SGVhZGVyLFxuICBrUGVuZGluZ0lkeCxcbiAga1J1bm5pbmdJZHgsXG4gIGtFcnJvcixcbiAga1BpcGVsaW5pbmcsXG4gIGtTb2NrZXQsXG4gIGtLZWVwQWxpdmVUaW1lb3V0VmFsdWUsXG4gIGtNYXhIZWFkZXJzU2l6ZSxcbiAga0tlZXBBbGl2ZU1heFRpbWVvdXQsXG4gIGtLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkLFxuICBrSGVhZGVyc1RpbWVvdXQsXG4gIGtCb2R5VGltZW91dCxcbiAga1N0cmljdENvbnRlbnRMZW5ndGgsXG4gIGtDb25uZWN0b3IsXG4gIGtNYXhSZWRpcmVjdGlvbnMsXG4gIGtNYXhSZXF1ZXN0cyxcbiAga0NvdW50ZXIsXG4gIGtDbG9zZSxcbiAga0Rlc3Ryb3ksXG4gIGtEaXNwYXRjaCxcbiAga0ludGVyY2VwdG9ycyxcbiAga0xvY2FsQWRkcmVzcyxcbiAga01heFJlc3BvbnNlU2l6ZSxcbiAga0hUVFBDb25uVmVyc2lvbixcbiAgLy8gSFRUUDJcbiAga0hvc3QsXG4gIGtIVFRQMlNlc3Npb24sXG4gIGtIVFRQMlNlc3Npb25TdGF0ZSxcbiAga0hUVFAyQnVpbGRSZXF1ZXN0LFxuICBrSFRUUDJDb3B5SGVhZGVycyxcbiAga0hUVFAxQnVpbGRSZXF1ZXN0XG59ID0gcmVxdWlyZSgnLi9jb3JlL3N5bWJvbHMnKVxuXG4vKiogQHR5cGUge2ltcG9ydCgnaHR0cDInKX0gKi9cbmxldCBodHRwMlxudHJ5IHtcbiAgaHR0cDIgPSByZXF1aXJlKCdodHRwMicpXG59IGNhdGNoIHtcbiAgLy8gQHRzLWlnbm9yZVxuICBodHRwMiA9IHsgY29uc3RhbnRzOiB7fSB9XG59XG5cbmNvbnN0IHtcbiAgY29uc3RhbnRzOiB7XG4gICAgSFRUUDJfSEVBREVSX0FVVEhPUklUWSxcbiAgICBIVFRQMl9IRUFERVJfTUVUSE9ELFxuICAgIEhUVFAyX0hFQURFUl9QQVRILFxuICAgIEhUVFAyX0hFQURFUl9TQ0hFTUUsXG4gICAgSFRUUDJfSEVBREVSX0NPTlRFTlRfTEVOR1RILFxuICAgIEhUVFAyX0hFQURFUl9FWFBFQ1QsXG4gICAgSFRUUDJfSEVBREVSX1NUQVRVU1xuICB9XG59ID0gaHR0cDJcblxuLy8gRXhwZXJpbWVudGFsXG5sZXQgaDJFeHBlcmltZW50YWxXYXJuZWQgPSBmYWxzZVxuXG5jb25zdCBGYXN0QnVmZmVyID0gQnVmZmVyW1N5bWJvbC5zcGVjaWVzXVxuXG5jb25zdCBrQ2xvc2VkUmVzb2x2ZSA9IFN5bWJvbCgna0Nsb3NlZFJlc29sdmUnKVxuXG5jb25zdCBjaGFubmVscyA9IHt9XG5cbnRyeSB7XG4gIGNvbnN0IGRpYWdub3N0aWNzQ2hhbm5lbCA9IHJlcXVpcmUoJ2RpYWdub3N0aWNzX2NoYW5uZWwnKVxuICBjaGFubmVscy5zZW5kSGVhZGVycyA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6Y2xpZW50OnNlbmRIZWFkZXJzJylcbiAgY2hhbm5lbHMuYmVmb3JlQ29ubmVjdCA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6Y2xpZW50OmJlZm9yZUNvbm5lY3QnKVxuICBjaGFubmVscy5jb25uZWN0RXJyb3IgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOmNsaWVudDpjb25uZWN0RXJyb3InKVxuICBjaGFubmVscy5jb25uZWN0ZWQgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOmNsaWVudDpjb25uZWN0ZWQnKVxufSBjYXRjaCB7XG4gIGNoYW5uZWxzLnNlbmRIZWFkZXJzID0geyBoYXNTdWJzY3JpYmVyczogZmFsc2UgfVxuICBjaGFubmVscy5iZWZvcmVDb25uZWN0ID0geyBoYXNTdWJzY3JpYmVyczogZmFsc2UgfVxuICBjaGFubmVscy5jb25uZWN0RXJyb3IgPSB7IGhhc1N1YnNjcmliZXJzOiBmYWxzZSB9XG4gIGNoYW5uZWxzLmNvbm5lY3RlZCA9IHsgaGFzU3Vic2NyaWJlcnM6IGZhbHNlIH1cbn1cblxuLyoqXG4gKiBAdHlwZSB7aW1wb3J0KCcuLi90eXBlcy9jbGllbnQnKS5kZWZhdWx0fVxuICovXG5jbGFzcyBDbGllbnQgZXh0ZW5kcyBEaXNwYXRjaGVyQmFzZSB7XG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ3xVUkx9IHVybFxuICAgKiBAcGFyYW0ge2ltcG9ydCgnLi4vdHlwZXMvY2xpZW50JykuQ2xpZW50Lk9wdGlvbnN9IG9wdGlvbnNcbiAgICovXG4gIGNvbnN0cnVjdG9yICh1cmwsIHtcbiAgICBpbnRlcmNlcHRvcnMsXG4gICAgbWF4SGVhZGVyU2l6ZSxcbiAgICBoZWFkZXJzVGltZW91dCxcbiAgICBzb2NrZXRUaW1lb3V0LFxuICAgIHJlcXVlc3RUaW1lb3V0LFxuICAgIGNvbm5lY3RUaW1lb3V0LFxuICAgIGJvZHlUaW1lb3V0LFxuICAgIGlkbGVUaW1lb3V0LFxuICAgIGtlZXBBbGl2ZSxcbiAgICBrZWVwQWxpdmVUaW1lb3V0LFxuICAgIG1heEtlZXBBbGl2ZVRpbWVvdXQsXG4gICAga2VlcEFsaXZlTWF4VGltZW91dCxcbiAgICBrZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkLFxuICAgIHNvY2tldFBhdGgsXG4gICAgcGlwZWxpbmluZyxcbiAgICB0bHMsXG4gICAgc3RyaWN0Q29udGVudExlbmd0aCxcbiAgICBtYXhDYWNoZWRTZXNzaW9ucyxcbiAgICBtYXhSZWRpcmVjdGlvbnMsXG4gICAgY29ubmVjdCxcbiAgICBtYXhSZXF1ZXN0c1BlckNsaWVudCxcbiAgICBsb2NhbEFkZHJlc3MsXG4gICAgbWF4UmVzcG9uc2VTaXplLFxuICAgIGF1dG9TZWxlY3RGYW1pbHksXG4gICAgYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0LFxuICAgIC8vIGgyXG4gICAgYWxsb3dIMixcbiAgICBtYXhDb25jdXJyZW50U3RyZWFtc1xuICB9ID0ge30pIHtcbiAgICBzdXBlcigpXG5cbiAgICBpZiAoa2VlcEFsaXZlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndW5zdXBwb3J0ZWQga2VlcEFsaXZlLCB1c2UgcGlwZWxpbmluZz0wIGluc3RlYWQnKVxuICAgIH1cblxuICAgIGlmIChzb2NrZXRUaW1lb3V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndW5zdXBwb3J0ZWQgc29ja2V0VGltZW91dCwgdXNlIGhlYWRlcnNUaW1lb3V0ICYgYm9keVRpbWVvdXQgaW5zdGVhZCcpXG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3RUaW1lb3V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndW5zdXBwb3J0ZWQgcmVxdWVzdFRpbWVvdXQsIHVzZSBoZWFkZXJzVGltZW91dCAmIGJvZHlUaW1lb3V0IGluc3RlYWQnKVxuICAgIH1cblxuICAgIGlmIChpZGxlVGltZW91dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3Vuc3VwcG9ydGVkIGlkbGVUaW1lb3V0LCB1c2Uga2VlcEFsaXZlVGltZW91dCBpbnN0ZWFkJylcbiAgICB9XG5cbiAgICBpZiAobWF4S2VlcEFsaXZlVGltZW91dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3Vuc3VwcG9ydGVkIG1heEtlZXBBbGl2ZVRpbWVvdXQsIHVzZSBrZWVwQWxpdmVNYXhUaW1lb3V0IGluc3RlYWQnKVxuICAgIH1cblxuICAgIGlmIChtYXhIZWFkZXJTaXplICE9IG51bGwgJiYgIU51bWJlci5pc0Zpbml0ZShtYXhIZWFkZXJTaXplKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG1heEhlYWRlclNpemUnKVxuICAgIH1cblxuICAgIGlmIChzb2NrZXRQYXRoICE9IG51bGwgJiYgdHlwZW9mIHNvY2tldFBhdGggIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgc29ja2V0UGF0aCcpXG4gICAgfVxuXG4gICAgaWYgKGNvbm5lY3RUaW1lb3V0ICE9IG51bGwgJiYgKCFOdW1iZXIuaXNGaW5pdGUoY29ubmVjdFRpbWVvdXQpIHx8IGNvbm5lY3RUaW1lb3V0IDwgMCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjb25uZWN0VGltZW91dCcpXG4gICAgfVxuXG4gICAgaWYgKGtlZXBBbGl2ZVRpbWVvdXQgIT0gbnVsbCAmJiAoIU51bWJlci5pc0Zpbml0ZShrZWVwQWxpdmVUaW1lb3V0KSB8fCBrZWVwQWxpdmVUaW1lb3V0IDw9IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQga2VlcEFsaXZlVGltZW91dCcpXG4gICAgfVxuXG4gICAgaWYgKGtlZXBBbGl2ZU1heFRpbWVvdXQgIT0gbnVsbCAmJiAoIU51bWJlci5pc0Zpbml0ZShrZWVwQWxpdmVNYXhUaW1lb3V0KSB8fCBrZWVwQWxpdmVNYXhUaW1lb3V0IDw9IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQga2VlcEFsaXZlTWF4VGltZW91dCcpXG4gICAgfVxuXG4gICAgaWYgKGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGQgIT0gbnVsbCAmJiAhTnVtYmVyLmlzRmluaXRlKGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGQpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQga2VlcEFsaXZlVGltZW91dFRocmVzaG9sZCcpXG4gICAgfVxuXG4gICAgaWYgKGhlYWRlcnNUaW1lb3V0ICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKGhlYWRlcnNUaW1lb3V0KSB8fCBoZWFkZXJzVGltZW91dCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2hlYWRlcnNUaW1lb3V0IG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyIG9yIHplcm8nKVxuICAgIH1cblxuICAgIGlmIChib2R5VGltZW91dCAhPSBudWxsICYmICghTnVtYmVyLmlzSW50ZWdlcihib2R5VGltZW91dCkgfHwgYm9keVRpbWVvdXQgPCAwKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdib2R5VGltZW91dCBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciBvciB6ZXJvJylcbiAgICB9XG5cbiAgICBpZiAoY29ubmVjdCAhPSBudWxsICYmIHR5cGVvZiBjb25uZWN0ICE9PSAnZnVuY3Rpb24nICYmIHR5cGVvZiBjb25uZWN0ICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdjb25uZWN0IG11c3QgYmUgYSBmdW5jdGlvbiBvciBhbiBvYmplY3QnKVxuICAgIH1cblxuICAgIGlmIChtYXhSZWRpcmVjdGlvbnMgIT0gbnVsbCAmJiAoIU51bWJlci5pc0ludGVnZXIobWF4UmVkaXJlY3Rpb25zKSB8fCBtYXhSZWRpcmVjdGlvbnMgPCAwKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdtYXhSZWRpcmVjdGlvbnMgbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlcicpXG4gICAgfVxuXG4gICAgaWYgKG1heFJlcXVlc3RzUGVyQ2xpZW50ICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKG1heFJlcXVlc3RzUGVyQ2xpZW50KSB8fCBtYXhSZXF1ZXN0c1BlckNsaWVudCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ21heFJlcXVlc3RzUGVyQ2xpZW50IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIGlmIChsb2NhbEFkZHJlc3MgIT0gbnVsbCAmJiAodHlwZW9mIGxvY2FsQWRkcmVzcyAhPT0gJ3N0cmluZycgfHwgbmV0LmlzSVAobG9jYWxBZGRyZXNzKSA9PT0gMCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbG9jYWxBZGRyZXNzIG11c3QgYmUgdmFsaWQgc3RyaW5nIElQIGFkZHJlc3MnKVxuICAgIH1cblxuICAgIGlmIChtYXhSZXNwb25zZVNpemUgIT0gbnVsbCAmJiAoIU51bWJlci5pc0ludGVnZXIobWF4UmVzcG9uc2VTaXplKSB8fCBtYXhSZXNwb25zZVNpemUgPCAtMSkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWF4UmVzcG9uc2VTaXplIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGF1dG9TZWxlY3RGYW1pbHlBdHRlbXB0VGltZW91dCAhPSBudWxsICYmXG4gICAgICAoIU51bWJlci5pc0ludGVnZXIoYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0KSB8fCBhdXRvU2VsZWN0RmFtaWx5QXR0ZW1wdFRpbWVvdXQgPCAtMSlcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIC8vIGgyXG4gICAgaWYgKGFsbG93SDIgIT0gbnVsbCAmJiB0eXBlb2YgYWxsb3dIMiAhPT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2FsbG93SDIgbXVzdCBiZSBhIHZhbGlkIGJvb2xlYW4gdmFsdWUnKVxuICAgIH1cblxuICAgIGlmIChtYXhDb25jdXJyZW50U3RyZWFtcyAhPSBudWxsICYmICh0eXBlb2YgbWF4Q29uY3VycmVudFN0cmVhbXMgIT09ICdudW1iZXInIHx8IG1heENvbmN1cnJlbnRTdHJlYW1zIDwgMSkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWF4Q29uY3VycmVudFN0cmVhbXMgbXVzdCBiZSBhIHBvc3NpdGl2ZSBpbnRlZ2VyLCBncmVhdGVyIHRoYW4gMCcpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25uZWN0ICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25uZWN0ID0gYnVpbGRDb25uZWN0b3Ioe1xuICAgICAgICAuLi50bHMsXG4gICAgICAgIG1heENhY2hlZFNlc3Npb25zLFxuICAgICAgICBhbGxvd0gyLFxuICAgICAgICBzb2NrZXRQYXRoLFxuICAgICAgICB0aW1lb3V0OiBjb25uZWN0VGltZW91dCxcbiAgICAgICAgLi4uKHV0aWwubm9kZUhhc0F1dG9TZWxlY3RGYW1pbHkgJiYgYXV0b1NlbGVjdEZhbWlseSA/IHsgYXV0b1NlbGVjdEZhbWlseSwgYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IH0gOiB1bmRlZmluZWQpLFxuICAgICAgICAuLi5jb25uZWN0XG4gICAgICB9KVxuICAgIH1cblxuICAgIHRoaXNba0ludGVyY2VwdG9yc10gPSBpbnRlcmNlcHRvcnMgJiYgaW50ZXJjZXB0b3JzLkNsaWVudCAmJiBBcnJheS5pc0FycmF5KGludGVyY2VwdG9ycy5DbGllbnQpXG4gICAgICA/IGludGVyY2VwdG9ycy5DbGllbnRcbiAgICAgIDogW2NyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IoeyBtYXhSZWRpcmVjdGlvbnMgfSldXG4gICAgdGhpc1trVXJsXSA9IHV0aWwucGFyc2VPcmlnaW4odXJsKVxuICAgIHRoaXNba0Nvbm5lY3Rvcl0gPSBjb25uZWN0XG4gICAgdGhpc1trU29ja2V0XSA9IG51bGxcbiAgICB0aGlzW2tQaXBlbGluaW5nXSA9IHBpcGVsaW5pbmcgIT0gbnVsbCA/IHBpcGVsaW5pbmcgOiAxXG4gICAgdGhpc1trTWF4SGVhZGVyc1NpemVdID0gbWF4SGVhZGVyU2l6ZSB8fCBodHRwLm1heEhlYWRlclNpemVcbiAgICB0aGlzW2tLZWVwQWxpdmVEZWZhdWx0VGltZW91dF0gPSBrZWVwQWxpdmVUaW1lb3V0ID09IG51bGwgPyA0ZTMgOiBrZWVwQWxpdmVUaW1lb3V0XG4gICAgdGhpc1trS2VlcEFsaXZlTWF4VGltZW91dF0gPSBrZWVwQWxpdmVNYXhUaW1lb3V0ID09IG51bGwgPyA2MDBlMyA6IGtlZXBBbGl2ZU1heFRpbWVvdXRcbiAgICB0aGlzW2tLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkXSA9IGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGQgPT0gbnVsbCA/IDFlMyA6IGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGRcbiAgICB0aGlzW2tLZWVwQWxpdmVUaW1lb3V0VmFsdWVdID0gdGhpc1trS2VlcEFsaXZlRGVmYXVsdFRpbWVvdXRdXG4gICAgdGhpc1trU2VydmVyTmFtZV0gPSBudWxsXG4gICAgdGhpc1trTG9jYWxBZGRyZXNzXSA9IGxvY2FsQWRkcmVzcyAhPSBudWxsID8gbG9jYWxBZGRyZXNzIDogbnVsbFxuICAgIHRoaXNba1Jlc3VtaW5nXSA9IDAgLy8gMCwgaWRsZSwgMSwgc2NoZWR1bGVkLCAyIHJlc3VtaW5nXG4gICAgdGhpc1trTmVlZERyYWluXSA9IDAgLy8gMCwgaWRsZSwgMSwgc2NoZWR1bGVkLCAyIHJlc3VtaW5nXG4gICAgdGhpc1trSG9zdEhlYWRlcl0gPSBgaG9zdDogJHt0aGlzW2tVcmxdLmhvc3RuYW1lfSR7dGhpc1trVXJsXS5wb3J0ID8gYDoke3RoaXNba1VybF0ucG9ydH1gIDogJyd9XFxyXFxuYFxuICAgIHRoaXNba0JvZHlUaW1lb3V0XSA9IGJvZHlUaW1lb3V0ICE9IG51bGwgPyBib2R5VGltZW91dCA6IDMwMGUzXG4gICAgdGhpc1trSGVhZGVyc1RpbWVvdXRdID0gaGVhZGVyc1RpbWVvdXQgIT0gbnVsbCA/IGhlYWRlcnNUaW1lb3V0IDogMzAwZTNcbiAgICB0aGlzW2tTdHJpY3RDb250ZW50TGVuZ3RoXSA9IHN0cmljdENvbnRlbnRMZW5ndGggPT0gbnVsbCA/IHRydWUgOiBzdHJpY3RDb250ZW50TGVuZ3RoXG4gICAgdGhpc1trTWF4UmVkaXJlY3Rpb25zXSA9IG1heFJlZGlyZWN0aW9uc1xuICAgIHRoaXNba01heFJlcXVlc3RzXSA9IG1heFJlcXVlc3RzUGVyQ2xpZW50XG4gICAgdGhpc1trQ2xvc2VkUmVzb2x2ZV0gPSBudWxsXG4gICAgdGhpc1trTWF4UmVzcG9uc2VTaXplXSA9IG1heFJlc3BvbnNlU2l6ZSA+IC0xID8gbWF4UmVzcG9uc2VTaXplIDogLTFcbiAgICB0aGlzW2tIVFRQQ29ublZlcnNpb25dID0gJ2gxJ1xuXG4gICAgLy8gSFRUUC8yXG4gICAgdGhpc1trSFRUUDJTZXNzaW9uXSA9IG51bGxcbiAgICB0aGlzW2tIVFRQMlNlc3Npb25TdGF0ZV0gPSAhYWxsb3dIMlxuICAgICAgPyBudWxsXG4gICAgICA6IHtcbiAgICAgICAgLy8gc3RyZWFtczogbnVsbCwgLy8gRml4ZWQgcXVldWUgb2Ygc3RyZWFtcyAtIEZvciBmdXR1cmUgc3VwcG9ydCBvZiBgcHVzaGBcbiAgICAgICAgICBvcGVuU3RyZWFtczogMCwgLy8gS2VlcCB0cmFjayBvZiB0aGVtIHRvIGRlY2lkZSB3ZXRoZXIgb3Igbm90IHVucmVmIHRoZSBzZXNzaW9uXG4gICAgICAgICAgbWF4Q29uY3VycmVudFN0cmVhbXM6IG1heENvbmN1cnJlbnRTdHJlYW1zICE9IG51bGwgPyBtYXhDb25jdXJyZW50U3RyZWFtcyA6IDEwMCAvLyBNYXggcGVlckNvbmN1cnJlbnRTdHJlYW1zIGZvciBhIE5vZGUgaDIgc2VydmVyXG4gICAgICAgIH1cbiAgICB0aGlzW2tIb3N0XSA9IGAke3RoaXNba1VybF0uaG9zdG5hbWV9JHt0aGlzW2tVcmxdLnBvcnQgPyBgOiR7dGhpc1trVXJsXS5wb3J0fWAgOiAnJ31gXG5cbiAgICAvLyBrUXVldWUgaXMgYnVpbHQgdXAgb2YgMyBzZWN0aW9ucyBzZXBhcmF0ZWQgYnlcbiAgICAvLyB0aGUga1J1bm5pbmdJZHggYW5kIGtQZW5kaW5nSWR4IGluZGljZXMuXG4gICAgLy8gfCAgIGNvbXBsZXRlICAgfCAgIHJ1bm5pbmcgICB8ICAgcGVuZGluZyAgIHxcbiAgICAvLyAgICAgICAgICAgICAgICBeIGtSdW5uaW5nSWR4IF4ga1BlbmRpbmdJZHggXiBrUXVldWUubGVuZ3RoXG4gICAgLy8ga1J1bm5pbmdJZHggcG9pbnRzIHRvIHRoZSBmaXJzdCBydW5uaW5nIGVsZW1lbnQuXG4gICAgLy8ga1BlbmRpbmdJZHggcG9pbnRzIHRvIHRoZSBmaXJzdCBwZW5kaW5nIGVsZW1lbnQuXG4gICAgLy8gVGhpcyBpbXBsZW1lbnRzIGEgZmFzdCBxdWV1ZSB3aXRoIGFuIGFtb3J0aXplZFxuICAgIC8vIHRpbWUgb2YgTygxKS5cblxuICAgIHRoaXNba1F1ZXVlXSA9IFtdXG4gICAgdGhpc1trUnVubmluZ0lkeF0gPSAwXG4gICAgdGhpc1trUGVuZGluZ0lkeF0gPSAwXG4gIH1cblxuICBnZXQgcGlwZWxpbmluZyAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1BpcGVsaW5pbmddXG4gIH1cblxuICBzZXQgcGlwZWxpbmluZyAodmFsdWUpIHtcbiAgICB0aGlzW2tQaXBlbGluaW5nXSA9IHZhbHVlXG4gICAgcmVzdW1lKHRoaXMsIHRydWUpXG4gIH1cblxuICBnZXQgW2tQZW5kaW5nXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1F1ZXVlXS5sZW5ndGggLSB0aGlzW2tQZW5kaW5nSWR4XVxuICB9XG5cbiAgZ2V0IFtrUnVubmluZ10gKCkge1xuICAgIHJldHVybiB0aGlzW2tQZW5kaW5nSWR4XSAtIHRoaXNba1J1bm5pbmdJZHhdXG4gIH1cblxuICBnZXQgW2tTaXplXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1F1ZXVlXS5sZW5ndGggLSB0aGlzW2tSdW5uaW5nSWR4XVxuICB9XG5cbiAgZ2V0IFtrQ29ubmVjdGVkXSAoKSB7XG4gICAgcmV0dXJuICEhdGhpc1trU29ja2V0XSAmJiAhdGhpc1trQ29ubmVjdGluZ10gJiYgIXRoaXNba1NvY2tldF0uZGVzdHJveWVkXG4gIH1cblxuICBnZXQgW2tCdXN5XSAoKSB7XG4gICAgY29uc3Qgc29ja2V0ID0gdGhpc1trU29ja2V0XVxuICAgIHJldHVybiAoXG4gICAgICAoc29ja2V0ICYmIChzb2NrZXRba1Jlc2V0XSB8fCBzb2NrZXRba1dyaXRpbmddIHx8IHNvY2tldFtrQmxvY2tpbmddKSkgfHxcbiAgICAgICh0aGlzW2tTaXplXSA+PSAodGhpc1trUGlwZWxpbmluZ10gfHwgMSkpIHx8XG4gICAgICB0aGlzW2tQZW5kaW5nXSA+IDBcbiAgICApXG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmU6IG9ubHkgdXNlZCBmb3IgdGVzdCAqL1xuICBba0Nvbm5lY3RdIChjYikge1xuICAgIGNvbm5lY3QodGhpcylcbiAgICB0aGlzLm9uY2UoJ2Nvbm5lY3QnLCBjYilcbiAgfVxuXG4gIFtrRGlzcGF0Y2hdIChvcHRzLCBoYW5kbGVyKSB7XG4gICAgY29uc3Qgb3JpZ2luID0gb3B0cy5vcmlnaW4gfHwgdGhpc1trVXJsXS5vcmlnaW5cblxuICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzW2tIVFRQQ29ublZlcnNpb25dID09PSAnaDInXG4gICAgICA/IFJlcXVlc3Rba0hUVFAyQnVpbGRSZXF1ZXN0XShvcmlnaW4sIG9wdHMsIGhhbmRsZXIpXG4gICAgICA6IFJlcXVlc3Rba0hUVFAxQnVpbGRSZXF1ZXN0XShvcmlnaW4sIG9wdHMsIGhhbmRsZXIpXG5cbiAgICB0aGlzW2tRdWV1ZV0ucHVzaChyZXF1ZXN0KVxuICAgIGlmICh0aGlzW2tSZXN1bWluZ10pIHtcbiAgICAgIC8vIERvIG5vdGhpbmcuXG4gICAgfSBlbHNlIGlmICh1dGlsLmJvZHlMZW5ndGgocmVxdWVzdC5ib2R5KSA9PSBudWxsICYmIHV0aWwuaXNJdGVyYWJsZShyZXF1ZXN0LmJvZHkpKSB7XG4gICAgICAvLyBXYWl0IGEgdGljayBpbiBjYXNlIHN0cmVhbS9pdGVyYXRvciBpcyBlbmRlZCBpbiB0aGUgc2FtZSB0aWNrLlxuICAgICAgdGhpc1trUmVzdW1pbmddID0gMVxuICAgICAgcHJvY2Vzcy5uZXh0VGljayhyZXN1bWUsIHRoaXMpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VtZSh0aGlzLCB0cnVlKVxuICAgIH1cblxuICAgIGlmICh0aGlzW2tSZXN1bWluZ10gJiYgdGhpc1trTmVlZERyYWluXSAhPT0gMiAmJiB0aGlzW2tCdXN5XSkge1xuICAgICAgdGhpc1trTmVlZERyYWluXSA9IDJcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1trTmVlZERyYWluXSA8IDJcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICAvLyBUT0RPOiBmb3IgSDIgd2UgbmVlZCB0byBncmFjZWZ1bGx5IGZsdXNoIHRoZSByZW1haW5pbmcgZW5xdWV1ZWRcbiAgICAvLyByZXF1ZXN0IGFuZCBjbG9zZSBlYWNoIHN0cmVhbS5cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGlmICghdGhpc1trU2l6ZV0pIHtcbiAgICAgICAgcmVzb2x2ZShudWxsKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpc1trQ2xvc2VkUmVzb2x2ZV0gPSByZXNvbHZlXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIFtrRGVzdHJveV0gKGVycikge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgY29uc3QgcmVxdWVzdHMgPSB0aGlzW2tRdWV1ZV0uc3BsaWNlKHRoaXNba1BlbmRpbmdJZHhdKVxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXF1ZXN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gcmVxdWVzdHNbaV1cbiAgICAgICAgZXJyb3JSZXF1ZXN0KHRoaXMsIHJlcXVlc3QsIGVycilcbiAgICAgIH1cblxuICAgICAgY29uc3QgY2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzW2tDbG9zZWRSZXNvbHZlXSkge1xuICAgICAgICAgIC8vIFRPRE8gKGZpeCk6IFNob3VsZCB3ZSBlcnJvciBoZXJlIHdpdGggQ2xpZW50RGVzdHJveWVkRXJyb3I/XG4gICAgICAgICAgdGhpc1trQ2xvc2VkUmVzb2x2ZV0oKVxuICAgICAgICAgIHRoaXNba0Nsb3NlZFJlc29sdmVdID0gbnVsbFxuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoKVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpc1trSFRUUDJTZXNzaW9uXSAhPSBudWxsKSB7XG4gICAgICAgIHV0aWwuZGVzdHJveSh0aGlzW2tIVFRQMlNlc3Npb25dLCBlcnIpXG4gICAgICAgIHRoaXNba0hUVFAyU2Vzc2lvbl0gPSBudWxsXG4gICAgICAgIHRoaXNba0hUVFAyU2Vzc2lvblN0YXRlXSA9IG51bGxcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzW2tTb2NrZXRdKSB7XG4gICAgICAgIHF1ZXVlTWljcm90YXNrKGNhbGxiYWNrKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdXRpbC5kZXN0cm95KHRoaXNba1NvY2tldF0ub24oJ2Nsb3NlJywgY2FsbGJhY2spLCBlcnIpXG4gICAgICB9XG5cbiAgICAgIHJlc3VtZSh0aGlzKVxuICAgIH0pXG4gIH1cbn1cblxuZnVuY3Rpb24gb25IdHRwMlNlc3Npb25FcnJvciAoZXJyKSB7XG4gIGFzc2VydChlcnIuY29kZSAhPT0gJ0VSUl9UTFNfQ0VSVF9BTFROQU1FX0lOVkFMSUQnKVxuXG4gIHRoaXNba1NvY2tldF1ba0Vycm9yXSA9IGVyclxuXG4gIG9uRXJyb3IodGhpc1trQ2xpZW50XSwgZXJyKVxufVxuXG5mdW5jdGlvbiBvbkh0dHAyRnJhbWVFcnJvciAodHlwZSwgY29kZSwgaWQpIHtcbiAgY29uc3QgZXJyID0gbmV3IEluZm9ybWF0aW9uYWxFcnJvcihgSFRUUC8yOiBcImZyYW1lRXJyb3JcIiByZWNlaXZlZCAtIHR5cGUgJHt0eXBlfSwgY29kZSAke2NvZGV9YClcblxuICBpZiAoaWQgPT09IDApIHtcbiAgICB0aGlzW2tTb2NrZXRdW2tFcnJvcl0gPSBlcnJcbiAgICBvbkVycm9yKHRoaXNba0NsaWVudF0sIGVycilcbiAgfVxufVxuXG5mdW5jdGlvbiBvbkh0dHAyU2Vzc2lvbkVuZCAoKSB7XG4gIHV0aWwuZGVzdHJveSh0aGlzLCBuZXcgU29ja2V0RXJyb3IoJ290aGVyIHNpZGUgY2xvc2VkJykpXG4gIHV0aWwuZGVzdHJveSh0aGlzW2tTb2NrZXRdLCBuZXcgU29ja2V0RXJyb3IoJ290aGVyIHNpZGUgY2xvc2VkJykpXG59XG5cbmZ1bmN0aW9uIG9uSFRUUDJHb0F3YXkgKGNvZGUpIHtcbiAgY29uc3QgY2xpZW50ID0gdGhpc1trQ2xpZW50XVxuICBjb25zdCBlcnIgPSBuZXcgSW5mb3JtYXRpb25hbEVycm9yKGBIVFRQLzI6IFwiR09BV0FZXCIgZnJhbWUgcmVjZWl2ZWQgd2l0aCBjb2RlICR7Y29kZX1gKVxuICBjbGllbnRba1NvY2tldF0gPSBudWxsXG4gIGNsaWVudFtrSFRUUDJTZXNzaW9uXSA9IG51bGxcblxuICBpZiAoY2xpZW50LmRlc3Ryb3llZCkge1xuICAgIGFzc2VydCh0aGlzW2tQZW5kaW5nXSA9PT0gMClcblxuICAgIC8vIEZhaWwgZW50aXJlIHF1ZXVlLlxuICAgIGNvbnN0IHJlcXVlc3RzID0gY2xpZW50W2tRdWV1ZV0uc3BsaWNlKGNsaWVudFtrUnVubmluZ0lkeF0pXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXF1ZXN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IHJlcXVlc3RzW2ldXG4gICAgICBlcnJvclJlcXVlc3QodGhpcywgcmVxdWVzdCwgZXJyKVxuICAgIH1cbiAgfSBlbHNlIGlmIChjbGllbnRba1J1bm5pbmddID4gMCkge1xuICAgIC8vIEZhaWwgaGVhZCBvZiBwaXBlbGluZS5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cbiAgICBjbGllbnRba1F1ZXVlXVtjbGllbnRba1J1bm5pbmdJZHhdKytdID0gbnVsbFxuXG4gICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuICB9XG5cbiAgY2xpZW50W2tQZW5kaW5nSWR4XSA9IGNsaWVudFtrUnVubmluZ0lkeF1cblxuICBhc3NlcnQoY2xpZW50W2tSdW5uaW5nXSA9PT0gMClcblxuICBjbGllbnQuZW1pdCgnZGlzY29ubmVjdCcsXG4gICAgY2xpZW50W2tVcmxdLFxuICAgIFtjbGllbnRdLFxuICAgIGVyclxuICApXG5cbiAgcmVzdW1lKGNsaWVudClcbn1cblxuY29uc3QgY29uc3RhbnRzID0gcmVxdWlyZSgnLi9sbGh0dHAvY29uc3RhbnRzJylcbmNvbnN0IGNyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IgPSByZXF1aXJlKCcuL2ludGVyY2VwdG9yL3JlZGlyZWN0SW50ZXJjZXB0b3InKVxuY29uc3QgRU1QVFlfQlVGID0gQnVmZmVyLmFsbG9jKDApXG5cbmFzeW5jIGZ1bmN0aW9uIGxhenlsbGh0dHAgKCkge1xuICBjb25zdCBsbGh0dHBXYXNtRGF0YSA9IHByb2Nlc3MuZW52LkpFU1RfV09SS0VSX0lEID8gcmVxdWlyZSgnLi9sbGh0dHAvbGxodHRwLXdhc20uanMnKSA6IHVuZGVmaW5lZFxuXG4gIGxldCBtb2RcbiAgdHJ5IHtcbiAgICBtb2QgPSBhd2FpdCBXZWJBc3NlbWJseS5jb21waWxlKEJ1ZmZlci5mcm9tKHJlcXVpcmUoJy4vbGxodHRwL2xsaHR0cF9zaW1kLXdhc20uanMnKSwgJ2Jhc2U2NCcpKVxuICB9IGNhdGNoIChlKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblxuICAgIC8vIFdlIGNvdWxkIGNoZWNrIGlmIHRoZSBlcnJvciB3YXMgY2F1c2VkIGJ5IHRoZSBzaW1kIG9wdGlvbiBub3RcbiAgICAvLyBiZWluZyBlbmFibGVkLCBidXQgdGhlIG9jY3VycmluZyBvZiB0aGlzIG90aGVyIGVycm9yXG4gICAgLy8gKiBodHRwczovL2dpdGh1Yi5jb20vZW1zY3JpcHRlbi1jb3JlL2Vtc2NyaXB0ZW4vaXNzdWVzLzExNDk1XG4gICAgLy8gZ290IG1lIHRvIHJlbW92ZSB0aGF0IGNoZWNrIHRvIGF2b2lkIGJyZWFraW5nIE5vZGUgMTIuXG4gICAgbW9kID0gYXdhaXQgV2ViQXNzZW1ibHkuY29tcGlsZShCdWZmZXIuZnJvbShsbGh0dHBXYXNtRGF0YSB8fCByZXF1aXJlKCcuL2xsaHR0cC9sbGh0dHAtd2FzbS5qcycpLCAnYmFzZTY0JykpXG4gIH1cblxuICByZXR1cm4gYXdhaXQgV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUobW9kLCB7XG4gICAgZW52OiB7XG4gICAgICAvKiBlc2xpbnQtZGlzYWJsZSBjYW1lbGNhc2UgKi9cblxuICAgICAgd2FzbV9vbl91cmw6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIHJldHVybiAwXG4gICAgICB9LFxuICAgICAgd2FzbV9vbl9zdGF0dXM6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChjdXJyZW50UGFyc2VyLnB0ciwgcClcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBhdCAtIGN1cnJlbnRCdWZmZXJQdHIgKyBjdXJyZW50QnVmZmVyUmVmLmJ5dGVPZmZzZXRcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRQYXJzZXIub25TdGF0dXMobmV3IEZhc3RCdWZmZXIoY3VycmVudEJ1ZmZlclJlZi5idWZmZXIsIHN0YXJ0LCBsZW4pKSB8fCAwXG4gICAgICB9LFxuICAgICAgd2FzbV9vbl9tZXNzYWdlX2JlZ2luOiAocCkgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY3VycmVudFBhcnNlci5wdHIsIHApXG4gICAgICAgIHJldHVybiBjdXJyZW50UGFyc2VyLm9uTWVzc2FnZUJlZ2luKCkgfHwgMFxuICAgICAgfSxcbiAgICAgIHdhc21fb25faGVhZGVyX2ZpZWxkOiAocCwgYXQsIGxlbikgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY3VycmVudFBhcnNlci5wdHIsIHApXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gYXQgLSBjdXJyZW50QnVmZmVyUHRyICsgY3VycmVudEJ1ZmZlclJlZi5ieXRlT2Zmc2V0XG4gICAgICAgIHJldHVybiBjdXJyZW50UGFyc2VyLm9uSGVhZGVyRmllbGQobmV3IEZhc3RCdWZmZXIoY3VycmVudEJ1ZmZlclJlZi5idWZmZXIsIHN0YXJ0LCBsZW4pKSB8fCAwXG4gICAgICB9LFxuICAgICAgd2FzbV9vbl9oZWFkZXJfdmFsdWU6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChjdXJyZW50UGFyc2VyLnB0ciwgcClcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBhdCAtIGN1cnJlbnRCdWZmZXJQdHIgKyBjdXJyZW50QnVmZmVyUmVmLmJ5dGVPZmZzZXRcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRQYXJzZXIub25IZWFkZXJWYWx1ZShuZXcgRmFzdEJ1ZmZlcihjdXJyZW50QnVmZmVyUmVmLmJ1ZmZlciwgc3RhcnQsIGxlbikpIHx8IDBcbiAgICAgIH0sXG4gICAgICB3YXNtX29uX2hlYWRlcnNfY29tcGxldGU6IChwLCBzdGF0dXNDb2RlLCB1cGdyYWRlLCBzaG91bGRLZWVwQWxpdmUpID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGN1cnJlbnRQYXJzZXIucHRyLCBwKVxuICAgICAgICByZXR1cm4gY3VycmVudFBhcnNlci5vbkhlYWRlcnNDb21wbGV0ZShzdGF0dXNDb2RlLCBCb29sZWFuKHVwZ3JhZGUpLCBCb29sZWFuKHNob3VsZEtlZXBBbGl2ZSkpIHx8IDBcbiAgICAgIH0sXG4gICAgICB3YXNtX29uX2JvZHk6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChjdXJyZW50UGFyc2VyLnB0ciwgcClcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBhdCAtIGN1cnJlbnRCdWZmZXJQdHIgKyBjdXJyZW50QnVmZmVyUmVmLmJ5dGVPZmZzZXRcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRQYXJzZXIub25Cb2R5KG5ldyBGYXN0QnVmZmVyKGN1cnJlbnRCdWZmZXJSZWYuYnVmZmVyLCBzdGFydCwgbGVuKSkgfHwgMFxuICAgICAgfSxcbiAgICAgIHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZTogKHApID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGN1cnJlbnRQYXJzZXIucHRyLCBwKVxuICAgICAgICByZXR1cm4gY3VycmVudFBhcnNlci5vbk1lc3NhZ2VDb21wbGV0ZSgpIHx8IDBcbiAgICAgIH1cblxuICAgICAgLyogZXNsaW50LWVuYWJsZSBjYW1lbGNhc2UgKi9cbiAgICB9XG4gIH0pXG59XG5cbmxldCBsbGh0dHBJbnN0YW5jZSA9IG51bGxcbmxldCBsbGh0dHBQcm9taXNlID0gbGF6eWxsaHR0cCgpXG5sbGh0dHBQcm9taXNlLmNhdGNoKClcblxubGV0IGN1cnJlbnRQYXJzZXIgPSBudWxsXG5sZXQgY3VycmVudEJ1ZmZlclJlZiA9IG51bGxcbmxldCBjdXJyZW50QnVmZmVyU2l6ZSA9IDBcbmxldCBjdXJyZW50QnVmZmVyUHRyID0gbnVsbFxuXG5jb25zdCBUSU1FT1VUX0hFQURFUlMgPSAxXG5jb25zdCBUSU1FT1VUX0JPRFkgPSAyXG5jb25zdCBUSU1FT1VUX0lETEUgPSAzXG5cbmNsYXNzIFBhcnNlciB7XG4gIGNvbnN0cnVjdG9yIChjbGllbnQsIHNvY2tldCwgeyBleHBvcnRzIH0pIHtcbiAgICBhc3NlcnQoTnVtYmVyLmlzRmluaXRlKGNsaWVudFtrTWF4SGVhZGVyc1NpemVdKSAmJiBjbGllbnRba01heEhlYWRlcnNTaXplXSA+IDApXG5cbiAgICB0aGlzLmxsaHR0cCA9IGV4cG9ydHNcbiAgICB0aGlzLnB0ciA9IHRoaXMubGxodHRwLmxsaHR0cF9hbGxvYyhjb25zdGFudHMuVFlQRS5SRVNQT05TRSlcbiAgICB0aGlzLmNsaWVudCA9IGNsaWVudFxuICAgIHRoaXMuc29ja2V0ID0gc29ja2V0XG4gICAgdGhpcy50aW1lb3V0ID0gbnVsbFxuICAgIHRoaXMudGltZW91dFZhbHVlID0gbnVsbFxuICAgIHRoaXMudGltZW91dFR5cGUgPSBudWxsXG4gICAgdGhpcy5zdGF0dXNDb2RlID0gbnVsbFxuICAgIHRoaXMuc3RhdHVzVGV4dCA9ICcnXG4gICAgdGhpcy51cGdyYWRlID0gZmFsc2VcbiAgICB0aGlzLmhlYWRlcnMgPSBbXVxuICAgIHRoaXMuaGVhZGVyc1NpemUgPSAwXG4gICAgdGhpcy5oZWFkZXJzTWF4U2l6ZSA9IGNsaWVudFtrTWF4SGVhZGVyc1NpemVdXG4gICAgdGhpcy5zaG91bGRLZWVwQWxpdmUgPSBmYWxzZVxuICAgIHRoaXMucGF1c2VkID0gZmFsc2VcbiAgICB0aGlzLnJlc3VtZSA9IHRoaXMucmVzdW1lLmJpbmQodGhpcylcblxuICAgIHRoaXMuYnl0ZXNSZWFkID0gMFxuXG4gICAgdGhpcy5rZWVwQWxpdmUgPSAnJ1xuICAgIHRoaXMuY29udGVudExlbmd0aCA9ICcnXG4gICAgdGhpcy5jb25uZWN0aW9uID0gJydcbiAgICB0aGlzLm1heFJlc3BvbnNlU2l6ZSA9IGNsaWVudFtrTWF4UmVzcG9uc2VTaXplXVxuICB9XG5cbiAgc2V0VGltZW91dCAodmFsdWUsIHR5cGUpIHtcbiAgICB0aGlzLnRpbWVvdXRUeXBlID0gdHlwZVxuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy50aW1lb3V0VmFsdWUpIHtcbiAgICAgIHRpbWVycy5jbGVhclRpbWVvdXQodGhpcy50aW1lb3V0KVxuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHRoaXMudGltZW91dCA9IHRpbWVycy5zZXRUaW1lb3V0KG9uUGFyc2VyVGltZW91dCwgdmFsdWUsIHRoaXMpXG4gICAgICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBvbmx5IGZvciBqZXN0XG4gICAgICAgIGlmICh0aGlzLnRpbWVvdXQudW5yZWYpIHtcbiAgICAgICAgICB0aGlzLnRpbWVvdXQudW5yZWYoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnRpbWVvdXQgPSBudWxsXG4gICAgICB9XG4gICAgICB0aGlzLnRpbWVvdXRWYWx1ZSA9IHZhbHVlXG4gICAgfSBlbHNlIGlmICh0aGlzLnRpbWVvdXQpIHtcbiAgICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBvbmx5IGZvciBqZXN0XG4gICAgICBpZiAodGhpcy50aW1lb3V0LnJlZnJlc2gpIHtcbiAgICAgICAgdGhpcy50aW1lb3V0LnJlZnJlc2goKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJlc3VtZSAoKSB7XG4gICAgaWYgKHRoaXMuc29ja2V0LmRlc3Ryb3llZCB8fCAhdGhpcy5wYXVzZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGFzc2VydCh0aGlzLnB0ciAhPSBudWxsKVxuICAgIGFzc2VydChjdXJyZW50UGFyc2VyID09IG51bGwpXG5cbiAgICB0aGlzLmxsaHR0cC5sbGh0dHBfcmVzdW1lKHRoaXMucHRyKVxuXG4gICAgYXNzZXJ0KHRoaXMudGltZW91dFR5cGUgPT09IFRJTUVPVVRfQk9EWSlcbiAgICBpZiAodGhpcy50aW1lb3V0KSB7XG4gICAgICAvLyBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogb25seSBmb3IgamVzdFxuICAgICAgaWYgKHRoaXMudGltZW91dC5yZWZyZXNoKSB7XG4gICAgICAgIHRoaXMudGltZW91dC5yZWZyZXNoKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnBhdXNlZCA9IGZhbHNlXG4gICAgdGhpcy5leGVjdXRlKHRoaXMuc29ja2V0LnJlYWQoKSB8fCBFTVBUWV9CVUYpIC8vIEZsdXNoIHBhcnNlci5cbiAgICB0aGlzLnJlYWRNb3JlKClcbiAgfVxuXG4gIHJlYWRNb3JlICgpIHtcbiAgICB3aGlsZSAoIXRoaXMucGF1c2VkICYmIHRoaXMucHRyKSB7XG4gICAgICBjb25zdCBjaHVuayA9IHRoaXMuc29ja2V0LnJlYWQoKVxuICAgICAgaWYgKGNodW5rID09PSBudWxsKSB7XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgICB0aGlzLmV4ZWN1dGUoY2h1bmspXG4gICAgfVxuICB9XG5cbiAgZXhlY3V0ZSAoZGF0YSkge1xuICAgIGFzc2VydCh0aGlzLnB0ciAhPSBudWxsKVxuICAgIGFzc2VydChjdXJyZW50UGFyc2VyID09IG51bGwpXG4gICAgYXNzZXJ0KCF0aGlzLnBhdXNlZClcblxuICAgIGNvbnN0IHsgc29ja2V0LCBsbGh0dHAgfSA9IHRoaXNcblxuICAgIGlmIChkYXRhLmxlbmd0aCA+IGN1cnJlbnRCdWZmZXJTaXplKSB7XG4gICAgICBpZiAoY3VycmVudEJ1ZmZlclB0cikge1xuICAgICAgICBsbGh0dHAuZnJlZShjdXJyZW50QnVmZmVyUHRyKVxuICAgICAgfVxuICAgICAgY3VycmVudEJ1ZmZlclNpemUgPSBNYXRoLmNlaWwoZGF0YS5sZW5ndGggLyA0MDk2KSAqIDQwOTZcbiAgICAgIGN1cnJlbnRCdWZmZXJQdHIgPSBsbGh0dHAubWFsbG9jKGN1cnJlbnRCdWZmZXJTaXplKVxuICAgIH1cblxuICAgIG5ldyBVaW50OEFycmF5KGxsaHR0cC5tZW1vcnkuYnVmZmVyLCBjdXJyZW50QnVmZmVyUHRyLCBjdXJyZW50QnVmZmVyU2l6ZSkuc2V0KGRhdGEpXG5cbiAgICAvLyBDYWxsIGBleGVjdXRlYCBvbiB0aGUgd2FzbSBwYXJzZXIuXG4gICAgLy8gV2UgcGFzcyB0aGUgYGxsaHR0cF9wYXJzZXJgIHBvaW50ZXIgYWRkcmVzcywgdGhlIHBvaW50ZXIgYWRkcmVzcyBvZiBidWZmZXIgdmlldyBkYXRhLFxuICAgIC8vIGFuZCBmaW5hbGx5IHRoZSBsZW5ndGggb2YgYnl0ZXMgdG8gcGFyc2UuXG4gICAgLy8gVGhlIHJldHVybiB2YWx1ZSBpcyBhbiBlcnJvciBjb2RlIG9yIGBjb25zdGFudHMuRVJST1IuT0tgLlxuICAgIHRyeSB7XG4gICAgICBsZXQgcmV0XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGN1cnJlbnRCdWZmZXJSZWYgPSBkYXRhXG4gICAgICAgIGN1cnJlbnRQYXJzZXIgPSB0aGlzXG4gICAgICAgIHJldCA9IGxsaHR0cC5sbGh0dHBfZXhlY3V0ZSh0aGlzLnB0ciwgY3VycmVudEJ1ZmZlclB0ciwgZGF0YS5sZW5ndGgpXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWNhdGNoICovXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgICAgICB0aHJvdyBlcnJcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIGN1cnJlbnRQYXJzZXIgPSBudWxsXG4gICAgICAgIGN1cnJlbnRCdWZmZXJSZWYgPSBudWxsXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG9mZnNldCA9IGxsaHR0cC5sbGh0dHBfZ2V0X2Vycm9yX3Bvcyh0aGlzLnB0cikgLSBjdXJyZW50QnVmZmVyUHRyXG5cbiAgICAgIGlmIChyZXQgPT09IGNvbnN0YW50cy5FUlJPUi5QQVVTRURfVVBHUkFERSkge1xuICAgICAgICB0aGlzLm9uVXBncmFkZShkYXRhLnNsaWNlKG9mZnNldCkpXG4gICAgICB9IGVsc2UgaWYgKHJldCA9PT0gY29uc3RhbnRzLkVSUk9SLlBBVVNFRCkge1xuICAgICAgICB0aGlzLnBhdXNlZCA9IHRydWVcbiAgICAgICAgc29ja2V0LnVuc2hpZnQoZGF0YS5zbGljZShvZmZzZXQpKVxuICAgICAgfSBlbHNlIGlmIChyZXQgIT09IGNvbnN0YW50cy5FUlJPUi5PSykge1xuICAgICAgICBjb25zdCBwdHIgPSBsbGh0dHAubGxodHRwX2dldF9lcnJvcl9yZWFzb24odGhpcy5wdHIpXG4gICAgICAgIGxldCBtZXNzYWdlID0gJydcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2U6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgICAgICBpZiAocHRyKSB7XG4gICAgICAgICAgY29uc3QgbGVuID0gbmV3IFVpbnQ4QXJyYXkobGxodHRwLm1lbW9yeS5idWZmZXIsIHB0cikuaW5kZXhPZigwKVxuICAgICAgICAgIG1lc3NhZ2UgPVxuICAgICAgICAgICAgJ1Jlc3BvbnNlIGRvZXMgbm90IG1hdGNoIHRoZSBIVFRQLzEuMSBwcm90b2NvbCAoJyArXG4gICAgICAgICAgICBCdWZmZXIuZnJvbShsbGh0dHAubWVtb3J5LmJ1ZmZlciwgcHRyLCBsZW4pLnRvU3RyaW5nKCkgK1xuICAgICAgICAgICAgJyknXG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEhUVFBQYXJzZXJFcnJvcihtZXNzYWdlLCBjb25zdGFudHMuRVJST1JbcmV0XSwgZGF0YS5zbGljZShvZmZzZXQpKVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgZXJyKVxuICAgIH1cbiAgfVxuXG4gIGRlc3Ryb3kgKCkge1xuICAgIGFzc2VydCh0aGlzLnB0ciAhPSBudWxsKVxuICAgIGFzc2VydChjdXJyZW50UGFyc2VyID09IG51bGwpXG5cbiAgICB0aGlzLmxsaHR0cC5sbGh0dHBfZnJlZSh0aGlzLnB0cilcbiAgICB0aGlzLnB0ciA9IG51bGxcblxuICAgIHRpbWVycy5jbGVhclRpbWVvdXQodGhpcy50aW1lb3V0KVxuICAgIHRoaXMudGltZW91dCA9IG51bGxcbiAgICB0aGlzLnRpbWVvdXRWYWx1ZSA9IG51bGxcbiAgICB0aGlzLnRpbWVvdXRUeXBlID0gbnVsbFxuXG4gICAgdGhpcy5wYXVzZWQgPSBmYWxzZVxuICB9XG5cbiAgb25TdGF0dXMgKGJ1Zikge1xuICAgIHRoaXMuc3RhdHVzVGV4dCA9IGJ1Zi50b1N0cmluZygpXG4gIH1cblxuICBvbk1lc3NhZ2VCZWdpbiAoKSB7XG4gICAgY29uc3QgeyBzb2NrZXQsIGNsaWVudCB9ID0gdGhpc1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm4gLTFcbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cbiAgICBpZiAoIXJlcXVlc3QpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cbiAgfVxuXG4gIG9uSGVhZGVyRmllbGQgKGJ1Zikge1xuICAgIGNvbnN0IGxlbiA9IHRoaXMuaGVhZGVycy5sZW5ndGhcblxuICAgIGlmICgobGVuICYgMSkgPT09IDApIHtcbiAgICAgIHRoaXMuaGVhZGVycy5wdXNoKGJ1ZilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5oZWFkZXJzW2xlbiAtIDFdID0gQnVmZmVyLmNvbmNhdChbdGhpcy5oZWFkZXJzW2xlbiAtIDFdLCBidWZdKVxuICAgIH1cblxuICAgIHRoaXMudHJhY2tIZWFkZXIoYnVmLmxlbmd0aClcbiAgfVxuXG4gIG9uSGVhZGVyVmFsdWUgKGJ1Zikge1xuICAgIGxldCBsZW4gPSB0aGlzLmhlYWRlcnMubGVuZ3RoXG5cbiAgICBpZiAoKGxlbiAmIDEpID09PSAxKSB7XG4gICAgICB0aGlzLmhlYWRlcnMucHVzaChidWYpXG4gICAgICBsZW4gKz0gMVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhlYWRlcnNbbGVuIC0gMV0gPSBCdWZmZXIuY29uY2F0KFt0aGlzLmhlYWRlcnNbbGVuIC0gMV0sIGJ1Zl0pXG4gICAgfVxuXG4gICAgY29uc3Qga2V5ID0gdGhpcy5oZWFkZXJzW2xlbiAtIDJdXG4gICAgaWYgKGtleS5sZW5ndGggPT09IDEwICYmIGtleS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09ICdrZWVwLWFsaXZlJykge1xuICAgICAgdGhpcy5rZWVwQWxpdmUgKz0gYnVmLnRvU3RyaW5nKClcbiAgICB9IGVsc2UgaWYgKGtleS5sZW5ndGggPT09IDEwICYmIGtleS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09ICdjb25uZWN0aW9uJykge1xuICAgICAgdGhpcy5jb25uZWN0aW9uICs9IGJ1Zi50b1N0cmluZygpXG4gICAgfSBlbHNlIGlmIChrZXkubGVuZ3RoID09PSAxNCAmJiBrZXkudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC1sZW5ndGgnKSB7XG4gICAgICB0aGlzLmNvbnRlbnRMZW5ndGggKz0gYnVmLnRvU3RyaW5nKClcbiAgICB9XG5cbiAgICB0aGlzLnRyYWNrSGVhZGVyKGJ1Zi5sZW5ndGgpXG4gIH1cblxuICB0cmFja0hlYWRlciAobGVuKSB7XG4gICAgdGhpcy5oZWFkZXJzU2l6ZSArPSBsZW5cbiAgICBpZiAodGhpcy5oZWFkZXJzU2l6ZSA+PSB0aGlzLmhlYWRlcnNNYXhTaXplKSB7XG4gICAgICB1dGlsLmRlc3Ryb3kodGhpcy5zb2NrZXQsIG5ldyBIZWFkZXJzT3ZlcmZsb3dFcnJvcigpKVxuICAgIH1cbiAgfVxuXG4gIG9uVXBncmFkZSAoaGVhZCkge1xuICAgIGNvbnN0IHsgdXBncmFkZSwgY2xpZW50LCBzb2NrZXQsIGhlYWRlcnMsIHN0YXR1c0NvZGUgfSA9IHRoaXNcblxuICAgIGFzc2VydCh1cGdyYWRlKVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNsaWVudFtrUXVldWVdW2NsaWVudFtrUnVubmluZ0lkeF1dXG4gICAgYXNzZXJ0KHJlcXVlc3QpXG5cbiAgICBhc3NlcnQoIXNvY2tldC5kZXN0cm95ZWQpXG4gICAgYXNzZXJ0KHNvY2tldCA9PT0gY2xpZW50W2tTb2NrZXRdKVxuICAgIGFzc2VydCghdGhpcy5wYXVzZWQpXG4gICAgYXNzZXJ0KHJlcXVlc3QudXBncmFkZSB8fCByZXF1ZXN0Lm1ldGhvZCA9PT0gJ0NPTk5FQ1QnKVxuXG4gICAgdGhpcy5zdGF0dXNDb2RlID0gbnVsbFxuICAgIHRoaXMuc3RhdHVzVGV4dCA9ICcnXG4gICAgdGhpcy5zaG91bGRLZWVwQWxpdmUgPSBudWxsXG5cbiAgICBhc3NlcnQodGhpcy5oZWFkZXJzLmxlbmd0aCAlIDIgPT09IDApXG4gICAgdGhpcy5oZWFkZXJzID0gW11cbiAgICB0aGlzLmhlYWRlcnNTaXplID0gMFxuXG4gICAgc29ja2V0LnVuc2hpZnQoaGVhZClcblxuICAgIHNvY2tldFtrUGFyc2VyXS5kZXN0cm95KClcbiAgICBzb2NrZXRba1BhcnNlcl0gPSBudWxsXG5cbiAgICBzb2NrZXRba0NsaWVudF0gPSBudWxsXG4gICAgc29ja2V0W2tFcnJvcl0gPSBudWxsXG4gICAgc29ja2V0XG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25Tb2NrZXRFcnJvcilcbiAgICAgIC5yZW1vdmVMaXN0ZW5lcigncmVhZGFibGUnLCBvblNvY2tldFJlYWRhYmxlKVxuICAgICAgLnJlbW92ZUxpc3RlbmVyKCdlbmQnLCBvblNvY2tldEVuZClcbiAgICAgIC5yZW1vdmVMaXN0ZW5lcignY2xvc2UnLCBvblNvY2tldENsb3NlKVxuXG4gICAgY2xpZW50W2tTb2NrZXRdID0gbnVsbFxuICAgIGNsaWVudFtrUXVldWVdW2NsaWVudFtrUnVubmluZ0lkeF0rK10gPSBudWxsXG4gICAgY2xpZW50LmVtaXQoJ2Rpc2Nvbm5lY3QnLCBjbGllbnRba1VybF0sIFtjbGllbnRdLCBuZXcgSW5mb3JtYXRpb25hbEVycm9yKCd1cGdyYWRlJykpXG5cbiAgICB0cnkge1xuICAgICAgcmVxdWVzdC5vblVwZ3JhZGUoc3RhdHVzQ29kZSwgaGVhZGVycywgc29ja2V0KVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgZXJyKVxuICAgIH1cblxuICAgIHJlc3VtZShjbGllbnQpXG4gIH1cblxuICBvbkhlYWRlcnNDb21wbGV0ZSAoc3RhdHVzQ29kZSwgdXBncmFkZSwgc2hvdWxkS2VlcEFsaXZlKSB7XG4gICAgY29uc3QgeyBjbGllbnQsIHNvY2tldCwgaGVhZGVycywgc3RhdHVzVGV4dCB9ID0gdGhpc1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm4gLTFcbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBkaWZmaWN1bHQgdG8gbWFrZSBhIHRlc3QgY2FzZSBmb3IgKi9cbiAgICBpZiAoIXJlcXVlc3QpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIGFzc2VydCghdGhpcy51cGdyYWRlKVxuICAgIGFzc2VydCh0aGlzLnN0YXR1c0NvZGUgPCAyMDApXG5cbiAgICBpZiAoc3RhdHVzQ29kZSA9PT0gMTAwKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgU29ja2V0RXJyb3IoJ2JhZCByZXNwb25zZScsIHV0aWwuZ2V0U29ja2V0SW5mbyhzb2NrZXQpKSlcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIC8qIHRoaXMgY2FuIG9ubHkgaGFwcGVuIGlmIHNlcnZlciBpcyBtaXNiZWhhdmluZyAqL1xuICAgIGlmICh1cGdyYWRlICYmICFyZXF1ZXN0LnVwZ3JhZGUpIHtcbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBTb2NrZXRFcnJvcignYmFkIHVwZ3JhZGUnLCB1dGlsLmdldFNvY2tldEluZm8oc29ja2V0KSkpXG4gICAgICByZXR1cm4gLTFcbiAgICB9XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodGhpcy50aW1lb3V0VHlwZSwgVElNRU9VVF9IRUFERVJTKVxuXG4gICAgdGhpcy5zdGF0dXNDb2RlID0gc3RhdHVzQ29kZVxuICAgIHRoaXMuc2hvdWxkS2VlcEFsaXZlID0gKFxuICAgICAgc2hvdWxkS2VlcEFsaXZlIHx8XG4gICAgICAvLyBPdmVycmlkZSBsbGh0dHAgdmFsdWUgd2hpY2ggZG9lcyBub3QgYWxsb3cga2VlcEFsaXZlIGZvciBIRUFELlxuICAgICAgKHJlcXVlc3QubWV0aG9kID09PSAnSEVBRCcgJiYgIXNvY2tldFtrUmVzZXRdICYmIHRoaXMuY29ubmVjdGlvbi50b0xvd2VyQ2FzZSgpID09PSAna2VlcC1hbGl2ZScpXG4gICAgKVxuXG4gICAgaWYgKHRoaXMuc3RhdHVzQ29kZSA+PSAyMDApIHtcbiAgICAgIGNvbnN0IGJvZHlUaW1lb3V0ID0gcmVxdWVzdC5ib2R5VGltZW91dCAhPSBudWxsXG4gICAgICAgID8gcmVxdWVzdC5ib2R5VGltZW91dFxuICAgICAgICA6IGNsaWVudFtrQm9keVRpbWVvdXRdXG4gICAgICB0aGlzLnNldFRpbWVvdXQoYm9keVRpbWVvdXQsIFRJTUVPVVRfQk9EWSlcbiAgICB9IGVsc2UgaWYgKHRoaXMudGltZW91dCkge1xuICAgICAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2U6IG9ubHkgZm9yIGplc3RcbiAgICAgIGlmICh0aGlzLnRpbWVvdXQucmVmcmVzaCkge1xuICAgICAgICB0aGlzLnRpbWVvdXQucmVmcmVzaCgpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3QubWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgIGFzc2VydChjbGllbnRba1J1bm5pbmddID09PSAxKVxuICAgICAgdGhpcy51cGdyYWRlID0gdHJ1ZVxuICAgICAgcmV0dXJuIDJcbiAgICB9XG5cbiAgICBpZiAodXBncmFkZSkge1xuICAgICAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPT09IDEpXG4gICAgICB0aGlzLnVwZ3JhZGUgPSB0cnVlXG4gICAgICByZXR1cm4gMlxuICAgIH1cblxuICAgIGFzc2VydCh0aGlzLmhlYWRlcnMubGVuZ3RoICUgMiA9PT0gMClcbiAgICB0aGlzLmhlYWRlcnMgPSBbXVxuICAgIHRoaXMuaGVhZGVyc1NpemUgPSAwXG5cbiAgICBpZiAodGhpcy5zaG91bGRLZWVwQWxpdmUgJiYgY2xpZW50W2tQaXBlbGluaW5nXSkge1xuICAgICAgY29uc3Qga2VlcEFsaXZlVGltZW91dCA9IHRoaXMua2VlcEFsaXZlID8gdXRpbC5wYXJzZUtlZXBBbGl2ZVRpbWVvdXQodGhpcy5rZWVwQWxpdmUpIDogbnVsbFxuXG4gICAgICBpZiAoa2VlcEFsaXZlVGltZW91dCAhPSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHRpbWVvdXQgPSBNYXRoLm1pbihcbiAgICAgICAgICBrZWVwQWxpdmVUaW1lb3V0IC0gY2xpZW50W2tLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkXSxcbiAgICAgICAgICBjbGllbnRba0tlZXBBbGl2ZU1heFRpbWVvdXRdXG4gICAgICAgIClcbiAgICAgICAgaWYgKHRpbWVvdXQgPD0gMCkge1xuICAgICAgICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNsaWVudFtrS2VlcEFsaXZlVGltZW91dFZhbHVlXSA9IHRpbWVvdXRcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xpZW50W2tLZWVwQWxpdmVUaW1lb3V0VmFsdWVdID0gY2xpZW50W2tLZWVwQWxpdmVEZWZhdWx0VGltZW91dF1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gU3RvcCBtb3JlIHJlcXVlc3RzIGZyb20gYmVpbmcgZGlzcGF0Y2hlZC5cbiAgICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICAgIH1cblxuICAgIGNvbnN0IHBhdXNlID0gcmVxdWVzdC5vbkhlYWRlcnMoc3RhdHVzQ29kZSwgaGVhZGVycywgdGhpcy5yZXN1bWUsIHN0YXR1c1RleHQpID09PSBmYWxzZVxuXG4gICAgaWYgKHJlcXVlc3QuYWJvcnRlZCkge1xuICAgICAgcmV0dXJuIC0xXG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3QubWV0aG9kID09PSAnSEVBRCcpIHtcbiAgICAgIHJldHVybiAxXG4gICAgfVxuXG4gICAgaWYgKHN0YXR1c0NvZGUgPCAyMDApIHtcbiAgICAgIHJldHVybiAxXG4gICAgfVxuXG4gICAgaWYgKHNvY2tldFtrQmxvY2tpbmddKSB7XG4gICAgICBzb2NrZXRba0Jsb2NraW5nXSA9IGZhbHNlXG4gICAgICByZXN1bWUoY2xpZW50KVxuICAgIH1cblxuICAgIHJldHVybiBwYXVzZSA/IGNvbnN0YW50cy5FUlJPUi5QQVVTRUQgOiAwXG4gIH1cblxuICBvbkJvZHkgKGJ1Zikge1xuICAgIGNvbnN0IHsgY2xpZW50LCBzb2NrZXQsIHN0YXR1c0NvZGUsIG1heFJlc3BvbnNlU2l6ZSB9ID0gdGhpc1xuXG4gICAgaWYgKHNvY2tldC5kZXN0cm95ZWQpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3QgPSBjbGllbnRba1F1ZXVlXVtjbGllbnRba1J1bm5pbmdJZHhdXVxuICAgIGFzc2VydChyZXF1ZXN0KVxuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHRoaXMudGltZW91dFR5cGUsIFRJTUVPVVRfQk9EWSlcbiAgICBpZiAodGhpcy50aW1lb3V0KSB7XG4gICAgICAvLyBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogb25seSBmb3IgamVzdFxuICAgICAgaWYgKHRoaXMudGltZW91dC5yZWZyZXNoKSB7XG4gICAgICAgIHRoaXMudGltZW91dC5yZWZyZXNoKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhc3NlcnQoc3RhdHVzQ29kZSA+PSAyMDApXG5cbiAgICBpZiAobWF4UmVzcG9uc2VTaXplID4gLTEgJiYgdGhpcy5ieXRlc1JlYWQgKyBidWYubGVuZ3RoID4gbWF4UmVzcG9uc2VTaXplKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvcigpKVxuICAgICAgcmV0dXJuIC0xXG4gICAgfVxuXG4gICAgdGhpcy5ieXRlc1JlYWQgKz0gYnVmLmxlbmd0aFxuXG4gICAgaWYgKHJlcXVlc3Qub25EYXRhKGJ1ZikgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm4gY29uc3RhbnRzLkVSUk9SLlBBVVNFRFxuICAgIH1cbiAgfVxuXG4gIG9uTWVzc2FnZUNvbXBsZXRlICgpIHtcbiAgICBjb25zdCB7IGNsaWVudCwgc29ja2V0LCBzdGF0dXNDb2RlLCB1cGdyYWRlLCBoZWFkZXJzLCBjb250ZW50TGVuZ3RoLCBieXRlc1JlYWQsIHNob3VsZEtlZXBBbGl2ZSB9ID0gdGhpc1xuXG4gICAgaWYgKHNvY2tldC5kZXN0cm95ZWQgJiYgKCFzdGF0dXNDb2RlIHx8IHNob3VsZEtlZXBBbGl2ZSkpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIGlmICh1cGdyYWRlKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cbiAgICBhc3NlcnQocmVxdWVzdClcblxuICAgIGFzc2VydChzdGF0dXNDb2RlID49IDEwMClcblxuICAgIHRoaXMuc3RhdHVzQ29kZSA9IG51bGxcbiAgICB0aGlzLnN0YXR1c1RleHQgPSAnJ1xuICAgIHRoaXMuYnl0ZXNSZWFkID0gMFxuICAgIHRoaXMuY29udGVudExlbmd0aCA9ICcnXG4gICAgdGhpcy5rZWVwQWxpdmUgPSAnJ1xuICAgIHRoaXMuY29ubmVjdGlvbiA9ICcnXG5cbiAgICBhc3NlcnQodGhpcy5oZWFkZXJzLmxlbmd0aCAlIDIgPT09IDApXG4gICAgdGhpcy5oZWFkZXJzID0gW11cbiAgICB0aGlzLmhlYWRlcnNTaXplID0gMFxuXG4gICAgaWYgKHN0YXR1c0NvZGUgPCAyMDApIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBzaG91bGQgYmUgaGFuZGxlZCBieSBsbGh0dHA/ICovXG4gICAgaWYgKHJlcXVlc3QubWV0aG9kICE9PSAnSEVBRCcgJiYgY29udGVudExlbmd0aCAmJiBieXRlc1JlYWQgIT09IHBhcnNlSW50KGNvbnRlbnRMZW5ndGgsIDEwKSkge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgbmV3IFJlc3BvbnNlQ29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKSlcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIHJlcXVlc3Qub25Db21wbGV0ZShoZWFkZXJzKVxuXG4gICAgY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XSsrXSA9IG51bGxcblxuICAgIGlmIChzb2NrZXRba1dyaXRpbmddKSB7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY2xpZW50W2tSdW5uaW5nXSwgMClcbiAgICAgIC8vIFJlc3BvbnNlIGNvbXBsZXRlZCBiZWZvcmUgcmVxdWVzdC5cbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ3Jlc2V0JykpXG4gICAgICByZXR1cm4gY29uc3RhbnRzLkVSUk9SLlBBVVNFRFxuICAgIH0gZWxzZSBpZiAoIXNob3VsZEtlZXBBbGl2ZSkge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgbmV3IEluZm9ybWF0aW9uYWxFcnJvcigncmVzZXQnKSlcbiAgICAgIHJldHVybiBjb25zdGFudHMuRVJST1IuUEFVU0VEXG4gICAgfSBlbHNlIGlmIChzb2NrZXRba1Jlc2V0XSAmJiBjbGllbnRba1J1bm5pbmddID09PSAwKSB7XG4gICAgICAvLyBEZXN0cm95IHNvY2tldCBvbmNlIGFsbCByZXF1ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAgICAgIC8vIFRoZSByZXF1ZXN0IGF0IHRoZSB0YWlsIG9mIHRoZSBwaXBlbGluZSBpcyB0aGUgb25lXG4gICAgICAvLyB0aGF0IHJlcXVlc3RlZCByZXNldCBhbmQgbm8gZnVydGhlciByZXF1ZXN0cyBzaG91bGRcbiAgICAgIC8vIGhhdmUgYmVlbiBxdWV1ZWQgc2luY2UgdGhlbi5cbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ3Jlc2V0JykpXG4gICAgICByZXR1cm4gY29uc3RhbnRzLkVSUk9SLlBBVVNFRFxuICAgIH0gZWxzZSBpZiAoY2xpZW50W2tQaXBlbGluaW5nXSA9PT0gMSkge1xuICAgICAgLy8gV2UgbXVzdCB3YWl0IGEgZnVsbCBldmVudCBsb29wIGN5Y2xlIHRvIHJldXNlIHRoaXMgc29ja2V0IHRvIG1ha2Ugc3VyZVxuICAgICAgLy8gdGhhdCBub24tc3BlYyBjb21wbGlhbnQgc2VydmVycyBhcmUgbm90IGNsb3NpbmcgdGhlIGNvbm5lY3Rpb24gZXZlbiBpZiB0aGV5XG4gICAgICAvLyBzYWlkIHRoZXkgd29uJ3QuXG4gICAgICBzZXRJbW1lZGlhdGUocmVzdW1lLCBjbGllbnQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VtZShjbGllbnQpXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIG9uUGFyc2VyVGltZW91dCAocGFyc2VyKSB7XG4gIGNvbnN0IHsgc29ja2V0LCB0aW1lb3V0VHlwZSwgY2xpZW50IH0gPSBwYXJzZXJcblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICBpZiAodGltZW91dFR5cGUgPT09IFRJTUVPVVRfSEVBREVSUykge1xuICAgIGlmICghc29ja2V0W2tXcml0aW5nXSB8fCBzb2NrZXQud3JpdGFibGVOZWVkRHJhaW4gfHwgY2xpZW50W2tSdW5uaW5nXSA+IDEpIHtcbiAgICAgIGFzc2VydCghcGFyc2VyLnBhdXNlZCwgJ2Nhbm5vdCBiZSBwYXVzZWQgd2hpbGUgd2FpdGluZyBmb3IgaGVhZGVycycpXG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgSGVhZGVyc1RpbWVvdXRFcnJvcigpKVxuICAgIH1cbiAgfSBlbHNlIGlmICh0aW1lb3V0VHlwZSA9PT0gVElNRU9VVF9CT0RZKSB7XG4gICAgaWYgKCFwYXJzZXIucGF1c2VkKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgQm9keVRpbWVvdXRFcnJvcigpKVxuICAgIH1cbiAgfSBlbHNlIGlmICh0aW1lb3V0VHlwZSA9PT0gVElNRU9VVF9JRExFKSB7XG4gICAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPT09IDAgJiYgY2xpZW50W2tLZWVwQWxpdmVUaW1lb3V0VmFsdWVdKVxuICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ3NvY2tldCBpZGxlIHRpbWVvdXQnKSlcbiAgfVxufVxuXG5mdW5jdGlvbiBvblNvY2tldFJlYWRhYmxlICgpIHtcbiAgY29uc3QgeyBba1BhcnNlcl06IHBhcnNlciB9ID0gdGhpc1xuICBpZiAocGFyc2VyKSB7XG4gICAgcGFyc2VyLnJlYWRNb3JlKClcbiAgfVxufVxuXG5mdW5jdGlvbiBvblNvY2tldEVycm9yIChlcnIpIHtcbiAgY29uc3QgeyBba0NsaWVudF06IGNsaWVudCwgW2tQYXJzZXJdOiBwYXJzZXIgfSA9IHRoaXNcblxuICBhc3NlcnQoZXJyLmNvZGUgIT09ICdFUlJfVExTX0NFUlRfQUxUTkFNRV9JTlZBTElEJylcblxuICBpZiAoY2xpZW50W2tIVFRQQ29ublZlcnNpb25dICE9PSAnaDInKSB7XG4gICAgLy8gT24gTWFjIE9TLCB3ZSBnZXQgYW4gRUNPTk5SRVNFVCBldmVuIGlmIHRoZXJlIGlzIGEgZnVsbCBib2R5IHRvIGJlIGZvcndhcmRlZFxuICAgIC8vIHRvIHRoZSB1c2VyLlxuICAgIGlmIChlcnIuY29kZSA9PT0gJ0VDT05OUkVTRVQnICYmIHBhcnNlci5zdGF0dXNDb2RlICYmICFwYXJzZXIuc2hvdWxkS2VlcEFsaXZlKSB7XG4gICAgICAvLyBXZSB0cmVhdCBhbGwgaW5jb21pbmcgZGF0YSBzbyBmb3IgYXMgYSB2YWxpZCByZXNwb25zZS5cbiAgICAgIHBhcnNlci5vbk1lc3NhZ2VDb21wbGV0ZSgpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH1cblxuICB0aGlzW2tFcnJvcl0gPSBlcnJcblxuICBvbkVycm9yKHRoaXNba0NsaWVudF0sIGVycilcbn1cblxuZnVuY3Rpb24gb25FcnJvciAoY2xpZW50LCBlcnIpIHtcbiAgaWYgKFxuICAgIGNsaWVudFtrUnVubmluZ10gPT09IDAgJiZcbiAgICBlcnIuY29kZSAhPT0gJ1VORF9FUlJfSU5GTycgJiZcbiAgICBlcnIuY29kZSAhPT0gJ1VORF9FUlJfU09DS0VUJ1xuICApIHtcbiAgICAvLyBFcnJvciBpcyBub3QgY2F1c2VkIGJ5IHJ1bm5pbmcgcmVxdWVzdCBhbmQgbm90IGEgcmVjb3ZlcmFibGVcbiAgICAvLyBzb2NrZXQgZXJyb3IuXG5cbiAgICBhc3NlcnQoY2xpZW50W2tQZW5kaW5nSWR4XSA9PT0gY2xpZW50W2tSdW5uaW5nSWR4XSlcblxuICAgIGNvbnN0IHJlcXVlc3RzID0gY2xpZW50W2tRdWV1ZV0uc3BsaWNlKGNsaWVudFtrUnVubmluZ0lkeF0pXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXF1ZXN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IHJlcXVlc3RzW2ldXG4gICAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBlcnIpXG4gICAgfVxuICAgIGFzc2VydChjbGllbnRba1NpemVdID09PSAwKVxuICB9XG59XG5cbmZ1bmN0aW9uIG9uU29ja2V0RW5kICgpIHtcbiAgY29uc3QgeyBba1BhcnNlcl06IHBhcnNlciwgW2tDbGllbnRdOiBjbGllbnQgfSA9IHRoaXNcblxuICBpZiAoY2xpZW50W2tIVFRQQ29ublZlcnNpb25dICE9PSAnaDInKSB7XG4gICAgaWYgKHBhcnNlci5zdGF0dXNDb2RlICYmICFwYXJzZXIuc2hvdWxkS2VlcEFsaXZlKSB7XG4gICAgICAvLyBXZSB0cmVhdCBhbGwgaW5jb21pbmcgZGF0YSBzbyBmYXIgYXMgYSB2YWxpZCByZXNwb25zZS5cbiAgICAgIHBhcnNlci5vbk1lc3NhZ2VDb21wbGV0ZSgpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH1cblxuICB1dGlsLmRlc3Ryb3kodGhpcywgbmV3IFNvY2tldEVycm9yKCdvdGhlciBzaWRlIGNsb3NlZCcsIHV0aWwuZ2V0U29ja2V0SW5mbyh0aGlzKSkpXG59XG5cbmZ1bmN0aW9uIG9uU29ja2V0Q2xvc2UgKCkge1xuICBjb25zdCB7IFtrQ2xpZW50XTogY2xpZW50LCBba1BhcnNlcl06IHBhcnNlciB9ID0gdGhpc1xuXG4gIGlmIChjbGllbnRba0hUVFBDb25uVmVyc2lvbl0gPT09ICdoMScgJiYgcGFyc2VyKSB7XG4gICAgaWYgKCF0aGlzW2tFcnJvcl0gJiYgcGFyc2VyLnN0YXR1c0NvZGUgJiYgIXBhcnNlci5zaG91bGRLZWVwQWxpdmUpIHtcbiAgICAgIC8vIFdlIHRyZWF0IGFsbCBpbmNvbWluZyBkYXRhIHNvIGZhciBhcyBhIHZhbGlkIHJlc3BvbnNlLlxuICAgICAgcGFyc2VyLm9uTWVzc2FnZUNvbXBsZXRlKClcbiAgICB9XG5cbiAgICB0aGlzW2tQYXJzZXJdLmRlc3Ryb3koKVxuICAgIHRoaXNba1BhcnNlcl0gPSBudWxsXG4gIH1cblxuICBjb25zdCBlcnIgPSB0aGlzW2tFcnJvcl0gfHwgbmV3IFNvY2tldEVycm9yKCdjbG9zZWQnLCB1dGlsLmdldFNvY2tldEluZm8odGhpcykpXG5cbiAgY2xpZW50W2tTb2NrZXRdID0gbnVsbFxuXG4gIGlmIChjbGllbnQuZGVzdHJveWVkKSB7XG4gICAgYXNzZXJ0KGNsaWVudFtrUGVuZGluZ10gPT09IDApXG5cbiAgICAvLyBGYWlsIGVudGlyZSBxdWV1ZS5cbiAgICBjb25zdCByZXF1ZXN0cyA9IGNsaWVudFtrUXVldWVdLnNwbGljZShjbGllbnRba1J1bm5pbmdJZHhdKVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVxdWVzdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IHJlcXVlc3QgPSByZXF1ZXN0c1tpXVxuICAgICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuICAgIH1cbiAgfSBlbHNlIGlmIChjbGllbnRba1J1bm5pbmddID4gMCAmJiBlcnIuY29kZSAhPT0gJ1VORF9FUlJfSU5GTycpIHtcbiAgICAvLyBGYWlsIGhlYWQgb2YgcGlwZWxpbmUuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNsaWVudFtrUXVldWVdW2NsaWVudFtrUnVubmluZ0lkeF1dXG4gICAgY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XSsrXSA9IG51bGxcblxuICAgIGVycm9yUmVxdWVzdChjbGllbnQsIHJlcXVlc3QsIGVycilcbiAgfVxuXG4gIGNsaWVudFtrUGVuZGluZ0lkeF0gPSBjbGllbnRba1J1bm5pbmdJZHhdXG5cbiAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPT09IDApXG5cbiAgY2xpZW50LmVtaXQoJ2Rpc2Nvbm5lY3QnLCBjbGllbnRba1VybF0sIFtjbGllbnRdLCBlcnIpXG5cbiAgcmVzdW1lKGNsaWVudClcbn1cblxuYXN5bmMgZnVuY3Rpb24gY29ubmVjdCAoY2xpZW50KSB7XG4gIGFzc2VydCghY2xpZW50W2tDb25uZWN0aW5nXSlcbiAgYXNzZXJ0KCFjbGllbnRba1NvY2tldF0pXG5cbiAgbGV0IHsgaG9zdCwgaG9zdG5hbWUsIHByb3RvY29sLCBwb3J0IH0gPSBjbGllbnRba1VybF1cblxuICAvLyBSZXNvbHZlIGlwdjZcbiAgaWYgKGhvc3RuYW1lWzBdID09PSAnWycpIHtcbiAgICBjb25zdCBpZHggPSBob3N0bmFtZS5pbmRleE9mKCddJylcblxuICAgIGFzc2VydChpZHggIT09IC0xKVxuICAgIGNvbnN0IGlwID0gaG9zdG5hbWUuc3Vic3RyaW5nKDEsIGlkeClcblxuICAgIGFzc2VydChuZXQuaXNJUChpcCkpXG4gICAgaG9zdG5hbWUgPSBpcFxuICB9XG5cbiAgY2xpZW50W2tDb25uZWN0aW5nXSA9IHRydWVcblxuICBpZiAoY2hhbm5lbHMuYmVmb3JlQ29ubmVjdC5oYXNTdWJzY3JpYmVycykge1xuICAgIGNoYW5uZWxzLmJlZm9yZUNvbm5lY3QucHVibGlzaCh7XG4gICAgICBjb25uZWN0UGFyYW1zOiB7XG4gICAgICAgIGhvc3QsXG4gICAgICAgIGhvc3RuYW1lLFxuICAgICAgICBwcm90b2NvbCxcbiAgICAgICAgcG9ydCxcbiAgICAgICAgc2VydmVybmFtZTogY2xpZW50W2tTZXJ2ZXJOYW1lXSxcbiAgICAgICAgbG9jYWxBZGRyZXNzOiBjbGllbnRba0xvY2FsQWRkcmVzc11cbiAgICAgIH0sXG4gICAgICBjb25uZWN0b3I6IGNsaWVudFtrQ29ubmVjdG9yXVxuICAgIH0pXG4gIH1cblxuICB0cnkge1xuICAgIGNvbnN0IHNvY2tldCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNsaWVudFtrQ29ubmVjdG9yXSh7XG4gICAgICAgIGhvc3QsXG4gICAgICAgIGhvc3RuYW1lLFxuICAgICAgICBwcm90b2NvbCxcbiAgICAgICAgcG9ydCxcbiAgICAgICAgc2VydmVybmFtZTogY2xpZW50W2tTZXJ2ZXJOYW1lXSxcbiAgICAgICAgbG9jYWxBZGRyZXNzOiBjbGllbnRba0xvY2FsQWRkcmVzc11cbiAgICAgIH0sIChlcnIsIHNvY2tldCkgPT4ge1xuICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgcmVqZWN0KGVycilcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXNvbHZlKHNvY2tldClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9KVxuXG4gICAgaWYgKGNsaWVudC5kZXN0cm95ZWQpIHtcbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQub24oJ2Vycm9yJywgKCkgPT4ge30pLCBuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKSlcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNsaWVudFtrQ29ubmVjdGluZ10gPSBmYWxzZVxuXG4gICAgYXNzZXJ0KHNvY2tldClcblxuICAgIGNvbnN0IGlzSDIgPSBzb2NrZXQuYWxwblByb3RvY29sID09PSAnaDInXG4gICAgaWYgKGlzSDIpIHtcbiAgICAgIGlmICghaDJFeHBlcmltZW50YWxXYXJuZWQpIHtcbiAgICAgICAgaDJFeHBlcmltZW50YWxXYXJuZWQgPSB0cnVlXG4gICAgICAgIHByb2Nlc3MuZW1pdFdhcm5pbmcoJ0gyIHN1cHBvcnQgaXMgZXhwZXJpbWVudGFsLCBleHBlY3QgdGhlbSB0byBjaGFuZ2UgYXQgYW55IHRpbWUuJywge1xuICAgICAgICAgIGNvZGU6ICdVTkRJQ0ktSDInXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNlc3Npb24gPSBodHRwMi5jb25uZWN0KGNsaWVudFtrVXJsXSwge1xuICAgICAgICBjcmVhdGVDb25uZWN0aW9uOiAoKSA9PiBzb2NrZXQsXG4gICAgICAgIHBlZXJNYXhDb25jdXJyZW50U3RyZWFtczogY2xpZW50W2tIVFRQMlNlc3Npb25TdGF0ZV0ubWF4Q29uY3VycmVudFN0cmVhbXNcbiAgICAgIH0pXG5cbiAgICAgIGNsaWVudFtrSFRUUENvbm5WZXJzaW9uXSA9ICdoMidcbiAgICAgIHNlc3Npb25ba0NsaWVudF0gPSBjbGllbnRcbiAgICAgIHNlc3Npb25ba1NvY2tldF0gPSBzb2NrZXRcbiAgICAgIHNlc3Npb24ub24oJ2Vycm9yJywgb25IdHRwMlNlc3Npb25FcnJvcilcbiAgICAgIHNlc3Npb24ub24oJ2ZyYW1lRXJyb3InLCBvbkh0dHAyRnJhbWVFcnJvcilcbiAgICAgIHNlc3Npb24ub24oJ2VuZCcsIG9uSHR0cDJTZXNzaW9uRW5kKVxuICAgICAgc2Vzc2lvbi5vbignZ29hd2F5Jywgb25IVFRQMkdvQXdheSlcbiAgICAgIHNlc3Npb24ub24oJ2Nsb3NlJywgb25Tb2NrZXRDbG9zZSlcbiAgICAgIHNlc3Npb24udW5yZWYoKVxuXG4gICAgICBjbGllbnRba0hUVFAyU2Vzc2lvbl0gPSBzZXNzaW9uXG4gICAgICBzb2NrZXRba0hUVFAyU2Vzc2lvbl0gPSBzZXNzaW9uXG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghbGxodHRwSW5zdGFuY2UpIHtcbiAgICAgICAgbGxodHRwSW5zdGFuY2UgPSBhd2FpdCBsbGh0dHBQcm9taXNlXG4gICAgICAgIGxsaHR0cFByb21pc2UgPSBudWxsXG4gICAgICB9XG5cbiAgICAgIHNvY2tldFtrTm9SZWZdID0gZmFsc2VcbiAgICAgIHNvY2tldFtrV3JpdGluZ10gPSBmYWxzZVxuICAgICAgc29ja2V0W2tSZXNldF0gPSBmYWxzZVxuICAgICAgc29ja2V0W2tCbG9ja2luZ10gPSBmYWxzZVxuICAgICAgc29ja2V0W2tQYXJzZXJdID0gbmV3IFBhcnNlcihjbGllbnQsIHNvY2tldCwgbGxodHRwSW5zdGFuY2UpXG4gICAgfVxuXG4gICAgc29ja2V0W2tDb3VudGVyXSA9IDBcbiAgICBzb2NrZXRba01heFJlcXVlc3RzXSA9IGNsaWVudFtrTWF4UmVxdWVzdHNdXG4gICAgc29ja2V0W2tDbGllbnRdID0gY2xpZW50XG4gICAgc29ja2V0W2tFcnJvcl0gPSBudWxsXG5cbiAgICBzb2NrZXRcbiAgICAgIC5vbignZXJyb3InLCBvblNvY2tldEVycm9yKVxuICAgICAgLm9uKCdyZWFkYWJsZScsIG9uU29ja2V0UmVhZGFibGUpXG4gICAgICAub24oJ2VuZCcsIG9uU29ja2V0RW5kKVxuICAgICAgLm9uKCdjbG9zZScsIG9uU29ja2V0Q2xvc2UpXG5cbiAgICBjbGllbnRba1NvY2tldF0gPSBzb2NrZXRcblxuICAgIGlmIChjaGFubmVscy5jb25uZWN0ZWQuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICAgIGNoYW5uZWxzLmNvbm5lY3RlZC5wdWJsaXNoKHtcbiAgICAgICAgY29ubmVjdFBhcmFtczoge1xuICAgICAgICAgIGhvc3QsXG4gICAgICAgICAgaG9zdG5hbWUsXG4gICAgICAgICAgcHJvdG9jb2wsXG4gICAgICAgICAgcG9ydCxcbiAgICAgICAgICBzZXJ2ZXJuYW1lOiBjbGllbnRba1NlcnZlck5hbWVdLFxuICAgICAgICAgIGxvY2FsQWRkcmVzczogY2xpZW50W2tMb2NhbEFkZHJlc3NdXG4gICAgICAgIH0sXG4gICAgICAgIGNvbm5lY3RvcjogY2xpZW50W2tDb25uZWN0b3JdLFxuICAgICAgICBzb2NrZXRcbiAgICAgIH0pXG4gICAgfVxuICAgIGNsaWVudC5lbWl0KCdjb25uZWN0JywgY2xpZW50W2tVcmxdLCBbY2xpZW50XSlcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgaWYgKGNsaWVudC5kZXN0cm95ZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNsaWVudFtrQ29ubmVjdGluZ10gPSBmYWxzZVxuXG4gICAgaWYgKGNoYW5uZWxzLmNvbm5lY3RFcnJvci5oYXNTdWJzY3JpYmVycykge1xuICAgICAgY2hhbm5lbHMuY29ubmVjdEVycm9yLnB1Ymxpc2goe1xuICAgICAgICBjb25uZWN0UGFyYW1zOiB7XG4gICAgICAgICAgaG9zdCxcbiAgICAgICAgICBob3N0bmFtZSxcbiAgICAgICAgICBwcm90b2NvbCxcbiAgICAgICAgICBwb3J0LFxuICAgICAgICAgIHNlcnZlcm5hbWU6IGNsaWVudFtrU2VydmVyTmFtZV0sXG4gICAgICAgICAgbG9jYWxBZGRyZXNzOiBjbGllbnRba0xvY2FsQWRkcmVzc11cbiAgICAgICAgfSxcbiAgICAgICAgY29ubmVjdG9yOiBjbGllbnRba0Nvbm5lY3Rvcl0sXG4gICAgICAgIGVycm9yOiBlcnJcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKGVyci5jb2RlID09PSAnRVJSX1RMU19DRVJUX0FMVE5BTUVfSU5WQUxJRCcpIHtcbiAgICAgIGFzc2VydChjbGllbnRba1J1bm5pbmddID09PSAwKVxuICAgICAgd2hpbGUgKGNsaWVudFtrUGVuZGluZ10gPiAwICYmIGNsaWVudFtrUXVldWVdW2NsaWVudFtrUGVuZGluZ0lkeF1dLnNlcnZlcm5hbWUgPT09IGNsaWVudFtrU2VydmVyTmFtZV0pIHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9IGNsaWVudFtrUXVldWVdW2NsaWVudFtrUGVuZGluZ0lkeF0rK11cbiAgICAgICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBvbkVycm9yKGNsaWVudCwgZXJyKVxuICAgIH1cblxuICAgIGNsaWVudC5lbWl0KCdjb25uZWN0aW9uRXJyb3InLCBjbGllbnRba1VybF0sIFtjbGllbnRdLCBlcnIpXG4gIH1cblxuICByZXN1bWUoY2xpZW50KVxufVxuXG5mdW5jdGlvbiBlbWl0RHJhaW4gKGNsaWVudCkge1xuICBjbGllbnRba05lZWREcmFpbl0gPSAwXG4gIGNsaWVudC5lbWl0KCdkcmFpbicsIGNsaWVudFtrVXJsXSwgW2NsaWVudF0pXG59XG5cbmZ1bmN0aW9uIHJlc3VtZSAoY2xpZW50LCBzeW5jKSB7XG4gIGlmIChjbGllbnRba1Jlc3VtaW5nXSA9PT0gMikge1xuICAgIHJldHVyblxuICB9XG5cbiAgY2xpZW50W2tSZXN1bWluZ10gPSAyXG5cbiAgX3Jlc3VtZShjbGllbnQsIHN5bmMpXG4gIGNsaWVudFtrUmVzdW1pbmddID0gMFxuXG4gIGlmIChjbGllbnRba1J1bm5pbmdJZHhdID4gMjU2KSB7XG4gICAgY2xpZW50W2tRdWV1ZV0uc3BsaWNlKDAsIGNsaWVudFtrUnVubmluZ0lkeF0pXG4gICAgY2xpZW50W2tQZW5kaW5nSWR4XSAtPSBjbGllbnRba1J1bm5pbmdJZHhdXG4gICAgY2xpZW50W2tSdW5uaW5nSWR4XSA9IDBcbiAgfVxufVxuXG5mdW5jdGlvbiBfcmVzdW1lIChjbGllbnQsIHN5bmMpIHtcbiAgd2hpbGUgKHRydWUpIHtcbiAgICBpZiAoY2xpZW50LmRlc3Ryb3llZCkge1xuICAgICAgYXNzZXJ0KGNsaWVudFtrUGVuZGluZ10gPT09IDApXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoY2xpZW50W2tDbG9zZWRSZXNvbHZlXSAmJiAhY2xpZW50W2tTaXplXSkge1xuICAgICAgY2xpZW50W2tDbG9zZWRSZXNvbHZlXSgpXG4gICAgICBjbGllbnRba0Nsb3NlZFJlc29sdmVdID0gbnVsbFxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3Qgc29ja2V0ID0gY2xpZW50W2tTb2NrZXRdXG5cbiAgICBpZiAoc29ja2V0ICYmICFzb2NrZXQuZGVzdHJveWVkICYmIHNvY2tldC5hbHBuUHJvdG9jb2wgIT09ICdoMicpIHtcbiAgICAgIGlmIChjbGllbnRba1NpemVdID09PSAwKSB7XG4gICAgICAgIGlmICghc29ja2V0W2tOb1JlZl0gJiYgc29ja2V0LnVucmVmKSB7XG4gICAgICAgICAgc29ja2V0LnVucmVmKClcbiAgICAgICAgICBzb2NrZXRba05vUmVmXSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChzb2NrZXRba05vUmVmXSAmJiBzb2NrZXQucmVmKSB7XG4gICAgICAgIHNvY2tldC5yZWYoKVxuICAgICAgICBzb2NrZXRba05vUmVmXSA9IGZhbHNlXG4gICAgICB9XG5cbiAgICAgIGlmIChjbGllbnRba1NpemVdID09PSAwKSB7XG4gICAgICAgIGlmIChzb2NrZXRba1BhcnNlcl0udGltZW91dFR5cGUgIT09IFRJTUVPVVRfSURMRSkge1xuICAgICAgICAgIHNvY2tldFtrUGFyc2VyXS5zZXRUaW1lb3V0KGNsaWVudFtrS2VlcEFsaXZlVGltZW91dFZhbHVlXSwgVElNRU9VVF9JRExFKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwICYmIHNvY2tldFtrUGFyc2VyXS5zdGF0dXNDb2RlIDwgMjAwKSB7XG4gICAgICAgIGlmIChzb2NrZXRba1BhcnNlcl0udGltZW91dFR5cGUgIT09IFRJTUVPVVRfSEVBREVSUykge1xuICAgICAgICAgIGNvbnN0IHJlcXVlc3QgPSBjbGllbnRba1F1ZXVlXVtjbGllbnRba1J1bm5pbmdJZHhdXVxuICAgICAgICAgIGNvbnN0IGhlYWRlcnNUaW1lb3V0ID0gcmVxdWVzdC5oZWFkZXJzVGltZW91dCAhPSBudWxsXG4gICAgICAgICAgICA/IHJlcXVlc3QuaGVhZGVyc1RpbWVvdXRcbiAgICAgICAgICAgIDogY2xpZW50W2tIZWFkZXJzVGltZW91dF1cbiAgICAgICAgICBzb2NrZXRba1BhcnNlcl0uc2V0VGltZW91dChoZWFkZXJzVGltZW91dCwgVElNRU9VVF9IRUFERVJTKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrQnVzeV0pIHtcbiAgICAgIGNsaWVudFtrTmVlZERyYWluXSA9IDJcbiAgICB9IGVsc2UgaWYgKGNsaWVudFtrTmVlZERyYWluXSA9PT0gMikge1xuICAgICAgaWYgKHN5bmMpIHtcbiAgICAgICAgY2xpZW50W2tOZWVkRHJhaW5dID0gMVxuICAgICAgICBwcm9jZXNzLm5leHRUaWNrKGVtaXREcmFpbiwgY2xpZW50KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZW1pdERyYWluKGNsaWVudClcbiAgICAgIH1cbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrUGVuZGluZ10gPT09IDApIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChjbGllbnRba1J1bm5pbmddID49IChjbGllbnRba1BpcGVsaW5pbmddIHx8IDEpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tQZW5kaW5nSWR4XV1cblxuICAgIGlmIChjbGllbnRba1VybF0ucHJvdG9jb2wgPT09ICdodHRwczonICYmIGNsaWVudFtrU2VydmVyTmFtZV0gIT09IHJlcXVlc3Quc2VydmVybmFtZSkge1xuICAgICAgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjbGllbnRba1NlcnZlck5hbWVdID0gcmVxdWVzdC5zZXJ2ZXJuYW1lXG5cbiAgICAgIGlmIChzb2NrZXQgJiYgc29ja2V0LnNlcnZlcm5hbWUgIT09IHJlcXVlc3Quc2VydmVybmFtZSkge1xuICAgICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgSW5mb3JtYXRpb25hbEVycm9yKCdzZXJ2ZXJuYW1lIGNoYW5nZWQnKSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrQ29ubmVjdGluZ10pIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghc29ja2V0ICYmICFjbGllbnRba0hUVFAyU2Vzc2lvbl0pIHtcbiAgICAgIGNvbm5lY3QoY2xpZW50KVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKHNvY2tldC5kZXN0cm95ZWQgfHwgc29ja2V0W2tXcml0aW5nXSB8fCBzb2NrZXRba1Jlc2V0XSB8fCBzb2NrZXRba0Jsb2NraW5nXSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwICYmICFyZXF1ZXN0LmlkZW1wb3RlbnQpIHtcbiAgICAgIC8vIE5vbi1pZGVtcG90ZW50IHJlcXVlc3QgY2Fubm90IGJlIHJldHJpZWQuXG4gICAgICAvLyBFbnN1cmUgdGhhdCBubyBvdGhlciByZXF1ZXN0cyBhcmUgaW5mbGlnaHQgYW5kXG4gICAgICAvLyBjb3VsZCBjYXVzZSBmYWlsdXJlLlxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwICYmIChyZXF1ZXN0LnVwZ3JhZGUgfHwgcmVxdWVzdC5tZXRob2QgPT09ICdDT05ORUNUJykpIHtcbiAgICAgIC8vIERvbid0IGRpc3BhdGNoIGFuIHVwZ3JhZGUgdW50aWwgYWxsIHByZWNlZGluZyByZXF1ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAgICAgIC8vIEEgbWlzYmVoYXZpbmcgc2VydmVyIG1pZ2h0IHVwZ3JhZGUgdGhlIGNvbm5lY3Rpb24gYmVmb3JlIGFsbCBwaXBlbGluZWRcbiAgICAgIC8vIHJlcXVlc3QgaGFzIGNvbXBsZXRlZC5cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChjbGllbnRba1J1bm5pbmddID4gMCAmJiB1dGlsLmJvZHlMZW5ndGgocmVxdWVzdC5ib2R5KSAhPT0gMCAmJlxuICAgICAgKHV0aWwuaXNTdHJlYW0ocmVxdWVzdC5ib2R5KSB8fCB1dGlsLmlzQXN5bmNJdGVyYWJsZShyZXF1ZXN0LmJvZHkpKSkge1xuICAgICAgLy8gUmVxdWVzdCB3aXRoIHN0cmVhbSBvciBpdGVyYXRvciBib2R5IGNhbiBlcnJvciB3aGlsZSBvdGhlciByZXF1ZXN0c1xuICAgICAgLy8gYXJlIGluZmxpZ2h0IGFuZCBpbmRpcmVjdGx5IGVycm9yIHRob3NlIGFzIHdlbGwuXG4gICAgICAvLyBFbnN1cmUgdGhpcyBkb2Vzbid0IGhhcHBlbiBieSB3YWl0aW5nIGZvciBpbmZsaWdodFxuICAgICAgLy8gdG8gY29tcGxldGUgYmVmb3JlIGRpc3BhdGNoaW5nLlxuXG4gICAgICAvLyBSZXF1ZXN0IHdpdGggc3RyZWFtIG9yIGl0ZXJhdG9yIGJvZHkgY2Fubm90IGJlIHJldHJpZWQuXG4gICAgICAvLyBFbnN1cmUgdGhhdCBubyBvdGhlciByZXF1ZXN0cyBhcmUgaW5mbGlnaHQgYW5kXG4gICAgICAvLyBjb3VsZCBjYXVzZSBmYWlsdXJlLlxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKCFyZXF1ZXN0LmFib3J0ZWQgJiYgd3JpdGUoY2xpZW50LCByZXF1ZXN0KSkge1xuICAgICAgY2xpZW50W2tQZW5kaW5nSWR4XSsrXG4gICAgfSBlbHNlIHtcbiAgICAgIGNsaWVudFtrUXVldWVdLnNwbGljZShjbGllbnRba1BlbmRpbmdJZHhdLCAxKVxuICAgIH1cbiAgfVxufVxuXG4vLyBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNzIzMCNzZWN0aW9uLTMuMy4yXG5mdW5jdGlvbiBzaG91bGRTZW5kQ29udGVudExlbmd0aCAobWV0aG9kKSB7XG4gIHJldHVybiBtZXRob2QgIT09ICdHRVQnICYmIG1ldGhvZCAhPT0gJ0hFQUQnICYmIG1ldGhvZCAhPT0gJ09QVElPTlMnICYmIG1ldGhvZCAhPT0gJ1RSQUNFJyAmJiBtZXRob2QgIT09ICdDT05ORUNUJ1xufVxuXG5mdW5jdGlvbiB3cml0ZSAoY2xpZW50LCByZXF1ZXN0KSB7XG4gIGlmIChjbGllbnRba0hUVFBDb25uVmVyc2lvbl0gPT09ICdoMicpIHtcbiAgICB3cml0ZUgyKGNsaWVudCwgY2xpZW50W2tIVFRQMlNlc3Npb25dLCByZXF1ZXN0KVxuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgeyBib2R5LCBtZXRob2QsIHBhdGgsIGhvc3QsIHVwZ3JhZGUsIGhlYWRlcnMsIGJsb2NraW5nLCByZXNldCB9ID0gcmVxdWVzdFxuXG4gIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNC4zLjFcbiAgLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi00LjMuMlxuICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMSNzZWN0aW9uLTQuMy41XG5cbiAgLy8gU2VuZGluZyBhIHBheWxvYWQgYm9keSBvbiBhIHJlcXVlc3QgdGhhdCBkb2VzIG5vdFxuICAvLyBleHBlY3QgaXQgY2FuIGNhdXNlIHVuZGVmaW5lZCBiZWhhdmlvciBvbiBzb21lXG4gIC8vIHNlcnZlcnMgYW5kIGNvcnJ1cHQgY29ubmVjdGlvbiBzdGF0ZS4gRG8gbm90XG4gIC8vIHJlLXVzZSB0aGUgY29ubmVjdGlvbiBmb3IgZnVydGhlciByZXF1ZXN0cy5cblxuICBjb25zdCBleHBlY3RzUGF5bG9hZCA9IChcbiAgICBtZXRob2QgPT09ICdQVVQnIHx8XG4gICAgbWV0aG9kID09PSAnUE9TVCcgfHxcbiAgICBtZXRob2QgPT09ICdQQVRDSCdcbiAgKVxuXG4gIGlmIChib2R5ICYmIHR5cGVvZiBib2R5LnJlYWQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAvLyBUcnkgdG8gcmVhZCBFT0YgaW4gb3JkZXIgdG8gZ2V0IGxlbmd0aC5cbiAgICBib2R5LnJlYWQoMClcbiAgfVxuXG4gIGNvbnN0IGJvZHlMZW5ndGggPSB1dGlsLmJvZHlMZW5ndGgoYm9keSlcblxuICBsZXQgY29udGVudExlbmd0aCA9IGJvZHlMZW5ndGhcblxuICBpZiAoY29udGVudExlbmd0aCA9PT0gbnVsbCkge1xuICAgIGNvbnRlbnRMZW5ndGggPSByZXF1ZXN0LmNvbnRlbnRMZW5ndGhcbiAgfVxuXG4gIGlmIChjb250ZW50TGVuZ3RoID09PSAwICYmICFleHBlY3RzUGF5bG9hZCkge1xuICAgIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMwI3NlY3Rpb24tMy4zLjJcbiAgICAvLyBBIHVzZXIgYWdlbnQgU0hPVUxEIE5PVCBzZW5kIGEgQ29udGVudC1MZW5ndGggaGVhZGVyIGZpZWxkIHdoZW5cbiAgICAvLyB0aGUgcmVxdWVzdCBtZXNzYWdlIGRvZXMgbm90IGNvbnRhaW4gYSBwYXlsb2FkIGJvZHkgYW5kIHRoZSBtZXRob2RcbiAgICAvLyBzZW1hbnRpY3MgZG8gbm90IGFudGljaXBhdGUgc3VjaCBhIGJvZHkuXG5cbiAgICBjb250ZW50TGVuZ3RoID0gbnVsbFxuICB9XG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvaXNzdWVzLzIwNDZcbiAgLy8gQSB1c2VyIGFnZW50IG1heSBzZW5kIGEgQ29udGVudC1MZW5ndGggaGVhZGVyIHdpdGggMCB2YWx1ZSwgdGhpcyBzaG91bGQgYmUgYWxsb3dlZC5cbiAgaWYgKHNob3VsZFNlbmRDb250ZW50TGVuZ3RoKG1ldGhvZCkgJiYgY29udGVudExlbmd0aCA+IDAgJiYgcmVxdWVzdC5jb250ZW50TGVuZ3RoICE9PSBudWxsICYmIHJlcXVlc3QuY29udGVudExlbmd0aCAhPT0gY29udGVudExlbmd0aCkge1xuICAgIGlmIChjbGllbnRba1N0cmljdENvbnRlbnRMZW5ndGhdKSB7XG4gICAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBuZXcgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yKCkpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBwcm9jZXNzLmVtaXRXYXJuaW5nKG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKSlcbiAgfVxuXG4gIGNvbnN0IHNvY2tldCA9IGNsaWVudFtrU29ja2V0XVxuXG4gIHRyeSB7XG4gICAgcmVxdWVzdC5vbkNvbm5lY3QoKGVycikgPT4ge1xuICAgICAgaWYgKHJlcXVlc3QuYWJvcnRlZCB8fCByZXF1ZXN0LmNvbXBsZXRlZCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyIHx8IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKCkpXG5cbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ2Fib3J0ZWQnKSlcbiAgICB9KVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBlcnIpXG4gIH1cblxuICBpZiAocmVxdWVzdC5hYm9ydGVkKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBpZiAobWV0aG9kID09PSAnSEVBRCcpIHtcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vbWNvbGxpbmEvdW5kaWNpL2lzc3Vlcy8yNThcbiAgICAvLyBDbG9zZSBhZnRlciBhIEhFQUQgcmVxdWVzdCB0byBpbnRlcm9wIHdpdGggbWlzYmVoYXZpbmcgc2VydmVyc1xuICAgIC8vIHRoYXQgbWF5IHNlbmQgYSBib2R5IGluIHRoZSByZXNwb25zZS5cblxuICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICB9XG5cbiAgaWYgKHVwZ3JhZGUgfHwgbWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAvLyBPbiBDT05ORUNUIG9yIHVwZ3JhZGUsIGJsb2NrIHBpcGVsaW5lIGZyb20gZGlzcGF0Y2hpbmcgZnVydGhlclxuICAgIC8vIHJlcXVlc3RzIG9uIHRoaXMgY29ubmVjdGlvbi5cblxuICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICB9XG5cbiAgaWYgKHJlc2V0ICE9IG51bGwpIHtcbiAgICBzb2NrZXRba1Jlc2V0XSA9IHJlc2V0XG4gIH1cblxuICBpZiAoY2xpZW50W2tNYXhSZXF1ZXN0c10gJiYgc29ja2V0W2tDb3VudGVyXSsrID49IGNsaWVudFtrTWF4UmVxdWVzdHNdKSB7XG4gICAgc29ja2V0W2tSZXNldF0gPSB0cnVlXG4gIH1cblxuICBpZiAoYmxvY2tpbmcpIHtcbiAgICBzb2NrZXRba0Jsb2NraW5nXSA9IHRydWVcbiAgfVxuXG4gIGxldCBoZWFkZXIgPSBgJHttZXRob2R9ICR7cGF0aH0gSFRUUC8xLjFcXHJcXG5gXG5cbiAgaWYgKHR5cGVvZiBob3N0ID09PSAnc3RyaW5nJykge1xuICAgIGhlYWRlciArPSBgaG9zdDogJHtob3N0fVxcclxcbmBcbiAgfSBlbHNlIHtcbiAgICBoZWFkZXIgKz0gY2xpZW50W2tIb3N0SGVhZGVyXVxuICB9XG5cbiAgaWYgKHVwZ3JhZGUpIHtcbiAgICBoZWFkZXIgKz0gYGNvbm5lY3Rpb246IHVwZ3JhZGVcXHJcXG51cGdyYWRlOiAke3VwZ3JhZGV9XFxyXFxuYFxuICB9IGVsc2UgaWYgKGNsaWVudFtrUGlwZWxpbmluZ10gJiYgIXNvY2tldFtrUmVzZXRdKSB7XG4gICAgaGVhZGVyICs9ICdjb25uZWN0aW9uOiBrZWVwLWFsaXZlXFxyXFxuJ1xuICB9IGVsc2Uge1xuICAgIGhlYWRlciArPSAnY29ubmVjdGlvbjogY2xvc2VcXHJcXG4nXG4gIH1cblxuICBpZiAoaGVhZGVycykge1xuICAgIGhlYWRlciArPSBoZWFkZXJzXG4gIH1cblxuICBpZiAoY2hhbm5lbHMuc2VuZEhlYWRlcnMuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICBjaGFubmVscy5zZW5kSGVhZGVycy5wdWJsaXNoKHsgcmVxdWVzdCwgaGVhZGVyczogaGVhZGVyLCBzb2NrZXQgfSlcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBhc3NlcnRpb24gKi9cbiAgaWYgKCFib2R5IHx8IGJvZHlMZW5ndGggPT09IDApIHtcbiAgICBpZiAoY29udGVudExlbmd0aCA9PT0gMCkge1xuICAgICAgc29ja2V0LndyaXRlKGAke2hlYWRlcn1jb250ZW50LWxlbmd0aDogMFxcclxcblxcclxcbmAsICdsYXRpbjEnKVxuICAgIH0gZWxzZSB7XG4gICAgICBhc3NlcnQoY29udGVudExlbmd0aCA9PT0gbnVsbCwgJ25vIGJvZHkgbXVzdCBub3QgaGF2ZSBjb250ZW50IGxlbmd0aCcpXG4gICAgICBzb2NrZXQud3JpdGUoYCR7aGVhZGVyfVxcclxcbmAsICdsYXRpbjEnKVxuICAgIH1cbiAgICByZXF1ZXN0Lm9uUmVxdWVzdFNlbnQoKVxuICB9IGVsc2UgaWYgKHV0aWwuaXNCdWZmZXIoYm9keSkpIHtcbiAgICBhc3NlcnQoY29udGVudExlbmd0aCA9PT0gYm9keS5ieXRlTGVuZ3RoLCAnYnVmZmVyIGJvZHkgbXVzdCBoYXZlIGNvbnRlbnQgbGVuZ3RoJylcblxuICAgIHNvY2tldC5jb3JrKClcbiAgICBzb2NrZXQud3JpdGUoYCR7aGVhZGVyfWNvbnRlbnQtbGVuZ3RoOiAke2NvbnRlbnRMZW5ndGh9XFxyXFxuXFxyXFxuYCwgJ2xhdGluMScpXG4gICAgc29ja2V0LndyaXRlKGJvZHkpXG4gICAgc29ja2V0LnVuY29yaygpXG4gICAgcmVxdWVzdC5vbkJvZHlTZW50KGJvZHkpXG4gICAgcmVxdWVzdC5vblJlcXVlc3RTZW50KClcbiAgICBpZiAoIWV4cGVjdHNQYXlsb2FkKSB7XG4gICAgICBzb2NrZXRba1Jlc2V0XSA9IHRydWVcbiAgICB9XG4gIH0gZWxzZSBpZiAodXRpbC5pc0Jsb2JMaWtlKGJvZHkpKSB7XG4gICAgaWYgKHR5cGVvZiBib2R5LnN0cmVhbSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgd3JpdGVJdGVyYWJsZSh7IGJvZHk6IGJvZHkuc3RyZWFtKCksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHdyaXRlQmxvYih7IGJvZHksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gICAgfVxuICB9IGVsc2UgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICB3cml0ZVN0cmVhbSh7IGJvZHksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gIH0gZWxzZSBpZiAodXRpbC5pc0l0ZXJhYmxlKGJvZHkpKSB7XG4gICAgd3JpdGVJdGVyYWJsZSh7IGJvZHksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gIH0gZWxzZSB7XG4gICAgYXNzZXJ0KGZhbHNlKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZnVuY3Rpb24gd3JpdGVIMiAoY2xpZW50LCBzZXNzaW9uLCByZXF1ZXN0KSB7XG4gIGNvbnN0IHsgYm9keSwgbWV0aG9kLCBwYXRoLCBob3N0LCB1cGdyYWRlLCBleHBlY3RDb250aW51ZSwgc2lnbmFsLCBoZWFkZXJzOiByZXFIZWFkZXJzIH0gPSByZXF1ZXN0XG5cbiAgbGV0IGhlYWRlcnNcbiAgaWYgKHR5cGVvZiByZXFIZWFkZXJzID09PSAnc3RyaW5nJykgaGVhZGVycyA9IFJlcXVlc3Rba0hUVFAyQ29weUhlYWRlcnNdKHJlcUhlYWRlcnMudHJpbSgpKVxuICBlbHNlIGhlYWRlcnMgPSByZXFIZWFkZXJzXG5cbiAgaWYgKHVwZ3JhZGUpIHtcbiAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBuZXcgRXJyb3IoJ1VwZ3JhZGUgbm90IHN1cHBvcnRlZCBmb3IgSDInKSlcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHRyeSB7XG4gICAgLy8gVE9ETyhIVFRQLzIpOiBTaG91bGQgd2UgY2FsbCBvbkNvbm5lY3QgaW1tZWRpYXRlbHkgb3Igb24gc3RyZWFtIHJlYWR5IGV2ZW50P1xuICAgIHJlcXVlc3Qub25Db25uZWN0KChlcnIpID0+IHtcbiAgICAgIGlmIChyZXF1ZXN0LmFib3J0ZWQgfHwgcmVxdWVzdC5jb21wbGV0ZWQpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGVycm9yUmVxdWVzdChjbGllbnQsIHJlcXVlc3QsIGVyciB8fCBuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpKVxuICAgIH0pXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGVycm9yUmVxdWVzdChjbGllbnQsIHJlcXVlc3QsIGVycilcbiAgfVxuXG4gIGlmIChyZXF1ZXN0LmFib3J0ZWQpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIC8qKiBAdHlwZSB7aW1wb3J0KCdub2RlOmh0dHAyJykuQ2xpZW50SHR0cDJTdHJlYW19ICovXG4gIGxldCBzdHJlYW1cbiAgY29uc3QgaDJTdGF0ZSA9IGNsaWVudFtrSFRUUDJTZXNzaW9uU3RhdGVdXG5cbiAgaGVhZGVyc1tIVFRQMl9IRUFERVJfQVVUSE9SSVRZXSA9IGhvc3QgfHwgY2xpZW50W2tIb3N0XVxuICBoZWFkZXJzW0hUVFAyX0hFQURFUl9NRVRIT0RdID0gbWV0aG9kXG5cbiAgaWYgKG1ldGhvZCA9PT0gJ0NPTk5FQ1QnKSB7XG4gICAgc2Vzc2lvbi5yZWYoKVxuICAgIC8vIHdlIGFyZSBhbHJlYWR5IGNvbm5lY3RlZCwgc3RyZWFtcyBhcmUgcGVuZGluZywgZmlyc3QgcmVxdWVzdFxuICAgIC8vIHdpbGwgY3JlYXRlIGEgbmV3IHN0cmVhbS4gV2UgdHJpZ2dlciBhIHJlcXVlc3QgdG8gY3JlYXRlIHRoZSBzdHJlYW0gYW5kIHdhaXQgdW50aWxcbiAgICAvLyBgcmVhZHlgIGV2ZW50IGlzIHRyaWdnZXJlZFxuICAgIC8vIFdlIGRpc2FibGVkIGVuZFN0cmVhbSB0byBhbGxvdyB0aGUgdXNlciB0byB3cml0ZSB0byB0aGUgc3RyZWFtXG4gICAgc3RyZWFtID0gc2Vzc2lvbi5yZXF1ZXN0KGhlYWRlcnMsIHsgZW5kU3RyZWFtOiBmYWxzZSwgc2lnbmFsIH0pXG5cbiAgICBpZiAoc3RyZWFtLmlkICYmICFzdHJlYW0ucGVuZGluZykge1xuICAgICAgcmVxdWVzdC5vblVwZ3JhZGUobnVsbCwgbnVsbCwgc3RyZWFtKVxuICAgICAgKytoMlN0YXRlLm9wZW5TdHJlYW1zXG4gICAgfSBlbHNlIHtcbiAgICAgIHN0cmVhbS5vbmNlKCdyZWFkeScsICgpID0+IHtcbiAgICAgICAgcmVxdWVzdC5vblVwZ3JhZGUobnVsbCwgbnVsbCwgc3RyZWFtKVxuICAgICAgICArK2gyU3RhdGUub3BlblN0cmVhbXNcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgc3RyZWFtLm9uY2UoJ2Nsb3NlJywgKCkgPT4ge1xuICAgICAgaDJTdGF0ZS5vcGVuU3RyZWFtcyAtPSAxXG4gICAgICAvLyBUT0RPKEhUVFAvMik6IHVucmVmIG9ubHkgaWYgY3VycmVudCBzdHJlYW1zIGNvdW50IGlzIDBcbiAgICAgIGlmIChoMlN0YXRlLm9wZW5TdHJlYW1zID09PSAwKSBzZXNzaW9uLnVucmVmKClcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3NTQwI3NlY3Rpb24tOC4zXG4gIC8vIDpwYXRoIGFuZCA6c2NoZW1lIGhlYWRlcnMgbXVzdCBiZSBvbWl0ZWQgd2hlbiBzZW5kaW5nIENPTk5FQ1RcblxuICBoZWFkZXJzW0hUVFAyX0hFQURFUl9QQVRIXSA9IHBhdGhcbiAgaGVhZGVyc1tIVFRQMl9IRUFERVJfU0NIRU1FXSA9ICdodHRwcydcblxuICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMSNzZWN0aW9uLTQuMy4xXG4gIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNC4zLjJcbiAgLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi00LjMuNVxuXG4gIC8vIFNlbmRpbmcgYSBwYXlsb2FkIGJvZHkgb24gYSByZXF1ZXN0IHRoYXQgZG9lcyBub3RcbiAgLy8gZXhwZWN0IGl0IGNhbiBjYXVzZSB1bmRlZmluZWQgYmVoYXZpb3Igb24gc29tZVxuICAvLyBzZXJ2ZXJzIGFuZCBjb3JydXB0IGNvbm5lY3Rpb24gc3RhdGUuIERvIG5vdFxuICAvLyByZS11c2UgdGhlIGNvbm5lY3Rpb24gZm9yIGZ1cnRoZXIgcmVxdWVzdHMuXG5cbiAgY29uc3QgZXhwZWN0c1BheWxvYWQgPSAoXG4gICAgbWV0aG9kID09PSAnUFVUJyB8fFxuICAgIG1ldGhvZCA9PT0gJ1BPU1QnIHx8XG4gICAgbWV0aG9kID09PSAnUEFUQ0gnXG4gIClcblxuICBpZiAoYm9keSAmJiB0eXBlb2YgYm9keS5yZWFkID09PSAnZnVuY3Rpb24nKSB7XG4gICAgLy8gVHJ5IHRvIHJlYWQgRU9GIGluIG9yZGVyIHRvIGdldCBsZW5ndGguXG4gICAgYm9keS5yZWFkKDApXG4gIH1cblxuICBsZXQgY29udGVudExlbmd0aCA9IHV0aWwuYm9keUxlbmd0aChib2R5KVxuXG4gIGlmIChjb250ZW50TGVuZ3RoID09IG51bGwpIHtcbiAgICBjb250ZW50TGVuZ3RoID0gcmVxdWVzdC5jb250ZW50TGVuZ3RoXG4gIH1cblxuICBpZiAoY29udGVudExlbmd0aCA9PT0gMCB8fCAhZXhwZWN0c1BheWxvYWQpIHtcbiAgICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMCNzZWN0aW9uLTMuMy4yXG4gICAgLy8gQSB1c2VyIGFnZW50IFNIT1VMRCBOT1Qgc2VuZCBhIENvbnRlbnQtTGVuZ3RoIGhlYWRlciBmaWVsZCB3aGVuXG4gICAgLy8gdGhlIHJlcXVlc3QgbWVzc2FnZSBkb2VzIG5vdCBjb250YWluIGEgcGF5bG9hZCBib2R5IGFuZCB0aGUgbWV0aG9kXG4gICAgLy8gc2VtYW50aWNzIGRvIG5vdCBhbnRpY2lwYXRlIHN1Y2ggYSBib2R5LlxuXG4gICAgY29udGVudExlbmd0aCA9IG51bGxcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8yMDQ2XG4gIC8vIEEgdXNlciBhZ2VudCBtYXkgc2VuZCBhIENvbnRlbnQtTGVuZ3RoIGhlYWRlciB3aXRoIDAgdmFsdWUsIHRoaXMgc2hvdWxkIGJlIGFsbG93ZWQuXG4gIGlmIChzaG91bGRTZW5kQ29udGVudExlbmd0aChtZXRob2QpICYmIGNvbnRlbnRMZW5ndGggPiAwICYmIHJlcXVlc3QuY29udGVudExlbmd0aCAhPSBudWxsICYmIHJlcXVlc3QuY29udGVudExlbmd0aCAhPT0gY29udGVudExlbmd0aCkge1xuICAgIGlmIChjbGllbnRba1N0cmljdENvbnRlbnRMZW5ndGhdKSB7XG4gICAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBuZXcgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yKCkpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBwcm9jZXNzLmVtaXRXYXJuaW5nKG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKSlcbiAgfVxuXG4gIGlmIChjb250ZW50TGVuZ3RoICE9IG51bGwpIHtcbiAgICBhc3NlcnQoYm9keSwgJ25vIGJvZHkgbXVzdCBub3QgaGF2ZSBjb250ZW50IGxlbmd0aCcpXG4gICAgaGVhZGVyc1tIVFRQMl9IRUFERVJfQ09OVEVOVF9MRU5HVEhdID0gYCR7Y29udGVudExlbmd0aH1gXG4gIH1cblxuICBzZXNzaW9uLnJlZigpXG5cbiAgY29uc3Qgc2hvdWxkRW5kU3RyZWFtID0gbWV0aG9kID09PSAnR0VUJyB8fCBtZXRob2QgPT09ICdIRUFEJ1xuICBpZiAoZXhwZWN0Q29udGludWUpIHtcbiAgICBoZWFkZXJzW0hUVFAyX0hFQURFUl9FWFBFQ1RdID0gJzEwMC1jb250aW51ZSdcbiAgICBzdHJlYW0gPSBzZXNzaW9uLnJlcXVlc3QoaGVhZGVycywgeyBlbmRTdHJlYW06IHNob3VsZEVuZFN0cmVhbSwgc2lnbmFsIH0pXG5cbiAgICBzdHJlYW0ub25jZSgnY29udGludWUnLCB3cml0ZUJvZHlIMilcbiAgfSBlbHNlIHtcbiAgICBzdHJlYW0gPSBzZXNzaW9uLnJlcXVlc3QoaGVhZGVycywge1xuICAgICAgZW5kU3RyZWFtOiBzaG91bGRFbmRTdHJlYW0sXG4gICAgICBzaWduYWxcbiAgICB9KVxuICAgIHdyaXRlQm9keUgyKClcbiAgfVxuXG4gIC8vIEluY3JlbWVudCBjb3VudGVyIGFzIHdlIGhhdmUgbmV3IHNldmVyYWwgc3RyZWFtcyBvcGVuXG4gICsraDJTdGF0ZS5vcGVuU3RyZWFtc1xuXG4gIHN0cmVhbS5vbmNlKCdyZXNwb25zZScsIGhlYWRlcnMgPT4ge1xuICAgIGNvbnN0IHsgW0hUVFAyX0hFQURFUl9TVEFUVVNdOiBzdGF0dXNDb2RlLCAuLi5yZWFsSGVhZGVycyB9ID0gaGVhZGVyc1xuXG4gICAgaWYgKHJlcXVlc3Qub25IZWFkZXJzKE51bWJlcihzdGF0dXNDb2RlKSwgcmVhbEhlYWRlcnMsIHN0cmVhbS5yZXN1bWUuYmluZChzdHJlYW0pLCAnJykgPT09IGZhbHNlKSB7XG4gICAgICBzdHJlYW0ucGF1c2UoKVxuICAgIH1cbiAgfSlcblxuICBzdHJlYW0ub25jZSgnZW5kJywgKCkgPT4ge1xuICAgIHJlcXVlc3Qub25Db21wbGV0ZShbXSlcbiAgfSlcblxuICBzdHJlYW0ub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICBpZiAocmVxdWVzdC5vbkRhdGEoY2h1bmspID09PSBmYWxzZSkge1xuICAgICAgc3RyZWFtLnBhdXNlKClcbiAgICB9XG4gIH0pXG5cbiAgc3RyZWFtLm9uY2UoJ2Nsb3NlJywgKCkgPT4ge1xuICAgIGgyU3RhdGUub3BlblN0cmVhbXMgLT0gMVxuICAgIC8vIFRPRE8oSFRUUC8yKTogdW5yZWYgb25seSBpZiBjdXJyZW50IHN0cmVhbXMgY291bnQgaXMgMFxuICAgIGlmIChoMlN0YXRlLm9wZW5TdHJlYW1zID09PSAwKSB7XG4gICAgICBzZXNzaW9uLnVucmVmKClcbiAgICB9XG4gIH0pXG5cbiAgc3RyZWFtLm9uY2UoJ2Vycm9yJywgZnVuY3Rpb24gKGVycikge1xuICAgIGlmIChjbGllbnRba0hUVFAyU2Vzc2lvbl0gJiYgIWNsaWVudFtrSFRUUDJTZXNzaW9uXS5kZXN0cm95ZWQgJiYgIXRoaXMuY2xvc2VkICYmICF0aGlzLmRlc3Ryb3llZCkge1xuICAgICAgaDJTdGF0ZS5zdHJlYW1zIC09IDFcbiAgICAgIHV0aWwuZGVzdHJveShzdHJlYW0sIGVycilcbiAgICB9XG4gIH0pXG5cbiAgc3RyZWFtLm9uY2UoJ2ZyYW1lRXJyb3InLCAodHlwZSwgY29kZSkgPT4ge1xuICAgIGNvbnN0IGVyciA9IG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoYEhUVFAvMjogXCJmcmFtZUVycm9yXCIgcmVjZWl2ZWQgLSB0eXBlICR7dHlwZX0sIGNvZGUgJHtjb2RlfWApXG4gICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuXG4gICAgaWYgKGNsaWVudFtrSFRUUDJTZXNzaW9uXSAmJiAhY2xpZW50W2tIVFRQMlNlc3Npb25dLmRlc3Ryb3llZCAmJiAhdGhpcy5jbG9zZWQgJiYgIXRoaXMuZGVzdHJveWVkKSB7XG4gICAgICBoMlN0YXRlLnN0cmVhbXMgLT0gMVxuICAgICAgdXRpbC5kZXN0cm95KHN0cmVhbSwgZXJyKVxuICAgIH1cbiAgfSlcblxuICAvLyBzdHJlYW0ub24oJ2Fib3J0ZWQnLCAoKSA9PiB7XG4gIC8vICAgLy8gVE9ETyhIVFRQLzIpOiBTdXBwb3J0IGFib3J0ZWRcbiAgLy8gfSlcblxuICAvLyBzdHJlYW0ub24oJ3RpbWVvdXQnLCAoKSA9PiB7XG4gIC8vICAgLy8gVE9ETyhIVFRQLzIpOiBTdXBwb3J0IHRpbWVvdXRcbiAgLy8gfSlcblxuICAvLyBzdHJlYW0ub24oJ3B1c2gnLCBoZWFkZXJzID0+IHtcbiAgLy8gICAvLyBUT0RPKEhUVFAvMik6IFN1cHBvciBwdXNoXG4gIC8vIH0pXG5cbiAgLy8gc3RyZWFtLm9uKCd0cmFpbGVycycsIGhlYWRlcnMgPT4ge1xuICAvLyAgIC8vIFRPRE8oSFRUUC8yKTogU3VwcG9ydCB0cmFpbGVyc1xuICAvLyB9KVxuXG4gIHJldHVybiB0cnVlXG5cbiAgZnVuY3Rpb24gd3JpdGVCb2R5SDIgKCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBhc3NlcnRpb24gKi9cbiAgICBpZiAoIWJvZHkpIHtcbiAgICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG4gICAgfSBlbHNlIGlmICh1dGlsLmlzQnVmZmVyKGJvZHkpKSB7XG4gICAgICBhc3NlcnQoY29udGVudExlbmd0aCA9PT0gYm9keS5ieXRlTGVuZ3RoLCAnYnVmZmVyIGJvZHkgbXVzdCBoYXZlIGNvbnRlbnQgbGVuZ3RoJylcbiAgICAgIHN0cmVhbS5jb3JrKClcbiAgICAgIHN0cmVhbS53cml0ZShib2R5KVxuICAgICAgc3RyZWFtLnVuY29yaygpXG4gICAgICBzdHJlYW0uZW5kKClcbiAgICAgIHJlcXVlc3Qub25Cb2R5U2VudChib2R5KVxuICAgICAgcmVxdWVzdC5vblJlcXVlc3RTZW50KClcbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNCbG9iTGlrZShib2R5KSkge1xuICAgICAgaWYgKHR5cGVvZiBib2R5LnN0cmVhbSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB3cml0ZUl0ZXJhYmxlKHtcbiAgICAgICAgICBjbGllbnQsXG4gICAgICAgICAgcmVxdWVzdCxcbiAgICAgICAgICBjb250ZW50TGVuZ3RoLFxuICAgICAgICAgIGgyc3RyZWFtOiBzdHJlYW0sXG4gICAgICAgICAgZXhwZWN0c1BheWxvYWQsXG4gICAgICAgICAgYm9keTogYm9keS5zdHJlYW0oKSxcbiAgICAgICAgICBzb2NrZXQ6IGNsaWVudFtrU29ja2V0XSxcbiAgICAgICAgICBoZWFkZXI6ICcnXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3cml0ZUJsb2Ioe1xuICAgICAgICAgIGJvZHksXG4gICAgICAgICAgY2xpZW50LFxuICAgICAgICAgIHJlcXVlc3QsXG4gICAgICAgICAgY29udGVudExlbmd0aCxcbiAgICAgICAgICBleHBlY3RzUGF5bG9hZCxcbiAgICAgICAgICBoMnN0cmVhbTogc3RyZWFtLFxuICAgICAgICAgIGhlYWRlcjogJycsXG4gICAgICAgICAgc29ja2V0OiBjbGllbnRba1NvY2tldF1cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICAgIHdyaXRlU3RyZWFtKHtcbiAgICAgICAgYm9keSxcbiAgICAgICAgY2xpZW50LFxuICAgICAgICByZXF1ZXN0LFxuICAgICAgICBjb250ZW50TGVuZ3RoLFxuICAgICAgICBleHBlY3RzUGF5bG9hZCxcbiAgICAgICAgc29ja2V0OiBjbGllbnRba1NvY2tldF0sXG4gICAgICAgIGgyc3RyZWFtOiBzdHJlYW0sXG4gICAgICAgIGhlYWRlcjogJydcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmICh1dGlsLmlzSXRlcmFibGUoYm9keSkpIHtcbiAgICAgIHdyaXRlSXRlcmFibGUoe1xuICAgICAgICBib2R5LFxuICAgICAgICBjbGllbnQsXG4gICAgICAgIHJlcXVlc3QsXG4gICAgICAgIGNvbnRlbnRMZW5ndGgsXG4gICAgICAgIGV4cGVjdHNQYXlsb2FkLFxuICAgICAgICBoZWFkZXI6ICcnLFxuICAgICAgICBoMnN0cmVhbTogc3RyZWFtLFxuICAgICAgICBzb2NrZXQ6IGNsaWVudFtrU29ja2V0XVxuICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KGZhbHNlKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiB3cml0ZVN0cmVhbSAoeyBoMnN0cmVhbSwgYm9keSwgY2xpZW50LCByZXF1ZXN0LCBzb2NrZXQsIGNvbnRlbnRMZW5ndGgsIGhlYWRlciwgZXhwZWN0c1BheWxvYWQgfSkge1xuICBhc3NlcnQoY29udGVudExlbmd0aCAhPT0gMCB8fCBjbGllbnRba1J1bm5pbmddID09PSAwLCAnc3RyZWFtIGJvZHkgY2Fubm90IGJlIHBpcGVsaW5lZCcpXG5cbiAgaWYgKGNsaWVudFtrSFRUUENvbm5WZXJzaW9uXSA9PT0gJ2gyJykge1xuICAgIC8vIEZvciBIVFRQLzIsIGlzIGVub3VnaCB0byBwaXBlIHRoZSBzdHJlYW1cbiAgICBjb25zdCBwaXBlID0gcGlwZWxpbmUoXG4gICAgICBib2R5LFxuICAgICAgaDJzdHJlYW0sXG4gICAgICAoZXJyKSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICB1dGlsLmRlc3Ryb3koYm9keSwgZXJyKVxuICAgICAgICAgIHV0aWwuZGVzdHJveShoMnN0cmVhbSwgZXJyKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApXG5cbiAgICBwaXBlLm9uKCdkYXRhJywgb25QaXBlRGF0YSlcbiAgICBwaXBlLm9uY2UoJ2VuZCcsICgpID0+IHtcbiAgICAgIHBpcGUucmVtb3ZlTGlzdGVuZXIoJ2RhdGEnLCBvblBpcGVEYXRhKVxuICAgICAgdXRpbC5kZXN0cm95KHBpcGUpXG4gICAgfSlcblxuICAgIGZ1bmN0aW9uIG9uUGlwZURhdGEgKGNodW5rKSB7XG4gICAgICByZXF1ZXN0Lm9uQm9keVNlbnQoY2h1bmspXG4gICAgfVxuXG4gICAgcmV0dXJuXG4gIH1cblxuICBsZXQgZmluaXNoZWQgPSBmYWxzZVxuXG4gIGNvbnN0IHdyaXRlciA9IG5ldyBBc3luY1dyaXRlcih7IHNvY2tldCwgcmVxdWVzdCwgY29udGVudExlbmd0aCwgY2xpZW50LCBleHBlY3RzUGF5bG9hZCwgaGVhZGVyIH0pXG5cbiAgY29uc3Qgb25EYXRhID0gZnVuY3Rpb24gKGNodW5rKSB7XG4gICAgaWYgKGZpbmlzaGVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgaWYgKCF3cml0ZXIud3JpdGUoY2h1bmspICYmIHRoaXMucGF1c2UpIHtcbiAgICAgICAgdGhpcy5wYXVzZSgpXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB1dGlsLmRlc3Ryb3kodGhpcywgZXJyKVxuICAgIH1cbiAgfVxuICBjb25zdCBvbkRyYWluID0gZnVuY3Rpb24gKCkge1xuICAgIGlmIChmaW5pc2hlZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKGJvZHkucmVzdW1lKSB7XG4gICAgICBib2R5LnJlc3VtZSgpXG4gICAgfVxuICB9XG4gIGNvbnN0IG9uQWJvcnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKGZpbmlzaGVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3QgZXJyID0gbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IG9uRmluaXNoZWQoZXJyKSlcbiAgfVxuICBjb25zdCBvbkZpbmlzaGVkID0gZnVuY3Rpb24gKGVycikge1xuICAgIGlmIChmaW5pc2hlZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgZmluaXNoZWQgPSB0cnVlXG5cbiAgICBhc3NlcnQoc29ja2V0LmRlc3Ryb3llZCB8fCAoc29ja2V0W2tXcml0aW5nXSAmJiBjbGllbnRba1J1bm5pbmddIDw9IDEpKVxuXG4gICAgc29ja2V0XG4gICAgICAub2ZmKCdkcmFpbicsIG9uRHJhaW4pXG4gICAgICAub2ZmKCdlcnJvcicsIG9uRmluaXNoZWQpXG5cbiAgICBib2R5XG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2RhdGEnLCBvbkRhdGEpXG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2VuZCcsIG9uRmluaXNoZWQpXG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25GaW5pc2hlZClcbiAgICAgIC5yZW1vdmVMaXN0ZW5lcignY2xvc2UnLCBvbkFib3J0KVxuXG4gICAgaWYgKCFlcnIpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHdyaXRlci5lbmQoKVxuICAgICAgfSBjYXRjaCAoZXIpIHtcbiAgICAgICAgZXJyID0gZXJcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZXIuZGVzdHJveShlcnIpXG5cbiAgICBpZiAoZXJyICYmIChlcnIuY29kZSAhPT0gJ1VORF9FUlJfSU5GTycgfHwgZXJyLm1lc3NhZ2UgIT09ICdyZXNldCcpKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koYm9keSwgZXJyKVxuICAgIH0gZWxzZSB7XG4gICAgICB1dGlsLmRlc3Ryb3koYm9keSlcbiAgICB9XG4gIH1cblxuICBib2R5XG4gICAgLm9uKCdkYXRhJywgb25EYXRhKVxuICAgIC5vbignZW5kJywgb25GaW5pc2hlZClcbiAgICAub24oJ2Vycm9yJywgb25GaW5pc2hlZClcbiAgICAub24oJ2Nsb3NlJywgb25BYm9ydClcblxuICBpZiAoYm9keS5yZXN1bWUpIHtcbiAgICBib2R5LnJlc3VtZSgpXG4gIH1cblxuICBzb2NrZXRcbiAgICAub24oJ2RyYWluJywgb25EcmFpbilcbiAgICAub24oJ2Vycm9yJywgb25GaW5pc2hlZClcbn1cblxuYXN5bmMgZnVuY3Rpb24gd3JpdGVCbG9iICh7IGgyc3RyZWFtLCBib2R5LCBjbGllbnQsIHJlcXVlc3QsIHNvY2tldCwgY29udGVudExlbmd0aCwgaGVhZGVyLCBleHBlY3RzUGF5bG9hZCB9KSB7XG4gIGFzc2VydChjb250ZW50TGVuZ3RoID09PSBib2R5LnNpemUsICdibG9iIGJvZHkgbXVzdCBoYXZlIGNvbnRlbnQgbGVuZ3RoJylcblxuICBjb25zdCBpc0gyID0gY2xpZW50W2tIVFRQQ29ublZlcnNpb25dID09PSAnaDInXG4gIHRyeSB7XG4gICAgaWYgKGNvbnRlbnRMZW5ndGggIT0gbnVsbCAmJiBjb250ZW50TGVuZ3RoICE9PSBib2R5LnNpemUpIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKVxuICAgIH1cblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5mcm9tKGF3YWl0IGJvZHkuYXJyYXlCdWZmZXIoKSlcblxuICAgIGlmIChpc0gyKSB7XG4gICAgICBoMnN0cmVhbS5jb3JrKClcbiAgICAgIGgyc3RyZWFtLndyaXRlKGJ1ZmZlcilcbiAgICAgIGgyc3RyZWFtLnVuY29yaygpXG4gICAgfSBlbHNlIHtcbiAgICAgIHNvY2tldC5jb3JrKClcbiAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9Y29udGVudC1sZW5ndGg6ICR7Y29udGVudExlbmd0aH1cXHJcXG5cXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIHNvY2tldC53cml0ZShidWZmZXIpXG4gICAgICBzb2NrZXQudW5jb3JrKClcbiAgICB9XG5cbiAgICByZXF1ZXN0Lm9uQm9keVNlbnQoYnVmZmVyKVxuICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG5cbiAgICBpZiAoIWV4cGVjdHNQYXlsb2FkKSB7XG4gICAgICBzb2NrZXRba1Jlc2V0XSA9IHRydWVcbiAgICB9XG5cbiAgICByZXN1bWUoY2xpZW50KVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICB1dGlsLmRlc3Ryb3koaXNIMiA/IGgyc3RyZWFtIDogc29ja2V0LCBlcnIpXG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gd3JpdGVJdGVyYWJsZSAoeyBoMnN0cmVhbSwgYm9keSwgY2xpZW50LCByZXF1ZXN0LCBzb2NrZXQsIGNvbnRlbnRMZW5ndGgsIGhlYWRlciwgZXhwZWN0c1BheWxvYWQgfSkge1xuICBhc3NlcnQoY29udGVudExlbmd0aCAhPT0gMCB8fCBjbGllbnRba1J1bm5pbmddID09PSAwLCAnaXRlcmF0b3IgYm9keSBjYW5ub3QgYmUgcGlwZWxpbmVkJylcblxuICBsZXQgY2FsbGJhY2sgPSBudWxsXG4gIGZ1bmN0aW9uIG9uRHJhaW4gKCkge1xuICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgY29uc3QgY2IgPSBjYWxsYmFja1xuICAgICAgY2FsbGJhY2sgPSBudWxsXG4gICAgICBjYigpXG4gICAgfVxuICB9XG5cbiAgY29uc3Qgd2FpdEZvckRyYWluID0gKCkgPT4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGFzc2VydChjYWxsYmFjayA9PT0gbnVsbClcblxuICAgIGlmIChzb2NrZXRba0Vycm9yXSkge1xuICAgICAgcmVqZWN0KHNvY2tldFtrRXJyb3JdKVxuICAgIH0gZWxzZSB7XG4gICAgICBjYWxsYmFjayA9IHJlc29sdmVcbiAgICB9XG4gIH0pXG5cbiAgaWYgKGNsaWVudFtrSFRUUENvbm5WZXJzaW9uXSA9PT0gJ2gyJykge1xuICAgIGgyc3RyZWFtXG4gICAgICAub24oJ2Nsb3NlJywgb25EcmFpbilcbiAgICAgIC5vbignZHJhaW4nLCBvbkRyYWluKVxuXG4gICAgdHJ5IHtcbiAgICAgIC8vIEl0J3MgdXAgdG8gdGhlIHVzZXIgdG8gc29tZWhvdyBhYm9ydCB0aGUgYXN5bmMgaXRlcmFibGUuXG4gICAgICBmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIGJvZHkpIHtcbiAgICAgICAgaWYgKHNvY2tldFtrRXJyb3JdKSB7XG4gICAgICAgICAgdGhyb3cgc29ja2V0W2tFcnJvcl1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlcyA9IGgyc3RyZWFtLndyaXRlKGNodW5rKVxuICAgICAgICByZXF1ZXN0Lm9uQm9keVNlbnQoY2h1bmspXG4gICAgICAgIGlmICghcmVzKSB7XG4gICAgICAgICAgYXdhaXQgd2FpdEZvckRyYWluKClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaDJzdHJlYW0uZGVzdHJveShlcnIpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG4gICAgICBoMnN0cmVhbS5lbmQoKVxuICAgICAgaDJzdHJlYW1cbiAgICAgICAgLm9mZignY2xvc2UnLCBvbkRyYWluKVxuICAgICAgICAub2ZmKCdkcmFpbicsIG9uRHJhaW4pXG4gICAgfVxuXG4gICAgcmV0dXJuXG4gIH1cblxuICBzb2NrZXRcbiAgICAub24oJ2Nsb3NlJywgb25EcmFpbilcbiAgICAub24oJ2RyYWluJywgb25EcmFpbilcblxuICBjb25zdCB3cml0ZXIgPSBuZXcgQXN5bmNXcml0ZXIoeyBzb2NrZXQsIHJlcXVlc3QsIGNvbnRlbnRMZW5ndGgsIGNsaWVudCwgZXhwZWN0c1BheWxvYWQsIGhlYWRlciB9KVxuICB0cnkge1xuICAgIC8vIEl0J3MgdXAgdG8gdGhlIHVzZXIgdG8gc29tZWhvdyBhYm9ydCB0aGUgYXN5bmMgaXRlcmFibGUuXG4gICAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBib2R5KSB7XG4gICAgICBpZiAoc29ja2V0W2tFcnJvcl0pIHtcbiAgICAgICAgdGhyb3cgc29ja2V0W2tFcnJvcl1cbiAgICAgIH1cblxuICAgICAgaWYgKCF3cml0ZXIud3JpdGUoY2h1bmspKSB7XG4gICAgICAgIGF3YWl0IHdhaXRGb3JEcmFpbigpXG4gICAgICB9XG4gICAgfVxuXG4gICAgd3JpdGVyLmVuZCgpXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHdyaXRlci5kZXN0cm95KGVycilcbiAgfSBmaW5hbGx5IHtcbiAgICBzb2NrZXRcbiAgICAgIC5vZmYoJ2Nsb3NlJywgb25EcmFpbilcbiAgICAgIC5vZmYoJ2RyYWluJywgb25EcmFpbilcbiAgfVxufVxuXG5jbGFzcyBBc3luY1dyaXRlciB7XG4gIGNvbnN0cnVjdG9yICh7IHNvY2tldCwgcmVxdWVzdCwgY29udGVudExlbmd0aCwgY2xpZW50LCBleHBlY3RzUGF5bG9hZCwgaGVhZGVyIH0pIHtcbiAgICB0aGlzLnNvY2tldCA9IHNvY2tldFxuICAgIHRoaXMucmVxdWVzdCA9IHJlcXVlc3RcbiAgICB0aGlzLmNvbnRlbnRMZW5ndGggPSBjb250ZW50TGVuZ3RoXG4gICAgdGhpcy5jbGllbnQgPSBjbGllbnRcbiAgICB0aGlzLmJ5dGVzV3JpdHRlbiA9IDBcbiAgICB0aGlzLmV4cGVjdHNQYXlsb2FkID0gZXhwZWN0c1BheWxvYWRcbiAgICB0aGlzLmhlYWRlciA9IGhlYWRlclxuXG4gICAgc29ja2V0W2tXcml0aW5nXSA9IHRydWVcbiAgfVxuXG4gIHdyaXRlIChjaHVuaykge1xuICAgIGNvbnN0IHsgc29ja2V0LCByZXF1ZXN0LCBjb250ZW50TGVuZ3RoLCBjbGllbnQsIGJ5dGVzV3JpdHRlbiwgZXhwZWN0c1BheWxvYWQsIGhlYWRlciB9ID0gdGhpc1xuXG4gICAgaWYgKHNvY2tldFtrRXJyb3JdKSB7XG4gICAgICB0aHJvdyBzb2NrZXRba0Vycm9yXVxuICAgIH1cblxuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBjb25zdCBsZW4gPSBCdWZmZXIuYnl0ZUxlbmd0aChjaHVuaylcbiAgICBpZiAoIWxlbikge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICAvLyBXZSBzaG91bGQgZGVmZXIgd3JpdGluZyBjaHVua3MuXG4gICAgaWYgKGNvbnRlbnRMZW5ndGggIT09IG51bGwgJiYgYnl0ZXNXcml0dGVuICsgbGVuID4gY29udGVudExlbmd0aCkge1xuICAgICAgaWYgKGNsaWVudFtrU3RyaWN0Q29udGVudExlbmd0aF0pIHtcbiAgICAgICAgdGhyb3cgbmV3IFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcigpXG4gICAgICB9XG5cbiAgICAgIHByb2Nlc3MuZW1pdFdhcm5pbmcobmV3IFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcigpKVxuICAgIH1cblxuICAgIHNvY2tldC5jb3JrKClcblxuICAgIGlmIChieXRlc1dyaXR0ZW4gPT09IDApIHtcbiAgICAgIGlmICghZXhwZWN0c1BheWxvYWQpIHtcbiAgICAgICAgc29ja2V0W2tSZXNldF0gPSB0cnVlXG4gICAgICB9XG5cbiAgICAgIGlmIChjb250ZW50TGVuZ3RoID09PSBudWxsKSB7XG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9dHJhbnNmZXItZW5jb2Rpbmc6IGNodW5rZWRcXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9Y29udGVudC1sZW5ndGg6ICR7Y29udGVudExlbmd0aH1cXHJcXG5cXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY29udGVudExlbmd0aCA9PT0gbnVsbCkge1xuICAgICAgc29ja2V0LndyaXRlKGBcXHJcXG4ke2xlbi50b1N0cmluZygxNil9XFxyXFxuYCwgJ2xhdGluMScpXG4gICAgfVxuXG4gICAgdGhpcy5ieXRlc1dyaXR0ZW4gKz0gbGVuXG5cbiAgICBjb25zdCByZXQgPSBzb2NrZXQud3JpdGUoY2h1bmspXG5cbiAgICBzb2NrZXQudW5jb3JrKClcblxuICAgIHJlcXVlc3Qub25Cb2R5U2VudChjaHVuaylcblxuICAgIGlmICghcmV0KSB7XG4gICAgICBpZiAoc29ja2V0W2tQYXJzZXJdLnRpbWVvdXQgJiYgc29ja2V0W2tQYXJzZXJdLnRpbWVvdXRUeXBlID09PSBUSU1FT1VUX0hFQURFUlMpIHtcbiAgICAgICAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2U6IG9ubHkgZm9yIGplc3RcbiAgICAgICAgaWYgKHNvY2tldFtrUGFyc2VyXS50aW1lb3V0LnJlZnJlc2gpIHtcbiAgICAgICAgICBzb2NrZXRba1BhcnNlcl0udGltZW91dC5yZWZyZXNoKClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGVuZCAoKSB7XG4gICAgY29uc3QgeyBzb2NrZXQsIGNvbnRlbnRMZW5ndGgsIGNsaWVudCwgYnl0ZXNXcml0dGVuLCBleHBlY3RzUGF5bG9hZCwgaGVhZGVyLCByZXF1ZXN0IH0gPSB0aGlzXG4gICAgcmVxdWVzdC5vblJlcXVlc3RTZW50KClcblxuICAgIHNvY2tldFtrV3JpdGluZ10gPSBmYWxzZVxuXG4gICAgaWYgKHNvY2tldFtrRXJyb3JdKSB7XG4gICAgICB0aHJvdyBzb2NrZXRba0Vycm9yXVxuICAgIH1cblxuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoYnl0ZXNXcml0dGVuID09PSAwKSB7XG4gICAgICBpZiAoZXhwZWN0c1BheWxvYWQpIHtcbiAgICAgICAgLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzAjc2VjdGlvbi0zLjMuMlxuICAgICAgICAvLyBBIHVzZXIgYWdlbnQgU0hPVUxEIHNlbmQgYSBDb250ZW50LUxlbmd0aCBpbiBhIHJlcXVlc3QgbWVzc2FnZSB3aGVuXG4gICAgICAgIC8vIG5vIFRyYW5zZmVyLUVuY29kaW5nIGlzIHNlbnQgYW5kIHRoZSByZXF1ZXN0IG1ldGhvZCBkZWZpbmVzIGEgbWVhbmluZ1xuICAgICAgICAvLyBmb3IgYW4gZW5jbG9zZWQgcGF5bG9hZCBib2R5LlxuXG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9Y29udGVudC1sZW5ndGg6IDBcXHJcXG5cXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9XFxyXFxuYCwgJ2xhdGluMScpXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChjb250ZW50TGVuZ3RoID09PSBudWxsKSB7XG4gICAgICBzb2NrZXQud3JpdGUoJ1xcclxcbjBcXHJcXG5cXHJcXG4nLCAnbGF0aW4xJylcbiAgICB9XG5cbiAgICBpZiAoY29udGVudExlbmd0aCAhPT0gbnVsbCAmJiBieXRlc1dyaXR0ZW4gIT09IGNvbnRlbnRMZW5ndGgpIHtcbiAgICAgIGlmIChjbGllbnRba1N0cmljdENvbnRlbnRMZW5ndGhdKSB7XG4gICAgICAgIHRocm93IG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcHJvY2Vzcy5lbWl0V2FybmluZyhuZXcgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yKCkpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHNvY2tldFtrUGFyc2VyXS50aW1lb3V0ICYmIHNvY2tldFtrUGFyc2VyXS50aW1lb3V0VHlwZSA9PT0gVElNRU9VVF9IRUFERVJTKSB7XG4gICAgICAvLyBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogb25seSBmb3IgamVzdFxuICAgICAgaWYgKHNvY2tldFtrUGFyc2VyXS50aW1lb3V0LnJlZnJlc2gpIHtcbiAgICAgICAgc29ja2V0W2tQYXJzZXJdLnRpbWVvdXQucmVmcmVzaCgpXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmVzdW1lKGNsaWVudClcbiAgfVxuXG4gIGRlc3Ryb3kgKGVycikge1xuICAgIGNvbnN0IHsgc29ja2V0LCBjbGllbnQgfSA9IHRoaXNcblxuICAgIHNvY2tldFtrV3JpdGluZ10gPSBmYWxzZVxuXG4gICAgaWYgKGVycikge1xuICAgICAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPD0gMSwgJ3BpcGVsaW5lIHNob3VsZCBvbmx5IGNvbnRhaW4gdGhpcyByZXF1ZXN0JylcbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIGVycilcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZXJyb3JSZXF1ZXN0IChjbGllbnQsIHJlcXVlc3QsIGVycikge1xuICB0cnkge1xuICAgIHJlcXVlc3Qub25FcnJvcihlcnIpXG4gICAgYXNzZXJ0KHJlcXVlc3QuYWJvcnRlZClcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgY2xpZW50LmVtaXQoJ2Vycm9yJywgZXJyKVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gQ2xpZW50XG4iLCAiLyogZXNsaW50LWRpc2FibGUgKi9cblxuJ3VzZSBzdHJpY3QnXG5cbi8vIEV4dHJhY3RlZCBmcm9tIG5vZGUvbGliL2ludGVybmFsL2ZpeGVkX3F1ZXVlLmpzXG5cbi8vIEN1cnJlbnRseSBvcHRpbWFsIHF1ZXVlIHNpemUsIHRlc3RlZCBvbiBWOCA2LjAgLSA2LjYuIE11c3QgYmUgcG93ZXIgb2YgdHdvLlxuY29uc3Qga1NpemUgPSAyMDQ4O1xuY29uc3Qga01hc2sgPSBrU2l6ZSAtIDE7XG5cbi8vIFRoZSBGaXhlZFF1ZXVlIGlzIGltcGxlbWVudGVkIGFzIGEgc2luZ2x5LWxpbmtlZCBsaXN0IG9mIGZpeGVkLXNpemVcbi8vIGNpcmN1bGFyIGJ1ZmZlcnMuIEl0IGxvb2tzIHNvbWV0aGluZyBsaWtlIHRoaXM6XG4vL1xuLy8gIGhlYWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFpbFxuLy8gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4vLyAgICB2ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZcbi8vICstLS0tLS0tLS0tLSsgPC0tLS0tXFwgICAgICAgKy0tLS0tLS0tLS0tKyA8LS0tLS0tXFwgICAgICAgICArLS0tLS0tLS0tLS0rXG4vLyB8ICBbbnVsbF0gICB8ICAgICAgICBcXC0tLS0tIHwgICBuZXh0ICAgIHwgICAgICAgICBcXC0tLS0tLS0gfCAgIG5leHQgICAgfFxuLy8gKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICstLS0tLS0tLS0tLSsgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0rXG4vLyB8ICAgaXRlbSAgICB8IDwtLSBib3R0b20gICAgfCAgIGl0ZW0gICAgfCA8LS0gYm90dG9tICAgICAgIHwgIFtlbXB0eV0gIHxcbi8vIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgICAgfCAgW2VtcHR5XSAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICAgICB8ICBbZW1wdHldICB8XG4vLyB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgICAgIHwgIFtlbXB0eV0gIHxcbi8vIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgIGJvdHRvbSAtLT4gfCAgIGl0ZW0gICAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8XG4vLyB8ICAgIC4uLiAgICB8ICAgICAgICAgICAgICAgfCAgICAuLi4gICAgfCAgICAgICAgICAgICAgICAgIHwgICAgLi4uICAgIHxcbi8vIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8XG4vLyB8ICBbZW1wdHldICB8IDwtLSB0b3AgICAgICAgfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHxcbi8vIHwgIFtlbXB0eV0gIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfFxuLy8gfCAgW2VtcHR5XSAgfCAgICAgICAgICAgICAgIHwgIFtlbXB0eV0gIHwgPC0tIHRvcCAgdG9wIC0tPiB8ICBbZW1wdHldICB8XG4vLyArLS0tLS0tLS0tLS0rICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLStcbi8vXG4vLyBPciwgaWYgdGhlcmUgaXMgb25seSBvbmUgY2lyY3VsYXIgYnVmZmVyLCBpdCBsb29rcyBzb21ldGhpbmdcbi8vIGxpa2UgZWl0aGVyIG9mIHRoZXNlOlxuLy9cbi8vICBoZWFkICAgdGFpbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWQgICB0YWlsXG4vLyAgICB8ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgIHxcbi8vICAgIHYgICAgIHYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdiAgICAgdlxuLy8gKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0rXG4vLyB8ICBbbnVsbF0gICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFtudWxsXSAgIHxcbi8vICstLS0tLS0tLS0tLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tK1xuLy8gfCAgW2VtcHR5XSAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8XG4vLyB8ICBbZW1wdHldICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHxcbi8vIHwgICBpdGVtICAgIHwgPC0tIGJvdHRvbSAgICAgICAgICAgIHRvcCAtLT4gfCAgW2VtcHR5XSAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBbZW1wdHldICB8XG4vLyB8ICBbZW1wdHldICB8IDwtLSB0b3AgICAgICAgICAgICBib3R0b20gLS0+IHwgICBpdGVtICAgIHxcbi8vIHwgIFtlbXB0eV0gIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfFxuLy8gKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0rXG4vL1xuLy8gQWRkaW5nIGEgdmFsdWUgbWVhbnMgbW92aW5nIGB0b3BgIGZvcndhcmQgYnkgb25lLCByZW1vdmluZyBtZWFuc1xuLy8gbW92aW5nIGBib3R0b21gIGZvcndhcmQgYnkgb25lLiBBZnRlciByZWFjaGluZyB0aGUgZW5kLCB0aGUgcXVldWVcbi8vIHdyYXBzIGFyb3VuZC5cbi8vXG4vLyBXaGVuIGB0b3AgPT09IGJvdHRvbWAgdGhlIGN1cnJlbnQgcXVldWUgaXMgZW1wdHkgYW5kIHdoZW5cbi8vIGB0b3AgKyAxID09PSBib3R0b21gIGl0J3MgZnVsbC4gVGhpcyB3YXN0ZXMgYSBzaW5nbGUgc3BhY2Ugb2Ygc3RvcmFnZVxuLy8gYnV0IGFsbG93cyBtdWNoIHF1aWNrZXIgY2hlY2tzLlxuXG5jbGFzcyBGaXhlZENpcmN1bGFyQnVmZmVyIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5ib3R0b20gPSAwO1xuICAgIHRoaXMudG9wID0gMDtcbiAgICB0aGlzLmxpc3QgPSBuZXcgQXJyYXkoa1NpemUpO1xuICAgIHRoaXMubmV4dCA9IG51bGw7XG4gIH1cblxuICBpc0VtcHR5KCkge1xuICAgIHJldHVybiB0aGlzLnRvcCA9PT0gdGhpcy5ib3R0b207XG4gIH1cblxuICBpc0Z1bGwoKSB7XG4gICAgcmV0dXJuICgodGhpcy50b3AgKyAxKSAmIGtNYXNrKSA9PT0gdGhpcy5ib3R0b207XG4gIH1cblxuICBwdXNoKGRhdGEpIHtcbiAgICB0aGlzLmxpc3RbdGhpcy50b3BdID0gZGF0YTtcbiAgICB0aGlzLnRvcCA9ICh0aGlzLnRvcCArIDEpICYga01hc2s7XG4gIH1cblxuICBzaGlmdCgpIHtcbiAgICBjb25zdCBuZXh0SXRlbSA9IHRoaXMubGlzdFt0aGlzLmJvdHRvbV07XG4gICAgaWYgKG5leHRJdGVtID09PSB1bmRlZmluZWQpXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB0aGlzLmxpc3RbdGhpcy5ib3R0b21dID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuYm90dG9tID0gKHRoaXMuYm90dG9tICsgMSkgJiBrTWFzaztcbiAgICByZXR1cm4gbmV4dEl0ZW07XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjbGFzcyBGaXhlZFF1ZXVlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5oZWFkID0gdGhpcy50YWlsID0gbmV3IEZpeGVkQ2lyY3VsYXJCdWZmZXIoKTtcbiAgfVxuXG4gIGlzRW1wdHkoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGVhZC5pc0VtcHR5KCk7XG4gIH1cblxuICBwdXNoKGRhdGEpIHtcbiAgICBpZiAodGhpcy5oZWFkLmlzRnVsbCgpKSB7XG4gICAgICAvLyBIZWFkIGlzIGZ1bGw6IENyZWF0ZXMgYSBuZXcgcXVldWUsIHNldHMgdGhlIG9sZCBxdWV1ZSdzIGAubmV4dGAgdG8gaXQsXG4gICAgICAvLyBhbmQgc2V0cyBpdCBhcyB0aGUgbmV3IG1haW4gcXVldWUuXG4gICAgICB0aGlzLmhlYWQgPSB0aGlzLmhlYWQubmV4dCA9IG5ldyBGaXhlZENpcmN1bGFyQnVmZmVyKCk7XG4gICAgfVxuICAgIHRoaXMuaGVhZC5wdXNoKGRhdGEpO1xuICB9XG5cbiAgc2hpZnQoKSB7XG4gICAgY29uc3QgdGFpbCA9IHRoaXMudGFpbDtcbiAgICBjb25zdCBuZXh0ID0gdGFpbC5zaGlmdCgpO1xuICAgIGlmICh0YWlsLmlzRW1wdHkoKSAmJiB0YWlsLm5leHQgIT09IG51bGwpIHtcbiAgICAgIC8vIElmIHRoZXJlIGlzIGFub3RoZXIgcXVldWUsIGl0IGZvcm1zIHRoZSBuZXcgdGFpbC5cbiAgICAgIHRoaXMudGFpbCA9IHRhaWwubmV4dDtcbiAgICB9XG4gICAgcmV0dXJuIG5leHQ7XG4gIH1cbn07XG4iLCAiY29uc3QgeyBrRnJlZSwga0Nvbm5lY3RlZCwga1BlbmRpbmcsIGtRdWV1ZWQsIGtSdW5uaW5nLCBrU2l6ZSB9ID0gcmVxdWlyZSgnLi9jb3JlL3N5bWJvbHMnKVxuY29uc3Qga1Bvb2wgPSBTeW1ib2woJ3Bvb2wnKVxuXG5jbGFzcyBQb29sU3RhdHMge1xuICBjb25zdHJ1Y3RvciAocG9vbCkge1xuICAgIHRoaXNba1Bvb2xdID0gcG9vbFxuICB9XG5cbiAgZ2V0IGNvbm5lY3RlZCAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1Bvb2xdW2tDb25uZWN0ZWRdXG4gIH1cblxuICBnZXQgZnJlZSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1Bvb2xdW2tGcmVlXVxuICB9XG5cbiAgZ2V0IHBlbmRpbmcgKCkge1xuICAgIHJldHVybiB0aGlzW2tQb29sXVtrUGVuZGluZ11cbiAgfVxuXG4gIGdldCBxdWV1ZWQgKCkge1xuICAgIHJldHVybiB0aGlzW2tQb29sXVtrUXVldWVkXVxuICB9XG5cbiAgZ2V0IHJ1bm5pbmcgKCkge1xuICAgIHJldHVybiB0aGlzW2tQb29sXVtrUnVubmluZ11cbiAgfVxuXG4gIGdldCBzaXplICgpIHtcbiAgICByZXR1cm4gdGhpc1trUG9vbF1ba1NpemVdXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBQb29sU3RhdHNcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgRGlzcGF0Y2hlckJhc2UgPSByZXF1aXJlKCcuL2Rpc3BhdGNoZXItYmFzZScpXG5jb25zdCBGaXhlZFF1ZXVlID0gcmVxdWlyZSgnLi9ub2RlL2ZpeGVkLXF1ZXVlJylcbmNvbnN0IHsga0Nvbm5lY3RlZCwga1NpemUsIGtSdW5uaW5nLCBrUGVuZGluZywga1F1ZXVlZCwga0J1c3ksIGtGcmVlLCBrVXJsLCBrQ2xvc2UsIGtEZXN0cm95LCBrRGlzcGF0Y2ggfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcbmNvbnN0IFBvb2xTdGF0cyA9IHJlcXVpcmUoJy4vcG9vbC1zdGF0cycpXG5cbmNvbnN0IGtDbGllbnRzID0gU3ltYm9sKCdjbGllbnRzJylcbmNvbnN0IGtOZWVkRHJhaW4gPSBTeW1ib2woJ25lZWREcmFpbicpXG5jb25zdCBrUXVldWUgPSBTeW1ib2woJ3F1ZXVlJylcbmNvbnN0IGtDbG9zZWRSZXNvbHZlID0gU3ltYm9sKCdjbG9zZWQgcmVzb2x2ZScpXG5jb25zdCBrT25EcmFpbiA9IFN5bWJvbCgnb25EcmFpbicpXG5jb25zdCBrT25Db25uZWN0ID0gU3ltYm9sKCdvbkNvbm5lY3QnKVxuY29uc3Qga09uRGlzY29ubmVjdCA9IFN5bWJvbCgnb25EaXNjb25uZWN0JylcbmNvbnN0IGtPbkNvbm5lY3Rpb25FcnJvciA9IFN5bWJvbCgnb25Db25uZWN0aW9uRXJyb3InKVxuY29uc3Qga0dldERpc3BhdGNoZXIgPSBTeW1ib2woJ2dldCBkaXNwYXRjaGVyJylcbmNvbnN0IGtBZGRDbGllbnQgPSBTeW1ib2woJ2FkZCBjbGllbnQnKVxuY29uc3Qga1JlbW92ZUNsaWVudCA9IFN5bWJvbCgncmVtb3ZlIGNsaWVudCcpXG5jb25zdCBrU3RhdHMgPSBTeW1ib2woJ3N0YXRzJylcblxuY2xhc3MgUG9vbEJhc2UgZXh0ZW5kcyBEaXNwYXRjaGVyQmFzZSB7XG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICBzdXBlcigpXG5cbiAgICB0aGlzW2tRdWV1ZV0gPSBuZXcgRml4ZWRRdWV1ZSgpXG4gICAgdGhpc1trQ2xpZW50c10gPSBbXVxuICAgIHRoaXNba1F1ZXVlZF0gPSAwXG5cbiAgICBjb25zdCBwb29sID0gdGhpc1xuXG4gICAgdGhpc1trT25EcmFpbl0gPSBmdW5jdGlvbiBvbkRyYWluIChvcmlnaW4sIHRhcmdldHMpIHtcbiAgICAgIGNvbnN0IHF1ZXVlID0gcG9vbFtrUXVldWVdXG5cbiAgICAgIGxldCBuZWVkRHJhaW4gPSBmYWxzZVxuXG4gICAgICB3aGlsZSAoIW5lZWREcmFpbikge1xuICAgICAgICBjb25zdCBpdGVtID0gcXVldWUuc2hpZnQoKVxuICAgICAgICBpZiAoIWl0ZW0pIHtcbiAgICAgICAgICBicmVha1xuICAgICAgICB9XG4gICAgICAgIHBvb2xba1F1ZXVlZF0tLVxuICAgICAgICBuZWVkRHJhaW4gPSAhdGhpcy5kaXNwYXRjaChpdGVtLm9wdHMsIGl0ZW0uaGFuZGxlcilcbiAgICAgIH1cblxuICAgICAgdGhpc1trTmVlZERyYWluXSA9IG5lZWREcmFpblxuXG4gICAgICBpZiAoIXRoaXNba05lZWREcmFpbl0gJiYgcG9vbFtrTmVlZERyYWluXSkge1xuICAgICAgICBwb29sW2tOZWVkRHJhaW5dID0gZmFsc2VcbiAgICAgICAgcG9vbC5lbWl0KCdkcmFpbicsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdKVxuICAgICAgfVxuXG4gICAgICBpZiAocG9vbFtrQ2xvc2VkUmVzb2x2ZV0gJiYgcXVldWUuaXNFbXB0eSgpKSB7XG4gICAgICAgIFByb21pc2VcbiAgICAgICAgICAuYWxsKHBvb2xba0NsaWVudHNdLm1hcChjID0+IGMuY2xvc2UoKSkpXG4gICAgICAgICAgLnRoZW4ocG9vbFtrQ2xvc2VkUmVzb2x2ZV0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpc1trT25Db25uZWN0XSA9IChvcmlnaW4sIHRhcmdldHMpID0+IHtcbiAgICAgIHBvb2wuZW1pdCgnY29ubmVjdCcsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdKVxuICAgIH1cblxuICAgIHRoaXNba09uRGlzY29ubmVjdF0gPSAob3JpZ2luLCB0YXJnZXRzLCBlcnIpID0+IHtcbiAgICAgIHBvb2wuZW1pdCgnZGlzY29ubmVjdCcsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdLCBlcnIpXG4gICAgfVxuXG4gICAgdGhpc1trT25Db25uZWN0aW9uRXJyb3JdID0gKG9yaWdpbiwgdGFyZ2V0cywgZXJyKSA9PiB7XG4gICAgICBwb29sLmVtaXQoJ2Nvbm5lY3Rpb25FcnJvcicsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdLCBlcnIpXG4gICAgfVxuXG4gICAgdGhpc1trU3RhdHNdID0gbmV3IFBvb2xTdGF0cyh0aGlzKVxuICB9XG5cbiAgZ2V0IFtrQnVzeV0gKCkge1xuICAgIHJldHVybiB0aGlzW2tOZWVkRHJhaW5dXG4gIH1cblxuICBnZXQgW2tDb25uZWN0ZWRdICgpIHtcbiAgICByZXR1cm4gdGhpc1trQ2xpZW50c10uZmlsdGVyKGNsaWVudCA9PiBjbGllbnRba0Nvbm5lY3RlZF0pLmxlbmd0aFxuICB9XG5cbiAgZ2V0IFtrRnJlZV0gKCkge1xuICAgIHJldHVybiB0aGlzW2tDbGllbnRzXS5maWx0ZXIoY2xpZW50ID0+IGNsaWVudFtrQ29ubmVjdGVkXSAmJiAhY2xpZW50W2tOZWVkRHJhaW5dKS5sZW5ndGhcbiAgfVxuXG4gIGdldCBba1BlbmRpbmddICgpIHtcbiAgICBsZXQgcmV0ID0gdGhpc1trUXVldWVkXVxuICAgIGZvciAoY29uc3QgeyBba1BlbmRpbmddOiBwZW5kaW5nIH0gb2YgdGhpc1trQ2xpZW50c10pIHtcbiAgICAgIHJldCArPSBwZW5kaW5nXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGdldCBba1J1bm5pbmddICgpIHtcbiAgICBsZXQgcmV0ID0gMFxuICAgIGZvciAoY29uc3QgeyBba1J1bm5pbmddOiBydW5uaW5nIH0gb2YgdGhpc1trQ2xpZW50c10pIHtcbiAgICAgIHJldCArPSBydW5uaW5nXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGdldCBba1NpemVdICgpIHtcbiAgICBsZXQgcmV0ID0gdGhpc1trUXVldWVkXVxuICAgIGZvciAoY29uc3QgeyBba1NpemVdOiBzaXplIH0gb2YgdGhpc1trQ2xpZW50c10pIHtcbiAgICAgIHJldCArPSBzaXplXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGdldCBzdGF0cyAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1N0YXRzXVxuICB9XG5cbiAgYXN5bmMgW2tDbG9zZV0gKCkge1xuICAgIGlmICh0aGlzW2tRdWV1ZV0uaXNFbXB0eSgpKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGwodGhpc1trQ2xpZW50c10ubWFwKGMgPT4gYy5jbG9zZSgpKSlcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIHRoaXNba0Nsb3NlZFJlc29sdmVdID0gcmVzb2x2ZVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBhc3luYyBba0Rlc3Ryb3ldIChlcnIpIHtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgY29uc3QgaXRlbSA9IHRoaXNba1F1ZXVlXS5zaGlmdCgpXG4gICAgICBpZiAoIWl0ZW0pIHtcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICAgIGl0ZW0uaGFuZGxlci5vbkVycm9yKGVycilcbiAgICB9XG5cbiAgICByZXR1cm4gUHJvbWlzZS5hbGwodGhpc1trQ2xpZW50c10ubWFwKGMgPT4gYy5kZXN0cm95KGVycikpKVxuICB9XG5cbiAgW2tEaXNwYXRjaF0gKG9wdHMsIGhhbmRsZXIpIHtcbiAgICBjb25zdCBkaXNwYXRjaGVyID0gdGhpc1trR2V0RGlzcGF0Y2hlcl0oKVxuXG4gICAgaWYgKCFkaXNwYXRjaGVyKSB7XG4gICAgICB0aGlzW2tOZWVkRHJhaW5dID0gdHJ1ZVxuICAgICAgdGhpc1trUXVldWVdLnB1c2goeyBvcHRzLCBoYW5kbGVyIH0pXG4gICAgICB0aGlzW2tRdWV1ZWRdKytcbiAgICB9IGVsc2UgaWYgKCFkaXNwYXRjaGVyLmRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpKSB7XG4gICAgICBkaXNwYXRjaGVyW2tOZWVkRHJhaW5dID0gdHJ1ZVxuICAgICAgdGhpc1trTmVlZERyYWluXSA9ICF0aGlzW2tHZXREaXNwYXRjaGVyXSgpXG4gICAgfVxuXG4gICAgcmV0dXJuICF0aGlzW2tOZWVkRHJhaW5dXG4gIH1cblxuICBba0FkZENsaWVudF0gKGNsaWVudCkge1xuICAgIGNsaWVudFxuICAgICAgLm9uKCdkcmFpbicsIHRoaXNba09uRHJhaW5dKVxuICAgICAgLm9uKCdjb25uZWN0JywgdGhpc1trT25Db25uZWN0XSlcbiAgICAgIC5vbignZGlzY29ubmVjdCcsIHRoaXNba09uRGlzY29ubmVjdF0pXG4gICAgICAub24oJ2Nvbm5lY3Rpb25FcnJvcicsIHRoaXNba09uQ29ubmVjdGlvbkVycm9yXSlcblxuICAgIHRoaXNba0NsaWVudHNdLnB1c2goY2xpZW50KVxuXG4gICAgaWYgKHRoaXNba05lZWREcmFpbl0pIHtcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soKCkgPT4ge1xuICAgICAgICBpZiAodGhpc1trTmVlZERyYWluXSkge1xuICAgICAgICAgIHRoaXNba09uRHJhaW5dKGNsaWVudFtrVXJsXSwgW3RoaXMsIGNsaWVudF0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIFtrUmVtb3ZlQ2xpZW50XSAoY2xpZW50KSB7XG4gICAgY2xpZW50LmNsb3NlKCgpID0+IHtcbiAgICAgIGNvbnN0IGlkeCA9IHRoaXNba0NsaWVudHNdLmluZGV4T2YoY2xpZW50KVxuICAgICAgaWYgKGlkeCAhPT0gLTEpIHtcbiAgICAgICAgdGhpc1trQ2xpZW50c10uc3BsaWNlKGlkeCwgMSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgdGhpc1trTmVlZERyYWluXSA9IHRoaXNba0NsaWVudHNdLnNvbWUoZGlzcGF0Y2hlciA9PiAoXG4gICAgICAhZGlzcGF0Y2hlcltrTmVlZERyYWluXSAmJlxuICAgICAgZGlzcGF0Y2hlci5jbG9zZWQgIT09IHRydWUgJiZcbiAgICAgIGRpc3BhdGNoZXIuZGVzdHJveWVkICE9PSB0cnVlXG4gICAgKSlcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgUG9vbEJhc2UsXG4gIGtDbGllbnRzLFxuICBrTmVlZERyYWluLFxuICBrQWRkQ2xpZW50LFxuICBrUmVtb3ZlQ2xpZW50LFxuICBrR2V0RGlzcGF0Y2hlclxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIFBvb2xCYXNlLFxuICBrQ2xpZW50cyxcbiAga05lZWREcmFpbixcbiAga0FkZENsaWVudCxcbiAga0dldERpc3BhdGNoZXJcbn0gPSByZXF1aXJlKCcuL3Bvb2wtYmFzZScpXG5jb25zdCBDbGllbnQgPSByZXF1aXJlKCcuL2NsaWVudCcpXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yXG59ID0gcmVxdWlyZSgnLi9jb3JlL2Vycm9ycycpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBrVXJsLCBrSW50ZXJjZXB0b3JzIH0gPSByZXF1aXJlKCcuL2NvcmUvc3ltYm9scycpXG5jb25zdCBidWlsZENvbm5lY3RvciA9IHJlcXVpcmUoJy4vY29yZS9jb25uZWN0JylcblxuY29uc3Qga09wdGlvbnMgPSBTeW1ib2woJ29wdGlvbnMnKVxuY29uc3Qga0Nvbm5lY3Rpb25zID0gU3ltYm9sKCdjb25uZWN0aW9ucycpXG5jb25zdCBrRmFjdG9yeSA9IFN5bWJvbCgnZmFjdG9yeScpXG5cbmZ1bmN0aW9uIGRlZmF1bHRGYWN0b3J5IChvcmlnaW4sIG9wdHMpIHtcbiAgcmV0dXJuIG5ldyBDbGllbnQob3JpZ2luLCBvcHRzKVxufVxuXG5jbGFzcyBQb29sIGV4dGVuZHMgUG9vbEJhc2Uge1xuICBjb25zdHJ1Y3RvciAob3JpZ2luLCB7XG4gICAgY29ubmVjdGlvbnMsXG4gICAgZmFjdG9yeSA9IGRlZmF1bHRGYWN0b3J5LFxuICAgIGNvbm5lY3QsXG4gICAgY29ubmVjdFRpbWVvdXQsXG4gICAgdGxzLFxuICAgIG1heENhY2hlZFNlc3Npb25zLFxuICAgIHNvY2tldFBhdGgsXG4gICAgYXV0b1NlbGVjdEZhbWlseSxcbiAgICBhdXRvU2VsZWN0RmFtaWx5QXR0ZW1wdFRpbWVvdXQsXG4gICAgYWxsb3dIMixcbiAgICAuLi5vcHRpb25zXG4gIH0gPSB7fSkge1xuICAgIHN1cGVyKClcblxuICAgIGlmIChjb25uZWN0aW9ucyAhPSBudWxsICYmICghTnVtYmVyLmlzRmluaXRlKGNvbm5lY3Rpb25zKSB8fCBjb25uZWN0aW9ucyA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgY29ubmVjdGlvbnMnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZmFjdG9yeSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdmYWN0b3J5IG11c3QgYmUgYSBmdW5jdGlvbi4nKVxuICAgIH1cblxuICAgIGlmIChjb25uZWN0ICE9IG51bGwgJiYgdHlwZW9mIGNvbm5lY3QgIT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIGNvbm5lY3QgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2Nvbm5lY3QgbXVzdCBiZSBhIGZ1bmN0aW9uIG9yIGFuIG9iamVjdCcpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25uZWN0ICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25uZWN0ID0gYnVpbGRDb25uZWN0b3Ioe1xuICAgICAgICAuLi50bHMsXG4gICAgICAgIG1heENhY2hlZFNlc3Npb25zLFxuICAgICAgICBhbGxvd0gyLFxuICAgICAgICBzb2NrZXRQYXRoLFxuICAgICAgICB0aW1lb3V0OiBjb25uZWN0VGltZW91dCxcbiAgICAgICAgLi4uKHV0aWwubm9kZUhhc0F1dG9TZWxlY3RGYW1pbHkgJiYgYXV0b1NlbGVjdEZhbWlseSA/IHsgYXV0b1NlbGVjdEZhbWlseSwgYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IH0gOiB1bmRlZmluZWQpLFxuICAgICAgICAuLi5jb25uZWN0XG4gICAgICB9KVxuICAgIH1cblxuICAgIHRoaXNba0ludGVyY2VwdG9yc10gPSBvcHRpb25zLmludGVyY2VwdG9ycyAmJiBvcHRpb25zLmludGVyY2VwdG9ycy5Qb29sICYmIEFycmF5LmlzQXJyYXkob3B0aW9ucy5pbnRlcmNlcHRvcnMuUG9vbClcbiAgICAgID8gb3B0aW9ucy5pbnRlcmNlcHRvcnMuUG9vbFxuICAgICAgOiBbXVxuICAgIHRoaXNba0Nvbm5lY3Rpb25zXSA9IGNvbm5lY3Rpb25zIHx8IG51bGxcbiAgICB0aGlzW2tVcmxdID0gdXRpbC5wYXJzZU9yaWdpbihvcmlnaW4pXG4gICAgdGhpc1trT3B0aW9uc10gPSB7IC4uLnV0aWwuZGVlcENsb25lKG9wdGlvbnMpLCBjb25uZWN0LCBhbGxvd0gyIH1cbiAgICB0aGlzW2tPcHRpb25zXS5pbnRlcmNlcHRvcnMgPSBvcHRpb25zLmludGVyY2VwdG9yc1xuICAgICAgPyB7IC4uLm9wdGlvbnMuaW50ZXJjZXB0b3JzIH1cbiAgICAgIDogdW5kZWZpbmVkXG4gICAgdGhpc1trRmFjdG9yeV0gPSBmYWN0b3J5XG5cbiAgICB0aGlzLm9uKCdjb25uZWN0aW9uRXJyb3InLCAob3JpZ2luLCB0YXJnZXRzLCBlcnJvcikgPT4ge1xuICAgICAgLy8gSWYgYSBjb25uZWN0aW9uIGVycm9yIG9jY3Vycywgd2UgcmVtb3ZlIHRoZSBjbGllbnQgZnJvbSB0aGUgcG9vbCxcbiAgICAgIC8vIGFuZCBlbWl0IGEgY29ubmVjdGlvbkVycm9yIGV2ZW50LiBUaGV5IHdpbGwgbm90IGJlIHJlLXVzZWQuXG4gICAgICAvLyBGaXhlcyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL3VuZGljaS9pc3N1ZXMvMzg5NVxuICAgICAgZm9yIChjb25zdCB0YXJnZXQgb2YgdGFyZ2V0cykge1xuICAgICAgICAvLyBEbyBub3QgdXNlIGtSZW1vdmVDbGllbnQgaGVyZSwgYXMgaXQgd2lsbCBjbG9zZSB0aGUgY2xpZW50LFxuICAgICAgICAvLyBidXQgdGhlIGNsaWVudCBjYW5ub3QgYmUgY2xvc2VkIGluIHRoaXMgc3RhdGUuXG4gICAgICAgIGNvbnN0IGlkeCA9IHRoaXNba0NsaWVudHNdLmluZGV4T2YodGFyZ2V0KVxuICAgICAgICBpZiAoaWR4ICE9PSAtMSkge1xuICAgICAgICAgIHRoaXNba0NsaWVudHNdLnNwbGljZShpZHgsIDEpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgW2tHZXREaXNwYXRjaGVyXSAoKSB7XG4gICAgbGV0IGRpc3BhdGNoZXIgPSB0aGlzW2tDbGllbnRzXS5maW5kKGRpc3BhdGNoZXIgPT4gIWRpc3BhdGNoZXJba05lZWREcmFpbl0pXG5cbiAgICBpZiAoZGlzcGF0Y2hlcikge1xuICAgICAgcmV0dXJuIGRpc3BhdGNoZXJcbiAgICB9XG5cbiAgICBpZiAoIXRoaXNba0Nvbm5lY3Rpb25zXSB8fCB0aGlzW2tDbGllbnRzXS5sZW5ndGggPCB0aGlzW2tDb25uZWN0aW9uc10pIHtcbiAgICAgIGRpc3BhdGNoZXIgPSB0aGlzW2tGYWN0b3J5XSh0aGlzW2tVcmxdLCB0aGlzW2tPcHRpb25zXSlcbiAgICAgIHRoaXNba0FkZENsaWVudF0oZGlzcGF0Y2hlcilcbiAgICB9XG5cbiAgICByZXR1cm4gZGlzcGF0Y2hlclxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gUG9vbFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIEJhbGFuY2VkUG9vbE1pc3NpbmdVcHN0cmVhbUVycm9yLFxuICBJbnZhbGlkQXJndW1lbnRFcnJvclxufSA9IHJlcXVpcmUoJy4vY29yZS9lcnJvcnMnKVxuY29uc3Qge1xuICBQb29sQmFzZSxcbiAga0NsaWVudHMsXG4gIGtOZWVkRHJhaW4sXG4gIGtBZGRDbGllbnQsXG4gIGtSZW1vdmVDbGllbnQsXG4gIGtHZXREaXNwYXRjaGVyXG59ID0gcmVxdWlyZSgnLi9wb29sLWJhc2UnKVxuY29uc3QgUG9vbCA9IHJlcXVpcmUoJy4vcG9vbCcpXG5jb25zdCB7IGtVcmwsIGtJbnRlcmNlcHRvcnMgfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcbmNvbnN0IHsgcGFyc2VPcmlnaW4gfSA9IHJlcXVpcmUoJy4vY29yZS91dGlsJylcbmNvbnN0IGtGYWN0b3J5ID0gU3ltYm9sKCdmYWN0b3J5JylcblxuY29uc3Qga09wdGlvbnMgPSBTeW1ib2woJ29wdGlvbnMnKVxuY29uc3Qga0dyZWF0ZXN0Q29tbW9uRGl2aXNvciA9IFN5bWJvbCgna0dyZWF0ZXN0Q29tbW9uRGl2aXNvcicpXG5jb25zdCBrQ3VycmVudFdlaWdodCA9IFN5bWJvbCgna0N1cnJlbnRXZWlnaHQnKVxuY29uc3Qga0luZGV4ID0gU3ltYm9sKCdrSW5kZXgnKVxuY29uc3Qga1dlaWdodCA9IFN5bWJvbCgna1dlaWdodCcpXG5jb25zdCBrTWF4V2VpZ2h0UGVyU2VydmVyID0gU3ltYm9sKCdrTWF4V2VpZ2h0UGVyU2VydmVyJylcbmNvbnN0IGtFcnJvclBlbmFsdHkgPSBTeW1ib2woJ2tFcnJvclBlbmFsdHknKVxuXG5mdW5jdGlvbiBnZXRHcmVhdGVzdENvbW1vbkRpdmlzb3IgKGEsIGIpIHtcbiAgaWYgKGIgPT09IDApIHJldHVybiBhXG4gIHJldHVybiBnZXRHcmVhdGVzdENvbW1vbkRpdmlzb3IoYiwgYSAlIGIpXG59XG5cbmZ1bmN0aW9uIGRlZmF1bHRGYWN0b3J5IChvcmlnaW4sIG9wdHMpIHtcbiAgcmV0dXJuIG5ldyBQb29sKG9yaWdpbiwgb3B0cylcbn1cblxuY2xhc3MgQmFsYW5jZWRQb29sIGV4dGVuZHMgUG9vbEJhc2Uge1xuICBjb25zdHJ1Y3RvciAodXBzdHJlYW1zID0gW10sIHsgZmFjdG9yeSA9IGRlZmF1bHRGYWN0b3J5LCAuLi5vcHRzIH0gPSB7fSkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXNba09wdGlvbnNdID0gb3B0c1xuICAgIHRoaXNba0luZGV4XSA9IC0xXG4gICAgdGhpc1trQ3VycmVudFdlaWdodF0gPSAwXG5cbiAgICB0aGlzW2tNYXhXZWlnaHRQZXJTZXJ2ZXJdID0gdGhpc1trT3B0aW9uc10ubWF4V2VpZ2h0UGVyU2VydmVyIHx8IDEwMFxuICAgIHRoaXNba0Vycm9yUGVuYWx0eV0gPSB0aGlzW2tPcHRpb25zXS5lcnJvclBlbmFsdHkgfHwgMTVcblxuICAgIGlmICghQXJyYXkuaXNBcnJheSh1cHN0cmVhbXMpKSB7XG4gICAgICB1cHN0cmVhbXMgPSBbdXBzdHJlYW1zXVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZmFjdG9yeSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdmYWN0b3J5IG11c3QgYmUgYSBmdW5jdGlvbi4nKVxuICAgIH1cblxuICAgIHRoaXNba0ludGVyY2VwdG9yc10gPSBvcHRzLmludGVyY2VwdG9ycyAmJiBvcHRzLmludGVyY2VwdG9ycy5CYWxhbmNlZFBvb2wgJiYgQXJyYXkuaXNBcnJheShvcHRzLmludGVyY2VwdG9ycy5CYWxhbmNlZFBvb2wpXG4gICAgICA/IG9wdHMuaW50ZXJjZXB0b3JzLkJhbGFuY2VkUG9vbFxuICAgICAgOiBbXVxuICAgIHRoaXNba0ZhY3RvcnldID0gZmFjdG9yeVxuXG4gICAgZm9yIChjb25zdCB1cHN0cmVhbSBvZiB1cHN0cmVhbXMpIHtcbiAgICAgIHRoaXMuYWRkVXBzdHJlYW0odXBzdHJlYW0pXG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZUJhbGFuY2VkUG9vbFN0YXRzKClcbiAgfVxuXG4gIGFkZFVwc3RyZWFtICh1cHN0cmVhbSkge1xuICAgIGNvbnN0IHVwc3RyZWFtT3JpZ2luID0gcGFyc2VPcmlnaW4odXBzdHJlYW0pLm9yaWdpblxuXG4gICAgaWYgKHRoaXNba0NsaWVudHNdLmZpbmQoKHBvb2wpID0+IChcbiAgICAgIHBvb2xba1VybF0ub3JpZ2luID09PSB1cHN0cmVhbU9yaWdpbiAmJlxuICAgICAgcG9vbC5jbG9zZWQgIT09IHRydWUgJiZcbiAgICAgIHBvb2wuZGVzdHJveWVkICE9PSB0cnVlXG4gICAgKSkpIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuICAgIGNvbnN0IHBvb2wgPSB0aGlzW2tGYWN0b3J5XSh1cHN0cmVhbU9yaWdpbiwgT2JqZWN0LmFzc2lnbih7fSwgdGhpc1trT3B0aW9uc10pKVxuXG4gICAgdGhpc1trQWRkQ2xpZW50XShwb29sKVxuICAgIHBvb2wub24oJ2Nvbm5lY3QnLCAoKSA9PiB7XG4gICAgICBwb29sW2tXZWlnaHRdID0gTWF0aC5taW4odGhpc1trTWF4V2VpZ2h0UGVyU2VydmVyXSwgcG9vbFtrV2VpZ2h0XSArIHRoaXNba0Vycm9yUGVuYWx0eV0pXG4gICAgfSlcblxuICAgIHBvb2wub24oJ2Nvbm5lY3Rpb25FcnJvcicsICgpID0+IHtcbiAgICAgIHBvb2xba1dlaWdodF0gPSBNYXRoLm1heCgxLCBwb29sW2tXZWlnaHRdIC0gdGhpc1trRXJyb3JQZW5hbHR5XSlcbiAgICAgIHRoaXMuX3VwZGF0ZUJhbGFuY2VkUG9vbFN0YXRzKClcbiAgICB9KVxuXG4gICAgcG9vbC5vbignZGlzY29ubmVjdCcsICguLi5hcmdzKSA9PiB7XG4gICAgICBjb25zdCBlcnIgPSBhcmdzWzJdXG4gICAgICBpZiAoZXJyICYmIGVyci5jb2RlID09PSAnVU5EX0VSUl9TT0NLRVQnKSB7XG4gICAgICAgIC8vIGRlY3JlYXNlIHRoZSB3ZWlnaHQgb2YgdGhlIHBvb2wuXG4gICAgICAgIHBvb2xba1dlaWdodF0gPSBNYXRoLm1heCgxLCBwb29sW2tXZWlnaHRdIC0gdGhpc1trRXJyb3JQZW5hbHR5XSlcbiAgICAgICAgdGhpcy5fdXBkYXRlQmFsYW5jZWRQb29sU3RhdHMoKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICBmb3IgKGNvbnN0IGNsaWVudCBvZiB0aGlzW2tDbGllbnRzXSkge1xuICAgICAgY2xpZW50W2tXZWlnaHRdID0gdGhpc1trTWF4V2VpZ2h0UGVyU2VydmVyXVxuICAgIH1cblxuICAgIHRoaXMuX3VwZGF0ZUJhbGFuY2VkUG9vbFN0YXRzKClcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBfdXBkYXRlQmFsYW5jZWRQb29sU3RhdHMgKCkge1xuICAgIHRoaXNba0dyZWF0ZXN0Q29tbW9uRGl2aXNvcl0gPSB0aGlzW2tDbGllbnRzXS5tYXAocCA9PiBwW2tXZWlnaHRdKS5yZWR1Y2UoZ2V0R3JlYXRlc3RDb21tb25EaXZpc29yLCAwKVxuICB9XG5cbiAgcmVtb3ZlVXBzdHJlYW0gKHVwc3RyZWFtKSB7XG4gICAgY29uc3QgdXBzdHJlYW1PcmlnaW4gPSBwYXJzZU9yaWdpbih1cHN0cmVhbSkub3JpZ2luXG5cbiAgICBjb25zdCBwb29sID0gdGhpc1trQ2xpZW50c10uZmluZCgocG9vbCkgPT4gKFxuICAgICAgcG9vbFtrVXJsXS5vcmlnaW4gPT09IHVwc3RyZWFtT3JpZ2luICYmXG4gICAgICBwb29sLmNsb3NlZCAhPT0gdHJ1ZSAmJlxuICAgICAgcG9vbC5kZXN0cm95ZWQgIT09IHRydWVcbiAgICApKVxuXG4gICAgaWYgKHBvb2wpIHtcbiAgICAgIHRoaXNba1JlbW92ZUNsaWVudF0ocG9vbClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgZ2V0IHVwc3RyZWFtcyAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0NsaWVudHNdXG4gICAgICAuZmlsdGVyKGRpc3BhdGNoZXIgPT4gZGlzcGF0Y2hlci5jbG9zZWQgIT09IHRydWUgJiYgZGlzcGF0Y2hlci5kZXN0cm95ZWQgIT09IHRydWUpXG4gICAgICAubWFwKChwKSA9PiBwW2tVcmxdLm9yaWdpbilcbiAgfVxuXG4gIFtrR2V0RGlzcGF0Y2hlcl0gKCkge1xuICAgIC8vIFdlIHZhbGlkYXRlIHRoYXQgcG9vbHMgaXMgZ3JlYXRlciB0aGFuIDAsXG4gICAgLy8gb3RoZXJ3aXNlIHdlIHdvdWxkIGhhdmUgdG8gd2FpdCB1bnRpbCBhbiB1cHN0cmVhbVxuICAgIC8vIGlzIGFkZGVkLCB3aGljaCBtaWdodCBuZXZlciBoYXBwZW4uXG4gICAgaWYgKHRoaXNba0NsaWVudHNdLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEJhbGFuY2VkUG9vbE1pc3NpbmdVcHN0cmVhbUVycm9yKClcbiAgICB9XG5cbiAgICBjb25zdCBkaXNwYXRjaGVyID0gdGhpc1trQ2xpZW50c10uZmluZChkaXNwYXRjaGVyID0+IChcbiAgICAgICFkaXNwYXRjaGVyW2tOZWVkRHJhaW5dICYmXG4gICAgICBkaXNwYXRjaGVyLmNsb3NlZCAhPT0gdHJ1ZSAmJlxuICAgICAgZGlzcGF0Y2hlci5kZXN0cm95ZWQgIT09IHRydWVcbiAgICApKVxuXG4gICAgaWYgKCFkaXNwYXRjaGVyKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBhbGxDbGllbnRzQnVzeSA9IHRoaXNba0NsaWVudHNdLm1hcChwb29sID0+IHBvb2xba05lZWREcmFpbl0pLnJlZHVjZSgoYSwgYikgPT4gYSAmJiBiLCB0cnVlKVxuXG4gICAgaWYgKGFsbENsaWVudHNCdXN5KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBsZXQgY291bnRlciA9IDBcblxuICAgIGxldCBtYXhXZWlnaHRJbmRleCA9IHRoaXNba0NsaWVudHNdLmZpbmRJbmRleChwb29sID0+ICFwb29sW2tOZWVkRHJhaW5dKVxuXG4gICAgd2hpbGUgKGNvdW50ZXIrKyA8IHRoaXNba0NsaWVudHNdLmxlbmd0aCkge1xuICAgICAgdGhpc1trSW5kZXhdID0gKHRoaXNba0luZGV4XSArIDEpICUgdGhpc1trQ2xpZW50c10ubGVuZ3RoXG4gICAgICBjb25zdCBwb29sID0gdGhpc1trQ2xpZW50c11bdGhpc1trSW5kZXhdXVxuXG4gICAgICAvLyBmaW5kIHBvb2wgaW5kZXggd2l0aCB0aGUgbGFyZ2VzdCB3ZWlnaHRcbiAgICAgIGlmIChwb29sW2tXZWlnaHRdID4gdGhpc1trQ2xpZW50c11bbWF4V2VpZ2h0SW5kZXhdW2tXZWlnaHRdICYmICFwb29sW2tOZWVkRHJhaW5dKSB7XG4gICAgICAgIG1heFdlaWdodEluZGV4ID0gdGhpc1trSW5kZXhdXG4gICAgICB9XG5cbiAgICAgIC8vIGRlY3JlYXNlIHRoZSBjdXJyZW50IHdlaWdodCBldmVyeSBgdGhpc1trQ2xpZW50c10ubGVuZ3RoYC5cbiAgICAgIGlmICh0aGlzW2tJbmRleF0gPT09IDApIHtcbiAgICAgICAgLy8gU2V0IHRoZSBjdXJyZW50IHdlaWdodCB0byB0aGUgbmV4dCBsb3dlciB3ZWlnaHQuXG4gICAgICAgIHRoaXNba0N1cnJlbnRXZWlnaHRdID0gdGhpc1trQ3VycmVudFdlaWdodF0gLSB0aGlzW2tHcmVhdGVzdENvbW1vbkRpdmlzb3JdXG5cbiAgICAgICAgaWYgKHRoaXNba0N1cnJlbnRXZWlnaHRdIDw9IDApIHtcbiAgICAgICAgICB0aGlzW2tDdXJyZW50V2VpZ2h0XSA9IHRoaXNba01heFdlaWdodFBlclNlcnZlcl1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHBvb2xba1dlaWdodF0gPj0gdGhpc1trQ3VycmVudFdlaWdodF0gJiYgKCFwb29sW2tOZWVkRHJhaW5dKSkge1xuICAgICAgICByZXR1cm4gcG9vbFxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXNba0N1cnJlbnRXZWlnaHRdID0gdGhpc1trQ2xpZW50c11bbWF4V2VpZ2h0SW5kZXhdW2tXZWlnaHRdXG4gICAgdGhpc1trSW5kZXhdID0gbWF4V2VpZ2h0SW5kZXhcbiAgICByZXR1cm4gdGhpc1trQ2xpZW50c11bbWF4V2VpZ2h0SW5kZXhdXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBCYWxhbmNlZFBvb2xcbiIsICIndXNlIHN0cmljdCdcblxuLyogaXN0YW5idWwgaWdub3JlIGZpbGU6IG9ubHkgZm9yIE5vZGUgMTIgKi9cblxuY29uc3QgeyBrQ29ubmVjdGVkLCBrU2l6ZSB9ID0gcmVxdWlyZSgnLi4vY29yZS9zeW1ib2xzJylcblxuY2xhc3MgQ29tcGF0V2Vha1JlZiB7XG4gIGNvbnN0cnVjdG9yICh2YWx1ZSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZVxuICB9XG5cbiAgZGVyZWYgKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlW2tDb25uZWN0ZWRdID09PSAwICYmIHRoaXMudmFsdWVba1NpemVdID09PSAwXG4gICAgICA/IHVuZGVmaW5lZFxuICAgICAgOiB0aGlzLnZhbHVlXG4gIH1cbn1cblxuY2xhc3MgQ29tcGF0RmluYWxpemVyIHtcbiAgY29uc3RydWN0b3IgKGZpbmFsaXplcikge1xuICAgIHRoaXMuZmluYWxpemVyID0gZmluYWxpemVyXG4gIH1cblxuICByZWdpc3RlciAoZGlzcGF0Y2hlciwga2V5KSB7XG4gICAgaWYgKGRpc3BhdGNoZXIub24pIHtcbiAgICAgIGRpc3BhdGNoZXIub24oJ2Rpc2Nvbm5lY3QnLCAoKSA9PiB7XG4gICAgICAgIGlmIChkaXNwYXRjaGVyW2tDb25uZWN0ZWRdID09PSAwICYmIGRpc3BhdGNoZXJba1NpemVdID09PSAwKSB7XG4gICAgICAgICAgdGhpcy5maW5hbGl6ZXIoa2V5KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICgpIHtcbiAgLy8gRklYTUU6IHJlbW92ZSB3b3JrYXJvdW5kIHdoZW4gdGhlIE5vZGUgYnVnIGlzIGZpeGVkXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9pc3N1ZXMvNDkzNDQjaXNzdWVjb21tZW50LTE3NDE3NzYzMDhcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfVjhfQ09WRVJBR0UpIHtcbiAgICByZXR1cm4ge1xuICAgICAgV2Vha1JlZjogQ29tcGF0V2Vha1JlZixcbiAgICAgIEZpbmFsaXphdGlvblJlZ2lzdHJ5OiBDb21wYXRGaW5hbGl6ZXJcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBXZWFrUmVmOiBnbG9iYWwuV2Vha1JlZiB8fCBDb21wYXRXZWFrUmVmLFxuICAgIEZpbmFsaXphdGlvblJlZ2lzdHJ5OiBnbG9iYWwuRmluYWxpemF0aW9uUmVnaXN0cnkgfHwgQ29tcGF0RmluYWxpemVyXG4gIH1cbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gcmVxdWlyZSgnLi9jb3JlL2Vycm9ycycpXG5jb25zdCB7IGtDbGllbnRzLCBrUnVubmluZywga0Nsb3NlLCBrRGVzdHJveSwga0Rpc3BhdGNoLCBrSW50ZXJjZXB0b3JzIH0gPSByZXF1aXJlKCcuL2NvcmUvc3ltYm9scycpXG5jb25zdCBEaXNwYXRjaGVyQmFzZSA9IHJlcXVpcmUoJy4vZGlzcGF0Y2hlci1iYXNlJylcbmNvbnN0IFBvb2wgPSByZXF1aXJlKCcuL3Bvb2wnKVxuY29uc3QgQ2xpZW50ID0gcmVxdWlyZSgnLi9jbGllbnQnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4vY29yZS91dGlsJylcbmNvbnN0IGNyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IgPSByZXF1aXJlKCcuL2ludGVyY2VwdG9yL3JlZGlyZWN0SW50ZXJjZXB0b3InKVxuY29uc3QgeyBXZWFrUmVmLCBGaW5hbGl6YXRpb25SZWdpc3RyeSB9ID0gcmVxdWlyZSgnLi9jb21wYXQvZGlzcGF0Y2hlci13ZWFrcmVmJykoKVxuXG5jb25zdCBrT25Db25uZWN0ID0gU3ltYm9sKCdvbkNvbm5lY3QnKVxuY29uc3Qga09uRGlzY29ubmVjdCA9IFN5bWJvbCgnb25EaXNjb25uZWN0JylcbmNvbnN0IGtPbkNvbm5lY3Rpb25FcnJvciA9IFN5bWJvbCgnb25Db25uZWN0aW9uRXJyb3InKVxuY29uc3Qga01heFJlZGlyZWN0aW9ucyA9IFN5bWJvbCgnbWF4UmVkaXJlY3Rpb25zJylcbmNvbnN0IGtPbkRyYWluID0gU3ltYm9sKCdvbkRyYWluJylcbmNvbnN0IGtGYWN0b3J5ID0gU3ltYm9sKCdmYWN0b3J5JylcbmNvbnN0IGtGaW5hbGl6ZXIgPSBTeW1ib2woJ2ZpbmFsaXplcicpXG5jb25zdCBrT3B0aW9ucyA9IFN5bWJvbCgnb3B0aW9ucycpXG5cbmZ1bmN0aW9uIGRlZmF1bHRGYWN0b3J5IChvcmlnaW4sIG9wdHMpIHtcbiAgcmV0dXJuIG9wdHMgJiYgb3B0cy5jb25uZWN0aW9ucyA9PT0gMVxuICAgID8gbmV3IENsaWVudChvcmlnaW4sIG9wdHMpXG4gICAgOiBuZXcgUG9vbChvcmlnaW4sIG9wdHMpXG59XG5cbmNsYXNzIEFnZW50IGV4dGVuZHMgRGlzcGF0Y2hlckJhc2Uge1xuICBjb25zdHJ1Y3RvciAoeyBmYWN0b3J5ID0gZGVmYXVsdEZhY3RvcnksIG1heFJlZGlyZWN0aW9ucyA9IDAsIGNvbm5lY3QsIC4uLm9wdGlvbnMgfSA9IHt9KSB7XG4gICAgc3VwZXIoKVxuXG4gICAgaWYgKHR5cGVvZiBmYWN0b3J5ICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ZhY3RvcnkgbXVzdCBiZSBhIGZ1bmN0aW9uLicpXG4gICAgfVxuXG4gICAgaWYgKGNvbm5lY3QgIT0gbnVsbCAmJiB0eXBlb2YgY29ubmVjdCAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgY29ubmVjdCAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY29ubmVjdCBtdXN0IGJlIGEgZnVuY3Rpb24gb3IgYW4gb2JqZWN0JylcbiAgICB9XG5cbiAgICBpZiAoIU51bWJlci5pc0ludGVnZXIobWF4UmVkaXJlY3Rpb25zKSB8fCBtYXhSZWRpcmVjdGlvbnMgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ21heFJlZGlyZWN0aW9ucyBtdXN0IGJlIGEgcG9zaXRpdmUgbnVtYmVyJylcbiAgICB9XG5cbiAgICBpZiAoY29ubmVjdCAmJiB0eXBlb2YgY29ubmVjdCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29ubmVjdCA9IHsgLi4uY29ubmVjdCB9XG4gICAgfVxuXG4gICAgdGhpc1trSW50ZXJjZXB0b3JzXSA9IG9wdGlvbnMuaW50ZXJjZXB0b3JzICYmIG9wdGlvbnMuaW50ZXJjZXB0b3JzLkFnZW50ICYmIEFycmF5LmlzQXJyYXkob3B0aW9ucy5pbnRlcmNlcHRvcnMuQWdlbnQpXG4gICAgICA/IG9wdGlvbnMuaW50ZXJjZXB0b3JzLkFnZW50XG4gICAgICA6IFtjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yKHsgbWF4UmVkaXJlY3Rpb25zIH0pXVxuXG4gICAgdGhpc1trT3B0aW9uc10gPSB7IC4uLnV0aWwuZGVlcENsb25lKG9wdGlvbnMpLCBjb25uZWN0IH1cbiAgICB0aGlzW2tPcHRpb25zXS5pbnRlcmNlcHRvcnMgPSBvcHRpb25zLmludGVyY2VwdG9yc1xuICAgICAgPyB7IC4uLm9wdGlvbnMuaW50ZXJjZXB0b3JzIH1cbiAgICAgIDogdW5kZWZpbmVkXG4gICAgdGhpc1trTWF4UmVkaXJlY3Rpb25zXSA9IG1heFJlZGlyZWN0aW9uc1xuICAgIHRoaXNba0ZhY3RvcnldID0gZmFjdG9yeVxuICAgIHRoaXNba0NsaWVudHNdID0gbmV3IE1hcCgpXG4gICAgdGhpc1trRmluYWxpemVyXSA9IG5ldyBGaW5hbGl6YXRpb25SZWdpc3RyeSgvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dDogZ2MgaXMgdW5kZXRlcm1pbmlzdGljICovIGtleSA9PiB7XG4gICAgICBjb25zdCByZWYgPSB0aGlzW2tDbGllbnRzXS5nZXQoa2V5KVxuICAgICAgaWYgKHJlZiAhPT0gdW5kZWZpbmVkICYmIHJlZi5kZXJlZigpID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpc1trQ2xpZW50c10uZGVsZXRlKGtleSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgY29uc3QgYWdlbnQgPSB0aGlzXG5cbiAgICB0aGlzW2tPbkRyYWluXSA9IChvcmlnaW4sIHRhcmdldHMpID0+IHtcbiAgICAgIGFnZW50LmVtaXQoJ2RyYWluJywgb3JpZ2luLCBbYWdlbnQsIC4uLnRhcmdldHNdKVxuICAgIH1cblxuICAgIHRoaXNba09uQ29ubmVjdF0gPSAob3JpZ2luLCB0YXJnZXRzKSA9PiB7XG4gICAgICBhZ2VudC5lbWl0KCdjb25uZWN0Jywgb3JpZ2luLCBbYWdlbnQsIC4uLnRhcmdldHNdKVxuICAgIH1cblxuICAgIHRoaXNba09uRGlzY29ubmVjdF0gPSAob3JpZ2luLCB0YXJnZXRzLCBlcnIpID0+IHtcbiAgICAgIGFnZW50LmVtaXQoJ2Rpc2Nvbm5lY3QnLCBvcmlnaW4sIFthZ2VudCwgLi4udGFyZ2V0c10sIGVycilcbiAgICB9XG5cbiAgICB0aGlzW2tPbkNvbm5lY3Rpb25FcnJvcl0gPSAob3JpZ2luLCB0YXJnZXRzLCBlcnIpID0+IHtcbiAgICAgIGFnZW50LmVtaXQoJ2Nvbm5lY3Rpb25FcnJvcicsIG9yaWdpbiwgW2FnZW50LCAuLi50YXJnZXRzXSwgZXJyKVxuICAgIH1cbiAgfVxuXG4gIGdldCBba1J1bm5pbmddICgpIHtcbiAgICBsZXQgcmV0ID0gMFxuICAgIGZvciAoY29uc3QgcmVmIG9mIHRoaXNba0NsaWVudHNdLnZhbHVlcygpKSB7XG4gICAgICBjb25zdCBjbGllbnQgPSByZWYuZGVyZWYoKVxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGdjIGlzIHVuZGV0ZXJtaW5pc3RpYyAqL1xuICAgICAgaWYgKGNsaWVudCkge1xuICAgICAgICByZXQgKz0gY2xpZW50W2tSdW5uaW5nXVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmV0XG4gIH1cblxuICBba0Rpc3BhdGNoXSAob3B0cywgaGFuZGxlcikge1xuICAgIGxldCBrZXlcbiAgICBpZiAob3B0cy5vcmlnaW4gJiYgKHR5cGVvZiBvcHRzLm9yaWdpbiA9PT0gJ3N0cmluZycgfHwgb3B0cy5vcmlnaW4gaW5zdGFuY2VvZiBVUkwpKSB7XG4gICAgICBrZXkgPSBTdHJpbmcob3B0cy5vcmlnaW4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignb3B0cy5vcmlnaW4gbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcgb3IgVVJMLicpXG4gICAgfVxuXG4gICAgY29uc3QgcmVmID0gdGhpc1trQ2xpZW50c10uZ2V0KGtleSlcblxuICAgIGxldCBkaXNwYXRjaGVyID0gcmVmID8gcmVmLmRlcmVmKCkgOiBudWxsXG4gICAgaWYgKCFkaXNwYXRjaGVyKSB7XG4gICAgICBkaXNwYXRjaGVyID0gdGhpc1trRmFjdG9yeV0ob3B0cy5vcmlnaW4sIHRoaXNba09wdGlvbnNdKVxuICAgICAgICAub24oJ2RyYWluJywgdGhpc1trT25EcmFpbl0pXG4gICAgICAgIC5vbignY29ubmVjdCcsIHRoaXNba09uQ29ubmVjdF0pXG4gICAgICAgIC5vbignZGlzY29ubmVjdCcsIHRoaXNba09uRGlzY29ubmVjdF0pXG4gICAgICAgIC5vbignY29ubmVjdGlvbkVycm9yJywgdGhpc1trT25Db25uZWN0aW9uRXJyb3JdKVxuXG4gICAgICB0aGlzW2tDbGllbnRzXS5zZXQoa2V5LCBuZXcgV2Vha1JlZihkaXNwYXRjaGVyKSlcbiAgICAgIHRoaXNba0ZpbmFsaXplcl0ucmVnaXN0ZXIoZGlzcGF0Y2hlciwga2V5KVxuICAgIH1cblxuICAgIHJldHVybiBkaXNwYXRjaGVyLmRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpXG4gIH1cblxuICBhc3luYyBba0Nsb3NlXSAoKSB7XG4gICAgY29uc3QgY2xvc2VQcm9taXNlcyA9IFtdXG4gICAgZm9yIChjb25zdCByZWYgb2YgdGhpc1trQ2xpZW50c10udmFsdWVzKCkpIHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IHJlZi5kZXJlZigpXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogZ2MgaXMgdW5kZXRlcm1pbmlzdGljICovXG4gICAgICBpZiAoY2xpZW50KSB7XG4gICAgICAgIGNsb3NlUHJvbWlzZXMucHVzaChjbGllbnQuY2xvc2UoKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChjbG9zZVByb21pc2VzKVxuICB9XG5cbiAgYXN5bmMgW2tEZXN0cm95XSAoZXJyKSB7XG4gICAgY29uc3QgZGVzdHJveVByb21pc2VzID0gW11cbiAgICBmb3IgKGNvbnN0IHJlZiBvZiB0aGlzW2tDbGllbnRzXS52YWx1ZXMoKSkge1xuICAgICAgY29uc3QgY2xpZW50ID0gcmVmLmRlcmVmKClcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBnYyBpcyB1bmRldGVybWluaXN0aWMgKi9cbiAgICAgIGlmIChjbGllbnQpIHtcbiAgICAgICAgZGVzdHJveVByb21pc2VzLnB1c2goY2xpZW50LmRlc3Ryb3koZXJyKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChkZXN0cm95UHJvbWlzZXMpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBBZ2VudFxuIiwgIi8vIFBvcnRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL3B1bGwvOTA3XG5cbid1c2Ugc3RyaWN0J1xuXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBSZWFkYWJsZSB9ID0gcmVxdWlyZSgnc3RyZWFtJylcbmNvbnN0IHsgUmVxdWVzdEFib3J0ZWRFcnJvciwgTm90U3VwcG9ydGVkRXJyb3IsIEludmFsaWRBcmd1bWVudEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHsgUmVhZGFibGVTdHJlYW1Gcm9tLCB0b1VTVlN0cmluZyB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxubGV0IEJsb2JcblxuY29uc3Qga0NvbnN1bWUgPSBTeW1ib2woJ2tDb25zdW1lJylcbmNvbnN0IGtSZWFkaW5nID0gU3ltYm9sKCdrUmVhZGluZycpXG5jb25zdCBrQm9keSA9IFN5bWJvbCgna0JvZHknKVxuY29uc3Qga0Fib3J0ID0gU3ltYm9sKCdhYm9ydCcpXG5jb25zdCBrQ29udGVudFR5cGUgPSBTeW1ib2woJ2tDb250ZW50VHlwZScpXG5cbmNvbnN0IG5vb3AgPSAoKSA9PiB7fVxuXG5tb2R1bGUuZXhwb3J0cyA9IGNsYXNzIEJvZHlSZWFkYWJsZSBleHRlbmRzIFJlYWRhYmxlIHtcbiAgY29uc3RydWN0b3IgKHtcbiAgICByZXN1bWUsXG4gICAgYWJvcnQsXG4gICAgY29udGVudFR5cGUgPSAnJyxcbiAgICBoaWdoV2F0ZXJNYXJrID0gNjQgKiAxMDI0IC8vIFNhbWUgYXMgbm9kZWpzIGZzIHN0cmVhbXMuXG4gIH0pIHtcbiAgICBzdXBlcih7XG4gICAgICBhdXRvRGVzdHJveTogdHJ1ZSxcbiAgICAgIHJlYWQ6IHJlc3VtZSxcbiAgICAgIGhpZ2hXYXRlck1hcmtcbiAgICB9KVxuXG4gICAgdGhpcy5fcmVhZGFibGVTdGF0ZS5kYXRhRW1pdHRlZCA9IGZhbHNlXG5cbiAgICB0aGlzW2tBYm9ydF0gPSBhYm9ydFxuICAgIHRoaXNba0NvbnN1bWVdID0gbnVsbFxuICAgIHRoaXNba0JvZHldID0gbnVsbFxuICAgIHRoaXNba0NvbnRlbnRUeXBlXSA9IGNvbnRlbnRUeXBlXG5cbiAgICAvLyBJcyBzdHJlYW0gYmVpbmcgY29uc3VtZWQgdGhyb3VnaCBSZWFkYWJsZSBBUEk/XG4gICAgLy8gVGhpcyBpcyBhbiBvcHRpbWl6YXRpb24gc28gdGhhdCB3ZSBhdm9pZCBjaGVja2luZ1xuICAgIC8vIGZvciAnZGF0YScgYW5kICdyZWFkYWJsZScgbGlzdGVuZXJzIGluIHRoZSBob3QgcGF0aFxuICAgIC8vIGluc2lkZSBwdXNoKCkuXG4gICAgdGhpc1trUmVhZGluZ10gPSBmYWxzZVxuICB9XG5cbiAgZGVzdHJveSAoZXJyKSB7XG4gICAgaWYgKHRoaXMuZGVzdHJveWVkKSB7XG4gICAgICAvLyBOb2RlIDwgMTZcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgaWYgKCFlcnIgJiYgIXRoaXMuX3JlYWRhYmxlU3RhdGUuZW5kRW1pdHRlZCkge1xuICAgICAgZXJyID0gbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIH1cblxuICAgIGlmIChlcnIpIHtcbiAgICAgIHRoaXNba0Fib3J0XSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHN1cGVyLmRlc3Ryb3koZXJyKVxuICB9XG5cbiAgZW1pdCAoZXYsIC4uLmFyZ3MpIHtcbiAgICBpZiAoZXYgPT09ICdkYXRhJykge1xuICAgICAgLy8gTm9kZSA8IDE2LjdcbiAgICAgIHRoaXMuX3JlYWRhYmxlU3RhdGUuZGF0YUVtaXR0ZWQgPSB0cnVlXG4gICAgfSBlbHNlIGlmIChldiA9PT0gJ2Vycm9yJykge1xuICAgICAgLy8gTm9kZSA8IDE2XG4gICAgICB0aGlzLl9yZWFkYWJsZVN0YXRlLmVycm9yRW1pdHRlZCA9IHRydWVcbiAgICB9XG4gICAgcmV0dXJuIHN1cGVyLmVtaXQoZXYsIC4uLmFyZ3MpXG4gIH1cblxuICBvbiAoZXYsIC4uLmFyZ3MpIHtcbiAgICBpZiAoZXYgPT09ICdkYXRhJyB8fCBldiA9PT0gJ3JlYWRhYmxlJykge1xuICAgICAgdGhpc1trUmVhZGluZ10gPSB0cnVlXG4gICAgfVxuICAgIHJldHVybiBzdXBlci5vbihldiwgLi4uYXJncylcbiAgfVxuXG4gIGFkZExpc3RlbmVyIChldiwgLi4uYXJncykge1xuICAgIHJldHVybiB0aGlzLm9uKGV2LCAuLi5hcmdzKVxuICB9XG5cbiAgb2ZmIChldiwgLi4uYXJncykge1xuICAgIGNvbnN0IHJldCA9IHN1cGVyLm9mZihldiwgLi4uYXJncylcbiAgICBpZiAoZXYgPT09ICdkYXRhJyB8fCBldiA9PT0gJ3JlYWRhYmxlJykge1xuICAgICAgdGhpc1trUmVhZGluZ10gPSAoXG4gICAgICAgIHRoaXMubGlzdGVuZXJDb3VudCgnZGF0YScpID4gMCB8fFxuICAgICAgICB0aGlzLmxpc3RlbmVyQ291bnQoJ3JlYWRhYmxlJykgPiAwXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIHJlbW92ZUxpc3RlbmVyIChldiwgLi4uYXJncykge1xuICAgIHJldHVybiB0aGlzLm9mZihldiwgLi4uYXJncylcbiAgfVxuXG4gIHB1c2ggKGNodW5rKSB7XG4gICAgaWYgKHRoaXNba0NvbnN1bWVdICYmIGNodW5rICE9PSBudWxsICYmIHRoaXMucmVhZGFibGVMZW5ndGggPT09IDApIHtcbiAgICAgIGNvbnN1bWVQdXNoKHRoaXNba0NvbnN1bWVdLCBjaHVuaylcbiAgICAgIHJldHVybiB0aGlzW2tSZWFkaW5nXSA/IHN1cGVyLnB1c2goY2h1bmspIDogdHJ1ZVxuICAgIH1cbiAgICByZXR1cm4gc3VwZXIucHVzaChjaHVuaylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS10ZXh0XG4gIGFzeW5jIHRleHQgKCkge1xuICAgIHJldHVybiBjb25zdW1lKHRoaXMsICd0ZXh0JylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1qc29uXG4gIGFzeW5jIGpzb24gKCkge1xuICAgIHJldHVybiBjb25zdW1lKHRoaXMsICdqc29uJylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1ibG9iXG4gIGFzeW5jIGJsb2IgKCkge1xuICAgIHJldHVybiBjb25zdW1lKHRoaXMsICdibG9iJylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1hcnJheWJ1ZmZlclxuICBhc3luYyBhcnJheUJ1ZmZlciAoKSB7XG4gICAgcmV0dXJuIGNvbnN1bWUodGhpcywgJ2FycmF5QnVmZmVyJylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1mb3JtZGF0YVxuICBhc3luYyBmb3JtRGF0YSAoKSB7XG4gICAgLy8gVE9ETzogSW1wbGVtZW50LlxuICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWRFcnJvcigpXG4gIH1cblxuICAvLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZG9tLWJvZHktYm9keXVzZWRcbiAgZ2V0IGJvZHlVc2VkICgpIHtcbiAgICByZXR1cm4gdXRpbC5pc0Rpc3R1cmJlZCh0aGlzKVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1ib2R5LWJvZHlcbiAgZ2V0IGJvZHkgKCkge1xuICAgIGlmICghdGhpc1trQm9keV0pIHtcbiAgICAgIHRoaXNba0JvZHldID0gUmVhZGFibGVTdHJlYW1Gcm9tKHRoaXMpXG4gICAgICBpZiAodGhpc1trQ29uc3VtZV0pIHtcbiAgICAgICAgLy8gVE9ETzogSXMgdGhpcyB0aGUgYmVzdCB3YXkgdG8gZm9yY2UgYSBsb2NrP1xuICAgICAgICB0aGlzW2tCb2R5XS5nZXRSZWFkZXIoKSAvLyBFbnN1cmUgc3RyZWFtIGlzIGxvY2tlZC5cbiAgICAgICAgYXNzZXJ0KHRoaXNba0JvZHldLmxvY2tlZClcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXNba0JvZHldXG4gIH1cblxuICBkdW1wIChvcHRzKSB7XG4gICAgbGV0IGxpbWl0ID0gb3B0cyAmJiBOdW1iZXIuaXNGaW5pdGUob3B0cy5saW1pdCkgPyBvcHRzLmxpbWl0IDogMjYyMTQ0XG4gICAgY29uc3Qgc2lnbmFsID0gb3B0cyAmJiBvcHRzLnNpZ25hbFxuXG4gICAgaWYgKHNpZ25hbCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzaWduYWwgIT09ICdvYmplY3QnIHx8ICEoJ2Fib3J0ZWQnIGluIHNpZ25hbCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3NpZ25hbCBtdXN0IGJlIGFuIEFib3J0U2lnbmFsJylcbiAgICAgICAgfVxuICAgICAgICB1dGlsLnRocm93SWZBYm9ydGVkKHNpZ25hbClcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmNsb3NlZCkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKVxuICAgIH1cblxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBzaWduYWxMaXN0ZW5lckNsZWFudXAgPSBzaWduYWxcbiAgICAgICAgPyB1dGlsLmFkZEFib3J0TGlzdGVuZXIoc2lnbmFsLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5kZXN0cm95KClcbiAgICAgICAgfSlcbiAgICAgICAgOiBub29wXG5cbiAgICAgIHRoaXNcbiAgICAgICAgLm9uKCdjbG9zZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBzaWduYWxMaXN0ZW5lckNsZWFudXAoKVxuICAgICAgICAgIGlmIChzaWduYWwgJiYgc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgICAgICAgIHJlamVjdChzaWduYWwucmVhc29uIHx8IE9iamVjdC5hc3NpZ24obmV3IEVycm9yKCdUaGUgb3BlcmF0aW9uIHdhcyBhYm9ydGVkJyksIHsgbmFtZTogJ0Fib3J0RXJyb3InIH0pKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXNvbHZlKG51bGwpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAub24oJ2Vycm9yJywgbm9vcClcbiAgICAgICAgLm9uKCdkYXRhJywgZnVuY3Rpb24gKGNodW5rKSB7XG4gICAgICAgICAgbGltaXQgLT0gY2h1bmsubGVuZ3RoXG4gICAgICAgICAgaWYgKGxpbWl0IDw9IDApIHtcbiAgICAgICAgICAgIHRoaXMuZGVzdHJveSgpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAucmVzdW1lKClcbiAgICB9KVxuICB9XG59XG5cbi8vIGh0dHBzOi8vc3RyZWFtcy5zcGVjLndoYXR3Zy5vcmcvI3JlYWRhYmxlc3RyZWFtLWxvY2tlZFxuZnVuY3Rpb24gaXNMb2NrZWQgKHNlbGYpIHtcbiAgLy8gQ29uc3VtZSBpcyBhbiBpbXBsaWNpdCBsb2NrLlxuICByZXR1cm4gKHNlbGZba0JvZHldICYmIHNlbGZba0JvZHldLmxvY2tlZCA9PT0gdHJ1ZSkgfHwgc2VsZltrQ29uc3VtZV1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2JvZHktdW51c2FibGVcbmZ1bmN0aW9uIGlzVW51c2FibGUgKHNlbGYpIHtcbiAgcmV0dXJuIHV0aWwuaXNEaXN0dXJiZWQoc2VsZikgfHwgaXNMb2NrZWQoc2VsZilcbn1cblxuYXN5bmMgZnVuY3Rpb24gY29uc3VtZSAoc3RyZWFtLCB0eXBlKSB7XG4gIGlmIChpc1VudXNhYmxlKHN0cmVhbSkpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCd1bnVzYWJsZScpXG4gIH1cblxuICBhc3NlcnQoIXN0cmVhbVtrQ29uc3VtZV0pXG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBzdHJlYW1ba0NvbnN1bWVdID0ge1xuICAgICAgdHlwZSxcbiAgICAgIHN0cmVhbSxcbiAgICAgIHJlc29sdmUsXG4gICAgICByZWplY3QsXG4gICAgICBsZW5ndGg6IDAsXG4gICAgICBib2R5OiBbXVxuICAgIH1cblxuICAgIHN0cmVhbVxuICAgICAgLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgICAgY29uc3VtZUZpbmlzaCh0aGlzW2tDb25zdW1lXSwgZXJyKVxuICAgICAgfSlcbiAgICAgIC5vbignY2xvc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzW2tDb25zdW1lXS5ib2R5ICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3VtZUZpbmlzaCh0aGlzW2tDb25zdW1lXSwgbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKSlcbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgIHByb2Nlc3MubmV4dFRpY2soY29uc3VtZVN0YXJ0LCBzdHJlYW1ba0NvbnN1bWVdKVxuICB9KVxufVxuXG5mdW5jdGlvbiBjb25zdW1lU3RhcnQgKGNvbnN1bWUpIHtcbiAgaWYgKGNvbnN1bWUuYm9keSA9PT0gbnVsbCkge1xuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgeyBfcmVhZGFibGVTdGF0ZTogc3RhdGUgfSA9IGNvbnN1bWUuc3RyZWFtXG5cbiAgZm9yIChjb25zdCBjaHVuayBvZiBzdGF0ZS5idWZmZXIpIHtcbiAgICBjb25zdW1lUHVzaChjb25zdW1lLCBjaHVuaylcbiAgfVxuXG4gIGlmIChzdGF0ZS5lbmRFbWl0dGVkKSB7XG4gICAgY29uc3VtZUVuZCh0aGlzW2tDb25zdW1lXSlcbiAgfSBlbHNlIHtcbiAgICBjb25zdW1lLnN0cmVhbS5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3VtZUVuZCh0aGlzW2tDb25zdW1lXSlcbiAgICB9KVxuICB9XG5cbiAgY29uc3VtZS5zdHJlYW0ucmVzdW1lKClcblxuICB3aGlsZSAoY29uc3VtZS5zdHJlYW0ucmVhZCgpICE9IG51bGwpIHtcbiAgICAvLyBMb29wXG4gIH1cbn1cblxuZnVuY3Rpb24gY29uc3VtZUVuZCAoY29uc3VtZSkge1xuICBjb25zdCB7IHR5cGUsIGJvZHksIHJlc29sdmUsIHN0cmVhbSwgbGVuZ3RoIH0gPSBjb25zdW1lXG5cbiAgdHJ5IHtcbiAgICBpZiAodHlwZSA9PT0gJ3RleHQnKSB7XG4gICAgICByZXNvbHZlKHRvVVNWU3RyaW5nKEJ1ZmZlci5jb25jYXQoYm9keSkpKVxuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2pzb24nKSB7XG4gICAgICByZXNvbHZlKEpTT04ucGFyc2UoQnVmZmVyLmNvbmNhdChib2R5KSkpXG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnYXJyYXlCdWZmZXInKSB7XG4gICAgICBjb25zdCBkc3QgPSBuZXcgVWludDhBcnJheShsZW5ndGgpXG5cbiAgICAgIGxldCBwb3MgPSAwXG4gICAgICBmb3IgKGNvbnN0IGJ1ZiBvZiBib2R5KSB7XG4gICAgICAgIGRzdC5zZXQoYnVmLCBwb3MpXG4gICAgICAgIHBvcyArPSBidWYuYnl0ZUxlbmd0aFxuICAgICAgfVxuXG4gICAgICByZXNvbHZlKGRzdC5idWZmZXIpXG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnYmxvYicpIHtcbiAgICAgIGlmICghQmxvYikge1xuICAgICAgICBCbG9iID0gcmVxdWlyZSgnYnVmZmVyJykuQmxvYlxuICAgICAgfVxuICAgICAgcmVzb2x2ZShuZXcgQmxvYihib2R5LCB7IHR5cGU6IHN0cmVhbVtrQ29udGVudFR5cGVdIH0pKVxuICAgIH1cblxuICAgIGNvbnN1bWVGaW5pc2goY29uc3VtZSlcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgc3RyZWFtLmRlc3Ryb3koZXJyKVxuICB9XG59XG5cbmZ1bmN0aW9uIGNvbnN1bWVQdXNoIChjb25zdW1lLCBjaHVuaykge1xuICBjb25zdW1lLmxlbmd0aCArPSBjaHVuay5sZW5ndGhcbiAgY29uc3VtZS5ib2R5LnB1c2goY2h1bmspXG59XG5cbmZ1bmN0aW9uIGNvbnN1bWVGaW5pc2ggKGNvbnN1bWUsIGVycikge1xuICBpZiAoY29uc3VtZS5ib2R5ID09PSBudWxsKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoZXJyKSB7XG4gICAgY29uc3VtZS5yZWplY3QoZXJyKVxuICB9IGVsc2Uge1xuICAgIGNvbnN1bWUucmVzb2x2ZSgpXG4gIH1cblxuICBjb25zdW1lLnR5cGUgPSBudWxsXG4gIGNvbnN1bWUuc3RyZWFtID0gbnVsbFxuICBjb25zdW1lLnJlc29sdmUgPSBudWxsXG4gIGNvbnN1bWUucmVqZWN0ID0gbnVsbFxuICBjb25zdW1lLmxlbmd0aCA9IDBcbiAgY29uc3VtZS5ib2R5ID0gbnVsbFxufVxuIiwgImNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7XG4gIFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yXG59ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyB0b1VTVlN0cmluZyB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxuYXN5bmMgZnVuY3Rpb24gZ2V0UmVzb2x2ZUVycm9yQm9keUNhbGxiYWNrICh7IGNhbGxiYWNrLCBib2R5LCBjb250ZW50VHlwZSwgc3RhdHVzQ29kZSwgc3RhdHVzTWVzc2FnZSwgaGVhZGVycyB9KSB7XG4gIGFzc2VydChib2R5KVxuXG4gIGxldCBjaHVua3MgPSBbXVxuICBsZXQgbGltaXQgPSAwXG5cbiAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBib2R5KSB7XG4gICAgY2h1bmtzLnB1c2goY2h1bmspXG4gICAgbGltaXQgKz0gY2h1bmsubGVuZ3RoXG4gICAgaWYgKGxpbWl0ID4gMTI4ICogMTAyNCkge1xuICAgICAgY2h1bmtzID0gbnVsbFxuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBpZiAoc3RhdHVzQ29kZSA9PT0gMjA0IHx8ICFjb250ZW50VHlwZSB8fCAhY2h1bmtzKSB7XG4gICAgcHJvY2Vzcy5uZXh0VGljayhjYWxsYmFjaywgbmV3IFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yKGBSZXNwb25zZSBzdGF0dXMgY29kZSAke3N0YXR1c0NvZGV9JHtzdGF0dXNNZXNzYWdlID8gYDogJHtzdGF0dXNNZXNzYWdlfWAgOiAnJ31gLCBzdGF0dXNDb2RlLCBoZWFkZXJzKSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIHRyeSB7XG4gICAgaWYgKGNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ2FwcGxpY2F0aW9uL2pzb24nKSkge1xuICAgICAgY29uc3QgcGF5bG9hZCA9IEpTT04ucGFyc2UodG9VU1ZTdHJpbmcoQnVmZmVyLmNvbmNhdChjaHVua3MpKSlcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soY2FsbGJhY2ssIG5ldyBSZXNwb25zZVN0YXR1c0NvZGVFcnJvcihgUmVzcG9uc2Ugc3RhdHVzIGNvZGUgJHtzdGF0dXNDb2RlfSR7c3RhdHVzTWVzc2FnZSA/IGA6ICR7c3RhdHVzTWVzc2FnZX1gIDogJyd9YCwgc3RhdHVzQ29kZSwgaGVhZGVycywgcGF5bG9hZCkpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoY29udGVudFR5cGUuc3RhcnRzV2l0aCgndGV4dC8nKSkge1xuICAgICAgY29uc3QgcGF5bG9hZCA9IHRvVVNWU3RyaW5nKEJ1ZmZlci5jb25jYXQoY2h1bmtzKSlcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soY2FsbGJhY2ssIG5ldyBSZXNwb25zZVN0YXR1c0NvZGVFcnJvcihgUmVzcG9uc2Ugc3RhdHVzIGNvZGUgJHtzdGF0dXNDb2RlfSR7c3RhdHVzTWVzc2FnZSA/IGA6ICR7c3RhdHVzTWVzc2FnZX1gIDogJyd9YCwgc3RhdHVzQ29kZSwgaGVhZGVycywgcGF5bG9hZCkpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIFByb2Nlc3MgaW4gYSBmYWxsYmFjayBpZiBlcnJvclxuICB9XG5cbiAgcHJvY2Vzcy5uZXh0VGljayhjYWxsYmFjaywgbmV3IFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yKGBSZXNwb25zZSBzdGF0dXMgY29kZSAke3N0YXR1c0NvZGV9JHtzdGF0dXNNZXNzYWdlID8gYDogJHtzdGF0dXNNZXNzYWdlfWAgOiAnJ31gLCBzdGF0dXNDb2RlLCBoZWFkZXJzKSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7IGdldFJlc29sdmVFcnJvckJvZHlDYWxsYmFjayB9XG4iLCAiY29uc3QgeyBhZGRBYm9ydExpc3RlbmVyIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBSZXF1ZXN0QWJvcnRlZEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5cbmNvbnN0IGtMaXN0ZW5lciA9IFN5bWJvbCgna0xpc3RlbmVyJylcbmNvbnN0IGtTaWduYWwgPSBTeW1ib2woJ2tTaWduYWwnKVxuXG5mdW5jdGlvbiBhYm9ydCAoc2VsZikge1xuICBpZiAoc2VsZi5hYm9ydCkge1xuICAgIHNlbGYuYWJvcnQoKVxuICB9IGVsc2Uge1xuICAgIHNlbGYub25FcnJvcihuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpKVxuICB9XG59XG5cbmZ1bmN0aW9uIGFkZFNpZ25hbCAoc2VsZiwgc2lnbmFsKSB7XG4gIHNlbGZba1NpZ25hbF0gPSBudWxsXG4gIHNlbGZba0xpc3RlbmVyXSA9IG51bGxcblxuICBpZiAoIXNpZ25hbCkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgYWJvcnQoc2VsZilcbiAgICByZXR1cm5cbiAgfVxuXG4gIHNlbGZba1NpZ25hbF0gPSBzaWduYWxcbiAgc2VsZltrTGlzdGVuZXJdID0gKCkgPT4ge1xuICAgIGFib3J0KHNlbGYpXG4gIH1cblxuICBhZGRBYm9ydExpc3RlbmVyKHNlbGZba1NpZ25hbF0sIHNlbGZba0xpc3RlbmVyXSlcbn1cblxuZnVuY3Rpb24gcmVtb3ZlU2lnbmFsIChzZWxmKSB7XG4gIGlmICghc2VsZltrU2lnbmFsXSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKCdyZW1vdmVFdmVudExpc3RlbmVyJyBpbiBzZWxmW2tTaWduYWxdKSB7XG4gICAgc2VsZltrU2lnbmFsXS5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIHNlbGZba0xpc3RlbmVyXSlcbiAgfSBlbHNlIHtcbiAgICBzZWxmW2tTaWduYWxdLnJlbW92ZUxpc3RlbmVyKCdhYm9ydCcsIHNlbGZba0xpc3RlbmVyXSlcbiAgfVxuXG4gIHNlbGZba1NpZ25hbF0gPSBudWxsXG4gIHNlbGZba0xpc3RlbmVyXSA9IG51bGxcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGFkZFNpZ25hbCxcbiAgcmVtb3ZlU2lnbmFsXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IFJlYWRhYmxlID0gcmVxdWlyZSgnLi9yZWFkYWJsZScpXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yLFxuICBSZXF1ZXN0QWJvcnRlZEVycm9yXG59ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7IGdldFJlc29sdmVFcnJvckJvZHlDYWxsYmFjayB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgQXN5bmNSZXNvdXJjZSB9ID0gcmVxdWlyZSgnYXN5bmNfaG9va3MnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuXG5jbGFzcyBSZXF1ZXN0SGFuZGxlciBleHRlbmRzIEFzeW5jUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvciAob3B0cywgY2FsbGJhY2spIHtcbiAgICBpZiAoIW9wdHMgfHwgdHlwZW9mIG9wdHMgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb3B0cycpXG4gICAgfVxuXG4gICAgY29uc3QgeyBzaWduYWwsIG1ldGhvZCwgb3BhcXVlLCBib2R5LCBvbkluZm8sIHJlc3BvbnNlSGVhZGVycywgdGhyb3dPbkVycm9yLCBoaWdoV2F0ZXJNYXJrIH0gPSBvcHRzXG5cbiAgICB0cnkge1xuICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgY2FsbGJhY2snKVxuICAgICAgfVxuXG4gICAgICBpZiAoaGlnaFdhdGVyTWFyayAmJiAodHlwZW9mIGhpZ2hXYXRlck1hcmsgIT09ICdudW1iZXInIHx8IGhpZ2hXYXRlck1hcmsgPCAwKSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgaGlnaFdhdGVyTWFyaycpXG4gICAgICB9XG5cbiAgICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzaWduYWwgbXVzdCBiZSBhbiBFdmVudEVtaXR0ZXIgb3IgRXZlbnRUYXJnZXQnKVxuICAgICAgfVxuXG4gICAgICBpZiAobWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG1ldGhvZCcpXG4gICAgICB9XG5cbiAgICAgIGlmIChvbkluZm8gJiYgdHlwZW9mIG9uSW5mbyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb25JbmZvIGNhbGxiYWNrJylcbiAgICAgIH1cblxuICAgICAgc3VwZXIoJ1VORElDSV9SRVFVRVNUJylcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmICh1dGlsLmlzU3RyZWFtKGJvZHkpKSB7XG4gICAgICAgIHV0aWwuZGVzdHJveShib2R5Lm9uKCdlcnJvcicsIHV0aWwubm9wKSwgZXJyKVxuICAgICAgfVxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuXG4gICAgdGhpcy5yZXNwb25zZUhlYWRlcnMgPSByZXNwb25zZUhlYWRlcnMgfHwgbnVsbFxuICAgIHRoaXMub3BhcXVlID0gb3BhcXVlIHx8IG51bGxcbiAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2tcbiAgICB0aGlzLnJlcyA9IG51bGxcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuYm9keSA9IGJvZHlcbiAgICB0aGlzLnRyYWlsZXJzID0ge31cbiAgICB0aGlzLmNvbnRleHQgPSBudWxsXG4gICAgdGhpcy5vbkluZm8gPSBvbkluZm8gfHwgbnVsbFxuICAgIHRoaXMudGhyb3dPbkVycm9yID0gdGhyb3dPbkVycm9yXG4gICAgdGhpcy5oaWdoV2F0ZXJNYXJrID0gaGlnaFdhdGVyTWFya1xuXG4gICAgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICAgIGJvZHkub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKVxuICAgICAgfSlcbiAgICB9XG5cbiAgICBhZGRTaWduYWwodGhpcywgc2lnbmFsKVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCwgY29udGV4dCkge1xuICAgIGlmICghdGhpcy5jYWxsYmFjaykge1xuICAgICAgdGhyb3cgbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIH1cblxuICAgIHRoaXMuYWJvcnQgPSBhYm9ydFxuICAgIHRoaXMuY29udGV4dCA9IGNvbnRleHRcbiAgfVxuXG4gIG9uSGVhZGVycyAoc3RhdHVzQ29kZSwgcmF3SGVhZGVycywgcmVzdW1lLCBzdGF0dXNNZXNzYWdlKSB7XG4gICAgY29uc3QgeyBjYWxsYmFjaywgb3BhcXVlLCBhYm9ydCwgY29udGV4dCwgcmVzcG9uc2VIZWFkZXJzLCBoaWdoV2F0ZXJNYXJrIH0gPSB0aGlzXG5cbiAgICBjb25zdCBoZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzID09PSAncmF3JyA/IHV0aWwucGFyc2VSYXdIZWFkZXJzKHJhd0hlYWRlcnMpIDogdXRpbC5wYXJzZUhlYWRlcnMocmF3SGVhZGVycylcblxuICAgIGlmIChzdGF0dXNDb2RlIDwgMjAwKSB7XG4gICAgICBpZiAodGhpcy5vbkluZm8pIHtcbiAgICAgICAgdGhpcy5vbkluZm8oeyBzdGF0dXNDb2RlLCBoZWFkZXJzIH0pXG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBwYXJzZWRIZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzID09PSAncmF3JyA/IHV0aWwucGFyc2VIZWFkZXJzKHJhd0hlYWRlcnMpIDogaGVhZGVyc1xuICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gcGFyc2VkSGVhZGVyc1snY29udGVudC10eXBlJ11cbiAgICBjb25zdCBib2R5ID0gbmV3IFJlYWRhYmxlKHsgcmVzdW1lLCBhYm9ydCwgY29udGVudFR5cGUsIGhpZ2hXYXRlck1hcmsgfSlcblxuICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsXG4gICAgdGhpcy5yZXMgPSBib2R5XG4gICAgaWYgKGNhbGxiYWNrICE9PSBudWxsKSB7XG4gICAgICBpZiAodGhpcy50aHJvd09uRXJyb3IgJiYgc3RhdHVzQ29kZSA+PSA0MDApIHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoZ2V0UmVzb2x2ZUVycm9yQm9keUNhbGxiYWNrLCBudWxsLFxuICAgICAgICAgIHsgY2FsbGJhY2ssIGJvZHksIGNvbnRlbnRUeXBlLCBzdGF0dXNDb2RlLCBzdGF0dXNNZXNzYWdlLCBoZWFkZXJzIH1cbiAgICAgICAgKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoY2FsbGJhY2ssIG51bGwsIG51bGwsIHtcbiAgICAgICAgICBzdGF0dXNDb2RlLFxuICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgdHJhaWxlcnM6IHRoaXMudHJhaWxlcnMsXG4gICAgICAgICAgb3BhcXVlLFxuICAgICAgICAgIGJvZHksXG4gICAgICAgICAgY29udGV4dFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uRGF0YSAoY2h1bmspIHtcbiAgICBjb25zdCB7IHJlcyB9ID0gdGhpc1xuICAgIHJldHVybiByZXMucHVzaChjaHVuaylcbiAgfVxuXG4gIG9uQ29tcGxldGUgKHRyYWlsZXJzKSB7XG4gICAgY29uc3QgeyByZXMgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdXRpbC5wYXJzZUhlYWRlcnModHJhaWxlcnMsIHRoaXMudHJhaWxlcnMpXG5cbiAgICByZXMucHVzaChudWxsKVxuICB9XG5cbiAgb25FcnJvciAoZXJyKSB7XG4gICAgY29uc3QgeyByZXMsIGNhbGxiYWNrLCBib2R5LCBvcGFxdWUgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICAvLyBUT0RPOiBEb2VzIHRoaXMgbmVlZCBxdWV1ZU1pY3JvdGFzaz9cbiAgICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsXG4gICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiB7XG4gICAgICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBlcnIsIHsgb3BhcXVlIH0pXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChyZXMpIHtcbiAgICAgIHRoaXMucmVzID0gbnVsbFxuICAgICAgLy8gRW5zdXJlIGFsbCBxdWV1ZWQgaGFuZGxlcnMgYXJlIGludm9rZWQgYmVmb3JlIGRlc3Ryb3lpbmcgcmVzLlxuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICB1dGlsLmRlc3Ryb3kocmVzLCBlcnIpXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChib2R5KSB7XG4gICAgICB0aGlzLmJvZHkgPSBudWxsXG4gICAgICB1dGlsLmRlc3Ryb3koYm9keSwgZXJyKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiByZXF1ZXN0IChvcHRzLCBjYWxsYmFjaykge1xuICBpZiAoY2FsbGJhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICByZXF1ZXN0LmNhbGwodGhpcywgb3B0cywgKGVyciwgZGF0YSkgPT4ge1xuICAgICAgICByZXR1cm4gZXJyID8gcmVqZWN0KGVycikgOiByZXNvbHZlKGRhdGEpXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICB0cnkge1xuICAgIHRoaXMuZGlzcGF0Y2gob3B0cywgbmV3IFJlcXVlc3RIYW5kbGVyKG9wdHMsIGNhbGxiYWNrKSlcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgaWYgKHR5cGVvZiBjYWxsYmFjayAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICAgIGNvbnN0IG9wYXF1ZSA9IG9wdHMgJiYgb3B0cy5vcGFxdWVcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBjYWxsYmFjayhlcnIsIHsgb3BhcXVlIH0pKVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gcmVxdWVzdFxubW9kdWxlLmV4cG9ydHMuUmVxdWVzdEhhbmRsZXIgPSBSZXF1ZXN0SGFuZGxlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IGZpbmlzaGVkLCBQYXNzVGhyb3VnaCB9ID0gcmVxdWlyZSgnc3RyZWFtJylcbmNvbnN0IHtcbiAgSW52YWxpZEFyZ3VtZW50RXJyb3IsXG4gIEludmFsaWRSZXR1cm5WYWx1ZUVycm9yLFxuICBSZXF1ZXN0QWJvcnRlZEVycm9yXG59ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7IGdldFJlc29sdmVFcnJvckJvZHlDYWxsYmFjayB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgQXN5bmNSZXNvdXJjZSB9ID0gcmVxdWlyZSgnYXN5bmNfaG9va3MnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuXG5jbGFzcyBTdHJlYW1IYW5kbGVyIGV4dGVuZHMgQXN5bmNSZXNvdXJjZSB7XG4gIGNvbnN0cnVjdG9yIChvcHRzLCBmYWN0b3J5LCBjYWxsYmFjaykge1xuICAgIGlmICghb3B0cyB8fCB0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvcHRzJylcbiAgICB9XG5cbiAgICBjb25zdCB7IHNpZ25hbCwgbWV0aG9kLCBvcGFxdWUsIGJvZHksIG9uSW5mbywgcmVzcG9uc2VIZWFkZXJzLCB0aHJvd09uRXJyb3IgfSA9IG9wdHNcblxuICAgIHRyeSB7XG4gICAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjYWxsYmFjaycpXG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgZmFjdG9yeSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgZmFjdG9yeScpXG4gICAgICB9XG5cbiAgICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzaWduYWwgbXVzdCBiZSBhbiBFdmVudEVtaXR0ZXIgb3IgRXZlbnRUYXJnZXQnKVxuICAgICAgfVxuXG4gICAgICBpZiAobWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG1ldGhvZCcpXG4gICAgICB9XG5cbiAgICAgIGlmIChvbkluZm8gJiYgdHlwZW9mIG9uSW5mbyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb25JbmZvIGNhbGxiYWNrJylcbiAgICAgIH1cblxuICAgICAgc3VwZXIoJ1VORElDSV9TVFJFQU0nKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICAgICAgdXRpbC5kZXN0cm95KGJvZHkub24oJ2Vycm9yJywgdXRpbC5ub3ApLCBlcnIpXG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG5cbiAgICB0aGlzLnJlc3BvbnNlSGVhZGVycyA9IHJlc3BvbnNlSGVhZGVycyB8fCBudWxsXG4gICAgdGhpcy5vcGFxdWUgPSBvcGFxdWUgfHwgbnVsbFxuICAgIHRoaXMuZmFjdG9yeSA9IGZhY3RvcnlcbiAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2tcbiAgICB0aGlzLnJlcyA9IG51bGxcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuY29udGV4dCA9IG51bGxcbiAgICB0aGlzLnRyYWlsZXJzID0gbnVsbFxuICAgIHRoaXMuYm9keSA9IGJvZHlcbiAgICB0aGlzLm9uSW5mbyA9IG9uSW5mbyB8fCBudWxsXG4gICAgdGhpcy50aHJvd09uRXJyb3IgPSB0aHJvd09uRXJyb3IgfHwgZmFsc2VcblxuICAgIGlmICh1dGlsLmlzU3RyZWFtKGJvZHkpKSB7XG4gICAgICBib2R5Lm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICAgICAgdGhpcy5vbkVycm9yKGVycilcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgYWRkU2lnbmFsKHRoaXMsIHNpZ25hbClcbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQsIGNvbnRleHQpIHtcbiAgICBpZiAoIXRoaXMuY2FsbGJhY2spIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0XG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHJlc3VtZSwgc3RhdHVzTWVzc2FnZSkge1xuICAgIGNvbnN0IHsgZmFjdG9yeSwgb3BhcXVlLCBjb250ZXh0LCBjYWxsYmFjaywgcmVzcG9uc2VIZWFkZXJzIH0gPSB0aGlzXG5cbiAgICBjb25zdCBoZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzID09PSAncmF3JyA/IHV0aWwucGFyc2VSYXdIZWFkZXJzKHJhd0hlYWRlcnMpIDogdXRpbC5wYXJzZUhlYWRlcnMocmF3SGVhZGVycylcblxuICAgIGlmIChzdGF0dXNDb2RlIDwgMjAwKSB7XG4gICAgICBpZiAodGhpcy5vbkluZm8pIHtcbiAgICAgICAgdGhpcy5vbkluZm8oeyBzdGF0dXNDb2RlLCBoZWFkZXJzIH0pXG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLmZhY3RvcnkgPSBudWxsXG5cbiAgICBsZXQgcmVzXG5cbiAgICBpZiAodGhpcy50aHJvd09uRXJyb3IgJiYgc3RhdHVzQ29kZSA+PSA0MDApIHtcbiAgICAgIGNvbnN0IHBhcnNlZEhlYWRlcnMgPSByZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZUhlYWRlcnMocmF3SGVhZGVycykgOiBoZWFkZXJzXG4gICAgICBjb25zdCBjb250ZW50VHlwZSA9IHBhcnNlZEhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddXG4gICAgICByZXMgPSBuZXcgUGFzc1Rocm91Z2goKVxuXG4gICAgICB0aGlzLmNhbGxiYWNrID0gbnVsbFxuICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoZ2V0UmVzb2x2ZUVycm9yQm9keUNhbGxiYWNrLCBudWxsLFxuICAgICAgICB7IGNhbGxiYWNrLCBib2R5OiByZXMsIGNvbnRlbnRUeXBlLCBzdGF0dXNDb2RlLCBzdGF0dXNNZXNzYWdlLCBoZWFkZXJzIH1cbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGZhY3RvcnkgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHJlcyA9IHRoaXMucnVuSW5Bc3luY1Njb3BlKGZhY3RvcnksIG51bGwsIHtcbiAgICAgICAgc3RhdHVzQ29kZSxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgb3BhcXVlLFxuICAgICAgICBjb250ZXh0XG4gICAgICB9KVxuXG4gICAgICBpZiAoXG4gICAgICAgICFyZXMgfHxcbiAgICAgICAgdHlwZW9mIHJlcy53cml0ZSAhPT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgICB0eXBlb2YgcmVzLmVuZCAhPT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgICB0eXBlb2YgcmVzLm9uICE9PSAnZnVuY3Rpb24nXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRSZXR1cm5WYWx1ZUVycm9yKCdleHBlY3RlZCBXcml0YWJsZScpXG4gICAgICB9XG5cbiAgICAgIC8vIFRPRE86IEF2b2lkIGZpbmlzaGVkLiBJdCByZWdpc3RlcnMgYW4gdW5uZWNlc3NhcnkgYW1vdW50IG9mIGxpc3RlbmVycy5cbiAgICAgIGZpbmlzaGVkKHJlcywgeyByZWFkYWJsZTogZmFsc2UgfSwgKGVycikgPT4ge1xuICAgICAgICBjb25zdCB7IGNhbGxiYWNrLCByZXMsIG9wYXF1ZSwgdHJhaWxlcnMsIGFib3J0IH0gPSB0aGlzXG5cbiAgICAgICAgdGhpcy5yZXMgPSBudWxsXG4gICAgICAgIGlmIChlcnIgfHwgIXJlcy5yZWFkYWJsZSkge1xuICAgICAgICAgIHV0aWwuZGVzdHJveShyZXMsIGVycilcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsXG4gICAgICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBlcnIgfHwgbnVsbCwgeyBvcGFxdWUsIHRyYWlsZXJzIH0pXG5cbiAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgIGFib3J0KClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXMub24oJ2RyYWluJywgcmVzdW1lKVxuXG4gICAgdGhpcy5yZXMgPSByZXNcblxuICAgIGNvbnN0IG5lZWREcmFpbiA9IHJlcy53cml0YWJsZU5lZWREcmFpbiAhPT0gdW5kZWZpbmVkXG4gICAgICA/IHJlcy53cml0YWJsZU5lZWREcmFpblxuICAgICAgOiByZXMuX3dyaXRhYmxlU3RhdGUgJiYgcmVzLl93cml0YWJsZVN0YXRlLm5lZWREcmFpblxuXG4gICAgcmV0dXJuIG5lZWREcmFpbiAhPT0gdHJ1ZVxuICB9XG5cbiAgb25EYXRhIChjaHVuaykge1xuICAgIGNvbnN0IHsgcmVzIH0gPSB0aGlzXG5cbiAgICByZXR1cm4gcmVzID8gcmVzLndyaXRlKGNodW5rKSA6IHRydWVcbiAgfVxuXG4gIG9uQ29tcGxldGUgKHRyYWlsZXJzKSB7XG4gICAgY29uc3QgeyByZXMgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgaWYgKCFyZXMpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMudHJhaWxlcnMgPSB1dGlsLnBhcnNlSGVhZGVycyh0cmFpbGVycylcblxuICAgIHJlcy5lbmQoKVxuICB9XG5cbiAgb25FcnJvciAoZXJyKSB7XG4gICAgY29uc3QgeyByZXMsIGNhbGxiYWNrLCBvcGFxdWUsIGJvZHkgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdGhpcy5mYWN0b3J5ID0gbnVsbFxuXG4gICAgaWYgKHJlcykge1xuICAgICAgdGhpcy5yZXMgPSBudWxsXG4gICAgICB1dGlsLmRlc3Ryb3kocmVzLCBlcnIpXG4gICAgfSBlbHNlIGlmIChjYWxsYmFjaykge1xuICAgICAgdGhpcy5jYWxsYmFjayA9IG51bGxcbiAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoY2FsbGJhY2ssIG51bGwsIGVyciwgeyBvcGFxdWUgfSlcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKGJvZHkpIHtcbiAgICAgIHRoaXMuYm9keSA9IG51bGxcbiAgICAgIHV0aWwuZGVzdHJveShib2R5LCBlcnIpXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHN0cmVhbSAob3B0cywgZmFjdG9yeSwgY2FsbGJhY2spIHtcbiAgaWYgKGNhbGxiYWNrID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgc3RyZWFtLmNhbGwodGhpcywgb3B0cywgZmFjdG9yeSwgKGVyciwgZGF0YSkgPT4ge1xuICAgICAgICByZXR1cm4gZXJyID8gcmVqZWN0KGVycikgOiByZXNvbHZlKGRhdGEpXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICB0cnkge1xuICAgIHRoaXMuZGlzcGF0Y2gob3B0cywgbmV3IFN0cmVhbUhhbmRsZXIob3B0cywgZmFjdG9yeSwgY2FsbGJhY2spKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gICAgY29uc3Qgb3BhcXVlID0gb3B0cyAmJiBvcHRzLm9wYXF1ZVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKGVyciwgeyBvcGFxdWUgfSkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBzdHJlYW1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3Qge1xuICBSZWFkYWJsZSxcbiAgRHVwbGV4LFxuICBQYXNzVGhyb3VnaFxufSA9IHJlcXVpcmUoJ3N0cmVhbScpXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yLFxuICBJbnZhbGlkUmV0dXJuVmFsdWVFcnJvcixcbiAgUmVxdWVzdEFib3J0ZWRFcnJvclxufSA9IHJlcXVpcmUoJy4uL2NvcmUvZXJyb3JzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBBc3luY1Jlc291cmNlIH0gPSByZXF1aXJlKCdhc3luY19ob29rcycpXG5jb25zdCB7IGFkZFNpZ25hbCwgcmVtb3ZlU2lnbmFsIH0gPSByZXF1aXJlKCcuL2Fib3J0LXNpZ25hbCcpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuXG5jb25zdCBrUmVzdW1lID0gU3ltYm9sKCdyZXN1bWUnKVxuXG5jbGFzcyBQaXBlbGluZVJlcXVlc3QgZXh0ZW5kcyBSZWFkYWJsZSB7XG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICBzdXBlcih7IGF1dG9EZXN0cm95OiB0cnVlIH0pXG5cbiAgICB0aGlzW2tSZXN1bWVdID0gbnVsbFxuICB9XG5cbiAgX3JlYWQgKCkge1xuICAgIGNvbnN0IHsgW2tSZXN1bWVdOiByZXN1bWUgfSA9IHRoaXNcblxuICAgIGlmIChyZXN1bWUpIHtcbiAgICAgIHRoaXNba1Jlc3VtZV0gPSBudWxsXG4gICAgICByZXN1bWUoKVxuICAgIH1cbiAgfVxuXG4gIF9kZXN0cm95IChlcnIsIGNhbGxiYWNrKSB7XG4gICAgdGhpcy5fcmVhZCgpXG5cbiAgICBjYWxsYmFjayhlcnIpXG4gIH1cbn1cblxuY2xhc3MgUGlwZWxpbmVSZXNwb25zZSBleHRlbmRzIFJlYWRhYmxlIHtcbiAgY29uc3RydWN0b3IgKHJlc3VtZSkge1xuICAgIHN1cGVyKHsgYXV0b0Rlc3Ryb3k6IHRydWUgfSlcbiAgICB0aGlzW2tSZXN1bWVdID0gcmVzdW1lXG4gIH1cblxuICBfcmVhZCAoKSB7XG4gICAgdGhpc1trUmVzdW1lXSgpXG4gIH1cblxuICBfZGVzdHJveSAoZXJyLCBjYWxsYmFjaykge1xuICAgIGlmICghZXJyICYmICF0aGlzLl9yZWFkYWJsZVN0YXRlLmVuZEVtaXR0ZWQpIHtcbiAgICAgIGVyciA9IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICBjYWxsYmFjayhlcnIpXG4gIH1cbn1cblxuY2xhc3MgUGlwZWxpbmVIYW5kbGVyIGV4dGVuZHMgQXN5bmNSZXNvdXJjZSB7XG4gIGNvbnN0cnVjdG9yIChvcHRzLCBoYW5kbGVyKSB7XG4gICAgaWYgKCFvcHRzIHx8IHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgaGFuZGxlciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIGhhbmRsZXInKVxuICAgIH1cblxuICAgIGNvbnN0IHsgc2lnbmFsLCBtZXRob2QsIG9wYXF1ZSwgb25JbmZvLCByZXNwb25zZUhlYWRlcnMgfSA9IG9wdHNcblxuICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc2lnbmFsIG11c3QgYmUgYW4gRXZlbnRFbWl0dGVyIG9yIEV2ZW50VGFyZ2V0JylcbiAgICB9XG5cbiAgICBpZiAobWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBtZXRob2QnKVxuICAgIH1cblxuICAgIGlmIChvbkluZm8gJiYgdHlwZW9mIG9uSW5mbyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9uSW5mbyBjYWxsYmFjaycpXG4gICAgfVxuXG4gICAgc3VwZXIoJ1VORElDSV9QSVBFTElORScpXG5cbiAgICB0aGlzLm9wYXF1ZSA9IG9wYXF1ZSB8fCBudWxsXG4gICAgdGhpcy5yZXNwb25zZUhlYWRlcnMgPSByZXNwb25zZUhlYWRlcnMgfHwgbnVsbFxuICAgIHRoaXMuaGFuZGxlciA9IGhhbmRsZXJcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuY29udGV4dCA9IG51bGxcbiAgICB0aGlzLm9uSW5mbyA9IG9uSW5mbyB8fCBudWxsXG5cbiAgICB0aGlzLnJlcSA9IG5ldyBQaXBlbGluZVJlcXVlc3QoKS5vbignZXJyb3InLCB1dGlsLm5vcClcblxuICAgIHRoaXMucmV0ID0gbmV3IER1cGxleCh7XG4gICAgICByZWFkYWJsZU9iamVjdE1vZGU6IG9wdHMub2JqZWN0TW9kZSxcbiAgICAgIGF1dG9EZXN0cm95OiB0cnVlLFxuICAgICAgcmVhZDogKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGJvZHkgfSA9IHRoaXNcblxuICAgICAgICBpZiAoYm9keSAmJiBib2R5LnJlc3VtZSkge1xuICAgICAgICAgIGJvZHkucmVzdW1lKClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHdyaXRlOiAoY2h1bmssIGVuY29kaW5nLCBjYWxsYmFjaykgPT4ge1xuICAgICAgICBjb25zdCB7IHJlcSB9ID0gdGhpc1xuXG4gICAgICAgIGlmIChyZXEucHVzaChjaHVuaywgZW5jb2RpbmcpIHx8IHJlcS5fcmVhZGFibGVTdGF0ZS5kZXN0cm95ZWQpIHtcbiAgICAgICAgICBjYWxsYmFjaygpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVxW2tSZXN1bWVdID0gY2FsbGJhY2tcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGRlc3Ryb3k6IChlcnIsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgYm9keSwgcmVxLCByZXMsIHJldCwgYWJvcnQgfSA9IHRoaXNcblxuICAgICAgICBpZiAoIWVyciAmJiAhcmV0Ll9yZWFkYWJsZVN0YXRlLmVuZEVtaXR0ZWQpIHtcbiAgICAgICAgICBlcnIgPSBuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYWJvcnQgJiYgZXJyKSB7XG4gICAgICAgICAgYWJvcnQoKVxuICAgICAgICB9XG5cbiAgICAgICAgdXRpbC5kZXN0cm95KGJvZHksIGVycilcbiAgICAgICAgdXRpbC5kZXN0cm95KHJlcSwgZXJyKVxuICAgICAgICB1dGlsLmRlc3Ryb3kocmVzLCBlcnIpXG5cbiAgICAgICAgcmVtb3ZlU2lnbmFsKHRoaXMpXG5cbiAgICAgICAgY2FsbGJhY2soZXJyKVxuICAgICAgfVxuICAgIH0pLm9uKCdwcmVmaW5pc2gnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IHJlcSB9ID0gdGhpc1xuXG4gICAgICAvLyBOb2RlIDwgMTUgZG9lcyBub3QgY2FsbCBfZmluYWwgaW4gc2FtZSB0aWNrLlxuICAgICAgcmVxLnB1c2gobnVsbClcbiAgICB9KVxuXG4gICAgdGhpcy5yZXMgPSBudWxsXG5cbiAgICBhZGRTaWduYWwodGhpcywgc2lnbmFsKVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgcmV0LCByZXMgfSA9IHRoaXNcblxuICAgIGFzc2VydCghcmVzLCAncGlwZWxpbmUgY2Fubm90IGJlIHJldHJpZWQnKVxuXG4gICAgaWYgKHJldC5kZXN0cm95ZWQpIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0XG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHJlc3VtZSkge1xuICAgIGNvbnN0IHsgb3BhcXVlLCBoYW5kbGVyLCBjb250ZXh0IH0gPSB0aGlzXG5cbiAgICBpZiAoc3RhdHVzQ29kZSA8IDIwMCkge1xuICAgICAgaWYgKHRoaXMub25JbmZvKSB7XG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSB0aGlzLnJlc3BvbnNlSGVhZGVycyA9PT0gJ3JhdycgPyB1dGlsLnBhcnNlUmF3SGVhZGVycyhyYXdIZWFkZXJzKSA6IHV0aWwucGFyc2VIZWFkZXJzKHJhd0hlYWRlcnMpXG4gICAgICAgIHRoaXMub25JbmZvKHsgc3RhdHVzQ29kZSwgaGVhZGVycyB9KVxuICAgICAgfVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpcy5yZXMgPSBuZXcgUGlwZWxpbmVSZXNwb25zZShyZXN1bWUpXG5cbiAgICBsZXQgYm9keVxuICAgIHRyeSB7XG4gICAgICB0aGlzLmhhbmRsZXIgPSBudWxsXG4gICAgICBjb25zdCBoZWFkZXJzID0gdGhpcy5yZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZVJhd0hlYWRlcnMocmF3SGVhZGVycykgOiB1dGlsLnBhcnNlSGVhZGVycyhyYXdIZWFkZXJzKVxuICAgICAgYm9keSA9IHRoaXMucnVuSW5Bc3luY1Njb3BlKGhhbmRsZXIsIG51bGwsIHtcbiAgICAgICAgc3RhdHVzQ29kZSxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgb3BhcXVlLFxuICAgICAgICBib2R5OiB0aGlzLnJlcyxcbiAgICAgICAgY29udGV4dFxuICAgICAgfSlcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRoaXMucmVzLm9uKCdlcnJvcicsIHV0aWwubm9wKVxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuXG4gICAgaWYgKCFib2R5IHx8IHR5cGVvZiBib2R5Lm9uICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFJldHVyblZhbHVlRXJyb3IoJ2V4cGVjdGVkIFJlYWRhYmxlJylcbiAgICB9XG5cbiAgICBib2R5XG4gICAgICAub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICAgICAgY29uc3QgeyByZXQsIGJvZHkgfSA9IHRoaXNcblxuICAgICAgICBpZiAoIXJldC5wdXNoKGNodW5rKSAmJiBib2R5LnBhdXNlKSB7XG4gICAgICAgICAgYm9keS5wYXVzZSgpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgICAgICBjb25zdCB7IHJldCB9ID0gdGhpc1xuXG4gICAgICAgIHV0aWwuZGVzdHJveShyZXQsIGVycilcbiAgICAgIH0pXG4gICAgICAub24oJ2VuZCcsICgpID0+IHtcbiAgICAgICAgY29uc3QgeyByZXQgfSA9IHRoaXNcblxuICAgICAgICByZXQucHVzaChudWxsKVxuICAgICAgfSlcbiAgICAgIC5vbignY2xvc2UnLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcmV0IH0gPSB0aGlzXG5cbiAgICAgICAgaWYgKCFyZXQuX3JlYWRhYmxlU3RhdGUuZW5kZWQpIHtcbiAgICAgICAgICB1dGlsLmRlc3Ryb3kocmV0LCBuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpKVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgdGhpcy5ib2R5ID0gYm9keVxuICB9XG5cbiAgb25EYXRhIChjaHVuaykge1xuICAgIGNvbnN0IHsgcmVzIH0gPSB0aGlzXG4gICAgcmV0dXJuIHJlcy5wdXNoKGNodW5rKVxuICB9XG5cbiAgb25Db21wbGV0ZSAodHJhaWxlcnMpIHtcbiAgICBjb25zdCB7IHJlcyB9ID0gdGhpc1xuICAgIHJlcy5wdXNoKG51bGwpXG4gIH1cblxuICBvbkVycm9yIChlcnIpIHtcbiAgICBjb25zdCB7IHJldCB9ID0gdGhpc1xuICAgIHRoaXMuaGFuZGxlciA9IG51bGxcbiAgICB1dGlsLmRlc3Ryb3kocmV0LCBlcnIpXG4gIH1cbn1cblxuZnVuY3Rpb24gcGlwZWxpbmUgKG9wdHMsIGhhbmRsZXIpIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwaXBlbGluZUhhbmRsZXIgPSBuZXcgUGlwZWxpbmVIYW5kbGVyKG9wdHMsIGhhbmRsZXIpXG4gICAgdGhpcy5kaXNwYXRjaCh7IC4uLm9wdHMsIGJvZHk6IHBpcGVsaW5lSGFuZGxlci5yZXEgfSwgcGlwZWxpbmVIYW5kbGVyKVxuICAgIHJldHVybiBwaXBlbGluZUhhbmRsZXIucmV0XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHJldHVybiBuZXcgUGFzc1Rocm91Z2goKS5kZXN0cm95KGVycilcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHBpcGVsaW5lXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IsIFJlcXVlc3RBYm9ydGVkRXJyb3IsIFNvY2tldEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5jb25zdCB7IEFzeW5jUmVzb3VyY2UgfSA9IHJlcXVpcmUoJ2FzeW5jX2hvb2tzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcblxuY2xhc3MgVXBncmFkZUhhbmRsZXIgZXh0ZW5kcyBBc3luY1Jlc291cmNlIHtcbiAgY29uc3RydWN0b3IgKG9wdHMsIGNhbGxiYWNrKSB7XG4gICAgaWYgKCFvcHRzIHx8IHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjYWxsYmFjaycpXG4gICAgfVxuXG4gICAgY29uc3QgeyBzaWduYWwsIG9wYXF1ZSwgcmVzcG9uc2VIZWFkZXJzIH0gPSBvcHRzXG5cbiAgICBpZiAoc2lnbmFsICYmIHR5cGVvZiBzaWduYWwub24gIT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3NpZ25hbCBtdXN0IGJlIGFuIEV2ZW50RW1pdHRlciBvciBFdmVudFRhcmdldCcpXG4gICAgfVxuXG4gICAgc3VwZXIoJ1VORElDSV9VUEdSQURFJylcblxuICAgIHRoaXMucmVzcG9uc2VIZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzIHx8IG51bGxcbiAgICB0aGlzLm9wYXF1ZSA9IG9wYXF1ZSB8fCBudWxsXG4gICAgdGhpcy5jYWxsYmFjayA9IGNhbGxiYWNrXG4gICAgdGhpcy5hYm9ydCA9IG51bGxcbiAgICB0aGlzLmNvbnRleHQgPSBudWxsXG5cbiAgICBhZGRTaWduYWwodGhpcywgc2lnbmFsKVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCwgY29udGV4dCkge1xuICAgIGlmICghdGhpcy5jYWxsYmFjaykge1xuICAgICAgdGhyb3cgbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIH1cblxuICAgIHRoaXMuYWJvcnQgPSBhYm9ydFxuICAgIHRoaXMuY29udGV4dCA9IG51bGxcbiAgfVxuXG4gIG9uSGVhZGVycyAoKSB7XG4gICAgdGhyb3cgbmV3IFNvY2tldEVycm9yKCdiYWQgdXBncmFkZScsIG51bGwpXG4gIH1cblxuICBvblVwZ3JhZGUgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHNvY2tldCkge1xuICAgIGNvbnN0IHsgY2FsbGJhY2ssIG9wYXF1ZSwgY29udGV4dCB9ID0gdGhpc1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHN0YXR1c0NvZGUsIDEwMSlcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdGhpcy5jYWxsYmFjayA9IG51bGxcbiAgICBjb25zdCBoZWFkZXJzID0gdGhpcy5yZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZVJhd0hlYWRlcnMocmF3SGVhZGVycykgOiB1dGlsLnBhcnNlSGVhZGVycyhyYXdIZWFkZXJzKVxuICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBudWxsLCB7XG4gICAgICBoZWFkZXJzLFxuICAgICAgc29ja2V0LFxuICAgICAgb3BhcXVlLFxuICAgICAgY29udGV4dFxuICAgIH0pXG4gIH1cblxuICBvbkVycm9yIChlcnIpIHtcbiAgICBjb25zdCB7IGNhbGxiYWNrLCBvcGFxdWUgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICB0aGlzLmNhbGxiYWNrID0gbnVsbFxuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICB0aGlzLnJ1bkluQXN5bmNTY29wZShjYWxsYmFjaywgbnVsbCwgZXJyLCB7IG9wYXF1ZSB9KVxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdXBncmFkZSAob3B0cywgY2FsbGJhY2spIHtcbiAgaWYgKGNhbGxiYWNrID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdXBncmFkZS5jYWxsKHRoaXMsIG9wdHMsIChlcnIsIGRhdGEpID0+IHtcbiAgICAgICAgcmV0dXJuIGVyciA/IHJlamVjdChlcnIpIDogcmVzb2x2ZShkYXRhKVxuICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgdHJ5IHtcbiAgICBjb25zdCB1cGdyYWRlSGFuZGxlciA9IG5ldyBVcGdyYWRlSGFuZGxlcihvcHRzLCBjYWxsYmFjaylcbiAgICB0aGlzLmRpc3BhdGNoKHtcbiAgICAgIC4uLm9wdHMsXG4gICAgICBtZXRob2Q6IG9wdHMubWV0aG9kIHx8ICdHRVQnLFxuICAgICAgdXBncmFkZTogb3B0cy5wcm90b2NvbCB8fCAnV2Vic29ja2V0J1xuICAgIH0sIHVwZ3JhZGVIYW5kbGVyKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gICAgY29uc3Qgb3BhcXVlID0gb3B0cyAmJiBvcHRzLm9wYXF1ZVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKGVyciwgeyBvcGFxdWUgfSkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB1cGdyYWRlXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgQXN5bmNSZXNvdXJjZSB9ID0gcmVxdWlyZSgnYXN5bmNfaG9va3MnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciwgUmVxdWVzdEFib3J0ZWRFcnJvciwgU29ja2V0RXJyb3IgfSA9IHJlcXVpcmUoJy4uL2NvcmUvZXJyb3JzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuXG5jbGFzcyBDb25uZWN0SGFuZGxlciBleHRlbmRzIEFzeW5jUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvciAob3B0cywgY2FsbGJhY2spIHtcbiAgICBpZiAoIW9wdHMgfHwgdHlwZW9mIG9wdHMgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb3B0cycpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjYWxsYmFjayAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIGNhbGxiYWNrJylcbiAgICB9XG5cbiAgICBjb25zdCB7IHNpZ25hbCwgb3BhcXVlLCByZXNwb25zZUhlYWRlcnMgfSA9IG9wdHNcblxuICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc2lnbmFsIG11c3QgYmUgYW4gRXZlbnRFbWl0dGVyIG9yIEV2ZW50VGFyZ2V0JylcbiAgICB9XG5cbiAgICBzdXBlcignVU5ESUNJX0NPTk5FQ1QnKVxuXG4gICAgdGhpcy5vcGFxdWUgPSBvcGFxdWUgfHwgbnVsbFxuICAgIHRoaXMucmVzcG9uc2VIZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzIHx8IG51bGxcbiAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2tcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuXG4gICAgYWRkU2lnbmFsKHRoaXMsIHNpZ25hbClcbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQsIGNvbnRleHQpIHtcbiAgICBpZiAoIXRoaXMuY2FsbGJhY2spIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0XG4gIH1cblxuICBvbkhlYWRlcnMgKCkge1xuICAgIHRocm93IG5ldyBTb2NrZXRFcnJvcignYmFkIGNvbm5lY3QnLCBudWxsKVxuICB9XG5cbiAgb25VcGdyYWRlIChzdGF0dXNDb2RlLCByYXdIZWFkZXJzLCBzb2NrZXQpIHtcbiAgICBjb25zdCB7IGNhbGxiYWNrLCBvcGFxdWUsIGNvbnRleHQgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdGhpcy5jYWxsYmFjayA9IG51bGxcblxuICAgIGxldCBoZWFkZXJzID0gcmF3SGVhZGVyc1xuICAgIC8vIEluZGljYXRlcyBpcyBhbiBIVFRQMlNlc3Npb25cbiAgICBpZiAoaGVhZGVycyAhPSBudWxsKSB7XG4gICAgICBoZWFkZXJzID0gdGhpcy5yZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZVJhd0hlYWRlcnMocmF3SGVhZGVycykgOiB1dGlsLnBhcnNlSGVhZGVycyhyYXdIZWFkZXJzKVxuICAgIH1cblxuICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBudWxsLCB7XG4gICAgICBzdGF0dXNDb2RlLFxuICAgICAgaGVhZGVycyxcbiAgICAgIHNvY2tldCxcbiAgICAgIG9wYXF1ZSxcbiAgICAgIGNvbnRleHRcbiAgICB9KVxuICB9XG5cbiAgb25FcnJvciAoZXJyKSB7XG4gICAgY29uc3QgeyBjYWxsYmFjaywgb3BhcXVlIH0gPSB0aGlzXG5cbiAgICByZW1vdmVTaWduYWwodGhpcylcblxuICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgdGhpcy5jYWxsYmFjayA9IG51bGxcbiAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoY2FsbGJhY2ssIG51bGwsIGVyciwgeyBvcGFxdWUgfSlcbiAgICAgIH0pXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNvbm5lY3QgKG9wdHMsIGNhbGxiYWNrKSB7XG4gIGlmIChjYWxsYmFjayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbm5lY3QuY2FsbCh0aGlzLCBvcHRzLCAoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgIHJldHVybiBlcnIgPyByZWplY3QoZXJyKSA6IHJlc29sdmUoZGF0YSlcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIHRyeSB7XG4gICAgY29uc3QgY29ubmVjdEhhbmRsZXIgPSBuZXcgQ29ubmVjdEhhbmRsZXIob3B0cywgY2FsbGJhY2spXG4gICAgdGhpcy5kaXNwYXRjaCh7IC4uLm9wdHMsIG1ldGhvZDogJ0NPTk5FQ1QnIH0sIGNvbm5lY3RIYW5kbGVyKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gICAgY29uc3Qgb3BhcXVlID0gb3B0cyAmJiBvcHRzLm9wYXF1ZVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKGVyciwgeyBvcGFxdWUgfSkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjb25uZWN0XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzLnJlcXVlc3QgPSByZXF1aXJlKCcuL2FwaS1yZXF1ZXN0Jylcbm1vZHVsZS5leHBvcnRzLnN0cmVhbSA9IHJlcXVpcmUoJy4vYXBpLXN0cmVhbScpXG5tb2R1bGUuZXhwb3J0cy5waXBlbGluZSA9IHJlcXVpcmUoJy4vYXBpLXBpcGVsaW5lJylcbm1vZHVsZS5leHBvcnRzLnVwZ3JhZGUgPSByZXF1aXJlKCcuL2FwaS11cGdyYWRlJylcbm1vZHVsZS5leHBvcnRzLmNvbm5lY3QgPSByZXF1aXJlKCcuL2FwaS1jb25uZWN0JylcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBVbmRpY2lFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuXG5jbGFzcyBNb2NrTm90TWF0Y2hlZEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgTW9ja05vdE1hdGNoZWRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnTW9ja05vdE1hdGNoZWRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdUaGUgcmVxdWVzdCBkb2VzIG5vdCBtYXRjaCBhbnkgcmVnaXN0ZXJlZCBtb2NrIGRpc3BhdGNoZXMnXG4gICAgdGhpcy5jb2RlID0gJ1VORF9NT0NLX0VSUl9NT0NLX05PVF9NQVRDSEVEJ1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBNb2NrTm90TWF0Y2hlZEVycm9yXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrQWdlbnQ6IFN5bWJvbCgnYWdlbnQnKSxcbiAga09wdGlvbnM6IFN5bWJvbCgnb3B0aW9ucycpLFxuICBrRmFjdG9yeTogU3ltYm9sKCdmYWN0b3J5JyksXG4gIGtEaXNwYXRjaGVzOiBTeW1ib2woJ2Rpc3BhdGNoZXMnKSxcbiAga0Rpc3BhdGNoS2V5OiBTeW1ib2woJ2Rpc3BhdGNoIGtleScpLFxuICBrRGVmYXVsdEhlYWRlcnM6IFN5bWJvbCgnZGVmYXVsdCBoZWFkZXJzJyksXG4gIGtEZWZhdWx0VHJhaWxlcnM6IFN5bWJvbCgnZGVmYXVsdCB0cmFpbGVycycpLFxuICBrQ29udGVudExlbmd0aDogU3ltYm9sKCdjb250ZW50IGxlbmd0aCcpLFxuICBrTW9ja0FnZW50OiBTeW1ib2woJ21vY2sgYWdlbnQnKSxcbiAga01vY2tBZ2VudFNldDogU3ltYm9sKCdtb2NrIGFnZW50IHNldCcpLFxuICBrTW9ja0FnZW50R2V0OiBTeW1ib2woJ21vY2sgYWdlbnQgZ2V0JyksXG4gIGtNb2NrRGlzcGF0Y2g6IFN5bWJvbCgnbW9jayBkaXNwYXRjaCcpLFxuICBrQ2xvc2U6IFN5bWJvbCgnY2xvc2UnKSxcbiAga09yaWdpbmFsQ2xvc2U6IFN5bWJvbCgnb3JpZ2luYWwgYWdlbnQgY2xvc2UnKSxcbiAga09yaWdpbjogU3ltYm9sKCdvcmlnaW4nKSxcbiAga0lzTW9ja0FjdGl2ZTogU3ltYm9sKCdpcyBtb2NrIGFjdGl2ZScpLFxuICBrTmV0Q29ubmVjdDogU3ltYm9sKCduZXQgY29ubmVjdCcpLFxuICBrR2V0TmV0Q29ubmVjdDogU3ltYm9sKCdnZXQgbmV0IGNvbm5lY3QnKSxcbiAga0Nvbm5lY3RlZDogU3ltYm9sKCdjb25uZWN0ZWQnKVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IE1vY2tOb3RNYXRjaGVkRXJyb3IgfSA9IHJlcXVpcmUoJy4vbW9jay1lcnJvcnMnKVxuY29uc3Qge1xuICBrRGlzcGF0Y2hlcyxcbiAga01vY2tBZ2VudCxcbiAga09yaWdpbmFsRGlzcGF0Y2gsXG4gIGtPcmlnaW4sXG4gIGtHZXROZXRDb25uZWN0XG59ID0gcmVxdWlyZSgnLi9tb2NrLXN5bWJvbHMnKVxuY29uc3QgeyBidWlsZFVSTCwgbm9wIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBTVEFUVVNfQ09ERVMgfSA9IHJlcXVpcmUoJ2h0dHAnKVxuY29uc3Qge1xuICB0eXBlczoge1xuICAgIGlzUHJvbWlzZVxuICB9XG59ID0gcmVxdWlyZSgndXRpbCcpXG5cbmZ1bmN0aW9uIG1hdGNoVmFsdWUgKG1hdGNoLCB2YWx1ZSkge1xuICBpZiAodHlwZW9mIG1hdGNoID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBtYXRjaCA9PT0gdmFsdWVcbiAgfVxuICBpZiAobWF0Y2ggaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICByZXR1cm4gbWF0Y2gudGVzdCh2YWx1ZSlcbiAgfVxuICBpZiAodHlwZW9mIG1hdGNoID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIG1hdGNoKHZhbHVlKSA9PT0gdHJ1ZVxuICB9XG4gIHJldHVybiBmYWxzZVxufVxuXG5mdW5jdGlvbiBsb3dlckNhc2VFbnRyaWVzIChoZWFkZXJzKSB7XG4gIHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgT2JqZWN0LmVudHJpZXMoaGVhZGVycykubWFwKChbaGVhZGVyTmFtZSwgaGVhZGVyVmFsdWVdKSA9PiB7XG4gICAgICByZXR1cm4gW2hlYWRlck5hbWUudG9Mb2NhbGVMb3dlckNhc2UoKSwgaGVhZGVyVmFsdWVdXG4gICAgfSlcbiAgKVxufVxuXG4vKipcbiAqIEBwYXJhbSB7aW1wb3J0KCcuLi8uLi9pbmRleCcpLkhlYWRlcnN8c3RyaW5nW118UmVjb3JkPHN0cmluZywgc3RyaW5nPn0gaGVhZGVyc1xuICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICovXG5mdW5jdGlvbiBnZXRIZWFkZXJCeU5hbWUgKGhlYWRlcnMsIGtleSkge1xuICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzKSkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaGVhZGVycy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgaWYgKGhlYWRlcnNbaV0udG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0ga2V5LnRvTG9jYWxlTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgcmV0dXJuIGhlYWRlcnNbaSArIDFdXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9IGVsc2UgaWYgKHR5cGVvZiBoZWFkZXJzLmdldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBoZWFkZXJzLmdldChrZXkpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGxvd2VyQ2FzZUVudHJpZXMoaGVhZGVycylba2V5LnRvTG9jYWxlTG93ZXJDYXNlKCldXG4gIH1cbn1cblxuLyoqIEBwYXJhbSB7c3RyaW5nW119IGhlYWRlcnMgKi9cbmZ1bmN0aW9uIGJ1aWxkSGVhZGVyc0Zyb21BcnJheSAoaGVhZGVycykgeyAvLyBmZXRjaCBIZWFkZXJzTGlzdFxuICBjb25zdCBjbG9uZSA9IGhlYWRlcnMuc2xpY2UoKVxuICBjb25zdCBlbnRyaWVzID0gW11cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNsb25lLmxlbmd0aDsgaW5kZXggKz0gMikge1xuICAgIGVudHJpZXMucHVzaChbY2xvbmVbaW5kZXhdLCBjbG9uZVtpbmRleCArIDFdXSlcbiAgfVxuICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKGVudHJpZXMpXG59XG5cbmZ1bmN0aW9uIG1hdGNoSGVhZGVycyAobW9ja0Rpc3BhdGNoLCBoZWFkZXJzKSB7XG4gIGlmICh0eXBlb2YgbW9ja0Rpc3BhdGNoLmhlYWRlcnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzKSkgeyAvLyBmZXRjaCBIZWFkZXJzTGlzdFxuICAgICAgaGVhZGVycyA9IGJ1aWxkSGVhZGVyc0Zyb21BcnJheShoZWFkZXJzKVxuICAgIH1cbiAgICByZXR1cm4gbW9ja0Rpc3BhdGNoLmhlYWRlcnMoaGVhZGVycyA/IGxvd2VyQ2FzZUVudHJpZXMoaGVhZGVycykgOiB7fSlcbiAgfVxuICBpZiAodHlwZW9mIG1vY2tEaXNwYXRjaC5oZWFkZXJzID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiB0cnVlXG4gIH1cbiAgaWYgKHR5cGVvZiBoZWFkZXJzICE9PSAnb2JqZWN0JyB8fCB0eXBlb2YgbW9ja0Rpc3BhdGNoLmhlYWRlcnMgIT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBmb3IgKGNvbnN0IFttYXRjaEhlYWRlck5hbWUsIG1hdGNoSGVhZGVyVmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKG1vY2tEaXNwYXRjaC5oZWFkZXJzKSkge1xuICAgIGNvbnN0IGhlYWRlclZhbHVlID0gZ2V0SGVhZGVyQnlOYW1lKGhlYWRlcnMsIG1hdGNoSGVhZGVyTmFtZSlcblxuICAgIGlmICghbWF0Y2hWYWx1ZShtYXRjaEhlYWRlclZhbHVlLCBoZWFkZXJWYWx1ZSkpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuICByZXR1cm4gdHJ1ZVxufVxuXG5mdW5jdGlvbiBzYWZlVXJsIChwYXRoKSB7XG4gIGlmICh0eXBlb2YgcGF0aCAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gcGF0aFxuICB9XG5cbiAgY29uc3QgcGF0aFNlZ21lbnRzID0gcGF0aC5zcGxpdCgnPycpXG5cbiAgaWYgKHBhdGhTZWdtZW50cy5sZW5ndGggIT09IDIpIHtcbiAgICByZXR1cm4gcGF0aFxuICB9XG5cbiAgY29uc3QgcXAgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHBhdGhTZWdtZW50cy5wb3AoKSlcbiAgcXAuc29ydCgpXG4gIHJldHVybiBbLi4ucGF0aFNlZ21lbnRzLCBxcC50b1N0cmluZygpXS5qb2luKCc/Jylcbn1cblxuZnVuY3Rpb24gbWF0Y2hLZXkgKG1vY2tEaXNwYXRjaCwgeyBwYXRoLCBtZXRob2QsIGJvZHksIGhlYWRlcnMgfSkge1xuICBjb25zdCBwYXRoTWF0Y2ggPSBtYXRjaFZhbHVlKG1vY2tEaXNwYXRjaC5wYXRoLCBwYXRoKVxuICBjb25zdCBtZXRob2RNYXRjaCA9IG1hdGNoVmFsdWUobW9ja0Rpc3BhdGNoLm1ldGhvZCwgbWV0aG9kKVxuICBjb25zdCBib2R5TWF0Y2ggPSB0eXBlb2YgbW9ja0Rpc3BhdGNoLmJvZHkgIT09ICd1bmRlZmluZWQnID8gbWF0Y2hWYWx1ZShtb2NrRGlzcGF0Y2guYm9keSwgYm9keSkgOiB0cnVlXG4gIGNvbnN0IGhlYWRlcnNNYXRjaCA9IG1hdGNoSGVhZGVycyhtb2NrRGlzcGF0Y2gsIGhlYWRlcnMpXG4gIHJldHVybiBwYXRoTWF0Y2ggJiYgbWV0aG9kTWF0Y2ggJiYgYm9keU1hdGNoICYmIGhlYWRlcnNNYXRjaFxufVxuXG5mdW5jdGlvbiBnZXRSZXNwb25zZURhdGEgKGRhdGEpIHtcbiAgaWYgKEJ1ZmZlci5pc0J1ZmZlcihkYXRhKSkge1xuICAgIHJldHVybiBkYXRhXG4gIH0gZWxzZSBpZiAodHlwZW9mIGRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGRhdGEpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGRhdGEudG9TdHJpbmcoKVxuICB9XG59XG5cbmZ1bmN0aW9uIGdldE1vY2tEaXNwYXRjaCAobW9ja0Rpc3BhdGNoZXMsIGtleSkge1xuICBjb25zdCBiYXNlUGF0aCA9IGtleS5xdWVyeSA/IGJ1aWxkVVJMKGtleS5wYXRoLCBrZXkucXVlcnkpIDoga2V5LnBhdGhcbiAgY29uc3QgcmVzb2x2ZWRQYXRoID0gdHlwZW9mIGJhc2VQYXRoID09PSAnc3RyaW5nJyA/IHNhZmVVcmwoYmFzZVBhdGgpIDogYmFzZVBhdGhcblxuICAvLyBNYXRjaCBwYXRoXG4gIGxldCBtYXRjaGVkTW9ja0Rpc3BhdGNoZXMgPSBtb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKHsgY29uc3VtZWQgfSkgPT4gIWNvbnN1bWVkKS5maWx0ZXIoKHsgcGF0aCB9KSA9PiBtYXRjaFZhbHVlKHNhZmVVcmwocGF0aCksIHJlc29sdmVkUGF0aCkpXG4gIGlmIChtYXRjaGVkTW9ja0Rpc3BhdGNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYE1vY2sgZGlzcGF0Y2ggbm90IG1hdGNoZWQgZm9yIHBhdGggJyR7cmVzb2x2ZWRQYXRofSdgKVxuICB9XG5cbiAgLy8gTWF0Y2ggbWV0aG9kXG4gIG1hdGNoZWRNb2NrRGlzcGF0Y2hlcyA9IG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKHsgbWV0aG9kIH0pID0+IG1hdGNoVmFsdWUobWV0aG9kLCBrZXkubWV0aG9kKSlcbiAgaWYgKG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5sZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgTW9ja05vdE1hdGNoZWRFcnJvcihgTW9jayBkaXNwYXRjaCBub3QgbWF0Y2hlZCBmb3IgbWV0aG9kICcke2tleS5tZXRob2R9J2ApXG4gIH1cblxuICAvLyBNYXRjaCBib2R5XG4gIG1hdGNoZWRNb2NrRGlzcGF0Y2hlcyA9IG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKHsgYm9keSB9KSA9PiB0eXBlb2YgYm9keSAhPT0gJ3VuZGVmaW5lZCcgPyBtYXRjaFZhbHVlKGJvZHksIGtleS5ib2R5KSA6IHRydWUpXG4gIGlmIChtYXRjaGVkTW9ja0Rpc3BhdGNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYE1vY2sgZGlzcGF0Y2ggbm90IG1hdGNoZWQgZm9yIGJvZHkgJyR7a2V5LmJvZHl9J2ApXG4gIH1cblxuICAvLyBNYXRjaCBoZWFkZXJzXG4gIG1hdGNoZWRNb2NrRGlzcGF0Y2hlcyA9IG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKG1vY2tEaXNwYXRjaCkgPT4gbWF0Y2hIZWFkZXJzKG1vY2tEaXNwYXRjaCwga2V5LmhlYWRlcnMpKVxuICBpZiAobWF0Y2hlZE1vY2tEaXNwYXRjaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgIHRocm93IG5ldyBNb2NrTm90TWF0Y2hlZEVycm9yKGBNb2NrIGRpc3BhdGNoIG5vdCBtYXRjaGVkIGZvciBoZWFkZXJzICcke3R5cGVvZiBrZXkuaGVhZGVycyA9PT0gJ29iamVjdCcgPyBKU09OLnN0cmluZ2lmeShrZXkuaGVhZGVycykgOiBrZXkuaGVhZGVyc30nYClcbiAgfVxuXG4gIHJldHVybiBtYXRjaGVkTW9ja0Rpc3BhdGNoZXNbMF1cbn1cblxuZnVuY3Rpb24gYWRkTW9ja0Rpc3BhdGNoIChtb2NrRGlzcGF0Y2hlcywga2V5LCBkYXRhKSB7XG4gIGNvbnN0IGJhc2VEYXRhID0geyB0aW1lc0ludm9rZWQ6IDAsIHRpbWVzOiAxLCBwZXJzaXN0OiBmYWxzZSwgY29uc3VtZWQ6IGZhbHNlIH1cbiAgY29uc3QgcmVwbHlEYXRhID0gdHlwZW9mIGRhdGEgPT09ICdmdW5jdGlvbicgPyB7IGNhbGxiYWNrOiBkYXRhIH0gOiB7IC4uLmRhdGEgfVxuICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSB7IC4uLmJhc2VEYXRhLCAuLi5rZXksIHBlbmRpbmc6IHRydWUsIGRhdGE6IHsgZXJyb3I6IG51bGwsIC4uLnJlcGx5RGF0YSB9IH1cbiAgbW9ja0Rpc3BhdGNoZXMucHVzaChuZXdNb2NrRGlzcGF0Y2gpXG4gIHJldHVybiBuZXdNb2NrRGlzcGF0Y2hcbn1cblxuZnVuY3Rpb24gZGVsZXRlTW9ja0Rpc3BhdGNoIChtb2NrRGlzcGF0Y2hlcywga2V5KSB7XG4gIGNvbnN0IGluZGV4ID0gbW9ja0Rpc3BhdGNoZXMuZmluZEluZGV4KGRpc3BhdGNoID0+IHtcbiAgICBpZiAoIWRpc3BhdGNoLmNvbnN1bWVkKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gICAgcmV0dXJuIG1hdGNoS2V5KGRpc3BhdGNoLCBrZXkpXG4gIH0pXG4gIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICBtb2NrRGlzcGF0Y2hlcy5zcGxpY2UoaW5kZXgsIDEpXG4gIH1cbn1cblxuZnVuY3Rpb24gYnVpbGRLZXkgKG9wdHMpIHtcbiAgY29uc3QgeyBwYXRoLCBtZXRob2QsIGJvZHksIGhlYWRlcnMsIHF1ZXJ5IH0gPSBvcHRzXG4gIHJldHVybiB7XG4gICAgcGF0aCxcbiAgICBtZXRob2QsXG4gICAgYm9keSxcbiAgICBoZWFkZXJzLFxuICAgIHF1ZXJ5XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVLZXlWYWx1ZXMgKGRhdGEpIHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGRhdGEpLnJlZHVjZSgoa2V5VmFsdWVQYWlycywgW2tleSwgdmFsdWVdKSA9PiBbXG4gICAgLi4ua2V5VmFsdWVQYWlycyxcbiAgICBCdWZmZXIuZnJvbShgJHtrZXl9YCksXG4gICAgQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZS5tYXAoeCA9PiBCdWZmZXIuZnJvbShgJHt4fWApKSA6IEJ1ZmZlci5mcm9tKGAke3ZhbHVlfWApXG4gIF0sIFtdKVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRUUC9TdGF0dXNcbiAqIEBwYXJhbSB7bnVtYmVyfSBzdGF0dXNDb2RlXG4gKi9cbmZ1bmN0aW9uIGdldFN0YXR1c1RleHQgKHN0YXR1c0NvZGUpIHtcbiAgcmV0dXJuIFNUQVRVU19DT0RFU1tzdGF0dXNDb2RlXSB8fCAndW5rbm93bidcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0UmVzcG9uc2UgKGJvZHkpIHtcbiAgY29uc3QgYnVmZmVycyA9IFtdXG4gIGZvciBhd2FpdCAoY29uc3QgZGF0YSBvZiBib2R5KSB7XG4gICAgYnVmZmVycy5wdXNoKGRhdGEpXG4gIH1cbiAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoYnVmZmVycykudG9TdHJpbmcoJ3V0ZjgnKVxufVxuXG4vKipcbiAqIE1vY2sgZGlzcGF0Y2ggZnVuY3Rpb24gdXNlZCB0byBzaW11bGF0ZSB1bmRpY2kgZGlzcGF0Y2hlc1xuICovXG5mdW5jdGlvbiBtb2NrRGlzcGF0Y2ggKG9wdHMsIGhhbmRsZXIpIHtcbiAgLy8gR2V0IG1vY2sgZGlzcGF0Y2ggZnJvbSBidWlsdCBrZXlcbiAgY29uc3Qga2V5ID0gYnVpbGRLZXkob3B0cylcbiAgY29uc3QgbW9ja0Rpc3BhdGNoID0gZ2V0TW9ja0Rpc3BhdGNoKHRoaXNba0Rpc3BhdGNoZXNdLCBrZXkpXG5cbiAgbW9ja0Rpc3BhdGNoLnRpbWVzSW52b2tlZCsrXG5cbiAgLy8gSGVyZSdzIHdoZXJlIHdlIHJlc29sdmUgYSBjYWxsYmFjayBpZiBhIGNhbGxiYWNrIGlzIHByZXNlbnQgZm9yIHRoZSBkaXNwYXRjaCBkYXRhLlxuICBpZiAobW9ja0Rpc3BhdGNoLmRhdGEuY2FsbGJhY2spIHtcbiAgICBtb2NrRGlzcGF0Y2guZGF0YSA9IHsgLi4ubW9ja0Rpc3BhdGNoLmRhdGEsIC4uLm1vY2tEaXNwYXRjaC5kYXRhLmNhbGxiYWNrKG9wdHMpIH1cbiAgfVxuXG4gIC8vIFBhcnNlIG1vY2tEaXNwYXRjaCBkYXRhXG4gIGNvbnN0IHsgZGF0YTogeyBzdGF0dXNDb2RlLCBkYXRhLCBoZWFkZXJzLCB0cmFpbGVycywgZXJyb3IgfSwgZGVsYXksIHBlcnNpc3QgfSA9IG1vY2tEaXNwYXRjaFxuICBjb25zdCB7IHRpbWVzSW52b2tlZCwgdGltZXMgfSA9IG1vY2tEaXNwYXRjaFxuXG4gIC8vIElmIGl0J3MgdXNlZCB1cCBhbmQgbm90IHBlcnNpc3RlbnQsIG1hcmsgYXMgY29uc3VtZWRcbiAgbW9ja0Rpc3BhdGNoLmNvbnN1bWVkID0gIXBlcnNpc3QgJiYgdGltZXNJbnZva2VkID49IHRpbWVzXG4gIG1vY2tEaXNwYXRjaC5wZW5kaW5nID0gdGltZXNJbnZva2VkIDwgdGltZXNcblxuICAvLyBJZiBzcGVjaWZpZWQsIHRyaWdnZXIgZGlzcGF0Y2ggZXJyb3JcbiAgaWYgKGVycm9yICE9PSBudWxsKSB7XG4gICAgZGVsZXRlTW9ja0Rpc3BhdGNoKHRoaXNba0Rpc3BhdGNoZXNdLCBrZXkpXG4gICAgaGFuZGxlci5vbkVycm9yKGVycm9yKVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvLyBIYW5kbGUgdGhlIHJlcXVlc3Qgd2l0aCBhIGRlbGF5IGlmIG5lY2Vzc2FyeVxuICBpZiAodHlwZW9mIGRlbGF5ID09PSAnbnVtYmVyJyAmJiBkZWxheSA+IDApIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGhhbmRsZVJlcGx5KHRoaXNba0Rpc3BhdGNoZXNdKVxuICAgIH0sIGRlbGF5KVxuICB9IGVsc2Uge1xuICAgIGhhbmRsZVJlcGx5KHRoaXNba0Rpc3BhdGNoZXNdKVxuICB9XG5cbiAgZnVuY3Rpb24gaGFuZGxlUmVwbHkgKG1vY2tEaXNwYXRjaGVzLCBfZGF0YSA9IGRhdGEpIHtcbiAgICAvLyBmZXRjaCdzIEhlYWRlcnNMaXN0IGlzIGEgMUQgc3RyaW5nIGFycmF5XG4gICAgY29uc3Qgb3B0c0hlYWRlcnMgPSBBcnJheS5pc0FycmF5KG9wdHMuaGVhZGVycylcbiAgICAgID8gYnVpbGRIZWFkZXJzRnJvbUFycmF5KG9wdHMuaGVhZGVycylcbiAgICAgIDogb3B0cy5oZWFkZXJzXG4gICAgY29uc3QgYm9keSA9IHR5cGVvZiBfZGF0YSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgPyBfZGF0YSh7IC4uLm9wdHMsIGhlYWRlcnM6IG9wdHNIZWFkZXJzIH0pXG4gICAgICA6IF9kYXRhXG5cbiAgICAvLyB1dGlsLnR5cGVzLmlzUHJvbWlzZSBpcyBsaWtlbHkgbmVlZGVkIGZvciBqZXN0LlxuICAgIGlmIChpc1Byb21pc2UoYm9keSkpIHtcbiAgICAgIC8vIElmIGhhbmRsZVJlcGx5IGlzIGFzeW5jaHJvbm91cywgdGhyb3dpbmcgYW4gZXJyb3JcbiAgICAgIC8vIGluIHRoZSBjYWxsYmFjayB3aWxsIHJlamVjdCB0aGUgcHJvbWlzZSwgcmF0aGVyIHRoYW5cbiAgICAgIC8vIHN5bmNocm9ub3VzbHkgdGhyb3cgdGhlIGVycm9yLCB3aGljaCBicmVha3Mgc29tZSB0ZXN0cy5cbiAgICAgIC8vIFJhdGhlciwgd2Ugd2FpdCBmb3IgdGhlIGNhbGxiYWNrIHRvIHJlc29sdmUgaWYgaXQgaXMgYVxuICAgICAgLy8gcHJvbWlzZSwgYW5kIHRoZW4gcmUtcnVuIGhhbmRsZVJlcGx5IHdpdGggdGhlIG5ldyBib2R5LlxuICAgICAgYm9keS50aGVuKChuZXdEYXRhKSA9PiBoYW5kbGVSZXBseShtb2NrRGlzcGF0Y2hlcywgbmV3RGF0YSkpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCByZXNwb25zZURhdGEgPSBnZXRSZXNwb25zZURhdGEoYm9keSlcbiAgICBjb25zdCByZXNwb25zZUhlYWRlcnMgPSBnZW5lcmF0ZUtleVZhbHVlcyhoZWFkZXJzKVxuICAgIGNvbnN0IHJlc3BvbnNlVHJhaWxlcnMgPSBnZW5lcmF0ZUtleVZhbHVlcyh0cmFpbGVycylcblxuICAgIGhhbmRsZXIuYWJvcnQgPSBub3BcbiAgICBoYW5kbGVyLm9uSGVhZGVycyhzdGF0dXNDb2RlLCByZXNwb25zZUhlYWRlcnMsIHJlc3VtZSwgZ2V0U3RhdHVzVGV4dChzdGF0dXNDb2RlKSlcbiAgICBoYW5kbGVyLm9uRGF0YShCdWZmZXIuZnJvbShyZXNwb25zZURhdGEpKVxuICAgIGhhbmRsZXIub25Db21wbGV0ZShyZXNwb25zZVRyYWlsZXJzKVxuICAgIGRlbGV0ZU1vY2tEaXNwYXRjaChtb2NrRGlzcGF0Y2hlcywga2V5KVxuICB9XG5cbiAgZnVuY3Rpb24gcmVzdW1lICgpIHt9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZnVuY3Rpb24gYnVpbGRNb2NrRGlzcGF0Y2ggKCkge1xuICBjb25zdCBhZ2VudCA9IHRoaXNba01vY2tBZ2VudF1cbiAgY29uc3Qgb3JpZ2luID0gdGhpc1trT3JpZ2luXVxuICBjb25zdCBvcmlnaW5hbERpc3BhdGNoID0gdGhpc1trT3JpZ2luYWxEaXNwYXRjaF1cblxuICByZXR1cm4gZnVuY3Rpb24gZGlzcGF0Y2ggKG9wdHMsIGhhbmRsZXIpIHtcbiAgICBpZiAoYWdlbnQuaXNNb2NrQWN0aXZlKSB7XG4gICAgICB0cnkge1xuICAgICAgICBtb2NrRGlzcGF0Y2guY2FsbCh0aGlzLCBvcHRzLCBoYW5kbGVyKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgTW9ja05vdE1hdGNoZWRFcnJvcikge1xuICAgICAgICAgIGNvbnN0IG5ldENvbm5lY3QgPSBhZ2VudFtrR2V0TmV0Q29ubmVjdF0oKVxuICAgICAgICAgIGlmIChuZXRDb25uZWN0ID09PSBmYWxzZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYCR7ZXJyb3IubWVzc2FnZX06IHN1YnNlcXVlbnQgcmVxdWVzdCB0byBvcmlnaW4gJHtvcmlnaW59IHdhcyBub3QgYWxsb3dlZCAobmV0LmNvbm5lY3QgZGlzYWJsZWQpYClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGNoZWNrTmV0Q29ubmVjdChuZXRDb25uZWN0LCBvcmlnaW4pKSB7XG4gICAgICAgICAgICBvcmlnaW5hbERpc3BhdGNoLmNhbGwodGhpcywgb3B0cywgaGFuZGxlcilcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYCR7ZXJyb3IubWVzc2FnZX06IHN1YnNlcXVlbnQgcmVxdWVzdCB0byBvcmlnaW4gJHtvcmlnaW59IHdhcyBub3QgYWxsb3dlZCAobmV0LmNvbm5lY3QgaXMgbm90IGVuYWJsZWQgZm9yIHRoaXMgb3JpZ2luKWApXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IGVycm9yXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgb3JpZ2luYWxEaXNwYXRjaC5jYWxsKHRoaXMsIG9wdHMsIGhhbmRsZXIpXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNoZWNrTmV0Q29ubmVjdCAobmV0Q29ubmVjdCwgb3JpZ2luKSB7XG4gIGNvbnN0IHVybCA9IG5ldyBVUkwob3JpZ2luKVxuICBpZiAobmV0Q29ubmVjdCA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiB0cnVlXG4gIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShuZXRDb25uZWN0KSAmJiBuZXRDb25uZWN0LnNvbWUoKG1hdGNoZXIpID0+IG1hdGNoVmFsdWUobWF0Y2hlciwgdXJsLmhvc3QpKSkge1xuICAgIHJldHVybiB0cnVlXG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmZ1bmN0aW9uIGJ1aWxkTW9ja09wdGlvbnMgKG9wdHMpIHtcbiAgaWYgKG9wdHMpIHtcbiAgICBjb25zdCB7IGFnZW50LCAuLi5tb2NrT3B0aW9ucyB9ID0gb3B0c1xuICAgIHJldHVybiBtb2NrT3B0aW9uc1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBnZXRSZXNwb25zZURhdGEsXG4gIGdldE1vY2tEaXNwYXRjaCxcbiAgYWRkTW9ja0Rpc3BhdGNoLFxuICBkZWxldGVNb2NrRGlzcGF0Y2gsXG4gIGJ1aWxkS2V5LFxuICBnZW5lcmF0ZUtleVZhbHVlcyxcbiAgbWF0Y2hWYWx1ZSxcbiAgZ2V0UmVzcG9uc2UsXG4gIGdldFN0YXR1c1RleHQsXG4gIG1vY2tEaXNwYXRjaCxcbiAgYnVpbGRNb2NrRGlzcGF0Y2gsXG4gIGNoZWNrTmV0Q29ubmVjdCxcbiAgYnVpbGRNb2NrT3B0aW9ucyxcbiAgZ2V0SGVhZGVyQnlOYW1lXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgZ2V0UmVzcG9uc2VEYXRhLCBidWlsZEtleSwgYWRkTW9ja0Rpc3BhdGNoIH0gPSByZXF1aXJlKCcuL21vY2stdXRpbHMnKVxuY29uc3Qge1xuICBrRGlzcGF0Y2hlcyxcbiAga0Rpc3BhdGNoS2V5LFxuICBrRGVmYXVsdEhlYWRlcnMsXG4gIGtEZWZhdWx0VHJhaWxlcnMsXG4gIGtDb250ZW50TGVuZ3RoLFxuICBrTW9ja0Rpc3BhdGNoXG59ID0gcmVxdWlyZSgnLi9tb2NrLXN5bWJvbHMnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyBidWlsZFVSTCB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBzY29wZSBBUEkgZm9yIGFuIGludGVyY2VwdG9yIHJlcGx5XG4gKi9cbmNsYXNzIE1vY2tTY29wZSB7XG4gIGNvbnN0cnVjdG9yIChtb2NrRGlzcGF0Y2gpIHtcbiAgICB0aGlzW2tNb2NrRGlzcGF0Y2hdID0gbW9ja0Rpc3BhdGNoXG4gIH1cblxuICAvKipcbiAgICogRGVsYXkgYSByZXBseSBieSBhIHNldCBhbW91bnQgaW4gbXMuXG4gICAqL1xuICBkZWxheSAod2FpdEluTXMpIHtcbiAgICBpZiAodHlwZW9mIHdhaXRJbk1zICE9PSAnbnVtYmVyJyB8fCAhTnVtYmVyLmlzSW50ZWdlcih3YWl0SW5NcykgfHwgd2FpdEluTXMgPD0gMCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd3YWl0SW5NcyBtdXN0IGJlIGEgdmFsaWQgaW50ZWdlciA+IDAnKVxuICAgIH1cblxuICAgIHRoaXNba01vY2tEaXNwYXRjaF0uZGVsYXkgPSB3YWl0SW5Nc1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogRm9yIGEgZGVmaW5lZCByZXBseSwgbmV2ZXIgbWFyayBhcyBjb25zdW1lZC5cbiAgICovXG4gIHBlcnNpc3QgKCkge1xuICAgIHRoaXNba01vY2tEaXNwYXRjaF0ucGVyc2lzdCA9IHRydWVcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93IG9uZSB0byBkZWZpbmUgYSByZXBseSBmb3IgYSBzZXQgYW1vdW50IG9mIG1hdGNoaW5nIHJlcXVlc3RzLlxuICAgKi9cbiAgdGltZXMgKHJlcGVhdFRpbWVzKSB7XG4gICAgaWYgKHR5cGVvZiByZXBlYXRUaW1lcyAhPT0gJ251bWJlcicgfHwgIU51bWJlci5pc0ludGVnZXIocmVwZWF0VGltZXMpIHx8IHJlcGVhdFRpbWVzIDw9IDApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigncmVwZWF0VGltZXMgbXVzdCBiZSBhIHZhbGlkIGludGVnZXIgPiAwJylcbiAgICB9XG5cbiAgICB0aGlzW2tNb2NrRGlzcGF0Y2hdLnRpbWVzID0gcmVwZWF0VGltZXNcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbi8qKlxuICogRGVmaW5lcyBhbiBpbnRlcmNlcHRvciBmb3IgYSBNb2NrXG4gKi9cbmNsYXNzIE1vY2tJbnRlcmNlcHRvciB7XG4gIGNvbnN0cnVjdG9yIChvcHRzLCBtb2NrRGlzcGF0Y2hlcykge1xuICAgIGlmICh0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignb3B0cyBtdXN0IGJlIGFuIG9iamVjdCcpXG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0cy5wYXRoID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdvcHRzLnBhdGggbXVzdCBiZSBkZWZpbmVkJylcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBvcHRzLm1ldGhvZCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIG9wdHMubWV0aG9kID0gJ0dFVCdcbiAgICB9XG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xMjQ1XG4gICAgLy8gQXMgcGVyIFJGQyAzOTg2LCBjbGllbnRzIGFyZSBub3Qgc3VwcG9zZWQgdG8gc2VuZCBVUklcbiAgICAvLyBmcmFnbWVudHMgdG8gc2VydmVycyB3aGVuIHRoZXkgcmV0cmlldmUgYSBkb2N1bWVudCxcbiAgICBpZiAodHlwZW9mIG9wdHMucGF0aCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmIChvcHRzLnF1ZXJ5KSB7XG4gICAgICAgIG9wdHMucGF0aCA9IGJ1aWxkVVJMKG9wdHMucGF0aCwgb3B0cy5xdWVyeSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE1hdGNoZXMgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvYmxvYi9tYWluL2xpYi9mZXRjaC9pbmRleC5qcyNMMTgxMVxuICAgICAgICBjb25zdCBwYXJzZWRVUkwgPSBuZXcgVVJMKG9wdHMucGF0aCwgJ2RhdGE6Ly8nKVxuICAgICAgICBvcHRzLnBhdGggPSBwYXJzZWRVUkwucGF0aG5hbWUgKyBwYXJzZWRVUkwuc2VhcmNoXG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0cy5tZXRob2QgPT09ICdzdHJpbmcnKSB7XG4gICAgICBvcHRzLm1ldGhvZCA9IG9wdHMubWV0aG9kLnRvVXBwZXJDYXNlKClcbiAgICB9XG5cbiAgICB0aGlzW2tEaXNwYXRjaEtleV0gPSBidWlsZEtleShvcHRzKVxuICAgIHRoaXNba0Rpc3BhdGNoZXNdID0gbW9ja0Rpc3BhdGNoZXNcbiAgICB0aGlzW2tEZWZhdWx0SGVhZGVyc10gPSB7fVxuICAgIHRoaXNba0RlZmF1bHRUcmFpbGVyc10gPSB7fVxuICAgIHRoaXNba0NvbnRlbnRMZW5ndGhdID0gZmFsc2VcbiAgfVxuXG4gIGNyZWF0ZU1vY2tTY29wZURpc3BhdGNoRGF0YSAoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zID0ge30pIHtcbiAgICBjb25zdCByZXNwb25zZURhdGEgPSBnZXRSZXNwb25zZURhdGEoZGF0YSlcbiAgICBjb25zdCBjb250ZW50TGVuZ3RoID0gdGhpc1trQ29udGVudExlbmd0aF0gPyB7ICdjb250ZW50LWxlbmd0aCc6IHJlc3BvbnNlRGF0YS5sZW5ndGggfSA6IHt9XG4gICAgY29uc3QgaGVhZGVycyA9IHsgLi4udGhpc1trRGVmYXVsdEhlYWRlcnNdLCAuLi5jb250ZW50TGVuZ3RoLCAuLi5yZXNwb25zZU9wdGlvbnMuaGVhZGVycyB9XG4gICAgY29uc3QgdHJhaWxlcnMgPSB7IC4uLnRoaXNba0RlZmF1bHRUcmFpbGVyc10sIC4uLnJlc3BvbnNlT3B0aW9ucy50cmFpbGVycyB9XG5cbiAgICByZXR1cm4geyBzdGF0dXNDb2RlLCBkYXRhLCBoZWFkZXJzLCB0cmFpbGVycyB9XG4gIH1cblxuICB2YWxpZGF0ZVJlcGx5UGFyYW1ldGVycyAoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zKSB7XG4gICAgaWYgKHR5cGVvZiBzdGF0dXNDb2RlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzdGF0dXNDb2RlIG11c3QgYmUgZGVmaW5lZCcpXG4gICAgfVxuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignZGF0YSBtdXN0IGJlIGRlZmluZWQnKVxuICAgIH1cbiAgICBpZiAodHlwZW9mIHJlc3BvbnNlT3B0aW9ucyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigncmVzcG9uc2VPcHRpb25zIG11c3QgYmUgYW4gb2JqZWN0JylcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTW9jayBhbiB1bmRpY2kgcmVxdWVzdCB3aXRoIGEgZGVmaW5lZCByZXBseS5cbiAgICovXG4gIHJlcGx5IChyZXBseURhdGEpIHtcbiAgICAvLyBWYWx1ZXMgb2YgcmVwbHkgYXJlbid0IGF2YWlsYWJsZSByaWdodCBub3cgYXMgdGhleVxuICAgIC8vIGNhbiBvbmx5IGJlIGF2YWlsYWJsZSB3aGVuIHRoZSByZXBseSBjYWxsYmFjayBpcyBpbnZva2VkLlxuICAgIGlmICh0eXBlb2YgcmVwbHlEYXRhID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAvLyBXZSdsbCBmaXJzdCB3cmFwIHRoZSBwcm92aWRlZCBjYWxsYmFjayBpbiBhbm90aGVyIGZ1bmN0aW9uLFxuICAgICAgLy8gdGhpcyBmdW5jdGlvbiB3aWxsIHByb3Blcmx5IHJlc29sdmUgdGhlIGRhdGEgZnJvbSB0aGUgY2FsbGJhY2tcbiAgICAgIC8vIHdoZW4gaW52b2tlZC5cbiAgICAgIGNvbnN0IHdyYXBwZWREZWZhdWx0c0NhbGxiYWNrID0gKG9wdHMpID0+IHtcbiAgICAgICAgLy8gT3VyIHJlcGx5IG9wdGlvbnMgY2FsbGJhY2sgY29udGFpbnMgdGhlIHBhcmFtZXRlciBmb3Igc3RhdHVzQ29kZSwgZGF0YSBhbmQgb3B0aW9ucy5cbiAgICAgICAgY29uc3QgcmVzb2x2ZWREYXRhID0gcmVwbHlEYXRhKG9wdHMpXG5cbiAgICAgICAgLy8gQ2hlY2sgaWYgaXQgaXMgaW4gdGhlIHJpZ2h0IGZvcm1hdFxuICAgICAgICBpZiAodHlwZW9mIHJlc29sdmVkRGF0YSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3JlcGx5IG9wdGlvbnMgY2FsbGJhY2sgbXVzdCByZXR1cm4gYW4gb2JqZWN0JylcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgc3RhdHVzQ29kZSwgZGF0YSA9ICcnLCByZXNwb25zZU9wdGlvbnMgPSB7fSB9ID0gcmVzb2x2ZWREYXRhXG4gICAgICAgIHRoaXMudmFsaWRhdGVSZXBseVBhcmFtZXRlcnMoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zKVxuICAgICAgICAvLyBTaW5jZSB0aGUgdmFsdWVzIGNhbiBiZSBvYnRhaW5lZCBpbW1lZGlhdGVseSB3ZSByZXR1cm4gdGhlbVxuICAgICAgICAvLyBmcm9tIHRoaXMgaGlnaGVyIG9yZGVyIGZ1bmN0aW9uIHRoYXQgd2lsbCBiZSByZXNvbHZlZCBsYXRlci5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi50aGlzLmNyZWF0ZU1vY2tTY29wZURpc3BhdGNoRGF0YShzdGF0dXNDb2RlLCBkYXRhLCByZXNwb25zZU9wdGlvbnMpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gQWRkIHVzdWFsIGRpc3BhdGNoIGRhdGEsIGJ1dCB0aGlzIHRpbWUgc2V0IHRoZSBkYXRhIHBhcmFtZXRlciB0byBmdW5jdGlvbiB0aGF0IHdpbGwgZXZlbnR1YWxseSBwcm92aWRlIGRhdGEuXG4gICAgICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSBhZGRNb2NrRGlzcGF0Y2godGhpc1trRGlzcGF0Y2hlc10sIHRoaXNba0Rpc3BhdGNoS2V5XSwgd3JhcHBlZERlZmF1bHRzQ2FsbGJhY2spXG4gICAgICByZXR1cm4gbmV3IE1vY2tTY29wZShuZXdNb2NrRGlzcGF0Y2gpXG4gICAgfVxuXG4gICAgLy8gV2UgY2FuIGhhdmUgZWl0aGVyIG9uZSBvciB0aHJlZSBwYXJhbWV0ZXJzLCBpZiB3ZSBnZXQgaGVyZSxcbiAgICAvLyB3ZSBzaG91bGQgaGF2ZSAxLTMgcGFyYW1ldGVycy4gU28gd2Ugc3ByZWFkIHRoZSBhcmd1bWVudHMgb2ZcbiAgICAvLyB0aGlzIGZ1bmN0aW9uIHRvIG9idGFpbiB0aGUgcGFyYW1ldGVycywgc2luY2UgcmVwbHlEYXRhIHdpbGwgYWx3YXlzXG4gICAgLy8ganVzdCBiZSB0aGUgc3RhdHVzQ29kZS5cbiAgICBjb25zdCBbc3RhdHVzQ29kZSwgZGF0YSA9ICcnLCByZXNwb25zZU9wdGlvbnMgPSB7fV0gPSBbLi4uYXJndW1lbnRzXVxuICAgIHRoaXMudmFsaWRhdGVSZXBseVBhcmFtZXRlcnMoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zKVxuXG4gICAgLy8gU2VuZCBpbi1hbHJlYWR5IHByb3ZpZGVkIGRhdGEgbGlrZSB1c3VhbFxuICAgIGNvbnN0IGRpc3BhdGNoRGF0YSA9IHRoaXMuY3JlYXRlTW9ja1Njb3BlRGlzcGF0Y2hEYXRhKHN0YXR1c0NvZGUsIGRhdGEsIHJlc3BvbnNlT3B0aW9ucylcbiAgICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSBhZGRNb2NrRGlzcGF0Y2godGhpc1trRGlzcGF0Y2hlc10sIHRoaXNba0Rpc3BhdGNoS2V5XSwgZGlzcGF0Y2hEYXRhKVxuICAgIHJldHVybiBuZXcgTW9ja1Njb3BlKG5ld01vY2tEaXNwYXRjaClcbiAgfVxuXG4gIC8qKlxuICAgKiBNb2NrIGFuIHVuZGljaSByZXF1ZXN0IHdpdGggYSBkZWZpbmVkIGVycm9yLlxuICAgKi9cbiAgcmVwbHlXaXRoRXJyb3IgKGVycm9yKSB7XG4gICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignZXJyb3IgbXVzdCBiZSBkZWZpbmVkJylcbiAgICB9XG5cbiAgICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSBhZGRNb2NrRGlzcGF0Y2godGhpc1trRGlzcGF0Y2hlc10sIHRoaXNba0Rpc3BhdGNoS2V5XSwgeyBlcnJvciB9KVxuICAgIHJldHVybiBuZXcgTW9ja1Njb3BlKG5ld01vY2tEaXNwYXRjaClcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgZGVmYXVsdCByZXBseSBoZWFkZXJzIG9uIHRoZSBpbnRlcmNlcHRvciBmb3Igc3Vic2VxdWVudCByZXBsaWVzXG4gICAqL1xuICBkZWZhdWx0UmVwbHlIZWFkZXJzIChoZWFkZXJzKSB7XG4gICAgaWYgKHR5cGVvZiBoZWFkZXJzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoZWFkZXJzIG11c3QgYmUgZGVmaW5lZCcpXG4gICAgfVxuXG4gICAgdGhpc1trRGVmYXVsdEhlYWRlcnNdID0gaGVhZGVyc1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IGRlZmF1bHQgcmVwbHkgdHJhaWxlcnMgb24gdGhlIGludGVyY2VwdG9yIGZvciBzdWJzZXF1ZW50IHJlcGxpZXNcbiAgICovXG4gIGRlZmF1bHRSZXBseVRyYWlsZXJzICh0cmFpbGVycykge1xuICAgIGlmICh0eXBlb2YgdHJhaWxlcnMgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3RyYWlsZXJzIG11c3QgYmUgZGVmaW5lZCcpXG4gICAgfVxuXG4gICAgdGhpc1trRGVmYXVsdFRyYWlsZXJzXSA9IHRyYWlsZXJzXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgcmVwbHkgY29udGVudCBsZW5ndGggaGVhZGVyIGZvciByZXBsaWVzIG9uIHRoZSBpbnRlcmNlcHRvclxuICAgKi9cbiAgcmVwbHlDb250ZW50TGVuZ3RoICgpIHtcbiAgICB0aGlzW2tDb250ZW50TGVuZ3RoXSA9IHRydWVcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzLk1vY2tJbnRlcmNlcHRvciA9IE1vY2tJbnRlcmNlcHRvclxubW9kdWxlLmV4cG9ydHMuTW9ja1Njb3BlID0gTW9ja1Njb3BlXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcHJvbWlzaWZ5IH0gPSByZXF1aXJlKCd1dGlsJylcbmNvbnN0IENsaWVudCA9IHJlcXVpcmUoJy4uL2NsaWVudCcpXG5jb25zdCB7IGJ1aWxkTW9ja0Rpc3BhdGNoIH0gPSByZXF1aXJlKCcuL21vY2stdXRpbHMnKVxuY29uc3Qge1xuICBrRGlzcGF0Y2hlcyxcbiAga01vY2tBZ2VudCxcbiAga0Nsb3NlLFxuICBrT3JpZ2luYWxDbG9zZSxcbiAga09yaWdpbixcbiAga09yaWdpbmFsRGlzcGF0Y2gsXG4gIGtDb25uZWN0ZWRcbn0gPSByZXF1aXJlKCcuL21vY2stc3ltYm9scycpXG5jb25zdCB7IE1vY2tJbnRlcmNlcHRvciB9ID0gcmVxdWlyZSgnLi9tb2NrLWludGVyY2VwdG9yJylcbmNvbnN0IFN5bWJvbHMgPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuXG4vKipcbiAqIE1vY2tDbGllbnQgcHJvdmlkZXMgYW4gQVBJIHRoYXQgZXh0ZW5kcyB0aGUgQ2xpZW50IHRvIGluZmx1ZW5jZSB0aGUgbW9ja0Rpc3BhdGNoZXMuXG4gKi9cbmNsYXNzIE1vY2tDbGllbnQgZXh0ZW5kcyBDbGllbnQge1xuICBjb25zdHJ1Y3RvciAob3JpZ2luLCBvcHRzKSB7XG4gICAgc3VwZXIob3JpZ2luLCBvcHRzKVxuXG4gICAgaWYgKCFvcHRzIHx8ICFvcHRzLmFnZW50IHx8IHR5cGVvZiBvcHRzLmFnZW50LmRpc3BhdGNoICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0FyZ3VtZW50IG9wdHMuYWdlbnQgbXVzdCBpbXBsZW1lbnQgQWdlbnQnKVxuICAgIH1cblxuICAgIHRoaXNba01vY2tBZ2VudF0gPSBvcHRzLmFnZW50XG4gICAgdGhpc1trT3JpZ2luXSA9IG9yaWdpblxuICAgIHRoaXNba0Rpc3BhdGNoZXNdID0gW11cbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMVxuICAgIHRoaXNba09yaWdpbmFsRGlzcGF0Y2hdID0gdGhpcy5kaXNwYXRjaFxuICAgIHRoaXNba09yaWdpbmFsQ2xvc2VdID0gdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG5cbiAgICB0aGlzLmRpc3BhdGNoID0gYnVpbGRNb2NrRGlzcGF0Y2guY2FsbCh0aGlzKVxuICAgIHRoaXMuY2xvc2UgPSB0aGlzW2tDbG9zZV1cbiAgfVxuXG4gIGdldCBbU3ltYm9scy5rQ29ubmVjdGVkXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0Nvbm5lY3RlZF1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHVwIHRoZSBiYXNlIGludGVyY2VwdG9yIGZvciBtb2NraW5nIHJlcGxpZXMgZnJvbSB1bmRpY2kuXG4gICAqL1xuICBpbnRlcmNlcHQgKG9wdHMpIHtcbiAgICByZXR1cm4gbmV3IE1vY2tJbnRlcmNlcHRvcihvcHRzLCB0aGlzW2tEaXNwYXRjaGVzXSlcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICBhd2FpdCBwcm9taXNpZnkodGhpc1trT3JpZ2luYWxDbG9zZV0pKClcbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMFxuICAgIHRoaXNba01vY2tBZ2VudF1bU3ltYm9scy5rQ2xpZW50c10uZGVsZXRlKHRoaXNba09yaWdpbl0pXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBNb2NrQ2xpZW50XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcHJvbWlzaWZ5IH0gPSByZXF1aXJlKCd1dGlsJylcbmNvbnN0IFBvb2wgPSByZXF1aXJlKCcuLi9wb29sJylcbmNvbnN0IHsgYnVpbGRNb2NrRGlzcGF0Y2ggfSA9IHJlcXVpcmUoJy4vbW9jay11dGlscycpXG5jb25zdCB7XG4gIGtEaXNwYXRjaGVzLFxuICBrTW9ja0FnZW50LFxuICBrQ2xvc2UsXG4gIGtPcmlnaW5hbENsb3NlLFxuICBrT3JpZ2luLFxuICBrT3JpZ2luYWxEaXNwYXRjaCxcbiAga0Nvbm5lY3RlZFxufSA9IHJlcXVpcmUoJy4vbW9jay1zeW1ib2xzJylcbmNvbnN0IHsgTW9ja0ludGVyY2VwdG9yIH0gPSByZXF1aXJlKCcuL21vY2staW50ZXJjZXB0b3InKVxuY29uc3QgU3ltYm9scyA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5cbi8qKlxuICogTW9ja1Bvb2wgcHJvdmlkZXMgYW4gQVBJIHRoYXQgZXh0ZW5kcyB0aGUgUG9vbCB0byBpbmZsdWVuY2UgdGhlIG1vY2tEaXNwYXRjaGVzLlxuICovXG5jbGFzcyBNb2NrUG9vbCBleHRlbmRzIFBvb2wge1xuICBjb25zdHJ1Y3RvciAob3JpZ2luLCBvcHRzKSB7XG4gICAgc3VwZXIob3JpZ2luLCBvcHRzKVxuXG4gICAgaWYgKCFvcHRzIHx8ICFvcHRzLmFnZW50IHx8IHR5cGVvZiBvcHRzLmFnZW50LmRpc3BhdGNoICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0FyZ3VtZW50IG9wdHMuYWdlbnQgbXVzdCBpbXBsZW1lbnQgQWdlbnQnKVxuICAgIH1cblxuICAgIHRoaXNba01vY2tBZ2VudF0gPSBvcHRzLmFnZW50XG4gICAgdGhpc1trT3JpZ2luXSA9IG9yaWdpblxuICAgIHRoaXNba0Rpc3BhdGNoZXNdID0gW11cbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMVxuICAgIHRoaXNba09yaWdpbmFsRGlzcGF0Y2hdID0gdGhpcy5kaXNwYXRjaFxuICAgIHRoaXNba09yaWdpbmFsQ2xvc2VdID0gdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG5cbiAgICB0aGlzLmRpc3BhdGNoID0gYnVpbGRNb2NrRGlzcGF0Y2guY2FsbCh0aGlzKVxuICAgIHRoaXMuY2xvc2UgPSB0aGlzW2tDbG9zZV1cbiAgfVxuXG4gIGdldCBbU3ltYm9scy5rQ29ubmVjdGVkXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0Nvbm5lY3RlZF1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHVwIHRoZSBiYXNlIGludGVyY2VwdG9yIGZvciBtb2NraW5nIHJlcGxpZXMgZnJvbSB1bmRpY2kuXG4gICAqL1xuICBpbnRlcmNlcHQgKG9wdHMpIHtcbiAgICByZXR1cm4gbmV3IE1vY2tJbnRlcmNlcHRvcihvcHRzLCB0aGlzW2tEaXNwYXRjaGVzXSlcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICBhd2FpdCBwcm9taXNpZnkodGhpc1trT3JpZ2luYWxDbG9zZV0pKClcbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMFxuICAgIHRoaXNba01vY2tBZ2VudF1bU3ltYm9scy5rQ2xpZW50c10uZGVsZXRlKHRoaXNba09yaWdpbl0pXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBNb2NrUG9vbFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBzaW5ndWxhcnMgPSB7XG4gIHByb25vdW46ICdpdCcsXG4gIGlzOiAnaXMnLFxuICB3YXM6ICd3YXMnLFxuICB0aGlzOiAndGhpcydcbn1cblxuY29uc3QgcGx1cmFscyA9IHtcbiAgcHJvbm91bjogJ3RoZXknLFxuICBpczogJ2FyZScsXG4gIHdhczogJ3dlcmUnLFxuICB0aGlzOiAndGhlc2UnXG59XG5cbm1vZHVsZS5leHBvcnRzID0gY2xhc3MgUGx1cmFsaXplciB7XG4gIGNvbnN0cnVjdG9yIChzaW5ndWxhciwgcGx1cmFsKSB7XG4gICAgdGhpcy5zaW5ndWxhciA9IHNpbmd1bGFyXG4gICAgdGhpcy5wbHVyYWwgPSBwbHVyYWxcbiAgfVxuXG4gIHBsdXJhbGl6ZSAoY291bnQpIHtcbiAgICBjb25zdCBvbmUgPSBjb3VudCA9PT0gMVxuICAgIGNvbnN0IGtleXMgPSBvbmUgPyBzaW5ndWxhcnMgOiBwbHVyYWxzXG4gICAgY29uc3Qgbm91biA9IG9uZSA/IHRoaXMuc2luZ3VsYXIgOiB0aGlzLnBsdXJhbFxuICAgIHJldHVybiB7IC4uLmtleXMsIGNvdW50LCBub3VuIH1cbiAgfVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IFRyYW5zZm9ybSB9ID0gcmVxdWlyZSgnc3RyZWFtJylcbmNvbnN0IHsgQ29uc29sZSB9ID0gcmVxdWlyZSgnY29uc29sZScpXG5cbi8qKlxuICogR2V0cyB0aGUgb3V0cHV0IG9mIGBjb25zb2xlLnRhYmxlKFx1MjAyNilgIGFzIGEgc3RyaW5nLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGNsYXNzIFBlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIge1xuICBjb25zdHJ1Y3RvciAoeyBkaXNhYmxlQ29sb3JzIH0gPSB7fSkge1xuICAgIHRoaXMudHJhbnNmb3JtID0gbmV3IFRyYW5zZm9ybSh7XG4gICAgICB0cmFuc2Zvcm0gKGNodW5rLCBfZW5jLCBjYikge1xuICAgICAgICBjYihudWxsLCBjaHVuaylcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgdGhpcy5sb2dnZXIgPSBuZXcgQ29uc29sZSh7XG4gICAgICBzdGRvdXQ6IHRoaXMudHJhbnNmb3JtLFxuICAgICAgaW5zcGVjdE9wdGlvbnM6IHtcbiAgICAgICAgY29sb3JzOiAhZGlzYWJsZUNvbG9ycyAmJiAhcHJvY2Vzcy5lbnYuQ0lcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgZm9ybWF0IChwZW5kaW5nSW50ZXJjZXB0b3JzKSB7XG4gICAgY29uc3Qgd2l0aFByZXR0eUhlYWRlcnMgPSBwZW5kaW5nSW50ZXJjZXB0b3JzLm1hcChcbiAgICAgICh7IG1ldGhvZCwgcGF0aCwgZGF0YTogeyBzdGF0dXNDb2RlIH0sIHBlcnNpc3QsIHRpbWVzLCB0aW1lc0ludm9rZWQsIG9yaWdpbiB9KSA9PiAoe1xuICAgICAgICBNZXRob2Q6IG1ldGhvZCxcbiAgICAgICAgT3JpZ2luOiBvcmlnaW4sXG4gICAgICAgIFBhdGg6IHBhdGgsXG4gICAgICAgICdTdGF0dXMgY29kZSc6IHN0YXR1c0NvZGUsXG4gICAgICAgIFBlcnNpc3RlbnQ6IHBlcnNpc3QgPyAnXHUyNzA1JyA6ICdcdTI3NEMnLFxuICAgICAgICBJbnZvY2F0aW9uczogdGltZXNJbnZva2VkLFxuICAgICAgICBSZW1haW5pbmc6IHBlcnNpc3QgPyBJbmZpbml0eSA6IHRpbWVzIC0gdGltZXNJbnZva2VkXG4gICAgICB9KSlcblxuICAgIHRoaXMubG9nZ2VyLnRhYmxlKHdpdGhQcmV0dHlIZWFkZXJzKVxuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybS5yZWFkKCkudG9TdHJpbmcoKVxuICB9XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga0NsaWVudHMgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCBBZ2VudCA9IHJlcXVpcmUoJy4uL2FnZW50JylcbmNvbnN0IHtcbiAga0FnZW50LFxuICBrTW9ja0FnZW50U2V0LFxuICBrTW9ja0FnZW50R2V0LFxuICBrRGlzcGF0Y2hlcyxcbiAga0lzTW9ja0FjdGl2ZSxcbiAga05ldENvbm5lY3QsXG4gIGtHZXROZXRDb25uZWN0LFxuICBrT3B0aW9ucyxcbiAga0ZhY3Rvcnlcbn0gPSByZXF1aXJlKCcuL21vY2stc3ltYm9scycpXG5jb25zdCBNb2NrQ2xpZW50ID0gcmVxdWlyZSgnLi9tb2NrLWNsaWVudCcpXG5jb25zdCBNb2NrUG9vbCA9IHJlcXVpcmUoJy4vbW9jay1wb29sJylcbmNvbnN0IHsgbWF0Y2hWYWx1ZSwgYnVpbGRNb2NrT3B0aW9ucyB9ID0gcmVxdWlyZSgnLi9tb2NrLXV0aWxzJylcbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IsIFVuZGljaUVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5jb25zdCBEaXNwYXRjaGVyID0gcmVxdWlyZSgnLi4vZGlzcGF0Y2hlcicpXG5jb25zdCBQbHVyYWxpemVyID0gcmVxdWlyZSgnLi9wbHVyYWxpemVyJylcbmNvbnN0IFBlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIgPSByZXF1aXJlKCcuL3BlbmRpbmctaW50ZXJjZXB0b3JzLWZvcm1hdHRlcicpXG5cbmNsYXNzIEZha2VXZWFrUmVmIHtcbiAgY29uc3RydWN0b3IgKHZhbHVlKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gIH1cblxuICBkZXJlZiAoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVcbiAgfVxufVxuXG5jbGFzcyBNb2NrQWdlbnQgZXh0ZW5kcyBEaXNwYXRjaGVyIHtcbiAgY29uc3RydWN0b3IgKG9wdHMpIHtcbiAgICBzdXBlcihvcHRzKVxuXG4gICAgdGhpc1trTmV0Q29ubmVjdF0gPSB0cnVlXG4gICAgdGhpc1trSXNNb2NrQWN0aXZlXSA9IHRydWVcblxuICAgIC8vIEluc3RhbnRpYXRlIEFnZW50IGFuZCBlbmNhcHN1bGF0ZVxuICAgIGlmICgob3B0cyAmJiBvcHRzLmFnZW50ICYmIHR5cGVvZiBvcHRzLmFnZW50LmRpc3BhdGNoICE9PSAnZnVuY3Rpb24nKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdBcmd1bWVudCBvcHRzLmFnZW50IG11c3QgaW1wbGVtZW50IEFnZW50JylcbiAgICB9XG4gICAgY29uc3QgYWdlbnQgPSBvcHRzICYmIG9wdHMuYWdlbnQgPyBvcHRzLmFnZW50IDogbmV3IEFnZW50KG9wdHMpXG4gICAgdGhpc1trQWdlbnRdID0gYWdlbnRcblxuICAgIHRoaXNba0NsaWVudHNdID0gYWdlbnRba0NsaWVudHNdXG4gICAgdGhpc1trT3B0aW9uc10gPSBidWlsZE1vY2tPcHRpb25zKG9wdHMpXG4gIH1cblxuICBnZXQgKG9yaWdpbikge1xuICAgIGxldCBkaXNwYXRjaGVyID0gdGhpc1trTW9ja0FnZW50R2V0XShvcmlnaW4pXG5cbiAgICBpZiAoIWRpc3BhdGNoZXIpIHtcbiAgICAgIGRpc3BhdGNoZXIgPSB0aGlzW2tGYWN0b3J5XShvcmlnaW4pXG4gICAgICB0aGlzW2tNb2NrQWdlbnRTZXRdKG9yaWdpbiwgZGlzcGF0Y2hlcilcbiAgICB9XG4gICAgcmV0dXJuIGRpc3BhdGNoZXJcbiAgfVxuXG4gIGRpc3BhdGNoIChvcHRzLCBoYW5kbGVyKSB7XG4gICAgLy8gQ2FsbCBNb2NrQWdlbnQuZ2V0IHRvIHBlcmZvcm0gYWRkaXRpb25hbCBzZXR1cCBiZWZvcmUgZGlzcGF0Y2hpbmcgYXMgbm9ybWFsXG4gICAgdGhpcy5nZXQob3B0cy5vcmlnaW4pXG4gICAgcmV0dXJuIHRoaXNba0FnZW50XS5kaXNwYXRjaChvcHRzLCBoYW5kbGVyKVxuICB9XG5cbiAgYXN5bmMgY2xvc2UgKCkge1xuICAgIGF3YWl0IHRoaXNba0FnZW50XS5jbG9zZSgpXG4gICAgdGhpc1trQ2xpZW50c10uY2xlYXIoKVxuICB9XG5cbiAgZGVhY3RpdmF0ZSAoKSB7XG4gICAgdGhpc1trSXNNb2NrQWN0aXZlXSA9IGZhbHNlXG4gIH1cblxuICBhY3RpdmF0ZSAoKSB7XG4gICAgdGhpc1trSXNNb2NrQWN0aXZlXSA9IHRydWVcbiAgfVxuXG4gIGVuYWJsZU5ldENvbm5lY3QgKG1hdGNoZXIpIHtcbiAgICBpZiAodHlwZW9mIG1hdGNoZXIgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiBtYXRjaGVyID09PSAnZnVuY3Rpb24nIHx8IG1hdGNoZXIgaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXNba05ldENvbm5lY3RdKSkge1xuICAgICAgICB0aGlzW2tOZXRDb25uZWN0XS5wdXNoKG1hdGNoZXIpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzW2tOZXRDb25uZWN0XSA9IFttYXRjaGVyXVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIG1hdGNoZXIgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzW2tOZXRDb25uZWN0XSA9IHRydWVcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdVbnN1cHBvcnRlZCBtYXRjaGVyLiBNdXN0IGJlIG9uZSBvZiBTdHJpbmd8RnVuY3Rpb258UmVnRXhwLicpXG4gICAgfVxuICB9XG5cbiAgZGlzYWJsZU5ldENvbm5lY3QgKCkge1xuICAgIHRoaXNba05ldENvbm5lY3RdID0gZmFsc2VcbiAgfVxuXG4gIC8vIFRoaXMgaXMgcmVxdWlyZWQgdG8gYnlwYXNzIGlzc3VlcyBjYXVzZWQgYnkgdXNpbmcgZ2xvYmFsIHN5bWJvbHMgLSBzZWU6XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xNDQ3XG4gIGdldCBpc01vY2tBY3RpdmUgKCkge1xuICAgIHJldHVybiB0aGlzW2tJc01vY2tBY3RpdmVdXG4gIH1cblxuICBba01vY2tBZ2VudFNldF0gKG9yaWdpbiwgZGlzcGF0Y2hlcikge1xuICAgIHRoaXNba0NsaWVudHNdLnNldChvcmlnaW4sIG5ldyBGYWtlV2Vha1JlZihkaXNwYXRjaGVyKSlcbiAgfVxuXG4gIFtrRmFjdG9yeV0gKG9yaWdpbikge1xuICAgIGNvbnN0IG1vY2tPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7IGFnZW50OiB0aGlzIH0sIHRoaXNba09wdGlvbnNdKVxuICAgIHJldHVybiB0aGlzW2tPcHRpb25zXSAmJiB0aGlzW2tPcHRpb25zXS5jb25uZWN0aW9ucyA9PT0gMVxuICAgICAgPyBuZXcgTW9ja0NsaWVudChvcmlnaW4sIG1vY2tPcHRpb25zKVxuICAgICAgOiBuZXcgTW9ja1Bvb2wob3JpZ2luLCBtb2NrT3B0aW9ucylcbiAgfVxuXG4gIFtrTW9ja0FnZW50R2V0XSAob3JpZ2luKSB7XG4gICAgLy8gRmlyc3QgY2hlY2sgaWYgd2UgY2FuIGltbWVkaWF0ZWx5IGZpbmQgaXRcbiAgICBjb25zdCByZWYgPSB0aGlzW2tDbGllbnRzXS5nZXQob3JpZ2luKVxuICAgIGlmIChyZWYpIHtcbiAgICAgIHJldHVybiByZWYuZGVyZWYoKVxuICAgIH1cblxuICAgIC8vIElmIHRoZSBvcmlnaW4gaXMgbm90IGEgc3RyaW5nIGNyZWF0ZSBhIGR1bW15IHBhcmVudCBwb29sIGFuZCByZXR1cm4gdG8gdXNlclxuICAgIGlmICh0eXBlb2Ygb3JpZ2luICE9PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgZGlzcGF0Y2hlciA9IHRoaXNba0ZhY3RvcnldKCdodHRwOi8vbG9jYWxob3N0Ojk5OTknKVxuICAgICAgdGhpc1trTW9ja0FnZW50U2V0XShvcmlnaW4sIGRpc3BhdGNoZXIpXG4gICAgICByZXR1cm4gZGlzcGF0Y2hlclxuICAgIH1cblxuICAgIC8vIElmIHdlIG1hdGNoLCBjcmVhdGUgYSBwb29sIGFuZCBhc3NpZ24gdGhlIHNhbWUgZGlzcGF0Y2hlc1xuICAgIGZvciAoY29uc3QgW2tleU1hdGNoZXIsIG5vbkV4cGxpY2l0UmVmXSBvZiBBcnJheS5mcm9tKHRoaXNba0NsaWVudHNdKSkge1xuICAgICAgY29uc3Qgbm9uRXhwbGljaXREaXNwYXRjaGVyID0gbm9uRXhwbGljaXRSZWYuZGVyZWYoKVxuICAgICAgaWYgKG5vbkV4cGxpY2l0RGlzcGF0Y2hlciAmJiB0eXBlb2Yga2V5TWF0Y2hlciAhPT0gJ3N0cmluZycgJiYgbWF0Y2hWYWx1ZShrZXlNYXRjaGVyLCBvcmlnaW4pKSB7XG4gICAgICAgIGNvbnN0IGRpc3BhdGNoZXIgPSB0aGlzW2tGYWN0b3J5XShvcmlnaW4pXG4gICAgICAgIHRoaXNba01vY2tBZ2VudFNldF0ob3JpZ2luLCBkaXNwYXRjaGVyKVxuICAgICAgICBkaXNwYXRjaGVyW2tEaXNwYXRjaGVzXSA9IG5vbkV4cGxpY2l0RGlzcGF0Y2hlcltrRGlzcGF0Y2hlc11cbiAgICAgICAgcmV0dXJuIGRpc3BhdGNoZXJcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBba0dldE5ldENvbm5lY3RdICgpIHtcbiAgICByZXR1cm4gdGhpc1trTmV0Q29ubmVjdF1cbiAgfVxuXG4gIHBlbmRpbmdJbnRlcmNlcHRvcnMgKCkge1xuICAgIGNvbnN0IG1vY2tBZ2VudENsaWVudHMgPSB0aGlzW2tDbGllbnRzXVxuXG4gICAgcmV0dXJuIEFycmF5LmZyb20obW9ja0FnZW50Q2xpZW50cy5lbnRyaWVzKCkpXG4gICAgICAuZmxhdE1hcCgoW29yaWdpbiwgc2NvcGVdKSA9PiBzY29wZS5kZXJlZigpW2tEaXNwYXRjaGVzXS5tYXAoZGlzcGF0Y2ggPT4gKHsgLi4uZGlzcGF0Y2gsIG9yaWdpbiB9KSkpXG4gICAgICAuZmlsdGVyKCh7IHBlbmRpbmcgfSkgPT4gcGVuZGluZylcbiAgfVxuXG4gIGFzc2VydE5vUGVuZGluZ0ludGVyY2VwdG9ycyAoeyBwZW5kaW5nSW50ZXJjZXB0b3JzRm9ybWF0dGVyID0gbmV3IFBlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIoKSB9ID0ge30pIHtcbiAgICBjb25zdCBwZW5kaW5nID0gdGhpcy5wZW5kaW5nSW50ZXJjZXB0b3JzKClcblxuICAgIGlmIChwZW5kaW5nLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3QgcGx1cmFsaXplciA9IG5ldyBQbHVyYWxpemVyKCdpbnRlcmNlcHRvcicsICdpbnRlcmNlcHRvcnMnKS5wbHVyYWxpemUocGVuZGluZy5sZW5ndGgpXG5cbiAgICB0aHJvdyBuZXcgVW5kaWNpRXJyb3IoYFxuJHtwbHVyYWxpemVyLmNvdW50fSAke3BsdXJhbGl6ZXIubm91bn0gJHtwbHVyYWxpemVyLmlzfSBwZW5kaW5nOlxuXG4ke3BlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIuZm9ybWF0KHBlbmRpbmcpfVxuYC50cmltKCkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBNb2NrQWdlbnRcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBrUHJveHksIGtDbG9zZSwga0Rlc3Ryb3ksIGtJbnRlcmNlcHRvcnMgfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcbmNvbnN0IHsgVVJMIH0gPSByZXF1aXJlKCd1cmwnKVxuY29uc3QgQWdlbnQgPSByZXF1aXJlKCcuL2FnZW50JylcbmNvbnN0IFBvb2wgPSByZXF1aXJlKCcuL3Bvb2wnKVxuY29uc3QgRGlzcGF0Y2hlckJhc2UgPSByZXF1aXJlKCcuL2Rpc3BhdGNoZXItYmFzZScpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yLCBSZXF1ZXN0QWJvcnRlZEVycm9yIH0gPSByZXF1aXJlKCcuL2NvcmUvZXJyb3JzJylcbmNvbnN0IGJ1aWxkQ29ubmVjdG9yID0gcmVxdWlyZSgnLi9jb3JlL2Nvbm5lY3QnKVxuXG5jb25zdCBrQWdlbnQgPSBTeW1ib2woJ3Byb3h5IGFnZW50JylcbmNvbnN0IGtDbGllbnQgPSBTeW1ib2woJ3Byb3h5IGNsaWVudCcpXG5jb25zdCBrUHJveHlIZWFkZXJzID0gU3ltYm9sKCdwcm94eSBoZWFkZXJzJylcbmNvbnN0IGtSZXF1ZXN0VGxzID0gU3ltYm9sKCdyZXF1ZXN0IHRscyBzZXR0aW5ncycpXG5jb25zdCBrUHJveHlUbHMgPSBTeW1ib2woJ3Byb3h5IHRscyBzZXR0aW5ncycpXG5jb25zdCBrQ29ubmVjdEVuZHBvaW50ID0gU3ltYm9sKCdjb25uZWN0IGVuZHBvaW50IGZ1bmN0aW9uJylcblxuZnVuY3Rpb24gZGVmYXVsdFByb3RvY29sUG9ydCAocHJvdG9jb2wpIHtcbiAgcmV0dXJuIHByb3RvY29sID09PSAnaHR0cHM6JyA/IDQ0MyA6IDgwXG59XG5cbmZ1bmN0aW9uIGJ1aWxkUHJveHlPcHRpb25zIChvcHRzKSB7XG4gIGlmICh0eXBlb2Ygb3B0cyA9PT0gJ3N0cmluZycpIHtcbiAgICBvcHRzID0geyB1cmk6IG9wdHMgfVxuICB9XG5cbiAgaWYgKCFvcHRzIHx8ICFvcHRzLnVyaSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignUHJveHkgb3B0cy51cmkgaXMgbWFuZGF0b3J5JylcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgdXJpOiBvcHRzLnVyaSxcbiAgICBwcm90b2NvbDogb3B0cy5wcm90b2NvbCB8fCAnaHR0cHMnXG4gIH1cbn1cblxuZnVuY3Rpb24gZGVmYXVsdEZhY3RvcnkgKG9yaWdpbiwgb3B0cykge1xuICByZXR1cm4gbmV3IFBvb2wob3JpZ2luLCBvcHRzKVxufVxuXG5jbGFzcyBQcm94eUFnZW50IGV4dGVuZHMgRGlzcGF0Y2hlckJhc2Uge1xuICBjb25zdHJ1Y3RvciAob3B0cykge1xuICAgIHN1cGVyKG9wdHMpXG4gICAgdGhpc1trUHJveHldID0gYnVpbGRQcm94eU9wdGlvbnMob3B0cylcbiAgICB0aGlzW2tBZ2VudF0gPSBuZXcgQWdlbnQob3B0cylcbiAgICB0aGlzW2tJbnRlcmNlcHRvcnNdID0gb3B0cy5pbnRlcmNlcHRvcnMgJiYgb3B0cy5pbnRlcmNlcHRvcnMuUHJveHlBZ2VudCAmJiBBcnJheS5pc0FycmF5KG9wdHMuaW50ZXJjZXB0b3JzLlByb3h5QWdlbnQpXG4gICAgICA/IG9wdHMuaW50ZXJjZXB0b3JzLlByb3h5QWdlbnRcbiAgICAgIDogW11cblxuICAgIGlmICh0eXBlb2Ygb3B0cyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIG9wdHMgPSB7IHVyaTogb3B0cyB9XG4gICAgfVxuXG4gICAgaWYgKCFvcHRzIHx8ICFvcHRzLnVyaSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdQcm94eSBvcHRzLnVyaSBpcyBtYW5kYXRvcnknKVxuICAgIH1cblxuICAgIGNvbnN0IHsgY2xpZW50RmFjdG9yeSA9IGRlZmF1bHRGYWN0b3J5IH0gPSBvcHRzXG5cbiAgICBpZiAodHlwZW9mIGNsaWVudEZhY3RvcnkgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignUHJveHkgb3B0cy5jbGllbnRGYWN0b3J5IG11c3QgYmUgYSBmdW5jdGlvbi4nKVxuICAgIH1cblxuICAgIHRoaXNba1JlcXVlc3RUbHNdID0gb3B0cy5yZXF1ZXN0VGxzXG4gICAgdGhpc1trUHJveHlUbHNdID0gb3B0cy5wcm94eVRsc1xuICAgIHRoaXNba1Byb3h5SGVhZGVyc10gPSBvcHRzLmhlYWRlcnMgfHwge31cblxuICAgIGNvbnN0IHJlc29sdmVkVXJsID0gbmV3IFVSTChvcHRzLnVyaSlcbiAgICBjb25zdCB7IG9yaWdpbiwgcG9ydCwgaG9zdCwgdXNlcm5hbWUsIHBhc3N3b3JkIH0gPSByZXNvbHZlZFVybFxuXG4gICAgaWYgKG9wdHMuYXV0aCAmJiBvcHRzLnRva2VuKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ29wdHMuYXV0aCBjYW5ub3QgYmUgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIG9wdHMudG9rZW4nKVxuICAgIH0gZWxzZSBpZiAob3B0cy5hdXRoKSB7XG4gICAgICAvKiBAZGVwcmVjYXRlZCBpbiBmYXZvdXIgb2Ygb3B0cy50b2tlbiAqL1xuICAgICAgdGhpc1trUHJveHlIZWFkZXJzXVsncHJveHktYXV0aG9yaXphdGlvbiddID0gYEJhc2ljICR7b3B0cy5hdXRofWBcbiAgICB9IGVsc2UgaWYgKG9wdHMudG9rZW4pIHtcbiAgICAgIHRoaXNba1Byb3h5SGVhZGVyc11bJ3Byb3h5LWF1dGhvcml6YXRpb24nXSA9IG9wdHMudG9rZW5cbiAgICB9IGVsc2UgaWYgKHVzZXJuYW1lICYmIHBhc3N3b3JkKSB7XG4gICAgICB0aGlzW2tQcm94eUhlYWRlcnNdWydwcm94eS1hdXRob3JpemF0aW9uJ10gPSBgQmFzaWMgJHtCdWZmZXIuZnJvbShgJHtkZWNvZGVVUklDb21wb25lbnQodXNlcm5hbWUpfToke2RlY29kZVVSSUNvbXBvbmVudChwYXNzd29yZCl9YCkudG9TdHJpbmcoJ2Jhc2U2NCcpfWBcbiAgICB9XG5cbiAgICBjb25zdCBjb25uZWN0ID0gYnVpbGRDb25uZWN0b3IoeyAuLi5vcHRzLnByb3h5VGxzIH0pXG4gICAgdGhpc1trQ29ubmVjdEVuZHBvaW50XSA9IGJ1aWxkQ29ubmVjdG9yKHsgLi4ub3B0cy5yZXF1ZXN0VGxzIH0pXG4gICAgdGhpc1trQ2xpZW50XSA9IGNsaWVudEZhY3RvcnkocmVzb2x2ZWRVcmwsIHsgY29ubmVjdCB9KVxuICAgIHRoaXNba0FnZW50XSA9IG5ldyBBZ2VudCh7XG4gICAgICAuLi5vcHRzLFxuICAgICAgY29ubmVjdDogYXN5bmMgKG9wdHMsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgIGxldCByZXF1ZXN0ZWRIb3N0ID0gb3B0cy5ob3N0XG4gICAgICAgIGlmICghb3B0cy5wb3J0KSB7XG4gICAgICAgICAgcmVxdWVzdGVkSG9zdCArPSBgOiR7ZGVmYXVsdFByb3RvY29sUG9ydChvcHRzLnByb3RvY29sKX1gXG4gICAgICAgIH1cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCB7IHNvY2tldCwgc3RhdHVzQ29kZSB9ID0gYXdhaXQgdGhpc1trQ2xpZW50XS5jb25uZWN0KHtcbiAgICAgICAgICAgIG9yaWdpbixcbiAgICAgICAgICAgIHBvcnQsXG4gICAgICAgICAgICBwYXRoOiByZXF1ZXN0ZWRIb3N0LFxuICAgICAgICAgICAgc2lnbmFsOiBvcHRzLnNpZ25hbCxcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgLi4udGhpc1trUHJveHlIZWFkZXJzXSxcbiAgICAgICAgICAgICAgaG9zdFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICAgaWYgKHN0YXR1c0NvZGUgIT09IDIwMCkge1xuICAgICAgICAgICAgc29ja2V0Lm9uKCdlcnJvcicsICgpID0+IHt9KS5kZXN0cm95KClcbiAgICAgICAgICAgIGNhbGxiYWNrKG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKGBQcm94eSByZXNwb25zZSAoJHtzdGF0dXNDb2RlfSkgIT09IDIwMCB3aGVuIEhUVFAgVHVubmVsaW5nYCkpXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChvcHRzLnByb3RvY29sICE9PSAnaHR0cHM6Jykge1xuICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgc29ja2V0KVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuICAgICAgICAgIGxldCBzZXJ2ZXJuYW1lXG4gICAgICAgICAgaWYgKHRoaXNba1JlcXVlc3RUbHNdKSB7XG4gICAgICAgICAgICBzZXJ2ZXJuYW1lID0gdGhpc1trUmVxdWVzdFRsc10uc2VydmVybmFtZVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZXJ2ZXJuYW1lID0gb3B0cy5zZXJ2ZXJuYW1lXG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXNba0Nvbm5lY3RFbmRwb2ludF0oeyAuLi5vcHRzLCBzZXJ2ZXJuYW1lLCBodHRwU29ja2V0OiBzb2NrZXQgfSwgY2FsbGJhY2spXG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgIGNhbGxiYWNrKGVycilcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBkaXNwYXRjaCAob3B0cywgaGFuZGxlcikge1xuICAgIGNvbnN0IHsgaG9zdCB9ID0gbmV3IFVSTChvcHRzLm9yaWdpbilcbiAgICBjb25zdCBoZWFkZXJzID0gYnVpbGRIZWFkZXJzKG9wdHMuaGVhZGVycylcbiAgICB0aHJvd0lmUHJveHlBdXRoSXNTZW50KGhlYWRlcnMpXG4gICAgcmV0dXJuIHRoaXNba0FnZW50XS5kaXNwYXRjaChcbiAgICAgIHtcbiAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIC4uLmhlYWRlcnMsXG4gICAgICAgICAgaG9zdFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgaGFuZGxlclxuICAgIClcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICBhd2FpdCB0aGlzW2tBZ2VudF0uY2xvc2UoKVxuICAgIGF3YWl0IHRoaXNba0NsaWVudF0uY2xvc2UoKVxuICB9XG5cbiAgYXN5bmMgW2tEZXN0cm95XSAoKSB7XG4gICAgYXdhaXQgdGhpc1trQWdlbnRdLmRlc3Ryb3koKVxuICAgIGF3YWl0IHRoaXNba0NsaWVudF0uZGVzdHJveSgpXG4gIH1cbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPn0gaGVhZGVyc1xuICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZz59XG4gKi9cbmZ1bmN0aW9uIGJ1aWxkSGVhZGVycyAoaGVhZGVycykge1xuICAvLyBXaGVuIHVzaW5nIHVuZGljaS5mZXRjaCwgdGhlIGhlYWRlcnMgbGlzdCBpcyBzdG9yZWRcbiAgLy8gYXMgYW4gYXJyYXkuXG4gIGlmIChBcnJheS5pc0FycmF5KGhlYWRlcnMpKSB7XG4gICAgLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fSAqL1xuICAgIGNvbnN0IGhlYWRlcnNQYWlyID0ge31cblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaGVhZGVycy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgaGVhZGVyc1BhaXJbaGVhZGVyc1tpXV0gPSBoZWFkZXJzW2kgKyAxXVxuICAgIH1cblxuICAgIHJldHVybiBoZWFkZXJzUGFpclxuICB9XG5cbiAgcmV0dXJuIGhlYWRlcnNcbn1cblxuLyoqXG4gKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIHN0cmluZz59IGhlYWRlcnNcbiAqXG4gKiBQcmV2aW91cyB2ZXJzaW9ucyBvZiBQcm94eUFnZW50IHN1Z2dlc3RzIHRoZSBQcm94eS1BdXRob3JpemF0aW9uIGluIHJlcXVlc3QgaGVhZGVyc1xuICogTmV2ZXJ0aGVsZXNzLCBpdCB3YXMgY2hhbmdlZCBhbmQgdG8gYXZvaWQgYSBzZWN1cml0eSB2dWxuZXJhYmlsaXR5IGJ5IGVuZCB1c2Vyc1xuICogdGhpcyBjaGVjayB3YXMgY3JlYXRlZC5cbiAqIEl0IHNob3VsZCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnNcbiAqL1xuZnVuY3Rpb24gdGhyb3dJZlByb3h5QXV0aElzU2VudCAoaGVhZGVycykge1xuICBjb25zdCBleGlzdFByb3h5QXV0aCA9IGhlYWRlcnMgJiYgT2JqZWN0LmtleXMoaGVhZGVycylcbiAgICAuZmluZCgoa2V5KSA9PiBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ3Byb3h5LWF1dGhvcml6YXRpb24nKVxuICBpZiAoZXhpc3RQcm94eUF1dGgpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ1Byb3h5LUF1dGhvcml6YXRpb24gc2hvdWxkIGJlIHNlbnQgaW4gUHJveHlBZ2VudCBjb25zdHJ1Y3RvcicpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBQcm94eUFnZW50XG4iLCAiY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcblxuY29uc3QgeyBrUmV0cnlIYW5kbGVyRGVmYXVsdFJldHJ5IH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgeyBSZXF1ZXN0UmV0cnlFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyBpc0Rpc3R1cmJlZCwgcGFyc2VIZWFkZXJzLCBwYXJzZVJhbmdlSGVhZGVyIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVSZXRyeUFmdGVySGVhZGVyIChyZXRyeUFmdGVyKSB7XG4gIGNvbnN0IGN1cnJlbnQgPSBEYXRlLm5vdygpXG4gIGNvbnN0IGRpZmYgPSBuZXcgRGF0ZShyZXRyeUFmdGVyKS5nZXRUaW1lKCkgLSBjdXJyZW50XG5cbiAgcmV0dXJuIGRpZmZcbn1cblxuY2xhc3MgUmV0cnlIYW5kbGVyIHtcbiAgY29uc3RydWN0b3IgKG9wdHMsIGhhbmRsZXJzKSB7XG4gICAgY29uc3QgeyByZXRyeU9wdGlvbnMsIC4uLmRpc3BhdGNoT3B0cyB9ID0gb3B0c1xuICAgIGNvbnN0IHtcbiAgICAgIC8vIFJldHJ5IHNjb3BlZFxuICAgICAgcmV0cnk6IHJldHJ5Rm4sXG4gICAgICBtYXhSZXRyaWVzLFxuICAgICAgbWF4VGltZW91dCxcbiAgICAgIG1pblRpbWVvdXQsXG4gICAgICB0aW1lb3V0RmFjdG9yLFxuICAgICAgLy8gUmVzcG9uc2Ugc2NvcGVkXG4gICAgICBtZXRob2RzLFxuICAgICAgZXJyb3JDb2RlcyxcbiAgICAgIHJldHJ5QWZ0ZXIsXG4gICAgICBzdGF0dXNDb2Rlc1xuICAgIH0gPSByZXRyeU9wdGlvbnMgPz8ge31cblxuICAgIHRoaXMuZGlzcGF0Y2ggPSBoYW5kbGVycy5kaXNwYXRjaFxuICAgIHRoaXMuaGFuZGxlciA9IGhhbmRsZXJzLmhhbmRsZXJcbiAgICB0aGlzLm9wdHMgPSBkaXNwYXRjaE9wdHNcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuYWJvcnRlZCA9IGZhbHNlXG4gICAgdGhpcy5yZXRyeU9wdHMgPSB7XG4gICAgICByZXRyeTogcmV0cnlGbiA/PyBSZXRyeUhhbmRsZXJba1JldHJ5SGFuZGxlckRlZmF1bHRSZXRyeV0sXG4gICAgICByZXRyeUFmdGVyOiByZXRyeUFmdGVyID8/IHRydWUsXG4gICAgICBtYXhUaW1lb3V0OiBtYXhUaW1lb3V0ID8/IDMwICogMTAwMCwgLy8gMzBzLFxuICAgICAgdGltZW91dDogbWluVGltZW91dCA/PyA1MDAsIC8vIC41c1xuICAgICAgdGltZW91dEZhY3RvcjogdGltZW91dEZhY3RvciA/PyAyLFxuICAgICAgbWF4UmV0cmllczogbWF4UmV0cmllcyA/PyA1LFxuICAgICAgLy8gV2hhdCBlcnJvcnMgd2Ugc2hvdWxkIHJldHJ5XG4gICAgICBtZXRob2RzOiBtZXRob2RzID8/IFsnR0VUJywgJ0hFQUQnLCAnT1BUSU9OUycsICdQVVQnLCAnREVMRVRFJywgJ1RSQUNFJ10sXG4gICAgICAvLyBJbmRpY2F0ZXMgd2hpY2ggZXJyb3JzIHRvIHJldHJ5XG4gICAgICBzdGF0dXNDb2Rlczogc3RhdHVzQ29kZXMgPz8gWzUwMCwgNTAyLCA1MDMsIDUwNCwgNDI5XSxcbiAgICAgIC8vIExpc3Qgb2YgZXJyb3JzIHRvIHJldHJ5XG4gICAgICBlcnJvckNvZGVzOiBlcnJvckNvZGVzID8/IFtcbiAgICAgICAgJ0VDT05OUkVTRVQnLFxuICAgICAgICAnRUNPTk5SRUZVU0VEJyxcbiAgICAgICAgJ0VOT1RGT1VORCcsXG4gICAgICAgICdFTkVURE9XTicsXG4gICAgICAgICdFTkVUVU5SRUFDSCcsXG4gICAgICAgICdFSE9TVERPV04nLFxuICAgICAgICAnRUhPU1RVTlJFQUNIJyxcbiAgICAgICAgJ0VQSVBFJ1xuICAgICAgXVxuICAgIH1cblxuICAgIHRoaXMucmV0cnlDb3VudCA9IDBcbiAgICB0aGlzLnN0YXJ0ID0gMFxuICAgIHRoaXMuZW5kID0gbnVsbFxuICAgIHRoaXMuZXRhZyA9IG51bGxcbiAgICB0aGlzLnJlc3VtZSA9IG51bGxcblxuICAgIC8vIEhhbmRsZSBwb3NzaWJsZSBvbkNvbm5lY3QgZHVwbGljYXRpb25cbiAgICB0aGlzLmhhbmRsZXIub25Db25uZWN0KHJlYXNvbiA9PiB7XG4gICAgICB0aGlzLmFib3J0ZWQgPSB0cnVlXG4gICAgICBpZiAodGhpcy5hYm9ydCkge1xuICAgICAgICB0aGlzLmFib3J0KHJlYXNvbilcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVhc29uID0gcmVhc29uXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIG9uUmVxdWVzdFNlbnQgKCkge1xuICAgIGlmICh0aGlzLmhhbmRsZXIub25SZXF1ZXN0U2VudCkge1xuICAgICAgdGhpcy5oYW5kbGVyLm9uUmVxdWVzdFNlbnQoKVxuICAgIH1cbiAgfVxuXG4gIG9uVXBncmFkZSAoc3RhdHVzQ29kZSwgaGVhZGVycywgc29ja2V0KSB7XG4gICAgaWYgKHRoaXMuaGFuZGxlci5vblVwZ3JhZGUpIHtcbiAgICAgIHRoaXMuaGFuZGxlci5vblVwZ3JhZGUoc3RhdHVzQ29kZSwgaGVhZGVycywgc29ja2V0KVxuICAgIH1cbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQpIHtcbiAgICBpZiAodGhpcy5hYm9ydGVkKSB7XG4gICAgICBhYm9ydCh0aGlzLnJlYXNvbilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hYm9ydCA9IGFib3J0XG4gICAgfVxuICB9XG5cbiAgb25Cb2R5U2VudCAoY2h1bmspIHtcbiAgICBpZiAodGhpcy5oYW5kbGVyLm9uQm9keVNlbnQpIHJldHVybiB0aGlzLmhhbmRsZXIub25Cb2R5U2VudChjaHVuaylcbiAgfVxuXG4gIHN0YXRpYyBba1JldHJ5SGFuZGxlckRlZmF1bHRSZXRyeV0gKGVyciwgeyBzdGF0ZSwgb3B0cyB9LCBjYikge1xuICAgIGNvbnN0IHsgc3RhdHVzQ29kZSwgY29kZSwgaGVhZGVycyB9ID0gZXJyXG4gICAgY29uc3QgeyBtZXRob2QsIHJldHJ5T3B0aW9ucyB9ID0gb3B0c1xuICAgIGNvbnN0IHtcbiAgICAgIG1heFJldHJpZXMsXG4gICAgICB0aW1lb3V0LFxuICAgICAgbWF4VGltZW91dCxcbiAgICAgIHRpbWVvdXRGYWN0b3IsXG4gICAgICBzdGF0dXNDb2RlcyxcbiAgICAgIGVycm9yQ29kZXMsXG4gICAgICBtZXRob2RzXG4gICAgfSA9IHJldHJ5T3B0aW9uc1xuICAgIGxldCB7IGNvdW50ZXIsIGN1cnJlbnRUaW1lb3V0IH0gPSBzdGF0ZVxuXG4gICAgY3VycmVudFRpbWVvdXQgPVxuICAgICAgY3VycmVudFRpbWVvdXQgIT0gbnVsbCAmJiBjdXJyZW50VGltZW91dCA+IDAgPyBjdXJyZW50VGltZW91dCA6IHRpbWVvdXRcblxuICAgIC8vIEFueSBjb2RlIHRoYXQgaXMgbm90IGEgVW5kaWNpJ3Mgb3JpZ2luYXRlZCBhbmQgYWxsb3dlZCB0byByZXRyeVxuICAgIGlmIChcbiAgICAgIGNvZGUgJiZcbiAgICAgIGNvZGUgIT09ICdVTkRfRVJSX1JFUV9SRVRSWScgJiZcbiAgICAgIGNvZGUgIT09ICdVTkRfRVJSX1NPQ0tFVCcgJiZcbiAgICAgICFlcnJvckNvZGVzLmluY2x1ZGVzKGNvZGUpXG4gICAgKSB7XG4gICAgICBjYihlcnIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBJZiBhIHNldCBvZiBtZXRob2QgYXJlIHByb3ZpZGVkIGFuZCB0aGUgY3VycmVudCBtZXRob2QgaXMgbm90IGluIHRoZSBsaXN0XG4gICAgaWYgKEFycmF5LmlzQXJyYXkobWV0aG9kcykgJiYgIW1ldGhvZHMuaW5jbHVkZXMobWV0aG9kKSkge1xuICAgICAgY2IoZXJyKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gSWYgYSBzZXQgb2Ygc3RhdHVzIGNvZGUgYXJlIHByb3ZpZGVkIGFuZCB0aGUgY3VycmVudCBzdGF0dXMgY29kZSBpcyBub3QgaW4gdGhlIGxpc3RcbiAgICBpZiAoXG4gICAgICBzdGF0dXNDb2RlICE9IG51bGwgJiZcbiAgICAgIEFycmF5LmlzQXJyYXkoc3RhdHVzQ29kZXMpICYmXG4gICAgICAhc3RhdHVzQ29kZXMuaW5jbHVkZXMoc3RhdHVzQ29kZSlcbiAgICApIHtcbiAgICAgIGNiKGVycilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIElmIHdlIHJlYWNoZWQgdGhlIG1heCBudW1iZXIgb2YgcmV0cmllc1xuICAgIGlmIChjb3VudGVyID4gbWF4UmV0cmllcykge1xuICAgICAgY2IoZXJyKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgbGV0IHJldHJ5QWZ0ZXJIZWFkZXIgPSBoZWFkZXJzICE9IG51bGwgJiYgaGVhZGVyc1sncmV0cnktYWZ0ZXInXVxuICAgIGlmIChyZXRyeUFmdGVySGVhZGVyKSB7XG4gICAgICByZXRyeUFmdGVySGVhZGVyID0gTnVtYmVyKHJldHJ5QWZ0ZXJIZWFkZXIpXG4gICAgICByZXRyeUFmdGVySGVhZGVyID0gaXNOYU4ocmV0cnlBZnRlckhlYWRlcilcbiAgICAgICAgPyBjYWxjdWxhdGVSZXRyeUFmdGVySGVhZGVyKHJldHJ5QWZ0ZXJIZWFkZXIpXG4gICAgICAgIDogcmV0cnlBZnRlckhlYWRlciAqIDFlMyAvLyBSZXRyeS1BZnRlciBpcyBpbiBzZWNvbmRzXG4gICAgfVxuXG4gICAgY29uc3QgcmV0cnlUaW1lb3V0ID1cbiAgICAgIHJldHJ5QWZ0ZXJIZWFkZXIgPiAwXG4gICAgICAgID8gTWF0aC5taW4ocmV0cnlBZnRlckhlYWRlciwgbWF4VGltZW91dClcbiAgICAgICAgOiBNYXRoLm1pbihjdXJyZW50VGltZW91dCAqIHRpbWVvdXRGYWN0b3IgKiogY291bnRlciwgbWF4VGltZW91dClcblxuICAgIHN0YXRlLmN1cnJlbnRUaW1lb3V0ID0gcmV0cnlUaW1lb3V0XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IGNiKG51bGwpLCByZXRyeVRpbWVvdXQpXG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHJlc3VtZSwgc3RhdHVzTWVzc2FnZSkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBwYXJzZUhlYWRlcnMocmF3SGVhZGVycylcblxuICAgIHRoaXMucmV0cnlDb3VudCArPSAxXG5cbiAgICBpZiAoc3RhdHVzQ29kZSA+PSAzMDApIHtcbiAgICAgIHRoaXMuYWJvcnQoXG4gICAgICAgIG5ldyBSZXF1ZXN0UmV0cnlFcnJvcignUmVxdWVzdCBmYWlsZWQnLCBzdGF0dXNDb2RlLCB7XG4gICAgICAgICAgaGVhZGVycyxcbiAgICAgICAgICBjb3VudDogdGhpcy5yZXRyeUNvdW50XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICAvLyBDaGVja3BvaW50IGZvciByZXN1bWUgZnJvbSB3aGVyZSB3ZSBsZWZ0IGl0XG4gICAgaWYgKHRoaXMucmVzdW1lICE9IG51bGwpIHtcbiAgICAgIHRoaXMucmVzdW1lID0gbnVsbFxuXG4gICAgICBpZiAoc3RhdHVzQ29kZSAhPT0gMjA2KSB7XG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNvbnRlbnRSYW5nZSA9IHBhcnNlUmFuZ2VIZWFkZXIoaGVhZGVyc1snY29udGVudC1yYW5nZSddKVxuICAgICAgLy8gSWYgbm8gY29udGVudCByYW5nZVxuICAgICAgaWYgKCFjb250ZW50UmFuZ2UpIHtcbiAgICAgICAgdGhpcy5hYm9ydChcbiAgICAgICAgICBuZXcgUmVxdWVzdFJldHJ5RXJyb3IoJ0NvbnRlbnQtUmFuZ2UgbWlzbWF0Y2gnLCBzdGF0dXNDb2RlLCB7XG4gICAgICAgICAgICBoZWFkZXJzLFxuICAgICAgICAgICAgY291bnQ6IHRoaXMucmV0cnlDb3VudFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG5cbiAgICAgIC8vIExldCdzIHN0YXJ0IHdpdGggYSB3ZWFrIGV0YWcgY2hlY2tcbiAgICAgIGlmICh0aGlzLmV0YWcgIT0gbnVsbCAmJiB0aGlzLmV0YWcgIT09IGhlYWRlcnMuZXRhZykge1xuICAgICAgICB0aGlzLmFib3J0KFxuICAgICAgICAgIG5ldyBSZXF1ZXN0UmV0cnlFcnJvcignRVRhZyBtaXNtYXRjaCcsIHN0YXR1c0NvZGUsIHtcbiAgICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgICBjb3VudDogdGhpcy5yZXRyeUNvdW50XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyBzdGFydCwgc2l6ZSwgZW5kID0gc2l6ZSB9ID0gY29udGVudFJhbmdlXG5cbiAgICAgIGFzc2VydCh0aGlzLnN0YXJ0ID09PSBzdGFydCwgJ2NvbnRlbnQtcmFuZ2UgbWlzbWF0Y2gnKVxuICAgICAgYXNzZXJ0KHRoaXMuZW5kID09IG51bGwgfHwgdGhpcy5lbmQgPT09IGVuZCwgJ2NvbnRlbnQtcmFuZ2UgbWlzbWF0Y2gnKVxuXG4gICAgICB0aGlzLnJlc3VtZSA9IHJlc3VtZVxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICBpZiAodGhpcy5lbmQgPT0gbnVsbCkge1xuICAgICAgaWYgKHN0YXR1c0NvZGUgPT09IDIwNikge1xuICAgICAgICAvLyBGaXJzdCB0aW1lIHdlIHJlY2VpdmUgMjA2XG4gICAgICAgIGNvbnN0IHJhbmdlID0gcGFyc2VSYW5nZUhlYWRlcihoZWFkZXJzWydjb250ZW50LXJhbmdlJ10pXG5cbiAgICAgICAgaWYgKHJhbmdlID09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uSGVhZGVycyhcbiAgICAgICAgICAgIHN0YXR1c0NvZGUsXG4gICAgICAgICAgICByYXdIZWFkZXJzLFxuICAgICAgICAgICAgcmVzdW1lLFxuICAgICAgICAgICAgc3RhdHVzTWVzc2FnZVxuICAgICAgICAgIClcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgc3RhcnQsIHNpemUsIGVuZCA9IHNpemUgfSA9IHJhbmdlXG5cbiAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgIHN0YXJ0ICE9IG51bGwgJiYgTnVtYmVyLmlzRmluaXRlKHN0YXJ0KSAmJiB0aGlzLnN0YXJ0ICE9PSBzdGFydCxcbiAgICAgICAgICAnY29udGVudC1yYW5nZSBtaXNtYXRjaCdcbiAgICAgICAgKVxuICAgICAgICBhc3NlcnQoTnVtYmVyLmlzRmluaXRlKHN0YXJ0KSlcbiAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgIGVuZCAhPSBudWxsICYmIE51bWJlci5pc0Zpbml0ZShlbmQpICYmIHRoaXMuZW5kICE9PSBlbmQsXG4gICAgICAgICAgJ2ludmFsaWQgY29udGVudC1sZW5ndGgnXG4gICAgICAgIClcblxuICAgICAgICB0aGlzLnN0YXJ0ID0gc3RhcnRcbiAgICAgICAgdGhpcy5lbmQgPSBlbmRcbiAgICAgIH1cblxuICAgICAgLy8gV2UgbWFrZSBvdXIgYmVzdCB0byBjaGVja3BvaW50IHRoZSBib2R5IGZvciBmdXJ0aGVyIHJhbmdlIGhlYWRlcnNcbiAgICAgIGlmICh0aGlzLmVuZCA9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRMZW5ndGggPSBoZWFkZXJzWydjb250ZW50LWxlbmd0aCddXG4gICAgICAgIHRoaXMuZW5kID0gY29udGVudExlbmd0aCAhPSBudWxsID8gTnVtYmVyKGNvbnRlbnRMZW5ndGgpIDogbnVsbFxuICAgICAgfVxuXG4gICAgICBhc3NlcnQoTnVtYmVyLmlzRmluaXRlKHRoaXMuc3RhcnQpKVxuICAgICAgYXNzZXJ0KFxuICAgICAgICB0aGlzLmVuZCA9PSBudWxsIHx8IE51bWJlci5pc0Zpbml0ZSh0aGlzLmVuZCksXG4gICAgICAgICdpbnZhbGlkIGNvbnRlbnQtbGVuZ3RoJ1xuICAgICAgKVxuXG4gICAgICB0aGlzLnJlc3VtZSA9IHJlc3VtZVxuICAgICAgdGhpcy5ldGFnID0gaGVhZGVycy5ldGFnICE9IG51bGwgPyBoZWFkZXJzLmV0YWcgOiBudWxsXG5cbiAgICAgIHJldHVybiB0aGlzLmhhbmRsZXIub25IZWFkZXJzKFxuICAgICAgICBzdGF0dXNDb2RlLFxuICAgICAgICByYXdIZWFkZXJzLFxuICAgICAgICByZXN1bWUsXG4gICAgICAgIHN0YXR1c01lc3NhZ2VcbiAgICAgIClcbiAgICB9XG5cbiAgICBjb25zdCBlcnIgPSBuZXcgUmVxdWVzdFJldHJ5RXJyb3IoJ1JlcXVlc3QgZmFpbGVkJywgc3RhdHVzQ29kZSwge1xuICAgICAgaGVhZGVycyxcbiAgICAgIGNvdW50OiB0aGlzLnJldHJ5Q291bnRcbiAgICB9KVxuXG4gICAgdGhpcy5hYm9ydChlcnIpXG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIG9uRGF0YSAoY2h1bmspIHtcbiAgICB0aGlzLnN0YXJ0ICs9IGNodW5rLmxlbmd0aFxuXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkRhdGEoY2h1bmspXG4gIH1cblxuICBvbkNvbXBsZXRlIChyYXdUcmFpbGVycykge1xuICAgIHRoaXMucmV0cnlDb3VudCA9IDBcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uQ29tcGxldGUocmF3VHJhaWxlcnMpXG4gIH1cblxuICBvbkVycm9yIChlcnIpIHtcbiAgICBpZiAodGhpcy5hYm9ydGVkIHx8IGlzRGlzdHVyYmVkKHRoaXMub3B0cy5ib2R5KSkge1xuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkVycm9yKGVycilcbiAgICB9XG5cbiAgICB0aGlzLnJldHJ5T3B0cy5yZXRyeShcbiAgICAgIGVycixcbiAgICAgIHtcbiAgICAgICAgc3RhdGU6IHsgY291bnRlcjogdGhpcy5yZXRyeUNvdW50KyssIGN1cnJlbnRUaW1lb3V0OiB0aGlzLnJldHJ5QWZ0ZXIgfSxcbiAgICAgICAgb3B0czogeyByZXRyeU9wdGlvbnM6IHRoaXMucmV0cnlPcHRzLCAuLi50aGlzLm9wdHMgfVxuICAgICAgfSxcbiAgICAgIG9uUmV0cnkuYmluZCh0aGlzKVxuICAgIClcblxuICAgIGZ1bmN0aW9uIG9uUmV0cnkgKGVycikge1xuICAgICAgaWYgKGVyciAhPSBudWxsIHx8IHRoaXMuYWJvcnRlZCB8fCBpc0Rpc3R1cmJlZCh0aGlzLm9wdHMuYm9keSkpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkVycm9yKGVycilcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuc3RhcnQgIT09IDApIHtcbiAgICAgICAgdGhpcy5vcHRzID0ge1xuICAgICAgICAgIC4uLnRoaXMub3B0cyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAuLi50aGlzLm9wdHMuaGVhZGVycyxcbiAgICAgICAgICAgIHJhbmdlOiBgYnl0ZXM9JHt0aGlzLnN0YXJ0fS0ke3RoaXMuZW5kID8/ICcnfWBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaCh0aGlzLm9wdHMsIHRoaXMpXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5oYW5kbGVyLm9uRXJyb3IoZXJyKVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IFJldHJ5SGFuZGxlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG4vLyBXZSBpbmNsdWRlIGEgdmVyc2lvbiBudW1iZXIgZm9yIHRoZSBEaXNwYXRjaGVyIEFQSS4gSW4gY2FzZSBvZiBicmVha2luZyBjaGFuZ2VzLFxuLy8gdGhpcyB2ZXJzaW9uIG51bWJlciBtdXN0IGJlIGluY3JlYXNlZCB0byBhdm9pZCBjb25mbGljdHMuXG5jb25zdCBnbG9iYWxEaXNwYXRjaGVyID0gU3ltYm9sLmZvcigndW5kaWNpLmdsb2JhbERpc3BhdGNoZXIuMScpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yIH0gPSByZXF1aXJlKCcuL2NvcmUvZXJyb3JzJylcbmNvbnN0IEFnZW50ID0gcmVxdWlyZSgnLi9hZ2VudCcpXG5cbmlmIChnZXRHbG9iYWxEaXNwYXRjaGVyKCkgPT09IHVuZGVmaW5lZCkge1xuICBzZXRHbG9iYWxEaXNwYXRjaGVyKG5ldyBBZ2VudCgpKVxufVxuXG5mdW5jdGlvbiBzZXRHbG9iYWxEaXNwYXRjaGVyIChhZ2VudCkge1xuICBpZiAoIWFnZW50IHx8IHR5cGVvZiBhZ2VudC5kaXNwYXRjaCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignQXJndW1lbnQgYWdlbnQgbXVzdCBpbXBsZW1lbnQgQWdlbnQnKVxuICB9XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShnbG9iYWxUaGlzLCBnbG9iYWxEaXNwYXRjaGVyLCB7XG4gICAgdmFsdWU6IGFnZW50LFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgIGNvbmZpZ3VyYWJsZTogZmFsc2VcbiAgfSlcbn1cblxuZnVuY3Rpb24gZ2V0R2xvYmFsRGlzcGF0Y2hlciAoKSB7XG4gIHJldHVybiBnbG9iYWxUaGlzW2dsb2JhbERpc3BhdGNoZXJdXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBzZXRHbG9iYWxEaXNwYXRjaGVyLFxuICBnZXRHbG9iYWxEaXNwYXRjaGVyXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0gY2xhc3MgRGVjb3JhdG9ySGFuZGxlciB7XG4gIGNvbnN0cnVjdG9yIChoYW5kbGVyKSB7XG4gICAgdGhpcy5oYW5kbGVyID0gaGFuZGxlclxuICB9XG5cbiAgb25Db25uZWN0ICguLi5hcmdzKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkNvbm5lY3QoLi4uYXJncylcbiAgfVxuXG4gIG9uRXJyb3IgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uRXJyb3IoLi4uYXJncylcbiAgfVxuXG4gIG9uVXBncmFkZSAoLi4uYXJncykge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZXIub25VcGdyYWRlKC4uLmFyZ3MpXG4gIH1cblxuICBvbkhlYWRlcnMgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uSGVhZGVycyguLi5hcmdzKVxuICB9XG5cbiAgb25EYXRhICguLi5hcmdzKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkRhdGEoLi4uYXJncylcbiAgfVxuXG4gIG9uQ29tcGxldGUgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uQ29tcGxldGUoLi4uYXJncylcbiAgfVxuXG4gIG9uQm9keVNlbnQgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uQm9keVNlbnQoLi4uYXJncylcbiAgfVxufVxuIiwgIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9FdGhhbi1BcnJvd29vZC91bmRpY2ktZmV0Y2hcblxuJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga0hlYWRlcnNMaXN0LCBrQ29uc3RydWN0IH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgeyBrR3VhcmQgfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IGtFbnVtZXJhYmxlUHJvcGVydHkgfSA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7XG4gIG1ha2VJdGVyYXRvcixcbiAgaXNWYWxpZEhlYWRlck5hbWUsXG4gIGlzVmFsaWRIZWFkZXJWYWx1ZVxufSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi93ZWJpZGwnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcblxuY29uc3Qga0hlYWRlcnNNYXAgPSBTeW1ib2woJ2hlYWRlcnMgbWFwJylcbmNvbnN0IGtIZWFkZXJzU29ydGVkTWFwID0gU3ltYm9sKCdoZWFkZXJzIG1hcCBzb3J0ZWQnKVxuXG4vKipcbiAqIEBwYXJhbSB7bnVtYmVyfSBjb2RlXG4gKi9cbmZ1bmN0aW9uIGlzSFRUUFdoaXRlU3BhY2VDaGFyQ29kZSAoY29kZSkge1xuICByZXR1cm4gY29kZSA9PT0gMHgwMGEgfHwgY29kZSA9PT0gMHgwMGQgfHwgY29kZSA9PT0gMHgwMDkgfHwgY29kZSA9PT0gMHgwMjBcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWhlYWRlci12YWx1ZS1ub3JtYWxpemVcbiAqIEBwYXJhbSB7c3RyaW5nfSBwb3RlbnRpYWxWYWx1ZVxuICovXG5mdW5jdGlvbiBoZWFkZXJWYWx1ZU5vcm1hbGl6ZSAocG90ZW50aWFsVmFsdWUpIHtcbiAgLy8gIFRvIG5vcm1hbGl6ZSBhIGJ5dGUgc2VxdWVuY2UgcG90ZW50aWFsVmFsdWUsIHJlbW92ZVxuICAvLyAgYW55IGxlYWRpbmcgYW5kIHRyYWlsaW5nIEhUVFAgd2hpdGVzcGFjZSBieXRlcyBmcm9tXG4gIC8vICBwb3RlbnRpYWxWYWx1ZS5cbiAgbGV0IGkgPSAwOyBsZXQgaiA9IHBvdGVudGlhbFZhbHVlLmxlbmd0aFxuXG4gIHdoaWxlIChqID4gaSAmJiBpc0hUVFBXaGl0ZVNwYWNlQ2hhckNvZGUocG90ZW50aWFsVmFsdWUuY2hhckNvZGVBdChqIC0gMSkpKSAtLWpcbiAgd2hpbGUgKGogPiBpICYmIGlzSFRUUFdoaXRlU3BhY2VDaGFyQ29kZShwb3RlbnRpYWxWYWx1ZS5jaGFyQ29kZUF0KGkpKSkgKytpXG5cbiAgcmV0dXJuIGkgPT09IDAgJiYgaiA9PT0gcG90ZW50aWFsVmFsdWUubGVuZ3RoID8gcG90ZW50aWFsVmFsdWUgOiBwb3RlbnRpYWxWYWx1ZS5zdWJzdHJpbmcoaSwgailcbn1cblxuZnVuY3Rpb24gZmlsbCAoaGVhZGVycywgb2JqZWN0KSB7XG4gIC8vIFRvIGZpbGwgYSBIZWFkZXJzIG9iamVjdCBoZWFkZXJzIHdpdGggYSBnaXZlbiBvYmplY3Qgb2JqZWN0LCBydW4gdGhlc2Ugc3RlcHM6XG5cbiAgLy8gMS4gSWYgb2JqZWN0IGlzIGEgc2VxdWVuY2UsIHRoZW4gZm9yIGVhY2ggaGVhZGVyIGluIG9iamVjdDpcbiAgLy8gTm90ZTogd2ViaWRsIGNvbnZlcnNpb24gdG8gYXJyYXkgaGFzIGFscmVhZHkgYmVlbiBkb25lLlxuICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvYmplY3QubGVuZ3RoOyArK2kpIHtcbiAgICAgIGNvbnN0IGhlYWRlciA9IG9iamVjdFtpXVxuICAgICAgLy8gMS4gSWYgaGVhZGVyIGRvZXMgbm90IGNvbnRhaW4gZXhhY3RseSB0d28gaXRlbXMsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAoaGVhZGVyLmxlbmd0aCAhPT0gMikge1xuICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgaGVhZGVyOiAnSGVhZGVycyBjb25zdHJ1Y3RvcicsXG4gICAgICAgICAgbWVzc2FnZTogYGV4cGVjdGVkIG5hbWUvdmFsdWUgcGFpciB0byBiZSBsZW5ndGggMiwgZm91bmQgJHtoZWFkZXIubGVuZ3RofS5gXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIEFwcGVuZCAoaGVhZGVyXHUyMDE5cyBmaXJzdCBpdGVtLCBoZWFkZXJcdTIwMTlzIHNlY29uZCBpdGVtKSB0byBoZWFkZXJzLlxuICAgICAgYXBwZW5kSGVhZGVyKGhlYWRlcnMsIGhlYWRlclswXSwgaGVhZGVyWzFdKVxuICAgIH1cbiAgfSBlbHNlIGlmICh0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJiBvYmplY3QgIT09IG51bGwpIHtcbiAgICAvLyBOb3RlOiBudWxsIHNob3VsZCB0aHJvd1xuXG4gICAgLy8gMi4gT3RoZXJ3aXNlLCBvYmplY3QgaXMgYSByZWNvcmQsIHRoZW4gZm9yIGVhY2gga2V5IFx1MjE5MiB2YWx1ZSBpbiBvYmplY3QsXG4gICAgLy8gICAgYXBwZW5kIChrZXksIHZhbHVlKSB0byBoZWFkZXJzXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdClcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyArK2kpIHtcbiAgICAgIGFwcGVuZEhlYWRlcihoZWFkZXJzLCBrZXlzW2ldLCBvYmplY3Rba2V5c1tpXV0pXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHRocm93IHdlYmlkbC5lcnJvcnMuY29udmVyc2lvbkZhaWxlZCh7XG4gICAgICBwcmVmaXg6ICdIZWFkZXJzIGNvbnN0cnVjdG9yJyxcbiAgICAgIGFyZ3VtZW50OiAnQXJndW1lbnQgMScsXG4gICAgICB0eXBlczogWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nLCAncmVjb3JkPEJ5dGVTdHJpbmcsIEJ5dGVTdHJpbmc+J11cbiAgICB9KVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1oZWFkZXJzLWFwcGVuZFxuICovXG5mdW5jdGlvbiBhcHBlbmRIZWFkZXIgKGhlYWRlcnMsIG5hbWUsIHZhbHVlKSB7XG4gIC8vIDEuIE5vcm1hbGl6ZSB2YWx1ZS5cbiAgdmFsdWUgPSBoZWFkZXJWYWx1ZU5vcm1hbGl6ZSh2YWx1ZSlcblxuICAvLyAyLiBJZiBuYW1lIGlzIG5vdCBhIGhlYWRlciBuYW1lIG9yIHZhbHVlIGlzIG5vdCBhXG4gIC8vICAgIGhlYWRlciB2YWx1ZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZShuYW1lKSkge1xuICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgIHByZWZpeDogJ0hlYWRlcnMuYXBwZW5kJyxcbiAgICAgIHZhbHVlOiBuYW1lLFxuICAgICAgdHlwZTogJ2hlYWRlciBuYW1lJ1xuICAgIH0pXG4gIH0gZWxzZSBpZiAoIWlzVmFsaWRIZWFkZXJWYWx1ZSh2YWx1ZSkpIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmludmFsaWRBcmd1bWVudCh7XG4gICAgICBwcmVmaXg6ICdIZWFkZXJzLmFwcGVuZCcsXG4gICAgICB2YWx1ZSxcbiAgICAgIHR5cGU6ICdoZWFkZXIgdmFsdWUnXG4gICAgfSlcbiAgfVxuXG4gIC8vIDMuIElmIGhlYWRlcnNcdTIwMTlzIGd1YXJkIGlzIFwiaW1tdXRhYmxlXCIsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIC8vIDQuIE90aGVyd2lzZSwgaWYgaGVhZGVyc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXF1ZXN0XCIgYW5kIG5hbWUgaXMgYVxuICAvLyAgICBmb3JiaWRkZW4gaGVhZGVyIG5hbWUsIHJldHVybi5cbiAgLy8gTm90ZTogdW5kaWNpIGRvZXMgbm90IGltcGxlbWVudCBmb3JiaWRkZW4gaGVhZGVyIG5hbWVzXG4gIGlmIChoZWFkZXJzW2tHdWFyZF0gPT09ICdpbW11dGFibGUnKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignaW1tdXRhYmxlJylcbiAgfSBlbHNlIGlmIChoZWFkZXJzW2tHdWFyZF0gPT09ICdyZXF1ZXN0LW5vLWNvcnMnKSB7XG4gICAgLy8gNS4gT3RoZXJ3aXNlLCBpZiBoZWFkZXJzXHUyMDE5cyBndWFyZCBpcyBcInJlcXVlc3Qtbm8tY29yc1wiOlxuICAgIC8vIFRPRE9cbiAgfVxuXG4gIC8vIDYuIE90aGVyd2lzZSwgaWYgaGVhZGVyc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXNwb25zZVwiIGFuZCBuYW1lIGlzIGFcbiAgLy8gICAgZm9yYmlkZGVuIHJlc3BvbnNlLWhlYWRlciBuYW1lLCByZXR1cm4uXG5cbiAgLy8gNy4gQXBwZW5kIChuYW1lLCB2YWx1ZSkgdG8gaGVhZGVyc1x1MjAxOXMgaGVhZGVyIGxpc3QuXG4gIHJldHVybiBoZWFkZXJzW2tIZWFkZXJzTGlzdF0uYXBwZW5kKG5hbWUsIHZhbHVlKVxuXG4gIC8vIDguIElmIGhlYWRlcnNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdC1uby1jb3JzXCIsIHRoZW4gcmVtb3ZlXG4gIC8vICAgIHByaXZpbGVnZWQgbm8tQ09SUyByZXF1ZXN0IGhlYWRlcnMgZnJvbSBoZWFkZXJzXG59XG5cbmNsYXNzIEhlYWRlcnNMaXN0IHtcbiAgLyoqIEB0eXBlIHtbc3RyaW5nLCBzdHJpbmddW118bnVsbH0gKi9cbiAgY29va2llcyA9IG51bGxcblxuICBjb25zdHJ1Y3RvciAoaW5pdCkge1xuICAgIGlmIChpbml0IGluc3RhbmNlb2YgSGVhZGVyc0xpc3QpIHtcbiAgICAgIHRoaXNba0hlYWRlcnNNYXBdID0gbmV3IE1hcChpbml0W2tIZWFkZXJzTWFwXSlcbiAgICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gaW5pdFtrSGVhZGVyc1NvcnRlZE1hcF1cbiAgICAgIHRoaXMuY29va2llcyA9IGluaXQuY29va2llcyA9PT0gbnVsbCA/IG51bGwgOiBbLi4uaW5pdC5jb29raWVzXVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tIZWFkZXJzTWFwXSA9IG5ldyBNYXAoaW5pdClcbiAgICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNoZWFkZXItbGlzdC1jb250YWluc1xuICBjb250YWlucyAobmFtZSkge1xuICAgIC8vIEEgaGVhZGVyIGxpc3QgbGlzdCBjb250YWlucyBhIGhlYWRlciBuYW1lIG5hbWUgaWYgbGlzdFxuICAgIC8vIGNvbnRhaW5zIGEgaGVhZGVyIHdob3NlIG5hbWUgaXMgYSBieXRlLWNhc2UtaW5zZW5zaXRpdmVcbiAgICAvLyBtYXRjaCBmb3IgbmFtZS5cbiAgICBuYW1lID0gbmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc01hcF0uaGFzKG5hbWUpXG4gIH1cblxuICBjbGVhciAoKSB7XG4gICAgdGhpc1trSGVhZGVyc01hcF0uY2xlYXIoKVxuICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gbnVsbFxuICAgIHRoaXMuY29va2llcyA9IG51bGxcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWhlYWRlci1saXN0LWFwcGVuZFxuICBhcHBlbmQgKG5hbWUsIHZhbHVlKSB7XG4gICAgdGhpc1trSGVhZGVyc1NvcnRlZE1hcF0gPSBudWxsXG5cbiAgICAvLyAxLiBJZiBsaXN0IGNvbnRhaW5zIG5hbWUsIHRoZW4gc2V0IG5hbWUgdG8gdGhlIGZpcnN0IHN1Y2hcbiAgICAvLyAgICBoZWFkZXJcdTIwMTlzIG5hbWUuXG4gICAgY29uc3QgbG93ZXJjYXNlTmFtZSA9IG5hbWUudG9Mb3dlckNhc2UoKVxuICAgIGNvbnN0IGV4aXN0cyA9IHRoaXNba0hlYWRlcnNNYXBdLmdldChsb3dlcmNhc2VOYW1lKVxuXG4gICAgLy8gMi4gQXBwZW5kIChuYW1lLCB2YWx1ZSkgdG8gbGlzdC5cbiAgICBpZiAoZXhpc3RzKSB7XG4gICAgICBjb25zdCBkZWxpbWl0ZXIgPSBsb3dlcmNhc2VOYW1lID09PSAnY29va2llJyA/ICc7ICcgOiAnLCAnXG4gICAgICB0aGlzW2tIZWFkZXJzTWFwXS5zZXQobG93ZXJjYXNlTmFtZSwge1xuICAgICAgICBuYW1lOiBleGlzdHMubmFtZSxcbiAgICAgICAgdmFsdWU6IGAke2V4aXN0cy52YWx1ZX0ke2RlbGltaXRlcn0ke3ZhbHVlfWBcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXNba0hlYWRlcnNNYXBdLnNldChsb3dlcmNhc2VOYW1lLCB7IG5hbWUsIHZhbHVlIH0pXG4gICAgfVxuXG4gICAgaWYgKGxvd2VyY2FzZU5hbWUgPT09ICdzZXQtY29va2llJykge1xuICAgICAgdGhpcy5jb29raWVzID8/PSBbXVxuICAgICAgdGhpcy5jb29raWVzLnB1c2godmFsdWUpXG4gICAgfVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3Qtc2V0XG4gIHNldCAobmFtZSwgdmFsdWUpIHtcbiAgICB0aGlzW2tIZWFkZXJzU29ydGVkTWFwXSA9IG51bGxcbiAgICBjb25zdCBsb3dlcmNhc2VOYW1lID0gbmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgICBpZiAobG93ZXJjYXNlTmFtZSA9PT0gJ3NldC1jb29raWUnKSB7XG4gICAgICB0aGlzLmNvb2tpZXMgPSBbdmFsdWVdXG4gICAgfVxuXG4gICAgLy8gMS4gSWYgbGlzdCBjb250YWlucyBuYW1lLCB0aGVuIHNldCB0aGUgdmFsdWUgb2ZcbiAgICAvLyAgICB0aGUgZmlyc3Qgc3VjaCBoZWFkZXIgdG8gdmFsdWUgYW5kIHJlbW92ZSB0aGVcbiAgICAvLyAgICBvdGhlcnMuXG4gICAgLy8gMi4gT3RoZXJ3aXNlLCBhcHBlbmQgaGVhZGVyIChuYW1lLCB2YWx1ZSkgdG8gbGlzdC5cbiAgICB0aGlzW2tIZWFkZXJzTWFwXS5zZXQobG93ZXJjYXNlTmFtZSwgeyBuYW1lLCB2YWx1ZSB9KVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3QtZGVsZXRlXG4gIGRlbGV0ZSAobmFtZSkge1xuICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gbnVsbFxuXG4gICAgbmFtZSA9IG5hbWUudG9Mb3dlckNhc2UoKVxuXG4gICAgaWYgKG5hbWUgPT09ICdzZXQtY29va2llJykge1xuICAgICAgdGhpcy5jb29raWVzID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXNba0hlYWRlcnNNYXBdLmRlbGV0ZShuYW1lKVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3QtZ2V0XG4gIGdldCAobmFtZSkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpc1trSGVhZGVyc01hcF0uZ2V0KG5hbWUudG9Mb3dlckNhc2UoKSlcblxuICAgIC8vIDEuIElmIGxpc3QgZG9lcyBub3QgY29udGFpbiBuYW1lLCB0aGVuIHJldHVybiBudWxsLlxuICAgIC8vIDIuIFJldHVybiB0aGUgdmFsdWVzIG9mIGFsbCBoZWFkZXJzIGluIGxpc3Qgd2hvc2UgbmFtZVxuICAgIC8vICAgIGlzIGEgYnl0ZS1jYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciBuYW1lLFxuICAgIC8vICAgIHNlcGFyYXRlZCBmcm9tIGVhY2ggb3RoZXIgYnkgMHgyQyAweDIwLCBpbiBvcmRlci5cbiAgICByZXR1cm4gdmFsdWUgPT09IHVuZGVmaW5lZCA/IG51bGwgOiB2YWx1ZS52YWx1ZVxuICB9XG5cbiAgKiBbU3ltYm9sLml0ZXJhdG9yXSAoKSB7XG4gICAgLy8gdXNlIHRoZSBsb3dlcmNhc2VkIG5hbWVcbiAgICBmb3IgKGNvbnN0IFtuYW1lLCB7IHZhbHVlIH1dIG9mIHRoaXNba0hlYWRlcnNNYXBdKSB7XG4gICAgICB5aWVsZCBbbmFtZSwgdmFsdWVdXG4gICAgfVxuICB9XG5cbiAgZ2V0IGVudHJpZXMgKCkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSB7fVxuXG4gICAgaWYgKHRoaXNba0hlYWRlcnNNYXBdLnNpemUpIHtcbiAgICAgIGZvciAoY29uc3QgeyBuYW1lLCB2YWx1ZSB9IG9mIHRoaXNba0hlYWRlcnNNYXBdLnZhbHVlcygpKSB7XG4gICAgICAgIGhlYWRlcnNbbmFtZV0gPSB2YWx1ZVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBoZWFkZXJzXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2hlYWRlcnMtY2xhc3NcbmNsYXNzIEhlYWRlcnMge1xuICBjb25zdHJ1Y3RvciAoaW5pdCA9IHVuZGVmaW5lZCkge1xuICAgIGlmIChpbml0ID09PSBrQ29uc3RydWN0KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpc1trSGVhZGVyc0xpc3RdID0gbmV3IEhlYWRlcnNMaXN0KClcblxuICAgIC8vIFRoZSBuZXcgSGVhZGVycyhpbml0KSBjb25zdHJ1Y3RvciBzdGVwcyBhcmU6XG5cbiAgICAvLyAxLiBTZXQgdGhpc1x1MjAxOXMgZ3VhcmQgdG8gXCJub25lXCIuXG4gICAgdGhpc1trR3VhcmRdID0gJ25vbmUnXG5cbiAgICAvLyAyLiBJZiBpbml0IGlzIGdpdmVuLCB0aGVuIGZpbGwgdGhpcyB3aXRoIGluaXQuXG4gICAgaWYgKGluaXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaW5pdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLkhlYWRlcnNJbml0KGluaXQpXG4gICAgICBmaWxsKHRoaXMsIGluaXQpXG4gICAgfVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1oZWFkZXJzLWFwcGVuZFxuICBhcHBlbmQgKG5hbWUsIHZhbHVlKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdIZWFkZXJzLmFwcGVuZCcgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKG5hbWUpXG4gICAgdmFsdWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKHZhbHVlKVxuXG4gICAgcmV0dXJuIGFwcGVuZEhlYWRlcih0aGlzLCBuYW1lLCB2YWx1ZSlcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20taGVhZGVycy1kZWxldGVcbiAgZGVsZXRlIChuYW1lKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdIZWFkZXJzLmRlbGV0ZScgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKG5hbWUpXG5cbiAgICAvLyAxLiBJZiBuYW1lIGlzIG5vdCBhIGhlYWRlciBuYW1lLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICghaXNWYWxpZEhlYWRlck5hbWUobmFtZSkpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgICAgcHJlZml4OiAnSGVhZGVycy5kZWxldGUnLFxuICAgICAgICB2YWx1ZTogbmFtZSxcbiAgICAgICAgdHlwZTogJ2hlYWRlciBuYW1lJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBJZiB0aGlzXHUyMDE5cyBndWFyZCBpcyBcImltbXV0YWJsZVwiLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgIC8vIDMuIE90aGVyd2lzZSwgaWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXF1ZXN0XCIgYW5kIG5hbWUgaXMgYVxuICAgIC8vICAgIGZvcmJpZGRlbiBoZWFkZXIgbmFtZSwgcmV0dXJuLlxuICAgIC8vIDQuIE90aGVyd2lzZSwgaWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXF1ZXN0LW5vLWNvcnNcIiwgbmFtZVxuICAgIC8vICAgIGlzIG5vdCBhIG5vLUNPUlMtc2FmZWxpc3RlZCByZXF1ZXN0LWhlYWRlciBuYW1lLCBhbmRcbiAgICAvLyAgICBuYW1lIGlzIG5vdCBhIHByaXZpbGVnZWQgbm8tQ09SUyByZXF1ZXN0LWhlYWRlciBuYW1lLFxuICAgIC8vICAgIHJldHVybi5cbiAgICAvLyA1LiBPdGhlcndpc2UsIGlmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVzcG9uc2VcIiBhbmQgbmFtZSBpc1xuICAgIC8vICAgIGEgZm9yYmlkZGVuIHJlc3BvbnNlLWhlYWRlciBuYW1lLCByZXR1cm4uXG4gICAgLy8gTm90ZTogdW5kaWNpIGRvZXMgbm90IGltcGxlbWVudCBmb3JiaWRkZW4gaGVhZGVyIG5hbWVzXG4gICAgaWYgKHRoaXNba0d1YXJkXSA9PT0gJ2ltbXV0YWJsZScpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ltbXV0YWJsZScpXG4gICAgfSBlbHNlIGlmICh0aGlzW2tHdWFyZF0gPT09ICdyZXF1ZXN0LW5vLWNvcnMnKSB7XG4gICAgICAvLyBUT0RPXG4gICAgfVxuXG4gICAgLy8gNi4gSWYgdGhpc1x1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBuYW1lLCB0aGVuXG4gICAgLy8gICAgcmV0dXJuLlxuICAgIGlmICghdGhpc1trSGVhZGVyc0xpc3RdLmNvbnRhaW5zKG5hbWUpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyA3LiBEZWxldGUgbmFtZSBmcm9tIHRoaXNcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgIC8vIDguIElmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdC1uby1jb3JzXCIsIHRoZW4gcmVtb3ZlXG4gICAgLy8gICAgcHJpdmlsZWdlZCBuby1DT1JTIHJlcXVlc3QgaGVhZGVycyBmcm9tIHRoaXMuXG4gICAgdGhpc1trSGVhZGVyc0xpc3RdLmRlbGV0ZShuYW1lKVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1oZWFkZXJzLWdldFxuICBnZXQgKG5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0hlYWRlcnMuZ2V0JyB9KVxuXG4gICAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJ5dGVTdHJpbmcobmFtZSlcblxuICAgIC8vIDEuIElmIG5hbWUgaXMgbm90IGEgaGVhZGVyIG5hbWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZShuYW1lKSkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5pbnZhbGlkQXJndW1lbnQoe1xuICAgICAgICBwcmVmaXg6ICdIZWFkZXJzLmdldCcsXG4gICAgICAgIHZhbHVlOiBuYW1lLFxuICAgICAgICB0eXBlOiAnaGVhZGVyIG5hbWUnXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIDIuIFJldHVybiB0aGUgcmVzdWx0IG9mIGdldHRpbmcgbmFtZSBmcm9tIHRoaXNcdTIwMTlzIGhlYWRlclxuICAgIC8vICAgIGxpc3QuXG4gICAgcmV0dXJuIHRoaXNba0hlYWRlcnNMaXN0XS5nZXQobmFtZSlcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20taGVhZGVycy1oYXNcbiAgaGFzIChuYW1lKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdIZWFkZXJzLmhhcycgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKG5hbWUpXG5cbiAgICAvLyAxLiBJZiBuYW1lIGlzIG5vdCBhIGhlYWRlciBuYW1lLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICghaXNWYWxpZEhlYWRlck5hbWUobmFtZSkpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgICAgcHJlZml4OiAnSGVhZGVycy5oYXMnLFxuICAgICAgICB2YWx1ZTogbmFtZSxcbiAgICAgICAgdHlwZTogJ2hlYWRlciBuYW1lJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBSZXR1cm4gdHJ1ZSBpZiB0aGlzXHUyMDE5cyBoZWFkZXIgbGlzdCBjb250YWlucyBuYW1lO1xuICAgIC8vICAgIG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc0xpc3RdLmNvbnRhaW5zKG5hbWUpXG4gIH1cblxuICAvLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZG9tLWhlYWRlcnMtc2V0XG4gIHNldCAobmFtZSwgdmFsdWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAyLCB7IGhlYWRlcjogJ0hlYWRlcnMuc2V0JyB9KVxuXG4gICAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJ5dGVTdHJpbmcobmFtZSlcbiAgICB2YWx1ZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJ5dGVTdHJpbmcodmFsdWUpXG5cbiAgICAvLyAxLiBOb3JtYWxpemUgdmFsdWUuXG4gICAgdmFsdWUgPSBoZWFkZXJWYWx1ZU5vcm1hbGl6ZSh2YWx1ZSlcblxuICAgIC8vIDIuIElmIG5hbWUgaXMgbm90IGEgaGVhZGVyIG5hbWUgb3IgdmFsdWUgaXMgbm90IGFcbiAgICAvLyAgICBoZWFkZXIgdmFsdWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZShuYW1lKSkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5pbnZhbGlkQXJndW1lbnQoe1xuICAgICAgICBwcmVmaXg6ICdIZWFkZXJzLnNldCcsXG4gICAgICAgIHZhbHVlOiBuYW1lLFxuICAgICAgICB0eXBlOiAnaGVhZGVyIG5hbWUnXG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAoIWlzVmFsaWRIZWFkZXJWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgICAgcHJlZml4OiAnSGVhZGVycy5zZXQnLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgdHlwZTogJ2hlYWRlciB2YWx1ZSdcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMy4gSWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJpbW11dGFibGVcIiwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAvLyA0LiBPdGhlcndpc2UsIGlmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdFwiIGFuZCBuYW1lIGlzIGFcbiAgICAvLyAgICBmb3JiaWRkZW4gaGVhZGVyIG5hbWUsIHJldHVybi5cbiAgICAvLyA1LiBPdGhlcndpc2UsIGlmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdC1uby1jb3JzXCIgYW5kXG4gICAgLy8gICAgbmFtZS92YWx1ZSBpcyBub3QgYSBuby1DT1JTLXNhZmVsaXN0ZWQgcmVxdWVzdC1oZWFkZXIsXG4gICAgLy8gICAgcmV0dXJuLlxuICAgIC8vIDYuIE90aGVyd2lzZSwgaWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXNwb25zZVwiIGFuZCBuYW1lIGlzIGFcbiAgICAvLyAgICBmb3JiaWRkZW4gcmVzcG9uc2UtaGVhZGVyIG5hbWUsIHJldHVybi5cbiAgICAvLyBOb3RlOiB1bmRpY2kgZG9lcyBub3QgaW1wbGVtZW50IGZvcmJpZGRlbiBoZWFkZXIgbmFtZXNcbiAgICBpZiAodGhpc1trR3VhcmRdID09PSAnaW1tdXRhYmxlJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignaW1tdXRhYmxlJylcbiAgICB9IGVsc2UgaWYgKHRoaXNba0d1YXJkXSA9PT0gJ3JlcXVlc3Qtbm8tY29ycycpIHtcbiAgICAgIC8vIFRPRE9cbiAgICB9XG5cbiAgICAvLyA3LiBTZXQgKG5hbWUsIHZhbHVlKSBpbiB0aGlzXHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICAvLyA4LiBJZiB0aGlzXHUyMDE5cyBndWFyZCBpcyBcInJlcXVlc3Qtbm8tY29yc1wiLCB0aGVuIHJlbW92ZVxuICAgIC8vICAgIHByaXZpbGVnZWQgbm8tQ09SUyByZXF1ZXN0IGhlYWRlcnMgZnJvbSB0aGlzXG4gICAgdGhpc1trSGVhZGVyc0xpc3RdLnNldChuYW1lLCB2YWx1ZSlcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20taGVhZGVycy1nZXRzZXRjb29raWVcbiAgZ2V0U2V0Q29va2llICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgLy8gMS4gSWYgdGhpc1x1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBgU2V0LUNvb2tpZWAsIHRoZW4gcmV0dXJuIFx1MDBBQiBcdTAwQkIuXG4gICAgLy8gMi4gUmV0dXJuIHRoZSB2YWx1ZXMgb2YgYWxsIGhlYWRlcnMgaW4gdGhpc1x1MjAxOXMgaGVhZGVyIGxpc3Qgd2hvc2UgbmFtZSBpc1xuICAgIC8vICAgIGEgYnl0ZS1jYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciBgU2V0LUNvb2tpZWAsIGluIG9yZGVyLlxuXG4gICAgY29uc3QgbGlzdCA9IHRoaXNba0hlYWRlcnNMaXN0XS5jb29raWVzXG5cbiAgICBpZiAobGlzdCkge1xuICAgICAgcmV0dXJuIFsuLi5saXN0XVxuICAgIH1cblxuICAgIHJldHVybiBbXVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3Qtc29ydC1hbmQtY29tYmluZVxuICBnZXQgW2tIZWFkZXJzU29ydGVkTWFwXSAoKSB7XG4gICAgaWYgKHRoaXNba0hlYWRlcnNMaXN0XVtrSGVhZGVyc1NvcnRlZE1hcF0pIHtcbiAgICAgIHJldHVybiB0aGlzW2tIZWFkZXJzTGlzdF1ba0hlYWRlcnNTb3J0ZWRNYXBdXG4gICAgfVxuXG4gICAgLy8gMS4gTGV0IGhlYWRlcnMgYmUgYW4gZW1wdHkgbGlzdCBvZiBoZWFkZXJzIHdpdGggdGhlIGtleSBiZWluZyB0aGUgbmFtZVxuICAgIC8vICAgIGFuZCB2YWx1ZSB0aGUgdmFsdWUuXG4gICAgY29uc3QgaGVhZGVycyA9IFtdXG5cbiAgICAvLyAyLiBMZXQgbmFtZXMgYmUgdGhlIHJlc3VsdCBvZiBjb252ZXJ0IGhlYWRlciBuYW1lcyB0byBhIHNvcnRlZC1sb3dlcmNhc2VcbiAgICAvLyAgICBzZXQgd2l0aCBhbGwgdGhlIG5hbWVzIG9mIHRoZSBoZWFkZXJzIGluIGxpc3QuXG4gICAgY29uc3QgbmFtZXMgPSBbLi4udGhpc1trSGVhZGVyc0xpc3RdXS5zb3J0KChhLCBiKSA9PiBhWzBdIDwgYlswXSA/IC0xIDogMSlcbiAgICBjb25zdCBjb29raWVzID0gdGhpc1trSGVhZGVyc0xpc3RdLmNvb2tpZXNcblxuICAgIC8vIDMuIEZvciBlYWNoIG5hbWUgb2YgbmFtZXM6XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuYW1lcy5sZW5ndGg7ICsraSkge1xuICAgICAgY29uc3QgW25hbWUsIHZhbHVlXSA9IG5hbWVzW2ldXG4gICAgICAvLyAxLiBJZiBuYW1lIGlzIGBzZXQtY29va2llYCwgdGhlbjpcbiAgICAgIGlmIChuYW1lID09PSAnc2V0LWNvb2tpZScpIHtcbiAgICAgICAgLy8gMS4gTGV0IHZhbHVlcyBiZSBhIGxpc3Qgb2YgYWxsIHZhbHVlcyBvZiBoZWFkZXJzIGluIGxpc3Qgd2hvc2UgbmFtZVxuICAgICAgICAvLyAgICBpcyBhIGJ5dGUtY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgbmFtZSwgaW4gb3JkZXIuXG5cbiAgICAgICAgLy8gMi4gRm9yIGVhY2ggdmFsdWUgb2YgdmFsdWVzOlxuICAgICAgICAvLyAxLiBBcHBlbmQgKG5hbWUsIHZhbHVlKSB0byBoZWFkZXJzLlxuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGNvb2tpZXMubGVuZ3RoOyArK2opIHtcbiAgICAgICAgICBoZWFkZXJzLnB1c2goW25hbWUsIGNvb2tpZXNbal1dKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyAyLiBPdGhlcndpc2U6XG5cbiAgICAgICAgLy8gMS4gTGV0IHZhbHVlIGJlIHRoZSByZXN1bHQgb2YgZ2V0dGluZyBuYW1lIGZyb20gbGlzdC5cblxuICAgICAgICAvLyAyLiBBc3NlcnQ6IHZhbHVlIGlzIG5vbi1udWxsLlxuICAgICAgICBhc3NlcnQodmFsdWUgIT09IG51bGwpXG5cbiAgICAgICAgLy8gMy4gQXBwZW5kIChuYW1lLCB2YWx1ZSkgdG8gaGVhZGVycy5cbiAgICAgICAgaGVhZGVycy5wdXNoKFtuYW1lLCB2YWx1ZV0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpc1trSGVhZGVyc0xpc3RdW2tIZWFkZXJzU29ydGVkTWFwXSA9IGhlYWRlcnNcblxuICAgIC8vIDQuIFJldHVybiBoZWFkZXJzLlxuICAgIHJldHVybiBoZWFkZXJzXG4gIH1cblxuICBrZXlzICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgaWYgKHRoaXNba0d1YXJkXSA9PT0gJ2ltbXV0YWJsZScpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpc1trSGVhZGVyc1NvcnRlZE1hcF1cbiAgICAgIHJldHVybiBtYWtlSXRlcmF0b3IoKCkgPT4gdmFsdWUsICdIZWFkZXJzJyxcbiAgICAgICAgJ2tleScpXG4gICAgfVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IFsuLi50aGlzW2tIZWFkZXJzU29ydGVkTWFwXS52YWx1ZXMoKV0sXG4gICAgICAnSGVhZGVycycsXG4gICAgICAna2V5J1xuICAgIClcbiAgfVxuXG4gIHZhbHVlcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIGlmICh0aGlzW2tHdWFyZF0gPT09ICdpbW11dGFibGUnKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdXG4gICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKCgpID0+IHZhbHVlLCAnSGVhZGVycycsXG4gICAgICAgICd2YWx1ZScpXG4gICAgfVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IFsuLi50aGlzW2tIZWFkZXJzU29ydGVkTWFwXS52YWx1ZXMoKV0sXG4gICAgICAnSGVhZGVycycsXG4gICAgICAndmFsdWUnXG4gICAgKVxuICB9XG5cbiAgZW50cmllcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIGlmICh0aGlzW2tHdWFyZF0gPT09ICdpbW11dGFibGUnKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdXG4gICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKCgpID0+IHZhbHVlLCAnSGVhZGVycycsXG4gICAgICAgICdrZXkrdmFsdWUnKVxuICAgIH1cblxuICAgIHJldHVybiBtYWtlSXRlcmF0b3IoXG4gICAgICAoKSA9PiBbLi4udGhpc1trSGVhZGVyc1NvcnRlZE1hcF0udmFsdWVzKCldLFxuICAgICAgJ0hlYWRlcnMnLFxuICAgICAgJ2tleSt2YWx1ZSdcbiAgICApXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHsodmFsdWU6IHN0cmluZywga2V5OiBzdHJpbmcsIHNlbGY6IEhlYWRlcnMpID0+IHZvaWR9IGNhbGxiYWNrRm5cbiAgICogQHBhcmFtIHt1bmtub3dufSB0aGlzQXJnXG4gICAqL1xuICBmb3JFYWNoIChjYWxsYmFja0ZuLCB0aGlzQXJnID0gZ2xvYmFsVGhpcykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEhlYWRlcnMpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnSGVhZGVycy5mb3JFYWNoJyB9KVxuXG4gICAgaWYgKHR5cGVvZiBjYWxsYmFja0ZuICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICBcIkZhaWxlZCB0byBleGVjdXRlICdmb3JFYWNoJyBvbiAnSGVhZGVycyc6IHBhcmFtZXRlciAxIGlzIG5vdCBvZiB0eXBlICdGdW5jdGlvbicuXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzKSB7XG4gICAgICBjYWxsYmFja0ZuLmFwcGx5KHRoaXNBcmcsIFt2YWx1ZSwga2V5LCB0aGlzXSlcbiAgICB9XG4gIH1cblxuICBbU3ltYm9sLmZvcignbm9kZWpzLnV0aWwuaW5zcGVjdC5jdXN0b20nKV0gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEhlYWRlcnMpXG5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc0xpc3RdXG4gIH1cbn1cblxuSGVhZGVycy5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXSA9IEhlYWRlcnMucHJvdG90eXBlLmVudHJpZXNcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoSGVhZGVycy5wcm90b3R5cGUsIHtcbiAgYXBwZW5kOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBkZWxldGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGdldDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgaGFzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBzZXQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGdldFNldENvb2tpZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAga2V5czoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgdmFsdWVzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBlbnRyaWVzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBmb3JFYWNoOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBbU3ltYm9sLml0ZXJhdG9yXTogeyBlbnVtZXJhYmxlOiBmYWxzZSB9LFxuICBbU3ltYm9sLnRvU3RyaW5nVGFnXToge1xuICAgIHZhbHVlOiAnSGVhZGVycycsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH0sXG4gIFt1dGlsLmluc3BlY3QuY3VzdG9tXToge1xuICAgIGVudW1lcmFibGU6IGZhbHNlXG4gIH1cbn0pXG5cbndlYmlkbC5jb252ZXJ0ZXJzLkhlYWRlcnNJbml0ID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgPT09ICdPYmplY3QnKSB7XG4gICAgaWYgKFZbU3ltYm9sLml0ZXJhdG9yXSkge1xuICAgICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nXShWKVxuICAgIH1cblxuICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVyc1sncmVjb3JkPEJ5dGVTdHJpbmcsIEJ5dGVTdHJpbmc+J10oVilcbiAgfVxuXG4gIHRocm93IHdlYmlkbC5lcnJvcnMuY29udmVyc2lvbkZhaWxlZCh7XG4gICAgcHJlZml4OiAnSGVhZGVycyBjb25zdHJ1Y3RvcicsXG4gICAgYXJndW1lbnQ6ICdBcmd1bWVudCAxJyxcbiAgICB0eXBlczogWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nLCAncmVjb3JkPEJ5dGVTdHJpbmcsIEJ5dGVTdHJpbmc+J11cbiAgfSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGZpbGwsXG4gIEhlYWRlcnMsXG4gIEhlYWRlcnNMaXN0XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgSGVhZGVycywgSGVhZGVyc0xpc3QsIGZpbGwgfSA9IHJlcXVpcmUoJy4vaGVhZGVycycpXG5jb25zdCB7IGV4dHJhY3RCb2R5LCBjbG9uZUJvZHksIG1peGluQm9keSB9ID0gcmVxdWlyZSgnLi9ib2R5JylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBrRW51bWVyYWJsZVByb3BlcnR5IH0gPSB1dGlsXG5jb25zdCB7XG4gIGlzVmFsaWRSZWFzb25QaHJhc2UsXG4gIGlzQ2FuY2VsbGVkLFxuICBpc0Fib3J0ZWQsXG4gIGlzQmxvYkxpa2UsXG4gIHNlcmlhbGl6ZUphdmFzY3JpcHRWYWx1ZVRvSlNPTlN0cmluZyxcbiAgaXNFcnJvckxpa2UsXG4gIGlzb21vcnBoaWNFbmNvZGVcbn0gPSByZXF1aXJlKCcuL3V0aWwnKVxuY29uc3Qge1xuICByZWRpcmVjdFN0YXR1c1NldCxcbiAgbnVsbEJvZHlTdGF0dXMsXG4gIERPTUV4Y2VwdGlvblxufSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsga1N0YXRlLCBrSGVhZGVycywga0d1YXJkLCBrUmVhbG0gfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi93ZWJpZGwnKVxuY29uc3QgeyBGb3JtRGF0YSB9ID0gcmVxdWlyZSgnLi9mb3JtZGF0YScpXG5jb25zdCB7IGdldEdsb2JhbE9yaWdpbiB9ID0gcmVxdWlyZSgnLi9nbG9iYWwnKVxuY29uc3QgeyBVUkxTZXJpYWxpemVyIH0gPSByZXF1aXJlKCcuL2RhdGFVUkwnKVxuY29uc3QgeyBrSGVhZGVyc0xpc3QsIGtDb25zdHJ1Y3QgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyB0eXBlcyB9ID0gcmVxdWlyZSgndXRpbCcpXG5cbmNvbnN0IFJlYWRhYmxlU3RyZWFtID0gZ2xvYmFsVGhpcy5SZWFkYWJsZVN0cmVhbSB8fCByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbmNvbnN0IHRleHRFbmNvZGVyID0gbmV3IFRleHRFbmNvZGVyKCd1dGYtOCcpXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXNwb25zZS1jbGFzc1xuY2xhc3MgUmVzcG9uc2Uge1xuICAvLyBDcmVhdGVzIG5ldHdvcmsgZXJyb3IgUmVzcG9uc2UuXG4gIHN0YXRpYyBlcnJvciAoKSB7XG4gICAgLy8gVE9ET1xuICAgIGNvbnN0IHJlbGV2YW50UmVhbG0gPSB7IHNldHRpbmdzT2JqZWN0OiB7fSB9XG5cbiAgICAvLyBUaGUgc3RhdGljIGVycm9yKCkgbWV0aG9kIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhXG4gICAgLy8gUmVzcG9uc2Ugb2JqZWN0LCBnaXZlbiBhIG5ldyBuZXR3b3JrIGVycm9yLCBcImltbXV0YWJsZVwiLCBhbmQgdGhpc1x1MjAxOXNcbiAgICAvLyByZWxldmFudCBSZWFsbS5cbiAgICBjb25zdCByZXNwb25zZU9iamVjdCA9IG5ldyBSZXNwb25zZSgpXG4gICAgcmVzcG9uc2VPYmplY3Rba1N0YXRlXSA9IG1ha2VOZXR3b3JrRXJyb3IoKVxuICAgIHJlc3BvbnNlT2JqZWN0W2tSZWFsbV0gPSByZWxldmFudFJlYWxtXG4gICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tIZWFkZXJzTGlzdF0gPSByZXNwb25zZU9iamVjdFtrU3RhdGVdLmhlYWRlcnNMaXN0XG4gICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tHdWFyZF0gPSAnaW1tdXRhYmxlJ1xuICAgIHJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrUmVhbG1dID0gcmVsZXZhbnRSZWFsbVxuICAgIHJldHVybiByZXNwb25zZU9iamVjdFxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1yZXNwb25zZS1qc29uXG4gIHN0YXRpYyBqc29uIChkYXRhLCBpbml0ID0ge30pIHtcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnUmVzcG9uc2UuanNvbicgfSlcblxuICAgIGlmIChpbml0ICE9PSBudWxsKSB7XG4gICAgICBpbml0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVzcG9uc2VJbml0KGluaXQpXG4gICAgfVxuXG4gICAgLy8gMS4gTGV0IGJ5dGVzIHRoZSByZXN1bHQgb2YgcnVubmluZyBzZXJpYWxpemUgYSBKYXZhU2NyaXB0IHZhbHVlIHRvIEpTT04gYnl0ZXMgb24gZGF0YS5cbiAgICBjb25zdCBieXRlcyA9IHRleHRFbmNvZGVyLmVuY29kZShcbiAgICAgIHNlcmlhbGl6ZUphdmFzY3JpcHRWYWx1ZVRvSlNPTlN0cmluZyhkYXRhKVxuICAgIClcblxuICAgIC8vIDIuIExldCBib2R5IGJlIHRoZSByZXN1bHQgb2YgZXh0cmFjdGluZyBieXRlcy5cbiAgICBjb25zdCBib2R5ID0gZXh0cmFjdEJvZHkoYnl0ZXMpXG5cbiAgICAvLyAzLiBMZXQgcmVzcG9uc2VPYmplY3QgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIFJlc3BvbnNlIG9iamVjdCwgZ2l2ZW4gYSBuZXcgcmVzcG9uc2UsXG4gICAgLy8gICAgXCJyZXNwb25zZVwiLCBhbmQgdGhpc1x1MjAxOXMgcmVsZXZhbnQgUmVhbG0uXG4gICAgY29uc3QgcmVsZXZhbnRSZWFsbSA9IHsgc2V0dGluZ3NPYmplY3Q6IHt9IH1cbiAgICBjb25zdCByZXNwb25zZU9iamVjdCA9IG5ldyBSZXNwb25zZSgpXG4gICAgcmVzcG9uc2VPYmplY3Rba1JlYWxtXSA9IHJlbGV2YW50UmVhbG1cbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba0d1YXJkXSA9ICdyZXNwb25zZSdcbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba1JlYWxtXSA9IHJlbGV2YW50UmVhbG1cblxuICAgIC8vIDQuIFBlcmZvcm0gaW5pdGlhbGl6ZSBhIHJlc3BvbnNlIGdpdmVuIHJlc3BvbnNlT2JqZWN0LCBpbml0LCBhbmQgKGJvZHksIFwiYXBwbGljYXRpb24vanNvblwiKS5cbiAgICBpbml0aWFsaXplUmVzcG9uc2UocmVzcG9uc2VPYmplY3QsIGluaXQsIHsgYm9keTogYm9keVswXSwgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nIH0pXG5cbiAgICAvLyA1LiBSZXR1cm4gcmVzcG9uc2VPYmplY3QuXG4gICAgcmV0dXJuIHJlc3BvbnNlT2JqZWN0XG4gIH1cblxuICAvLyBDcmVhdGVzIGEgcmVkaXJlY3QgUmVzcG9uc2UgdGhhdCByZWRpcmVjdHMgdG8gdXJsIHdpdGggc3RhdHVzIHN0YXR1cy5cbiAgc3RhdGljIHJlZGlyZWN0ICh1cmwsIHN0YXR1cyA9IDMwMikge1xuICAgIGNvbnN0IHJlbGV2YW50UmVhbG0gPSB7IHNldHRpbmdzT2JqZWN0OiB7fSB9XG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnUmVzcG9uc2UucmVkaXJlY3QnIH0pXG5cbiAgICB1cmwgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcodXJsKVxuICAgIHN0YXR1cyA9IHdlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBzaG9ydCddKHN0YXR1cylcblxuICAgIC8vIDEuIExldCBwYXJzZWRVUkwgYmUgdGhlIHJlc3VsdCBvZiBwYXJzaW5nIHVybCB3aXRoIGN1cnJlbnQgc2V0dGluZ3NcbiAgICAvLyBvYmplY3RcdTIwMTlzIEFQSSBiYXNlIFVSTC5cbiAgICAvLyAyLiBJZiBwYXJzZWRVUkwgaXMgZmFpbHVyZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAvLyBUT0RPOiBiYXNlLVVSTD9cbiAgICBsZXQgcGFyc2VkVVJMXG4gICAgdHJ5IHtcbiAgICAgIHBhcnNlZFVSTCA9IG5ldyBVUkwodXJsLCBnZXRHbG9iYWxPcmlnaW4oKSlcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRocm93IE9iamVjdC5hc3NpZ24obmV3IFR5cGVFcnJvcignRmFpbGVkIHRvIHBhcnNlIFVSTCBmcm9tICcgKyB1cmwpLCB7XG4gICAgICAgIGNhdXNlOiBlcnJcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMy4gSWYgc3RhdHVzIGlzIG5vdCBhIHJlZGlyZWN0IHN0YXR1cywgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IuXG4gICAgaWYgKCFyZWRpcmVjdFN0YXR1c1NldC5oYXMoc3RhdHVzKSkge1xuICAgICAgdGhyb3cgbmV3IFJhbmdlRXJyb3IoJ0ludmFsaWQgc3RhdHVzIGNvZGUgJyArIHN0YXR1cylcbiAgICB9XG5cbiAgICAvLyA0LiBMZXQgcmVzcG9uc2VPYmplY3QgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIFJlc3BvbnNlIG9iamVjdCxcbiAgICAvLyBnaXZlbiBhIG5ldyByZXNwb25zZSwgXCJpbW11dGFibGVcIiwgYW5kIHRoaXNcdTIwMTlzIHJlbGV2YW50IFJlYWxtLlxuICAgIGNvbnN0IHJlc3BvbnNlT2JqZWN0ID0gbmV3IFJlc3BvbnNlKClcbiAgICByZXNwb25zZU9iamVjdFtrUmVhbG1dID0gcmVsZXZhbnRSZWFsbVxuICAgIHJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrR3VhcmRdID0gJ2ltbXV0YWJsZSdcbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba1JlYWxtXSA9IHJlbGV2YW50UmVhbG1cblxuICAgIC8vIDUuIFNldCByZXNwb25zZU9iamVjdFx1MjAxOXMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyB0byBzdGF0dXMuXG4gICAgcmVzcG9uc2VPYmplY3Rba1N0YXRlXS5zdGF0dXMgPSBzdGF0dXNcblxuICAgIC8vIDYuIExldCB2YWx1ZSBiZSBwYXJzZWRVUkwsIHNlcmlhbGl6ZWQgYW5kIGlzb21vcnBoaWMgZW5jb2RlZC5cbiAgICBjb25zdCB2YWx1ZSA9IGlzb21vcnBoaWNFbmNvZGUoVVJMU2VyaWFsaXplcihwYXJzZWRVUkwpKVxuXG4gICAgLy8gNy4gQXBwZW5kIGBMb2NhdGlvbmAvdmFsdWUgdG8gcmVzcG9uc2VPYmplY3RcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICByZXNwb25zZU9iamVjdFtrU3RhdGVdLmhlYWRlcnNMaXN0LmFwcGVuZCgnbG9jYXRpb24nLCB2YWx1ZSlcblxuICAgIC8vIDguIFJldHVybiByZXNwb25zZU9iamVjdC5cbiAgICByZXR1cm4gcmVzcG9uc2VPYmplY3RcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tcmVzcG9uc2VcbiAgY29uc3RydWN0b3IgKGJvZHkgPSBudWxsLCBpbml0ID0ge30pIHtcbiAgICBpZiAoYm9keSAhPT0gbnVsbCkge1xuICAgICAgYm9keSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJvZHlJbml0KGJvZHkpXG4gICAgfVxuXG4gICAgaW5pdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlc3BvbnNlSW5pdChpbml0KVxuXG4gICAgLy8gVE9ET1xuICAgIHRoaXNba1JlYWxtXSA9IHsgc2V0dGluZ3NPYmplY3Q6IHt9IH1cblxuICAgIC8vIDEuIFNldCB0aGlzXHUyMDE5cyByZXNwb25zZSB0byBhIG5ldyByZXNwb25zZS5cbiAgICB0aGlzW2tTdGF0ZV0gPSBtYWtlUmVzcG9uc2Uoe30pXG5cbiAgICAvLyAyLiBTZXQgdGhpc1x1MjAxOXMgaGVhZGVycyB0byBhIG5ldyBIZWFkZXJzIG9iamVjdCB3aXRoIHRoaXNcdTIwMTlzIHJlbGV2YW50XG4gICAgLy8gUmVhbG0sIHdob3NlIGhlYWRlciBsaXN0IGlzIHRoaXNcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdCBhbmQgZ3VhcmRcbiAgICAvLyBpcyBcInJlc3BvbnNlXCIuXG4gICAgdGhpc1trSGVhZGVyc10gPSBuZXcgSGVhZGVycyhrQ29uc3RydWN0KVxuICAgIHRoaXNba0hlYWRlcnNdW2tHdWFyZF0gPSAncmVzcG9uc2UnXG4gICAgdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XSA9IHRoaXNba1N0YXRlXS5oZWFkZXJzTGlzdFxuICAgIHRoaXNba0hlYWRlcnNdW2tSZWFsbV0gPSB0aGlzW2tSZWFsbV1cblxuICAgIC8vIDMuIExldCBib2R5V2l0aFR5cGUgYmUgbnVsbC5cbiAgICBsZXQgYm9keVdpdGhUeXBlID0gbnVsbFxuXG4gICAgLy8gNC4gSWYgYm9keSBpcyBub24tbnVsbCwgdGhlbiBzZXQgYm9keVdpdGhUeXBlIHRvIHRoZSByZXN1bHQgb2YgZXh0cmFjdGluZyBib2R5LlxuICAgIGlmIChib2R5ICE9IG51bGwpIHtcbiAgICAgIGNvbnN0IFtleHRyYWN0ZWRCb2R5LCB0eXBlXSA9IGV4dHJhY3RCb2R5KGJvZHkpXG4gICAgICBib2R5V2l0aFR5cGUgPSB7IGJvZHk6IGV4dHJhY3RlZEJvZHksIHR5cGUgfVxuICAgIH1cblxuICAgIC8vIDUuIFBlcmZvcm0gaW5pdGlhbGl6ZSBhIHJlc3BvbnNlIGdpdmVuIHRoaXMsIGluaXQsIGFuZCBib2R5V2l0aFR5cGUuXG4gICAgaW5pdGlhbGl6ZVJlc3BvbnNlKHRoaXMsIGluaXQsIGJvZHlXaXRoVHlwZSlcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIHR5cGUsIGUuZy4sIFwiY29yc1wiLlxuICBnZXQgdHlwZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICAvLyBUaGUgdHlwZSBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgdHlwZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnR5cGVcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIFVSTCwgaWYgaXQgaGFzIG9uZTsgb3RoZXJ3aXNlIHRoZSBlbXB0eSBzdHJpbmcuXG4gIGdldCB1cmwgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgY29uc3QgdXJsTGlzdCA9IHRoaXNba1N0YXRlXS51cmxMaXN0XG5cbiAgICAvLyBUaGUgdXJsIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhpc1x1MjAxOXNcbiAgICAvLyByZXNwb25zZVx1MjAxOXMgVVJMIGlzIG51bGw7IG90aGVyd2lzZSB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgVVJMLFxuICAgIC8vIHNlcmlhbGl6ZWQgd2l0aCBleGNsdWRlIGZyYWdtZW50IHNldCB0byB0cnVlLlxuICAgIGNvbnN0IHVybCA9IHVybExpc3RbdXJsTGlzdC5sZW5ndGggLSAxXSA/PyBudWxsXG5cbiAgICBpZiAodXJsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gJydcbiAgICB9XG5cbiAgICByZXR1cm4gVVJMU2VyaWFsaXplcih1cmwsIHRydWUpXG4gIH1cblxuICAvLyBSZXR1cm5zIHdoZXRoZXIgcmVzcG9uc2Ugd2FzIG9idGFpbmVkIHRocm91Z2ggYSByZWRpcmVjdC5cbiAgZ2V0IHJlZGlyZWN0ZWQgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgLy8gVGhlIHJlZGlyZWN0ZWQgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdHJ1ZSBpZiB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgVVJMXG4gICAgLy8gbGlzdCBoYXMgbW9yZSB0aGFuIG9uZSBpdGVtOyBvdGhlcndpc2UgZmFsc2UuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS51cmxMaXN0Lmxlbmd0aCA+IDFcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cy5cbiAgZ2V0IHN0YXR1cyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICAvLyBUaGUgc3RhdHVzIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5zdGF0dXNcbiAgfVxuXG4gIC8vIFJldHVybnMgd2hldGhlciByZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIGFuIG9rIHN0YXR1cy5cbiAgZ2V0IG9rICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXNwb25zZSlcblxuICAgIC8vIFRoZSBvayBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0cnVlIGlmIHRoaXNcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgYW5cbiAgICAvLyBvayBzdGF0dXM7IG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnN0YXR1cyA+PSAyMDAgJiYgdGhpc1trU3RhdGVdLnN0YXR1cyA8PSAyOTlcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBtZXNzYWdlLlxuICBnZXQgc3RhdHVzVGV4dCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICAvLyBUaGUgc3RhdHVzVGV4dCBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgc3RhdHVzXG4gICAgLy8gbWVzc2FnZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnN0YXR1c1RleHRcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIGhlYWRlcnMgYXMgSGVhZGVycy5cbiAgZ2V0IGhlYWRlcnMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgLy8gVGhlIGhlYWRlcnMgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgaGVhZGVycy5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc11cbiAgfVxuXG4gIGdldCBib2R5ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXNwb25zZSlcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uYm9keSA/IHRoaXNba1N0YXRlXS5ib2R5LnN0cmVhbSA6IG51bGxcbiAgfVxuXG4gIGdldCBib2R5VXNlZCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICByZXR1cm4gISF0aGlzW2tTdGF0ZV0uYm9keSAmJiB1dGlsLmlzRGlzdHVyYmVkKHRoaXNba1N0YXRlXS5ib2R5LnN0cmVhbSlcbiAgfVxuXG4gIC8vIFJldHVybnMgYSBjbG9uZSBvZiByZXNwb25zZS5cbiAgY2xvbmUgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgLy8gMS4gSWYgdGhpcyBpcyB1bnVzYWJsZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAodGhpcy5ib2R5VXNlZCB8fCAodGhpcy5ib2R5ICYmIHRoaXMuYm9keS5sb2NrZWQpKSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogJ1Jlc3BvbnNlLmNsb25lJyxcbiAgICAgICAgbWVzc2FnZTogJ0JvZHkgaGFzIGFscmVhZHkgYmVlbiBjb25zdW1lZC4nXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIDIuIExldCBjbG9uZWRSZXNwb25zZSBiZSB0aGUgcmVzdWx0IG9mIGNsb25pbmcgdGhpc1x1MjAxOXMgcmVzcG9uc2UuXG4gICAgY29uc3QgY2xvbmVkUmVzcG9uc2UgPSBjbG9uZVJlc3BvbnNlKHRoaXNba1N0YXRlXSlcblxuICAgIC8vIDMuIFJldHVybiB0aGUgcmVzdWx0IG9mIGNyZWF0aW5nIGEgUmVzcG9uc2Ugb2JqZWN0LCBnaXZlblxuICAgIC8vIGNsb25lZFJlc3BvbnNlLCB0aGlzXHUyMDE5cyBoZWFkZXJzXHUyMDE5cyBndWFyZCwgYW5kIHRoaXNcdTIwMTlzIHJlbGV2YW50IFJlYWxtLlxuICAgIGNvbnN0IGNsb25lZFJlc3BvbnNlT2JqZWN0ID0gbmV3IFJlc3BvbnNlKClcbiAgICBjbG9uZWRSZXNwb25zZU9iamVjdFtrU3RhdGVdID0gY2xvbmVkUmVzcG9uc2VcbiAgICBjbG9uZWRSZXNwb25zZU9iamVjdFtrUmVhbG1dID0gdGhpc1trUmVhbG1dXG4gICAgY2xvbmVkUmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tIZWFkZXJzTGlzdF0gPSBjbG9uZWRSZXNwb25zZS5oZWFkZXJzTGlzdFxuICAgIGNsb25lZFJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrR3VhcmRdID0gdGhpc1trSGVhZGVyc11ba0d1YXJkXVxuICAgIGNsb25lZFJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrUmVhbG1dID0gdGhpc1trSGVhZGVyc11ba1JlYWxtXVxuXG4gICAgcmV0dXJuIGNsb25lZFJlc3BvbnNlT2JqZWN0XG4gIH1cbn1cblxubWl4aW5Cb2R5KFJlc3BvbnNlKVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhSZXNwb25zZS5wcm90b3R5cGUsIHtcbiAgdHlwZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgdXJsOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBzdGF0dXM6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9rOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICByZWRpcmVjdGVkOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBzdGF0dXNUZXh0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBoZWFkZXJzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjbG9uZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keVVzZWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdSZXNwb25zZScsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH1cbn0pXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFJlc3BvbnNlLCB7XG4gIGpzb246IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlZGlyZWN0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBlcnJvcjoga0VudW1lcmFibGVQcm9wZXJ0eVxufSlcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtcmVzcG9uc2UtY2xvbmVcbmZ1bmN0aW9uIGNsb25lUmVzcG9uc2UgKHJlc3BvbnNlKSB7XG4gIC8vIFRvIGNsb25lIGEgcmVzcG9uc2UgcmVzcG9uc2UsIHJ1biB0aGVzZSBzdGVwczpcblxuICAvLyAxLiBJZiByZXNwb25zZSBpcyBhIGZpbHRlcmVkIHJlc3BvbnNlLCB0aGVuIHJldHVybiBhIG5ldyBpZGVudGljYWxcbiAgLy8gZmlsdGVyZWQgcmVzcG9uc2Ugd2hvc2UgaW50ZXJuYWwgcmVzcG9uc2UgaXMgYSBjbG9uZSBvZiByZXNwb25zZVx1MjAxOXNcbiAgLy8gaW50ZXJuYWwgcmVzcG9uc2UuXG4gIGlmIChyZXNwb25zZS5pbnRlcm5hbFJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIGZpbHRlclJlc3BvbnNlKFxuICAgICAgY2xvbmVSZXNwb25zZShyZXNwb25zZS5pbnRlcm5hbFJlc3BvbnNlKSxcbiAgICAgIHJlc3BvbnNlLnR5cGVcbiAgICApXG4gIH1cblxuICAvLyAyLiBMZXQgbmV3UmVzcG9uc2UgYmUgYSBjb3B5IG9mIHJlc3BvbnNlLCBleGNlcHQgZm9yIGl0cyBib2R5LlxuICBjb25zdCBuZXdSZXNwb25zZSA9IG1ha2VSZXNwb25zZSh7IC4uLnJlc3BvbnNlLCBib2R5OiBudWxsIH0pXG5cbiAgLy8gMy4gSWYgcmVzcG9uc2VcdTIwMTlzIGJvZHkgaXMgbm9uLW51bGwsIHRoZW4gc2V0IG5ld1Jlc3BvbnNlXHUyMDE5cyBib2R5IHRvIHRoZVxuICAvLyByZXN1bHQgb2YgY2xvbmluZyByZXNwb25zZVx1MjAxOXMgYm9keS5cbiAgaWYgKHJlc3BvbnNlLmJvZHkgIT0gbnVsbCkge1xuICAgIG5ld1Jlc3BvbnNlLmJvZHkgPSBjbG9uZUJvZHkocmVzcG9uc2UuYm9keSlcbiAgfVxuXG4gIC8vIDQuIFJldHVybiBuZXdSZXNwb25zZS5cbiAgcmV0dXJuIG5ld1Jlc3BvbnNlXG59XG5cbmZ1bmN0aW9uIG1ha2VSZXNwb25zZSAoaW5pdCkge1xuICByZXR1cm4ge1xuICAgIGFib3J0ZWQ6IGZhbHNlLFxuICAgIHJhbmdlUmVxdWVzdGVkOiBmYWxzZSxcbiAgICB0aW1pbmdBbGxvd1Bhc3NlZDogZmFsc2UsXG4gICAgcmVxdWVzdEluY2x1ZGVzQ3JlZGVudGlhbHM6IGZhbHNlLFxuICAgIHR5cGU6ICdkZWZhdWx0JyxcbiAgICBzdGF0dXM6IDIwMCxcbiAgICB0aW1pbmdJbmZvOiBudWxsLFxuICAgIGNhY2hlU3RhdGU6ICcnLFxuICAgIHN0YXR1c1RleHQ6ICcnLFxuICAgIC4uLmluaXQsXG4gICAgaGVhZGVyc0xpc3Q6IGluaXQuaGVhZGVyc0xpc3RcbiAgICAgID8gbmV3IEhlYWRlcnNMaXN0KGluaXQuaGVhZGVyc0xpc3QpXG4gICAgICA6IG5ldyBIZWFkZXJzTGlzdCgpLFxuICAgIHVybExpc3Q6IGluaXQudXJsTGlzdCA/IFsuLi5pbml0LnVybExpc3RdIDogW11cbiAgfVxufVxuXG5mdW5jdGlvbiBtYWtlTmV0d29ya0Vycm9yIChyZWFzb24pIHtcbiAgY29uc3QgaXNFcnJvciA9IGlzRXJyb3JMaWtlKHJlYXNvbilcbiAgcmV0dXJuIG1ha2VSZXNwb25zZSh7XG4gICAgdHlwZTogJ2Vycm9yJyxcbiAgICBzdGF0dXM6IDAsXG4gICAgZXJyb3I6IGlzRXJyb3JcbiAgICAgID8gcmVhc29uXG4gICAgICA6IG5ldyBFcnJvcihyZWFzb24gPyBTdHJpbmcocmVhc29uKSA6IHJlYXNvbiksXG4gICAgYWJvcnRlZDogcmVhc29uICYmIHJlYXNvbi5uYW1lID09PSAnQWJvcnRFcnJvcidcbiAgfSlcbn1cblxuZnVuY3Rpb24gbWFrZUZpbHRlcmVkUmVzcG9uc2UgKHJlc3BvbnNlLCBzdGF0ZSkge1xuICBzdGF0ZSA9IHtcbiAgICBpbnRlcm5hbFJlc3BvbnNlOiByZXNwb25zZSxcbiAgICAuLi5zdGF0ZVxuICB9XG5cbiAgcmV0dXJuIG5ldyBQcm94eShyZXNwb25zZSwge1xuICAgIGdldCAodGFyZ2V0LCBwKSB7XG4gICAgICByZXR1cm4gcCBpbiBzdGF0ZSA/IHN0YXRlW3BdIDogdGFyZ2V0W3BdXG4gICAgfSxcbiAgICBzZXQgKHRhcmdldCwgcCwgdmFsdWUpIHtcbiAgICAgIGFzc2VydCghKHAgaW4gc3RhdGUpKVxuICAgICAgdGFyZ2V0W3BdID0gdmFsdWVcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9KVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1maWx0ZXJlZC1yZXNwb25zZVxuZnVuY3Rpb24gZmlsdGVyUmVzcG9uc2UgKHJlc3BvbnNlLCB0eXBlKSB7XG4gIC8vIFNldCByZXNwb25zZSB0byB0aGUgZm9sbG93aW5nIGZpbHRlcmVkIHJlc3BvbnNlIHdpdGggcmVzcG9uc2UgYXMgaXRzXG4gIC8vIGludGVybmFsIHJlc3BvbnNlLCBkZXBlbmRpbmcgb24gcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmc6XG4gIGlmICh0eXBlID09PSAnYmFzaWMnKSB7XG4gICAgLy8gQSBiYXNpYyBmaWx0ZXJlZCByZXNwb25zZSBpcyBhIGZpbHRlcmVkIHJlc3BvbnNlIHdob3NlIHR5cGUgaXMgXCJiYXNpY1wiXG4gICAgLy8gYW5kIGhlYWRlciBsaXN0IGV4Y2x1ZGVzIGFueSBoZWFkZXJzIGluIGludGVybmFsIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdFxuICAgIC8vIHdob3NlIG5hbWUgaXMgYSBmb3JiaWRkZW4gcmVzcG9uc2UtaGVhZGVyIG5hbWUuXG5cbiAgICAvLyBOb3RlOiB1bmRpY2kgZG9lcyBub3QgaW1wbGVtZW50IGZvcmJpZGRlbiByZXNwb25zZS1oZWFkZXIgbmFtZXNcbiAgICByZXR1cm4gbWFrZUZpbHRlcmVkUmVzcG9uc2UocmVzcG9uc2UsIHtcbiAgICAgIHR5cGU6ICdiYXNpYycsXG4gICAgICBoZWFkZXJzTGlzdDogcmVzcG9uc2UuaGVhZGVyc0xpc3RcbiAgICB9KVxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdjb3JzJykge1xuICAgIC8vIEEgQ09SUyBmaWx0ZXJlZCByZXNwb25zZSBpcyBhIGZpbHRlcmVkIHJlc3BvbnNlIHdob3NlIHR5cGUgaXMgXCJjb3JzXCJcbiAgICAvLyBhbmQgaGVhZGVyIGxpc3QgZXhjbHVkZXMgYW55IGhlYWRlcnMgaW4gaW50ZXJuYWwgcmVzcG9uc2VcdTIwMTlzIGhlYWRlclxuICAgIC8vIGxpc3Qgd2hvc2UgbmFtZSBpcyBub3QgYSBDT1JTLXNhZmVsaXN0ZWQgcmVzcG9uc2UtaGVhZGVyIG5hbWUsIGdpdmVuXG4gICAgLy8gaW50ZXJuYWwgcmVzcG9uc2VcdTIwMTlzIENPUlMtZXhwb3NlZCBoZWFkZXItbmFtZSBsaXN0LlxuXG4gICAgLy8gTm90ZTogdW5kaWNpIGRvZXMgbm90IGltcGxlbWVudCBDT1JTLXNhZmVsaXN0ZWQgcmVzcG9uc2UtaGVhZGVyIG5hbWVzXG4gICAgcmV0dXJuIG1ha2VGaWx0ZXJlZFJlc3BvbnNlKHJlc3BvbnNlLCB7XG4gICAgICB0eXBlOiAnY29ycycsXG4gICAgICBoZWFkZXJzTGlzdDogcmVzcG9uc2UuaGVhZGVyc0xpc3RcbiAgICB9KVxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdvcGFxdWUnKSB7XG4gICAgLy8gQW4gb3BhcXVlIGZpbHRlcmVkIHJlc3BvbnNlIGlzIGEgZmlsdGVyZWQgcmVzcG9uc2Ugd2hvc2UgdHlwZSBpc1xuICAgIC8vIFwib3BhcXVlXCIsIFVSTCBsaXN0IGlzIHRoZSBlbXB0eSBsaXN0LCBzdGF0dXMgaXMgMCwgc3RhdHVzIG1lc3NhZ2VcbiAgICAvLyBpcyB0aGUgZW1wdHkgYnl0ZSBzZXF1ZW5jZSwgaGVhZGVyIGxpc3QgaXMgZW1wdHksIGFuZCBib2R5IGlzIG51bGwuXG5cbiAgICByZXR1cm4gbWFrZUZpbHRlcmVkUmVzcG9uc2UocmVzcG9uc2UsIHtcbiAgICAgIHR5cGU6ICdvcGFxdWUnLFxuICAgICAgdXJsTGlzdDogT2JqZWN0LmZyZWV6ZShbXSksXG4gICAgICBzdGF0dXM6IDAsXG4gICAgICBzdGF0dXNUZXh0OiAnJyxcbiAgICAgIGJvZHk6IG51bGxcbiAgICB9KVxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdvcGFxdWVyZWRpcmVjdCcpIHtcbiAgICAvLyBBbiBvcGFxdWUtcmVkaXJlY3QgZmlsdGVyZWQgcmVzcG9uc2UgaXMgYSBmaWx0ZXJlZCByZXNwb25zZSB3aG9zZSB0eXBlXG4gICAgLy8gaXMgXCJvcGFxdWVyZWRpcmVjdFwiLCBzdGF0dXMgaXMgMCwgc3RhdHVzIG1lc3NhZ2UgaXMgdGhlIGVtcHR5IGJ5dGVcbiAgICAvLyBzZXF1ZW5jZSwgaGVhZGVyIGxpc3QgaXMgZW1wdHksIGFuZCBib2R5IGlzIG51bGwuXG5cbiAgICByZXR1cm4gbWFrZUZpbHRlcmVkUmVzcG9uc2UocmVzcG9uc2UsIHtcbiAgICAgIHR5cGU6ICdvcGFxdWVyZWRpcmVjdCcsXG4gICAgICBzdGF0dXM6IDAsXG4gICAgICBzdGF0dXNUZXh0OiAnJyxcbiAgICAgIGhlYWRlcnNMaXN0OiBbXSxcbiAgICAgIGJvZHk6IG51bGxcbiAgICB9KVxuICB9IGVsc2Uge1xuICAgIGFzc2VydChmYWxzZSlcbiAgfVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jYXBwcm9wcmlhdGUtbmV0d29yay1lcnJvclxuZnVuY3Rpb24gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yIChmZXRjaFBhcmFtcywgZXJyID0gbnVsbCkge1xuICAvLyAxLiBBc3NlcnQ6IGZldGNoUGFyYW1zIGlzIGNhbmNlbGVkLlxuICBhc3NlcnQoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKVxuXG4gIC8vIDIuIFJldHVybiBhbiBhYm9ydGVkIG5ldHdvcmsgZXJyb3IgaWYgZmV0Y2hQYXJhbXMgaXMgYWJvcnRlZDtcbiAgLy8gb3RoZXJ3aXNlIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gIHJldHVybiBpc0Fib3J0ZWQoZmV0Y2hQYXJhbXMpXG4gICAgPyBtYWtlTmV0d29ya0Vycm9yKE9iamVjdC5hc3NpZ24obmV3IERPTUV4Y2VwdGlvbignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZC4nLCAnQWJvcnRFcnJvcicpLCB7IGNhdXNlOiBlcnIgfSkpXG4gICAgOiBtYWtlTmV0d29ya0Vycm9yKE9iamVjdC5hc3NpZ24obmV3IERPTUV4Y2VwdGlvbignUmVxdWVzdCB3YXMgY2FuY2VsbGVkLicpLCB7IGNhdXNlOiBlcnIgfSkpXG59XG5cbi8vIGh0dHBzOi8vd2hhdHByLm9yZy9mZXRjaC8xMzkyLmh0bWwjaW5pdGlhbGl6ZS1hLXJlc3BvbnNlXG5mdW5jdGlvbiBpbml0aWFsaXplUmVzcG9uc2UgKHJlc3BvbnNlLCBpbml0LCBib2R5KSB7XG4gIC8vIDEuIElmIGluaXRbXCJzdGF0dXNcIl0gaXMgbm90IGluIHRoZSByYW5nZSAyMDAgdG8gNTk5LCBpbmNsdXNpdmUsIHRoZW5cbiAgLy8gICAgdGhyb3cgYSBSYW5nZUVycm9yLlxuICBpZiAoaW5pdC5zdGF0dXMgIT09IG51bGwgJiYgKGluaXQuc3RhdHVzIDwgMjAwIHx8IGluaXQuc3RhdHVzID4gNTk5KSkge1xuICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdpbml0W1wic3RhdHVzXCJdIG11c3QgYmUgaW4gdGhlIHJhbmdlIG9mIDIwMCB0byA1OTksIGluY2x1c2l2ZS4nKVxuICB9XG5cbiAgLy8gMi4gSWYgaW5pdFtcInN0YXR1c1RleHRcIl0gZG9lcyBub3QgbWF0Y2ggdGhlIHJlYXNvbi1waHJhc2UgdG9rZW4gcHJvZHVjdGlvbixcbiAgLy8gICAgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKCdzdGF0dXNUZXh0JyBpbiBpbml0ICYmIGluaXQuc3RhdHVzVGV4dCAhPSBudWxsKSB7XG4gICAgLy8gU2VlLCBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzcyMzAjc2VjdGlvbi0zLjEuMjpcbiAgICAvLyAgIHJlYXNvbi1waHJhc2UgID0gKiggSFRBQiAvIFNQIC8gVkNIQVIgLyBvYnMtdGV4dCApXG4gICAgaWYgKCFpc1ZhbGlkUmVhc29uUGhyYXNlKFN0cmluZyhpbml0LnN0YXR1c1RleHQpKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBzdGF0dXNUZXh0JylcbiAgICB9XG4gIH1cblxuICAvLyAzLiBTZXQgcmVzcG9uc2VcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgdG8gaW5pdFtcInN0YXR1c1wiXS5cbiAgaWYgKCdzdGF0dXMnIGluIGluaXQgJiYgaW5pdC5zdGF0dXMgIT0gbnVsbCkge1xuICAgIHJlc3BvbnNlW2tTdGF0ZV0uc3RhdHVzID0gaW5pdC5zdGF0dXNcbiAgfVxuXG4gIC8vIDQuIFNldCByZXNwb25zZVx1MjAxOXMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBtZXNzYWdlIHRvIGluaXRbXCJzdGF0dXNUZXh0XCJdLlxuICBpZiAoJ3N0YXR1c1RleHQnIGluIGluaXQgJiYgaW5pdC5zdGF0dXNUZXh0ICE9IG51bGwpIHtcbiAgICByZXNwb25zZVtrU3RhdGVdLnN0YXR1c1RleHQgPSBpbml0LnN0YXR1c1RleHRcbiAgfVxuXG4gIC8vIDUuIElmIGluaXRbXCJoZWFkZXJzXCJdIGV4aXN0cywgdGhlbiBmaWxsIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXJzIHdpdGggaW5pdFtcImhlYWRlcnNcIl0uXG4gIGlmICgnaGVhZGVycycgaW4gaW5pdCAmJiBpbml0LmhlYWRlcnMgIT0gbnVsbCkge1xuICAgIGZpbGwocmVzcG9uc2Vba0hlYWRlcnNdLCBpbml0LmhlYWRlcnMpXG4gIH1cblxuICAvLyA2LiBJZiBib2R5IHdhcyBnaXZlbiwgdGhlbjpcbiAgaWYgKGJvZHkpIHtcbiAgICAvLyAxLiBJZiByZXNwb25zZSdzIHN0YXR1cyBpcyBhIG51bGwgYm9keSBzdGF0dXMsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKG51bGxCb2R5U3RhdHVzLmluY2x1ZGVzKHJlc3BvbnNlLnN0YXR1cykpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgaGVhZGVyOiAnUmVzcG9uc2UgY29uc3RydWN0b3InLFxuICAgICAgICBtZXNzYWdlOiAnSW52YWxpZCByZXNwb25zZSBzdGF0dXMgY29kZSAnICsgcmVzcG9uc2Uuc3RhdHVzXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIDIuIFNldCByZXNwb25zZSdzIGJvZHkgdG8gYm9keSdzIGJvZHkuXG4gICAgcmVzcG9uc2Vba1N0YXRlXS5ib2R5ID0gYm9keS5ib2R5XG5cbiAgICAvLyAzLiBJZiBib2R5J3MgdHlwZSBpcyBub24tbnVsbCBhbmQgcmVzcG9uc2UncyBoZWFkZXIgbGlzdCBkb2VzIG5vdCBjb250YWluXG4gICAgLy8gICAgYENvbnRlbnQtVHlwZWAsIHRoZW4gYXBwZW5kIChgQ29udGVudC1UeXBlYCwgYm9keSdzIHR5cGUpIHRvIHJlc3BvbnNlJ3MgaGVhZGVyIGxpc3QuXG4gICAgaWYgKGJvZHkudHlwZSAhPSBudWxsICYmICFyZXNwb25zZVtrU3RhdGVdLmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdDb250ZW50LVR5cGUnKSkge1xuICAgICAgcmVzcG9uc2Vba1N0YXRlXS5oZWFkZXJzTGlzdC5hcHBlbmQoJ2NvbnRlbnQtdHlwZScsIGJvZHkudHlwZSlcbiAgICB9XG4gIH1cbn1cblxud2ViaWRsLmNvbnZlcnRlcnMuUmVhZGFibGVTdHJlYW0gPSB3ZWJpZGwuaW50ZXJmYWNlQ29udmVydGVyKFxuICBSZWFkYWJsZVN0cmVhbVxuKVxuXG53ZWJpZGwuY29udmVydGVycy5Gb3JtRGF0YSA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIEZvcm1EYXRhXG4pXG5cbndlYmlkbC5jb252ZXJ0ZXJzLlVSTFNlYXJjaFBhcmFtcyA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIFVSTFNlYXJjaFBhcmFtc1xuKVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jdHlwZWRlZmRlZi14bWxodHRwcmVxdWVzdGJvZHlpbml0XG53ZWJpZGwuY29udmVydGVycy5YTUxIdHRwUmVxdWVzdEJvZHlJbml0ID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHR5cGVvZiBWID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcoVilcbiAgfVxuXG4gIGlmIChpc0Jsb2JMaWtlKFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2IoViwgeyBzdHJpY3Q6IGZhbHNlIH0pXG4gIH1cblxuICBpZiAodHlwZXMuaXNBcnJheUJ1ZmZlcihWKSB8fCB0eXBlcy5pc1R5cGVkQXJyYXkoVikgfHwgdHlwZXMuaXNEYXRhVmlldyhWKSkge1xuICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5CdWZmZXJTb3VyY2UoVilcbiAgfVxuXG4gIGlmICh1dGlsLmlzRm9ybURhdGFMaWtlKFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkZvcm1EYXRhKFYsIHsgc3RyaWN0OiBmYWxzZSB9KVxuICB9XG5cbiAgaWYgKFYgaW5zdGFuY2VvZiBVUkxTZWFyY2hQYXJhbXMpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuVVJMU2VhcmNoUGFyYW1zKFYpXG4gIH1cblxuICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKFYpXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNib2R5aW5pdFxud2ViaWRsLmNvbnZlcnRlcnMuQm9keUluaXQgPSBmdW5jdGlvbiAoVikge1xuICBpZiAoViBpbnN0YW5jZW9mIFJlYWRhYmxlU3RyZWFtKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlJlYWRhYmxlU3RyZWFtKFYpXG4gIH1cblxuICAvLyBOb3RlOiB0aGUgc3BlYyBkb2Vzbid0IGluY2x1ZGUgYXN5bmMgaXRlcmFibGVzLFxuICAvLyB0aGlzIGlzIGFuIHVuZGljaSBleHRlbnNpb24uXG4gIGlmIChWPy5bU3ltYm9sLmFzeW5jSXRlcmF0b3JdKSB7XG4gICAgcmV0dXJuIFZcbiAgfVxuXG4gIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5YTUxIdHRwUmVxdWVzdEJvZHlJbml0KFYpXG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzLlJlc3BvbnNlSW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAge1xuICAgIGtleTogJ3N0YXR1cycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgc2hvcnQnXSxcbiAgICBkZWZhdWx0VmFsdWU6IDIwMFxuICB9LFxuICB7XG4gICAga2V5OiAnc3RhdHVzVGV4dCcsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nLFxuICAgIGRlZmF1bHRWYWx1ZTogJydcbiAgfSxcbiAge1xuICAgIGtleTogJ2hlYWRlcnMnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuSGVhZGVyc0luaXRcbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ha2VOZXR3b3JrRXJyb3IsXG4gIG1ha2VSZXNwb25zZSxcbiAgbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yLFxuICBmaWx0ZXJSZXNwb25zZSxcbiAgUmVzcG9uc2UsXG4gIGNsb25lUmVzcG9uc2Vcbn1cbiIsICIvKiBnbG9iYWxzIEFib3J0Q29udHJvbGxlciAqL1xuXG4ndXNlIHN0cmljdCdcblxuY29uc3QgeyBleHRyYWN0Qm9keSwgbWl4aW5Cb2R5LCBjbG9uZUJvZHkgfSA9IHJlcXVpcmUoJy4vYm9keScpXG5jb25zdCB7IEhlYWRlcnMsIGZpbGw6IGZpbGxIZWFkZXJzLCBIZWFkZXJzTGlzdCB9ID0gcmVxdWlyZSgnLi9oZWFkZXJzJylcbmNvbnN0IHsgRmluYWxpemF0aW9uUmVnaXN0cnkgfSA9IHJlcXVpcmUoJy4uL2NvbXBhdC9kaXNwYXRjaGVyLXdlYWtyZWYnKSgpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHtcbiAgaXNWYWxpZEhUVFBUb2tlbixcbiAgc2FtZU9yaWdpbixcbiAgbm9ybWFsaXplTWV0aG9kLFxuICBtYWtlUG9saWN5Q29udGFpbmVyLFxuICBub3JtYWxpemVNZXRob2RSZWNvcmRcbn0gPSByZXF1aXJlKCcuL3V0aWwnKVxuY29uc3Qge1xuICBmb3JiaWRkZW5NZXRob2RzU2V0LFxuICBjb3JzU2FmZUxpc3RlZE1ldGhvZHNTZXQsXG4gIHJlZmVycmVyUG9saWN5LFxuICByZXF1ZXN0UmVkaXJlY3QsXG4gIHJlcXVlc3RNb2RlLFxuICByZXF1ZXN0Q3JlZGVudGlhbHMsXG4gIHJlcXVlc3RDYWNoZSxcbiAgcmVxdWVzdER1cGxleFxufSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gdXRpbFxuY29uc3QgeyBrSGVhZGVycywga1NpZ25hbCwga1N0YXRlLCBrR3VhcmQsIGtSZWFsbSB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuL3dlYmlkbCcpXG5jb25zdCB7IGdldEdsb2JhbE9yaWdpbiB9ID0gcmVxdWlyZSgnLi9nbG9iYWwnKVxuY29uc3QgeyBVUkxTZXJpYWxpemVyIH0gPSByZXF1aXJlKCcuL2RhdGFVUkwnKVxuY29uc3QgeyBrSGVhZGVyc0xpc3QsIGtDb25zdHJ1Y3QgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBnZXRNYXhMaXN0ZW5lcnMsIHNldE1heExpc3RlbmVycywgZ2V0RXZlbnRMaXN0ZW5lcnMsIGRlZmF1bHRNYXhMaXN0ZW5lcnMgfSA9IHJlcXVpcmUoJ2V2ZW50cycpXG5cbmxldCBUcmFuc2Zvcm1TdHJlYW0gPSBnbG9iYWxUaGlzLlRyYW5zZm9ybVN0cmVhbVxuXG5jb25zdCBrQWJvcnRDb250cm9sbGVyID0gU3ltYm9sKCdhYm9ydENvbnRyb2xsZXInKVxuXG5jb25zdCByZXF1ZXN0RmluYWxpemVyID0gbmV3IEZpbmFsaXphdGlvblJlZ2lzdHJ5KCh7IHNpZ25hbCwgYWJvcnQgfSkgPT4ge1xuICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBhYm9ydClcbn0pXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0LWNsYXNzXG5jbGFzcyBSZXF1ZXN0IHtcbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1yZXF1ZXN0XG4gIGNvbnN0cnVjdG9yIChpbnB1dCwgaW5pdCA9IHt9KSB7XG4gICAgaWYgKGlucHV0ID09PSBrQ29uc3RydWN0KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnUmVxdWVzdCBjb25zdHJ1Y3RvcicgfSlcblxuICAgIGlucHV0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluZm8oaW5wdXQpXG4gICAgaW5pdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbml0KGluaXQpXG5cbiAgICAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjZW52aXJvbm1lbnQtc2V0dGluZ3Mtb2JqZWN0XG4gICAgdGhpc1trUmVhbG1dID0ge1xuICAgICAgc2V0dGluZ3NPYmplY3Q6IHtcbiAgICAgICAgYmFzZVVybDogZ2V0R2xvYmFsT3JpZ2luKCksXG4gICAgICAgIGdldCBvcmlnaW4gKCkge1xuICAgICAgICAgIHJldHVybiB0aGlzLmJhc2VVcmw/Lm9yaWdpblxuICAgICAgICB9LFxuICAgICAgICBwb2xpY3lDb250YWluZXI6IG1ha2VQb2xpY3lDb250YWluZXIoKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDEuIExldCByZXF1ZXN0IGJlIG51bGwuXG4gICAgbGV0IHJlcXVlc3QgPSBudWxsXG5cbiAgICAvLyAyLiBMZXQgZmFsbGJhY2tNb2RlIGJlIG51bGwuXG4gICAgbGV0IGZhbGxiYWNrTW9kZSA9IG51bGxcblxuICAgIC8vIDMuIExldCBiYXNlVVJMIGJlIHRoaXNcdTIwMTlzIHJlbGV2YW50IHNldHRpbmdzIG9iamVjdFx1MjAxOXMgQVBJIGJhc2UgVVJMLlxuICAgIGNvbnN0IGJhc2VVcmwgPSB0aGlzW2tSZWFsbV0uc2V0dGluZ3NPYmplY3QuYmFzZVVybFxuXG4gICAgLy8gNC4gTGV0IHNpZ25hbCBiZSBudWxsLlxuICAgIGxldCBzaWduYWwgPSBudWxsXG5cbiAgICAvLyA1LiBJZiBpbnB1dCBpcyBhIHN0cmluZywgdGhlbjpcbiAgICBpZiAodHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gMS4gTGV0IHBhcnNlZFVSTCBiZSB0aGUgcmVzdWx0IG9mIHBhcnNpbmcgaW5wdXQgd2l0aCBiYXNlVVJMLlxuICAgICAgLy8gMi4gSWYgcGFyc2VkVVJMIGlzIGZhaWx1cmUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBsZXQgcGFyc2VkVVJMXG4gICAgICB0cnkge1xuICAgICAgICBwYXJzZWRVUkwgPSBuZXcgVVJMKGlucHV0LCBiYXNlVXJsKVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ZhaWxlZCB0byBwYXJzZSBVUkwgZnJvbSAnICsgaW5wdXQsIHsgY2F1c2U6IGVyciB9KVxuICAgICAgfVxuXG4gICAgICAvLyAzLiBJZiBwYXJzZWRVUkwgaW5jbHVkZXMgY3JlZGVudGlhbHMsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAocGFyc2VkVVJMLnVzZXJuYW1lIHx8IHBhcnNlZFVSTC5wYXNzd29yZCkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgICdSZXF1ZXN0IGNhbm5vdCBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgVVJMIHRoYXQgaW5jbHVkZXMgY3JlZGVudGlhbHM6ICcgK1xuICAgICAgICAgICAgaW5wdXRcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICAvLyA0LiBTZXQgcmVxdWVzdCB0byBhIG5ldyByZXF1ZXN0IHdob3NlIFVSTCBpcyBwYXJzZWRVUkwuXG4gICAgICByZXF1ZXN0ID0gbWFrZVJlcXVlc3QoeyB1cmxMaXN0OiBbcGFyc2VkVVJMXSB9KVxuXG4gICAgICAvLyA1LiBTZXQgZmFsbGJhY2tNb2RlIHRvIFwiY29yc1wiLlxuICAgICAgZmFsbGJhY2tNb2RlID0gJ2NvcnMnXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDYuIE90aGVyd2lzZTpcblxuICAgICAgLy8gNy4gQXNzZXJ0OiBpbnB1dCBpcyBhIFJlcXVlc3Qgb2JqZWN0LlxuICAgICAgYXNzZXJ0KGlucHV0IGluc3RhbmNlb2YgUmVxdWVzdClcblxuICAgICAgLy8gOC4gU2V0IHJlcXVlc3QgdG8gaW5wdXRcdTIwMTlzIHJlcXVlc3QuXG4gICAgICByZXF1ZXN0ID0gaW5wdXRba1N0YXRlXVxuXG4gICAgICAvLyA5LiBTZXQgc2lnbmFsIHRvIGlucHV0XHUyMDE5cyBzaWduYWwuXG4gICAgICBzaWduYWwgPSBpbnB1dFtrU2lnbmFsXVxuICAgIH1cblxuICAgIC8vIDcuIExldCBvcmlnaW4gYmUgdGhpc1x1MjAxOXMgcmVsZXZhbnQgc2V0dGluZ3Mgb2JqZWN0XHUyMDE5cyBvcmlnaW4uXG4gICAgY29uc3Qgb3JpZ2luID0gdGhpc1trUmVhbG1dLnNldHRpbmdzT2JqZWN0Lm9yaWdpblxuXG4gICAgLy8gOC4gTGV0IHdpbmRvdyBiZSBcImNsaWVudFwiLlxuICAgIGxldCB3aW5kb3cgPSAnY2xpZW50J1xuXG4gICAgLy8gOS4gSWYgcmVxdWVzdFx1MjAxOXMgd2luZG93IGlzIGFuIGVudmlyb25tZW50IHNldHRpbmdzIG9iamVjdCBhbmQgaXRzIG9yaWdpblxuICAgIC8vIGlzIHNhbWUgb3JpZ2luIHdpdGggb3JpZ2luLCB0aGVuIHNldCB3aW5kb3cgdG8gcmVxdWVzdFx1MjAxOXMgd2luZG93LlxuICAgIGlmIChcbiAgICAgIHJlcXVlc3Qud2luZG93Py5jb25zdHJ1Y3Rvcj8ubmFtZSA9PT0gJ0Vudmlyb25tZW50U2V0dGluZ3NPYmplY3QnICYmXG4gICAgICBzYW1lT3JpZ2luKHJlcXVlc3Qud2luZG93LCBvcmlnaW4pXG4gICAgKSB7XG4gICAgICB3aW5kb3cgPSByZXF1ZXN0LndpbmRvd1xuICAgIH1cblxuICAgIC8vIDEwLiBJZiBpbml0W1wid2luZG93XCJdIGV4aXN0cyBhbmQgaXMgbm9uLW51bGwsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKGluaXQud2luZG93ICE9IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCd3aW5kb3cnIG9wdGlvbiAnJHt3aW5kb3d9JyBtdXN0IGJlIG51bGxgKVxuICAgIH1cblxuICAgIC8vIDExLiBJZiBpbml0W1wid2luZG93XCJdIGV4aXN0cywgdGhlbiBzZXQgd2luZG93IHRvIFwibm8td2luZG93XCIuXG4gICAgaWYgKCd3aW5kb3cnIGluIGluaXQpIHtcbiAgICAgIHdpbmRvdyA9ICduby13aW5kb3cnXG4gICAgfVxuXG4gICAgLy8gMTIuIFNldCByZXF1ZXN0IHRvIGEgbmV3IHJlcXVlc3Qgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6XG4gICAgcmVxdWVzdCA9IG1ha2VSZXF1ZXN0KHtcbiAgICAgIC8vIFVSTCByZXF1ZXN0XHUyMDE5cyBVUkwuXG4gICAgICAvLyB1bmRpY2kgaW1wbGVtZW50YXRpb24gbm90ZTogdGhpcyBpcyBzZXQgYXMgdGhlIGZpcnN0IGl0ZW0gaW4gcmVxdWVzdCdzIHVybExpc3QgaW4gbWFrZVJlcXVlc3RcbiAgICAgIC8vIG1ldGhvZCByZXF1ZXN0XHUyMDE5cyBtZXRob2QuXG4gICAgICBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgLy8gaGVhZGVyIGxpc3QgQSBjb3B5IG9mIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgICAgLy8gdW5kaWNpIGltcGxlbWVudGF0aW9uIG5vdGU6IGhlYWRlcnNMaXN0IGlzIGNsb25lZCBpbiBtYWtlUmVxdWVzdFxuICAgICAgaGVhZGVyc0xpc3Q6IHJlcXVlc3QuaGVhZGVyc0xpc3QsXG4gICAgICAvLyB1bnNhZmUtcmVxdWVzdCBmbGFnIFNldC5cbiAgICAgIHVuc2FmZVJlcXVlc3Q6IHJlcXVlc3QudW5zYWZlUmVxdWVzdCxcbiAgICAgIC8vIGNsaWVudCBUaGlzXHUyMDE5cyByZWxldmFudCBzZXR0aW5ncyBvYmplY3QuXG4gICAgICBjbGllbnQ6IHRoaXNba1JlYWxtXS5zZXR0aW5nc09iamVjdCxcbiAgICAgIC8vIHdpbmRvdyB3aW5kb3cuXG4gICAgICB3aW5kb3csXG4gICAgICAvLyBwcmlvcml0eSByZXF1ZXN0XHUyMDE5cyBwcmlvcml0eS5cbiAgICAgIHByaW9yaXR5OiByZXF1ZXN0LnByaW9yaXR5LFxuICAgICAgLy8gb3JpZ2luIHJlcXVlc3RcdTIwMTlzIG9yaWdpbi4gVGhlIHByb3BhZ2F0aW9uIG9mIHRoZSBvcmlnaW4gaXMgb25seSBzaWduaWZpY2FudCBmb3IgbmF2aWdhdGlvbiByZXF1ZXN0c1xuICAgICAgLy8gYmVpbmcgaGFuZGxlZCBieSBhIHNlcnZpY2Ugd29ya2VyLiBJbiB0aGlzIHNjZW5hcmlvIGEgcmVxdWVzdCBjYW4gaGF2ZSBhbiBvcmlnaW4gdGhhdCBpcyBkaWZmZXJlbnRcbiAgICAgIC8vIGZyb20gdGhlIGN1cnJlbnQgY2xpZW50LlxuICAgICAgb3JpZ2luOiByZXF1ZXN0Lm9yaWdpbixcbiAgICAgIC8vIHJlZmVycmVyIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyLlxuICAgICAgcmVmZXJyZXI6IHJlcXVlc3QucmVmZXJyZXIsXG4gICAgICAvLyByZWZlcnJlciBwb2xpY3kgcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgcG9saWN5LlxuICAgICAgcmVmZXJyZXJQb2xpY3k6IHJlcXVlc3QucmVmZXJyZXJQb2xpY3ksXG4gICAgICAvLyBtb2RlIHJlcXVlc3RcdTIwMTlzIG1vZGUuXG4gICAgICBtb2RlOiByZXF1ZXN0Lm1vZGUsXG4gICAgICAvLyBjcmVkZW50aWFscyBtb2RlIHJlcXVlc3RcdTIwMTlzIGNyZWRlbnRpYWxzIG1vZGUuXG4gICAgICBjcmVkZW50aWFsczogcmVxdWVzdC5jcmVkZW50aWFscyxcbiAgICAgIC8vIGNhY2hlIG1vZGUgcmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZS5cbiAgICAgIGNhY2hlOiByZXF1ZXN0LmNhY2hlLFxuICAgICAgLy8gcmVkaXJlY3QgbW9kZSByZXF1ZXN0XHUyMDE5cyByZWRpcmVjdCBtb2RlLlxuICAgICAgcmVkaXJlY3Q6IHJlcXVlc3QucmVkaXJlY3QsXG4gICAgICAvLyBpbnRlZ3JpdHkgbWV0YWRhdGEgcmVxdWVzdFx1MjAxOXMgaW50ZWdyaXR5IG1ldGFkYXRhLlxuICAgICAgaW50ZWdyaXR5OiByZXF1ZXN0LmludGVncml0eSxcbiAgICAgIC8vIGtlZXBhbGl2ZSByZXF1ZXN0XHUyMDE5cyBrZWVwYWxpdmUuXG4gICAgICBrZWVwYWxpdmU6IHJlcXVlc3Qua2VlcGFsaXZlLFxuICAgICAgLy8gcmVsb2FkLW5hdmlnYXRpb24gZmxhZyByZXF1ZXN0XHUyMDE5cyByZWxvYWQtbmF2aWdhdGlvbiBmbGFnLlxuICAgICAgcmVsb2FkTmF2aWdhdGlvbjogcmVxdWVzdC5yZWxvYWROYXZpZ2F0aW9uLFxuICAgICAgLy8gaGlzdG9yeS1uYXZpZ2F0aW9uIGZsYWcgcmVxdWVzdFx1MjAxOXMgaGlzdG9yeS1uYXZpZ2F0aW9uIGZsYWcuXG4gICAgICBoaXN0b3J5TmF2aWdhdGlvbjogcmVxdWVzdC5oaXN0b3J5TmF2aWdhdGlvbixcbiAgICAgIC8vIFVSTCBsaXN0IEEgY2xvbmUgb2YgcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3QuXG4gICAgICB1cmxMaXN0OiBbLi4ucmVxdWVzdC51cmxMaXN0XVxuICAgIH0pXG5cbiAgICBjb25zdCBpbml0SGFzS2V5ID0gT2JqZWN0LmtleXMoaW5pdCkubGVuZ3RoICE9PSAwXG5cbiAgICAvLyAxMy4gSWYgaW5pdCBpcyBub3QgZW1wdHksIHRoZW46XG4gICAgaWYgKGluaXRIYXNLZXkpIHtcbiAgICAgIC8vIDEuIElmIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJuYXZpZ2F0ZVwiLCB0aGVuIHNldCBpdCB0byBcInNhbWUtb3JpZ2luXCIuXG4gICAgICBpZiAocmVxdWVzdC5tb2RlID09PSAnbmF2aWdhdGUnKSB7XG4gICAgICAgIHJlcXVlc3QubW9kZSA9ICdzYW1lLW9yaWdpbidcbiAgICAgIH1cblxuICAgICAgLy8gMi4gVW5zZXQgcmVxdWVzdFx1MjAxOXMgcmVsb2FkLW5hdmlnYXRpb24gZmxhZy5cbiAgICAgIHJlcXVlc3QucmVsb2FkTmF2aWdhdGlvbiA9IGZhbHNlXG5cbiAgICAgIC8vIDMuIFVuc2V0IHJlcXVlc3RcdTIwMTlzIGhpc3RvcnktbmF2aWdhdGlvbiBmbGFnLlxuICAgICAgcmVxdWVzdC5oaXN0b3J5TmF2aWdhdGlvbiA9IGZhbHNlXG5cbiAgICAgIC8vIDQuIFNldCByZXF1ZXN0XHUyMDE5cyBvcmlnaW4gdG8gXCJjbGllbnRcIi5cbiAgICAgIHJlcXVlc3Qub3JpZ2luID0gJ2NsaWVudCdcblxuICAgICAgLy8gNS4gU2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHRvIFwiY2xpZW50XCJcbiAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSAnY2xpZW50J1xuXG4gICAgICAvLyA2LiBTZXQgcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgcG9saWN5IHRvIHRoZSBlbXB0eSBzdHJpbmcuXG4gICAgICByZXF1ZXN0LnJlZmVycmVyUG9saWN5ID0gJydcblxuICAgICAgLy8gNy4gU2V0IHJlcXVlc3RcdTIwMTlzIFVSTCB0byByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTC5cbiAgICAgIHJlcXVlc3QudXJsID0gcmVxdWVzdC51cmxMaXN0W3JlcXVlc3QudXJsTGlzdC5sZW5ndGggLSAxXVxuXG4gICAgICAvLyA4LiBTZXQgcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3QgdG8gXHUwMEFCIHJlcXVlc3RcdTIwMTlzIFVSTCBcdTAwQkIuXG4gICAgICByZXF1ZXN0LnVybExpc3QgPSBbcmVxdWVzdC51cmxdXG4gICAgfVxuXG4gICAgLy8gMTQuIElmIGluaXRbXCJyZWZlcnJlclwiXSBleGlzdHMsIHRoZW46XG4gICAgaWYgKGluaXQucmVmZXJyZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gMS4gTGV0IHJlZmVycmVyIGJlIGluaXRbXCJyZWZlcnJlclwiXS5cbiAgICAgIGNvbnN0IHJlZmVycmVyID0gaW5pdC5yZWZlcnJlclxuXG4gICAgICAvLyAyLiBJZiByZWZlcnJlciBpcyB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyByZWZlcnJlciB0byBcIm5vLXJlZmVycmVyXCIuXG4gICAgICBpZiAocmVmZXJyZXIgPT09ICcnKSB7XG4gICAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSAnbm8tcmVmZXJyZXInXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyAxLiBMZXQgcGFyc2VkUmVmZXJyZXIgYmUgdGhlIHJlc3VsdCBvZiBwYXJzaW5nIHJlZmVycmVyIHdpdGhcbiAgICAgICAgLy8gYmFzZVVSTC5cbiAgICAgICAgLy8gMi4gSWYgcGFyc2VkUmVmZXJyZXIgaXMgZmFpbHVyZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAgICAgbGV0IHBhcnNlZFJlZmVycmVyXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgcGFyc2VkUmVmZXJyZXIgPSBuZXcgVVJMKHJlZmVycmVyLCBiYXNlVXJsKVxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBSZWZlcnJlciBcIiR7cmVmZXJyZXJ9XCIgaXMgbm90IGEgdmFsaWQgVVJMLmAsIHsgY2F1c2U6IGVyciB9KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMy4gSWYgb25lIG9mIHRoZSBmb2xsb3dpbmcgaXMgdHJ1ZVxuICAgICAgICAvLyAtIHBhcnNlZFJlZmVycmVyXHUyMDE5cyBzY2hlbWUgaXMgXCJhYm91dFwiIGFuZCBwYXRoIGlzIHRoZSBzdHJpbmcgXCJjbGllbnRcIlxuICAgICAgICAvLyAtIHBhcnNlZFJlZmVycmVyXHUyMDE5cyBvcmlnaW4gaXMgbm90IHNhbWUgb3JpZ2luIHdpdGggb3JpZ2luXG4gICAgICAgIC8vIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHRvIFwiY2xpZW50XCIuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAocGFyc2VkUmVmZXJyZXIucHJvdG9jb2wgPT09ICdhYm91dDonICYmIHBhcnNlZFJlZmVycmVyLmhvc3RuYW1lID09PSAnY2xpZW50JykgfHxcbiAgICAgICAgICAob3JpZ2luICYmICFzYW1lT3JpZ2luKHBhcnNlZFJlZmVycmVyLCB0aGlzW2tSZWFsbV0uc2V0dGluZ3NPYmplY3QuYmFzZVVybCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSAnY2xpZW50J1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIDQuIE90aGVyd2lzZSwgc2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHRvIHBhcnNlZFJlZmVycmVyLlxuICAgICAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSBwYXJzZWRSZWZlcnJlclxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gMTUuIElmIGluaXRbXCJyZWZlcnJlclBvbGljeVwiXSBleGlzdHMsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeVxuICAgIC8vIHRvIGl0LlxuICAgIGlmIChpbml0LnJlZmVycmVyUG9saWN5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlcXVlc3QucmVmZXJyZXJQb2xpY3kgPSBpbml0LnJlZmVycmVyUG9saWN5XG4gICAgfVxuXG4gICAgLy8gMTYuIExldCBtb2RlIGJlIGluaXRbXCJtb2RlXCJdIGlmIGl0IGV4aXN0cywgYW5kIGZhbGxiYWNrTW9kZSBvdGhlcndpc2UuXG4gICAgbGV0IG1vZGVcbiAgICBpZiAoaW5pdC5tb2RlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG1vZGUgPSBpbml0Lm1vZGVcbiAgICB9IGVsc2Uge1xuICAgICAgbW9kZSA9IGZhbGxiYWNrTW9kZVxuICAgIH1cblxuICAgIC8vIDE3LiBJZiBtb2RlIGlzIFwibmF2aWdhdGVcIiwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAobW9kZSA9PT0gJ25hdmlnYXRlJykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdSZXF1ZXN0IGNvbnN0cnVjdG9yJyxcbiAgICAgICAgbWVzc2FnZTogJ2ludmFsaWQgcmVxdWVzdCBtb2RlIG5hdmlnYXRlLidcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMTguIElmIG1vZGUgaXMgbm9uLW51bGwsIHNldCByZXF1ZXN0XHUyMDE5cyBtb2RlIHRvIG1vZGUuXG4gICAgaWYgKG1vZGUgIT0gbnVsbCkge1xuICAgICAgcmVxdWVzdC5tb2RlID0gbW9kZVxuICAgIH1cblxuICAgIC8vIDE5LiBJZiBpbml0W1wiY3JlZGVudGlhbHNcIl0gZXhpc3RzLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyBjcmVkZW50aWFscyBtb2RlXG4gICAgLy8gdG8gaXQuXG4gICAgaWYgKGluaXQuY3JlZGVudGlhbHMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdC5jcmVkZW50aWFscyA9IGluaXQuY3JlZGVudGlhbHNcbiAgICB9XG5cbiAgICAvLyAxOC4gSWYgaW5pdFtcImNhY2hlXCJdIGV4aXN0cywgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSB0byBpdC5cbiAgICBpZiAoaW5pdC5jYWNoZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXF1ZXN0LmNhY2hlID0gaW5pdC5jYWNoZVxuICAgIH1cblxuICAgIC8vIDIxLiBJZiByZXF1ZXN0XHUyMDE5cyBjYWNoZSBtb2RlIGlzIFwib25seS1pZi1jYWNoZWRcIiBhbmQgcmVxdWVzdFx1MjAxOXMgbW9kZSBpc1xuICAgIC8vIG5vdCBcInNhbWUtb3JpZ2luXCIsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKHJlcXVlc3QuY2FjaGUgPT09ICdvbmx5LWlmLWNhY2hlZCcgJiYgcmVxdWVzdC5tb2RlICE9PSAnc2FtZS1vcmlnaW4nKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICBcIidvbmx5LWlmLWNhY2hlZCcgY2FuIGJlIHNldCBvbmx5IHdpdGggJ3NhbWUtb3JpZ2luJyBtb2RlXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyAyMi4gSWYgaW5pdFtcInJlZGlyZWN0XCJdIGV4aXN0cywgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgbW9kZSB0byBpdC5cbiAgICBpZiAoaW5pdC5yZWRpcmVjdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXF1ZXN0LnJlZGlyZWN0ID0gaW5pdC5yZWRpcmVjdFxuICAgIH1cblxuICAgIC8vIDIzLiBJZiBpbml0W1wiaW50ZWdyaXR5XCJdIGV4aXN0cywgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgaW50ZWdyaXR5IG1ldGFkYXRhIHRvIGl0LlxuICAgIGlmIChpbml0LmludGVncml0eSAhPSBudWxsKSB7XG4gICAgICByZXF1ZXN0LmludGVncml0eSA9IFN0cmluZyhpbml0LmludGVncml0eSlcbiAgICB9XG5cbiAgICAvLyAyNC4gSWYgaW5pdFtcImtlZXBhbGl2ZVwiXSBleGlzdHMsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIGtlZXBhbGl2ZSB0byBpdC5cbiAgICBpZiAoaW5pdC5rZWVwYWxpdmUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdC5rZWVwYWxpdmUgPSBCb29sZWFuKGluaXQua2VlcGFsaXZlKVxuICAgIH1cblxuICAgIC8vIDI1LiBJZiBpbml0W1wibWV0aG9kXCJdIGV4aXN0cywgdGhlbjpcbiAgICBpZiAoaW5pdC5tZXRob2QgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gMS4gTGV0IG1ldGhvZCBiZSBpbml0W1wibWV0aG9kXCJdLlxuICAgICAgbGV0IG1ldGhvZCA9IGluaXQubWV0aG9kXG5cbiAgICAgIC8vIDIuIElmIG1ldGhvZCBpcyBub3QgYSBtZXRob2Qgb3IgbWV0aG9kIGlzIGEgZm9yYmlkZGVuIG1ldGhvZCwgdGhlblxuICAgICAgLy8gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAoIWlzVmFsaWRIVFRQVG9rZW4obWV0aG9kKSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGAnJHttZXRob2R9JyBpcyBub3QgYSB2YWxpZCBIVFRQIG1ldGhvZC5gKVxuICAgICAgfVxuXG4gICAgICBpZiAoZm9yYmlkZGVuTWV0aG9kc1NldC5oYXMobWV0aG9kLnRvVXBwZXJDYXNlKCkpKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCcke21ldGhvZH0nIEhUVFAgbWV0aG9kIGlzIHVuc3VwcG9ydGVkLmApXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIE5vcm1hbGl6ZSBtZXRob2QuXG4gICAgICBtZXRob2QgPSBub3JtYWxpemVNZXRob2RSZWNvcmRbbWV0aG9kXSA/PyBub3JtYWxpemVNZXRob2QobWV0aG9kKVxuXG4gICAgICAvLyA0LiBTZXQgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIHRvIG1ldGhvZC5cbiAgICAgIHJlcXVlc3QubWV0aG9kID0gbWV0aG9kXG4gICAgfVxuXG4gICAgLy8gMjYuIElmIGluaXRbXCJzaWduYWxcIl0gZXhpc3RzLCB0aGVuIHNldCBzaWduYWwgdG8gaXQuXG4gICAgaWYgKGluaXQuc2lnbmFsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNpZ25hbCA9IGluaXQuc2lnbmFsXG4gICAgfVxuXG4gICAgLy8gMjcuIFNldCB0aGlzXHUyMDE5cyByZXF1ZXN0IHRvIHJlcXVlc3QuXG4gICAgdGhpc1trU3RhdGVdID0gcmVxdWVzdFxuXG4gICAgLy8gMjguIFNldCB0aGlzXHUyMDE5cyBzaWduYWwgdG8gYSBuZXcgQWJvcnRTaWduYWwgb2JqZWN0IHdpdGggdGhpc1x1MjAxOXMgcmVsZXZhbnRcbiAgICAvLyBSZWFsbS5cbiAgICAvLyBUT0RPOiBjb3VsZCB0aGlzIGJlIHNpbXBsaWZpZWQgd2l0aCBBYm9ydFNpZ25hbC5hbnlcbiAgICAvLyAoaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNkb20tYWJvcnRzaWduYWwtYW55KVxuICAgIGNvbnN0IGFjID0gbmV3IEFib3J0Q29udHJvbGxlcigpXG4gICAgdGhpc1trU2lnbmFsXSA9IGFjLnNpZ25hbFxuICAgIHRoaXNba1NpZ25hbF1ba1JlYWxtXSA9IHRoaXNba1JlYWxtXVxuXG4gICAgLy8gMjkuIElmIHNpZ25hbCBpcyBub3QgbnVsbCwgdGhlbiBtYWtlIHRoaXNcdTIwMTlzIHNpZ25hbCBmb2xsb3cgc2lnbmFsLlxuICAgIGlmIChzaWduYWwgIT0gbnVsbCkge1xuICAgICAgaWYgKFxuICAgICAgICAhc2lnbmFsIHx8XG4gICAgICAgIHR5cGVvZiBzaWduYWwuYWJvcnRlZCAhPT0gJ2Jvb2xlYW4nIHx8XG4gICAgICAgIHR5cGVvZiBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lciAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICAgXCJGYWlsZWQgdG8gY29uc3RydWN0ICdSZXF1ZXN0JzogbWVtYmVyIHNpZ25hbCBpcyBub3Qgb2YgdHlwZSBBYm9ydFNpZ25hbC5cIlxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIGlmIChzaWduYWwuYWJvcnRlZCkge1xuICAgICAgICBhYy5hYm9ydChzaWduYWwucmVhc29uKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gS2VlcCBhIHN0cm9uZyByZWYgdG8gYWMgd2hpbGUgcmVxdWVzdCBvYmplY3RcbiAgICAgICAgLy8gaXMgYWxpdmUuIFRoaXMgaXMgbmVlZGVkIHRvIHByZXZlbnQgQWJvcnRDb250cm9sbGVyXG4gICAgICAgIC8vIGZyb20gYmVpbmcgcHJlbWF0dXJlbHkgZ2FyYmFnZSBjb2xsZWN0ZWQuXG4gICAgICAgIC8vIFNlZSwgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvaXNzdWVzLzE5MjYuXG4gICAgICAgIHRoaXNba0Fib3J0Q29udHJvbGxlcl0gPSBhY1xuXG4gICAgICAgIGNvbnN0IGFjUmVmID0gbmV3IFdlYWtSZWYoYWMpXG4gICAgICAgIGNvbnN0IGFib3J0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGNvbnN0IGFjID0gYWNSZWYuZGVyZWYoKVxuICAgICAgICAgIGlmIChhYyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBhYy5hYm9ydCh0aGlzLnJlYXNvbilcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaGlyZC1wYXJ0eSBBYm9ydENvbnRyb2xsZXJzIG1heSBub3Qgd29yayB3aXRoIHRoZXNlLlxuICAgICAgICAvLyBTZWUsIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL3B1bGwvMTkxMCNpc3N1ZWNvbW1lbnQtMTQ2NDQ5NTYxOS5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAvLyBJZiB0aGUgbWF4IGFtb3VudCBvZiBsaXN0ZW5lcnMgaXMgZXF1YWwgdG8gdGhlIGRlZmF1bHQsIGluY3JlYXNlIGl0XG4gICAgICAgICAgLy8gVGhpcyBpcyBvbmx5IGF2YWlsYWJsZSBpbiBub2RlID49IHYxOS45LjBcbiAgICAgICAgICBpZiAodHlwZW9mIGdldE1heExpc3RlbmVycyA9PT0gJ2Z1bmN0aW9uJyAmJiBnZXRNYXhMaXN0ZW5lcnMoc2lnbmFsKSA9PT0gZGVmYXVsdE1heExpc3RlbmVycykge1xuICAgICAgICAgICAgc2V0TWF4TGlzdGVuZXJzKDEwMCwgc2lnbmFsKVxuICAgICAgICAgIH0gZWxzZSBpZiAoZ2V0RXZlbnRMaXN0ZW5lcnMoc2lnbmFsLCAnYWJvcnQnKS5sZW5ndGggPj0gZGVmYXVsdE1heExpc3RlbmVycykge1xuICAgICAgICAgICAgc2V0TWF4TGlzdGVuZXJzKDEwMCwgc2lnbmFsKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7fVxuXG4gICAgICAgIHV0aWwuYWRkQWJvcnRMaXN0ZW5lcihzaWduYWwsIGFib3J0KVxuICAgICAgICByZXF1ZXN0RmluYWxpemVyLnJlZ2lzdGVyKGFjLCB7IHNpZ25hbCwgYWJvcnQgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAzMC4gU2V0IHRoaXNcdTIwMTlzIGhlYWRlcnMgdG8gYSBuZXcgSGVhZGVycyBvYmplY3Qgd2l0aCB0aGlzXHUyMDE5cyByZWxldmFudFxuICAgIC8vIFJlYWxtLCB3aG9zZSBoZWFkZXIgbGlzdCBpcyByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBhbmQgZ3VhcmQgaXNcbiAgICAvLyBcInJlcXVlc3RcIi5cbiAgICB0aGlzW2tIZWFkZXJzXSA9IG5ldyBIZWFkZXJzKGtDb25zdHJ1Y3QpXG4gICAgdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XSA9IHJlcXVlc3QuaGVhZGVyc0xpc3RcbiAgICB0aGlzW2tIZWFkZXJzXVtrR3VhcmRdID0gJ3JlcXVlc3QnXG4gICAgdGhpc1trSGVhZGVyc11ba1JlYWxtXSA9IHRoaXNba1JlYWxtXVxuXG4gICAgLy8gMzEuIElmIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJuby1jb3JzXCIsIHRoZW46XG4gICAgaWYgKG1vZGUgPT09ICduby1jb3JzJykge1xuICAgICAgLy8gMS4gSWYgdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIGlzIG5vdCBhIENPUlMtc2FmZWxpc3RlZCBtZXRob2QsXG4gICAgICAvLyB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgICAgaWYgKCFjb3JzU2FmZUxpc3RlZE1ldGhvZHNTZXQuaGFzKHJlcXVlc3QubWV0aG9kKSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgIGAnJHtyZXF1ZXN0Lm1ldGhvZH0gaXMgdW5zdXBwb3J0ZWQgaW4gbm8tY29ycyBtb2RlLmBcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICAvLyAyLiBTZXQgdGhpc1x1MjAxOXMgaGVhZGVyc1x1MjAxOXMgZ3VhcmQgdG8gXCJyZXF1ZXN0LW5vLWNvcnNcIi5cbiAgICAgIHRoaXNba0hlYWRlcnNdW2tHdWFyZF0gPSAncmVxdWVzdC1uby1jb3JzJ1xuICAgIH1cblxuICAgIC8vIDMyLiBJZiBpbml0IGlzIG5vdCBlbXB0eSwgdGhlbjpcbiAgICBpZiAoaW5pdEhhc0tleSkge1xuICAgICAgLyoqIEB0eXBlIHtIZWFkZXJzTGlzdH0gKi9cbiAgICAgIGNvbnN0IGhlYWRlcnNMaXN0ID0gdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XVxuICAgICAgLy8gMS4gTGV0IGhlYWRlcnMgYmUgYSBjb3B5IG9mIHRoaXNcdTIwMTlzIGhlYWRlcnMgYW5kIGl0cyBhc3NvY2lhdGVkIGhlYWRlclxuICAgICAgLy8gbGlzdC5cbiAgICAgIC8vIDIuIElmIGluaXRbXCJoZWFkZXJzXCJdIGV4aXN0cywgdGhlbiBzZXQgaGVhZGVycyB0byBpbml0W1wiaGVhZGVyc1wiXS5cbiAgICAgIGNvbnN0IGhlYWRlcnMgPSBpbml0LmhlYWRlcnMgIT09IHVuZGVmaW5lZCA/IGluaXQuaGVhZGVycyA6IG5ldyBIZWFkZXJzTGlzdChoZWFkZXJzTGlzdClcblxuICAgICAgLy8gMy4gRW1wdHkgdGhpc1x1MjAxOXMgaGVhZGVyc1x1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICBoZWFkZXJzTGlzdC5jbGVhcigpXG5cbiAgICAgIC8vIDQuIElmIGhlYWRlcnMgaXMgYSBIZWFkZXJzIG9iamVjdCwgdGhlbiBmb3IgZWFjaCBoZWFkZXIgaW4gaXRzIGhlYWRlclxuICAgICAgLy8gbGlzdCwgYXBwZW5kIGhlYWRlclx1MjAxOXMgbmFtZS9oZWFkZXJcdTIwMTlzIHZhbHVlIHRvIHRoaXNcdTIwMTlzIGhlYWRlcnMuXG4gICAgICBpZiAoaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnNMaXN0KSB7XG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsXSBvZiBoZWFkZXJzKSB7XG4gICAgICAgICAgaGVhZGVyc0xpc3QuYXBwZW5kKGtleSwgdmFsKVxuICAgICAgICB9XG4gICAgICAgIC8vIE5vdGU6IENvcHkgdGhlIGBzZXQtY29va2llYCBtZXRhLWRhdGEuXG4gICAgICAgIGhlYWRlcnNMaXN0LmNvb2tpZXMgPSBoZWFkZXJzLmNvb2tpZXNcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIDUuIE90aGVyd2lzZSwgZmlsbCB0aGlzXHUyMDE5cyBoZWFkZXJzIHdpdGggaGVhZGVycy5cbiAgICAgICAgZmlsbEhlYWRlcnModGhpc1trSGVhZGVyc10sIGhlYWRlcnMpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gMzMuIExldCBpbnB1dEJvZHkgYmUgaW5wdXRcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGJvZHkgaWYgaW5wdXQgaXMgYSBSZXF1ZXN0XG4gICAgLy8gb2JqZWN0OyBvdGhlcndpc2UgbnVsbC5cbiAgICBjb25zdCBpbnB1dEJvZHkgPSBpbnB1dCBpbnN0YW5jZW9mIFJlcXVlc3QgPyBpbnB1dFtrU3RhdGVdLmJvZHkgOiBudWxsXG5cbiAgICAvLyAzNC4gSWYgZWl0aGVyIGluaXRbXCJib2R5XCJdIGV4aXN0cyBhbmQgaXMgbm9uLW51bGwgb3IgaW5wdXRCb2R5IGlzXG4gICAgLy8gbm9uLW51bGwsIGFuZCByZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgYEdFVGAgb3IgYEhFQURgLCB0aGVuIHRocm93IGFcbiAgICAvLyBUeXBlRXJyb3IuXG4gICAgaWYgKFxuICAgICAgKGluaXQuYm9keSAhPSBudWxsIHx8IGlucHV0Qm9keSAhPSBudWxsKSAmJlxuICAgICAgKHJlcXVlc3QubWV0aG9kID09PSAnR0VUJyB8fCByZXF1ZXN0Lm1ldGhvZCA9PT0gJ0hFQUQnKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignUmVxdWVzdCB3aXRoIEdFVC9IRUFEIG1ldGhvZCBjYW5ub3QgaGF2ZSBib2R5LicpXG4gICAgfVxuXG4gICAgLy8gMzUuIExldCBpbml0Qm9keSBiZSBudWxsLlxuICAgIGxldCBpbml0Qm9keSA9IG51bGxcblxuICAgIC8vIDM2LiBJZiBpbml0W1wiYm9keVwiXSBleGlzdHMgYW5kIGlzIG5vbi1udWxsLCB0aGVuOlxuICAgIGlmIChpbml0LmJvZHkgIT0gbnVsbCkge1xuICAgICAgLy8gMS4gTGV0IENvbnRlbnQtVHlwZSBiZSBudWxsLlxuICAgICAgLy8gMi4gU2V0IGluaXRCb2R5IGFuZCBDb250ZW50LVR5cGUgdG8gdGhlIHJlc3VsdCBvZiBleHRyYWN0aW5nXG4gICAgICAvLyBpbml0W1wiYm9keVwiXSwgd2l0aCBrZWVwYWxpdmUgc2V0IHRvIHJlcXVlc3RcdTIwMTlzIGtlZXBhbGl2ZS5cbiAgICAgIGNvbnN0IFtleHRyYWN0ZWRCb2R5LCBjb250ZW50VHlwZV0gPSBleHRyYWN0Qm9keShcbiAgICAgICAgaW5pdC5ib2R5LFxuICAgICAgICByZXF1ZXN0LmtlZXBhbGl2ZVxuICAgICAgKVxuICAgICAgaW5pdEJvZHkgPSBleHRyYWN0ZWRCb2R5XG5cbiAgICAgIC8vIDMsIElmIENvbnRlbnQtVHlwZSBpcyBub24tbnVsbCBhbmQgdGhpc1x1MjAxOXMgaGVhZGVyc1x1MjAxOXMgaGVhZGVyIGxpc3QgZG9lc1xuICAgICAgLy8gbm90IGNvbnRhaW4gYENvbnRlbnQtVHlwZWAsIHRoZW4gYXBwZW5kIGBDb250ZW50LVR5cGVgL0NvbnRlbnQtVHlwZSB0b1xuICAgICAgLy8gdGhpc1x1MjAxOXMgaGVhZGVycy5cbiAgICAgIGlmIChjb250ZW50VHlwZSAmJiAhdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XS5jb250YWlucygnY29udGVudC10eXBlJykpIHtcbiAgICAgICAgdGhpc1trSGVhZGVyc10uYXBwZW5kKCdjb250ZW50LXR5cGUnLCBjb250ZW50VHlwZSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAzNy4gTGV0IGlucHV0T3JJbml0Qm9keSBiZSBpbml0Qm9keSBpZiBpdCBpcyBub24tbnVsbDsgb3RoZXJ3aXNlXG4gICAgLy8gaW5wdXRCb2R5LlxuICAgIGNvbnN0IGlucHV0T3JJbml0Qm9keSA9IGluaXRCb2R5ID8/IGlucHV0Qm9keVxuXG4gICAgLy8gMzguIElmIGlucHV0T3JJbml0Qm9keSBpcyBub24tbnVsbCBhbmQgaW5wdXRPckluaXRCb2R5XHUyMDE5cyBzb3VyY2UgaXNcbiAgICAvLyBudWxsLCB0aGVuOlxuICAgIGlmIChpbnB1dE9ySW5pdEJvZHkgIT0gbnVsbCAmJiBpbnB1dE9ySW5pdEJvZHkuc291cmNlID09IG51bGwpIHtcbiAgICAgIC8vIDEuIElmIGluaXRCb2R5IGlzIG5vbi1udWxsIGFuZCBpbml0W1wiZHVwbGV4XCJdIGRvZXMgbm90IGV4aXN0LFxuICAgICAgLy8gICAgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAgIGlmIChpbml0Qm9keSAhPSBudWxsICYmIGluaXQuZHVwbGV4ID09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignUmVxdWVzdEluaXQ6IGR1cGxleCBvcHRpb24gaXMgcmVxdWlyZWQgd2hlbiBzZW5kaW5nIGEgYm9keS4nKVxuICAgICAgfVxuXG4gICAgICAvLyAyLiBJZiB0aGlzXHUyMDE5cyByZXF1ZXN0XHUyMDE5cyBtb2RlIGlzIG5laXRoZXIgXCJzYW1lLW9yaWdpblwiIG5vciBcImNvcnNcIixcbiAgICAgIC8vIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAocmVxdWVzdC5tb2RlICE9PSAnc2FtZS1vcmlnaW4nICYmIHJlcXVlc3QubW9kZSAhPT0gJ2NvcnMnKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICAgJ0lmIHJlcXVlc3QgaXMgbWFkZSBmcm9tIFJlYWRhYmxlU3RyZWFtLCBtb2RlIHNob3VsZCBiZSBcInNhbWUtb3JpZ2luXCIgb3IgXCJjb3JzXCInXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gMy4gU2V0IHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHVzZS1DT1JTLXByZWZsaWdodCBmbGFnLlxuICAgICAgcmVxdWVzdC51c2VDT1JTUHJlZmxpZ2h0RmxhZyA9IHRydWVcbiAgICB9XG5cbiAgICAvLyAzOS4gTGV0IGZpbmFsQm9keSBiZSBpbnB1dE9ySW5pdEJvZHkuXG4gICAgbGV0IGZpbmFsQm9keSA9IGlucHV0T3JJbml0Qm9keVxuXG4gICAgLy8gNDAuIElmIGluaXRCb2R5IGlzIG51bGwgYW5kIGlucHV0Qm9keSBpcyBub24tbnVsbCwgdGhlbjpcbiAgICBpZiAoaW5pdEJvZHkgPT0gbnVsbCAmJiBpbnB1dEJvZHkgIT0gbnVsbCkge1xuICAgICAgLy8gMS4gSWYgaW5wdXQgaXMgdW51c2FibGUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAodXRpbC5pc0Rpc3R1cmJlZChpbnB1dEJvZHkuc3RyZWFtKSB8fCBpbnB1dEJvZHkuc3RyZWFtLmxvY2tlZCkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgICdDYW5ub3QgY29uc3RydWN0IGEgUmVxdWVzdCB3aXRoIGEgUmVxdWVzdCBvYmplY3QgdGhhdCBoYXMgYWxyZWFkeSBiZWVuIHVzZWQuJ1xuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIFNldCBmaW5hbEJvZHkgdG8gdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIHByb3h5IGZvciBpbnB1dEJvZHkuXG4gICAgICBpZiAoIVRyYW5zZm9ybVN0cmVhbSkge1xuICAgICAgICBUcmFuc2Zvcm1TdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuVHJhbnNmb3JtU3RyZWFtXG4gICAgICB9XG5cbiAgICAgIC8vIGh0dHBzOi8vc3RyZWFtcy5zcGVjLndoYXR3Zy5vcmcvI3JlYWRhYmxlc3RyZWFtLWNyZWF0ZS1hLXByb3h5XG4gICAgICBjb25zdCBpZGVudGl0eVRyYW5zZm9ybSA9IG5ldyBUcmFuc2Zvcm1TdHJlYW0oKVxuICAgICAgaW5wdXRCb2R5LnN0cmVhbS5waXBlVGhyb3VnaChpZGVudGl0eVRyYW5zZm9ybSlcbiAgICAgIGZpbmFsQm9keSA9IHtcbiAgICAgICAgc291cmNlOiBpbnB1dEJvZHkuc291cmNlLFxuICAgICAgICBsZW5ndGg6IGlucHV0Qm9keS5sZW5ndGgsXG4gICAgICAgIHN0cmVhbTogaWRlbnRpdHlUcmFuc2Zvcm0ucmVhZGFibGVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA0MS4gU2V0IHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGJvZHkgdG8gZmluYWxCb2R5LlxuICAgIHRoaXNba1N0YXRlXS5ib2R5ID0gZmluYWxCb2R5XG4gIH1cblxuICAvLyBSZXR1cm5zIHJlcXVlc3RcdTIwMTlzIEhUVFAgbWV0aG9kLCB3aGljaCBpcyBcIkdFVFwiIGJ5IGRlZmF1bHQuXG4gIGdldCBtZXRob2QgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgbWV0aG9kIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIG1ldGhvZC5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLm1ldGhvZFxuICB9XG5cbiAgLy8gUmV0dXJucyB0aGUgVVJMIG9mIHJlcXVlc3QgYXMgYSBzdHJpbmcuXG4gIGdldCB1cmwgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgdXJsIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIFVSTCwgc2VyaWFsaXplZC5cbiAgICByZXR1cm4gVVJMU2VyaWFsaXplcih0aGlzW2tTdGF0ZV0udXJsKVxuICB9XG5cbiAgLy8gUmV0dXJucyBhIEhlYWRlcnMgb2JqZWN0IGNvbnNpc3Rpbmcgb2YgdGhlIGhlYWRlcnMgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QuXG4gIC8vIE5vdGUgdGhhdCBoZWFkZXJzIGFkZGVkIGluIHRoZSBuZXR3b3JrIGxheWVyIGJ5IHRoZSB1c2VyIGFnZW50IHdpbGwgbm90XG4gIC8vIGJlIGFjY291bnRlZCBmb3IgaW4gdGhpcyBvYmplY3QsIGUuZy4sIHRoZSBcIkhvc3RcIiBoZWFkZXIuXG4gIGdldCBoZWFkZXJzICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIGhlYWRlcnMgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgaGVhZGVycy5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc11cbiAgfVxuXG4gIC8vIFJldHVybnMgdGhlIGtpbmQgb2YgcmVzb3VyY2UgcmVxdWVzdGVkIGJ5IHJlcXVlc3QsIGUuZy4sIFwiZG9jdW1lbnRcIlxuICAvLyBvciBcInNjcmlwdFwiLlxuICBnZXQgZGVzdGluYXRpb24gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgZGVzdGluYXRpb24gZ2V0dGVyIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgZGVzdGluYXRpb24uXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5kZXN0aW5hdGlvblxuICB9XG5cbiAgLy8gUmV0dXJucyB0aGUgcmVmZXJyZXIgb2YgcmVxdWVzdC4gSXRzIHZhbHVlIGNhbiBiZSBhIHNhbWUtb3JpZ2luIFVSTCBpZlxuICAvLyBleHBsaWNpdGx5IHNldCBpbiBpbml0LCB0aGUgZW1wdHkgc3RyaW5nIHRvIGluZGljYXRlIG5vIHJlZmVycmVyLCBhbmRcbiAgLy8gXCJhYm91dDpjbGllbnRcIiB3aGVuIGRlZmF1bHRpbmcgdG8gdGhlIGdsb2JhbFx1MjAxOXMgZGVmYXVsdC4gVGhpcyBpcyB1c2VkXG4gIC8vIGR1cmluZyBmZXRjaGluZyB0byBkZXRlcm1pbmUgdGhlIHZhbHVlIG9mIHRoZSBgUmVmZXJlcmAgaGVhZGVyIG9mIHRoZVxuICAvLyByZXF1ZXN0IGJlaW5nIG1hZGUuXG4gIGdldCByZWZlcnJlciAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIDEuIElmIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIGlzIFwibm8tcmVmZXJyZXJcIiwgdGhlbiByZXR1cm4gdGhlXG4gICAgLy8gZW1wdHkgc3RyaW5nLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0ucmVmZXJyZXIgPT09ICduby1yZWZlcnJlcicpIHtcbiAgICAgIHJldHVybiAnJ1xuICAgIH1cblxuICAgIC8vIDIuIElmIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIGlzIFwiY2xpZW50XCIsIHRoZW4gcmV0dXJuXG4gICAgLy8gXCJhYm91dDpjbGllbnRcIi5cbiAgICBpZiAodGhpc1trU3RhdGVdLnJlZmVycmVyID09PSAnY2xpZW50Jykge1xuICAgICAgcmV0dXJuICdhYm91dDpjbGllbnQnXG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyLCBzZXJpYWxpemVkLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ucmVmZXJyZXIudG9TdHJpbmcoKVxuICB9XG5cbiAgLy8gUmV0dXJucyB0aGUgcmVmZXJyZXIgcG9saWN5IGFzc29jaWF0ZWQgd2l0aCByZXF1ZXN0LlxuICAvLyBUaGlzIGlzIHVzZWQgZHVyaW5nIGZldGNoaW5nIHRvIGNvbXB1dGUgdGhlIHZhbHVlIG9mIHRoZSByZXF1ZXN0XHUyMDE5c1xuICAvLyByZWZlcnJlci5cbiAgZ2V0IHJlZmVycmVyUG9saWN5ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIHJlZmVycmVyUG9saWN5IGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnJlZmVycmVyUG9saWN5XG4gIH1cblxuICAvLyBSZXR1cm5zIHRoZSBtb2RlIGFzc29jaWF0ZWQgd2l0aCByZXF1ZXN0LCB3aGljaCBpcyBhIHN0cmluZyBpbmRpY2F0aW5nXG4gIC8vIHdoZXRoZXIgdGhlIHJlcXVlc3Qgd2lsbCB1c2UgQ09SUywgb3Igd2lsbCBiZSByZXN0cmljdGVkIHRvIHNhbWUtb3JpZ2luXG4gIC8vIFVSTHMuXG4gIGdldCBtb2RlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIG1vZGUgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgbW9kZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLm1vZGVcbiAgfVxuXG4gIC8vIFJldHVybnMgdGhlIGNyZWRlbnRpYWxzIG1vZGUgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QsXG4gIC8vIHdoaWNoIGlzIGEgc3RyaW5nIGluZGljYXRpbmcgd2hldGhlciBjcmVkZW50aWFscyB3aWxsIGJlIHNlbnQgd2l0aCB0aGVcbiAgLy8gcmVxdWVzdCBhbHdheXMsIG5ldmVyLCBvciBvbmx5IHdoZW4gc2VudCB0byBhIHNhbWUtb3JpZ2luIFVSTC5cbiAgZ2V0IGNyZWRlbnRpYWxzICgpIHtcbiAgICAvLyBUaGUgY3JlZGVudGlhbHMgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgY3JlZGVudGlhbHMgbW9kZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmNyZWRlbnRpYWxzXG4gIH1cblxuICAvLyBSZXR1cm5zIHRoZSBjYWNoZSBtb2RlIGFzc29jaWF0ZWQgd2l0aCByZXF1ZXN0LFxuICAvLyB3aGljaCBpcyBhIHN0cmluZyBpbmRpY2F0aW5nIGhvdyB0aGUgcmVxdWVzdCB3aWxsXG4gIC8vIGludGVyYWN0IHdpdGggdGhlIGJyb3dzZXJcdTIwMTlzIGNhY2hlIHdoZW4gZmV0Y2hpbmcuXG4gIGdldCBjYWNoZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIFRoZSBjYWNoZSBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyByZXF1ZXN0XHUyMDE5cyBjYWNoZSBtb2RlLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uY2FjaGVcbiAgfVxuXG4gIC8vIFJldHVybnMgdGhlIHJlZGlyZWN0IG1vZGUgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QsXG4gIC8vIHdoaWNoIGlzIGEgc3RyaW5nIGluZGljYXRpbmcgaG93IHJlZGlyZWN0cyBmb3IgdGhlXG4gIC8vIHJlcXVlc3Qgd2lsbCBiZSBoYW5kbGVkIGR1cmluZyBmZXRjaGluZy4gQSByZXF1ZXN0XG4gIC8vIHdpbGwgZm9sbG93IHJlZGlyZWN0cyBieSBkZWZhdWx0LlxuICBnZXQgcmVkaXJlY3QgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgcmVkaXJlY3QgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgbW9kZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnJlZGlyZWN0XG4gIH1cblxuICAvLyBSZXR1cm5zIHJlcXVlc3RcdTIwMTlzIHN1YnJlc291cmNlIGludGVncml0eSBtZXRhZGF0YSwgd2hpY2ggaXMgYVxuICAvLyBjcnlwdG9ncmFwaGljIGhhc2ggb2YgdGhlIHJlc291cmNlIGJlaW5nIGZldGNoZWQuIEl0cyB2YWx1ZVxuICAvLyBjb25zaXN0cyBvZiBtdWx0aXBsZSBoYXNoZXMgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIFtTUkldXG4gIGdldCBpbnRlZ3JpdHkgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgaW50ZWdyaXR5IGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGludGVncml0eVxuICAgIC8vIG1ldGFkYXRhLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uaW50ZWdyaXR5XG4gIH1cblxuICAvLyBSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHJlcXVlc3QgY2FuIG91dGxpdmUgdGhlXG4gIC8vIGdsb2JhbCBpbiB3aGljaCBpdCB3YXMgY3JlYXRlZC5cbiAgZ2V0IGtlZXBhbGl2ZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIFRoZSBrZWVwYWxpdmUgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMga2VlcGFsaXZlLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ua2VlcGFsaXZlXG4gIH1cblxuICAvLyBSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHJlcXVlc3QgaXMgZm9yIGEgcmVsb2FkXG4gIC8vIG5hdmlnYXRpb24uXG4gIGdldCBpc1JlbG9hZE5hdmlnYXRpb24gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgaXNSZWxvYWROYXZpZ2F0aW9uIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRydWUgaWYgdGhpc1x1MjAxOXNcbiAgICAvLyByZXF1ZXN0XHUyMDE5cyByZWxvYWQtbmF2aWdhdGlvbiBmbGFnIGlzIHNldDsgb3RoZXJ3aXNlIGZhbHNlLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ucmVsb2FkTmF2aWdhdGlvblxuICB9XG5cbiAgLy8gUmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIG9yIG5vdCByZXF1ZXN0IGlzIGZvciBhIGhpc3RvcnlcbiAgLy8gbmF2aWdhdGlvbiAoYS5rLmEuIGJhY2stZm93YXJkIG5hdmlnYXRpb24pLlxuICBnZXQgaXNIaXN0b3J5TmF2aWdhdGlvbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIFRoZSBpc0hpc3RvcnlOYXZpZ2F0aW9uIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRydWUgaWYgdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXNcbiAgICAvLyBoaXN0b3J5LW5hdmlnYXRpb24gZmxhZyBpcyBzZXQ7IG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmhpc3RvcnlOYXZpZ2F0aW9uXG4gIH1cblxuICAvLyBSZXR1cm5zIHRoZSBzaWduYWwgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QsIHdoaWNoIGlzIGFuIEFib3J0U2lnbmFsXG4gIC8vIG9iamVjdCBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHJlcXVlc3QgaGFzIGJlZW4gYWJvcnRlZCwgYW5kIGl0c1xuICAvLyBhYm9ydCBldmVudCBoYW5kbGVyLlxuICBnZXQgc2lnbmFsICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIHNpZ25hbCBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyBzaWduYWwuXG4gICAgcmV0dXJuIHRoaXNba1NpZ25hbF1cbiAgfVxuXG4gIGdldCBib2R5ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ib2R5ID8gdGhpc1trU3RhdGVdLmJvZHkuc3RyZWFtIDogbnVsbFxuICB9XG5cbiAgZ2V0IGJvZHlVc2VkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgcmV0dXJuICEhdGhpc1trU3RhdGVdLmJvZHkgJiYgdXRpbC5pc0Rpc3R1cmJlZCh0aGlzW2tTdGF0ZV0uYm9keS5zdHJlYW0pXG4gIH1cblxuICBnZXQgZHVwbGV4ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgcmV0dXJuICdoYWxmJ1xuICB9XG5cbiAgLy8gUmV0dXJucyBhIGNsb25lIG9mIHJlcXVlc3QuXG4gIGNsb25lICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gMS4gSWYgdGhpcyBpcyB1bnVzYWJsZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAodGhpcy5ib2R5VXNlZCB8fCB0aGlzLmJvZHk/LmxvY2tlZCkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigndW51c2FibGUnKVxuICAgIH1cblxuICAgIC8vIDIuIExldCBjbG9uZWRSZXF1ZXN0IGJlIHRoZSByZXN1bHQgb2YgY2xvbmluZyB0aGlzXHUyMDE5cyByZXF1ZXN0LlxuICAgIGNvbnN0IGNsb25lZFJlcXVlc3QgPSBjbG9uZVJlcXVlc3QodGhpc1trU3RhdGVdKVxuXG4gICAgLy8gMy4gTGV0IGNsb25lZFJlcXVlc3RPYmplY3QgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIFJlcXVlc3Qgb2JqZWN0LFxuICAgIC8vIGdpdmVuIGNsb25lZFJlcXVlc3QsIHRoaXNcdTIwMTlzIGhlYWRlcnNcdTIwMTlzIGd1YXJkLCBhbmQgdGhpc1x1MjAxOXMgcmVsZXZhbnQgUmVhbG0uXG4gICAgY29uc3QgY2xvbmVkUmVxdWVzdE9iamVjdCA9IG5ldyBSZXF1ZXN0KGtDb25zdHJ1Y3QpXG4gICAgY2xvbmVkUmVxdWVzdE9iamVjdFtrU3RhdGVdID0gY2xvbmVkUmVxdWVzdFxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba1JlYWxtXSA9IHRoaXNba1JlYWxtXVxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba0hlYWRlcnNdID0gbmV3IEhlYWRlcnMoa0NvbnN0cnVjdClcbiAgICBjbG9uZWRSZXF1ZXN0T2JqZWN0W2tIZWFkZXJzXVtrSGVhZGVyc0xpc3RdID0gY2xvbmVkUmVxdWVzdC5oZWFkZXJzTGlzdFxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba0hlYWRlcnNdW2tHdWFyZF0gPSB0aGlzW2tIZWFkZXJzXVtrR3VhcmRdXG4gICAgY2xvbmVkUmVxdWVzdE9iamVjdFtrSGVhZGVyc11ba1JlYWxtXSA9IHRoaXNba0hlYWRlcnNdW2tSZWFsbV1cblxuICAgIC8vIDQuIE1ha2UgY2xvbmVkUmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsIGZvbGxvdyB0aGlzXHUyMDE5cyBzaWduYWwuXG4gICAgY29uc3QgYWMgPSBuZXcgQWJvcnRDb250cm9sbGVyKClcbiAgICBpZiAodGhpcy5zaWduYWwuYWJvcnRlZCkge1xuICAgICAgYWMuYWJvcnQodGhpcy5zaWduYWwucmVhc29uKVxuICAgIH0gZWxzZSB7XG4gICAgICB1dGlsLmFkZEFib3J0TGlzdGVuZXIoXG4gICAgICAgIHRoaXMuc2lnbmFsLFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgYWMuYWJvcnQodGhpcy5zaWduYWwucmVhc29uKVxuICAgICAgICB9XG4gICAgICApXG4gICAgfVxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba1NpZ25hbF0gPSBhYy5zaWduYWxcblxuICAgIC8vIDQuIFJldHVybiBjbG9uZWRSZXF1ZXN0T2JqZWN0LlxuICAgIHJldHVybiBjbG9uZWRSZXF1ZXN0T2JqZWN0XG4gIH1cbn1cblxubWl4aW5Cb2R5KFJlcXVlc3QpXG5cbmZ1bmN0aW9uIG1ha2VSZXF1ZXN0IChpbml0KSB7XG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0c1xuICBjb25zdCByZXF1ZXN0ID0ge1xuICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgbG9jYWxVUkxzT25seTogZmFsc2UsXG4gICAgdW5zYWZlUmVxdWVzdDogZmFsc2UsXG4gICAgYm9keTogbnVsbCxcbiAgICBjbGllbnQ6IG51bGwsXG4gICAgcmVzZXJ2ZWRDbGllbnQ6IG51bGwsXG4gICAgcmVwbGFjZXNDbGllbnRJZDogJycsXG4gICAgd2luZG93OiAnY2xpZW50JyxcbiAgICBrZWVwYWxpdmU6IGZhbHNlLFxuICAgIHNlcnZpY2VXb3JrZXJzOiAnYWxsJyxcbiAgICBpbml0aWF0b3I6ICcnLFxuICAgIGRlc3RpbmF0aW9uOiAnJyxcbiAgICBwcmlvcml0eTogbnVsbCxcbiAgICBvcmlnaW46ICdjbGllbnQnLFxuICAgIHBvbGljeUNvbnRhaW5lcjogJ2NsaWVudCcsXG4gICAgcmVmZXJyZXI6ICdjbGllbnQnLFxuICAgIHJlZmVycmVyUG9saWN5OiAnJyxcbiAgICBtb2RlOiAnbm8tY29ycycsXG4gICAgdXNlQ09SU1ByZWZsaWdodEZsYWc6IGZhbHNlLFxuICAgIGNyZWRlbnRpYWxzOiAnc2FtZS1vcmlnaW4nLFxuICAgIHVzZUNyZWRlbnRpYWxzOiBmYWxzZSxcbiAgICBjYWNoZTogJ2RlZmF1bHQnLFxuICAgIHJlZGlyZWN0OiAnZm9sbG93JyxcbiAgICBpbnRlZ3JpdHk6ICcnLFxuICAgIGNyeXB0b0dyYXBoaWNzTm9uY2VNZXRhZGF0YTogJycsXG4gICAgcGFyc2VyTWV0YWRhdGE6ICcnLFxuICAgIHJlbG9hZE5hdmlnYXRpb246IGZhbHNlLFxuICAgIGhpc3RvcnlOYXZpZ2F0aW9uOiBmYWxzZSxcbiAgICB1c2VyQWN0aXZhdGlvbjogZmFsc2UsXG4gICAgdGFpbnRlZE9yaWdpbjogZmFsc2UsXG4gICAgcmVkaXJlY3RDb3VudDogMCxcbiAgICByZXNwb25zZVRhaW50aW5nOiAnYmFzaWMnLFxuICAgIHByZXZlbnROb0NhY2hlQ2FjaGVDb250cm9sSGVhZGVyTW9kaWZpY2F0aW9uOiBmYWxzZSxcbiAgICBkb25lOiBmYWxzZSxcbiAgICB0aW1pbmdBbGxvd0ZhaWxlZDogZmFsc2UsXG4gICAgLi4uaW5pdCxcbiAgICBoZWFkZXJzTGlzdDogaW5pdC5oZWFkZXJzTGlzdFxuICAgICAgPyBuZXcgSGVhZGVyc0xpc3QoaW5pdC5oZWFkZXJzTGlzdClcbiAgICAgIDogbmV3IEhlYWRlcnNMaXN0KClcbiAgfVxuICByZXF1ZXN0LnVybCA9IHJlcXVlc3QudXJsTGlzdFswXVxuICByZXR1cm4gcmVxdWVzdFxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1yZXF1ZXN0LWNsb25lXG5mdW5jdGlvbiBjbG9uZVJlcXVlc3QgKHJlcXVlc3QpIHtcbiAgLy8gVG8gY2xvbmUgYSByZXF1ZXN0IHJlcXVlc3QsIHJ1biB0aGVzZSBzdGVwczpcblxuICAvLyAxLiBMZXQgbmV3UmVxdWVzdCBiZSBhIGNvcHkgb2YgcmVxdWVzdCwgZXhjZXB0IGZvciBpdHMgYm9keS5cbiAgY29uc3QgbmV3UmVxdWVzdCA9IG1ha2VSZXF1ZXN0KHsgLi4ucmVxdWVzdCwgYm9keTogbnVsbCB9KVxuXG4gIC8vIDIuIElmIHJlcXVlc3RcdTIwMTlzIGJvZHkgaXMgbm9uLW51bGwsIHNldCBuZXdSZXF1ZXN0XHUyMDE5cyBib2R5IHRvIHRoZVxuICAvLyByZXN1bHQgb2YgY2xvbmluZyByZXF1ZXN0XHUyMDE5cyBib2R5LlxuICBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwpIHtcbiAgICBuZXdSZXF1ZXN0LmJvZHkgPSBjbG9uZUJvZHkocmVxdWVzdC5ib2R5KVxuICB9XG5cbiAgLy8gMy4gUmV0dXJuIG5ld1JlcXVlc3QuXG4gIHJldHVybiBuZXdSZXF1ZXN0XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFJlcXVlc3QucHJvdG90eXBlLCB7XG4gIG1ldGhvZDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgdXJsOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBoZWFkZXJzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICByZWRpcmVjdDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgY2xvbmU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHNpZ25hbDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZHVwbGV4OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBkZXN0aW5hdGlvbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keVVzZWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGlzSGlzdG9yeU5hdmlnYXRpb246IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGlzUmVsb2FkTmF2aWdhdGlvbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAga2VlcGFsaXZlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBpbnRlZ3JpdHk6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGNhY2hlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjcmVkZW50aWFsczoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYXR0cmlidXRlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICByZWZlcnJlclBvbGljeToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVmZXJyZXI6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG1vZGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdSZXF1ZXN0JyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxud2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdCA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIFJlcXVlc3RcbilcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI3JlcXVlc3RpbmZvXG53ZWJpZGwuY29udmVydGVycy5SZXF1ZXN0SW5mbyA9IGZ1bmN0aW9uIChWKSB7XG4gIGlmICh0eXBlb2YgViA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKFYpXG4gIH1cblxuICBpZiAoViBpbnN0YW5jZW9mIFJlcXVlc3QpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdChWKVxuICB9XG5cbiAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyhWKVxufVxuXG53ZWJpZGwuY29udmVydGVycy5BYm9ydFNpZ25hbCA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIEFib3J0U2lnbmFsXG4pXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0aW5pdFxud2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluaXQgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBrZXk6ICdtZXRob2QnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZ1xuICB9LFxuICB7XG4gICAga2V5OiAnaGVhZGVycycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5IZWFkZXJzSW5pdFxuICB9LFxuICB7XG4gICAga2V5OiAnYm9keScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIoXG4gICAgICB3ZWJpZGwuY29udmVydGVycy5Cb2R5SW5pdFxuICAgIClcbiAgfSxcbiAge1xuICAgIGtleTogJ3JlZmVycmVyJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZ1xuICB9LFxuICB7XG4gICAga2V5OiAncmVmZXJyZXJQb2xpY3knLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nLFxuICAgIC8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyNyZWZlcnJlci1wb2xpY3lcbiAgICBhbGxvd2VkVmFsdWVzOiByZWZlcnJlclBvbGljeVxuICB9LFxuICB7XG4gICAga2V5OiAnbW9kZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtcmVxdWVzdC1tb2RlXG4gICAgYWxsb3dlZFZhbHVlczogcmVxdWVzdE1vZGVcbiAgfSxcbiAge1xuICAgIGtleTogJ2NyZWRlbnRpYWxzJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyxcbiAgICAvLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jcmVxdWVzdGNyZWRlbnRpYWxzXG4gICAgYWxsb3dlZFZhbHVlczogcmVxdWVzdENyZWRlbnRpYWxzXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdjYWNoZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI3JlcXVlc3RjYWNoZVxuICAgIGFsbG93ZWRWYWx1ZXM6IHJlcXVlc3RDYWNoZVxuICB9LFxuICB7XG4gICAga2V5OiAncmVkaXJlY3QnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nLFxuICAgIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0cmVkaXJlY3RcbiAgICBhbGxvd2VkVmFsdWVzOiByZXF1ZXN0UmVkaXJlY3RcbiAgfSxcbiAge1xuICAgIGtleTogJ2ludGVncml0eScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmdcbiAgfSxcbiAge1xuICAgIGtleTogJ2tlZXBhbGl2ZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdzaWduYWwnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKFxuICAgICAgKHNpZ25hbCkgPT4gd2ViaWRsLmNvbnZlcnRlcnMuQWJvcnRTaWduYWwoXG4gICAgICAgIHNpZ25hbCxcbiAgICAgICAgeyBzdHJpY3Q6IGZhbHNlIH1cbiAgICAgIClcbiAgICApXG4gIH0sXG4gIHtcbiAgICBrZXk6ICd3aW5kb3cnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYW55XG4gIH0sXG4gIHtcbiAgICBrZXk6ICdkdXBsZXgnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nLFxuICAgIGFsbG93ZWRWYWx1ZXM6IHJlcXVlc3REdXBsZXhcbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7IFJlcXVlc3QsIG1ha2VSZXF1ZXN0IH1cbiIsICIvLyBodHRwczovL2dpdGh1Yi5jb20vRXRoYW4tQXJyb3dvb2QvdW5kaWNpLWZldGNoXG5cbid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIFJlc3BvbnNlLFxuICBtYWtlTmV0d29ya0Vycm9yLFxuICBtYWtlQXBwcm9wcmlhdGVOZXR3b3JrRXJyb3IsXG4gIGZpbHRlclJlc3BvbnNlLFxuICBtYWtlUmVzcG9uc2Vcbn0gPSByZXF1aXJlKCcuL3Jlc3BvbnNlJylcbmNvbnN0IHsgSGVhZGVycyB9ID0gcmVxdWlyZSgnLi9oZWFkZXJzJylcbmNvbnN0IHsgUmVxdWVzdCwgbWFrZVJlcXVlc3QgfSA9IHJlcXVpcmUoJy4vcmVxdWVzdCcpXG5jb25zdCB6bGliID0gcmVxdWlyZSgnemxpYicpXG5jb25zdCB7XG4gIGJ5dGVzTWF0Y2gsXG4gIG1ha2VQb2xpY3lDb250YWluZXIsXG4gIGNsb25lUG9saWN5Q29udGFpbmVyLFxuICByZXF1ZXN0QmFkUG9ydCxcbiAgVEFPQ2hlY2ssXG4gIGFwcGVuZFJlcXVlc3RPcmlnaW5IZWFkZXIsXG4gIHJlc3BvbnNlTG9jYXRpb25VUkwsXG4gIHJlcXVlc3RDdXJyZW50VVJMLFxuICBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0LFxuICB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwsXG4gIGNyZWF0ZU9wYXF1ZVRpbWluZ0luZm8sXG4gIGFwcGVuZEZldGNoTWV0YWRhdGEsXG4gIGNvcnNDaGVjayxcbiAgY3Jvc3NPcmlnaW5SZXNvdXJjZVBvbGljeUNoZWNrLFxuICBkZXRlcm1pbmVSZXF1ZXN0c1JlZmVycmVyLFxuICBjb2Fyc2VuZWRTaGFyZWRDdXJyZW50VGltZSxcbiAgY3JlYXRlRGVmZXJyZWRQcm9taXNlLFxuICBpc0Jsb2JMaWtlLFxuICBzYW1lT3JpZ2luLFxuICBpc0NhbmNlbGxlZCxcbiAgaXNBYm9ydGVkLFxuICBpc0Vycm9yTGlrZSxcbiAgZnVsbHlSZWFkQm9keSxcbiAgcmVhZGFibGVTdHJlYW1DbG9zZSxcbiAgaXNvbW9ycGhpY0VuY29kZSxcbiAgdXJsSXNMb2NhbCxcbiAgdXJsSXNIdHRwSHR0cHNTY2hlbWUsXG4gIHVybEhhc0h0dHBzU2NoZW1lXG59ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsga1N0YXRlLCBrSGVhZGVycywga0d1YXJkLCBrUmVhbG0gfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBzYWZlbHlFeHRyYWN0Qm9keSB9ID0gcmVxdWlyZSgnLi9ib2R5JylcbmNvbnN0IHtcbiAgcmVkaXJlY3RTdGF0dXNTZXQsXG4gIG51bGxCb2R5U3RhdHVzLFxuICBzYWZlTWV0aG9kc1NldCxcbiAgcmVxdWVzdEJvZHlIZWFkZXIsXG4gIHN1YnJlc291cmNlU2V0LFxuICBET01FeGNlcHRpb25cbn0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5jb25zdCB7IGtIZWFkZXJzTGlzdCB9ID0gcmVxdWlyZSgnLi4vY29yZS9zeW1ib2xzJylcbmNvbnN0IEVFID0gcmVxdWlyZSgnZXZlbnRzJylcbmNvbnN0IHsgUmVhZGFibGUsIHBpcGVsaW5lIH0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgeyBhZGRBYm9ydExpc3RlbmVyLCBpc0Vycm9yZWQsIGlzUmVhZGFibGUsIG5vZGVNYWpvciwgbm9kZU1pbm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBkYXRhVVJMUHJvY2Vzc29yLCBzZXJpYWxpemVBTWltZVR5cGUgfSA9IHJlcXVpcmUoJy4vZGF0YVVSTCcpXG5jb25zdCB7IFRyYW5zZm9ybVN0cmVhbSB9ID0gcmVxdWlyZSgnc3RyZWFtL3dlYicpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi93ZWJpZGwnKVxuY29uc3QgeyBTVEFUVVNfQ09ERVMgfSA9IHJlcXVpcmUoJ2h0dHAnKVxuY29uc3QgR0VUX09SX0hFQUQgPSBbJ0dFVCcsICdIRUFEJ11cblxuLyoqIEB0eXBlIHtpbXBvcnQoJ2J1ZmZlcicpLnJlc29sdmVPYmplY3RVUkx9ICovXG5sZXQgcmVzb2x2ZU9iamVjdFVSTFxubGV0IFJlYWRhYmxlU3RyZWFtID0gZ2xvYmFsVGhpcy5SZWFkYWJsZVN0cmVhbVxuXG5jbGFzcyBGZXRjaCBleHRlbmRzIEVFIHtcbiAgY29uc3RydWN0b3IgKGRpc3BhdGNoZXIpIHtcbiAgICBzdXBlcigpXG5cbiAgICB0aGlzLmRpc3BhdGNoZXIgPSBkaXNwYXRjaGVyXG4gICAgdGhpcy5jb25uZWN0aW9uID0gbnVsbFxuICAgIHRoaXMuZHVtcCA9IGZhbHNlXG4gICAgdGhpcy5zdGF0ZSA9ICdvbmdvaW5nJ1xuICAgIC8vIDIgdGVybWluYXRlZCBsaXN0ZW5lcnMgZ2V0IGFkZGVkIHBlciByZXF1ZXN0LFxuICAgIC8vIGJ1dCBvbmx5IDEgZ2V0cyByZW1vdmVkLiBJZiB0aGVyZSBhcmUgMjAgcmVkaXJlY3RzLFxuICAgIC8vIDIxIGxpc3RlbmVycyB3aWxsIGJlIGFkZGVkLlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL3VuZGljaS9pc3N1ZXMvMTcxMVxuICAgIC8vIFRPRE8gKGZpeCk6IEZpbmQgYW5kIGZpeCByb290IGNhdXNlIGZvciBsZWFrZWQgbGlzdGVuZXIuXG4gICAgdGhpcy5zZXRNYXhMaXN0ZW5lcnMoMjEpXG4gIH1cblxuICB0ZXJtaW5hdGUgKHJlYXNvbikge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb25nb2luZycpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMuc3RhdGUgPSAndGVybWluYXRlZCdcbiAgICB0aGlzLmNvbm5lY3Rpb24/LmRlc3Ryb3kocmVhc29uKVxuICAgIHRoaXMuZW1pdCgndGVybWluYXRlZCcsIHJlYXNvbilcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmZXRjaC1jb250cm9sbGVyLWFib3J0XG4gIGFib3J0IChlcnJvcikge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb25nb2luZycpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIDEuIFNldCBjb250cm9sbGVyXHUyMDE5cyBzdGF0ZSB0byBcImFib3J0ZWRcIi5cbiAgICB0aGlzLnN0YXRlID0gJ2Fib3J0ZWQnXG5cbiAgICAvLyAyLiBMZXQgZmFsbGJhY2tFcnJvciBiZSBhbiBcIkFib3J0RXJyb3JcIiBET01FeGNlcHRpb24uXG4gICAgLy8gMy4gU2V0IGVycm9yIHRvIGZhbGxiYWNrRXJyb3IgaWYgaXQgaXMgbm90IGdpdmVuLlxuICAgIGlmICghZXJyb3IpIHtcbiAgICAgIGVycm9yID0gbmV3IERPTUV4Y2VwdGlvbignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZC4nLCAnQWJvcnRFcnJvcicpXG4gICAgfVxuXG4gICAgLy8gNC4gTGV0IHNlcmlhbGl6ZWRFcnJvciBiZSBTdHJ1Y3R1cmVkU2VyaWFsaXplKGVycm9yKS5cbiAgICAvLyAgICBJZiB0aGF0IHRocmV3IGFuIGV4Y2VwdGlvbiwgY2F0Y2ggaXQsIGFuZCBsZXRcbiAgICAvLyAgICBzZXJpYWxpemVkRXJyb3IgYmUgU3RydWN0dXJlZFNlcmlhbGl6ZShmYWxsYmFja0Vycm9yKS5cblxuICAgIC8vIDUuIFNldCBjb250cm9sbGVyXHUyMDE5cyBzZXJpYWxpemVkIGFib3J0IHJlYXNvbiB0byBzZXJpYWxpemVkRXJyb3IuXG4gICAgdGhpcy5zZXJpYWxpemVkQWJvcnRSZWFzb24gPSBlcnJvclxuXG4gICAgdGhpcy5jb25uZWN0aW9uPy5kZXN0cm95KGVycm9yKVxuICAgIHRoaXMuZW1pdCgndGVybWluYXRlZCcsIGVycm9yKVxuICB9XG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmZXRjaC1tZXRob2RcbmZ1bmN0aW9uIGZldGNoIChpbnB1dCwgaW5pdCA9IHt9KSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdnbG9iYWxUaGlzLmZldGNoJyB9KVxuXG4gIC8vIDEuIExldCBwIGJlIGEgbmV3IHByb21pc2UuXG4gIGNvbnN0IHAgPSBjcmVhdGVEZWZlcnJlZFByb21pc2UoKVxuXG4gIC8vIDIuIExldCByZXF1ZXN0T2JqZWN0IGJlIHRoZSByZXN1bHQgb2YgaW52b2tpbmcgdGhlIGluaXRpYWwgdmFsdWUgb2ZcbiAgLy8gUmVxdWVzdCBhcyBjb25zdHJ1Y3RvciB3aXRoIGlucHV0IGFuZCBpbml0IGFzIGFyZ3VtZW50cy4gSWYgdGhpcyB0aHJvd3NcbiAgLy8gYW4gZXhjZXB0aW9uLCByZWplY3QgcCB3aXRoIGl0IGFuZCByZXR1cm4gcC5cbiAgbGV0IHJlcXVlc3RPYmplY3RcblxuICB0cnkge1xuICAgIHJlcXVlc3RPYmplY3QgPSBuZXcgUmVxdWVzdChpbnB1dCwgaW5pdClcbiAgfSBjYXRjaCAoZSkge1xuICAgIHAucmVqZWN0KGUpXG4gICAgcmV0dXJuIHAucHJvbWlzZVxuICB9XG5cbiAgLy8gMy4gTGV0IHJlcXVlc3QgYmUgcmVxdWVzdE9iamVjdFx1MjAxOXMgcmVxdWVzdC5cbiAgY29uc3QgcmVxdWVzdCA9IHJlcXVlc3RPYmplY3Rba1N0YXRlXVxuXG4gIC8vIDQuIElmIHJlcXVlc3RPYmplY3RcdTIwMTlzIHNpZ25hbFx1MjAxOXMgYWJvcnRlZCBmbGFnIGlzIHNldCwgdGhlbjpcbiAgaWYgKHJlcXVlc3RPYmplY3Quc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAvLyAxLiBBYm9ydCB0aGUgZmV0Y2goKSBjYWxsIHdpdGggcCwgcmVxdWVzdCwgbnVsbCwgYW5kXG4gICAgLy8gICAgcmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsXHUyMDE5cyBhYm9ydCByZWFzb24uXG4gICAgYWJvcnRGZXRjaChwLCByZXF1ZXN0LCBudWxsLCByZXF1ZXN0T2JqZWN0LnNpZ25hbC5yZWFzb24pXG5cbiAgICAvLyAyLiBSZXR1cm4gcC5cbiAgICByZXR1cm4gcC5wcm9taXNlXG4gIH1cblxuICAvLyA1LiBMZXQgZ2xvYmFsT2JqZWN0IGJlIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgZ2xvYmFsIG9iamVjdC5cbiAgY29uc3QgZ2xvYmFsT2JqZWN0ID0gcmVxdWVzdC5jbGllbnQuZ2xvYmFsT2JqZWN0XG5cbiAgLy8gNi4gSWYgZ2xvYmFsT2JqZWN0IGlzIGEgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIG9iamVjdCwgdGhlbiBzZXRcbiAgLy8gcmVxdWVzdFx1MjAxOXMgc2VydmljZS13b3JrZXJzIG1vZGUgdG8gXCJub25lXCIuXG4gIGlmIChnbG9iYWxPYmplY3Q/LmNvbnN0cnVjdG9yPy5uYW1lID09PSAnU2VydmljZVdvcmtlckdsb2JhbFNjb3BlJykge1xuICAgIHJlcXVlc3Quc2VydmljZVdvcmtlcnMgPSAnbm9uZSdcbiAgfVxuXG4gIC8vIDcuIExldCByZXNwb25zZU9iamVjdCBiZSBudWxsLlxuICBsZXQgcmVzcG9uc2VPYmplY3QgPSBudWxsXG5cbiAgLy8gOC4gTGV0IHJlbGV2YW50UmVhbG0gYmUgdGhpc1x1MjAxOXMgcmVsZXZhbnQgUmVhbG0uXG4gIGNvbnN0IHJlbGV2YW50UmVhbG0gPSBudWxsXG5cbiAgLy8gOS4gTGV0IGxvY2FsbHlBYm9ydGVkIGJlIGZhbHNlLlxuICBsZXQgbG9jYWxseUFib3J0ZWQgPSBmYWxzZVxuXG4gIC8vIDEwLiBMZXQgY29udHJvbGxlciBiZSBudWxsLlxuICBsZXQgY29udHJvbGxlciA9IG51bGxcblxuICAvLyAxMS4gQWRkIHRoZSBmb2xsb3dpbmcgYWJvcnQgc3RlcHMgdG8gcmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsOlxuICBhZGRBYm9ydExpc3RlbmVyKFxuICAgIHJlcXVlc3RPYmplY3Quc2lnbmFsLFxuICAgICgpID0+IHtcbiAgICAgIC8vIDEuIFNldCBsb2NhbGx5QWJvcnRlZCB0byB0cnVlLlxuICAgICAgbG9jYWxseUFib3J0ZWQgPSB0cnVlXG5cbiAgICAgIC8vIDIuIEFzc2VydDogY29udHJvbGxlciBpcyBub24tbnVsbC5cbiAgICAgIGFzc2VydChjb250cm9sbGVyICE9IG51bGwpXG5cbiAgICAgIC8vIDMuIEFib3J0IGNvbnRyb2xsZXIgd2l0aCByZXF1ZXN0T2JqZWN0XHUyMDE5cyBzaWduYWxcdTIwMTlzIGFib3J0IHJlYXNvbi5cbiAgICAgIGNvbnRyb2xsZXIuYWJvcnQocmVxdWVzdE9iamVjdC5zaWduYWwucmVhc29uKVxuXG4gICAgICAvLyA0LiBBYm9ydCB0aGUgZmV0Y2goKSBjYWxsIHdpdGggcCwgcmVxdWVzdCwgcmVzcG9uc2VPYmplY3QsXG4gICAgICAvLyAgICBhbmQgcmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsXHUyMDE5cyBhYm9ydCByZWFzb24uXG4gICAgICBhYm9ydEZldGNoKHAsIHJlcXVlc3QsIHJlc3BvbnNlT2JqZWN0LCByZXF1ZXN0T2JqZWN0LnNpZ25hbC5yZWFzb24pXG4gICAgfVxuICApXG5cbiAgLy8gMTIuIExldCBoYW5kbGVGZXRjaERvbmUgZ2l2ZW4gcmVzcG9uc2UgcmVzcG9uc2UgYmUgdG8gZmluYWxpemUgYW5kXG4gIC8vIHJlcG9ydCB0aW1pbmcgd2l0aCByZXNwb25zZSwgZ2xvYmFsT2JqZWN0LCBhbmQgXCJmZXRjaFwiLlxuICBjb25zdCBoYW5kbGVGZXRjaERvbmUgPSAocmVzcG9uc2UpID0+XG4gICAgZmluYWxpemVBbmRSZXBvcnRUaW1pbmcocmVzcG9uc2UsICdmZXRjaCcpXG5cbiAgLy8gMTMuIFNldCBjb250cm9sbGVyIHRvIHRoZSByZXN1bHQgb2YgY2FsbGluZyBmZXRjaCBnaXZlbiByZXF1ZXN0LFxuICAvLyB3aXRoIHByb2Nlc3NSZXNwb25zZUVuZE9mQm9keSBzZXQgdG8gaGFuZGxlRmV0Y2hEb25lLCBhbmQgcHJvY2Vzc1Jlc3BvbnNlXG4gIC8vIGdpdmVuIHJlc3BvbnNlIGJlaW5nIHRoZXNlIHN1YnN0ZXBzOlxuXG4gIGNvbnN0IHByb2Nlc3NSZXNwb25zZSA9IChyZXNwb25zZSkgPT4ge1xuICAgIC8vIDEuIElmIGxvY2FsbHlBYm9ydGVkIGlzIHRydWUsIHRlcm1pbmF0ZSB0aGVzZSBzdWJzdGVwcy5cbiAgICBpZiAobG9jYWxseUFib3J0ZWQpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKVxuICAgIH1cblxuICAgIC8vIDIuIElmIHJlc3BvbnNlXHUyMDE5cyBhYm9ydGVkIGZsYWcgaXMgc2V0LCB0aGVuOlxuICAgIGlmIChyZXNwb25zZS5hYm9ydGVkKSB7XG4gICAgICAvLyAxLiBMZXQgZGVzZXJpYWxpemVkRXJyb3IgYmUgdGhlIHJlc3VsdCBvZiBkZXNlcmlhbGl6ZSBhIHNlcmlhbGl6ZWRcbiAgICAgIC8vICAgIGFib3J0IHJlYXNvbiBnaXZlbiBjb250cm9sbGVyXHUyMDE5cyBzZXJpYWxpemVkIGFib3J0IHJlYXNvbiBhbmRcbiAgICAgIC8vICAgIHJlbGV2YW50UmVhbG0uXG5cbiAgICAgIC8vIDIuIEFib3J0IHRoZSBmZXRjaCgpIGNhbGwgd2l0aCBwLCByZXF1ZXN0LCByZXNwb25zZU9iamVjdCwgYW5kXG4gICAgICAvLyAgICBkZXNlcmlhbGl6ZWRFcnJvci5cblxuICAgICAgYWJvcnRGZXRjaChwLCByZXF1ZXN0LCByZXNwb25zZU9iamVjdCwgY29udHJvbGxlci5zZXJpYWxpemVkQWJvcnRSZWFzb24pXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgICB9XG5cbiAgICAvLyAzLiBJZiByZXNwb25zZSBpcyBhIG5ldHdvcmsgZXJyb3IsIHRoZW4gcmVqZWN0IHAgd2l0aCBhIFR5cGVFcnJvclxuICAgIC8vIGFuZCB0ZXJtaW5hdGUgdGhlc2Ugc3Vic3RlcHMuXG4gICAgaWYgKHJlc3BvbnNlLnR5cGUgPT09ICdlcnJvcicpIHtcbiAgICAgIHAucmVqZWN0KFxuICAgICAgICBPYmplY3QuYXNzaWduKG5ldyBUeXBlRXJyb3IoJ2ZldGNoIGZhaWxlZCcpLCB7IGNhdXNlOiByZXNwb25zZS5lcnJvciB9KVxuICAgICAgKVxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgfVxuXG4gICAgLy8gNC4gU2V0IHJlc3BvbnNlT2JqZWN0IHRvIHRoZSByZXN1bHQgb2YgY3JlYXRpbmcgYSBSZXNwb25zZSBvYmplY3QsXG4gICAgLy8gZ2l2ZW4gcmVzcG9uc2UsIFwiaW1tdXRhYmxlXCIsIGFuZCByZWxldmFudFJlYWxtLlxuICAgIHJlc3BvbnNlT2JqZWN0ID0gbmV3IFJlc3BvbnNlKClcbiAgICByZXNwb25zZU9iamVjdFtrU3RhdGVdID0gcmVzcG9uc2VcbiAgICByZXNwb25zZU9iamVjdFtrUmVhbG1dID0gcmVsZXZhbnRSZWFsbVxuICAgIHJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrSGVhZGVyc0xpc3RdID0gcmVzcG9uc2UuaGVhZGVyc0xpc3RcbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba0d1YXJkXSA9ICdpbW11dGFibGUnXG4gICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tSZWFsbV0gPSByZWxldmFudFJlYWxtXG5cbiAgICAvLyA1LiBSZXNvbHZlIHAgd2l0aCByZXNwb25zZU9iamVjdC5cbiAgICBwLnJlc29sdmUocmVzcG9uc2VPYmplY3QpXG4gIH1cblxuICBjb250cm9sbGVyID0gZmV0Y2hpbmcoe1xuICAgIHJlcXVlc3QsXG4gICAgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5OiBoYW5kbGVGZXRjaERvbmUsXG4gICAgcHJvY2Vzc1Jlc3BvbnNlLFxuICAgIGRpc3BhdGNoZXI6IGluaXQuZGlzcGF0Y2hlciA/PyBnZXRHbG9iYWxEaXNwYXRjaGVyKCkgLy8gdW5kaWNpXG4gIH0pXG5cbiAgLy8gMTQuIFJldHVybiBwLlxuICByZXR1cm4gcC5wcm9taXNlXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmaW5hbGl6ZS1hbmQtcmVwb3J0LXRpbWluZ1xuZnVuY3Rpb24gZmluYWxpemVBbmRSZXBvcnRUaW1pbmcgKHJlc3BvbnNlLCBpbml0aWF0b3JUeXBlID0gJ290aGVyJykge1xuICAvLyAxLiBJZiByZXNwb25zZSBpcyBhbiBhYm9ydGVkIG5ldHdvcmsgZXJyb3IsIHRoZW4gcmV0dXJuLlxuICBpZiAocmVzcG9uc2UudHlwZSA9PT0gJ2Vycm9yJyAmJiByZXNwb25zZS5hYm9ydGVkKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICAvLyAyLiBJZiByZXNwb25zZVx1MjAxOXMgVVJMIGxpc3QgaXMgbnVsbCBvciBlbXB0eSwgdGhlbiByZXR1cm4uXG4gIGlmICghcmVzcG9uc2UudXJsTGlzdD8ubGVuZ3RoKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICAvLyAzLiBMZXQgb3JpZ2luYWxVUkwgYmUgcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0WzBdLlxuICBjb25zdCBvcmlnaW5hbFVSTCA9IHJlc3BvbnNlLnVybExpc3RbMF1cblxuICAvLyA0LiBMZXQgdGltaW5nSW5mbyBiZSByZXNwb25zZVx1MjAxOXMgdGltaW5nIGluZm8uXG4gIGxldCB0aW1pbmdJbmZvID0gcmVzcG9uc2UudGltaW5nSW5mb1xuXG4gIC8vIDUuIExldCBjYWNoZVN0YXRlIGJlIHJlc3BvbnNlXHUyMDE5cyBjYWNoZSBzdGF0ZS5cbiAgbGV0IGNhY2hlU3RhdGUgPSByZXNwb25zZS5jYWNoZVN0YXRlXG5cbiAgLy8gNi4gSWYgb3JpZ2luYWxVUkxcdTIwMTlzIHNjaGVtZSBpcyBub3QgYW4gSFRUUChTKSBzY2hlbWUsIHRoZW4gcmV0dXJuLlxuICBpZiAoIXVybElzSHR0cEh0dHBzU2NoZW1lKG9yaWdpbmFsVVJMKSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgLy8gNy4gSWYgdGltaW5nSW5mbyBpcyBudWxsLCB0aGVuIHJldHVybi5cbiAgaWYgKHRpbWluZ0luZm8gPT09IG51bGwpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIC8vIDguIElmIHJlc3BvbnNlXHUyMDE5cyB0aW1pbmcgYWxsb3cgcGFzc2VkIGZsYWcgaXMgbm90IHNldCwgdGhlbjpcbiAgaWYgKCFyZXNwb25zZS50aW1pbmdBbGxvd1Bhc3NlZCkge1xuICAgIC8vICAxLiBTZXQgdGltaW5nSW5mbyB0byBhIHRoZSByZXN1bHQgb2YgY3JlYXRpbmcgYW4gb3BhcXVlIHRpbWluZyBpbmZvIGZvciB0aW1pbmdJbmZvLlxuICAgIHRpbWluZ0luZm8gPSBjcmVhdGVPcGFxdWVUaW1pbmdJbmZvKHtcbiAgICAgIHN0YXJ0VGltZTogdGltaW5nSW5mby5zdGFydFRpbWVcbiAgICB9KVxuXG4gICAgLy8gIDIuIFNldCBjYWNoZVN0YXRlIHRvIHRoZSBlbXB0eSBzdHJpbmcuXG4gICAgY2FjaGVTdGF0ZSA9ICcnXG4gIH1cblxuICAvLyA5LiBTZXQgdGltaW5nSW5mb1x1MjAxOXMgZW5kIHRpbWUgdG8gdGhlIGNvYXJzZW5lZCBzaGFyZWQgY3VycmVudCB0aW1lXG4gIC8vIGdpdmVuIGdsb2JhbFx1MjAxOXMgcmVsZXZhbnQgc2V0dGluZ3Mgb2JqZWN0XHUyMDE5cyBjcm9zcy1vcmlnaW4gaXNvbGF0ZWRcbiAgLy8gY2FwYWJpbGl0eS5cbiAgLy8gVE9ETzogZ2l2ZW4gZ2xvYmFsXHUyMDE5cyByZWxldmFudCBzZXR0aW5ncyBvYmplY3RcdTIwMTlzIGNyb3NzLW9yaWdpbiBpc29sYXRlZFxuICAvLyBjYXBhYmlsaXR5P1xuICB0aW1pbmdJbmZvLmVuZFRpbWUgPSBjb2Fyc2VuZWRTaGFyZWRDdXJyZW50VGltZSgpXG5cbiAgLy8gMTAuIFNldCByZXNwb25zZVx1MjAxOXMgdGltaW5nIGluZm8gdG8gdGltaW5nSW5mby5cbiAgcmVzcG9uc2UudGltaW5nSW5mbyA9IHRpbWluZ0luZm9cblxuICAvLyAxMS4gTWFyayByZXNvdXJjZSB0aW1pbmcgZm9yIHRpbWluZ0luZm8sIG9yaWdpbmFsVVJMLCBpbml0aWF0b3JUeXBlLFxuICAvLyBnbG9iYWwsIGFuZCBjYWNoZVN0YXRlLlxuICBtYXJrUmVzb3VyY2VUaW1pbmcoXG4gICAgdGltaW5nSW5mbyxcbiAgICBvcmlnaW5hbFVSTCxcbiAgICBpbml0aWF0b3JUeXBlLFxuICAgIGdsb2JhbFRoaXMsXG4gICAgY2FjaGVTdGF0ZVxuICApXG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9yZXNvdXJjZS10aW1pbmcvI2Rmbi1tYXJrLXJlc291cmNlLXRpbWluZ1xuZnVuY3Rpb24gbWFya1Jlc291cmNlVGltaW5nICh0aW1pbmdJbmZvLCBvcmlnaW5hbFVSTCwgaW5pdGlhdG9yVHlwZSwgZ2xvYmFsVGhpcywgY2FjaGVTdGF0ZSkge1xuICBpZiAobm9kZU1ham9yID4gMTggfHwgKG5vZGVNYWpvciA9PT0gMTggJiYgbm9kZU1pbm9yID49IDIpKSB7XG4gICAgcGVyZm9ybWFuY2UubWFya1Jlc291cmNlVGltaW5nKHRpbWluZ0luZm8sIG9yaWdpbmFsVVJMLmhyZWYsIGluaXRpYXRvclR5cGUsIGdsb2JhbFRoaXMsIGNhY2hlU3RhdGUpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2Fib3J0LWZldGNoXG5mdW5jdGlvbiBhYm9ydEZldGNoIChwLCByZXF1ZXN0LCByZXNwb25zZU9iamVjdCwgZXJyb3IpIHtcbiAgLy8gTm90ZTogQWJvcnRTaWduYWwucmVhc29uIHdhcyBhZGRlZCBpbiBub2RlIHYxNy4yLjBcbiAgLy8gd2hpY2ggd291bGQgZ2l2ZSB1cyBhbiB1bmRlZmluZWQgZXJyb3IgdG8gcmVqZWN0IHdpdGguXG4gIC8vIFJlbW92ZSB0aGlzIG9uY2Ugbm9kZSB2MTYgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC5cbiAgaWYgKCFlcnJvcikge1xuICAgIGVycm9yID0gbmV3IERPTUV4Y2VwdGlvbignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZC4nLCAnQWJvcnRFcnJvcicpXG4gIH1cblxuICAvLyAxLiBSZWplY3QgcHJvbWlzZSB3aXRoIGVycm9yLlxuICBwLnJlamVjdChlcnJvcilcblxuICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vdCBudWxsIGFuZCBpcyByZWFkYWJsZSwgdGhlbiBjYW5jZWwgcmVxdWVzdFx1MjAxOXNcbiAgLy8gYm9keSB3aXRoIGVycm9yLlxuICBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwgJiYgaXNSZWFkYWJsZShyZXF1ZXN0LmJvZHk/LnN0cmVhbSkpIHtcbiAgICByZXF1ZXN0LmJvZHkuc3RyZWFtLmNhbmNlbChlcnJvcikuY2F0Y2goKGVycikgPT4ge1xuICAgICAgaWYgKGVyci5jb2RlID09PSAnRVJSX0lOVkFMSURfU1RBVEUnKSB7XG4gICAgICAgIC8vIE5vZGUgYnVnP1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH0pXG4gIH1cblxuICAvLyAzLiBJZiByZXNwb25zZU9iamVjdCBpcyBudWxsLCB0aGVuIHJldHVybi5cbiAgaWYgKHJlc3BvbnNlT2JqZWN0ID09IG51bGwpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIC8vIDQuIExldCByZXNwb25zZSBiZSByZXNwb25zZU9iamVjdFx1MjAxOXMgcmVzcG9uc2UuXG4gIGNvbnN0IHJlc3BvbnNlID0gcmVzcG9uc2VPYmplY3Rba1N0YXRlXVxuXG4gIC8vIDUuIElmIHJlc3BvbnNlXHUyMDE5cyBib2R5IGlzIG5vdCBudWxsIGFuZCBpcyByZWFkYWJsZSwgdGhlbiBlcnJvciByZXNwb25zZVx1MjAxOXNcbiAgLy8gYm9keSB3aXRoIGVycm9yLlxuICBpZiAocmVzcG9uc2UuYm9keSAhPSBudWxsICYmIGlzUmVhZGFibGUocmVzcG9uc2UuYm9keT8uc3RyZWFtKSkge1xuICAgIHJlc3BvbnNlLmJvZHkuc3RyZWFtLmNhbmNlbChlcnJvcikuY2F0Y2goKGVycikgPT4ge1xuICAgICAgaWYgKGVyci5jb2RlID09PSAnRVJSX0lOVkFMSURfU1RBVEUnKSB7XG4gICAgICAgIC8vIE5vZGUgYnVnP1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH0pXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2ZldGNoaW5nXG5mdW5jdGlvbiBmZXRjaGluZyAoe1xuICByZXF1ZXN0LFxuICBwcm9jZXNzUmVxdWVzdEJvZHlDaHVua0xlbmd0aCxcbiAgcHJvY2Vzc1JlcXVlc3RFbmRPZkJvZHksXG4gIHByb2Nlc3NSZXNwb25zZSxcbiAgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5LFxuICBwcm9jZXNzUmVzcG9uc2VDb25zdW1lQm9keSxcbiAgdXNlUGFyYWxsZWxRdWV1ZSA9IGZhbHNlLFxuICBkaXNwYXRjaGVyIC8vIHVuZGljaVxufSkge1xuICAvLyAxLiBMZXQgdGFza0Rlc3RpbmF0aW9uIGJlIG51bGwuXG4gIGxldCB0YXNrRGVzdGluYXRpb24gPSBudWxsXG5cbiAgLy8gMi4gTGV0IGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5IGJlIGZhbHNlLlxuICBsZXQgY3Jvc3NPcmlnaW5Jc29sYXRlZENhcGFiaWxpdHkgPSBmYWxzZVxuXG4gIC8vIDMuIElmIHJlcXVlc3RcdTIwMTlzIGNsaWVudCBpcyBub24tbnVsbCwgdGhlbjpcbiAgaWYgKHJlcXVlc3QuY2xpZW50ICE9IG51bGwpIHtcbiAgICAvLyAxLiBTZXQgdGFza0Rlc3RpbmF0aW9uIHRvIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgZ2xvYmFsIG9iamVjdC5cbiAgICB0YXNrRGVzdGluYXRpb24gPSByZXF1ZXN0LmNsaWVudC5nbG9iYWxPYmplY3RcblxuICAgIC8vIDIuIFNldCBjcm9zc09yaWdpbklzb2xhdGVkQ2FwYWJpbGl0eSB0byByZXF1ZXN0XHUyMDE5cyBjbGllbnRcdTIwMTlzIGNyb3NzLW9yaWdpblxuICAgIC8vIGlzb2xhdGVkIGNhcGFiaWxpdHkuXG4gICAgY3Jvc3NPcmlnaW5Jc29sYXRlZENhcGFiaWxpdHkgPVxuICAgICAgcmVxdWVzdC5jbGllbnQuY3Jvc3NPcmlnaW5Jc29sYXRlZENhcGFiaWxpdHlcbiAgfVxuXG4gIC8vIDQuIElmIHVzZVBhcmFsbGVsUXVldWUgaXMgdHJ1ZSwgdGhlbiBzZXQgdGFza0Rlc3RpbmF0aW9uIHRvIHRoZSByZXN1bHQgb2ZcbiAgLy8gc3RhcnRpbmcgYSBuZXcgcGFyYWxsZWwgcXVldWUuXG4gIC8vIFRPRE9cblxuICAvLyA1LiBMZXQgdGltaW5nSW5mbyBiZSBhIG5ldyBmZXRjaCB0aW1pbmcgaW5mbyB3aG9zZSBzdGFydCB0aW1lIGFuZFxuICAvLyBwb3N0LXJlZGlyZWN0IHN0YXJ0IHRpbWUgYXJlIHRoZSBjb2Fyc2VuZWQgc2hhcmVkIGN1cnJlbnQgdGltZSBnaXZlblxuICAvLyBjcm9zc09yaWdpbklzb2xhdGVkQ2FwYWJpbGl0eS5cbiAgY29uc3QgY3VycmVuVGltZSA9IGNvYXJzZW5lZFNoYXJlZEN1cnJlbnRUaW1lKGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5KVxuICBjb25zdCB0aW1pbmdJbmZvID0gY3JlYXRlT3BhcXVlVGltaW5nSW5mbyh7XG4gICAgc3RhcnRUaW1lOiBjdXJyZW5UaW1lXG4gIH0pXG5cbiAgLy8gNi4gTGV0IGZldGNoUGFyYW1zIGJlIGEgbmV3IGZldGNoIHBhcmFtcyB3aG9zZVxuICAvLyByZXF1ZXN0IGlzIHJlcXVlc3QsXG4gIC8vIHRpbWluZyBpbmZvIGlzIHRpbWluZ0luZm8sXG4gIC8vIHByb2Nlc3MgcmVxdWVzdCBib2R5IGNodW5rIGxlbmd0aCBpcyBwcm9jZXNzUmVxdWVzdEJvZHlDaHVua0xlbmd0aCxcbiAgLy8gcHJvY2VzcyByZXF1ZXN0IGVuZC1vZi1ib2R5IGlzIHByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5LFxuICAvLyBwcm9jZXNzIHJlc3BvbnNlIGlzIHByb2Nlc3NSZXNwb25zZSxcbiAgLy8gcHJvY2VzcyByZXNwb25zZSBjb25zdW1lIGJvZHkgaXMgcHJvY2Vzc1Jlc3BvbnNlQ29uc3VtZUJvZHksXG4gIC8vIHByb2Nlc3MgcmVzcG9uc2UgZW5kLW9mLWJvZHkgaXMgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5LFxuICAvLyB0YXNrIGRlc3RpbmF0aW9uIGlzIHRhc2tEZXN0aW5hdGlvbixcbiAgLy8gYW5kIGNyb3NzLW9yaWdpbiBpc29sYXRlZCBjYXBhYmlsaXR5IGlzIGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5LlxuICBjb25zdCBmZXRjaFBhcmFtcyA9IHtcbiAgICBjb250cm9sbGVyOiBuZXcgRmV0Y2goZGlzcGF0Y2hlciksXG4gICAgcmVxdWVzdCxcbiAgICB0aW1pbmdJbmZvLFxuICAgIHByb2Nlc3NSZXF1ZXN0Qm9keUNodW5rTGVuZ3RoLFxuICAgIHByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5LFxuICAgIHByb2Nlc3NSZXNwb25zZSxcbiAgICBwcm9jZXNzUmVzcG9uc2VDb25zdW1lQm9keSxcbiAgICBwcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHksXG4gICAgdGFza0Rlc3RpbmF0aW9uLFxuICAgIGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5XG4gIH1cblxuICAvLyA3LiBJZiByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIGEgYnl0ZSBzZXF1ZW5jZSwgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgYm9keSB0b1xuICAvLyAgICByZXF1ZXN0XHUyMDE5cyBib2R5IGFzIGEgYm9keS5cbiAgLy8gTk9URTogU2luY2UgZmV0Y2hpbmcgaXMgb25seSBjYWxsZWQgZnJvbSBmZXRjaCwgYm9keSBzaG91bGQgYWxyZWFkeSBiZVxuICAvLyBleHRyYWN0ZWQuXG4gIGFzc2VydCghcmVxdWVzdC5ib2R5IHx8IHJlcXVlc3QuYm9keS5zdHJlYW0pXG5cbiAgLy8gOC4gSWYgcmVxdWVzdFx1MjAxOXMgd2luZG93IGlzIFwiY2xpZW50XCIsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHdpbmRvdyB0byByZXF1ZXN0XHUyMDE5c1xuICAvLyBjbGllbnQsIGlmIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgZ2xvYmFsIG9iamVjdCBpcyBhIFdpbmRvdyBvYmplY3Q7IG90aGVyd2lzZVxuICAvLyBcIm5vLXdpbmRvd1wiLlxuICBpZiAocmVxdWVzdC53aW5kb3cgPT09ICdjbGllbnQnKSB7XG4gICAgLy8gVE9ETzogV2hhdCBpZiByZXF1ZXN0LmNsaWVudCBpcyBudWxsP1xuICAgIHJlcXVlc3Qud2luZG93ID1cbiAgICAgIHJlcXVlc3QuY2xpZW50Py5nbG9iYWxPYmplY3Q/LmNvbnN0cnVjdG9yPy5uYW1lID09PSAnV2luZG93J1xuICAgICAgICA/IHJlcXVlc3QuY2xpZW50XG4gICAgICAgIDogJ25vLXdpbmRvdydcbiAgfVxuXG4gIC8vIDkuIElmIHJlcXVlc3RcdTIwMTlzIG9yaWdpbiBpcyBcImNsaWVudFwiLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyBvcmlnaW4gdG8gcmVxdWVzdFx1MjAxOXNcbiAgLy8gY2xpZW50XHUyMDE5cyBvcmlnaW4uXG4gIGlmIChyZXF1ZXN0Lm9yaWdpbiA9PT0gJ2NsaWVudCcpIHtcbiAgICAvLyBUT0RPOiBXaGF0IGlmIHJlcXVlc3QuY2xpZW50IGlzIG51bGw/XG4gICAgcmVxdWVzdC5vcmlnaW4gPSByZXF1ZXN0LmNsaWVudD8ub3JpZ2luXG4gIH1cblxuICAvLyAxMC4gSWYgYWxsIG9mIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgdHJ1ZTpcbiAgLy8gVE9ET1xuXG4gIC8vIDExLiBJZiByZXF1ZXN0XHUyMDE5cyBwb2xpY3kgY29udGFpbmVyIGlzIFwiY2xpZW50XCIsIHRoZW46XG4gIGlmIChyZXF1ZXN0LnBvbGljeUNvbnRhaW5lciA9PT0gJ2NsaWVudCcpIHtcbiAgICAvLyAxLiBJZiByZXF1ZXN0XHUyMDE5cyBjbGllbnQgaXMgbm9uLW51bGwsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHBvbGljeVxuICAgIC8vIGNvbnRhaW5lciB0byBhIGNsb25lIG9mIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgcG9saWN5IGNvbnRhaW5lci4gW0hUTUxdXG4gICAgaWYgKHJlcXVlc3QuY2xpZW50ICE9IG51bGwpIHtcbiAgICAgIHJlcXVlc3QucG9saWN5Q29udGFpbmVyID0gY2xvbmVQb2xpY3lDb250YWluZXIoXG4gICAgICAgIHJlcXVlc3QuY2xpZW50LnBvbGljeUNvbnRhaW5lclxuICAgICAgKVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAyLiBPdGhlcndpc2UsIHNldCByZXF1ZXN0XHUyMDE5cyBwb2xpY3kgY29udGFpbmVyIHRvIGEgbmV3IHBvbGljeVxuICAgICAgLy8gY29udGFpbmVyLlxuICAgICAgcmVxdWVzdC5wb2xpY3lDb250YWluZXIgPSBtYWtlUG9saWN5Q29udGFpbmVyKClcbiAgICB9XG4gIH1cblxuICAvLyAxMi4gSWYgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBgQWNjZXB0YCwgdGhlbjpcbiAgaWYgKCFyZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdhY2NlcHQnKSkge1xuICAgIC8vIDEuIExldCB2YWx1ZSBiZSBgKi8qYC5cbiAgICBjb25zdCB2YWx1ZSA9ICcqLyonXG5cbiAgICAvLyAyLiBBIHVzZXIgYWdlbnQgc2hvdWxkIHNldCB2YWx1ZSB0byB0aGUgZmlyc3QgbWF0Y2hpbmcgc3RhdGVtZW50LCBpZlxuICAgIC8vIGFueSwgc3dpdGNoaW5nIG9uIHJlcXVlc3RcdTIwMTlzIGRlc3RpbmF0aW9uOlxuICAgIC8vIFwiZG9jdW1lbnRcIlxuICAgIC8vIFwiZnJhbWVcIlxuICAgIC8vIFwiaWZyYW1lXCJcbiAgICAvLyBgdGV4dC9odG1sLGFwcGxpY2F0aW9uL3hodG1sK3htbCxhcHBsaWNhdGlvbi94bWw7cT0wLjksKi8qO3E9MC44YFxuICAgIC8vIFwiaW1hZ2VcIlxuICAgIC8vIGBpbWFnZS9wbmcsaW1hZ2Uvc3ZnK3htbCxpbWFnZS8qO3E9MC44LCovKjtxPTAuNWBcbiAgICAvLyBcInN0eWxlXCJcbiAgICAvLyBgdGV4dC9jc3MsKi8qO3E9MC4xYFxuICAgIC8vIFRPRE9cblxuICAgIC8vIDMuIEFwcGVuZCBgQWNjZXB0YC92YWx1ZSB0byByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnYWNjZXB0JywgdmFsdWUpXG4gIH1cblxuICAvLyAxMy4gSWYgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBgQWNjZXB0LUxhbmd1YWdlYCwgdGhlblxuICAvLyB1c2VyIGFnZW50cyBzaG91bGQgYXBwZW5kIGBBY2NlcHQtTGFuZ3VhZ2VgL2FuIGFwcHJvcHJpYXRlIHZhbHVlIHRvXG4gIC8vIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAoIXJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2FjY2VwdC1sYW5ndWFnZScpKSB7XG4gICAgcmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ2FjY2VwdC1sYW5ndWFnZScsICcqJylcbiAgfVxuXG4gIC8vIDE0LiBJZiByZXF1ZXN0XHUyMDE5cyBwcmlvcml0eSBpcyBudWxsLCB0aGVuIHVzZSByZXF1ZXN0XHUyMDE5cyBpbml0aWF0b3IgYW5kXG4gIC8vIGRlc3RpbmF0aW9uIGFwcHJvcHJpYXRlbHkgaW4gc2V0dGluZyByZXF1ZXN0XHUyMDE5cyBwcmlvcml0eSB0byBhXG4gIC8vIHVzZXItYWdlbnQtZGVmaW5lZCBvYmplY3QuXG4gIGlmIChyZXF1ZXN0LnByaW9yaXR5ID09PSBudWxsKSB7XG4gICAgLy8gVE9ET1xuICB9XG5cbiAgLy8gMTUuIElmIHJlcXVlc3QgaXMgYSBzdWJyZXNvdXJjZSByZXF1ZXN0LCB0aGVuOlxuICBpZiAoc3VicmVzb3VyY2VTZXQuaGFzKHJlcXVlc3QuZGVzdGluYXRpb24pKSB7XG4gICAgLy8gVE9ET1xuICB9XG5cbiAgLy8gMTYuIFJ1biBtYWluIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuICBtYWluRmV0Y2goZmV0Y2hQYXJhbXMpXG4gICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLnRlcm1pbmF0ZShlcnIpXG4gICAgfSlcblxuICAvLyAxNy4gUmV0dXJuIGZldGNoUGFyYW0ncyBjb250cm9sbGVyXG4gIHJldHVybiBmZXRjaFBhcmFtcy5jb250cm9sbGVyXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LW1haW4tZmV0Y2hcbmFzeW5jIGZ1bmN0aW9uIG1haW5GZXRjaCAoZmV0Y2hQYXJhbXMsIHJlY3Vyc2l2ZSA9IGZhbHNlKSB7XG4gIC8vIDEuIExldCByZXF1ZXN0IGJlIGZldGNoUGFyYW1zXHUyMDE5cyByZXF1ZXN0LlxuICBjb25zdCByZXF1ZXN0ID0gZmV0Y2hQYXJhbXMucmVxdWVzdFxuXG4gIC8vIDIuIExldCByZXNwb25zZSBiZSBudWxsLlxuICBsZXQgcmVzcG9uc2UgPSBudWxsXG5cbiAgLy8gMy4gSWYgcmVxdWVzdFx1MjAxOXMgbG9jYWwtVVJMcy1vbmx5IGZsYWcgaXMgc2V0IGFuZCByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTCBpc1xuICAvLyBub3QgbG9jYWwsIHRoZW4gc2V0IHJlc3BvbnNlIHRvIGEgbmV0d29yayBlcnJvci5cbiAgaWYgKHJlcXVlc3QubG9jYWxVUkxzT25seSAmJiAhdXJsSXNMb2NhbChyZXF1ZXN0Q3VycmVudFVSTChyZXF1ZXN0KSkpIHtcbiAgICByZXNwb25zZSA9IG1ha2VOZXR3b3JrRXJyb3IoJ2xvY2FsIFVSTHMgb25seScpXG4gIH1cblxuICAvLyA0LiBSdW4gcmVwb3J0IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IHZpb2xhdGlvbnMgZm9yIHJlcXVlc3QuXG4gIC8vIFRPRE9cblxuICAvLyA1LiBVcGdyYWRlIHJlcXVlc3QgdG8gYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwsIGlmIGFwcHJvcHJpYXRlLlxuICB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwocmVxdWVzdClcblxuICAvLyA2LiBJZiBzaG91bGQgcmVxdWVzdCBiZSBibG9ja2VkIGR1ZSB0byBhIGJhZCBwb3J0LCBzaG91bGQgZmV0Y2hpbmcgcmVxdWVzdFxuICAvLyBiZSBibG9ja2VkIGFzIG1peGVkIGNvbnRlbnQsIG9yIHNob3VsZCByZXF1ZXN0IGJlIGJsb2NrZWQgYnkgQ29udGVudFxuICAvLyBTZWN1cml0eSBQb2xpY3kgcmV0dXJucyBibG9ja2VkLCB0aGVuIHNldCByZXNwb25zZSB0byBhIG5ldHdvcmsgZXJyb3IuXG4gIGlmIChyZXF1ZXN0QmFkUG9ydChyZXF1ZXN0KSA9PT0gJ2Jsb2NrZWQnKSB7XG4gICAgcmVzcG9uc2UgPSBtYWtlTmV0d29ya0Vycm9yKCdiYWQgcG9ydCcpXG4gIH1cbiAgLy8gVE9ETzogc2hvdWxkIGZldGNoaW5nIHJlcXVlc3QgYmUgYmxvY2tlZCBhcyBtaXhlZCBjb250ZW50P1xuICAvLyBUT0RPOiBzaG91bGQgcmVxdWVzdCBiZSBibG9ja2VkIGJ5IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5P1xuXG4gIC8vIDcuIElmIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeSBpcyB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5c1xuICAvLyByZWZlcnJlciBwb2xpY3kgdG8gcmVxdWVzdFx1MjAxOXMgcG9saWN5IGNvbnRhaW5lclx1MjAxOXMgcmVmZXJyZXIgcG9saWN5LlxuICBpZiAocmVxdWVzdC5yZWZlcnJlclBvbGljeSA9PT0gJycpIHtcbiAgICByZXF1ZXN0LnJlZmVycmVyUG9saWN5ID0gcmVxdWVzdC5wb2xpY3lDb250YWluZXIucmVmZXJyZXJQb2xpY3lcbiAgfVxuXG4gIC8vIDguIElmIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIGlzIG5vdCBcIm5vLXJlZmVycmVyXCIsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzXG4gIC8vIHJlZmVycmVyIHRvIHRoZSByZXN1bHQgb2YgaW52b2tpbmcgZGV0ZXJtaW5lIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyLlxuICBpZiAocmVxdWVzdC5yZWZlcnJlciAhPT0gJ25vLXJlZmVycmVyJykge1xuICAgIHJlcXVlc3QucmVmZXJyZXIgPSBkZXRlcm1pbmVSZXF1ZXN0c1JlZmVycmVyKHJlcXVlc3QpXG4gIH1cblxuICAvLyA5LiBTZXQgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIHNjaGVtZSB0byBcImh0dHBzXCIgaWYgYWxsIG9mIHRoZSBmb2xsb3dpbmdcbiAgLy8gY29uZGl0aW9ucyBhcmUgdHJ1ZTpcbiAgLy8gLSByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTFx1MjAxOXMgc2NoZW1lIGlzIFwiaHR0cFwiXG4gIC8vIC0gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIGhvc3QgaXMgYSBkb21haW5cbiAgLy8gLSBNYXRjaGluZyByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTFx1MjAxOXMgaG9zdCBwZXIgS25vd24gSFNUUyBIb3N0IERvbWFpbiBOYW1lXG4gIC8vICAgTWF0Y2hpbmcgcmVzdWx0cyBpbiBlaXRoZXIgYSBzdXBlcmRvbWFpbiBtYXRjaCB3aXRoIGFuIGFzc2VydGVkXG4gIC8vICAgaW5jbHVkZVN1YkRvbWFpbnMgZGlyZWN0aXZlIG9yIGEgY29uZ3J1ZW50IG1hdGNoICh3aXRoIG9yIHdpdGhvdXQgYW5cbiAgLy8gICBhc3NlcnRlZCBpbmNsdWRlU3ViRG9tYWlucyBkaXJlY3RpdmUpLiBbSFNUU11cbiAgLy8gVE9ET1xuXG4gIC8vIDEwLiBJZiByZWN1cnNpdmUgaXMgZmFsc2UsIHRoZW4gcnVuIHRoZSByZW1haW5pbmcgc3RlcHMgaW4gcGFyYWxsZWwuXG4gIC8vIFRPRE9cblxuICAvLyAxMS4gSWYgcmVzcG9uc2UgaXMgbnVsbCwgdGhlbiBzZXQgcmVzcG9uc2UgdG8gdGhlIHJlc3VsdCBvZiBydW5uaW5nXG4gIC8vIHRoZSBzdGVwcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBmaXJzdCBtYXRjaGluZyBzdGF0ZW1lbnQ6XG4gIGlmIChyZXNwb25zZSA9PT0gbnVsbCkge1xuICAgIHJlc3BvbnNlID0gYXdhaXQgKGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGN1cnJlbnRVUkwgPSByZXF1ZXN0Q3VycmVudFVSTChyZXF1ZXN0KVxuXG4gICAgICBpZiAoXG4gICAgICAgIC8vIC0gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIG9yaWdpbiBpcyBzYW1lIG9yaWdpbiB3aXRoIHJlcXVlc3RcdTIwMTlzIG9yaWdpbixcbiAgICAgICAgLy8gICBhbmQgcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgaXMgXCJiYXNpY1wiXG4gICAgICAgIChzYW1lT3JpZ2luKGN1cnJlbnRVUkwsIHJlcXVlc3QudXJsKSAmJiByZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdiYXNpYycpIHx8XG4gICAgICAgIC8vIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBzY2hlbWUgaXMgXCJkYXRhXCJcbiAgICAgICAgKGN1cnJlbnRVUkwucHJvdG9jb2wgPT09ICdkYXRhOicpIHx8XG4gICAgICAgIC8vIC0gcmVxdWVzdFx1MjAxOXMgbW9kZSBpcyBcIm5hdmlnYXRlXCIgb3IgXCJ3ZWJzb2NrZXRcIlxuICAgICAgICAocmVxdWVzdC5tb2RlID09PSAnbmF2aWdhdGUnIHx8IHJlcXVlc3QubW9kZSA9PT0gJ3dlYnNvY2tldCcpXG4gICAgICApIHtcbiAgICAgICAgLy8gMS4gU2V0IHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nIHRvIFwiYmFzaWNcIi5cbiAgICAgICAgcmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID0gJ2Jhc2ljJ1xuXG4gICAgICAgIC8vIDIuIFJldHVybiB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgc2NoZW1lIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuICAgICAgICByZXR1cm4gYXdhaXQgc2NoZW1lRmV0Y2goZmV0Y2hQYXJhbXMpXG4gICAgICB9XG5cbiAgICAgIC8vIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJzYW1lLW9yaWdpblwiXG4gICAgICBpZiAocmVxdWVzdC5tb2RlID09PSAnc2FtZS1vcmlnaW4nKSB7XG4gICAgICAgIC8vIDEuIFJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKCdyZXF1ZXN0IG1vZGUgY2Fubm90IGJlIFwic2FtZS1vcmlnaW5cIicpXG4gICAgICB9XG5cbiAgICAgIC8vIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJuby1jb3JzXCJcbiAgICAgIGlmIChyZXF1ZXN0Lm1vZGUgPT09ICduby1jb3JzJykge1xuICAgICAgICAvLyAxLiBJZiByZXF1ZXN0XHUyMDE5cyByZWRpcmVjdCBtb2RlIGlzIG5vdCBcImZvbGxvd1wiLCB0aGVuIHJldHVybiBhIG5ldHdvcmtcbiAgICAgICAgLy8gZXJyb3IuXG4gICAgICAgIGlmIChyZXF1ZXN0LnJlZGlyZWN0ICE9PSAnZm9sbG93Jykge1xuICAgICAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKFxuICAgICAgICAgICAgJ3JlZGlyZWN0IG1vZGUgY2Fubm90IGJlIFwiZm9sbG93XCIgZm9yIFwibm8tY29yc1wiIHJlcXVlc3QnXG4gICAgICAgICAgKVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMi4gU2V0IHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nIHRvIFwib3BhcXVlXCIuXG4gICAgICAgIHJlcXVlc3QucmVzcG9uc2VUYWludGluZyA9ICdvcGFxdWUnXG5cbiAgICAgICAgLy8gMy4gUmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZyBzY2hlbWUgZmV0Y2ggZ2l2ZW4gZmV0Y2hQYXJhbXMuXG4gICAgICAgIHJldHVybiBhd2FpdCBzY2hlbWVGZXRjaChmZXRjaFBhcmFtcylcbiAgICAgIH1cblxuICAgICAgLy8gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIHNjaGVtZSBpcyBub3QgYW4gSFRUUChTKSBzY2hlbWVcbiAgICAgIGlmICghdXJsSXNIdHRwSHR0cHNTY2hlbWUocmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCkpKSB7XG4gICAgICAgIC8vIFJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKCdVUkwgc2NoZW1lIG11c3QgYmUgYSBIVFRQKFMpIHNjaGVtZScpXG4gICAgICB9XG5cbiAgICAgIC8vIC0gcmVxdWVzdFx1MjAxOXMgdXNlLUNPUlMtcHJlZmxpZ2h0IGZsYWcgaXMgc2V0XG4gICAgICAvLyAtIHJlcXVlc3RcdTIwMTlzIHVuc2FmZS1yZXF1ZXN0IGZsYWcgaXMgc2V0IGFuZCBlaXRoZXIgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIGlzXG4gICAgICAvLyAgIG5vdCBhIENPUlMtc2FmZWxpc3RlZCBtZXRob2Qgb3IgQ09SUy11bnNhZmUgcmVxdWVzdC1oZWFkZXIgbmFtZXMgd2l0aFxuICAgICAgLy8gICByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBpcyBub3QgZW1wdHlcbiAgICAgIC8vICAgIDEuIFNldCByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyB0byBcImNvcnNcIi5cbiAgICAgIC8vICAgIDIuIExldCBjb3JzV2l0aFByZWZsaWdodFJlc3BvbnNlIGJlIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQIGZldGNoXG4gICAgICAvLyAgICBnaXZlbiBmZXRjaFBhcmFtcyBhbmQgdHJ1ZS5cbiAgICAgIC8vICAgIDMuIElmIGNvcnNXaXRoUHJlZmxpZ2h0UmVzcG9uc2UgaXMgYSBuZXR3b3JrIGVycm9yLCB0aGVuIGNsZWFyIGNhY2hlXG4gICAgICAvLyAgICBlbnRyaWVzIHVzaW5nIHJlcXVlc3QuXG4gICAgICAvLyAgICA0LiBSZXR1cm4gY29yc1dpdGhQcmVmbGlnaHRSZXNwb25zZS5cbiAgICAgIC8vIFRPRE9cblxuICAgICAgLy8gT3RoZXJ3aXNlXG4gICAgICAvLyAgICAxLiBTZXQgcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgdG8gXCJjb3JzXCIuXG4gICAgICByZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPSAnY29ycydcblxuICAgICAgLy8gICAgMi4gUmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuICAgICAgcmV0dXJuIGF3YWl0IGh0dHBGZXRjaChmZXRjaFBhcmFtcylcbiAgICB9KSgpXG4gIH1cblxuICAvLyAxMi4gSWYgcmVjdXJzaXZlIGlzIHRydWUsIHRoZW4gcmV0dXJuIHJlc3BvbnNlLlxuICBpZiAocmVjdXJzaXZlKSB7XG4gICAgcmV0dXJuIHJlc3BvbnNlXG4gIH1cblxuICAvLyAxMy4gSWYgcmVzcG9uc2UgaXMgbm90IGEgbmV0d29yayBlcnJvciBhbmQgcmVzcG9uc2UgaXMgbm90IGEgZmlsdGVyZWRcbiAgLy8gcmVzcG9uc2UsIHRoZW46XG4gIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDAgJiYgIXJlc3BvbnNlLmludGVybmFsUmVzcG9uc2UpIHtcbiAgICAvLyBJZiByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBpcyBcImNvcnNcIiwgdGhlbjpcbiAgICBpZiAocmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnY29ycycpIHtcbiAgICAgIC8vIDEuIExldCBoZWFkZXJOYW1lcyBiZSB0aGUgcmVzdWx0IG9mIGV4dHJhY3RpbmcgaGVhZGVyIGxpc3QgdmFsdWVzXG4gICAgICAvLyBnaXZlbiBgQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnNgIGFuZCByZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICAvLyBUT0RPXG4gICAgICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyBjcmVkZW50aWFscyBtb2RlIGlzIG5vdCBcImluY2x1ZGVcIiBhbmQgaGVhZGVyTmFtZXNcbiAgICAgIC8vIGNvbnRhaW5zIGAqYCwgdGhlbiBzZXQgcmVzcG9uc2VcdTIwMTlzIENPUlMtZXhwb3NlZCBoZWFkZXItbmFtZSBsaXN0IHRvXG4gICAgICAvLyBhbGwgdW5pcXVlIGhlYWRlciBuYW1lcyBpbiByZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICAvLyBUT0RPXG4gICAgICAvLyAzLiBPdGhlcndpc2UsIGlmIGhlYWRlck5hbWVzIGlzIG5vdCBudWxsIG9yIGZhaWx1cmUsIHRoZW4gc2V0XG4gICAgICAvLyByZXNwb25zZVx1MjAxOXMgQ09SUy1leHBvc2VkIGhlYWRlci1uYW1lIGxpc3QgdG8gaGVhZGVyTmFtZXMuXG4gICAgICAvLyBUT0RPXG4gICAgfVxuXG4gICAgLy8gU2V0IHJlc3BvbnNlIHRvIHRoZSBmb2xsb3dpbmcgZmlsdGVyZWQgcmVzcG9uc2Ugd2l0aCByZXNwb25zZSBhcyBpdHNcbiAgICAvLyBpbnRlcm5hbCByZXNwb25zZSwgZGVwZW5kaW5nIG9uIHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nOlxuICAgIGlmIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdiYXNpYycpIHtcbiAgICAgIHJlc3BvbnNlID0gZmlsdGVyUmVzcG9uc2UocmVzcG9uc2UsICdiYXNpYycpXG4gICAgfSBlbHNlIGlmIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdjb3JzJykge1xuICAgICAgcmVzcG9uc2UgPSBmaWx0ZXJSZXNwb25zZShyZXNwb25zZSwgJ2NvcnMnKVxuICAgIH0gZWxzZSBpZiAocmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnb3BhcXVlJykge1xuICAgICAgcmVzcG9uc2UgPSBmaWx0ZXJSZXNwb25zZShyZXNwb25zZSwgJ29wYXF1ZScpXG4gICAgfSBlbHNlIHtcbiAgICAgIGFzc2VydChmYWxzZSlcbiAgICB9XG4gIH1cblxuICAvLyAxNC4gTGV0IGludGVybmFsUmVzcG9uc2UgYmUgcmVzcG9uc2UsIGlmIHJlc3BvbnNlIGlzIGEgbmV0d29yayBlcnJvcixcbiAgLy8gYW5kIHJlc3BvbnNlXHUyMDE5cyBpbnRlcm5hbCByZXNwb25zZSBvdGhlcndpc2UuXG4gIGxldCBpbnRlcm5hbFJlc3BvbnNlID1cbiAgICByZXNwb25zZS5zdGF0dXMgPT09IDAgPyByZXNwb25zZSA6IHJlc3BvbnNlLmludGVybmFsUmVzcG9uc2VcblxuICAvLyAxNS4gSWYgaW50ZXJuYWxSZXNwb25zZVx1MjAxOXMgVVJMIGxpc3QgaXMgZW1wdHksIHRoZW4gc2V0IGl0IHRvIGEgY2xvbmUgb2ZcbiAgLy8gcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3QuXG4gIGlmIChpbnRlcm5hbFJlc3BvbnNlLnVybExpc3QubGVuZ3RoID09PSAwKSB7XG4gICAgaW50ZXJuYWxSZXNwb25zZS51cmxMaXN0LnB1c2goLi4ucmVxdWVzdC51cmxMaXN0KVxuICB9XG5cbiAgLy8gMTYuIElmIHJlcXVlc3RcdTIwMTlzIHRpbWluZyBhbGxvdyBmYWlsZWQgZmxhZyBpcyB1bnNldCwgdGhlbiBzZXRcbiAgLy8gaW50ZXJuYWxSZXNwb25zZVx1MjAxOXMgdGltaW5nIGFsbG93IHBhc3NlZCBmbGFnLlxuICBpZiAoIXJlcXVlc3QudGltaW5nQWxsb3dGYWlsZWQpIHtcbiAgICByZXNwb25zZS50aW1pbmdBbGxvd1Bhc3NlZCA9IHRydWVcbiAgfVxuXG4gIC8vIDE3LiBJZiByZXNwb25zZSBpcyBub3QgYSBuZXR3b3JrIGVycm9yIGFuZCBhbnkgb2YgdGhlIGZvbGxvd2luZyByZXR1cm5zXG4gIC8vIGJsb2NrZWRcbiAgLy8gLSBzaG91bGQgaW50ZXJuYWxSZXNwb25zZSB0byByZXF1ZXN0IGJlIGJsb2NrZWQgYXMgbWl4ZWQgY29udGVudFxuICAvLyAtIHNob3VsZCBpbnRlcm5hbFJlc3BvbnNlIHRvIHJlcXVlc3QgYmUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeVxuICAvLyAtIHNob3VsZCBpbnRlcm5hbFJlc3BvbnNlIHRvIHJlcXVlc3QgYmUgYmxvY2tlZCBkdWUgdG8gaXRzIE1JTUUgdHlwZVxuICAvLyAtIHNob3VsZCBpbnRlcm5hbFJlc3BvbnNlIHRvIHJlcXVlc3QgYmUgYmxvY2tlZCBkdWUgdG8gbm9zbmlmZlxuICAvLyBUT0RPXG5cbiAgLy8gMTguIElmIHJlc3BvbnNlXHUyMDE5cyB0eXBlIGlzIFwib3BhcXVlXCIsIGludGVybmFsUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyAyMDYsXG4gIC8vIGludGVybmFsUmVzcG9uc2VcdTIwMTlzIHJhbmdlLXJlcXVlc3RlZCBmbGFnIGlzIHNldCwgYW5kIHJlcXVlc3RcdTIwMTlzIGhlYWRlclxuICAvLyBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYFJhbmdlYCwgdGhlbiBzZXQgcmVzcG9uc2UgYW5kIGludGVybmFsUmVzcG9uc2VcbiAgLy8gdG8gYSBuZXR3b3JrIGVycm9yLlxuICBpZiAoXG4gICAgcmVzcG9uc2UudHlwZSA9PT0gJ29wYXF1ZScgJiZcbiAgICBpbnRlcm5hbFJlc3BvbnNlLnN0YXR1cyA9PT0gMjA2ICYmXG4gICAgaW50ZXJuYWxSZXNwb25zZS5yYW5nZVJlcXVlc3RlZCAmJlxuICAgICFyZXF1ZXN0LmhlYWRlcnMuY29udGFpbnMoJ3JhbmdlJylcbiAgKSB7XG4gICAgcmVzcG9uc2UgPSBpbnRlcm5hbFJlc3BvbnNlID0gbWFrZU5ldHdvcmtFcnJvcigpXG4gIH1cblxuICAvLyAxOS4gSWYgcmVzcG9uc2UgaXMgbm90IGEgbmV0d29yayBlcnJvciBhbmQgZWl0aGVyIHJlcXVlc3RcdTIwMTlzIG1ldGhvZCBpc1xuICAvLyBgSEVBRGAgb3IgYENPTk5FQ1RgLCBvciBpbnRlcm5hbFJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgYSBudWxsIGJvZHkgc3RhdHVzLFxuICAvLyBzZXQgaW50ZXJuYWxSZXNwb25zZVx1MjAxOXMgYm9keSB0byBudWxsIGFuZCBkaXNyZWdhcmQgYW55IGVucXVldWluZyB0b3dhcmRcbiAgLy8gaXQgKGlmIGFueSkuXG4gIGlmIChcbiAgICByZXNwb25zZS5zdGF0dXMgIT09IDAgJiZcbiAgICAocmVxdWVzdC5tZXRob2QgPT09ICdIRUFEJyB8fFxuICAgICAgcmVxdWVzdC5tZXRob2QgPT09ICdDT05ORUNUJyB8fFxuICAgICAgbnVsbEJvZHlTdGF0dXMuaW5jbHVkZXMoaW50ZXJuYWxSZXNwb25zZS5zdGF0dXMpKVxuICApIHtcbiAgICBpbnRlcm5hbFJlc3BvbnNlLmJvZHkgPSBudWxsXG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5kdW1wID0gdHJ1ZVxuICB9XG5cbiAgLy8gMjAuIElmIHJlcXVlc3RcdTIwMTlzIGludGVncml0eSBtZXRhZGF0YSBpcyBub3QgdGhlIGVtcHR5IHN0cmluZywgdGhlbjpcbiAgaWYgKHJlcXVlc3QuaW50ZWdyaXR5KSB7XG4gICAgLy8gMS4gTGV0IHByb2Nlc3NCb2R5RXJyb3IgYmUgdGhpcyBzdGVwOiBydW4gZmV0Y2ggZmluYWxlIGdpdmVuIGZldGNoUGFyYW1zXG4gICAgLy8gYW5kIGEgbmV0d29yayBlcnJvci5cbiAgICBjb25zdCBwcm9jZXNzQm9keUVycm9yID0gKHJlYXNvbikgPT5cbiAgICAgIGZldGNoRmluYWxlKGZldGNoUGFyYW1zLCBtYWtlTmV0d29ya0Vycm9yKHJlYXNvbikpXG5cbiAgICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBpcyBcIm9wYXF1ZVwiLCBvciByZXNwb25zZVx1MjAxOXMgYm9keSBpcyBudWxsLFxuICAgIC8vIHRoZW4gcnVuIHByb2Nlc3NCb2R5RXJyb3IgYW5kIGFib3J0IHRoZXNlIHN0ZXBzLlxuICAgIGlmIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdvcGFxdWUnIHx8IHJlc3BvbnNlLmJvZHkgPT0gbnVsbCkge1xuICAgICAgcHJvY2Vzc0JvZHlFcnJvcihyZXNwb25zZS5lcnJvcilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIDMuIExldCBwcm9jZXNzQm9keSBnaXZlbiBieXRlcyBiZSB0aGVzZSBzdGVwczpcbiAgICBjb25zdCBwcm9jZXNzQm9keSA9IChieXRlcykgPT4ge1xuICAgICAgLy8gMS4gSWYgYnl0ZXMgZG8gbm90IG1hdGNoIHJlcXVlc3RcdTIwMTlzIGludGVncml0eSBtZXRhZGF0YSxcbiAgICAgIC8vIHRoZW4gcnVuIHByb2Nlc3NCb2R5RXJyb3IgYW5kIGFib3J0IHRoZXNlIHN0ZXBzLiBbU1JJXVxuICAgICAgaWYgKCFieXRlc01hdGNoKGJ5dGVzLCByZXF1ZXN0LmludGVncml0eSkpIHtcbiAgICAgICAgcHJvY2Vzc0JvZHlFcnJvcignaW50ZWdyaXR5IG1pc21hdGNoJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIFNldCByZXNwb25zZVx1MjAxOXMgYm9keSB0byBieXRlcyBhcyBhIGJvZHkuXG4gICAgICByZXNwb25zZS5ib2R5ID0gc2FmZWx5RXh0cmFjdEJvZHkoYnl0ZXMpWzBdXG5cbiAgICAgIC8vIDMuIFJ1biBmZXRjaCBmaW5hbGUgZ2l2ZW4gZmV0Y2hQYXJhbXMgYW5kIHJlc3BvbnNlLlxuICAgICAgZmV0Y2hGaW5hbGUoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKVxuICAgIH1cblxuICAgIC8vIDQuIEZ1bGx5IHJlYWQgcmVzcG9uc2VcdTIwMTlzIGJvZHkgZ2l2ZW4gcHJvY2Vzc0JvZHkgYW5kIHByb2Nlc3NCb2R5RXJyb3IuXG4gICAgYXdhaXQgZnVsbHlSZWFkQm9keShyZXNwb25zZS5ib2R5LCBwcm9jZXNzQm9keSwgcHJvY2Vzc0JvZHlFcnJvcilcbiAgfSBlbHNlIHtcbiAgICAvLyAyMS4gT3RoZXJ3aXNlLCBydW4gZmV0Y2ggZmluYWxlIGdpdmVuIGZldGNoUGFyYW1zIGFuZCByZXNwb25zZS5cbiAgICBmZXRjaEZpbmFsZShmZXRjaFBhcmFtcywgcmVzcG9uc2UpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtc2NoZW1lLWZldGNoXG4vLyBnaXZlbiBhIGZldGNoIHBhcmFtcyBmZXRjaFBhcmFtc1xuZnVuY3Rpb24gc2NoZW1lRmV0Y2ggKGZldGNoUGFyYW1zKSB7XG4gIC8vIE5vdGU6IHNpbmNlIHRoZSBjb25uZWN0aW9uIGlzIGRlc3Ryb3llZCBvbiByZWRpcmVjdCwgd2hpY2ggc2V0cyBmZXRjaFBhcmFtcyB0byBhXG4gIC8vIGNhbmNlbGxlZCBzdGF0ZSwgd2UgZG8gbm90IHdhbnQgdGhpcyBjb25kaXRpb24gdG8gdHJpZ2dlciAqdW5sZXNzKiB0aGVyZSBoYXZlIGJlZW5cbiAgLy8gbm8gcmVkaXJlY3RzLiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvaXNzdWVzLzE3NzZcbiAgLy8gMS4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gcmV0dXJuIHRoZSBhcHByb3ByaWF0ZSBuZXR3b3JrIGVycm9yIGZvciBmZXRjaFBhcmFtcy5cbiAgaWYgKGlzQ2FuY2VsbGVkKGZldGNoUGFyYW1zKSAmJiBmZXRjaFBhcmFtcy5yZXF1ZXN0LnJlZGlyZWN0Q291bnQgPT09IDApIHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VBcHByb3ByaWF0ZU5ldHdvcmtFcnJvcihmZXRjaFBhcmFtcykpXG4gIH1cblxuICAvLyAyLiBMZXQgcmVxdWVzdCBiZSBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdC5cbiAgY29uc3QgeyByZXF1ZXN0IH0gPSBmZXRjaFBhcmFtc1xuXG4gIGNvbnN0IHsgcHJvdG9jb2w6IHNjaGVtZSB9ID0gcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdClcblxuICAvLyAzLiBTd2l0Y2ggb24gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIHNjaGVtZSBhbmQgcnVuIHRoZSBhc3NvY2lhdGVkIHN0ZXBzOlxuICBzd2l0Y2ggKHNjaGVtZSkge1xuICAgIGNhc2UgJ2Fib3V0Oic6IHtcbiAgICAgIC8vIElmIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBwYXRoIGlzIHRoZSBzdHJpbmcgXCJibGFua1wiLCB0aGVuIHJldHVybiBhIG5ldyByZXNwb25zZVxuICAgICAgLy8gd2hvc2Ugc3RhdHVzIG1lc3NhZ2UgaXMgYE9LYCwgaGVhZGVyIGxpc3QgaXMgXHUwMEFCIChgQ29udGVudC1UeXBlYCwgYHRleHQvaHRtbDtjaGFyc2V0PXV0Zi04YCkgXHUwMEJCLFxuICAgICAgLy8gYW5kIGJvZHkgaXMgdGhlIGVtcHR5IGJ5dGUgc2VxdWVuY2UgYXMgYSBib2R5LlxuXG4gICAgICAvLyBPdGhlcndpc2UsIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoJ2Fib3V0IHNjaGVtZSBpcyBub3Qgc3VwcG9ydGVkJykpXG4gICAgfVxuICAgIGNhc2UgJ2Jsb2I6Jzoge1xuICAgICAgaWYgKCFyZXNvbHZlT2JqZWN0VVJMKSB7XG4gICAgICAgIHJlc29sdmVPYmplY3RVUkwgPSByZXF1aXJlKCdidWZmZXInKS5yZXNvbHZlT2JqZWN0VVJMXG4gICAgICB9XG5cbiAgICAgIC8vIDEuIExldCBibG9iVVJMRW50cnkgYmUgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIGJsb2IgVVJMIGVudHJ5LlxuICAgICAgY29uc3QgYmxvYlVSTEVudHJ5ID0gcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdClcblxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvYmxvYi83YjBlYmFjY2M2MmI1NjZhMTk2NTM5NmU1YmU3YmIyYmMwNmY4NDFmL0ZpbGVBUEkvdXJsL3Jlc291cmNlcy9mZXRjaC10ZXN0cy5qcyNMNTItTDU2XG4gICAgICAvLyBCdWZmZXIucmVzb2x2ZU9iamVjdFVSTCBkb2VzIG5vdCBpZ25vcmUgVVJMIHF1ZXJpZXMuXG4gICAgICBpZiAoYmxvYlVSTEVudHJ5LnNlYXJjaC5sZW5ndGggIT09IDApIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdOZXR3b3JrRXJyb3Igd2hlbiBhdHRlbXB0aW5nIHRvIGZldGNoIHJlc291cmNlLicpKVxuICAgICAgfVxuXG4gICAgICBjb25zdCBibG9iVVJMRW50cnlPYmplY3QgPSByZXNvbHZlT2JqZWN0VVJMKGJsb2JVUkxFbnRyeS50b1N0cmluZygpKVxuXG4gICAgICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgbm90IGBHRVRgLCBibG9iVVJMRW50cnkgaXMgbnVsbCwgb3IgYmxvYlVSTEVudHJ5XHUyMDE5c1xuICAgICAgLy8gICAgb2JqZWN0IGlzIG5vdCBhIEJsb2Igb2JqZWN0LCB0aGVuIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICBpZiAocmVxdWVzdC5tZXRob2QgIT09ICdHRVQnIHx8ICFpc0Jsb2JMaWtlKGJsb2JVUkxFbnRyeU9iamVjdCkpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdpbnZhbGlkIG1ldGhvZCcpKVxuICAgICAgfVxuXG4gICAgICAvLyAzLiBMZXQgYm9keVdpdGhUeXBlIGJlIHRoZSByZXN1bHQgb2Ygc2FmZWx5IGV4dHJhY3RpbmcgYmxvYlVSTEVudHJ5XHUyMDE5cyBvYmplY3QuXG4gICAgICBjb25zdCBib2R5V2l0aFR5cGUgPSBzYWZlbHlFeHRyYWN0Qm9keShibG9iVVJMRW50cnlPYmplY3QpXG5cbiAgICAgIC8vIDQuIExldCBib2R5IGJlIGJvZHlXaXRoVHlwZVx1MjAxOXMgYm9keS5cbiAgICAgIGNvbnN0IGJvZHkgPSBib2R5V2l0aFR5cGVbMF1cblxuICAgICAgLy8gNS4gTGV0IGxlbmd0aCBiZSBib2R5XHUyMDE5cyBsZW5ndGgsIHNlcmlhbGl6ZWQgYW5kIGlzb21vcnBoaWMgZW5jb2RlZC5cbiAgICAgIGNvbnN0IGxlbmd0aCA9IGlzb21vcnBoaWNFbmNvZGUoYCR7Ym9keS5sZW5ndGh9YClcblxuICAgICAgLy8gNi4gTGV0IHR5cGUgYmUgYm9keVdpdGhUeXBlXHUyMDE5cyB0eXBlIGlmIGl0IGlzIG5vbi1udWxsOyBvdGhlcndpc2UgdGhlIGVtcHR5IGJ5dGUgc2VxdWVuY2UuXG4gICAgICBjb25zdCB0eXBlID0gYm9keVdpdGhUeXBlWzFdID8/ICcnXG5cbiAgICAgIC8vIDcuIFJldHVybiBhIG5ldyByZXNwb25zZSB3aG9zZSBzdGF0dXMgbWVzc2FnZSBpcyBgT0tgLCBoZWFkZXIgbGlzdCBpc1xuICAgICAgLy8gICAgXHUwMEFCIChgQ29udGVudC1MZW5ndGhgLCBsZW5ndGgpLCAoYENvbnRlbnQtVHlwZWAsIHR5cGUpIFx1MDBCQiwgYW5kIGJvZHkgaXMgYm9keS5cbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gbWFrZVJlc3BvbnNlKHtcbiAgICAgICAgc3RhdHVzVGV4dDogJ09LJyxcbiAgICAgICAgaGVhZGVyc0xpc3Q6IFtcbiAgICAgICAgICBbJ2NvbnRlbnQtbGVuZ3RoJywgeyBuYW1lOiAnQ29udGVudC1MZW5ndGgnLCB2YWx1ZTogbGVuZ3RoIH1dLFxuICAgICAgICAgIFsnY29udGVudC10eXBlJywgeyBuYW1lOiAnQ29udGVudC1UeXBlJywgdmFsdWU6IHR5cGUgfV1cbiAgICAgICAgXVxuICAgICAgfSlcblxuICAgICAgcmVzcG9uc2UuYm9keSA9IGJvZHlcblxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXNwb25zZSlcbiAgICB9XG4gICAgY2FzZSAnZGF0YTonOiB7XG4gICAgICAvLyAxLiBMZXQgZGF0YVVSTFN0cnVjdCBiZSB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgdGhlXG4gICAgICAvLyAgICBkYXRhOiBVUkwgcHJvY2Vzc29yIG9uIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMLlxuICAgICAgY29uc3QgY3VycmVudFVSTCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG4gICAgICBjb25zdCBkYXRhVVJMU3RydWN0ID0gZGF0YVVSTFByb2Nlc3NvcihjdXJyZW50VVJMKVxuXG4gICAgICAvLyAyLiBJZiBkYXRhVVJMU3RydWN0IGlzIGZhaWx1cmUsIHRoZW4gcmV0dXJuIGFcbiAgICAgIC8vICAgIG5ldHdvcmsgZXJyb3IuXG4gICAgICBpZiAoZGF0YVVSTFN0cnVjdCA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcignZmFpbGVkIHRvIGZldGNoIHRoZSBkYXRhIFVSTCcpKVxuICAgICAgfVxuXG4gICAgICAvLyAzLiBMZXQgbWltZVR5cGUgYmUgZGF0YVVSTFN0cnVjdFx1MjAxOXMgTUlNRSB0eXBlLCBzZXJpYWxpemVkLlxuICAgICAgY29uc3QgbWltZVR5cGUgPSBzZXJpYWxpemVBTWltZVR5cGUoZGF0YVVSTFN0cnVjdC5taW1lVHlwZSlcblxuICAgICAgLy8gNC4gUmV0dXJuIGEgcmVzcG9uc2Ugd2hvc2Ugc3RhdHVzIG1lc3NhZ2UgaXMgYE9LYCxcbiAgICAgIC8vICAgIGhlYWRlciBsaXN0IGlzIFx1MDBBQiAoYENvbnRlbnQtVHlwZWAsIG1pbWVUeXBlKSBcdTAwQkIsXG4gICAgICAvLyAgICBhbmQgYm9keSBpcyBkYXRhVVJMU3RydWN0XHUyMDE5cyBib2R5IGFzIGEgYm9keS5cbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZVJlc3BvbnNlKHtcbiAgICAgICAgc3RhdHVzVGV4dDogJ09LJyxcbiAgICAgICAgaGVhZGVyc0xpc3Q6IFtcbiAgICAgICAgICBbJ2NvbnRlbnQtdHlwZScsIHsgbmFtZTogJ0NvbnRlbnQtVHlwZScsIHZhbHVlOiBtaW1lVHlwZSB9XVxuICAgICAgICBdLFxuICAgICAgICBib2R5OiBzYWZlbHlFeHRyYWN0Qm9keShkYXRhVVJMU3RydWN0LmJvZHkpWzBdXG4gICAgICB9KSlcbiAgICB9XG4gICAgY2FzZSAnZmlsZTonOiB7XG4gICAgICAvLyBGb3Igbm93LCB1bmZvcnR1bmF0ZSBhcyBpdCBpcywgZmlsZSBVUkxzIGFyZSBsZWZ0IGFzIGFuIGV4ZXJjaXNlIGZvciB0aGUgcmVhZGVyLlxuICAgICAgLy8gV2hlbiBpbiBkb3VidCwgcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcignbm90IGltcGxlbWVudGVkLi4uIHlldC4uLicpKVxuICAgIH1cbiAgICBjYXNlICdodHRwOic6XG4gICAgY2FzZSAnaHR0cHM6Jzoge1xuICAgICAgLy8gUmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuXG4gICAgICByZXR1cm4gaHR0cEZldGNoKGZldGNoUGFyYW1zKVxuICAgICAgICAuY2F0Y2goKGVycikgPT4gbWFrZU5ldHdvcmtFcnJvcihlcnIpKVxuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoJ3Vua25vd24gc2NoZW1lJykpXG4gICAgfVxuICB9XG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmaW5hbGl6ZS1yZXNwb25zZVxuZnVuY3Rpb24gZmluYWxpemVSZXNwb25zZSAoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKSB7XG4gIC8vIDEuIFNldCBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgZG9uZSBmbGFnLlxuICBmZXRjaFBhcmFtcy5yZXF1ZXN0LmRvbmUgPSB0cnVlXG5cbiAgLy8gMiwgSWYgZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVzcG9uc2UgZG9uZSBpcyBub3QgbnVsbCwgdGhlbiBxdWV1ZSBhIGZldGNoXG4gIC8vIHRhc2sgdG8gcnVuIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlc3BvbnNlIGRvbmUgZ2l2ZW4gcmVzcG9uc2UsIHdpdGhcbiAgLy8gZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gIGlmIChmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2VEb25lICE9IG51bGwpIHtcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2VEb25lKHJlc3BvbnNlKSlcbiAgfVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZmV0Y2gtZmluYWxlXG5mdW5jdGlvbiBmZXRjaEZpbmFsZSAoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKSB7XG4gIC8vIDEuIElmIHJlc3BvbnNlIGlzIGEgbmV0d29yayBlcnJvciwgdGhlbjpcbiAgaWYgKHJlc3BvbnNlLnR5cGUgPT09ICdlcnJvcicpIHtcbiAgICAvLyAxLiBTZXQgcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0IHRvIFx1MDBBQiBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3RbMF0gXHUwMEJCLlxuICAgIHJlc3BvbnNlLnVybExpc3QgPSBbZmV0Y2hQYXJhbXMucmVxdWVzdC51cmxMaXN0WzBdXVxuXG4gICAgLy8gMi4gU2V0IHJlc3BvbnNlXHUyMDE5cyB0aW1pbmcgaW5mbyB0byB0aGUgcmVzdWx0IG9mIGNyZWF0aW5nIGFuIG9wYXF1ZSB0aW1pbmdcbiAgICAvLyBpbmZvIGZvciBmZXRjaFBhcmFtc1x1MjAxOXMgdGltaW5nIGluZm8uXG4gICAgcmVzcG9uc2UudGltaW5nSW5mbyA9IGNyZWF0ZU9wYXF1ZVRpbWluZ0luZm8oe1xuICAgICAgc3RhcnRUaW1lOiBmZXRjaFBhcmFtcy50aW1pbmdJbmZvLnN0YXJ0VGltZVxuICAgIH0pXG4gIH1cblxuICAvLyAyLiBMZXQgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5IGJlIHRoZSBmb2xsb3dpbmcgc3RlcHM6XG4gIGNvbnN0IHByb2Nlc3NSZXNwb25zZUVuZE9mQm9keSA9ICgpID0+IHtcbiAgICAvLyAxLiBTZXQgZmV0Y2hQYXJhbXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGRvbmUgZmxhZy5cbiAgICBmZXRjaFBhcmFtcy5yZXF1ZXN0LmRvbmUgPSB0cnVlXG5cbiAgICAvLyBJZiBmZXRjaFBhcmFtc1x1MjAxOXMgcHJvY2VzcyByZXNwb25zZSBlbmQtb2YtYm9keSBpcyBub3QgbnVsbCxcbiAgICAvLyB0aGVuIHF1ZXVlIGEgZmV0Y2ggdGFzayB0byBydW4gZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVzcG9uc2VcbiAgICAvLyBlbmQtb2YtYm9keSBnaXZlbiByZXNwb25zZSB3aXRoIGZldGNoUGFyYW1zXHUyMDE5cyB0YXNrIGRlc3RpbmF0aW9uLlxuICAgIGlmIChmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHkgIT0gbnVsbCkge1xuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4gZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5KHJlc3BvbnNlKSlcbiAgICB9XG4gIH1cblxuICAvLyAzLiBJZiBmZXRjaFBhcmFtc1x1MjAxOXMgcHJvY2VzcyByZXNwb25zZSBpcyBub24tbnVsbCwgdGhlbiBxdWV1ZSBhIGZldGNoIHRhc2tcbiAgLy8gdG8gcnVuIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlc3BvbnNlIGdpdmVuIHJlc3BvbnNlLCB3aXRoIGZldGNoUGFyYW1zXHUyMDE5c1xuICAvLyB0YXNrIGRlc3RpbmF0aW9uLlxuICBpZiAoZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlICE9IG51bGwpIHtcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2UocmVzcG9uc2UpKVxuICB9XG5cbiAgLy8gNC4gSWYgcmVzcG9uc2VcdTIwMTlzIGJvZHkgaXMgbnVsbCwgdGhlbiBydW4gcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5LlxuICBpZiAocmVzcG9uc2UuYm9keSA9PSBudWxsKSB7XG4gICAgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5KClcbiAgfSBlbHNlIHtcbiAgLy8gNS4gT3RoZXJ3aXNlOlxuXG4gICAgLy8gMS4gTGV0IHRyYW5zZm9ybVN0cmVhbSBiZSBhIG5ldyBhIFRyYW5zZm9ybVN0cmVhbS5cblxuICAgIC8vIDIuIExldCBpZGVudGl0eVRyYW5zZm9ybUFsZ29yaXRobSBiZSBhbiBhbGdvcml0aG0gd2hpY2gsIGdpdmVuIGNodW5rLFxuICAgIC8vIGVucXVldWVzIGNodW5rIGluIHRyYW5zZm9ybVN0cmVhbS5cbiAgICBjb25zdCBpZGVudGl0eVRyYW5zZm9ybUFsZ29yaXRobSA9IChjaHVuaywgY29udHJvbGxlcikgPT4ge1xuICAgICAgY29udHJvbGxlci5lbnF1ZXVlKGNodW5rKVxuICAgIH1cblxuICAgIC8vIDMuIFNldCB1cCB0cmFuc2Zvcm1TdHJlYW0gd2l0aCB0cmFuc2Zvcm1BbGdvcml0aG0gc2V0IHRvIGlkZW50aXR5VHJhbnNmb3JtQWxnb3JpdGhtXG4gICAgLy8gYW5kIGZsdXNoQWxnb3JpdGhtIHNldCB0byBwcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHkuXG4gICAgY29uc3QgdHJhbnNmb3JtU3RyZWFtID0gbmV3IFRyYW5zZm9ybVN0cmVhbSh7XG4gICAgICBzdGFydCAoKSB7fSxcbiAgICAgIHRyYW5zZm9ybTogaWRlbnRpdHlUcmFuc2Zvcm1BbGdvcml0aG0sXG4gICAgICBmbHVzaDogcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5XG4gICAgfSwge1xuICAgICAgc2l6ZSAoKSB7XG4gICAgICAgIHJldHVybiAxXG4gICAgICB9XG4gICAgfSwge1xuICAgICAgc2l6ZSAoKSB7XG4gICAgICAgIHJldHVybiAxXG4gICAgICB9XG4gICAgfSlcblxuICAgIC8vIDQuIFNldCByZXNwb25zZVx1MjAxOXMgYm9keSB0byB0aGUgcmVzdWx0IG9mIHBpcGluZyByZXNwb25zZVx1MjAxOXMgYm9keSB0aHJvdWdoIHRyYW5zZm9ybVN0cmVhbS5cbiAgICByZXNwb25zZS5ib2R5ID0geyBzdHJlYW06IHJlc3BvbnNlLmJvZHkuc3RyZWFtLnBpcGVUaHJvdWdoKHRyYW5zZm9ybVN0cmVhbSkgfVxuICB9XG5cbiAgLy8gNi4gSWYgZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVzcG9uc2UgY29uc3VtZSBib2R5IGlzIG5vbi1udWxsLCB0aGVuOlxuICBpZiAoZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlQ29uc3VtZUJvZHkgIT0gbnVsbCkge1xuICAgIC8vIDEuIExldCBwcm9jZXNzQm9keSBnaXZlbiBudWxsT3JCeXRlcyBiZSB0aGlzIHN0ZXA6IHJ1biBmZXRjaFBhcmFtc1x1MjAxOXNcbiAgICAvLyBwcm9jZXNzIHJlc3BvbnNlIGNvbnN1bWUgYm9keSBnaXZlbiByZXNwb25zZSBhbmQgbnVsbE9yQnl0ZXMuXG4gICAgY29uc3QgcHJvY2Vzc0JvZHkgPSAobnVsbE9yQnl0ZXMpID0+IGZldGNoUGFyYW1zLnByb2Nlc3NSZXNwb25zZUNvbnN1bWVCb2R5KHJlc3BvbnNlLCBudWxsT3JCeXRlcylcblxuICAgIC8vIDIuIExldCBwcm9jZXNzQm9keUVycm9yIGJlIHRoaXMgc3RlcDogcnVuIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzXG4gICAgLy8gcmVzcG9uc2UgY29uc3VtZSBib2R5IGdpdmVuIHJlc3BvbnNlIGFuZCBmYWlsdXJlLlxuICAgIGNvbnN0IHByb2Nlc3NCb2R5RXJyb3IgPSAoZmFpbHVyZSkgPT4gZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlQ29uc3VtZUJvZHkocmVzcG9uc2UsIGZhaWx1cmUpXG5cbiAgICAvLyAzLiBJZiByZXNwb25zZVx1MjAxOXMgYm9keSBpcyBudWxsLCB0aGVuIHF1ZXVlIGEgZmV0Y2ggdGFzayB0byBydW4gcHJvY2Vzc0JvZHlcbiAgICAvLyBnaXZlbiBudWxsLCB3aXRoIGZldGNoUGFyYW1zXHUyMDE5cyB0YXNrIGRlc3RpbmF0aW9uLlxuICAgIGlmIChyZXNwb25zZS5ib2R5ID09IG51bGwpIHtcbiAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHByb2Nlc3NCb2R5KG51bGwpKVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyA0LiBPdGhlcndpc2UsIGZ1bGx5IHJlYWQgcmVzcG9uc2VcdTIwMTlzIGJvZHkgZ2l2ZW4gcHJvY2Vzc0JvZHksIHByb2Nlc3NCb2R5RXJyb3IsXG4gICAgICAvLyBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gICAgICByZXR1cm4gZnVsbHlSZWFkQm9keShyZXNwb25zZS5ib2R5LCBwcm9jZXNzQm9keSwgcHJvY2Vzc0JvZHlFcnJvcilcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtZmV0Y2hcbmFzeW5jIGZ1bmN0aW9uIGh0dHBGZXRjaCAoZmV0Y2hQYXJhbXMpIHtcbiAgLy8gMS4gTGV0IHJlcXVlc3QgYmUgZmV0Y2hQYXJhbXNcdTIwMTlzIHJlcXVlc3QuXG4gIGNvbnN0IHJlcXVlc3QgPSBmZXRjaFBhcmFtcy5yZXF1ZXN0XG5cbiAgLy8gMi4gTGV0IHJlc3BvbnNlIGJlIG51bGwuXG4gIGxldCByZXNwb25zZSA9IG51bGxcblxuICAvLyAzLiBMZXQgYWN0dWFsUmVzcG9uc2UgYmUgbnVsbC5cbiAgbGV0IGFjdHVhbFJlc3BvbnNlID0gbnVsbFxuXG4gIC8vIDQuIExldCB0aW1pbmdJbmZvIGJlIGZldGNoUGFyYW1zXHUyMDE5cyB0aW1pbmcgaW5mby5cbiAgY29uc3QgdGltaW5nSW5mbyA9IGZldGNoUGFyYW1zLnRpbWluZ0luZm9cblxuICAvLyA1LiBJZiByZXF1ZXN0XHUyMDE5cyBzZXJ2aWNlLXdvcmtlcnMgbW9kZSBpcyBcImFsbFwiLCB0aGVuOlxuICBpZiAocmVxdWVzdC5zZXJ2aWNlV29ya2VycyA9PT0gJ2FsbCcpIHtcbiAgICAvLyBUT0RPXG4gIH1cblxuICAvLyA2LiBJZiByZXNwb25zZSBpcyBudWxsLCB0aGVuOlxuICBpZiAocmVzcG9uc2UgPT09IG51bGwpIHtcbiAgICAvLyAxLiBJZiBtYWtlQ09SU1ByZWZsaWdodCBpcyB0cnVlIGFuZCBvbmUgb2YgdGhlc2UgY29uZGl0aW9ucyBpcyB0cnVlOlxuICAgIC8vIFRPRE9cblxuICAgIC8vIDIuIElmIHJlcXVlc3RcdTIwMTlzIHJlZGlyZWN0IG1vZGUgaXMgXCJmb2xsb3dcIiwgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXNcbiAgICAvLyBzZXJ2aWNlLXdvcmtlcnMgbW9kZSB0byBcIm5vbmVcIi5cbiAgICBpZiAocmVxdWVzdC5yZWRpcmVjdCA9PT0gJ2ZvbGxvdycpIHtcbiAgICAgIHJlcXVlc3Quc2VydmljZVdvcmtlcnMgPSAnbm9uZSdcbiAgICB9XG5cbiAgICAvLyAzLiBTZXQgcmVzcG9uc2UgYW5kIGFjdHVhbFJlc3BvbnNlIHRvIHRoZSByZXN1bHQgb2YgcnVubmluZ1xuICAgIC8vIEhUVFAtbmV0d29yay1vci1jYWNoZSBmZXRjaCBnaXZlbiBmZXRjaFBhcmFtcy5cbiAgICBhY3R1YWxSZXNwb25zZSA9IHJlc3BvbnNlID0gYXdhaXQgaHR0cE5ldHdvcmtPckNhY2hlRmV0Y2goZmV0Y2hQYXJhbXMpXG5cbiAgICAvLyA0LiBJZiByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBpcyBcImNvcnNcIiBhbmQgYSBDT1JTIGNoZWNrXG4gICAgLy8gZm9yIHJlcXVlc3QgYW5kIHJlc3BvbnNlIHJldHVybnMgZmFpbHVyZSwgdGhlbiByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuICAgIGlmIChcbiAgICAgIHJlcXVlc3QucmVzcG9uc2VUYWludGluZyA9PT0gJ2NvcnMnICYmXG4gICAgICBjb3JzQ2hlY2socmVxdWVzdCwgcmVzcG9uc2UpID09PSAnZmFpbHVyZSdcbiAgICApIHtcbiAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKCdjb3JzIGZhaWx1cmUnKVxuICAgIH1cblxuICAgIC8vIDUuIElmIHRoZSBUQU8gY2hlY2sgZm9yIHJlcXVlc3QgYW5kIHJlc3BvbnNlIHJldHVybnMgZmFpbHVyZSwgdGhlbiBzZXRcbiAgICAvLyByZXF1ZXN0XHUyMDE5cyB0aW1pbmcgYWxsb3cgZmFpbGVkIGZsYWcuXG4gICAgaWYgKFRBT0NoZWNrKHJlcXVlc3QsIHJlc3BvbnNlKSA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICByZXF1ZXN0LnRpbWluZ0FsbG93RmFpbGVkID0gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIC8vIDcuIElmIGVpdGhlciByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBvciByZXNwb25zZVx1MjAxOXMgdHlwZVxuICAvLyBpcyBcIm9wYXF1ZVwiLCBhbmQgdGhlIGNyb3NzLW9yaWdpbiByZXNvdXJjZSBwb2xpY3kgY2hlY2sgd2l0aFxuICAvLyByZXF1ZXN0XHUyMDE5cyBvcmlnaW4sIHJlcXVlc3RcdTIwMTlzIGNsaWVudCwgcmVxdWVzdFx1MjAxOXMgZGVzdGluYXRpb24sXG4gIC8vIGFuZCBhY3R1YWxSZXNwb25zZSByZXR1cm5zIGJsb2NrZWQsIHRoZW4gcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgaWYgKFxuICAgIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdvcGFxdWUnIHx8IHJlc3BvbnNlLnR5cGUgPT09ICdvcGFxdWUnKSAmJlxuICAgIGNyb3NzT3JpZ2luUmVzb3VyY2VQb2xpY3lDaGVjayhcbiAgICAgIHJlcXVlc3Qub3JpZ2luLFxuICAgICAgcmVxdWVzdC5jbGllbnQsXG4gICAgICByZXF1ZXN0LmRlc3RpbmF0aW9uLFxuICAgICAgYWN0dWFsUmVzcG9uc2VcbiAgICApID09PSAnYmxvY2tlZCdcbiAgKSB7XG4gICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoJ2Jsb2NrZWQnKVxuICB9XG5cbiAgLy8gOC4gSWYgYWN0dWFsUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyBhIHJlZGlyZWN0IHN0YXR1cywgdGhlbjpcbiAgaWYgKHJlZGlyZWN0U3RhdHVzU2V0LmhhcyhhY3R1YWxSZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgLy8gMS4gSWYgYWN0dWFsUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyBub3QgMzAzLCByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vdCBudWxsLFxuICAgIC8vIGFuZCB0aGUgY29ubmVjdGlvbiB1c2VzIEhUVFAvMiwgdGhlbiB1c2VyIGFnZW50cyBtYXksIGFuZCBhcmUgZXZlblxuICAgIC8vIGVuY291cmFnZWQgdG8sIHRyYW5zbWl0IGFuIFJTVF9TVFJFQU0gZnJhbWUuXG4gICAgLy8gU2VlLCBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL2ZldGNoL2lzc3Vlcy8xMjg4XG4gICAgaWYgKHJlcXVlc3QucmVkaXJlY3QgIT09ICdtYW51YWwnKSB7XG4gICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbm5lY3Rpb24uZGVzdHJveSgpXG4gICAgfVxuXG4gICAgLy8gMi4gU3dpdGNoIG9uIHJlcXVlc3RcdTIwMTlzIHJlZGlyZWN0IG1vZGU6XG4gICAgaWYgKHJlcXVlc3QucmVkaXJlY3QgPT09ICdlcnJvcicpIHtcbiAgICAgIC8vIFNldCByZXNwb25zZSB0byBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICByZXNwb25zZSA9IG1ha2VOZXR3b3JrRXJyb3IoJ3VuZXhwZWN0ZWQgcmVkaXJlY3QnKVxuICAgIH0gZWxzZSBpZiAocmVxdWVzdC5yZWRpcmVjdCA9PT0gJ21hbnVhbCcpIHtcbiAgICAgIC8vIFNldCByZXNwb25zZSB0byBhbiBvcGFxdWUtcmVkaXJlY3QgZmlsdGVyZWQgcmVzcG9uc2Ugd2hvc2UgaW50ZXJuYWxcbiAgICAgIC8vIHJlc3BvbnNlIGlzIGFjdHVhbFJlc3BvbnNlLlxuICAgICAgLy8gTk9URShzcGVjKTogT24gdGhlIHdlYiB0aGlzIHdvdWxkIHJldHVybiBhbiBgb3BhcXVlcmVkaXJlY3RgIHJlc3BvbnNlLFxuICAgICAgLy8gYnV0IHRoYXQgZG9lc24ndCBtYWtlIHNlbnNlIHNlcnZlciBzaWRlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xMTkzLlxuICAgICAgcmVzcG9uc2UgPSBhY3R1YWxSZXNwb25zZVxuICAgIH0gZWxzZSBpZiAocmVxdWVzdC5yZWRpcmVjdCA9PT0gJ2ZvbGxvdycpIHtcbiAgICAgIC8vIFNldCByZXNwb25zZSB0byB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgSFRUUC1yZWRpcmVjdCBmZXRjaCBnaXZlblxuICAgICAgLy8gZmV0Y2hQYXJhbXMgYW5kIHJlc3BvbnNlLlxuICAgICAgcmVzcG9uc2UgPSBhd2FpdCBodHRwUmVkaXJlY3RGZXRjaChmZXRjaFBhcmFtcywgcmVzcG9uc2UpXG4gICAgfSBlbHNlIHtcbiAgICAgIGFzc2VydChmYWxzZSlcbiAgICB9XG4gIH1cblxuICAvLyA5LiBTZXQgcmVzcG9uc2VcdTIwMTlzIHRpbWluZyBpbmZvIHRvIHRpbWluZ0luZm8uXG4gIHJlc3BvbnNlLnRpbWluZ0luZm8gPSB0aW1pbmdJbmZvXG5cbiAgLy8gMTAuIFJldHVybiByZXNwb25zZS5cbiAgcmV0dXJuIHJlc3BvbnNlXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNodHRwLXJlZGlyZWN0LWZldGNoXG5mdW5jdGlvbiBodHRwUmVkaXJlY3RGZXRjaCAoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKSB7XG4gIC8vIDEuIExldCByZXF1ZXN0IGJlIGZldGNoUGFyYW1zXHUyMDE5cyByZXF1ZXN0LlxuICBjb25zdCByZXF1ZXN0ID0gZmV0Y2hQYXJhbXMucmVxdWVzdFxuXG4gIC8vIDIuIExldCBhY3R1YWxSZXNwb25zZSBiZSByZXNwb25zZSwgaWYgcmVzcG9uc2UgaXMgbm90IGEgZmlsdGVyZWQgcmVzcG9uc2UsXG4gIC8vIGFuZCByZXNwb25zZVx1MjAxOXMgaW50ZXJuYWwgcmVzcG9uc2Ugb3RoZXJ3aXNlLlxuICBjb25zdCBhY3R1YWxSZXNwb25zZSA9IHJlc3BvbnNlLmludGVybmFsUmVzcG9uc2VcbiAgICA/IHJlc3BvbnNlLmludGVybmFsUmVzcG9uc2VcbiAgICA6IHJlc3BvbnNlXG5cbiAgLy8gMy4gTGV0IGxvY2F0aW9uVVJMIGJlIGFjdHVhbFJlc3BvbnNlXHUyMDE5cyBsb2NhdGlvbiBVUkwgZ2l2ZW4gcmVxdWVzdFx1MjAxOXMgY3VycmVudFxuICAvLyBVUkxcdTIwMTlzIGZyYWdtZW50LlxuICBsZXQgbG9jYXRpb25VUkxcblxuICB0cnkge1xuICAgIGxvY2F0aW9uVVJMID0gcmVzcG9uc2VMb2NhdGlvblVSTChcbiAgICAgIGFjdHVhbFJlc3BvbnNlLFxuICAgICAgcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCkuaGFzaFxuICAgIClcblxuICAgIC8vIDQuIElmIGxvY2F0aW9uVVJMIGlzIG51bGwsIHRoZW4gcmV0dXJuIHJlc3BvbnNlLlxuICAgIGlmIChsb2NhdGlvblVSTCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gcmVzcG9uc2VcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIDUuIElmIGxvY2F0aW9uVVJMIGlzIGZhaWx1cmUsIHRoZW4gcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoZXJyKSlcbiAgfVxuXG4gIC8vIDYuIElmIGxvY2F0aW9uVVJMXHUyMDE5cyBzY2hlbWUgaXMgbm90IGFuIEhUVFAoUykgc2NoZW1lLCB0aGVuIHJldHVybiBhIG5ldHdvcmtcbiAgLy8gZXJyb3IuXG4gIGlmICghdXJsSXNIdHRwSHR0cHNTY2hlbWUobG9jYXRpb25VUkwpKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdVUkwgc2NoZW1lIG11c3QgYmUgYSBIVFRQKFMpIHNjaGVtZScpKVxuICB9XG5cbiAgLy8gNy4gSWYgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgY291bnQgaXMgMjAsIHRoZW4gcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgaWYgKHJlcXVlc3QucmVkaXJlY3RDb3VudCA9PT0gMjApIHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoJ3JlZGlyZWN0IGNvdW50IGV4Y2VlZGVkJykpXG4gIH1cblxuICAvLyA4LiBJbmNyZWFzZSByZXF1ZXN0XHUyMDE5cyByZWRpcmVjdCBjb3VudCBieSAxLlxuICByZXF1ZXN0LnJlZGlyZWN0Q291bnQgKz0gMVxuXG4gIC8vIDkuIElmIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJjb3JzXCIsIGxvY2F0aW9uVVJMIGluY2x1ZGVzIGNyZWRlbnRpYWxzLCBhbmRcbiAgLy8gcmVxdWVzdFx1MjAxOXMgb3JpZ2luIGlzIG5vdCBzYW1lIG9yaWdpbiB3aXRoIGxvY2F0aW9uVVJMXHUyMDE5cyBvcmlnaW4sIHRoZW4gcmV0dXJuXG4gIC8vICBhIG5ldHdvcmsgZXJyb3IuXG4gIGlmIChcbiAgICByZXF1ZXN0Lm1vZGUgPT09ICdjb3JzJyAmJlxuICAgIChsb2NhdGlvblVSTC51c2VybmFtZSB8fCBsb2NhdGlvblVSTC5wYXNzd29yZCkgJiZcbiAgICAhc2FtZU9yaWdpbihyZXF1ZXN0LCBsb2NhdGlvblVSTClcbiAgKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdjcm9zcyBvcmlnaW4gbm90IGFsbG93ZWQgZm9yIHJlcXVlc3QgbW9kZSBcImNvcnNcIicpKVxuICB9XG5cbiAgLy8gMTAuIElmIHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nIGlzIFwiY29yc1wiIGFuZCBsb2NhdGlvblVSTCBpbmNsdWRlc1xuICAvLyBjcmVkZW50aWFscywgdGhlbiByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuICBpZiAoXG4gICAgcmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnY29ycycgJiZcbiAgICAobG9jYXRpb25VUkwudXNlcm5hbWUgfHwgbG9jYXRpb25VUkwucGFzc3dvcmQpXG4gICkge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcihcbiAgICAgICdVUkwgY2Fubm90IGNvbnRhaW4gY3JlZGVudGlhbHMgZm9yIHJlcXVlc3QgbW9kZSBcImNvcnNcIidcbiAgICApKVxuICB9XG5cbiAgLy8gMTEuIElmIGFjdHVhbFJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgbm90IDMwMywgcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBub24tbnVsbCxcbiAgLy8gYW5kIHJlcXVlc3RcdTIwMTlzIGJvZHlcdTIwMTlzIHNvdXJjZSBpcyBudWxsLCB0aGVuIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gIGlmIChcbiAgICBhY3R1YWxSZXNwb25zZS5zdGF0dXMgIT09IDMwMyAmJlxuICAgIHJlcXVlc3QuYm9keSAhPSBudWxsICYmXG4gICAgcmVxdWVzdC5ib2R5LnNvdXJjZSA9PSBudWxsXG4gICkge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcigpKVxuICB9XG5cbiAgLy8gMTIuIElmIG9uZSBvZiB0aGUgZm9sbG93aW5nIGlzIHRydWVcbiAgLy8gLSBhY3R1YWxSZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIDMwMSBvciAzMDIgYW5kIHJlcXVlc3RcdTIwMTlzIG1ldGhvZCBpcyBgUE9TVGBcbiAgLy8gLSBhY3R1YWxSZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIDMwMyBhbmQgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIGlzIG5vdCBgR0VUYCBvciBgSEVBRGBcbiAgaWYgKFxuICAgIChbMzAxLCAzMDJdLmluY2x1ZGVzKGFjdHVhbFJlc3BvbnNlLnN0YXR1cykgJiYgcmVxdWVzdC5tZXRob2QgPT09ICdQT1NUJykgfHxcbiAgICAoYWN0dWFsUmVzcG9uc2Uuc3RhdHVzID09PSAzMDMgJiZcbiAgICAgICFHRVRfT1JfSEVBRC5pbmNsdWRlcyhyZXF1ZXN0Lm1ldGhvZCkpXG4gICkge1xuICAgIC8vIHRoZW46XG4gICAgLy8gMS4gU2V0IHJlcXVlc3RcdTIwMTlzIG1ldGhvZCB0byBgR0VUYCBhbmQgcmVxdWVzdFx1MjAxOXMgYm9keSB0byBudWxsLlxuICAgIHJlcXVlc3QubWV0aG9kID0gJ0dFVCdcbiAgICByZXF1ZXN0LmJvZHkgPSBudWxsXG5cbiAgICAvLyAyLiBGb3IgZWFjaCBoZWFkZXJOYW1lIG9mIHJlcXVlc3QtYm9keS1oZWFkZXIgbmFtZSwgZGVsZXRlIGhlYWRlck5hbWUgZnJvbVxuICAgIC8vIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgIGZvciAoY29uc3QgaGVhZGVyTmFtZSBvZiByZXF1ZXN0Qm9keUhlYWRlcikge1xuICAgICAgcmVxdWVzdC5oZWFkZXJzTGlzdC5kZWxldGUoaGVhZGVyTmFtZSlcbiAgICB9XG4gIH1cblxuICAvLyAxMy4gSWYgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIG9yaWdpbiBpcyBub3Qgc2FtZSBvcmlnaW4gd2l0aCBsb2NhdGlvblVSTFx1MjAxOXNcbiAgLy8gICAgIG9yaWdpbiwgdGhlbiBmb3IgZWFjaCBoZWFkZXJOYW1lIG9mIENPUlMgbm9uLXdpbGRjYXJkIHJlcXVlc3QtaGVhZGVyIG5hbWUsXG4gIC8vICAgICBkZWxldGUgaGVhZGVyTmFtZSBmcm9tIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAoIXNhbWVPcmlnaW4ocmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCksIGxvY2F0aW9uVVJMKSkge1xuICAgIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb3JzLW5vbi13aWxkY2FyZC1yZXF1ZXN0LWhlYWRlci1uYW1lXG4gICAgcmVxdWVzdC5oZWFkZXJzTGlzdC5kZWxldGUoJ2F1dGhvcml6YXRpb24nKVxuXG4gICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2F1dGhlbnRpY2F0aW9uLWVudHJpZXNcbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmRlbGV0ZSgncHJveHktYXV0aG9yaXphdGlvbicsIHRydWUpXG5cbiAgICAvLyBcIkNvb2tpZVwiIGFuZCBcIkhvc3RcIiBhcmUgZm9yYmlkZGVuIHJlcXVlc3QtaGVhZGVycywgd2hpY2ggdW5kaWNpIGRvZXNuJ3QgaW1wbGVtZW50LlxuICAgIHJlcXVlc3QuaGVhZGVyc0xpc3QuZGVsZXRlKCdjb29raWUnKVxuICAgIHJlcXVlc3QuaGVhZGVyc0xpc3QuZGVsZXRlKCdob3N0JylcbiAgfVxuXG4gIC8vIDE0LiBJZiByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vbi1udWxsLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyBib2R5IHRvIHRoZSBmaXJzdCByZXR1cm5cbiAgLy8gdmFsdWUgb2Ygc2FmZWx5IGV4dHJhY3RpbmcgcmVxdWVzdFx1MjAxOXMgYm9keVx1MjAxOXMgc291cmNlLlxuICBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwpIHtcbiAgICBhc3NlcnQocmVxdWVzdC5ib2R5LnNvdXJjZSAhPSBudWxsKVxuICAgIHJlcXVlc3QuYm9keSA9IHNhZmVseUV4dHJhY3RCb2R5KHJlcXVlc3QuYm9keS5zb3VyY2UpWzBdXG4gIH1cblxuICAvLyAxNS4gTGV0IHRpbWluZ0luZm8gYmUgZmV0Y2hQYXJhbXNcdTIwMTlzIHRpbWluZyBpbmZvLlxuICBjb25zdCB0aW1pbmdJbmZvID0gZmV0Y2hQYXJhbXMudGltaW5nSW5mb1xuXG4gIC8vIDE2LiBTZXQgdGltaW5nSW5mb1x1MjAxOXMgcmVkaXJlY3QgZW5kIHRpbWUgYW5kIHBvc3QtcmVkaXJlY3Qgc3RhcnQgdGltZSB0byB0aGVcbiAgLy8gY29hcnNlbmVkIHNoYXJlZCBjdXJyZW50IHRpbWUgZ2l2ZW4gZmV0Y2hQYXJhbXNcdTIwMTlzIGNyb3NzLW9yaWdpbiBpc29sYXRlZFxuICAvLyBjYXBhYmlsaXR5LlxuICB0aW1pbmdJbmZvLnJlZGlyZWN0RW5kVGltZSA9IHRpbWluZ0luZm8ucG9zdFJlZGlyZWN0U3RhcnRUaW1lID1cbiAgICBjb2Fyc2VuZWRTaGFyZWRDdXJyZW50VGltZShmZXRjaFBhcmFtcy5jcm9zc09yaWdpbklzb2xhdGVkQ2FwYWJpbGl0eSlcblxuICAvLyAxNy4gSWYgdGltaW5nSW5mb1x1MjAxOXMgcmVkaXJlY3Qgc3RhcnQgdGltZSBpcyAwLCB0aGVuIHNldCB0aW1pbmdJbmZvXHUyMDE5c1xuICAvLyAgcmVkaXJlY3Qgc3RhcnQgdGltZSB0byB0aW1pbmdJbmZvXHUyMDE5cyBzdGFydCB0aW1lLlxuICBpZiAodGltaW5nSW5mby5yZWRpcmVjdFN0YXJ0VGltZSA9PT0gMCkge1xuICAgIHRpbWluZ0luZm8ucmVkaXJlY3RTdGFydFRpbWUgPSB0aW1pbmdJbmZvLnN0YXJ0VGltZVxuICB9XG5cbiAgLy8gMTguIEFwcGVuZCBsb2NhdGlvblVSTCB0byByZXF1ZXN0XHUyMDE5cyBVUkwgbGlzdC5cbiAgcmVxdWVzdC51cmxMaXN0LnB1c2gobG9jYXRpb25VUkwpXG5cbiAgLy8gMTkuIEludm9rZSBzZXQgcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgcG9saWN5IG9uIHJlZGlyZWN0IG9uIHJlcXVlc3QgYW5kXG4gIC8vIGFjdHVhbFJlc3BvbnNlLlxuICBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0KHJlcXVlc3QsIGFjdHVhbFJlc3BvbnNlKVxuXG4gIC8vIDIwLiBSZXR1cm4gdGhlIHJlc3VsdCBvZiBydW5uaW5nIG1haW4gZmV0Y2ggZ2l2ZW4gZmV0Y2hQYXJhbXMgYW5kIHRydWUuXG4gIHJldHVybiBtYWluRmV0Y2goZmV0Y2hQYXJhbXMsIHRydWUpXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNodHRwLW5ldHdvcmstb3ItY2FjaGUtZmV0Y2hcbmFzeW5jIGZ1bmN0aW9uIGh0dHBOZXR3b3JrT3JDYWNoZUZldGNoIChcbiAgZmV0Y2hQYXJhbXMsXG4gIGlzQXV0aGVudGljYXRpb25GZXRjaCA9IGZhbHNlLFxuICBpc05ld0Nvbm5lY3Rpb25GZXRjaCA9IGZhbHNlXG4pIHtcbiAgLy8gMS4gTGV0IHJlcXVlc3QgYmUgZmV0Y2hQYXJhbXNcdTIwMTlzIHJlcXVlc3QuXG4gIGNvbnN0IHJlcXVlc3QgPSBmZXRjaFBhcmFtcy5yZXF1ZXN0XG5cbiAgLy8gMi4gTGV0IGh0dHBGZXRjaFBhcmFtcyBiZSBudWxsLlxuICBsZXQgaHR0cEZldGNoUGFyYW1zID0gbnVsbFxuXG4gIC8vIDMuIExldCBodHRwUmVxdWVzdCBiZSBudWxsLlxuICBsZXQgaHR0cFJlcXVlc3QgPSBudWxsXG5cbiAgLy8gNC4gTGV0IHJlc3BvbnNlIGJlIG51bGwuXG4gIGxldCByZXNwb25zZSA9IG51bGxcblxuICAvLyA1LiBMZXQgc3RvcmVkUmVzcG9uc2UgYmUgbnVsbC5cbiAgLy8gVE9ETzogY2FjaGVcblxuICAvLyA2LiBMZXQgaHR0cENhY2hlIGJlIG51bGwuXG4gIGNvbnN0IGh0dHBDYWNoZSA9IG51bGxcblxuICAvLyA3LiBMZXQgdGhlIHJldmFsaWRhdGluZ0ZsYWcgYmUgdW5zZXQuXG4gIGNvbnN0IHJldmFsaWRhdGluZ0ZsYWcgPSBmYWxzZVxuXG4gIC8vIDguIFJ1biB0aGVzZSBzdGVwcywgYnV0IGFib3J0IHdoZW4gdGhlIG9uZ29pbmcgZmV0Y2ggaXMgdGVybWluYXRlZDpcblxuICAvLyAgICAxLiBJZiByZXF1ZXN0XHUyMDE5cyB3aW5kb3cgaXMgXCJuby13aW5kb3dcIiBhbmQgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgbW9kZSBpc1xuICAvLyAgICBcImVycm9yXCIsIHRoZW4gc2V0IGh0dHBGZXRjaFBhcmFtcyB0byBmZXRjaFBhcmFtcyBhbmQgaHR0cFJlcXVlc3QgdG9cbiAgLy8gICAgcmVxdWVzdC5cbiAgaWYgKHJlcXVlc3Qud2luZG93ID09PSAnbm8td2luZG93JyAmJiByZXF1ZXN0LnJlZGlyZWN0ID09PSAnZXJyb3InKSB7XG4gICAgaHR0cEZldGNoUGFyYW1zID0gZmV0Y2hQYXJhbXNcbiAgICBodHRwUmVxdWVzdCA9IHJlcXVlc3RcbiAgfSBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2U6XG5cbiAgICAvLyAxLiBTZXQgaHR0cFJlcXVlc3QgdG8gYSBjbG9uZSBvZiByZXF1ZXN0LlxuICAgIGh0dHBSZXF1ZXN0ID0gbWFrZVJlcXVlc3QocmVxdWVzdClcblxuICAgIC8vIDIuIFNldCBodHRwRmV0Y2hQYXJhbXMgdG8gYSBjb3B5IG9mIGZldGNoUGFyYW1zLlxuICAgIGh0dHBGZXRjaFBhcmFtcyA9IHsgLi4uZmV0Y2hQYXJhbXMgfVxuXG4gICAgLy8gMy4gU2V0IGh0dHBGZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdCB0byBodHRwUmVxdWVzdC5cbiAgICBodHRwRmV0Y2hQYXJhbXMucmVxdWVzdCA9IGh0dHBSZXF1ZXN0XG4gIH1cblxuICAvLyAgICAzLiBMZXQgaW5jbHVkZUNyZWRlbnRpYWxzIGJlIHRydWUgaWYgb25lIG9mXG4gIGNvbnN0IGluY2x1ZGVDcmVkZW50aWFscyA9XG4gICAgcmVxdWVzdC5jcmVkZW50aWFscyA9PT0gJ2luY2x1ZGUnIHx8XG4gICAgKHJlcXVlc3QuY3JlZGVudGlhbHMgPT09ICdzYW1lLW9yaWdpbicgJiZcbiAgICAgIHJlcXVlc3QucmVzcG9uc2VUYWludGluZyA9PT0gJ2Jhc2ljJylcblxuICAvLyAgICA0LiBMZXQgY29udGVudExlbmd0aCBiZSBodHRwUmVxdWVzdFx1MjAxOXMgYm9keVx1MjAxOXMgbGVuZ3RoLCBpZiBodHRwUmVxdWVzdFx1MjAxOXNcbiAgLy8gICAgYm9keSBpcyBub24tbnVsbDsgb3RoZXJ3aXNlIG51bGwuXG4gIGNvbnN0IGNvbnRlbnRMZW5ndGggPSBodHRwUmVxdWVzdC5ib2R5ID8gaHR0cFJlcXVlc3QuYm9keS5sZW5ndGggOiBudWxsXG5cbiAgLy8gICAgNS4gTGV0IGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSBiZSBudWxsLlxuICBsZXQgY29udGVudExlbmd0aEhlYWRlclZhbHVlID0gbnVsbFxuXG4gIC8vICAgIDYuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG51bGwgYW5kIGh0dHBSZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgYFBPU1RgIG9yXG4gIC8vICAgIGBQVVRgLCB0aGVuIHNldCBjb250ZW50TGVuZ3RoSGVhZGVyVmFsdWUgdG8gYDBgLlxuICBpZiAoXG4gICAgaHR0cFJlcXVlc3QuYm9keSA9PSBudWxsICYmXG4gICAgWydQT1NUJywgJ1BVVCddLmluY2x1ZGVzKGh0dHBSZXF1ZXN0Lm1ldGhvZClcbiAgKSB7XG4gICAgY29udGVudExlbmd0aEhlYWRlclZhbHVlID0gJzAnXG4gIH1cblxuICAvLyAgICA3LiBJZiBjb250ZW50TGVuZ3RoIGlzIG5vbi1udWxsLCB0aGVuIHNldCBjb250ZW50TGVuZ3RoSGVhZGVyVmFsdWUgdG9cbiAgLy8gICAgY29udGVudExlbmd0aCwgc2VyaWFsaXplZCBhbmQgaXNvbW9ycGhpYyBlbmNvZGVkLlxuICBpZiAoY29udGVudExlbmd0aCAhPSBudWxsKSB7XG4gICAgY29udGVudExlbmd0aEhlYWRlclZhbHVlID0gaXNvbW9ycGhpY0VuY29kZShgJHtjb250ZW50TGVuZ3RofWApXG4gIH1cblxuICAvLyAgICA4LiBJZiBjb250ZW50TGVuZ3RoSGVhZGVyVmFsdWUgaXMgbm9uLW51bGwsIHRoZW4gYXBwZW5kXG4gIC8vICAgIGBDb250ZW50LUxlbmd0aGAvY29udGVudExlbmd0aEhlYWRlclZhbHVlIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXJcbiAgLy8gICAgbGlzdC5cbiAgaWYgKGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSAhPSBudWxsKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdjb250ZW50LWxlbmd0aCcsIGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSlcbiAgfVxuXG4gIC8vICAgIDkuIElmIGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSBpcyBub24tbnVsbCwgdGhlbiBhcHBlbmQgKGBDb250ZW50LUxlbmd0aGAsXG4gIC8vICAgIGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSkgdG8gaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuXG4gIC8vICAgIDEwLiBJZiBjb250ZW50TGVuZ3RoIGlzIG5vbi1udWxsIGFuZCBodHRwUmVxdWVzdFx1MjAxOXMga2VlcGFsaXZlIGlzIHRydWUsXG4gIC8vICAgIHRoZW46XG4gIGlmIChjb250ZW50TGVuZ3RoICE9IG51bGwgJiYgaHR0cFJlcXVlc3Qua2VlcGFsaXZlKSB7XG4gICAgLy8gTk9URToga2VlcGFsaXZlIGlzIGEgbm9vcCBvdXRzaWRlIG9mIGJyb3dzZXIgY29udGV4dC5cbiAgfVxuXG4gIC8vICAgIDExLiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgaXMgYSBVUkwsIHRoZW4gYXBwZW5kXG4gIC8vICAgIGBSZWZlcmVyYC9odHRwUmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIsIHNlcmlhbGl6ZWQgYW5kIGlzb21vcnBoaWMgZW5jb2RlZCxcbiAgLy8gICAgIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgaWYgKGh0dHBSZXF1ZXN0LnJlZmVycmVyIGluc3RhbmNlb2YgVVJMKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdyZWZlcmVyJywgaXNvbW9ycGhpY0VuY29kZShodHRwUmVxdWVzdC5yZWZlcnJlci5ocmVmKSlcbiAgfVxuXG4gIC8vICAgIDEyLiBBcHBlbmQgYSByZXF1ZXN0IGBPcmlnaW5gIGhlYWRlciBmb3IgaHR0cFJlcXVlc3QuXG4gIGFwcGVuZFJlcXVlc3RPcmlnaW5IZWFkZXIoaHR0cFJlcXVlc3QpXG5cbiAgLy8gICAgMTMuIEFwcGVuZCB0aGUgRmV0Y2ggbWV0YWRhdGEgaGVhZGVycyBmb3IgaHR0cFJlcXVlc3QuIFtGRVRDSC1NRVRBREFUQV1cbiAgYXBwZW5kRmV0Y2hNZXRhZGF0YShodHRwUmVxdWVzdClcblxuICAvLyAgICAxNC4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYFVzZXItQWdlbnRgLCB0aGVuXG4gIC8vICAgIHVzZXIgYWdlbnRzIHNob3VsZCBhcHBlbmQgYFVzZXItQWdlbnRgL2RlZmF1bHQgYFVzZXItQWdlbnRgIHZhbHVlIHRvXG4gIC8vICAgIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgaWYgKCFodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygndXNlci1hZ2VudCcpKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCd1c2VyLWFnZW50JywgdHlwZW9mIGVzYnVpbGREZXRlY3Rpb24gPT09ICd1bmRlZmluZWQnID8gJ3VuZGljaScgOiAnbm9kZScpXG4gIH1cblxuICAvLyAgICAxNS4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgaXMgXCJkZWZhdWx0XCIgYW5kIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXJcbiAgLy8gICAgbGlzdCBjb250YWlucyBgSWYtTW9kaWZpZWQtU2luY2VgLCBgSWYtTm9uZS1NYXRjaGAsXG4gIC8vICAgIGBJZi1Vbm1vZGlmaWVkLVNpbmNlYCwgYElmLU1hdGNoYCwgb3IgYElmLVJhbmdlYCwgdGhlbiBzZXRcbiAgLy8gICAgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgdG8gXCJuby1zdG9yZVwiLlxuICBpZiAoXG4gICAgaHR0cFJlcXVlc3QuY2FjaGUgPT09ICdkZWZhdWx0JyAmJlxuICAgIChodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygnaWYtbW9kaWZpZWQtc2luY2UnKSB8fFxuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2lmLW5vbmUtbWF0Y2gnKSB8fFxuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2lmLXVubW9kaWZpZWQtc2luY2UnKSB8fFxuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2lmLW1hdGNoJykgfHxcbiAgICAgIGh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdpZi1yYW5nZScpKVxuICApIHtcbiAgICBodHRwUmVxdWVzdC5jYWNoZSA9ICduby1zdG9yZSdcbiAgfVxuXG4gIC8vICAgIDE2LiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpcyBcIm5vLWNhY2hlXCIsIGh0dHBSZXF1ZXN0XHUyMDE5cyBwcmV2ZW50XG4gIC8vICAgIG5vLWNhY2hlIGNhY2hlLWNvbnRyb2wgaGVhZGVyIG1vZGlmaWNhdGlvbiBmbGFnIGlzIHVuc2V0LCBhbmRcbiAgLy8gICAgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYENhY2hlLUNvbnRyb2xgLCB0aGVuIGFwcGVuZFxuICAvLyAgICBgQ2FjaGUtQ29udHJvbGAvYG1heC1hZ2U9MGAgdG8gaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAoXG4gICAgaHR0cFJlcXVlc3QuY2FjaGUgPT09ICduby1jYWNoZScgJiZcbiAgICAhaHR0cFJlcXVlc3QucHJldmVudE5vQ2FjaGVDYWNoZUNvbnRyb2xIZWFkZXJNb2RpZmljYXRpb24gJiZcbiAgICAhaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2NhY2hlLWNvbnRyb2wnKVxuICApIHtcbiAgICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ2NhY2hlLWNvbnRyb2wnLCAnbWF4LWFnZT0wJylcbiAgfVxuXG4gIC8vICAgIDE3LiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpcyBcIm5vLXN0b3JlXCIgb3IgXCJyZWxvYWRcIiwgdGhlbjpcbiAgaWYgKGh0dHBSZXF1ZXN0LmNhY2hlID09PSAnbm8tc3RvcmUnIHx8IGh0dHBSZXF1ZXN0LmNhY2hlID09PSAncmVsb2FkJykge1xuICAgIC8vIDEuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBkb2VzIG5vdCBjb250YWluIGBQcmFnbWFgLCB0aGVuIGFwcGVuZFxuICAgIC8vIGBQcmFnbWFgL2Buby1jYWNoZWAgdG8gaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgIGlmICghaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ3ByYWdtYScpKSB7XG4gICAgICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ3ByYWdtYScsICduby1jYWNoZScpXG4gICAgfVxuXG4gICAgLy8gMi4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYENhY2hlLUNvbnRyb2xgLFxuICAgIC8vIHRoZW4gYXBwZW5kIGBDYWNoZS1Db250cm9sYC9gbm8tY2FjaGVgIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICBpZiAoIWh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdjYWNoZS1jb250cm9sJykpIHtcbiAgICAgIGh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnY2FjaGUtY29udHJvbCcsICduby1jYWNoZScpXG4gICAgfVxuICB9XG5cbiAgLy8gICAgMTguIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBjb250YWlucyBgUmFuZ2VgLCB0aGVuIGFwcGVuZFxuICAvLyAgICBgQWNjZXB0LUVuY29kaW5nYC9gaWRlbnRpdHlgIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgaWYgKGh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdyYW5nZScpKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdhY2NlcHQtZW5jb2RpbmcnLCAnaWRlbnRpdHknKVxuICB9XG5cbiAgLy8gICAgMTkuIE1vZGlmeSBodHRwUmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgcGVyIEhUVFAuIERvIG5vdCBhcHBlbmQgYSBnaXZlblxuICAvLyAgICBoZWFkZXIgaWYgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGNvbnRhaW5zIHRoYXQgaGVhZGVyXHUyMDE5cyBuYW1lLlxuICAvLyAgICBUT0RPOiBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL2ZldGNoL2lzc3Vlcy8xMjg1I2lzc3VlY29tbWVudC04OTY1NjAxMjlcbiAgaWYgKCFodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygnYWNjZXB0LWVuY29kaW5nJykpIHtcbiAgICBpZiAodXJsSGFzSHR0cHNTY2hlbWUocmVxdWVzdEN1cnJlbnRVUkwoaHR0cFJlcXVlc3QpKSkge1xuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdhY2NlcHQtZW5jb2RpbmcnLCAnYnIsIGd6aXAsIGRlZmxhdGUnKVxuICAgIH0gZWxzZSB7XG4gICAgICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ2FjY2VwdC1lbmNvZGluZycsICdnemlwLCBkZWZsYXRlJylcbiAgICB9XG4gIH1cblxuICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5kZWxldGUoJ2hvc3QnKVxuXG4gIC8vICAgIDIwLiBJZiBpbmNsdWRlQ3JlZGVudGlhbHMgaXMgdHJ1ZSwgdGhlbjpcbiAgaWYgKGluY2x1ZGVDcmVkZW50aWFscykge1xuICAgIC8vIDEuIElmIHRoZSB1c2VyIGFnZW50IGlzIG5vdCBjb25maWd1cmVkIHRvIGJsb2NrIGNvb2tpZXMgZm9yIGh0dHBSZXF1ZXN0XG4gICAgLy8gKHNlZSBzZWN0aW9uIDcgb2YgW0NPT0tJRVNdKSwgdGhlbjpcbiAgICAvLyBUT0RPOiBjcmVkZW50aWFsc1xuICAgIC8vIDIuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBkb2VzIG5vdCBjb250YWluIGBBdXRob3JpemF0aW9uYCwgdGhlbjpcbiAgICAvLyBUT0RPOiBjcmVkZW50aWFsc1xuICB9XG5cbiAgLy8gICAgMjEuIElmIHRoZXJlXHUyMDE5cyBhIHByb3h5LWF1dGhlbnRpY2F0aW9uIGVudHJ5LCB1c2UgaXQgYXMgYXBwcm9wcmlhdGUuXG4gIC8vICAgIFRPRE86IHByb3h5LWF1dGhlbnRpY2F0aW9uXG5cbiAgLy8gICAgMjIuIFNldCBodHRwQ2FjaGUgdG8gdGhlIHJlc3VsdCBvZiBkZXRlcm1pbmluZyB0aGUgSFRUUCBjYWNoZVxuICAvLyAgICBwYXJ0aXRpb24sIGdpdmVuIGh0dHBSZXF1ZXN0LlxuICAvLyAgICBUT0RPOiBjYWNoZVxuXG4gIC8vICAgIDIzLiBJZiBodHRwQ2FjaGUgaXMgbnVsbCwgdGhlbiBzZXQgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgdG9cbiAgLy8gICAgXCJuby1zdG9yZVwiLlxuICBpZiAoaHR0cENhY2hlID09IG51bGwpIHtcbiAgICBodHRwUmVxdWVzdC5jYWNoZSA9ICduby1zdG9yZSdcbiAgfVxuXG4gIC8vICAgIDI0LiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpcyBuZWl0aGVyIFwibm8tc3RvcmVcIiBub3IgXCJyZWxvYWRcIixcbiAgLy8gICAgdGhlbjpcbiAgaWYgKGh0dHBSZXF1ZXN0Lm1vZGUgIT09ICduby1zdG9yZScgJiYgaHR0cFJlcXVlc3QubW9kZSAhPT0gJ3JlbG9hZCcpIHtcbiAgICAvLyBUT0RPOiBjYWNoZVxuICB9XG5cbiAgLy8gOS4gSWYgYWJvcnRlZCwgdGhlbiByZXR1cm4gdGhlIGFwcHJvcHJpYXRlIG5ldHdvcmsgZXJyb3IgZm9yIGZldGNoUGFyYW1zLlxuICAvLyBUT0RPXG5cbiAgLy8gMTAuIElmIHJlc3BvbnNlIGlzIG51bGwsIHRoZW46XG4gIGlmIChyZXNwb25zZSA9PSBudWxsKSB7XG4gICAgLy8gMS4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgaXMgXCJvbmx5LWlmLWNhY2hlZFwiLCB0aGVuIHJldHVybiBhXG4gICAgLy8gbmV0d29yayBlcnJvci5cbiAgICBpZiAoaHR0cFJlcXVlc3QubW9kZSA9PT0gJ29ubHktaWYtY2FjaGVkJykge1xuICAgICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoJ29ubHkgaWYgY2FjaGVkJylcbiAgICB9XG5cbiAgICAvLyAyLiBMZXQgZm9yd2FyZFJlc3BvbnNlIGJlIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQLW5ldHdvcmsgZmV0Y2hcbiAgICAvLyBnaXZlbiBodHRwRmV0Y2hQYXJhbXMsIGluY2x1ZGVDcmVkZW50aWFscywgYW5kIGlzTmV3Q29ubmVjdGlvbkZldGNoLlxuICAgIGNvbnN0IGZvcndhcmRSZXNwb25zZSA9IGF3YWl0IGh0dHBOZXR3b3JrRmV0Y2goXG4gICAgICBodHRwRmV0Y2hQYXJhbXMsXG4gICAgICBpbmNsdWRlQ3JlZGVudGlhbHMsXG4gICAgICBpc05ld0Nvbm5lY3Rpb25GZXRjaFxuICAgIClcblxuICAgIC8vIDMuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgdW5zYWZlIGFuZCBmb3J3YXJkUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpc1xuICAgIC8vIGluIHRoZSByYW5nZSAyMDAgdG8gMzk5LCBpbmNsdXNpdmUsIGludmFsaWRhdGUgYXBwcm9wcmlhdGUgc3RvcmVkXG4gICAgLy8gcmVzcG9uc2VzIGluIGh0dHBDYWNoZSwgYXMgcGVyIHRoZSBcIkludmFsaWRhdGlvblwiIGNoYXB0ZXIgb2YgSFRUUFxuICAgIC8vIENhY2hpbmcsIGFuZCBzZXQgc3RvcmVkUmVzcG9uc2UgdG8gbnVsbC4gW0hUVFAtQ0FDSElOR11cbiAgICBpZiAoXG4gICAgICAhc2FmZU1ldGhvZHNTZXQuaGFzKGh0dHBSZXF1ZXN0Lm1ldGhvZCkgJiZcbiAgICAgIGZvcndhcmRSZXNwb25zZS5zdGF0dXMgPj0gMjAwICYmXG4gICAgICBmb3J3YXJkUmVzcG9uc2Uuc3RhdHVzIDw9IDM5OVxuICAgICkge1xuICAgICAgLy8gVE9ETzogY2FjaGVcbiAgICB9XG5cbiAgICAvLyA0LiBJZiB0aGUgcmV2YWxpZGF0aW5nRmxhZyBpcyBzZXQgYW5kIGZvcndhcmRSZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIDMwNCxcbiAgICAvLyB0aGVuOlxuICAgIGlmIChyZXZhbGlkYXRpbmdGbGFnICYmIGZvcndhcmRSZXNwb25zZS5zdGF0dXMgPT09IDMwNCkge1xuICAgICAgLy8gVE9ETzogY2FjaGVcbiAgICB9XG5cbiAgICAvLyA1LiBJZiByZXNwb25zZSBpcyBudWxsLCB0aGVuOlxuICAgIGlmIChyZXNwb25zZSA9PSBudWxsKSB7XG4gICAgICAvLyAxLiBTZXQgcmVzcG9uc2UgdG8gZm9yd2FyZFJlc3BvbnNlLlxuICAgICAgcmVzcG9uc2UgPSBmb3J3YXJkUmVzcG9uc2VcblxuICAgICAgLy8gMi4gU3RvcmUgaHR0cFJlcXVlc3QgYW5kIGZvcndhcmRSZXNwb25zZSBpbiBodHRwQ2FjaGUsIGFzIHBlciB0aGVcbiAgICAgIC8vIFwiU3RvcmluZyBSZXNwb25zZXMgaW4gQ2FjaGVzXCIgY2hhcHRlciBvZiBIVFRQIENhY2hpbmcuIFtIVFRQLUNBQ0hJTkddXG4gICAgICAvLyBUT0RPOiBjYWNoZVxuICAgIH1cbiAgfVxuXG4gIC8vIDExLiBTZXQgcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0IHRvIGEgY2xvbmUgb2YgaHR0cFJlcXVlc3RcdTIwMTlzIFVSTCBsaXN0LlxuICByZXNwb25zZS51cmxMaXN0ID0gWy4uLmh0dHBSZXF1ZXN0LnVybExpc3RdXG5cbiAgLy8gMTIuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBjb250YWlucyBgUmFuZ2VgLCB0aGVuIHNldCByZXNwb25zZVx1MjAxOXNcbiAgLy8gcmFuZ2UtcmVxdWVzdGVkIGZsYWcuXG4gIGlmIChodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygncmFuZ2UnKSkge1xuICAgIHJlc3BvbnNlLnJhbmdlUmVxdWVzdGVkID0gdHJ1ZVxuICB9XG5cbiAgLy8gMTMuIFNldCByZXNwb25zZVx1MjAxOXMgcmVxdWVzdC1pbmNsdWRlcy1jcmVkZW50aWFscyB0byBpbmNsdWRlQ3JlZGVudGlhbHMuXG4gIHJlc3BvbnNlLnJlcXVlc3RJbmNsdWRlc0NyZWRlbnRpYWxzID0gaW5jbHVkZUNyZWRlbnRpYWxzXG5cbiAgLy8gMTQuIElmIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgNDAxLCBodHRwUmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgaXMgbm90XG4gIC8vIFwiY29yc1wiLCBpbmNsdWRlQ3JlZGVudGlhbHMgaXMgdHJ1ZSwgYW5kIHJlcXVlc3RcdTIwMTlzIHdpbmRvdyBpcyBhbiBlbnZpcm9ubWVudFxuICAvLyBzZXR0aW5ncyBvYmplY3QsIHRoZW46XG4gIC8vIFRPRE9cblxuICAvLyAxNS4gSWYgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyA0MDcsIHRoZW46XG4gIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDQwNykge1xuICAgIC8vIDEuIElmIHJlcXVlc3RcdTIwMTlzIHdpbmRvdyBpcyBcIm5vLXdpbmRvd1wiLCB0aGVuIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgaWYgKHJlcXVlc3Qud2luZG93ID09PSAnbm8td2luZG93Jykge1xuICAgICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoKVxuICAgIH1cblxuICAgIC8vIDIuID8/P1xuXG4gICAgLy8gMy4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gcmV0dXJuIHRoZSBhcHByb3ByaWF0ZSBuZXR3b3JrIGVycm9yIGZvciBmZXRjaFBhcmFtcy5cbiAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICByZXR1cm4gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yKGZldGNoUGFyYW1zKVxuICAgIH1cblxuICAgIC8vIDQuIFByb21wdCB0aGUgZW5kIHVzZXIgYXMgYXBwcm9wcmlhdGUgaW4gcmVxdWVzdFx1MjAxOXMgd2luZG93IGFuZCBzdG9yZVxuICAgIC8vIHRoZSByZXN1bHQgYXMgYSBwcm94eS1hdXRoZW50aWNhdGlvbiBlbnRyeS4gW0hUVFAtQVVUSF1cbiAgICAvLyBUT0RPOiBJbnZva2Ugc29tZSBraW5kIG9mIGNhbGxiYWNrP1xuXG4gICAgLy8gNS4gU2V0IHJlc3BvbnNlIHRvIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQLW5ldHdvcmstb3ItY2FjaGUgZmV0Y2ggZ2l2ZW5cbiAgICAvLyBmZXRjaFBhcmFtcy5cbiAgICAvLyBUT0RPXG4gICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoJ3Byb3h5IGF1dGhlbnRpY2F0aW9uIHJlcXVpcmVkJylcbiAgfVxuXG4gIC8vIDE2LiBJZiBhbGwgb2YgdGhlIGZvbGxvd2luZyBhcmUgdHJ1ZVxuICBpZiAoXG4gICAgLy8gcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyA0MjFcbiAgICByZXNwb25zZS5zdGF0dXMgPT09IDQyMSAmJlxuICAgIC8vIGlzTmV3Q29ubmVjdGlvbkZldGNoIGlzIGZhbHNlXG4gICAgIWlzTmV3Q29ubmVjdGlvbkZldGNoICYmXG4gICAgLy8gcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBudWxsLCBvciByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vbi1udWxsIGFuZCByZXF1ZXN0XHUyMDE5cyBib2R5XHUyMDE5cyBzb3VyY2UgaXMgbm9uLW51bGxcbiAgICAocmVxdWVzdC5ib2R5ID09IG51bGwgfHwgcmVxdWVzdC5ib2R5LnNvdXJjZSAhPSBudWxsKVxuICApIHtcbiAgICAvLyB0aGVuOlxuXG4gICAgLy8gMS4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gcmV0dXJuIHRoZSBhcHByb3ByaWF0ZSBuZXR3b3JrIGVycm9yIGZvciBmZXRjaFBhcmFtcy5cbiAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICByZXR1cm4gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yKGZldGNoUGFyYW1zKVxuICAgIH1cblxuICAgIC8vIDIuIFNldCByZXNwb25zZSB0byB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgSFRUUC1uZXR3b3JrLW9yLWNhY2hlXG4gICAgLy8gZmV0Y2ggZ2l2ZW4gZmV0Y2hQYXJhbXMsIGlzQXV0aGVudGljYXRpb25GZXRjaCwgYW5kIHRydWUuXG5cbiAgICAvLyBUT0RPIChzcGVjKTogVGhlIHNwZWMgZG9lc24ndCBzcGVjaWZ5IHRoaXMgYnV0IHdlIG5lZWQgdG8gY2FuY2VsXG4gICAgLy8gdGhlIGFjdGl2ZSByZXNwb25zZSBiZWZvcmUgd2UgY2FuIHN0YXJ0IGEgbmV3IG9uZS5cbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL2ZldGNoL2lzc3Vlcy8xMjkzXG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb25uZWN0aW9uLmRlc3Ryb3koKVxuXG4gICAgcmVzcG9uc2UgPSBhd2FpdCBodHRwTmV0d29ya09yQ2FjaGVGZXRjaChcbiAgICAgIGZldGNoUGFyYW1zLFxuICAgICAgaXNBdXRoZW50aWNhdGlvbkZldGNoLFxuICAgICAgdHJ1ZVxuICAgIClcbiAgfVxuXG4gIC8vIDE3LiBJZiBpc0F1dGhlbnRpY2F0aW9uRmV0Y2ggaXMgdHJ1ZSwgdGhlbiBjcmVhdGUgYW4gYXV0aGVudGljYXRpb24gZW50cnlcbiAgaWYgKGlzQXV0aGVudGljYXRpb25GZXRjaCkge1xuICAgIC8vIFRPRE9cbiAgfVxuXG4gIC8vIDE4LiBSZXR1cm4gcmVzcG9uc2UuXG4gIHJldHVybiByZXNwb25zZVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaHR0cC1uZXR3b3JrLWZldGNoXG5hc3luYyBmdW5jdGlvbiBodHRwTmV0d29ya0ZldGNoIChcbiAgZmV0Y2hQYXJhbXMsXG4gIGluY2x1ZGVDcmVkZW50aWFscyA9IGZhbHNlLFxuICBmb3JjZU5ld0Nvbm5lY3Rpb24gPSBmYWxzZVxuKSB7XG4gIGFzc2VydCghZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb25uZWN0aW9uIHx8IGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29ubmVjdGlvbi5kZXN0cm95ZWQpXG5cbiAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb25uZWN0aW9uID0ge1xuICAgIGFib3J0OiBudWxsLFxuICAgIGRlc3Ryb3llZDogZmFsc2UsXG4gICAgZGVzdHJveSAoZXJyKSB7XG4gICAgICBpZiAoIXRoaXMuZGVzdHJveWVkKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkID0gdHJ1ZVxuICAgICAgICB0aGlzLmFib3J0Py4oZXJyID8/IG5ldyBET01FeGNlcHRpb24oJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQuJywgJ0Fib3J0RXJyb3InKSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyAxLiBMZXQgcmVxdWVzdCBiZSBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdC5cbiAgY29uc3QgcmVxdWVzdCA9IGZldGNoUGFyYW1zLnJlcXVlc3RcblxuICAvLyAyLiBMZXQgcmVzcG9uc2UgYmUgbnVsbC5cbiAgbGV0IHJlc3BvbnNlID0gbnVsbFxuXG4gIC8vIDMuIExldCB0aW1pbmdJbmZvIGJlIGZldGNoUGFyYW1zXHUyMDE5cyB0aW1pbmcgaW5mby5cbiAgY29uc3QgdGltaW5nSW5mbyA9IGZldGNoUGFyYW1zLnRpbWluZ0luZm9cblxuICAvLyA0LiBMZXQgaHR0cENhY2hlIGJlIHRoZSByZXN1bHQgb2YgZGV0ZXJtaW5pbmcgdGhlIEhUVFAgY2FjaGUgcGFydGl0aW9uLFxuICAvLyBnaXZlbiByZXF1ZXN0LlxuICAvLyBUT0RPOiBjYWNoZVxuICBjb25zdCBodHRwQ2FjaGUgPSBudWxsXG5cbiAgLy8gNS4gSWYgaHR0cENhY2hlIGlzIG51bGwsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgdG8gXCJuby1zdG9yZVwiLlxuICBpZiAoaHR0cENhY2hlID09IG51bGwpIHtcbiAgICByZXF1ZXN0LmNhY2hlID0gJ25vLXN0b3JlJ1xuICB9XG5cbiAgLy8gNi4gTGV0IG5ldHdvcmtQYXJ0aXRpb25LZXkgYmUgdGhlIHJlc3VsdCBvZiBkZXRlcm1pbmluZyB0aGUgbmV0d29ya1xuICAvLyBwYXJ0aXRpb24ga2V5IGdpdmVuIHJlcXVlc3QuXG4gIC8vIFRPRE9cblxuICAvLyA3LiBMZXQgbmV3Q29ubmVjdGlvbiBiZSBcInllc1wiIGlmIGZvcmNlTmV3Q29ubmVjdGlvbiBpcyB0cnVlOyBvdGhlcndpc2VcbiAgLy8gXCJub1wiLlxuICBjb25zdCBuZXdDb25uZWN0aW9uID0gZm9yY2VOZXdDb25uZWN0aW9uID8gJ3llcycgOiAnbm8nIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdW51c2VkLXZhcnNcblxuICAvLyA4LiBTd2l0Y2ggb24gcmVxdWVzdFx1MjAxOXMgbW9kZTpcbiAgaWYgKHJlcXVlc3QubW9kZSA9PT0gJ3dlYnNvY2tldCcpIHtcbiAgICAvLyBMZXQgY29ubmVjdGlvbiBiZSB0aGUgcmVzdWx0IG9mIG9idGFpbmluZyBhIFdlYlNvY2tldCBjb25uZWN0aW9uLFxuICAgIC8vIGdpdmVuIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMLlxuICAgIC8vIFRPRE9cbiAgfSBlbHNlIHtcbiAgICAvLyBMZXQgY29ubmVjdGlvbiBiZSB0aGUgcmVzdWx0IG9mIG9idGFpbmluZyBhIGNvbm5lY3Rpb24sIGdpdmVuXG4gICAgLy8gbmV0d29ya1BhcnRpdGlvbktleSwgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIG9yaWdpbixcbiAgICAvLyBpbmNsdWRlQ3JlZGVudGlhbHMsIGFuZCBmb3JjZU5ld0Nvbm5lY3Rpb24uXG4gICAgLy8gVE9ET1xuICB9XG5cbiAgLy8gOS4gUnVuIHRoZXNlIHN0ZXBzLCBidXQgYWJvcnQgd2hlbiB0aGUgb25nb2luZyBmZXRjaCBpcyB0ZXJtaW5hdGVkOlxuXG4gIC8vICAgIDEuIElmIGNvbm5lY3Rpb24gaXMgZmFpbHVyZSwgdGhlbiByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuXG4gIC8vICAgIDIuIFNldCB0aW1pbmdJbmZvXHUyMDE5cyBmaW5hbCBjb25uZWN0aW9uIHRpbWluZyBpbmZvIHRvIHRoZSByZXN1bHQgb2ZcbiAgLy8gICAgY2FsbGluZyBjbGFtcCBhbmQgY29hcnNlbiBjb25uZWN0aW9uIHRpbWluZyBpbmZvIHdpdGggY29ubmVjdGlvblx1MjAxOXNcbiAgLy8gICAgdGltaW5nIGluZm8sIHRpbWluZ0luZm9cdTIwMTlzIHBvc3QtcmVkaXJlY3Qgc3RhcnQgdGltZSwgYW5kIGZldGNoUGFyYW1zXHUyMDE5c1xuICAvLyAgICBjcm9zcy1vcmlnaW4gaXNvbGF0ZWQgY2FwYWJpbGl0eS5cblxuICAvLyAgICAzLiBJZiBjb25uZWN0aW9uIGlzIG5vdCBhbiBIVFRQLzIgY29ubmVjdGlvbiwgcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBub24tbnVsbCxcbiAgLy8gICAgYW5kIHJlcXVlc3RcdTIwMTlzIGJvZHlcdTIwMTlzIHNvdXJjZSBpcyBudWxsLCB0aGVuIGFwcGVuZCAoYFRyYW5zZmVyLUVuY29kaW5nYCxcbiAgLy8gICAgYGNodW5rZWRgKSB0byByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cblxuICAvLyAgICA0LiBTZXQgdGltaW5nSW5mb1x1MjAxOXMgZmluYWwgbmV0d29yay1yZXF1ZXN0IHN0YXJ0IHRpbWUgdG8gdGhlIGNvYXJzZW5lZFxuICAvLyAgICBzaGFyZWQgY3VycmVudCB0aW1lIGdpdmVuIGZldGNoUGFyYW1zXHUyMDE5cyBjcm9zcy1vcmlnaW4gaXNvbGF0ZWRcbiAgLy8gICAgY2FwYWJpbGl0eS5cblxuICAvLyAgICA1LiBTZXQgcmVzcG9uc2UgdG8gdGhlIHJlc3VsdCBvZiBtYWtpbmcgYW4gSFRUUCByZXF1ZXN0IG92ZXIgY29ubmVjdGlvblxuICAvLyAgICB1c2luZyByZXF1ZXN0IHdpdGggdGhlIGZvbGxvd2luZyBjYXZlYXRzOlxuXG4gIC8vICAgICAgICAtIEZvbGxvdyB0aGUgcmVsZXZhbnQgcmVxdWlyZW1lbnRzIGZyb20gSFRUUC4gW0hUVFBdIFtIVFRQLVNFTUFOVElDU11cbiAgLy8gICAgICAgIFtIVFRQLUNPTkRdIFtIVFRQLUNBQ0hJTkddIFtIVFRQLUFVVEhdXG5cbiAgLy8gICAgICAgIC0gSWYgcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBub24tbnVsbCwgYW5kIHJlcXVlc3RcdTIwMTlzIGJvZHlcdTIwMTlzIHNvdXJjZSBpcyBudWxsLFxuICAvLyAgICAgICAgdGhlbiB0aGUgdXNlciBhZ2VudCBtYXkgaGF2ZSBhIGJ1ZmZlciBvZiB1cCB0byA2NCBraWJpYnl0ZXMgYW5kIHN0b3JlXG4gIC8vICAgICAgICBhIHBhcnQgb2YgcmVxdWVzdFx1MjAxOXMgYm9keSBpbiB0aGF0IGJ1ZmZlci4gSWYgdGhlIHVzZXIgYWdlbnQgcmVhZHMgZnJvbVxuICAvLyAgICAgICAgcmVxdWVzdFx1MjAxOXMgYm9keSBiZXlvbmQgdGhhdCBidWZmZXJcdTIwMTlzIHNpemUgYW5kIHRoZSB1c2VyIGFnZW50IG5lZWRzIHRvXG4gIC8vICAgICAgICByZXNlbmQgcmVxdWVzdCwgdGhlbiBpbnN0ZWFkIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG5cbiAgLy8gICAgICAgIC0gU2V0IHRpbWluZ0luZm9cdTIwMTlzIGZpbmFsIG5ldHdvcmstcmVzcG9uc2Ugc3RhcnQgdGltZSB0byB0aGUgY29hcnNlbmVkXG4gIC8vICAgICAgICBzaGFyZWQgY3VycmVudCB0aW1lIGdpdmVuIGZldGNoUGFyYW1zXHUyMDE5cyBjcm9zcy1vcmlnaW4gaXNvbGF0ZWQgY2FwYWJpbGl0eSxcbiAgLy8gICAgICAgIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSB1c2VyIGFnZW50XHUyMDE5cyBIVFRQIHBhcnNlciByZWNlaXZlcyB0aGUgZmlyc3QgYnl0ZVxuICAvLyAgICAgICAgb2YgdGhlIHJlc3BvbnNlIChlLmcuLCBmcmFtZSBoZWFkZXIgYnl0ZXMgZm9yIEhUVFAvMiBvciByZXNwb25zZSBzdGF0dXNcbiAgLy8gICAgICAgIGxpbmUgZm9yIEhUVFAvMS54KS5cblxuICAvLyAgICAgICAgLSBXYWl0IHVudGlsIGFsbCB0aGUgaGVhZGVycyBhcmUgdHJhbnNtaXR0ZWQuXG5cbiAgLy8gICAgICAgIC0gQW55IHJlc3BvbnNlcyB3aG9zZSBzdGF0dXMgaXMgaW4gdGhlIHJhbmdlIDEwMCB0byAxOTksIGluY2x1c2l2ZSxcbiAgLy8gICAgICAgIGFuZCBpcyBub3QgMTAxLCBhcmUgdG8gYmUgaWdub3JlZCwgZXhjZXB0IGZvciB0aGUgcHVycG9zZXMgb2Ygc2V0dGluZ1xuICAvLyAgICAgICAgdGltaW5nSW5mb1x1MjAxOXMgZmluYWwgbmV0d29yay1yZXNwb25zZSBzdGFydCB0aW1lIGFib3ZlLlxuXG4gIC8vICAgIC0gSWYgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgY29udGFpbnMgYFRyYW5zZmVyLUVuY29kaW5nYC9gY2h1bmtlZGAgYW5kXG4gIC8vICAgIHJlc3BvbnNlIGlzIHRyYW5zZmVycmVkIHZpYSBIVFRQLzEuMCBvciBvbGRlciwgdGhlbiByZXR1cm4gYSBuZXR3b3JrXG4gIC8vICAgIGVycm9yLlxuXG4gIC8vICAgIC0gSWYgdGhlIEhUVFAgcmVxdWVzdCByZXN1bHRzIGluIGEgVExTIGNsaWVudCBjZXJ0aWZpY2F0ZSBkaWFsb2csIHRoZW46XG5cbiAgLy8gICAgICAgIDEuIElmIHJlcXVlc3RcdTIwMTlzIHdpbmRvdyBpcyBhbiBlbnZpcm9ubWVudCBzZXR0aW5ncyBvYmplY3QsIG1ha2UgdGhlXG4gIC8vICAgICAgICBkaWFsb2cgYXZhaWxhYmxlIGluIHJlcXVlc3RcdTIwMTlzIHdpbmRvdy5cblxuICAvLyAgICAgICAgMi4gT3RoZXJ3aXNlLCByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuXG4gIC8vIFRvIHRyYW5zbWl0IHJlcXVlc3RcdTIwMTlzIGJvZHkgYm9keSwgcnVuIHRoZXNlIHN0ZXBzOlxuICBsZXQgcmVxdWVzdEJvZHkgPSBudWxsXG4gIC8vIDEuIElmIGJvZHkgaXMgbnVsbCBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVxdWVzdCBlbmQtb2YtYm9keSBpc1xuICAvLyBub24tbnVsbCwgdGhlbiBxdWV1ZSBhIGZldGNoIHRhc2sgZ2l2ZW4gZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVxdWVzdFxuICAvLyBlbmQtb2YtYm9keSBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gIGlmIChyZXF1ZXN0LmJvZHkgPT0gbnVsbCAmJiBmZXRjaFBhcmFtcy5wcm9jZXNzUmVxdWVzdEVuZE9mQm9keSkge1xuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGZldGNoUGFyYW1zLnByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5KCkpXG4gIH0gZWxzZSBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwpIHtcbiAgICAvLyAyLiBPdGhlcndpc2UsIGlmIGJvZHkgaXMgbm9uLW51bGw6XG5cbiAgICAvLyAgICAxLiBMZXQgcHJvY2Vzc0JvZHlDaHVuayBnaXZlbiBieXRlcyBiZSB0aGVzZSBzdGVwczpcbiAgICBjb25zdCBwcm9jZXNzQm9keUNodW5rID0gYXN5bmMgZnVuY3Rpb24gKiAoYnl0ZXMpIHtcbiAgICAgIC8vIDEuIElmIHRoZSBvbmdvaW5nIGZldGNoIGlzIHRlcm1pbmF0ZWQsIHRoZW4gYWJvcnQgdGhlc2Ugc3RlcHMuXG4gICAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAyLiBSdW4gdGhpcyBzdGVwIGluIHBhcmFsbGVsOiB0cmFuc21pdCBieXRlcy5cbiAgICAgIHlpZWxkIGJ5dGVzXG5cbiAgICAgIC8vIDMuIElmIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlcXVlc3QgYm9keSBpcyBub24tbnVsbCwgdGhlbiBydW5cbiAgICAgIC8vIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlcXVlc3QgYm9keSBnaXZlbiBieXRlc1x1MjAxOXMgbGVuZ3RoLlxuICAgICAgZmV0Y2hQYXJhbXMucHJvY2Vzc1JlcXVlc3RCb2R5Q2h1bmtMZW5ndGg/LihieXRlcy5ieXRlTGVuZ3RoKVxuICAgIH1cblxuICAgIC8vIDIuIExldCBwcm9jZXNzRW5kT2ZCb2R5IGJlIHRoZXNlIHN0ZXBzOlxuICAgIGNvbnN0IHByb2Nlc3NFbmRPZkJvZHkgPSAoKSA9PiB7XG4gICAgICAvLyAxLiBJZiBmZXRjaFBhcmFtcyBpcyBjYW5jZWxlZCwgdGhlbiBhYm9ydCB0aGVzZSBzdGVwcy5cbiAgICAgIGlmIChpc0NhbmNlbGxlZChmZXRjaFBhcmFtcykpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIElmIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlcXVlc3QgZW5kLW9mLWJvZHkgaXMgbm9uLW51bGwsXG4gICAgICAvLyB0aGVuIHJ1biBmZXRjaFBhcmFtc1x1MjAxOXMgcHJvY2VzcyByZXF1ZXN0IGVuZC1vZi1ib2R5LlxuICAgICAgaWYgKGZldGNoUGFyYW1zLnByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5KSB7XG4gICAgICAgIGZldGNoUGFyYW1zLnByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5KClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAzLiBMZXQgcHJvY2Vzc0JvZHlFcnJvciBnaXZlbiBlIGJlIHRoZXNlIHN0ZXBzOlxuICAgIGNvbnN0IHByb2Nlc3NCb2R5RXJyb3IgPSAoZSkgPT4ge1xuICAgICAgLy8gMS4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gYWJvcnQgdGhlc2Ugc3RlcHMuXG4gICAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAyLiBJZiBlIGlzIGFuIFwiQWJvcnRFcnJvclwiIERPTUV4Y2VwdGlvbiwgdGhlbiBhYm9ydCBmZXRjaFBhcmFtc1x1MjAxOXMgY29udHJvbGxlci5cbiAgICAgIGlmIChlLm5hbWUgPT09ICdBYm9ydEVycm9yJykge1xuICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmFib3J0KClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIudGVybWluYXRlKGUpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNC4gSW5jcmVtZW50YWxseSByZWFkIHJlcXVlc3RcdTIwMTlzIGJvZHkgZ2l2ZW4gcHJvY2Vzc0JvZHlDaHVuaywgcHJvY2Vzc0VuZE9mQm9keSxcbiAgICAvLyBwcm9jZXNzQm9keUVycm9yLCBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gICAgcmVxdWVzdEJvZHkgPSAoYXN5bmMgZnVuY3Rpb24gKiAoKSB7XG4gICAgICB0cnkge1xuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGJ5dGVzIG9mIHJlcXVlc3QuYm9keS5zdHJlYW0pIHtcbiAgICAgICAgICB5aWVsZCAqIHByb2Nlc3NCb2R5Q2h1bmsoYnl0ZXMpXG4gICAgICAgIH1cbiAgICAgICAgcHJvY2Vzc0VuZE9mQm9keSgpXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgcHJvY2Vzc0JvZHlFcnJvcihlcnIpXG4gICAgICB9XG4gICAgfSkoKVxuICB9XG5cbiAgdHJ5IHtcbiAgICAvLyBzb2NrZXQgaXMgb25seSBwcm92aWRlZCBmb3Igd2Vic29ja2V0c1xuICAgIGNvbnN0IHsgYm9keSwgc3RhdHVzLCBzdGF0dXNUZXh0LCBoZWFkZXJzTGlzdCwgc29ja2V0IH0gPSBhd2FpdCBkaXNwYXRjaCh7IGJvZHk6IHJlcXVlc3RCb2R5IH0pXG5cbiAgICBpZiAoc29ja2V0KSB7XG4gICAgICByZXNwb25zZSA9IG1ha2VSZXNwb25zZSh7IHN0YXR1cywgc3RhdHVzVGV4dCwgaGVhZGVyc0xpc3QsIHNvY2tldCB9KVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpdGVyYXRvciA9IGJvZHlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdKClcbiAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIubmV4dCA9ICgpID0+IGl0ZXJhdG9yLm5leHQoKVxuXG4gICAgICByZXNwb25zZSA9IG1ha2VSZXNwb25zZSh7IHN0YXR1cywgc3RhdHVzVGV4dCwgaGVhZGVyc0xpc3QgfSlcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIDEwLiBJZiBhYm9ydGVkLCB0aGVuOlxuICAgIGlmIChlcnIubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgICAvLyAxLiBJZiBjb25uZWN0aW9uIHVzZXMgSFRUUC8yLCB0aGVuIHRyYW5zbWl0IGFuIFJTVF9TVFJFQU0gZnJhbWUuXG4gICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbm5lY3Rpb24uZGVzdHJveSgpXG5cbiAgICAgIC8vIDIuIFJldHVybiB0aGUgYXBwcm9wcmlhdGUgbmV0d29yayBlcnJvciBmb3IgZmV0Y2hQYXJhbXMuXG4gICAgICByZXR1cm4gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yKGZldGNoUGFyYW1zLCBlcnIpXG4gICAgfVxuXG4gICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoZXJyKVxuICB9XG5cbiAgLy8gMTEuIExldCBwdWxsQWxnb3JpdGhtIGJlIGFuIGFjdGlvbiB0aGF0IHJlc3VtZXMgdGhlIG9uZ29pbmcgZmV0Y2hcbiAgLy8gaWYgaXQgaXMgc3VzcGVuZGVkLlxuICBjb25zdCBwdWxsQWxnb3JpdGhtID0gKCkgPT4ge1xuICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIucmVzdW1lKClcbiAgfVxuXG4gIC8vIDEyLiBMZXQgY2FuY2VsQWxnb3JpdGhtIGJlIGFuIGFsZ29yaXRobSB0aGF0IGFib3J0cyBmZXRjaFBhcmFtc1x1MjAxOXNcbiAgLy8gY29udHJvbGxlciB3aXRoIHJlYXNvbiwgZ2l2ZW4gcmVhc29uLlxuICBjb25zdCBjYW5jZWxBbGdvcml0aG0gPSAocmVhc29uKSA9PiB7XG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5hYm9ydChyZWFzb24pXG4gIH1cblxuICAvLyAxMy4gTGV0IGhpZ2hXYXRlck1hcmsgYmUgYSBub24tbmVnYXRpdmUsIG5vbi1OYU4gbnVtYmVyLCBjaG9zZW4gYnlcbiAgLy8gdGhlIHVzZXIgYWdlbnQuXG4gIC8vIFRPRE9cblxuICAvLyAxNC4gTGV0IHNpemVBbGdvcml0aG0gYmUgYW4gYWxnb3JpdGhtIHRoYXQgYWNjZXB0cyBhIGNodW5rIG9iamVjdFxuICAvLyBhbmQgcmV0dXJucyBhIG5vbi1uZWdhdGl2ZSwgbm9uLU5hTiwgbm9uLWluZmluaXRlIG51bWJlciwgY2hvc2VuIGJ5IHRoZSB1c2VyIGFnZW50LlxuICAvLyBUT0RPXG5cbiAgLy8gMTUuIExldCBzdHJlYW0gYmUgYSBuZXcgUmVhZGFibGVTdHJlYW0uXG4gIC8vIDE2LiBTZXQgdXAgc3RyZWFtIHdpdGggcHVsbEFsZ29yaXRobSBzZXQgdG8gcHVsbEFsZ29yaXRobSxcbiAgLy8gY2FuY2VsQWxnb3JpdGhtIHNldCB0byBjYW5jZWxBbGdvcml0aG0sIGhpZ2hXYXRlck1hcmsgc2V0IHRvXG4gIC8vIGhpZ2hXYXRlck1hcmssIGFuZCBzaXplQWxnb3JpdGhtIHNldCB0byBzaXplQWxnb3JpdGhtLlxuICBpZiAoIVJlYWRhYmxlU3RyZWFtKSB7XG4gICAgUmVhZGFibGVTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbiAgfVxuXG4gIGNvbnN0IHN0cmVhbSA9IG5ldyBSZWFkYWJsZVN0cmVhbShcbiAgICB7XG4gICAgICBhc3luYyBzdGFydCAoY29udHJvbGxlcikge1xuICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2xsZXIgPSBjb250cm9sbGVyXG4gICAgICB9LFxuICAgICAgYXN5bmMgcHVsbCAoY29udHJvbGxlcikge1xuICAgICAgICBhd2FpdCBwdWxsQWxnb3JpdGhtKGNvbnRyb2xsZXIpXG4gICAgICB9LFxuICAgICAgYXN5bmMgY2FuY2VsIChyZWFzb24pIHtcbiAgICAgICAgYXdhaXQgY2FuY2VsQWxnb3JpdGhtKHJlYXNvbilcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIGhpZ2hXYXRlck1hcms6IDAsXG4gICAgICBzaXplICgpIHtcbiAgICAgICAgcmV0dXJuIDFcbiAgICAgIH1cbiAgICB9XG4gIClcblxuICAvLyAxNy4gUnVuIHRoZXNlIHN0ZXBzLCBidXQgYWJvcnQgd2hlbiB0aGUgb25nb2luZyBmZXRjaCBpcyB0ZXJtaW5hdGVkOlxuXG4gIC8vICAgIDEuIFNldCByZXNwb25zZVx1MjAxOXMgYm9keSB0byBhIG5ldyBib2R5IHdob3NlIHN0cmVhbSBpcyBzdHJlYW0uXG4gIHJlc3BvbnNlLmJvZHkgPSB7IHN0cmVhbSB9XG5cbiAgLy8gICAgMi4gSWYgcmVzcG9uc2UgaXMgbm90IGEgbmV0d29yayBlcnJvciBhbmQgcmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpc1xuICAvLyAgICBub3QgXCJuby1zdG9yZVwiLCB0aGVuIHVwZGF0ZSByZXNwb25zZSBpbiBodHRwQ2FjaGUgZm9yIHJlcXVlc3QuXG4gIC8vICAgIFRPRE9cblxuICAvLyAgICAzLiBJZiBpbmNsdWRlQ3JlZGVudGlhbHMgaXMgdHJ1ZSBhbmQgdGhlIHVzZXIgYWdlbnQgaXMgbm90IGNvbmZpZ3VyZWRcbiAgLy8gICAgdG8gYmxvY2sgY29va2llcyBmb3IgcmVxdWVzdCAoc2VlIHNlY3Rpb24gNyBvZiBbQ09PS0lFU10pLCB0aGVuIHJ1biB0aGVcbiAgLy8gICAgXCJzZXQtY29va2llLXN0cmluZ1wiIHBhcnNpbmcgYWxnb3JpdGhtIChzZWUgc2VjdGlvbiA1LjIgb2YgW0NPT0tJRVNdKSBvblxuICAvLyAgICB0aGUgdmFsdWUgb2YgZWFjaCBoZWFkZXIgd2hvc2UgbmFtZSBpcyBhIGJ5dGUtY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3JcbiAgLy8gICAgYFNldC1Db29raWVgIGluIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdCwgaWYgYW55LCBhbmQgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkwuXG4gIC8vICAgIFRPRE9cblxuICAvLyAxOC4gSWYgYWJvcnRlZCwgdGhlbjpcbiAgLy8gVE9ET1xuXG4gIC8vIDE5LiBSdW4gdGhlc2Ugc3RlcHMgaW4gcGFyYWxsZWw6XG5cbiAgLy8gICAgMS4gUnVuIHRoZXNlIHN0ZXBzLCBidXQgYWJvcnQgd2hlbiBmZXRjaFBhcmFtcyBpcyBjYW5jZWxlZDpcbiAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5vbigndGVybWluYXRlZCcsIG9uQWJvcnRlZClcbiAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5yZXN1bWUgPSBhc3luYyAoKSA9PiB7XG4gICAgLy8gMS4gV2hpbGUgdHJ1ZVxuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAvLyAxLTMuIFNlZSBvbkRhdGEuLi5cblxuICAgICAgLy8gNC4gU2V0IGJ5dGVzIHRvIHRoZSByZXN1bHQgb2YgaGFuZGxpbmcgY29udGVudCBjb2RpbmdzIGdpdmVuXG4gICAgICAvLyBjb2RpbmdzIGFuZCBieXRlcy5cbiAgICAgIGxldCBieXRlc1xuICAgICAgbGV0IGlzRmFpbHVyZVxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5uZXh0KClcblxuICAgICAgICBpZiAoaXNBYm9ydGVkKGZldGNoUGFyYW1zKSkge1xuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cblxuICAgICAgICBieXRlcyA9IGRvbmUgPyB1bmRlZmluZWQgOiB2YWx1ZVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGlmIChmZXRjaFBhcmFtcy5jb250cm9sbGVyLmVuZGVkICYmICF0aW1pbmdJbmZvLmVuY29kZWRCb2R5U2l6ZSkge1xuICAgICAgICAgIC8vIHpsaWIgZG9lc24ndCBsaWtlIGVtcHR5IHN0cmVhbXMuXG4gICAgICAgICAgYnl0ZXMgPSB1bmRlZmluZWRcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBieXRlcyA9IGVyclxuXG4gICAgICAgICAgLy8gZXJyIG1heSBiZSBwcm9wYWdhdGVkIGZyb20gdGhlIHJlc3VsdCBvZiBjYWxsaW5nIHJlYWRhYmxlc3RyZWFtLmNhbmNlbCxcbiAgICAgICAgICAvLyB3aGljaCBtaWdodCBub3QgYmUgYW4gZXJyb3IuIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8yMDA5XG4gICAgICAgICAgaXNGYWlsdXJlID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChieXRlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIDIuIE90aGVyd2lzZSwgaWYgdGhlIGJ5dGVzIHRyYW5zbWlzc2lvbiBmb3IgcmVzcG9uc2VcdTIwMTlzIG1lc3NhZ2VcbiAgICAgICAgLy8gYm9keSBpcyBkb25lIG5vcm1hbGx5IGFuZCBzdHJlYW0gaXMgcmVhZGFibGUsIHRoZW4gY2xvc2VcbiAgICAgICAgLy8gc3RyZWFtLCBmaW5hbGl6ZSByZXNwb25zZSBmb3IgZmV0Y2hQYXJhbXMgYW5kIHJlc3BvbnNlLCBhbmRcbiAgICAgICAgLy8gYWJvcnQgdGhlc2UgaW4tcGFyYWxsZWwgc3RlcHMuXG4gICAgICAgIHJlYWRhYmxlU3RyZWFtQ2xvc2UoZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb250cm9sbGVyKVxuXG4gICAgICAgIGZpbmFsaXplUmVzcG9uc2UoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKVxuXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyA1LiBJbmNyZWFzZSB0aW1pbmdJbmZvXHUyMDE5cyBkZWNvZGVkIGJvZHkgc2l6ZSBieSBieXRlc1x1MjAxOXMgbGVuZ3RoLlxuICAgICAgdGltaW5nSW5mby5kZWNvZGVkQm9keVNpemUgKz0gYnl0ZXM/LmJ5dGVMZW5ndGggPz8gMFxuXG4gICAgICAvLyA2LiBJZiBieXRlcyBpcyBmYWlsdXJlLCB0aGVuIHRlcm1pbmF0ZSBmZXRjaFBhcmFtc1x1MjAxOXMgY29udHJvbGxlci5cbiAgICAgIGlmIChpc0ZhaWx1cmUpIHtcbiAgICAgICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci50ZXJtaW5hdGUoYnl0ZXMpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyA3LiBFbnF1ZXVlIGEgVWludDhBcnJheSB3cmFwcGluZyBhbiBBcnJheUJ1ZmZlciBjb250YWluaW5nIGJ5dGVzXG4gICAgICAvLyBpbnRvIHN0cmVhbS5cbiAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29udHJvbGxlci5lbnF1ZXVlKG5ldyBVaW50OEFycmF5KGJ5dGVzKSlcblxuICAgICAgLy8gOC4gSWYgc3RyZWFtIGlzIGVycm9yZWQsIHRoZW4gdGVybWluYXRlIHRoZSBvbmdvaW5nIGZldGNoLlxuICAgICAgaWYgKGlzRXJyb3JlZChzdHJlYW0pKSB7XG4gICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIudGVybWluYXRlKClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDkuIElmIHN0cmVhbSBkb2Vzblx1MjAxOXQgbmVlZCBtb3JlIGRhdGEgYXNrIHRoZSB1c2VyIGFnZW50IHRvIHN1c3BlbmRcbiAgICAgIC8vIHRoZSBvbmdvaW5nIGZldGNoLlxuICAgICAgaWYgKCFmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2xsZXIuZGVzaXJlZFNpemUpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gICAgMi4gSWYgYWJvcnRlZCwgdGhlbjpcbiAgZnVuY3Rpb24gb25BYm9ydGVkIChyZWFzb24pIHtcbiAgICAvLyAyLiBJZiBmZXRjaFBhcmFtcyBpcyBhYm9ydGVkLCB0aGVuOlxuICAgIGlmIChpc0Fib3J0ZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICAvLyAxLiBTZXQgcmVzcG9uc2VcdTIwMTlzIGFib3J0ZWQgZmxhZy5cbiAgICAgIHJlc3BvbnNlLmFib3J0ZWQgPSB0cnVlXG5cbiAgICAgIC8vIDIuIElmIHN0cmVhbSBpcyByZWFkYWJsZSwgdGhlbiBlcnJvciBzdHJlYW0gd2l0aCB0aGUgcmVzdWx0IG9mXG4gICAgICAvLyAgICBkZXNlcmlhbGl6ZSBhIHNlcmlhbGl6ZWQgYWJvcnQgcmVhc29uIGdpdmVuIGZldGNoUGFyYW1zXHUyMDE5c1xuICAgICAgLy8gICAgY29udHJvbGxlclx1MjAxOXMgc2VyaWFsaXplZCBhYm9ydCByZWFzb24gYW5kIGFuXG4gICAgICAvLyAgICBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHJlYWxtLlxuICAgICAgaWYgKGlzUmVhZGFibGUoc3RyZWFtKSkge1xuICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2xsZXIuZXJyb3IoXG4gICAgICAgICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zZXJpYWxpemVkQWJvcnRSZWFzb25cbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAzLiBPdGhlcndpc2UsIGlmIHN0cmVhbSBpcyByZWFkYWJsZSwgZXJyb3Igc3RyZWFtIHdpdGggYSBUeXBlRXJyb3IuXG4gICAgICBpZiAoaXNSZWFkYWJsZShzdHJlYW0pKSB7XG4gICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29udHJvbGxlci5lcnJvcihuZXcgVHlwZUVycm9yKCd0ZXJtaW5hdGVkJywge1xuICAgICAgICAgIGNhdXNlOiBpc0Vycm9yTGlrZShyZWFzb24pID8gcmVhc29uIDogdW5kZWZpbmVkXG4gICAgICAgIH0pKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDQuIElmIGNvbm5lY3Rpb24gdXNlcyBIVFRQLzIsIHRoZW4gdHJhbnNtaXQgYW4gUlNUX1NUUkVBTSBmcmFtZS5cbiAgICAvLyA1LiBPdGhlcndpc2UsIHRoZSB1c2VyIGFnZW50IHNob3VsZCBjbG9zZSBjb25uZWN0aW9uIHVubGVzcyBpdCB3b3VsZCBiZSBiYWQgZm9yIHBlcmZvcm1hbmNlIHRvIGRvIHNvLlxuICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29ubmVjdGlvbi5kZXN0cm95KClcbiAgfVxuXG4gIC8vIDIwLiBSZXR1cm4gcmVzcG9uc2UuXG4gIHJldHVybiByZXNwb25zZVxuXG4gIGFzeW5jIGZ1bmN0aW9uIGRpc3BhdGNoICh7IGJvZHkgfSkge1xuICAgIGNvbnN0IHVybCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG4gICAgLyoqIEB0eXBlIHtpbXBvcnQoJy4uLy4uJykuQWdlbnR9ICovXG4gICAgY29uc3QgYWdlbnQgPSBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmRpc3BhdGNoZXJcblxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiBhZ2VudC5kaXNwYXRjaChcbiAgICAgIHtcbiAgICAgICAgcGF0aDogdXJsLnBhdGhuYW1lICsgdXJsLnNlYXJjaCxcbiAgICAgICAgb3JpZ2luOiB1cmwub3JpZ2luLFxuICAgICAgICBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgICBib2R5OiBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmRpc3BhdGNoZXIuaXNNb2NrQWN0aXZlID8gcmVxdWVzdC5ib2R5ICYmIChyZXF1ZXN0LmJvZHkuc291cmNlIHx8IHJlcXVlc3QuYm9keS5zdHJlYW0pIDogYm9keSxcbiAgICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXJzTGlzdC5lbnRyaWVzLFxuICAgICAgICBtYXhSZWRpcmVjdGlvbnM6IDAsXG4gICAgICAgIHVwZ3JhZGU6IHJlcXVlc3QubW9kZSA9PT0gJ3dlYnNvY2tldCcgPyAnd2Vic29ja2V0JyA6IHVuZGVmaW5lZFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgYm9keTogbnVsbCxcbiAgICAgICAgYWJvcnQ6IG51bGwsXG5cbiAgICAgICAgb25Db25uZWN0IChhYm9ydCkge1xuICAgICAgICAgIC8vIFRPRE8gKGZpeCk6IERvIHdlIG5lZWQgY29ubmVjdGlvbiBoZXJlP1xuICAgICAgICAgIGNvbnN0IHsgY29ubmVjdGlvbiB9ID0gZmV0Y2hQYXJhbXMuY29udHJvbGxlclxuXG4gICAgICAgICAgaWYgKGNvbm5lY3Rpb24uZGVzdHJveWVkKSB7XG4gICAgICAgICAgICBhYm9ydChuZXcgRE9NRXhjZXB0aW9uKCdUaGUgb3BlcmF0aW9uIHdhcyBhYm9ydGVkLicsICdBYm9ydEVycm9yJykpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIub24oJ3Rlcm1pbmF0ZWQnLCBhYm9ydClcbiAgICAgICAgICAgIHRoaXMuYWJvcnQgPSBjb25uZWN0aW9uLmFib3J0ID0gYWJvcnRcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgb25IZWFkZXJzIChzdGF0dXMsIGhlYWRlcnNMaXN0LCByZXN1bWUsIHN0YXR1c1RleHQpIHtcbiAgICAgICAgICBpZiAoc3RhdHVzIDwgMjAwKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgY29kaW5ncyA9IFtdXG4gICAgICAgICAgbGV0IGxvY2F0aW9uID0gJydcblxuICAgICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSGVhZGVycygpXG5cbiAgICAgICAgICAvLyBGb3IgSDIsIHRoZSBoZWFkZXJzIGFyZSBhIHBsYWluIEpTIG9iamVjdFxuICAgICAgICAgIC8vIFdlIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlbSBhbmQgaXRlcmF0ZSBhY2NvcmRpbmdseVxuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGhlYWRlcnNMaXN0KSkge1xuICAgICAgICAgICAgZm9yIChsZXQgbiA9IDA7IG4gPCBoZWFkZXJzTGlzdC5sZW5ndGg7IG4gKz0gMikge1xuICAgICAgICAgICAgICBjb25zdCBrZXkgPSBoZWFkZXJzTGlzdFtuICsgMF0udG9TdHJpbmcoJ2xhdGluMScpXG4gICAgICAgICAgICAgIGNvbnN0IHZhbCA9IGhlYWRlcnNMaXN0W24gKyAxXS50b1N0cmluZygnbGF0aW4xJylcbiAgICAgICAgICAgICAgaWYgKGtleS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC1lbmNvZGluZycpIHtcbiAgICAgICAgICAgICAgICAvLyBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNzIzMSNzZWN0aW9uLTMuMS4yLjFcbiAgICAgICAgICAgICAgICAvLyBcIkFsbCBjb250ZW50LWNvZGluZyB2YWx1ZXMgYXJlIGNhc2UtaW5zZW5zaXRpdmUuLi5cIlxuICAgICAgICAgICAgICAgIGNvZGluZ3MgPSB2YWwudG9Mb3dlckNhc2UoKS5zcGxpdCgnLCcpLm1hcCgoeCkgPT4geC50cmltKCkpXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoa2V5LnRvTG93ZXJDYXNlKCkgPT09ICdsb2NhdGlvbicpIHtcbiAgICAgICAgICAgICAgICBsb2NhdGlvbiA9IHZhbFxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaGVhZGVyc1trSGVhZGVyc0xpc3RdLmFwcGVuZChrZXksIHZhbClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGhlYWRlcnNMaXN0KVxuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgICAgICAgICBjb25zdCB2YWwgPSBoZWFkZXJzTGlzdFtrZXldXG4gICAgICAgICAgICAgIGlmIChrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtZW5jb2RpbmcnKSB7XG4gICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzcyMzEjc2VjdGlvbi0zLjEuMi4xXG4gICAgICAgICAgICAgICAgLy8gXCJBbGwgY29udGVudC1jb2RpbmcgdmFsdWVzIGFyZSBjYXNlLWluc2Vuc2l0aXZlLi4uXCJcbiAgICAgICAgICAgICAgICBjb2RpbmdzID0gdmFsLnRvTG93ZXJDYXNlKCkuc3BsaXQoJywnKS5tYXAoKHgpID0+IHgudHJpbSgpKS5yZXZlcnNlKClcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2xvY2F0aW9uJykge1xuICAgICAgICAgICAgICAgIGxvY2F0aW9uID0gdmFsXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBoZWFkZXJzW2tIZWFkZXJzTGlzdF0uYXBwZW5kKGtleSwgdmFsKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuYm9keSA9IG5ldyBSZWFkYWJsZSh7IHJlYWQ6IHJlc3VtZSB9KVxuXG4gICAgICAgICAgY29uc3QgZGVjb2RlcnMgPSBbXVxuXG4gICAgICAgICAgY29uc3Qgd2lsbEZvbGxvdyA9IHJlcXVlc3QucmVkaXJlY3QgPT09ICdmb2xsb3cnICYmXG4gICAgICAgICAgICBsb2NhdGlvbiAmJlxuICAgICAgICAgICAgcmVkaXJlY3RTdGF0dXNTZXQuaGFzKHN0YXR1cylcblxuICAgICAgICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvSGVhZGVycy9Db250ZW50LUVuY29kaW5nXG4gICAgICAgICAgaWYgKHJlcXVlc3QubWV0aG9kICE9PSAnSEVBRCcgJiYgcmVxdWVzdC5tZXRob2QgIT09ICdDT05ORUNUJyAmJiAhbnVsbEJvZHlTdGF0dXMuaW5jbHVkZXMoc3RhdHVzKSAmJiAhd2lsbEZvbGxvdykge1xuICAgICAgICAgICAgZm9yIChjb25zdCBjb2Rpbmcgb2YgY29kaW5ncykge1xuICAgICAgICAgICAgICAvLyBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTExMi5odG1sI3NlY3Rpb24tNy4yXG4gICAgICAgICAgICAgIGlmIChjb2RpbmcgPT09ICd4LWd6aXAnIHx8IGNvZGluZyA9PT0gJ2d6aXAnKSB7XG4gICAgICAgICAgICAgICAgZGVjb2RlcnMucHVzaCh6bGliLmNyZWF0ZUd1bnppcCh7XG4gICAgICAgICAgICAgICAgICAvLyBCZSBsZXNzIHN0cmljdCB3aGVuIGRlY29kaW5nIGNvbXByZXNzZWQgcmVzcG9uc2VzLCBzaW5jZSBzb21ldGltZXNcbiAgICAgICAgICAgICAgICAgIC8vIHNlcnZlcnMgc2VuZCBzbGlnaHRseSBpbnZhbGlkIHJlc3BvbnNlcyB0aGF0IGFyZSBzdGlsbCBhY2NlcHRlZFxuICAgICAgICAgICAgICAgICAgLy8gYnkgY29tbW9uIGJyb3dzZXJzLlxuICAgICAgICAgICAgICAgICAgLy8gQWx3YXlzIHVzaW5nIFpfU1lOQ19GTFVTSCBpcyB3aGF0IGNVUkwgZG9lcy5cbiAgICAgICAgICAgICAgICAgIGZsdXNoOiB6bGliLmNvbnN0YW50cy5aX1NZTkNfRkxVU0gsXG4gICAgICAgICAgICAgICAgICBmaW5pc2hGbHVzaDogemxpYi5jb25zdGFudHMuWl9TWU5DX0ZMVVNIXG4gICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoY29kaW5nID09PSAnZGVmbGF0ZScpIHtcbiAgICAgICAgICAgICAgICBkZWNvZGVycy5wdXNoKHpsaWIuY3JlYXRlSW5mbGF0ZSgpKVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNvZGluZyA9PT0gJ2JyJykge1xuICAgICAgICAgICAgICAgIGRlY29kZXJzLnB1c2goemxpYi5jcmVhdGVCcm90bGlEZWNvbXByZXNzKCkpXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZGVjb2RlcnMubGVuZ3RoID0gMFxuICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICAgIHN0YXR1cyxcbiAgICAgICAgICAgIHN0YXR1c1RleHQsXG4gICAgICAgICAgICBoZWFkZXJzTGlzdDogaGVhZGVyc1trSGVhZGVyc0xpc3RdLFxuICAgICAgICAgICAgYm9keTogZGVjb2RlcnMubGVuZ3RoXG4gICAgICAgICAgICAgID8gcGlwZWxpbmUodGhpcy5ib2R5LCAuLi5kZWNvZGVycywgKCkgPT4geyB9KVxuICAgICAgICAgICAgICA6IHRoaXMuYm9keS5vbignZXJyb3InLCAoKSA9PiB7fSlcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgfSxcblxuICAgICAgICBvbkRhdGEgKGNodW5rKSB7XG4gICAgICAgICAgaWYgKGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuZHVtcCkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gMS4gSWYgb25lIG9yIG1vcmUgYnl0ZXMgaGF2ZSBiZWVuIHRyYW5zbWl0dGVkIGZyb20gcmVzcG9uc2VcdTIwMTlzXG4gICAgICAgICAgLy8gbWVzc2FnZSBib2R5LCB0aGVuOlxuXG4gICAgICAgICAgLy8gIDEuIExldCBieXRlcyBiZSB0aGUgdHJhbnNtaXR0ZWQgYnl0ZXMuXG4gICAgICAgICAgY29uc3QgYnl0ZXMgPSBjaHVua1xuXG4gICAgICAgICAgLy8gIDIuIExldCBjb2RpbmdzIGJlIHRoZSByZXN1bHQgb2YgZXh0cmFjdGluZyBoZWFkZXIgbGlzdCB2YWx1ZXNcbiAgICAgICAgICAvLyAgZ2l2ZW4gYENvbnRlbnQtRW5jb2RpbmdgIGFuZCByZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICAgICAgLy8gIFNlZSBwdWxsQWxnb3JpdGhtLlxuXG4gICAgICAgICAgLy8gIDMuIEluY3JlYXNlIHRpbWluZ0luZm9cdTIwMTlzIGVuY29kZWQgYm9keSBzaXplIGJ5IGJ5dGVzXHUyMDE5cyBsZW5ndGguXG4gICAgICAgICAgdGltaW5nSW5mby5lbmNvZGVkQm9keVNpemUgKz0gYnl0ZXMuYnl0ZUxlbmd0aFxuXG4gICAgICAgICAgLy8gIDQuIFNlZSBwdWxsQWxnb3JpdGhtLi4uXG5cbiAgICAgICAgICByZXR1cm4gdGhpcy5ib2R5LnB1c2goYnl0ZXMpXG4gICAgICAgIH0sXG5cbiAgICAgICAgb25Db21wbGV0ZSAoKSB7XG4gICAgICAgICAgaWYgKHRoaXMuYWJvcnQpIHtcbiAgICAgICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIub2ZmKCd0ZXJtaW5hdGVkJywgdGhpcy5hYm9ydClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmVuZGVkID0gdHJ1ZVxuXG4gICAgICAgICAgdGhpcy5ib2R5LnB1c2gobnVsbClcbiAgICAgICAgfSxcblxuICAgICAgICBvbkVycm9yIChlcnJvcikge1xuICAgICAgICAgIGlmICh0aGlzLmFib3J0KSB7XG4gICAgICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLm9mZigndGVybWluYXRlZCcsIHRoaXMuYWJvcnQpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5ib2R5Py5kZXN0cm95KGVycm9yKVxuXG4gICAgICAgICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci50ZXJtaW5hdGUoZXJyb3IpXG5cbiAgICAgICAgICByZWplY3QoZXJyb3IpXG4gICAgICAgIH0sXG5cbiAgICAgICAgb25VcGdyYWRlIChzdGF0dXMsIGhlYWRlcnNMaXN0LCBzb2NrZXQpIHtcbiAgICAgICAgICBpZiAoc3RhdHVzICE9PSAxMDEpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSGVhZGVycygpXG5cbiAgICAgICAgICBmb3IgKGxldCBuID0gMDsgbiA8IGhlYWRlcnNMaXN0Lmxlbmd0aDsgbiArPSAyKSB7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBoZWFkZXJzTGlzdFtuICsgMF0udG9TdHJpbmcoJ2xhdGluMScpXG4gICAgICAgICAgICBjb25zdCB2YWwgPSBoZWFkZXJzTGlzdFtuICsgMV0udG9TdHJpbmcoJ2xhdGluMScpXG5cbiAgICAgICAgICAgIGhlYWRlcnNba0hlYWRlcnNMaXN0XS5hcHBlbmQoa2V5LCB2YWwpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgICBzdGF0dXMsXG4gICAgICAgICAgICBzdGF0dXNUZXh0OiBTVEFUVVNfQ09ERVNbc3RhdHVzXSxcbiAgICAgICAgICAgIGhlYWRlcnNMaXN0OiBoZWFkZXJzW2tIZWFkZXJzTGlzdF0sXG4gICAgICAgICAgICBzb2NrZXRcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuICAgICkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGZldGNoLFxuICBGZXRjaCxcbiAgZmV0Y2hpbmcsXG4gIGZpbmFsaXplQW5kUmVwb3J0VGltaW5nXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrU3RhdGU6IFN5bWJvbCgnRmlsZVJlYWRlciBzdGF0ZScpLFxuICBrUmVzdWx0OiBTeW1ib2woJ0ZpbGVSZWFkZXIgcmVzdWx0JyksXG4gIGtFcnJvcjogU3ltYm9sKCdGaWxlUmVhZGVyIGVycm9yJyksXG4gIGtMYXN0UHJvZ3Jlc3NFdmVudEZpcmVkOiBTeW1ib2woJ0ZpbGVSZWFkZXIgbGFzdCBwcm9ncmVzcyBldmVudCBmaXJlZCB0aW1lc3RhbXAnKSxcbiAga0V2ZW50czogU3ltYm9sKCdGaWxlUmVhZGVyIGV2ZW50cycpLFxuICBrQWJvcnRlZDogU3ltYm9sKCdGaWxlUmVhZGVyIGFib3J0ZWQnKVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcblxuY29uc3Qga1N0YXRlID0gU3ltYm9sKCdQcm9ncmVzc0V2ZW50IHN0YXRlJylcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8veGhyLnNwZWMud2hhdHdnLm9yZy8jcHJvZ3Jlc3NldmVudFxuICovXG5jbGFzcyBQcm9ncmVzc0V2ZW50IGV4dGVuZHMgRXZlbnQge1xuICBjb25zdHJ1Y3RvciAodHlwZSwgZXZlbnRJbml0RGljdCA9IHt9KSB7XG4gICAgdHlwZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyh0eXBlKVxuICAgIGV2ZW50SW5pdERpY3QgPSB3ZWJpZGwuY29udmVydGVycy5Qcm9ncmVzc0V2ZW50SW5pdChldmVudEluaXREaWN0ID8/IHt9KVxuXG4gICAgc3VwZXIodHlwZSwgZXZlbnRJbml0RGljdClcblxuICAgIHRoaXNba1N0YXRlXSA9IHtcbiAgICAgIGxlbmd0aENvbXB1dGFibGU6IGV2ZW50SW5pdERpY3QubGVuZ3RoQ29tcHV0YWJsZSxcbiAgICAgIGxvYWRlZDogZXZlbnRJbml0RGljdC5sb2FkZWQsXG4gICAgICB0b3RhbDogZXZlbnRJbml0RGljdC50b3RhbFxuICAgIH1cbiAgfVxuXG4gIGdldCBsZW5ndGhDb21wdXRhYmxlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBQcm9ncmVzc0V2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5sZW5ndGhDb21wdXRhYmxlXG4gIH1cblxuICBnZXQgbG9hZGVkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBQcm9ncmVzc0V2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5sb2FkZWRcbiAgfVxuXG4gIGdldCB0b3RhbCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUHJvZ3Jlc3NFdmVudClcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0udG90YWxcbiAgfVxufVxuXG53ZWJpZGwuY29udmVydGVycy5Qcm9ncmVzc0V2ZW50SW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAge1xuICAgIGtleTogJ2xlbmd0aENvbXB1dGFibGUnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYm9vbGVhbixcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdsb2FkZWQnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ3Vuc2lnbmVkIGxvbmcgbG9uZyddLFxuICAgIGRlZmF1bHRWYWx1ZTogMFxuICB9LFxuICB7XG4gICAga2V5OiAndG90YWwnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ3Vuc2lnbmVkIGxvbmcgbG9uZyddLFxuICAgIGRlZmF1bHRWYWx1ZTogMFxuICB9LFxuICB7XG4gICAga2V5OiAnYnViYmxlcycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfSxcbiAge1xuICAgIGtleTogJ2NhbmNlbGFibGUnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYm9vbGVhbixcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdjb21wb3NlZCcsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIFByb2dyZXNzRXZlbnRcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWVuY29kaW5nLWdldFxuICogQHBhcmFtIHtzdHJpbmd8dW5kZWZpbmVkfSBsYWJlbFxuICovXG5mdW5jdGlvbiBnZXRFbmNvZGluZyAobGFiZWwpIHtcbiAgaWYgKCFsYWJlbCkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSBhbnkgbGVhZGluZyBhbmQgdHJhaWxpbmcgQVNDSUkgd2hpdGVzcGFjZSBmcm9tIGxhYmVsLlxuICAvLyAyLiBJZiBsYWJlbCBpcyBhbiBBU0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciBhbnkgb2YgdGhlXG4gIC8vICAgIGxhYmVscyBsaXN0ZWQgaW4gdGhlIHRhYmxlIGJlbG93LCB0aGVuIHJldHVybiB0aGVcbiAgLy8gICAgY29ycmVzcG9uZGluZyBlbmNvZGluZzsgb3RoZXJ3aXNlIHJldHVybiBmYWlsdXJlLlxuICBzd2l0Y2ggKGxhYmVsLnRyaW0oKS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgY2FzZSAndW5pY29kZS0xLTEtdXRmLTgnOlxuICAgIGNhc2UgJ3VuaWNvZGUxMXV0ZjgnOlxuICAgIGNhc2UgJ3VuaWNvZGUyMHV0ZjgnOlxuICAgIGNhc2UgJ3V0Zi04JzpcbiAgICBjYXNlICd1dGY4JzpcbiAgICBjYXNlICd4LXVuaWNvZGUyMHV0ZjgnOlxuICAgICAgcmV0dXJuICdVVEYtOCdcbiAgICBjYXNlICc4NjYnOlxuICAgIGNhc2UgJ2NwODY2JzpcbiAgICBjYXNlICdjc2libTg2Nic6XG4gICAgY2FzZSAnaWJtODY2JzpcbiAgICAgIHJldHVybiAnSUJNODY2J1xuICAgIGNhc2UgJ2NzaXNvbGF0aW4yJzpcbiAgICBjYXNlICdpc28tODg1OS0yJzpcbiAgICBjYXNlICdpc28taXItMTAxJzpcbiAgICBjYXNlICdpc284ODU5LTInOlxuICAgIGNhc2UgJ2lzbzg4NTkyJzpcbiAgICBjYXNlICdpc29fODg1OS0yJzpcbiAgICBjYXNlICdpc29fODg1OS0yOjE5ODcnOlxuICAgIGNhc2UgJ2wyJzpcbiAgICBjYXNlICdsYXRpbjInOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0yJ1xuICAgIGNhc2UgJ2NzaXNvbGF0aW4zJzpcbiAgICBjYXNlICdpc28tODg1OS0zJzpcbiAgICBjYXNlICdpc28taXItMTA5JzpcbiAgICBjYXNlICdpc284ODU5LTMnOlxuICAgIGNhc2UgJ2lzbzg4NTkzJzpcbiAgICBjYXNlICdpc29fODg1OS0zJzpcbiAgICBjYXNlICdpc29fODg1OS0zOjE5ODgnOlxuICAgIGNhc2UgJ2wzJzpcbiAgICBjYXNlICdsYXRpbjMnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0zJ1xuICAgIGNhc2UgJ2NzaXNvbGF0aW40JzpcbiAgICBjYXNlICdpc28tODg1OS00JzpcbiAgICBjYXNlICdpc28taXItMTEwJzpcbiAgICBjYXNlICdpc284ODU5LTQnOlxuICAgIGNhc2UgJ2lzbzg4NTk0JzpcbiAgICBjYXNlICdpc29fODg1OS00JzpcbiAgICBjYXNlICdpc29fODg1OS00OjE5ODgnOlxuICAgIGNhc2UgJ2w0JzpcbiAgICBjYXNlICdsYXRpbjQnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS00J1xuICAgIGNhc2UgJ2NzaXNvbGF0aW5jeXJpbGxpYyc6XG4gICAgY2FzZSAnY3lyaWxsaWMnOlxuICAgIGNhc2UgJ2lzby04ODU5LTUnOlxuICAgIGNhc2UgJ2lzby1pci0xNDQnOlxuICAgIGNhc2UgJ2lzbzg4NTktNSc6XG4gICAgY2FzZSAnaXNvODg1OTUnOlxuICAgIGNhc2UgJ2lzb184ODU5LTUnOlxuICAgIGNhc2UgJ2lzb184ODU5LTU6MTk4OCc6XG4gICAgICByZXR1cm4gJ0lTTy04ODU5LTUnXG4gICAgY2FzZSAnYXJhYmljJzpcbiAgICBjYXNlICdhc21vLTcwOCc6XG4gICAgY2FzZSAnY3Npc284ODU5NmUnOlxuICAgIGNhc2UgJ2NzaXNvODg1OTZpJzpcbiAgICBjYXNlICdjc2lzb2xhdGluYXJhYmljJzpcbiAgICBjYXNlICdlY21hLTExNCc6XG4gICAgY2FzZSAnaXNvLTg4NTktNic6XG4gICAgY2FzZSAnaXNvLTg4NTktNi1lJzpcbiAgICBjYXNlICdpc28tODg1OS02LWknOlxuICAgIGNhc2UgJ2lzby1pci0xMjcnOlxuICAgIGNhc2UgJ2lzbzg4NTktNic6XG4gICAgY2FzZSAnaXNvODg1OTYnOlxuICAgIGNhc2UgJ2lzb184ODU5LTYnOlxuICAgIGNhc2UgJ2lzb184ODU5LTY6MTk4Nyc6XG4gICAgICByZXR1cm4gJ0lTTy04ODU5LTYnXG4gICAgY2FzZSAnY3Npc29sYXRpbmdyZWVrJzpcbiAgICBjYXNlICdlY21hLTExOCc6XG4gICAgY2FzZSAnZWxvdF85MjgnOlxuICAgIGNhc2UgJ2dyZWVrJzpcbiAgICBjYXNlICdncmVlazgnOlxuICAgIGNhc2UgJ2lzby04ODU5LTcnOlxuICAgIGNhc2UgJ2lzby1pci0xMjYnOlxuICAgIGNhc2UgJ2lzbzg4NTktNyc6XG4gICAgY2FzZSAnaXNvODg1OTcnOlxuICAgIGNhc2UgJ2lzb184ODU5LTcnOlxuICAgIGNhc2UgJ2lzb184ODU5LTc6MTk4Nyc6XG4gICAgY2FzZSAnc3VuX2V1X2dyZWVrJzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktNydcbiAgICBjYXNlICdjc2lzbzg4NTk4ZSc6XG4gICAgY2FzZSAnY3Npc29sYXRpbmhlYnJldyc6XG4gICAgY2FzZSAnaGVicmV3JzpcbiAgICBjYXNlICdpc28tODg1OS04JzpcbiAgICBjYXNlICdpc28tODg1OS04LWUnOlxuICAgIGNhc2UgJ2lzby1pci0xMzgnOlxuICAgIGNhc2UgJ2lzbzg4NTktOCc6XG4gICAgY2FzZSAnaXNvODg1OTgnOlxuICAgIGNhc2UgJ2lzb184ODU5LTgnOlxuICAgIGNhc2UgJ2lzb184ODU5LTg6MTk4OCc6XG4gICAgY2FzZSAndmlzdWFsJzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktOCdcbiAgICBjYXNlICdjc2lzbzg4NTk4aSc6XG4gICAgY2FzZSAnaXNvLTg4NTktOC1pJzpcbiAgICBjYXNlICdsb2dpY2FsJzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktOC1JJ1xuICAgIGNhc2UgJ2NzaXNvbGF0aW42JzpcbiAgICBjYXNlICdpc28tODg1OS0xMCc6XG4gICAgY2FzZSAnaXNvLWlyLTE1Nyc6XG4gICAgY2FzZSAnaXNvODg1OS0xMCc6XG4gICAgY2FzZSAnaXNvODg1OTEwJzpcbiAgICBjYXNlICdsNic6XG4gICAgY2FzZSAnbGF0aW42JzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktMTAnXG4gICAgY2FzZSAnaXNvLTg4NTktMTMnOlxuICAgIGNhc2UgJ2lzbzg4NTktMTMnOlxuICAgIGNhc2UgJ2lzbzg4NTkxMyc6XG4gICAgICByZXR1cm4gJ0lTTy04ODU5LTEzJ1xuICAgIGNhc2UgJ2lzby04ODU5LTE0JzpcbiAgICBjYXNlICdpc284ODU5LTE0JzpcbiAgICBjYXNlICdpc284ODU5MTQnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0xNCdcbiAgICBjYXNlICdjc2lzb2xhdGluOSc6XG4gICAgY2FzZSAnaXNvLTg4NTktMTUnOlxuICAgIGNhc2UgJ2lzbzg4NTktMTUnOlxuICAgIGNhc2UgJ2lzbzg4NTkxNSc6XG4gICAgY2FzZSAnaXNvXzg4NTktMTUnOlxuICAgIGNhc2UgJ2w5JzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktMTUnXG4gICAgY2FzZSAnaXNvLTg4NTktMTYnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0xNidcbiAgICBjYXNlICdjc2tvaThyJzpcbiAgICBjYXNlICdrb2knOlxuICAgIGNhc2UgJ2tvaTgnOlxuICAgIGNhc2UgJ2tvaTgtcic6XG4gICAgY2FzZSAna29pOF9yJzpcbiAgICAgIHJldHVybiAnS09JOC1SJ1xuICAgIGNhc2UgJ2tvaTgtcnUnOlxuICAgIGNhc2UgJ2tvaTgtdSc6XG4gICAgICByZXR1cm4gJ0tPSTgtVSdcbiAgICBjYXNlICdjc21hY2ludG9zaCc6XG4gICAgY2FzZSAnbWFjJzpcbiAgICBjYXNlICdtYWNpbnRvc2gnOlxuICAgIGNhc2UgJ3gtbWFjLXJvbWFuJzpcbiAgICAgIHJldHVybiAnbWFjaW50b3NoJ1xuICAgIGNhc2UgJ2lzby04ODU5LTExJzpcbiAgICBjYXNlICdpc284ODU5LTExJzpcbiAgICBjYXNlICdpc284ODU5MTEnOlxuICAgIGNhc2UgJ3Rpcy02MjAnOlxuICAgIGNhc2UgJ3dpbmRvd3MtODc0JzpcbiAgICAgIHJldHVybiAnd2luZG93cy04NzQnXG4gICAgY2FzZSAnY3AxMjUwJzpcbiAgICBjYXNlICd3aW5kb3dzLTEyNTAnOlxuICAgIGNhc2UgJ3gtY3AxMjUwJzpcbiAgICAgIHJldHVybiAnd2luZG93cy0xMjUwJ1xuICAgIGNhc2UgJ2NwMTI1MSc6XG4gICAgY2FzZSAnd2luZG93cy0xMjUxJzpcbiAgICBjYXNlICd4LWNwMTI1MSc6XG4gICAgICByZXR1cm4gJ3dpbmRvd3MtMTI1MSdcbiAgICBjYXNlICdhbnNpX3gzLjQtMTk2OCc6XG4gICAgY2FzZSAnYXNjaWknOlxuICAgIGNhc2UgJ2NwMTI1Mic6XG4gICAgY2FzZSAnY3A4MTknOlxuICAgIGNhc2UgJ2NzaXNvbGF0aW4xJzpcbiAgICBjYXNlICdpYm04MTknOlxuICAgIGNhc2UgJ2lzby04ODU5LTEnOlxuICAgIGNhc2UgJ2lzby1pci0xMDAnOlxuICAgIGNhc2UgJ2lzbzg4NTktMSc6XG4gICAgY2FzZSAnaXNvODg1OTEnOlxuICAgIGNhc2UgJ2lzb184ODU5LTEnOlxuICAgIGNhc2UgJ2lzb184ODU5LTE6MTk4Nyc6XG4gICAgY2FzZSAnbDEnOlxuICAgIGNhc2UgJ2xhdGluMSc6XG4gICAgY2FzZSAndXMtYXNjaWknOlxuICAgIGNhc2UgJ3dpbmRvd3MtMTI1Mic6XG4gICAgY2FzZSAneC1jcDEyNTInOlxuICAgICAgcmV0dXJuICd3aW5kb3dzLTEyNTInXG4gICAgY2FzZSAnY3AxMjUzJzpcbiAgICBjYXNlICd3aW5kb3dzLTEyNTMnOlxuICAgIGNhc2UgJ3gtY3AxMjUzJzpcbiAgICAgIHJldHVybiAnd2luZG93cy0xMjUzJ1xuICAgIGNhc2UgJ2NwMTI1NCc6XG4gICAgY2FzZSAnY3Npc29sYXRpbjUnOlxuICAgIGNhc2UgJ2lzby04ODU5LTknOlxuICAgIGNhc2UgJ2lzby1pci0xNDgnOlxuICAgIGNhc2UgJ2lzbzg4NTktOSc6XG4gICAgY2FzZSAnaXNvODg1OTknOlxuICAgIGNhc2UgJ2lzb184ODU5LTknOlxuICAgIGNhc2UgJ2lzb184ODU5LTk6MTk4OSc6XG4gICAgY2FzZSAnbDUnOlxuICAgIGNhc2UgJ2xhdGluNSc6XG4gICAgY2FzZSAnd2luZG93cy0xMjU0JzpcbiAgICBjYXNlICd4LWNwMTI1NCc6XG4gICAgICByZXR1cm4gJ3dpbmRvd3MtMTI1NCdcbiAgICBjYXNlICdjcDEyNTUnOlxuICAgIGNhc2UgJ3dpbmRvd3MtMTI1NSc6XG4gICAgY2FzZSAneC1jcDEyNTUnOlxuICAgICAgcmV0dXJuICd3aW5kb3dzLTEyNTUnXG4gICAgY2FzZSAnY3AxMjU2JzpcbiAgICBjYXNlICd3aW5kb3dzLTEyNTYnOlxuICAgIGNhc2UgJ3gtY3AxMjU2JzpcbiAgICAgIHJldHVybiAnd2luZG93cy0xMjU2J1xuICAgIGNhc2UgJ2NwMTI1Nyc6XG4gICAgY2FzZSAnd2luZG93cy0xMjU3JzpcbiAgICBjYXNlICd4LWNwMTI1Nyc6XG4gICAgICByZXR1cm4gJ3dpbmRvd3MtMTI1NydcbiAgICBjYXNlICdjcDEyNTgnOlxuICAgIGNhc2UgJ3dpbmRvd3MtMTI1OCc6XG4gICAgY2FzZSAneC1jcDEyNTgnOlxuICAgICAgcmV0dXJuICd3aW5kb3dzLTEyNTgnXG4gICAgY2FzZSAneC1tYWMtY3lyaWxsaWMnOlxuICAgIGNhc2UgJ3gtbWFjLXVrcmFpbmlhbic6XG4gICAgICByZXR1cm4gJ3gtbWFjLWN5cmlsbGljJ1xuICAgIGNhc2UgJ2NoaW5lc2UnOlxuICAgIGNhc2UgJ2NzZ2IyMzEyJzpcbiAgICBjYXNlICdjc2lzbzU4Z2IyMzEyODAnOlxuICAgIGNhc2UgJ2diMjMxMic6XG4gICAgY2FzZSAnZ2JfMjMxMic6XG4gICAgY2FzZSAnZ2JfMjMxMi04MCc6XG4gICAgY2FzZSAnZ2JrJzpcbiAgICBjYXNlICdpc28taXItNTgnOlxuICAgIGNhc2UgJ3gtZ2JrJzpcbiAgICAgIHJldHVybiAnR0JLJ1xuICAgIGNhc2UgJ2diMTgwMzAnOlxuICAgICAgcmV0dXJuICdnYjE4MDMwJ1xuICAgIGNhc2UgJ2JpZzUnOlxuICAgIGNhc2UgJ2JpZzUtaGtzY3MnOlxuICAgIGNhc2UgJ2NuLWJpZzUnOlxuICAgIGNhc2UgJ2NzYmlnNSc6XG4gICAgY2FzZSAneC14LWJpZzUnOlxuICAgICAgcmV0dXJuICdCaWc1J1xuICAgIGNhc2UgJ2NzZXVjcGtkZm10amFwYW5lc2UnOlxuICAgIGNhc2UgJ2V1Yy1qcCc6XG4gICAgY2FzZSAneC1ldWMtanAnOlxuICAgICAgcmV0dXJuICdFVUMtSlAnXG4gICAgY2FzZSAnY3Npc28yMDIyanAnOlxuICAgIGNhc2UgJ2lzby0yMDIyLWpwJzpcbiAgICAgIHJldHVybiAnSVNPLTIwMjItSlAnXG4gICAgY2FzZSAnY3NzaGlmdGppcyc6XG4gICAgY2FzZSAnbXM5MzInOlxuICAgIGNhc2UgJ21zX2thbmppJzpcbiAgICBjYXNlICdzaGlmdC1qaXMnOlxuICAgIGNhc2UgJ3NoaWZ0X2ppcyc6XG4gICAgY2FzZSAnc2ppcyc6XG4gICAgY2FzZSAnd2luZG93cy0zMWonOlxuICAgIGNhc2UgJ3gtc2ppcyc6XG4gICAgICByZXR1cm4gJ1NoaWZ0X0pJUydcbiAgICBjYXNlICdjc2V1Y2tyJzpcbiAgICBjYXNlICdjc2tzYzU2MDExOTg3JzpcbiAgICBjYXNlICdldWMta3InOlxuICAgIGNhc2UgJ2lzby1pci0xNDknOlxuICAgIGNhc2UgJ2tvcmVhbic6XG4gICAgY2FzZSAna3NfY181NjAxLTE5ODcnOlxuICAgIGNhc2UgJ2tzX2NfNTYwMS0xOTg5JzpcbiAgICBjYXNlICdrc2M1NjAxJzpcbiAgICBjYXNlICdrc2NfNTYwMSc6XG4gICAgY2FzZSAnd2luZG93cy05NDknOlxuICAgICAgcmV0dXJuICdFVUMtS1InXG4gICAgY2FzZSAnY3Npc28yMDIya3InOlxuICAgIGNhc2UgJ2h6LWdiLTIzMTInOlxuICAgIGNhc2UgJ2lzby0yMDIyLWNuJzpcbiAgICBjYXNlICdpc28tMjAyMi1jbi1leHQnOlxuICAgIGNhc2UgJ2lzby0yMDIyLWtyJzpcbiAgICBjYXNlICdyZXBsYWNlbWVudCc6XG4gICAgICByZXR1cm4gJ3JlcGxhY2VtZW50J1xuICAgIGNhc2UgJ3VuaWNvZGVmZmZlJzpcbiAgICBjYXNlICd1dGYtMTZiZSc6XG4gICAgICByZXR1cm4gJ1VURi0xNkJFJ1xuICAgIGNhc2UgJ2NzdW5pY29kZSc6XG4gICAgY2FzZSAnaXNvLTEwNjQ2LXVjcy0yJzpcbiAgICBjYXNlICd1Y3MtMic6XG4gICAgY2FzZSAndW5pY29kZSc6XG4gICAgY2FzZSAndW5pY29kZWZlZmYnOlxuICAgIGNhc2UgJ3V0Zi0xNic6XG4gICAgY2FzZSAndXRmLTE2bGUnOlxuICAgICAgcmV0dXJuICdVVEYtMTZMRSdcbiAgICBjYXNlICd4LXVzZXItZGVmaW5lZCc6XG4gICAgICByZXR1cm4gJ3gtdXNlci1kZWZpbmVkJ1xuICAgIGRlZmF1bHQ6IHJldHVybiAnZmFpbHVyZSdcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgZ2V0RW5jb2Rpbmdcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3Qge1xuICBrU3RhdGUsXG4gIGtFcnJvcixcbiAga1Jlc3VsdCxcbiAga0Fib3J0ZWQsXG4gIGtMYXN0UHJvZ3Jlc3NFdmVudEZpcmVkXG59ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgUHJvZ3Jlc3NFdmVudCB9ID0gcmVxdWlyZSgnLi9wcm9ncmVzc2V2ZW50JylcbmNvbnN0IHsgZ2V0RW5jb2RpbmcgfSA9IHJlcXVpcmUoJy4vZW5jb2RpbmcnKVxuY29uc3QgeyBET01FeGNlcHRpb24gfSA9IHJlcXVpcmUoJy4uL2ZldGNoL2NvbnN0YW50cycpXG5jb25zdCB7IHNlcmlhbGl6ZUFNaW1lVHlwZSwgcGFyc2VNSU1FVHlwZSB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvZGF0YVVSTCcpXG5jb25zdCB7IHR5cGVzIH0gPSByZXF1aXJlKCd1dGlsJylcbmNvbnN0IHsgU3RyaW5nRGVjb2RlciB9ID0gcmVxdWlyZSgnc3RyaW5nX2RlY29kZXInKVxuY29uc3QgeyBidG9hIH0gPSByZXF1aXJlKCdidWZmZXInKVxuXG4vKiogQHR5cGUge1Byb3BlcnR5RGVzY3JpcHRvcn0gKi9cbmNvbnN0IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMgPSB7XG4gIGVudW1lcmFibGU6IHRydWUsXG4gIHdyaXRhYmxlOiBmYWxzZSxcbiAgY29uZmlndXJhYmxlOiBmYWxzZVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL0ZpbGVBUEkvI3JlYWRPcGVyYXRpb25cbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ZpbGVyZWFkZXInKS5GaWxlUmVhZGVyfSBmclxuICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAqIEBwYXJhbSB7c3RyaW5nfSB0eXBlXG4gKiBAcGFyYW0ge3N0cmluZz99IGVuY29kaW5nTmFtZVxuICovXG5mdW5jdGlvbiByZWFkT3BlcmF0aW9uIChmciwgYmxvYiwgdHlwZSwgZW5jb2RpbmdOYW1lKSB7XG4gIC8vIDEuIElmIGZyXHUyMDE5cyBzdGF0ZSBpcyBcImxvYWRpbmdcIiwgdGhyb3cgYW4gSW52YWxpZFN0YXRlRXJyb3JcbiAgLy8gICAgRE9NRXhjZXB0aW9uLlxuICBpZiAoZnJba1N0YXRlXSA9PT0gJ2xvYWRpbmcnKSB7XG4gICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignSW52YWxpZCBzdGF0ZScsICdJbnZhbGlkU3RhdGVFcnJvcicpXG4gIH1cblxuICAvLyAyLiBTZXQgZnJcdTIwMTlzIHN0YXRlIHRvIFwibG9hZGluZ1wiLlxuICBmcltrU3RhdGVdID0gJ2xvYWRpbmcnXG5cbiAgLy8gMy4gU2V0IGZyXHUyMDE5cyByZXN1bHQgdG8gbnVsbC5cbiAgZnJba1Jlc3VsdF0gPSBudWxsXG5cbiAgLy8gNC4gU2V0IGZyXHUyMDE5cyBlcnJvciB0byBudWxsLlxuICBmcltrRXJyb3JdID0gbnVsbFxuXG4gIC8vIDUuIExldCBzdHJlYW0gYmUgdGhlIHJlc3VsdCBvZiBjYWxsaW5nIGdldCBzdHJlYW0gb24gYmxvYi5cbiAgLyoqIEB0eXBlIHtpbXBvcnQoJ3N0cmVhbS93ZWInKS5SZWFkYWJsZVN0cmVhbX0gKi9cbiAgY29uc3Qgc3RyZWFtID0gYmxvYi5zdHJlYW0oKVxuXG4gIC8vIDYuIExldCByZWFkZXIgYmUgdGhlIHJlc3VsdCBvZiBnZXR0aW5nIGEgcmVhZGVyIGZyb20gc3RyZWFtLlxuICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcblxuICAvLyA3LiBMZXQgYnl0ZXMgYmUgYW4gZW1wdHkgYnl0ZSBzZXF1ZW5jZS5cbiAgLyoqIEB0eXBlIHtVaW50OEFycmF5W119ICovXG4gIGNvbnN0IGJ5dGVzID0gW11cblxuICAvLyA4LiBMZXQgY2h1bmtQcm9taXNlIGJlIHRoZSByZXN1bHQgb2YgcmVhZGluZyBhIGNodW5rIGZyb21cbiAgLy8gICAgc3RyZWFtIHdpdGggcmVhZGVyLlxuICBsZXQgY2h1bmtQcm9taXNlID0gcmVhZGVyLnJlYWQoKVxuXG4gIC8vIDkuIExldCBpc0ZpcnN0Q2h1bmsgYmUgdHJ1ZS5cbiAgbGV0IGlzRmlyc3RDaHVuayA9IHRydWVcblxuICAvLyAxMC4gSW4gcGFyYWxsZWwsIHdoaWxlIHRydWU6XG4gIC8vIE5vdGU6IFwiSW4gcGFyYWxsZWxcIiBqdXN0IG1lYW5zIG5vbi1ibG9ja2luZ1xuICAvLyBOb3RlIDI6IHJlYWRPcGVyYXRpb24gaXRzZWxmIGNhbm5vdCBiZSBhc3luYyBhcyBkb3VibGVcbiAgLy8gcmVhZGluZyB0aGUgYm9keSB3b3VsZCB0aGVuIHJlamVjdCB0aGUgcHJvbWlzZSwgaW5zdGVhZFxuICAvLyBvZiB0aHJvd2luZyBhbiBlcnJvci5cbiAgOyhhc3luYyAoKSA9PiB7XG4gICAgd2hpbGUgKCFmcltrQWJvcnRlZF0pIHtcbiAgICAgIC8vIDEuIFdhaXQgZm9yIGNodW5rUHJvbWlzZSB0byBiZSBmdWxmaWxsZWQgb3IgcmVqZWN0ZWQuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGRvbmUsIHZhbHVlIH0gPSBhd2FpdCBjaHVua1Byb21pc2VcblxuICAgICAgICAvLyAyLiBJZiBjaHVua1Byb21pc2UgaXMgZnVsZmlsbGVkLCBhbmQgaXNGaXJzdENodW5rIGlzXG4gICAgICAgIC8vICAgIHRydWUsIHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkXG4gICAgICAgIC8vICAgIGxvYWRzdGFydCBhdCBmci5cbiAgICAgICAgaWYgKGlzRmlyc3RDaHVuayAmJiAhZnJba0Fib3J0ZWRdKSB7XG4gICAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdsb2Fkc3RhcnQnLCBmcilcbiAgICAgICAgICB9KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMy4gU2V0IGlzRmlyc3RDaHVuayB0byBmYWxzZS5cbiAgICAgICAgaXNGaXJzdENodW5rID0gZmFsc2VcblxuICAgICAgICAvLyA0LiBJZiBjaHVua1Byb21pc2UgaXMgZnVsZmlsbGVkIHdpdGggYW4gb2JqZWN0IHdob3NlXG4gICAgICAgIC8vICAgIGRvbmUgcHJvcGVydHkgaXMgZmFsc2UgYW5kIHdob3NlIHZhbHVlIHByb3BlcnR5IGlzXG4gICAgICAgIC8vICAgIGEgVWludDhBcnJheSBvYmplY3QsIHJ1biB0aGVzZSBzdGVwczpcbiAgICAgICAgaWYgKCFkb25lICYmIHR5cGVzLmlzVWludDhBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAvLyAxLiBMZXQgYnMgYmUgdGhlIGJ5dGUgc2VxdWVuY2UgcmVwcmVzZW50ZWQgYnkgdGhlXG4gICAgICAgICAgLy8gICAgVWludDhBcnJheSBvYmplY3QuXG5cbiAgICAgICAgICAvLyAyLiBBcHBlbmQgYnMgdG8gYnl0ZXMuXG4gICAgICAgICAgYnl0ZXMucHVzaCh2YWx1ZSlcblxuICAgICAgICAgIC8vIDMuIElmIHJvdWdobHkgNTBtcyBoYXZlIHBhc3NlZCBzaW5jZSB0aGVzZSBzdGVwc1xuICAgICAgICAgIC8vICAgIHdlcmUgbGFzdCBpbnZva2VkLCBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBhXG4gICAgICAgICAgLy8gICAgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkIHByb2dyZXNzIGF0IGZyLlxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgZnJba0xhc3RQcm9ncmVzc0V2ZW50RmlyZWRdID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgRGF0ZS5ub3coKSAtIGZyW2tMYXN0UHJvZ3Jlc3NFdmVudEZpcmVkXSA+PSA1MFxuICAgICAgICAgICAgKSAmJlxuICAgICAgICAgICAgIWZyW2tBYm9ydGVkXVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZnJba0xhc3RQcm9ncmVzc0V2ZW50RmlyZWRdID0gRGF0ZS5ub3coKVxuICAgICAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgICAgICBmaXJlQVByb2dyZXNzRXZlbnQoJ3Byb2dyZXNzJywgZnIpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuIFNldCBjaHVua1Byb21pc2UgdG8gdGhlIHJlc3VsdCBvZiByZWFkaW5nIGFcbiAgICAgICAgICAvLyAgICBjaHVuayBmcm9tIHN0cmVhbSB3aXRoIHJlYWRlci5cbiAgICAgICAgICBjaHVua1Byb21pc2UgPSByZWFkZXIucmVhZCgpXG4gICAgICAgIH0gZWxzZSBpZiAoZG9uZSkge1xuICAgICAgICAgIC8vIDUuIE90aGVyd2lzZSwgaWYgY2h1bmtQcm9taXNlIGlzIGZ1bGZpbGxlZCB3aXRoIGFuXG4gICAgICAgICAgLy8gICAgb2JqZWN0IHdob3NlIGRvbmUgcHJvcGVydHkgaXMgdHJ1ZSwgcXVldWUgYSB0YXNrXG4gICAgICAgICAgLy8gICAgdG8gcnVuIHRoZSBmb2xsb3dpbmcgc3RlcHMgYW5kIGFib3J0IHRoaXMgYWxnb3JpdGhtOlxuICAgICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgICAgIC8vIDEuIFNldCBmclx1MjAxOXMgc3RhdGUgdG8gXCJkb25lXCIuXG4gICAgICAgICAgICBmcltrU3RhdGVdID0gJ2RvbmUnXG5cbiAgICAgICAgICAgIC8vIDIuIExldCByZXN1bHQgYmUgdGhlIHJlc3VsdCBvZiBwYWNrYWdlIGRhdGEgZ2l2ZW5cbiAgICAgICAgICAgIC8vICAgIGJ5dGVzLCB0eXBlLCBibG9iXHUyMDE5cyB0eXBlLCBhbmQgZW5jb2RpbmdOYW1lLlxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gcGFja2FnZURhdGEoYnl0ZXMsIHR5cGUsIGJsb2IudHlwZSwgZW5jb2RpbmdOYW1lKVxuXG4gICAgICAgICAgICAgIC8vIDQuIEVsc2U6XG5cbiAgICAgICAgICAgICAgaWYgKGZyW2tBYm9ydGVkXSkge1xuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLy8gMS4gU2V0IGZyXHUyMDE5cyByZXN1bHQgdG8gcmVzdWx0LlxuICAgICAgICAgICAgICBmcltrUmVzdWx0XSA9IHJlc3VsdFxuXG4gICAgICAgICAgICAgIC8vIDIuIEZpcmUgYSBwcm9ncmVzcyBldmVudCBjYWxsZWQgbG9hZCBhdCB0aGUgZnIuXG4gICAgICAgICAgICAgIGZpcmVBUHJvZ3Jlc3NFdmVudCgnbG9hZCcsIGZyKVxuICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgLy8gMy4gSWYgcGFja2FnZSBkYXRhIHRocmV3IGFuIGV4Y2VwdGlvbiBlcnJvcjpcblxuICAgICAgICAgICAgICAvLyAxLiBTZXQgZnJcdTIwMTlzIGVycm9yIHRvIGVycm9yLlxuICAgICAgICAgICAgICBmcltrRXJyb3JdID0gZXJyb3JcblxuICAgICAgICAgICAgICAvLyAyLiBGaXJlIGEgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkIGVycm9yIGF0IGZyLlxuICAgICAgICAgICAgICBmaXJlQVByb2dyZXNzRXZlbnQoJ2Vycm9yJywgZnIpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIDUuIElmIGZyXHUyMDE5cyBzdGF0ZSBpcyBub3QgXCJsb2FkaW5nXCIsIGZpcmUgYSBwcm9ncmVzc1xuICAgICAgICAgICAgLy8gICAgZXZlbnQgY2FsbGVkIGxvYWRlbmQgYXQgdGhlIGZyLlxuICAgICAgICAgICAgaWYgKGZyW2tTdGF0ZV0gIT09ICdsb2FkaW5nJykge1xuICAgICAgICAgICAgICBmaXJlQVByb2dyZXNzRXZlbnQoJ2xvYWRlbmQnLCBmcilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgaWYgKGZyW2tBYm9ydGVkXSkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgLy8gNi4gT3RoZXJ3aXNlLCBpZiBjaHVua1Byb21pc2UgaXMgcmVqZWN0ZWQgd2l0aCBhblxuICAgICAgICAvLyAgICBlcnJvciBlcnJvciwgcXVldWUgYSB0YXNrIHRvIHJ1biB0aGUgZm9sbG93aW5nXG4gICAgICAgIC8vICAgIHN0ZXBzIGFuZCBhYm9ydCB0aGlzIGFsZ29yaXRobTpcbiAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgIC8vIDEuIFNldCBmclx1MjAxOXMgc3RhdGUgdG8gXCJkb25lXCIuXG4gICAgICAgICAgZnJba1N0YXRlXSA9ICdkb25lJ1xuXG4gICAgICAgICAgLy8gMi4gU2V0IGZyXHUyMDE5cyBlcnJvciB0byBlcnJvci5cbiAgICAgICAgICBmcltrRXJyb3JdID0gZXJyb3JcblxuICAgICAgICAgIC8vIDMuIEZpcmUgYSBwcm9ncmVzcyBldmVudCBjYWxsZWQgZXJyb3IgYXQgZnIuXG4gICAgICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdlcnJvcicsIGZyKVxuXG4gICAgICAgICAgLy8gNC4gSWYgZnJcdTIwMTlzIHN0YXRlIGlzIG5vdCBcImxvYWRpbmdcIiwgZmlyZSBhIHByb2dyZXNzXG4gICAgICAgICAgLy8gICAgZXZlbnQgY2FsbGVkIGxvYWRlbmQgYXQgZnIuXG4gICAgICAgICAgaWYgKGZyW2tTdGF0ZV0gIT09ICdsb2FkaW5nJykge1xuICAgICAgICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdsb2FkZW5kJywgZnIpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgfVxuICB9KSgpXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZmlyZS1hLXByb2dyZXNzLWV2ZW50XG4gKiBAc2VlIGh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1ldmVudC1maXJlXG4gKiBAcGFyYW0ge3N0cmluZ30gZSBUaGUgbmFtZSBvZiB0aGUgZXZlbnRcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ZpbGVyZWFkZXInKS5GaWxlUmVhZGVyfSByZWFkZXJcbiAqL1xuZnVuY3Rpb24gZmlyZUFQcm9ncmVzc0V2ZW50IChlLCByZWFkZXIpIHtcbiAgLy8gVGhlIHByb2dyZXNzIGV2ZW50IGUgZG9lcyBub3QgYnViYmxlLiBlLmJ1YmJsZXMgbXVzdCBiZSBmYWxzZVxuICAvLyBUaGUgcHJvZ3Jlc3MgZXZlbnQgZSBpcyBOT1QgY2FuY2VsYWJsZS4gZS5jYW5jZWxhYmxlIG11c3QgYmUgZmFsc2VcbiAgY29uc3QgZXZlbnQgPSBuZXcgUHJvZ3Jlc3NFdmVudChlLCB7XG4gICAgYnViYmxlczogZmFsc2UsXG4gICAgY2FuY2VsYWJsZTogZmFsc2VcbiAgfSlcblxuICByZWFkZXIuZGlzcGF0Y2hFdmVudChldmVudClcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNibG9iLXBhY2thZ2UtZGF0YVxuICogQHBhcmFtIHtVaW50OEFycmF5W119IGJ5dGVzXG4gKiBAcGFyYW0ge3N0cmluZ30gdHlwZVxuICogQHBhcmFtIHtzdHJpbmc/fSBtaW1lVHlwZVxuICogQHBhcmFtIHtzdHJpbmc/fSBlbmNvZGluZ05hbWVcbiAqL1xuZnVuY3Rpb24gcGFja2FnZURhdGEgKGJ5dGVzLCB0eXBlLCBtaW1lVHlwZSwgZW5jb2RpbmdOYW1lKSB7XG4gIC8vIDEuIEEgQmxvYiBoYXMgYW4gYXNzb2NpYXRlZCBwYWNrYWdlIGRhdGEgYWxnb3JpdGhtLCBnaXZlblxuICAvLyAgICBieXRlcywgYSB0eXBlLCBhIG9wdGlvbmFsIG1pbWVUeXBlLCBhbmQgYSBvcHRpb25hbFxuICAvLyAgICBlbmNvZGluZ05hbWUsIHdoaWNoIHN3aXRjaGVzIG9uIHR5cGUgYW5kIHJ1bnMgdGhlXG4gIC8vICAgIGFzc29jaWF0ZWQgc3RlcHM6XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSAnRGF0YVVSTCc6IHtcbiAgICAgIC8vIDEuIFJldHVybiBieXRlcyBhcyBhIERhdGFVUkwgW1JGQzIzOTddIHN1YmplY3QgdG9cbiAgICAgIC8vICAgIHRoZSBjb25zaWRlcmF0aW9ucyBiZWxvdzpcbiAgICAgIC8vICAqIFVzZSBtaW1lVHlwZSBhcyBwYXJ0IG9mIHRoZSBEYXRhIFVSTCBpZiBpdCBpc1xuICAgICAgLy8gICAgYXZhaWxhYmxlIGluIGtlZXBpbmcgd2l0aCB0aGUgRGF0YSBVUkxcbiAgICAgIC8vICAgIHNwZWNpZmljYXRpb24gW1JGQzIzOTddLlxuICAgICAgLy8gICogSWYgbWltZVR5cGUgaXMgbm90IGF2YWlsYWJsZSByZXR1cm4gYSBEYXRhIFVSTFxuICAgICAgLy8gICAgd2l0aG91dCBhIG1lZGlhLXR5cGUuIFtSRkMyMzk3XS5cblxuICAgICAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmMyMzk3I3NlY3Rpb24tM1xuICAgICAgLy8gZGF0YXVybCAgICA6PSBcImRhdGE6XCIgWyBtZWRpYXR5cGUgXSBbIFwiO2Jhc2U2NFwiIF0gXCIsXCIgZGF0YVxuICAgICAgLy8gbWVkaWF0eXBlICA6PSBbIHR5cGUgXCIvXCIgc3VidHlwZSBdICooIFwiO1wiIHBhcmFtZXRlciApXG4gICAgICAvLyBkYXRhICAgICAgIDo9ICp1cmxjaGFyXG4gICAgICAvLyBwYXJhbWV0ZXIgIDo9IGF0dHJpYnV0ZSBcIj1cIiB2YWx1ZVxuICAgICAgbGV0IGRhdGFVUkwgPSAnZGF0YTonXG5cbiAgICAgIGNvbnN0IHBhcnNlZCA9IHBhcnNlTUlNRVR5cGUobWltZVR5cGUgfHwgJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScpXG5cbiAgICAgIGlmIChwYXJzZWQgIT09ICdmYWlsdXJlJykge1xuICAgICAgICBkYXRhVVJMICs9IHNlcmlhbGl6ZUFNaW1lVHlwZShwYXJzZWQpXG4gICAgICB9XG5cbiAgICAgIGRhdGFVUkwgKz0gJztiYXNlNjQsJ1xuXG4gICAgICBjb25zdCBkZWNvZGVyID0gbmV3IFN0cmluZ0RlY29kZXIoJ2xhdGluMScpXG5cbiAgICAgIGZvciAoY29uc3QgY2h1bmsgb2YgYnl0ZXMpIHtcbiAgICAgICAgZGF0YVVSTCArPSBidG9hKGRlY29kZXIud3JpdGUoY2h1bmspKVxuICAgICAgfVxuXG4gICAgICBkYXRhVVJMICs9IGJ0b2EoZGVjb2Rlci5lbmQoKSlcblxuICAgICAgcmV0dXJuIGRhdGFVUkxcbiAgICB9XG4gICAgY2FzZSAnVGV4dCc6IHtcbiAgICAgIC8vIDEuIExldCBlbmNvZGluZyBiZSBmYWlsdXJlXG4gICAgICBsZXQgZW5jb2RpbmcgPSAnZmFpbHVyZSdcblxuICAgICAgLy8gMi4gSWYgdGhlIGVuY29kaW5nTmFtZSBpcyBwcmVzZW50LCBzZXQgZW5jb2RpbmcgdG8gdGhlXG4gICAgICAvLyAgICByZXN1bHQgb2YgZ2V0dGluZyBhbiBlbmNvZGluZyBmcm9tIGVuY29kaW5nTmFtZS5cbiAgICAgIGlmIChlbmNvZGluZ05hbWUpIHtcbiAgICAgICAgZW5jb2RpbmcgPSBnZXRFbmNvZGluZyhlbmNvZGluZ05hbWUpXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIElmIGVuY29kaW5nIGlzIGZhaWx1cmUsIGFuZCBtaW1lVHlwZSBpcyBwcmVzZW50OlxuICAgICAgaWYgKGVuY29kaW5nID09PSAnZmFpbHVyZScgJiYgbWltZVR5cGUpIHtcbiAgICAgICAgLy8gMS4gTGV0IHR5cGUgYmUgdGhlIHJlc3VsdCBvZiBwYXJzZSBhIE1JTUUgdHlwZVxuICAgICAgICAvLyAgICBnaXZlbiBtaW1lVHlwZS5cbiAgICAgICAgY29uc3QgdHlwZSA9IHBhcnNlTUlNRVR5cGUobWltZVR5cGUpXG5cbiAgICAgICAgLy8gMi4gSWYgdHlwZSBpcyBub3QgZmFpbHVyZSwgc2V0IGVuY29kaW5nIHRvIHRoZSByZXN1bHRcbiAgICAgICAgLy8gICAgb2YgZ2V0dGluZyBhbiBlbmNvZGluZyBmcm9tIHR5cGVcdTIwMTlzIHBhcmFtZXRlcnNbXCJjaGFyc2V0XCJdLlxuICAgICAgICBpZiAodHlwZSAhPT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgICAgZW5jb2RpbmcgPSBnZXRFbmNvZGluZyh0eXBlLnBhcmFtZXRlcnMuZ2V0KCdjaGFyc2V0JykpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gNC4gSWYgZW5jb2RpbmcgaXMgZmFpbHVyZSwgdGhlbiBzZXQgZW5jb2RpbmcgdG8gVVRGLTguXG4gICAgICBpZiAoZW5jb2RpbmcgPT09ICdmYWlsdXJlJykge1xuICAgICAgICBlbmNvZGluZyA9ICdVVEYtOCdcbiAgICAgIH1cblxuICAgICAgLy8gNS4gRGVjb2RlIGJ5dGVzIHVzaW5nIGZhbGxiYWNrIGVuY29kaW5nIGVuY29kaW5nLCBhbmRcbiAgICAgIC8vICAgIHJldHVybiB0aGUgcmVzdWx0LlxuICAgICAgcmV0dXJuIGRlY29kZShieXRlcywgZW5jb2RpbmcpXG4gICAgfVxuICAgIGNhc2UgJ0FycmF5QnVmZmVyJzoge1xuICAgICAgLy8gUmV0dXJuIGEgbmV3IEFycmF5QnVmZmVyIHdob3NlIGNvbnRlbnRzIGFyZSBieXRlcy5cbiAgICAgIGNvbnN0IHNlcXVlbmNlID0gY29tYmluZUJ5dGVTZXF1ZW5jZXMoYnl0ZXMpXG5cbiAgICAgIHJldHVybiBzZXF1ZW5jZS5idWZmZXJcbiAgICB9XG4gICAgY2FzZSAnQmluYXJ5U3RyaW5nJzoge1xuICAgICAgLy8gUmV0dXJuIGJ5dGVzIGFzIGEgYmluYXJ5IHN0cmluZywgaW4gd2hpY2ggZXZlcnkgYnl0ZVxuICAgICAgLy8gIGlzIHJlcHJlc2VudGVkIGJ5IGEgY29kZSB1bml0IG9mIGVxdWFsIHZhbHVlIFswLi4yNTVdLlxuICAgICAgbGV0IGJpbmFyeVN0cmluZyA9ICcnXG5cbiAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgU3RyaW5nRGVjb2RlcignbGF0aW4xJylcblxuICAgICAgZm9yIChjb25zdCBjaHVuayBvZiBieXRlcykge1xuICAgICAgICBiaW5hcnlTdHJpbmcgKz0gZGVjb2Rlci53cml0ZShjaHVuaylcbiAgICAgIH1cblxuICAgICAgYmluYXJ5U3RyaW5nICs9IGRlY29kZXIuZW5kKClcblxuICAgICAgcmV0dXJuIGJpbmFyeVN0cmluZ1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9lbmNvZGluZy5zcGVjLndoYXR3Zy5vcmcvI2RlY29kZVxuICogQHBhcmFtIHtVaW50OEFycmF5W119IGlvUXVldWVcbiAqIEBwYXJhbSB7c3RyaW5nfSBlbmNvZGluZ1xuICovXG5mdW5jdGlvbiBkZWNvZGUgKGlvUXVldWUsIGVuY29kaW5nKSB7XG4gIGNvbnN0IGJ5dGVzID0gY29tYmluZUJ5dGVTZXF1ZW5jZXMoaW9RdWV1ZSlcblxuICAvLyAxLiBMZXQgQk9NRW5jb2RpbmcgYmUgdGhlIHJlc3VsdCBvZiBCT00gc25pZmZpbmcgaW9RdWV1ZS5cbiAgY29uc3QgQk9NRW5jb2RpbmcgPSBCT01TbmlmZmluZyhieXRlcylcblxuICBsZXQgc2xpY2UgPSAwXG5cbiAgLy8gMi4gSWYgQk9NRW5jb2RpbmcgaXMgbm9uLW51bGw6XG4gIGlmIChCT01FbmNvZGluZyAhPT0gbnVsbCkge1xuICAgIC8vIDEuIFNldCBlbmNvZGluZyB0byBCT01FbmNvZGluZy5cbiAgICBlbmNvZGluZyA9IEJPTUVuY29kaW5nXG5cbiAgICAvLyAyLiBSZWFkIHRocmVlIGJ5dGVzIGZyb20gaW9RdWV1ZSwgaWYgQk9NRW5jb2RpbmcgaXNcbiAgICAvLyAgICBVVEYtODsgb3RoZXJ3aXNlIHJlYWQgdHdvIGJ5dGVzLlxuICAgIC8vICAgIChEbyBub3RoaW5nIHdpdGggdGhvc2UgYnl0ZXMuKVxuICAgIHNsaWNlID0gQk9NRW5jb2RpbmcgPT09ICdVVEYtOCcgPyAzIDogMlxuICB9XG5cbiAgLy8gMy4gUHJvY2VzcyBhIHF1ZXVlIHdpdGggYW4gaW5zdGFuY2Ugb2YgZW5jb2RpbmdcdTIwMTlzXG4gIC8vICAgIGRlY29kZXIsIGlvUXVldWUsIG91dHB1dCwgYW5kIFwicmVwbGFjZW1lbnRcIi5cblxuICAvLyA0LiBSZXR1cm4gb3V0cHV0LlxuXG4gIGNvbnN0IHNsaWNlZCA9IGJ5dGVzLnNsaWNlKHNsaWNlKVxuICByZXR1cm4gbmV3IFRleHREZWNvZGVyKGVuY29kaW5nKS5kZWNvZGUoc2xpY2VkKVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9lbmNvZGluZy5zcGVjLndoYXR3Zy5vcmcvI2JvbS1zbmlmZlxuICogQHBhcmFtIHtVaW50OEFycmF5fSBpb1F1ZXVlXG4gKi9cbmZ1bmN0aW9uIEJPTVNuaWZmaW5nIChpb1F1ZXVlKSB7XG4gIC8vIDEuIExldCBCT00gYmUgdGhlIHJlc3VsdCBvZiBwZWVraW5nIDMgYnl0ZXMgZnJvbSBpb1F1ZXVlLFxuICAvLyAgICBjb252ZXJ0ZWQgdG8gYSBieXRlIHNlcXVlbmNlLlxuICBjb25zdCBbYSwgYiwgY10gPSBpb1F1ZXVlXG5cbiAgLy8gMi4gRm9yIGVhY2ggb2YgdGhlIHJvd3MgaW4gdGhlIHRhYmxlIGJlbG93LCBzdGFydGluZyB3aXRoXG4gIC8vICAgIHRoZSBmaXJzdCBvbmUgYW5kIGdvaW5nIGRvd24sIGlmIEJPTSBzdGFydHMgd2l0aCB0aGVcbiAgLy8gICAgYnl0ZXMgZ2l2ZW4gaW4gdGhlIGZpcnN0IGNvbHVtbiwgdGhlbiByZXR1cm4gdGhlXG4gIC8vICAgIGVuY29kaW5nIGdpdmVuIGluIHRoZSBjZWxsIGluIHRoZSBzZWNvbmQgY29sdW1uIG9mIHRoYXRcbiAgLy8gICAgcm93LiBPdGhlcndpc2UsIHJldHVybiBudWxsLlxuICBpZiAoYSA9PT0gMHhFRiAmJiBiID09PSAweEJCICYmIGMgPT09IDB4QkYpIHtcbiAgICByZXR1cm4gJ1VURi04J1xuICB9IGVsc2UgaWYgKGEgPT09IDB4RkUgJiYgYiA9PT0gMHhGRikge1xuICAgIHJldHVybiAnVVRGLTE2QkUnXG4gIH0gZWxzZSBpZiAoYSA9PT0gMHhGRiAmJiBiID09PSAweEZFKSB7XG4gICAgcmV0dXJuICdVVEYtMTZMRSdcbiAgfVxuXG4gIHJldHVybiBudWxsXG59XG5cbi8qKlxuICogQHBhcmFtIHtVaW50OEFycmF5W119IHNlcXVlbmNlc1xuICovXG5mdW5jdGlvbiBjb21iaW5lQnl0ZVNlcXVlbmNlcyAoc2VxdWVuY2VzKSB7XG4gIGNvbnN0IHNpemUgPSBzZXF1ZW5jZXMucmVkdWNlKChhLCBiKSA9PiB7XG4gICAgcmV0dXJuIGEgKyBiLmJ5dGVMZW5ndGhcbiAgfSwgMClcblxuICBsZXQgb2Zmc2V0ID0gMFxuXG4gIHJldHVybiBzZXF1ZW5jZXMucmVkdWNlKChhLCBiKSA9PiB7XG4gICAgYS5zZXQoYiwgb2Zmc2V0KVxuICAgIG9mZnNldCArPSBiLmJ5dGVMZW5ndGhcbiAgICByZXR1cm4gYVxuICB9LCBuZXcgVWludDhBcnJheShzaXplKSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIHJlYWRPcGVyYXRpb24sXG4gIGZpcmVBUHJvZ3Jlc3NFdmVudFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIHJlYWRPcGVyYXRpb24sXG4gIGZpcmVBUHJvZ3Jlc3NFdmVudFxufSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7XG4gIGtTdGF0ZSxcbiAga0Vycm9yLFxuICBrUmVzdWx0LFxuICBrRXZlbnRzLFxuICBrQWJvcnRlZFxufSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxuY2xhc3MgRmlsZVJlYWRlciBleHRlbmRzIEV2ZW50VGFyZ2V0IHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXNba1N0YXRlXSA9ICdlbXB0eSdcbiAgICB0aGlzW2tSZXN1bHRdID0gbnVsbFxuICAgIHRoaXNba0Vycm9yXSA9IG51bGxcbiAgICB0aGlzW2tFdmVudHNdID0ge1xuICAgICAgbG9hZGVuZDogbnVsbCxcbiAgICAgIGVycm9yOiBudWxsLFxuICAgICAgYWJvcnQ6IG51bGwsXG4gICAgICBsb2FkOiBudWxsLFxuICAgICAgcHJvZ3Jlc3M6IG51bGwsXG4gICAgICBsb2Fkc3RhcnQ6IG51bGxcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZGZuLXJlYWRBc0FycmF5QnVmZmVyXG4gICAqIEBwYXJhbSB7aW1wb3J0KCdidWZmZXInKS5CbG9ifSBibG9iXG4gICAqL1xuICByZWFkQXNBcnJheUJ1ZmZlciAoYmxvYikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnRmlsZVJlYWRlci5yZWFkQXNBcnJheUJ1ZmZlcicgfSlcblxuICAgIGJsb2IgPSB3ZWJpZGwuY29udmVydGVycy5CbG9iKGJsb2IsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gICAgLy8gVGhlIHJlYWRBc0FycmF5QnVmZmVyKGJsb2IpIG1ldGhvZCwgd2hlbiBpbnZva2VkLFxuICAgIC8vIG11c3QgaW5pdGlhdGUgYSByZWFkIG9wZXJhdGlvbiBmb3IgYmxvYiB3aXRoIEFycmF5QnVmZmVyLlxuICAgIHJlYWRPcGVyYXRpb24odGhpcywgYmxvYiwgJ0FycmF5QnVmZmVyJylcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNyZWFkQXNCaW5hcnlTdHJpbmdcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAgICovXG4gIHJlYWRBc0JpbmFyeVN0cmluZyAoYmxvYikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnRmlsZVJlYWRlci5yZWFkQXNCaW5hcnlTdHJpbmcnIH0pXG5cbiAgICBibG9iID0gd2ViaWRsLmNvbnZlcnRlcnMuQmxvYihibG9iLCB7IHN0cmljdDogZmFsc2UgfSlcblxuICAgIC8vIFRoZSByZWFkQXNCaW5hcnlTdHJpbmcoYmxvYikgbWV0aG9kLCB3aGVuIGludm9rZWQsXG4gICAgLy8gbXVzdCBpbml0aWF0ZSBhIHJlYWQgb3BlcmF0aW9uIGZvciBibG9iIHdpdGggQmluYXJ5U3RyaW5nLlxuICAgIHJlYWRPcGVyYXRpb24odGhpcywgYmxvYiwgJ0JpbmFyeVN0cmluZycpXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jcmVhZEFzRGF0YVRleHRcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAgICogQHBhcmFtIHtzdHJpbmc/fSBlbmNvZGluZ1xuICAgKi9cbiAgcmVhZEFzVGV4dCAoYmxvYiwgZW5jb2RpbmcgPSB1bmRlZmluZWQpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0ZpbGVSZWFkZXIucmVhZEFzVGV4dCcgfSlcblxuICAgIGJsb2IgPSB3ZWJpZGwuY29udmVydGVycy5CbG9iKGJsb2IsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gICAgaWYgKGVuY29kaW5nICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGVuY29kaW5nID0gd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKGVuY29kaW5nKVxuICAgIH1cblxuICAgIC8vIFRoZSByZWFkQXNUZXh0KGJsb2IsIGVuY29kaW5nKSBtZXRob2QsIHdoZW4gaW52b2tlZCxcbiAgICAvLyBtdXN0IGluaXRpYXRlIGEgcmVhZCBvcGVyYXRpb24gZm9yIGJsb2Igd2l0aCBUZXh0IGFuZCBlbmNvZGluZy5cbiAgICByZWFkT3BlcmF0aW9uKHRoaXMsIGJsb2IsICdUZXh0JywgZW5jb2RpbmcpXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZGZuLXJlYWRBc0RhdGFVUkxcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAgICovXG4gIHJlYWRBc0RhdGFVUkwgKGJsb2IpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0ZpbGVSZWFkZXIucmVhZEFzRGF0YVVSTCcgfSlcblxuICAgIGJsb2IgPSB3ZWJpZGwuY29udmVydGVycy5CbG9iKGJsb2IsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gICAgLy8gVGhlIHJlYWRBc0RhdGFVUkwoYmxvYikgbWV0aG9kLCB3aGVuIGludm9rZWQsIG11c3RcbiAgICAvLyBpbml0aWF0ZSBhIHJlYWQgb3BlcmF0aW9uIGZvciBibG9iIHdpdGggRGF0YVVSTC5cbiAgICByZWFkT3BlcmF0aW9uKHRoaXMsIGJsb2IsICdEYXRhVVJMJylcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNkZm4tYWJvcnRcbiAgICovXG4gIGFib3J0ICgpIHtcbiAgICAvLyAxLiBJZiB0aGlzJ3Mgc3RhdGUgaXMgXCJlbXB0eVwiIG9yIGlmIHRoaXMncyBzdGF0ZSBpc1xuICAgIC8vICAgIFwiZG9uZVwiIHNldCB0aGlzJ3MgcmVzdWx0IHRvIG51bGwgYW5kIHRlcm1pbmF0ZVxuICAgIC8vICAgIHRoaXMgYWxnb3JpdGhtLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0gPT09ICdlbXB0eScgfHwgdGhpc1trU3RhdGVdID09PSAnZG9uZScpIHtcbiAgICAgIHRoaXNba1Jlc3VsdF0gPSBudWxsXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyAyLiBJZiB0aGlzJ3Mgc3RhdGUgaXMgXCJsb2FkaW5nXCIgc2V0IHRoaXMncyBzdGF0ZSB0b1xuICAgIC8vICAgIFwiZG9uZVwiIGFuZCBzZXQgdGhpcydzIHJlc3VsdCB0byBudWxsLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0gPT09ICdsb2FkaW5nJykge1xuICAgICAgdGhpc1trU3RhdGVdID0gJ2RvbmUnXG4gICAgICB0aGlzW2tSZXN1bHRdID0gbnVsbFxuICAgIH1cblxuICAgIC8vIDMuIElmIHRoZXJlIGFyZSBhbnkgdGFza3MgZnJvbSB0aGlzIG9uIHRoZSBmaWxlIHJlYWRpbmdcbiAgICAvLyAgICB0YXNrIHNvdXJjZSBpbiBhbiBhZmZpbGlhdGVkIHRhc2sgcXVldWUsIHRoZW4gcmVtb3ZlXG4gICAgLy8gICAgdGhvc2UgdGFza3MgZnJvbSB0aGF0IHRhc2sgcXVldWUuXG4gICAgdGhpc1trQWJvcnRlZF0gPSB0cnVlXG5cbiAgICAvLyA0LiBUZXJtaW5hdGUgdGhlIGFsZ29yaXRobSBmb3IgdGhlIHJlYWQgbWV0aG9kIGJlaW5nIHByb2Nlc3NlZC5cbiAgICAvLyBUT0RPXG5cbiAgICAvLyA1LiBGaXJlIGEgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkIGFib3J0IGF0IHRoaXMuXG4gICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdhYm9ydCcsIHRoaXMpXG5cbiAgICAvLyA2LiBJZiB0aGlzJ3Mgc3RhdGUgaXMgbm90IFwibG9hZGluZ1wiLCBmaXJlIGEgcHJvZ3Jlc3NcbiAgICAvLyAgICBldmVudCBjYWxsZWQgbG9hZGVuZCBhdCB0aGlzLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0gIT09ICdsb2FkaW5nJykge1xuICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdsb2FkZW5kJywgdGhpcylcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZG9tLWZpbGVyZWFkZXItcmVhZHlzdGF0ZVxuICAgKi9cbiAgZ2V0IHJlYWR5U3RhdGUgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICBzd2l0Y2ggKHRoaXNba1N0YXRlXSkge1xuICAgICAgY2FzZSAnZW1wdHknOiByZXR1cm4gdGhpcy5FTVBUWVxuICAgICAgY2FzZSAnbG9hZGluZyc6IHJldHVybiB0aGlzLkxPQURJTkdcbiAgICAgIGNhc2UgJ2RvbmUnOiByZXR1cm4gdGhpcy5ET05FXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL0ZpbGVBUEkvI2RvbS1maWxlcmVhZGVyLXJlc3VsdFxuICAgKi9cbiAgZ2V0IHJlc3VsdCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIC8vIFRoZSByZXN1bHQgYXR0cmlidXRlXHUyMDE5cyBnZXR0ZXIsIHdoZW4gaW52b2tlZCwgbXVzdCByZXR1cm5cbiAgICAvLyB0aGlzJ3MgcmVzdWx0LlxuICAgIHJldHVybiB0aGlzW2tSZXN1bHRdXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZG9tLWZpbGVyZWFkZXItZXJyb3JcbiAgICovXG4gIGdldCBlcnJvciAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIC8vIFRoZSBlcnJvciBhdHRyaWJ1dGVcdTIwMTlzIGdldHRlciwgd2hlbiBpbnZva2VkLCBtdXN0IHJldHVyblxuICAgIC8vIHRoaXMncyBlcnJvci5cbiAgICByZXR1cm4gdGhpc1trRXJyb3JdXG4gIH1cblxuICBnZXQgb25sb2FkZW5kICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgcmV0dXJuIHRoaXNba0V2ZW50c10ubG9hZGVuZFxuICB9XG5cbiAgc2V0IG9ubG9hZGVuZCAoZm4pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgaWYgKHRoaXNba0V2ZW50c10ubG9hZGVuZCkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkZW5kJywgdGhpc1trRXZlbnRzXS5sb2FkZW5kKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXNba0V2ZW50c10ubG9hZGVuZCA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWRlbmQnLCBmbilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpc1trRXZlbnRzXS5sb2FkZW5kID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBvbmVycm9yICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgcmV0dXJuIHRoaXNba0V2ZW50c10uZXJyb3JcbiAgfVxuXG4gIHNldCBvbmVycm9yIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICBpZiAodGhpc1trRXZlbnRzXS5lcnJvcikge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdlcnJvcicsIHRoaXNba0V2ZW50c10uZXJyb3IpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpc1trRXZlbnRzXS5lcnJvciA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXNba0V2ZW50c10uZXJyb3IgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgZ2V0IG9ubG9hZHN0YXJ0ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgcmV0dXJuIHRoaXNba0V2ZW50c10ubG9hZHN0YXJ0XG4gIH1cblxuICBzZXQgb25sb2Fkc3RhcnQgKGZuKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIGlmICh0aGlzW2tFdmVudHNdLmxvYWRzdGFydCkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2Fkc3RhcnQnLCB0aGlzW2tFdmVudHNdLmxvYWRzdGFydClcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmxvYWRzdGFydCA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWRzdGFydCcsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmxvYWRzdGFydCA9IG51bGxcbiAgICB9XG4gIH1cblxuICBnZXQgb25wcm9ncmVzcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIHJldHVybiB0aGlzW2tFdmVudHNdLnByb2dyZXNzXG4gIH1cblxuICBzZXQgb25wcm9ncmVzcyAoZm4pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgaWYgKHRoaXNba0V2ZW50c10ucHJvZ3Jlc3MpIHtcbiAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcigncHJvZ3Jlc3MnLCB0aGlzW2tFdmVudHNdLnByb2dyZXNzKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXNba0V2ZW50c10ucHJvZ3Jlc3MgPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdwcm9ncmVzcycsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tFdmVudHNdLnByb2dyZXNzID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBvbmxvYWQgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICByZXR1cm4gdGhpc1trRXZlbnRzXS5sb2FkXG4gIH1cblxuICBzZXQgb25sb2FkIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICBpZiAodGhpc1trRXZlbnRzXS5sb2FkKSB7XG4gICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCB0aGlzW2tFdmVudHNdLmxvYWQpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpc1trRXZlbnRzXS5sb2FkID0gZm5cbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmxvYWQgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgZ2V0IG9uYWJvcnQgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICByZXR1cm4gdGhpc1trRXZlbnRzXS5hYm9ydFxuICB9XG5cbiAgc2V0IG9uYWJvcnQgKGZuKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIGlmICh0aGlzW2tFdmVudHNdLmFib3J0KSB7XG4gICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0JywgdGhpc1trRXZlbnRzXS5hYm9ydClcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmFib3J0ID0gZm5cbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBmbilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpc1trRXZlbnRzXS5hYm9ydCA9IG51bGxcbiAgICB9XG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL0ZpbGVBUEkvI2RvbS1maWxlcmVhZGVyLWVtcHR5XG5GaWxlUmVhZGVyLkVNUFRZID0gRmlsZVJlYWRlci5wcm90b3R5cGUuRU1QVFkgPSAwXG4vLyBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZG9tLWZpbGVyZWFkZXItbG9hZGluZ1xuRmlsZVJlYWRlci5MT0FESU5HID0gRmlsZVJlYWRlci5wcm90b3R5cGUuTE9BRElORyA9IDFcbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNkb20tZmlsZXJlYWRlci1kb25lXG5GaWxlUmVhZGVyLkRPTkUgPSBGaWxlUmVhZGVyLnByb3RvdHlwZS5ET05FID0gMlxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhGaWxlUmVhZGVyLnByb3RvdHlwZSwge1xuICBFTVBUWTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgTE9BRElORzogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgRE9ORTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgcmVhZEFzQXJyYXlCdWZmZXI6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlYWRBc0JpbmFyeVN0cmluZzoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVhZEFzVGV4dDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVhZEFzRGF0YVVSTDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYWJvcnQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlYWR5U3RhdGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlc3VsdDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZXJyb3I6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ubG9hZHN0YXJ0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBvbnByb2dyZXNzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBvbmxvYWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9uYWJvcnQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9uZXJyb3I6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ubG9hZGVuZDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0ZpbGVSZWFkZXInLFxuICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoRmlsZVJlYWRlciwge1xuICBFTVBUWTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgTE9BRElORzogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgRE9ORTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9yc1xufSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIEZpbGVSZWFkZXJcbn1cbiIsICIndXNlIHN0cmljdCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGtDb25zdHJ1Y3Q6IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpLmtDb25zdHJ1Y3Rcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgVVJMU2VyaWFsaXplciB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvZGF0YVVSTCcpXG5jb25zdCB7IGlzVmFsaWRIZWFkZXJOYW1lIH0gPSByZXF1aXJlKCcuLi9mZXRjaC91dGlsJylcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdXJsLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC11cmwtZXF1YWxzXG4gKiBAcGFyYW0ge1VSTH0gQVxuICogQHBhcmFtIHtVUkx9IEJcbiAqIEBwYXJhbSB7Ym9vbGVhbiB8IHVuZGVmaW5lZH0gZXhjbHVkZUZyYWdtZW50XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAqL1xuZnVuY3Rpb24gdXJsRXF1YWxzIChBLCBCLCBleGNsdWRlRnJhZ21lbnQgPSBmYWxzZSkge1xuICBjb25zdCBzZXJpYWxpemVkQSA9IFVSTFNlcmlhbGl6ZXIoQSwgZXhjbHVkZUZyYWdtZW50KVxuXG4gIGNvbnN0IHNlcmlhbGl6ZWRCID0gVVJMU2VyaWFsaXplcihCLCBleGNsdWRlRnJhZ21lbnQpXG5cbiAgcmV0dXJuIHNlcmlhbGl6ZWRBID09PSBzZXJpYWxpemVkQlxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2Nocm9taXVtL2Nocm9taXVtL2Jsb2IvNjk0ZDIwZDEzNGNiNTUzZDhkODllNTUwMGI5MTQ4MDEyYjFiYTI5OS9jb250ZW50L2Jyb3dzZXIvY2FjaGVfc3RvcmFnZS9jYWNoZV9zdG9yYWdlX2NhY2hlLmNjI0wyNjAtTDI2MlxuICogQHBhcmFtIHtzdHJpbmd9IGhlYWRlclxuICovXG5mdW5jdGlvbiBmaWVsZFZhbHVlcyAoaGVhZGVyKSB7XG4gIGFzc2VydChoZWFkZXIgIT09IG51bGwpXG5cbiAgY29uc3QgdmFsdWVzID0gW11cblxuICBmb3IgKGxldCB2YWx1ZSBvZiBoZWFkZXIuc3BsaXQoJywnKSkge1xuICAgIHZhbHVlID0gdmFsdWUudHJpbSgpXG5cbiAgICBpZiAoIXZhbHVlLmxlbmd0aCkge1xuICAgICAgY29udGludWVcbiAgICB9IGVsc2UgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZSh2YWx1ZSkpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgdmFsdWVzLnB1c2godmFsdWUpXG4gIH1cblxuICByZXR1cm4gdmFsdWVzXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICB1cmxFcXVhbHMsXG4gIGZpZWxkVmFsdWVzXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga0NvbnN0cnVjdCB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgdXJsRXF1YWxzLCBmaWVsZFZhbHVlczogZ2V0RmllbGRWYWx1ZXMgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IGtFbnVtZXJhYmxlUHJvcGVydHksIGlzRGlzdHVyYmVkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBrSGVhZGVyc0xpc3QgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsgUmVzcG9uc2UsIGNsb25lUmVzcG9uc2UgfSA9IHJlcXVpcmUoJy4uL2ZldGNoL3Jlc3BvbnNlJylcbmNvbnN0IHsgUmVxdWVzdCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvcmVxdWVzdCcpXG5jb25zdCB7IGtTdGF0ZSwga0hlYWRlcnMsIGtHdWFyZCwga1JlYWxtIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9zeW1ib2xzJylcbmNvbnN0IHsgZmV0Y2hpbmcgfSA9IHJlcXVpcmUoJy4uL2ZldGNoL2luZGV4JylcbmNvbnN0IHsgdXJsSXNIdHRwSHR0cHNTY2hlbWUsIGNyZWF0ZURlZmVycmVkUHJvbWlzZSwgcmVhZEFsbEJ5dGVzIH0gPSByZXF1aXJlKCcuLi9mZXRjaC91dGlsJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5cbi8qKlxuICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZGZuLWNhY2hlLWJhdGNoLW9wZXJhdGlvblxuICogQHR5cGVkZWYge09iamVjdH0gQ2FjaGVCYXRjaE9wZXJhdGlvblxuICogQHByb3BlcnR5IHsnZGVsZXRlJyB8ICdwdXQnfSB0eXBlXG4gKiBAcHJvcGVydHkge2FueX0gcmVxdWVzdFxuICogQHByb3BlcnR5IHthbnl9IHJlc3BvbnNlXG4gKiBAcHJvcGVydHkge2ltcG9ydCgnLi4vLi4vdHlwZXMvY2FjaGUnKS5DYWNoZVF1ZXJ5T3B0aW9uc30gb3B0aW9uc1xuICovXG5cbi8qKlxuICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZGZuLXJlcXVlc3QtcmVzcG9uc2UtbGlzdFxuICogQHR5cGVkZWYge1thbnksIGFueV1bXX0gcmVxdWVzdFJlc3BvbnNlTGlzdFxuICovXG5cbmNsYXNzIENhY2hlIHtcbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2Rmbi1yZWxldmFudC1yZXF1ZXN0LXJlc3BvbnNlLWxpc3RcbiAgICogQHR5cGUge3JlcXVlc3RSZXNwb25zZUxpc3R9XG4gICAqL1xuICAjcmVsZXZhbnRSZXF1ZXN0UmVzcG9uc2VMaXN0XG5cbiAgY29uc3RydWN0b3IgKCkge1xuICAgIGlmIChhcmd1bWVudHNbMF0gIT09IGtDb25zdHJ1Y3QpIHtcbiAgICAgIHdlYmlkbC5pbGxlZ2FsQ29uc3RydWN0b3IoKVxuICAgIH1cblxuICAgIHRoaXMuI3JlbGV2YW50UmVxdWVzdFJlc3BvbnNlTGlzdCA9IGFyZ3VtZW50c1sxXVxuICB9XG5cbiAgYXN5bmMgbWF0Y2ggKHJlcXVlc3QsIG9wdGlvbnMgPSB7fSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlKVxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdDYWNoZS5tYXRjaCcgfSlcblxuICAgIHJlcXVlc3QgPSB3ZWJpZGwuY29udmVydGVycy5SZXF1ZXN0SW5mbyhyZXF1ZXN0KVxuICAgIG9wdGlvbnMgPSB3ZWJpZGwuY29udmVydGVycy5DYWNoZVF1ZXJ5T3B0aW9ucyhvcHRpb25zKVxuXG4gICAgY29uc3QgcCA9IGF3YWl0IHRoaXMubWF0Y2hBbGwocmVxdWVzdCwgb3B0aW9ucylcblxuICAgIGlmIChwLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgcmV0dXJuIHBbMF1cbiAgfVxuXG4gIGFzeW5jIG1hdGNoQWxsIChyZXF1ZXN0ID0gdW5kZWZpbmVkLCBvcHRpb25zID0ge30pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZSlcblxuICAgIGlmIChyZXF1ZXN0ICE9PSB1bmRlZmluZWQpIHJlcXVlc3QgPSB3ZWJpZGwuY29udmVydGVycy5SZXF1ZXN0SW5mbyhyZXF1ZXN0KVxuICAgIG9wdGlvbnMgPSB3ZWJpZGwuY29udmVydGVycy5DYWNoZVF1ZXJ5T3B0aW9ucyhvcHRpb25zKVxuXG4gICAgLy8gMS5cbiAgICBsZXQgciA9IG51bGxcblxuICAgIC8vIDIuXG4gICAgaWYgKHJlcXVlc3QgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHJlcXVlc3QgaW5zdGFuY2VvZiBSZXF1ZXN0KSB7XG4gICAgICAgIC8vIDIuMS4xXG4gICAgICAgIHIgPSByZXF1ZXN0W2tTdGF0ZV1cblxuICAgICAgICAvLyAyLjEuMlxuICAgICAgICBpZiAoci5tZXRob2QgIT09ICdHRVQnICYmICFvcHRpb25zLmlnbm9yZU1ldGhvZCkge1xuICAgICAgICAgIHJldHVybiBbXVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiByZXF1ZXN0ID09PSAnc3RyaW5nJykge1xuICAgICAgICAvLyAyLjIuMVxuICAgICAgICByID0gbmV3IFJlcXVlc3QocmVxdWVzdClba1N0YXRlXVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDUuXG4gICAgLy8gNS4xXG4gICAgY29uc3QgcmVzcG9uc2VzID0gW11cblxuICAgIC8vIDUuMlxuICAgIGlmIChyZXF1ZXN0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIDUuMi4xXG4gICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiB0aGlzLiNyZWxldmFudFJlcXVlc3RSZXNwb25zZUxpc3QpIHtcbiAgICAgICAgcmVzcG9uc2VzLnB1c2gocmVxdWVzdFJlc3BvbnNlWzFdKVxuICAgICAgfVxuICAgIH0gZWxzZSB7IC8vIDUuM1xuICAgICAgLy8gNS4zLjFcbiAgICAgIGNvbnN0IHJlcXVlc3RSZXNwb25zZXMgPSB0aGlzLiNxdWVyeUNhY2hlKHIsIG9wdGlvbnMpXG5cbiAgICAgIC8vIDUuMy4yXG4gICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiByZXF1ZXN0UmVzcG9uc2VzKSB7XG4gICAgICAgIHJlc3BvbnNlcy5wdXNoKHJlcXVlc3RSZXNwb25zZVsxXSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA1LjRcbiAgICAvLyBXZSBkb24ndCBpbXBsZW1lbnQgQ09ScyBzbyB3ZSBkb24ndCBuZWVkIHRvIGxvb3Agb3ZlciB0aGUgcmVzcG9uc2VzLCB5YXkhXG5cbiAgICAvLyA1LjUuMVxuICAgIGNvbnN0IHJlc3BvbnNlTGlzdCA9IFtdXG5cbiAgICAvLyA1LjUuMlxuICAgIGZvciAoY29uc3QgcmVzcG9uc2Ugb2YgcmVzcG9uc2VzKSB7XG4gICAgICAvLyA1LjUuMi4xXG4gICAgICBjb25zdCByZXNwb25zZU9iamVjdCA9IG5ldyBSZXNwb25zZShyZXNwb25zZS5ib2R5Py5zb3VyY2UgPz8gbnVsbClcbiAgICAgIGNvbnN0IGJvZHkgPSByZXNwb25zZU9iamVjdFtrU3RhdGVdLmJvZHlcbiAgICAgIHJlc3BvbnNlT2JqZWN0W2tTdGF0ZV0gPSByZXNwb25zZVxuICAgICAgcmVzcG9uc2VPYmplY3Rba1N0YXRlXS5ib2R5ID0gYm9keVxuICAgICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tIZWFkZXJzTGlzdF0gPSByZXNwb25zZS5oZWFkZXJzTGlzdFxuICAgICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tHdWFyZF0gPSAnaW1tdXRhYmxlJ1xuXG4gICAgICByZXNwb25zZUxpc3QucHVzaChyZXNwb25zZU9iamVjdClcbiAgICB9XG5cbiAgICAvLyA2LlxuICAgIHJldHVybiBPYmplY3QuZnJlZXplKHJlc3BvbnNlTGlzdClcbiAgfVxuXG4gIGFzeW5jIGFkZCAocmVxdWVzdCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlKVxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdDYWNoZS5hZGQnIH0pXG5cbiAgICByZXF1ZXN0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluZm8ocmVxdWVzdClcblxuICAgIC8vIDEuXG4gICAgY29uc3QgcmVxdWVzdHMgPSBbcmVxdWVzdF1cblxuICAgIC8vIDIuXG4gICAgY29uc3QgcmVzcG9uc2VBcnJheVByb21pc2UgPSB0aGlzLmFkZEFsbChyZXF1ZXN0cylcblxuICAgIC8vIDMuXG4gICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlQXJyYXlQcm9taXNlXG4gIH1cblxuICBhc3luYyBhZGRBbGwgKHJlcXVlc3RzKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2FjaGUpXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0NhY2hlLmFkZEFsbCcgfSlcblxuICAgIHJlcXVlc3RzID0gd2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPFJlcXVlc3RJbmZvPiddKHJlcXVlc3RzKVxuXG4gICAgLy8gMS5cbiAgICBjb25zdCByZXNwb25zZVByb21pc2VzID0gW11cblxuICAgIC8vIDIuXG4gICAgY29uc3QgcmVxdWVzdExpc3QgPSBbXVxuXG4gICAgLy8gMy5cbiAgICBmb3IgKGNvbnN0IHJlcXVlc3Qgb2YgcmVxdWVzdHMpIHtcbiAgICAgIGlmICh0eXBlb2YgcmVxdWVzdCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgLy8gMy4xXG4gICAgICBjb25zdCByID0gcmVxdWVzdFtrU3RhdGVdXG5cbiAgICAgIC8vIDMuMlxuICAgICAgaWYgKCF1cmxJc0h0dHBIdHRwc1NjaGVtZShyLnVybCkgfHwgci5tZXRob2QgIT09ICdHRVQnKSB7XG4gICAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICBoZWFkZXI6ICdDYWNoZS5hZGRBbGwnLFxuICAgICAgICAgIG1lc3NhZ2U6ICdFeHBlY3RlZCBodHRwL3Mgc2NoZW1lIHdoZW4gbWV0aG9kIGlzIG5vdCBHRVQuJ1xuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDQuXG4gICAgLyoqIEB0eXBlIHtSZXR1cm5UeXBlPHR5cGVvZiBmZXRjaGluZz5bXX0gKi9cbiAgICBjb25zdCBmZXRjaENvbnRyb2xsZXJzID0gW11cblxuICAgIC8vIDUuXG4gICAgZm9yIChjb25zdCByZXF1ZXN0IG9mIHJlcXVlc3RzKSB7XG4gICAgICAvLyA1LjFcbiAgICAgIGNvbnN0IHIgPSBuZXcgUmVxdWVzdChyZXF1ZXN0KVtrU3RhdGVdXG5cbiAgICAgIC8vIDUuMlxuICAgICAgaWYgKCF1cmxJc0h0dHBIdHRwc1NjaGVtZShyLnVybCkpIHtcbiAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLmFkZEFsbCcsXG4gICAgICAgICAgbWVzc2FnZTogJ0V4cGVjdGVkIGh0dHAvcyBzY2hlbWUuJ1xuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICAvLyA1LjRcbiAgICAgIHIuaW5pdGlhdG9yID0gJ2ZldGNoJ1xuICAgICAgci5kZXN0aW5hdGlvbiA9ICdzdWJyZXNvdXJjZSdcblxuICAgICAgLy8gNS41XG4gICAgICByZXF1ZXN0TGlzdC5wdXNoKHIpXG5cbiAgICAgIC8vIDUuNlxuICAgICAgY29uc3QgcmVzcG9uc2VQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgICAgLy8gNS43XG4gICAgICBmZXRjaENvbnRyb2xsZXJzLnB1c2goZmV0Y2hpbmcoe1xuICAgICAgICByZXF1ZXN0OiByLFxuICAgICAgICBkaXNwYXRjaGVyOiBnZXRHbG9iYWxEaXNwYXRjaGVyKCksXG4gICAgICAgIHByb2Nlc3NSZXNwb25zZSAocmVzcG9uc2UpIHtcbiAgICAgICAgICAvLyAxLlxuICAgICAgICAgIGlmIChyZXNwb25zZS50eXBlID09PSAnZXJyb3InIHx8IHJlc3BvbnNlLnN0YXR1cyA9PT0gMjA2IHx8IHJlc3BvbnNlLnN0YXR1cyA8IDIwMCB8fCByZXNwb25zZS5zdGF0dXMgPiAyOTkpIHtcbiAgICAgICAgICAgIHJlc3BvbnNlUHJvbWlzZS5yZWplY3Qod2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgICBoZWFkZXI6ICdDYWNoZS5hZGRBbGwnLFxuICAgICAgICAgICAgICBtZXNzYWdlOiAnUmVjZWl2ZWQgYW4gaW52YWxpZCBzdGF0dXMgY29kZSBvciB0aGUgcmVxdWVzdCBmYWlsZWQuJ1xuICAgICAgICAgICAgfSkpXG4gICAgICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5oZWFkZXJzTGlzdC5jb250YWlucygndmFyeScpKSB7IC8vIDIuXG4gICAgICAgICAgICAvLyAyLjFcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkVmFsdWVzID0gZ2V0RmllbGRWYWx1ZXMocmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCd2YXJ5JykpXG5cbiAgICAgICAgICAgIC8vIDIuMlxuICAgICAgICAgICAgZm9yIChjb25zdCBmaWVsZFZhbHVlIG9mIGZpZWxkVmFsdWVzKSB7XG4gICAgICAgICAgICAgIC8vIDIuMi4xXG4gICAgICAgICAgICAgIGlmIChmaWVsZFZhbHVlID09PSAnKicpIHtcbiAgICAgICAgICAgICAgICByZXNwb25zZVByb21pc2UucmVqZWN0KHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLmFkZEFsbCcsXG4gICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnaW52YWxpZCB2YXJ5IGZpZWxkIHZhbHVlJ1xuICAgICAgICAgICAgICAgIH0pKVxuXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBjb250cm9sbGVyIG9mIGZldGNoQ29udHJvbGxlcnMpIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2xsZXIuYWJvcnQoKVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBwcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHkgKHJlc3BvbnNlKSB7XG4gICAgICAgICAgLy8gMS5cbiAgICAgICAgICBpZiAocmVzcG9uc2UuYWJvcnRlZCkge1xuICAgICAgICAgICAgcmVzcG9uc2VQcm9taXNlLnJlamVjdChuZXcgRE9NRXhjZXB0aW9uKCdhYm9ydGVkJywgJ0Fib3J0RXJyb3InKSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDIuXG4gICAgICAgICAgcmVzcG9uc2VQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpXG4gICAgICAgIH1cbiAgICAgIH0pKVxuXG4gICAgICAvLyA1LjhcbiAgICAgIHJlc3BvbnNlUHJvbWlzZXMucHVzaChyZXNwb25zZVByb21pc2UucHJvbWlzZSlcbiAgICB9XG5cbiAgICAvLyA2LlxuICAgIGNvbnN0IHAgPSBQcm9taXNlLmFsbChyZXNwb25zZVByb21pc2VzKVxuXG4gICAgLy8gNy5cbiAgICBjb25zdCByZXNwb25zZXMgPSBhd2FpdCBwXG5cbiAgICAvLyA3LjFcbiAgICBjb25zdCBvcGVyYXRpb25zID0gW11cblxuICAgIC8vIDcuMlxuICAgIGxldCBpbmRleCA9IDBcblxuICAgIC8vIDcuM1xuICAgIGZvciAoY29uc3QgcmVzcG9uc2Ugb2YgcmVzcG9uc2VzKSB7XG4gICAgICAvLyA3LjMuMVxuICAgICAgLyoqIEB0eXBlIHtDYWNoZUJhdGNoT3BlcmF0aW9ufSAqL1xuICAgICAgY29uc3Qgb3BlcmF0aW9uID0ge1xuICAgICAgICB0eXBlOiAncHV0JywgLy8gNy4zLjJcbiAgICAgICAgcmVxdWVzdDogcmVxdWVzdExpc3RbaW5kZXhdLCAvLyA3LjMuM1xuICAgICAgICByZXNwb25zZSAvLyA3LjMuNFxuICAgICAgfVxuXG4gICAgICBvcGVyYXRpb25zLnB1c2gob3BlcmF0aW9uKSAvLyA3LjMuNVxuXG4gICAgICBpbmRleCsrIC8vIDcuMy42XG4gICAgfVxuXG4gICAgLy8gNy41XG4gICAgY29uc3QgY2FjaGVKb2JQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDcuNi4xXG4gICAgbGV0IGVycm9yRGF0YSA9IG51bGxcblxuICAgIC8vIDcuNi4yXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuI2JhdGNoQ2FjaGVPcGVyYXRpb25zKG9wZXJhdGlvbnMpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgZXJyb3JEYXRhID0gZVxuICAgIH1cblxuICAgIC8vIDcuNi4zXG4gICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgLy8gNy42LjMuMVxuICAgICAgaWYgKGVycm9yRGF0YSA9PT0gbnVsbCkge1xuICAgICAgICBjYWNoZUpvYlByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyA3LjYuMy4yXG4gICAgICAgIGNhY2hlSm9iUHJvbWlzZS5yZWplY3QoZXJyb3JEYXRhKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICAvLyA3LjdcbiAgICByZXR1cm4gY2FjaGVKb2JQcm9taXNlLnByb21pc2VcbiAgfVxuXG4gIGFzeW5jIHB1dCAocmVxdWVzdCwgcmVzcG9uc2UpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDIsIHsgaGVhZGVyOiAnQ2FjaGUucHV0JyB9KVxuXG4gICAgcmVxdWVzdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvKHJlcXVlc3QpXG4gICAgcmVzcG9uc2UgPSB3ZWJpZGwuY29udmVydGVycy5SZXNwb25zZShyZXNwb25zZSlcblxuICAgIC8vIDEuXG4gICAgbGV0IGlubmVyUmVxdWVzdCA9IG51bGxcblxuICAgIC8vIDIuXG4gICAgaWYgKHJlcXVlc3QgaW5zdGFuY2VvZiBSZXF1ZXN0KSB7XG4gICAgICBpbm5lclJlcXVlc3QgPSByZXF1ZXN0W2tTdGF0ZV1cbiAgICB9IGVsc2UgeyAvLyAzLlxuICAgICAgaW5uZXJSZXF1ZXN0ID0gbmV3IFJlcXVlc3QocmVxdWVzdClba1N0YXRlXVxuICAgIH1cblxuICAgIC8vIDQuXG4gICAgaWYgKCF1cmxJc0h0dHBIdHRwc1NjaGVtZShpbm5lclJlcXVlc3QudXJsKSB8fCBpbm5lclJlcXVlc3QubWV0aG9kICE9PSAnR0VUJykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdDYWNoZS5wdXQnLFxuICAgICAgICBtZXNzYWdlOiAnRXhwZWN0ZWQgYW4gaHR0cC9zIHNjaGVtZSB3aGVuIG1ldGhvZCBpcyBub3QgR0VUJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyA1LlxuICAgIGNvbnN0IGlubmVyUmVzcG9uc2UgPSByZXNwb25zZVtrU3RhdGVdXG5cbiAgICAvLyA2LlxuICAgIGlmIChpbm5lclJlc3BvbnNlLnN0YXR1cyA9PT0gMjA2KSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogJ0NhY2hlLnB1dCcsXG4gICAgICAgIG1lc3NhZ2U6ICdHb3QgMjA2IHN0YXR1cydcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gNy5cbiAgICBpZiAoaW5uZXJSZXNwb25zZS5oZWFkZXJzTGlzdC5jb250YWlucygndmFyeScpKSB7XG4gICAgICAvLyA3LjEuXG4gICAgICBjb25zdCBmaWVsZFZhbHVlcyA9IGdldEZpZWxkVmFsdWVzKGlubmVyUmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCd2YXJ5JykpXG5cbiAgICAgIC8vIDcuMi5cbiAgICAgIGZvciAoY29uc3QgZmllbGRWYWx1ZSBvZiBmaWVsZFZhbHVlcykge1xuICAgICAgICAvLyA3LjIuMVxuICAgICAgICBpZiAoZmllbGRWYWx1ZSA9PT0gJyonKSB7XG4gICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgaGVhZGVyOiAnQ2FjaGUucHV0JyxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdHb3QgKiB2YXJ5IGZpZWxkIHZhbHVlJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA4LlxuICAgIGlmIChpbm5lclJlc3BvbnNlLmJvZHkgJiYgKGlzRGlzdHVyYmVkKGlubmVyUmVzcG9uc2UuYm9keS5zdHJlYW0pIHx8IGlubmVyUmVzcG9uc2UuYm9keS5zdHJlYW0ubG9ja2VkKSkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdDYWNoZS5wdXQnLFxuICAgICAgICBtZXNzYWdlOiAnUmVzcG9uc2UgYm9keSBpcyBsb2NrZWQgb3IgZGlzdHVyYmVkJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyA5LlxuICAgIGNvbnN0IGNsb25lZFJlc3BvbnNlID0gY2xvbmVSZXNwb25zZShpbm5lclJlc3BvbnNlKVxuXG4gICAgLy8gMTAuXG4gICAgY29uc3QgYm9keVJlYWRQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDExLlxuICAgIGlmIChpbm5lclJlc3BvbnNlLmJvZHkgIT0gbnVsbCkge1xuICAgICAgLy8gMTEuMVxuICAgICAgY29uc3Qgc3RyZWFtID0gaW5uZXJSZXNwb25zZS5ib2R5LnN0cmVhbVxuXG4gICAgICAvLyAxMS4yXG4gICAgICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcblxuICAgICAgLy8gMTEuM1xuICAgICAgcmVhZEFsbEJ5dGVzKHJlYWRlcikudGhlbihib2R5UmVhZFByb21pc2UucmVzb2x2ZSwgYm9keVJlYWRQcm9taXNlLnJlamVjdClcbiAgICB9IGVsc2Uge1xuICAgICAgYm9keVJlYWRQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKVxuICAgIH1cblxuICAgIC8vIDEyLlxuICAgIC8qKiBAdHlwZSB7Q2FjaGVCYXRjaE9wZXJhdGlvbltdfSAqL1xuICAgIGNvbnN0IG9wZXJhdGlvbnMgPSBbXVxuXG4gICAgLy8gMTMuXG4gICAgLyoqIEB0eXBlIHtDYWNoZUJhdGNoT3BlcmF0aW9ufSAqL1xuICAgIGNvbnN0IG9wZXJhdGlvbiA9IHtcbiAgICAgIHR5cGU6ICdwdXQnLCAvLyAxNC5cbiAgICAgIHJlcXVlc3Q6IGlubmVyUmVxdWVzdCwgLy8gMTUuXG4gICAgICByZXNwb25zZTogY2xvbmVkUmVzcG9uc2UgLy8gMTYuXG4gICAgfVxuXG4gICAgLy8gMTcuXG4gICAgb3BlcmF0aW9ucy5wdXNoKG9wZXJhdGlvbilcblxuICAgIC8vIDE5LlxuICAgIGNvbnN0IGJ5dGVzID0gYXdhaXQgYm9keVJlYWRQcm9taXNlLnByb21pc2VcblxuICAgIGlmIChjbG9uZWRSZXNwb25zZS5ib2R5ICE9IG51bGwpIHtcbiAgICAgIGNsb25lZFJlc3BvbnNlLmJvZHkuc291cmNlID0gYnl0ZXNcbiAgICB9XG5cbiAgICAvLyAxOS4xXG4gICAgY29uc3QgY2FjaGVKb2JQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDE5LjIuMVxuICAgIGxldCBlcnJvckRhdGEgPSBudWxsXG5cbiAgICAvLyAxOS4yLjJcbiAgICB0cnkge1xuICAgICAgdGhpcy4jYmF0Y2hDYWNoZU9wZXJhdGlvbnMob3BlcmF0aW9ucylcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBlcnJvckRhdGEgPSBlXG4gICAgfVxuXG4gICAgLy8gMTkuMi4zXG4gICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgLy8gMTkuMi4zLjFcbiAgICAgIGlmIChlcnJvckRhdGEgPT09IG51bGwpIHtcbiAgICAgICAgY2FjaGVKb2JQcm9taXNlLnJlc29sdmUoKVxuICAgICAgfSBlbHNlIHsgLy8gMTkuMi4zLjJcbiAgICAgICAgY2FjaGVKb2JQcm9taXNlLnJlamVjdChlcnJvckRhdGEpXG4gICAgICB9XG4gICAgfSlcblxuICAgIHJldHVybiBjYWNoZUpvYlByb21pc2UucHJvbWlzZVxuICB9XG5cbiAgYXN5bmMgZGVsZXRlIChyZXF1ZXN0LCBvcHRpb25zID0ge30pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2FjaGUuZGVsZXRlJyB9KVxuXG4gICAgcmVxdWVzdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvKHJlcXVlc3QpXG4gICAgb3B0aW9ucyA9IHdlYmlkbC5jb252ZXJ0ZXJzLkNhY2hlUXVlcnlPcHRpb25zKG9wdGlvbnMpXG5cbiAgICAvKipcbiAgICAgKiBAdHlwZSB7UmVxdWVzdH1cbiAgICAgKi9cbiAgICBsZXQgciA9IG51bGxcblxuICAgIGlmIChyZXF1ZXN0IGluc3RhbmNlb2YgUmVxdWVzdCkge1xuICAgICAgciA9IHJlcXVlc3Rba1N0YXRlXVxuXG4gICAgICBpZiAoci5tZXRob2QgIT09ICdHRVQnICYmICFvcHRpb25zLmlnbm9yZU1ldGhvZCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KHR5cGVvZiByZXF1ZXN0ID09PSAnc3RyaW5nJylcblxuICAgICAgciA9IG5ldyBSZXF1ZXN0KHJlcXVlc3QpW2tTdGF0ZV1cbiAgICB9XG5cbiAgICAvKiogQHR5cGUge0NhY2hlQmF0Y2hPcGVyYXRpb25bXX0gKi9cbiAgICBjb25zdCBvcGVyYXRpb25zID0gW11cblxuICAgIC8qKiBAdHlwZSB7Q2FjaGVCYXRjaE9wZXJhdGlvbn0gKi9cbiAgICBjb25zdCBvcGVyYXRpb24gPSB7XG4gICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgIHJlcXVlc3Q6IHIsXG4gICAgICBvcHRpb25zXG4gICAgfVxuXG4gICAgb3BlcmF0aW9ucy5wdXNoKG9wZXJhdGlvbilcblxuICAgIGNvbnN0IGNhY2hlSm9iUHJvbWlzZSA9IGNyZWF0ZURlZmVycmVkUHJvbWlzZSgpXG5cbiAgICBsZXQgZXJyb3JEYXRhID0gbnVsbFxuICAgIGxldCByZXF1ZXN0UmVzcG9uc2VzXG5cbiAgICB0cnkge1xuICAgICAgcmVxdWVzdFJlc3BvbnNlcyA9IHRoaXMuI2JhdGNoQ2FjaGVPcGVyYXRpb25zKG9wZXJhdGlvbnMpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgZXJyb3JEYXRhID0gZVxuICAgIH1cblxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgIGlmIChlcnJvckRhdGEgPT09IG51bGwpIHtcbiAgICAgICAgY2FjaGVKb2JQcm9taXNlLnJlc29sdmUoISFyZXF1ZXN0UmVzcG9uc2VzPy5sZW5ndGgpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjYWNoZUpvYlByb21pc2UucmVqZWN0KGVycm9yRGF0YSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgcmV0dXJuIGNhY2hlSm9iUHJvbWlzZS5wcm9taXNlXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZG9tLWNhY2hlLWtleXNcbiAgICogQHBhcmFtIHthbnl9IHJlcXVlc3RcbiAgICogQHBhcmFtIHtpbXBvcnQoJy4uLy4uL3R5cGVzL2NhY2hlJykuQ2FjaGVRdWVyeU9wdGlvbnN9IG9wdGlvbnNcbiAgICogQHJldHVybnMge3JlYWRvbmx5IFJlcXVlc3RbXX1cbiAgICovXG4gIGFzeW5jIGtleXMgKHJlcXVlc3QgPSB1bmRlZmluZWQsIG9wdGlvbnMgPSB7fSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlKVxuXG4gICAgaWYgKHJlcXVlc3QgIT09IHVuZGVmaW5lZCkgcmVxdWVzdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvKHJlcXVlc3QpXG4gICAgb3B0aW9ucyA9IHdlYmlkbC5jb252ZXJ0ZXJzLkNhY2hlUXVlcnlPcHRpb25zKG9wdGlvbnMpXG5cbiAgICAvLyAxLlxuICAgIGxldCByID0gbnVsbFxuXG4gICAgLy8gMi5cbiAgICBpZiAocmVxdWVzdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyAyLjFcbiAgICAgIGlmIChyZXF1ZXN0IGluc3RhbmNlb2YgUmVxdWVzdCkge1xuICAgICAgICAvLyAyLjEuMVxuICAgICAgICByID0gcmVxdWVzdFtrU3RhdGVdXG5cbiAgICAgICAgLy8gMi4xLjJcbiAgICAgICAgaWYgKHIubWV0aG9kICE9PSAnR0VUJyAmJiAhb3B0aW9ucy5pZ25vcmVNZXRob2QpIHtcbiAgICAgICAgICByZXR1cm4gW11cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVxdWVzdCA9PT0gJ3N0cmluZycpIHsgLy8gMi4yXG4gICAgICAgIHIgPSBuZXcgUmVxdWVzdChyZXF1ZXN0KVtrU3RhdGVdXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNC5cbiAgICBjb25zdCBwcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDUuXG4gICAgLy8gNS4xXG4gICAgY29uc3QgcmVxdWVzdHMgPSBbXVxuXG4gICAgLy8gNS4yXG4gICAgaWYgKHJlcXVlc3QgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gNS4yLjFcbiAgICAgIGZvciAoY29uc3QgcmVxdWVzdFJlc3BvbnNlIG9mIHRoaXMuI3JlbGV2YW50UmVxdWVzdFJlc3BvbnNlTGlzdCkge1xuICAgICAgICAvLyA1LjIuMS4xXG4gICAgICAgIHJlcXVlc3RzLnB1c2gocmVxdWVzdFJlc3BvbnNlWzBdKVxuICAgICAgfVxuICAgIH0gZWxzZSB7IC8vIDUuM1xuICAgICAgLy8gNS4zLjFcbiAgICAgIGNvbnN0IHJlcXVlc3RSZXNwb25zZXMgPSB0aGlzLiNxdWVyeUNhY2hlKHIsIG9wdGlvbnMpXG5cbiAgICAgIC8vIDUuMy4yXG4gICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiByZXF1ZXN0UmVzcG9uc2VzKSB7XG4gICAgICAgIC8vIDUuMy4yLjFcbiAgICAgICAgcmVxdWVzdHMucHVzaChyZXF1ZXN0UmVzcG9uc2VbMF0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNS40XG4gICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgLy8gNS40LjFcbiAgICAgIGNvbnN0IHJlcXVlc3RMaXN0ID0gW11cblxuICAgICAgLy8gNS40LjJcbiAgICAgIGZvciAoY29uc3QgcmVxdWVzdCBvZiByZXF1ZXN0cykge1xuICAgICAgICBjb25zdCByZXF1ZXN0T2JqZWN0ID0gbmV3IFJlcXVlc3QoJ2h0dHBzOi8vYScpXG4gICAgICAgIHJlcXVlc3RPYmplY3Rba1N0YXRlXSA9IHJlcXVlc3RcbiAgICAgICAgcmVxdWVzdE9iamVjdFtrSGVhZGVyc11ba0hlYWRlcnNMaXN0XSA9IHJlcXVlc3QuaGVhZGVyc0xpc3RcbiAgICAgICAgcmVxdWVzdE9iamVjdFtrSGVhZGVyc11ba0d1YXJkXSA9ICdpbW11dGFibGUnXG4gICAgICAgIHJlcXVlc3RPYmplY3Rba1JlYWxtXSA9IHJlcXVlc3QuY2xpZW50XG5cbiAgICAgICAgLy8gNS40LjIuMVxuICAgICAgICByZXF1ZXN0TGlzdC5wdXNoKHJlcXVlc3RPYmplY3QpXG4gICAgICB9XG5cbiAgICAgIC8vIDUuNC4zXG4gICAgICBwcm9taXNlLnJlc29sdmUoT2JqZWN0LmZyZWV6ZShyZXF1ZXN0TGlzdCkpXG4gICAgfSlcblxuICAgIHJldHVybiBwcm9taXNlLnByb21pc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNiYXRjaC1jYWNoZS1vcGVyYXRpb25zLWFsZ29yaXRobVxuICAgKiBAcGFyYW0ge0NhY2hlQmF0Y2hPcGVyYXRpb25bXX0gb3BlcmF0aW9uc1xuICAgKiBAcmV0dXJucyB7cmVxdWVzdFJlc3BvbnNlTGlzdH1cbiAgICovXG4gICNiYXRjaENhY2hlT3BlcmF0aW9ucyAob3BlcmF0aW9ucykge1xuICAgIC8vIDEuXG4gICAgY29uc3QgY2FjaGUgPSB0aGlzLiNyZWxldmFudFJlcXVlc3RSZXNwb25zZUxpc3RcblxuICAgIC8vIDIuXG4gICAgY29uc3QgYmFja3VwQ2FjaGUgPSBbLi4uY2FjaGVdXG5cbiAgICAvLyAzLlxuICAgIGNvbnN0IGFkZGVkSXRlbXMgPSBbXVxuXG4gICAgLy8gNC4xXG4gICAgY29uc3QgcmVzdWx0TGlzdCA9IFtdXG5cbiAgICB0cnkge1xuICAgICAgLy8gNC4yXG4gICAgICBmb3IgKGNvbnN0IG9wZXJhdGlvbiBvZiBvcGVyYXRpb25zKSB7XG4gICAgICAgIC8vIDQuMi4xXG4gICAgICAgIGlmIChvcGVyYXRpb24udHlwZSAhPT0gJ2RlbGV0ZScgJiYgb3BlcmF0aW9uLnR5cGUgIT09ICdwdXQnKSB7XG4gICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgaGVhZGVyOiAnQ2FjaGUuI2JhdGNoQ2FjaGVPcGVyYXRpb25zJyxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdvcGVyYXRpb24gdHlwZSBkb2VzIG5vdCBtYXRjaCBcImRlbGV0ZVwiIG9yIFwicHV0XCInXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDQuMi4yXG4gICAgICAgIGlmIChvcGVyYXRpb24udHlwZSA9PT0gJ2RlbGV0ZScgJiYgb3BlcmF0aW9uLnJlc3BvbnNlICE9IG51bGwpIHtcbiAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICBoZWFkZXI6ICdDYWNoZS4jYmF0Y2hDYWNoZU9wZXJhdGlvbnMnLFxuICAgICAgICAgICAgbWVzc2FnZTogJ2RlbGV0ZSBvcGVyYXRpb24gc2hvdWxkIG5vdCBoYXZlIGFuIGFzc29jaWF0ZWQgcmVzcG9uc2UnXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDQuMi4zXG4gICAgICAgIGlmICh0aGlzLiNxdWVyeUNhY2hlKG9wZXJhdGlvbi5yZXF1ZXN0LCBvcGVyYXRpb24ub3B0aW9ucywgYWRkZWRJdGVtcykubGVuZ3RoKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignPz8/JywgJ0ludmFsaWRTdGF0ZUVycm9yJylcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDQuMi40XG4gICAgICAgIGxldCByZXF1ZXN0UmVzcG9uc2VzXG5cbiAgICAgICAgLy8gNC4yLjVcbiAgICAgICAgaWYgKG9wZXJhdGlvbi50eXBlID09PSAnZGVsZXRlJykge1xuICAgICAgICAgIC8vIDQuMi41LjFcbiAgICAgICAgICByZXF1ZXN0UmVzcG9uc2VzID0gdGhpcy4jcXVlcnlDYWNoZShvcGVyYXRpb24ucmVxdWVzdCwgb3BlcmF0aW9uLm9wdGlvbnMpXG5cbiAgICAgICAgICAvLyBUT0RPOiB0aGUgc3BlYyBpcyB3cm9uZywgdGhpcyBpcyBuZWVkZWQgdG8gcGFzcyBXUFRzXG4gICAgICAgICAgaWYgKHJlcXVlc3RSZXNwb25zZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gW11cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyA0LjIuNS4yXG4gICAgICAgICAgZm9yIChjb25zdCByZXF1ZXN0UmVzcG9uc2Ugb2YgcmVxdWVzdFJlc3BvbnNlcykge1xuICAgICAgICAgICAgY29uc3QgaWR4ID0gY2FjaGUuaW5kZXhPZihyZXF1ZXN0UmVzcG9uc2UpXG4gICAgICAgICAgICBhc3NlcnQoaWR4ICE9PSAtMSlcblxuICAgICAgICAgICAgLy8gNC4yLjUuMi4xXG4gICAgICAgICAgICBjYWNoZS5zcGxpY2UoaWR4LCAxKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChvcGVyYXRpb24udHlwZSA9PT0gJ3B1dCcpIHsgLy8gNC4yLjZcbiAgICAgICAgICAvLyA0LjIuNi4xXG4gICAgICAgICAgaWYgKG9wZXJhdGlvbi5yZXNwb25zZSA9PSBudWxsKSB7XG4gICAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLiNiYXRjaENhY2hlT3BlcmF0aW9ucycsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdwdXQgb3BlcmF0aW9uIHNob3VsZCBoYXZlIGFuIGFzc29jaWF0ZWQgcmVzcG9uc2UnXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuMi42LjJcbiAgICAgICAgICBjb25zdCByID0gb3BlcmF0aW9uLnJlcXVlc3RcblxuICAgICAgICAgIC8vIDQuMi42LjNcbiAgICAgICAgICBpZiAoIXVybElzSHR0cEh0dHBzU2NoZW1lKHIudXJsKSkge1xuICAgICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgICBoZWFkZXI6ICdDYWNoZS4jYmF0Y2hDYWNoZU9wZXJhdGlvbnMnLFxuICAgICAgICAgICAgICBtZXNzYWdlOiAnZXhwZWN0ZWQgaHR0cCBvciBodHRwcyBzY2hlbWUnXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuMi42LjRcbiAgICAgICAgICBpZiAoci5tZXRob2QgIT09ICdHRVQnKSB7XG4gICAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLiNiYXRjaENhY2hlT3BlcmF0aW9ucycsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdub3QgZ2V0IG1ldGhvZCdcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gNC4yLjYuNVxuICAgICAgICAgIGlmIChvcGVyYXRpb24ub3B0aW9ucyAhPSBudWxsKSB7XG4gICAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLiNiYXRjaENhY2hlT3BlcmF0aW9ucycsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdvcHRpb25zIG11c3Qgbm90IGJlIGRlZmluZWQnXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuMi42LjZcbiAgICAgICAgICByZXF1ZXN0UmVzcG9uc2VzID0gdGhpcy4jcXVlcnlDYWNoZShvcGVyYXRpb24ucmVxdWVzdClcblxuICAgICAgICAgIC8vIDQuMi42LjdcbiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiByZXF1ZXN0UmVzcG9uc2VzKSB7XG4gICAgICAgICAgICBjb25zdCBpZHggPSBjYWNoZS5pbmRleE9mKHJlcXVlc3RSZXNwb25zZSlcbiAgICAgICAgICAgIGFzc2VydChpZHggIT09IC0xKVxuXG4gICAgICAgICAgICAvLyA0LjIuNi43LjFcbiAgICAgICAgICAgIGNhY2hlLnNwbGljZShpZHgsIDEpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gNC4yLjYuOFxuICAgICAgICAgIGNhY2hlLnB1c2goW29wZXJhdGlvbi5yZXF1ZXN0LCBvcGVyYXRpb24ucmVzcG9uc2VdKVxuXG4gICAgICAgICAgLy8gNC4yLjYuMTBcbiAgICAgICAgICBhZGRlZEl0ZW1zLnB1c2goW29wZXJhdGlvbi5yZXF1ZXN0LCBvcGVyYXRpb24ucmVzcG9uc2VdKVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gNC4yLjdcbiAgICAgICAgcmVzdWx0TGlzdC5wdXNoKFtvcGVyYXRpb24ucmVxdWVzdCwgb3BlcmF0aW9uLnJlc3BvbnNlXSlcbiAgICAgIH1cblxuICAgICAgLy8gNC4zXG4gICAgICByZXR1cm4gcmVzdWx0TGlzdFxuICAgIH0gY2F0Y2ggKGUpIHsgLy8gNS5cbiAgICAgIC8vIDUuMVxuICAgICAgdGhpcy4jcmVsZXZhbnRSZXF1ZXN0UmVzcG9uc2VMaXN0Lmxlbmd0aCA9IDBcblxuICAgICAgLy8gNS4yXG4gICAgICB0aGlzLiNyZWxldmFudFJlcXVlc3RSZXNwb25zZUxpc3QgPSBiYWNrdXBDYWNoZVxuXG4gICAgICAvLyA1LjNcbiAgICAgIHRocm93IGVcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jcXVlcnktY2FjaGVcbiAgICogQHBhcmFtIHthbnl9IHJlcXVlc3RRdWVyeVxuICAgKiBAcGFyYW0ge2ltcG9ydCgnLi4vLi4vdHlwZXMvY2FjaGUnKS5DYWNoZVF1ZXJ5T3B0aW9uc30gb3B0aW9uc1xuICAgKiBAcGFyYW0ge3JlcXVlc3RSZXNwb25zZUxpc3R9IHRhcmdldFN0b3JhZ2VcbiAgICogQHJldHVybnMge3JlcXVlc3RSZXNwb25zZUxpc3R9XG4gICAqL1xuICAjcXVlcnlDYWNoZSAocmVxdWVzdFF1ZXJ5LCBvcHRpb25zLCB0YXJnZXRTdG9yYWdlKSB7XG4gICAgLyoqIEB0eXBlIHtyZXF1ZXN0UmVzcG9uc2VMaXN0fSAqL1xuICAgIGNvbnN0IHJlc3VsdExpc3QgPSBbXVxuXG4gICAgY29uc3Qgc3RvcmFnZSA9IHRhcmdldFN0b3JhZ2UgPz8gdGhpcy4jcmVsZXZhbnRSZXF1ZXN0UmVzcG9uc2VMaXN0XG5cbiAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiBzdG9yYWdlKSB7XG4gICAgICBjb25zdCBbY2FjaGVkUmVxdWVzdCwgY2FjaGVkUmVzcG9uc2VdID0gcmVxdWVzdFJlc3BvbnNlXG4gICAgICBpZiAodGhpcy4jcmVxdWVzdE1hdGNoZXNDYWNoZWRJdGVtKHJlcXVlc3RRdWVyeSwgY2FjaGVkUmVxdWVzdCwgY2FjaGVkUmVzcG9uc2UsIG9wdGlvbnMpKSB7XG4gICAgICAgIHJlc3VsdExpc3QucHVzaChyZXF1ZXN0UmVzcG9uc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdExpc3RcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNyZXF1ZXN0LW1hdGNoZXMtY2FjaGVkLWl0ZW0tYWxnb3JpdGhtXG4gICAqIEBwYXJhbSB7YW55fSByZXF1ZXN0UXVlcnlcbiAgICogQHBhcmFtIHthbnl9IHJlcXVlc3RcbiAgICogQHBhcmFtIHthbnkgfCBudWxsfSByZXNwb25zZVxuICAgKiBAcGFyYW0ge2ltcG9ydCgnLi4vLi4vdHlwZXMvY2FjaGUnKS5DYWNoZVF1ZXJ5T3B0aW9ucyB8IHVuZGVmaW5lZH0gb3B0aW9uc1xuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gICNyZXF1ZXN0TWF0Y2hlc0NhY2hlZEl0ZW0gKHJlcXVlc3RRdWVyeSwgcmVxdWVzdCwgcmVzcG9uc2UgPSBudWxsLCBvcHRpb25zKSB7XG4gICAgLy8gaWYgKG9wdGlvbnM/Lmlnbm9yZU1ldGhvZCA9PT0gZmFsc2UgJiYgcmVxdWVzdC5tZXRob2QgPT09ICdHRVQnKSB7XG4gICAgLy8gICByZXR1cm4gZmFsc2VcbiAgICAvLyB9XG5cbiAgICBjb25zdCBxdWVyeVVSTCA9IG5ldyBVUkwocmVxdWVzdFF1ZXJ5LnVybClcblxuICAgIGNvbnN0IGNhY2hlZFVSTCA9IG5ldyBVUkwocmVxdWVzdC51cmwpXG5cbiAgICBpZiAob3B0aW9ucz8uaWdub3JlU2VhcmNoKSB7XG4gICAgICBjYWNoZWRVUkwuc2VhcmNoID0gJydcblxuICAgICAgcXVlcnlVUkwuc2VhcmNoID0gJydcbiAgICB9XG5cbiAgICBpZiAoIXVybEVxdWFscyhxdWVyeVVSTCwgY2FjaGVkVVJMLCB0cnVlKSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgcmVzcG9uc2UgPT0gbnVsbCB8fFxuICAgICAgb3B0aW9ucz8uaWdub3JlVmFyeSB8fFxuICAgICAgIXJlc3BvbnNlLmhlYWRlcnNMaXN0LmNvbnRhaW5zKCd2YXJ5JylcbiAgICApIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRWYWx1ZXMgPSBnZXRGaWVsZFZhbHVlcyhyZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ3ZhcnknKSlcblxuICAgIGZvciAoY29uc3QgZmllbGRWYWx1ZSBvZiBmaWVsZFZhbHVlcykge1xuICAgICAgaWYgKGZpZWxkVmFsdWUgPT09ICcqJykge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVxdWVzdFZhbHVlID0gcmVxdWVzdC5oZWFkZXJzTGlzdC5nZXQoZmllbGRWYWx1ZSlcbiAgICAgIGNvbnN0IHF1ZXJ5VmFsdWUgPSByZXF1ZXN0UXVlcnkuaGVhZGVyc0xpc3QuZ2V0KGZpZWxkVmFsdWUpXG5cbiAgICAgIC8vIElmIG9uZSBoYXMgdGhlIGhlYWRlciBhbmQgdGhlIG90aGVyIGRvZXNuJ3QsIG9yIG9uZSBoYXNcbiAgICAgIC8vIGEgZGlmZmVyZW50IHZhbHVlIHRoYW4gdGhlIG90aGVyLCByZXR1cm4gZmFsc2VcbiAgICAgIGlmIChyZXF1ZXN0VmFsdWUgIT09IHF1ZXJ5VmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWVcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhDYWNoZS5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0NhY2hlJyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSxcbiAgbWF0Y2g6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG1hdGNoQWxsOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBhZGQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGFkZEFsbDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcHV0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBkZWxldGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGtleXM6IGtFbnVtZXJhYmxlUHJvcGVydHlcbn0pXG5cbmNvbnN0IGNhY2hlUXVlcnlPcHRpb25Db252ZXJ0ZXJzID0gW1xuICB7XG4gICAga2V5OiAnaWdub3JlU2VhcmNoJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnaWdub3JlTWV0aG9kJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnaWdub3JlVmFyeScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfVxuXVxuXG53ZWJpZGwuY29udmVydGVycy5DYWNoZVF1ZXJ5T3B0aW9ucyA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKGNhY2hlUXVlcnlPcHRpb25Db252ZXJ0ZXJzKVxuXG53ZWJpZGwuY29udmVydGVycy5NdWx0aUNhY2hlUXVlcnlPcHRpb25zID0gd2ViaWRsLmRpY3Rpb25hcnlDb252ZXJ0ZXIoW1xuICAuLi5jYWNoZVF1ZXJ5T3B0aW9uQ29udmVydGVycyxcbiAge1xuICAgIGtleTogJ2NhY2hlTmFtZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmdcbiAgfVxuXSlcblxud2ViaWRsLmNvbnZlcnRlcnMuUmVzcG9uc2UgPSB3ZWJpZGwuaW50ZXJmYWNlQ29udmVydGVyKFJlc3BvbnNlKVxuXG53ZWJpZGwuY29udmVydGVyc1snc2VxdWVuY2U8UmVxdWVzdEluZm8+J10gPSB3ZWJpZGwuc2VxdWVuY2VDb252ZXJ0ZXIoXG4gIHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvXG4pXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBDYWNoZVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IGtDb25zdHJ1Y3QgfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IENhY2hlIH0gPSByZXF1aXJlKCcuL2NhY2hlJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuLi9mZXRjaC93ZWJpZGwnKVxuY29uc3QgeyBrRW51bWVyYWJsZVByb3BlcnR5IH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuXG5jbGFzcyBDYWNoZVN0b3JhZ2Uge1xuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZGZuLXJlbGV2YW50LW5hbWUtdG8tY2FjaGUtbWFwXG4gICAqIEB0eXBlIHtNYXA8c3RyaW5nLCBpbXBvcnQoJy4vY2FjaGUnKS5yZXF1ZXN0UmVzcG9uc2VMaXN0fVxuICAgKi9cbiAgI2NhY2hlcyA9IG5ldyBNYXAoKVxuXG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICBpZiAoYXJndW1lbnRzWzBdICE9PSBrQ29uc3RydWN0KSB7XG4gICAgICB3ZWJpZGwuaWxsZWdhbENvbnN0cnVjdG9yKClcbiAgICB9XG4gIH1cblxuICBhc3luYyBtYXRjaCAocmVxdWVzdCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2FjaGVTdG9yYWdlKVxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdDYWNoZVN0b3JhZ2UubWF0Y2gnIH0pXG5cbiAgICByZXF1ZXN0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluZm8ocmVxdWVzdClcbiAgICBvcHRpb25zID0gd2ViaWRsLmNvbnZlcnRlcnMuTXVsdGlDYWNoZVF1ZXJ5T3B0aW9ucyhvcHRpb25zKVxuXG4gICAgLy8gMS5cbiAgICBpZiAob3B0aW9ucy5jYWNoZU5hbWUgIT0gbnVsbCkge1xuICAgICAgLy8gMS4xLjEuMVxuICAgICAgaWYgKHRoaXMuI2NhY2hlcy5oYXMob3B0aW9ucy5jYWNoZU5hbWUpKSB7XG4gICAgICAgIC8vIDEuMS4xLjEuMVxuICAgICAgICBjb25zdCBjYWNoZUxpc3QgPSB0aGlzLiNjYWNoZXMuZ2V0KG9wdGlvbnMuY2FjaGVOYW1lKVxuICAgICAgICBjb25zdCBjYWNoZSA9IG5ldyBDYWNoZShrQ29uc3RydWN0LCBjYWNoZUxpc3QpXG5cbiAgICAgICAgcmV0dXJuIGF3YWl0IGNhY2hlLm1hdGNoKHJlcXVlc3QsIG9wdGlvbnMpXG4gICAgICB9XG4gICAgfSBlbHNlIHsgLy8gMi5cbiAgICAgIC8vIDIuMlxuICAgICAgZm9yIChjb25zdCBjYWNoZUxpc3Qgb2YgdGhpcy4jY2FjaGVzLnZhbHVlcygpKSB7XG4gICAgICAgIGNvbnN0IGNhY2hlID0gbmV3IENhY2hlKGtDb25zdHJ1Y3QsIGNhY2hlTGlzdClcblxuICAgICAgICAvLyAyLjIuMS4yXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2FjaGUubWF0Y2gocmVxdWVzdCwgb3B0aW9ucylcblxuICAgICAgICBpZiAocmVzcG9uc2UgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiByZXNwb25zZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2NhY2hlLXN0b3JhZ2UtaGFzXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjYWNoZU5hbWVcbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBhc3luYyBoYXMgKGNhY2hlTmFtZSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlU3RvcmFnZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2FjaGVTdG9yYWdlLmhhcycgfSlcblxuICAgIGNhY2hlTmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyhjYWNoZU5hbWUpXG5cbiAgICAvLyAyLjEuMVxuICAgIC8vIDIuMlxuICAgIHJldHVybiB0aGlzLiNjYWNoZXMuaGFzKGNhY2hlTmFtZSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNkb20tY2FjaGVzdG9yYWdlLW9wZW5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGNhY2hlTmFtZVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxDYWNoZT59XG4gICAqL1xuICBhc3luYyBvcGVuIChjYWNoZU5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZVN0b3JhZ2UpXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0NhY2hlU3RvcmFnZS5vcGVuJyB9KVxuXG4gICAgY2FjaGVOYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKGNhY2hlTmFtZSlcblxuICAgIC8vIDIuMVxuICAgIGlmICh0aGlzLiNjYWNoZXMuaGFzKGNhY2hlTmFtZSkpIHtcbiAgICAgIC8vIGF3YWl0IGNhY2hlcy5vcGVuKCd2MScpICE9PSBhd2FpdCBjYWNoZXMub3BlbigndjEnKVxuXG4gICAgICAvLyAyLjEuMVxuICAgICAgY29uc3QgY2FjaGUgPSB0aGlzLiNjYWNoZXMuZ2V0KGNhY2hlTmFtZSlcblxuICAgICAgLy8gMi4xLjEuMVxuICAgICAgcmV0dXJuIG5ldyBDYWNoZShrQ29uc3RydWN0LCBjYWNoZSlcbiAgICB9XG5cbiAgICAvLyAyLjJcbiAgICBjb25zdCBjYWNoZSA9IFtdXG5cbiAgICAvLyAyLjNcbiAgICB0aGlzLiNjYWNoZXMuc2V0KGNhY2hlTmFtZSwgY2FjaGUpXG5cbiAgICAvLyAyLjRcbiAgICByZXR1cm4gbmV3IENhY2hlKGtDb25zdHJ1Y3QsIGNhY2hlKVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2NhY2hlLXN0b3JhZ2UtZGVsZXRlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjYWNoZU5hbWVcbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBhc3luYyBkZWxldGUgKGNhY2hlTmFtZSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlU3RvcmFnZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2FjaGVTdG9yYWdlLmRlbGV0ZScgfSlcblxuICAgIGNhY2hlTmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyhjYWNoZU5hbWUpXG5cbiAgICByZXR1cm4gdGhpcy4jY2FjaGVzLmRlbGV0ZShjYWNoZU5hbWUpXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jY2FjaGUtc3RvcmFnZS1rZXlzXG4gICAqIEByZXR1cm5zIHtzdHJpbmdbXX1cbiAgICovXG4gIGFzeW5jIGtleXMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlU3RvcmFnZSlcblxuICAgIC8vIDIuMVxuICAgIGNvbnN0IGtleXMgPSB0aGlzLiNjYWNoZXMua2V5cygpXG5cbiAgICAvLyAyLjJcbiAgICByZXR1cm4gWy4uLmtleXNdXG4gIH1cbn1cblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQ2FjaGVTdG9yYWdlLnByb3RvdHlwZSwge1xuICBbU3ltYm9sLnRvU3RyaW5nVGFnXToge1xuICAgIHZhbHVlOiAnQ2FjaGVTdG9yYWdlJyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSxcbiAgbWF0Y2g6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGhhczoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgb3Blbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZGVsZXRlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBrZXlzOiBrRW51bWVyYWJsZVByb3BlcnR5XG59KVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQ2FjaGVTdG9yYWdlXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8vIGh0dHBzOi8vd2ljZy5naXRodWIuaW8vY29va2llLXN0b3JlLyNjb29raWUtbWF4aW11bS1hdHRyaWJ1dGUtdmFsdWUtc2l6ZVxuY29uc3QgbWF4QXR0cmlidXRlVmFsdWVTaXplID0gMTAyNFxuXG4vLyBodHRwczovL3dpY2cuZ2l0aHViLmlvL2Nvb2tpZS1zdG9yZS8jY29va2llLW1heGltdW0tbmFtZS12YWx1ZS1wYWlyLXNpemVcbmNvbnN0IG1heE5hbWVWYWx1ZVBhaXJTaXplID0gNDA5NlxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWF4QXR0cmlidXRlVmFsdWVTaXplLFxuICBtYXhOYW1lVmFsdWVQYWlyU2l6ZVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICogQHJldHVybnMge2Jvb2xlYW59XG4gKi9cbmZ1bmN0aW9uIGlzQ1RMRXhjbHVkaW5nSHRhYiAodmFsdWUpIHtcbiAgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgZm9yIChjb25zdCBjaGFyIG9mIHZhbHVlKSB7XG4gICAgY29uc3QgY29kZSA9IGNoYXIuY2hhckNvZGVBdCgwKVxuXG4gICAgaWYgKFxuICAgICAgKGNvZGUgPj0gMHgwMCB8fCBjb2RlIDw9IDB4MDgpIHx8XG4gICAgICAoY29kZSA+PSAweDBBIHx8IGNvZGUgPD0gMHgxRikgfHxcbiAgICAgIGNvZGUgPT09IDB4N0ZcbiAgICApIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiBDSEFSICAgICAgICAgICA9IDxhbnkgVVMtQVNDSUkgY2hhcmFjdGVyIChvY3RldHMgMCAtIDEyNyk+XG4gdG9rZW4gICAgICAgICAgPSAxKjxhbnkgQ0hBUiBleGNlcHQgQ1RMcyBvciBzZXBhcmF0b3JzPlxuIHNlcGFyYXRvcnMgICAgID0gXCIoXCIgfCBcIilcIiB8IFwiPFwiIHwgXCI+XCIgfCBcIkBcIlxuICAgICAgICAgICAgICAgIHwgXCIsXCIgfCBcIjtcIiB8IFwiOlwiIHwgXCJcXFwiIHwgPFwiPlxuICAgICAgICAgICAgICAgIHwgXCIvXCIgfCBcIltcIiB8IFwiXVwiIHwgXCI/XCIgfCBcIj1cIlxuICAgICAgICAgICAgICAgIHwgXCJ7XCIgfCBcIn1cIiB8IFNQIHwgSFRcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlQ29va2llTmFtZSAobmFtZSkge1xuICBmb3IgKGNvbnN0IGNoYXIgb2YgbmFtZSkge1xuICAgIGNvbnN0IGNvZGUgPSBjaGFyLmNoYXJDb2RlQXQoMClcblxuICAgIGlmIChcbiAgICAgIChjb2RlIDw9IDB4MjAgfHwgY29kZSA+IDB4N0YpIHx8XG4gICAgICBjaGFyID09PSAnKCcgfHxcbiAgICAgIGNoYXIgPT09ICcpJyB8fFxuICAgICAgY2hhciA9PT0gJz4nIHx8XG4gICAgICBjaGFyID09PSAnPCcgfHxcbiAgICAgIGNoYXIgPT09ICdAJyB8fFxuICAgICAgY2hhciA9PT0gJywnIHx8XG4gICAgICBjaGFyID09PSAnOycgfHxcbiAgICAgIGNoYXIgPT09ICc6JyB8fFxuICAgICAgY2hhciA9PT0gJ1xcXFwnIHx8XG4gICAgICBjaGFyID09PSAnXCInIHx8XG4gICAgICBjaGFyID09PSAnLycgfHxcbiAgICAgIGNoYXIgPT09ICdbJyB8fFxuICAgICAgY2hhciA9PT0gJ10nIHx8XG4gICAgICBjaGFyID09PSAnPycgfHxcbiAgICAgIGNoYXIgPT09ICc9JyB8fFxuICAgICAgY2hhciA9PT0gJ3snIHx8XG4gICAgICBjaGFyID09PSAnfSdcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBjb29raWUgbmFtZScpXG4gICAgfVxuICB9XG59XG5cbi8qKlxuIGNvb2tpZS12YWx1ZSAgICAgID0gKmNvb2tpZS1vY3RldCAvICggRFFVT1RFICpjb29raWUtb2N0ZXQgRFFVT1RFIClcbiBjb29raWUtb2N0ZXQgICAgICA9ICV4MjEgLyAleDIzLTJCIC8gJXgyRC0zQSAvICV4M0MtNUIgLyAleDVELTdFXG4gICAgICAgICAgICAgICAgICAgICAgIDsgVVMtQVNDSUkgY2hhcmFjdGVycyBleGNsdWRpbmcgQ1RMcyxcbiAgICAgICAgICAgICAgICAgICAgICAgOyB3aGl0ZXNwYWNlIERRVU9URSwgY29tbWEsIHNlbWljb2xvbixcbiAgICAgICAgICAgICAgICAgICAgICAgOyBhbmQgYmFja3NsYXNoXG4gKiBAcGFyYW0ge3N0cmluZ30gdmFsdWVcbiAqL1xuZnVuY3Rpb24gdmFsaWRhdGVDb29raWVWYWx1ZSAodmFsdWUpIHtcbiAgZm9yIChjb25zdCBjaGFyIG9mIHZhbHVlKSB7XG4gICAgY29uc3QgY29kZSA9IGNoYXIuY2hhckNvZGVBdCgwKVxuXG4gICAgaWYgKFxuICAgICAgY29kZSA8IDB4MjEgfHwgLy8gZXhjbHVkZSBDVExzICgwLTMxKVxuICAgICAgY29kZSA9PT0gMHgyMiB8fFxuICAgICAgY29kZSA9PT0gMHgyQyB8fFxuICAgICAgY29kZSA9PT0gMHgzQiB8fFxuICAgICAgY29kZSA9PT0gMHg1QyB8fFxuICAgICAgY29kZSA+IDB4N0UgLy8gbm9uLWFzY2lpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgaGVhZGVyIHZhbHVlJylcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBwYXRoLXZhbHVlICAgICAgICA9IDxhbnkgQ0hBUiBleGNlcHQgQ1RMcyBvciBcIjtcIj5cbiAqIEBwYXJhbSB7c3RyaW5nfSBwYXRoXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlQ29va2llUGF0aCAocGF0aCkge1xuICBmb3IgKGNvbnN0IGNoYXIgb2YgcGF0aCkge1xuICAgIGNvbnN0IGNvZGUgPSBjaGFyLmNoYXJDb2RlQXQoMClcblxuICAgIGlmIChjb2RlIDwgMHgyMSB8fCBjaGFyID09PSAnOycpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBjb29raWUgcGF0aCcpXG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogSSBoYXZlIG5vIGlkZWEgd2h5IHRoZXNlIHZhbHVlcyBhcmVuJ3QgYWxsb3dlZCB0byBiZSBob25lc3QsXG4gKiBidXQgRGVubyB0ZXN0cyB0aGVzZS4gLSBLaGFmcmFcbiAqIEBwYXJhbSB7c3RyaW5nfSBkb21haW5cbiAqL1xuZnVuY3Rpb24gdmFsaWRhdGVDb29raWVEb21haW4gKGRvbWFpbikge1xuICBpZiAoXG4gICAgZG9tYWluLnN0YXJ0c1dpdGgoJy0nKSB8fFxuICAgIGRvbWFpbi5lbmRzV2l0aCgnLicpIHx8XG4gICAgZG9tYWluLmVuZHNXaXRoKCctJylcbiAgKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNvb2tpZSBkb21haW4nKVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNzIzMSNzZWN0aW9uLTcuMS4xLjFcbiAqIEBwYXJhbSB7bnVtYmVyfERhdGV9IGRhdGVcbiAgSU1GLWZpeGRhdGUgID0gZGF5LW5hbWUgXCIsXCIgU1AgZGF0ZTEgU1AgdGltZS1vZi1kYXkgU1AgR01UXG4gIDsgZml4ZWQgbGVuZ3RoL3pvbmUvY2FwaXRhbGl6YXRpb24gc3Vic2V0IG9mIHRoZSBmb3JtYXRcbiAgOyBzZWUgU2VjdGlvbiAzLjMgb2YgW1JGQzUzMjJdXG5cbiAgZGF5LW5hbWUgICAgID0gJXg0RC42Ri42RSA7IFwiTW9uXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1NC43NS42NSA7IFwiVHVlXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1Ny42NS42NCA7IFwiV2VkXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1NC42OC43NSA7IFwiVGh1XCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg0Ni43Mi42OSA7IFwiRnJpXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1My42MS43NCA7IFwiU2F0XCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1My43NS42RSA7IFwiU3VuXCIsIGNhc2Utc2Vuc2l0aXZlXG4gIGRhdGUxICAgICAgICA9IGRheSBTUCBtb250aCBTUCB5ZWFyXG4gICAgICAgICAgICAgICAgICA7IGUuZy4sIDAyIEp1biAxOTgyXG5cbiAgZGF5ICAgICAgICAgID0gMkRJR0lUXG4gIG1vbnRoICAgICAgICA9ICV4NEEuNjEuNkUgOyBcIkphblwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDYuNjUuNjIgOyBcIkZlYlwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEQuNjEuNzIgOyBcIk1hclwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDEuNzAuNzIgOyBcIkFwclwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEQuNjEuNzkgOyBcIk1heVwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEEuNzUuNkUgOyBcIkp1blwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEEuNzUuNkMgOyBcIkp1bFwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDEuNzUuNjcgOyBcIkF1Z1wiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NTMuNjUuNzAgOyBcIlNlcFwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEYuNjMuNzQgOyBcIk9jdFwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEUuNkYuNzYgOyBcIk5vdlwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDQuNjUuNjMgOyBcIkRlY1wiLCBjYXNlLXNlbnNpdGl2ZVxuICB5ZWFyICAgICAgICAgPSA0RElHSVRcblxuICBHTVQgICAgICAgICAgPSAleDQ3LjRELjU0IDsgXCJHTVRcIiwgY2FzZS1zZW5zaXRpdmVcblxuICB0aW1lLW9mLWRheSAgPSBob3VyIFwiOlwiIG1pbnV0ZSBcIjpcIiBzZWNvbmRcbiAgICAgICAgICAgICAgOyAwMDowMDowMCAtIDIzOjU5OjYwIChsZWFwIHNlY29uZClcblxuICBob3VyICAgICAgICAgPSAyRElHSVRcbiAgbWludXRlICAgICAgID0gMkRJR0lUXG4gIHNlY29uZCAgICAgICA9IDJESUdJVFxuICovXG5mdW5jdGlvbiB0b0lNRkRhdGUgKGRhdGUpIHtcbiAgaWYgKHR5cGVvZiBkYXRlID09PSAnbnVtYmVyJykge1xuICAgIGRhdGUgPSBuZXcgRGF0ZShkYXRlKVxuICB9XG5cbiAgY29uc3QgZGF5cyA9IFtcbiAgICAnU3VuJywgJ01vbicsICdUdWUnLCAnV2VkJyxcbiAgICAnVGh1JywgJ0ZyaScsICdTYXQnXG4gIF1cblxuICBjb25zdCBtb250aHMgPSBbXG4gICAgJ0phbicsICdGZWInLCAnTWFyJywgJ0FwcicsICdNYXknLCAnSnVuJyxcbiAgICAnSnVsJywgJ0F1ZycsICdTZXAnLCAnT2N0JywgJ05vdicsICdEZWMnXG4gIF1cblxuICBjb25zdCBkYXlOYW1lID0gZGF5c1tkYXRlLmdldFVUQ0RheSgpXVxuICBjb25zdCBkYXkgPSBkYXRlLmdldFVUQ0RhdGUoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJylcbiAgY29uc3QgbW9udGggPSBtb250aHNbZGF0ZS5nZXRVVENNb250aCgpXVxuICBjb25zdCB5ZWFyID0gZGF0ZS5nZXRVVENGdWxsWWVhcigpXG4gIGNvbnN0IGhvdXIgPSBkYXRlLmdldFVUQ0hvdXJzKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpXG4gIGNvbnN0IG1pbnV0ZSA9IGRhdGUuZ2V0VVRDTWludXRlcygpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKVxuICBjb25zdCBzZWNvbmQgPSBkYXRlLmdldFVUQ1NlY29uZHMoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJylcblxuICByZXR1cm4gYCR7ZGF5TmFtZX0sICR7ZGF5fSAke21vbnRofSAke3llYXJ9ICR7aG91cn06JHttaW51dGV9OiR7c2Vjb25kfSBHTVRgXG59XG5cbi8qKlxuIG1heC1hZ2UtYXYgICAgICAgID0gXCJNYXgtQWdlPVwiIG5vbi16ZXJvLWRpZ2l0ICpESUdJVFxuICAgICAgICAgICAgICAgICAgICAgICA7IEluIHByYWN0aWNlLCBib3RoIGV4cGlyZXMtYXYgYW5kIG1heC1hZ2UtYXZcbiAgICAgICAgICAgICAgICAgICAgICAgOyBhcmUgbGltaXRlZCB0byBkYXRlcyByZXByZXNlbnRhYmxlIGJ5IHRoZVxuICAgICAgICAgICAgICAgICAgICAgICA7IHVzZXIgYWdlbnQuXG4gKiBAcGFyYW0ge251bWJlcn0gbWF4QWdlXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlQ29va2llTWF4QWdlIChtYXhBZ2UpIHtcbiAgaWYgKG1heEFnZSA8IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgY29va2llIG1heC1hZ2UnKVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNjI2NSNzZWN0aW9uLTQuMS4xXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi9pbmRleCcpLkNvb2tpZX0gY29va2llXG4gKi9cbmZ1bmN0aW9uIHN0cmluZ2lmeSAoY29va2llKSB7XG4gIGlmIChjb29raWUubmFtZS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgdmFsaWRhdGVDb29raWVOYW1lKGNvb2tpZS5uYW1lKVxuICB2YWxpZGF0ZUNvb2tpZVZhbHVlKGNvb2tpZS52YWx1ZSlcblxuICBjb25zdCBvdXQgPSBbYCR7Y29va2llLm5hbWV9PSR7Y29va2llLnZhbHVlfWBdXG5cbiAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtY29va2llLXByZWZpeGVzLTAwI3NlY3Rpb24tMy4xXG4gIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvZHJhZnQtaWV0Zi1odHRwYmlzLWNvb2tpZS1wcmVmaXhlcy0wMCNzZWN0aW9uLTMuMlxuICBpZiAoY29va2llLm5hbWUuc3RhcnRzV2l0aCgnX19TZWN1cmUtJykpIHtcbiAgICBjb29raWUuc2VjdXJlID0gdHJ1ZVxuICB9XG5cbiAgaWYgKGNvb2tpZS5uYW1lLnN0YXJ0c1dpdGgoJ19fSG9zdC0nKSkge1xuICAgIGNvb2tpZS5zZWN1cmUgPSB0cnVlXG4gICAgY29va2llLmRvbWFpbiA9IG51bGxcbiAgICBjb29raWUucGF0aCA9ICcvJ1xuICB9XG5cbiAgaWYgKGNvb2tpZS5zZWN1cmUpIHtcbiAgICBvdXQucHVzaCgnU2VjdXJlJylcbiAgfVxuXG4gIGlmIChjb29raWUuaHR0cE9ubHkpIHtcbiAgICBvdXQucHVzaCgnSHR0cE9ubHknKVxuICB9XG5cbiAgaWYgKHR5cGVvZiBjb29raWUubWF4QWdlID09PSAnbnVtYmVyJykge1xuICAgIHZhbGlkYXRlQ29va2llTWF4QWdlKGNvb2tpZS5tYXhBZ2UpXG4gICAgb3V0LnB1c2goYE1heC1BZ2U9JHtjb29raWUubWF4QWdlfWApXG4gIH1cblxuICBpZiAoY29va2llLmRvbWFpbikge1xuICAgIHZhbGlkYXRlQ29va2llRG9tYWluKGNvb2tpZS5kb21haW4pXG4gICAgb3V0LnB1c2goYERvbWFpbj0ke2Nvb2tpZS5kb21haW59YClcbiAgfVxuXG4gIGlmIChjb29raWUucGF0aCkge1xuICAgIHZhbGlkYXRlQ29va2llUGF0aChjb29raWUucGF0aClcbiAgICBvdXQucHVzaChgUGF0aD0ke2Nvb2tpZS5wYXRofWApXG4gIH1cblxuICBpZiAoY29va2llLmV4cGlyZXMgJiYgY29va2llLmV4cGlyZXMudG9TdHJpbmcoKSAhPT0gJ0ludmFsaWQgRGF0ZScpIHtcbiAgICBvdXQucHVzaChgRXhwaXJlcz0ke3RvSU1GRGF0ZShjb29raWUuZXhwaXJlcyl9YClcbiAgfVxuXG4gIGlmIChjb29raWUuc2FtZVNpdGUpIHtcbiAgICBvdXQucHVzaChgU2FtZVNpdGU9JHtjb29raWUuc2FtZVNpdGV9YClcbiAgfVxuXG4gIGZvciAoY29uc3QgcGFydCBvZiBjb29raWUudW5wYXJzZWQpIHtcbiAgICBpZiAoIXBhcnQuaW5jbHVkZXMoJz0nKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHVucGFyc2VkJylcbiAgICB9XG5cbiAgICBjb25zdCBba2V5LCAuLi52YWx1ZV0gPSBwYXJ0LnNwbGl0KCc9JylcblxuICAgIG91dC5wdXNoKGAke2tleS50cmltKCl9PSR7dmFsdWUuam9pbignPScpfWApXG4gIH1cblxuICByZXR1cm4gb3V0LmpvaW4oJzsgJylcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzQ1RMRXhjbHVkaW5nSHRhYixcbiAgdmFsaWRhdGVDb29raWVOYW1lLFxuICB2YWxpZGF0ZUNvb2tpZVBhdGgsXG4gIHZhbGlkYXRlQ29va2llVmFsdWUsXG4gIHRvSU1GRGF0ZSxcbiAgc3RyaW5naWZ5XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgbWF4TmFtZVZhbHVlUGFpclNpemUsIG1heEF0dHJpYnV0ZVZhbHVlU2l6ZSB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKVxuY29uc3QgeyBpc0NUTEV4Y2x1ZGluZ0h0YWIgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0IH0gPSByZXF1aXJlKCcuLi9mZXRjaC9kYXRhVVJMJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFBhcnNlcyB0aGUgZmllbGQtdmFsdWUgYXR0cmlidXRlcyBvZiBhIHNldC1jb29raWUgaGVhZGVyIHN0cmluZy5cbiAqIEBzZWUgaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtcmZjNjI2NWJpcyNzZWN0aW9uLTUuNFxuICogQHBhcmFtIHtzdHJpbmd9IGhlYWRlclxuICogQHJldHVybnMgaWYgdGhlIGhlYWRlciBpcyBpbnZhbGlkLCBudWxsIHdpbGwgYmUgcmV0dXJuZWRcbiAqL1xuZnVuY3Rpb24gcGFyc2VTZXRDb29raWUgKGhlYWRlcikge1xuICAvLyAxLiBJZiB0aGUgc2V0LWNvb2tpZS1zdHJpbmcgY29udGFpbnMgYSAleDAwLTA4IC8gJXgwQS0xRiAvICV4N0ZcbiAgLy8gICAgY2hhcmFjdGVyIChDVEwgY2hhcmFjdGVycyBleGNsdWRpbmcgSFRBQik6IEFib3J0IHRoZXNlIHN0ZXBzIGFuZFxuICAvLyAgICBpZ25vcmUgdGhlIHNldC1jb29raWUtc3RyaW5nIGVudGlyZWx5LlxuICBpZiAoaXNDVExFeGNsdWRpbmdIdGFiKGhlYWRlcikpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgbGV0IG5hbWVWYWx1ZVBhaXIgPSAnJ1xuICBsZXQgdW5wYXJzZWRBdHRyaWJ1dGVzID0gJydcbiAgbGV0IG5hbWUgPSAnJ1xuICBsZXQgdmFsdWUgPSAnJ1xuXG4gIC8vIDIuIElmIHRoZSBzZXQtY29va2llLXN0cmluZyBjb250YWlucyBhICV4M0IgKFwiO1wiKSBjaGFyYWN0ZXI6XG4gIGlmIChoZWFkZXIuaW5jbHVkZXMoJzsnKSkge1xuICAgIC8vIDEuIFRoZSBuYW1lLXZhbHVlLXBhaXIgc3RyaW5nIGNvbnNpc3RzIG9mIHRoZSBjaGFyYWN0ZXJzIHVwIHRvLFxuICAgIC8vICAgIGJ1dCBub3QgaW5jbHVkaW5nLCB0aGUgZmlyc3QgJXgzQiAoXCI7XCIpLCBhbmQgdGhlIHVucGFyc2VkLVxuICAgIC8vICAgIGF0dHJpYnV0ZXMgY29uc2lzdCBvZiB0aGUgcmVtYWluZGVyIG9mIHRoZSBzZXQtY29va2llLXN0cmluZ1xuICAgIC8vICAgIChpbmNsdWRpbmcgdGhlICV4M0IgKFwiO1wiKSBpbiBxdWVzdGlvbikuXG4gICAgY29uc3QgcG9zaXRpb24gPSB7IHBvc2l0aW9uOiAwIH1cblxuICAgIG5hbWVWYWx1ZVBhaXIgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdCgnOycsIGhlYWRlciwgcG9zaXRpb24pXG4gICAgdW5wYXJzZWRBdHRyaWJ1dGVzID0gaGVhZGVyLnNsaWNlKHBvc2l0aW9uLnBvc2l0aW9uKVxuICB9IGVsc2Uge1xuICAgIC8vIE90aGVyd2lzZTpcblxuICAgIC8vIDEuIFRoZSBuYW1lLXZhbHVlLXBhaXIgc3RyaW5nIGNvbnNpc3RzIG9mIGFsbCB0aGUgY2hhcmFjdGVyc1xuICAgIC8vICAgIGNvbnRhaW5lZCBpbiB0aGUgc2V0LWNvb2tpZS1zdHJpbmcsIGFuZCB0aGUgdW5wYXJzZWQtXG4gICAgLy8gICAgYXR0cmlidXRlcyBpcyB0aGUgZW1wdHkgc3RyaW5nLlxuICAgIG5hbWVWYWx1ZVBhaXIgPSBoZWFkZXJcbiAgfVxuXG4gIC8vIDMuIElmIHRoZSBuYW1lLXZhbHVlLXBhaXIgc3RyaW5nIGxhY2tzIGEgJXgzRCAoXCI9XCIpIGNoYXJhY3RlciwgdGhlblxuICAvLyAgICB0aGUgbmFtZSBzdHJpbmcgaXMgZW1wdHksIGFuZCB0aGUgdmFsdWUgc3RyaW5nIGlzIHRoZSB2YWx1ZSBvZlxuICAvLyAgICBuYW1lLXZhbHVlLXBhaXIuXG4gIGlmICghbmFtZVZhbHVlUGFpci5pbmNsdWRlcygnPScpKSB7XG4gICAgdmFsdWUgPSBuYW1lVmFsdWVQYWlyXG4gIH0gZWxzZSB7XG4gICAgLy8gICAgT3RoZXJ3aXNlLCB0aGUgbmFtZSBzdHJpbmcgY29uc2lzdHMgb2YgdGhlIGNoYXJhY3RlcnMgdXAgdG8sIGJ1dFxuICAgIC8vICAgIG5vdCBpbmNsdWRpbmcsIHRoZSBmaXJzdCAleDNEIChcIj1cIikgY2hhcmFjdGVyLCBhbmQgdGhlIChwb3NzaWJseVxuICAgIC8vICAgIGVtcHR5KSB2YWx1ZSBzdHJpbmcgY29uc2lzdHMgb2YgdGhlIGNoYXJhY3RlcnMgYWZ0ZXIgdGhlIGZpcnN0XG4gICAgLy8gICAgJXgzRCAoXCI9XCIpIGNoYXJhY3Rlci5cbiAgICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuICAgIG5hbWUgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdChcbiAgICAgICc9JyxcbiAgICAgIG5hbWVWYWx1ZVBhaXIsXG4gICAgICBwb3NpdGlvblxuICAgIClcbiAgICB2YWx1ZSA9IG5hbWVWYWx1ZVBhaXIuc2xpY2UocG9zaXRpb24ucG9zaXRpb24gKyAxKVxuICB9XG5cbiAgLy8gNC4gUmVtb3ZlIGFueSBsZWFkaW5nIG9yIHRyYWlsaW5nIFdTUCBjaGFyYWN0ZXJzIGZyb20gdGhlIG5hbWVcbiAgLy8gICAgc3RyaW5nIGFuZCB0aGUgdmFsdWUgc3RyaW5nLlxuICBuYW1lID0gbmFtZS50cmltKClcbiAgdmFsdWUgPSB2YWx1ZS50cmltKClcblxuICAvLyA1LiBJZiB0aGUgc3VtIG9mIHRoZSBsZW5ndGhzIG9mIHRoZSBuYW1lIHN0cmluZyBhbmQgdGhlIHZhbHVlIHN0cmluZ1xuICAvLyAgICBpcyBtb3JlIHRoYW4gNDA5NiBvY3RldHMsIGFib3J0IHRoZXNlIHN0ZXBzIGFuZCBpZ25vcmUgdGhlIHNldC1cbiAgLy8gICAgY29va2llLXN0cmluZyBlbnRpcmVseS5cbiAgaWYgKG5hbWUubGVuZ3RoICsgdmFsdWUubGVuZ3RoID4gbWF4TmFtZVZhbHVlUGFpclNpemUpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgLy8gNi4gVGhlIGNvb2tpZS1uYW1lIGlzIHRoZSBuYW1lIHN0cmluZywgYW5kIHRoZSBjb29raWUtdmFsdWUgaXMgdGhlXG4gIC8vICAgIHZhbHVlIHN0cmluZy5cbiAgcmV0dXJuIHtcbiAgICBuYW1lLCB2YWx1ZSwgLi4ucGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzKVxuICB9XG59XG5cbi8qKlxuICogUGFyc2VzIHRoZSByZW1haW5pbmcgYXR0cmlidXRlcyBvZiBhIHNldC1jb29raWUgaGVhZGVyXG4gKiBAc2VlIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvZHJhZnQtaWV0Zi1odHRwYmlzLXJmYzYyNjViaXMjc2VjdGlvbi01LjRcbiAqIEBwYXJhbSB7c3RyaW5nfSB1bnBhcnNlZEF0dHJpYnV0ZXNcbiAqIEBwYXJhbSB7W09iamVjdC48c3RyaW5nLCB1bmtub3duPl09e319IGNvb2tpZUF0dHJpYnV0ZUxpc3RcbiAqL1xuZnVuY3Rpb24gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXMgKHVucGFyc2VkQXR0cmlidXRlcywgY29va2llQXR0cmlidXRlTGlzdCA9IHt9KSB7XG4gIC8vIDEuIElmIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzIHN0cmluZyBpcyBlbXB0eSwgc2tpcCB0aGUgcmVzdCBvZlxuICAvLyAgICB0aGVzZSBzdGVwcy5cbiAgaWYgKHVucGFyc2VkQXR0cmlidXRlcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gY29va2llQXR0cmlidXRlTGlzdFxuICB9XG5cbiAgLy8gMi4gRGlzY2FyZCB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzICh3aGljaFxuICAvLyAgICB3aWxsIGJlIGEgJXgzQiAoXCI7XCIpIGNoYXJhY3RlcikuXG4gIGFzc2VydCh1bnBhcnNlZEF0dHJpYnV0ZXNbMF0gPT09ICc7JylcbiAgdW5wYXJzZWRBdHRyaWJ1dGVzID0gdW5wYXJzZWRBdHRyaWJ1dGVzLnNsaWNlKDEpXG5cbiAgbGV0IGNvb2tpZUF2ID0gJydcblxuICAvLyAzLiBJZiB0aGUgcmVtYWluaW5nIHVucGFyc2VkLWF0dHJpYnV0ZXMgY29udGFpbnMgYSAleDNCIChcIjtcIilcbiAgLy8gICAgY2hhcmFjdGVyOlxuICBpZiAodW5wYXJzZWRBdHRyaWJ1dGVzLmluY2x1ZGVzKCc7JykpIHtcbiAgICAvLyAxLiBDb25zdW1lIHRoZSBjaGFyYWN0ZXJzIG9mIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzIHVwIHRvLCBidXRcbiAgICAvLyAgICBub3QgaW5jbHVkaW5nLCB0aGUgZmlyc3QgJXgzQiAoXCI7XCIpIGNoYXJhY3Rlci5cbiAgICBjb29raWVBdiA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0KFxuICAgICAgJzsnLFxuICAgICAgdW5wYXJzZWRBdHRyaWJ1dGVzLFxuICAgICAgeyBwb3NpdGlvbjogMCB9XG4gICAgKVxuICAgIHVucGFyc2VkQXR0cmlidXRlcyA9IHVucGFyc2VkQXR0cmlidXRlcy5zbGljZShjb29raWVBdi5sZW5ndGgpXG4gIH0gZWxzZSB7XG4gICAgLy8gT3RoZXJ3aXNlOlxuXG4gICAgLy8gMS4gQ29uc3VtZSB0aGUgcmVtYWluZGVyIG9mIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzLlxuICAgIGNvb2tpZUF2ID0gdW5wYXJzZWRBdHRyaWJ1dGVzXG4gICAgdW5wYXJzZWRBdHRyaWJ1dGVzID0gJydcbiAgfVxuXG4gIC8vIExldCB0aGUgY29va2llLWF2IHN0cmluZyBiZSB0aGUgY2hhcmFjdGVycyBjb25zdW1lZCBpbiB0aGlzIHN0ZXAuXG5cbiAgbGV0IGF0dHJpYnV0ZU5hbWUgPSAnJ1xuICBsZXQgYXR0cmlidXRlVmFsdWUgPSAnJ1xuXG4gIC8vIDQuIElmIHRoZSBjb29raWUtYXYgc3RyaW5nIGNvbnRhaW5zIGEgJXgzRCAoXCI9XCIpIGNoYXJhY3RlcjpcbiAgaWYgKGNvb2tpZUF2LmluY2x1ZGVzKCc9JykpIHtcbiAgICAvLyAxLiBUaGUgKHBvc3NpYmx5IGVtcHR5KSBhdHRyaWJ1dGUtbmFtZSBzdHJpbmcgY29uc2lzdHMgb2YgdGhlXG4gICAgLy8gICAgY2hhcmFjdGVycyB1cCB0bywgYnV0IG5vdCBpbmNsdWRpbmcsIHRoZSBmaXJzdCAleDNEIChcIj1cIilcbiAgICAvLyAgICBjaGFyYWN0ZXIsIGFuZCB0aGUgKHBvc3NpYmx5IGVtcHR5KSBhdHRyaWJ1dGUtdmFsdWUgc3RyaW5nXG4gICAgLy8gICAgY29uc2lzdHMgb2YgdGhlIGNoYXJhY3RlcnMgYWZ0ZXIgdGhlIGZpcnN0ICV4M0QgKFwiPVwiKVxuICAgIC8vICAgIGNoYXJhY3Rlci5cbiAgICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuXG4gICAgYXR0cmlidXRlTmFtZSA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0KFxuICAgICAgJz0nLFxuICAgICAgY29va2llQXYsXG4gICAgICBwb3NpdGlvblxuICAgIClcbiAgICBhdHRyaWJ1dGVWYWx1ZSA9IGNvb2tpZUF2LnNsaWNlKHBvc2l0aW9uLnBvc2l0aW9uICsgMSlcbiAgfSBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2U6XG5cbiAgICAvLyAxLiBUaGUgYXR0cmlidXRlLW5hbWUgc3RyaW5nIGNvbnNpc3RzIG9mIHRoZSBlbnRpcmUgY29va2llLWF2XG4gICAgLy8gICAgc3RyaW5nLCBhbmQgdGhlIGF0dHJpYnV0ZS12YWx1ZSBzdHJpbmcgaXMgZW1wdHkuXG4gICAgYXR0cmlidXRlTmFtZSA9IGNvb2tpZUF2XG4gIH1cblxuICAvLyA1LiBSZW1vdmUgYW55IGxlYWRpbmcgb3IgdHJhaWxpbmcgV1NQIGNoYXJhY3RlcnMgZnJvbSB0aGUgYXR0cmlidXRlLVxuICAvLyAgICBuYW1lIHN0cmluZyBhbmQgdGhlIGF0dHJpYnV0ZS12YWx1ZSBzdHJpbmcuXG4gIGF0dHJpYnV0ZU5hbWUgPSBhdHRyaWJ1dGVOYW1lLnRyaW0oKVxuICBhdHRyaWJ1dGVWYWx1ZSA9IGF0dHJpYnV0ZVZhbHVlLnRyaW0oKVxuXG4gIC8vIDYuIElmIHRoZSBhdHRyaWJ1dGUtdmFsdWUgaXMgbG9uZ2VyIHRoYW4gMTAyNCBvY3RldHMsIGlnbm9yZSB0aGVcbiAgLy8gICAgY29va2llLWF2IHN0cmluZyBhbmQgcmV0dXJuIHRvIFN0ZXAgMSBvZiB0aGlzIGFsZ29yaXRobS5cbiAgaWYgKGF0dHJpYnV0ZVZhbHVlLmxlbmd0aCA+IG1heEF0dHJpYnV0ZVZhbHVlU2l6ZSkge1xuICAgIHJldHVybiBwYXJzZVVucGFyc2VkQXR0cmlidXRlcyh1bnBhcnNlZEF0dHJpYnV0ZXMsIGNvb2tpZUF0dHJpYnV0ZUxpc3QpXG4gIH1cblxuICAvLyA3LiBQcm9jZXNzIHRoZSBhdHRyaWJ1dGUtbmFtZSBhbmQgYXR0cmlidXRlLXZhbHVlIGFjY29yZGluZyB0byB0aGVcbiAgLy8gICAgcmVxdWlyZW1lbnRzIGluIHRoZSBmb2xsb3dpbmcgc3Vic2VjdGlvbnMuICAoTm90aWNlIHRoYXRcbiAgLy8gICAgYXR0cmlidXRlcyB3aXRoIHVucmVjb2duaXplZCBhdHRyaWJ1dGUtbmFtZXMgYXJlIGlnbm9yZWQuKVxuICBjb25zdCBhdHRyaWJ1dGVOYW1lTG93ZXJjYXNlID0gYXR0cmlidXRlTmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtcmZjNjI2NWJpcyNzZWN0aW9uLTUuNC4xXG4gIC8vIElmIHRoZSBhdHRyaWJ1dGUtbmFtZSBjYXNlLWluc2Vuc2l0aXZlbHkgbWF0Y2hlcyB0aGUgc3RyaW5nXG4gIC8vIFwiRXhwaXJlc1wiLCB0aGUgdXNlciBhZ2VudCBNVVNUIHByb2Nlc3MgdGhlIGNvb2tpZS1hdiBhcyBmb2xsb3dzLlxuICBpZiAoYXR0cmlidXRlTmFtZUxvd2VyY2FzZSA9PT0gJ2V4cGlyZXMnKSB7XG4gICAgLy8gMS4gTGV0IHRoZSBleHBpcnktdGltZSBiZSB0aGUgcmVzdWx0IG9mIHBhcnNpbmcgdGhlIGF0dHJpYnV0ZS12YWx1ZVxuICAgIC8vICAgIGFzIGNvb2tpZS1kYXRlIChzZWUgU2VjdGlvbiA1LjEuMSkuXG4gICAgY29uc3QgZXhwaXJ5VGltZSA9IG5ldyBEYXRlKGF0dHJpYnV0ZVZhbHVlKVxuXG4gICAgLy8gMi4gSWYgdGhlIGF0dHJpYnV0ZS12YWx1ZSBmYWlsZWQgdG8gcGFyc2UgYXMgYSBjb29raWUgZGF0ZSwgaWdub3JlXG4gICAgLy8gICAgdGhlIGNvb2tpZS1hdi5cblxuICAgIGNvb2tpZUF0dHJpYnV0ZUxpc3QuZXhwaXJlcyA9IGV4cGlyeVRpbWVcbiAgfSBlbHNlIGlmIChhdHRyaWJ1dGVOYW1lTG93ZXJjYXNlID09PSAnbWF4LWFnZScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjJcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZyBcIk1heC1cbiAgICAvLyBBZ2VcIiwgdGhlIHVzZXIgYWdlbnQgTVVTVCBwcm9jZXNzIHRoZSBjb29raWUtYXYgYXMgZm9sbG93cy5cblxuICAgIC8vIDEuIElmIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIGF0dHJpYnV0ZS12YWx1ZSBpcyBub3QgYSBESUdJVCBvciBhXG4gICAgLy8gICAgXCItXCIgY2hhcmFjdGVyLCBpZ25vcmUgdGhlIGNvb2tpZS1hdi5cbiAgICBjb25zdCBjaGFyQ29kZSA9IGF0dHJpYnV0ZVZhbHVlLmNoYXJDb2RlQXQoMClcblxuICAgIGlmICgoY2hhckNvZGUgPCA0OCB8fCBjaGFyQ29kZSA+IDU3KSAmJiBhdHRyaWJ1dGVWYWx1ZVswXSAhPT0gJy0nKSB7XG4gICAgICByZXR1cm4gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzLCBjb29raWVBdHRyaWJ1dGVMaXN0KVxuICAgIH1cblxuICAgIC8vIDIuIElmIHRoZSByZW1haW5kZXIgb2YgYXR0cmlidXRlLXZhbHVlIGNvbnRhaW5zIGEgbm9uLURJR0lUXG4gICAgLy8gICAgY2hhcmFjdGVyLCBpZ25vcmUgdGhlIGNvb2tpZS1hdi5cbiAgICBpZiAoIS9eXFxkKyQvLnRlc3QoYXR0cmlidXRlVmFsdWUpKSB7XG4gICAgICByZXR1cm4gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzLCBjb29raWVBdHRyaWJ1dGVMaXN0KVxuICAgIH1cblxuICAgIC8vIDMuIExldCBkZWx0YS1zZWNvbmRzIGJlIHRoZSBhdHRyaWJ1dGUtdmFsdWUgY29udmVydGVkIHRvIGFuIGludGVnZXIuXG4gICAgY29uc3QgZGVsdGFTZWNvbmRzID0gTnVtYmVyKGF0dHJpYnV0ZVZhbHVlKVxuXG4gICAgLy8gNC4gTGV0IGNvb2tpZS1hZ2UtbGltaXQgYmUgdGhlIG1heGltdW0gYWdlIG9mIHRoZSBjb29raWUgKHdoaWNoXG4gICAgLy8gICAgU0hPVUxEIGJlIDQwMCBkYXlzIG9yIGxlc3MsIHNlZSBTZWN0aW9uIDQuMS4yLjIpLlxuXG4gICAgLy8gNS4gU2V0IGRlbHRhLXNlY29uZHMgdG8gdGhlIHNtYWxsZXIgb2YgaXRzIHByZXNlbnQgdmFsdWUgYW5kIGNvb2tpZS1cbiAgICAvLyAgICBhZ2UtbGltaXQuXG4gICAgLy8gZGVsdGFTZWNvbmRzID0gTWF0aC5taW4oZGVsdGFTZWNvbmRzICogMTAwMCwgbWF4RXhwaXJlc01zKVxuXG4gICAgLy8gNi4gSWYgZGVsdGEtc2Vjb25kcyBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gemVybyAoMCksIGxldCBleHBpcnktXG4gICAgLy8gICAgdGltZSBiZSB0aGUgZWFybGllc3QgcmVwcmVzZW50YWJsZSBkYXRlIGFuZCB0aW1lLiAgT3RoZXJ3aXNlLCBsZXRcbiAgICAvLyAgICB0aGUgZXhwaXJ5LXRpbWUgYmUgdGhlIGN1cnJlbnQgZGF0ZSBhbmQgdGltZSBwbHVzIGRlbHRhLXNlY29uZHNcbiAgICAvLyAgICBzZWNvbmRzLlxuICAgIC8vIGNvbnN0IGV4cGlyeVRpbWUgPSBkZWx0YVNlY29uZHMgPD0gMCA/IERhdGUubm93KCkgOiBEYXRlLm5vdygpICsgZGVsdGFTZWNvbmRzXG5cbiAgICAvLyA3LiBBcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtYXR0cmlidXRlLWxpc3Qgd2l0aCBhblxuICAgIC8vICAgIGF0dHJpYnV0ZS1uYW1lIG9mIE1heC1BZ2UgYW5kIGFuIGF0dHJpYnV0ZS12YWx1ZSBvZiBleHBpcnktdGltZS5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0Lm1heEFnZSA9IGRlbHRhU2Vjb25kc1xuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdkb21haW4nKSB7XG4gICAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtcmZjNjI2NWJpcyNzZWN0aW9uLTUuNC4zXG4gICAgLy8gSWYgdGhlIGF0dHJpYnV0ZS1uYW1lIGNhc2UtaW5zZW5zaXRpdmVseSBtYXRjaGVzIHRoZSBzdHJpbmcgXCJEb21haW5cIixcbiAgICAvLyB0aGUgdXNlciBhZ2VudCBNVVNUIHByb2Nlc3MgdGhlIGNvb2tpZS1hdiBhcyBmb2xsb3dzLlxuXG4gICAgLy8gMS4gTGV0IGNvb2tpZS1kb21haW4gYmUgdGhlIGF0dHJpYnV0ZS12YWx1ZS5cbiAgICBsZXQgY29va2llRG9tYWluID0gYXR0cmlidXRlVmFsdWVcblxuICAgIC8vIDIuIElmIGNvb2tpZS1kb21haW4gc3RhcnRzIHdpdGggJXgyRSAoXCIuXCIpLCBsZXQgY29va2llLWRvbWFpbiBiZVxuICAgIC8vICAgIGNvb2tpZS1kb21haW4gd2l0aG91dCBpdHMgbGVhZGluZyAleDJFIChcIi5cIikuXG4gICAgaWYgKGNvb2tpZURvbWFpblswXSA9PT0gJy4nKSB7XG4gICAgICBjb29raWVEb21haW4gPSBjb29raWVEb21haW4uc2xpY2UoMSlcbiAgICB9XG5cbiAgICAvLyAzLiBDb252ZXJ0IHRoZSBjb29raWUtZG9tYWluIHRvIGxvd2VyIGNhc2UuXG4gICAgY29va2llRG9tYWluID0gY29va2llRG9tYWluLnRvTG93ZXJDYXNlKClcblxuICAgIC8vIDQuIEFwcGVuZCBhbiBhdHRyaWJ1dGUgdG8gdGhlIGNvb2tpZS1hdHRyaWJ1dGUtbGlzdCB3aXRoIGFuXG4gICAgLy8gICAgYXR0cmlidXRlLW5hbWUgb2YgRG9tYWluIGFuZCBhbiBhdHRyaWJ1dGUtdmFsdWUgb2YgY29va2llLWRvbWFpbi5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0LmRvbWFpbiA9IGNvb2tpZURvbWFpblxuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdwYXRoJykge1xuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvZHJhZnQtaWV0Zi1odHRwYmlzLXJmYzYyNjViaXMjc2VjdGlvbi01LjQuNFxuICAgIC8vIElmIHRoZSBhdHRyaWJ1dGUtbmFtZSBjYXNlLWluc2Vuc2l0aXZlbHkgbWF0Y2hlcyB0aGUgc3RyaW5nIFwiUGF0aFwiLFxuICAgIC8vIHRoZSB1c2VyIGFnZW50IE1VU1QgcHJvY2VzcyB0aGUgY29va2llLWF2IGFzIGZvbGxvd3MuXG5cbiAgICAvLyAxLiBJZiB0aGUgYXR0cmlidXRlLXZhbHVlIGlzIGVtcHR5IG9yIGlmIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlXG4gICAgLy8gICAgYXR0cmlidXRlLXZhbHVlIGlzIG5vdCAleDJGIChcIi9cIik6XG4gICAgbGV0IGNvb2tpZVBhdGggPSAnJ1xuICAgIGlmIChhdHRyaWJ1dGVWYWx1ZS5sZW5ndGggPT09IDAgfHwgYXR0cmlidXRlVmFsdWVbMF0gIT09ICcvJykge1xuICAgICAgLy8gMS4gTGV0IGNvb2tpZS1wYXRoIGJlIHRoZSBkZWZhdWx0LXBhdGguXG4gICAgICBjb29raWVQYXRoID0gJy8nXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIE90aGVyd2lzZTpcblxuICAgICAgLy8gMS4gTGV0IGNvb2tpZS1wYXRoIGJlIHRoZSBhdHRyaWJ1dGUtdmFsdWUuXG4gICAgICBjb29raWVQYXRoID0gYXR0cmlidXRlVmFsdWVcbiAgICB9XG5cbiAgICAvLyAyLiBBcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtYXR0cmlidXRlLWxpc3Qgd2l0aCBhblxuICAgIC8vICAgIGF0dHJpYnV0ZS1uYW1lIG9mIFBhdGggYW5kIGFuIGF0dHJpYnV0ZS12YWx1ZSBvZiBjb29raWUtcGF0aC5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0LnBhdGggPSBjb29raWVQYXRoXG4gIH0gZWxzZSBpZiAoYXR0cmlidXRlTmFtZUxvd2VyY2FzZSA9PT0gJ3NlY3VyZScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjVcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZyBcIlNlY3VyZVwiLFxuICAgIC8vIHRoZSB1c2VyIGFnZW50IE1VU1QgYXBwZW5kIGFuIGF0dHJpYnV0ZSB0byB0aGUgY29va2llLWF0dHJpYnV0ZS1saXN0XG4gICAgLy8gd2l0aCBhbiBhdHRyaWJ1dGUtbmFtZSBvZiBTZWN1cmUgYW5kIGFuIGVtcHR5IGF0dHJpYnV0ZS12YWx1ZS5cblxuICAgIGNvb2tpZUF0dHJpYnV0ZUxpc3Quc2VjdXJlID0gdHJ1ZVxuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdodHRwb25seScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjZcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZ1xuICAgIC8vIFwiSHR0cE9ubHlcIiwgdGhlIHVzZXIgYWdlbnQgTVVTVCBhcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtXG4gICAgLy8gYXR0cmlidXRlLWxpc3Qgd2l0aCBhbiBhdHRyaWJ1dGUtbmFtZSBvZiBIdHRwT25seSBhbmQgYW4gZW1wdHlcbiAgICAvLyBhdHRyaWJ1dGUtdmFsdWUuXG5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0Lmh0dHBPbmx5ID0gdHJ1ZVxuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdzYW1lc2l0ZScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjdcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZ1xuICAgIC8vIFwiU2FtZVNpdGVcIiwgdGhlIHVzZXIgYWdlbnQgTVVTVCBwcm9jZXNzIHRoZSBjb29raWUtYXYgYXMgZm9sbG93czpcblxuICAgIC8vIDEuIExldCBlbmZvcmNlbWVudCBiZSBcIkRlZmF1bHRcIi5cbiAgICBsZXQgZW5mb3JjZW1lbnQgPSAnRGVmYXVsdCdcblxuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlTG93ZXJjYXNlID0gYXR0cmlidXRlVmFsdWUudG9Mb3dlckNhc2UoKVxuICAgIC8vIDIuIElmIGNvb2tpZS1hdidzIGF0dHJpYnV0ZS12YWx1ZSBpcyBhIGNhc2UtaW5zZW5zaXRpdmUgbWF0Y2ggZm9yXG4gICAgLy8gICAgXCJOb25lXCIsIHNldCBlbmZvcmNlbWVudCB0byBcIk5vbmVcIi5cbiAgICBpZiAoYXR0cmlidXRlVmFsdWVMb3dlcmNhc2UuaW5jbHVkZXMoJ25vbmUnKSkge1xuICAgICAgZW5mb3JjZW1lbnQgPSAnTm9uZSdcbiAgICB9XG5cbiAgICAvLyAzLiBJZiBjb29raWUtYXYncyBhdHRyaWJ1dGUtdmFsdWUgaXMgYSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvclxuICAgIC8vICAgIFwiU3RyaWN0XCIsIHNldCBlbmZvcmNlbWVudCB0byBcIlN0cmljdFwiLlxuICAgIGlmIChhdHRyaWJ1dGVWYWx1ZUxvd2VyY2FzZS5pbmNsdWRlcygnc3RyaWN0JykpIHtcbiAgICAgIGVuZm9yY2VtZW50ID0gJ1N0cmljdCdcbiAgICB9XG5cbiAgICAvLyA0LiBJZiBjb29raWUtYXYncyBhdHRyaWJ1dGUtdmFsdWUgaXMgYSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvclxuICAgIC8vICAgIFwiTGF4XCIsIHNldCBlbmZvcmNlbWVudCB0byBcIkxheFwiLlxuICAgIGlmIChhdHRyaWJ1dGVWYWx1ZUxvd2VyY2FzZS5pbmNsdWRlcygnbGF4JykpIHtcbiAgICAgIGVuZm9yY2VtZW50ID0gJ0xheCdcbiAgICB9XG5cbiAgICAvLyA1LiBBcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtYXR0cmlidXRlLWxpc3Qgd2l0aCBhblxuICAgIC8vICAgIGF0dHJpYnV0ZS1uYW1lIG9mIFwiU2FtZVNpdGVcIiBhbmQgYW4gYXR0cmlidXRlLXZhbHVlIG9mXG4gICAgLy8gICAgZW5mb3JjZW1lbnQuXG4gICAgY29va2llQXR0cmlidXRlTGlzdC5zYW1lU2l0ZSA9IGVuZm9yY2VtZW50XG4gIH0gZWxzZSB7XG4gICAgY29va2llQXR0cmlidXRlTGlzdC51bnBhcnNlZCA/Pz0gW11cblxuICAgIGNvb2tpZUF0dHJpYnV0ZUxpc3QudW5wYXJzZWQucHVzaChgJHthdHRyaWJ1dGVOYW1lfT0ke2F0dHJpYnV0ZVZhbHVlfWApXG4gIH1cblxuICAvLyA4LiBSZXR1cm4gdG8gU3RlcCAxIG9mIHRoaXMgYWxnb3JpdGhtLlxuICByZXR1cm4gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzLCBjb29raWVBdHRyaWJ1dGVMaXN0KVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgcGFyc2VTZXRDb29raWUsXG4gIHBhcnNlVW5wYXJzZWRBdHRyaWJ1dGVzXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcGFyc2VTZXRDb29raWUgfSA9IHJlcXVpcmUoJy4vcGFyc2UnKVxuY29uc3QgeyBzdHJpbmdpZnkgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsgSGVhZGVycyB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvaGVhZGVycycpXG5cbi8qKlxuICogQHR5cGVkZWYge09iamVjdH0gQ29va2llXG4gKiBAcHJvcGVydHkge3N0cmluZ30gbmFtZVxuICogQHByb3BlcnR5IHtzdHJpbmd9IHZhbHVlXG4gKiBAcHJvcGVydHkge0RhdGV8bnVtYmVyfHVuZGVmaW5lZH0gZXhwaXJlc1xuICogQHByb3BlcnR5IHtudW1iZXJ8dW5kZWZpbmVkfSBtYXhBZ2VcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfHVuZGVmaW5lZH0gZG9tYWluXG4gKiBAcHJvcGVydHkge3N0cmluZ3x1bmRlZmluZWR9IHBhdGhcbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbnx1bmRlZmluZWR9IHNlY3VyZVxuICogQHByb3BlcnR5IHtib29sZWFufHVuZGVmaW5lZH0gaHR0cE9ubHlcbiAqIEBwcm9wZXJ0eSB7J1N0cmljdCd8J0xheCd8J05vbmUnfSBzYW1lU2l0ZVxuICogQHByb3BlcnR5IHtzdHJpbmdbXX0gdW5wYXJzZWRcbiAqL1xuXG4vKipcbiAqIEBwYXJhbSB7SGVhZGVyc30gaGVhZGVyc1xuICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZz59XG4gKi9cbmZ1bmN0aW9uIGdldENvb2tpZXMgKGhlYWRlcnMpIHtcbiAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ2dldENvb2tpZXMnIH0pXG5cbiAgd2ViaWRsLmJyYW5kQ2hlY2soaGVhZGVycywgSGVhZGVycywgeyBzdHJpY3Q6IGZhbHNlIH0pXG5cbiAgY29uc3QgY29va2llID0gaGVhZGVycy5nZXQoJ2Nvb2tpZScpXG4gIGNvbnN0IG91dCA9IHt9XG5cbiAgaWYgKCFjb29raWUpIHtcbiAgICByZXR1cm4gb3V0XG4gIH1cblxuICBmb3IgKGNvbnN0IHBpZWNlIG9mIGNvb2tpZS5zcGxpdCgnOycpKSB7XG4gICAgY29uc3QgW25hbWUsIC4uLnZhbHVlXSA9IHBpZWNlLnNwbGl0KCc9JylcblxuICAgIG91dFtuYW1lLnRyaW0oKV0gPSB2YWx1ZS5qb2luKCc9JylcbiAgfVxuXG4gIHJldHVybiBvdXRcbn1cblxuLyoqXG4gKiBAcGFyYW0ge0hlYWRlcnN9IGhlYWRlcnNcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gKiBAcGFyYW0ge3sgcGF0aD86IHN0cmluZywgZG9tYWluPzogc3RyaW5nIH18dW5kZWZpbmVkfSBhdHRyaWJ1dGVzXG4gKiBAcmV0dXJucyB7dm9pZH1cbiAqL1xuZnVuY3Rpb24gZGVsZXRlQ29va2llIChoZWFkZXJzLCBuYW1lLCBhdHRyaWJ1dGVzKSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdkZWxldGVDb29raWUnIH0pXG5cbiAgd2ViaWRsLmJyYW5kQ2hlY2soaGVhZGVycywgSGVhZGVycywgeyBzdHJpY3Q6IGZhbHNlIH0pXG5cbiAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyhuYW1lKVxuICBhdHRyaWJ1dGVzID0gd2ViaWRsLmNvbnZlcnRlcnMuRGVsZXRlQ29va2llQXR0cmlidXRlcyhhdHRyaWJ1dGVzKVxuXG4gIC8vIE1hdGNoZXMgYmVoYXZpb3Igb2ZcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2Rlbm9sYW5kL2Rlbm9fc3RkL2Jsb2IvNjM4MjdiMTYzMzBiODI0ODlhMDQ2MTQwMjdjMzNiNzkwNGUwOGJlNS9odHRwL2Nvb2tpZS50cyNMMjc4XG4gIHNldENvb2tpZShoZWFkZXJzLCB7XG4gICAgbmFtZSxcbiAgICB2YWx1ZTogJycsXG4gICAgZXhwaXJlczogbmV3IERhdGUoMCksXG4gICAgLi4uYXR0cmlidXRlc1xuICB9KVxufVxuXG4vKipcbiAqIEBwYXJhbSB7SGVhZGVyc30gaGVhZGVyc1xuICogQHJldHVybnMge0Nvb2tpZVtdfVxuICovXG5mdW5jdGlvbiBnZXRTZXRDb29raWVzIChoZWFkZXJzKSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdnZXRTZXRDb29raWVzJyB9KVxuXG4gIHdlYmlkbC5icmFuZENoZWNrKGhlYWRlcnMsIEhlYWRlcnMsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gIGNvbnN0IGNvb2tpZXMgPSBoZWFkZXJzLmdldFNldENvb2tpZSgpXG5cbiAgaWYgKCFjb29raWVzKSB7XG4gICAgcmV0dXJuIFtdXG4gIH1cblxuICByZXR1cm4gY29va2llcy5tYXAoKHBhaXIpID0+IHBhcnNlU2V0Q29va2llKHBhaXIpKVxufVxuXG4vKipcbiAqIEBwYXJhbSB7SGVhZGVyc30gaGVhZGVyc1xuICogQHBhcmFtIHtDb29raWV9IGNvb2tpZVxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmZ1bmN0aW9uIHNldENvb2tpZSAoaGVhZGVycywgY29va2llKSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdzZXRDb29raWUnIH0pXG5cbiAgd2ViaWRsLmJyYW5kQ2hlY2soaGVhZGVycywgSGVhZGVycywgeyBzdHJpY3Q6IGZhbHNlIH0pXG5cbiAgY29va2llID0gd2ViaWRsLmNvbnZlcnRlcnMuQ29va2llKGNvb2tpZSlcblxuICBjb25zdCBzdHIgPSBzdHJpbmdpZnkoY29va2llKVxuXG4gIGlmIChzdHIpIHtcbiAgICBoZWFkZXJzLmFwcGVuZCgnU2V0LUNvb2tpZScsIHN0cmluZ2lmeShjb29raWUpKVxuICB9XG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzLkRlbGV0ZUNvb2tpZUF0dHJpYnV0ZXMgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5udWxsYWJsZUNvbnZlcnRlcih3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcpLFxuICAgIGtleTogJ3BhdGgnLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIod2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKSxcbiAgICBrZXk6ICdkb21haW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9XG5dKVxuXG53ZWJpZGwuY29udmVydGVycy5Db29raWUgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyxcbiAgICBrZXk6ICduYW1lJ1xuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAga2V5OiAndmFsdWUnXG4gIH0sXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5udWxsYWJsZUNvbnZlcnRlcigodmFsdWUpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgbG9uZyBsb25nJ10odmFsdWUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBuZXcgRGF0ZSh2YWx1ZSlcbiAgICB9KSxcbiAgICBrZXk6ICdleHBpcmVzJyxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzWydsb25nIGxvbmcnXSksXG4gICAga2V5OiAnbWF4QWdlJyxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyksXG4gICAga2V5OiAnZG9tYWluJyxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyksXG4gICAga2V5OiAncGF0aCcsXG4gICAgZGVmYXVsdFZhbHVlOiBudWxsXG4gIH0sXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5udWxsYWJsZUNvbnZlcnRlcih3ZWJpZGwuY29udmVydGVycy5ib29sZWFuKSxcbiAgICBrZXk6ICdzZWN1cmUnLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIod2ViaWRsLmNvbnZlcnRlcnMuYm9vbGVhbiksXG4gICAga2V5OiAnaHR0cE9ubHknLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcsXG4gICAga2V5OiAnc2FtZVNpdGUnLFxuICAgIGFsbG93ZWRWYWx1ZXM6IFsnU3RyaWN0JywgJ0xheCcsICdOb25lJ11cbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLnNlcXVlbmNlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyksXG4gICAga2V5OiAndW5wYXJzZWQnLFxuICAgIGRlZmF1bHRWYWx1ZTogW11cbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGdldENvb2tpZXMsXG4gIGRlbGV0ZUNvb2tpZSxcbiAgZ2V0U2V0Q29va2llcyxcbiAgc2V0Q29va2llXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8vIFRoaXMgaXMgYSBHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllciB1bmlxdWUgdXNlZFxuLy8gdG8gdmFsaWRhdGUgdGhhdCB0aGUgZW5kcG9pbnQgYWNjZXB0cyB3ZWJzb2NrZXRcbi8vIGNvbm5lY3Rpb25zLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM2NDU1Lmh0bWwjc2VjdGlvbi0xLjNcbmNvbnN0IHVpZCA9ICcyNThFQUZBNS1FOTE0LTQ3REEtOTVDQS1DNUFCMERDODVCMTEnXG5cbi8qKiBAdHlwZSB7UHJvcGVydHlEZXNjcmlwdG9yfSAqL1xuY29uc3Qgc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyA9IHtcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgd3JpdGFibGU6IGZhbHNlLFxuICBjb25maWd1cmFibGU6IGZhbHNlXG59XG5cbmNvbnN0IHN0YXRlcyA9IHtcbiAgQ09OTkVDVElORzogMCxcbiAgT1BFTjogMSxcbiAgQ0xPU0lORzogMixcbiAgQ0xPU0VEOiAzXG59XG5cbmNvbnN0IG9wY29kZXMgPSB7XG4gIENPTlRJTlVBVElPTjogMHgwLFxuICBURVhUOiAweDEsXG4gIEJJTkFSWTogMHgyLFxuICBDTE9TRTogMHg4LFxuICBQSU5HOiAweDksXG4gIFBPTkc6IDB4QVxufVxuXG5jb25zdCBtYXhVbnNpZ25lZDE2Qml0ID0gMiAqKiAxNiAtIDEgLy8gNjU1MzVcblxuY29uc3QgcGFyc2VyU3RhdGVzID0ge1xuICBJTkZPOiAwLFxuICBQQVlMT0FETEVOR1RIXzE2OiAyLFxuICBQQVlMT0FETEVOR1RIXzY0OiAzLFxuICBSRUFEX0RBVEE6IDRcbn1cblxuY29uc3QgZW1wdHlCdWZmZXIgPSBCdWZmZXIuYWxsb2NVbnNhZmUoMClcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHVpZCxcbiAgc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgc3RhdGVzLFxuICBvcGNvZGVzLFxuICBtYXhVbnNpZ25lZDE2Qml0LFxuICBwYXJzZXJTdGF0ZXMsXG4gIGVtcHR5QnVmZmVyXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrV2ViU29ja2V0VVJMOiBTeW1ib2woJ3VybCcpLFxuICBrUmVhZHlTdGF0ZTogU3ltYm9sKCdyZWFkeSBzdGF0ZScpLFxuICBrQ29udHJvbGxlcjogU3ltYm9sKCdjb250cm9sbGVyJyksXG4gIGtSZXNwb25zZTogU3ltYm9sKCdyZXNwb25zZScpLFxuICBrQmluYXJ5VHlwZTogU3ltYm9sKCdiaW5hcnkgdHlwZScpLFxuICBrU2VudENsb3NlOiBTeW1ib2woJ3NlbnQgY2xvc2UnKSxcbiAga1JlY2VpdmVkQ2xvc2U6IFN5bWJvbCgncmVjZWl2ZWQgY2xvc2UnKSxcbiAga0J5dGVQYXJzZXI6IFN5bWJvbCgnYnl0ZSBwYXJzZXInKVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHsgTWVzc2FnZVBvcnQgfSA9IHJlcXVpcmUoJ3dvcmtlcl90aHJlYWRzJylcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2NvbW1zLmh0bWwjbWVzc2FnZWV2ZW50XG4gKi9cbmNsYXNzIE1lc3NhZ2VFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgI2V2ZW50SW5pdFxuXG4gIGNvbnN0cnVjdG9yICh0eXBlLCBldmVudEluaXREaWN0ID0ge30pIHtcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnTWVzc2FnZUV2ZW50IGNvbnN0cnVjdG9yJyB9KVxuXG4gICAgdHlwZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyh0eXBlKVxuICAgIGV2ZW50SW5pdERpY3QgPSB3ZWJpZGwuY29udmVydGVycy5NZXNzYWdlRXZlbnRJbml0KGV2ZW50SW5pdERpY3QpXG5cbiAgICBzdXBlcih0eXBlLCBldmVudEluaXREaWN0KVxuXG4gICAgdGhpcy4jZXZlbnRJbml0ID0gZXZlbnRJbml0RGljdFxuICB9XG5cbiAgZ2V0IGRhdGEgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIE1lc3NhZ2VFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQuZGF0YVxuICB9XG5cbiAgZ2V0IG9yaWdpbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5vcmlnaW5cbiAgfVxuXG4gIGdldCBsYXN0RXZlbnRJZCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5sYXN0RXZlbnRJZFxuICB9XG5cbiAgZ2V0IHNvdXJjZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5zb3VyY2VcbiAgfVxuXG4gIGdldCBwb3J0cyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgaWYgKCFPYmplY3QuaXNGcm96ZW4odGhpcy4jZXZlbnRJbml0LnBvcnRzKSkge1xuICAgICAgT2JqZWN0LmZyZWV6ZSh0aGlzLiNldmVudEluaXQucG9ydHMpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5wb3J0c1xuICB9XG5cbiAgaW5pdE1lc3NhZ2VFdmVudCAoXG4gICAgdHlwZSxcbiAgICBidWJibGVzID0gZmFsc2UsXG4gICAgY2FuY2VsYWJsZSA9IGZhbHNlLFxuICAgIGRhdGEgPSBudWxsLFxuICAgIG9yaWdpbiA9ICcnLFxuICAgIGxhc3RFdmVudElkID0gJycsXG4gICAgc291cmNlID0gbnVsbCxcbiAgICBwb3J0cyA9IFtdXG4gICkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIE1lc3NhZ2VFdmVudClcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdNZXNzYWdlRXZlbnQuaW5pdE1lc3NhZ2VFdmVudCcgfSlcblxuICAgIHJldHVybiBuZXcgTWVzc2FnZUV2ZW50KHR5cGUsIHtcbiAgICAgIGJ1YmJsZXMsIGNhbmNlbGFibGUsIGRhdGEsIG9yaWdpbiwgbGFzdEV2ZW50SWQsIHNvdXJjZSwgcG9ydHNcbiAgICB9KVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyN0aGUtY2xvc2VldmVudC1pbnRlcmZhY2VcbiAqL1xuY2xhc3MgQ2xvc2VFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgI2V2ZW50SW5pdFxuXG4gIGNvbnN0cnVjdG9yICh0eXBlLCBldmVudEluaXREaWN0ID0ge30pIHtcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2xvc2VFdmVudCBjb25zdHJ1Y3RvcicgfSlcblxuICAgIHR5cGUgPSB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcodHlwZSlcbiAgICBldmVudEluaXREaWN0ID0gd2ViaWRsLmNvbnZlcnRlcnMuQ2xvc2VFdmVudEluaXQoZXZlbnRJbml0RGljdClcblxuICAgIHN1cGVyKHR5cGUsIGV2ZW50SW5pdERpY3QpXG5cbiAgICB0aGlzLiNldmVudEluaXQgPSBldmVudEluaXREaWN0XG4gIH1cblxuICBnZXQgd2FzQ2xlYW4gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENsb3NlRXZlbnQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRJbml0Lndhc0NsZWFuXG4gIH1cblxuICBnZXQgY29kZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2xvc2VFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQuY29kZVxuICB9XG5cbiAgZ2V0IHJlYXNvbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2xvc2VFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQucmVhc29uXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvd2ViYXBwYXBpcy5odG1sI3RoZS1lcnJvcmV2ZW50LWludGVyZmFjZVxuY2xhc3MgRXJyb3JFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgI2V2ZW50SW5pdFxuXG4gIGNvbnN0cnVjdG9yICh0eXBlLCBldmVudEluaXREaWN0KSB7XG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0Vycm9yRXZlbnQgY29uc3RydWN0b3InIH0pXG5cbiAgICBzdXBlcih0eXBlLCBldmVudEluaXREaWN0KVxuXG4gICAgdHlwZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyh0eXBlKVxuICAgIGV2ZW50SW5pdERpY3QgPSB3ZWJpZGwuY29udmVydGVycy5FcnJvckV2ZW50SW5pdChldmVudEluaXREaWN0ID8/IHt9KVxuXG4gICAgdGhpcy4jZXZlbnRJbml0ID0gZXZlbnRJbml0RGljdFxuICB9XG5cbiAgZ2V0IG1lc3NhZ2UgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEVycm9yRXZlbnQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRJbml0Lm1lc3NhZ2VcbiAgfVxuXG4gIGdldCBmaWxlbmFtZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRXJyb3JFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQuZmlsZW5hbWVcbiAgfVxuXG4gIGdldCBsaW5lbm8gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEVycm9yRXZlbnQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRJbml0LmxpbmVub1xuICB9XG5cbiAgZ2V0IGNvbG5vICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBFcnJvckV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5jb2xub1xuICB9XG5cbiAgZ2V0IGVycm9yICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBFcnJvckV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5lcnJvclxuICB9XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKE1lc3NhZ2VFdmVudC5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ01lc3NhZ2VFdmVudCcsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH0sXG4gIGRhdGE6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9yaWdpbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgbGFzdEV2ZW50SWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHNvdXJjZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcG9ydHM6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGluaXRNZXNzYWdlRXZlbnQ6IGtFbnVtZXJhYmxlUHJvcGVydHlcbn0pXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKENsb3NlRXZlbnQucHJvdG90eXBlLCB7XG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdDbG9zZUV2ZW50JyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSxcbiAgcmVhc29uOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjb2RlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICB3YXNDbGVhbjoga0VudW1lcmFibGVQcm9wZXJ0eVxufSlcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoRXJyb3JFdmVudC5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0Vycm9yRXZlbnQnLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICB9LFxuICBtZXNzYWdlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBmaWxlbmFtZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgbGluZW5vOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjb2xubzoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZXJyb3I6IGtFbnVtZXJhYmxlUHJvcGVydHlcbn0pXG5cbndlYmlkbC5jb252ZXJ0ZXJzLk1lc3NhZ2VQb3J0ID0gd2ViaWRsLmludGVyZmFjZUNvbnZlcnRlcihNZXNzYWdlUG9ydClcblxud2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPE1lc3NhZ2VQb3J0PiddID0gd2ViaWRsLnNlcXVlbmNlQ29udmVydGVyKFxuICB3ZWJpZGwuY29udmVydGVycy5NZXNzYWdlUG9ydFxuKVxuXG5jb25zdCBldmVudEluaXQgPSBbXG4gIHtcbiAgICBrZXk6ICdidWJibGVzJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnY2FuY2VsYWJsZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfSxcbiAge1xuICAgIGtleTogJ2NvbXBvc2VkJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9XG5dXG5cbndlYmlkbC5jb252ZXJ0ZXJzLk1lc3NhZ2VFdmVudEluaXQgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIC4uLmV2ZW50SW5pdCxcbiAge1xuICAgIGtleTogJ2RhdGEnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYW55LFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAga2V5OiAnb3JpZ2luJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyxcbiAgICBkZWZhdWx0VmFsdWU6ICcnXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdsYXN0RXZlbnRJZCcsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgZGVmYXVsdFZhbHVlOiAnJ1xuICB9LFxuICB7XG4gICAga2V5OiAnc291cmNlJyxcbiAgICAvLyBOb2RlIGRvZXNuJ3QgaW1wbGVtZW50IFdpbmRvd1Byb3h5IG9yIFNlcnZpY2VXb3JrZXIsIHNvIHRoZSBvbmx5XG4gICAgLy8gdmFsaWQgdmFsdWUgZm9yIHNvdXJjZSBpcyBhIE1lc3NhZ2VQb3J0LlxuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLk1lc3NhZ2VQb3J0KSxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGtleTogJ3BvcnRzJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxNZXNzYWdlUG9ydD4nXSxcbiAgICBnZXQgZGVmYXVsdFZhbHVlICgpIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cbiAgfVxuXSlcblxud2ViaWRsLmNvbnZlcnRlcnMuQ2xvc2VFdmVudEluaXQgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIC4uLmV2ZW50SW5pdCxcbiAge1xuICAgIGtleTogJ3dhc0NsZWFuJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnY29kZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgc2hvcnQnXSxcbiAgICBkZWZhdWx0VmFsdWU6IDBcbiAgfSxcbiAge1xuICAgIGtleTogJ3JlYXNvbicsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcsXG4gICAgZGVmYXVsdFZhbHVlOiAnJ1xuICB9XG5dKVxuXG53ZWJpZGwuY29udmVydGVycy5FcnJvckV2ZW50SW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAgLi4uZXZlbnRJbml0LFxuICB7XG4gICAga2V5OiAnbWVzc2FnZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgZGVmYXVsdFZhbHVlOiAnJ1xuICB9LFxuICB7XG4gICAga2V5OiAnZmlsZW5hbWUnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nLFxuICAgIGRlZmF1bHRWYWx1ZTogJydcbiAgfSxcbiAge1xuICAgIGtleTogJ2xpbmVubycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgbG9uZyddLFxuICAgIGRlZmF1bHRWYWx1ZTogMFxuICB9LFxuICB7XG4gICAga2V5OiAnY29sbm8nLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ3Vuc2lnbmVkIGxvbmcnXSxcbiAgICBkZWZhdWx0VmFsdWU6IDBcbiAgfSxcbiAge1xuICAgIGtleTogJ2Vycm9yJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmFueVxuICB9XG5dKVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgTWVzc2FnZUV2ZW50LFxuICBDbG9zZUV2ZW50LFxuICBFcnJvckV2ZW50XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga1JlYWR5U3RhdGUsIGtDb250cm9sbGVyLCBrUmVzcG9uc2UsIGtCaW5hcnlUeXBlLCBrV2ViU29ja2V0VVJMIH0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBzdGF0ZXMsIG9wY29kZXMgfSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsgTWVzc2FnZUV2ZW50LCBFcnJvckV2ZW50IH0gPSByZXF1aXJlKCcuL2V2ZW50cycpXG5cbi8qIGdsb2JhbHMgQmxvYiAqL1xuXG4vKipcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL3dlYnNvY2tldCcpLldlYlNvY2tldH0gd3NcbiAqL1xuZnVuY3Rpb24gaXNFc3RhYmxpc2hlZCAod3MpIHtcbiAgLy8gSWYgdGhlIHNlcnZlcidzIHJlc3BvbnNlIGlzIHZhbGlkYXRlZCBhcyBwcm92aWRlZCBmb3IgYWJvdmUsIGl0IGlzXG4gIC8vIHNhaWQgdGhhdCBfVGhlIFdlYlNvY2tldCBDb25uZWN0aW9uIGlzIEVzdGFibGlzaGVkXyBhbmQgdGhhdCB0aGVcbiAgLy8gV2ViU29ja2V0IENvbm5lY3Rpb24gaXMgaW4gdGhlIE9QRU4gc3RhdGUuXG4gIHJldHVybiB3c1trUmVhZHlTdGF0ZV0gPT09IHN0YXRlcy5PUEVOXG59XG5cbi8qKlxuICogQHBhcmFtIHtpbXBvcnQoJy4vd2Vic29ja2V0JykuV2ViU29ja2V0fSB3c1xuICovXG5mdW5jdGlvbiBpc0Nsb3NpbmcgKHdzKSB7XG4gIC8vIFVwb24gZWl0aGVyIHNlbmRpbmcgb3IgcmVjZWl2aW5nIGEgQ2xvc2UgY29udHJvbCBmcmFtZSwgaXQgaXMgc2FpZFxuICAvLyB0aGF0IF9UaGUgV2ViU29ja2V0IENsb3NpbmcgSGFuZHNoYWtlIGlzIFN0YXJ0ZWRfIGFuZCB0aGF0IHRoZVxuICAvLyBXZWJTb2NrZXQgY29ubmVjdGlvbiBpcyBpbiB0aGUgQ0xPU0lORyBzdGF0ZS5cbiAgcmV0dXJuIHdzW2tSZWFkeVN0YXRlXSA9PT0gc3RhdGVzLkNMT1NJTkdcbn1cblxuLyoqXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi93ZWJzb2NrZXQnKS5XZWJTb2NrZXR9IHdzXG4gKi9cbmZ1bmN0aW9uIGlzQ2xvc2VkICh3cykge1xuICByZXR1cm4gd3Nba1JlYWR5U3RhdGVdID09PSBzdGF0ZXMuQ0xPU0VEXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtZXZlbnQtZmlyZVxuICogQHBhcmFtIHtzdHJpbmd9IGVcbiAqIEBwYXJhbSB7RXZlbnRUYXJnZXR9IHRhcmdldFxuICogQHBhcmFtIHtFdmVudEluaXQgfCB1bmRlZmluZWR9IGV2ZW50SW5pdERpY3RcbiAqL1xuZnVuY3Rpb24gZmlyZUV2ZW50IChlLCB0YXJnZXQsIGV2ZW50Q29uc3RydWN0b3IgPSBFdmVudCwgZXZlbnRJbml0RGljdCkge1xuICAvLyAxLiBJZiBldmVudENvbnN0cnVjdG9yIGlzIG5vdCBnaXZlbiwgdGhlbiBsZXQgZXZlbnRDb25zdHJ1Y3RvciBiZSBFdmVudC5cblxuICAvLyAyLiBMZXQgZXZlbnQgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhbiBldmVudCBnaXZlbiBldmVudENvbnN0cnVjdG9yLFxuICAvLyAgICBpbiB0aGUgcmVsZXZhbnQgcmVhbG0gb2YgdGFyZ2V0LlxuICAvLyAzLiBJbml0aWFsaXplIGV2ZW50XHUyMDE5cyB0eXBlIGF0dHJpYnV0ZSB0byBlLlxuICBjb25zdCBldmVudCA9IG5ldyBldmVudENvbnN0cnVjdG9yKGUsIGV2ZW50SW5pdERpY3QpIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbmV3LWNhcFxuXG4gIC8vIDQuIEluaXRpYWxpemUgYW55IG90aGVyIElETCBhdHRyaWJ1dGVzIG9mIGV2ZW50IGFzIGRlc2NyaWJlZCBpbiB0aGVcbiAgLy8gICAgaW52b2NhdGlvbiBvZiB0aGlzIGFsZ29yaXRobS5cblxuICAvLyA1LiBSZXR1cm4gdGhlIHJlc3VsdCBvZiBkaXNwYXRjaGluZyBldmVudCBhdCB0YXJnZXQsIHdpdGggbGVnYWN5IHRhcmdldFxuICAvLyAgICBvdmVycmlkZSBmbGFnIHNldCBpZiBzZXQuXG4gIHRhcmdldC5kaXNwYXRjaEV2ZW50KGV2ZW50KVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZmVlZGJhY2stZnJvbS10aGUtcHJvdG9jb2xcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL3dlYnNvY2tldCcpLldlYlNvY2tldH0gd3NcbiAqIEBwYXJhbSB7bnVtYmVyfSB0eXBlIE9wY29kZVxuICogQHBhcmFtIHtCdWZmZXJ9IGRhdGEgYXBwbGljYXRpb24gZGF0YVxuICovXG5mdW5jdGlvbiB3ZWJzb2NrZXRNZXNzYWdlUmVjZWl2ZWQgKHdzLCB0eXBlLCBkYXRhKSB7XG4gIC8vIDEuIElmIHJlYWR5IHN0YXRlIGlzIG5vdCBPUEVOICgxKSwgdGhlbiByZXR1cm4uXG4gIGlmICh3c1trUmVhZHlTdGF0ZV0gIT09IHN0YXRlcy5PUEVOKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICAvLyAyLiBMZXQgZGF0YUZvckV2ZW50IGJlIGRldGVybWluZWQgYnkgc3dpdGNoaW5nIG9uIHR5cGUgYW5kIGJpbmFyeSB0eXBlOlxuICBsZXQgZGF0YUZvckV2ZW50XG5cbiAgaWYgKHR5cGUgPT09IG9wY29kZXMuVEVYVCkge1xuICAgIC8vIC0+IHR5cGUgaW5kaWNhdGVzIHRoYXQgdGhlIGRhdGEgaXMgVGV4dFxuICAgIC8vICAgICAgYSBuZXcgRE9NU3RyaW5nIGNvbnRhaW5pbmcgZGF0YVxuICAgIHRyeSB7XG4gICAgICBkYXRhRm9yRXZlbnQgPSBuZXcgVGV4dERlY29kZXIoJ3V0Zi04JywgeyBmYXRhbDogdHJ1ZSB9KS5kZWNvZGUoZGF0YSlcbiAgICB9IGNhdGNoIHtcbiAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnUmVjZWl2ZWQgaW52YWxpZCBVVEYtOCBpbiB0ZXh0IGZyYW1lLicpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gb3Bjb2Rlcy5CSU5BUlkpIHtcbiAgICBpZiAod3Nba0JpbmFyeVR5cGVdID09PSAnYmxvYicpIHtcbiAgICAgIC8vIC0+IHR5cGUgaW5kaWNhdGVzIHRoYXQgdGhlIGRhdGEgaXMgQmluYXJ5IGFuZCBiaW5hcnkgdHlwZSBpcyBcImJsb2JcIlxuICAgICAgLy8gICAgICBhIG5ldyBCbG9iIG9iamVjdCwgY3JlYXRlZCBpbiB0aGUgcmVsZXZhbnQgUmVhbG0gb2YgdGhlIFdlYlNvY2tldFxuICAgICAgLy8gICAgICBvYmplY3QsIHRoYXQgcmVwcmVzZW50cyBkYXRhIGFzIGl0cyByYXcgZGF0YVxuICAgICAgZGF0YUZvckV2ZW50ID0gbmV3IEJsb2IoW2RhdGFdKVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAtPiB0eXBlIGluZGljYXRlcyB0aGF0IHRoZSBkYXRhIGlzIEJpbmFyeSBhbmQgYmluYXJ5IHR5cGUgaXMgXCJhcnJheWJ1ZmZlclwiXG4gICAgICAvLyAgICAgIGEgbmV3IEFycmF5QnVmZmVyIG9iamVjdCwgY3JlYXRlZCBpbiB0aGUgcmVsZXZhbnQgUmVhbG0gb2YgdGhlXG4gICAgICAvLyAgICAgIFdlYlNvY2tldCBvYmplY3QsIHdob3NlIGNvbnRlbnRzIGFyZSBkYXRhXG4gICAgICBkYXRhRm9yRXZlbnQgPSBuZXcgVWludDhBcnJheShkYXRhKS5idWZmZXJcbiAgICB9XG4gIH1cblxuICAvLyAzLiBGaXJlIGFuIGV2ZW50IG5hbWVkIG1lc3NhZ2UgYXQgdGhlIFdlYlNvY2tldCBvYmplY3QsIHVzaW5nIE1lc3NhZ2VFdmVudCxcbiAgLy8gICAgd2l0aCB0aGUgb3JpZ2luIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgc2VyaWFsaXphdGlvbiBvZiB0aGUgV2ViU29ja2V0XG4gIC8vICAgIG9iamVjdFx1MjAxOXMgdXJsJ3Mgb3JpZ2luLCBhbmQgdGhlIGRhdGEgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIGRhdGFGb3JFdmVudC5cbiAgZmlyZUV2ZW50KCdtZXNzYWdlJywgd3MsIE1lc3NhZ2VFdmVudCwge1xuICAgIG9yaWdpbjogd3Nba1dlYlNvY2tldFVSTF0ub3JpZ2luLFxuICAgIGRhdGE6IGRhdGFGb3JFdmVudFxuICB9KVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM2NDU1XG4gKiBAc2VlIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjMjYxNlxuICogQHNlZSBodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD0zOTg0MDdcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcm90b2NvbFxuICovXG5mdW5jdGlvbiBpc1ZhbGlkU3VicHJvdG9jb2wgKHByb3RvY29sKSB7XG4gIC8vIElmIHByZXNlbnQsIHRoaXMgdmFsdWUgaW5kaWNhdGVzIG9uZVxuICAvLyBvciBtb3JlIGNvbW1hLXNlcGFyYXRlZCBzdWJwcm90b2NvbCB0aGUgY2xpZW50IHdpc2hlcyB0byBzcGVhayxcbiAgLy8gb3JkZXJlZCBieSBwcmVmZXJlbmNlLiAgVGhlIGVsZW1lbnRzIHRoYXQgY29tcHJpc2UgdGhpcyB2YWx1ZVxuICAvLyBNVVNUIGJlIG5vbi1lbXB0eSBzdHJpbmdzIHdpdGggY2hhcmFjdGVycyBpbiB0aGUgcmFuZ2UgVSswMDIxIHRvXG4gIC8vIFUrMDA3RSBub3QgaW5jbHVkaW5nIHNlcGFyYXRvciBjaGFyYWN0ZXJzIGFzIGRlZmluZWQgaW5cbiAgLy8gW1JGQzI2MTZdIGFuZCBNVVNUIGFsbCBiZSB1bmlxdWUgc3RyaW5ncy5cbiAgaWYgKHByb3RvY29sLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgZm9yIChjb25zdCBjaGFyIG9mIHByb3RvY29sKSB7XG4gICAgY29uc3QgY29kZSA9IGNoYXIuY2hhckNvZGVBdCgwKVxuXG4gICAgaWYgKFxuICAgICAgY29kZSA8IDB4MjEgfHxcbiAgICAgIGNvZGUgPiAweDdFIHx8XG4gICAgICBjaGFyID09PSAnKCcgfHxcbiAgICAgIGNoYXIgPT09ICcpJyB8fFxuICAgICAgY2hhciA9PT0gJzwnIHx8XG4gICAgICBjaGFyID09PSAnPicgfHxcbiAgICAgIGNoYXIgPT09ICdAJyB8fFxuICAgICAgY2hhciA9PT0gJywnIHx8XG4gICAgICBjaGFyID09PSAnOycgfHxcbiAgICAgIGNoYXIgPT09ICc6JyB8fFxuICAgICAgY2hhciA9PT0gJ1xcXFwnIHx8XG4gICAgICBjaGFyID09PSAnXCInIHx8XG4gICAgICBjaGFyID09PSAnLycgfHxcbiAgICAgIGNoYXIgPT09ICdbJyB8fFxuICAgICAgY2hhciA9PT0gJ10nIHx8XG4gICAgICBjaGFyID09PSAnPycgfHxcbiAgICAgIGNoYXIgPT09ICc9JyB8fFxuICAgICAgY2hhciA9PT0gJ3snIHx8XG4gICAgICBjaGFyID09PSAnfScgfHxcbiAgICAgIGNvZGUgPT09IDMyIHx8IC8vIFNQXG4gICAgICBjb2RlID09PSA5IC8vIEhUXG4gICAgKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM2NDU1I3NlY3Rpb24tNy00XG4gKiBAcGFyYW0ge251bWJlcn0gY29kZVxuICovXG5mdW5jdGlvbiBpc1ZhbGlkU3RhdHVzQ29kZSAoY29kZSkge1xuICBpZiAoY29kZSA+PSAxMDAwICYmIGNvZGUgPCAxMDE1KSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGNvZGUgIT09IDEwMDQgJiYgLy8gcmVzZXJ2ZWRcbiAgICAgIGNvZGUgIT09IDEwMDUgJiYgLy8gXCJNVVNUIE5PVCBiZSBzZXQgYXMgYSBzdGF0dXMgY29kZVwiXG4gICAgICBjb2RlICE9PSAxMDA2IC8vIFwiTVVTVCBOT1QgYmUgc2V0IGFzIGEgc3RhdHVzIGNvZGVcIlxuICAgIClcbiAgfVxuXG4gIHJldHVybiBjb2RlID49IDMwMDAgJiYgY29kZSA8PSA0OTk5XG59XG5cbi8qKlxuICogQHBhcmFtIHtpbXBvcnQoJy4vd2Vic29ja2V0JykuV2ViU29ja2V0fSB3c1xuICogQHBhcmFtIHtzdHJpbmd8dW5kZWZpbmVkfSByZWFzb25cbiAqL1xuZnVuY3Rpb24gZmFpbFdlYnNvY2tldENvbm5lY3Rpb24gKHdzLCByZWFzb24pIHtcbiAgY29uc3QgeyBba0NvbnRyb2xsZXJdOiBjb250cm9sbGVyLCBba1Jlc3BvbnNlXTogcmVzcG9uc2UgfSA9IHdzXG5cbiAgY29udHJvbGxlci5hYm9ydCgpXG5cbiAgaWYgKHJlc3BvbnNlPy5zb2NrZXQgJiYgIXJlc3BvbnNlLnNvY2tldC5kZXN0cm95ZWQpIHtcbiAgICByZXNwb25zZS5zb2NrZXQuZGVzdHJveSgpXG4gIH1cblxuICBpZiAocmVhc29uKSB7XG4gICAgZmlyZUV2ZW50KCdlcnJvcicsIHdzLCBFcnJvckV2ZW50LCB7XG4gICAgICBlcnJvcjogbmV3IEVycm9yKHJlYXNvbilcbiAgICB9KVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBpc0VzdGFibGlzaGVkLFxuICBpc0Nsb3NpbmcsXG4gIGlzQ2xvc2VkLFxuICBmaXJlRXZlbnQsXG4gIGlzVmFsaWRTdWJwcm90b2NvbCxcbiAgaXNWYWxpZFN0YXR1c0NvZGUsXG4gIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uLFxuICB3ZWJzb2NrZXRNZXNzYWdlUmVjZWl2ZWRcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgZGlhZ25vc3RpY3NDaGFubmVsID0gcmVxdWlyZSgnZGlhZ25vc3RpY3NfY2hhbm5lbCcpXG5jb25zdCB7IHVpZCwgc3RhdGVzIH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5jb25zdCB7XG4gIGtSZWFkeVN0YXRlLFxuICBrU2VudENsb3NlLFxuICBrQnl0ZVBhcnNlcixcbiAga1JlY2VpdmVkQ2xvc2Vcbn0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBmaXJlRXZlbnQsIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uIH0gPSByZXF1aXJlKCcuL3V0aWwnKVxuY29uc3QgeyBDbG9zZUV2ZW50IH0gPSByZXF1aXJlKCcuL2V2ZW50cycpXG5jb25zdCB7IG1ha2VSZXF1ZXN0IH0gPSByZXF1aXJlKCcuLi9mZXRjaC9yZXF1ZXN0JylcbmNvbnN0IHsgZmV0Y2hpbmcgfSA9IHJlcXVpcmUoJy4uL2ZldGNoL2luZGV4JylcbmNvbnN0IHsgSGVhZGVycyB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvaGVhZGVycycpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5jb25zdCB7IGtIZWFkZXJzTGlzdCB9ID0gcmVxdWlyZSgnLi4vY29yZS9zeW1ib2xzJylcblxuY29uc3QgY2hhbm5lbHMgPSB7fVxuY2hhbm5lbHMub3BlbiA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6d2Vic29ja2V0Om9wZW4nKVxuY2hhbm5lbHMuY2xvc2UgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOndlYnNvY2tldDpjbG9zZScpXG5jaGFubmVscy5zb2NrZXRFcnJvciA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6d2Vic29ja2V0OnNvY2tldF9lcnJvcicpXG5cbi8qKiBAdHlwZSB7aW1wb3J0KCdjcnlwdG8nKX0gKi9cbmxldCBjcnlwdG9cbnRyeSB7XG4gIGNyeXB0byA9IHJlcXVpcmUoJ2NyeXB0bycpXG59IGNhdGNoIHtcblxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC13ZWJzb2NrZXQtZXN0YWJsaXNoXG4gKiBAcGFyYW0ge1VSTH0gdXJsXG4gKiBAcGFyYW0ge3N0cmluZ3xzdHJpbmdbXX0gcHJvdG9jb2xzXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi93ZWJzb2NrZXQnKS5XZWJTb2NrZXR9IHdzXG4gKiBAcGFyYW0geyhyZXNwb25zZTogYW55KSA9PiB2b2lkfSBvbkVzdGFibGlzaFxuICogQHBhcmFtIHtQYXJ0aWFsPGltcG9ydCgnLi4vLi4vdHlwZXMvd2Vic29ja2V0JykuV2ViU29ja2V0SW5pdD59IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gZXN0YWJsaXNoV2ViU29ja2V0Q29ubmVjdGlvbiAodXJsLCBwcm90b2NvbHMsIHdzLCBvbkVzdGFibGlzaCwgb3B0aW9ucykge1xuICAvLyAxLiBMZXQgcmVxdWVzdFVSTCBiZSBhIGNvcHkgb2YgdXJsLCB3aXRoIGl0cyBzY2hlbWUgc2V0IHRvIFwiaHR0cFwiLCBpZiB1cmxcdTIwMTlzXG4gIC8vICAgIHNjaGVtZSBpcyBcIndzXCIsIGFuZCB0byBcImh0dHBzXCIgb3RoZXJ3aXNlLlxuICBjb25zdCByZXF1ZXN0VVJMID0gdXJsXG5cbiAgcmVxdWVzdFVSTC5wcm90b2NvbCA9IHVybC5wcm90b2NvbCA9PT0gJ3dzOicgPyAnaHR0cDonIDogJ2h0dHBzOidcblxuICAvLyAyLiBMZXQgcmVxdWVzdCBiZSBhIG5ldyByZXF1ZXN0LCB3aG9zZSBVUkwgaXMgcmVxdWVzdFVSTCwgY2xpZW50IGlzIGNsaWVudCxcbiAgLy8gICAgc2VydmljZS13b3JrZXJzIG1vZGUgaXMgXCJub25lXCIsIHJlZmVycmVyIGlzIFwibm8tcmVmZXJyZXJcIiwgbW9kZSBpc1xuICAvLyAgICBcIndlYnNvY2tldFwiLCBjcmVkZW50aWFscyBtb2RlIGlzIFwiaW5jbHVkZVwiLCBjYWNoZSBtb2RlIGlzIFwibm8tc3RvcmVcIiAsXG4gIC8vICAgIGFuZCByZWRpcmVjdCBtb2RlIGlzIFwiZXJyb3JcIi5cbiAgY29uc3QgcmVxdWVzdCA9IG1ha2VSZXF1ZXN0KHtcbiAgICB1cmxMaXN0OiBbcmVxdWVzdFVSTF0sXG4gICAgc2VydmljZVdvcmtlcnM6ICdub25lJyxcbiAgICByZWZlcnJlcjogJ25vLXJlZmVycmVyJyxcbiAgICBtb2RlOiAnd2Vic29ja2V0JyxcbiAgICBjcmVkZW50aWFsczogJ2luY2x1ZGUnLFxuICAgIGNhY2hlOiAnbm8tc3RvcmUnLFxuICAgIHJlZGlyZWN0OiAnZXJyb3InXG4gIH0pXG5cbiAgLy8gTm90ZTogdW5kaWNpIGV4dGVuc2lvbiwgYWxsb3cgc2V0dGluZyBjdXN0b20gaGVhZGVycy5cbiAgaWYgKG9wdGlvbnMuaGVhZGVycykge1xuICAgIGNvbnN0IGhlYWRlcnNMaXN0ID0gbmV3IEhlYWRlcnMob3B0aW9ucy5oZWFkZXJzKVtrSGVhZGVyc0xpc3RdXG5cbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0ID0gaGVhZGVyc0xpc3RcbiAgfVxuXG4gIC8vIDMuIEFwcGVuZCAoYFVwZ3JhZGVgLCBgd2Vic29ja2V0YCkgdG8gcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gIC8vIDQuIEFwcGVuZCAoYENvbm5lY3Rpb25gLCBgVXBncmFkZWApIHRvIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAvLyBOb3RlOiBib3RoIG9mIHRoZXNlIGFyZSBoYW5kbGVkIGJ5IHVuZGljaSBjdXJyZW50bHkuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2Jsb2IvNjhjMjY5YzQxNDRjNDQ2ZjNmMTIyMDk1MTMzOGRhZWY0YTZiNWVjNC9saWIvY2xpZW50LmpzI0wxMzk3XG5cbiAgLy8gNS4gTGV0IGtleVZhbHVlIGJlIGEgbm9uY2UgY29uc2lzdGluZyBvZiBhIHJhbmRvbWx5IHNlbGVjdGVkXG4gIC8vICAgIDE2LWJ5dGUgdmFsdWUgdGhhdCBoYXMgYmVlbiBmb3JnaXZpbmctYmFzZTY0LWVuY29kZWQgYW5kXG4gIC8vICAgIGlzb21vcnBoaWMgZW5jb2RlZC5cbiAgY29uc3Qga2V5VmFsdWUgPSBjcnlwdG8ucmFuZG9tQnl0ZXMoMTYpLnRvU3RyaW5nKCdiYXNlNjQnKVxuXG4gIC8vIDYuIEFwcGVuZCAoYFNlYy1XZWJTb2NrZXQtS2V5YCwga2V5VmFsdWUpIHRvIHJlcXVlc3RcdTIwMTlzXG4gIC8vICAgIGhlYWRlciBsaXN0LlxuICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnc2VjLXdlYnNvY2tldC1rZXknLCBrZXlWYWx1ZSlcblxuICAvLyA3LiBBcHBlbmQgKGBTZWMtV2ViU29ja2V0LVZlcnNpb25gLCBgMTNgKSB0byByZXF1ZXN0XHUyMDE5c1xuICAvLyAgICBoZWFkZXIgbGlzdC5cbiAgcmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ3NlYy13ZWJzb2NrZXQtdmVyc2lvbicsICcxMycpXG5cbiAgLy8gOC4gRm9yIGVhY2ggcHJvdG9jb2wgaW4gcHJvdG9jb2xzLCBjb21iaW5lXG4gIC8vICAgIChgU2VjLVdlYlNvY2tldC1Qcm90b2NvbGAsIHByb3RvY29sKSBpbiByZXF1ZXN0XHUyMDE5cyBoZWFkZXJcbiAgLy8gICAgbGlzdC5cbiAgZm9yIChjb25zdCBwcm90b2NvbCBvZiBwcm90b2NvbHMpIHtcbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnc2VjLXdlYnNvY2tldC1wcm90b2NvbCcsIHByb3RvY29sKVxuICB9XG5cbiAgLy8gOS4gTGV0IHBlcm1lc3NhZ2VEZWZsYXRlIGJlIGEgdXNlci1hZ2VudCBkZWZpbmVkXG4gIC8vICAgIFwicGVybWVzc2FnZS1kZWZsYXRlXCIgZXh0ZW5zaW9uIGhlYWRlciB2YWx1ZS5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL21vemlsbGEvZ2Vja28tZGV2L2Jsb2IvY2U3ODIzNGY1ZTY1M2E1ZDM5MTY4MTNmZjk5MGYwNTM1MTAyMjdiYy9uZXR3ZXJrL3Byb3RvY29sL3dlYnNvY2tldC9XZWJTb2NrZXRDaGFubmVsLmNwcCNMMjY3M1xuICAvLyBUT0RPOiBlbmFibGUgb25jZSBwZXJtZXNzYWdlLWRlZmxhdGUgaXMgc3VwcG9ydGVkXG4gIGNvbnN0IHBlcm1lc3NhZ2VEZWZsYXRlID0gJycgLy8gJ3Blcm1lc3NhZ2UtZGVmbGF0ZTsgMTUnXG5cbiAgLy8gMTAuIEFwcGVuZCAoYFNlYy1XZWJTb2NrZXQtRXh0ZW5zaW9uc2AsIHBlcm1lc3NhZ2VEZWZsYXRlKSB0b1xuICAvLyAgICAgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gIC8vIHJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdzZWMtd2Vic29ja2V0LWV4dGVuc2lvbnMnLCBwZXJtZXNzYWdlRGVmbGF0ZSlcblxuICAvLyAxMS4gRmV0Y2ggcmVxdWVzdCB3aXRoIHVzZVBhcmFsbGVsUXVldWUgc2V0IHRvIHRydWUsIGFuZFxuICAvLyAgICAgcHJvY2Vzc1Jlc3BvbnNlIGdpdmVuIHJlc3BvbnNlIGJlaW5nIHRoZXNlIHN0ZXBzOlxuICBjb25zdCBjb250cm9sbGVyID0gZmV0Y2hpbmcoe1xuICAgIHJlcXVlc3QsXG4gICAgdXNlUGFyYWxsZWxRdWV1ZTogdHJ1ZSxcbiAgICBkaXNwYXRjaGVyOiBvcHRpb25zLmRpc3BhdGNoZXIgPz8gZ2V0R2xvYmFsRGlzcGF0Y2hlcigpLFxuICAgIHByb2Nlc3NSZXNwb25zZSAocmVzcG9uc2UpIHtcbiAgICAgIC8vIDEuIElmIHJlc3BvbnNlIGlzIGEgbmV0d29yayBlcnJvciBvciBpdHMgc3RhdHVzIGlzIG5vdCAxMDEsXG4gICAgICAvLyAgICBmYWlsIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi5cbiAgICAgIGlmIChyZXNwb25zZS50eXBlID09PSAnZXJyb3InIHx8IHJlc3BvbnNlLnN0YXR1cyAhPT0gMTAxKSB7XG4gICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnUmVjZWl2ZWQgbmV0d29yayBlcnJvciBvciBub24tMTAxIHN0YXR1cyBjb2RlLicpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAyLiBJZiBwcm90b2NvbHMgaXMgbm90IHRoZSBlbXB0eSBsaXN0IGFuZCBleHRyYWN0aW5nIGhlYWRlclxuICAgICAgLy8gICAgbGlzdCB2YWx1ZXMgZ2l2ZW4gYFNlYy1XZWJTb2NrZXQtUHJvdG9jb2xgIGFuZCByZXNwb25zZVx1MjAxOXNcbiAgICAgIC8vICAgIGhlYWRlciBsaXN0IHJlc3VsdHMgaW4gbnVsbCwgZmFpbHVyZSwgb3IgdGhlIGVtcHR5IGJ5dGVcbiAgICAgIC8vICAgIHNlcXVlbmNlLCB0aGVuIGZhaWwgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuICAgICAgaWYgKHByb3RvY29scy5sZW5ndGggIT09IDAgJiYgIXJlc3BvbnNlLmhlYWRlcnNMaXN0LmdldCgnU2VjLVdlYlNvY2tldC1Qcm90b2NvbCcpKSB7XG4gICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnU2VydmVyIGRpZCBub3QgcmVzcG9uZCB3aXRoIHNlbnQgcHJvdG9jb2xzLicpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAzLiBGb2xsb3cgdGhlIHJlcXVpcmVtZW50cyBzdGF0ZWQgc3RlcCAyIHRvIHN0ZXAgNiwgaW5jbHVzaXZlLFxuICAgICAgLy8gICAgb2YgdGhlIGxhc3Qgc2V0IG9mIHN0ZXBzIGluIHNlY3Rpb24gNC4xIG9mIFRoZSBXZWJTb2NrZXRcbiAgICAgIC8vICAgIFByb3RvY29sIHRvIHZhbGlkYXRlIHJlc3BvbnNlLiBUaGlzIGVpdGhlciByZXN1bHRzIGluIGZhaWxcbiAgICAgIC8vICAgIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBvciB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gaXNcbiAgICAgIC8vICAgIGVzdGFibGlzaGVkLlxuXG4gICAgICAvLyAyLiBJZiB0aGUgcmVzcG9uc2UgbGFja3MgYW4gfFVwZ3JhZGV8IGhlYWRlciBmaWVsZCBvciB0aGUgfFVwZ3JhZGV8XG4gICAgICAvLyAgICBoZWFkZXIgZmllbGQgY29udGFpbnMgYSB2YWx1ZSB0aGF0IGlzIG5vdCBhbiBBU0NJSSBjYXNlLVxuICAgICAgLy8gICAgaW5zZW5zaXRpdmUgbWF0Y2ggZm9yIHRoZSB2YWx1ZSBcIndlYnNvY2tldFwiLCB0aGUgY2xpZW50IE1VU1RcbiAgICAgIC8vICAgIF9GYWlsIHRoZSBXZWJTb2NrZXQgQ29ubmVjdGlvbl8uXG4gICAgICBpZiAocmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdVcGdyYWRlJyk/LnRvTG93ZXJDYXNlKCkgIT09ICd3ZWJzb2NrZXQnKSB7XG4gICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnU2VydmVyIGRpZCBub3Qgc2V0IFVwZ3JhZGUgaGVhZGVyIHRvIFwid2Vic29ja2V0XCIuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIElmIHRoZSByZXNwb25zZSBsYWNrcyBhIHxDb25uZWN0aW9ufCBoZWFkZXIgZmllbGQgb3IgdGhlXG4gICAgICAvLyAgICB8Q29ubmVjdGlvbnwgaGVhZGVyIGZpZWxkIGRvZXNuJ3QgY29udGFpbiBhIHRva2VuIHRoYXQgaXMgYW5cbiAgICAgIC8vICAgIEFTQ0lJIGNhc2UtaW5zZW5zaXRpdmUgbWF0Y2ggZm9yIHRoZSB2YWx1ZSBcIlVwZ3JhZGVcIiwgdGhlIGNsaWVudFxuICAgICAgLy8gICAgTVVTVCBfRmFpbCB0aGUgV2ViU29ja2V0IENvbm5lY3Rpb25fLlxuICAgICAgaWYgKHJlc3BvbnNlLmhlYWRlcnNMaXN0LmdldCgnQ29ubmVjdGlvbicpPy50b0xvd2VyQ2FzZSgpICE9PSAndXBncmFkZScpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdTZXJ2ZXIgZGlkIG5vdCBzZXQgQ29ubmVjdGlvbiBoZWFkZXIgdG8gXCJ1cGdyYWRlXCIuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDQuIElmIHRoZSByZXNwb25zZSBsYWNrcyBhIHxTZWMtV2ViU29ja2V0LUFjY2VwdHwgaGVhZGVyIGZpZWxkIG9yXG4gICAgICAvLyAgICB0aGUgfFNlYy1XZWJTb2NrZXQtQWNjZXB0fCBjb250YWlucyBhIHZhbHVlIG90aGVyIHRoYW4gdGhlXG4gICAgICAvLyAgICBiYXNlNjQtZW5jb2RlZCBTSEEtMSBvZiB0aGUgY29uY2F0ZW5hdGlvbiBvZiB0aGUgfFNlYy1XZWJTb2NrZXQtXG4gICAgICAvLyAgICBLZXl8IChhcyBhIHN0cmluZywgbm90IGJhc2U2NC1kZWNvZGVkKSB3aXRoIHRoZSBzdHJpbmcgXCIyNThFQUZBNS1cbiAgICAgIC8vICAgIEU5MTQtNDdEQS05NUNBLUM1QUIwREM4NUIxMVwiIGJ1dCBpZ25vcmluZyBhbnkgbGVhZGluZyBhbmRcbiAgICAgIC8vICAgIHRyYWlsaW5nIHdoaXRlc3BhY2UsIHRoZSBjbGllbnQgTVVTVCBfRmFpbCB0aGUgV2ViU29ja2V0XG4gICAgICAvLyAgICBDb25uZWN0aW9uXy5cbiAgICAgIGNvbnN0IHNlY1dTQWNjZXB0ID0gcmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdTZWMtV2ViU29ja2V0LUFjY2VwdCcpXG4gICAgICBjb25zdCBkaWdlc3QgPSBjcnlwdG8uY3JlYXRlSGFzaCgnc2hhMScpLnVwZGF0ZShrZXlWYWx1ZSArIHVpZCkuZGlnZXN0KCdiYXNlNjQnKVxuICAgICAgaWYgKHNlY1dTQWNjZXB0ICE9PSBkaWdlc3QpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdJbmNvcnJlY3QgaGFzaCByZWNlaXZlZCBpbiBTZWMtV2ViU29ja2V0LUFjY2VwdCBoZWFkZXIuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDUuIElmIHRoZSByZXNwb25zZSBpbmNsdWRlcyBhIHxTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnN8IGhlYWRlclxuICAgICAgLy8gICAgZmllbGQgYW5kIHRoaXMgaGVhZGVyIGZpZWxkIGluZGljYXRlcyB0aGUgdXNlIG9mIGFuIGV4dGVuc2lvblxuICAgICAgLy8gICAgdGhhdCB3YXMgbm90IHByZXNlbnQgaW4gdGhlIGNsaWVudCdzIGhhbmRzaGFrZSAodGhlIHNlcnZlciBoYXNcbiAgICAgIC8vICAgIGluZGljYXRlZCBhbiBleHRlbnNpb24gbm90IHJlcXVlc3RlZCBieSB0aGUgY2xpZW50KSwgdGhlIGNsaWVudFxuICAgICAgLy8gICAgTVVTVCBfRmFpbCB0aGUgV2ViU29ja2V0IENvbm5lY3Rpb25fLiAgKFRoZSBwYXJzaW5nIG9mIHRoaXNcbiAgICAgIC8vICAgIGhlYWRlciBmaWVsZCB0byBkZXRlcm1pbmUgd2hpY2ggZXh0ZW5zaW9ucyBhcmUgcmVxdWVzdGVkIGlzXG4gICAgICAvLyAgICBkaXNjdXNzZWQgaW4gU2VjdGlvbiA5LjEuKVxuICAgICAgY29uc3Qgc2VjRXh0ZW5zaW9uID0gcmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnMnKVxuXG4gICAgICBpZiAoc2VjRXh0ZW5zaW9uICE9PSBudWxsICYmIHNlY0V4dGVuc2lvbiAhPT0gcGVybWVzc2FnZURlZmxhdGUpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdSZWNlaXZlZCBkaWZmZXJlbnQgcGVybWVzc2FnZS1kZWZsYXRlIHRoYW4gdGhlIG9uZSBzZXQuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDYuIElmIHRoZSByZXNwb25zZSBpbmNsdWRlcyBhIHxTZWMtV2ViU29ja2V0LVByb3RvY29sfCBoZWFkZXIgZmllbGRcbiAgICAgIC8vICAgIGFuZCB0aGlzIGhlYWRlciBmaWVsZCBpbmRpY2F0ZXMgdGhlIHVzZSBvZiBhIHN1YnByb3RvY29sIHRoYXQgd2FzXG4gICAgICAvLyAgICBub3QgcHJlc2VudCBpbiB0aGUgY2xpZW50J3MgaGFuZHNoYWtlICh0aGUgc2VydmVyIGhhcyBpbmRpY2F0ZWQgYVxuICAgICAgLy8gICAgc3VicHJvdG9jb2wgbm90IHJlcXVlc3RlZCBieSB0aGUgY2xpZW50KSwgdGhlIGNsaWVudCBNVVNUIF9GYWlsXG4gICAgICAvLyAgICB0aGUgV2ViU29ja2V0IENvbm5lY3Rpb25fLlxuICAgICAgY29uc3Qgc2VjUHJvdG9jb2wgPSByZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ1NlYy1XZWJTb2NrZXQtUHJvdG9jb2wnKVxuXG4gICAgICBpZiAoc2VjUHJvdG9jb2wgIT09IG51bGwgJiYgc2VjUHJvdG9jb2wgIT09IHJlcXVlc3QuaGVhZGVyc0xpc3QuZ2V0KCdTZWMtV2ViU29ja2V0LVByb3RvY29sJykpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdQcm90b2NvbCB3YXMgbm90IHNldCBpbiB0aGUgb3BlbmluZyBoYW5kc2hha2UuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHJlc3BvbnNlLnNvY2tldC5vbignZGF0YScsIG9uU29ja2V0RGF0YSlcbiAgICAgIHJlc3BvbnNlLnNvY2tldC5vbignY2xvc2UnLCBvblNvY2tldENsb3NlKVxuICAgICAgcmVzcG9uc2Uuc29ja2V0Lm9uKCdlcnJvcicsIG9uU29ja2V0RXJyb3IpXG5cbiAgICAgIGlmIChjaGFubmVscy5vcGVuLmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICAgIGNoYW5uZWxzLm9wZW4ucHVibGlzaCh7XG4gICAgICAgICAgYWRkcmVzczogcmVzcG9uc2Uuc29ja2V0LmFkZHJlc3MoKSxcbiAgICAgICAgICBwcm90b2NvbDogc2VjUHJvdG9jb2wsXG4gICAgICAgICAgZXh0ZW5zaW9uczogc2VjRXh0ZW5zaW9uXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIG9uRXN0YWJsaXNoKHJlc3BvbnNlKVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gY29udHJvbGxlclxufVxuXG4vKipcbiAqIEBwYXJhbSB7QnVmZmVyfSBjaHVua1xuICovXG5mdW5jdGlvbiBvblNvY2tldERhdGEgKGNodW5rKSB7XG4gIGlmICghdGhpcy53c1trQnl0ZVBhcnNlcl0ud3JpdGUoY2h1bmspKSB7XG4gICAgdGhpcy5wYXVzZSgpXG4gIH1cbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vd2Vic29ja2V0cy5zcGVjLndoYXR3Zy5vcmcvI2ZlZWRiYWNrLWZyb20tdGhlLXByb3RvY29sXG4gKiBAc2VlIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTcuMS40XG4gKi9cbmZ1bmN0aW9uIG9uU29ja2V0Q2xvc2UgKCkge1xuICBjb25zdCB7IHdzIH0gPSB0aGlzXG5cbiAgLy8gSWYgdGhlIFRDUCBjb25uZWN0aW9uIHdhcyBjbG9zZWQgYWZ0ZXIgdGhlXG4gIC8vIFdlYlNvY2tldCBjbG9zaW5nIGhhbmRzaGFrZSB3YXMgY29tcGxldGVkLCB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb25cbiAgLy8gaXMgc2FpZCB0byBoYXZlIGJlZW4gY2xvc2VkIF9jbGVhbmx5Xy5cbiAgY29uc3Qgd2FzQ2xlYW4gPSB3c1trU2VudENsb3NlXSAmJiB3c1trUmVjZWl2ZWRDbG9zZV1cblxuICBsZXQgY29kZSA9IDEwMDVcbiAgbGV0IHJlYXNvbiA9ICcnXG5cbiAgY29uc3QgcmVzdWx0ID0gd3Nba0J5dGVQYXJzZXJdLmNsb3NpbmdJbmZvXG5cbiAgaWYgKHJlc3VsdCkge1xuICAgIGNvZGUgPSByZXN1bHQuY29kZSA/PyAxMDA1XG4gICAgcmVhc29uID0gcmVzdWx0LnJlYXNvblxuICB9IGVsc2UgaWYgKCF3c1trU2VudENsb3NlXSkge1xuICAgIC8vIElmIF9UaGUgV2ViU29ja2V0XG4gICAgLy8gQ29ubmVjdGlvbiBpcyBDbG9zZWRfIGFuZCBubyBDbG9zZSBjb250cm9sIGZyYW1lIHdhcyByZWNlaXZlZCBieSB0aGVcbiAgICAvLyBlbmRwb2ludCAoc3VjaCBhcyBjb3VsZCBvY2N1ciBpZiB0aGUgdW5kZXJseWluZyB0cmFuc3BvcnQgY29ubmVjdGlvblxuICAgIC8vIGlzIGxvc3QpLCBfVGhlIFdlYlNvY2tldCBDb25uZWN0aW9uIENsb3NlIENvZGVfIGlzIGNvbnNpZGVyZWQgdG8gYmVcbiAgICAvLyAxMDA2LlxuICAgIGNvZGUgPSAxMDA2XG4gIH1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIHJlYWR5IHN0YXRlIHRvIENMT1NFRCAoMykuXG4gIHdzW2tSZWFkeVN0YXRlXSA9IHN0YXRlcy5DTE9TRURcblxuICAvLyAyLiBJZiB0aGUgdXNlciBhZ2VudCB3YXMgcmVxdWlyZWQgdG8gZmFpbCB0aGUgV2ViU29ja2V0XG4gIC8vICAgIGNvbm5lY3Rpb24sIG9yIGlmIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiB3YXMgY2xvc2VkXG4gIC8vICAgIGFmdGVyIGJlaW5nIGZsYWdnZWQgYXMgZnVsbCwgZmlyZSBhbiBldmVudCBuYW1lZCBlcnJvclxuICAvLyAgICBhdCB0aGUgV2ViU29ja2V0IG9iamVjdC5cbiAgLy8gVE9ET1xuXG4gIC8vIDMuIEZpcmUgYW4gZXZlbnQgbmFtZWQgY2xvc2UgYXQgdGhlIFdlYlNvY2tldCBvYmplY3QsXG4gIC8vICAgIHVzaW5nIENsb3NlRXZlbnQsIHdpdGggdGhlIHdhc0NsZWFuIGF0dHJpYnV0ZVxuICAvLyAgICBpbml0aWFsaXplZCB0byB0cnVlIGlmIHRoZSBjb25uZWN0aW9uIGNsb3NlZCBjbGVhbmx5XG4gIC8vICAgIGFuZCBmYWxzZSBvdGhlcndpc2UsIHRoZSBjb2RlIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0b1xuICAvLyAgICB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gY2xvc2UgY29kZSwgYW5kIHRoZSByZWFzb25cbiAgLy8gICAgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSByZXN1bHQgb2YgYXBwbHlpbmcgVVRGLThcbiAgLy8gICAgZGVjb2RlIHdpdGhvdXQgQk9NIHRvIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBjbG9zZVxuICAvLyAgICByZWFzb24uXG4gIGZpcmVFdmVudCgnY2xvc2UnLCB3cywgQ2xvc2VFdmVudCwge1xuICAgIHdhc0NsZWFuLCBjb2RlLCByZWFzb25cbiAgfSlcblxuICBpZiAoY2hhbm5lbHMuY2xvc2UuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICBjaGFubmVscy5jbG9zZS5wdWJsaXNoKHtcbiAgICAgIHdlYnNvY2tldDogd3MsXG4gICAgICBjb2RlLFxuICAgICAgcmVhc29uXG4gICAgfSlcbiAgfVxufVxuXG5mdW5jdGlvbiBvblNvY2tldEVycm9yIChlcnJvcikge1xuICBjb25zdCB7IHdzIH0gPSB0aGlzXG5cbiAgd3Nba1JlYWR5U3RhdGVdID0gc3RhdGVzLkNMT1NJTkdcblxuICBpZiAoY2hhbm5lbHMuc29ja2V0RXJyb3IuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICBjaGFubmVscy5zb2NrZXRFcnJvci5wdWJsaXNoKGVycm9yKVxuICB9XG5cbiAgdGhpcy5kZXN0cm95KClcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGVzdGFibGlzaFdlYlNvY2tldENvbm5lY3Rpb25cbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBtYXhVbnNpZ25lZDE2Qml0IH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5cbi8qKiBAdHlwZSB7aW1wb3J0KCdjcnlwdG8nKX0gKi9cbmxldCBjcnlwdG9cbnRyeSB7XG4gIGNyeXB0byA9IHJlcXVpcmUoJ2NyeXB0bycpXG59IGNhdGNoIHtcblxufVxuXG5jbGFzcyBXZWJzb2NrZXRGcmFtZVNlbmQge1xuICAvKipcbiAgICogQHBhcmFtIHtCdWZmZXJ8dW5kZWZpbmVkfSBkYXRhXG4gICAqL1xuICBjb25zdHJ1Y3RvciAoZGF0YSkge1xuICAgIHRoaXMuZnJhbWVEYXRhID0gZGF0YVxuICAgIHRoaXMubWFza0tleSA9IGNyeXB0by5yYW5kb21CeXRlcyg0KVxuICB9XG5cbiAgY3JlYXRlRnJhbWUgKG9wY29kZSkge1xuICAgIGNvbnN0IGJvZHlMZW5ndGggPSB0aGlzLmZyYW1lRGF0YT8uYnl0ZUxlbmd0aCA/PyAwXG5cbiAgICAvKiogQHR5cGUge251bWJlcn0gKi9cbiAgICBsZXQgcGF5bG9hZExlbmd0aCA9IGJvZHlMZW5ndGggLy8gMC0xMjVcbiAgICBsZXQgb2Zmc2V0ID0gNlxuXG4gICAgaWYgKGJvZHlMZW5ndGggPiBtYXhVbnNpZ25lZDE2Qml0KSB7XG4gICAgICBvZmZzZXQgKz0gOCAvLyBwYXlsb2FkIGxlbmd0aCBpcyBuZXh0IDggYnl0ZXNcbiAgICAgIHBheWxvYWRMZW5ndGggPSAxMjdcbiAgICB9IGVsc2UgaWYgKGJvZHlMZW5ndGggPiAxMjUpIHtcbiAgICAgIG9mZnNldCArPSAyIC8vIHBheWxvYWQgbGVuZ3RoIGlzIG5leHQgMiBieXRlc1xuICAgICAgcGF5bG9hZExlbmd0aCA9IDEyNlxuICAgIH1cblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvY1Vuc2FmZShib2R5TGVuZ3RoICsgb2Zmc2V0KVxuXG4gICAgLy8gQ2xlYXIgZmlyc3QgMiBieXRlcywgZXZlcnl0aGluZyBlbHNlIGlzIG92ZXJ3cml0dGVuXG4gICAgYnVmZmVyWzBdID0gYnVmZmVyWzFdID0gMFxuICAgIGJ1ZmZlclswXSB8PSAweDgwIC8vIEZJTlxuICAgIGJ1ZmZlclswXSA9IChidWZmZXJbMF0gJiAweEYwKSArIG9wY29kZSAvLyBvcGNvZGVcblxuICAgIC8qISB3cy4gTUlUIExpY2Vuc2UuIEVpbmFyIE90dG8gU3Rhbmd2aWsgPGVpbmFyb3NAZ21haWwuY29tPiAqL1xuICAgIGJ1ZmZlcltvZmZzZXQgLSA0XSA9IHRoaXMubWFza0tleVswXVxuICAgIGJ1ZmZlcltvZmZzZXQgLSAzXSA9IHRoaXMubWFza0tleVsxXVxuICAgIGJ1ZmZlcltvZmZzZXQgLSAyXSA9IHRoaXMubWFza0tleVsyXVxuICAgIGJ1ZmZlcltvZmZzZXQgLSAxXSA9IHRoaXMubWFza0tleVszXVxuXG4gICAgYnVmZmVyWzFdID0gcGF5bG9hZExlbmd0aFxuXG4gICAgaWYgKHBheWxvYWRMZW5ndGggPT09IDEyNikge1xuICAgICAgYnVmZmVyLndyaXRlVUludDE2QkUoYm9keUxlbmd0aCwgMilcbiAgICB9IGVsc2UgaWYgKHBheWxvYWRMZW5ndGggPT09IDEyNykge1xuICAgICAgLy8gQ2xlYXIgZXh0ZW5kZWQgcGF5bG9hZCBsZW5ndGhcbiAgICAgIGJ1ZmZlclsyXSA9IGJ1ZmZlclszXSA9IDBcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnRCRShib2R5TGVuZ3RoLCA0LCA2KVxuICAgIH1cblxuICAgIGJ1ZmZlclsxXSB8PSAweDgwIC8vIE1BU0tcblxuICAgIC8vIG1hc2sgYm9keVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYm9keUxlbmd0aDsgaSsrKSB7XG4gICAgICBidWZmZXJbb2Zmc2V0ICsgaV0gPSB0aGlzLmZyYW1lRGF0YVtpXSBeIHRoaXMubWFza0tleVtpICUgNF1cbiAgICB9XG5cbiAgICByZXR1cm4gYnVmZmVyXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIFdlYnNvY2tldEZyYW1lU2VuZFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IFdyaXRhYmxlIH0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgZGlhZ25vc3RpY3NDaGFubmVsID0gcmVxdWlyZSgnZGlhZ25vc3RpY3NfY2hhbm5lbCcpXG5jb25zdCB7IHBhcnNlclN0YXRlcywgb3Bjb2Rlcywgc3RhdGVzLCBlbXB0eUJ1ZmZlciB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKVxuY29uc3QgeyBrUmVhZHlTdGF0ZSwga1NlbnRDbG9zZSwga1Jlc3BvbnNlLCBrUmVjZWl2ZWRDbG9zZSB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgaXNWYWxpZFN0YXR1c0NvZGUsIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uLCB3ZWJzb2NrZXRNZXNzYWdlUmVjZWl2ZWQgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IFdlYnNvY2tldEZyYW1lU2VuZCB9ID0gcmVxdWlyZSgnLi9mcmFtZScpXG5cbi8vIFRoaXMgY29kZSB3YXMgaW5mbHVlbmNlZCBieSB3cyByZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4vLyBDb3B5cmlnaHQgKGMpIDIwMTEgRWluYXIgT3R0byBTdGFuZ3ZpayA8ZWluYXJvc0BnbWFpbC5jb20+XG4vLyBDb3B5cmlnaHQgKGMpIDIwMTMgQXJub3V0IEthemVtaWVyIGFuZCBjb250cmlidXRvcnNcbi8vIENvcHlyaWdodCAoYykgMjAxNiBMdWlnaSBQaW5jYSBhbmQgY29udHJpYnV0b3JzXG5cbmNvbnN0IGNoYW5uZWxzID0ge31cbmNoYW5uZWxzLnBpbmcgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOndlYnNvY2tldDpwaW5nJylcbmNoYW5uZWxzLnBvbmcgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOndlYnNvY2tldDpwb25nJylcblxuY2xhc3MgQnl0ZVBhcnNlciBleHRlbmRzIFdyaXRhYmxlIHtcbiAgI2J1ZmZlcnMgPSBbXVxuICAjYnl0ZU9mZnNldCA9IDBcblxuICAjc3RhdGUgPSBwYXJzZXJTdGF0ZXMuSU5GT1xuXG4gICNpbmZvID0ge31cbiAgI2ZyYWdtZW50cyA9IFtdXG5cbiAgY29uc3RydWN0b3IgKHdzKSB7XG4gICAgc3VwZXIoKVxuXG4gICAgdGhpcy53cyA9IHdzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtCdWZmZXJ9IGNodW5rXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gY2FsbGJhY2tcbiAgICovXG4gIF93cml0ZSAoY2h1bmssIF8sIGNhbGxiYWNrKSB7XG4gICAgdGhpcy4jYnVmZmVycy5wdXNoKGNodW5rKVxuICAgIHRoaXMuI2J5dGVPZmZzZXQgKz0gY2h1bmsubGVuZ3RoXG5cbiAgICB0aGlzLnJ1bihjYWxsYmFjaylcbiAgfVxuXG4gIC8qKlxuICAgKiBSdW5zIHdoZW5ldmVyIGEgbmV3IGNodW5rIGlzIHJlY2VpdmVkLlxuICAgKiBDYWxsYmFjayBpcyBjYWxsZWQgd2hlbmV2ZXIgdGhlcmUgYXJlIG5vIG1vcmUgY2h1bmtzIGJ1ZmZlcmluZyxcbiAgICogb3Igbm90IGVub3VnaCBieXRlcyBhcmUgYnVmZmVyZWQgdG8gcGFyc2UuXG4gICAqL1xuICBydW4gKGNhbGxiYWNrKSB7XG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIGlmICh0aGlzLiNzdGF0ZSA9PT0gcGFyc2VyU3RhdGVzLklORk8pIHtcbiAgICAgICAgLy8gSWYgdGhlcmUgYXJlbid0IGVub3VnaCBieXRlcyB0byBwYXJzZSB0aGUgcGF5bG9hZCBsZW5ndGgsIGV0Yy5cbiAgICAgICAgaWYgKHRoaXMuI2J5dGVPZmZzZXQgPCAyKSB7XG4gICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKClcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGJ1ZmZlciA9IHRoaXMuY29uc3VtZSgyKVxuXG4gICAgICAgIHRoaXMuI2luZm8uZmluID0gKGJ1ZmZlclswXSAmIDB4ODApICE9PSAwXG4gICAgICAgIHRoaXMuI2luZm8ub3Bjb2RlID0gYnVmZmVyWzBdICYgMHgwRlxuXG4gICAgICAgIC8vIElmIHdlIHJlY2VpdmUgYSBmcmFnbWVudGVkIG1lc3NhZ2UsIHdlIHVzZSB0aGUgdHlwZSBvZiB0aGUgZmlyc3RcbiAgICAgICAgLy8gZnJhbWUgdG8gcGFyc2UgdGhlIGZ1bGwgbWVzc2FnZSBhcyBiaW5hcnkvdGV4dCwgd2hlbiBpdCdzIHRlcm1pbmF0ZWRcbiAgICAgICAgdGhpcy4jaW5mby5vcmlnaW5hbE9wY29kZSA/Pz0gdGhpcy4jaW5mby5vcGNvZGVcblxuICAgICAgICB0aGlzLiNpbmZvLmZyYWdtZW50ZWQgPSAhdGhpcy4jaW5mby5maW4gJiYgdGhpcy4jaW5mby5vcGNvZGUgIT09IG9wY29kZXMuQ09OVElOVUFUSU9OXG5cbiAgICAgICAgaWYgKHRoaXMuI2luZm8uZnJhZ21lbnRlZCAmJiB0aGlzLiNpbmZvLm9wY29kZSAhPT0gb3Bjb2Rlcy5CSU5BUlkgJiYgdGhpcy4jaW5mby5vcGNvZGUgIT09IG9wY29kZXMuVEVYVCkge1xuICAgICAgICAgIC8vIE9ubHkgdGV4dCBhbmQgYmluYXJ5IGZyYW1lcyBjYW4gYmUgZnJhZ21lbnRlZFxuICAgICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHRoaXMud3MsICdJbnZhbGlkIGZyYW1lIHR5cGUgd2FzIGZyYWdtZW50ZWQuJylcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBheWxvYWRMZW5ndGggPSBidWZmZXJbMV0gJiAweDdGXG5cbiAgICAgICAgaWYgKHBheWxvYWRMZW5ndGggPD0gMTI1KSB7XG4gICAgICAgICAgdGhpcy4jaW5mby5wYXlsb2FkTGVuZ3RoID0gcGF5bG9hZExlbmd0aFxuICAgICAgICAgIHRoaXMuI3N0YXRlID0gcGFyc2VyU3RhdGVzLlJFQURfREFUQVxuICAgICAgICB9IGVsc2UgaWYgKHBheWxvYWRMZW5ndGggPT09IDEyNikge1xuICAgICAgICAgIHRoaXMuI3N0YXRlID0gcGFyc2VyU3RhdGVzLlBBWUxPQURMRU5HVEhfMTZcbiAgICAgICAgfSBlbHNlIGlmIChwYXlsb2FkTGVuZ3RoID09PSAxMjcpIHtcbiAgICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5QQVlMT0FETEVOR1RIXzY0XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy4jaW5mby5mcmFnbWVudGVkICYmIHBheWxvYWRMZW5ndGggPiAxMjUpIHtcbiAgICAgICAgICAvLyBBIGZyYWdtZW50ZWQgZnJhbWUgY2FuJ3QgYmUgZnJhZ21lbnRlZCBpdHNlbGZcbiAgICAgICAgICBmYWlsV2Vic29ja2V0Q29ubmVjdGlvbih0aGlzLndzLCAnRnJhZ21lbnRlZCBmcmFtZSBleGNlZWRlZCAxMjUgYnl0ZXMuJylcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAodGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuUElORyB8fFxuICAgICAgICAgICAgdGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuUE9ORyB8fFxuICAgICAgICAgICAgdGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuQ0xPU0UpICYmXG4gICAgICAgICAgcGF5bG9hZExlbmd0aCA+IDEyNVxuICAgICAgICApIHtcbiAgICAgICAgICAvLyBDb250cm9sIGZyYW1lcyBjYW4gaGF2ZSBhIHBheWxvYWQgbGVuZ3RoIG9mIDEyNSBieXRlcyBNQVhcbiAgICAgICAgICBmYWlsV2Vic29ja2V0Q29ubmVjdGlvbih0aGlzLndzLCAnUGF5bG9hZCBsZW5ndGggZm9yIGNvbnRyb2wgZnJhbWUgZXhjZWVkZWQgMTI1IGJ5dGVzLicpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuQ0xPU0UpIHtcbiAgICAgICAgICBpZiAocGF5bG9hZExlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24odGhpcy53cywgJ1JlY2VpdmVkIGNsb3NlIGZyYW1lIHdpdGggYSAxLWJ5dGUgYm9keS4nKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuY29uc3VtZShwYXlsb2FkTGVuZ3RoKVxuXG4gICAgICAgICAgdGhpcy4jaW5mby5jbG9zZUluZm8gPSB0aGlzLnBhcnNlQ2xvc2VCb2R5KGZhbHNlLCBib2R5KVxuXG4gICAgICAgICAgaWYgKCF0aGlzLndzW2tTZW50Q2xvc2VdKSB7XG4gICAgICAgICAgICAvLyBJZiBhbiBlbmRwb2ludCByZWNlaXZlcyBhIENsb3NlIGZyYW1lIGFuZCBkaWQgbm90IHByZXZpb3VzbHkgc2VuZCBhXG4gICAgICAgICAgICAvLyBDbG9zZSBmcmFtZSwgdGhlIGVuZHBvaW50IE1VU1Qgc2VuZCBhIENsb3NlIGZyYW1lIGluIHJlc3BvbnNlLiAgKFdoZW5cbiAgICAgICAgICAgIC8vIHNlbmRpbmcgYSBDbG9zZSBmcmFtZSBpbiByZXNwb25zZSwgdGhlIGVuZHBvaW50IHR5cGljYWxseSBlY2hvcyB0aGVcbiAgICAgICAgICAgIC8vIHN0YXR1cyBjb2RlIGl0IHJlY2VpdmVkLilcbiAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBCdWZmZXIuYWxsb2NVbnNhZmUoMilcbiAgICAgICAgICAgIGJvZHkud3JpdGVVSW50MTZCRSh0aGlzLiNpbmZvLmNsb3NlSW5mby5jb2RlLCAwKVxuICAgICAgICAgICAgY29uc3QgY2xvc2VGcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQoYm9keSlcblxuICAgICAgICAgICAgdGhpcy53c1trUmVzcG9uc2VdLnNvY2tldC53cml0ZShcbiAgICAgICAgICAgICAgY2xvc2VGcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLkNMT1NFKSxcbiAgICAgICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghZXJyKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLndzW2tTZW50Q2xvc2VdID0gdHJ1ZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIFVwb24gZWl0aGVyIHNlbmRpbmcgb3IgcmVjZWl2aW5nIGEgQ2xvc2UgY29udHJvbCBmcmFtZSwgaXQgaXMgc2FpZFxuICAgICAgICAgIC8vIHRoYXQgX1RoZSBXZWJTb2NrZXQgQ2xvc2luZyBIYW5kc2hha2UgaXMgU3RhcnRlZF8gYW5kIHRoYXQgdGhlXG4gICAgICAgICAgLy8gV2ViU29ja2V0IGNvbm5lY3Rpb24gaXMgaW4gdGhlIENMT1NJTkcgc3RhdGUuXG4gICAgICAgICAgdGhpcy53c1trUmVhZHlTdGF0ZV0gPSBzdGF0ZXMuQ0xPU0lOR1xuICAgICAgICAgIHRoaXMud3Nba1JlY2VpdmVkQ2xvc2VdID0gdHJ1ZVxuXG4gICAgICAgICAgdGhpcy5lbmQoKVxuXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuUElORykge1xuICAgICAgICAgIC8vIFVwb24gcmVjZWlwdCBvZiBhIFBpbmcgZnJhbWUsIGFuIGVuZHBvaW50IE1VU1Qgc2VuZCBhIFBvbmcgZnJhbWUgaW5cbiAgICAgICAgICAvLyByZXNwb25zZSwgdW5sZXNzIGl0IGFscmVhZHkgcmVjZWl2ZWQgYSBDbG9zZSBmcmFtZS5cbiAgICAgICAgICAvLyBBIFBvbmcgZnJhbWUgc2VudCBpbiByZXNwb25zZSB0byBhIFBpbmcgZnJhbWUgbXVzdCBoYXZlIGlkZW50aWNhbFxuICAgICAgICAgIC8vIFwiQXBwbGljYXRpb24gZGF0YVwiXG5cbiAgICAgICAgICBjb25zdCBib2R5ID0gdGhpcy5jb25zdW1lKHBheWxvYWRMZW5ndGgpXG5cbiAgICAgICAgICBpZiAoIXRoaXMud3Nba1JlY2VpdmVkQ2xvc2VdKSB7XG4gICAgICAgICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQoYm9keSlcblxuICAgICAgICAgICAgdGhpcy53c1trUmVzcG9uc2VdLnNvY2tldC53cml0ZShmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLlBPTkcpKVxuXG4gICAgICAgICAgICBpZiAoY2hhbm5lbHMucGluZy5oYXNTdWJzY3JpYmVycykge1xuICAgICAgICAgICAgICBjaGFubmVscy5waW5nLnB1Ymxpc2goe1xuICAgICAgICAgICAgICAgIHBheWxvYWQ6IGJvZHlcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5JTkZPXG5cbiAgICAgICAgICBpZiAodGhpcy4jYnl0ZU9mZnNldCA+IDApIHtcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhbGxiYWNrKClcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLiNpbmZvLm9wY29kZSA9PT0gb3Bjb2Rlcy5QT05HKSB7XG4gICAgICAgICAgLy8gQSBQb25nIGZyYW1lIE1BWSBiZSBzZW50IHVuc29saWNpdGVkLiAgVGhpcyBzZXJ2ZXMgYXMgYVxuICAgICAgICAgIC8vIHVuaWRpcmVjdGlvbmFsIGhlYXJ0YmVhdC4gIEEgcmVzcG9uc2UgdG8gYW4gdW5zb2xpY2l0ZWQgUG9uZyBmcmFtZSBpc1xuICAgICAgICAgIC8vIG5vdCBleHBlY3RlZC5cblxuICAgICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLmNvbnN1bWUocGF5bG9hZExlbmd0aClcblxuICAgICAgICAgIGlmIChjaGFubmVscy5wb25nLmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICAgICAgICBjaGFubmVscy5wb25nLnB1Ymxpc2goe1xuICAgICAgICAgICAgICBwYXlsb2FkOiBib2R5XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLiNieXRlT2Zmc2V0ID4gMCkge1xuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY2FsbGJhY2soKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuI3N0YXRlID09PSBwYXJzZXJTdGF0ZXMuUEFZTE9BRExFTkdUSF8xNikge1xuICAgICAgICBpZiAodGhpcy4jYnl0ZU9mZnNldCA8IDIpIHtcbiAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYnVmZmVyID0gdGhpcy5jb25zdW1lKDIpXG5cbiAgICAgICAgdGhpcy4jaW5mby5wYXlsb2FkTGVuZ3RoID0gYnVmZmVyLnJlYWRVSW50MTZCRSgwKVxuICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5SRUFEX0RBVEFcbiAgICAgIH0gZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IHBhcnNlclN0YXRlcy5QQVlMT0FETEVOR1RIXzY0KSB7XG4gICAgICAgIGlmICh0aGlzLiNieXRlT2Zmc2V0IDwgOCkge1xuICAgICAgICAgIHJldHVybiBjYWxsYmFjaygpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBidWZmZXIgPSB0aGlzLmNvbnN1bWUoOClcbiAgICAgICAgY29uc3QgdXBwZXIgPSBidWZmZXIucmVhZFVJbnQzMkJFKDApXG5cbiAgICAgICAgLy8gMl4zMSBpcyB0aGUgbWF4aW5pbXVtIGJ5dGVzIGFuIGFycmF5YnVmZmVyIGNhbiBjb250YWluXG4gICAgICAgIC8vIG9uIDMyLWJpdCBzeXN0ZW1zLiBBbHRob3VnaCwgb24gNjQtYml0IHN5c3RlbXMsIHRoaXMgaXNcbiAgICAgICAgLy8gMl41My0xIGJ5dGVzLlxuICAgICAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9FcnJvcnMvSW52YWxpZF9hcnJheV9sZW5ndGhcbiAgICAgICAgLy8gaHR0cHM6Ly9zb3VyY2UuY2hyb21pdW0ub3JnL2Nocm9taXVtL2Nocm9taXVtL3NyYy8rL21haW46djgvc3JjL2NvbW1vbi9nbG9iYWxzLmg7ZHJjPTE5NDYyMTJhYzAxMDA2NjhmMTRlYjllMjg0M2JkZDg0NmU1MTBhMWU7YnB2PTE7YnB0PTE7bD0xMjc1XG4gICAgICAgIC8vIGh0dHBzOi8vc291cmNlLmNocm9taXVtLm9yZy9jaHJvbWl1bS9jaHJvbWl1bS9zcmMvKy9tYWluOnY4L3NyYy9vYmplY3RzL2pzLWFycmF5LWJ1ZmZlci5oO2w9MzQ7ZHJjPTE5NDYyMTJhYzAxMDA2NjhmMTRlYjllMjg0M2JkZDg0NmU1MTBhMWVcbiAgICAgICAgaWYgKHVwcGVyID4gMiAqKiAzMSAtIDEpIHtcbiAgICAgICAgICBmYWlsV2Vic29ja2V0Q29ubmVjdGlvbih0aGlzLndzLCAnUmVjZWl2ZWQgcGF5bG9hZCBsZW5ndGggPiAyXjMxIGJ5dGVzLicpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBsb3dlciA9IGJ1ZmZlci5yZWFkVUludDMyQkUoNClcblxuICAgICAgICB0aGlzLiNpbmZvLnBheWxvYWRMZW5ndGggPSAodXBwZXIgPDwgOCkgKyBsb3dlclxuICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5SRUFEX0RBVEFcbiAgICAgIH0gZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IHBhcnNlclN0YXRlcy5SRUFEX0RBVEEpIHtcbiAgICAgICAgaWYgKHRoaXMuI2J5dGVPZmZzZXQgPCB0aGlzLiNpbmZvLnBheWxvYWRMZW5ndGgpIHtcbiAgICAgICAgICAvLyBJZiB0aGVyZSBpcyBzdGlsbCBtb3JlIGRhdGEgaW4gdGhpcyBjaHVuayB0aGF0IG5lZWRzIHRvIGJlIHJlYWRcbiAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKVxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuI2J5dGVPZmZzZXQgPj0gdGhpcy4jaW5mby5wYXlsb2FkTGVuZ3RoKSB7XG4gICAgICAgICAgLy8gSWYgdGhlIHNlcnZlciBzZW50IG11bHRpcGxlIGZyYW1lcyBpbiBhIHNpbmdsZSBjaHVua1xuXG4gICAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuY29uc3VtZSh0aGlzLiNpbmZvLnBheWxvYWRMZW5ndGgpXG5cbiAgICAgICAgICB0aGlzLiNmcmFnbWVudHMucHVzaChib2R5KVxuXG4gICAgICAgICAgLy8gSWYgdGhlIGZyYW1lIGlzIHVuZnJhZ21lbnRlZCwgb3IgYSBmcmFnbWVudGVkIGZyYW1lIHdhcyB0ZXJtaW5hdGVkLFxuICAgICAgICAgIC8vIGEgbWVzc2FnZSB3YXMgcmVjZWl2ZWRcbiAgICAgICAgICBpZiAoIXRoaXMuI2luZm8uZnJhZ21lbnRlZCB8fCAodGhpcy4jaW5mby5maW4gJiYgdGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuQ09OVElOVUFUSU9OKSkge1xuICAgICAgICAgICAgY29uc3QgZnVsbE1lc3NhZ2UgPSBCdWZmZXIuY29uY2F0KHRoaXMuI2ZyYWdtZW50cylcblxuICAgICAgICAgICAgd2Vic29ja2V0TWVzc2FnZVJlY2VpdmVkKHRoaXMud3MsIHRoaXMuI2luZm8ub3JpZ2luYWxPcGNvZGUsIGZ1bGxNZXNzYWdlKVxuXG4gICAgICAgICAgICB0aGlzLiNpbmZvID0ge31cbiAgICAgICAgICAgIHRoaXMuI2ZyYWdtZW50cy5sZW5ndGggPSAwXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy4jc3RhdGUgPSBwYXJzZXJTdGF0ZXMuSU5GT1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLiNieXRlT2Zmc2V0ID4gMCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2FsbGJhY2soKVxuICAgICAgICBicmVha1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlIG4gYnl0ZXMgZnJvbSB0aGUgYnVmZmVyZWQgQnVmZmVyc1xuICAgKiBAcGFyYW0ge251bWJlcn0gblxuICAgKiBAcmV0dXJucyB7QnVmZmVyfG51bGx9XG4gICAqL1xuICBjb25zdW1lIChuKSB7XG4gICAgaWYgKG4gPiB0aGlzLiNieXRlT2Zmc2V0KSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH0gZWxzZSBpZiAobiA9PT0gMCkge1xuICAgICAgcmV0dXJuIGVtcHR5QnVmZmVyXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuI2J1ZmZlcnNbMF0ubGVuZ3RoID09PSBuKSB7XG4gICAgICB0aGlzLiNieXRlT2Zmc2V0IC09IHRoaXMuI2J1ZmZlcnNbMF0ubGVuZ3RoXG4gICAgICByZXR1cm4gdGhpcy4jYnVmZmVycy5zaGlmdCgpXG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jVW5zYWZlKG4pXG4gICAgbGV0IG9mZnNldCA9IDBcblxuICAgIHdoaWxlIChvZmZzZXQgIT09IG4pIHtcbiAgICAgIGNvbnN0IG5leHQgPSB0aGlzLiNidWZmZXJzWzBdXG4gICAgICBjb25zdCB7IGxlbmd0aCB9ID0gbmV4dFxuXG4gICAgICBpZiAobGVuZ3RoICsgb2Zmc2V0ID09PSBuKSB7XG4gICAgICAgIGJ1ZmZlci5zZXQodGhpcy4jYnVmZmVycy5zaGlmdCgpLCBvZmZzZXQpXG4gICAgICAgIGJyZWFrXG4gICAgICB9IGVsc2UgaWYgKGxlbmd0aCArIG9mZnNldCA+IG4pIHtcbiAgICAgICAgYnVmZmVyLnNldChuZXh0LnN1YmFycmF5KDAsIG4gLSBvZmZzZXQpLCBvZmZzZXQpXG4gICAgICAgIHRoaXMuI2J1ZmZlcnNbMF0gPSBuZXh0LnN1YmFycmF5KG4gLSBvZmZzZXQpXG4gICAgICAgIGJyZWFrXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBidWZmZXIuc2V0KHRoaXMuI2J1ZmZlcnMuc2hpZnQoKSwgb2Zmc2V0KVxuICAgICAgICBvZmZzZXQgKz0gbmV4dC5sZW5ndGhcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLiNieXRlT2Zmc2V0IC09IG5cblxuICAgIHJldHVybiBidWZmZXJcbiAgfVxuXG4gIHBhcnNlQ2xvc2VCb2R5IChvbmx5Q29kZSwgZGF0YSkge1xuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTcuMS41XG4gICAgLyoqIEB0eXBlIHtudW1iZXJ8dW5kZWZpbmVkfSAqL1xuICAgIGxldCBjb2RlXG5cbiAgICBpZiAoZGF0YS5sZW5ndGggPj0gMikge1xuICAgICAgLy8gX1RoZSBXZWJTb2NrZXQgQ29ubmVjdGlvbiBDbG9zZSBDb2RlXyBpc1xuICAgICAgLy8gZGVmaW5lZCBhcyB0aGUgc3RhdHVzIGNvZGUgKFNlY3Rpb24gNy40KSBjb250YWluZWQgaW4gdGhlIGZpcnN0IENsb3NlXG4gICAgICAvLyBjb250cm9sIGZyYW1lIHJlY2VpdmVkIGJ5IHRoZSBhcHBsaWNhdGlvblxuICAgICAgY29kZSA9IGRhdGEucmVhZFVJbnQxNkJFKDApXG4gICAgfVxuXG4gICAgaWYgKG9ubHlDb2RlKSB7XG4gICAgICBpZiAoIWlzVmFsaWRTdGF0dXNDb2RlKGNvZGUpKSB7XG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7IGNvZGUgfVxuICAgIH1cblxuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTcuMS42XG4gICAgLyoqIEB0eXBlIHtCdWZmZXJ9ICovXG4gICAgbGV0IHJlYXNvbiA9IGRhdGEuc3ViYXJyYXkoMilcblxuICAgIC8vIFJlbW92ZSBCT01cbiAgICBpZiAocmVhc29uWzBdID09PSAweEVGICYmIHJlYXNvblsxXSA9PT0gMHhCQiAmJiByZWFzb25bMl0gPT09IDB4QkYpIHtcbiAgICAgIHJlYXNvbiA9IHJlYXNvbi5zdWJhcnJheSgzKVxuICAgIH1cblxuICAgIGlmIChjb2RlICE9PSB1bmRlZmluZWQgJiYgIWlzVmFsaWRTdGF0dXNDb2RlKGNvZGUpKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICAvLyBUT0RPOiBvcHRpbWl6ZSB0aGlzXG4gICAgICByZWFzb24gPSBuZXcgVGV4dERlY29kZXIoJ3V0Zi04JywgeyBmYXRhbDogdHJ1ZSB9KS5kZWNvZGUocmVhc29uKVxuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG5cbiAgICByZXR1cm4geyBjb2RlLCByZWFzb24gfVxuICB9XG5cbiAgZ2V0IGNsb3NpbmdJbmZvICgpIHtcbiAgICByZXR1cm4gdGhpcy4jaW5mby5jbG9zZUluZm9cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQnl0ZVBhcnNlclxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsgRE9NRXhjZXB0aW9uIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9jb25zdGFudHMnKVxuY29uc3QgeyBVUkxTZXJpYWxpemVyIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9kYXRhVVJMJylcbmNvbnN0IHsgZ2V0R2xvYmFsT3JpZ2luIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9nbG9iYWwnKVxuY29uc3QgeyBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLCBzdGF0ZXMsIG9wY29kZXMsIGVtcHR5QnVmZmVyIH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5jb25zdCB7XG4gIGtXZWJTb2NrZXRVUkwsXG4gIGtSZWFkeVN0YXRlLFxuICBrQ29udHJvbGxlcixcbiAga0JpbmFyeVR5cGUsXG4gIGtSZXNwb25zZSxcbiAga1NlbnRDbG9zZSxcbiAga0J5dGVQYXJzZXJcbn0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBpc0VzdGFibGlzaGVkLCBpc0Nsb3NpbmcsIGlzVmFsaWRTdWJwcm90b2NvbCwgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24sIGZpcmVFdmVudCB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgZXN0YWJsaXNoV2ViU29ja2V0Q29ubmVjdGlvbiB9ID0gcmVxdWlyZSgnLi9jb25uZWN0aW9uJylcbmNvbnN0IHsgV2Vic29ja2V0RnJhbWVTZW5kIH0gPSByZXF1aXJlKCcuL2ZyYW1lJylcbmNvbnN0IHsgQnl0ZVBhcnNlciB9ID0gcmVxdWlyZSgnLi9yZWNlaXZlcicpXG5jb25zdCB7IGtFbnVtZXJhYmxlUHJvcGVydHksIGlzQmxvYkxpa2UgfSA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5jb25zdCB7IHR5cGVzIH0gPSByZXF1aXJlKCd1dGlsJylcblxubGV0IGV4cGVyaW1lbnRhbFdhcm5lZCA9IGZhbHNlXG5cbi8vIGh0dHBzOi8vd2Vic29ja2V0cy5zcGVjLndoYXR3Zy5vcmcvI2ludGVyZmFjZS1kZWZpbml0aW9uXG5jbGFzcyBXZWJTb2NrZXQgZXh0ZW5kcyBFdmVudFRhcmdldCB7XG4gICNldmVudHMgPSB7XG4gICAgb3BlbjogbnVsbCxcbiAgICBlcnJvcjogbnVsbCxcbiAgICBjbG9zZTogbnVsbCxcbiAgICBtZXNzYWdlOiBudWxsXG4gIH1cblxuICAjYnVmZmVyZWRBbW91bnQgPSAwXG4gICNwcm90b2NvbCA9ICcnXG4gICNleHRlbnNpb25zID0gJydcblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybFxuICAgKiBAcGFyYW0ge3N0cmluZ3xzdHJpbmdbXX0gcHJvdG9jb2xzXG4gICAqL1xuICBjb25zdHJ1Y3RvciAodXJsLCBwcm90b2NvbHMgPSBbXSkge1xuICAgIHN1cGVyKClcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdXZWJTb2NrZXQgY29uc3RydWN0b3InIH0pXG5cbiAgICBpZiAoIWV4cGVyaW1lbnRhbFdhcm5lZCkge1xuICAgICAgZXhwZXJpbWVudGFsV2FybmVkID0gdHJ1ZVxuICAgICAgcHJvY2Vzcy5lbWl0V2FybmluZygnV2ViU29ja2V0cyBhcmUgZXhwZXJpbWVudGFsLCBleHBlY3QgdGhlbSB0byBjaGFuZ2UgYXQgYW55IHRpbWUuJywge1xuICAgICAgICBjb2RlOiAnVU5ESUNJLVdTJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zID0gd2ViaWRsLmNvbnZlcnRlcnNbJ0RPTVN0cmluZyBvciBzZXF1ZW5jZTxET01TdHJpbmc+IG9yIFdlYlNvY2tldEluaXQnXShwcm90b2NvbHMpXG5cbiAgICB1cmwgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcodXJsKVxuICAgIHByb3RvY29scyA9IG9wdGlvbnMucHJvdG9jb2xzXG5cbiAgICAvLyAxLiBMZXQgYmFzZVVSTCBiZSB0aGlzJ3MgcmVsZXZhbnQgc2V0dGluZ3Mgb2JqZWN0J3MgQVBJIGJhc2UgVVJMLlxuICAgIGNvbnN0IGJhc2VVUkwgPSBnZXRHbG9iYWxPcmlnaW4oKVxuXG4gICAgLy8gMS4gTGV0IHVybFJlY29yZCBiZSB0aGUgcmVzdWx0IG9mIGFwcGx5aW5nIHRoZSBVUkwgcGFyc2VyIHRvIHVybCB3aXRoIGJhc2VVUkwuXG4gICAgbGV0IHVybFJlY29yZFxuXG4gICAgdHJ5IHtcbiAgICAgIHVybFJlY29yZCA9IG5ldyBVUkwodXJsLCBiYXNlVVJMKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8vIDMuIElmIHVybFJlY29yZCBpcyBmYWlsdXJlLCB0aGVuIHRocm93IGEgXCJTeW50YXhFcnJvclwiIERPTUV4Y2VwdGlvbi5cbiAgICAgIHRocm93IG5ldyBET01FeGNlcHRpb24oZSwgJ1N5bnRheEVycm9yJylcbiAgICB9XG5cbiAgICAvLyA0LiBJZiB1cmxSZWNvcmRcdTIwMTlzIHNjaGVtZSBpcyBcImh0dHBcIiwgdGhlbiBzZXQgdXJsUmVjb3JkXHUyMDE5cyBzY2hlbWUgdG8gXCJ3c1wiLlxuICAgIGlmICh1cmxSZWNvcmQucHJvdG9jb2wgPT09ICdodHRwOicpIHtcbiAgICAgIHVybFJlY29yZC5wcm90b2NvbCA9ICd3czonXG4gICAgfSBlbHNlIGlmICh1cmxSZWNvcmQucHJvdG9jb2wgPT09ICdodHRwczonKSB7XG4gICAgICAvLyA1LiBPdGhlcndpc2UsIGlmIHVybFJlY29yZFx1MjAxOXMgc2NoZW1lIGlzIFwiaHR0cHNcIiwgc2V0IHVybFJlY29yZFx1MjAxOXMgc2NoZW1lIHRvIFwid3NzXCIuXG4gICAgICB1cmxSZWNvcmQucHJvdG9jb2wgPSAnd3NzOidcbiAgICB9XG5cbiAgICAvLyA2LiBJZiB1cmxSZWNvcmRcdTIwMTlzIHNjaGVtZSBpcyBub3QgXCJ3c1wiIG9yIFwid3NzXCIsIHRoZW4gdGhyb3cgYSBcIlN5bnRheEVycm9yXCIgRE9NRXhjZXB0aW9uLlxuICAgIGlmICh1cmxSZWNvcmQucHJvdG9jb2wgIT09ICd3czonICYmIHVybFJlY29yZC5wcm90b2NvbCAhPT0gJ3dzczonKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKFxuICAgICAgICBgRXhwZWN0ZWQgYSB3czogb3Igd3NzOiBwcm90b2NvbCwgZ290ICR7dXJsUmVjb3JkLnByb3RvY29sfWAsXG4gICAgICAgICdTeW50YXhFcnJvcidcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyA3LiBJZiB1cmxSZWNvcmRcdTIwMTlzIGZyYWdtZW50IGlzIG5vbi1udWxsLCB0aGVuIHRocm93IGEgXCJTeW50YXhFcnJvclwiXG4gICAgLy8gICAgRE9NRXhjZXB0aW9uLlxuICAgIGlmICh1cmxSZWNvcmQuaGFzaCB8fCB1cmxSZWNvcmQuaHJlZi5lbmRzV2l0aCgnIycpKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKCdHb3QgZnJhZ21lbnQnLCAnU3ludGF4RXJyb3InKVxuICAgIH1cblxuICAgIC8vIDguIElmIHByb3RvY29scyBpcyBhIHN0cmluZywgc2V0IHByb3RvY29scyB0byBhIHNlcXVlbmNlIGNvbnNpc3RpbmdcbiAgICAvLyAgICBvZiBqdXN0IHRoYXQgc3RyaW5nLlxuICAgIGlmICh0eXBlb2YgcHJvdG9jb2xzID09PSAnc3RyaW5nJykge1xuICAgICAgcHJvdG9jb2xzID0gW3Byb3RvY29sc11cbiAgICB9XG5cbiAgICAvLyA5LiBJZiBhbnkgb2YgdGhlIHZhbHVlcyBpbiBwcm90b2NvbHMgb2NjdXIgbW9yZSB0aGFuIG9uY2Ugb3Igb3RoZXJ3aXNlXG4gICAgLy8gICAgZmFpbCB0byBtYXRjaCB0aGUgcmVxdWlyZW1lbnRzIGZvciBlbGVtZW50cyB0aGF0IGNvbXByaXNlIHRoZSB2YWx1ZVxuICAgIC8vICAgIG9mIGBTZWMtV2ViU29ja2V0LVByb3RvY29sYCBmaWVsZHMgYXMgZGVmaW5lZCBieSBUaGUgV2ViU29ja2V0XG4gICAgLy8gICAgcHJvdG9jb2wsIHRoZW4gdGhyb3cgYSBcIlN5bnRheEVycm9yXCIgRE9NRXhjZXB0aW9uLlxuICAgIGlmIChwcm90b2NvbHMubGVuZ3RoICE9PSBuZXcgU2V0KHByb3RvY29scy5tYXAocCA9PiBwLnRvTG93ZXJDYXNlKCkpKS5zaXplKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKCdJbnZhbGlkIFNlYy1XZWJTb2NrZXQtUHJvdG9jb2wgdmFsdWUnLCAnU3ludGF4RXJyb3InKVxuICAgIH1cblxuICAgIGlmIChwcm90b2NvbHMubGVuZ3RoID4gMCAmJiAhcHJvdG9jb2xzLmV2ZXJ5KHAgPT4gaXNWYWxpZFN1YnByb3RvY29sKHApKSkge1xuICAgICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignSW52YWxpZCBTZWMtV2ViU29ja2V0LVByb3RvY29sIHZhbHVlJywgJ1N5bnRheEVycm9yJylcbiAgICB9XG5cbiAgICAvLyAxMC4gU2V0IHRoaXMncyB1cmwgdG8gdXJsUmVjb3JkLlxuICAgIHRoaXNba1dlYlNvY2tldFVSTF0gPSBuZXcgVVJMKHVybFJlY29yZC5ocmVmKVxuXG4gICAgLy8gMTEuIExldCBjbGllbnQgYmUgdGhpcydzIHJlbGV2YW50IHNldHRpbmdzIG9iamVjdC5cblxuICAgIC8vIDEyLiBSdW4gdGhpcyBzdGVwIGluIHBhcmFsbGVsOlxuXG4gICAgLy8gICAgMS4gRXN0YWJsaXNoIGEgV2ViU29ja2V0IGNvbm5lY3Rpb24gZ2l2ZW4gdXJsUmVjb3JkLCBwcm90b2NvbHMsXG4gICAgLy8gICAgICAgYW5kIGNsaWVudC5cbiAgICB0aGlzW2tDb250cm9sbGVyXSA9IGVzdGFibGlzaFdlYlNvY2tldENvbm5lY3Rpb24oXG4gICAgICB1cmxSZWNvcmQsXG4gICAgICBwcm90b2NvbHMsXG4gICAgICB0aGlzLFxuICAgICAgKHJlc3BvbnNlKSA9PiB0aGlzLiNvbkNvbm5lY3Rpb25Fc3RhYmxpc2hlZChyZXNwb25zZSksXG4gICAgICBvcHRpb25zXG4gICAgKVxuXG4gICAgLy8gRWFjaCBXZWJTb2NrZXQgb2JqZWN0IGhhcyBhbiBhc3NvY2lhdGVkIHJlYWR5IHN0YXRlLCB3aGljaCBpcyBhXG4gICAgLy8gbnVtYmVyIHJlcHJlc2VudGluZyB0aGUgc3RhdGUgb2YgdGhlIGNvbm5lY3Rpb24uIEluaXRpYWxseSBpdCBtdXN0XG4gICAgLy8gYmUgQ09OTkVDVElORyAoMCkuXG4gICAgdGhpc1trUmVhZHlTdGF0ZV0gPSBXZWJTb2NrZXQuQ09OTkVDVElOR1xuXG4gICAgLy8gVGhlIGV4dGVuc2lvbnMgYXR0cmlidXRlIG11c3QgaW5pdGlhbGx5IHJldHVybiB0aGUgZW1wdHkgc3RyaW5nLlxuXG4gICAgLy8gVGhlIHByb3RvY29sIGF0dHJpYnV0ZSBtdXN0IGluaXRpYWxseSByZXR1cm4gdGhlIGVtcHR5IHN0cmluZy5cblxuICAgIC8vIEVhY2ggV2ViU29ja2V0IG9iamVjdCBoYXMgYW4gYXNzb2NpYXRlZCBiaW5hcnkgdHlwZSwgd2hpY2ggaXMgYVxuICAgIC8vIEJpbmFyeVR5cGUuIEluaXRpYWxseSBpdCBtdXN0IGJlIFwiYmxvYlwiLlxuICAgIHRoaXNba0JpbmFyeVR5cGVdID0gJ2Jsb2InXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyNkb20td2Vic29ja2V0LWNsb3NlXG4gICAqIEBwYXJhbSB7bnVtYmVyfHVuZGVmaW5lZH0gY29kZVxuICAgKiBAcGFyYW0ge3N0cmluZ3x1bmRlZmluZWR9IHJlYXNvblxuICAgKi9cbiAgY2xvc2UgKGNvZGUgPSB1bmRlZmluZWQsIHJlYXNvbiA9IHVuZGVmaW5lZCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIGlmIChjb2RlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvZGUgPSB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgc2hvcnQnXShjb2RlLCB7IGNsYW1wOiB0cnVlIH0pXG4gICAgfVxuXG4gICAgaWYgKHJlYXNvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZWFzb24gPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcocmVhc29uKVxuICAgIH1cblxuICAgIC8vIDEuIElmIGNvZGUgaXMgcHJlc2VudCwgYnV0IGlzIG5laXRoZXIgYW4gaW50ZWdlciBlcXVhbCB0byAxMDAwIG5vciBhblxuICAgIC8vICAgIGludGVnZXIgaW4gdGhlIHJhbmdlIDMwMDAgdG8gNDk5OSwgaW5jbHVzaXZlLCB0aHJvdyBhblxuICAgIC8vICAgIFwiSW52YWxpZEFjY2Vzc0Vycm9yXCIgRE9NRXhjZXB0aW9uLlxuICAgIGlmIChjb2RlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmIChjb2RlICE9PSAxMDAwICYmIChjb2RlIDwgMzAwMCB8fCBjb2RlID4gNDk5OSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignaW52YWxpZCBjb2RlJywgJ0ludmFsaWRBY2Nlc3NFcnJvcicpXG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHJlYXNvbkJ5dGVMZW5ndGggPSAwXG5cbiAgICAvLyAyLiBJZiByZWFzb24gaXMgcHJlc2VudCwgdGhlbiBydW4gdGhlc2Ugc3Vic3RlcHM6XG4gICAgaWYgKHJlYXNvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyAxLiBMZXQgcmVhc29uQnl0ZXMgYmUgdGhlIHJlc3VsdCBvZiBlbmNvZGluZyByZWFzb24uXG4gICAgICAvLyAyLiBJZiByZWFzb25CeXRlcyBpcyBsb25nZXIgdGhhbiAxMjMgYnl0ZXMsIHRoZW4gdGhyb3cgYVxuICAgICAgLy8gICAgXCJTeW50YXhFcnJvclwiIERPTUV4Y2VwdGlvbi5cbiAgICAgIHJlYXNvbkJ5dGVMZW5ndGggPSBCdWZmZXIuYnl0ZUxlbmd0aChyZWFzb24pXG5cbiAgICAgIGlmIChyZWFzb25CeXRlTGVuZ3RoID4gMTIzKSB7XG4gICAgICAgIHRocm93IG5ldyBET01FeGNlcHRpb24oXG4gICAgICAgICAgYFJlYXNvbiBtdXN0IGJlIGxlc3MgdGhhbiAxMjMgYnl0ZXM7IHJlY2VpdmVkICR7cmVhc29uQnl0ZUxlbmd0aH1gLFxuICAgICAgICAgICdTeW50YXhFcnJvcidcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDMuIFJ1biB0aGUgZmlyc3QgbWF0Y2hpbmcgc3RlcHMgZnJvbSB0aGUgZm9sbG93aW5nIGxpc3Q6XG4gICAgaWYgKHRoaXNba1JlYWR5U3RhdGVdID09PSBXZWJTb2NrZXQuQ0xPU0lORyB8fCB0aGlzW2tSZWFkeVN0YXRlXSA9PT0gV2ViU29ja2V0LkNMT1NFRCkge1xuICAgICAgLy8gSWYgdGhpcydzIHJlYWR5IHN0YXRlIGlzIENMT1NJTkcgKDIpIG9yIENMT1NFRCAoMylcbiAgICAgIC8vIERvIG5vdGhpbmcuXG4gICAgfSBlbHNlIGlmICghaXNFc3RhYmxpc2hlZCh0aGlzKSkge1xuICAgICAgLy8gSWYgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uIGlzIG5vdCB5ZXQgZXN0YWJsaXNoZWRcbiAgICAgIC8vIEZhaWwgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uIGFuZCBzZXQgdGhpcydzIHJlYWR5IHN0YXRlXG4gICAgICAvLyB0byBDTE9TSU5HICgyKS5cbiAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHRoaXMsICdDb25uZWN0aW9uIHdhcyBjbG9zZWQgYmVmb3JlIGl0IHdhcyBlc3RhYmxpc2hlZC4nKVxuICAgICAgdGhpc1trUmVhZHlTdGF0ZV0gPSBXZWJTb2NrZXQuQ0xPU0lOR1xuICAgIH0gZWxzZSBpZiAoIWlzQ2xvc2luZyh0aGlzKSkge1xuICAgICAgLy8gSWYgdGhlIFdlYlNvY2tldCBjbG9zaW5nIGhhbmRzaGFrZSBoYXMgbm90IHlldCBiZWVuIHN0YXJ0ZWRcbiAgICAgIC8vIFN0YXJ0IHRoZSBXZWJTb2NrZXQgY2xvc2luZyBoYW5kc2hha2UgYW5kIHNldCB0aGlzJ3MgcmVhZHlcbiAgICAgIC8vIHN0YXRlIHRvIENMT1NJTkcgKDIpLlxuICAgICAgLy8gLSBJZiBuZWl0aGVyIGNvZGUgbm9yIHJlYXNvbiBpcyBwcmVzZW50LCB0aGUgV2ViU29ja2V0IENsb3NlXG4gICAgICAvLyAgIG1lc3NhZ2UgbXVzdCBub3QgaGF2ZSBhIGJvZHkuXG4gICAgICAvLyAtIElmIGNvZGUgaXMgcHJlc2VudCwgdGhlbiB0aGUgc3RhdHVzIGNvZGUgdG8gdXNlIGluIHRoZVxuICAgICAgLy8gICBXZWJTb2NrZXQgQ2xvc2UgbWVzc2FnZSBtdXN0IGJlIHRoZSBpbnRlZ2VyIGdpdmVuIGJ5IGNvZGUuXG4gICAgICAvLyAtIElmIHJlYXNvbiBpcyBhbHNvIHByZXNlbnQsIHRoZW4gcmVhc29uQnl0ZXMgbXVzdCBiZVxuICAgICAgLy8gICBwcm92aWRlZCBpbiB0aGUgQ2xvc2UgbWVzc2FnZSBhZnRlciB0aGUgc3RhdHVzIGNvZGUuXG5cbiAgICAgIGNvbnN0IGZyYW1lID0gbmV3IFdlYnNvY2tldEZyYW1lU2VuZCgpXG5cbiAgICAgIC8vIElmIG5laXRoZXIgY29kZSBub3IgcmVhc29uIGlzIHByZXNlbnQsIHRoZSBXZWJTb2NrZXQgQ2xvc2VcbiAgICAgIC8vIG1lc3NhZ2UgbXVzdCBub3QgaGF2ZSBhIGJvZHkuXG5cbiAgICAgIC8vIElmIGNvZGUgaXMgcHJlc2VudCwgdGhlbiB0aGUgc3RhdHVzIGNvZGUgdG8gdXNlIGluIHRoZVxuICAgICAgLy8gV2ViU29ja2V0IENsb3NlIG1lc3NhZ2UgbXVzdCBiZSB0aGUgaW50ZWdlciBnaXZlbiBieSBjb2RlLlxuICAgICAgaWYgKGNvZGUgIT09IHVuZGVmaW5lZCAmJiByZWFzb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBmcmFtZS5mcmFtZURhdGEgPSBCdWZmZXIuYWxsb2NVbnNhZmUoMilcbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhLndyaXRlVUludDE2QkUoY29kZSwgMClcbiAgICAgIH0gZWxzZSBpZiAoY29kZSAhPT0gdW5kZWZpbmVkICYmIHJlYXNvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIElmIHJlYXNvbiBpcyBhbHNvIHByZXNlbnQsIHRoZW4gcmVhc29uQnl0ZXMgbXVzdCBiZVxuICAgICAgICAvLyBwcm92aWRlZCBpbiB0aGUgQ2xvc2UgbWVzc2FnZSBhZnRlciB0aGUgc3RhdHVzIGNvZGUuXG4gICAgICAgIGZyYW1lLmZyYW1lRGF0YSA9IEJ1ZmZlci5hbGxvY1Vuc2FmZSgyICsgcmVhc29uQnl0ZUxlbmd0aClcbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhLndyaXRlVUludDE2QkUoY29kZSwgMClcbiAgICAgICAgLy8gdGhlIGJvZHkgTUFZIGNvbnRhaW4gVVRGLTgtZW5jb2RlZCBkYXRhIHdpdGggdmFsdWUgL3JlYXNvbi9cbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhLndyaXRlKHJlYXNvbiwgMiwgJ3V0Zi04JylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZyYW1lLmZyYW1lRGF0YSA9IGVtcHR5QnVmZmVyXG4gICAgICB9XG5cbiAgICAgIC8qKiBAdHlwZSB7aW1wb3J0KCdzdHJlYW0nKS5EdXBsZXh9ICovXG4gICAgICBjb25zdCBzb2NrZXQgPSB0aGlzW2tSZXNwb25zZV0uc29ja2V0XG5cbiAgICAgIHNvY2tldC53cml0ZShmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLkNMT1NFKSwgKGVycikgPT4ge1xuICAgICAgICBpZiAoIWVycikge1xuICAgICAgICAgIHRoaXNba1NlbnRDbG9zZV0gPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIC8vIFVwb24gZWl0aGVyIHNlbmRpbmcgb3IgcmVjZWl2aW5nIGEgQ2xvc2UgY29udHJvbCBmcmFtZSwgaXQgaXMgc2FpZFxuICAgICAgLy8gdGhhdCBfVGhlIFdlYlNvY2tldCBDbG9zaW5nIEhhbmRzaGFrZSBpcyBTdGFydGVkXyBhbmQgdGhhdCB0aGVcbiAgICAgIC8vIFdlYlNvY2tldCBjb25uZWN0aW9uIGlzIGluIHRoZSBDTE9TSU5HIHN0YXRlLlxuICAgICAgdGhpc1trUmVhZHlTdGF0ZV0gPSBzdGF0ZXMuQ0xPU0lOR1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBPdGhlcndpc2VcbiAgICAgIC8vIFNldCB0aGlzJ3MgcmVhZHkgc3RhdGUgdG8gQ0xPU0lORyAoMikuXG4gICAgICB0aGlzW2tSZWFkeVN0YXRlXSA9IFdlYlNvY2tldC5DTE9TSU5HXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZG9tLXdlYnNvY2tldC1zZW5kXG4gICAqIEBwYXJhbSB7Tm9kZUpTLlR5cGVkQXJyYXl8QXJyYXlCdWZmZXJ8QmxvYnxzdHJpbmd9IGRhdGFcbiAgICovXG4gIHNlbmQgKGRhdGEpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnV2ViU29ja2V0LnNlbmQnIH0pXG5cbiAgICBkYXRhID0gd2ViaWRsLmNvbnZlcnRlcnMuV2ViU29ja2V0U2VuZERhdGEoZGF0YSlcblxuICAgIC8vIDEuIElmIHRoaXMncyByZWFkeSBzdGF0ZSBpcyBDT05ORUNUSU5HLCB0aGVuIHRocm93IGFuXG4gICAgLy8gICAgXCJJbnZhbGlkU3RhdGVFcnJvclwiIERPTUV4Y2VwdGlvbi5cbiAgICBpZiAodGhpc1trUmVhZHlTdGF0ZV0gPT09IFdlYlNvY2tldC5DT05ORUNUSU5HKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKCdTZW50IGJlZm9yZSBjb25uZWN0ZWQuJywgJ0ludmFsaWRTdGF0ZUVycm9yJylcbiAgICB9XG5cbiAgICAvLyAyLiBSdW4gdGhlIGFwcHJvcHJpYXRlIHNldCBvZiBzdGVwcyBmcm9tIHRoZSBmb2xsb3dpbmcgbGlzdDpcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzY0NTUjc2VjdGlvbi02LjFcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzY0NTUjc2VjdGlvbi01LjJcblxuICAgIGlmICghaXNFc3RhYmxpc2hlZCh0aGlzKSB8fCBpc0Nsb3NpbmcodGhpcykpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8qKiBAdHlwZSB7aW1wb3J0KCdzdHJlYW0nKS5EdXBsZXh9ICovXG4gICAgY29uc3Qgc29ja2V0ID0gdGhpc1trUmVzcG9uc2VdLnNvY2tldFxuXG4gICAgLy8gSWYgZGF0YSBpcyBhIHN0cmluZ1xuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIC8vIElmIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBpcyBlc3RhYmxpc2hlZCBhbmQgdGhlIFdlYlNvY2tldFxuICAgICAgLy8gY2xvc2luZyBoYW5kc2hha2UgaGFzIG5vdCB5ZXQgc3RhcnRlZCwgdGhlbiB0aGUgdXNlciBhZ2VudFxuICAgICAgLy8gbXVzdCBzZW5kIGEgV2ViU29ja2V0IE1lc3NhZ2UgY29tcHJpc2VkIG9mIHRoZSBkYXRhIGFyZ3VtZW50XG4gICAgICAvLyB1c2luZyBhIHRleHQgZnJhbWUgb3Bjb2RlOyBpZiB0aGUgZGF0YSBjYW5ub3QgYmUgc2VudCwgZS5nLlxuICAgICAgLy8gYmVjYXVzZSBpdCB3b3VsZCBuZWVkIHRvIGJlIGJ1ZmZlcmVkIGJ1dCB0aGUgYnVmZmVyIGlzIGZ1bGwsXG4gICAgICAvLyB0aGUgdXNlciBhZ2VudCBtdXN0IGZsYWcgdGhlIFdlYlNvY2tldCBhcyBmdWxsIGFuZCB0aGVuIGNsb3NlXG4gICAgICAvLyB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24uIEFueSBpbnZvY2F0aW9uIG9mIHRoaXMgbWV0aG9kIHdpdGggYVxuICAgICAgLy8gc3RyaW5nIGFyZ3VtZW50IHRoYXQgZG9lcyBub3QgdGhyb3cgYW4gZXhjZXB0aW9uIG11c3QgaW5jcmVhc2VcbiAgICAgIC8vIHRoZSBidWZmZXJlZEFtb3VudCBhdHRyaWJ1dGUgYnkgdGhlIG51bWJlciBvZiBieXRlcyBuZWVkZWQgdG9cbiAgICAgIC8vIGV4cHJlc3MgdGhlIGFyZ3VtZW50IGFzIFVURi04LlxuXG4gICAgICBjb25zdCB2YWx1ZSA9IEJ1ZmZlci5mcm9tKGRhdGEpXG4gICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQodmFsdWUpXG4gICAgICBjb25zdCBidWZmZXIgPSBmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLlRFWFQpXG5cbiAgICAgIHRoaXMuI2J1ZmZlcmVkQW1vdW50ICs9IHZhbHVlLmJ5dGVMZW5ndGhcbiAgICAgIHNvY2tldC53cml0ZShidWZmZXIsICgpID0+IHtcbiAgICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgLT0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgfSlcbiAgICB9IGVsc2UgaWYgKHR5cGVzLmlzQXJyYXlCdWZmZXIoZGF0YSkpIHtcbiAgICAgIC8vIElmIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBpcyBlc3RhYmxpc2hlZCwgYW5kIHRoZSBXZWJTb2NrZXRcbiAgICAgIC8vIGNsb3NpbmcgaGFuZHNoYWtlIGhhcyBub3QgeWV0IHN0YXJ0ZWQsIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdFxuICAgICAgLy8gc2VuZCBhIFdlYlNvY2tldCBNZXNzYWdlIGNvbXByaXNlZCBvZiBkYXRhIHVzaW5nIGEgYmluYXJ5IGZyYW1lXG4gICAgICAvLyBvcGNvZGU7IGlmIHRoZSBkYXRhIGNhbm5vdCBiZSBzZW50LCBlLmcuIGJlY2F1c2UgaXQgd291bGQgbmVlZFxuICAgICAgLy8gdG8gYmUgYnVmZmVyZWQgYnV0IHRoZSBidWZmZXIgaXMgZnVsbCwgdGhlIHVzZXIgYWdlbnQgbXVzdCBmbGFnXG4gICAgICAvLyB0aGUgV2ViU29ja2V0IGFzIGZ1bGwgYW5kIHRoZW4gY2xvc2UgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuICAgICAgLy8gVGhlIGRhdGEgdG8gYmUgc2VudCBpcyB0aGUgZGF0YSBzdG9yZWQgaW4gdGhlIGJ1ZmZlciBkZXNjcmliZWRcbiAgICAgIC8vIGJ5IHRoZSBBcnJheUJ1ZmZlciBvYmplY3QuIEFueSBpbnZvY2F0aW9uIG9mIHRoaXMgbWV0aG9kIHdpdGggYW5cbiAgICAgIC8vIEFycmF5QnVmZmVyIGFyZ3VtZW50IHRoYXQgZG9lcyBub3QgdGhyb3cgYW4gZXhjZXB0aW9uIG11c3RcbiAgICAgIC8vIGluY3JlYXNlIHRoZSBidWZmZXJlZEFtb3VudCBhdHRyaWJ1dGUgYnkgdGhlIGxlbmd0aCBvZiB0aGVcbiAgICAgIC8vIEFycmF5QnVmZmVyIGluIGJ5dGVzLlxuXG4gICAgICBjb25zdCB2YWx1ZSA9IEJ1ZmZlci5mcm9tKGRhdGEpXG4gICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQodmFsdWUpXG4gICAgICBjb25zdCBidWZmZXIgPSBmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLkJJTkFSWSlcblxuICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgKz0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgc29ja2V0LndyaXRlKGJ1ZmZlciwgKCkgPT4ge1xuICAgICAgICB0aGlzLiNidWZmZXJlZEFtb3VudCAtPSB2YWx1ZS5ieXRlTGVuZ3RoXG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAoQXJyYXlCdWZmZXIuaXNWaWV3KGRhdGEpKSB7XG4gICAgICAvLyBJZiB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gaXMgZXN0YWJsaXNoZWQsIGFuZCB0aGUgV2ViU29ja2V0XG4gICAgICAvLyBjbG9zaW5nIGhhbmRzaGFrZSBoYXMgbm90IHlldCBzdGFydGVkLCB0aGVuIHRoZSB1c2VyIGFnZW50IG11c3RcbiAgICAgIC8vIHNlbmQgYSBXZWJTb2NrZXQgTWVzc2FnZSBjb21wcmlzZWQgb2YgZGF0YSB1c2luZyBhIGJpbmFyeSBmcmFtZVxuICAgICAgLy8gb3Bjb2RlOyBpZiB0aGUgZGF0YSBjYW5ub3QgYmUgc2VudCwgZS5nLiBiZWNhdXNlIGl0IHdvdWxkIG5lZWQgdG9cbiAgICAgIC8vIGJlIGJ1ZmZlcmVkIGJ1dCB0aGUgYnVmZmVyIGlzIGZ1bGwsIHRoZSB1c2VyIGFnZW50IG11c3QgZmxhZyB0aGVcbiAgICAgIC8vIFdlYlNvY2tldCBhcyBmdWxsIGFuZCB0aGVuIGNsb3NlIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi4gVGhlXG4gICAgICAvLyBkYXRhIHRvIGJlIHNlbnQgaXMgdGhlIGRhdGEgc3RvcmVkIGluIHRoZSBzZWN0aW9uIG9mIHRoZSBidWZmZXJcbiAgICAgIC8vIGRlc2NyaWJlZCBieSB0aGUgQXJyYXlCdWZmZXIgb2JqZWN0IHRoYXQgZGF0YSByZWZlcmVuY2VzLiBBbnlcbiAgICAgIC8vIGludm9jYXRpb24gb2YgdGhpcyBtZXRob2Qgd2l0aCB0aGlzIGtpbmQgb2YgYXJndW1lbnQgdGhhdCBkb2VzXG4gICAgICAvLyBub3QgdGhyb3cgYW4gZXhjZXB0aW9uIG11c3QgaW5jcmVhc2UgdGhlIGJ1ZmZlcmVkQW1vdW50IGF0dHJpYnV0ZVxuICAgICAgLy8gYnkgdGhlIGxlbmd0aCBvZiBkYXRhXHUyMDE5cyBidWZmZXIgaW4gYnl0ZXMuXG5cbiAgICAgIGNvbnN0IGFiID0gQnVmZmVyLmZyb20oZGF0YSwgZGF0YS5ieXRlT2Zmc2V0LCBkYXRhLmJ5dGVMZW5ndGgpXG5cbiAgICAgIGNvbnN0IGZyYW1lID0gbmV3IFdlYnNvY2tldEZyYW1lU2VuZChhYilcbiAgICAgIGNvbnN0IGJ1ZmZlciA9IGZyYW1lLmNyZWF0ZUZyYW1lKG9wY29kZXMuQklOQVJZKVxuXG4gICAgICB0aGlzLiNidWZmZXJlZEFtb3VudCArPSBhYi5ieXRlTGVuZ3RoXG4gICAgICBzb2NrZXQud3JpdGUoYnVmZmVyLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuI2J1ZmZlcmVkQW1vdW50IC09IGFiLmJ5dGVMZW5ndGhcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmIChpc0Jsb2JMaWtlKGRhdGEpKSB7XG4gICAgICAvLyBJZiB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gaXMgZXN0YWJsaXNoZWQsIGFuZCB0aGUgV2ViU29ja2V0XG4gICAgICAvLyBjbG9zaW5nIGhhbmRzaGFrZSBoYXMgbm90IHlldCBzdGFydGVkLCB0aGVuIHRoZSB1c2VyIGFnZW50IG11c3RcbiAgICAgIC8vIHNlbmQgYSBXZWJTb2NrZXQgTWVzc2FnZSBjb21wcmlzZWQgb2YgZGF0YSB1c2luZyBhIGJpbmFyeSBmcmFtZVxuICAgICAgLy8gb3Bjb2RlOyBpZiB0aGUgZGF0YSBjYW5ub3QgYmUgc2VudCwgZS5nLiBiZWNhdXNlIGl0IHdvdWxkIG5lZWQgdG9cbiAgICAgIC8vIGJlIGJ1ZmZlcmVkIGJ1dCB0aGUgYnVmZmVyIGlzIGZ1bGwsIHRoZSB1c2VyIGFnZW50IG11c3QgZmxhZyB0aGVcbiAgICAgIC8vIFdlYlNvY2tldCBhcyBmdWxsIGFuZCB0aGVuIGNsb3NlIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi4gVGhlIGRhdGFcbiAgICAgIC8vIHRvIGJlIHNlbnQgaXMgdGhlIHJhdyBkYXRhIHJlcHJlc2VudGVkIGJ5IHRoZSBCbG9iIG9iamVjdC4gQW55XG4gICAgICAvLyBpbnZvY2F0aW9uIG9mIHRoaXMgbWV0aG9kIHdpdGggYSBCbG9iIGFyZ3VtZW50IHRoYXQgZG9lcyBub3QgdGhyb3dcbiAgICAgIC8vIGFuIGV4Y2VwdGlvbiBtdXN0IGluY3JlYXNlIHRoZSBidWZmZXJlZEFtb3VudCBhdHRyaWJ1dGUgYnkgdGhlIHNpemVcbiAgICAgIC8vIG9mIHRoZSBCbG9iIG9iamVjdFx1MjAxOXMgcmF3IGRhdGEsIGluIGJ5dGVzLlxuXG4gICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQoKVxuXG4gICAgICBkYXRhLmFycmF5QnVmZmVyKCkudGhlbigoYWIpID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBCdWZmZXIuZnJvbShhYilcbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhID0gdmFsdWVcbiAgICAgICAgY29uc3QgYnVmZmVyID0gZnJhbWUuY3JlYXRlRnJhbWUob3Bjb2Rlcy5CSU5BUlkpXG5cbiAgICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgKz0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgICBzb2NrZXQud3JpdGUoYnVmZmVyLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgLT0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgICB9KVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBnZXQgcmVhZHlTdGF0ZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgLy8gVGhlIHJlYWR5U3RhdGUgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpcydzIHJlYWR5IHN0YXRlLlxuICAgIHJldHVybiB0aGlzW2tSZWFkeVN0YXRlXVxuICB9XG5cbiAgZ2V0IGJ1ZmZlcmVkQW1vdW50ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICByZXR1cm4gdGhpcy4jYnVmZmVyZWRBbW91bnRcbiAgfVxuXG4gIGdldCB1cmwgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIC8vIFRoZSB1cmwgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpcydzIHVybCwgc2VyaWFsaXplZC5cbiAgICByZXR1cm4gVVJMU2VyaWFsaXplcih0aGlzW2tXZWJTb2NrZXRVUkxdKVxuICB9XG5cbiAgZ2V0IGV4dGVuc2lvbnMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIHJldHVybiB0aGlzLiNleHRlbnNpb25zXG4gIH1cblxuICBnZXQgcHJvdG9jb2wgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIHJldHVybiB0aGlzLiNwcm90b2NvbFxuICB9XG5cbiAgZ2V0IG9ub3BlbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50cy5vcGVuXG4gIH1cblxuICBzZXQgb25vcGVuIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIGlmICh0aGlzLiNldmVudHMub3Blbikge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdvcGVuJywgdGhpcy4jZXZlbnRzLm9wZW4pXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy4jZXZlbnRzLm9wZW4gPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdvcGVuJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5vcGVuID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBvbmVycm9yICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRzLmVycm9yXG4gIH1cblxuICBzZXQgb25lcnJvciAoZm4pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICBpZiAodGhpcy4jZXZlbnRzLmVycm9yKSB7XG4gICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgdGhpcy4jZXZlbnRzLmVycm9yKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5lcnJvciA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5lcnJvciA9IG51bGxcbiAgICB9XG4gIH1cblxuICBnZXQgb25jbG9zZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50cy5jbG9zZVxuICB9XG5cbiAgc2V0IG9uY2xvc2UgKGZuKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgaWYgKHRoaXMuI2V2ZW50cy5jbG9zZSkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdjbG9zZScsIHRoaXMuI2V2ZW50cy5jbG9zZSlcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzLiNldmVudHMuY2xvc2UgPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjbG9zZScsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNldmVudHMuY2xvc2UgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgZ2V0IG9ubWVzc2FnZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50cy5tZXNzYWdlXG4gIH1cblxuICBzZXQgb25tZXNzYWdlIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIGlmICh0aGlzLiNldmVudHMubWVzc2FnZSkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgdGhpcy4jZXZlbnRzLm1lc3NhZ2UpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy4jZXZlbnRzLm1lc3NhZ2UgPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5tZXNzYWdlID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBiaW5hcnlUeXBlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICByZXR1cm4gdGhpc1trQmluYXJ5VHlwZV1cbiAgfVxuXG4gIHNldCBiaW5hcnlUeXBlICh0eXBlKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgaWYgKHR5cGUgIT09ICdibG9iJyAmJiB0eXBlICE9PSAnYXJyYXlidWZmZXInKSB7XG4gICAgICB0aGlzW2tCaW5hcnlUeXBlXSA9ICdibG9iJ1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tCaW5hcnlUeXBlXSA9IHR5cGVcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyNmZWVkYmFjay1mcm9tLXRoZS1wcm90b2NvbFxuICAgKi9cbiAgI29uQ29ubmVjdGlvbkVzdGFibGlzaGVkIChyZXNwb25zZSkge1xuICAgIC8vIHByb2Nlc3NSZXNwb25zZSBpcyBjYWxsZWQgd2hlbiB0aGUgXCJyZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QgaGFzIGJlZW4gcmVjZWl2ZWQgYW5kIGluaXRpYWxpemVkLlwiXG4gICAgLy8gb25jZSB0aGlzIGhhcHBlbnMsIHRoZSBjb25uZWN0aW9uIGlzIG9wZW5cbiAgICB0aGlzW2tSZXNwb25zZV0gPSByZXNwb25zZVxuXG4gICAgY29uc3QgcGFyc2VyID0gbmV3IEJ5dGVQYXJzZXIodGhpcylcbiAgICBwYXJzZXIub24oJ2RyYWluJywgZnVuY3Rpb24gb25QYXJzZXJEcmFpbiAoKSB7XG4gICAgICB0aGlzLndzW2tSZXNwb25zZV0uc29ja2V0LnJlc3VtZSgpXG4gICAgfSlcblxuICAgIHJlc3BvbnNlLnNvY2tldC53cyA9IHRoaXNcbiAgICB0aGlzW2tCeXRlUGFyc2VyXSA9IHBhcnNlclxuXG4gICAgLy8gMS4gQ2hhbmdlIHRoZSByZWFkeSBzdGF0ZSB0byBPUEVOICgxKS5cbiAgICB0aGlzW2tSZWFkeVN0YXRlXSA9IHN0YXRlcy5PUEVOXG5cbiAgICAvLyAyLiBDaGFuZ2UgdGhlIGV4dGVuc2lvbnMgYXR0cmlidXRlXHUyMDE5cyB2YWx1ZSB0byB0aGUgZXh0ZW5zaW9ucyBpbiB1c2UsIGlmXG4gICAgLy8gICAgaXQgaXMgbm90IHRoZSBudWxsIHZhbHVlLlxuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTkuMVxuICAgIGNvbnN0IGV4dGVuc2lvbnMgPSByZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ3NlYy13ZWJzb2NrZXQtZXh0ZW5zaW9ucycpXG5cbiAgICBpZiAoZXh0ZW5zaW9ucyAhPT0gbnVsbCkge1xuICAgICAgdGhpcy4jZXh0ZW5zaW9ucyA9IGV4dGVuc2lvbnNcbiAgICB9XG5cbiAgICAvLyAzLiBDaGFuZ2UgdGhlIHByb3RvY29sIGF0dHJpYnV0ZVx1MjAxOXMgdmFsdWUgdG8gdGhlIHN1YnByb3RvY29sIGluIHVzZSwgaWZcbiAgICAvLyAgICBpdCBpcyBub3QgdGhlIG51bGwgdmFsdWUuXG4gICAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM2NDU1I3NlY3Rpb24tMS45XG4gICAgY29uc3QgcHJvdG9jb2wgPSByZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ3NlYy13ZWJzb2NrZXQtcHJvdG9jb2wnKVxuXG4gICAgaWYgKHByb3RvY29sICE9PSBudWxsKSB7XG4gICAgICB0aGlzLiNwcm90b2NvbCA9IHByb3RvY29sXG4gICAgfVxuXG4gICAgLy8gNC4gRmlyZSBhbiBldmVudCBuYW1lZCBvcGVuIGF0IHRoZSBXZWJTb2NrZXQgb2JqZWN0LlxuICAgIGZpcmVFdmVudCgnb3BlbicsIHRoaXMpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZG9tLXdlYnNvY2tldC1jb25uZWN0aW5nXG5XZWJTb2NrZXQuQ09OTkVDVElORyA9IFdlYlNvY2tldC5wcm90b3R5cGUuQ09OTkVDVElORyA9IHN0YXRlcy5DT05ORUNUSU5HXG4vLyBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyNkb20td2Vic29ja2V0LW9wZW5cbldlYlNvY2tldC5PUEVOID0gV2ViU29ja2V0LnByb3RvdHlwZS5PUEVOID0gc3RhdGVzLk9QRU5cbi8vIGh0dHBzOi8vd2Vic29ja2V0cy5zcGVjLndoYXR3Zy5vcmcvI2RvbS13ZWJzb2NrZXQtY2xvc2luZ1xuV2ViU29ja2V0LkNMT1NJTkcgPSBXZWJTb2NrZXQucHJvdG90eXBlLkNMT1NJTkcgPSBzdGF0ZXMuQ0xPU0lOR1xuLy8gaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZG9tLXdlYnNvY2tldC1jbG9zZWRcbldlYlNvY2tldC5DTE9TRUQgPSBXZWJTb2NrZXQucHJvdG90eXBlLkNMT1NFRCA9IHN0YXRlcy5DTE9TRURcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoV2ViU29ja2V0LnByb3RvdHlwZSwge1xuICBDT05ORUNUSU5HOiBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLFxuICBPUEVOOiBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLFxuICBDTE9TSU5HOiBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLFxuICBDTE9TRUQ6IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIHVybDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVhZHlTdGF0ZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYnVmZmVyZWRBbW91bnQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ub3Blbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgb25lcnJvcjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgb25jbG9zZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgY2xvc2U6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ubWVzc2FnZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYmluYXJ5VHlwZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgc2VuZDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZXh0ZW5zaW9uczoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcHJvdG9jb2w6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdXZWJTb2NrZXQnLFxuICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoV2ViU29ja2V0LCB7XG4gIENPTk5FQ1RJTkc6IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIE9QRU46IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIENMT1NJTkc6IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIENMT1NFRDogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9yc1xufSlcblxud2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPERPTVN0cmluZz4nXSA9IHdlYmlkbC5zZXF1ZW5jZUNvbnZlcnRlcihcbiAgd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nXG4pXG5cbndlYmlkbC5jb252ZXJ0ZXJzWydET01TdHJpbmcgb3Igc2VxdWVuY2U8RE9NU3RyaW5nPiddID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgPT09ICdPYmplY3QnICYmIFN5bWJvbC5pdGVyYXRvciBpbiBWKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxET01TdHJpbmc+J10oVilcbiAgfVxuXG4gIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcoVilcbn1cblxuLy8gVGhpcyBpbXBsZW1lbnRzIHRoZSBwcm9wc2FsIG1hZGUgaW4gaHR0cHM6Ly9naXRodWIuY29tL3doYXR3Zy93ZWJzb2NrZXRzL2lzc3Vlcy80Mlxud2ViaWRsLmNvbnZlcnRlcnMuV2ViU29ja2V0SW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAge1xuICAgIGtleTogJ3Byb3RvY29scycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1snRE9NU3RyaW5nIG9yIHNlcXVlbmNlPERPTVN0cmluZz4nXSxcbiAgICBnZXQgZGVmYXVsdFZhbHVlICgpIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cbiAgfSxcbiAge1xuICAgIGtleTogJ2Rpc3BhdGNoZXInLFxuICAgIGNvbnZlcnRlcjogKFYpID0+IFYsXG4gICAgZ2V0IGRlZmF1bHRWYWx1ZSAoKSB7XG4gICAgICByZXR1cm4gZ2V0R2xvYmFsRGlzcGF0Y2hlcigpXG4gICAgfVxuICB9LFxuICB7XG4gICAga2V5OiAnaGVhZGVycycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIod2ViaWRsLmNvbnZlcnRlcnMuSGVhZGVyc0luaXQpXG4gIH1cbl0pXG5cbndlYmlkbC5jb252ZXJ0ZXJzWydET01TdHJpbmcgb3Igc2VxdWVuY2U8RE9NU3RyaW5nPiBvciBXZWJTb2NrZXRJbml0J10gPSBmdW5jdGlvbiAoVikge1xuICBpZiAod2ViaWRsLnV0aWwuVHlwZShWKSA9PT0gJ09iamVjdCcgJiYgIShTeW1ib2wuaXRlcmF0b3IgaW4gVikpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuV2ViU29ja2V0SW5pdChWKVxuICB9XG5cbiAgcmV0dXJuIHsgcHJvdG9jb2xzOiB3ZWJpZGwuY29udmVydGVyc1snRE9NU3RyaW5nIG9yIHNlcXVlbmNlPERPTVN0cmluZz4nXShWKSB9XG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzLldlYlNvY2tldFNlbmREYXRhID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgPT09ICdPYmplY3QnKSB7XG4gICAgaWYgKGlzQmxvYkxpa2UoVikpIHtcbiAgICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5CbG9iKFYsIHsgc3RyaWN0OiBmYWxzZSB9KVxuICAgIH1cblxuICAgIGlmIChBcnJheUJ1ZmZlci5pc1ZpZXcoVikgfHwgdHlwZXMuaXNBbnlBcnJheUJ1ZmZlcihWKSkge1xuICAgICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkJ1ZmZlclNvdXJjZShWKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcoVilcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIFdlYlNvY2tldFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBDbGllbnQgPSByZXF1aXJlKCcuL2xpYi9jbGllbnQnKVxuY29uc3QgRGlzcGF0Y2hlciA9IHJlcXVpcmUoJy4vbGliL2Rpc3BhdGNoZXInKVxuY29uc3QgZXJyb3JzID0gcmVxdWlyZSgnLi9saWIvY29yZS9lcnJvcnMnKVxuY29uc3QgUG9vbCA9IHJlcXVpcmUoJy4vbGliL3Bvb2wnKVxuY29uc3QgQmFsYW5jZWRQb29sID0gcmVxdWlyZSgnLi9saWIvYmFsYW5jZWQtcG9vbCcpXG5jb25zdCBBZ2VudCA9IHJlcXVpcmUoJy4vbGliL2FnZW50JylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuL2xpYi9jb3JlL3V0aWwnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gZXJyb3JzXG5jb25zdCBhcGkgPSByZXF1aXJlKCcuL2xpYi9hcGknKVxuY29uc3QgYnVpbGRDb25uZWN0b3IgPSByZXF1aXJlKCcuL2xpYi9jb3JlL2Nvbm5lY3QnKVxuY29uc3QgTW9ja0NsaWVudCA9IHJlcXVpcmUoJy4vbGliL21vY2svbW9jay1jbGllbnQnKVxuY29uc3QgTW9ja0FnZW50ID0gcmVxdWlyZSgnLi9saWIvbW9jay9tb2NrLWFnZW50JylcbmNvbnN0IE1vY2tQb29sID0gcmVxdWlyZSgnLi9saWIvbW9jay9tb2NrLXBvb2wnKVxuY29uc3QgbW9ja0Vycm9ycyA9IHJlcXVpcmUoJy4vbGliL21vY2svbW9jay1lcnJvcnMnKVxuY29uc3QgUHJveHlBZ2VudCA9IHJlcXVpcmUoJy4vbGliL3Byb3h5LWFnZW50JylcbmNvbnN0IFJldHJ5SGFuZGxlciA9IHJlcXVpcmUoJy4vbGliL2hhbmRsZXIvUmV0cnlIYW5kbGVyJylcbmNvbnN0IHsgZ2V0R2xvYmFsRGlzcGF0Y2hlciwgc2V0R2xvYmFsRGlzcGF0Y2hlciB9ID0gcmVxdWlyZSgnLi9saWIvZ2xvYmFsJylcbmNvbnN0IERlY29yYXRvckhhbmRsZXIgPSByZXF1aXJlKCcuL2xpYi9oYW5kbGVyL0RlY29yYXRvckhhbmRsZXInKVxuY29uc3QgUmVkaXJlY3RIYW5kbGVyID0gcmVxdWlyZSgnLi9saWIvaGFuZGxlci9SZWRpcmVjdEhhbmRsZXInKVxuY29uc3QgY3JlYXRlUmVkaXJlY3RJbnRlcmNlcHRvciA9IHJlcXVpcmUoJy4vbGliL2ludGVyY2VwdG9yL3JlZGlyZWN0SW50ZXJjZXB0b3InKVxuXG5sZXQgaGFzQ3J5cHRvXG50cnkge1xuICByZXF1aXJlKCdjcnlwdG8nKVxuICBoYXNDcnlwdG8gPSB0cnVlXG59IGNhdGNoIHtcbiAgaGFzQ3J5cHRvID0gZmFsc2Vcbn1cblxuT2JqZWN0LmFzc2lnbihEaXNwYXRjaGVyLnByb3RvdHlwZSwgYXBpKVxuXG5tb2R1bGUuZXhwb3J0cy5EaXNwYXRjaGVyID0gRGlzcGF0Y2hlclxubW9kdWxlLmV4cG9ydHMuQ2xpZW50ID0gQ2xpZW50XG5tb2R1bGUuZXhwb3J0cy5Qb29sID0gUG9vbFxubW9kdWxlLmV4cG9ydHMuQmFsYW5jZWRQb29sID0gQmFsYW5jZWRQb29sXG5tb2R1bGUuZXhwb3J0cy5BZ2VudCA9IEFnZW50XG5tb2R1bGUuZXhwb3J0cy5Qcm94eUFnZW50ID0gUHJveHlBZ2VudFxubW9kdWxlLmV4cG9ydHMuUmV0cnlIYW5kbGVyID0gUmV0cnlIYW5kbGVyXG5cbm1vZHVsZS5leHBvcnRzLkRlY29yYXRvckhhbmRsZXIgPSBEZWNvcmF0b3JIYW5kbGVyXG5tb2R1bGUuZXhwb3J0cy5SZWRpcmVjdEhhbmRsZXIgPSBSZWRpcmVjdEhhbmRsZXJcbm1vZHVsZS5leHBvcnRzLmNyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IgPSBjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yXG5cbm1vZHVsZS5leHBvcnRzLmJ1aWxkQ29ubmVjdG9yID0gYnVpbGRDb25uZWN0b3Jcbm1vZHVsZS5leHBvcnRzLmVycm9ycyA9IGVycm9yc1xuXG5mdW5jdGlvbiBtYWtlRGlzcGF0Y2hlciAoZm4pIHtcbiAgcmV0dXJuICh1cmwsIG9wdHMsIGhhbmRsZXIpID0+IHtcbiAgICBpZiAodHlwZW9mIG9wdHMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGhhbmRsZXIgPSBvcHRzXG4gICAgICBvcHRzID0gbnVsbFxuICAgIH1cblxuICAgIGlmICghdXJsIHx8ICh0eXBlb2YgdXJsICE9PSAnc3RyaW5nJyAmJiB0eXBlb2YgdXJsICE9PSAnb2JqZWN0JyAmJiAhKHVybCBpbnN0YW5jZW9mIFVSTCkpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgdXJsJylcbiAgICB9XG5cbiAgICBpZiAob3B0cyAhPSBudWxsICYmIHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMnKVxuICAgIH1cblxuICAgIGlmIChvcHRzICYmIG9wdHMucGF0aCAhPSBudWxsKSB7XG4gICAgICBpZiAodHlwZW9mIG9wdHMucGF0aCAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMucGF0aCcpXG4gICAgICB9XG5cbiAgICAgIGxldCBwYXRoID0gb3B0cy5wYXRoXG4gICAgICBpZiAoIW9wdHMucGF0aC5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgICAgcGF0aCA9IGAvJHtwYXRofWBcbiAgICAgIH1cblxuICAgICAgdXJsID0gbmV3IFVSTCh1dGlsLnBhcnNlT3JpZ2luKHVybCkub3JpZ2luICsgcGF0aClcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFvcHRzKSB7XG4gICAgICAgIG9wdHMgPSB0eXBlb2YgdXJsID09PSAnb2JqZWN0JyA/IHVybCA6IHt9XG4gICAgICB9XG5cbiAgICAgIHVybCA9IHV0aWwucGFyc2VVUkwodXJsKVxuICAgIH1cblxuICAgIGNvbnN0IHsgYWdlbnQsIGRpc3BhdGNoZXIgPSBnZXRHbG9iYWxEaXNwYXRjaGVyKCkgfSA9IG9wdHNcblxuICAgIGlmIChhZ2VudCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd1bnN1cHBvcnRlZCBvcHRzLmFnZW50LiBEaWQgeW91IG1lYW4gb3B0cy5jbGllbnQ/JylcbiAgICB9XG5cbiAgICByZXR1cm4gZm4uY2FsbChkaXNwYXRjaGVyLCB7XG4gICAgICAuLi5vcHRzLFxuICAgICAgb3JpZ2luOiB1cmwub3JpZ2luLFxuICAgICAgcGF0aDogdXJsLnNlYXJjaCA/IGAke3VybC5wYXRobmFtZX0ke3VybC5zZWFyY2h9YCA6IHVybC5wYXRobmFtZSxcbiAgICAgIG1ldGhvZDogb3B0cy5tZXRob2QgfHwgKG9wdHMuYm9keSA/ICdQVVQnIDogJ0dFVCcpXG4gICAgfSwgaGFuZGxlcilcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cy5zZXRHbG9iYWxEaXNwYXRjaGVyID0gc2V0R2xvYmFsRGlzcGF0Y2hlclxubW9kdWxlLmV4cG9ydHMuZ2V0R2xvYmFsRGlzcGF0Y2hlciA9IGdldEdsb2JhbERpc3BhdGNoZXJcblxuaWYgKHV0aWwubm9kZU1ham9yID4gMTYgfHwgKHV0aWwubm9kZU1ham9yID09PSAxNiAmJiB1dGlsLm5vZGVNaW5vciA+PSA4KSkge1xuICBsZXQgZmV0Y2hJbXBsID0gbnVsbFxuICBtb2R1bGUuZXhwb3J0cy5mZXRjaCA9IGFzeW5jIGZ1bmN0aW9uIGZldGNoIChyZXNvdXJjZSkge1xuICAgIGlmICghZmV0Y2hJbXBsKSB7XG4gICAgICBmZXRjaEltcGwgPSByZXF1aXJlKCcuL2xpYi9mZXRjaCcpLmZldGNoXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBmZXRjaEltcGwoLi4uYXJndW1lbnRzKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKHR5cGVvZiBlcnIgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKGVyciwgdGhpcylcbiAgICAgIH1cblxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG4gIG1vZHVsZS5leHBvcnRzLkhlYWRlcnMgPSByZXF1aXJlKCcuL2xpYi9mZXRjaC9oZWFkZXJzJykuSGVhZGVyc1xuICBtb2R1bGUuZXhwb3J0cy5SZXNwb25zZSA9IHJlcXVpcmUoJy4vbGliL2ZldGNoL3Jlc3BvbnNlJykuUmVzcG9uc2VcbiAgbW9kdWxlLmV4cG9ydHMuUmVxdWVzdCA9IHJlcXVpcmUoJy4vbGliL2ZldGNoL3JlcXVlc3QnKS5SZXF1ZXN0XG4gIG1vZHVsZS5leHBvcnRzLkZvcm1EYXRhID0gcmVxdWlyZSgnLi9saWIvZmV0Y2gvZm9ybWRhdGEnKS5Gb3JtRGF0YVxuICBtb2R1bGUuZXhwb3J0cy5GaWxlID0gcmVxdWlyZSgnLi9saWIvZmV0Y2gvZmlsZScpLkZpbGVcbiAgbW9kdWxlLmV4cG9ydHMuRmlsZVJlYWRlciA9IHJlcXVpcmUoJy4vbGliL2ZpbGVhcGkvZmlsZXJlYWRlcicpLkZpbGVSZWFkZXJcblxuICBjb25zdCB7IHNldEdsb2JhbE9yaWdpbiwgZ2V0R2xvYmFsT3JpZ2luIH0gPSByZXF1aXJlKCcuL2xpYi9mZXRjaC9nbG9iYWwnKVxuXG4gIG1vZHVsZS5leHBvcnRzLnNldEdsb2JhbE9yaWdpbiA9IHNldEdsb2JhbE9yaWdpblxuICBtb2R1bGUuZXhwb3J0cy5nZXRHbG9iYWxPcmlnaW4gPSBnZXRHbG9iYWxPcmlnaW5cblxuICBjb25zdCB7IENhY2hlU3RvcmFnZSB9ID0gcmVxdWlyZSgnLi9saWIvY2FjaGUvY2FjaGVzdG9yYWdlJylcbiAgY29uc3QgeyBrQ29uc3RydWN0IH0gPSByZXF1aXJlKCcuL2xpYi9jYWNoZS9zeW1ib2xzJylcblxuICAvLyBDYWNoZSAmIENhY2hlU3RvcmFnZSBhcmUgdGlnaHRseSBjb3VwbGVkIHdpdGggZmV0Y2guIEV2ZW4gaWYgaXQgbWF5IHJ1blxuICAvLyBpbiBhbiBvbGRlciB2ZXJzaW9uIG9mIE5vZGUsIGl0IGRvZXNuJ3QgaGF2ZSBhbnkgdXNlIHdpdGhvdXQgZmV0Y2guXG4gIG1vZHVsZS5leHBvcnRzLmNhY2hlcyA9IG5ldyBDYWNoZVN0b3JhZ2Uoa0NvbnN0cnVjdClcbn1cblxuaWYgKHV0aWwubm9kZU1ham9yID49IDE2KSB7XG4gIGNvbnN0IHsgZGVsZXRlQ29va2llLCBnZXRDb29raWVzLCBnZXRTZXRDb29raWVzLCBzZXRDb29raWUgfSA9IHJlcXVpcmUoJy4vbGliL2Nvb2tpZXMnKVxuXG4gIG1vZHVsZS5leHBvcnRzLmRlbGV0ZUNvb2tpZSA9IGRlbGV0ZUNvb2tpZVxuICBtb2R1bGUuZXhwb3J0cy5nZXRDb29raWVzID0gZ2V0Q29va2llc1xuICBtb2R1bGUuZXhwb3J0cy5nZXRTZXRDb29raWVzID0gZ2V0U2V0Q29va2llc1xuICBtb2R1bGUuZXhwb3J0cy5zZXRDb29raWUgPSBzZXRDb29raWVcblxuICBjb25zdCB7IHBhcnNlTUlNRVR5cGUsIHNlcmlhbGl6ZUFNaW1lVHlwZSB9ID0gcmVxdWlyZSgnLi9saWIvZmV0Y2gvZGF0YVVSTCcpXG5cbiAgbW9kdWxlLmV4cG9ydHMucGFyc2VNSU1FVHlwZSA9IHBhcnNlTUlNRVR5cGVcbiAgbW9kdWxlLmV4cG9ydHMuc2VyaWFsaXplQU1pbWVUeXBlID0gc2VyaWFsaXplQU1pbWVUeXBlXG59XG5cbmlmICh1dGlsLm5vZGVNYWpvciA+PSAxOCAmJiBoYXNDcnlwdG8pIHtcbiAgY29uc3QgeyBXZWJTb2NrZXQgfSA9IHJlcXVpcmUoJy4vbGliL3dlYnNvY2tldC93ZWJzb2NrZXQnKVxuXG4gIG1vZHVsZS5leHBvcnRzLldlYlNvY2tldCA9IFdlYlNvY2tldFxufVxuXG5tb2R1bGUuZXhwb3J0cy5yZXF1ZXN0ID0gbWFrZURpc3BhdGNoZXIoYXBpLnJlcXVlc3QpXG5tb2R1bGUuZXhwb3J0cy5zdHJlYW0gPSBtYWtlRGlzcGF0Y2hlcihhcGkuc3RyZWFtKVxubW9kdWxlLmV4cG9ydHMucGlwZWxpbmUgPSBtYWtlRGlzcGF0Y2hlcihhcGkucGlwZWxpbmUpXG5tb2R1bGUuZXhwb3J0cy5jb25uZWN0ID0gbWFrZURpc3BhdGNoZXIoYXBpLmNvbm5lY3QpXG5tb2R1bGUuZXhwb3J0cy51cGdyYWRlID0gbWFrZURpc3BhdGNoZXIoYXBpLnVwZ3JhZGUpXG5cbm1vZHVsZS5leHBvcnRzLk1vY2tDbGllbnQgPSBNb2NrQ2xpZW50XG5tb2R1bGUuZXhwb3J0cy5Nb2NrUG9vbCA9IE1vY2tQb29sXG5tb2R1bGUuZXhwb3J0cy5Nb2NrQWdlbnQgPSBNb2NrQWdlbnRcbm1vZHVsZS5leHBvcnRzLm1vY2tFcnJvcnMgPSBtb2NrRXJyb3JzXG4iLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCAiKGZ1bmN0aW9uIChnbG9iYWwsIGZhY3RvcnkpIHtcbiAgICB0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgPyBmYWN0b3J5KGV4cG9ydHMpIDpcbiAgICB0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQgPyBkZWZpbmUoWydleHBvcnRzJ10sIGZhY3RvcnkpIDpcbiAgICAoZmFjdG9yeSgoZ2xvYmFsLmFzeW5jID0ge30pKSk7XG59KHRoaXMsIChmdW5jdGlvbiAoZXhwb3J0cykgeyAndXNlIHN0cmljdCc7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgY29udGludWF0aW9uIGZ1bmN0aW9uIHdpdGggc29tZSBhcmd1bWVudHMgYWxyZWFkeSBhcHBsaWVkLlxuICAgICAqXG4gICAgICogVXNlZnVsIGFzIGEgc2hvcnRoYW5kIHdoZW4gY29tYmluZWQgd2l0aCBvdGhlciBjb250cm9sIGZsb3cgZnVuY3Rpb25zLiBBbnlcbiAgICAgKiBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSByZXR1cm5lZCBmdW5jdGlvbiBhcmUgYWRkZWQgdG8gdGhlIGFyZ3VtZW50c1xuICAgICAqIG9yaWdpbmFsbHkgcGFzc2VkIHRvIGFwcGx5LlxuICAgICAqXG4gICAgICogQG5hbWUgYXBwbHlcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGZuIC0gVGhlIGZ1bmN0aW9uIHlvdSB3YW50IHRvIGV2ZW50dWFsbHkgYXBwbHkgYWxsXG4gICAgICogYXJndW1lbnRzIHRvLiBJbnZva2VzIHdpdGggKGFyZ3VtZW50cy4uLikuXG4gICAgICogQHBhcmFtIHsuLi4qfSBhcmd1bWVudHMuLi4gLSBBbnkgbnVtYmVyIG9mIGFyZ3VtZW50cyB0byBhdXRvbWF0aWNhbGx5IGFwcGx5XG4gICAgICogd2hlbiB0aGUgY29udGludWF0aW9uIGlzIGNhbGxlZC5cbiAgICAgKiBAcmV0dXJucyB7RnVuY3Rpb259IHRoZSBwYXJ0aWFsbHktYXBwbGllZCBmdW5jdGlvblxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyB1c2luZyBhcHBseVxuICAgICAqIGFzeW5jLnBhcmFsbGVsKFtcbiAgICAgKiAgICAgYXN5bmMuYXBwbHkoZnMud3JpdGVGaWxlLCAndGVzdGZpbGUxJywgJ3Rlc3QxJyksXG4gICAgICogICAgIGFzeW5jLmFwcGx5KGZzLndyaXRlRmlsZSwgJ3Rlc3RmaWxlMicsICd0ZXN0MicpXG4gICAgICogXSk7XG4gICAgICpcbiAgICAgKlxuICAgICAqIC8vIHRoZSBzYW1lIHByb2Nlc3Mgd2l0aG91dCB1c2luZyBhcHBseVxuICAgICAqIGFzeW5jLnBhcmFsbGVsKFtcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIGZzLndyaXRlRmlsZSgndGVzdGZpbGUxJywgJ3Rlc3QxJywgY2FsbGJhY2spO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgZnMud3JpdGVGaWxlKCd0ZXN0ZmlsZTInLCAndGVzdDInLCBjYWxsYmFjayk7XG4gICAgICogICAgIH1cbiAgICAgKiBdKTtcbiAgICAgKlxuICAgICAqIC8vIEl0J3MgcG9zc2libGUgdG8gcGFzcyBhbnkgbnVtYmVyIG9mIGFkZGl0aW9uYWwgYXJndW1lbnRzIHdoZW4gY2FsbGluZyB0aGVcbiAgICAgKiAvLyBjb250aW51YXRpb246XG4gICAgICpcbiAgICAgKiBub2RlPiB2YXIgZm4gPSBhc3luYy5hcHBseShzeXMucHV0cywgJ29uZScpO1xuICAgICAqIG5vZGU+IGZuKCd0d28nLCAndGhyZWUnKTtcbiAgICAgKiBvbmVcbiAgICAgKiB0d29cbiAgICAgKiB0aHJlZVxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGFwcGx5KGZuLCAuLi5hcmdzKSB7XG4gICAgICAgIHJldHVybiAoLi4uY2FsbEFyZ3MpID0+IGZuKC4uLmFyZ3MsLi4uY2FsbEFyZ3MpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGluaXRpYWxQYXJhbXMgKGZuKSB7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJncy8qLCBjYWxsYmFjayovKSB7XG4gICAgICAgICAgICB2YXIgY2FsbGJhY2sgPSBhcmdzLnBvcCgpO1xuICAgICAgICAgICAgcmV0dXJuIGZuLmNhbGwodGhpcywgYXJncywgY2FsbGJhY2spO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG5cbiAgICB2YXIgaGFzUXVldWVNaWNyb3Rhc2sgPSB0eXBlb2YgcXVldWVNaWNyb3Rhc2sgPT09ICdmdW5jdGlvbicgJiYgcXVldWVNaWNyb3Rhc2s7XG4gICAgdmFyIGhhc1NldEltbWVkaWF0ZSA9IHR5cGVvZiBzZXRJbW1lZGlhdGUgPT09ICdmdW5jdGlvbicgJiYgc2V0SW1tZWRpYXRlO1xuICAgIHZhciBoYXNOZXh0VGljayA9IHR5cGVvZiBwcm9jZXNzID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgcHJvY2Vzcy5uZXh0VGljayA9PT0gJ2Z1bmN0aW9uJztcblxuICAgIGZ1bmN0aW9uIGZhbGxiYWNrKGZuKSB7XG4gICAgICAgIHNldFRpbWVvdXQoZm4sIDApO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHdyYXAoZGVmZXIpIHtcbiAgICAgICAgcmV0dXJuIChmbiwgLi4uYXJncykgPT4gZGVmZXIoKCkgPT4gZm4oLi4uYXJncykpO1xuICAgIH1cblxuICAgIHZhciBfZGVmZXI7XG5cbiAgICBpZiAoaGFzUXVldWVNaWNyb3Rhc2spIHtcbiAgICAgICAgX2RlZmVyID0gcXVldWVNaWNyb3Rhc2s7XG4gICAgfSBlbHNlIGlmIChoYXNTZXRJbW1lZGlhdGUpIHtcbiAgICAgICAgX2RlZmVyID0gc2V0SW1tZWRpYXRlO1xuICAgIH0gZWxzZSBpZiAoaGFzTmV4dFRpY2spIHtcbiAgICAgICAgX2RlZmVyID0gcHJvY2Vzcy5uZXh0VGljaztcbiAgICB9IGVsc2Uge1xuICAgICAgICBfZGVmZXIgPSBmYWxsYmFjaztcbiAgICB9XG5cbiAgICB2YXIgc2V0SW1tZWRpYXRlJDEgPSB3cmFwKF9kZWZlcik7XG5cbiAgICAvKipcbiAgICAgKiBUYWtlIGEgc3luYyBmdW5jdGlvbiBhbmQgbWFrZSBpdCBhc3luYywgcGFzc2luZyBpdHMgcmV0dXJuIHZhbHVlIHRvIGFcbiAgICAgKiBjYWxsYmFjay4gVGhpcyBpcyB1c2VmdWwgZm9yIHBsdWdnaW5nIHN5bmMgZnVuY3Rpb25zIGludG8gYSB3YXRlcmZhbGwsXG4gICAgICogc2VyaWVzLCBvciBvdGhlciBhc3luYyBmdW5jdGlvbnMuIEFueSBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBnZW5lcmF0ZWRcbiAgICAgKiBmdW5jdGlvbiB3aWxsIGJlIHBhc3NlZCB0byB0aGUgd3JhcHBlZCBmdW5jdGlvbiAoZXhjZXB0IGZvciB0aGUgZmluYWxcbiAgICAgKiBjYWxsYmFjayBhcmd1bWVudCkuIEVycm9ycyB0aHJvd24gd2lsbCBiZSBwYXNzZWQgdG8gdGhlIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogSWYgdGhlIGZ1bmN0aW9uIHBhc3NlZCB0byBgYXN5bmNpZnlgIHJldHVybnMgYSBQcm9taXNlLCB0aGF0IHByb21pc2VzJ3NcbiAgICAgKiByZXNvbHZlZC9yZWplY3RlZCBzdGF0ZSB3aWxsIGJlIHVzZWQgdG8gY2FsbCB0aGUgY2FsbGJhY2ssIHJhdGhlciB0aGFuIHNpbXBseVxuICAgICAqIHRoZSBzeW5jaHJvbm91cyByZXR1cm4gdmFsdWUuXG4gICAgICpcbiAgICAgKiBUaGlzIGFsc28gbWVhbnMgeW91IGNhbiBhc3luY2lmeSBFUzIwMTcgYGFzeW5jYCBmdW5jdGlvbnMuXG4gICAgICpcbiAgICAgKiBAbmFtZSBhc3luY2lmeVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOlV0aWxzXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBhbGlhcyB3cmFwU3luY1xuICAgICAqIEBjYXRlZ29yeSBVdGlsXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyAtIFRoZSBzeW5jaHJvbm91cyBmdW5jdGlvbiwgb3IgUHJvbWlzZS1yZXR1cm5pbmdcbiAgICAgKiBmdW5jdGlvbiB0byBjb252ZXJ0IHRvIGFuIHtAbGluayBBc3luY0Z1bmN0aW9ufS5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gQW4gYXN5bmNocm9ub3VzIHdyYXBwZXIgb2YgdGhlIGBmdW5jYC4gVG8gYmVcbiAgICAgKiBpbnZva2VkIHdpdGggYChhcmdzLi4uLCBjYWxsYmFjaylgLlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBwYXNzaW5nIGEgcmVndWxhciBzeW5jaHJvbm91cyBmdW5jdGlvblxuICAgICAqIGFzeW5jLndhdGVyZmFsbChbXG4gICAgICogICAgIGFzeW5jLmFwcGx5KGZzLnJlYWRGaWxlLCBmaWxlbmFtZSwgXCJ1dGY4XCIpLFxuICAgICAqICAgICBhc3luYy5hc3luY2lmeShKU09OLnBhcnNlKSxcbiAgICAgKiAgICAgZnVuY3Rpb24gKGRhdGEsIG5leHQpIHtcbiAgICAgKiAgICAgICAgIC8vIGRhdGEgaXMgdGhlIHJlc3VsdCBvZiBwYXJzaW5nIHRoZSB0ZXh0LlxuICAgICAqICAgICAgICAgLy8gSWYgdGhlcmUgd2FzIGEgcGFyc2luZyBlcnJvciwgaXQgd291bGQgaGF2ZSBiZWVuIGNhdWdodC5cbiAgICAgKiAgICAgfVxuICAgICAqIF0sIGNhbGxiYWNrKTtcbiAgICAgKlxuICAgICAqIC8vIHBhc3NpbmcgYSBmdW5jdGlvbiByZXR1cm5pbmcgYSBwcm9taXNlXG4gICAgICogYXN5bmMud2F0ZXJmYWxsKFtcbiAgICAgKiAgICAgYXN5bmMuYXBwbHkoZnMucmVhZEZpbGUsIGZpbGVuYW1lLCBcInV0ZjhcIiksXG4gICAgICogICAgIGFzeW5jLmFzeW5jaWZ5KGZ1bmN0aW9uIChjb250ZW50cykge1xuICAgICAqICAgICAgICAgcmV0dXJuIGRiLm1vZGVsLmNyZWF0ZShjb250ZW50cyk7XG4gICAgICogICAgIH0pLFxuICAgICAqICAgICBmdW5jdGlvbiAobW9kZWwsIG5leHQpIHtcbiAgICAgKiAgICAgICAgIC8vIGBtb2RlbGAgaXMgdGhlIGluc3RhbnRpYXRlZCBtb2RlbCBvYmplY3QuXG4gICAgICogICAgICAgICAvLyBJZiB0aGVyZSB3YXMgYW4gZXJyb3IsIHRoaXMgZnVuY3Rpb24gd291bGQgYmUgc2tpcHBlZC5cbiAgICAgKiAgICAgfVxuICAgICAqIF0sIGNhbGxiYWNrKTtcbiAgICAgKlxuICAgICAqIC8vIGVzMjAxNyBleGFtcGxlLCB0aG91Z2ggYGFzeW5jaWZ5YCBpcyBub3QgbmVlZGVkIGlmIHlvdXIgSlMgZW52aXJvbm1lbnRcbiAgICAgKiAvLyBzdXBwb3J0cyBhc3luYyBmdW5jdGlvbnMgb3V0IG9mIHRoZSBib3hcbiAgICAgKiB2YXIgcSA9IGFzeW5jLnF1ZXVlKGFzeW5jLmFzeW5jaWZ5KGFzeW5jIGZ1bmN0aW9uKGZpbGUpIHtcbiAgICAgKiAgICAgdmFyIGludGVybWVkaWF0ZVN0ZXAgPSBhd2FpdCBwcm9jZXNzRmlsZShmaWxlKTtcbiAgICAgKiAgICAgcmV0dXJuIGF3YWl0IHNvbWVQcm9taXNlKGludGVybWVkaWF0ZVN0ZXApXG4gICAgICogfSkpO1xuICAgICAqXG4gICAgICogcS5wdXNoKGZpbGVzKTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBhc3luY2lmeShmdW5jKSB7XG4gICAgICAgIGlmIChpc0FzeW5jKGZ1bmMpKSB7XG4gICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gKC4uLmFyZ3MvKiwgY2FsbGJhY2sqLykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gYXJncy5wb3AoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwcm9taXNlID0gZnVuYy5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlUHJvbWlzZShwcm9taXNlLCBjYWxsYmFjaylcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpbml0aWFsUGFyYW1zKGZ1bmN0aW9uIChhcmdzLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgdmFyIHJlc3VsdDtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gZnVuYy5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBpZiByZXN1bHQgaXMgUHJvbWlzZSBvYmplY3RcbiAgICAgICAgICAgIGlmIChyZXN1bHQgJiYgdHlwZW9mIHJlc3VsdC50aGVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZVByb21pc2UocmVzdWx0LCBjYWxsYmFjaylcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgcmVzdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaGFuZGxlUHJvbWlzZShwcm9taXNlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gcHJvbWlzZS50aGVuKHZhbHVlID0+IHtcbiAgICAgICAgICAgIGludm9rZUNhbGxiYWNrKGNhbGxiYWNrLCBudWxsLCB2YWx1ZSk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICBpbnZva2VDYWxsYmFjayhjYWxsYmFjaywgZXJyICYmIGVyci5tZXNzYWdlID8gZXJyIDogbmV3IEVycm9yKGVycikpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpbnZva2VDYWxsYmFjayhjYWxsYmFjaywgZXJyb3IsIHZhbHVlKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjYWxsYmFjayhlcnJvciwgdmFsdWUpO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKGUgPT4geyB0aHJvdyBlIH0sIGVycik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc0FzeW5jKGZuKSB7XG4gICAgICAgIHJldHVybiBmbltTeW1ib2wudG9TdHJpbmdUYWddID09PSAnQXN5bmNGdW5jdGlvbic7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaXNBc3luY0dlbmVyYXRvcihmbikge1xuICAgICAgICByZXR1cm4gZm5bU3ltYm9sLnRvU3RyaW5nVGFnXSA9PT0gJ0FzeW5jR2VuZXJhdG9yJztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc0FzeW5jSXRlcmFibGUob2JqKSB7XG4gICAgICAgIHJldHVybiB0eXBlb2Ygb2JqW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9PT0gJ2Z1bmN0aW9uJztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB3cmFwQXN5bmMoYXN5bmNGbikge1xuICAgICAgICBpZiAodHlwZW9mIGFzeW5jRm4gIT09ICdmdW5jdGlvbicpIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgYSBmdW5jdGlvbicpXG4gICAgICAgIHJldHVybiBpc0FzeW5jKGFzeW5jRm4pID8gYXN5bmNpZnkoYXN5bmNGbikgOiBhc3luY0ZuO1xuICAgIH1cblxuICAgIC8vIGNvbmRpdGlvbmFsbHkgcHJvbWlzaWZ5IGEgZnVuY3Rpb24uXG4gICAgLy8gb25seSByZXR1cm4gYSBwcm9taXNlIGlmIGEgY2FsbGJhY2sgaXMgb21pdHRlZFxuICAgIGZ1bmN0aW9uIGF3YWl0aWZ5IChhc3luY0ZuLCBhcml0eSA9IGFzeW5jRm4ubGVuZ3RoKSB7XG4gICAgICAgIGlmICghYXJpdHkpIHRocm93IG5ldyBFcnJvcignYXJpdHkgaXMgdW5kZWZpbmVkJylcbiAgICAgICAgZnVuY3Rpb24gYXdhaXRhYmxlICguLi5hcmdzKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGFyZ3NbYXJpdHkgLSAxXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBhc3luY0ZuLmFwcGx5KHRoaXMsIGFyZ3MpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgYXJnc1thcml0eSAtIDFdID0gKGVyciwgLi4uY2JBcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiByZWplY3QoZXJyKVxuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGNiQXJncy5sZW5ndGggPiAxID8gY2JBcmdzIDogY2JBcmdzWzBdKTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGFzeW5jRm4uYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgICB9KVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGF3YWl0YWJsZVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGFwcGx5RWFjaCAoZWFjaGZuKSB7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiBhcHBseUVhY2goZm5zLCAuLi5jYWxsQXJncykge1xuICAgICAgICAgICAgY29uc3QgZ28gPSBhd2FpdGlmeShmdW5jdGlvbiAoY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICB2YXIgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGVhY2hmbihmbnMsIChmbiwgY2IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgd3JhcEFzeW5jKGZuKS5hcHBseSh0aGF0LCBjYWxsQXJncy5jb25jYXQoY2IpKTtcbiAgICAgICAgICAgICAgICB9LCBjYWxsYmFjayk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiBnbztcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfYXN5bmNNYXAoZWFjaGZuLCBhcnIsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICBhcnIgPSBhcnIgfHwgW107XG4gICAgICAgIHZhciByZXN1bHRzID0gW107XG4gICAgICAgIHZhciBjb3VudGVyID0gMDtcbiAgICAgICAgdmFyIF9pdGVyYXRlZSA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG5cbiAgICAgICAgcmV0dXJuIGVhY2hmbihhcnIsICh2YWx1ZSwgXywgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICB2YXIgaW5kZXggPSBjb3VudGVyKys7XG4gICAgICAgICAgICBfaXRlcmF0ZWUodmFsdWUsIChlcnIsIHYpID0+IHtcbiAgICAgICAgICAgICAgICByZXN1bHRzW2luZGV4XSA9IHY7XG4gICAgICAgICAgICAgICAgaXRlckNiKGVycik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICAgIGNhbGxiYWNrKGVyciwgcmVzdWx0cyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGlzQXJyYXlMaWtlKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZSAmJlxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlLmxlbmd0aCA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgICAgIHZhbHVlLmxlbmd0aCA+PSAwICYmXG4gICAgICAgICAgICB2YWx1ZS5sZW5ndGggJSAxID09PSAwO1xuICAgIH1cblxuICAgIC8vIEEgdGVtcG9yYXJ5IHZhbHVlIHVzZWQgdG8gaWRlbnRpZnkgaWYgdGhlIGxvb3Agc2hvdWxkIGJlIGJyb2tlbi5cbiAgICAvLyBTZWUgIzEwNjQsICMxMjkzXG4gICAgY29uc3QgYnJlYWtMb29wID0ge307XG5cbiAgICBmdW5jdGlvbiBvbmNlKGZuKSB7XG4gICAgICAgIGZ1bmN0aW9uIHdyYXBwZXIgKC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChmbiA9PT0gbnVsbCkgcmV0dXJuO1xuICAgICAgICAgICAgdmFyIGNhbGxGbiA9IGZuO1xuICAgICAgICAgICAgZm4gPSBudWxsO1xuICAgICAgICAgICAgY2FsbEZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24od3JhcHBlciwgZm4pO1xuICAgICAgICByZXR1cm4gd3JhcHBlclxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldEl0ZXJhdG9yIChjb2xsKSB7XG4gICAgICAgIHJldHVybiBjb2xsW1N5bWJvbC5pdGVyYXRvcl0gJiYgY29sbFtTeW1ib2wuaXRlcmF0b3JdKCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY3JlYXRlQXJyYXlJdGVyYXRvcihjb2xsKSB7XG4gICAgICAgIHZhciBpID0gLTE7XG4gICAgICAgIHZhciBsZW4gPSBjb2xsLmxlbmd0aDtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIG5leHQoKSB7XG4gICAgICAgICAgICByZXR1cm4gKytpIDwgbGVuID8ge3ZhbHVlOiBjb2xsW2ldLCBrZXk6IGl9IDogbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNyZWF0ZUVTMjAxNUl0ZXJhdG9yKGl0ZXJhdG9yKSB7XG4gICAgICAgIHZhciBpID0gLTE7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgICAgICAgdmFyIGl0ZW0gPSBpdGVyYXRvci5uZXh0KCk7XG4gICAgICAgICAgICBpZiAoaXRlbS5kb25lKVxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgaSsrO1xuICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogaXRlbS52YWx1ZSwga2V5OiBpfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNyZWF0ZU9iamVjdEl0ZXJhdG9yKG9iaikge1xuICAgICAgICB2YXIgb2tleXMgPSBvYmogPyBPYmplY3Qua2V5cyhvYmopIDogW107XG4gICAgICAgIHZhciBpID0gLTE7XG4gICAgICAgIHZhciBsZW4gPSBva2V5cy5sZW5ndGg7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgICAgICAgdmFyIGtleSA9IG9rZXlzWysraV07XG4gICAgICAgICAgICBpZiAoa2V5ID09PSAnX19wcm90b19fJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gaSA8IGxlbiA/IHt2YWx1ZTogb2JqW2tleV0sIGtleX0gOiBudWxsO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNyZWF0ZUl0ZXJhdG9yKGNvbGwpIHtcbiAgICAgICAgaWYgKGlzQXJyYXlMaWtlKGNvbGwpKSB7XG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlQXJyYXlJdGVyYXRvcihjb2xsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBpdGVyYXRvciA9IGdldEl0ZXJhdG9yKGNvbGwpO1xuICAgICAgICByZXR1cm4gaXRlcmF0b3IgPyBjcmVhdGVFUzIwMTVJdGVyYXRvcihpdGVyYXRvcikgOiBjcmVhdGVPYmplY3RJdGVyYXRvcihjb2xsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBvbmx5T25jZShmbikge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChmbiA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKFwiQ2FsbGJhY2sgd2FzIGFscmVhZHkgY2FsbGVkLlwiKTtcbiAgICAgICAgICAgIHZhciBjYWxsRm4gPSBmbjtcbiAgICAgICAgICAgIGZuID0gbnVsbDtcbiAgICAgICAgICAgIGNhbGxGbi5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvLyBmb3IgYXN5bmMgZ2VuZXJhdG9yc1xuICAgIGZ1bmN0aW9uIGFzeW5jRWFjaE9mTGltaXQoZ2VuZXJhdG9yLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGxldCBkb25lID0gZmFsc2U7XG4gICAgICAgIGxldCBjYW5jZWxlZCA9IGZhbHNlO1xuICAgICAgICBsZXQgYXdhaXRpbmcgPSBmYWxzZTtcbiAgICAgICAgbGV0IHJ1bm5pbmcgPSAwO1xuICAgICAgICBsZXQgaWR4ID0gMDtcblxuICAgICAgICBmdW5jdGlvbiByZXBsZW5pc2goKSB7XG4gICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdyZXBsZW5pc2gnKVxuICAgICAgICAgICAgaWYgKHJ1bm5pbmcgPj0gbGltaXQgfHwgYXdhaXRpbmcgfHwgZG9uZSkgcmV0dXJuXG4gICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdyZXBsZW5pc2ggYXdhaXRpbmcnKVxuICAgICAgICAgICAgYXdhaXRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgZ2VuZXJhdG9yLm5leHQoKS50aGVuKCh7dmFsdWUsIGRvbmU6IGl0ZXJEb25lfSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vY29uc29sZS5sb2coJ2dvdCB2YWx1ZScsIHZhbHVlKVxuICAgICAgICAgICAgICAgIGlmIChjYW5jZWxlZCB8fCBkb25lKSByZXR1cm5cbiAgICAgICAgICAgICAgICBhd2FpdGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGlmIChpdGVyRG9uZSkge1xuICAgICAgICAgICAgICAgICAgICBkb25lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJ1bm5pbmcgPD0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9jb25zb2xlLmxvZygnZG9uZSBuZXh0Q2InKVxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBydW5uaW5nKys7XG4gICAgICAgICAgICAgICAgaXRlcmF0ZWUodmFsdWUsIGlkeCwgaXRlcmF0ZWVDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgaWR4Kys7XG4gICAgICAgICAgICAgICAgcmVwbGVuaXNoKCk7XG4gICAgICAgICAgICB9KS5jYXRjaChoYW5kbGVFcnJvcik7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBpdGVyYXRlZUNhbGxiYWNrKGVyciwgcmVzdWx0KSB7XG4gICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdpdGVyYXRlZUNhbGxiYWNrJylcbiAgICAgICAgICAgIHJ1bm5pbmcgLT0gMTtcbiAgICAgICAgICAgIGlmIChjYW5jZWxlZCkgcmV0dXJuXG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gaGFuZGxlRXJyb3IoZXJyKVxuXG4gICAgICAgICAgICBpZiAoZXJyID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGNhbmNlbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHJlc3VsdCA9PT0gYnJlYWtMb29wIHx8IChkb25lICYmIHJ1bm5pbmcgPD0gMCkpIHtcbiAgICAgICAgICAgICAgICBkb25lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdkb25lIGl0ZXJDYicpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVwbGVuaXNoKCk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBoYW5kbGVFcnJvcihlcnIpIHtcbiAgICAgICAgICAgIGlmIChjYW5jZWxlZCkgcmV0dXJuXG4gICAgICAgICAgICBhd2FpdGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICBjYWxsYmFjayhlcnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVwbGVuaXNoKCk7XG4gICAgfVxuXG4gICAgdmFyIGVhY2hPZkxpbWl0ID0gKGxpbWl0KSA9PiB7XG4gICAgICAgIHJldHVybiAob2JqLCBpdGVyYXRlZSwgY2FsbGJhY2spID0+IHtcbiAgICAgICAgICAgIGNhbGxiYWNrID0gb25jZShjYWxsYmFjayk7XG4gICAgICAgICAgICBpZiAobGltaXQgPD0gMCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdjb25jdXJyZW5jeSBsaW1pdCBjYW5ub3QgYmUgbGVzcyB0aGFuIDEnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFvYmopIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXNBc3luY0dlbmVyYXRvcihvYmopKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFzeW5jRWFjaE9mTGltaXQob2JqLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZShvYmopKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFzeW5jRWFjaE9mTGltaXQob2JqW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFyIG5leHRFbGVtID0gY3JlYXRlSXRlcmF0b3Iob2JqKTtcbiAgICAgICAgICAgIHZhciBkb25lID0gZmFsc2U7XG4gICAgICAgICAgICB2YXIgY2FuY2VsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHZhciBydW5uaW5nID0gMDtcbiAgICAgICAgICAgIHZhciBsb29waW5nID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGZ1bmN0aW9uIGl0ZXJhdGVlQ2FsbGJhY2soZXJyLCB2YWx1ZSkge1xuICAgICAgICAgICAgICAgIGlmIChjYW5jZWxlZCkgcmV0dXJuXG4gICAgICAgICAgICAgICAgcnVubmluZyAtPSAxO1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGVyciA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodmFsdWUgPT09IGJyZWFrTG9vcCB8fCAoZG9uZSAmJiBydW5uaW5nIDw9IDApKSB7XG4gICAgICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKCFsb29waW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlcGxlbmlzaCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZnVuY3Rpb24gcmVwbGVuaXNoICgpIHtcbiAgICAgICAgICAgICAgICBsb29waW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB3aGlsZSAocnVubmluZyA8IGxpbWl0ICYmICFkb25lKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBlbGVtID0gbmV4dEVsZW0oKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVsZW0gPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJ1bm5pbmcgPD0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJ1bm5pbmcgKz0gMTtcbiAgICAgICAgICAgICAgICAgICAgaXRlcmF0ZWUoZWxlbS52YWx1ZSwgZWxlbS5rZXksIG9ubHlPbmNlKGl0ZXJhdGVlQ2FsbGJhY2spKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbG9vcGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXBsZW5pc2goKTtcbiAgICAgICAgfTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2BlYWNoT2ZgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaE9mfSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGFcbiAgICAgKiB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZWFjaE9mTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5lYWNoT2Zde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5lYWNoT2Z9XG4gICAgICogQGFsaWFzIGZvckVhY2hPZkxpbWl0XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2hcbiAgICAgKiBpdGVtIGluIGBjb2xsYC4gVGhlIGBrZXlgIGlzIHRoZSBpdGVtJ3Mga2V5LCBvciBpbmRleCBpbiB0aGUgY2FzZSBvZiBhblxuICAgICAqIGFycmF5LlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBJbnZva2VkIHdpdGggKGVycikuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZWFjaE9mTGltaXQkMShjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBlYWNoT2ZMaW1pdChsaW1pdCkoY29sbCwgd3JhcEFzeW5jKGl0ZXJhdGVlKSwgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIHZhciBlYWNoT2ZMaW1pdCQyID0gYXdhaXRpZnkoZWFjaE9mTGltaXQkMSwgNCk7XG5cbiAgICAvLyBlYWNoT2YgaW1wbGVtZW50YXRpb24gb3B0aW1pemVkIGZvciBhcnJheS1saWtlc1xuICAgIGZ1bmN0aW9uIGVhY2hPZkFycmF5TGlrZShjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIGluZGV4ID0gMCxcbiAgICAgICAgICAgIGNvbXBsZXRlZCA9IDAsXG4gICAgICAgICAgICB7bGVuZ3RofSA9IGNvbGwsXG4gICAgICAgICAgICBjYW5jZWxlZCA9IGZhbHNlO1xuICAgICAgICBpZiAobGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBjYWxsYmFjayhudWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGl0ZXJhdG9yQ2FsbGJhY2soZXJyLCB2YWx1ZSkge1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICBjYW5jZWxlZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2FuY2VsZWQgPT09IHRydWUpIHJldHVyblxuICAgICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCgrK2NvbXBsZXRlZCA9PT0gbGVuZ3RoKSB8fCB2YWx1ZSA9PT0gYnJlYWtMb29wKSB7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgIGl0ZXJhdGVlKGNvbGxbaW5kZXhdLCBpbmRleCwgb25seU9uY2UoaXRlcmF0b3JDYWxsYmFjaykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gYSBnZW5lcmljIHZlcnNpb24gb2YgZWFjaE9mIHdoaWNoIGNhbiBoYW5kbGUgYXJyYXksIG9iamVjdCwgYW5kIGl0ZXJhdG9yIGNhc2VzLlxuICAgIGZ1bmN0aW9uIGVhY2hPZkdlbmVyaWMgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gZWFjaE9mTGltaXQkMihjb2xsLCBJbmZpbml0eSwgaXRlcmF0ZWUsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMaWtlIFtgZWFjaGBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5lYWNofSwgZXhjZXB0IHRoYXQgaXQgcGFzc2VzIHRoZSBrZXkgKG9yIGluZGV4KSBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50XG4gICAgICogdG8gdGhlIGl0ZXJhdGVlLlxuICAgICAqXG4gICAgICogQG5hbWUgZWFjaE9mXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGFsaWFzIGZvckVhY2hPZlxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHNlZSBbYXN5bmMuZWFjaF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmVhY2h9XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaFxuICAgICAqIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBga2V5YCBpcyB0aGUgaXRlbSdzIGtleSwgb3IgaW5kZXggaW4gdGhlIGNhc2Ugb2YgYW4gYXJyYXkuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBrZXksIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZGV2Lmpzb24gaXMgYSBmaWxlIGNvbnRhaW5pbmcgYSB2YWxpZCBqc29uIG9iamVjdCBjb25maWcgZm9yIGRldiBlbnZpcm9ubWVudFxuICAgICAqIC8vIGRldi5qc29uIGlzIGEgZmlsZSBjb250YWluaW5nIGEgdmFsaWQganNvbiBvYmplY3QgY29uZmlnIGZvciB0ZXN0IGVudmlyb25tZW50XG4gICAgICogLy8gcHJvZC5qc29uIGlzIGEgZmlsZSBjb250YWluaW5nIGEgdmFsaWQganNvbiBvYmplY3QgY29uZmlnIGZvciBwcm9kIGVudmlyb25tZW50XG4gICAgICogLy8gaW52YWxpZC5qc29uIGlzIGEgZmlsZSB3aXRoIGEgbWFsZm9ybWVkIGpzb24gb2JqZWN0XG4gICAgICpcbiAgICAgKiBsZXQgY29uZmlncyA9IHt9OyAvL2dsb2JhbCB2YXJpYWJsZVxuICAgICAqIGxldCB2YWxpZENvbmZpZ0ZpbGVNYXAgPSB7ZGV2OiAnZGV2Lmpzb24nLCB0ZXN0OiAndGVzdC5qc29uJywgcHJvZDogJ3Byb2QuanNvbid9O1xuICAgICAqIGxldCBpbnZhbGlkQ29uZmlnRmlsZU1hcCA9IHtkZXY6ICdkZXYuanNvbicsIHRlc3Q6ICd0ZXN0Lmpzb24nLCBpbnZhbGlkOiAnaW52YWxpZC5qc29uJ307XG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCByZWFkcyBhIGpzb24gZmlsZSBhbmQgcGFyc2VzIHRoZSBjb250ZW50cyBhcyBqc29uIG9iamVjdFxuICAgICAqIGZ1bmN0aW9uIHBhcnNlRmlsZShmaWxlLCBrZXksIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZzLnJlYWRGaWxlKGZpbGUsIFwidXRmOFwiLCBmdW5jdGlvbihlcnIsIGRhdGEpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxiYWNrKGVycik7XG4gICAgICogICAgICAgICB0cnkge1xuICAgICAqICAgICAgICAgICAgIGNvbmZpZ3Nba2V5XSA9IEpTT04ucGFyc2UoZGF0YSk7XG4gICAgICogICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICogICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGUpO1xuICAgICAqICAgICAgICAgfVxuICAgICAqICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMuZm9yRWFjaE9mKHZhbGlkQ29uZmlnRmlsZU1hcCwgcGFyc2VGaWxlLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICogICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgKiAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGNvbmZpZ3MpO1xuICAgICAqICAgICAgICAgLy8gY29uZmlncyBpcyBub3cgYSBtYXAgb2YgSlNPTiBkYXRhLCBlLmcuXG4gICAgICogICAgICAgICAvLyB7IGRldjogLy9wYXJzZWQgZGV2Lmpzb24sIHRlc3Q6IC8vcGFyc2VkIHRlc3QuanNvbiwgcHJvZDogLy9wYXJzZWQgcHJvZC5qc29ufVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL0Vycm9yIGhhbmRpbmdcbiAgICAgKiBhc3luYy5mb3JFYWNoT2YoaW52YWxpZENvbmZpZ0ZpbGVNYXAsIHBhcnNlRmlsZSwgZnVuY3Rpb24gKGVycikge1xuICAgICAqICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICogICAgICAgICAvLyBKU09OIHBhcnNlIGVycm9yIGV4Y2VwdGlvblxuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coY29uZmlncyk7XG4gICAgICogICAgIH1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZm9yRWFjaE9mKHZhbGlkQ29uZmlnRmlsZU1hcCwgcGFyc2VGaWxlKVxuICAgICAqIC50aGVuKCAoKSA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGNvbmZpZ3MpO1xuICAgICAqICAgICAvLyBjb25maWdzIGlzIG5vdyBhIG1hcCBvZiBKU09OIGRhdGEsIGUuZy5cbiAgICAgKiAgICAgLy8geyBkZXY6IC8vcGFyc2VkIGRldi5qc29uLCB0ZXN0OiAvL3BhcnNlZCB0ZXN0Lmpzb24sIHByb2Q6IC8vcGFyc2VkIHByb2QuanNvbn1cbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy9FcnJvciBoYW5kaW5nXG4gICAgICogYXN5bmMuZm9yRWFjaE9mKGludmFsaWRDb25maWdGaWxlTWFwLCBwYXJzZUZpbGUpXG4gICAgICogLnRoZW4oICgpID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coY29uZmlncyk7XG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgKiAgICAgLy8gSlNPTiBwYXJzZSBlcnJvciBleGNlcHRpb25cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmZvckVhY2hPZih2YWxpZENvbmZpZ0ZpbGVNYXAsIHBhcnNlRmlsZSk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhjb25maWdzKTtcbiAgICAgKiAgICAgICAgIC8vIGNvbmZpZ3MgaXMgbm93IGEgbWFwIG9mIEpTT04gZGF0YSwgZS5nLlxuICAgICAqICAgICAgICAgLy8geyBkZXY6IC8vcGFyc2VkIGRldi5qc29uLCB0ZXN0OiAvL3BhcnNlZCB0ZXN0Lmpzb24sIHByb2Q6IC8vcGFyc2VkIHByb2QuanNvbn1cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy9FcnJvciBoYW5kaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmZvckVhY2hPZihpbnZhbGlkQ29uZmlnRmlsZU1hcCwgcGFyc2VGaWxlKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGNvbmZpZ3MpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBKU09OIHBhcnNlIGVycm9yIGV4Y2VwdGlvblxuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gZWFjaE9mKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgZWFjaE9mSW1wbGVtZW50YXRpb24gPSBpc0FycmF5TGlrZShjb2xsKSA/IGVhY2hPZkFycmF5TGlrZSA6IGVhY2hPZkdlbmVyaWM7XG4gICAgICAgIHJldHVybiBlYWNoT2ZJbXBsZW1lbnRhdGlvbihjb2xsLCB3cmFwQXN5bmMoaXRlcmF0ZWUpLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgdmFyIGVhY2hPZiQxID0gYXdhaXRpZnkoZWFjaE9mLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFByb2R1Y2VzIGEgbmV3IGNvbGxlY3Rpb24gb2YgdmFsdWVzIGJ5IG1hcHBpbmcgZWFjaCB2YWx1ZSBpbiBgY29sbGAgdGhyb3VnaFxuICAgICAqIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uLiBUaGUgYGl0ZXJhdGVlYCBpcyBjYWxsZWQgd2l0aCBhbiBpdGVtIGZyb20gYGNvbGxgXG4gICAgICogYW5kIGEgY2FsbGJhY2sgZm9yIHdoZW4gaXQgaGFzIGZpbmlzaGVkIHByb2Nlc3NpbmcuIEVhY2ggb2YgdGhlc2UgY2FsbGJhY2tzXG4gICAgICogdGFrZXMgMiBhcmd1bWVudHM6IGFuIGBlcnJvcmAsIGFuZCB0aGUgdHJhbnNmb3JtZWQgaXRlbSBmcm9tIGBjb2xsYC4gSWZcbiAgICAgKiBgaXRlcmF0ZWVgIHBhc3NlcyBhbiBlcnJvciB0byBpdHMgY2FsbGJhY2ssIHRoZSBtYWluIGBjYWxsYmFja2AgKGZvciB0aGVcbiAgICAgKiBgbWFwYCBmdW5jdGlvbikgaXMgaW1tZWRpYXRlbHkgY2FsbGVkIHdpdGggdGhlIGVycm9yLlxuICAgICAqXG4gICAgICogTm90ZSwgdGhhdCBzaW5jZSB0aGlzIGZ1bmN0aW9uIGFwcGxpZXMgdGhlIGBpdGVyYXRlZWAgdG8gZWFjaCBpdGVtIGluXG4gICAgICogcGFyYWxsZWwsIHRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyB3aWxsIGNvbXBsZXRlXG4gICAgICogaW4gb3JkZXIuIEhvd2V2ZXIsIHRoZSByZXN1bHRzIGFycmF5IHdpbGwgYmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlXG4gICAgICogb3JpZ2luYWwgYGNvbGxgLlxuICAgICAqXG4gICAgICogSWYgYG1hcGAgaXMgcGFzc2VkIGFuIE9iamVjdCwgdGhlIHJlc3VsdHMgd2lsbCBiZSBhbiBBcnJheS4gIFRoZSByZXN1bHRzXG4gICAgICogd2lsbCByb3VnaGx5IGJlIGluIHRoZSBvcmRlciBvZiB0aGUgb3JpZ2luYWwgT2JqZWN0cycga2V5cyAoYnV0IHRoaXMgY2FuXG4gICAgICogdmFyeSBhY3Jvc3MgSmF2YVNjcmlwdCBlbmdpbmVzKS5cbiAgICAgKlxuICAgICAqIEBuYW1lIG1hcFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIGl0ZW0uXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHRzIGlzIGFuIEFycmF5IG9mIHRoZVxuICAgICAqIHRyYW5zZm9ybWVkIGl0ZW1zIGZyb20gdGhlIGBjb2xsYC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBmaWxlMS50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMTAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTIudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDIwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIGZpbGUzLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAzMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlNC50eHQgZG9lcyBub3QgZXhpc3RcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVMaXN0ID0gWydmaWxlMS50eHQnLCdmaWxlMi50eHQnLCdmaWxlMy50eHQnXTtcbiAgICAgKiBjb25zdCB3aXRoTWlzc2luZ0ZpbGVMaXN0ID0gWydmaWxlMS50eHQnLCdmaWxlMi50eHQnLCdmaWxlNC50eHQnXTtcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IHJldHVybnMgdGhlIGZpbGUgc2l6ZSBpbiBieXRlc1xuICAgICAqIGZ1bmN0aW9uIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy5zdGF0KGZpbGUsIGZ1bmN0aW9uKGVyciwgc3RhdCkge1xuICAgICAqICAgICAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAqICAgICAgICAgfVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgc3RhdC5zaXplKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMubWFwKGZpbGVMaXN0LCBnZXRGaWxlU2l6ZUluQnl0ZXMsIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIG5vdyBhbiBhcnJheSBvZiB0aGUgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIFsgMTAwMCwgMjAwMCwgMzAwMF1cbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5tYXAod2l0aE1pc3NpbmdGaWxlTGlzdCwgZ2V0RmlsZVNpemVJbkJ5dGVzLCBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5tYXAoZmlsZUxpc3QsIGdldEZpbGVTaXplSW5CeXRlcylcbiAgICAgKiAudGhlbiggcmVzdWx0cyA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAvLyByZXN1bHRzIGlzIG5vdyBhbiBhcnJheSBvZiB0aGUgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgLy8gWyAxMDAwLCAyMDAwLCAzMDAwXVxuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5tYXAod2l0aE1pc3NpbmdGaWxlTGlzdCwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMubWFwKGZpbGVMaXN0LCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIG5vdyBhbiBhcnJheSBvZiB0aGUgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIFsgMTAwMCwgMjAwMCwgMzAwMF1cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLm1hcCh3aXRoTWlzc2luZ0ZpbGVMaXN0LCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBtYXAgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2FzeW5jTWFwKGVhY2hPZiQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBtYXAkMSA9IGF3YWl0aWZ5KG1hcCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBBcHBsaWVzIHRoZSBwcm92aWRlZCBhcmd1bWVudHMgdG8gZWFjaCBmdW5jdGlvbiBpbiB0aGUgYXJyYXksIGNhbGxpbmdcbiAgICAgKiBgY2FsbGJhY2tgIGFmdGVyIGFsbCBmdW5jdGlvbnMgaGF2ZSBjb21wbGV0ZWQuIElmIHlvdSBvbmx5IHByb3ZpZGUgdGhlIGZpcnN0XG4gICAgICogYXJndW1lbnQsIGBmbnNgLCB0aGVuIGl0IHdpbGwgcmV0dXJuIGEgZnVuY3Rpb24gd2hpY2ggbGV0cyB5b3UgcGFzcyBpbiB0aGVcbiAgICAgKiBhcmd1bWVudHMgYXMgaWYgaXQgd2VyZSBhIHNpbmdsZSBmdW5jdGlvbiBjYWxsLiBJZiBtb3JlIGFyZ3VtZW50cyBhcmVcbiAgICAgKiBwcm92aWRlZCwgYGNhbGxiYWNrYCBpcyByZXF1aXJlZCB3aGlsZSBgYXJnc2AgaXMgc3RpbGwgb3B0aW9uYWwuIFRoZSByZXN1bHRzXG4gICAgICogZm9yIGVhY2ggb2YgdGhlIGFwcGxpZWQgYXN5bmMgZnVuY3Rpb25zIGFyZSBwYXNzZWQgdG8gdGhlIGZpbmFsIGNhbGxiYWNrXG4gICAgICogYXMgYW4gYXJyYXkuXG4gICAgICpcbiAgICAgKiBAbmFtZSBhcHBseUVhY2hcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gZm5zIC0gQSBjb2xsZWN0aW9uIG9mIHtAbGluayBBc3luY0Z1bmN0aW9ufXNcbiAgICAgKiB0byBhbGwgY2FsbCB3aXRoIHRoZSBzYW1lIGFyZ3VtZW50c1xuICAgICAqIEBwYXJhbSB7Li4uKn0gW2FyZ3NdIC0gYW55IG51bWJlciBvZiBzZXBhcmF0ZSBhcmd1bWVudHMgdG8gcGFzcyB0byB0aGVcbiAgICAgKiBmdW5jdGlvbi5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gdGhlIGZpbmFsIGFyZ3VtZW50IHNob3VsZCBiZSB0aGUgY2FsbGJhY2ssXG4gICAgICogY2FsbGVkIHdoZW4gYWxsIGZ1bmN0aW9ucyBoYXZlIGNvbXBsZXRlZCBwcm9jZXNzaW5nLlxuICAgICAqIEByZXR1cm5zIHtBc3luY0Z1bmN0aW9ufSAtIFJldHVybnMgYSBmdW5jdGlvbiB0aGF0IHRha2VzIG5vIGFyZ3Mgb3RoZXIgdGhhblxuICAgICAqIGFuIG9wdGlvbmFsIGNhbGxiYWNrLCB0aGF0IGlzIHRoZSByZXN1bHQgb2YgYXBwbHlpbmcgdGhlIGBhcmdzYCB0byBlYWNoXG4gICAgICogb2YgdGhlIGZ1bmN0aW9ucy5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogY29uc3QgYXBwbGllZEZuID0gYXN5bmMuYXBwbHlFYWNoKFtlbmFibGVTZWFyY2gsIHVwZGF0ZVNjaGVtYV0sICdidWNrZXQnKVxuICAgICAqXG4gICAgICogYXBwbGllZEZuKChlcnIsIHJlc3VsdHMpID0+IHtcbiAgICAgKiAgICAgLy8gcmVzdWx0c1swXSBpcyB0aGUgcmVzdWx0cyBmb3IgYGVuYWJsZVNlYXJjaGBcbiAgICAgKiAgICAgLy8gcmVzdWx0c1sxXSBpcyB0aGUgcmVzdWx0cyBmb3IgYHVwZGF0ZVNjaGVtYWBcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIHBhcnRpYWwgYXBwbGljYXRpb24gZXhhbXBsZTpcbiAgICAgKiBhc3luYy5lYWNoKFxuICAgICAqICAgICBidWNrZXRzLFxuICAgICAqICAgICBhc3luYyAoYnVja2V0KSA9PiBhc3luYy5hcHBseUVhY2goW2VuYWJsZVNlYXJjaCwgdXBkYXRlU2NoZW1hXSwgYnVja2V0KSgpLFxuICAgICAqICAgICBjYWxsYmFja1xuICAgICAqICk7XG4gICAgICovXG4gICAgdmFyIGFwcGx5RWFjaCQxID0gYXBwbHlFYWNoKG1hcCQxKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgZWFjaE9mYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmVhY2hPZn0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZWFjaE9mU2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZWFjaE9mXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaE9mfVxuICAgICAqIEBhbGlhcyBmb3JFYWNoT2ZTZXJpZXNcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBrZXksIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGwgYGl0ZXJhdGVlYFxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBlYWNoT2ZTZXJpZXMoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBlYWNoT2ZMaW1pdCQyKGNvbGwsIDEsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGVhY2hPZlNlcmllcyQxID0gYXdhaXRpZnkoZWFjaE9mU2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgbWFwYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgbWFwU2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMubWFwXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfVxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIGl0ZW0uXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHRzIGlzIGFuIGFycmF5IG9mIHRoZVxuICAgICAqIHRyYW5zZm9ybWVkIGl0ZW1zIGZyb20gdGhlIGBjb2xsYC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIG1hcFNlcmllcyAoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBfYXN5bmNNYXAoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIG1hcFNlcmllcyQxID0gYXdhaXRpZnkobWFwU2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgYXBwbHlFYWNoYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LmFwcGx5RWFjaH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgYXBwbHlFYWNoU2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuYXBwbHlFYWNoXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuYXBwbHlFYWNofVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBmbnMgLSBBIGNvbGxlY3Rpb24gb2Yge0BsaW5rIEFzeW5jRnVuY3Rpb259cyB0byBhbGxcbiAgICAgKiBjYWxsIHdpdGggdGhlIHNhbWUgYXJndW1lbnRzXG4gICAgICogQHBhcmFtIHsuLi4qfSBbYXJnc10gLSBhbnkgbnVtYmVyIG9mIHNlcGFyYXRlIGFyZ3VtZW50cyB0byBwYXNzIHRvIHRoZVxuICAgICAqIGZ1bmN0aW9uLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSB0aGUgZmluYWwgYXJndW1lbnQgc2hvdWxkIGJlIHRoZSBjYWxsYmFjayxcbiAgICAgKiBjYWxsZWQgd2hlbiBhbGwgZnVuY3Rpb25zIGhhdmUgY29tcGxldGVkIHByb2Nlc3NpbmcuXG4gICAgICogQHJldHVybnMge0FzeW5jRnVuY3Rpb259IC0gQSBmdW5jdGlvbiwgdGhhdCB3aGVuIGNhbGxlZCwgaXMgdGhlIHJlc3VsdCBvZlxuICAgICAqIGFwcGxpbmcgdGhlIGBhcmdzYCB0byB0aGUgbGlzdCBvZiBmdW5jdGlvbnMuICBJdCB0YWtlcyBubyBhcmdzLCBvdGhlciB0aGFuXG4gICAgICogYSBjYWxsYmFjay5cbiAgICAgKi9cbiAgICB2YXIgYXBwbHlFYWNoU2VyaWVzID0gYXBwbHlFYWNoKG1hcFNlcmllcyQxKTtcblxuICAgIGNvbnN0IFBST01JU0VfU1lNQk9MID0gU3ltYm9sKCdwcm9taXNlQ2FsbGJhY2snKTtcblxuICAgIGZ1bmN0aW9uIHByb21pc2VDYWxsYmFjayAoKSB7XG4gICAgICAgIGxldCByZXNvbHZlLCByZWplY3Q7XG4gICAgICAgIGZ1bmN0aW9uIGNhbGxiYWNrIChlcnIsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiByZWplY3QoZXJyKVxuICAgICAgICAgICAgcmVzb2x2ZShhcmdzLmxlbmd0aCA+IDEgPyBhcmdzIDogYXJnc1swXSk7XG4gICAgICAgIH1cblxuICAgICAgICBjYWxsYmFja1tQUk9NSVNFX1NZTUJPTF0gPSBuZXcgUHJvbWlzZSgocmVzLCByZWopID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUgPSByZXMsXG4gICAgICAgICAgICByZWplY3QgPSByZWo7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBjYWxsYmFja1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERldGVybWluZXMgdGhlIGJlc3Qgb3JkZXIgZm9yIHJ1bm5pbmcgdGhlIHtAbGluayBBc3luY0Z1bmN0aW9ufXMgaW4gYHRhc2tzYCwgYmFzZWQgb25cbiAgICAgKiB0aGVpciByZXF1aXJlbWVudHMuIEVhY2ggZnVuY3Rpb24gY2FuIG9wdGlvbmFsbHkgZGVwZW5kIG9uIG90aGVyIGZ1bmN0aW9uc1xuICAgICAqIGJlaW5nIGNvbXBsZXRlZCBmaXJzdCwgYW5kIGVhY2ggZnVuY3Rpb24gaXMgcnVuIGFzIHNvb24gYXMgaXRzIHJlcXVpcmVtZW50c1xuICAgICAqIGFyZSBzYXRpc2ZpZWQuXG4gICAgICpcbiAgICAgKiBJZiBhbnkgb2YgdGhlIHtAbGluayBBc3luY0Z1bmN0aW9ufXMgcGFzcyBhbiBlcnJvciB0byB0aGVpciBjYWxsYmFjaywgdGhlIGBhdXRvYCBzZXF1ZW5jZVxuICAgICAqIHdpbGwgc3RvcC4gRnVydGhlciB0YXNrcyB3aWxsIG5vdCBleGVjdXRlIChzbyBhbnkgb3RoZXIgZnVuY3Rpb25zIGRlcGVuZGluZ1xuICAgICAqIG9uIGl0IHdpbGwgbm90IHJ1biksIGFuZCB0aGUgbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZVxuICAgICAqIGVycm9yLlxuICAgICAqXG4gICAgICoge0BsaW5rIEFzeW5jRnVuY3Rpb259cyBhbHNvIHJlY2VpdmUgYW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHJlc3VsdHMgb2YgZnVuY3Rpb25zIHdoaWNoXG4gICAgICogaGF2ZSBjb21wbGV0ZWQgc28gZmFyIGFzIHRoZSBmaXJzdCBhcmd1bWVudCwgaWYgdGhleSBoYXZlIGRlcGVuZGVuY2llcy4gSWYgYVxuICAgICAqIHRhc2sgZnVuY3Rpb24gaGFzIG5vIGRlcGVuZGVuY2llcywgaXQgd2lsbCBvbmx5IGJlIHBhc3NlZCBhIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogQG5hbWUgYXV0b1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gdGFza3MgLSBBbiBvYmplY3QuIEVhY2ggb2YgaXRzIHByb3BlcnRpZXMgaXMgZWl0aGVyIGFcbiAgICAgKiBmdW5jdGlvbiBvciBhbiBhcnJheSBvZiByZXF1aXJlbWVudHMsIHdpdGggdGhlIHtAbGluayBBc3luY0Z1bmN0aW9ufSBpdHNlbGYgdGhlIGxhc3QgaXRlbVxuICAgICAqIGluIHRoZSBhcnJheS4gVGhlIG9iamVjdCdzIGtleSBvZiBhIHByb3BlcnR5IHNlcnZlcyBhcyB0aGUgbmFtZSBvZiB0aGUgdGFza1xuICAgICAqIGRlZmluZWQgYnkgdGhhdCBwcm9wZXJ0eSwgaS5lLiBjYW4gYmUgdXNlZCB3aGVuIHNwZWNpZnlpbmcgcmVxdWlyZW1lbnRzIGZvclxuICAgICAqIG90aGVyIHRhc2tzLiBUaGUgZnVuY3Rpb24gcmVjZWl2ZXMgb25lIG9yIHR3byBhcmd1bWVudHM6XG4gICAgICogKiBhIGByZXN1bHRzYCBvYmplY3QsIGNvbnRhaW5pbmcgdGhlIHJlc3VsdHMgb2YgdGhlIHByZXZpb3VzbHkgZXhlY3V0ZWRcbiAgICAgKiAgIGZ1bmN0aW9ucywgb25seSBwYXNzZWQgaWYgdGhlIHRhc2sgaGFzIGFueSBkZXBlbmRlbmNpZXMsXG4gICAgICogKiBhIGBjYWxsYmFjayhlcnIsIHJlc3VsdClgIGZ1bmN0aW9uLCB3aGljaCBtdXN0IGJlIGNhbGxlZCB3aGVuIGZpbmlzaGVkLFxuICAgICAqICAgcGFzc2luZyBhbiBgZXJyb3JgICh3aGljaCBjYW4gYmUgYG51bGxgKSBhbmQgdGhlIHJlc3VsdCBvZiB0aGUgZnVuY3Rpb24nc1xuICAgICAqICAgZXhlY3V0aW9uLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBbY29uY3VycmVuY3k9SW5maW5pdHldIC0gQW4gb3B0aW9uYWwgYGludGVnZXJgIGZvclxuICAgICAqIGRldGVybWluaW5nIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0YXNrcyB0aGF0IGNhbiBiZSBydW4gaW4gcGFyYWxsZWwuIEJ5XG4gICAgICogZGVmYXVsdCwgYXMgbWFueSBhcyBwb3NzaWJsZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsXG4gICAgICogdGhlIHRhc2tzIGhhdmUgYmVlbiBjb21wbGV0ZWQuIEl0IHJlY2VpdmVzIHRoZSBgZXJyYCBhcmd1bWVudCBpZiBhbnkgYHRhc2tzYFxuICAgICAqIHBhc3MgYW4gZXJyb3IgdG8gdGhlaXIgY2FsbGJhY2suIFJlc3VsdHMgYXJlIGFsd2F5cyByZXR1cm5lZDsgaG93ZXZlciwgaWYgYW5cbiAgICAgKiBlcnJvciBvY2N1cnMsIG5vIGZ1cnRoZXIgYHRhc2tzYCB3aWxsIGJlIHBlcmZvcm1lZCwgYW5kIHRoZSByZXN1bHRzIG9iamVjdFxuICAgICAqIHdpbGwgb25seSBjb250YWluIHBhcnRpYWwgcmVzdWx0cy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIGEgY2FsbGJhY2sgaXMgbm90IHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvL1VzaW5nIENhbGxiYWNrc1xuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICBnZXRfZGF0YTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIGFzeW5jIGNvZGUgdG8gZ2V0IHNvbWUgZGF0YVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5Jyk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIG1ha2VfZm9sZGVyOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gYXN5bmMgY29kZSB0byBjcmVhdGUgYSBkaXJlY3RvcnkgdG8gc3RvcmUgYSBmaWxlIGluXG4gICAgICogICAgICAgICAvLyB0aGlzIGlzIHJ1biBhdCB0aGUgc2FtZSB0aW1lIGFzIGdldHRpbmcgdGhlIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdmb2xkZXInKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgd3JpdGVfZmlsZTogWydnZXRfZGF0YScsICdtYWtlX2ZvbGRlcicsIGZ1bmN0aW9uKHJlc3VsdHMsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBvbmNlIHRoZXJlIGlzIHNvbWUgZGF0YSBhbmQgdGhlIGRpcmVjdG9yeSBleGlzdHMsXG4gICAgICogICAgICAgICAvLyB3cml0ZSB0aGUgZGF0YSB0byBhIGZpbGUgaW4gdGhlIGRpcmVjdG9yeVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2ZpbGVuYW1lJyk7XG4gICAgICogICAgIH1dLFxuICAgICAqICAgICBlbWFpbF9saW5rOiBbJ3dyaXRlX2ZpbGUnLCBmdW5jdGlvbihyZXN1bHRzLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gb25jZSB0aGUgZmlsZSBpcyB3cml0dGVuIGxldCdzIGVtYWlsIGEgbGluayB0byBpdC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgeydmaWxlJzpyZXN1bHRzLndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1dXG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKCdlcnIgPSAnLCBlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdyZXN1bHRzID0gJywgcmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgPSB7XG4gICAgICogICAgIC8vICAgICBnZXRfZGF0YTogWydkYXRhJywgJ2NvbnZlcnRlZCB0byBhcnJheSddXG4gICAgICogICAgIC8vICAgICBtYWtlX2ZvbGRlcjsgJ2ZvbGRlcicsXG4gICAgICogICAgIC8vICAgICB3cml0ZV9maWxlOiAnZmlsZW5hbWUnXG4gICAgICogICAgIC8vICAgICBlbWFpbF9saW5rOiB7IGZpbGU6ICdmaWxlbmFtZScsIGVtYWlsOiAndXNlckBleGFtcGxlLmNvbScgfVxuICAgICAqICAgICAvLyB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuYXV0byh7XG4gICAgICogICAgIGdldF9kYXRhOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coJ2luIGdldF9kYXRhJyk7XG4gICAgICogICAgICAgICAvLyBhc3luYyBjb2RlIHRvIGdldCBzb21lIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdkYXRhJywgJ2NvbnZlcnRlZCB0byBhcnJheScpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBtYWtlX2ZvbGRlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKCdpbiBtYWtlX2ZvbGRlcicpO1xuICAgICAqICAgICAgICAgLy8gYXN5bmMgY29kZSB0byBjcmVhdGUgYSBkaXJlY3RvcnkgdG8gc3RvcmUgYSBmaWxlIGluXG4gICAgICogICAgICAgICAvLyB0aGlzIGlzIHJ1biBhdCB0aGUgc2FtZSB0aW1lIGFzIGdldHRpbmcgdGhlIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdmb2xkZXInKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgd3JpdGVfZmlsZTogWydnZXRfZGF0YScsICdtYWtlX2ZvbGRlcicsIGZ1bmN0aW9uKHJlc3VsdHMsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBvbmNlIHRoZXJlIGlzIHNvbWUgZGF0YSBhbmQgdGhlIGRpcmVjdG9yeSBleGlzdHMsXG4gICAgICogICAgICAgICAvLyB3cml0ZSB0aGUgZGF0YSB0byBhIGZpbGUgaW4gdGhlIGRpcmVjdG9yeVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2ZpbGVuYW1lJyk7XG4gICAgICogICAgIH1dLFxuICAgICAqICAgICBlbWFpbF9saW5rOiBbJ3dyaXRlX2ZpbGUnLCBmdW5jdGlvbihyZXN1bHRzLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gb25jZSB0aGUgZmlsZSBpcyB3cml0dGVuIGxldCdzIGVtYWlsIGEgbGluayB0byBpdC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgeydmaWxlJzpyZXN1bHRzLndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1dXG4gICAgICogfSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ3Jlc3VsdHMgPSAnLCByZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyA9IHtcbiAgICAgKiAgICAgLy8gICAgIGdldF9kYXRhOiBbJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5J11cbiAgICAgKiAgICAgLy8gICAgIG1ha2VfZm9sZGVyOyAnZm9sZGVyJyxcbiAgICAgKiAgICAgLy8gICAgIHdyaXRlX2ZpbGU6ICdmaWxlbmFtZSdcbiAgICAgKiAgICAgLy8gICAgIGVtYWlsX2xpbms6IHsgZmlsZTogJ2ZpbGVuYW1lJywgZW1haWw6ICd1c2VyQGV4YW1wbGUuY29tJyB9XG4gICAgICogICAgIC8vIH1cbiAgICAgKiB9KS5jYXRjaChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZXJyID0gJywgZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLmF1dG8oe1xuICAgICAqICAgICAgICAgICAgIGdldF9kYXRhOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgICAgICAgICAvLyBhc3luYyBjb2RlIHRvIGdldCBzb21lIGRhdGFcbiAgICAgKiAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5Jyk7XG4gICAgICogICAgICAgICAgICAgfSxcbiAgICAgKiAgICAgICAgICAgICBtYWtlX2ZvbGRlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgLy8gYXN5bmMgY29kZSB0byBjcmVhdGUgYSBkaXJlY3RvcnkgdG8gc3RvcmUgYSBmaWxlIGluXG4gICAgICogICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgcnVuIGF0IHRoZSBzYW1lIHRpbWUgYXMgZ2V0dGluZyB0aGUgZGF0YVxuICAgICAqICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnZm9sZGVyJyk7XG4gICAgICogICAgICAgICAgICAgfSxcbiAgICAgKiAgICAgICAgICAgICB3cml0ZV9maWxlOiBbJ2dldF9kYXRhJywgJ21ha2VfZm9sZGVyJywgZnVuY3Rpb24ocmVzdWx0cywgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgLy8gb25jZSB0aGVyZSBpcyBzb21lIGRhdGEgYW5kIHRoZSBkaXJlY3RvcnkgZXhpc3RzLFxuICAgICAqICAgICAgICAgICAgICAgICAvLyB3cml0ZSB0aGUgZGF0YSB0byBhIGZpbGUgaW4gdGhlIGRpcmVjdG9yeVxuICAgICAqICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnZmlsZW5hbWUnKTtcbiAgICAgKiAgICAgICAgICAgICB9XSxcbiAgICAgKiAgICAgICAgICAgICBlbWFpbF9saW5rOiBbJ3dyaXRlX2ZpbGUnLCBmdW5jdGlvbihyZXN1bHRzLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgICAgICAgICAvLyBvbmNlIHRoZSBmaWxlIGlzIHdyaXR0ZW4gbGV0J3MgZW1haWwgYSBsaW5rIHRvIGl0Li4uXG4gICAgICogICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIHsnZmlsZSc6cmVzdWx0cy53cml0ZV9maWxlLCAnZW1haWwnOid1c2VyQGV4YW1wbGUuY29tJ30pO1xuICAgICAqICAgICAgICAgICAgIH1dXG4gICAgICogICAgICAgICB9KTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKCdyZXN1bHRzID0gJywgcmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzID0ge1xuICAgICAqICAgICAgICAgLy8gICAgIGdldF9kYXRhOiBbJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5J11cbiAgICAgKiAgICAgICAgIC8vICAgICBtYWtlX2ZvbGRlcjsgJ2ZvbGRlcicsXG4gICAgICogICAgICAgICAvLyAgICAgd3JpdGVfZmlsZTogJ2ZpbGVuYW1lJ1xuICAgICAqICAgICAgICAgLy8gICAgIGVtYWlsX2xpbms6IHsgZmlsZTogJ2ZpbGVuYW1lJywgZW1haWw6ICd1c2VyQGV4YW1wbGUuY29tJyB9XG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGF1dG8odGFza3MsIGNvbmN1cnJlbmN5LCBjYWxsYmFjaykge1xuICAgICAgICBpZiAodHlwZW9mIGNvbmN1cnJlbmN5ICE9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgLy8gY29uY3VycmVuY3kgaXMgb3B0aW9uYWwsIHNoaWZ0IHRoZSBhcmdzLlxuICAgICAgICAgICAgY2FsbGJhY2sgPSBjb25jdXJyZW5jeTtcbiAgICAgICAgICAgIGNvbmN1cnJlbmN5ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjYWxsYmFjayA9IG9uY2UoY2FsbGJhY2sgfHwgcHJvbWlzZUNhbGxiYWNrKCkpO1xuICAgICAgICB2YXIgbnVtVGFza3MgPSBPYmplY3Qua2V5cyh0YXNrcykubGVuZ3RoO1xuICAgICAgICBpZiAoIW51bVRhc2tzKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFjb25jdXJyZW5jeSkge1xuICAgICAgICAgICAgY29uY3VycmVuY3kgPSBudW1UYXNrcztcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciByZXN1bHRzID0ge307XG4gICAgICAgIHZhciBydW5uaW5nVGFza3MgPSAwO1xuICAgICAgICB2YXIgY2FuY2VsZWQgPSBmYWxzZTtcbiAgICAgICAgdmFyIGhhc0Vycm9yID0gZmFsc2U7XG5cbiAgICAgICAgdmFyIGxpc3RlbmVycyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cbiAgICAgICAgdmFyIHJlYWR5VGFza3MgPSBbXTtcblxuICAgICAgICAvLyBmb3IgY3ljbGUgZGV0ZWN0aW9uOlxuICAgICAgICB2YXIgcmVhZHlUb0NoZWNrID0gW107IC8vIHRhc2tzIHRoYXQgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgcmVhY2hhYmxlXG4gICAgICAgIC8vIHdpdGhvdXQgdGhlIHBvc3NpYmlsaXR5IG9mIHJldHVybmluZyB0byBhbiBhbmNlc3RvciB0YXNrXG4gICAgICAgIHZhciB1bmNoZWNrZWREZXBlbmRlbmNpZXMgPSB7fTtcblxuICAgICAgICBPYmplY3Qua2V5cyh0YXNrcykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgdmFyIHRhc2sgPSB0YXNrc1trZXldO1xuICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhc2spKSB7XG4gICAgICAgICAgICAgICAgLy8gbm8gZGVwZW5kZW5jaWVzXG4gICAgICAgICAgICAgICAgZW5xdWV1ZVRhc2soa2V5LCBbdGFza10pO1xuICAgICAgICAgICAgICAgIHJlYWR5VG9DaGVjay5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgZGVwZW5kZW5jaWVzID0gdGFzay5zbGljZSgwLCB0YXNrLmxlbmd0aCAtIDEpO1xuICAgICAgICAgICAgdmFyIHJlbWFpbmluZ0RlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcy5sZW5ndGg7XG4gICAgICAgICAgICBpZiAocmVtYWluaW5nRGVwZW5kZW5jaWVzID09PSAwKSB7XG4gICAgICAgICAgICAgICAgZW5xdWV1ZVRhc2soa2V5LCB0YXNrKTtcbiAgICAgICAgICAgICAgICByZWFkeVRvQ2hlY2sucHVzaChrZXkpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVuY2hlY2tlZERlcGVuZGVuY2llc1trZXldID0gcmVtYWluaW5nRGVwZW5kZW5jaWVzO1xuXG4gICAgICAgICAgICBkZXBlbmRlbmNpZXMuZm9yRWFjaChkZXBlbmRlbmN5TmFtZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF0YXNrc1tkZXBlbmRlbmN5TmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdhc3luYy5hdXRvIHRhc2sgYCcgKyBrZXkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ2AgaGFzIGEgbm9uLWV4aXN0ZW50IGRlcGVuZGVuY3kgYCcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jeU5hbWUgKyAnYCBpbiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llcy5qb2luKCcsICcpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYWRkTGlzdGVuZXIoZGVwZW5kZW5jeU5hbWUsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVtYWluaW5nRGVwZW5kZW5jaWVzLS07XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZW1haW5pbmdEZXBlbmRlbmNpZXMgPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVucXVldWVUYXNrKGtleSwgdGFzayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjaGVja0ZvckRlYWRsb2NrcygpO1xuICAgICAgICBwcm9jZXNzUXVldWUoKTtcblxuICAgICAgICBmdW5jdGlvbiBlbnF1ZXVlVGFzayhrZXksIHRhc2spIHtcbiAgICAgICAgICAgIHJlYWR5VGFza3MucHVzaCgoKSA9PiBydW5UYXNrKGtleSwgdGFzaykpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gcHJvY2Vzc1F1ZXVlKCkge1xuICAgICAgICAgICAgaWYgKGNhbmNlbGVkKSByZXR1cm5cbiAgICAgICAgICAgIGlmIChyZWFkeVRhc2tzLmxlbmd0aCA9PT0gMCAmJiBydW5uaW5nVGFza3MgPT09IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwgcmVzdWx0cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB3aGlsZShyZWFkeVRhc2tzLmxlbmd0aCAmJiBydW5uaW5nVGFza3MgPCBjb25jdXJyZW5jeSkge1xuICAgICAgICAgICAgICAgIHZhciBydW4gPSByZWFkeVRhc2tzLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgcnVuKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGFkZExpc3RlbmVyKHRhc2tOYW1lLCBmbikge1xuICAgICAgICAgICAgdmFyIHRhc2tMaXN0ZW5lcnMgPSBsaXN0ZW5lcnNbdGFza05hbWVdO1xuICAgICAgICAgICAgaWYgKCF0YXNrTGlzdGVuZXJzKSB7XG4gICAgICAgICAgICAgICAgdGFza0xpc3RlbmVycyA9IGxpc3RlbmVyc1t0YXNrTmFtZV0gPSBbXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGFza0xpc3RlbmVycy5wdXNoKGZuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIHRhc2tDb21wbGV0ZSh0YXNrTmFtZSkge1xuICAgICAgICAgICAgdmFyIHRhc2tMaXN0ZW5lcnMgPSBsaXN0ZW5lcnNbdGFza05hbWVdIHx8IFtdO1xuICAgICAgICAgICAgdGFza0xpc3RlbmVycy5mb3JFYWNoKGZuID0+IGZuKCkpO1xuICAgICAgICAgICAgcHJvY2Vzc1F1ZXVlKCk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIGZ1bmN0aW9uIHJ1blRhc2soa2V5LCB0YXNrKSB7XG4gICAgICAgICAgICBpZiAoaGFzRXJyb3IpIHJldHVybjtcblxuICAgICAgICAgICAgdmFyIHRhc2tDYWxsYmFjayA9IG9ubHlPbmNlKChlcnIsIC4uLnJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIHJ1bm5pbmdUYXNrcy0tO1xuICAgICAgICAgICAgICAgIGlmIChlcnIgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgICAgICAgICBbcmVzdWx0XSA9IHJlc3VsdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgICAgICAgICB2YXIgc2FmZVJlc3VsdHMgPSB7fTtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXMocmVzdWx0cykuZm9yRWFjaChya2V5ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNhZmVSZXN1bHRzW3JrZXldID0gcmVzdWx0c1tya2V5XTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHNhZmVSZXN1bHRzW2tleV0gPSByZXN1bHQ7XG4gICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgbGlzdGVuZXJzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNhbmNlbGVkKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2soZXJyLCBzYWZlUmVzdWx0cyk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0c1trZXldID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgICAgICB0YXNrQ29tcGxldGUoa2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcnVubmluZ1Rhc2tzKys7XG4gICAgICAgICAgICB2YXIgdGFza0ZuID0gd3JhcEFzeW5jKHRhc2tbdGFzay5sZW5ndGggLSAxXSk7XG4gICAgICAgICAgICBpZiAodGFzay5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgdGFza0ZuKHJlc3VsdHMsIHRhc2tDYWxsYmFjayk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRhc2tGbih0YXNrQ2FsbGJhY2spO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gY2hlY2tGb3JEZWFkbG9ja3MoKSB7XG4gICAgICAgICAgICAvLyBLYWhuJ3MgYWxnb3JpdGhtXG4gICAgICAgICAgICAvLyBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Ub3BvbG9naWNhbF9zb3J0aW5nI0thaG4uMjdzX2FsZ29yaXRobVxuICAgICAgICAgICAgLy8gaHR0cDovL2Nvbm5hbGxlLmJsb2dzcG90LmNvbS8yMDEzLzEwL3RvcG9sb2dpY2FsLXNvcnRpbmdrYWhuLWFsZ29yaXRobS5odG1sXG4gICAgICAgICAgICB2YXIgY3VycmVudFRhc2s7XG4gICAgICAgICAgICB2YXIgY291bnRlciA9IDA7XG4gICAgICAgICAgICB3aGlsZSAocmVhZHlUb0NoZWNrLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRUYXNrID0gcmVhZHlUb0NoZWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgIGNvdW50ZXIrKztcbiAgICAgICAgICAgICAgICBnZXREZXBlbmRlbnRzKGN1cnJlbnRUYXNrKS5mb3JFYWNoKGRlcGVuZGVudCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICgtLXVuY2hlY2tlZERlcGVuZGVuY2llc1tkZXBlbmRlbnRdID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZWFkeVRvQ2hlY2sucHVzaChkZXBlbmRlbnQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChjb3VudGVyICE9PSBudW1UYXNrcykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgJ2FzeW5jLmF1dG8gY2Fubm90IGV4ZWN1dGUgdGFza3MgZHVlIHRvIGEgcmVjdXJzaXZlIGRlcGVuZGVuY3knXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGdldERlcGVuZGVudHModGFza05hbWUpIHtcbiAgICAgICAgICAgIHZhciByZXN1bHQgPSBbXTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHRhc2tzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFzayA9IHRhc2tzW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFzaykgJiYgdGFzay5pbmRleE9mKHRhc2tOYW1lKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNhbGxiYWNrW1BST01JU0VfU1lNQk9MXVxuICAgIH1cblxuICAgIHZhciBGTl9BUkdTID0gL14oPzphc3luY1xccyspPyg/OmZ1bmN0aW9uKT9cXHMqXFx3KlxccypcXChcXHMqKFteKV0rKVxccypcXCkoPzpcXHMqeykvO1xuICAgIHZhciBBUlJPV19GTl9BUkdTID0gL14oPzphc3luY1xccyspP1xcKD9cXHMqKFteKT1dKylcXHMqXFwpPyg/Olxccyo9PikvO1xuICAgIHZhciBGTl9BUkdfU1BMSVQgPSAvLC87XG4gICAgdmFyIEZOX0FSRyA9IC8oPS4rKT8oXFxzKikkLztcblxuICAgIGZ1bmN0aW9uIHN0cmlwQ29tbWVudHMoc3RyaW5nKSB7XG4gICAgICAgIGxldCBzdHJpcHBlZCA9ICcnO1xuICAgICAgICBsZXQgaW5kZXggPSAwO1xuICAgICAgICBsZXQgZW5kQmxvY2tDb21tZW50ID0gc3RyaW5nLmluZGV4T2YoJyovJyk7XG4gICAgICAgIHdoaWxlIChpbmRleCA8IHN0cmluZy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmIChzdHJpbmdbaW5kZXhdID09PSAnLycgJiYgc3RyaW5nW2luZGV4KzFdID09PSAnLycpIHtcbiAgICAgICAgICAgICAgICAvLyBpbmxpbmUgY29tbWVudFxuICAgICAgICAgICAgICAgIGxldCBlbmRJbmRleCA9IHN0cmluZy5pbmRleE9mKCdcXG4nLCBpbmRleCk7XG4gICAgICAgICAgICAgICAgaW5kZXggPSAoZW5kSW5kZXggPT09IC0xKSA/IHN0cmluZy5sZW5ndGggOiBlbmRJbmRleDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoKGVuZEJsb2NrQ29tbWVudCAhPT0gLTEpICYmIChzdHJpbmdbaW5kZXhdID09PSAnLycpICYmIChzdHJpbmdbaW5kZXgrMV0gPT09ICcqJykpIHtcbiAgICAgICAgICAgICAgICAvLyBibG9jayBjb21tZW50XG4gICAgICAgICAgICAgICAgbGV0IGVuZEluZGV4ID0gc3RyaW5nLmluZGV4T2YoJyovJywgaW5kZXgpO1xuICAgICAgICAgICAgICAgIGlmIChlbmRJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgaW5kZXggPSBlbmRJbmRleCArIDI7XG4gICAgICAgICAgICAgICAgICAgIGVuZEJsb2NrQ29tbWVudCA9IHN0cmluZy5pbmRleE9mKCcqLycsIGluZGV4KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzdHJpcHBlZCArPSBzdHJpbmdbaW5kZXhdO1xuICAgICAgICAgICAgICAgICAgICBpbmRleCsrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc3RyaXBwZWQgKz0gc3RyaW5nW2luZGV4XTtcbiAgICAgICAgICAgICAgICBpbmRleCsrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzdHJpcHBlZDtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJzZVBhcmFtcyhmdW5jKSB7XG4gICAgICAgIGNvbnN0IHNyYyA9IHN0cmlwQ29tbWVudHMoZnVuYy50b1N0cmluZygpKTtcbiAgICAgICAgbGV0IG1hdGNoID0gc3JjLm1hdGNoKEZOX0FSR1MpO1xuICAgICAgICBpZiAoIW1hdGNoKSB7XG4gICAgICAgICAgICBtYXRjaCA9IHNyYy5tYXRjaChBUlJPV19GTl9BUkdTKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW1hdGNoKSB0aHJvdyBuZXcgRXJyb3IoJ2NvdWxkIG5vdCBwYXJzZSBhcmdzIGluIGF1dG9JbmplY3RcXG5Tb3VyY2U6XFxuJyArIHNyYylcbiAgICAgICAgbGV0IFssIGFyZ3NdID0gbWF0Y2g7XG4gICAgICAgIHJldHVybiBhcmdzXG4gICAgICAgICAgICAucmVwbGFjZSgvXFxzL2csICcnKVxuICAgICAgICAgICAgLnNwbGl0KEZOX0FSR19TUExJVClcbiAgICAgICAgICAgIC5tYXAoKGFyZykgPT4gYXJnLnJlcGxhY2UoRk5fQVJHLCAnJykudHJpbSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIGRlcGVuZGVuY3ktaW5qZWN0ZWQgdmVyc2lvbiBvZiB0aGUgW2FzeW5jLmF1dG9de0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5hdXRvfSBmdW5jdGlvbi4gRGVwZW5kZW50XG4gICAgICogdGFza3MgYXJlIHNwZWNpZmllZCBhcyBwYXJhbWV0ZXJzIHRvIHRoZSBmdW5jdGlvbiwgYWZ0ZXIgdGhlIHVzdWFsIGNhbGxiYWNrXG4gICAgICogcGFyYW1ldGVyLCB3aXRoIHRoZSBwYXJhbWV0ZXIgbmFtZXMgbWF0Y2hpbmcgdGhlIG5hbWVzIG9mIHRoZSB0YXNrcyBpdFxuICAgICAqIGRlcGVuZHMgb24uIFRoaXMgY2FuIHByb3ZpZGUgZXZlbiBtb3JlIHJlYWRhYmxlIHRhc2sgZ3JhcGhzIHdoaWNoIGNhbiBiZVxuICAgICAqIGVhc2llciB0byBtYWludGFpbi5cbiAgICAgKlxuICAgICAqIElmIGEgZmluYWwgY2FsbGJhY2sgaXMgc3BlY2lmaWVkLCB0aGUgdGFzayByZXN1bHRzIGFyZSBzaW1pbGFybHkgaW5qZWN0ZWQsXG4gICAgICogc3BlY2lmaWVkIGFzIG5hbWVkIHBhcmFtZXRlcnMgYWZ0ZXIgdGhlIGluaXRpYWwgZXJyb3IgcGFyYW1ldGVyLlxuICAgICAqXG4gICAgICogVGhlIGF1dG9JbmplY3QgZnVuY3Rpb24gaXMgcHVyZWx5IHN5bnRhY3RpYyBzdWdhciBhbmQgaXRzIHNlbWFudGljcyBhcmVcbiAgICAgKiBvdGhlcndpc2UgZXF1aXZhbGVudCB0byBbYXN5bmMuYXV0b117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LmF1dG99LlxuICAgICAqXG4gICAgICogQG5hbWUgYXV0b0luamVjdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmF1dG9de0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5hdXRvfVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gdGFza3MgLSBBbiBvYmplY3QsIGVhY2ggb2Ygd2hvc2UgcHJvcGVydGllcyBpcyBhbiB7QGxpbmsgQXN5bmNGdW5jdGlvbn0gb2ZcbiAgICAgKiB0aGUgZm9ybSAnZnVuYyhbZGVwZW5kZW5jaWVzLi4uXSwgY2FsbGJhY2spLiBUaGUgb2JqZWN0J3Mga2V5IG9mIGEgcHJvcGVydHlcbiAgICAgKiBzZXJ2ZXMgYXMgdGhlIG5hbWUgb2YgdGhlIHRhc2sgZGVmaW5lZCBieSB0aGF0IHByb3BlcnR5LCBpLmUuIGNhbiBiZSB1c2VkXG4gICAgICogd2hlbiBzcGVjaWZ5aW5nIHJlcXVpcmVtZW50cyBmb3Igb3RoZXIgdGFza3MuXG4gICAgICogKiBUaGUgYGNhbGxiYWNrYCBwYXJhbWV0ZXIgaXMgYSBgY2FsbGJhY2soZXJyLCByZXN1bHQpYCB3aGljaCBtdXN0IGJlIGNhbGxlZFxuICAgICAqICAgd2hlbiBmaW5pc2hlZCwgcGFzc2luZyBhbiBgZXJyb3JgICh3aGljaCBjYW4gYmUgYG51bGxgKSBhbmQgdGhlIHJlc3VsdCBvZlxuICAgICAqICAgdGhlIGZ1bmN0aW9uJ3MgZXhlY3V0aW9uLiBUaGUgcmVtYWluaW5nIHBhcmFtZXRlcnMgbmFtZSBvdGhlciB0YXNrcyBvblxuICAgICAqICAgd2hpY2ggdGhlIHRhc2sgaXMgZGVwZW5kZW50LCBhbmQgdGhlIHJlc3VsdHMgZnJvbSB0aG9zZSB0YXNrcyBhcmUgdGhlXG4gICAgICogICBhcmd1bWVudHMgb2YgdGhvc2UgcGFyYW1ldGVycy5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsXG4gICAgICogdGhlIHRhc2tzIGhhdmUgYmVlbiBjb21wbGV0ZWQuIEl0IHJlY2VpdmVzIHRoZSBgZXJyYCBhcmd1bWVudCBpZiBhbnkgYHRhc2tzYFxuICAgICAqIHBhc3MgYW4gZXJyb3IgdG8gdGhlaXIgY2FsbGJhY2ssIGFuZCBhIGByZXN1bHRzYCBvYmplY3Qgd2l0aCBhbnkgY29tcGxldGVkXG4gICAgICogdGFzayByZXN1bHRzLCBzaW1pbGFyIHRvIGBhdXRvYC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gIFRoZSBleGFtcGxlIGZyb20gYGF1dG9gIGNhbiBiZSByZXdyaXR0ZW4gYXMgZm9sbG93czpcbiAgICAgKiBhc3luYy5hdXRvSW5qZWN0KHtcbiAgICAgKiAgICAgZ2V0X2RhdGE6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBhc3luYyBjb2RlIHRvIGdldCBzb21lIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdkYXRhJywgJ2NvbnZlcnRlZCB0byBhcnJheScpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBtYWtlX2ZvbGRlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIGFzeW5jIGNvZGUgdG8gY3JlYXRlIGEgZGlyZWN0b3J5IHRvIHN0b3JlIGEgZmlsZSBpblxuICAgICAqICAgICAgICAgLy8gdGhpcyBpcyBydW4gYXQgdGhlIHNhbWUgdGltZSBhcyBnZXR0aW5nIHRoZSBkYXRhXG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnZm9sZGVyJyk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIHdyaXRlX2ZpbGU6IGZ1bmN0aW9uKGdldF9kYXRhLCBtYWtlX2ZvbGRlciwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIG9uY2UgdGhlcmUgaXMgc29tZSBkYXRhIGFuZCB0aGUgZGlyZWN0b3J5IGV4aXN0cyxcbiAgICAgKiAgICAgICAgIC8vIHdyaXRlIHRoZSBkYXRhIHRvIGEgZmlsZSBpbiB0aGUgZGlyZWN0b3J5XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnZmlsZW5hbWUnKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZW1haWxfbGluazogZnVuY3Rpb24od3JpdGVfZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIG9uY2UgdGhlIGZpbGUgaXMgd3JpdHRlbiBsZXQncyBlbWFpbCBhIGxpbmsgdG8gaXQuLi5cbiAgICAgKiAgICAgICAgIC8vIHdyaXRlX2ZpbGUgY29udGFpbnMgdGhlIGZpbGVuYW1lIHJldHVybmVkIGJ5IHdyaXRlX2ZpbGUuXG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCB7J2ZpbGUnOndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1cbiAgICAgKiB9LCBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ2VyciA9ICcsIGVycik7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdlbWFpbF9saW5rID0gJywgcmVzdWx0cy5lbWFpbF9saW5rKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIElmIHlvdSBhcmUgdXNpbmcgYSBKUyBtaW5pZmllciB0aGF0IG1hbmdsZXMgcGFyYW1ldGVyIG5hbWVzLCBgYXV0b0luamVjdGBcbiAgICAgKiAvLyB3aWxsIG5vdCB3b3JrIHdpdGggcGxhaW4gZnVuY3Rpb25zLCBzaW5jZSB0aGUgcGFyYW1ldGVyIG5hbWVzIHdpbGwgYmVcbiAgICAgKiAvLyBjb2xsYXBzZWQgdG8gYSBzaW5nbGUgbGV0dGVyIGlkZW50aWZpZXIuICBUbyB3b3JrIGFyb3VuZCB0aGlzLCB5b3UgY2FuXG4gICAgICogLy8gZXhwbGljaXRseSBzcGVjaWZ5IHRoZSBuYW1lcyBvZiB0aGUgcGFyYW1ldGVycyB5b3VyIHRhc2sgZnVuY3Rpb24gbmVlZHNcbiAgICAgKiAvLyBpbiBhbiBhcnJheSwgc2ltaWxhciB0byBBbmd1bGFyLmpzIGRlcGVuZGVuY3kgaW5qZWN0aW9uLlxuICAgICAqXG4gICAgICogLy8gVGhpcyBzdGlsbCBoYXMgYW4gYWR2YW50YWdlIG92ZXIgcGxhaW4gYGF1dG9gLCBzaW5jZSB0aGUgcmVzdWx0cyBhIHRhc2tcbiAgICAgKiAvLyBkZXBlbmRzIG9uIGFyZSBzdGlsbCBzcHJlYWQgaW50byBhcmd1bWVudHMuXG4gICAgICogYXN5bmMuYXV0b0luamVjdCh7XG4gICAgICogICAgIC8vLi4uXG4gICAgICogICAgIHdyaXRlX2ZpbGU6IFsnZ2V0X2RhdGEnLCAnbWFrZV9mb2xkZXInLCBmdW5jdGlvbihnZXRfZGF0YSwgbWFrZV9mb2xkZXIsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnZmlsZW5hbWUnKTtcbiAgICAgKiAgICAgfV0sXG4gICAgICogICAgIGVtYWlsX2xpbms6IFsnd3JpdGVfZmlsZScsIGZ1bmN0aW9uKHdyaXRlX2ZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCB7J2ZpbGUnOndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1dXG4gICAgICogICAgIC8vLi4uXG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdlcnIgPSAnLCBlcnIpO1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZW1haWxfbGluayA9ICcsIHJlc3VsdHMuZW1haWxfbGluayk7XG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gYXV0b0luamVjdCh0YXNrcywgY2FsbGJhY2spIHtcbiAgICAgICAgdmFyIG5ld1Rhc2tzID0ge307XG5cbiAgICAgICAgT2JqZWN0LmtleXModGFza3MpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIHZhciB0YXNrRm4gPSB0YXNrc1trZXldO1xuICAgICAgICAgICAgdmFyIHBhcmFtcztcbiAgICAgICAgICAgIHZhciBmbklzQXN5bmMgPSBpc0FzeW5jKHRhc2tGbik7XG4gICAgICAgICAgICB2YXIgaGFzTm9EZXBzID1cbiAgICAgICAgICAgICAgICAoIWZuSXNBc3luYyAmJiB0YXNrRm4ubGVuZ3RoID09PSAxKSB8fFxuICAgICAgICAgICAgICAgIChmbklzQXN5bmMgJiYgdGFza0ZuLmxlbmd0aCA9PT0gMCk7XG5cbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhc2tGbikpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBbLi4udGFza0ZuXTtcbiAgICAgICAgICAgICAgICB0YXNrRm4gPSBwYXJhbXMucG9wKCk7XG5cbiAgICAgICAgICAgICAgICBuZXdUYXNrc1trZXldID0gcGFyYW1zLmNvbmNhdChwYXJhbXMubGVuZ3RoID4gMCA/IG5ld1Rhc2sgOiB0YXNrRm4pO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChoYXNOb0RlcHMpIHtcbiAgICAgICAgICAgICAgICAvLyBubyBkZXBlbmRlbmNpZXMsIHVzZSB0aGUgZnVuY3Rpb24gYXMtaXNcbiAgICAgICAgICAgICAgICBuZXdUYXNrc1trZXldID0gdGFza0ZuO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJzZVBhcmFtcyh0YXNrRm4pO1xuICAgICAgICAgICAgICAgIGlmICgodGFza0ZuLmxlbmd0aCA9PT0gMCAmJiAhZm5Jc0FzeW5jKSAmJiBwYXJhbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImF1dG9JbmplY3QgdGFzayBmdW5jdGlvbnMgcmVxdWlyZSBleHBsaWNpdCBwYXJhbWV0ZXJzLlwiKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyByZW1vdmUgY2FsbGJhY2sgcGFyYW1cbiAgICAgICAgICAgICAgICBpZiAoIWZuSXNBc3luYykgcGFyYW1zLnBvcCgpO1xuXG4gICAgICAgICAgICAgICAgbmV3VGFza3Nba2V5XSA9IHBhcmFtcy5jb25jYXQobmV3VGFzayk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZ1bmN0aW9uIG5ld1Rhc2socmVzdWx0cywgdGFza0NiKSB7XG4gICAgICAgICAgICAgICAgdmFyIG5ld0FyZ3MgPSBwYXJhbXMubWFwKG5hbWUgPT4gcmVzdWx0c1tuYW1lXSk7XG4gICAgICAgICAgICAgICAgbmV3QXJncy5wdXNoKHRhc2tDYik7XG4gICAgICAgICAgICAgICAgd3JhcEFzeW5jKHRhc2tGbikoLi4ubmV3QXJncyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBhdXRvKG5ld1Rhc2tzLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlIGRvdWJseSBsaW5rZWQgbGlzdCAoaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvRG91Ymx5X2xpbmtlZF9saXN0KSBpbXBsZW1lbnRhdGlvblxuICAgIC8vIHVzZWQgZm9yIHF1ZXVlcy4gVGhpcyBpbXBsZW1lbnRhdGlvbiBhc3N1bWVzIHRoYXQgdGhlIG5vZGUgcHJvdmlkZWQgYnkgdGhlIHVzZXIgY2FuIGJlIG1vZGlmaWVkXG4gICAgLy8gdG8gYWRqdXN0IHRoZSBuZXh0IGFuZCBsYXN0IHByb3BlcnRpZXMuIFdlIGltcGxlbWVudCBvbmx5IHRoZSBtaW5pbWFsIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBmb3IgcXVldWUgc3VwcG9ydC5cbiAgICBjbGFzcyBETEwge1xuICAgICAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgICAgIHRoaXMuaGVhZCA9IHRoaXMudGFpbCA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmxlbmd0aCA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICByZW1vdmVMaW5rKG5vZGUpIHtcbiAgICAgICAgICAgIGlmIChub2RlLnByZXYpIG5vZGUucHJldi5uZXh0ID0gbm9kZS5uZXh0O1xuICAgICAgICAgICAgZWxzZSB0aGlzLmhlYWQgPSBub2RlLm5leHQ7XG4gICAgICAgICAgICBpZiAobm9kZS5uZXh0KSBub2RlLm5leHQucHJldiA9IG5vZGUucHJldjtcbiAgICAgICAgICAgIGVsc2UgdGhpcy50YWlsID0gbm9kZS5wcmV2O1xuXG4gICAgICAgICAgICBub2RlLnByZXYgPSBub2RlLm5leHQgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5sZW5ndGggLT0gMTtcbiAgICAgICAgICAgIHJldHVybiBub2RlO1xuICAgICAgICB9XG5cbiAgICAgICAgZW1wdHkgKCkge1xuICAgICAgICAgICAgd2hpbGUodGhpcy5oZWFkKSB0aGlzLnNoaWZ0KCk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfVxuXG4gICAgICAgIGluc2VydEFmdGVyKG5vZGUsIG5ld05vZGUpIHtcbiAgICAgICAgICAgIG5ld05vZGUucHJldiA9IG5vZGU7XG4gICAgICAgICAgICBuZXdOb2RlLm5leHQgPSBub2RlLm5leHQ7XG4gICAgICAgICAgICBpZiAobm9kZS5uZXh0KSBub2RlLm5leHQucHJldiA9IG5ld05vZGU7XG4gICAgICAgICAgICBlbHNlIHRoaXMudGFpbCA9IG5ld05vZGU7XG4gICAgICAgICAgICBub2RlLm5leHQgPSBuZXdOb2RlO1xuICAgICAgICAgICAgdGhpcy5sZW5ndGggKz0gMTtcbiAgICAgICAgfVxuXG4gICAgICAgIGluc2VydEJlZm9yZShub2RlLCBuZXdOb2RlKSB7XG4gICAgICAgICAgICBuZXdOb2RlLnByZXYgPSBub2RlLnByZXY7XG4gICAgICAgICAgICBuZXdOb2RlLm5leHQgPSBub2RlO1xuICAgICAgICAgICAgaWYgKG5vZGUucHJldikgbm9kZS5wcmV2Lm5leHQgPSBuZXdOb2RlO1xuICAgICAgICAgICAgZWxzZSB0aGlzLmhlYWQgPSBuZXdOb2RlO1xuICAgICAgICAgICAgbm9kZS5wcmV2ID0gbmV3Tm9kZTtcbiAgICAgICAgICAgIHRoaXMubGVuZ3RoICs9IDE7XG4gICAgICAgIH1cblxuICAgICAgICB1bnNoaWZ0KG5vZGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmhlYWQpIHRoaXMuaW5zZXJ0QmVmb3JlKHRoaXMuaGVhZCwgbm9kZSk7XG4gICAgICAgICAgICBlbHNlIHNldEluaXRpYWwodGhpcywgbm9kZSk7XG4gICAgICAgIH1cblxuICAgICAgICBwdXNoKG5vZGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRhaWwpIHRoaXMuaW5zZXJ0QWZ0ZXIodGhpcy50YWlsLCBub2RlKTtcbiAgICAgICAgICAgIGVsc2Ugc2V0SW5pdGlhbCh0aGlzLCBub2RlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNoaWZ0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGVhZCAmJiB0aGlzLnJlbW92ZUxpbmsodGhpcy5oZWFkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHBvcCgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRhaWwgJiYgdGhpcy5yZW1vdmVMaW5rKHRoaXMudGFpbCk7XG4gICAgICAgIH1cblxuICAgICAgICB0b0FycmF5KCkge1xuICAgICAgICAgICAgcmV0dXJuIFsuLi50aGlzXVxuICAgICAgICB9XG5cbiAgICAgICAgKltTeW1ib2wuaXRlcmF0b3JdICgpIHtcbiAgICAgICAgICAgIHZhciBjdXIgPSB0aGlzLmhlYWQ7XG4gICAgICAgICAgICB3aGlsZSAoY3VyKSB7XG4gICAgICAgICAgICAgICAgeWllbGQgY3VyLmRhdGE7XG4gICAgICAgICAgICAgICAgY3VyID0gY3VyLm5leHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZW1vdmUgKHRlc3RGbikge1xuICAgICAgICAgICAgdmFyIGN1cnIgPSB0aGlzLmhlYWQ7XG4gICAgICAgICAgICB3aGlsZShjdXJyKSB7XG4gICAgICAgICAgICAgICAgdmFyIHtuZXh0fSA9IGN1cnI7XG4gICAgICAgICAgICAgICAgaWYgKHRlc3RGbihjdXJyKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZUxpbmsoY3Vycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGN1cnIgPSBuZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBzZXRJbml0aWFsKGRsbCwgbm9kZSkge1xuICAgICAgICBkbGwubGVuZ3RoID0gMTtcbiAgICAgICAgZGxsLmhlYWQgPSBkbGwudGFpbCA9IG5vZGU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcXVldWUod29ya2VyLCBjb25jdXJyZW5jeSwgcGF5bG9hZCkge1xuICAgICAgICBpZiAoY29uY3VycmVuY3kgPT0gbnVsbCkge1xuICAgICAgICAgICAgY29uY3VycmVuY3kgPSAxO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYoY29uY3VycmVuY3kgPT09IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdDb25jdXJyZW5jeSBtdXN0IG5vdCBiZSB6ZXJvJyk7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgX3dvcmtlciA9IHdyYXBBc3luYyh3b3JrZXIpO1xuICAgICAgICB2YXIgbnVtUnVubmluZyA9IDA7XG4gICAgICAgIHZhciB3b3JrZXJzTGlzdCA9IFtdO1xuICAgICAgICBjb25zdCBldmVudHMgPSB7XG4gICAgICAgICAgICBlcnJvcjogW10sXG4gICAgICAgICAgICBkcmFpbjogW10sXG4gICAgICAgICAgICBzYXR1cmF0ZWQ6IFtdLFxuICAgICAgICAgICAgdW5zYXR1cmF0ZWQ6IFtdLFxuICAgICAgICAgICAgZW1wdHk6IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgZnVuY3Rpb24gb24gKGV2ZW50LCBoYW5kbGVyKSB7XG4gICAgICAgICAgICBldmVudHNbZXZlbnRdLnB1c2goaGFuZGxlcik7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBvbmNlIChldmVudCwgaGFuZGxlcikge1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlQW5kUmVtb3ZlID0gKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICBvZmYoZXZlbnQsIGhhbmRsZUFuZFJlbW92ZSk7XG4gICAgICAgICAgICAgICAgaGFuZGxlciguLi5hcmdzKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBldmVudHNbZXZlbnRdLnB1c2goaGFuZGxlQW5kUmVtb3ZlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIG9mZiAoZXZlbnQsIGhhbmRsZXIpIHtcbiAgICAgICAgICAgIGlmICghZXZlbnQpIHJldHVybiBPYmplY3Qua2V5cyhldmVudHMpLmZvckVhY2goZXYgPT4gZXZlbnRzW2V2XSA9IFtdKVxuICAgICAgICAgICAgaWYgKCFoYW5kbGVyKSByZXR1cm4gZXZlbnRzW2V2ZW50XSA9IFtdXG4gICAgICAgICAgICBldmVudHNbZXZlbnRdID0gZXZlbnRzW2V2ZW50XS5maWx0ZXIoZXYgPT4gZXYgIT09IGhhbmRsZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gdHJpZ2dlciAoZXZlbnQsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGV2ZW50c1tldmVudF0uZm9yRWFjaChoYW5kbGVyID0+IGhhbmRsZXIoLi4uYXJncykpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIHByb2Nlc3NpbmdTY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgICAgZnVuY3Rpb24gX2luc2VydChkYXRhLCBpbnNlcnRBdEZyb250LCByZWplY3RPbkVycm9yLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgaWYgKGNhbGxiYWNrICE9IG51bGwgJiYgdHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd0YXNrIGNhbGxiYWNrIG11c3QgYmUgYSBmdW5jdGlvbicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcS5zdGFydGVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgdmFyIHJlcywgcmVqO1xuICAgICAgICAgICAgZnVuY3Rpb24gcHJvbWlzZUNhbGxiYWNrIChlcnIsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgICAgICAvLyB3ZSBkb24ndCBjYXJlIGFib3V0IHRoZSBlcnJvciwgbGV0IHRoZSBnbG9iYWwgZXJyb3IgaGFuZGxlclxuICAgICAgICAgICAgICAgIC8vIGRlYWwgd2l0aCBpdFxuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiByZWplY3RPbkVycm9yID8gcmVqKGVycikgOiByZXMoKVxuICAgICAgICAgICAgICAgIGlmIChhcmdzLmxlbmd0aCA8PSAxKSByZXR1cm4gcmVzKGFyZ3NbMF0pXG4gICAgICAgICAgICAgICAgcmVzKGFyZ3MpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgaXRlbSA9IHEuX2NyZWF0ZVRhc2tJdGVtKFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgcmVqZWN0T25FcnJvciA/IHByb21pc2VDYWxsYmFjayA6XG4gICAgICAgICAgICAgICAgICAgIChjYWxsYmFjayB8fCBwcm9taXNlQ2FsbGJhY2spXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBpZiAoaW5zZXJ0QXRGcm9udCkge1xuICAgICAgICAgICAgICAgIHEuX3Rhc2tzLnVuc2hpZnQoaXRlbSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHEuX3Rhc2tzLnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghcHJvY2Vzc2luZ1NjaGVkdWxlZCkge1xuICAgICAgICAgICAgICAgIHByb2Nlc3NpbmdTY2hlZHVsZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc2luZ1NjaGVkdWxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBxLnByb2Nlc3MoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHJlamVjdE9uRXJyb3IgfHwgIWNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzID0gcmVzb2x2ZTtcbiAgICAgICAgICAgICAgICAgICAgcmVqID0gcmVqZWN0O1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBfY3JlYXRlQ0IodGFza3MpIHtcbiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbiAoZXJyLCAuLi5hcmdzKSB7XG4gICAgICAgICAgICAgICAgbnVtUnVubmluZyAtPSAxO1xuXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSB0YXNrcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHRhc2sgPSB0YXNrc1tpXTtcblxuICAgICAgICAgICAgICAgICAgICB2YXIgaW5kZXggPSB3b3JrZXJzTGlzdC5pbmRleE9mKHRhc2spO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtlcnNMaXN0LnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaW5kZXggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3b3JrZXJzTGlzdC5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdGFzay5jYWxsYmFjayhlcnIsIC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcignZXJyb3InLCBlcnIsIHRhc2suZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAobnVtUnVubmluZyA8PSAocS5jb25jdXJyZW5jeSAtIHEuYnVmZmVyKSApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcigndW5zYXR1cmF0ZWQnKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAocS5pZGxlKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcignZHJhaW4nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcS5wcm9jZXNzKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gX21heWJlRHJhaW4oZGF0YSkge1xuICAgICAgICAgICAgaWYgKGRhdGEubGVuZ3RoID09PSAwICYmIHEuaWRsZSgpKSB7XG4gICAgICAgICAgICAgICAgLy8gY2FsbCBkcmFpbiBpbW1lZGlhdGVseSBpZiB0aGVyZSBhcmUgbm8gdGFza3NcbiAgICAgICAgICAgICAgICBzZXRJbW1lZGlhdGUkMSgoKSA9PiB0cmlnZ2VyKCdkcmFpbicpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBldmVudE1ldGhvZCA9IChuYW1lKSA9PiAoaGFuZGxlcikgPT4ge1xuICAgICAgICAgICAgaWYgKCFoYW5kbGVyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgb25jZShuYW1lLCAoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gcmVqZWN0KGVycilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBvZmYobmFtZSk7XG4gICAgICAgICAgICBvbihuYW1lLCBoYW5kbGVyKTtcblxuICAgICAgICB9O1xuXG4gICAgICAgIHZhciBpc1Byb2Nlc3NpbmcgPSBmYWxzZTtcbiAgICAgICAgdmFyIHEgPSB7XG4gICAgICAgICAgICBfdGFza3M6IG5ldyBETEwoKSxcbiAgICAgICAgICAgIF9jcmVhdGVUYXNrSXRlbSAoZGF0YSwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICAgICAgICBjYWxsYmFja1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKltTeW1ib2wuaXRlcmF0b3JdICgpIHtcbiAgICAgICAgICAgICAgICB5aWVsZCogcS5fdGFza3NbU3ltYm9sLml0ZXJhdG9yXSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNvbmN1cnJlbmN5LFxuICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgIGJ1ZmZlcjogY29uY3VycmVuY3kgLyA0LFxuICAgICAgICAgICAgc3RhcnRlZDogZmFsc2UsXG4gICAgICAgICAgICBwYXVzZWQ6IGZhbHNlLFxuICAgICAgICAgICAgcHVzaCAoZGF0YSwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoX21heWJlRHJhaW4oZGF0YSkpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5tYXAoZGF0dW0gPT4gX2luc2VydChkYXR1bSwgZmFsc2UsIGZhbHNlLCBjYWxsYmFjaykpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBfaW5zZXJ0KGRhdGEsIGZhbHNlLCBmYWxzZSwgY2FsbGJhY2spO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHB1c2hBc3luYyAoZGF0YSwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoX21heWJlRHJhaW4oZGF0YSkpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5tYXAoZGF0dW0gPT4gX2luc2VydChkYXR1bSwgZmFsc2UsIHRydWUsIGNhbGxiYWNrKSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9pbnNlcnQoZGF0YSwgZmFsc2UsIHRydWUsIGNhbGxiYWNrKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBraWxsICgpIHtcbiAgICAgICAgICAgICAgICBvZmYoKTtcbiAgICAgICAgICAgICAgICBxLl90YXNrcy5lbXB0eSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHVuc2hpZnQgKGRhdGEsIGNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKF9tYXliZURyYWluKGRhdGEpKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRhdGEubWFwKGRhdHVtID0+IF9pbnNlcnQoZGF0dW0sIHRydWUsIGZhbHNlLCBjYWxsYmFjaykpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBfaW5zZXJ0KGRhdGEsIHRydWUsIGZhbHNlLCBjYWxsYmFjayk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdW5zaGlmdEFzeW5jIChkYXRhLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChfbWF5YmVEcmFpbihkYXRhKSkgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLm1hcChkYXR1bSA9PiBfaW5zZXJ0KGRhdHVtLCB0cnVlLCB0cnVlLCBjYWxsYmFjaykpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBfaW5zZXJ0KGRhdGEsIHRydWUsIHRydWUsIGNhbGxiYWNrKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZW1vdmUgKHRlc3RGbikge1xuICAgICAgICAgICAgICAgIHEuX3Rhc2tzLnJlbW92ZSh0ZXN0Rm4pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHByb2Nlc3MgKCkge1xuICAgICAgICAgICAgICAgIC8vIEF2b2lkIHRyeWluZyB0byBzdGFydCB0b28gbWFueSBwcm9jZXNzaW5nIG9wZXJhdGlvbnMuIFRoaXMgY2FuIG9jY3VyXG4gICAgICAgICAgICAgICAgLy8gd2hlbiBjYWxsYmFja3MgcmVzb2x2ZSBzeW5jaHJvbm91c2x5ICgjMTI2NykuXG4gICAgICAgICAgICAgICAgaWYgKGlzUHJvY2Vzc2luZykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlzUHJvY2Vzc2luZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgd2hpbGUoIXEucGF1c2VkICYmIG51bVJ1bm5pbmcgPCBxLmNvbmN1cnJlbmN5ICYmIHEuX3Rhc2tzLmxlbmd0aCl7XG4gICAgICAgICAgICAgICAgICAgIHZhciB0YXNrcyA9IFtdLCBkYXRhID0gW107XG4gICAgICAgICAgICAgICAgICAgIHZhciBsID0gcS5fdGFza3MubGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBpZiAocS5wYXlsb2FkKSBsID0gTWF0aC5taW4obCwgcS5wYXlsb2FkKTtcbiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBub2RlID0gcS5fdGFza3Muc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhc2tzLnB1c2gobm9kZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3b3JrZXJzTGlzdC5wdXNoKG5vZGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS5wdXNoKG5vZGUuZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBudW1SdW5uaW5nICs9IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHEuX3Rhc2tzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcignZW1wdHknKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmIChudW1SdW5uaW5nID09PSBxLmNvbmN1cnJlbmN5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyKCdzYXR1cmF0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHZhciBjYiA9IG9ubHlPbmNlKF9jcmVhdGVDQih0YXNrcykpO1xuICAgICAgICAgICAgICAgICAgICBfd29ya2VyKGRhdGEsIGNiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaXNQcm9jZXNzaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbGVuZ3RoICgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcS5fdGFza3MubGVuZ3RoO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJ1bm5pbmcgKCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudW1SdW5uaW5nO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHdvcmtlcnNMaXN0ICgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gd29ya2Vyc0xpc3Q7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaWRsZSgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcS5fdGFza3MubGVuZ3RoICsgbnVtUnVubmluZyA9PT0gMDtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYXVzZSAoKSB7XG4gICAgICAgICAgICAgICAgcS5wYXVzZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlc3VtZSAoKSB7XG4gICAgICAgICAgICAgICAgaWYgKHEucGF1c2VkID09PSBmYWxzZSkgeyByZXR1cm47IH1cbiAgICAgICAgICAgICAgICBxLnBhdXNlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKHEucHJvY2Vzcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIC8vIGRlZmluZSB0aGVzZSBhcyBmaXhlZCBwcm9wZXJ0aWVzLCBzbyBwZW9wbGUgZ2V0IHVzZWZ1bCBlcnJvcnMgd2hlbiB1cGRhdGluZ1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhxLCB7XG4gICAgICAgICAgICBzYXR1cmF0ZWQ6IHtcbiAgICAgICAgICAgICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgdmFsdWU6IGV2ZW50TWV0aG9kKCdzYXR1cmF0ZWQnKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHVuc2F0dXJhdGVkOiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgndW5zYXR1cmF0ZWQnKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVtcHR5OiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgnZW1wdHknKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRyYWluOiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgnZHJhaW4nKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVycm9yOiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgnZXJyb3InKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBgY2FyZ29gIG9iamVjdCB3aXRoIHRoZSBzcGVjaWZpZWQgcGF5bG9hZC4gVGFza3MgYWRkZWQgdG8gdGhlXG4gICAgICogY2FyZ28gd2lsbCBiZSBwcm9jZXNzZWQgYWx0b2dldGhlciAodXAgdG8gdGhlIGBwYXlsb2FkYCBsaW1pdCkuIElmIHRoZVxuICAgICAqIGB3b3JrZXJgIGlzIGluIHByb2dyZXNzLCB0aGUgdGFzayBpcyBxdWV1ZWQgdW50aWwgaXQgYmVjb21lcyBhdmFpbGFibGUuIE9uY2VcbiAgICAgKiB0aGUgYHdvcmtlcmAgaGFzIGNvbXBsZXRlZCBzb21lIHRhc2tzLCBlYWNoIGNhbGxiYWNrIG9mIHRob3NlIHRhc2tzIGlzXG4gICAgICogY2FsbGVkLiBDaGVjayBvdXQgW3RoZXNlXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tLzZiYmQzNmY0Y2Y1YjM1YTBmMTFhOTZkY2QyZTk3NzExZmZjMmZiMzcvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzODJmNjI2MjYzMzA2MzY2NjIzMDJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzOTM3MzQ2NjJkMzMzMzM5Mzc2MzM2MzQ2NDYzMzgzNTM4MmU2NzY5NjYpIFthbmltYXRpb25zXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Y0ODEwZTAwZTFjNWY1ZjhhZGRiZTNlOWY0OTA2NGZkNWQxMDI2OTkvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzMTJmMzgzNDYzMzkzMjMwMzYzNjJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzODMxMzQ2NjJkMzk2NDMzNjQzMDMyMzQzMTMzNjI2NjY0MmU2NzY5NjYpXG4gICAgICogZm9yIGhvdyBgY2FyZ29gIGFuZCBgcXVldWVgIHdvcmsuXG4gICAgICpcbiAgICAgKiBXaGlsZSBbYHF1ZXVlYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnF1ZXVlfSBwYXNzZXMgb25seSBvbmUgdGFzayB0byBvbmUgb2YgYSBncm91cCBvZiB3b3JrZXJzXG4gICAgICogYXQgYSB0aW1lLCBjYXJnbyBwYXNzZXMgYW4gYXJyYXkgb2YgdGFza3MgdG8gYSBzaW5nbGUgd29ya2VyLCByZXBlYXRpbmdcbiAgICAgKiB3aGVuIHRoZSB3b3JrZXIgaXMgZmluaXNoZWQuXG4gICAgICpcbiAgICAgKiBAbmFtZSBjYXJnb1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnF1ZXVlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucXVldWV9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIGZvciBwcm9jZXNzaW5nIGFuIGFycmF5XG4gICAgICogb2YgcXVldWVkIHRhc2tzLiBJbnZva2VkIHdpdGggYCh0YXNrcywgY2FsbGJhY2spYC5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gW3BheWxvYWQ9SW5maW5pdHldIC0gQW4gb3B0aW9uYWwgYGludGVnZXJgIGZvciBkZXRlcm1pbmluZ1xuICAgICAqIGhvdyBtYW55IHRhc2tzIHNob3VsZCBiZSBwcm9jZXNzZWQgcGVyIHJvdW5kOyBpZiBvbWl0dGVkLCB0aGUgZGVmYXVsdCBpc1xuICAgICAqIHVubGltaXRlZC5cbiAgICAgKiBAcmV0dXJucyB7bW9kdWxlOkNvbnRyb2xGbG93LlF1ZXVlT2JqZWN0fSBBIGNhcmdvIG9iamVjdCB0byBtYW5hZ2UgdGhlIHRhc2tzLiBDYWxsYmFja3MgY2FuXG4gICAgICogYXR0YWNoZWQgYXMgY2VydGFpbiBwcm9wZXJ0aWVzIHRvIGxpc3RlbiBmb3Igc3BlY2lmaWMgZXZlbnRzIGR1cmluZyB0aGVcbiAgICAgKiBsaWZlY3ljbGUgb2YgdGhlIGNhcmdvIGFuZCBpbm5lciBxdWV1ZS5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gY3JlYXRlIGEgY2FyZ28gb2JqZWN0IHdpdGggcGF5bG9hZCAyXG4gICAgICogdmFyIGNhcmdvID0gYXN5bmMuY2FyZ28oZnVuY3Rpb24odGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZvciAodmFyIGk9MDsgaTx0YXNrcy5sZW5ndGg7IGkrKykge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coJ2hlbGxvICcgKyB0YXNrc1tpXS5uYW1lKTtcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYWxsYmFjaygpO1xuICAgICAqIH0sIDIpO1xuICAgICAqXG4gICAgICogLy8gYWRkIHNvbWUgaXRlbXNcbiAgICAgKiBjYXJnby5wdXNoKHtuYW1lOiAnZm9vJ30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBmb28nKTtcbiAgICAgKiB9KTtcbiAgICAgKiBjYXJnby5wdXNoKHtuYW1lOiAnYmFyJ30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBiYXInKTtcbiAgICAgKiB9KTtcbiAgICAgKiBhd2FpdCBjYXJnby5wdXNoKHtuYW1lOiAnYmF6J30pO1xuICAgICAqIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGJheicpO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIGNhcmdvKHdvcmtlciwgcGF5bG9hZCkge1xuICAgICAgICByZXR1cm4gcXVldWUod29ya2VyLCAxLCBwYXlsb2FkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgYGNhcmdvUXVldWVgIG9iamVjdCB3aXRoIHRoZSBzcGVjaWZpZWQgcGF5bG9hZC4gVGFza3MgYWRkZWQgdG8gdGhlXG4gICAgICogY2FyZ29RdWV1ZSB3aWxsIGJlIHByb2Nlc3NlZCB0b2dldGhlciAodXAgdG8gdGhlIGBwYXlsb2FkYCBsaW1pdCkgaW4gYGNvbmN1cnJlbmN5YCBwYXJhbGxlbCB3b3JrZXJzLlxuICAgICAqIElmIHRoZSBhbGwgYHdvcmtlcnNgIGFyZSBpbiBwcm9ncmVzcywgdGhlIHRhc2sgaXMgcXVldWVkIHVudGlsIG9uZSBiZWNvbWVzIGF2YWlsYWJsZS4gT25jZVxuICAgICAqIGEgYHdvcmtlcmAgaGFzIGNvbXBsZXRlZCBzb21lIHRhc2tzLCBlYWNoIGNhbGxiYWNrIG9mIHRob3NlIHRhc2tzIGlzXG4gICAgICogY2FsbGVkLiBDaGVjayBvdXQgW3RoZXNlXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tLzZiYmQzNmY0Y2Y1YjM1YTBmMTFhOTZkY2QyZTk3NzExZmZjMmZiMzcvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzODJmNjI2MjYzMzA2MzY2NjIzMDJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzOTM3MzQ2NjJkMzMzMzM5Mzc2MzM2MzQ2NDYzMzgzNTM4MmU2NzY5NjYpIFthbmltYXRpb25zXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Y0ODEwZTAwZTFjNWY1ZjhhZGRiZTNlOWY0OTA2NGZkNWQxMDI2OTkvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzMTJmMzgzNDYzMzkzMjMwMzYzNjJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzODMxMzQ2NjJkMzk2NDMzNjQzMDMyMzQzMTMzNjI2NjY0MmU2NzY5NjYpXG4gICAgICogZm9yIGhvdyBgY2FyZ29gIGFuZCBgcXVldWVgIHdvcmsuXG4gICAgICpcbiAgICAgKiBXaGlsZSBbYHF1ZXVlYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnF1ZXVlfSBwYXNzZXMgb25seSBvbmUgdGFzayB0byBvbmUgb2YgYSBncm91cCBvZiB3b3JrZXJzXG4gICAgICogYXQgYSB0aW1lLCBhbmQgW2BjYXJnb2Bde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5jYXJnb30gcGFzc2VzIGFuIGFycmF5IG9mIHRhc2tzIHRvIGEgc2luZ2xlIHdvcmtlcixcbiAgICAgKiB0aGUgY2FyZ29RdWV1ZSBwYXNzZXMgYW4gYXJyYXkgb2YgdGFza3MgdG8gbXVsdGlwbGUgcGFyYWxsZWwgd29ya2Vycy5cbiAgICAgKlxuICAgICAqIEBuYW1lIGNhcmdvUXVldWVcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5xdWV1ZV17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnF1ZXVlfVxuICAgICAqIEBzZWUgW2FzeW5jLmNhcmdvXXtAbGluayBtb2R1bGU6Q29udHJvbEZMb3cuY2FyZ299XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIGZvciBwcm9jZXNzaW5nIGFuIGFycmF5XG4gICAgICogb2YgcXVldWVkIHRhc2tzLiBJbnZva2VkIHdpdGggYCh0YXNrcywgY2FsbGJhY2spYC5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gW2NvbmN1cnJlbmN5PTFdIC0gQW4gYGludGVnZXJgIGZvciBkZXRlcm1pbmluZyBob3cgbWFueVxuICAgICAqIGB3b3JrZXJgIGZ1bmN0aW9ucyBzaG91bGQgYmUgcnVuIGluIHBhcmFsbGVsLiAgSWYgb21pdHRlZCwgdGhlIGNvbmN1cnJlbmN5XG4gICAgICogZGVmYXVsdHMgdG8gYDFgLiAgSWYgdGhlIGNvbmN1cnJlbmN5IGlzIGAwYCwgYW4gZXJyb3IgaXMgdGhyb3duLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBbcGF5bG9hZD1JbmZpbml0eV0gLSBBbiBvcHRpb25hbCBgaW50ZWdlcmAgZm9yIGRldGVybWluaW5nXG4gICAgICogaG93IG1hbnkgdGFza3Mgc2hvdWxkIGJlIHByb2Nlc3NlZCBwZXIgcm91bmQ7IGlmIG9taXR0ZWQsIHRoZSBkZWZhdWx0IGlzXG4gICAgICogdW5saW1pdGVkLlxuICAgICAqIEByZXR1cm5zIHttb2R1bGU6Q29udHJvbEZsb3cuUXVldWVPYmplY3R9IEEgY2FyZ29RdWV1ZSBvYmplY3QgdG8gbWFuYWdlIHRoZSB0YXNrcy4gQ2FsbGJhY2tzIGNhblxuICAgICAqIGF0dGFjaGVkIGFzIGNlcnRhaW4gcHJvcGVydGllcyB0byBsaXN0ZW4gZm9yIHNwZWNpZmljIGV2ZW50cyBkdXJpbmcgdGhlXG4gICAgICogbGlmZWN5Y2xlIG9mIHRoZSBjYXJnb1F1ZXVlIGFuZCBpbm5lciBxdWV1ZS5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gY3JlYXRlIGEgY2FyZ29RdWV1ZSBvYmplY3Qgd2l0aCBwYXlsb2FkIDIgYW5kIGNvbmN1cnJlbmN5IDJcbiAgICAgKiB2YXIgY2FyZ29RdWV1ZSA9IGFzeW5jLmNhcmdvUXVldWUoZnVuY3Rpb24odGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZvciAodmFyIGk9MDsgaTx0YXNrcy5sZW5ndGg7IGkrKykge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coJ2hlbGxvICcgKyB0YXNrc1tpXS5uYW1lKTtcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYWxsYmFjaygpO1xuICAgICAqIH0sIDIsIDIpO1xuICAgICAqXG4gICAgICogLy8gYWRkIHNvbWUgaXRlbXNcbiAgICAgKiBjYXJnb1F1ZXVlLnB1c2goe25hbWU6ICdmb28nfSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGZvbycpO1xuICAgICAqIH0pO1xuICAgICAqIGNhcmdvUXVldWUucHVzaCh7bmFtZTogJ2Jhcid9LCBmdW5jdGlvbihlcnIpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ2ZpbmlzaGVkIHByb2Nlc3NpbmcgYmFyJyk7XG4gICAgICogfSk7XG4gICAgICogY2FyZ29RdWV1ZS5wdXNoKHtuYW1lOiAnYmF6J30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBiYXonKTtcbiAgICAgKiB9KTtcbiAgICAgKiBjYXJnb1F1ZXVlLnB1c2goe25hbWU6ICdib28nfSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGJvbycpO1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIGNhcmdvJDEod29ya2VyLCBjb25jdXJyZW5jeSwgcGF5bG9hZCkge1xuICAgICAgICByZXR1cm4gcXVldWUod29ya2VyLCBjb25jdXJyZW5jeSwgcGF5bG9hZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVkdWNlcyBgY29sbGAgaW50byBhIHNpbmdsZSB2YWx1ZSB1c2luZyBhbiBhc3luYyBgaXRlcmF0ZWVgIHRvIHJldHVybiBlYWNoXG4gICAgICogc3VjY2Vzc2l2ZSBzdGVwLiBgbWVtb2AgaXMgdGhlIGluaXRpYWwgc3RhdGUgb2YgdGhlIHJlZHVjdGlvbi4gVGhpcyBmdW5jdGlvblxuICAgICAqIG9ubHkgb3BlcmF0ZXMgaW4gc2VyaWVzLlxuICAgICAqXG4gICAgICogRm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMsIGl0IG1heSBtYWtlIHNlbnNlIHRvIHNwbGl0IGEgY2FsbCB0byB0aGlzIGZ1bmN0aW9uXG4gICAgICogaW50byBhIHBhcmFsbGVsIG1hcCwgYW5kIHRoZW4gdXNlIHRoZSBub3JtYWwgYEFycmF5LnByb3RvdHlwZS5yZWR1Y2VgIG9uIHRoZVxuICAgICAqIHJlc3VsdHMuIFRoaXMgZnVuY3Rpb24gaXMgZm9yIHNpdHVhdGlvbnMgd2hlcmUgZWFjaCBzdGVwIGluIHRoZSByZWR1Y3Rpb25cbiAgICAgKiBuZWVkcyB0byBiZSBhc3luYzsgaWYgeW91IGNhbiBnZXQgdGhlIGRhdGEgYmVmb3JlIHJlZHVjaW5nIGl0LCB0aGVuIGl0J3NcbiAgICAgKiBwcm9iYWJseSBhIGdvb2QgaWRlYSB0byBkbyBzby5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJlZHVjZVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBhbGlhcyBpbmplY3RcbiAgICAgKiBAYWxpYXMgZm9sZGxcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7Kn0gbWVtbyAtIFRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSByZWR1Y3Rpb24uXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gYXBwbGllZCB0byBlYWNoIGl0ZW0gaW4gdGhlXG4gICAgICogYXJyYXkgdG8gcHJvZHVjZSB0aGUgbmV4dCBzdGVwIGluIHRoZSByZWR1Y3Rpb24uXG4gICAgICogVGhlIGBpdGVyYXRlZWAgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIG5leHQgc3RhdGUgb2YgdGhlIHJlZHVjdGlvbi5cbiAgICAgKiBJZiB0aGUgaXRlcmF0ZWUgY29tcGxldGVzIHdpdGggYW4gZXJyb3IsIHRoZSByZWR1Y3Rpb24gaXMgc3RvcHBlZCBhbmQgdGhlXG4gICAgICogbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZSBlcnJvci5cbiAgICAgKiBJbnZva2VkIHdpdGggKG1lbW8sIGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCBpcyB0aGUgcmVkdWNlZCB2YWx1ZS4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZmlsZTEudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDEwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIGZpbGUyLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAyMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlMy50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMzAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTQudHh0IGRvZXMgbm90IGV4aXN0XG4gICAgICpcbiAgICAgKiBjb25zdCBmaWxlTGlzdCA9IFsnZmlsZTEudHh0JywnZmlsZTIudHh0JywnZmlsZTMudHh0J107XG4gICAgICogY29uc3Qgd2l0aE1pc3NpbmdGaWxlTGlzdCA9IFsnZmlsZTEudHh0JywnZmlsZTIudHh0JywnZmlsZTMudHh0JywgJ2ZpbGU0LnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgY29tcHV0ZXMgdGhlIGZpbGUgc2l6ZSBpbiBieXRlc1xuICAgICAqIC8vIGZpbGUgc2l6ZSBpcyBhZGRlZCB0byB0aGUgbWVtb2l6ZWQgdmFsdWUsIHRoZW4gcmV0dXJuZWRcbiAgICAgKiBmdW5jdGlvbiBnZXRGaWxlU2l6ZUluQnl0ZXMobWVtbywgZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgZnMuc3RhdChmaWxlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsIG1lbW8gKyBzdGF0LnNpemUpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5yZWR1Y2UoZmlsZUxpc3QsIDAsIGdldEZpbGVTaXplSW5CeXRlcywgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyA2MDAwXG4gICAgICogICAgICAgICAvLyB3aGljaCBpcyB0aGUgc3VtIG9mIHRoZSBmaWxlIHNpemVzIG9mIHRoZSB0aHJlZSBmaWxlc1xuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jLnJlZHVjZSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCAwLCBnZXRGaWxlU2l6ZUluQnl0ZXMsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5yZWR1Y2UoZmlsZUxpc3QsIDAsIGdldEZpbGVTaXplSW5CeXRlcylcbiAgICAgKiAudGhlbiggcmVzdWx0ID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgLy8gNjAwMFxuICAgICAqICAgICAvLyB3aGljaCBpcyB0aGUgc3VtIG9mIHRoZSBmaWxlIHNpemVzIG9mIHRoZSB0aHJlZSBmaWxlc1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5yZWR1Y2Uod2l0aE1pc3NpbmdGaWxlTGlzdCwgMCwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMucmVkdWNlKGZpbGVMaXN0LCAwLCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIDYwMDBcbiAgICAgKiAgICAgICAgIC8vIHdoaWNoIGlzIHRoZSBzdW0gb2YgdGhlIGZpbGUgc2l6ZXMgb2YgdGhlIHRocmVlIGZpbGVzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLnJlZHVjZSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCAwLCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAgICAgLy8gWyBFcnJvcjogRU5PRU5UOiBubyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IF1cbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlZHVjZShjb2xsLCBtZW1vLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIF9pdGVyYXRlZSA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG4gICAgICAgIHJldHVybiBlYWNoT2ZTZXJpZXMkMShjb2xsLCAoeCwgaSwgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICBfaXRlcmF0ZWUobWVtbywgeCwgKGVyciwgdikgPT4ge1xuICAgICAgICAgICAgICAgIG1lbW8gPSB2O1xuICAgICAgICAgICAgICAgIGl0ZXJDYihlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVyciA9PiBjYWxsYmFjayhlcnIsIG1lbW8pKTtcbiAgICB9XG4gICAgdmFyIHJlZHVjZSQxID0gYXdhaXRpZnkocmVkdWNlLCA0KTtcblxuICAgIC8qKlxuICAgICAqIFZlcnNpb24gb2YgdGhlIGNvbXBvc2UgZnVuY3Rpb24gdGhhdCBpcyBtb3JlIG5hdHVyYWwgdG8gcmVhZC4gRWFjaCBmdW5jdGlvblxuICAgICAqIGNvbnN1bWVzIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHByZXZpb3VzIGZ1bmN0aW9uLiBJdCBpcyB0aGUgZXF1aXZhbGVudCBvZlxuICAgICAqIFtjb21wb3NlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuY29tcG9zZX0gd2l0aCB0aGUgYXJndW1lbnRzIHJldmVyc2VkLlxuICAgICAqXG4gICAgICogRWFjaCBmdW5jdGlvbiBpcyBleGVjdXRlZCB3aXRoIHRoZSBgdGhpc2AgYmluZGluZyBvZiB0aGUgY29tcG9zZWQgZnVuY3Rpb24uXG4gICAgICpcbiAgICAgKiBAbmFtZSBzZXFcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5jb21wb3NlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuY29tcG9zZX1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHsuLi5Bc3luY0Z1bmN0aW9ufSBmdW5jdGlvbnMgLSB0aGUgYXN5bmNocm9ub3VzIGZ1bmN0aW9ucyB0byBjb21wb3NlXG4gICAgICogQHJldHVybnMge0Z1bmN0aW9ufSBhIGZ1bmN0aW9uIHRoYXQgY29tcG9zZXMgdGhlIGBmdW5jdGlvbnNgIGluIG9yZGVyXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIFJlcXVpcmVzIGxvZGFzaCAob3IgdW5kZXJzY29yZSksIGV4cHJlc3MzIGFuZCBkcmVzZW5kZSdzIG9ybTIuXG4gICAgICogLy8gUGFydCBvZiBhbiBhcHAsIHRoYXQgZmV0Y2hlcyBjYXRzIG9mIHRoZSBsb2dnZWQgdXNlci5cbiAgICAgKiAvLyBUaGlzIGV4YW1wbGUgdXNlcyBgc2VxYCBmdW5jdGlvbiB0byBhdm9pZCBvdmVybmVzdGluZyBhbmQgZXJyb3JcbiAgICAgKiAvLyBoYW5kbGluZyBjbHV0dGVyLlxuICAgICAqIGFwcC5nZXQoJy9jYXRzJywgZnVuY3Rpb24ocmVxdWVzdCwgcmVzcG9uc2UpIHtcbiAgICAgKiAgICAgdmFyIFVzZXIgPSByZXF1ZXN0Lm1vZGVscy5Vc2VyO1xuICAgICAqICAgICBhc3luYy5zZXEoXG4gICAgICogICAgICAgICBVc2VyLmdldC5iaW5kKFVzZXIpLCAgLy8gJ1VzZXIuZ2V0JyBoYXMgc2lnbmF0dXJlIChpZCwgY2FsbGJhY2soZXJyLCBkYXRhKSlcbiAgICAgKiAgICAgICAgIGZ1bmN0aW9uKHVzZXIsIGZuKSB7XG4gICAgICogICAgICAgICAgICAgdXNlci5nZXRDYXRzKGZuKTsgICAgICAvLyAnZ2V0Q2F0cycgaGFzIHNpZ25hdHVyZSAoY2FsbGJhY2soZXJyLCBkYXRhKSlcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgKShyZXEuc2Vzc2lvbi51c2VyX2lkLCBmdW5jdGlvbiAoZXJyLCBjYXRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgICAqICAgICAgICAgICAgIHJlc3BvbnNlLmpzb24oeyBzdGF0dXM6ICdlcnJvcicsIG1lc3NhZ2U6IGVyci5tZXNzYWdlIH0pO1xuICAgICAqICAgICAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgICAgICByZXNwb25zZS5qc29uKHsgc3RhdHVzOiAnb2snLCBtZXNzYWdlOiAnQ2F0cyBmb3VuZCcsIGRhdGE6IGNhdHMgfSk7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH0pO1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHNlcSguLi5mdW5jdGlvbnMpIHtcbiAgICAgICAgdmFyIF9mdW5jdGlvbnMgPSBmdW5jdGlvbnMubWFwKHdyYXBBc3luYyk7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJncykge1xuICAgICAgICAgICAgdmFyIHRoYXQgPSB0aGlzO1xuXG4gICAgICAgICAgICB2YXIgY2IgPSBhcmdzW2FyZ3MubGVuZ3RoIC0gMV07XG4gICAgICAgICAgICBpZiAodHlwZW9mIGNiID09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBhcmdzLnBvcCgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjYiA9IHByb21pc2VDYWxsYmFjaygpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZWR1Y2UkMShfZnVuY3Rpb25zLCBhcmdzLCAobmV3YXJncywgZm4sIGl0ZXJDYikgPT4ge1xuICAgICAgICAgICAgICAgIGZuLmFwcGx5KHRoYXQsIG5ld2FyZ3MuY29uY2F0KChlcnIsIC4uLm5leHRhcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZXJDYihlcnIsIG5leHRhcmdzKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKGVyciwgcmVzdWx0cykgPT4gY2IoZXJyLCAuLi5yZXN1bHRzKSk7XG5cbiAgICAgICAgICAgIHJldHVybiBjYltQUk9NSVNFX1NZTUJPTF1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgZnVuY3Rpb24gd2hpY2ggaXMgYSBjb21wb3NpdGlvbiBvZiB0aGUgcGFzc2VkIGFzeW5jaHJvbm91c1xuICAgICAqIGZ1bmN0aW9ucy4gRWFjaCBmdW5jdGlvbiBjb25zdW1lcyB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBmdW5jdGlvbiB0aGF0XG4gICAgICogZm9sbG93cy4gQ29tcG9zaW5nIGZ1bmN0aW9ucyBgZigpYCwgYGcoKWAsIGFuZCBgaCgpYCB3b3VsZCBwcm9kdWNlIHRoZSByZXN1bHRcbiAgICAgKiBvZiBgZihnKGgoKSkpYCwgb25seSB0aGlzIHZlcnNpb24gdXNlcyBjYWxsYmFja3MgdG8gb2J0YWluIHRoZSByZXR1cm4gdmFsdWVzLlxuICAgICAqXG4gICAgICogSWYgdGhlIGxhc3QgYXJndW1lbnQgdG8gdGhlIGNvbXBvc2VkIGZ1bmN0aW9uIGlzIG5vdCBhIGZ1bmN0aW9uLCBhIHByb21pc2VcbiAgICAgKiBpcyByZXR1cm5lZCB3aGVuIHlvdSBjYWxsIGl0LlxuICAgICAqXG4gICAgICogRWFjaCBmdW5jdGlvbiBpcyBleGVjdXRlZCB3aXRoIHRoZSBgdGhpc2AgYmluZGluZyBvZiB0aGUgY29tcG9zZWQgZnVuY3Rpb24uXG4gICAgICpcbiAgICAgKiBAbmFtZSBjb21wb3NlXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7Li4uQXN5bmNGdW5jdGlvbn0gZnVuY3Rpb25zIC0gdGhlIGFzeW5jaHJvbm91cyBmdW5jdGlvbnMgdG8gY29tcG9zZVxuICAgICAqIEByZXR1cm5zIHtGdW5jdGlvbn0gYW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgaXMgdGhlIGNvbXBvc2VkXG4gICAgICogYXN5bmNocm9ub3VzIGBmdW5jdGlvbnNgXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGZ1bmN0aW9uIGFkZDEobiwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBuICsgMSk7XG4gICAgICogICAgIH0sIDEwKTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiBmdW5jdGlvbiBtdWwzKG4sIGNhbGxiYWNrKSB7XG4gICAgICogICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgbiAqIDMpO1xuICAgICAqICAgICB9LCAxMCk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogdmFyIGFkZDFtdWwzID0gYXN5bmMuY29tcG9zZShtdWwzLCBhZGQxKTtcbiAgICAgKiBhZGQxbXVsMyg0LCBmdW5jdGlvbiAoZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgMTVcbiAgICAgKiB9KTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBjb21wb3NlKC4uLmFyZ3MpIHtcbiAgICAgICAgcmV0dXJuIHNlcSguLi5hcmdzLnJldmVyc2UoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2BtYXBgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIG1hcExpbWl0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMubWFwXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfVxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIHRoZSB0cmFuc2Zvcm1lZCBpdGVtLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCB3aGVuIGFsbCBgaXRlcmF0ZWVgXG4gICAgICogZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0cyBpcyBhbiBhcnJheSBvZiB0aGVcbiAgICAgKiB0cmFuc2Zvcm1lZCBpdGVtcyBmcm9tIHRoZSBgY29sbGAuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHRzKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBtYXBMaW1pdCAoY29sbCwgbGltaXQsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2FzeW5jTWFwKGVhY2hPZkxpbWl0KGxpbWl0KSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgbWFwTGltaXQkMSA9IGF3YWl0aWZ5KG1hcExpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgY29uY2F0YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmNvbmNhdH0gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBjb25jYXRMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmNvbmNhdF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmNvbmNhdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBhbGlhcyBmbGF0TWFwTGltaXRcbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYCxcbiAgICAgKiB3aGljaCBzaG91bGQgdXNlIGFuIGFycmF5IGFzIGl0cyByZXN1bHQuIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHRzIGlzIGFuIGFycmF5XG4gICAgICogY29udGFpbmluZyB0aGUgY29uY2F0ZW5hdGVkIHJlc3VsdHMgb2YgdGhlIGBpdGVyYXRlZWAgZnVuY3Rpb24uIEludm9rZWQgd2l0aFxuICAgICAqIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIEEgUHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICovXG4gICAgZnVuY3Rpb24gY29uY2F0TGltaXQoY29sbCwgbGltaXQsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgX2l0ZXJhdGVlID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgcmV0dXJuIG1hcExpbWl0JDEoY29sbCwgbGltaXQsICh2YWwsIGl0ZXJDYikgPT4ge1xuICAgICAgICAgICAgX2l0ZXJhdGVlKHZhbCwgKGVyciwgLi4uYXJncykgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBpdGVyQ2IoZXJyKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlckNiKGVyciwgYXJncyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgKGVyciwgbWFwUmVzdWx0cykgPT4ge1xuICAgICAgICAgICAgdmFyIHJlc3VsdCA9IFtdO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtYXBSZXN1bHRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKG1hcFJlc3VsdHNbaV0pIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCguLi5tYXBSZXN1bHRzW2ldKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIsIHJlc3VsdCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICB2YXIgY29uY2F0TGltaXQkMSA9IGF3YWl0aWZ5KGNvbmNhdExpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIEFwcGxpZXMgYGl0ZXJhdGVlYCB0byBlYWNoIGl0ZW0gaW4gYGNvbGxgLCBjb25jYXRlbmF0aW5nIHRoZSByZXN1bHRzLiBSZXR1cm5zXG4gICAgICogdGhlIGNvbmNhdGVuYXRlZCBsaXN0LiBUaGUgYGl0ZXJhdGVlYHMgYXJlIGNhbGxlZCBpbiBwYXJhbGxlbCwgYW5kIHRoZVxuICAgICAqIHJlc3VsdHMgYXJlIGNvbmNhdGVuYXRlZCBhcyB0aGV5IHJldHVybi4gVGhlIHJlc3VsdHMgYXJyYXkgd2lsbCBiZSByZXR1cm5lZCBpblxuICAgICAqIHRoZSBvcmlnaW5hbCBvcmRlciBvZiBgY29sbGAgcGFzc2VkIHRvIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uLlxuICAgICAqXG4gICAgICogQG5hbWUgY29uY2F0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAYWxpYXMgZmxhdE1hcFxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpbiBgY29sbGAsXG4gICAgICogd2hpY2ggc2hvdWxkIHVzZSBhbiBhcnJheSBhcyBpdHMgcmVzdWx0LiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0cyBpcyBhbiBhcnJheVxuICAgICAqIGNvbnRhaW5pbmcgdGhlIGNvbmNhdGVuYXRlZCByZXN1bHRzIG9mIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uLiBJbnZva2VkIHdpdGhcbiAgICAgKiAoZXJyLCByZXN1bHRzKS5cbiAgICAgKiBAcmV0dXJucyBBIFByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBkaXIxIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTEudHh0LCBmaWxlMi50eHRcbiAgICAgKiAvLyBkaXIyIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTMudHh0LCBmaWxlNC50eHRcbiAgICAgKiAvLyBkaXIzIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTUudHh0XG4gICAgICogLy8gZGlyNCBkb2VzIG5vdCBleGlzdFxuICAgICAqXG4gICAgICogbGV0IGRpcmVjdG9yeUxpc3QgPSBbJ2RpcjEnLCdkaXIyJywnZGlyMyddO1xuICAgICAqIGxldCB3aXRoTWlzc2luZ0RpcmVjdG9yeUxpc3QgPSBbJ2RpcjEnLCdkaXIyJywnZGlyMycsICdkaXI0J107XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5jb25jYXQoZGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpciwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgaWYgKGVycikge1xuICAgICAqICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAvLyBbICdmaWxlMS50eHQnLCAnZmlsZTIudHh0JywgJ2ZpbGUzLnR4dCcsICdmaWxlNC50eHQnLCBmaWxlNS50eHQgXVxuICAgICAqICAgIH1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMuY29uY2F0KHdpdGhNaXNzaW5nRGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpciwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgaWYgKGVycikge1xuICAgICAqICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICAgICAvLyBzaW5jZSBkaXI0IGRvZXMgbm90IGV4aXN0XG4gICAgICogICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5jb25jYXQoZGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpcilcbiAgICAgKiAudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIFsgJ2ZpbGUxLnR4dCcsICdmaWxlMi50eHQnLCAnZmlsZTMudHh0JywgJ2ZpbGU0LnR4dCcsIGZpbGU1LnR4dCBdXG4gICAgICogfSkuY2F0Y2goZXJyID0+IHtcbiAgICAgKiAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jLmNvbmNhdCh3aXRoTWlzc2luZ0RpcmVjdG9yeUxpc3QsIGZzLnJlYWRkaXIpXG4gICAgICogLnRoZW4ocmVzdWx0cyA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIC8vIHNpbmNlIGRpcjQgZG9lcyBub3QgZXhpc3RcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5jb25jYXQoZGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpcik7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgICAgIC8vIFsgJ2ZpbGUxLnR4dCcsICdmaWxlMi50eHQnLCAnZmlsZTMudHh0JywgJ2ZpbGU0LnR4dCcsIGZpbGU1LnR4dCBdXG4gICAgICogICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5jb25jYXQod2l0aE1pc3NpbmdEaXJlY3RvcnlMaXN0LCBmcy5yZWFkZGlyKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICAgICAgLy8gc2luY2UgZGlyNCBkb2VzIG5vdCBleGlzdFxuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gY29uY2F0KGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gY29uY2F0TGltaXQkMShjb2xsLCBJbmZpbml0eSwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgY29uY2F0JDEgPSBhd2FpdGlmeShjb25jYXQsIDMpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2Bjb25jYXRgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuY29uY2F0fSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBjb25jYXRTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5jb25jYXRde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5jb25jYXR9XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAYWxpYXMgZmxhdE1hcFNlcmllc1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpbiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGFuIGFycmF5IGFuIGFycmF5IG9mIHJlc3VsdHMuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIFJlc3VsdHMgaXMgYW4gYXJyYXlcbiAgICAgKiBjb250YWluaW5nIHRoZSBjb25jYXRlbmF0ZWQgcmVzdWx0cyBvZiB0aGUgYGl0ZXJhdGVlYCBmdW5jdGlvbi4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMgQSBQcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBjb25jYXRTZXJpZXMoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBjb25jYXRMaW1pdCQxKGNvbGwsIDEsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGNvbmNhdFNlcmllcyQxID0gYXdhaXRpZnkoY29uY2F0U2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBmdW5jdGlvbiB0aGF0IHdoZW4gY2FsbGVkLCBjYWxscy1iYWNrIHdpdGggdGhlIHZhbHVlcyBwcm92aWRlZC5cbiAgICAgKiBVc2VmdWwgYXMgdGhlIGZpcnN0IGZ1bmN0aW9uIGluIGEgW2B3YXRlcmZhbGxgXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cud2F0ZXJmYWxsfSwgb3IgZm9yIHBsdWdnaW5nIHZhbHVlcyBpbiB0b1xuICAgICAqIFtgYXV0b2Bde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5hdXRvfS5cbiAgICAgKlxuICAgICAqIEBuYW1lIGNvbnN0YW50XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0gey4uLip9IGFyZ3VtZW50cy4uLiAtIEFueSBudW1iZXIgb2YgYXJndW1lbnRzIHRvIGF1dG9tYXRpY2FsbHkgaW52b2tlXG4gICAgICogY2FsbGJhY2sgd2l0aC5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gUmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgd2hlbiBpbnZva2VkLCBhdXRvbWF0aWNhbGx5XG4gICAgICogaW52b2tlcyB0aGUgY2FsbGJhY2sgd2l0aCB0aGUgcHJldmlvdXMgZ2l2ZW4gYXJndW1lbnRzLlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBhc3luYy53YXRlcmZhbGwoW1xuICAgICAqICAgICBhc3luYy5jb25zdGFudCg0MiksXG4gICAgICogICAgIGZ1bmN0aW9uICh2YWx1ZSwgbmV4dCkge1xuICAgICAqICAgICAgICAgLy8gdmFsdWUgPT09IDQyXG4gICAgICogICAgIH0sXG4gICAgICogICAgIC8vLi4uXG4gICAgICogXSwgY2FsbGJhY2spO1xuICAgICAqXG4gICAgICogYXN5bmMud2F0ZXJmYWxsKFtcbiAgICAgKiAgICAgYXN5bmMuY29uc3RhbnQoZmlsZW5hbWUsIFwidXRmOFwiKSxcbiAgICAgKiAgICAgZnMucmVhZEZpbGUsXG4gICAgICogICAgIGZ1bmN0aW9uIChmaWxlRGF0YSwgbmV4dCkge1xuICAgICAqICAgICAgICAgLy8uLi5cbiAgICAgKiAgICAgfVxuICAgICAqICAgICAvLy4uLlxuICAgICAqIF0sIGNhbGxiYWNrKTtcbiAgICAgKlxuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICBob3N0bmFtZTogYXN5bmMuY29uc3RhbnQoXCJodHRwczovL3NlcnZlci5uZXQvXCIpLFxuICAgICAqICAgICBwb3J0OiBmaW5kRnJlZVBvcnQsXG4gICAgICogICAgIGxhdW5jaFNlcnZlcjogW1wiaG9zdG5hbWVcIiwgXCJwb3J0XCIsIGZ1bmN0aW9uIChvcHRpb25zLCBjYikge1xuICAgICAqICAgICAgICAgc3RhcnRTZXJ2ZXIob3B0aW9ucywgY2IpO1xuICAgICAqICAgICB9XSxcbiAgICAgKiAgICAgLy8uLi5cbiAgICAgKiB9LCBjYWxsYmFjayk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gY29uc3RhbnQoLi4uYXJncykge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKC4uLmlnbm9yZWRBcmdzLyosIGNhbGxiYWNrKi8pIHtcbiAgICAgICAgICAgIHZhciBjYWxsYmFjayA9IGlnbm9yZWRBcmdzLnBvcCgpO1xuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG51bGwsIC4uLmFyZ3MpO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIF9jcmVhdGVUZXN0ZXIoY2hlY2ssIGdldFJlc3VsdCkge1xuICAgICAgICByZXR1cm4gKGVhY2hmbiwgYXJyLCBfaXRlcmF0ZWUsIGNiKSA9PiB7XG4gICAgICAgICAgICB2YXIgdGVzdFBhc3NlZCA9IGZhbHNlO1xuICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQ7XG4gICAgICAgICAgICBjb25zdCBpdGVyYXRlZSA9IHdyYXBBc3luYyhfaXRlcmF0ZWUpO1xuICAgICAgICAgICAgZWFjaGZuKGFyciwgKHZhbHVlLCBfLCBjYWxsYmFjaykgPT4ge1xuICAgICAgICAgICAgICAgIGl0ZXJhdGVlKHZhbHVlLCAoZXJyLCByZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVyciB8fCBlcnIgPT09IGZhbHNlKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoY2hlY2socmVzdWx0KSAmJiAhdGVzdFJlc3VsdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gZ2V0UmVzdWx0KHRydWUsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhudWxsLCBicmVha0xvb3ApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LCBlcnIgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYihlcnIpO1xuICAgICAgICAgICAgICAgIGNiKG51bGwsIHRlc3RQYXNzZWQgPyB0ZXN0UmVzdWx0IDogZ2V0UmVzdWx0KGZhbHNlKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmaXJzdCB2YWx1ZSBpbiBgY29sbGAgdGhhdCBwYXNzZXMgYW4gYXN5bmMgdHJ1dGggdGVzdC4gVGhlXG4gICAgICogYGl0ZXJhdGVlYCBpcyBhcHBsaWVkIGluIHBhcmFsbGVsLCBtZWFuaW5nIHRoZSBmaXJzdCBpdGVyYXRlZSB0byByZXR1cm5cbiAgICAgKiBgdHJ1ZWAgd2lsbCBmaXJlIHRoZSBkZXRlY3QgYGNhbGxiYWNrYCB3aXRoIHRoYXQgcmVzdWx0LiBUaGF0IG1lYW5zIHRoZVxuICAgICAqIHJlc3VsdCBtaWdodCBub3QgYmUgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIG9yaWdpbmFsIGBjb2xsYCAoaW4gdGVybXMgb2Ygb3JkZXIpXG4gICAgICogdGhhdCBwYXNzZXMgdGhlIHRlc3QuXG5cbiAgICAgKiBJZiBvcmRlciB3aXRoaW4gdGhlIG9yaWdpbmFsIGBjb2xsYCBpcyBpbXBvcnRhbnQsIHRoZW4gbG9vayBhdFxuICAgICAqIFtgZGV0ZWN0U2VyaWVzYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmRldGVjdFNlcmllc30uXG4gICAgICpcbiAgICAgKiBAbmFtZSBkZXRlY3RcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAYWxpYXMgZmluZFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uc1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgbXVzdCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiB2YWx1ZSBhcyBpdHMgcmVzdWx0LlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhcyBzb29uIGFzIGFueVxuICAgICAqIGl0ZXJhdGVlIHJldHVybnMgYHRydWVgLCBvciBhZnRlciBhbGwgdGhlIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuXG4gICAgICogUmVzdWx0IHdpbGwgYmUgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIGFycmF5IHRoYXQgcGFzc2VzIHRoZSB0cnV0aCB0ZXN0XG4gICAgICogKGl0ZXJhdGVlKSBvciB0aGUgdmFsdWUgYHVuZGVmaW5lZGAgaWYgbm9uZSBwYXNzZWQuIEludm9rZWQgd2l0aFxuICAgICAqIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IGNoZWNrcyBpZiBhIGZpbGUgZXhpc3RzXG4gICAgICogZnVuY3Rpb24gZmlsZUV4aXN0cyhmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgIGZzLmFjY2VzcyhmaWxlLCBmcy5jb25zdGFudHMuRl9PSywgKGVycikgPT4ge1xuICAgICAqICAgICAgICBjYWxsYmFjayhudWxsLCAhZXJyKTtcbiAgICAgKiAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiBhc3luYy5kZXRlY3QoWydmaWxlMy50eHQnLCdmaWxlMi50eHQnLCdkaXIxL2ZpbGUxLnR4dCddLCBmaWxlRXhpc3RzLFxuICAgICAqICAgIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgIC8vIGRpcjEvZmlsZTEudHh0XG4gICAgICogICAgICAgIC8vIHJlc3VsdCBub3cgZXF1YWxzIHRoZSBmaXJzdCBmaWxlIGluIHRoZSBsaXN0IHRoYXQgZXhpc3RzXG4gICAgICogICAgfVxuICAgICAqKTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZGV0ZWN0KFsnZmlsZTMudHh0JywnZmlsZTIudHh0JywnZGlyMS9maWxlMS50eHQnXSwgZmlsZUV4aXN0cylcbiAgICAgKiAudGhlbihyZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyBkaXIxL2ZpbGUxLnR4dFxuICAgICAqICAgICAvLyByZXN1bHQgbm93IGVxdWFscyB0aGUgZmlyc3QgZmlsZSBpbiB0aGUgbGlzdCB0aGF0IGV4aXN0c1xuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy5kZXRlY3QoWydmaWxlMy50eHQnLCdmaWxlMi50eHQnLCdkaXIxL2ZpbGUxLnR4dCddLCBmaWxlRXhpc3RzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyBkaXIxL2ZpbGUxLnR4dFxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgdGhlIGZpbGUgaW4gdGhlIGxpc3QgdGhhdCBleGlzdHNcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gZGV0ZWN0KGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3Rlcihib29sID0+IGJvb2wsIChyZXMsIGl0ZW0pID0+IGl0ZW0pKGVhY2hPZiQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBkZXRlY3QkMSA9IGF3YWl0aWZ5KGRldGVjdCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGRldGVjdGBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5kZXRlY3R9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBkZXRlY3RMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmRldGVjdF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmRldGVjdH1cbiAgICAgKiBAYWxpYXMgZmluZExpbWl0XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25zXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgbXVzdCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiB2YWx1ZSBhcyBpdHMgcmVzdWx0LlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhcyBzb29uIGFzIGFueVxuICAgICAqIGl0ZXJhdGVlIHJldHVybnMgYHRydWVgLCBvciBhZnRlciBhbGwgdGhlIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuXG4gICAgICogUmVzdWx0IHdpbGwgYmUgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIGFycmF5IHRoYXQgcGFzc2VzIHRoZSB0cnV0aCB0ZXN0XG4gICAgICogKGl0ZXJhdGVlKSBvciB0aGUgdmFsdWUgYHVuZGVmaW5lZGAgaWYgbm9uZSBwYXNzZWQuIEludm9rZWQgd2l0aFxuICAgICAqIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZGV0ZWN0TGltaXQoY29sbCwgbGltaXQsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3Rlcihib29sID0+IGJvb2wsIChyZXMsIGl0ZW0pID0+IGl0ZW0pKGVhY2hPZkxpbWl0KGxpbWl0KSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgZGV0ZWN0TGltaXQkMSA9IGF3YWl0aWZ5KGRldGVjdExpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgZGV0ZWN0YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmRldGVjdH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZGV0ZWN0U2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZGV0ZWN0XXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZGV0ZWN0fVxuICAgICAqIEBhbGlhcyBmaW5kU2VyaWVzXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25zXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBpdGVyYXRlZSBtdXN0IGNvbXBsZXRlIHdpdGggYSBib29sZWFuIHZhbHVlIGFzIGl0cyByZXN1bHQuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFzIHNvb24gYXMgYW55XG4gICAgICogaXRlcmF0ZWUgcmV0dXJucyBgdHJ1ZWAsIG9yIGFmdGVyIGFsbCB0aGUgYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgYXJyYXkgdGhhdCBwYXNzZXMgdGhlIHRydXRoIHRlc3RcbiAgICAgKiAoaXRlcmF0ZWUpIG9yIHRoZSB2YWx1ZSBgdW5kZWZpbmVkYCBpZiBub25lIHBhc3NlZC4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBkZXRlY3RTZXJpZXMoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBfY3JlYXRlVGVzdGVyKGJvb2wgPT4gYm9vbCwgKHJlcywgaXRlbSkgPT4gaXRlbSkoZWFjaE9mTGltaXQoMSksIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICB2YXIgZGV0ZWN0U2VyaWVzJDEgPSBhd2FpdGlmeShkZXRlY3RTZXJpZXMsIDMpO1xuXG4gICAgZnVuY3Rpb24gY29uc29sZUZ1bmMobmFtZSkge1xuICAgICAgICByZXR1cm4gKGZuLCAuLi5hcmdzKSA9PiB3cmFwQXN5bmMoZm4pKC4uLmFyZ3MsIChlcnIsIC4uLnJlc3VsdEFyZ3MpID0+IHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICBpZiAodHlwZW9mIGNvbnNvbGUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICAgICAgICAgIGlmIChjb25zb2xlLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnNvbGVbbmFtZV0pIHsgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0QXJncy5mb3JFYWNoKHggPT4gY29uc29sZVtuYW1lXSh4KSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgdGhlIHJlc3VsdCBvZiBhbiBbYGFzeW5jYCBmdW5jdGlvbl17QGxpbmsgQXN5bmNGdW5jdGlvbn0gdG8gdGhlXG4gICAgICogYGNvbnNvbGVgIHVzaW5nIGBjb25zb2xlLmRpcmAgdG8gZGlzcGxheSB0aGUgcHJvcGVydGllcyBvZiB0aGUgcmVzdWx0aW5nIG9iamVjdC5cbiAgICAgKiBPbmx5IHdvcmtzIGluIE5vZGUuanMgb3IgaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IGBjb25zb2xlLmRpcmAgYW5kXG4gICAgICogYGNvbnNvbGUuZXJyb3JgIChzdWNoIGFzIEZGIGFuZCBDaHJvbWUpLlxuICAgICAqIElmIG11bHRpcGxlIGFyZ3VtZW50cyBhcmUgcmV0dXJuZWQgZnJvbSB0aGUgYXN5bmMgZnVuY3Rpb24sXG4gICAgICogYGNvbnNvbGUuZGlyYCBpcyBjYWxsZWQgb24gZWFjaCBhcmd1bWVudCBpbiBvcmRlci5cbiAgICAgKlxuICAgICAqIEBuYW1lIGRpclxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOlV0aWxzXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBVdGlsXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBmdW5jdGlvbiAtIFRoZSBmdW5jdGlvbiB5b3Ugd2FudCB0byBldmVudHVhbGx5IGFwcGx5XG4gICAgICogYWxsIGFyZ3VtZW50cyB0by5cbiAgICAgKiBAcGFyYW0gey4uLip9IGFyZ3VtZW50cy4uLiAtIEFueSBudW1iZXIgb2YgYXJndW1lbnRzIHRvIGFwcGx5IHRvIHRoZSBmdW5jdGlvbi5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gaW4gYSBtb2R1bGVcbiAgICAgKiB2YXIgaGVsbG8gPSBmdW5jdGlvbihuYW1lLCBjYWxsYmFjaykge1xuICAgICAqICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwge2hlbGxvOiBuYW1lfSk7XG4gICAgICogICAgIH0sIDEwMDApO1xuICAgICAqIH07XG4gICAgICpcbiAgICAgKiAvLyBpbiB0aGUgbm9kZSByZXBsXG4gICAgICogbm9kZT4gYXN5bmMuZGlyKGhlbGxvLCAnd29ybGQnKTtcbiAgICAgKiB7aGVsbG86ICd3b3JsZCd9XG4gICAgICovXG4gICAgdmFyIGRpciA9IGNvbnNvbGVGdW5jKCdkaXInKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBwb3N0LWNoZWNrIHZlcnNpb24gb2YgW2B3aGlsc3RgXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cud2hpbHN0fS4gVG8gcmVmbGVjdCB0aGUgZGlmZmVyZW5jZSBpblxuICAgICAqIHRoZSBvcmRlciBvZiBvcGVyYXRpb25zLCB0aGUgYXJndW1lbnRzIGB0ZXN0YCBhbmQgYGl0ZXJhdGVlYCBhcmUgc3dpdGNoZWQuXG4gICAgICpcbiAgICAgKiBgZG9XaGlsc3RgIGlzIHRvIGB3aGlsc3RgIGFzIGBkbyB3aGlsZWAgaXMgdG8gYHdoaWxlYCBpbiBwbGFpbiBKYXZhU2NyaXB0LlxuICAgICAqXG4gICAgICogQG5hbWUgZG9XaGlsc3RcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy53aGlsc3Rde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy53aGlsc3R9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHdoaWNoIGlzIGNhbGxlZCBlYWNoIHRpbWUgYHRlc3RgXG4gICAgICogcGFzc2VzLiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IHRlc3QgLSBhc3luY2hyb25vdXMgdHJ1dGggdGVzdCB0byBwZXJmb3JtIGFmdGVyIGVhY2hcbiAgICAgKiBleGVjdXRpb24gb2YgYGl0ZXJhdGVlYC4gSW52b2tlZCB3aXRoICguLi5hcmdzLCBjYWxsYmFjayksIHdoZXJlIGAuLi5hcmdzYCBhcmUgdGhlXG4gICAgICogbm9uLWVycm9yIGFyZ3MgZnJvbSB0aGUgcHJldmlvdXMgY2FsbGJhY2sgb2YgYGl0ZXJhdGVlYC5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgdGhlIHRlc3RcbiAgICAgKiBmdW5jdGlvbiBoYXMgZmFpbGVkIGFuZCByZXBlYXRlZCBleGVjdXRpb24gb2YgYGl0ZXJhdGVlYCBoYXMgc3RvcHBlZC5cbiAgICAgKiBgY2FsbGJhY2tgIHdpbGwgYmUgcGFzc2VkIGFuIGVycm9yIGFuZCBhbnkgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgZmluYWxcbiAgICAgKiBgaXRlcmF0ZWVgJ3MgY2FsbGJhY2suIEludm9rZWQgd2l0aCAoZXJyLCBbcmVzdWx0c10pO1xuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGRvV2hpbHN0KGl0ZXJhdGVlLCB0ZXN0LCBjYWxsYmFjaykge1xuICAgICAgICBjYWxsYmFjayA9IG9ubHlPbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIF9mbiA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG4gICAgICAgIHZhciBfdGVzdCA9IHdyYXBBc3luYyh0ZXN0KTtcbiAgICAgICAgdmFyIHJlc3VsdHM7XG5cbiAgICAgICAgZnVuY3Rpb24gbmV4dChlcnIsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIHJlc3VsdHMgPSBhcmdzO1xuICAgICAgICAgICAgX3Rlc3QoLi4uYXJncywgY2hlY2spO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gY2hlY2soZXJyLCB0cnV0aCkge1xuICAgICAgICAgICAgaWYgKGVycikgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICBpZiAoZXJyID09PSBmYWxzZSkgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKCF0cnV0aCkgcmV0dXJuIGNhbGxiYWNrKG51bGwsIC4uLnJlc3VsdHMpO1xuICAgICAgICAgICAgX2ZuKG5leHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNoZWNrKG51bGwsIHRydWUpO1xuICAgIH1cblxuICAgIHZhciBkb1doaWxzdCQxID0gYXdhaXRpZnkoZG9XaGlsc3QsIDMpO1xuXG4gICAgLyoqXG4gICAgICogTGlrZSBbJ2RvV2hpbHN0J117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LmRvV2hpbHN0fSwgZXhjZXB0IHRoZSBgdGVzdGAgaXMgaW52ZXJ0ZWQuIE5vdGUgdGhlXG4gICAgICogYXJndW1lbnQgb3JkZXJpbmcgZGlmZmVycyBmcm9tIGB1bnRpbGAuXG4gICAgICpcbiAgICAgKiBAbmFtZSBkb1VudGlsXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZG9XaGlsc3Rde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5kb1doaWxzdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHdoaWNoIGlzIGNhbGxlZCBlYWNoIHRpbWVcbiAgICAgKiBgdGVzdGAgZmFpbHMuIEludm9rZWQgd2l0aCAoY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gdGVzdCAtIGFzeW5jaHJvbm91cyB0cnV0aCB0ZXN0IHRvIHBlcmZvcm0gYWZ0ZXIgZWFjaFxuICAgICAqIGV4ZWN1dGlvbiBvZiBgaXRlcmF0ZWVgLiBJbnZva2VkIHdpdGggKC4uLmFyZ3MsIGNhbGxiYWNrKSwgd2hlcmUgYC4uLmFyZ3NgIGFyZSB0aGVcbiAgICAgKiBub24tZXJyb3IgYXJncyBmcm9tIHRoZSBwcmV2aW91cyBjYWxsYmFjayBvZiBgaXRlcmF0ZWVgXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIHRoZSB0ZXN0XG4gICAgICogZnVuY3Rpb24gaGFzIHBhc3NlZCBhbmQgcmVwZWF0ZWQgZXhlY3V0aW9uIG9mIGBpdGVyYXRlZWAgaGFzIHN0b3BwZWQuIGBjYWxsYmFja2BcbiAgICAgKiB3aWxsIGJlIHBhc3NlZCBhbiBlcnJvciBhbmQgYW55IGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIGZpbmFsIGBpdGVyYXRlZWAnc1xuICAgICAqIGNhbGxiYWNrLiBJbnZva2VkIHdpdGggKGVyciwgW3Jlc3VsdHNdKTtcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBkb1VudGlsKGl0ZXJhdGVlLCB0ZXN0LCBjYWxsYmFjaykge1xuICAgICAgICBjb25zdCBfdGVzdCA9IHdyYXBBc3luYyh0ZXN0KTtcbiAgICAgICAgcmV0dXJuIGRvV2hpbHN0JDEoaXRlcmF0ZWUsICguLi5hcmdzKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjYiA9IGFyZ3MucG9wKCk7XG4gICAgICAgICAgICBfdGVzdCguLi5hcmdzLCAoZXJyLCB0cnV0aCkgPT4gY2IgKGVyciwgIXRydXRoKSk7XG4gICAgICAgIH0sIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfd2l0aG91dEluZGV4KGl0ZXJhdGVlKSB7XG4gICAgICAgIHJldHVybiAodmFsdWUsIGluZGV4LCBjYWxsYmFjaykgPT4gaXRlcmF0ZWUodmFsdWUsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBcHBsaWVzIHRoZSBmdW5jdGlvbiBgaXRlcmF0ZWVgIHRvIGVhY2ggaXRlbSBpbiBgY29sbGAsIGluIHBhcmFsbGVsLlxuICAgICAqIFRoZSBgaXRlcmF0ZWVgIGlzIGNhbGxlZCB3aXRoIGFuIGl0ZW0gZnJvbSB0aGUgbGlzdCwgYW5kIGEgY2FsbGJhY2sgZm9yIHdoZW5cbiAgICAgKiBpdCBoYXMgZmluaXNoZWQuIElmIHRoZSBgaXRlcmF0ZWVgIHBhc3NlcyBhbiBlcnJvciB0byBpdHMgYGNhbGxiYWNrYCwgdGhlXG4gICAgICogbWFpbiBgY2FsbGJhY2tgIChmb3IgdGhlIGBlYWNoYCBmdW5jdGlvbikgaXMgaW1tZWRpYXRlbHkgY2FsbGVkIHdpdGggdGhlXG4gICAgICogZXJyb3IuXG4gICAgICpcbiAgICAgKiBOb3RlLCB0aGF0IHNpbmNlIHRoaXMgZnVuY3Rpb24gYXBwbGllcyBgaXRlcmF0ZWVgIHRvIGVhY2ggaXRlbSBpbiBwYXJhbGxlbCxcbiAgICAgKiB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGUgaXRlcmF0ZWUgZnVuY3Rpb25zIHdpbGwgY29tcGxldGUgaW4gb3JkZXIuXG4gICAgICpcbiAgICAgKiBAbmFtZSBlYWNoXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGFsaWFzIGZvckVhY2hcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0b1xuICAgICAqIGVhY2ggaXRlbSBpbiBgY29sbGAuIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIFRoZSBhcnJheSBpbmRleCBpcyBub3QgcGFzc2VkIHRvIHRoZSBpdGVyYXRlZS5cbiAgICAgKiBJZiB5b3UgbmVlZCB0aGUgaW5kZXgsIHVzZSBgZWFjaE9mYC5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZGlyMSBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUxLnR4dCwgZmlsZTIudHh0XG4gICAgICogLy8gZGlyMiBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUzLnR4dCwgZmlsZTQudHh0XG4gICAgICogLy8gZGlyMyBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGU1LnR4dFxuICAgICAqIC8vIGRpcjQgZG9lcyBub3QgZXhpc3RcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVMaXN0ID0gWyAnZGlyMS9maWxlMi50eHQnLCAnZGlyMi9maWxlMy50eHQnLCAnZGlyL2ZpbGU1LnR4dCddO1xuICAgICAqIGNvbnN0IHdpdGhNaXNzaW5nRmlsZUxpc3QgPSBbJ2RpcjEvZmlsZTEudHh0JywgJ2RpcjQvZmlsZTIudHh0J107XG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBkZWxldGVzIGEgZmlsZVxuICAgICAqIGNvbnN0IGRlbGV0ZUZpbGUgPSBmdW5jdGlvbihmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy51bmxpbmsoZmlsZSwgY2FsbGJhY2spO1xuICAgICAqIH07XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5lYWNoKGZpbGVMaXN0LCBkZWxldGVGaWxlLCBmdW5jdGlvbihlcnIpIHtcbiAgICAgKiAgICAgaWYoIGVyciApIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZygnQWxsIGZpbGVzIGhhdmUgYmVlbiBkZWxldGVkIHN1Y2Nlc3NmdWxseScpO1xuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jLmVhY2god2l0aE1pc3NpbmdGaWxlTGlzdCwgZGVsZXRlRmlsZSwgZnVuY3Rpb24oZXJyKXtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgLy8gWyBFcnJvcjogRU5PRU5UOiBubyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IF1cbiAgICAgKiAgICAgLy8gc2luY2UgZGlyNC9maWxlMi50eHQgZG9lcyBub3QgZXhpc3RcbiAgICAgKiAgICAgLy8gZGlyMS9maWxlMS50eHQgY291bGQgaGF2ZSBiZWVuIGRlbGV0ZWRcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZWFjaChmaWxlTGlzdCwgZGVsZXRlRmlsZSlcbiAgICAgKiAudGhlbiggKCkgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnQWxsIGZpbGVzIGhhdmUgYmVlbiBkZWxldGVkIHN1Y2Nlc3NmdWxseScpO1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5lYWNoKGZpbGVMaXN0LCBkZWxldGVGaWxlKVxuICAgICAqIC50aGVuKCAoKSA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdBbGwgZmlsZXMgaGF2ZSBiZWVuIGRlbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7XG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIC8vIHNpbmNlIGRpcjQvZmlsZTIudHh0IGRvZXMgbm90IGV4aXN0XG4gICAgICogICAgIC8vIGRpcjEvZmlsZTEudHh0IGNvdWxkIGhhdmUgYmVlbiBkZWxldGVkXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGF3YWl0IGFzeW5jLmVhY2goZmlsZXMsIGRlbGV0ZUZpbGUpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGF3YWl0IGFzeW5jLmVhY2god2l0aE1pc3NpbmdGaWxlTGlzdCwgZGVsZXRlRmlsZSk7XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgICAgICAvLyBzaW5jZSBkaXI0L2ZpbGUyLnR4dCBkb2VzIG5vdCBleGlzdFxuICAgICAqICAgICAgICAgLy8gZGlyMS9maWxlMS50eHQgY291bGQgaGF2ZSBiZWVuIGRlbGV0ZWRcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGVhY2hMaW1pdChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIGVhY2hPZiQxKGNvbGwsIF93aXRob3V0SW5kZXgod3JhcEFzeW5jKGl0ZXJhdGVlKSksIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICB2YXIgZWFjaCA9IGF3YWl0aWZ5KGVhY2hMaW1pdCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGVhY2hgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaH0gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBlYWNoTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5lYWNoXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaH1cbiAgICAgKiBAYWxpYXMgZm9yRWFjaExpbWl0XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgYXJyYXkgaW5kZXggaXMgbm90IHBhc3NlZCB0byB0aGUgaXRlcmF0ZWUuXG4gICAgICogSWYgeW91IG5lZWQgdGhlIGluZGV4LCB1c2UgYGVhY2hPZkxpbWl0YC5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBlYWNoTGltaXQkMShjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBlYWNoT2ZMaW1pdChsaW1pdCkoY29sbCwgX3dpdGhvdXRJbmRleCh3cmFwQXN5bmMoaXRlcmF0ZWUpKSwgY2FsbGJhY2spO1xuICAgIH1cbiAgICB2YXIgZWFjaExpbWl0JDIgPSBhd2FpdGlmeShlYWNoTGltaXQkMSwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGVhY2hgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogTm90ZSwgdGhhdCB1bmxpa2UgW2BlYWNoYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmVhY2h9LCB0aGlzIGZ1bmN0aW9uIGFwcGxpZXMgaXRlcmF0ZWUgdG8gZWFjaCBpdGVtXG4gICAgICogaW4gc2VyaWVzIGFuZCB0aGVyZWZvcmUgdGhlIGl0ZXJhdGVlIGZ1bmN0aW9ucyB3aWxsIGNvbXBsZXRlIGluIG9yZGVyLlxuXG4gICAgICogQG5hbWUgZWFjaFNlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmVhY2hde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5lYWNofVxuICAgICAqIEBhbGlhcyBmb3JFYWNoU2VyaWVzXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaFxuICAgICAqIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBhcnJheSBpbmRleCBpcyBub3QgcGFzc2VkIHRvIHRoZSBpdGVyYXRlZS5cbiAgICAgKiBJZiB5b3UgbmVlZCB0aGUgaW5kZXgsIHVzZSBgZWFjaE9mU2VyaWVzYC5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBlYWNoU2VyaWVzKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gZWFjaExpbWl0JDIoY29sbCwgMSwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgZWFjaFNlcmllcyQxID0gYXdhaXRpZnkoZWFjaFNlcmllcywgMyk7XG5cbiAgICAvKipcbiAgICAgKiBXcmFwIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBlbnN1cmUgaXQgY2FsbHMgaXRzIGNhbGxiYWNrIG9uIGEgbGF0ZXIgdGljayBvZlxuICAgICAqIHRoZSBldmVudCBsb29wLiAgSWYgdGhlIGZ1bmN0aW9uIGFscmVhZHkgY2FsbHMgaXRzIGNhbGxiYWNrIG9uIGEgbmV4dCB0aWNrLFxuICAgICAqIG5vIGV4dHJhIGRlZmVycmFsIGlzIGFkZGVkLiBUaGlzIGlzIHVzZWZ1bCBmb3IgcHJldmVudGluZyBzdGFjayBvdmVyZmxvd3NcbiAgICAgKiAoYFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkYCkgYW5kIGdlbmVyYWxseSBrZWVwaW5nXG4gICAgICogW1phbGdvXShodHRwOi8vYmxvZy5penMubWUvcG9zdC81OTE0Mjc0MjE0My9kZXNpZ25pbmctYXBpcy1mb3ItYXN5bmNocm9ueSlcbiAgICAgKiBjb250YWluZWQuIEVTMjAxNyBgYXN5bmNgIGZ1bmN0aW9ucyBhcmUgcmV0dXJuZWQgYXMtaXMgLS0gdGhleSBhcmUgaW1tdW5lXG4gICAgICogdG8gWmFsZ28ncyBjb3JydXB0aW5nIGluZmx1ZW5jZXMsIGFzIHRoZXkgYWx3YXlzIHJlc29sdmUgb24gYSBsYXRlciB0aWNrLlxuICAgICAqXG4gICAgICogQG5hbWUgZW5zdXJlQXN5bmNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gZm4gLSBhbiBhc3luYyBmdW5jdGlvbiwgb25lIHRoYXQgZXhwZWN0cyBhIG5vZGUtc3R5bGVcbiAgICAgKiBjYWxsYmFjayBhcyBpdHMgbGFzdCBhcmd1bWVudC5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gUmV0dXJucyBhIHdyYXBwZWQgZnVuY3Rpb24gd2l0aCB0aGUgZXhhY3Qgc2FtZSBjYWxsXG4gICAgICogc2lnbmF0dXJlIGFzIHRoZSBmdW5jdGlvbiBwYXNzZWQgaW4uXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGZ1bmN0aW9uIHNvbWV0aW1lc0FzeW5jKGFyZywgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgaWYgKGNhY2hlW2FyZ10pIHtcbiAgICAgKiAgICAgICAgIHJldHVybiBjYWxsYmFjayhudWxsLCBjYWNoZVthcmddKTsgLy8gdGhpcyB3b3VsZCBiZSBzeW5jaHJvbm91cyEhXG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBkb1NvbWVJTyhhcmcsIGNhbGxiYWNrKTsgLy8gdGhpcyBJTyB3b3VsZCBiZSBhc3luY2hyb25vdXNcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIHRoaXMgaGFzIGEgcmlzayBvZiBzdGFjayBvdmVyZmxvd3MgaWYgbWFueSByZXN1bHRzIGFyZSBjYWNoZWQgaW4gYSByb3dcbiAgICAgKiBhc3luYy5tYXBTZXJpZXMoYXJncywgc29tZXRpbWVzQXN5bmMsIGRvbmUpO1xuICAgICAqXG4gICAgICogLy8gdGhpcyB3aWxsIGRlZmVyIHNvbWV0aW1lc0FzeW5jJ3MgY2FsbGJhY2sgaWYgbmVjZXNzYXJ5LFxuICAgICAqIC8vIHByZXZlbnRpbmcgc3RhY2sgb3ZlcmZsb3dzXG4gICAgICogYXN5bmMubWFwU2VyaWVzKGFyZ3MsIGFzeW5jLmVuc3VyZUFzeW5jKHNvbWV0aW1lc0FzeW5jKSwgZG9uZSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gZW5zdXJlQXN5bmMoZm4pIHtcbiAgICAgICAgaWYgKGlzQXN5bmMoZm4pKSByZXR1cm4gZm47XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJncy8qLCBjYWxsYmFjayovKSB7XG4gICAgICAgICAgICB2YXIgY2FsbGJhY2sgPSBhcmdzLnBvcCgpO1xuICAgICAgICAgICAgdmFyIHN5bmMgPSB0cnVlO1xuICAgICAgICAgICAgYXJncy5wdXNoKCguLi5pbm5lckFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoc3luYykge1xuICAgICAgICAgICAgICAgICAgICBzZXRJbW1lZGlhdGUkMSgoKSA9PiBjYWxsYmFjayguLi5pbm5lckFyZ3MpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayguLi5pbm5lckFyZ3MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZm4uYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgICBzeW5jID0gZmFsc2U7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBgdHJ1ZWAgaWYgZXZlcnkgZWxlbWVudCBpbiBgY29sbGAgc2F0aXNmaWVzIGFuIGFzeW5jIHRlc3QuIElmIGFueVxuICAgICAqIGl0ZXJhdGVlIGNhbGwgcmV0dXJucyBgZmFsc2VgLCB0aGUgbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZC5cbiAgICAgKlxuICAgICAqIEBuYW1lIGV2ZXJ5XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGFsaWFzIGFsbFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtXG4gICAgICogaW4gdGhlIGNvbGxlY3Rpb24gaW4gcGFyYWxsZWwuXG4gICAgICogVGhlIGl0ZXJhdGVlIG11c3QgY29tcGxldGUgd2l0aCBhIGJvb2xlYW4gcmVzdWx0IHZhbHVlLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gUmVzdWx0IHdpbGwgYmUgZWl0aGVyIGB0cnVlYCBvciBgZmFsc2VgXG4gICAgICogZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jIHRlc3RzLiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBwcm92aWRlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBkaXIxIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTEudHh0LCBmaWxlMi50eHRcbiAgICAgKiAvLyBkaXIyIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTMudHh0LCBmaWxlNC50eHRcbiAgICAgKiAvLyBkaXIzIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTUudHh0XG4gICAgICogLy8gZGlyNCBkb2VzIG5vdCBleGlzdFxuICAgICAqXG4gICAgICogY29uc3QgZmlsZUxpc3QgPSBbJ2RpcjEvZmlsZTEudHh0JywnZGlyMi9maWxlMy50eHQnLCdkaXIzL2ZpbGU1LnR4dCddO1xuICAgICAqIGNvbnN0IHdpdGhNaXNzaW5nRmlsZUxpc3QgPSBbJ2ZpbGUxLnR4dCcsJ2ZpbGUyLnR4dCcsJ2ZpbGU0LnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIGEgZmlsZSBleGlzdHNcbiAgICAgKiBmdW5jdGlvbiBmaWxlRXhpc3RzKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgZnMuYWNjZXNzKGZpbGUsIGZzLmNvbnN0YW50cy5GX09LLCAoZXJyKSA9PiB7XG4gICAgICogICAgICAgIGNhbGxiYWNrKG51bGwsICFlcnIpO1xuICAgICAqICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGNhbGxiYWNrc1xuICAgICAqIGFzeW5jLmV2ZXJ5KGZpbGVMaXN0LCBmaWxlRXhpc3RzLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB0cnVlXG4gICAgICogICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiBhc3luYy5ldmVyeSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCBmaWxlRXhpc3RzLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyBmYWxzZVxuICAgICAqICAgICAvLyByZXN1bHQgaXMgZmFsc2Ugc2luY2UgTk9UIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLmV2ZXJ5KGZpbGVMaXN0LCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB0cnVlXG4gICAgICogICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiBhc3luYy5ldmVyeSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyBmYWxzZVxuICAgICAqICAgICAvLyByZXN1bHQgaXMgZmFsc2Ugc2luY2UgTk9UIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy5ldmVyeShmaWxlTGlzdCwgZmlsZUV4aXN0cyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gdHJ1ZVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIHRydWUgc2luY2UgZXZlcnkgZmlsZSBleGlzdHNcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmV2ZXJ5KHdpdGhNaXNzaW5nRmlsZUxpc3QsIGZpbGVFeGlzdHMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIGZhbHNlXG4gICAgICogICAgICAgICAvLyByZXN1bHQgaXMgZmFsc2Ugc2luY2UgTk9UIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGV2ZXJ5KGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3Rlcihib29sID0+ICFib29sLCByZXMgPT4gIXJlcykoZWFjaE9mJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGV2ZXJ5JDEgPSBhd2FpdGlmeShldmVyeSwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGV2ZXJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmV2ZXJ5fSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIGV2ZXJ5TGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5ldmVyeV17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmV2ZXJ5fVxuICAgICAqIEBhbGlhcyBhbGxMaW1pdFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyB0cnV0aCB0ZXN0IHRvIGFwcGx5IHRvIGVhY2ggaXRlbVxuICAgICAqIGluIHRoZSBjb2xsZWN0aW9uIGluIHBhcmFsbGVsLlxuICAgICAqIFRoZSBpdGVyYXRlZSBtdXN0IGNvbXBsZXRlIHdpdGggYSBib29sZWFuIHJlc3VsdCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCB3aWxsIGJlIGVpdGhlciBgdHJ1ZWAgb3IgYGZhbHNlYFxuICAgICAqIGRlcGVuZGluZyBvbiB0aGUgdmFsdWVzIG9mIHRoZSBhc3luYyB0ZXN0cy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBldmVyeUxpbWl0KGNvbGwsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoYm9vbCA9PiAhYm9vbCwgcmVzID0+ICFyZXMpKGVhY2hPZkxpbWl0KGxpbWl0KSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgZXZlcnlMaW1pdCQxID0gYXdhaXRpZnkoZXZlcnlMaW1pdCwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGV2ZXJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmV2ZXJ5fSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBldmVyeVNlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmV2ZXJ5XXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZXZlcnl9XG4gICAgICogQGFsaWFzIGFsbFNlcmllc1xuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtXG4gICAgICogaW4gdGhlIGNvbGxlY3Rpb24gaW4gc2VyaWVzLlxuICAgICAqIFRoZSBpdGVyYXRlZSBtdXN0IGNvbXBsZXRlIHdpdGggYSBib29sZWFuIHJlc3VsdCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCB3aWxsIGJlIGVpdGhlciBgdHJ1ZWAgb3IgYGZhbHNlYFxuICAgICAqIGRlcGVuZGluZyBvbiB0aGUgdmFsdWVzIG9mIHRoZSBhc3luYyB0ZXN0cy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBldmVyeVNlcmllcyhjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoYm9vbCA9PiAhYm9vbCwgcmVzID0+ICFyZXMpKGVhY2hPZlNlcmllcyQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBldmVyeVNlcmllcyQxID0gYXdhaXRpZnkoZXZlcnlTZXJpZXMsIDMpO1xuXG4gICAgZnVuY3Rpb24gZmlsdGVyQXJyYXkoZWFjaGZuLCBhcnIsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgdHJ1dGhWYWx1ZXMgPSBuZXcgQXJyYXkoYXJyLmxlbmd0aCk7XG4gICAgICAgIGVhY2hmbihhcnIsICh4LCBpbmRleCwgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICBpdGVyYXRlZSh4LCAoZXJyLCB2KSA9PiB7XG4gICAgICAgICAgICAgICAgdHJ1dGhWYWx1ZXNbaW5kZXhdID0gISF2O1xuICAgICAgICAgICAgICAgIGl0ZXJDYihlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgICAgICAgIHZhciByZXN1bHRzID0gW107XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGlmICh0cnV0aFZhbHVlc1tpXSkgcmVzdWx0cy5wdXNoKGFycltpXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYWxsYmFjayhudWxsLCByZXN1bHRzKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZmlsdGVyR2VuZXJpYyhlYWNoZm4sIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgcmVzdWx0cyA9IFtdO1xuICAgICAgICBlYWNoZm4oY29sbCwgKHgsIGluZGV4LCBpdGVyQ2IpID0+IHtcbiAgICAgICAgICAgIGl0ZXJhdGVlKHgsIChlcnIsIHYpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gaXRlckNiKGVycik7XG4gICAgICAgICAgICAgICAgaWYgKHYpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKHtpbmRleCwgdmFsdWU6IHh9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaXRlckNiKGVycik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgcmVzdWx0c1xuICAgICAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLmluZGV4IC0gYi5pbmRleClcbiAgICAgICAgICAgICAgICAubWFwKHYgPT4gdi52YWx1ZSkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfZmlsdGVyKGVhY2hmbiwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHZhciBmaWx0ZXIgPSBpc0FycmF5TGlrZShjb2xsKSA/IGZpbHRlckFycmF5IDogZmlsdGVyR2VuZXJpYztcbiAgICAgICAgcmV0dXJuIGZpbHRlcihlYWNoZm4sIGNvbGwsIHdyYXBBc3luYyhpdGVyYXRlZSksIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgbmV3IGFycmF5IG9mIGFsbCB0aGUgdmFsdWVzIGluIGBjb2xsYCB3aGljaCBwYXNzIGFuIGFzeW5jIHRydXRoXG4gICAgICogdGVzdC4gVGhpcyBvcGVyYXRpb24gaXMgcGVyZm9ybWVkIGluIHBhcmFsbGVsLCBidXQgdGhlIHJlc3VsdHMgYXJyYXkgd2lsbCBiZVxuICAgICAqIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBvcmlnaW5hbC5cbiAgICAgKlxuICAgICAqIEBuYW1lIGZpbHRlclxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBhbGlhcyBzZWxlY3RcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGl0ZXJhdGVlIC0gQSB0cnV0aCB0ZXN0IHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpbiBgY29sbGAuXG4gICAgICogVGhlIGBpdGVyYXRlZWAgaXMgcGFzc2VkIGEgYGNhbGxiYWNrKGVyciwgdHJ1dGhWYWx1ZSlgLCB3aGljaCBtdXN0IGJlIGNhbGxlZFxuICAgICAqIHdpdGggYSBib29sZWFuIGFyZ3VtZW50IG9uY2UgaXQgaGFzIGNvbXBsZXRlZC4gSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZGlyMSBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUxLnR4dCwgZmlsZTIudHh0XG4gICAgICogLy8gZGlyMiBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUzLnR4dCwgZmlsZTQudHh0XG4gICAgICogLy8gZGlyMyBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGU1LnR4dFxuICAgICAqXG4gICAgICogY29uc3QgZmlsZXMgPSBbJ2RpcjEvZmlsZTEudHh0JywnZGlyMi9maWxlMy50eHQnLCdkaXIzL2ZpbGU2LnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIGEgZmlsZSBleGlzdHNcbiAgICAgKiBmdW5jdGlvbiBmaWxlRXhpc3RzKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgZnMuYWNjZXNzKGZpbGUsIGZzLmNvbnN0YW50cy5GX09LLCAoZXJyKSA9PiB7XG4gICAgICogICAgICAgIGNhbGxiYWNrKG51bGwsICFlcnIpO1xuICAgICAqICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGNhbGxiYWNrc1xuICAgICAqIGFzeW5jLmZpbHRlcihmaWxlcywgZmlsZUV4aXN0cywgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgaWYoZXJyKSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgIC8vIFsgJ2RpcjEvZmlsZTEudHh0JywgJ2RpcjIvZmlsZTMudHh0JyBdXG4gICAgICogICAgICAgIC8vIHJlc3VsdHMgaXMgbm93IGFuIGFycmF5IG9mIHRoZSBleGlzdGluZyBmaWxlc1xuICAgICAqICAgIH1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZmlsdGVyKGZpbGVzLCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKHJlc3VsdHMgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gWyAnZGlyMS9maWxlMS50eHQnLCAnZGlyMi9maWxlMy50eHQnIF1cbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBub3cgYW4gYXJyYXkgb2YgdGhlIGV4aXN0aW5nIGZpbGVzXG4gICAgICogfSkuY2F0Y2goZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5maWx0ZXIoZmlsZXMsIGZpbGVFeGlzdHMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyBbICdkaXIxL2ZpbGUxLnR4dCcsICdkaXIyL2ZpbGUzLnR4dCcgXVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgYW4gYXJyYXkgb2YgdGhlIGV4aXN0aW5nIGZpbGVzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGZpbHRlciAoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBfZmlsdGVyKGVhY2hPZiQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBmaWx0ZXIkMSA9IGF3YWl0aWZ5KGZpbHRlciwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGZpbHRlcmBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5maWx0ZXJ9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBmaWx0ZXJMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmZpbHRlcl17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmZpbHRlcn1cbiAgICAgKiBAYWxpYXMgc2VsZWN0TGltaXRcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBgaXRlcmF0ZWVgIGlzIHBhc3NlZCBhIGBjYWxsYmFjayhlcnIsIHRydXRoVmFsdWUpYCwgd2hpY2ggbXVzdCBiZSBjYWxsZWRcbiAgICAgKiB3aXRoIGEgYm9vbGVhbiBhcmd1bWVudCBvbmNlIGl0IGhhcyBjb21wbGV0ZWQuIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZmlsdGVyTGltaXQgKGNvbGwsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9maWx0ZXIoZWFjaE9mTGltaXQobGltaXQpLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBmaWx0ZXJMaW1pdCQxID0gYXdhaXRpZnkoZmlsdGVyTGltaXQsIDQpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2BmaWx0ZXJgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZmlsdGVyfSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBmaWx0ZXJTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5maWx0ZXJde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5maWx0ZXJ9XG4gICAgICogQGFsaWFzIHNlbGVjdFNlcmllc1xuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgYGl0ZXJhdGVlYCBpcyBwYXNzZWQgYSBgY2FsbGJhY2soZXJyLCB0cnV0aFZhbHVlKWAsIHdoaWNoIG11c3QgYmUgY2FsbGVkXG4gICAgICogd2l0aCBhIGJvb2xlYW4gYXJndW1lbnQgb25jZSBpdCBoYXMgY29tcGxldGVkLiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHRzKVxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZmlsdGVyU2VyaWVzIChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9maWx0ZXIoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGZpbHRlclNlcmllcyQxID0gYXdhaXRpZnkoZmlsdGVyU2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIENhbGxzIHRoZSBhc3luY2hyb25vdXMgZnVuY3Rpb24gYGZuYCB3aXRoIGEgY2FsbGJhY2sgcGFyYW1ldGVyIHRoYXQgYWxsb3dzIGl0XG4gICAgICogdG8gY2FsbCBpdHNlbGYgYWdhaW4sIGluIHNlcmllcywgaW5kZWZpbml0ZWx5LlxuXG4gICAgICogSWYgYW4gZXJyb3IgaXMgcGFzc2VkIHRvIHRoZSBjYWxsYmFjayB0aGVuIGBlcnJiYWNrYCBpcyBjYWxsZWQgd2l0aCB0aGVcbiAgICAgKiBlcnJvciwgYW5kIGV4ZWN1dGlvbiBzdG9wcywgb3RoZXJ3aXNlIGl0IHdpbGwgbmV2ZXIgYmUgY2FsbGVkLlxuICAgICAqXG4gICAgICogQG5hbWUgZm9yZXZlclxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGZuIC0gYW4gYXN5bmMgZnVuY3Rpb24gdG8gY2FsbCByZXBlYXRlZGx5LlxuICAgICAqIEludm9rZWQgd2l0aCAobmV4dCkuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2VycmJhY2tdIC0gd2hlbiBgZm5gIHBhc3NlcyBhbiBlcnJvciB0byBpdCdzIGNhbGxiYWNrLFxuICAgICAqIHRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQsIGFuZCBleGVjdXRpb24gc3RvcHMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlIHRoYXQgcmVqZWN0cyBpZiBhbiBlcnJvciBvY2N1cnMgYW5kIGFuIGVycmJhY2tcbiAgICAgKiBpcyBub3QgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGFzeW5jLmZvcmV2ZXIoXG4gICAgICogICAgIGZ1bmN0aW9uKG5leHQpIHtcbiAgICAgKiAgICAgICAgIC8vIG5leHQgaXMgc3VpdGFibGUgZm9yIHBhc3NpbmcgdG8gdGhpbmdzIHRoYXQgbmVlZCBhIGNhbGxiYWNrKGVyciBbLCB3aGF0ZXZlcl0pO1xuICAgICAqICAgICAgICAgLy8gaXQgd2lsbCByZXN1bHQgaW4gdGhpcyBmdW5jdGlvbiBiZWluZyBjYWxsZWQgYWdhaW4uXG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICAgICAgLy8gaWYgbmV4dCBpcyBjYWxsZWQgd2l0aCBhIHZhbHVlIGluIGl0cyBmaXJzdCBwYXJhbWV0ZXIsIGl0IHdpbGwgYXBwZWFyXG4gICAgICogICAgICAgICAvLyBpbiBoZXJlIGFzICdlcnInLCBhbmQgZXhlY3V0aW9uIHdpbGwgc3RvcC5cbiAgICAgKiAgICAgfVxuICAgICAqICk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gZm9yZXZlcihmbiwgZXJyYmFjaykge1xuICAgICAgICB2YXIgZG9uZSA9IG9ubHlPbmNlKGVycmJhY2spO1xuICAgICAgICB2YXIgdGFzayA9IHdyYXBBc3luYyhlbnN1cmVBc3luYyhmbikpO1xuXG4gICAgICAgIGZ1bmN0aW9uIG5leHQoZXJyKSB7XG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gZG9uZShlcnIpO1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIHRhc2sobmV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5leHQoKTtcbiAgICB9XG4gICAgdmFyIGZvcmV2ZXIkMSA9IGF3YWl0aWZ5KGZvcmV2ZXIsIDIpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2Bncm91cEJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmdyb3VwQnl9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZ3JvdXBCeUxpbWl0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZ3JvdXBCeV17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmdyb3VwQnl9XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggYSBga2V5YCB0byBncm91cCB0aGUgdmFsdWUgdW5kZXIuXG4gICAgICogSW52b2tlZCB3aXRoICh2YWx1ZSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCB3aGVuIGFsbCBgaXRlcmF0ZWVgXG4gICAgICogZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0IGlzIGFuIGBPYmplY3RgIHdob3Nlc1xuICAgICAqIHByb3BlcnRpZXMgYXJlIGFycmF5cyBvZiB2YWx1ZXMgd2hpY2ggcmV0dXJuZWQgdGhlIGNvcnJlc3BvbmRpbmcga2V5LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGdyb3VwQnlMaW1pdChjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHZhciBfaXRlcmF0ZWUgPSB3cmFwQXN5bmMoaXRlcmF0ZWUpO1xuICAgICAgICByZXR1cm4gbWFwTGltaXQkMShjb2xsLCBsaW1pdCwgKHZhbCwgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICBfaXRlcmF0ZWUodmFsLCAoZXJyLCBrZXkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gaXRlckNiKGVycik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0ZXJDYihlcnIsIHtrZXksIHZhbH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIChlcnIsIG1hcFJlc3VsdHMpID0+IHtcbiAgICAgICAgICAgIHZhciByZXN1bHQgPSB7fTtcbiAgICAgICAgICAgIC8vIGZyb20gTUROLCBoYW5kbGUgb2JqZWN0IGhhdmluZyBhbiBgaGFzT3duUHJvcGVydHlgIHByb3BcbiAgICAgICAgICAgIHZhciB7aGFzT3duUHJvcGVydHl9ID0gT2JqZWN0LnByb3RvdHlwZTtcblxuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtYXBSZXN1bHRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKG1hcFJlc3VsdHNbaV0pIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHtrZXl9ID0gbWFwUmVzdWx0c1tpXTtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHt2YWx9ID0gbWFwUmVzdWx0c1tpXTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChyZXN1bHQsIGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdFtrZXldLnB1c2godmFsKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdFtrZXldID0gW3ZhbF07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIsIHJlc3VsdCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHZhciBncm91cEJ5TGltaXQkMSA9IGF3YWl0aWZ5KGdyb3VwQnlMaW1pdCwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCwgd2hlcmUgZWFjaCB2YWx1ZSBjb3JyZXNwb25kcyB0byBhbiBhcnJheSBvZiBpdGVtcywgZnJvbVxuICAgICAqIGBjb2xsYCwgdGhhdCByZXR1cm5lZCB0aGUgY29ycmVzcG9uZGluZyBrZXkuIFRoYXQgaXMsIHRoZSBrZXlzIG9mIHRoZSBvYmplY3RcbiAgICAgKiBjb3JyZXNwb25kIHRvIHRoZSB2YWx1ZXMgcGFzc2VkIHRvIHRoZSBgaXRlcmF0ZWVgIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogTm90ZTogU2luY2UgdGhpcyBmdW5jdGlvbiBhcHBsaWVzIHRoZSBgaXRlcmF0ZWVgIHRvIGVhY2ggaXRlbSBpbiBwYXJhbGxlbCxcbiAgICAgKiB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGUgYGl0ZXJhdGVlYCBmdW5jdGlvbnMgd2lsbCBjb21wbGV0ZSBpbiBvcmRlci5cbiAgICAgKiBIb3dldmVyLCB0aGUgdmFsdWVzIGZvciBlYWNoIGtleSBpbiB0aGUgYHJlc3VsdGAgd2lsbCBiZSBpbiB0aGUgc2FtZSBvcmRlciBhc1xuICAgICAqIHRoZSBvcmlnaW5hbCBgY29sbGAuIEZvciBPYmplY3RzLCB0aGUgdmFsdWVzIHdpbGwgcm91Z2hseSBiZSBpbiB0aGUgb3JkZXIgb2ZcbiAgICAgKiB0aGUgb3JpZ2luYWwgT2JqZWN0cycga2V5cyAoYnV0IHRoaXMgY2FuIHZhcnkgYWNyb3NzIEphdmFTY3JpcHQgZW5naW5lcykuXG4gICAgICpcbiAgICAgKiBAbmFtZSBncm91cEJ5XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluXG4gICAgICogYGNvbGxgLlxuICAgICAqIFRoZSBpdGVyYXRlZSBzaG91bGQgY29tcGxldGUgd2l0aCBhIGBrZXlgIHRvIGdyb3VwIHRoZSB2YWx1ZSB1bmRlci5cbiAgICAgKiBJbnZva2VkIHdpdGggKHZhbHVlLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHQgaXMgYW4gYE9iamVjdGAgd2hvc2VzXG4gICAgICogcHJvcGVydGllcyBhcmUgYXJyYXlzIG9mIHZhbHVlcyB3aGljaCByZXR1cm5lZCB0aGUgY29ycmVzcG9uZGluZyBrZXkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKiAvLyBkaXI0IGRvZXMgbm90IGV4aXN0XG4gICAgICpcbiAgICAgKiBjb25zdCBmaWxlcyA9IFsnZGlyMS9maWxlMS50eHQnLCdkaXIyJywnZGlyNCddXG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBkZXRlY3RzIGZpbGUgdHlwZSBhcyBub25lLCBmaWxlLCBvciBkaXJlY3RvcnlcbiAgICAgKiBmdW5jdGlvbiBkZXRlY3RGaWxlKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZzLnN0YXQoZmlsZSwgZnVuY3Rpb24oZXJyLCBzdGF0KSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG51bGwsICdub25lJyk7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBzdGF0LmlzRGlyZWN0b3J5KCkgPyAnZGlyZWN0b3J5JyA6ICdmaWxlJyk7XG4gICAgICogICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMuZ3JvdXBCeShmaWxlcywgZGV0ZWN0RmlsZSwgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgaWYoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqXHQgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHtcbiAgICAgKiAgICAgICAgIC8vICAgICBmaWxlOiBbICdkaXIxL2ZpbGUxLnR4dCcgXSxcbiAgICAgKiAgICAgICAgIC8vICAgICBub25lOiBbICdkaXI0JyBdLFxuICAgICAqICAgICAgICAgLy8gICAgIGRpcmVjdG9yeTogWyAnZGlyMiddXG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgICAgICAvLyByZXN1bHQgaXMgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGZpbGVzIGdyb3VwZWQgYnkgdHlwZVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLmdyb3VwQnkoZmlsZXMsIGRldGVjdEZpbGUpXG4gICAgICogLnRoZW4oIHJlc3VsdCA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgIC8vIHtcbiAgICAgKiAgICAgLy8gICAgIGZpbGU6IFsgJ2RpcjEvZmlsZTEudHh0JyBdLFxuICAgICAqICAgICAvLyAgICAgbm9uZTogWyAnZGlyNCcgXSxcbiAgICAgKiAgICAgLy8gICAgIGRpcmVjdG9yeTogWyAnZGlyMiddXG4gICAgICogICAgIC8vIH1cbiAgICAgKiAgICAgLy8gcmVzdWx0IGlzIG9iamVjdCBjb250YWluaW5nIHRoZSBmaWxlcyBncm91cGVkIGJ5IHR5cGVcbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmdyb3VwQnkoZmlsZXMsIGRldGVjdEZpbGUpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHtcbiAgICAgKiAgICAgICAgIC8vICAgICBmaWxlOiBbICdkaXIxL2ZpbGUxLnR4dCcgXSxcbiAgICAgKiAgICAgICAgIC8vICAgICBub25lOiBbICdkaXI0JyBdLFxuICAgICAqICAgICAgICAgLy8gICAgIGRpcmVjdG9yeTogWyAnZGlyMiddXG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgICAgICAvLyByZXN1bHQgaXMgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGZpbGVzIGdyb3VwZWQgYnkgdHlwZVxuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBncm91cEJ5IChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIGdyb3VwQnlMaW1pdCQxKGNvbGwsIEluZmluaXR5LCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2Bncm91cEJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmdyb3VwQnl9IGJ1dCBydW5zIG9ubHkgYSBzaW5nbGUgYXN5bmMgb3BlcmF0aW9uIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIGdyb3VwQnlTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5ncm91cEJ5XXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZ3JvdXBCeX1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYGtleWAgdG8gZ3JvdXAgdGhlIHZhbHVlIHVuZGVyLlxuICAgICAqIEludm9rZWQgd2l0aCAodmFsdWUsIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGwgYGl0ZXJhdGVlYFxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIFJlc3VsdCBpcyBhbiBgT2JqZWN0YCB3aG9zZVxuICAgICAqIHByb3BlcnRpZXMgYXJlIGFycmF5cyBvZiB2YWx1ZXMgd2hpY2ggcmV0dXJuZWQgdGhlIGNvcnJlc3BvbmRpbmcga2V5LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGdyb3VwQnlTZXJpZXMgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gZ3JvdXBCeUxpbWl0JDEoY29sbCwgMSwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgdGhlIHJlc3VsdCBvZiBhbiBgYXN5bmNgIGZ1bmN0aW9uIHRvIHRoZSBgY29uc29sZWAuIE9ubHkgd29ya3MgaW5cbiAgICAgKiBOb2RlLmpzIG9yIGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCBgY29uc29sZS5sb2dgIGFuZCBgY29uc29sZS5lcnJvcmAgKHN1Y2hcbiAgICAgKiBhcyBGRiBhbmQgQ2hyb21lKS4gSWYgbXVsdGlwbGUgYXJndW1lbnRzIGFyZSByZXR1cm5lZCBmcm9tIHRoZSBhc3luY1xuICAgICAqIGZ1bmN0aW9uLCBgY29uc29sZS5sb2dgIGlzIGNhbGxlZCBvbiBlYWNoIGFyZ3VtZW50IGluIG9yZGVyLlxuICAgICAqXG4gICAgICogQG5hbWUgbG9nXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGZ1bmN0aW9uIC0gVGhlIGZ1bmN0aW9uIHlvdSB3YW50IHRvIGV2ZW50dWFsbHkgYXBwbHlcbiAgICAgKiBhbGwgYXJndW1lbnRzIHRvLlxuICAgICAqIEBwYXJhbSB7Li4uKn0gYXJndW1lbnRzLi4uIC0gQW55IG51bWJlciBvZiBhcmd1bWVudHMgdG8gYXBwbHkgdG8gdGhlIGZ1bmN0aW9uLlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBpbiBhIG1vZHVsZVxuICAgICAqIHZhciBoZWxsbyA9IGZ1bmN0aW9uKG5hbWUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnaGVsbG8gJyArIG5hbWUpO1xuICAgICAqICAgICB9LCAxMDAwKTtcbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogLy8gaW4gdGhlIG5vZGUgcmVwbFxuICAgICAqIG5vZGU+IGFzeW5jLmxvZyhoZWxsbywgJ3dvcmxkJyk7XG4gICAgICogJ2hlbGxvIHdvcmxkJ1xuICAgICAqL1xuICAgIHZhciBsb2cgPSBjb25zb2xlRnVuYygnbG9nJyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYG1hcFZhbHVlc2Bde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXBWYWx1ZXN9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBtYXBWYWx1ZXNMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLm1hcFZhbHVlc117QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcFZhbHVlc31cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmogLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQSBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIHZhbHVlIGFuZCBrZXlcbiAgICAgKiBpbiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIHRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSBhcyBpdHMgcmVzdWx0LlxuICAgICAqIEludm9rZWQgd2l0aCAodmFsdWUsIGtleSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCB3aGVuIGFsbCBgaXRlcmF0ZWVgXG4gICAgICogZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gYHJlc3VsdGAgaXMgYSBuZXcgb2JqZWN0IGNvbnNpc3RpbmdcbiAgICAgKiBvZiBlYWNoIGtleSBmcm9tIGBvYmpgLCB3aXRoIGVhY2ggdHJhbnNmb3JtZWQgdmFsdWUgb24gdGhlIHJpZ2h0LWhhbmQgc2lkZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBtYXBWYWx1ZXNMaW1pdChvYmosIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIG5ld09iaiA9IHt9O1xuICAgICAgICB2YXIgX2l0ZXJhdGVlID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgcmV0dXJuIGVhY2hPZkxpbWl0KGxpbWl0KShvYmosICh2YWwsIGtleSwgbmV4dCkgPT4ge1xuICAgICAgICAgICAgX2l0ZXJhdGVlKHZhbCwga2V5LCAoZXJyLCByZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gbmV4dChlcnIpO1xuICAgICAgICAgICAgICAgIG5ld09ialtrZXldID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgIG5leHQoZXJyKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LCBlcnIgPT4gY2FsbGJhY2soZXJyLCBuZXdPYmopKTtcbiAgICB9XG5cbiAgICB2YXIgbWFwVmFsdWVzTGltaXQkMSA9IGF3YWl0aWZ5KG1hcFZhbHVlc0xpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIEEgcmVsYXRpdmUgb2YgW2BtYXBgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfSwgZGVzaWduZWQgZm9yIHVzZSB3aXRoIG9iamVjdHMuXG4gICAgICpcbiAgICAgKiBQcm9kdWNlcyBhIG5ldyBPYmplY3QgYnkgbWFwcGluZyBlYWNoIHZhbHVlIG9mIGBvYmpgIHRocm91Z2ggdGhlIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbi4gVGhlIGBpdGVyYXRlZWAgaXMgY2FsbGVkIGVhY2ggYHZhbHVlYCBhbmQgYGtleWAgZnJvbSBgb2JqYCBhbmQgYVxuICAgICAqIGNhbGxiYWNrIGZvciB3aGVuIGl0IGhhcyBmaW5pc2hlZCBwcm9jZXNzaW5nLiBFYWNoIG9mIHRoZXNlIGNhbGxiYWNrcyB0YWtlc1xuICAgICAqIHR3byBhcmd1bWVudHM6IGFuIGBlcnJvcmAsIGFuZCB0aGUgdHJhbnNmb3JtZWQgaXRlbSBmcm9tIGBvYmpgLiBJZiBgaXRlcmF0ZWVgXG4gICAgICogcGFzc2VzIGFuIGVycm9yIHRvIGl0cyBjYWxsYmFjaywgdGhlIG1haW4gYGNhbGxiYWNrYCAoZm9yIHRoZSBgbWFwVmFsdWVzYFxuICAgICAqIGZ1bmN0aW9uKSBpcyBpbW1lZGlhdGVseSBjYWxsZWQgd2l0aCB0aGUgZXJyb3IuXG4gICAgICpcbiAgICAgKiBOb3RlLCB0aGUgb3JkZXIgb2YgdGhlIGtleXMgaW4gdGhlIHJlc3VsdCBpcyBub3QgZ3VhcmFudGVlZC4gIFRoZSBrZXlzIHdpbGxcbiAgICAgKiBiZSByb3VnaGx5IGluIHRoZSBvcmRlciB0aGV5IGNvbXBsZXRlLCAoYnV0IHRoaXMgaXMgdmVyeSBlbmdpbmUtc3BlY2lmaWMpXG4gICAgICpcbiAgICAgKiBAbmFtZSBtYXBWYWx1ZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmogLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggdmFsdWUgYW5kIGtleVxuICAgICAqIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIHZhbHVlIGFzIGl0cyByZXN1bHQuXG4gICAgICogSW52b2tlZCB3aXRoICh2YWx1ZSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBgcmVzdWx0YCBpcyBhIG5ldyBvYmplY3QgY29uc2lzdGluZ1xuICAgICAqIG9mIGVhY2gga2V5IGZyb20gYG9iamAsIHdpdGggZWFjaCB0cmFuc2Zvcm1lZCB2YWx1ZSBvbiB0aGUgcmlnaHQtaGFuZCBzaWRlLlxuICAgICAqIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBmaWxlMS50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMTAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTIudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDIwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIGZpbGUzLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAzMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlNC50eHQgZG9lcyBub3QgZXhpc3RcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVNYXAgPSB7XG4gICAgICogICAgIGYxOiAnZmlsZTEudHh0JyxcbiAgICAgKiAgICAgZjI6ICdmaWxlMi50eHQnLFxuICAgICAqICAgICBmMzogJ2ZpbGUzLnR4dCdcbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogY29uc3Qgd2l0aE1pc3NpbmdGaWxlTWFwID0ge1xuICAgICAqICAgICBmMTogJ2ZpbGUxLnR4dCcsXG4gICAgICogICAgIGYyOiAnZmlsZTIudHh0JyxcbiAgICAgKiAgICAgZjM6ICdmaWxlNC50eHQnXG4gICAgICogfTtcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IHJldHVybnMgdGhlIGZpbGUgc2l6ZSBpbiBieXRlc1xuICAgICAqIGZ1bmN0aW9uIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBrZXksIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZzLnN0YXQoZmlsZSwgZnVuY3Rpb24oZXJyLCBzdGF0KSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBzdGF0LnNpemUpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5tYXBWYWx1ZXMoZmlsZU1hcCwgZ2V0RmlsZVNpemVJbkJ5dGVzLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHJlc3VsdCBpcyBub3cgYSBtYXAgb2YgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIHtcbiAgICAgKiAgICAgICAgIC8vICAgICBmMTogMTAwMCxcbiAgICAgKiAgICAgICAgIC8vICAgICBmMjogMjAwMCxcbiAgICAgKiAgICAgICAgIC8vICAgICBmMzogMzAwMFxuICAgICAqICAgICAgICAgLy8gfVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBoYW5kbGluZ1xuICAgICAqIGFzeW5jLm1hcFZhbHVlcyh3aXRoTWlzc2luZ0ZpbGVNYXAsIGdldEZpbGVTaXplSW5CeXRlcywgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLm1hcFZhbHVlcyhmaWxlTWFwLCBnZXRGaWxlU2l6ZUluQnl0ZXMpXG4gICAgICogLnRoZW4oIHJlc3VsdCA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgIC8vIHJlc3VsdCBpcyBub3cgYSBtYXAgb2YgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgLy8ge1xuICAgICAqICAgICAvLyAgICAgZjE6IDEwMDAsXG4gICAgICogICAgIC8vICAgICBmMjogMjAwMCxcbiAgICAgKiAgICAgLy8gICAgIGYzOiAzMDAwXG4gICAgICogICAgIC8vIH1cbiAgICAgKiB9KS5jYXRjaCAoZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMubWFwVmFsdWVzKHdpdGhNaXNzaW5nRmlsZU1hcCwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqIH0pLmNhdGNoIChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMubWFwVmFsdWVzKGZpbGVNYXAsIGdldEZpbGVTaXplSW5CeXRlcyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIG5vdyBhIG1hcCBvZiBmaWxlIHNpemUgaW4gYnl0ZXMgZm9yIGVhY2ggZmlsZSwgZS5nLlxuICAgICAqICAgICAgICAgLy8ge1xuICAgICAqICAgICAgICAgLy8gICAgIGYxOiAxMDAwLFxuICAgICAqICAgICAgICAgLy8gICAgIGYyOiAyMDAwLFxuICAgICAqICAgICAgICAgLy8gICAgIGYzOiAzMDAwXG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLm1hcFZhbHVlcyh3aXRoTWlzc2luZ0ZpbGVNYXAsIGdldEZpbGVTaXplSW5CeXRlcyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gbWFwVmFsdWVzKG9iaiwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBtYXBWYWx1ZXNMaW1pdCQxKG9iaiwgSW5maW5pdHksIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYG1hcFZhbHVlc2Bde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXBWYWx1ZXN9IGJ1dCBydW5zIG9ubHkgYSBzaW5nbGUgYXN5bmMgb3BlcmF0aW9uIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIG1hcFZhbHVlc1Nlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLm1hcFZhbHVlc117QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcFZhbHVlc31cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmogLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggdmFsdWUgYW5kIGtleVxuICAgICAqIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIHZhbHVlIGFzIGl0cyByZXN1bHQuXG4gICAgICogSW52b2tlZCB3aXRoICh2YWx1ZSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBgcmVzdWx0YCBpcyBhIG5ldyBvYmplY3QgY29uc2lzdGluZ1xuICAgICAqIG9mIGVhY2gga2V5IGZyb20gYG9iamAsIHdpdGggZWFjaCB0cmFuc2Zvcm1lZCB2YWx1ZSBvbiB0aGUgcmlnaHQtaGFuZCBzaWRlLlxuICAgICAqIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIG1hcFZhbHVlc1NlcmllcyhvYmosIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gbWFwVmFsdWVzTGltaXQkMShvYmosIDEsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWNoZXMgdGhlIHJlc3VsdHMgb2YgYW4gYXN5bmMgZnVuY3Rpb24uIFdoZW4gY3JlYXRpbmcgYSBoYXNoIHRvIHN0b3JlXG4gICAgICogZnVuY3Rpb24gcmVzdWx0cyBhZ2FpbnN0LCB0aGUgY2FsbGJhY2sgaXMgb21pdHRlZCBmcm9tIHRoZSBoYXNoIGFuZCBhblxuICAgICAqIG9wdGlvbmFsIGhhc2ggZnVuY3Rpb24gY2FuIGJlIHVzZWQuXG4gICAgICpcbiAgICAgKiAqKk5vdGU6IGlmIHRoZSBhc3luYyBmdW5jdGlvbiBlcnJzLCB0aGUgcmVzdWx0IHdpbGwgbm90IGJlIGNhY2hlZCBhbmRcbiAgICAgKiBzdWJzZXF1ZW50IGNhbGxzIHdpbGwgY2FsbCB0aGUgd3JhcHBlZCBmdW5jdGlvbi4qKlxuICAgICAqXG4gICAgICogSWYgbm8gaGFzaCBmdW5jdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBmaXJzdCBhcmd1bWVudCBpcyB1c2VkIGFzIGEgaGFzaCBrZXksXG4gICAgICogd2hpY2ggbWF5IHdvcmsgcmVhc29uYWJseSBpZiBpdCBpcyBhIHN0cmluZyBvciBhIGRhdGEgdHlwZSB0aGF0IGNvbnZlcnRzIHRvIGFcbiAgICAgKiBkaXN0aW5jdCBzdHJpbmcuIE5vdGUgdGhhdCBvYmplY3RzIGFuZCBhcnJheXMgd2lsbCBub3QgYmVoYXZlIHJlYXNvbmFibHkuXG4gICAgICogTmVpdGhlciB3aWxsIGNhc2VzIHdoZXJlIHRoZSBvdGhlciBhcmd1bWVudHMgYXJlIHNpZ25pZmljYW50LiBJbiBzdWNoIGNhc2VzLFxuICAgICAqIHNwZWNpZnkgeW91ciBvd24gaGFzaCBmdW5jdGlvbi5cbiAgICAgKlxuICAgICAqIFRoZSBjYWNoZSBvZiByZXN1bHRzIGlzIGV4cG9zZWQgYXMgdGhlIGBtZW1vYCBwcm9wZXJ0eSBvZiB0aGUgZnVuY3Rpb25cbiAgICAgKiByZXR1cm5lZCBieSBgbWVtb2l6ZWAuXG4gICAgICpcbiAgICAgKiBAbmFtZSBtZW1vaXplXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGZuIC0gVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIHByb3h5IGFuZCBjYWNoZSByZXN1bHRzIGZyb20uXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gaGFzaGVyIC0gQW4gb3B0aW9uYWwgZnVuY3Rpb24gZm9yIGdlbmVyYXRpbmcgYSBjdXN0b20gaGFzaFxuICAgICAqIGZvciBzdG9yaW5nIHJlc3VsdHMuIEl0IGhhcyBhbGwgdGhlIGFyZ3VtZW50cyBhcHBsaWVkIHRvIGl0IGFwYXJ0IGZyb20gdGhlXG4gICAgICogY2FsbGJhY2ssIGFuZCBtdXN0IGJlIHN5bmNocm9ub3VzLlxuICAgICAqIEByZXR1cm5zIHtBc3luY0Z1bmN0aW9ufSBhIG1lbW9pemVkIHZlcnNpb24gb2YgYGZuYFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiB2YXIgc2xvd19mbiA9IGZ1bmN0aW9uKG5hbWUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIC8vIGRvIHNvbWV0aGluZ1xuICAgICAqICAgICBjYWxsYmFjayhudWxsLCByZXN1bHQpO1xuICAgICAqIH07XG4gICAgICogdmFyIGZuID0gYXN5bmMubWVtb2l6ZShzbG93X2ZuKTtcbiAgICAgKlxuICAgICAqIC8vIGZuIGNhbiBub3cgYmUgdXNlZCBhcyBpZiBpdCB3ZXJlIHNsb3dfZm5cbiAgICAgKiBmbignc29tZSBuYW1lJywgZnVuY3Rpb24oKSB7XG4gICAgICogICAgIC8vIGNhbGxiYWNrXG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gbWVtb2l6ZShmbiwgaGFzaGVyID0gdiA9PiB2KSB7XG4gICAgICAgIHZhciBtZW1vID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdmFyIHF1ZXVlcyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIHZhciBfZm4gPSB3cmFwQXN5bmMoZm4pO1xuICAgICAgICB2YXIgbWVtb2l6ZWQgPSBpbml0aWFsUGFyYW1zKChhcmdzLCBjYWxsYmFjaykgPT4ge1xuICAgICAgICAgICAgdmFyIGtleSA9IGhhc2hlciguLi5hcmdzKTtcbiAgICAgICAgICAgIGlmIChrZXkgaW4gbWVtbykge1xuICAgICAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKCgpID0+IGNhbGxiYWNrKG51bGwsIC4uLm1lbW9ba2V5XSkpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gcXVldWVzKSB7XG4gICAgICAgICAgICAgICAgcXVldWVzW2tleV0ucHVzaChjYWxsYmFjayk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHF1ZXVlc1trZXldID0gW2NhbGxiYWNrXTtcbiAgICAgICAgICAgICAgICBfZm4oLi4uYXJncywgKGVyciwgLi4ucmVzdWx0QXJncykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyAjMTQ2NSBkb24ndCBtZW1vaXplIGlmIGFuIGVycm9yIG9jY3VycmVkXG4gICAgICAgICAgICAgICAgICAgIGlmICghZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtZW1vW2tleV0gPSByZXN1bHRBcmdzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHZhciBxID0gcXVldWVzW2tleV07XG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBxdWV1ZXNba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBxLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcVtpXShlcnIsIC4uLnJlc3VsdEFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBtZW1vaXplZC5tZW1vID0gbWVtbztcbiAgICAgICAgbWVtb2l6ZWQudW5tZW1vaXplZCA9IGZuO1xuICAgICAgICByZXR1cm4gbWVtb2l6ZWQ7XG4gICAgfVxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGZpbGUgKi9cblxuICAgIC8qKlxuICAgICAqIENhbGxzIGBjYWxsYmFja2Agb24gYSBsYXRlciBsb29wIGFyb3VuZCB0aGUgZXZlbnQgbG9vcC4gSW4gTm9kZS5qcyB0aGlzIGp1c3RcbiAgICAgKiBjYWxscyBgcHJvY2Vzcy5uZXh0VGlja2AuICBJbiB0aGUgYnJvd3NlciBpdCB3aWxsIHVzZSBgc2V0SW1tZWRpYXRlYCBpZlxuICAgICAqIGF2YWlsYWJsZSwgb3RoZXJ3aXNlIGBzZXRUaW1lb3V0KGNhbGxiYWNrLCAwKWAsIHdoaWNoIG1lYW5zIG90aGVyIGhpZ2hlclxuICAgICAqIHByaW9yaXR5IGV2ZW50cyBtYXkgcHJlY2VkZSB0aGUgZXhlY3V0aW9uIG9mIGBjYWxsYmFja2AuXG4gICAgICpcbiAgICAgKiBUaGlzIGlzIHVzZWQgaW50ZXJuYWxseSBmb3IgYnJvd3Nlci1jb21wYXRpYmlsaXR5IHB1cnBvc2VzLlxuICAgICAqXG4gICAgICogQG5hbWUgbmV4dFRpY2tcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5zZXRJbW1lZGlhdGVde0BsaW5rIG1vZHVsZTpVdGlscy5zZXRJbW1lZGlhdGV9XG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFjayAtIFRoZSBmdW5jdGlvbiB0byBjYWxsIG9uIGEgbGF0ZXIgbG9vcCBhcm91bmRcbiAgICAgKiB0aGUgZXZlbnQgbG9vcC4gSW52b2tlZCB3aXRoIChhcmdzLi4uKS5cbiAgICAgKiBAcGFyYW0gey4uLip9IGFyZ3MuLi4gLSBhbnkgbnVtYmVyIG9mIGFkZGl0aW9uYWwgYXJndW1lbnRzIHRvIHBhc3MgdG8gdGhlXG4gICAgICogY2FsbGJhY2sgb24gdGhlIG5leHQgdGljay5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogdmFyIGNhbGxfb3JkZXIgPSBbXTtcbiAgICAgKiBhc3luYy5uZXh0VGljayhmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgY2FsbF9vcmRlci5wdXNoKCd0d28nKTtcbiAgICAgKiAgICAgLy8gY2FsbF9vcmRlciBub3cgZXF1YWxzIFsnb25lJywndHdvJ11cbiAgICAgKiB9KTtcbiAgICAgKiBjYWxsX29yZGVyLnB1c2goJ29uZScpO1xuICAgICAqXG4gICAgICogYXN5bmMuc2V0SW1tZWRpYXRlKGZ1bmN0aW9uIChhLCBiLCBjKSB7XG4gICAgICogICAgIC8vIGEsIGIsIGFuZCBjIGVxdWFsIDEsIDIsIGFuZCAzXG4gICAgICogfSwgMSwgMiwgMyk7XG4gICAgICovXG4gICAgdmFyIF9kZWZlciQxO1xuXG4gICAgaWYgKGhhc05leHRUaWNrKSB7XG4gICAgICAgIF9kZWZlciQxID0gcHJvY2Vzcy5uZXh0VGljaztcbiAgICB9IGVsc2UgaWYgKGhhc1NldEltbWVkaWF0ZSkge1xuICAgICAgICBfZGVmZXIkMSA9IHNldEltbWVkaWF0ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBfZGVmZXIkMSA9IGZhbGxiYWNrO1xuICAgIH1cblxuICAgIHZhciBuZXh0VGljayA9IHdyYXAoX2RlZmVyJDEpO1xuXG4gICAgdmFyIHBhcmFsbGVsID0gYXdhaXRpZnkoKGVhY2hmbiwgdGFza3MsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgIHZhciByZXN1bHRzID0gaXNBcnJheUxpa2UodGFza3MpID8gW10gOiB7fTtcblxuICAgICAgICBlYWNoZm4odGFza3MsICh0YXNrLCBrZXksIHRhc2tDYikgPT4ge1xuICAgICAgICAgICAgd3JhcEFzeW5jKHRhc2spKChlcnIsIC4uLnJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgICAgICAgICBbcmVzdWx0XSA9IHJlc3VsdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzdWx0c1trZXldID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgIHRhc2tDYihlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVyciA9PiBjYWxsYmFjayhlcnIsIHJlc3VsdHMpKTtcbiAgICB9LCAzKTtcblxuICAgIC8qKlxuICAgICAqIFJ1biB0aGUgYHRhc2tzYCBjb2xsZWN0aW9uIG9mIGZ1bmN0aW9ucyBpbiBwYXJhbGxlbCwgd2l0aG91dCB3YWl0aW5nIHVudGlsXG4gICAgICogdGhlIHByZXZpb3VzIGZ1bmN0aW9uIGhhcyBjb21wbGV0ZWQuIElmIGFueSBvZiB0aGUgZnVuY3Rpb25zIHBhc3MgYW4gZXJyb3IgdG9cbiAgICAgKiBpdHMgY2FsbGJhY2ssIHRoZSBtYWluIGBjYWxsYmFja2AgaXMgaW1tZWRpYXRlbHkgY2FsbGVkIHdpdGggdGhlIHZhbHVlIG9mIHRoZVxuICAgICAqIGVycm9yLiBPbmNlIHRoZSBgdGFza3NgIGhhdmUgY29tcGxldGVkLCB0aGUgcmVzdWx0cyBhcmUgcGFzc2VkIHRvIHRoZSBmaW5hbFxuICAgICAqIGBjYWxsYmFja2AgYXMgYW4gYXJyYXkuXG4gICAgICpcbiAgICAgKiAqKk5vdGU6KiogYHBhcmFsbGVsYCBpcyBhYm91dCBraWNraW5nLW9mZiBJL08gdGFza3MgaW4gcGFyYWxsZWwsIG5vdCBhYm91dFxuICAgICAqIHBhcmFsbGVsIGV4ZWN1dGlvbiBvZiBjb2RlLiAgSWYgeW91ciB0YXNrcyBkbyBub3QgdXNlIGFueSB0aW1lcnMgb3IgcGVyZm9ybVxuICAgICAqIGFueSBJL08sIHRoZXkgd2lsbCBhY3R1YWxseSBiZSBleGVjdXRlZCBpbiBzZXJpZXMuICBBbnkgc3luY2hyb25vdXMgc2V0dXBcbiAgICAgKiBzZWN0aW9ucyBmb3IgZWFjaCB0YXNrIHdpbGwgaGFwcGVuIG9uZSBhZnRlciB0aGUgb3RoZXIuICBKYXZhU2NyaXB0IHJlbWFpbnNcbiAgICAgKiBzaW5nbGUtdGhyZWFkZWQuXG4gICAgICpcbiAgICAgKiAqKkhpbnQ6KiogVXNlIFtgcmVmbGVjdGBde0BsaW5rIG1vZHVsZTpVdGlscy5yZWZsZWN0fSB0byBjb250aW51ZSB0aGVcbiAgICAgKiBleGVjdXRpb24gb2Ygb3RoZXIgdGFza3Mgd2hlbiBhIHRhc2sgZmFpbHMuXG4gICAgICpcbiAgICAgKiBJdCBpcyBhbHNvIHBvc3NpYmxlIHRvIHVzZSBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheS4gRWFjaCBwcm9wZXJ0eSB3aWxsXG4gICAgICogYmUgcnVuIGFzIGEgZnVuY3Rpb24gYW5kIHRoZSByZXN1bHRzIHdpbGwgYmUgcGFzc2VkIHRvIHRoZSBmaW5hbCBgY2FsbGJhY2tgXG4gICAgICogYXMgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXkuIFRoaXMgY2FuIGJlIGEgbW9yZSByZWFkYWJsZSB3YXkgb2YgaGFuZGxpbmdcbiAgICAgKiByZXN1bHRzIGZyb20ge0BsaW5rIGFzeW5jLnBhcmFsbGVsfS5cbiAgICAgKlxuICAgICAqIEBuYW1lIHBhcmFsbGVsXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IHRhc2tzIC0gQSBjb2xsZWN0aW9uIG9mXG4gICAgICogW2FzeW5jIGZ1bmN0aW9uc117QGxpbmsgQXN5bmNGdW5jdGlvbn0gdG8gcnVuLlxuICAgICAqIEVhY2ggYXN5bmMgZnVuY3Rpb24gY2FuIGNvbXBsZXRlIHdpdGggYW55IG51bWJlciBvZiBvcHRpb25hbCBgcmVzdWx0YCB2YWx1ZXMuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEFuIG9wdGlvbmFsIGNhbGxiYWNrIHRvIHJ1biBvbmNlIGFsbCB0aGVcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5LiBUaGlzIGZ1bmN0aW9uIGdldHMgYSByZXN1bHRzIGFycmF5XG4gICAgICogKG9yIG9iamVjdCkgY29udGFpbmluZyBhbGwgdGhlIHJlc3VsdCBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSB0YXNrIGNhbGxiYWNrcy5cbiAgICAgKiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBub3QgcGFzc2VkXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy9Vc2luZyBDYWxsYmFja3NcbiAgICAgKiBhc3luYy5wYXJhbGxlbChbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICd0d28nKTtcbiAgICAgKiAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgIH1cbiAgICAgKiBdLCBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG8gWydvbmUnLCd0d28nXSBldmVuIHRob3VnaFxuICAgICAqICAgICAvLyB0aGUgc2Vjb25kIGZ1bmN0aW9uIGhhZCBhIHNob3J0ZXIgdGltZW91dC5cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIGFuIGV4YW1wbGUgdXNpbmcgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXlcbiAgICAgKiBhc3luYy5wYXJhbGxlbCh7XG4gICAgICogICAgIG9uZTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMSk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICB0d286IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIDIpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0bzogeyBvbmU6IDEsIHR3bzogMiB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMucGFyYWxsZWwoW1xuICAgICAqICAgICBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJyk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAndHdvJyk7XG4gICAgICogICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICB9XG4gICAgICogXSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG8gWydvbmUnLCd0d28nXSBldmVuIHRob3VnaFxuICAgICAqICAgICAvLyB0aGUgc2Vjb25kIGZ1bmN0aW9uIGhhZCBhIHNob3J0ZXIgdGltZW91dC5cbiAgICAgKiB9KS5jYXRjaChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGFzeW5jLnBhcmFsbGVsKHtcbiAgICAgKiAgICAgb25lOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAxKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIHR3bzogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMik7XG4gICAgICogICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICB9XG4gICAgICogfSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG86IHsgb25lOiAxLCB0d286IDIgfVxuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5wYXJhbGxlbChbXG4gICAgICogICAgICAgICAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgICAgICAgICB9LFxuICAgICAqICAgICAgICAgICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAndHdvJyk7XG4gICAgICogICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgICAgICAgICAgfVxuICAgICAqICAgICAgICAgXSk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG8gWydvbmUnLCd0d28nXSBldmVuIHRob3VnaFxuICAgICAqICAgICAgICAgLy8gdGhlIHNlY29uZCBmdW5jdGlvbiBoYWQgYSBzaG9ydGVyIHRpbWVvdXQuXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIGFuIGV4YW1wbGUgdXNpbmcgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXlcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLnBhcmFsbGVsKHtcbiAgICAgKiAgICAgICAgICAgICBvbmU6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAxKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgICAgICAgICB9LFxuICAgICAqICAgICAgICAgICAgdHdvOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMik7XG4gICAgICogICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgICAgICAgICB9XG4gICAgICogICAgICAgICB9KTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0bzogeyBvbmU6IDEsIHR3bzogMiB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHBhcmFsbGVsJDEodGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBwYXJhbGxlbChlYWNoT2YkMSwgdGFza3MsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHBhcmFsbGVsYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnBhcmFsbGVsfSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGFcbiAgICAgKiB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgcGFyYWxsZWxMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnBhcmFsbGVsXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucGFyYWxsZWx9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IHRhc2tzIC0gQSBjb2xsZWN0aW9uIG9mXG4gICAgICogW2FzeW5jIGZ1bmN0aW9uc117QGxpbmsgQXN5bmNGdW5jdGlvbn0gdG8gcnVuLlxuICAgICAqIEVhY2ggYXN5bmMgZnVuY3Rpb24gY2FuIGNvbXBsZXRlIHdpdGggYW55IG51bWJlciBvZiBvcHRpb25hbCBgcmVzdWx0YCB2YWx1ZXMuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBbiBvcHRpb25hbCBjYWxsYmFjayB0byBydW4gb25jZSBhbGwgdGhlXG4gICAgICogZnVuY3Rpb25zIGhhdmUgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS4gVGhpcyBmdW5jdGlvbiBnZXRzIGEgcmVzdWx0cyBhcnJheVxuICAgICAqIChvciBvYmplY3QpIGNvbnRhaW5pbmcgYWxsIHRoZSByZXN1bHQgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgdGFzayBjYWxsYmFja3MuXG4gICAgICogSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIGEgY2FsbGJhY2sgaXMgbm90IHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHBhcmFsbGVsTGltaXQodGFza3MsIGxpbWl0LCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gcGFyYWxsZWwoZWFjaE9mTGltaXQobGltaXQpLCB0YXNrcywgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEEgcXVldWUgb2YgdGFza3MgZm9yIHRoZSB3b3JrZXIgZnVuY3Rpb24gdG8gY29tcGxldGUuXG4gICAgICogQHR5cGVkZWYge0l0ZXJhYmxlfSBRdWV1ZU9iamVjdFxuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAcHJvcGVydHkge0Z1bmN0aW9ufSBsZW5ndGggLSBhIGZ1bmN0aW9uIHJldHVybmluZyB0aGUgbnVtYmVyIG9mIGl0ZW1zXG4gICAgICogd2FpdGluZyB0byBiZSBwcm9jZXNzZWQuIEludm9rZSB3aXRoIGBxdWV1ZS5sZW5ndGgoKWAuXG4gICAgICogQHByb3BlcnR5IHtib29sZWFufSBzdGFydGVkIC0gYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgYW55XG4gICAgICogaXRlbXMgaGF2ZSBiZWVuIHB1c2hlZCBhbmQgcHJvY2Vzc2VkIGJ5IHRoZSBxdWV1ZS5cbiAgICAgKiBAcHJvcGVydHkge0Z1bmN0aW9ufSBydW5uaW5nIC0gYSBmdW5jdGlvbiByZXR1cm5pbmcgdGhlIG51bWJlciBvZiBpdGVtc1xuICAgICAqIGN1cnJlbnRseSBiZWluZyBwcm9jZXNzZWQuIEludm9rZSB3aXRoIGBxdWV1ZS5ydW5uaW5nKClgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHdvcmtlcnNMaXN0IC0gYSBmdW5jdGlvbiByZXR1cm5pbmcgdGhlIGFycmF5IG9mIGl0ZW1zXG4gICAgICogY3VycmVudGx5IGJlaW5nIHByb2Nlc3NlZC4gSW52b2tlIHdpdGggYHF1ZXVlLndvcmtlcnNMaXN0KClgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGlkbGUgLSBhIGZ1bmN0aW9uIHJldHVybmluZyBmYWxzZSBpZiB0aGVyZSBhcmUgaXRlbXNcbiAgICAgKiB3YWl0aW5nIG9yIGJlaW5nIHByb2Nlc3NlZCwgb3IgdHJ1ZSBpZiBub3QuIEludm9rZSB3aXRoIGBxdWV1ZS5pZGxlKClgLlxuICAgICAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBjb25jdXJyZW5jeSAtIGFuIGludGVnZXIgZm9yIGRldGVybWluaW5nIGhvdyBtYW55IGB3b3JrZXJgXG4gICAgICogZnVuY3Rpb25zIHNob3VsZCBiZSBydW4gaW4gcGFyYWxsZWwuIFRoaXMgcHJvcGVydHkgY2FuIGJlIGNoYW5nZWQgYWZ0ZXIgYVxuICAgICAqIGBxdWV1ZWAgaXMgY3JlYXRlZCB0byBhbHRlciB0aGUgY29uY3VycmVuY3kgb24tdGhlLWZseS5cbiAgICAgKiBAcHJvcGVydHkge251bWJlcn0gcGF5bG9hZCAtIGFuIGludGVnZXIgdGhhdCBzcGVjaWZpZXMgaG93IG1hbnkgaXRlbXMgYXJlXG4gICAgICogcGFzc2VkIHRvIHRoZSB3b3JrZXIgZnVuY3Rpb24gYXQgYSB0aW1lLiBvbmx5IGFwcGxpZXMgaWYgdGhpcyBpcyBhXG4gICAgICogW2NhcmdvXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuY2FyZ299IG9iamVjdFxuICAgICAqIEBwcm9wZXJ0eSB7QXN5bmNGdW5jdGlvbn0gcHVzaCAtIGFkZCBhIG5ldyB0YXNrIHRvIHRoZSBgcXVldWVgLiBDYWxscyBgY2FsbGJhY2tgXG4gICAgICogb25jZSB0aGUgYHdvcmtlcmAgaGFzIGZpbmlzaGVkIHByb2Nlc3NpbmcgdGhlIHRhc2suIEluc3RlYWQgb2YgYSBzaW5nbGUgdGFzayxcbiAgICAgKiBhIGB0YXNrc2AgYXJyYXkgY2FuIGJlIHN1Ym1pdHRlZC4gVGhlIHJlc3BlY3RpdmUgY2FsbGJhY2sgaXMgdXNlZCBmb3IgZXZlcnlcbiAgICAgKiB0YXNrIGluIHRoZSBsaXN0LiBJbnZva2Ugd2l0aCBgcXVldWUucHVzaCh0YXNrLCBbY2FsbGJhY2tdKWAsXG4gICAgICogQHByb3BlcnR5IHtBc3luY0Z1bmN0aW9ufSB1bnNoaWZ0IC0gYWRkIGEgbmV3IHRhc2sgdG8gdGhlIGZyb250IG9mIHRoZSBgcXVldWVgLlxuICAgICAqIEludm9rZSB3aXRoIGBxdWV1ZS51bnNoaWZ0KHRhc2ssIFtjYWxsYmFja10pYC5cbiAgICAgKiBAcHJvcGVydHkge0FzeW5jRnVuY3Rpb259IHB1c2hBc3luYyAtIHRoZSBzYW1lIGFzIGBxLnB1c2hgLCBleGNlcHQgdGhpcyByZXR1cm5zXG4gICAgICogYSBwcm9taXNlIHRoYXQgcmVqZWN0cyBpZiBhbiBlcnJvciBvY2N1cnMuXG4gICAgICogQHByb3BlcnR5IHtBc3luY0Z1bmN0aW9ufSB1bnNoaWZ0QXN5bmMgLSB0aGUgc2FtZSBhcyBgcS51bnNoaWZ0YCwgZXhjZXB0IHRoaXMgcmV0dXJuc1xuICAgICAqIGEgcHJvbWlzZSB0aGF0IHJlamVjdHMgaWYgYW4gZXJyb3Igb2NjdXJzLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHJlbW92ZSAtIHJlbW92ZSBpdGVtcyBmcm9tIHRoZSBxdWV1ZSB0aGF0IG1hdGNoIGEgdGVzdFxuICAgICAqIGZ1bmN0aW9uLiAgVGhlIHRlc3QgZnVuY3Rpb24gd2lsbCBiZSBwYXNzZWQgYW4gb2JqZWN0IHdpdGggYSBgZGF0YWAgcHJvcGVydHksXG4gICAgICogYW5kIGEgYHByaW9yaXR5YCBwcm9wZXJ0eSwgaWYgdGhpcyBpcyBhXG4gICAgICogW3ByaW9yaXR5UXVldWVde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5wcmlvcml0eVF1ZXVlfSBvYmplY3QuXG4gICAgICogSW52b2tlZCB3aXRoIGBxdWV1ZS5yZW1vdmUodGVzdEZuKWAsIHdoZXJlIGB0ZXN0Rm5gIGlzIG9mIHRoZSBmb3JtXG4gICAgICogYGZ1bmN0aW9uICh7ZGF0YSwgcHJpb3JpdHl9KSB7fWAgYW5kIHJldHVybnMgYSBCb29sZWFuLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHNhdHVyYXRlZCAtIGEgZnVuY3Rpb24gdGhhdCBzZXRzIGEgY2FsbGJhY2sgdGhhdCBpc1xuICAgICAqIGNhbGxlZCB3aGVuIHRoZSBudW1iZXIgb2YgcnVubmluZyB3b3JrZXJzIGhpdHMgdGhlIGBjb25jdXJyZW5jeWAgbGltaXQsIGFuZFxuICAgICAqIGZ1cnRoZXIgdGFza3Mgd2lsbCBiZSBxdWV1ZWQuICBJZiB0aGUgY2FsbGJhY2sgaXMgb21pdHRlZCwgYHEuc2F0dXJhdGVkKClgXG4gICAgICogcmV0dXJucyBhIHByb21pc2UgZm9yIHRoZSBuZXh0IG9jY3VycmVuY2UuXG4gICAgICogQHByb3BlcnR5IHtGdW5jdGlvbn0gdW5zYXR1cmF0ZWQgLSBhIGZ1bmN0aW9uIHRoYXQgc2V0cyBhIGNhbGxiYWNrIHRoYXQgaXNcbiAgICAgKiBjYWxsZWQgd2hlbiB0aGUgbnVtYmVyIG9mIHJ1bm5pbmcgd29ya2VycyBpcyBsZXNzIHRoYW4gdGhlIGBjb25jdXJyZW5jeWAgJlxuICAgICAqIGBidWZmZXJgIGxpbWl0cywgYW5kIGZ1cnRoZXIgdGFza3Mgd2lsbCBub3QgYmUgcXVldWVkLiBJZiB0aGUgY2FsbGJhY2sgaXNcbiAgICAgKiBvbWl0dGVkLCBgcS51bnNhdHVyYXRlZCgpYCByZXR1cm5zIGEgcHJvbWlzZSBmb3IgdGhlIG5leHQgb2NjdXJyZW5jZS5cbiAgICAgKiBAcHJvcGVydHkge251bWJlcn0gYnVmZmVyIC0gQSBtaW5pbXVtIHRocmVzaG9sZCBidWZmZXIgaW4gb3JkZXIgdG8gc2F5IHRoYXRcbiAgICAgKiB0aGUgYHF1ZXVlYCBpcyBgdW5zYXR1cmF0ZWRgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGVtcHR5IC0gYSBmdW5jdGlvbiB0aGF0IHNldHMgYSBjYWxsYmFjayB0aGF0IGlzIGNhbGxlZFxuICAgICAqIHdoZW4gdGhlIGxhc3QgaXRlbSBmcm9tIHRoZSBgcXVldWVgIGlzIGdpdmVuIHRvIGEgYHdvcmtlcmAuIElmIHRoZSBjYWxsYmFja1xuICAgICAqIGlzIG9taXR0ZWQsIGBxLmVtcHR5KClgIHJldHVybnMgYSBwcm9taXNlIGZvciB0aGUgbmV4dCBvY2N1cnJlbmNlLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGRyYWluIC0gYSBmdW5jdGlvbiB0aGF0IHNldHMgYSBjYWxsYmFjayB0aGF0IGlzIGNhbGxlZFxuICAgICAqIHdoZW4gdGhlIGxhc3QgaXRlbSBmcm9tIHRoZSBgcXVldWVgIGhhcyByZXR1cm5lZCBmcm9tIHRoZSBgd29ya2VyYC4gSWYgdGhlXG4gICAgICogY2FsbGJhY2sgaXMgb21pdHRlZCwgYHEuZHJhaW4oKWAgcmV0dXJucyBhIHByb21pc2UgZm9yIHRoZSBuZXh0IG9jY3VycmVuY2UuXG4gICAgICogQHByb3BlcnR5IHtGdW5jdGlvbn0gZXJyb3IgLSBhIGZ1bmN0aW9uIHRoYXQgc2V0cyBhIGNhbGxiYWNrIHRoYXQgaXMgY2FsbGVkXG4gICAgICogd2hlbiBhIHRhc2sgZXJyb3JzLiBIYXMgdGhlIHNpZ25hdHVyZSBgZnVuY3Rpb24oZXJyb3IsIHRhc2spYC4gSWYgdGhlXG4gICAgICogY2FsbGJhY2sgaXMgb21pdHRlZCwgYGVycm9yKClgIHJldHVybnMgYSBwcm9taXNlIHRoYXQgcmVqZWN0cyBvbiB0aGUgbmV4dFxuICAgICAqIGVycm9yLlxuICAgICAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGF1c2VkIC0gYSBib29sZWFuIGZvciBkZXRlcm1pbmluZyB3aGV0aGVyIHRoZSBxdWV1ZSBpc1xuICAgICAqIGluIGEgcGF1c2VkIHN0YXRlLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHBhdXNlIC0gYSBmdW5jdGlvbiB0aGF0IHBhdXNlcyB0aGUgcHJvY2Vzc2luZyBvZiB0YXNrc1xuICAgICAqIHVudGlsIGByZXN1bWUoKWAgaXMgY2FsbGVkLiBJbnZva2Ugd2l0aCBgcXVldWUucGF1c2UoKWAuXG4gICAgICogQHByb3BlcnR5IHtGdW5jdGlvbn0gcmVzdW1lIC0gYSBmdW5jdGlvbiB0aGF0IHJlc3VtZXMgdGhlIHByb2Nlc3Npbmcgb2ZcbiAgICAgKiBxdWV1ZWQgdGFza3Mgd2hlbiB0aGUgcXVldWUgaXMgcGF1c2VkLiBJbnZva2Ugd2l0aCBgcXVldWUucmVzdW1lKClgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGtpbGwgLSBhIGZ1bmN0aW9uIHRoYXQgcmVtb3ZlcyB0aGUgYGRyYWluYCBjYWxsYmFjayBhbmRcbiAgICAgKiBlbXB0aWVzIHJlbWFpbmluZyB0YXNrcyBmcm9tIHRoZSBxdWV1ZSBmb3JjaW5nIGl0IHRvIGdvIGlkbGUuIE5vIG1vcmUgdGFza3NcbiAgICAgKiBzaG91bGQgYmUgcHVzaGVkIHRvIHRoZSBxdWV1ZSBhZnRlciBjYWxsaW5nIHRoaXMgZnVuY3Rpb24uIEludm9rZSB3aXRoIGBxdWV1ZS5raWxsKClgLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBjb25zdCBxID0gYXN5bmMucXVldWUod29ya2VyLCAyKVxuICAgICAqIHEucHVzaChpdGVtMSlcbiAgICAgKiBxLnB1c2goaXRlbTIpXG4gICAgICogcS5wdXNoKGl0ZW0zKVxuICAgICAqIC8vIHF1ZXVlcyBhcmUgaXRlcmFibGUsIHNwcmVhZCBpbnRvIGFuIGFycmF5IHRvIGluc3BlY3RcbiAgICAgKiBjb25zdCBpdGVtcyA9IFsuLi5xXSAvLyBbaXRlbTEsIGl0ZW0yLCBpdGVtM11cbiAgICAgKiAvLyBvciB1c2UgZm9yIG9mXG4gICAgICogZm9yIChsZXQgaXRlbSBvZiBxKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGl0ZW0pXG4gICAgICogfVxuICAgICAqXG4gICAgICogcS5kcmFpbigoKSA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdhbGwgZG9uZScpXG4gICAgICogfSlcbiAgICAgKiAvLyBvclxuICAgICAqIGF3YWl0IHEuZHJhaW4oKVxuICAgICAqL1xuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIGBxdWV1ZWAgb2JqZWN0IHdpdGggdGhlIHNwZWNpZmllZCBgY29uY3VycmVuY3lgLiBUYXNrcyBhZGRlZCB0byB0aGVcbiAgICAgKiBgcXVldWVgIGFyZSBwcm9jZXNzZWQgaW4gcGFyYWxsZWwgKHVwIHRvIHRoZSBgY29uY3VycmVuY3lgIGxpbWl0KS4gSWYgYWxsXG4gICAgICogYHdvcmtlcmBzIGFyZSBpbiBwcm9ncmVzcywgdGhlIHRhc2sgaXMgcXVldWVkIHVudGlsIG9uZSBiZWNvbWVzIGF2YWlsYWJsZS5cbiAgICAgKiBPbmNlIGEgYHdvcmtlcmAgY29tcGxldGVzIGEgYHRhc2tgLCB0aGF0IGB0YXNrYCdzIGNhbGxiYWNrIGlzIGNhbGxlZC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHF1ZXVlXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmMgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgYSBxdWV1ZWQgdGFzay5cbiAgICAgKiBJZiB5b3Ugd2FudCB0byBoYW5kbGUgZXJyb3JzIGZyb20gYW4gaW5kaXZpZHVhbCB0YXNrLCBwYXNzIGEgY2FsbGJhY2sgdG9cbiAgICAgKiBgcS5wdXNoKClgLiBJbnZva2VkIHdpdGggKHRhc2ssIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gW2NvbmN1cnJlbmN5PTFdIC0gQW4gYGludGVnZXJgIGZvciBkZXRlcm1pbmluZyBob3cgbWFueVxuICAgICAqIGB3b3JrZXJgIGZ1bmN0aW9ucyBzaG91bGQgYmUgcnVuIGluIHBhcmFsbGVsLiAgSWYgb21pdHRlZCwgdGhlIGNvbmN1cnJlbmN5XG4gICAgICogZGVmYXVsdHMgdG8gYDFgLiAgSWYgdGhlIGNvbmN1cnJlbmN5IGlzIGAwYCwgYW4gZXJyb3IgaXMgdGhyb3duLlxuICAgICAqIEByZXR1cm5zIHttb2R1bGU6Q29udHJvbEZsb3cuUXVldWVPYmplY3R9IEEgcXVldWUgb2JqZWN0IHRvIG1hbmFnZSB0aGUgdGFza3MuIENhbGxiYWNrcyBjYW4gYmVcbiAgICAgKiBhdHRhY2hlZCBhcyBjZXJ0YWluIHByb3BlcnRpZXMgdG8gbGlzdGVuIGZvciBzcGVjaWZpYyBldmVudHMgZHVyaW5nIHRoZVxuICAgICAqIGxpZmVjeWNsZSBvZiB0aGUgcXVldWUuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGNyZWF0ZSBhIHF1ZXVlIG9iamVjdCB3aXRoIGNvbmN1cnJlbmN5IDJcbiAgICAgKiB2YXIgcSA9IGFzeW5jLnF1ZXVlKGZ1bmN0aW9uKHRhc2ssIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdoZWxsbyAnICsgdGFzay5uYW1lKTtcbiAgICAgKiAgICAgY2FsbGJhY2soKTtcbiAgICAgKiB9LCAyKTtcbiAgICAgKlxuICAgICAqIC8vIGFzc2lnbiBhIGNhbGxiYWNrXG4gICAgICogcS5kcmFpbihmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ2FsbCBpdGVtcyBoYXZlIGJlZW4gcHJvY2Vzc2VkJyk7XG4gICAgICogfSk7XG4gICAgICogLy8gb3IgYXdhaXQgdGhlIGVuZFxuICAgICAqIGF3YWl0IHEuZHJhaW4oKVxuICAgICAqXG4gICAgICogLy8gYXNzaWduIGFuIGVycm9yIGNhbGxiYWNrXG4gICAgICogcS5lcnJvcihmdW5jdGlvbihlcnIsIHRhc2spIHtcbiAgICAgKiAgICAgY29uc29sZS5lcnJvcigndGFzayBleHBlcmllbmNlZCBhbiBlcnJvcicpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYWRkIHNvbWUgaXRlbXMgdG8gdGhlIHF1ZXVlXG4gICAgICogcS5wdXNoKHtuYW1lOiAnZm9vJ30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBmb28nKTtcbiAgICAgKiB9KTtcbiAgICAgKiAvLyBjYWxsYmFjayBpcyBvcHRpb25hbFxuICAgICAqIHEucHVzaCh7bmFtZTogJ2Jhcid9KTtcbiAgICAgKlxuICAgICAqIC8vIGFkZCBzb21lIGl0ZW1zIHRvIHRoZSBxdWV1ZSAoYmF0Y2gtd2lzZSlcbiAgICAgKiBxLnB1c2goW3tuYW1lOiAnYmF6J30se25hbWU6ICdiYXknfSx7bmFtZTogJ2JheCd9XSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGl0ZW0nKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIGFkZCBzb21lIGl0ZW1zIHRvIHRoZSBmcm9udCBvZiB0aGUgcXVldWVcbiAgICAgKiBxLnVuc2hpZnQoe25hbWU6ICdiYXInfSwgZnVuY3Rpb24gKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBiYXInKTtcbiAgICAgKiB9KTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBxdWV1ZSQxICh3b3JrZXIsIGNvbmN1cnJlbmN5KSB7XG4gICAgICAgIHZhciBfd29ya2VyID0gd3JhcEFzeW5jKHdvcmtlcik7XG4gICAgICAgIHJldHVybiBxdWV1ZSgoaXRlbXMsIGNiKSA9PiB7XG4gICAgICAgICAgICBfd29ya2VyKGl0ZW1zWzBdLCBjYik7XG4gICAgICAgIH0sIGNvbmN1cnJlbmN5LCAxKTtcbiAgICB9XG5cbiAgICAvLyBCaW5hcnkgbWluLWhlYXAgaW1wbGVtZW50YXRpb24gdXNlZCBmb3IgcHJpb3JpdHkgcXVldWUuXG4gICAgLy8gSW1wbGVtZW50YXRpb24gaXMgc3RhYmxlLCBpLmUuIHB1c2ggdGltZSBpcyBjb25zaWRlcmVkIGZvciBlcXVhbCBwcmlvcml0aWVzXG4gICAgY2xhc3MgSGVhcCB7XG4gICAgICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICAgICAgdGhpcy5oZWFwID0gW107XG4gICAgICAgICAgICB0aGlzLnB1c2hDb3VudCA9IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSO1xuICAgICAgICB9XG5cbiAgICAgICAgZ2V0IGxlbmd0aCgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmhlYXAubGVuZ3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgZW1wdHkgKCkge1xuICAgICAgICAgICAgdGhpcy5oZWFwID0gW107XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfVxuXG4gICAgICAgIHBlcmNVcChpbmRleCkge1xuICAgICAgICAgICAgbGV0IHA7XG5cbiAgICAgICAgICAgIHdoaWxlIChpbmRleCA+IDAgJiYgc21hbGxlcih0aGlzLmhlYXBbaW5kZXhdLCB0aGlzLmhlYXBbcD1wYXJlbnQoaW5kZXgpXSkpIHtcbiAgICAgICAgICAgICAgICBsZXQgdCA9IHRoaXMuaGVhcFtpbmRleF07XG4gICAgICAgICAgICAgICAgdGhpcy5oZWFwW2luZGV4XSA9IHRoaXMuaGVhcFtwXTtcbiAgICAgICAgICAgICAgICB0aGlzLmhlYXBbcF0gPSB0O1xuXG4gICAgICAgICAgICAgICAgaW5kZXggPSBwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcGVyY0Rvd24oaW5kZXgpIHtcbiAgICAgICAgICAgIGxldCBsO1xuXG4gICAgICAgICAgICB3aGlsZSAoKGw9bGVmdENoaShpbmRleCkpIDwgdGhpcy5oZWFwLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmIChsKzEgPCB0aGlzLmhlYXAubGVuZ3RoICYmIHNtYWxsZXIodGhpcy5oZWFwW2wrMV0sIHRoaXMuaGVhcFtsXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgbCA9IGwrMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc21hbGxlcih0aGlzLmhlYXBbaW5kZXhdLCB0aGlzLmhlYXBbbF0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCB0ID0gdGhpcy5oZWFwW2luZGV4XTtcbiAgICAgICAgICAgICAgICB0aGlzLmhlYXBbaW5kZXhdID0gdGhpcy5oZWFwW2xdO1xuICAgICAgICAgICAgICAgIHRoaXMuaGVhcFtsXSA9IHQ7XG5cbiAgICAgICAgICAgICAgICBpbmRleCA9IGw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwdXNoKG5vZGUpIHtcbiAgICAgICAgICAgIG5vZGUucHVzaENvdW50ID0gKyt0aGlzLnB1c2hDb3VudDtcbiAgICAgICAgICAgIHRoaXMuaGVhcC5wdXNoKG5vZGUpO1xuICAgICAgICAgICAgdGhpcy5wZXJjVXAodGhpcy5oZWFwLmxlbmd0aC0xKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVuc2hpZnQobm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGVhcC5wdXNoKG5vZGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2hpZnQoKSB7XG4gICAgICAgICAgICBsZXQgW3RvcF0gPSB0aGlzLmhlYXA7XG5cbiAgICAgICAgICAgIHRoaXMuaGVhcFswXSA9IHRoaXMuaGVhcFt0aGlzLmhlYXAubGVuZ3RoLTFdO1xuICAgICAgICAgICAgdGhpcy5oZWFwLnBvcCgpO1xuICAgICAgICAgICAgdGhpcy5wZXJjRG93bigwKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRvcDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvQXJyYXkoKSB7XG4gICAgICAgICAgICByZXR1cm4gWy4uLnRoaXNdO1xuICAgICAgICB9XG5cbiAgICAgICAgKltTeW1ib2wuaXRlcmF0b3JdICgpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5oZWFwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgeWllbGQgdGhpcy5oZWFwW2ldLmRhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZW1vdmUgKHRlc3RGbikge1xuICAgICAgICAgICAgbGV0IGogPSAwO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmhlYXAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoIXRlc3RGbih0aGlzLmhlYXBbaV0pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGVhcFtqXSA9IHRoaXMuaGVhcFtpXTtcbiAgICAgICAgICAgICAgICAgICAgaisrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5oZWFwLnNwbGljZShqKTtcblxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IHBhcmVudCh0aGlzLmhlYXAubGVuZ3RoLTEpOyBpID49IDA7IGktLSkge1xuICAgICAgICAgICAgICAgIHRoaXMucGVyY0Rvd24oaSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gbGVmdENoaShpKSB7XG4gICAgICAgIHJldHVybiAoaTw8MSkrMTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJlbnQoaSkge1xuICAgICAgICByZXR1cm4gKChpKzEpPj4xKS0xO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHNtYWxsZXIoeCwgeSkge1xuICAgICAgICBpZiAoeC5wcmlvcml0eSAhPT0geS5wcmlvcml0eSkge1xuICAgICAgICAgICAgcmV0dXJuIHgucHJpb3JpdHkgPCB5LnByaW9yaXR5O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHgucHVzaENvdW50IDwgeS5wdXNoQ291bnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYXN5bmMucXVldWVde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5xdWV1ZX0gb25seSB0YXNrcyBhcmUgYXNzaWduZWQgYSBwcmlvcml0eSBhbmRcbiAgICAgKiBjb21wbGV0ZWQgaW4gYXNjZW5kaW5nIHByaW9yaXR5IG9yZGVyLlxuICAgICAqXG4gICAgICogQG5hbWUgcHJpb3JpdHlRdWV1ZVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnF1ZXVlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucXVldWV9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmMgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgYSBxdWV1ZWQgdGFzay5cbiAgICAgKiBJZiB5b3Ugd2FudCB0byBoYW5kbGUgZXJyb3JzIGZyb20gYW4gaW5kaXZpZHVhbCB0YXNrLCBwYXNzIGEgY2FsbGJhY2sgdG9cbiAgICAgKiBgcS5wdXNoKClgLlxuICAgICAqIEludm9rZWQgd2l0aCAodGFzaywgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBjb25jdXJyZW5jeSAtIEFuIGBpbnRlZ2VyYCBmb3IgZGV0ZXJtaW5pbmcgaG93IG1hbnkgYHdvcmtlcmBcbiAgICAgKiBmdW5jdGlvbnMgc2hvdWxkIGJlIHJ1biBpbiBwYXJhbGxlbC4gIElmIG9taXR0ZWQsIHRoZSBjb25jdXJyZW5jeSBkZWZhdWx0cyB0b1xuICAgICAqIGAxYC4gIElmIHRoZSBjb25jdXJyZW5jeSBpcyBgMGAsIGFuIGVycm9yIGlzIHRocm93bi5cbiAgICAgKiBAcmV0dXJucyB7bW9kdWxlOkNvbnRyb2xGbG93LlF1ZXVlT2JqZWN0fSBBIHByaW9yaXR5UXVldWUgb2JqZWN0IHRvIG1hbmFnZSB0aGUgdGFza3MuIFRoZXJlIGFyZSB0aHJlZVxuICAgICAqIGRpZmZlcmVuY2VzIGJldHdlZW4gYHF1ZXVlYCBhbmQgYHByaW9yaXR5UXVldWVgIG9iamVjdHM6XG4gICAgICogKiBgcHVzaCh0YXNrLCBwcmlvcml0eSwgW2NhbGxiYWNrXSlgIC0gYHByaW9yaXR5YCBzaG91bGQgYmUgYSBudW1iZXIuIElmIGFuXG4gICAgICogICBhcnJheSBvZiBgdGFza3NgIGlzIGdpdmVuLCBhbGwgdGFza3Mgd2lsbCBiZSBhc3NpZ25lZCB0aGUgc2FtZSBwcmlvcml0eS5cbiAgICAgKiAqIGBwdXNoQXN5bmModGFzaywgcHJpb3JpdHksIFtjYWxsYmFja10pYCAtIHRoZSBzYW1lIGFzIGBwcmlvcml0eVF1ZXVlLnB1c2hgLFxuICAgICAqICAgZXhjZXB0IHRoaXMgcmV0dXJucyBhIHByb21pc2UgdGhhdCByZWplY3RzIGlmIGFuIGVycm9yIG9jY3Vycy5cbiAgICAgKiAqIFRoZSBgdW5zaGlmdGAgYW5kIGB1bnNoaWZ0QXN5bmNgIG1ldGhvZHMgd2VyZSByZW1vdmVkLlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHByaW9yaXR5UXVldWUod29ya2VyLCBjb25jdXJyZW5jeSkge1xuICAgICAgICAvLyBTdGFydCB3aXRoIGEgbm9ybWFsIHF1ZXVlXG4gICAgICAgIHZhciBxID0gcXVldWUkMSh3b3JrZXIsIGNvbmN1cnJlbmN5KTtcblxuICAgICAgICB2YXIge1xuICAgICAgICAgICAgcHVzaCxcbiAgICAgICAgICAgIHB1c2hBc3luY1xuICAgICAgICB9ID0gcTtcblxuICAgICAgICBxLl90YXNrcyA9IG5ldyBIZWFwKCk7XG4gICAgICAgIHEuX2NyZWF0ZVRhc2tJdGVtID0gKHtkYXRhLCBwcmlvcml0eX0sIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgcHJpb3JpdHksXG4gICAgICAgICAgICAgICAgY2FsbGJhY2tcbiAgICAgICAgICAgIH07XG4gICAgICAgIH07XG5cbiAgICAgICAgZnVuY3Rpb24gY3JlYXRlRGF0YUl0ZW1zKHRhc2tzLCBwcmlvcml0eSkge1xuICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhc2tzKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7ZGF0YTogdGFza3MsIHByaW9yaXR5fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0YXNrcy5tYXAoZGF0YSA9PiB7IHJldHVybiB7ZGF0YSwgcHJpb3JpdHl9OyB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE92ZXJyaWRlIHB1c2ggdG8gYWNjZXB0IHNlY29uZCBwYXJhbWV0ZXIgcmVwcmVzZW50aW5nIHByaW9yaXR5XG4gICAgICAgIHEucHVzaCA9IGZ1bmN0aW9uKGRhdGEsIHByaW9yaXR5ID0gMCwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgIHJldHVybiBwdXNoKGNyZWF0ZURhdGFJdGVtcyhkYXRhLCBwcmlvcml0eSksIGNhbGxiYWNrKTtcbiAgICAgICAgfTtcblxuICAgICAgICBxLnB1c2hBc3luYyA9IGZ1bmN0aW9uKGRhdGEsIHByaW9yaXR5ID0gMCwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgIHJldHVybiBwdXNoQXN5bmMoY3JlYXRlRGF0YUl0ZW1zKGRhdGEsIHByaW9yaXR5KSwgY2FsbGJhY2spO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIFJlbW92ZSB1bnNoaWZ0IGZ1bmN0aW9uc1xuICAgICAgICBkZWxldGUgcS51bnNoaWZ0O1xuICAgICAgICBkZWxldGUgcS51bnNoaWZ0QXN5bmM7XG5cbiAgICAgICAgcmV0dXJuIHE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUnVucyB0aGUgYHRhc2tzYCBhcnJheSBvZiBmdW5jdGlvbnMgaW4gcGFyYWxsZWwsIHdpdGhvdXQgd2FpdGluZyB1bnRpbCB0aGVcbiAgICAgKiBwcmV2aW91cyBmdW5jdGlvbiBoYXMgY29tcGxldGVkLiBPbmNlIGFueSBvZiB0aGUgYHRhc2tzYCBjb21wbGV0ZSBvciBwYXNzIGFuXG4gICAgICogZXJyb3IgdG8gaXRzIGNhbGxiYWNrLCB0aGUgbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZC4gSXQnc1xuICAgICAqIGVxdWl2YWxlbnQgdG8gYFByb21pc2UucmFjZSgpYC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJhY2VcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheX0gdGFza3MgLSBBbiBhcnJheSBjb250YWluaW5nIFthc3luYyBmdW5jdGlvbnNde0BsaW5rIEFzeW5jRnVuY3Rpb259XG4gICAgICogdG8gcnVuLiBFYWNoIGZ1bmN0aW9uIGNhbiBjb21wbGV0ZSB3aXRoIGFuIG9wdGlvbmFsIGByZXN1bHRgIHZhbHVlLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrIC0gQSBjYWxsYmFjayB0byBydW4gb25jZSBhbnkgb2YgdGhlIGZ1bmN0aW9ucyBoYXZlXG4gICAgICogY29tcGxldGVkLiBUaGlzIGZ1bmN0aW9uIGdldHMgYW4gZXJyb3Igb3IgcmVzdWx0IGZyb20gdGhlIGZpcnN0IGZ1bmN0aW9uIHRoYXRcbiAgICAgKiBjb21wbGV0ZWQuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIGEgY2FsbGJhY2sgaXMgb21pdHRlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBhc3luYy5yYWNlKFtcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ29uZScpO1xuICAgICAqICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0sXG4gICAgICogLy8gbWFpbiBjYWxsYmFja1xuICAgICAqIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIC8vIHRoZSByZXN1bHQgd2lsbCBiZSBlcXVhbCB0byAndHdvJyBhcyBpdCBmaW5pc2hlcyBlYXJsaWVyXG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gcmFjZSh0YXNrcywgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhc2tzKSkgcmV0dXJuIGNhbGxiYWNrKG5ldyBUeXBlRXJyb3IoJ0ZpcnN0IGFyZ3VtZW50IHRvIHJhY2UgbXVzdCBiZSBhbiBhcnJheSBvZiBmdW5jdGlvbnMnKSk7XG4gICAgICAgIGlmICghdGFza3MubGVuZ3RoKSByZXR1cm4gY2FsbGJhY2soKTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSB0YXNrcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHdyYXBBc3luYyh0YXNrc1tpXSkoY2FsbGJhY2spO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdmFyIHJhY2UkMSA9IGF3YWl0aWZ5KHJhY2UsIDIpO1xuXG4gICAgLyoqXG4gICAgICogU2FtZSBhcyBbYHJlZHVjZWBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5yZWR1Y2V9LCBvbmx5IG9wZXJhdGVzIG9uIGBhcnJheWAgaW4gcmV2ZXJzZSBvcmRlci5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJlZHVjZVJpZ2h0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMucmVkdWNlXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMucmVkdWNlfVxuICAgICAqIEBhbGlhcyBmb2xkclxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheX0gYXJyYXkgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7Kn0gbWVtbyAtIFRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSByZWR1Y3Rpb24uXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gYXBwbGllZCB0byBlYWNoIGl0ZW0gaW4gdGhlXG4gICAgICogYXJyYXkgdG8gcHJvZHVjZSB0aGUgbmV4dCBzdGVwIGluIHRoZSByZWR1Y3Rpb24uXG4gICAgICogVGhlIGBpdGVyYXRlZWAgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIG5leHQgc3RhdGUgb2YgdGhlIHJlZHVjdGlvbi5cbiAgICAgKiBJZiB0aGUgaXRlcmF0ZWUgY29tcGxldGVzIHdpdGggYW4gZXJyb3IsIHRoZSByZWR1Y3Rpb24gaXMgc3RvcHBlZCBhbmQgdGhlXG4gICAgICogbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZSBlcnJvci5cbiAgICAgKiBJbnZva2VkIHdpdGggKG1lbW8sIGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCBpcyB0aGUgcmVkdWNlZCB2YWx1ZS4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiByZWR1Y2VSaWdodCAoYXJyYXksIG1lbW8sIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgcmV2ZXJzZWQgPSBbLi4uYXJyYXldLnJldmVyc2UoKTtcbiAgICAgICAgcmV0dXJuIHJlZHVjZSQxKHJldmVyc2VkLCBtZW1vLCBpdGVyYXRlZSwgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdyYXBzIHRoZSBhc3luYyBmdW5jdGlvbiBpbiBhbm90aGVyIGZ1bmN0aW9uIHRoYXQgYWx3YXlzIGNvbXBsZXRlcyB3aXRoIGFcbiAgICAgKiByZXN1bHQgb2JqZWN0LCBldmVuIHdoZW4gaXQgZXJyb3JzLlxuICAgICAqXG4gICAgICogVGhlIHJlc3VsdCBvYmplY3QgaGFzIGVpdGhlciB0aGUgcHJvcGVydHkgYGVycm9yYCBvciBgdmFsdWVgLlxuICAgICAqXG4gICAgICogQG5hbWUgcmVmbGVjdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOlV0aWxzXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBVdGlsXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBmbiAtIFRoZSBhc3luYyBmdW5jdGlvbiB5b3Ugd2FudCB0byB3cmFwXG4gICAgICogQHJldHVybnMge0Z1bmN0aW9ufSAtIEEgZnVuY3Rpb24gdGhhdCBhbHdheXMgcGFzc2VzIG51bGwgdG8gaXQncyBjYWxsYmFjayBhc1xuICAgICAqIHRoZSBlcnJvci4gVGhlIHNlY29uZCBhcmd1bWVudCB0byB0aGUgY2FsbGJhY2sgd2lsbCBiZSBhbiBgb2JqZWN0YCB3aXRoXG4gICAgICogZWl0aGVyIGFuIGBlcnJvcmAgb3IgYSBgdmFsdWVgIHByb3BlcnR5LlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBhc3luYy5wYXJhbGxlbChbXG4gICAgICogICAgIGFzeW5jLnJlZmxlY3QoZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIGRvIHNvbWUgc3R1ZmYgLi4uXG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJyk7XG4gICAgICogICAgIH0pLFxuICAgICAqICAgICBhc3luYy5yZWZsZWN0KGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBkbyBzb21lIG1vcmUgc3R1ZmYgYnV0IGVycm9yIC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2soJ2JhZCBzdHVmZiBoYXBwZW5lZCcpO1xuICAgICAqICAgICB9KSxcbiAgICAgKiAgICAgYXN5bmMucmVmbGVjdChmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gZG8gc29tZSBtb3JlIHN0dWZmIC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICB9KVxuICAgICAqIF0sXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgLy8gdmFsdWVzXG4gICAgICogICAgIC8vIHJlc3VsdHNbMF0udmFsdWUgPSAnb25lJ1xuICAgICAqICAgICAvLyByZXN1bHRzWzFdLmVycm9yID0gJ2JhZCBzdHVmZiBoYXBwZW5lZCdcbiAgICAgKiAgICAgLy8gcmVzdWx0c1syXS52YWx1ZSA9ICd0d28nXG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gcmVmbGVjdChmbikge1xuICAgICAgICB2YXIgX2ZuID0gd3JhcEFzeW5jKGZuKTtcbiAgICAgICAgcmV0dXJuIGluaXRpYWxQYXJhbXMoZnVuY3Rpb24gcmVmbGVjdE9uKGFyZ3MsIHJlZmxlY3RDYWxsYmFjaykge1xuICAgICAgICAgICAgYXJncy5wdXNoKChlcnJvciwgLi4uY2JBcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHJldFZhbCA9IHt9O1xuICAgICAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICByZXRWYWwuZXJyb3IgPSBlcnJvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNiQXJncy5sZW5ndGggPiAwKXtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHZhbHVlID0gY2JBcmdzO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2JBcmdzLmxlbmd0aCA8PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdID0gY2JBcmdzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldFZhbC52YWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZWZsZWN0Q2FsbGJhY2sobnVsbCwgcmV0VmFsKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICByZXR1cm4gX2ZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIGhlbHBlciBmdW5jdGlvbiB0aGF0IHdyYXBzIGFuIGFycmF5IG9yIGFuIG9iamVjdCBvZiBmdW5jdGlvbnMgd2l0aCBgcmVmbGVjdGAuXG4gICAgICpcbiAgICAgKiBAbmFtZSByZWZsZWN0QWxsXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMucmVmbGVjdF17QGxpbmsgbW9kdWxlOlV0aWxzLnJlZmxlY3R9XG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0FycmF5fE9iamVjdHxJdGVyYWJsZX0gdGFza3MgLSBUaGUgY29sbGVjdGlvbiBvZlxuICAgICAqIFthc3luYyBmdW5jdGlvbnNde0BsaW5rIEFzeW5jRnVuY3Rpb259IHRvIHdyYXAgaW4gYGFzeW5jLnJlZmxlY3RgLlxuICAgICAqIEByZXR1cm5zIHtBcnJheX0gUmV0dXJucyBhbiBhcnJheSBvZiBhc3luYyBmdW5jdGlvbnMsIGVhY2ggd3JhcHBlZCBpblxuICAgICAqIGBhc3luYy5yZWZsZWN0YFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBsZXQgdGFza3MgPSBbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBkbyBzb21lIG1vcmUgc3R1ZmYgYnV0IGVycm9yIC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobmV3IEVycm9yKCdiYWQgc3R1ZmYgaGFwcGVuZWQnKSk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICd0d28nKTtcbiAgICAgKiAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgIH1cbiAgICAgKiBdO1xuICAgICAqXG4gICAgICogYXN5bmMucGFyYWxsZWwoYXN5bmMucmVmbGVjdEFsbCh0YXNrcyksXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgLy8gdmFsdWVzXG4gICAgICogICAgIC8vIHJlc3VsdHNbMF0udmFsdWUgPSAnb25lJ1xuICAgICAqICAgICAvLyByZXN1bHRzWzFdLmVycm9yID0gRXJyb3IoJ2JhZCBzdHVmZiBoYXBwZW5lZCcpXG4gICAgICogICAgIC8vIHJlc3VsdHNbMl0udmFsdWUgPSAndHdvJ1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGxldCB0YXNrcyA9IHtcbiAgICAgKiAgICAgb25lOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJyk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICB0d286IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjaygndHdvJyk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIHRocmVlOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAndGhyZWUnKTtcbiAgICAgKiAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgIH1cbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogYXN5bmMucGFyYWxsZWwoYXN5bmMucmVmbGVjdEFsbCh0YXNrcyksXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgLy8gdmFsdWVzXG4gICAgICogICAgIC8vIHJlc3VsdHMub25lLnZhbHVlID0gJ29uZSdcbiAgICAgKiAgICAgLy8gcmVzdWx0cy50d28uZXJyb3IgPSAndHdvJ1xuICAgICAqICAgICAvLyByZXN1bHRzLnRocmVlLnZhbHVlID0gJ3RocmVlJ1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlZmxlY3RBbGwodGFza3MpIHtcbiAgICAgICAgdmFyIHJlc3VsdHM7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhc2tzKSkge1xuICAgICAgICAgICAgcmVzdWx0cyA9IHRhc2tzLm1hcChyZWZsZWN0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdHMgPSB7fTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHRhc2tzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgcmVzdWx0c1trZXldID0gcmVmbGVjdC5jYWxsKHRoaXMsIHRhc2tzW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcmVqZWN0KGVhY2hmbiwgYXJyLCBfaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNvbnN0IGl0ZXJhdGVlID0gd3JhcEFzeW5jKF9pdGVyYXRlZSk7XG4gICAgICAgIHJldHVybiBfZmlsdGVyKGVhY2hmbiwgYXJyLCAodmFsdWUsIGNiKSA9PiB7XG4gICAgICAgICAgICBpdGVyYXRlZSh2YWx1ZSwgKGVyciwgdikgPT4ge1xuICAgICAgICAgICAgICAgIGNiKGVyciwgIXYpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgb3Bwb3NpdGUgb2YgW2BmaWx0ZXJgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZmlsdGVyfS4gUmVtb3ZlcyB2YWx1ZXMgdGhhdCBwYXNzIGFuIGBhc3luY2AgdHJ1dGggdGVzdC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJlamVjdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmZpbHRlcl17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmZpbHRlcn1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiB2YWx1ZSBhcyBpdHMgYHJlc3VsdGAuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVMaXN0ID0gWydkaXIxL2ZpbGUxLnR4dCcsJ2RpcjIvZmlsZTMudHh0JywnZGlyMy9maWxlNi50eHQnXTtcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IGNoZWNrcyBpZiBhIGZpbGUgZXhpc3RzXG4gICAgICogZnVuY3Rpb24gZmlsZUV4aXN0cyhmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgIGZzLmFjY2VzcyhmaWxlLCBmcy5jb25zdGFudHMuRl9PSywgKGVycikgPT4ge1xuICAgICAqICAgICAgICBjYWxsYmFjayhudWxsLCAhZXJyKTtcbiAgICAgKiAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5yZWplY3QoZmlsZUxpc3QsIGZpbGVFeGlzdHMsIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgIC8vIFsgJ2RpcjMvZmlsZTYudHh0JyBdXG4gICAgICogICAgLy8gcmVzdWx0cyBub3cgZXF1YWxzIGFuIGFycmF5IG9mIHRoZSBub24tZXhpc3RpbmcgZmlsZXNcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMucmVqZWN0KGZpbGVMaXN0LCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIFsgJ2RpcjMvZmlsZTYudHh0JyBdXG4gICAgICogICAgIC8vIHJlc3VsdHMgbm93IGVxdWFscyBhbiBhcnJheSBvZiB0aGUgbm9uLWV4aXN0aW5nIGZpbGVzXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMucmVqZWN0KGZpbGVMaXN0LCBmaWxlRXhpc3RzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgLy8gWyAnZGlyMy9maWxlNi50eHQnIF1cbiAgICAgKiAgICAgICAgIC8vIHJlc3VsdHMgbm93IGVxdWFscyBhbiBhcnJheSBvZiB0aGUgbm9uLWV4aXN0aW5nIGZpbGVzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlamVjdCQxIChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlYWNoT2YkMSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgcmVqZWN0JDIgPSBhd2FpdGlmeShyZWplY3QkMSwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHJlamVjdGBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5yZWplY3R9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSByZWplY3RMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnJlamVjdF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLnJlamVjdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluXG4gICAgICogYGNvbGxgLlxuICAgICAqIFRoZSBzaG91bGQgY29tcGxldGUgd2l0aCBhIGJvb2xlYW4gdmFsdWUgYXMgaXRzIGByZXN1bHRgLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlamVjdExpbWl0IChjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZWFjaE9mTGltaXQobGltaXQpLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciByZWplY3RMaW1pdCQxID0gYXdhaXRpZnkocmVqZWN0TGltaXQsIDQpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2ByZWplY3RgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMucmVqZWN0fSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSByZWplY3RTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5yZWplY3Rde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5yZWplY3R9XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluXG4gICAgICogYGNvbGxgLlxuICAgICAqIFRoZSBzaG91bGQgY29tcGxldGUgd2l0aCBhIGJvb2xlYW4gdmFsdWUgYXMgaXRzIGByZXN1bHRgLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlamVjdFNlcmllcyAoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIHJlamVjdFNlcmllcyQxID0gYXdhaXRpZnkocmVqZWN0U2VyaWVzLCAzKTtcblxuICAgIGZ1bmN0aW9uIGNvbnN0YW50JDEodmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEF0dGVtcHRzIHRvIGdldCBhIHN1Y2Nlc3NmdWwgcmVzcG9uc2UgZnJvbSBgdGFza2Agbm8gbW9yZSB0aGFuIGB0aW1lc2AgdGltZXNcbiAgICAgKiBiZWZvcmUgcmV0dXJuaW5nIGFuIGVycm9yLiBJZiB0aGUgdGFzayBpcyBzdWNjZXNzZnVsLCB0aGUgYGNhbGxiYWNrYCB3aWxsIGJlXG4gICAgICogcGFzc2VkIHRoZSByZXN1bHQgb2YgdGhlIHN1Y2Nlc3NmdWwgdGFzay4gSWYgYWxsIGF0dGVtcHRzIGZhaWwsIHRoZSBjYWxsYmFja1xuICAgICAqIHdpbGwgYmUgcGFzc2VkIHRoZSBlcnJvciBhbmQgcmVzdWx0IChpZiBhbnkpIG9mIHRoZSBmaW5hbCBhdHRlbXB0LlxuICAgICAqXG4gICAgICogQG5hbWUgcmV0cnlcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHNlZSBbYXN5bmMucmV0cnlhYmxlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucmV0cnlhYmxlfVxuICAgICAqIEBwYXJhbSB7T2JqZWN0fG51bWJlcn0gW29wdHMgPSB7dGltZXM6IDUsIGludGVydmFsOiAwfXwgNV0gLSBDYW4gYmUgZWl0aGVyIGFuXG4gICAgICogb2JqZWN0IHdpdGggYHRpbWVzYCBhbmQgYGludGVydmFsYCBvciBhIG51bWJlci5cbiAgICAgKiAqIGB0aW1lc2AgLSBUaGUgbnVtYmVyIG9mIGF0dGVtcHRzIHRvIG1ha2UgYmVmb3JlIGdpdmluZyB1cC4gIFRoZSBkZWZhdWx0XG4gICAgICogICBpcyBgNWAuXG4gICAgICogKiBgaW50ZXJ2YWxgIC0gVGhlIHRpbWUgdG8gd2FpdCBiZXR3ZWVuIHJldHJpZXMsIGluIG1pbGxpc2Vjb25kcy4gIFRoZVxuICAgICAqICAgZGVmYXVsdCBpcyBgMGAuIFRoZSBpbnRlcnZhbCBtYXkgYWxzbyBiZSBzcGVjaWZpZWQgYXMgYSBmdW5jdGlvbiBvZiB0aGVcbiAgICAgKiAgIHJldHJ5IGNvdW50IChzZWUgZXhhbXBsZSkuXG4gICAgICogKiBgZXJyb3JGaWx0ZXJgIC0gQW4gb3B0aW9uYWwgc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBpcyBpbnZva2VkIG9uXG4gICAgICogICBlcnJvbmVvdXMgcmVzdWx0LiBJZiBpdCByZXR1cm5zIGB0cnVlYCB0aGUgcmV0cnkgYXR0ZW1wdHMgd2lsbCBjb250aW51ZTtcbiAgICAgKiAgIGlmIHRoZSBmdW5jdGlvbiByZXR1cm5zIGBmYWxzZWAgdGhlIHJldHJ5IGZsb3cgaXMgYWJvcnRlZCB3aXRoIHRoZSBjdXJyZW50XG4gICAgICogICBhdHRlbXB0J3MgZXJyb3IgYW5kIHJlc3VsdCBiZWluZyByZXR1cm5lZCB0byB0aGUgZmluYWwgY2FsbGJhY2suXG4gICAgICogICBJbnZva2VkIHdpdGggKGVycikuXG4gICAgICogKiBJZiBgb3B0c2AgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgc3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgdGltZXMgdG8gcmV0cnksXG4gICAgICogICB3aXRoIHRoZSBkZWZhdWx0IGludGVydmFsIG9mIGAwYC5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IHRhc2sgLSBBbiBhc3luYyBmdW5jdGlvbiB0byByZXRyeS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gdGhlXG4gICAgICogdGFzayBoYXMgc3VjY2VlZGVkLCBvciBhZnRlciB0aGUgZmluYWwgZmFpbGVkIGF0dGVtcHQuIEl0IHJlY2VpdmVzIHRoZSBgZXJyYFxuICAgICAqIGFuZCBgcmVzdWx0YCBhcmd1bWVudHMgb2YgdGhlIGxhc3QgYXR0ZW1wdCBhdCBjb21wbGV0aW5nIHRoZSBgdGFza2AuIEludm9rZWRcbiAgICAgKiB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBUaGUgYHJldHJ5YCBmdW5jdGlvbiBjYW4gYmUgdXNlZCBhcyBhIHN0YW5kLWFsb25lIGNvbnRyb2wgZmxvdyBieSBwYXNzaW5nXG4gICAgICogLy8gYSBjYWxsYmFjaywgYXMgc2hvd24gYmVsb3c6XG4gICAgICpcbiAgICAgKiAvLyB0cnkgY2FsbGluZyBhcGlNZXRob2QgMyB0aW1lc1xuICAgICAqIGFzeW5jLnJldHJ5KDMsIGFwaU1ldGhvZCwgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gZG8gc29tZXRoaW5nIHdpdGggdGhlIHJlc3VsdFxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gdHJ5IGNhbGxpbmcgYXBpTWV0aG9kIDMgdGltZXMsIHdhaXRpbmcgMjAwIG1zIGJldHdlZW4gZWFjaCByZXRyeVxuICAgICAqIGFzeW5jLnJldHJ5KHt0aW1lczogMywgaW50ZXJ2YWw6IDIwMH0sIGFwaU1ldGhvZCwgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gZG8gc29tZXRoaW5nIHdpdGggdGhlIHJlc3VsdFxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gdHJ5IGNhbGxpbmcgYXBpTWV0aG9kIDEwIHRpbWVzIHdpdGggZXhwb25lbnRpYWwgYmFja29mZlxuICAgICAqIC8vIChpLmUuIGludGVydmFscyBvZiAxMDAsIDIwMCwgNDAwLCA4MDAsIDE2MDAsIC4uLiBtaWxsaXNlY29uZHMpXG4gICAgICogYXN5bmMucmV0cnkoe1xuICAgICAqICAgdGltZXM6IDEwLFxuICAgICAqICAgaW50ZXJ2YWw6IGZ1bmN0aW9uKHJldHJ5Q291bnQpIHtcbiAgICAgKiAgICAgcmV0dXJuIDUwICogTWF0aC5wb3coMiwgcmV0cnlDb3VudCk7XG4gICAgICogICB9XG4gICAgICogfSwgYXBpTWV0aG9kLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICAvLyBkbyBzb21ldGhpbmcgd2l0aCB0aGUgcmVzdWx0XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyB0cnkgY2FsbGluZyBhcGlNZXRob2QgdGhlIGRlZmF1bHQgNSB0aW1lcyBubyBkZWxheSBiZXR3ZWVuIGVhY2ggcmV0cnlcbiAgICAgKiBhc3luYy5yZXRyeShhcGlNZXRob2QsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIC8vIGRvIHNvbWV0aGluZyB3aXRoIHRoZSByZXN1bHRcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIHRyeSBjYWxsaW5nIGFwaU1ldGhvZCBvbmx5IHdoZW4gZXJyb3IgY29uZGl0aW9uIHNhdGlzZmllcywgYWxsIG90aGVyXG4gICAgICogLy8gZXJyb3JzIHdpbGwgYWJvcnQgdGhlIHJldHJ5IGNvbnRyb2wgZmxvdyBhbmQgcmV0dXJuIHRvIGZpbmFsIGNhbGxiYWNrXG4gICAgICogYXN5bmMucmV0cnkoe1xuICAgICAqICAgZXJyb3JGaWx0ZXI6IGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICByZXR1cm4gZXJyLm1lc3NhZ2UgPT09ICdUZW1wb3JhcnkgZXJyb3InOyAvLyBvbmx5IHJldHJ5IG9uIGEgc3BlY2lmaWMgZXJyb3JcbiAgICAgKiAgIH1cbiAgICAgKiB9LCBhcGlNZXRob2QsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIC8vIGRvIHNvbWV0aGluZyB3aXRoIHRoZSByZXN1bHRcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIHRvIHJldHJ5IGluZGl2aWR1YWwgbWV0aG9kcyB0aGF0IGFyZSBub3QgYXMgcmVsaWFibGUgd2l0aGluIG90aGVyXG4gICAgICogLy8gY29udHJvbCBmbG93IGZ1bmN0aW9ucywgdXNlIHRoZSBgcmV0cnlhYmxlYCB3cmFwcGVyOlxuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICB1c2VyczogYXBpLmdldFVzZXJzLmJpbmQoYXBpKSxcbiAgICAgKiAgICAgcGF5bWVudHM6IGFzeW5jLnJldHJ5YWJsZSgzLCBhcGkuZ2V0UGF5bWVudHMuYmluZChhcGkpKVxuICAgICAqIH0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICAvLyBkbyBzb21ldGhpbmcgd2l0aCB0aGUgcmVzdWx0c1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICovXG4gICAgY29uc3QgREVGQVVMVF9USU1FUyA9IDU7XG4gICAgY29uc3QgREVGQVVMVF9JTlRFUlZBTCA9IDA7XG5cbiAgICBmdW5jdGlvbiByZXRyeShvcHRzLCB0YXNrLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgIHRpbWVzOiBERUZBVUxUX1RJTUVTLFxuICAgICAgICAgICAgaW50ZXJ2YWxGdW5jOiBjb25zdGFudCQxKERFRkFVTFRfSU5URVJWQUwpXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPCAzICYmIHR5cGVvZiBvcHRzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWxsYmFjayA9IHRhc2sgfHwgcHJvbWlzZUNhbGxiYWNrKCk7XG4gICAgICAgICAgICB0YXNrID0gb3B0cztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlVGltZXMob3B0aW9ucywgb3B0cyk7XG4gICAgICAgICAgICBjYWxsYmFjayA9IGNhbGxiYWNrIHx8IHByb21pc2VDYWxsYmFjaygpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiB0YXNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIGFyZ3VtZW50cyBmb3IgYXN5bmMucmV0cnlcIik7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgX3Rhc2sgPSB3cmFwQXN5bmModGFzayk7XG5cbiAgICAgICAgdmFyIGF0dGVtcHQgPSAxO1xuICAgICAgICBmdW5jdGlvbiByZXRyeUF0dGVtcHQoKSB7XG4gICAgICAgICAgICBfdGFzaygoZXJyLCAuLi5hcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVyblxuICAgICAgICAgICAgICAgIGlmIChlcnIgJiYgYXR0ZW1wdCsrIDwgb3B0aW9ucy50aW1lcyAmJlxuICAgICAgICAgICAgICAgICAgICAodHlwZW9mIG9wdGlvbnMuZXJyb3JGaWx0ZXIgIT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lcnJvckZpbHRlcihlcnIpKSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHJldHJ5QXR0ZW1wdCwgb3B0aW9ucy5pbnRlcnZhbEZ1bmMoYXR0ZW1wdCAtIDEpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhlcnIsIC4uLmFyZ3MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0cnlBdHRlbXB0KCk7XG4gICAgICAgIHJldHVybiBjYWxsYmFja1tQUk9NSVNFX1NZTUJPTF1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJzZVRpbWVzKGFjYywgdCkge1xuICAgICAgICBpZiAodHlwZW9mIHQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBhY2MudGltZXMgPSArdC50aW1lcyB8fCBERUZBVUxUX1RJTUVTO1xuXG4gICAgICAgICAgICBhY2MuaW50ZXJ2YWxGdW5jID0gdHlwZW9mIHQuaW50ZXJ2YWwgPT09ICdmdW5jdGlvbicgP1xuICAgICAgICAgICAgICAgIHQuaW50ZXJ2YWwgOlxuICAgICAgICAgICAgICAgIGNvbnN0YW50JDEoK3QuaW50ZXJ2YWwgfHwgREVGQVVMVF9JTlRFUlZBTCk7XG5cbiAgICAgICAgICAgIGFjYy5lcnJvckZpbHRlciA9IHQuZXJyb3JGaWx0ZXI7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHQgPT09ICdudW1iZXInIHx8IHR5cGVvZiB0ID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgYWNjLnRpbWVzID0gK3QgfHwgREVGQVVMVF9USU1FUztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgYXJndW1lbnRzIGZvciBhc3luYy5yZXRyeVwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEEgY2xvc2UgcmVsYXRpdmUgb2YgW2ByZXRyeWBde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5yZXRyeX0uICBUaGlzIG1ldGhvZFxuICAgICAqIHdyYXBzIGEgdGFzayBhbmQgbWFrZXMgaXQgcmV0cnlhYmxlLCByYXRoZXIgdGhhbiBpbW1lZGlhdGVseSBjYWxsaW5nIGl0XG4gICAgICogd2l0aCByZXRyaWVzLlxuICAgICAqXG4gICAgICogQG5hbWUgcmV0cnlhYmxlXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMucmV0cnlde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5yZXRyeX1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtPYmplY3R8bnVtYmVyfSBbb3B0cyA9IHt0aW1lczogNSwgaW50ZXJ2YWw6IDB9fCA1XSAtIG9wdGlvbmFsXG4gICAgICogb3B0aW9ucywgZXhhY3RseSB0aGUgc2FtZSBhcyBmcm9tIGByZXRyeWAsIGV4Y2VwdCBmb3IgYSBgb3B0cy5hcml0eWAgdGhhdFxuICAgICAqIGlzIHRoZSBhcml0eSBvZiB0aGUgYHRhc2tgIGZ1bmN0aW9uLCBkZWZhdWx0aW5nIHRvIGB0YXNrLmxlbmd0aGBcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IHRhc2sgLSB0aGUgYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRvIHdyYXAuXG4gICAgICogVGhpcyBmdW5jdGlvbiB3aWxsIGJlIHBhc3NlZCBhbnkgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgcmV0dXJuZWQgd3JhcHBlci5cbiAgICAgKiBJbnZva2VkIHdpdGggKC4uLmFyZ3MsIGNhbGxiYWNrKS5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gVGhlIHdyYXBwZWQgZnVuY3Rpb24sIHdoaWNoIHdoZW4gaW52b2tlZCwgd2lsbFxuICAgICAqIHJldHJ5IG9uIGFuIGVycm9yLCBiYXNlZCBvbiB0aGUgcGFyYW1ldGVycyBzcGVjaWZpZWQgaW4gYG9wdHNgLlxuICAgICAqIFRoaXMgZnVuY3Rpb24gd2lsbCBhY2NlcHQgdGhlIHNhbWUgcGFyYW1ldGVycyBhcyBgdGFza2AuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICBkZXAxOiBhc3luYy5yZXRyeWFibGUoMywgZ2V0RnJvbUZsYWt5U2VydmljZSksXG4gICAgICogICAgIHByb2Nlc3M6IFtcImRlcDFcIiwgYXN5bmMucmV0cnlhYmxlKDMsIGZ1bmN0aW9uIChyZXN1bHRzLCBjYikge1xuICAgICAqICAgICAgICAgbWF5YmVQcm9jZXNzRGF0YShyZXN1bHRzLmRlcDEsIGNiKTtcbiAgICAgKiAgICAgfSldXG4gICAgICogfSwgY2FsbGJhY2spO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJldHJ5YWJsZSAob3B0cywgdGFzaykge1xuICAgICAgICBpZiAoIXRhc2spIHtcbiAgICAgICAgICAgIHRhc2sgPSBvcHRzO1xuICAgICAgICAgICAgb3B0cyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGFyaXR5ID0gKG9wdHMgJiYgb3B0cy5hcml0eSkgfHwgdGFzay5sZW5ndGg7XG4gICAgICAgIGlmIChpc0FzeW5jKHRhc2spKSB7XG4gICAgICAgICAgICBhcml0eSArPSAxO1xuICAgICAgICB9XG4gICAgICAgIHZhciBfdGFzayA9IHdyYXBBc3luYyh0YXNrKTtcbiAgICAgICAgcmV0dXJuIGluaXRpYWxQYXJhbXMoKGFyZ3MsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgICAgICBpZiAoYXJncy5sZW5ndGggPCBhcml0eSAtIDEgfHwgY2FsbGJhY2sgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGFyZ3MucHVzaChjYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2sgPSBwcm9taXNlQ2FsbGJhY2soKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZ1bmN0aW9uIHRhc2tGbihjYikge1xuICAgICAgICAgICAgICAgIF90YXNrKC4uLmFyZ3MsIGNiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdHMpIHJldHJ5KG9wdHMsIHRhc2tGbiwgY2FsbGJhY2spO1xuICAgICAgICAgICAgZWxzZSByZXRyeSh0YXNrRm4sIGNhbGxiYWNrKTtcblxuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrW1BST01JU0VfU1lNQk9MXVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSdW4gdGhlIGZ1bmN0aW9ucyBpbiB0aGUgYHRhc2tzYCBjb2xsZWN0aW9uIGluIHNlcmllcywgZWFjaCBvbmUgcnVubmluZyBvbmNlXG4gICAgICogdGhlIHByZXZpb3VzIGZ1bmN0aW9uIGhhcyBjb21wbGV0ZWQuIElmIGFueSBmdW5jdGlvbnMgaW4gdGhlIHNlcmllcyBwYXNzIGFuXG4gICAgICogZXJyb3IgdG8gaXRzIGNhbGxiYWNrLCBubyBtb3JlIGZ1bmN0aW9ucyBhcmUgcnVuLCBhbmQgYGNhbGxiYWNrYCBpc1xuICAgICAqIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZSB2YWx1ZSBvZiB0aGUgZXJyb3IuIE90aGVyd2lzZSwgYGNhbGxiYWNrYFxuICAgICAqIHJlY2VpdmVzIGFuIGFycmF5IG9mIHJlc3VsdHMgd2hlbiBgdGFza3NgIGhhdmUgY29tcGxldGVkLlxuICAgICAqXG4gICAgICogSXQgaXMgYWxzbyBwb3NzaWJsZSB0byB1c2UgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXkuIEVhY2ggcHJvcGVydHkgd2lsbFxuICAgICAqIGJlIHJ1biBhcyBhIGZ1bmN0aW9uLCBhbmQgdGhlIHJlc3VsdHMgd2lsbCBiZSBwYXNzZWQgdG8gdGhlIGZpbmFsIGBjYWxsYmFja2BcbiAgICAgKiBhcyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheS4gVGhpcyBjYW4gYmUgYSBtb3JlIHJlYWRhYmxlIHdheSBvZiBoYW5kbGluZ1xuICAgICAqICByZXN1bHRzIGZyb20ge0BsaW5rIGFzeW5jLnNlcmllc30uXG4gICAgICpcbiAgICAgKiAqKk5vdGUqKiB0aGF0IHdoaWxlIG1hbnkgaW1wbGVtZW50YXRpb25zIHByZXNlcnZlIHRoZSBvcmRlciBvZiBvYmplY3RcbiAgICAgKiBwcm9wZXJ0aWVzLCB0aGUgW0VDTUFTY3JpcHQgTGFuZ3VhZ2UgU3BlY2lmaWNhdGlvbl0oaHR0cDovL3d3dy5lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzUuMS8jc2VjLTguNilcbiAgICAgKiBleHBsaWNpdGx5IHN0YXRlcyB0aGF0XG4gICAgICpcbiAgICAgKiA+IFRoZSBtZWNoYW5pY3MgYW5kIG9yZGVyIG9mIGVudW1lcmF0aW5nIHRoZSBwcm9wZXJ0aWVzIGlzIG5vdCBzcGVjaWZpZWQuXG4gICAgICpcbiAgICAgKiBTbyBpZiB5b3UgcmVseSBvbiB0aGUgb3JkZXIgaW4gd2hpY2ggeW91ciBzZXJpZXMgb2YgZnVuY3Rpb25zIGFyZSBleGVjdXRlZCxcbiAgICAgKiBhbmQgd2FudCB0aGlzIHRvIHdvcmsgb24gYWxsIHBsYXRmb3JtcywgY29uc2lkZXIgdXNpbmcgYW4gYXJyYXkuXG4gICAgICpcbiAgICAgKiBAbmFtZSBzZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gdGFza3MgLSBBIGNvbGxlY3Rpb24gY29udGFpbmluZ1xuICAgICAqIFthc3luYyBmdW5jdGlvbnNde0BsaW5rIEFzeW5jRnVuY3Rpb259IHRvIHJ1biBpbiBzZXJpZXMuXG4gICAgICogRWFjaCBmdW5jdGlvbiBjYW4gY29tcGxldGUgd2l0aCBhbnkgbnVtYmVyIG9mIG9wdGlvbmFsIGByZXN1bHRgIHZhbHVlcy5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgdG8gcnVuIG9uY2UgYWxsIHRoZVxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGNvbXBsZXRlZC4gVGhpcyBmdW5jdGlvbiBnZXRzIGEgcmVzdWx0cyBhcnJheSAob3Igb2JqZWN0KVxuICAgICAqIGNvbnRhaW5pbmcgYWxsIHRoZSByZXN1bHQgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgYHRhc2tgIGNhbGxiYWNrcy4gSW52b2tlZFxuICAgICAqIHdpdGggKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJuIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvL1VzaW5nIENhbGxiYWNrc1xuICAgICAqIGFzeW5jLnNlcmllcyhbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIGRvIHNvbWUgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIHRoZW4gZG8gYW5vdGhlciBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0byBbJ29uZScsJ3R3byddXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBhbiBleGFtcGxlIHVzaW5nIG9iamVjdHMgaW5zdGVhZCBvZiBhcnJheXNcbiAgICAgKiBhc3luYy5zZXJpZXMoe1xuICAgICAqICAgICBvbmU6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIGRvIHNvbWUgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIDEpO1xuICAgICAqICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgdHdvOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAvLyB0aGVuIGRvIGFub3RoZXIgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIDIpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0bzogeyBvbmU6IDEsIHR3bzogMiB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuc2VyaWVzKFtcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ29uZScpO1xuICAgICAqICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0pLnRoZW4ocmVzdWx0cyA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAvLyByZXN1bHRzIGlzIGVxdWFsIHRvIFsnb25lJywndHdvJ11cbiAgICAgKiB9KS5jYXRjaChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGFzeW5jLnNlcmllcyh7XG4gICAgICogICAgIG9uZTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgLy8gZG8gc29tZSBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMSk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICB0d286IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIHRoZW4gZG8gYW5vdGhlciBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMik7XG4gICAgICogICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICB9XG4gICAgICogfSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG86IHsgb25lOiAxLCB0d286IDIgfVxuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5zZXJpZXMoW1xuICAgICAqICAgICAgICAgICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICAvLyBkbyBzb21lIGFzeW5jIHRhc2tcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgICAgICAgICB9LFxuICAgICAqICAgICAgICAgICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICAvLyB0aGVuIGRvIGFub3RoZXIgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIF0pO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIGVxdWFsIHRvIFsnb25lJywndHdvJ11cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMucGFyYWxsZWwoe1xuICAgICAqICAgICAgICAgICAgIG9uZTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIC8vIGRvIHNvbWUgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMSk7XG4gICAgICogICAgICAgICAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgICAgICAgICAgfSxcbiAgICAgKiAgICAgICAgICAgIHR3bzogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIC8vIHRoZW4gZG8gYW5vdGhlciBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAyKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIH0pO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIGVxdWFsIHRvOiB7IG9uZTogMSwgdHdvOiAyIH1cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gc2VyaWVzKHRhc2tzLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gcGFyYWxsZWwoZWFjaE9mU2VyaWVzJDEsIHRhc2tzLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBgdHJ1ZWAgaWYgYXQgbGVhc3Qgb25lIGVsZW1lbnQgaW4gdGhlIGBjb2xsYCBzYXRpc2ZpZXMgYW4gYXN5bmMgdGVzdC5cbiAgICAgKiBJZiBhbnkgaXRlcmF0ZWUgY2FsbCByZXR1cm5zIGB0cnVlYCwgdGhlIG1haW4gYGNhbGxiYWNrYCBpcyBpbW1lZGlhdGVseVxuICAgICAqIGNhbGxlZC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHNvbWVcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAYWxpYXMgYW55XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW1cbiAgICAgKiBpbiB0aGUgY29sbGVjdGlvbnMgaW4gcGFyYWxsZWwuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiBgcmVzdWx0YCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYXMgc29vbiBhcyBhbnlcbiAgICAgKiBpdGVyYXRlZSByZXR1cm5zIGB0cnVlYCwgb3IgYWZ0ZXIgYWxsIHRoZSBpdGVyYXRlZSBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSBlaXRoZXIgYHRydWVgIG9yIGBmYWxzZWAgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jXG4gICAgICogdGVzdHMuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKiAvLyBkaXI0IGRvZXMgbm90IGV4aXN0XG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBmaWxlIGV4aXN0c1xuICAgICAqIGZ1bmN0aW9uIGZpbGVFeGlzdHMoZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICBmcy5hY2Nlc3MoZmlsZSwgZnMuY29uc3RhbnRzLkZfT0ssIChlcnIpID0+IHtcbiAgICAgKiAgICAgICAgY2FsbGJhY2sobnVsbCwgIWVycik7XG4gICAgICogICAgfSk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyMy9maWxlNS50eHQnXSwgZmlsZUV4aXN0cyxcbiAgICAgKiAgICBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAvLyB0cnVlXG4gICAgICogICAgICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIHNvbWUgZmlsZSBpbiB0aGUgbGlzdCBleGlzdHNcbiAgICAgKiAgICB9XG4gICAgICopO1xuICAgICAqXG4gICAgICogYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyNC9taXNzaW5nLnR4dCddLCBmaWxlRXhpc3RzLFxuICAgICAqICAgIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgIC8vIGZhbHNlXG4gICAgICogICAgICAgIC8vIHJlc3VsdCBpcyBmYWxzZSBzaW5jZSBub25lIG9mIHRoZSBmaWxlcyBleGlzdHNcbiAgICAgKiAgICB9XG4gICAgICopO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5zb21lKFsnZGlyMS9taXNzaW5nLnR4dCcsJ2RpcjIvbWlzc2luZy50eHQnLCdkaXIzL2ZpbGU1LnR4dCddLCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB0cnVlXG4gICAgICogICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIHNvbWUgZmlsZSBpbiB0aGUgbGlzdCBleGlzdHNcbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIGFzeW5jLnNvbWUoWydkaXIxL21pc3NpbmcudHh0JywnZGlyMi9taXNzaW5nLnR4dCcsJ2RpcjQvbWlzc2luZy50eHQnXSwgZmlsZUV4aXN0cylcbiAgICAgKiAudGhlbiggcmVzdWx0ID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgLy8gZmFsc2VcbiAgICAgKiAgICAgLy8gcmVzdWx0IGlzIGZhbHNlIHNpbmNlIG5vbmUgb2YgdGhlIGZpbGVzIGV4aXN0c1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyMy9maWxlNS50eHQnXSwgZmlsZUV4aXN0cyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gdHJ1ZVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIHRydWUgc2luY2Ugc29tZSBmaWxlIGluIHRoZSBsaXN0IGV4aXN0c1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyNC9taXNzaW5nLnR4dCddLCBmaWxlRXhpc3RzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyBmYWxzZVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIGZhbHNlIHNpbmNlIG5vbmUgb2YgdGhlIGZpbGVzIGV4aXN0c1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBzb21lKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3RlcihCb29sZWFuLCByZXMgPT4gcmVzKShlYWNoT2YkMSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgc29tZSQxID0gYXdhaXRpZnkoc29tZSwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHNvbWVgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuc29tZX0gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBzb21lTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5zb21lXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuc29tZX1cbiAgICAgKiBAYWxpYXMgYW55TGltaXRcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW1cbiAgICAgKiBpbiB0aGUgY29sbGVjdGlvbnMgaW4gcGFyYWxsZWwuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiBgcmVzdWx0YCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYXMgc29vbiBhcyBhbnlcbiAgICAgKiBpdGVyYXRlZSByZXR1cm5zIGB0cnVlYCwgb3IgYWZ0ZXIgYWxsIHRoZSBpdGVyYXRlZSBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSBlaXRoZXIgYHRydWVgIG9yIGBmYWxzZWAgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jXG4gICAgICogdGVzdHMuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gc29tZUxpbWl0KGNvbGwsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoQm9vbGVhbiwgcmVzID0+IHJlcykoZWFjaE9mTGltaXQobGltaXQpLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBzb21lTGltaXQkMSA9IGF3YWl0aWZ5KHNvbWVMaW1pdCwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHNvbWVgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuc29tZX0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgc29tZVNlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnNvbWVde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5zb21lfVxuICAgICAqIEBhbGlhcyBhbnlTZXJpZXNcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyB0cnV0aCB0ZXN0IHRvIGFwcGx5IHRvIGVhY2ggaXRlbVxuICAgICAqIGluIHRoZSBjb2xsZWN0aW9ucyBpbiBzZXJpZXMuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiBgcmVzdWx0YCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYXMgc29vbiBhcyBhbnlcbiAgICAgKiBpdGVyYXRlZSByZXR1cm5zIGB0cnVlYCwgb3IgYWZ0ZXIgYWxsIHRoZSBpdGVyYXRlZSBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSBlaXRoZXIgYHRydWVgIG9yIGBmYWxzZWAgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jXG4gICAgICogdGVzdHMuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gc29tZVNlcmllcyhjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoQm9vbGVhbiwgcmVzID0+IHJlcykoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIHNvbWVTZXJpZXMkMSA9IGF3YWl0aWZ5KHNvbWVTZXJpZXMsIDMpO1xuXG4gICAgLyoqXG4gICAgICogU29ydHMgYSBsaXN0IGJ5IHRoZSByZXN1bHRzIG9mIHJ1bm5pbmcgZWFjaCBgY29sbGAgdmFsdWUgdGhyb3VnaCBhbiBhc3luY1xuICAgICAqIGBpdGVyYXRlZWAuXG4gICAgICpcbiAgICAgKiBAbmFtZSBzb3J0QnlcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgdmFsdWUgdG8gdXNlIGFzIHRoZSBzb3J0IGNyaXRlcmlhIGFzXG4gICAgICogaXRzIGByZXN1bHRgLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0cyBpcyB0aGUgaXRlbXNcbiAgICAgKiBmcm9tIHRoZSBvcmlnaW5hbCBgY29sbGAgc29ydGVkIGJ5IHRoZSB2YWx1ZXMgcmV0dXJuZWQgYnkgdGhlIGBpdGVyYXRlZWBcbiAgICAgKiBjYWxscy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBiaWdmaWxlLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAyNTExMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIG1lZGl1bWZpbGUudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDExMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBzbWFsbGZpbGUudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDEyMSBieXRlcyBpbiBzaXplXG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZSBmaWxlIHNpemUgaW4gYnl0ZXNcbiAgICAgKiBmdW5jdGlvbiBnZXRGaWxlU2l6ZUluQnl0ZXMoZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgZnMuc3RhdChmaWxlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsIHN0YXQuc2l6ZSk7XG4gICAgICogICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGNhbGxiYWNrc1xuICAgICAqIGFzeW5jLnNvcnRCeShbJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCcsJ2JpZ2ZpbGUudHh0J10sIGdldEZpbGVTaXplSW5CeXRlcyxcbiAgICAgKiAgICAgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgICAgIC8vIGZpbGUgc2l6ZSAoYXNjZW5kaW5nIGJ5IGRlZmF1bHQpLCBlLmcuXG4gICAgICogICAgICAgICAgICAgLy8gWyAnc21hbGxmaWxlLnR4dCcsICdtZWRpdW1maWxlLnR4dCcsICdiaWdmaWxlLnR4dCddXG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH1cbiAgICAgKiApO1xuICAgICAqXG4gICAgICogLy8gQnkgbW9kaWZ5aW5nIHRoZSBjYWxsYmFjayBwYXJhbWV0ZXIgdGhlXG4gICAgICogLy8gc29ydGluZyBvcmRlciBjYW4gYmUgaW5mbHVlbmNlZDpcbiAgICAgKlxuICAgICAqIC8vIGFzY2VuZGluZyBvcmRlclxuICAgICAqIGFzeW5jLnNvcnRCeShbJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCcsJ2JpZ2ZpbGUudHh0J10sIGZ1bmN0aW9uKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBmdW5jdGlvbihnZXRGaWxlU2l6ZUVyciwgZmlsZVNpemUpIHtcbiAgICAgKiAgICAgICAgIGlmIChnZXRGaWxlU2l6ZUVycikgcmV0dXJuIGNhbGxiYWNrKGdldEZpbGVTaXplRXJyKTtcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsIGZpbGVTaXplKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgICAgIC8vIGZpbGUgc2l6ZSAoYXNjZW5kaW5nIGJ5IGRlZmF1bHQpLCBlLmcuXG4gICAgICogICAgICAgICAgICAgLy8gWyAnc21hbGxmaWxlLnR4dCcsICdtZWRpdW1maWxlLnR4dCcsICdiaWdmaWxlLnR4dCddXG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH1cbiAgICAgKiApO1xuICAgICAqXG4gICAgICogLy8gZGVzY2VuZGluZyBvcmRlclxuICAgICAqIGFzeW5jLnNvcnRCeShbJ2JpZ2ZpbGUudHh0JywnbWVkaXVtZmlsZS50eHQnLCdzbWFsbGZpbGUudHh0J10sIGZ1bmN0aW9uKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBmdW5jdGlvbihnZXRGaWxlU2l6ZUVyciwgZmlsZVNpemUpIHtcbiAgICAgKiAgICAgICAgIGlmIChnZXRGaWxlU2l6ZUVycikge1xuICAgICAqICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhnZXRGaWxlU2l6ZUVycik7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBmaWxlU2l6ZSAqIC0xKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgICAgIC8vIGZpbGUgc2l6ZSAoYXNjZW5kaW5nIGJ5IGRlZmF1bHQpLCBlLmcuXG4gICAgICogICAgICAgICAgICAgLy8gWyAnYmlnZmlsZS50eHQnLCAnbWVkaXVtZmlsZS50eHQnLCAnc21hbGxmaWxlLnR4dCddXG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH1cbiAgICAgKiApO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgaGFuZGxpbmdcbiAgICAgKiBhc3luYy5zb3J0QnkoWydtZWRpdW1maWxlLnR4dCcsJ3NtYWxsZmlsZS50eHQnLCdtaXNzaW5nZmlsZS50eHQnXSwgZ2V0RmlsZVNpemVJbkJ5dGVzLFxuICAgICAqICAgICBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgfVxuICAgICAqICAgICB9XG4gICAgICogKTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuc29ydEJ5KFsnbWVkaXVtZmlsZS50eHQnLCdzbWFsbGZpbGUudHh0JywnYmlnZmlsZS50eHQnXSwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgbm93IHRoZSBvcmlnaW5hbCBhcnJheSBvZiBmaWxlcyBzb3J0ZWQgYnlcbiAgICAgKiAgICAgLy8gZmlsZSBzaXplIChhc2NlbmRpbmcgYnkgZGVmYXVsdCksIGUuZy5cbiAgICAgKiAgICAgLy8gWyAnc21hbGxmaWxlLnR4dCcsICdtZWRpdW1maWxlLnR4dCcsICdiaWdmaWxlLnR4dCddXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBoYW5kbGluZ1xuICAgICAqIGFzeW5jLnNvcnRCeShbJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCcsJ21pc3NpbmdmaWxlLnR4dCddLCBnZXRGaWxlU2l6ZUluQnl0ZXMpXG4gICAgICogLnRoZW4oIHJlc3VsdHMgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgLy8gWyBFcnJvcjogRU5PRU5UOiBubyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IF1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogKGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMuc29ydEJ5KFsnYmlnZmlsZS50eHQnLCdtZWRpdW1maWxlLnR4dCcsJ3NtYWxsZmlsZS50eHQnXSwgZ2V0RmlsZVNpemVJbkJ5dGVzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgLy8gZmlsZSBzaXplIChhc2NlbmRpbmcgYnkgZGVmYXVsdCksIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIFsgJ3NtYWxsZmlsZS50eHQnLCAnbWVkaXVtZmlsZS50eHQnLCAnYmlnZmlsZS50eHQnXVxuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9KSgpO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgaGFuZGxpbmdcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLnNvcnRCeShbJ21pc3NpbmdmaWxlLnR4dCcsJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCddLCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBzb3J0QnkgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgX2l0ZXJhdGVlID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgcmV0dXJuIG1hcCQxKGNvbGwsICh4LCBpdGVyQ2IpID0+IHtcbiAgICAgICAgICAgIF9pdGVyYXRlZSh4LCAoZXJyLCBjcml0ZXJpYSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBpdGVyQ2IoZXJyKTtcbiAgICAgICAgICAgICAgICBpdGVyQ2IoZXJyLCB7dmFsdWU6IHgsIGNyaXRlcmlhfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgKGVyciwgcmVzdWx0cykgPT4ge1xuICAgICAgICAgICAgaWYgKGVycikgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICBjYWxsYmFjayhudWxsLCByZXN1bHRzLnNvcnQoY29tcGFyYXRvcikubWFwKHYgPT4gdi52YWx1ZSkpO1xuICAgICAgICB9KTtcblxuICAgICAgICBmdW5jdGlvbiBjb21wYXJhdG9yKGxlZnQsIHJpZ2h0KSB7XG4gICAgICAgICAgICB2YXIgYSA9IGxlZnQuY3JpdGVyaWEsIGIgPSByaWdodC5jcml0ZXJpYTtcbiAgICAgICAgICAgIHJldHVybiBhIDwgYiA/IC0xIDogYSA+IGIgPyAxIDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICB2YXIgc29ydEJ5JDEgPSBhd2FpdGlmeShzb3J0QnksIDMpO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyBhIHRpbWUgbGltaXQgb24gYW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uLiBJZiB0aGUgZnVuY3Rpb24gZG9lcyBub3QgY2FsbFxuICAgICAqIGl0cyBjYWxsYmFjayB3aXRoaW4gdGhlIHNwZWNpZmllZCBtaWxsaXNlY29uZHMsIGl0IHdpbGwgYmUgY2FsbGVkIHdpdGggYVxuICAgICAqIHRpbWVvdXQgZXJyb3IuIFRoZSBjb2RlIHByb3BlcnR5IGZvciB0aGUgZXJyb3Igb2JqZWN0IHdpbGwgYmUgYCdFVElNRURPVVQnYC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRpbWVvdXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gYXN5bmNGbiAtIFRoZSBhc3luYyBmdW5jdGlvbiB0byBsaW1pdCBpbiB0aW1lLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBtaWxsaXNlY29uZHMgLSBUaGUgc3BlY2lmaWVkIHRpbWUgbGltaXQuXG4gICAgICogQHBhcmFtIHsqfSBbaW5mb10gLSBBbnkgdmFyaWFibGUgeW91IHdhbnQgYXR0YWNoZWQgKGBzdHJpbmdgLCBgb2JqZWN0YCwgZXRjKVxuICAgICAqIHRvIHRpbWVvdXQgRXJyb3IgZm9yIG1vcmUgaW5mb3JtYXRpb24uLlxuICAgICAqIEByZXR1cm5zIHtBc3luY0Z1bmN0aW9ufSBSZXR1cm5zIGEgd3JhcHBlZCBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHdpdGggYW55XG4gICAgICogb2YgdGhlIGNvbnRyb2wgZmxvdyBmdW5jdGlvbnMuXG4gICAgICogSW52b2tlIHRoaXMgZnVuY3Rpb24gd2l0aCB0aGUgc2FtZSBwYXJhbWV0ZXJzIGFzIHlvdSB3b3VsZCBgYXN5bmNGdW5jYC5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogZnVuY3Rpb24gbXlGdW5jdGlvbihmb28sIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGRvQXN5bmNUYXNrKGZvbywgZnVuY3Rpb24oZXJyLCBkYXRhKSB7XG4gICAgICogICAgICAgICAvLyBoYW5kbGUgZXJyb3JzXG4gICAgICogICAgICAgICBpZiAoZXJyKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKlxuICAgICAqICAgICAgICAgLy8gZG8gc29tZSBzdHVmZiAuLi5cbiAgICAgKlxuICAgICAqICAgICAgICAgLy8gcmV0dXJuIHByb2Nlc3NlZCBkYXRhXG4gICAgICogICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwgZGF0YSk7XG4gICAgICogICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIHZhciB3cmFwcGVkID0gYXN5bmMudGltZW91dChteUZ1bmN0aW9uLCAxMDAwKTtcbiAgICAgKlxuICAgICAqIC8vIGNhbGwgYHdyYXBwZWRgIGFzIHlvdSB3b3VsZCBgbXlGdW5jdGlvbmBcbiAgICAgKiB3cmFwcGVkKHsgYmFyOiAnYmFyJyB9LCBmdW5jdGlvbihlcnIsIGRhdGEpIHtcbiAgICAgKiAgICAgLy8gaWYgYG15RnVuY3Rpb25gIHRha2VzIDwgMTAwMCBtcyB0byBleGVjdXRlLCBgZXJyYFxuICAgICAqICAgICAvLyBhbmQgYGRhdGFgIHdpbGwgaGF2ZSB0aGVpciBleHBlY3RlZCB2YWx1ZXNcbiAgICAgKlxuICAgICAqICAgICAvLyBlbHNlIGBlcnJgIHdpbGwgYmUgYW4gRXJyb3Igd2l0aCB0aGUgY29kZSAnRVRJTUVET1VUJ1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRpbWVvdXQoYXN5bmNGbiwgbWlsbGlzZWNvbmRzLCBpbmZvKSB7XG4gICAgICAgIHZhciBmbiA9IHdyYXBBc3luYyhhc3luY0ZuKTtcblxuICAgICAgICByZXR1cm4gaW5pdGlhbFBhcmFtcygoYXJncywgY2FsbGJhY2spID0+IHtcbiAgICAgICAgICAgIHZhciB0aW1lZE91dCA9IGZhbHNlO1xuICAgICAgICAgICAgdmFyIHRpbWVyO1xuXG4gICAgICAgICAgICBmdW5jdGlvbiB0aW1lb3V0Q2FsbGJhY2soKSB7XG4gICAgICAgICAgICAgICAgdmFyIG5hbWUgPSBhc3luY0ZuLm5hbWUgfHwgJ2Fub255bW91cyc7XG4gICAgICAgICAgICAgICAgdmFyIGVycm9yICA9IG5ldyBFcnJvcignQ2FsbGJhY2sgZnVuY3Rpb24gXCInICsgbmFtZSArICdcIiB0aW1lZCBvdXQuJyk7XG4gICAgICAgICAgICAgICAgZXJyb3IuY29kZSA9ICdFVElNRURPVVQnO1xuICAgICAgICAgICAgICAgIGlmIChpbmZvKSB7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yLmluZm8gPSBpbmZvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aW1lZE91dCA9IHRydWU7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2soZXJyb3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhcmdzLnB1c2goKC4uLmNiQXJncykgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGltZWRPdXQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2soLi4uY2JBcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gc2V0dXAgdGltZXIgYW5kIGNhbGwgb3JpZ2luYWwgZnVuY3Rpb25cbiAgICAgICAgICAgIHRpbWVyID0gc2V0VGltZW91dCh0aW1lb3V0Q2FsbGJhY2ssIG1pbGxpc2Vjb25kcyk7XG4gICAgICAgICAgICBmbiguLi5hcmdzKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcmFuZ2Uoc2l6ZSkge1xuICAgICAgICB2YXIgcmVzdWx0ID0gQXJyYXkoc2l6ZSk7XG4gICAgICAgIHdoaWxlIChzaXplLS0pIHtcbiAgICAgICAgICAgIHJlc3VsdFtzaXplXSA9IHNpemU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbdGltZXNde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy50aW1lc30gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhXG4gICAgICogdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRpbWVzTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy50aW1lc117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnRpbWVzfVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gY291bnQgLSBUaGUgbnVtYmVyIG9mIHRpbWVzIHRvIHJ1biB0aGUgZnVuY3Rpb24uXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbCBgbmAgdGltZXMuXG4gICAgICogSW52b2tlZCB3aXRoIHRoZSBpdGVyYXRpb24gaW5kZXggYW5kIGEgY2FsbGJhY2s6IChuLCBuZXh0KS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFjayAtIHNlZSBbYXN5bmMubWFwXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwcm92aWRlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRpbWVzTGltaXQoY291bnQsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgdmFyIF9pdGVyYXRlZSA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG4gICAgICAgIHJldHVybiBtYXBMaW1pdCQxKHJhbmdlKGNvdW50KSwgbGltaXQsIF9pdGVyYXRlZSwgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGxzIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uIGBuYCB0aW1lcywgYW5kIGFjY3VtdWxhdGVzIHJlc3VsdHMgaW4gdGhlIHNhbWVcbiAgICAgKiBtYW5uZXIgeW91IHdvdWxkIHVzZSB3aXRoIFttYXBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXB9LlxuICAgICAqXG4gICAgICogQG5hbWUgdGltZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5tYXBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXB9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBuIC0gVGhlIG51bWJlciBvZiB0aW1lcyB0byBydW4gdGhlIGZ1bmN0aW9uLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbCBgbmAgdGltZXMuXG4gICAgICogSW52b2tlZCB3aXRoIHRoZSBpdGVyYXRpb24gaW5kZXggYW5kIGEgY2FsbGJhY2s6IChuLCBuZXh0KS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFjayAtIHNlZSB7QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcH0uXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcHJvdmlkZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gUHJldGVuZCB0aGlzIGlzIHNvbWUgY29tcGxpY2F0ZWQgYXN5bmMgZmFjdG9yeVxuICAgICAqIHZhciBjcmVhdGVVc2VyID0gZnVuY3Rpb24oaWQsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGNhbGxiYWNrKG51bGwsIHtcbiAgICAgKiAgICAgICAgIGlkOiAndXNlcicgKyBpZFxuICAgICAqICAgICB9KTtcbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogLy8gZ2VuZXJhdGUgNSB1c2Vyc1xuICAgICAqIGFzeW5jLnRpbWVzKDUsIGZ1bmN0aW9uKG4sIG5leHQpIHtcbiAgICAgKiAgICAgY3JlYXRlVXNlcihuLCBmdW5jdGlvbihlcnIsIHVzZXIpIHtcbiAgICAgKiAgICAgICAgIG5leHQoZXJyLCB1c2VyKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCB1c2Vycykge1xuICAgICAqICAgICAvLyB3ZSBzaG91bGQgbm93IGhhdmUgNSB1c2Vyc1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRpbWVzIChuLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIHRpbWVzTGltaXQobiwgSW5maW5pdHksIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbdGltZXNde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy50aW1lc30gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgdGltZXNTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy50aW1lc117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnRpbWVzfVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbiAtIFRoZSBudW1iZXIgb2YgdGltZXMgdG8gcnVuIHRoZSBmdW5jdGlvbi5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwgYG5gIHRpbWVzLlxuICAgICAqIEludm9rZWQgd2l0aCB0aGUgaXRlcmF0aW9uIGluZGV4IGFuZCBhIGNhbGxiYWNrOiAobiwgbmV4dCkuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gY2FsbGJhY2sgLSBzZWUge0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXB9LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gdGltZXNTZXJpZXMgKG4sIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gdGltZXNMaW1pdChuLCAxLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQSByZWxhdGl2ZSBvZiBgcmVkdWNlYC4gIFRha2VzIGFuIE9iamVjdCBvciBBcnJheSwgYW5kIGl0ZXJhdGVzIG92ZXIgZWFjaFxuICAgICAqIGVsZW1lbnQgaW4gcGFyYWxsZWwsIGVhY2ggc3RlcCBwb3RlbnRpYWxseSBtdXRhdGluZyBhbiBgYWNjdW11bGF0b3JgIHZhbHVlLlxuICAgICAqIFRoZSB0eXBlIG9mIHRoZSBhY2N1bXVsYXRvciBkZWZhdWx0cyB0byB0aGUgdHlwZSBvZiBjb2xsZWN0aW9uIHBhc3NlZCBpbi5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRyYW5zZm9ybVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHsqfSBbYWNjdW11bGF0b3JdIC0gVGhlIGluaXRpYWwgc3RhdGUgb2YgdGhlIHRyYW5zZm9ybS4gIElmIG9taXR0ZWQsXG4gICAgICogaXQgd2lsbCBkZWZhdWx0IHRvIGFuIGVtcHR5IE9iamVjdCBvciBBcnJheSwgZGVwZW5kaW5nIG9uIHRoZSB0eXBlIG9mIGBjb2xsYFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIGFwcGxpZWQgdG8gZWFjaCBpdGVtIGluIHRoZVxuICAgICAqIGNvbGxlY3Rpb24gdGhhdCBwb3RlbnRpYWxseSBtb2RpZmllcyB0aGUgYWNjdW11bGF0b3IuXG4gICAgICogSW52b2tlZCB3aXRoIChhY2N1bXVsYXRvciwgaXRlbSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLiBSZXN1bHQgaXMgdGhlIHRyYW5zZm9ybWVkIGFjY3VtdWxhdG9yLlxuICAgICAqIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGZpbGUxLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAxMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlMi50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMjAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTMudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDMwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqXG4gICAgICogLy8gaGVscGVyIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBodW1hbi1yZWFkYWJsZSBzaXplIGZvcm1hdCBmcm9tIGJ5dGVzXG4gICAgICogZnVuY3Rpb24gZm9ybWF0Qnl0ZXMoYnl0ZXMsIGRlY2ltYWxzID0gMikge1xuICAgICAqICAgLy8gaW1wbGVtZW50YXRpb24gbm90IGluY2x1ZGVkIGZvciBicmV2aXR5XG4gICAgICogICByZXR1cm4gaHVtYW5SZWFkYmxlRmlsZXNpemU7XG4gICAgICogfVxuICAgICAqXG4gICAgICogY29uc3QgZmlsZUxpc3QgPSBbJ2ZpbGUxLnR4dCcsJ2ZpbGUyLnR4dCcsJ2ZpbGUzLnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgZmlsZSBzaXplLCB0cmFuc2Zvcm1lZCB0byBodW1hbi1yZWFkYWJsZSBmb3JtYXRcbiAgICAgKiAvLyBlLmcuIDEwMjQgYnl0ZXMgPSAxS0IsIDEyMzQgYnl0ZXMgPSAxLjIxIEtCLCAxMDQ4NTc2IGJ5dGVzID0gMU1CLCBldGMuXG4gICAgICogZnVuY3Rpb24gdHJhbnNmb3JtRmlsZVNpemUoYWNjLCB2YWx1ZSwga2V5LCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy5zdGF0KHZhbHVlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGFjY1trZXldID0gZm9ybWF0Qnl0ZXMoc3RhdC5zaXplKTtcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy50cmFuc2Zvcm0oZmlsZUxpc3QsIHRyYW5zZm9ybUZpbGVTaXplLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBpZihlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gWyAnMTAwMCBCeXRlcycsICcxLjk1IEtCJywgJzIuOTMgS0InIF1cbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy50cmFuc2Zvcm0oZmlsZUxpc3QsIHRyYW5zZm9ybUZpbGVTaXplKVxuICAgICAqIC50aGVuKHJlc3VsdCA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgIC8vIFsgJzEwMDAgQnl0ZXMnLCAnMS45NSBLQicsICcyLjkzIEtCJyBdXG4gICAgICogfSkuY2F0Y2goZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogKGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy50cmFuc2Zvcm0oZmlsZUxpc3QsIHRyYW5zZm9ybUZpbGVTaXplKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyBbICcxMDAwIEJ5dGVzJywgJzEuOTUgS0InLCAnMi45MyBLQicgXVxuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9KSgpO1xuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGZpbGUxLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAxMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlMi50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMjAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTMudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDMwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqXG4gICAgICogLy8gaGVscGVyIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBodW1hbi1yZWFkYWJsZSBzaXplIGZvcm1hdCBmcm9tIGJ5dGVzXG4gICAgICogZnVuY3Rpb24gZm9ybWF0Qnl0ZXMoYnl0ZXMsIGRlY2ltYWxzID0gMikge1xuICAgICAqICAgLy8gaW1wbGVtZW50YXRpb24gbm90IGluY2x1ZGVkIGZvciBicmV2aXR5XG4gICAgICogICByZXR1cm4gaHVtYW5SZWFkYmxlRmlsZXNpemU7XG4gICAgICogfVxuICAgICAqXG4gICAgICogY29uc3QgZmlsZU1hcCA9IHsgZjE6ICdmaWxlMS50eHQnLCBmMjogJ2ZpbGUyLnR4dCcsIGYzOiAnZmlsZTMudHh0JyB9O1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgZmlsZSBzaXplLCB0cmFuc2Zvcm1lZCB0byBodW1hbi1yZWFkYWJsZSBmb3JtYXRcbiAgICAgKiAvLyBlLmcuIDEwMjQgYnl0ZXMgPSAxS0IsIDEyMzQgYnl0ZXMgPSAxLjIxIEtCLCAxMDQ4NTc2IGJ5dGVzID0gMU1CLCBldGMuXG4gICAgICogZnVuY3Rpb24gdHJhbnNmb3JtRmlsZVNpemUoYWNjLCB2YWx1ZSwga2V5LCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy5zdGF0KHZhbHVlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGFjY1trZXldID0gZm9ybWF0Qnl0ZXMoc3RhdC5zaXplKTtcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy50cmFuc2Zvcm0oZmlsZU1hcCwgdHJhbnNmb3JtRmlsZVNpemUsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIGlmKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyB7IGYxOiAnMTAwMCBCeXRlcycsIGYyOiAnMS45NSBLQicsIGYzOiAnMi45MyBLQicgfVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLnRyYW5zZm9ybShmaWxlTWFwLCB0cmFuc2Zvcm1GaWxlU2l6ZSlcbiAgICAgKiAudGhlbihyZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB7IGYxOiAnMTAwMCBCeXRlcycsIGYyOiAnMS45NSBLQicsIGYzOiAnMi45MyBLQicgfVxuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy50cmFuc2Zvcm0oZmlsZU1hcCwgdHJhbnNmb3JtRmlsZVNpemUpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHsgZjE6ICcxMDAwIEJ5dGVzJywgZjI6ICcxLjk1IEtCJywgZjM6ICcyLjkzIEtCJyB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybSAoY29sbCwgYWNjdW11bGF0b3IsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA8PSAzICYmIHR5cGVvZiBhY2N1bXVsYXRvciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgY2FsbGJhY2sgPSBpdGVyYXRlZTtcbiAgICAgICAgICAgIGl0ZXJhdGVlID0gYWNjdW11bGF0b3I7XG4gICAgICAgICAgICBhY2N1bXVsYXRvciA9IEFycmF5LmlzQXJyYXkoY29sbCkgPyBbXSA6IHt9O1xuICAgICAgICB9XG4gICAgICAgIGNhbGxiYWNrID0gb25jZShjYWxsYmFjayB8fCBwcm9taXNlQ2FsbGJhY2soKSk7XG4gICAgICAgIHZhciBfaXRlcmF0ZWUgPSB3cmFwQXN5bmMoaXRlcmF0ZWUpO1xuXG4gICAgICAgIGVhY2hPZiQxKGNvbGwsICh2LCBrLCBjYikgPT4ge1xuICAgICAgICAgICAgX2l0ZXJhdGVlKGFjY3VtdWxhdG9yLCB2LCBrLCBjYik7XG4gICAgICAgIH0sIGVyciA9PiBjYWxsYmFjayhlcnIsIGFjY3VtdWxhdG9yKSk7XG4gICAgICAgIHJldHVybiBjYWxsYmFja1tQUk9NSVNFX1NZTUJPTF1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJdCBydW5zIGVhY2ggdGFzayBpbiBzZXJpZXMgYnV0IHN0b3BzIHdoZW5ldmVyIGFueSBvZiB0aGUgZnVuY3Rpb25zIHdlcmVcbiAgICAgKiBzdWNjZXNzZnVsLiBJZiBvbmUgb2YgdGhlIHRhc2tzIHdlcmUgc3VjY2Vzc2Z1bCwgdGhlIGBjYWxsYmFja2Agd2lsbCBiZVxuICAgICAqIHBhc3NlZCB0aGUgcmVzdWx0IG9mIHRoZSBzdWNjZXNzZnVsIHRhc2suIElmIGFsbCB0YXNrcyBmYWlsLCB0aGUgY2FsbGJhY2tcbiAgICAgKiB3aWxsIGJlIHBhc3NlZCB0aGUgZXJyb3IgYW5kIHJlc3VsdCAoaWYgYW55KSBvZiB0aGUgZmluYWwgYXR0ZW1wdC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRyeUVhY2hcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gdGFza3MgLSBBIGNvbGxlY3Rpb24gY29udGFpbmluZyBmdW5jdGlvbnMgdG9cbiAgICAgKiBydW4sIGVhY2ggZnVuY3Rpb24gaXMgcGFzc2VkIGEgYGNhbGxiYWNrKGVyciwgcmVzdWx0KWAgaXQgbXVzdCBjYWxsIG9uXG4gICAgICogY29tcGxldGlvbiB3aXRoIGFuIGVycm9yIGBlcnJgICh3aGljaCBjYW4gYmUgYG51bGxgKSBhbmQgYW4gb3B0aW9uYWwgYHJlc3VsdGBcbiAgICAgKiB2YWx1ZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gb25lXG4gICAgICogb2YgdGhlIHRhc2tzIGhhcyBzdWNjZWVkZWQsIG9yIGFsbCBoYXZlIGZhaWxlZC4gSXQgcmVjZWl2ZXMgdGhlIGBlcnJgIGFuZFxuICAgICAqIGByZXN1bHRgIGFyZ3VtZW50cyBvZiB0aGUgbGFzdCBhdHRlbXB0IGF0IGNvbXBsZXRpbmcgdGhlIGB0YXNrYC4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBhc3luYy50cnlFYWNoKFtcbiAgICAgKiAgICAgZnVuY3Rpb24gZ2V0RGF0YUZyb21GaXJzdFdlYnNpdGUoY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIFRyeSBnZXR0aW5nIHRoZSBkYXRhIGZyb20gdGhlIGZpcnN0IHdlYnNpdGVcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKGVyciwgZGF0YSk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uIGdldERhdGFGcm9tU2Vjb25kV2Vic2l0ZShjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gRmlyc3Qgd2Vic2l0ZSBmYWlsZWQsXG4gICAgICogICAgICAgICAvLyBUcnkgZ2V0dGluZyB0aGUgZGF0YSBmcm9tIHRoZSBiYWNrdXAgd2Vic2l0ZVxuICAgICAqICAgICAgICAgY2FsbGJhY2soZXJyLCBkYXRhKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0sXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgTm93IGRvIHNvbWV0aGluZyB3aXRoIHRoZSBkYXRhLlxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gdHJ5RWFjaCh0YXNrcywgY2FsbGJhY2spIHtcbiAgICAgICAgdmFyIGVycm9yID0gbnVsbDtcbiAgICAgICAgdmFyIHJlc3VsdDtcbiAgICAgICAgcmV0dXJuIGVhY2hTZXJpZXMkMSh0YXNrcywgKHRhc2ssIHRhc2tDYikgPT4ge1xuICAgICAgICAgICAgd3JhcEFzeW5jKHRhc2spKChlcnIsIC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyID09PSBmYWxzZSkgcmV0dXJuIHRhc2tDYihlcnIpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGFyZ3MubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgICAgICAgICBbcmVzdWx0XSA9IGFyZ3M7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gYXJncztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZXJyb3IgPSBlcnI7XG4gICAgICAgICAgICAgICAgdGFza0NiKGVyciA/IG51bGwgOiB7fSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgKCkgPT4gY2FsbGJhY2soZXJyb3IsIHJlc3VsdCkpO1xuICAgIH1cblxuICAgIHZhciB0cnlFYWNoJDEgPSBhd2FpdGlmeSh0cnlFYWNoKTtcblxuICAgIC8qKlxuICAgICAqIFVuZG9lcyBhIFttZW1vaXplXXtAbGluayBtb2R1bGU6VXRpbHMubWVtb2l6ZX1kIGZ1bmN0aW9uLCByZXZlcnRpbmcgaXQgdG8gdGhlIG9yaWdpbmFsLFxuICAgICAqIHVubWVtb2l6ZWQgZm9ybS4gSGFuZHkgZm9yIHRlc3RpbmcuXG4gICAgICpcbiAgICAgKiBAbmFtZSB1bm1lbW9pemVcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5tZW1vaXplXXtAbGluayBtb2R1bGU6VXRpbHMubWVtb2l6ZX1cbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gZm4gLSB0aGUgbWVtb2l6ZWQgZnVuY3Rpb25cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gYSBmdW5jdGlvbiB0aGF0IGNhbGxzIHRoZSBvcmlnaW5hbCB1bm1lbW9pemVkIGZ1bmN0aW9uXG4gICAgICovXG4gICAgZnVuY3Rpb24gdW5tZW1vaXplKGZuKSB7XG4gICAgICAgIHJldHVybiAoLi4uYXJncykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChmbi51bm1lbW9pemVkIHx8IGZuKSguLi5hcmdzKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXBlYXRlZGx5IGNhbGwgYGl0ZXJhdGVlYCwgd2hpbGUgYHRlc3RgIHJldHVybnMgYHRydWVgLiBDYWxscyBgY2FsbGJhY2tgIHdoZW5cbiAgICAgKiBzdG9wcGVkLCBvciBhbiBlcnJvciBvY2N1cnMuXG4gICAgICpcbiAgICAgKiBAbmFtZSB3aGlsc3RcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSB0ZXN0IC0gYXN5bmNocm9ub3VzIHRydXRoIHRlc3QgdG8gcGVyZm9ybSBiZWZvcmUgZWFjaFxuICAgICAqIGV4ZWN1dGlvbiBvZiBgaXRlcmF0ZWVgLiBJbnZva2VkIHdpdGggKCkuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHdoaWNoIGlzIGNhbGxlZCBlYWNoIHRpbWVcbiAgICAgKiBgdGVzdGAgcGFzc2VzLiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgdGhlIHRlc3RcbiAgICAgKiBmdW5jdGlvbiBoYXMgZmFpbGVkIGFuZCByZXBlYXRlZCBleGVjdXRpb24gb2YgYGl0ZXJhdGVlYCBoYXMgc3RvcHBlZC4gYGNhbGxiYWNrYFxuICAgICAqIHdpbGwgYmUgcGFzc2VkIGFuIGVycm9yIGFuZCBhbnkgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgZmluYWwgYGl0ZXJhdGVlYCdzXG4gICAgICogY2FsbGJhY2suIEludm9rZWQgd2l0aCAoZXJyLCBbcmVzdWx0c10pO1xuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiB2YXIgY291bnQgPSAwO1xuICAgICAqIGFzeW5jLndoaWxzdChcbiAgICAgKiAgICAgZnVuY3Rpb24gdGVzdChjYikgeyBjYihudWxsLCBjb3VudCA8IDUpOyB9LFxuICAgICAqICAgICBmdW5jdGlvbiBpdGVyKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjb3VudCsrO1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCBjb3VudCk7XG4gICAgICogICAgICAgICB9LCAxMDAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZnVuY3Rpb24gKGVyciwgbikge1xuICAgICAqICAgICAgICAgLy8gNSBzZWNvbmRzIGhhdmUgcGFzc2VkLCBuID0gNVxuICAgICAqICAgICB9XG4gICAgICogKTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiB3aGlsc3QodGVzdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNhbGxiYWNrID0gb25seU9uY2UoY2FsbGJhY2spO1xuICAgICAgICB2YXIgX2ZuID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgdmFyIF90ZXN0ID0gd3JhcEFzeW5jKHRlc3QpO1xuICAgICAgICB2YXIgcmVzdWx0cyA9IFtdO1xuXG4gICAgICAgIGZ1bmN0aW9uIG5leHQoZXJyLCAuLi5yZXN0KSB7XG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgICAgICAgIHJlc3VsdHMgPSByZXN0O1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIF90ZXN0KGNoZWNrKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGNoZWNrKGVyciwgdHJ1dGgpIHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIGlmICghdHJ1dGgpIHJldHVybiBjYWxsYmFjayhudWxsLCAuLi5yZXN1bHRzKTtcbiAgICAgICAgICAgIF9mbihuZXh0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBfdGVzdChjaGVjayk7XG4gICAgfVxuICAgIHZhciB3aGlsc3QkMSA9IGF3YWl0aWZ5KHdoaWxzdCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBSZXBlYXRlZGx5IGNhbGwgYGl0ZXJhdGVlYCB1bnRpbCBgdGVzdGAgcmV0dXJucyBgdHJ1ZWAuIENhbGxzIGBjYWxsYmFja2Agd2hlblxuICAgICAqIHN0b3BwZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gYGNhbGxiYWNrYCB3aWxsIGJlIHBhc3NlZCBhbiBlcnJvciBhbmQgYW55XG4gICAgICogYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgZmluYWwgYGl0ZXJhdGVlYCdzIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogVGhlIGludmVyc2Ugb2YgW3doaWxzdF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LndoaWxzdH0uXG4gICAgICpcbiAgICAgKiBAbmFtZSB1bnRpbFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLndoaWxzdF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LndoaWxzdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSB0ZXN0IC0gYXN5bmNocm9ub3VzIHRydXRoIHRlc3QgdG8gcGVyZm9ybSBiZWZvcmUgZWFjaFxuICAgICAqIGV4ZWN1dGlvbiBvZiBgaXRlcmF0ZWVgLiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgZnVuY3Rpb24gd2hpY2ggaXMgY2FsbGVkIGVhY2ggdGltZVxuICAgICAqIGB0ZXN0YCBmYWlscy4gSW52b2tlZCB3aXRoIChjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIHRoZSB0ZXN0XG4gICAgICogZnVuY3Rpb24gaGFzIHBhc3NlZCBhbmQgcmVwZWF0ZWQgZXhlY3V0aW9uIG9mIGBpdGVyYXRlZWAgaGFzIHN0b3BwZWQuIGBjYWxsYmFja2BcbiAgICAgKiB3aWxsIGJlIHBhc3NlZCBhbiBlcnJvciBhbmQgYW55IGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIGZpbmFsIGBpdGVyYXRlZWAnc1xuICAgICAqIGNhbGxiYWNrLiBJbnZva2VkIHdpdGggKGVyciwgW3Jlc3VsdHNdKTtcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG5vdCBwYXNzZWRcbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogY29uc3QgcmVzdWx0cyA9IFtdXG4gICAgICogbGV0IGZpbmlzaGVkID0gZmFsc2VcbiAgICAgKiBhc3luYy51bnRpbChmdW5jdGlvbiB0ZXN0KGNiKSB7XG4gICAgICogICAgIGNiKG51bGwsIGZpbmlzaGVkKVxuICAgICAqIH0sIGZ1bmN0aW9uIGl0ZXIobmV4dCkge1xuICAgICAqICAgICBmZXRjaFBhZ2UodXJsLCAoZXJyLCBib2R5KSA9PiB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSByZXR1cm4gbmV4dChlcnIpXG4gICAgICogICAgICAgICByZXN1bHRzID0gcmVzdWx0cy5jb25jYXQoYm9keS5vYmplY3RzKVxuICAgICAqICAgICAgICAgZmluaXNoZWQgPSAhIWJvZHkubmV4dFxuICAgICAqICAgICAgICAgbmV4dChlcnIpXG4gICAgICogICAgIH0pXG4gICAgICogfSwgZnVuY3Rpb24gZG9uZSAoZXJyKSB7XG4gICAgICogICAgIC8vIGFsbCBwYWdlcyBoYXZlIGJlZW4gZmV0Y2hlZFxuICAgICAqIH0pXG4gICAgICovXG4gICAgZnVuY3Rpb24gdW50aWwodGVzdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNvbnN0IF90ZXN0ID0gd3JhcEFzeW5jKHRlc3QpO1xuICAgICAgICByZXR1cm4gd2hpbHN0JDEoKGNiKSA9PiBfdGVzdCgoZXJyLCB0cnV0aCkgPT4gY2IgKGVyciwgIXRydXRoKSksIGl0ZXJhdGVlLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUnVucyB0aGUgYHRhc2tzYCBhcnJheSBvZiBmdW5jdGlvbnMgaW4gc2VyaWVzLCBlYWNoIHBhc3NpbmcgdGhlaXIgcmVzdWx0cyB0b1xuICAgICAqIHRoZSBuZXh0IGluIHRoZSBhcnJheS4gSG93ZXZlciwgaWYgYW55IG9mIHRoZSBgdGFza3NgIHBhc3MgYW4gZXJyb3IgdG8gdGhlaXJcbiAgICAgKiBvd24gY2FsbGJhY2ssIHRoZSBuZXh0IGZ1bmN0aW9uIGlzIG5vdCBleGVjdXRlZCwgYW5kIHRoZSBtYWluIGBjYWxsYmFja2AgaXNcbiAgICAgKiBpbW1lZGlhdGVseSBjYWxsZWQgd2l0aCB0aGUgZXJyb3IuXG4gICAgICpcbiAgICAgKiBAbmFtZSB3YXRlcmZhbGxcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheX0gdGFza3MgLSBBbiBhcnJheSBvZiBbYXN5bmMgZnVuY3Rpb25zXXtAbGluayBBc3luY0Z1bmN0aW9ufVxuICAgICAqIHRvIHJ1bi5cbiAgICAgKiBFYWNoIGZ1bmN0aW9uIHNob3VsZCBjb21wbGV0ZSB3aXRoIGFueSBudW1iZXIgb2YgYHJlc3VsdGAgdmFsdWVzLlxuICAgICAqIFRoZSBgcmVzdWx0YCB2YWx1ZXMgd2lsbCBiZSBwYXNzZWQgYXMgYXJndW1lbnRzLCBpbiBvcmRlciwgdG8gdGhlIG5leHQgdGFzay5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgdG8gcnVuIG9uY2UgYWxsIHRoZVxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGNvbXBsZXRlZC4gVGhpcyB3aWxsIGJlIHBhc3NlZCB0aGUgcmVzdWx0cyBvZiB0aGUgbGFzdCB0YXNrJ3NcbiAgICAgKiBjYWxsYmFjay4gSW52b2tlZCB3aXRoIChlcnIsIFtyZXN1bHRzXSkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGFzeW5jLndhdGVyZmFsbChbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJywgJ3R3bycpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihhcmcxLCBhcmcyLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gYXJnMSBub3cgZXF1YWxzICdvbmUnIGFuZCBhcmcyIG5vdyBlcXVhbHMgJ3R3bydcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICd0aHJlZScpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihhcmcxLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gYXJnMSBub3cgZXF1YWxzICd0aHJlZSdcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdkb25lJyk7XG4gICAgICogICAgIH1cbiAgICAgKiBdLCBmdW5jdGlvbiAoZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgJ2RvbmUnXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBPciwgd2l0aCBuYW1lZCBmdW5jdGlvbnM6XG4gICAgICogYXN5bmMud2F0ZXJmYWxsKFtcbiAgICAgKiAgICAgbXlGaXJzdEZ1bmN0aW9uLFxuICAgICAqICAgICBteVNlY29uZEZ1bmN0aW9uLFxuICAgICAqICAgICBteUxhc3RGdW5jdGlvbixcbiAgICAgKiBdLCBmdW5jdGlvbiAoZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgJ2RvbmUnXG4gICAgICogfSk7XG4gICAgICogZnVuY3Rpb24gbXlGaXJzdEZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgIGNhbGxiYWNrKG51bGwsICdvbmUnLCAndHdvJyk7XG4gICAgICogfVxuICAgICAqIGZ1bmN0aW9uIG15U2Vjb25kRnVuY3Rpb24oYXJnMSwgYXJnMiwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgLy8gYXJnMSBub3cgZXF1YWxzICdvbmUnIGFuZCBhcmcyIG5vdyBlcXVhbHMgJ3R3bydcbiAgICAgKiAgICAgY2FsbGJhY2sobnVsbCwgJ3RocmVlJyk7XG4gICAgICogfVxuICAgICAqIGZ1bmN0aW9uIG15TGFzdEZ1bmN0aW9uKGFyZzEsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIC8vIGFyZzEgbm93IGVxdWFscyAndGhyZWUnXG4gICAgICogICAgIGNhbGxiYWNrKG51bGwsICdkb25lJyk7XG4gICAgICogfVxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHdhdGVyZmFsbCAodGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNhbGxiYWNrID0gb25jZShjYWxsYmFjayk7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh0YXNrcykpIHJldHVybiBjYWxsYmFjayhuZXcgRXJyb3IoJ0ZpcnN0IGFyZ3VtZW50IHRvIHdhdGVyZmFsbCBtdXN0IGJlIGFuIGFycmF5IG9mIGZ1bmN0aW9ucycpKTtcbiAgICAgICAgaWYgKCF0YXNrcy5sZW5ndGgpIHJldHVybiBjYWxsYmFjaygpO1xuICAgICAgICB2YXIgdGFza0luZGV4ID0gMDtcblxuICAgICAgICBmdW5jdGlvbiBuZXh0VGFzayhhcmdzKSB7XG4gICAgICAgICAgICB2YXIgdGFzayA9IHdyYXBBc3luYyh0YXNrc1t0YXNrSW5kZXgrK10pO1xuICAgICAgICAgICAgdGFzayguLi5hcmdzLCBvbmx5T25jZShuZXh0KSk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBuZXh0KGVyciwgLi4uYXJncykge1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVyblxuICAgICAgICAgICAgaWYgKGVyciB8fCB0YXNrSW5kZXggPT09IHRhc2tzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIsIC4uLmFyZ3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbmV4dFRhc2soYXJncyk7XG4gICAgICAgIH1cblxuICAgICAgICBuZXh0VGFzayhbXSk7XG4gICAgfVxuXG4gICAgdmFyIHdhdGVyZmFsbCQxID0gYXdhaXRpZnkod2F0ZXJmYWxsKTtcblxuICAgIC8qKlxuICAgICAqIEFuIFwiYXN5bmMgZnVuY3Rpb25cIiBpbiB0aGUgY29udGV4dCBvZiBBc3luYyBpcyBhbiBhc3luY2hyb25vdXMgZnVuY3Rpb24gd2l0aFxuICAgICAqIGEgdmFyaWFibGUgbnVtYmVyIG9mIHBhcmFtZXRlcnMsIHdpdGggdGhlIGZpbmFsIHBhcmFtZXRlciBiZWluZyBhIGNhbGxiYWNrLlxuICAgICAqIChgZnVuY3Rpb24gKGFyZzEsIGFyZzIsIC4uLiwgY2FsbGJhY2spIHt9YClcbiAgICAgKiBUaGUgZmluYWwgY2FsbGJhY2sgaXMgb2YgdGhlIGZvcm0gYGNhbGxiYWNrKGVyciwgcmVzdWx0cy4uLilgLCB3aGljaCBtdXN0IGJlXG4gICAgICogY2FsbGVkIG9uY2UgdGhlIGZ1bmN0aW9uIGlzIGNvbXBsZXRlZC4gIFRoZSBjYWxsYmFjayBzaG91bGQgYmUgY2FsbGVkIHdpdGggYVxuICAgICAqIEVycm9yIGFzIGl0cyBmaXJzdCBhcmd1bWVudCB0byBzaWduYWwgdGhhdCBhbiBlcnJvciBvY2N1cnJlZC5cbiAgICAgKiBPdGhlcndpc2UsIGlmIG5vIGVycm9yIG9jY3VycmVkLCBpdCBzaG91bGQgYmUgY2FsbGVkIHdpdGggYG51bGxgIGFzIHRoZSBmaXJzdFxuICAgICAqIGFyZ3VtZW50LCBhbmQgYW55IGFkZGl0aW9uYWwgYHJlc3VsdGAgYXJndW1lbnRzIHRoYXQgbWF5IGFwcGx5LCB0byBzaWduYWxcbiAgICAgKiBzdWNjZXNzZnVsIGNvbXBsZXRpb24uXG4gICAgICogVGhlIGNhbGxiYWNrIG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSwgaWRlYWxseSBvbiBhIGxhdGVyIHRpY2sgb2YgdGhlXG4gICAgICogSmF2YVNjcmlwdCBldmVudCBsb29wLlxuICAgICAqXG4gICAgICogVGhpcyB0eXBlIG9mIGZ1bmN0aW9uIGlzIGFsc28gcmVmZXJyZWQgdG8gYXMgYSBcIk5vZGUtc3R5bGUgYXN5bmMgZnVuY3Rpb25cIixcbiAgICAgKiBvciBhIFwiY29udGludWF0aW9uIHBhc3Npbmctc3R5bGUgZnVuY3Rpb25cIiAoQ1BTKS4gTW9zdCBvZiB0aGUgbWV0aG9kcyBvZiB0aGlzXG4gICAgICogbGlicmFyeSBhcmUgdGhlbXNlbHZlcyBDUFMvTm9kZS1zdHlsZSBhc3luYyBmdW5jdGlvbnMsIG9yIGZ1bmN0aW9ucyB0aGF0XG4gICAgICogcmV0dXJuIENQUy9Ob2RlLXN0eWxlIGFzeW5jIGZ1bmN0aW9ucy5cbiAgICAgKlxuICAgICAqIFdoZXJldmVyIHdlIGFjY2VwdCBhIE5vZGUtc3R5bGUgYXN5bmMgZnVuY3Rpb24sIHdlIGFsc28gZGlyZWN0bHkgYWNjZXB0IGFuXG4gICAgICogW0VTMjAxNyBgYXN5bmNgIGZ1bmN0aW9uXXtAbGluayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9TdGF0ZW1lbnRzL2FzeW5jX2Z1bmN0aW9ufS5cbiAgICAgKiBJbiB0aGlzIGNhc2UsIHRoZSBgYXN5bmNgIGZ1bmN0aW9uIHdpbGwgbm90IGJlIHBhc3NlZCBhIGZpbmFsIGNhbGxiYWNrXG4gICAgICogYXJndW1lbnQsIGFuZCBhbnkgdGhyb3duIGVycm9yIHdpbGwgYmUgdXNlZCBhcyB0aGUgYGVycmAgYXJndW1lbnQgb2YgdGhlXG4gICAgICogaW1wbGljaXQgY2FsbGJhY2ssIGFuZCB0aGUgcmV0dXJuIHZhbHVlIHdpbGwgYmUgdXNlZCBhcyB0aGUgYHJlc3VsdGAgdmFsdWUuXG4gICAgICogKGkuZS4gYSBgcmVqZWN0ZWRgIG9mIHRoZSByZXR1cm5lZCBQcm9taXNlIGJlY29tZXMgdGhlIGBlcnJgIGNhbGxiYWNrXG4gICAgICogYXJndW1lbnQsIGFuZCBhIGByZXNvbHZlZGAgdmFsdWUgYmVjb21lcyB0aGUgYHJlc3VsdGAuKVxuICAgICAqXG4gICAgICogTm90ZSwgZHVlIHRvIEphdmFTY3JpcHQgbGltaXRhdGlvbnMsIHdlIGNhbiBvbmx5IGRldGVjdCBuYXRpdmUgYGFzeW5jYFxuICAgICAqIGZ1bmN0aW9ucyBhbmQgbm90IHRyYW5zcGlsaWVkIGltcGxlbWVudGF0aW9ucy5cbiAgICAgKiBZb3VyIGVudmlyb25tZW50IG11c3QgaGF2ZSBgYXN5bmNgL2Bhd2FpdGAgc3VwcG9ydCBmb3IgdGhpcyB0byB3b3JrLlxuICAgICAqIChlLmcuIE5vZGUgPiB2Ny42LCBvciBhIHJlY2VudCB2ZXJzaW9uIG9mIGEgbW9kZXJuIGJyb3dzZXIpLlxuICAgICAqIElmIHlvdSBhcmUgdXNpbmcgYGFzeW5jYCBmdW5jdGlvbnMgdGhyb3VnaCBhIHRyYW5zcGlsZXIgKGUuZy4gQmFiZWwpLCB5b3VcbiAgICAgKiBtdXN0IHN0aWxsIHdyYXAgdGhlIGZ1bmN0aW9uIHdpdGggW2FzeW5jaWZ5XXtAbGluayBtb2R1bGU6VXRpbHMuYXN5bmNpZnl9LFxuICAgICAqIGJlY2F1c2UgdGhlIGBhc3luYyBmdW5jdGlvbmAgd2lsbCBiZSBjb21waWxlZCB0byBhbiBvcmRpbmFyeSBmdW5jdGlvbiB0aGF0XG4gICAgICogcmV0dXJucyBhIHByb21pc2UuXG4gICAgICpcbiAgICAgKiBAdHlwZWRlZiB7RnVuY3Rpb259IEFzeW5jRnVuY3Rpb25cbiAgICAgKiBAc3RhdGljXG4gICAgICovXG5cbiAgICB2YXIgaW5kZXggPSB7XG4gICAgICAgIGFwcGx5LFxuICAgICAgICBhcHBseUVhY2g6IGFwcGx5RWFjaCQxLFxuICAgICAgICBhcHBseUVhY2hTZXJpZXMsXG4gICAgICAgIGFzeW5jaWZ5LFxuICAgICAgICBhdXRvLFxuICAgICAgICBhdXRvSW5qZWN0LFxuICAgICAgICBjYXJnbyxcbiAgICAgICAgY2FyZ29RdWV1ZTogY2FyZ28kMSxcbiAgICAgICAgY29tcG9zZSxcbiAgICAgICAgY29uY2F0OiBjb25jYXQkMSxcbiAgICAgICAgY29uY2F0TGltaXQ6IGNvbmNhdExpbWl0JDEsXG4gICAgICAgIGNvbmNhdFNlcmllczogY29uY2F0U2VyaWVzJDEsXG4gICAgICAgIGNvbnN0YW50LFxuICAgICAgICBkZXRlY3Q6IGRldGVjdCQxLFxuICAgICAgICBkZXRlY3RMaW1pdDogZGV0ZWN0TGltaXQkMSxcbiAgICAgICAgZGV0ZWN0U2VyaWVzOiBkZXRlY3RTZXJpZXMkMSxcbiAgICAgICAgZGlyLFxuICAgICAgICBkb1VudGlsLFxuICAgICAgICBkb1doaWxzdDogZG9XaGlsc3QkMSxcbiAgICAgICAgZWFjaCxcbiAgICAgICAgZWFjaExpbWl0OiBlYWNoTGltaXQkMixcbiAgICAgICAgZWFjaE9mOiBlYWNoT2YkMSxcbiAgICAgICAgZWFjaE9mTGltaXQ6IGVhY2hPZkxpbWl0JDIsXG4gICAgICAgIGVhY2hPZlNlcmllczogZWFjaE9mU2VyaWVzJDEsXG4gICAgICAgIGVhY2hTZXJpZXM6IGVhY2hTZXJpZXMkMSxcbiAgICAgICAgZW5zdXJlQXN5bmMsXG4gICAgICAgIGV2ZXJ5OiBldmVyeSQxLFxuICAgICAgICBldmVyeUxpbWl0OiBldmVyeUxpbWl0JDEsXG4gICAgICAgIGV2ZXJ5U2VyaWVzOiBldmVyeVNlcmllcyQxLFxuICAgICAgICBmaWx0ZXI6IGZpbHRlciQxLFxuICAgICAgICBmaWx0ZXJMaW1pdDogZmlsdGVyTGltaXQkMSxcbiAgICAgICAgZmlsdGVyU2VyaWVzOiBmaWx0ZXJTZXJpZXMkMSxcbiAgICAgICAgZm9yZXZlcjogZm9yZXZlciQxLFxuICAgICAgICBncm91cEJ5LFxuICAgICAgICBncm91cEJ5TGltaXQ6IGdyb3VwQnlMaW1pdCQxLFxuICAgICAgICBncm91cEJ5U2VyaWVzLFxuICAgICAgICBsb2csXG4gICAgICAgIG1hcDogbWFwJDEsXG4gICAgICAgIG1hcExpbWl0OiBtYXBMaW1pdCQxLFxuICAgICAgICBtYXBTZXJpZXM6IG1hcFNlcmllcyQxLFxuICAgICAgICBtYXBWYWx1ZXMsXG4gICAgICAgIG1hcFZhbHVlc0xpbWl0OiBtYXBWYWx1ZXNMaW1pdCQxLFxuICAgICAgICBtYXBWYWx1ZXNTZXJpZXMsXG4gICAgICAgIG1lbW9pemUsXG4gICAgICAgIG5leHRUaWNrLFxuICAgICAgICBwYXJhbGxlbDogcGFyYWxsZWwkMSxcbiAgICAgICAgcGFyYWxsZWxMaW1pdCxcbiAgICAgICAgcHJpb3JpdHlRdWV1ZSxcbiAgICAgICAgcXVldWU6IHF1ZXVlJDEsXG4gICAgICAgIHJhY2U6IHJhY2UkMSxcbiAgICAgICAgcmVkdWNlOiByZWR1Y2UkMSxcbiAgICAgICAgcmVkdWNlUmlnaHQsXG4gICAgICAgIHJlZmxlY3QsXG4gICAgICAgIHJlZmxlY3RBbGwsXG4gICAgICAgIHJlamVjdDogcmVqZWN0JDIsXG4gICAgICAgIHJlamVjdExpbWl0OiByZWplY3RMaW1pdCQxLFxuICAgICAgICByZWplY3RTZXJpZXM6IHJlamVjdFNlcmllcyQxLFxuICAgICAgICByZXRyeSxcbiAgICAgICAgcmV0cnlhYmxlLFxuICAgICAgICBzZXEsXG4gICAgICAgIHNlcmllcyxcbiAgICAgICAgc2V0SW1tZWRpYXRlOiBzZXRJbW1lZGlhdGUkMSxcbiAgICAgICAgc29tZTogc29tZSQxLFxuICAgICAgICBzb21lTGltaXQ6IHNvbWVMaW1pdCQxLFxuICAgICAgICBzb21lU2VyaWVzOiBzb21lU2VyaWVzJDEsXG4gICAgICAgIHNvcnRCeTogc29ydEJ5JDEsXG4gICAgICAgIHRpbWVvdXQsXG4gICAgICAgIHRpbWVzLFxuICAgICAgICB0aW1lc0xpbWl0LFxuICAgICAgICB0aW1lc1NlcmllcyxcbiAgICAgICAgdHJhbnNmb3JtLFxuICAgICAgICB0cnlFYWNoOiB0cnlFYWNoJDEsXG4gICAgICAgIHVubWVtb2l6ZSxcbiAgICAgICAgdW50aWwsXG4gICAgICAgIHdhdGVyZmFsbDogd2F0ZXJmYWxsJDEsXG4gICAgICAgIHdoaWxzdDogd2hpbHN0JDEsXG5cbiAgICAgICAgLy8gYWxpYXNlc1xuICAgICAgICBhbGw6IGV2ZXJ5JDEsXG4gICAgICAgIGFsbExpbWl0OiBldmVyeUxpbWl0JDEsXG4gICAgICAgIGFsbFNlcmllczogZXZlcnlTZXJpZXMkMSxcbiAgICAgICAgYW55OiBzb21lJDEsXG4gICAgICAgIGFueUxpbWl0OiBzb21lTGltaXQkMSxcbiAgICAgICAgYW55U2VyaWVzOiBzb21lU2VyaWVzJDEsXG4gICAgICAgIGZpbmQ6IGRldGVjdCQxLFxuICAgICAgICBmaW5kTGltaXQ6IGRldGVjdExpbWl0JDEsXG4gICAgICAgIGZpbmRTZXJpZXM6IGRldGVjdFNlcmllcyQxLFxuICAgICAgICBmbGF0TWFwOiBjb25jYXQkMSxcbiAgICAgICAgZmxhdE1hcExpbWl0OiBjb25jYXRMaW1pdCQxLFxuICAgICAgICBmbGF0TWFwU2VyaWVzOiBjb25jYXRTZXJpZXMkMSxcbiAgICAgICAgZm9yRWFjaDogZWFjaCxcbiAgICAgICAgZm9yRWFjaFNlcmllczogZWFjaFNlcmllcyQxLFxuICAgICAgICBmb3JFYWNoTGltaXQ6IGVhY2hMaW1pdCQyLFxuICAgICAgICBmb3JFYWNoT2Y6IGVhY2hPZiQxLFxuICAgICAgICBmb3JFYWNoT2ZTZXJpZXM6IGVhY2hPZlNlcmllcyQxLFxuICAgICAgICBmb3JFYWNoT2ZMaW1pdDogZWFjaE9mTGltaXQkMixcbiAgICAgICAgaW5qZWN0OiByZWR1Y2UkMSxcbiAgICAgICAgZm9sZGw6IHJlZHVjZSQxLFxuICAgICAgICBmb2xkcjogcmVkdWNlUmlnaHQsXG4gICAgICAgIHNlbGVjdDogZmlsdGVyJDEsXG4gICAgICAgIHNlbGVjdExpbWl0OiBmaWx0ZXJMaW1pdCQxLFxuICAgICAgICBzZWxlY3RTZXJpZXM6IGZpbHRlclNlcmllcyQxLFxuICAgICAgICB3cmFwU3luYzogYXN5bmNpZnksXG4gICAgICAgIGR1cmluZzogd2hpbHN0JDEsXG4gICAgICAgIGRvRHVyaW5nOiBkb1doaWxzdCQxXG4gICAgfTtcblxuICAgIGV4cG9ydHMuZGVmYXVsdCA9IGluZGV4O1xuICAgIGV4cG9ydHMuYXBwbHkgPSBhcHBseTtcbiAgICBleHBvcnRzLmFwcGx5RWFjaCA9IGFwcGx5RWFjaCQxO1xuICAgIGV4cG9ydHMuYXBwbHlFYWNoU2VyaWVzID0gYXBwbHlFYWNoU2VyaWVzO1xuICAgIGV4cG9ydHMuYXN5bmNpZnkgPSBhc3luY2lmeTtcbiAgICBleHBvcnRzLmF1dG8gPSBhdXRvO1xuICAgIGV4cG9ydHMuYXV0b0luamVjdCA9IGF1dG9JbmplY3Q7XG4gICAgZXhwb3J0cy5jYXJnbyA9IGNhcmdvO1xuICAgIGV4cG9ydHMuY2FyZ29RdWV1ZSA9IGNhcmdvJDE7XG4gICAgZXhwb3J0cy5jb21wb3NlID0gY29tcG9zZTtcbiAgICBleHBvcnRzLmNvbmNhdCA9IGNvbmNhdCQxO1xuICAgIGV4cG9ydHMuY29uY2F0TGltaXQgPSBjb25jYXRMaW1pdCQxO1xuICAgIGV4cG9ydHMuY29uY2F0U2VyaWVzID0gY29uY2F0U2VyaWVzJDE7XG4gICAgZXhwb3J0cy5jb25zdGFudCA9IGNvbnN0YW50O1xuICAgIGV4cG9ydHMuZGV0ZWN0ID0gZGV0ZWN0JDE7XG4gICAgZXhwb3J0cy5kZXRlY3RMaW1pdCA9IGRldGVjdExpbWl0JDE7XG4gICAgZXhwb3J0cy5kZXRlY3RTZXJpZXMgPSBkZXRlY3RTZXJpZXMkMTtcbiAgICBleHBvcnRzLmRpciA9IGRpcjtcbiAgICBleHBvcnRzLmRvVW50aWwgPSBkb1VudGlsO1xuICAgIGV4cG9ydHMuZG9XaGlsc3QgPSBkb1doaWxzdCQxO1xuICAgIGV4cG9ydHMuZWFjaCA9IGVhY2g7XG4gICAgZXhwb3J0cy5lYWNoTGltaXQgPSBlYWNoTGltaXQkMjtcbiAgICBleHBvcnRzLmVhY2hPZiA9IGVhY2hPZiQxO1xuICAgIGV4cG9ydHMuZWFjaE9mTGltaXQgPSBlYWNoT2ZMaW1pdCQyO1xuICAgIGV4cG9ydHMuZWFjaE9mU2VyaWVzID0gZWFjaE9mU2VyaWVzJDE7XG4gICAgZXhwb3J0cy5lYWNoU2VyaWVzID0gZWFjaFNlcmllcyQxO1xuICAgIGV4cG9ydHMuZW5zdXJlQXN5bmMgPSBlbnN1cmVBc3luYztcbiAgICBleHBvcnRzLmV2ZXJ5ID0gZXZlcnkkMTtcbiAgICBleHBvcnRzLmV2ZXJ5TGltaXQgPSBldmVyeUxpbWl0JDE7XG4gICAgZXhwb3J0cy5ldmVyeVNlcmllcyA9IGV2ZXJ5U2VyaWVzJDE7XG4gICAgZXhwb3J0cy5maWx0ZXIgPSBmaWx0ZXIkMTtcbiAgICBleHBvcnRzLmZpbHRlckxpbWl0ID0gZmlsdGVyTGltaXQkMTtcbiAgICBleHBvcnRzLmZpbHRlclNlcmllcyA9IGZpbHRlclNlcmllcyQxO1xuICAgIGV4cG9ydHMuZm9yZXZlciA9IGZvcmV2ZXIkMTtcbiAgICBleHBvcnRzLmdyb3VwQnkgPSBncm91cEJ5O1xuICAgIGV4cG9ydHMuZ3JvdXBCeUxpbWl0ID0gZ3JvdXBCeUxpbWl0JDE7XG4gICAgZXhwb3J0cy5ncm91cEJ5U2VyaWVzID0gZ3JvdXBCeVNlcmllcztcbiAgICBleHBvcnRzLmxvZyA9IGxvZztcbiAgICBleHBvcnRzLm1hcCA9IG1hcCQxO1xuICAgIGV4cG9ydHMubWFwTGltaXQgPSBtYXBMaW1pdCQxO1xuICAgIGV4cG9ydHMubWFwU2VyaWVzID0gbWFwU2VyaWVzJDE7XG4gICAgZXhwb3J0cy5tYXBWYWx1ZXMgPSBtYXBWYWx1ZXM7XG4gICAgZXhwb3J0cy5tYXBWYWx1ZXNMaW1pdCA9IG1hcFZhbHVlc0xpbWl0JDE7XG4gICAgZXhwb3J0cy5tYXBWYWx1ZXNTZXJpZXMgPSBtYXBWYWx1ZXNTZXJpZXM7XG4gICAgZXhwb3J0cy5tZW1vaXplID0gbWVtb2l6ZTtcbiAgICBleHBvcnRzLm5leHRUaWNrID0gbmV4dFRpY2s7XG4gICAgZXhwb3J0cy5wYXJhbGxlbCA9IHBhcmFsbGVsJDE7XG4gICAgZXhwb3J0cy5wYXJhbGxlbExpbWl0ID0gcGFyYWxsZWxMaW1pdDtcbiAgICBleHBvcnRzLnByaW9yaXR5UXVldWUgPSBwcmlvcml0eVF1ZXVlO1xuICAgIGV4cG9ydHMucXVldWUgPSBxdWV1ZSQxO1xuICAgIGV4cG9ydHMucmFjZSA9IHJhY2UkMTtcbiAgICBleHBvcnRzLnJlZHVjZSA9IHJlZHVjZSQxO1xuICAgIGV4cG9ydHMucmVkdWNlUmlnaHQgPSByZWR1Y2VSaWdodDtcbiAgICBleHBvcnRzLnJlZmxlY3QgPSByZWZsZWN0O1xuICAgIGV4cG9ydHMucmVmbGVjdEFsbCA9IHJlZmxlY3RBbGw7XG4gICAgZXhwb3J0cy5yZWplY3QgPSByZWplY3QkMjtcbiAgICBleHBvcnRzLnJlamVjdExpbWl0ID0gcmVqZWN0TGltaXQkMTtcbiAgICBleHBvcnRzLnJlamVjdFNlcmllcyA9IHJlamVjdFNlcmllcyQxO1xuICAgIGV4cG9ydHMucmV0cnkgPSByZXRyeTtcbiAgICBleHBvcnRzLnJldHJ5YWJsZSA9IHJldHJ5YWJsZTtcbiAgICBleHBvcnRzLnNlcSA9IHNlcTtcbiAgICBleHBvcnRzLnNlcmllcyA9IHNlcmllcztcbiAgICBleHBvcnRzLnNldEltbWVkaWF0ZSA9IHNldEltbWVkaWF0ZSQxO1xuICAgIGV4cG9ydHMuc29tZSA9IHNvbWUkMTtcbiAgICBleHBvcnRzLnNvbWVMaW1pdCA9IHNvbWVMaW1pdCQxO1xuICAgIGV4cG9ydHMuc29tZVNlcmllcyA9IHNvbWVTZXJpZXMkMTtcbiAgICBleHBvcnRzLnNvcnRCeSA9IHNvcnRCeSQxO1xuICAgIGV4cG9ydHMudGltZW91dCA9IHRpbWVvdXQ7XG4gICAgZXhwb3J0cy50aW1lcyA9IHRpbWVzO1xuICAgIGV4cG9ydHMudGltZXNMaW1pdCA9IHRpbWVzTGltaXQ7XG4gICAgZXhwb3J0cy50aW1lc1NlcmllcyA9IHRpbWVzU2VyaWVzO1xuICAgIGV4cG9ydHMudHJhbnNmb3JtID0gdHJhbnNmb3JtO1xuICAgIGV4cG9ydHMudHJ5RWFjaCA9IHRyeUVhY2gkMTtcbiAgICBleHBvcnRzLnVubWVtb2l6ZSA9IHVubWVtb2l6ZTtcbiAgICBleHBvcnRzLnVudGlsID0gdW50aWw7XG4gICAgZXhwb3J0cy53YXRlcmZhbGwgPSB3YXRlcmZhbGwkMTtcbiAgICBleHBvcnRzLndoaWxzdCA9IHdoaWxzdCQxO1xuICAgIGV4cG9ydHMuYWxsID0gZXZlcnkkMTtcbiAgICBleHBvcnRzLmFsbExpbWl0ID0gZXZlcnlMaW1pdCQxO1xuICAgIGV4cG9ydHMuYWxsU2VyaWVzID0gZXZlcnlTZXJpZXMkMTtcbiAgICBleHBvcnRzLmFueSA9IHNvbWUkMTtcbiAgICBleHBvcnRzLmFueUxpbWl0ID0gc29tZUxpbWl0JDE7XG4gICAgZXhwb3J0cy5hbnlTZXJpZXMgPSBzb21lU2VyaWVzJDE7XG4gICAgZXhwb3J0cy5maW5kID0gZGV0ZWN0JDE7XG4gICAgZXhwb3J0cy5maW5kTGltaXQgPSBkZXRlY3RMaW1pdCQxO1xuICAgIGV4cG9ydHMuZmluZFNlcmllcyA9IGRldGVjdFNlcmllcyQxO1xuICAgIGV4cG9ydHMuZmxhdE1hcCA9IGNvbmNhdCQxO1xuICAgIGV4cG9ydHMuZmxhdE1hcExpbWl0ID0gY29uY2F0TGltaXQkMTtcbiAgICBleHBvcnRzLmZsYXRNYXBTZXJpZXMgPSBjb25jYXRTZXJpZXMkMTtcbiAgICBleHBvcnRzLmZvckVhY2ggPSBlYWNoO1xuICAgIGV4cG9ydHMuZm9yRWFjaFNlcmllcyA9IGVhY2hTZXJpZXMkMTtcbiAgICBleHBvcnRzLmZvckVhY2hMaW1pdCA9IGVhY2hMaW1pdCQyO1xuICAgIGV4cG9ydHMuZm9yRWFjaE9mID0gZWFjaE9mJDE7XG4gICAgZXhwb3J0cy5mb3JFYWNoT2ZTZXJpZXMgPSBlYWNoT2ZTZXJpZXMkMTtcbiAgICBleHBvcnRzLmZvckVhY2hPZkxpbWl0ID0gZWFjaE9mTGltaXQkMjtcbiAgICBleHBvcnRzLmluamVjdCA9IHJlZHVjZSQxO1xuICAgIGV4cG9ydHMuZm9sZGwgPSByZWR1Y2UkMTtcbiAgICBleHBvcnRzLmZvbGRyID0gcmVkdWNlUmlnaHQ7XG4gICAgZXhwb3J0cy5zZWxlY3QgPSBmaWx0ZXIkMTtcbiAgICBleHBvcnRzLnNlbGVjdExpbWl0ID0gZmlsdGVyTGltaXQkMTtcbiAgICBleHBvcnRzLnNlbGVjdFNlcmllcyA9IGZpbHRlclNlcmllcyQxO1xuICAgIGV4cG9ydHMud3JhcFN5bmMgPSBhc3luY2lmeTtcbiAgICBleHBvcnRzLmR1cmluZyA9IHdoaWxzdCQxO1xuICAgIGV4cG9ydHMuZG9EdXJpbmcgPSBkb1doaWxzdCQxO1xuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcblxufSkpKTtcbiIsICJjb25zdCB7IGhhc093blByb3BlcnR5IH0gPSBPYmplY3QucHJvdG90eXBlXG5cbmNvbnN0IGVvbCA9IHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJyAmJlxuICBwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInID8gJ1xcclxcbicgOiAnXFxuJ1xuXG5jb25zdCBlbmNvZGUgPSAob2JqLCBvcHQpID0+IHtcbiAgY29uc3QgY2hpbGRyZW4gPSBbXVxuICBsZXQgb3V0ID0gJydcblxuICBpZiAodHlwZW9mIG9wdCA9PT0gJ3N0cmluZycpIHtcbiAgICBvcHQgPSB7XG4gICAgICBzZWN0aW9uOiBvcHQsXG4gICAgICB3aGl0ZXNwYWNlOiBmYWxzZSxcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgb3B0ID0gb3B0IHx8IE9iamVjdC5jcmVhdGUobnVsbClcbiAgICBvcHQud2hpdGVzcGFjZSA9IG9wdC53aGl0ZXNwYWNlID09PSB0cnVlXG4gIH1cblxuICBjb25zdCBzZXBhcmF0b3IgPSBvcHQud2hpdGVzcGFjZSA/ICcgPSAnIDogJz0nXG5cbiAgZm9yIChjb25zdCBrIG9mIE9iamVjdC5rZXlzKG9iaikpIHtcbiAgICBjb25zdCB2YWwgPSBvYmpba11cbiAgICBpZiAodmFsICYmIEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHZhbClcbiAgICAgICAgb3V0ICs9IHNhZmUoayArICdbXScpICsgc2VwYXJhdG9yICsgc2FmZShpdGVtKSArICdcXG4nXG4gICAgfSBlbHNlIGlmICh2YWwgJiYgdHlwZW9mIHZhbCA9PT0gJ29iamVjdCcpXG4gICAgICBjaGlsZHJlbi5wdXNoKGspXG4gICAgZWxzZVxuICAgICAgb3V0ICs9IHNhZmUoaykgKyBzZXBhcmF0b3IgKyBzYWZlKHZhbCkgKyBlb2xcbiAgfVxuXG4gIGlmIChvcHQuc2VjdGlvbiAmJiBvdXQubGVuZ3RoKVxuICAgIG91dCA9ICdbJyArIHNhZmUob3B0LnNlY3Rpb24pICsgJ10nICsgZW9sICsgb3V0XG5cbiAgZm9yIChjb25zdCBrIG9mIGNoaWxkcmVuKSB7XG4gICAgY29uc3QgbmsgPSBkb3RTcGxpdChrKS5qb2luKCdcXFxcLicpXG4gICAgY29uc3Qgc2VjdGlvbiA9IChvcHQuc2VjdGlvbiA/IG9wdC5zZWN0aW9uICsgJy4nIDogJycpICsgbmtcbiAgICBjb25zdCB7IHdoaXRlc3BhY2UgfSA9IG9wdFxuICAgIGNvbnN0IGNoaWxkID0gZW5jb2RlKG9ialtrXSwge1xuICAgICAgc2VjdGlvbixcbiAgICAgIHdoaXRlc3BhY2UsXG4gICAgfSlcbiAgICBpZiAob3V0Lmxlbmd0aCAmJiBjaGlsZC5sZW5ndGgpXG4gICAgICBvdXQgKz0gZW9sXG5cbiAgICBvdXQgKz0gY2hpbGRcbiAgfVxuXG4gIHJldHVybiBvdXRcbn1cblxuY29uc3QgZG90U3BsaXQgPSBzdHIgPT5cbiAgc3RyLnJlcGxhY2UoL1xcMS9nLCAnXFx1MDAwMkxJVEVSQUxcXFxcMUxJVEVSQUxcXHUwMDAyJylcbiAgICAucmVwbGFjZSgvXFxcXFxcLi9nLCAnXFx1MDAwMScpXG4gICAgLnNwbGl0KC9cXC4vKVxuICAgIC5tYXAocGFydCA9PlxuICAgICAgcGFydC5yZXBsYWNlKC9cXDEvZywgJ1xcXFwuJylcbiAgICAgICAgLnJlcGxhY2UoL1xcMkxJVEVSQUxcXFxcMUxJVEVSQUxcXDIvZywgJ1xcdTAwMDEnKSlcblxuY29uc3QgZGVjb2RlID0gc3RyID0+IHtcbiAgY29uc3Qgb3V0ID0gT2JqZWN0LmNyZWF0ZShudWxsKVxuICBsZXQgcCA9IG91dFxuICBsZXQgc2VjdGlvbiA9IG51bGxcbiAgLy8gICAgICAgICAgc2VjdGlvbiAgICAgfGtleSAgICAgID0gdmFsdWVcbiAgY29uc3QgcmUgPSAvXlxcWyhbXlxcXV0qKVxcXSR8XihbXj1dKykoPSguKikpPyQvaVxuICBjb25zdCBsaW5lcyA9IHN0ci5zcGxpdCgvW1xcclxcbl0rL2cpXG5cbiAgZm9yIChjb25zdCBsaW5lIG9mIGxpbmVzKSB7XG4gICAgaWYgKCFsaW5lIHx8IGxpbmUubWF0Y2goL15cXHMqWzsjXS8pKVxuICAgICAgY29udGludWVcbiAgICBjb25zdCBtYXRjaCA9IGxpbmUubWF0Y2gocmUpXG4gICAgaWYgKCFtYXRjaClcbiAgICAgIGNvbnRpbnVlXG4gICAgaWYgKG1hdGNoWzFdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNlY3Rpb24gPSB1bnNhZmUobWF0Y2hbMV0pXG4gICAgICBpZiAoc2VjdGlvbiA9PT0gJ19fcHJvdG9fXycpIHtcbiAgICAgICAgLy8gbm90IGFsbG93ZWRcbiAgICAgICAgLy8ga2VlcCBwYXJzaW5nIHRoZSBzZWN0aW9uLCBidXQgZG9uJ3QgYXR0YWNoIGl0LlxuICAgICAgICBwID0gT2JqZWN0LmNyZWF0ZShudWxsKVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgcCA9IG91dFtzZWN0aW9uXSA9IG91dFtzZWN0aW9uXSB8fCBPYmplY3QuY3JlYXRlKG51bGwpXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCBrZXlSYXcgPSB1bnNhZmUobWF0Y2hbMl0pXG4gICAgY29uc3QgaXNBcnJheSA9IGtleVJhdy5sZW5ndGggPiAyICYmIGtleVJhdy5zbGljZSgtMikgPT09ICdbXSdcbiAgICBjb25zdCBrZXkgPSBpc0FycmF5ID8ga2V5UmF3LnNsaWNlKDAsIC0yKSA6IGtleVJhd1xuICAgIGlmIChrZXkgPT09ICdfX3Byb3RvX18nKVxuICAgICAgY29udGludWVcbiAgICBjb25zdCB2YWx1ZVJhdyA9IG1hdGNoWzNdID8gdW5zYWZlKG1hdGNoWzRdKSA6IHRydWVcbiAgICBjb25zdCB2YWx1ZSA9IHZhbHVlUmF3ID09PSAndHJ1ZScgfHxcbiAgICAgIHZhbHVlUmF3ID09PSAnZmFsc2UnIHx8XG4gICAgICB2YWx1ZVJhdyA9PT0gJ251bGwnID8gSlNPTi5wYXJzZSh2YWx1ZVJhdylcbiAgICAgIDogdmFsdWVSYXdcblxuICAgIC8vIENvbnZlcnQga2V5cyB3aXRoICdbXScgc3VmZml4IHRvIGFuIGFycmF5XG4gICAgaWYgKGlzQXJyYXkpIHtcbiAgICAgIGlmICghaGFzT3duUHJvcGVydHkuY2FsbChwLCBrZXkpKVxuICAgICAgICBwW2tleV0gPSBbXVxuICAgICAgZWxzZSBpZiAoIUFycmF5LmlzQXJyYXkocFtrZXldKSlcbiAgICAgICAgcFtrZXldID0gW3Bba2V5XV1cbiAgICB9XG5cbiAgICAvLyBzYWZlZ3VhcmQgYWdhaW5zdCByZXNldHRpbmcgYSBwcmV2aW91c2x5IGRlZmluZWRcbiAgICAvLyBhcnJheSBieSBhY2NpZGVudGFsbHkgZm9yZ2V0dGluZyB0aGUgYnJhY2tldHNcbiAgICBpZiAoQXJyYXkuaXNBcnJheShwW2tleV0pKVxuICAgICAgcFtrZXldLnB1c2godmFsdWUpXG4gICAgZWxzZVxuICAgICAgcFtrZXldID0gdmFsdWVcbiAgfVxuXG4gIC8vIHthOnt5OjF9LFwiYS5iXCI6e3g6Mn19IC0tPiB7YTp7eToxLGI6e3g6Mn19fVxuICAvLyB1c2UgYSBmaWx0ZXIgdG8gcmV0dXJuIHRoZSBrZXlzIHRoYXQgaGF2ZSB0byBiZSBkZWxldGVkLlxuICBjb25zdCByZW1vdmUgPSBbXVxuICBmb3IgKGNvbnN0IGsgb2YgT2JqZWN0LmtleXMob3V0KSkge1xuICAgIGlmICghaGFzT3duUHJvcGVydHkuY2FsbChvdXQsIGspIHx8XG4gICAgICAgIHR5cGVvZiBvdXRba10gIT09ICdvYmplY3QnIHx8XG4gICAgICAgIEFycmF5LmlzQXJyYXkob3V0W2tdKSlcbiAgICAgIGNvbnRpbnVlXG5cbiAgICAvLyBzZWUgaWYgdGhlIHBhcmVudCBzZWN0aW9uIGlzIGFsc28gYW4gb2JqZWN0LlxuICAgIC8vIGlmIHNvLCBhZGQgaXQgdG8gdGhhdCwgYW5kIG1hcmsgdGhpcyBvbmUgZm9yIGRlbGV0aW9uXG4gICAgY29uc3QgcGFydHMgPSBkb3RTcGxpdChrKVxuICAgIGxldCBwID0gb3V0XG4gICAgY29uc3QgbCA9IHBhcnRzLnBvcCgpXG4gICAgY29uc3QgbmwgPSBsLnJlcGxhY2UoL1xcXFxcXC4vZywgJy4nKVxuICAgIGZvciAoY29uc3QgcGFydCBvZiBwYXJ0cykge1xuICAgICAgaWYgKHBhcnQgPT09ICdfX3Byb3RvX18nKVxuICAgICAgICBjb250aW51ZVxuICAgICAgaWYgKCFoYXNPd25Qcm9wZXJ0eS5jYWxsKHAsIHBhcnQpIHx8IHR5cGVvZiBwW3BhcnRdICE9PSAnb2JqZWN0JylcbiAgICAgICAgcFtwYXJ0XSA9IE9iamVjdC5jcmVhdGUobnVsbClcbiAgICAgIHAgPSBwW3BhcnRdXG4gICAgfVxuICAgIGlmIChwID09PSBvdXQgJiYgbmwgPT09IGwpXG4gICAgICBjb250aW51ZVxuXG4gICAgcFtubF0gPSBvdXRba11cbiAgICByZW1vdmUucHVzaChrKVxuICB9XG4gIGZvciAoY29uc3QgZGVsIG9mIHJlbW92ZSlcbiAgICBkZWxldGUgb3V0W2RlbF1cblxuICByZXR1cm4gb3V0XG59XG5cbmNvbnN0IGlzUXVvdGVkID0gdmFsID0+XG4gICh2YWwuY2hhckF0KDApID09PSAnXCInICYmIHZhbC5zbGljZSgtMSkgPT09ICdcIicpIHx8XG4gICAgKHZhbC5jaGFyQXQoMCkgPT09IFwiJ1wiICYmIHZhbC5zbGljZSgtMSkgPT09IFwiJ1wiKVxuXG5jb25zdCBzYWZlID0gdmFsID0+XG4gICh0eXBlb2YgdmFsICE9PSAnc3RyaW5nJyB8fFxuICAgIHZhbC5tYXRjaCgvWz1cXHJcXG5dLykgfHxcbiAgICB2YWwubWF0Y2goL15cXFsvKSB8fFxuICAgICh2YWwubGVuZ3RoID4gMSAmJlxuICAgICBpc1F1b3RlZCh2YWwpKSB8fFxuICAgIHZhbCAhPT0gdmFsLnRyaW0oKSlcbiAgICA/IEpTT04uc3RyaW5naWZ5KHZhbClcbiAgICA6IHZhbC5yZXBsYWNlKC87L2csICdcXFxcOycpLnJlcGxhY2UoLyMvZywgJ1xcXFwjJylcblxuY29uc3QgdW5zYWZlID0gKHZhbCwgZG9VbmVzYykgPT4ge1xuICB2YWwgPSAodmFsIHx8ICcnKS50cmltKClcbiAgaWYgKGlzUXVvdGVkKHZhbCkpIHtcbiAgICAvLyByZW1vdmUgdGhlIHNpbmdsZSBxdW90ZXMgYmVmb3JlIGNhbGxpbmcgSlNPTi5wYXJzZVxuICAgIGlmICh2YWwuY2hhckF0KDApID09PSBcIidcIilcbiAgICAgIHZhbCA9IHZhbC5zdWJzdHIoMSwgdmFsLmxlbmd0aCAtIDIpXG5cbiAgICB0cnkge1xuICAgICAgdmFsID0gSlNPTi5wYXJzZSh2YWwpXG4gICAgfSBjYXRjaCAoXykge31cbiAgfSBlbHNlIHtcbiAgICAvLyB3YWxrIHRoZSB2YWwgdG8gZmluZCB0aGUgZmlyc3Qgbm90LWVzY2FwZWQgOyBjaGFyYWN0ZXJcbiAgICBsZXQgZXNjID0gZmFsc2VcbiAgICBsZXQgdW5lc2MgPSAnJ1xuICAgIGZvciAobGV0IGkgPSAwLCBsID0gdmFsLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgY29uc3QgYyA9IHZhbC5jaGFyQXQoaSlcbiAgICAgIGlmIChlc2MpIHtcbiAgICAgICAgaWYgKCdcXFxcOyMnLmluZGV4T2YoYykgIT09IC0xKVxuICAgICAgICAgIHVuZXNjICs9IGNcbiAgICAgICAgZWxzZVxuICAgICAgICAgIHVuZXNjICs9ICdcXFxcJyArIGNcblxuICAgICAgICBlc2MgPSBmYWxzZVxuICAgICAgfSBlbHNlIGlmICgnOyMnLmluZGV4T2YoYykgIT09IC0xKVxuICAgICAgICBicmVha1xuICAgICAgZWxzZSBpZiAoYyA9PT0gJ1xcXFwnKVxuICAgICAgICBlc2MgPSB0cnVlXG4gICAgICBlbHNlXG4gICAgICAgIHVuZXNjICs9IGNcbiAgICB9XG4gICAgaWYgKGVzYylcbiAgICAgIHVuZXNjICs9ICdcXFxcJ1xuXG4gICAgcmV0dXJuIHVuZXNjLnRyaW0oKVxuICB9XG4gIHJldHVybiB2YWxcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHBhcnNlOiBkZWNvZGUsXG4gIGRlY29kZSxcbiAgc3RyaW5naWZ5OiBlbmNvZGUsXG4gIGVuY29kZSxcbiAgc2FmZSxcbiAgdW5zYWZlLFxufVxuIiwgIi8qXG4gKiBmb3JtYXRzLmpzOiBEZWZhdWx0IGZvcm1hdHMgc3VwcG9ydGVkIGJ5IG5jb25mXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGluaSA9IHJlcXVpcmUoJ2luaScpO1xuXG52YXIgZm9ybWF0cyA9IGV4cG9ydHM7XG5cbi8vXG4vLyAjIyMgQGpzb25cbi8vIFN0YW5kYXJkIEpTT04gZm9ybWF0IHdoaWNoIHByZXR0eSBwcmludHMgYC5zdHJpbmdpZnkoKWAuXG4vL1xuZm9ybWF0cy5qc29uID0ge1xuICBzdHJpbmdpZnk6IGZ1bmN0aW9uIChvYmosIHJlcGxhY2VyLCBzcGFjaW5nKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG9iaiwgcmVwbGFjZXIgfHwgbnVsbCwgc3BhY2luZyB8fCAyKVxuICB9LFxuICBwYXJzZTogSlNPTi5wYXJzZVxufTtcblxuLy9cbi8vICMjIyBAaW5pXG4vLyBTdGFuZGFyZCBJTkkgZm9ybWF0IHN1cHBsaWVkIGZyb20gdGhlIGBpbmlgIG1vZHVsZVxuLy8gaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9JTklfZmlsZVxuLy9cbmZvcm1hdHMuaW5pID0gaW5pO1xuIiwgIi8qXG4gKiBtZW1vcnkuanM6IFNpbXBsZSBtZW1vcnkgc3RvcmFnZSBlbmdpbmUgZm9yIG5jb25mIGNvbmZpZ3VyYXRpb24ocylcbiAqXG4gKiAoQykgMjAxMSwgQ2hhcmxpZSBSb2JiaW5zIGFuZCB0aGUgQ29udHJpYnV0b3JzLlxuICpcbiAqL1xuXG52YXIgY29tbW9uID0gcmVxdWlyZSgnLi4vY29tbW9uJyk7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gTWVtb3J5IChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGlzIGluc3RhbmNlXG4vLyBDb25zdHJ1Y3RvciBmdW5jdGlvbiBmb3IgdGhlIE1lbW9yeSBuY29uZiBzdG9yZSB3aGljaCBtYWludGFpbnNcbi8vIGEgbmVzdGVkIGpzb24gc3RydWN0dXJlIGJhc2VkIG9uIGtleSBkZWxpbWl0ZXJzIGA6YC5cbi8vXG4vLyBlLmcuIGBteTpuZXN0ZWQ6a2V5YCA9PT4gYHsgbXk6IHsgbmVzdGVkOiB7IGtleTogfSB9IH1gXG4vL1xudmFyIE1lbW9yeSA9IGV4cG9ydHMuTWVtb3J5ID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgb3B0aW9ucyAgICAgICA9IG9wdGlvbnMgfHwge307XG4gIHRoaXMudHlwZSAgICAgPSAnbWVtb3J5JztcbiAgdGhpcy5zdG9yZSAgICA9IHt9O1xuICB0aGlzLm10aW1lcyAgID0ge307XG4gIHRoaXMucmVhZE9ubHkgPSBmYWxzZTtcbiAgdGhpcy5sb2FkRnJvbSA9IG9wdGlvbnMubG9hZEZyb20gfHwgbnVsbDtcbiAgdGhpcy5sb2dpY2FsU2VwYXJhdG9yID0gb3B0aW9ucy5sb2dpY2FsU2VwYXJhdG9yIHx8ICc6JztcbiAgdGhpcy5wYXJzZVZhbHVlcyA9IG9wdGlvbnMucGFyc2VWYWx1ZXMgfHwgZmFsc2U7XG5cbiAgaWYgKHRoaXMubG9hZEZyb20pIHtcbiAgICB0aGlzLnN0b3JlID0gY29tbW9uLmxvYWRGaWxlc1N5bmModGhpcy5sb2FkRnJvbSk7XG4gIH1cbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gZ2V0IChrZXkpXG4vLyAjIyMjIEBrZXkge3N0cmluZ30gS2V5IHRvIHJldHJpZXZlIGZvciB0aGlzIGluc3RhbmNlLlxuLy8gUmV0cmlldmVzIHRoZSB2YWx1ZSBmb3IgdGhlIHNwZWNpZmllZCBrZXkgKGlmIGFueSkuXG4vL1xuTWVtb3J5LnByb3RvdHlwZS5nZXQgPSBmdW5jdGlvbiAoa2V5KSB7XG4gIHZhciB0YXJnZXQgPSB0aGlzLnN0b3JlLFxuICAgICAgcGF0aCAgID0gY29tbW9uLnBhdGgoa2V5LCB0aGlzLmxvZ2ljYWxTZXBhcmF0b3IpO1xuXG4gIC8vXG4gIC8vIFNjb3BlIGludG8gdGhlIG9iamVjdCB0byBnZXQgdGhlIGFwcHJvcHJpYXRlIG5lc3RlZCBjb250ZXh0XG4gIC8vXG4gIHdoaWxlIChwYXRoLmxlbmd0aCA+IDApIHtcbiAgICBrZXkgPSBwYXRoLnNoaWZ0KCk7XG4gICAgaWYgKHRhcmdldCAmJiB0eXBlb2YgdGFyZ2V0ICE9PSAnc3RyaW5nJyAmJiBPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbCh0YXJnZXQsIGtleSkpIHtcbiAgICAgIHRhcmdldCA9IHRhcmdldFtrZXldO1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4gdGFyZ2V0O1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBzZXQgKGtleSwgdmFsdWUpXG4vLyAjIyMjIEBrZXkge3N0cmluZ30gS2V5IHRvIHNldCBpbiB0aGlzIGluc3RhbmNlXG4vLyAjIyMjIEB2YWx1ZSB7bGl0ZXJhbHxPYmplY3R9IFZhbHVlIGZvciB0aGUgc3BlY2lmaWVkIGtleVxuLy8gU2V0cyB0aGUgYHZhbHVlYCBmb3IgdGhlIHNwZWNpZmllZCBga2V5YCBpbiB0aGlzIGluc3RhbmNlLlxuLy9cbk1lbW9yeS5wcm90b3R5cGUuc2V0ID0gZnVuY3Rpb24gKGtleSwgdmFsdWUpIHtcbiAgaWYgKHRoaXMucmVhZE9ubHkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICB2YXIgdGFyZ2V0ID0gdGhpcy5zdG9yZSxcbiAgICAgIHBhdGggICA9IGNvbW1vbi5wYXRoKGtleSwgdGhpcy5sb2dpY2FsU2VwYXJhdG9yKTtcblxuICBpZiAocGF0aC5sZW5ndGggPT09IDApIHtcbiAgICAvL1xuICAgIC8vIFJvb3QgbXVzdCBiZSBhbiBvYmplY3RcbiAgICAvL1xuICAgIGlmICghdmFsdWUgfHwgdHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgIHRoaXMuc3RvcmUgPSB2YWx1ZTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8vXG4gIC8vIFVwZGF0ZSB0aGUgYG10aW1lYCAobW9kaWZpZWQgdGltZSkgb2YgdGhlIGtleVxuICAvL1xuICB0aGlzLm10aW1lc1trZXldID0gRGF0ZS5ub3coKTtcblxuICAvL1xuICAvLyBTY29wZSBpbnRvIHRoZSBvYmplY3QgdG8gZ2V0IHRoZSBhcHByb3ByaWF0ZSBuZXN0ZWQgY29udGV4dFxuICAvL1xuICB3aGlsZSAocGF0aC5sZW5ndGggPiAxKSB7XG4gICAga2V5ID0gcGF0aC5zaGlmdCgpO1xuICAgIGlmICghdGFyZ2V0W2tleV0gfHwgdHlwZW9mIHRhcmdldFtrZXldICE9PSAnb2JqZWN0JyB8fCAhT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwodGFyZ2V0LCBrZXkpKSB7XG4gICAgICB0YXJnZXRba2V5XSA9IHt9O1xuICAgIH1cblxuICAgIHRhcmdldCA9IHRhcmdldFtrZXldO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBzcGVjaWZpZWQgdmFsdWUgaW4gdGhlIG5lc3RlZCBKU09OIHN0cnVjdHVyZVxuICBrZXkgPSBwYXRoLnNoaWZ0KCk7XG4gIGlmICh0aGlzLnBhcnNlVmFsdWVzKSB7XG4gICAgdmFsdWUgPSBjb21tb24ucGFyc2VWYWx1ZXMuY2FsbChjb21tb24sIHZhbHVlKTtcbiAgfVxuICB0YXJnZXRba2V5XSA9IHZhbHVlO1xuICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gY2xlYXIgKGtleSlcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gcmVtb3ZlIGZyb20gdGhpcyBpbnN0YW5jZVxuLy8gUmVtb3ZlcyB0aGUgdmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQgYGtleWAgZnJvbSB0aGlzIGluc3RhbmNlLlxuLy9cbk1lbW9yeS5wcm90b3R5cGUuY2xlYXIgPSBmdW5jdGlvbiAoa2V5KSB7XG4gIGlmICh0aGlzLnJlYWRPbmx5KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgdmFyIHRhcmdldCA9IHRoaXMuc3RvcmUsXG4gICAgICB2YWx1ZSAgPSB0YXJnZXQsXG4gICAgICBwYXRoICAgPSBjb21tb24ucGF0aChrZXksIHRoaXMubG9naWNhbFNlcGFyYXRvcik7XG5cbiAgLy9cbiAgLy8gUmVtb3ZlIHRoZSBrZXkgZnJvbSB0aGUgc2V0IG9mIGBtdGltZXNgIChtb2RpZmllZCB0aW1lcylcbiAgLy9cbiAgZGVsZXRlIHRoaXMubXRpbWVzW2tleV07XG5cbiAgLy9cbiAgLy8gU2NvcGUgaW50byB0aGUgb2JqZWN0IHRvIGdldCB0aGUgYXBwcm9wcmlhdGUgbmVzdGVkIGNvbnRleHRcbiAgLy9cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBwYXRoLmxlbmd0aCAtIDE7IGkrKykge1xuICAgIGtleSA9IHBhdGhbaV07XG4gICAgdmFsdWUgPSB0YXJnZXRba2V5XTtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnZnVuY3Rpb24nICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgdGFyZ2V0ID0gdmFsdWU7XG4gIH1cblxuICAvLyBEZWxldGUgdGhlIGtleSBmcm9tIHRoZSBuZXN0ZWQgSlNPTiBzdHJ1Y3R1cmVcbiAga2V5ID0gcGF0aFtpXTtcbiAgZGVsZXRlIHRhcmdldFtrZXldO1xuICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbWVyZ2UgKGtleSwgdmFsdWUpXG4vLyAjIyMjIEBrZXkge3N0cmluZ30gS2V5IHRvIG1lcmdlIHRoZSB2YWx1ZSBpbnRvXG4vLyAjIyMjIEB2YWx1ZSB7bGl0ZXJhbHxPYmplY3R9IFZhbHVlIHRvIG1lcmdlIGludG8gdGhlIGtleVxuLy8gTWVyZ2VzIHRoZSBwcm9wZXJ0aWVzIGluIGB2YWx1ZWAgaW50byB0aGUgZXhpc3Rpbmcgb2JqZWN0IHZhbHVlXG4vLyBhdCBga2V5YC4gSWYgdGhlIGV4aXN0aW5nIHZhbHVlIGBrZXlgIGlzIG5vdCBhbiBPYmplY3QsIGl0IHdpbGwgYmVcbi8vIGNvbXBsZXRlbHkgb3ZlcndyaXR0ZW4uXG4vL1xuTWVtb3J5LnByb3RvdHlwZS5tZXJnZSA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gIGlmICh0aGlzLnJlYWRPbmx5KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy9cbiAgLy8gSWYgdGhlIGtleSBpcyBub3QgYW4gYE9iamVjdGAgb3IgaXMgYW4gYEFycmF5YCxcbiAgLy8gdGhlbiBzaW1wbHkgc2V0IGl0LiBNZXJnaW5nIGlzIGZvciBPYmplY3RzLlxuICAvL1xuICBpZiAodHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0JyB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiB0aGlzLnNldChrZXksIHZhbHVlKTtcbiAgfVxuXG4gIHZhciBzZWxmICAgID0gdGhpcyxcbiAgICAgIHRhcmdldCAgPSB0aGlzLnN0b3JlLFxuICAgICAgcGF0aCAgICA9IGNvbW1vbi5wYXRoKGtleSwgdGhpcy5sb2dpY2FsU2VwYXJhdG9yKSxcbiAgICAgIGZ1bGxLZXkgPSBrZXk7XG5cbiAgLy9cbiAgLy8gVXBkYXRlIHRoZSBgbXRpbWVgIChtb2RpZmllZCB0aW1lKSBvZiB0aGUga2V5XG4gIC8vXG4gIHRoaXMubXRpbWVzW2tleV0gPSBEYXRlLm5vdygpO1xuXG4gIC8vXG4gIC8vIFNjb3BlIGludG8gdGhlIG9iamVjdCB0byBnZXQgdGhlIGFwcHJvcHJpYXRlIG5lc3RlZCBjb250ZXh0XG4gIC8vXG4gIHdoaWxlIChwYXRoLmxlbmd0aCA+IDEpIHtcbiAgICBrZXkgPSBwYXRoLnNoaWZ0KCk7XG4gICAgaWYgKCF0YXJnZXRba2V5XSkge1xuICAgICAgdGFyZ2V0W2tleV0gPSB7fTtcbiAgICB9XG5cbiAgICB0YXJnZXQgPSB0YXJnZXRba2V5XTtcbiAgfVxuXG4gIC8vIFNldCB0aGUgc3BlY2lmaWVkIHZhbHVlIGluIHRoZSBuZXN0ZWQgSlNPTiBzdHJ1Y3R1cmVcbiAga2V5ID0gcGF0aC5zaGlmdCgpO1xuXG4gIC8vXG4gIC8vIElmIHRoZSBjdXJyZW50IHZhbHVlIGF0IHRoZSBrZXkgdGFyZ2V0IGlzIG5vdCBhbiBgT2JqZWN0YCxcbiAgLy8gb3IgaXMgYW4gYEFycmF5YCB0aGVuIHNpbXBseSBvdmVycmlkZSBpdCBiZWNhdXNlIHRoZSBuZXcgdmFsdWVcbiAgLy8gaXMgYW4gT2JqZWN0LlxuICAvL1xuICBpZiAodHlwZW9mIHRhcmdldFtrZXldICE9PSAnb2JqZWN0JyB8fCBBcnJheS5pc0FycmF5KHRhcmdldFtrZXldKSkge1xuICAgIHRhcmdldFtrZXldID0gdmFsdWU7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmtleXModmFsdWUpLmV2ZXJ5KGZ1bmN0aW9uIChuZXN0ZWQpIHtcbiAgICByZXR1cm4gc2VsZi5tZXJnZShjb21tb24ua2V5ZWQoc2VsZi5sb2dpY2FsU2VwYXJhdG9yLCBmdWxsS2V5LCBuZXN0ZWQpLCB2YWx1ZVtuZXN0ZWRdKTtcbiAgfSk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHJlc2V0IChjYWxsYmFjaylcbi8vIENsZWFycyBhbGwga2V5cyBhc3NvY2lhdGVkIHdpdGggdGhpcyBpbnN0YW5jZS5cbi8vXG5NZW1vcnkucHJvdG90eXBlLnJlc2V0ID0gZnVuY3Rpb24gKCkge1xuICBpZiAodGhpcy5yZWFkT25seSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHRoaXMubXRpbWVzID0ge307XG4gIHRoaXMuc3RvcmUgID0ge307XG4gIHJldHVybiB0cnVlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luY1xuLy8gUmV0dXJucyB0aGUgc3RvcmUgbWFuYWdlZCBieSB0aGlzIGluc3RhbmNlXG4vL1xuTWVtb3J5LnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIHRoaXMuc3RvcmUgfHwge307XG59O1xuIiwgIi8qXG4gKiB1dGlscy5qczogVXRpbGl0eSBmdW5jdGlvbnMgZm9yIHRoZSBuY29uZiBtb2R1bGUuXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGZzID0gcmVxdWlyZSgnZnMnKSxcbiAgICBhc3luYyA9IHJlcXVpcmUoJ2FzeW5jJyksXG4gICAgZm9ybWF0cyA9IHJlcXVpcmUoJy4vZm9ybWF0cycpLFxuICAgIE1lbW9yeSA9IHJlcXVpcmUoJy4vc3RvcmVzL21lbW9yeScpLk1lbW9yeTtcblxudmFyIGNvbW1vbiA9IGV4cG9ydHM7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gcGF0aCAoa2V5KVxuLy8gIyMjIyBAa2V5IHtzdHJpbmd9IFRoZSAnOicgZGVsaW1pdGVkIGtleSB0byBzcGxpdFxuLy8gUmV0dXJucyBhIGZ1bGx5LXF1YWxpZmllZCBwYXRoIHRvIGEgbmVzdGVkIG5jb25mIGtleS5cbi8vIElmIGdpdmVuIG51bGwgb3IgdW5kZWZpbmVkIGl0IHNob3VsZCByZXR1cm4gYW4gZW1wdHkgcGF0aC5cbi8vICcnIHNob3VsZCBzdGlsbCBiZSByZXNwZWN0ZWQgYXMgYSBwYXRoLlxuLy9cbmNvbW1vbi5wYXRoID0gZnVuY3Rpb24gKGtleSwgc2VwYXJhdG9yKSB7XG4gIHNlcGFyYXRvciA9IHNlcGFyYXRvciB8fCAnOic7XG4gIHJldHVybiBrZXkgPT0gbnVsbCA/IFtdIDoga2V5LnNwbGl0KHNlcGFyYXRvcik7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGtleSAoYXJndW1lbnRzKVxuLy8gUmV0dXJucyBhIGA6YCBqb2luZWQgc3RyaW5nIGZyb20gdGhlIGBhcmd1bWVudHNgLlxuLy9cbmNvbW1vbi5rZXkgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpLmpvaW4oJzonKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24ga2V5IChhcmd1bWVudHMpXG4vLyBSZXR1cm5zIGEgam9pbmVkIHN0cmluZyBmcm9tIHRoZSBgYXJndW1lbnRzYCxcbi8vIGZpcnN0IGFyZ3VtZW50IGlzIHRoZSBqb2luIGRlbGltaXRlci5cbi8vXG5jb21tb24ua2V5ZWQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsIDEpLmpvaW4oYXJndW1lbnRzWzBdKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbG9hZEZpbGVzIChmaWxlcywgY2FsbGJhY2spXG4vLyAjIyMjIEBmaWxlcyB7T2JqZWN0fEFycmF5fSBMaXN0IG9mIGZpbGVzIChvciBzZXR0aW5ncyBvYmplY3QpIHRvIGxvYWQuXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259IENvbnRpbnVhdGlvbiB0byByZXNwb25kIHRvIHdoZW4gY29tcGxldGUuXG4vLyBMb2FkcyBhbGwgdGhlIGRhdGEgaW4gdGhlIHNwZWNpZmllZCBgZmlsZXNgLlxuLy9cbmNvbW1vbi5sb2FkRmlsZXMgPSBmdW5jdGlvbiAoZmlsZXMsIGNhbGxiYWNrKSB7XG4gIGlmICghZmlsZXMpIHtcbiAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwge30pO1xuICB9XG5cbiAgdmFyIG9wdGlvbnMgPSBBcnJheS5pc0FycmF5KGZpbGVzKSA/IHsgZmlsZXM6IGZpbGVzIH0gOiBmaWxlcztcblxuICAvL1xuICAvLyBTZXQgdGhlIGRlZmF1bHQgSlNPTiBmb3JtYXQgaWYgbm90IGFscmVhZHlcbiAgLy8gc3BlY2lmaWVkXG4gIC8vXG4gIG9wdGlvbnMuZm9ybWF0ID0gb3B0aW9ucy5mb3JtYXQgfHwgZm9ybWF0cy5qc29uO1xuXG4gIGZ1bmN0aW9uIHBhcnNlRmlsZSAoZmlsZSwgbmV4dCkge1xuICAgIGZzLnJlYWRGaWxlKGZpbGUsIGZ1bmN0aW9uIChlcnIsIGRhdGEpIHtcbiAgICAgIHJldHVybiAhZXJyXG4gICAgICAgID8gbmV4dChudWxsLCBvcHRpb25zLmZvcm1hdC5wYXJzZShkYXRhLnRvU3RyaW5nKCkpKVxuICAgICAgICA6IG5leHQoZXJyKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jLm1hcChvcHRpb25zLmZpbGVzLCBwYXJzZUZpbGUsIGZ1bmN0aW9uIChlcnIsIG9ianMpIHtcbiAgICByZXR1cm4gZXJyID8gY2FsbGJhY2soZXJyKSA6IGNhbGxiYWNrKG51bGwsIGNvbW1vbi5tZXJnZShvYmpzKSk7XG4gIH0pO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkRmlsZXNTeW5jIChmaWxlcylcbi8vICMjIyMgQGZpbGVzIHtPYmplY3R8QXJyYXl9IExpc3Qgb2YgZmlsZXMgKG9yIHNldHRpbmdzIG9iamVjdCkgdG8gbG9hZC5cbi8vIExvYWRzIGFsbCB0aGUgZGF0YSBpbiB0aGUgc3BlY2lmaWVkIGBmaWxlc2Agc3luY2hyb25vdXNseS5cbi8vXG5jb21tb24ubG9hZEZpbGVzU3luYyA9IGZ1bmN0aW9uIChmaWxlcykge1xuICBpZiAoIWZpbGVzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLy9cbiAgLy8gU2V0IHRoZSBkZWZhdWx0IEpTT04gZm9ybWF0IGlmIG5vdCBhbHJlYWR5XG4gIC8vIHNwZWNpZmllZFxuICAvL1xuICB2YXIgb3B0aW9ucyA9IEFycmF5LmlzQXJyYXkoZmlsZXMpID8geyBmaWxlczogZmlsZXMgfSA6IGZpbGVzO1xuICBvcHRpb25zLmZvcm1hdCA9IG9wdGlvbnMuZm9ybWF0IHx8IGZvcm1hdHMuanNvbjtcblxuICByZXR1cm4gY29tbW9uLm1lcmdlKG9wdGlvbnMuZmlsZXMubWFwKGZ1bmN0aW9uIChmaWxlKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuZm9ybWF0LnBhcnNlKGZzLnJlYWRGaWxlU3luYyhmaWxlLCAndXRmOCcpKTtcbiAgfSkpO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBtZXJnZSAob2Jqcylcbi8vICMjIyMgQG9ianMge0FycmF5fSBBcnJheSBvZiBvYmplY3QgbGl0ZXJhbHMgdG8gbWVyZ2Vcbi8vIE1lcmdlcyB0aGUgc3BlY2lmaWVkIGBvYmpzYCB1c2luZyBhIHRlbXBvcmFyeSBpbnN0YW5jZVxuLy8gb2YgYHN0b3Jlcy5NZW1vcnlgLlxuLy9cbmNvbW1vbi5tZXJnZSA9IGZ1bmN0aW9uIChvYmpzKSB7XG4gIHZhciBzdG9yZSA9IG5ldyBNZW1vcnkoKTtcblxuICBvYmpzLmZvckVhY2goZnVuY3Rpb24gKG9iaikge1xuICAgIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICBzdG9yZS5tZXJnZShrZXksIG9ialtrZXldKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmV0dXJuIHN0b3JlLnN0b3JlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBjYXBpdGFsaXplIChzdHIpXG4vLyAjIyMjIEBzdHIge3N0cmluZ30gU3RyaW5nIHRvIGNhcGl0YWxpemVcbi8vIENhcGl0YWxpemVzIHRoZSBzcGVjaWZpZWQgYHN0cmAuXG4vL1xuY29tbW9uLmNhcGl0YWxpemUgPSBmdW5jdGlvbiAoc3RyKSB7XG4gIHJldHVybiBzdHIgJiYgc3RyWzBdLnRvVXBwZXJDYXNlKCkgKyBzdHIuc2xpY2UoMSk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHBhcnNlVmFsdWVzIChhbnkpXG4vLyAjIyMjIEBhbnkge3N0cmluZ30gU3RyaW5nIHRvIHBhcnNlIGFzIG5hdGl2ZSBkYXRhLXR5cGUgb3IgcmV0dXJuIGFzIGlzXG4vLyB0cnkgdG8gcGFyc2UgYGFueWAgYXMgYSBuYXRpdmUgZGF0YS10eXBlXG4vL1xuY29tbW9uLnBhcnNlVmFsdWVzID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gIHZhciB2YWwgPSB2YWx1ZTtcbiAgXG4gIHRyeSB7XG4gICAgdmFsID0gSlNPTi5wYXJzZSh2YWx1ZSk7XG4gIH0gY2F0Y2ggKGlnbm9yZSkge1xuICAgIC8vIENoZWNrIGZvciBhbnkgb3RoZXIgd2VsbC1rbm93biBzdHJpbmdzIHRoYXQgc2hvdWxkIGJlIFwicGFyc2VkXCJcbiAgICBpZiAodmFsdWUgPT09ICd1bmRlZmluZWQnKXtcbiAgICAgIHZhbCA9IHZvaWQgMDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdmFsO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiB0cmFuc2Zvcm0obWFwLCBmbilcbi8vICMjIyMgQG1hcCB7b2JqZWN0fSBPYmplY3Qgb2Yga2V5L3ZhbHVlIHBhaXJzIHRvIGFwcGx5IGBmbmAgdG9cbi8vICMjIyMgQGZuIHtmdW5jdGlvbn0gVHJhbnNmb3JtYXRpb24gZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gZXZlcnkga2V5L3ZhbHVlIHBhaXJcbi8vIHRyYW5zZm9ybSBhIHNldCBvZiBrZXkvdmFsdWUgcGFpcnMgYW5kIHJldHVybiB0aGUgdHJhbnNmb3JtZWQgcmVzdWx0XG5jb21tb24udHJhbnNmb3JtID0gZnVuY3Rpb24obWFwLCBmbikge1xuICB2YXIgcGFpcnMgPSBPYmplY3Qua2V5cyhtYXApLm1hcChmdW5jdGlvbihrZXkpIHtcbiAgICB2YXIgb2JqID0geyBrZXk6IGtleSwgdmFsdWU6IG1hcFtrZXldfTtcbiAgICB2YXIgcmVzdWx0ID0gZm4uY2FsbChudWxsLCBvYmopO1xuXG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0gZWxzZSBpZiAocmVzdWx0LmtleSkge1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICB2YXIgZXJyb3IgPSBuZXcgRXJyb3IoJ1RyYW5zZm9ybSBmdW5jdGlvbiBwYXNzZWQgdG8gc3RvcmUgcmV0dXJuZWQgYW4gaW52YWxpZCBmb3JtYXQ6ICcgKyBKU09OLnN0cmluZ2lmeShyZXN1bHQpKTtcbiAgICBlcnJvci5uYW1lID0gJ1J1bnRpbWVFcnJvcic7XG4gICAgdGhyb3cgZXJyb3I7XG4gIH0pO1xuXG5cbiAgcmV0dXJuIHBhaXJzXG4gICAgLmZpbHRlcihmdW5jdGlvbihwYWlyKSB7XG4gICAgICByZXR1cm4gcGFpciAhPT0gbnVsbDtcbiAgICB9KVxuICAgIC5yZWR1Y2UoZnVuY3Rpb24oYWNjdW11bGF0b3IsIHBhaXIpIHtcbiAgICAgIGFjY3VtdWxhdG9yW3BhaXIua2V5XSA9IHBhaXIudmFsdWU7XG4gICAgICByZXR1cm4gYWNjdW11bGF0b3I7XG4gICAgfSwge30pO1xufVxuIiwgIi8qXG4gKiBwcm92aWRlci5qczogQWJzdHJhY3Rpb24gcHJvdmlkaW5nIGFuIGludGVyZmFjZSBpbnRvIHBsdWdnYWJsZSBjb25maWd1cmF0aW9uIHN0b3JhZ2UuXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGFzeW5jID0gcmVxdWlyZSgnYXN5bmMnKSxcbiAgICBjb21tb24gPSByZXF1aXJlKCcuL2NvbW1vbicpO1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIFByb3ZpZGVyIChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGlzIGluc3RhbmNlLlxuLy8gQ29uc3RydWN0b3IgZnVuY3Rpb24gZm9yIHRoZSBQcm92aWRlciBvYmplY3QgcmVzcG9uc2libGVcbi8vIGZvciBleHBvc2luZyB0aGUgcGx1Z2dhYmxlIHN0b3JhZ2UgZmVhdHVyZXMgb2YgYG5jb25mYC5cbi8vXG52YXIgUHJvdmlkZXIgPSBleHBvcnRzLlByb3ZpZGVyID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgLy9cbiAgLy8gU2V0dXAgZGVmYXVsdCBvcHRpb25zIGZvciB3b3JraW5nIHdpdGggYHN0b3Jlc2AsXG4gIC8vIGBvdmVycmlkZXNgLCBgcHJvY2Vzcy5lbnZgIGFuZCBgcHJvY2Vzcy5hcmd2YC5cbiAgLy9cbiAgb3B0aW9ucyAgICAgICA9IG9wdGlvbnMgfHwge307XG4gIHRoaXMuc3RvcmVzICA9IHt9O1xuICB0aGlzLnNvdXJjZXMgPSBbXTtcbiAgdGhpcy5pbml0KG9wdGlvbnMpO1xufTtcblxuLy9cbi8vIERlZmluZSB3cmFwcGVyIGZ1bmN0aW9ucyBmb3IgdXNpbmcgYmFzaWMgc3RvcmVzXG4vLyBpbiB0aGlzIGluc3RhbmNlXG4vL1xuXG5bJ2FyZ3YnLCAnZW52J10uZm9yRWFjaChmdW5jdGlvbiAodHlwZSkge1xuICBQcm92aWRlci5wcm90b3R5cGVbdHlwZV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGFyZ3MgPSBbdHlwZV0uY29uY2F0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cykpO1xuICAgIHJldHVybiB0aGlzLmFkZC5hcHBseSh0aGlzLCBhcmdzKTtcbiAgfTtcbn0pO1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGZpbGUgKGtleSwgb3B0aW9ucylcbi8vICMjIyMgQGtleSB7c3RyaW5nfE9iamVjdH0gRnVsbHkgcXVhbGlmaWVkIG9wdGlvbnMsIG5hbWUgb2YgZmlsZSBzdG9yZSwgb3IgcGF0aC5cbi8vICMjIyMgQHBhdGgge3N0cmluZ3xPYmplY3R9ICoqT3B0aW9uYWwqKiBGdWxsIHF1YWxpZmllZCBvcHRpb25zLCBvciBwYXRoLlxuLy8gQWRkcyBhIG5ldyBgRmlsZWAgc3RvcmUgdG8gdGhpcyBpbnN0YW5jZS4gQWNjZXB0cyB0aGUgZm9sbG93aW5nIG9wdGlvbnNcbi8vXG4vLyAgICBuY29uZi5maWxlKHsgZmlsZTogJy5qaXRzdWNvbmYnLCBkaXI6IHByb2Nlc3MuZW52LkhPTUUsIHNlYXJjaDogdHJ1ZSB9KTtcbi8vICAgIG5jb25mLmZpbGUoJ3BhdGgvdG8vY29uZmlnL2ZpbGUnKTtcbi8vICAgIG5jb25mLmZpbGUoJ3VzZXJjb25maWcnLCAncGF0aC90by9jb25maWcvZmlsZScpO1xuLy8gICAgbmNvbmYuZmlsZSgndXNlcmNvbmZpZycsIHsgZmlsZTogJy5qaXRzdWNvbmYnLCBzZWFyY2g6IHRydWUgfSk7XG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLmZpbGUgPSBmdW5jdGlvbiAoa2V5LCBvcHRpb25zKSB7XG4gIGlmIChhcmd1bWVudHMubGVuZ3RoID09IDEpIHtcbiAgICBvcHRpb25zID0gdHlwZW9mIGtleSA9PT0gJ3N0cmluZycgPyB7IGZpbGU6IGtleSB9IDoga2V5O1xuICAgIGtleSA9ICdmaWxlJztcbiAgfVxuICBlbHNlIHtcbiAgICBvcHRpb25zID0gdHlwZW9mIG9wdGlvbnMgPT09ICdzdHJpbmcnXG4gICAgICA/IHsgZmlsZTogb3B0aW9ucyB9XG4gICAgICA6IG9wdGlvbnM7XG4gIH1cblxuICBvcHRpb25zLnR5cGUgPSAnZmlsZSc7XG4gIHJldHVybiB0aGlzLmFkZChrZXksIG9wdGlvbnMpO1xufTtcblxuLy9cbi8vIERlZmluZSB3cmFwcGVyIGZ1bmN0aW9ucyBmb3IgdXNpbmdcbi8vIG92ZXJyaWRlcyBhbmQgZGVmYXVsdHNcbi8vXG5bJ2RlZmF1bHRzJywgJ292ZXJyaWRlcyddLmZvckVhY2goZnVuY3Rpb24gKHR5cGUpIHtcbiAgUHJvdmlkZXIucHJvdG90eXBlW3R5cGVdID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgICBpZiAoIW9wdGlvbnMudHlwZSkge1xuICAgICAgb3B0aW9ucy50eXBlID0gJ2xpdGVyYWwnO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmFkZCh0eXBlLCBvcHRpb25zKTtcbiAgfTtcbn0pO1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHVzZSAobmFtZSwgb3B0aW9ucylcbi8vICMjIyMgQHR5cGUge3N0cmluZ30gVHlwZSBvZiB0aGUgbmNvbmYgc3RvcmUgdG8gdXNlLlxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGUgc3RvcmUgaW5zdGFuY2UuXG4vLyBBZGRzIChvciByZXBsYWNlcykgYSBuZXcgc3RvcmUgd2l0aCB0aGUgc3BlY2lmaWVkIGBuYW1lYFxuLy8gYW5kIGBvcHRpb25zYC4gSWYgYG9wdGlvbnMudHlwZWAgaXMgbm90IHNldCwgdGhlbiBgbmFtZWBcbi8vIHdpbGwgYmUgdXNlZCBpbnN0ZWFkOlxuLy9cbi8vICAgIHByb3ZpZGVyLnVzZSgnZmlsZScpO1xuLy8gICAgcHJvdmlkZXIudXNlKCdmaWxlJywgeyB0eXBlOiAnZmlsZScsIGZpbGVuYW1lOiAnL3BhdGgvdG8vdXNlcmNvbmYnIH0pXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLnVzZSA9IGZ1bmN0aW9uIChuYW1lLCBvcHRpb25zKSB7XG4gIG9wdGlvbnMgID0gb3B0aW9ucyAgICAgIHx8IHt9O1xuXG4gIGZ1bmN0aW9uIHNhbWVPcHRpb25zIChzdG9yZSkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShmdW5jdGlvbiAoa2V5KSB7XG4gICAgICByZXR1cm4gb3B0aW9uc1trZXldID09PSBzdG9yZVtrZXldO1xuICAgIH0pO1xuICB9XG5cbiAgdmFyIHN0b3JlID0gdGhpcy5zdG9yZXNbbmFtZV0sXG4gICAgICB1cGRhdGUgPSBzdG9yZSAmJiAhc2FtZU9wdGlvbnMoc3RvcmUpO1xuXG4gIGlmICghc3RvcmUgfHwgdXBkYXRlKSB7XG4gICAgaWYgKHVwZGF0ZSkge1xuICAgICAgdGhpcy5yZW1vdmUobmFtZSk7XG4gICAgfVxuXG4gICAgdGhpcy5hZGQobmFtZSwgb3B0aW9ucyk7XG4gIH1cblxuICByZXR1cm4gdGhpcztcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gYWRkIChuYW1lLCBvcHRpb25zKVxuLy8gIyMjIyBAbmFtZSB7c3RyaW5nfSBOYW1lIG9mIHRoZSBzdG9yZSB0byBhZGQgdG8gdGhpcyBpbnN0YW5jZVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGUgc3RvcmUgdG8gY3JlYXRlXG4vLyBBZGRzIGEgbmV3IHN0b3JlIHdpdGggdGhlIHNwZWNpZmllZCBgbmFtZWAgYW5kIGBvcHRpb25zYC4gSWYgYG9wdGlvbnMudHlwZWBcbi8vIGlzIG5vdCBzZXQsIHRoZW4gYG5hbWVgIHdpbGwgYmUgdXNlZCBpbnN0ZWFkOlxuLy9cbi8vICAgIHByb3ZpZGVyLmFkZCgnbWVtb3J5Jyk7XG4vLyAgICBwcm92aWRlci5hZGQoJ3VzZXJjb25mJywgeyB0eXBlOiAnZmlsZScsIGZpbGVuYW1lOiAnL3BhdGgvdG8vdXNlcmNvbmYnIH0pXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLmFkZCA9IGZ1bmN0aW9uIChuYW1lLCBvcHRpb25zLCB1c2FnZSkge1xuICBvcHRpb25zICA9IG9wdGlvbnMgICAgICB8fCB7fTtcbiAgdmFyIHR5cGUgPSBvcHRpb25zLnR5cGUgfHwgbmFtZTtcblxuICBpZiAoIXJlcXVpcmUoJy4uL25jb25mJylbY29tbW9uLmNhcGl0YWxpemUodHlwZSldKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgYWRkIHN0b3JlIHdpdGggdW5rbm93biB0eXBlOiAnICsgdHlwZSk7XG4gIH1cblxuICB0aGlzLnN0b3Jlc1tuYW1lXSA9IHRoaXMuY3JlYXRlKHR5cGUsIG9wdGlvbnMsIHVzYWdlKTtcblxuICBpZiAodGhpcy5zdG9yZXNbbmFtZV0ubG9hZFN5bmMpIHtcbiAgICB0aGlzLnN0b3Jlc1tuYW1lXS5sb2FkU3luYygpO1xuICB9XG5cbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHJlbW92ZSAobmFtZSlcbi8vICMjIyMgQG5hbWUge3N0cmluZ30gTmFtZSBvZiB0aGUgc3RvcmUgdG8gcmVtb3ZlIGZyb20gdGhpcyBpbnN0YW5jZVxuLy8gUmVtb3ZlcyBhIHN0b3JlIHdpdGggdGhlIHNwZWNpZmllZCBgbmFtZWAgZnJvbSB0aGlzIGluc3RhbmNlLiBVc2Vyc1xuLy8gYXJlIGFsbG93ZWQgdG8gcGFzcyBpbiBhIHR5cGUgYXJndW1lbnQgKGUuZy4gYG1lbW9yeWApIGFzIG5hbWUgaWZcbi8vIHRoaXMgd2FzIHVzZWQgaW4gdGhlIGNhbGwgdG8gYC5hZGQoKWAuXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLnJlbW92ZSA9IGZ1bmN0aW9uIChuYW1lKSB7XG4gIGRlbGV0ZSB0aGlzLnN0b3Jlc1tuYW1lXTtcbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGNyZWF0ZSAodHlwZSwgb3B0aW9ucylcbi8vICMjIyMgQHR5cGUge3N0cmluZ30gVHlwZSBvZiB0aGUgbmNvbmYgc3RvcmUgdG8gdXNlLlxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGUgc3RvcmUgaW5zdGFuY2UuXG4vLyBDcmVhdGVzIGEgc3RvcmUgb2YgdGhlIHNwZWNpZmllZCBgdHlwZWAgdXNpbmcgdGhlXG4vLyBzcGVjaWZpZWQgYG9wdGlvbnNgLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5jcmVhdGUgPSBmdW5jdGlvbiAodHlwZSwgb3B0aW9ucywgdXNhZ2UpIHtcbiAgcmV0dXJuIG5ldyAocmVxdWlyZSgnLi4vbmNvbmYnKVtjb21tb24uY2FwaXRhbGl6ZSh0eXBlLnRvTG93ZXJDYXNlKCkpXSkob3B0aW9ucywgdXNhZ2UpO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBpbml0IChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIHRvIGluaXRpYWxpemUgdGhpcyBpbnN0YW5jZSB3aXRoLlxuLy8gSW5pdGlhbGl6ZXMgdGhpcyBpbnN0YW5jZSB3aXRoIGFkZGl0aW9uYWwgYHN0b3Jlc2Agb3IgYHNvdXJjZXNgIGluIHRoZVxuLy8gYG9wdGlvbnNgIHN1cHBsaWVkLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5pbml0ID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgdmFyIHNlbGYgPSB0aGlzO1xuXG4gIC8vXG4gIC8vIEFkZCBhbnkgc3RvcmVzIHBhc3NlZCBpbiB0aHJvdWdoIHRoZSBvcHRpb25zXG4gIC8vIHRvIHRoaXMgaW5zdGFuY2UuXG4gIC8vXG4gIGlmIChvcHRpb25zLnR5cGUpIHtcbiAgICB0aGlzLmFkZChvcHRpb25zLnR5cGUsIG9wdGlvbnMpO1xuICB9XG4gIGVsc2UgaWYgKG9wdGlvbnMuc3RvcmUpIHtcbiAgICB0aGlzLmFkZChvcHRpb25zLnN0b3JlLm5hbWUgfHwgb3B0aW9ucy5zdG9yZS50eXBlLCBvcHRpb25zLnN0b3JlKTtcbiAgfVxuICBlbHNlIGlmIChvcHRpb25zLnN0b3Jlcykge1xuICAgIE9iamVjdC5rZXlzKG9wdGlvbnMuc3RvcmVzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgICB2YXIgc3RvcmUgPSBvcHRpb25zLnN0b3Jlc1tuYW1lXTtcbiAgICAgIHNlbGYuYWRkKHN0b3JlLm5hbWUgfHwgbmFtZSB8fCBzdG9yZS50eXBlLCBzdG9yZSk7XG4gICAgfSk7XG4gIH1cblxuICAvL1xuICAvLyBBZGQgYW55IHJlYWQtb25seSBzb3VyY2VzIHRvIHRoaXMgaW5zdGFuY2VcbiAgLy9cbiAgaWYgKG9wdGlvbnMuc291cmNlKSB7XG4gICAgdGhpcy5zb3VyY2VzLnB1c2godGhpcy5jcmVhdGUob3B0aW9ucy5zb3VyY2UudHlwZSB8fCBvcHRpb25zLnNvdXJjZS5uYW1lLCBvcHRpb25zLnNvdXJjZSkpO1xuICB9XG4gIGVsc2UgaWYgKG9wdGlvbnMuc291cmNlcykge1xuICAgIE9iamVjdC5rZXlzKG9wdGlvbnMuc291cmNlcykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdmFyIHNvdXJjZSA9IG9wdGlvbnMuc291cmNlc1tuYW1lXTtcbiAgICAgIHNlbGYuc291cmNlcy5wdXNoKHNlbGYuY3JlYXRlKHNvdXJjZS50eXBlIHx8IHNvdXJjZS5uYW1lIHx8IG5hbWUsIHNvdXJjZSkpO1xuICAgIH0pO1xuICB9XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGdldCAoa2V5LCBjYWxsYmFjaylcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gcmV0cmlldmUgZm9yIHRoaXMgaW5zdGFuY2UuXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gUmV0cmlldmVzIHRoZSB2YWx1ZSBmb3IgdGhlIHNwZWNpZmllZCBrZXkgKGlmIGFueSkuXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uIChrZXksIGNhbGxiYWNrKSB7XG4gIGlmICh0eXBlb2Yga2V5ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgLy8gQWxsb3cgYSAqIGtleSBjYWxsIHRvIGJlIG1hZGVcbiAgICBjYWxsYmFjayA9IGtleTtcbiAgICBrZXkgPSBudWxsO1xuICB9XG5cbiAgLy9cbiAgLy8gSWYgdGhlcmUgaXMgbm8gY2FsbGJhY2sgd2UgY2FuIHNob3J0LWNpcmN1aXQgaW50byB0aGUgZGVmYXVsdFxuICAvLyBsb2dpYyBmb3IgdHJhdmVyc2luZyBzdG9yZXMuXG4gIC8vXG4gIGlmICghY2FsbGJhY2spIHtcbiAgICByZXR1cm4gdGhpcy5fZXhlY3V0ZSgnZ2V0JywgMSwga2V5LCBjYWxsYmFjayk7XG4gIH1cblxuICAvL1xuICAvLyBPdGhlcndpc2UgdGhlIGFzeW5jaHJvbm91cywgaGllcmFyY2hpY2FsIGBnZXRgIGlzXG4gIC8vIHNsaWdodGx5IG1vcmUgY29tcGxpY2F0ZWQgYmVjYXVzZSB3ZSBkbyBub3QgbmVlZCB0byB0cmF2ZXJzZVxuICAvLyB0aGUgZW50aXJlIHNldCBvZiBzdG9yZXMsIGJ1dCB1cCB1bnRpbCB0aGVyZSBpcyBhIGRlZmluZWQgdmFsdWUuXG4gIC8vXG4gIHZhciBjdXJyZW50ID0gMCxcbiAgICAgIG5hbWVzID0gT2JqZWN0LmtleXModGhpcy5zdG9yZXMpLFxuICAgICAgc2VsZiA9IHRoaXMsXG4gICAgICByZXNwb25zZSxcbiAgICAgIG1lcmdlT2JqcyA9IFtdO1xuXG4gIGFzeW5jLndoaWxzdChmdW5jdGlvbiAoY2IpIHtcbiAgICBjYihudWxsLCB0eXBlb2YgcmVzcG9uc2UgPT09ICd1bmRlZmluZWQnICYmIGN1cnJlbnQgPCBuYW1lcy5sZW5ndGgpO1xuICB9LCBmdW5jdGlvbiAobmV4dCkge1xuICAgIHZhciBzdG9yZSA9IHNlbGYuc3RvcmVzW25hbWVzW2N1cnJlbnRdXTtcbiAgICBjdXJyZW50Kys7XG5cbiAgICBpZiAoc3RvcmUuZ2V0Lmxlbmd0aCA+PSAyKSB7XG4gICAgICByZXR1cm4gc3RvcmUuZ2V0KGtleSwgZnVuY3Rpb24gKGVyciwgdmFsdWUpIHtcbiAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgIHJldHVybiBuZXh0KGVycik7XG4gICAgICAgIH1cblxuICAgICAgICByZXNwb25zZSA9IHZhbHVlO1xuXG4gICAgICAgIC8vIE1lcmdlIG9iamVjdHMgaWYgbmVjZXNzYXJ5XG4gICAgICAgIGlmIChyZXNwb25zZSAmJiB0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHJlc3BvbnNlKSkge1xuICAgICAgICAgIG1lcmdlT2Jqcy5wdXNoKHJlc3BvbnNlKTtcbiAgICAgICAgICByZXNwb25zZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIG5leHQoKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJlc3BvbnNlID0gc3RvcmUuZ2V0KGtleSk7XG5cbiAgICAvLyBNZXJnZSBvYmplY3RzIGlmIG5lY2Vzc2FyeVxuICAgIGlmIChyZXNwb25zZSAmJiB0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHJlc3BvbnNlKSkge1xuICAgICAgbWVyZ2VPYmpzLnB1c2gocmVzcG9uc2UpO1xuICAgICAgcmVzcG9uc2UgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgbmV4dCgpO1xuICB9LCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgaWYgKCFlcnIgJiYgbWVyZ2VPYmpzLmxlbmd0aCkge1xuICAgICAgcmVzcG9uc2UgPSBjb21tb24ubWVyZ2UobWVyZ2VPYmpzLnJldmVyc2UoKSk7XG4gICAgfVxuICAgIHJldHVybiBlcnIgPyBjYWxsYmFjayhlcnIpIDogY2FsbGJhY2sobnVsbCwgcmVzcG9uc2UpO1xuICB9KTtcbn07XG5cblxuLy9cbi8vICMjIyBmdW5jdGlvbiBhbnkgKGtleXMsIGNhbGxiYWNrKVxuLy8gIyMjIyBAa2V5cyB7YXJyYXl8c3RyaW5nLi4ufSBBcnJheSBvZiBrZXlzIHRvIHF1ZXJ5LCBvciBhIHZhcmlhYmxlIGxpc3Qgb2Ygc3RyaW5nc1xuLy8gIyMjIyBAY2FsbGJhY2sge2Z1bmN0aW9ufSAqKk9wdGlvbmFsKiogQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlbiBjb21wbGV0ZS5cbi8vIFJldHJpZXZlcyB0aGUgZmlyc3QgdHJ1dGh5IHZhbHVlIChpZiBhbnkpIGZvciB0aGUgc3BlY2lmaWVkIGxpc3Qgb2Yga2V5cy5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUuYW55ID0gZnVuY3Rpb24gKGtleXMsIGNhbGxiYWNrKSB7XG5cbiAgaWYgKCFBcnJheS5pc0FycmF5KGtleXMpKSB7XG4gICAga2V5cyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cyk7XG4gICAgaWYgKGtleXMubGVuZ3RoID4gMCAmJiB0eXBlb2Yga2V5c1trZXlzLmxlbmd0aCAtIDFdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjYWxsYmFjayA9IGtleXMucG9wKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNhbGxiYWNrID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvL1xuICAvLyBJZiB0aGVyZSBpcyBubyBjYWxsYmFjaywgdXNlIHRoZSBzaG9ydC1jaXJjdWl0ZWQgXCJnZXRcIlxuICAvLyBvbiBlYWNoIGtleSBpbiB0dXJuLlxuICAvL1xuICBpZiAoIWNhbGxiYWNrKSB7XG4gICAgdmFyIHZhbDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyArK2kpIHtcbiAgICAgIHZhbCA9IHRoaXMuX2V4ZWN1dGUoJ2dldCcsIDEsIGtleXNbaV0sIGNhbGxiYWNrKTtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB2YXIga2V5SW5kZXggPSAwLFxuICAgICAgcmVzdWx0LFxuICAgICAgc2VsZiA9IHRoaXM7XG4gIFxuICBhc3luYy53aGlsc3QoZnVuY3Rpb24oY2IpIHtcbiAgICBjYihudWxsLCAhcmVzdWx0ICYmIGtleUluZGV4IDwga2V5cy5sZW5ndGgpO1xuICB9LCBmdW5jdGlvbihuZXh0KSB7XG4gICAgdmFyIGtleSA9IGtleXNba2V5SW5kZXhdO1xuICAgIGtleUluZGV4Kys7XG5cbiAgICBzZWxmLmdldChrZXksIGZ1bmN0aW9uKGVyciwgdikge1xuICAgICAgaWYgKGVycikge1xuICAgICAgICBuZXh0KGVycik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSB2O1xuICAgICAgICBuZXh0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIGZ1bmN0aW9uKGVycikge1xuICAgIHJldHVybiBlcnIgPyBjYWxsYmFjayhlcnIpIDogY2FsbGJhY2sobnVsbCwgcmVzdWx0KTtcbiAgfSk7XG59O1xuXG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2V0IChrZXksIHZhbHVlLCBjYWxsYmFjaylcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gc2V0IGluIHRoaXMgaW5zdGFuY2Vcbi8vICMjIyMgQHZhbHVlIHtsaXRlcmFsfE9iamVjdH0gVmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQga2V5XG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gU2V0cyB0aGUgYHZhbHVlYCBmb3IgdGhlIHNwZWNpZmllZCBga2V5YCBpbiB0aGlzIGluc3RhbmNlLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5zZXQgPSBmdW5jdGlvbiAoa2V5LCB2YWx1ZSwgY2FsbGJhY2spIHtcbiAgcmV0dXJuIHRoaXMuX2V4ZWN1dGUoJ3NldCcsIDIsIGtleSwgdmFsdWUsIGNhbGxiYWNrKTtcbn07XG5cblxuLy9cbi8vICMjIyBmdW5jdGlvbiByZXF1aXJlZCAoa2V5cylcbi8vICMjIyMgQGtleXMge2FycmF5fSBMaXN0IG9mIGtleXNcbi8vIFRocm93cyBhbiBlcnJvciBpZiBhbnkgb2YgYGtleXNgIGhhcyBubyB2YWx1ZSwgb3RoZXJ3aXNlIHJldHVybnMgYHRydWVgXG5Qcm92aWRlci5wcm90b3R5cGUucmVxdWlyZWQgPSBmdW5jdGlvbiAoa2V5cykge1xuICBpZiAoIUFycmF5LmlzQXJyYXkoa2V5cykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0luY29ycmVjdCBwYXJhbWV0ZXIsIGFycmF5IGV4cGVjdGVkJyk7XG4gIH1cblxuICB2YXIgbWlzc2luZyA9IFtdO1xuICBrZXlzLmZvckVhY2goZnVuY3Rpb24oa2V5KSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLmdldChrZXkpID09PSAndW5kZWZpbmVkJykge1xuICAgICAgbWlzc2luZy5wdXNoKGtleSk7XG4gICAgfVxuICB9LCB0aGlzKTtcblxuICBpZiAobWlzc2luZy5sZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcmVxdWlyZWQga2V5czogJyArIG1pc3Npbmcuam9pbignLCAnKSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiByZXNldCAoY2FsbGJhY2spXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gQ2xlYXJzIGFsbCBrZXlzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGluc3RhbmNlLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5yZXNldCA9IGZ1bmN0aW9uIChjYWxsYmFjaykge1xuICByZXR1cm4gdGhpcy5fZXhlY3V0ZSgncmVzZXQnLCAwLCBjYWxsYmFjayk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGNsZWFyIChrZXksIGNhbGxiYWNrKVxuLy8gIyMjIyBAa2V5IHtzdHJpbmd9IEtleSB0byByZW1vdmUgZnJvbSB0aGlzIGluc3RhbmNlXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gUmVtb3ZlcyB0aGUgdmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQgYGtleWAgZnJvbSB0aGlzIGluc3RhbmNlLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5jbGVhciA9IGZ1bmN0aW9uIChrZXksIGNhbGxiYWNrKSB7XG4gIHJldHVybiB0aGlzLl9leGVjdXRlKCdjbGVhcicsIDEsIGtleSwgY2FsbGJhY2spO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBtZXJnZSAoW2tleSxdIHZhbHVlIFssIGNhbGxiYWNrXSlcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gbWVyZ2UgdGhlIHZhbHVlIGludG9cbi8vICMjIyMgQHZhbHVlIHtsaXRlcmFsfE9iamVjdH0gVmFsdWUgdG8gbWVyZ2UgaW50byB0aGUga2V5XG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gTWVyZ2VzIHRoZSBwcm9wZXJ0aWVzIGluIGB2YWx1ZWAgaW50byB0aGUgZXhpc3Rpbmcgb2JqZWN0IHZhbHVlIGF0IGBrZXlgLlxuLy9cbi8vIDEuIElmIHRoZSBleGlzdGluZyB2YWx1ZSBga2V5YCBpcyBub3QgYW4gT2JqZWN0LCBpdCB3aWxsIGJlIGNvbXBsZXRlbHkgb3ZlcndyaXR0ZW4uXG4vLyAyLiBJZiBga2V5YCBpcyBub3Qgc3VwcGxpZWQsIHRoZW4gdGhlIGB2YWx1ZWAgd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgcm9vdC5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUubWVyZ2UgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzZWxmID0gdGhpcyxcbiAgICAgIGFyZ3MgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpLFxuICAgICAgY2FsbGJhY2sgPSB0eXBlb2YgYXJnc1thcmdzLmxlbmd0aCAtIDFdID09PSAnZnVuY3Rpb24nICYmIGFyZ3MucG9wKCksXG4gICAgICB2YWx1ZSA9IGFyZ3MucG9wKCksXG4gICAgICBrZXkgPSBhcmdzLnBvcCgpO1xuXG4gIGZ1bmN0aW9uIG1lcmdlUHJvcGVydHkgKHByb3AsIG5leHQpIHtcbiAgICByZXR1cm4gc2VsZi5fZXhlY3V0ZSgnbWVyZ2UnLCAyLCBwcm9wLCB2YWx1ZVtwcm9wXSwgbmV4dCk7XG4gIH1cblxuICBpZiAoIWtleSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSB8fCB0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm4gb25FcnJvcihuZXcgRXJyb3IoJ0Nhbm5vdCBtZXJnZSBub24tT2JqZWN0IGludG8gdG9wLWxldmVsLicpLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGFzeW5jLmZvckVhY2goT2JqZWN0LmtleXModmFsdWUpLCBtZXJnZVByb3BlcnR5LCBjYWxsYmFjayB8fCBmdW5jdGlvbiAoKSB7IH0pXG4gIH1cblxuICByZXR1cm4gdGhpcy5fZXhlY3V0ZSgnbWVyZ2UnLCAyLCBrZXksIHZhbHVlLCBjYWxsYmFjayk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGxvYWQgKGNhbGxiYWNrKVxuLy8gIyMjIyBAY2FsbGJhY2sge2Z1bmN0aW9ufSBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gUmVzcG9uZHMgd2l0aCBhbiBPYmplY3QgcmVwcmVzZW50aW5nIGFsbCBrZXlzIGFzc29jaWF0ZWQgaW4gdGhpcyBpbnN0YW5jZS5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUubG9hZCA9IGZ1bmN0aW9uIChjYWxsYmFjaykge1xuICB2YXIgc2VsZiA9IHRoaXM7XG5cbiAgZnVuY3Rpb24gZ2V0U3RvcmVzICgpIHtcbiAgICB2YXIgc3RvcmVzID0gT2JqZWN0LmtleXMoc2VsZi5zdG9yZXMpO1xuICAgIHN0b3Jlcy5yZXZlcnNlKCk7XG4gICAgcmV0dXJuIHN0b3Jlcy5tYXAoZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHJldHVybiBzZWxmLnN0b3Jlc1tuYW1lXTtcbiAgICB9KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGxvYWRTdG9yZVN5bmMoc3RvcmUpIHtcbiAgICBpZiAoIXN0b3JlLmxvYWRTeW5jKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ25jb25mIHN0b3JlICcgKyBzdG9yZS50eXBlICsgJyBoYXMgbm8gbG9hZFN5bmMoKSBtZXRob2QnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RvcmUubG9hZFN5bmMoKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGxvYWRTdG9yZShzdG9yZSwgbmV4dCkge1xuICAgIGlmICghc3RvcmUubG9hZCAmJiAhc3RvcmUubG9hZFN5bmMpIHtcbiAgICAgIHJldHVybiBuZXh0KG5ldyBFcnJvcignbmNvbmYgc3RvcmUgJyArIHN0b3JlLnR5cGUgKyAnIGhhcyBubyBsb2FkKCkgbWV0aG9kJykpO1xuICAgIH1cblxuICAgIHJldHVybiBzdG9yZS5sb2FkU3luY1xuICAgICAgPyBuZXh0KG51bGwsIHN0b3JlLmxvYWRTeW5jKCkpXG4gICAgICA6IHN0b3JlLmxvYWQobmV4dCk7XG4gIH1cblxuICBmdW5jdGlvbiBsb2FkQmF0Y2ggKHRhcmdldHMsIGRvbmUpIHtcbiAgICBpZiAoIWRvbmUpIHtcbiAgICAgIHJldHVybiBjb21tb24ubWVyZ2UodGFyZ2V0cy5tYXAobG9hZFN0b3JlU3luYykpO1xuICAgIH1cblxuICAgIGFzeW5jLm1hcCh0YXJnZXRzLCBsb2FkU3RvcmUsIGZ1bmN0aW9uIChlcnIsIG9ianMpIHtcbiAgICAgIHJldHVybiBlcnIgPyBkb25lKGVycikgOiBkb25lKG51bGwsIGNvbW1vbi5tZXJnZShvYmpzKSk7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiBtZXJnZVNvdXJjZXMgKGRhdGEpIHtcbiAgICAvL1xuICAgIC8vIElmIGBkYXRhYCB3YXMgcmV0dXJuZWQgdGhlbiBtZXJnZSBpdCBpbnRvXG4gICAgLy8gdGhlIHN5c3RlbSBzdG9yZS5cbiAgICAvL1xuICAgIGlmIChkYXRhICYmIHR5cGVvZiBkYXRhID09PSAnb2JqZWN0Jykge1xuICAgICAgc2VsZi51c2UoJ3NvdXJjZXMnLCB7XG4gICAgICAgIHR5cGU6ICdsaXRlcmFsJyxcbiAgICAgICAgc3RvcmU6IGRhdGFcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGxvYWRTb3VyY2VzICgpIHtcbiAgICB2YXIgc291cmNlSGllcmFyY2h5ID0gc2VsZi5zb3VyY2VzLnNwbGljZSgwKTtcbiAgICBzb3VyY2VIaWVyYXJjaHkucmV2ZXJzZSgpO1xuXG4gICAgLy9cbiAgICAvLyBJZiB3ZSBkb24ndCBoYXZlIGEgY2FsbGJhY2sgYW5kIHRoZSBjdXJyZW50XG4gICAgLy8gc3RvcmUgaXMgY2FwYWJsZSBvZiBsb2FkaW5nIHN5bmNocm9ub3VzbHlcbiAgICAvLyB0aGVuIGRvIHNvLlxuICAgIC8vXG4gICAgaWYgKCFjYWxsYmFjaykge1xuICAgICAgbWVyZ2VTb3VyY2VzKGxvYWRCYXRjaChzb3VyY2VIaWVyYXJjaHkpKTtcbiAgICAgIHJldHVybiBsb2FkQmF0Y2goZ2V0U3RvcmVzKCkpO1xuICAgIH1cblxuICAgIGxvYWRCYXRjaChzb3VyY2VIaWVyYXJjaHksIGZ1bmN0aW9uIChlcnIsIGRhdGEpIHtcbiAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICB9XG5cbiAgICAgIG1lcmdlU291cmNlcyhkYXRhKTtcbiAgICAgIHJldHVybiBsb2FkQmF0Y2goZ2V0U3RvcmVzKCksIGNhbGxiYWNrKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBzZWxmLnNvdXJjZXMubGVuZ3RoXG4gICAgPyBsb2FkU291cmNlcygpXG4gICAgOiBsb2FkQmF0Y2goZ2V0U3RvcmVzKCksIGNhbGxiYWNrKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2F2ZSAoY2FsbGJhY2spXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqb3B0aW9uYWwqKiAgQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlblxuLy8gY29tcGxldGUuXG4vLyBJbnN0cnVjdHMgZWFjaCBwcm92aWRlciB0byBzYXZlLiAgSWYgYSBjYWxsYmFjayBpcyBwcm92aWRlZCwgd2Ugd2lsbCBhdHRlbXB0XG4vLyBhc3luY2hyb25vdXMgc2F2ZXMgb24gdGhlIHByb3ZpZGVycywgZmFsbGluZyBiYWNrIHRvIHN5bmNocm9ub3VzIHNhdmVzIGlmXG4vLyB0aGlzIGlzbid0IHBvc3NpYmxlLiAgSWYgYSBwcm92aWRlciBkb2VzIG5vdCBrbm93IGhvdyB0byBzYXZlLCBpdCB3aWxsIGJlXG4vLyBpZ25vcmVkLiAgUmV0dXJucyBhbiBvYmplY3QgY29uc2lzdGluZyBvZiBhbGwgb2YgdGhlIGRhdGEgd2hpY2ggd2FzXG4vLyBhY3R1YWxseSBzYXZlZC5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUuc2F2ZSA9IGZ1bmN0aW9uICh2YWx1ZSwgY2FsbGJhY2spIHtcbiAgaWYgKCFjYWxsYmFjayAmJiB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICBjYWxsYmFjayA9IHZhbHVlO1xuICAgIHZhbHVlID0gbnVsbDtcbiAgfVxuXG4gIHZhciBzZWxmID0gdGhpcyxcbiAgICAgIG5hbWVzID0gT2JqZWN0LmtleXModGhpcy5zdG9yZXMpO1xuXG4gIGZ1bmN0aW9uIHNhdmVTdG9yZVN5bmMobWVtbywgbmFtZSkge1xuICAgIHZhciBzdG9yZSA9IHNlbGYuc3RvcmVzW25hbWVdO1xuXG4gICAgLy9cbiAgICAvLyBJZiB0aGUgYHN0b3JlYCBkb2Vzbid0IGhhdmUgYSBgc2F2ZVN5bmNgIG1ldGhvZCxcbiAgICAvLyBqdXN0IGlnbm9yZSBpdCBhbmQgY29udGludWUuXG4gICAgLy9cbiAgICBpZiAoc3RvcmUuc2F2ZVN5bmMpIHtcbiAgICAgIHZhciByZXQgPSBzdG9yZS5zYXZlU3luYygpO1xuICAgICAgaWYgKHR5cGVvZiByZXQgPT0gJ29iamVjdCcgJiYgcmV0ICE9PSBudWxsKSB7XG4gICAgICAgIG1lbW8ucHVzaChyZXQpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWVtbztcbiAgfVxuXG4gIGZ1bmN0aW9uIHNhdmVTdG9yZShtZW1vLCBuYW1lLCBuZXh0KSB7XG4gICAgdmFyIHN0b3JlID0gc2VsZi5zdG9yZXNbbmFtZV07XG5cbiAgICAvL1xuICAgIC8vIElmIHRoZSBgc3RvcmVgIGRvZXNuJ3QgaGF2ZSBhIGBzYXZlYCBvciBzYXZlU3luY2BcbiAgICAvLyBtZXRob2QocyksIGp1c3QgaWdub3JlIGl0IGFuZCBjb250aW51ZS5cbiAgICAvL1xuXG4gICAgaWYgKHN0b3JlLnNhdmUpIHtcbiAgICAgIHJldHVybiBzdG9yZS5zYXZlKHZhbHVlLCBmdW5jdGlvbiAoZXJyLCBkYXRhKSB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICByZXR1cm4gbmV4dChlcnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBkYXRhID09ICdvYmplY3QnICYmIGRhdGEgIT09IG51bGwpIHtcbiAgICAgICAgICBtZW1vLnB1c2goZGF0YSk7XG4gICAgICAgIH1cblxuICAgICAgICBuZXh0KG51bGwsIG1lbW8pO1xuICAgICAgfSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKHN0b3JlLnNhdmVTeW5jKSB7XG4gICAgICBtZW1vLnB1c2goc3RvcmUuc2F2ZVN5bmMoKSk7XG4gICAgfVxuXG4gICAgbmV4dChudWxsLCBtZW1vKTtcbiAgfVxuXG4gIC8vXG4gIC8vIElmIHdlIGRvbid0IGhhdmUgYSBjYWxsYmFjayBhbmQgdGhlIGN1cnJlbnRcbiAgLy8gc3RvcmUgaXMgY2FwYWJsZSBvZiBzYXZpbmcgc3luY2hyb25vdXNseVxuICAvLyB0aGVuIGRvIHNvLlxuICAvL1xuICBpZiAoIWNhbGxiYWNrKSB7XG4gICAgcmV0dXJuIGNvbW1vbi5tZXJnZShuYW1lcy5yZWR1Y2Uoc2F2ZVN0b3JlU3luYywgW10pKTtcbiAgfVxuXG4gIGFzeW5jLnJlZHVjZShuYW1lcywgW10sIHNhdmVTdG9yZSwgZnVuY3Rpb24gKGVyciwgb2Jqcykge1xuICAgIHJldHVybiBlcnIgPyBjYWxsYmFjayhlcnIpIDogY2FsbGJhY2sobnVsbCwgY29tbW9uLm1lcmdlKG9ianMpKTtcbiAgfSk7XG59O1xuXG4vL1xuLy8gIyMjIEBwcml2YXRlIGZ1bmN0aW9uIF9leGVjdXRlIChhY3Rpb24sIHN5bmNMZW5ndGgsIFthcmd1bWVudHNdKVxuLy8gIyMjIyBAYWN0aW9uIHtzdHJpbmd9IEFjdGlvbiB0byBleGVjdXRlIG9uIGB0aGlzLnN0b3JlYC5cbi8vICMjIyMgQHN5bmNMZW5ndGgge251bWJlcn0gRnVuY3Rpb24gbGVuZ3RoIG9mIHRoZSBzeW5jIHZlcnNpb24uXG4vLyAjIyMjIEBhcmd1bWVudHMge0FycmF5fSBBcmd1bWVudHMgYXJyYXkgdG8gYXBwbHkgdG8gdGhlIGFjdGlvblxuLy8gRXhlY3V0ZXMgdGhlIHNwZWNpZmllZCBgYWN0aW9uYCBvbiBhbGwgc3RvcmVzIGZvciB0aGlzIGluc3RhbmNlLCBlbnN1cmluZyBhIGNhbGxiYWNrIHN1cHBsaWVkXG4vLyB0byBhIHN5bmNocm9ub3VzIHN0b3JlIGZ1bmN0aW9uIGlzIHN0aWxsIGludm9rZWQuXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLl9leGVjdXRlID0gZnVuY3Rpb24gKGFjdGlvbiwgc3luY0xlbmd0aCAvKiBbYXJndW1lbnRzXSAqLykge1xuICB2YXIgYXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMiksXG4gICAgICBjYWxsYmFjayA9IHR5cGVvZiBhcmdzW2FyZ3MubGVuZ3RoIC0gMV0gPT09ICdmdW5jdGlvbicgJiYgYXJncy5wb3AoKSxcbiAgICAgIGRlc3RydWN0aXZlID0gWydzZXQnLCAnY2xlYXInLCAnbWVyZ2UnLCAncmVzZXQnXS5pbmRleE9mKGFjdGlvbikgIT09IC0xLFxuICAgICAgc2VsZiA9IHRoaXMsXG4gICAgICByZXNwb25zZSxcbiAgICAgIG1lcmdlT2JqcyA9IFtdLFxuICAgICAga2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuc3RvcmVzKTtcblxuXG4gIGZ1bmN0aW9uIHJ1bkFjdGlvbiAobmFtZSwgbmV4dCkge1xuICAgIHZhciBzdG9yZSA9IHNlbGYuc3RvcmVzW25hbWVdO1xuXG4gICAgaWYgKGRlc3RydWN0aXZlICYmIHN0b3JlLnJlYWRPbmx5KSB7XG4gICAgICByZXR1cm4gbmV4dCgpO1xuICAgIH1cblxuICAgIHJldHVybiBzdG9yZVthY3Rpb25dLmxlbmd0aCA+IHN5bmNMZW5ndGhcbiAgICAgID8gc3RvcmVbYWN0aW9uXS5hcHBseShzdG9yZSwgYXJncy5jb25jYXQobmV4dCkpXG4gICAgICA6IG5leHQobnVsbCwgc3RvcmVbYWN0aW9uXS5hcHBseShzdG9yZSwgYXJncykpO1xuICB9XG5cbiAgaWYgKGNhbGxiYWNrKSB7XG4gICAgcmV0dXJuIGFzeW5jLmZvckVhY2goa2V5cywgcnVuQWN0aW9uLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICByZXR1cm4gZXJyID8gY2FsbGJhY2soZXJyKSA6IGNhbGxiYWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBrZXlzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdmFyIHN0b3JlID0gc2VsZi5zdG9yZXNbbmFtZV07XG5cbiAgICAgIGlmIChkZXN0cnVjdGl2ZSAmJiBzdG9yZS5yZWFkT25seSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHJlc3BvbnNlID0gc3RvcmVbYWN0aW9uXS5hcHBseShzdG9yZSwgYXJncyk7XG5cbiAgICAgIC8vIE1lcmdlIG9iamVjdHMgaWYgbmVjZXNzYXJ5XG4gICAgICBpZiAocmVzcG9uc2UgJiYgYWN0aW9uID09PSAnZ2V0JyAmJiB0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHJlc3BvbnNlKSkge1xuICAgICAgICBtZXJnZU9ianMucHVzaChyZXNwb25zZSk7XG4gICAgICAgIHJlc3BvbnNlID0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG5cbiAgaWYgKG1lcmdlT2Jqcy5sZW5ndGgpIHtcbiAgICByZXNwb25zZSA9IGNvbW1vbi5tZXJnZShtZXJnZU9ianMucmV2ZXJzZSgpKTtcbiAgfVxuXG4gIHJldHVybiByZXNwb25zZTtcbn1cblxuLy9cbi8vIFRocm93IHRoZSBgZXJyYCBpZiBhIGNhbGxiYWNrIGlzIG5vdCBzdXBwbGllZFxuLy9cbmZ1bmN0aW9uIG9uRXJyb3IoZXJyLCBjYWxsYmFjaykge1xuICBpZiAoY2FsbGJhY2spIHtcbiAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgfVxuXG4gIHRocm93IGVycjtcbn1cbiIsICJ7XG4gIFwibmFtZVwiOiBcIm5jb25mXCIsXG4gIFwiZGVzY3JpcHRpb25cIjogXCJIaWVyYXJjaGljYWwgbm9kZS5qcyBjb25maWd1cmF0aW9uIHdpdGggZmlsZXMsIGVudmlyb25tZW50IHZhcmlhYmxlcywgY29tbWFuZC1saW5lIGFyZ3VtZW50cywgYW5kIGF0b21pYyBvYmplY3QgbWVyZ2luZy5cIixcbiAgXCJ2ZXJzaW9uXCI6IFwiMC4xMy4wXCIsXG4gIFwiYXV0aG9yXCI6IFwiQ2hhcmxpZSBSb2JiaW5zIDxjaGFybGllLnJvYmJpbnNAZ21haWwuY29tPlwiLFxuICBcImNvbnRyaWJ1dG9yc1wiOiBbXG4gICAgXCJNYXR0IEhhbWFubiA8bWF0dGhldy5oYW1hbm5AZ21haWwuY29tPlwiLFxuICAgIFwiTWFjaWVqIE1hXHUwMTQyZWNraSA8bWVAbW1hbGVja2kuY29tPlwiLFxuICAgIFwiSmFycmV0dCBDcnVnZXIgPGpjcnVnenpAZ21haWwuY29tPlwiLFxuICAgIFwiQWRyaWVuIEJlY2NoaXNcIlxuICBdLFxuICBcInJlcG9zaXRvcnlcIjoge1xuICAgIFwidHlwZVwiOiBcImdpdFwiLFxuICAgIFwidXJsXCI6IFwiaHR0cDovL2dpdGh1Yi5jb20vZmxhdGlyb24vbmNvbmYuZ2l0XCJcbiAgfSxcbiAgXCJrZXl3b3Jkc1wiOiBbXG4gICAgXCJjb25maWd1cmF0aW9uXCIsXG4gICAgXCJrZXkgdmFsdWUgc3RvcmVcIixcbiAgICBcInBsdWdhYmJsZVwiXG4gIF0sXG4gIFwiZGVwZW5kZW5jaWVzXCI6IHtcbiAgICBcImFzeW5jXCI6IFwiXjMuMC4wXCIsXG4gICAgXCJpbmlcIjogXCJeMi4wLjBcIixcbiAgICBcInNlY3VyZS1rZXlzXCI6IFwiXjEuMC4wXCIsXG4gICAgXCJ5YXJnc1wiOiBcIl4xNi4xLjFcIlxuICB9LFxuICBcImRldkRlcGVuZGVuY2llc1wiOiB7XG4gICAgXCJAcmVsZWFzZS1pdC9jb252ZW50aW9uYWwtY2hhbmdlbG9nXCI6IFwiXjcuMC4yXCIsXG4gICAgXCJjb3ZlcmFsbHNcIjogXCJeMy4xLjBcIixcbiAgICBcImVzbGludFwiOiBcIl43LjAuMFwiLFxuICAgIFwibmNvbmYteWFtbFwiOiBcIl4xLjAuMlwiLFxuICAgIFwibnljXCI6IFwiXjE1LjEuMFwiLFxuICAgIFwicmVsZWFzZS1pdFwiOiBcIl4xNi4yLjFcIixcbiAgICBcInZvd3NcIjogXCJeMC44LjNcIlxuICB9LFxuICBcIm1haW5cIjogXCIuL2xpYi9uY29uZlwiLFxuICBcInNjcmlwdHNcIjoge1xuICAgIFwidGVzdFwiOiBcInZvd3MgdGVzdC8qLXRlc3QuanMgdGVzdC8qKi8qLXRlc3QuanMgLS1zcGVjXCIsXG4gICAgXCJjb3ZlclwiOiBcIm55YyAtLXJlcG9ydGVyPWxjb3YgbnBtIHRlc3RcIixcbiAgICBcImNvdmVyYWxsc1wiOiBcImNhdCBjb3ZlcmFnZS9sY292LmluZm8gfCBjb3ZlcmFsbHNcIixcbiAgICBcImxpbnRcIjogXCJlc2xpbnQgLlwiLFxuICAgIFwicmVsZWFzZVwiOiBcInJlbGVhc2UtaXRcIlxuICB9LFxuICBcImVuZ2luZXNcIjoge1xuICAgIFwibm9kZVwiOiBcIj49IDAuNC4wXCJcbiAgfSxcbiAgXCJsaWNlbnNlXCI6IFwiTUlUXCJcbn1cbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBmcyA9IHJlcXVpcmUoJ2ZzJyk7XG52YXIgdXRpbCA9IHJlcXVpcmUoJ3V0aWwnKTtcbnZhciBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuXG5sZXQgc2hpbTtcbmNsYXNzIFkxOE4ge1xuICAgIGNvbnN0cnVjdG9yKG9wdHMpIHtcbiAgICAgICAgLy8gY29uZmlndXJhYmxlIG9wdGlvbnMuXG4gICAgICAgIG9wdHMgPSBvcHRzIHx8IHt9O1xuICAgICAgICB0aGlzLmRpcmVjdG9yeSA9IG9wdHMuZGlyZWN0b3J5IHx8ICcuL2xvY2FsZXMnO1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGVzID0gdHlwZW9mIG9wdHMudXBkYXRlRmlsZXMgPT09ICdib29sZWFuJyA/IG9wdHMudXBkYXRlRmlsZXMgOiB0cnVlO1xuICAgICAgICB0aGlzLmxvY2FsZSA9IG9wdHMubG9jYWxlIHx8ICdlbic7XG4gICAgICAgIHRoaXMuZmFsbGJhY2tUb0xhbmd1YWdlID0gdHlwZW9mIG9wdHMuZmFsbGJhY2tUb0xhbmd1YWdlID09PSAnYm9vbGVhbicgPyBvcHRzLmZhbGxiYWNrVG9MYW5ndWFnZSA6IHRydWU7XG4gICAgICAgIC8vIGludGVybmFsIHN0dWZmLlxuICAgICAgICB0aGlzLmNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdGhpcy53cml0ZVF1ZXVlID0gW107XG4gICAgfVxuICAgIF9fKC4uLmFyZ3MpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBhcmd1bWVudHNbMF0gIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fdGFnZ2VkTGl0ZXJhbChhcmd1bWVudHNbMF0sIC4uLmFyZ3VtZW50cyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3RyID0gYXJncy5zaGlmdCgpO1xuICAgICAgICBsZXQgY2IgPSBmdW5jdGlvbiAoKSB7IH07IC8vIHN0YXJ0IHdpdGggbm9vcC5cbiAgICAgICAgaWYgKHR5cGVvZiBhcmdzW2FyZ3MubGVuZ3RoIC0gMV0gPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICBjYiA9IGFyZ3MucG9wKCk7XG4gICAgICAgIGNiID0gY2IgfHwgZnVuY3Rpb24gKCkgeyB9OyAvLyBub29wLlxuICAgICAgICBpZiAoIXRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdKVxuICAgICAgICAgICAgdGhpcy5fcmVhZExvY2FsZUZpbGUoKTtcbiAgICAgICAgLy8gd2UndmUgb2JzZXJ2ZWQgYSBuZXcgc3RyaW5nLCB1cGRhdGUgdGhlIGxhbmd1YWdlIGZpbGUuXG4gICAgICAgIGlmICghdGhpcy5jYWNoZVt0aGlzLmxvY2FsZV1bc3RyXSAmJiB0aGlzLnVwZGF0ZUZpbGVzKSB7XG4gICAgICAgICAgICB0aGlzLmNhY2hlW3RoaXMubG9jYWxlXVtzdHJdID0gc3RyO1xuICAgICAgICAgICAgLy8gaW5jbHVkZSB0aGUgY3VycmVudCBkaXJlY3RvcnkgYW5kIGxvY2FsZSxcbiAgICAgICAgICAgIC8vIHNpbmNlIHRoZXNlIHZhbHVlcyBjb3VsZCBjaGFuZ2UgYmVmb3JlIHRoZVxuICAgICAgICAgICAgLy8gd3JpdGUgaXMgcGVyZm9ybWVkLlxuICAgICAgICAgICAgdGhpcy5fZW5xdWV1ZVdyaXRlKHtcbiAgICAgICAgICAgICAgICBkaXJlY3Rvcnk6IHRoaXMuZGlyZWN0b3J5LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5sb2NhbGUsXG4gICAgICAgICAgICAgICAgY2JcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY2IoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2hpbS5mb3JtYXQuYXBwbHkoc2hpbS5mb3JtYXQsIFt0aGlzLmNhY2hlW3RoaXMubG9jYWxlXVtzdHJdIHx8IHN0cl0uY29uY2F0KGFyZ3MpKTtcbiAgICB9XG4gICAgX19uKCkge1xuICAgICAgICBjb25zdCBhcmdzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtcbiAgICAgICAgY29uc3Qgc2luZ3VsYXIgPSBhcmdzLnNoaWZ0KCk7XG4gICAgICAgIGNvbnN0IHBsdXJhbCA9IGFyZ3Muc2hpZnQoKTtcbiAgICAgICAgY29uc3QgcXVhbnRpdHkgPSBhcmdzLnNoaWZ0KCk7XG4gICAgICAgIGxldCBjYiA9IGZ1bmN0aW9uICgpIHsgfTsgLy8gc3RhcnQgd2l0aCBub29wLlxuICAgICAgICBpZiAodHlwZW9mIGFyZ3NbYXJncy5sZW5ndGggLSAxXSA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIGNiID0gYXJncy5wb3AoKTtcbiAgICAgICAgaWYgKCF0aGlzLmNhY2hlW3RoaXMubG9jYWxlXSlcbiAgICAgICAgICAgIHRoaXMuX3JlYWRMb2NhbGVGaWxlKCk7XG4gICAgICAgIGxldCBzdHIgPSBxdWFudGl0eSA9PT0gMSA/IHNpbmd1bGFyIDogcGx1cmFsO1xuICAgICAgICBpZiAodGhpcy5jYWNoZVt0aGlzLmxvY2FsZV1bc2luZ3VsYXJdKSB7XG4gICAgICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdW3Npbmd1bGFyXTtcbiAgICAgICAgICAgIHN0ciA9IGVudHJ5W3F1YW50aXR5ID09PSAxID8gJ29uZScgOiAnb3RoZXInXTtcbiAgICAgICAgfVxuICAgICAgICAvLyB3ZSd2ZSBvYnNlcnZlZCBhIG5ldyBzdHJpbmcsIHVwZGF0ZSB0aGUgbGFuZ3VhZ2UgZmlsZS5cbiAgICAgICAgaWYgKCF0aGlzLmNhY2hlW3RoaXMubG9jYWxlXVtzaW5ndWxhcl0gJiYgdGhpcy51cGRhdGVGaWxlcykge1xuICAgICAgICAgICAgdGhpcy5jYWNoZVt0aGlzLmxvY2FsZV1bc2luZ3VsYXJdID0ge1xuICAgICAgICAgICAgICAgIG9uZTogc2luZ3VsYXIsXG4gICAgICAgICAgICAgICAgb3RoZXI6IHBsdXJhbFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vIGluY2x1ZGUgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFuZCBsb2NhbGUsXG4gICAgICAgICAgICAvLyBzaW5jZSB0aGVzZSB2YWx1ZXMgY291bGQgY2hhbmdlIGJlZm9yZSB0aGVcbiAgICAgICAgICAgIC8vIHdyaXRlIGlzIHBlcmZvcm1lZC5cbiAgICAgICAgICAgIHRoaXMuX2VucXVldWVXcml0ZSh7XG4gICAgICAgICAgICAgICAgZGlyZWN0b3J5OiB0aGlzLmRpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICBsb2NhbGU6IHRoaXMubG9jYWxlLFxuICAgICAgICAgICAgICAgIGNiXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNiKCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gaWYgYSAlZCBwbGFjZWhvbGRlciBpcyBwcm92aWRlZCwgYWRkIHF1YW50aXR5XG4gICAgICAgIC8vIHRvIHRoZSBhcmd1bWVudHMgZXhwYW5kZWQgYnkgdXRpbC5mb3JtYXQuXG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IFtzdHJdO1xuICAgICAgICBpZiAofnN0ci5pbmRleE9mKCclZCcpKVxuICAgICAgICAgICAgdmFsdWVzLnB1c2gocXVhbnRpdHkpO1xuICAgICAgICByZXR1cm4gc2hpbS5mb3JtYXQuYXBwbHkoc2hpbS5mb3JtYXQsIHZhbHVlcy5jb25jYXQoYXJncykpO1xuICAgIH1cbiAgICBzZXRMb2NhbGUobG9jYWxlKSB7XG4gICAgICAgIHRoaXMubG9jYWxlID0gbG9jYWxlO1xuICAgIH1cbiAgICBnZXRMb2NhbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvY2FsZTtcbiAgICB9XG4gICAgdXBkYXRlTG9jYWxlKG9iaikge1xuICAgICAgICBpZiAoIXRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdKVxuICAgICAgICAgICAgdGhpcy5fcmVhZExvY2FsZUZpbGUoKTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdW2tleV0gPSBvYmpba2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBfdGFnZ2VkTGl0ZXJhbChwYXJ0cywgLi4uYXJncykge1xuICAgICAgICBsZXQgc3RyID0gJyc7XG4gICAgICAgIHBhcnRzLmZvckVhY2goZnVuY3Rpb24gKHBhcnQsIGkpIHtcbiAgICAgICAgICAgIGNvbnN0IGFyZyA9IGFyZ3NbaSArIDFdO1xuICAgICAgICAgICAgc3RyICs9IHBhcnQ7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGFyZyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgICBzdHIgKz0gJyVzJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9fLmFwcGx5KHRoaXMsIFtzdHJdLmNvbmNhdChbXS5zbGljZS5jYWxsKGFyZ3MsIDEpKSk7XG4gICAgfVxuICAgIF9lbnF1ZXVlV3JpdGUod29yaykge1xuICAgICAgICB0aGlzLndyaXRlUXVldWUucHVzaCh3b3JrKTtcbiAgICAgICAgaWYgKHRoaXMud3JpdGVRdWV1ZS5sZW5ndGggPT09IDEpXG4gICAgICAgICAgICB0aGlzLl9wcm9jZXNzV3JpdGVRdWV1ZSgpO1xuICAgIH1cbiAgICBfcHJvY2Vzc1dyaXRlUXVldWUoKSB7XG4gICAgICAgIGNvbnN0IF90aGlzID0gdGhpcztcbiAgICAgICAgY29uc3Qgd29yayA9IHRoaXMud3JpdGVRdWV1ZVswXTtcbiAgICAgICAgLy8gZGVzdHJ1Y3R1cmUgdGhlIGVucXVldWVkIHdvcmsuXG4gICAgICAgIGNvbnN0IGRpcmVjdG9yeSA9IHdvcmsuZGlyZWN0b3J5O1xuICAgICAgICBjb25zdCBsb2NhbGUgPSB3b3JrLmxvY2FsZTtcbiAgICAgICAgY29uc3QgY2IgPSB3b3JrLmNiO1xuICAgICAgICBjb25zdCBsYW5ndWFnZUZpbGUgPSB0aGlzLl9yZXNvbHZlTG9jYWxlRmlsZShkaXJlY3RvcnksIGxvY2FsZSk7XG4gICAgICAgIGNvbnN0IHNlcmlhbGl6ZWRMb2NhbGUgPSBKU09OLnN0cmluZ2lmeSh0aGlzLmNhY2hlW2xvY2FsZV0sIG51bGwsIDIpO1xuICAgICAgICBzaGltLmZzLndyaXRlRmlsZShsYW5ndWFnZUZpbGUsIHNlcmlhbGl6ZWRMb2NhbGUsICd1dGYtOCcsIGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgICAgICAgIF90aGlzLndyaXRlUXVldWUuc2hpZnQoKTtcbiAgICAgICAgICAgIGlmIChfdGhpcy53cml0ZVF1ZXVlLmxlbmd0aCA+IDApXG4gICAgICAgICAgICAgICAgX3RoaXMuX3Byb2Nlc3NXcml0ZVF1ZXVlKCk7XG4gICAgICAgICAgICBjYihlcnIpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgX3JlYWRMb2NhbGVGaWxlKCkge1xuICAgICAgICBsZXQgbG9jYWxlTG9va3VwID0ge307XG4gICAgICAgIGNvbnN0IGxhbmd1YWdlRmlsZSA9IHRoaXMuX3Jlc29sdmVMb2NhbGVGaWxlKHRoaXMuZGlyZWN0b3J5LCB0aGlzLmxvY2FsZSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBXaGVuIHVzaW5nIGEgYnVuZGxlciBzdWNoIGFzIHdlYnBhY2ssIHJlYWRGaWxlU3luYyBtYXkgbm90IGJlIGRlZmluZWQ6XG4gICAgICAgICAgICBpZiAoc2hpbS5mcy5yZWFkRmlsZVN5bmMpIHtcbiAgICAgICAgICAgICAgICBsb2NhbGVMb29rdXAgPSBKU09OLnBhcnNlKHNoaW0uZnMucmVhZEZpbGVTeW5jKGxhbmd1YWdlRmlsZSwgJ3V0Zi04JykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikge1xuICAgICAgICAgICAgICAgIGVyci5tZXNzYWdlID0gJ3N5bnRheCBlcnJvciBpbiAnICsgbGFuZ3VhZ2VGaWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGVyci5jb2RlID09PSAnRU5PRU5UJylcbiAgICAgICAgICAgICAgICBsb2NhbGVMb29rdXAgPSB7fTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jYWNoZVt0aGlzLmxvY2FsZV0gPSBsb2NhbGVMb29rdXA7XG4gICAgfVxuICAgIF9yZXNvbHZlTG9jYWxlRmlsZShkaXJlY3RvcnksIGxvY2FsZSkge1xuICAgICAgICBsZXQgZmlsZSA9IHNoaW0ucmVzb2x2ZShkaXJlY3RvcnksICcuLycsIGxvY2FsZSArICcuanNvbicpO1xuICAgICAgICBpZiAodGhpcy5mYWxsYmFja1RvTGFuZ3VhZ2UgJiYgIXRoaXMuX2ZpbGVFeGlzdHNTeW5jKGZpbGUpICYmIH5sb2NhbGUubGFzdEluZGV4T2YoJ18nKSkge1xuICAgICAgICAgICAgLy8gYXR0ZW1wdCBmYWxsYmFjayB0byBsYW5ndWFnZSBvbmx5XG4gICAgICAgICAgICBjb25zdCBsYW5ndWFnZUZpbGUgPSBzaGltLnJlc29sdmUoZGlyZWN0b3J5LCAnLi8nLCBsb2NhbGUuc3BsaXQoJ18nKVswXSArICcuanNvbicpO1xuICAgICAgICAgICAgaWYgKHRoaXMuX2ZpbGVFeGlzdHNTeW5jKGxhbmd1YWdlRmlsZSkpXG4gICAgICAgICAgICAgICAgZmlsZSA9IGxhbmd1YWdlRmlsZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmlsZTtcbiAgICB9XG4gICAgX2ZpbGVFeGlzdHNTeW5jKGZpbGUpIHtcbiAgICAgICAgcmV0dXJuIHNoaW0uZXhpc3RzKGZpbGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHkxOG4kMShvcHRzLCBfc2hpbSkge1xuICAgIHNoaW0gPSBfc2hpbTtcbiAgICBjb25zdCB5MThuID0gbmV3IFkxOE4ob3B0cyk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgX186IHkxOG4uX18uYmluZCh5MThuKSxcbiAgICAgICAgX19uOiB5MThuLl9fbi5iaW5kKHkxOG4pLFxuICAgICAgICBzZXRMb2NhbGU6IHkxOG4uc2V0TG9jYWxlLmJpbmQoeTE4biksXG4gICAgICAgIGdldExvY2FsZTogeTE4bi5nZXRMb2NhbGUuYmluZCh5MThuKSxcbiAgICAgICAgdXBkYXRlTG9jYWxlOiB5MThuLnVwZGF0ZUxvY2FsZS5iaW5kKHkxOG4pLFxuICAgICAgICBsb2NhbGU6IHkxOG4ubG9jYWxlXG4gICAgfTtcbn1cblxudmFyIG5vZGVQbGF0Zm9ybVNoaW0gPSB7XG4gICAgZnM6IHtcbiAgICAgICAgcmVhZEZpbGVTeW5jOiBmcy5yZWFkRmlsZVN5bmMsXG4gICAgICAgIHdyaXRlRmlsZTogZnMud3JpdGVGaWxlXG4gICAgfSxcbiAgICBmb3JtYXQ6IHV0aWwuZm9ybWF0LFxuICAgIHJlc29sdmU6IHBhdGgucmVzb2x2ZSxcbiAgICBleGlzdHM6IChmaWxlKSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gZnMuc3RhdFN5bmMoZmlsZSkuaXNGaWxlKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuY29uc3QgeTE4biA9IChvcHRzKSA9PiB7XG4gICAgcmV0dXJuIHkxOG4kMShvcHRzLCBub2RlUGxhdGZvcm1TaGltKTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0geTE4bjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlsID0gcmVxdWlyZSgndXRpbCcpO1xudmFyIGZzID0gcmVxdWlyZSgnZnMnKTtcbnZhciBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuXG5mdW5jdGlvbiBjYW1lbENhc2Uoc3RyKSB7XG4gICAgY29uc3QgaXNDYW1lbENhc2UgPSBzdHIgIT09IHN0ci50b0xvd2VyQ2FzZSgpICYmIHN0ciAhPT0gc3RyLnRvVXBwZXJDYXNlKCk7XG4gICAgaWYgKCFpc0NhbWVsQ2FzZSkge1xuICAgICAgICBzdHIgPSBzdHIudG9Mb3dlckNhc2UoKTtcbiAgICB9XG4gICAgaWYgKHN0ci5pbmRleE9mKCctJykgPT09IC0xICYmIHN0ci5pbmRleE9mKCdfJykgPT09IC0xKSB7XG4gICAgICAgIHJldHVybiBzdHI7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBsZXQgY2FtZWxjYXNlID0gJyc7XG4gICAgICAgIGxldCBuZXh0Q2hyVXBwZXIgPSBmYWxzZTtcbiAgICAgICAgY29uc3QgbGVhZGluZ0h5cGhlbnMgPSBzdHIubWF0Y2goL14tKy8pO1xuICAgICAgICBmb3IgKGxldCBpID0gbGVhZGluZ0h5cGhlbnMgPyBsZWFkaW5nSHlwaGVuc1swXS5sZW5ndGggOiAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBsZXQgY2hyID0gc3RyLmNoYXJBdChpKTtcbiAgICAgICAgICAgIGlmIChuZXh0Q2hyVXBwZXIpIHtcbiAgICAgICAgICAgICAgICBuZXh0Q2hyVXBwZXIgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBjaHIgPSBjaHIudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpICE9PSAwICYmIChjaHIgPT09ICctJyB8fCBjaHIgPT09ICdfJykpIHtcbiAgICAgICAgICAgICAgICBuZXh0Q2hyVXBwZXIgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY2hyICE9PSAnLScgJiYgY2hyICE9PSAnXycpIHtcbiAgICAgICAgICAgICAgICBjYW1lbGNhc2UgKz0gY2hyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjYW1lbGNhc2U7XG4gICAgfVxufVxuZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIsIGpvaW5TdHJpbmcpIHtcbiAgICBjb25zdCBsb3dlcmNhc2UgPSBzdHIudG9Mb3dlckNhc2UoKTtcbiAgICBqb2luU3RyaW5nID0gam9pblN0cmluZyB8fCAnLSc7XG4gICAgbGV0IG5vdENhbWVsY2FzZSA9ICcnO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGNockxvd2VyID0gbG93ZXJjYXNlLmNoYXJBdChpKTtcbiAgICAgICAgY29uc3QgY2hyU3RyaW5nID0gc3RyLmNoYXJBdChpKTtcbiAgICAgICAgaWYgKGNockxvd2VyICE9PSBjaHJTdHJpbmcgJiYgaSA+IDApIHtcbiAgICAgICAgICAgIG5vdENhbWVsY2FzZSArPSBgJHtqb2luU3RyaW5nfSR7bG93ZXJjYXNlLmNoYXJBdChpKX1gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbm90Q2FtZWxjYXNlICs9IGNoclN0cmluZztcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbm90Q2FtZWxjYXNlO1xufVxuZnVuY3Rpb24gbG9va3NMaWtlTnVtYmVyKHgpIHtcbiAgICBpZiAoeCA9PT0gbnVsbCB8fCB4ID09PSB1bmRlZmluZWQpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBpZiAodHlwZW9mIHggPT09ICdudW1iZXInKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoL14weFswLTlhLWZdKyQvaS50ZXN0KHgpKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoL14wW14uXS8udGVzdCh4KSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiAvXlstXT8oPzpcXGQrKD86XFwuXFxkKik/fFxcLlxcZCspKGVbLStdP1xcZCspPyQvLnRlc3QoeCk7XG59XG5cbmZ1bmN0aW9uIHRva2VuaXplQXJnU3RyaW5nKGFyZ1N0cmluZykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGFyZ1N0cmluZykpIHtcbiAgICAgICAgcmV0dXJuIGFyZ1N0cmluZy5tYXAoZSA9PiB0eXBlb2YgZSAhPT0gJ3N0cmluZycgPyBlICsgJycgOiBlKTtcbiAgICB9XG4gICAgYXJnU3RyaW5nID0gYXJnU3RyaW5nLnRyaW0oKTtcbiAgICBsZXQgaSA9IDA7XG4gICAgbGV0IHByZXZDID0gbnVsbDtcbiAgICBsZXQgYyA9IG51bGw7XG4gICAgbGV0IG9wZW5pbmcgPSBudWxsO1xuICAgIGNvbnN0IGFyZ3MgPSBbXTtcbiAgICBmb3IgKGxldCBpaSA9IDA7IGlpIDwgYXJnU3RyaW5nLmxlbmd0aDsgaWkrKykge1xuICAgICAgICBwcmV2QyA9IGM7XG4gICAgICAgIGMgPSBhcmdTdHJpbmcuY2hhckF0KGlpKTtcbiAgICAgICAgaWYgKGMgPT09ICcgJyAmJiAhb3BlbmluZykge1xuICAgICAgICAgICAgaWYgKCEocHJldkMgPT09ICcgJykpIHtcbiAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYyA9PT0gb3BlbmluZykge1xuICAgICAgICAgICAgb3BlbmluZyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoKGMgPT09IFwiJ1wiIHx8IGMgPT09ICdcIicpICYmICFvcGVuaW5nKSB7XG4gICAgICAgICAgICBvcGVuaW5nID0gYztcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWFyZ3NbaV0pXG4gICAgICAgICAgICBhcmdzW2ldID0gJyc7XG4gICAgICAgIGFyZ3NbaV0gKz0gYztcbiAgICB9XG4gICAgcmV0dXJuIGFyZ3M7XG59XG5cbnZhciBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleTtcbihmdW5jdGlvbiAoRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXkpIHtcbiAgICBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleVtcIkJPT0xFQU5cIl0gPSBcImJvb2xlYW5cIjtcbiAgICBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleVtcIlNUUklOR1wiXSA9IFwic3RyaW5nXCI7XG4gICAgRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXlbXCJOVU1CRVJcIl0gPSBcIm51bWJlclwiO1xuICAgIERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5W1wiQVJSQVlcIl0gPSBcImFycmF5XCI7XG59KShEZWZhdWx0VmFsdWVzRm9yVHlwZUtleSB8fCAoRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXkgPSB7fSkpO1xuXG5sZXQgbWl4aW47XG5jbGFzcyBZYXJnc1BhcnNlciB7XG4gICAgY29uc3RydWN0b3IoX21peGluKSB7XG4gICAgICAgIG1peGluID0gX21peGluO1xuICAgIH1cbiAgICBwYXJzZShhcmdzSW5wdXQsIG9wdGlvbnMpIHtcbiAgICAgICAgY29uc3Qgb3B0cyA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAgICAgYWxpYXM6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGFycmF5OiB1bmRlZmluZWQsXG4gICAgICAgICAgICBib29sZWFuOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBjb25maWc6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNvbmZpZ09iamVjdHM6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNvZXJjZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgY291bnQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGRlZmF1bHQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGVudlByZWZpeDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgbmFyZzogdW5kZWZpbmVkLFxuICAgICAgICAgICAgbm9ybWFsaXplOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBzdHJpbmc6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIG51bWJlcjogdW5kZWZpbmVkLFxuICAgICAgICAgICAgX186IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGtleTogdW5kZWZpbmVkXG4gICAgICAgIH0sIG9wdGlvbnMpO1xuICAgICAgICBjb25zdCBhcmdzID0gdG9rZW5pemVBcmdTdHJpbmcoYXJnc0lucHV0KTtcbiAgICAgICAgY29uc3QgYWxpYXNlcyA9IGNvbWJpbmVBbGlhc2VzKE9iamVjdC5hc3NpZ24oT2JqZWN0LmNyZWF0ZShudWxsKSwgb3B0cy5hbGlhcykpO1xuICAgICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gT2JqZWN0LmFzc2lnbih7XG4gICAgICAgICAgICAnYm9vbGVhbi1uZWdhdGlvbic6IHRydWUsXG4gICAgICAgICAgICAnY2FtZWwtY2FzZS1leHBhbnNpb24nOiB0cnVlLFxuICAgICAgICAgICAgJ2NvbWJpbmUtYXJyYXlzJzogZmFsc2UsXG4gICAgICAgICAgICAnZG90LW5vdGF0aW9uJzogdHJ1ZSxcbiAgICAgICAgICAgICdkdXBsaWNhdGUtYXJndW1lbnRzLWFycmF5JzogdHJ1ZSxcbiAgICAgICAgICAgICdmbGF0dGVuLWR1cGxpY2F0ZS1hcnJheXMnOiB0cnVlLFxuICAgICAgICAgICAgJ2dyZWVkeS1hcnJheXMnOiB0cnVlLFxuICAgICAgICAgICAgJ2hhbHQtYXQtbm9uLW9wdGlvbic6IGZhbHNlLFxuICAgICAgICAgICAgJ25hcmdzLWVhdHMtb3B0aW9ucyc6IGZhbHNlLFxuICAgICAgICAgICAgJ25lZ2F0aW9uLXByZWZpeCc6ICduby0nLFxuICAgICAgICAgICAgJ3BhcnNlLW51bWJlcnMnOiB0cnVlLFxuICAgICAgICAgICAgJ3BhcnNlLXBvc2l0aW9uYWwtbnVtYmVycyc6IHRydWUsXG4gICAgICAgICAgICAncG9wdWxhdGUtLSc6IGZhbHNlLFxuICAgICAgICAgICAgJ3NldC1wbGFjZWhvbGRlci1rZXknOiBmYWxzZSxcbiAgICAgICAgICAgICdzaG9ydC1vcHRpb24tZ3JvdXBzJzogdHJ1ZSxcbiAgICAgICAgICAgICdzdHJpcC1hbGlhc2VkJzogZmFsc2UsXG4gICAgICAgICAgICAnc3RyaXAtZGFzaGVkJzogZmFsc2UsXG4gICAgICAgICAgICAndW5rbm93bi1vcHRpb25zLWFzLWFyZ3MnOiBmYWxzZVxuICAgICAgICB9LCBvcHRzLmNvbmZpZ3VyYXRpb24pO1xuICAgICAgICBjb25zdCBkZWZhdWx0cyA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmNyZWF0ZShudWxsKSwgb3B0cy5kZWZhdWx0KTtcbiAgICAgICAgY29uc3QgY29uZmlnT2JqZWN0cyA9IG9wdHMuY29uZmlnT2JqZWN0cyB8fCBbXTtcbiAgICAgICAgY29uc3QgZW52UHJlZml4ID0gb3B0cy5lbnZQcmVmaXg7XG4gICAgICAgIGNvbnN0IG5vdEZsYWdzT3B0aW9uID0gY29uZmlndXJhdGlvblsncG9wdWxhdGUtLSddO1xuICAgICAgICBjb25zdCBub3RGbGFnc0FyZ3YgPSBub3RGbGFnc09wdGlvbiA/ICctLScgOiAnXyc7XG4gICAgICAgIGNvbnN0IG5ld0FsaWFzZXMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgICAgICBjb25zdCBkZWZhdWx0ZWQgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgICAgICBjb25zdCBfXyA9IG9wdHMuX18gfHwgbWl4aW4uZm9ybWF0O1xuICAgICAgICBjb25zdCBmbGFncyA9IHtcbiAgICAgICAgICAgIGFsaWFzZXM6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgICAgICAgICBhcnJheXM6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgICAgICAgICBib29sczogT2JqZWN0LmNyZWF0ZShudWxsKSxcbiAgICAgICAgICAgIHN0cmluZ3M6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgICAgICAgICBudW1iZXJzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgY291bnRzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgbm9ybWFsaXplOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgY29uZmlnczogT2JqZWN0LmNyZWF0ZShudWxsKSxcbiAgICAgICAgICAgIG5hcmdzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgY29lcmNpb25zOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAga2V5czogW11cbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgbmVnYXRpdmUgPSAvXi0oWzAtOV0rKFxcLlswLTldKyk/fFxcLlswLTldKykkLztcbiAgICAgICAgY29uc3QgbmVnYXRlZEJvb2xlYW4gPSBuZXcgUmVnRXhwKCdeLS0nICsgY29uZmlndXJhdGlvblsnbmVnYXRpb24tcHJlZml4J10gKyAnKC4rKScpO1xuICAgICAgICBbXS5jb25jYXQob3B0cy5hcnJheSB8fCBbXSkuZmlsdGVyKEJvb2xlYW4pLmZvckVhY2goZnVuY3Rpb24gKG9wdCkge1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gdHlwZW9mIG9wdCA9PT0gJ29iamVjdCcgPyBvcHQua2V5IDogb3B0O1xuICAgICAgICAgICAgY29uc3QgYXNzaWdubWVudCA9IE9iamVjdC5rZXlzKG9wdCkubWFwKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhcnJheUZsYWdLZXlzID0ge1xuICAgICAgICAgICAgICAgICAgICBib29sZWFuOiAnYm9vbHMnLFxuICAgICAgICAgICAgICAgICAgICBzdHJpbmc6ICdzdHJpbmdzJyxcbiAgICAgICAgICAgICAgICAgICAgbnVtYmVyOiAnbnVtYmVycydcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHJldHVybiBhcnJheUZsYWdLZXlzW2tleV07XG4gICAgICAgICAgICB9KS5maWx0ZXIoQm9vbGVhbikucG9wKCk7XG4gICAgICAgICAgICBpZiAoYXNzaWdubWVudCkge1xuICAgICAgICAgICAgICAgIGZsYWdzW2Fzc2lnbm1lbnRdW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmxhZ3MuYXJyYXlzW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgIH0pO1xuICAgICAgICBbXS5jb25jYXQob3B0cy5ib29sZWFuIHx8IFtdKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBmbGFncy5ib29sc1trZXldID0gdHJ1ZTtcbiAgICAgICAgICAgIGZsYWdzLmtleXMucHVzaChrZXkpO1xuICAgICAgICB9KTtcbiAgICAgICAgW10uY29uY2F0KG9wdHMuc3RyaW5nIHx8IFtdKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBmbGFncy5zdHJpbmdzW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgIH0pO1xuICAgICAgICBbXS5jb25jYXQob3B0cy5udW1iZXIgfHwgW10pLmZpbHRlcihCb29sZWFuKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgIGZsYWdzLm51bWJlcnNba2V5XSA9IHRydWU7XG4gICAgICAgICAgICBmbGFncy5rZXlzLnB1c2goa2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIFtdLmNvbmNhdChvcHRzLmNvdW50IHx8IFtdKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBmbGFncy5jb3VudHNba2V5XSA9IHRydWU7XG4gICAgICAgICAgICBmbGFncy5rZXlzLnB1c2goa2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIFtdLmNvbmNhdChvcHRzLm5vcm1hbGl6ZSB8fCBbXSkuZmlsdGVyKEJvb2xlYW4pLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgZmxhZ3Mubm9ybWFsaXplW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodHlwZW9mIG9wdHMubmFyZyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKG9wdHMubmFyZykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MubmFyZ3Nba2V5XSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICBmbGFncy5rZXlzLnB1c2goa2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIG9wdHMuY29lcmNlID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMob3B0cy5jb2VyY2UpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MuY29lcmNpb25zW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLmNvbmZpZyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9wdHMuY29uZmlnKSB8fCB0eXBlb2Ygb3B0cy5jb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgW10uY29uY2F0KG9wdHMuY29uZmlnKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIGZsYWdzLmNvbmZpZ3Nba2V5XSA9IHRydWU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0eXBlb2Ygb3B0cy5jb25maWcgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMob3B0cy5jb25maWcpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgfHwgdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGFncy5jb25maWdzW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGV4dGVuZEFsaWFzZXMob3B0cy5rZXksIGFsaWFzZXMsIG9wdHMuZGVmYXVsdCwgZmxhZ3MuYXJyYXlzKTtcbiAgICAgICAgT2JqZWN0LmtleXMoZGVmYXVsdHMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgKGZsYWdzLmFsaWFzZXNba2V5XSB8fCBbXSkuZm9yRWFjaChmdW5jdGlvbiAoYWxpYXMpIHtcbiAgICAgICAgICAgICAgICBkZWZhdWx0c1thbGlhc10gPSBkZWZhdWx0c1trZXldO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBsZXQgZXJyb3IgPSBudWxsO1xuICAgICAgICBjaGVja0NvbmZpZ3VyYXRpb24oKTtcbiAgICAgICAgbGV0IG5vdEZsYWdzID0gW107XG4gICAgICAgIGNvbnN0IGFyZ3YgPSBPYmplY3QuYXNzaWduKE9iamVjdC5jcmVhdGUobnVsbCksIHsgXzogW10gfSk7XG4gICAgICAgIGNvbnN0IGFyZ3ZSZXR1cm4gPSB7fTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBhcmcgPSBhcmdzW2ldO1xuICAgICAgICAgICAgY29uc3QgdHJ1bmNhdGVkQXJnID0gYXJnLnJlcGxhY2UoL14tezMsfS8sICctLS0nKTtcbiAgICAgICAgICAgIGxldCBicm9rZW47XG4gICAgICAgICAgICBsZXQga2V5O1xuICAgICAgICAgICAgbGV0IGxldHRlcnM7XG4gICAgICAgICAgICBsZXQgbTtcbiAgICAgICAgICAgIGxldCBuZXh0O1xuICAgICAgICAgICAgbGV0IHZhbHVlO1xuICAgICAgICAgICAgaWYgKGFyZyAhPT0gJy0tJyAmJiBpc1Vua25vd25PcHRpb25Bc0FyZyhhcmcpKSB7XG4gICAgICAgICAgICAgICAgcHVzaFBvc2l0aW9uYWwoYXJnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHRydW5jYXRlZEFyZy5tYXRjaCgvLS0tKyg9fCQpLykpIHtcbiAgICAgICAgICAgICAgICBwdXNoUG9zaXRpb25hbChhcmcpO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYXJnLm1hdGNoKC9eLS0uKz0vKSB8fCAoIWNvbmZpZ3VyYXRpb25bJ3Nob3J0LW9wdGlvbi1ncm91cHMnXSAmJiBhcmcubWF0Y2goL14tLis9LykpKSB7XG4gICAgICAgICAgICAgICAgbSA9IGFyZy5tYXRjaCgvXi0tPyhbXj1dKyk9KFtcXHNcXFNdKikkLyk7XG4gICAgICAgICAgICAgICAgaWYgKG0gIT09IG51bGwgJiYgQXJyYXkuaXNBcnJheShtKSAmJiBtLmxlbmd0aCA+PSAzKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMobVsxXSwgZmxhZ3MuYXJyYXlzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGVhdEFycmF5KGksIG1bMV0sIGFyZ3MsIG1bMl0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhtWzFdLCBmbGFncy5uYXJncykgIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpID0gZWF0TmFyZ3MoaSwgbVsxXSwgYXJncywgbVsyXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobVsxXSwgbVsyXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2gobmVnYXRlZEJvb2xlYW4pICYmIGNvbmZpZ3VyYXRpb25bJ2Jvb2xlYW4tbmVnYXRpb24nXSkge1xuICAgICAgICAgICAgICAgIG0gPSBhcmcubWF0Y2gobmVnYXRlZEJvb2xlYW4pO1xuICAgICAgICAgICAgICAgIGlmIChtICE9PSBudWxsICYmIEFycmF5LmlzQXJyYXkobSkgJiYgbS5sZW5ndGggPj0gMikge1xuICAgICAgICAgICAgICAgICAgICBrZXkgPSBtWzFdO1xuICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpID8gW2ZhbHNlXSA6IGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2goL14tLS4rLykgfHwgKCFjb25maWd1cmF0aW9uWydzaG9ydC1vcHRpb24tZ3JvdXBzJ10gJiYgYXJnLm1hdGNoKC9eLVteLV0rLykpKSB7XG4gICAgICAgICAgICAgICAgbSA9IGFyZy5tYXRjaCgvXi0tPyguKykvKTtcbiAgICAgICAgICAgICAgICBpZiAobSAhPT0gbnVsbCAmJiBBcnJheS5pc0FycmF5KG0pICYmIG0ubGVuZ3RoID49IDIpIHtcbiAgICAgICAgICAgICAgICAgICAga2V5ID0gbVsxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmFycmF5cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlYXRBcnJheShpLCBrZXksIGFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5hcmdzKSAhPT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlYXROYXJncyhpLCBrZXksIGFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV4dCA9IGFyZ3NbaSArIDFdO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5leHQgIT09IHVuZGVmaW5lZCAmJiAoIW5leHQubWF0Y2goL14tLykgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXh0Lm1hdGNoKG5lZ2F0aXZlKSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgvXih0cnVlfGZhbHNlKSQvLnRlc3QobmV4dCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBkZWZhdWx0VmFsdWUoa2V5KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2goL14tLlxcLi4rPS8pKSB7XG4gICAgICAgICAgICAgICAgbSA9IGFyZy5tYXRjaCgvXi0oW149XSspPShbXFxzXFxTXSopJC8pO1xuICAgICAgICAgICAgICAgIGlmIChtICE9PSBudWxsICYmIEFycmF5LmlzQXJyYXkobSkgJiYgbS5sZW5ndGggPj0gMykge1xuICAgICAgICAgICAgICAgICAgICBzZXRBcmcobVsxXSwgbVsyXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYXJnLm1hdGNoKC9eLS5cXC4uKy8pICYmICFhcmcubWF0Y2gobmVnYXRpdmUpKSB7XG4gICAgICAgICAgICAgICAgbmV4dCA9IGFyZ3NbaSArIDFdO1xuICAgICAgICAgICAgICAgIG0gPSBhcmcubWF0Y2goL14tKC5cXC4uKykvKTtcbiAgICAgICAgICAgICAgICBpZiAobSAhPT0gbnVsbCAmJiBBcnJheS5pc0FycmF5KG0pICYmIG0ubGVuZ3RoID49IDIpIHtcbiAgICAgICAgICAgICAgICAgICAga2V5ID0gbVsxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG5leHQgIT09IHVuZGVmaW5lZCAmJiAhbmV4dC5tYXRjaCgvXi0vKSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmJvb2xzKSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhrZXksIG5leHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaSsrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgZGVmYXVsdFZhbHVlKGtleSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYXJnLm1hdGNoKC9eLVteLV0rLykgJiYgIWFyZy5tYXRjaChuZWdhdGl2ZSkpIHtcbiAgICAgICAgICAgICAgICBsZXR0ZXJzID0gYXJnLnNsaWNlKDEsIC0xKS5zcGxpdCgnJyk7XG4gICAgICAgICAgICAgICAgYnJva2VuID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsZXR0ZXJzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSBhcmcuc2xpY2UoaiArIDIpO1xuICAgICAgICAgICAgICAgICAgICBpZiAobGV0dGVyc1tqICsgMV0gJiYgbGV0dGVyc1tqICsgMV0gPT09ICc9Jykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBhcmcuc2xpY2UoaiArIDMpO1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5ID0gbGV0dGVyc1tqXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGVhdEFycmF5KGksIGtleSwgYXJncywgdmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MubmFyZ3MpICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlYXROYXJncyhpLCBrZXksIGFyZ3MsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhrZXksIHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGJyb2tlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAobmV4dCA9PT0gJy0nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobGV0dGVyc1tqXSwgbmV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoL1tBLVphLXpdLy50ZXN0KGxldHRlcnNbal0pICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAvXi0/XFxkKyhcXC5cXGQqKT8oZS0/XFxkKyk/JC8udGVzdChuZXh0KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tBbGxBbGlhc2VzKG5leHQsIGZsYWdzLmJvb2xzKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhsZXR0ZXJzW2pdLCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyb2tlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAobGV0dGVyc1tqICsgMV0gJiYgbGV0dGVyc1tqICsgMV0ubWF0Y2goL1xcVy8pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobGV0dGVyc1tqXSwgbmV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBicm9rZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobGV0dGVyc1tqXSwgZGVmYXVsdFZhbHVlKGxldHRlcnNbal0pKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBrZXkgPSBhcmcuc2xpY2UoLTEpWzBdO1xuICAgICAgICAgICAgICAgIGlmICghYnJva2VuICYmIGtleSAhPT0gJy0nKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpID0gZWF0QXJyYXkoaSwga2V5LCBhcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5uYXJncykgIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpID0gZWF0TmFyZ3MoaSwga2V5LCBhcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5leHQgPSBhcmdzW2kgKyAxXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuZXh0ICE9PSB1bmRlZmluZWQgJiYgKCEvXigtfC0tKVteLV0vLnRlc3QobmV4dCkgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXh0Lm1hdGNoKG5lZ2F0aXZlKSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgvXih0cnVlfGZhbHNlKSQvLnRlc3QobmV4dCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBkZWZhdWx0VmFsdWUoa2V5KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2goL14tWzAtOV0kLykgJiZcbiAgICAgICAgICAgICAgICBhcmcubWF0Y2gobmVnYXRpdmUpICYmXG4gICAgICAgICAgICAgICAgY2hlY2tBbGxBbGlhc2VzKGFyZy5zbGljZSgxKSwgZmxhZ3MuYm9vbHMpKSB7XG4gICAgICAgICAgICAgICAga2V5ID0gYXJnLnNsaWNlKDEpO1xuICAgICAgICAgICAgICAgIHNldEFyZyhrZXksIGRlZmF1bHRWYWx1ZShrZXkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGFyZyA9PT0gJy0tJykge1xuICAgICAgICAgICAgICAgIG5vdEZsYWdzID0gYXJncy5zbGljZShpICsgMSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChjb25maWd1cmF0aW9uWydoYWx0LWF0LW5vbi1vcHRpb24nXSkge1xuICAgICAgICAgICAgICAgIG5vdEZsYWdzID0gYXJncy5zbGljZShpKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHB1c2hQb3NpdGlvbmFsKGFyZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYXBwbHlFbnZWYXJzKGFyZ3YsIHRydWUpO1xuICAgICAgICBhcHBseUVudlZhcnMoYXJndiwgZmFsc2UpO1xuICAgICAgICBzZXRDb25maWcoYXJndik7XG4gICAgICAgIHNldENvbmZpZ09iamVjdHMoKTtcbiAgICAgICAgYXBwbHlEZWZhdWx0c0FuZEFsaWFzZXMoYXJndiwgZmxhZ3MuYWxpYXNlcywgZGVmYXVsdHMsIHRydWUpO1xuICAgICAgICBhcHBseUNvZXJjaW9ucyhhcmd2KTtcbiAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ3NldC1wbGFjZWhvbGRlci1rZXknXSlcbiAgICAgICAgICAgIHNldFBsYWNlaG9sZGVyS2V5cyhhcmd2KTtcbiAgICAgICAgT2JqZWN0LmtleXMoZmxhZ3MuY291bnRzKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgIGlmICghaGFzS2V5KGFyZ3YsIGtleS5zcGxpdCgnLicpKSlcbiAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCAwKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChub3RGbGFnc09wdGlvbiAmJiBub3RGbGFncy5sZW5ndGgpXG4gICAgICAgICAgICBhcmd2W25vdEZsYWdzQXJndl0gPSBbXTtcbiAgICAgICAgbm90RmxhZ3MuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBhcmd2W25vdEZsYWdzQXJndl0ucHVzaChrZXkpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ2NhbWVsLWNhc2UtZXhwYW5zaW9uJ10gJiYgY29uZmlndXJhdGlvblsnc3RyaXAtZGFzaGVkJ10pIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFyZ3YpLmZpbHRlcihrZXkgPT4ga2V5ICE9PSAnLS0nICYmIGtleS5pbmNsdWRlcygnLScpKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgZGVsZXRlIGFyZ3Zba2V5XTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25maWd1cmF0aW9uWydzdHJpcC1hbGlhc2VkJ10pIHtcbiAgICAgICAgICAgIFtdLmNvbmNhdCguLi5PYmplY3Qua2V5cyhhbGlhc2VzKS5tYXAoayA9PiBhbGlhc2VzW2tdKSkuZm9yRWFjaChhbGlhcyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ2NhbWVsLWNhc2UtZXhwYW5zaW9uJ10gJiYgYWxpYXMuaW5jbHVkZXMoJy0nKSkge1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgYXJndlthbGlhcy5zcGxpdCgnLicpLm1hcChwcm9wID0+IGNhbWVsQ2FzZShwcm9wKSkuam9pbignLicpXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGVsZXRlIGFyZ3ZbYWxpYXNdO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gcHVzaFBvc2l0aW9uYWwoYXJnKSB7XG4gICAgICAgICAgICBjb25zdCBtYXliZUNvZXJjZWROdW1iZXIgPSBtYXliZUNvZXJjZU51bWJlcignXycsIGFyZyk7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG1heWJlQ29lcmNlZE51bWJlciA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIG1heWJlQ29lcmNlZE51bWJlciA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICBhcmd2Ll8ucHVzaChtYXliZUNvZXJjZWROdW1iZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGVhdE5hcmdzKGksIGtleSwgYXJncywgYXJnQWZ0ZXJFcXVhbFNpZ24pIHtcbiAgICAgICAgICAgIGxldCBpaTtcbiAgICAgICAgICAgIGxldCB0b0VhdCA9IGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5hcmdzKTtcbiAgICAgICAgICAgIHRvRWF0ID0gdHlwZW9mIHRvRWF0ICE9PSAnbnVtYmVyJyB8fCBpc05hTih0b0VhdCkgPyAxIDogdG9FYXQ7XG4gICAgICAgICAgICBpZiAodG9FYXQgPT09IDApIHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzVW5kZWZpbmVkKGFyZ0FmdGVyRXF1YWxTaWduKSkge1xuICAgICAgICAgICAgICAgICAgICBlcnJvciA9IEVycm9yKF9fKCdBcmd1bWVudCB1bmV4cGVjdGVkIGZvcjogJXMnLCBrZXkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgZGVmYXVsdFZhbHVlKGtleSkpO1xuICAgICAgICAgICAgICAgIHJldHVybiBpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IGF2YWlsYWJsZSA9IGlzVW5kZWZpbmVkKGFyZ0FmdGVyRXF1YWxTaWduKSA/IDAgOiAxO1xuICAgICAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ25hcmdzLWVhdHMtb3B0aW9ucyddKSB7XG4gICAgICAgICAgICAgICAgaWYgKGFyZ3MubGVuZ3RoIC0gKGkgKyAxKSArIGF2YWlsYWJsZSA8IHRvRWF0KSB7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ05vdCBlbm91Z2ggYXJndW1lbnRzIGZvbGxvd2luZzogJXMnLCBrZXkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYXZhaWxhYmxlID0gdG9FYXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBmb3IgKGlpID0gaSArIDE7IGlpIDwgYXJncy5sZW5ndGg7IGlpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFhcmdzW2lpXS5tYXRjaCgvXi1bXjAtOV0vKSB8fCBhcmdzW2lpXS5tYXRjaChuZWdhdGl2ZSkgfHwgaXNVbmtub3duT3B0aW9uQXNBcmcoYXJnc1tpaV0pKVxuICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlKys7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoYXZhaWxhYmxlIDwgdG9FYXQpXG4gICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ05vdCBlbm91Z2ggYXJndW1lbnRzIGZvbGxvd2luZzogJXMnLCBrZXkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxldCBjb25zdW1lZCA9IE1hdGgubWluKGF2YWlsYWJsZSwgdG9FYXQpO1xuICAgICAgICAgICAgaWYgKCFpc1VuZGVmaW5lZChhcmdBZnRlckVxdWFsU2lnbikgJiYgY29uc3VtZWQgPiAwKSB7XG4gICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgYXJnQWZ0ZXJFcXVhbFNpZ24pO1xuICAgICAgICAgICAgICAgIGNvbnN1bWVkLS07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGlpID0gaSArIDE7IGlpIDwgKGNvbnN1bWVkICsgaSArIDEpOyBpaSsrKSB7XG4gICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgYXJnc1tpaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIChpICsgY29uc3VtZWQpO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGVhdEFycmF5KGksIGtleSwgYXJncywgYXJnQWZ0ZXJFcXVhbFNpZ24pIHtcbiAgICAgICAgICAgIGxldCBhcmdzVG9TZXQgPSBbXTtcbiAgICAgICAgICAgIGxldCBuZXh0ID0gYXJnQWZ0ZXJFcXVhbFNpZ24gfHwgYXJnc1tpICsgMV07XG4gICAgICAgICAgICBjb25zdCBuYXJnc0NvdW50ID0gY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MubmFyZ3MpO1xuICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmJvb2xzKSAmJiAhKC9eKHRydWV8ZmFsc2UpJC8udGVzdChuZXh0KSkpIHtcbiAgICAgICAgICAgICAgICBhcmdzVG9TZXQucHVzaCh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzVW5kZWZpbmVkKG5leHQpIHx8XG4gICAgICAgICAgICAgICAgKGlzVW5kZWZpbmVkKGFyZ0FmdGVyRXF1YWxTaWduKSAmJiAvXi0vLnRlc3QobmV4dCkgJiYgIW5lZ2F0aXZlLnRlc3QobmV4dCkgJiYgIWlzVW5rbm93bk9wdGlvbkFzQXJnKG5leHQpKSkge1xuICAgICAgICAgICAgICAgIGlmIChkZWZhdWx0c1trZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVmVmFsID0gZGVmYXVsdHNba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgYXJnc1RvU2V0ID0gQXJyYXkuaXNBcnJheShkZWZWYWwpID8gZGVmVmFsIDogW2RlZlZhbF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1VuZGVmaW5lZChhcmdBZnRlckVxdWFsU2lnbikpIHtcbiAgICAgICAgICAgICAgICAgICAgYXJnc1RvU2V0LnB1c2gocHJvY2Vzc1ZhbHVlKGtleSwgYXJnQWZ0ZXJFcXVhbFNpZ24pKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaWkgPSBpICsgMTsgaWkgPCBhcmdzLmxlbmd0aDsgaWkrKykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoKCFjb25maWd1cmF0aW9uWydncmVlZHktYXJyYXlzJ10gJiYgYXJnc1RvU2V0Lmxlbmd0aCA+IDApIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAobmFyZ3NDb3VudCAmJiB0eXBlb2YgbmFyZ3NDb3VudCA9PT0gJ251bWJlcicgJiYgYXJnc1RvU2V0Lmxlbmd0aCA+PSBuYXJnc0NvdW50KSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBuZXh0ID0gYXJnc1tpaV07XG4gICAgICAgICAgICAgICAgICAgIGlmICgvXi0vLnRlc3QobmV4dCkgJiYgIW5lZ2F0aXZlLnRlc3QobmV4dCkgJiYgIWlzVW5rbm93bk9wdGlvbkFzQXJnKG5leHQpKVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGkgPSBpaTtcbiAgICAgICAgICAgICAgICAgICAgYXJnc1RvU2V0LnB1c2gocHJvY2Vzc1ZhbHVlKGtleSwgbmV4dCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0eXBlb2YgbmFyZ3NDb3VudCA9PT0gJ251bWJlcicgJiYgKChuYXJnc0NvdW50ICYmIGFyZ3NUb1NldC5sZW5ndGggPCBuYXJnc0NvdW50KSB8fFxuICAgICAgICAgICAgICAgIChpc05hTihuYXJnc0NvdW50KSAmJiBhcmdzVG9TZXQubGVuZ3RoID09PSAwKSkpIHtcbiAgICAgICAgICAgICAgICBlcnJvciA9IEVycm9yKF9fKCdOb3QgZW5vdWdoIGFyZ3VtZW50cyBmb2xsb3dpbmc6ICVzJywga2V5KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXRBcmcoa2V5LCBhcmdzVG9TZXQpO1xuICAgICAgICAgICAgcmV0dXJuIGk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gc2V0QXJnKGtleSwgdmFsKSB7XG4gICAgICAgICAgICBpZiAoLy0vLnRlc3Qoa2V5KSAmJiBjb25maWd1cmF0aW9uWydjYW1lbC1jYXNlLWV4cGFuc2lvbiddKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYWxpYXMgPSBrZXkuc3BsaXQoJy4nKS5tYXAoZnVuY3Rpb24gKHByb3ApIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbWVsQ2FzZShwcm9wKTtcbiAgICAgICAgICAgICAgICB9KS5qb2luKCcuJyk7XG4gICAgICAgICAgICAgICAgYWRkTmV3QWxpYXMoa2V5LCBhbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHByb2Nlc3NWYWx1ZShrZXksIHZhbCk7XG4gICAgICAgICAgICBjb25zdCBzcGxpdEtleSA9IGtleS5zcGxpdCgnLicpO1xuICAgICAgICAgICAgc2V0S2V5KGFyZ3YsIHNwbGl0S2V5LCB2YWx1ZSk7XG4gICAgICAgICAgICBpZiAoZmxhZ3MuYWxpYXNlc1trZXldKSB7XG4gICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qga2V5UHJvcGVydGllcyA9IHguc3BsaXQoJy4nKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0S2V5KGFyZ3YsIGtleVByb3BlcnRpZXMsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzcGxpdEtleS5sZW5ndGggPiAxICYmIGNvbmZpZ3VyYXRpb25bJ2RvdC1ub3RhdGlvbiddKSB7XG4gICAgICAgICAgICAgICAgKGZsYWdzLmFsaWFzZXNbc3BsaXRLZXlbMF1dIHx8IFtdKS5mb3JFYWNoKGZ1bmN0aW9uICh4KSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBrZXlQcm9wZXJ0aWVzID0geC5zcGxpdCgnLicpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhID0gW10uY29uY2F0KHNwbGl0S2V5KTtcbiAgICAgICAgICAgICAgICAgICAgYS5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgICBrZXlQcm9wZXJ0aWVzID0ga2V5UHJvcGVydGllcy5jb25jYXQoYSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghKGZsYWdzLmFsaWFzZXNba2V5XSB8fCBbXSkuaW5jbHVkZXMoa2V5UHJvcGVydGllcy5qb2luKCcuJykpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRLZXkoYXJndiwga2V5UHJvcGVydGllcywgdmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3Mubm9ybWFsaXplKSAmJiAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYXJyYXlzKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGtleXMgPSBba2V5XS5jb25jYXQoZmxhZ3MuYWxpYXNlc1trZXldIHx8IFtdKTtcbiAgICAgICAgICAgICAgICBrZXlzLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoYXJndlJldHVybiwga2V5LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgZ2V0KCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0KHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IG1peGluLm5vcm1hbGl6ZSh2YWx1ZSkgOiB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gYWRkTmV3QWxpYXMoa2V5LCBhbGlhcykge1xuICAgICAgICAgICAgaWYgKCEoZmxhZ3MuYWxpYXNlc1trZXldICYmIGZsYWdzLmFsaWFzZXNba2V5XS5sZW5ndGgpKSB7XG4gICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldID0gW2FsaWFzXTtcbiAgICAgICAgICAgICAgICBuZXdBbGlhc2VzW2FsaWFzXSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIShmbGFncy5hbGlhc2VzW2FsaWFzXSAmJiBmbGFncy5hbGlhc2VzW2FsaWFzXS5sZW5ndGgpKSB7XG4gICAgICAgICAgICAgICAgYWRkTmV3QWxpYXMoYWxpYXMsIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gcHJvY2Vzc1ZhbHVlKGtleSwgdmFsKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAodmFsWzBdID09PSBcIidcIiB8fCB2YWxbMF0gPT09ICdcIicpICYmXG4gICAgICAgICAgICAgICAgdmFsW3ZhbC5sZW5ndGggLSAxXSA9PT0gdmFsWzBdKSB7XG4gICAgICAgICAgICAgICAgdmFsID0gdmFsLnN1YnN0cmluZygxLCB2YWwubGVuZ3RoIC0gMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpIHx8IGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpXG4gICAgICAgICAgICAgICAgICAgIHZhbCA9IHZhbCA9PT0gJ3RydWUnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IHZhbHVlID0gQXJyYXkuaXNBcnJheSh2YWwpXG4gICAgICAgICAgICAgICAgPyB2YWwubWFwKGZ1bmN0aW9uICh2KSB7IHJldHVybiBtYXliZUNvZXJjZU51bWJlcihrZXksIHYpOyB9KVxuICAgICAgICAgICAgICAgIDogbWF5YmVDb2VyY2VOdW1iZXIoa2V5LCB2YWwpO1xuICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykgJiYgKGlzVW5kZWZpbmVkKHZhbHVlKSB8fCB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IGluY3JlbWVudCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5vcm1hbGl6ZSkgJiYgY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYXJyYXlzKSkge1xuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0gdmFsLm1hcCgodmFsKSA9PiB7IHJldHVybiBtaXhpbi5ub3JtYWxpemUodmFsKTsgfSk7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IG1peGluLm5vcm1hbGl6ZSh2YWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIG1heWJlQ29lcmNlTnVtYmVyKGtleSwgdmFsdWUpIHtcbiAgICAgICAgICAgIGlmICghY29uZmlndXJhdGlvblsncGFyc2UtcG9zaXRpb25hbC1udW1iZXJzJ10gJiYga2V5ID09PSAnXycpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICAgICAgaWYgKCFjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5zdHJpbmdzKSAmJiAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNob3VsZENvZXJjZU51bWJlciA9IGxvb2tzTGlrZU51bWJlcih2YWx1ZSkgJiYgY29uZmlndXJhdGlvblsncGFyc2UtbnVtYmVycyddICYmIChOdW1iZXIuaXNTYWZlSW50ZWdlcihNYXRoLmZsb29yKHBhcnNlRmxvYXQoYCR7dmFsdWV9YCkpKSk7XG4gICAgICAgICAgICAgICAgaWYgKHNob3VsZENvZXJjZU51bWJlciB8fCAoIWlzVW5kZWZpbmVkKHZhbHVlKSAmJiBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5udW1iZXJzKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBOdW1iZXIodmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRDb25maWcoYXJndikge1xuICAgICAgICAgICAgY29uc3QgY29uZmlnTG9va3VwID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgICAgIGFwcGx5RGVmYXVsdHNBbmRBbGlhc2VzKGNvbmZpZ0xvb2t1cCwgZmxhZ3MuYWxpYXNlcywgZGVmYXVsdHMpO1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoZmxhZ3MuY29uZmlncykuZm9yRWFjaChmdW5jdGlvbiAoY29uZmlnS2V5KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29uZmlnUGF0aCA9IGFyZ3ZbY29uZmlnS2V5XSB8fCBjb25maWdMb29rdXBbY29uZmlnS2V5XTtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnUGF0aCkge1xuICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGNvbmZpZyA9IG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXNvbHZlZENvbmZpZ1BhdGggPSBtaXhpbi5yZXNvbHZlKG1peGluLmN3ZCgpLCBjb25maWdQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc29sdmVDb25maWcgPSBmbGFncy5jb25maWdzW2NvbmZpZ0tleV07XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc29sdmVDb25maWcgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maWcgPSByZXNvbHZlQ29uZmlnKHJlc29sdmVkQ29uZmlnUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZyA9IGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb25maWcgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGNvbmZpZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZyA9IG1peGluLnJlcXVpcmUocmVzb2x2ZWRDb25maWdQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHNldENvbmZpZ09iamVjdChjb25maWcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV4Lm5hbWUgPT09ICdQZXJtaXNzaW9uRGVuaWVkJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYXJndltjb25maWdLZXldKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ0ludmFsaWQgSlNPTiBjb25maWcgZmlsZTogJXMnLCBjb25maWdQYXRoKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRDb25maWdPYmplY3QoY29uZmlnLCBwcmV2KSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhjb25maWcpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gY29uZmlnW2tleV07XG4gICAgICAgICAgICAgICAgY29uc3QgZnVsbEtleSA9IHByZXYgPyBwcmV2ICsgJy4nICsga2V5IDoga2V5O1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICE9PSBudWxsICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSAmJiBjb25maWd1cmF0aW9uWydkb3Qtbm90YXRpb24nXSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRDb25maWdPYmplY3QodmFsdWUsIGZ1bGxLZXkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFoYXNLZXkoYXJndiwgZnVsbEtleS5zcGxpdCgnLicpKSB8fCAoY2hlY2tBbGxBbGlhc2VzKGZ1bGxLZXksIGZsYWdzLmFycmF5cykgJiYgY29uZmlndXJhdGlvblsnY29tYmluZS1hcnJheXMnXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhmdWxsS2V5LCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRDb25maWdPYmplY3RzKCkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBjb25maWdPYmplY3RzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIGNvbmZpZ09iamVjdHMuZm9yRWFjaChmdW5jdGlvbiAoY29uZmlnT2JqZWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIHNldENvbmZpZ09iamVjdChjb25maWdPYmplY3QpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGFwcGx5RW52VmFycyhhcmd2LCBjb25maWdPbmx5KSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGVudlByZWZpeCA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgcHJlZml4ID0gdHlwZW9mIGVudlByZWZpeCA9PT0gJ3N0cmluZycgPyBlbnZQcmVmaXggOiAnJztcbiAgICAgICAgICAgIGNvbnN0IGVudiA9IG1peGluLmVudigpO1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoZW52KS5mb3JFYWNoKGZ1bmN0aW9uIChlbnZWYXIpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJlZml4ID09PSAnJyB8fCBlbnZWYXIubGFzdEluZGV4T2YocHJlZml4LCAwKSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXlzID0gZW52VmFyLnNwbGl0KCdfXycpLm1hcChmdW5jdGlvbiAoa2V5LCBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleSA9IGtleS5zdWJzdHJpbmcocHJlZml4Lmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FtZWxDYXNlKGtleSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBpZiAoKChjb25maWdPbmx5ICYmIGZsYWdzLmNvbmZpZ3Nba2V5cy5qb2luKCcuJyldKSB8fCAhY29uZmlnT25seSkgJiYgIWhhc0tleShhcmd2LCBrZXlzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V0QXJnKGtleXMuam9pbignLicpLCBlbnZbZW52VmFyXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBhcHBseUNvZXJjaW9ucyhhcmd2KSB7XG4gICAgICAgICAgICBsZXQgY29lcmNlO1xuICAgICAgICAgICAgY29uc3QgYXBwbGllZCA9IG5ldyBTZXQoKTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFyZ3YpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgIGlmICghYXBwbGllZC5oYXMoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICBjb2VyY2UgPSBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5jb2VyY2lvbnMpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGNvZXJjZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IG1heWJlQ29lcmNlTnVtYmVyKGtleSwgY29lcmNlKGFyZ3Zba2V5XSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChbXS5jb25jYXQoZmxhZ3MuYWxpYXNlc1trZXldIHx8IFtdLCBrZXkpKS5mb3JFYWNoKGFsaSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpZWQuYWRkKGFsaSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3ZbYWxpXSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gZXJyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gc2V0UGxhY2Vob2xkZXJLZXlzKGFyZ3YpIHtcbiAgICAgICAgICAgIGZsYWdzLmtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKH5rZXkuaW5kZXhPZignLicpKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBhcmd2W2tleV0gPT09ICd1bmRlZmluZWQnKVxuICAgICAgICAgICAgICAgICAgICBhcmd2W2tleV0gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiBhcmd2O1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGFwcGx5RGVmYXVsdHNBbmRBbGlhc2VzKG9iaiwgYWxpYXNlcywgZGVmYXVsdHMsIGNhbkxvZyA9IGZhbHNlKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhkZWZhdWx0cykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgaWYgKCFoYXNLZXkob2JqLCBrZXkuc3BsaXQoJy4nKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0S2V5KG9iaiwga2V5LnNwbGl0KCcuJyksIGRlZmF1bHRzW2tleV0pO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2FuTG9nKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdGVkW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAoYWxpYXNlc1trZXldIHx8IFtdKS5mb3JFYWNoKGZ1bmN0aW9uICh4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzS2V5KG9iaiwgeC5zcGxpdCgnLicpKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRLZXkob2JqLCB4LnNwbGl0KCcuJyksIGRlZmF1bHRzW2tleV0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBoYXNLZXkob2JqLCBrZXlzKSB7XG4gICAgICAgICAgICBsZXQgbyA9IG9iajtcbiAgICAgICAgICAgIGlmICghY29uZmlndXJhdGlvblsnZG90LW5vdGF0aW9uJ10pXG4gICAgICAgICAgICAgICAga2V5cyA9IFtrZXlzLmpvaW4oJy4nKV07XG4gICAgICAgICAgICBrZXlzLnNsaWNlKDAsIC0xKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgICAgICBvID0gKG9ba2V5XSB8fCB7fSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IGtleXNba2V5cy5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgbyAhPT0gJ29iamVjdCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHJldHVybiBrZXkgaW4gbztcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRLZXkob2JqLCBrZXlzLCB2YWx1ZSkge1xuICAgICAgICAgICAgbGV0IG8gPSBvYmo7XG4gICAgICAgICAgICBpZiAoIWNvbmZpZ3VyYXRpb25bJ2RvdC1ub3RhdGlvbiddKVxuICAgICAgICAgICAgICAgIGtleXMgPSBba2V5cy5qb2luKCcuJyldO1xuICAgICAgICAgICAga2V5cy5zbGljZSgwLCAtMSkuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAga2V5ID0gc2FuaXRpemVLZXkoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG8gPT09ICdvYmplY3QnICYmIG9ba2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIG9ba2V5XSA9IHt9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG9ba2V5XSAhPT0gJ29iamVjdCcgfHwgQXJyYXkuaXNBcnJheShvW2tleV0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9ba2V5XSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ba2V5XS5wdXNoKHt9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ba2V5XSA9IFtvW2tleV0sIHt9XTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBvID0gb1trZXldW29ba2V5XS5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG8gPSBvW2tleV07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBzYW5pdGl6ZUtleShrZXlzW2tleXMubGVuZ3RoIC0gMV0pO1xuICAgICAgICAgICAgY29uc3QgaXNUeXBlQXJyYXkgPSBjaGVja0FsbEFsaWFzZXMoa2V5cy5qb2luKCcuJyksIGZsYWdzLmFycmF5cyk7XG4gICAgICAgICAgICBjb25zdCBpc1ZhbHVlQXJyYXkgPSBBcnJheS5pc0FycmF5KHZhbHVlKTtcbiAgICAgICAgICAgIGxldCBkdXBsaWNhdGUgPSBjb25maWd1cmF0aW9uWydkdXBsaWNhdGUtYXJndW1lbnRzLWFycmF5J107XG4gICAgICAgICAgICBpZiAoIWR1cGxpY2F0ZSAmJiBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5uYXJncykpIHtcbiAgICAgICAgICAgICAgICBkdXBsaWNhdGUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGlmICgoIWlzVW5kZWZpbmVkKG9ba2V5XSkgJiYgZmxhZ3MubmFyZ3Nba2V5XSA9PT0gMSkgfHwgKEFycmF5LmlzQXJyYXkob1trZXldKSAmJiBvW2tleV0ubGVuZ3RoID09PSBmbGFncy5uYXJnc1trZXldKSkge1xuICAgICAgICAgICAgICAgICAgICBvW2tleV0gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHZhbHVlID09PSBpbmNyZW1lbnQoKSkge1xuICAgICAgICAgICAgICAgIG9ba2V5XSA9IGluY3JlbWVudChvW2tleV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoQXJyYXkuaXNBcnJheShvW2tleV0pKSB7XG4gICAgICAgICAgICAgICAgaWYgKGR1cGxpY2F0ZSAmJiBpc1R5cGVBcnJheSAmJiBpc1ZhbHVlQXJyYXkpIHtcbiAgICAgICAgICAgICAgICAgICAgb1trZXldID0gY29uZmlndXJhdGlvblsnZmxhdHRlbi1kdXBsaWNhdGUtYXJyYXlzJ10gPyBvW2tleV0uY29uY2F0KHZhbHVlKSA6IChBcnJheS5pc0FycmF5KG9ba2V5XVswXSkgPyBvW2tleV0gOiBbb1trZXldXSkuY29uY2F0KFt2YWx1ZV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmICghZHVwbGljYXRlICYmIEJvb2xlYW4oaXNUeXBlQXJyYXkpID09PSBCb29sZWFuKGlzVmFsdWVBcnJheSkpIHtcbiAgICAgICAgICAgICAgICAgICAgb1trZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvW2tleV0gPSBvW2tleV0uY29uY2F0KFt2YWx1ZV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG9ba2V5XSA9PT0gdW5kZWZpbmVkICYmIGlzVHlwZUFycmF5KSB7XG4gICAgICAgICAgICAgICAgb1trZXldID0gaXNWYWx1ZUFycmF5ID8gdmFsdWUgOiBbdmFsdWVdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZHVwbGljYXRlICYmICEob1trZXldID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5jb3VudHMpIHx8XG4gICAgICAgICAgICAgICAgY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpKSkge1xuICAgICAgICAgICAgICAgIG9ba2V5XSA9IFtvW2tleV0sIHZhbHVlXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG9ba2V5XSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGV4dGVuZEFsaWFzZXMoLi4uYXJncykge1xuICAgICAgICAgICAgYXJncy5mb3JFYWNoKGZ1bmN0aW9uIChvYmopIHtcbiAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhvYmogfHwge30pLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmxhZ3MuYWxpYXNlc1trZXldKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICBmbGFncy5hbGlhc2VzW2tleV0gPSBbXS5jb25jYXQoYWxpYXNlc1trZXldIHx8IFtdKTtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldLmNvbmNhdChrZXkpLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvLS8udGVzdCh4KSAmJiBjb25maWd1cmF0aW9uWydjYW1lbC1jYXNlLWV4cGFuc2lvbiddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYyA9IGNhbWVsQ2FzZSh4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYyAhPT0ga2V5ICYmIGZsYWdzLmFsaWFzZXNba2V5XS5pbmRleE9mKGMpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncy5hbGlhc2VzW2tleV0ucHVzaChjKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3QWxpYXNlc1tjXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldLmNvbmNhdChrZXkpLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh4Lmxlbmd0aCA+IDEgJiYgL1tBLVpdLy50ZXN0KHgpICYmIGNvbmZpZ3VyYXRpb25bJ2NhbWVsLWNhc2UtZXhwYW5zaW9uJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjID0gZGVjYW1lbGl6ZSh4LCAnLScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjICE9PSBrZXkgJiYgZmxhZ3MuYWxpYXNlc1trZXldLmluZGV4T2YoYykgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzLmFsaWFzZXNba2V5XS5wdXNoKGMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdBbGlhc2VzW2NdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBmbGFncy5hbGlhc2VzW2tleV0uZm9yRWFjaChmdW5jdGlvbiAoeCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1t4XSA9IFtrZXldLmNvbmNhdChmbGFncy5hbGlhc2VzW2tleV0uZmlsdGVyKGZ1bmN0aW9uICh5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHggIT09IHk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZykge1xuICAgICAgICAgICAgY29uc3QgdG9DaGVjayA9IFtdLmNvbmNhdChmbGFncy5hbGlhc2VzW2tleV0gfHwgW10sIGtleSk7XG4gICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoZmxhZyk7XG4gICAgICAgICAgICBjb25zdCBzZXRBbGlhcyA9IHRvQ2hlY2suZmluZChrZXkgPT4ga2V5cy5pbmNsdWRlcyhrZXkpKTtcbiAgICAgICAgICAgIHJldHVybiBzZXRBbGlhcyA/IGZsYWdbc2V0QWxpYXNdIDogZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gaGFzQW55RmxhZyhrZXkpIHtcbiAgICAgICAgICAgIGNvbnN0IGZsYWdzS2V5cyA9IE9iamVjdC5rZXlzKGZsYWdzKTtcbiAgICAgICAgICAgIGNvbnN0IHRvQ2hlY2sgPSBbXS5jb25jYXQoZmxhZ3NLZXlzLm1hcChrID0+IGZsYWdzW2tdKSk7XG4gICAgICAgICAgICByZXR1cm4gdG9DaGVjay5zb21lKGZ1bmN0aW9uIChmbGFnKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoZmxhZykgPyBmbGFnLmluY2x1ZGVzKGtleSkgOiBmbGFnW2tleV07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBoYXNGbGFnc01hdGNoaW5nKGFyZywgLi4ucGF0dGVybnMpIHtcbiAgICAgICAgICAgIGNvbnN0IHRvQ2hlY2sgPSBbXS5jb25jYXQoLi4ucGF0dGVybnMpO1xuICAgICAgICAgICAgcmV0dXJuIHRvQ2hlY2suc29tZShmdW5jdGlvbiAocGF0dGVybikge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gYXJnLm1hdGNoKHBhdHRlcm4pO1xuICAgICAgICAgICAgICAgIHJldHVybiBtYXRjaCAmJiBoYXNBbnlGbGFnKG1hdGNoWzFdKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGhhc0FsbFNob3J0RmxhZ3MoYXJnKSB7XG4gICAgICAgICAgICBpZiAoYXJnLm1hdGNoKG5lZ2F0aXZlKSB8fCAhYXJnLm1hdGNoKC9eLVteLV0rLykpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsZXQgaGFzQWxsRmxhZ3MgPSB0cnVlO1xuICAgICAgICAgICAgbGV0IG5leHQ7XG4gICAgICAgICAgICBjb25zdCBsZXR0ZXJzID0gYXJnLnNsaWNlKDEpLnNwbGl0KCcnKTtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgbGV0dGVycy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgIG5leHQgPSBhcmcuc2xpY2UoaiArIDIpO1xuICAgICAgICAgICAgICAgIGlmICghaGFzQW55RmxhZyhsZXR0ZXJzW2pdKSkge1xuICAgICAgICAgICAgICAgICAgICBoYXNBbGxGbGFncyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKChsZXR0ZXJzW2ogKyAxXSAmJiBsZXR0ZXJzW2ogKyAxXSA9PT0gJz0nKSB8fFxuICAgICAgICAgICAgICAgICAgICBuZXh0ID09PSAnLScgfHxcbiAgICAgICAgICAgICAgICAgICAgKC9bQS1aYS16XS8udGVzdChsZXR0ZXJzW2pdKSAmJiAvXi0/XFxkKyhcXC5cXGQqKT8oZS0/XFxkKyk/JC8udGVzdChuZXh0KSkgfHxcbiAgICAgICAgICAgICAgICAgICAgKGxldHRlcnNbaiArIDFdICYmIGxldHRlcnNbaiArIDFdLm1hdGNoKC9cXFcvKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGhhc0FsbEZsYWdzO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGlzVW5rbm93bk9wdGlvbkFzQXJnKGFyZykge1xuICAgICAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb25bJ3Vua25vd24tb3B0aW9ucy1hcy1hcmdzJ10gJiYgaXNVbmtub3duT3B0aW9uKGFyZyk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gaXNVbmtub3duT3B0aW9uKGFyZykge1xuICAgICAgICAgICAgYXJnID0gYXJnLnJlcGxhY2UoL14tezMsfS8sICctLScpO1xuICAgICAgICAgICAgaWYgKGFyZy5tYXRjaChuZWdhdGl2ZSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGFzQWxsU2hvcnRGbGFncyhhcmcpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgZmxhZ1dpdGhFcXVhbHMgPSAvXi0rKFtePV0rPyk9W1xcc1xcU10qJC87XG4gICAgICAgICAgICBjb25zdCBub3JtYWxGbGFnID0gL14tKyhbXj1dKz8pJC87XG4gICAgICAgICAgICBjb25zdCBmbGFnRW5kaW5nSW5IeXBoZW4gPSAvXi0rKFtePV0rPyktJC87XG4gICAgICAgICAgICBjb25zdCBmbGFnRW5kaW5nSW5EaWdpdHMgPSAvXi0rKFtePV0rP1xcZCspJC87XG4gICAgICAgICAgICBjb25zdCBmbGFnRW5kaW5nSW5Ob25Xb3JkQ2hhcmFjdGVycyA9IC9eLSsoW149XSs/KVxcVysuKiQvO1xuICAgICAgICAgICAgcmV0dXJuICFoYXNGbGFnc01hdGNoaW5nKGFyZywgZmxhZ1dpdGhFcXVhbHMsIG5lZ2F0ZWRCb29sZWFuLCBub3JtYWxGbGFnLCBmbGFnRW5kaW5nSW5IeXBoZW4sIGZsYWdFbmRpbmdJbkRpZ2l0cywgZmxhZ0VuZGluZ0luTm9uV29yZENoYXJhY3RlcnMpO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGRlZmF1bHRWYWx1ZShrZXkpIHtcbiAgICAgICAgICAgIGlmICghY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmXG4gICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykgJiZcbiAgICAgICAgICAgICAgICBgJHtrZXl9YCBpbiBkZWZhdWx0cykge1xuICAgICAgICAgICAgICAgIHJldHVybiBkZWZhdWx0c1trZXldO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRGb3JUeXBlKGd1ZXNzVHlwZShrZXkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBkZWZhdWx0Rm9yVHlwZSh0eXBlKSB7XG4gICAgICAgICAgICBjb25zdCBkZWYgPSB7XG4gICAgICAgICAgICAgICAgW0RlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LkJPT0xFQU5dOiB0cnVlLFxuICAgICAgICAgICAgICAgIFtEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5TVFJJTkddOiAnJyxcbiAgICAgICAgICAgICAgICBbRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXkuTlVNQkVSXTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIFtEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5BUlJBWV06IFtdXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmV0dXJuIGRlZlt0eXBlXTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBndWVzc1R5cGUoa2V5KSB7XG4gICAgICAgICAgICBsZXQgdHlwZSA9IERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LkJPT0xFQU47XG4gICAgICAgICAgICBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3Muc3RyaW5ncykpXG4gICAgICAgICAgICAgICAgdHlwZSA9IERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LlNUUklORztcbiAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm51bWJlcnMpKVxuICAgICAgICAgICAgICAgIHR5cGUgPSBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5OVU1CRVI7XG4gICAgICAgICAgICBlbHNlIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5ib29scykpXG4gICAgICAgICAgICAgICAgdHlwZSA9IERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LkJPT0xFQU47XG4gICAgICAgICAgICBlbHNlIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKVxuICAgICAgICAgICAgICAgIHR5cGUgPSBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5BUlJBWTtcbiAgICAgICAgICAgIHJldHVybiB0eXBlO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGlzVW5kZWZpbmVkKG51bSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bSA9PT0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGNoZWNrQ29uZmlndXJhdGlvbigpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGZsYWdzLmNvdW50cykuZmluZChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ0ludmFsaWQgY29uZmlndXJhdGlvbjogJXMsIG9wdHMuY291bnQgZXhjbHVkZXMgb3B0cy5hcnJheS4nLCBrZXkpKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5hcmdzKSkge1xuICAgICAgICAgICAgICAgICAgICBlcnJvciA9IEVycm9yKF9fKCdJbnZhbGlkIGNvbmZpZ3VyYXRpb246ICVzLCBvcHRzLmNvdW50IGV4Y2x1ZGVzIG9wdHMubmFyZy4nLCBrZXkpKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBhbGlhc2VzOiBPYmplY3QuYXNzaWduKHt9LCBmbGFncy5hbGlhc2VzKSxcbiAgICAgICAgICAgIGFyZ3Y6IE9iamVjdC5hc3NpZ24oYXJndlJldHVybiwgYXJndiksXG4gICAgICAgICAgICBjb25maWd1cmF0aW9uOiBjb25maWd1cmF0aW9uLFxuICAgICAgICAgICAgZGVmYXVsdGVkOiBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0ZWQpLFxuICAgICAgICAgICAgZXJyb3I6IGVycm9yLFxuICAgICAgICAgICAgbmV3QWxpYXNlczogT2JqZWN0LmFzc2lnbih7fSwgbmV3QWxpYXNlcylcbiAgICAgICAgfTtcbiAgICB9XG59XG5mdW5jdGlvbiBjb21iaW5lQWxpYXNlcyhhbGlhc2VzKSB7XG4gICAgY29uc3QgYWxpYXNBcnJheXMgPSBbXTtcbiAgICBjb25zdCBjb21iaW5lZCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgbGV0IGNoYW5nZSA9IHRydWU7XG4gICAgT2JqZWN0LmtleXMoYWxpYXNlcykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgIGFsaWFzQXJyYXlzLnB1c2goW10uY29uY2F0KGFsaWFzZXNba2V5XSwga2V5KSk7XG4gICAgfSk7XG4gICAgd2hpbGUgKGNoYW5nZSkge1xuICAgICAgICBjaGFuZ2UgPSBmYWxzZTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhbGlhc0FycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgaWkgPSBpICsgMTsgaWkgPCBhbGlhc0FycmF5cy5sZW5ndGg7IGlpKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnRlcnNlY3QgPSBhbGlhc0FycmF5c1tpXS5maWx0ZXIoZnVuY3Rpb24gKHYpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFsaWFzQXJyYXlzW2lpXS5pbmRleE9mKHYpICE9PSAtMTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAoaW50ZXJzZWN0Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBhbGlhc0FycmF5c1tpXSA9IGFsaWFzQXJyYXlzW2ldLmNvbmNhdChhbGlhc0FycmF5c1tpaV0pO1xuICAgICAgICAgICAgICAgICAgICBhbGlhc0FycmF5cy5zcGxpY2UoaWksIDEpO1xuICAgICAgICAgICAgICAgICAgICBjaGFuZ2UgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgYWxpYXNBcnJheXMuZm9yRWFjaChmdW5jdGlvbiAoYWxpYXNBcnJheSkge1xuICAgICAgICBhbGlhc0FycmF5ID0gYWxpYXNBcnJheS5maWx0ZXIoZnVuY3Rpb24gKHYsIGksIHNlbGYpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLmluZGV4T2YodikgPT09IGk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBsYXN0QWxpYXMgPSBhbGlhc0FycmF5LnBvcCgpO1xuICAgICAgICBpZiAobGFzdEFsaWFzICE9PSB1bmRlZmluZWQgJiYgdHlwZW9mIGxhc3RBbGlhcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIGNvbWJpbmVkW2xhc3RBbGlhc10gPSBhbGlhc0FycmF5O1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbWJpbmVkO1xufVxuZnVuY3Rpb24gaW5jcmVtZW50KG9yaWcpIHtcbiAgICByZXR1cm4gb3JpZyAhPT0gdW5kZWZpbmVkID8gb3JpZyArIDEgOiAxO1xufVxuZnVuY3Rpb24gc2FuaXRpemVLZXkoa2V5KSB7XG4gICAgaWYgKGtleSA9PT0gJ19fcHJvdG9fXycpXG4gICAgICAgIHJldHVybiAnX19fcHJvdG9fX18nO1xuICAgIHJldHVybiBrZXk7XG59XG5cbmNvbnN0IG1pbk5vZGVWZXJzaW9uID0gKHByb2Nlc3MgJiYgcHJvY2Vzcy5lbnYgJiYgcHJvY2Vzcy5lbnYuWUFSR1NfTUlOX05PREVfVkVSU0lPTilcbiAgICA/IE51bWJlcihwcm9jZXNzLmVudi5ZQVJHU19NSU5fTk9ERV9WRVJTSU9OKVxuICAgIDogMTA7XG5pZiAocHJvY2VzcyAmJiBwcm9jZXNzLnZlcnNpb24pIHtcbiAgICBjb25zdCBtYWpvciA9IE51bWJlcihwcm9jZXNzLnZlcnNpb24ubWF0Y2goL3YoW14uXSspLylbMV0pO1xuICAgIGlmIChtYWpvciA8IG1pbk5vZGVWZXJzaW9uKSB7XG4gICAgICAgIHRocm93IEVycm9yKGB5YXJncyBwYXJzZXIgc3VwcG9ydHMgYSBtaW5pbXVtIE5vZGUuanMgdmVyc2lvbiBvZiAke21pbk5vZGVWZXJzaW9ufS4gUmVhZCBvdXIgdmVyc2lvbiBzdXBwb3J0IHBvbGljeTogaHR0cHM6Ly9naXRodWIuY29tL3lhcmdzL3lhcmdzLXBhcnNlciNzdXBwb3J0ZWQtbm9kZWpzLXZlcnNpb25zYCk7XG4gICAgfVxufVxuY29uc3QgZW52ID0gcHJvY2VzcyA/IHByb2Nlc3MuZW52IDoge307XG5jb25zdCBwYXJzZXIgPSBuZXcgWWFyZ3NQYXJzZXIoe1xuICAgIGN3ZDogcHJvY2Vzcy5jd2QsXG4gICAgZW52OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBlbnY7XG4gICAgfSxcbiAgICBmb3JtYXQ6IHV0aWwuZm9ybWF0LFxuICAgIG5vcm1hbGl6ZTogcGF0aC5ub3JtYWxpemUsXG4gICAgcmVzb2x2ZTogcGF0aC5yZXNvbHZlLFxuICAgIHJlcXVpcmU6IChwYXRoKSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgcmVxdWlyZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIHJldHVybiByZXF1aXJlKHBhdGgpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHBhdGgubWF0Y2goL1xcLmpzb24kLykpIHtcbiAgICAgICAgICAgIHJldHVybiBmcy5yZWFkRmlsZVN5bmMocGF0aCwgJ3V0ZjgnKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdvbmx5IC5qc29uIGNvbmZpZyBmaWxlcyBhcmUgc3VwcG9ydGVkIGluIEVTTScpO1xuICAgICAgICB9XG4gICAgfVxufSk7XG5jb25zdCB5YXJnc1BhcnNlciA9IGZ1bmN0aW9uIFBhcnNlcihhcmdzLCBvcHRzKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gcGFyc2VyLnBhcnNlKGFyZ3Muc2xpY2UoKSwgb3B0cyk7XG4gICAgcmV0dXJuIHJlc3VsdC5hcmd2O1xufTtcbnlhcmdzUGFyc2VyLmRldGFpbGVkID0gZnVuY3Rpb24gKGFyZ3MsIG9wdHMpIHtcbiAgICByZXR1cm4gcGFyc2VyLnBhcnNlKGFyZ3Muc2xpY2UoKSwgb3B0cyk7XG59O1xueWFyZ3NQYXJzZXIuY2FtZWxDYXNlID0gY2FtZWxDYXNlO1xueWFyZ3NQYXJzZXIuZGVjYW1lbGl6ZSA9IGRlY2FtZWxpemU7XG55YXJnc1BhcnNlci5sb29rc0xpa2VOdW1iZXIgPSBsb29rc0xpa2VOdW1iZXI7XG5cbm1vZHVsZS5leHBvcnRzID0geWFyZ3NQYXJzZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9ICh7b25seUZpcnN0ID0gZmFsc2V9ID0ge30pID0+IHtcblx0Y29uc3QgcGF0dGVybiA9IFtcblx0XHQnW1xcXFx1MDAxQlxcXFx1MDA5Ql1bW1xcXFxdKCkjOz9dKig/Oig/Oig/Oig/OjtbLWEtekEtWlxcXFxkXFxcXC8jJi46PT8lQH5fXSspKnxbYS16QS1aXFxcXGRdKyg/OjtbLWEtekEtWlxcXFxkXFxcXC8jJi46PT8lQH5fXSopKik/XFxcXHUwMDA3KScsXG5cdFx0Jyg/Oig/OlxcXFxkezEsNH0oPzo7XFxcXGR7MCw0fSkqKT9bXFxcXGRBLVBSLVRaY2YtbnRxcnk9Pjx+XSkpJ1xuXHRdLmpvaW4oJ3wnKTtcblxuXHRyZXR1cm4gbmV3IFJlZ0V4cChwYXR0ZXJuLCBvbmx5Rmlyc3QgPyB1bmRlZmluZWQgOiAnZycpO1xufTtcbiIsICIndXNlIHN0cmljdCc7XG5jb25zdCBhbnNpUmVnZXggPSByZXF1aXJlKCdhbnNpLXJlZ2V4Jyk7XG5cbm1vZHVsZS5leHBvcnRzID0gc3RyaW5nID0+IHR5cGVvZiBzdHJpbmcgPT09ICdzdHJpbmcnID8gc3RyaW5nLnJlcGxhY2UoYW5zaVJlZ2V4KCksICcnKSA6IHN0cmluZztcbiIsICIvKiBlc2xpbnQtZGlzYWJsZSB5b2RhICovXG4ndXNlIHN0cmljdCc7XG5cbmNvbnN0IGlzRnVsbHdpZHRoQ29kZVBvaW50ID0gY29kZVBvaW50ID0+IHtcblx0aWYgKE51bWJlci5pc05hTihjb2RlUG9pbnQpKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0Ly8gQ29kZSBwb2ludHMgYXJlIGRlcml2ZWQgZnJvbTpcblx0Ly8gaHR0cDovL3d3dy51bml4Lm9yZy9QdWJsaWMvVU5JREFUQS9FYXN0QXNpYW5XaWR0aC50eHRcblx0aWYgKFxuXHRcdGNvZGVQb2ludCA+PSAweDExMDAgJiYgKFxuXHRcdFx0Y29kZVBvaW50IDw9IDB4MTE1RiB8fCAvLyBIYW5ndWwgSmFtb1xuXHRcdFx0Y29kZVBvaW50ID09PSAweDIzMjkgfHwgLy8gTEVGVC1QT0lOVElORyBBTkdMRSBCUkFDS0VUXG5cdFx0XHRjb2RlUG9pbnQgPT09IDB4MjMyQSB8fCAvLyBSSUdIVC1QT0lOVElORyBBTkdMRSBCUkFDS0VUXG5cdFx0XHQvLyBDSksgUmFkaWNhbHMgU3VwcGxlbWVudCAuLiBFbmNsb3NlZCBDSksgTGV0dGVycyBhbmQgTW9udGhzXG5cdFx0XHQoMHgyRTgwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHgzMjQ3ICYmIGNvZGVQb2ludCAhPT0gMHgzMDNGKSB8fFxuXHRcdFx0Ly8gRW5jbG9zZWQgQ0pLIExldHRlcnMgYW5kIE1vbnRocyAuLiBDSksgVW5pZmllZCBJZGVvZ3JhcGhzIEV4dGVuc2lvbiBBXG5cdFx0XHQoMHgzMjUwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHg0REJGKSB8fFxuXHRcdFx0Ly8gQ0pLIFVuaWZpZWQgSWRlb2dyYXBocyAuLiBZaSBSYWRpY2Fsc1xuXHRcdFx0KDB4NEUwMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4QTRDNikgfHxcblx0XHRcdC8vIEhhbmd1bCBKYW1vIEV4dGVuZGVkLUFcblx0XHRcdCgweEE5NjAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweEE5N0MpIHx8XG5cdFx0XHQvLyBIYW5ndWwgU3lsbGFibGVzXG5cdFx0XHQoMHhBQzAwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHhEN0EzKSB8fFxuXHRcdFx0Ly8gQ0pLIENvbXBhdGliaWxpdHkgSWRlb2dyYXBoc1xuXHRcdFx0KDB4RjkwMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4RkFGRikgfHxcblx0XHRcdC8vIFZlcnRpY2FsIEZvcm1zXG5cdFx0XHQoMHhGRTEwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHhGRTE5KSB8fFxuXHRcdFx0Ly8gQ0pLIENvbXBhdGliaWxpdHkgRm9ybXMgLi4gU21hbGwgRm9ybSBWYXJpYW50c1xuXHRcdFx0KDB4RkUzMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4RkU2QikgfHxcblx0XHRcdC8vIEhhbGZ3aWR0aCBhbmQgRnVsbHdpZHRoIEZvcm1zXG5cdFx0XHQoMHhGRjAxIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHhGRjYwKSB8fFxuXHRcdFx0KDB4RkZFMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4RkZFNikgfHxcblx0XHRcdC8vIEthbmEgU3VwcGxlbWVudFxuXHRcdFx0KDB4MUIwMDAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweDFCMDAxKSB8fFxuXHRcdFx0Ly8gRW5jbG9zZWQgSWRlb2dyYXBoaWMgU3VwcGxlbWVudFxuXHRcdFx0KDB4MUYyMDAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweDFGMjUxKSB8fFxuXHRcdFx0Ly8gQ0pLIFVuaWZpZWQgSWRlb2dyYXBocyBFeHRlbnNpb24gQiAuLiBUZXJ0aWFyeSBJZGVvZ3JhcGhpYyBQbGFuZVxuXHRcdFx0KDB4MjAwMDAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweDNGRkZEKVxuXHRcdClcblx0KSB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cblxuXHRyZXR1cm4gZmFsc2U7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGlzRnVsbHdpZHRoQ29kZVBvaW50O1xubW9kdWxlLmV4cG9ydHMuZGVmYXVsdCA9IGlzRnVsbHdpZHRoQ29kZVBvaW50O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICgpIHtcbiAgLy8gaHR0cHM6Ly9tdGhzLmJlL2Vtb2ppXG4gIHJldHVybiAvXFx1RDgzQ1xcdURGRjRcXHVEQjQwXFx1REM2N1xcdURCNDBcXHVEQzYyKD86XFx1REI0MFxcdURDNjVcXHVEQjQwXFx1REM2RVxcdURCNDBcXHVEQzY3fFxcdURCNDBcXHVEQzczXFx1REI0MFxcdURDNjNcXHVEQjQwXFx1REM3NHxcXHVEQjQwXFx1REM3N1xcdURCNDBcXHVEQzZDXFx1REI0MFxcdURDNzMpXFx1REI0MFxcdURDN0Z8XFx1RDgzRFxcdURDNjgoPzpcXHVEODNDXFx1REZGQ1xcdTIwMEQoPzpcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNEXFx1REM2OFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0NbXFx1REYzRVxcdURGNzNcXHVERjkzXFx1REZBNFxcdURGQThcXHVERkVCXFx1REZFRF18XFx1RDgzRFtcXHVEQ0JCXFx1RENCQ1xcdUREMjdcXHVERDJDXFx1REU4MFxcdURFOTJdfFxcdUQ4M0VbXFx1RERBRi1cXHVEREIzXFx1RERCQ1xcdUREQkRdKXxcXHVEODNDXFx1REZGRlxcdTIwMEQoPzpcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNEXFx1REM2OCg/OlxcdUQ4M0NbXFx1REZGQi1cXHVERkZFXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZFXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkRdKXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1RDgzQ1xcdURGRkRcXHUyMDBEKD86XFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjgoPzpcXHVEODNDW1xcdURGRkJcXHVERkZDXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdTIwMEQoPzpcXHUyNzY0XFx1RkUwRlxcdTIwMEQoPzpcXHVEODNEXFx1REM4QlxcdTIwMEQpP1xcdUQ4M0RcXHVEQzY4fCg/OlxcdUQ4M0RbXFx1REM2OFxcdURDNjldKVxcdTIwMEQoPzpcXHVEODNEXFx1REM2NlxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2N1xcdTIwMEQoPzpcXHVEODNEW1xcdURDNjZcXHVEQzY3XSkpfFxcdUQ4M0RcXHVEQzY2XFx1MjAwRFxcdUQ4M0RcXHVEQzY2fFxcdUQ4M0RcXHVEQzY3XFx1MjAwRCg/OlxcdUQ4M0RbXFx1REM2NlxcdURDNjddKXwoPzpcXHVEODNEW1xcdURDNjhcXHVEQzY5XSlcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY2XFx1REM2N10pfFtcXHUyNjk1XFx1MjY5NlxcdTI3MDhdXFx1RkUwRnxcXHVEODNEW1xcdURDNjZcXHVEQzY3XXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8KD86XFx1RDgzQ1xcdURGRkJcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkZcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkVcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkRcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkNcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF0pXFx1RkUwRnxcXHVEODNDXFx1REZGQlxcdTIwMEQoPzpcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKXwoPzpcXHVEODNFXFx1REREMVxcdUQ4M0NcXHVERkZCXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxfFxcdUQ4M0RcXHVEQzY5XFx1RDgzQ1xcdURGRkNcXHUyMDBEXFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjkpXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdURERDEoPzpcXHVEODNDXFx1REZGRlxcdTIwMERcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNFXFx1REREMSg/OlxcdUQ4M0NbXFx1REZGQi1cXHVERkZGXSl8XFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxKXwoPzpcXHVEODNFXFx1REREMVxcdUQ4M0NcXHVERkZFXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxfFxcdUQ4M0RcXHVEQzY5XFx1RDgzQ1xcdURGRkZcXHUyMDBEXFx1RDgzRVxcdUREMURcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY4XFx1REM2OV0pKSg/OlxcdUQ4M0NbXFx1REZGQi1cXHVERkZFXSl8KD86XFx1RDgzRVxcdURERDFcXHVEODNDXFx1REZGQ1xcdTIwMERcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNFXFx1REREMXxcXHVEODNEXFx1REM2OVxcdUQ4M0NcXHVERkZEXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY5KSg/OlxcdUQ4M0NbXFx1REZGQlxcdURGRkNdKXxcXHVEODNEXFx1REM2OSg/OlxcdUQ4M0NcXHVERkZFXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkRcXHVERkZGXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZDXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZCXFx1REZGRC1cXHVERkZGXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZCXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZDLVxcdURGRkZdKXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1RDgzQ1xcdURGRkRcXHUyMDBEKD86XFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjgoPzpcXHVEODNDW1xcdURGRkJcXHVERkZDXFx1REZGRVxcdURGRkZdKXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1MjAwRCg/OlxcdTI3NjRcXHVGRTBGXFx1MjAwRCg/OlxcdUQ4M0RcXHVEQzhCXFx1MjAwRCg/OlxcdUQ4M0RbXFx1REM2OFxcdURDNjldKXxcXHVEODNEW1xcdURDNjhcXHVEQzY5XSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZGXFx1MjAwRCg/OlxcdUQ4M0NbXFx1REYzRVxcdURGNzNcXHVERjkzXFx1REZBNFxcdURGQThcXHVERkVCXFx1REZFRF18XFx1RDgzRFtcXHVEQ0JCXFx1RENCQ1xcdUREMjdcXHVERDJDXFx1REU4MFxcdURFOTJdfFxcdUQ4M0VbXFx1RERBRi1cXHVEREIzXFx1RERCQ1xcdUREQkRdKSl8XFx1RDgzRFxcdURDNjlcXHUyMDBEXFx1RDgzRFxcdURDNjlcXHUyMDBEKD86XFx1RDgzRFxcdURDNjZcXHUyMDBEXFx1RDgzRFxcdURDNjZ8XFx1RDgzRFxcdURDNjdcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY2XFx1REM2N10pKXwoPzpcXHVEODNFXFx1REREMVxcdUQ4M0NcXHVERkZEXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxfFxcdUQ4M0RcXHVEQzY5XFx1RDgzQ1xcdURGRkVcXHUyMDBEXFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjkpKD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkRdKXxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2NlxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMEQoPzpcXHVEODNEW1xcdURDNjZcXHVEQzY3XSl8KD86XFx1RDgzRFxcdURDNDFcXHVGRTBGXFx1MjAwRFxcdUQ4M0RcXHVEREU4fFxcdUQ4M0RcXHVEQzY5KD86XFx1RDgzQ1xcdURGRkZcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkVcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkNcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkJcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkRcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1MjAwRFtcXHUyNjk1XFx1MjY5NlxcdTI3MDhdKXwoPzooPzpcXHUyNkY5fFxcdUQ4M0NbXFx1REZDQlxcdURGQ0NdfFxcdUQ4M0RcXHVERDc1KVxcdUZFMEZ8XFx1RDgzRFxcdURDNkZ8XFx1RDgzRVtcXHVERDNDXFx1RERERVxcdUREREZdKVxcdTIwMERbXFx1MjY0MFxcdTI2NDJdfCg/OlxcdTI2Rjl8XFx1RDgzQ1tcXHVERkNCXFx1REZDQ118XFx1RDgzRFxcdURENzUpKD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKVxcdTIwMERbXFx1MjY0MFxcdTI2NDJdfCg/OlxcdUQ4M0NbXFx1REZDM1xcdURGQzRcXHVERkNBXXxcXHVEODNEW1xcdURDNkVcXHVEQzcxXFx1REM3M1xcdURDNzdcXHVEQzgxXFx1REM4MlxcdURDODZcXHVEQzg3XFx1REU0NS1cXHVERTQ3XFx1REU0QlxcdURFNERcXHVERTRFXFx1REVBM1xcdURFQjQtXFx1REVCNl18XFx1RDgzRVtcXHVERDI2XFx1REQzNy1cXHVERDM5XFx1REQzRFxcdUREM0VcXHVEREI4XFx1RERCOVxcdUREQ0QtXFx1RERDRlxcdURERDYtXFx1RERERF0pKD86KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKVxcdTIwMERbXFx1MjY0MFxcdTI2NDJdfFxcdTIwMERbXFx1MjY0MFxcdTI2NDJdKXxcXHVEODNDXFx1REZGNFxcdTIwMERcXHUyNjIwKVxcdUZFMEZ8XFx1RDgzRFxcdURDNjlcXHUyMDBEXFx1RDgzRFxcdURDNjdcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY2XFx1REM2N10pfFxcdUQ4M0NcXHVERkYzXFx1RkUwRlxcdTIwMERcXHVEODNDXFx1REYwOHxcXHVEODNEXFx1REMxNVxcdTIwMERcXHVEODNFXFx1RERCQXxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNDXFx1RERGRFxcdUQ4M0NcXHVEREYwfFxcdUQ4M0NcXHVEREY0XFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERjZcXHVEODNDXFx1RERFNnxbI1xcKjAtOV1cXHVGRTBGXFx1MjBFM3xcXHVEODNDXFx1RERFNyg/OlxcdUQ4M0NbXFx1RERFNlxcdURERTdcXHVEREU5LVxcdURERUZcXHVEREYxLVxcdURERjRcXHVEREY2LVxcdURERjlcXHVEREZCXFx1RERGQ1xcdURERkVcXHVEREZGXSl8XFx1RDgzQ1xcdURERjkoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFOVxcdURERUItXFx1RERFRFxcdURERUYtXFx1RERGNFxcdURERjdcXHVEREY5XFx1RERGQlxcdURERkNcXHVEREZGXSl8XFx1RDgzQ1xcdURERUEoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFQVxcdURERUNcXHVEREVEXFx1RERGNy1cXHVEREZBXSl8XFx1RDgzRVxcdURERDEoPzpcXHVEODNDW1xcdURGRkItXFx1REZGRl0pfFxcdUQ4M0NcXHVEREY3KD86XFx1RDgzQ1tcXHVEREVBXFx1RERGNFxcdURERjhcXHVEREZBXFx1RERGQ10pfFxcdUQ4M0RcXHVEQzY5KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKXxcXHVEODNDXFx1RERGMig/OlxcdUQ4M0NbXFx1RERFNlxcdURERTgtXFx1RERFRFxcdURERjAtXFx1RERGRl0pfFxcdUQ4M0NcXHVEREU2KD86XFx1RDgzQ1tcXHVEREU4LVxcdURERUNcXHVEREVFXFx1RERGMVxcdURERjJcXHVEREY0XFx1RERGNi1cXHVEREZBXFx1RERGQ1xcdURERkRcXHVEREZGXSl8XFx1RDgzQ1xcdURERjAoPzpcXHVEODNDW1xcdURERUFcXHVEREVDLVxcdURERUVcXHVEREYyXFx1RERGM1xcdURERjVcXHVEREY3XFx1RERGQ1xcdURERkVcXHVEREZGXSl8XFx1RDgzQ1xcdURERUQoPzpcXHVEODNDW1xcdURERjBcXHVEREYyXFx1RERGM1xcdURERjdcXHVEREY5XFx1RERGQV0pfFxcdUQ4M0NcXHVEREU5KD86XFx1RDgzQ1tcXHVEREVBXFx1RERFQ1xcdURERUZcXHVEREYwXFx1RERGMlxcdURERjRcXHVEREZGXSl8XFx1RDgzQ1xcdURERkUoPzpcXHVEODNDW1xcdURERUFcXHVEREY5XSl8XFx1RDgzQ1xcdURERUMoPzpcXHVEODNDW1xcdURERTZcXHVEREU3XFx1RERFOS1cXHVEREVFXFx1RERGMS1cXHVEREYzXFx1RERGNS1cXHVEREZBXFx1RERGQ1xcdURERkVdKXxcXHVEODNDXFx1RERGOCg/OlxcdUQ4M0NbXFx1RERFNi1cXHVEREVBXFx1RERFQy1cXHVEREY0XFx1RERGNy1cXHVEREY5XFx1RERGQlxcdURERkQtXFx1RERGRl0pfFxcdUQ4M0NcXHVEREVCKD86XFx1RDgzQ1tcXHVEREVFLVxcdURERjBcXHVEREYyXFx1RERGNFxcdURERjddKXxcXHVEODNDXFx1RERGNSg/OlxcdUQ4M0NbXFx1RERFNlxcdURERUEtXFx1RERFRFxcdURERjAtXFx1RERGM1xcdURERjctXFx1RERGOVxcdURERkNcXHVEREZFXSl8XFx1RDgzQ1xcdURERkIoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFQVxcdURERUNcXHVEREVFXFx1RERGM1xcdURERkFdKXxcXHVEODNDXFx1RERGMyg/OlxcdUQ4M0NbXFx1RERFNlxcdURERThcXHVEREVBLVxcdURERUNcXHVEREVFXFx1RERGMVxcdURERjRcXHVEREY1XFx1RERGN1xcdURERkFcXHVEREZGXSl8XFx1RDgzQ1xcdURERTgoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFOVxcdURERUItXFx1RERFRVxcdURERjAtXFx1RERGNVxcdURERjdcXHVEREZBLVxcdURERkZdKXxcXHVEODNDXFx1RERGMSg/OlxcdUQ4M0NbXFx1RERFNi1cXHVEREU4XFx1RERFRVxcdURERjBcXHVEREY3LVxcdURERkJcXHVEREZFXSl8XFx1RDgzQ1xcdURERkYoPzpcXHVEODNDW1xcdURERTZcXHVEREYyXFx1RERGQ10pfFxcdUQ4M0NcXHVEREZDKD86XFx1RDgzQ1tcXHVEREVCXFx1RERGOF0pfFxcdUQ4M0NcXHVEREZBKD86XFx1RDgzQ1tcXHVEREU2XFx1RERFQ1xcdURERjJcXHVEREYzXFx1RERGOFxcdURERkVcXHVEREZGXSl8XFx1RDgzQ1xcdURERUUoPzpcXHVEODNDW1xcdURERTgtXFx1RERFQVxcdURERjEtXFx1RERGNFxcdURERjYtXFx1RERGOV0pfFxcdUQ4M0NcXHVEREVGKD86XFx1RDgzQ1tcXHVEREVBXFx1RERGMlxcdURERjRcXHVEREY1XSl8KD86XFx1RDgzQ1tcXHVERkMzXFx1REZDNFxcdURGQ0FdfFxcdUQ4M0RbXFx1REM2RVxcdURDNzFcXHVEQzczXFx1REM3N1xcdURDODFcXHVEQzgyXFx1REM4NlxcdURDODdcXHVERTQ1LVxcdURFNDdcXHVERTRCXFx1REU0RFxcdURFNEVcXHVERUEzXFx1REVCNC1cXHVERUI2XXxcXHVEODNFW1xcdUREMjZcXHVERDM3LVxcdUREMzlcXHVERDNEXFx1REQzRVxcdUREQjhcXHVEREI5XFx1RERDRC1cXHVERENGXFx1RERENi1cXHVEREREXSkoPzpcXHVEODNDW1xcdURGRkItXFx1REZGRl0pfCg/OlxcdTI2Rjl8XFx1RDgzQ1tcXHVERkNCXFx1REZDQ118XFx1RDgzRFxcdURENzUpKD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKXwoPzpbXFx1MjYxRFxcdTI3MEEtXFx1MjcwRF18XFx1RDgzQ1tcXHVERjg1XFx1REZDMlxcdURGQzddfFxcdUQ4M0RbXFx1REM0MlxcdURDNDNcXHVEQzQ2LVxcdURDNTBcXHVEQzY2XFx1REM2N1xcdURDNkItXFx1REM2RFxcdURDNzBcXHVEQzcyXFx1REM3NC1cXHVEQzc2XFx1REM3OFxcdURDN0NcXHVEQzgzXFx1REM4NVxcdURDQUFcXHVERDc0XFx1REQ3QVxcdUREOTBcXHVERDk1XFx1REQ5NlxcdURFNENcXHVERTRGXFx1REVDMFxcdURFQ0NdfFxcdUQ4M0VbXFx1REQwRlxcdUREMTgtXFx1REQxQ1xcdUREMUVcXHVERDFGXFx1REQzMC1cXHVERDM2XFx1RERCNVxcdUREQjZcXHVEREJCXFx1REREMi1cXHVEREQ1XSkoPzpcXHVEODNDW1xcdURGRkItXFx1REZGRl0pfCg/OltcXHUyMzFBXFx1MjMxQlxcdTIzRTktXFx1MjNFQ1xcdTIzRjBcXHUyM0YzXFx1MjVGRFxcdTI1RkVcXHUyNjE0XFx1MjYxNVxcdTI2NDgtXFx1MjY1M1xcdTI2N0ZcXHUyNjkzXFx1MjZBMVxcdTI2QUFcXHUyNkFCXFx1MjZCRFxcdTI2QkVcXHUyNkM0XFx1MjZDNVxcdTI2Q0VcXHUyNkQ0XFx1MjZFQVxcdTI2RjJcXHUyNkYzXFx1MjZGNVxcdTI2RkFcXHUyNkZEXFx1MjcwNVxcdTI3MEFcXHUyNzBCXFx1MjcyOFxcdTI3NENcXHUyNzRFXFx1Mjc1My1cXHUyNzU1XFx1Mjc1N1xcdTI3OTUtXFx1Mjc5N1xcdTI3QjBcXHUyN0JGXFx1MkIxQlxcdTJCMUNcXHUyQjUwXFx1MkI1NV18XFx1RDgzQ1tcXHVEQzA0XFx1RENDRlxcdUREOEVcXHVERDkxLVxcdUREOUFcXHVEREU2LVxcdURERkZcXHVERTAxXFx1REUxQVxcdURFMkZcXHVERTMyLVxcdURFMzZcXHVERTM4LVxcdURFM0FcXHVERTUwXFx1REU1MVxcdURGMDAtXFx1REYyMFxcdURGMkQtXFx1REYzNVxcdURGMzctXFx1REY3Q1xcdURGN0UtXFx1REY5M1xcdURGQTAtXFx1REZDQVxcdURGQ0YtXFx1REZEM1xcdURGRTAtXFx1REZGMFxcdURGRjRcXHVERkY4LVxcdURGRkZdfFxcdUQ4M0RbXFx1REMwMC1cXHVEQzNFXFx1REM0MFxcdURDNDItXFx1RENGQ1xcdURDRkYtXFx1REQzRFxcdURENEItXFx1REQ0RVxcdURENTAtXFx1REQ2N1xcdUREN0FcXHVERDk1XFx1REQ5NlxcdUREQTRcXHVEREZCLVxcdURFNEZcXHVERTgwLVxcdURFQzVcXHVERUNDXFx1REVEMC1cXHVERUQyXFx1REVENVxcdURFRUJcXHVERUVDXFx1REVGNC1cXHVERUZBXFx1REZFMC1cXHVERkVCXXxcXHVEODNFW1xcdUREMEQtXFx1REQzQVxcdUREM0MtXFx1REQ0NVxcdURENDctXFx1REQ3MVxcdURENzMtXFx1REQ3NlxcdUREN0EtXFx1RERBMlxcdUREQTUtXFx1RERBQVxcdUREQUUtXFx1RERDQVxcdUREQ0QtXFx1RERGRlxcdURFNzAtXFx1REU3M1xcdURFNzgtXFx1REU3QVxcdURFODAtXFx1REU4MlxcdURFOTAtXFx1REU5NV0pfCg/OlsjXFwqMC05XFx4QTlcXHhBRVxcdTIwM0NcXHUyMDQ5XFx1MjEyMlxcdTIxMzlcXHUyMTk0LVxcdTIxOTlcXHUyMUE5XFx1MjFBQVxcdTIzMUFcXHUyMzFCXFx1MjMyOFxcdTIzQ0ZcXHUyM0U5LVxcdTIzRjNcXHUyM0Y4LVxcdTIzRkFcXHUyNEMyXFx1MjVBQVxcdTI1QUJcXHUyNUI2XFx1MjVDMFxcdTI1RkItXFx1MjVGRVxcdTI2MDAtXFx1MjYwNFxcdTI2MEVcXHUyNjExXFx1MjYxNFxcdTI2MTVcXHUyNjE4XFx1MjYxRFxcdTI2MjBcXHUyNjIyXFx1MjYyM1xcdTI2MjZcXHUyNjJBXFx1MjYyRVxcdTI2MkZcXHUyNjM4LVxcdTI2M0FcXHUyNjQwXFx1MjY0MlxcdTI2NDgtXFx1MjY1M1xcdTI2NUZcXHUyNjYwXFx1MjY2M1xcdTI2NjVcXHUyNjY2XFx1MjY2OFxcdTI2N0JcXHUyNjdFXFx1MjY3RlxcdTI2OTItXFx1MjY5N1xcdTI2OTlcXHUyNjlCXFx1MjY5Q1xcdTI2QTBcXHUyNkExXFx1MjZBQVxcdTI2QUJcXHUyNkIwXFx1MjZCMVxcdTI2QkRcXHUyNkJFXFx1MjZDNFxcdTI2QzVcXHUyNkM4XFx1MjZDRVxcdTI2Q0ZcXHUyNkQxXFx1MjZEM1xcdTI2RDRcXHUyNkU5XFx1MjZFQVxcdTI2RjAtXFx1MjZGNVxcdTI2RjctXFx1MjZGQVxcdTI2RkRcXHUyNzAyXFx1MjcwNVxcdTI3MDgtXFx1MjcwRFxcdTI3MEZcXHUyNzEyXFx1MjcxNFxcdTI3MTZcXHUyNzFEXFx1MjcyMVxcdTI3MjhcXHUyNzMzXFx1MjczNFxcdTI3NDRcXHUyNzQ3XFx1Mjc0Q1xcdTI3NEVcXHUyNzUzLVxcdTI3NTVcXHUyNzU3XFx1Mjc2M1xcdTI3NjRcXHUyNzk1LVxcdTI3OTdcXHUyN0ExXFx1MjdCMFxcdTI3QkZcXHUyOTM0XFx1MjkzNVxcdTJCMDUtXFx1MkIwN1xcdTJCMUJcXHUyQjFDXFx1MkI1MFxcdTJCNTVcXHUzMDMwXFx1MzAzRFxcdTMyOTdcXHUzMjk5XXxcXHVEODNDW1xcdURDMDRcXHVEQ0NGXFx1REQ3MFxcdURENzFcXHVERDdFXFx1REQ3RlxcdUREOEVcXHVERDkxLVxcdUREOUFcXHVEREU2LVxcdURERkZcXHVERTAxXFx1REUwMlxcdURFMUFcXHVERTJGXFx1REUzMi1cXHVERTNBXFx1REU1MFxcdURFNTFcXHVERjAwLVxcdURGMjFcXHVERjI0LVxcdURGOTNcXHVERjk2XFx1REY5N1xcdURGOTktXFx1REY5QlxcdURGOUUtXFx1REZGMFxcdURGRjMtXFx1REZGNVxcdURGRjctXFx1REZGRl18XFx1RDgzRFtcXHVEQzAwLVxcdURDRkRcXHVEQ0ZGLVxcdUREM0RcXHVERDQ5LVxcdURENEVcXHVERDUwLVxcdURENjdcXHVERDZGXFx1REQ3MFxcdURENzMtXFx1REQ3QVxcdUREODdcXHVERDhBLVxcdUREOERcXHVERDkwXFx1REQ5NVxcdUREOTZcXHVEREE0XFx1RERBNVxcdUREQThcXHVEREIxXFx1RERCMlxcdUREQkNcXHVEREMyLVxcdUREQzRcXHVEREQxLVxcdURERDNcXHVERERDLVxcdUREREVcXHVEREUxXFx1RERFM1xcdURERThcXHVEREVGXFx1RERGM1xcdURERkEtXFx1REU0RlxcdURFODAtXFx1REVDNVxcdURFQ0ItXFx1REVEMlxcdURFRDVcXHVERUUwLVxcdURFRTVcXHVERUU5XFx1REVFQlxcdURFRUNcXHVERUYwXFx1REVGMy1cXHVERUZBXFx1REZFMC1cXHVERkVCXXxcXHVEODNFW1xcdUREMEQtXFx1REQzQVxcdUREM0MtXFx1REQ0NVxcdURENDctXFx1REQ3MVxcdURENzMtXFx1REQ3NlxcdUREN0EtXFx1RERBMlxcdUREQTUtXFx1RERBQVxcdUREQUUtXFx1RERDQVxcdUREQ0QtXFx1RERGRlxcdURFNzAtXFx1REU3M1xcdURFNzgtXFx1REU3QVxcdURFODAtXFx1REU4MlxcdURFOTAtXFx1REU5NV0pXFx1RkUwRnwoPzpbXFx1MjYxRFxcdTI2RjlcXHUyNzBBLVxcdTI3MERdfFxcdUQ4M0NbXFx1REY4NVxcdURGQzItXFx1REZDNFxcdURGQzdcXHVERkNBLVxcdURGQ0NdfFxcdUQ4M0RbXFx1REM0MlxcdURDNDNcXHVEQzQ2LVxcdURDNTBcXHVEQzY2LVxcdURDNzhcXHVEQzdDXFx1REM4MS1cXHVEQzgzXFx1REM4NS1cXHVEQzg3XFx1REM4RlxcdURDOTFcXHVEQ0FBXFx1REQ3NFxcdURENzVcXHVERDdBXFx1REQ5MFxcdUREOTVcXHVERDk2XFx1REU0NS1cXHVERTQ3XFx1REU0Qi1cXHVERTRGXFx1REVBM1xcdURFQjQtXFx1REVCNlxcdURFQzBcXHVERUNDXXxcXHVEODNFW1xcdUREMEZcXHVERDE4LVxcdUREMUZcXHVERDI2XFx1REQzMC1cXHVERDM5XFx1REQzQy1cXHVERDNFXFx1RERCNVxcdUREQjZcXHVEREI4XFx1RERCOVxcdUREQkJcXHVERENELVxcdUREQ0ZcXHVEREQxLVxcdURERERdKS9nO1xufTtcbiIsICIndXNlIHN0cmljdCc7XG5jb25zdCBzdHJpcEFuc2kgPSByZXF1aXJlKCdzdHJpcC1hbnNpJyk7XG5jb25zdCBpc0Z1bGx3aWR0aENvZGVQb2ludCA9IHJlcXVpcmUoJ2lzLWZ1bGx3aWR0aC1jb2RlLXBvaW50Jyk7XG5jb25zdCBlbW9qaVJlZ2V4ID0gcmVxdWlyZSgnZW1vamktcmVnZXgnKTtcblxuY29uc3Qgc3RyaW5nV2lkdGggPSBzdHJpbmcgPT4ge1xuXHRpZiAodHlwZW9mIHN0cmluZyAhPT0gJ3N0cmluZycgfHwgc3RyaW5nLmxlbmd0aCA9PT0gMCkge1xuXHRcdHJldHVybiAwO1xuXHR9XG5cblx0c3RyaW5nID0gc3RyaXBBbnNpKHN0cmluZyk7XG5cblx0aWYgKHN0cmluZy5sZW5ndGggPT09IDApIHtcblx0XHRyZXR1cm4gMDtcblx0fVxuXG5cdHN0cmluZyA9IHN0cmluZy5yZXBsYWNlKGVtb2ppUmVnZXgoKSwgJyAgJyk7XG5cblx0bGV0IHdpZHRoID0gMDtcblxuXHRmb3IgKGxldCBpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGkrKykge1xuXHRcdGNvbnN0IGNvZGUgPSBzdHJpbmcuY29kZVBvaW50QXQoaSk7XG5cblx0XHQvLyBJZ25vcmUgY29udHJvbCBjaGFyYWN0ZXJzXG5cdFx0aWYgKGNvZGUgPD0gMHgxRiB8fCAoY29kZSA+PSAweDdGICYmIGNvZGUgPD0gMHg5RikpIHtcblx0XHRcdGNvbnRpbnVlO1xuXHRcdH1cblxuXHRcdC8vIElnbm9yZSBjb21iaW5pbmcgY2hhcmFjdGVyc1xuXHRcdGlmIChjb2RlID49IDB4MzAwICYmIGNvZGUgPD0gMHgzNkYpIHtcblx0XHRcdGNvbnRpbnVlO1xuXHRcdH1cblxuXHRcdC8vIFN1cnJvZ2F0ZXNcblx0XHRpZiAoY29kZSA+IDB4RkZGRikge1xuXHRcdFx0aSsrO1xuXHRcdH1cblxuXHRcdHdpZHRoICs9IGlzRnVsbHdpZHRoQ29kZVBvaW50KGNvZGUpID8gMiA6IDE7XG5cdH1cblxuXHRyZXR1cm4gd2lkdGg7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHN0cmluZ1dpZHRoO1xuLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvblxubW9kdWxlLmV4cG9ydHMuZGVmYXVsdCA9IHN0cmluZ1dpZHRoO1xuIiwgIid1c2Ugc3RyaWN0J1xyXG5cclxubW9kdWxlLmV4cG9ydHMgPSB7XHJcblx0XCJhbGljZWJsdWVcIjogWzI0MCwgMjQ4LCAyNTVdLFxyXG5cdFwiYW50aXF1ZXdoaXRlXCI6IFsyNTAsIDIzNSwgMjE1XSxcclxuXHRcImFxdWFcIjogWzAsIDI1NSwgMjU1XSxcclxuXHRcImFxdWFtYXJpbmVcIjogWzEyNywgMjU1LCAyMTJdLFxyXG5cdFwiYXp1cmVcIjogWzI0MCwgMjU1LCAyNTVdLFxyXG5cdFwiYmVpZ2VcIjogWzI0NSwgMjQ1LCAyMjBdLFxyXG5cdFwiYmlzcXVlXCI6IFsyNTUsIDIyOCwgMTk2XSxcclxuXHRcImJsYWNrXCI6IFswLCAwLCAwXSxcclxuXHRcImJsYW5jaGVkYWxtb25kXCI6IFsyNTUsIDIzNSwgMjA1XSxcclxuXHRcImJsdWVcIjogWzAsIDAsIDI1NV0sXHJcblx0XCJibHVldmlvbGV0XCI6IFsxMzgsIDQzLCAyMjZdLFxyXG5cdFwiYnJvd25cIjogWzE2NSwgNDIsIDQyXSxcclxuXHRcImJ1cmx5d29vZFwiOiBbMjIyLCAxODQsIDEzNV0sXHJcblx0XCJjYWRldGJsdWVcIjogWzk1LCAxNTgsIDE2MF0sXHJcblx0XCJjaGFydHJldXNlXCI6IFsxMjcsIDI1NSwgMF0sXHJcblx0XCJjaG9jb2xhdGVcIjogWzIxMCwgMTA1LCAzMF0sXHJcblx0XCJjb3JhbFwiOiBbMjU1LCAxMjcsIDgwXSxcclxuXHRcImNvcm5mbG93ZXJibHVlXCI6IFsxMDAsIDE0OSwgMjM3XSxcclxuXHRcImNvcm5zaWxrXCI6IFsyNTUsIDI0OCwgMjIwXSxcclxuXHRcImNyaW1zb25cIjogWzIyMCwgMjAsIDYwXSxcclxuXHRcImN5YW5cIjogWzAsIDI1NSwgMjU1XSxcclxuXHRcImRhcmtibHVlXCI6IFswLCAwLCAxMzldLFxyXG5cdFwiZGFya2N5YW5cIjogWzAsIDEzOSwgMTM5XSxcclxuXHRcImRhcmtnb2xkZW5yb2RcIjogWzE4NCwgMTM0LCAxMV0sXHJcblx0XCJkYXJrZ3JheVwiOiBbMTY5LCAxNjksIDE2OV0sXHJcblx0XCJkYXJrZ3JlZW5cIjogWzAsIDEwMCwgMF0sXHJcblx0XCJkYXJrZ3JleVwiOiBbMTY5LCAxNjksIDE2OV0sXHJcblx0XCJkYXJra2hha2lcIjogWzE4OSwgMTgzLCAxMDddLFxyXG5cdFwiZGFya21hZ2VudGFcIjogWzEzOSwgMCwgMTM5XSxcclxuXHRcImRhcmtvbGl2ZWdyZWVuXCI6IFs4NSwgMTA3LCA0N10sXHJcblx0XCJkYXJrb3JhbmdlXCI6IFsyNTUsIDE0MCwgMF0sXHJcblx0XCJkYXJrb3JjaGlkXCI6IFsxNTMsIDUwLCAyMDRdLFxyXG5cdFwiZGFya3JlZFwiOiBbMTM5LCAwLCAwXSxcclxuXHRcImRhcmtzYWxtb25cIjogWzIzMywgMTUwLCAxMjJdLFxyXG5cdFwiZGFya3NlYWdyZWVuXCI6IFsxNDMsIDE4OCwgMTQzXSxcclxuXHRcImRhcmtzbGF0ZWJsdWVcIjogWzcyLCA2MSwgMTM5XSxcclxuXHRcImRhcmtzbGF0ZWdyYXlcIjogWzQ3LCA3OSwgNzldLFxyXG5cdFwiZGFya3NsYXRlZ3JleVwiOiBbNDcsIDc5LCA3OV0sXHJcblx0XCJkYXJrdHVycXVvaXNlXCI6IFswLCAyMDYsIDIwOV0sXHJcblx0XCJkYXJrdmlvbGV0XCI6IFsxNDgsIDAsIDIxMV0sXHJcblx0XCJkZWVwcGlua1wiOiBbMjU1LCAyMCwgMTQ3XSxcclxuXHRcImRlZXBza3libHVlXCI6IFswLCAxOTEsIDI1NV0sXHJcblx0XCJkaW1ncmF5XCI6IFsxMDUsIDEwNSwgMTA1XSxcclxuXHRcImRpbWdyZXlcIjogWzEwNSwgMTA1LCAxMDVdLFxyXG5cdFwiZG9kZ2VyYmx1ZVwiOiBbMzAsIDE0NCwgMjU1XSxcclxuXHRcImZpcmVicmlja1wiOiBbMTc4LCAzNCwgMzRdLFxyXG5cdFwiZmxvcmFsd2hpdGVcIjogWzI1NSwgMjUwLCAyNDBdLFxyXG5cdFwiZm9yZXN0Z3JlZW5cIjogWzM0LCAxMzksIDM0XSxcclxuXHRcImZ1Y2hzaWFcIjogWzI1NSwgMCwgMjU1XSxcclxuXHRcImdhaW5zYm9yb1wiOiBbMjIwLCAyMjAsIDIyMF0sXHJcblx0XCJnaG9zdHdoaXRlXCI6IFsyNDgsIDI0OCwgMjU1XSxcclxuXHRcImdvbGRcIjogWzI1NSwgMjE1LCAwXSxcclxuXHRcImdvbGRlbnJvZFwiOiBbMjE4LCAxNjUsIDMyXSxcclxuXHRcImdyYXlcIjogWzEyOCwgMTI4LCAxMjhdLFxyXG5cdFwiZ3JlZW5cIjogWzAsIDEyOCwgMF0sXHJcblx0XCJncmVlbnllbGxvd1wiOiBbMTczLCAyNTUsIDQ3XSxcclxuXHRcImdyZXlcIjogWzEyOCwgMTI4LCAxMjhdLFxyXG5cdFwiaG9uZXlkZXdcIjogWzI0MCwgMjU1LCAyNDBdLFxyXG5cdFwiaG90cGlua1wiOiBbMjU1LCAxMDUsIDE4MF0sXHJcblx0XCJpbmRpYW5yZWRcIjogWzIwNSwgOTIsIDkyXSxcclxuXHRcImluZGlnb1wiOiBbNzUsIDAsIDEzMF0sXHJcblx0XCJpdm9yeVwiOiBbMjU1LCAyNTUsIDI0MF0sXHJcblx0XCJraGFraVwiOiBbMjQwLCAyMzAsIDE0MF0sXHJcblx0XCJsYXZlbmRlclwiOiBbMjMwLCAyMzAsIDI1MF0sXHJcblx0XCJsYXZlbmRlcmJsdXNoXCI6IFsyNTUsIDI0MCwgMjQ1XSxcclxuXHRcImxhd25ncmVlblwiOiBbMTI0LCAyNTIsIDBdLFxyXG5cdFwibGVtb25jaGlmZm9uXCI6IFsyNTUsIDI1MCwgMjA1XSxcclxuXHRcImxpZ2h0Ymx1ZVwiOiBbMTczLCAyMTYsIDIzMF0sXHJcblx0XCJsaWdodGNvcmFsXCI6IFsyNDAsIDEyOCwgMTI4XSxcclxuXHRcImxpZ2h0Y3lhblwiOiBbMjI0LCAyNTUsIDI1NV0sXHJcblx0XCJsaWdodGdvbGRlbnJvZHllbGxvd1wiOiBbMjUwLCAyNTAsIDIxMF0sXHJcblx0XCJsaWdodGdyYXlcIjogWzIxMSwgMjExLCAyMTFdLFxyXG5cdFwibGlnaHRncmVlblwiOiBbMTQ0LCAyMzgsIDE0NF0sXHJcblx0XCJsaWdodGdyZXlcIjogWzIxMSwgMjExLCAyMTFdLFxyXG5cdFwibGlnaHRwaW5rXCI6IFsyNTUsIDE4MiwgMTkzXSxcclxuXHRcImxpZ2h0c2FsbW9uXCI6IFsyNTUsIDE2MCwgMTIyXSxcclxuXHRcImxpZ2h0c2VhZ3JlZW5cIjogWzMyLCAxNzgsIDE3MF0sXHJcblx0XCJsaWdodHNreWJsdWVcIjogWzEzNSwgMjA2LCAyNTBdLFxyXG5cdFwibGlnaHRzbGF0ZWdyYXlcIjogWzExOSwgMTM2LCAxNTNdLFxyXG5cdFwibGlnaHRzbGF0ZWdyZXlcIjogWzExOSwgMTM2LCAxNTNdLFxyXG5cdFwibGlnaHRzdGVlbGJsdWVcIjogWzE3NiwgMTk2LCAyMjJdLFxyXG5cdFwibGlnaHR5ZWxsb3dcIjogWzI1NSwgMjU1LCAyMjRdLFxyXG5cdFwibGltZVwiOiBbMCwgMjU1LCAwXSxcclxuXHRcImxpbWVncmVlblwiOiBbNTAsIDIwNSwgNTBdLFxyXG5cdFwibGluZW5cIjogWzI1MCwgMjQwLCAyMzBdLFxyXG5cdFwibWFnZW50YVwiOiBbMjU1LCAwLCAyNTVdLFxyXG5cdFwibWFyb29uXCI6IFsxMjgsIDAsIDBdLFxyXG5cdFwibWVkaXVtYXF1YW1hcmluZVwiOiBbMTAyLCAyMDUsIDE3MF0sXHJcblx0XCJtZWRpdW1ibHVlXCI6IFswLCAwLCAyMDVdLFxyXG5cdFwibWVkaXVtb3JjaGlkXCI6IFsxODYsIDg1LCAyMTFdLFxyXG5cdFwibWVkaXVtcHVycGxlXCI6IFsxNDcsIDExMiwgMjE5XSxcclxuXHRcIm1lZGl1bXNlYWdyZWVuXCI6IFs2MCwgMTc5LCAxMTNdLFxyXG5cdFwibWVkaXVtc2xhdGVibHVlXCI6IFsxMjMsIDEwNCwgMjM4XSxcclxuXHRcIm1lZGl1bXNwcmluZ2dyZWVuXCI6IFswLCAyNTAsIDE1NF0sXHJcblx0XCJtZWRpdW10dXJxdW9pc2VcIjogWzcyLCAyMDksIDIwNF0sXHJcblx0XCJtZWRpdW12aW9sZXRyZWRcIjogWzE5OSwgMjEsIDEzM10sXHJcblx0XCJtaWRuaWdodGJsdWVcIjogWzI1LCAyNSwgMTEyXSxcclxuXHRcIm1pbnRjcmVhbVwiOiBbMjQ1LCAyNTUsIDI1MF0sXHJcblx0XCJtaXN0eXJvc2VcIjogWzI1NSwgMjI4LCAyMjVdLFxyXG5cdFwibW9jY2FzaW5cIjogWzI1NSwgMjI4LCAxODFdLFxyXG5cdFwibmF2YWpvd2hpdGVcIjogWzI1NSwgMjIyLCAxNzNdLFxyXG5cdFwibmF2eVwiOiBbMCwgMCwgMTI4XSxcclxuXHRcIm9sZGxhY2VcIjogWzI1MywgMjQ1LCAyMzBdLFxyXG5cdFwib2xpdmVcIjogWzEyOCwgMTI4LCAwXSxcclxuXHRcIm9saXZlZHJhYlwiOiBbMTA3LCAxNDIsIDM1XSxcclxuXHRcIm9yYW5nZVwiOiBbMjU1LCAxNjUsIDBdLFxyXG5cdFwib3JhbmdlcmVkXCI6IFsyNTUsIDY5LCAwXSxcclxuXHRcIm9yY2hpZFwiOiBbMjE4LCAxMTIsIDIxNF0sXHJcblx0XCJwYWxlZ29sZGVucm9kXCI6IFsyMzgsIDIzMiwgMTcwXSxcclxuXHRcInBhbGVncmVlblwiOiBbMTUyLCAyNTEsIDE1Ml0sXHJcblx0XCJwYWxldHVycXVvaXNlXCI6IFsxNzUsIDIzOCwgMjM4XSxcclxuXHRcInBhbGV2aW9sZXRyZWRcIjogWzIxOSwgMTEyLCAxNDddLFxyXG5cdFwicGFwYXlhd2hpcFwiOiBbMjU1LCAyMzksIDIxM10sXHJcblx0XCJwZWFjaHB1ZmZcIjogWzI1NSwgMjE4LCAxODVdLFxyXG5cdFwicGVydVwiOiBbMjA1LCAxMzMsIDYzXSxcclxuXHRcInBpbmtcIjogWzI1NSwgMTkyLCAyMDNdLFxyXG5cdFwicGx1bVwiOiBbMjIxLCAxNjAsIDIyMV0sXHJcblx0XCJwb3dkZXJibHVlXCI6IFsxNzYsIDIyNCwgMjMwXSxcclxuXHRcInB1cnBsZVwiOiBbMTI4LCAwLCAxMjhdLFxyXG5cdFwicmViZWNjYXB1cnBsZVwiOiBbMTAyLCA1MSwgMTUzXSxcclxuXHRcInJlZFwiOiBbMjU1LCAwLCAwXSxcclxuXHRcInJvc3licm93blwiOiBbMTg4LCAxNDMsIDE0M10sXHJcblx0XCJyb3lhbGJsdWVcIjogWzY1LCAxMDUsIDIyNV0sXHJcblx0XCJzYWRkbGVicm93blwiOiBbMTM5LCA2OSwgMTldLFxyXG5cdFwic2FsbW9uXCI6IFsyNTAsIDEyOCwgMTE0XSxcclxuXHRcInNhbmR5YnJvd25cIjogWzI0NCwgMTY0LCA5Nl0sXHJcblx0XCJzZWFncmVlblwiOiBbNDYsIDEzOSwgODddLFxyXG5cdFwic2Vhc2hlbGxcIjogWzI1NSwgMjQ1LCAyMzhdLFxyXG5cdFwic2llbm5hXCI6IFsxNjAsIDgyLCA0NV0sXHJcblx0XCJzaWx2ZXJcIjogWzE5MiwgMTkyLCAxOTJdLFxyXG5cdFwic2t5Ymx1ZVwiOiBbMTM1LCAyMDYsIDIzNV0sXHJcblx0XCJzbGF0ZWJsdWVcIjogWzEwNiwgOTAsIDIwNV0sXHJcblx0XCJzbGF0ZWdyYXlcIjogWzExMiwgMTI4LCAxNDRdLFxyXG5cdFwic2xhdGVncmV5XCI6IFsxMTIsIDEyOCwgMTQ0XSxcclxuXHRcInNub3dcIjogWzI1NSwgMjUwLCAyNTBdLFxyXG5cdFwic3ByaW5nZ3JlZW5cIjogWzAsIDI1NSwgMTI3XSxcclxuXHRcInN0ZWVsYmx1ZVwiOiBbNzAsIDEzMCwgMTgwXSxcclxuXHRcInRhblwiOiBbMjEwLCAxODAsIDE0MF0sXHJcblx0XCJ0ZWFsXCI6IFswLCAxMjgsIDEyOF0sXHJcblx0XCJ0aGlzdGxlXCI6IFsyMTYsIDE5MSwgMjE2XSxcclxuXHRcInRvbWF0b1wiOiBbMjU1LCA5OSwgNzFdLFxyXG5cdFwidHVycXVvaXNlXCI6IFs2NCwgMjI0LCAyMDhdLFxyXG5cdFwidmlvbGV0XCI6IFsyMzgsIDEzMCwgMjM4XSxcclxuXHRcIndoZWF0XCI6IFsyNDUsIDIyMiwgMTc5XSxcclxuXHRcIndoaXRlXCI6IFsyNTUsIDI1NSwgMjU1XSxcclxuXHRcIndoaXRlc21va2VcIjogWzI0NSwgMjQ1LCAyNDVdLFxyXG5cdFwieWVsbG93XCI6IFsyNTUsIDI1NSwgMF0sXHJcblx0XCJ5ZWxsb3dncmVlblwiOiBbMTU0LCAyMDUsIDUwXVxyXG59O1xyXG4iLCAiLyogTUlUIGxpY2Vuc2UgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW1peGVkLW9wZXJhdG9ycyAqL1xuY29uc3QgY3NzS2V5d29yZHMgPSByZXF1aXJlKCdjb2xvci1uYW1lJyk7XG5cbi8vIE5PVEU6IGNvbnZlcnNpb25zIHNob3VsZCBvbmx5IHJldHVybiBwcmltaXRpdmUgdmFsdWVzIChpLmUuIGFycmF5cywgb3Jcbi8vICAgICAgIHZhbHVlcyB0aGF0IGdpdmUgY29ycmVjdCBgdHlwZW9mYCByZXN1bHRzKS5cbi8vICAgICAgIGRvIG5vdCB1c2UgYm94IHZhbHVlcyB0eXBlcyAoaS5lLiBOdW1iZXIoKSwgU3RyaW5nKCksIGV0Yy4pXG5cbmNvbnN0IHJldmVyc2VLZXl3b3JkcyA9IHt9O1xuZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoY3NzS2V5d29yZHMpKSB7XG5cdHJldmVyc2VLZXl3b3Jkc1tjc3NLZXl3b3Jkc1trZXldXSA9IGtleTtcbn1cblxuY29uc3QgY29udmVydCA9IHtcblx0cmdiOiB7Y2hhbm5lbHM6IDMsIGxhYmVsczogJ3JnYid9LFxuXHRoc2w6IHtjaGFubmVsczogMywgbGFiZWxzOiAnaHNsJ30sXG5cdGhzdjoge2NoYW5uZWxzOiAzLCBsYWJlbHM6ICdoc3YnfSxcblx0aHdiOiB7Y2hhbm5lbHM6IDMsIGxhYmVsczogJ2h3Yid9LFxuXHRjbXlrOiB7Y2hhbm5lbHM6IDQsIGxhYmVsczogJ2NteWsnfSxcblx0eHl6OiB7Y2hhbm5lbHM6IDMsIGxhYmVsczogJ3h5eid9LFxuXHRsYWI6IHtjaGFubmVsczogMywgbGFiZWxzOiAnbGFiJ30sXG5cdGxjaDoge2NoYW5uZWxzOiAzLCBsYWJlbHM6ICdsY2gnfSxcblx0aGV4OiB7Y2hhbm5lbHM6IDEsIGxhYmVsczogWydoZXgnXX0sXG5cdGtleXdvcmQ6IHtjaGFubmVsczogMSwgbGFiZWxzOiBbJ2tleXdvcmQnXX0sXG5cdGFuc2kxNjoge2NoYW5uZWxzOiAxLCBsYWJlbHM6IFsnYW5zaTE2J119LFxuXHRhbnNpMjU2OiB7Y2hhbm5lbHM6IDEsIGxhYmVsczogWydhbnNpMjU2J119LFxuXHRoY2c6IHtjaGFubmVsczogMywgbGFiZWxzOiBbJ2gnLCAnYycsICdnJ119LFxuXHRhcHBsZToge2NoYW5uZWxzOiAzLCBsYWJlbHM6IFsncjE2JywgJ2cxNicsICdiMTYnXX0sXG5cdGdyYXk6IHtjaGFubmVsczogMSwgbGFiZWxzOiBbJ2dyYXknXX1cbn07XG5cbm1vZHVsZS5leHBvcnRzID0gY29udmVydDtcblxuLy8gSGlkZSAuY2hhbm5lbHMgYW5kIC5sYWJlbHMgcHJvcGVydGllc1xuZm9yIChjb25zdCBtb2RlbCBvZiBPYmplY3Qua2V5cyhjb252ZXJ0KSkge1xuXHRpZiAoISgnY2hhbm5lbHMnIGluIGNvbnZlcnRbbW9kZWxdKSkge1xuXHRcdHRocm93IG5ldyBFcnJvcignbWlzc2luZyBjaGFubmVscyBwcm9wZXJ0eTogJyArIG1vZGVsKTtcblx0fVxuXG5cdGlmICghKCdsYWJlbHMnIGluIGNvbnZlcnRbbW9kZWxdKSkge1xuXHRcdHRocm93IG5ldyBFcnJvcignbWlzc2luZyBjaGFubmVsIGxhYmVscyBwcm9wZXJ0eTogJyArIG1vZGVsKTtcblx0fVxuXG5cdGlmIChjb252ZXJ0W21vZGVsXS5sYWJlbHMubGVuZ3RoICE9PSBjb252ZXJ0W21vZGVsXS5jaGFubmVscykge1xuXHRcdHRocm93IG5ldyBFcnJvcignY2hhbm5lbCBhbmQgbGFiZWwgY291bnRzIG1pc21hdGNoOiAnICsgbW9kZWwpO1xuXHR9XG5cblx0Y29uc3Qge2NoYW5uZWxzLCBsYWJlbHN9ID0gY29udmVydFttb2RlbF07XG5cdGRlbGV0ZSBjb252ZXJ0W21vZGVsXS5jaGFubmVscztcblx0ZGVsZXRlIGNvbnZlcnRbbW9kZWxdLmxhYmVscztcblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGNvbnZlcnRbbW9kZWxdLCAnY2hhbm5lbHMnLCB7dmFsdWU6IGNoYW5uZWxzfSk7XG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShjb252ZXJ0W21vZGVsXSwgJ2xhYmVscycsIHt2YWx1ZTogbGFiZWxzfSk7XG59XG5cbmNvbnZlcnQucmdiLmhzbCA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0Y29uc3QgciA9IHJnYlswXSAvIDI1NTtcblx0Y29uc3QgZyA9IHJnYlsxXSAvIDI1NTtcblx0Y29uc3QgYiA9IHJnYlsyXSAvIDI1NTtcblx0Y29uc3QgbWluID0gTWF0aC5taW4ociwgZywgYik7XG5cdGNvbnN0IG1heCA9IE1hdGgubWF4KHIsIGcsIGIpO1xuXHRjb25zdCBkZWx0YSA9IG1heCAtIG1pbjtcblx0bGV0IGg7XG5cdGxldCBzO1xuXG5cdGlmIChtYXggPT09IG1pbikge1xuXHRcdGggPSAwO1xuXHR9IGVsc2UgaWYgKHIgPT09IG1heCkge1xuXHRcdGggPSAoZyAtIGIpIC8gZGVsdGE7XG5cdH0gZWxzZSBpZiAoZyA9PT0gbWF4KSB7XG5cdFx0aCA9IDIgKyAoYiAtIHIpIC8gZGVsdGE7XG5cdH0gZWxzZSBpZiAoYiA9PT0gbWF4KSB7XG5cdFx0aCA9IDQgKyAociAtIGcpIC8gZGVsdGE7XG5cdH1cblxuXHRoID0gTWF0aC5taW4oaCAqIDYwLCAzNjApO1xuXG5cdGlmIChoIDwgMCkge1xuXHRcdGggKz0gMzYwO1xuXHR9XG5cblx0Y29uc3QgbCA9IChtaW4gKyBtYXgpIC8gMjtcblxuXHRpZiAobWF4ID09PSBtaW4pIHtcblx0XHRzID0gMDtcblx0fSBlbHNlIGlmIChsIDw9IDAuNSkge1xuXHRcdHMgPSBkZWx0YSAvIChtYXggKyBtaW4pO1xuXHR9IGVsc2Uge1xuXHRcdHMgPSBkZWx0YSAvICgyIC0gbWF4IC0gbWluKTtcblx0fVxuXG5cdHJldHVybiBbaCwgcyAqIDEwMCwgbCAqIDEwMF07XG59O1xuXG5jb252ZXJ0LnJnYi5oc3YgPSBmdW5jdGlvbiAocmdiKSB7XG5cdGxldCByZGlmO1xuXHRsZXQgZ2RpZjtcblx0bGV0IGJkaWY7XG5cdGxldCBoO1xuXHRsZXQgcztcblxuXHRjb25zdCByID0gcmdiWzBdIC8gMjU1O1xuXHRjb25zdCBnID0gcmdiWzFdIC8gMjU1O1xuXHRjb25zdCBiID0gcmdiWzJdIC8gMjU1O1xuXHRjb25zdCB2ID0gTWF0aC5tYXgociwgZywgYik7XG5cdGNvbnN0IGRpZmYgPSB2IC0gTWF0aC5taW4ociwgZywgYik7XG5cdGNvbnN0IGRpZmZjID0gZnVuY3Rpb24gKGMpIHtcblx0XHRyZXR1cm4gKHYgLSBjKSAvIDYgLyBkaWZmICsgMSAvIDI7XG5cdH07XG5cblx0aWYgKGRpZmYgPT09IDApIHtcblx0XHRoID0gMDtcblx0XHRzID0gMDtcblx0fSBlbHNlIHtcblx0XHRzID0gZGlmZiAvIHY7XG5cdFx0cmRpZiA9IGRpZmZjKHIpO1xuXHRcdGdkaWYgPSBkaWZmYyhnKTtcblx0XHRiZGlmID0gZGlmZmMoYik7XG5cblx0XHRpZiAociA9PT0gdikge1xuXHRcdFx0aCA9IGJkaWYgLSBnZGlmO1xuXHRcdH0gZWxzZSBpZiAoZyA9PT0gdikge1xuXHRcdFx0aCA9ICgxIC8gMykgKyByZGlmIC0gYmRpZjtcblx0XHR9IGVsc2UgaWYgKGIgPT09IHYpIHtcblx0XHRcdGggPSAoMiAvIDMpICsgZ2RpZiAtIHJkaWY7XG5cdFx0fVxuXG5cdFx0aWYgKGggPCAwKSB7XG5cdFx0XHRoICs9IDE7XG5cdFx0fSBlbHNlIGlmIChoID4gMSkge1xuXHRcdFx0aCAtPSAxO1xuXHRcdH1cblx0fVxuXG5cdHJldHVybiBbXG5cdFx0aCAqIDM2MCxcblx0XHRzICogMTAwLFxuXHRcdHYgKiAxMDBcblx0XTtcbn07XG5cbmNvbnZlcnQucmdiLmh3YiA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0Y29uc3QgciA9IHJnYlswXTtcblx0Y29uc3QgZyA9IHJnYlsxXTtcblx0bGV0IGIgPSByZ2JbMl07XG5cdGNvbnN0IGggPSBjb252ZXJ0LnJnYi5oc2wocmdiKVswXTtcblx0Y29uc3QgdyA9IDEgLyAyNTUgKiBNYXRoLm1pbihyLCBNYXRoLm1pbihnLCBiKSk7XG5cblx0YiA9IDEgLSAxIC8gMjU1ICogTWF0aC5tYXgociwgTWF0aC5tYXgoZywgYikpO1xuXG5cdHJldHVybiBbaCwgdyAqIDEwMCwgYiAqIDEwMF07XG59O1xuXG5jb252ZXJ0LnJnYi5jbXlrID0gZnVuY3Rpb24gKHJnYikge1xuXHRjb25zdCByID0gcmdiWzBdIC8gMjU1O1xuXHRjb25zdCBnID0gcmdiWzFdIC8gMjU1O1xuXHRjb25zdCBiID0gcmdiWzJdIC8gMjU1O1xuXG5cdGNvbnN0IGsgPSBNYXRoLm1pbigxIC0gciwgMSAtIGcsIDEgLSBiKTtcblx0Y29uc3QgYyA9ICgxIC0gciAtIGspIC8gKDEgLSBrKSB8fCAwO1xuXHRjb25zdCBtID0gKDEgLSBnIC0gaykgLyAoMSAtIGspIHx8IDA7XG5cdGNvbnN0IHkgPSAoMSAtIGIgLSBrKSAvICgxIC0gaykgfHwgMDtcblxuXHRyZXR1cm4gW2MgKiAxMDAsIG0gKiAxMDAsIHkgKiAxMDAsIGsgKiAxMDBdO1xufTtcblxuZnVuY3Rpb24gY29tcGFyYXRpdmVEaXN0YW5jZSh4LCB5KSB7XG5cdC8qXG5cdFx0U2VlIGh0dHBzOi8vZW4ubS53aWtpcGVkaWEub3JnL3dpa2kvRXVjbGlkZWFuX2Rpc3RhbmNlI1NxdWFyZWRfRXVjbGlkZWFuX2Rpc3RhbmNlXG5cdCovXG5cdHJldHVybiAoXG5cdFx0KCh4WzBdIC0geVswXSkgKiogMikgK1xuXHRcdCgoeFsxXSAtIHlbMV0pICoqIDIpICtcblx0XHQoKHhbMl0gLSB5WzJdKSAqKiAyKVxuXHQpO1xufVxuXG5jb252ZXJ0LnJnYi5rZXl3b3JkID0gZnVuY3Rpb24gKHJnYikge1xuXHRjb25zdCByZXZlcnNlZCA9IHJldmVyc2VLZXl3b3Jkc1tyZ2JdO1xuXHRpZiAocmV2ZXJzZWQpIHtcblx0XHRyZXR1cm4gcmV2ZXJzZWQ7XG5cdH1cblxuXHRsZXQgY3VycmVudENsb3Nlc3REaXN0YW5jZSA9IEluZmluaXR5O1xuXHRsZXQgY3VycmVudENsb3Nlc3RLZXl3b3JkO1xuXG5cdGZvciAoY29uc3Qga2V5d29yZCBvZiBPYmplY3Qua2V5cyhjc3NLZXl3b3JkcykpIHtcblx0XHRjb25zdCB2YWx1ZSA9IGNzc0tleXdvcmRzW2tleXdvcmRdO1xuXG5cdFx0Ly8gQ29tcHV0ZSBjb21wYXJhdGl2ZSBkaXN0YW5jZVxuXHRcdGNvbnN0IGRpc3RhbmNlID0gY29tcGFyYXRpdmVEaXN0YW5jZShyZ2IsIHZhbHVlKTtcblxuXHRcdC8vIENoZWNrIGlmIGl0cyBsZXNzLCBpZiBzbyBzZXQgYXMgY2xvc2VzdFxuXHRcdGlmIChkaXN0YW5jZSA8IGN1cnJlbnRDbG9zZXN0RGlzdGFuY2UpIHtcblx0XHRcdGN1cnJlbnRDbG9zZXN0RGlzdGFuY2UgPSBkaXN0YW5jZTtcblx0XHRcdGN1cnJlbnRDbG9zZXN0S2V5d29yZCA9IGtleXdvcmQ7XG5cdFx0fVxuXHR9XG5cblx0cmV0dXJuIGN1cnJlbnRDbG9zZXN0S2V5d29yZDtcbn07XG5cbmNvbnZlcnQua2V5d29yZC5yZ2IgPSBmdW5jdGlvbiAoa2V5d29yZCkge1xuXHRyZXR1cm4gY3NzS2V5d29yZHNba2V5d29yZF07XG59O1xuXG5jb252ZXJ0LnJnYi54eXogPSBmdW5jdGlvbiAocmdiKSB7XG5cdGxldCByID0gcmdiWzBdIC8gMjU1O1xuXHRsZXQgZyA9IHJnYlsxXSAvIDI1NTtcblx0bGV0IGIgPSByZ2JbMl0gLyAyNTU7XG5cblx0Ly8gQXNzdW1lIHNSR0Jcblx0ciA9IHIgPiAwLjA0MDQ1ID8gKCgociArIDAuMDU1KSAvIDEuMDU1KSAqKiAyLjQpIDogKHIgLyAxMi45Mik7XG5cdGcgPSBnID4gMC4wNDA0NSA/ICgoKGcgKyAwLjA1NSkgLyAxLjA1NSkgKiogMi40KSA6IChnIC8gMTIuOTIpO1xuXHRiID0gYiA+IDAuMDQwNDUgPyAoKChiICsgMC4wNTUpIC8gMS4wNTUpICoqIDIuNCkgOiAoYiAvIDEyLjkyKTtcblxuXHRjb25zdCB4ID0gKHIgKiAwLjQxMjQpICsgKGcgKiAwLjM1NzYpICsgKGIgKiAwLjE4MDUpO1xuXHRjb25zdCB5ID0gKHIgKiAwLjIxMjYpICsgKGcgKiAwLjcxNTIpICsgKGIgKiAwLjA3MjIpO1xuXHRjb25zdCB6ID0gKHIgKiAwLjAxOTMpICsgKGcgKiAwLjExOTIpICsgKGIgKiAwLjk1MDUpO1xuXG5cdHJldHVybiBbeCAqIDEwMCwgeSAqIDEwMCwgeiAqIDEwMF07XG59O1xuXG5jb252ZXJ0LnJnYi5sYWIgPSBmdW5jdGlvbiAocmdiKSB7XG5cdGNvbnN0IHh5eiA9IGNvbnZlcnQucmdiLnh5eihyZ2IpO1xuXHRsZXQgeCA9IHh5elswXTtcblx0bGV0IHkgPSB4eXpbMV07XG5cdGxldCB6ID0geHl6WzJdO1xuXG5cdHggLz0gOTUuMDQ3O1xuXHR5IC89IDEwMDtcblx0eiAvPSAxMDguODgzO1xuXG5cdHggPSB4ID4gMC4wMDg4NTYgPyAoeCAqKiAoMSAvIDMpKSA6ICg3Ljc4NyAqIHgpICsgKDE2IC8gMTE2KTtcblx0eSA9IHkgPiAwLjAwODg1NiA/ICh5ICoqICgxIC8gMykpIDogKDcuNzg3ICogeSkgKyAoMTYgLyAxMTYpO1xuXHR6ID0geiA+IDAuMDA4ODU2ID8gKHogKiogKDEgLyAzKSkgOiAoNy43ODcgKiB6KSArICgxNiAvIDExNik7XG5cblx0Y29uc3QgbCA9ICgxMTYgKiB5KSAtIDE2O1xuXHRjb25zdCBhID0gNTAwICogKHggLSB5KTtcblx0Y29uc3QgYiA9IDIwMCAqICh5IC0geik7XG5cblx0cmV0dXJuIFtsLCBhLCBiXTtcbn07XG5cbmNvbnZlcnQuaHNsLnJnYiA9IGZ1bmN0aW9uIChoc2wpIHtcblx0Y29uc3QgaCA9IGhzbFswXSAvIDM2MDtcblx0Y29uc3QgcyA9IGhzbFsxXSAvIDEwMDtcblx0Y29uc3QgbCA9IGhzbFsyXSAvIDEwMDtcblx0bGV0IHQyO1xuXHRsZXQgdDM7XG5cdGxldCB2YWw7XG5cblx0aWYgKHMgPT09IDApIHtcblx0XHR2YWwgPSBsICogMjU1O1xuXHRcdHJldHVybiBbdmFsLCB2YWwsIHZhbF07XG5cdH1cblxuXHRpZiAobCA8IDAuNSkge1xuXHRcdHQyID0gbCAqICgxICsgcyk7XG5cdH0gZWxzZSB7XG5cdFx0dDIgPSBsICsgcyAtIGwgKiBzO1xuXHR9XG5cblx0Y29uc3QgdDEgPSAyICogbCAtIHQyO1xuXG5cdGNvbnN0IHJnYiA9IFswLCAwLCAwXTtcblx0Zm9yIChsZXQgaSA9IDA7IGkgPCAzOyBpKyspIHtcblx0XHR0MyA9IGggKyAxIC8gMyAqIC0oaSAtIDEpO1xuXHRcdGlmICh0MyA8IDApIHtcblx0XHRcdHQzKys7XG5cdFx0fVxuXG5cdFx0aWYgKHQzID4gMSkge1xuXHRcdFx0dDMtLTtcblx0XHR9XG5cblx0XHRpZiAoNiAqIHQzIDwgMSkge1xuXHRcdFx0dmFsID0gdDEgKyAodDIgLSB0MSkgKiA2ICogdDM7XG5cdFx0fSBlbHNlIGlmICgyICogdDMgPCAxKSB7XG5cdFx0XHR2YWwgPSB0Mjtcblx0XHR9IGVsc2UgaWYgKDMgKiB0MyA8IDIpIHtcblx0XHRcdHZhbCA9IHQxICsgKHQyIC0gdDEpICogKDIgLyAzIC0gdDMpICogNjtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dmFsID0gdDE7XG5cdFx0fVxuXG5cdFx0cmdiW2ldID0gdmFsICogMjU1O1xuXHR9XG5cblx0cmV0dXJuIHJnYjtcbn07XG5cbmNvbnZlcnQuaHNsLmhzdiA9IGZ1bmN0aW9uIChoc2wpIHtcblx0Y29uc3QgaCA9IGhzbFswXTtcblx0bGV0IHMgPSBoc2xbMV0gLyAxMDA7XG5cdGxldCBsID0gaHNsWzJdIC8gMTAwO1xuXHRsZXQgc21pbiA9IHM7XG5cdGNvbnN0IGxtaW4gPSBNYXRoLm1heChsLCAwLjAxKTtcblxuXHRsICo9IDI7XG5cdHMgKj0gKGwgPD0gMSkgPyBsIDogMiAtIGw7XG5cdHNtaW4gKj0gbG1pbiA8PSAxID8gbG1pbiA6IDIgLSBsbWluO1xuXHRjb25zdCB2ID0gKGwgKyBzKSAvIDI7XG5cdGNvbnN0IHN2ID0gbCA9PT0gMCA/ICgyICogc21pbikgLyAobG1pbiArIHNtaW4pIDogKDIgKiBzKSAvIChsICsgcyk7XG5cblx0cmV0dXJuIFtoLCBzdiAqIDEwMCwgdiAqIDEwMF07XG59O1xuXG5jb252ZXJ0Lmhzdi5yZ2IgPSBmdW5jdGlvbiAoaHN2KSB7XG5cdGNvbnN0IGggPSBoc3ZbMF0gLyA2MDtcblx0Y29uc3QgcyA9IGhzdlsxXSAvIDEwMDtcblx0bGV0IHYgPSBoc3ZbMl0gLyAxMDA7XG5cdGNvbnN0IGhpID0gTWF0aC5mbG9vcihoKSAlIDY7XG5cblx0Y29uc3QgZiA9IGggLSBNYXRoLmZsb29yKGgpO1xuXHRjb25zdCBwID0gMjU1ICogdiAqICgxIC0gcyk7XG5cdGNvbnN0IHEgPSAyNTUgKiB2ICogKDEgLSAocyAqIGYpKTtcblx0Y29uc3QgdCA9IDI1NSAqIHYgKiAoMSAtIChzICogKDEgLSBmKSkpO1xuXHR2ICo9IDI1NTtcblxuXHRzd2l0Y2ggKGhpKSB7XG5cdFx0Y2FzZSAwOlxuXHRcdFx0cmV0dXJuIFt2LCB0LCBwXTtcblx0XHRjYXNlIDE6XG5cdFx0XHRyZXR1cm4gW3EsIHYsIHBdO1xuXHRcdGNhc2UgMjpcblx0XHRcdHJldHVybiBbcCwgdiwgdF07XG5cdFx0Y2FzZSAzOlxuXHRcdFx0cmV0dXJuIFtwLCBxLCB2XTtcblx0XHRjYXNlIDQ6XG5cdFx0XHRyZXR1cm4gW3QsIHAsIHZdO1xuXHRcdGNhc2UgNTpcblx0XHRcdHJldHVybiBbdiwgcCwgcV07XG5cdH1cbn07XG5cbmNvbnZlcnQuaHN2LmhzbCA9IGZ1bmN0aW9uIChoc3YpIHtcblx0Y29uc3QgaCA9IGhzdlswXTtcblx0Y29uc3QgcyA9IGhzdlsxXSAvIDEwMDtcblx0Y29uc3QgdiA9IGhzdlsyXSAvIDEwMDtcblx0Y29uc3Qgdm1pbiA9IE1hdGgubWF4KHYsIDAuMDEpO1xuXHRsZXQgc2w7XG5cdGxldCBsO1xuXG5cdGwgPSAoMiAtIHMpICogdjtcblx0Y29uc3QgbG1pbiA9ICgyIC0gcykgKiB2bWluO1xuXHRzbCA9IHMgKiB2bWluO1xuXHRzbCAvPSAobG1pbiA8PSAxKSA/IGxtaW4gOiAyIC0gbG1pbjtcblx0c2wgPSBzbCB8fCAwO1xuXHRsIC89IDI7XG5cblx0cmV0dXJuIFtoLCBzbCAqIDEwMCwgbCAqIDEwMF07XG59O1xuXG4vLyBodHRwOi8vZGV2LnczLm9yZy9jc3N3Zy9jc3MtY29sb3IvI2h3Yi10by1yZ2JcbmNvbnZlcnQuaHdiLnJnYiA9IGZ1bmN0aW9uIChod2IpIHtcblx0Y29uc3QgaCA9IGh3YlswXSAvIDM2MDtcblx0bGV0IHdoID0gaHdiWzFdIC8gMTAwO1xuXHRsZXQgYmwgPSBod2JbMl0gLyAxMDA7XG5cdGNvbnN0IHJhdGlvID0gd2ggKyBibDtcblx0bGV0IGY7XG5cblx0Ly8gV2ggKyBibCBjYW50IGJlID4gMVxuXHRpZiAocmF0aW8gPiAxKSB7XG5cdFx0d2ggLz0gcmF0aW87XG5cdFx0YmwgLz0gcmF0aW87XG5cdH1cblxuXHRjb25zdCBpID0gTWF0aC5mbG9vcig2ICogaCk7XG5cdGNvbnN0IHYgPSAxIC0gYmw7XG5cdGYgPSA2ICogaCAtIGk7XG5cblx0aWYgKChpICYgMHgwMSkgIT09IDApIHtcblx0XHRmID0gMSAtIGY7XG5cdH1cblxuXHRjb25zdCBuID0gd2ggKyBmICogKHYgLSB3aCk7IC8vIExpbmVhciBpbnRlcnBvbGF0aW9uXG5cblx0bGV0IHI7XG5cdGxldCBnO1xuXHRsZXQgYjtcblx0LyogZXNsaW50LWRpc2FibGUgbWF4LXN0YXRlbWVudHMtcGVyLWxpbmUsbm8tbXVsdGktc3BhY2VzICovXG5cdHN3aXRjaCAoaSkge1xuXHRcdGRlZmF1bHQ6XG5cdFx0Y2FzZSA2OlxuXHRcdGNhc2UgMDogciA9IHY7ICBnID0gbjsgIGIgPSB3aDsgYnJlYWs7XG5cdFx0Y2FzZSAxOiByID0gbjsgIGcgPSB2OyAgYiA9IHdoOyBicmVhaztcblx0XHRjYXNlIDI6IHIgPSB3aDsgZyA9IHY7ICBiID0gbjsgYnJlYWs7XG5cdFx0Y2FzZSAzOiByID0gd2g7IGcgPSBuOyAgYiA9IHY7IGJyZWFrO1xuXHRcdGNhc2UgNDogciA9IG47ICBnID0gd2g7IGIgPSB2OyBicmVhaztcblx0XHRjYXNlIDU6IHIgPSB2OyAgZyA9IHdoOyBiID0gbjsgYnJlYWs7XG5cdH1cblx0LyogZXNsaW50LWVuYWJsZSBtYXgtc3RhdGVtZW50cy1wZXItbGluZSxuby1tdWx0aS1zcGFjZXMgKi9cblxuXHRyZXR1cm4gW3IgKiAyNTUsIGcgKiAyNTUsIGIgKiAyNTVdO1xufTtcblxuY29udmVydC5jbXlrLnJnYiA9IGZ1bmN0aW9uIChjbXlrKSB7XG5cdGNvbnN0IGMgPSBjbXlrWzBdIC8gMTAwO1xuXHRjb25zdCBtID0gY215a1sxXSAvIDEwMDtcblx0Y29uc3QgeSA9IGNteWtbMl0gLyAxMDA7XG5cdGNvbnN0IGsgPSBjbXlrWzNdIC8gMTAwO1xuXG5cdGNvbnN0IHIgPSAxIC0gTWF0aC5taW4oMSwgYyAqICgxIC0gaykgKyBrKTtcblx0Y29uc3QgZyA9IDEgLSBNYXRoLm1pbigxLCBtICogKDEgLSBrKSArIGspO1xuXHRjb25zdCBiID0gMSAtIE1hdGgubWluKDEsIHkgKiAoMSAtIGspICsgayk7XG5cblx0cmV0dXJuIFtyICogMjU1LCBnICogMjU1LCBiICogMjU1XTtcbn07XG5cbmNvbnZlcnQueHl6LnJnYiA9IGZ1bmN0aW9uICh4eXopIHtcblx0Y29uc3QgeCA9IHh5elswXSAvIDEwMDtcblx0Y29uc3QgeSA9IHh5elsxXSAvIDEwMDtcblx0Y29uc3QgeiA9IHh5elsyXSAvIDEwMDtcblx0bGV0IHI7XG5cdGxldCBnO1xuXHRsZXQgYjtcblxuXHRyID0gKHggKiAzLjI0MDYpICsgKHkgKiAtMS41MzcyKSArICh6ICogLTAuNDk4Nik7XG5cdGcgPSAoeCAqIC0wLjk2ODkpICsgKHkgKiAxLjg3NTgpICsgKHogKiAwLjA0MTUpO1xuXHRiID0gKHggKiAwLjA1NTcpICsgKHkgKiAtMC4yMDQwKSArICh6ICogMS4wNTcwKTtcblxuXHQvLyBBc3N1bWUgc1JHQlxuXHRyID0gciA+IDAuMDAzMTMwOFxuXHRcdD8gKCgxLjA1NSAqIChyICoqICgxLjAgLyAyLjQpKSkgLSAwLjA1NSlcblx0XHQ6IHIgKiAxMi45MjtcblxuXHRnID0gZyA+IDAuMDAzMTMwOFxuXHRcdD8gKCgxLjA1NSAqIChnICoqICgxLjAgLyAyLjQpKSkgLSAwLjA1NSlcblx0XHQ6IGcgKiAxMi45MjtcblxuXHRiID0gYiA+IDAuMDAzMTMwOFxuXHRcdD8gKCgxLjA1NSAqIChiICoqICgxLjAgLyAyLjQpKSkgLSAwLjA1NSlcblx0XHQ6IGIgKiAxMi45MjtcblxuXHRyID0gTWF0aC5taW4oTWF0aC5tYXgoMCwgciksIDEpO1xuXHRnID0gTWF0aC5taW4oTWF0aC5tYXgoMCwgZyksIDEpO1xuXHRiID0gTWF0aC5taW4oTWF0aC5tYXgoMCwgYiksIDEpO1xuXG5cdHJldHVybiBbciAqIDI1NSwgZyAqIDI1NSwgYiAqIDI1NV07XG59O1xuXG5jb252ZXJ0Lnh5ei5sYWIgPSBmdW5jdGlvbiAoeHl6KSB7XG5cdGxldCB4ID0geHl6WzBdO1xuXHRsZXQgeSA9IHh5elsxXTtcblx0bGV0IHogPSB4eXpbMl07XG5cblx0eCAvPSA5NS4wNDc7XG5cdHkgLz0gMTAwO1xuXHR6IC89IDEwOC44ODM7XG5cblx0eCA9IHggPiAwLjAwODg1NiA/ICh4ICoqICgxIC8gMykpIDogKDcuNzg3ICogeCkgKyAoMTYgLyAxMTYpO1xuXHR5ID0geSA+IDAuMDA4ODU2ID8gKHkgKiogKDEgLyAzKSkgOiAoNy43ODcgKiB5KSArICgxNiAvIDExNik7XG5cdHogPSB6ID4gMC4wMDg4NTYgPyAoeiAqKiAoMSAvIDMpKSA6ICg3Ljc4NyAqIHopICsgKDE2IC8gMTE2KTtcblxuXHRjb25zdCBsID0gKDExNiAqIHkpIC0gMTY7XG5cdGNvbnN0IGEgPSA1MDAgKiAoeCAtIHkpO1xuXHRjb25zdCBiID0gMjAwICogKHkgLSB6KTtcblxuXHRyZXR1cm4gW2wsIGEsIGJdO1xufTtcblxuY29udmVydC5sYWIueHl6ID0gZnVuY3Rpb24gKGxhYikge1xuXHRjb25zdCBsID0gbGFiWzBdO1xuXHRjb25zdCBhID0gbGFiWzFdO1xuXHRjb25zdCBiID0gbGFiWzJdO1xuXHRsZXQgeDtcblx0bGV0IHk7XG5cdGxldCB6O1xuXG5cdHkgPSAobCArIDE2KSAvIDExNjtcblx0eCA9IGEgLyA1MDAgKyB5O1xuXHR6ID0geSAtIGIgLyAyMDA7XG5cblx0Y29uc3QgeTIgPSB5ICoqIDM7XG5cdGNvbnN0IHgyID0geCAqKiAzO1xuXHRjb25zdCB6MiA9IHogKiogMztcblx0eSA9IHkyID4gMC4wMDg4NTYgPyB5MiA6ICh5IC0gMTYgLyAxMTYpIC8gNy43ODc7XG5cdHggPSB4MiA+IDAuMDA4ODU2ID8geDIgOiAoeCAtIDE2IC8gMTE2KSAvIDcuNzg3O1xuXHR6ID0gejIgPiAwLjAwODg1NiA/IHoyIDogKHogLSAxNiAvIDExNikgLyA3Ljc4NztcblxuXHR4ICo9IDk1LjA0Nztcblx0eSAqPSAxMDA7XG5cdHogKj0gMTA4Ljg4MztcblxuXHRyZXR1cm4gW3gsIHksIHpdO1xufTtcblxuY29udmVydC5sYWIubGNoID0gZnVuY3Rpb24gKGxhYikge1xuXHRjb25zdCBsID0gbGFiWzBdO1xuXHRjb25zdCBhID0gbGFiWzFdO1xuXHRjb25zdCBiID0gbGFiWzJdO1xuXHRsZXQgaDtcblxuXHRjb25zdCBociA9IE1hdGguYXRhbjIoYiwgYSk7XG5cdGggPSBociAqIDM2MCAvIDIgLyBNYXRoLlBJO1xuXG5cdGlmIChoIDwgMCkge1xuXHRcdGggKz0gMzYwO1xuXHR9XG5cblx0Y29uc3QgYyA9IE1hdGguc3FydChhICogYSArIGIgKiBiKTtcblxuXHRyZXR1cm4gW2wsIGMsIGhdO1xufTtcblxuY29udmVydC5sY2gubGFiID0gZnVuY3Rpb24gKGxjaCkge1xuXHRjb25zdCBsID0gbGNoWzBdO1xuXHRjb25zdCBjID0gbGNoWzFdO1xuXHRjb25zdCBoID0gbGNoWzJdO1xuXG5cdGNvbnN0IGhyID0gaCAvIDM2MCAqIDIgKiBNYXRoLlBJO1xuXHRjb25zdCBhID0gYyAqIE1hdGguY29zKGhyKTtcblx0Y29uc3QgYiA9IGMgKiBNYXRoLnNpbihocik7XG5cblx0cmV0dXJuIFtsLCBhLCBiXTtcbn07XG5cbmNvbnZlcnQucmdiLmFuc2kxNiA9IGZ1bmN0aW9uIChhcmdzLCBzYXR1cmF0aW9uID0gbnVsbCkge1xuXHRjb25zdCBbciwgZywgYl0gPSBhcmdzO1xuXHRsZXQgdmFsdWUgPSBzYXR1cmF0aW9uID09PSBudWxsID8gY29udmVydC5yZ2IuaHN2KGFyZ3MpWzJdIDogc2F0dXJhdGlvbjsgLy8gSHN2IC0+IGFuc2kxNiBvcHRpbWl6YXRpb25cblxuXHR2YWx1ZSA9IE1hdGgucm91bmQodmFsdWUgLyA1MCk7XG5cblx0aWYgKHZhbHVlID09PSAwKSB7XG5cdFx0cmV0dXJuIDMwO1xuXHR9XG5cblx0bGV0IGFuc2kgPSAzMFxuXHRcdCsgKChNYXRoLnJvdW5kKGIgLyAyNTUpIDw8IDIpXG5cdFx0fCAoTWF0aC5yb3VuZChnIC8gMjU1KSA8PCAxKVxuXHRcdHwgTWF0aC5yb3VuZChyIC8gMjU1KSk7XG5cblx0aWYgKHZhbHVlID09PSAyKSB7XG5cdFx0YW5zaSArPSA2MDtcblx0fVxuXG5cdHJldHVybiBhbnNpO1xufTtcblxuY29udmVydC5oc3YuYW5zaTE2ID0gZnVuY3Rpb24gKGFyZ3MpIHtcblx0Ly8gT3B0aW1pemF0aW9uIGhlcmU7IHdlIGFscmVhZHkga25vdyB0aGUgdmFsdWUgYW5kIGRvbid0IG5lZWQgdG8gZ2V0XG5cdC8vIGl0IGNvbnZlcnRlZCBmb3IgdXMuXG5cdHJldHVybiBjb252ZXJ0LnJnYi5hbnNpMTYoY29udmVydC5oc3YucmdiKGFyZ3MpLCBhcmdzWzJdKTtcbn07XG5cbmNvbnZlcnQucmdiLmFuc2kyNTYgPSBmdW5jdGlvbiAoYXJncykge1xuXHRjb25zdCByID0gYXJnc1swXTtcblx0Y29uc3QgZyA9IGFyZ3NbMV07XG5cdGNvbnN0IGIgPSBhcmdzWzJdO1xuXG5cdC8vIFdlIHVzZSB0aGUgZXh0ZW5kZWQgZ3JleXNjYWxlIHBhbGV0dGUgaGVyZSwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mXG5cdC8vIGJsYWNrIGFuZCB3aGl0ZS4gbm9ybWFsIHBhbGV0dGUgb25seSBoYXMgNCBncmV5c2NhbGUgc2hhZGVzLlxuXHRpZiAociA9PT0gZyAmJiBnID09PSBiKSB7XG5cdFx0aWYgKHIgPCA4KSB7XG5cdFx0XHRyZXR1cm4gMTY7XG5cdFx0fVxuXG5cdFx0aWYgKHIgPiAyNDgpIHtcblx0XHRcdHJldHVybiAyMzE7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIE1hdGgucm91bmQoKChyIC0gOCkgLyAyNDcpICogMjQpICsgMjMyO1xuXHR9XG5cblx0Y29uc3QgYW5zaSA9IDE2XG5cdFx0KyAoMzYgKiBNYXRoLnJvdW5kKHIgLyAyNTUgKiA1KSlcblx0XHQrICg2ICogTWF0aC5yb3VuZChnIC8gMjU1ICogNSkpXG5cdFx0KyBNYXRoLnJvdW5kKGIgLyAyNTUgKiA1KTtcblxuXHRyZXR1cm4gYW5zaTtcbn07XG5cbmNvbnZlcnQuYW5zaTE2LnJnYiA9IGZ1bmN0aW9uIChhcmdzKSB7XG5cdGxldCBjb2xvciA9IGFyZ3MgJSAxMDtcblxuXHQvLyBIYW5kbGUgZ3JleXNjYWxlXG5cdGlmIChjb2xvciA9PT0gMCB8fCBjb2xvciA9PT0gNykge1xuXHRcdGlmIChhcmdzID4gNTApIHtcblx0XHRcdGNvbG9yICs9IDMuNTtcblx0XHR9XG5cblx0XHRjb2xvciA9IGNvbG9yIC8gMTAuNSAqIDI1NTtcblxuXHRcdHJldHVybiBbY29sb3IsIGNvbG9yLCBjb2xvcl07XG5cdH1cblxuXHRjb25zdCBtdWx0ID0gKH5+KGFyZ3MgPiA1MCkgKyAxKSAqIDAuNTtcblx0Y29uc3QgciA9ICgoY29sb3IgJiAxKSAqIG11bHQpICogMjU1O1xuXHRjb25zdCBnID0gKCgoY29sb3IgPj4gMSkgJiAxKSAqIG11bHQpICogMjU1O1xuXHRjb25zdCBiID0gKCgoY29sb3IgPj4gMikgJiAxKSAqIG11bHQpICogMjU1O1xuXG5cdHJldHVybiBbciwgZywgYl07XG59O1xuXG5jb252ZXJ0LmFuc2kyNTYucmdiID0gZnVuY3Rpb24gKGFyZ3MpIHtcblx0Ly8gSGFuZGxlIGdyZXlzY2FsZVxuXHRpZiAoYXJncyA+PSAyMzIpIHtcblx0XHRjb25zdCBjID0gKGFyZ3MgLSAyMzIpICogMTAgKyA4O1xuXHRcdHJldHVybiBbYywgYywgY107XG5cdH1cblxuXHRhcmdzIC09IDE2O1xuXG5cdGxldCByZW07XG5cdGNvbnN0IHIgPSBNYXRoLmZsb29yKGFyZ3MgLyAzNikgLyA1ICogMjU1O1xuXHRjb25zdCBnID0gTWF0aC5mbG9vcigocmVtID0gYXJncyAlIDM2KSAvIDYpIC8gNSAqIDI1NTtcblx0Y29uc3QgYiA9IChyZW0gJSA2KSAvIDUgKiAyNTU7XG5cblx0cmV0dXJuIFtyLCBnLCBiXTtcbn07XG5cbmNvbnZlcnQucmdiLmhleCA9IGZ1bmN0aW9uIChhcmdzKSB7XG5cdGNvbnN0IGludGVnZXIgPSAoKE1hdGgucm91bmQoYXJnc1swXSkgJiAweEZGKSA8PCAxNilcblx0XHQrICgoTWF0aC5yb3VuZChhcmdzWzFdKSAmIDB4RkYpIDw8IDgpXG5cdFx0KyAoTWF0aC5yb3VuZChhcmdzWzJdKSAmIDB4RkYpO1xuXG5cdGNvbnN0IHN0cmluZyA9IGludGVnZXIudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7XG5cdHJldHVybiAnMDAwMDAwJy5zdWJzdHJpbmcoc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7XG59O1xuXG5jb252ZXJ0LmhleC5yZ2IgPSBmdW5jdGlvbiAoYXJncykge1xuXHRjb25zdCBtYXRjaCA9IGFyZ3MudG9TdHJpbmcoMTYpLm1hdGNoKC9bYS1mMC05XXs2fXxbYS1mMC05XXszfS9pKTtcblx0aWYgKCFtYXRjaCkge1xuXHRcdHJldHVybiBbMCwgMCwgMF07XG5cdH1cblxuXHRsZXQgY29sb3JTdHJpbmcgPSBtYXRjaFswXTtcblxuXHRpZiAobWF0Y2hbMF0ubGVuZ3RoID09PSAzKSB7XG5cdFx0Y29sb3JTdHJpbmcgPSBjb2xvclN0cmluZy5zcGxpdCgnJykubWFwKGNoYXIgPT4ge1xuXHRcdFx0cmV0dXJuIGNoYXIgKyBjaGFyO1xuXHRcdH0pLmpvaW4oJycpO1xuXHR9XG5cblx0Y29uc3QgaW50ZWdlciA9IHBhcnNlSW50KGNvbG9yU3RyaW5nLCAxNik7XG5cdGNvbnN0IHIgPSAoaW50ZWdlciA+PiAxNikgJiAweEZGO1xuXHRjb25zdCBnID0gKGludGVnZXIgPj4gOCkgJiAweEZGO1xuXHRjb25zdCBiID0gaW50ZWdlciAmIDB4RkY7XG5cblx0cmV0dXJuIFtyLCBnLCBiXTtcbn07XG5cbmNvbnZlcnQucmdiLmhjZyA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0Y29uc3QgciA9IHJnYlswXSAvIDI1NTtcblx0Y29uc3QgZyA9IHJnYlsxXSAvIDI1NTtcblx0Y29uc3QgYiA9IHJnYlsyXSAvIDI1NTtcblx0Y29uc3QgbWF4ID0gTWF0aC5tYXgoTWF0aC5tYXgociwgZyksIGIpO1xuXHRjb25zdCBtaW4gPSBNYXRoLm1pbihNYXRoLm1pbihyLCBnKSwgYik7XG5cdGNvbnN0IGNocm9tYSA9IChtYXggLSBtaW4pO1xuXHRsZXQgZ3JheXNjYWxlO1xuXHRsZXQgaHVlO1xuXG5cdGlmIChjaHJvbWEgPCAxKSB7XG5cdFx0Z3JheXNjYWxlID0gbWluIC8gKDEgLSBjaHJvbWEpO1xuXHR9IGVsc2Uge1xuXHRcdGdyYXlzY2FsZSA9IDA7XG5cdH1cblxuXHRpZiAoY2hyb21hIDw9IDApIHtcblx0XHRodWUgPSAwO1xuXHR9IGVsc2Vcblx0aWYgKG1heCA9PT0gcikge1xuXHRcdGh1ZSA9ICgoZyAtIGIpIC8gY2hyb21hKSAlIDY7XG5cdH0gZWxzZVxuXHRpZiAobWF4ID09PSBnKSB7XG5cdFx0aHVlID0gMiArIChiIC0gcikgLyBjaHJvbWE7XG5cdH0gZWxzZSB7XG5cdFx0aHVlID0gNCArIChyIC0gZykgLyBjaHJvbWE7XG5cdH1cblxuXHRodWUgLz0gNjtcblx0aHVlICU9IDE7XG5cblx0cmV0dXJuIFtodWUgKiAzNjAsIGNocm9tYSAqIDEwMCwgZ3JheXNjYWxlICogMTAwXTtcbn07XG5cbmNvbnZlcnQuaHNsLmhjZyA9IGZ1bmN0aW9uIChoc2wpIHtcblx0Y29uc3QgcyA9IGhzbFsxXSAvIDEwMDtcblx0Y29uc3QgbCA9IGhzbFsyXSAvIDEwMDtcblxuXHRjb25zdCBjID0gbCA8IDAuNSA/ICgyLjAgKiBzICogbCkgOiAoMi4wICogcyAqICgxLjAgLSBsKSk7XG5cblx0bGV0IGYgPSAwO1xuXHRpZiAoYyA8IDEuMCkge1xuXHRcdGYgPSAobCAtIDAuNSAqIGMpIC8gKDEuMCAtIGMpO1xuXHR9XG5cblx0cmV0dXJuIFtoc2xbMF0sIGMgKiAxMDAsIGYgKiAxMDBdO1xufTtcblxuY29udmVydC5oc3YuaGNnID0gZnVuY3Rpb24gKGhzdikge1xuXHRjb25zdCBzID0gaHN2WzFdIC8gMTAwO1xuXHRjb25zdCB2ID0gaHN2WzJdIC8gMTAwO1xuXG5cdGNvbnN0IGMgPSBzICogdjtcblx0bGV0IGYgPSAwO1xuXG5cdGlmIChjIDwgMS4wKSB7XG5cdFx0ZiA9ICh2IC0gYykgLyAoMSAtIGMpO1xuXHR9XG5cblx0cmV0dXJuIFtoc3ZbMF0sIGMgKiAxMDAsIGYgKiAxMDBdO1xufTtcblxuY29udmVydC5oY2cucmdiID0gZnVuY3Rpb24gKGhjZykge1xuXHRjb25zdCBoID0gaGNnWzBdIC8gMzYwO1xuXHRjb25zdCBjID0gaGNnWzFdIC8gMTAwO1xuXHRjb25zdCBnID0gaGNnWzJdIC8gMTAwO1xuXG5cdGlmIChjID09PSAwLjApIHtcblx0XHRyZXR1cm4gW2cgKiAyNTUsIGcgKiAyNTUsIGcgKiAyNTVdO1xuXHR9XG5cblx0Y29uc3QgcHVyZSA9IFswLCAwLCAwXTtcblx0Y29uc3QgaGkgPSAoaCAlIDEpICogNjtcblx0Y29uc3QgdiA9IGhpICUgMTtcblx0Y29uc3QgdyA9IDEgLSB2O1xuXHRsZXQgbWcgPSAwO1xuXG5cdC8qIGVzbGludC1kaXNhYmxlIG1heC1zdGF0ZW1lbnRzLXBlci1saW5lICovXG5cdHN3aXRjaCAoTWF0aC5mbG9vcihoaSkpIHtcblx0XHRjYXNlIDA6XG5cdFx0XHRwdXJlWzBdID0gMTsgcHVyZVsxXSA9IHY7IHB1cmVbMl0gPSAwOyBicmVhaztcblx0XHRjYXNlIDE6XG5cdFx0XHRwdXJlWzBdID0gdzsgcHVyZVsxXSA9IDE7IHB1cmVbMl0gPSAwOyBicmVhaztcblx0XHRjYXNlIDI6XG5cdFx0XHRwdXJlWzBdID0gMDsgcHVyZVsxXSA9IDE7IHB1cmVbMl0gPSB2OyBicmVhaztcblx0XHRjYXNlIDM6XG5cdFx0XHRwdXJlWzBdID0gMDsgcHVyZVsxXSA9IHc7IHB1cmVbMl0gPSAxOyBicmVhaztcblx0XHRjYXNlIDQ6XG5cdFx0XHRwdXJlWzBdID0gdjsgcHVyZVsxXSA9IDA7IHB1cmVbMl0gPSAxOyBicmVhaztcblx0XHRkZWZhdWx0OlxuXHRcdFx0cHVyZVswXSA9IDE7IHB1cmVbMV0gPSAwOyBwdXJlWzJdID0gdztcblx0fVxuXHQvKiBlc2xpbnQtZW5hYmxlIG1heC1zdGF0ZW1lbnRzLXBlci1saW5lICovXG5cblx0bWcgPSAoMS4wIC0gYykgKiBnO1xuXG5cdHJldHVybiBbXG5cdFx0KGMgKiBwdXJlWzBdICsgbWcpICogMjU1LFxuXHRcdChjICogcHVyZVsxXSArIG1nKSAqIDI1NSxcblx0XHQoYyAqIHB1cmVbMl0gKyBtZykgKiAyNTVcblx0XTtcbn07XG5cbmNvbnZlcnQuaGNnLmhzdiA9IGZ1bmN0aW9uIChoY2cpIHtcblx0Y29uc3QgYyA9IGhjZ1sxXSAvIDEwMDtcblx0Y29uc3QgZyA9IGhjZ1syXSAvIDEwMDtcblxuXHRjb25zdCB2ID0gYyArIGcgKiAoMS4wIC0gYyk7XG5cdGxldCBmID0gMDtcblxuXHRpZiAodiA+IDAuMCkge1xuXHRcdGYgPSBjIC8gdjtcblx0fVxuXG5cdHJldHVybiBbaGNnWzBdLCBmICogMTAwLCB2ICogMTAwXTtcbn07XG5cbmNvbnZlcnQuaGNnLmhzbCA9IGZ1bmN0aW9uIChoY2cpIHtcblx0Y29uc3QgYyA9IGhjZ1sxXSAvIDEwMDtcblx0Y29uc3QgZyA9IGhjZ1syXSAvIDEwMDtcblxuXHRjb25zdCBsID0gZyAqICgxLjAgLSBjKSArIDAuNSAqIGM7XG5cdGxldCBzID0gMDtcblxuXHRpZiAobCA+IDAuMCAmJiBsIDwgMC41KSB7XG5cdFx0cyA9IGMgLyAoMiAqIGwpO1xuXHR9IGVsc2Vcblx0aWYgKGwgPj0gMC41ICYmIGwgPCAxLjApIHtcblx0XHRzID0gYyAvICgyICogKDEgLSBsKSk7XG5cdH1cblxuXHRyZXR1cm4gW2hjZ1swXSwgcyAqIDEwMCwgbCAqIDEwMF07XG59O1xuXG5jb252ZXJ0LmhjZy5od2IgPSBmdW5jdGlvbiAoaGNnKSB7XG5cdGNvbnN0IGMgPSBoY2dbMV0gLyAxMDA7XG5cdGNvbnN0IGcgPSBoY2dbMl0gLyAxMDA7XG5cdGNvbnN0IHYgPSBjICsgZyAqICgxLjAgLSBjKTtcblx0cmV0dXJuIFtoY2dbMF0sICh2IC0gYykgKiAxMDAsICgxIC0gdikgKiAxMDBdO1xufTtcblxuY29udmVydC5od2IuaGNnID0gZnVuY3Rpb24gKGh3Yikge1xuXHRjb25zdCB3ID0gaHdiWzFdIC8gMTAwO1xuXHRjb25zdCBiID0gaHdiWzJdIC8gMTAwO1xuXHRjb25zdCB2ID0gMSAtIGI7XG5cdGNvbnN0IGMgPSB2IC0gdztcblx0bGV0IGcgPSAwO1xuXG5cdGlmIChjIDwgMSkge1xuXHRcdGcgPSAodiAtIGMpIC8gKDEgLSBjKTtcblx0fVxuXG5cdHJldHVybiBbaHdiWzBdLCBjICogMTAwLCBnICogMTAwXTtcbn07XG5cbmNvbnZlcnQuYXBwbGUucmdiID0gZnVuY3Rpb24gKGFwcGxlKSB7XG5cdHJldHVybiBbKGFwcGxlWzBdIC8gNjU1MzUpICogMjU1LCAoYXBwbGVbMV0gLyA2NTUzNSkgKiAyNTUsIChhcHBsZVsyXSAvIDY1NTM1KSAqIDI1NV07XG59O1xuXG5jb252ZXJ0LnJnYi5hcHBsZSA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0cmV0dXJuIFsocmdiWzBdIC8gMjU1KSAqIDY1NTM1LCAocmdiWzFdIC8gMjU1KSAqIDY1NTM1LCAocmdiWzJdIC8gMjU1KSAqIDY1NTM1XTtcbn07XG5cbmNvbnZlcnQuZ3JheS5yZ2IgPSBmdW5jdGlvbiAoYXJncykge1xuXHRyZXR1cm4gW2FyZ3NbMF0gLyAxMDAgKiAyNTUsIGFyZ3NbMF0gLyAxMDAgKiAyNTUsIGFyZ3NbMF0gLyAxMDAgKiAyNTVdO1xufTtcblxuY29udmVydC5ncmF5LmhzbCA9IGZ1bmN0aW9uIChhcmdzKSB7XG5cdHJldHVybiBbMCwgMCwgYXJnc1swXV07XG59O1xuXG5jb252ZXJ0LmdyYXkuaHN2ID0gY29udmVydC5ncmF5LmhzbDtcblxuY29udmVydC5ncmF5Lmh3YiA9IGZ1bmN0aW9uIChncmF5KSB7XG5cdHJldHVybiBbMCwgMTAwLCBncmF5WzBdXTtcbn07XG5cbmNvbnZlcnQuZ3JheS5jbXlrID0gZnVuY3Rpb24gKGdyYXkpIHtcblx0cmV0dXJuIFswLCAwLCAwLCBncmF5WzBdXTtcbn07XG5cbmNvbnZlcnQuZ3JheS5sYWIgPSBmdW5jdGlvbiAoZ3JheSkge1xuXHRyZXR1cm4gW2dyYXlbMF0sIDAsIDBdO1xufTtcblxuY29udmVydC5ncmF5LmhleCA9IGZ1bmN0aW9uIChncmF5KSB7XG5cdGNvbnN0IHZhbCA9IE1hdGgucm91bmQoZ3JheVswXSAvIDEwMCAqIDI1NSkgJiAweEZGO1xuXHRjb25zdCBpbnRlZ2VyID0gKHZhbCA8PCAxNikgKyAodmFsIDw8IDgpICsgdmFsO1xuXG5cdGNvbnN0IHN0cmluZyA9IGludGVnZXIudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7XG5cdHJldHVybiAnMDAwMDAwJy5zdWJzdHJpbmcoc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7XG59O1xuXG5jb252ZXJ0LnJnYi5ncmF5ID0gZnVuY3Rpb24gKHJnYikge1xuXHRjb25zdCB2YWwgPSAocmdiWzBdICsgcmdiWzFdICsgcmdiWzJdKSAvIDM7XG5cdHJldHVybiBbdmFsIC8gMjU1ICogMTAwXTtcbn07XG4iLCAiY29uc3QgY29udmVyc2lvbnMgPSByZXF1aXJlKCcuL2NvbnZlcnNpb25zJyk7XG5cbi8qXG5cdFRoaXMgZnVuY3Rpb24gcm91dGVzIGEgbW9kZWwgdG8gYWxsIG90aGVyIG1vZGVscy5cblxuXHRhbGwgZnVuY3Rpb25zIHRoYXQgYXJlIHJvdXRlZCBoYXZlIGEgcHJvcGVydHkgYC5jb252ZXJzaW9uYCBhdHRhY2hlZFxuXHR0byB0aGUgcmV0dXJuZWQgc3ludGhldGljIGZ1bmN0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGFuIGFycmF5XG5cdG9mIHN0cmluZ3MsIGVhY2ggd2l0aCB0aGUgc3RlcHMgaW4gYmV0d2VlbiB0aGUgJ2Zyb20nIGFuZCAndG8nXG5cdGNvbG9yIG1vZGVscyAoaW5jbHVzaXZlKS5cblxuXHRjb252ZXJzaW9ucyB0aGF0IGFyZSBub3QgcG9zc2libGUgc2ltcGx5IGFyZSBub3QgaW5jbHVkZWQuXG4qL1xuXG5mdW5jdGlvbiBidWlsZEdyYXBoKCkge1xuXHRjb25zdCBncmFwaCA9IHt9O1xuXHQvLyBodHRwczovL2pzcGVyZi5jb20vb2JqZWN0LWtleXMtdnMtZm9yLWluLXdpdGgtY2xvc3VyZS8zXG5cdGNvbnN0IG1vZGVscyA9IE9iamVjdC5rZXlzKGNvbnZlcnNpb25zKTtcblxuXHRmb3IgKGxldCBsZW4gPSBtb2RlbHMubGVuZ3RoLCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG5cdFx0Z3JhcGhbbW9kZWxzW2ldXSA9IHtcblx0XHRcdC8vIGh0dHA6Ly9qc3BlcmYuY29tLzEtdnMtaW5maW5pdHlcblx0XHRcdC8vIG1pY3JvLW9wdCwgYnV0IHRoaXMgaXMgc2ltcGxlLlxuXHRcdFx0ZGlzdGFuY2U6IC0xLFxuXHRcdFx0cGFyZW50OiBudWxsXG5cdFx0fTtcblx0fVxuXG5cdHJldHVybiBncmFwaDtcbn1cblxuLy8gaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQnJlYWR0aC1maXJzdF9zZWFyY2hcbmZ1bmN0aW9uIGRlcml2ZUJGUyhmcm9tTW9kZWwpIHtcblx0Y29uc3QgZ3JhcGggPSBidWlsZEdyYXBoKCk7XG5cdGNvbnN0IHF1ZXVlID0gW2Zyb21Nb2RlbF07IC8vIFVuc2hpZnQgLT4gcXVldWUgLT4gcG9wXG5cblx0Z3JhcGhbZnJvbU1vZGVsXS5kaXN0YW5jZSA9IDA7XG5cblx0d2hpbGUgKHF1ZXVlLmxlbmd0aCkge1xuXHRcdGNvbnN0IGN1cnJlbnQgPSBxdWV1ZS5wb3AoKTtcblx0XHRjb25zdCBhZGphY2VudHMgPSBPYmplY3Qua2V5cyhjb252ZXJzaW9uc1tjdXJyZW50XSk7XG5cblx0XHRmb3IgKGxldCBsZW4gPSBhZGphY2VudHMubGVuZ3RoLCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG5cdFx0XHRjb25zdCBhZGphY2VudCA9IGFkamFjZW50c1tpXTtcblx0XHRcdGNvbnN0IG5vZGUgPSBncmFwaFthZGphY2VudF07XG5cblx0XHRcdGlmIChub2RlLmRpc3RhbmNlID09PSAtMSkge1xuXHRcdFx0XHRub2RlLmRpc3RhbmNlID0gZ3JhcGhbY3VycmVudF0uZGlzdGFuY2UgKyAxO1xuXHRcdFx0XHRub2RlLnBhcmVudCA9IGN1cnJlbnQ7XG5cdFx0XHRcdHF1ZXVlLnVuc2hpZnQoYWRqYWNlbnQpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHJldHVybiBncmFwaDtcbn1cblxuZnVuY3Rpb24gbGluayhmcm9tLCB0bykge1xuXHRyZXR1cm4gZnVuY3Rpb24gKGFyZ3MpIHtcblx0XHRyZXR1cm4gdG8oZnJvbShhcmdzKSk7XG5cdH07XG59XG5cbmZ1bmN0aW9uIHdyYXBDb252ZXJzaW9uKHRvTW9kZWwsIGdyYXBoKSB7XG5cdGNvbnN0IHBhdGggPSBbZ3JhcGhbdG9Nb2RlbF0ucGFyZW50LCB0b01vZGVsXTtcblx0bGV0IGZuID0gY29udmVyc2lvbnNbZ3JhcGhbdG9Nb2RlbF0ucGFyZW50XVt0b01vZGVsXTtcblxuXHRsZXQgY3VyID0gZ3JhcGhbdG9Nb2RlbF0ucGFyZW50O1xuXHR3aGlsZSAoZ3JhcGhbY3VyXS5wYXJlbnQpIHtcblx0XHRwYXRoLnVuc2hpZnQoZ3JhcGhbY3VyXS5wYXJlbnQpO1xuXHRcdGZuID0gbGluayhjb252ZXJzaW9uc1tncmFwaFtjdXJdLnBhcmVudF1bY3VyXSwgZm4pO1xuXHRcdGN1ciA9IGdyYXBoW2N1cl0ucGFyZW50O1xuXHR9XG5cblx0Zm4uY29udmVyc2lvbiA9IHBhdGg7XG5cdHJldHVybiBmbjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZnJvbU1vZGVsKSB7XG5cdGNvbnN0IGdyYXBoID0gZGVyaXZlQkZTKGZyb21Nb2RlbCk7XG5cdGNvbnN0IGNvbnZlcnNpb24gPSB7fTtcblxuXHRjb25zdCBtb2RlbHMgPSBPYmplY3Qua2V5cyhncmFwaCk7XG5cdGZvciAobGV0IGxlbiA9IG1vZGVscy5sZW5ndGgsIGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcblx0XHRjb25zdCB0b01vZGVsID0gbW9kZWxzW2ldO1xuXHRcdGNvbnN0IG5vZGUgPSBncmFwaFt0b01vZGVsXTtcblxuXHRcdGlmIChub2RlLnBhcmVudCA9PT0gbnVsbCkge1xuXHRcdFx0Ly8gTm8gcG9zc2libGUgY29udmVyc2lvbiwgb3IgdGhpcyBub2RlIGlzIHRoZSBzb3VyY2UgbW9kZWwuXG5cdFx0XHRjb250aW51ZTtcblx0XHR9XG5cblx0XHRjb252ZXJzaW9uW3RvTW9kZWxdID0gd3JhcENvbnZlcnNpb24odG9Nb2RlbCwgZ3JhcGgpO1xuXHR9XG5cblx0cmV0dXJuIGNvbnZlcnNpb247XG59O1xuXG4iLCAiY29uc3QgY29udmVyc2lvbnMgPSByZXF1aXJlKCcuL2NvbnZlcnNpb25zJyk7XG5jb25zdCByb3V0ZSA9IHJlcXVpcmUoJy4vcm91dGUnKTtcblxuY29uc3QgY29udmVydCA9IHt9O1xuXG5jb25zdCBtb2RlbHMgPSBPYmplY3Qua2V5cyhjb252ZXJzaW9ucyk7XG5cbmZ1bmN0aW9uIHdyYXBSYXcoZm4pIHtcblx0Y29uc3Qgd3JhcHBlZEZuID0gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcblx0XHRjb25zdCBhcmcwID0gYXJnc1swXTtcblx0XHRpZiAoYXJnMCA9PT0gdW5kZWZpbmVkIHx8IGFyZzAgPT09IG51bGwpIHtcblx0XHRcdHJldHVybiBhcmcwO1xuXHRcdH1cblxuXHRcdGlmIChhcmcwLmxlbmd0aCA+IDEpIHtcblx0XHRcdGFyZ3MgPSBhcmcwO1xuXHRcdH1cblxuXHRcdHJldHVybiBmbihhcmdzKTtcblx0fTtcblxuXHQvLyBQcmVzZXJ2ZSAuY29udmVyc2lvbiBwcm9wZXJ0eSBpZiB0aGVyZSBpcyBvbmVcblx0aWYgKCdjb252ZXJzaW9uJyBpbiBmbikge1xuXHRcdHdyYXBwZWRGbi5jb252ZXJzaW9uID0gZm4uY29udmVyc2lvbjtcblx0fVxuXG5cdHJldHVybiB3cmFwcGVkRm47XG59XG5cbmZ1bmN0aW9uIHdyYXBSb3VuZGVkKGZuKSB7XG5cdGNvbnN0IHdyYXBwZWRGbiA9IGZ1bmN0aW9uICguLi5hcmdzKSB7XG5cdFx0Y29uc3QgYXJnMCA9IGFyZ3NbMF07XG5cblx0XHRpZiAoYXJnMCA9PT0gdW5kZWZpbmVkIHx8IGFyZzAgPT09IG51bGwpIHtcblx0XHRcdHJldHVybiBhcmcwO1xuXHRcdH1cblxuXHRcdGlmIChhcmcwLmxlbmd0aCA+IDEpIHtcblx0XHRcdGFyZ3MgPSBhcmcwO1xuXHRcdH1cblxuXHRcdGNvbnN0IHJlc3VsdCA9IGZuKGFyZ3MpO1xuXG5cdFx0Ly8gV2UncmUgYXNzdW1pbmcgdGhlIHJlc3VsdCBpcyBhbiBhcnJheSBoZXJlLlxuXHRcdC8vIHNlZSBub3RpY2UgaW4gY29udmVyc2lvbnMuanM7IGRvbid0IHVzZSBib3ggdHlwZXNcblx0XHQvLyBpbiBjb252ZXJzaW9uIGZ1bmN0aW9ucy5cblx0XHRpZiAodHlwZW9mIHJlc3VsdCA9PT0gJ29iamVjdCcpIHtcblx0XHRcdGZvciAobGV0IGxlbiA9IHJlc3VsdC5sZW5ndGgsIGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcblx0XHRcdFx0cmVzdWx0W2ldID0gTWF0aC5yb3VuZChyZXN1bHRbaV0pO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiByZXN1bHQ7XG5cdH07XG5cblx0Ly8gUHJlc2VydmUgLmNvbnZlcnNpb24gcHJvcGVydHkgaWYgdGhlcmUgaXMgb25lXG5cdGlmICgnY29udmVyc2lvbicgaW4gZm4pIHtcblx0XHR3cmFwcGVkRm4uY29udmVyc2lvbiA9IGZuLmNvbnZlcnNpb247XG5cdH1cblxuXHRyZXR1cm4gd3JhcHBlZEZuO1xufVxuXG5tb2RlbHMuZm9yRWFjaChmcm9tTW9kZWwgPT4ge1xuXHRjb252ZXJ0W2Zyb21Nb2RlbF0gPSB7fTtcblxuXHRPYmplY3QuZGVmaW5lUHJvcGVydHkoY29udmVydFtmcm9tTW9kZWxdLCAnY2hhbm5lbHMnLCB7dmFsdWU6IGNvbnZlcnNpb25zW2Zyb21Nb2RlbF0uY2hhbm5lbHN9KTtcblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGNvbnZlcnRbZnJvbU1vZGVsXSwgJ2xhYmVscycsIHt2YWx1ZTogY29udmVyc2lvbnNbZnJvbU1vZGVsXS5sYWJlbHN9KTtcblxuXHRjb25zdCByb3V0ZXMgPSByb3V0ZShmcm9tTW9kZWwpO1xuXHRjb25zdCByb3V0ZU1vZGVscyA9IE9iamVjdC5rZXlzKHJvdXRlcyk7XG5cblx0cm91dGVNb2RlbHMuZm9yRWFjaCh0b01vZGVsID0+IHtcblx0XHRjb25zdCBmbiA9IHJvdXRlc1t0b01vZGVsXTtcblxuXHRcdGNvbnZlcnRbZnJvbU1vZGVsXVt0b01vZGVsXSA9IHdyYXBSb3VuZGVkKGZuKTtcblx0XHRjb252ZXJ0W2Zyb21Nb2RlbF1bdG9Nb2RlbF0ucmF3ID0gd3JhcFJhdyhmbik7XG5cdH0pO1xufSk7XG5cbm1vZHVsZS5leHBvcnRzID0gY29udmVydDtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IHdyYXBBbnNpMTYgPSAoZm4sIG9mZnNldCkgPT4gKC4uLmFyZ3MpID0+IHtcblx0Y29uc3QgY29kZSA9IGZuKC4uLmFyZ3MpO1xuXHRyZXR1cm4gYFxcdTAwMUJbJHtjb2RlICsgb2Zmc2V0fW1gO1xufTtcblxuY29uc3Qgd3JhcEFuc2kyNTYgPSAoZm4sIG9mZnNldCkgPT4gKC4uLmFyZ3MpID0+IHtcblx0Y29uc3QgY29kZSA9IGZuKC4uLmFyZ3MpO1xuXHRyZXR1cm4gYFxcdTAwMUJbJHszOCArIG9mZnNldH07NTske2NvZGV9bWA7XG59O1xuXG5jb25zdCB3cmFwQW5zaTE2bSA9IChmbiwgb2Zmc2V0KSA9PiAoLi4uYXJncykgPT4ge1xuXHRjb25zdCByZ2IgPSBmbiguLi5hcmdzKTtcblx0cmV0dXJuIGBcXHUwMDFCWyR7MzggKyBvZmZzZXR9OzI7JHtyZ2JbMF19OyR7cmdiWzFdfTske3JnYlsyXX1tYDtcbn07XG5cbmNvbnN0IGFuc2kyYW5zaSA9IG4gPT4gbjtcbmNvbnN0IHJnYjJyZ2IgPSAociwgZywgYikgPT4gW3IsIGcsIGJdO1xuXG5jb25zdCBzZXRMYXp5UHJvcGVydHkgPSAob2JqZWN0LCBwcm9wZXJ0eSwgZ2V0KSA9PiB7XG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmplY3QsIHByb3BlcnR5LCB7XG5cdFx0Z2V0OiAoKSA9PiB7XG5cdFx0XHRjb25zdCB2YWx1ZSA9IGdldCgpO1xuXG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqZWN0LCBwcm9wZXJ0eSwge1xuXHRcdFx0XHR2YWx1ZSxcblx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRcdFx0Y29uZmlndXJhYmxlOiB0cnVlXG5cdFx0XHR9KTtcblxuXHRcdFx0cmV0dXJuIHZhbHVlO1xuXHRcdH0sXG5cdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRjb25maWd1cmFibGU6IHRydWVcblx0fSk7XG59O1xuXG4vKiogQHR5cGUge3R5cGVvZiBpbXBvcnQoJ2NvbG9yLWNvbnZlcnQnKX0gKi9cbmxldCBjb2xvckNvbnZlcnQ7XG5jb25zdCBtYWtlRHluYW1pY1N0eWxlcyA9ICh3cmFwLCB0YXJnZXRTcGFjZSwgaWRlbnRpdHksIGlzQmFja2dyb3VuZCkgPT4ge1xuXHRpZiAoY29sb3JDb252ZXJ0ID09PSB1bmRlZmluZWQpIHtcblx0XHRjb2xvckNvbnZlcnQgPSByZXF1aXJlKCdjb2xvci1jb252ZXJ0Jyk7XG5cdH1cblxuXHRjb25zdCBvZmZzZXQgPSBpc0JhY2tncm91bmQgPyAxMCA6IDA7XG5cdGNvbnN0IHN0eWxlcyA9IHt9O1xuXG5cdGZvciAoY29uc3QgW3NvdXJjZVNwYWNlLCBzdWl0ZV0gb2YgT2JqZWN0LmVudHJpZXMoY29sb3JDb252ZXJ0KSkge1xuXHRcdGNvbnN0IG5hbWUgPSBzb3VyY2VTcGFjZSA9PT0gJ2Fuc2kxNicgPyAnYW5zaScgOiBzb3VyY2VTcGFjZTtcblx0XHRpZiAoc291cmNlU3BhY2UgPT09IHRhcmdldFNwYWNlKSB7XG5cdFx0XHRzdHlsZXNbbmFtZV0gPSB3cmFwKGlkZW50aXR5LCBvZmZzZXQpO1xuXHRcdH0gZWxzZSBpZiAodHlwZW9mIHN1aXRlID09PSAnb2JqZWN0Jykge1xuXHRcdFx0c3R5bGVzW25hbWVdID0gd3JhcChzdWl0ZVt0YXJnZXRTcGFjZV0sIG9mZnNldCk7XG5cdFx0fVxuXHR9XG5cblx0cmV0dXJuIHN0eWxlcztcbn07XG5cbmZ1bmN0aW9uIGFzc2VtYmxlU3R5bGVzKCkge1xuXHRjb25zdCBjb2RlcyA9IG5ldyBNYXAoKTtcblx0Y29uc3Qgc3R5bGVzID0ge1xuXHRcdG1vZGlmaWVyOiB7XG5cdFx0XHRyZXNldDogWzAsIDBdLFxuXHRcdFx0Ly8gMjEgaXNuJ3Qgd2lkZWx5IHN1cHBvcnRlZCBhbmQgMjIgZG9lcyB0aGUgc2FtZSB0aGluZ1xuXHRcdFx0Ym9sZDogWzEsIDIyXSxcblx0XHRcdGRpbTogWzIsIDIyXSxcblx0XHRcdGl0YWxpYzogWzMsIDIzXSxcblx0XHRcdHVuZGVybGluZTogWzQsIDI0XSxcblx0XHRcdGludmVyc2U6IFs3LCAyN10sXG5cdFx0XHRoaWRkZW46IFs4LCAyOF0sXG5cdFx0XHRzdHJpa2V0aHJvdWdoOiBbOSwgMjldXG5cdFx0fSxcblx0XHRjb2xvcjoge1xuXHRcdFx0YmxhY2s6IFszMCwgMzldLFxuXHRcdFx0cmVkOiBbMzEsIDM5XSxcblx0XHRcdGdyZWVuOiBbMzIsIDM5XSxcblx0XHRcdHllbGxvdzogWzMzLCAzOV0sXG5cdFx0XHRibHVlOiBbMzQsIDM5XSxcblx0XHRcdG1hZ2VudGE6IFszNSwgMzldLFxuXHRcdFx0Y3lhbjogWzM2LCAzOV0sXG5cdFx0XHR3aGl0ZTogWzM3LCAzOV0sXG5cblx0XHRcdC8vIEJyaWdodCBjb2xvclxuXHRcdFx0YmxhY2tCcmlnaHQ6IFs5MCwgMzldLFxuXHRcdFx0cmVkQnJpZ2h0OiBbOTEsIDM5XSxcblx0XHRcdGdyZWVuQnJpZ2h0OiBbOTIsIDM5XSxcblx0XHRcdHllbGxvd0JyaWdodDogWzkzLCAzOV0sXG5cdFx0XHRibHVlQnJpZ2h0OiBbOTQsIDM5XSxcblx0XHRcdG1hZ2VudGFCcmlnaHQ6IFs5NSwgMzldLFxuXHRcdFx0Y3lhbkJyaWdodDogWzk2LCAzOV0sXG5cdFx0XHR3aGl0ZUJyaWdodDogWzk3LCAzOV1cblx0XHR9LFxuXHRcdGJnQ29sb3I6IHtcblx0XHRcdGJnQmxhY2s6IFs0MCwgNDldLFxuXHRcdFx0YmdSZWQ6IFs0MSwgNDldLFxuXHRcdFx0YmdHcmVlbjogWzQyLCA0OV0sXG5cdFx0XHRiZ1llbGxvdzogWzQzLCA0OV0sXG5cdFx0XHRiZ0JsdWU6IFs0NCwgNDldLFxuXHRcdFx0YmdNYWdlbnRhOiBbNDUsIDQ5XSxcblx0XHRcdGJnQ3lhbjogWzQ2LCA0OV0sXG5cdFx0XHRiZ1doaXRlOiBbNDcsIDQ5XSxcblxuXHRcdFx0Ly8gQnJpZ2h0IGNvbG9yXG5cdFx0XHRiZ0JsYWNrQnJpZ2h0OiBbMTAwLCA0OV0sXG5cdFx0XHRiZ1JlZEJyaWdodDogWzEwMSwgNDldLFxuXHRcdFx0YmdHcmVlbkJyaWdodDogWzEwMiwgNDldLFxuXHRcdFx0YmdZZWxsb3dCcmlnaHQ6IFsxMDMsIDQ5XSxcblx0XHRcdGJnQmx1ZUJyaWdodDogWzEwNCwgNDldLFxuXHRcdFx0YmdNYWdlbnRhQnJpZ2h0OiBbMTA1LCA0OV0sXG5cdFx0XHRiZ0N5YW5CcmlnaHQ6IFsxMDYsIDQ5XSxcblx0XHRcdGJnV2hpdGVCcmlnaHQ6IFsxMDcsIDQ5XVxuXHRcdH1cblx0fTtcblxuXHQvLyBBbGlhcyBicmlnaHQgYmxhY2sgYXMgZ3JheSAoYW5kIGdyZXkpXG5cdHN0eWxlcy5jb2xvci5ncmF5ID0gc3R5bGVzLmNvbG9yLmJsYWNrQnJpZ2h0O1xuXHRzdHlsZXMuYmdDb2xvci5iZ0dyYXkgPSBzdHlsZXMuYmdDb2xvci5iZ0JsYWNrQnJpZ2h0O1xuXHRzdHlsZXMuY29sb3IuZ3JleSA9IHN0eWxlcy5jb2xvci5ibGFja0JyaWdodDtcblx0c3R5bGVzLmJnQ29sb3IuYmdHcmV5ID0gc3R5bGVzLmJnQ29sb3IuYmdCbGFja0JyaWdodDtcblxuXHRmb3IgKGNvbnN0IFtncm91cE5hbWUsIGdyb3VwXSBvZiBPYmplY3QuZW50cmllcyhzdHlsZXMpKSB7XG5cdFx0Zm9yIChjb25zdCBbc3R5bGVOYW1lLCBzdHlsZV0gb2YgT2JqZWN0LmVudHJpZXMoZ3JvdXApKSB7XG5cdFx0XHRzdHlsZXNbc3R5bGVOYW1lXSA9IHtcblx0XHRcdFx0b3BlbjogYFxcdTAwMUJbJHtzdHlsZVswXX1tYCxcblx0XHRcdFx0Y2xvc2U6IGBcXHUwMDFCWyR7c3R5bGVbMV19bWBcblx0XHRcdH07XG5cblx0XHRcdGdyb3VwW3N0eWxlTmFtZV0gPSBzdHlsZXNbc3R5bGVOYW1lXTtcblxuXHRcdFx0Y29kZXMuc2V0KHN0eWxlWzBdLCBzdHlsZVsxXSk7XG5cdFx0fVxuXG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHN0eWxlcywgZ3JvdXBOYW1lLCB7XG5cdFx0XHR2YWx1ZTogZ3JvdXAsXG5cdFx0XHRlbnVtZXJhYmxlOiBmYWxzZVxuXHRcdH0pO1xuXHR9XG5cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHN0eWxlcywgJ2NvZGVzJywge1xuXHRcdHZhbHVlOiBjb2Rlcyxcblx0XHRlbnVtZXJhYmxlOiBmYWxzZVxuXHR9KTtcblxuXHRzdHlsZXMuY29sb3IuY2xvc2UgPSAnXFx1MDAxQlszOW0nO1xuXHRzdHlsZXMuYmdDb2xvci5jbG9zZSA9ICdcXHUwMDFCWzQ5bSc7XG5cblx0c2V0TGF6eVByb3BlcnR5KHN0eWxlcy5jb2xvciwgJ2Fuc2knLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTE2LCAnYW5zaTE2JywgYW5zaTJhbnNpLCBmYWxzZSkpO1xuXHRzZXRMYXp5UHJvcGVydHkoc3R5bGVzLmNvbG9yLCAnYW5zaTI1NicsICgpID0+IG1ha2VEeW5hbWljU3R5bGVzKHdyYXBBbnNpMjU2LCAnYW5zaTI1NicsIGFuc2kyYW5zaSwgZmFsc2UpKTtcblx0c2V0TGF6eVByb3BlcnR5KHN0eWxlcy5jb2xvciwgJ2Fuc2kxNm0nLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTE2bSwgJ3JnYicsIHJnYjJyZ2IsIGZhbHNlKSk7XG5cdHNldExhenlQcm9wZXJ0eShzdHlsZXMuYmdDb2xvciwgJ2Fuc2knLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTE2LCAnYW5zaTE2JywgYW5zaTJhbnNpLCB0cnVlKSk7XG5cdHNldExhenlQcm9wZXJ0eShzdHlsZXMuYmdDb2xvciwgJ2Fuc2kyNTYnLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTI1NiwgJ2Fuc2kyNTYnLCBhbnNpMmFuc2ksIHRydWUpKTtcblx0c2V0TGF6eVByb3BlcnR5KHN0eWxlcy5iZ0NvbG9yLCAnYW5zaTE2bScsICgpID0+IG1ha2VEeW5hbWljU3R5bGVzKHdyYXBBbnNpMTZtLCAncmdiJywgcmdiMnJnYiwgdHJ1ZSkpO1xuXG5cdHJldHVybiBzdHlsZXM7XG59XG5cbi8vIE1ha2UgdGhlIGV4cG9ydCBpbW11dGFibGVcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsICdleHBvcnRzJywge1xuXHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRnZXQ6IGFzc2VtYmxlU3R5bGVzXG59KTtcbiIsICIndXNlIHN0cmljdCc7XG5jb25zdCBzdHJpbmdXaWR0aCA9IHJlcXVpcmUoJ3N0cmluZy13aWR0aCcpO1xuY29uc3Qgc3RyaXBBbnNpID0gcmVxdWlyZSgnc3RyaXAtYW5zaScpO1xuY29uc3QgYW5zaVN0eWxlcyA9IHJlcXVpcmUoJ2Fuc2ktc3R5bGVzJyk7XG5cbmNvbnN0IEVTQ0FQRVMgPSBuZXcgU2V0KFtcblx0J1xcdTAwMUInLFxuXHQnXFx1MDA5Qidcbl0pO1xuXG5jb25zdCBFTkRfQ09ERSA9IDM5O1xuXG5jb25zdCBBTlNJX0VTQ0FQRV9CRUxMID0gJ1xcdTAwMDcnO1xuY29uc3QgQU5TSV9DU0kgPSAnWyc7XG5jb25zdCBBTlNJX09TQyA9ICddJztcbmNvbnN0IEFOU0lfU0dSX1RFUk1JTkFUT1IgPSAnbSc7XG5jb25zdCBBTlNJX0VTQ0FQRV9MSU5LID0gYCR7QU5TSV9PU0N9ODs7YDtcblxuY29uc3Qgd3JhcEFuc2kgPSBjb2RlID0+IGAke0VTQ0FQRVMudmFsdWVzKCkubmV4dCgpLnZhbHVlfSR7QU5TSV9DU0l9JHtjb2RlfSR7QU5TSV9TR1JfVEVSTUlOQVRPUn1gO1xuY29uc3Qgd3JhcEFuc2lIeXBlcmxpbmsgPSB1cmkgPT4gYCR7RVNDQVBFUy52YWx1ZXMoKS5uZXh0KCkudmFsdWV9JHtBTlNJX0VTQ0FQRV9MSU5LfSR7dXJpfSR7QU5TSV9FU0NBUEVfQkVMTH1gO1xuXG4vLyBDYWxjdWxhdGUgdGhlIGxlbmd0aCBvZiB3b3JkcyBzcGxpdCBvbiAnICcsIGlnbm9yaW5nXG4vLyB0aGUgZXh0cmEgY2hhcmFjdGVycyBhZGRlZCBieSBhbnNpIGVzY2FwZSBjb2Rlc1xuY29uc3Qgd29yZExlbmd0aHMgPSBzdHJpbmcgPT4gc3RyaW5nLnNwbGl0KCcgJykubWFwKGNoYXJhY3RlciA9PiBzdHJpbmdXaWR0aChjaGFyYWN0ZXIpKTtcblxuLy8gV3JhcCBhIGxvbmcgd29yZCBhY3Jvc3MgbXVsdGlwbGUgcm93c1xuLy8gQW5zaSBlc2NhcGUgY29kZXMgZG8gbm90IGNvdW50IHRvd2FyZHMgbGVuZ3RoXG5jb25zdCB3cmFwV29yZCA9IChyb3dzLCB3b3JkLCBjb2x1bW5zKSA9PiB7XG5cdGNvbnN0IGNoYXJhY3RlcnMgPSBbLi4ud29yZF07XG5cblx0bGV0IGlzSW5zaWRlRXNjYXBlID0gZmFsc2U7XG5cdGxldCBpc0luc2lkZUxpbmtFc2NhcGUgPSBmYWxzZTtcblx0bGV0IHZpc2libGUgPSBzdHJpbmdXaWR0aChzdHJpcEFuc2kocm93c1tyb3dzLmxlbmd0aCAtIDFdKSk7XG5cblx0Zm9yIChjb25zdCBbaW5kZXgsIGNoYXJhY3Rlcl0gb2YgY2hhcmFjdGVycy5lbnRyaWVzKCkpIHtcblx0XHRjb25zdCBjaGFyYWN0ZXJMZW5ndGggPSBzdHJpbmdXaWR0aChjaGFyYWN0ZXIpO1xuXG5cdFx0aWYgKHZpc2libGUgKyBjaGFyYWN0ZXJMZW5ndGggPD0gY29sdW1ucykge1xuXHRcdFx0cm93c1tyb3dzLmxlbmd0aCAtIDFdICs9IGNoYXJhY3Rlcjtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cm93cy5wdXNoKGNoYXJhY3Rlcik7XG5cdFx0XHR2aXNpYmxlID0gMDtcblx0XHR9XG5cblx0XHRpZiAoRVNDQVBFUy5oYXMoY2hhcmFjdGVyKSkge1xuXHRcdFx0aXNJbnNpZGVFc2NhcGUgPSB0cnVlO1xuXHRcdFx0aXNJbnNpZGVMaW5rRXNjYXBlID0gY2hhcmFjdGVycy5zbGljZShpbmRleCArIDEpLmpvaW4oJycpLnN0YXJ0c1dpdGgoQU5TSV9FU0NBUEVfTElOSyk7XG5cdFx0fVxuXG5cdFx0aWYgKGlzSW5zaWRlRXNjYXBlKSB7XG5cdFx0XHRpZiAoaXNJbnNpZGVMaW5rRXNjYXBlKSB7XG5cdFx0XHRcdGlmIChjaGFyYWN0ZXIgPT09IEFOU0lfRVNDQVBFX0JFTEwpIHtcblx0XHRcdFx0XHRpc0luc2lkZUVzY2FwZSA9IGZhbHNlO1xuXHRcdFx0XHRcdGlzSW5zaWRlTGlua0VzY2FwZSA9IGZhbHNlO1xuXHRcdFx0XHR9XG5cdFx0XHR9IGVsc2UgaWYgKGNoYXJhY3RlciA9PT0gQU5TSV9TR1JfVEVSTUlOQVRPUikge1xuXHRcdFx0XHRpc0luc2lkZUVzY2FwZSA9IGZhbHNlO1xuXHRcdFx0fVxuXG5cdFx0XHRjb250aW51ZTtcblx0XHR9XG5cblx0XHR2aXNpYmxlICs9IGNoYXJhY3Rlckxlbmd0aDtcblxuXHRcdGlmICh2aXNpYmxlID09PSBjb2x1bW5zICYmIGluZGV4IDwgY2hhcmFjdGVycy5sZW5ndGggLSAxKSB7XG5cdFx0XHRyb3dzLnB1c2goJycpO1xuXHRcdFx0dmlzaWJsZSA9IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gSXQncyBwb3NzaWJsZSB0aGF0IHRoZSBsYXN0IHJvdyB3ZSBjb3B5IG92ZXIgaXMgb25seVxuXHQvLyBhbnNpIGVzY2FwZSBjaGFyYWN0ZXJzLCBoYW5kbGUgdGhpcyBlZGdlLWNhc2Vcblx0aWYgKCF2aXNpYmxlICYmIHJvd3Nbcm93cy5sZW5ndGggLSAxXS5sZW5ndGggPiAwICYmIHJvd3MubGVuZ3RoID4gMSkge1xuXHRcdHJvd3Nbcm93cy5sZW5ndGggLSAyXSArPSByb3dzLnBvcCgpO1xuXHR9XG59O1xuXG4vLyBUcmltcyBzcGFjZXMgZnJvbSBhIHN0cmluZyBpZ25vcmluZyBpbnZpc2libGUgc2VxdWVuY2VzXG5jb25zdCBzdHJpbmdWaXNpYmxlVHJpbVNwYWNlc1JpZ2h0ID0gc3RyaW5nID0+IHtcblx0Y29uc3Qgd29yZHMgPSBzdHJpbmcuc3BsaXQoJyAnKTtcblx0bGV0IGxhc3QgPSB3b3Jkcy5sZW5ndGg7XG5cblx0d2hpbGUgKGxhc3QgPiAwKSB7XG5cdFx0aWYgKHN0cmluZ1dpZHRoKHdvcmRzW2xhc3QgLSAxXSkgPiAwKSB7XG5cdFx0XHRicmVhaztcblx0XHR9XG5cblx0XHRsYXN0LS07XG5cdH1cblxuXHRpZiAobGFzdCA9PT0gd29yZHMubGVuZ3RoKSB7XG5cdFx0cmV0dXJuIHN0cmluZztcblx0fVxuXG5cdHJldHVybiB3b3Jkcy5zbGljZSgwLCBsYXN0KS5qb2luKCcgJykgKyB3b3Jkcy5zbGljZShsYXN0KS5qb2luKCcnKTtcbn07XG5cbi8vIFRoZSB3cmFwLWFuc2kgbW9kdWxlIGNhbiBiZSBpbnZva2VkIGluIGVpdGhlciAnaGFyZCcgb3IgJ3NvZnQnIHdyYXAgbW9kZVxuLy9cbi8vICdoYXJkJyB3aWxsIG5ldmVyIGFsbG93IGEgc3RyaW5nIHRvIHRha2UgdXAgbW9yZSB0aGFuIGNvbHVtbnMgY2hhcmFjdGVyc1xuLy9cbi8vICdzb2Z0JyBhbGxvd3MgbG9uZyB3b3JkcyB0byBleHBhbmQgcGFzdCB0aGUgY29sdW1uIGxlbmd0aFxuY29uc3QgZXhlYyA9IChzdHJpbmcsIGNvbHVtbnMsIG9wdGlvbnMgPSB7fSkgPT4ge1xuXHRpZiAob3B0aW9ucy50cmltICE9PSBmYWxzZSAmJiBzdHJpbmcudHJpbSgpID09PSAnJykge1xuXHRcdHJldHVybiAnJztcblx0fVxuXG5cdGxldCByZXR1cm5WYWx1ZSA9ICcnO1xuXHRsZXQgZXNjYXBlQ29kZTtcblx0bGV0IGVzY2FwZVVybDtcblxuXHRjb25zdCBsZW5ndGhzID0gd29yZExlbmd0aHMoc3RyaW5nKTtcblx0bGV0IHJvd3MgPSBbJyddO1xuXG5cdGZvciAoY29uc3QgW2luZGV4LCB3b3JkXSBvZiBzdHJpbmcuc3BsaXQoJyAnKS5lbnRyaWVzKCkpIHtcblx0XHRpZiAob3B0aW9ucy50cmltICE9PSBmYWxzZSkge1xuXHRcdFx0cm93c1tyb3dzLmxlbmd0aCAtIDFdID0gcm93c1tyb3dzLmxlbmd0aCAtIDFdLnRyaW1TdGFydCgpO1xuXHRcdH1cblxuXHRcdGxldCByb3dMZW5ndGggPSBzdHJpbmdXaWR0aChyb3dzW3Jvd3MubGVuZ3RoIC0gMV0pO1xuXG5cdFx0aWYgKGluZGV4ICE9PSAwKSB7XG5cdFx0XHRpZiAocm93TGVuZ3RoID49IGNvbHVtbnMgJiYgKG9wdGlvbnMud29yZFdyYXAgPT09IGZhbHNlIHx8IG9wdGlvbnMudHJpbSA9PT0gZmFsc2UpKSB7XG5cdFx0XHRcdC8vIElmIHdlIHN0YXJ0IHdpdGggYSBuZXcgd29yZCBidXQgdGhlIGN1cnJlbnQgcm93IGxlbmd0aCBlcXVhbHMgdGhlIGxlbmd0aCBvZiB0aGUgY29sdW1ucywgYWRkIGEgbmV3IHJvd1xuXHRcdFx0XHRyb3dzLnB1c2goJycpO1xuXHRcdFx0XHRyb3dMZW5ndGggPSAwO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAocm93TGVuZ3RoID4gMCB8fCBvcHRpb25zLnRyaW0gPT09IGZhbHNlKSB7XG5cdFx0XHRcdHJvd3Nbcm93cy5sZW5ndGggLSAxXSArPSAnICc7XG5cdFx0XHRcdHJvd0xlbmd0aCsrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEluICdoYXJkJyB3cmFwIG1vZGUsIHRoZSBsZW5ndGggb2YgYSBsaW5lIGlzIG5ldmVyIGFsbG93ZWQgdG8gZXh0ZW5kIHBhc3QgJ2NvbHVtbnMnXG5cdFx0aWYgKG9wdGlvbnMuaGFyZCAmJiBsZW5ndGhzW2luZGV4XSA+IGNvbHVtbnMpIHtcblx0XHRcdGNvbnN0IHJlbWFpbmluZ0NvbHVtbnMgPSAoY29sdW1ucyAtIHJvd0xlbmd0aCk7XG5cdFx0XHRjb25zdCBicmVha3NTdGFydGluZ1RoaXNMaW5lID0gMSArIE1hdGguZmxvb3IoKGxlbmd0aHNbaW5kZXhdIC0gcmVtYWluaW5nQ29sdW1ucyAtIDEpIC8gY29sdW1ucyk7XG5cdFx0XHRjb25zdCBicmVha3NTdGFydGluZ05leHRMaW5lID0gTWF0aC5mbG9vcigobGVuZ3Roc1tpbmRleF0gLSAxKSAvIGNvbHVtbnMpO1xuXHRcdFx0aWYgKGJyZWFrc1N0YXJ0aW5nTmV4dExpbmUgPCBicmVha3NTdGFydGluZ1RoaXNMaW5lKSB7XG5cdFx0XHRcdHJvd3MucHVzaCgnJyk7XG5cdFx0XHR9XG5cblx0XHRcdHdyYXBXb3JkKHJvd3MsIHdvcmQsIGNvbHVtbnMpO1xuXHRcdFx0Y29udGludWU7XG5cdFx0fVxuXG5cdFx0aWYgKHJvd0xlbmd0aCArIGxlbmd0aHNbaW5kZXhdID4gY29sdW1ucyAmJiByb3dMZW5ndGggPiAwICYmIGxlbmd0aHNbaW5kZXhdID4gMCkge1xuXHRcdFx0aWYgKG9wdGlvbnMud29yZFdyYXAgPT09IGZhbHNlICYmIHJvd0xlbmd0aCA8IGNvbHVtbnMpIHtcblx0XHRcdFx0d3JhcFdvcmQocm93cywgd29yZCwgY29sdW1ucyk7XG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXG5cdFx0XHRyb3dzLnB1c2goJycpO1xuXHRcdH1cblxuXHRcdGlmIChyb3dMZW5ndGggKyBsZW5ndGhzW2luZGV4XSA+IGNvbHVtbnMgJiYgb3B0aW9ucy53b3JkV3JhcCA9PT0gZmFsc2UpIHtcblx0XHRcdHdyYXBXb3JkKHJvd3MsIHdvcmQsIGNvbHVtbnMpO1xuXHRcdFx0Y29udGludWU7XG5cdFx0fVxuXG5cdFx0cm93c1tyb3dzLmxlbmd0aCAtIDFdICs9IHdvcmQ7XG5cdH1cblxuXHRpZiAob3B0aW9ucy50cmltICE9PSBmYWxzZSkge1xuXHRcdHJvd3MgPSByb3dzLm1hcChzdHJpbmdWaXNpYmxlVHJpbVNwYWNlc1JpZ2h0KTtcblx0fVxuXG5cdGNvbnN0IHByZSA9IFsuLi5yb3dzLmpvaW4oJ1xcbicpXTtcblxuXHRmb3IgKGNvbnN0IFtpbmRleCwgY2hhcmFjdGVyXSBvZiBwcmUuZW50cmllcygpKSB7XG5cdFx0cmV0dXJuVmFsdWUgKz0gY2hhcmFjdGVyO1xuXG5cdFx0aWYgKEVTQ0FQRVMuaGFzKGNoYXJhY3RlcikpIHtcblx0XHRcdGNvbnN0IHtncm91cHN9ID0gbmV3IFJlZ0V4cChgKD86XFxcXCR7QU5TSV9DU0l9KD88Y29kZT5cXFxcZCspbXxcXFxcJHtBTlNJX0VTQ0FQRV9MSU5LfSg/PHVyaT4uKikke0FOU0lfRVNDQVBFX0JFTEx9KWApLmV4ZWMocHJlLnNsaWNlKGluZGV4KS5qb2luKCcnKSkgfHwge2dyb3Vwczoge319O1xuXHRcdFx0aWYgKGdyb3Vwcy5jb2RlICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0Y29uc3QgY29kZSA9IE51bWJlci5wYXJzZUZsb2F0KGdyb3Vwcy5jb2RlKTtcblx0XHRcdFx0ZXNjYXBlQ29kZSA9IGNvZGUgPT09IEVORF9DT0RFID8gdW5kZWZpbmVkIDogY29kZTtcblx0XHRcdH0gZWxzZSBpZiAoZ3JvdXBzLnVyaSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdGVzY2FwZVVybCA9IGdyb3Vwcy51cmkubGVuZ3RoID09PSAwID8gdW5kZWZpbmVkIDogZ3JvdXBzLnVyaTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRjb25zdCBjb2RlID0gYW5zaVN0eWxlcy5jb2Rlcy5nZXQoTnVtYmVyKGVzY2FwZUNvZGUpKTtcblxuXHRcdGlmIChwcmVbaW5kZXggKyAxXSA9PT0gJ1xcbicpIHtcblx0XHRcdGlmIChlc2NhcGVVcmwpIHtcblx0XHRcdFx0cmV0dXJuVmFsdWUgKz0gd3JhcEFuc2lIeXBlcmxpbmsoJycpO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAoZXNjYXBlQ29kZSAmJiBjb2RlKSB7XG5cdFx0XHRcdHJldHVyblZhbHVlICs9IHdyYXBBbnNpKGNvZGUpO1xuXHRcdFx0fVxuXHRcdH0gZWxzZSBpZiAoY2hhcmFjdGVyID09PSAnXFxuJykge1xuXHRcdFx0aWYgKGVzY2FwZUNvZGUgJiYgY29kZSkge1xuXHRcdFx0XHRyZXR1cm5WYWx1ZSArPSB3cmFwQW5zaShlc2NhcGVDb2RlKTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKGVzY2FwZVVybCkge1xuXHRcdFx0XHRyZXR1cm5WYWx1ZSArPSB3cmFwQW5zaUh5cGVybGluayhlc2NhcGVVcmwpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHJldHVybiByZXR1cm5WYWx1ZTtcbn07XG5cbi8vIEZvciBlYWNoIG5ld2xpbmUsIGludm9rZSB0aGUgbWV0aG9kIHNlcGFyYXRlbHlcbm1vZHVsZS5leHBvcnRzID0gKHN0cmluZywgY29sdW1ucywgb3B0aW9ucykgPT4ge1xuXHRyZXR1cm4gU3RyaW5nKHN0cmluZylcblx0XHQubm9ybWFsaXplKClcblx0XHQucmVwbGFjZSgvXFxyXFxuL2csICdcXG4nKVxuXHRcdC5zcGxpdCgnXFxuJylcblx0XHQubWFwKGxpbmUgPT4gZXhlYyhsaW5lLCBjb2x1bW5zLCBvcHRpb25zKSlcblx0XHQuam9pbignXFxuJyk7XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgYWxpZ24gPSB7XG4gICAgcmlnaHQ6IGFsaWduUmlnaHQsXG4gICAgY2VudGVyOiBhbGlnbkNlbnRlclxufTtcbmNvbnN0IHRvcCA9IDA7XG5jb25zdCByaWdodCA9IDE7XG5jb25zdCBib3R0b20gPSAyO1xuY29uc3QgbGVmdCA9IDM7XG5jbGFzcyBVSSB7XG4gICAgY29uc3RydWN0b3Iob3B0cykge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHRoaXMud2lkdGggPSBvcHRzLndpZHRoO1xuICAgICAgICB0aGlzLndyYXAgPSAoX2EgPSBvcHRzLndyYXApICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRydWU7XG4gICAgICAgIHRoaXMucm93cyA9IFtdO1xuICAgIH1cbiAgICBzcGFuKC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgY29scyA9IHRoaXMuZGl2KC4uLmFyZ3MpO1xuICAgICAgICBjb2xzLnNwYW4gPSB0cnVlO1xuICAgIH1cbiAgICByZXNldE91dHB1dCgpIHtcbiAgICAgICAgdGhpcy5yb3dzID0gW107XG4gICAgfVxuICAgIGRpdiguLi5hcmdzKSB7XG4gICAgICAgIGlmIChhcmdzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5kaXYoJycpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLndyYXAgJiYgdGhpcy5zaG91bGRBcHBseUxheW91dERTTCguLi5hcmdzKSAmJiB0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFwcGx5TGF5b3V0RFNMKGFyZ3NbMF0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNvbHMgPSBhcmdzLm1hcChhcmcgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBhcmcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29sRnJvbVN0cmluZyhhcmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGFyZztcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucm93cy5wdXNoKGNvbHMpO1xuICAgICAgICByZXR1cm4gY29scztcbiAgICB9XG4gICAgc2hvdWxkQXBwbHlMYXlvdXREU0woLi4uYXJncykge1xuICAgICAgICByZXR1cm4gYXJncy5sZW5ndGggPT09IDEgJiYgdHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAvW1xcdFxcbl0vLnRlc3QoYXJnc1swXSk7XG4gICAgfVxuICAgIGFwcGx5TGF5b3V0RFNMKHN0cikge1xuICAgICAgICBjb25zdCByb3dzID0gc3RyLnNwbGl0KCdcXG4nKS5tYXAocm93ID0+IHJvdy5zcGxpdCgnXFx0JykpO1xuICAgICAgICBsZXQgbGVmdENvbHVtbldpZHRoID0gMDtcbiAgICAgICAgLy8gc2ltcGxlIGhldXJpc3RpYyBmb3IgbGF5b3V0LCBtYWtlIHN1cmUgdGhlXG4gICAgICAgIC8vIHNlY29uZCBjb2x1bW4gbGluZXMgdXAgYWxvbmcgdGhlIGxlZnQtaGFuZC5cbiAgICAgICAgLy8gZG9uJ3QgYWxsb3cgdGhlIGZpcnN0IGNvbHVtbiB0byB0YWtlIHVwIG1vcmVcbiAgICAgICAgLy8gdGhhbiA1MCUgb2YgdGhlIHNjcmVlbi5cbiAgICAgICAgcm93cy5mb3JFYWNoKGNvbHVtbnMgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbHVtbnMubGVuZ3RoID4gMSAmJiBtaXhpbi5zdHJpbmdXaWR0aChjb2x1bW5zWzBdKSA+IGxlZnRDb2x1bW5XaWR0aCkge1xuICAgICAgICAgICAgICAgIGxlZnRDb2x1bW5XaWR0aCA9IE1hdGgubWluKE1hdGguZmxvb3IodGhpcy53aWR0aCAqIDAuNSksIG1peGluLnN0cmluZ1dpZHRoKGNvbHVtbnNbMF0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIC8vIGdlbmVyYXRlIGEgdGFibGU6XG4gICAgICAgIC8vICByZXBsYWNpbmcgJyAnIHdpdGggcGFkZGluZyBjYWxjdWxhdGlvbnMuXG4gICAgICAgIC8vICB1c2luZyB0aGUgYWxnb3JpdGhtaWNhbGx5IGdlbmVyYXRlZCB3aWR0aC5cbiAgICAgICAgcm93cy5mb3JFYWNoKGNvbHVtbnMgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXYoLi4uY29sdW1ucy5tYXAoKHIsIGkpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiByLnRyaW0oKSxcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdGhpcy5tZWFzdXJlUGFkZGluZyhyKSxcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IChpID09PSAwICYmIGNvbHVtbnMubGVuZ3RoID4gMSkgPyBsZWZ0Q29sdW1uV2lkdGggOiB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMucm93c1t0aGlzLnJvd3MubGVuZ3RoIC0gMV07XG4gICAgfVxuICAgIGNvbEZyb21TdHJpbmcodGV4dCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdGV4dCxcbiAgICAgICAgICAgIHBhZGRpbmc6IHRoaXMubWVhc3VyZVBhZGRpbmcodGV4dClcbiAgICAgICAgfTtcbiAgICB9XG4gICAgbWVhc3VyZVBhZGRpbmcoc3RyKSB7XG4gICAgICAgIC8vIG1lYXN1cmUgcGFkZGluZyB3aXRob3V0IGFuc2kgZXNjYXBlIGNvZGVzXG4gICAgICAgIGNvbnN0IG5vQW5zaSA9IG1peGluLnN0cmlwQW5zaShzdHIpO1xuICAgICAgICByZXR1cm4gWzAsIG5vQW5zaS5tYXRjaCgvXFxzKiQvKVswXS5sZW5ndGgsIDAsIG5vQW5zaS5tYXRjaCgvXlxccyovKVswXS5sZW5ndGhdO1xuICAgIH1cbiAgICB0b1N0cmluZygpIHtcbiAgICAgICAgY29uc3QgbGluZXMgPSBbXTtcbiAgICAgICAgdGhpcy5yb3dzLmZvckVhY2gocm93ID0+IHtcbiAgICAgICAgICAgIHRoaXMucm93VG9TdHJpbmcocm93LCBsaW5lcyk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBkb24ndCBkaXNwbGF5IGFueSBsaW5lcyB3aXRoIHRoZVxuICAgICAgICAvLyBoaWRkZW4gZmxhZyBzZXQuXG4gICAgICAgIHJldHVybiBsaW5lc1xuICAgICAgICAgICAgLmZpbHRlcihsaW5lID0+ICFsaW5lLmhpZGRlbilcbiAgICAgICAgICAgIC5tYXAobGluZSA9PiBsaW5lLnRleHQpXG4gICAgICAgICAgICAuam9pbignXFxuJyk7XG4gICAgfVxuICAgIHJvd1RvU3RyaW5nKHJvdywgbGluZXMpIHtcbiAgICAgICAgdGhpcy5yYXN0ZXJpemUocm93KS5mb3JFYWNoKChycm93LCByKSA9PiB7XG4gICAgICAgICAgICBsZXQgc3RyID0gJyc7XG4gICAgICAgICAgICBycm93LmZvckVhY2goKGNvbCwgYykgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgd2lkdGggfSA9IHJvd1tjXTsgLy8gdGhlIHdpZHRoIHdpdGggcGFkZGluZy5cbiAgICAgICAgICAgICAgICBjb25zdCB3cmFwV2lkdGggPSB0aGlzLm5lZ2F0ZVBhZGRpbmcocm93W2NdKTsgLy8gdGhlIHdpZHRoIHdpdGhvdXQgcGFkZGluZy5cbiAgICAgICAgICAgICAgICBsZXQgdHMgPSBjb2w7IC8vIHRlbXBvcmFyeSBzdHJpbmcgdXNlZCBkdXJpbmcgYWxpZ25tZW50L3BhZGRpbmcuXG4gICAgICAgICAgICAgICAgaWYgKHdyYXBXaWR0aCA+IG1peGluLnN0cmluZ1dpZHRoKGNvbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdHMgKz0gJyAnLnJlcGVhdCh3cmFwV2lkdGggLSBtaXhpbi5zdHJpbmdXaWR0aChjb2wpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gYWxpZ24gdGhlIHN0cmluZyB3aXRoaW4gaXRzIGNvbHVtbi5cbiAgICAgICAgICAgICAgICBpZiAocm93W2NdLmFsaWduICYmIHJvd1tjXS5hbGlnbiAhPT0gJ2xlZnQnICYmIHRoaXMud3JhcCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmbiA9IGFsaWduW3Jvd1tjXS5hbGlnbl07XG4gICAgICAgICAgICAgICAgICAgIHRzID0gZm4odHMsIHdyYXBXaWR0aCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChtaXhpbi5zdHJpbmdXaWR0aCh0cykgPCB3cmFwV2lkdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRzICs9ICcgJy5yZXBlYXQoKHdpZHRoIHx8IDApIC0gbWl4aW4uc3RyaW5nV2lkdGgodHMpIC0gMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gYXBwbHkgYm9yZGVyIGFuZCBwYWRkaW5nIHRvIHN0cmluZy5cbiAgICAgICAgICAgICAgICBjb25zdCBwYWRkaW5nID0gcm93W2NdLnBhZGRpbmcgfHwgWzAsIDAsIDAsIDBdO1xuICAgICAgICAgICAgICAgIGlmIChwYWRkaW5nW2xlZnRdKSB7XG4gICAgICAgICAgICAgICAgICAgIHN0ciArPSAnICcucmVwZWF0KHBhZGRpbmdbbGVmdF0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzdHIgKz0gYWRkQm9yZGVyKHJvd1tjXSwgdHMsICd8ICcpO1xuICAgICAgICAgICAgICAgIHN0ciArPSB0cztcbiAgICAgICAgICAgICAgICBzdHIgKz0gYWRkQm9yZGVyKHJvd1tjXSwgdHMsICcgfCcpO1xuICAgICAgICAgICAgICAgIGlmIChwYWRkaW5nW3JpZ2h0XSkge1xuICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJyAnLnJlcGVhdChwYWRkaW5nW3JpZ2h0XSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGlmIHByaW9yIHJvdyBpcyBzcGFuLCB0cnkgdG8gcmVuZGVyIHRoZVxuICAgICAgICAgICAgICAgIC8vIGN1cnJlbnQgcm93IG9uIHRoZSBwcmlvciBsaW5lLlxuICAgICAgICAgICAgICAgIGlmIChyID09PSAwICYmIGxpbmVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgc3RyID0gdGhpcy5yZW5kZXJJbmxpbmUoc3RyLCBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyByZW1vdmUgdHJhaWxpbmcgd2hpdGVzcGFjZS5cbiAgICAgICAgICAgIGxpbmVzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRleHQ6IHN0ci5yZXBsYWNlKC8gKyQvLCAnJyksXG4gICAgICAgICAgICAgICAgc3Bhbjogcm93LnNwYW5cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGxpbmVzO1xuICAgIH1cbiAgICAvLyBpZiB0aGUgZnVsbCAnc291cmNlJyBjYW4gcmVuZGVyIGluXG4gICAgLy8gdGhlIHRhcmdldCBsaW5lLCBkbyBzby5cbiAgICByZW5kZXJJbmxpbmUoc291cmNlLCBwcmV2aW91c0xpbmUpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBzb3VyY2UubWF0Y2goL14gKi8pO1xuICAgICAgICBjb25zdCBsZWFkaW5nV2hpdGVzcGFjZSA9IG1hdGNoID8gbWF0Y2hbMF0ubGVuZ3RoIDogMDtcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gcHJldmlvdXNMaW5lLnRleHQ7XG4gICAgICAgIGNvbnN0IHRhcmdldFRleHRXaWR0aCA9IG1peGluLnN0cmluZ1dpZHRoKHRhcmdldC50cmltUmlnaHQoKSk7XG4gICAgICAgIGlmICghcHJldmlvdXNMaW5lLnNwYW4pIHtcbiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7XG4gICAgICAgIH1cbiAgICAgICAgLy8gaWYgd2UncmUgbm90IGFwcGx5aW5nIHdyYXBwaW5nIGxvZ2ljLFxuICAgICAgICAvLyBqdXN0IGFsd2F5cyBhcHBlbmQgdG8gdGhlIHNwYW4uXG4gICAgICAgIGlmICghdGhpcy53cmFwKSB7XG4gICAgICAgICAgICBwcmV2aW91c0xpbmUuaGlkZGVuID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXQgKyBzb3VyY2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxlYWRpbmdXaGl0ZXNwYWNlIDwgdGFyZ2V0VGV4dFdpZHRoKSB7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlO1xuICAgICAgICB9XG4gICAgICAgIHByZXZpb3VzTGluZS5oaWRkZW4gPSB0cnVlO1xuICAgICAgICByZXR1cm4gdGFyZ2V0LnRyaW1SaWdodCgpICsgJyAnLnJlcGVhdChsZWFkaW5nV2hpdGVzcGFjZSAtIHRhcmdldFRleHRXaWR0aCkgKyBzb3VyY2UudHJpbUxlZnQoKTtcbiAgICB9XG4gICAgcmFzdGVyaXplKHJvdykge1xuICAgICAgICBjb25zdCBycm93cyA9IFtdO1xuICAgICAgICBjb25zdCB3aWR0aHMgPSB0aGlzLmNvbHVtbldpZHRocyhyb3cpO1xuICAgICAgICBsZXQgd3JhcHBlZDtcbiAgICAgICAgLy8gd29yZCB3cmFwIGFsbCBjb2x1bW5zLCBhbmQgY3JlYXRlXG4gICAgICAgIC8vIGEgZGF0YS1zdHJ1Y3R1cmUgdGhhdCBpcyBlYXN5IHRvIHJhc3Rlcml6ZS5cbiAgICAgICAgcm93LmZvckVhY2goKGNvbCwgYykgPT4ge1xuICAgICAgICAgICAgLy8gbGVhdmUgcm9vbSBmb3IgbGVmdCBhbmQgcmlnaHQgcGFkZGluZy5cbiAgICAgICAgICAgIGNvbC53aWR0aCA9IHdpZHRoc1tjXTtcbiAgICAgICAgICAgIGlmICh0aGlzLndyYXApIHtcbiAgICAgICAgICAgICAgICB3cmFwcGVkID0gbWl4aW4ud3JhcChjb2wudGV4dCwgdGhpcy5uZWdhdGVQYWRkaW5nKGNvbCksIHsgaGFyZDogdHJ1ZSB9KS5zcGxpdCgnXFxuJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB3cmFwcGVkID0gY29sLnRleHQuc3BsaXQoJ1xcbicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNvbC5ib3JkZXIpIHtcbiAgICAgICAgICAgICAgICB3cmFwcGVkLnVuc2hpZnQoJy4nICsgJy0nLnJlcGVhdCh0aGlzLm5lZ2F0ZVBhZGRpbmcoY29sKSArIDIpICsgJy4nKTtcbiAgICAgICAgICAgICAgICB3cmFwcGVkLnB1c2goXCInXCIgKyAnLScucmVwZWF0KHRoaXMubmVnYXRlUGFkZGluZyhjb2wpICsgMikgKyBcIidcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBhZGQgdG9wIGFuZCBib3R0b20gcGFkZGluZy5cbiAgICAgICAgICAgIGlmIChjb2wucGFkZGluZykge1xuICAgICAgICAgICAgICAgIHdyYXBwZWQudW5zaGlmdCguLi5uZXcgQXJyYXkoY29sLnBhZGRpbmdbdG9wXSB8fCAwKS5maWxsKCcnKSk7XG4gICAgICAgICAgICAgICAgd3JhcHBlZC5wdXNoKC4uLm5ldyBBcnJheShjb2wucGFkZGluZ1tib3R0b21dIHx8IDApLmZpbGwoJycpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHdyYXBwZWQuZm9yRWFjaCgoc3RyLCByKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFycm93c1tyXSkge1xuICAgICAgICAgICAgICAgICAgICBycm93cy5wdXNoKFtdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgcnJvdyA9IHJyb3dzW3JdO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYzsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChycm93W2ldID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJyb3cucHVzaCgnJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcnJvdy5wdXNoKHN0cik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBycm93cztcbiAgICB9XG4gICAgbmVnYXRlUGFkZGluZyhjb2wpIHtcbiAgICAgICAgbGV0IHdyYXBXaWR0aCA9IGNvbC53aWR0aCB8fCAwO1xuICAgICAgICBpZiAoY29sLnBhZGRpbmcpIHtcbiAgICAgICAgICAgIHdyYXBXaWR0aCAtPSAoY29sLnBhZGRpbmdbbGVmdF0gfHwgMCkgKyAoY29sLnBhZGRpbmdbcmlnaHRdIHx8IDApO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb2wuYm9yZGVyKSB7XG4gICAgICAgICAgICB3cmFwV2lkdGggLT0gNDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gd3JhcFdpZHRoO1xuICAgIH1cbiAgICBjb2x1bW5XaWR0aHMocm93KSB7XG4gICAgICAgIGlmICghdGhpcy53cmFwKSB7XG4gICAgICAgICAgICByZXR1cm4gcm93Lm1hcChjb2wgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBjb2wud2lkdGggfHwgbWl4aW4uc3RyaW5nV2lkdGgoY29sLnRleHQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IHVuc2V0ID0gcm93Lmxlbmd0aDtcbiAgICAgICAgbGV0IHJlbWFpbmluZ1dpZHRoID0gdGhpcy53aWR0aDtcbiAgICAgICAgLy8gY29sdW1uIHdpZHRocyBjYW4gYmUgc2V0IGluIGNvbmZpZy5cbiAgICAgICAgY29uc3Qgd2lkdGhzID0gcm93Lm1hcChjb2wgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbC53aWR0aCkge1xuICAgICAgICAgICAgICAgIHVuc2V0LS07XG4gICAgICAgICAgICAgICAgcmVtYWluaW5nV2lkdGggLT0gY29sLndpZHRoO1xuICAgICAgICAgICAgICAgIHJldHVybiBjb2wud2lkdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gYW55IHVuc2V0IHdpZHRocyBzaG91bGQgYmUgY2FsY3VsYXRlZC5cbiAgICAgICAgY29uc3QgdW5zZXRXaWR0aCA9IHVuc2V0ID8gTWF0aC5mbG9vcihyZW1haW5pbmdXaWR0aCAvIHVuc2V0KSA6IDA7XG4gICAgICAgIHJldHVybiB3aWR0aHMubWFwKCh3LCBpKSA9PiB7XG4gICAgICAgICAgICBpZiAodyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIE1hdGgubWF4KHVuc2V0V2lkdGgsIF9taW5XaWR0aChyb3dbaV0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB3O1xuICAgICAgICB9KTtcbiAgICB9XG59XG5mdW5jdGlvbiBhZGRCb3JkZXIoY29sLCB0cywgc3R5bGUpIHtcbiAgICBpZiAoY29sLmJvcmRlcikge1xuICAgICAgICBpZiAoL1suJ10tK1suJ10vLnRlc3QodHMpKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRzLnRyaW0oKS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyAgJztcbiAgICB9XG4gICAgcmV0dXJuICcnO1xufVxuLy8gY2FsY3VsYXRlcyB0aGUgbWluaW11bSB3aWR0aCBvZlxuLy8gYSBjb2x1bW4sIGJhc2VkIG9uIHBhZGRpbmcgcHJlZmVyZW5jZXMuXG5mdW5jdGlvbiBfbWluV2lkdGgoY29sKSB7XG4gICAgY29uc3QgcGFkZGluZyA9IGNvbC5wYWRkaW5nIHx8IFtdO1xuICAgIGNvbnN0IG1pbldpZHRoID0gMSArIChwYWRkaW5nW2xlZnRdIHx8IDApICsgKHBhZGRpbmdbcmlnaHRdIHx8IDApO1xuICAgIGlmIChjb2wuYm9yZGVyKSB7XG4gICAgICAgIHJldHVybiBtaW5XaWR0aCArIDQ7XG4gICAgfVxuICAgIHJldHVybiBtaW5XaWR0aDtcbn1cbmZ1bmN0aW9uIGdldFdpbmRvd1dpZHRoKCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBkZXBlbmRzIG9uIHRlcm1pbmFsICovXG4gICAgaWYgKHR5cGVvZiBwcm9jZXNzID09PSAnb2JqZWN0JyAmJiBwcm9jZXNzLnN0ZG91dCAmJiBwcm9jZXNzLnN0ZG91dC5jb2x1bW5zKSB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzLnN0ZG91dC5jb2x1bW5zO1xuICAgIH1cbiAgICByZXR1cm4gODA7XG59XG5mdW5jdGlvbiBhbGlnblJpZ2h0KHN0ciwgd2lkdGgpIHtcbiAgICBzdHIgPSBzdHIudHJpbSgpO1xuICAgIGNvbnN0IHN0cldpZHRoID0gbWl4aW4uc3RyaW5nV2lkdGgoc3RyKTtcbiAgICBpZiAoc3RyV2lkdGggPCB3aWR0aCkge1xuICAgICAgICByZXR1cm4gJyAnLnJlcGVhdCh3aWR0aCAtIHN0cldpZHRoKSArIHN0cjtcbiAgICB9XG4gICAgcmV0dXJuIHN0cjtcbn1cbmZ1bmN0aW9uIGFsaWduQ2VudGVyKHN0ciwgd2lkdGgpIHtcbiAgICBzdHIgPSBzdHIudHJpbSgpO1xuICAgIGNvbnN0IHN0cldpZHRoID0gbWl4aW4uc3RyaW5nV2lkdGgoc3RyKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmIChzdHJXaWR0aCA+PSB3aWR0aCkge1xuICAgICAgICByZXR1cm4gc3RyO1xuICAgIH1cbiAgICByZXR1cm4gJyAnLnJlcGVhdCgod2lkdGggLSBzdHJXaWR0aCkgPj4gMSkgKyBzdHI7XG59XG5sZXQgbWl4aW47XG5mdW5jdGlvbiBjbGl1aShvcHRzLCBfbWl4aW4pIHtcbiAgICBtaXhpbiA9IF9taXhpbjtcbiAgICByZXR1cm4gbmV3IFVJKHtcbiAgICAgICAgd2lkdGg6IChvcHRzID09PSBudWxsIHx8IG9wdHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9wdHMud2lkdGgpIHx8IGdldFdpbmRvd1dpZHRoKCksXG4gICAgICAgIHdyYXA6IG9wdHMgPT09IG51bGwgfHwgb3B0cyA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3B0cy53cmFwXG4gICAgfSk7XG59XG5cbi8vIEJvb3RzdHJhcCBjbGl1aSB3aXRoIENvbW1vbkpTIGRlcGVuZGVuY2llczpcbmNvbnN0IHN0cmluZ1dpZHRoID0gcmVxdWlyZSgnc3RyaW5nLXdpZHRoJyk7XG5jb25zdCBzdHJpcEFuc2kgPSByZXF1aXJlKCdzdHJpcC1hbnNpJyk7XG5jb25zdCB3cmFwID0gcmVxdWlyZSgnd3JhcC1hbnNpJyk7XG5mdW5jdGlvbiB1aShvcHRzKSB7XG4gICAgcmV0dXJuIGNsaXVpKG9wdHMsIHtcbiAgICAgICAgc3RyaW5nV2lkdGgsXG4gICAgICAgIHN0cmlwQW5zaSxcbiAgICAgICAgd3JhcFxuICAgIH0pO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHVpO1xuIiwgImNvbnN0IHsgZGlybmFtZSwgcmVzb2x2ZSB9ID0gcmVxdWlyZSgncGF0aCcpO1xuY29uc3QgeyByZWFkZGlyU3luYywgc3RhdFN5bmMgfSA9IHJlcXVpcmUoJ2ZzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHN0YXJ0LCBjYWxsYmFjaykge1xuXHRsZXQgZGlyID0gcmVzb2x2ZSgnLicsIHN0YXJ0KTtcblx0bGV0IHRtcCwgc3RhdHMgPSBzdGF0U3luYyhkaXIpO1xuXG5cdGlmICghc3RhdHMuaXNEaXJlY3RvcnkoKSkge1xuXHRcdGRpciA9IGRpcm5hbWUoZGlyKTtcblx0fVxuXG5cdHdoaWxlICh0cnVlKSB7XG5cdFx0dG1wID0gY2FsbGJhY2soZGlyLCByZWFkZGlyU3luYyhkaXIpKTtcblx0XHRpZiAodG1wKSByZXR1cm4gcmVzb2x2ZShkaXIsIHRtcCk7XG5cdFx0ZGlyID0gZGlybmFtZSh0bXAgPSBkaXIpO1xuXHRcdGlmICh0bXAgPT09IGRpcikgYnJlYWs7XG5cdH1cbn1cbiIsIG51bGwsICIndXNlIHN0cmljdCc7XG5cbnZhciBmcyA9IHJlcXVpcmUoJ2ZzJyksXG4gIGpvaW4gPSByZXF1aXJlKCdwYXRoJykuam9pbixcbiAgcmVzb2x2ZSA9IHJlcXVpcmUoJ3BhdGgnKS5yZXNvbHZlLFxuICBkaXJuYW1lID0gcmVxdWlyZSgncGF0aCcpLmRpcm5hbWUsXG4gIGRlZmF1bHRPcHRpb25zID0ge1xuICAgIGV4dGVuc2lvbnM6IFsnanMnLCAnanNvbicsICdjb2ZmZWUnXSxcbiAgICByZWN1cnNlOiB0cnVlLFxuICAgIHJlbmFtZTogZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHJldHVybiBuYW1lO1xuICAgIH0sXG4gICAgdmlzaXQ6IGZ1bmN0aW9uIChvYmopIHtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfVxuICB9O1xuXG5mdW5jdGlvbiBjaGVja0ZpbGVJbmNsdXNpb24ocGF0aCwgZmlsZW5hbWUsIG9wdGlvbnMpIHtcbiAgcmV0dXJuIChcbiAgICAvLyB2ZXJpZnkgZmlsZSBoYXMgdmFsaWQgZXh0ZW5zaW9uXG4gICAgKG5ldyBSZWdFeHAoJ1xcXFwuKCcgKyBvcHRpb25zLmV4dGVuc2lvbnMuam9pbignfCcpICsgJykkJywgJ2knKS50ZXN0KGZpbGVuYW1lKSkgJiZcblxuICAgIC8vIGlmIG9wdGlvbnMuaW5jbHVkZSBpcyBhIFJlZ0V4cCwgZXZhbHVhdGUgaXQgYW5kIG1ha2Ugc3VyZSB0aGUgcGF0aCBwYXNzZXNcbiAgICAhKG9wdGlvbnMuaW5jbHVkZSAmJiBvcHRpb25zLmluY2x1ZGUgaW5zdGFuY2VvZiBSZWdFeHAgJiYgIW9wdGlvbnMuaW5jbHVkZS50ZXN0KHBhdGgpKSAmJlxuXG4gICAgLy8gaWYgb3B0aW9ucy5pbmNsdWRlIGlzIGEgZnVuY3Rpb24sIGV2YWx1YXRlIGl0IGFuZCBtYWtlIHN1cmUgdGhlIHBhdGggcGFzc2VzXG4gICAgIShvcHRpb25zLmluY2x1ZGUgJiYgdHlwZW9mIG9wdGlvbnMuaW5jbHVkZSA9PT0gJ2Z1bmN0aW9uJyAmJiAhb3B0aW9ucy5pbmNsdWRlKHBhdGgsIGZpbGVuYW1lKSkgJiZcblxuICAgIC8vIGlmIG9wdGlvbnMuZXhjbHVkZSBpcyBhIFJlZ0V4cCwgZXZhbHVhdGUgaXQgYW5kIG1ha2Ugc3VyZSB0aGUgcGF0aCBkb2Vzbid0IHBhc3NcbiAgICAhKG9wdGlvbnMuZXhjbHVkZSAmJiBvcHRpb25zLmV4Y2x1ZGUgaW5zdGFuY2VvZiBSZWdFeHAgJiYgb3B0aW9ucy5leGNsdWRlLnRlc3QocGF0aCkpICYmXG5cbiAgICAvLyBpZiBvcHRpb25zLmV4Y2x1ZGUgaXMgYSBmdW5jdGlvbiwgZXZhbHVhdGUgaXQgYW5kIG1ha2Ugc3VyZSB0aGUgcGF0aCBkb2Vzbid0IHBhc3NcbiAgICAhKG9wdGlvbnMuZXhjbHVkZSAmJiB0eXBlb2Ygb3B0aW9ucy5leGNsdWRlID09PSAnZnVuY3Rpb24nICYmIG9wdGlvbnMuZXhjbHVkZShwYXRoLCBmaWxlbmFtZSkpXG4gICk7XG59XG5cbmZ1bmN0aW9uIHJlcXVpcmVEaXJlY3RvcnkobSwgcGF0aCwgb3B0aW9ucykge1xuICB2YXIgcmV0dmFsID0ge307XG5cbiAgLy8gcGF0aCBpcyBvcHRpb25hbFxuICBpZiAocGF0aCAmJiAhb3B0aW9ucyAmJiB0eXBlb2YgcGF0aCAhPT0gJ3N0cmluZycpIHtcbiAgICBvcHRpb25zID0gcGF0aDtcbiAgICBwYXRoID0gbnVsbDtcbiAgfVxuXG4gIC8vIGRlZmF1bHQgb3B0aW9uc1xuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgZm9yICh2YXIgcHJvcCBpbiBkZWZhdWx0T3B0aW9ucykge1xuICAgIGlmICh0eXBlb2Ygb3B0aW9uc1twcm9wXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIG9wdGlvbnNbcHJvcF0gPSBkZWZhdWx0T3B0aW9uc1twcm9wXTtcbiAgICB9XG4gIH1cblxuICAvLyBpZiBubyBwYXRoIHdhcyBwYXNzZWQgaW4sIGFzc3VtZSB0aGUgZXF1aXZlbGFudCBvZiBfX2Rpcm5hbWUgZnJvbSBjYWxsZXJcbiAgLy8gb3RoZXJ3aXNlLCByZXNvbHZlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGVxdWl2YWxlbnQgb2YgX19kaXJuYW1lXG4gIHBhdGggPSAhcGF0aCA/IGRpcm5hbWUobS5maWxlbmFtZSkgOiByZXNvbHZlKGRpcm5hbWUobS5maWxlbmFtZSksIHBhdGgpO1xuXG4gIC8vIGdldCB0aGUgcGF0aCBvZiBlYWNoIGZpbGUgaW4gc3BlY2lmaWVkIGRpcmVjdG9yeSwgYXBwZW5kIHRvIGN1cnJlbnQgdHJlZSBub2RlLCByZWN1cnNlXG4gIGZzLnJlYWRkaXJTeW5jKHBhdGgpLmZvckVhY2goZnVuY3Rpb24gKGZpbGVuYW1lKSB7XG4gICAgdmFyIGpvaW5lZCA9IGpvaW4ocGF0aCwgZmlsZW5hbWUpLFxuICAgICAgZmlsZXMsXG4gICAgICBrZXksXG4gICAgICBvYmo7XG5cbiAgICBpZiAoZnMuc3RhdFN5bmMoam9pbmVkKS5pc0RpcmVjdG9yeSgpICYmIG9wdGlvbnMucmVjdXJzZSkge1xuICAgICAgLy8gdGhpcyBub2RlIGlzIGEgZGlyZWN0b3J5OyByZWN1cnNlXG4gICAgICBmaWxlcyA9IHJlcXVpcmVEaXJlY3RvcnkobSwgam9pbmVkLCBvcHRpb25zKTtcbiAgICAgIC8vIGV4Y2x1ZGUgZW1wdHkgZGlyZWN0b3JpZXNcbiAgICAgIGlmIChPYmplY3Qua2V5cyhmaWxlcykubGVuZ3RoKSB7XG4gICAgICAgIHJldHZhbFtvcHRpb25zLnJlbmFtZShmaWxlbmFtZSwgam9pbmVkLCBmaWxlbmFtZSldID0gZmlsZXM7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChqb2luZWQgIT09IG0uZmlsZW5hbWUgJiYgY2hlY2tGaWxlSW5jbHVzaW9uKGpvaW5lZCwgZmlsZW5hbWUsIG9wdGlvbnMpKSB7XG4gICAgICAgIC8vIGhhc2ggbm9kZSBrZXkgc2hvdWxkbid0IGluY2x1ZGUgZmlsZSBleHRlbnNpb25cbiAgICAgICAga2V5ID0gZmlsZW5hbWUuc3Vic3RyaW5nKDAsIGZpbGVuYW1lLmxhc3RJbmRleE9mKCcuJykpO1xuICAgICAgICBvYmogPSBtLnJlcXVpcmUoam9pbmVkKTtcbiAgICAgICAgcmV0dmFsW29wdGlvbnMucmVuYW1lKGtleSwgam9pbmVkLCBmaWxlbmFtZSldID0gb3B0aW9ucy52aXNpdChvYmosIGpvaW5lZCwgZmlsZW5hbWUpIHx8IG9iajtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiByZXR2YWw7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZURpcmVjdG9yeTtcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHRzID0gZGVmYXVsdE9wdGlvbnM7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0Jyk7XG5cbmNsYXNzIFlFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcihtc2cpIHtcbiAgICAgICAgc3VwZXIobXNnIHx8ICd5YXJncyBlcnJvcicpO1xuICAgICAgICB0aGlzLm5hbWUgPSAnWUVycm9yJztcbiAgICAgICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgWUVycm9yKTtcbiAgICB9XG59XG5cbmxldCBwcmV2aW91c2x5VmlzaXRlZENvbmZpZ3MgPSBbXTtcbmxldCBzaGltO1xuZnVuY3Rpb24gYXBwbHlFeHRlbmRzKGNvbmZpZywgY3dkLCBtZXJnZUV4dGVuZHMsIF9zaGltKSB7XG4gICAgc2hpbSA9IF9zaGltO1xuICAgIGxldCBkZWZhdWx0Q29uZmlnID0ge307XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsICdleHRlbmRzJykpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBjb25maWcuZXh0ZW5kcyAhPT0gJ3N0cmluZycpXG4gICAgICAgICAgICByZXR1cm4gZGVmYXVsdENvbmZpZztcbiAgICAgICAgY29uc3QgaXNQYXRoID0gL1xcLmpzb258XFwuLipyYyQvLnRlc3QoY29uZmlnLmV4dGVuZHMpO1xuICAgICAgICBsZXQgcGF0aFRvRGVmYXVsdCA9IG51bGw7XG4gICAgICAgIGlmICghaXNQYXRoKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHBhdGhUb0RlZmF1bHQgPSByZXF1aXJlLnJlc29sdmUoY29uZmlnLmV4dGVuZHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKF9lcnIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29uZmlnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcGF0aFRvRGVmYXVsdCA9IGdldFBhdGhUb0RlZmF1bHRDb25maWcoY3dkLCBjb25maWcuZXh0ZW5kcyk7XG4gICAgICAgIH1cbiAgICAgICAgY2hlY2tGb3JDaXJjdWxhckV4dGVuZHMocGF0aFRvRGVmYXVsdCk7XG4gICAgICAgIHByZXZpb3VzbHlWaXNpdGVkQ29uZmlncy5wdXNoKHBhdGhUb0RlZmF1bHQpO1xuICAgICAgICBkZWZhdWx0Q29uZmlnID0gaXNQYXRoXG4gICAgICAgICAgICA/IEpTT04ucGFyc2Uoc2hpbS5yZWFkRmlsZVN5bmMocGF0aFRvRGVmYXVsdCwgJ3V0ZjgnKSlcbiAgICAgICAgICAgIDogcmVxdWlyZShjb25maWcuZXh0ZW5kcyk7XG4gICAgICAgIGRlbGV0ZSBjb25maWcuZXh0ZW5kcztcbiAgICAgICAgZGVmYXVsdENvbmZpZyA9IGFwcGx5RXh0ZW5kcyhkZWZhdWx0Q29uZmlnLCBzaGltLnBhdGguZGlybmFtZShwYXRoVG9EZWZhdWx0KSwgbWVyZ2VFeHRlbmRzLCBzaGltKTtcbiAgICB9XG4gICAgcHJldmlvdXNseVZpc2l0ZWRDb25maWdzID0gW107XG4gICAgcmV0dXJuIG1lcmdlRXh0ZW5kc1xuICAgICAgICA/IG1lcmdlRGVlcChkZWZhdWx0Q29uZmlnLCBjb25maWcpXG4gICAgICAgIDogT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdENvbmZpZywgY29uZmlnKTtcbn1cbmZ1bmN0aW9uIGNoZWNrRm9yQ2lyY3VsYXJFeHRlbmRzKGNmZ1BhdGgpIHtcbiAgICBpZiAocHJldmlvdXNseVZpc2l0ZWRDb25maWdzLmluZGV4T2YoY2ZnUGF0aCkgPiAtMSkge1xuICAgICAgICB0aHJvdyBuZXcgWUVycm9yKGBDaXJjdWxhciBleHRlbmRlZCBjb25maWd1cmF0aW9uczogJyR7Y2ZnUGF0aH0nLmApO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdldFBhdGhUb0RlZmF1bHRDb25maWcoY3dkLCBwYXRoVG9FeHRlbmQpIHtcbiAgICByZXR1cm4gc2hpbS5wYXRoLnJlc29sdmUoY3dkLCBwYXRoVG9FeHRlbmQpO1xufVxuZnVuY3Rpb24gbWVyZ2VEZWVwKGNvbmZpZzEsIGNvbmZpZzIpIHtcbiAgICBjb25zdCB0YXJnZXQgPSB7fTtcbiAgICBmdW5jdGlvbiBpc09iamVjdChvYmopIHtcbiAgICAgICAgcmV0dXJuIG9iaiAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShvYmopO1xuICAgIH1cbiAgICBPYmplY3QuYXNzaWduKHRhcmdldCwgY29uZmlnMSk7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoY29uZmlnMikpIHtcbiAgICAgICAgaWYgKGlzT2JqZWN0KGNvbmZpZzJba2V5XSkgJiYgaXNPYmplY3QodGFyZ2V0W2tleV0pKSB7XG4gICAgICAgICAgICB0YXJnZXRba2V5XSA9IG1lcmdlRGVlcChjb25maWcxW2tleV0sIGNvbmZpZzJba2V5XSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0YXJnZXRba2V5XSA9IGNvbmZpZzJba2V5XTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGFyZ2V0O1xufVxuXG5mdW5jdGlvbiBwYXJzZUNvbW1hbmQoY21kKSB7XG4gICAgY29uc3QgZXh0cmFTcGFjZXNTdHJpcHBlZENvbW1hbmQgPSBjbWQucmVwbGFjZSgvXFxzezIsfS9nLCAnICcpO1xuICAgIGNvbnN0IHNwbGl0Q29tbWFuZCA9IGV4dHJhU3BhY2VzU3RyaXBwZWRDb21tYW5kLnNwbGl0KC9cXHMrKD8hW15bXSpdfFtePF0qPikvKTtcbiAgICBjb25zdCBicmVnZXggPSAvXFwuKltcXF1bPD5dL2c7XG4gICAgY29uc3QgZmlyc3RDb21tYW5kID0gc3BsaXRDb21tYW5kLnNoaWZ0KCk7XG4gICAgaWYgKCFmaXJzdENvbW1hbmQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gY29tbWFuZCBmb3VuZCBpbjogJHtjbWR9YCk7XG4gICAgY29uc3QgcGFyc2VkQ29tbWFuZCA9IHtcbiAgICAgICAgY21kOiBmaXJzdENvbW1hbmQucmVwbGFjZShicmVnZXgsICcnKSxcbiAgICAgICAgZGVtYW5kZWQ6IFtdLFxuICAgICAgICBvcHRpb25hbDogW10sXG4gICAgfTtcbiAgICBzcGxpdENvbW1hbmQuZm9yRWFjaCgoY21kLCBpKSA9PiB7XG4gICAgICAgIGxldCB2YXJpYWRpYyA9IGZhbHNlO1xuICAgICAgICBjbWQgPSBjbWQucmVwbGFjZSgvXFxzL2csICcnKTtcbiAgICAgICAgaWYgKC9cXC4rW1xcXT5dLy50ZXN0KGNtZCkgJiYgaSA9PT0gc3BsaXRDb21tYW5kLmxlbmd0aCAtIDEpXG4gICAgICAgICAgICB2YXJpYWRpYyA9IHRydWU7XG4gICAgICAgIGlmICgvXlxcWy8udGVzdChjbWQpKSB7XG4gICAgICAgICAgICBwYXJzZWRDb21tYW5kLm9wdGlvbmFsLnB1c2goe1xuICAgICAgICAgICAgICAgIGNtZDogY21kLnJlcGxhY2UoYnJlZ2V4LCAnJykuc3BsaXQoJ3wnKSxcbiAgICAgICAgICAgICAgICB2YXJpYWRpYyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VkQ29tbWFuZC5kZW1hbmRlZC5wdXNoKHtcbiAgICAgICAgICAgICAgICBjbWQ6IGNtZC5yZXBsYWNlKGJyZWdleCwgJycpLnNwbGl0KCd8JyksXG4gICAgICAgICAgICAgICAgdmFyaWFkaWMsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBwYXJzZWRDb21tYW5kO1xufVxuXG5jb25zdCBwb3NpdGlvbk5hbWUgPSBbJ2ZpcnN0JywgJ3NlY29uZCcsICd0aGlyZCcsICdmb3VydGgnLCAnZmlmdGgnLCAnc2l4dGgnXTtcbmZ1bmN0aW9uIGFyZ3NlcnQoYXJnMSwgYXJnMiwgYXJnMykge1xuICAgIGZ1bmN0aW9uIHBhcnNlQXJncygpIHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBhcmcxID09PSAnb2JqZWN0J1xuICAgICAgICAgICAgPyBbeyBkZW1hbmRlZDogW10sIG9wdGlvbmFsOiBbXSB9LCBhcmcxLCBhcmcyXVxuICAgICAgICAgICAgOiBbXG4gICAgICAgICAgICAgICAgcGFyc2VDb21tYW5kKGBjbWQgJHthcmcxfWApLFxuICAgICAgICAgICAgICAgIGFyZzIsXG4gICAgICAgICAgICAgICAgYXJnMyxcbiAgICAgICAgICAgIF07XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIGxldCBwb3NpdGlvbiA9IDA7XG4gICAgICAgIGNvbnN0IFtwYXJzZWQsIGNhbGxlckFyZ3VtZW50cywgX2xlbmd0aF0gPSBwYXJzZUFyZ3MoKTtcbiAgICAgICAgY29uc3QgYXJncyA9IFtdLnNsaWNlLmNhbGwoY2FsbGVyQXJndW1lbnRzKTtcbiAgICAgICAgd2hpbGUgKGFyZ3MubGVuZ3RoICYmIGFyZ3NbYXJncy5sZW5ndGggLSAxXSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgYXJncy5wb3AoKTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gX2xlbmd0aCB8fCBhcmdzLmxlbmd0aDtcbiAgICAgICAgaWYgKGxlbmd0aCA8IHBhcnNlZC5kZW1hbmRlZC5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBZRXJyb3IoYE5vdCBlbm91Z2ggYXJndW1lbnRzIHByb3ZpZGVkLiBFeHBlY3RlZCAke3BhcnNlZC5kZW1hbmRlZC5sZW5ndGh9IGJ1dCByZWNlaXZlZCAke2FyZ3MubGVuZ3RofS5gKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB0b3RhbENvbW1hbmRzID0gcGFyc2VkLmRlbWFuZGVkLmxlbmd0aCArIHBhcnNlZC5vcHRpb25hbC5sZW5ndGg7XG4gICAgICAgIGlmIChsZW5ndGggPiB0b3RhbENvbW1hbmRzKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgWUVycm9yKGBUb28gbWFueSBhcmd1bWVudHMgcHJvdmlkZWQuIEV4cGVjdGVkIG1heCAke3RvdGFsQ29tbWFuZHN9IGJ1dCByZWNlaXZlZCAke2xlbmd0aH0uYCk7XG4gICAgICAgIH1cbiAgICAgICAgcGFyc2VkLmRlbWFuZGVkLmZvckVhY2goZGVtYW5kZWQgPT4ge1xuICAgICAgICAgICAgY29uc3QgYXJnID0gYXJncy5zaGlmdCgpO1xuICAgICAgICAgICAgY29uc3Qgb2JzZXJ2ZWRUeXBlID0gZ3Vlc3NUeXBlKGFyZyk7XG4gICAgICAgICAgICBjb25zdCBtYXRjaGluZ1R5cGVzID0gZGVtYW5kZWQuY21kLmZpbHRlcih0eXBlID0+IHR5cGUgPT09IG9ic2VydmVkVHlwZSB8fCB0eXBlID09PSAnKicpO1xuICAgICAgICAgICAgaWYgKG1hdGNoaW5nVHlwZXMubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgICAgIGFyZ3VtZW50VHlwZUVycm9yKG9ic2VydmVkVHlwZSwgZGVtYW5kZWQuY21kLCBwb3NpdGlvbik7XG4gICAgICAgICAgICBwb3NpdGlvbiArPSAxO1xuICAgICAgICB9KTtcbiAgICAgICAgcGFyc2VkLm9wdGlvbmFsLmZvckVhY2gob3B0aW9uYWwgPT4ge1xuICAgICAgICAgICAgaWYgKGFyZ3MubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IGFyZyA9IGFyZ3Muc2hpZnQoKTtcbiAgICAgICAgICAgIGNvbnN0IG9ic2VydmVkVHlwZSA9IGd1ZXNzVHlwZShhcmcpO1xuICAgICAgICAgICAgY29uc3QgbWF0Y2hpbmdUeXBlcyA9IG9wdGlvbmFsLmNtZC5maWx0ZXIodHlwZSA9PiB0eXBlID09PSBvYnNlcnZlZFR5cGUgfHwgdHlwZSA9PT0gJyonKTtcbiAgICAgICAgICAgIGlmIChtYXRjaGluZ1R5cGVzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgICAgICBhcmd1bWVudFR5cGVFcnJvcihvYnNlcnZlZFR5cGUsIG9wdGlvbmFsLmNtZCwgcG9zaXRpb24pO1xuICAgICAgICAgICAgcG9zaXRpb24gKz0gMTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc29sZS53YXJuKGVyci5zdGFjayk7XG4gICAgfVxufVxuZnVuY3Rpb24gZ3Vlc3NUeXBlKGFyZykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGFyZykpIHtcbiAgICAgICAgcmV0dXJuICdhcnJheSc7XG4gICAgfVxuICAgIGVsc2UgaWYgKGFyZyA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gJ251bGwnO1xuICAgIH1cbiAgICByZXR1cm4gdHlwZW9mIGFyZztcbn1cbmZ1bmN0aW9uIGFyZ3VtZW50VHlwZUVycm9yKG9ic2VydmVkVHlwZSwgYWxsb3dlZFR5cGVzLCBwb3NpdGlvbikge1xuICAgIHRocm93IG5ldyBZRXJyb3IoYEludmFsaWQgJHtwb3NpdGlvbk5hbWVbcG9zaXRpb25dIHx8ICdtYW55aXRoJ30gYXJndW1lbnQuIEV4cGVjdGVkICR7YWxsb3dlZFR5cGVzLmpvaW4oJyBvciAnKX0gYnV0IHJlY2VpdmVkICR7b2JzZXJ2ZWRUeXBlfS5gKTtcbn1cblxuZnVuY3Rpb24gaXNQcm9taXNlKG1heWJlUHJvbWlzZSkge1xuICAgIHJldHVybiAoISFtYXliZVByb21pc2UgJiZcbiAgICAgICAgISFtYXliZVByb21pc2UudGhlbiAmJlxuICAgICAgICB0eXBlb2YgbWF5YmVQcm9taXNlLnRoZW4gPT09ICdmdW5jdGlvbicpO1xufVxuXG5mdW5jdGlvbiBhc3NlcnROb3RTdHJpY3RFcXVhbChhY3R1YWwsIGV4cGVjdGVkLCBzaGltLCBtZXNzYWdlKSB7XG4gICAgc2hpbS5hc3NlcnQubm90U3RyaWN0RXF1YWwoYWN0dWFsLCBleHBlY3RlZCwgbWVzc2FnZSk7XG59XG5mdW5jdGlvbiBhc3NlcnRTaW5nbGVLZXkoYWN0dWFsLCBzaGltKSB7XG4gICAgc2hpbS5hc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGFjdHVhbCwgJ3N0cmluZycpO1xufVxuZnVuY3Rpb24gb2JqZWN0S2V5cyhvYmplY3QpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXMob2JqZWN0KTtcbn1cblxuZnVuY3Rpb24gb2JqRmlsdGVyKG9yaWdpbmFsID0ge30sIGZpbHRlciA9ICgpID0+IHRydWUpIHtcbiAgICBjb25zdCBvYmogPSB7fTtcbiAgICBvYmplY3RLZXlzKG9yaWdpbmFsKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgIGlmIChmaWx0ZXIoa2V5LCBvcmlnaW5hbFtrZXldKSkge1xuICAgICAgICAgICAgb2JqW2tleV0gPSBvcmlnaW5hbFtrZXldO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG9iajtcbn1cblxuZnVuY3Rpb24gZ2xvYmFsTWlkZGxld2FyZUZhY3RvcnkoZ2xvYmFsTWlkZGxld2FyZSwgY29udGV4dCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoY2FsbGJhY2ssIGFwcGx5QmVmb3JlVmFsaWRhdGlvbiA9IGZhbHNlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxmdW5jdGlvbj4gW2Jvb2xlYW5dJywgW2NhbGxiYWNrLCBhcHBseUJlZm9yZVZhbGlkYXRpb25dLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2FsbGJhY2spKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhbGxiYWNrLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFja1tpXSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBFcnJvcignbWlkZGxld2FyZSBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FsbGJhY2tbaV0uYXBwbHlCZWZvcmVWYWxpZGF0aW9uID0gYXBwbHlCZWZvcmVWYWxpZGF0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZ2xvYmFsTWlkZGxld2FyZSwgY2FsbGJhY2spO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgY2FsbGJhY2suYXBwbHlCZWZvcmVWYWxpZGF0aW9uID0gYXBwbHlCZWZvcmVWYWxpZGF0aW9uO1xuICAgICAgICAgICAgZ2xvYmFsTWlkZGxld2FyZS5wdXNoKGNhbGxiYWNrKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udGV4dDtcbiAgICB9O1xufVxuZnVuY3Rpb24gY29tbWFuZE1pZGRsZXdhcmVGYWN0b3J5KGNvbW1hbmRNaWRkbGV3YXJlKSB7XG4gICAgaWYgKCFjb21tYW5kTWlkZGxld2FyZSlcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIHJldHVybiBjb21tYW5kTWlkZGxld2FyZS5tYXAobWlkZGxld2FyZSA9PiB7XG4gICAgICAgIG1pZGRsZXdhcmUuYXBwbHlCZWZvcmVWYWxpZGF0aW9uID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBtaWRkbGV3YXJlO1xuICAgIH0pO1xufVxuZnVuY3Rpb24gYXBwbHlNaWRkbGV3YXJlKGFyZ3YsIHlhcmdzLCBtaWRkbGV3YXJlcywgYmVmb3JlVmFsaWRhdGlvbikge1xuICAgIGNvbnN0IGJlZm9yZVZhbGlkYXRpb25FcnJvciA9IG5ldyBFcnJvcignbWlkZGxld2FyZSBjYW5ub3QgcmV0dXJuIGEgcHJvbWlzZSB3aGVuIGFwcGx5QmVmb3JlVmFsaWRhdGlvbiBpcyB0cnVlJyk7XG4gICAgcmV0dXJuIG1pZGRsZXdhcmVzLnJlZHVjZSgoYWNjLCBtaWRkbGV3YXJlKSA9PiB7XG4gICAgICAgIGlmIChtaWRkbGV3YXJlLmFwcGx5QmVmb3JlVmFsaWRhdGlvbiAhPT0gYmVmb3JlVmFsaWRhdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNQcm9taXNlKGFjYykpIHtcbiAgICAgICAgICAgIHJldHVybiBhY2NcbiAgICAgICAgICAgICAgICAudGhlbihpbml0aWFsT2JqID0+IFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgICAgICBpbml0aWFsT2JqLFxuICAgICAgICAgICAgICAgIG1pZGRsZXdhcmUoaW5pdGlhbE9iaiwgeWFyZ3MpLFxuICAgICAgICAgICAgXSkpXG4gICAgICAgICAgICAgICAgLnRoZW4oKFtpbml0aWFsT2JqLCBtaWRkbGV3YXJlT2JqXSkgPT4gT2JqZWN0LmFzc2lnbihpbml0aWFsT2JqLCBtaWRkbGV3YXJlT2JqKSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBtaWRkbGV3YXJlKGFjYywgeWFyZ3MpO1xuICAgICAgICAgICAgaWYgKGJlZm9yZVZhbGlkYXRpb24gJiYgaXNQcm9taXNlKHJlc3VsdCkpXG4gICAgICAgICAgICAgICAgdGhyb3cgYmVmb3JlVmFsaWRhdGlvbkVycm9yO1xuICAgICAgICAgICAgcmV0dXJuIGlzUHJvbWlzZShyZXN1bHQpXG4gICAgICAgICAgICAgICAgPyByZXN1bHQudGhlbihtaWRkbGV3YXJlT2JqID0+IE9iamVjdC5hc3NpZ24oYWNjLCBtaWRkbGV3YXJlT2JqKSlcbiAgICAgICAgICAgICAgICA6IE9iamVjdC5hc3NpZ24oYWNjLCByZXN1bHQpO1xuICAgICAgICB9XG4gICAgfSwgYXJndik7XG59XG5cbmZ1bmN0aW9uIGdldFByb2Nlc3NBcmd2QmluSW5kZXgoKSB7XG4gICAgaWYgKGlzQnVuZGxlZEVsZWN0cm9uQXBwKCkpXG4gICAgICAgIHJldHVybiAwO1xuICAgIHJldHVybiAxO1xufVxuZnVuY3Rpb24gaXNCdW5kbGVkRWxlY3Ryb25BcHAoKSB7XG4gICAgcmV0dXJuIGlzRWxlY3Ryb25BcHAoKSAmJiAhcHJvY2Vzcy5kZWZhdWx0QXBwO1xufVxuZnVuY3Rpb24gaXNFbGVjdHJvbkFwcCgpIHtcbiAgICByZXR1cm4gISFwcm9jZXNzLnZlcnNpb25zLmVsZWN0cm9uO1xufVxuZnVuY3Rpb24gaGlkZUJpbihhcmd2KSB7XG4gICAgcmV0dXJuIGFyZ3Yuc2xpY2UoZ2V0UHJvY2Vzc0FyZ3ZCaW5JbmRleCgpICsgMSk7XG59XG5mdW5jdGlvbiBnZXRQcm9jZXNzQXJndkJpbigpIHtcbiAgICByZXR1cm4gcHJvY2Vzcy5hcmd2W2dldFByb2Nlc3NBcmd2QmluSW5kZXgoKV07XG59XG5cbnZhciBwcm9jZXNzQXJndiA9IC8qI19fUFVSRV9fKi9PYmplY3QuZnJlZXplKHtcbiAgX19wcm90b19fOiBudWxsLFxuICBoaWRlQmluOiBoaWRlQmluLFxuICBnZXRQcm9jZXNzQXJndkJpbjogZ2V0UHJvY2Vzc0FyZ3ZCaW5cbn0pO1xuXG5mdW5jdGlvbiB3aGljaE1vZHVsZShleHBvcnRlZCkge1xuICAgIGlmICh0eXBlb2YgcmVxdWlyZSA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGZvciAobGV0IGkgPSAwLCBmaWxlcyA9IE9iamVjdC5rZXlzKHJlcXVpcmUuY2FjaGUpLCBtb2Q7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBtb2QgPSByZXF1aXJlLmNhY2hlW2ZpbGVzW2ldXTtcbiAgICAgICAgaWYgKG1vZC5leHBvcnRzID09PSBleHBvcnRlZClcbiAgICAgICAgICAgIHJldHVybiBtb2Q7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufVxuXG5jb25zdCBERUZBVUxUX01BUktFUiA9IC8oXlxcKil8KF5cXCQwKS87XG5mdW5jdGlvbiBjb21tYW5kKHlhcmdzLCB1c2FnZSwgdmFsaWRhdGlvbiwgZ2xvYmFsTWlkZGxld2FyZSA9IFtdLCBzaGltKSB7XG4gICAgY29uc3Qgc2VsZiA9IHt9O1xuICAgIGxldCBoYW5kbGVycyA9IHt9O1xuICAgIGxldCBhbGlhc01hcCA9IHt9O1xuICAgIGxldCBkZWZhdWx0Q29tbWFuZDtcbiAgICBzZWxmLmFkZEhhbmRsZXIgPSBmdW5jdGlvbiBhZGRIYW5kbGVyKGNtZCwgZGVzY3JpcHRpb24sIGJ1aWxkZXIsIGhhbmRsZXIsIGNvbW1hbmRNaWRkbGV3YXJlLCBkZXByZWNhdGVkKSB7XG4gICAgICAgIGxldCBhbGlhc2VzID0gW107XG4gICAgICAgIGNvbnN0IG1pZGRsZXdhcmVzID0gY29tbWFuZE1pZGRsZXdhcmVGYWN0b3J5KGNvbW1hbmRNaWRkbGV3YXJlKTtcbiAgICAgICAgaGFuZGxlciA9IGhhbmRsZXIgfHwgKCgpID0+IHsgfSk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNtZCkpIHtcbiAgICAgICAgICAgIGlmIChpc0NvbW1hbmRBbmRBbGlhc2VzKGNtZCkpIHtcbiAgICAgICAgICAgICAgICBbY21kLCAuLi5hbGlhc2VzXSA9IGNtZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgY29tbWFuZCBvZiBjbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5hZGRIYW5kbGVyKGNvbW1hbmQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChpc0NvbW1hbmRIYW5kbGVyRGVmaW5pdGlvbihjbWQpKSB7XG4gICAgICAgICAgICBsZXQgY29tbWFuZCA9IEFycmF5LmlzQXJyYXkoY21kLmNvbW1hbmQpIHx8IHR5cGVvZiBjbWQuY29tbWFuZCA9PT0gJ3N0cmluZydcbiAgICAgICAgICAgICAgICA/IGNtZC5jb21tYW5kXG4gICAgICAgICAgICAgICAgOiBtb2R1bGVOYW1lKGNtZCk7XG4gICAgICAgICAgICBpZiAoY21kLmFsaWFzZXMpXG4gICAgICAgICAgICAgICAgY29tbWFuZCA9IFtdLmNvbmNhdChjb21tYW5kKS5jb25jYXQoY21kLmFsaWFzZXMpO1xuICAgICAgICAgICAgc2VsZi5hZGRIYW5kbGVyKGNvbW1hbmQsIGV4dHJhY3REZXNjKGNtZCksIGNtZC5idWlsZGVyLCBjbWQuaGFuZGxlciwgY21kLm1pZGRsZXdhcmVzLCBjbWQuZGVwcmVjYXRlZCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNDb21tYW5kQnVpbGRlckRlZmluaXRpb24oYnVpbGRlcikpIHtcbiAgICAgICAgICAgIHNlbGYuYWRkSGFuZGxlcihbY21kXS5jb25jYXQoYWxpYXNlcyksIGRlc2NyaXB0aW9uLCBidWlsZGVyLmJ1aWxkZXIsIGJ1aWxkZXIuaGFuZGxlciwgYnVpbGRlci5taWRkbGV3YXJlcywgYnVpbGRlci5kZXByZWNhdGVkKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGNtZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZENvbW1hbmQgPSBwYXJzZUNvbW1hbmQoY21kKTtcbiAgICAgICAgICAgIGFsaWFzZXMgPSBhbGlhc2VzLm1hcChhbGlhcyA9PiBwYXJzZUNvbW1hbmQoYWxpYXMpLmNtZCk7XG4gICAgICAgICAgICBsZXQgaXNEZWZhdWx0ID0gZmFsc2U7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWRBbGlhc2VzID0gW3BhcnNlZENvbW1hbmQuY21kXS5jb25jYXQoYWxpYXNlcykuZmlsdGVyKGMgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChERUZBVUxUX01BUktFUi50ZXN0KGMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChwYXJzZWRBbGlhc2VzLmxlbmd0aCA9PT0gMCAmJiBpc0RlZmF1bHQpXG4gICAgICAgICAgICAgICAgcGFyc2VkQWxpYXNlcy5wdXNoKCckMCcpO1xuICAgICAgICAgICAgaWYgKGlzRGVmYXVsdCkge1xuICAgICAgICAgICAgICAgIHBhcnNlZENvbW1hbmQuY21kID0gcGFyc2VkQWxpYXNlc1swXTtcbiAgICAgICAgICAgICAgICBhbGlhc2VzID0gcGFyc2VkQWxpYXNlcy5zbGljZSgxKTtcbiAgICAgICAgICAgICAgICBjbWQgPSBjbWQucmVwbGFjZShERUZBVUxUX01BUktFUiwgcGFyc2VkQ29tbWFuZC5jbWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYWxpYXNlcy5mb3JFYWNoKGFsaWFzID0+IHtcbiAgICAgICAgICAgICAgICBhbGlhc01hcFthbGlhc10gPSBwYXJzZWRDb21tYW5kLmNtZDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHVzYWdlLmNvbW1hbmQoY21kLCBkZXNjcmlwdGlvbiwgaXNEZWZhdWx0LCBhbGlhc2VzLCBkZXByZWNhdGVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhhbmRsZXJzW3BhcnNlZENvbW1hbmQuY21kXSA9IHtcbiAgICAgICAgICAgICAgICBvcmlnaW5hbDogY21kLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIGhhbmRsZXIsXG4gICAgICAgICAgICAgICAgYnVpbGRlcjogYnVpbGRlciB8fCB7fSxcbiAgICAgICAgICAgICAgICBtaWRkbGV3YXJlcyxcbiAgICAgICAgICAgICAgICBkZXByZWNhdGVkLFxuICAgICAgICAgICAgICAgIGRlbWFuZGVkOiBwYXJzZWRDb21tYW5kLmRlbWFuZGVkLFxuICAgICAgICAgICAgICAgIG9wdGlvbmFsOiBwYXJzZWRDb21tYW5kLm9wdGlvbmFsLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmIChpc0RlZmF1bHQpXG4gICAgICAgICAgICAgICAgZGVmYXVsdENvbW1hbmQgPSBoYW5kbGVyc1twYXJzZWRDb21tYW5kLmNtZF07XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNlbGYuYWRkRGlyZWN0b3J5ID0gZnVuY3Rpb24gYWRkRGlyZWN0b3J5KGRpciwgY29udGV4dCwgcmVxLCBjYWxsZXJGaWxlLCBvcHRzKSB7XG4gICAgICAgIG9wdHMgPSBvcHRzIHx8IHt9O1xuICAgICAgICBpZiAodHlwZW9mIG9wdHMucmVjdXJzZSAhPT0gJ2Jvb2xlYW4nKVxuICAgICAgICAgICAgb3B0cy5yZWN1cnNlID0gZmFsc2U7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShvcHRzLmV4dGVuc2lvbnMpKVxuICAgICAgICAgICAgb3B0cy5leHRlbnNpb25zID0gWydqcyddO1xuICAgICAgICBjb25zdCBwYXJlbnRWaXNpdCA9IHR5cGVvZiBvcHRzLnZpc2l0ID09PSAnZnVuY3Rpb24nID8gb3B0cy52aXNpdCA6IChvKSA9PiBvO1xuICAgICAgICBvcHRzLnZpc2l0ID0gZnVuY3Rpb24gdmlzaXQob2JqLCBqb2luZWQsIGZpbGVuYW1lKSB7XG4gICAgICAgICAgICBjb25zdCB2aXNpdGVkID0gcGFyZW50VmlzaXQob2JqLCBqb2luZWQsIGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmICh2aXNpdGVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKH5jb250ZXh0LmZpbGVzLmluZGV4T2Yoam9pbmVkKSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZpc2l0ZWQ7XG4gICAgICAgICAgICAgICAgY29udGV4dC5maWxlcy5wdXNoKGpvaW5lZCk7XG4gICAgICAgICAgICAgICAgc2VsZi5hZGRIYW5kbGVyKHZpc2l0ZWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZpc2l0ZWQ7XG4gICAgICAgIH07XG4gICAgICAgIHNoaW0ucmVxdWlyZURpcmVjdG9yeSh7IHJlcXVpcmU6IHJlcSwgZmlsZW5hbWU6IGNhbGxlckZpbGUgfSwgZGlyLCBvcHRzKTtcbiAgICB9O1xuICAgIGZ1bmN0aW9uIG1vZHVsZU5hbWUob2JqKSB7XG4gICAgICAgIGNvbnN0IG1vZCA9IHdoaWNoTW9kdWxlKG9iaik7XG4gICAgICAgIGlmICghbW9kKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBjb21tYW5kIG5hbWUgZ2l2ZW4gZm9yIG1vZHVsZTogJHtzaGltLmluc3BlY3Qob2JqKX1gKTtcbiAgICAgICAgcmV0dXJuIGNvbW1hbmRGcm9tRmlsZW5hbWUobW9kLmZpbGVuYW1lKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY29tbWFuZEZyb21GaWxlbmFtZShmaWxlbmFtZSkge1xuICAgICAgICByZXR1cm4gc2hpbS5wYXRoLmJhc2VuYW1lKGZpbGVuYW1lLCBzaGltLnBhdGguZXh0bmFtZShmaWxlbmFtZSkpO1xuICAgIH1cbiAgICBmdW5jdGlvbiBleHRyYWN0RGVzYyh7IGRlc2NyaWJlLCBkZXNjcmlwdGlvbiwgZGVzYywgfSkge1xuICAgICAgICBmb3IgKGNvbnN0IHRlc3Qgb2YgW2Rlc2NyaWJlLCBkZXNjcmlwdGlvbiwgZGVzY10pIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdGVzdCA9PT0gJ3N0cmluZycgfHwgdGVzdCA9PT0gZmFsc2UpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRlc3Q7XG4gICAgICAgICAgICBhc3NlcnROb3RTdHJpY3RFcXVhbCh0ZXN0LCB0cnVlLCBzaGltKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNlbGYuZ2V0Q29tbWFuZHMgPSAoKSA9PiBPYmplY3Qua2V5cyhoYW5kbGVycykuY29uY2F0KE9iamVjdC5rZXlzKGFsaWFzTWFwKSk7XG4gICAgc2VsZi5nZXRDb21tYW5kSGFuZGxlcnMgPSAoKSA9PiBoYW5kbGVycztcbiAgICBzZWxmLmhhc0RlZmF1bHRDb21tYW5kID0gKCkgPT4gISFkZWZhdWx0Q29tbWFuZDtcbiAgICBzZWxmLnJ1bkNvbW1hbmQgPSBmdW5jdGlvbiBydW5Db21tYW5kKGNvbW1hbmQsIHlhcmdzLCBwYXJzZWQsIGNvbW1hbmRJbmRleCkge1xuICAgICAgICBsZXQgYWxpYXNlcyA9IHBhcnNlZC5hbGlhc2VzO1xuICAgICAgICBjb25zdCBjb21tYW5kSGFuZGxlciA9IGhhbmRsZXJzW2NvbW1hbmRdIHx8IGhhbmRsZXJzW2FsaWFzTWFwW2NvbW1hbmRdXSB8fCBkZWZhdWx0Q29tbWFuZDtcbiAgICAgICAgY29uc3QgY3VycmVudENvbnRleHQgPSB5YXJncy5nZXRDb250ZXh0KCk7XG4gICAgICAgIGxldCBudW1GaWxlcyA9IGN1cnJlbnRDb250ZXh0LmZpbGVzLmxlbmd0aDtcbiAgICAgICAgY29uc3QgcGFyZW50Q29tbWFuZHMgPSBjdXJyZW50Q29udGV4dC5jb21tYW5kcy5zbGljZSgpO1xuICAgICAgICBsZXQgaW5uZXJBcmd2ID0gcGFyc2VkLmFyZ3Y7XG4gICAgICAgIGxldCBwb3NpdGlvbmFsTWFwID0ge307XG4gICAgICAgIGlmIChjb21tYW5kKSB7XG4gICAgICAgICAgICBjdXJyZW50Q29udGV4dC5jb21tYW5kcy5wdXNoKGNvbW1hbmQpO1xuICAgICAgICAgICAgY3VycmVudENvbnRleHQuZnVsbENvbW1hbmRzLnB1c2goY29tbWFuZEhhbmRsZXIub3JpZ2luYWwpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJ1aWxkZXIgPSBjb21tYW5kSGFuZGxlci5idWlsZGVyO1xuICAgICAgICBpZiAoaXNDb21tYW5kQnVpbGRlckNhbGxiYWNrKGJ1aWxkZXIpKSB7XG4gICAgICAgICAgICBjb25zdCBidWlsZGVyT3V0cHV0ID0gYnVpbGRlcih5YXJncy5yZXNldChwYXJzZWQuYWxpYXNlcykpO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJZYXJncyA9IGlzWWFyZ3NJbnN0YW5jZShidWlsZGVyT3V0cHV0KSA/IGJ1aWxkZXJPdXRwdXQgOiB5YXJncztcbiAgICAgICAgICAgIGlmIChzaG91bGRVcGRhdGVVc2FnZShpbm5lcllhcmdzKSkge1xuICAgICAgICAgICAgICAgIGlubmVyWWFyZ3NcbiAgICAgICAgICAgICAgICAgICAgLmdldFVzYWdlSW5zdGFuY2UoKVxuICAgICAgICAgICAgICAgICAgICAudXNhZ2UodXNhZ2VGcm9tUGFyZW50Q29tbWFuZHNDb21tYW5kSGFuZGxlcihwYXJlbnRDb21tYW5kcywgY29tbWFuZEhhbmRsZXIpLCBjb21tYW5kSGFuZGxlci5kZXNjcmlwdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbm5lckFyZ3YgPSBpbm5lcllhcmdzLl9wYXJzZUFyZ3MobnVsbCwgbnVsbCwgdHJ1ZSwgY29tbWFuZEluZGV4KTtcbiAgICAgICAgICAgIGFsaWFzZXMgPSBpbm5lcllhcmdzLnBhcnNlZC5hbGlhc2VzO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzQ29tbWFuZEJ1aWxkZXJPcHRpb25EZWZpbml0aW9ucyhidWlsZGVyKSkge1xuICAgICAgICAgICAgY29uc3QgaW5uZXJZYXJncyA9IHlhcmdzLnJlc2V0KHBhcnNlZC5hbGlhc2VzKTtcbiAgICAgICAgICAgIGlmIChzaG91bGRVcGRhdGVVc2FnZShpbm5lcllhcmdzKSkge1xuICAgICAgICAgICAgICAgIGlubmVyWWFyZ3NcbiAgICAgICAgICAgICAgICAgICAgLmdldFVzYWdlSW5zdGFuY2UoKVxuICAgICAgICAgICAgICAgICAgICAudXNhZ2UodXNhZ2VGcm9tUGFyZW50Q29tbWFuZHNDb21tYW5kSGFuZGxlcihwYXJlbnRDb21tYW5kcywgY29tbWFuZEhhbmRsZXIpLCBjb21tYW5kSGFuZGxlci5kZXNjcmlwdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhjb21tYW5kSGFuZGxlci5idWlsZGVyKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgaW5uZXJZYXJncy5vcHRpb24oa2V5LCBidWlsZGVyW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpbm5lckFyZ3YgPSBpbm5lcllhcmdzLl9wYXJzZUFyZ3MobnVsbCwgbnVsbCwgdHJ1ZSwgY29tbWFuZEluZGV4KTtcbiAgICAgICAgICAgIGFsaWFzZXMgPSBpbm5lcllhcmdzLnBhcnNlZC5hbGlhc2VzO1xuICAgICAgICB9XG4gICAgICAgIGlmICgheWFyZ3MuX2hhc091dHB1dCgpKSB7XG4gICAgICAgICAgICBwb3NpdGlvbmFsTWFwID0gcG9wdWxhdGVQb3NpdGlvbmFscyhjb21tYW5kSGFuZGxlciwgaW5uZXJBcmd2LCBjdXJyZW50Q29udGV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWlkZGxld2FyZXMgPSBnbG9iYWxNaWRkbGV3YXJlXG4gICAgICAgICAgICAuc2xpY2UoMClcbiAgICAgICAgICAgIC5jb25jYXQoY29tbWFuZEhhbmRsZXIubWlkZGxld2FyZXMpO1xuICAgICAgICBhcHBseU1pZGRsZXdhcmUoaW5uZXJBcmd2LCB5YXJncywgbWlkZGxld2FyZXMsIHRydWUpO1xuICAgICAgICBpZiAoIXlhcmdzLl9oYXNPdXRwdXQoKSkge1xuICAgICAgICAgICAgeWFyZ3MuX3J1blZhbGlkYXRpb24oaW5uZXJBcmd2LCBhbGlhc2VzLCBwb3NpdGlvbmFsTWFwLCB5YXJncy5wYXJzZWQuZXJyb3IsICFjb21tYW5kKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29tbWFuZEhhbmRsZXIuaGFuZGxlciAmJiAheWFyZ3MuX2hhc091dHB1dCgpKSB7XG4gICAgICAgICAgICB5YXJncy5fc2V0SGFzT3V0cHV0KCk7XG4gICAgICAgICAgICBjb25zdCBwb3B1bGF0ZURvdWJsZURhc2ggPSAhIXlhcmdzLmdldE9wdGlvbnMoKS5jb25maWd1cmF0aW9uWydwb3B1bGF0ZS0tJ107XG4gICAgICAgICAgICB5YXJncy5fcG9zdFByb2Nlc3MoaW5uZXJBcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gpO1xuICAgICAgICAgICAgaW5uZXJBcmd2ID0gYXBwbHlNaWRkbGV3YXJlKGlubmVyQXJndiwgeWFyZ3MsIG1pZGRsZXdhcmVzLCBmYWxzZSk7XG4gICAgICAgICAgICBsZXQgaGFuZGxlclJlc3VsdDtcbiAgICAgICAgICAgIGlmIChpc1Byb21pc2UoaW5uZXJBcmd2KSkge1xuICAgICAgICAgICAgICAgIGhhbmRsZXJSZXN1bHQgPSBpbm5lckFyZ3YudGhlbihhcmd2ID0+IGNvbW1hbmRIYW5kbGVyLmhhbmRsZXIoYXJndikpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlclJlc3VsdCA9IGNvbW1hbmRIYW5kbGVyLmhhbmRsZXIoaW5uZXJBcmd2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZXJGaW5pc2hDb21tYW5kID0geWFyZ3MuZ2V0SGFuZGxlckZpbmlzaENvbW1hbmQoKTtcbiAgICAgICAgICAgIGlmIChpc1Byb21pc2UoaGFuZGxlclJlc3VsdCkpIHtcbiAgICAgICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuY2FjaGVIZWxwTWVzc2FnZSgpO1xuICAgICAgICAgICAgICAgIGhhbmRsZXJSZXN1bHRcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4odmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaGFuZGxlckZpbmlzaENvbW1hbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXJGaW5pc2hDb21tYW5kKHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuZmFpbChudWxsLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuY2xlYXJDYWNoZWRIZWxwTWVzc2FnZSgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKGhhbmRsZXJGaW5pc2hDb21tYW5kKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZXJGaW5pc2hDb21tYW5kKGhhbmRsZXJSZXN1bHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoY29tbWFuZCkge1xuICAgICAgICAgICAgY3VycmVudENvbnRleHQuY29tbWFuZHMucG9wKCk7XG4gICAgICAgICAgICBjdXJyZW50Q29udGV4dC5mdWxsQ29tbWFuZHMucG9wKCk7XG4gICAgICAgIH1cbiAgICAgICAgbnVtRmlsZXMgPSBjdXJyZW50Q29udGV4dC5maWxlcy5sZW5ndGggLSBudW1GaWxlcztcbiAgICAgICAgaWYgKG51bUZpbGVzID4gMClcbiAgICAgICAgICAgIGN1cnJlbnRDb250ZXh0LmZpbGVzLnNwbGljZShudW1GaWxlcyAqIC0xLCBudW1GaWxlcyk7XG4gICAgICAgIHJldHVybiBpbm5lckFyZ3Y7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBzaG91bGRVcGRhdGVVc2FnZSh5YXJncykge1xuICAgICAgICByZXR1cm4gKCF5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuZ2V0VXNhZ2VEaXNhYmxlZCgpICYmXG4gICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuZ2V0VXNhZ2UoKS5sZW5ndGggPT09IDApO1xuICAgIH1cbiAgICBmdW5jdGlvbiB1c2FnZUZyb21QYXJlbnRDb21tYW5kc0NvbW1hbmRIYW5kbGVyKHBhcmVudENvbW1hbmRzLCBjb21tYW5kSGFuZGxlcikge1xuICAgICAgICBjb25zdCBjID0gREVGQVVMVF9NQVJLRVIudGVzdChjb21tYW5kSGFuZGxlci5vcmlnaW5hbClcbiAgICAgICAgICAgID8gY29tbWFuZEhhbmRsZXIub3JpZ2luYWwucmVwbGFjZShERUZBVUxUX01BUktFUiwgJycpLnRyaW0oKVxuICAgICAgICAgICAgOiBjb21tYW5kSGFuZGxlci5vcmlnaW5hbDtcbiAgICAgICAgY29uc3QgcGMgPSBwYXJlbnRDb21tYW5kcy5maWx0ZXIoYyA9PiB7XG4gICAgICAgICAgICByZXR1cm4gIURFRkFVTFRfTUFSS0VSLnRlc3QoYyk7XG4gICAgICAgIH0pO1xuICAgICAgICBwYy5wdXNoKGMpO1xuICAgICAgICByZXR1cm4gYCQwICR7cGMuam9pbignICcpfWA7XG4gICAgfVxuICAgIHNlbGYucnVuRGVmYXVsdEJ1aWxkZXJPbiA9IGZ1bmN0aW9uICh5YXJncykge1xuICAgICAgICBhc3NlcnROb3RTdHJpY3RFcXVhbChkZWZhdWx0Q29tbWFuZCwgdW5kZWZpbmVkLCBzaGltKTtcbiAgICAgICAgaWYgKHNob3VsZFVwZGF0ZVVzYWdlKHlhcmdzKSkge1xuICAgICAgICAgICAgY29uc3QgY29tbWFuZFN0cmluZyA9IERFRkFVTFRfTUFSS0VSLnRlc3QoZGVmYXVsdENvbW1hbmQub3JpZ2luYWwpXG4gICAgICAgICAgICAgICAgPyBkZWZhdWx0Q29tbWFuZC5vcmlnaW5hbFxuICAgICAgICAgICAgICAgIDogZGVmYXVsdENvbW1hbmQub3JpZ2luYWwucmVwbGFjZSgvXlteW1xcXTw+XSovLCAnJDAgJyk7XG4gICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkudXNhZ2UoY29tbWFuZFN0cmluZywgZGVmYXVsdENvbW1hbmQuZGVzY3JpcHRpb24pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJ1aWxkZXIgPSBkZWZhdWx0Q29tbWFuZC5idWlsZGVyO1xuICAgICAgICBpZiAoaXNDb21tYW5kQnVpbGRlckNhbGxiYWNrKGJ1aWxkZXIpKSB7XG4gICAgICAgICAgICBidWlsZGVyKHlhcmdzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICghaXNDb21tYW5kQnVpbGRlckRlZmluaXRpb24oYnVpbGRlcikpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGJ1aWxkZXIpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICB5YXJncy5vcHRpb24oa2V5LCBidWlsZGVyW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGZ1bmN0aW9uIHBvcHVsYXRlUG9zaXRpb25hbHMoY29tbWFuZEhhbmRsZXIsIGFyZ3YsIGNvbnRleHQpIHtcbiAgICAgICAgYXJndi5fID0gYXJndi5fLnNsaWNlKGNvbnRleHQuY29tbWFuZHMubGVuZ3RoKTtcbiAgICAgICAgY29uc3QgZGVtYW5kZWQgPSBjb21tYW5kSGFuZGxlci5kZW1hbmRlZC5zbGljZSgwKTtcbiAgICAgICAgY29uc3Qgb3B0aW9uYWwgPSBjb21tYW5kSGFuZGxlci5vcHRpb25hbC5zbGljZSgwKTtcbiAgICAgICAgY29uc3QgcG9zaXRpb25hbE1hcCA9IHt9O1xuICAgICAgICB2YWxpZGF0aW9uLnBvc2l0aW9uYWxDb3VudChkZW1hbmRlZC5sZW5ndGgsIGFyZ3YuXy5sZW5ndGgpO1xuICAgICAgICB3aGlsZSAoZGVtYW5kZWQubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBkZW1hbmQgPSBkZW1hbmRlZC5zaGlmdCgpO1xuICAgICAgICAgICAgcG9wdWxhdGVQb3NpdGlvbmFsKGRlbWFuZCwgYXJndiwgcG9zaXRpb25hbE1hcCk7XG4gICAgICAgIH1cbiAgICAgICAgd2hpbGUgKG9wdGlvbmFsLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgbWF5YmUgPSBvcHRpb25hbC5zaGlmdCgpO1xuICAgICAgICAgICAgcG9wdWxhdGVQb3NpdGlvbmFsKG1heWJlLCBhcmd2LCBwb3NpdGlvbmFsTWFwKTtcbiAgICAgICAgfVxuICAgICAgICBhcmd2Ll8gPSBjb250ZXh0LmNvbW1hbmRzLmNvbmNhdChhcmd2Ll8ubWFwKGEgPT4gJycgKyBhKSk7XG4gICAgICAgIHBvc3RQcm9jZXNzUG9zaXRpb25hbHMoYXJndiwgcG9zaXRpb25hbE1hcCwgc2VsZi5jbWRUb1BhcnNlT3B0aW9ucyhjb21tYW5kSGFuZGxlci5vcmlnaW5hbCkpO1xuICAgICAgICByZXR1cm4gcG9zaXRpb25hbE1hcDtcbiAgICB9XG4gICAgZnVuY3Rpb24gcG9wdWxhdGVQb3NpdGlvbmFsKHBvc2l0aW9uYWwsIGFyZ3YsIHBvc2l0aW9uYWxNYXApIHtcbiAgICAgICAgY29uc3QgY21kID0gcG9zaXRpb25hbC5jbWRbMF07XG4gICAgICAgIGlmIChwb3NpdGlvbmFsLnZhcmlhZGljKSB7XG4gICAgICAgICAgICBwb3NpdGlvbmFsTWFwW2NtZF0gPSBhcmd2Ll8uc3BsaWNlKDApLm1hcChTdHJpbmcpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGFyZ3YuXy5sZW5ndGgpXG4gICAgICAgICAgICAgICAgcG9zaXRpb25hbE1hcFtjbWRdID0gW1N0cmluZyhhcmd2Ll8uc2hpZnQoKSldO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHBvc3RQcm9jZXNzUG9zaXRpb25hbHMoYXJndiwgcG9zaXRpb25hbE1hcCwgcGFyc2VPcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCB5YXJncy5nZXRPcHRpb25zKCkpO1xuICAgICAgICBvcHRpb25zLmRlZmF1bHQgPSBPYmplY3QuYXNzaWduKHBhcnNlT3B0aW9ucy5kZWZhdWx0LCBvcHRpb25zLmRlZmF1bHQpO1xuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhwYXJzZU9wdGlvbnMuYWxpYXMpKSB7XG4gICAgICAgICAgICBvcHRpb25zLmFsaWFzW2tleV0gPSAob3B0aW9ucy5hbGlhc1trZXldIHx8IFtdKS5jb25jYXQocGFyc2VPcHRpb25zLmFsaWFzW2tleV0pO1xuICAgICAgICB9XG4gICAgICAgIG9wdGlvbnMuYXJyYXkgPSBvcHRpb25zLmFycmF5LmNvbmNhdChwYXJzZU9wdGlvbnMuYXJyYXkpO1xuICAgICAgICBvcHRpb25zLmNvbmZpZyA9IHt9O1xuICAgICAgICBjb25zdCB1bnBhcnNlZCA9IFtdO1xuICAgICAgICBPYmplY3Qua2V5cyhwb3NpdGlvbmFsTWFwKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBwb3NpdGlvbmFsTWFwW2tleV0ubWFwKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5jb25maWd1cmF0aW9uWyd1bmtub3duLW9wdGlvbnMtYXMtYXJncyddKVxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmtleVtrZXldID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB1bnBhcnNlZC5wdXNoKGAtLSR7a2V5fWApO1xuICAgICAgICAgICAgICAgIHVucGFyc2VkLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXVucGFyc2VkLmxlbmd0aClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgY29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucy5jb25maWd1cmF0aW9uLCB7XG4gICAgICAgICAgICAncG9wdWxhdGUtLSc6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBwYXJzZWQgPSBzaGltLlBhcnNlci5kZXRhaWxlZCh1bnBhcnNlZCwgT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucywge1xuICAgICAgICAgICAgY29uZmlndXJhdGlvbjogY29uZmlnLFxuICAgICAgICB9KSk7XG4gICAgICAgIGlmIChwYXJzZWQuZXJyb3IpIHtcbiAgICAgICAgICAgIHlhcmdzLmdldFVzYWdlSW5zdGFuY2UoKS5mYWlsKHBhcnNlZC5lcnJvci5tZXNzYWdlLCBwYXJzZWQuZXJyb3IpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgcG9zaXRpb25hbEtleXMgPSBPYmplY3Qua2V5cyhwb3NpdGlvbmFsTWFwKTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHBvc2l0aW9uYWxNYXApLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbmFsS2V5cy5wdXNoKC4uLnBhcnNlZC5hbGlhc2VzW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhwYXJzZWQuYXJndikuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChwb3NpdGlvbmFsS2V5cy5pbmRleE9mKGtleSkgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghcG9zaXRpb25hbE1hcFtrZXldKVxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb25hbE1hcFtrZXldID0gcGFyc2VkLmFyZ3Zba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgYXJndltrZXldID0gcGFyc2VkLmFyZ3Zba2V5XTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWxmLmNtZFRvUGFyc2VPcHRpb25zID0gZnVuY3Rpb24gKGNtZFN0cmluZykge1xuICAgICAgICBjb25zdCBwYXJzZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICBhcnJheTogW10sXG4gICAgICAgICAgICBkZWZhdWx0OiB7fSxcbiAgICAgICAgICAgIGFsaWFzOiB7fSxcbiAgICAgICAgICAgIGRlbWFuZDoge30sXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IHBhcnNlQ29tbWFuZChjbWRTdHJpbmcpO1xuICAgICAgICBwYXJzZWQuZGVtYW5kZWQuZm9yRWFjaChkID0+IHtcbiAgICAgICAgICAgIGNvbnN0IFtjbWQsIC4uLmFsaWFzZXNdID0gZC5jbWQ7XG4gICAgICAgICAgICBpZiAoZC52YXJpYWRpYykge1xuICAgICAgICAgICAgICAgIHBhcnNlT3B0aW9ucy5hcnJheS5wdXNoKGNtZCk7XG4gICAgICAgICAgICAgICAgcGFyc2VPcHRpb25zLmRlZmF1bHRbY21kXSA9IFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VPcHRpb25zLmFsaWFzW2NtZF0gPSBhbGlhc2VzO1xuICAgICAgICAgICAgcGFyc2VPcHRpb25zLmRlbWFuZFtjbWRdID0gdHJ1ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHBhcnNlZC5vcHRpb25hbC5mb3JFYWNoKG8gPT4ge1xuICAgICAgICAgICAgY29uc3QgW2NtZCwgLi4uYWxpYXNlc10gPSBvLmNtZDtcbiAgICAgICAgICAgIGlmIChvLnZhcmlhZGljKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VPcHRpb25zLmFycmF5LnB1c2goY21kKTtcbiAgICAgICAgICAgICAgICBwYXJzZU9wdGlvbnMuZGVmYXVsdFtjbWRdID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXJzZU9wdGlvbnMuYWxpYXNbY21kXSA9IGFsaWFzZXM7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcGFyc2VPcHRpb25zO1xuICAgIH07XG4gICAgc2VsZi5yZXNldCA9ICgpID0+IHtcbiAgICAgICAgaGFuZGxlcnMgPSB7fTtcbiAgICAgICAgYWxpYXNNYXAgPSB7fTtcbiAgICAgICAgZGVmYXVsdENvbW1hbmQgPSB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgY29uc3QgZnJvemVucyA9IFtdO1xuICAgIHNlbGYuZnJlZXplID0gKCkgPT4ge1xuICAgICAgICBmcm96ZW5zLnB1c2goe1xuICAgICAgICAgICAgaGFuZGxlcnMsXG4gICAgICAgICAgICBhbGlhc01hcCxcbiAgICAgICAgICAgIGRlZmF1bHRDb21tYW5kLFxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHNlbGYudW5mcmVlemUgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGZyb3plbiA9IGZyb3plbnMucG9wKCk7XG4gICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKGZyb3plbiwgdW5kZWZpbmVkLCBzaGltKTtcbiAgICAgICAgKHsgaGFuZGxlcnMsIGFsaWFzTWFwLCBkZWZhdWx0Q29tbWFuZCB9ID0gZnJvemVuKTtcbiAgICB9O1xuICAgIHJldHVybiBzZWxmO1xufVxuZnVuY3Rpb24gaXNDb21tYW5kQnVpbGRlckRlZmluaXRpb24oYnVpbGRlcikge1xuICAgIHJldHVybiAodHlwZW9mIGJ1aWxkZXIgPT09ICdvYmplY3QnICYmXG4gICAgICAgICEhYnVpbGRlci5idWlsZGVyICYmXG4gICAgICAgIHR5cGVvZiBidWlsZGVyLmhhbmRsZXIgPT09ICdmdW5jdGlvbicpO1xufVxuZnVuY3Rpb24gaXNDb21tYW5kQW5kQWxpYXNlcyhjbWQpIHtcbiAgICBpZiAoY21kLmV2ZXJ5KGMgPT4gdHlwZW9mIGMgPT09ICdzdHJpbmcnKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG5mdW5jdGlvbiBpc0NvbW1hbmRCdWlsZGVyQ2FsbGJhY2soYnVpbGRlcikge1xuICAgIHJldHVybiB0eXBlb2YgYnVpbGRlciA9PT0gJ2Z1bmN0aW9uJztcbn1cbmZ1bmN0aW9uIGlzQ29tbWFuZEJ1aWxkZXJPcHRpb25EZWZpbml0aW9ucyhidWlsZGVyKSB7XG4gICAgcmV0dXJuIHR5cGVvZiBidWlsZGVyID09PSAnb2JqZWN0Jztcbn1cbmZ1bmN0aW9uIGlzQ29tbWFuZEhhbmRsZXJEZWZpbml0aW9uKGNtZCkge1xuICAgIHJldHVybiB0eXBlb2YgY21kID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShjbWQpO1xufVxuXG5mdW5jdGlvbiBzZXRCbG9ja2luZyhibG9ja2luZykge1xuICAgIGlmICh0eXBlb2YgcHJvY2VzcyA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJldHVybjtcbiAgICBbcHJvY2Vzcy5zdGRvdXQsIHByb2Nlc3Muc3RkZXJyXS5mb3JFYWNoKF9zdHJlYW0gPT4ge1xuICAgICAgICBjb25zdCBzdHJlYW0gPSBfc3RyZWFtO1xuICAgICAgICBpZiAoc3RyZWFtLl9oYW5kbGUgJiZcbiAgICAgICAgICAgIHN0cmVhbS5pc1RUWSAmJlxuICAgICAgICAgICAgdHlwZW9mIHN0cmVhbS5faGFuZGxlLnNldEJsb2NraW5nID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBzdHJlYW0uX2hhbmRsZS5zZXRCbG9ja2luZyhibG9ja2luZyk7XG4gICAgICAgIH1cbiAgICB9KTtcbn1cblxuZnVuY3Rpb24gdXNhZ2UoeWFyZ3MsIHkxOG4sIHNoaW0pIHtcbiAgICBjb25zdCBfXyA9IHkxOG4uX187XG4gICAgY29uc3Qgc2VsZiA9IHt9O1xuICAgIGNvbnN0IGZhaWxzID0gW107XG4gICAgc2VsZi5mYWlsRm4gPSBmdW5jdGlvbiBmYWlsRm4oZikge1xuICAgICAgICBmYWlscy5wdXNoKGYpO1xuICAgIH07XG4gICAgbGV0IGZhaWxNZXNzYWdlID0gbnVsbDtcbiAgICBsZXQgc2hvd0hlbHBPbkZhaWwgPSB0cnVlO1xuICAgIHNlbGYuc2hvd0hlbHBPbkZhaWwgPSBmdW5jdGlvbiBzaG93SGVscE9uRmFpbEZuKGFyZzEgPSB0cnVlLCBhcmcyKSB7XG4gICAgICAgIGZ1bmN0aW9uIHBhcnNlRnVuY3Rpb25BcmdzKCkge1xuICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBhcmcxID09PSAnc3RyaW5nJyA/IFt0cnVlLCBhcmcxXSA6IFthcmcxLCBhcmcyXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBbZW5hYmxlZCwgbWVzc2FnZV0gPSBwYXJzZUZ1bmN0aW9uQXJncygpO1xuICAgICAgICBmYWlsTWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgICAgIHNob3dIZWxwT25GYWlsID0gZW5hYmxlZDtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBsZXQgZmFpbHVyZU91dHB1dCA9IGZhbHNlO1xuICAgIHNlbGYuZmFpbCA9IGZ1bmN0aW9uIGZhaWwobXNnLCBlcnIpIHtcbiAgICAgICAgY29uc3QgbG9nZ2VyID0geWFyZ3MuX2dldExvZ2dlckluc3RhbmNlKCk7XG4gICAgICAgIGlmIChmYWlscy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSBmYWlscy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICAgICAgICAgIGZhaWxzW2ldKG1zZywgZXJyLCBzZWxmKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmICh5YXJncy5nZXRFeGl0UHJvY2VzcygpKVxuICAgICAgICAgICAgICAgIHNldEJsb2NraW5nKHRydWUpO1xuICAgICAgICAgICAgaWYgKCFmYWlsdXJlT3V0cHV0KSB7XG4gICAgICAgICAgICAgICAgZmFpbHVyZU91dHB1dCA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKHNob3dIZWxwT25GYWlsKSB7XG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLnNob3dIZWxwKCdlcnJvcicpO1xuICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG1zZyB8fCBlcnIpXG4gICAgICAgICAgICAgICAgICAgIGxvZ2dlci5lcnJvcihtc2cgfHwgZXJyKTtcbiAgICAgICAgICAgICAgICBpZiAoZmFpbE1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1zZyB8fCBlcnIpXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoJycpO1xuICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoZmFpbE1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVyciA9IGVyciB8fCBuZXcgWUVycm9yKG1zZyk7XG4gICAgICAgICAgICBpZiAoeWFyZ3MuZ2V0RXhpdFByb2Nlc3MoKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB5YXJncy5leGl0KDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoeWFyZ3MuX2hhc1BhcnNlQ2FsbGJhY2soKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB5YXJncy5leGl0KDEsIGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGxldCB1c2FnZXMgPSBbXTtcbiAgICBsZXQgdXNhZ2VEaXNhYmxlZCA9IGZhbHNlO1xuICAgIHNlbGYudXNhZ2UgPSAobXNnLCBkZXNjcmlwdGlvbikgPT4ge1xuICAgICAgICBpZiAobXNnID09PSBudWxsKSB7XG4gICAgICAgICAgICB1c2FnZURpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHVzYWdlcyA9IFtdO1xuICAgICAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgICAgIH1cbiAgICAgICAgdXNhZ2VEaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICB1c2FnZXMucHVzaChbbXNnLCBkZXNjcmlwdGlvbiB8fCAnJ10pO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0VXNhZ2UgPSAoKSA9PiB7XG4gICAgICAgIHJldHVybiB1c2FnZXM7XG4gICAgfTtcbiAgICBzZWxmLmdldFVzYWdlRGlzYWJsZWQgPSAoKSA9PiB7XG4gICAgICAgIHJldHVybiB1c2FnZURpc2FibGVkO1xuICAgIH07XG4gICAgc2VsZi5nZXRQb3NpdGlvbmFsR3JvdXBOYW1lID0gKCkgPT4ge1xuICAgICAgICByZXR1cm4gX18oJ1Bvc2l0aW9uYWxzOicpO1xuICAgIH07XG4gICAgbGV0IGV4YW1wbGVzID0gW107XG4gICAgc2VsZi5leGFtcGxlID0gKGNtZCwgZGVzY3JpcHRpb24pID0+IHtcbiAgICAgICAgZXhhbXBsZXMucHVzaChbY21kLCBkZXNjcmlwdGlvbiB8fCAnJ10pO1xuICAgIH07XG4gICAgbGV0IGNvbW1hbmRzID0gW107XG4gICAgc2VsZi5jb21tYW5kID0gZnVuY3Rpb24gY29tbWFuZChjbWQsIGRlc2NyaXB0aW9uLCBpc0RlZmF1bHQsIGFsaWFzZXMsIGRlcHJlY2F0ZWQgPSBmYWxzZSkge1xuICAgICAgICBpZiAoaXNEZWZhdWx0KSB7XG4gICAgICAgICAgICBjb21tYW5kcyA9IGNvbW1hbmRzLm1hcChjbWRBcnJheSA9PiB7XG4gICAgICAgICAgICAgICAgY21kQXJyYXlbMl0gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICByZXR1cm4gY21kQXJyYXk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBjb21tYW5kcy5wdXNoKFtjbWQsIGRlc2NyaXB0aW9uIHx8ICcnLCBpc0RlZmF1bHQsIGFsaWFzZXMsIGRlcHJlY2F0ZWRdKTtcbiAgICB9O1xuICAgIHNlbGYuZ2V0Q29tbWFuZHMgPSAoKSA9PiBjb21tYW5kcztcbiAgICBsZXQgZGVzY3JpcHRpb25zID0ge307XG4gICAgc2VsZi5kZXNjcmliZSA9IGZ1bmN0aW9uIGRlc2NyaWJlKGtleU9yS2V5cywgZGVzYykge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShrZXlPcktleXMpKSB7XG4gICAgICAgICAgICBrZXlPcktleXMuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlc2NyaWJlKGssIGRlc2MpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodHlwZW9mIGtleU9yS2V5cyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGtleU9yS2V5cykuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlc2NyaWJlKGssIGtleU9yS2V5c1trXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uc1trZXlPcktleXNdID0gZGVzYztcbiAgICAgICAgfVxuICAgIH07XG4gICAgc2VsZi5nZXREZXNjcmlwdGlvbnMgPSAoKSA9PiBkZXNjcmlwdGlvbnM7XG4gICAgbGV0IGVwaWxvZ3MgPSBbXTtcbiAgICBzZWxmLmVwaWxvZyA9IG1zZyA9PiB7XG4gICAgICAgIGVwaWxvZ3MucHVzaChtc2cpO1xuICAgIH07XG4gICAgbGV0IHdyYXBTZXQgPSBmYWxzZTtcbiAgICBsZXQgd3JhcDtcbiAgICBzZWxmLndyYXAgPSBjb2xzID0+IHtcbiAgICAgICAgd3JhcFNldCA9IHRydWU7XG4gICAgICAgIHdyYXAgPSBjb2xzO1xuICAgIH07XG4gICAgZnVuY3Rpb24gZ2V0V3JhcCgpIHtcbiAgICAgICAgaWYgKCF3cmFwU2V0KSB7XG4gICAgICAgICAgICB3cmFwID0gd2luZG93V2lkdGgoKTtcbiAgICAgICAgICAgIHdyYXBTZXQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB3cmFwO1xuICAgIH1cbiAgICBjb25zdCBkZWZlclkxOG5Mb29rdXBQcmVmaXggPSAnX195YXJnc1N0cmluZ19fOic7XG4gICAgc2VsZi5kZWZlclkxOG5Mb29rdXAgPSBzdHIgPT4gZGVmZXJZMThuTG9va3VwUHJlZml4ICsgc3RyO1xuICAgIHNlbGYuaGVscCA9IGZ1bmN0aW9uIGhlbHAoKSB7XG4gICAgICAgIGlmIChjYWNoZWRIZWxwTWVzc2FnZSlcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRIZWxwTWVzc2FnZTtcbiAgICAgICAgbm9ybWFsaXplQWxpYXNlcygpO1xuICAgICAgICBjb25zdCBiYXNlJDAgPSB5YXJncy5jdXN0b21TY3JpcHROYW1lXG4gICAgICAgICAgICA/IHlhcmdzLiQwXG4gICAgICAgICAgICA6IHNoaW0ucGF0aC5iYXNlbmFtZSh5YXJncy4kMCk7XG4gICAgICAgIGNvbnN0IGRlbWFuZGVkT3B0aW9ucyA9IHlhcmdzLmdldERlbWFuZGVkT3B0aW9ucygpO1xuICAgICAgICBjb25zdCBkZW1hbmRlZENvbW1hbmRzID0geWFyZ3MuZ2V0RGVtYW5kZWRDb21tYW5kcygpO1xuICAgICAgICBjb25zdCBkZXByZWNhdGVkT3B0aW9ucyA9IHlhcmdzLmdldERlcHJlY2F0ZWRPcHRpb25zKCk7XG4gICAgICAgIGNvbnN0IGdyb3VwcyA9IHlhcmdzLmdldEdyb3VwcygpO1xuICAgICAgICBjb25zdCBvcHRpb25zID0geWFyZ3MuZ2V0T3B0aW9ucygpO1xuICAgICAgICBsZXQga2V5cyA9IFtdO1xuICAgICAgICBrZXlzID0ga2V5cy5jb25jYXQoT2JqZWN0LmtleXMoZGVzY3JpcHRpb25zKSk7XG4gICAgICAgIGtleXMgPSBrZXlzLmNvbmNhdChPYmplY3Qua2V5cyhkZW1hbmRlZE9wdGlvbnMpKTtcbiAgICAgICAga2V5cyA9IGtleXMuY29uY2F0KE9iamVjdC5rZXlzKGRlbWFuZGVkQ29tbWFuZHMpKTtcbiAgICAgICAga2V5cyA9IGtleXMuY29uY2F0KE9iamVjdC5rZXlzKG9wdGlvbnMuZGVmYXVsdCkpO1xuICAgICAgICBrZXlzID0ga2V5cy5maWx0ZXIoZmlsdGVySGlkZGVuT3B0aW9ucyk7XG4gICAgICAgIGtleXMgPSBPYmplY3Qua2V5cyhrZXlzLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgICAgIGlmIChrZXkgIT09ICdfJylcbiAgICAgICAgICAgICAgICBhY2Nba2V5XSA9IHRydWU7XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSkpO1xuICAgICAgICBjb25zdCB0aGVXcmFwID0gZ2V0V3JhcCgpO1xuICAgICAgICBjb25zdCB1aSA9IHNoaW0uY2xpdWkoe1xuICAgICAgICAgICAgd2lkdGg6IHRoZVdyYXAsXG4gICAgICAgICAgICB3cmFwOiAhIXRoZVdyYXAsXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXVzYWdlRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGlmICh1c2FnZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdXNhZ2VzLmZvckVhY2godXNhZ2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICB1aS5kaXYoYCR7dXNhZ2VbMF0ucmVwbGFjZSgvXFwkMC9nLCBiYXNlJDApfWApO1xuICAgICAgICAgICAgICAgICAgICBpZiAodXNhZ2VbMV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVpLmRpdih7IHRleHQ6IGAke3VzYWdlWzFdfWAsIHBhZGRpbmc6IFsxLCAwLCAwLCAwXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHVpLmRpdigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY29tbWFuZHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgbGV0IHUgPSBudWxsO1xuICAgICAgICAgICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8pIHtcbiAgICAgICAgICAgICAgICAgICAgdSA9IGAke2Jhc2UkMH0gPCR7X18oJ2NvbW1hbmQnKX0+XFxuYDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHUgPSBgJHtiYXNlJDB9IFske19fKCdjb21tYW5kJyl9XVxcbmA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHVpLmRpdihgJHt1fWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChjb21tYW5kcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHVpLmRpdihfXygnQ29tbWFuZHM6JykpO1xuICAgICAgICAgICAgY29uc3QgY29udGV4dCA9IHlhcmdzLmdldENvbnRleHQoKTtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudENvbW1hbmRzID0gY29udGV4dC5jb21tYW5kcy5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGAke2NvbnRleHQuY29tbWFuZHMuam9pbignICcpfSBgXG4gICAgICAgICAgICAgICAgOiAnJztcbiAgICAgICAgICAgIGlmICh5YXJncy5nZXRQYXJzZXJDb25maWd1cmF0aW9uKClbJ3NvcnQtY29tbWFuZHMnXSA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgICAgIGNvbW1hbmRzID0gY29tbWFuZHMuc29ydCgoYSwgYikgPT4gYVswXS5sb2NhbGVDb21wYXJlKGJbMF0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbW1hbmRzLmZvckVhY2goY29tbWFuZCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29tbWFuZFN0cmluZyA9IGAke2Jhc2UkMH0gJHtwYXJlbnRDb21tYW5kc30ke2NvbW1hbmRbMF0ucmVwbGFjZSgvXlxcJDAgPy8sICcnKX1gO1xuICAgICAgICAgICAgICAgIHVpLnNwYW4oe1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiBjb21tYW5kU3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMiwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBtYXhXaWR0aChjb21tYW5kcywgdGhlV3JhcCwgYCR7YmFzZSQwfSR7cGFyZW50Q29tbWFuZHN9YCkgKyA0LFxuICAgICAgICAgICAgICAgIH0sIHsgdGV4dDogY29tbWFuZFsxXSB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCBoaW50cyA9IFtdO1xuICAgICAgICAgICAgICAgIGlmIChjb21tYW5kWzJdKVxuICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnZGVmYXVsdCcpfV1gKTtcbiAgICAgICAgICAgICAgICBpZiAoY29tbWFuZFszXSAmJiBjb21tYW5kWzNdLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnYWxpYXNlczonKX0gJHtjb21tYW5kWzNdLmpvaW4oJywgJyl9XWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoY29tbWFuZFs0XSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGNvbW1hbmRbNF0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnZGVwcmVjYXRlZDogJXMnLCBjb21tYW5kWzRdKX1dYCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnZGVwcmVjYXRlZCcpfV1gKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaGludHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHVpLmRpdih7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBoaW50cy5qb2luKCcgJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMCwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbjogJ3JpZ2h0JyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB1aS5kaXYoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHVpLmRpdigpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFsaWFzS2V5cyA9IChPYmplY3Qua2V5cyhvcHRpb25zLmFsaWFzKSB8fCBbXSkuY29uY2F0KE9iamVjdC5rZXlzKHlhcmdzLnBhcnNlZC5uZXdBbGlhc2VzKSB8fCBbXSk7XG4gICAgICAgIGtleXMgPSBrZXlzLmZpbHRlcihrZXkgPT4gIXlhcmdzLnBhcnNlZC5uZXdBbGlhc2VzW2tleV0gJiZcbiAgICAgICAgICAgIGFsaWFzS2V5cy5ldmVyeShhbGlhcyA9PiAob3B0aW9ucy5hbGlhc1thbGlhc10gfHwgW10pLmluZGV4T2Yoa2V5KSA9PT0gLTEpKTtcbiAgICAgICAgY29uc3QgZGVmYXVsdEdyb3VwID0gX18oJ09wdGlvbnM6Jyk7XG4gICAgICAgIGlmICghZ3JvdXBzW2RlZmF1bHRHcm91cF0pXG4gICAgICAgICAgICBncm91cHNbZGVmYXVsdEdyb3VwXSA9IFtdO1xuICAgICAgICBhZGRVbmdyb3VwZWRLZXlzKGtleXMsIG9wdGlvbnMuYWxpYXMsIGdyb3VwcywgZGVmYXVsdEdyb3VwKTtcbiAgICAgICAgY29uc3QgaXNMb25nU3dpdGNoID0gKHN3KSA9PiAvXi0tLy50ZXN0KGdldFRleHQoc3cpKTtcbiAgICAgICAgY29uc3QgZGlzcGxheWVkR3JvdXBzID0gT2JqZWN0LmtleXMoZ3JvdXBzKVxuICAgICAgICAgICAgLmZpbHRlcihncm91cE5hbWUgPT4gZ3JvdXBzW2dyb3VwTmFtZV0ubGVuZ3RoID4gMClcbiAgICAgICAgICAgIC5tYXAoZ3JvdXBOYW1lID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRLZXlzID0gZ3JvdXBzW2dyb3VwTmFtZV1cbiAgICAgICAgICAgICAgICAuZmlsdGVyKGZpbHRlckhpZGRlbk9wdGlvbnMpXG4gICAgICAgICAgICAgICAgLm1hcChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh+YWxpYXNLZXlzLmluZGV4T2Yoa2V5KSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGtleTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMCwgYWxpYXNLZXk7IChhbGlhc0tleSA9IGFsaWFzS2V5c1tpXSkgIT09IHVuZGVmaW5lZDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh+KG9wdGlvbnMuYWxpYXNbYWxpYXNLZXldIHx8IFtdKS5pbmRleE9mKGtleSkpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWxpYXNLZXk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBrZXk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiB7IGdyb3VwTmFtZSwgbm9ybWFsaXplZEtleXMgfTtcbiAgICAgICAgfSlcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgbm9ybWFsaXplZEtleXMgfSkgPT4gbm9ybWFsaXplZEtleXMubGVuZ3RoID4gMClcbiAgICAgICAgICAgIC5tYXAoKHsgZ3JvdXBOYW1lLCBub3JtYWxpemVkS2V5cyB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzd2l0Y2hlcyA9IG5vcm1hbGl6ZWRLZXlzLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgICAgICAgICBhY2Nba2V5XSA9IFtrZXldXG4gICAgICAgICAgICAgICAgICAgIC5jb25jYXQob3B0aW9ucy5hbGlhc1trZXldIHx8IFtdKVxuICAgICAgICAgICAgICAgICAgICAubWFwKHN3ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGdyb3VwTmFtZSA9PT0gc2VsZi5nZXRQb3NpdGlvbmFsR3JvdXBOYW1lKCkpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3c7XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgoL15bMC05XSQvLnRlc3Qoc3cpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyB+b3B0aW9ucy5ib29sZWFuLmluZGV4T2Yoa2V5KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICctJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICctLSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHN3Lmxlbmd0aCA+IDFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAnLS0nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy0nKSArIHN3KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5zb3J0KChzdzEsIHN3MikgPT4gaXNMb25nU3dpdGNoKHN3MSkgPT09IGlzTG9uZ1N3aXRjaChzdzIpXG4gICAgICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgICAgICA6IGlzTG9uZ1N3aXRjaChzdzEpXG4gICAgICAgICAgICAgICAgICAgICAgICA/IDFcbiAgICAgICAgICAgICAgICAgICAgICAgIDogLTEpXG4gICAgICAgICAgICAgICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgICB9LCB7fSk7XG4gICAgICAgICAgICByZXR1cm4geyBncm91cE5hbWUsIG5vcm1hbGl6ZWRLZXlzLCBzd2l0Y2hlcyB9O1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3Qgc2hvcnRTd2l0Y2hlc1VzZWQgPSBkaXNwbGF5ZWRHcm91cHNcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgZ3JvdXBOYW1lIH0pID0+IGdyb3VwTmFtZSAhPT0gc2VsZi5nZXRQb3NpdGlvbmFsR3JvdXBOYW1lKCkpXG4gICAgICAgICAgICAuc29tZSgoeyBub3JtYWxpemVkS2V5cywgc3dpdGNoZXMgfSkgPT4gIW5vcm1hbGl6ZWRLZXlzLmV2ZXJ5KGtleSA9PiBpc0xvbmdTd2l0Y2goc3dpdGNoZXNba2V5XSkpKTtcbiAgICAgICAgaWYgKHNob3J0U3dpdGNoZXNVc2VkKSB7XG4gICAgICAgICAgICBkaXNwbGF5ZWRHcm91cHNcbiAgICAgICAgICAgICAgICAuZmlsdGVyKCh7IGdyb3VwTmFtZSB9KSA9PiBncm91cE5hbWUgIT09IHNlbGYuZ2V0UG9zaXRpb25hbEdyb3VwTmFtZSgpKVxuICAgICAgICAgICAgICAgIC5mb3JFYWNoKCh7IG5vcm1hbGl6ZWRLZXlzLCBzd2l0Y2hlcyB9KSA9PiB7XG4gICAgICAgICAgICAgICAgbm9ybWFsaXplZEtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNMb25nU3dpdGNoKHN3aXRjaGVzW2tleV0pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2hlc1trZXldID0gYWRkSW5kZW50YXRpb24oc3dpdGNoZXNba2V5XSwgJy14LCAnLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGRpc3BsYXllZEdyb3Vwcy5mb3JFYWNoKCh7IGdyb3VwTmFtZSwgbm9ybWFsaXplZEtleXMsIHN3aXRjaGVzIH0pID0+IHtcbiAgICAgICAgICAgIHVpLmRpdihncm91cE5hbWUpO1xuICAgICAgICAgICAgbm9ybWFsaXplZEtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGtzd2l0Y2ggPSBzd2l0Y2hlc1trZXldO1xuICAgICAgICAgICAgICAgIGxldCBkZXNjID0gZGVzY3JpcHRpb25zW2tleV0gfHwgJyc7XG4gICAgICAgICAgICAgICAgbGV0IHR5cGUgPSBudWxsO1xuICAgICAgICAgICAgICAgIGlmICh+ZGVzYy5sYXN0SW5kZXhPZihkZWZlclkxOG5Mb29rdXBQcmVmaXgpKVxuICAgICAgICAgICAgICAgICAgICBkZXNjID0gX18oZGVzYy5zdWJzdHJpbmcoZGVmZXJZMThuTG9va3VwUHJlZml4Lmxlbmd0aCkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ib29sZWFuLmluZGV4T2Yoa2V5KSlcbiAgICAgICAgICAgICAgICAgICAgdHlwZSA9IGBbJHtfXygnYm9vbGVhbicpfV1gO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5jb3VudC5pbmRleE9mKGtleSkpXG4gICAgICAgICAgICAgICAgICAgIHR5cGUgPSBgWyR7X18oJ2NvdW50Jyl9XWA7XG4gICAgICAgICAgICAgICAgaWYgKH5vcHRpb25zLnN0cmluZy5pbmRleE9mKGtleSkpXG4gICAgICAgICAgICAgICAgICAgIHR5cGUgPSBgWyR7X18oJ3N0cmluZycpfV1gO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ub3JtYWxpemUuaW5kZXhPZihrZXkpKVxuICAgICAgICAgICAgICAgICAgICB0eXBlID0gYFske19fKCdzdHJpbmcnKX1dYDtcbiAgICAgICAgICAgICAgICBpZiAofm9wdGlvbnMuYXJyYXkuaW5kZXhPZihrZXkpKVxuICAgICAgICAgICAgICAgICAgICB0eXBlID0gYFske19fKCdhcnJheScpfV1gO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5udW1iZXIuaW5kZXhPZihrZXkpKVxuICAgICAgICAgICAgICAgICAgICB0eXBlID0gYFske19fKCdudW1iZXInKX1dYDtcbiAgICAgICAgICAgICAgICBjb25zdCBkZXByZWNhdGVkRXh0cmEgPSAoZGVwcmVjYXRlZCkgPT4gdHlwZW9mIGRlcHJlY2F0ZWQgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICAgICAgICAgID8gYFske19fKCdkZXByZWNhdGVkOiAlcycsIGRlcHJlY2F0ZWQpfV1gXG4gICAgICAgICAgICAgICAgICAgIDogYFske19fKCdkZXByZWNhdGVkJyl9XWA7XG4gICAgICAgICAgICAgICAgY29uc3QgZXh0cmEgPSBbXG4gICAgICAgICAgICAgICAgICAgIGtleSBpbiBkZXByZWNhdGVkT3B0aW9uc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBkZXByZWNhdGVkRXh0cmEoZGVwcmVjYXRlZE9wdGlvbnNba2V5XSlcbiAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgICAgICAgICAga2V5IGluIGRlbWFuZGVkT3B0aW9ucyA/IGBbJHtfXygncmVxdWlyZWQnKX1dYCA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuY2hvaWNlcyAmJiBvcHRpb25zLmNob2ljZXNba2V5XVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBgWyR7X18oJ2Nob2ljZXM6Jyl9ICR7c2VsZi5zdHJpbmdpZmllZFZhbHVlcyhvcHRpb25zLmNob2ljZXNba2V5XSl9XWBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdFN0cmluZyhvcHRpb25zLmRlZmF1bHRba2V5XSwgb3B0aW9ucy5kZWZhdWx0RGVzY3JpcHRpb25ba2V5XSksXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgICAgICAgICAgIC5qb2luKCcgJyk7XG4gICAgICAgICAgICAgICAgdWkuc3Bhbih7XG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IGdldFRleHQoa3N3aXRjaCksXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IFswLCAyLCAwLCAyICsgZ2V0SW5kZW50YXRpb24oa3N3aXRjaCldLFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWF4V2lkdGgoc3dpdGNoZXMsIHRoZVdyYXApICsgNCxcbiAgICAgICAgICAgICAgICB9LCBkZXNjKTtcbiAgICAgICAgICAgICAgICBpZiAoZXh0cmEpXG4gICAgICAgICAgICAgICAgICAgIHVpLmRpdih7IHRleHQ6IGV4dHJhLCBwYWRkaW5nOiBbMCwgMCwgMCwgMl0sIGFsaWduOiAncmlnaHQnIH0pO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdWkuZGl2KCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHVpLmRpdigpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGV4YW1wbGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdWkuZGl2KF9fKCdFeGFtcGxlczonKSk7XG4gICAgICAgICAgICBleGFtcGxlcy5mb3JFYWNoKGV4YW1wbGUgPT4ge1xuICAgICAgICAgICAgICAgIGV4YW1wbGVbMF0gPSBleGFtcGxlWzBdLnJlcGxhY2UoL1xcJDAvZywgYmFzZSQwKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZXhhbXBsZXMuZm9yRWFjaChleGFtcGxlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXhhbXBsZVsxXSA9PT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgdWkuZGl2KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IGV4YW1wbGVbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMiwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdWkuZGl2KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IGV4YW1wbGVbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMiwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWF4V2lkdGgoZXhhbXBsZXMsIHRoZVdyYXApICsgNCxcbiAgICAgICAgICAgICAgICAgICAgfSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogZXhhbXBsZVsxXSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB1aS5kaXYoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXBpbG9ncy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBlID0gZXBpbG9nc1xuICAgICAgICAgICAgICAgIC5tYXAoZXBpbG9nID0+IGVwaWxvZy5yZXBsYWNlKC9cXCQwL2csIGJhc2UkMCkpXG4gICAgICAgICAgICAgICAgLmpvaW4oJ1xcbicpO1xuICAgICAgICAgICAgdWkuZGl2KGAke2V9XFxuYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVpLnRvU3RyaW5nKCkucmVwbGFjZSgvXFxzKiQvLCAnJyk7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBtYXhXaWR0aCh0YWJsZSwgdGhlV3JhcCwgbW9kaWZpZXIpIHtcbiAgICAgICAgbGV0IHdpZHRoID0gMDtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhYmxlKSkge1xuICAgICAgICAgICAgdGFibGUgPSBPYmplY3QudmFsdWVzKHRhYmxlKS5tYXAodiA9PiBbdl0pO1xuICAgICAgICB9XG4gICAgICAgIHRhYmxlLmZvckVhY2godiA9PiB7XG4gICAgICAgICAgICB3aWR0aCA9IE1hdGgubWF4KHNoaW0uc3RyaW5nV2lkdGgobW9kaWZpZXIgPyBgJHttb2RpZmllcn0gJHtnZXRUZXh0KHZbMF0pfWAgOiBnZXRUZXh0KHZbMF0pKSArIGdldEluZGVudGF0aW9uKHZbMF0pLCB3aWR0aCk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhlV3JhcClcbiAgICAgICAgICAgIHdpZHRoID0gTWF0aC5taW4od2lkdGgsIHBhcnNlSW50KCh0aGVXcmFwICogMC41KS50b1N0cmluZygpLCAxMCkpO1xuICAgICAgICByZXR1cm4gd2lkdGg7XG4gICAgfVxuICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUFsaWFzZXMoKSB7XG4gICAgICAgIGNvbnN0IGRlbWFuZGVkT3B0aW9ucyA9IHlhcmdzLmdldERlbWFuZGVkT3B0aW9ucygpO1xuICAgICAgICBjb25zdCBvcHRpb25zID0geWFyZ3MuZ2V0T3B0aW9ucygpO1xuICAgICAgICAoT2JqZWN0LmtleXMob3B0aW9ucy5hbGlhcykgfHwgW10pLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIG9wdGlvbnMuYWxpYXNba2V5XS5mb3JFYWNoKGFsaWFzID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRpb25zW2FsaWFzXSlcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5kZXNjcmliZShrZXksIGRlc2NyaXB0aW9uc1thbGlhc10pO1xuICAgICAgICAgICAgICAgIGlmIChhbGlhcyBpbiBkZW1hbmRlZE9wdGlvbnMpXG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLmRlbWFuZE9wdGlvbihrZXksIGRlbWFuZGVkT3B0aW9uc1thbGlhc10pO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ib29sZWFuLmluZGV4T2YoYWxpYXMpKVxuICAgICAgICAgICAgICAgICAgICB5YXJncy5ib29sZWFuKGtleSk7XG4gICAgICAgICAgICAgICAgaWYgKH5vcHRpb25zLmNvdW50LmluZGV4T2YoYWxpYXMpKVxuICAgICAgICAgICAgICAgICAgICB5YXJncy5jb3VudChrZXkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5zdHJpbmcuaW5kZXhPZihhbGlhcykpXG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLnN0cmluZyhrZXkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ub3JtYWxpemUuaW5kZXhPZihhbGlhcykpXG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLm5vcm1hbGl6ZShrZXkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5hcnJheS5pbmRleE9mKGFsaWFzKSlcbiAgICAgICAgICAgICAgICAgICAgeWFyZ3MuYXJyYXkoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAofm9wdGlvbnMubnVtYmVyLmluZGV4T2YoYWxpYXMpKVxuICAgICAgICAgICAgICAgICAgICB5YXJncy5udW1iZXIoa2V5KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgbGV0IGNhY2hlZEhlbHBNZXNzYWdlO1xuICAgIHNlbGYuY2FjaGVIZWxwTWVzc2FnZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY2FjaGVkSGVscE1lc3NhZ2UgPSB0aGlzLmhlbHAoKTtcbiAgICB9O1xuICAgIHNlbGYuY2xlYXJDYWNoZWRIZWxwTWVzc2FnZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY2FjaGVkSGVscE1lc3NhZ2UgPSB1bmRlZmluZWQ7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBhZGRVbmdyb3VwZWRLZXlzKGtleXMsIGFsaWFzZXMsIGdyb3VwcywgZGVmYXVsdEdyb3VwKSB7XG4gICAgICAgIGxldCBncm91cGVkS2V5cyA9IFtdO1xuICAgICAgICBsZXQgdG9DaGVjayA9IG51bGw7XG4gICAgICAgIE9iamVjdC5rZXlzKGdyb3VwcykuZm9yRWFjaChncm91cCA9PiB7XG4gICAgICAgICAgICBncm91cGVkS2V5cyA9IGdyb3VwZWRLZXlzLmNvbmNhdChncm91cHNbZ3JvdXBdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgdG9DaGVjayA9IFtrZXldLmNvbmNhdChhbGlhc2VzW2tleV0pO1xuICAgICAgICAgICAgaWYgKCF0b0NoZWNrLnNvbWUoayA9PiBncm91cGVkS2V5cy5pbmRleE9mKGspICE9PSAtMSkpIHtcbiAgICAgICAgICAgICAgICBncm91cHNbZGVmYXVsdEdyb3VwXS5wdXNoKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gZ3JvdXBlZEtleXM7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGZpbHRlckhpZGRlbk9wdGlvbnMoa2V5KSB7XG4gICAgICAgIHJldHVybiAoeWFyZ3MuZ2V0T3B0aW9ucygpLmhpZGRlbk9wdGlvbnMuaW5kZXhPZihrZXkpIDwgMCB8fFxuICAgICAgICAgICAgeWFyZ3MucGFyc2VkLmFyZ3ZbeWFyZ3MuZ2V0T3B0aW9ucygpLnNob3dIaWRkZW5PcHRdKTtcbiAgICB9XG4gICAgc2VsZi5zaG93SGVscCA9IChsZXZlbCkgPT4ge1xuICAgICAgICBjb25zdCBsb2dnZXIgPSB5YXJncy5fZ2V0TG9nZ2VySW5zdGFuY2UoKTtcbiAgICAgICAgaWYgKCFsZXZlbClcbiAgICAgICAgICAgIGxldmVsID0gJ2Vycm9yJztcbiAgICAgICAgY29uc3QgZW1pdCA9IHR5cGVvZiBsZXZlbCA9PT0gJ2Z1bmN0aW9uJyA/IGxldmVsIDogbG9nZ2VyW2xldmVsXTtcbiAgICAgICAgZW1pdChzZWxmLmhlbHAoKSk7XG4gICAgfTtcbiAgICBzZWxmLmZ1bmN0aW9uRGVzY3JpcHRpb24gPSBmbiA9PiB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gZm4ubmFtZVxuICAgICAgICAgICAgPyBzaGltLlBhcnNlci5kZWNhbWVsaXplKGZuLm5hbWUsICctJylcbiAgICAgICAgICAgIDogX18oJ2dlbmVyYXRlZC12YWx1ZScpO1xuICAgICAgICByZXR1cm4gWycoJywgZGVzY3JpcHRpb24sICcpJ10uam9pbignJyk7XG4gICAgfTtcbiAgICBzZWxmLnN0cmluZ2lmaWVkVmFsdWVzID0gZnVuY3Rpb24gc3RyaW5naWZpZWRWYWx1ZXModmFsdWVzLCBzZXBhcmF0b3IpIHtcbiAgICAgICAgbGV0IHN0cmluZyA9ICcnO1xuICAgICAgICBjb25zdCBzZXAgPSBzZXBhcmF0b3IgfHwgJywgJztcbiAgICAgICAgY29uc3QgYXJyYXkgPSBbXS5jb25jYXQodmFsdWVzKTtcbiAgICAgICAgaWYgKCF2YWx1ZXMgfHwgIWFycmF5Lmxlbmd0aClcbiAgICAgICAgICAgIHJldHVybiBzdHJpbmc7XG4gICAgICAgIGFycmF5LmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICAgICAgaWYgKHN0cmluZy5sZW5ndGgpXG4gICAgICAgICAgICAgICAgc3RyaW5nICs9IHNlcDtcbiAgICAgICAgICAgIHN0cmluZyArPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gc3RyaW5nO1xuICAgIH07XG4gICAgZnVuY3Rpb24gZGVmYXVsdFN0cmluZyh2YWx1ZSwgZGVmYXVsdERlc2NyaXB0aW9uKSB7XG4gICAgICAgIGxldCBzdHJpbmcgPSBgWyR7X18oJ2RlZmF1bHQ6Jyl9IGA7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkICYmICFkZWZhdWx0RGVzY3JpcHRpb24pXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgaWYgKGRlZmF1bHREZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgc3RyaW5nICs9IGRlZmF1bHREZXNjcmlwdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgICAgICAgICAgICAgc3RyaW5nICs9IGBcIiR7dmFsdWV9XCJgO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdvYmplY3QnOlxuICAgICAgICAgICAgICAgICAgICBzdHJpbmcgKz0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBzdHJpbmcgKz0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGAke3N0cmluZ31dYDtcbiAgICB9XG4gICAgZnVuY3Rpb24gd2luZG93V2lkdGgoKSB7XG4gICAgICAgIGNvbnN0IG1heFdpZHRoID0gODA7XG4gICAgICAgIGlmIChzaGltLnByb2Nlc3Muc3RkQ29sdW1ucykge1xuICAgICAgICAgICAgcmV0dXJuIE1hdGgubWluKG1heFdpZHRoLCBzaGltLnByb2Nlc3Muc3RkQ29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbWF4V2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbGV0IHZlcnNpb24gPSBudWxsO1xuICAgIHNlbGYudmVyc2lvbiA9IHZlciA9PiB7XG4gICAgICAgIHZlcnNpb24gPSB2ZXI7XG4gICAgfTtcbiAgICBzZWxmLnNob3dWZXJzaW9uID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBsb2dnZXIgPSB5YXJncy5fZ2V0TG9nZ2VySW5zdGFuY2UoKTtcbiAgICAgICAgbG9nZ2VyLmxvZyh2ZXJzaW9uKTtcbiAgICB9O1xuICAgIHNlbGYucmVzZXQgPSBmdW5jdGlvbiByZXNldChsb2NhbExvb2t1cCkge1xuICAgICAgICBmYWlsTWVzc2FnZSA9IG51bGw7XG4gICAgICAgIGZhaWx1cmVPdXRwdXQgPSBmYWxzZTtcbiAgICAgICAgdXNhZ2VzID0gW107XG4gICAgICAgIHVzYWdlRGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgZXBpbG9ncyA9IFtdO1xuICAgICAgICBleGFtcGxlcyA9IFtdO1xuICAgICAgICBjb21tYW5kcyA9IFtdO1xuICAgICAgICBkZXNjcmlwdGlvbnMgPSBvYmpGaWx0ZXIoZGVzY3JpcHRpb25zLCBrID0+ICFsb2NhbExvb2t1cFtrXSk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgY29uc3QgZnJvemVucyA9IFtdO1xuICAgIHNlbGYuZnJlZXplID0gZnVuY3Rpb24gZnJlZXplKCkge1xuICAgICAgICBmcm96ZW5zLnB1c2goe1xuICAgICAgICAgICAgZmFpbE1lc3NhZ2UsXG4gICAgICAgICAgICBmYWlsdXJlT3V0cHV0LFxuICAgICAgICAgICAgdXNhZ2VzLFxuICAgICAgICAgICAgdXNhZ2VEaXNhYmxlZCxcbiAgICAgICAgICAgIGVwaWxvZ3MsXG4gICAgICAgICAgICBleGFtcGxlcyxcbiAgICAgICAgICAgIGNvbW1hbmRzLFxuICAgICAgICAgICAgZGVzY3JpcHRpb25zLFxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHNlbGYudW5mcmVlemUgPSBmdW5jdGlvbiB1bmZyZWV6ZSgpIHtcbiAgICAgICAgY29uc3QgZnJvemVuID0gZnJvemVucy5wb3AoKTtcbiAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwoZnJvemVuLCB1bmRlZmluZWQsIHNoaW0pO1xuICAgICAgICAoe1xuICAgICAgICAgICAgZmFpbE1lc3NhZ2UsXG4gICAgICAgICAgICBmYWlsdXJlT3V0cHV0LFxuICAgICAgICAgICAgdXNhZ2VzLFxuICAgICAgICAgICAgdXNhZ2VEaXNhYmxlZCxcbiAgICAgICAgICAgIGVwaWxvZ3MsXG4gICAgICAgICAgICBleGFtcGxlcyxcbiAgICAgICAgICAgIGNvbW1hbmRzLFxuICAgICAgICAgICAgZGVzY3JpcHRpb25zLFxuICAgICAgICB9ID0gZnJvemVuKTtcbiAgICB9O1xuICAgIHJldHVybiBzZWxmO1xufVxuZnVuY3Rpb24gaXNJbmRlbnRlZFRleHQodGV4dCkge1xuICAgIHJldHVybiB0eXBlb2YgdGV4dCA9PT0gJ29iamVjdCc7XG59XG5mdW5jdGlvbiBhZGRJbmRlbnRhdGlvbih0ZXh0LCBpbmRlbnQpIHtcbiAgICByZXR1cm4gaXNJbmRlbnRlZFRleHQodGV4dClcbiAgICAgICAgPyB7IHRleHQ6IHRleHQudGV4dCwgaW5kZW50YXRpb246IHRleHQuaW5kZW50YXRpb24gKyBpbmRlbnQgfVxuICAgICAgICA6IHsgdGV4dCwgaW5kZW50YXRpb246IGluZGVudCB9O1xufVxuZnVuY3Rpb24gZ2V0SW5kZW50YXRpb24odGV4dCkge1xuICAgIHJldHVybiBpc0luZGVudGVkVGV4dCh0ZXh0KSA/IHRleHQuaW5kZW50YXRpb24gOiAwO1xufVxuZnVuY3Rpb24gZ2V0VGV4dCh0ZXh0KSB7XG4gICAgcmV0dXJuIGlzSW5kZW50ZWRUZXh0KHRleHQpID8gdGV4dC50ZXh0IDogdGV4dDtcbn1cblxuY29uc3QgY29tcGxldGlvblNoVGVtcGxhdGUgPSBgIyMjLWJlZ2luLXt7YXBwX25hbWV9fS1jb21wbGV0aW9ucy0jIyNcbiNcbiMgeWFyZ3MgY29tbWFuZCBjb21wbGV0aW9uIHNjcmlwdFxuI1xuIyBJbnN0YWxsYXRpb246IHt7YXBwX3BhdGh9fSB7e2NvbXBsZXRpb25fY29tbWFuZH19ID4+IH4vLmJhc2hyY1xuIyAgICBvciB7e2FwcF9wYXRofX0ge3tjb21wbGV0aW9uX2NvbW1hbmR9fSA+PiB+Ly5iYXNoX3Byb2ZpbGUgb24gT1NYLlxuI1xuX3lhcmdzX2NvbXBsZXRpb25zKClcbntcbiAgICBsb2NhbCBjdXJfd29yZCBhcmdzIHR5cGVfbGlzdFxuXG4gICAgY3VyX3dvcmQ9XCJcXCR7Q09NUF9XT1JEU1tDT01QX0NXT1JEXX1cIlxuICAgIGFyZ3M9KFwiXFwke0NPTVBfV09SRFNbQF19XCIpXG5cbiAgICAjIGFzayB5YXJncyB0byBnZW5lcmF0ZSBjb21wbGV0aW9ucy5cbiAgICB0eXBlX2xpc3Q9JCh7e2FwcF9wYXRofX0gLS1nZXQteWFyZ3MtY29tcGxldGlvbnMgXCJcXCR7YXJnc1tAXX1cIilcblxuICAgIENPTVBSRVBMWT0oICQoY29tcGdlbiAtVyBcIlxcJHt0eXBlX2xpc3R9XCIgLS0gXFwke2N1cl93b3JkfSkgKVxuXG4gICAgIyBpZiBubyBtYXRjaCB3YXMgZm91bmQsIGZhbGwgYmFjayB0byBmaWxlbmFtZSBjb21wbGV0aW9uXG4gICAgaWYgWyBcXCR7I0NPTVBSRVBMWVtAXX0gLWVxIDAgXTsgdGhlblxuICAgICAgQ09NUFJFUExZPSgpXG4gICAgZmlcblxuICAgIHJldHVybiAwXG59XG5jb21wbGV0ZSAtbyBkZWZhdWx0IC1GIF95YXJnc19jb21wbGV0aW9ucyB7e2FwcF9uYW1lfX1cbiMjIy1lbmQte3thcHBfbmFtZX19LWNvbXBsZXRpb25zLSMjI1xuYDtcbmNvbnN0IGNvbXBsZXRpb25ac2hUZW1wbGF0ZSA9IGAjIyMtYmVnaW4te3thcHBfbmFtZX19LWNvbXBsZXRpb25zLSMjI1xuI1xuIyB5YXJncyBjb21tYW5kIGNvbXBsZXRpb24gc2NyaXB0XG4jXG4jIEluc3RhbGxhdGlvbjoge3thcHBfcGF0aH19IHt7Y29tcGxldGlvbl9jb21tYW5kfX0gPj4gfi8uenNocmNcbiMgICAgb3Ige3thcHBfcGF0aH19IHt7Y29tcGxldGlvbl9jb21tYW5kfX0gPj4gfi8uenNoX3Byb2ZpbGUgb24gT1NYLlxuI1xuX3t7YXBwX25hbWV9fV95YXJnc19jb21wbGV0aW9ucygpXG57XG4gIGxvY2FsIHJlcGx5XG4gIGxvY2FsIHNpPSRJRlNcbiAgSUZTPSQnXFxuJyByZXBseT0oJChDT01QX0NXT1JEPVwiJCgoQ1VSUkVOVC0xKSlcIiBDT01QX0xJTkU9XCIkQlVGRkVSXCIgQ09NUF9QT0lOVD1cIiRDVVJTT1JcIiB7e2FwcF9wYXRofX0gLS1nZXQteWFyZ3MtY29tcGxldGlvbnMgXCJcXCR7d29yZHNbQF19XCIpKVxuICBJRlM9JHNpXG4gIF9kZXNjcmliZSAndmFsdWVzJyByZXBseVxufVxuY29tcGRlZiBfe3thcHBfbmFtZX19X3lhcmdzX2NvbXBsZXRpb25zIHt7YXBwX25hbWV9fVxuIyMjLWVuZC17e2FwcF9uYW1lfX0tY29tcGxldGlvbnMtIyMjXG5gO1xuXG5mdW5jdGlvbiBjb21wbGV0aW9uKHlhcmdzLCB1c2FnZSwgY29tbWFuZCwgc2hpbSkge1xuICAgIGNvbnN0IHNlbGYgPSB7XG4gICAgICAgIGNvbXBsZXRpb25LZXk6ICdnZXQteWFyZ3MtY29tcGxldGlvbnMnLFxuICAgIH07XG4gICAgbGV0IGFsaWFzZXM7XG4gICAgc2VsZi5zZXRQYXJzZWQgPSBmdW5jdGlvbiBzZXRQYXJzZWQocGFyc2VkKSB7XG4gICAgICAgIGFsaWFzZXMgPSBwYXJzZWQuYWxpYXNlcztcbiAgICB9O1xuICAgIGNvbnN0IHpzaFNoZWxsID0gKHNoaW0uZ2V0RW52KCdTSEVMTCcpICYmIHNoaW0uZ2V0RW52KCdTSEVMTCcpLmluZGV4T2YoJ3pzaCcpICE9PSAtMSkgfHxcbiAgICAgICAgKHNoaW0uZ2V0RW52KCdaU0hfTkFNRScpICYmIHNoaW0uZ2V0RW52KCdaU0hfTkFNRScpLmluZGV4T2YoJ3pzaCcpICE9PSAtMSk7XG4gICAgc2VsZi5nZXRDb21wbGV0aW9uID0gZnVuY3Rpb24gZ2V0Q29tcGxldGlvbihhcmdzLCBkb25lKSB7XG4gICAgICAgIGNvbnN0IGNvbXBsZXRpb25zID0gW107XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSBhcmdzLmxlbmd0aCA/IGFyZ3NbYXJncy5sZW5ndGggLSAxXSA6ICcnO1xuICAgICAgICBjb25zdCBhcmd2ID0geWFyZ3MucGFyc2UoYXJncywgdHJ1ZSk7XG4gICAgICAgIGNvbnN0IHBhcmVudENvbW1hbmRzID0geWFyZ3MuZ2V0Q29udGV4dCgpLmNvbW1hbmRzO1xuICAgICAgICBmdW5jdGlvbiBydW5Db21wbGV0aW9uRnVuY3Rpb24oYXJndikge1xuICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwoY29tcGxldGlvbkZ1bmN0aW9uLCBudWxsLCBzaGltKTtcbiAgICAgICAgICAgIGlmIChpc1N5bmNDb21wbGV0aW9uRnVuY3Rpb24oY29tcGxldGlvbkZ1bmN0aW9uKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGNvbXBsZXRpb25GdW5jdGlvbihjdXJyZW50LCBhcmd2KTtcbiAgICAgICAgICAgICAgICBpZiAoaXNQcm9taXNlKHJlc3VsdCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4obGlzdCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzaGltLnByb2Nlc3MubmV4dFRpY2soKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUobGlzdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaChlcnIgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2hpbS5wcm9jZXNzLm5leHRUaWNrKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBkb25lKHJlc3VsdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkZ1bmN0aW9uKGN1cnJlbnQsIGFyZ3YsIGNvbXBsZXRpb25zID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZG9uZShjb21wbGV0aW9ucyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbXBsZXRpb25GdW5jdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGlzUHJvbWlzZShhcmd2KVxuICAgICAgICAgICAgICAgID8gYXJndi50aGVuKHJ1bkNvbXBsZXRpb25GdW5jdGlvbilcbiAgICAgICAgICAgICAgICA6IHJ1bkNvbXBsZXRpb25GdW5jdGlvbihhcmd2KTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBoYW5kbGVycyA9IGNvbW1hbmQuZ2V0Q29tbWFuZEhhbmRsZXJzKCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBpaSA9IGFyZ3MubGVuZ3RoOyBpIDwgaWk7ICsraSkge1xuICAgICAgICAgICAgaWYgKGhhbmRsZXJzW2FyZ3NbaV1dICYmIGhhbmRsZXJzW2FyZ3NbaV1dLmJ1aWxkZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBidWlsZGVyID0gaGFuZGxlcnNbYXJnc1tpXV0uYnVpbGRlcjtcbiAgICAgICAgICAgICAgICBpZiAoaXNDb21tYW5kQnVpbGRlckNhbGxiYWNrKGJ1aWxkZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHkgPSB5YXJncy5yZXNldCgpO1xuICAgICAgICAgICAgICAgICAgICBidWlsZGVyKHkpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4geS5hcmd2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWN1cnJlbnQubWF0Y2goL14tLykgJiZcbiAgICAgICAgICAgIHBhcmVudENvbW1hbmRzW3BhcmVudENvbW1hbmRzLmxlbmd0aCAtIDFdICE9PSBjdXJyZW50KSB7XG4gICAgICAgICAgICB1c2FnZS5nZXRDb21tYW5kcygpLmZvckVhY2godXNhZ2VDb21tYW5kID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb21tYW5kTmFtZSA9IHBhcnNlQ29tbWFuZCh1c2FnZUNvbW1hbmRbMF0pLmNtZDtcbiAgICAgICAgICAgICAgICBpZiAoYXJncy5pbmRleE9mKGNvbW1hbmROYW1lKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF6c2hTaGVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGlvbnMucHVzaChjb21tYW5kTmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkZXNjID0gdXNhZ2VDb21tYW5kWzFdIHx8ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGlvbnMucHVzaChjb21tYW5kTmFtZS5yZXBsYWNlKC86L2csICdcXFxcOicpICsgJzonICsgZGVzYyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY3VycmVudC5tYXRjaCgvXi0vKSB8fCAoY3VycmVudCA9PT0gJycgJiYgY29tcGxldGlvbnMubGVuZ3RoID09PSAwKSkge1xuICAgICAgICAgICAgY29uc3QgZGVzY3MgPSB1c2FnZS5nZXREZXNjcmlwdGlvbnMoKTtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB5YXJncy5nZXRPcHRpb25zKCk7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhvcHRpb25zLmtleSkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5lZ2FibGUgPSAhIW9wdGlvbnMuY29uZmlndXJhdGlvblsnYm9vbGVhbi1uZWdhdGlvbiddICYmXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuYm9vbGVhbi5pbmNsdWRlcyhrZXkpO1xuICAgICAgICAgICAgICAgIGxldCBrZXlBbmRBbGlhc2VzID0gW2tleV0uY29uY2F0KGFsaWFzZXNba2V5XSB8fCBbXSk7XG4gICAgICAgICAgICAgICAgaWYgKG5lZ2FibGUpXG4gICAgICAgICAgICAgICAgICAgIGtleUFuZEFsaWFzZXMgPSBrZXlBbmRBbGlhc2VzLmNvbmNhdChrZXlBbmRBbGlhc2VzLm1hcChrZXkgPT4gYG5vLSR7a2V5fWApKTtcbiAgICAgICAgICAgICAgICBmdW5jdGlvbiBjb21wbGV0ZU9wdGlvbktleShrZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgbm90SW5BcmdzID0ga2V5QW5kQWxpYXNlcy5ldmVyeSh2YWwgPT4gYXJncy5pbmRleE9mKGAtLSR7dmFsfWApID09PSAtMSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChub3RJbkFyZ3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0c0J5VHdvRGFzaGVzID0gKHMpID0+IC9eLS0vLnRlc3Qocyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1Nob3J0T3B0aW9uID0gKHMpID0+IC9eW14wLTldJC8udGVzdChzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhc2hlcyA9ICFzdGFydHNCeVR3b0Rhc2hlcyhjdXJyZW50KSAmJiBpc1Nob3J0T3B0aW9uKGtleSkgPyAnLScgOiAnLS0nO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF6c2hTaGVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRpb25zLnB1c2goZGFzaGVzICsga2V5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlc2MgPSBkZXNjc1trZXldIHx8ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRpb25zLnB1c2goZGFzaGVzICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7a2V5LnJlcGxhY2UoLzovZywgJ1xcXFw6Jyl9OiR7ZGVzYy5yZXBsYWNlKCdfX3lhcmdzU3RyaW5nX186JywgJycpfWApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbXBsZXRlT3B0aW9uS2V5KGtleSk7XG4gICAgICAgICAgICAgICAgaWYgKG5lZ2FibGUgJiYgISFvcHRpb25zLmRlZmF1bHRba2V5XSlcbiAgICAgICAgICAgICAgICAgICAgY29tcGxldGVPcHRpb25LZXkoYG5vLSR7a2V5fWApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZG9uZShjb21wbGV0aW9ucyk7XG4gICAgfTtcbiAgICBzZWxmLmdlbmVyYXRlQ29tcGxldGlvblNjcmlwdCA9IGZ1bmN0aW9uIGdlbmVyYXRlQ29tcGxldGlvblNjcmlwdCgkMCwgY21kKSB7XG4gICAgICAgIGxldCBzY3JpcHQgPSB6c2hTaGVsbFxuICAgICAgICAgICAgPyBjb21wbGV0aW9uWnNoVGVtcGxhdGVcbiAgICAgICAgICAgIDogY29tcGxldGlvblNoVGVtcGxhdGU7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBzaGltLnBhdGguYmFzZW5hbWUoJDApO1xuICAgICAgICBpZiAoJDAubWF0Y2goL1xcLmpzJC8pKVxuICAgICAgICAgICAgJDAgPSBgLi8keyQwfWA7XG4gICAgICAgIHNjcmlwdCA9IHNjcmlwdC5yZXBsYWNlKC97e2FwcF9uYW1lfX0vZywgbmFtZSk7XG4gICAgICAgIHNjcmlwdCA9IHNjcmlwdC5yZXBsYWNlKC97e2NvbXBsZXRpb25fY29tbWFuZH19L2csIGNtZCk7XG4gICAgICAgIHJldHVybiBzY3JpcHQucmVwbGFjZSgve3thcHBfcGF0aH19L2csICQwKTtcbiAgICB9O1xuICAgIGxldCBjb21wbGV0aW9uRnVuY3Rpb24gPSBudWxsO1xuICAgIHNlbGYucmVnaXN0ZXJGdW5jdGlvbiA9IGZuID0+IHtcbiAgICAgICAgY29tcGxldGlvbkZ1bmN0aW9uID0gZm47XG4gICAgfTtcbiAgICByZXR1cm4gc2VsZjtcbn1cbmZ1bmN0aW9uIGlzU3luY0NvbXBsZXRpb25GdW5jdGlvbihjb21wbGV0aW9uRnVuY3Rpb24pIHtcbiAgICByZXR1cm4gY29tcGxldGlvbkZ1bmN0aW9uLmxlbmd0aCA8IDM7XG59XG5cbmZ1bmN0aW9uIGxldmVuc2h0ZWluKGEsIGIpIHtcbiAgICBpZiAoYS5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiBiLmxlbmd0aDtcbiAgICBpZiAoYi5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiBhLmxlbmd0aDtcbiAgICBjb25zdCBtYXRyaXggPSBbXTtcbiAgICBsZXQgaTtcbiAgICBmb3IgKGkgPSAwOyBpIDw9IGIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbWF0cml4W2ldID0gW2ldO1xuICAgIH1cbiAgICBsZXQgajtcbiAgICBmb3IgKGogPSAwOyBqIDw9IGEubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgbWF0cml4WzBdW2pdID0gajtcbiAgICB9XG4gICAgZm9yIChpID0gMTsgaSA8PSBiLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGZvciAoaiA9IDE7IGogPD0gYS5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgaWYgKGIuY2hhckF0KGkgLSAxKSA9PT0gYS5jaGFyQXQoaiAtIDEpKSB7XG4gICAgICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gbWF0cml4W2kgLSAxXVtqIC0gMV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBNYXRoLm1pbihtYXRyaXhbaSAtIDFdW2ogLSAxXSArIDEsIE1hdGgubWluKG1hdHJpeFtpXVtqIC0gMV0gKyAxLCBtYXRyaXhbaSAtIDFdW2pdICsgMSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXhbYi5sZW5ndGhdW2EubGVuZ3RoXTtcbn1cblxuY29uc3Qgc3BlY2lhbEtleXMgPSBbJyQwJywgJy0tJywgJ18nXTtcbmZ1bmN0aW9uIHZhbGlkYXRpb24oeWFyZ3MsIHVzYWdlLCB5MThuLCBzaGltKSB7XG4gICAgY29uc3QgX18gPSB5MThuLl9fO1xuICAgIGNvbnN0IF9fbiA9IHkxOG4uX19uO1xuICAgIGNvbnN0IHNlbGYgPSB7fTtcbiAgICBzZWxmLm5vbk9wdGlvbkNvdW50ID0gZnVuY3Rpb24gbm9uT3B0aW9uQ291bnQoYXJndikge1xuICAgICAgICBjb25zdCBkZW1hbmRlZENvbW1hbmRzID0geWFyZ3MuZ2V0RGVtYW5kZWRDb21tYW5kcygpO1xuICAgICAgICBjb25zdCBwb3NpdGlvbmFsQ291bnQgPSBhcmd2Ll8ubGVuZ3RoICsgKGFyZ3ZbJy0tJ10gPyBhcmd2WyctLSddLmxlbmd0aCA6IDApO1xuICAgICAgICBjb25zdCBfcyA9IHBvc2l0aW9uYWxDb3VudCAtIHlhcmdzLmdldENvbnRleHQoKS5jb21tYW5kcy5sZW5ndGg7XG4gICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8gJiZcbiAgICAgICAgICAgIChfcyA8IGRlbWFuZGVkQ29tbWFuZHMuXy5taW4gfHwgX3MgPiBkZW1hbmRlZENvbW1hbmRzLl8ubWF4KSkge1xuICAgICAgICAgICAgaWYgKF9zIDwgZGVtYW5kZWRDb21tYW5kcy5fLm1pbikge1xuICAgICAgICAgICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8ubWluTXNnICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdXNhZ2UuZmFpbChkZW1hbmRlZENvbW1hbmRzLl8ubWluTXNnXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGRlbWFuZGVkQ29tbWFuZHMuXy5taW5Nc2dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgvXFwkMC9nLCBfcy50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKC9cXCQxLywgZGVtYW5kZWRDb21tYW5kcy5fLm1pbi50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHVzYWdlLmZhaWwoX19uKCdOb3QgZW5vdWdoIG5vbi1vcHRpb24gYXJndW1lbnRzOiBnb3QgJXMsIG5lZWQgYXQgbGVhc3QgJXMnLCAnTm90IGVub3VnaCBub24tb3B0aW9uIGFyZ3VtZW50czogZ290ICVzLCBuZWVkIGF0IGxlYXN0ICVzJywgX3MsIF9zLnRvU3RyaW5nKCksIGRlbWFuZGVkQ29tbWFuZHMuXy5taW4udG9TdHJpbmcoKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKF9zID4gZGVtYW5kZWRDb21tYW5kcy5fLm1heCkge1xuICAgICAgICAgICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8ubWF4TXNnICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdXNhZ2UuZmFpbChkZW1hbmRlZENvbW1hbmRzLl8ubWF4TXNnXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGRlbWFuZGVkQ29tbWFuZHMuXy5tYXhNc2dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgvXFwkMC9nLCBfcy50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKC9cXCQxLywgZGVtYW5kZWRDb21tYW5kcy5fLm1heC50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHVzYWdlLmZhaWwoX19uKCdUb28gbWFueSBub24tb3B0aW9uIGFyZ3VtZW50czogZ290ICVzLCBtYXhpbXVtIG9mICVzJywgJ1RvbyBtYW55IG5vbi1vcHRpb24gYXJndW1lbnRzOiBnb3QgJXMsIG1heGltdW0gb2YgJXMnLCBfcywgX3MudG9TdHJpbmcoKSwgZGVtYW5kZWRDb21tYW5kcy5fLm1heC50b1N0cmluZygpKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLnBvc2l0aW9uYWxDb3VudCA9IGZ1bmN0aW9uIHBvc2l0aW9uYWxDb3VudChyZXF1aXJlZCwgb2JzZXJ2ZWQpIHtcbiAgICAgICAgaWYgKG9ic2VydmVkIDwgcmVxdWlyZWQpIHtcbiAgICAgICAgICAgIHVzYWdlLmZhaWwoX19uKCdOb3QgZW5vdWdoIG5vbi1vcHRpb24gYXJndW1lbnRzOiBnb3QgJXMsIG5lZWQgYXQgbGVhc3QgJXMnLCAnTm90IGVub3VnaCBub24tb3B0aW9uIGFyZ3VtZW50czogZ290ICVzLCBuZWVkIGF0IGxlYXN0ICVzJywgb2JzZXJ2ZWQsIG9ic2VydmVkICsgJycsIHJlcXVpcmVkICsgJycpKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgc2VsZi5yZXF1aXJlZEFyZ3VtZW50cyA9IGZ1bmN0aW9uIHJlcXVpcmVkQXJndW1lbnRzKGFyZ3YpIHtcbiAgICAgICAgY29uc3QgZGVtYW5kZWRPcHRpb25zID0geWFyZ3MuZ2V0RGVtYW5kZWRPcHRpb25zKCk7XG4gICAgICAgIGxldCBtaXNzaW5nID0gbnVsbDtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoZGVtYW5kZWRPcHRpb25zKSkge1xuICAgICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYXJndiwga2V5KSB8fFxuICAgICAgICAgICAgICAgIHR5cGVvZiBhcmd2W2tleV0gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgICAgbWlzc2luZyA9IG1pc3NpbmcgfHwge307XG4gICAgICAgICAgICAgICAgbWlzc2luZ1trZXldID0gZGVtYW5kZWRPcHRpb25zW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1pc3NpbmcpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbU1zZ3MgPSBbXTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG1pc3NpbmcpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gbWlzc2luZ1trZXldO1xuICAgICAgICAgICAgICAgIGlmIChtc2cgJiYgY3VzdG9tTXNncy5pbmRleE9mKG1zZykgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGN1c3RvbU1zZ3MucHVzaChtc2cpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbU1zZyA9IGN1c3RvbU1zZ3MubGVuZ3RoID8gYFxcbiR7Y3VzdG9tTXNncy5qb2luKCdcXG4nKX1gIDogJyc7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKF9fbignTWlzc2luZyByZXF1aXJlZCBhcmd1bWVudDogJXMnLCAnTWlzc2luZyByZXF1aXJlZCBhcmd1bWVudHM6ICVzJywgT2JqZWN0LmtleXMobWlzc2luZykubGVuZ3RoLCBPYmplY3Qua2V5cyhtaXNzaW5nKS5qb2luKCcsICcpICsgY3VzdG9tTXNnKSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNlbGYudW5rbm93bkFyZ3VtZW50cyA9IGZ1bmN0aW9uIHVua25vd25Bcmd1bWVudHMoYXJndiwgYWxpYXNlcywgcG9zaXRpb25hbE1hcCwgaXNEZWZhdWx0Q29tbWFuZCwgY2hlY2tQb3NpdGlvbmFscyA9IHRydWUpIHtcbiAgICAgICAgY29uc3QgY29tbWFuZEtleXMgPSB5YXJncy5nZXRDb21tYW5kSW5zdGFuY2UoKS5nZXRDb21tYW5kcygpO1xuICAgICAgICBjb25zdCB1bmtub3duID0gW107XG4gICAgICAgIGNvbnN0IGN1cnJlbnRDb250ZXh0ID0geWFyZ3MuZ2V0Q29udGV4dCgpO1xuICAgICAgICBPYmplY3Qua2V5cyhhcmd2KS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBpZiAoc3BlY2lhbEtleXMuaW5kZXhPZihrZXkpID09PSAtMSAmJlxuICAgICAgICAgICAgICAgICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocG9zaXRpb25hbE1hcCwga2V5KSAmJlxuICAgICAgICAgICAgICAgICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoeWFyZ3MuX2dldFBhcnNlQ29udGV4dCgpLCBrZXkpICYmXG4gICAgICAgICAgICAgICAgIXNlbGYuaXNWYWxpZEFuZFNvbWVBbGlhc0lzTm90TmV3KGtleSwgYWxpYXNlcykpIHtcbiAgICAgICAgICAgICAgICB1bmtub3duLnB1c2goa2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChjaGVja1Bvc2l0aW9uYWxzICYmXG4gICAgICAgICAgICAoY3VycmVudENvbnRleHQuY29tbWFuZHMubGVuZ3RoID4gMCB8fFxuICAgICAgICAgICAgICAgIGNvbW1hbmRLZXlzLmxlbmd0aCA+IDAgfHxcbiAgICAgICAgICAgICAgICBpc0RlZmF1bHRDb21tYW5kKSkge1xuICAgICAgICAgICAgYXJndi5fLnNsaWNlKGN1cnJlbnRDb250ZXh0LmNvbW1hbmRzLmxlbmd0aCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjb21tYW5kS2V5cy5pbmRleE9mKCcnICsga2V5KSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdW5rbm93bi5wdXNoKCcnICsga2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodW5rbm93bi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKF9fbignVW5rbm93biBhcmd1bWVudDogJXMnLCAnVW5rbm93biBhcmd1bWVudHM6ICVzJywgdW5rbm93bi5sZW5ndGgsIHVua25vd24uam9pbignLCAnKSkpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLnVua25vd25Db21tYW5kcyA9IGZ1bmN0aW9uIHVua25vd25Db21tYW5kcyhhcmd2KSB7XG4gICAgICAgIGNvbnN0IGNvbW1hbmRLZXlzID0geWFyZ3MuZ2V0Q29tbWFuZEluc3RhbmNlKCkuZ2V0Q29tbWFuZHMoKTtcbiAgICAgICAgY29uc3QgdW5rbm93biA9IFtdO1xuICAgICAgICBjb25zdCBjdXJyZW50Q29udGV4dCA9IHlhcmdzLmdldENvbnRleHQoKTtcbiAgICAgICAgaWYgKGN1cnJlbnRDb250ZXh0LmNvbW1hbmRzLmxlbmd0aCA+IDAgfHwgY29tbWFuZEtleXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgYXJndi5fLnNsaWNlKGN1cnJlbnRDb250ZXh0LmNvbW1hbmRzLmxlbmd0aCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjb21tYW5kS2V5cy5pbmRleE9mKCcnICsga2V5KSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdW5rbm93bi5wdXNoKCcnICsga2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodW5rbm93bi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKF9fbignVW5rbm93biBjb21tYW5kOiAlcycsICdVbmtub3duIGNvbW1hbmRzOiAlcycsIHVua25vd24ubGVuZ3RoLCB1bmtub3duLmpvaW4oJywgJykpKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLmlzVmFsaWRBbmRTb21lQWxpYXNJc05vdE5ldyA9IGZ1bmN0aW9uIGlzVmFsaWRBbmRTb21lQWxpYXNJc05vdE5ldyhrZXksIGFsaWFzZXMpIHtcbiAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYWxpYXNlcywga2V5KSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld0FsaWFzZXMgPSB5YXJncy5wYXJzZWQubmV3QWxpYXNlcztcbiAgICAgICAgZm9yIChjb25zdCBhIG9mIFtrZXksIC4uLmFsaWFzZXNba2V5XV0pIHtcbiAgICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG5ld0FsaWFzZXMsIGEpIHx8XG4gICAgICAgICAgICAgICAgIW5ld0FsaWFzZXNba2V5XSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9O1xuICAgIHNlbGYubGltaXRlZENob2ljZXMgPSBmdW5jdGlvbiBsaW1pdGVkQ2hvaWNlcyhhcmd2KSB7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB5YXJncy5nZXRPcHRpb25zKCk7XG4gICAgICAgIGNvbnN0IGludmFsaWQgPSB7fTtcbiAgICAgICAgaWYgKCFPYmplY3Qua2V5cyhvcHRpb25zLmNob2ljZXMpLmxlbmd0aClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgT2JqZWN0LmtleXMoYXJndikuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKHNwZWNpYWxLZXlzLmluZGV4T2Yoa2V5KSA9PT0gLTEgJiZcbiAgICAgICAgICAgICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob3B0aW9ucy5jaG9pY2VzLCBrZXkpKSB7XG4gICAgICAgICAgICAgICAgW10uY29uY2F0KGFyZ3Zba2V5XSkuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmNob2ljZXNba2V5XS5pbmRleE9mKHZhbHVlKSA9PT0gLTEgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGludmFsaWRba2V5XSA9IChpbnZhbGlkW2tleV0gfHwgW10pLmNvbmNhdCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGludmFsaWRLZXlzID0gT2JqZWN0LmtleXMoaW52YWxpZCk7XG4gICAgICAgIGlmICghaW52YWxpZEtleXMubGVuZ3RoKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBsZXQgbXNnID0gX18oJ0ludmFsaWQgdmFsdWVzOicpO1xuICAgICAgICBpbnZhbGlkS2V5cy5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBtc2cgKz0gYFxcbiAgJHtfXygnQXJndW1lbnQ6ICVzLCBHaXZlbjogJXMsIENob2ljZXM6ICVzJywga2V5LCB1c2FnZS5zdHJpbmdpZmllZFZhbHVlcyhpbnZhbGlkW2tleV0pLCB1c2FnZS5zdHJpbmdpZmllZFZhbHVlcyhvcHRpb25zLmNob2ljZXNba2V5XSkpfWA7XG4gICAgICAgIH0pO1xuICAgICAgICB1c2FnZS5mYWlsKG1zZyk7XG4gICAgfTtcbiAgICBsZXQgY2hlY2tzID0gW107XG4gICAgc2VsZi5jaGVjayA9IGZ1bmN0aW9uIGNoZWNrKGYsIGdsb2JhbCkge1xuICAgICAgICBjaGVja3MucHVzaCh7XG4gICAgICAgICAgICBmdW5jOiBmLFxuICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHNlbGYuY3VzdG9tQ2hlY2tzID0gZnVuY3Rpb24gY3VzdG9tQ2hlY2tzKGFyZ3YsIGFsaWFzZXMpIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGY7IChmID0gY2hlY2tzW2ldKSAhPT0gdW5kZWZpbmVkOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1bmMgPSBmLmZ1bmM7XG4gICAgICAgICAgICBsZXQgcmVzdWx0ID0gbnVsbDtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gZnVuYyhhcmd2LCBhbGlhc2VzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICB1c2FnZS5mYWlsKGVyci5tZXNzYWdlID8gZXJyLm1lc3NhZ2UgOiBlcnIsIGVycik7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICAgICAgICAgIHVzYWdlLmZhaWwoX18oJ0FyZ3VtZW50IGNoZWNrIGZhaWxlZDogJXMnLCBmdW5jLnRvU3RyaW5nKCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdzdHJpbmcnIHx8IHJlc3VsdCBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICAgICAgdXNhZ2UuZmFpbChyZXN1bHQudG9TdHJpbmcoKSwgcmVzdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG4gICAgbGV0IGltcGxpZWQgPSB7fTtcbiAgICBzZWxmLmltcGxpZXMgPSBmdW5jdGlvbiBpbXBsaWVzKGtleSwgdmFsdWUpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZ3xvYmplY3Q+IFthcnJheXxudW1iZXJ8c3RyaW5nXScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoa2V5KS5mb3JFYWNoKGsgPT4ge1xuICAgICAgICAgICAgICAgIHNlbGYuaW1wbGllcyhrLCBrZXlba10pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB5YXJncy5nbG9iYWwoa2V5KTtcbiAgICAgICAgICAgIGlmICghaW1wbGllZFtrZXldKSB7XG4gICAgICAgICAgICAgICAgaW1wbGllZFtrZXldID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5mb3JFYWNoKGkgPT4gc2VsZi5pbXBsaWVzKGtleSwgaSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwodmFsdWUsIHVuZGVmaW5lZCwgc2hpbSk7XG4gICAgICAgICAgICAgICAgaW1wbGllZFtrZXldLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLmdldEltcGxpZWQgPSBmdW5jdGlvbiBnZXRJbXBsaWVkKCkge1xuICAgICAgICByZXR1cm4gaW1wbGllZDtcbiAgICB9O1xuICAgIGZ1bmN0aW9uIGtleUV4aXN0cyhhcmd2LCB2YWwpIHtcbiAgICAgICAgY29uc3QgbnVtID0gTnVtYmVyKHZhbCk7XG4gICAgICAgIHZhbCA9IGlzTmFOKG51bSkgPyB2YWwgOiBudW07XG4gICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgdmFsID0gYXJndi5fLmxlbmd0aCA+PSB2YWw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodmFsLm1hdGNoKC9eLS1uby0uKy8pKSB7XG4gICAgICAgICAgICB2YWwgPSB2YWwubWF0Y2goL14tLW5vLSguKykvKVsxXTtcbiAgICAgICAgICAgIHZhbCA9ICFhcmd2W3ZhbF07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB2YWwgPSBhcmd2W3ZhbF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG4gICAgc2VsZi5pbXBsaWNhdGlvbnMgPSBmdW5jdGlvbiBpbXBsaWNhdGlvbnMoYXJndikge1xuICAgICAgICBjb25zdCBpbXBseUZhaWwgPSBbXTtcbiAgICAgICAgT2JqZWN0LmtleXMoaW1wbGllZCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb3JpZ0tleSA9IGtleTtcbiAgICAgICAgICAgIChpbXBsaWVkW2tleV0gfHwgW10pLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIGxldCBrZXkgPSBvcmlnS2V5O1xuICAgICAgICAgICAgICAgIGNvbnN0IG9yaWdWYWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIGtleSA9IGtleUV4aXN0cyhhcmd2LCBrZXkpO1xuICAgICAgICAgICAgICAgIHZhbHVlID0ga2V5RXhpc3RzKGFyZ3YsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICBpZiAoa2V5ICYmICF2YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICBpbXBseUZhaWwucHVzaChgICR7b3JpZ0tleX0gLT4gJHtvcmlnVmFsdWV9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoaW1wbHlGYWlsLmxlbmd0aCkge1xuICAgICAgICAgICAgbGV0IG1zZyA9IGAke19fKCdJbXBsaWNhdGlvbnMgZmFpbGVkOicpfVxcbmA7XG4gICAgICAgICAgICBpbXBseUZhaWwuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgbXNnICs9IHZhbHVlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKG1zZyk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGxldCBjb25mbGljdGluZyA9IHt9O1xuICAgIHNlbGYuY29uZmxpY3RzID0gZnVuY3Rpb24gY29uZmxpY3RzKGtleSwgdmFsdWUpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZ3xvYmplY3Q+IFthcnJheXxzdHJpbmddJywgW2tleSwgdmFsdWVdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHR5cGVvZiBrZXkgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhrZXkpLmZvckVhY2goayA9PiB7XG4gICAgICAgICAgICAgICAgc2VsZi5jb25mbGljdHMoaywga2V5W2tdKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgeWFyZ3MuZ2xvYmFsKGtleSk7XG4gICAgICAgICAgICBpZiAoIWNvbmZsaWN0aW5nW2tleV0pIHtcbiAgICAgICAgICAgICAgICBjb25mbGljdGluZ1trZXldID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5mb3JFYWNoKGkgPT4gc2VsZi5jb25mbGljdHMoa2V5LCBpKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25mbGljdGluZ1trZXldLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLmdldENvbmZsaWN0aW5nID0gKCkgPT4gY29uZmxpY3Rpbmc7XG4gICAgc2VsZi5jb25mbGljdGluZyA9IGZ1bmN0aW9uIGNvbmZsaWN0aW5nRm4oYXJndikge1xuICAgICAgICBPYmplY3Qua2V5cyhhcmd2KS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBpZiAoY29uZmxpY3Rpbmdba2V5XSkge1xuICAgICAgICAgICAgICAgIGNvbmZsaWN0aW5nW2tleV0uZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAmJiBhcmd2W2tleV0gIT09IHVuZGVmaW5lZCAmJiBhcmd2W3ZhbHVlXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB1c2FnZS5mYWlsKF9fKCdBcmd1bWVudHMgJXMgYW5kICVzIGFyZSBtdXR1YWxseSBleGNsdXNpdmUnLCBrZXksIHZhbHVlKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICBzZWxmLnJlY29tbWVuZENvbW1hbmRzID0gZnVuY3Rpb24gcmVjb21tZW5kQ29tbWFuZHMoY21kLCBwb3RlbnRpYWxDb21tYW5kcykge1xuICAgICAgICBjb25zdCB0aHJlc2hvbGQgPSAzO1xuICAgICAgICBwb3RlbnRpYWxDb21tYW5kcyA9IHBvdGVudGlhbENvbW1hbmRzLnNvcnQoKGEsIGIpID0+IGIubGVuZ3RoIC0gYS5sZW5ndGgpO1xuICAgICAgICBsZXQgcmVjb21tZW5kZWQgPSBudWxsO1xuICAgICAgICBsZXQgYmVzdERpc3RhbmNlID0gSW5maW5pdHk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBjYW5kaWRhdGU7IChjYW5kaWRhdGUgPSBwb3RlbnRpYWxDb21tYW5kc1tpXSkgIT09IHVuZGVmaW5lZDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBkID0gbGV2ZW5zaHRlaW4oY21kLCBjYW5kaWRhdGUpO1xuICAgICAgICAgICAgaWYgKGQgPD0gdGhyZXNob2xkICYmIGQgPCBiZXN0RGlzdGFuY2UpIHtcbiAgICAgICAgICAgICAgICBiZXN0RGlzdGFuY2UgPSBkO1xuICAgICAgICAgICAgICAgIHJlY29tbWVuZGVkID0gY2FuZGlkYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChyZWNvbW1lbmRlZClcbiAgICAgICAgICAgIHVzYWdlLmZhaWwoX18oJ0RpZCB5b3UgbWVhbiAlcz8nLCByZWNvbW1lbmRlZCkpO1xuICAgIH07XG4gICAgc2VsZi5yZXNldCA9IGZ1bmN0aW9uIHJlc2V0KGxvY2FsTG9va3VwKSB7XG4gICAgICAgIGltcGxpZWQgPSBvYmpGaWx0ZXIoaW1wbGllZCwgayA9PiAhbG9jYWxMb29rdXBba10pO1xuICAgICAgICBjb25mbGljdGluZyA9IG9iakZpbHRlcihjb25mbGljdGluZywgayA9PiAhbG9jYWxMb29rdXBba10pO1xuICAgICAgICBjaGVja3MgPSBjaGVja3MuZmlsdGVyKGMgPT4gYy5nbG9iYWwpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGNvbnN0IGZyb3plbnMgPSBbXTtcbiAgICBzZWxmLmZyZWV6ZSA9IGZ1bmN0aW9uIGZyZWV6ZSgpIHtcbiAgICAgICAgZnJvemVucy5wdXNoKHtcbiAgICAgICAgICAgIGltcGxpZWQsXG4gICAgICAgICAgICBjaGVja3MsXG4gICAgICAgICAgICBjb25mbGljdGluZyxcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICBzZWxmLnVuZnJlZXplID0gZnVuY3Rpb24gdW5mcmVlemUoKSB7XG4gICAgICAgIGNvbnN0IGZyb3plbiA9IGZyb3plbnMucG9wKCk7XG4gICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKGZyb3plbiwgdW5kZWZpbmVkLCBzaGltKTtcbiAgICAgICAgKHsgaW1wbGllZCwgY2hlY2tzLCBjb25mbGljdGluZyB9ID0gZnJvemVuKTtcbiAgICB9O1xuICAgIHJldHVybiBzZWxmO1xufVxuXG5sZXQgc2hpbSQxO1xuZnVuY3Rpb24gWWFyZ3NXaXRoU2hpbShfc2hpbSkge1xuICAgIHNoaW0kMSA9IF9zaGltO1xuICAgIHJldHVybiBZYXJncztcbn1cbmZ1bmN0aW9uIFlhcmdzKHByb2Nlc3NBcmdzID0gW10sIGN3ZCA9IHNoaW0kMS5wcm9jZXNzLmN3ZCgpLCBwYXJlbnRSZXF1aXJlKSB7XG4gICAgY29uc3Qgc2VsZiA9IHt9O1xuICAgIGxldCBjb21tYW5kJDE7XG4gICAgbGV0IGNvbXBsZXRpb24kMSA9IG51bGw7XG4gICAgbGV0IGdyb3VwcyA9IHt9O1xuICAgIGNvbnN0IGdsb2JhbE1pZGRsZXdhcmUgPSBbXTtcbiAgICBsZXQgb3V0cHV0ID0gJyc7XG4gICAgY29uc3QgcHJlc2VydmVkR3JvdXBzID0ge307XG4gICAgbGV0IHVzYWdlJDE7XG4gICAgbGV0IHZhbGlkYXRpb24kMTtcbiAgICBsZXQgaGFuZGxlckZpbmlzaENvbW1hbmQgPSBudWxsO1xuICAgIGNvbnN0IHkxOG4gPSBzaGltJDEueTE4bjtcbiAgICBzZWxmLm1pZGRsZXdhcmUgPSBnbG9iYWxNaWRkbGV3YXJlRmFjdG9yeShnbG9iYWxNaWRkbGV3YXJlLCBzZWxmKTtcbiAgICBzZWxmLnNjcmlwdE5hbWUgPSBmdW5jdGlvbiAoc2NyaXB0TmFtZSkge1xuICAgICAgICBzZWxmLmN1c3RvbVNjcmlwdE5hbWUgPSB0cnVlO1xuICAgICAgICBzZWxmLiQwID0gc2NyaXB0TmFtZTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBsZXQgZGVmYXVsdCQwO1xuICAgIGlmICgvXFxiKG5vZGV8aW9qc3xlbGVjdHJvbikoXFwuZXhlKT8kLy50ZXN0KHNoaW0kMS5wcm9jZXNzLmFyZ3YoKVswXSkpIHtcbiAgICAgICAgZGVmYXVsdCQwID0gc2hpbSQxLnByb2Nlc3MuYXJndigpLnNsaWNlKDEsIDIpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgZGVmYXVsdCQwID0gc2hpbSQxLnByb2Nlc3MuYXJndigpLnNsaWNlKDAsIDEpO1xuICAgIH1cbiAgICBzZWxmLiQwID0gZGVmYXVsdCQwXG4gICAgICAgIC5tYXAoeCA9PiB7XG4gICAgICAgIGNvbnN0IGIgPSByZWJhc2UoY3dkLCB4KTtcbiAgICAgICAgcmV0dXJuIHgubWF0Y2goL14oXFwvfChbYS16QS1aXTopP1xcXFwpLykgJiYgYi5sZW5ndGggPCB4Lmxlbmd0aCA/IGIgOiB4O1xuICAgIH0pXG4gICAgICAgIC5qb2luKCcgJylcbiAgICAgICAgLnRyaW0oKTtcbiAgICBpZiAoc2hpbSQxLmdldEVudignXycpICYmIHNoaW0kMS5nZXRQcm9jZXNzQXJndkJpbigpID09PSBzaGltJDEuZ2V0RW52KCdfJykpIHtcbiAgICAgICAgc2VsZi4kMCA9IHNoaW0kMVxuICAgICAgICAgICAgLmdldEVudignXycpXG4gICAgICAgICAgICAucmVwbGFjZShgJHtzaGltJDEucGF0aC5kaXJuYW1lKHNoaW0kMS5wcm9jZXNzLmV4ZWNQYXRoKCkpfS9gLCAnJyk7XG4gICAgfVxuICAgIGNvbnN0IGNvbnRleHQgPSB7IHJlc2V0czogLTEsIGNvbW1hbmRzOiBbXSwgZnVsbENvbW1hbmRzOiBbXSwgZmlsZXM6IFtdIH07XG4gICAgc2VsZi5nZXRDb250ZXh0ID0gKCkgPT4gY29udGV4dDtcbiAgICBsZXQgaGFzT3V0cHV0ID0gZmFsc2U7XG4gICAgbGV0IGV4aXRFcnJvciA9IG51bGw7XG4gICAgc2VsZi5leGl0ID0gKGNvZGUsIGVycikgPT4ge1xuICAgICAgICBoYXNPdXRwdXQgPSB0cnVlO1xuICAgICAgICBleGl0RXJyb3IgPSBlcnI7XG4gICAgICAgIGlmIChleGl0UHJvY2VzcylcbiAgICAgICAgICAgIHNoaW0kMS5wcm9jZXNzLmV4aXQoY29kZSk7XG4gICAgfTtcbiAgICBsZXQgY29tcGxldGlvbkNvbW1hbmQgPSBudWxsO1xuICAgIHNlbGYuY29tcGxldGlvbiA9IGZ1bmN0aW9uIChjbWQsIGRlc2MsIGZuKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmddIFtzdHJpbmd8Ym9vbGVhbnxmdW5jdGlvbl0gW2Z1bmN0aW9uXScsIFtjbWQsIGRlc2MsIGZuXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzYyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgZm4gPSBkZXNjO1xuICAgICAgICAgICAgZGVzYyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBjb21wbGV0aW9uQ29tbWFuZCA9IGNtZCB8fCBjb21wbGV0aW9uQ29tbWFuZCB8fCAnY29tcGxldGlvbic7XG4gICAgICAgIGlmICghZGVzYyAmJiBkZXNjICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgZGVzYyA9ICdnZW5lcmF0ZSBjb21wbGV0aW9uIHNjcmlwdCc7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZi5jb21tYW5kKGNvbXBsZXRpb25Db21tYW5kLCBkZXNjKTtcbiAgICAgICAgaWYgKGZuKVxuICAgICAgICAgICAgY29tcGxldGlvbiQxLnJlZ2lzdGVyRnVuY3Rpb24oZm4pO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGxldCBvcHRpb25zO1xuICAgIHNlbGYucmVzZXRPcHRpb25zID0gc2VsZi5yZXNldCA9IGZ1bmN0aW9uIHJlc2V0T3B0aW9ucyhhbGlhc2VzID0ge30pIHtcbiAgICAgICAgY29udGV4dC5yZXNldHMrKztcbiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gICAgICAgIGNvbnN0IHRtcE9wdGlvbnMgPSB7fTtcbiAgICAgICAgdG1wT3B0aW9ucy5sb2NhbCA9IG9wdGlvbnMubG9jYWwgPyBvcHRpb25zLmxvY2FsIDogW107XG4gICAgICAgIHRtcE9wdGlvbnMuY29uZmlnT2JqZWN0cyA9IG9wdGlvbnMuY29uZmlnT2JqZWN0c1xuICAgICAgICAgICAgPyBvcHRpb25zLmNvbmZpZ09iamVjdHNcbiAgICAgICAgICAgIDogW107XG4gICAgICAgIGNvbnN0IGxvY2FsTG9va3VwID0ge307XG4gICAgICAgIHRtcE9wdGlvbnMubG9jYWwuZm9yRWFjaChsID0+IHtcbiAgICAgICAgICAgIGxvY2FsTG9va3VwW2xdID0gdHJ1ZTtcbiAgICAgICAgICAgIChhbGlhc2VzW2xdIHx8IFtdKS5mb3JFYWNoKGEgPT4ge1xuICAgICAgICAgICAgICAgIGxvY2FsTG9va3VwW2FdID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihwcmVzZXJ2ZWRHcm91cHMsIE9iamVjdC5rZXlzKGdyb3VwcykucmVkdWNlKChhY2MsIGdyb3VwTmFtZSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qga2V5cyA9IGdyb3Vwc1tncm91cE5hbWVdLmZpbHRlcihrZXkgPT4gIShrZXkgaW4gbG9jYWxMb29rdXApKTtcbiAgICAgICAgICAgIGlmIChrZXlzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBhY2NbZ3JvdXBOYW1lXSA9IGtleXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSkpO1xuICAgICAgICBncm91cHMgPSB7fTtcbiAgICAgICAgY29uc3QgYXJyYXlPcHRpb25zID0gW1xuICAgICAgICAgICAgJ2FycmF5JyxcbiAgICAgICAgICAgICdib29sZWFuJyxcbiAgICAgICAgICAgICdzdHJpbmcnLFxuICAgICAgICAgICAgJ3NraXBWYWxpZGF0aW9uJyxcbiAgICAgICAgICAgICdjb3VudCcsXG4gICAgICAgICAgICAnbm9ybWFsaXplJyxcbiAgICAgICAgICAgICdudW1iZXInLFxuICAgICAgICAgICAgJ2hpZGRlbk9wdGlvbnMnLFxuICAgICAgICBdO1xuICAgICAgICBjb25zdCBvYmplY3RPcHRpb25zID0gW1xuICAgICAgICAgICAgJ25hcmcnLFxuICAgICAgICAgICAgJ2tleScsXG4gICAgICAgICAgICAnYWxpYXMnLFxuICAgICAgICAgICAgJ2RlZmF1bHQnLFxuICAgICAgICAgICAgJ2RlZmF1bHREZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAnY29uZmlnJyxcbiAgICAgICAgICAgICdjaG9pY2VzJyxcbiAgICAgICAgICAgICdkZW1hbmRlZE9wdGlvbnMnLFxuICAgICAgICAgICAgJ2RlbWFuZGVkQ29tbWFuZHMnLFxuICAgICAgICAgICAgJ2NvZXJjZScsXG4gICAgICAgICAgICAnZGVwcmVjYXRlZE9wdGlvbnMnLFxuICAgICAgICBdO1xuICAgICAgICBhcnJheU9wdGlvbnMuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgIHRtcE9wdGlvbnNba10gPSAob3B0aW9uc1trXSB8fCBbXSkuZmlsdGVyKChrKSA9PiAhbG9jYWxMb29rdXBba10pO1xuICAgICAgICB9KTtcbiAgICAgICAgb2JqZWN0T3B0aW9ucy5mb3JFYWNoKChrKSA9PiB7XG4gICAgICAgICAgICB0bXBPcHRpb25zW2tdID0gb2JqRmlsdGVyKG9wdGlvbnNba10sIGsgPT4gIWxvY2FsTG9va3VwW2tdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRtcE9wdGlvbnMuZW52UHJlZml4ID0gb3B0aW9ucy5lbnZQcmVmaXg7XG4gICAgICAgIG9wdGlvbnMgPSB0bXBPcHRpb25zO1xuICAgICAgICB1c2FnZSQxID0gdXNhZ2UkMSA/IHVzYWdlJDEucmVzZXQobG9jYWxMb29rdXApIDogdXNhZ2Uoc2VsZiwgeTE4biwgc2hpbSQxKTtcbiAgICAgICAgdmFsaWRhdGlvbiQxID0gdmFsaWRhdGlvbiQxXG4gICAgICAgICAgICA/IHZhbGlkYXRpb24kMS5yZXNldChsb2NhbExvb2t1cClcbiAgICAgICAgICAgIDogdmFsaWRhdGlvbihzZWxmLCB1c2FnZSQxLCB5MThuLCBzaGltJDEpO1xuICAgICAgICBjb21tYW5kJDEgPSBjb21tYW5kJDFcbiAgICAgICAgICAgID8gY29tbWFuZCQxLnJlc2V0KClcbiAgICAgICAgICAgIDogY29tbWFuZChzZWxmLCB1c2FnZSQxLCB2YWxpZGF0aW9uJDEsIGdsb2JhbE1pZGRsZXdhcmUsIHNoaW0kMSk7XG4gICAgICAgIGlmICghY29tcGxldGlvbiQxKVxuICAgICAgICAgICAgY29tcGxldGlvbiQxID0gY29tcGxldGlvbihzZWxmLCB1c2FnZSQxLCBjb21tYW5kJDEsIHNoaW0kMSk7XG4gICAgICAgIGNvbXBsZXRpb25Db21tYW5kID0gbnVsbDtcbiAgICAgICAgb3V0cHV0ID0gJyc7XG4gICAgICAgIGV4aXRFcnJvciA9IG51bGw7XG4gICAgICAgIGhhc091dHB1dCA9IGZhbHNlO1xuICAgICAgICBzZWxmLnBhcnNlZCA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYucmVzZXRPcHRpb25zKCk7XG4gICAgY29uc3QgZnJvemVucyA9IFtdO1xuICAgIGZ1bmN0aW9uIGZyZWV6ZSgpIHtcbiAgICAgICAgZnJvemVucy5wdXNoKHtcbiAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICBjb25maWdPYmplY3RzOiBvcHRpb25zLmNvbmZpZ09iamVjdHMuc2xpY2UoMCksXG4gICAgICAgICAgICBleGl0UHJvY2VzcyxcbiAgICAgICAgICAgIGdyb3VwcyxcbiAgICAgICAgICAgIHN0cmljdCxcbiAgICAgICAgICAgIHN0cmljdENvbW1hbmRzLFxuICAgICAgICAgICAgc3RyaWN0T3B0aW9ucyxcbiAgICAgICAgICAgIGNvbXBsZXRpb25Db21tYW5kLFxuICAgICAgICAgICAgb3V0cHV0LFxuICAgICAgICAgICAgZXhpdEVycm9yLFxuICAgICAgICAgICAgaGFzT3V0cHV0LFxuICAgICAgICAgICAgcGFyc2VkOiBzZWxmLnBhcnNlZCxcbiAgICAgICAgICAgIHBhcnNlRm4sXG4gICAgICAgICAgICBwYXJzZUNvbnRleHQsXG4gICAgICAgICAgICBoYW5kbGVyRmluaXNoQ29tbWFuZCxcbiAgICAgICAgfSk7XG4gICAgICAgIHVzYWdlJDEuZnJlZXplKCk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5mcmVlemUoKTtcbiAgICAgICAgY29tbWFuZCQxLmZyZWV6ZSgpO1xuICAgIH1cbiAgICBmdW5jdGlvbiB1bmZyZWV6ZSgpIHtcbiAgICAgICAgY29uc3QgZnJvemVuID0gZnJvemVucy5wb3AoKTtcbiAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwoZnJvemVuLCB1bmRlZmluZWQsIHNoaW0kMSk7XG4gICAgICAgIGxldCBjb25maWdPYmplY3RzO1xuICAgICAgICAoe1xuICAgICAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgICAgIGNvbmZpZ09iamVjdHMsXG4gICAgICAgICAgICBleGl0UHJvY2VzcyxcbiAgICAgICAgICAgIGdyb3VwcyxcbiAgICAgICAgICAgIG91dHB1dCxcbiAgICAgICAgICAgIGV4aXRFcnJvcixcbiAgICAgICAgICAgIGhhc091dHB1dCxcbiAgICAgICAgICAgIHBhcnNlZDogc2VsZi5wYXJzZWQsXG4gICAgICAgICAgICBzdHJpY3QsXG4gICAgICAgICAgICBzdHJpY3RDb21tYW5kcyxcbiAgICAgICAgICAgIHN0cmljdE9wdGlvbnMsXG4gICAgICAgICAgICBjb21wbGV0aW9uQ29tbWFuZCxcbiAgICAgICAgICAgIHBhcnNlRm4sXG4gICAgICAgICAgICBwYXJzZUNvbnRleHQsXG4gICAgICAgICAgICBoYW5kbGVyRmluaXNoQ29tbWFuZCxcbiAgICAgICAgfSA9IGZyb3plbik7XG4gICAgICAgIG9wdGlvbnMuY29uZmlnT2JqZWN0cyA9IGNvbmZpZ09iamVjdHM7XG4gICAgICAgIHVzYWdlJDEudW5mcmVlemUoKTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLnVuZnJlZXplKCk7XG4gICAgICAgIGNvbW1hbmQkMS51bmZyZWV6ZSgpO1xuICAgIH1cbiAgICBzZWxmLmJvb2xlYW4gPSBmdW5jdGlvbiAoa2V5cykge1xuICAgICAgICBhcmdzZXJ0KCc8YXJyYXl8c3RyaW5nPicsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5KCdib29sZWFuJywga2V5cyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5hcnJheSA9IGZ1bmN0aW9uIChrZXlzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxzdHJpbmc+JywgW2tleXNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50QXJyYXkoJ2FycmF5Jywga2V5cyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5udW1iZXIgPSBmdW5jdGlvbiAoa2V5cykge1xuICAgICAgICBhcmdzZXJ0KCc8YXJyYXl8c3RyaW5nPicsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5KCdudW1iZXInLCBrZXlzKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLm5vcm1hbGl6ZSA9IGZ1bmN0aW9uIChrZXlzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxzdHJpbmc+JywgW2tleXNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50QXJyYXkoJ25vcm1hbGl6ZScsIGtleXMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuY291bnQgPSBmdW5jdGlvbiAoa2V5cykge1xuICAgICAgICBhcmdzZXJ0KCc8YXJyYXl8c3RyaW5nPicsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5KCdjb3VudCcsIGtleXMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuc3RyaW5nID0gZnVuY3Rpb24gKGtleXMpIHtcbiAgICAgICAgYXJnc2VydCgnPGFycmF5fHN0cmluZz4nLCBba2V5c10sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBwb3B1bGF0ZVBhcnNlckhpbnRBcnJheSgnc3RyaW5nJywga2V5cyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5yZXF1aXJlc0FyZyA9IGZ1bmN0aW9uIChrZXlzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxzdHJpbmd8b2JqZWN0PiBbbnVtYmVyXScsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2Yga2V5cyA9PT0gJ3N0cmluZycgJiYgb3B0aW9ucy5uYXJnW2tleXNdKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZWxmLnJlcXVpcmVzQXJnLCAnbmFyZycsIGtleXMsIE5hTik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLnNraXBWYWxpZGF0aW9uID0gZnVuY3Rpb24gKGtleXMpIHtcbiAgICAgICAgYXJnc2VydCgnPGFycmF5fHN0cmluZz4nLCBba2V5c10sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBwb3B1bGF0ZVBhcnNlckhpbnRBcnJheSgnc2tpcFZhbGlkYXRpb24nLCBrZXlzKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBwb3B1bGF0ZVBhcnNlckhpbnRBcnJheSh0eXBlLCBrZXlzKSB7XG4gICAgICAgIGtleXMgPSBbXS5jb25jYXQoa2V5cyk7XG4gICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAga2V5ID0gc2FuaXRpemVLZXkoa2V5KTtcbiAgICAgICAgICAgIG9wdGlvbnNbdHlwZV0ucHVzaChrZXkpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgc2VsZi5uYXJncyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8b2JqZWN0fGFycmF5PiBbbnVtYmVyXScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZWxmLm5hcmdzLCAnbmFyZycsIGtleSwgdmFsdWUpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuY2hvaWNlcyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbc3RyaW5nfGFycmF5XScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5RGljdGlvbmFyeShzZWxmLmNob2ljZXMsICdjaG9pY2VzJywga2V5LCB2YWx1ZSk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5hbGlhcyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbc3RyaW5nfGFycmF5XScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5RGljdGlvbmFyeShzZWxmLmFsaWFzLCAnYWxpYXMnLCBrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmRlZmF1bHQgPSBzZWxmLmRlZmF1bHRzID0gZnVuY3Rpb24gKGtleSwgdmFsdWUsIGRlZmF1bHREZXNjcmlwdGlvbikge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0fHN0cmluZ3xhcnJheT4gWypdIFtzdHJpbmddJywgW2tleSwgdmFsdWUsIGRlZmF1bHREZXNjcmlwdGlvbl0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBpZiAoZGVmYXVsdERlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICBhc3NlcnRTaW5nbGVLZXkoa2V5LCBzaGltJDEpO1xuICAgICAgICAgICAgb3B0aW9ucy5kZWZhdWx0RGVzY3JpcHRpb25ba2V5XSA9IGRlZmF1bHREZXNjcmlwdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBhc3NlcnRTaW5nbGVLZXkoa2V5LCBzaGltJDEpO1xuICAgICAgICAgICAgaWYgKCFvcHRpb25zLmRlZmF1bHREZXNjcmlwdGlvbltrZXldKVxuICAgICAgICAgICAgICAgIG9wdGlvbnMuZGVmYXVsdERlc2NyaXB0aW9uW2tleV0gPSB1c2FnZSQxLmZ1bmN0aW9uRGVzY3JpcHRpb24odmFsdWUpO1xuICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5jYWxsKCk7XG4gICAgICAgIH1cbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50U2luZ2xlVmFsdWVEaWN0aW9uYXJ5KHNlbGYuZGVmYXVsdCwgJ2RlZmF1bHQnLCBrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmRlc2NyaWJlID0gZnVuY3Rpb24gKGtleSwgZGVzYykge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0fHN0cmluZ3xhcnJheT4gW3N0cmluZ10nLCBba2V5LCBkZXNjXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHNldEtleShrZXksIHRydWUpO1xuICAgICAgICB1c2FnZSQxLmRlc2NyaWJlKGtleSwgZGVzYyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgZnVuY3Rpb24gc2V0S2V5KGtleSwgc2V0KSB7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZXRLZXksICdrZXknLCBrZXksIHNldCk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH1cbiAgICBmdW5jdGlvbiBkZW1hbmRPcHRpb24oa2V5cywgbXNnKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbc3RyaW5nXScsIFtrZXlzLCBtc2ddLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50U2luZ2xlVmFsdWVEaWN0aW9uYXJ5KHNlbGYuZGVtYW5kT3B0aW9uLCAnZGVtYW5kZWRPcHRpb25zJywga2V5cywgbXNnKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfVxuICAgIHNlbGYuZGVtYW5kT3B0aW9uID0gZGVtYW5kT3B0aW9uO1xuICAgIHNlbGYuY29lcmNlID0gZnVuY3Rpb24gKGtleXMsIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbZnVuY3Rpb25dJywgW2tleXMsIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZWxmLmNvZXJjZSwgJ2NvZXJjZScsIGtleXMsIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBwb3B1bGF0ZVBhcnNlckhpbnRTaW5nbGVWYWx1ZURpY3Rpb25hcnkoYnVpbGRlciwgdHlwZSwga2V5LCB2YWx1ZSkge1xuICAgICAgICBwb3B1bGF0ZVBhcnNlckhpbnREaWN0aW9uYXJ5KGJ1aWxkZXIsIHR5cGUsIGtleSwgdmFsdWUsICh0eXBlLCBrZXksIHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBvcHRpb25zW3R5cGVdW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIHBvcHVsYXRlUGFyc2VySGludEFycmF5RGljdGlvbmFyeShidWlsZGVyLCB0eXBlLCBrZXksIHZhbHVlKSB7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludERpY3Rpb25hcnkoYnVpbGRlciwgdHlwZSwga2V5LCB2YWx1ZSwgKHR5cGUsIGtleSwgdmFsdWUpID0+IHtcbiAgICAgICAgICAgIG9wdGlvbnNbdHlwZV1ba2V5XSA9IChvcHRpb25zW3R5cGVdW2tleV0gfHwgW10pLmNvbmNhdCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBmdW5jdGlvbiBwb3B1bGF0ZVBhcnNlckhpbnREaWN0aW9uYXJ5KGJ1aWxkZXIsIHR5cGUsIGtleSwgdmFsdWUsIHNpbmdsZUtleUhhbmRsZXIpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoa2V5KSkge1xuICAgICAgICAgICAga2V5LmZvckVhY2goayA9PiB7XG4gICAgICAgICAgICAgICAgYnVpbGRlcihrLCB2YWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICgoKGtleSkgPT4gdHlwZW9mIGtleSA9PT0gJ29iamVjdCcpKGtleSkpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgayBvZiBvYmplY3RLZXlzKGtleSkpIHtcbiAgICAgICAgICAgICAgICBidWlsZGVyKGssIGtleVtrXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzaW5nbGVLZXlIYW5kbGVyKHR5cGUsIHNhbml0aXplS2V5KGtleSksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBzYW5pdGl6ZUtleShrZXkpIHtcbiAgICAgICAgaWYgKGtleSA9PT0gJ19fcHJvdG9fXycpXG4gICAgICAgICAgICByZXR1cm4gJ19fX3Byb3RvX19fJztcbiAgICAgICAgcmV0dXJuIGtleTtcbiAgICB9XG4gICAgZnVuY3Rpb24gZGVsZXRlRnJvbVBhcnNlckhpbnRPYmplY3Qob3B0aW9uS2V5KSB7XG4gICAgICAgIG9iamVjdEtleXMob3B0aW9ucykuZm9yRWFjaCgoaGludEtleSkgPT4ge1xuICAgICAgICAgICAgaWYgKCgoa2V5KSA9PiBrZXkgPT09ICdjb25maWdPYmplY3RzJykoaGludEtleSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgaGludCA9IG9wdGlvbnNbaGludEtleV07XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShoaW50KSkge1xuICAgICAgICAgICAgICAgIGlmICh+aGludC5pbmRleE9mKG9wdGlvbktleSkpXG4gICAgICAgICAgICAgICAgICAgIGhpbnQuc3BsaWNlKGhpbnQuaW5kZXhPZihvcHRpb25LZXkpLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBoaW50ID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgIGRlbGV0ZSBoaW50W29wdGlvbktleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBkZWxldGUgdXNhZ2UkMS5nZXREZXNjcmlwdGlvbnMoKVtvcHRpb25LZXldO1xuICAgIH1cbiAgICBzZWxmLmNvbmZpZyA9IGZ1bmN0aW9uIGNvbmZpZyhrZXkgPSAnY29uZmlnJywgbXNnLCBwYXJzZUZuKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tvYmplY3R8c3RyaW5nXSBbc3RyaW5nfGZ1bmN0aW9uXSBbZnVuY3Rpb25dJywgW2tleSwgbXNnLCBwYXJzZUZuXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShrZXkpKSB7XG4gICAgICAgICAgICBrZXkgPSBhcHBseUV4dGVuZHMoa2V5LCBjd2QsIHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbigpWydkZWVwLW1lcmdlLWNvbmZpZyddIHx8IGZhbHNlLCBzaGltJDEpO1xuICAgICAgICAgICAgb3B0aW9ucy5jb25maWdPYmplY3RzID0gKG9wdGlvbnMuY29uZmlnT2JqZWN0cyB8fCBbXSkuY29uY2F0KGtleSk7XG4gICAgICAgICAgICByZXR1cm4gc2VsZjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIG1zZyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcGFyc2VGbiA9IG1zZztcbiAgICAgICAgICAgIG1zZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBzZWxmLmRlc2NyaWJlKGtleSwgbXNnIHx8IHVzYWdlJDEuZGVmZXJZMThuTG9va3VwKCdQYXRoIHRvIEpTT04gY29uZmlnIGZpbGUnKSk7XG4gICAgICAgIChBcnJheS5pc0FycmF5KGtleSkgPyBrZXkgOiBba2V5XSkuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgIG9wdGlvbnMuY29uZmlnW2tdID0gcGFyc2VGbiB8fCB0cnVlO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmV4YW1wbGUgPSBmdW5jdGlvbiAoY21kLCBkZXNjcmlwdGlvbikge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfGFycmF5PiBbc3RyaW5nXScsIFtjbWQsIGRlc2NyaXB0aW9uXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNtZCkpIHtcbiAgICAgICAgICAgIGNtZC5mb3JFYWNoKGV4YW1wbGVQYXJhbXMgPT4gc2VsZi5leGFtcGxlKC4uLmV4YW1wbGVQYXJhbXMpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHVzYWdlJDEuZXhhbXBsZShjbWQsIGRlc2NyaXB0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuY29tbWFuZCA9IGZ1bmN0aW9uIChjbWQsIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyLCBtaWRkbGV3YXJlcywgZGVwcmVjYXRlZCkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfGFycmF5fG9iamVjdD4gW3N0cmluZ3xib29sZWFuXSBbZnVuY3Rpb258b2JqZWN0XSBbZnVuY3Rpb25dIFthcnJheV0gW2Jvb2xlYW58c3RyaW5nXScsIFtjbWQsIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyLCBtaWRkbGV3YXJlcywgZGVwcmVjYXRlZF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBjb21tYW5kJDEuYWRkSGFuZGxlcihjbWQsIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyLCBtaWRkbGV3YXJlcywgZGVwcmVjYXRlZCk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5jb21tYW5kRGlyID0gZnVuY3Rpb24gKGRpciwgb3B0cykge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nPiBbb2JqZWN0XScsIFtkaXIsIG9wdHNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgY29uc3QgcmVxID0gcGFyZW50UmVxdWlyZSB8fCBzaGltJDEucmVxdWlyZTtcbiAgICAgICAgY29tbWFuZCQxLmFkZERpcmVjdG9yeShkaXIsIHNlbGYuZ2V0Q29udGV4dCgpLCByZXEsIHNoaW0kMS5nZXRDYWxsZXJGaWxlKCksIG9wdHMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZGVtYW5kID0gc2VsZi5yZXF1aXJlZCA9IHNlbGYucmVxdWlyZSA9IGZ1bmN0aW9uIGRlbWFuZChrZXlzLCBtYXgsIG1zZykge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShtYXgpKSB7XG4gICAgICAgICAgICBtYXguZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKG1zZywgdHJ1ZSwgc2hpbSQxKTtcbiAgICAgICAgICAgICAgICBkZW1hbmRPcHRpb24oa2V5LCBtc2cpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBtYXggPSBJbmZpbml0eTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgbWF4ICE9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgbXNnID0gbWF4O1xuICAgICAgICAgICAgbWF4ID0gSW5maW5pdHk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBrZXlzID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwobXNnLCB0cnVlLCBzaGltJDEpO1xuICAgICAgICAgICAgc2VsZi5kZW1hbmRDb21tYW5kKGtleXMsIG1heCwgbXNnLCBtc2cpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoa2V5cykpIHtcbiAgICAgICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKG1zZywgdHJ1ZSwgc2hpbSQxKTtcbiAgICAgICAgICAgICAgICBkZW1hbmRPcHRpb24oa2V5LCBtc2cpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG1zZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBkZW1hbmRPcHRpb24oa2V5cywgbXNnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG1zZyA9PT0gdHJ1ZSB8fCB0eXBlb2YgbXNnID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIGRlbWFuZE9wdGlvbihrZXlzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZGVtYW5kQ29tbWFuZCA9IGZ1bmN0aW9uIGRlbWFuZENvbW1hbmQobWluID0gMSwgbWF4LCBtaW5Nc2csIG1heE1zZykge1xuICAgICAgICBhcmdzZXJ0KCdbbnVtYmVyXSBbbnVtYmVyfHN0cmluZ10gW3N0cmluZ3xudWxsfHVuZGVmaW5lZF0gW3N0cmluZ3xudWxsfHVuZGVmaW5lZF0nLCBbbWluLCBtYXgsIG1pbk1zZywgbWF4TXNnXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2YgbWF4ICE9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgbWluTXNnID0gbWF4O1xuICAgICAgICAgICAgbWF4ID0gSW5maW5pdHk7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZi5nbG9iYWwoJ18nLCBmYWxzZSk7XG4gICAgICAgIG9wdGlvbnMuZGVtYW5kZWRDb21tYW5kcy5fID0ge1xuICAgICAgICAgICAgbWluLFxuICAgICAgICAgICAgbWF4LFxuICAgICAgICAgICAgbWluTXNnLFxuICAgICAgICAgICAgbWF4TXNnLFxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0RGVtYW5kZWRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgICBhcmdzZXJ0KFtdLCAwKTtcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZGVtYW5kZWRPcHRpb25zO1xuICAgIH07XG4gICAgc2VsZi5nZXREZW1hbmRlZENvbW1hbmRzID0gKCkgPT4ge1xuICAgICAgICBhcmdzZXJ0KFtdLCAwKTtcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZGVtYW5kZWRDb21tYW5kcztcbiAgICB9O1xuICAgIHNlbGYuZGVwcmVjYXRlT3B0aW9uID0gZnVuY3Rpb24gZGVwcmVjYXRlT3B0aW9uKG9wdGlvbiwgbWVzc2FnZSkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nPiBbc3RyaW5nfGJvb2xlYW5dJywgW29wdGlvbiwgbWVzc2FnZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBvcHRpb25zLmRlcHJlY2F0ZWRPcHRpb25zW29wdGlvbl0gPSBtZXNzYWdlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0RGVwcmVjYXRlZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICAgIGFyZ3NlcnQoW10sIDApO1xuICAgICAgICByZXR1cm4gb3B0aW9ucy5kZXByZWNhdGVkT3B0aW9ucztcbiAgICB9O1xuICAgIHNlbGYuaW1wbGllcyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8b2JqZWN0PiBbbnVtYmVyfHN0cmluZ3xhcnJheV0nLCBba2V5LCB2YWx1ZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICB2YWxpZGF0aW9uJDEuaW1wbGllcyhrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmNvbmZsaWN0cyA9IGZ1bmN0aW9uIChrZXkxLCBrZXkyKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8b2JqZWN0PiBbc3RyaW5nfGFycmF5XScsIFtrZXkxLCBrZXkyXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5jb25mbGljdHMoa2V5MSwga2V5Mik7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi51c2FnZSA9IGZ1bmN0aW9uIChtc2csIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8bnVsbHx1bmRlZmluZWQ+IFtzdHJpbmd8Ym9vbGVhbl0gW2Z1bmN0aW9ufG9iamVjdF0gW2Z1bmN0aW9uXScsIFttc2csIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmIChkZXNjcmlwdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBhc3NlcnROb3RTdHJpY3RFcXVhbChtc2csIG51bGwsIHNoaW0kMSk7XG4gICAgICAgICAgICBpZiAoKG1zZyB8fCAnJykubWF0Y2goL15cXCQwKCB8JCkvKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLmNvbW1hbmQobXNnLCBkZXNjcmlwdGlvbiwgYnVpbGRlciwgaGFuZGxlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgWUVycm9yKCcudXNhZ2UoKSBkZXNjcmlwdGlvbiBtdXN0IHN0YXJ0IHdpdGggJDAgaWYgYmVpbmcgdXNlZCBhcyBhbGlhcyBmb3IgLmNvbW1hbmQoKScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdXNhZ2UkMS51c2FnZShtc2cpO1xuICAgICAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNlbGYuZXBpbG9ndWUgPSBzZWxmLmVwaWxvZyA9IGZ1bmN0aW9uIChtc2cpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZz4nLCBbbXNnXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHVzYWdlJDEuZXBpbG9nKG1zZyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5mYWlsID0gZnVuY3Rpb24gKGYpIHtcbiAgICAgICAgYXJnc2VydCgnPGZ1bmN0aW9uPicsIFtmXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHVzYWdlJDEuZmFpbEZuKGYpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYub25GaW5pc2hDb21tYW5kID0gZnVuY3Rpb24gKGYpIHtcbiAgICAgICAgYXJnc2VydCgnPGZ1bmN0aW9uPicsIFtmXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGhhbmRsZXJGaW5pc2hDb21tYW5kID0gZjtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdldEhhbmRsZXJGaW5pc2hDb21tYW5kID0gKCkgPT4gaGFuZGxlckZpbmlzaENvbW1hbmQ7XG4gICAgc2VsZi5jaGVjayA9IGZ1bmN0aW9uIChmLCBfZ2xvYmFsKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxmdW5jdGlvbj4gW2Jvb2xlYW5dJywgW2YsIF9nbG9iYWxdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLmNoZWNrKGYsIF9nbG9iYWwgIT09IGZhbHNlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdsb2JhbCA9IGZ1bmN0aW9uIGdsb2JhbChnbG9iYWxzLCBnbG9iYWwpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZ3xhcnJheT4gW2Jvb2xlYW5dJywgW2dsb2JhbHMsIGdsb2JhbF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBnbG9iYWxzID0gW10uY29uY2F0KGdsb2JhbHMpO1xuICAgICAgICBpZiAoZ2xvYmFsICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgb3B0aW9ucy5sb2NhbCA9IG9wdGlvbnMubG9jYWwuZmlsdGVyKGwgPT4gZ2xvYmFscy5pbmRleE9mKGwpID09PSAtMSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBnbG9iYWxzLmZvckVhY2goZyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMubG9jYWwuaW5kZXhPZihnKSA9PT0gLTEpXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMubG9jYWwucHVzaChnKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5wa2dDb25mID0gZnVuY3Rpb24gcGtnQ29uZihrZXksIHJvb3RQYXRoKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmc+IFtzdHJpbmddJywgW2tleSwgcm9vdFBhdGhdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgbGV0IGNvbmYgPSBudWxsO1xuICAgICAgICBjb25zdCBvYmogPSBwa2dVcChyb290UGF0aCB8fCBjd2QpO1xuICAgICAgICBpZiAob2JqW2tleV0gJiYgdHlwZW9mIG9ialtrZXldID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgY29uZiA9IGFwcGx5RXh0ZW5kcyhvYmpba2V5XSwgcm9vdFBhdGggfHwgY3dkLCBzZWxmLmdldFBhcnNlckNvbmZpZ3VyYXRpb24oKVsnZGVlcC1tZXJnZS1jb25maWcnXSB8fCBmYWxzZSwgc2hpbSQxKTtcbiAgICAgICAgICAgIG9wdGlvbnMuY29uZmlnT2JqZWN0cyA9IChvcHRpb25zLmNvbmZpZ09iamVjdHMgfHwgW10pLmNvbmNhdChjb25mKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGNvbnN0IHBrZ3MgPSB7fTtcbiAgICBmdW5jdGlvbiBwa2dVcChyb290UGF0aCkge1xuICAgICAgICBjb25zdCBucGF0aCA9IHJvb3RQYXRoIHx8ICcqJztcbiAgICAgICAgaWYgKHBrZ3NbbnBhdGhdKVxuICAgICAgICAgICAgcmV0dXJuIHBrZ3NbbnBhdGhdO1xuICAgICAgICBsZXQgb2JqID0ge307XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBsZXQgc3RhcnREaXIgPSByb290UGF0aCB8fCBzaGltJDEubWFpbkZpbGVuYW1lO1xuICAgICAgICAgICAgaWYgKCFyb290UGF0aCAmJiBzaGltJDEucGF0aC5leHRuYW1lKHN0YXJ0RGlyKSkge1xuICAgICAgICAgICAgICAgIHN0YXJ0RGlyID0gc2hpbSQxLnBhdGguZGlybmFtZShzdGFydERpcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBwa2dKc29uUGF0aCA9IHNoaW0kMS5maW5kVXAoc3RhcnREaXIsIChkaXIsIG5hbWVzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG5hbWVzLmluY2x1ZGVzKCdwYWNrYWdlLmpzb24nKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3BhY2thZ2UuanNvbic7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwocGtnSnNvblBhdGgsIHVuZGVmaW5lZCwgc2hpbSQxKTtcbiAgICAgICAgICAgIG9iaiA9IEpTT04ucGFyc2Uoc2hpbSQxLnJlYWRGaWxlU3luYyhwa2dKc29uUGF0aCwgJ3V0ZjgnKSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKF9ub29wKSB7IH1cbiAgICAgICAgcGtnc1tucGF0aF0gPSBvYmogfHwge307XG4gICAgICAgIHJldHVybiBwa2dzW25wYXRoXTtcbiAgICB9XG4gICAgbGV0IHBhcnNlRm4gPSBudWxsO1xuICAgIGxldCBwYXJzZUNvbnRleHQgPSBudWxsO1xuICAgIHNlbGYucGFyc2UgPSBmdW5jdGlvbiBwYXJzZShhcmdzLCBzaG9ydENpcmN1aXQsIF9wYXJzZUZuKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmd8YXJyYXldIFtmdW5jdGlvbnxib29sZWFufG9iamVjdF0gW2Z1bmN0aW9uXScsIFthcmdzLCBzaG9ydENpcmN1aXQsIF9wYXJzZUZuXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGZyZWV6ZSgpO1xuICAgICAgICBpZiAodHlwZW9mIGFyZ3MgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjb25zdCBhcmd2ID0gc2VsZi5fcGFyc2VBcmdzKHByb2Nlc3NBcmdzKTtcbiAgICAgICAgICAgIGNvbnN0IHRtcFBhcnNlZCA9IHNlbGYucGFyc2VkO1xuICAgICAgICAgICAgdW5mcmVlemUoKTtcbiAgICAgICAgICAgIHNlbGYucGFyc2VkID0gdG1wUGFyc2VkO1xuICAgICAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBzaG9ydENpcmN1aXQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBwYXJzZUNvbnRleHQgPSBzaG9ydENpcmN1aXQ7XG4gICAgICAgICAgICBzaG9ydENpcmN1aXQgPSBfcGFyc2VGbjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHNob3J0Q2lyY3VpdCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcGFyc2VGbiA9IHNob3J0Q2lyY3VpdDtcbiAgICAgICAgICAgIHNob3J0Q2lyY3VpdCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghc2hvcnRDaXJjdWl0KVxuICAgICAgICAgICAgcHJvY2Vzc0FyZ3MgPSBhcmdzO1xuICAgICAgICBpZiAocGFyc2VGbilcbiAgICAgICAgICAgIGV4aXRQcm9jZXNzID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IHNlbGYuX3BhcnNlQXJncyhhcmdzLCAhIXNob3J0Q2lyY3VpdCk7XG4gICAgICAgIGNvbXBsZXRpb24kMS5zZXRQYXJzZWQoc2VsZi5wYXJzZWQpO1xuICAgICAgICBpZiAocGFyc2VGbilcbiAgICAgICAgICAgIHBhcnNlRm4oZXhpdEVycm9yLCBwYXJzZWQsIG91dHB1dCk7XG4gICAgICAgIHVuZnJlZXplKCk7XG4gICAgICAgIHJldHVybiBwYXJzZWQ7XG4gICAgfTtcbiAgICBzZWxmLl9nZXRQYXJzZUNvbnRleHQgPSAoKSA9PiBwYXJzZUNvbnRleHQgfHwge307XG4gICAgc2VsZi5faGFzUGFyc2VDYWxsYmFjayA9ICgpID0+ICEhcGFyc2VGbjtcbiAgICBzZWxmLm9wdGlvbiA9IHNlbGYub3B0aW9ucyA9IGZ1bmN0aW9uIG9wdGlvbihrZXksIG9wdCkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfG9iamVjdD4gW29iamVjdF0nLCBba2V5LCBvcHRdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHR5cGVvZiBrZXkgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhrZXkpLmZvckVhY2goayA9PiB7XG4gICAgICAgICAgICAgICAgc2VsZi5vcHRpb25zKGssIGtleVtrXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygb3B0ICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgIG9wdCA9IHt9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb3B0aW9ucy5rZXlba2V5XSA9IHRydWU7XG4gICAgICAgICAgICBpZiAob3B0LmFsaWFzKVxuICAgICAgICAgICAgICAgIHNlbGYuYWxpYXMoa2V5LCBvcHQuYWxpYXMpO1xuICAgICAgICAgICAgY29uc3QgZGVwcmVjYXRlID0gb3B0LmRlcHJlY2F0ZSB8fCBvcHQuZGVwcmVjYXRlZDtcbiAgICAgICAgICAgIGlmIChkZXByZWNhdGUpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlcHJlY2F0ZU9wdGlvbihrZXksIGRlcHJlY2F0ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBkZW1hbmQgPSBvcHQuZGVtYW5kIHx8IG9wdC5yZXF1aXJlZCB8fCBvcHQucmVxdWlyZTtcbiAgICAgICAgICAgIGlmIChkZW1hbmQpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlbWFuZChrZXksIGRlbWFuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmRlbWFuZE9wdGlvbikge1xuICAgICAgICAgICAgICAgIHNlbGYuZGVtYW5kT3B0aW9uKGtleSwgdHlwZW9mIG9wdC5kZW1hbmRPcHRpb24gPT09ICdzdHJpbmcnID8gb3B0LmRlbWFuZE9wdGlvbiA6IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvbmZsaWN0cykge1xuICAgICAgICAgICAgICAgIHNlbGYuY29uZmxpY3RzKGtleSwgb3B0LmNvbmZsaWN0cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoJ2RlZmF1bHQnIGluIG9wdCkge1xuICAgICAgICAgICAgICAgIHNlbGYuZGVmYXVsdChrZXksIG9wdC5kZWZhdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChvcHQuaW1wbGllcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5pbXBsaWVzKGtleSwgb3B0LmltcGxpZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdC5uYXJncyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5uYXJncyhrZXksIG9wdC5uYXJncyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvbmZpZykge1xuICAgICAgICAgICAgICAgIHNlbGYuY29uZmlnKGtleSwgb3B0LmNvbmZpZ1BhcnNlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0Lm5vcm1hbGl6ZSkge1xuICAgICAgICAgICAgICAgIHNlbGYubm9ybWFsaXplKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNob2ljZXMpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmNob2ljZXMoa2V5LCBvcHQuY2hvaWNlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvZXJjZSkge1xuICAgICAgICAgICAgICAgIHNlbGYuY29lcmNlKGtleSwgb3B0LmNvZXJjZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0Lmdyb3VwKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5ncm91cChrZXksIG9wdC5ncm91cCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmJvb2xlYW4gfHwgb3B0LnR5cGUgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgICAgIHNlbGYuYm9vbGVhbihrZXkpO1xuICAgICAgICAgICAgICAgIGlmIChvcHQuYWxpYXMpXG4gICAgICAgICAgICAgICAgICAgIHNlbGYuYm9vbGVhbihvcHQuYWxpYXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdC5hcnJheSB8fCBvcHQudHlwZSA9PT0gJ2FycmF5Jykge1xuICAgICAgICAgICAgICAgIHNlbGYuYXJyYXkoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAob3B0LmFsaWFzKVxuICAgICAgICAgICAgICAgICAgICBzZWxmLmFycmF5KG9wdC5hbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0Lm51bWJlciB8fCBvcHQudHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICBzZWxmLm51bWJlcihrZXkpO1xuICAgICAgICAgICAgICAgIGlmIChvcHQuYWxpYXMpXG4gICAgICAgICAgICAgICAgICAgIHNlbGYubnVtYmVyKG9wdC5hbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LnN0cmluZyB8fCBvcHQudHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBzZWxmLnN0cmluZyhrZXkpO1xuICAgICAgICAgICAgICAgIGlmIChvcHQuYWxpYXMpXG4gICAgICAgICAgICAgICAgICAgIHNlbGYuc3RyaW5nKG9wdC5hbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvdW50IHx8IG9wdC50eXBlID09PSAnY291bnQnKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5jb3VudChrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBvcHQuZ2xvYmFsID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmdsb2JhbChrZXksIG9wdC5nbG9iYWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdC5kZWZhdWx0RGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLmRlZmF1bHREZXNjcmlwdGlvbltrZXldID0gb3B0LmRlZmF1bHREZXNjcmlwdGlvbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChvcHQuc2tpcFZhbGlkYXRpb24pIHtcbiAgICAgICAgICAgICAgICBzZWxmLnNraXBWYWxpZGF0aW9uKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBkZXNjID0gb3B0LmRlc2NyaWJlIHx8IG9wdC5kZXNjcmlwdGlvbiB8fCBvcHQuZGVzYztcbiAgICAgICAgICAgIHNlbGYuZGVzY3JpYmUoa2V5LCBkZXNjKTtcbiAgICAgICAgICAgIGlmIChvcHQuaGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5oaWRlKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LnJlcXVpcmVzQXJnKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5yZXF1aXJlc0FyZyhrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5nZXRPcHRpb25zID0gKCkgPT4gb3B0aW9ucztcbiAgICBzZWxmLnBvc2l0aW9uYWwgPSBmdW5jdGlvbiAoa2V5LCBvcHRzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmc+IDxvYmplY3Q+JywgW2tleSwgb3B0c10sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBpZiAoY29udGV4dC5yZXNldHMgPT09IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBZRXJyb3IoXCIucG9zaXRpb25hbCgpIGNhbiBvbmx5IGJlIGNhbGxlZCBpbiBhIGNvbW1hbmQncyBidWlsZGVyIGZ1bmN0aW9uXCIpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHN1cHBvcnRlZE9wdHMgPSBbXG4gICAgICAgICAgICAnZGVmYXVsdCcsXG4gICAgICAgICAgICAnZGVmYXVsdERlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICdpbXBsaWVzJyxcbiAgICAgICAgICAgICdub3JtYWxpemUnLFxuICAgICAgICAgICAgJ2Nob2ljZXMnLFxuICAgICAgICAgICAgJ2NvbmZsaWN0cycsXG4gICAgICAgICAgICAnY29lcmNlJyxcbiAgICAgICAgICAgICd0eXBlJyxcbiAgICAgICAgICAgICdkZXNjcmliZScsXG4gICAgICAgICAgICAnZGVzYycsXG4gICAgICAgICAgICAnZGVzY3JpcHRpb24nLFxuICAgICAgICAgICAgJ2FsaWFzJyxcbiAgICAgICAgXTtcbiAgICAgICAgb3B0cyA9IG9iakZpbHRlcihvcHRzLCAoaywgdikgPT4ge1xuICAgICAgICAgICAgbGV0IGFjY2VwdCA9IHN1cHBvcnRlZE9wdHMuaW5kZXhPZihrKSAhPT0gLTE7XG4gICAgICAgICAgICBpZiAoayA9PT0gJ3R5cGUnICYmIFsnc3RyaW5nJywgJ251bWJlcicsICdib29sZWFuJ10uaW5kZXhPZih2KSA9PT0gLTEpXG4gICAgICAgICAgICAgICAgYWNjZXB0ID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gYWNjZXB0O1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgZnVsbENvbW1hbmQgPSBjb250ZXh0LmZ1bGxDb21tYW5kc1tjb250ZXh0LmZ1bGxDb21tYW5kcy5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgcGFyc2VPcHRpb25zID0gZnVsbENvbW1hbmRcbiAgICAgICAgICAgID8gY29tbWFuZCQxLmNtZFRvUGFyc2VPcHRpb25zKGZ1bGxDb21tYW5kKVxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgYXJyYXk6IFtdLFxuICAgICAgICAgICAgICAgIGFsaWFzOiB7fSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB7fSxcbiAgICAgICAgICAgICAgICBkZW1hbmQ6IHt9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgb2JqZWN0S2V5cyhwYXJzZU9wdGlvbnMpLmZvckVhY2gocGsgPT4ge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VPcHRpb24gPSBwYXJzZU9wdGlvbnNbcGtdO1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocGFyc2VPcHRpb24pKSB7XG4gICAgICAgICAgICAgICAgaWYgKHBhcnNlT3B0aW9uLmluZGV4T2Yoa2V5KSAhPT0gLTEpXG4gICAgICAgICAgICAgICAgICAgIG9wdHNbcGtdID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChwYXJzZU9wdGlvbltrZXldICYmICEocGsgaW4gb3B0cykpXG4gICAgICAgICAgICAgICAgICAgIG9wdHNbcGtdID0gcGFyc2VPcHRpb25ba2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHNlbGYuZ3JvdXAoa2V5LCB1c2FnZSQxLmdldFBvc2l0aW9uYWxHcm91cE5hbWUoKSk7XG4gICAgICAgIHJldHVybiBzZWxmLm9wdGlvbihrZXksIG9wdHMpO1xuICAgIH07XG4gICAgc2VsZi5ncm91cCA9IGZ1bmN0aW9uIGdyb3VwKG9wdHMsIGdyb3VwTmFtZSkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfGFycmF5PiA8c3RyaW5nPicsIFtvcHRzLCBncm91cE5hbWVdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgY29uc3QgZXhpc3RpbmcgPSBwcmVzZXJ2ZWRHcm91cHNbZ3JvdXBOYW1lXSB8fCBncm91cHNbZ3JvdXBOYW1lXTtcbiAgICAgICAgaWYgKHByZXNlcnZlZEdyb3Vwc1tncm91cE5hbWVdKSB7XG4gICAgICAgICAgICBkZWxldGUgcHJlc2VydmVkR3JvdXBzW2dyb3VwTmFtZV07XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2VlbiA9IHt9O1xuICAgICAgICBncm91cHNbZ3JvdXBOYW1lXSA9IChleGlzdGluZyB8fCBbXSkuY29uY2F0KG9wdHMpLmZpbHRlcihrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKHNlZW5ba2V5XSlcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gKHNlZW5ba2V5XSA9IHRydWUpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdldEdyb3VwcyA9ICgpID0+IE9iamVjdC5hc3NpZ24oe30sIGdyb3VwcywgcHJlc2VydmVkR3JvdXBzKTtcbiAgICBzZWxmLmVudiA9IGZ1bmN0aW9uIChwcmVmaXgpIHtcbiAgICAgICAgYXJnc2VydCgnW3N0cmluZ3xib29sZWFuXScsIFtwcmVmaXhdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHByZWZpeCA9PT0gZmFsc2UpXG4gICAgICAgICAgICBkZWxldGUgb3B0aW9ucy5lbnZQcmVmaXg7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIG9wdGlvbnMuZW52UHJlZml4ID0gcHJlZml4IHx8ICcnO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYud3JhcCA9IGZ1bmN0aW9uIChjb2xzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxudW1iZXJ8bnVsbHx1bmRlZmluZWQ+JywgW2NvbHNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgdXNhZ2UkMS53cmFwKGNvbHMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGxldCBzdHJpY3QgPSBmYWxzZTtcbiAgICBzZWxmLnN0cmljdCA9IGZ1bmN0aW9uIChlbmFibGVkKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFuXScsIFtlbmFibGVkXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHN0cmljdCA9IGVuYWJsZWQgIT09IGZhbHNlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0U3RyaWN0ID0gKCkgPT4gc3RyaWN0O1xuICAgIGxldCBzdHJpY3RDb21tYW5kcyA9IGZhbHNlO1xuICAgIHNlbGYuc3RyaWN0Q29tbWFuZHMgPSBmdW5jdGlvbiAoZW5hYmxlZCkge1xuICAgICAgICBhcmdzZXJ0KCdbYm9vbGVhbl0nLCBbZW5hYmxlZF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBzdHJpY3RDb21tYW5kcyA9IGVuYWJsZWQgIT09IGZhbHNlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0U3RyaWN0Q29tbWFuZHMgPSAoKSA9PiBzdHJpY3RDb21tYW5kcztcbiAgICBsZXQgc3RyaWN0T3B0aW9ucyA9IGZhbHNlO1xuICAgIHNlbGYuc3RyaWN0T3B0aW9ucyA9IGZ1bmN0aW9uIChlbmFibGVkKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFuXScsIFtlbmFibGVkXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHN0cmljdE9wdGlvbnMgPSBlbmFibGVkICE9PSBmYWxzZTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdldFN0cmljdE9wdGlvbnMgPSAoKSA9PiBzdHJpY3RPcHRpb25zO1xuICAgIGxldCBwYXJzZXJDb25maWcgPSB7fTtcbiAgICBzZWxmLnBhcnNlckNvbmZpZ3VyYXRpb24gPSBmdW5jdGlvbiBwYXJzZXJDb25maWd1cmF0aW9uKGNvbmZpZykge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0PicsIFtjb25maWddLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcGFyc2VyQ29uZmlnID0gY29uZmlnO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbiA9ICgpID0+IHBhcnNlckNvbmZpZztcbiAgICBzZWxmLnNob3dIZWxwID0gZnVuY3Rpb24gKGxldmVsKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmd8ZnVuY3Rpb25dJywgW2xldmVsXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICghc2VsZi5wYXJzZWQpXG4gICAgICAgICAgICBzZWxmLl9wYXJzZUFyZ3MocHJvY2Vzc0FyZ3MpO1xuICAgICAgICBpZiAoY29tbWFuZCQxLmhhc0RlZmF1bHRDb21tYW5kKCkpIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVzZXRzKys7XG4gICAgICAgICAgICBjb21tYW5kJDEucnVuRGVmYXVsdEJ1aWxkZXJPbihzZWxmKTtcbiAgICAgICAgfVxuICAgICAgICB1c2FnZSQxLnNob3dIZWxwKGxldmVsKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBsZXQgdmVyc2lvbk9wdCA9IG51bGw7XG4gICAgc2VsZi52ZXJzaW9uID0gZnVuY3Rpb24gdmVyc2lvbihvcHQsIG1zZywgdmVyKSB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRWZXJzaW9uT3B0ID0gJ3ZlcnNpb24nO1xuICAgICAgICBhcmdzZXJ0KCdbYm9vbGVhbnxzdHJpbmddIFtzdHJpbmddIFtzdHJpbmddJywgW29wdCwgbXNnLCB2ZXJdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHZlcnNpb25PcHQpIHtcbiAgICAgICAgICAgIGRlbGV0ZUZyb21QYXJzZXJIaW50T2JqZWN0KHZlcnNpb25PcHQpO1xuICAgICAgICAgICAgdXNhZ2UkMS52ZXJzaW9uKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB2ZXJzaW9uT3B0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdmVyID0gZ3Vlc3NWZXJzaW9uKCk7XG4gICAgICAgICAgICBvcHQgPSBkZWZhdWx0VmVyc2lvbk9wdDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBpZiAob3B0ID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmVyID0gb3B0O1xuICAgICAgICAgICAgb3B0ID0gZGVmYXVsdFZlcnNpb25PcHQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgICAgdmVyID0gbXNnO1xuICAgICAgICAgICAgbXNnID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHZlcnNpb25PcHQgPSB0eXBlb2Ygb3B0ID09PSAnc3RyaW5nJyA/IG9wdCA6IGRlZmF1bHRWZXJzaW9uT3B0O1xuICAgICAgICBtc2cgPSBtc2cgfHwgdXNhZ2UkMS5kZWZlclkxOG5Mb29rdXAoJ1Nob3cgdmVyc2lvbiBudW1iZXInKTtcbiAgICAgICAgdXNhZ2UkMS52ZXJzaW9uKHZlciB8fCB1bmRlZmluZWQpO1xuICAgICAgICBzZWxmLmJvb2xlYW4odmVyc2lvbk9wdCk7XG4gICAgICAgIHNlbGYuZGVzY3JpYmUodmVyc2lvbk9wdCwgbXNnKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBndWVzc1ZlcnNpb24oKSB7XG4gICAgICAgIGNvbnN0IG9iaiA9IHBrZ1VwKCk7XG4gICAgICAgIHJldHVybiBvYmoudmVyc2lvbiB8fCAndW5rbm93bic7XG4gICAgfVxuICAgIGxldCBoZWxwT3B0ID0gbnVsbDtcbiAgICBzZWxmLmFkZEhlbHBPcHQgPSBzZWxmLmhlbHAgPSBmdW5jdGlvbiBhZGRIZWxwT3B0KG9wdCwgbXNnKSB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRIZWxwT3B0ID0gJ2hlbHAnO1xuICAgICAgICBhcmdzZXJ0KCdbc3RyaW5nfGJvb2xlYW5dIFtzdHJpbmddJywgW29wdCwgbXNnXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmIChoZWxwT3B0KSB7XG4gICAgICAgICAgICBkZWxldGVGcm9tUGFyc2VySGludE9iamVjdChoZWxwT3B0KTtcbiAgICAgICAgICAgIGhlbHBPcHQgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBpZiAob3B0ID09PSBmYWxzZSlcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZjtcbiAgICAgICAgfVxuICAgICAgICBoZWxwT3B0ID0gdHlwZW9mIG9wdCA9PT0gJ3N0cmluZycgPyBvcHQgOiBkZWZhdWx0SGVscE9wdDtcbiAgICAgICAgc2VsZi5ib29sZWFuKGhlbHBPcHQpO1xuICAgICAgICBzZWxmLmRlc2NyaWJlKGhlbHBPcHQsIG1zZyB8fCB1c2FnZSQxLmRlZmVyWTE4bkxvb2t1cCgnU2hvdyBoZWxwJykpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGNvbnN0IGRlZmF1bHRTaG93SGlkZGVuT3B0ID0gJ3Nob3ctaGlkZGVuJztcbiAgICBvcHRpb25zLnNob3dIaWRkZW5PcHQgPSBkZWZhdWx0U2hvd0hpZGRlbk9wdDtcbiAgICBzZWxmLmFkZFNob3dIaWRkZW5PcHQgPSBzZWxmLnNob3dIaWRkZW4gPSBmdW5jdGlvbiBhZGRTaG93SGlkZGVuT3B0KG9wdCwgbXNnKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmd8Ym9vbGVhbl0gW3N0cmluZ10nLCBbb3B0LCBtc2ddLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIGlmIChvcHQgPT09IGZhbHNlKVxuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNob3dIaWRkZW5PcHQgPSB0eXBlb2Ygb3B0ID09PSAnc3RyaW5nJyA/IG9wdCA6IGRlZmF1bHRTaG93SGlkZGVuT3B0O1xuICAgICAgICBzZWxmLmJvb2xlYW4oc2hvd0hpZGRlbk9wdCk7XG4gICAgICAgIHNlbGYuZGVzY3JpYmUoc2hvd0hpZGRlbk9wdCwgbXNnIHx8IHVzYWdlJDEuZGVmZXJZMThuTG9va3VwKCdTaG93IGhpZGRlbiBvcHRpb25zJykpO1xuICAgICAgICBvcHRpb25zLnNob3dIaWRkZW5PcHQgPSBzaG93SGlkZGVuT3B0O1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuaGlkZSA9IGZ1bmN0aW9uIGhpZGUoa2V5KSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmc+JywgW2tleV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBvcHRpb25zLmhpZGRlbk9wdGlvbnMucHVzaChrZXkpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuc2hvd0hlbHBPbkZhaWwgPSBmdW5jdGlvbiBzaG93SGVscE9uRmFpbChlbmFibGVkLCBtZXNzYWdlKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFufHN0cmluZ10gW3N0cmluZ10nLCBbZW5hYmxlZCwgbWVzc2FnZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICB1c2FnZSQxLnNob3dIZWxwT25GYWlsKGVuYWJsZWQsIG1lc3NhZ2UpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGxldCBleGl0UHJvY2VzcyA9IHRydWU7XG4gICAgc2VsZi5leGl0UHJvY2VzcyA9IGZ1bmN0aW9uIChlbmFibGVkID0gdHJ1ZSkge1xuICAgICAgICBhcmdzZXJ0KCdbYm9vbGVhbl0nLCBbZW5hYmxlZF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBleGl0UHJvY2VzcyA9IGVuYWJsZWQ7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5nZXRFeGl0UHJvY2VzcyA9ICgpID0+IGV4aXRQcm9jZXNzO1xuICAgIHNlbGYuc2hvd0NvbXBsZXRpb25TY3JpcHQgPSBmdW5jdGlvbiAoJDAsIGNtZCkge1xuICAgICAgICBhcmdzZXJ0KCdbc3RyaW5nXSBbc3RyaW5nXScsIFskMCwgY21kXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgICQwID0gJDAgfHwgc2VsZi4kMDtcbiAgICAgICAgX2xvZ2dlci5sb2coY29tcGxldGlvbiQxLmdlbmVyYXRlQ29tcGxldGlvblNjcmlwdCgkMCwgY21kIHx8IGNvbXBsZXRpb25Db21tYW5kIHx8ICdjb21wbGV0aW9uJykpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0Q29tcGxldGlvbiA9IGZ1bmN0aW9uIChhcmdzLCBkb25lKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheT4gPGZ1bmN0aW9uPicsIFthcmdzLCBkb25lXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGNvbXBsZXRpb24kMS5nZXRDb21wbGV0aW9uKGFyZ3MsIGRvbmUpO1xuICAgIH07XG4gICAgc2VsZi5sb2NhbGUgPSBmdW5jdGlvbiAobG9jYWxlKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmddJywgW2xvY2FsZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBpZiAoIWxvY2FsZSkge1xuICAgICAgICAgICAgZ3Vlc3NMb2NhbGUoKTtcbiAgICAgICAgICAgIHJldHVybiB5MThuLmdldExvY2FsZSgpO1xuICAgICAgICB9XG4gICAgICAgIGRldGVjdExvY2FsZSA9IGZhbHNlO1xuICAgICAgICB5MThuLnNldExvY2FsZShsb2NhbGUpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYudXBkYXRlU3RyaW5ncyA9IHNlbGYudXBkYXRlTG9jYWxlID0gZnVuY3Rpb24gKG9iaikge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0PicsIFtvYmpdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgZGV0ZWN0TG9jYWxlID0gZmFsc2U7XG4gICAgICAgIHkxOG4udXBkYXRlTG9jYWxlKG9iaik7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgbGV0IGRldGVjdExvY2FsZSA9IHRydWU7XG4gICAgc2VsZi5kZXRlY3RMb2NhbGUgPSBmdW5jdGlvbiAoZGV0ZWN0KSB7XG4gICAgICAgIGFyZ3NlcnQoJzxib29sZWFuPicsIFtkZXRlY3RdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgZGV0ZWN0TG9jYWxlID0gZGV0ZWN0O1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0RGV0ZWN0TG9jYWxlID0gKCkgPT4gZGV0ZWN0TG9jYWxlO1xuICAgIGNvbnN0IF9sb2dnZXIgPSB7XG4gICAgICAgIGxvZyguLi5hcmdzKSB7XG4gICAgICAgICAgICBpZiAoIXNlbGYuX2hhc1BhcnNlQ2FsbGJhY2soKSlcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyguLi5hcmdzKTtcbiAgICAgICAgICAgIGhhc091dHB1dCA9IHRydWU7XG4gICAgICAgICAgICBpZiAob3V0cHV0Lmxlbmd0aClcbiAgICAgICAgICAgICAgICBvdXRwdXQgKz0gJ1xcbic7XG4gICAgICAgICAgICBvdXRwdXQgKz0gYXJncy5qb2luKCcgJyk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yKC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmICghc2VsZi5faGFzUGFyc2VDYWxsYmFjaygpKVxuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoLi4uYXJncyk7XG4gICAgICAgICAgICBoYXNPdXRwdXQgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKG91dHB1dC5sZW5ndGgpXG4gICAgICAgICAgICAgICAgb3V0cHV0ICs9ICdcXG4nO1xuICAgICAgICAgICAgb3V0cHV0ICs9IGFyZ3Muam9pbignICcpO1xuICAgICAgICB9LFxuICAgIH07XG4gICAgc2VsZi5fZ2V0TG9nZ2VySW5zdGFuY2UgPSAoKSA9PiBfbG9nZ2VyO1xuICAgIHNlbGYuX2hhc091dHB1dCA9ICgpID0+IGhhc091dHB1dDtcbiAgICBzZWxmLl9zZXRIYXNPdXRwdXQgPSAoKSA9PiB7XG4gICAgICAgIGhhc091dHB1dCA9IHRydWU7XG4gICAgfTtcbiAgICBsZXQgcmVjb21tZW5kQ29tbWFuZHM7XG4gICAgc2VsZi5yZWNvbW1lbmRDb21tYW5kcyA9IGZ1bmN0aW9uIChyZWNvbW1lbmQgPSB0cnVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFuXScsIFtyZWNvbW1lbmRdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcmVjb21tZW5kQ29tbWFuZHMgPSByZWNvbW1lbmQ7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5nZXRVc2FnZUluc3RhbmNlID0gKCkgPT4gdXNhZ2UkMTtcbiAgICBzZWxmLmdldFZhbGlkYXRpb25JbnN0YW5jZSA9ICgpID0+IHZhbGlkYXRpb24kMTtcbiAgICBzZWxmLmdldENvbW1hbmRJbnN0YW5jZSA9ICgpID0+IGNvbW1hbmQkMTtcbiAgICBzZWxmLnRlcm1pbmFsV2lkdGggPSAoKSA9PiB7XG4gICAgICAgIGFyZ3NlcnQoW10sIDApO1xuICAgICAgICByZXR1cm4gc2hpbSQxLnByb2Nlc3Muc3RkQ29sdW1ucztcbiAgICB9O1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzZWxmLCAnYXJndicsIHtcbiAgICAgICAgZ2V0OiAoKSA9PiBzZWxmLl9wYXJzZUFyZ3MocHJvY2Vzc0FyZ3MpLFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIH0pO1xuICAgIHNlbGYuX3BhcnNlQXJncyA9IGZ1bmN0aW9uIHBhcnNlQXJncyhhcmdzLCBzaG9ydENpcmN1aXQsIF9jYWxsZWRGcm9tQ29tbWFuZCwgY29tbWFuZEluZGV4KSB7XG4gICAgICAgIGxldCBza2lwVmFsaWRhdGlvbiA9ICEhX2NhbGxlZEZyb21Db21tYW5kO1xuICAgICAgICBhcmdzID0gYXJncyB8fCBwcm9jZXNzQXJncztcbiAgICAgICAgb3B0aW9ucy5fXyA9IHkxOG4uX187XG4gICAgICAgIG9wdGlvbnMuY29uZmlndXJhdGlvbiA9IHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbigpO1xuICAgICAgICBjb25zdCBwb3B1bGF0ZURvdWJsZURhc2ggPSAhIW9wdGlvbnMuY29uZmlndXJhdGlvblsncG9wdWxhdGUtLSddO1xuICAgICAgICBjb25zdCBjb25maWcgPSBPYmplY3QuYXNzaWduKHt9LCBvcHRpb25zLmNvbmZpZ3VyYXRpb24sIHtcbiAgICAgICAgICAgICdwb3B1bGF0ZS0tJzogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IHNoaW0kMS5QYXJzZXIuZGV0YWlsZWQoYXJncywgT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucywge1xuICAgICAgICAgICAgY29uZmlndXJhdGlvbjogT2JqZWN0LmFzc2lnbih7ICdwYXJzZS1wb3NpdGlvbmFsLW51bWJlcnMnOiBmYWxzZSB9LCBjb25maWcpLFxuICAgICAgICB9KSk7XG4gICAgICAgIGxldCBhcmd2ID0gcGFyc2VkLmFyZ3Y7XG4gICAgICAgIGlmIChwYXJzZUNvbnRleHQpXG4gICAgICAgICAgICBhcmd2ID0gT2JqZWN0LmFzc2lnbih7fSwgYXJndiwgcGFyc2VDb250ZXh0KTtcbiAgICAgICAgY29uc3QgYWxpYXNlcyA9IHBhcnNlZC5hbGlhc2VzO1xuICAgICAgICBhcmd2LiQwID0gc2VsZi4kMDtcbiAgICAgICAgc2VsZi5wYXJzZWQgPSBwYXJzZWQ7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBndWVzc0xvY2FsZSgpO1xuICAgICAgICAgICAgaWYgKHNob3J0Q2lyY3VpdCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9wb3N0UHJvY2Vzcyhhcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gsIF9jYWxsZWRGcm9tQ29tbWFuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGVscE9wdCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlbHBDbWRzID0gW2hlbHBPcHRdXG4gICAgICAgICAgICAgICAgICAgIC5jb25jYXQoYWxpYXNlc1toZWxwT3B0XSB8fCBbXSlcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihrID0+IGsubGVuZ3RoID4gMSk7XG4gICAgICAgICAgICAgICAgaWYgKH5oZWxwQ21kcy5pbmRleE9mKCcnICsgYXJndi5fW2FyZ3YuXy5sZW5ndGggLSAxXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgYXJndi5fLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICBhcmd2W2hlbHBPcHRdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVyS2V5cyA9IGNvbW1hbmQkMS5nZXRDb21tYW5kcygpO1xuICAgICAgICAgICAgY29uc3QgcmVxdWVzdENvbXBsZXRpb25zID0gY29tcGxldGlvbiQxLmNvbXBsZXRpb25LZXkgaW4gYXJndjtcbiAgICAgICAgICAgIGNvbnN0IHNraXBSZWNvbW1lbmRhdGlvbiA9IGFyZ3ZbaGVscE9wdF0gfHwgcmVxdWVzdENvbXBsZXRpb25zO1xuICAgICAgICAgICAgY29uc3Qgc2tpcERlZmF1bHRDb21tYW5kID0gc2tpcFJlY29tbWVuZGF0aW9uICYmXG4gICAgICAgICAgICAgICAgKGhhbmRsZXJLZXlzLmxlbmd0aCA+IDEgfHwgaGFuZGxlcktleXNbMF0gIT09ICckMCcpO1xuICAgICAgICAgICAgaWYgKGFyZ3YuXy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBpZiAoaGFuZGxlcktleXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBmaXJzdFVua25vd25Db21tYW5kO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gY29tbWFuZEluZGV4IHx8IDAsIGNtZDsgYXJndi5fW2ldICE9PSB1bmRlZmluZWQ7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY21kID0gU3RyaW5nKGFyZ3YuX1tpXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAofmhhbmRsZXJLZXlzLmluZGV4T2YoY21kKSAmJiBjbWQgIT09IGNvbXBsZXRpb25Db21tYW5kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5uZXJBcmd2ID0gY29tbWFuZCQxLnJ1bkNvbW1hbmQoY21kLCBzZWxmLCBwYXJzZWQsIGkgKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcG9zdFByb2Nlc3MoaW5uZXJBcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoIWZpcnN0VW5rbm93bkNvbW1hbmQgJiYgY21kICE9PSBjb21wbGV0aW9uQ29tbWFuZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0VW5rbm93bkNvbW1hbmQgPSBjbWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbW1hbmQkMS5oYXNEZWZhdWx0Q29tbWFuZCgpICYmICFza2lwRGVmYXVsdENvbW1hbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlubmVyQXJndiA9IGNvbW1hbmQkMS5ydW5Db21tYW5kKG51bGwsIHNlbGYsIHBhcnNlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcG9zdFByb2Nlc3MoaW5uZXJBcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZWNvbW1lbmRDb21tYW5kcyAmJiBmaXJzdFVua25vd25Db21tYW5kICYmICFza2lwUmVjb21tZW5kYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRpb24kMS5yZWNvbW1lbmRDb21tYW5kcyhmaXJzdFVua25vd25Db21tYW5kLCBoYW5kbGVyS2V5cyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNvbXBsZXRpb25Db21tYW5kICYmXG4gICAgICAgICAgICAgICAgICAgIH5hcmd2Ll8uaW5kZXhPZihjb21wbGV0aW9uQ29tbWFuZCkgJiZcbiAgICAgICAgICAgICAgICAgICAgIXJlcXVlc3RDb21wbGV0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXhpdFByb2Nlc3MpXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRCbG9ja2luZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5zaG93Q29tcGxldGlvblNjcmlwdCgpO1xuICAgICAgICAgICAgICAgICAgICBzZWxmLmV4aXQoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY29tbWFuZCQxLmhhc0RlZmF1bHRDb21tYW5kKCkgJiYgIXNraXBEZWZhdWx0Q29tbWFuZCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlubmVyQXJndiA9IGNvbW1hbmQkMS5ydW5Db21tYW5kKG51bGwsIHNlbGYsIHBhcnNlZCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3Bvc3RQcm9jZXNzKGlubmVyQXJndiwgcG9wdWxhdGVEb3VibGVEYXNoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChyZXF1ZXN0Q29tcGxldGlvbnMpIHtcbiAgICAgICAgICAgICAgICBpZiAoZXhpdFByb2Nlc3MpXG4gICAgICAgICAgICAgICAgICAgIHNldEJsb2NraW5nKHRydWUpO1xuICAgICAgICAgICAgICAgIGFyZ3MgPSBbXS5jb25jYXQoYXJncyk7XG4gICAgICAgICAgICAgICAgY29uc3QgY29tcGxldGlvbkFyZ3MgPSBhcmdzLnNsaWNlKGFyZ3MuaW5kZXhPZihgLS0ke2NvbXBsZXRpb24kMS5jb21wbGV0aW9uS2V5fWApICsgMSk7XG4gICAgICAgICAgICAgICAgY29tcGxldGlvbiQxLmdldENvbXBsZXRpb24oY29tcGxldGlvbkFyZ3MsIGNvbXBsZXRpb25zID0+IHtcbiAgICAgICAgICAgICAgICAgICAgKGNvbXBsZXRpb25zIHx8IFtdKS5mb3JFYWNoKGNvbXBsZXRpb24gPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgX2xvZ2dlci5sb2coY29tcGxldGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBzZWxmLmV4aXQoMCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3Bvc3RQcm9jZXNzKGFyZ3YsICFwb3B1bGF0ZURvdWJsZURhc2gsIF9jYWxsZWRGcm9tQ29tbWFuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWhhc091dHB1dCkge1xuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKGFyZ3YpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGtleSA9PT0gaGVscE9wdCAmJiBhcmd2W2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChleGl0UHJvY2VzcylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRCbG9ja2luZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNraXBWYWxpZGF0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2hvd0hlbHAoJ2xvZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5leGl0KDApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtleSA9PT0gdmVyc2lvbk9wdCAmJiBhcmd2W2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChleGl0UHJvY2VzcylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRCbG9ja2luZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNraXBWYWxpZGF0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzYWdlJDEuc2hvd1ZlcnNpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZXhpdCgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFza2lwVmFsaWRhdGlvbiAmJiBvcHRpb25zLnNraXBWYWxpZGF0aW9uLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBza2lwVmFsaWRhdGlvbiA9IE9iamVjdC5rZXlzKGFyZ3YpLnNvbWUoa2V5ID0+IG9wdGlvbnMuc2tpcFZhbGlkYXRpb24uaW5kZXhPZihrZXkpID49IDAgJiYgYXJndltrZXldID09PSB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghc2tpcFZhbGlkYXRpb24pIHtcbiAgICAgICAgICAgICAgICBpZiAocGFyc2VkLmVycm9yKVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgWUVycm9yKHBhcnNlZC5lcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICBpZiAoIXJlcXVlc3RDb21wbGV0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICBzZWxmLl9ydW5WYWxpZGF0aW9uKGFyZ3YsIGFsaWFzZXMsIHt9LCBwYXJzZWQuZXJyb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBpZiAoZXJyIGluc3RhbmNlb2YgWUVycm9yKVxuICAgICAgICAgICAgICAgIHVzYWdlJDEuZmFpbChlcnIubWVzc2FnZSwgZXJyKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGYuX3Bvc3RQcm9jZXNzKGFyZ3YsIHBvcHVsYXRlRG91YmxlRGFzaCwgX2NhbGxlZEZyb21Db21tYW5kKTtcbiAgICB9O1xuICAgIHNlbGYuX3Bvc3RQcm9jZXNzID0gZnVuY3Rpb24gKGFyZ3YsIHBvcHVsYXRlRG91YmxlRGFzaCwgY2FsbGVkRnJvbUNvbW1hbmQgPSBmYWxzZSkge1xuICAgICAgICBpZiAoaXNQcm9taXNlKGFyZ3YpKVxuICAgICAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgICAgIGlmIChjYWxsZWRGcm9tQ29tbWFuZClcbiAgICAgICAgICAgIHJldHVybiBhcmd2O1xuICAgICAgICBpZiAoIXBvcHVsYXRlRG91YmxlRGFzaCkge1xuICAgICAgICAgICAgYXJndiA9IHNlbGYuX2NvcHlEb3VibGVEYXNoKGFyZ3YpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHBhcnNlUG9zaXRpb25hbE51bWJlcnMgPSBzZWxmLmdldFBhcnNlckNvbmZpZ3VyYXRpb24oKVsncGFyc2UtcG9zaXRpb25hbC1udW1iZXJzJ10gfHxcbiAgICAgICAgICAgIHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbigpWydwYXJzZS1wb3NpdGlvbmFsLW51bWJlcnMnXSA9PT0gdW5kZWZpbmVkO1xuICAgICAgICBpZiAocGFyc2VQb3NpdGlvbmFsTnVtYmVycykge1xuICAgICAgICAgICAgYXJndiA9IHNlbGYuX3BhcnNlUG9zaXRpb25hbE51bWJlcnMoYXJndik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgfTtcbiAgICBzZWxmLl9jb3B5RG91YmxlRGFzaCA9IGZ1bmN0aW9uIChhcmd2KSB7XG4gICAgICAgIGlmICghYXJndi5fIHx8ICFhcmd2WyctLSddKVxuICAgICAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgICAgIGFyZ3YuXy5wdXNoLmFwcGx5KGFyZ3YuXywgYXJndlsnLS0nXSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBkZWxldGUgYXJndlsnLS0nXTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoX2VycikgeyB9XG4gICAgICAgIHJldHVybiBhcmd2O1xuICAgIH07XG4gICAgc2VsZi5fcGFyc2VQb3NpdGlvbmFsTnVtYmVycyA9IGZ1bmN0aW9uIChhcmd2KSB7XG4gICAgICAgIGNvbnN0IGFyZ3MgPSBhcmd2WyctLSddID8gYXJndlsnLS0nXSA6IGFyZ3YuXztcbiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGFyZzsgKGFyZyA9IGFyZ3NbaV0pICE9PSB1bmRlZmluZWQ7IGkrKykge1xuICAgICAgICAgICAgaWYgKHNoaW0kMS5QYXJzZXIubG9va3NMaWtlTnVtYmVyKGFyZykgJiZcbiAgICAgICAgICAgICAgICBOdW1iZXIuaXNTYWZlSW50ZWdlcihNYXRoLmZsb29yKHBhcnNlRmxvYXQoYCR7YXJnfWApKSkpIHtcbiAgICAgICAgICAgICAgICBhcmdzW2ldID0gTnVtYmVyKGFyZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgfTtcbiAgICBzZWxmLl9ydW5WYWxpZGF0aW9uID0gZnVuY3Rpb24gcnVuVmFsaWRhdGlvbihhcmd2LCBhbGlhc2VzLCBwb3NpdGlvbmFsTWFwLCBwYXJzZUVycm9ycywgaXNEZWZhdWx0Q29tbWFuZCA9IGZhbHNlKSB7XG4gICAgICAgIGlmIChwYXJzZUVycm9ycylcbiAgICAgICAgICAgIHRocm93IG5ldyBZRXJyb3IocGFyc2VFcnJvcnMubWVzc2FnZSk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5ub25PcHRpb25Db3VudChhcmd2KTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLnJlcXVpcmVkQXJndW1lbnRzKGFyZ3YpO1xuICAgICAgICBsZXQgZmFpbGVkU3RyaWN0Q29tbWFuZHMgPSBmYWxzZTtcbiAgICAgICAgaWYgKHN0cmljdENvbW1hbmRzKSB7XG4gICAgICAgICAgICBmYWlsZWRTdHJpY3RDb21tYW5kcyA9IHZhbGlkYXRpb24kMS51bmtub3duQ29tbWFuZHMoYXJndik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0cmljdCAmJiAhZmFpbGVkU3RyaWN0Q29tbWFuZHMpIHtcbiAgICAgICAgICAgIHZhbGlkYXRpb24kMS51bmtub3duQXJndW1lbnRzKGFyZ3YsIGFsaWFzZXMsIHBvc2l0aW9uYWxNYXAsIGlzRGVmYXVsdENvbW1hbmQpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHN0cmljdE9wdGlvbnMpIHtcbiAgICAgICAgICAgIHZhbGlkYXRpb24kMS51bmtub3duQXJndW1lbnRzKGFyZ3YsIGFsaWFzZXMsIHt9LCBmYWxzZSwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHZhbGlkYXRpb24kMS5jdXN0b21DaGVja3MoYXJndiwgYWxpYXNlcyk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5saW1pdGVkQ2hvaWNlcyhhcmd2KTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLmltcGxpY2F0aW9ucyhhcmd2KTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLmNvbmZsaWN0aW5nKGFyZ3YpO1xuICAgIH07XG4gICAgZnVuY3Rpb24gZ3Vlc3NMb2NhbGUoKSB7XG4gICAgICAgIGlmICghZGV0ZWN0TG9jYWxlKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCBsb2NhbGUgPSBzaGltJDEuZ2V0RW52KCdMQ19BTEwnKSB8fFxuICAgICAgICAgICAgc2hpbSQxLmdldEVudignTENfTUVTU0FHRVMnKSB8fFxuICAgICAgICAgICAgc2hpbSQxLmdldEVudignTEFORycpIHx8XG4gICAgICAgICAgICBzaGltJDEuZ2V0RW52KCdMQU5HVUFHRScpIHx8XG4gICAgICAgICAgICAnZW5fVVMnO1xuICAgICAgICBzZWxmLmxvY2FsZShsb2NhbGUucmVwbGFjZSgvWy46XS4qLywgJycpKTtcbiAgICB9XG4gICAgc2VsZi5oZWxwKCk7XG4gICAgc2VsZi52ZXJzaW9uKCk7XG4gICAgcmV0dXJuIHNlbGY7XG59XG5jb25zdCByZWJhc2UgPSAoYmFzZSwgZGlyKSA9PiBzaGltJDEucGF0aC5yZWxhdGl2ZShiYXNlLCBkaXIpO1xuZnVuY3Rpb24gaXNZYXJnc0luc3RhbmNlKHkpIHtcbiAgICByZXR1cm4gISF5ICYmIHR5cGVvZiB5Ll9wYXJzZUFyZ3MgPT09ICdmdW5jdGlvbic7XG59XG5cbnZhciBfYSwgX2I7XG5jb25zdCB7IHJlYWRGaWxlU3luYyB9ID0gcmVxdWlyZSgnZnMnKTtcbmNvbnN0IHsgaW5zcGVjdCB9ID0gcmVxdWlyZSgndXRpbCcpO1xuY29uc3QgeyByZXNvbHZlIH0gPSByZXF1aXJlKCdwYXRoJyk7XG5jb25zdCB5MThuID0gcmVxdWlyZSgneTE4bicpO1xuY29uc3QgUGFyc2VyID0gcmVxdWlyZSgneWFyZ3MtcGFyc2VyJyk7XG52YXIgY2pzUGxhdGZvcm1TaGltID0ge1xuICAgIGFzc2VydDoge1xuICAgICAgICBub3RTdHJpY3RFcXVhbDogYXNzZXJ0Lm5vdFN0cmljdEVxdWFsLFxuICAgICAgICBzdHJpY3RFcXVhbDogYXNzZXJ0LnN0cmljdEVxdWFsLFxuICAgIH0sXG4gICAgY2xpdWk6IHJlcXVpcmUoJ2NsaXVpJyksXG4gICAgZmluZFVwOiByZXF1aXJlKCdlc2NhbGFkZS9zeW5jJyksXG4gICAgZ2V0RW52OiAoa2V5KSA9PiB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzLmVudltrZXldO1xuICAgIH0sXG4gICAgZ2V0Q2FsbGVyRmlsZTogcmVxdWlyZSgnZ2V0LWNhbGxlci1maWxlJyksXG4gICAgZ2V0UHJvY2Vzc0FyZ3ZCaW46IGdldFByb2Nlc3NBcmd2QmluLFxuICAgIGluc3BlY3QsXG4gICAgbWFpbkZpbGVuYW1lOiAoX2IgPSAoX2EgPSByZXF1aXJlID09PSBudWxsIHx8IHJlcXVpcmUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHJlcXVpcmUubWFpbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZpbGVuYW1lKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBwcm9jZXNzLmN3ZCgpLFxuICAgIFBhcnNlcixcbiAgICBwYXRoOiByZXF1aXJlKCdwYXRoJyksXG4gICAgcHJvY2Vzczoge1xuICAgICAgICBhcmd2OiAoKSA9PiBwcm9jZXNzLmFyZ3YsXG4gICAgICAgIGN3ZDogcHJvY2Vzcy5jd2QsXG4gICAgICAgIGV4ZWNQYXRoOiAoKSA9PiBwcm9jZXNzLmV4ZWNQYXRoLFxuICAgICAgICBleGl0OiAoY29kZSkgPT4ge1xuICAgICAgICAgICAgcHJvY2Vzcy5leGl0KGNvZGUpO1xuICAgICAgICB9LFxuICAgICAgICBuZXh0VGljazogcHJvY2Vzcy5uZXh0VGljayxcbiAgICAgICAgc3RkQ29sdW1uczogdHlwZW9mIHByb2Nlc3Muc3Rkb3V0LmNvbHVtbnMgIT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICA/IHByb2Nlc3Muc3Rkb3V0LmNvbHVtbnNcbiAgICAgICAgICAgIDogbnVsbCxcbiAgICB9LFxuICAgIHJlYWRGaWxlU3luYyxcbiAgICByZXF1aXJlOiByZXF1aXJlLFxuICAgIHJlcXVpcmVEaXJlY3Rvcnk6IHJlcXVpcmUoJ3JlcXVpcmUtZGlyZWN0b3J5JyksXG4gICAgc3RyaW5nV2lkdGg6IHJlcXVpcmUoJ3N0cmluZy13aWR0aCcpLFxuICAgIHkxOG46IHkxOG4oe1xuICAgICAgICBkaXJlY3Rvcnk6IHJlc29sdmUoX19kaXJuYW1lLCAnLi4vbG9jYWxlcycpLFxuICAgICAgICB1cGRhdGVGaWxlczogZmFsc2UsXG4gICAgfSksXG59O1xuXG5jb25zdCBtaW5Ob2RlVmVyc2lvbiA9IHByb2Nlc3MgJiYgcHJvY2Vzcy5lbnYgJiYgcHJvY2Vzcy5lbnYuWUFSR1NfTUlOX05PREVfVkVSU0lPTlxuICAgID8gTnVtYmVyKHByb2Nlc3MuZW52LllBUkdTX01JTl9OT0RFX1ZFUlNJT04pXG4gICAgOiAxMDtcbmlmIChwcm9jZXNzICYmIHByb2Nlc3MudmVyc2lvbikge1xuICAgIGNvbnN0IG1ham9yID0gTnVtYmVyKHByb2Nlc3MudmVyc2lvbi5tYXRjaCgvdihbXi5dKykvKVsxXSk7XG4gICAgaWYgKG1ham9yIDwgbWluTm9kZVZlcnNpb24pIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYHlhcmdzIHN1cHBvcnRzIGEgbWluaW11bSBOb2RlLmpzIHZlcnNpb24gb2YgJHttaW5Ob2RlVmVyc2lvbn0uIFJlYWQgb3VyIHZlcnNpb24gc3VwcG9ydCBwb2xpY3k6IGh0dHBzOi8vZ2l0aHViLmNvbS95YXJncy95YXJncyNzdXBwb3J0ZWQtbm9kZWpzLXZlcnNpb25zYCk7XG4gICAgfVxufVxuY29uc3QgUGFyc2VyJDEgPSByZXF1aXJlKCd5YXJncy1wYXJzZXInKTtcbmNvbnN0IFlhcmdzJDEgPSBZYXJnc1dpdGhTaGltKGNqc1BsYXRmb3JtU2hpbSk7XG52YXIgY2pzID0ge1xuICAgIGFwcGx5RXh0ZW5kcyxcbiAgICBjanNQbGF0Zm9ybVNoaW0sXG4gICAgWWFyZ3M6IFlhcmdzJDEsXG4gICAgYXJnc2VydCxcbiAgICBnbG9iYWxNaWRkbGV3YXJlRmFjdG9yeSxcbiAgICBpc1Byb21pc2UsXG4gICAgb2JqRmlsdGVyLFxuICAgIHBhcnNlQ29tbWFuZCxcbiAgICBQYXJzZXI6IFBhcnNlciQxLFxuICAgIHByb2Nlc3NBcmd2LFxuICAgIHJlYmFzZSxcbiAgICBZRXJyb3IsXG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGNqcztcbiIsICIndXNlIHN0cmljdCc7XG4vLyBjbGFzc2ljIHNpbmdsZXRvbiB5YXJncyBBUEksIHRvIHVzZSB5YXJnc1xuLy8gd2l0aG91dCBydW5uaW5nIGFzIGEgc2luZ2xldG9uIGRvOlxuLy8gcmVxdWlyZSgneWFyZ3MveWFyZ3MnKShwcm9jZXNzLmFyZ3Yuc2xpY2UoMikpXG5jb25zdCB7WWFyZ3MsIHByb2Nlc3NBcmd2fSA9IHJlcXVpcmUoJy4vYnVpbGQvaW5kZXguY2pzJyk7XG5cbkFyZ3YocHJvY2Vzc0FyZ3YuaGlkZUJpbihwcm9jZXNzLmFyZ3YpKTtcblxubW9kdWxlLmV4cG9ydHMgPSBBcmd2O1xuXG5mdW5jdGlvbiBBcmd2KHByb2Nlc3NBcmdzLCBjd2QpIHtcbiAgY29uc3QgYXJndiA9IFlhcmdzKHByb2Nlc3NBcmdzLCBjd2QsIHJlcXVpcmUpO1xuICBzaW5nbGV0b25pZnkoYXJndik7XG4gIHJldHVybiBhcmd2O1xufVxuXG4vKiAgSGFjayBhbiBpbnN0YW5jZSBvZiBBcmd2IHdpdGggcHJvY2Vzcy5hcmd2IGludG8gQXJndlxuICAgIHNvIHBlb3BsZSBjYW4gZG9cbiAgICByZXF1aXJlKCd5YXJncycpKFsnLS1iZWVibGU9MScsJy16Jywneml6emxlJ10pLmFyZ3ZcbiAgICB0byBwYXJzZSBhIGxpc3Qgb2YgYXJncyBhbmRcbiAgICByZXF1aXJlKCd5YXJncycpLmFyZ3ZcbiAgICB0byBnZXQgYSBwYXJzZWQgdmVyc2lvbiBvZiBwcm9jZXNzLmFyZ3YuXG4qL1xuZnVuY3Rpb24gc2luZ2xldG9uaWZ5KGluc3QpIHtcbiAgT2JqZWN0LmtleXMoaW5zdCkuZm9yRWFjaChrZXkgPT4ge1xuICAgIGlmIChrZXkgPT09ICdhcmd2Jykge1xuICAgICAgQXJndi5fX2RlZmluZUdldHRlcl9fKGtleSwgaW5zdC5fX2xvb2t1cEdldHRlcl9fKGtleSkpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGluc3Rba2V5XSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgQXJndltrZXldID0gaW5zdFtrZXldLmJpbmQoaW5zdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIEFyZ3YuX19kZWZpbmVHZXR0ZXJfXygnJDAnLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiBpbnN0LiQwO1xuICAgICAgfSk7XG4gICAgICBBcmd2Ll9fZGVmaW5lR2V0dGVyX18oJ3BhcnNlZCcsICgpID0+IHtcbiAgICAgICAgcmV0dXJuIGluc3QucGFyc2VkO1xuICAgICAgfSk7XG4gICAgfVxuICB9KTtcbn1cbiIsICIvKlxuICogYXJndi5qczogU2ltcGxlIG1lbW9yeS1iYXNlZCBzdG9yZSBmb3IgY29tbWFuZC1saW5lIGFyZ3VtZW50cy5cbiAqXG4gKiAoQykgMjAxMSwgQ2hhcmxpZSBSb2JiaW5zIGFuZCB0aGUgQ29udHJpYnV0b3JzLlxuICpcbiAqL1xuXG52YXIgdXRpbCA9IHJlcXVpcmUoJ3V0aWwnKSxcbiAgICBjb21tb24gPSByZXF1aXJlKCcuLi9jb21tb24nKSxcbiAgICBNZW1vcnkgPSByZXF1aXJlKCcuL21lbW9yeScpLk1lbW9yeTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBBcmd2IChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGlzIGluc3RhbmNlLlxuLy8gQ29uc3RydWN0b3IgZnVuY3Rpb24gZm9yIHRoZSBBcmd2IG5jb25mIHN0b3JlLCBhIHNpbXBsZSBhYnN0cmFjdGlvblxuLy8gYXJvdW5kIHRoZSBNZW1vcnkgc3RvcmUgdGhhdCBjYW4gcmVhZCBjb21tYW5kLWxpbmUgYXJndW1lbnRzLlxuLy9cbnZhciBBcmd2ID0gZXhwb3J0cy5Bcmd2ID0gZnVuY3Rpb24gKG9wdGlvbnMsIHVzYWdlKSB7XG4gIE1lbW9yeS5jYWxsKHRoaXMsIG9wdGlvbnMpO1xuXG4gIG9wdGlvbnMgICAgICAgID0gb3B0aW9ucyB8fCB7fTtcbiAgdGhpcy50eXBlICAgICA9ICdhcmd2JztcbiAgdGhpcy5yZWFkT25seSA9IHRydWU7XG4gIHRoaXMub3B0aW9ucyAgPSBvcHRpb25zO1xuICB0aGlzLnVzYWdlICAgID0gdXNhZ2U7XG4gIGlmKHR5cGVvZiBvcHRpb25zLnBhcnNlVmFsdWVzID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHRoaXMucGFyc2VWYWx1ZXMgPSBvcHRpb25zLnBhcnNlVmFsdWVzO1xuICAgICAgZGVsZXRlIG9wdGlvbnMucGFyc2VWYWx1ZXM7XG4gIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhcnNlVmFsdWVzID0gZmFsc2U7XG4gIH1cbiAgaWYgKHR5cGVvZiBvcHRpb25zLnRyYW5zZm9ybSA9PT0gJ2Z1bmN0aW9uJylcdTAwQTB7XG4gICAgICB0aGlzLnRyYW5zZm9ybSA9IG9wdGlvbnMudHJhbnNmb3JtO1xuICAgICAgZGVsZXRlIG9wdGlvbnMudHJhbnNmb3JtO1xuICB9IGVsc2Uge1xuICAgICAgdGhpcy50cmFuc2Zvcm0gPSBmYWxzZTtcbiAgfVxuICBpZiAodHlwZW9mIG9wdGlvbnMuc2VwYXJhdG9yID09PSAnc3RyaW5nJyB8fCBvcHRpb25zLnNlcGFyYXRvciBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuICAgIHRoaXMuc2VwYXJhdG9yID0gb3B0aW9ucy5zZXBhcmF0b3I7XG4gICAgZGVsZXRlIG9wdGlvbnMuc2VwYXJhdG9yO1xuICB9IGVsc2Uge1xuICAgIHRoaXMuc2VwYXJhdG9yID0gJyc7XG4gIH1cbn07XG5cbi8vIEluaGVyaXQgZnJvbSB0aGUgTWVtb3J5IHN0b3JlXG51dGlsLmluaGVyaXRzKEFyZ3YsIE1lbW9yeSk7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbG9hZFN5bmMgKClcbi8vIExvYWRzIHRoZSBkYXRhIHBhc3NlZCBpbiBmcm9tIGBwcm9jZXNzLmFyZ3ZgIGludG8gdGhpcyBpbnN0YW5jZS5cbi8vXG5Bcmd2LnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgdGhpcy5sb2FkQXJndigpO1xuICByZXR1cm4gdGhpcy5zdG9yZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbG9hZEFyZ3YgKClcbi8vIExvYWRzIHRoZSBkYXRhIHBhc3NlZCBpbiBmcm9tIHRoZSBjb21tYW5kLWxpbmUgYXJndW1lbnRzXG4vLyBpbnRvIHRoaXMgaW5zdGFuY2UuXG4vL1xuQXJndi5wcm90b3R5cGUubG9hZEFyZ3YgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzZWxmID0gdGhpcyxcbiAgICAgIHlhcmdzLCBhcmd2O1xuXG4gIHlhcmdzID0gaXNZYXJncyh0aGlzLm9wdGlvbnMpID9cbiAgICB0aGlzLm9wdGlvbnMgOlxuICAgIHR5cGVvZiB0aGlzLm9wdGlvbnMgPT09ICdvYmplY3QnID9cbiAgICAgIHJlcXVpcmUoJ3lhcmdzJykocHJvY2Vzcy5hcmd2LnNsaWNlKDIpKS5vcHRpb25zKHRoaXMub3B0aW9ucykgOlxuICAgICAgcmVxdWlyZSgneWFyZ3MnKShwcm9jZXNzLmFyZ3Yuc2xpY2UoMikpO1xuXG4gIGlmICh0eXBlb2YgdGhpcy51c2FnZSA9PT0gJ3N0cmluZycpIHsgeWFyZ3MudXNhZ2UodGhpcy51c2FnZSkgfVxuXG4gIGFyZ3YgPSB5YXJncy5hcmd2XG5cbiAgaWYgKCFhcmd2KSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKHRoaXMudHJhbnNmb3JtKSB7XG4gICAgYXJndiA9IGNvbW1vbi50cmFuc2Zvcm0oYXJndiwgdGhpcy50cmFuc2Zvcm0pO1xuICB9XG5cbiAgdGhpcy5yZWFkT25seSA9IGZhbHNlO1xuICBPYmplY3Qua2V5cyhhcmd2KS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICB2YXIgdmFsID0gYXJndltrZXldO1xuXG4gICAgaWYgKHR5cGVvZiB2YWwgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBpZiAoc2VsZi5wYXJzZVZhbHVlcykge1xuICAgICAgICB2YWwgPSBjb21tb24ucGFyc2VWYWx1ZXModmFsKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHNlbGYuc2VwYXJhdG9yKSB7XG4gICAgICAgIHNlbGYuc2V0KGNvbW1vbi5rZXkuYXBwbHkoY29tbW9uLCBrZXkuc3BsaXQoc2VsZi5zZXBhcmF0b3IpKSwgdmFsKTtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICBzZWxmLnNldChrZXksIHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9KTtcblxuICB0aGlzLnNob3dIZWxwID0geWFyZ3Muc2hvd0hlbHBcbiAgdGhpcy5oZWxwICAgICA9IHlhcmdzLmhlbHBcblxuICB0aGlzLnJlYWRPbmx5ID0gdHJ1ZTtcbiAgcmV0dXJuIHRoaXMuc3RvcmU7XG59O1xuXG5mdW5jdGlvbiBpc1lhcmdzKG9iaikge1xuICByZXR1cm4gKHR5cGVvZiBvYmogPT09ICdmdW5jdGlvbicgfHwgdHlwZW9mIG9iaiA9PT0gJ29iamVjdCcpICYmICgnYXJndicgaW4gb2JqKTtcbn1cbiIsICIvKlxuICogZW52LmpzOiBTaW1wbGUgbWVtb3J5LWJhc2VkIHN0b3JlIGZvciBlbnZpcm9ubWVudCB2YXJpYWJsZXNcbiAqXG4gKiAoQykgMjAxMSwgQ2hhcmxpZSBSb2JiaW5zIGFuZCB0aGUgQ29udHJpYnV0b3JzLlxuICpcbiAqL1xuXG52YXIgdXRpbCA9IHJlcXVpcmUoJ3V0aWwnKSxcbiAgICBjb21tb24gPSByZXF1aXJlKCcuLi9jb21tb24nKSxcbiAgICBNZW1vcnkgPSByZXF1aXJlKCcuL21lbW9yeScpLk1lbW9yeTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBFbnYgKG9wdGlvbnMpXG4vLyAjIyMjIEBvcHRpb25zIHtPYmplY3R9IE9wdGlvbnMgZm9yIHRoaXMgaW5zdGFuY2UuXG4vLyBDb25zdHJ1Y3RvciBmdW5jdGlvbiBmb3IgdGhlIEVudiBuY29uZiBzdG9yZSwgYSBzaW1wbGUgYWJzdHJhY3Rpb25cbi8vIGFyb3VuZCB0aGUgTWVtb3J5IHN0b3JlIHRoYXQgY2FuIHJlYWQgcHJvY2VzcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4vL1xudmFyIEVudiA9IGV4cG9ydHMuRW52ID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgTWVtb3J5LmNhbGwodGhpcywgb3B0aW9ucyk7XG5cbiAgb3B0aW9ucyAgICAgICAgPSBvcHRpb25zIHx8IHt9O1xuICB0aGlzLnR5cGUgICAgICA9ICdlbnYnO1xuICB0aGlzLnJlYWRPbmx5ICA9IG9wdGlvbnMucmVhZE9ubHkgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMucmVhZE9ubHkgOiB0cnVlO1xuICB0aGlzLndoaXRlbGlzdCA9IG9wdGlvbnMud2hpdGVsaXN0IHx8IFtdO1xuICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yIHx8ICcnO1xuICB0aGlzLmxvd2VyQ2FzZSA9IG9wdGlvbnMubG93ZXJDYXNlIHx8IGZhbHNlO1xuICB0aGlzLnBhcnNlVmFsdWVzID0gb3B0aW9ucy5wYXJzZVZhbHVlcyB8fCBmYWxzZTtcbiAgdGhpcy50cmFuc2Zvcm0gPSBvcHRpb25zLnRyYW5zZm9ybSB8fCBmYWxzZTtcblxuICBpZiAoKHt9KS50b1N0cmluZy5jYWxsKG9wdGlvbnMubWF0Y2gpID09PSAnW29iamVjdCBSZWdFeHBdJ1xuICAgICAgJiYgdHlwZW9mIG9wdGlvbnMgIT09ICdzdHJpbmcnKSB7XG4gICAgdGhpcy5tYXRjaCA9IG9wdGlvbnMubWF0Y2g7XG4gIH1cblxuICBpZiAob3B0aW9ucyBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgdGhpcy53aGl0ZWxpc3QgPSBvcHRpb25zO1xuICB9XG4gIGlmICh0eXBlb2Yob3B0aW9ucykgPT09ICdzdHJpbmcnIHx8IG9wdGlvbnMgaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnM7XG4gIH1cbn07XG5cbi8vIEluaGVyaXQgZnJvbSB0aGUgTWVtb3J5IHN0b3JlXG51dGlsLmluaGVyaXRzKEVudiwgTWVtb3J5KTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luYyAoKVxuLy8gTG9hZHMgdGhlIGRhdGEgcGFzc2VkIGluIGZyb20gYHByb2Nlc3MuZW52YCBpbnRvIHRoaXMgaW5zdGFuY2UuXG4vL1xuRW52LnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgdGhpcy5sb2FkRW52KCk7XG4gIHJldHVybiB0aGlzLnN0b3JlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkRW52ICgpXG4vLyBMb2FkcyB0aGUgZGF0YSBwYXNzZWQgaW4gZnJvbSBgcHJvY2Vzcy5lbnZgIGludG8gdGhpcyBpbnN0YW5jZS5cbi8vXG5FbnYucHJvdG90eXBlLmxvYWRFbnYgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzZWxmID0gdGhpcztcblxuICB2YXIgZW52ID0gcHJvY2Vzcy5lbnY7XG5cbiAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgZW52ID0ge307XG4gICAgT2JqZWN0LmtleXMocHJvY2Vzcy5lbnYpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgaWYgKGtleS5pbmRleE9mKHNlbGYucHJlZml4KSA9PT0gMCkge1xuICAgICAgICBlbnZba2V5LnJlcGxhY2Uoc2VsZi5wcmVmaXgsICcnKV0gPSBwcm9jZXNzLmVudltrZXldO1xuICAgICAgfSBcbiAgICB9KTtcbiAgfVxuXG4gIGlmICh0aGlzLmxvd2VyQ2FzZSkge1xuICAgIGVudiA9IHt9O1xuICAgIE9iamVjdC5rZXlzKHByb2Nlc3MuZW52KS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIGVudltrZXkudG9Mb3dlckNhc2UoKV0gPSBwcm9jZXNzLmVudltrZXldO1xuICAgIH0pO1xuICB9XG5cbiAgaWYgKHRoaXMudHJhbnNmb3JtKSB7XG4gICAgZW52ID0gY29tbW9uLnRyYW5zZm9ybShlbnYsIHRoaXMudHJhbnNmb3JtKTtcbiAgfVxuXG4gIHRoaXMucmVhZE9ubHkgPSBmYWxzZTtcbiAgT2JqZWN0LmtleXMoZW52KS5maWx0ZXIoZnVuY3Rpb24gKGtleSkge1xuICAgIGlmIChzZWxmLm1hdGNoICYmIHNlbGYud2hpdGVsaXN0Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGtleS5tYXRjaChzZWxmLm1hdGNoKSB8fCBzZWxmLndoaXRlbGlzdC5pbmRleE9mKGtleSkgIT09IC0xXG4gICAgfVxuICAgIGVsc2UgaWYgKHNlbGYubWF0Y2gpIHtcbiAgICAgIHJldHVybiBrZXkubWF0Y2goc2VsZi5tYXRjaCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgcmV0dXJuICFzZWxmLndoaXRlbGlzdC5sZW5ndGggfHwgc2VsZi53aGl0ZWxpc3QuaW5kZXhPZihrZXkpICE9PSAtMVxuICAgIH1cbiAgfSkuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgXG4gICAgdmFyIHZhbCA9IGVudltrZXldO1xuXG4gICAgaWYgKHNlbGYucGFyc2VWYWx1ZXMpIHtcbiAgICAgIHZhbCA9IGNvbW1vbi5wYXJzZVZhbHVlcyh2YWwpO1xuICAgIH1cblxuICAgIGlmIChzZWxmLnNlcGFyYXRvcikge1xuICAgICAgc2VsZi5zZXQoY29tbW9uLmtleS5hcHBseShjb21tb24sIGtleS5zcGxpdChzZWxmLnNlcGFyYXRvcikpLCB2YWwpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHNlbGYuc2V0KGtleSwgdmFsKTtcbiAgICB9XG4gIH0pO1xuXG4gIHRoaXMucmVhZE9ubHkgPSB0cnVlO1xuICByZXR1cm4gdGhpcy5zdG9yZTtcbn07XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgY3J5cHRvID0gcmVxdWlyZSgnY3J5cHRvJyk7XG5cbnZhciBqc29uID0ge1xuICBzdHJpbmdpZnk6IGZ1bmN0aW9uIChvYmosIHJlcGxhY2VyLCBzcGFjaW5nKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG9iaiwgcmVwbGFjZXIgfHwgbnVsbCwgc3BhY2luZyB8fCAyKVxuICB9LFxuICBwYXJzZTogSlNPTi5wYXJzZVxufTtcblxubW9kdWxlLmV4cG9ydHMgPSBTZWN1cmU7XG4vKipcbiAqIEBjb25zdHJ1Y3RvclxuICogU2ltcGxlIE9iamVjdCB1c2VkIHRvIHNlcmlhbGl6ZSBhbmQgZGVzZXJpYWxpemVcbiAqL1xuZnVuY3Rpb24gU2VjdXJlKG9wdHMpIHtcbiAgb3B0cyA9IG9wdHMgfHwge307XG4gIHRoaXMuc2VjcmV0ID0gdHlwZW9mIG9wdHMgIT09ICdzdHJpbmcnXG4gICAgPyBvcHRzLnNlY3JldFxuICAgIDogb3B0cztcblxuICB0aGlzLmZvcm1hdCA9IG9wdHMuZm9ybWF0IHx8IGpzb247XG4gIHRoaXMuYWxnID0gb3B0cy5hbGcgfHwgJ2Flcy0yNTYtY3RyJztcblxuICBpZiAoIXRoaXMuc2VjcmV0KSB0aHJvdyBuZXcgRXJyb3IoJ1NlY3JldCBpcyBhIHJlcXVpcmVkIG9wdGlvbicpO1xufVxuXG5TZWN1cmUucHJvdG90eXBlLmVuY3J5cHQgPSBmdW5jdGlvbiBlbmNyeXB0KGRhdGEsIGNhbGxiYWNrKSB7XG4gIHZhciBzZWxmID0gdGhpcztcblxuICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkucmVkdWNlKGZ1bmN0aW9uIChhY2MsIGtleSkge1xuICAgIHZhciB2YWx1ZSA9IHNlbGYuZm9ybWF0LnN0cmluZ2lmeShkYXRhW2tleV0pO1xuICAgIGFjY1trZXldID0ge1xuICAgICAgYWxnOiBzZWxmLmFsZyxcbiAgICAgIHZhbHVlOiBjaXBoZXJDb252ZXJ0KHZhbHVlLCB7XG4gICAgICAgIGFsZzogc2VsZi5hbGcsXG4gICAgICAgIHNlY3JldDogc2VsZi5zZWNyZXQsXG4gICAgICAgIGVuY3M6IHsgaW5wdXQ6ICd1dGY4Jywgb3V0cHV0OiAnaGV4JyB9XG4gICAgICB9KVxuICAgIH07XG5cbiAgICByZXR1cm4gYWNjO1xuICB9LCB7fSk7XG5cbiB9O1xuXG5TZWN1cmUucHJvdG90eXBlLmRlY3J5cHQgPSBmdW5jdGlvbiBkZWNyeXB0KGRhdGEsIGNhbGxiYWNrKSB7XG4gIHZhciBzZWxmID0gdGhpcztcblxuICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkucmVkdWNlKGZ1bmN0aW9uIChhY2MsIGtleSkge1xuICAgIHZhciBkZWNyeXB0ZWQgPSBjaXBoZXJDb252ZXJ0KGRhdGFba2V5XS52YWx1ZSwge1xuICAgICAgYWxnOiBkYXRhW2tleV0uYWxnIHx8IHNlbGYuYWxnLFxuICAgICAgc2VjcmV0OiBzZWxmLnNlY3JldCxcbiAgICAgIGVuY3M6IHsgaW5wdXQ6ICdoZXgnLCBvdXRwdXQ6ICd1dGY4JyB9XG4gICAgfSk7XG5cbiAgICBhY2Nba2V5XSA9IHNlbGYuZm9ybWF0LnBhcnNlKGRlY3J5cHRlZCk7XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30pO1xuXG4gfTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBjaXBoZXJDb252ZXJ0IChjb250ZW50cywgb3B0cylcbi8vIFJldHVybnMgdGhlIHJlc3VsdCBvZiB0aGUgY2lwaGVyIG9wZXJhdGlvblxuLy8gb24gdGhlIGNvbnRlbnRzIGNvbnRlbnRzLlxuLy9cbmZ1bmN0aW9uIGNpcGhlckNvbnZlcnQoY29udGVudHMsIG9wdHMpIHtcbiAgdmFyIGVuY3MgPSBvcHRzLmVuY3M7XG4gIHZhciBjaXBoZXIgPSBjcnlwdG8uY3JlYXRlQ2lwaGVyKG9wdHMuYWxnLCBvcHRzLnNlY3JldCk7XG4gIHJldHVybiBjaXBoZXIudXBkYXRlKGNvbnRlbnRzLCBlbmNzLmlucHV0LCBlbmNzLm91dHB1dClcbiAgICArIGNpcGhlci5maW5hbChlbmNzLm91dHB1dCk7XG59XG4iLCAiLypcbiAqIGZpbGUuanM6IFNpbXBsZSBmaWxlIHN0b3JhZ2UgZW5naW5lIGZvciBuY29uZiBmaWxlc1xuICpcbiAqIChDKSAyMDExLCBDaGFybGllIFJvYmJpbnMgYW5kIHRoZSBDb250cmlidXRvcnMuXG4gKlxuICovXG5cbnZhciBmcyA9IHJlcXVpcmUoJ2ZzJyksXG4gICAgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKSxcbiAgICB1dGlsID0gcmVxdWlyZSgndXRpbCcpLFxuICAgIFNlY3VyZSA9IHJlcXVpcmUoJ3NlY3VyZS1rZXlzJyksXG4gICAgZm9ybWF0cyA9IHJlcXVpcmUoJy4uL2Zvcm1hdHMnKSxcbiAgICBNZW1vcnkgPSByZXF1aXJlKCcuL21lbW9yeScpLk1lbW9yeTtcblxudmFyIGV4aXN0cyA9IGZzLmV4aXN0cyB8fCBwYXRoLmV4aXN0cyxcbiAgICBleGlzdHNTeW5jID0gZnMuZXhpc3RzU3luYyB8fCBwYXRoLmV4aXN0c1N5bmM7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gRmlsZSAob3B0aW9ucylcbi8vICMjIyMgQG9wdGlvbnMge09iamVjdH0gT3B0aW9ucyBmb3IgdGhpcyBpbnN0YW5jZVxuLy8gQ29uc3RydWN0b3IgZnVuY3Rpb24gZm9yIHRoZSBGaWxlIG5jb25mIHN0b3JlLCBhIHNpbXBsZSBhYnN0cmFjdGlvblxuLy8gYXJvdW5kIHRoZSBNZW1vcnkgc3RvcmUgdGhhdCBjYW4gcGVyc2lzdCBjb25maWd1cmF0aW9uIHRvIGRpc2suXG4vL1xudmFyIEZpbGUgPSBleHBvcnRzLkZpbGUgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAoIW9wdGlvbnMgfHwgIW9wdGlvbnMuZmlsZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignTWlzc2luZyByZXF1aXJlZCBvcHRpb24gYGZpbGVgJyk7XG4gIH1cblxuICBNZW1vcnkuY2FsbCh0aGlzLCBvcHRpb25zKTtcblxuICB0aGlzLnR5cGUgICAgPSAnZmlsZSc7XG4gIHRoaXMuZmlsZSAgICA9IG9wdGlvbnMuZmlsZTtcbiAgdGhpcy5kaXIgICAgID0gb3B0aW9ucy5kaXIgICAgfHwgcHJvY2Vzcy5jd2QoKTtcbiAgdGhpcy5mb3JtYXQgID0gb3B0aW9ucy5mb3JtYXQgfHwgZm9ybWF0cy5qc29uO1xuICB0aGlzLnNlY3VyZSAgPSBvcHRpb25zLnNlY3VyZTtcbiAgdGhpcy5zcGFjaW5nID0gb3B0aW9ucy5qc29uX3NwYWNpbmdcbiAgICB8fCBvcHRpb25zLnNwYWNpbmdcbiAgICB8fCAyO1xuXG4gIGlmICh0aGlzLnNlY3VyZSkge1xuICAgIHRoaXMuc2VjdXJlID0gQnVmZmVyLmlzQnVmZmVyKHRoaXMuc2VjdXJlKSB8fCB0eXBlb2YgdGhpcy5zZWN1cmUgPT09ICdzdHJpbmcnXG4gICAgICA/IHsgc2VjcmV0OiB0aGlzLnNlY3VyZS50b1N0cmluZygpIH1cbiAgICAgIDogdGhpcy5zZWN1cmU7XG5cbiAgICB0aGlzLnNlY3VyZS5hbGcgPSB0aGlzLnNlY3VyZS5hbGcgfHwgJ2Flcy0yNTYtY3RyJztcbiAgICBpZiAodGhpcy5zZWN1cmUuc2VjcmV0UGF0aCkge1xuICAgICAgdGhpcy5zZWN1cmUuc2VjcmV0ID0gZnMucmVhZEZpbGVTeW5jKHRoaXMuc2VjdXJlLnNlY3JldFBhdGgsICd1dGY4Jyk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnNlY3VyZS5zZWNyZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2VjdXJlLnNlY3JldCBvcHRpb24gaXMgcmVxdWlyZWQnKTtcbiAgICB9XG5cbiAgICB0aGlzLmtleXMgPSBuZXcgU2VjdXJlKHtcbiAgICAgIHNlY3JldDogdGhpcy5zZWN1cmUuc2VjcmV0LFxuICAgICAgYWxnOiB0aGlzLnNlY3VyZS5hbGcsXG4gICAgICBmb3JtYXQ6IHRoaXMuZm9ybWF0XG4gICAgfSk7XG4gIH1cblxuICBpZiAob3B0aW9ucy5zZWFyY2gpIHtcbiAgICB0aGlzLnNlYXJjaCh0aGlzLmRpcik7XG4gIH1cbn07XG5cbi8vIEluaGVyaXQgZnJvbSB0aGUgTWVtb3J5IHN0b3JlXG51dGlsLmluaGVyaXRzKEZpbGUsIE1lbW9yeSk7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2F2ZSAodmFsdWUsIGNhbGxiYWNrKVxuLy8gIyMjIyBAdmFsdWUge09iamVjdH0gX0lnbm9yZWRfIExlZnQgaGVyZSBmb3IgY29uc2lzdGVuY3lcbi8vICMjIyMgQGNhbGxiYWNrIHtmdW5jdGlvbn0gQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlbiBjb21wbGV0ZS5cbi8vIFNhdmVzIHRoZSBjdXJyZW50IGNvbmZpZ3VyYXRpb24gb2JqZWN0IHRvIGRpc2sgYXQgYHRoaXMuZmlsZWBcbi8vIHVzaW5nIHRoZSBmb3JtYXQgc3BlY2lmaWVkIGJ5IGB0aGlzLmZvcm1hdGAuXG4vL1xuRmlsZS5wcm90b3R5cGUuc2F2ZSA9IGZ1bmN0aW9uICh2YWx1ZSwgY2FsbGJhY2spIHtcbiAgdGhpcy5zYXZlVG9GaWxlKHRoaXMuZmlsZSwgdmFsdWUsIGNhbGxiYWNrKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2F2ZVRvRmlsZSAocGF0aCwgdmFsdWUsIGNhbGxiYWNrKVxuLy8gIyMjIyBAcGF0aCB7c3RyaW5nfSBUaGUgcGF0aCB0byB0aGUgZmlsZSB3aGVyZSB3ZSBzYXZlIHRoZSBjb25maWd1cmF0aW9uIHRvICBcbi8vICMjIyMgQGZvcm1hdCB7T2JqZWN0fSBPcHRpb25hbCBmb3JtYXR0ZXIsIGRlZmF1bHQgYmVoaW5nIHRoZSBvbmUgb2YgdGhlIHN0b3JlXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259IENvbnRpbnVhdGlvbiB0byByZXNwb25kIHRvIHdoZW4gY29tcGxldGUuXG4vLyBTYXZlcyB0aGUgY3VycmVudCBjb25maWd1cmF0aW9uIG9iamVjdCB0byBkaXNrIGF0IGB0aGlzLmZpbGVgXG4vLyB1c2luZyB0aGUgZm9ybWF0IHNwZWNpZmllZCBieSBgdGhpcy5mb3JtYXRgLlxuLy9cbkZpbGUucHJvdG90eXBlLnNhdmVUb0ZpbGUgPSBmdW5jdGlvbiAocGF0aCwgZm9ybWF0LCBjYWxsYmFjaykge1xuICBpZiAoIWNhbGxiYWNrKSB7XG4gICAgY2FsbGJhY2sgPSBmb3JtYXQ7XG4gICAgZm9ybWF0ID0gdGhpcy5mb3JtYXQ7XG4gIH1cblxuICBmcy53cml0ZUZpbGUocGF0aCwgdGhpcy5zdHJpbmdpZnkoZm9ybWF0KSwgY2FsbGJhY2spO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBzYXZlU3luYyAodmFsdWUsIGNhbGxiYWNrKVxuLy8gU2F2ZXMgdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbiBvYmplY3QgdG8gZGlzayBhdCBgdGhpcy5maWxlYFxuLy8gdXNpbmcgdGhlIGZvcm1hdCBzcGVjaWZpZWQgYnkgYHRoaXMuZm9ybWF0YCBzeW5jaHJvbm91c2x5LlxuLy9cbkZpbGUucHJvdG90eXBlLnNhdmVTeW5jID0gZnVuY3Rpb24gKCkge1xuICBmcy53cml0ZUZpbGVTeW5jKHRoaXMuZmlsZSwgdGhpcy5zdHJpbmdpZnkoKSk7XG4gIHJldHVybiB0aGlzLnN0b3JlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkIChjYWxsYmFjaylcbi8vICMjIyMgQGNhbGxiYWNrIHtmdW5jdGlvbn0gQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlbiBjb21wbGV0ZS5cbi8vIFJlc3BvbmRzIHdpdGggYW4gT2JqZWN0IHJlcHJlc2VudGluZyBhbGwga2V5cyBhc3NvY2lhdGVkIGluIHRoaXMgaW5zdGFuY2UuXG4vL1xuRmlsZS5wcm90b3R5cGUubG9hZCA9IGZ1bmN0aW9uIChjYWxsYmFjaykge1xuICB2YXIgc2VsZiA9IHRoaXM7XG5cbiAgZXhpc3RzKHNlbGYuZmlsZSwgZnVuY3Rpb24gKGV4aXN0cykge1xuICAgIGlmICghZXhpc3RzKSB7XG4gICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwge30pO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gRWxzZSwgdGhlIHBhdGggZXhpc3RzLCByZWFkIGl0IGZyb20gZGlza1xuICAgIC8vXG4gICAgZnMucmVhZEZpbGUoc2VsZi5maWxlLCBmdW5jdGlvbiAoZXJyLCBkYXRhKSB7XG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgfVxuXG4gICAgICB0cnkge1xuICAgICAgICAvLyBEZWFscyB3aXRoIHN0cmluZyB0aGF0IGluY2x1ZGUgQk9NXG4gICAgICAgIHZhciBzdHJpbmdEYXRhID0gZGF0YS50b1N0cmluZygpO1xuICAgICAgICBpZiAoc3RyaW5nRGF0YS5jaGFyQXQoMCkgPT09ICdcXHVGRUZGJykge1xuICAgICAgICAgIHN0cmluZ0RhdGEgPSBzdHJpbmdEYXRhLnN1YnN0cigxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYuc3RvcmUgPSBzZWxmLnBhcnNlKHN0cmluZ0RhdGEpO1xuICAgICAgfVxuICAgICAgY2F0Y2ggKGV4KSB7XG4gICAgICAgIHJldHVybiBjYWxsYmFjayhuZXcgRXJyb3IoXCJFcnJvciBwYXJzaW5nIHlvdXIgY29uZmlndXJhdGlvbiBmaWxlOiBbXCIgKyBzZWxmLmZpbGUgKyAnXTogJyArIGV4Lm1lc3NhZ2UpKTtcbiAgICAgIH1cblxuICAgICAgY2FsbGJhY2sobnVsbCwgc2VsZi5zdG9yZSk7XG4gICAgfSk7XG4gIH0pO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luYyAoY2FsbGJhY2spXG4vLyBBdHRlbXB0cyB0byBsb2FkIHRoZSBkYXRhIHN0b3JlZCBpbiBgdGhpcy5maWxlYCBzeW5jaHJvbm91c2x5XG4vLyBhbmQgcmVzcG9uZHMgYXBwcm9wcmlhdGVseS5cbi8vXG5GaWxlLnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgaWYgKCFleGlzdHNTeW5jKHRoaXMuZmlsZSkpIHtcbiAgICB0aGlzLnN0b3JlID0ge307XG4gICAgcmV0dXJuIHRoaXMuc3RvcmU7XG4gIH1cblxuICAvL1xuICAvLyBFbHNlLCB0aGUgcGF0aCBleGlzdHMsIHJlYWQgaXQgZnJvbSBkaXNrXG4gIC8vXG4gIHRyeSB7XG4gICAgLy8gRGVhbHMgd2l0aCBmaWxlIHRoYXQgaW5jbHVkZSBCT01cbiAgICB2YXIgZmlsZURhdGEgPSBmcy5yZWFkRmlsZVN5bmModGhpcy5maWxlLCAndXRmOCcpO1xuICAgIGlmIChmaWxlRGF0YS5jaGFyQXQoMCkgPT09ICdcXHVGRUZGJykge1xuICAgICAgZmlsZURhdGEgPSBmaWxlRGF0YS5zdWJzdHIoMSk7XG4gICAgfVxuXG4gICAgdGhpcy5zdG9yZSA9IHRoaXMucGFyc2UoZmlsZURhdGEpO1xuICB9XG4gIGNhdGNoIChleCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIkVycm9yIHBhcnNpbmcgeW91ciBjb25maWd1cmF0aW9uIGZpbGU6IFtcIiArIHRoaXMuZmlsZSArICddOiAnICsgZXgubWVzc2FnZSk7XG4gIH1cblxuICByZXR1cm4gdGhpcy5zdG9yZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc3RyaW5naWZ5ICgpXG4vLyBSZXR1cm5zIGFuIGVuY3J5cHRlZCB2ZXJzaW9uIG9mIHRoZSBjb250ZW50cyBJSUZcbi8vIGB0aGlzLnNlY3VyZWAgaXMgZW5hYmxlZFxuLy9cbkZpbGUucHJvdG90eXBlLnN0cmluZ2lmeSA9IGZ1bmN0aW9uIChmb3JtYXQpIHtcbiAgdmFyIGRhdGEgPSB0aGlzLnN0b3JlO1xuICBpZiAoIWZvcm1hdCkge1xuICAgICAgZm9ybWF0ID0gdGhpcy5mb3JtYXRcbiAgfVxuXG4gIGlmICh0aGlzLnNlY3VyZSkge1xuICAgIGRhdGEgPSB0aGlzLmtleXMuZW5jcnlwdChkYXRhKTtcbiAgfVxuXG4gIHJldHVybiBmb3JtYXQuc3RyaW5naWZ5KGRhdGEsIG51bGwsIHRoaXMuc3BhY2luZyk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHBhcnNlIChjb250ZW50cylcbi8vIFJldHVybnMgYSBkZWNyeXB0ZWQgdmVyc2lvbiBvZiB0aGUgY29udGVudHMgSUZGXG4vLyBgdGhpcy5zZWN1cmVgIGlzIGVuYWJsZWQuXG4vL1xuRmlsZS5wcm90b3R5cGUucGFyc2UgPSBmdW5jdGlvbiAoY29udGVudHMpIHtcbiAgdmFyIHBhcnNlZCA9IHRoaXMuZm9ybWF0LnBhcnNlKGNvbnRlbnRzKTtcblxuICBpZiAoIXRoaXMuc2VjdXJlKSB7XG4gICAgcmV0dXJuIHBhcnNlZDtcbiAgfVxuXG4gIHJldHVybiB0aGlzLmtleXMuZGVjcnlwdChwYXJzZWQpO1xuXG59O1xuXG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2VhcmNoIChiYXNlKVxuLy8gIyMjIyBAYmFzZSB7c3RyaW5nfSBCYXNlIGRpcmVjdG9yeSAob3IgZmlsZSkgdG8gYmVnaW4gc2VhcmNoaW5nIGZvciB0aGUgdGFyZ2V0IGZpbGUuXG4vLyBBdHRlbXB0cyB0byBmaW5kIGB0aGlzLmZpbGVgIGJ5IGl0ZXJhdGl2ZWx5IHNlYXJjaGluZyB1cCB0aGVcbi8vIGRpcmVjdG9yeSBzdHJ1Y3R1cmVcbi8vXG5GaWxlLnByb3RvdHlwZS5zZWFyY2ggPSBmdW5jdGlvbiAoYmFzZSkge1xuICB2YXIgbG9va2luZyA9IHRydWUsXG4gICAgICBmdWxscGF0aCxcbiAgICAgIHByZXZpb3VzLFxuICAgICAgc3RhdHM7XG5cbiAgYmFzZSA9IGJhc2UgfHwgcHJvY2Vzcy5jd2QoKTtcblxuICBpZiAodGhpcy5maWxlWzBdID09PSAnLycpIHtcbiAgICAvL1xuICAgIC8vIElmIGZpbGVuYW1lIGZvciB0aGlzIGluc3RhbmNlIGlzIGEgZnVsbHkgcXVhbGlmaWVkIHBhdGhcbiAgICAvLyAoaS5lLiBpdCBzdGFydHMgd2l0aCBhIGAnLydgKSB0aGVuIGNoZWNrIGlmIGl0IGV4aXN0c1xuICAgIC8vXG4gICAgdHJ5IHtcbiAgICAgIHN0YXRzID0gZnMuc3RhdFN5bmMoZnMucmVhbHBhdGhTeW5jKHRoaXMuZmlsZSkpO1xuICAgICAgaWYgKHN0YXRzLmlzRmlsZSgpKSB7XG4gICAgICAgIGZ1bGxwYXRoID0gdGhpcy5maWxlO1xuICAgICAgICBsb29raW5nID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIGNhdGNoIChleCkge1xuICAgICAgLy9cbiAgICAgIC8vIElnbm9yZSBlcnJvcnNcbiAgICAgIC8vXG4gICAgfVxuICB9XG5cbiAgaWYgKGxvb2tpbmcgJiYgYmFzZSkge1xuICAgIC8vXG4gICAgLy8gQXR0ZW1wdCB0byBzdGF0IHRoZSByZWFscGF0aCBsb2NhdGVkIGF0IGBiYXNlYFxuICAgIC8vIGlmIHRoZSBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QgdGhlbiByZXR1cm4gZmFsc2UuXG4gICAgLy9cbiAgICB0cnkge1xuICAgICAgdmFyIHN0YXQgPSBmcy5zdGF0U3luYyhmcy5yZWFscGF0aFN5bmMoYmFzZSkpO1xuICAgICAgbG9va2luZyA9IHN0YXQuaXNEaXJlY3RvcnkoKTtcbiAgICB9XG4gICAgY2F0Y2ggKGV4KSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgd2hpbGUgKGxvb2tpbmcpIHtcbiAgICAvL1xuICAgIC8vIEl0ZXJhdGl2ZWx5IGxvb2sgdXAgdGhlIGRpcmVjdG9yeSBzdHJ1Y3R1cmUgZnJvbSBgYmFzZWBcbiAgICAvL1xuICAgIHRyeSB7XG4gICAgICBzdGF0cyA9IGZzLnN0YXRTeW5jKGZzLnJlYWxwYXRoU3luYyhmdWxscGF0aCA9IHBhdGguam9pbihiYXNlLCB0aGlzLmZpbGUpKSk7XG4gICAgICBsb29raW5nID0gc3RhdHMuaXNEaXJlY3RvcnkoKTtcbiAgICB9XG4gICAgY2F0Y2ggKGV4KSB7XG4gICAgICBwcmV2aW91cyA9IGJhc2U7XG4gICAgICBiYXNlID0gcGF0aC5kaXJuYW1lKGJhc2UpO1xuXG4gICAgICBpZiAocHJldmlvdXMgPT09IGJhc2UpIHtcbiAgICAgICAgLy9cbiAgICAgICAgLy8gSWYgd2UndmUgcmVhY2hlZCB0aGUgdG9wIG9mIHRoZSBkaXJlY3Rvcnkgc3RydWN0dXJlIHRoZW4gc2ltcGx5IHVzZVxuICAgICAgICAvLyB0aGUgZGVmYXVsdCBmaWxlIHBhdGguXG4gICAgICAgIC8vXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgc3RhdHMgPSBmcy5zdGF0U3luYyhmcy5yZWFscGF0aFN5bmMoZnVsbHBhdGggPSBwYXRoLmpvaW4odGhpcy5kaXIsIHRoaXMuZmlsZSkpKTtcbiAgICAgICAgICBpZiAoc3RhdHMuaXNEaXJlY3RvcnkoKSkge1xuICAgICAgICAgICAgZnVsbHBhdGggPSB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgIC8vXG4gICAgICAgICAgLy8gSWdub3JlIGVycm9yc1xuICAgICAgICAgIC8vXG4gICAgICAgIH1cblxuICAgICAgICBsb29raW5nID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9cbiAgLy8gU2V0IHRoZSBmaWxlIGZvciB0aGlzIGluc3RhbmNlIHRvIHRoZSBmdWxscGF0aFxuICAvLyB0aGF0IHdlIGhhdmUgZm91bmQgZHVyaW5nIHRoZSBzZWFyY2guIEluIHRoZSBldmVudCB0aGF0XG4gIC8vIHRoZSBzZWFyY2ggd2FzIHVuc3VjY2Vzc2Z1bCB1c2UgdGhlIG9yaWdpbmFsIHZhbHVlIGZvciBgdGhpcy5maWxlYC5cbiAgLy9cbiAgdGhpcy5maWxlID0gZnVsbHBhdGggfHwgdGhpcy5maWxlO1xuXG4gIHJldHVybiBmdWxscGF0aDtcbn07XG4iLCAiLypcbiAqIGxpdGVyYWwuanM6IFNpbXBsZSBsaXRlcmFsIE9iamVjdCBzdG9yZSBmb3IgbmNvbmYuXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIHV0aWwgPSByZXF1aXJlKCd1dGlsJyksXG4gICAgTWVtb3J5ID0gcmVxdWlyZSgnLi9tZW1vcnknKS5NZW1vcnlcblxudmFyIExpdGVyYWwgPSBleHBvcnRzLkxpdGVyYWwgPSBmdW5jdGlvbiBMaXRlcmFsIChvcHRpb25zKSB7XG4gIE1lbW9yeS5jYWxsKHRoaXMsIG9wdGlvbnMpO1xuXG4gIG9wdGlvbnMgICAgICAgPSBvcHRpb25zIHx8IHt9XG4gIHRoaXMudHlwZSAgICAgPSAnbGl0ZXJhbCc7XG4gIHRoaXMucmVhZE9ubHkgPSB0cnVlO1xuICB0aGlzLnN0b3JlICAgID0gb3B0aW9ucy5zdG9yZSB8fCBvcHRpb25zO1xufTtcblxuLy8gSW5oZXJpdCBmcm9tIE1lbW9yeSBzdG9yZS5cbnV0aWwuaW5oZXJpdHMoTGl0ZXJhbCwgTWVtb3J5KTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luYyAoY2FsbGJhY2spXG4vLyBSZXR1cm5zIHRoZSBkYXRhIHN0b3JlZCBpbiBgdGhpcy5zdG9yZWAgc3luY2hyb25vdXNseS5cbi8vXG5MaXRlcmFsLnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIHRoaXMuc3RvcmU7XG59OyIsICIvKlxuICogbmNvbmYuanM6IFRvcC1sZXZlbCBpbmNsdWRlIGZvciB0aGUgbmNvbmYgbW9kdWxlXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGNvbW1vbiA9IHJlcXVpcmUoJy4vbmNvbmYvY29tbW9uJyksXG4gICAgUHJvdmlkZXIgPSByZXF1aXJlKCcuL25jb25mL3Byb3ZpZGVyJykuUHJvdmlkZXI7XG5cbi8vXG4vLyBgbmNvbmZgIGlzIGJ5IGRlZmF1bHQgYW4gaW5zdGFuY2Ugb2YgYG5jb25mLlByb3ZpZGVyYC5cbi8vXG52YXIgbmNvbmYgPSBtb2R1bGUuZXhwb3J0cyA9IG5ldyBQcm92aWRlcigpO1xuXG4vL1xuLy8gRXhwb3NlIHRoZSB2ZXJzaW9uIGZyb20gdGhlIHBhY2thZ2UuanNvblxuLy9cbm5jb25mLnZlcnNpb24gPSByZXF1aXJlKCcuLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuXG4vL1xuLy8gU2V0dXAgYWxsIHN0b3JlcyBhcyBsYXp5LWxvYWRlZCBnZXR0ZXJzLlxuLy9cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0FyZ3YnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHJlcXVpcmUoJy4vbmNvbmYvc3RvcmVzL2FyZ3YnKS5Bcmd2O1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0VudicsIGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gcmVxdWlyZSgnLi9uY29uZi9zdG9yZXMvZW52JykuRW52O1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0ZpbGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHJlcXVpcmUoJy4vbmNvbmYvc3RvcmVzL2ZpbGUnKS5GaWxlO1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0xpdGVyYWwnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHJlcXVpcmUoJy4vbmNvbmYvc3RvcmVzL2xpdGVyYWwnKS5MaXRlcmFsO1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ01lbW9yeScsIGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gcmVxdWlyZSgnLi9uY29uZi9zdG9yZXMvbWVtb3J5JykuTWVtb3J5O1xufSk7XG5cbi8vXG4vLyBFeHBvc2UgdGhlIHZhcmlvdXMgY29tcG9uZW50cyBpbmNsdWRlZCB3aXRoIG5jb25mXG4vL1xubmNvbmYua2V5ICAgICAgICAgICA9IGNvbW1vbi5rZXk7XG5uY29uZi5wYXRoICAgICAgICAgID0gY29tbW9uLnBhdGg7XG5uY29uZi5sb2FkRmlsZXMgICAgID0gY29tbW9uLmxvYWRGaWxlcztcbm5jb25mLmxvYWRGaWxlc1N5bmMgPSBjb21tb24ubG9hZEZpbGVzU3luYztcbm5jb25mLmZvcm1hdHMgICAgICAgPSByZXF1aXJlKCcuL25jb25mL2Zvcm1hdHMnKTtcbm5jb25mLlByb3ZpZGVyICAgICAgPSBQcm92aWRlcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IEFMSUFTID0gU3ltYm9sLmZvcigneWFtbC5hbGlhcycpO1xuY29uc3QgRE9DID0gU3ltYm9sLmZvcigneWFtbC5kb2N1bWVudCcpO1xuY29uc3QgTUFQID0gU3ltYm9sLmZvcigneWFtbC5tYXAnKTtcbmNvbnN0IFBBSVIgPSBTeW1ib2wuZm9yKCd5YW1sLnBhaXInKTtcbmNvbnN0IFNDQUxBUiA9IFN5bWJvbC5mb3IoJ3lhbWwuc2NhbGFyJyk7XG5jb25zdCBTRVEgPSBTeW1ib2wuZm9yKCd5YW1sLnNlcScpO1xuY29uc3QgTk9ERV9UWVBFID0gU3ltYm9sLmZvcigneWFtbC5ub2RlLnR5cGUnKTtcbmNvbnN0IGlzQWxpYXMgPSAobm9kZSkgPT4gISFub2RlICYmIHR5cGVvZiBub2RlID09PSAnb2JqZWN0JyAmJiBub2RlW05PREVfVFlQRV0gPT09IEFMSUFTO1xuY29uc3QgaXNEb2N1bWVudCA9IChub2RlKSA9PiAhIW5vZGUgJiYgdHlwZW9mIG5vZGUgPT09ICdvYmplY3QnICYmIG5vZGVbTk9ERV9UWVBFXSA9PT0gRE9DO1xuY29uc3QgaXNNYXAgPSAobm9kZSkgPT4gISFub2RlICYmIHR5cGVvZiBub2RlID09PSAnb2JqZWN0JyAmJiBub2RlW05PREVfVFlQRV0gPT09IE1BUDtcbmNvbnN0IGlzUGFpciA9IChub2RlKSA9PiAhIW5vZGUgJiYgdHlwZW9mIG5vZGUgPT09ICdvYmplY3QnICYmIG5vZGVbTk9ERV9UWVBFXSA9PT0gUEFJUjtcbmNvbnN0IGlzU2NhbGFyID0gKG5vZGUpID0+ICEhbm9kZSAmJiB0eXBlb2Ygbm9kZSA9PT0gJ29iamVjdCcgJiYgbm9kZVtOT0RFX1RZUEVdID09PSBTQ0FMQVI7XG5jb25zdCBpc1NlcSA9IChub2RlKSA9PiAhIW5vZGUgJiYgdHlwZW9mIG5vZGUgPT09ICdvYmplY3QnICYmIG5vZGVbTk9ERV9UWVBFXSA9PT0gU0VRO1xuZnVuY3Rpb24gaXNDb2xsZWN0aW9uKG5vZGUpIHtcbiAgICBpZiAobm9kZSAmJiB0eXBlb2Ygbm9kZSA9PT0gJ29iamVjdCcpXG4gICAgICAgIHN3aXRjaCAobm9kZVtOT0RFX1RZUEVdKSB7XG4gICAgICAgICAgICBjYXNlIE1BUDpcbiAgICAgICAgICAgIGNhc2UgU0VROlxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZnVuY3Rpb24gaXNOb2RlKG5vZGUpIHtcbiAgICBpZiAobm9kZSAmJiB0eXBlb2Ygbm9kZSA9PT0gJ29iamVjdCcpXG4gICAgICAgIHN3aXRjaCAobm9kZVtOT0RFX1RZUEVdKSB7XG4gICAgICAgICAgICBjYXNlIEFMSUFTOlxuICAgICAgICAgICAgY2FzZSBNQVA6XG4gICAgICAgICAgICBjYXNlIFNDQUxBUjpcbiAgICAgICAgICAgIGNhc2UgU0VROlxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuY29uc3QgaGFzQW5jaG9yID0gKG5vZGUpID0+IChpc1NjYWxhcihub2RlKSB8fCBpc0NvbGxlY3Rpb24obm9kZSkpICYmICEhbm9kZS5hbmNob3I7XG5cbmV4cG9ydHMuQUxJQVMgPSBBTElBUztcbmV4cG9ydHMuRE9DID0gRE9DO1xuZXhwb3J0cy5NQVAgPSBNQVA7XG5leHBvcnRzLk5PREVfVFlQRSA9IE5PREVfVFlQRTtcbmV4cG9ydHMuUEFJUiA9IFBBSVI7XG5leHBvcnRzLlNDQUxBUiA9IFNDQUxBUjtcbmV4cG9ydHMuU0VRID0gU0VRO1xuZXhwb3J0cy5oYXNBbmNob3IgPSBoYXNBbmNob3I7XG5leHBvcnRzLmlzQWxpYXMgPSBpc0FsaWFzO1xuZXhwb3J0cy5pc0NvbGxlY3Rpb24gPSBpc0NvbGxlY3Rpb247XG5leHBvcnRzLmlzRG9jdW1lbnQgPSBpc0RvY3VtZW50O1xuZXhwb3J0cy5pc01hcCA9IGlzTWFwO1xuZXhwb3J0cy5pc05vZGUgPSBpc05vZGU7XG5leHBvcnRzLmlzUGFpciA9IGlzUGFpcjtcbmV4cG9ydHMuaXNTY2FsYXIgPSBpc1NjYWxhcjtcbmV4cG9ydHMuaXNTZXEgPSBpc1NlcTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vbm9kZXMvaWRlbnRpdHkuanMnKTtcblxuY29uc3QgQlJFQUsgPSBTeW1ib2woJ2JyZWFrIHZpc2l0Jyk7XG5jb25zdCBTS0lQID0gU3ltYm9sKCdza2lwIGNoaWxkcmVuJyk7XG5jb25zdCBSRU1PVkUgPSBTeW1ib2woJ3JlbW92ZSBub2RlJyk7XG4vKipcbiAqIEFwcGx5IGEgdmlzaXRvciB0byBhbiBBU1Qgbm9kZSBvciBkb2N1bWVudC5cbiAqXG4gKiBXYWxrcyB0aHJvdWdoIHRoZSB0cmVlIChkZXB0aC1maXJzdCkgc3RhcnRpbmcgZnJvbSBgbm9kZWAsIGNhbGxpbmcgYVxuICogYHZpc2l0b3JgIGZ1bmN0aW9uIHdpdGggdGhyZWUgYXJndW1lbnRzOlxuICogICAtIGBrZXlgOiBGb3Igc2VxdWVuY2UgdmFsdWVzIGFuZCBtYXAgYFBhaXJgLCB0aGUgbm9kZSdzIGluZGV4IGluIHRoZVxuICogICAgIGNvbGxlY3Rpb24uIFdpdGhpbiBhIGBQYWlyYCwgYCdrZXknYCBvciBgJ3ZhbHVlJ2AsIGNvcnJlc3BvbmRpbmdseS5cbiAqICAgICBgbnVsbGAgZm9yIHRoZSByb290IG5vZGUuXG4gKiAgIC0gYG5vZGVgOiBUaGUgY3VycmVudCBub2RlLlxuICogICAtIGBwYXRoYDogVGhlIGFuY2VzdHJ5IG9mIHRoZSBjdXJyZW50IG5vZGUuXG4gKlxuICogVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgdmlzaXRvciBtYXkgYmUgdXNlZCB0byBjb250cm9sIHRoZSB0cmF2ZXJzYWw6XG4gKiAgIC0gYHVuZGVmaW5lZGAgKGRlZmF1bHQpOiBEbyBub3RoaW5nIGFuZCBjb250aW51ZVxuICogICAtIGB2aXNpdC5TS0lQYDogRG8gbm90IHZpc2l0IHRoZSBjaGlsZHJlbiBvZiB0aGlzIG5vZGUsIGNvbnRpbnVlIHdpdGggbmV4dFxuICogICAgIHNpYmxpbmdcbiAqICAgLSBgdmlzaXQuQlJFQUtgOiBUZXJtaW5hdGUgdHJhdmVyc2FsIGNvbXBsZXRlbHlcbiAqICAgLSBgdmlzaXQuUkVNT1ZFYDogUmVtb3ZlIHRoZSBjdXJyZW50IG5vZGUsIHRoZW4gY29udGludWUgd2l0aCB0aGUgbmV4dCBvbmVcbiAqICAgLSBgTm9kZWA6IFJlcGxhY2UgdGhlIGN1cnJlbnQgbm9kZSwgdGhlbiBjb250aW51ZSBieSB2aXNpdGluZyBpdFxuICogICAtIGBudW1iZXJgOiBXaGlsZSBpdGVyYXRpbmcgdGhlIGl0ZW1zIG9mIGEgc2VxdWVuY2Ugb3IgbWFwLCBzZXQgdGhlIGluZGV4XG4gKiAgICAgb2YgdGhlIG5leHQgc3RlcC4gVGhpcyBpcyB1c2VmdWwgZXNwZWNpYWxseSBpZiB0aGUgaW5kZXggb2YgdGhlIGN1cnJlbnRcbiAqICAgICBub2RlIGhhcyBjaGFuZ2VkLlxuICpcbiAqIElmIGB2aXNpdG9yYCBpcyBhIHNpbmdsZSBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQgd2l0aCBhbGwgdmFsdWVzXG4gKiBlbmNvdW50ZXJlZCBpbiB0aGUgdHJlZSwgaW5jbHVkaW5nIGUuZy4gYG51bGxgIHZhbHVlcy4gQWx0ZXJuYXRpdmVseSxcbiAqIHNlcGFyYXRlIHZpc2l0b3IgZnVuY3Rpb25zIG1heSBiZSBkZWZpbmVkIGZvciBlYWNoIGBNYXBgLCBgUGFpcmAsIGBTZXFgLFxuICogYEFsaWFzYCBhbmQgYFNjYWxhcmAgbm9kZS4gVG8gZGVmaW5lIHRoZSBzYW1lIHZpc2l0b3IgZnVuY3Rpb24gZm9yIG1vcmUgdGhhblxuICogb25lIG5vZGUgdHlwZSwgdXNlIHRoZSBgQ29sbGVjdGlvbmAgKG1hcCBhbmQgc2VxKSwgYFZhbHVlYCAobWFwLCBzZXEgJiBzY2FsYXIpXG4gKiBhbmQgYE5vZGVgIChhbGlhcywgbWFwLCBzZXEgJiBzY2FsYXIpIHRhcmdldHMuIE9mIGFsbCB0aGVzZSwgb25seSB0aGUgbW9zdFxuICogc3BlY2lmaWMgZGVmaW5lZCBvbmUgd2lsbCBiZSB1c2VkIGZvciBlYWNoIG5vZGUuXG4gKi9cbmZ1bmN0aW9uIHZpc2l0KG5vZGUsIHZpc2l0b3IpIHtcbiAgICBjb25zdCB2aXNpdG9yXyA9IGluaXRWaXNpdG9yKHZpc2l0b3IpO1xuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KG5vZGUpKSB7XG4gICAgICAgIGNvbnN0IGNkID0gdmlzaXRfKG51bGwsIG5vZGUuY29udGVudHMsIHZpc2l0b3JfLCBPYmplY3QuZnJlZXplKFtub2RlXSkpO1xuICAgICAgICBpZiAoY2QgPT09IFJFTU9WRSlcbiAgICAgICAgICAgIG5vZGUuY29udGVudHMgPSBudWxsO1xuICAgIH1cbiAgICBlbHNlXG4gICAgICAgIHZpc2l0XyhudWxsLCBub2RlLCB2aXNpdG9yXywgT2JqZWN0LmZyZWV6ZShbXSkpO1xufVxuLy8gV2l0aG91dCB0aGUgYGFzIHN5bWJvbGAgY2FzdHMsIFRTIGRlY2xhcmVzIHRoZXNlIGluIHRoZSBgdmlzaXRgXG4vLyBuYW1lc3BhY2UgdXNpbmcgYHZhcmAsIGJ1dCB0aGVuIGNvbXBsYWlucyBhYm91dCB0aGF0IGJlY2F1c2Vcbi8vIGB1bmlxdWUgc3ltYm9sYCBtdXN0IGJlIGBjb25zdGAuXG4vKiogVGVybWluYXRlIHZpc2l0IHRyYXZlcnNhbCBjb21wbGV0ZWx5ICovXG52aXNpdC5CUkVBSyA9IEJSRUFLO1xuLyoqIERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhlIGN1cnJlbnQgbm9kZSAqL1xudmlzaXQuU0tJUCA9IFNLSVA7XG4vKiogUmVtb3ZlIHRoZSBjdXJyZW50IG5vZGUgKi9cbnZpc2l0LlJFTU9WRSA9IFJFTU9WRTtcbmZ1bmN0aW9uIHZpc2l0XyhrZXksIG5vZGUsIHZpc2l0b3IsIHBhdGgpIHtcbiAgICBjb25zdCBjdHJsID0gY2FsbFZpc2l0b3Ioa2V5LCBub2RlLCB2aXNpdG9yLCBwYXRoKTtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGN0cmwpIHx8IGlkZW50aXR5LmlzUGFpcihjdHJsKSkge1xuICAgICAgICByZXBsYWNlTm9kZShrZXksIHBhdGgsIGN0cmwpO1xuICAgICAgICByZXR1cm4gdmlzaXRfKGtleSwgY3RybCwgdmlzaXRvciwgcGF0aCk7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgY3RybCAhPT0gJ3N5bWJvbCcpIHtcbiAgICAgICAgaWYgKGlkZW50aXR5LmlzQ29sbGVjdGlvbihub2RlKSkge1xuICAgICAgICAgICAgcGF0aCA9IE9iamVjdC5mcmVlemUocGF0aC5jb25jYXQobm9kZSkpO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBub2RlLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2kgPSB2aXNpdF8oaSwgbm9kZS5pdGVtc1tpXSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjaSA9PT0gJ251bWJlcicpXG4gICAgICAgICAgICAgICAgICAgIGkgPSBjaSAtIDE7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2kgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gQlJFQUs7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2kgPT09IFJFTU9WRSkge1xuICAgICAgICAgICAgICAgICAgICBub2RlLml0ZW1zLnNwbGljZShpLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgaSAtPSAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChpZGVudGl0eS5pc1BhaXIobm9kZSkpIHtcbiAgICAgICAgICAgIHBhdGggPSBPYmplY3QuZnJlZXplKHBhdGguY29uY2F0KG5vZGUpKTtcbiAgICAgICAgICAgIGNvbnN0IGNrID0gdmlzaXRfKCdrZXknLCBub2RlLmtleSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICBpZiAoY2sgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgIHJldHVybiBCUkVBSztcbiAgICAgICAgICAgIGVsc2UgaWYgKGNrID09PSBSRU1PVkUpXG4gICAgICAgICAgICAgICAgbm9kZS5rZXkgPSBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3YgPSB2aXNpdF8oJ3ZhbHVlJywgbm9kZS52YWx1ZSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICBpZiAoY3YgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgIHJldHVybiBCUkVBSztcbiAgICAgICAgICAgIGVsc2UgaWYgKGN2ID09PSBSRU1PVkUpXG4gICAgICAgICAgICAgICAgbm9kZS52YWx1ZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGN0cmw7XG59XG4vKipcbiAqIEFwcGx5IGFuIGFzeW5jIHZpc2l0b3IgdG8gYW4gQVNUIG5vZGUgb3IgZG9jdW1lbnQuXG4gKlxuICogV2Fsa3MgdGhyb3VnaCB0aGUgdHJlZSAoZGVwdGgtZmlyc3QpIHN0YXJ0aW5nIGZyb20gYG5vZGVgLCBjYWxsaW5nIGFcbiAqIGB2aXNpdG9yYCBmdW5jdGlvbiB3aXRoIHRocmVlIGFyZ3VtZW50czpcbiAqICAgLSBga2V5YDogRm9yIHNlcXVlbmNlIHZhbHVlcyBhbmQgbWFwIGBQYWlyYCwgdGhlIG5vZGUncyBpbmRleCBpbiB0aGVcbiAqICAgICBjb2xsZWN0aW9uLiBXaXRoaW4gYSBgUGFpcmAsIGAna2V5J2Agb3IgYCd2YWx1ZSdgLCBjb3JyZXNwb25kaW5nbHkuXG4gKiAgICAgYG51bGxgIGZvciB0aGUgcm9vdCBub2RlLlxuICogICAtIGBub2RlYDogVGhlIGN1cnJlbnQgbm9kZS5cbiAqICAgLSBgcGF0aGA6IFRoZSBhbmNlc3RyeSBvZiB0aGUgY3VycmVudCBub2RlLlxuICpcbiAqIFRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHZpc2l0b3IgbWF5IGJlIHVzZWQgdG8gY29udHJvbCB0aGUgdHJhdmVyc2FsOlxuICogICAtIGBQcm9taXNlYDogTXVzdCByZXNvbHZlIHRvIG9uZSBvZiB0aGUgZm9sbG93aW5nIHZhbHVlc1xuICogICAtIGB1bmRlZmluZWRgIChkZWZhdWx0KTogRG8gbm90aGluZyBhbmQgY29udGludWVcbiAqICAgLSBgdmlzaXQuU0tJUGA6IERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhpcyBub2RlLCBjb250aW51ZSB3aXRoIG5leHRcbiAqICAgICBzaWJsaW5nXG4gKiAgIC0gYHZpc2l0LkJSRUFLYDogVGVybWluYXRlIHRyYXZlcnNhbCBjb21wbGV0ZWx5XG4gKiAgIC0gYHZpc2l0LlJFTU9WRWA6IFJlbW92ZSB0aGUgY3VycmVudCBub2RlLCB0aGVuIGNvbnRpbnVlIHdpdGggdGhlIG5leHQgb25lXG4gKiAgIC0gYE5vZGVgOiBSZXBsYWNlIHRoZSBjdXJyZW50IG5vZGUsIHRoZW4gY29udGludWUgYnkgdmlzaXRpbmcgaXRcbiAqICAgLSBgbnVtYmVyYDogV2hpbGUgaXRlcmF0aW5nIHRoZSBpdGVtcyBvZiBhIHNlcXVlbmNlIG9yIG1hcCwgc2V0IHRoZSBpbmRleFxuICogICAgIG9mIHRoZSBuZXh0IHN0ZXAuIFRoaXMgaXMgdXNlZnVsIGVzcGVjaWFsbHkgaWYgdGhlIGluZGV4IG9mIHRoZSBjdXJyZW50XG4gKiAgICAgbm9kZSBoYXMgY2hhbmdlZC5cbiAqXG4gKiBJZiBgdmlzaXRvcmAgaXMgYSBzaW5nbGUgZnVuY3Rpb24sIGl0IHdpbGwgYmUgY2FsbGVkIHdpdGggYWxsIHZhbHVlc1xuICogZW5jb3VudGVyZWQgaW4gdGhlIHRyZWUsIGluY2x1ZGluZyBlLmcuIGBudWxsYCB2YWx1ZXMuIEFsdGVybmF0aXZlbHksXG4gKiBzZXBhcmF0ZSB2aXNpdG9yIGZ1bmN0aW9ucyBtYXkgYmUgZGVmaW5lZCBmb3IgZWFjaCBgTWFwYCwgYFBhaXJgLCBgU2VxYCxcbiAqIGBBbGlhc2AgYW5kIGBTY2FsYXJgIG5vZGUuIFRvIGRlZmluZSB0aGUgc2FtZSB2aXNpdG9yIGZ1bmN0aW9uIGZvciBtb3JlIHRoYW5cbiAqIG9uZSBub2RlIHR5cGUsIHVzZSB0aGUgYENvbGxlY3Rpb25gIChtYXAgYW5kIHNlcSksIGBWYWx1ZWAgKG1hcCwgc2VxICYgc2NhbGFyKVxuICogYW5kIGBOb2RlYCAoYWxpYXMsIG1hcCwgc2VxICYgc2NhbGFyKSB0YXJnZXRzLiBPZiBhbGwgdGhlc2UsIG9ubHkgdGhlIG1vc3RcbiAqIHNwZWNpZmljIGRlZmluZWQgb25lIHdpbGwgYmUgdXNlZCBmb3IgZWFjaCBub2RlLlxuICovXG5hc3luYyBmdW5jdGlvbiB2aXNpdEFzeW5jKG5vZGUsIHZpc2l0b3IpIHtcbiAgICBjb25zdCB2aXNpdG9yXyA9IGluaXRWaXNpdG9yKHZpc2l0b3IpO1xuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KG5vZGUpKSB7XG4gICAgICAgIGNvbnN0IGNkID0gYXdhaXQgdmlzaXRBc3luY18obnVsbCwgbm9kZS5jb250ZW50cywgdmlzaXRvcl8sIE9iamVjdC5mcmVlemUoW25vZGVdKSk7XG4gICAgICAgIGlmIChjZCA9PT0gUkVNT1ZFKVxuICAgICAgICAgICAgbm9kZS5jb250ZW50cyA9IG51bGw7XG4gICAgfVxuICAgIGVsc2VcbiAgICAgICAgYXdhaXQgdmlzaXRBc3luY18obnVsbCwgbm9kZSwgdmlzaXRvcl8sIE9iamVjdC5mcmVlemUoW10pKTtcbn1cbi8vIFdpdGhvdXQgdGhlIGBhcyBzeW1ib2xgIGNhc3RzLCBUUyBkZWNsYXJlcyB0aGVzZSBpbiB0aGUgYHZpc2l0YFxuLy8gbmFtZXNwYWNlIHVzaW5nIGB2YXJgLCBidXQgdGhlbiBjb21wbGFpbnMgYWJvdXQgdGhhdCBiZWNhdXNlXG4vLyBgdW5pcXVlIHN5bWJvbGAgbXVzdCBiZSBgY29uc3RgLlxuLyoqIFRlcm1pbmF0ZSB2aXNpdCB0cmF2ZXJzYWwgY29tcGxldGVseSAqL1xudmlzaXRBc3luYy5CUkVBSyA9IEJSRUFLO1xuLyoqIERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhlIGN1cnJlbnQgbm9kZSAqL1xudmlzaXRBc3luYy5TS0lQID0gU0tJUDtcbi8qKiBSZW1vdmUgdGhlIGN1cnJlbnQgbm9kZSAqL1xudmlzaXRBc3luYy5SRU1PVkUgPSBSRU1PVkU7XG5hc3luYyBmdW5jdGlvbiB2aXNpdEFzeW5jXyhrZXksIG5vZGUsIHZpc2l0b3IsIHBhdGgpIHtcbiAgICBjb25zdCBjdHJsID0gYXdhaXQgY2FsbFZpc2l0b3Ioa2V5LCBub2RlLCB2aXNpdG9yLCBwYXRoKTtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGN0cmwpIHx8IGlkZW50aXR5LmlzUGFpcihjdHJsKSkge1xuICAgICAgICByZXBsYWNlTm9kZShrZXksIHBhdGgsIGN0cmwpO1xuICAgICAgICByZXR1cm4gdmlzaXRBc3luY18oa2V5LCBjdHJsLCB2aXNpdG9yLCBwYXRoKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBjdHJsICE9PSAnc3ltYm9sJykge1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKSB7XG4gICAgICAgICAgICBwYXRoID0gT2JqZWN0LmZyZWV6ZShwYXRoLmNvbmNhdChub2RlKSk7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vZGUuaXRlbXMubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjaSA9IGF3YWl0IHZpc2l0QXN5bmNfKGksIG5vZGUuaXRlbXNbaV0sIHZpc2l0b3IsIHBhdGgpO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2kgPT09ICdudW1iZXInKVxuICAgICAgICAgICAgICAgICAgICBpID0gY2kgLSAxO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBCUkVBSylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEJSRUFLO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBSRU1PVkUpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5pdGVtcy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICAgICAgICAgIGkgLT0gMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKG5vZGUpKSB7XG4gICAgICAgICAgICBwYXRoID0gT2JqZWN0LmZyZWV6ZShwYXRoLmNvbmNhdChub2RlKSk7XG4gICAgICAgICAgICBjb25zdCBjayA9IGF3YWl0IHZpc2l0QXN5bmNfKCdrZXknLCBub2RlLmtleSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICBpZiAoY2sgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgIHJldHVybiBCUkVBSztcbiAgICAgICAgICAgIGVsc2UgaWYgKGNrID09PSBSRU1PVkUpXG4gICAgICAgICAgICAgICAgbm9kZS5rZXkgPSBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3YgPSBhd2FpdCB2aXNpdEFzeW5jXygndmFsdWUnLCBub2RlLnZhbHVlLCB2aXNpdG9yLCBwYXRoKTtcbiAgICAgICAgICAgIGlmIChjdiA9PT0gQlJFQUspXG4gICAgICAgICAgICAgICAgcmV0dXJuIEJSRUFLO1xuICAgICAgICAgICAgZWxzZSBpZiAoY3YgPT09IFJFTU9WRSlcbiAgICAgICAgICAgICAgICBub2RlLnZhbHVlID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gY3RybDtcbn1cbmZ1bmN0aW9uIGluaXRWaXNpdG9yKHZpc2l0b3IpIHtcbiAgICBpZiAodHlwZW9mIHZpc2l0b3IgPT09ICdvYmplY3QnICYmXG4gICAgICAgICh2aXNpdG9yLkNvbGxlY3Rpb24gfHwgdmlzaXRvci5Ob2RlIHx8IHZpc2l0b3IuVmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICAgIEFsaWFzOiB2aXNpdG9yLk5vZGUsXG4gICAgICAgICAgICBNYXA6IHZpc2l0b3IuTm9kZSxcbiAgICAgICAgICAgIFNjYWxhcjogdmlzaXRvci5Ob2RlLFxuICAgICAgICAgICAgU2VxOiB2aXNpdG9yLk5vZGVcbiAgICAgICAgfSwgdmlzaXRvci5WYWx1ZSAmJiB7XG4gICAgICAgICAgICBNYXA6IHZpc2l0b3IuVmFsdWUsXG4gICAgICAgICAgICBTY2FsYXI6IHZpc2l0b3IuVmFsdWUsXG4gICAgICAgICAgICBTZXE6IHZpc2l0b3IuVmFsdWVcbiAgICAgICAgfSwgdmlzaXRvci5Db2xsZWN0aW9uICYmIHtcbiAgICAgICAgICAgIE1hcDogdmlzaXRvci5Db2xsZWN0aW9uLFxuICAgICAgICAgICAgU2VxOiB2aXNpdG9yLkNvbGxlY3Rpb25cbiAgICAgICAgfSwgdmlzaXRvcik7XG4gICAgfVxuICAgIHJldHVybiB2aXNpdG9yO1xufVxuZnVuY3Rpb24gY2FsbFZpc2l0b3Ioa2V5LCBub2RlLCB2aXNpdG9yLCBwYXRoKSB7XG4gICAgaWYgKHR5cGVvZiB2aXNpdG9yID09PSAnZnVuY3Rpb24nKVxuICAgICAgICByZXR1cm4gdmlzaXRvcihrZXksIG5vZGUsIHBhdGgpO1xuICAgIGlmIChpZGVudGl0eS5pc01hcChub2RlKSlcbiAgICAgICAgcmV0dXJuIHZpc2l0b3IuTWFwPy4oa2V5LCBub2RlLCBwYXRoKTtcbiAgICBpZiAoaWRlbnRpdHkuaXNTZXEobm9kZSkpXG4gICAgICAgIHJldHVybiB2aXNpdG9yLlNlcT8uKGtleSwgbm9kZSwgcGF0aCk7XG4gICAgaWYgKGlkZW50aXR5LmlzUGFpcihub2RlKSlcbiAgICAgICAgcmV0dXJuIHZpc2l0b3IuUGFpcj8uKGtleSwgbm9kZSwgcGF0aCk7XG4gICAgaWYgKGlkZW50aXR5LmlzU2NhbGFyKG5vZGUpKVxuICAgICAgICByZXR1cm4gdmlzaXRvci5TY2FsYXI/LihrZXksIG5vZGUsIHBhdGgpO1xuICAgIGlmIChpZGVudGl0eS5pc0FsaWFzKG5vZGUpKVxuICAgICAgICByZXR1cm4gdmlzaXRvci5BbGlhcz8uKGtleSwgbm9kZSwgcGF0aCk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbmZ1bmN0aW9uIHJlcGxhY2VOb2RlKGtleSwgcGF0aCwgbm9kZSkge1xuICAgIGNvbnN0IHBhcmVudCA9IHBhdGhbcGF0aC5sZW5ndGggLSAxXTtcbiAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHBhcmVudCkpIHtcbiAgICAgICAgcGFyZW50Lml0ZW1zW2tleV0gPSBub2RlO1xuICAgIH1cbiAgICBlbHNlIGlmIChpZGVudGl0eS5pc1BhaXIocGFyZW50KSkge1xuICAgICAgICBpZiAoa2V5ID09PSAna2V5JylcbiAgICAgICAgICAgIHBhcmVudC5rZXkgPSBub2RlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBwYXJlbnQudmFsdWUgPSBub2RlO1xuICAgIH1cbiAgICBlbHNlIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KHBhcmVudCkpIHtcbiAgICAgICAgcGFyZW50LmNvbnRlbnRzID0gbm9kZTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IHB0ID0gaWRlbnRpdHkuaXNBbGlhcyhwYXJlbnQpID8gJ2FsaWFzJyA6ICdzY2FsYXInO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCByZXBsYWNlIG5vZGUgd2l0aCAke3B0fSBwYXJlbnRgKTtcbiAgICB9XG59XG5cbmV4cG9ydHMudmlzaXQgPSB2aXNpdDtcbmV4cG9ydHMudmlzaXRBc3luYyA9IHZpc2l0QXN5bmM7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIHZpc2l0ID0gcmVxdWlyZSgnLi4vdmlzaXQuanMnKTtcblxuY29uc3QgZXNjYXBlQ2hhcnMgPSB7XG4gICAgJyEnOiAnJTIxJyxcbiAgICAnLCc6ICclMkMnLFxuICAgICdbJzogJyU1QicsXG4gICAgJ10nOiAnJTVEJyxcbiAgICAneyc6ICclN0InLFxuICAgICd9JzogJyU3RCdcbn07XG5jb25zdCBlc2NhcGVUYWdOYW1lID0gKHRuKSA9PiB0bi5yZXBsYWNlKC9bISxbXFxde31dL2csIGNoID0+IGVzY2FwZUNoYXJzW2NoXSk7XG5jbGFzcyBEaXJlY3RpdmVzIHtcbiAgICBjb25zdHJ1Y3Rvcih5YW1sLCB0YWdzKSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUaGUgZGlyZWN0aXZlcy1lbmQvZG9jLXN0YXJ0IG1hcmtlciBgLS0tYC4gSWYgYG51bGxgLCBhIG1hcmtlciBtYXkgc3RpbGwgYmVcbiAgICAgICAgICogaW5jbHVkZWQgaW4gdGhlIGRvY3VtZW50J3Mgc3RyaW5naWZpZWQgcmVwcmVzZW50YXRpb24uXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmRvY1N0YXJ0ID0gbnVsbDtcbiAgICAgICAgLyoqIFRoZSBkb2MtZW5kIG1hcmtlciBgLi4uYC4gICovXG4gICAgICAgIHRoaXMuZG9jRW5kID0gZmFsc2U7XG4gICAgICAgIHRoaXMueWFtbCA9IE9iamVjdC5hc3NpZ24oe30sIERpcmVjdGl2ZXMuZGVmYXVsdFlhbWwsIHlhbWwpO1xuICAgICAgICB0aGlzLnRhZ3MgPSBPYmplY3QuYXNzaWduKHt9LCBEaXJlY3RpdmVzLmRlZmF1bHRUYWdzLCB0YWdzKTtcbiAgICB9XG4gICAgY2xvbmUoKSB7XG4gICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgRGlyZWN0aXZlcyh0aGlzLnlhbWwsIHRoaXMudGFncyk7XG4gICAgICAgIGNvcHkuZG9jU3RhcnQgPSB0aGlzLmRvY1N0YXJ0O1xuICAgICAgICByZXR1cm4gY29weTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogRHVyaW5nIHBhcnNpbmcsIGdldCBhIERpcmVjdGl2ZXMgaW5zdGFuY2UgZm9yIHRoZSBjdXJyZW50IGRvY3VtZW50IGFuZFxuICAgICAqIHVwZGF0ZSB0aGUgc3RyZWFtIHN0YXRlIGFjY29yZGluZyB0byB0aGUgY3VycmVudCB2ZXJzaW9uJ3Mgc3BlYy5cbiAgICAgKi9cbiAgICBhdERvY3VtZW50KCkge1xuICAgICAgICBjb25zdCByZXMgPSBuZXcgRGlyZWN0aXZlcyh0aGlzLnlhbWwsIHRoaXMudGFncyk7XG4gICAgICAgIHN3aXRjaCAodGhpcy55YW1sLnZlcnNpb24pIHtcbiAgICAgICAgICAgIGNhc2UgJzEuMSc6XG4gICAgICAgICAgICAgICAgdGhpcy5hdE5leHREb2N1bWVudCA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICcxLjInOlxuICAgICAgICAgICAgICAgIHRoaXMuYXROZXh0RG9jdW1lbnQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLnlhbWwgPSB7XG4gICAgICAgICAgICAgICAgICAgIGV4cGxpY2l0OiBEaXJlY3RpdmVzLmRlZmF1bHRZYW1sLmV4cGxpY2l0LFxuICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uOiAnMS4yJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgdGhpcy50YWdzID0gT2JqZWN0LmFzc2lnbih7fSwgRGlyZWN0aXZlcy5kZWZhdWx0VGFncyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG4gICAgLyoqXG4gICAgICogQHBhcmFtIG9uRXJyb3IgLSBNYXkgYmUgY2FsbGVkIGV2ZW4gaWYgdGhlIGFjdGlvbiB3YXMgc3VjY2Vzc2Z1bFxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBvbiBzdWNjZXNzXG4gICAgICovXG4gICAgYWRkKGxpbmUsIG9uRXJyb3IpIHtcbiAgICAgICAgaWYgKHRoaXMuYXROZXh0RG9jdW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMueWFtbCA9IHsgZXhwbGljaXQ6IERpcmVjdGl2ZXMuZGVmYXVsdFlhbWwuZXhwbGljaXQsIHZlcnNpb246ICcxLjEnIH07XG4gICAgICAgICAgICB0aGlzLnRhZ3MgPSBPYmplY3QuYXNzaWduKHt9LCBEaXJlY3RpdmVzLmRlZmF1bHRUYWdzKTtcbiAgICAgICAgICAgIHRoaXMuYXROZXh0RG9jdW1lbnQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwYXJ0cyA9IGxpbmUudHJpbSgpLnNwbGl0KC9bIFxcdF0rLyk7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBwYXJ0cy5zaGlmdCgpO1xuICAgICAgICBzd2l0Y2ggKG5hbWUpIHtcbiAgICAgICAgICAgIGNhc2UgJyVUQUcnOiB7XG4gICAgICAgICAgICAgICAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMikge1xuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKDAsICclVEFHIGRpcmVjdGl2ZSBzaG91bGQgY29udGFpbiBleGFjdGx5IHR3byBwYXJ0cycpO1xuICAgICAgICAgICAgICAgICAgICBpZiAocGFydHMubGVuZ3RoIDwgMilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgW2hhbmRsZSwgcHJlZml4XSA9IHBhcnRzO1xuICAgICAgICAgICAgICAgIHRoaXMudGFnc1toYW5kbGVdID0gcHJlZml4O1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnJVlBTUwnOiB7XG4gICAgICAgICAgICAgICAgdGhpcy55YW1sLmV4cGxpY2l0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpZiAocGFydHMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoMCwgJyVZQU1MIGRpcmVjdGl2ZSBzaG91bGQgY29udGFpbiBleGFjdGx5IG9uZSBwYXJ0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgW3ZlcnNpb25dID0gcGFydHM7XG4gICAgICAgICAgICAgICAgaWYgKHZlcnNpb24gPT09ICcxLjEnIHx8IHZlcnNpb24gPT09ICcxLjInKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMueWFtbC52ZXJzaW9uID0gdmVyc2lvbjtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gL15cXGQrXFwuXFxkKyQvLnRlc3QodmVyc2lvbik7XG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoNiwgYFVuc3VwcG9ydGVkIFlBTUwgdmVyc2lvbiAke3ZlcnNpb259YCwgaXNWYWxpZCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIG9uRXJyb3IoMCwgYFVua25vd24gZGlyZWN0aXZlICR7bmFtZX1gLCB0cnVlKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVzb2x2ZXMgYSB0YWcsIG1hdGNoaW5nIGhhbmRsZXMgdG8gdGhvc2UgZGVmaW5lZCBpbiAlVEFHIGRpcmVjdGl2ZXMuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBSZXNvbHZlZCB0YWcsIHdoaWNoIG1heSBhbHNvIGJlIHRoZSBub24tc3BlY2lmaWMgdGFnIGAnISdgIG9yIGFcbiAgICAgKiAgIGAnIWxvY2FsJ2AgdGFnLCBvciBgbnVsbGAgaWYgdW5yZXNvbHZhYmxlLlxuICAgICAqL1xuICAgIHRhZ05hbWUoc291cmNlLCBvbkVycm9yKSB7XG4gICAgICAgIGlmIChzb3VyY2UgPT09ICchJylcbiAgICAgICAgICAgIHJldHVybiAnISc7IC8vIG5vbi1zcGVjaWZpYyB0YWdcbiAgICAgICAgaWYgKHNvdXJjZVswXSAhPT0gJyEnKSB7XG4gICAgICAgICAgICBvbkVycm9yKGBOb3QgYSB2YWxpZCB0YWc6ICR7c291cmNlfWApO1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHNvdXJjZVsxXSA9PT0gJzwnKSB7XG4gICAgICAgICAgICBjb25zdCB2ZXJiYXRpbSA9IHNvdXJjZS5zbGljZSgyLCAtMSk7XG4gICAgICAgICAgICBpZiAodmVyYmF0aW0gPT09ICchJyB8fCB2ZXJiYXRpbSA9PT0gJyEhJykge1xuICAgICAgICAgICAgICAgIG9uRXJyb3IoYFZlcmJhdGltIHRhZ3MgYXJlbid0IHJlc29sdmVkLCBzbyAke3NvdXJjZX0gaXMgaW52YWxpZC5gKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzb3VyY2Vbc291cmNlLmxlbmd0aCAtIDFdICE9PSAnPicpXG4gICAgICAgICAgICAgICAgb25FcnJvcignVmVyYmF0aW0gdGFncyBtdXN0IGVuZCB3aXRoIGEgPicpO1xuICAgICAgICAgICAgcmV0dXJuIHZlcmJhdGltO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IFssIGhhbmRsZSwgc3VmZml4XSA9IHNvdXJjZS5tYXRjaCgvXiguKiEpKFteIV0qKSQvcyk7XG4gICAgICAgIGlmICghc3VmZml4KVxuICAgICAgICAgICAgb25FcnJvcihgVGhlICR7c291cmNlfSB0YWcgaGFzIG5vIHN1ZmZpeGApO1xuICAgICAgICBjb25zdCBwcmVmaXggPSB0aGlzLnRhZ3NbaGFuZGxlXTtcbiAgICAgICAgaWYgKHByZWZpeCkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJlZml4ICsgZGVjb2RlVVJJQ29tcG9uZW50KHN1ZmZpeCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBvbkVycm9yKFN0cmluZyhlcnJvcikpO1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChoYW5kbGUgPT09ICchJylcbiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7IC8vIGxvY2FsIHRhZ1xuICAgICAgICBvbkVycm9yKGBDb3VsZCBub3QgcmVzb2x2ZSB0YWc6ICR7c291cmNlfWApO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2l2ZW4gYSBmdWxseSByZXNvbHZlZCB0YWcsIHJldHVybnMgaXRzIHByaW50YWJsZSBzdHJpbmcgZm9ybSxcbiAgICAgKiB0YWtpbmcgaW50byBhY2NvdW50IGN1cnJlbnQgdGFnIHByZWZpeGVzIGFuZCBkZWZhdWx0cy5cbiAgICAgKi9cbiAgICB0YWdTdHJpbmcodGFnKSB7XG4gICAgICAgIGZvciAoY29uc3QgW2hhbmRsZSwgcHJlZml4XSBvZiBPYmplY3QuZW50cmllcyh0aGlzLnRhZ3MpKSB7XG4gICAgICAgICAgICBpZiAodGFnLnN0YXJ0c1dpdGgocHJlZml4KSlcbiAgICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlICsgZXNjYXBlVGFnTmFtZSh0YWcuc3Vic3RyaW5nKHByZWZpeC5sZW5ndGgpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGFnWzBdID09PSAnIScgPyB0YWcgOiBgITwke3RhZ30+YDtcbiAgICB9XG4gICAgdG9TdHJpbmcoZG9jKSB7XG4gICAgICAgIGNvbnN0IGxpbmVzID0gdGhpcy55YW1sLmV4cGxpY2l0XG4gICAgICAgICAgICA/IFtgJVlBTUwgJHt0aGlzLnlhbWwudmVyc2lvbiB8fCAnMS4yJ31gXVxuICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgY29uc3QgdGFnRW50cmllcyA9IE9iamVjdC5lbnRyaWVzKHRoaXMudGFncyk7XG4gICAgICAgIGxldCB0YWdOYW1lcztcbiAgICAgICAgaWYgKGRvYyAmJiB0YWdFbnRyaWVzLmxlbmd0aCA+IDAgJiYgaWRlbnRpdHkuaXNOb2RlKGRvYy5jb250ZW50cykpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhZ3MgPSB7fTtcbiAgICAgICAgICAgIHZpc2l0LnZpc2l0KGRvYy5jb250ZW50cywgKF9rZXksIG5vZGUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKG5vZGUpICYmIG5vZGUudGFnKVxuICAgICAgICAgICAgICAgICAgICB0YWdzW25vZGUudGFnXSA9IHRydWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRhZ05hbWVzID0gT2JqZWN0LmtleXModGFncyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgdGFnTmFtZXMgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBbaGFuZGxlLCBwcmVmaXhdIG9mIHRhZ0VudHJpZXMpIHtcbiAgICAgICAgICAgIGlmIChoYW5kbGUgPT09ICchIScgJiYgcHJlZml4ID09PSAndGFnOnlhbWwub3JnLDIwMDI6JylcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGlmICghZG9jIHx8IHRhZ05hbWVzLnNvbWUodG4gPT4gdG4uc3RhcnRzV2l0aChwcmVmaXgpKSlcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKGAlVEFHICR7aGFuZGxlfSAke3ByZWZpeH1gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbGluZXMuam9pbignXFxuJyk7XG4gICAgfVxufVxuRGlyZWN0aXZlcy5kZWZhdWx0WWFtbCA9IHsgZXhwbGljaXQ6IGZhbHNlLCB2ZXJzaW9uOiAnMS4yJyB9O1xuRGlyZWN0aXZlcy5kZWZhdWx0VGFncyA9IHsgJyEhJzogJ3RhZzp5YW1sLm9yZywyMDAyOicgfTtcblxuZXhwb3J0cy5EaXJlY3RpdmVzID0gRGlyZWN0aXZlcztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgdmlzaXQgPSByZXF1aXJlKCcuLi92aXNpdC5qcycpO1xuXG4vKipcbiAqIFZlcmlmeSB0aGF0IHRoZSBpbnB1dCBzdHJpbmcgaXMgYSB2YWxpZCBhbmNob3IuXG4gKlxuICogV2lsbCB0aHJvdyBvbiBlcnJvcnMuXG4gKi9cbmZ1bmN0aW9uIGFuY2hvcklzVmFsaWQoYW5jaG9yKSB7XG4gICAgaWYgKC9bXFx4MDAtXFx4MTlcXHMsW1xcXXt9XS8udGVzdChhbmNob3IpKSB7XG4gICAgICAgIGNvbnN0IHNhID0gSlNPTi5zdHJpbmdpZnkoYW5jaG9yKTtcbiAgICAgICAgY29uc3QgbXNnID0gYEFuY2hvciBtdXN0IG5vdCBjb250YWluIHdoaXRlc3BhY2Ugb3IgY29udHJvbCBjaGFyYWN0ZXJzOiAke3NhfWA7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbn1cbmZ1bmN0aW9uIGFuY2hvck5hbWVzKHJvb3QpIHtcbiAgICBjb25zdCBhbmNob3JzID0gbmV3IFNldCgpO1xuICAgIHZpc2l0LnZpc2l0KHJvb3QsIHtcbiAgICAgICAgVmFsdWUoX2tleSwgbm9kZSkge1xuICAgICAgICAgICAgaWYgKG5vZGUuYW5jaG9yKVxuICAgICAgICAgICAgICAgIGFuY2hvcnMuYWRkKG5vZGUuYW5jaG9yKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBhbmNob3JzO1xufVxuLyoqIEZpbmQgYSBuZXcgYW5jaG9yIG5hbWUgd2l0aCB0aGUgZ2l2ZW4gYHByZWZpeGAgYW5kIGEgb25lLWluZGV4ZWQgc3VmZml4LiAqL1xuZnVuY3Rpb24gZmluZE5ld0FuY2hvcihwcmVmaXgsIGV4Y2x1ZGUpIHtcbiAgICBmb3IgKGxldCBpID0gMTsgdHJ1ZTsgKytpKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBgJHtwcmVmaXh9JHtpfWA7XG4gICAgICAgIGlmICghZXhjbHVkZS5oYXMobmFtZSkpXG4gICAgICAgICAgICByZXR1cm4gbmFtZTtcbiAgICB9XG59XG5mdW5jdGlvbiBjcmVhdGVOb2RlQW5jaG9ycyhkb2MsIHByZWZpeCkge1xuICAgIGNvbnN0IGFsaWFzT2JqZWN0cyA9IFtdO1xuICAgIGNvbnN0IHNvdXJjZU9iamVjdHMgPSBuZXcgTWFwKCk7XG4gICAgbGV0IHByZXZBbmNob3JzID0gbnVsbDtcbiAgICByZXR1cm4ge1xuICAgICAgICBvbkFuY2hvcjogKHNvdXJjZSkgPT4ge1xuICAgICAgICAgICAgYWxpYXNPYmplY3RzLnB1c2goc291cmNlKTtcbiAgICAgICAgICAgIHByZXZBbmNob3JzID8/IChwcmV2QW5jaG9ycyA9IGFuY2hvck5hbWVzKGRvYykpO1xuICAgICAgICAgICAgY29uc3QgYW5jaG9yID0gZmluZE5ld0FuY2hvcihwcmVmaXgsIHByZXZBbmNob3JzKTtcbiAgICAgICAgICAgIHByZXZBbmNob3JzLmFkZChhbmNob3IpO1xuICAgICAgICAgICAgcmV0dXJuIGFuY2hvcjtcbiAgICAgICAgfSxcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFdpdGggY2lyY3VsYXIgcmVmZXJlbmNlcywgdGhlIHNvdXJjZSBub2RlIGlzIG9ubHkgcmVzb2x2ZWQgYWZ0ZXIgYWxsXG4gICAgICAgICAqIG9mIGl0cyBjaGlsZCBub2RlcyBhcmUuIFRoaXMgaXMgd2h5IGFuY2hvcnMgYXJlIHNldCBvbmx5IGFmdGVyIGFsbCBvZlxuICAgICAgICAgKiB0aGUgbm9kZXMgaGF2ZSBiZWVuIGNyZWF0ZWQuXG4gICAgICAgICAqL1xuICAgICAgICBzZXRBbmNob3JzOiAoKSA9PiB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHNvdXJjZSBvZiBhbGlhc09iamVjdHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZWYgPSBzb3VyY2VPYmplY3RzLmdldChzb3VyY2UpO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcmVmID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgICAgICAgICAgICByZWYuYW5jaG9yICYmXG4gICAgICAgICAgICAgICAgICAgIChpZGVudGl0eS5pc1NjYWxhcihyZWYubm9kZSkgfHwgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHJlZi5ub2RlKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVmLm5vZGUuYW5jaG9yID0gcmVmLmFuY2hvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKCdGYWlsZWQgdG8gcmVzb2x2ZSByZXBlYXRlZCBvYmplY3QgKHRoaXMgc2hvdWxkIG5vdCBoYXBwZW4pJyk7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yLnNvdXJjZSA9IHNvdXJjZTtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBzb3VyY2VPYmplY3RzXG4gICAgfTtcbn1cblxuZXhwb3J0cy5hbmNob3JJc1ZhbGlkID0gYW5jaG9ySXNWYWxpZDtcbmV4cG9ydHMuYW5jaG9yTmFtZXMgPSBhbmNob3JOYW1lcztcbmV4cG9ydHMuY3JlYXRlTm9kZUFuY2hvcnMgPSBjcmVhdGVOb2RlQW5jaG9ycztcbmV4cG9ydHMuZmluZE5ld0FuY2hvciA9IGZpbmROZXdBbmNob3I7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG4vKipcbiAqIEFwcGxpZXMgdGhlIEpTT04ucGFyc2UgcmV2aXZlciBhbGdvcml0aG0gYXMgZGVmaW5lZCBpbiB0aGUgRUNNQS0yNjIgc3BlYyxcbiAqIGluIHNlY3Rpb24gMjQuNS4xLjEgXCJSdW50aW1lIFNlbWFudGljczogSW50ZXJuYWxpemVKU09OUHJvcGVydHlcIiBvZiB0aGVcbiAqIDIwMjEgZWRpdGlvbjogaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1qc29uLnBhcnNlXG4gKlxuICogSW5jbHVkZXMgZXh0ZW5zaW9ucyBmb3IgaGFuZGxpbmcgTWFwIGFuZCBTZXQgb2JqZWN0cy5cbiAqL1xuZnVuY3Rpb24gYXBwbHlSZXZpdmVyKHJldml2ZXIsIG9iaiwga2V5LCB2YWwpIHtcbiAgICBpZiAodmFsICYmIHR5cGVvZiB2YWwgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB2YWwubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB2MCA9IHZhbFtpXTtcbiAgICAgICAgICAgICAgICBjb25zdCB2MSA9IGFwcGx5UmV2aXZlcihyZXZpdmVyLCB2YWwsIFN0cmluZyhpKSwgdjApO1xuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tYXJyYXktZGVsZXRlXG4gICAgICAgICAgICAgICAgaWYgKHYxID09PSB1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB2YWxbaV07XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodjEgIT09IHYwKVxuICAgICAgICAgICAgICAgICAgICB2YWxbaV0gPSB2MTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh2YWwgaW5zdGFuY2VvZiBNYXApIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgayBvZiBBcnJheS5mcm9tKHZhbC5rZXlzKCkpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdjAgPSB2YWwuZ2V0KGspO1xuICAgICAgICAgICAgICAgIGNvbnN0IHYxID0gYXBwbHlSZXZpdmVyKHJldml2ZXIsIHZhbCwgaywgdjApO1xuICAgICAgICAgICAgICAgIGlmICh2MSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgICAgICB2YWwuZGVsZXRlKGspO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHYxICE9PSB2MClcbiAgICAgICAgICAgICAgICAgICAgdmFsLnNldChrLCB2MSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodmFsIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHYwIG9mIEFycmF5LmZyb20odmFsKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHYxID0gYXBwbHlSZXZpdmVyKHJldml2ZXIsIHZhbCwgdjAsIHYwKTtcbiAgICAgICAgICAgICAgICBpZiAodjEgPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAgICAgdmFsLmRlbGV0ZSh2MCk7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodjEgIT09IHYwKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbC5kZWxldGUodjApO1xuICAgICAgICAgICAgICAgICAgICB2YWwuYWRkKHYxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrLCB2MF0gb2YgT2JqZWN0LmVudHJpZXModmFsKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHYxID0gYXBwbHlSZXZpdmVyKHJldml2ZXIsIHZhbCwgaywgdjApO1xuICAgICAgICAgICAgICAgIGlmICh2MSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgICAgICBkZWxldGUgdmFsW2tdO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHYxICE9PSB2MClcbiAgICAgICAgICAgICAgICAgICAgdmFsW2tdID0gdjE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJldml2ZXIuY2FsbChvYmosIGtleSwgdmFsKTtcbn1cblxuZXhwb3J0cy5hcHBseVJldml2ZXIgPSBhcHBseVJldml2ZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5LmpzJyk7XG5cbi8qKlxuICogUmVjdXJzaXZlbHkgY29udmVydCBhbnkgbm9kZSBvciBpdHMgY29udGVudHMgdG8gbmF0aXZlIEphdmFTY3JpcHRcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgaW5wdXQgdmFsdWVcbiAqIEBwYXJhbSBhcmcgLSBJZiBgdmFsdWVgIGRlZmluZXMgYSBgdG9KU09OKClgIG1ldGhvZCwgdXNlIHRoaXNcbiAqICAgYXMgaXRzIGZpcnN0IGFyZ3VtZW50XG4gKiBAcGFyYW0gY3R4IC0gQ29udmVyc2lvbiBjb250ZXh0LCBvcmlnaW5hbGx5IHNldCBpbiBEb2N1bWVudCN0b0pTKCkuIElmXG4gKiAgIGB7IGtlZXA6IHRydWUgfWAgaXMgbm90IHNldCwgb3V0cHV0IHNob3VsZCBiZSBzdWl0YWJsZSBmb3IgSlNPTlxuICogICBzdHJpbmdpZmljYXRpb24uXG4gKi9cbmZ1bmN0aW9uIHRvSlModmFsdWUsIGFyZywgY3R4KSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtcmV0dXJuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKVxuICAgICAgICByZXR1cm4gdmFsdWUubWFwKCh2LCBpKSA9PiB0b0pTKHYsIFN0cmluZyhpKSwgY3R4KSk7XG4gICAgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZS50b0pTT04gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtY2FsbFxuICAgICAgICBpZiAoIWN0eCB8fCAhaWRlbnRpdHkuaGFzQW5jaG9yKHZhbHVlKSlcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS50b0pTT04oYXJnLCBjdHgpO1xuICAgICAgICBjb25zdCBkYXRhID0geyBhbGlhc0NvdW50OiAwLCBjb3VudDogMSwgcmVzOiB1bmRlZmluZWQgfTtcbiAgICAgICAgY3R4LmFuY2hvcnMuc2V0KHZhbHVlLCBkYXRhKTtcbiAgICAgICAgY3R4Lm9uQ3JlYXRlID0gcmVzID0+IHtcbiAgICAgICAgICAgIGRhdGEucmVzID0gcmVzO1xuICAgICAgICAgICAgZGVsZXRlIGN0eC5vbkNyZWF0ZTtcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgcmVzID0gdmFsdWUudG9KU09OKGFyZywgY3R4KTtcbiAgICAgICAgaWYgKGN0eC5vbkNyZWF0ZSlcbiAgICAgICAgICAgIGN0eC5vbkNyZWF0ZShyZXMpO1xuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYmlnaW50JyAmJiAhY3R4Py5rZWVwKVxuICAgICAgICByZXR1cm4gTnVtYmVyKHZhbHVlKTtcbiAgICByZXR1cm4gdmFsdWU7XG59XG5cbmV4cG9ydHMudG9KUyA9IHRvSlM7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgYXBwbHlSZXZpdmVyID0gcmVxdWlyZSgnLi4vZG9jL2FwcGx5UmV2aXZlci5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eS5qcycpO1xudmFyIHRvSlMgPSByZXF1aXJlKCcuL3RvSlMuanMnKTtcblxuY2xhc3MgTm9kZUJhc2Uge1xuICAgIGNvbnN0cnVjdG9yKHR5cGUpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIGlkZW50aXR5Lk5PREVfVFlQRSwgeyB2YWx1ZTogdHlwZSB9KTtcbiAgICB9XG4gICAgLyoqIENyZWF0ZSBhIGNvcHkgb2YgdGhpcyBub2RlLiAgKi9cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgY29uc3QgY29weSA9IE9iamVjdC5jcmVhdGUoT2JqZWN0LmdldFByb3RvdHlwZU9mKHRoaXMpLCBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0aGlzKSk7XG4gICAgICAgIGlmICh0aGlzLnJhbmdlKVxuICAgICAgICAgICAgY29weS5yYW5nZSA9IHRoaXMucmFuZ2Uuc2xpY2UoKTtcbiAgICAgICAgcmV0dXJuIGNvcHk7XG4gICAgfVxuICAgIC8qKiBBIHBsYWluIEphdmFTY3JpcHQgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBub2RlLiAqL1xuICAgIHRvSlMoZG9jLCB7IG1hcEFzTWFwLCBtYXhBbGlhc0NvdW50LCBvbkFuY2hvciwgcmV2aXZlciB9ID0ge30pIHtcbiAgICAgICAgaWYgKCFpZGVudGl0eS5pc0RvY3VtZW50KGRvYykpXG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdBIGRvY3VtZW50IGFyZ3VtZW50IGlzIHJlcXVpcmVkJyk7XG4gICAgICAgIGNvbnN0IGN0eCA9IHtcbiAgICAgICAgICAgIGFuY2hvcnM6IG5ldyBNYXAoKSxcbiAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgIGtlZXA6IHRydWUsXG4gICAgICAgICAgICBtYXBBc01hcDogbWFwQXNNYXAgPT09IHRydWUsXG4gICAgICAgICAgICBtYXBLZXlXYXJuZWQ6IGZhbHNlLFxuICAgICAgICAgICAgbWF4QWxpYXNDb3VudDogdHlwZW9mIG1heEFsaWFzQ291bnQgPT09ICdudW1iZXInID8gbWF4QWxpYXNDb3VudCA6IDEwMFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCByZXMgPSB0b0pTLnRvSlModGhpcywgJycsIGN0eCk7XG4gICAgICAgIGlmICh0eXBlb2Ygb25BbmNob3IgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHsgY291bnQsIHJlcyB9IG9mIGN0eC5hbmNob3JzLnZhbHVlcygpKVxuICAgICAgICAgICAgICAgIG9uQW5jaG9yKHJlcywgY291bnQpO1xuICAgICAgICByZXR1cm4gdHlwZW9mIHJldml2ZXIgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgID8gYXBwbHlSZXZpdmVyLmFwcGx5UmV2aXZlcihyZXZpdmVyLCB7ICcnOiByZXMgfSwgJycsIHJlcylcbiAgICAgICAgICAgIDogcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0cy5Ob2RlQmFzZSA9IE5vZGVCYXNlO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGFuY2hvcnMgPSByZXF1aXJlKCcuLi9kb2MvYW5jaG9ycy5qcycpO1xudmFyIHZpc2l0ID0gcmVxdWlyZSgnLi4vdmlzaXQuanMnKTtcbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vaWRlbnRpdHkuanMnKTtcbnZhciBOb2RlID0gcmVxdWlyZSgnLi9Ob2RlLmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4vdG9KUy5qcycpO1xuXG5jbGFzcyBBbGlhcyBleHRlbmRzIE5vZGUuTm9kZUJhc2Uge1xuICAgIGNvbnN0cnVjdG9yKHNvdXJjZSkge1xuICAgICAgICBzdXBlcihpZGVudGl0eS5BTElBUyk7XG4gICAgICAgIHRoaXMuc291cmNlID0gc291cmNlO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ3RhZycsIHtcbiAgICAgICAgICAgIHNldCgpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FsaWFzIG5vZGVzIGNhbm5vdCBoYXZlIHRhZ3MnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJlc29sdmUgdGhlIHZhbHVlIG9mIHRoaXMgYWxpYXMgd2l0aGluIGBkb2NgLCBmaW5kaW5nIHRoZSBsYXN0XG4gICAgICogaW5zdGFuY2Ugb2YgdGhlIGBzb3VyY2VgIGFuY2hvciBiZWZvcmUgdGhpcyBub2RlLlxuICAgICAqL1xuICAgIHJlc29sdmUoZG9jLCBjdHgpIHtcbiAgICAgICAgbGV0IG5vZGVzO1xuICAgICAgICBpZiAoY3R4Py5hbGlhc1Jlc29sdmVDYWNoZSkge1xuICAgICAgICAgICAgbm9kZXMgPSBjdHguYWxpYXNSZXNvbHZlQ2FjaGU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBub2RlcyA9IFtdO1xuICAgICAgICAgICAgdmlzaXQudmlzaXQoZG9jLCB7XG4gICAgICAgICAgICAgICAgTm9kZTogKF9rZXksIG5vZGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzQWxpYXMobm9kZSkgfHwgaWRlbnRpdHkuaGFzQW5jaG9yKG5vZGUpKVxuICAgICAgICAgICAgICAgICAgICAgICAgbm9kZXMucHVzaChub2RlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChjdHgpXG4gICAgICAgICAgICAgICAgY3R4LmFsaWFzUmVzb2x2ZUNhY2hlID0gbm9kZXM7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGZvdW5kID0gdW5kZWZpbmVkO1xuICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2Ygbm9kZXMpIHtcbiAgICAgICAgICAgIGlmIChub2RlID09PSB0aGlzKVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgaWYgKG5vZGUuYW5jaG9yID09PSB0aGlzLnNvdXJjZSlcbiAgICAgICAgICAgICAgICBmb3VuZCA9IG5vZGU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZvdW5kO1xuICAgIH1cbiAgICB0b0pTT04oX2FyZywgY3R4KSB7XG4gICAgICAgIGlmICghY3R4KVxuICAgICAgICAgICAgcmV0dXJuIHsgc291cmNlOiB0aGlzLnNvdXJjZSB9O1xuICAgICAgICBjb25zdCB7IGFuY2hvcnMsIGRvYywgbWF4QWxpYXNDb3VudCB9ID0gY3R4O1xuICAgICAgICBjb25zdCBzb3VyY2UgPSB0aGlzLnJlc29sdmUoZG9jLCBjdHgpO1xuICAgICAgICBpZiAoIXNvdXJjZSkge1xuICAgICAgICAgICAgY29uc3QgbXNnID0gYFVucmVzb2x2ZWQgYWxpYXMgKHRoZSBhbmNob3IgbXVzdCBiZSBzZXQgYmVmb3JlIHRoZSBhbGlhcyk6ICR7dGhpcy5zb3VyY2V9YDtcbiAgICAgICAgICAgIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihtc2cpO1xuICAgICAgICB9XG4gICAgICAgIGxldCBkYXRhID0gYW5jaG9ycy5nZXQoc291cmNlKTtcbiAgICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgICAgICAvLyBSZXNvbHZlIGFuY2hvcnMgZm9yIE5vZGUucHJvdG90eXBlLnRvSlMoKVxuICAgICAgICAgICAgdG9KUy50b0pTKHNvdXJjZSwgbnVsbCwgY3R4KTtcbiAgICAgICAgICAgIGRhdGEgPSBhbmNob3JzLmdldChzb3VyY2UpO1xuICAgICAgICB9XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoIWRhdGEgfHwgZGF0YS5yZXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uc3QgbXNnID0gJ1RoaXMgc2hvdWxkIG5vdCBoYXBwZW46IEFsaWFzIGFuY2hvciB3YXMgbm90IHJlc29sdmVkPyc7XG4gICAgICAgICAgICB0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IobXNnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWF4QWxpYXNDb3VudCA+PSAwKSB7XG4gICAgICAgICAgICBkYXRhLmNvdW50ICs9IDE7XG4gICAgICAgICAgICBpZiAoZGF0YS5hbGlhc0NvdW50ID09PSAwKVxuICAgICAgICAgICAgICAgIGRhdGEuYWxpYXNDb3VudCA9IGdldEFsaWFzQ291bnQoZG9jLCBzb3VyY2UsIGFuY2hvcnMpO1xuICAgICAgICAgICAgaWYgKGRhdGEuY291bnQgKiBkYXRhLmFsaWFzQ291bnQgPiBtYXhBbGlhc0NvdW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gJ0V4Y2Vzc2l2ZSBhbGlhcyBjb3VudCBpbmRpY2F0ZXMgYSByZXNvdXJjZSBleGhhdXN0aW9uIGF0dGFjayc7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKG1zZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRhdGEucmVzO1xuICAgIH1cbiAgICB0b1N0cmluZyhjdHgsIF9vbkNvbW1lbnQsIF9vbkNob21wS2VlcCkge1xuICAgICAgICBjb25zdCBzcmMgPSBgKiR7dGhpcy5zb3VyY2V9YDtcbiAgICAgICAgaWYgKGN0eCkge1xuICAgICAgICAgICAgYW5jaG9ycy5hbmNob3JJc1ZhbGlkKHRoaXMuc291cmNlKTtcbiAgICAgICAgICAgIGlmIChjdHgub3B0aW9ucy52ZXJpZnlBbGlhc09yZGVyICYmICFjdHguYW5jaG9ycy5oYXModGhpcy5zb3VyY2UpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gYFVucmVzb2x2ZWQgYWxpYXMgKHRoZSBhbmNob3IgbXVzdCBiZSBzZXQgYmVmb3JlIHRoZSBhbGlhcyk6ICR7dGhpcy5zb3VyY2V9YDtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjdHguaW1wbGljaXRLZXkpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke3NyY30gYDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3JjO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdldEFsaWFzQ291bnQoZG9jLCBub2RlLCBhbmNob3JzKSB7XG4gICAgaWYgKGlkZW50aXR5LmlzQWxpYXMobm9kZSkpIHtcbiAgICAgICAgY29uc3Qgc291cmNlID0gbm9kZS5yZXNvbHZlKGRvYyk7XG4gICAgICAgIGNvbnN0IGFuY2hvciA9IGFuY2hvcnMgJiYgc291cmNlICYmIGFuY2hvcnMuZ2V0KHNvdXJjZSk7XG4gICAgICAgIHJldHVybiBhbmNob3IgPyBhbmNob3IuY291bnQgKiBhbmNob3IuYWxpYXNDb3VudCA6IDA7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlkZW50aXR5LmlzQ29sbGVjdGlvbihub2RlKSkge1xuICAgICAgICBsZXQgY291bnQgPSAwO1xuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygbm9kZS5pdGVtcykge1xuICAgICAgICAgICAgY29uc3QgYyA9IGdldEFsaWFzQ291bnQoZG9jLCBpdGVtLCBhbmNob3JzKTtcbiAgICAgICAgICAgIGlmIChjID4gY291bnQpXG4gICAgICAgICAgICAgICAgY291bnQgPSBjO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb3VudDtcbiAgICB9XG4gICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKG5vZGUpKSB7XG4gICAgICAgIGNvbnN0IGtjID0gZ2V0QWxpYXNDb3VudChkb2MsIG5vZGUua2V5LCBhbmNob3JzKTtcbiAgICAgICAgY29uc3QgdmMgPSBnZXRBbGlhc0NvdW50KGRvYywgbm9kZS52YWx1ZSwgYW5jaG9ycyk7XG4gICAgICAgIHJldHVybiBNYXRoLm1heChrYywgdmMpO1xuICAgIH1cbiAgICByZXR1cm4gMTtcbn1cblxuZXhwb3J0cy5BbGlhcyA9IEFsaWFzO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eS5qcycpO1xudmFyIE5vZGUgPSByZXF1aXJlKCcuL05vZGUuanMnKTtcbnZhciB0b0pTID0gcmVxdWlyZSgnLi90b0pTLmpzJyk7XG5cbmNvbnN0IGlzU2NhbGFyVmFsdWUgPSAodmFsdWUpID0+ICF2YWx1ZSB8fCAodHlwZW9mIHZhbHVlICE9PSAnZnVuY3Rpb24nICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpO1xuY2xhc3MgU2NhbGFyIGV4dGVuZHMgTm9kZS5Ob2RlQmFzZSB7XG4gICAgY29uc3RydWN0b3IodmFsdWUpIHtcbiAgICAgICAgc3VwZXIoaWRlbnRpdHkuU0NBTEFSKTtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIH1cbiAgICB0b0pTT04oYXJnLCBjdHgpIHtcbiAgICAgICAgcmV0dXJuIGN0eD8ua2VlcCA/IHRoaXMudmFsdWUgOiB0b0pTLnRvSlModGhpcy52YWx1ZSwgYXJnLCBjdHgpO1xuICAgIH1cbiAgICB0b1N0cmluZygpIHtcbiAgICAgICAgcmV0dXJuIFN0cmluZyh0aGlzLnZhbHVlKTtcbiAgICB9XG59XG5TY2FsYXIuQkxPQ0tfRk9MREVEID0gJ0JMT0NLX0ZPTERFRCc7XG5TY2FsYXIuQkxPQ0tfTElURVJBTCA9ICdCTE9DS19MSVRFUkFMJztcblNjYWxhci5QTEFJTiA9ICdQTEFJTic7XG5TY2FsYXIuUVVPVEVfRE9VQkxFID0gJ1FVT1RFX0RPVUJMRSc7XG5TY2FsYXIuUVVPVEVfU0lOR0xFID0gJ1FVT1RFX1NJTkdMRSc7XG5cbmV4cG9ydHMuU2NhbGFyID0gU2NhbGFyO1xuZXhwb3J0cy5pc1NjYWxhclZhbHVlID0gaXNTY2FsYXJWYWx1ZTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBBbGlhcyA9IHJlcXVpcmUoJy4uL25vZGVzL0FsaWFzLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4uL25vZGVzL1NjYWxhci5qcycpO1xuXG5jb25zdCBkZWZhdWx0VGFnUHJlZml4ID0gJ3RhZzp5YW1sLm9yZywyMDAyOic7XG5mdW5jdGlvbiBmaW5kVGFnT2JqZWN0KHZhbHVlLCB0YWdOYW1lLCB0YWdzKSB7XG4gICAgaWYgKHRhZ05hbWUpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSB0YWdzLmZpbHRlcih0ID0+IHQudGFnID09PSB0YWdOYW1lKTtcbiAgICAgICAgY29uc3QgdGFnT2JqID0gbWF0Y2guZmluZCh0ID0+ICF0LmZvcm1hdCkgPz8gbWF0Y2hbMF07XG4gICAgICAgIGlmICghdGFnT2JqKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUYWcgJHt0YWdOYW1lfSBub3QgZm91bmRgKTtcbiAgICAgICAgcmV0dXJuIHRhZ09iajtcbiAgICB9XG4gICAgcmV0dXJuIHRhZ3MuZmluZCh0ID0+IHQuaWRlbnRpZnk/Lih2YWx1ZSkgJiYgIXQuZm9ybWF0KTtcbn1cbmZ1bmN0aW9uIGNyZWF0ZU5vZGUodmFsdWUsIHRhZ05hbWUsIGN0eCkge1xuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KHZhbHVlKSlcbiAgICAgICAgdmFsdWUgPSB2YWx1ZS5jb250ZW50cztcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKHZhbHVlKSlcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIGlmIChpZGVudGl0eS5pc1BhaXIodmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IG1hcCA9IGN0eC5zY2hlbWFbaWRlbnRpdHkuTUFQXS5jcmVhdGVOb2RlPy4oY3R4LnNjaGVtYSwgbnVsbCwgY3R4KTtcbiAgICAgICAgbWFwLml0ZW1zLnB1c2godmFsdWUpO1xuICAgICAgICByZXR1cm4gbWFwO1xuICAgIH1cbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBTdHJpbmcgfHxcbiAgICAgICAgdmFsdWUgaW5zdGFuY2VvZiBOdW1iZXIgfHxcbiAgICAgICAgdmFsdWUgaW5zdGFuY2VvZiBCb29sZWFuIHx8XG4gICAgICAgICh0eXBlb2YgQmlnSW50ICE9PSAndW5kZWZpbmVkJyAmJiB2YWx1ZSBpbnN0YW5jZW9mIEJpZ0ludCkgLy8gbm90IHN1cHBvcnRlZCBldmVyeXdoZXJlXG4gICAgKSB7XG4gICAgICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtc2VyaWFsaXplanNvbnByb3BlcnR5XG4gICAgICAgIHZhbHVlID0gdmFsdWUudmFsdWVPZigpO1xuICAgIH1cbiAgICBjb25zdCB7IGFsaWFzRHVwbGljYXRlT2JqZWN0cywgb25BbmNob3IsIG9uVGFnT2JqLCBzY2hlbWEsIHNvdXJjZU9iamVjdHMgfSA9IGN0eDtcbiAgICAvLyBEZXRlY3QgZHVwbGljYXRlIHJlZmVyZW5jZXMgdG8gdGhlIHNhbWUgb2JqZWN0ICYgdXNlIEFsaWFzIG5vZGVzIGZvciBhbGxcbiAgICAvLyBhZnRlciBmaXJzdC4gVGhlIGByZWZgIHdyYXBwZXIgYWxsb3dzIGZvciBjaXJjdWxhciByZWZlcmVuY2VzIHRvIHJlc29sdmUuXG4gICAgbGV0IHJlZiA9IHVuZGVmaW5lZDtcbiAgICBpZiAoYWxpYXNEdXBsaWNhdGVPYmplY3RzICYmIHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmVmID0gc291cmNlT2JqZWN0cy5nZXQodmFsdWUpO1xuICAgICAgICBpZiAocmVmKSB7XG4gICAgICAgICAgICByZWYuYW5jaG9yID8/IChyZWYuYW5jaG9yID0gb25BbmNob3IodmFsdWUpKTtcbiAgICAgICAgICAgIHJldHVybiBuZXcgQWxpYXMuQWxpYXMocmVmLmFuY2hvcik7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZWYgPSB7IGFuY2hvcjogbnVsbCwgbm9kZTogbnVsbCB9O1xuICAgICAgICAgICAgc291cmNlT2JqZWN0cy5zZXQodmFsdWUsIHJlZik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRhZ05hbWU/LnN0YXJ0c1dpdGgoJyEhJykpXG4gICAgICAgIHRhZ05hbWUgPSBkZWZhdWx0VGFnUHJlZml4ICsgdGFnTmFtZS5zbGljZSgyKTtcbiAgICBsZXQgdGFnT2JqID0gZmluZFRhZ09iamVjdCh2YWx1ZSwgdGFnTmFtZSwgc2NoZW1hLnRhZ3MpO1xuICAgIGlmICghdGFnT2JqKSB7XG4gICAgICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUudG9KU09OID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1jYWxsXG4gICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvSlNPTigpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdmFsdWUgfHwgdHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBTY2FsYXIuU2NhbGFyKHZhbHVlKTtcbiAgICAgICAgICAgIGlmIChyZWYpXG4gICAgICAgICAgICAgICAgcmVmLm5vZGUgPSBub2RlO1xuICAgICAgICAgICAgcmV0dXJuIG5vZGU7XG4gICAgICAgIH1cbiAgICAgICAgdGFnT2JqID1cbiAgICAgICAgICAgIHZhbHVlIGluc3RhbmNlb2YgTWFwXG4gICAgICAgICAgICAgICAgPyBzY2hlbWFbaWRlbnRpdHkuTUFQXVxuICAgICAgICAgICAgICAgIDogU3ltYm9sLml0ZXJhdG9yIGluIE9iamVjdCh2YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgPyBzY2hlbWFbaWRlbnRpdHkuU0VRXVxuICAgICAgICAgICAgICAgICAgICA6IHNjaGVtYVtpZGVudGl0eS5NQVBdO1xuICAgIH1cbiAgICBpZiAob25UYWdPYmopIHtcbiAgICAgICAgb25UYWdPYmoodGFnT2JqKTtcbiAgICAgICAgZGVsZXRlIGN0eC5vblRhZ09iajtcbiAgICB9XG4gICAgY29uc3Qgbm9kZSA9IHRhZ09iaj8uY3JlYXRlTm9kZVxuICAgICAgICA/IHRhZ09iai5jcmVhdGVOb2RlKGN0eC5zY2hlbWEsIHZhbHVlLCBjdHgpXG4gICAgICAgIDogdHlwZW9mIHRhZ09iaj8ubm9kZUNsYXNzPy5mcm9tID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgICA/IHRhZ09iai5ub2RlQ2xhc3MuZnJvbShjdHguc2NoZW1hLCB2YWx1ZSwgY3R4KVxuICAgICAgICAgICAgOiBuZXcgU2NhbGFyLlNjYWxhcih2YWx1ZSk7XG4gICAgaWYgKHRhZ05hbWUpXG4gICAgICAgIG5vZGUudGFnID0gdGFnTmFtZTtcbiAgICBlbHNlIGlmICghdGFnT2JqLmRlZmF1bHQpXG4gICAgICAgIG5vZGUudGFnID0gdGFnT2JqLnRhZztcbiAgICBpZiAocmVmKVxuICAgICAgICByZWYubm9kZSA9IG5vZGU7XG4gICAgcmV0dXJuIG5vZGU7XG59XG5cbmV4cG9ydHMuY3JlYXRlTm9kZSA9IGNyZWF0ZU5vZGU7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgY3JlYXRlTm9kZSA9IHJlcXVpcmUoJy4uL2RvYy9jcmVhdGVOb2RlLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5LmpzJyk7XG52YXIgTm9kZSA9IHJlcXVpcmUoJy4vTm9kZS5qcycpO1xuXG5mdW5jdGlvbiBjb2xsZWN0aW9uRnJvbVBhdGgoc2NoZW1hLCBwYXRoLCB2YWx1ZSkge1xuICAgIGxldCB2ID0gdmFsdWU7XG4gICAgZm9yIChsZXQgaSA9IHBhdGgubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgY29uc3QgayA9IHBhdGhbaV07XG4gICAgICAgIGlmICh0eXBlb2YgayA9PT0gJ251bWJlcicgJiYgTnVtYmVyLmlzSW50ZWdlcihrKSAmJiBrID49IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGEgPSBbXTtcbiAgICAgICAgICAgIGFba10gPSB2O1xuICAgICAgICAgICAgdiA9IGE7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB2ID0gbmV3IE1hcChbW2ssIHZdXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZU5vZGUuY3JlYXRlTm9kZSh2LCB1bmRlZmluZWQsIHtcbiAgICAgICAgYWxpYXNEdXBsaWNhdGVPYmplY3RzOiBmYWxzZSxcbiAgICAgICAga2VlcFVuZGVmaW5lZDogZmFsc2UsXG4gICAgICAgIG9uQW5jaG9yOiAoKSA9PiB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgc2hvdWxkIG5vdCBoYXBwZW4sIHBsZWFzZSByZXBvcnQgYSBidWcuJyk7XG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYSxcbiAgICAgICAgc291cmNlT2JqZWN0czogbmV3IE1hcCgpXG4gICAgfSk7XG59XG4vLyBUeXBlIGd1YXJkIGlzIGludGVudGlvbmFsbHkgYSBsaXR0bGUgd3Jvbmcgc28gYXMgdG8gYmUgbW9yZSB1c2VmdWwsXG4vLyBhcyBpdCBkb2VzIG5vdCBjb3ZlciB1bnR5cGFibGUgZW1wdHkgbm9uLXN0cmluZyBpdGVyYWJsZXMgKGUuZy4gW10pLlxuY29uc3QgaXNFbXB0eVBhdGggPSAocGF0aCkgPT4gcGF0aCA9PSBudWxsIHx8XG4gICAgKHR5cGVvZiBwYXRoID09PSAnb2JqZWN0JyAmJiAhIXBhdGhbU3ltYm9sLml0ZXJhdG9yXSgpLm5leHQoKS5kb25lKTtcbmNsYXNzIENvbGxlY3Rpb24gZXh0ZW5kcyBOb2RlLk5vZGVCYXNlIHtcbiAgICBjb25zdHJ1Y3Rvcih0eXBlLCBzY2hlbWEpIHtcbiAgICAgICAgc3VwZXIodHlwZSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnc2NoZW1hJywge1xuICAgICAgICAgICAgdmFsdWU6IHNjaGVtYSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIGNvcHkgb2YgdGhpcyBjb2xsZWN0aW9uLlxuICAgICAqXG4gICAgICogQHBhcmFtIHNjaGVtYSAtIElmIGRlZmluZWQsIG92ZXJ3cml0ZXMgdGhlIG9yaWdpbmFsJ3Mgc2NoZW1hXG4gICAgICovXG4gICAgY2xvbmUoc2NoZW1hKSB7XG4gICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzKSwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModGhpcykpO1xuICAgICAgICBpZiAoc2NoZW1hKVxuICAgICAgICAgICAgY29weS5zY2hlbWEgPSBzY2hlbWE7XG4gICAgICAgIGNvcHkuaXRlbXMgPSBjb3B5Lml0ZW1zLm1hcChpdCA9PiBpZGVudGl0eS5pc05vZGUoaXQpIHx8IGlkZW50aXR5LmlzUGFpcihpdCkgPyBpdC5jbG9uZShzY2hlbWEpIDogaXQpO1xuICAgICAgICBpZiAodGhpcy5yYW5nZSlcbiAgICAgICAgICAgIGNvcHkucmFuZ2UgPSB0aGlzLnJhbmdlLnNsaWNlKCk7XG4gICAgICAgIHJldHVybiBjb3B5O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBZGRzIGEgdmFsdWUgdG8gdGhlIGNvbGxlY3Rpb24uIEZvciBgISFtYXBgIGFuZCBgISFvbWFwYCB0aGUgdmFsdWUgbXVzdFxuICAgICAqIGJlIGEgUGFpciBpbnN0YW5jZSBvciBhIGB7IGtleSwgdmFsdWUgfWAgb2JqZWN0LCB3aGljaCBtYXkgbm90IGhhdmUgYSBrZXlcbiAgICAgKiB0aGF0IGFscmVhZHkgZXhpc3RzIGluIHRoZSBtYXAuXG4gICAgICovXG4gICAgYWRkSW4ocGF0aCwgdmFsdWUpIHtcbiAgICAgICAgaWYgKGlzRW1wdHlQYXRoKHBhdGgpKVxuICAgICAgICAgICAgdGhpcy5hZGQodmFsdWUpO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldChrZXksIHRydWUpO1xuICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzQ29sbGVjdGlvbihub2RlKSlcbiAgICAgICAgICAgICAgICBub2RlLmFkZEluKHJlc3QsIHZhbHVlKTtcbiAgICAgICAgICAgIGVsc2UgaWYgKG5vZGUgPT09IHVuZGVmaW5lZCAmJiB0aGlzLnNjaGVtYSlcbiAgICAgICAgICAgICAgICB0aGlzLnNldChrZXksIGNvbGxlY3Rpb25Gcm9tUGF0aCh0aGlzLnNjaGVtYSwgcmVzdCwgdmFsdWUpKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIFlBTUwgY29sbGVjdGlvbiBhdCAke2tleX0uIFJlbWFpbmluZyBwYXRoOiAke3Jlc3R9YCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGNvbGxlY3Rpb24uXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBpdGVtIHdhcyBmb3VuZCBhbmQgcmVtb3ZlZC5cbiAgICAgKi9cbiAgICBkZWxldGVJbihwYXRoKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgaWYgKHJlc3QubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlKGtleSk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldChrZXksIHRydWUpO1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKVxuICAgICAgICAgICAgcmV0dXJuIG5vZGUuZGVsZXRlSW4ocmVzdCk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgWUFNTCBjb2xsZWN0aW9uIGF0ICR7a2V5fS4gUmVtYWluaW5nIHBhdGg6ICR7cmVzdH1gKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBpdGVtIGF0IGBrZXlgLCBvciBgdW5kZWZpbmVkYCBpZiBub3QgZm91bmQuIEJ5IGRlZmF1bHQgdW53cmFwc1xuICAgICAqIHNjYWxhciB2YWx1ZXMgZnJvbSB0aGVpciBzdXJyb3VuZGluZyBub2RlOyB0byBkaXNhYmxlIHNldCBga2VlcFNjYWxhcmAgdG9cbiAgICAgKiBgdHJ1ZWAgKGNvbGxlY3Rpb25zIGFyZSBhbHdheXMgcmV0dXJuZWQgaW50YWN0KS5cbiAgICAgKi9cbiAgICBnZXRJbihwYXRoLCBrZWVwU2NhbGFyKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuZ2V0KGtleSwgdHJ1ZSk7XG4gICAgICAgIGlmIChyZXN0Lmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIHJldHVybiAha2VlcFNjYWxhciAmJiBpZGVudGl0eS5pc1NjYWxhcihub2RlKSA/IG5vZGUudmFsdWUgOiBub2RlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpID8gbm9kZS5nZXRJbihyZXN0LCBrZWVwU2NhbGFyKSA6IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgaGFzQWxsTnVsbFZhbHVlcyhhbGxvd1NjYWxhcikge1xuICAgICAgICByZXR1cm4gdGhpcy5pdGVtcy5ldmVyeShub2RlID0+IHtcbiAgICAgICAgICAgIGlmICghaWRlbnRpdHkuaXNQYWlyKG5vZGUpKVxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IG4gPSBub2RlLnZhbHVlO1xuICAgICAgICAgICAgcmV0dXJuIChuID09IG51bGwgfHxcbiAgICAgICAgICAgICAgICAoYWxsb3dTY2FsYXIgJiZcbiAgICAgICAgICAgICAgICAgICAgaWRlbnRpdHkuaXNTY2FsYXIobikgJiZcbiAgICAgICAgICAgICAgICAgICAgbi52YWx1ZSA9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgICAgICFuLmNvbW1lbnRCZWZvcmUgJiZcbiAgICAgICAgICAgICAgICAgICAgIW4uY29tbWVudCAmJlxuICAgICAgICAgICAgICAgICAgICAhbi50YWcpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGUgY29sbGVjdGlvbiBpbmNsdWRlcyBhIHZhbHVlIHdpdGggdGhlIGtleSBga2V5YC5cbiAgICAgKi9cbiAgICBoYXNJbihwYXRoKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgaWYgKHJlc3QubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGFzKGtleSk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldChrZXksIHRydWUpO1xuICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpID8gbm9kZS5oYXNJbihyZXN0KSA6IGZhbHNlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBjb2xsZWN0aW9uLiBGb3IgYCEhc2V0YCwgYHZhbHVlYCBuZWVkcyB0byBiZSBhXG4gICAgICogYm9vbGVhbiB0byBhZGQvcmVtb3ZlIHRoZSBpdGVtIGZyb20gdGhlIHNldC5cbiAgICAgKi9cbiAgICBzZXRJbihwYXRoLCB2YWx1ZSkge1xuICAgICAgICBjb25zdCBba2V5LCAuLi5yZXN0XSA9IHBhdGg7XG4gICAgICAgIGlmIChyZXN0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBub2RlID0gdGhpcy5nZXQoa2V5LCB0cnVlKTtcbiAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc0NvbGxlY3Rpb24obm9kZSkpXG4gICAgICAgICAgICAgICAgbm9kZS5zZXRJbihyZXN0LCB2YWx1ZSk7XG4gICAgICAgICAgICBlbHNlIGlmIChub2RlID09PSB1bmRlZmluZWQgJiYgdGhpcy5zY2hlbWEpXG4gICAgICAgICAgICAgICAgdGhpcy5zZXQoa2V5LCBjb2xsZWN0aW9uRnJvbVBhdGgodGhpcy5zY2hlbWEsIHJlc3QsIHZhbHVlKSk7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBZQU1MIGNvbGxlY3Rpb24gYXQgJHtrZXl9LiBSZW1haW5pbmcgcGF0aDogJHtyZXN0fWApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnRzLkNvbGxlY3Rpb24gPSBDb2xsZWN0aW9uO1xuZXhwb3J0cy5jb2xsZWN0aW9uRnJvbVBhdGggPSBjb2xsZWN0aW9uRnJvbVBhdGg7XG5leHBvcnRzLmlzRW1wdHlQYXRoID0gaXNFbXB0eVBhdGg7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG4vKipcbiAqIFN0cmluZ2lmaWVzIGEgY29tbWVudC5cbiAqXG4gKiBFbXB0eSBjb21tZW50IGxpbmVzIGFyZSBsZWZ0IGVtcHR5LFxuICogbGluZXMgY29uc2lzdGluZyBvZiBhIHNpbmdsZSBzcGFjZSBhcmUgcmVwbGFjZWQgYnkgYCNgLFxuICogYW5kIGFsbCBvdGhlciBsaW5lcyBhcmUgcHJlZml4ZWQgd2l0aCBhIGAjYC5cbiAqL1xuY29uc3Qgc3RyaW5naWZ5Q29tbWVudCA9IChzdHIpID0+IHN0ci5yZXBsYWNlKC9eKD8hJCkoPzogJCk/L2dtLCAnIycpO1xuZnVuY3Rpb24gaW5kZW50Q29tbWVudChjb21tZW50LCBpbmRlbnQpIHtcbiAgICBpZiAoL15cXG4rJC8udGVzdChjb21tZW50KSlcbiAgICAgICAgcmV0dXJuIGNvbW1lbnQuc3Vic3RyaW5nKDEpO1xuICAgIHJldHVybiBpbmRlbnQgPyBjb21tZW50LnJlcGxhY2UoL14oPyEgKiQpL2dtLCBpbmRlbnQpIDogY29tbWVudDtcbn1cbmNvbnN0IGxpbmVDb21tZW50ID0gKHN0ciwgaW5kZW50LCBjb21tZW50KSA9PiBzdHIuZW5kc1dpdGgoJ1xcbicpXG4gICAgPyBpbmRlbnRDb21tZW50KGNvbW1lbnQsIGluZGVudClcbiAgICA6IGNvbW1lbnQuaW5jbHVkZXMoJ1xcbicpXG4gICAgICAgID8gJ1xcbicgKyBpbmRlbnRDb21tZW50KGNvbW1lbnQsIGluZGVudClcbiAgICAgICAgOiAoc3RyLmVuZHNXaXRoKCcgJykgPyAnJyA6ICcgJykgKyBjb21tZW50O1xuXG5leHBvcnRzLmluZGVudENvbW1lbnQgPSBpbmRlbnRDb21tZW50O1xuZXhwb3J0cy5saW5lQ29tbWVudCA9IGxpbmVDb21tZW50O1xuZXhwb3J0cy5zdHJpbmdpZnlDb21tZW50ID0gc3RyaW5naWZ5Q29tbWVudDtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IEZPTERfRkxPVyA9ICdmbG93JztcbmNvbnN0IEZPTERfQkxPQ0sgPSAnYmxvY2snO1xuY29uc3QgRk9MRF9RVU9URUQgPSAncXVvdGVkJztcbi8qKlxuICogVHJpZXMgdG8ga2VlcCBpbnB1dCBhdCB1cCB0byBgbGluZVdpZHRoYCBjaGFyYWN0ZXJzLCBzcGxpdHRpbmcgb25seSBvbiBzcGFjZXNcbiAqIG5vdCBmb2xsb3dlZCBieSBuZXdsaW5lcyBvciBzcGFjZXMgdW5sZXNzIGBtb2RlYCBpcyBgJ3F1b3RlZCdgLiBMaW5lcyBhcmVcbiAqIHRlcm1pbmF0ZWQgd2l0aCBgXFxuYCBhbmQgc3RhcnRlZCB3aXRoIGBpbmRlbnRgLlxuICovXG5mdW5jdGlvbiBmb2xkRmxvd0xpbmVzKHRleHQsIGluZGVudCwgbW9kZSA9ICdmbG93JywgeyBpbmRlbnRBdFN0YXJ0LCBsaW5lV2lkdGggPSA4MCwgbWluQ29udGVudFdpZHRoID0gMjAsIG9uRm9sZCwgb25PdmVyZmxvdyB9ID0ge30pIHtcbiAgICBpZiAoIWxpbmVXaWR0aCB8fCBsaW5lV2lkdGggPCAwKVxuICAgICAgICByZXR1cm4gdGV4dDtcbiAgICBpZiAobGluZVdpZHRoIDwgbWluQ29udGVudFdpZHRoKVxuICAgICAgICBtaW5Db250ZW50V2lkdGggPSAwO1xuICAgIGNvbnN0IGVuZFN0ZXAgPSBNYXRoLm1heCgxICsgbWluQ29udGVudFdpZHRoLCAxICsgbGluZVdpZHRoIC0gaW5kZW50Lmxlbmd0aCk7XG4gICAgaWYgKHRleHQubGVuZ3RoIDw9IGVuZFN0ZXApXG4gICAgICAgIHJldHVybiB0ZXh0O1xuICAgIGNvbnN0IGZvbGRzID0gW107XG4gICAgY29uc3QgZXNjYXBlZEZvbGRzID0ge307XG4gICAgbGV0IGVuZCA9IGxpbmVXaWR0aCAtIGluZGVudC5sZW5ndGg7XG4gICAgaWYgKHR5cGVvZiBpbmRlbnRBdFN0YXJ0ID09PSAnbnVtYmVyJykge1xuICAgICAgICBpZiAoaW5kZW50QXRTdGFydCA+IGxpbmVXaWR0aCAtIE1hdGgubWF4KDIsIG1pbkNvbnRlbnRXaWR0aCkpXG4gICAgICAgICAgICBmb2xkcy5wdXNoKDApO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBlbmQgPSBsaW5lV2lkdGggLSBpbmRlbnRBdFN0YXJ0O1xuICAgIH1cbiAgICBsZXQgc3BsaXQgPSB1bmRlZmluZWQ7XG4gICAgbGV0IHByZXYgPSB1bmRlZmluZWQ7XG4gICAgbGV0IG92ZXJmbG93ID0gZmFsc2U7XG4gICAgbGV0IGkgPSAtMTtcbiAgICBsZXQgZXNjU3RhcnQgPSAtMTtcbiAgICBsZXQgZXNjRW5kID0gLTE7XG4gICAgaWYgKG1vZGUgPT09IEZPTERfQkxPQ0spIHtcbiAgICAgICAgaSA9IGNvbnN1bWVNb3JlSW5kZW50ZWRMaW5lcyh0ZXh0LCBpLCBpbmRlbnQubGVuZ3RoKTtcbiAgICAgICAgaWYgKGkgIT09IC0xKVxuICAgICAgICAgICAgZW5kID0gaSArIGVuZFN0ZXA7XG4gICAgfVxuICAgIGZvciAobGV0IGNoOyAoY2ggPSB0ZXh0WyhpICs9IDEpXSk7KSB7XG4gICAgICAgIGlmIChtb2RlID09PSBGT0xEX1FVT1RFRCAmJiBjaCA9PT0gJ1xcXFwnKSB7XG4gICAgICAgICAgICBlc2NTdGFydCA9IGk7XG4gICAgICAgICAgICBzd2l0Y2ggKHRleHRbaSArIDFdKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAneCc6XG4gICAgICAgICAgICAgICAgICAgIGkgKz0gMztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAndSc6XG4gICAgICAgICAgICAgICAgICAgIGkgKz0gNTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnVSc6XG4gICAgICAgICAgICAgICAgICAgIGkgKz0gOTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgaSArPSAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXNjRW5kID0gaTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2ggPT09ICdcXG4nKSB7XG4gICAgICAgICAgICBpZiAobW9kZSA9PT0gRk9MRF9CTE9DSylcbiAgICAgICAgICAgICAgICBpID0gY29uc3VtZU1vcmVJbmRlbnRlZExpbmVzKHRleHQsIGksIGluZGVudC5sZW5ndGgpO1xuICAgICAgICAgICAgZW5kID0gaSArIGluZGVudC5sZW5ndGggKyBlbmRTdGVwO1xuICAgICAgICAgICAgc3BsaXQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoY2ggPT09ICcgJyAmJlxuICAgICAgICAgICAgICAgIHByZXYgJiZcbiAgICAgICAgICAgICAgICBwcmV2ICE9PSAnICcgJiZcbiAgICAgICAgICAgICAgICBwcmV2ICE9PSAnXFxuJyAmJlxuICAgICAgICAgICAgICAgIHByZXYgIT09ICdcXHQnKSB7XG4gICAgICAgICAgICAgICAgLy8gc3BhY2Ugc3Vycm91bmRlZCBieSBub24tc3BhY2UgY2FuIGJlIHJlcGxhY2VkIHdpdGggbmV3bGluZSArIGluZGVudFxuICAgICAgICAgICAgICAgIGNvbnN0IG5leHQgPSB0ZXh0W2kgKyAxXTtcbiAgICAgICAgICAgICAgICBpZiAobmV4dCAmJiBuZXh0ICE9PSAnICcgJiYgbmV4dCAhPT0gJ1xcbicgJiYgbmV4dCAhPT0gJ1xcdCcpXG4gICAgICAgICAgICAgICAgICAgIHNwbGl0ID0gaTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpID49IGVuZCkge1xuICAgICAgICAgICAgICAgIGlmIChzcGxpdCkge1xuICAgICAgICAgICAgICAgICAgICBmb2xkcy5wdXNoKHNwbGl0KTtcbiAgICAgICAgICAgICAgICAgICAgZW5kID0gc3BsaXQgKyBlbmRTdGVwO1xuICAgICAgICAgICAgICAgICAgICBzcGxpdCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAobW9kZSA9PT0gRk9MRF9RVU9URUQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gd2hpdGUtc3BhY2UgY29sbGVjdGVkIGF0IGVuZCBtYXkgc3RyZXRjaCBwYXN0IGxpbmVXaWR0aFxuICAgICAgICAgICAgICAgICAgICB3aGlsZSAocHJldiA9PT0gJyAnIHx8IHByZXYgPT09ICdcXHQnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwcmV2ID0gY2g7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaCA9IHRleHRbKGkgKz0gMSldO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3cgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIEFjY291bnQgZm9yIG5ld2xpbmUgZXNjYXBlLCBidXQgZG9uJ3QgYnJlYWsgcHJlY2VkaW5nIGVzY2FwZVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBqID0gaSA+IGVzY0VuZCArIDEgPyBpIC0gMiA6IGVzY1N0YXJ0IC0gMTtcbiAgICAgICAgICAgICAgICAgICAgLy8gQmFpbCBvdXQgaWYgbGluZVdpZHRoICYgbWluQ29udGVudFdpZHRoIGFyZSBzaG9ydGVyIHRoYW4gYW4gZXNjYXBlIHN0cmluZ1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXNjYXBlZEZvbGRzW2pdKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRleHQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbGRzLnB1c2goaik7XG4gICAgICAgICAgICAgICAgICAgIGVzY2FwZWRGb2xkc1tqXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGVuZCA9IGogKyBlbmRTdGVwO1xuICAgICAgICAgICAgICAgICAgICBzcGxpdCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcHJldiA9IGNoO1xuICAgIH1cbiAgICBpZiAob3ZlcmZsb3cgJiYgb25PdmVyZmxvdylcbiAgICAgICAgb25PdmVyZmxvdygpO1xuICAgIGlmIChmb2xkcy5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiB0ZXh0O1xuICAgIGlmIChvbkZvbGQpXG4gICAgICAgIG9uRm9sZCgpO1xuICAgIGxldCByZXMgPSB0ZXh0LnNsaWNlKDAsIGZvbGRzWzBdKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZvbGRzLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGZvbGQgPSBmb2xkc1tpXTtcbiAgICAgICAgY29uc3QgZW5kID0gZm9sZHNbaSArIDFdIHx8IHRleHQubGVuZ3RoO1xuICAgICAgICBpZiAoZm9sZCA9PT0gMClcbiAgICAgICAgICAgIHJlcyA9IGBcXG4ke2luZGVudH0ke3RleHQuc2xpY2UoMCwgZW5kKX1gO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmIChtb2RlID09PSBGT0xEX1FVT1RFRCAmJiBlc2NhcGVkRm9sZHNbZm9sZF0pXG4gICAgICAgICAgICAgICAgcmVzICs9IGAke3RleHRbZm9sZF19XFxcXGA7XG4gICAgICAgICAgICByZXMgKz0gYFxcbiR7aW5kZW50fSR7dGV4dC5zbGljZShmb2xkICsgMSwgZW5kKX1gO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG4vKipcbiAqIFByZXN1bWVzIGBpICsgMWAgaXMgYXQgdGhlIHN0YXJ0IG9mIGEgbGluZVxuICogQHJldHVybnMgaW5kZXggb2YgbGFzdCBuZXdsaW5lIGluIG1vcmUtaW5kZW50ZWQgYmxvY2tcbiAqL1xuZnVuY3Rpb24gY29uc3VtZU1vcmVJbmRlbnRlZExpbmVzKHRleHQsIGksIGluZGVudCkge1xuICAgIGxldCBlbmQgPSBpO1xuICAgIGxldCBzdGFydCA9IGkgKyAxO1xuICAgIGxldCBjaCA9IHRleHRbc3RhcnRdO1xuICAgIHdoaWxlIChjaCA9PT0gJyAnIHx8IGNoID09PSAnXFx0Jykge1xuICAgICAgICBpZiAoaSA8IHN0YXJ0ICsgaW5kZW50KSB7XG4gICAgICAgICAgICBjaCA9IHRleHRbKytpXTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgICBjaCA9IHRleHRbKytpXTtcbiAgICAgICAgICAgIH0gd2hpbGUgKGNoICYmIGNoICE9PSAnXFxuJyk7XG4gICAgICAgICAgICBlbmQgPSBpO1xuICAgICAgICAgICAgc3RhcnQgPSBpICsgMTtcbiAgICAgICAgICAgIGNoID0gdGV4dFtzdGFydF07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGVuZDtcbn1cblxuZXhwb3J0cy5GT0xEX0JMT0NLID0gRk9MRF9CTE9DSztcbmV4cG9ydHMuRk9MRF9GTE9XID0gRk9MRF9GTE9XO1xuZXhwb3J0cy5GT0xEX1FVT1RFRCA9IEZPTERfUVVPVEVEO1xuZXhwb3J0cy5mb2xkRmxvd0xpbmVzID0gZm9sZEZsb3dMaW5lcztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciBmb2xkRmxvd0xpbmVzID0gcmVxdWlyZSgnLi9mb2xkRmxvd0xpbmVzLmpzJyk7XG5cbmNvbnN0IGdldEZvbGRPcHRpb25zID0gKGN0eCwgaXNCbG9jaykgPT4gKHtcbiAgICBpbmRlbnRBdFN0YXJ0OiBpc0Jsb2NrID8gY3R4LmluZGVudC5sZW5ndGggOiBjdHguaW5kZW50QXRTdGFydCxcbiAgICBsaW5lV2lkdGg6IGN0eC5vcHRpb25zLmxpbmVXaWR0aCxcbiAgICBtaW5Db250ZW50V2lkdGg6IGN0eC5vcHRpb25zLm1pbkNvbnRlbnRXaWR0aFxufSk7XG4vLyBBbHNvIGNoZWNrcyBmb3IgbGluZXMgc3RhcnRpbmcgd2l0aCAlLCBhcyBwYXJzaW5nIHRoZSBvdXRwdXQgYXMgWUFNTCAxLjEgd2lsbFxuLy8gcHJlc3VtZSB0aGF0J3Mgc3RhcnRpbmcgYSBuZXcgZG9jdW1lbnQuXG5jb25zdCBjb250YWluc0RvY3VtZW50TWFya2VyID0gKHN0cikgPT4gL14oJXwtLS18XFwuXFwuXFwuKS9tLnRlc3Qoc3RyKTtcbmZ1bmN0aW9uIGxpbmVMZW5ndGhPdmVyTGltaXQoc3RyLCBsaW5lV2lkdGgsIGluZGVudExlbmd0aCkge1xuICAgIGlmICghbGluZVdpZHRoIHx8IGxpbmVXaWR0aCA8IDApXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBjb25zdCBsaW1pdCA9IGxpbmVXaWR0aCAtIGluZGVudExlbmd0aDtcbiAgICBjb25zdCBzdHJMZW4gPSBzdHIubGVuZ3RoO1xuICAgIGlmIChzdHJMZW4gPD0gbGltaXQpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBmb3IgKGxldCBpID0gMCwgc3RhcnQgPSAwOyBpIDwgc3RyTGVuOyArK2kpIHtcbiAgICAgICAgaWYgKHN0cltpXSA9PT0gJ1xcbicpIHtcbiAgICAgICAgICAgIGlmIChpIC0gc3RhcnQgPiBsaW1pdClcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIHN0YXJ0ID0gaSArIDE7XG4gICAgICAgICAgICBpZiAoc3RyTGVuIC0gc3RhcnQgPD0gbGltaXQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xufVxuZnVuY3Rpb24gZG91YmxlUXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpIHtcbiAgICBjb25zdCBqc29uID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgIGlmIChjdHgub3B0aW9ucy5kb3VibGVRdW90ZWRBc0pTT04pXG4gICAgICAgIHJldHVybiBqc29uO1xuICAgIGNvbnN0IHsgaW1wbGljaXRLZXkgfSA9IGN0eDtcbiAgICBjb25zdCBtaW5NdWx0aUxpbmVMZW5ndGggPSBjdHgub3B0aW9ucy5kb3VibGVRdW90ZWRNaW5NdWx0aUxpbmVMZW5ndGg7XG4gICAgY29uc3QgaW5kZW50ID0gY3R4LmluZGVudCB8fCAoY29udGFpbnNEb2N1bWVudE1hcmtlcih2YWx1ZSkgPyAnICAnIDogJycpO1xuICAgIGxldCBzdHIgPSAnJztcbiAgICBsZXQgc3RhcnQgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwLCBjaCA9IGpzb25baV07IGNoOyBjaCA9IGpzb25bKytpXSkge1xuICAgICAgICBpZiAoY2ggPT09ICcgJyAmJiBqc29uW2kgKyAxXSA9PT0gJ1xcXFwnICYmIGpzb25baSArIDJdID09PSAnbicpIHtcbiAgICAgICAgICAgIC8vIHNwYWNlIGJlZm9yZSBuZXdsaW5lIG5lZWRzIHRvIGJlIGVzY2FwZWQgdG8gbm90IGJlIGZvbGRlZFxuICAgICAgICAgICAgc3RyICs9IGpzb24uc2xpY2Uoc3RhcnQsIGkpICsgJ1xcXFwgJztcbiAgICAgICAgICAgIGkgKz0gMTtcbiAgICAgICAgICAgIHN0YXJ0ID0gaTtcbiAgICAgICAgICAgIGNoID0gJ1xcXFwnO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaCA9PT0gJ1xcXFwnKVxuICAgICAgICAgICAgc3dpdGNoIChqc29uW2kgKyAxXSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ3UnOlxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0ganNvbi5zbGljZShzdGFydCwgaSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb2RlID0ganNvbi5zdWJzdHIoaSArIDIsIDQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChjb2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnMDAwMCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXDAnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICcwMDA3JzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9ICdcXFxcYSc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAwMGInOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcXFx2JztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnMDAxYic6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXGUnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICcwMDg1JzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9ICdcXFxcTic7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAwYTAnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcXFxfJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnMjAyOCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXEwnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICcyMDI5JzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9ICdcXFxcUCc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb2RlLnN1YnN0cigwLCAyKSA9PT0gJzAwJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXHgnICsgY29kZS5zdWJzdHIoMik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSBqc29uLnN1YnN0cihpLCA2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGkgKz0gNTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0ID0gaSArIDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnbic6XG4gICAgICAgICAgICAgICAgICAgIGlmIChpbXBsaWNpdEtleSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAganNvbltpICsgMl0gPT09ICdcIicgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGpzb24ubGVuZ3RoIDwgbWluTXVsdGlMaW5lTGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpICs9IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBmb2xkaW5nIHdpbGwgZWF0IGZpcnN0IG5ld2xpbmVcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSBqc29uLnNsaWNlKHN0YXJ0LCBpKSArICdcXG5cXG4nO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGpzb25baSArIDJdID09PSAnXFxcXCcgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqc29uW2kgKyAzXSA9PT0gJ24nICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganNvbltpICsgNF0gIT09ICdcIicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcbic7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9IGluZGVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNwYWNlIGFmdGVyIG5ld2xpbmUgbmVlZHMgdG8gYmUgZXNjYXBlZCB0byBub3QgYmUgZm9sZGVkXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoanNvbltpICsgMl0gPT09ICcgJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcXFwnO1xuICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQgPSBpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBpICs9IDE7XG4gICAgICAgICAgICB9XG4gICAgfVxuICAgIHN0ciA9IHN0YXJ0ID8gc3RyICsganNvbi5zbGljZShzdGFydCkgOiBqc29uO1xuICAgIHJldHVybiBpbXBsaWNpdEtleVxuICAgICAgICA/IHN0clxuICAgICAgICA6IGZvbGRGbG93TGluZXMuZm9sZEZsb3dMaW5lcyhzdHIsIGluZGVudCwgZm9sZEZsb3dMaW5lcy5GT0xEX1FVT1RFRCwgZ2V0Rm9sZE9wdGlvbnMoY3R4LCBmYWxzZSkpO1xufVxuZnVuY3Rpb24gc2luZ2xlUXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpIHtcbiAgICBpZiAoY3R4Lm9wdGlvbnMuc2luZ2xlUXVvdGUgPT09IGZhbHNlIHx8XG4gICAgICAgIChjdHguaW1wbGljaXRLZXkgJiYgdmFsdWUuaW5jbHVkZXMoJ1xcbicpKSB8fFxuICAgICAgICAvWyBcXHRdXFxufFxcblsgXFx0XS8udGVzdCh2YWx1ZSkgLy8gc2luZ2xlIHF1b3RlZCBzdHJpbmcgY2FuJ3QgaGF2ZSBsZWFkaW5nIG9yIHRyYWlsaW5nIHdoaXRlc3BhY2UgYXJvdW5kIG5ld2xpbmVcbiAgICApXG4gICAgICAgIHJldHVybiBkb3VibGVRdW90ZWRTdHJpbmcodmFsdWUsIGN0eCk7XG4gICAgY29uc3QgaW5kZW50ID0gY3R4LmluZGVudCB8fCAoY29udGFpbnNEb2N1bWVudE1hcmtlcih2YWx1ZSkgPyAnICAnIDogJycpO1xuICAgIGNvbnN0IHJlcyA9IFwiJ1wiICsgdmFsdWUucmVwbGFjZSgvJy9nLCBcIicnXCIpLnJlcGxhY2UoL1xcbisvZywgYCQmXFxuJHtpbmRlbnR9YCkgKyBcIidcIjtcbiAgICByZXR1cm4gY3R4LmltcGxpY2l0S2V5XG4gICAgICAgID8gcmVzXG4gICAgICAgIDogZm9sZEZsb3dMaW5lcy5mb2xkRmxvd0xpbmVzKHJlcywgaW5kZW50LCBmb2xkRmxvd0xpbmVzLkZPTERfRkxPVywgZ2V0Rm9sZE9wdGlvbnMoY3R4LCBmYWxzZSkpO1xufVxuZnVuY3Rpb24gcXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpIHtcbiAgICBjb25zdCB7IHNpbmdsZVF1b3RlIH0gPSBjdHgub3B0aW9ucztcbiAgICBsZXQgcXM7XG4gICAgaWYgKHNpbmdsZVF1b3RlID09PSBmYWxzZSlcbiAgICAgICAgcXMgPSBkb3VibGVRdW90ZWRTdHJpbmc7XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IGhhc0RvdWJsZSA9IHZhbHVlLmluY2x1ZGVzKCdcIicpO1xuICAgICAgICBjb25zdCBoYXNTaW5nbGUgPSB2YWx1ZS5pbmNsdWRlcyhcIidcIik7XG4gICAgICAgIGlmIChoYXNEb3VibGUgJiYgIWhhc1NpbmdsZSlcbiAgICAgICAgICAgIHFzID0gc2luZ2xlUXVvdGVkU3RyaW5nO1xuICAgICAgICBlbHNlIGlmIChoYXNTaW5nbGUgJiYgIWhhc0RvdWJsZSlcbiAgICAgICAgICAgIHFzID0gZG91YmxlUXVvdGVkU3RyaW5nO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBxcyA9IHNpbmdsZVF1b3RlID8gc2luZ2xlUXVvdGVkU3RyaW5nIDogZG91YmxlUXVvdGVkU3RyaW5nO1xuICAgIH1cbiAgICByZXR1cm4gcXModmFsdWUsIGN0eCk7XG59XG4vLyBUaGUgbmVnYXRpdmUgbG9va2JlaGluZCBhdm9pZHMgYSBwb2x5bm9taWFsIHNlYXJjaCxcbi8vIGJ1dCBpc24ndCBzdXBwb3J0ZWQgeWV0IG9uIFNhZmFyaTogaHR0cHM6Ly9jYW5pdXNlLmNvbS9qcy1yZWdleHAtbG9va2JlaGluZFxubGV0IGJsb2NrRW5kTmV3bGluZXM7XG50cnkge1xuICAgIGJsb2NrRW5kTmV3bGluZXMgPSBuZXcgUmVnRXhwKCcoXnwoPzwhXFxuKSlcXG4rKD8hXFxufCQpJywgJ2cnKTtcbn1cbmNhdGNoIHtcbiAgICBibG9ja0VuZE5ld2xpbmVzID0gL1xcbisoPyFcXG58JCkvZztcbn1cbmZ1bmN0aW9uIGJsb2NrU3RyaW5nKHsgY29tbWVudCwgdHlwZSwgdmFsdWUgfSwgY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKSB7XG4gICAgY29uc3QgeyBibG9ja1F1b3RlLCBjb21tZW50U3RyaW5nLCBsaW5lV2lkdGggfSA9IGN0eC5vcHRpb25zO1xuICAgIC8vIDEuIEJsb2NrIGNhbid0IGVuZCBpbiB3aGl0ZXNwYWNlIHVubGVzcyB0aGUgbGFzdCBsaW5lIGlzIG5vbi1lbXB0eS5cbiAgICAvLyAyLiBTdHJpbmdzIGNvbnNpc3Rpbmcgb2Ygb25seSB3aGl0ZXNwYWNlIGFyZSBiZXN0IHJlbmRlcmVkIGV4cGxpY2l0bHkuXG4gICAgaWYgKCFibG9ja1F1b3RlIHx8IC9cXG5bXFx0IF0rJC8udGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIHF1b3RlZFN0cmluZyh2YWx1ZSwgY3R4KTtcbiAgICB9XG4gICAgY29uc3QgaW5kZW50ID0gY3R4LmluZGVudCB8fFxuICAgICAgICAoY3R4LmZvcmNlQmxvY2tJbmRlbnQgfHwgY29udGFpbnNEb2N1bWVudE1hcmtlcih2YWx1ZSkgPyAnICAnIDogJycpO1xuICAgIGNvbnN0IGxpdGVyYWwgPSBibG9ja1F1b3RlID09PSAnbGl0ZXJhbCdcbiAgICAgICAgPyB0cnVlXG4gICAgICAgIDogYmxvY2tRdW90ZSA9PT0gJ2ZvbGRlZCcgfHwgdHlwZSA9PT0gU2NhbGFyLlNjYWxhci5CTE9DS19GT0xERURcbiAgICAgICAgICAgID8gZmFsc2VcbiAgICAgICAgICAgIDogdHlwZSA9PT0gU2NhbGFyLlNjYWxhci5CTE9DS19MSVRFUkFMXG4gICAgICAgICAgICAgICAgPyB0cnVlXG4gICAgICAgICAgICAgICAgOiAhbGluZUxlbmd0aE92ZXJMaW1pdCh2YWx1ZSwgbGluZVdpZHRoLCBpbmRlbnQubGVuZ3RoKTtcbiAgICBpZiAoIXZhbHVlKVxuICAgICAgICByZXR1cm4gbGl0ZXJhbCA/ICd8XFxuJyA6ICc+XFxuJztcbiAgICAvLyBkZXRlcm1pbmUgY2hvbXBpbmcgZnJvbSB3aGl0ZXNwYWNlIGF0IHZhbHVlIGVuZFxuICAgIGxldCBjaG9tcDtcbiAgICBsZXQgZW5kU3RhcnQ7XG4gICAgZm9yIChlbmRTdGFydCA9IHZhbHVlLmxlbmd0aDsgZW5kU3RhcnQgPiAwOyAtLWVuZFN0YXJ0KSB7XG4gICAgICAgIGNvbnN0IGNoID0gdmFsdWVbZW5kU3RhcnQgLSAxXTtcbiAgICAgICAgaWYgKGNoICE9PSAnXFxuJyAmJiBjaCAhPT0gJ1xcdCcgJiYgY2ggIT09ICcgJylcbiAgICAgICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBsZXQgZW5kID0gdmFsdWUuc3Vic3RyaW5nKGVuZFN0YXJ0KTtcbiAgICBjb25zdCBlbmRObFBvcyA9IGVuZC5pbmRleE9mKCdcXG4nKTtcbiAgICBpZiAoZW5kTmxQb3MgPT09IC0xKSB7XG4gICAgICAgIGNob21wID0gJy0nOyAvLyBzdHJpcFxuICAgIH1cbiAgICBlbHNlIGlmICh2YWx1ZSA9PT0gZW5kIHx8IGVuZE5sUG9zICE9PSBlbmQubGVuZ3RoIC0gMSkge1xuICAgICAgICBjaG9tcCA9ICcrJzsgLy8ga2VlcFxuICAgICAgICBpZiAob25DaG9tcEtlZXApXG4gICAgICAgICAgICBvbkNob21wS2VlcCgpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY2hvbXAgPSAnJzsgLy8gY2xpcFxuICAgIH1cbiAgICBpZiAoZW5kKSB7XG4gICAgICAgIHZhbHVlID0gdmFsdWUuc2xpY2UoMCwgLWVuZC5sZW5ndGgpO1xuICAgICAgICBpZiAoZW5kW2VuZC5sZW5ndGggLSAxXSA9PT0gJ1xcbicpXG4gICAgICAgICAgICBlbmQgPSBlbmQuc2xpY2UoMCwgLTEpO1xuICAgICAgICBlbmQgPSBlbmQucmVwbGFjZShibG9ja0VuZE5ld2xpbmVzLCBgJCYke2luZGVudH1gKTtcbiAgICB9XG4gICAgLy8gZGV0ZXJtaW5lIGluZGVudCBpbmRpY2F0b3IgZnJvbSB3aGl0ZXNwYWNlIGF0IHZhbHVlIHN0YXJ0XG4gICAgbGV0IHN0YXJ0V2l0aFNwYWNlID0gZmFsc2U7XG4gICAgbGV0IHN0YXJ0RW5kO1xuICAgIGxldCBzdGFydE5sUG9zID0gLTE7XG4gICAgZm9yIChzdGFydEVuZCA9IDA7IHN0YXJ0RW5kIDwgdmFsdWUubGVuZ3RoOyArK3N0YXJ0RW5kKSB7XG4gICAgICAgIGNvbnN0IGNoID0gdmFsdWVbc3RhcnRFbmRdO1xuICAgICAgICBpZiAoY2ggPT09ICcgJylcbiAgICAgICAgICAgIHN0YXJ0V2l0aFNwYWNlID0gdHJ1ZTtcbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICdcXG4nKVxuICAgICAgICAgICAgc3RhcnRObFBvcyA9IHN0YXJ0RW5kO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG4gICAgbGV0IHN0YXJ0ID0gdmFsdWUuc3Vic3RyaW5nKDAsIHN0YXJ0TmxQb3MgPCBzdGFydEVuZCA/IHN0YXJ0TmxQb3MgKyAxIDogc3RhcnRFbmQpO1xuICAgIGlmIChzdGFydCkge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlLnN1YnN0cmluZyhzdGFydC5sZW5ndGgpO1xuICAgICAgICBzdGFydCA9IHN0YXJ0LnJlcGxhY2UoL1xcbisvZywgYCQmJHtpbmRlbnR9YCk7XG4gICAgfVxuICAgIGNvbnN0IGluZGVudFNpemUgPSBpbmRlbnQgPyAnMicgOiAnMSc7IC8vIHJvb3QgaXMgYXQgLTFcbiAgICAvLyBMZWFkaW5nIHwgb3IgPiBpcyBhZGRlZCBsYXRlclxuICAgIGxldCBoZWFkZXIgPSAoc3RhcnRXaXRoU3BhY2UgPyBpbmRlbnRTaXplIDogJycpICsgY2hvbXA7XG4gICAgaWYgKGNvbW1lbnQpIHtcbiAgICAgICAgaGVhZGVyICs9ICcgJyArIGNvbW1lbnRTdHJpbmcoY29tbWVudC5yZXBsYWNlKC8gP1tcXHJcXG5dKy9nLCAnICcpKTtcbiAgICAgICAgaWYgKG9uQ29tbWVudClcbiAgICAgICAgICAgIG9uQ29tbWVudCgpO1xuICAgIH1cbiAgICBpZiAoIWxpdGVyYWwpIHtcbiAgICAgICAgY29uc3QgZm9sZGVkVmFsdWUgPSB2YWx1ZVxuICAgICAgICAgICAgLnJlcGxhY2UoL1xcbisvZywgJ1xcbiQmJylcbiAgICAgICAgICAgIC5yZXBsYWNlKC8oPzpefFxcbikoW1xcdCBdLiopKD86KFtcXG5cXHQgXSopXFxuKD8hW1xcblxcdCBdKSk/L2csICckMSQyJykgLy8gbW9yZS1pbmRlbnRlZCBsaW5lcyBhcmVuJ3QgZm9sZGVkXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICBeIG1vcmUtaW5kLiBeIGVtcHR5ICAgICBeIGNhcHR1cmUgbmV4dCBlbXB0eSBsaW5lcyBvbmx5IGF0IGVuZCBvZiBpbmRlbnRcbiAgICAgICAgICAgIC5yZXBsYWNlKC9cXG4rL2csIGAkJiR7aW5kZW50fWApO1xuICAgICAgICBsZXQgbGl0ZXJhbEZhbGxiYWNrID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IGZvbGRPcHRpb25zID0gZ2V0Rm9sZE9wdGlvbnMoY3R4LCB0cnVlKTtcbiAgICAgICAgaWYgKGJsb2NrUXVvdGUgIT09ICdmb2xkZWQnICYmIHR5cGUgIT09IFNjYWxhci5TY2FsYXIuQkxPQ0tfRk9MREVEKSB7XG4gICAgICAgICAgICBmb2xkT3B0aW9ucy5vbk92ZXJmbG93ID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGxpdGVyYWxGYWxsYmFjayA9IHRydWU7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJvZHkgPSBmb2xkRmxvd0xpbmVzLmZvbGRGbG93TGluZXMoYCR7c3RhcnR9JHtmb2xkZWRWYWx1ZX0ke2VuZH1gLCBpbmRlbnQsIGZvbGRGbG93TGluZXMuRk9MRF9CTE9DSywgZm9sZE9wdGlvbnMpO1xuICAgICAgICBpZiAoIWxpdGVyYWxGYWxsYmFjaylcbiAgICAgICAgICAgIHJldHVybiBgPiR7aGVhZGVyfVxcbiR7aW5kZW50fSR7Ym9keX1gO1xuICAgIH1cbiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1xcbisvZywgYCQmJHtpbmRlbnR9YCk7XG4gICAgcmV0dXJuIGB8JHtoZWFkZXJ9XFxuJHtpbmRlbnR9JHtzdGFydH0ke3ZhbHVlfSR7ZW5kfWA7XG59XG5mdW5jdGlvbiBwbGFpblN0cmluZyhpdGVtLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApIHtcbiAgICBjb25zdCB7IHR5cGUsIHZhbHVlIH0gPSBpdGVtO1xuICAgIGNvbnN0IHsgYWN0dWFsU3RyaW5nLCBpbXBsaWNpdEtleSwgaW5kZW50LCBpbmRlbnRTdGVwLCBpbkZsb3cgfSA9IGN0eDtcbiAgICBpZiAoKGltcGxpY2l0S2V5ICYmIHZhbHVlLmluY2x1ZGVzKCdcXG4nKSkgfHxcbiAgICAgICAgKGluRmxvdyAmJiAvW1tcXF17fSxdLy50ZXN0KHZhbHVlKSkpIHtcbiAgICAgICAgcmV0dXJuIHF1b3RlZFN0cmluZyh2YWx1ZSwgY3R4KTtcbiAgICB9XG4gICAgaWYgKC9eW1xcblxcdCAsW1xcXXt9IyYqIXw+J1wiJUBgXXxeWz8tXSR8Xls/LV1bIFxcdF18W1xcbjpdWyBcXHRdfFsgXFx0XVxcbnxbXFxuXFx0IF0jfFtcXG5cXHQgOl0kLy50ZXN0KHZhbHVlKSkge1xuICAgICAgICAvLyBub3QgYWxsb3dlZDpcbiAgICAgICAgLy8gLSAnLScgb3IgJz8nXG4gICAgICAgIC8vIC0gc3RhcnQgd2l0aCBhbiBpbmRpY2F0b3IgY2hhcmFjdGVyIChleGNlcHQgWz86LV0pIG9yIC9bPy1dIC9cbiAgICAgICAgLy8gLSAnXFxuICcsICc6ICcgb3IgJyBcXG4nIGFueXdoZXJlXG4gICAgICAgIC8vIC0gJyMnIG5vdCBwcmVjZWRlZCBieSBhIG5vbi1zcGFjZSBjaGFyXG4gICAgICAgIC8vIC0gZW5kIHdpdGggJyAnIG9yICc6J1xuICAgICAgICByZXR1cm4gaW1wbGljaXRLZXkgfHwgaW5GbG93IHx8ICF2YWx1ZS5pbmNsdWRlcygnXFxuJylcbiAgICAgICAgICAgID8gcXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpXG4gICAgICAgICAgICA6IGJsb2NrU3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxuICAgIGlmICghaW1wbGljaXRLZXkgJiZcbiAgICAgICAgIWluRmxvdyAmJlxuICAgICAgICB0eXBlICE9PSBTY2FsYXIuU2NhbGFyLlBMQUlOICYmXG4gICAgICAgIHZhbHVlLmluY2x1ZGVzKCdcXG4nKSkge1xuICAgICAgICAvLyBXaGVyZSBhbGxvd2VkICYgdHlwZSBub3Qgc2V0IGV4cGxpY2l0bHksIHByZWZlciBibG9jayBzdHlsZSBmb3IgbXVsdGlsaW5lIHN0cmluZ3NcbiAgICAgICAgcmV0dXJuIGJsb2NrU3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxuICAgIGlmIChjb250YWluc0RvY3VtZW50TWFya2VyKHZhbHVlKSkge1xuICAgICAgICBpZiAoaW5kZW50ID09PSAnJykge1xuICAgICAgICAgICAgY3R4LmZvcmNlQmxvY2tJbmRlbnQgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIGJsb2NrU3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaW1wbGljaXRLZXkgJiYgaW5kZW50ID09PSBpbmRlbnRTdGVwKSB7XG4gICAgICAgICAgICByZXR1cm4gcXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IHN0ciA9IHZhbHVlLnJlcGxhY2UoL1xcbisvZywgYCQmXFxuJHtpbmRlbnR9YCk7XG4gICAgLy8gVmVyaWZ5IHRoYXQgb3V0cHV0IHdpbGwgYmUgcGFyc2VkIGFzIGEgc3RyaW5nLCBhcyBlLmcuIHBsYWluIG51bWJlcnMgYW5kXG4gICAgLy8gYm9vbGVhbnMgZ2V0IHBhcnNlZCB3aXRoIHRob3NlIHR5cGVzIGluIHYxLjIgKGUuZy4gJzQyJywgJ3RydWUnICYgJzAuOWUtMycpLFxuICAgIC8vIGFuZCBvdGhlcnMgaW4gdjEuMS5cbiAgICBpZiAoYWN0dWFsU3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHRlc3QgPSAodGFnKSA9PiB0YWcuZGVmYXVsdCAmJiB0YWcudGFnICE9PSAndGFnOnlhbWwub3JnLDIwMDI6c3RyJyAmJiB0YWcudGVzdD8udGVzdChzdHIpO1xuICAgICAgICBjb25zdCB7IGNvbXBhdCwgdGFncyB9ID0gY3R4LmRvYy5zY2hlbWE7XG4gICAgICAgIGlmICh0YWdzLnNvbWUodGVzdCkgfHwgY29tcGF0Py5zb21lKHRlc3QpKVxuICAgICAgICAgICAgcmV0dXJuIHF1b3RlZFN0cmluZyh2YWx1ZSwgY3R4KTtcbiAgICB9XG4gICAgcmV0dXJuIGltcGxpY2l0S2V5XG4gICAgICAgID8gc3RyXG4gICAgICAgIDogZm9sZEZsb3dMaW5lcy5mb2xkRmxvd0xpbmVzKHN0ciwgaW5kZW50LCBmb2xkRmxvd0xpbmVzLkZPTERfRkxPVywgZ2V0Rm9sZE9wdGlvbnMoY3R4LCBmYWxzZSkpO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5U3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgIGNvbnN0IHsgaW1wbGljaXRLZXksIGluRmxvdyB9ID0gY3R4O1xuICAgIGNvbnN0IHNzID0gdHlwZW9mIGl0ZW0udmFsdWUgPT09ICdzdHJpbmcnXG4gICAgICAgID8gaXRlbVxuICAgICAgICA6IE9iamVjdC5hc3NpZ24oe30sIGl0ZW0sIHsgdmFsdWU6IFN0cmluZyhpdGVtLnZhbHVlKSB9KTtcbiAgICBsZXQgeyB0eXBlIH0gPSBpdGVtO1xuICAgIGlmICh0eXBlICE9PSBTY2FsYXIuU2NhbGFyLlFVT1RFX0RPVUJMRSkge1xuICAgICAgICAvLyBmb3JjZSBkb3VibGUgcXVvdGVzIG9uIGNvbnRyb2wgY2hhcmFjdGVycyAmIHVucGFpcmVkIHN1cnJvZ2F0ZXNcbiAgICAgICAgaWYgKC9bXFx4MDAtXFx4MDhcXHgwYi1cXHgxZlxceDdmLVxceDlmXFx1e0Q4MDB9LVxcdXtERkZGfV0vdS50ZXN0KHNzLnZhbHVlKSlcbiAgICAgICAgICAgIHR5cGUgPSBTY2FsYXIuU2NhbGFyLlFVT1RFX0RPVUJMRTtcbiAgICB9XG4gICAgY29uc3QgX3N0cmluZ2lmeSA9IChfdHlwZSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKF90eXBlKSB7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuQkxPQ0tfRk9MREVEOlxuICAgICAgICAgICAgY2FzZSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUw6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGltcGxpY2l0S2V5IHx8IGluRmxvd1xuICAgICAgICAgICAgICAgICAgICA/IHF1b3RlZFN0cmluZyhzcy52YWx1ZSwgY3R4KSAvLyBibG9ja3MgYXJlIG5vdCB2YWxpZCBpbnNpZGUgZmxvdyBjb250YWluZXJzXG4gICAgICAgICAgICAgICAgICAgIDogYmxvY2tTdHJpbmcoc3MsIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuUVVPVEVfRE9VQkxFOlxuICAgICAgICAgICAgICAgIHJldHVybiBkb3VibGVRdW90ZWRTdHJpbmcoc3MudmFsdWUsIGN0eCk7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuUVVPVEVfU0lOR0xFOlxuICAgICAgICAgICAgICAgIHJldHVybiBzaW5nbGVRdW90ZWRTdHJpbmcoc3MudmFsdWUsIGN0eCk7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuUExBSU46XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYWluU3RyaW5nKHNzLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgbGV0IHJlcyA9IF9zdHJpbmdpZnkodHlwZSk7XG4gICAgaWYgKHJlcyA9PT0gbnVsbCkge1xuICAgICAgICBjb25zdCB7IGRlZmF1bHRLZXlUeXBlLCBkZWZhdWx0U3RyaW5nVHlwZSB9ID0gY3R4Lm9wdGlvbnM7XG4gICAgICAgIGNvbnN0IHQgPSAoaW1wbGljaXRLZXkgJiYgZGVmYXVsdEtleVR5cGUpIHx8IGRlZmF1bHRTdHJpbmdUeXBlO1xuICAgICAgICByZXMgPSBfc3RyaW5naWZ5KHQpO1xuICAgICAgICBpZiAocmVzID09PSBudWxsKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBkZWZhdWx0IHN0cmluZyB0eXBlICR7dH1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cblxuZXhwb3J0cy5zdHJpbmdpZnlTdHJpbmcgPSBzdHJpbmdpZnlTdHJpbmc7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgYW5jaG9ycyA9IHJlcXVpcmUoJy4uL2RvYy9hbmNob3JzLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIHN0cmluZ2lmeUNvbW1lbnQgPSByZXF1aXJlKCcuL3N0cmluZ2lmeUNvbW1lbnQuanMnKTtcbnZhciBzdHJpbmdpZnlTdHJpbmcgPSByZXF1aXJlKCcuL3N0cmluZ2lmeVN0cmluZy5qcycpO1xuXG5mdW5jdGlvbiBjcmVhdGVTdHJpbmdpZnlDb250ZXh0KGRvYywgb3B0aW9ucykge1xuICAgIGNvbnN0IG9wdCA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICBibG9ja1F1b3RlOiB0cnVlLFxuICAgICAgICBjb21tZW50U3RyaW5nOiBzdHJpbmdpZnlDb21tZW50LnN0cmluZ2lmeUNvbW1lbnQsXG4gICAgICAgIGRlZmF1bHRLZXlUeXBlOiBudWxsLFxuICAgICAgICBkZWZhdWx0U3RyaW5nVHlwZTogJ1BMQUlOJyxcbiAgICAgICAgZGlyZWN0aXZlczogbnVsbCxcbiAgICAgICAgZG91YmxlUXVvdGVkQXNKU09OOiBmYWxzZSxcbiAgICAgICAgZG91YmxlUXVvdGVkTWluTXVsdGlMaW5lTGVuZ3RoOiA0MCxcbiAgICAgICAgZmFsc2VTdHI6ICdmYWxzZScsXG4gICAgICAgIGZsb3dDb2xsZWN0aW9uUGFkZGluZzogdHJ1ZSxcbiAgICAgICAgaW5kZW50U2VxOiB0cnVlLFxuICAgICAgICBsaW5lV2lkdGg6IDgwLFxuICAgICAgICBtaW5Db250ZW50V2lkdGg6IDIwLFxuICAgICAgICBudWxsU3RyOiAnbnVsbCcsXG4gICAgICAgIHNpbXBsZUtleXM6IGZhbHNlLFxuICAgICAgICBzaW5nbGVRdW90ZTogbnVsbCxcbiAgICAgICAgdHJ1ZVN0cjogJ3RydWUnLFxuICAgICAgICB2ZXJpZnlBbGlhc09yZGVyOiB0cnVlXG4gICAgfSwgZG9jLnNjaGVtYS50b1N0cmluZ09wdGlvbnMsIG9wdGlvbnMpO1xuICAgIGxldCBpbkZsb3c7XG4gICAgc3dpdGNoIChvcHQuY29sbGVjdGlvblN0eWxlKSB7XG4gICAgICAgIGNhc2UgJ2Jsb2NrJzpcbiAgICAgICAgICAgIGluRmxvdyA9IGZhbHNlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2Zsb3cnOlxuICAgICAgICAgICAgaW5GbG93ID0gdHJ1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgaW5GbG93ID0gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYW5jaG9yczogbmV3IFNldCgpLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZsb3dDb2xsZWN0aW9uUGFkZGluZzogb3B0LmZsb3dDb2xsZWN0aW9uUGFkZGluZyA/ICcgJyA6ICcnLFxuICAgICAgICBpbmRlbnQ6ICcnLFxuICAgICAgICBpbmRlbnRTdGVwOiB0eXBlb2Ygb3B0LmluZGVudCA9PT0gJ251bWJlcicgPyAnICcucmVwZWF0KG9wdC5pbmRlbnQpIDogJyAgJyxcbiAgICAgICAgaW5GbG93LFxuICAgICAgICBvcHRpb25zOiBvcHRcbiAgICB9O1xufVxuZnVuY3Rpb24gZ2V0VGFnT2JqZWN0KHRhZ3MsIGl0ZW0pIHtcbiAgICBpZiAoaXRlbS50YWcpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSB0YWdzLmZpbHRlcih0ID0+IHQudGFnID09PSBpdGVtLnRhZyk7XG4gICAgICAgIGlmIChtYXRjaC5sZW5ndGggPiAwKVxuICAgICAgICAgICAgcmV0dXJuIG1hdGNoLmZpbmQodCA9PiB0LmZvcm1hdCA9PT0gaXRlbS5mb3JtYXQpID8/IG1hdGNoWzBdO1xuICAgIH1cbiAgICBsZXQgdGFnT2JqID0gdW5kZWZpbmVkO1xuICAgIGxldCBvYmo7XG4gICAgaWYgKGlkZW50aXR5LmlzU2NhbGFyKGl0ZW0pKSB7XG4gICAgICAgIG9iaiA9IGl0ZW0udmFsdWU7XG4gICAgICAgIGxldCBtYXRjaCA9IHRhZ3MuZmlsdGVyKHQgPT4gdC5pZGVudGlmeT8uKG9iaikpO1xuICAgICAgICBpZiAobWF0Y2gubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgY29uc3QgdGVzdE1hdGNoID0gbWF0Y2guZmlsdGVyKHQgPT4gdC50ZXN0KTtcbiAgICAgICAgICAgIGlmICh0ZXN0TWF0Y2gubGVuZ3RoID4gMClcbiAgICAgICAgICAgICAgICBtYXRjaCA9IHRlc3RNYXRjaDtcbiAgICAgICAgfVxuICAgICAgICB0YWdPYmogPVxuICAgICAgICAgICAgbWF0Y2guZmluZCh0ID0+IHQuZm9ybWF0ID09PSBpdGVtLmZvcm1hdCkgPz8gbWF0Y2guZmluZCh0ID0+ICF0LmZvcm1hdCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBvYmogPSBpdGVtO1xuICAgICAgICB0YWdPYmogPSB0YWdzLmZpbmQodCA9PiB0Lm5vZGVDbGFzcyAmJiBvYmogaW5zdGFuY2VvZiB0Lm5vZGVDbGFzcyk7XG4gICAgfVxuICAgIGlmICghdGFnT2JqKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBvYmo/LmNvbnN0cnVjdG9yPy5uYW1lID8/IChvYmogPT09IG51bGwgPyAnbnVsbCcgOiB0eXBlb2Ygb2JqKTtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUYWcgbm90IHJlc29sdmVkIGZvciAke25hbWV9IHZhbHVlYCk7XG4gICAgfVxuICAgIHJldHVybiB0YWdPYmo7XG59XG4vLyBuZWVkcyB0byBiZSBjYWxsZWQgYmVmb3JlIHZhbHVlIHN0cmluZ2lmaWVyIHRvIGFsbG93IGZvciBjaXJjdWxhciBhbmNob3IgcmVmc1xuZnVuY3Rpb24gc3RyaW5naWZ5UHJvcHMobm9kZSwgdGFnT2JqLCB7IGFuY2hvcnM6IGFuY2hvcnMkMSwgZG9jIH0pIHtcbiAgICBpZiAoIWRvYy5kaXJlY3RpdmVzKVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgY29uc3QgcHJvcHMgPSBbXTtcbiAgICBjb25zdCBhbmNob3IgPSAoaWRlbnRpdHkuaXNTY2FsYXIobm9kZSkgfHwgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKSAmJiBub2RlLmFuY2hvcjtcbiAgICBpZiAoYW5jaG9yICYmIGFuY2hvcnMuYW5jaG9ySXNWYWxpZChhbmNob3IpKSB7XG4gICAgICAgIGFuY2hvcnMkMS5hZGQoYW5jaG9yKTtcbiAgICAgICAgcHJvcHMucHVzaChgJiR7YW5jaG9yfWApO1xuICAgIH1cbiAgICBjb25zdCB0YWcgPSBub2RlLnRhZyA/PyAodGFnT2JqLmRlZmF1bHQgPyBudWxsIDogdGFnT2JqLnRhZyk7XG4gICAgaWYgKHRhZylcbiAgICAgICAgcHJvcHMucHVzaChkb2MuZGlyZWN0aXZlcy50YWdTdHJpbmcodGFnKSk7XG4gICAgcmV0dXJuIHByb3BzLmpvaW4oJyAnKTtcbn1cbmZ1bmN0aW9uIHN0cmluZ2lmeShpdGVtLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApIHtcbiAgICBpZiAoaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKVxuICAgICAgICByZXR1cm4gaXRlbS50b1N0cmluZyhjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApO1xuICAgIGlmIChpZGVudGl0eS5pc0FsaWFzKGl0ZW0pKSB7XG4gICAgICAgIGlmIChjdHguZG9jLmRpcmVjdGl2ZXMpXG4gICAgICAgICAgICByZXR1cm4gaXRlbS50b1N0cmluZyhjdHgpO1xuICAgICAgICBpZiAoY3R4LnJlc29sdmVkQWxpYXNlcz8uaGFzKGl0ZW0pKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBDYW5ub3Qgc3RyaW5naWZ5IGNpcmN1bGFyIHN0cnVjdHVyZSB3aXRob3V0IGFsaWFzIG5vZGVzYCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoY3R4LnJlc29sdmVkQWxpYXNlcylcbiAgICAgICAgICAgICAgICBjdHgucmVzb2x2ZWRBbGlhc2VzLmFkZChpdGVtKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBjdHgucmVzb2x2ZWRBbGlhc2VzID0gbmV3IFNldChbaXRlbV0pO1xuICAgICAgICAgICAgaXRlbSA9IGl0ZW0ucmVzb2x2ZShjdHguZG9jKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBsZXQgdGFnT2JqID0gdW5kZWZpbmVkO1xuICAgIGNvbnN0IG5vZGUgPSBpZGVudGl0eS5pc05vZGUoaXRlbSlcbiAgICAgICAgPyBpdGVtXG4gICAgICAgIDogY3R4LmRvYy5jcmVhdGVOb2RlKGl0ZW0sIHsgb25UYWdPYmo6IG8gPT4gKHRhZ09iaiA9IG8pIH0pO1xuICAgIHRhZ09iaiA/PyAodGFnT2JqID0gZ2V0VGFnT2JqZWN0KGN0eC5kb2Muc2NoZW1hLnRhZ3MsIG5vZGUpKTtcbiAgICBjb25zdCBwcm9wcyA9IHN0cmluZ2lmeVByb3BzKG5vZGUsIHRhZ09iaiwgY3R4KTtcbiAgICBpZiAocHJvcHMubGVuZ3RoID4gMClcbiAgICAgICAgY3R4LmluZGVudEF0U3RhcnQgPSAoY3R4LmluZGVudEF0U3RhcnQgPz8gMCkgKyBwcm9wcy5sZW5ndGggKyAxO1xuICAgIGNvbnN0IHN0ciA9IHR5cGVvZiB0YWdPYmouc3RyaW5naWZ5ID09PSAnZnVuY3Rpb24nXG4gICAgICAgID8gdGFnT2JqLnN0cmluZ2lmeShub2RlLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApXG4gICAgICAgIDogaWRlbnRpdHkuaXNTY2FsYXIobm9kZSlcbiAgICAgICAgICAgID8gc3RyaW5naWZ5U3RyaW5nLnN0cmluZ2lmeVN0cmluZyhub2RlLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApXG4gICAgICAgICAgICA6IG5vZGUudG9TdHJpbmcoY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKTtcbiAgICBpZiAoIXByb3BzKVxuICAgICAgICByZXR1cm4gc3RyO1xuICAgIHJldHVybiBpZGVudGl0eS5pc1NjYWxhcihub2RlKSB8fCBzdHJbMF0gPT09ICd7JyB8fCBzdHJbMF0gPT09ICdbJ1xuICAgICAgICA/IGAke3Byb3BzfSAke3N0cn1gXG4gICAgICAgIDogYCR7cHJvcHN9XFxuJHtjdHguaW5kZW50fSR7c3RyfWA7XG59XG5cbmV4cG9ydHMuY3JlYXRlU3RyaW5naWZ5Q29udGV4dCA9IGNyZWF0ZVN0cmluZ2lmeUNvbnRleHQ7XG5leHBvcnRzLnN0cmluZ2lmeSA9IHN0cmluZ2lmeTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgc3RyaW5naWZ5ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnkuanMnKTtcbnZhciBzdHJpbmdpZnlDb21tZW50ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnlDb21tZW50LmpzJyk7XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeVBhaXIoeyBrZXksIHZhbHVlIH0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgIGNvbnN0IHsgYWxsTnVsbFZhbHVlcywgZG9jLCBpbmRlbnQsIGluZGVudFN0ZXAsIG9wdGlvbnM6IHsgY29tbWVudFN0cmluZywgaW5kZW50U2VxLCBzaW1wbGVLZXlzIH0gfSA9IGN0eDtcbiAgICBsZXQga2V5Q29tbWVudCA9IChpZGVudGl0eS5pc05vZGUoa2V5KSAmJiBrZXkuY29tbWVudCkgfHwgbnVsbDtcbiAgICBpZiAoc2ltcGxlS2V5cykge1xuICAgICAgICBpZiAoa2V5Q29tbWVudCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdXaXRoIHNpbXBsZSBrZXlzLCBrZXkgbm9kZXMgY2Fubm90IGhhdmUgY29tbWVudHMnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKGtleSkgfHwgKCFpZGVudGl0eS5pc05vZGUoa2V5KSAmJiB0eXBlb2Yga2V5ID09PSAnb2JqZWN0JykpIHtcbiAgICAgICAgICAgIGNvbnN0IG1zZyA9ICdXaXRoIHNpbXBsZSBrZXlzLCBjb2xsZWN0aW9uIGNhbm5vdCBiZSB1c2VkIGFzIGEga2V5IHZhbHVlJztcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGxldCBleHBsaWNpdEtleSA9ICFzaW1wbGVLZXlzICYmXG4gICAgICAgICgha2V5IHx8XG4gICAgICAgICAgICAoa2V5Q29tbWVudCAmJiB2YWx1ZSA9PSBudWxsICYmICFjdHguaW5GbG93KSB8fFxuICAgICAgICAgICAgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKGtleSkgfHxcbiAgICAgICAgICAgIChpZGVudGl0eS5pc1NjYWxhcihrZXkpXG4gICAgICAgICAgICAgICAgPyBrZXkudHlwZSA9PT0gU2NhbGFyLlNjYWxhci5CTE9DS19GT0xERUQgfHwga2V5LnR5cGUgPT09IFNjYWxhci5TY2FsYXIuQkxPQ0tfTElURVJBTFxuICAgICAgICAgICAgICAgIDogdHlwZW9mIGtleSA9PT0gJ29iamVjdCcpKTtcbiAgICBjdHggPSBPYmplY3QuYXNzaWduKHt9LCBjdHgsIHtcbiAgICAgICAgYWxsTnVsbFZhbHVlczogZmFsc2UsXG4gICAgICAgIGltcGxpY2l0S2V5OiAhZXhwbGljaXRLZXkgJiYgKHNpbXBsZUtleXMgfHwgIWFsbE51bGxWYWx1ZXMpLFxuICAgICAgICBpbmRlbnQ6IGluZGVudCArIGluZGVudFN0ZXBcbiAgICB9KTtcbiAgICBsZXQga2V5Q29tbWVudERvbmUgPSBmYWxzZTtcbiAgICBsZXQgY2hvbXBLZWVwID0gZmFsc2U7XG4gICAgbGV0IHN0ciA9IHN0cmluZ2lmeS5zdHJpbmdpZnkoa2V5LCBjdHgsICgpID0+IChrZXlDb21tZW50RG9uZSA9IHRydWUpLCAoKSA9PiAoY2hvbXBLZWVwID0gdHJ1ZSkpO1xuICAgIGlmICghZXhwbGljaXRLZXkgJiYgIWN0eC5pbkZsb3cgJiYgc3RyLmxlbmd0aCA+IDEwMjQpIHtcbiAgICAgICAgaWYgKHNpbXBsZUtleXMpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1dpdGggc2ltcGxlIGtleXMsIHNpbmdsZSBsaW5lIHNjYWxhciBtdXN0IG5vdCBzcGFuIG1vcmUgdGhhbiAxMDI0IGNoYXJhY3RlcnMnKTtcbiAgICAgICAgZXhwbGljaXRLZXkgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoY3R4LmluRmxvdykge1xuICAgICAgICBpZiAoYWxsTnVsbFZhbHVlcyB8fCB2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgICAgICBpZiAoa2V5Q29tbWVudERvbmUgJiYgb25Db21tZW50KVxuICAgICAgICAgICAgICAgIG9uQ29tbWVudCgpO1xuICAgICAgICAgICAgcmV0dXJuIHN0ciA9PT0gJycgPyAnPycgOiBleHBsaWNpdEtleSA/IGA/ICR7c3RyfWAgOiBzdHI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAoKGFsbE51bGxWYWx1ZXMgJiYgIXNpbXBsZUtleXMpIHx8ICh2YWx1ZSA9PSBudWxsICYmIGV4cGxpY2l0S2V5KSkge1xuICAgICAgICBzdHIgPSBgPyAke3N0cn1gO1xuICAgICAgICBpZiAoa2V5Q29tbWVudCAmJiAha2V5Q29tbWVudERvbmUpIHtcbiAgICAgICAgICAgIHN0ciArPSBzdHJpbmdpZnlDb21tZW50LmxpbmVDb21tZW50KHN0ciwgY3R4LmluZGVudCwgY29tbWVudFN0cmluZyhrZXlDb21tZW50KSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoY2hvbXBLZWVwICYmIG9uQ2hvbXBLZWVwKVxuICAgICAgICAgICAgb25DaG9tcEtlZXAoKTtcbiAgICAgICAgcmV0dXJuIHN0cjtcbiAgICB9XG4gICAgaWYgKGtleUNvbW1lbnREb25lKVxuICAgICAgICBrZXlDb21tZW50ID0gbnVsbDtcbiAgICBpZiAoZXhwbGljaXRLZXkpIHtcbiAgICAgICAgaWYgKGtleUNvbW1lbnQpXG4gICAgICAgICAgICBzdHIgKz0gc3RyaW5naWZ5Q29tbWVudC5saW5lQ29tbWVudChzdHIsIGN0eC5pbmRlbnQsIGNvbW1lbnRTdHJpbmcoa2V5Q29tbWVudCkpO1xuICAgICAgICBzdHIgPSBgPyAke3N0cn1cXG4ke2luZGVudH06YDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHN0ciA9IGAke3N0cn06YDtcbiAgICAgICAgaWYgKGtleUNvbW1lbnQpXG4gICAgICAgICAgICBzdHIgKz0gc3RyaW5naWZ5Q29tbWVudC5saW5lQ29tbWVudChzdHIsIGN0eC5pbmRlbnQsIGNvbW1lbnRTdHJpbmcoa2V5Q29tbWVudCkpO1xuICAgIH1cbiAgICBsZXQgdnNiLCB2Y2IsIHZhbHVlQ29tbWVudDtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKHZhbHVlKSkge1xuICAgICAgICB2c2IgPSAhIXZhbHVlLnNwYWNlQmVmb3JlO1xuICAgICAgICB2Y2IgPSB2YWx1ZS5jb21tZW50QmVmb3JlO1xuICAgICAgICB2YWx1ZUNvbW1lbnQgPSB2YWx1ZS5jb21tZW50O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdnNiID0gZmFsc2U7XG4gICAgICAgIHZjYiA9IG51bGw7XG4gICAgICAgIHZhbHVlQ29tbWVudCA9IG51bGw7XG4gICAgICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKVxuICAgICAgICAgICAgdmFsdWUgPSBkb2MuY3JlYXRlTm9kZSh2YWx1ZSk7XG4gICAgfVxuICAgIGN0eC5pbXBsaWNpdEtleSA9IGZhbHNlO1xuICAgIGlmICghZXhwbGljaXRLZXkgJiYgIWtleUNvbW1lbnQgJiYgaWRlbnRpdHkuaXNTY2FsYXIodmFsdWUpKVxuICAgICAgICBjdHguaW5kZW50QXRTdGFydCA9IHN0ci5sZW5ndGggKyAxO1xuICAgIGNob21wS2VlcCA9IGZhbHNlO1xuICAgIGlmICghaW5kZW50U2VxICYmXG4gICAgICAgIGluZGVudFN0ZXAubGVuZ3RoID49IDIgJiZcbiAgICAgICAgIWN0eC5pbkZsb3cgJiZcbiAgICAgICAgIWV4cGxpY2l0S2V5ICYmXG4gICAgICAgIGlkZW50aXR5LmlzU2VxKHZhbHVlKSAmJlxuICAgICAgICAhdmFsdWUuZmxvdyAmJlxuICAgICAgICAhdmFsdWUudGFnICYmXG4gICAgICAgICF2YWx1ZS5hbmNob3IpIHtcbiAgICAgICAgLy8gSWYgaW5kZW50U2VxID09PSBmYWxzZSwgY29uc2lkZXIgJy0gJyBhcyBwYXJ0IG9mIGluZGVudGF0aW9uIHdoZXJlIHBvc3NpYmxlXG4gICAgICAgIGN0eC5pbmRlbnQgPSBjdHguaW5kZW50LnN1YnN0cmluZygyKTtcbiAgICB9XG4gICAgbGV0IHZhbHVlQ29tbWVudERvbmUgPSBmYWxzZTtcbiAgICBjb25zdCB2YWx1ZVN0ciA9IHN0cmluZ2lmeS5zdHJpbmdpZnkodmFsdWUsIGN0eCwgKCkgPT4gKHZhbHVlQ29tbWVudERvbmUgPSB0cnVlKSwgKCkgPT4gKGNob21wS2VlcCA9IHRydWUpKTtcbiAgICBsZXQgd3MgPSAnICc7XG4gICAgaWYgKGtleUNvbW1lbnQgfHwgdnNiIHx8IHZjYikge1xuICAgICAgICB3cyA9IHZzYiA/ICdcXG4nIDogJyc7XG4gICAgICAgIGlmICh2Y2IpIHtcbiAgICAgICAgICAgIGNvbnN0IGNzID0gY29tbWVudFN0cmluZyh2Y2IpO1xuICAgICAgICAgICAgd3MgKz0gYFxcbiR7c3RyaW5naWZ5Q29tbWVudC5pbmRlbnRDb21tZW50KGNzLCBjdHguaW5kZW50KX1gO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWx1ZVN0ciA9PT0gJycgJiYgIWN0eC5pbkZsb3cpIHtcbiAgICAgICAgICAgIGlmICh3cyA9PT0gJ1xcbicpXG4gICAgICAgICAgICAgICAgd3MgPSAnXFxuXFxuJztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHdzICs9IGBcXG4ke2N0eC5pbmRlbnR9YDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmICghZXhwbGljaXRLZXkgJiYgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHZhbHVlKSkge1xuICAgICAgICBjb25zdCB2czAgPSB2YWx1ZVN0clswXTtcbiAgICAgICAgY29uc3QgbmwwID0gdmFsdWVTdHIuaW5kZXhPZignXFxuJyk7XG4gICAgICAgIGNvbnN0IGhhc05ld2xpbmUgPSBubDAgIT09IC0xO1xuICAgICAgICBjb25zdCBmbG93ID0gY3R4LmluRmxvdyA/PyB2YWx1ZS5mbG93ID8/IHZhbHVlLml0ZW1zLmxlbmd0aCA9PT0gMDtcbiAgICAgICAgaWYgKGhhc05ld2xpbmUgfHwgIWZsb3cpIHtcbiAgICAgICAgICAgIGxldCBoYXNQcm9wc0xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmIChoYXNOZXdsaW5lICYmICh2czAgPT09ICcmJyB8fCB2czAgPT09ICchJykpIHtcbiAgICAgICAgICAgICAgICBsZXQgc3AwID0gdmFsdWVTdHIuaW5kZXhPZignICcpO1xuICAgICAgICAgICAgICAgIGlmICh2czAgPT09ICcmJyAmJlxuICAgICAgICAgICAgICAgICAgICBzcDAgIT09IC0xICYmXG4gICAgICAgICAgICAgICAgICAgIHNwMCA8IG5sMCAmJlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZVN0cltzcDAgKyAxXSA9PT0gJyEnKSB7XG4gICAgICAgICAgICAgICAgICAgIHNwMCA9IHZhbHVlU3RyLmluZGV4T2YoJyAnLCBzcDAgKyAxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHNwMCA9PT0gLTEgfHwgbmwwIDwgc3AwKVxuICAgICAgICAgICAgICAgICAgICBoYXNQcm9wc0xpbmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFoYXNQcm9wc0xpbmUpXG4gICAgICAgICAgICAgICAgd3MgPSBgXFxuJHtjdHguaW5kZW50fWA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAodmFsdWVTdHIgPT09ICcnIHx8IHZhbHVlU3RyWzBdID09PSAnXFxuJykge1xuICAgICAgICB3cyA9ICcnO1xuICAgIH1cbiAgICBzdHIgKz0gd3MgKyB2YWx1ZVN0cjtcbiAgICBpZiAoY3R4LmluRmxvdykge1xuICAgICAgICBpZiAodmFsdWVDb21tZW50RG9uZSAmJiBvbkNvbW1lbnQpXG4gICAgICAgICAgICBvbkNvbW1lbnQoKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodmFsdWVDb21tZW50ICYmICF2YWx1ZUNvbW1lbnREb25lKSB7XG4gICAgICAgIHN0ciArPSBzdHJpbmdpZnlDb21tZW50LmxpbmVDb21tZW50KHN0ciwgY3R4LmluZGVudCwgY29tbWVudFN0cmluZyh2YWx1ZUNvbW1lbnQpKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoY2hvbXBLZWVwICYmIG9uQ2hvbXBLZWVwKSB7XG4gICAgICAgIG9uQ2hvbXBLZWVwKCk7XG4gICAgfVxuICAgIHJldHVybiBzdHI7XG59XG5cbmV4cG9ydHMuc3RyaW5naWZ5UGFpciA9IHN0cmluZ2lmeVBhaXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbm9kZV9wcm9jZXNzID0gcmVxdWlyZSgncHJvY2VzcycpO1xuXG5mdW5jdGlvbiBkZWJ1Zyhsb2dMZXZlbCwgLi4ubWVzc2FnZXMpIHtcbiAgICBpZiAobG9nTGV2ZWwgPT09ICdkZWJ1ZycpXG4gICAgICAgIGNvbnNvbGUubG9nKC4uLm1lc3NhZ2VzKTtcbn1cbmZ1bmN0aW9uIHdhcm4obG9nTGV2ZWwsIHdhcm5pbmcpIHtcbiAgICBpZiAobG9nTGV2ZWwgPT09ICdkZWJ1ZycgfHwgbG9nTGV2ZWwgPT09ICd3YXJuJykge1xuICAgICAgICBpZiAodHlwZW9mIG5vZGVfcHJvY2Vzcy5lbWl0V2FybmluZyA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIG5vZGVfcHJvY2Vzcy5lbWl0V2FybmluZyh3YXJuaW5nKTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgY29uc29sZS53YXJuKHdhcm5pbmcpO1xuICAgIH1cbn1cblxuZXhwb3J0cy5kZWJ1ZyA9IGRlYnVnO1xuZXhwb3J0cy53YXJuID0gd2FybjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbi8vIElmIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYSBtZXJnZSBrZXkgaXMgYSBzaW5nbGUgbWFwcGluZyBub2RlLCBlYWNoIG9mXG4vLyBpdHMga2V5L3ZhbHVlIHBhaXJzIGlzIGluc2VydGVkIGludG8gdGhlIGN1cnJlbnQgbWFwcGluZywgdW5sZXNzIHRoZSBrZXlcbi8vIGFscmVhZHkgZXhpc3RzIGluIGl0LiBJZiB0aGUgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIHRoZSBtZXJnZSBrZXkgaXMgYVxuLy8gc2VxdWVuY2UsIHRoZW4gdGhpcyBzZXF1ZW5jZSBpcyBleHBlY3RlZCB0byBjb250YWluIG1hcHBpbmcgbm9kZXMgYW5kIGVhY2hcbi8vIG9mIHRoZXNlIG5vZGVzIGlzIG1lcmdlZCBpbiB0dXJuIGFjY29yZGluZyB0byBpdHMgb3JkZXIgaW4gdGhlIHNlcXVlbmNlLlxuLy8gS2V5cyBpbiBtYXBwaW5nIG5vZGVzIGVhcmxpZXIgaW4gdGhlIHNlcXVlbmNlIG92ZXJyaWRlIGtleXMgc3BlY2lmaWVkIGluXG4vLyBsYXRlciBtYXBwaW5nIG5vZGVzLiAtLSBodHRwOi8veWFtbC5vcmcvdHlwZS9tZXJnZS5odG1sXG5jb25zdCBNRVJHRV9LRVkgPSAnPDwnO1xuY29uc3QgbWVyZ2UgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHZhbHVlID09PSBNRVJHRV9LRVkgfHxcbiAgICAgICAgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N5bWJvbCcgJiYgdmFsdWUuZGVzY3JpcHRpb24gPT09IE1FUkdFX0tFWSksXG4gICAgZGVmYXVsdDogJ2tleScsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6bWVyZ2UnLFxuICAgIHRlc3Q6IC9ePDwkLyxcbiAgICByZXNvbHZlOiAoKSA9PiBPYmplY3QuYXNzaWduKG5ldyBTY2FsYXIuU2NhbGFyKFN5bWJvbChNRVJHRV9LRVkpKSwge1xuICAgICAgICBhZGRUb0pTTWFwOiBhZGRNZXJnZVRvSlNNYXBcbiAgICB9KSxcbiAgICBzdHJpbmdpZnk6ICgpID0+IE1FUkdFX0tFWVxufTtcbmNvbnN0IGlzTWVyZ2VLZXkgPSAoY3R4LCBrZXkpID0+IChtZXJnZS5pZGVudGlmeShrZXkpIHx8XG4gICAgKGlkZW50aXR5LmlzU2NhbGFyKGtleSkgJiZcbiAgICAgICAgKCFrZXkudHlwZSB8fCBrZXkudHlwZSA9PT0gU2NhbGFyLlNjYWxhci5QTEFJTikgJiZcbiAgICAgICAgbWVyZ2UuaWRlbnRpZnkoa2V5LnZhbHVlKSkpICYmXG4gICAgY3R4Py5kb2Muc2NoZW1hLnRhZ3Muc29tZSh0YWcgPT4gdGFnLnRhZyA9PT0gbWVyZ2UudGFnICYmIHRhZy5kZWZhdWx0KTtcbmZ1bmN0aW9uIGFkZE1lcmdlVG9KU01hcChjdHgsIG1hcCwgdmFsdWUpIHtcbiAgICB2YWx1ZSA9IGN0eCAmJiBpZGVudGl0eS5pc0FsaWFzKHZhbHVlKSA/IHZhbHVlLnJlc29sdmUoY3R4LmRvYykgOiB2YWx1ZTtcbiAgICBpZiAoaWRlbnRpdHkuaXNTZXEodmFsdWUpKVxuICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIHZhbHVlLml0ZW1zKVxuICAgICAgICAgICAgbWVyZ2VWYWx1ZShjdHgsIG1hcCwgaXQpO1xuICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKVxuICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIHZhbHVlKVxuICAgICAgICAgICAgbWVyZ2VWYWx1ZShjdHgsIG1hcCwgaXQpO1xuICAgIGVsc2VcbiAgICAgICAgbWVyZ2VWYWx1ZShjdHgsIG1hcCwgdmFsdWUpO1xufVxuZnVuY3Rpb24gbWVyZ2VWYWx1ZShjdHgsIG1hcCwgdmFsdWUpIHtcbiAgICBjb25zdCBzb3VyY2UgPSBjdHggJiYgaWRlbnRpdHkuaXNBbGlhcyh2YWx1ZSkgPyB2YWx1ZS5yZXNvbHZlKGN0eC5kb2MpIDogdmFsdWU7XG4gICAgaWYgKCFpZGVudGl0eS5pc01hcChzb3VyY2UpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01lcmdlIHNvdXJjZXMgbXVzdCBiZSBtYXBzIG9yIG1hcCBhbGlhc2VzJyk7XG4gICAgY29uc3Qgc3JjTWFwID0gc291cmNlLnRvSlNPTihudWxsLCBjdHgsIE1hcCk7XG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2Ygc3JjTWFwKSB7XG4gICAgICAgIGlmIChtYXAgaW5zdGFuY2VvZiBNYXApIHtcbiAgICAgICAgICAgIGlmICghbWFwLmhhcyhrZXkpKVxuICAgICAgICAgICAgICAgIG1hcC5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAobWFwIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICAgICAgICBtYXAuYWRkKGtleSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChtYXAsIGtleSkpIHtcbiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtYXAsIGtleSwge1xuICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWFwO1xufVxuXG5leHBvcnRzLmFkZE1lcmdlVG9KU01hcCA9IGFkZE1lcmdlVG9KU01hcDtcbmV4cG9ydHMuaXNNZXJnZUtleSA9IGlzTWVyZ2VLZXk7XG5leHBvcnRzLm1lcmdlID0gbWVyZ2U7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbG9nID0gcmVxdWlyZSgnLi4vbG9nLmpzJyk7XG52YXIgbWVyZ2UgPSByZXF1aXJlKCcuLi9zY2hlbWEveWFtbC0xLjEvbWVyZ2UuanMnKTtcbnZhciBzdHJpbmdpZnkgPSByZXF1aXJlKCcuLi9zdHJpbmdpZnkvc3RyaW5naWZ5LmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5LmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4vdG9KUy5qcycpO1xuXG5mdW5jdGlvbiBhZGRQYWlyVG9KU01hcChjdHgsIG1hcCwgeyBrZXksIHZhbHVlIH0pIHtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGtleSkgJiYga2V5LmFkZFRvSlNNYXApXG4gICAgICAgIGtleS5hZGRUb0pTTWFwKGN0eCwgbWFwLCB2YWx1ZSk7XG4gICAgLy8gVE9ETzogU2hvdWxkIGRyb3AgdGhpcyBzcGVjaWFsIGNhc2UgZm9yIGJhcmUgPDwgaGFuZGxpbmdcbiAgICBlbHNlIGlmIChtZXJnZS5pc01lcmdlS2V5KGN0eCwga2V5KSlcbiAgICAgICAgbWVyZ2UuYWRkTWVyZ2VUb0pTTWFwKGN0eCwgbWFwLCB2YWx1ZSk7XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IGpzS2V5ID0gdG9KUy50b0pTKGtleSwgJycsIGN0eCk7XG4gICAgICAgIGlmIChtYXAgaW5zdGFuY2VvZiBNYXApIHtcbiAgICAgICAgICAgIG1hcC5zZXQoanNLZXksIHRvSlMudG9KUyh2YWx1ZSwganNLZXksIGN0eCkpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKG1hcCBpbnN0YW5jZW9mIFNldCkge1xuICAgICAgICAgICAgbWFwLmFkZChqc0tleSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBzdHJpbmdLZXkgPSBzdHJpbmdpZnlLZXkoa2V5LCBqc0tleSwgY3R4KTtcbiAgICAgICAgICAgIGNvbnN0IGpzVmFsdWUgPSB0b0pTLnRvSlModmFsdWUsIHN0cmluZ0tleSwgY3R4KTtcbiAgICAgICAgICAgIGlmIChzdHJpbmdLZXkgaW4gbWFwKVxuICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtYXAsIHN0cmluZ0tleSwge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZToganNWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIG1hcFtzdHJpbmdLZXldID0ganNWYWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWFwO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5S2V5KGtleSwganNLZXksIGN0eCkge1xuICAgIGlmIChqc0tleSA9PT0gbnVsbClcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tYmFzZS10by1zdHJpbmdcbiAgICBpZiAodHlwZW9mIGpzS2V5ICE9PSAnb2JqZWN0JylcbiAgICAgICAgcmV0dXJuIFN0cmluZyhqc0tleSk7XG4gICAgaWYgKGlkZW50aXR5LmlzTm9kZShrZXkpICYmIGN0eD8uZG9jKSB7XG4gICAgICAgIGNvbnN0IHN0ckN0eCA9IHN0cmluZ2lmeS5jcmVhdGVTdHJpbmdpZnlDb250ZXh0KGN0eC5kb2MsIHt9KTtcbiAgICAgICAgc3RyQ3R4LmFuY2hvcnMgPSBuZXcgU2V0KCk7XG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBjdHguYW5jaG9ycy5rZXlzKCkpXG4gICAgICAgICAgICBzdHJDdHguYW5jaG9ycy5hZGQobm9kZS5hbmNob3IpO1xuICAgICAgICBzdHJDdHguaW5GbG93ID0gdHJ1ZTtcbiAgICAgICAgc3RyQ3R4LmluU3RyaW5naWZ5S2V5ID0gdHJ1ZTtcbiAgICAgICAgY29uc3Qgc3RyS2V5ID0ga2V5LnRvU3RyaW5nKHN0ckN0eCk7XG4gICAgICAgIGlmICghY3R4Lm1hcEtleVdhcm5lZCkge1xuICAgICAgICAgICAgbGV0IGpzb25TdHIgPSBKU09OLnN0cmluZ2lmeShzdHJLZXkpO1xuICAgICAgICAgICAgaWYgKGpzb25TdHIubGVuZ3RoID4gNDApXG4gICAgICAgICAgICAgICAganNvblN0ciA9IGpzb25TdHIuc3Vic3RyaW5nKDAsIDM2KSArICcuLi5cIic7XG4gICAgICAgICAgICBsb2cud2FybihjdHguZG9jLm9wdGlvbnMubG9nTGV2ZWwsIGBLZXlzIHdpdGggY29sbGVjdGlvbiB2YWx1ZXMgd2lsbCBiZSBzdHJpbmdpZmllZCBkdWUgdG8gSlMgT2JqZWN0IHJlc3RyaWN0aW9uczogJHtqc29uU3RyfS4gU2V0IG1hcEFzTWFwOiB0cnVlIHRvIHVzZSBvYmplY3Qga2V5cy5gKTtcbiAgICAgICAgICAgIGN0eC5tYXBLZXlXYXJuZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzdHJLZXk7XG4gICAgfVxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShqc0tleSk7XG59XG5cbmV4cG9ydHMuYWRkUGFpclRvSlNNYXAgPSBhZGRQYWlyVG9KU01hcDtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBjcmVhdGVOb2RlID0gcmVxdWlyZSgnLi4vZG9jL2NyZWF0ZU5vZGUuanMnKTtcbnZhciBzdHJpbmdpZnlQYWlyID0gcmVxdWlyZSgnLi4vc3RyaW5naWZ5L3N0cmluZ2lmeVBhaXIuanMnKTtcbnZhciBhZGRQYWlyVG9KU01hcCA9IHJlcXVpcmUoJy4vYWRkUGFpclRvSlNNYXAuanMnKTtcbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vaWRlbnRpdHkuanMnKTtcblxuZnVuY3Rpb24gY3JlYXRlUGFpcihrZXksIHZhbHVlLCBjdHgpIHtcbiAgICBjb25zdCBrID0gY3JlYXRlTm9kZS5jcmVhdGVOb2RlKGtleSwgdW5kZWZpbmVkLCBjdHgpO1xuICAgIGNvbnN0IHYgPSBjcmVhdGVOb2RlLmNyZWF0ZU5vZGUodmFsdWUsIHVuZGVmaW5lZCwgY3R4KTtcbiAgICByZXR1cm4gbmV3IFBhaXIoaywgdik7XG59XG5jbGFzcyBQYWlyIHtcbiAgICBjb25zdHJ1Y3RvcihrZXksIHZhbHVlID0gbnVsbCkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgaWRlbnRpdHkuTk9ERV9UWVBFLCB7IHZhbHVlOiBpZGVudGl0eS5QQUlSIH0pO1xuICAgICAgICB0aGlzLmtleSA9IGtleTtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIH1cbiAgICBjbG9uZShzY2hlbWEpIHtcbiAgICAgICAgbGV0IHsga2V5LCB2YWx1ZSB9ID0gdGhpcztcbiAgICAgICAgaWYgKGlkZW50aXR5LmlzTm9kZShrZXkpKVxuICAgICAgICAgICAga2V5ID0ga2V5LmNsb25lKHNjaGVtYSk7XG4gICAgICAgIGlmIChpZGVudGl0eS5pc05vZGUodmFsdWUpKVxuICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5jbG9uZShzY2hlbWEpO1xuICAgICAgICByZXR1cm4gbmV3IFBhaXIoa2V5LCB2YWx1ZSk7XG4gICAgfVxuICAgIHRvSlNPTihfLCBjdHgpIHtcbiAgICAgICAgY29uc3QgcGFpciA9IGN0eD8ubWFwQXNNYXAgPyBuZXcgTWFwKCkgOiB7fTtcbiAgICAgICAgcmV0dXJuIGFkZFBhaXJUb0pTTWFwLmFkZFBhaXJUb0pTTWFwKGN0eCwgcGFpciwgdGhpcyk7XG4gICAgfVxuICAgIHRvU3RyaW5nKGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICByZXR1cm4gY3R4Py5kb2NcbiAgICAgICAgICAgID8gc3RyaW5naWZ5UGFpci5zdHJpbmdpZnlQYWlyKHRoaXMsIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcClcbiAgICAgICAgICAgIDogSlNPTi5zdHJpbmdpZnkodGhpcyk7XG4gICAgfVxufVxuXG5leHBvcnRzLlBhaXIgPSBQYWlyO1xuZXhwb3J0cy5jcmVhdGVQYWlyID0gY3JlYXRlUGFpcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgc3RyaW5naWZ5ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnkuanMnKTtcbnZhciBzdHJpbmdpZnlDb21tZW50ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnlDb21tZW50LmpzJyk7XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeUNvbGxlY3Rpb24oY29sbGVjdGlvbiwgY3R4LCBvcHRpb25zKSB7XG4gICAgY29uc3QgZmxvdyA9IGN0eC5pbkZsb3cgPz8gY29sbGVjdGlvbi5mbG93O1xuICAgIGNvbnN0IHN0cmluZ2lmeSA9IGZsb3cgPyBzdHJpbmdpZnlGbG93Q29sbGVjdGlvbiA6IHN0cmluZ2lmeUJsb2NrQ29sbGVjdGlvbjtcbiAgICByZXR1cm4gc3RyaW5naWZ5KGNvbGxlY3Rpb24sIGN0eCwgb3B0aW9ucyk7XG59XG5mdW5jdGlvbiBzdHJpbmdpZnlCbG9ja0NvbGxlY3Rpb24oeyBjb21tZW50LCBpdGVtcyB9LCBjdHgsIHsgYmxvY2tJdGVtUHJlZml4LCBmbG93Q2hhcnMsIGl0ZW1JbmRlbnQsIG9uQ2hvbXBLZWVwLCBvbkNvbW1lbnQgfSkge1xuICAgIGNvbnN0IHsgaW5kZW50LCBvcHRpb25zOiB7IGNvbW1lbnRTdHJpbmcgfSB9ID0gY3R4O1xuICAgIGNvbnN0IGl0ZW1DdHggPSBPYmplY3QuYXNzaWduKHt9LCBjdHgsIHsgaW5kZW50OiBpdGVtSW5kZW50LCB0eXBlOiBudWxsIH0pO1xuICAgIGxldCBjaG9tcEtlZXAgPSBmYWxzZTsgLy8gZmxhZyBmb3IgdGhlIHByZWNlZGluZyBub2RlJ3Mgc3RhdHVzXG4gICAgY29uc3QgbGluZXMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBpdGVtc1tpXTtcbiAgICAgICAgbGV0IGNvbW1lbnQgPSBudWxsO1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGl0ZW0pKSB7XG4gICAgICAgICAgICBpZiAoIWNob21wS2VlcCAmJiBpdGVtLnNwYWNlQmVmb3JlKVxuICAgICAgICAgICAgICAgIGxpbmVzLnB1c2goJycpO1xuICAgICAgICAgICAgYWRkQ29tbWVudEJlZm9yZShjdHgsIGxpbmVzLCBpdGVtLmNvbW1lbnRCZWZvcmUsIGNob21wS2VlcCk7XG4gICAgICAgICAgICBpZiAoaXRlbS5jb21tZW50KVxuICAgICAgICAgICAgICAgIGNvbW1lbnQgPSBpdGVtLmNvbW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKSB7XG4gICAgICAgICAgICBjb25zdCBpayA9IGlkZW50aXR5LmlzTm9kZShpdGVtLmtleSkgPyBpdGVtLmtleSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoaWspIHtcbiAgICAgICAgICAgICAgICBpZiAoIWNob21wS2VlcCAmJiBpay5zcGFjZUJlZm9yZSlcbiAgICAgICAgICAgICAgICAgICAgbGluZXMucHVzaCgnJyk7XG4gICAgICAgICAgICAgICAgYWRkQ29tbWVudEJlZm9yZShjdHgsIGxpbmVzLCBpay5jb21tZW50QmVmb3JlLCBjaG9tcEtlZXApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNob21wS2VlcCA9IGZhbHNlO1xuICAgICAgICBsZXQgc3RyID0gc3RyaW5naWZ5LnN0cmluZ2lmeShpdGVtLCBpdGVtQ3R4LCAoKSA9PiAoY29tbWVudCA9IG51bGwpLCAoKSA9PiAoY2hvbXBLZWVwID0gdHJ1ZSkpO1xuICAgICAgICBpZiAoY29tbWVudClcbiAgICAgICAgICAgIHN0ciArPSBzdHJpbmdpZnlDb21tZW50LmxpbmVDb21tZW50KHN0ciwgaXRlbUluZGVudCwgY29tbWVudFN0cmluZyhjb21tZW50KSk7XG4gICAgICAgIGlmIChjaG9tcEtlZXAgJiYgY29tbWVudClcbiAgICAgICAgICAgIGNob21wS2VlcCA9IGZhbHNlO1xuICAgICAgICBsaW5lcy5wdXNoKGJsb2NrSXRlbVByZWZpeCArIHN0cik7XG4gICAgfVxuICAgIGxldCBzdHI7XG4gICAgaWYgKGxpbmVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBzdHIgPSBmbG93Q2hhcnMuc3RhcnQgKyBmbG93Q2hhcnMuZW5kO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgc3RyID0gbGluZXNbMF07XG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgbGluZXMubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgICAgIGNvbnN0IGxpbmUgPSBsaW5lc1tpXTtcbiAgICAgICAgICAgIHN0ciArPSBsaW5lID8gYFxcbiR7aW5kZW50fSR7bGluZX1gIDogJ1xcbic7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNvbW1lbnQpIHtcbiAgICAgICAgc3RyICs9ICdcXG4nICsgc3RyaW5naWZ5Q29tbWVudC5pbmRlbnRDb21tZW50KGNvbW1lbnRTdHJpbmcoY29tbWVudCksIGluZGVudCk7XG4gICAgICAgIGlmIChvbkNvbW1lbnQpXG4gICAgICAgICAgICBvbkNvbW1lbnQoKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoY2hvbXBLZWVwICYmIG9uQ2hvbXBLZWVwKVxuICAgICAgICBvbkNob21wS2VlcCgpO1xuICAgIHJldHVybiBzdHI7XG59XG5mdW5jdGlvbiBzdHJpbmdpZnlGbG93Q29sbGVjdGlvbih7IGl0ZW1zIH0sIGN0eCwgeyBmbG93Q2hhcnMsIGl0ZW1JbmRlbnQgfSkge1xuICAgIGNvbnN0IHsgaW5kZW50LCBpbmRlbnRTdGVwLCBmbG93Q29sbGVjdGlvblBhZGRpbmc6IGZjUGFkZGluZywgb3B0aW9uczogeyBjb21tZW50U3RyaW5nIH0gfSA9IGN0eDtcbiAgICBpdGVtSW5kZW50ICs9IGluZGVudFN0ZXA7XG4gICAgY29uc3QgaXRlbUN0eCA9IE9iamVjdC5hc3NpZ24oe30sIGN0eCwge1xuICAgICAgICBpbmRlbnQ6IGl0ZW1JbmRlbnQsXG4gICAgICAgIGluRmxvdzogdHJ1ZSxcbiAgICAgICAgdHlwZTogbnVsbFxuICAgIH0pO1xuICAgIGxldCByZXFOZXdsaW5lID0gZmFsc2U7XG4gICAgbGV0IGxpbmVzQXRWYWx1ZSA9IDA7XG4gICAgY29uc3QgbGluZXMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBpdGVtc1tpXTtcbiAgICAgICAgbGV0IGNvbW1lbnQgPSBudWxsO1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGl0ZW0pKSB7XG4gICAgICAgICAgICBpZiAoaXRlbS5zcGFjZUJlZm9yZSlcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcnKTtcbiAgICAgICAgICAgIGFkZENvbW1lbnRCZWZvcmUoY3R4LCBsaW5lcywgaXRlbS5jb21tZW50QmVmb3JlLCBmYWxzZSk7XG4gICAgICAgICAgICBpZiAoaXRlbS5jb21tZW50KVxuICAgICAgICAgICAgICAgIGNvbW1lbnQgPSBpdGVtLmNvbW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKSB7XG4gICAgICAgICAgICBjb25zdCBpayA9IGlkZW50aXR5LmlzTm9kZShpdGVtLmtleSkgPyBpdGVtLmtleSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoaWspIHtcbiAgICAgICAgICAgICAgICBpZiAoaWsuc3BhY2VCZWZvcmUpXG4gICAgICAgICAgICAgICAgICAgIGxpbmVzLnB1c2goJycpO1xuICAgICAgICAgICAgICAgIGFkZENvbW1lbnRCZWZvcmUoY3R4LCBsaW5lcywgaWsuY29tbWVudEJlZm9yZSwgZmFsc2UpO1xuICAgICAgICAgICAgICAgIGlmIChpay5jb21tZW50KVxuICAgICAgICAgICAgICAgICAgICByZXFOZXdsaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGl2ID0gaWRlbnRpdHkuaXNOb2RlKGl0ZW0udmFsdWUpID8gaXRlbS52YWx1ZSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoaXYpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXYuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgY29tbWVudCA9IGl2LmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgaWYgKGl2LmNvbW1lbnRCZWZvcmUpXG4gICAgICAgICAgICAgICAgICAgIHJlcU5ld2xpbmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaXRlbS52YWx1ZSA9PSBudWxsICYmIGlrPy5jb21tZW50KSB7XG4gICAgICAgICAgICAgICAgY29tbWVudCA9IGlrLmNvbW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbW1lbnQpXG4gICAgICAgICAgICByZXFOZXdsaW5lID0gdHJ1ZTtcbiAgICAgICAgbGV0IHN0ciA9IHN0cmluZ2lmeS5zdHJpbmdpZnkoaXRlbSwgaXRlbUN0eCwgKCkgPT4gKGNvbW1lbnQgPSBudWxsKSk7XG4gICAgICAgIGlmIChpIDwgaXRlbXMubGVuZ3RoIC0gMSlcbiAgICAgICAgICAgIHN0ciArPSAnLCc7XG4gICAgICAgIGlmIChjb21tZW50KVxuICAgICAgICAgICAgc3RyICs9IHN0cmluZ2lmeUNvbW1lbnQubGluZUNvbW1lbnQoc3RyLCBpdGVtSW5kZW50LCBjb21tZW50U3RyaW5nKGNvbW1lbnQpKTtcbiAgICAgICAgaWYgKCFyZXFOZXdsaW5lICYmIChsaW5lcy5sZW5ndGggPiBsaW5lc0F0VmFsdWUgfHwgc3RyLmluY2x1ZGVzKCdcXG4nKSkpXG4gICAgICAgICAgICByZXFOZXdsaW5lID0gdHJ1ZTtcbiAgICAgICAgbGluZXMucHVzaChzdHIpO1xuICAgICAgICBsaW5lc0F0VmFsdWUgPSBsaW5lcy5sZW5ndGg7XG4gICAgfVxuICAgIGNvbnN0IHsgc3RhcnQsIGVuZCB9ID0gZmxvd0NoYXJzO1xuICAgIGlmIChsaW5lcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIHN0YXJ0ICsgZW5kO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgaWYgKCFyZXFOZXdsaW5lKSB7XG4gICAgICAgICAgICBjb25zdCBsZW4gPSBsaW5lcy5yZWR1Y2UoKHN1bSwgbGluZSkgPT4gc3VtICsgbGluZS5sZW5ndGggKyAyLCAyKTtcbiAgICAgICAgICAgIHJlcU5ld2xpbmUgPSBjdHgub3B0aW9ucy5saW5lV2lkdGggPiAwICYmIGxlbiA+IGN0eC5vcHRpb25zLmxpbmVXaWR0aDtcbiAgICAgICAgfVxuICAgICAgICBpZiAocmVxTmV3bGluZSkge1xuICAgICAgICAgICAgbGV0IHN0ciA9IHN0YXJ0O1xuICAgICAgICAgICAgZm9yIChjb25zdCBsaW5lIG9mIGxpbmVzKVxuICAgICAgICAgICAgICAgIHN0ciArPSBsaW5lID8gYFxcbiR7aW5kZW50U3RlcH0ke2luZGVudH0ke2xpbmV9YCA6ICdcXG4nO1xuICAgICAgICAgICAgcmV0dXJuIGAke3N0cn1cXG4ke2luZGVudH0ke2VuZH1gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGAke3N0YXJ0fSR7ZmNQYWRkaW5nfSR7bGluZXMuam9pbignICcpfSR7ZmNQYWRkaW5nfSR7ZW5kfWA7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBhZGRDb21tZW50QmVmb3JlKHsgaW5kZW50LCBvcHRpb25zOiB7IGNvbW1lbnRTdHJpbmcgfSB9LCBsaW5lcywgY29tbWVudCwgY2hvbXBLZWVwKSB7XG4gICAgaWYgKGNvbW1lbnQgJiYgY2hvbXBLZWVwKVxuICAgICAgICBjb21tZW50ID0gY29tbWVudC5yZXBsYWNlKC9eXFxuKy8sICcnKTtcbiAgICBpZiAoY29tbWVudCkge1xuICAgICAgICBjb25zdCBpYyA9IHN0cmluZ2lmeUNvbW1lbnQuaW5kZW50Q29tbWVudChjb21tZW50U3RyaW5nKGNvbW1lbnQpLCBpbmRlbnQpO1xuICAgICAgICBsaW5lcy5wdXNoKGljLnRyaW1TdGFydCgpKTsgLy8gQXZvaWQgZG91YmxlIGluZGVudCBvbiBmaXJzdCBsaW5lXG4gICAgfVxufVxuXG5leHBvcnRzLnN0cmluZ2lmeUNvbGxlY3Rpb24gPSBzdHJpbmdpZnlDb2xsZWN0aW9uO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHN0cmluZ2lmeUNvbGxlY3Rpb24gPSByZXF1aXJlKCcuLi9zdHJpbmdpZnkvc3RyaW5naWZ5Q29sbGVjdGlvbi5qcycpO1xudmFyIGFkZFBhaXJUb0pTTWFwID0gcmVxdWlyZSgnLi9hZGRQYWlyVG9KU01hcC5qcycpO1xudmFyIENvbGxlY3Rpb24gPSByZXF1aXJlKCcuL0NvbGxlY3Rpb24uanMnKTtcbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vaWRlbnRpdHkuanMnKTtcbnZhciBQYWlyID0gcmVxdWlyZSgnLi9QYWlyLmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi9TY2FsYXIuanMnKTtcblxuZnVuY3Rpb24gZmluZFBhaXIoaXRlbXMsIGtleSkge1xuICAgIGNvbnN0IGsgPSBpZGVudGl0eS5pc1NjYWxhcihrZXkpID8ga2V5LnZhbHVlIDoga2V5O1xuICAgIGZvciAoY29uc3QgaXQgb2YgaXRlbXMpIHtcbiAgICAgICAgaWYgKGlkZW50aXR5LmlzUGFpcihpdCkpIHtcbiAgICAgICAgICAgIGlmIChpdC5rZXkgPT09IGtleSB8fCBpdC5rZXkgPT09IGspXG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0O1xuICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzU2NhbGFyKGl0LmtleSkgJiYgaXQua2V5LnZhbHVlID09PSBrKVxuICAgICAgICAgICAgICAgIHJldHVybiBpdDtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xufVxuY2xhc3MgWUFNTE1hcCBleHRlbmRzIENvbGxlY3Rpb24uQ29sbGVjdGlvbiB7XG4gICAgc3RhdGljIGdldCB0YWdOYW1lKCkge1xuICAgICAgICByZXR1cm4gJ3RhZzp5YW1sLm9yZywyMDAyOm1hcCc7XG4gICAgfVxuICAgIGNvbnN0cnVjdG9yKHNjaGVtYSkge1xuICAgICAgICBzdXBlcihpZGVudGl0eS5NQVAsIHNjaGVtYSk7XG4gICAgICAgIHRoaXMuaXRlbXMgPSBbXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQSBnZW5lcmljIGNvbGxlY3Rpb24gcGFyc2luZyBtZXRob2QgdGhhdCBjYW4gYmUgZXh0ZW5kZWRcbiAgICAgKiB0byBvdGhlciBub2RlIGNsYXNzZXMgdGhhdCBpbmhlcml0IGZyb20gWUFNTE1hcFxuICAgICAqL1xuICAgIHN0YXRpYyBmcm9tKHNjaGVtYSwgb2JqLCBjdHgpIHtcbiAgICAgICAgY29uc3QgeyBrZWVwVW5kZWZpbmVkLCByZXBsYWNlciB9ID0gY3R4O1xuICAgICAgICBjb25zdCBtYXAgPSBuZXcgdGhpcyhzY2hlbWEpO1xuICAgICAgICBjb25zdCBhZGQgPSAoa2V5LCB2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHJlcGxhY2VyLmNhbGwob2JqLCBrZXksIHZhbHVlKTtcbiAgICAgICAgICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocmVwbGFjZXIpICYmICFyZXBsYWNlci5pbmNsdWRlcyhrZXkpKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkIHx8IGtlZXBVbmRlZmluZWQpXG4gICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goUGFpci5jcmVhdGVQYWlyKGtleSwgdmFsdWUsIGN0eCkpO1xuICAgICAgICB9O1xuICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgTWFwKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBvYmopXG4gICAgICAgICAgICAgICAgYWRkKGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKG9iaiAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMob2JqKSlcbiAgICAgICAgICAgICAgICBhZGQoa2V5LCBvYmpba2V5XSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEuc29ydE1hcEVudHJpZXMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIG1hcC5pdGVtcy5zb3J0KHNjaGVtYS5zb3J0TWFwRW50cmllcyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG1hcDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQWRkcyBhIHZhbHVlIHRvIHRoZSBjb2xsZWN0aW9uLlxuICAgICAqXG4gICAgICogQHBhcmFtIG92ZXJ3cml0ZSAtIElmIG5vdCBzZXQgYHRydWVgLCB1c2luZyBhIGtleSB0aGF0IGlzIGFscmVhZHkgaW4gdGhlXG4gICAgICogICBjb2xsZWN0aW9uIHdpbGwgdGhyb3cuIE90aGVyd2lzZSwgb3ZlcndyaXRlcyB0aGUgcHJldmlvdXMgdmFsdWUuXG4gICAgICovXG4gICAgYWRkKHBhaXIsIG92ZXJ3cml0ZSkge1xuICAgICAgICBsZXQgX3BhaXI7XG4gICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIocGFpcikpXG4gICAgICAgICAgICBfcGFpciA9IHBhaXI7XG4gICAgICAgIGVsc2UgaWYgKCFwYWlyIHx8IHR5cGVvZiBwYWlyICE9PSAnb2JqZWN0JyB8fCAhKCdrZXknIGluIHBhaXIpKSB7XG4gICAgICAgICAgICAvLyBJbiBUeXBlU2NyaXB0LCB0aGlzIG5ldmVyIGhhcHBlbnMuXG4gICAgICAgICAgICBfcGFpciA9IG5ldyBQYWlyLlBhaXIocGFpciwgcGFpcj8udmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIF9wYWlyID0gbmV3IFBhaXIuUGFpcihwYWlyLmtleSwgcGFpci52YWx1ZSk7XG4gICAgICAgIGNvbnN0IHByZXYgPSBmaW5kUGFpcih0aGlzLml0ZW1zLCBfcGFpci5rZXkpO1xuICAgICAgICBjb25zdCBzb3J0RW50cmllcyA9IHRoaXMuc2NoZW1hPy5zb3J0TWFwRW50cmllcztcbiAgICAgICAgaWYgKHByZXYpIHtcbiAgICAgICAgICAgIGlmICghb3ZlcndyaXRlKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgS2V5ICR7X3BhaXIua2V5fSBhbHJlYWR5IHNldGApO1xuICAgICAgICAgICAgLy8gRm9yIHNjYWxhcnMsIGtlZXAgdGhlIG9sZCBub2RlICYgaXRzIGNvbW1lbnRzIGFuZCBhbmNob3JzXG4gICAgICAgICAgICBpZiAoaWRlbnRpdHkuaXNTY2FsYXIocHJldi52YWx1ZSkgJiYgU2NhbGFyLmlzU2NhbGFyVmFsdWUoX3BhaXIudmFsdWUpKVxuICAgICAgICAgICAgICAgIHByZXYudmFsdWUudmFsdWUgPSBfcGFpci52YWx1ZTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gX3BhaXIudmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoc29ydEVudHJpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGkgPSB0aGlzLml0ZW1zLmZpbmRJbmRleChpdGVtID0+IHNvcnRFbnRyaWVzKF9wYWlyLCBpdGVtKSA8IDApO1xuICAgICAgICAgICAgaWYgKGkgPT09IC0xKVxuICAgICAgICAgICAgICAgIHRoaXMuaXRlbXMucHVzaChfcGFpcik7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtcy5zcGxpY2UoaSwgMCwgX3BhaXIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pdGVtcy5wdXNoKF9wYWlyKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkZWxldGUoa2V5KSB7XG4gICAgICAgIGNvbnN0IGl0ID0gZmluZFBhaXIodGhpcy5pdGVtcywga2V5KTtcbiAgICAgICAgaWYgKCFpdClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgZGVsID0gdGhpcy5pdGVtcy5zcGxpY2UodGhpcy5pdGVtcy5pbmRleE9mKGl0KSwgMSk7XG4gICAgICAgIHJldHVybiBkZWwubGVuZ3RoID4gMDtcbiAgICB9XG4gICAgZ2V0KGtleSwga2VlcFNjYWxhcikge1xuICAgICAgICBjb25zdCBpdCA9IGZpbmRQYWlyKHRoaXMuaXRlbXMsIGtleSk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSBpdD8udmFsdWU7XG4gICAgICAgIHJldHVybiAoIWtlZXBTY2FsYXIgJiYgaWRlbnRpdHkuaXNTY2FsYXIobm9kZSkgPyBub2RlLnZhbHVlIDogbm9kZSkgPz8gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBoYXMoa2V5KSB7XG4gICAgICAgIHJldHVybiAhIWZpbmRQYWlyKHRoaXMuaXRlbXMsIGtleSk7XG4gICAgfVxuICAgIHNldChrZXksIHZhbHVlKSB7XG4gICAgICAgIHRoaXMuYWRkKG5ldyBQYWlyLlBhaXIoa2V5LCB2YWx1ZSksIHRydWUpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gY3R4IC0gQ29udmVyc2lvbiBjb250ZXh0LCBvcmlnaW5hbGx5IHNldCBpbiBEb2N1bWVudCN0b0pTKClcbiAgICAgKiBAcGFyYW0ge0NsYXNzfSBUeXBlIC0gSWYgc2V0LCBmb3JjZXMgdGhlIHJldHVybmVkIGNvbGxlY3Rpb24gdHlwZVxuICAgICAqIEByZXR1cm5zIEluc3RhbmNlIG9mIFR5cGUsIE1hcCwgb3IgT2JqZWN0XG4gICAgICovXG4gICAgdG9KU09OKF8sIGN0eCwgVHlwZSkge1xuICAgICAgICBjb25zdCBtYXAgPSBUeXBlID8gbmV3IFR5cGUoKSA6IGN0eD8ubWFwQXNNYXAgPyBuZXcgTWFwKCkgOiB7fTtcbiAgICAgICAgaWYgKGN0eD8ub25DcmVhdGUpXG4gICAgICAgICAgICBjdHgub25DcmVhdGUobWFwKTtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHRoaXMuaXRlbXMpXG4gICAgICAgICAgICBhZGRQYWlyVG9KU01hcC5hZGRQYWlyVG9KU01hcChjdHgsIG1hcCwgaXRlbSk7XG4gICAgICAgIHJldHVybiBtYXA7XG4gICAgfVxuICAgIHRvU3RyaW5nKGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICBpZiAoIWN0eClcbiAgICAgICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzKTtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHRoaXMuaXRlbXMpIHtcbiAgICAgICAgICAgIGlmICghaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTWFwIGl0ZW1zIG11c3QgYWxsIGJlIHBhaXJzOyBmb3VuZCAke0pTT04uc3RyaW5naWZ5KGl0ZW0pfSBpbnN0ZWFkYCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFjdHguYWxsTnVsbFZhbHVlcyAmJiB0aGlzLmhhc0FsbE51bGxWYWx1ZXMoZmFsc2UpKVxuICAgICAgICAgICAgY3R4ID0gT2JqZWN0LmFzc2lnbih7fSwgY3R4LCB7IGFsbE51bGxWYWx1ZXM6IHRydWUgfSk7XG4gICAgICAgIHJldHVybiBzdHJpbmdpZnlDb2xsZWN0aW9uLnN0cmluZ2lmeUNvbGxlY3Rpb24odGhpcywgY3R4LCB7XG4gICAgICAgICAgICBibG9ja0l0ZW1QcmVmaXg6ICcnLFxuICAgICAgICAgICAgZmxvd0NoYXJzOiB7IHN0YXJ0OiAneycsIGVuZDogJ30nIH0sXG4gICAgICAgICAgICBpdGVtSW5kZW50OiBjdHguaW5kZW50IHx8ICcnLFxuICAgICAgICAgICAgb25DaG9tcEtlZXAsXG4gICAgICAgICAgICBvbkNvbW1lbnRcbiAgICAgICAgfSk7XG4gICAgfVxufVxuXG5leHBvcnRzLllBTUxNYXAgPSBZQU1MTWFwO1xuZXhwb3J0cy5maW5kUGFpciA9IGZpbmRQYWlyO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBZQU1MTWFwID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvWUFNTE1hcC5qcycpO1xuXG5jb25zdCBtYXAgPSB7XG4gICAgY29sbGVjdGlvbjogJ21hcCcsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICBub2RlQ2xhc3M6IFlBTUxNYXAuWUFNTE1hcCxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjptYXAnLFxuICAgIHJlc29sdmUobWFwLCBvbkVycm9yKSB7XG4gICAgICAgIGlmICghaWRlbnRpdHkuaXNNYXAobWFwKSlcbiAgICAgICAgICAgIG9uRXJyb3IoJ0V4cGVjdGVkIGEgbWFwcGluZyBmb3IgdGhpcyB0YWcnKTtcbiAgICAgICAgcmV0dXJuIG1hcDtcbiAgICB9LFxuICAgIGNyZWF0ZU5vZGU6IChzY2hlbWEsIG9iaiwgY3R4KSA9PiBZQU1MTWFwLllBTUxNYXAuZnJvbShzY2hlbWEsIG9iaiwgY3R4KVxufTtcblxuZXhwb3J0cy5tYXAgPSBtYXA7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgY3JlYXRlTm9kZSA9IHJlcXVpcmUoJy4uL2RvYy9jcmVhdGVOb2RlLmpzJyk7XG52YXIgc3RyaW5naWZ5Q29sbGVjdGlvbiA9IHJlcXVpcmUoJy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlDb2xsZWN0aW9uLmpzJyk7XG52YXIgQ29sbGVjdGlvbiA9IHJlcXVpcmUoJy4vQ29sbGVjdGlvbi5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eS5qcycpO1xudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4vU2NhbGFyLmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4vdG9KUy5qcycpO1xuXG5jbGFzcyBZQU1MU2VxIGV4dGVuZHMgQ29sbGVjdGlvbi5Db2xsZWN0aW9uIHtcbiAgICBzdGF0aWMgZ2V0IHRhZ05hbWUoKSB7XG4gICAgICAgIHJldHVybiAndGFnOnlhbWwub3JnLDIwMDI6c2VxJztcbiAgICB9XG4gICAgY29uc3RydWN0b3Ioc2NoZW1hKSB7XG4gICAgICAgIHN1cGVyKGlkZW50aXR5LlNFUSwgc2NoZW1hKTtcbiAgICAgICAgdGhpcy5pdGVtcyA9IFtdO1xuICAgIH1cbiAgICBhZGQodmFsdWUpIHtcbiAgICAgICAgdGhpcy5pdGVtcy5wdXNoKHZhbHVlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGNvbGxlY3Rpb24uXG4gICAgICpcbiAgICAgKiBga2V5YCBtdXN0IGNvbnRhaW4gYSByZXByZXNlbnRhdGlvbiBvZiBhbiBpbnRlZ2VyIGZvciB0aGlzIHRvIHN1Y2NlZWQuXG4gICAgICogSXQgbWF5IGJlIHdyYXBwZWQgaW4gYSBgU2NhbGFyYC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgaXRlbSB3YXMgZm91bmQgYW5kIHJlbW92ZWQuXG4gICAgICovXG4gICAgZGVsZXRlKGtleSkge1xuICAgICAgICBjb25zdCBpZHggPSBhc0l0ZW1JbmRleChrZXkpO1xuICAgICAgICBpZiAodHlwZW9mIGlkeCAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IGRlbCA9IHRoaXMuaXRlbXMuc3BsaWNlKGlkeCwgMSk7XG4gICAgICAgIHJldHVybiBkZWwubGVuZ3RoID4gMDtcbiAgICB9XG4gICAgZ2V0KGtleSwga2VlcFNjYWxhcikge1xuICAgICAgICBjb25zdCBpZHggPSBhc0l0ZW1JbmRleChrZXkpO1xuICAgICAgICBpZiAodHlwZW9mIGlkeCAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBpdCA9IHRoaXMuaXRlbXNbaWR4XTtcbiAgICAgICAgcmV0dXJuICFrZWVwU2NhbGFyICYmIGlkZW50aXR5LmlzU2NhbGFyKGl0KSA/IGl0LnZhbHVlIDogaXQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGUgY29sbGVjdGlvbiBpbmNsdWRlcyBhIHZhbHVlIHdpdGggdGhlIGtleSBga2V5YC5cbiAgICAgKlxuICAgICAqIGBrZXlgIG11c3QgY29udGFpbiBhIHJlcHJlc2VudGF0aW9uIG9mIGFuIGludGVnZXIgZm9yIHRoaXMgdG8gc3VjY2VlZC5cbiAgICAgKiBJdCBtYXkgYmUgd3JhcHBlZCBpbiBhIGBTY2FsYXJgLlxuICAgICAqL1xuICAgIGhhcyhrZXkpIHtcbiAgICAgICAgY29uc3QgaWR4ID0gYXNJdGVtSW5kZXgoa2V5KTtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBpZHggPT09ICdudW1iZXInICYmIGlkeCA8IHRoaXMuaXRlbXMubGVuZ3RoO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBjb2xsZWN0aW9uLiBGb3IgYCEhc2V0YCwgYHZhbHVlYCBuZWVkcyB0byBiZSBhXG4gICAgICogYm9vbGVhbiB0byBhZGQvcmVtb3ZlIHRoZSBpdGVtIGZyb20gdGhlIHNldC5cbiAgICAgKlxuICAgICAqIElmIGBrZXlgIGRvZXMgbm90IGNvbnRhaW4gYSByZXByZXNlbnRhdGlvbiBvZiBhbiBpbnRlZ2VyLCB0aGlzIHdpbGwgdGhyb3cuXG4gICAgICogSXQgbWF5IGJlIHdyYXBwZWQgaW4gYSBgU2NhbGFyYC5cbiAgICAgKi9cbiAgICBzZXQoa2V5LCB2YWx1ZSkge1xuICAgICAgICBjb25zdCBpZHggPSBhc0l0ZW1JbmRleChrZXkpO1xuICAgICAgICBpZiAodHlwZW9mIGlkeCAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIGEgdmFsaWQgaW5kZXgsIG5vdCAke2tleX0uYCk7XG4gICAgICAgIGNvbnN0IHByZXYgPSB0aGlzLml0ZW1zW2lkeF07XG4gICAgICAgIGlmIChpZGVudGl0eS5pc1NjYWxhcihwcmV2KSAmJiBTY2FsYXIuaXNTY2FsYXJWYWx1ZSh2YWx1ZSkpXG4gICAgICAgICAgICBwcmV2LnZhbHVlID0gdmFsdWU7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRoaXMuaXRlbXNbaWR4XSA9IHZhbHVlO1xuICAgIH1cbiAgICB0b0pTT04oXywgY3R4KSB7XG4gICAgICAgIGNvbnN0IHNlcSA9IFtdO1xuICAgICAgICBpZiAoY3R4Py5vbkNyZWF0ZSlcbiAgICAgICAgICAgIGN0eC5vbkNyZWF0ZShzZXEpO1xuICAgICAgICBsZXQgaSA9IDA7XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0aGlzLml0ZW1zKVxuICAgICAgICAgICAgc2VxLnB1c2godG9KUy50b0pTKGl0ZW0sIFN0cmluZyhpKyspLCBjdHgpKTtcbiAgICAgICAgcmV0dXJuIHNlcTtcbiAgICB9XG4gICAgdG9TdHJpbmcoY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKSB7XG4gICAgICAgIGlmICghY3R4KVxuICAgICAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMpO1xuICAgICAgICByZXR1cm4gc3RyaW5naWZ5Q29sbGVjdGlvbi5zdHJpbmdpZnlDb2xsZWN0aW9uKHRoaXMsIGN0eCwge1xuICAgICAgICAgICAgYmxvY2tJdGVtUHJlZml4OiAnLSAnLFxuICAgICAgICAgICAgZmxvd0NoYXJzOiB7IHN0YXJ0OiAnWycsIGVuZDogJ10nIH0sXG4gICAgICAgICAgICBpdGVtSW5kZW50OiAoY3R4LmluZGVudCB8fCAnJykgKyAnICAnLFxuICAgICAgICAgICAgb25DaG9tcEtlZXAsXG4gICAgICAgICAgICBvbkNvbW1lbnRcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBmcm9tKHNjaGVtYSwgb2JqLCBjdHgpIHtcbiAgICAgICAgY29uc3QgeyByZXBsYWNlciB9ID0gY3R4O1xuICAgICAgICBjb25zdCBzZXEgPSBuZXcgdGhpcyhzY2hlbWEpO1xuICAgICAgICBpZiAob2JqICYmIFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3Qob2JqKSkge1xuICAgICAgICAgICAgbGV0IGkgPSAwO1xuICAgICAgICAgICAgZm9yIChsZXQgaXQgb2Ygb2JqKSB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXkgPSBvYmogaW5zdGFuY2VvZiBTZXQgPyBpdCA6IFN0cmluZyhpKyspO1xuICAgICAgICAgICAgICAgICAgICBpdCA9IHJlcGxhY2VyLmNhbGwob2JqLCBrZXksIGl0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc2VxLml0ZW1zLnB1c2goY3JlYXRlTm9kZS5jcmVhdGVOb2RlKGl0LCB1bmRlZmluZWQsIGN0eCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzZXE7XG4gICAgfVxufVxuZnVuY3Rpb24gYXNJdGVtSW5kZXgoa2V5KSB7XG4gICAgbGV0IGlkeCA9IGlkZW50aXR5LmlzU2NhbGFyKGtleSkgPyBrZXkudmFsdWUgOiBrZXk7XG4gICAgaWYgKGlkeCAmJiB0eXBlb2YgaWR4ID09PSAnc3RyaW5nJylcbiAgICAgICAgaWR4ID0gTnVtYmVyKGlkeCk7XG4gICAgcmV0dXJuIHR5cGVvZiBpZHggPT09ICdudW1iZXInICYmIE51bWJlci5pc0ludGVnZXIoaWR4KSAmJiBpZHggPj0gMFxuICAgICAgICA/IGlkeFxuICAgICAgICA6IG51bGw7XG59XG5cbmV4cG9ydHMuWUFNTFNlcSA9IFlBTUxTZXE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFlBTUxTZXEgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9ZQU1MU2VxLmpzJyk7XG5cbmNvbnN0IHNlcSA9IHtcbiAgICBjb2xsZWN0aW9uOiAnc2VxJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIG5vZGVDbGFzczogWUFNTFNlcS5ZQU1MU2VxLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOnNlcScsXG4gICAgcmVzb2x2ZShzZXEsIG9uRXJyb3IpIHtcbiAgICAgICAgaWYgKCFpZGVudGl0eS5pc1NlcShzZXEpKVxuICAgICAgICAgICAgb25FcnJvcignRXhwZWN0ZWQgYSBzZXF1ZW5jZSBmb3IgdGhpcyB0YWcnKTtcbiAgICAgICAgcmV0dXJuIHNlcTtcbiAgICB9LFxuICAgIGNyZWF0ZU5vZGU6IChzY2hlbWEsIG9iaiwgY3R4KSA9PiBZQU1MU2VxLllBTUxTZXEuZnJvbShzY2hlbWEsIG9iaiwgY3R4KVxufTtcblxuZXhwb3J0cy5zZXEgPSBzZXE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgc3RyaW5naWZ5U3RyaW5nID0gcmVxdWlyZSgnLi4vLi4vc3RyaW5naWZ5L3N0cmluZ2lmeVN0cmluZy5qcycpO1xuXG5jb25zdCBzdHJpbmcgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpzdHInLFxuICAgIHJlc29sdmU6IHN0ciA9PiBzdHIsXG4gICAgc3RyaW5naWZ5KGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICBjdHggPSBPYmplY3QuYXNzaWduKHsgYWN0dWFsU3RyaW5nOiB0cnVlIH0sIGN0eCk7XG4gICAgICAgIHJldHVybiBzdHJpbmdpZnlTdHJpbmcuc3RyaW5naWZ5U3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxufTtcblxuZXhwb3J0cy5zdHJpbmcgPSBzdHJpbmc7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbmNvbnN0IG51bGxUYWcgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHZhbHVlID09IG51bGwsXG4gICAgY3JlYXRlTm9kZTogKCkgPT4gbmV3IFNjYWxhci5TY2FsYXIobnVsbCksXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpudWxsJyxcbiAgICB0ZXN0OiAvXig/On58W05uXXVsbHxOVUxMKT8kLyxcbiAgICByZXNvbHZlOiAoKSA9PiBuZXcgU2NhbGFyLlNjYWxhcihudWxsKSxcbiAgICBzdHJpbmdpZnk6ICh7IHNvdXJjZSB9LCBjdHgpID0+IHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnICYmIG51bGxUYWcudGVzdC50ZXN0KHNvdXJjZSlcbiAgICAgICAgPyBzb3VyY2VcbiAgICAgICAgOiBjdHgub3B0aW9ucy5udWxsU3RyXG59O1xuXG5leHBvcnRzLm51bGxUYWcgPSBudWxsVGFnO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1NjYWxhci5qcycpO1xuXG5jb25zdCBib29sVGFnID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmJvb2wnLFxuICAgIHRlc3Q6IC9eKD86W1R0XXJ1ZXxUUlVFfFtGZl1hbHNlfEZBTFNFKSQvLFxuICAgIHJlc29sdmU6IHN0ciA9PiBuZXcgU2NhbGFyLlNjYWxhcihzdHJbMF0gPT09ICd0JyB8fCBzdHJbMF0gPT09ICdUJyksXG4gICAgc3RyaW5naWZ5KHsgc291cmNlLCB2YWx1ZSB9LCBjdHgpIHtcbiAgICAgICAgaWYgKHNvdXJjZSAmJiBib29sVGFnLnRlc3QudGVzdChzb3VyY2UpKSB7XG4gICAgICAgICAgICBjb25zdCBzdiA9IHNvdXJjZVswXSA9PT0gJ3QnIHx8IHNvdXJjZVswXSA9PT0gJ1QnO1xuICAgICAgICAgICAgaWYgKHZhbHVlID09PSBzdilcbiAgICAgICAgICAgICAgICByZXR1cm4gc291cmNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZSA/IGN0eC5vcHRpb25zLnRydWVTdHIgOiBjdHgub3B0aW9ucy5mYWxzZVN0cjtcbiAgICB9XG59O1xuXG5leHBvcnRzLmJvb2xUYWcgPSBib29sVGFnO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuZnVuY3Rpb24gc3RyaW5naWZ5TnVtYmVyKHsgZm9ybWF0LCBtaW5GcmFjdGlvbkRpZ2l0cywgdGFnLCB2YWx1ZSB9KSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcpXG4gICAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpO1xuICAgIGNvbnN0IG51bSA9IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgPyB2YWx1ZSA6IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKCFpc0Zpbml0ZShudW0pKVxuICAgICAgICByZXR1cm4gaXNOYU4obnVtKSA/ICcubmFuJyA6IG51bSA8IDAgPyAnLS5pbmYnIDogJy5pbmYnO1xuICAgIGxldCBuID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgIGlmICghZm9ybWF0ICYmXG4gICAgICAgIG1pbkZyYWN0aW9uRGlnaXRzICYmXG4gICAgICAgICghdGFnIHx8IHRhZyA9PT0gJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JykgJiZcbiAgICAgICAgL15cXGQvLnRlc3QobikpIHtcbiAgICAgICAgbGV0IGkgPSBuLmluZGV4T2YoJy4nKTtcbiAgICAgICAgaWYgKGkgPCAwKSB7XG4gICAgICAgICAgICBpID0gbi5sZW5ndGg7XG4gICAgICAgICAgICBuICs9ICcuJztcbiAgICAgICAgfVxuICAgICAgICBsZXQgZCA9IG1pbkZyYWN0aW9uRGlnaXRzIC0gKG4ubGVuZ3RoIC0gaSAtIDEpO1xuICAgICAgICB3aGlsZSAoZC0tID4gMClcbiAgICAgICAgICAgIG4gKz0gJzAnO1xuICAgIH1cbiAgICByZXR1cm4gbjtcbn1cblxuZXhwb3J0cy5zdHJpbmdpZnlOdW1iZXIgPSBzdHJpbmdpZnlOdW1iZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgc3RyaW5naWZ5TnVtYmVyID0gcmVxdWlyZSgnLi4vLi4vc3RyaW5naWZ5L3N0cmluZ2lmeU51bWJlci5qcycpO1xuXG5jb25zdCBmbG9hdE5hTiA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JyxcbiAgICB0ZXN0OiAvXig/OlstK10/XFwuKD86aW5mfEluZnxJTkYpfFxcLm5hbnxcXC5OYU58XFwuTkFOKSQvLFxuICAgIHJlc29sdmU6IHN0ciA9PiBzdHIuc2xpY2UoLTMpLnRvTG93ZXJDYXNlKCkgPT09ICduYW4nXG4gICAgICAgID8gTmFOXG4gICAgICAgIDogc3RyWzBdID09PSAnLSdcbiAgICAgICAgICAgID8gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZXG4gICAgICAgICAgICA6IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxcbiAgICBzdHJpbmdpZnk6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXJcbn07XG5jb25zdCBmbG9hdEV4cCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JyxcbiAgICBmb3JtYXQ6ICdFWFAnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpcXC5bMC05XSt8WzAtOV0rKD86XFwuWzAtOV0qKT8pW2VFXVstK10/WzAtOV0rJC8sXG4gICAgcmVzb2x2ZTogc3RyID0+IHBhcnNlRmxvYXQoc3RyKSxcbiAgICBzdHJpbmdpZnkobm9kZSkge1xuICAgICAgICBjb25zdCBudW0gPSBOdW1iZXIobm9kZS52YWx1ZSk7XG4gICAgICAgIHJldHVybiBpc0Zpbml0ZShudW0pID8gbnVtLnRvRXhwb25lbnRpYWwoKSA6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG4gICAgfVxufTtcbmNvbnN0IGZsb2F0ID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6ZmxvYXQnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpcXC5bMC05XSt8WzAtOV0rXFwuWzAtOV0qKSQvLFxuICAgIHJlc29sdmUoc3RyKSB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgU2NhbGFyLlNjYWxhcihwYXJzZUZsb2F0KHN0cikpO1xuICAgICAgICBjb25zdCBkb3QgPSBzdHIuaW5kZXhPZignLicpO1xuICAgICAgICBpZiAoZG90ICE9PSAtMSAmJiBzdHJbc3RyLmxlbmd0aCAtIDFdID09PSAnMCcpXG4gICAgICAgICAgICBub2RlLm1pbkZyYWN0aW9uRGlnaXRzID0gc3RyLmxlbmd0aCAtIGRvdCAtIDE7XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH0sXG4gICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlOdW1iZXIuc3RyaW5naWZ5TnVtYmVyXG59O1xuXG5leHBvcnRzLmZsb2F0ID0gZmxvYXQ7XG5leHBvcnRzLmZsb2F0RXhwID0gZmxvYXRFeHA7XG5leHBvcnRzLmZsb2F0TmFOID0gZmxvYXROYU47XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgc3RyaW5naWZ5TnVtYmVyID0gcmVxdWlyZSgnLi4vLi4vc3RyaW5naWZ5L3N0cmluZ2lmeU51bWJlci5qcycpO1xuXG5jb25zdCBpbnRJZGVudGlmeSA9ICh2YWx1ZSkgPT4gdHlwZW9mIHZhbHVlID09PSAnYmlnaW50JyB8fCBOdW1iZXIuaXNJbnRlZ2VyKHZhbHVlKTtcbmNvbnN0IGludFJlc29sdmUgPSAoc3RyLCBvZmZzZXQsIHJhZGl4LCB7IGludEFzQmlnSW50IH0pID0+IChpbnRBc0JpZ0ludCA/IEJpZ0ludChzdHIpIDogcGFyc2VJbnQoc3RyLnN1YnN0cmluZyhvZmZzZXQpLCByYWRpeCkpO1xuZnVuY3Rpb24gaW50U3RyaW5naWZ5KG5vZGUsIHJhZGl4LCBwcmVmaXgpIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBub2RlO1xuICAgIGlmIChpbnRJZGVudGlmeSh2YWx1ZSkgJiYgdmFsdWUgPj0gMClcbiAgICAgICAgcmV0dXJuIHByZWZpeCArIHZhbHVlLnRvU3RyaW5nKHJhZGl4KTtcbiAgICByZXR1cm4gc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlcihub2RlKTtcbn1cbmNvbnN0IGludE9jdCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gaW50SWRlbnRpZnkodmFsdWUpICYmIHZhbHVlID49IDAsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjppbnQnLFxuICAgIGZvcm1hdDogJ09DVCcsXG4gICAgdGVzdDogL14wb1swLTddKyQvLFxuICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCBvcHQpID0+IGludFJlc29sdmUoc3RyLCAyLCA4LCBvcHQpLFxuICAgIHN0cmluZ2lmeTogbm9kZSA9PiBpbnRTdHJpbmdpZnkobm9kZSwgOCwgJzBvJylcbn07XG5jb25zdCBpbnQgPSB7XG4gICAgaWRlbnRpZnk6IGludElkZW50aWZ5LFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICB0ZXN0OiAvXlstK10/WzAtOV0rJC8sXG4gICAgcmVzb2x2ZTogKHN0ciwgX29uRXJyb3IsIG9wdCkgPT4gaW50UmVzb2x2ZShzdHIsIDAsIDEwLCBvcHQpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlclxufTtcbmNvbnN0IGludEhleCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gaW50SWRlbnRpZnkodmFsdWUpICYmIHZhbHVlID49IDAsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjppbnQnLFxuICAgIGZvcm1hdDogJ0hFWCcsXG4gICAgdGVzdDogL14weFswLTlhLWZBLUZdKyQvLFxuICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCBvcHQpID0+IGludFJlc29sdmUoc3RyLCAyLCAxNiwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDE2LCAnMHgnKVxufTtcblxuZXhwb3J0cy5pbnQgPSBpbnQ7XG5leHBvcnRzLmludEhleCA9IGludEhleDtcbmV4cG9ydHMuaW50T2N0ID0gaW50T2N0O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIG1hcCA9IHJlcXVpcmUoJy4uL2NvbW1vbi9tYXAuanMnKTtcbnZhciBfbnVsbCA9IHJlcXVpcmUoJy4uL2NvbW1vbi9udWxsLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi4vY29tbW9uL3NlcS5qcycpO1xudmFyIHN0cmluZyA9IHJlcXVpcmUoJy4uL2NvbW1vbi9zdHJpbmcuanMnKTtcbnZhciBib29sID0gcmVxdWlyZSgnLi9ib29sLmpzJyk7XG52YXIgZmxvYXQgPSByZXF1aXJlKCcuL2Zsb2F0LmpzJyk7XG52YXIgaW50ID0gcmVxdWlyZSgnLi9pbnQuanMnKTtcblxuY29uc3Qgc2NoZW1hID0gW1xuICAgIG1hcC5tYXAsXG4gICAgc2VxLnNlcSxcbiAgICBzdHJpbmcuc3RyaW5nLFxuICAgIF9udWxsLm51bGxUYWcsXG4gICAgYm9vbC5ib29sVGFnLFxuICAgIGludC5pbnRPY3QsXG4gICAgaW50LmludCxcbiAgICBpbnQuaW50SGV4LFxuICAgIGZsb2F0LmZsb2F0TmFOLFxuICAgIGZsb2F0LmZsb2F0RXhwLFxuICAgIGZsb2F0LmZsb2F0XG5dO1xuXG5leHBvcnRzLnNjaGVtYSA9IHNjaGVtYTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciBtYXAgPSByZXF1aXJlKCcuLi9jb21tb24vbWFwLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi4vY29tbW9uL3NlcS5qcycpO1xuXG5mdW5jdGlvbiBpbnRJZGVudGlmeSh2YWx1ZSkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnIHx8IE51bWJlci5pc0ludGVnZXIodmFsdWUpO1xufVxuY29uc3Qgc3RyaW5naWZ5SlNPTiA9ICh7IHZhbHVlIH0pID0+IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbmNvbnN0IGpzb25TY2FsYXJzID0gW1xuICAgIHtcbiAgICAgICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycsXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOnN0cicsXG4gICAgICAgIHJlc29sdmU6IHN0ciA9PiBzdHIsXG4gICAgICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5SlNPTlxuICAgIH0sXG4gICAge1xuICAgICAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgPT0gbnVsbCxcbiAgICAgICAgY3JlYXRlTm9kZTogKCkgPT4gbmV3IFNjYWxhci5TY2FsYXIobnVsbCksXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOm51bGwnLFxuICAgICAgICB0ZXN0OiAvXm51bGwkLyxcbiAgICAgICAgcmVzb2x2ZTogKCkgPT4gbnVsbCxcbiAgICAgICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlKU09OXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJyxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6Ym9vbCcsXG4gICAgICAgIHRlc3Q6IC9edHJ1ZSR8XmZhbHNlJC8sXG4gICAgICAgIHJlc29sdmU6IHN0ciA9PiBzdHIgPT09ICd0cnVlJyxcbiAgICAgICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlKU09OXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlkZW50aWZ5OiBpbnRJZGVudGlmeSxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICAgICAgdGVzdDogL14tPyg/OjB8WzEtOV1bMC05XSopJC8sXG4gICAgICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCB7IGludEFzQmlnSW50IH0pID0+IGludEFzQmlnSW50ID8gQmlnSW50KHN0cikgOiBwYXJzZUludChzdHIsIDEwKSxcbiAgICAgICAgc3RyaW5naWZ5OiAoeyB2YWx1ZSB9KSA9PiBpbnRJZGVudGlmeSh2YWx1ZSkgPyB2YWx1ZS50b1N0cmluZygpIDogSlNPTi5zdHJpbmdpZnkodmFsdWUpXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0OiB0cnVlLFxuICAgICAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCcsXG4gICAgICAgIHRlc3Q6IC9eLT8oPzowfFsxLTldWzAtOV0qKSg/OlxcLlswLTldKik/KD86W2VFXVstK10/WzAtOV0rKT8kLyxcbiAgICAgICAgcmVzb2x2ZTogc3RyID0+IHBhcnNlRmxvYXQoc3RyKSxcbiAgICAgICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlKU09OXG4gICAgfVxuXTtcbmNvbnN0IGpzb25FcnJvciA9IHtcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJycsXG4gICAgdGVzdDogL14vLFxuICAgIHJlc29sdmUoc3RyLCBvbkVycm9yKSB7XG4gICAgICAgIG9uRXJyb3IoYFVucmVzb2x2ZWQgcGxhaW4gc2NhbGFyICR7SlNPTi5zdHJpbmdpZnkoc3RyKX1gKTtcbiAgICAgICAgcmV0dXJuIHN0cjtcbiAgICB9XG59O1xuY29uc3Qgc2NoZW1hID0gW21hcC5tYXAsIHNlcS5zZXFdLmNvbmNhdChqc29uU2NhbGFycywganNvbkVycm9yKTtcblxuZXhwb3J0cy5zY2hlbWEgPSBzY2hlbWE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbm9kZV9idWZmZXIgPSByZXF1aXJlKCdidWZmZXInKTtcbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciBzdHJpbmdpZnlTdHJpbmcgPSByZXF1aXJlKCcuLi8uLi9zdHJpbmdpZnkvc3RyaW5naWZ5U3RyaW5nLmpzJyk7XG5cbmNvbnN0IGJpbmFyeSA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgaW5zdGFuY2VvZiBVaW50OEFycmF5LCAvLyBCdWZmZXIgaW5oZXJpdHMgZnJvbSBVaW50OEFycmF5XG4gICAgZGVmYXVsdDogZmFsc2UsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5JyxcbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgQnVmZmVyIGluIG5vZGUgYW5kIGFuIFVpbnQ4QXJyYXkgaW4gYnJvd3NlcnNcbiAgICAgKlxuICAgICAqIFRvIHVzZSB0aGUgcmVzdWx0aW5nIGJ1ZmZlciBhcyBhbiBpbWFnZSwgeW91J2xsIHdhbnQgdG8gZG8gc29tZXRoaW5nIGxpa2U6XG4gICAgICpcbiAgICAgKiAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYnVmZmVyXSwgeyB0eXBlOiAnaW1hZ2UvanBlZycgfSlcbiAgICAgKiAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNwaG90bycpLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYilcbiAgICAgKi9cbiAgICByZXNvbHZlKHNyYywgb25FcnJvcikge1xuICAgICAgICBpZiAodHlwZW9mIG5vZGVfYnVmZmVyLkJ1ZmZlciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcmV0dXJuIG5vZGVfYnVmZmVyLkJ1ZmZlci5mcm9tKHNyYywgJ2Jhc2U2NCcpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHR5cGVvZiBhdG9iID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAvLyBPbiBJRSAxMSwgYXRvYigpIGNhbid0IGhhbmRsZSBuZXdsaW5lc1xuICAgICAgICAgICAgY29uc3Qgc3RyID0gYXRvYihzcmMucmVwbGFjZSgvW1xcblxccl0vZywgJycpKTtcbiAgICAgICAgICAgIGNvbnN0IGJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KHN0ci5sZW5ndGgpO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyArK2kpXG4gICAgICAgICAgICAgICAgYnVmZmVyW2ldID0gc3RyLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgICAgICByZXR1cm4gYnVmZmVyO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgb25FcnJvcignVGhpcyBlbnZpcm9ubWVudCBkb2VzIG5vdCBzdXBwb3J0IHJlYWRpbmcgYmluYXJ5IHRhZ3M7IGVpdGhlciBCdWZmZXIgb3IgYXRvYiBpcyByZXF1aXJlZCcpO1xuICAgICAgICAgICAgcmV0dXJuIHNyYztcbiAgICAgICAgfVxuICAgIH0sXG4gICAgc3RyaW5naWZ5KHsgY29tbWVudCwgdHlwZSwgdmFsdWUgfSwgY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKSB7XG4gICAgICAgIGlmICghdmFsdWUpXG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIGNvbnN0IGJ1ZiA9IHZhbHVlOyAvLyBjaGVja2VkIGVhcmxpZXIgYnkgYmluYXJ5LmlkZW50aWZ5KClcbiAgICAgICAgbGV0IHN0cjtcbiAgICAgICAgaWYgKHR5cGVvZiBub2RlX2J1ZmZlci5CdWZmZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHN0ciA9XG4gICAgICAgICAgICAgICAgYnVmIGluc3RhbmNlb2Ygbm9kZV9idWZmZXIuQnVmZmVyXG4gICAgICAgICAgICAgICAgICAgID8gYnVmLnRvU3RyaW5nKCdiYXNlNjQnKVxuICAgICAgICAgICAgICAgICAgICA6IG5vZGVfYnVmZmVyLkJ1ZmZlci5mcm9tKGJ1Zi5idWZmZXIpLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgYnRvYSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgbGV0IHMgPSAnJztcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnVmLmxlbmd0aDsgKytpKVxuICAgICAgICAgICAgICAgIHMgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShidWZbaV0pO1xuICAgICAgICAgICAgc3RyID0gYnRvYShzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBlbnZpcm9ubWVudCBkb2VzIG5vdCBzdXBwb3J0IHdyaXRpbmcgYmluYXJ5IHRhZ3M7IGVpdGhlciBCdWZmZXIgb3IgYnRvYSBpcyByZXF1aXJlZCcpO1xuICAgICAgICB9XG4gICAgICAgIHR5cGUgPz8gKHR5cGUgPSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUwpO1xuICAgICAgICBpZiAodHlwZSAhPT0gU2NhbGFyLlNjYWxhci5RVU9URV9ET1VCTEUpIHtcbiAgICAgICAgICAgIGNvbnN0IGxpbmVXaWR0aCA9IE1hdGgubWF4KGN0eC5vcHRpb25zLmxpbmVXaWR0aCAtIGN0eC5pbmRlbnQubGVuZ3RoLCBjdHgub3B0aW9ucy5taW5Db250ZW50V2lkdGgpO1xuICAgICAgICAgICAgY29uc3QgbiA9IE1hdGguY2VpbChzdHIubGVuZ3RoIC8gbGluZVdpZHRoKTtcbiAgICAgICAgICAgIGNvbnN0IGxpbmVzID0gbmV3IEFycmF5KG4pO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDAsIG8gPSAwOyBpIDwgbjsgKytpLCBvICs9IGxpbmVXaWR0aCkge1xuICAgICAgICAgICAgICAgIGxpbmVzW2ldID0gc3RyLnN1YnN0cihvLCBsaW5lV2lkdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3RyID0gbGluZXMuam9pbih0eXBlID09PSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUwgPyAnXFxuJyA6ICcgJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHN0cmluZ2lmeVN0cmluZy5zdHJpbmdpZnlTdHJpbmcoeyBjb21tZW50LCB0eXBlLCB2YWx1ZTogc3RyIH0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxufTtcblxuZXhwb3J0cy5iaW5hcnkgPSBiaW5hcnk7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFBhaXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgWUFNTFNlcSA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1lBTUxTZXEuanMnKTtcblxuZnVuY3Rpb24gcmVzb2x2ZVBhaXJzKHNlcSwgb25FcnJvcikge1xuICAgIGlmIChpZGVudGl0eS5pc1NlcShzZXEpKSB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2VxLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICBsZXQgaXRlbSA9IHNlcS5pdGVtc1tpXTtcbiAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIoaXRlbSkpXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICBlbHNlIGlmIChpZGVudGl0eS5pc01hcChpdGVtKSkge1xuICAgICAgICAgICAgICAgIGlmIChpdGVtLml0ZW1zLmxlbmd0aCA+IDEpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoJ0VhY2ggcGFpciBtdXN0IGhhdmUgaXRzIG93biBzZXF1ZW5jZSBpbmRpY2F0b3InKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYWlyID0gaXRlbS5pdGVtc1swXSB8fCBuZXcgUGFpci5QYWlyKG5ldyBTY2FsYXIuU2NhbGFyKG51bGwpKTtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS5jb21tZW50QmVmb3JlKVxuICAgICAgICAgICAgICAgICAgICBwYWlyLmtleS5jb21tZW50QmVmb3JlID0gcGFpci5rZXkuY29tbWVudEJlZm9yZVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBgJHtpdGVtLmNvbW1lbnRCZWZvcmV9XFxuJHtwYWlyLmtleS5jb21tZW50QmVmb3JlfWBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogaXRlbS5jb21tZW50QmVmb3JlO1xuICAgICAgICAgICAgICAgIGlmIChpdGVtLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY24gPSBwYWlyLnZhbHVlID8/IHBhaXIua2V5O1xuICAgICAgICAgICAgICAgICAgICBjbi5jb21tZW50ID0gY24uY29tbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBgJHtpdGVtLmNvbW1lbnR9XFxuJHtjbi5jb21tZW50fWBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogaXRlbS5jb21tZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpdGVtID0gcGFpcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNlcS5pdGVtc1tpXSA9IGlkZW50aXR5LmlzUGFpcihpdGVtKSA/IGl0ZW0gOiBuZXcgUGFpci5QYWlyKGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2VcbiAgICAgICAgb25FcnJvcignRXhwZWN0ZWQgYSBzZXF1ZW5jZSBmb3IgdGhpcyB0YWcnKTtcbiAgICByZXR1cm4gc2VxO1xufVxuZnVuY3Rpb24gY3JlYXRlUGFpcnMoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSB7XG4gICAgY29uc3QgeyByZXBsYWNlciB9ID0gY3R4O1xuICAgIGNvbnN0IHBhaXJzID0gbmV3IFlBTUxTZXEuWUFNTFNlcShzY2hlbWEpO1xuICAgIHBhaXJzLnRhZyA9ICd0YWc6eWFtbC5vcmcsMjAwMjpwYWlycyc7XG4gICAgbGV0IGkgPSAwO1xuICAgIGlmIChpdGVyYWJsZSAmJiBTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGl0ZXJhYmxlKSlcbiAgICAgICAgZm9yIChsZXQgaXQgb2YgaXRlcmFibGUpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICAgICAgaXQgPSByZXBsYWNlci5jYWxsKGl0ZXJhYmxlLCBTdHJpbmcoaSsrKSwgaXQpO1xuICAgICAgICAgICAgbGV0IGtleSwgdmFsdWU7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdCkpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXQubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgICAgICAgICAgIGtleSA9IGl0WzBdO1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGl0WzFdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkIFtrZXksIHZhbHVlXSB0dXBsZTogJHtpdH1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGl0ICYmIGl0IGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGl0KTtcbiAgICAgICAgICAgICAgICBpZiAoa2V5cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAga2V5ID0ga2V5c1swXTtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBpdFtrZXldO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgdHVwbGUgd2l0aCBvbmUga2V5LCBub3QgJHtrZXlzLmxlbmd0aH0ga2V5c2ApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGtleSA9IGl0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFpcnMuaXRlbXMucHVzaChQYWlyLmNyZWF0ZVBhaXIoa2V5LCB2YWx1ZSwgY3R4KSk7XG4gICAgICAgIH1cbiAgICByZXR1cm4gcGFpcnM7XG59XG5jb25zdCBwYWlycyA9IHtcbiAgICBjb2xsZWN0aW9uOiAnc2VxJyxcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpwYWlycycsXG4gICAgcmVzb2x2ZTogcmVzb2x2ZVBhaXJzLFxuICAgIGNyZWF0ZU5vZGU6IGNyZWF0ZVBhaXJzXG59O1xuXG5leHBvcnRzLmNyZWF0ZVBhaXJzID0gY3JlYXRlUGFpcnM7XG5leHBvcnRzLnBhaXJzID0gcGFpcnM7XG5leHBvcnRzLnJlc29sdmVQYWlycyA9IHJlc29sdmVQYWlycztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL3RvSlMuanMnKTtcbnZhciBZQU1MTWFwID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvWUFNTE1hcC5qcycpO1xudmFyIFlBTUxTZXEgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9ZQU1MU2VxLmpzJyk7XG52YXIgcGFpcnMgPSByZXF1aXJlKCcuL3BhaXJzLmpzJyk7XG5cbmNsYXNzIFlBTUxPTWFwIGV4dGVuZHMgWUFNTFNlcS5ZQU1MU2VxIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5hZGQgPSBZQU1MTWFwLllBTUxNYXAucHJvdG90eXBlLmFkZC5iaW5kKHRoaXMpO1xuICAgICAgICB0aGlzLmRlbGV0ZSA9IFlBTUxNYXAuWUFNTE1hcC5wcm90b3R5cGUuZGVsZXRlLmJpbmQodGhpcyk7XG4gICAgICAgIHRoaXMuZ2V0ID0gWUFNTE1hcC5ZQU1MTWFwLnByb3RvdHlwZS5nZXQuYmluZCh0aGlzKTtcbiAgICAgICAgdGhpcy5oYXMgPSBZQU1MTWFwLllBTUxNYXAucHJvdG90eXBlLmhhcy5iaW5kKHRoaXMpO1xuICAgICAgICB0aGlzLnNldCA9IFlBTUxNYXAuWUFNTE1hcC5wcm90b3R5cGUuc2V0LmJpbmQodGhpcyk7XG4gICAgICAgIHRoaXMudGFnID0gWUFNTE9NYXAudGFnO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJZiBgY3R4YCBpcyBnaXZlbiwgdGhlIHJldHVybiB0eXBlIGlzIGFjdHVhbGx5IGBNYXA8dW5rbm93biwgdW5rbm93bj5gLFxuICAgICAqIGJ1dCBUeXBlU2NyaXB0IHdvbid0IGFsbG93IHdpZGVuaW5nIHRoZSBzaWduYXR1cmUgb2YgYSBjaGlsZCBtZXRob2QuXG4gICAgICovXG4gICAgdG9KU09OKF8sIGN0eCkge1xuICAgICAgICBpZiAoIWN0eClcbiAgICAgICAgICAgIHJldHVybiBzdXBlci50b0pTT04oXyk7XG4gICAgICAgIGNvbnN0IG1hcCA9IG5ldyBNYXAoKTtcbiAgICAgICAgaWYgKGN0eD8ub25DcmVhdGUpXG4gICAgICAgICAgICBjdHgub25DcmVhdGUobWFwKTtcbiAgICAgICAgZm9yIChjb25zdCBwYWlyIG9mIHRoaXMuaXRlbXMpIHtcbiAgICAgICAgICAgIGxldCBrZXksIHZhbHVlO1xuICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzUGFpcihwYWlyKSkge1xuICAgICAgICAgICAgICAgIGtleSA9IHRvSlMudG9KUyhwYWlyLmtleSwgJycsIGN0eCk7XG4gICAgICAgICAgICAgICAgdmFsdWUgPSB0b0pTLnRvSlMocGFpci52YWx1ZSwga2V5LCBjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAga2V5ID0gdG9KUy50b0pTKHBhaXIsICcnLCBjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG1hcC5oYXMoa2V5KSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ09yZGVyZWQgbWFwcyBtdXN0IG5vdCBpbmNsdWRlIGR1cGxpY2F0ZSBrZXlzJyk7XG4gICAgICAgICAgICBtYXAuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtYXA7XG4gICAgfVxuICAgIHN0YXRpYyBmcm9tKHNjaGVtYSwgaXRlcmFibGUsIGN0eCkge1xuICAgICAgICBjb25zdCBwYWlycyQxID0gcGFpcnMuY3JlYXRlUGFpcnMoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KTtcbiAgICAgICAgY29uc3Qgb21hcCA9IG5ldyB0aGlzKCk7XG4gICAgICAgIG9tYXAuaXRlbXMgPSBwYWlycyQxLml0ZW1zO1xuICAgICAgICByZXR1cm4gb21hcDtcbiAgICB9XG59XG5ZQU1MT01hcC50YWcgPSAndGFnOnlhbWwub3JnLDIwMDI6b21hcCc7XG5jb25zdCBvbWFwID0ge1xuICAgIGNvbGxlY3Rpb246ICdzZXEnLFxuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB2YWx1ZSBpbnN0YW5jZW9mIE1hcCxcbiAgICBub2RlQ2xhc3M6IFlBTUxPTWFwLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOm9tYXAnLFxuICAgIHJlc29sdmUoc2VxLCBvbkVycm9yKSB7XG4gICAgICAgIGNvbnN0IHBhaXJzJDEgPSBwYWlycy5yZXNvbHZlUGFpcnMoc2VxLCBvbkVycm9yKTtcbiAgICAgICAgY29uc3Qgc2VlbktleXMgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCB7IGtleSB9IG9mIHBhaXJzJDEuaXRlbXMpIHtcbiAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc1NjYWxhcihrZXkpKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNlZW5LZXlzLmluY2x1ZGVzKGtleS52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihgT3JkZXJlZCBtYXBzIG11c3Qgbm90IGluY2x1ZGUgZHVwbGljYXRlIGtleXM6ICR7a2V5LnZhbHVlfWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc2VlbktleXMucHVzaChrZXkudmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgWUFNTE9NYXAoKSwgcGFpcnMkMSk7XG4gICAgfSxcbiAgICBjcmVhdGVOb2RlOiAoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSA9PiBZQU1MT01hcC5mcm9tKHNjaGVtYSwgaXRlcmFibGUsIGN0eClcbn07XG5cbmV4cG9ydHMuWUFNTE9NYXAgPSBZQU1MT01hcDtcbmV4cG9ydHMub21hcCA9IG9tYXA7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbmZ1bmN0aW9uIGJvb2xTdHJpbmdpZnkoeyB2YWx1ZSwgc291cmNlIH0sIGN0eCkge1xuICAgIGNvbnN0IGJvb2xPYmogPSB2YWx1ZSA/IHRydWVUYWcgOiBmYWxzZVRhZztcbiAgICBpZiAoc291cmNlICYmIGJvb2xPYmoudGVzdC50ZXN0KHNvdXJjZSkpXG4gICAgICAgIHJldHVybiBzb3VyY2U7XG4gICAgcmV0dXJuIHZhbHVlID8gY3R4Lm9wdGlvbnMudHJ1ZVN0ciA6IGN0eC5vcHRpb25zLmZhbHNlU3RyO1xufVxuY29uc3QgdHJ1ZVRhZyA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgPT09IHRydWUsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpib29sJyxcbiAgICB0ZXN0OiAvXig/Oll8eXxbWXldZXN8WUVTfFtUdF1ydWV8VFJVRXxbT29dbnxPTikkLyxcbiAgICByZXNvbHZlOiAoKSA9PiBuZXcgU2NhbGFyLlNjYWxhcih0cnVlKSxcbiAgICBzdHJpbmdpZnk6IGJvb2xTdHJpbmdpZnlcbn07XG5jb25zdCBmYWxzZVRhZyA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgPT09IGZhbHNlLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6Ym9vbCcsXG4gICAgdGVzdDogL14oPzpOfG58W05uXW98Tk98W0ZmXWFsc2V8RkFMU0V8W09vXWZmfE9GRikkLyxcbiAgICByZXNvbHZlOiAoKSA9PiBuZXcgU2NhbGFyLlNjYWxhcihmYWxzZSksXG4gICAgc3RyaW5naWZ5OiBib29sU3RyaW5naWZ5XG59O1xuXG5leHBvcnRzLmZhbHNlVGFnID0gZmFsc2VUYWc7XG5leHBvcnRzLnRydWVUYWcgPSB0cnVlVGFnO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1NjYWxhci5qcycpO1xudmFyIHN0cmluZ2lmeU51bWJlciA9IHJlcXVpcmUoJy4uLy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMnKTtcblxuY29uc3QgZmxvYXROYU4gPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCcsXG4gICAgdGVzdDogL14oPzpbLStdP1xcLig/OmluZnxJbmZ8SU5GKXxcXC5uYW58XFwuTmFOfFxcLk5BTikkLyxcbiAgICByZXNvbHZlOiAoc3RyKSA9PiBzdHIuc2xpY2UoLTMpLnRvTG93ZXJDYXNlKCkgPT09ICduYW4nXG4gICAgICAgID8gTmFOXG4gICAgICAgIDogc3RyWzBdID09PSAnLSdcbiAgICAgICAgICAgID8gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZXG4gICAgICAgICAgICA6IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxcbiAgICBzdHJpbmdpZnk6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXJcbn07XG5jb25zdCBmbG9hdEV4cCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JyxcbiAgICBmb3JtYXQ6ICdFWFAnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpbMC05XVswLTlfXSopPyg/OlxcLlswLTlfXSopP1tlRV1bLStdP1swLTldKyQvLFxuICAgIHJlc29sdmU6IChzdHIpID0+IHBhcnNlRmxvYXQoc3RyLnJlcGxhY2UoL18vZywgJycpKSxcbiAgICBzdHJpbmdpZnkobm9kZSkge1xuICAgICAgICBjb25zdCBudW0gPSBOdW1iZXIobm9kZS52YWx1ZSk7XG4gICAgICAgIHJldHVybiBpc0Zpbml0ZShudW0pID8gbnVtLnRvRXhwb25lbnRpYWwoKSA6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG4gICAgfVxufTtcbmNvbnN0IGZsb2F0ID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6ZmxvYXQnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpbMC05XVswLTlfXSopP1xcLlswLTlfXSokLyxcbiAgICByZXNvbHZlKHN0cikge1xuICAgICAgICBjb25zdCBub2RlID0gbmV3IFNjYWxhci5TY2FsYXIocGFyc2VGbG9hdChzdHIucmVwbGFjZSgvXy9nLCAnJykpKTtcbiAgICAgICAgY29uc3QgZG90ID0gc3RyLmluZGV4T2YoJy4nKTtcbiAgICAgICAgaWYgKGRvdCAhPT0gLTEpIHtcbiAgICAgICAgICAgIGNvbnN0IGYgPSBzdHIuc3Vic3RyaW5nKGRvdCArIDEpLnJlcGxhY2UoL18vZywgJycpO1xuICAgICAgICAgICAgaWYgKGZbZi5sZW5ndGggLSAxXSA9PT0gJzAnKVxuICAgICAgICAgICAgICAgIG5vZGUubWluRnJhY3Rpb25EaWdpdHMgPSBmLmxlbmd0aDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9LFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlclxufTtcblxuZXhwb3J0cy5mbG9hdCA9IGZsb2F0O1xuZXhwb3J0cy5mbG9hdEV4cCA9IGZsb2F0RXhwO1xuZXhwb3J0cy5mbG9hdE5hTiA9IGZsb2F0TmFOO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHN0cmluZ2lmeU51bWJlciA9IHJlcXVpcmUoJy4uLy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMnKTtcblxuY29uc3QgaW50SWRlbnRpZnkgPSAodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcgfHwgTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSk7XG5mdW5jdGlvbiBpbnRSZXNvbHZlKHN0ciwgb2Zmc2V0LCByYWRpeCwgeyBpbnRBc0JpZ0ludCB9KSB7XG4gICAgY29uc3Qgc2lnbiA9IHN0clswXTtcbiAgICBpZiAoc2lnbiA9PT0gJy0nIHx8IHNpZ24gPT09ICcrJylcbiAgICAgICAgb2Zmc2V0ICs9IDE7XG4gICAgc3RyID0gc3RyLnN1YnN0cmluZyhvZmZzZXQpLnJlcGxhY2UoL18vZywgJycpO1xuICAgIGlmIChpbnRBc0JpZ0ludCkge1xuICAgICAgICBzd2l0Y2ggKHJhZGl4KSB7XG4gICAgICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgICAgICAgc3RyID0gYDBiJHtzdHJ9YDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgODpcbiAgICAgICAgICAgICAgICBzdHIgPSBgMG8ke3N0cn1gO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAxNjpcbiAgICAgICAgICAgICAgICBzdHIgPSBgMHgke3N0cn1gO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG4gPSBCaWdJbnQoc3RyKTtcbiAgICAgICAgcmV0dXJuIHNpZ24gPT09ICctJyA/IEJpZ0ludCgtMSkgKiBuIDogbjtcbiAgICB9XG4gICAgY29uc3QgbiA9IHBhcnNlSW50KHN0ciwgcmFkaXgpO1xuICAgIHJldHVybiBzaWduID09PSAnLScgPyAtMSAqIG4gOiBuO1xufVxuZnVuY3Rpb24gaW50U3RyaW5naWZ5KG5vZGUsIHJhZGl4LCBwcmVmaXgpIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBub2RlO1xuICAgIGlmIChpbnRJZGVudGlmeSh2YWx1ZSkpIHtcbiAgICAgICAgY29uc3Qgc3RyID0gdmFsdWUudG9TdHJpbmcocmFkaXgpO1xuICAgICAgICByZXR1cm4gdmFsdWUgPCAwID8gJy0nICsgcHJlZml4ICsgc3RyLnN1YnN0cigxKSA6IHByZWZpeCArIHN0cjtcbiAgICB9XG4gICAgcmV0dXJuIHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG59XG5jb25zdCBpbnRCaW4gPSB7XG4gICAgaWRlbnRpZnk6IGludElkZW50aWZ5LFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICBmb3JtYXQ6ICdCSU4nLFxuICAgIHRlc3Q6IC9eWy0rXT8wYlswLTFfXSskLyxcbiAgICByZXNvbHZlOiAoc3RyLCBfb25FcnJvciwgb3B0KSA9PiBpbnRSZXNvbHZlKHN0ciwgMiwgMiwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDIsICcwYicpXG59O1xuY29uc3QgaW50T2N0ID0ge1xuICAgIGlkZW50aWZ5OiBpbnRJZGVudGlmeSxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmludCcsXG4gICAgZm9ybWF0OiAnT0NUJyxcbiAgICB0ZXN0OiAvXlstK10/MFswLTdfXSskLyxcbiAgICByZXNvbHZlOiAoc3RyLCBfb25FcnJvciwgb3B0KSA9PiBpbnRSZXNvbHZlKHN0ciwgMSwgOCwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDgsICcwJylcbn07XG5jb25zdCBpbnQgPSB7XG4gICAgaWRlbnRpZnk6IGludElkZW50aWZ5LFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICB0ZXN0OiAvXlstK10/WzAtOV1bMC05X10qJC8sXG4gICAgcmVzb2x2ZTogKHN0ciwgX29uRXJyb3IsIG9wdCkgPT4gaW50UmVzb2x2ZShzdHIsIDAsIDEwLCBvcHQpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlclxufTtcbmNvbnN0IGludEhleCA9IHtcbiAgICBpZGVudGlmeTogaW50SWRlbnRpZnksXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjppbnQnLFxuICAgIGZvcm1hdDogJ0hFWCcsXG4gICAgdGVzdDogL15bLStdPzB4WzAtOWEtZkEtRl9dKyQvLFxuICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCBvcHQpID0+IGludFJlc29sdmUoc3RyLCAyLCAxNiwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDE2LCAnMHgnKVxufTtcblxuZXhwb3J0cy5pbnQgPSBpbnQ7XG5leHBvcnRzLmludEJpbiA9IGludEJpbjtcbmV4cG9ydHMuaW50SGV4ID0gaW50SGV4O1xuZXhwb3J0cy5pbnRPY3QgPSBpbnRPY3Q7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFBhaXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1lBTUxNYXAuanMnKTtcblxuY2xhc3MgWUFNTFNldCBleHRlbmRzIFlBTUxNYXAuWUFNTE1hcCB7XG4gICAgY29uc3RydWN0b3Ioc2NoZW1hKSB7XG4gICAgICAgIHN1cGVyKHNjaGVtYSk7XG4gICAgICAgIHRoaXMudGFnID0gWUFNTFNldC50YWc7XG4gICAgfVxuICAgIGFkZChrZXkpIHtcbiAgICAgICAgbGV0IHBhaXI7XG4gICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIoa2V5KSlcbiAgICAgICAgICAgIHBhaXIgPSBrZXk7XG4gICAgICAgIGVsc2UgaWYgKGtleSAmJlxuICAgICAgICAgICAgdHlwZW9mIGtleSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgICAgICdrZXknIGluIGtleSAmJlxuICAgICAgICAgICAgJ3ZhbHVlJyBpbiBrZXkgJiZcbiAgICAgICAgICAgIGtleS52YWx1ZSA9PT0gbnVsbClcbiAgICAgICAgICAgIHBhaXIgPSBuZXcgUGFpci5QYWlyKGtleS5rZXksIG51bGwpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBwYWlyID0gbmV3IFBhaXIuUGFpcihrZXksIG51bGwpO1xuICAgICAgICBjb25zdCBwcmV2ID0gWUFNTE1hcC5maW5kUGFpcih0aGlzLml0ZW1zLCBwYWlyLmtleSk7XG4gICAgICAgIGlmICghcHJldilcbiAgICAgICAgICAgIHRoaXMuaXRlbXMucHVzaChwYWlyKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSWYgYGtlZXBQYWlyYCBpcyBgdHJ1ZWAsIHJldHVybnMgdGhlIFBhaXIgbWF0Y2hpbmcgYGtleWAuXG4gICAgICogT3RoZXJ3aXNlLCByZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGF0IFBhaXIncyBrZXkuXG4gICAgICovXG4gICAgZ2V0KGtleSwga2VlcFBhaXIpIHtcbiAgICAgICAgY29uc3QgcGFpciA9IFlBTUxNYXAuZmluZFBhaXIodGhpcy5pdGVtcywga2V5KTtcbiAgICAgICAgcmV0dXJuICFrZWVwUGFpciAmJiBpZGVudGl0eS5pc1BhaXIocGFpcilcbiAgICAgICAgICAgID8gaWRlbnRpdHkuaXNTY2FsYXIocGFpci5rZXkpXG4gICAgICAgICAgICAgICAgPyBwYWlyLmtleS52YWx1ZVxuICAgICAgICAgICAgICAgIDogcGFpci5rZXlcbiAgICAgICAgICAgIDogcGFpcjtcbiAgICB9XG4gICAgc2V0KGtleSwgdmFsdWUpIHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ2Jvb2xlYW4nKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBib29sZWFuIHZhbHVlIGZvciBzZXQoa2V5LCB2YWx1ZSkgaW4gYSBZQU1MIHNldCwgbm90ICR7dHlwZW9mIHZhbHVlfWApO1xuICAgICAgICBjb25zdCBwcmV2ID0gWUFNTE1hcC5maW5kUGFpcih0aGlzLml0ZW1zLCBrZXkpO1xuICAgICAgICBpZiAocHJldiAmJiAhdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuaXRlbXMuc3BsaWNlKHRoaXMuaXRlbXMuaW5kZXhPZihwcmV2KSwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoIXByZXYgJiYgdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuaXRlbXMucHVzaChuZXcgUGFpci5QYWlyKGtleSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRvSlNPTihfLCBjdHgpIHtcbiAgICAgICAgcmV0dXJuIHN1cGVyLnRvSlNPTihfLCBjdHgsIFNldCk7XG4gICAgfVxuICAgIHRvU3RyaW5nKGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICBpZiAoIWN0eClcbiAgICAgICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzKTtcbiAgICAgICAgaWYgKHRoaXMuaGFzQWxsTnVsbFZhbHVlcyh0cnVlKSlcbiAgICAgICAgICAgIHJldHVybiBzdXBlci50b1N0cmluZyhPYmplY3QuYXNzaWduKHt9LCBjdHgsIHsgYWxsTnVsbFZhbHVlczogdHJ1ZSB9KSwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignU2V0IGl0ZW1zIG11c3QgYWxsIGhhdmUgbnVsbCB2YWx1ZXMnKTtcbiAgICB9XG4gICAgc3RhdGljIGZyb20oc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSB7XG4gICAgICAgIGNvbnN0IHsgcmVwbGFjZXIgfSA9IGN0eDtcbiAgICAgICAgY29uc3Qgc2V0ID0gbmV3IHRoaXMoc2NoZW1hKTtcbiAgICAgICAgaWYgKGl0ZXJhYmxlICYmIFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoaXRlcmFibGUpKVxuICAgICAgICAgICAgZm9yIChsZXQgdmFsdWUgb2YgaXRlcmFibGUpIHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAnZnVuY3Rpb24nKVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHJlcGxhY2VyLmNhbGwoaXRlcmFibGUsIHZhbHVlLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgc2V0Lml0ZW1zLnB1c2goUGFpci5jcmVhdGVQYWlyKHZhbHVlLCBudWxsLCBjdHgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNldDtcbiAgICB9XG59XG5ZQU1MU2V0LnRhZyA9ICd0YWc6eWFtbC5vcmcsMjAwMjpzZXQnO1xuY29uc3Qgc2V0ID0ge1xuICAgIGNvbGxlY3Rpb246ICdtYXAnLFxuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB2YWx1ZSBpbnN0YW5jZW9mIFNldCxcbiAgICBub2RlQ2xhc3M6IFlBTUxTZXQsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6c2V0JyxcbiAgICBjcmVhdGVOb2RlOiAoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSA9PiBZQU1MU2V0LmZyb20oc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSxcbiAgICByZXNvbHZlKG1hcCwgb25FcnJvcikge1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNNYXAobWFwKSkge1xuICAgICAgICAgICAgaWYgKG1hcC5oYXNBbGxOdWxsVmFsdWVzKHRydWUpKVxuICAgICAgICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBZQU1MU2V0KCksIG1hcCk7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgb25FcnJvcignU2V0IGl0ZW1zIG11c3QgYWxsIGhhdmUgbnVsbCB2YWx1ZXMnKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlXG4gICAgICAgICAgICBvbkVycm9yKCdFeHBlY3RlZCBhIG1hcHBpbmcgZm9yIHRoaXMgdGFnJyk7XG4gICAgICAgIHJldHVybiBtYXA7XG4gICAgfVxufTtcblxuZXhwb3J0cy5ZQU1MU2V0ID0gWUFNTFNldDtcbmV4cG9ydHMuc2V0ID0gc2V0O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHN0cmluZ2lmeU51bWJlciA9IHJlcXVpcmUoJy4uLy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMnKTtcblxuLyoqIEludGVybmFsIHR5cGVzIGhhbmRsZSBiaWdpbnQgYXMgbnVtYmVyLCBiZWNhdXNlIFRTIGNhbid0IGZpZ3VyZSBpdCBvdXQuICovXG5mdW5jdGlvbiBwYXJzZVNleGFnZXNpbWFsKHN0ciwgYXNCaWdJbnQpIHtcbiAgICBjb25zdCBzaWduID0gc3RyWzBdO1xuICAgIGNvbnN0IHBhcnRzID0gc2lnbiA9PT0gJy0nIHx8IHNpZ24gPT09ICcrJyA/IHN0ci5zdWJzdHJpbmcoMSkgOiBzdHI7XG4gICAgY29uc3QgbnVtID0gKG4pID0+IGFzQmlnSW50ID8gQmlnSW50KG4pIDogTnVtYmVyKG4pO1xuICAgIGNvbnN0IHJlcyA9IHBhcnRzXG4gICAgICAgIC5yZXBsYWNlKC9fL2csICcnKVxuICAgICAgICAuc3BsaXQoJzonKVxuICAgICAgICAucmVkdWNlKChyZXMsIHApID0+IHJlcyAqIG51bSg2MCkgKyBudW0ocCksIG51bSgwKSk7XG4gICAgcmV0dXJuIChzaWduID09PSAnLScgPyBudW0oLTEpICogcmVzIDogcmVzKTtcbn1cbi8qKlxuICogaGhoaDptbTpzcy5zc3NcbiAqXG4gKiBJbnRlcm5hbCB0eXBlcyBoYW5kbGUgYmlnaW50IGFzIG51bWJlciwgYmVjYXVzZSBUUyBjYW4ndCBmaWd1cmUgaXQgb3V0LlxuICovXG5mdW5jdGlvbiBzdHJpbmdpZnlTZXhhZ2VzaW1hbChub2RlKSB7XG4gICAgbGV0IHsgdmFsdWUgfSA9IG5vZGU7XG4gICAgbGV0IG51bSA9IChuKSA9PiBuO1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnKVxuICAgICAgICBudW0gPSBuID0+IEJpZ0ludChuKTtcbiAgICBlbHNlIGlmIChpc05hTih2YWx1ZSkgfHwgIWlzRmluaXRlKHZhbHVlKSlcbiAgICAgICAgcmV0dXJuIHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG4gICAgbGV0IHNpZ24gPSAnJztcbiAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICAgIHNpZ24gPSAnLSc7XG4gICAgICAgIHZhbHVlICo9IG51bSgtMSk7XG4gICAgfVxuICAgIGNvbnN0IF82MCA9IG51bSg2MCk7XG4gICAgY29uc3QgcGFydHMgPSBbdmFsdWUgJSBfNjBdOyAvLyBzZWNvbmRzLCBpbmNsdWRpbmcgbXNcbiAgICBpZiAodmFsdWUgPCA2MCkge1xuICAgICAgICBwYXJ0cy51bnNoaWZ0KDApOyAvLyBhdCBsZWFzdCBvbmUgOiBpcyByZXF1aXJlZFxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdmFsdWUgPSAodmFsdWUgLSBwYXJ0c1swXSkgLyBfNjA7XG4gICAgICAgIHBhcnRzLnVuc2hpZnQodmFsdWUgJSBfNjApOyAvLyBtaW51dGVzXG4gICAgICAgIGlmICh2YWx1ZSA+PSA2MCkge1xuICAgICAgICAgICAgdmFsdWUgPSAodmFsdWUgLSBwYXJ0c1swXSkgLyBfNjA7XG4gICAgICAgICAgICBwYXJ0cy51bnNoaWZ0KHZhbHVlKTsgLy8gaG91cnNcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gKHNpZ24gK1xuICAgICAgICBwYXJ0c1xuICAgICAgICAgICAgLm1hcChuID0+IFN0cmluZyhuKS5wYWRTdGFydCgyLCAnMCcpKVxuICAgICAgICAgICAgLmpvaW4oJzonKVxuICAgICAgICAgICAgLnJlcGxhY2UoLzAwMDAwMFxcZCokLywgJycpIC8vICUgNjAgbWF5IGludHJvZHVjZSBlcnJvclxuICAgICk7XG59XG5jb25zdCBpbnRUaW1lID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnIHx8IE51bWJlci5pc0ludGVnZXIodmFsdWUpLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICBmb3JtYXQ6ICdUSU1FJyxcbiAgICB0ZXN0OiAvXlstK10/WzAtOV1bMC05X10qKD86OlswLTVdP1swLTldKSskLyxcbiAgICByZXNvbHZlOiAoc3RyLCBfb25FcnJvciwgeyBpbnRBc0JpZ0ludCB9KSA9PiBwYXJzZVNleGFnZXNpbWFsKHN0ciwgaW50QXNCaWdJbnQpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5U2V4YWdlc2ltYWxcbn07XG5jb25zdCBmbG9hdFRpbWUgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCcsXG4gICAgZm9ybWF0OiAnVElNRScsXG4gICAgdGVzdDogL15bLStdP1swLTldWzAtOV9dKig/OjpbMC01XT9bMC05XSkrXFwuWzAtOV9dKiQvLFxuICAgIHJlc29sdmU6IHN0ciA9PiBwYXJzZVNleGFnZXNpbWFsKHN0ciwgZmFsc2UpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5U2V4YWdlc2ltYWxcbn07XG5jb25zdCB0aW1lc3RhbXAgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHZhbHVlIGluc3RhbmNlb2YgRGF0ZSxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOnRpbWVzdGFtcCcsXG4gICAgLy8gSWYgdGhlIHRpbWUgem9uZSBpcyBvbWl0dGVkLCB0aGUgdGltZXN0YW1wIGlzIGFzc3VtZWQgdG8gYmUgc3BlY2lmaWVkIGluIFVUQy4gVGhlIHRpbWUgcGFydFxuICAgIC8vIG1heSBiZSBvbWl0dGVkIGFsdG9nZXRoZXIsIHJlc3VsdGluZyBpbiBhIGRhdGUgZm9ybWF0LiBJbiBzdWNoIGEgY2FzZSwgdGhlIHRpbWUgcGFydCBpc1xuICAgIC8vIGFzc3VtZWQgdG8gYmUgMDA6MDA6MDBaIChzdGFydCBvZiBkYXksIFVUQykuXG4gICAgdGVzdDogUmVnRXhwKCdeKFswLTldezR9KS0oWzAtOV17MSwyfSktKFswLTldezEsMn0pJyArIC8vIFlZWVktTW0tRGRcbiAgICAgICAgJyg/OicgKyAvLyB0aW1lIGlzIG9wdGlvbmFsXG4gICAgICAgICcoPzp0fFR8WyBcXFxcdF0rKScgKyAvLyB0IHwgVCB8IHdoaXRlc3BhY2VcbiAgICAgICAgJyhbMC05XXsxLDJ9KTooWzAtOV17MSwyfSk6KFswLTldezEsMn0oXFxcXC5bMC05XSspPyknICsgLy8gSGg6TW06U3MoLnNzKT9cbiAgICAgICAgJyg/OlsgXFxcXHRdKihafFstK11bMDEyXT9bMC05XSg/OjpbMC05XXsyfSk/KSk/JyArIC8vIFogfCArNSB8IC0wMzozMFxuICAgICAgICAnKT8kJyksXG4gICAgcmVzb2x2ZShzdHIpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBzdHIubWF0Y2godGltZXN0YW1wLnRlc3QpO1xuICAgICAgICBpZiAoIW1hdGNoKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCchIXRpbWVzdGFtcCBleHBlY3RzIGEgZGF0ZSwgc3RhcnRpbmcgd2l0aCB5eXl5LW1tLWRkJyk7XG4gICAgICAgIGNvbnN0IFssIHllYXIsIG1vbnRoLCBkYXksIGhvdXIsIG1pbnV0ZSwgc2Vjb25kXSA9IG1hdGNoLm1hcChOdW1iZXIpO1xuICAgICAgICBjb25zdCBtaWxsaXNlYyA9IG1hdGNoWzddID8gTnVtYmVyKChtYXRjaFs3XSArICcwMCcpLnN1YnN0cigxLCAzKSkgOiAwO1xuICAgICAgICBsZXQgZGF0ZSA9IERhdGUuVVRDKHllYXIsIG1vbnRoIC0gMSwgZGF5LCBob3VyIHx8IDAsIG1pbnV0ZSB8fCAwLCBzZWNvbmQgfHwgMCwgbWlsbGlzZWMpO1xuICAgICAgICBjb25zdCB0eiA9IG1hdGNoWzhdO1xuICAgICAgICBpZiAodHogJiYgdHogIT09ICdaJykge1xuICAgICAgICAgICAgbGV0IGQgPSBwYXJzZVNleGFnZXNpbWFsKHR6LCBmYWxzZSk7XG4gICAgICAgICAgICBpZiAoTWF0aC5hYnMoZCkgPCAzMClcbiAgICAgICAgICAgICAgICBkICo9IDYwO1xuICAgICAgICAgICAgZGF0ZSAtPSA2MDAwMCAqIGQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUpO1xuICAgIH0sXG4gICAgc3RyaW5naWZ5OiAoeyB2YWx1ZSB9KSA9PiB2YWx1ZT8udG9JU09TdHJpbmcoKS5yZXBsYWNlKC8oVDAwOjAwOjAwKT9cXC4wMDBaJC8sICcnKSA/PyAnJ1xufTtcblxuZXhwb3J0cy5mbG9hdFRpbWUgPSBmbG9hdFRpbWU7XG5leHBvcnRzLmludFRpbWUgPSBpbnRUaW1lO1xuZXhwb3J0cy50aW1lc3RhbXAgPSB0aW1lc3RhbXA7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbWFwID0gcmVxdWlyZSgnLi4vY29tbW9uL21hcC5qcycpO1xudmFyIF9udWxsID0gcmVxdWlyZSgnLi4vY29tbW9uL251bGwuanMnKTtcbnZhciBzZXEgPSByZXF1aXJlKCcuLi9jb21tb24vc2VxLmpzJyk7XG52YXIgc3RyaW5nID0gcmVxdWlyZSgnLi4vY29tbW9uL3N0cmluZy5qcycpO1xudmFyIGJpbmFyeSA9IHJlcXVpcmUoJy4vYmluYXJ5LmpzJyk7XG52YXIgYm9vbCA9IHJlcXVpcmUoJy4vYm9vbC5qcycpO1xudmFyIGZsb2F0ID0gcmVxdWlyZSgnLi9mbG9hdC5qcycpO1xudmFyIGludCA9IHJlcXVpcmUoJy4vaW50LmpzJyk7XG52YXIgbWVyZ2UgPSByZXF1aXJlKCcuL21lcmdlLmpzJyk7XG52YXIgb21hcCA9IHJlcXVpcmUoJy4vb21hcC5qcycpO1xudmFyIHBhaXJzID0gcmVxdWlyZSgnLi9wYWlycy5qcycpO1xudmFyIHNldCA9IHJlcXVpcmUoJy4vc2V0LmpzJyk7XG52YXIgdGltZXN0YW1wID0gcmVxdWlyZSgnLi90aW1lc3RhbXAuanMnKTtcblxuY29uc3Qgc2NoZW1hID0gW1xuICAgIG1hcC5tYXAsXG4gICAgc2VxLnNlcSxcbiAgICBzdHJpbmcuc3RyaW5nLFxuICAgIF9udWxsLm51bGxUYWcsXG4gICAgYm9vbC50cnVlVGFnLFxuICAgIGJvb2wuZmFsc2VUYWcsXG4gICAgaW50LmludEJpbixcbiAgICBpbnQuaW50T2N0LFxuICAgIGludC5pbnQsXG4gICAgaW50LmludEhleCxcbiAgICBmbG9hdC5mbG9hdE5hTixcbiAgICBmbG9hdC5mbG9hdEV4cCxcbiAgICBmbG9hdC5mbG9hdCxcbiAgICBiaW5hcnkuYmluYXJ5LFxuICAgIG1lcmdlLm1lcmdlLFxuICAgIG9tYXAub21hcCxcbiAgICBwYWlycy5wYWlycyxcbiAgICBzZXQuc2V0LFxuICAgIHRpbWVzdGFtcC5pbnRUaW1lLFxuICAgIHRpbWVzdGFtcC5mbG9hdFRpbWUsXG4gICAgdGltZXN0YW1wLnRpbWVzdGFtcFxuXTtcblxuZXhwb3J0cy5zY2hlbWEgPSBzY2hlbWE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbWFwID0gcmVxdWlyZSgnLi9jb21tb24vbWFwLmpzJyk7XG52YXIgX251bGwgPSByZXF1aXJlKCcuL2NvbW1vbi9udWxsLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi9jb21tb24vc2VxLmpzJyk7XG52YXIgc3RyaW5nID0gcmVxdWlyZSgnLi9jb21tb24vc3RyaW5nLmpzJyk7XG52YXIgYm9vbCA9IHJlcXVpcmUoJy4vY29yZS9ib29sLmpzJyk7XG52YXIgZmxvYXQgPSByZXF1aXJlKCcuL2NvcmUvZmxvYXQuanMnKTtcbnZhciBpbnQgPSByZXF1aXJlKCcuL2NvcmUvaW50LmpzJyk7XG52YXIgc2NoZW1hID0gcmVxdWlyZSgnLi9jb3JlL3NjaGVtYS5qcycpO1xudmFyIHNjaGVtYSQxID0gcmVxdWlyZSgnLi9qc29uL3NjaGVtYS5qcycpO1xudmFyIGJpbmFyeSA9IHJlcXVpcmUoJy4veWFtbC0xLjEvYmluYXJ5LmpzJyk7XG52YXIgbWVyZ2UgPSByZXF1aXJlKCcuL3lhbWwtMS4xL21lcmdlLmpzJyk7XG52YXIgb21hcCA9IHJlcXVpcmUoJy4veWFtbC0xLjEvb21hcC5qcycpO1xudmFyIHBhaXJzID0gcmVxdWlyZSgnLi95YW1sLTEuMS9wYWlycy5qcycpO1xudmFyIHNjaGVtYSQyID0gcmVxdWlyZSgnLi95YW1sLTEuMS9zY2hlbWEuanMnKTtcbnZhciBzZXQgPSByZXF1aXJlKCcuL3lhbWwtMS4xL3NldC5qcycpO1xudmFyIHRpbWVzdGFtcCA9IHJlcXVpcmUoJy4veWFtbC0xLjEvdGltZXN0YW1wLmpzJyk7XG5cbmNvbnN0IHNjaGVtYXMgPSBuZXcgTWFwKFtcbiAgICBbJ2NvcmUnLCBzY2hlbWEuc2NoZW1hXSxcbiAgICBbJ2ZhaWxzYWZlJywgW21hcC5tYXAsIHNlcS5zZXEsIHN0cmluZy5zdHJpbmddXSxcbiAgICBbJ2pzb24nLCBzY2hlbWEkMS5zY2hlbWFdLFxuICAgIFsneWFtbDExJywgc2NoZW1hJDIuc2NoZW1hXSxcbiAgICBbJ3lhbWwtMS4xJywgc2NoZW1hJDIuc2NoZW1hXVxuXSk7XG5jb25zdCB0YWdzQnlOYW1lID0ge1xuICAgIGJpbmFyeTogYmluYXJ5LmJpbmFyeSxcbiAgICBib29sOiBib29sLmJvb2xUYWcsXG4gICAgZmxvYXQ6IGZsb2F0LmZsb2F0LFxuICAgIGZsb2F0RXhwOiBmbG9hdC5mbG9hdEV4cCxcbiAgICBmbG9hdE5hTjogZmxvYXQuZmxvYXROYU4sXG4gICAgZmxvYXRUaW1lOiB0aW1lc3RhbXAuZmxvYXRUaW1lLFxuICAgIGludDogaW50LmludCxcbiAgICBpbnRIZXg6IGludC5pbnRIZXgsXG4gICAgaW50T2N0OiBpbnQuaW50T2N0LFxuICAgIGludFRpbWU6IHRpbWVzdGFtcC5pbnRUaW1lLFxuICAgIG1hcDogbWFwLm1hcCxcbiAgICBtZXJnZTogbWVyZ2UubWVyZ2UsXG4gICAgbnVsbDogX251bGwubnVsbFRhZyxcbiAgICBvbWFwOiBvbWFwLm9tYXAsXG4gICAgcGFpcnM6IHBhaXJzLnBhaXJzLFxuICAgIHNlcTogc2VxLnNlcSxcbiAgICBzZXQ6IHNldC5zZXQsXG4gICAgdGltZXN0YW1wOiB0aW1lc3RhbXAudGltZXN0YW1wXG59O1xuY29uc3QgY29yZUtub3duVGFncyA9IHtcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5JzogYmluYXJ5LmJpbmFyeSxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6bWVyZ2UnOiBtZXJnZS5tZXJnZSxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6b21hcCc6IG9tYXAub21hcCxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6cGFpcnMnOiBwYWlycy5wYWlycyxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6c2V0Jzogc2V0LnNldCxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6dGltZXN0YW1wJzogdGltZXN0YW1wLnRpbWVzdGFtcFxufTtcbmZ1bmN0aW9uIGdldFRhZ3MoY3VzdG9tVGFncywgc2NoZW1hTmFtZSwgYWRkTWVyZ2VUYWcpIHtcbiAgICBjb25zdCBzY2hlbWFUYWdzID0gc2NoZW1hcy5nZXQoc2NoZW1hTmFtZSk7XG4gICAgaWYgKHNjaGVtYVRhZ3MgJiYgIWN1c3RvbVRhZ3MpIHtcbiAgICAgICAgcmV0dXJuIGFkZE1lcmdlVGFnICYmICFzY2hlbWFUYWdzLmluY2x1ZGVzKG1lcmdlLm1lcmdlKVxuICAgICAgICAgICAgPyBzY2hlbWFUYWdzLmNvbmNhdChtZXJnZS5tZXJnZSlcbiAgICAgICAgICAgIDogc2NoZW1hVGFncy5zbGljZSgpO1xuICAgIH1cbiAgICBsZXQgdGFncyA9IHNjaGVtYVRhZ3M7XG4gICAgaWYgKCF0YWdzKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1c3RvbVRhZ3MpKVxuICAgICAgICAgICAgdGFncyA9IFtdO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGtleXMgPSBBcnJheS5mcm9tKHNjaGVtYXMua2V5cygpKVxuICAgICAgICAgICAgICAgIC5maWx0ZXIoa2V5ID0+IGtleSAhPT0gJ3lhbWwxMScpXG4gICAgICAgICAgICAgICAgLm1hcChrZXkgPT4gSlNPTi5zdHJpbmdpZnkoa2V5KSlcbiAgICAgICAgICAgICAgICAuam9pbignLCAnKTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBzY2hlbWEgXCIke3NjaGVtYU5hbWV9XCI7IHVzZSBvbmUgb2YgJHtrZXlzfSBvciBkZWZpbmUgY3VzdG9tVGFncyBhcnJheWApO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KGN1c3RvbVRhZ3MpKSB7XG4gICAgICAgIGZvciAoY29uc3QgdGFnIG9mIGN1c3RvbVRhZ3MpXG4gICAgICAgICAgICB0YWdzID0gdGFncy5jb25jYXQodGFnKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodHlwZW9mIGN1c3RvbVRhZ3MgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGFncyA9IGN1c3RvbVRhZ3ModGFncy5zbGljZSgpKTtcbiAgICB9XG4gICAgaWYgKGFkZE1lcmdlVGFnKVxuICAgICAgICB0YWdzID0gdGFncy5jb25jYXQobWVyZ2UubWVyZ2UpO1xuICAgIHJldHVybiB0YWdzLnJlZHVjZSgodGFncywgdGFnKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhZ09iaiA9IHR5cGVvZiB0YWcgPT09ICdzdHJpbmcnID8gdGFnc0J5TmFtZVt0YWddIDogdGFnO1xuICAgICAgICBpZiAoIXRhZ09iaikge1xuICAgICAgICAgICAgY29uc3QgdGFnTmFtZSA9IEpTT04uc3RyaW5naWZ5KHRhZyk7XG4gICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModGFnc0J5TmFtZSlcbiAgICAgICAgICAgICAgICAubWFwKGtleSA9PiBKU09OLnN0cmluZ2lmeShrZXkpKVxuICAgICAgICAgICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGN1c3RvbSB0YWcgJHt0YWdOYW1lfTsgdXNlIG9uZSBvZiAke2tleXN9YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0YWdzLmluY2x1ZGVzKHRhZ09iaikpXG4gICAgICAgICAgICB0YWdzLnB1c2godGFnT2JqKTtcbiAgICAgICAgcmV0dXJuIHRhZ3M7XG4gICAgfSwgW10pO1xufVxuXG5leHBvcnRzLmNvcmVLbm93blRhZ3MgPSBjb3JlS25vd25UYWdzO1xuZXhwb3J0cy5nZXRUYWdzID0gZ2V0VGFncztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgbWFwID0gcmVxdWlyZSgnLi9jb21tb24vbWFwLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi9jb21tb24vc2VxLmpzJyk7XG52YXIgc3RyaW5nID0gcmVxdWlyZSgnLi9jb21tb24vc3RyaW5nLmpzJyk7XG52YXIgdGFncyA9IHJlcXVpcmUoJy4vdGFncy5qcycpO1xuXG5jb25zdCBzb3J0TWFwRW50cmllc0J5S2V5ID0gKGEsIGIpID0+IGEua2V5IDwgYi5rZXkgPyAtMSA6IGEua2V5ID4gYi5rZXkgPyAxIDogMDtcbmNsYXNzIFNjaGVtYSB7XG4gICAgY29uc3RydWN0b3IoeyBjb21wYXQsIGN1c3RvbVRhZ3MsIG1lcmdlLCByZXNvbHZlS25vd25UYWdzLCBzY2hlbWEsIHNvcnRNYXBFbnRyaWVzLCB0b1N0cmluZ0RlZmF1bHRzIH0pIHtcbiAgICAgICAgdGhpcy5jb21wYXQgPSBBcnJheS5pc0FycmF5KGNvbXBhdClcbiAgICAgICAgICAgID8gdGFncy5nZXRUYWdzKGNvbXBhdCwgJ2NvbXBhdCcpXG4gICAgICAgICAgICA6IGNvbXBhdFxuICAgICAgICAgICAgICAgID8gdGFncy5nZXRUYWdzKG51bGwsIGNvbXBhdClcbiAgICAgICAgICAgICAgICA6IG51bGw7XG4gICAgICAgIHRoaXMubmFtZSA9ICh0eXBlb2Ygc2NoZW1hID09PSAnc3RyaW5nJyAmJiBzY2hlbWEpIHx8ICdjb3JlJztcbiAgICAgICAgdGhpcy5rbm93blRhZ3MgPSByZXNvbHZlS25vd25UYWdzID8gdGFncy5jb3JlS25vd25UYWdzIDoge307XG4gICAgICAgIHRoaXMudGFncyA9IHRhZ3MuZ2V0VGFncyhjdXN0b21UYWdzLCB0aGlzLm5hbWUsIG1lcmdlKTtcbiAgICAgICAgdGhpcy50b1N0cmluZ09wdGlvbnMgPSB0b1N0cmluZ0RlZmF1bHRzID8/IG51bGw7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBpZGVudGl0eS5NQVAsIHsgdmFsdWU6IG1hcC5tYXAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBpZGVudGl0eS5TQ0FMQVIsIHsgdmFsdWU6IHN0cmluZy5zdHJpbmcgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBpZGVudGl0eS5TRVEsIHsgdmFsdWU6IHNlcS5zZXEgfSk7XG4gICAgICAgIC8vIFVzZWQgYnkgY3JlYXRlTWFwKClcbiAgICAgICAgdGhpcy5zb3J0TWFwRW50cmllcyA9XG4gICAgICAgICAgICB0eXBlb2Ygc29ydE1hcEVudHJpZXMgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgICAgICA/IHNvcnRNYXBFbnRyaWVzXG4gICAgICAgICAgICAgICAgOiBzb3J0TWFwRW50cmllcyA9PT0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICA/IHNvcnRNYXBFbnRyaWVzQnlLZXlcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgY29uc3QgY29weSA9IE9iamVjdC5jcmVhdGUoU2NoZW1hLnByb3RvdHlwZSwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModGhpcykpO1xuICAgICAgICBjb3B5LnRhZ3MgPSB0aGlzLnRhZ3Muc2xpY2UoKTtcbiAgICAgICAgcmV0dXJuIGNvcHk7XG4gICAgfVxufVxuXG5leHBvcnRzLlNjaGVtYSA9IFNjaGVtYTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgc3RyaW5naWZ5ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnkuanMnKTtcbnZhciBzdHJpbmdpZnlDb21tZW50ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnlDb21tZW50LmpzJyk7XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeURvY3VtZW50KGRvYywgb3B0aW9ucykge1xuICAgIGNvbnN0IGxpbmVzID0gW107XG4gICAgbGV0IGhhc0RpcmVjdGl2ZXMgPSBvcHRpb25zLmRpcmVjdGl2ZXMgPT09IHRydWU7XG4gICAgaWYgKG9wdGlvbnMuZGlyZWN0aXZlcyAhPT0gZmFsc2UgJiYgZG9jLmRpcmVjdGl2ZXMpIHtcbiAgICAgICAgY29uc3QgZGlyID0gZG9jLmRpcmVjdGl2ZXMudG9TdHJpbmcoZG9jKTtcbiAgICAgICAgaWYgKGRpcikge1xuICAgICAgICAgICAgbGluZXMucHVzaChkaXIpO1xuICAgICAgICAgICAgaGFzRGlyZWN0aXZlcyA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQpXG4gICAgICAgICAgICBoYXNEaXJlY3RpdmVzID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKGhhc0RpcmVjdGl2ZXMpXG4gICAgICAgIGxpbmVzLnB1c2goJy0tLScpO1xuICAgIGNvbnN0IGN0eCA9IHN0cmluZ2lmeS5jcmVhdGVTdHJpbmdpZnlDb250ZXh0KGRvYywgb3B0aW9ucyk7XG4gICAgY29uc3QgeyBjb21tZW50U3RyaW5nIH0gPSBjdHgub3B0aW9ucztcbiAgICBpZiAoZG9jLmNvbW1lbnRCZWZvcmUpIHtcbiAgICAgICAgaWYgKGxpbmVzLmxlbmd0aCAhPT0gMSlcbiAgICAgICAgICAgIGxpbmVzLnVuc2hpZnQoJycpO1xuICAgICAgICBjb25zdCBjcyA9IGNvbW1lbnRTdHJpbmcoZG9jLmNvbW1lbnRCZWZvcmUpO1xuICAgICAgICBsaW5lcy51bnNoaWZ0KHN0cmluZ2lmeUNvbW1lbnQuaW5kZW50Q29tbWVudChjcywgJycpKTtcbiAgICB9XG4gICAgbGV0IGNob21wS2VlcCA9IGZhbHNlO1xuICAgIGxldCBjb250ZW50Q29tbWVudCA9IG51bGw7XG4gICAgaWYgKGRvYy5jb250ZW50cykge1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGRvYy5jb250ZW50cykpIHtcbiAgICAgICAgICAgIGlmIChkb2MuY29udGVudHMuc3BhY2VCZWZvcmUgJiYgaGFzRGlyZWN0aXZlcylcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcnKTtcbiAgICAgICAgICAgIGlmIChkb2MuY29udGVudHMuY29tbWVudEJlZm9yZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNzID0gY29tbWVudFN0cmluZyhkb2MuY29udGVudHMuY29tbWVudEJlZm9yZSk7XG4gICAgICAgICAgICAgICAgbGluZXMucHVzaChzdHJpbmdpZnlDb21tZW50LmluZGVudENvbW1lbnQoY3MsICcnKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyB0b3AtbGV2ZWwgYmxvY2sgc2NhbGFycyBuZWVkIHRvIGJlIGluZGVudGVkIGlmIGZvbGxvd2VkIGJ5IGEgY29tbWVudFxuICAgICAgICAgICAgY3R4LmZvcmNlQmxvY2tJbmRlbnQgPSAhIWRvYy5jb21tZW50O1xuICAgICAgICAgICAgY29udGVudENvbW1lbnQgPSBkb2MuY29udGVudHMuY29tbWVudDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvbkNob21wS2VlcCA9IGNvbnRlbnRDb21tZW50ID8gdW5kZWZpbmVkIDogKCkgPT4gKGNob21wS2VlcCA9IHRydWUpO1xuICAgICAgICBsZXQgYm9keSA9IHN0cmluZ2lmeS5zdHJpbmdpZnkoZG9jLmNvbnRlbnRzLCBjdHgsICgpID0+IChjb250ZW50Q29tbWVudCA9IG51bGwpLCBvbkNob21wS2VlcCk7XG4gICAgICAgIGlmIChjb250ZW50Q29tbWVudClcbiAgICAgICAgICAgIGJvZHkgKz0gc3RyaW5naWZ5Q29tbWVudC5saW5lQ29tbWVudChib2R5LCAnJywgY29tbWVudFN0cmluZyhjb250ZW50Q29tbWVudCkpO1xuICAgICAgICBpZiAoKGJvZHlbMF0gPT09ICd8JyB8fCBib2R5WzBdID09PSAnPicpICYmXG4gICAgICAgICAgICBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXSA9PT0gJy0tLScpIHtcbiAgICAgICAgICAgIC8vIFRvcC1sZXZlbCBibG9jayBzY2FsYXJzIHdpdGggYSBwcmVjZWRpbmcgZG9jIG1hcmtlciBvdWdodCB0byB1c2UgdGhlXG4gICAgICAgICAgICAvLyBzYW1lIGxpbmUgZm9yIHRoZWlyIGhlYWRlci5cbiAgICAgICAgICAgIGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdID0gYC0tLSAke2JvZHl9YDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlXG4gICAgICAgICAgICBsaW5lcy5wdXNoKGJvZHkpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgbGluZXMucHVzaChzdHJpbmdpZnkuc3RyaW5naWZ5KGRvYy5jb250ZW50cywgY3R4KSk7XG4gICAgfVxuICAgIGlmIChkb2MuZGlyZWN0aXZlcz8uZG9jRW5kKSB7XG4gICAgICAgIGlmIChkb2MuY29tbWVudCkge1xuICAgICAgICAgICAgY29uc3QgY3MgPSBjb21tZW50U3RyaW5nKGRvYy5jb21tZW50KTtcbiAgICAgICAgICAgIGlmIChjcy5pbmNsdWRlcygnXFxuJykpIHtcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcuLi4nKTtcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKHN0cmluZ2lmeUNvbW1lbnQuaW5kZW50Q29tbWVudChjcywgJycpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGxpbmVzLnB1c2goYC4uLiAke2NzfWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGluZXMucHVzaCgnLi4uJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGxldCBkYyA9IGRvYy5jb21tZW50O1xuICAgICAgICBpZiAoZGMgJiYgY2hvbXBLZWVwKVxuICAgICAgICAgICAgZGMgPSBkYy5yZXBsYWNlKC9eXFxuKy8sICcnKTtcbiAgICAgICAgaWYgKGRjKSB7XG4gICAgICAgICAgICBpZiAoKCFjaG9tcEtlZXAgfHwgY29udGVudENvbW1lbnQpICYmIGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdICE9PSAnJylcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcnKTtcbiAgICAgICAgICAgIGxpbmVzLnB1c2goc3RyaW5naWZ5Q29tbWVudC5pbmRlbnRDb21tZW50KGNvbW1lbnRTdHJpbmcoZGMpLCAnJykpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBsaW5lcy5qb2luKCdcXG4nKSArICdcXG4nO1xufVxuXG5leHBvcnRzLnN0cmluZ2lmeURvY3VtZW50ID0gc3RyaW5naWZ5RG9jdW1lbnQ7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgQWxpYXMgPSByZXF1aXJlKCcuLi9ub2Rlcy9BbGlhcy5qcycpO1xudmFyIENvbGxlY3Rpb24gPSByZXF1aXJlKCcuLi9ub2Rlcy9Db2xsZWN0aW9uLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFBhaXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4uL25vZGVzL3RvSlMuanMnKTtcbnZhciBTY2hlbWEgPSByZXF1aXJlKCcuLi9zY2hlbWEvU2NoZW1hLmpzJyk7XG52YXIgc3RyaW5naWZ5RG9jdW1lbnQgPSByZXF1aXJlKCcuLi9zdHJpbmdpZnkvc3RyaW5naWZ5RG9jdW1lbnQuanMnKTtcbnZhciBhbmNob3JzID0gcmVxdWlyZSgnLi9hbmNob3JzLmpzJyk7XG52YXIgYXBwbHlSZXZpdmVyID0gcmVxdWlyZSgnLi9hcHBseVJldml2ZXIuanMnKTtcbnZhciBjcmVhdGVOb2RlID0gcmVxdWlyZSgnLi9jcmVhdGVOb2RlLmpzJyk7XG52YXIgZGlyZWN0aXZlcyA9IHJlcXVpcmUoJy4vZGlyZWN0aXZlcy5qcycpO1xuXG5jbGFzcyBEb2N1bWVudCB7XG4gICAgY29uc3RydWN0b3IodmFsdWUsIHJlcGxhY2VyLCBvcHRpb25zKSB7XG4gICAgICAgIC8qKiBBIGNvbW1lbnQgYmVmb3JlIHRoaXMgRG9jdW1lbnQgKi9cbiAgICAgICAgdGhpcy5jb21tZW50QmVmb3JlID0gbnVsbDtcbiAgICAgICAgLyoqIEEgY29tbWVudCBpbW1lZGlhdGVseSBhZnRlciB0aGlzIERvY3VtZW50ICovXG4gICAgICAgIHRoaXMuY29tbWVudCA9IG51bGw7XG4gICAgICAgIC8qKiBFcnJvcnMgZW5jb3VudGVyZWQgZHVyaW5nIHBhcnNpbmcuICovXG4gICAgICAgIHRoaXMuZXJyb3JzID0gW107XG4gICAgICAgIC8qKiBXYXJuaW5ncyBlbmNvdW50ZXJlZCBkdXJpbmcgcGFyc2luZy4gKi9cbiAgICAgICAgdGhpcy53YXJuaW5ncyA9IFtdO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgaWRlbnRpdHkuTk9ERV9UWVBFLCB7IHZhbHVlOiBpZGVudGl0eS5ET0MgfSk7XG4gICAgICAgIGxldCBfcmVwbGFjZXIgPSBudWxsO1xuICAgICAgICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAnZnVuY3Rpb24nIHx8IEFycmF5LmlzQXJyYXkocmVwbGFjZXIpKSB7XG4gICAgICAgICAgICBfcmVwbGFjZXIgPSByZXBsYWNlcjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChvcHRpb25zID09PSB1bmRlZmluZWQgJiYgcmVwbGFjZXIpIHtcbiAgICAgICAgICAgIG9wdGlvbnMgPSByZXBsYWNlcjtcbiAgICAgICAgICAgIHJlcGxhY2VyID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9wdCA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAgICAgaW50QXNCaWdJbnQ6IGZhbHNlLFxuICAgICAgICAgICAga2VlcFNvdXJjZVRva2VuczogZmFsc2UsXG4gICAgICAgICAgICBsb2dMZXZlbDogJ3dhcm4nLFxuICAgICAgICAgICAgcHJldHR5RXJyb3JzOiB0cnVlLFxuICAgICAgICAgICAgc3RyaWN0OiB0cnVlLFxuICAgICAgICAgICAgc3RyaW5nS2V5czogZmFsc2UsXG4gICAgICAgICAgICB1bmlxdWVLZXlzOiB0cnVlLFxuICAgICAgICAgICAgdmVyc2lvbjogJzEuMidcbiAgICAgICAgfSwgb3B0aW9ucyk7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdDtcbiAgICAgICAgbGV0IHsgdmVyc2lvbiB9ID0gb3B0O1xuICAgICAgICBpZiAob3B0aW9ucz8uX2RpcmVjdGl2ZXMpIHtcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlcyA9IG9wdGlvbnMuX2RpcmVjdGl2ZXMuYXREb2N1bWVudCgpO1xuICAgICAgICAgICAgaWYgKHRoaXMuZGlyZWN0aXZlcy55YW1sLmV4cGxpY2l0KVxuICAgICAgICAgICAgICAgIHZlcnNpb24gPSB0aGlzLmRpcmVjdGl2ZXMueWFtbC52ZXJzaW9uO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlcyA9IG5ldyBkaXJlY3RpdmVzLkRpcmVjdGl2ZXMoeyB2ZXJzaW9uIH0pO1xuICAgICAgICB0aGlzLnNldFNjaGVtYSh2ZXJzaW9uLCBvcHRpb25zKTtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBXZSBjYW4ndCByZWFsbHkga25vdyB0aGF0IHRoaXMgbWF0Y2hlcyBDb250ZW50cy5cbiAgICAgICAgdGhpcy5jb250ZW50cyA9XG4gICAgICAgICAgICB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gbnVsbCA6IHRoaXMuY3JlYXRlTm9kZSh2YWx1ZSwgX3JlcGxhY2VyLCBvcHRpb25zKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGEgZGVlcCBjb3B5IG9mIHRoaXMgRG9jdW1lbnQgYW5kIGl0cyBjb250ZW50cy5cbiAgICAgKlxuICAgICAqIEN1c3RvbSBOb2RlIHZhbHVlcyB0aGF0IGluaGVyaXQgZnJvbSBgT2JqZWN0YCBzdGlsbCByZWZlciB0byB0aGVpciBvcmlnaW5hbCBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgY2xvbmUoKSB7XG4gICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKERvY3VtZW50LnByb3RvdHlwZSwge1xuICAgICAgICAgICAgW2lkZW50aXR5Lk5PREVfVFlQRV06IHsgdmFsdWU6IGlkZW50aXR5LkRPQyB9XG4gICAgICAgIH0pO1xuICAgICAgICBjb3B5LmNvbW1lbnRCZWZvcmUgPSB0aGlzLmNvbW1lbnRCZWZvcmU7XG4gICAgICAgIGNvcHkuY29tbWVudCA9IHRoaXMuY29tbWVudDtcbiAgICAgICAgY29weS5lcnJvcnMgPSB0aGlzLmVycm9ycy5zbGljZSgpO1xuICAgICAgICBjb3B5Lndhcm5pbmdzID0gdGhpcy53YXJuaW5ncy5zbGljZSgpO1xuICAgICAgICBjb3B5Lm9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLm9wdGlvbnMpO1xuICAgICAgICBpZiAodGhpcy5kaXJlY3RpdmVzKVxuICAgICAgICAgICAgY29weS5kaXJlY3RpdmVzID0gdGhpcy5kaXJlY3RpdmVzLmNsb25lKCk7XG4gICAgICAgIGNvcHkuc2NoZW1hID0gdGhpcy5zY2hlbWEuY2xvbmUoKTtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBXZSBjYW4ndCByZWFsbHkga25vdyB0aGF0IHRoaXMgbWF0Y2hlcyBDb250ZW50cy5cbiAgICAgICAgY29weS5jb250ZW50cyA9IGlkZW50aXR5LmlzTm9kZSh0aGlzLmNvbnRlbnRzKVxuICAgICAgICAgICAgPyB0aGlzLmNvbnRlbnRzLmNsb25lKGNvcHkuc2NoZW1hKVxuICAgICAgICAgICAgOiB0aGlzLmNvbnRlbnRzO1xuICAgICAgICBpZiAodGhpcy5yYW5nZSlcbiAgICAgICAgICAgIGNvcHkucmFuZ2UgPSB0aGlzLnJhbmdlLnNsaWNlKCk7XG4gICAgICAgIHJldHVybiBjb3B5O1xuICAgIH1cbiAgICAvKiogQWRkcyBhIHZhbHVlIHRvIHRoZSBkb2N1bWVudC4gKi9cbiAgICBhZGQodmFsdWUpIHtcbiAgICAgICAgaWYgKGFzc2VydENvbGxlY3Rpb24odGhpcy5jb250ZW50cykpXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRzLmFkZCh2YWx1ZSk7XG4gICAgfVxuICAgIC8qKiBBZGRzIGEgdmFsdWUgdG8gdGhlIGRvY3VtZW50LiAqL1xuICAgIGFkZEluKHBhdGgsIHZhbHVlKSB7XG4gICAgICAgIGlmIChhc3NlcnRDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpKVxuICAgICAgICAgICAgdGhpcy5jb250ZW50cy5hZGRJbihwYXRoLCB2YWx1ZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG5ldyBgQWxpYXNgIG5vZGUsIGVuc3VyaW5nIHRoYXQgdGhlIHRhcmdldCBgbm9kZWAgaGFzIHRoZSByZXF1aXJlZCBhbmNob3IuXG4gICAgICpcbiAgICAgKiBJZiBgbm9kZWAgYWxyZWFkeSBoYXMgYW4gYW5jaG9yLCBgbmFtZWAgaXMgaWdub3JlZC5cbiAgICAgKiBPdGhlcndpc2UsIHRoZSBgbm9kZS5hbmNob3JgIHZhbHVlIHdpbGwgYmUgc2V0IHRvIGBuYW1lYCxcbiAgICAgKiBvciBpZiBhbiBhbmNob3Igd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBwcmVzZW50IGluIHRoZSBkb2N1bWVudCxcbiAgICAgKiBgbmFtZWAgd2lsbCBiZSB1c2VkIGFzIGEgcHJlZml4IGZvciBhIG5ldyB1bmlxdWUgYW5jaG9yLlxuICAgICAqIElmIGBuYW1lYCBpcyB1bmRlZmluZWQsIHRoZSBnZW5lcmF0ZWQgYW5jaG9yIHdpbGwgdXNlICdhJyBhcyBhIHByZWZpeC5cbiAgICAgKi9cbiAgICBjcmVhdGVBbGlhcyhub2RlLCBuYW1lKSB7XG4gICAgICAgIGlmICghbm9kZS5hbmNob3IpIHtcbiAgICAgICAgICAgIGNvbnN0IHByZXYgPSBhbmNob3JzLmFuY2hvck5hbWVzKHRoaXMpO1xuICAgICAgICAgICAgbm9kZS5hbmNob3IgPVxuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLW51bGxpc2gtY29hbGVzY2luZ1xuICAgICAgICAgICAgICAgICFuYW1lIHx8IHByZXYuaGFzKG5hbWUpID8gYW5jaG9ycy5maW5kTmV3QW5jaG9yKG5hbWUgfHwgJ2EnLCBwcmV2KSA6IG5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBBbGlhcy5BbGlhcyhub2RlLmFuY2hvcik7XG4gICAgfVxuICAgIGNyZWF0ZU5vZGUodmFsdWUsIHJlcGxhY2VyLCBvcHRpb25zKSB7XG4gICAgICAgIGxldCBfcmVwbGFjZXIgPSB1bmRlZmluZWQ7XG4gICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHZhbHVlID0gcmVwbGFjZXIuY2FsbCh7ICcnOiB2YWx1ZSB9LCAnJywgdmFsdWUpO1xuICAgICAgICAgICAgX3JlcGxhY2VyID0gcmVwbGFjZXI7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoQXJyYXkuaXNBcnJheShyZXBsYWNlcikpIHtcbiAgICAgICAgICAgIGNvbnN0IGtleVRvU3RyID0gKHYpID0+IHR5cGVvZiB2ID09PSAnbnVtYmVyJyB8fCB2IGluc3RhbmNlb2YgU3RyaW5nIHx8IHYgaW5zdGFuY2VvZiBOdW1iZXI7XG4gICAgICAgICAgICBjb25zdCBhc1N0ciA9IHJlcGxhY2VyLmZpbHRlcihrZXlUb1N0cikubWFwKFN0cmluZyk7XG4gICAgICAgICAgICBpZiAoYXNTdHIubGVuZ3RoID4gMClcbiAgICAgICAgICAgICAgICByZXBsYWNlciA9IHJlcGxhY2VyLmNvbmNhdChhc1N0cik7XG4gICAgICAgICAgICBfcmVwbGFjZXIgPSByZXBsYWNlcjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChvcHRpb25zID09PSB1bmRlZmluZWQgJiYgcmVwbGFjZXIpIHtcbiAgICAgICAgICAgIG9wdGlvbnMgPSByZXBsYWNlcjtcbiAgICAgICAgICAgIHJlcGxhY2VyID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHsgYWxpYXNEdXBsaWNhdGVPYmplY3RzLCBhbmNob3JQcmVmaXgsIGZsb3csIGtlZXBVbmRlZmluZWQsIG9uVGFnT2JqLCB0YWcgfSA9IG9wdGlvbnMgPz8ge307XG4gICAgICAgIGNvbnN0IHsgb25BbmNob3IsIHNldEFuY2hvcnMsIHNvdXJjZU9iamVjdHMgfSA9IGFuY2hvcnMuY3JlYXRlTm9kZUFuY2hvcnModGhpcywgXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLW51bGxpc2gtY29hbGVzY2luZ1xuICAgICAgICBhbmNob3JQcmVmaXggfHwgJ2EnKTtcbiAgICAgICAgY29uc3QgY3R4ID0ge1xuICAgICAgICAgICAgYWxpYXNEdXBsaWNhdGVPYmplY3RzOiBhbGlhc0R1cGxpY2F0ZU9iamVjdHMgPz8gdHJ1ZSxcbiAgICAgICAgICAgIGtlZXBVbmRlZmluZWQ6IGtlZXBVbmRlZmluZWQgPz8gZmFsc2UsXG4gICAgICAgICAgICBvbkFuY2hvcixcbiAgICAgICAgICAgIG9uVGFnT2JqLFxuICAgICAgICAgICAgcmVwbGFjZXI6IF9yZXBsYWNlcixcbiAgICAgICAgICAgIHNjaGVtYTogdGhpcy5zY2hlbWEsXG4gICAgICAgICAgICBzb3VyY2VPYmplY3RzXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG5vZGUgPSBjcmVhdGVOb2RlLmNyZWF0ZU5vZGUodmFsdWUsIHRhZywgY3R4KTtcbiAgICAgICAgaWYgKGZsb3cgJiYgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKVxuICAgICAgICAgICAgbm9kZS5mbG93ID0gdHJ1ZTtcbiAgICAgICAgc2V0QW5jaG9ycygpO1xuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ29udmVydCBhIGtleSBhbmQgYSB2YWx1ZSBpbnRvIGEgYFBhaXJgIHVzaW5nIHRoZSBjdXJyZW50IHNjaGVtYSxcbiAgICAgKiByZWN1cnNpdmVseSB3cmFwcGluZyBhbGwgdmFsdWVzIGFzIGBTY2FsYXJgIG9yIGBDb2xsZWN0aW9uYCBub2Rlcy5cbiAgICAgKi9cbiAgICBjcmVhdGVQYWlyKGtleSwgdmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgICAgICBjb25zdCBrID0gdGhpcy5jcmVhdGVOb2RlKGtleSwgbnVsbCwgb3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHYgPSB0aGlzLmNyZWF0ZU5vZGUodmFsdWUsIG51bGwsIG9wdGlvbnMpO1xuICAgICAgICByZXR1cm4gbmV3IFBhaXIuUGFpcihrLCB2KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGRvY3VtZW50LlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgaXRlbSB3YXMgZm91bmQgYW5kIHJlbW92ZWQuXG4gICAgICovXG4gICAgZGVsZXRlKGtleSkge1xuICAgICAgICByZXR1cm4gYXNzZXJ0Q29sbGVjdGlvbih0aGlzLmNvbnRlbnRzKSA/IHRoaXMuY29udGVudHMuZGVsZXRlKGtleSkgOiBmYWxzZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGRvY3VtZW50LlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgaXRlbSB3YXMgZm91bmQgYW5kIHJlbW92ZWQuXG4gICAgICovXG4gICAgZGVsZXRlSW4ocGF0aCkge1xuICAgICAgICBpZiAoQ29sbGVjdGlvbi5pc0VtcHR5UGF0aChwYXRoKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udGVudHMgPT0gbnVsbClcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFByZXN1bWVkIGltcG9zc2libGUgaWYgU3RyaWN0IGV4dGVuZHMgZmFsc2VcbiAgICAgICAgICAgIHRoaXMuY29udGVudHMgPSBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFzc2VydENvbGxlY3Rpb24odGhpcy5jb250ZW50cylcbiAgICAgICAgICAgID8gdGhpcy5jb250ZW50cy5kZWxldGVJbihwYXRoKVxuICAgICAgICAgICAgOiBmYWxzZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBpdGVtIGF0IGBrZXlgLCBvciBgdW5kZWZpbmVkYCBpZiBub3QgZm91bmQuIEJ5IGRlZmF1bHQgdW53cmFwc1xuICAgICAqIHNjYWxhciB2YWx1ZXMgZnJvbSB0aGVpciBzdXJyb3VuZGluZyBub2RlOyB0byBkaXNhYmxlIHNldCBga2VlcFNjYWxhcmAgdG9cbiAgICAgKiBgdHJ1ZWAgKGNvbGxlY3Rpb25zIGFyZSBhbHdheXMgcmV0dXJuZWQgaW50YWN0KS5cbiAgICAgKi9cbiAgICBnZXQoa2V5LCBrZWVwU2NhbGFyKSB7XG4gICAgICAgIHJldHVybiBpZGVudGl0eS5pc0NvbGxlY3Rpb24odGhpcy5jb250ZW50cylcbiAgICAgICAgICAgID8gdGhpcy5jb250ZW50cy5nZXQoa2V5LCBrZWVwU2NhbGFyKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgaXRlbSBhdCBgcGF0aGAsIG9yIGB1bmRlZmluZWRgIGlmIG5vdCBmb3VuZC4gQnkgZGVmYXVsdCB1bndyYXBzXG4gICAgICogc2NhbGFyIHZhbHVlcyBmcm9tIHRoZWlyIHN1cnJvdW5kaW5nIG5vZGU7IHRvIGRpc2FibGUgc2V0IGBrZWVwU2NhbGFyYCB0b1xuICAgICAqIGB0cnVlYCAoY29sbGVjdGlvbnMgYXJlIGFsd2F5cyByZXR1cm5lZCBpbnRhY3QpLlxuICAgICAqL1xuICAgIGdldEluKHBhdGgsIGtlZXBTY2FsYXIpIHtcbiAgICAgICAgaWYgKENvbGxlY3Rpb24uaXNFbXB0eVBhdGgocGF0aCkpXG4gICAgICAgICAgICByZXR1cm4gIWtlZXBTY2FsYXIgJiYgaWRlbnRpdHkuaXNTY2FsYXIodGhpcy5jb250ZW50cylcbiAgICAgICAgICAgICAgICA/IHRoaXMuY29udGVudHMudmFsdWVcbiAgICAgICAgICAgICAgICA6IHRoaXMuY29udGVudHM7XG4gICAgICAgIHJldHVybiBpZGVudGl0eS5pc0NvbGxlY3Rpb24odGhpcy5jb250ZW50cylcbiAgICAgICAgICAgID8gdGhpcy5jb250ZW50cy5nZXRJbihwYXRoLCBrZWVwU2NhbGFyKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGUgZG9jdW1lbnQgaW5jbHVkZXMgYSB2YWx1ZSB3aXRoIHRoZSBrZXkgYGtleWAuXG4gICAgICovXG4gICAgaGFzKGtleSkge1xuICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpID8gdGhpcy5jb250ZW50cy5oYXMoa2V5KSA6IGZhbHNlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGhlIGRvY3VtZW50IGluY2x1ZGVzIGEgdmFsdWUgYXQgYHBhdGhgLlxuICAgICAqL1xuICAgIGhhc0luKHBhdGgpIHtcbiAgICAgICAgaWYgKENvbGxlY3Rpb24uaXNFbXB0eVBhdGgocGF0aCkpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50cyAhPT0gdW5kZWZpbmVkO1xuICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpID8gdGhpcy5jb250ZW50cy5oYXNJbihwYXRoKSA6IGZhbHNlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBkb2N1bWVudC4gRm9yIGAhIXNldGAsIGB2YWx1ZWAgbmVlZHMgdG8gYmUgYVxuICAgICAqIGJvb2xlYW4gdG8gYWRkL3JlbW92ZSB0aGUgaXRlbSBmcm9tIHRoZSBzZXQuXG4gICAgICovXG4gICAgc2V0KGtleSwgdmFsdWUpIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudHMgPT0gbnVsbCkge1xuICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBXZSBjYW4ndCByZWFsbHkga25vdyB0aGF0IHRoaXMgbWF0Y2hlcyBDb250ZW50cy5cbiAgICAgICAgICAgIHRoaXMuY29udGVudHMgPSBDb2xsZWN0aW9uLmNvbGxlY3Rpb25Gcm9tUGF0aCh0aGlzLnNjaGVtYSwgW2tleV0sIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChhc3NlcnRDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRzLnNldChrZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBkb2N1bWVudC4gRm9yIGAhIXNldGAsIGB2YWx1ZWAgbmVlZHMgdG8gYmUgYVxuICAgICAqIGJvb2xlYW4gdG8gYWRkL3JlbW92ZSB0aGUgaXRlbSBmcm9tIHRoZSBzZXQuXG4gICAgICovXG4gICAgc2V0SW4ocGF0aCwgdmFsdWUpIHtcbiAgICAgICAgaWYgKENvbGxlY3Rpb24uaXNFbXB0eVBhdGgocGF0aCkpIHtcbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgV2UgY2FuJ3QgcmVhbGx5IGtub3cgdGhhdCB0aGlzIG1hdGNoZXMgQ29udGVudHMuXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRzID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodGhpcy5jb250ZW50cyA9PSBudWxsKSB7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFdlIGNhbid0IHJlYWxseSBrbm93IHRoYXQgdGhpcyBtYXRjaGVzIENvbnRlbnRzLlxuICAgICAgICAgICAgdGhpcy5jb250ZW50cyA9IENvbGxlY3Rpb24uY29sbGVjdGlvbkZyb21QYXRoKHRoaXMuc2NoZW1hLCBBcnJheS5mcm9tKHBhdGgpLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYXNzZXJ0Q29sbGVjdGlvbih0aGlzLmNvbnRlbnRzKSkge1xuICAgICAgICAgICAgdGhpcy5jb250ZW50cy5zZXRJbihwYXRoLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBZQU1MIHZlcnNpb24gYW5kIHNjaGVtYSB1c2VkIGJ5IHRoZSBkb2N1bWVudC5cbiAgICAgKiBBIGBudWxsYCB2ZXJzaW9uIGRpc2FibGVzIHN1cHBvcnQgZm9yIGRpcmVjdGl2ZXMsIGV4cGxpY2l0IHRhZ3MsIGFuY2hvcnMsIGFuZCBhbGlhc2VzLlxuICAgICAqIEl0IGFsc28gcmVxdWlyZXMgdGhlIGBzY2hlbWFgIG9wdGlvbiB0byBiZSBnaXZlbiBhcyBhIGBTY2hlbWFgIGluc3RhbmNlIHZhbHVlLlxuICAgICAqXG4gICAgICogT3ZlcnJpZGVzIGFsbCBwcmV2aW91c2x5IHNldCBzY2hlbWEgb3B0aW9ucy5cbiAgICAgKi9cbiAgICBzZXRTY2hlbWEodmVyc2lvbiwgb3B0aW9ucyA9IHt9KSB7XG4gICAgICAgIGlmICh0eXBlb2YgdmVyc2lvbiA9PT0gJ251bWJlcicpXG4gICAgICAgICAgICB2ZXJzaW9uID0gU3RyaW5nKHZlcnNpb24pO1xuICAgICAgICBsZXQgb3B0O1xuICAgICAgICBzd2l0Y2ggKHZlcnNpb24pIHtcbiAgICAgICAgICAgIGNhc2UgJzEuMSc6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGlyZWN0aXZlcylcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVzLnlhbWwudmVyc2lvbiA9ICcxLjEnO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVzID0gbmV3IGRpcmVjdGl2ZXMuRGlyZWN0aXZlcyh7IHZlcnNpb246ICcxLjEnIH0pO1xuICAgICAgICAgICAgICAgIG9wdCA9IHsgcmVzb2x2ZUtub3duVGFnczogZmFsc2UsIHNjaGVtYTogJ3lhbWwtMS4xJyB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnMS4yJzpcbiAgICAgICAgICAgIGNhc2UgJ25leHQnOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRpcmVjdGl2ZXMpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlcy55YW1sLnZlcnNpb24gPSB2ZXJzaW9uO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVzID0gbmV3IGRpcmVjdGl2ZXMuRGlyZWN0aXZlcyh7IHZlcnNpb24gfSk7XG4gICAgICAgICAgICAgICAgb3B0ID0geyByZXNvbHZlS25vd25UYWdzOiB0cnVlLCBzY2hlbWE6ICdjb3JlJyB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBudWxsOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRpcmVjdGl2ZXMpXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmRpcmVjdGl2ZXM7XG4gICAgICAgICAgICAgICAgb3B0ID0gbnVsbDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdiA9IEpTT04uc3RyaW5naWZ5KHZlcnNpb24pO1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgJzEuMScsICcxLjInIG9yIG51bGwgYXMgZmlyc3QgYXJndW1lbnQsIGJ1dCBmb3VuZDogJHtzdn1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBOb3QgdXNpbmcgYGluc3RhbmNlb2YgU2NoZW1hYCB0byBhbGxvdyBmb3IgZHVjayB0eXBpbmdcbiAgICAgICAgaWYgKG9wdGlvbnMuc2NoZW1hIGluc3RhbmNlb2YgT2JqZWN0KVxuICAgICAgICAgICAgdGhpcy5zY2hlbWEgPSBvcHRpb25zLnNjaGVtYTtcbiAgICAgICAgZWxzZSBpZiAob3B0KVxuICAgICAgICAgICAgdGhpcy5zY2hlbWEgPSBuZXcgU2NoZW1hLlNjaGVtYShPYmplY3QuYXNzaWduKG9wdCwgb3B0aW9ucykpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFdpdGggYSBudWxsIFlBTUwgdmVyc2lvbiwgdGhlIHsgc2NoZW1hOiBTY2hlbWEgfSBvcHRpb24gaXMgcmVxdWlyZWRgKTtcbiAgICB9XG4gICAgLy8ganNvbiAmIGpzb25BcmcgYXJlIG9ubHkgdXNlZCBmcm9tIHRvSlNPTigpXG4gICAgdG9KUyh7IGpzb24sIGpzb25BcmcsIG1hcEFzTWFwLCBtYXhBbGlhc0NvdW50LCBvbkFuY2hvciwgcmV2aXZlciB9ID0ge30pIHtcbiAgICAgICAgY29uc3QgY3R4ID0ge1xuICAgICAgICAgICAgYW5jaG9yczogbmV3IE1hcCgpLFxuICAgICAgICAgICAgZG9jOiB0aGlzLFxuICAgICAgICAgICAga2VlcDogIWpzb24sXG4gICAgICAgICAgICBtYXBBc01hcDogbWFwQXNNYXAgPT09IHRydWUsXG4gICAgICAgICAgICBtYXBLZXlXYXJuZWQ6IGZhbHNlLFxuICAgICAgICAgICAgbWF4QWxpYXNDb3VudDogdHlwZW9mIG1heEFsaWFzQ291bnQgPT09ICdudW1iZXInID8gbWF4QWxpYXNDb3VudCA6IDEwMFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCByZXMgPSB0b0pTLnRvSlModGhpcy5jb250ZW50cywganNvbkFyZyA/PyAnJywgY3R4KTtcbiAgICAgICAgaWYgKHR5cGVvZiBvbkFuY2hvciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIGZvciAoY29uc3QgeyBjb3VudCwgcmVzIH0gb2YgY3R4LmFuY2hvcnMudmFsdWVzKCkpXG4gICAgICAgICAgICAgICAgb25BbmNob3IocmVzLCBjb3VudCk7XG4gICAgICAgIHJldHVybiB0eXBlb2YgcmV2aXZlciA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyBhcHBseVJldml2ZXIuYXBwbHlSZXZpdmVyKHJldml2ZXIsIHsgJyc6IHJlcyB9LCAnJywgcmVzKVxuICAgICAgICAgICAgOiByZXM7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEEgSlNPTiByZXByZXNlbnRhdGlvbiBvZiB0aGUgZG9jdW1lbnQgYGNvbnRlbnRzYC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBqc29uQXJnIFVzZWQgYnkgYEpTT04uc3RyaW5naWZ5YCB0byBpbmRpY2F0ZSB0aGUgYXJyYXkgaW5kZXggb3JcbiAgICAgKiAgIHByb3BlcnR5IG5hbWUuXG4gICAgICovXG4gICAgdG9KU09OKGpzb25BcmcsIG9uQW5jaG9yKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRvSlMoeyBqc29uOiB0cnVlLCBqc29uQXJnLCBtYXBBc01hcDogZmFsc2UsIG9uQW5jaG9yIH0pO1xuICAgIH1cbiAgICAvKiogQSBZQU1MIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkb2N1bWVudC4gKi9cbiAgICB0b1N0cmluZyhvcHRpb25zID0ge30pIHtcbiAgICAgICAgaWYgKHRoaXMuZXJyb3JzLmxlbmd0aCA+IDApXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RvY3VtZW50IHdpdGggZXJyb3JzIGNhbm5vdCBiZSBzdHJpbmdpZmllZCcpO1xuICAgICAgICBpZiAoJ2luZGVudCcgaW4gb3B0aW9ucyAmJlxuICAgICAgICAgICAgKCFOdW1iZXIuaXNJbnRlZ2VyKG9wdGlvbnMuaW5kZW50KSB8fCBOdW1iZXIob3B0aW9ucy5pbmRlbnQpIDw9IDApKSB7XG4gICAgICAgICAgICBjb25zdCBzID0gSlNPTi5zdHJpbmdpZnkob3B0aW9ucy5pbmRlbnQpO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBcImluZGVudFwiIG9wdGlvbiBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciwgbm90ICR7c31gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3RyaW5naWZ5RG9jdW1lbnQuc3RyaW5naWZ5RG9jdW1lbnQodGhpcywgb3B0aW9ucyk7XG4gICAgfVxufVxuZnVuY3Rpb24gYXNzZXJ0Q29sbGVjdGlvbihjb250ZW50cykge1xuICAgIGlmIChpZGVudGl0eS5pc0NvbGxlY3Rpb24oY29udGVudHMpKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIGEgWUFNTCBjb2xsZWN0aW9uIGFzIGRvY3VtZW50IGNvbnRlbnRzJyk7XG59XG5cbmV4cG9ydHMuRG9jdW1lbnQgPSBEb2N1bWVudDtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNsYXNzIFlBTUxFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihuYW1lLCBwb3MsIGNvZGUsIG1lc3NhZ2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgdGhpcy5jb2RlID0gY29kZTtcbiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTtcbiAgICAgICAgdGhpcy5wb3MgPSBwb3M7XG4gICAgfVxufVxuY2xhc3MgWUFNTFBhcnNlRXJyb3IgZXh0ZW5kcyBZQU1MRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHBvcywgY29kZSwgbWVzc2FnZSkge1xuICAgICAgICBzdXBlcignWUFNTFBhcnNlRXJyb3InLCBwb3MsIGNvZGUsIG1lc3NhZ2UpO1xuICAgIH1cbn1cbmNsYXNzIFlBTUxXYXJuaW5nIGV4dGVuZHMgWUFNTEVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcihwb3MsIGNvZGUsIG1lc3NhZ2UpIHtcbiAgICAgICAgc3VwZXIoJ1lBTUxXYXJuaW5nJywgcG9zLCBjb2RlLCBtZXNzYWdlKTtcbiAgICB9XG59XG5jb25zdCBwcmV0dGlmeUVycm9yID0gKHNyYywgbGMpID0+IChlcnJvcikgPT4ge1xuICAgIGlmIChlcnJvci5wb3NbMF0gPT09IC0xKVxuICAgICAgICByZXR1cm47XG4gICAgZXJyb3IubGluZVBvcyA9IGVycm9yLnBvcy5tYXAocG9zID0+IGxjLmxpbmVQb3MocG9zKSk7XG4gICAgY29uc3QgeyBsaW5lLCBjb2wgfSA9IGVycm9yLmxpbmVQb3NbMF07XG4gICAgZXJyb3IubWVzc2FnZSArPSBgIGF0IGxpbmUgJHtsaW5lfSwgY29sdW1uICR7Y29sfWA7XG4gICAgbGV0IGNpID0gY29sIC0gMTtcbiAgICBsZXQgbGluZVN0ciA9IHNyY1xuICAgICAgICAuc3Vic3RyaW5nKGxjLmxpbmVTdGFydHNbbGluZSAtIDFdLCBsYy5saW5lU3RhcnRzW2xpbmVdKVxuICAgICAgICAucmVwbGFjZSgvW1xcblxccl0rJC8sICcnKTtcbiAgICAvLyBUcmltIHRvIG1heCA4MCBjaGFycywga2VlcGluZyBjb2wgcG9zaXRpb24gbmVhciB0aGUgbWlkZGxlXG4gICAgaWYgKGNpID49IDYwICYmIGxpbmVTdHIubGVuZ3RoID4gODApIHtcbiAgICAgICAgY29uc3QgdHJpbVN0YXJ0ID0gTWF0aC5taW4oY2kgLSAzOSwgbGluZVN0ci5sZW5ndGggLSA3OSk7XG4gICAgICAgIGxpbmVTdHIgPSAnXHUyMDI2JyArIGxpbmVTdHIuc3Vic3RyaW5nKHRyaW1TdGFydCk7XG4gICAgICAgIGNpIC09IHRyaW1TdGFydCAtIDE7XG4gICAgfVxuICAgIGlmIChsaW5lU3RyLmxlbmd0aCA+IDgwKVxuICAgICAgICBsaW5lU3RyID0gbGluZVN0ci5zdWJzdHJpbmcoMCwgNzkpICsgJ1x1MjAyNic7XG4gICAgLy8gSW5jbHVkZSBwcmV2aW91cyBsaW5lIGluIGNvbnRleHQgaWYgcG9pbnRpbmcgYXQgbGluZSBzdGFydFxuICAgIGlmIChsaW5lID4gMSAmJiAvXiAqJC8udGVzdChsaW5lU3RyLnN1YnN0cmluZygwLCBjaSkpKSB7XG4gICAgICAgIC8vIFJlZ2V4cCB3b24ndCBtYXRjaCBpZiBzdGFydCBpcyB0cmltbWVkXG4gICAgICAgIGxldCBwcmV2ID0gc3JjLnN1YnN0cmluZyhsYy5saW5lU3RhcnRzW2xpbmUgLSAyXSwgbGMubGluZVN0YXJ0c1tsaW5lIC0gMV0pO1xuICAgICAgICBpZiAocHJldi5sZW5ndGggPiA4MClcbiAgICAgICAgICAgIHByZXYgPSBwcmV2LnN1YnN0cmluZygwLCA3OSkgKyAnXHUyMDI2XFxuJztcbiAgICAgICAgbGluZVN0ciA9IHByZXYgKyBsaW5lU3RyO1xuICAgIH1cbiAgICBpZiAoL1teIF0vLnRlc3QobGluZVN0cikpIHtcbiAgICAgICAgbGV0IGNvdW50ID0gMTtcbiAgICAgICAgY29uc3QgZW5kID0gZXJyb3IubGluZVBvc1sxXTtcbiAgICAgICAgaWYgKGVuZCAmJiBlbmQubGluZSA9PT0gbGluZSAmJiBlbmQuY29sID4gY29sKSB7XG4gICAgICAgICAgICBjb3VudCA9IE1hdGgubWF4KDEsIE1hdGgubWluKGVuZC5jb2wgLSBjb2wsIDgwIC0gY2kpKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwb2ludGVyID0gJyAnLnJlcGVhdChjaSkgKyAnXicucmVwZWF0KGNvdW50KTtcbiAgICAgICAgZXJyb3IubWVzc2FnZSArPSBgOlxcblxcbiR7bGluZVN0cn1cXG4ke3BvaW50ZXJ9XFxuYDtcbiAgICB9XG59O1xuXG5leHBvcnRzLllBTUxFcnJvciA9IFlBTUxFcnJvcjtcbmV4cG9ydHMuWUFNTFBhcnNlRXJyb3IgPSBZQU1MUGFyc2VFcnJvcjtcbmV4cG9ydHMuWUFNTFdhcm5pbmcgPSBZQU1MV2FybmluZztcbmV4cG9ydHMucHJldHRpZnlFcnJvciA9IHByZXR0aWZ5RXJyb3I7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5mdW5jdGlvbiByZXNvbHZlUHJvcHModG9rZW5zLCB7IGZsb3csIGluZGljYXRvciwgbmV4dCwgb2Zmc2V0LCBvbkVycm9yLCBwYXJlbnRJbmRlbnQsIHN0YXJ0T25OZXdsaW5lIH0pIHtcbiAgICBsZXQgc3BhY2VCZWZvcmUgPSBmYWxzZTtcbiAgICBsZXQgYXROZXdsaW5lID0gc3RhcnRPbk5ld2xpbmU7XG4gICAgbGV0IGhhc1NwYWNlID0gc3RhcnRPbk5ld2xpbmU7XG4gICAgbGV0IGNvbW1lbnQgPSAnJztcbiAgICBsZXQgY29tbWVudFNlcCA9ICcnO1xuICAgIGxldCBoYXNOZXdsaW5lID0gZmFsc2U7XG4gICAgbGV0IHJlcVNwYWNlID0gZmFsc2U7XG4gICAgbGV0IHRhYiA9IG51bGw7XG4gICAgbGV0IGFuY2hvciA9IG51bGw7XG4gICAgbGV0IHRhZyA9IG51bGw7XG4gICAgbGV0IG5ld2xpbmVBZnRlclByb3AgPSBudWxsO1xuICAgIGxldCBjb21tYSA9IG51bGw7XG4gICAgbGV0IGZvdW5kID0gbnVsbDtcbiAgICBsZXQgc3RhcnQgPSBudWxsO1xuICAgIGZvciAoY29uc3QgdG9rZW4gb2YgdG9rZW5zKSB7XG4gICAgICAgIGlmIChyZXFTcGFjZSkge1xuICAgICAgICAgICAgaWYgKHRva2VuLnR5cGUgIT09ICdzcGFjZScgJiZcbiAgICAgICAgICAgICAgICB0b2tlbi50eXBlICE9PSAnbmV3bGluZScgJiZcbiAgICAgICAgICAgICAgICB0b2tlbi50eXBlICE9PSAnY29tbWEnKVxuICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4ub2Zmc2V0LCAnTUlTU0lOR19DSEFSJywgJ1RhZ3MgYW5kIGFuY2hvcnMgbXVzdCBiZSBzZXBhcmF0ZWQgZnJvbSB0aGUgbmV4dCB0b2tlbiBieSB3aGl0ZSBzcGFjZScpO1xuICAgICAgICAgICAgcmVxU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGFiKSB7XG4gICAgICAgICAgICBpZiAoYXROZXdsaW5lICYmIHRva2VuLnR5cGUgIT09ICdjb21tZW50JyAmJiB0b2tlbi50eXBlICE9PSAnbmV3bGluZScpIHtcbiAgICAgICAgICAgICAgICBvbkVycm9yKHRhYiwgJ1RBQl9BU19JTkRFTlQnLCAnVGFicyBhcmUgbm90IGFsbG93ZWQgYXMgaW5kZW50YXRpb24nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRhYiA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgc3dpdGNoICh0b2tlbi50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgLy8gQXQgdGhlIGRvYyBsZXZlbCwgdGFicyBhdCBsaW5lIHN0YXJ0IG1heSBiZSBwYXJzZWRcbiAgICAgICAgICAgICAgICAvLyBhcyBsZWFkaW5nIHdoaXRlIHNwYWNlIHJhdGhlciB0aGFuIGluZGVudGF0aW9uLlxuICAgICAgICAgICAgICAgIC8vIEluIGEgZmxvdyBjb2xsZWN0aW9uLCBvbmx5IHRoZSBwYXJzZXIgaGFuZGxlcyBpbmRlbnQuXG4gICAgICAgICAgICAgICAgaWYgKCFmbG93ICYmXG4gICAgICAgICAgICAgICAgICAgIChpbmRpY2F0b3IgIT09ICdkb2Mtc3RhcnQnIHx8IG5leHQ/LnR5cGUgIT09ICdmbG93LWNvbGxlY3Rpb24nKSAmJlxuICAgICAgICAgICAgICAgICAgICB0b2tlbi5zb3VyY2UuaW5jbHVkZXMoJ1xcdCcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRhYiA9IHRva2VuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoYXNTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdjb21tZW50Jzoge1xuICAgICAgICAgICAgICAgIGlmICghaGFzU3BhY2UpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdNSVNTSU5HX0NIQVInLCAnQ29tbWVudHMgbXVzdCBiZSBzZXBhcmF0ZWQgZnJvbSBvdGhlciB0b2tlbnMgYnkgd2hpdGUgc3BhY2UgY2hhcmFjdGVycycpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNiID0gdG9rZW4uc291cmNlLnN1YnN0cmluZygxKSB8fCAnICc7XG4gICAgICAgICAgICAgICAgaWYgKCFjb21tZW50KVxuICAgICAgICAgICAgICAgICAgICBjb21tZW50ID0gY2I7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICBjb21tZW50ICs9IGNvbW1lbnRTZXAgKyBjYjtcbiAgICAgICAgICAgICAgICBjb21tZW50U2VwID0gJyc7XG4gICAgICAgICAgICAgICAgYXROZXdsaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICBpZiAoYXROZXdsaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjb21tZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgY29tbWVudCArPSB0b2tlbi5zb3VyY2U7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCFmb3VuZCB8fCBpbmRpY2F0b3IgIT09ICdzZXEtaXRlbS1pbmQnKVxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhY2VCZWZvcmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGNvbW1lbnRTZXAgKz0gdG9rZW4uc291cmNlO1xuICAgICAgICAgICAgICAgIGF0TmV3bGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgaGFzTmV3bGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKGFuY2hvciB8fCB0YWcpXG4gICAgICAgICAgICAgICAgICAgIG5ld2xpbmVBZnRlclByb3AgPSB0b2tlbjtcbiAgICAgICAgICAgICAgICBoYXNTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdhbmNob3InOlxuICAgICAgICAgICAgICAgIGlmIChhbmNob3IpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdNVUxUSVBMRV9BTkNIT1JTJywgJ0Egbm9kZSBjYW4gaGF2ZSBhdCBtb3N0IG9uZSBhbmNob3InKTtcbiAgICAgICAgICAgICAgICBpZiAodG9rZW4uc291cmNlLmVuZHNXaXRoKCc6JykpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4ub2Zmc2V0ICsgdG9rZW4uc291cmNlLmxlbmd0aCAtIDEsICdCQURfQUxJQVMnLCAnQW5jaG9yIGVuZGluZyBpbiA6IGlzIGFtYmlndW91cycsIHRydWUpO1xuICAgICAgICAgICAgICAgIGFuY2hvciA9IHRva2VuO1xuICAgICAgICAgICAgICAgIHN0YXJ0ID8/IChzdGFydCA9IHRva2VuLm9mZnNldCk7XG4gICAgICAgICAgICAgICAgYXROZXdsaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICByZXFTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICd0YWcnOiB7XG4gICAgICAgICAgICAgICAgaWYgKHRhZylcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ01VTFRJUExFX1RBR1MnLCAnQSBub2RlIGNhbiBoYXZlIGF0IG1vc3Qgb25lIHRhZycpO1xuICAgICAgICAgICAgICAgIHRhZyA9IHRva2VuO1xuICAgICAgICAgICAgICAgIHN0YXJ0ID8/IChzdGFydCA9IHRva2VuLm9mZnNldCk7XG4gICAgICAgICAgICAgICAgYXROZXdsaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICByZXFTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIGluZGljYXRvcjpcbiAgICAgICAgICAgICAgICAvLyBDb3VsZCBoZXJlIGhhbmRsZSBwcmVjZWRpbmcgY29tbWVudHMgZGlmZmVyZW50bHlcbiAgICAgICAgICAgICAgICBpZiAoYW5jaG9yIHx8IHRhZylcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ0JBRF9QUk9QX09SREVSJywgYEFuY2hvcnMgYW5kIHRhZ3MgbXVzdCBiZSBhZnRlciB0aGUgJHt0b2tlbi5zb3VyY2V9IGluZGljYXRvcmApO1xuICAgICAgICAgICAgICAgIGlmIChmb3VuZClcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ1VORVhQRUNURURfVE9LRU4nLCBgVW5leHBlY3RlZCAke3Rva2VuLnNvdXJjZX0gaW4gJHtmbG93ID8/ICdjb2xsZWN0aW9uJ31gKTtcbiAgICAgICAgICAgICAgICBmb3VuZCA9IHRva2VuO1xuICAgICAgICAgICAgICAgIGF0TmV3bGluZSA9XG4gICAgICAgICAgICAgICAgICAgIGluZGljYXRvciA9PT0gJ3NlcS1pdGVtLWluZCcgfHwgaW5kaWNhdG9yID09PSAnZXhwbGljaXQta2V5LWluZCc7XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1hJzpcbiAgICAgICAgICAgICAgICBpZiAoZmxvdykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29tbWEpXG4gICAgICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICwgaW4gJHtmbG93fWApO1xuICAgICAgICAgICAgICAgICAgICBjb21tYSA9IHRva2VuO1xuICAgICAgICAgICAgICAgICAgICBhdE5ld2xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gZWxzZSBmYWxsdGhyb3VnaFxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICR7dG9rZW4udHlwZX0gdG9rZW5gKTtcbiAgICAgICAgICAgICAgICBhdE5ld2xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBoYXNTcGFjZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGxhc3QgPSB0b2tlbnNbdG9rZW5zLmxlbmd0aCAtIDFdO1xuICAgIGNvbnN0IGVuZCA9IGxhc3QgPyBsYXN0Lm9mZnNldCArIGxhc3Quc291cmNlLmxlbmd0aCA6IG9mZnNldDtcbiAgICBpZiAocmVxU3BhY2UgJiZcbiAgICAgICAgbmV4dCAmJlxuICAgICAgICBuZXh0LnR5cGUgIT09ICdzcGFjZScgJiZcbiAgICAgICAgbmV4dC50eXBlICE9PSAnbmV3bGluZScgJiZcbiAgICAgICAgbmV4dC50eXBlICE9PSAnY29tbWEnICYmXG4gICAgICAgIChuZXh0LnR5cGUgIT09ICdzY2FsYXInIHx8IG5leHQuc291cmNlICE9PSAnJykpIHtcbiAgICAgICAgb25FcnJvcihuZXh0Lm9mZnNldCwgJ01JU1NJTkdfQ0hBUicsICdUYWdzIGFuZCBhbmNob3JzIG11c3QgYmUgc2VwYXJhdGVkIGZyb20gdGhlIG5leHQgdG9rZW4gYnkgd2hpdGUgc3BhY2UnKTtcbiAgICB9XG4gICAgaWYgKHRhYiAmJlxuICAgICAgICAoKGF0TmV3bGluZSAmJiB0YWIuaW5kZW50IDw9IHBhcmVudEluZGVudCkgfHxcbiAgICAgICAgICAgIG5leHQ/LnR5cGUgPT09ICdibG9jay1tYXAnIHx8XG4gICAgICAgICAgICBuZXh0Py50eXBlID09PSAnYmxvY2stc2VxJykpXG4gICAgICAgIG9uRXJyb3IodGFiLCAnVEFCX0FTX0lOREVOVCcsICdUYWJzIGFyZSBub3QgYWxsb3dlZCBhcyBpbmRlbnRhdGlvbicpO1xuICAgIHJldHVybiB7XG4gICAgICAgIGNvbW1hLFxuICAgICAgICBmb3VuZCxcbiAgICAgICAgc3BhY2VCZWZvcmUsXG4gICAgICAgIGNvbW1lbnQsXG4gICAgICAgIGhhc05ld2xpbmUsXG4gICAgICAgIGFuY2hvcixcbiAgICAgICAgdGFnLFxuICAgICAgICBuZXdsaW5lQWZ0ZXJQcm9wLFxuICAgICAgICBlbmQsXG4gICAgICAgIHN0YXJ0OiBzdGFydCA/PyBlbmRcbiAgICB9O1xufVxuXG5leHBvcnRzLnJlc29sdmVQcm9wcyA9IHJlc29sdmVQcm9wcztcbiIsICIndXNlIHN0cmljdCc7XG5cbmZ1bmN0aW9uIGNvbnRhaW5zTmV3bGluZShrZXkpIHtcbiAgICBpZiAoIWtleSlcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgc3dpdGNoIChrZXkudHlwZSkge1xuICAgICAgICBjYXNlICdhbGlhcyc6XG4gICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgY2FzZSAnc2luZ2xlLXF1b3RlZC1zY2FsYXInOlxuICAgICAgICAgICAgaWYgKGtleS5zb3VyY2UuaW5jbHVkZXMoJ1xcbicpKVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgaWYgKGtleS5lbmQpXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBzdCBvZiBrZXkuZW5kKVxuICAgICAgICAgICAgICAgICAgICBpZiAoc3QudHlwZSA9PT0gJ25ld2xpbmUnKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNhc2UgJ2Zsb3ctY29sbGVjdGlvbic6XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIGtleS5pdGVtcykge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgc3Qgb2YgaXQuc3RhcnQpXG4gICAgICAgICAgICAgICAgICAgIGlmIChzdC50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpZiAoaXQuc2VwKVxuICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdC50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRhaW5zTmV3bGluZShpdC5rZXkpIHx8IGNvbnRhaW5zTmV3bGluZShpdC52YWx1ZSkpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxufVxuXG5leHBvcnRzLmNvbnRhaW5zTmV3bGluZSA9IGNvbnRhaW5zTmV3bGluZTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlsQ29udGFpbnNOZXdsaW5lID0gcmVxdWlyZSgnLi91dGlsLWNvbnRhaW5zLW5ld2xpbmUuanMnKTtcblxuZnVuY3Rpb24gZmxvd0luZGVudENoZWNrKGluZGVudCwgZmMsIG9uRXJyb3IpIHtcbiAgICBpZiAoZmM/LnR5cGUgPT09ICdmbG93LWNvbGxlY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IGVuZCA9IGZjLmVuZFswXTtcbiAgICAgICAgaWYgKGVuZC5pbmRlbnQgPT09IGluZGVudCAmJlxuICAgICAgICAgICAgKGVuZC5zb3VyY2UgPT09ICddJyB8fCBlbmQuc291cmNlID09PSAnfScpICYmXG4gICAgICAgICAgICB1dGlsQ29udGFpbnNOZXdsaW5lLmNvbnRhaW5zTmV3bGluZShmYykpIHtcbiAgICAgICAgICAgIGNvbnN0IG1zZyA9ICdGbG93IGVuZCBpbmRpY2F0b3Igc2hvdWxkIGJlIG1vcmUgaW5kZW50ZWQgdGhhbiBwYXJlbnQnO1xuICAgICAgICAgICAgb25FcnJvcihlbmQsICdCQURfSU5ERU5UJywgbXNnLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0cy5mbG93SW5kZW50Q2hlY2sgPSBmbG93SW5kZW50Q2hlY2s7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xuXG5mdW5jdGlvbiBtYXBJbmNsdWRlcyhjdHgsIGl0ZW1zLCBzZWFyY2gpIHtcbiAgICBjb25zdCB7IHVuaXF1ZUtleXMgfSA9IGN0eC5vcHRpb25zO1xuICAgIGlmICh1bmlxdWVLZXlzID09PSBmYWxzZSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IGlzRXF1YWwgPSB0eXBlb2YgdW5pcXVlS2V5cyA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICA/IHVuaXF1ZUtleXNcbiAgICAgICAgOiAoYSwgYikgPT4gYSA9PT0gYiB8fCAoaWRlbnRpdHkuaXNTY2FsYXIoYSkgJiYgaWRlbnRpdHkuaXNTY2FsYXIoYikgJiYgYS52YWx1ZSA9PT0gYi52YWx1ZSk7XG4gICAgcmV0dXJuIGl0ZW1zLnNvbWUocGFpciA9PiBpc0VxdWFsKHBhaXIua2V5LCBzZWFyY2gpKTtcbn1cblxuZXhwb3J0cy5tYXBJbmNsdWRlcyA9IG1hcEluY2x1ZGVzO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIFBhaXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4uL25vZGVzL1lBTUxNYXAuanMnKTtcbnZhciByZXNvbHZlUHJvcHMgPSByZXF1aXJlKCcuL3Jlc29sdmUtcHJvcHMuanMnKTtcbnZhciB1dGlsQ29udGFpbnNOZXdsaW5lID0gcmVxdWlyZSgnLi91dGlsLWNvbnRhaW5zLW5ld2xpbmUuanMnKTtcbnZhciB1dGlsRmxvd0luZGVudENoZWNrID0gcmVxdWlyZSgnLi91dGlsLWZsb3ctaW5kZW50LWNoZWNrLmpzJyk7XG52YXIgdXRpbE1hcEluY2x1ZGVzID0gcmVxdWlyZSgnLi91dGlsLW1hcC1pbmNsdWRlcy5qcycpO1xuXG5jb25zdCBzdGFydENvbE1zZyA9ICdBbGwgbWFwcGluZyBpdGVtcyBtdXN0IHN0YXJ0IGF0IHRoZSBzYW1lIGNvbHVtbic7XG5mdW5jdGlvbiByZXNvbHZlQmxvY2tNYXAoeyBjb21wb3NlTm9kZSwgY29tcG9zZUVtcHR5Tm9kZSB9LCBjdHgsIGJtLCBvbkVycm9yLCB0YWcpIHtcbiAgICBjb25zdCBOb2RlQ2xhc3MgPSB0YWc/Lm5vZGVDbGFzcyA/PyBZQU1MTWFwLllBTUxNYXA7XG4gICAgY29uc3QgbWFwID0gbmV3IE5vZGVDbGFzcyhjdHguc2NoZW1hKTtcbiAgICBpZiAoY3R4LmF0Um9vdClcbiAgICAgICAgY3R4LmF0Um9vdCA9IGZhbHNlO1xuICAgIGxldCBvZmZzZXQgPSBibS5vZmZzZXQ7XG4gICAgbGV0IGNvbW1lbnRFbmQgPSBudWxsO1xuICAgIGZvciAoY29uc3QgY29sbEl0ZW0gb2YgYm0uaXRlbXMpIHtcbiAgICAgICAgY29uc3QgeyBzdGFydCwga2V5LCBzZXAsIHZhbHVlIH0gPSBjb2xsSXRlbTtcbiAgICAgICAgLy8ga2V5IHByb3BlcnRpZXNcbiAgICAgICAgY29uc3Qga2V5UHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHN0YXJ0LCB7XG4gICAgICAgICAgICBpbmRpY2F0b3I6ICdleHBsaWNpdC1rZXktaW5kJyxcbiAgICAgICAgICAgIG5leHQ6IGtleSA/PyBzZXA/LlswXSxcbiAgICAgICAgICAgIG9mZnNldCxcbiAgICAgICAgICAgIG9uRXJyb3IsXG4gICAgICAgICAgICBwYXJlbnRJbmRlbnQ6IGJtLmluZGVudCxcbiAgICAgICAgICAgIHN0YXJ0T25OZXdsaW5lOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBpbXBsaWNpdEtleSA9ICFrZXlQcm9wcy5mb3VuZDtcbiAgICAgICAgaWYgKGltcGxpY2l0S2V5KSB7XG4gICAgICAgICAgICBpZiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgaWYgKGtleS50eXBlID09PSAnYmxvY2stc2VxJylcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihvZmZzZXQsICdCTE9DS19BU19JTVBMSUNJVF9LRVknLCAnQSBibG9jayBzZXF1ZW5jZSBtYXkgbm90IGJlIHVzZWQgYXMgYW4gaW1wbGljaXQgbWFwIGtleScpO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKCdpbmRlbnQnIGluIGtleSAmJiBrZXkuaW5kZW50ICE9PSBibS5pbmRlbnQpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0LCAnQkFEX0lOREVOVCcsIHN0YXJ0Q29sTXNnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICgha2V5UHJvcHMuYW5jaG9yICYmICFrZXlQcm9wcy50YWcgJiYgIXNlcCkge1xuICAgICAgICAgICAgICAgIGNvbW1lbnRFbmQgPSBrZXlQcm9wcy5lbmQ7XG4gICAgICAgICAgICAgICAgaWYgKGtleVByb3BzLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1hcC5jb21tZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLmNvbW1lbnQgKz0gJ1xcbicgKyBrZXlQcm9wcy5jb21tZW50O1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAuY29tbWVudCA9IGtleVByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGtleVByb3BzLm5ld2xpbmVBZnRlclByb3AgfHwgdXRpbENvbnRhaW5zTmV3bGluZS5jb250YWluc05ld2xpbmUoa2V5KSkge1xuICAgICAgICAgICAgICAgIG9uRXJyb3Ioa2V5ID8/IHN0YXJ0W3N0YXJ0Lmxlbmd0aCAtIDFdLCAnTVVMVElMSU5FX0lNUExJQ0lUX0tFWScsICdJbXBsaWNpdCBrZXlzIG5lZWQgdG8gYmUgb24gYSBzaW5nbGUgbGluZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGtleVByb3BzLmZvdW5kPy5pbmRlbnQgIT09IGJtLmluZGVudCkge1xuICAgICAgICAgICAgb25FcnJvcihvZmZzZXQsICdCQURfSU5ERU5UJywgc3RhcnRDb2xNc2cpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGtleSB2YWx1ZVxuICAgICAgICBjdHguYXRLZXkgPSB0cnVlO1xuICAgICAgICBjb25zdCBrZXlTdGFydCA9IGtleVByb3BzLmVuZDtcbiAgICAgICAgY29uc3Qga2V5Tm9kZSA9IGtleVxuICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIGtleSwga2V5UHJvcHMsIG9uRXJyb3IpXG4gICAgICAgICAgICA6IGNvbXBvc2VFbXB0eU5vZGUoY3R4LCBrZXlTdGFydCwgc3RhcnQsIG51bGwsIGtleVByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgaWYgKGN0eC5zY2hlbWEuY29tcGF0KVxuICAgICAgICAgICAgdXRpbEZsb3dJbmRlbnRDaGVjay5mbG93SW5kZW50Q2hlY2soYm0uaW5kZW50LCBrZXksIG9uRXJyb3IpO1xuICAgICAgICBjdHguYXRLZXkgPSBmYWxzZTtcbiAgICAgICAgaWYgKHV0aWxNYXBJbmNsdWRlcy5tYXBJbmNsdWRlcyhjdHgsIG1hcC5pdGVtcywga2V5Tm9kZSkpXG4gICAgICAgICAgICBvbkVycm9yKGtleVN0YXJ0LCAnRFVQTElDQVRFX0tFWScsICdNYXAga2V5cyBtdXN0IGJlIHVuaXF1ZScpO1xuICAgICAgICAvLyB2YWx1ZSBwcm9wZXJ0aWVzXG4gICAgICAgIGNvbnN0IHZhbHVlUHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHNlcCA/PyBbXSwge1xuICAgICAgICAgICAgaW5kaWNhdG9yOiAnbWFwLXZhbHVlLWluZCcsXG4gICAgICAgICAgICBuZXh0OiB2YWx1ZSxcbiAgICAgICAgICAgIG9mZnNldDoga2V5Tm9kZS5yYW5nZVsyXSxcbiAgICAgICAgICAgIG9uRXJyb3IsXG4gICAgICAgICAgICBwYXJlbnRJbmRlbnQ6IGJtLmluZGVudCxcbiAgICAgICAgICAgIHN0YXJ0T25OZXdsaW5lOiAha2V5IHx8IGtleS50eXBlID09PSAnYmxvY2stc2NhbGFyJ1xuICAgICAgICB9KTtcbiAgICAgICAgb2Zmc2V0ID0gdmFsdWVQcm9wcy5lbmQ7XG4gICAgICAgIGlmICh2YWx1ZVByb3BzLmZvdW5kKSB7XG4gICAgICAgICAgICBpZiAoaW1wbGljaXRLZXkpIHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWU/LnR5cGUgPT09ICdibG9jay1tYXAnICYmICF2YWx1ZVByb3BzLmhhc05ld2xpbmUpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0LCAnQkxPQ0tfQVNfSU1QTElDSVRfS0VZJywgJ05lc3RlZCBtYXBwaW5ncyBhcmUgbm90IGFsbG93ZWQgaW4gY29tcGFjdCBtYXBwaW5ncycpO1xuICAgICAgICAgICAgICAgIGlmIChjdHgub3B0aW9ucy5zdHJpY3QgJiZcbiAgICAgICAgICAgICAgICAgICAga2V5UHJvcHMuc3RhcnQgPCB2YWx1ZVByb3BzLmZvdW5kLm9mZnNldCAtIDEwMjQpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Ioa2V5Tm9kZS5yYW5nZSwgJ0tFWV9PVkVSXzEwMjRfQ0hBUlMnLCAnVGhlIDogaW5kaWNhdG9yIG11c3QgYmUgYXQgbW9zdCAxMDI0IGNoYXJzIGFmdGVyIHRoZSBzdGFydCBvZiBhbiBpbXBsaWNpdCBibG9jayBtYXBwaW5nIGtleScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gdmFsdWUgdmFsdWVcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHZhbHVlXG4gICAgICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIHZhbHVlLCB2YWx1ZVByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIG9mZnNldCwgc2VwLCBudWxsLCB2YWx1ZVByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlmIChjdHguc2NoZW1hLmNvbXBhdClcbiAgICAgICAgICAgICAgICB1dGlsRmxvd0luZGVudENoZWNrLmZsb3dJbmRlbnRDaGVjayhibS5pbmRlbnQsIHZhbHVlLCBvbkVycm9yKTtcbiAgICAgICAgICAgIG9mZnNldCA9IHZhbHVlTm9kZS5yYW5nZVsyXTtcbiAgICAgICAgICAgIGNvbnN0IHBhaXIgPSBuZXcgUGFpci5QYWlyKGtleU5vZGUsIHZhbHVlTm9kZSk7XG4gICAgICAgICAgICBpZiAoY3R4Lm9wdGlvbnMua2VlcFNvdXJjZVRva2VucylcbiAgICAgICAgICAgICAgICBwYWlyLnNyY1Rva2VuID0gY29sbEl0ZW07XG4gICAgICAgICAgICBtYXAuaXRlbXMucHVzaChwYWlyKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGtleSB3aXRoIG5vIHZhbHVlXG4gICAgICAgICAgICBpZiAoaW1wbGljaXRLZXkpXG4gICAgICAgICAgICAgICAgb25FcnJvcihrZXlOb2RlLnJhbmdlLCAnTUlTU0lOR19DSEFSJywgJ0ltcGxpY2l0IG1hcCBrZXlzIG5lZWQgdG8gYmUgZm9sbG93ZWQgYnkgbWFwIHZhbHVlcycpO1xuICAgICAgICAgICAgaWYgKHZhbHVlUHJvcHMuY29tbWVudCkge1xuICAgICAgICAgICAgICAgIGlmIChrZXlOb2RlLmNvbW1lbnQpXG4gICAgICAgICAgICAgICAgICAgIGtleU5vZGUuY29tbWVudCArPSAnXFxuJyArIHZhbHVlUHJvcHMuY29tbWVudDtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGtleU5vZGUuY29tbWVudCA9IHZhbHVlUHJvcHMuY29tbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHBhaXIgPSBuZXcgUGFpci5QYWlyKGtleU5vZGUpO1xuICAgICAgICAgICAgaWYgKGN0eC5vcHRpb25zLmtlZXBTb3VyY2VUb2tlbnMpXG4gICAgICAgICAgICAgICAgcGFpci5zcmNUb2tlbiA9IGNvbGxJdGVtO1xuICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2gocGFpcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNvbW1lbnRFbmQgJiYgY29tbWVudEVuZCA8IG9mZnNldClcbiAgICAgICAgb25FcnJvcihjb21tZW50RW5kLCAnSU1QT1NTSUJMRScsICdNYXAgY29tbWVudCB3aXRoIHRyYWlsaW5nIGNvbnRlbnQnKTtcbiAgICBtYXAucmFuZ2UgPSBbYm0ub2Zmc2V0LCBvZmZzZXQsIGNvbW1lbnRFbmQgPz8gb2Zmc2V0XTtcbiAgICByZXR1cm4gbWFwO1xufVxuXG5leHBvcnRzLnJlc29sdmVCbG9ja01hcCA9IHJlc29sdmVCbG9ja01hcDtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBZQU1MU2VxID0gcmVxdWlyZSgnLi4vbm9kZXMvWUFNTFNlcS5qcycpO1xudmFyIHJlc29sdmVQcm9wcyA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1wcm9wcy5qcycpO1xudmFyIHV0aWxGbG93SW5kZW50Q2hlY2sgPSByZXF1aXJlKCcuL3V0aWwtZmxvdy1pbmRlbnQtY2hlY2suanMnKTtcblxuZnVuY3Rpb24gcmVzb2x2ZUJsb2NrU2VxKHsgY29tcG9zZU5vZGUsIGNvbXBvc2VFbXB0eU5vZGUgfSwgY3R4LCBicywgb25FcnJvciwgdGFnKSB7XG4gICAgY29uc3QgTm9kZUNsYXNzID0gdGFnPy5ub2RlQ2xhc3MgPz8gWUFNTFNlcS5ZQU1MU2VxO1xuICAgIGNvbnN0IHNlcSA9IG5ldyBOb2RlQ2xhc3MoY3R4LnNjaGVtYSk7XG4gICAgaWYgKGN0eC5hdFJvb3QpXG4gICAgICAgIGN0eC5hdFJvb3QgPSBmYWxzZTtcbiAgICBpZiAoY3R4LmF0S2V5KVxuICAgICAgICBjdHguYXRLZXkgPSBmYWxzZTtcbiAgICBsZXQgb2Zmc2V0ID0gYnMub2Zmc2V0O1xuICAgIGxldCBjb21tZW50RW5kID0gbnVsbDtcbiAgICBmb3IgKGNvbnN0IHsgc3RhcnQsIHZhbHVlIH0gb2YgYnMuaXRlbXMpIHtcbiAgICAgICAgY29uc3QgcHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHN0YXJ0LCB7XG4gICAgICAgICAgICBpbmRpY2F0b3I6ICdzZXEtaXRlbS1pbmQnLFxuICAgICAgICAgICAgbmV4dDogdmFsdWUsXG4gICAgICAgICAgICBvZmZzZXQsXG4gICAgICAgICAgICBvbkVycm9yLFxuICAgICAgICAgICAgcGFyZW50SW5kZW50OiBicy5pbmRlbnQsXG4gICAgICAgICAgICBzdGFydE9uTmV3bGluZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCFwcm9wcy5mb3VuZCkge1xuICAgICAgICAgICAgaWYgKHByb3BzLmFuY2hvciB8fCBwcm9wcy50YWcgfHwgdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUudHlwZSA9PT0gJ2Jsb2NrLXNlcScpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IocHJvcHMuZW5kLCAnQkFEX0lOREVOVCcsICdBbGwgc2VxdWVuY2UgaXRlbXMgbXVzdCBzdGFydCBhdCB0aGUgc2FtZSBjb2x1bW4nKTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0LCAnTUlTU0lOR19DSEFSJywgJ1NlcXVlbmNlIGl0ZW0gd2l0aG91dCAtIGluZGljYXRvcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29tbWVudEVuZCA9IHByb3BzLmVuZDtcbiAgICAgICAgICAgICAgICBpZiAocHJvcHMuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgc2VxLmNvbW1lbnQgPSBwcm9wcy5jb21tZW50O1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5vZGUgPSB2YWx1ZVxuICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIHZhbHVlLCBwcm9wcywgb25FcnJvcilcbiAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIHByb3BzLmVuZCwgc3RhcnQsIG51bGwsIHByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgaWYgKGN0eC5zY2hlbWEuY29tcGF0KVxuICAgICAgICAgICAgdXRpbEZsb3dJbmRlbnRDaGVjay5mbG93SW5kZW50Q2hlY2soYnMuaW5kZW50LCB2YWx1ZSwgb25FcnJvcik7XG4gICAgICAgIG9mZnNldCA9IG5vZGUucmFuZ2VbMl07XG4gICAgICAgIHNlcS5pdGVtcy5wdXNoKG5vZGUpO1xuICAgIH1cbiAgICBzZXEucmFuZ2UgPSBbYnMub2Zmc2V0LCBvZmZzZXQsIGNvbW1lbnRFbmQgPz8gb2Zmc2V0XTtcbiAgICByZXR1cm4gc2VxO1xufVxuXG5leHBvcnRzLnJlc29sdmVCbG9ja1NlcSA9IHJlc29sdmVCbG9ja1NlcTtcbiIsICIndXNlIHN0cmljdCc7XG5cbmZ1bmN0aW9uIHJlc29sdmVFbmQoZW5kLCBvZmZzZXQsIHJlcVNwYWNlLCBvbkVycm9yKSB7XG4gICAgbGV0IGNvbW1lbnQgPSAnJztcbiAgICBpZiAoZW5kKSB7XG4gICAgICAgIGxldCBoYXNTcGFjZSA9IGZhbHNlO1xuICAgICAgICBsZXQgc2VwID0gJyc7XG4gICAgICAgIGZvciAoY29uc3QgdG9rZW4gb2YgZW5kKSB7XG4gICAgICAgICAgICBjb25zdCB7IHNvdXJjZSwgdHlwZSB9ID0gdG9rZW47XG4gICAgICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgICAgIGhhc1NwYWNlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcVNwYWNlICYmICFoYXNTcGFjZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdNSVNTSU5HX0NIQVInLCAnQ29tbWVudHMgbXVzdCBiZSBzZXBhcmF0ZWQgZnJvbSBvdGhlciB0b2tlbnMgYnkgd2hpdGUgc3BhY2UgY2hhcmFjdGVycycpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYiA9IHNvdXJjZS5zdWJzdHJpbmcoMSkgfHwgJyAnO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWNvbW1lbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICBjb21tZW50ID0gY2I7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbW1lbnQgKz0gc2VwICsgY2I7XG4gICAgICAgICAgICAgICAgICAgIHNlcCA9ICcnO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgICAgIGlmIChjb21tZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VwICs9IHNvdXJjZTtcbiAgICAgICAgICAgICAgICAgICAgaGFzU3BhY2UgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICR7dHlwZX0gYXQgbm9kZSBlbmRgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG9mZnNldCArPSBzb3VyY2UubGVuZ3RoO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IGNvbW1lbnQsIG9mZnNldCB9O1xufVxuXG5leHBvcnRzLnJlc29sdmVFbmQgPSByZXNvbHZlRW5kO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBQYWlyID0gcmVxdWlyZSgnLi4vbm9kZXMvUGFpci5qcycpO1xudmFyIFlBTUxNYXAgPSByZXF1aXJlKCcuLi9ub2Rlcy9ZQU1MTWFwLmpzJyk7XG52YXIgWUFNTFNlcSA9IHJlcXVpcmUoJy4uL25vZGVzL1lBTUxTZXEuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xudmFyIHJlc29sdmVQcm9wcyA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1wcm9wcy5qcycpO1xudmFyIHV0aWxDb250YWluc05ld2xpbmUgPSByZXF1aXJlKCcuL3V0aWwtY29udGFpbnMtbmV3bGluZS5qcycpO1xudmFyIHV0aWxNYXBJbmNsdWRlcyA9IHJlcXVpcmUoJy4vdXRpbC1tYXAtaW5jbHVkZXMuanMnKTtcblxuY29uc3QgYmxvY2tNc2cgPSAnQmxvY2sgY29sbGVjdGlvbnMgYXJlIG5vdCBhbGxvd2VkIHdpdGhpbiBmbG93IGNvbGxlY3Rpb25zJztcbmNvbnN0IGlzQmxvY2sgPSAodG9rZW4pID0+IHRva2VuICYmICh0b2tlbi50eXBlID09PSAnYmxvY2stbWFwJyB8fCB0b2tlbi50eXBlID09PSAnYmxvY2stc2VxJyk7XG5mdW5jdGlvbiByZXNvbHZlRmxvd0NvbGxlY3Rpb24oeyBjb21wb3NlTm9kZSwgY29tcG9zZUVtcHR5Tm9kZSB9LCBjdHgsIGZjLCBvbkVycm9yLCB0YWcpIHtcbiAgICBjb25zdCBpc01hcCA9IGZjLnN0YXJ0LnNvdXJjZSA9PT0gJ3snO1xuICAgIGNvbnN0IGZjTmFtZSA9IGlzTWFwID8gJ2Zsb3cgbWFwJyA6ICdmbG93IHNlcXVlbmNlJztcbiAgICBjb25zdCBOb2RlQ2xhc3MgPSAodGFnPy5ub2RlQ2xhc3MgPz8gKGlzTWFwID8gWUFNTE1hcC5ZQU1MTWFwIDogWUFNTFNlcS5ZQU1MU2VxKSk7XG4gICAgY29uc3QgY29sbCA9IG5ldyBOb2RlQ2xhc3MoY3R4LnNjaGVtYSk7XG4gICAgY29sbC5mbG93ID0gdHJ1ZTtcbiAgICBjb25zdCBhdFJvb3QgPSBjdHguYXRSb290O1xuICAgIGlmIChhdFJvb3QpXG4gICAgICAgIGN0eC5hdFJvb3QgPSBmYWxzZTtcbiAgICBpZiAoY3R4LmF0S2V5KVxuICAgICAgICBjdHguYXRLZXkgPSBmYWxzZTtcbiAgICBsZXQgb2Zmc2V0ID0gZmMub2Zmc2V0ICsgZmMuc3RhcnQuc291cmNlLmxlbmd0aDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZjLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGNvbGxJdGVtID0gZmMuaXRlbXNbaV07XG4gICAgICAgIGNvbnN0IHsgc3RhcnQsIGtleSwgc2VwLCB2YWx1ZSB9ID0gY29sbEl0ZW07XG4gICAgICAgIGNvbnN0IHByb3BzID0gcmVzb2x2ZVByb3BzLnJlc29sdmVQcm9wcyhzdGFydCwge1xuICAgICAgICAgICAgZmxvdzogZmNOYW1lLFxuICAgICAgICAgICAgaW5kaWNhdG9yOiAnZXhwbGljaXQta2V5LWluZCcsXG4gICAgICAgICAgICBuZXh0OiBrZXkgPz8gc2VwPy5bMF0sXG4gICAgICAgICAgICBvZmZzZXQsXG4gICAgICAgICAgICBvbkVycm9yLFxuICAgICAgICAgICAgcGFyZW50SW5kZW50OiBmYy5pbmRlbnQsXG4gICAgICAgICAgICBzdGFydE9uTmV3bGluZTogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghcHJvcHMuZm91bmQpIHtcbiAgICAgICAgICAgIGlmICghcHJvcHMuYW5jaG9yICYmICFwcm9wcy50YWcgJiYgIXNlcCAmJiAhdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAoaSA9PT0gMCAmJiBwcm9wcy5jb21tYSlcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihwcm9wcy5jb21tYSwgJ1VORVhQRUNURURfVE9LRU4nLCBgVW5leHBlY3RlZCAsIGluICR7ZmNOYW1lfWApO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGkgPCBmYy5pdGVtcy5sZW5ndGggLSAxKVxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHByb3BzLnN0YXJ0LCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkIGVtcHR5IGl0ZW0gaW4gJHtmY05hbWV9YCk7XG4gICAgICAgICAgICAgICAgaWYgKHByb3BzLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbGwuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbGwuY29tbWVudCArPSAnXFxuJyArIHByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbGwuY29tbWVudCA9IHByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG9mZnNldCA9IHByb3BzLmVuZDtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghaXNNYXAgJiYgY3R4Lm9wdGlvbnMuc3RyaWN0ICYmIHV0aWxDb250YWluc05ld2xpbmUuY29udGFpbnNOZXdsaW5lKGtleSkpXG4gICAgICAgICAgICAgICAgb25FcnJvcihrZXksIC8vIGNoZWNrZWQgYnkgY29udGFpbnNOZXdsaW5lKClcbiAgICAgICAgICAgICAgICAnTVVMVElMSU5FX0lNUExJQ0lUX0tFWScsICdJbXBsaWNpdCBrZXlzIG9mIGZsb3cgc2VxdWVuY2UgcGFpcnMgbmVlZCB0byBiZSBvbiBhIHNpbmdsZSBsaW5lJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGkgPT09IDApIHtcbiAgICAgICAgICAgIGlmIChwcm9wcy5jb21tYSlcbiAgICAgICAgICAgICAgICBvbkVycm9yKHByb3BzLmNvbW1hLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICwgaW4gJHtmY05hbWV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXByb3BzLmNvbW1hKVxuICAgICAgICAgICAgICAgIG9uRXJyb3IocHJvcHMuc3RhcnQsICdNSVNTSU5HX0NIQVInLCBgTWlzc2luZyAsIGJldHdlZW4gJHtmY05hbWV9IGl0ZW1zYCk7XG4gICAgICAgICAgICBpZiAocHJvcHMuY29tbWVudCkge1xuICAgICAgICAgICAgICAgIGxldCBwcmV2SXRlbUNvbW1lbnQgPSAnJztcbiAgICAgICAgICAgICAgICBsb29wOiBmb3IgKGNvbnN0IHN0IG9mIHN0YXJ0KSB7XG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoc3QudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tbWEnOlxuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldkl0ZW1Db21tZW50ID0gc3Quc291cmNlLnN1YnN0cmluZygxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhayBsb29wO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhayBsb29wO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwcmV2SXRlbUNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHByZXYgPSBjb2xsLml0ZW1zW2NvbGwuaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgICAgICAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIocHJldikpXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmV2ID0gcHJldi52YWx1ZSA/PyBwcmV2LmtleTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHByZXYuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIHByZXYuY29tbWVudCArPSAnXFxuJyArIHByZXZJdGVtQ29tbWVudDtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgcHJldi5jb21tZW50ID0gcHJldkl0ZW1Db21tZW50O1xuICAgICAgICAgICAgICAgICAgICBwcm9wcy5jb21tZW50ID0gcHJvcHMuY29tbWVudC5zdWJzdHJpbmcocHJldkl0ZW1Db21tZW50Lmxlbmd0aCArIDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzTWFwICYmICFzZXAgJiYgIXByb3BzLmZvdW5kKSB7XG4gICAgICAgICAgICAvLyBpdGVtIGlzIGEgdmFsdWUgaW4gYSBzZXFcbiAgICAgICAgICAgIC8vIFx1MjE5MiBrZXkgJiBzZXAgYXJlIGVtcHR5LCBzdGFydCBkb2VzIG5vdCBpbmNsdWRlID8gb3IgOlxuICAgICAgICAgICAgY29uc3QgdmFsdWVOb2RlID0gdmFsdWVcbiAgICAgICAgICAgICAgICA/IGNvbXBvc2VOb2RlKGN0eCwgdmFsdWUsIHByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIHByb3BzLmVuZCwgc2VwLCBudWxsLCBwcm9wcywgb25FcnJvcik7XG4gICAgICAgICAgICBjb2xsLml0ZW1zLnB1c2godmFsdWVOb2RlKTtcbiAgICAgICAgICAgIG9mZnNldCA9IHZhbHVlTm9kZS5yYW5nZVsyXTtcbiAgICAgICAgICAgIGlmIChpc0Jsb2NrKHZhbHVlKSlcbiAgICAgICAgICAgICAgICBvbkVycm9yKHZhbHVlTm9kZS5yYW5nZSwgJ0JMT0NLX0lOX0ZMT1cnLCBibG9ja01zZyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyBpdGVtIGlzIGEga2V5K3ZhbHVlIHBhaXJcbiAgICAgICAgICAgIC8vIGtleSB2YWx1ZVxuICAgICAgICAgICAgY3R4LmF0S2V5ID0gdHJ1ZTtcbiAgICAgICAgICAgIGNvbnN0IGtleVN0YXJ0ID0gcHJvcHMuZW5kO1xuICAgICAgICAgICAgY29uc3Qga2V5Tm9kZSA9IGtleVxuICAgICAgICAgICAgICAgID8gY29tcG9zZU5vZGUoY3R4LCBrZXksIHByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIGtleVN0YXJ0LCBzdGFydCwgbnVsbCwgcHJvcHMsIG9uRXJyb3IpO1xuICAgICAgICAgICAgaWYgKGlzQmxvY2soa2V5KSlcbiAgICAgICAgICAgICAgICBvbkVycm9yKGtleU5vZGUucmFuZ2UsICdCTE9DS19JTl9GTE9XJywgYmxvY2tNc2cpO1xuICAgICAgICAgICAgY3R4LmF0S2V5ID0gZmFsc2U7XG4gICAgICAgICAgICAvLyB2YWx1ZSBwcm9wZXJ0aWVzXG4gICAgICAgICAgICBjb25zdCB2YWx1ZVByb3BzID0gcmVzb2x2ZVByb3BzLnJlc29sdmVQcm9wcyhzZXAgPz8gW10sIHtcbiAgICAgICAgICAgICAgICBmbG93OiBmY05hbWUsXG4gICAgICAgICAgICAgICAgaW5kaWNhdG9yOiAnbWFwLXZhbHVlLWluZCcsXG4gICAgICAgICAgICAgICAgbmV4dDogdmFsdWUsXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiBrZXlOb2RlLnJhbmdlWzJdLFxuICAgICAgICAgICAgICAgIG9uRXJyb3IsXG4gICAgICAgICAgICAgICAgcGFyZW50SW5kZW50OiBmYy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgc3RhcnRPbk5ld2xpbmU6IGZhbHNlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmICh2YWx1ZVByb3BzLmZvdW5kKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc01hcCAmJiAhcHJvcHMuZm91bmQgJiYgY3R4Lm9wdGlvbnMuc3RyaWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzZXApXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIHNlcCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdCA9PT0gdmFsdWVQcm9wcy5mb3VuZClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0LnR5cGUgPT09ICduZXdsaW5lJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHN0LCAnTVVMVElMSU5FX0lNUExJQ0lUX0tFWScsICdJbXBsaWNpdCBrZXlzIG9mIGZsb3cgc2VxdWVuY2UgcGFpcnMgbmVlZCB0byBiZSBvbiBhIHNpbmdsZSBsaW5lJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb3BzLnN0YXJ0IDwgdmFsdWVQcm9wcy5mb3VuZC5vZmZzZXQgLSAxMDI0KVxuICAgICAgICAgICAgICAgICAgICAgICAgb25FcnJvcih2YWx1ZVByb3BzLmZvdW5kLCAnS0VZX09WRVJfMTAyNF9DSEFSUycsICdUaGUgOiBpbmRpY2F0b3IgbXVzdCBiZSBhdCBtb3N0IDEwMjQgY2hhcnMgYWZ0ZXIgdGhlIHN0YXJ0IG9mIGFuIGltcGxpY2l0IGZsb3cgc2VxdWVuY2Uga2V5Jyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAoJ3NvdXJjZScgaW4gdmFsdWUgJiYgdmFsdWUuc291cmNlICYmIHZhbHVlLnNvdXJjZVswXSA9PT0gJzonKVxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHZhbHVlLCAnTUlTU0lOR19DSEFSJywgYE1pc3Npbmcgc3BhY2UgYWZ0ZXIgOiBpbiAke2ZjTmFtZX1gKTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodmFsdWVQcm9wcy5zdGFydCwgJ01JU1NJTkdfQ0hBUicsIGBNaXNzaW5nICwgb3IgOiBiZXR3ZWVuICR7ZmNOYW1lfSBpdGVtc2ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gdmFsdWUgdmFsdWVcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHZhbHVlXG4gICAgICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIHZhbHVlLCB2YWx1ZVByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogdmFsdWVQcm9wcy5mb3VuZFxuICAgICAgICAgICAgICAgICAgICA/IGNvbXBvc2VFbXB0eU5vZGUoY3R4LCB2YWx1ZVByb3BzLmVuZCwgc2VwLCBudWxsLCB2YWx1ZVByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgICAgICA6IG51bGw7XG4gICAgICAgICAgICBpZiAodmFsdWVOb2RlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzQmxvY2sodmFsdWUpKVxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHZhbHVlTm9kZS5yYW5nZSwgJ0JMT0NLX0lOX0ZMT1cnLCBibG9ja01zZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh2YWx1ZVByb3BzLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAoa2V5Tm9kZS5jb21tZW50KVxuICAgICAgICAgICAgICAgICAgICBrZXlOb2RlLmNvbW1lbnQgKz0gJ1xcbicgKyB2YWx1ZVByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICBrZXlOb2RlLmNvbW1lbnQgPSB2YWx1ZVByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBwYWlyID0gbmV3IFBhaXIuUGFpcihrZXlOb2RlLCB2YWx1ZU5vZGUpO1xuICAgICAgICAgICAgaWYgKGN0eC5vcHRpb25zLmtlZXBTb3VyY2VUb2tlbnMpXG4gICAgICAgICAgICAgICAgcGFpci5zcmNUb2tlbiA9IGNvbGxJdGVtO1xuICAgICAgICAgICAgaWYgKGlzTWFwKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFwID0gY29sbDtcbiAgICAgICAgICAgICAgICBpZiAodXRpbE1hcEluY2x1ZGVzLm1hcEluY2x1ZGVzKGN0eCwgbWFwLml0ZW1zLCBrZXlOb2RlKSlcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihrZXlTdGFydCwgJ0RVUExJQ0FURV9LRVknLCAnTWFwIGtleXMgbXVzdCBiZSB1bmlxdWUnKTtcbiAgICAgICAgICAgICAgICBtYXAuaXRlbXMucHVzaChwYWlyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcCA9IG5ldyBZQU1MTWFwLllBTUxNYXAoY3R4LnNjaGVtYSk7XG4gICAgICAgICAgICAgICAgbWFwLmZsb3cgPSB0cnVlO1xuICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHBhaXIpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuZFJhbmdlID0gKHZhbHVlTm9kZSA/PyBrZXlOb2RlKS5yYW5nZTtcbiAgICAgICAgICAgICAgICBtYXAucmFuZ2UgPSBba2V5Tm9kZS5yYW5nZVswXSwgZW5kUmFuZ2VbMV0sIGVuZFJhbmdlWzJdXTtcbiAgICAgICAgICAgICAgICBjb2xsLml0ZW1zLnB1c2gobWFwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG9mZnNldCA9IHZhbHVlTm9kZSA/IHZhbHVlTm9kZS5yYW5nZVsyXSA6IHZhbHVlUHJvcHMuZW5kO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGV4cGVjdGVkRW5kID0gaXNNYXAgPyAnfScgOiAnXSc7XG4gICAgY29uc3QgW2NlLCAuLi5lZV0gPSBmYy5lbmQ7XG4gICAgbGV0IGNlUG9zID0gb2Zmc2V0O1xuICAgIGlmIChjZSAmJiBjZS5zb3VyY2UgPT09IGV4cGVjdGVkRW5kKVxuICAgICAgICBjZVBvcyA9IGNlLm9mZnNldCArIGNlLnNvdXJjZS5sZW5ndGg7XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBmY05hbWVbMF0udG9VcHBlckNhc2UoKSArIGZjTmFtZS5zdWJzdHJpbmcoMSk7XG4gICAgICAgIGNvbnN0IG1zZyA9IGF0Um9vdFxuICAgICAgICAgICAgPyBgJHtuYW1lfSBtdXN0IGVuZCB3aXRoIGEgJHtleHBlY3RlZEVuZH1gXG4gICAgICAgICAgICA6IGAke25hbWV9IGluIGJsb2NrIGNvbGxlY3Rpb24gbXVzdCBiZSBzdWZmaWNpZW50bHkgaW5kZW50ZWQgYW5kIGVuZCB3aXRoIGEgJHtleHBlY3RlZEVuZH1gO1xuICAgICAgICBvbkVycm9yKG9mZnNldCwgYXRSb290ID8gJ01JU1NJTkdfQ0hBUicgOiAnQkFEX0lOREVOVCcsIG1zZyk7XG4gICAgICAgIGlmIChjZSAmJiBjZS5zb3VyY2UubGVuZ3RoICE9PSAxKVxuICAgICAgICAgICAgZWUudW5zaGlmdChjZSk7XG4gICAgfVxuICAgIGlmIChlZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IGVuZCA9IHJlc29sdmVFbmQucmVzb2x2ZUVuZChlZSwgY2VQb3MsIGN0eC5vcHRpb25zLnN0cmljdCwgb25FcnJvcik7XG4gICAgICAgIGlmIChlbmQuY29tbWVudCkge1xuICAgICAgICAgICAgaWYgKGNvbGwuY29tbWVudClcbiAgICAgICAgICAgICAgICBjb2xsLmNvbW1lbnQgKz0gJ1xcbicgKyBlbmQuY29tbWVudDtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBjb2xsLmNvbW1lbnQgPSBlbmQuY29tbWVudDtcbiAgICAgICAgfVxuICAgICAgICBjb2xsLnJhbmdlID0gW2ZjLm9mZnNldCwgY2VQb3MsIGVuZC5vZmZzZXRdO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29sbC5yYW5nZSA9IFtmYy5vZmZzZXQsIGNlUG9zLCBjZVBvc107XG4gICAgfVxuICAgIHJldHVybiBjb2xsO1xufVxuXG5leHBvcnRzLnJlc29sdmVGbG93Q29sbGVjdGlvbiA9IHJlc29sdmVGbG93Q29sbGVjdGlvbjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4uL25vZGVzL1lBTUxNYXAuanMnKTtcbnZhciBZQU1MU2VxID0gcmVxdWlyZSgnLi4vbm9kZXMvWUFNTFNlcS5qcycpO1xudmFyIHJlc29sdmVCbG9ja01hcCA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1ibG9jay1tYXAuanMnKTtcbnZhciByZXNvbHZlQmxvY2tTZXEgPSByZXF1aXJlKCcuL3Jlc29sdmUtYmxvY2stc2VxLmpzJyk7XG52YXIgcmVzb2x2ZUZsb3dDb2xsZWN0aW9uID0gcmVxdWlyZSgnLi9yZXNvbHZlLWZsb3ctY29sbGVjdGlvbi5qcycpO1xuXG5mdW5jdGlvbiByZXNvbHZlQ29sbGVjdGlvbihDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnTmFtZSwgdGFnKSB7XG4gICAgY29uc3QgY29sbCA9IHRva2VuLnR5cGUgPT09ICdibG9jay1tYXAnXG4gICAgICAgID8gcmVzb2x2ZUJsb2NrTWFwLnJlc29sdmVCbG9ja01hcChDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnKVxuICAgICAgICA6IHRva2VuLnR5cGUgPT09ICdibG9jay1zZXEnXG4gICAgICAgICAgICA/IHJlc29sdmVCbG9ja1NlcS5yZXNvbHZlQmxvY2tTZXEoQ04sIGN0eCwgdG9rZW4sIG9uRXJyb3IsIHRhZylcbiAgICAgICAgICAgIDogcmVzb2x2ZUZsb3dDb2xsZWN0aW9uLnJlc29sdmVGbG93Q29sbGVjdGlvbihDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnKTtcbiAgICBjb25zdCBDb2xsID0gY29sbC5jb25zdHJ1Y3RvcjtcbiAgICAvLyBJZiB3ZSBnb3QgYSB0YWdOYW1lIG1hdGNoaW5nIHRoZSBjbGFzcywgb3IgdGhlIHRhZyBuYW1lIGlzICchJyxcbiAgICAvLyB0aGVuIHVzZSB0aGUgdGFnTmFtZSBmcm9tIHRoZSBub2RlIGNsYXNzIHVzZWQgdG8gY3JlYXRlIGl0LlxuICAgIGlmICh0YWdOYW1lID09PSAnIScgfHwgdGFnTmFtZSA9PT0gQ29sbC50YWdOYW1lKSB7XG4gICAgICAgIGNvbGwudGFnID0gQ29sbC50YWdOYW1lO1xuICAgICAgICByZXR1cm4gY29sbDtcbiAgICB9XG4gICAgaWYgKHRhZ05hbWUpXG4gICAgICAgIGNvbGwudGFnID0gdGFnTmFtZTtcbiAgICByZXR1cm4gY29sbDtcbn1cbmZ1bmN0aW9uIGNvbXBvc2VDb2xsZWN0aW9uKENOLCBjdHgsIHRva2VuLCBwcm9wcywgb25FcnJvcikge1xuICAgIGNvbnN0IHRhZ1Rva2VuID0gcHJvcHMudGFnO1xuICAgIGNvbnN0IHRhZ05hbWUgPSAhdGFnVG9rZW5cbiAgICAgICAgPyBudWxsXG4gICAgICAgIDogY3R4LmRpcmVjdGl2ZXMudGFnTmFtZSh0YWdUb2tlbi5zb3VyY2UsIG1zZyA9PiBvbkVycm9yKHRhZ1Rva2VuLCAnVEFHX1JFU09MVkVfRkFJTEVEJywgbXNnKSk7XG4gICAgaWYgKHRva2VuLnR5cGUgPT09ICdibG9jay1zZXEnKSB7XG4gICAgICAgIGNvbnN0IHsgYW5jaG9yLCBuZXdsaW5lQWZ0ZXJQcm9wOiBubCB9ID0gcHJvcHM7XG4gICAgICAgIGNvbnN0IGxhc3RQcm9wID0gYW5jaG9yICYmIHRhZ1Rva2VuXG4gICAgICAgICAgICA/IGFuY2hvci5vZmZzZXQgPiB0YWdUb2tlbi5vZmZzZXRcbiAgICAgICAgICAgICAgICA/IGFuY2hvclxuICAgICAgICAgICAgICAgIDogdGFnVG9rZW5cbiAgICAgICAgICAgIDogKGFuY2hvciA/PyB0YWdUb2tlbik7XG4gICAgICAgIGlmIChsYXN0UHJvcCAmJiAoIW5sIHx8IG5sLm9mZnNldCA8IGxhc3RQcm9wLm9mZnNldCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnTWlzc2luZyBuZXdsaW5lIGFmdGVyIGJsb2NrIHNlcXVlbmNlIHByb3BzJztcbiAgICAgICAgICAgIG9uRXJyb3IobGFzdFByb3AsICdNSVNTSU5HX0NIQVInLCBtZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBleHBUeXBlID0gdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLW1hcCdcbiAgICAgICAgPyAnbWFwJ1xuICAgICAgICA6IHRva2VuLnR5cGUgPT09ICdibG9jay1zZXEnXG4gICAgICAgICAgICA/ICdzZXEnXG4gICAgICAgICAgICA6IHRva2VuLnN0YXJ0LnNvdXJjZSA9PT0gJ3snXG4gICAgICAgICAgICAgICAgPyAnbWFwJ1xuICAgICAgICAgICAgICAgIDogJ3NlcSc7XG4gICAgLy8gc2hvcnRjdXQ6IGNoZWNrIGlmIGl0J3MgYSBnZW5lcmljIFlBTUxNYXAgb3IgWUFNTFNlcVxuICAgIC8vIGJlZm9yZSBqdW1waW5nIGludG8gdGhlIGN1c3RvbSB0YWcgbG9naWMuXG4gICAgaWYgKCF0YWdUb2tlbiB8fFxuICAgICAgICAhdGFnTmFtZSB8fFxuICAgICAgICB0YWdOYW1lID09PSAnIScgfHxcbiAgICAgICAgKHRhZ05hbWUgPT09IFlBTUxNYXAuWUFNTE1hcC50YWdOYW1lICYmIGV4cFR5cGUgPT09ICdtYXAnKSB8fFxuICAgICAgICAodGFnTmFtZSA9PT0gWUFNTFNlcS5ZQU1MU2VxLnRhZ05hbWUgJiYgZXhwVHlwZSA9PT0gJ3NlcScpKSB7XG4gICAgICAgIHJldHVybiByZXNvbHZlQ29sbGVjdGlvbihDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnTmFtZSk7XG4gICAgfVxuICAgIGxldCB0YWcgPSBjdHguc2NoZW1hLnRhZ3MuZmluZCh0ID0+IHQudGFnID09PSB0YWdOYW1lICYmIHQuY29sbGVjdGlvbiA9PT0gZXhwVHlwZSk7XG4gICAgaWYgKCF0YWcpIHtcbiAgICAgICAgY29uc3Qga3QgPSBjdHguc2NoZW1hLmtub3duVGFnc1t0YWdOYW1lXTtcbiAgICAgICAgaWYgKGt0ICYmIGt0LmNvbGxlY3Rpb24gPT09IGV4cFR5cGUpIHtcbiAgICAgICAgICAgIGN0eC5zY2hlbWEudGFncy5wdXNoKE9iamVjdC5hc3NpZ24oe30sIGt0LCB7IGRlZmF1bHQ6IGZhbHNlIH0pKTtcbiAgICAgICAgICAgIHRhZyA9IGt0O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGt0KSB7XG4gICAgICAgICAgICAgICAgb25FcnJvcih0YWdUb2tlbiwgJ0JBRF9DT0xMRUNUSU9OX1RZUEUnLCBgJHtrdC50YWd9IHVzZWQgZm9yICR7ZXhwVHlwZX0gY29sbGVjdGlvbiwgYnV0IGV4cGVjdHMgJHtrdC5jb2xsZWN0aW9uID8/ICdzY2FsYXInfWAsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgb25FcnJvcih0YWdUb2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIGBVbnJlc29sdmVkIHRhZzogJHt0YWdOYW1lfWAsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc29sdmVDb2xsZWN0aW9uKENOLCBjdHgsIHRva2VuLCBvbkVycm9yLCB0YWdOYW1lKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBjb2xsID0gcmVzb2x2ZUNvbGxlY3Rpb24oQ04sIGN0eCwgdG9rZW4sIG9uRXJyb3IsIHRhZ05hbWUsIHRhZyk7XG4gICAgY29uc3QgcmVzID0gdGFnLnJlc29sdmU/Lihjb2xsLCBtc2cgPT4gb25FcnJvcih0YWdUb2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIG1zZyksIGN0eC5vcHRpb25zKSA/PyBjb2xsO1xuICAgIGNvbnN0IG5vZGUgPSBpZGVudGl0eS5pc05vZGUocmVzKVxuICAgICAgICA/IHJlc1xuICAgICAgICA6IG5ldyBTY2FsYXIuU2NhbGFyKHJlcyk7XG4gICAgbm9kZS5yYW5nZSA9IGNvbGwucmFuZ2U7XG4gICAgbm9kZS50YWcgPSB0YWdOYW1lO1xuICAgIGlmICh0YWc/LmZvcm1hdClcbiAgICAgICAgbm9kZS5mb3JtYXQgPSB0YWcuZm9ybWF0O1xuICAgIHJldHVybiBub2RlO1xufVxuXG5leHBvcnRzLmNvbXBvc2VDb2xsZWN0aW9uID0gY29tcG9zZUNvbGxlY3Rpb247XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbmZ1bmN0aW9uIHJlc29sdmVCbG9ja1NjYWxhcihjdHgsIHNjYWxhciwgb25FcnJvcikge1xuICAgIGNvbnN0IHN0YXJ0ID0gc2NhbGFyLm9mZnNldDtcbiAgICBjb25zdCBoZWFkZXIgPSBwYXJzZUJsb2NrU2NhbGFySGVhZGVyKHNjYWxhciwgY3R4Lm9wdGlvbnMuc3RyaWN0LCBvbkVycm9yKTtcbiAgICBpZiAoIWhlYWRlcilcbiAgICAgICAgcmV0dXJuIHsgdmFsdWU6ICcnLCB0eXBlOiBudWxsLCBjb21tZW50OiAnJywgcmFuZ2U6IFtzdGFydCwgc3RhcnQsIHN0YXJ0XSB9O1xuICAgIGNvbnN0IHR5cGUgPSBoZWFkZXIubW9kZSA9PT0gJz4nID8gU2NhbGFyLlNjYWxhci5CTE9DS19GT0xERUQgOiBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUw7XG4gICAgY29uc3QgbGluZXMgPSBzY2FsYXIuc291cmNlID8gc3BsaXRMaW5lcyhzY2FsYXIuc291cmNlKSA6IFtdO1xuICAgIC8vIGRldGVybWluZSB0aGUgZW5kIG9mIGNvbnRlbnQgJiBzdGFydCBvZiBjaG9tcGluZ1xuICAgIGxldCBjaG9tcFN0YXJ0ID0gbGluZXMubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSBsaW5lcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gbGluZXNbaV1bMV07XG4gICAgICAgIGlmIChjb250ZW50ID09PSAnJyB8fCBjb250ZW50ID09PSAnXFxyJylcbiAgICAgICAgICAgIGNob21wU3RhcnQgPSBpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG4gICAgLy8gc2hvcnRjdXQgZm9yIGVtcHR5IGNvbnRlbnRzXG4gICAgaWYgKGNob21wU3RhcnQgPT09IDApIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBoZWFkZXIuY2hvbXAgPT09ICcrJyAmJiBsaW5lcy5sZW5ndGggPiAwXG4gICAgICAgICAgICA/ICdcXG4nLnJlcGVhdChNYXRoLm1heCgxLCBsaW5lcy5sZW5ndGggLSAxKSlcbiAgICAgICAgICAgIDogJyc7XG4gICAgICAgIGxldCBlbmQgPSBzdGFydCArIGhlYWRlci5sZW5ndGg7XG4gICAgICAgIGlmIChzY2FsYXIuc291cmNlKVxuICAgICAgICAgICAgZW5kICs9IHNjYWxhci5zb3VyY2UubGVuZ3RoO1xuICAgICAgICByZXR1cm4geyB2YWx1ZSwgdHlwZSwgY29tbWVudDogaGVhZGVyLmNvbW1lbnQsIHJhbmdlOiBbc3RhcnQsIGVuZCwgZW5kXSB9O1xuICAgIH1cbiAgICAvLyBmaW5kIHRoZSBpbmRlbnRhdGlvbiBsZXZlbCB0byB0cmltIGZyb20gc3RhcnRcbiAgICBsZXQgdHJpbUluZGVudCA9IHNjYWxhci5pbmRlbnQgKyBoZWFkZXIuaW5kZW50O1xuICAgIGxldCBvZmZzZXQgPSBzY2FsYXIub2Zmc2V0ICsgaGVhZGVyLmxlbmd0aDtcbiAgICBsZXQgY29udGVudFN0YXJ0ID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNob21wU3RhcnQ7ICsraSkge1xuICAgICAgICBjb25zdCBbaW5kZW50LCBjb250ZW50XSA9IGxpbmVzW2ldO1xuICAgICAgICBpZiAoY29udGVudCA9PT0gJycgfHwgY29udGVudCA9PT0gJ1xccicpIHtcbiAgICAgICAgICAgIGlmIChoZWFkZXIuaW5kZW50ID09PSAwICYmIGluZGVudC5sZW5ndGggPiB0cmltSW5kZW50KVxuICAgICAgICAgICAgICAgIHRyaW1JbmRlbnQgPSBpbmRlbnQubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGluZGVudC5sZW5ndGggPCB0cmltSW5kZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9ICdCbG9jayBzY2FsYXJzIHdpdGggbW9yZS1pbmRlbnRlZCBsZWFkaW5nIGVtcHR5IGxpbmVzIG11c3QgdXNlIGFuIGV4cGxpY2l0IGluZGVudGF0aW9uIGluZGljYXRvcic7XG4gICAgICAgICAgICAgICAgb25FcnJvcihvZmZzZXQgKyBpbmRlbnQubGVuZ3RoLCAnTUlTU0lOR19DSEFSJywgbWVzc2FnZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGVhZGVyLmluZGVudCA9PT0gMClcbiAgICAgICAgICAgICAgICB0cmltSW5kZW50ID0gaW5kZW50Lmxlbmd0aDtcbiAgICAgICAgICAgIGNvbnRlbnRTdGFydCA9IGk7XG4gICAgICAgICAgICBpZiAodHJpbUluZGVudCA9PT0gMCAmJiAhY3R4LmF0Um9vdCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnQmxvY2sgc2NhbGFyIHZhbHVlcyBpbiBjb2xsZWN0aW9ucyBtdXN0IGJlIGluZGVudGVkJztcbiAgICAgICAgICAgICAgICBvbkVycm9yKG9mZnNldCwgJ0JBRF9JTkRFTlQnLCBtZXNzYWdlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIG9mZnNldCArPSBpbmRlbnQubGVuZ3RoICsgY29udGVudC5sZW5ndGggKyAxO1xuICAgIH1cbiAgICAvLyBpbmNsdWRlIHRyYWlsaW5nIG1vcmUtaW5kZW50ZWQgZW1wdHkgbGluZXMgaW4gY29udGVudFxuICAgIGZvciAobGV0IGkgPSBsaW5lcy5sZW5ndGggLSAxOyBpID49IGNob21wU3RhcnQ7IC0taSkge1xuICAgICAgICBpZiAobGluZXNbaV1bMF0ubGVuZ3RoID4gdHJpbUluZGVudClcbiAgICAgICAgICAgIGNob21wU3RhcnQgPSBpICsgMTtcbiAgICB9XG4gICAgbGV0IHZhbHVlID0gJyc7XG4gICAgbGV0IHNlcCA9ICcnO1xuICAgIGxldCBwcmV2TW9yZUluZGVudGVkID0gZmFsc2U7XG4gICAgLy8gbGVhZGluZyB3aGl0ZXNwYWNlIGlzIGtlcHQgaW50YWN0XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb250ZW50U3RhcnQ7ICsraSlcbiAgICAgICAgdmFsdWUgKz0gbGluZXNbaV1bMF0uc2xpY2UodHJpbUluZGVudCkgKyAnXFxuJztcbiAgICBmb3IgKGxldCBpID0gY29udGVudFN0YXJ0OyBpIDwgY2hvbXBTdGFydDsgKytpKSB7XG4gICAgICAgIGxldCBbaW5kZW50LCBjb250ZW50XSA9IGxpbmVzW2ldO1xuICAgICAgICBvZmZzZXQgKz0gaW5kZW50Lmxlbmd0aCArIGNvbnRlbnQubGVuZ3RoICsgMTtcbiAgICAgICAgY29uc3QgY3JsZiA9IGNvbnRlbnRbY29udGVudC5sZW5ndGggLSAxXSA9PT0gJ1xccic7XG4gICAgICAgIGlmIChjcmxmKVxuICAgICAgICAgICAgY29udGVudCA9IGNvbnRlbnQuc2xpY2UoMCwgLTEpO1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgYWxyZWFkeSBjYXVnaHQgaW4gbGV4ZXIgKi9cbiAgICAgICAgaWYgKGNvbnRlbnQgJiYgaW5kZW50Lmxlbmd0aCA8IHRyaW1JbmRlbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHNyYyA9IGhlYWRlci5pbmRlbnRcbiAgICAgICAgICAgICAgICA/ICdleHBsaWNpdCBpbmRlbnRhdGlvbiBpbmRpY2F0b3InXG4gICAgICAgICAgICAgICAgOiAnZmlyc3QgbGluZSc7XG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYEJsb2NrIHNjYWxhciBsaW5lcyBtdXN0IG5vdCBiZSBsZXNzIGluZGVudGVkIHRoYW4gdGhlaXIgJHtzcmN9YDtcbiAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0IC0gY29udGVudC5sZW5ndGggLSAoY3JsZiA/IDIgOiAxKSwgJ0JBRF9JTkRFTlQnLCBtZXNzYWdlKTtcbiAgICAgICAgICAgIGluZGVudCA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlID09PSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUwpIHtcbiAgICAgICAgICAgIHZhbHVlICs9IHNlcCArIGluZGVudC5zbGljZSh0cmltSW5kZW50KSArIGNvbnRlbnQ7XG4gICAgICAgICAgICBzZXAgPSAnXFxuJztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChpbmRlbnQubGVuZ3RoID4gdHJpbUluZGVudCB8fCBjb250ZW50WzBdID09PSAnXFx0Jykge1xuICAgICAgICAgICAgLy8gbW9yZS1pbmRlbnRlZCBjb250ZW50IHdpdGhpbiBhIGZvbGRlZCBibG9ja1xuICAgICAgICAgICAgaWYgKHNlcCA9PT0gJyAnKVxuICAgICAgICAgICAgICAgIHNlcCA9ICdcXG4nO1xuICAgICAgICAgICAgZWxzZSBpZiAoIXByZXZNb3JlSW5kZW50ZWQgJiYgc2VwID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICBzZXAgPSAnXFxuXFxuJztcbiAgICAgICAgICAgIHZhbHVlICs9IHNlcCArIGluZGVudC5zbGljZSh0cmltSW5kZW50KSArIGNvbnRlbnQ7XG4gICAgICAgICAgICBzZXAgPSAnXFxuJztcbiAgICAgICAgICAgIHByZXZNb3JlSW5kZW50ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGNvbnRlbnQgPT09ICcnKSB7XG4gICAgICAgICAgICAvLyBlbXB0eSBsaW5lXG4gICAgICAgICAgICBpZiAoc2VwID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICB2YWx1ZSArPSAnXFxuJztcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBzZXAgPSAnXFxuJztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZhbHVlICs9IHNlcCArIGNvbnRlbnQ7XG4gICAgICAgICAgICBzZXAgPSAnICc7XG4gICAgICAgICAgICBwcmV2TW9yZUluZGVudGVkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3dpdGNoIChoZWFkZXIuY2hvbXApIHtcbiAgICAgICAgY2FzZSAnLSc6XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnKyc6XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gY2hvbXBTdGFydDsgaSA8IGxpbmVzLmxlbmd0aDsgKytpKVxuICAgICAgICAgICAgICAgIHZhbHVlICs9ICdcXG4nICsgbGluZXNbaV1bMF0uc2xpY2UodHJpbUluZGVudCk7XG4gICAgICAgICAgICBpZiAodmFsdWVbdmFsdWUubGVuZ3RoIC0gMV0gIT09ICdcXG4nKVxuICAgICAgICAgICAgICAgIHZhbHVlICs9ICdcXG4nO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICB2YWx1ZSArPSAnXFxuJztcbiAgICB9XG4gICAgY29uc3QgZW5kID0gc3RhcnQgKyBoZWFkZXIubGVuZ3RoICsgc2NhbGFyLnNvdXJjZS5sZW5ndGg7XG4gICAgcmV0dXJuIHsgdmFsdWUsIHR5cGUsIGNvbW1lbnQ6IGhlYWRlci5jb21tZW50LCByYW5nZTogW3N0YXJ0LCBlbmQsIGVuZF0gfTtcbn1cbmZ1bmN0aW9uIHBhcnNlQmxvY2tTY2FsYXJIZWFkZXIoeyBvZmZzZXQsIHByb3BzIH0sIHN0cmljdCwgb25FcnJvcikge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiBzaG91bGQgbm90IGhhcHBlbiAqL1xuICAgIGlmIChwcm9wc1swXS50eXBlICE9PSAnYmxvY2stc2NhbGFyLWhlYWRlcicpIHtcbiAgICAgICAgb25FcnJvcihwcm9wc1swXSwgJ0lNUE9TU0lCTEUnLCAnQmxvY2sgc2NhbGFyIGhlYWRlciBub3QgZm91bmQnKTtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHsgc291cmNlIH0gPSBwcm9wc1swXTtcbiAgICBjb25zdCBtb2RlID0gc291cmNlWzBdO1xuICAgIGxldCBpbmRlbnQgPSAwO1xuICAgIGxldCBjaG9tcCA9ICcnO1xuICAgIGxldCBlcnJvciA9IC0xO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDwgc291cmNlLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGNoID0gc291cmNlW2ldO1xuICAgICAgICBpZiAoIWNob21wICYmIChjaCA9PT0gJy0nIHx8IGNoID09PSAnKycpKVxuICAgICAgICAgICAgY2hvbXAgPSBjaDtcbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBuID0gTnVtYmVyKGNoKTtcbiAgICAgICAgICAgIGlmICghaW5kZW50ICYmIG4pXG4gICAgICAgICAgICAgICAgaW5kZW50ID0gbjtcbiAgICAgICAgICAgIGVsc2UgaWYgKGVycm9yID09PSAtMSlcbiAgICAgICAgICAgICAgICBlcnJvciA9IG9mZnNldCArIGk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGVycm9yICE9PSAtMSlcbiAgICAgICAgb25FcnJvcihlcnJvciwgJ1VORVhQRUNURURfVE9LRU4nLCBgQmxvY2sgc2NhbGFyIGhlYWRlciBpbmNsdWRlcyBleHRyYSBjaGFyYWN0ZXJzOiAke3NvdXJjZX1gKTtcbiAgICBsZXQgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICBsZXQgY29tbWVudCA9ICcnO1xuICAgIGxldCBsZW5ndGggPSBzb3VyY2UubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDwgcHJvcHMubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgY29uc3QgdG9rZW4gPSBwcm9wc1tpXTtcbiAgICAgICAgc3dpdGNoICh0b2tlbi50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSB0cnVlO1xuICAgICAgICAgICAgLy8gZmFsbHRocm91Z2hcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIGxlbmd0aCArPSB0b2tlbi5zb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgaWYgKHN0cmljdCAmJiAhaGFzU3BhY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9ICdDb21tZW50cyBtdXN0IGJlIHNlcGFyYXRlZCBmcm9tIG90aGVyIHRva2VucyBieSB3aGl0ZSBzcGFjZSBjaGFyYWN0ZXJzJztcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ01JU1NJTkdfQ0hBUicsIG1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsZW5ndGggKz0gdG9rZW4uc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgICAgICBjb21tZW50ID0gdG9rZW4uc291cmNlLnN1YnN0cmluZygxKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Vycm9yJzpcbiAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIHRva2VuLm1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIGxlbmd0aCArPSB0b2tlbi5zb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgc2hvdWxkIG5vdCBoYXBwZW4gKi9cbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYFVuZXhwZWN0ZWQgdG9rZW4gaW4gYmxvY2sgc2NhbGFyIGhlYWRlcjogJHt0b2tlbi50eXBlfWA7XG4gICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ1VORVhQRUNURURfVE9LRU4nLCBtZXNzYWdlKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0cyA9IHRva2VuLnNvdXJjZTtcbiAgICAgICAgICAgICAgICBpZiAodHMgJiYgdHlwZW9mIHRzID09PSAnc3RyaW5nJylcbiAgICAgICAgICAgICAgICAgICAgbGVuZ3RoICs9IHRzLmxlbmd0aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4geyBtb2RlLCBpbmRlbnQsIGNob21wLCBjb21tZW50LCBsZW5ndGggfTtcbn1cbi8qKiBAcmV0dXJucyBBcnJheSBvZiBsaW5lcyBzcGxpdCB1cCBhcyBgW2luZGVudCwgY29udGVudF1gICovXG5mdW5jdGlvbiBzcGxpdExpbmVzKHNvdXJjZSkge1xuICAgIGNvbnN0IHNwbGl0ID0gc291cmNlLnNwbGl0KC9cXG4oICopLyk7XG4gICAgY29uc3QgZmlyc3QgPSBzcGxpdFswXTtcbiAgICBjb25zdCBtID0gZmlyc3QubWF0Y2goL14oICopLyk7XG4gICAgY29uc3QgbGluZTAgPSBtPy5bMV1cbiAgICAgICAgPyBbbVsxXSwgZmlyc3Quc2xpY2UobVsxXS5sZW5ndGgpXVxuICAgICAgICA6IFsnJywgZmlyc3RdO1xuICAgIGNvbnN0IGxpbmVzID0gW2xpbmUwXTtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IHNwbGl0Lmxlbmd0aDsgaSArPSAyKVxuICAgICAgICBsaW5lcy5wdXNoKFtzcGxpdFtpXSwgc3BsaXRbaSArIDFdXSk7XG4gICAgcmV0dXJuIGxpbmVzO1xufVxuXG5leHBvcnRzLnJlc29sdmVCbG9ja1NjYWxhciA9IHJlc29sdmVCbG9ja1NjYWxhcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xuXG5mdW5jdGlvbiByZXNvbHZlRmxvd1NjYWxhcihzY2FsYXIsIHN0cmljdCwgb25FcnJvcikge1xuICAgIGNvbnN0IHsgb2Zmc2V0LCB0eXBlLCBzb3VyY2UsIGVuZCB9ID0gc2NhbGFyO1xuICAgIGxldCBfdHlwZTtcbiAgICBsZXQgdmFsdWU7XG4gICAgY29uc3QgX29uRXJyb3IgPSAocmVsLCBjb2RlLCBtc2cpID0+IG9uRXJyb3Iob2Zmc2V0ICsgcmVsLCBjb2RlLCBtc2cpO1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICAgICAgX3R5cGUgPSBTY2FsYXIuU2NhbGFyLlBMQUlOO1xuICAgICAgICAgICAgdmFsdWUgPSBwbGFpblZhbHVlKHNvdXJjZSwgX29uRXJyb3IpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIF90eXBlID0gU2NhbGFyLlNjYWxhci5RVU9URV9TSU5HTEU7XG4gICAgICAgICAgICB2YWx1ZSA9IHNpbmdsZVF1b3RlZFZhbHVlKHNvdXJjZSwgX29uRXJyb3IpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIF90eXBlID0gU2NhbGFyLlNjYWxhci5RVU9URV9ET1VCTEU7XG4gICAgICAgICAgICB2YWx1ZSA9IGRvdWJsZVF1b3RlZFZhbHVlKHNvdXJjZSwgX29uRXJyb3IpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBvbkVycm9yKHNjYWxhciwgJ1VORVhQRUNURURfVE9LRU4nLCBgRXhwZWN0ZWQgYSBmbG93IHNjYWxhciB2YWx1ZSwgYnV0IGZvdW5kOiAke3R5cGV9YCk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgICAgICB0eXBlOiBudWxsLFxuICAgICAgICAgICAgICAgIGNvbW1lbnQ6ICcnLFxuICAgICAgICAgICAgICAgIHJhbmdlOiBbb2Zmc2V0LCBvZmZzZXQgKyBzb3VyY2UubGVuZ3RoLCBvZmZzZXQgKyBzb3VyY2UubGVuZ3RoXVxuICAgICAgICAgICAgfTtcbiAgICB9XG4gICAgY29uc3QgdmFsdWVFbmQgPSBvZmZzZXQgKyBzb3VyY2UubGVuZ3RoO1xuICAgIGNvbnN0IHJlID0gcmVzb2x2ZUVuZC5yZXNvbHZlRW5kKGVuZCwgdmFsdWVFbmQsIHN0cmljdCwgb25FcnJvcik7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdmFsdWUsXG4gICAgICAgIHR5cGU6IF90eXBlLFxuICAgICAgICBjb21tZW50OiByZS5jb21tZW50LFxuICAgICAgICByYW5nZTogW29mZnNldCwgdmFsdWVFbmQsIHJlLm9mZnNldF1cbiAgICB9O1xufVxuZnVuY3Rpb24gcGxhaW5WYWx1ZShzb3VyY2UsIG9uRXJyb3IpIHtcbiAgICBsZXQgYmFkQ2hhciA9ICcnO1xuICAgIHN3aXRjaCAoc291cmNlWzBdKSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGNhc2UgJ1xcdCc6XG4gICAgICAgICAgICBiYWRDaGFyID0gJ2EgdGFiIGNoYXJhY3Rlcic7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnLCc6XG4gICAgICAgICAgICBiYWRDaGFyID0gJ2Zsb3cgaW5kaWNhdG9yIGNoYXJhY3RlciAsJztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICclJzpcbiAgICAgICAgICAgIGJhZENoYXIgPSAnZGlyZWN0aXZlIGluZGljYXRvciBjaGFyYWN0ZXIgJSc7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnfCc6XG4gICAgICAgIGNhc2UgJz4nOiB7XG4gICAgICAgICAgICBiYWRDaGFyID0gYGJsb2NrIHNjYWxhciBpbmRpY2F0b3IgJHtzb3VyY2VbMF19YDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ0AnOlxuICAgICAgICBjYXNlICdgJzoge1xuICAgICAgICAgICAgYmFkQ2hhciA9IGByZXNlcnZlZCBjaGFyYWN0ZXIgJHtzb3VyY2VbMF19YDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChiYWRDaGFyKVxuICAgICAgICBvbkVycm9yKDAsICdCQURfU0NBTEFSX1NUQVJUJywgYFBsYWluIHZhbHVlIGNhbm5vdCBzdGFydCB3aXRoICR7YmFkQ2hhcn1gKTtcbiAgICByZXR1cm4gZm9sZExpbmVzKHNvdXJjZSk7XG59XG5mdW5jdGlvbiBzaW5nbGVRdW90ZWRWYWx1ZShzb3VyY2UsIG9uRXJyb3IpIHtcbiAgICBpZiAoc291cmNlW3NvdXJjZS5sZW5ndGggLSAxXSAhPT0gXCInXCIgfHwgc291cmNlLmxlbmd0aCA9PT0gMSlcbiAgICAgICAgb25FcnJvcihzb3VyY2UubGVuZ3RoLCAnTUlTU0lOR19DSEFSJywgXCJNaXNzaW5nIGNsb3NpbmcgJ3F1b3RlXCIpO1xuICAgIHJldHVybiBmb2xkTGluZXMoc291cmNlLnNsaWNlKDEsIC0xKSkucmVwbGFjZSgvJycvZywgXCInXCIpO1xufVxuZnVuY3Rpb24gZm9sZExpbmVzKHNvdXJjZSkge1xuICAgIC8qKlxuICAgICAqIFRoZSBuZWdhdGl2ZSBsb29rYmVoaW5kIGhlcmUgYW5kIGluIHRoZSBgcmVgIFJlZ0V4cCBpcyB0b1xuICAgICAqIHByZXZlbnQgY2F1c2luZyBhIHBvbHlub21pYWwgc2VhcmNoIHRpbWUgaW4gY2VydGFpbiBjYXNlcy5cbiAgICAgKlxuICAgICAqIFRoZSB0cnktY2F0Y2ggaXMgZm9yIFNhZmFyaSwgd2hpY2ggZG9lc24ndCBzdXBwb3J0IHRoaXMgeWV0OlxuICAgICAqIGh0dHBzOi8vY2FuaXVzZS5jb20vanMtcmVnZXhwLWxvb2tiZWhpbmRcbiAgICAgKi9cbiAgICBsZXQgZmlyc3QsIGxpbmU7XG4gICAgdHJ5IHtcbiAgICAgICAgZmlyc3QgPSBuZXcgUmVnRXhwKCcoLio/KSg/PCFbIFxcdF0pWyBcXHRdKlxccj9cXG4nLCAnc3knKTtcbiAgICAgICAgbGluZSA9IG5ldyBSZWdFeHAoJ1sgXFx0XSooLio/KSg/Oig/PCFbIFxcdF0pWyBcXHRdKik/XFxyP1xcbicsICdzeScpO1xuICAgIH1cbiAgICBjYXRjaCB7XG4gICAgICAgIGZpcnN0ID0gLyguKj8pWyBcXHRdKlxccj9cXG4vc3k7XG4gICAgICAgIGxpbmUgPSAvWyBcXHRdKiguKj8pWyBcXHRdKlxccj9cXG4vc3k7XG4gICAgfVxuICAgIGxldCBtYXRjaCA9IGZpcnN0LmV4ZWMoc291cmNlKTtcbiAgICBpZiAoIW1hdGNoKVxuICAgICAgICByZXR1cm4gc291cmNlO1xuICAgIGxldCByZXMgPSBtYXRjaFsxXTtcbiAgICBsZXQgc2VwID0gJyAnO1xuICAgIGxldCBwb3MgPSBmaXJzdC5sYXN0SW5kZXg7XG4gICAgbGluZS5sYXN0SW5kZXggPSBwb3M7XG4gICAgd2hpbGUgKChtYXRjaCA9IGxpbmUuZXhlYyhzb3VyY2UpKSkge1xuICAgICAgICBpZiAobWF0Y2hbMV0gPT09ICcnKSB7XG4gICAgICAgICAgICBpZiAoc2VwID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICByZXMgKz0gc2VwO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHNlcCA9ICdcXG4nO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmVzICs9IHNlcCArIG1hdGNoWzFdO1xuICAgICAgICAgICAgc2VwID0gJyAnO1xuICAgICAgICB9XG4gICAgICAgIHBvcyA9IGxpbmUubGFzdEluZGV4O1xuICAgIH1cbiAgICBjb25zdCBsYXN0ID0gL1sgXFx0XSooLiopL3N5O1xuICAgIGxhc3QubGFzdEluZGV4ID0gcG9zO1xuICAgIG1hdGNoID0gbGFzdC5leGVjKHNvdXJjZSk7XG4gICAgcmV0dXJuIHJlcyArIHNlcCArIChtYXRjaD8uWzFdID8/ICcnKTtcbn1cbmZ1bmN0aW9uIGRvdWJsZVF1b3RlZFZhbHVlKHNvdXJjZSwgb25FcnJvcikge1xuICAgIGxldCByZXMgPSAnJztcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IHNvdXJjZS5sZW5ndGggLSAxOyArK2kpIHtcbiAgICAgICAgY29uc3QgY2ggPSBzb3VyY2VbaV07XG4gICAgICAgIGlmIChjaCA9PT0gJ1xccicgJiYgc291cmNlW2kgKyAxXSA9PT0gJ1xcbicpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgaWYgKGNoID09PSAnXFxuJykge1xuICAgICAgICAgICAgY29uc3QgeyBmb2xkLCBvZmZzZXQgfSA9IGZvbGROZXdsaW5lKHNvdXJjZSwgaSk7XG4gICAgICAgICAgICByZXMgKz0gZm9sZDtcbiAgICAgICAgICAgIGkgPSBvZmZzZXQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICdcXFxcJykge1xuICAgICAgICAgICAgbGV0IG5leHQgPSBzb3VyY2VbKytpXTtcbiAgICAgICAgICAgIGNvbnN0IGNjID0gZXNjYXBlQ29kZXNbbmV4dF07XG4gICAgICAgICAgICBpZiAoY2MpXG4gICAgICAgICAgICAgICAgcmVzICs9IGNjO1xuICAgICAgICAgICAgZWxzZSBpZiAobmV4dCA9PT0gJ1xcbicpIHtcbiAgICAgICAgICAgICAgICAvLyBza2lwIGVzY2FwZWQgbmV3bGluZXMsIGJ1dCBzdGlsbCB0cmltIHRoZSBmb2xsb3dpbmcgbGluZVxuICAgICAgICAgICAgICAgIG5leHQgPSBzb3VyY2VbaSArIDFdO1xuICAgICAgICAgICAgICAgIHdoaWxlIChuZXh0ID09PSAnICcgfHwgbmV4dCA9PT0gJ1xcdCcpXG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSBzb3VyY2VbKytpICsgMV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChuZXh0ID09PSAnXFxyJyAmJiBzb3VyY2VbaSArIDFdID09PSAnXFxuJykge1xuICAgICAgICAgICAgICAgIC8vIHNraXAgZXNjYXBlZCBDUkxGIG5ld2xpbmVzLCBidXQgc3RpbGwgdHJpbSB0aGUgZm9sbG93aW5nIGxpbmVcbiAgICAgICAgICAgICAgICBuZXh0ID0gc291cmNlWysraSArIDFdO1xuICAgICAgICAgICAgICAgIHdoaWxlIChuZXh0ID09PSAnICcgfHwgbmV4dCA9PT0gJ1xcdCcpXG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSBzb3VyY2VbKytpICsgMV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChuZXh0ID09PSAneCcgfHwgbmV4dCA9PT0gJ3UnIHx8IG5leHQgPT09ICdVJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlbmd0aCA9IHsgeDogMiwgdTogNCwgVTogOCB9W25leHRdO1xuICAgICAgICAgICAgICAgIHJlcyArPSBwYXJzZUNoYXJDb2RlKHNvdXJjZSwgaSArIDEsIGxlbmd0aCwgb25FcnJvcik7XG4gICAgICAgICAgICAgICAgaSArPSBsZW5ndGg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCByYXcgPSBzb3VyY2Uuc3Vic3RyKGkgLSAxLCAyKTtcbiAgICAgICAgICAgICAgICBvbkVycm9yKGkgLSAxLCAnQkFEX0RRX0VTQ0FQRScsIGBJbnZhbGlkIGVzY2FwZSBzZXF1ZW5jZSAke3Jhd31gKTtcbiAgICAgICAgICAgICAgICByZXMgKz0gcmF3O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnKSB7XG4gICAgICAgICAgICAvLyB0cmltIHRyYWlsaW5nIHdoaXRlc3BhY2VcbiAgICAgICAgICAgIGNvbnN0IHdzU3RhcnQgPSBpO1xuICAgICAgICAgICAgbGV0IG5leHQgPSBzb3VyY2VbaSArIDFdO1xuICAgICAgICAgICAgd2hpbGUgKG5leHQgPT09ICcgJyB8fCBuZXh0ID09PSAnXFx0JylcbiAgICAgICAgICAgICAgICBuZXh0ID0gc291cmNlWysraSArIDFdO1xuICAgICAgICAgICAgaWYgKG5leHQgIT09ICdcXG4nICYmICEobmV4dCA9PT0gJ1xccicgJiYgc291cmNlW2kgKyAyXSA9PT0gJ1xcbicpKVxuICAgICAgICAgICAgICAgIHJlcyArPSBpID4gd3NTdGFydCA/IHNvdXJjZS5zbGljZSh3c1N0YXJ0LCBpICsgMSkgOiBjaDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJlcyArPSBjaDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoc291cmNlW3NvdXJjZS5sZW5ndGggLSAxXSAhPT0gJ1wiJyB8fCBzb3VyY2UubGVuZ3RoID09PSAxKVxuICAgICAgICBvbkVycm9yKHNvdXJjZS5sZW5ndGgsICdNSVNTSU5HX0NIQVInLCAnTWlzc2luZyBjbG9zaW5nIFwicXVvdGUnKTtcbiAgICByZXR1cm4gcmVzO1xufVxuLyoqXG4gKiBGb2xkIGEgc2luZ2xlIG5ld2xpbmUgaW50byBhIHNwYWNlLCBtdWx0aXBsZSBuZXdsaW5lcyB0byBOIC0gMSBuZXdsaW5lcy5cbiAqIFByZXN1bWVzIGBzb3VyY2Vbb2Zmc2V0XSA9PT0gJ1xcbidgXG4gKi9cbmZ1bmN0aW9uIGZvbGROZXdsaW5lKHNvdXJjZSwgb2Zmc2V0KSB7XG4gICAgbGV0IGZvbGQgPSAnJztcbiAgICBsZXQgY2ggPSBzb3VyY2Vbb2Zmc2V0ICsgMV07XG4gICAgd2hpbGUgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnIHx8IGNoID09PSAnXFxuJyB8fCBjaCA9PT0gJ1xccicpIHtcbiAgICAgICAgaWYgKGNoID09PSAnXFxyJyAmJiBzb3VyY2Vbb2Zmc2V0ICsgMl0gIT09ICdcXG4nKVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGlmIChjaCA9PT0gJ1xcbicpXG4gICAgICAgICAgICBmb2xkICs9ICdcXG4nO1xuICAgICAgICBvZmZzZXQgKz0gMTtcbiAgICAgICAgY2ggPSBzb3VyY2Vbb2Zmc2V0ICsgMV07XG4gICAgfVxuICAgIGlmICghZm9sZClcbiAgICAgICAgZm9sZCA9ICcgJztcbiAgICByZXR1cm4geyBmb2xkLCBvZmZzZXQgfTtcbn1cbmNvbnN0IGVzY2FwZUNvZGVzID0ge1xuICAgICcwJzogJ1xcMCcsIC8vIG51bGwgY2hhcmFjdGVyXG4gICAgYTogJ1xceDA3JywgLy8gYmVsbCBjaGFyYWN0ZXJcbiAgICBiOiAnXFxiJywgLy8gYmFja3NwYWNlXG4gICAgZTogJ1xceDFiJywgLy8gZXNjYXBlIGNoYXJhY3RlclxuICAgIGY6ICdcXGYnLCAvLyBmb3JtIGZlZWRcbiAgICBuOiAnXFxuJywgLy8gbGluZSBmZWVkXG4gICAgcjogJ1xccicsIC8vIGNhcnJpYWdlIHJldHVyblxuICAgIHQ6ICdcXHQnLCAvLyBob3Jpem9udGFsIHRhYlxuICAgIHY6ICdcXHYnLCAvLyB2ZXJ0aWNhbCB0YWJcbiAgICBOOiAnXFx1MDA4NScsIC8vIFVuaWNvZGUgbmV4dCBsaW5lXG4gICAgXzogJ1xcdTAwYTAnLCAvLyBVbmljb2RlIG5vbi1icmVha2luZyBzcGFjZVxuICAgIEw6ICdcXHUyMDI4JywgLy8gVW5pY29kZSBsaW5lIHNlcGFyYXRvclxuICAgIFA6ICdcXHUyMDI5JywgLy8gVW5pY29kZSBwYXJhZ3JhcGggc2VwYXJhdG9yXG4gICAgJyAnOiAnICcsXG4gICAgJ1wiJzogJ1wiJyxcbiAgICAnLyc6ICcvJyxcbiAgICAnXFxcXCc6ICdcXFxcJyxcbiAgICAnXFx0JzogJ1xcdCdcbn07XG5mdW5jdGlvbiBwYXJzZUNoYXJDb2RlKHNvdXJjZSwgb2Zmc2V0LCBsZW5ndGgsIG9uRXJyb3IpIHtcbiAgICBjb25zdCBjYyA9IHNvdXJjZS5zdWJzdHIob2Zmc2V0LCBsZW5ndGgpO1xuICAgIGNvbnN0IG9rID0gY2MubGVuZ3RoID09PSBsZW5ndGggJiYgL15bMC05YS1mQS1GXSskLy50ZXN0KGNjKTtcbiAgICBjb25zdCBjb2RlID0gb2sgPyBwYXJzZUludChjYywgMTYpIDogTmFOO1xuICAgIGlmIChpc05hTihjb2RlKSkge1xuICAgICAgICBjb25zdCByYXcgPSBzb3VyY2Uuc3Vic3RyKG9mZnNldCAtIDIsIGxlbmd0aCArIDIpO1xuICAgICAgICBvbkVycm9yKG9mZnNldCAtIDIsICdCQURfRFFfRVNDQVBFJywgYEludmFsaWQgZXNjYXBlIHNlcXVlbmNlICR7cmF3fWApO1xuICAgICAgICByZXR1cm4gcmF3O1xuICAgIH1cbiAgICByZXR1cm4gU3RyaW5nLmZyb21Db2RlUG9pbnQoY29kZSk7XG59XG5cbmV4cG9ydHMucmVzb2x2ZUZsb3dTY2FsYXIgPSByZXNvbHZlRmxvd1NjYWxhcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgcmVzb2x2ZUJsb2NrU2NhbGFyID0gcmVxdWlyZSgnLi9yZXNvbHZlLWJsb2NrLXNjYWxhci5qcycpO1xudmFyIHJlc29sdmVGbG93U2NhbGFyID0gcmVxdWlyZSgnLi9yZXNvbHZlLWZsb3ctc2NhbGFyLmpzJyk7XG5cbmZ1bmN0aW9uIGNvbXBvc2VTY2FsYXIoY3R4LCB0b2tlbiwgdGFnVG9rZW4sIG9uRXJyb3IpIHtcbiAgICBjb25zdCB7IHZhbHVlLCB0eXBlLCBjb21tZW50LCByYW5nZSB9ID0gdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLXNjYWxhcidcbiAgICAgICAgPyByZXNvbHZlQmxvY2tTY2FsYXIucmVzb2x2ZUJsb2NrU2NhbGFyKGN0eCwgdG9rZW4sIG9uRXJyb3IpXG4gICAgICAgIDogcmVzb2x2ZUZsb3dTY2FsYXIucmVzb2x2ZUZsb3dTY2FsYXIodG9rZW4sIGN0eC5vcHRpb25zLnN0cmljdCwgb25FcnJvcik7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRhZ1Rva2VuXG4gICAgICAgID8gY3R4LmRpcmVjdGl2ZXMudGFnTmFtZSh0YWdUb2tlbi5zb3VyY2UsIG1zZyA9PiBvbkVycm9yKHRhZ1Rva2VuLCAnVEFHX1JFU09MVkVfRkFJTEVEJywgbXNnKSlcbiAgICAgICAgOiBudWxsO1xuICAgIGxldCB0YWc7XG4gICAgaWYgKGN0eC5vcHRpb25zLnN0cmluZ0tleXMgJiYgY3R4LmF0S2V5KSB7XG4gICAgICAgIHRhZyA9IGN0eC5zY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTtcbiAgICB9XG4gICAgZWxzZSBpZiAodGFnTmFtZSlcbiAgICAgICAgdGFnID0gZmluZFNjYWxhclRhZ0J5TmFtZShjdHguc2NoZW1hLCB2YWx1ZSwgdGFnTmFtZSwgdGFnVG9rZW4sIG9uRXJyb3IpO1xuICAgIGVsc2UgaWYgKHRva2VuLnR5cGUgPT09ICdzY2FsYXInKVxuICAgICAgICB0YWcgPSBmaW5kU2NhbGFyVGFnQnlUZXN0KGN0eCwgdmFsdWUsIHRva2VuLCBvbkVycm9yKTtcbiAgICBlbHNlXG4gICAgICAgIHRhZyA9IGN0eC5zY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTtcbiAgICBsZXQgc2NhbGFyO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlcyA9IHRhZy5yZXNvbHZlKHZhbHVlLCBtc2cgPT4gb25FcnJvcih0YWdUb2tlbiA/PyB0b2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIG1zZyksIGN0eC5vcHRpb25zKTtcbiAgICAgICAgc2NhbGFyID0gaWRlbnRpdHkuaXNTY2FsYXIocmVzKSA/IHJlcyA6IG5ldyBTY2FsYXIuU2NhbGFyKHJlcyk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zdCBtc2cgPSBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcik7XG4gICAgICAgIG9uRXJyb3IodGFnVG9rZW4gPz8gdG9rZW4sICdUQUdfUkVTT0xWRV9GQUlMRUQnLCBtc2cpO1xuICAgICAgICBzY2FsYXIgPSBuZXcgU2NhbGFyLlNjYWxhcih2YWx1ZSk7XG4gICAgfVxuICAgIHNjYWxhci5yYW5nZSA9IHJhbmdlO1xuICAgIHNjYWxhci5zb3VyY2UgPSB2YWx1ZTtcbiAgICBpZiAodHlwZSlcbiAgICAgICAgc2NhbGFyLnR5cGUgPSB0eXBlO1xuICAgIGlmICh0YWdOYW1lKVxuICAgICAgICBzY2FsYXIudGFnID0gdGFnTmFtZTtcbiAgICBpZiAodGFnLmZvcm1hdClcbiAgICAgICAgc2NhbGFyLmZvcm1hdCA9IHRhZy5mb3JtYXQ7XG4gICAgaWYgKGNvbW1lbnQpXG4gICAgICAgIHNjYWxhci5jb21tZW50ID0gY29tbWVudDtcbiAgICByZXR1cm4gc2NhbGFyO1xufVxuZnVuY3Rpb24gZmluZFNjYWxhclRhZ0J5TmFtZShzY2hlbWEsIHZhbHVlLCB0YWdOYW1lLCB0YWdUb2tlbiwgb25FcnJvcikge1xuICAgIGlmICh0YWdOYW1lID09PSAnIScpXG4gICAgICAgIHJldHVybiBzY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTsgLy8gbm9uLXNwZWNpZmljIHRhZ1xuICAgIGNvbnN0IG1hdGNoV2l0aFRlc3QgPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRhZyBvZiBzY2hlbWEudGFncykge1xuICAgICAgICBpZiAoIXRhZy5jb2xsZWN0aW9uICYmIHRhZy50YWcgPT09IHRhZ05hbWUpIHtcbiAgICAgICAgICAgIGlmICh0YWcuZGVmYXVsdCAmJiB0YWcudGVzdClcbiAgICAgICAgICAgICAgICBtYXRjaFdpdGhUZXN0LnB1c2godGFnKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFnO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZvciAoY29uc3QgdGFnIG9mIG1hdGNoV2l0aFRlc3QpXG4gICAgICAgIGlmICh0YWcudGVzdD8udGVzdCh2YWx1ZSkpXG4gICAgICAgICAgICByZXR1cm4gdGFnO1xuICAgIGNvbnN0IGt0ID0gc2NoZW1hLmtub3duVGFnc1t0YWdOYW1lXTtcbiAgICBpZiAoa3QgJiYgIWt0LmNvbGxlY3Rpb24pIHtcbiAgICAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIGtub3duIHRhZyBpcyBhdmFpbGFibGUgZm9yIHN0cmluZ2lmeWluZyxcbiAgICAgICAgLy8gYnV0IGRvZXMgbm90IGdldCB1c2VkIGJ5IGRlZmF1bHQuXG4gICAgICAgIHNjaGVtYS50YWdzLnB1c2goT2JqZWN0LmFzc2lnbih7fSwga3QsIHsgZGVmYXVsdDogZmFsc2UsIHRlc3Q6IHVuZGVmaW5lZCB9KSk7XG4gICAgICAgIHJldHVybiBrdDtcbiAgICB9XG4gICAgb25FcnJvcih0YWdUb2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIGBVbnJlc29sdmVkIHRhZzogJHt0YWdOYW1lfWAsIHRhZ05hbWUgIT09ICd0YWc6eWFtbC5vcmcsMjAwMjpzdHInKTtcbiAgICByZXR1cm4gc2NoZW1hW2lkZW50aXR5LlNDQUxBUl07XG59XG5mdW5jdGlvbiBmaW5kU2NhbGFyVGFnQnlUZXN0KHsgYXRLZXksIGRpcmVjdGl2ZXMsIHNjaGVtYSB9LCB2YWx1ZSwgdG9rZW4sIG9uRXJyb3IpIHtcbiAgICBjb25zdCB0YWcgPSBzY2hlbWEudGFncy5maW5kKHRhZyA9PiAodGFnLmRlZmF1bHQgPT09IHRydWUgfHwgKGF0S2V5ICYmIHRhZy5kZWZhdWx0ID09PSAna2V5JykpICYmXG4gICAgICAgIHRhZy50ZXN0Py50ZXN0KHZhbHVlKSkgfHwgc2NoZW1hW2lkZW50aXR5LlNDQUxBUl07XG4gICAgaWYgKHNjaGVtYS5jb21wYXQpIHtcbiAgICAgICAgY29uc3QgY29tcGF0ID0gc2NoZW1hLmNvbXBhdC5maW5kKHRhZyA9PiB0YWcuZGVmYXVsdCAmJiB0YWcudGVzdD8udGVzdCh2YWx1ZSkpID8/XG4gICAgICAgICAgICBzY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTtcbiAgICAgICAgaWYgKHRhZy50YWcgIT09IGNvbXBhdC50YWcpIHtcbiAgICAgICAgICAgIGNvbnN0IHRzID0gZGlyZWN0aXZlcy50YWdTdHJpbmcodGFnLnRhZyk7XG4gICAgICAgICAgICBjb25zdCBjcyA9IGRpcmVjdGl2ZXMudGFnU3RyaW5nKGNvbXBhdC50YWcpO1xuICAgICAgICAgICAgY29uc3QgbXNnID0gYFZhbHVlIG1heSBiZSBwYXJzZWQgYXMgZWl0aGVyICR7dHN9IG9yICR7Y3N9YDtcbiAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdUQUdfUkVTT0xWRV9GQUlMRUQnLCBtc2csIHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0YWc7XG59XG5cbmV4cG9ydHMuY29tcG9zZVNjYWxhciA9IGNvbXBvc2VTY2FsYXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5mdW5jdGlvbiBlbXB0eVNjYWxhclBvc2l0aW9uKG9mZnNldCwgYmVmb3JlLCBwb3MpIHtcbiAgICBpZiAoYmVmb3JlKSB7XG4gICAgICAgIHBvcyA/PyAocG9zID0gYmVmb3JlLmxlbmd0aCk7XG4gICAgICAgIGZvciAobGV0IGkgPSBwb3MgLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICAgICAgbGV0IHN0ID0gYmVmb3JlW2ldO1xuICAgICAgICAgICAgc3dpdGNoIChzdC50eXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQgLT0gc3Quc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUZWNobmljYWxseSwgYW4gZW1wdHkgc2NhbGFyIGlzIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBsYXN0IG5vbi1lbXB0eVxuICAgICAgICAgICAgLy8gbm9kZSwgYnV0IGl0J3MgbW9yZSB1c2VmdWwgdG8gcGxhY2UgaXQgYWZ0ZXIgYW55IHdoaXRlc3BhY2UuXG4gICAgICAgICAgICBzdCA9IGJlZm9yZVsrK2ldO1xuICAgICAgICAgICAgd2hpbGUgKHN0Py50eXBlID09PSAnc3BhY2UnKSB7XG4gICAgICAgICAgICAgICAgb2Zmc2V0ICs9IHN0LnNvdXJjZS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgc3QgPSBiZWZvcmVbKytpXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBvZmZzZXQ7XG59XG5cbmV4cG9ydHMuZW1wdHlTY2FsYXJQb3NpdGlvbiA9IGVtcHR5U2NhbGFyUG9zaXRpb247XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgQWxpYXMgPSByZXF1aXJlKCcuLi9ub2Rlcy9BbGlhcy5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBjb21wb3NlQ29sbGVjdGlvbiA9IHJlcXVpcmUoJy4vY29tcG9zZS1jb2xsZWN0aW9uLmpzJyk7XG52YXIgY29tcG9zZVNjYWxhciA9IHJlcXVpcmUoJy4vY29tcG9zZS1zY2FsYXIuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xudmFyIHV0aWxFbXB0eVNjYWxhclBvc2l0aW9uID0gcmVxdWlyZSgnLi91dGlsLWVtcHR5LXNjYWxhci1wb3NpdGlvbi5qcycpO1xuXG5jb25zdCBDTiA9IHsgY29tcG9zZU5vZGUsIGNvbXBvc2VFbXB0eU5vZGUgfTtcbmZ1bmN0aW9uIGNvbXBvc2VOb2RlKGN0eCwgdG9rZW4sIHByb3BzLCBvbkVycm9yKSB7XG4gICAgY29uc3QgYXRLZXkgPSBjdHguYXRLZXk7XG4gICAgY29uc3QgeyBzcGFjZUJlZm9yZSwgY29tbWVudCwgYW5jaG9yLCB0YWcgfSA9IHByb3BzO1xuICAgIGxldCBub2RlO1xuICAgIGxldCBpc1NyY1Rva2VuID0gdHJ1ZTtcbiAgICBzd2l0Y2ggKHRva2VuLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnYWxpYXMnOlxuICAgICAgICAgICAgbm9kZSA9IGNvbXBvc2VBbGlhcyhjdHgsIHRva2VuLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlmIChhbmNob3IgfHwgdGFnKVxuICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdBTElBU19QUk9QUycsICdBbiBhbGlhcyBub2RlIG11c3Qgbm90IHNwZWNpZnkgYW55IHByb3BlcnRpZXMnKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICBjYXNlICdzaW5nbGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgY2FzZSAnYmxvY2stc2NhbGFyJzpcbiAgICAgICAgICAgIG5vZGUgPSBjb21wb3NlU2NhbGFyLmNvbXBvc2VTY2FsYXIoY3R4LCB0b2tlbiwgdGFnLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlmIChhbmNob3IpXG4gICAgICAgICAgICAgICAgbm9kZS5hbmNob3IgPSBhbmNob3Iuc291cmNlLnN1YnN0cmluZygxKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdibG9jay1tYXAnOlxuICAgICAgICBjYXNlICdibG9jay1zZXEnOlxuICAgICAgICBjYXNlICdmbG93LWNvbGxlY3Rpb24nOlxuICAgICAgICAgICAgbm9kZSA9IGNvbXBvc2VDb2xsZWN0aW9uLmNvbXBvc2VDb2xsZWN0aW9uKENOLCBjdHgsIHRva2VuLCBwcm9wcywgb25FcnJvcik7XG4gICAgICAgICAgICBpZiAoYW5jaG9yKVxuICAgICAgICAgICAgICAgIG5vZGUuYW5jaG9yID0gYW5jaG9yLnNvdXJjZS5zdWJzdHJpbmcoMSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IHRva2VuLnR5cGUgPT09ICdlcnJvcidcbiAgICAgICAgICAgICAgICA/IHRva2VuLm1lc3NhZ2VcbiAgICAgICAgICAgICAgICA6IGBVbnN1cHBvcnRlZCB0b2tlbiAodHlwZTogJHt0b2tlbi50eXBlfSlgO1xuICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ1VORVhQRUNURURfVE9LRU4nLCBtZXNzYWdlKTtcbiAgICAgICAgICAgIG5vZGUgPSBjb21wb3NlRW1wdHlOb2RlKGN0eCwgdG9rZW4ub2Zmc2V0LCB1bmRlZmluZWQsIG51bGwsIHByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlzU3JjVG9rZW4gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoYW5jaG9yICYmIG5vZGUuYW5jaG9yID09PSAnJylcbiAgICAgICAgb25FcnJvcihhbmNob3IsICdCQURfQUxJQVMnLCAnQW5jaG9yIGNhbm5vdCBiZSBhbiBlbXB0eSBzdHJpbmcnKTtcbiAgICBpZiAoYXRLZXkgJiZcbiAgICAgICAgY3R4Lm9wdGlvbnMuc3RyaW5nS2V5cyAmJlxuICAgICAgICAoIWlkZW50aXR5LmlzU2NhbGFyKG5vZGUpIHx8XG4gICAgICAgICAgICB0eXBlb2Ygbm9kZS52YWx1ZSAhPT0gJ3N0cmluZycgfHxcbiAgICAgICAgICAgIChub2RlLnRhZyAmJiBub2RlLnRhZyAhPT0gJ3RhZzp5YW1sLm9yZywyMDAyOnN0cicpKSkge1xuICAgICAgICBjb25zdCBtc2cgPSAnV2l0aCBzdHJpbmdLZXlzLCBhbGwga2V5cyBtdXN0IGJlIHN0cmluZ3MnO1xuICAgICAgICBvbkVycm9yKHRhZyA/PyB0b2tlbiwgJ05PTl9TVFJJTkdfS0VZJywgbXNnKTtcbiAgICB9XG4gICAgaWYgKHNwYWNlQmVmb3JlKVxuICAgICAgICBub2RlLnNwYWNlQmVmb3JlID0gdHJ1ZTtcbiAgICBpZiAoY29tbWVudCkge1xuICAgICAgICBpZiAodG9rZW4udHlwZSA9PT0gJ3NjYWxhcicgJiYgdG9rZW4uc291cmNlID09PSAnJylcbiAgICAgICAgICAgIG5vZGUuY29tbWVudCA9IGNvbW1lbnQ7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIG5vZGUuY29tbWVudEJlZm9yZSA9IGNvbW1lbnQ7XG4gICAgfVxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgVHlwZSBjaGVja2luZyBtaXNzZXMgbWVhbmluZyBvZiBpc1NyY1Rva2VuXG4gICAgaWYgKGN0eC5vcHRpb25zLmtlZXBTb3VyY2VUb2tlbnMgJiYgaXNTcmNUb2tlbilcbiAgICAgICAgbm9kZS5zcmNUb2tlbiA9IHRva2VuO1xuICAgIHJldHVybiBub2RlO1xufVxuZnVuY3Rpb24gY29tcG9zZUVtcHR5Tm9kZShjdHgsIG9mZnNldCwgYmVmb3JlLCBwb3MsIHsgc3BhY2VCZWZvcmUsIGNvbW1lbnQsIGFuY2hvciwgdGFnLCBlbmQgfSwgb25FcnJvcikge1xuICAgIGNvbnN0IHRva2VuID0ge1xuICAgICAgICB0eXBlOiAnc2NhbGFyJyxcbiAgICAgICAgb2Zmc2V0OiB1dGlsRW1wdHlTY2FsYXJQb3NpdGlvbi5lbXB0eVNjYWxhclBvc2l0aW9uKG9mZnNldCwgYmVmb3JlLCBwb3MpLFxuICAgICAgICBpbmRlbnQ6IC0xLFxuICAgICAgICBzb3VyY2U6ICcnXG4gICAgfTtcbiAgICBjb25zdCBub2RlID0gY29tcG9zZVNjYWxhci5jb21wb3NlU2NhbGFyKGN0eCwgdG9rZW4sIHRhZywgb25FcnJvcik7XG4gICAgaWYgKGFuY2hvcikge1xuICAgICAgICBub2RlLmFuY2hvciA9IGFuY2hvci5zb3VyY2Uuc3Vic3RyaW5nKDEpO1xuICAgICAgICBpZiAobm9kZS5hbmNob3IgPT09ICcnKVxuICAgICAgICAgICAgb25FcnJvcihhbmNob3IsICdCQURfQUxJQVMnLCAnQW5jaG9yIGNhbm5vdCBiZSBhbiBlbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgaWYgKHNwYWNlQmVmb3JlKVxuICAgICAgICBub2RlLnNwYWNlQmVmb3JlID0gdHJ1ZTtcbiAgICBpZiAoY29tbWVudCkge1xuICAgICAgICBub2RlLmNvbW1lbnQgPSBjb21tZW50O1xuICAgICAgICBub2RlLnJhbmdlWzJdID0gZW5kO1xuICAgIH1cbiAgICByZXR1cm4gbm9kZTtcbn1cbmZ1bmN0aW9uIGNvbXBvc2VBbGlhcyh7IG9wdGlvbnMgfSwgeyBvZmZzZXQsIHNvdXJjZSwgZW5kIH0sIG9uRXJyb3IpIHtcbiAgICBjb25zdCBhbGlhcyA9IG5ldyBBbGlhcy5BbGlhcyhzb3VyY2Uuc3Vic3RyaW5nKDEpKTtcbiAgICBpZiAoYWxpYXMuc291cmNlID09PSAnJylcbiAgICAgICAgb25FcnJvcihvZmZzZXQsICdCQURfQUxJQVMnLCAnQWxpYXMgY2Fubm90IGJlIGFuIGVtcHR5IHN0cmluZycpO1xuICAgIGlmIChhbGlhcy5zb3VyY2UuZW5kc1dpdGgoJzonKSlcbiAgICAgICAgb25FcnJvcihvZmZzZXQgKyBzb3VyY2UubGVuZ3RoIC0gMSwgJ0JBRF9BTElBUycsICdBbGlhcyBlbmRpbmcgaW4gOiBpcyBhbWJpZ3VvdXMnLCB0cnVlKTtcbiAgICBjb25zdCB2YWx1ZUVuZCA9IG9mZnNldCArIHNvdXJjZS5sZW5ndGg7XG4gICAgY29uc3QgcmUgPSByZXNvbHZlRW5kLnJlc29sdmVFbmQoZW5kLCB2YWx1ZUVuZCwgb3B0aW9ucy5zdHJpY3QsIG9uRXJyb3IpO1xuICAgIGFsaWFzLnJhbmdlID0gW29mZnNldCwgdmFsdWVFbmQsIHJlLm9mZnNldF07XG4gICAgaWYgKHJlLmNvbW1lbnQpXG4gICAgICAgIGFsaWFzLmNvbW1lbnQgPSByZS5jb21tZW50O1xuICAgIHJldHVybiBhbGlhcztcbn1cblxuZXhwb3J0cy5jb21wb3NlRW1wdHlOb2RlID0gY29tcG9zZUVtcHR5Tm9kZTtcbmV4cG9ydHMuY29tcG9zZU5vZGUgPSBjb21wb3NlTm9kZTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBEb2N1bWVudCA9IHJlcXVpcmUoJy4uL2RvYy9Eb2N1bWVudC5qcycpO1xudmFyIGNvbXBvc2VOb2RlID0gcmVxdWlyZSgnLi9jb21wb3NlLW5vZGUuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xudmFyIHJlc29sdmVQcm9wcyA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1wcm9wcy5qcycpO1xuXG5mdW5jdGlvbiBjb21wb3NlRG9jKG9wdGlvbnMsIGRpcmVjdGl2ZXMsIHsgb2Zmc2V0LCBzdGFydCwgdmFsdWUsIGVuZCB9LCBvbkVycm9yKSB7XG4gICAgY29uc3Qgb3B0cyA9IE9iamVjdC5hc3NpZ24oeyBfZGlyZWN0aXZlczogZGlyZWN0aXZlcyB9LCBvcHRpb25zKTtcbiAgICBjb25zdCBkb2MgPSBuZXcgRG9jdW1lbnQuRG9jdW1lbnQodW5kZWZpbmVkLCBvcHRzKTtcbiAgICBjb25zdCBjdHggPSB7XG4gICAgICAgIGF0S2V5OiBmYWxzZSxcbiAgICAgICAgYXRSb290OiB0cnVlLFxuICAgICAgICBkaXJlY3RpdmVzOiBkb2MuZGlyZWN0aXZlcyxcbiAgICAgICAgb3B0aW9uczogZG9jLm9wdGlvbnMsXG4gICAgICAgIHNjaGVtYTogZG9jLnNjaGVtYVxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHN0YXJ0LCB7XG4gICAgICAgIGluZGljYXRvcjogJ2RvYy1zdGFydCcsXG4gICAgICAgIG5leHQ6IHZhbHVlID8/IGVuZD8uWzBdLFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIG9uRXJyb3IsXG4gICAgICAgIHBhcmVudEluZGVudDogMCxcbiAgICAgICAgc3RhcnRPbk5ld2xpbmU6IHRydWVcbiAgICB9KTtcbiAgICBpZiAocHJvcHMuZm91bmQpIHtcbiAgICAgICAgZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQgPSB0cnVlO1xuICAgICAgICBpZiAodmFsdWUgJiZcbiAgICAgICAgICAgICh2YWx1ZS50eXBlID09PSAnYmxvY2stbWFwJyB8fCB2YWx1ZS50eXBlID09PSAnYmxvY2stc2VxJykgJiZcbiAgICAgICAgICAgICFwcm9wcy5oYXNOZXdsaW5lKVxuICAgICAgICAgICAgb25FcnJvcihwcm9wcy5lbmQsICdNSVNTSU5HX0NIQVInLCAnQmxvY2sgY29sbGVjdGlvbiBjYW5ub3Qgc3RhcnQgb24gc2FtZSBsaW5lIHdpdGggZGlyZWN0aXZlcy1lbmQgbWFya2VyJyk7XG4gICAgfVxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgSWYgQ29udGVudHMgaXMgc2V0LCBsZXQncyB0cnVzdCB0aGUgdXNlclxuICAgIGRvYy5jb250ZW50cyA9IHZhbHVlXG4gICAgICAgID8gY29tcG9zZU5vZGUuY29tcG9zZU5vZGUoY3R4LCB2YWx1ZSwgcHJvcHMsIG9uRXJyb3IpXG4gICAgICAgIDogY29tcG9zZU5vZGUuY29tcG9zZUVtcHR5Tm9kZShjdHgsIHByb3BzLmVuZCwgc3RhcnQsIG51bGwsIHByb3BzLCBvbkVycm9yKTtcbiAgICBjb25zdCBjb250ZW50RW5kID0gZG9jLmNvbnRlbnRzLnJhbmdlWzJdO1xuICAgIGNvbnN0IHJlID0gcmVzb2x2ZUVuZC5yZXNvbHZlRW5kKGVuZCwgY29udGVudEVuZCwgZmFsc2UsIG9uRXJyb3IpO1xuICAgIGlmIChyZS5jb21tZW50KVxuICAgICAgICBkb2MuY29tbWVudCA9IHJlLmNvbW1lbnQ7XG4gICAgZG9jLnJhbmdlID0gW29mZnNldCwgY29udGVudEVuZCwgcmUub2Zmc2V0XTtcbiAgICByZXR1cm4gZG9jO1xufVxuXG5leHBvcnRzLmNvbXBvc2VEb2MgPSBjb21wb3NlRG9jO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIG5vZGVfcHJvY2VzcyA9IHJlcXVpcmUoJ3Byb2Nlc3MnKTtcbnZhciBkaXJlY3RpdmVzID0gcmVxdWlyZSgnLi4vZG9jL2RpcmVjdGl2ZXMuanMnKTtcbnZhciBEb2N1bWVudCA9IHJlcXVpcmUoJy4uL2RvYy9Eb2N1bWVudC5qcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4uL2Vycm9ycy5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBjb21wb3NlRG9jID0gcmVxdWlyZSgnLi9jb21wb3NlLWRvYy5qcycpO1xudmFyIHJlc29sdmVFbmQgPSByZXF1aXJlKCcuL3Jlc29sdmUtZW5kLmpzJyk7XG5cbmZ1bmN0aW9uIGdldEVycm9yUG9zKHNyYykge1xuICAgIGlmICh0eXBlb2Ygc3JjID09PSAnbnVtYmVyJylcbiAgICAgICAgcmV0dXJuIFtzcmMsIHNyYyArIDFdO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHNyYykpXG4gICAgICAgIHJldHVybiBzcmMubGVuZ3RoID09PSAyID8gc3JjIDogW3NyY1swXSwgc3JjWzFdXTtcbiAgICBjb25zdCB7IG9mZnNldCwgc291cmNlIH0gPSBzcmM7XG4gICAgcmV0dXJuIFtvZmZzZXQsIG9mZnNldCArICh0eXBlb2Ygc291cmNlID09PSAnc3RyaW5nJyA/IHNvdXJjZS5sZW5ndGggOiAxKV07XG59XG5mdW5jdGlvbiBwYXJzZVByZWx1ZGUocHJlbHVkZSkge1xuICAgIGxldCBjb21tZW50ID0gJyc7XG4gICAgbGV0IGF0Q29tbWVudCA9IGZhbHNlO1xuICAgIGxldCBhZnRlckVtcHR5TGluZSA9IGZhbHNlO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJlbHVkZS5sZW5ndGg7ICsraSkge1xuICAgICAgICBjb25zdCBzb3VyY2UgPSBwcmVsdWRlW2ldO1xuICAgICAgICBzd2l0Y2ggKHNvdXJjZVswXSkge1xuICAgICAgICAgICAgY2FzZSAnIyc6XG4gICAgICAgICAgICAgICAgY29tbWVudCArPVxuICAgICAgICAgICAgICAgICAgICAoY29tbWVudCA9PT0gJycgPyAnJyA6IGFmdGVyRW1wdHlMaW5lID8gJ1xcblxcbicgOiAnXFxuJykgK1xuICAgICAgICAgICAgICAgICAgICAgICAgKHNvdXJjZS5zdWJzdHJpbmcoMSkgfHwgJyAnKTtcbiAgICAgICAgICAgICAgICBhdENvbW1lbnQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGFmdGVyRW1wdHlMaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICclJzpcbiAgICAgICAgICAgICAgICBpZiAocHJlbHVkZVtpICsgMV0/LlswXSAhPT0gJyMnKVxuICAgICAgICAgICAgICAgICAgICBpICs9IDE7XG4gICAgICAgICAgICAgICAgYXRDb21tZW50ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIC8vIFRoaXMgbWF5IGJlIHdyb25nIGFmdGVyIGRvYy1lbmQsIGJ1dCBpbiB0aGF0IGNhc2UgaXQgZG9lc24ndCBtYXR0ZXJcbiAgICAgICAgICAgICAgICBpZiAoIWF0Q29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgYWZ0ZXJFbXB0eUxpbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGF0Q29tbWVudCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IGNvbW1lbnQsIGFmdGVyRW1wdHlMaW5lIH07XG59XG4vKipcbiAqIENvbXBvc2UgYSBzdHJlYW0gb2YgQ1NUIG5vZGVzIGludG8gYSBzdHJlYW0gb2YgWUFNTCBEb2N1bWVudHMuXG4gKlxuICogYGBgdHNcbiAqIGltcG9ydCB7IENvbXBvc2VyLCBQYXJzZXIgfSBmcm9tICd5YW1sJ1xuICpcbiAqIGNvbnN0IHNyYzogc3RyaW5nID0gLi4uXG4gKiBjb25zdCB0b2tlbnMgPSBuZXcgUGFyc2VyKCkucGFyc2Uoc3JjKVxuICogY29uc3QgZG9jcyA9IG5ldyBDb21wb3NlcigpLmNvbXBvc2UodG9rZW5zKVxuICogYGBgXG4gKi9cbmNsYXNzIENvbXBvc2VyIHtcbiAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHtcbiAgICAgICAgdGhpcy5kb2MgPSBudWxsO1xuICAgICAgICB0aGlzLmF0RGlyZWN0aXZlcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnByZWx1ZGUgPSBbXTtcbiAgICAgICAgdGhpcy5lcnJvcnMgPSBbXTtcbiAgICAgICAgdGhpcy53YXJuaW5ncyA9IFtdO1xuICAgICAgICB0aGlzLm9uRXJyb3IgPSAoc291cmNlLCBjb2RlLCBtZXNzYWdlLCB3YXJuaW5nKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwb3MgPSBnZXRFcnJvclBvcyhzb3VyY2UpO1xuICAgICAgICAgICAgaWYgKHdhcm5pbmcpXG4gICAgICAgICAgICAgICAgdGhpcy53YXJuaW5ncy5wdXNoKG5ldyBlcnJvcnMuWUFNTFdhcm5pbmcocG9zLCBjb2RlLCBtZXNzYWdlKSk7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhpcy5lcnJvcnMucHVzaChuZXcgZXJyb3JzLllBTUxQYXJzZUVycm9yKHBvcywgY29kZSwgbWVzc2FnZSkpO1xuICAgICAgICB9O1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1udWxsaXNoLWNvYWxlc2NpbmdcbiAgICAgICAgdGhpcy5kaXJlY3RpdmVzID0gbmV3IGRpcmVjdGl2ZXMuRGlyZWN0aXZlcyh7IHZlcnNpb246IG9wdGlvbnMudmVyc2lvbiB8fCAnMS4yJyB9KTtcbiAgICAgICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICB9XG4gICAgZGVjb3JhdGUoZG9jLCBhZnRlckRvYykge1xuICAgICAgICBjb25zdCB7IGNvbW1lbnQsIGFmdGVyRW1wdHlMaW5lIH0gPSBwYXJzZVByZWx1ZGUodGhpcy5wcmVsdWRlKTtcbiAgICAgICAgLy9jb25zb2xlLmxvZyh7IGRjOiBkb2MuY29tbWVudCwgcHJlbHVkZSwgY29tbWVudCB9KVxuICAgICAgICBpZiAoY29tbWVudCkge1xuICAgICAgICAgICAgY29uc3QgZGMgPSBkb2MuY29udGVudHM7XG4gICAgICAgICAgICBpZiAoYWZ0ZXJEb2MpIHtcbiAgICAgICAgICAgICAgICBkb2MuY29tbWVudCA9IGRvYy5jb21tZW50ID8gYCR7ZG9jLmNvbW1lbnR9XFxuJHtjb21tZW50fWAgOiBjb21tZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYWZ0ZXJFbXB0eUxpbmUgfHwgZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQgfHwgIWRjKSB7XG4gICAgICAgICAgICAgICAgZG9jLmNvbW1lbnRCZWZvcmUgPSBjb21tZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKGRjKSAmJiAhZGMuZmxvdyAmJiBkYy5pdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgbGV0IGl0ID0gZGMuaXRlbXNbMF07XG4gICAgICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzUGFpcihpdCkpXG4gICAgICAgICAgICAgICAgICAgIGl0ID0gaXQua2V5O1xuICAgICAgICAgICAgICAgIGNvbnN0IGNiID0gaXQuY29tbWVudEJlZm9yZTtcbiAgICAgICAgICAgICAgICBpdC5jb21tZW50QmVmb3JlID0gY2IgPyBgJHtjb21tZW50fVxcbiR7Y2J9YCA6IGNvbW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjYiA9IGRjLmNvbW1lbnRCZWZvcmU7XG4gICAgICAgICAgICAgICAgZGMuY29tbWVudEJlZm9yZSA9IGNiID8gYCR7Y29tbWVudH1cXG4ke2NifWAgOiBjb21tZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChhZnRlckRvYykge1xuICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZG9jLmVycm9ycywgdGhpcy5lcnJvcnMpO1xuICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZG9jLndhcm5pbmdzLCB0aGlzLndhcm5pbmdzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRvYy5lcnJvcnMgPSB0aGlzLmVycm9ycztcbiAgICAgICAgICAgIGRvYy53YXJuaW5ncyA9IHRoaXMud2FybmluZ3M7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wcmVsdWRlID0gW107XG4gICAgICAgIHRoaXMuZXJyb3JzID0gW107XG4gICAgICAgIHRoaXMud2FybmluZ3MgPSBbXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ3VycmVudCBzdHJlYW0gc3RhdHVzIGluZm9ybWF0aW9uLlxuICAgICAqXG4gICAgICogTW9zdGx5IHVzZWZ1bCBhdCB0aGUgZW5kIG9mIGlucHV0IGZvciBhbiBlbXB0eSBzdHJlYW0uXG4gICAgICovXG4gICAgc3RyZWFtSW5mbygpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbW1lbnQ6IHBhcnNlUHJlbHVkZSh0aGlzLnByZWx1ZGUpLmNvbW1lbnQsXG4gICAgICAgICAgICBkaXJlY3RpdmVzOiB0aGlzLmRpcmVjdGl2ZXMsXG4gICAgICAgICAgICBlcnJvcnM6IHRoaXMuZXJyb3JzLFxuICAgICAgICAgICAgd2FybmluZ3M6IHRoaXMud2FybmluZ3NcbiAgICAgICAgfTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ29tcG9zZSB0b2tlbnMgaW50byBkb2N1bWVudHMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZm9yY2VEb2MgLSBJZiB0aGUgc3RyZWFtIGNvbnRhaW5zIG5vIGRvY3VtZW50LCBzdGlsbCBlbWl0IGEgZmluYWwgZG9jdW1lbnQgaW5jbHVkaW5nIGFueSBjb21tZW50cyBhbmQgZGlyZWN0aXZlcyB0aGF0IHdvdWxkIGJlIGFwcGxpZWQgdG8gYSBzdWJzZXF1ZW50IGRvY3VtZW50LlxuICAgICAqIEBwYXJhbSBlbmRPZmZzZXQgLSBTaG91bGQgYmUgc2V0IGlmIGBmb3JjZURvY2AgaXMgYWxzbyBzZXQsIHRvIHNldCB0aGUgZG9jdW1lbnQgcmFuZ2UgZW5kIGFuZCB0byBpbmRpY2F0ZSBlcnJvcnMgY29ycmVjdGx5LlxuICAgICAqL1xuICAgICpjb21wb3NlKHRva2VucywgZm9yY2VEb2MgPSBmYWxzZSwgZW5kT2Zmc2V0ID0gLTEpIHtcbiAgICAgICAgZm9yIChjb25zdCB0b2tlbiBvZiB0b2tlbnMpXG4gICAgICAgICAgICB5aWVsZCogdGhpcy5uZXh0KHRva2VuKTtcbiAgICAgICAgeWllbGQqIHRoaXMuZW5kKGZvcmNlRG9jLCBlbmRPZmZzZXQpO1xuICAgIH1cbiAgICAvKiogQWR2YW5jZSB0aGUgY29tcG9zZXIgYnkgb25lIENTVCB0b2tlbi4gKi9cbiAgICAqbmV4dCh0b2tlbikge1xuICAgICAgICBpZiAobm9kZV9wcm9jZXNzLmVudi5MT0dfU1RSRUFNKVxuICAgICAgICAgICAgY29uc29sZS5kaXIodG9rZW4sIHsgZGVwdGg6IG51bGwgfSk7XG4gICAgICAgIHN3aXRjaCAodG9rZW4udHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnZGlyZWN0aXZlJzpcbiAgICAgICAgICAgICAgICB0aGlzLmRpcmVjdGl2ZXMuYWRkKHRva2VuLnNvdXJjZSwgKG9mZnNldCwgbWVzc2FnZSwgd2FybmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwb3MgPSBnZXRFcnJvclBvcyh0b2tlbik7XG4gICAgICAgICAgICAgICAgICAgIHBvc1swXSArPSBvZmZzZXQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcihwb3MsICdCQURfRElSRUNUSVZFJywgbWVzc2FnZSwgd2FybmluZyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5wcmVsdWRlLnB1c2godG9rZW4uc291cmNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmF0RGlyZWN0aXZlcyA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdkb2N1bWVudCc6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkb2MgPSBjb21wb3NlRG9jLmNvbXBvc2VEb2ModGhpcy5vcHRpb25zLCB0aGlzLmRpcmVjdGl2ZXMsIHRva2VuLCB0aGlzLm9uRXJyb3IpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmF0RGlyZWN0aXZlcyAmJiAhZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcih0b2tlbiwgJ01JU1NJTkdfQ0hBUicsICdNaXNzaW5nIGRpcmVjdGl2ZXMtZW5kL2RvYy1zdGFydCBpbmRpY2F0b3IgbGluZScpO1xuICAgICAgICAgICAgICAgIHRoaXMuZGVjb3JhdGUoZG9jLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZG9jKVxuICAgICAgICAgICAgICAgICAgICB5aWVsZCB0aGlzLmRvYztcbiAgICAgICAgICAgICAgICB0aGlzLmRvYyA9IGRvYztcbiAgICAgICAgICAgICAgICB0aGlzLmF0RGlyZWN0aXZlcyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnYnl0ZS1vcmRlci1tYXJrJzpcbiAgICAgICAgICAgIGNhc2UgJ3NwYWNlJzpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5wcmVsdWRlLnB1c2godG9rZW4uc291cmNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Vycm9yJzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1zZyA9IHRva2VuLnNvdXJjZVxuICAgICAgICAgICAgICAgICAgICA/IGAke3Rva2VuLm1lc3NhZ2V9OiAke0pTT04uc3RyaW5naWZ5KHRva2VuLnNvdXJjZSl9YFxuICAgICAgICAgICAgICAgICAgICA6IHRva2VuLm1lc3NhZ2U7XG4gICAgICAgICAgICAgICAgY29uc3QgZXJyb3IgPSBuZXcgZXJyb3JzLllBTUxQYXJzZUVycm9yKGdldEVycm9yUG9zKHRva2VuKSwgJ1VORVhQRUNURURfVE9LRU4nLCBtc2cpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmF0RGlyZWN0aXZlcyB8fCAhdGhpcy5kb2MpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JzLnB1c2goZXJyb3IpO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kb2MuZXJyb3JzLnB1c2goZXJyb3IpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnZG9jLWVuZCc6IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZG9jKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1zZyA9ICdVbmV4cGVjdGVkIGRvYy1lbmQgd2l0aG91dCBwcmVjZWRpbmcgZG9jdW1lbnQnO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9ycy5wdXNoKG5ldyBlcnJvcnMuWUFNTFBhcnNlRXJyb3IoZ2V0RXJyb3JQb3ModG9rZW4pLCAnVU5FWFBFQ1RFRF9UT0tFTicsIG1zZykpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5kb2MuZGlyZWN0aXZlcy5kb2NFbmQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc29sdmVFbmQucmVzb2x2ZUVuZCh0b2tlbi5lbmQsIHRva2VuLm9mZnNldCArIHRva2VuLnNvdXJjZS5sZW5ndGgsIHRoaXMuZG9jLm9wdGlvbnMuc3RyaWN0LCB0aGlzLm9uRXJyb3IpO1xuICAgICAgICAgICAgICAgIHRoaXMuZGVjb3JhdGUodGhpcy5kb2MsIHRydWUpO1xuICAgICAgICAgICAgICAgIGlmIChlbmQuY29tbWVudCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkYyA9IHRoaXMuZG9jLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZG9jLmNvbW1lbnQgPSBkYyA/IGAke2RjfVxcbiR7ZW5kLmNvbW1lbnR9YCA6IGVuZC5jb21tZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmRvYy5yYW5nZVsyXSA9IGVuZC5vZmZzZXQ7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JzLnB1c2gobmV3IGVycm9ycy5ZQU1MUGFyc2VFcnJvcihnZXRFcnJvclBvcyh0b2tlbiksICdVTkVYUEVDVEVEX1RPS0VOJywgYFVuc3VwcG9ydGVkIHRva2VuICR7dG9rZW4udHlwZX1gKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2FsbCBhdCBlbmQgb2YgaW5wdXQgdG8geWllbGQgYW55IHJlbWFpbmluZyBkb2N1bWVudC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBmb3JjZURvYyAtIElmIHRoZSBzdHJlYW0gY29udGFpbnMgbm8gZG9jdW1lbnQsIHN0aWxsIGVtaXQgYSBmaW5hbCBkb2N1bWVudCBpbmNsdWRpbmcgYW55IGNvbW1lbnRzIGFuZCBkaXJlY3RpdmVzIHRoYXQgd291bGQgYmUgYXBwbGllZCB0byBhIHN1YnNlcXVlbnQgZG9jdW1lbnQuXG4gICAgICogQHBhcmFtIGVuZE9mZnNldCAtIFNob3VsZCBiZSBzZXQgaWYgYGZvcmNlRG9jYCBpcyBhbHNvIHNldCwgdG8gc2V0IHRoZSBkb2N1bWVudCByYW5nZSBlbmQgYW5kIHRvIGluZGljYXRlIGVycm9ycyBjb3JyZWN0bHkuXG4gICAgICovXG4gICAgKmVuZChmb3JjZURvYyA9IGZhbHNlLCBlbmRPZmZzZXQgPSAtMSkge1xuICAgICAgICBpZiAodGhpcy5kb2MpIHtcbiAgICAgICAgICAgIHRoaXMuZGVjb3JhdGUodGhpcy5kb2MsIHRydWUpO1xuICAgICAgICAgICAgeWllbGQgdGhpcy5kb2M7XG4gICAgICAgICAgICB0aGlzLmRvYyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZm9yY2VEb2MpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdHMgPSBPYmplY3QuYXNzaWduKHsgX2RpcmVjdGl2ZXM6IHRoaXMuZGlyZWN0aXZlcyB9LCB0aGlzLm9wdGlvbnMpO1xuICAgICAgICAgICAgY29uc3QgZG9jID0gbmV3IERvY3VtZW50LkRvY3VtZW50KHVuZGVmaW5lZCwgb3B0cyk7XG4gICAgICAgICAgICBpZiAodGhpcy5hdERpcmVjdGl2ZXMpXG4gICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yKGVuZE9mZnNldCwgJ01JU1NJTkdfQ0hBUicsICdNaXNzaW5nIGRpcmVjdGl2ZXMtZW5kIGluZGljYXRvciBsaW5lJyk7XG4gICAgICAgICAgICBkb2MucmFuZ2UgPSBbMCwgZW5kT2Zmc2V0LCBlbmRPZmZzZXRdO1xuICAgICAgICAgICAgdGhpcy5kZWNvcmF0ZShkb2MsIGZhbHNlKTtcbiAgICAgICAgICAgIHlpZWxkIGRvYztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0cy5Db21wb3NlciA9IENvbXBvc2VyO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHJlc29sdmVCbG9ja1NjYWxhciA9IHJlcXVpcmUoJy4uL2NvbXBvc2UvcmVzb2x2ZS1ibG9jay1zY2FsYXIuanMnKTtcbnZhciByZXNvbHZlRmxvd1NjYWxhciA9IHJlcXVpcmUoJy4uL2NvbXBvc2UvcmVzb2x2ZS1mbG93LXNjYWxhci5qcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4uL2Vycm9ycy5qcycpO1xudmFyIHN0cmluZ2lmeVN0cmluZyA9IHJlcXVpcmUoJy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlTdHJpbmcuanMnKTtcblxuZnVuY3Rpb24gcmVzb2x2ZUFzU2NhbGFyKHRva2VuLCBzdHJpY3QgPSB0cnVlLCBvbkVycm9yKSB7XG4gICAgaWYgKHRva2VuKSB7XG4gICAgICAgIGNvbnN0IF9vbkVycm9yID0gKHBvcywgY29kZSwgbWVzc2FnZSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdHlwZW9mIHBvcyA9PT0gJ251bWJlcicgPyBwb3MgOiBBcnJheS5pc0FycmF5KHBvcykgPyBwb3NbMF0gOiBwb3Mub2Zmc2V0O1xuICAgICAgICAgICAgaWYgKG9uRXJyb3IpXG4gICAgICAgICAgICAgICAgb25FcnJvcihvZmZzZXQsIGNvZGUsIG1lc3NhZ2UpO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBlcnJvcnMuWUFNTFBhcnNlRXJyb3IoW29mZnNldCwgb2Zmc2V0ICsgMV0sIGNvZGUsIG1lc3NhZ2UpO1xuICAgICAgICB9O1xuICAgICAgICBzd2l0Y2ggKHRva2VuLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdzaW5nbGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc29sdmVGbG93U2NhbGFyLnJlc29sdmVGbG93U2NhbGFyKHRva2VuLCBzdHJpY3QsIF9vbkVycm9yKTtcbiAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc29sdmVCbG9ja1NjYWxhci5yZXNvbHZlQmxvY2tTY2FsYXIoeyBvcHRpb25zOiB7IHN0cmljdCB9IH0sIHRva2VuLCBfb25FcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59XG4vKipcbiAqIENyZWF0ZSBhIG5ldyBzY2FsYXIgdG9rZW4gd2l0aCBgdmFsdWVgXG4gKlxuICogVmFsdWVzIHRoYXQgcmVwcmVzZW50IGFuIGFjdHVhbCBzdHJpbmcgYnV0IG1heSBiZSBwYXJzZWQgYXMgYSBkaWZmZXJlbnQgdHlwZSBzaG91bGQgdXNlIGEgYHR5cGVgIG90aGVyIHRoYW4gYCdQTEFJTidgLFxuICogYXMgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBzdXBwb3J0IGFueSBzY2hlbWEgb3BlcmF0aW9ucyBhbmQgd29uJ3QgY2hlY2sgZm9yIHN1Y2ggY29uZmxpY3RzLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB2YWx1ZSwgd2hpY2ggd2lsbCBoYXZlIGl0cyBjb250ZW50IHByb3Blcmx5IGluZGVudGVkLlxuICogQHBhcmFtIGNvbnRleHQuZW5kIENvbW1lbnRzIGFuZCB3aGl0ZXNwYWNlIGFmdGVyIHRoZSBlbmQgb2YgdGhlIHZhbHVlLCBvciBhZnRlciB0aGUgYmxvY2sgc2NhbGFyIGhlYWRlci4gSWYgdW5kZWZpbmVkLCBhIG5ld2xpbmUgd2lsbCBiZSBhZGRlZC5cbiAqIEBwYXJhbSBjb250ZXh0LmltcGxpY2l0S2V5IEJlaW5nIHdpdGhpbiBhbiBpbXBsaWNpdCBrZXkgbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0LmluZGVudCBUaGUgaW5kZW50IGxldmVsIG9mIHRoZSB0b2tlbi5cbiAqIEBwYXJhbSBjb250ZXh0LmluRmxvdyBJcyB0aGlzIHNjYWxhciB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24/IFRoaXMgbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0Lm9mZnNldCBUaGUgb2Zmc2V0IHBvc2l0aW9uIG9mIHRoZSB0b2tlbi5cbiAqIEBwYXJhbSBjb250ZXh0LnR5cGUgVGhlIHByZWZlcnJlZCB0eXBlIG9mIHRoZSBzY2FsYXIgdG9rZW4uIElmIHVuZGVmaW5lZCwgdGhlIHByZXZpb3VzIHR5cGUgb2YgdGhlIGB0b2tlbmAgd2lsbCBiZSB1c2VkLCBkZWZhdWx0aW5nIHRvIGAnUExBSU4nYC5cbiAqL1xuZnVuY3Rpb24gY3JlYXRlU2NhbGFyVG9rZW4odmFsdWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCB7IGltcGxpY2l0S2V5ID0gZmFsc2UsIGluZGVudCwgaW5GbG93ID0gZmFsc2UsIG9mZnNldCA9IC0xLCB0eXBlID0gJ1BMQUlOJyB9ID0gY29udGV4dDtcbiAgICBjb25zdCBzb3VyY2UgPSBzdHJpbmdpZnlTdHJpbmcuc3RyaW5naWZ5U3RyaW5nKHsgdHlwZSwgdmFsdWUgfSwge1xuICAgICAgICBpbXBsaWNpdEtleSxcbiAgICAgICAgaW5kZW50OiBpbmRlbnQgPiAwID8gJyAnLnJlcGVhdChpbmRlbnQpIDogJycsXG4gICAgICAgIGluRmxvdyxcbiAgICAgICAgb3B0aW9uczogeyBibG9ja1F1b3RlOiB0cnVlLCBsaW5lV2lkdGg6IC0xIH1cbiAgICB9KTtcbiAgICBjb25zdCBlbmQgPSBjb250ZXh0LmVuZCA/PyBbXG4gICAgICAgIHsgdHlwZTogJ25ld2xpbmUnLCBvZmZzZXQ6IC0xLCBpbmRlbnQsIHNvdXJjZTogJ1xcbicgfVxuICAgIF07XG4gICAgc3dpdGNoIChzb3VyY2VbMF0pIHtcbiAgICAgICAgY2FzZSAnfCc6XG4gICAgICAgIGNhc2UgJz4nOiB7XG4gICAgICAgICAgICBjb25zdCBoZSA9IHNvdXJjZS5pbmRleE9mKCdcXG4nKTtcbiAgICAgICAgICAgIGNvbnN0IGhlYWQgPSBzb3VyY2Uuc3Vic3RyaW5nKDAsIGhlKTtcbiAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBzb3VyY2Uuc3Vic3RyaW5nKGhlICsgMSkgKyAnXFxuJztcbiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gW1xuICAgICAgICAgICAgICAgIHsgdHlwZTogJ2Jsb2NrLXNjYWxhci1oZWFkZXInLCBvZmZzZXQsIGluZGVudCwgc291cmNlOiBoZWFkIH1cbiAgICAgICAgICAgIF07XG4gICAgICAgICAgICBpZiAoIWFkZEVuZHRvQmxvY2tQcm9wcyhwcm9wcywgZW5kKSlcbiAgICAgICAgICAgICAgICBwcm9wcy5wdXNoKHsgdHlwZTogJ25ld2xpbmUnLCBvZmZzZXQ6IC0xLCBpbmRlbnQsIHNvdXJjZTogJ1xcbicgfSk7XG4gICAgICAgICAgICByZXR1cm4geyB0eXBlOiAnYmxvY2stc2NhbGFyJywgb2Zmc2V0LCBpbmRlbnQsIHByb3BzLCBzb3VyY2U6IGJvZHkgfTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdcIic6XG4gICAgICAgICAgICByZXR1cm4geyB0eXBlOiAnZG91YmxlLXF1b3RlZC1zY2FsYXInLCBvZmZzZXQsIGluZGVudCwgc291cmNlLCBlbmQgfTtcbiAgICAgICAgY2FzZSBcIidcIjpcbiAgICAgICAgICAgIHJldHVybiB7IHR5cGU6ICdzaW5nbGUtcXVvdGVkLXNjYWxhcicsIG9mZnNldCwgaW5kZW50LCBzb3VyY2UsIGVuZCB9O1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHsgdHlwZTogJ3NjYWxhcicsIG9mZnNldCwgaW5kZW50LCBzb3VyY2UsIGVuZCB9O1xuICAgIH1cbn1cbi8qKlxuICogU2V0IHRoZSB2YWx1ZSBvZiBgdG9rZW5gIHRvIHRoZSBnaXZlbiBzdHJpbmcgYHZhbHVlYCwgb3ZlcndyaXRpbmcgYW55IHByZXZpb3VzIGNvbnRlbnRzIGFuZCB0eXBlIHRoYXQgaXQgbWF5IGhhdmUuXG4gKlxuICogQmVzdCBlZmZvcnRzIGFyZSBtYWRlIHRvIHJldGFpbiBhbnkgY29tbWVudHMgcHJldmlvdXNseSBhc3NvY2lhdGVkIHdpdGggdGhlIGB0b2tlbmAsXG4gKiB0aG91Z2ggYWxsIGNvbnRlbnRzIHdpdGhpbiBhIGNvbGxlY3Rpb24ncyBgaXRlbXNgIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG4gKlxuICogVmFsdWVzIHRoYXQgcmVwcmVzZW50IGFuIGFjdHVhbCBzdHJpbmcgYnV0IG1heSBiZSBwYXJzZWQgYXMgYSBkaWZmZXJlbnQgdHlwZSBzaG91bGQgdXNlIGEgYHR5cGVgIG90aGVyIHRoYW4gYCdQTEFJTidgLFxuICogYXMgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBzdXBwb3J0IGFueSBzY2hlbWEgb3BlcmF0aW9ucyBhbmQgd29uJ3QgY2hlY2sgZm9yIHN1Y2ggY29uZmxpY3RzLlxuICpcbiAqIEBwYXJhbSB0b2tlbiBBbnkgdG9rZW4uIElmIGl0IGRvZXMgbm90IGluY2x1ZGUgYW4gYGluZGVudGAgdmFsdWUsIHRoZSB2YWx1ZSB3aWxsIGJlIHN0cmluZ2lmaWVkIGFzIGlmIGl0IHdlcmUgYW4gaW1wbGljaXQga2V5LlxuICogQHBhcmFtIHZhbHVlIFRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHZhbHVlLCB3aGljaCB3aWxsIGhhdmUgaXRzIGNvbnRlbnQgcHJvcGVybHkgaW5kZW50ZWQuXG4gKiBAcGFyYW0gY29udGV4dC5hZnRlcktleSBJbiBtb3N0IGNhc2VzLCB2YWx1ZXMgYWZ0ZXIgYSBrZXkgc2hvdWxkIGhhdmUgYW4gYWRkaXRpb25hbCBsZXZlbCBvZiBpbmRlbnRhdGlvbi5cbiAqIEBwYXJhbSBjb250ZXh0LmltcGxpY2l0S2V5IEJlaW5nIHdpdGhpbiBhbiBpbXBsaWNpdCBrZXkgbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0LmluRmxvdyBCZWluZyB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24gbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0LnR5cGUgVGhlIHByZWZlcnJlZCB0eXBlIG9mIHRoZSBzY2FsYXIgdG9rZW4uIElmIHVuZGVmaW5lZCwgdGhlIHByZXZpb3VzIHR5cGUgb2YgdGhlIGB0b2tlbmAgd2lsbCBiZSB1c2VkLCBkZWZhdWx0aW5nIHRvIGAnUExBSU4nYC5cbiAqL1xuZnVuY3Rpb24gc2V0U2NhbGFyVmFsdWUodG9rZW4sIHZhbHVlLCBjb250ZXh0ID0ge30pIHtcbiAgICBsZXQgeyBhZnRlcktleSA9IGZhbHNlLCBpbXBsaWNpdEtleSA9IGZhbHNlLCBpbkZsb3cgPSBmYWxzZSwgdHlwZSB9ID0gY29udGV4dDtcbiAgICBsZXQgaW5kZW50ID0gJ2luZGVudCcgaW4gdG9rZW4gPyB0b2tlbi5pbmRlbnQgOiBudWxsO1xuICAgIGlmIChhZnRlcktleSAmJiB0eXBlb2YgaW5kZW50ID09PSAnbnVtYmVyJylcbiAgICAgICAgaW5kZW50ICs9IDI7XG4gICAgaWYgKCF0eXBlKVxuICAgICAgICBzd2l0Y2ggKHRva2VuLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICB0eXBlID0gJ1FVT1RFX1NJTkdMRSc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgdHlwZSA9ICdRVU9URV9ET1VCTEUnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnYmxvY2stc2NhbGFyJzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlYWRlciA9IHRva2VuLnByb3BzWzBdO1xuICAgICAgICAgICAgICAgIGlmIChoZWFkZXIudHlwZSAhPT0gJ2Jsb2NrLXNjYWxhci1oZWFkZXInKVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYmxvY2sgc2NhbGFyIGhlYWRlcicpO1xuICAgICAgICAgICAgICAgIHR5cGUgPSBoZWFkZXIuc291cmNlWzBdID09PSAnPicgPyAnQkxPQ0tfRk9MREVEJyA6ICdCTE9DS19MSVRFUkFMJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdHlwZSA9ICdQTEFJTic7XG4gICAgICAgIH1cbiAgICBjb25zdCBzb3VyY2UgPSBzdHJpbmdpZnlTdHJpbmcuc3RyaW5naWZ5U3RyaW5nKHsgdHlwZSwgdmFsdWUgfSwge1xuICAgICAgICBpbXBsaWNpdEtleTogaW1wbGljaXRLZXkgfHwgaW5kZW50ID09PSBudWxsLFxuICAgICAgICBpbmRlbnQ6IGluZGVudCAhPT0gbnVsbCAmJiBpbmRlbnQgPiAwID8gJyAnLnJlcGVhdChpbmRlbnQpIDogJycsXG4gICAgICAgIGluRmxvdyxcbiAgICAgICAgb3B0aW9uczogeyBibG9ja1F1b3RlOiB0cnVlLCBsaW5lV2lkdGg6IC0xIH1cbiAgICB9KTtcbiAgICBzd2l0Y2ggKHNvdXJjZVswXSkge1xuICAgICAgICBjYXNlICd8JzpcbiAgICAgICAgY2FzZSAnPic6XG4gICAgICAgICAgICBzZXRCbG9ja1NjYWxhclZhbHVlKHRva2VuLCBzb3VyY2UpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ1wiJzpcbiAgICAgICAgICAgIHNldEZsb3dTY2FsYXJWYWx1ZSh0b2tlbiwgc291cmNlLCAnZG91YmxlLXF1b3RlZC1zY2FsYXInKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiJ1wiOlxuICAgICAgICAgICAgc2V0Rmxvd1NjYWxhclZhbHVlKHRva2VuLCBzb3VyY2UsICdzaW5nbGUtcXVvdGVkLXNjYWxhcicpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBzZXRGbG93U2NhbGFyVmFsdWUodG9rZW4sIHNvdXJjZSwgJ3NjYWxhcicpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHNldEJsb2NrU2NhbGFyVmFsdWUodG9rZW4sIHNvdXJjZSkge1xuICAgIGNvbnN0IGhlID0gc291cmNlLmluZGV4T2YoJ1xcbicpO1xuICAgIGNvbnN0IGhlYWQgPSBzb3VyY2Uuc3Vic3RyaW5nKDAsIGhlKTtcbiAgICBjb25zdCBib2R5ID0gc291cmNlLnN1YnN0cmluZyhoZSArIDEpICsgJ1xcbic7XG4gICAgaWYgKHRva2VuLnR5cGUgPT09ICdibG9jay1zY2FsYXInKSB7XG4gICAgICAgIGNvbnN0IGhlYWRlciA9IHRva2VuLnByb3BzWzBdO1xuICAgICAgICBpZiAoaGVhZGVyLnR5cGUgIT09ICdibG9jay1zY2FsYXItaGVhZGVyJylcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBibG9jayBzY2FsYXIgaGVhZGVyJyk7XG4gICAgICAgIGhlYWRlci5zb3VyY2UgPSBoZWFkO1xuICAgICAgICB0b2tlbi5zb3VyY2UgPSBib2R5O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgeyBvZmZzZXQgfSA9IHRva2VuO1xuICAgICAgICBjb25zdCBpbmRlbnQgPSAnaW5kZW50JyBpbiB0b2tlbiA/IHRva2VuLmluZGVudCA6IC0xO1xuICAgICAgICBjb25zdCBwcm9wcyA9IFtcbiAgICAgICAgICAgIHsgdHlwZTogJ2Jsb2NrLXNjYWxhci1oZWFkZXInLCBvZmZzZXQsIGluZGVudCwgc291cmNlOiBoZWFkIH1cbiAgICAgICAgXTtcbiAgICAgICAgaWYgKCFhZGRFbmR0b0Jsb2NrUHJvcHMocHJvcHMsICdlbmQnIGluIHRva2VuID8gdG9rZW4uZW5kIDogdW5kZWZpbmVkKSlcbiAgICAgICAgICAgIHByb3BzLnB1c2goeyB0eXBlOiAnbmV3bGluZScsIG9mZnNldDogLTEsIGluZGVudCwgc291cmNlOiAnXFxuJyB9KTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXModG9rZW4pKVxuICAgICAgICAgICAgaWYgKGtleSAhPT0gJ3R5cGUnICYmIGtleSAhPT0gJ29mZnNldCcpXG4gICAgICAgICAgICAgICAgZGVsZXRlIHRva2VuW2tleV07XG4gICAgICAgIE9iamVjdC5hc3NpZ24odG9rZW4sIHsgdHlwZTogJ2Jsb2NrLXNjYWxhcicsIGluZGVudCwgcHJvcHMsIHNvdXJjZTogYm9keSB9KTtcbiAgICB9XG59XG4vKiogQHJldHVybnMgYHRydWVgIGlmIGxhc3QgdG9rZW4gaXMgYSBuZXdsaW5lICovXG5mdW5jdGlvbiBhZGRFbmR0b0Jsb2NrUHJvcHMocHJvcHMsIGVuZCkge1xuICAgIGlmIChlbmQpXG4gICAgICAgIGZvciAoY29uc3Qgc3Qgb2YgZW5kKVxuICAgICAgICAgICAgc3dpdGNoIChzdC50eXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgICAgICAgICBwcm9wcy5wdXNoKHN0KTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgICAgIHByb3BzLnB1c2goc3QpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59XG5mdW5jdGlvbiBzZXRGbG93U2NhbGFyVmFsdWUodG9rZW4sIHNvdXJjZSwgdHlwZSkge1xuICAgIHN3aXRjaCAodG9rZW4udHlwZSkge1xuICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIHRva2VuLnR5cGUgPSB0eXBlO1xuICAgICAgICAgICAgdG9rZW4uc291cmNlID0gc291cmNlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6IHtcbiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHRva2VuLnByb3BzLnNsaWNlKDEpO1xuICAgICAgICAgICAgbGV0IG9hID0gc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgIGlmICh0b2tlbi5wcm9wc1swXS50eXBlID09PSAnYmxvY2stc2NhbGFyLWhlYWRlcicpXG4gICAgICAgICAgICAgICAgb2EgLT0gdG9rZW4ucHJvcHNbMF0uc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgIGZvciAoY29uc3QgdG9rIG9mIGVuZClcbiAgICAgICAgICAgICAgICB0b2sub2Zmc2V0ICs9IG9hO1xuICAgICAgICAgICAgZGVsZXRlIHRva2VuLnByb3BzO1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0b2tlbiwgeyB0eXBlLCBzb3VyY2UsIGVuZCB9KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ2Jsb2NrLW1hcCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXNlcSc6IHtcbiAgICAgICAgICAgIGNvbnN0IG9mZnNldCA9IHRva2VuLm9mZnNldCArIHNvdXJjZS5sZW5ndGg7XG4gICAgICAgICAgICBjb25zdCBubCA9IHsgdHlwZTogJ25ld2xpbmUnLCBvZmZzZXQsIGluZGVudDogdG9rZW4uaW5kZW50LCBzb3VyY2U6ICdcXG4nIH07XG4gICAgICAgICAgICBkZWxldGUgdG9rZW4uaXRlbXM7XG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKHRva2VuLCB7IHR5cGUsIHNvdXJjZSwgZW5kOiBbbmxdIH0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgY29uc3QgaW5kZW50ID0gJ2luZGVudCcgaW4gdG9rZW4gPyB0b2tlbi5pbmRlbnQgOiAtMTtcbiAgICAgICAgICAgIGNvbnN0IGVuZCA9ICdlbmQnIGluIHRva2VuICYmIEFycmF5LmlzQXJyYXkodG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgID8gdG9rZW4uZW5kLmZpbHRlcihzdCA9PiBzdC50eXBlID09PSAnc3BhY2UnIHx8XG4gICAgICAgICAgICAgICAgICAgIHN0LnR5cGUgPT09ICdjb21tZW50JyB8fFxuICAgICAgICAgICAgICAgICAgICBzdC50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHRva2VuKSlcbiAgICAgICAgICAgICAgICBpZiAoa2V5ICE9PSAndHlwZScgJiYga2V5ICE9PSAnb2Zmc2V0JylcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHRva2VuW2tleV07XG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKHRva2VuLCB7IHR5cGUsIGluZGVudCwgc291cmNlLCBlbmQgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydHMuY3JlYXRlU2NhbGFyVG9rZW4gPSBjcmVhdGVTY2FsYXJUb2tlbjtcbmV4cG9ydHMucmVzb2x2ZUFzU2NhbGFyID0gcmVzb2x2ZUFzU2NhbGFyO1xuZXhwb3J0cy5zZXRTY2FsYXJWYWx1ZSA9IHNldFNjYWxhclZhbHVlO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBTdHJpbmdpZnkgYSBDU1QgZG9jdW1lbnQsIHRva2VuLCBvciBjb2xsZWN0aW9uIGl0ZW1cbiAqXG4gKiBGYWlyIHdhcm5pbmc6IFRoaXMgYXBwbGllcyBubyB2YWxpZGF0aW9uIHdoYXRzb2V2ZXIsIGFuZFxuICogc2ltcGx5IGNvbmNhdGVuYXRlcyB0aGUgc291cmNlcyBpbiB0aGVpciBsb2dpY2FsIG9yZGVyLlxuICovXG5jb25zdCBzdHJpbmdpZnkgPSAoY3N0KSA9PiAndHlwZScgaW4gY3N0ID8gc3RyaW5naWZ5VG9rZW4oY3N0KSA6IHN0cmluZ2lmeUl0ZW0oY3N0KTtcbmZ1bmN0aW9uIHN0cmluZ2lmeVRva2VuKHRva2VuKSB7XG4gICAgc3dpdGNoICh0b2tlbi50eXBlKSB7XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSAnJztcbiAgICAgICAgICAgIGZvciAoY29uc3QgdG9rIG9mIHRva2VuLnByb3BzKVxuICAgICAgICAgICAgICAgIHJlcyArPSBzdHJpbmdpZnlUb2tlbih0b2spO1xuICAgICAgICAgICAgcmV0dXJuIHJlcyArIHRva2VuLnNvdXJjZTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdibG9jay1tYXAnOlxuICAgICAgICBjYXNlICdibG9jay1zZXEnOiB7XG4gICAgICAgICAgICBsZXQgcmVzID0gJyc7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdG9rZW4uaXRlbXMpXG4gICAgICAgICAgICAgICAgcmVzICs9IHN0cmluZ2lmeUl0ZW0oaXRlbSk7XG4gICAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ2Zsb3ctY29sbGVjdGlvbic6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSB0b2tlbi5zdGFydC5zb3VyY2U7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdG9rZW4uaXRlbXMpXG4gICAgICAgICAgICAgICAgcmVzICs9IHN0cmluZ2lmeUl0ZW0oaXRlbSk7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIHRva2VuLmVuZClcbiAgICAgICAgICAgICAgICByZXMgKz0gc3Quc291cmNlO1xuICAgICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdkb2N1bWVudCc6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSBzdHJpbmdpZnlJdGVtKHRva2VuKTtcbiAgICAgICAgICAgIGlmICh0b2tlbi5lbmQpXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBzdCBvZiB0b2tlbi5lbmQpXG4gICAgICAgICAgICAgICAgICAgIHJlcyArPSBzdC5zb3VyY2U7XG4gICAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSB0b2tlbi5zb3VyY2U7XG4gICAgICAgICAgICBpZiAoJ2VuZCcgaW4gdG9rZW4gJiYgdG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgc3Qgb2YgdG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgICAgICByZXMgKz0gc3Quc291cmNlO1xuICAgICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIHN0cmluZ2lmeUl0ZW0oeyBzdGFydCwga2V5LCBzZXAsIHZhbHVlIH0pIHtcbiAgICBsZXQgcmVzID0gJyc7XG4gICAgZm9yIChjb25zdCBzdCBvZiBzdGFydClcbiAgICAgICAgcmVzICs9IHN0LnNvdXJjZTtcbiAgICBpZiAoa2V5KVxuICAgICAgICByZXMgKz0gc3RyaW5naWZ5VG9rZW4oa2V5KTtcbiAgICBpZiAoc2VwKVxuICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIHNlcClcbiAgICAgICAgICAgIHJlcyArPSBzdC5zb3VyY2U7XG4gICAgaWYgKHZhbHVlKVxuICAgICAgICByZXMgKz0gc3RyaW5naWZ5VG9rZW4odmFsdWUpO1xuICAgIHJldHVybiByZXM7XG59XG5cbmV4cG9ydHMuc3RyaW5naWZ5ID0gc3RyaW5naWZ5O1xuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgQlJFQUsgPSBTeW1ib2woJ2JyZWFrIHZpc2l0Jyk7XG5jb25zdCBTS0lQID0gU3ltYm9sKCdza2lwIGNoaWxkcmVuJyk7XG5jb25zdCBSRU1PVkUgPSBTeW1ib2woJ3JlbW92ZSBpdGVtJyk7XG4vKipcbiAqIEFwcGx5IGEgdmlzaXRvciB0byBhIENTVCBkb2N1bWVudCBvciBpdGVtLlxuICpcbiAqIFdhbGtzIHRocm91Z2ggdGhlIHRyZWUgKGRlcHRoLWZpcnN0KSBzdGFydGluZyBmcm9tIHRoZSByb290LCBjYWxsaW5nIGFcbiAqIGB2aXNpdG9yYCBmdW5jdGlvbiB3aXRoIHR3byBhcmd1bWVudHMgd2hlbiBlbnRlcmluZyBlYWNoIGl0ZW06XG4gKiAgIC0gYGl0ZW1gOiBUaGUgY3VycmVudCBpdGVtLCB3aGljaCBpbmNsdWRlZCB0aGUgZm9sbG93aW5nIG1lbWJlcnM6XG4gKiAgICAgLSBgc3RhcnQ6IFNvdXJjZVRva2VuW11gIFx1MjAxMyBTb3VyY2UgdG9rZW5zIGJlZm9yZSB0aGUga2V5IG9yIHZhbHVlLFxuICogICAgICAgcG9zc2libHkgaW5jbHVkaW5nIGl0cyBhbmNob3Igb3IgdGFnLlxuICogICAgIC0gYGtleT86IFRva2VuIHwgbnVsbGAgXHUyMDEzIFNldCBmb3IgcGFpciB2YWx1ZXMuIE1heSB0aGVuIGJlIGBudWxsYCwgaWZcbiAqICAgICAgIHRoZSBrZXkgYmVmb3JlIHRoZSBgOmAgc2VwYXJhdG9yIGlzIGVtcHR5LlxuICogICAgIC0gYHNlcD86IFNvdXJjZVRva2VuW11gIFx1MjAxMyBTb3VyY2UgdG9rZW5zIGJldHdlZW4gdGhlIGtleSBhbmQgdGhlIHZhbHVlLFxuICogICAgICAgd2hpY2ggc2hvdWxkIGluY2x1ZGUgdGhlIGA6YCBtYXAgdmFsdWUgaW5kaWNhdG9yIGlmIGB2YWx1ZWAgaXMgc2V0LlxuICogICAgIC0gYHZhbHVlPzogVG9rZW5gIFx1MjAxMyBUaGUgdmFsdWUgb2YgYSBzZXF1ZW5jZSBpdGVtLCBvciBvZiBhIG1hcCBwYWlyLlxuICogICAtIGBwYXRoYDogVGhlIHN0ZXBzIGZyb20gdGhlIHJvb3QgdG8gdGhlIGN1cnJlbnQgbm9kZSwgYXMgYW4gYXJyYXkgb2ZcbiAqICAgICBgWydrZXknIHwgJ3ZhbHVlJywgbnVtYmVyXWAgdHVwbGVzLlxuICpcbiAqIFRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHZpc2l0b3IgbWF5IGJlIHVzZWQgdG8gY29udHJvbCB0aGUgdHJhdmVyc2FsOlxuICogICAtIGB1bmRlZmluZWRgIChkZWZhdWx0KTogRG8gbm90aGluZyBhbmQgY29udGludWVcbiAqICAgLSBgdmlzaXQuU0tJUGA6IERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhpcyB0b2tlbiwgY29udGludWUgd2l0aFxuICogICAgICBuZXh0IHNpYmxpbmdcbiAqICAgLSBgdmlzaXQuQlJFQUtgOiBUZXJtaW5hdGUgdHJhdmVyc2FsIGNvbXBsZXRlbHlcbiAqICAgLSBgdmlzaXQuUkVNT1ZFYDogUmVtb3ZlIHRoZSBjdXJyZW50IGl0ZW0sIHRoZW4gY29udGludWUgd2l0aCB0aGUgbmV4dCBvbmVcbiAqICAgLSBgbnVtYmVyYDogU2V0IHRoZSBpbmRleCBvZiB0aGUgbmV4dCBzdGVwLiBUaGlzIGlzIHVzZWZ1bCBlc3BlY2lhbGx5IGlmXG4gKiAgICAgdGhlIGluZGV4IG9mIHRoZSBjdXJyZW50IHRva2VuIGhhcyBjaGFuZ2VkLlxuICogICAtIGBmdW5jdGlvbmA6IERlZmluZSB0aGUgbmV4dCB2aXNpdG9yIGZvciB0aGlzIGl0ZW0uIEFmdGVyIHRoZSBvcmlnaW5hbFxuICogICAgIHZpc2l0b3IgaXMgY2FsbGVkIG9uIGl0ZW0gZW50cnksIG5leHQgdmlzaXRvcnMgYXJlIGNhbGxlZCBhZnRlciBoYW5kbGluZ1xuICogICAgIGEgbm9uLWVtcHR5IGBrZXlgIGFuZCB3aGVuIGV4aXRpbmcgdGhlIGl0ZW0uXG4gKi9cbmZ1bmN0aW9uIHZpc2l0KGNzdCwgdmlzaXRvcikge1xuICAgIGlmICgndHlwZScgaW4gY3N0ICYmIGNzdC50eXBlID09PSAnZG9jdW1lbnQnKVxuICAgICAgICBjc3QgPSB7IHN0YXJ0OiBjc3Quc3RhcnQsIHZhbHVlOiBjc3QudmFsdWUgfTtcbiAgICBfdmlzaXQoT2JqZWN0LmZyZWV6ZShbXSksIGNzdCwgdmlzaXRvcik7XG59XG4vLyBXaXRob3V0IHRoZSBgYXMgc3ltYm9sYCBjYXN0cywgVFMgZGVjbGFyZXMgdGhlc2UgaW4gdGhlIGB2aXNpdGBcbi8vIG5hbWVzcGFjZSB1c2luZyBgdmFyYCwgYnV0IHRoZW4gY29tcGxhaW5zIGFib3V0IHRoYXQgYmVjYXVzZVxuLy8gYHVuaXF1ZSBzeW1ib2xgIG11c3QgYmUgYGNvbnN0YC5cbi8qKiBUZXJtaW5hdGUgdmlzaXQgdHJhdmVyc2FsIGNvbXBsZXRlbHkgKi9cbnZpc2l0LkJSRUFLID0gQlJFQUs7XG4vKiogRG8gbm90IHZpc2l0IHRoZSBjaGlsZHJlbiBvZiB0aGUgY3VycmVudCBpdGVtICovXG52aXNpdC5TS0lQID0gU0tJUDtcbi8qKiBSZW1vdmUgdGhlIGN1cnJlbnQgaXRlbSAqL1xudmlzaXQuUkVNT1ZFID0gUkVNT1ZFO1xuLyoqIEZpbmQgdGhlIGl0ZW0gYXQgYHBhdGhgIGZyb20gYGNzdGAgYXMgdGhlIHJvb3QgKi9cbnZpc2l0Lml0ZW1BdFBhdGggPSAoY3N0LCBwYXRoKSA9PiB7XG4gICAgbGV0IGl0ZW0gPSBjc3Q7XG4gICAgZm9yIChjb25zdCBbZmllbGQsIGluZGV4XSBvZiBwYXRoKSB7XG4gICAgICAgIGNvbnN0IHRvayA9IGl0ZW0/LltmaWVsZF07XG4gICAgICAgIGlmICh0b2sgJiYgJ2l0ZW1zJyBpbiB0b2spIHtcbiAgICAgICAgICAgIGl0ZW0gPSB0b2suaXRlbXNbaW5kZXhdO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiBpdGVtO1xufTtcbi8qKlxuICogR2V0IHRoZSBpbW1lZGlhdGUgcGFyZW50IGNvbGxlY3Rpb24gb2YgdGhlIGl0ZW0gYXQgYHBhdGhgIGZyb20gYGNzdGAgYXMgdGhlIHJvb3QuXG4gKlxuICogVGhyb3dzIGFuIGVycm9yIGlmIHRoZSBjb2xsZWN0aW9uIGlzIG5vdCBmb3VuZCwgd2hpY2ggc2hvdWxkIG5ldmVyIGhhcHBlbiBpZiB0aGUgaXRlbSBpdHNlbGYgZXhpc3RzLlxuICovXG52aXNpdC5wYXJlbnRDb2xsZWN0aW9uID0gKGNzdCwgcGF0aCkgPT4ge1xuICAgIGNvbnN0IHBhcmVudCA9IHZpc2l0Lml0ZW1BdFBhdGgoY3N0LCBwYXRoLnNsaWNlKDAsIC0xKSk7XG4gICAgY29uc3QgZmllbGQgPSBwYXRoW3BhdGgubGVuZ3RoIC0gMV1bMF07XG4gICAgY29uc3QgY29sbCA9IHBhcmVudD8uW2ZpZWxkXTtcbiAgICBpZiAoY29sbCAmJiAnaXRlbXMnIGluIGNvbGwpXG4gICAgICAgIHJldHVybiBjb2xsO1xuICAgIHRocm93IG5ldyBFcnJvcignUGFyZW50IGNvbGxlY3Rpb24gbm90IGZvdW5kJyk7XG59O1xuZnVuY3Rpb24gX3Zpc2l0KHBhdGgsIGl0ZW0sIHZpc2l0b3IpIHtcbiAgICBsZXQgY3RybCA9IHZpc2l0b3IoaXRlbSwgcGF0aCk7XG4gICAgaWYgKHR5cGVvZiBjdHJsID09PSAnc3ltYm9sJylcbiAgICAgICAgcmV0dXJuIGN0cmw7XG4gICAgZm9yIChjb25zdCBmaWVsZCBvZiBbJ2tleScsICd2YWx1ZSddKSB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gaXRlbVtmaWVsZF07XG4gICAgICAgIGlmICh0b2tlbiAmJiAnaXRlbXMnIGluIHRva2VuKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRva2VuLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2kgPSBfdmlzaXQoT2JqZWN0LmZyZWV6ZShwYXRoLmNvbmNhdChbW2ZpZWxkLCBpXV0pKSwgdG9rZW4uaXRlbXNbaV0sIHZpc2l0b3IpO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2kgPT09ICdudW1iZXInKVxuICAgICAgICAgICAgICAgICAgICBpID0gY2kgLSAxO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBCUkVBSylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEJSRUFLO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBSRU1PVkUpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9rZW4uaXRlbXMuc3BsaWNlKGksIDEpO1xuICAgICAgICAgICAgICAgICAgICBpIC09IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBjdHJsID09PSAnZnVuY3Rpb24nICYmIGZpZWxkID09PSAna2V5JylcbiAgICAgICAgICAgICAgICBjdHJsID0gY3RybChpdGVtLCBwYXRoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHlwZW9mIGN0cmwgPT09ICdmdW5jdGlvbicgPyBjdHJsKGl0ZW0sIHBhdGgpIDogY3RybDtcbn1cblxuZXhwb3J0cy52aXNpdCA9IHZpc2l0O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGNzdFNjYWxhciA9IHJlcXVpcmUoJy4vY3N0LXNjYWxhci5qcycpO1xudmFyIGNzdFN0cmluZ2lmeSA9IHJlcXVpcmUoJy4vY3N0LXN0cmluZ2lmeS5qcycpO1xudmFyIGNzdFZpc2l0ID0gcmVxdWlyZSgnLi9jc3QtdmlzaXQuanMnKTtcblxuLyoqIFRoZSBieXRlIG9yZGVyIG1hcmsgKi9cbmNvbnN0IEJPTSA9ICdcXHV7RkVGRn0nO1xuLyoqIFN0YXJ0IG9mIGRvYy1tb2RlICovXG5jb25zdCBET0NVTUVOVCA9ICdcXHgwMic7IC8vIEMwOiBTdGFydCBvZiBUZXh0XG4vKiogVW5leHBlY3RlZCBlbmQgb2YgZmxvdy1tb2RlICovXG5jb25zdCBGTE9XX0VORCA9ICdcXHgxOCc7IC8vIEMwOiBDYW5jZWxcbi8qKiBOZXh0IHRva2VuIGlzIGEgc2NhbGFyIHZhbHVlICovXG5jb25zdCBTQ0FMQVIgPSAnXFx4MWYnOyAvLyBDMDogVW5pdCBTZXBhcmF0b3Jcbi8qKiBAcmV0dXJucyBgdHJ1ZWAgaWYgYHRva2VuYCBpcyBhIGZsb3cgb3IgYmxvY2sgY29sbGVjdGlvbiAqL1xuY29uc3QgaXNDb2xsZWN0aW9uID0gKHRva2VuKSA9PiAhIXRva2VuICYmICdpdGVtcycgaW4gdG9rZW47XG4vKiogQHJldHVybnMgYHRydWVgIGlmIGB0b2tlbmAgaXMgYSBmbG93IG9yIGJsb2NrIHNjYWxhcjsgbm90IGFuIGFsaWFzICovXG5jb25zdCBpc1NjYWxhciA9ICh0b2tlbikgPT4gISF0b2tlbiAmJlxuICAgICh0b2tlbi50eXBlID09PSAnc2NhbGFyJyB8fFxuICAgICAgICB0b2tlbi50eXBlID09PSAnc2luZ2xlLXF1b3RlZC1zY2FsYXInIHx8XG4gICAgICAgIHRva2VuLnR5cGUgPT09ICdkb3VibGUtcXVvdGVkLXNjYWxhcicgfHxcbiAgICAgICAgdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLXNjYWxhcicpO1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbi8qKiBHZXQgYSBwcmludGFibGUgcmVwcmVzZW50YXRpb24gb2YgYSBsZXhlciB0b2tlbiAqL1xuZnVuY3Rpb24gcHJldHR5VG9rZW4odG9rZW4pIHtcbiAgICBzd2l0Y2ggKHRva2VuKSB7XG4gICAgICAgIGNhc2UgQk9NOlxuICAgICAgICAgICAgcmV0dXJuICc8Qk9NPic7XG4gICAgICAgIGNhc2UgRE9DVU1FTlQ6XG4gICAgICAgICAgICByZXR1cm4gJzxET0M+JztcbiAgICAgICAgY2FzZSBGTE9XX0VORDpcbiAgICAgICAgICAgIHJldHVybiAnPEZMT1dfRU5EPic7XG4gICAgICAgIGNhc2UgU0NBTEFSOlxuICAgICAgICAgICAgcmV0dXJuICc8U0NBTEFSPic7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodG9rZW4pO1xuICAgIH1cbn1cbi8qKiBJZGVudGlmeSB0aGUgdHlwZSBvZiBhIGxleGVyIHRva2VuLiBNYXkgcmV0dXJuIGBudWxsYCBmb3IgdW5rbm93biB0b2tlbnMuICovXG5mdW5jdGlvbiB0b2tlblR5cGUoc291cmNlKSB7XG4gICAgc3dpdGNoIChzb3VyY2UpIHtcbiAgICAgICAgY2FzZSBCT006XG4gICAgICAgICAgICByZXR1cm4gJ2J5dGUtb3JkZXItbWFyayc7XG4gICAgICAgIGNhc2UgRE9DVU1FTlQ6XG4gICAgICAgICAgICByZXR1cm4gJ2RvYy1tb2RlJztcbiAgICAgICAgY2FzZSBGTE9XX0VORDpcbiAgICAgICAgICAgIHJldHVybiAnZmxvdy1lcnJvci1lbmQnO1xuICAgICAgICBjYXNlIFNDQUxBUjpcbiAgICAgICAgICAgIHJldHVybiAnc2NhbGFyJztcbiAgICAgICAgY2FzZSAnLS0tJzpcbiAgICAgICAgICAgIHJldHVybiAnZG9jLXN0YXJ0JztcbiAgICAgICAgY2FzZSAnLi4uJzpcbiAgICAgICAgICAgIHJldHVybiAnZG9jLWVuZCc7XG4gICAgICAgIGNhc2UgJyc6XG4gICAgICAgIGNhc2UgJ1xcbic6XG4gICAgICAgIGNhc2UgJ1xcclxcbic6XG4gICAgICAgICAgICByZXR1cm4gJ25ld2xpbmUnO1xuICAgICAgICBjYXNlICctJzpcbiAgICAgICAgICAgIHJldHVybiAnc2VxLWl0ZW0taW5kJztcbiAgICAgICAgY2FzZSAnPyc6XG4gICAgICAgICAgICByZXR1cm4gJ2V4cGxpY2l0LWtleS1pbmQnO1xuICAgICAgICBjYXNlICc6JzpcbiAgICAgICAgICAgIHJldHVybiAnbWFwLXZhbHVlLWluZCc7XG4gICAgICAgIGNhc2UgJ3snOlxuICAgICAgICAgICAgcmV0dXJuICdmbG93LW1hcC1zdGFydCc7XG4gICAgICAgIGNhc2UgJ30nOlxuICAgICAgICAgICAgcmV0dXJuICdmbG93LW1hcC1lbmQnO1xuICAgICAgICBjYXNlICdbJzpcbiAgICAgICAgICAgIHJldHVybiAnZmxvdy1zZXEtc3RhcnQnO1xuICAgICAgICBjYXNlICddJzpcbiAgICAgICAgICAgIHJldHVybiAnZmxvdy1zZXEtZW5kJztcbiAgICAgICAgY2FzZSAnLCc6XG4gICAgICAgICAgICByZXR1cm4gJ2NvbW1hJztcbiAgICB9XG4gICAgc3dpdGNoIChzb3VyY2VbMF0pIHtcbiAgICAgICAgY2FzZSAnICc6XG4gICAgICAgIGNhc2UgJ1xcdCc6XG4gICAgICAgICAgICByZXR1cm4gJ3NwYWNlJztcbiAgICAgICAgY2FzZSAnIyc6XG4gICAgICAgICAgICByZXR1cm4gJ2NvbW1lbnQnO1xuICAgICAgICBjYXNlICclJzpcbiAgICAgICAgICAgIHJldHVybiAnZGlyZWN0aXZlLWxpbmUnO1xuICAgICAgICBjYXNlICcqJzpcbiAgICAgICAgICAgIHJldHVybiAnYWxpYXMnO1xuICAgICAgICBjYXNlICcmJzpcbiAgICAgICAgICAgIHJldHVybiAnYW5jaG9yJztcbiAgICAgICAgY2FzZSAnISc6XG4gICAgICAgICAgICByZXR1cm4gJ3RhZyc7XG4gICAgICAgIGNhc2UgXCInXCI6XG4gICAgICAgICAgICByZXR1cm4gJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJztcbiAgICAgICAgY2FzZSAnXCInOlxuICAgICAgICAgICAgcmV0dXJuICdkb3VibGUtcXVvdGVkLXNjYWxhcic7XG4gICAgICAgIGNhc2UgJ3wnOlxuICAgICAgICBjYXNlICc+JzpcbiAgICAgICAgICAgIHJldHVybiAnYmxvY2stc2NhbGFyLWhlYWRlcic7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufVxuXG5leHBvcnRzLmNyZWF0ZVNjYWxhclRva2VuID0gY3N0U2NhbGFyLmNyZWF0ZVNjYWxhclRva2VuO1xuZXhwb3J0cy5yZXNvbHZlQXNTY2FsYXIgPSBjc3RTY2FsYXIucmVzb2x2ZUFzU2NhbGFyO1xuZXhwb3J0cy5zZXRTY2FsYXJWYWx1ZSA9IGNzdFNjYWxhci5zZXRTY2FsYXJWYWx1ZTtcbmV4cG9ydHMuc3RyaW5naWZ5ID0gY3N0U3RyaW5naWZ5LnN0cmluZ2lmeTtcbmV4cG9ydHMudmlzaXQgPSBjc3RWaXNpdC52aXNpdDtcbmV4cG9ydHMuQk9NID0gQk9NO1xuZXhwb3J0cy5ET0NVTUVOVCA9IERPQ1VNRU5UO1xuZXhwb3J0cy5GTE9XX0VORCA9IEZMT1dfRU5EO1xuZXhwb3J0cy5TQ0FMQVIgPSBTQ0FMQVI7XG5leHBvcnRzLmlzQ29sbGVjdGlvbiA9IGlzQ29sbGVjdGlvbjtcbmV4cG9ydHMuaXNTY2FsYXIgPSBpc1NjYWxhcjtcbmV4cG9ydHMucHJldHR5VG9rZW4gPSBwcmV0dHlUb2tlbjtcbmV4cG9ydHMudG9rZW5UeXBlID0gdG9rZW5UeXBlO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGNzdCA9IHJlcXVpcmUoJy4vY3N0LmpzJyk7XG5cbi8qXG5TVEFSVCAtPiBzdHJlYW1cblxuc3RyZWFtXG4gIGRpcmVjdGl2ZSAtPiBsaW5lLWVuZCAtPiBzdHJlYW1cbiAgaW5kZW50ICsgbGluZS1lbmQgLT4gc3RyZWFtXG4gIFtlbHNlXSAtPiBsaW5lLXN0YXJ0XG5cbmxpbmUtZW5kXG4gIGNvbW1lbnQgLT4gbGluZS1lbmRcbiAgbmV3bGluZSAtPiAuXG4gIGlucHV0LWVuZCAtPiBFTkRcblxubGluZS1zdGFydFxuICBkb2Mtc3RhcnQgLT4gZG9jXG4gIGRvYy1lbmQgLT4gc3RyZWFtXG4gIFtlbHNlXSAtPiBpbmRlbnQgLT4gYmxvY2stc3RhcnRcblxuYmxvY2stc3RhcnRcbiAgc2VxLWl0ZW0tc3RhcnQgLT4gYmxvY2stc3RhcnRcbiAgZXhwbGljaXQta2V5LXN0YXJ0IC0+IGJsb2NrLXN0YXJ0XG4gIG1hcC12YWx1ZS1zdGFydCAtPiBibG9jay1zdGFydFxuICBbZWxzZV0gLT4gZG9jXG5cbmRvY1xuICBsaW5lLWVuZCAtPiBsaW5lLXN0YXJ0XG4gIHNwYWNlcyAtPiBkb2NcbiAgYW5jaG9yIC0+IGRvY1xuICB0YWcgLT4gZG9jXG4gIGZsb3ctc3RhcnQgLT4gZmxvdyAtPiBkb2NcbiAgZmxvdy1lbmQgLT4gZXJyb3IgLT4gZG9jXG4gIHNlcS1pdGVtLXN0YXJ0IC0+IGVycm9yIC0+IGRvY1xuICBleHBsaWNpdC1rZXktc3RhcnQgLT4gZXJyb3IgLT4gZG9jXG4gIG1hcC12YWx1ZS1zdGFydCAtPiBkb2NcbiAgYWxpYXMgLT4gZG9jXG4gIHF1b3RlLXN0YXJ0IC0+IHF1b3RlZC1zY2FsYXIgLT4gZG9jXG4gIGJsb2NrLXNjYWxhci1oZWFkZXIgLT4gbGluZS1lbmQgLT4gYmxvY2stc2NhbGFyKG1pbikgLT4gbGluZS1zdGFydFxuICBbZWxzZV0gLT4gcGxhaW4tc2NhbGFyKGZhbHNlLCBtaW4pIC0+IGRvY1xuXG5mbG93XG4gIGxpbmUtZW5kIC0+IGZsb3dcbiAgc3BhY2VzIC0+IGZsb3dcbiAgYW5jaG9yIC0+IGZsb3dcbiAgdGFnIC0+IGZsb3dcbiAgZmxvdy1zdGFydCAtPiBmbG93IC0+IGZsb3dcbiAgZmxvdy1lbmQgLT4gLlxuICBzZXEtaXRlbS1zdGFydCAtPiBlcnJvciAtPiBmbG93XG4gIGV4cGxpY2l0LWtleS1zdGFydCAtPiBmbG93XG4gIG1hcC12YWx1ZS1zdGFydCAtPiBmbG93XG4gIGFsaWFzIC0+IGZsb3dcbiAgcXVvdGUtc3RhcnQgLT4gcXVvdGVkLXNjYWxhciAtPiBmbG93XG4gIGNvbW1hIC0+IGZsb3dcbiAgW2Vsc2VdIC0+IHBsYWluLXNjYWxhcih0cnVlLCAwKSAtPiBmbG93XG5cbnF1b3RlZC1zY2FsYXJcbiAgcXVvdGUtZW5kIC0+IC5cbiAgW2Vsc2VdIC0+IHF1b3RlZC1zY2FsYXJcblxuYmxvY2stc2NhbGFyKG1pbilcbiAgbmV3bGluZSArIHBlZWsoaW5kZW50IDwgbWluKSAtPiAuXG4gIFtlbHNlXSAtPiBibG9jay1zY2FsYXIobWluKVxuXG5wbGFpbi1zY2FsYXIoaXMtZmxvdywgbWluKVxuICBzY2FsYXItZW5kKGlzLWZsb3cpIC0+IC5cbiAgcGVlayhuZXdsaW5lICsgKGluZGVudCA8IG1pbikpIC0+IC5cbiAgW2Vsc2VdIC0+IHBsYWluLXNjYWxhcihtaW4pXG4qL1xuZnVuY3Rpb24gaXNFbXB0eShjaCkge1xuICAgIHN3aXRjaCAoY2gpIHtcbiAgICAgICAgY2FzZSB1bmRlZmluZWQ6XG4gICAgICAgIGNhc2UgJyAnOlxuICAgICAgICBjYXNlICdcXG4nOlxuICAgICAgICBjYXNlICdcXHInOlxuICAgICAgICBjYXNlICdcXHQnOlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuY29uc3QgaGV4RGlnaXRzID0gbmV3IFNldCgnMDEyMzQ1Njc4OUFCQ0RFRmFiY2RlZicpO1xuY29uc3QgdGFnQ2hhcnMgPSBuZXcgU2V0KFwiMDEyMzQ1Njc4OUFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXotIzsvPzpAJj0rJF8uIX4qJygpXCIpO1xuY29uc3QgZmxvd0luZGljYXRvckNoYXJzID0gbmV3IFNldCgnLFtde30nKTtcbmNvbnN0IGludmFsaWRBbmNob3JDaGFycyA9IG5ldyBTZXQoJyAsW117fVxcblxcclxcdCcpO1xuY29uc3QgaXNOb3RBbmNob3JDaGFyID0gKGNoKSA9PiAhY2ggfHwgaW52YWxpZEFuY2hvckNoYXJzLmhhcyhjaCk7XG4vKipcbiAqIFNwbGl0cyBhbiBpbnB1dCBzdHJpbmcgaW50byBsZXhpY2FsIHRva2VucywgaS5lLiBzbWFsbGVyIHN0cmluZ3MgdGhhdCBhcmVcbiAqIGVhc2lseSBpZGVudGlmaWFibGUgYnkgYHRva2Vucy50b2tlblR5cGUoKWAuXG4gKlxuICogTGV4aW5nIHN0YXJ0cyBhbHdheXMgaW4gYSBcInN0cmVhbVwiIGNvbnRleHQuIEluY29tcGxldGUgaW5wdXQgbWF5IGJlIGJ1ZmZlcmVkXG4gKiB1bnRpbCBhIGNvbXBsZXRlIHRva2VuIGNhbiBiZSBlbWl0dGVkLlxuICpcbiAqIEluIGFkZGl0aW9uIHRvIHNsaWNlcyBvZiB0aGUgb3JpZ2luYWwgaW5wdXQsIHRoZSBmb2xsb3dpbmcgY29udHJvbCBjaGFyYWN0ZXJzXG4gKiBtYXkgYWxzbyBiZSBlbWl0dGVkOlxuICpcbiAqIC0gYFxceDAyYCAoU3RhcnQgb2YgVGV4dCk6IEEgZG9jdW1lbnQgc3RhcnRzIHdpdGggdGhlIG5leHQgdG9rZW5cbiAqIC0gYFxceDE4YCAoQ2FuY2VsKTogVW5leHBlY3RlZCBlbmQgb2YgZmxvdy1tb2RlIChpbmRpY2F0ZXMgYW4gZXJyb3IpXG4gKiAtIGBcXHgxZmAgKFVuaXQgU2VwYXJhdG9yKTogTmV4dCB0b2tlbiBpcyBhIHNjYWxhciB2YWx1ZVxuICogLSBgXFx1e0ZFRkZ9YCAoQnl0ZSBvcmRlciBtYXJrKTogRW1pdHRlZCBzZXBhcmF0ZWx5IG91dHNpZGUgZG9jdW1lbnRzXG4gKi9cbmNsYXNzIExleGVyIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgYnVmZmVyIG1hcmtzIHRoZSBlbmQgb2ZcbiAgICAgICAgICogYWxsIGlucHV0XG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmF0RW5kID0gZmFsc2U7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFeHBsaWNpdCBpbmRlbnQgc2V0IGluIGJsb2NrIHNjYWxhciBoZWFkZXIsIGFzIGFuIG9mZnNldCBmcm9tIHRoZSBjdXJyZW50XG4gICAgICAgICAqIG1pbmltdW0gaW5kZW50LCBzbyBlLmcuIHNldCB0byAxIGZyb20gYSBoZWFkZXIgYHwyK2AuIFNldCB0byAtMSBpZiBub3RcbiAgICAgICAgICogZXhwbGljaXRseSBzZXQuXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmJsb2NrU2NhbGFySW5kZW50ID0gLTE7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBCbG9jayBzY2FsYXJzIHRoYXQgaW5jbHVkZSBhICsgKGtlZXApIGNob21waW5nIGluZGljYXRvciBpbiB0aGVpciBoZWFkZXJcbiAgICAgICAgICogaW5jbHVkZSB0cmFpbGluZyBlbXB0eSBsaW5lcywgd2hpY2ggYXJlIG90aGVyd2lzZSBleGNsdWRlZCBmcm9tIHRoZVxuICAgICAgICAgKiBzY2FsYXIncyBjb250ZW50cy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuYmxvY2tTY2FsYXJLZWVwID0gZmFsc2U7XG4gICAgICAgIC8qKiBDdXJyZW50IGlucHV0ICovXG4gICAgICAgIHRoaXMuYnVmZmVyID0gJyc7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBGbGFnIG5vdGluZyB3aGV0aGVyIHRoZSBtYXAgdmFsdWUgaW5kaWNhdG9yIDogY2FuIGltbWVkaWF0ZWx5IGZvbGxvdyB0aGlzXG4gICAgICAgICAqIG5vZGUgd2l0aGluIGEgZmxvdyBjb250ZXh0LlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5mbG93S2V5ID0gZmFsc2U7XG4gICAgICAgIC8qKiBDb3VudCBvZiBzdXJyb3VuZGluZyBmbG93IGNvbGxlY3Rpb24gbGV2ZWxzLiAqL1xuICAgICAgICB0aGlzLmZsb3dMZXZlbCA9IDA7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBNaW5pbXVtIGxldmVsIG9mIGluZGVudGF0aW9uIHJlcXVpcmVkIGZvciBuZXh0IGxpbmVzIHRvIGJlIHBhcnNlZCBhcyBhXG4gICAgICAgICAqIHBhcnQgb2YgdGhlIGN1cnJlbnQgc2NhbGFyIHZhbHVlLlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5pbmRlbnROZXh0ID0gMDtcbiAgICAgICAgLyoqIEluZGVudGF0aW9uIGxldmVsIG9mIHRoZSBjdXJyZW50IGxpbmUuICovXG4gICAgICAgIHRoaXMuaW5kZW50VmFsdWUgPSAwO1xuICAgICAgICAvKiogUG9zaXRpb24gb2YgdGhlIG5leHQgXFxuIGNoYXJhY3Rlci4gKi9cbiAgICAgICAgdGhpcy5saW5lRW5kUG9zID0gbnVsbDtcbiAgICAgICAgLyoqIFN0b3JlcyB0aGUgc3RhdGUgb2YgdGhlIGxleGVyIGlmIHJlYWNoaW5nIHRoZSBlbmQgb2YgaW5jcG9tcGxldGUgaW5wdXQgKi9cbiAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDtcbiAgICAgICAgLyoqIEEgcG9pbnRlciB0byBgYnVmZmVyYDsgdGhlIGN1cnJlbnQgcG9zaXRpb24gb2YgdGhlIGxleGVyLiAqL1xuICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdlbmVyYXRlIFlBTUwgdG9rZW5zIGZyb20gdGhlIGBzb3VyY2VgIHN0cmluZy4gSWYgYGluY29tcGxldGVgLFxuICAgICAqIGEgcGFydCBvZiB0aGUgbGFzdCBsaW5lIG1heSBiZSBsZWZ0IGFzIGEgYnVmZmVyIGZvciB0aGUgbmV4dCBjYWxsLlxuICAgICAqXG4gICAgICogQHJldHVybnMgQSBnZW5lcmF0b3Igb2YgbGV4aWNhbCB0b2tlbnNcbiAgICAgKi9cbiAgICAqbGV4KHNvdXJjZSwgaW5jb21wbGV0ZSA9IGZhbHNlKSB7XG4gICAgICAgIGlmIChzb3VyY2UpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygc291cmNlICE9PSAnc3RyaW5nJylcbiAgICAgICAgICAgICAgICB0aHJvdyBUeXBlRXJyb3IoJ3NvdXJjZSBpcyBub3QgYSBzdHJpbmcnKTtcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyID0gdGhpcy5idWZmZXIgPyB0aGlzLmJ1ZmZlciArIHNvdXJjZSA6IHNvdXJjZTtcbiAgICAgICAgICAgIHRoaXMubGluZUVuZFBvcyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hdEVuZCA9ICFpbmNvbXBsZXRlO1xuICAgICAgICBsZXQgbmV4dCA9IHRoaXMubmV4dCA/PyAnc3RyZWFtJztcbiAgICAgICAgd2hpbGUgKG5leHQgJiYgKGluY29tcGxldGUgfHwgdGhpcy5oYXNDaGFycygxKSkpXG4gICAgICAgICAgICBuZXh0ID0geWllbGQqIHRoaXMucGFyc2VOZXh0KG5leHQpO1xuICAgIH1cbiAgICBhdExpbmVFbmQoKSB7XG4gICAgICAgIGxldCBpID0gdGhpcy5wb3M7XG4gICAgICAgIGxldCBjaCA9IHRoaXMuYnVmZmVyW2ldO1xuICAgICAgICB3aGlsZSAoY2ggPT09ICcgJyB8fCBjaCA9PT0gJ1xcdCcpXG4gICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgIGlmICghY2ggfHwgY2ggPT09ICcjJyB8fCBjaCA9PT0gJ1xcbicpXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgaWYgKGNoID09PSAnXFxyJylcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlcltpICsgMV0gPT09ICdcXG4nO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNoYXJBdChuKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlclt0aGlzLnBvcyArIG5dO1xuICAgIH1cbiAgICBjb250aW51ZVNjYWxhcihvZmZzZXQpIHtcbiAgICAgICAgbGV0IGNoID0gdGhpcy5idWZmZXJbb2Zmc2V0XTtcbiAgICAgICAgaWYgKHRoaXMuaW5kZW50TmV4dCA+IDApIHtcbiAgICAgICAgICAgIGxldCBpbmRlbnQgPSAwO1xuICAgICAgICAgICAgd2hpbGUgKGNoID09PSAnICcpXG4gICAgICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclsrK2luZGVudCArIG9mZnNldF07XG4gICAgICAgICAgICBpZiAoY2ggPT09ICdcXHInKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuYnVmZmVyW2luZGVudCArIG9mZnNldCArIDFdO1xuICAgICAgICAgICAgICAgIGlmIChuZXh0ID09PSAnXFxuJyB8fCAoIW5leHQgJiYgIXRoaXMuYXRFbmQpKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2Zmc2V0ICsgaW5kZW50ICsgMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBjaCA9PT0gJ1xcbicgfHwgaW5kZW50ID49IHRoaXMuaW5kZW50TmV4dCB8fCAoIWNoICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgICAgID8gb2Zmc2V0ICsgaW5kZW50XG4gICAgICAgICAgICAgICAgOiAtMTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2ggPT09ICctJyB8fCBjaCA9PT0gJy4nKSB7XG4gICAgICAgICAgICBjb25zdCBkdCA9IHRoaXMuYnVmZmVyLnN1YnN0cihvZmZzZXQsIDMpO1xuICAgICAgICAgICAgaWYgKChkdCA9PT0gJy0tLScgfHwgZHQgPT09ICcuLi4nKSAmJiBpc0VtcHR5KHRoaXMuYnVmZmVyW29mZnNldCArIDNdKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9mZnNldDtcbiAgICB9XG4gICAgZ2V0TGluZSgpIHtcbiAgICAgICAgbGV0IGVuZCA9IHRoaXMubGluZUVuZFBvcztcbiAgICAgICAgaWYgKHR5cGVvZiBlbmQgIT09ICdudW1iZXInIHx8IChlbmQgIT09IC0xICYmIGVuZCA8IHRoaXMucG9zKSkge1xuICAgICAgICAgICAgZW5kID0gdGhpcy5idWZmZXIuaW5kZXhPZignXFxuJywgdGhpcy5wb3MpO1xuICAgICAgICAgICAgdGhpcy5saW5lRW5kUG9zID0gZW5kO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmQgPT09IC0xKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXRFbmQgPyB0aGlzLmJ1ZmZlci5zdWJzdHJpbmcodGhpcy5wb3MpIDogbnVsbDtcbiAgICAgICAgaWYgKHRoaXMuYnVmZmVyW2VuZCAtIDFdID09PSAnXFxyJylcbiAgICAgICAgICAgIGVuZCAtPSAxO1xuICAgICAgICByZXR1cm4gdGhpcy5idWZmZXIuc3Vic3RyaW5nKHRoaXMucG9zLCBlbmQpO1xuICAgIH1cbiAgICBoYXNDaGFycyhuKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBvcyArIG4gPD0gdGhpcy5idWZmZXIubGVuZ3RoO1xuICAgIH1cbiAgICBzZXROZXh0KHN0YXRlKSB7XG4gICAgICAgIHRoaXMuYnVmZmVyID0gdGhpcy5idWZmZXIuc3Vic3RyaW5nKHRoaXMucG9zKTtcbiAgICAgICAgdGhpcy5wb3MgPSAwO1xuICAgICAgICB0aGlzLmxpbmVFbmRQb3MgPSBudWxsO1xuICAgICAgICB0aGlzLm5leHQgPSBzdGF0ZTtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHBlZWsobikge1xuICAgICAgICByZXR1cm4gdGhpcy5idWZmZXIuc3Vic3RyKHRoaXMucG9zLCBuKTtcbiAgICB9XG4gICAgKnBhcnNlTmV4dChuZXh0KSB7XG4gICAgICAgIHN3aXRjaCAobmV4dCkge1xuICAgICAgICAgICAgY2FzZSAnc3RyZWFtJzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VTdHJlYW0oKTtcbiAgICAgICAgICAgIGNhc2UgJ2xpbmUtc3RhcnQnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgICAgICAgICAgY2FzZSAnYmxvY2stc3RhcnQnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUJsb2NrU3RhcnQoKTtcbiAgICAgICAgICAgIGNhc2UgJ2RvYyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlRG9jdW1lbnQoKTtcbiAgICAgICAgICAgIGNhc2UgJ2Zsb3cnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUZsb3dDb2xsZWN0aW9uKCk7XG4gICAgICAgICAgICBjYXNlICdxdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VRdW90ZWRTY2FsYXIoKTtcbiAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlQmxvY2tTY2FsYXIoKTtcbiAgICAgICAgICAgIGNhc2UgJ3BsYWluLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlUGxhaW5TY2FsYXIoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqcGFyc2VTdHJlYW0oKSB7XG4gICAgICAgIGxldCBsaW5lID0gdGhpcy5nZXRMaW5lKCk7XG4gICAgICAgIGlmIChsaW5lID09PSBudWxsKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnc3RyZWFtJyk7XG4gICAgICAgIGlmIChsaW5lWzBdID09PSBjc3QuQk9NKSB7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICBsaW5lID0gbGluZS5zdWJzdHJpbmcoMSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxpbmVbMF0gPT09ICclJykge1xuICAgICAgICAgICAgbGV0IGRpckVuZCA9IGxpbmUubGVuZ3RoO1xuICAgICAgICAgICAgbGV0IGNzID0gbGluZS5pbmRleE9mKCcjJyk7XG4gICAgICAgICAgICB3aGlsZSAoY3MgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2ggPSBsaW5lW2NzIC0gMV07XG4gICAgICAgICAgICAgICAgaWYgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpckVuZCA9IGNzIC0gMTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjcyA9IGxpbmUuaW5kZXhPZignIycsIGNzICsgMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjaCA9IGxpbmVbZGlyRW5kIC0gMV07XG4gICAgICAgICAgICAgICAgaWYgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnKVxuICAgICAgICAgICAgICAgICAgICBkaXJFbmQgLT0gMTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgbiA9ICh5aWVsZCogdGhpcy5wdXNoQ291bnQoZGlyRW5kKSkgKyAoeWllbGQqIHRoaXMucHVzaFNwYWNlcyh0cnVlKSk7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQobGluZS5sZW5ndGggLSBuKTsgLy8gcG9zc2libGUgY29tbWVudFxuICAgICAgICAgICAgdGhpcy5wdXNoTmV3bGluZSgpO1xuICAgICAgICAgICAgcmV0dXJuICdzdHJlYW0nO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmF0TGluZUVuZCgpKSB7XG4gICAgICAgICAgICBjb25zdCBzcCA9IHlpZWxkKiB0aGlzLnB1c2hTcGFjZXModHJ1ZSk7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQobGluZS5sZW5ndGggLSBzcCk7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoTmV3bGluZSgpO1xuICAgICAgICAgICAgcmV0dXJuICdzdHJlYW0nO1xuICAgICAgICB9XG4gICAgICAgIHlpZWxkIGNzdC5ET0NVTUVOVDtcbiAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlTGluZVN0YXJ0KCk7XG4gICAgfVxuICAgICpwYXJzZUxpbmVTdGFydCgpIHtcbiAgICAgICAgY29uc3QgY2ggPSB0aGlzLmNoYXJBdCgwKTtcbiAgICAgICAgaWYgKCFjaCAmJiAhdGhpcy5hdEVuZClcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnNldE5leHQoJ2xpbmUtc3RhcnQnKTtcbiAgICAgICAgaWYgKGNoID09PSAnLScgfHwgY2ggPT09ICcuJykge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmF0RW5kICYmICF0aGlzLmhhc0NoYXJzKDQpKVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldE5leHQoJ2xpbmUtc3RhcnQnKTtcbiAgICAgICAgICAgIGNvbnN0IHMgPSB0aGlzLnBlZWsoMyk7XG4gICAgICAgICAgICBpZiAoKHMgPT09ICctLS0nIHx8IHMgPT09ICcuLi4nKSAmJiBpc0VtcHR5KHRoaXMuY2hhckF0KDMpKSkge1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudFZhbHVlID0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSAwO1xuICAgICAgICAgICAgICAgIHJldHVybiBzID09PSAnLS0tJyA/ICdkb2MnIDogJ3N0cmVhbSc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pbmRlbnRWYWx1ZSA9IHlpZWxkKiB0aGlzLnB1c2hTcGFjZXMoZmFsc2UpO1xuICAgICAgICBpZiAodGhpcy5pbmRlbnROZXh0ID4gdGhpcy5pbmRlbnRWYWx1ZSAmJiAhaXNFbXB0eSh0aGlzLmNoYXJBdCgxKSkpXG4gICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSB0aGlzLmluZGVudFZhbHVlO1xuICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VCbG9ja1N0YXJ0KCk7XG4gICAgfVxuICAgICpwYXJzZUJsb2NrU3RhcnQoKSB7XG4gICAgICAgIGNvbnN0IFtjaDAsIGNoMV0gPSB0aGlzLnBlZWsoMik7XG4gICAgICAgIGlmICghY2gxICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnYmxvY2stc3RhcnQnKTtcbiAgICAgICAgaWYgKChjaDAgPT09ICctJyB8fCBjaDAgPT09ICc/JyB8fCBjaDAgPT09ICc6JykgJiYgaXNFbXB0eShjaDEpKSB7XG4gICAgICAgICAgICBjb25zdCBuID0gKHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKSkgKyAoeWllbGQqIHRoaXMucHVzaFNwYWNlcyh0cnVlKSk7XG4gICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSB0aGlzLmluZGVudFZhbHVlICsgMTtcbiAgICAgICAgICAgIHRoaXMuaW5kZW50VmFsdWUgKz0gbjtcbiAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUJsb2NrU3RhcnQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJ2RvYyc7XG4gICAgfVxuICAgICpwYXJzZURvY3VtZW50KCkge1xuICAgICAgICB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICBjb25zdCBsaW5lID0gdGhpcy5nZXRMaW5lKCk7XG4gICAgICAgIGlmIChsaW5lID09PSBudWxsKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnZG9jJyk7XG4gICAgICAgIGxldCBuID0geWllbGQqIHRoaXMucHVzaEluZGljYXRvcnMoKTtcbiAgICAgICAgc3dpdGNoIChsaW5lW25dKSB7XG4gICAgICAgICAgICBjYXNlICcjJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQobGluZS5sZW5ndGggLSBuKTtcbiAgICAgICAgICAgIC8vIGZhbGx0aHJvdWdoXG4gICAgICAgICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoTmV3bGluZSgpO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgICAgICAgICAgY2FzZSAneyc6XG4gICAgICAgICAgICBjYXNlICdbJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbG93S2V5ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5mbG93TGV2ZWwgPSAxO1xuICAgICAgICAgICAgICAgIHJldHVybiAnZmxvdyc7XG4gICAgICAgICAgICBjYXNlICd9JzpcbiAgICAgICAgICAgIGNhc2UgJ10nOlxuICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgYW4gZXJyb3JcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuICdkb2MnO1xuICAgICAgICAgICAgY2FzZSAnKic6XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucHVzaFVudGlsKGlzTm90QW5jaG9yQ2hhcik7XG4gICAgICAgICAgICAgICAgcmV0dXJuICdkb2MnO1xuICAgICAgICAgICAgY2FzZSAnXCInOlxuICAgICAgICAgICAgY2FzZSBcIidcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VRdW90ZWRTY2FsYXIoKTtcbiAgICAgICAgICAgIGNhc2UgJ3wnOlxuICAgICAgICAgICAgY2FzZSAnPic6XG4gICAgICAgICAgICAgICAgbiArPSB5aWVsZCogdGhpcy5wYXJzZUJsb2NrU2NhbGFySGVhZGVyKCk7XG4gICAgICAgICAgICAgICAgbiArPSB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudChsaW5lLmxlbmd0aCAtIG4pO1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hOZXdsaW5lKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlQmxvY2tTY2FsYXIoKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlUGxhaW5TY2FsYXIoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqcGFyc2VGbG93Q29sbGVjdGlvbigpIHtcbiAgICAgICAgbGV0IG5sLCBzcDtcbiAgICAgICAgbGV0IGluZGVudCA9IC0xO1xuICAgICAgICBkbyB7XG4gICAgICAgICAgICBubCA9IHlpZWxkKiB0aGlzLnB1c2hOZXdsaW5lKCk7XG4gICAgICAgICAgICBpZiAobmwgPiAwKSB7XG4gICAgICAgICAgICAgICAgc3AgPSB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKGZhbHNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudFZhbHVlID0gaW5kZW50ID0gc3A7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBzcCA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcCArPSB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICB9IHdoaWxlIChubCArIHNwID4gMCk7XG4gICAgICAgIGNvbnN0IGxpbmUgPSB0aGlzLmdldExpbmUoKTtcbiAgICAgICAgaWYgKGxpbmUgPT09IG51bGwpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXROZXh0KCdmbG93Jyk7XG4gICAgICAgIGlmICgoaW5kZW50ICE9PSAtMSAmJiBpbmRlbnQgPCB0aGlzLmluZGVudE5leHQgJiYgbGluZVswXSAhPT0gJyMnKSB8fFxuICAgICAgICAgICAgKGluZGVudCA9PT0gMCAmJlxuICAgICAgICAgICAgICAgIChsaW5lLnN0YXJ0c1dpdGgoJy0tLScpIHx8IGxpbmUuc3RhcnRzV2l0aCgnLi4uJykpICYmXG4gICAgICAgICAgICAgICAgaXNFbXB0eShsaW5lWzNdKSkpIHtcbiAgICAgICAgICAgIC8vIEFsbG93aW5nIGZvciB0aGUgdGVybWluYWwgXSBvciB9IGF0IHRoZSBzYW1lIChyYXRoZXIgdGhhbiBncmVhdGVyKVxuICAgICAgICAgICAgLy8gaW5kZW50IGxldmVsIGFzIHRoZSBpbml0aWFsIFsgb3IgeyBpcyB0ZWNobmljYWxseSBpbnZhbGlkLCBidXRcbiAgICAgICAgICAgIC8vIGZhaWxpbmcgaGVyZSB3b3VsZCBiZSBzdXJwcmlzaW5nIHRvIHVzZXJzLlxuICAgICAgICAgICAgY29uc3QgYXRGbG93RW5kTWFya2VyID0gaW5kZW50ID09PSB0aGlzLmluZGVudE5leHQgLSAxICYmXG4gICAgICAgICAgICAgICAgdGhpcy5mbG93TGV2ZWwgPT09IDEgJiZcbiAgICAgICAgICAgICAgICAobGluZVswXSA9PT0gJ10nIHx8IGxpbmVbMF0gPT09ICd9Jyk7XG4gICAgICAgICAgICBpZiAoIWF0Rmxvd0VuZE1hcmtlcikge1xuICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgYW4gZXJyb3JcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dMZXZlbCA9IDA7XG4gICAgICAgICAgICAgICAgeWllbGQgY3N0LkZMT1dfRU5EO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxldCBuID0gMDtcbiAgICAgICAgd2hpbGUgKGxpbmVbbl0gPT09ICcsJykge1xuICAgICAgICAgICAgbiArPSB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICBuICs9IHlpZWxkKiB0aGlzLnB1c2hTcGFjZXModHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBuICs9IHlpZWxkKiB0aGlzLnB1c2hJbmRpY2F0b3JzKCk7XG4gICAgICAgIHN3aXRjaCAobGluZVtuXSkge1xuICAgICAgICAgICAgY2FzZSB1bmRlZmluZWQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdmbG93JztcbiAgICAgICAgICAgIGNhc2UgJyMnOlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudChsaW5lLmxlbmd0aCAtIG4pO1xuICAgICAgICAgICAgICAgIHJldHVybiAnZmxvdyc7XG4gICAgICAgICAgICBjYXNlICd7JzpcbiAgICAgICAgICAgIGNhc2UgJ1snOlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dMZXZlbCArPSAxO1xuICAgICAgICAgICAgICAgIHJldHVybiAnZmxvdyc7XG4gICAgICAgICAgICBjYXNlICd9JzpcbiAgICAgICAgICAgIGNhc2UgJ10nOlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuZmxvd0xldmVsIC09IDE7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmxvd0xldmVsID8gJ2Zsb3cnIDogJ2RvYyc7XG4gICAgICAgICAgICBjYXNlICcqJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoVW50aWwoaXNOb3RBbmNob3JDaGFyKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2Zsb3cnO1xuICAgICAgICAgICAgY2FzZSAnXCInOlxuICAgICAgICAgICAgY2FzZSBcIidcIjpcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZVF1b3RlZFNjYWxhcigpO1xuICAgICAgICAgICAgY2FzZSAnOic6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXh0ID0gdGhpcy5jaGFyQXQoMSk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZmxvd0tleSB8fCBpc0VtcHR5KG5leHQpIHx8IG5leHQgPT09ICcsJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucHVzaENvdW50KDEpO1xuICAgICAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2Zsb3cnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGZhbGx0aHJvdWdoXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRoaXMuZmxvd0tleSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZVBsYWluU2NhbGFyKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgKnBhcnNlUXVvdGVkU2NhbGFyKCkge1xuICAgICAgICBjb25zdCBxdW90ZSA9IHRoaXMuY2hhckF0KDApO1xuICAgICAgICBsZXQgZW5kID0gdGhpcy5idWZmZXIuaW5kZXhPZihxdW90ZSwgdGhpcy5wb3MgKyAxKTtcbiAgICAgICAgaWYgKHF1b3RlID09PSBcIidcIikge1xuICAgICAgICAgICAgd2hpbGUgKGVuZCAhPT0gLTEgJiYgdGhpcy5idWZmZXJbZW5kICsgMV0gPT09IFwiJ1wiKVxuICAgICAgICAgICAgICAgIGVuZCA9IHRoaXMuYnVmZmVyLmluZGV4T2YoXCInXCIsIGVuZCArIDIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gZG91YmxlLXF1b3RlXG4gICAgICAgICAgICB3aGlsZSAoZW5kICE9PSAtMSkge1xuICAgICAgICAgICAgICAgIGxldCBuID0gMDtcbiAgICAgICAgICAgICAgICB3aGlsZSAodGhpcy5idWZmZXJbZW5kIC0gMSAtIG5dID09PSAnXFxcXCcpXG4gICAgICAgICAgICAgICAgICAgIG4gKz0gMTtcbiAgICAgICAgICAgICAgICBpZiAobiAlIDIgPT09IDApXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGVuZCA9IHRoaXMuYnVmZmVyLmluZGV4T2YoJ1wiJywgZW5kICsgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gT25seSBsb29raW5nIGZvciBuZXdsaW5lcyB3aXRoaW4gdGhlIHF1b3Rlc1xuICAgICAgICBjb25zdCBxYiA9IHRoaXMuYnVmZmVyLnN1YnN0cmluZygwLCBlbmQpO1xuICAgICAgICBsZXQgbmwgPSBxYi5pbmRleE9mKCdcXG4nLCB0aGlzLnBvcyk7XG4gICAgICAgIGlmIChubCAhPT0gLTEpIHtcbiAgICAgICAgICAgIHdoaWxlIChubCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjcyA9IHRoaXMuY29udGludWVTY2FsYXIobmwgKyAxKTtcbiAgICAgICAgICAgICAgICBpZiAoY3MgPT09IC0xKVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBubCA9IHFiLmluZGV4T2YoJ1xcbicsIGNzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChubCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAvLyB0aGlzIGlzIGFuIGVycm9yIGNhdXNlZCBieSBhbiB1bmV4cGVjdGVkIHVuaW5kZW50XG4gICAgICAgICAgICAgICAgZW5kID0gbmwgLSAocWJbbmwgLSAxXSA9PT0gJ1xccicgPyAyIDogMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVuZCA9PT0gLTEpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5hdEVuZClcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXROZXh0KCdxdW90ZWQtc2NhbGFyJyk7XG4gICAgICAgICAgICBlbmQgPSB0aGlzLmJ1ZmZlci5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgeWllbGQqIHRoaXMucHVzaFRvSW5kZXgoZW5kICsgMSwgZmFsc2UpO1xuICAgICAgICByZXR1cm4gdGhpcy5mbG93TGV2ZWwgPyAnZmxvdycgOiAnZG9jJztcbiAgICB9XG4gICAgKnBhcnNlQmxvY2tTY2FsYXJIZWFkZXIoKSB7XG4gICAgICAgIHRoaXMuYmxvY2tTY2FsYXJJbmRlbnQgPSAtMTtcbiAgICAgICAgdGhpcy5ibG9ja1NjYWxhcktlZXAgPSBmYWxzZTtcbiAgICAgICAgbGV0IGkgPSB0aGlzLnBvcztcbiAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgIGNvbnN0IGNoID0gdGhpcy5idWZmZXJbKytpXTtcbiAgICAgICAgICAgIGlmIChjaCA9PT0gJysnKVxuICAgICAgICAgICAgICAgIHRoaXMuYmxvY2tTY2FsYXJLZWVwID0gdHJ1ZTtcbiAgICAgICAgICAgIGVsc2UgaWYgKGNoID4gJzAnICYmIGNoIDw9ICc5JylcbiAgICAgICAgICAgICAgICB0aGlzLmJsb2NrU2NhbGFySW5kZW50ID0gTnVtYmVyKGNoKSAtIDE7XG4gICAgICAgICAgICBlbHNlIGlmIChjaCAhPT0gJy0nKVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wdXNoVW50aWwoY2ggPT4gaXNFbXB0eShjaCkgfHwgY2ggPT09ICcjJyk7XG4gICAgfVxuICAgICpwYXJzZUJsb2NrU2NhbGFyKCkge1xuICAgICAgICBsZXQgbmwgPSB0aGlzLnBvcyAtIDE7IC8vIG1heSBiZSAtMSBpZiB0aGlzLnBvcyA9PT0gMFxuICAgICAgICBsZXQgaW5kZW50ID0gMDtcbiAgICAgICAgbGV0IGNoO1xuICAgICAgICBsb29wOiBmb3IgKGxldCBpID0gdGhpcy5wb3M7IChjaCA9IHRoaXMuYnVmZmVyW2ldKTsgKytpKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGNoKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnICc6XG4gICAgICAgICAgICAgICAgICAgIGluZGVudCArPSAxO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdcXG4nOlxuICAgICAgICAgICAgICAgICAgICBubCA9IGk7XG4gICAgICAgICAgICAgICAgICAgIGluZGVudCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ1xccic6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuYnVmZmVyW2kgKyAxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFuZXh0ICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnYmxvY2stc2NhbGFyJyk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChuZXh0ID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH0gLy8gZmFsbHRocm91Z2hcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBicmVhayBsb29wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghY2ggJiYgIXRoaXMuYXRFbmQpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXROZXh0KCdibG9jay1zY2FsYXInKTtcbiAgICAgICAgaWYgKGluZGVudCA+PSB0aGlzLmluZGVudE5leHQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmJsb2NrU2NhbGFySW5kZW50ID09PSAtMSlcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSBpbmRlbnQ7XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJsb2NrU2NhbGFySW5kZW50ICsgKHRoaXMuaW5kZW50TmV4dCA9PT0gMCA/IDEgOiB0aGlzLmluZGVudE5leHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZG8ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNzID0gdGhpcy5jb250aW51ZVNjYWxhcihubCArIDEpO1xuICAgICAgICAgICAgICAgIGlmIChjcyA9PT0gLTEpXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIG5sID0gdGhpcy5idWZmZXIuaW5kZXhPZignXFxuJywgY3MpO1xuICAgICAgICAgICAgfSB3aGlsZSAobmwgIT09IC0xKTtcbiAgICAgICAgICAgIGlmIChubCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuYXRFbmQpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldE5leHQoJ2Jsb2NrLXNjYWxhcicpO1xuICAgICAgICAgICAgICAgIG5sID0gdGhpcy5idWZmZXIubGVuZ3RoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIFRyYWlsaW5nIGluc3VmZmljaWVudGx5IGluZGVudGVkIHRhYnMgYXJlIGludmFsaWQuXG4gICAgICAgIC8vIFRvIGNhdGNoIHRoYXQgZHVyaW5nIHBhcnNpbmcsIHdlIGluY2x1ZGUgdGhlbSBpbiB0aGUgYmxvY2sgc2NhbGFyIHZhbHVlLlxuICAgICAgICBsZXQgaSA9IG5sICsgMTtcbiAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlcltpXTtcbiAgICAgICAgd2hpbGUgKGNoID09PSAnICcpXG4gICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgIGlmIChjaCA9PT0gJ1xcdCcpIHtcbiAgICAgICAgICAgIHdoaWxlIChjaCA9PT0gJ1xcdCcgfHwgY2ggPT09ICcgJyB8fCBjaCA9PT0gJ1xccicgfHwgY2ggPT09ICdcXG4nKVxuICAgICAgICAgICAgICAgIGNoID0gdGhpcy5idWZmZXJbKytpXTtcbiAgICAgICAgICAgIG5sID0gaSAtIDE7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoIXRoaXMuYmxvY2tTY2FsYXJLZWVwKSB7XG4gICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgICAgbGV0IGkgPSBubCAtIDE7XG4gICAgICAgICAgICAgICAgbGV0IGNoID0gdGhpcy5idWZmZXJbaV07XG4gICAgICAgICAgICAgICAgaWYgKGNoID09PSAnXFxyJylcbiAgICAgICAgICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclstLWldO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhc3RDaGFyID0gaTsgLy8gRHJvcCB0aGUgbGluZSBpZiBsYXN0IGNoYXIgbm90IG1vcmUgaW5kZW50ZWRcbiAgICAgICAgICAgICAgICB3aGlsZSAoY2ggPT09ICcgJylcbiAgICAgICAgICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclstLWldO1xuICAgICAgICAgICAgICAgIGlmIChjaCA9PT0gJ1xcbicgJiYgaSA+PSB0aGlzLnBvcyAmJiBpICsgMSArIGluZGVudCA+IGxhc3RDaGFyKVxuICAgICAgICAgICAgICAgICAgICBubCA9IGk7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH0gd2hpbGUgKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHlpZWxkIGNzdC5TQ0FMQVI7XG4gICAgICAgIHlpZWxkKiB0aGlzLnB1c2hUb0luZGV4KG5sICsgMSwgdHJ1ZSk7XG4gICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgIH1cbiAgICAqcGFyc2VQbGFpblNjYWxhcigpIHtcbiAgICAgICAgY29uc3QgaW5GbG93ID0gdGhpcy5mbG93TGV2ZWwgPiAwO1xuICAgICAgICBsZXQgZW5kID0gdGhpcy5wb3MgLSAxO1xuICAgICAgICBsZXQgaSA9IHRoaXMucG9zIC0gMTtcbiAgICAgICAgbGV0IGNoO1xuICAgICAgICB3aGlsZSAoKGNoID0gdGhpcy5idWZmZXJbKytpXSkpIHtcbiAgICAgICAgICAgIGlmIChjaCA9PT0gJzonKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuYnVmZmVyW2kgKyAxXTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFbXB0eShuZXh0KSB8fCAoaW5GbG93ICYmIGZsb3dJbmRpY2F0b3JDaGFycy5oYXMobmV4dCkpKVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBlbmQgPSBpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaXNFbXB0eShjaCkpIHtcbiAgICAgICAgICAgICAgICBsZXQgbmV4dCA9IHRoaXMuYnVmZmVyW2kgKyAxXTtcbiAgICAgICAgICAgICAgICBpZiAoY2ggPT09ICdcXHInKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChuZXh0ID09PSAnXFxuJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2ggPSAnXFxuJztcbiAgICAgICAgICAgICAgICAgICAgICAgIG5leHQgPSB0aGlzLmJ1ZmZlcltpICsgMV07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgZW5kID0gaTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG5leHQgPT09ICcjJyB8fCAoaW5GbG93ICYmIGZsb3dJbmRpY2F0b3JDaGFycy5oYXMobmV4dCkpKVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBpZiAoY2ggPT09ICdcXG4nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNzID0gdGhpcy5jb250aW51ZVNjYWxhcihpICsgMSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjcyA9PT0gLTEpXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgaSA9IE1hdGgubWF4KGksIGNzIC0gMik7IC8vIHRvIGFkdmFuY2UsIGJ1dCBzdGlsbCBhY2NvdW50IGZvciAnICMnXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKGluRmxvdyAmJiBmbG93SW5kaWNhdG9yQ2hhcnMuaGFzKGNoKSlcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZW5kID0gaTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWNoICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgncGxhaW4tc2NhbGFyJyk7XG4gICAgICAgIHlpZWxkIGNzdC5TQ0FMQVI7XG4gICAgICAgIHlpZWxkKiB0aGlzLnB1c2hUb0luZGV4KGVuZCArIDEsIHRydWUpO1xuICAgICAgICByZXR1cm4gaW5GbG93ID8gJ2Zsb3cnIDogJ2RvYyc7XG4gICAgfVxuICAgICpwdXNoQ291bnQobikge1xuICAgICAgICBpZiAobiA+IDApIHtcbiAgICAgICAgICAgIHlpZWxkIHRoaXMuYnVmZmVyLnN1YnN0cih0aGlzLnBvcywgbik7XG4gICAgICAgICAgICB0aGlzLnBvcyArPSBuO1xuICAgICAgICAgICAgcmV0dXJuIG47XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgICpwdXNoVG9JbmRleChpLCBhbGxvd0VtcHR5KSB7XG4gICAgICAgIGNvbnN0IHMgPSB0aGlzLmJ1ZmZlci5zbGljZSh0aGlzLnBvcywgaSk7XG4gICAgICAgIGlmIChzKSB7XG4gICAgICAgICAgICB5aWVsZCBzO1xuICAgICAgICAgICAgdGhpcy5wb3MgKz0gcy5sZW5ndGg7XG4gICAgICAgICAgICByZXR1cm4gcy5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYWxsb3dFbXB0eSlcbiAgICAgICAgICAgIHlpZWxkICcnO1xuICAgICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgKnB1c2hJbmRpY2F0b3JzKCkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMuY2hhckF0KDApKSB7XG4gICAgICAgICAgICBjYXNlICchJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gKCh5aWVsZCogdGhpcy5wdXNoVGFnKCkpICtcbiAgICAgICAgICAgICAgICAgICAgKHlpZWxkKiB0aGlzLnB1c2hTcGFjZXModHJ1ZSkpICtcbiAgICAgICAgICAgICAgICAgICAgKHlpZWxkKiB0aGlzLnB1c2hJbmRpY2F0b3JzKCkpKTtcbiAgICAgICAgICAgIGNhc2UgJyYnOlxuICAgICAgICAgICAgICAgIHJldHVybiAoKHlpZWxkKiB0aGlzLnB1c2hVbnRpbChpc05vdEFuY2hvckNoYXIpKSArXG4gICAgICAgICAgICAgICAgICAgICh5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpKSArXG4gICAgICAgICAgICAgICAgICAgICh5aWVsZCogdGhpcy5wdXNoSW5kaWNhdG9ycygpKSk7XG4gICAgICAgICAgICBjYXNlICctJzogLy8gdGhpcyBpcyBhbiBlcnJvclxuICAgICAgICAgICAgY2FzZSAnPyc6IC8vIHRoaXMgaXMgYW4gZXJyb3Igb3V0c2lkZSBmbG93IGNvbGxlY3Rpb25zXG4gICAgICAgICAgICBjYXNlICc6Jzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluRmxvdyA9IHRoaXMuZmxvd0xldmVsID4gMDtcbiAgICAgICAgICAgICAgICBjb25zdCBjaDEgPSB0aGlzLmNoYXJBdCgxKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFbXB0eShjaDEpIHx8IChpbkZsb3cgJiYgZmxvd0luZGljYXRvckNoYXJzLmhhcyhjaDEpKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWluRmxvdylcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5kZW50TmV4dCA9IHRoaXMuaW5kZW50VmFsdWUgKyAxO1xuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh0aGlzLmZsb3dLZXkpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgoeWllbGQqIHRoaXMucHVzaENvdW50KDEpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAoeWllbGQqIHRoaXMucHVzaFNwYWNlcyh0cnVlKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgKHlpZWxkKiB0aGlzLnB1c2hJbmRpY2F0b3JzKCkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgICpwdXNoVGFnKCkge1xuICAgICAgICBpZiAodGhpcy5jaGFyQXQoMSkgPT09ICc8Jykge1xuICAgICAgICAgICAgbGV0IGkgPSB0aGlzLnBvcyArIDI7XG4gICAgICAgICAgICBsZXQgY2ggPSB0aGlzLmJ1ZmZlcltpXTtcbiAgICAgICAgICAgIHdoaWxlICghaXNFbXB0eShjaCkgJiYgY2ggIT09ICc+JylcbiAgICAgICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucHVzaFRvSW5kZXgoY2ggPT09ICc+JyA/IGkgKyAxIDogaSwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGV0IGkgPSB0aGlzLnBvcyArIDE7XG4gICAgICAgICAgICBsZXQgY2ggPSB0aGlzLmJ1ZmZlcltpXTtcbiAgICAgICAgICAgIHdoaWxlIChjaCkge1xuICAgICAgICAgICAgICAgIGlmICh0YWdDaGFycy5oYXMoY2gpKVxuICAgICAgICAgICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2ggPT09ICclJyAmJlxuICAgICAgICAgICAgICAgICAgICBoZXhEaWdpdHMuaGFzKHRoaXMuYnVmZmVyW2kgKyAxXSkgJiZcbiAgICAgICAgICAgICAgICAgICAgaGV4RGlnaXRzLmhhcyh0aGlzLmJ1ZmZlcltpICsgMl0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoID0gdGhpcy5idWZmZXJbKGkgKz0gMyldO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnB1c2hUb0luZGV4KGksIGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqcHVzaE5ld2xpbmUoKSB7XG4gICAgICAgIGNvbnN0IGNoID0gdGhpcy5idWZmZXJbdGhpcy5wb3NdO1xuICAgICAgICBpZiAoY2ggPT09ICdcXG4nKVxuICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKTtcbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICdcXHInICYmIHRoaXMuY2hhckF0KDEpID09PSAnXFxuJylcbiAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wdXNoQ291bnQoMik7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICAqcHVzaFNwYWNlcyhhbGxvd1RhYnMpIHtcbiAgICAgICAgbGV0IGkgPSB0aGlzLnBvcyAtIDE7XG4gICAgICAgIGxldCBjaDtcbiAgICAgICAgZG8ge1xuICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclsrK2ldO1xuICAgICAgICB9IHdoaWxlIChjaCA9PT0gJyAnIHx8IChhbGxvd1RhYnMgJiYgY2ggPT09ICdcXHQnKSk7XG4gICAgICAgIGNvbnN0IG4gPSBpIC0gdGhpcy5wb3M7XG4gICAgICAgIGlmIChuID4gMCkge1xuICAgICAgICAgICAgeWllbGQgdGhpcy5idWZmZXIuc3Vic3RyKHRoaXMucG9zLCBuKTtcbiAgICAgICAgICAgIHRoaXMucG9zID0gaTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbjtcbiAgICB9XG4gICAgKnB1c2hVbnRpbCh0ZXN0KSB7XG4gICAgICAgIGxldCBpID0gdGhpcy5wb3M7XG4gICAgICAgIGxldCBjaCA9IHRoaXMuYnVmZmVyW2ldO1xuICAgICAgICB3aGlsZSAoIXRlc3QoY2gpKVxuICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclsrK2ldO1xuICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucHVzaFRvSW5kZXgoaSwgZmFsc2UpO1xuICAgIH1cbn1cblxuZXhwb3J0cy5MZXhlciA9IExleGVyO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBUcmFja3MgbmV3bGluZXMgZHVyaW5nIHBhcnNpbmcgaW4gb3JkZXIgdG8gcHJvdmlkZSBhbiBlZmZpY2llbnQgQVBJIGZvclxuICogZGV0ZXJtaW5pbmcgdGhlIG9uZS1pbmRleGVkIGB7IGxpbmUsIGNvbCB9YCBwb3NpdGlvbiBmb3IgYW55IG9mZnNldFxuICogd2l0aGluIHRoZSBpbnB1dC5cbiAqL1xuY2xhc3MgTGluZUNvdW50ZXIge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmxpbmVTdGFydHMgPSBbXTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFNob3VsZCBiZSBjYWxsZWQgaW4gYXNjZW5kaW5nIG9yZGVyLiBPdGhlcndpc2UsIGNhbGxcbiAgICAgICAgICogYGxpbmVDb3VudGVyLmxpbmVTdGFydHMuc29ydCgpYCBiZWZvcmUgY2FsbGluZyBgbGluZVBvcygpYC5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuYWRkTmV3TGluZSA9IChvZmZzZXQpID0+IHRoaXMubGluZVN0YXJ0cy5wdXNoKG9mZnNldCk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBQZXJmb3JtcyBhIGJpbmFyeSBzZWFyY2ggYW5kIHJldHVybnMgdGhlIDEtaW5kZXhlZCB7IGxpbmUsIGNvbCB9XG4gICAgICAgICAqIHBvc2l0aW9uIG9mIGBvZmZzZXRgLiBJZiBgbGluZSA9PT0gMGAsIGBhZGROZXdMaW5lYCBoYXMgbmV2ZXIgYmVlblxuICAgICAgICAgKiBjYWxsZWQgb3IgYG9mZnNldGAgaXMgYmVmb3JlIHRoZSBmaXJzdCBrbm93biBuZXdsaW5lLlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5saW5lUG9zID0gKG9mZnNldCkgPT4ge1xuICAgICAgICAgICAgbGV0IGxvdyA9IDA7XG4gICAgICAgICAgICBsZXQgaGlnaCA9IHRoaXMubGluZVN0YXJ0cy5sZW5ndGg7XG4gICAgICAgICAgICB3aGlsZSAobG93IDwgaGlnaCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1pZCA9IChsb3cgKyBoaWdoKSA+PiAxOyAvLyBNYXRoLmZsb29yKChsb3cgKyBoaWdoKSAvIDIpXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubGluZVN0YXJ0c1ttaWRdIDwgb2Zmc2V0KVxuICAgICAgICAgICAgICAgICAgICBsb3cgPSBtaWQgKyAxO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgaGlnaCA9IG1pZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmxpbmVTdGFydHNbbG93XSA9PT0gb2Zmc2V0KVxuICAgICAgICAgICAgICAgIHJldHVybiB7IGxpbmU6IGxvdyArIDEsIGNvbDogMSB9O1xuICAgICAgICAgICAgaWYgKGxvdyA9PT0gMClcbiAgICAgICAgICAgICAgICByZXR1cm4geyBsaW5lOiAwLCBjb2w6IG9mZnNldCB9O1xuICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSB0aGlzLmxpbmVTdGFydHNbbG93IC0gMV07XG4gICAgICAgICAgICByZXR1cm4geyBsaW5lOiBsb3csIGNvbDogb2Zmc2V0IC0gc3RhcnQgKyAxIH07XG4gICAgICAgIH07XG4gICAgfVxufVxuXG5leHBvcnRzLkxpbmVDb3VudGVyID0gTGluZUNvdW50ZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbm9kZV9wcm9jZXNzID0gcmVxdWlyZSgncHJvY2VzcycpO1xudmFyIGNzdCA9IHJlcXVpcmUoJy4vY3N0LmpzJyk7XG52YXIgbGV4ZXIgPSByZXF1aXJlKCcuL2xleGVyLmpzJyk7XG5cbmZ1bmN0aW9uIGluY2x1ZGVzVG9rZW4obGlzdCwgdHlwZSkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7ICsraSlcbiAgICAgICAgaWYgKGxpc3RbaV0udHlwZSA9PT0gdHlwZSlcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgIHJldHVybiBmYWxzZTtcbn1cbmZ1bmN0aW9uIGZpbmROb25FbXB0eUluZGV4KGxpc3QpIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgc3dpdGNoIChsaXN0W2ldLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NwYWNlJzpcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiAtMTtcbn1cbmZ1bmN0aW9uIGlzRmxvd1Rva2VuKHRva2VuKSB7XG4gICAgc3dpdGNoICh0b2tlbj8udHlwZSkge1xuICAgICAgICBjYXNlICdhbGlhcyc6XG4gICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgY2FzZSAnZG91YmxlLXF1b3RlZC1zY2FsYXInOlxuICAgICAgICBjYXNlICdmbG93LWNvbGxlY3Rpb24nOlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2V0UHJldlByb3BzKHBhcmVudCkge1xuICAgIHN3aXRjaCAocGFyZW50LnR5cGUpIHtcbiAgICAgICAgY2FzZSAnZG9jdW1lbnQnOlxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudC5zdGFydDtcbiAgICAgICAgY2FzZSAnYmxvY2stbWFwJzoge1xuICAgICAgICAgICAgY29uc3QgaXQgPSBwYXJlbnQuaXRlbXNbcGFyZW50Lml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgcmV0dXJuIGl0LnNlcCA/PyBpdC5zdGFydDtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdibG9jay1zZXEnOlxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudC5pdGVtc1twYXJlbnQuaXRlbXMubGVuZ3RoIC0gMV0uc3RhcnQ7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgfVxufVxuLyoqIE5vdGU6IE1heSBtb2RpZnkgaW5wdXQgYXJyYXkgKi9cbmZ1bmN0aW9uIGdldEZpcnN0S2V5U3RhcnRQcm9wcyhwcmV2KSB7XG4gICAgaWYgKHByZXYubGVuZ3RoID09PSAwKVxuICAgICAgICByZXR1cm4gW107XG4gICAgbGV0IGkgPSBwcmV2Lmxlbmd0aDtcbiAgICBsb29wOiB3aGlsZSAoLS1pID49IDApIHtcbiAgICAgICAgc3dpdGNoIChwcmV2W2ldLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1zdGFydCc6XG4gICAgICAgICAgICBjYXNlICdleHBsaWNpdC1rZXktaW5kJzpcbiAgICAgICAgICAgIGNhc2UgJ21hcC12YWx1ZS1pbmQnOlxuICAgICAgICAgICAgY2FzZSAnc2VxLWl0ZW0taW5kJzpcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIGJyZWFrIGxvb3A7XG4gICAgICAgIH1cbiAgICB9XG4gICAgd2hpbGUgKHByZXZbKytpXT8udHlwZSA9PT0gJ3NwYWNlJykge1xuICAgICAgICAvKiBsb29wICovXG4gICAgfVxuICAgIHJldHVybiBwcmV2LnNwbGljZShpLCBwcmV2Lmxlbmd0aCk7XG59XG5mdW5jdGlvbiBmaXhGbG93U2VxSXRlbXMoZmMpIHtcbiAgICBpZiAoZmMuc3RhcnQudHlwZSA9PT0gJ2Zsb3ctc2VxLXN0YXJ0Jykge1xuICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIGZjLml0ZW1zKSB7XG4gICAgICAgICAgICBpZiAoaXQuc2VwICYmXG4gICAgICAgICAgICAgICAgIWl0LnZhbHVlICYmXG4gICAgICAgICAgICAgICAgIWluY2x1ZGVzVG9rZW4oaXQuc3RhcnQsICdleHBsaWNpdC1rZXktaW5kJykgJiZcbiAgICAgICAgICAgICAgICAhaW5jbHVkZXNUb2tlbihpdC5zZXAsICdtYXAtdmFsdWUtaW5kJykpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXQua2V5KVxuICAgICAgICAgICAgICAgICAgICBpdC52YWx1ZSA9IGl0LmtleTtcbiAgICAgICAgICAgICAgICBkZWxldGUgaXQua2V5O1xuICAgICAgICAgICAgICAgIGlmIChpc0Zsb3dUb2tlbihpdC52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlLmVuZClcbiAgICAgICAgICAgICAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KGl0LnZhbHVlLmVuZCwgaXQuc2VwKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgaXQudmFsdWUuZW5kID0gaXQuc2VwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KGl0LnN0YXJ0LCBpdC5zZXApO1xuICAgICAgICAgICAgICAgIGRlbGV0ZSBpdC5zZXA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIEEgWUFNTCBjb25jcmV0ZSBzeW50YXggdHJlZSAoQ1NUKSBwYXJzZXJcbiAqXG4gKiBgYGB0c1xuICogY29uc3Qgc3JjOiBzdHJpbmcgPSAuLi5cbiAqIGZvciAoY29uc3QgdG9rZW4gb2YgbmV3IFBhcnNlcigpLnBhcnNlKHNyYykpIHtcbiAqICAgLy8gdG9rZW46IFRva2VuXG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBUbyB1c2UgdGhlIHBhcnNlciB3aXRoIGEgdXNlci1wcm92aWRlZCBsZXhlcjpcbiAqXG4gKiBgYGB0c1xuICogZnVuY3Rpb24qIHBhcnNlKHNvdXJjZTogc3RyaW5nLCBsZXhlcjogTGV4ZXIpIHtcbiAqICAgY29uc3QgcGFyc2VyID0gbmV3IFBhcnNlcigpXG4gKiAgIGZvciAoY29uc3QgbGV4ZW1lIG9mIGxleGVyLmxleChzb3VyY2UpKVxuICogICAgIHlpZWxkKiBwYXJzZXIubmV4dChsZXhlbWUpXG4gKiAgIHlpZWxkKiBwYXJzZXIuZW5kKClcbiAqIH1cbiAqXG4gKiBjb25zdCBzcmM6IHN0cmluZyA9IC4uLlxuICogY29uc3QgbGV4ZXIgPSBuZXcgTGV4ZXIoKVxuICogZm9yIChjb25zdCB0b2tlbiBvZiBwYXJzZShzcmMsIGxleGVyKSkge1xuICogICAvLyB0b2tlbjogVG9rZW5cbiAqIH1cbiAqIGBgYFxuICovXG5jbGFzcyBQYXJzZXIge1xuICAgIC8qKlxuICAgICAqIEBwYXJhbSBvbk5ld0xpbmUgLSBJZiBkZWZpbmVkLCBjYWxsZWQgc2VwYXJhdGVseSB3aXRoIHRoZSBzdGFydCBwb3NpdGlvbiBvZlxuICAgICAqICAgZWFjaCBuZXcgbGluZSAoaW4gYHBhcnNlKClgLCBpbmNsdWRpbmcgdGhlIHN0YXJ0IG9mIGlucHV0KS5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3Rvcihvbk5ld0xpbmUpIHtcbiAgICAgICAgLyoqIElmIHRydWUsIHNwYWNlIGFuZCBzZXF1ZW5jZSBpbmRpY2F0b3JzIGNvdW50IGFzIGluZGVudGF0aW9uICovXG4gICAgICAgIHRoaXMuYXROZXdMaW5lID0gdHJ1ZTtcbiAgICAgICAgLyoqIElmIHRydWUsIG5leHQgdG9rZW4gaXMgYSBzY2FsYXIgdmFsdWUgKi9cbiAgICAgICAgdGhpcy5hdFNjYWxhciA9IGZhbHNlO1xuICAgICAgICAvKiogQ3VycmVudCBpbmRlbnRhdGlvbiBsZXZlbCAqL1xuICAgICAgICB0aGlzLmluZGVudCA9IDA7XG4gICAgICAgIC8qKiBDdXJyZW50IG9mZnNldCBzaW5jZSB0aGUgc3RhcnQgb2YgcGFyc2luZyAqL1xuICAgICAgICB0aGlzLm9mZnNldCA9IDA7XG4gICAgICAgIC8qKiBPbiB0aGUgc2FtZSBsaW5lIHdpdGggYSBibG9jayBtYXAga2V5ICovXG4gICAgICAgIHRoaXMub25LZXlMaW5lID0gZmFsc2U7XG4gICAgICAgIC8qKiBUb3AgaW5kaWNhdGVzIHRoZSBub2RlIHRoYXQncyBjdXJyZW50bHkgYmVpbmcgYnVpbHQgKi9cbiAgICAgICAgdGhpcy5zdGFjayA9IFtdO1xuICAgICAgICAvKiogVGhlIHNvdXJjZSBvZiB0aGUgY3VycmVudCB0b2tlbiwgc2V0IGluIHBhcnNlKCkgKi9cbiAgICAgICAgdGhpcy5zb3VyY2UgPSAnJztcbiAgICAgICAgLyoqIFRoZSB0eXBlIG9mIHRoZSBjdXJyZW50IHRva2VuLCBzZXQgaW4gcGFyc2UoKSAqL1xuICAgICAgICB0aGlzLnR5cGUgPSAnJztcbiAgICAgICAgLy8gTXVzdCBiZSBkZWZpbmVkIGFmdGVyIGBuZXh0KClgXG4gICAgICAgIHRoaXMubGV4ZXIgPSBuZXcgbGV4ZXIuTGV4ZXIoKTtcbiAgICAgICAgdGhpcy5vbk5ld0xpbmUgPSBvbk5ld0xpbmU7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFBhcnNlIGBzb3VyY2VgIGFzIGEgWUFNTCBzdHJlYW0uXG4gICAgICogSWYgYGluY29tcGxldGVgLCBhIHBhcnQgb2YgdGhlIGxhc3QgbGluZSBtYXkgYmUgbGVmdCBhcyBhIGJ1ZmZlciBmb3IgdGhlIG5leHQgY2FsbC5cbiAgICAgKlxuICAgICAqIEVycm9ycyBhcmUgbm90IHRocm93biwgYnV0IHlpZWxkZWQgYXMgYHsgdHlwZTogJ2Vycm9yJywgbWVzc2FnZSB9YCB0b2tlbnMuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBIGdlbmVyYXRvciBvZiB0b2tlbnMgcmVwcmVzZW50aW5nIGVhY2ggZGlyZWN0aXZlLCBkb2N1bWVudCwgYW5kIG90aGVyIHN0cnVjdHVyZS5cbiAgICAgKi9cbiAgICAqcGFyc2Uoc291cmNlLCBpbmNvbXBsZXRlID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lICYmIHRoaXMub2Zmc2V0ID09PSAwKVxuICAgICAgICAgICAgdGhpcy5vbk5ld0xpbmUoMCk7XG4gICAgICAgIGZvciAoY29uc3QgbGV4ZW1lIG9mIHRoaXMubGV4ZXIubGV4KHNvdXJjZSwgaW5jb21wbGV0ZSkpXG4gICAgICAgICAgICB5aWVsZCogdGhpcy5uZXh0KGxleGVtZSk7XG4gICAgICAgIGlmICghaW5jb21wbGV0ZSlcbiAgICAgICAgICAgIHlpZWxkKiB0aGlzLmVuZCgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBZHZhbmNlIHRoZSBwYXJzZXIgYnkgdGhlIGBzb3VyY2VgIG9mIG9uZSBsZXhpY2FsIHRva2VuLlxuICAgICAqL1xuICAgICpuZXh0KHNvdXJjZSkge1xuICAgICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcbiAgICAgICAgaWYgKG5vZGVfcHJvY2Vzcy5lbnYuTE9HX1RPS0VOUylcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCd8JywgY3N0LnByZXR0eVRva2VuKHNvdXJjZSkpO1xuICAgICAgICBpZiAodGhpcy5hdFNjYWxhcikge1xuICAgICAgICAgICAgdGhpcy5hdFNjYWxhciA9IGZhbHNlO1xuICAgICAgICAgICAgeWllbGQqIHRoaXMuc3RlcCgpO1xuICAgICAgICAgICAgdGhpcy5vZmZzZXQgKz0gc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB0eXBlID0gY3N0LnRva2VuVHlwZShzb3VyY2UpO1xuICAgICAgICBpZiAoIXR5cGUpIHtcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgTm90IGEgWUFNTCB0b2tlbjogJHtzb3VyY2V9YDtcbiAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCh7IHR5cGU6ICdlcnJvcicsIG9mZnNldDogdGhpcy5vZmZzZXQsIG1lc3NhZ2UsIHNvdXJjZSB9KTtcbiAgICAgICAgICAgIHRoaXMub2Zmc2V0ICs9IHNvdXJjZS5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodHlwZSA9PT0gJ3NjYWxhcicpIHtcbiAgICAgICAgICAgIHRoaXMuYXROZXdMaW5lID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmF0U2NhbGFyID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMudHlwZSA9ICdzY2FsYXInO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICAgICAgICAgIHlpZWxkKiB0aGlzLnN0ZXAoKTtcbiAgICAgICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmF0TmV3TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5kZW50ID0gMDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lKVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbk5ld0xpbmUodGhpcy5vZmZzZXQgKyBzb3VyY2UubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5hdE5ld0xpbmUgJiYgc291cmNlWzBdID09PSAnICcpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluZGVudCArPSBzb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdleHBsaWNpdC1rZXktaW5kJzpcbiAgICAgICAgICAgICAgICBjYXNlICdtYXAtdmFsdWUtaW5kJzpcbiAgICAgICAgICAgICAgICBjYXNlICdzZXEtaXRlbS1pbmQnOlxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5hdE5ld0xpbmUpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluZGVudCArPSBzb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdkb2MtbW9kZSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZmxvdy1lcnJvci1lbmQnOlxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdE5ld0xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMub2Zmc2V0ICs9IHNvdXJjZS5sZW5ndGg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqIENhbGwgYXQgZW5kIG9mIGlucHV0IHRvIHB1c2ggb3V0IGFueSByZW1haW5pbmcgY29uc3RydWN0aW9ucyAqL1xuICAgICplbmQoKSB7XG4gICAgICAgIHdoaWxlICh0aGlzLnN0YWNrLmxlbmd0aCA+IDApXG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICB9XG4gICAgZ2V0IHNvdXJjZVRva2VuKCkge1xuICAgICAgICBjb25zdCBzdCA9IHtcbiAgICAgICAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICBpbmRlbnQ6IHRoaXMuaW5kZW50LFxuICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZVxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gc3Q7XG4gICAgfVxuICAgICpzdGVwKCkge1xuICAgICAgICBjb25zdCB0b3AgPSB0aGlzLnBlZWsoMSk7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdkb2MtZW5kJyAmJiAoIXRvcCB8fCB0b3AudHlwZSAhPT0gJ2RvYy1lbmQnKSkge1xuICAgICAgICAgICAgd2hpbGUgKHRoaXMuc3RhY2subGVuZ3RoID4gMClcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgICAgIHRoaXMuc3RhY2sucHVzaCh7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2RvYy1lbmQnLFxuICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0b3ApXG4gICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMuc3RyZWFtKCk7XG4gICAgICAgIHN3aXRjaCAodG9wLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2RvY3VtZW50JzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMuZG9jdW1lbnQodG9wKTtcbiAgICAgICAgICAgIGNhc2UgJ2FsaWFzJzpcbiAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdzaW5nbGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnNjYWxhcih0b3ApO1xuICAgICAgICAgICAgY2FzZSAnYmxvY2stc2NhbGFyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMuYmxvY2tTY2FsYXIodG9wKTtcbiAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLW1hcCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLmJsb2NrTWFwKHRvcCk7XG4gICAgICAgICAgICBjYXNlICdibG9jay1zZXEnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5ibG9ja1NlcXVlbmNlKHRvcCk7XG4gICAgICAgICAgICBjYXNlICdmbG93LWNvbGxlY3Rpb24nOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5mbG93Q29sbGVjdGlvbih0b3ApO1xuICAgICAgICAgICAgY2FzZSAnZG9jLWVuZCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLmRvY3VtZW50RW5kKHRvcCk7XG4gICAgICAgIH1cbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgc2hvdWxkIG5vdCBoYXBwZW4gKi9cbiAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgfVxuICAgIHBlZWsobikge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aCAtIG5dO1xuICAgIH1cbiAgICAqcG9wKGVycm9yKSB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gZXJyb3IgPz8gdGhpcy5zdGFjay5wb3AoKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmIHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGlmICghdG9rZW4pIHtcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnVHJpZWQgdG8gcG9wIGFuIGVtcHR5IHN0YWNrJztcbiAgICAgICAgICAgIHlpZWxkIHsgdHlwZTogJ2Vycm9yJywgb2Zmc2V0OiB0aGlzLm9mZnNldCwgc291cmNlOiAnJywgbWVzc2FnZSB9O1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHRoaXMuc3RhY2subGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB5aWVsZCB0b2tlbjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHRvcCA9IHRoaXMucGVlaygxKTtcbiAgICAgICAgICAgIGlmICh0b2tlbi50eXBlID09PSAnYmxvY2stc2NhbGFyJykge1xuICAgICAgICAgICAgICAgIC8vIEJsb2NrIHNjYWxhcnMgdXNlIHRoZWlyIHBhcmVudCByYXRoZXIgdGhhbiBoZWFkZXIgaW5kZW50XG4gICAgICAgICAgICAgICAgdG9rZW4uaW5kZW50ID0gJ2luZGVudCcgaW4gdG9wID8gdG9wLmluZGVudCA6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0b2tlbi50eXBlID09PSAnZmxvdy1jb2xsZWN0aW9uJyAmJiB0b3AudHlwZSA9PT0gJ2RvY3VtZW50Jykge1xuICAgICAgICAgICAgICAgIC8vIElnbm9yZSBhbGwgaW5kZW50IGZvciB0b3AtbGV2ZWwgZmxvdyBjb2xsZWN0aW9uc1xuICAgICAgICAgICAgICAgIHRva2VuLmluZGVudCA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodG9rZW4udHlwZSA9PT0gJ2Zsb3ctY29sbGVjdGlvbicpXG4gICAgICAgICAgICAgICAgZml4Rmxvd1NlcUl0ZW1zKHRva2VuKTtcbiAgICAgICAgICAgIHN3aXRjaCAodG9wLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdkb2N1bWVudCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcC52YWx1ZSA9IHRva2VuO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdibG9jay1zY2FsYXInOlxuICAgICAgICAgICAgICAgICAgICB0b3AucHJvcHMucHVzaCh0b2tlbik7IC8vIGVycm9yXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLW1hcCc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXQgPSB0b3AuaXRlbXNbdG9wLml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFtdLCBrZXk6IHRva2VuLCBzZXA6IFtdIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbktleUxpbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXQudmFsdWUgPSB0b2tlbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oaXQsIHsga2V5OiB0b2tlbiwgc2VwOiBbXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gIWl0LmV4cGxpY2l0S2V5O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlICdibG9jay1zZXEnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ID0gdG9wLml0ZW1zW3RvcC5pdGVtcy5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wLml0ZW1zLnB1c2goeyBzdGFydDogW10sIHZhbHVlOiB0b2tlbiB9KTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgaXQudmFsdWUgPSB0b2tlbjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgJ2Zsb3ctY29sbGVjdGlvbic6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXQgPSB0b3AuaXRlbXNbdG9wLml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWl0IHx8IGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wLml0ZW1zLnB1c2goeyBzdGFydDogW10sIGtleTogdG9rZW4sIHNlcDogW10gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnZhbHVlID0gdG9rZW47XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oaXQsIHsga2V5OiB0b2tlbiwgc2VwOiBbXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCBzaG91bGQgbm90IGhhcHBlbiAqL1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AodG9rZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCh0b3AudHlwZSA9PT0gJ2RvY3VtZW50JyB8fFxuICAgICAgICAgICAgICAgIHRvcC50eXBlID09PSAnYmxvY2stbWFwJyB8fFxuICAgICAgICAgICAgICAgIHRvcC50eXBlID09PSAnYmxvY2stc2VxJykgJiZcbiAgICAgICAgICAgICAgICAodG9rZW4udHlwZSA9PT0gJ2Jsb2NrLW1hcCcgfHwgdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLXNlcScpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IHRva2VuLml0ZW1zW3Rva2VuLml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgIGlmIChsYXN0ICYmXG4gICAgICAgICAgICAgICAgICAgICFsYXN0LnNlcCAmJlxuICAgICAgICAgICAgICAgICAgICAhbGFzdC52YWx1ZSAmJlxuICAgICAgICAgICAgICAgICAgICBsYXN0LnN0YXJ0Lmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgZmluZE5vbkVtcHR5SW5kZXgobGFzdC5zdGFydCkgPT09IC0xICYmXG4gICAgICAgICAgICAgICAgICAgICh0b2tlbi5pbmRlbnQgPT09IDAgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Quc3RhcnQuZXZlcnkoc3QgPT4gc3QudHlwZSAhPT0gJ2NvbW1lbnQnIHx8IHN0LmluZGVudCA8IHRva2VuLmluZGVudCkpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0b3AudHlwZSA9PT0gJ2RvY3VtZW50JylcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcC5lbmQgPSBsYXN0LnN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3AuaXRlbXMucHVzaCh7IHN0YXJ0OiBsYXN0LnN0YXJ0IH0pO1xuICAgICAgICAgICAgICAgICAgICB0b2tlbi5pdGVtcy5zcGxpY2UoLTEsIDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAqc3RyZWFtKCkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnZGlyZWN0aXZlLWxpbmUnOlxuICAgICAgICAgICAgICAgIHlpZWxkIHsgdHlwZTogJ2RpcmVjdGl2ZScsIG9mZnNldDogdGhpcy5vZmZzZXQsIHNvdXJjZTogdGhpcy5zb3VyY2UgfTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdieXRlLW9yZGVyLW1hcmsnOlxuICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICB5aWVsZCB0aGlzLnNvdXJjZVRva2VuO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1tb2RlJzpcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1zdGFydCc6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkb2MgPSB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdkb2N1bWVudCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBbXVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gJ2RvYy1zdGFydCcpXG4gICAgICAgICAgICAgICAgICAgIGRvYy5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhY2sucHVzaChkb2MpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB5aWVsZCB7XG4gICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgIG1lc3NhZ2U6IGBVbmV4cGVjdGVkICR7dGhpcy50eXBlfSB0b2tlbiBpbiBZQU1MIHN0cmVhbWAsXG4gICAgICAgICAgICBzb3VyY2U6IHRoaXMuc291cmNlXG4gICAgICAgIH07XG4gICAgfVxuICAgICpkb2N1bWVudChkb2MpIHtcbiAgICAgICAgaWYgKGRvYy52YWx1ZSlcbiAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5saW5lRW5kKGRvYyk7XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdkb2Mtc3RhcnQnOiB7XG4gICAgICAgICAgICAgICAgaWYgKGZpbmROb25FbXB0eUluZGV4KGRvYy5zdGFydCkgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5zdGVwKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgZG9jLnN0YXJ0LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnYW5jaG9yJzpcbiAgICAgICAgICAgIGNhc2UgJ3RhZyc6XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIGRvYy5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBidiA9IHRoaXMuc3RhcnRCbG9ja1ZhbHVlKGRvYyk7XG4gICAgICAgIGlmIChidilcbiAgICAgICAgICAgIHRoaXMuc3RhY2sucHVzaChidik7XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgeWllbGQge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBgVW5leHBlY3RlZCAke3RoaXMudHlwZX0gdG9rZW4gaW4gWUFNTCBkb2N1bWVudGAsXG4gICAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqc2NhbGFyKHNjYWxhcikge1xuICAgICAgICBpZiAodGhpcy50eXBlID09PSAnbWFwLXZhbHVlLWluZCcpIHtcbiAgICAgICAgICAgIGNvbnN0IHByZXYgPSBnZXRQcmV2UHJvcHModGhpcy5wZWVrKDIpKTtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gZ2V0Rmlyc3RLZXlTdGFydFByb3BzKHByZXYpO1xuICAgICAgICAgICAgbGV0IHNlcDtcbiAgICAgICAgICAgIGlmIChzY2FsYXIuZW5kKSB7XG4gICAgICAgICAgICAgICAgc2VwID0gc2NhbGFyLmVuZDtcbiAgICAgICAgICAgICAgICBzZXAucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICBkZWxldGUgc2NhbGFyLmVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBzZXAgPSBbdGhpcy5zb3VyY2VUb2tlbl07XG4gICAgICAgICAgICBjb25zdCBtYXAgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiBzY2FsYXIub2Zmc2V0LFxuICAgICAgICAgICAgICAgIGluZGVudDogc2NhbGFyLmluZGVudCxcbiAgICAgICAgICAgICAgICBpdGVtczogW3sgc3RhcnQsIGtleTogc2NhbGFyLCBzZXAgfV1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoIC0gMV0gPSBtYXA7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgeWllbGQqIHRoaXMubGluZUVuZChzY2FsYXIpO1xuICAgIH1cbiAgICAqYmxvY2tTY2FsYXIoc2NhbGFyKSB7XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIHNjYWxhci5wcm9wcy5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICAgICAgc2NhbGFyLnNvdXJjZSA9IHRoaXMuc291cmNlO1xuICAgICAgICAgICAgICAgIC8vIGJsb2NrLXNjYWxhciBzb3VyY2UgaW5jbHVkZXMgdHJhaWxpbmcgbmV3bGluZVxuICAgICAgICAgICAgICAgIHRoaXMuYXROZXdMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudCA9IDA7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBubCA9IHRoaXMuc291cmNlLmluZGV4T2YoJ1xcbicpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKG5sICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uTmV3TGluZSh0aGlzLm9mZnNldCArIG5sKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5sID0gdGhpcy5zb3VyY2UuaW5kZXhPZignXFxuJywgbmwpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnN0ZXAoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqYmxvY2tNYXAobWFwKSB7XG4gICAgICAgIGNvbnN0IGl0ID0gbWFwLml0ZW1zW21hcC5pdGVtcy5sZW5ndGggLSAxXTtcbiAgICAgICAgLy8gaXQuc2VwIGlzIHRydWUtaXNoIGlmIHBhaXIgYWxyZWFkeSBoYXMga2V5IG9yIDogc2VwYXJhdG9yXG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGlmIChpdC52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmQgPSAnZW5kJyBpbiBpdC52YWx1ZSA/IGl0LnZhbHVlLmVuZCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IEFycmF5LmlzQXJyYXkoZW5kKSA/IGVuZFtlbmQubGVuZ3RoIC0gMV0gOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIGlmIChsYXN0Py50eXBlID09PSAnY29tbWVudCcpXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmQ/LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuYXRJbmRlbnRlZENvbW1lbnQoaXQuc3RhcnQsIG1hcC5pbmRlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2ID0gbWFwLml0ZW1zW21hcC5pdGVtcy5sZW5ndGggLSAyXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IHByZXY/LnZhbHVlPy5lbmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShlbmQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZW5kLCBpdC5zdGFydCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpdC5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaW5kZW50ID49IG1hcC5pbmRlbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGF0TWFwSW5kZW50ID0gIXRoaXMub25LZXlMaW5lICYmIHRoaXMuaW5kZW50ID09PSBtYXAuaW5kZW50O1xuICAgICAgICAgICAgY29uc3QgYXROZXh0SXRlbSA9IGF0TWFwSW5kZW50ICYmXG4gICAgICAgICAgICAgICAgKGl0LnNlcCB8fCBpdC5leHBsaWNpdEtleSkgJiZcbiAgICAgICAgICAgICAgICB0aGlzLnR5cGUgIT09ICdzZXEtaXRlbS1pbmQnO1xuICAgICAgICAgICAgLy8gRm9yIGVtcHR5IG5vZGVzLCBhc3NpZ24gbmV3bGluZS1zZXBhcmF0ZWQgbm90IGluZGVudGVkIGVtcHR5IHRva2VucyB0byBmb2xsb3dpbmcgbm9kZVxuICAgICAgICAgICAgbGV0IHN0YXJ0ID0gW107XG4gICAgICAgICAgICBpZiAoYXROZXh0SXRlbSAmJiBpdC5zZXAgJiYgIWl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmwgPSBbXTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0LnNlcC5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdCA9IGl0LnNlcFtpXTtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChzdC50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBubC5wdXNoKGkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0LmluZGVudCA+IG1hcC5pbmRlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5sLmxlbmd0aCA9IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5sLmxlbmd0aCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG5sLmxlbmd0aCA+PSAyKVxuICAgICAgICAgICAgICAgICAgICBzdGFydCA9IGl0LnNlcC5zcGxpY2UobmxbMV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdhbmNob3InOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3RhZyc6XG4gICAgICAgICAgICAgICAgICAgIGlmIChhdE5leHRJdGVtIHx8IGl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goeyBzdGFydCB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpdC5zZXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgY2FzZSAnZXhwbGljaXQta2V5LWluZCc6XG4gICAgICAgICAgICAgICAgICAgIGlmICghaXQuc2VwICYmICFpdC5leHBsaWNpdEtleSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LmV4cGxpY2l0S2V5ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChhdE5leHRJdGVtIHx8IGl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goeyBzdGFydCwgZXhwbGljaXRLZXk6IHRydWUgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdibG9jay1tYXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtczogW3sgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSwgZXhwbGljaXRLZXk6IHRydWUgfV1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNhc2UgJ21hcC12YWx1ZS1pbmQnOlxuICAgICAgICAgICAgICAgICAgICBpZiAoaXQuZXhwbGljaXRLZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluY2x1ZGVzVG9rZW4oaXQuc3RhcnQsICduZXdsaW5lJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihpdCwgeyBrZXk6IG51bGwsIHNlcDogW3RoaXMuc291cmNlVG9rZW5dIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBnZXRGaXJzdEtleVN0YXJ0UHJvcHMoaXQuc3RhcnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBbeyBzdGFydCwga2V5OiBudWxsLCBzZXA6IFt0aGlzLnNvdXJjZVRva2VuXSB9XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpdC52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFtdLCBrZXk6IG51bGwsIHNlcDogW3RoaXMuc291cmNlVG9rZW5dIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaW5jbHVkZXNUb2tlbihpdC5zZXAsICdtYXAtdmFsdWUtaW5kJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stbWFwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0LCBrZXk6IG51bGwsIHNlcDogW3RoaXMuc291cmNlVG9rZW5dIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpc0Zsb3dUb2tlbihpdC5rZXkpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIWluY2x1ZGVzVG9rZW4oaXQuc2VwLCAnbmV3bGluZScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBnZXRGaXJzdEtleVN0YXJ0UHJvcHMoaXQuc3RhcnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9IGl0LmtleTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzZXAgPSBpdC5zZXA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VwLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciB0eXBlIGd1YXJkIGlzIHdyb25nIGhlcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgaXQua2V5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdHlwZSBndWFyZCBpcyB3cm9uZyBoZXJlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGl0LnNlcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stbWFwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0LCBrZXksIHNlcCB9XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoc3RhcnQubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vdCBhY3R1YWxseSBhdCBuZXh0IGl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdC5zZXAgPSBpdC5zZXAuY29uY2F0KHN0YXJ0LCB0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpdC5zZXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGl0LCB7IGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpdC52YWx1ZSB8fCBhdE5leHRJdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goeyBzdGFydCwga2V5OiBudWxsLCBzZXA6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGluY2x1ZGVzVG9rZW4oaXQuc2VwLCAnbWFwLXZhbHVlLWluZCcpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFjay5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGVudDogdGhpcy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBbeyBzdGFydDogW10sIGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2FsaWFzJzpcbiAgICAgICAgICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZnMgPSB0aGlzLmZsb3dTY2FsYXIodGhpcy50eXBlKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGF0TmV4dEl0ZW0gfHwgaXQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQsIGtleTogZnMsIHNlcDogW10gfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goZnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihpdCwgeyBrZXk6IGZzLCBzZXA6IFtdIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbktleUxpbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBidiA9IHRoaXMuc3RhcnRCbG9ja1ZhbHVlKG1hcCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChidikge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJ2LnR5cGUgPT09ICdibG9jay1zZXEnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpdC5leHBsaWNpdEtleSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdC5zZXAgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIWluY2x1ZGVzVG9rZW4oaXQuc2VwLCAnbmV3bGluZScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdVbmV4cGVjdGVkIGJsb2NrLXNlcS1pbmQgb24gc2FtZSBsaW5lIHdpdGgga2V5JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChhdE1hcEluZGVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goYnYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICB5aWVsZCogdGhpcy5zdGVwKCk7XG4gICAgfVxuICAgICpibG9ja1NlcXVlbmNlKHNlcSkge1xuICAgICAgICBjb25zdCBpdCA9IHNlcS5pdGVtc1tzZXEuaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZW5kID0gJ2VuZCcgaW4gaXQudmFsdWUgPyBpdC52YWx1ZS5lbmQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxhc3QgPSBBcnJheS5pc0FycmF5KGVuZCkgPyBlbmRbZW5kLmxlbmd0aCAtIDFdIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICBpZiAobGFzdD8udHlwZSA9PT0gJ2NvbW1lbnQnKVxuICAgICAgICAgICAgICAgICAgICAgICAgZW5kPy5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXEuaXRlbXMucHVzaCh7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUpXG4gICAgICAgICAgICAgICAgICAgIHNlcS5pdGVtcy5wdXNoKHsgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuYXRJbmRlbnRlZENvbW1lbnQoaXQuc3RhcnQsIHNlcS5pbmRlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2ID0gc2VxLml0ZW1zW3NlcS5pdGVtcy5sZW5ndGggLSAyXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IHByZXY/LnZhbHVlPy5lbmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShlbmQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZW5kLCBpdC5zdGFydCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VxLml0ZW1zLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpdC5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdhbmNob3InOlxuICAgICAgICAgICAgY2FzZSAndGFnJzpcbiAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUgfHwgdGhpcy5pbmRlbnQgPD0gc2VxLmluZGVudClcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdzZXEtaXRlbS1pbmQnOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmluZGVudCAhPT0gc2VxLmluZGVudClcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlIHx8IGluY2x1ZGVzVG9rZW4oaXQuc3RhcnQsICdzZXEtaXRlbS1pbmQnKSlcbiAgICAgICAgICAgICAgICAgICAgc2VxLml0ZW1zLnB1c2goeyBzdGFydDogW3RoaXMuc291cmNlVG9rZW5dIH0pO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaW5kZW50ID4gc2VxLmluZGVudCkge1xuICAgICAgICAgICAgY29uc3QgYnYgPSB0aGlzLnN0YXJ0QmxvY2tWYWx1ZShzZXEpO1xuICAgICAgICAgICAgaWYgKGJ2KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGFjay5wdXNoKGJ2KTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgIHlpZWxkKiB0aGlzLnN0ZXAoKTtcbiAgICB9XG4gICAgKmZsb3dDb2xsZWN0aW9uKGZjKSB7XG4gICAgICAgIGNvbnN0IGl0ID0gZmMuaXRlbXNbZmMuaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdmbG93LWVycm9yLWVuZCcpIHtcbiAgICAgICAgICAgIGxldCB0b3A7XG4gICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgICAgICAgICAgdG9wID0gdGhpcy5wZWVrKDEpO1xuICAgICAgICAgICAgfSB3aGlsZSAodG9wICYmIHRvcC50eXBlID09PSAnZmxvdy1jb2xsZWN0aW9uJyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZmMuZW5kLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdjb21tYSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZXhwbGljaXQta2V5LWluZCc6XG4gICAgICAgICAgICAgICAgICAgIGlmICghaXQgfHwgaXQuc2VwKVxuICAgICAgICAgICAgICAgICAgICAgICAgZmMuaXRlbXMucHVzaCh7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnN0YXJ0LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICBjYXNlICdtYXAtdmFsdWUtaW5kJzpcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpdCB8fCBpdC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGZjLml0ZW1zLnB1c2goeyBzdGFydDogW10sIGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGl0LCB7IGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnYW5jaG9yJzpcbiAgICAgICAgICAgICAgICBjYXNlICd0YWcnOlxuICAgICAgICAgICAgICAgICAgICBpZiAoIWl0IHx8IGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgZmMuaXRlbXMucHVzaCh7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBpdC5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgY2FzZSAnYWxpYXMnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICAgICAgY2FzZSAnc2luZ2xlLXF1b3RlZC1zY2FsYXInOlxuICAgICAgICAgICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzoge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmcyA9IHRoaXMuZmxvd1NjYWxhcih0aGlzLnR5cGUpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWl0IHx8IGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgZmMuaXRlbXMucHVzaCh7IHN0YXJ0OiBbXSwga2V5OiBmcywgc2VwOiBbXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFjay5wdXNoKGZzKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihpdCwgeyBrZXk6IGZzLCBzZXA6IFtdIH0pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgJ2Zsb3ctbWFwLWVuZCc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZmxvdy1zZXEtZW5kJzpcbiAgICAgICAgICAgICAgICAgICAgZmMuZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGJ2ID0gdGhpcy5zdGFydEJsb2NrVmFsdWUoZmMpO1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2Ugc2hvdWxkIG5vdCBoYXBwZW4gKi9cbiAgICAgICAgICAgIGlmIChidilcbiAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goYnYpO1xuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMuc3RlcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5wZWVrKDIpO1xuICAgICAgICAgICAgaWYgKHBhcmVudC50eXBlID09PSAnYmxvY2stbWFwJyAmJlxuICAgICAgICAgICAgICAgICgodGhpcy50eXBlID09PSAnbWFwLXZhbHVlLWluZCcgJiYgcGFyZW50LmluZGVudCA9PT0gZmMuaW5kZW50KSB8fFxuICAgICAgICAgICAgICAgICAgICAodGhpcy50eXBlID09PSAnbmV3bGluZScgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFwYXJlbnQuaXRlbXNbcGFyZW50Lml0ZW1zLmxlbmd0aCAtIDFdLnNlcCkpKSB7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMuc3RlcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAodGhpcy50eXBlID09PSAnbWFwLXZhbHVlLWluZCcgJiZcbiAgICAgICAgICAgICAgICBwYXJlbnQudHlwZSAhPT0gJ2Zsb3ctY29sbGVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBwcmV2ID0gZ2V0UHJldlByb3BzKHBhcmVudCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBnZXRGaXJzdEtleVN0YXJ0UHJvcHMocHJldik7XG4gICAgICAgICAgICAgICAgZml4Rmxvd1NlcUl0ZW1zKGZjKTtcbiAgICAgICAgICAgICAgICBjb25zdCBzZXAgPSBmYy5lbmQuc3BsaWNlKDEsIGZjLmVuZC5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIHNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcCA9IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogZmMub2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICBpbmRlbnQ6IGZjLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0LCBrZXk6IGZjLCBzZXAgfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoIC0gMV0gPSBtYXA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5saW5lRW5kKGZjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmbG93U2NhbGFyKHR5cGUpIHtcbiAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lKSB7XG4gICAgICAgICAgICBsZXQgbmwgPSB0aGlzLnNvdXJjZS5pbmRleE9mKCdcXG4nKSArIDE7XG4gICAgICAgICAgICB3aGlsZSAobmwgIT09IDApIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTmV3TGluZSh0aGlzLm9mZnNldCArIG5sKTtcbiAgICAgICAgICAgICAgICBubCA9IHRoaXMuc291cmNlLmluZGV4T2YoJ1xcbicsIG5sKSArIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxuICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2VcbiAgICAgICAgfTtcbiAgICB9XG4gICAgc3RhcnRCbG9ja1ZhbHVlKHBhcmVudCkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnYWxpYXMnOlxuICAgICAgICAgICAgY2FzZSAnc2NhbGFyJzpcbiAgICAgICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5mbG93U2NhbGFyKHRoaXMudHlwZSk7XG4gICAgICAgICAgICBjYXNlICdibG9jay1zY2FsYXItaGVhZGVyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stc2NhbGFyJyxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFt0aGlzLnNvdXJjZVRva2VuXSxcbiAgICAgICAgICAgICAgICAgICAgc291cmNlOiAnJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjYXNlICdmbG93LW1hcC1zdGFydCc6XG4gICAgICAgICAgICBjYXNlICdmbG93LXNlcS1zdGFydCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Zsb3ctY29sbGVjdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgIGluZGVudDogdGhpcy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiB0aGlzLnNvdXJjZVRva2VuLFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogW10sXG4gICAgICAgICAgICAgICAgICAgIGVuZDogW11cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgY2FzZSAnc2VxLWl0ZW0taW5kJzpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stc2VxJyxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgY2FzZSAnZXhwbGljaXQta2V5LWluZCc6IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJldiA9IGdldFByZXZQcm9wcyhwYXJlbnQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gZ2V0Rmlyc3RLZXlTdGFydFByb3BzKHByZXYpO1xuICAgICAgICAgICAgICAgIHN0YXJ0LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgIGluZGVudDogdGhpcy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBbeyBzdGFydCwgZXhwbGljaXRLZXk6IHRydWUgfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnbWFwLXZhbHVlLWluZCc6IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJldiA9IGdldFByZXZQcm9wcyhwYXJlbnQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gZ2V0Rmlyc3RLZXlTdGFydFByb3BzKHByZXYpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdibG9jay1tYXAnLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICBpbmRlbnQ6IHRoaXMuaW5kZW50LFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogW3sgc3RhcnQsIGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBhdEluZGVudGVkQ29tbWVudChzdGFydCwgaW5kZW50KSB7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgIT09ICdjb21tZW50JylcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMuaW5kZW50IDw9IGluZGVudClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgcmV0dXJuIHN0YXJ0LmV2ZXJ5KHN0ID0+IHN0LnR5cGUgPT09ICduZXdsaW5lJyB8fCBzdC50eXBlID09PSAnc3BhY2UnKTtcbiAgICB9XG4gICAgKmRvY3VtZW50RW5kKGRvY0VuZCkge1xuICAgICAgICBpZiAodGhpcy50eXBlICE9PSAnZG9jLW1vZGUnKSB7XG4gICAgICAgICAgICBpZiAoZG9jRW5kLmVuZClcbiAgICAgICAgICAgICAgICBkb2NFbmQuZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgZG9jRW5kLmVuZCA9IFt0aGlzLnNvdXJjZVRva2VuXTtcbiAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICduZXdsaW5lJylcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqbGluZUVuZCh0b2tlbikge1xuICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnY29tbWEnOlxuICAgICAgICAgICAgY2FzZSAnZG9jLXN0YXJ0JzpcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1lbmQnOlxuICAgICAgICAgICAgY2FzZSAnZmxvdy1zZXEtZW5kJzpcbiAgICAgICAgICAgIGNhc2UgJ2Zsb3ctbWFwLWVuZCc6XG4gICAgICAgICAgICBjYXNlICdtYXAtdmFsdWUtaW5kJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5zdGVwKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IGZhbHNlO1xuICAgICAgICAgICAgLy8gZmFsbHRocm91Z2hcbiAgICAgICAgICAgIGNhc2UgJ3NwYWNlJzpcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAvLyBhbGwgb3RoZXIgdmFsdWVzIGFyZSBlcnJvcnNcbiAgICAgICAgICAgICAgICBpZiAodG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgICAgICB0b2tlbi5lbmQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIHRva2VuLmVuZCA9IFt0aGlzLnNvdXJjZVRva2VuXTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnRzLlBhcnNlciA9IFBhcnNlcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBjb21wb3NlciA9IHJlcXVpcmUoJy4vY29tcG9zZS9jb21wb3Nlci5qcycpO1xudmFyIERvY3VtZW50ID0gcmVxdWlyZSgnLi9kb2MvRG9jdW1lbnQuanMnKTtcbnZhciBlcnJvcnMgPSByZXF1aXJlKCcuL2Vycm9ycy5qcycpO1xudmFyIGxvZyA9IHJlcXVpcmUoJy4vbG9nLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgbGluZUNvdW50ZXIgPSByZXF1aXJlKCcuL3BhcnNlL2xpbmUtY291bnRlci5qcycpO1xudmFyIHBhcnNlciA9IHJlcXVpcmUoJy4vcGFyc2UvcGFyc2VyLmpzJyk7XG5cbmZ1bmN0aW9uIHBhcnNlT3B0aW9ucyhvcHRpb25zKSB7XG4gICAgY29uc3QgcHJldHR5RXJyb3JzID0gb3B0aW9ucy5wcmV0dHlFcnJvcnMgIT09IGZhbHNlO1xuICAgIGNvbnN0IGxpbmVDb3VudGVyJDEgPSBvcHRpb25zLmxpbmVDb3VudGVyIHx8IChwcmV0dHlFcnJvcnMgJiYgbmV3IGxpbmVDb3VudGVyLkxpbmVDb3VudGVyKCkpIHx8IG51bGw7XG4gICAgcmV0dXJuIHsgbGluZUNvdW50ZXI6IGxpbmVDb3VudGVyJDEsIHByZXR0eUVycm9ycyB9O1xufVxuLyoqXG4gKiBQYXJzZSB0aGUgaW5wdXQgYXMgYSBzdHJlYW0gb2YgWUFNTCBkb2N1bWVudHMuXG4gKlxuICogRG9jdW1lbnRzIHNob3VsZCBiZSBzZXBhcmF0ZWQgZnJvbSBlYWNoIG90aGVyIGJ5IGAuLi5gIG9yIGAtLS1gIG1hcmtlciBsaW5lcy5cbiAqXG4gKiBAcmV0dXJucyBJZiBhbiBlbXB0eSBgZG9jc2AgYXJyYXkgaXMgcmV0dXJuZWQsIGl0IHdpbGwgYmUgb2YgdHlwZVxuICogICBFbXB0eVN0cmVhbSBhbmQgY29udGFpbiBhZGRpdGlvbmFsIHN0cmVhbSBpbmZvcm1hdGlvbi4gSW5cbiAqICAgVHlwZVNjcmlwdCwgeW91IHNob3VsZCB1c2UgYCdlbXB0eScgaW4gZG9jc2AgYXMgYSB0eXBlIGd1YXJkIGZvciBpdC5cbiAqL1xuZnVuY3Rpb24gcGFyc2VBbGxEb2N1bWVudHMoc291cmNlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGxpbmVDb3VudGVyLCBwcmV0dHlFcnJvcnMgfSA9IHBhcnNlT3B0aW9ucyhvcHRpb25zKTtcbiAgICBjb25zdCBwYXJzZXIkMSA9IG5ldyBwYXJzZXIuUGFyc2VyKGxpbmVDb3VudGVyPy5hZGROZXdMaW5lKTtcbiAgICBjb25zdCBjb21wb3NlciQxID0gbmV3IGNvbXBvc2VyLkNvbXBvc2VyKG9wdGlvbnMpO1xuICAgIGNvbnN0IGRvY3MgPSBBcnJheS5mcm9tKGNvbXBvc2VyJDEuY29tcG9zZShwYXJzZXIkMS5wYXJzZShzb3VyY2UpKSk7XG4gICAgaWYgKHByZXR0eUVycm9ycyAmJiBsaW5lQ291bnRlcilcbiAgICAgICAgZm9yIChjb25zdCBkb2Mgb2YgZG9jcykge1xuICAgICAgICAgICAgZG9jLmVycm9ycy5mb3JFYWNoKGVycm9ycy5wcmV0dGlmeUVycm9yKHNvdXJjZSwgbGluZUNvdW50ZXIpKTtcbiAgICAgICAgICAgIGRvYy53YXJuaW5ncy5mb3JFYWNoKGVycm9ycy5wcmV0dGlmeUVycm9yKHNvdXJjZSwgbGluZUNvdW50ZXIpKTtcbiAgICAgICAgfVxuICAgIGlmIChkb2NzLmxlbmd0aCA+IDApXG4gICAgICAgIHJldHVybiBkb2NzO1xuICAgIHJldHVybiBPYmplY3QuYXNzaWduKFtdLCB7IGVtcHR5OiB0cnVlIH0sIGNvbXBvc2VyJDEuc3RyZWFtSW5mbygpKTtcbn1cbi8qKiBQYXJzZSBhbiBpbnB1dCBzdHJpbmcgaW50byBhIHNpbmdsZSBZQU1MLkRvY3VtZW50ICovXG5mdW5jdGlvbiBwYXJzZURvY3VtZW50KHNvdXJjZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBsaW5lQ291bnRlciwgcHJldHR5RXJyb3JzIH0gPSBwYXJzZU9wdGlvbnMob3B0aW9ucyk7XG4gICAgY29uc3QgcGFyc2VyJDEgPSBuZXcgcGFyc2VyLlBhcnNlcihsaW5lQ291bnRlcj8uYWRkTmV3TGluZSk7XG4gICAgY29uc3QgY29tcG9zZXIkMSA9IG5ldyBjb21wb3Nlci5Db21wb3NlcihvcHRpb25zKTtcbiAgICAvLyBgZG9jYCBpcyBhbHdheXMgc2V0IGJ5IGNvbXBvc2UuZW5kKHRydWUpIGF0IHRoZSB2ZXJ5IGxhdGVzdFxuICAgIGxldCBkb2MgPSBudWxsO1xuICAgIGZvciAoY29uc3QgX2RvYyBvZiBjb21wb3NlciQxLmNvbXBvc2UocGFyc2VyJDEucGFyc2Uoc291cmNlKSwgdHJ1ZSwgc291cmNlLmxlbmd0aCkpIHtcbiAgICAgICAgaWYgKCFkb2MpXG4gICAgICAgICAgICBkb2MgPSBfZG9jO1xuICAgICAgICBlbHNlIGlmIChkb2Mub3B0aW9ucy5sb2dMZXZlbCAhPT0gJ3NpbGVudCcpIHtcbiAgICAgICAgICAgIGRvYy5lcnJvcnMucHVzaChuZXcgZXJyb3JzLllBTUxQYXJzZUVycm9yKF9kb2MucmFuZ2Uuc2xpY2UoMCwgMiksICdNVUxUSVBMRV9ET0NTJywgJ1NvdXJjZSBjb250YWlucyBtdWx0aXBsZSBkb2N1bWVudHM7IHBsZWFzZSB1c2UgWUFNTC5wYXJzZUFsbERvY3VtZW50cygpJykpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKHByZXR0eUVycm9ycyAmJiBsaW5lQ291bnRlcikge1xuICAgICAgICBkb2MuZXJyb3JzLmZvckVhY2goZXJyb3JzLnByZXR0aWZ5RXJyb3Ioc291cmNlLCBsaW5lQ291bnRlcikpO1xuICAgICAgICBkb2Mud2FybmluZ3MuZm9yRWFjaChlcnJvcnMucHJldHRpZnlFcnJvcihzb3VyY2UsIGxpbmVDb3VudGVyKSk7XG4gICAgfVxuICAgIHJldHVybiBkb2M7XG59XG5mdW5jdGlvbiBwYXJzZShzcmMsIHJldml2ZXIsIG9wdGlvbnMpIHtcbiAgICBsZXQgX3Jldml2ZXIgPSB1bmRlZmluZWQ7XG4gICAgaWYgKHR5cGVvZiByZXZpdmVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIF9yZXZpdmVyID0gcmV2aXZlcjtcbiAgICB9XG4gICAgZWxzZSBpZiAob3B0aW9ucyA9PT0gdW5kZWZpbmVkICYmIHJldml2ZXIgJiYgdHlwZW9mIHJldml2ZXIgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIG9wdGlvbnMgPSByZXZpdmVyO1xuICAgIH1cbiAgICBjb25zdCBkb2MgPSBwYXJzZURvY3VtZW50KHNyYywgb3B0aW9ucyk7XG4gICAgaWYgKCFkb2MpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGRvYy53YXJuaW5ncy5mb3JFYWNoKHdhcm5pbmcgPT4gbG9nLndhcm4oZG9jLm9wdGlvbnMubG9nTGV2ZWwsIHdhcm5pbmcpKTtcbiAgICBpZiAoZG9jLmVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGlmIChkb2Mub3B0aW9ucy5sb2dMZXZlbCAhPT0gJ3NpbGVudCcpXG4gICAgICAgICAgICB0aHJvdyBkb2MuZXJyb3JzWzBdO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBkb2MuZXJyb3JzID0gW107XG4gICAgfVxuICAgIHJldHVybiBkb2MudG9KUyhPYmplY3QuYXNzaWduKHsgcmV2aXZlcjogX3Jldml2ZXIgfSwgb3B0aW9ucykpO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5KHZhbHVlLCByZXBsYWNlciwgb3B0aW9ucykge1xuICAgIGxldCBfcmVwbGFjZXIgPSBudWxsO1xuICAgIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdmdW5jdGlvbicgfHwgQXJyYXkuaXNBcnJheShyZXBsYWNlcikpIHtcbiAgICAgICAgX3JlcGxhY2VyID0gcmVwbGFjZXI7XG4gICAgfVxuICAgIGVsc2UgaWYgKG9wdGlvbnMgPT09IHVuZGVmaW5lZCAmJiByZXBsYWNlcikge1xuICAgICAgICBvcHRpb25zID0gcmVwbGFjZXI7XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0aW9ucyA9PT0gJ3N0cmluZycpXG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zLmxlbmd0aDtcbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdudW1iZXInKSB7XG4gICAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgucm91bmQob3B0aW9ucyk7XG4gICAgICAgIG9wdGlvbnMgPSBpbmRlbnQgPCAxID8gdW5kZWZpbmVkIDogaW5kZW50ID4gOCA/IHsgaW5kZW50OiA4IH0gOiB7IGluZGVudCB9O1xuICAgIH1cbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCB7IGtlZXBVbmRlZmluZWQgfSA9IG9wdGlvbnMgPz8gcmVwbGFjZXIgPz8ge307XG4gICAgICAgIGlmICgha2VlcFVuZGVmaW5lZClcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KHZhbHVlKSAmJiAhX3JlcGxhY2VyKVxuICAgICAgICByZXR1cm4gdmFsdWUudG9TdHJpbmcob3B0aW9ucyk7XG4gICAgcmV0dXJuIG5ldyBEb2N1bWVudC5Eb2N1bWVudCh2YWx1ZSwgX3JlcGxhY2VyLCBvcHRpb25zKS50b1N0cmluZyhvcHRpb25zKTtcbn1cblxuZXhwb3J0cy5wYXJzZSA9IHBhcnNlO1xuZXhwb3J0cy5wYXJzZUFsbERvY3VtZW50cyA9IHBhcnNlQWxsRG9jdW1lbnRzO1xuZXhwb3J0cy5wYXJzZURvY3VtZW50ID0gcGFyc2VEb2N1bWVudDtcbmV4cG9ydHMuc3RyaW5naWZ5ID0gc3RyaW5naWZ5O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGNvbXBvc2VyID0gcmVxdWlyZSgnLi9jb21wb3NlL2NvbXBvc2VyLmpzJyk7XG52YXIgRG9jdW1lbnQgPSByZXF1aXJlKCcuL2RvYy9Eb2N1bWVudC5qcycpO1xudmFyIFNjaGVtYSA9IHJlcXVpcmUoJy4vc2NoZW1hL1NjaGVtYS5qcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4vZXJyb3JzLmpzJyk7XG52YXIgQWxpYXMgPSByZXF1aXJlKCcuL25vZGVzL0FsaWFzLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgUGFpciA9IHJlcXVpcmUoJy4vbm9kZXMvUGFpci5qcycpO1xudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4vbm9kZXMvWUFNTE1hcC5qcycpO1xudmFyIFlBTUxTZXEgPSByZXF1aXJlKCcuL25vZGVzL1lBTUxTZXEuanMnKTtcbnZhciBjc3QgPSByZXF1aXJlKCcuL3BhcnNlL2NzdC5qcycpO1xudmFyIGxleGVyID0gcmVxdWlyZSgnLi9wYXJzZS9sZXhlci5qcycpO1xudmFyIGxpbmVDb3VudGVyID0gcmVxdWlyZSgnLi9wYXJzZS9saW5lLWNvdW50ZXIuanMnKTtcbnZhciBwYXJzZXIgPSByZXF1aXJlKCcuL3BhcnNlL3BhcnNlci5qcycpO1xudmFyIHB1YmxpY0FwaSA9IHJlcXVpcmUoJy4vcHVibGljLWFwaS5qcycpO1xudmFyIHZpc2l0ID0gcmVxdWlyZSgnLi92aXNpdC5qcycpO1xuXG5cblxuZXhwb3J0cy5Db21wb3NlciA9IGNvbXBvc2VyLkNvbXBvc2VyO1xuZXhwb3J0cy5Eb2N1bWVudCA9IERvY3VtZW50LkRvY3VtZW50O1xuZXhwb3J0cy5TY2hlbWEgPSBTY2hlbWEuU2NoZW1hO1xuZXhwb3J0cy5ZQU1MRXJyb3IgPSBlcnJvcnMuWUFNTEVycm9yO1xuZXhwb3J0cy5ZQU1MUGFyc2VFcnJvciA9IGVycm9ycy5ZQU1MUGFyc2VFcnJvcjtcbmV4cG9ydHMuWUFNTFdhcm5pbmcgPSBlcnJvcnMuWUFNTFdhcm5pbmc7XG5leHBvcnRzLkFsaWFzID0gQWxpYXMuQWxpYXM7XG5leHBvcnRzLmlzQWxpYXMgPSBpZGVudGl0eS5pc0FsaWFzO1xuZXhwb3J0cy5pc0NvbGxlY3Rpb24gPSBpZGVudGl0eS5pc0NvbGxlY3Rpb247XG5leHBvcnRzLmlzRG9jdW1lbnQgPSBpZGVudGl0eS5pc0RvY3VtZW50O1xuZXhwb3J0cy5pc01hcCA9IGlkZW50aXR5LmlzTWFwO1xuZXhwb3J0cy5pc05vZGUgPSBpZGVudGl0eS5pc05vZGU7XG5leHBvcnRzLmlzUGFpciA9IGlkZW50aXR5LmlzUGFpcjtcbmV4cG9ydHMuaXNTY2FsYXIgPSBpZGVudGl0eS5pc1NjYWxhcjtcbmV4cG9ydHMuaXNTZXEgPSBpZGVudGl0eS5pc1NlcTtcbmV4cG9ydHMuUGFpciA9IFBhaXIuUGFpcjtcbmV4cG9ydHMuU2NhbGFyID0gU2NhbGFyLlNjYWxhcjtcbmV4cG9ydHMuWUFNTE1hcCA9IFlBTUxNYXAuWUFNTE1hcDtcbmV4cG9ydHMuWUFNTFNlcSA9IFlBTUxTZXEuWUFNTFNlcTtcbmV4cG9ydHMuQ1NUID0gY3N0O1xuZXhwb3J0cy5MZXhlciA9IGxleGVyLkxleGVyO1xuZXhwb3J0cy5MaW5lQ291bnRlciA9IGxpbmVDb3VudGVyLkxpbmVDb3VudGVyO1xuZXhwb3J0cy5QYXJzZXIgPSBwYXJzZXIuUGFyc2VyO1xuZXhwb3J0cy5wYXJzZSA9IHB1YmxpY0FwaS5wYXJzZTtcbmV4cG9ydHMucGFyc2VBbGxEb2N1bWVudHMgPSBwdWJsaWNBcGkucGFyc2VBbGxEb2N1bWVudHM7XG5leHBvcnRzLnBhcnNlRG9jdW1lbnQgPSBwdWJsaWNBcGkucGFyc2VEb2N1bWVudDtcbmV4cG9ydHMuc3RyaW5naWZ5ID0gcHVibGljQXBpLnN0cmluZ2lmeTtcbmV4cG9ydHMudmlzaXQgPSB2aXNpdC52aXNpdDtcbmV4cG9ydHMudmlzaXRBc3luYyA9IHZpc2l0LnZpc2l0QXN5bmM7XG4iLCAiKGZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHJvb3QsIGZhY3RvcnkpIHtcblx0aWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgPT09ICdvYmplY3QnKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wiZmVhdGhlclwiXSA9IGZhY3RvcnkoKTtcblx0ZWxzZVxuXHRcdHJvb3RbXCJmZWF0aGVyXCJdID0gZmFjdG9yeSgpO1xufSkodHlwZW9mIHNlbGYgIT09ICd1bmRlZmluZWQnID8gc2VsZiA6IHRoaXMsIGZ1bmN0aW9uKCkge1xucmV0dXJuICIsICIgXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuXG4gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXG4gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuIFx0XHR9XG4gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbiBcdFx0XHRpOiBtb2R1bGVJZCxcbiBcdFx0XHRsOiBmYWxzZSxcbiBcdFx0XHRleHBvcnRzOiB7fVxuIFx0XHR9O1xuXG4gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcblxuIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4gXHR9XG5cblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHtcbiBcdFx0XHRcdGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gXHRcdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuIFx0XHRcdFx0Z2V0OiBnZXR0ZXJcbiBcdFx0XHR9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yID0gZnVuY3Rpb24oZXhwb3J0cykge1xuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcblxuXG4gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbiBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IDApO1xuIiwgIi8qIVxuICBDb3B5cmlnaHQgKGMpIDIwMTYgSmVkIFdhdHNvbi5cbiAgTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlIChNSVQpLCBzZWVcbiAgaHR0cDovL2plZHdhdHNvbi5naXRodWIuaW8vY2xhc3NuYW1lc1xuKi9cbi8qIGdsb2JhbCBkZWZpbmUgKi9cblxuKGZ1bmN0aW9uICgpIHtcblx0J3VzZSBzdHJpY3QnO1xuXG5cdHZhciBjbGFzc05hbWVzID0gKGZ1bmN0aW9uICgpIHtcblx0XHQvLyBkb24ndCBpbmhlcml0IGZyb20gT2JqZWN0IHNvIHdlIGNhbiBza2lwIGhhc093blByb3BlcnR5IGNoZWNrIGxhdGVyXG5cdFx0Ly8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNTUxODMyOC9jcmVhdGluZy1qcy1vYmplY3Qtd2l0aC1vYmplY3QtY3JlYXRlbnVsbCNhbnN3ZXItMjEwNzkyMzJcblx0XHRmdW5jdGlvbiBTdG9yYWdlT2JqZWN0KCkge31cblx0XHRTdG9yYWdlT2JqZWN0LnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cblx0XHRmdW5jdGlvbiBfcGFyc2VBcnJheSAocmVzdWx0U2V0LCBhcnJheSkge1xuXHRcdFx0dmFyIGxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuXHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuXHRcdFx0XHRfcGFyc2UocmVzdWx0U2V0LCBhcnJheVtpXSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dmFyIGhhc093biA9IHt9Lmhhc093blByb3BlcnR5O1xuXG5cdFx0ZnVuY3Rpb24gX3BhcnNlTnVtYmVyIChyZXN1bHRTZXQsIG51bSkge1xuXHRcdFx0cmVzdWx0U2V0W251bV0gPSB0cnVlO1xuXHRcdH1cblxuXHRcdGZ1bmN0aW9uIF9wYXJzZU9iamVjdCAocmVzdWx0U2V0LCBvYmplY3QpIHtcblx0XHRcdGZvciAodmFyIGsgaW4gb2JqZWN0KSB7XG5cdFx0XHRcdGlmIChoYXNPd24uY2FsbChvYmplY3QsIGspKSB7XG5cdFx0XHRcdFx0Ly8gc2V0IHZhbHVlIHRvIGZhbHNlIGluc3RlYWQgb2YgZGVsZXRpbmcgaXQgdG8gYXZvaWQgY2hhbmdpbmcgb2JqZWN0IHN0cnVjdHVyZVxuXHRcdFx0XHRcdC8vIGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTIvMTEvd3JpdGluZy1mYXN0LW1lbW9yeS1lZmZpY2llbnQtamF2YXNjcmlwdC8jZGUtcmVmZXJlbmNpbmctbWlzY29uY2VwdGlvbnNcblx0XHRcdFx0XHRyZXN1bHRTZXRba10gPSAhIW9iamVjdFtrXTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHZhciBTUEFDRSA9IC9cXHMrLztcblx0XHRmdW5jdGlvbiBfcGFyc2VTdHJpbmcgKHJlc3VsdFNldCwgc3RyKSB7XG5cdFx0XHR2YXIgYXJyYXkgPSBzdHIuc3BsaXQoU1BBQ0UpO1xuXHRcdFx0dmFyIGxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuXHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuXHRcdFx0XHRyZXN1bHRTZXRbYXJyYXlbaV1dID0gdHJ1ZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRmdW5jdGlvbiBfcGFyc2UgKHJlc3VsdFNldCwgYXJnKSB7XG5cdFx0XHRpZiAoIWFyZykgcmV0dXJuO1xuXHRcdFx0dmFyIGFyZ1R5cGUgPSB0eXBlb2YgYXJnO1xuXG5cdFx0XHQvLyAnZm9vIGJhcidcblx0XHRcdGlmIChhcmdUeXBlID09PSAnc3RyaW5nJykge1xuXHRcdFx0XHRfcGFyc2VTdHJpbmcocmVzdWx0U2V0LCBhcmcpO1xuXG5cdFx0XHQvLyBbJ2ZvbycsICdiYXInLCAuLi5dXG5cdFx0XHR9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoYXJnKSkge1xuXHRcdFx0XHRfcGFyc2VBcnJheShyZXN1bHRTZXQsIGFyZyk7XG5cblx0XHRcdC8vIHsgJ2Zvbyc6IHRydWUsIC4uLiB9XG5cdFx0XHR9IGVsc2UgaWYgKGFyZ1R5cGUgPT09ICdvYmplY3QnKSB7XG5cdFx0XHRcdF9wYXJzZU9iamVjdChyZXN1bHRTZXQsIGFyZyk7XG5cblx0XHRcdC8vICcxMzAnXG5cdFx0XHR9IGVsc2UgaWYgKGFyZ1R5cGUgPT09ICdudW1iZXInKSB7XG5cdFx0XHRcdF9wYXJzZU51bWJlcihyZXN1bHRTZXQsIGFyZyk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0ZnVuY3Rpb24gX2NsYXNzTmFtZXMgKCkge1xuXHRcdFx0Ly8gZG9uJ3QgbGVhayBhcmd1bWVudHNcblx0XHRcdC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9wZXRrYWFudG9ub3YvYmx1ZWJpcmQvd2lraS9PcHRpbWl6YXRpb24ta2lsbGVycyMzMi1sZWFraW5nLWFyZ3VtZW50c1xuXHRcdFx0dmFyIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGg7XG5cdFx0XHR2YXIgYXJncyA9IEFycmF5KGxlbik7XG5cdFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG5cdFx0XHRcdGFyZ3NbaV0gPSBhcmd1bWVudHNbaV07XG5cdFx0XHR9XG5cblx0XHRcdHZhciBjbGFzc1NldCA9IG5ldyBTdG9yYWdlT2JqZWN0KCk7XG5cdFx0XHRfcGFyc2VBcnJheShjbGFzc1NldCwgYXJncyk7XG5cblx0XHRcdHZhciBsaXN0ID0gW107XG5cblx0XHRcdGZvciAodmFyIGsgaW4gY2xhc3NTZXQpIHtcblx0XHRcdFx0aWYgKGNsYXNzU2V0W2tdKSB7XG5cdFx0XHRcdFx0bGlzdC5wdXNoKGspXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIGxpc3Quam9pbignICcpO1xuXHRcdH1cblxuXHRcdHJldHVybiBfY2xhc3NOYW1lcztcblx0fSkoKTtcblxuXHRpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcblx0XHRtb2R1bGUuZXhwb3J0cyA9IGNsYXNzTmFtZXM7XG5cdH0gZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgZGVmaW5lLmFtZCA9PT0gJ29iamVjdCcgJiYgZGVmaW5lLmFtZCkge1xuXHRcdC8vIHJlZ2lzdGVyIGFzICdjbGFzc25hbWVzJywgY29uc2lzdGVudCB3aXRoIG5wbSBwYWNrYWdlIG5hbWVcblx0XHRkZWZpbmUoJ2NsYXNzbmFtZXMnLCBbXSwgZnVuY3Rpb24gKCkge1xuXHRcdFx0cmV0dXJuIGNsYXNzTmFtZXM7XG5cdFx0fSk7XG5cdH0gZWxzZSB7XG5cdFx0d2luZG93LmNsYXNzTmFtZXMgPSBjbGFzc05hbWVzO1xuXHR9XG59KCkpO1xuIiwgInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXMuc3RyaW5nLml0ZXJhdG9yJyk7XG5yZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzLmFycmF5LmZyb20nKTtcbnZhciBwYXRoID0gcmVxdWlyZSgnLi4vLi4vaW50ZXJuYWxzL3BhdGgnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBwYXRoLkFycmF5LmZyb207XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgaWYgKHR5cGVvZiBpdCAhPSAnZnVuY3Rpb24nKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKFN0cmluZyhpdCkgKyAnIGlzIG5vdCBhIGZ1bmN0aW9uJyk7XG4gIH0gcmV0dXJuIGl0O1xufTtcbiIsICJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtb2JqZWN0Jyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmICghaXNPYmplY3QoaXQpKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKFN0cmluZyhpdCkgKyAnIGlzIG5vdCBhbiBvYmplY3QnKTtcbiAgfSByZXR1cm4gaXQ7XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciBiaW5kID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2JpbmQtY29udGV4dCcpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLW9iamVjdCcpO1xudmFyIGNhbGxXaXRoU2FmZUl0ZXJhdGlvbkNsb3NpbmcgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY2FsbC13aXRoLXNhZmUtaXRlcmF0aW9uLWNsb3NpbmcnKTtcbnZhciBpc0FycmF5SXRlcmF0b3JNZXRob2QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtYXJyYXktaXRlcmF0b3ItbWV0aG9kJyk7XG52YXIgdG9MZW5ndGggPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8tbGVuZ3RoJyk7XG52YXIgY3JlYXRlUHJvcGVydHkgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY3JlYXRlLXByb3BlcnR5Jyk7XG52YXIgZ2V0SXRlcmF0b3JNZXRob2QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2V0LWl0ZXJhdG9yLW1ldGhvZCcpO1xuXG4vLyBgQXJyYXkuZnJvbWAgbWV0aG9kXG4vLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1hcnJheS5mcm9tXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGZyb20oYXJyYXlMaWtlIC8qICwgbWFwZm4gPSB1bmRlZmluZWQsIHRoaXNBcmcgPSB1bmRlZmluZWQgKi8pIHtcbiAgdmFyIE8gPSB0b09iamVjdChhcnJheUxpa2UpO1xuICB2YXIgQyA9IHR5cGVvZiB0aGlzID09ICdmdW5jdGlvbicgPyB0aGlzIDogQXJyYXk7XG4gIHZhciBhcmd1bWVudHNMZW5ndGggPSBhcmd1bWVudHMubGVuZ3RoO1xuICB2YXIgbWFwZm4gPSBhcmd1bWVudHNMZW5ndGggPiAxID8gYXJndW1lbnRzWzFdIDogdW5kZWZpbmVkO1xuICB2YXIgbWFwcGluZyA9IG1hcGZuICE9PSB1bmRlZmluZWQ7XG4gIHZhciBpbmRleCA9IDA7XG4gIHZhciBpdGVyYXRvck1ldGhvZCA9IGdldEl0ZXJhdG9yTWV0aG9kKE8pO1xuICB2YXIgbGVuZ3RoLCByZXN1bHQsIHN0ZXAsIGl0ZXJhdG9yO1xuICBpZiAobWFwcGluZykgbWFwZm4gPSBiaW5kKG1hcGZuLCBhcmd1bWVudHNMZW5ndGggPiAyID8gYXJndW1lbnRzWzJdIDogdW5kZWZpbmVkLCAyKTtcbiAgLy8gaWYgdGhlIHRhcmdldCBpcyBub3QgaXRlcmFibGUgb3IgaXQncyBhbiBhcnJheSB3aXRoIHRoZSBkZWZhdWx0IGl0ZXJhdG9yIC0gdXNlIGEgc2ltcGxlIGNhc2VcbiAgaWYgKGl0ZXJhdG9yTWV0aG9kICE9IHVuZGVmaW5lZCAmJiAhKEMgPT0gQXJyYXkgJiYgaXNBcnJheUl0ZXJhdG9yTWV0aG9kKGl0ZXJhdG9yTWV0aG9kKSkpIHtcbiAgICBpdGVyYXRvciA9IGl0ZXJhdG9yTWV0aG9kLmNhbGwoTyk7XG4gICAgcmVzdWx0ID0gbmV3IEMoKTtcbiAgICBmb3IgKDshKHN0ZXAgPSBpdGVyYXRvci5uZXh0KCkpLmRvbmU7IGluZGV4KyspIHtcbiAgICAgIGNyZWF0ZVByb3BlcnR5KHJlc3VsdCwgaW5kZXgsIG1hcHBpbmdcbiAgICAgICAgPyBjYWxsV2l0aFNhZmVJdGVyYXRpb25DbG9zaW5nKGl0ZXJhdG9yLCBtYXBmbiwgW3N0ZXAudmFsdWUsIGluZGV4XSwgdHJ1ZSlcbiAgICAgICAgOiBzdGVwLnZhbHVlXG4gICAgICApO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBsZW5ndGggPSB0b0xlbmd0aChPLmxlbmd0aCk7XG4gICAgcmVzdWx0ID0gbmV3IEMobGVuZ3RoKTtcbiAgICBmb3IgKDtsZW5ndGggPiBpbmRleDsgaW5kZXgrKykge1xuICAgICAgY3JlYXRlUHJvcGVydHkocmVzdWx0LCBpbmRleCwgbWFwcGluZyA/IG1hcGZuKE9baW5kZXhdLCBpbmRleCkgOiBPW2luZGV4XSk7XG4gICAgfVxuICB9XG4gIHJlc3VsdC5sZW5ndGggPSBpbmRleDtcbiAgcmV0dXJuIHJlc3VsdDtcbn07XG4iLCAidmFyIHRvSW5kZXhlZE9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1pbmRleGVkLW9iamVjdCcpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLWxlbmd0aCcpO1xudmFyIHRvQWJzb2x1dGVJbmRleCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1hYnNvbHV0ZS1pbmRleCcpO1xuXG4vLyBgQXJyYXkucHJvdG90eXBlLnsgaW5kZXhPZiwgaW5jbHVkZXMgfWAgbWV0aG9kcyBpbXBsZW1lbnRhdGlvblxuLy8gZmFsc2UgLT4gQXJyYXkjaW5kZXhPZlxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtYXJyYXkucHJvdG90eXBlLmluZGV4b2Zcbi8vIHRydWUgIC0+IEFycmF5I2luY2x1ZGVzXG4vLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1hcnJheS5wcm90b3R5cGUuaW5jbHVkZXNcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKElTX0lOQ0xVREVTKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoJHRoaXMsIGVsLCBmcm9tSW5kZXgpIHtcbiAgICB2YXIgTyA9IHRvSW5kZXhlZE9iamVjdCgkdGhpcyk7XG4gICAgdmFyIGxlbmd0aCA9IHRvTGVuZ3RoKE8ubGVuZ3RoKTtcbiAgICB2YXIgaW5kZXggPSB0b0Fic29sdXRlSW5kZXgoZnJvbUluZGV4LCBsZW5ndGgpO1xuICAgIHZhciB2YWx1ZTtcbiAgICAvLyBBcnJheSNpbmNsdWRlcyB1c2VzIFNhbWVWYWx1ZVplcm8gZXF1YWxpdHkgYWxnb3JpdGhtXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgIGlmIChJU19JTkNMVURFUyAmJiBlbCAhPSBlbCkgd2hpbGUgKGxlbmd0aCA+IGluZGV4KSB7XG4gICAgICB2YWx1ZSA9IE9baW5kZXgrK107XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlXG4gICAgICBpZiAodmFsdWUgIT0gdmFsdWUpIHJldHVybiB0cnVlO1xuICAgIC8vIEFycmF5I2luZGV4T2YgaWdub3JlcyBob2xlcywgQXJyYXkjaW5jbHVkZXMgLSBub3RcbiAgICB9IGVsc2UgZm9yICg7bGVuZ3RoID4gaW5kZXg7IGluZGV4KyspIGlmIChJU19JTkNMVURFUyB8fCBpbmRleCBpbiBPKSB7XG4gICAgICBpZiAoT1tpbmRleF0gPT09IGVsKSByZXR1cm4gSVNfSU5DTFVERVMgfHwgaW5kZXggfHwgMDtcbiAgICB9IHJldHVybiAhSVNfSU5DTFVERVMgJiYgLTE7XG4gIH07XG59O1xuIiwgInZhciBhRnVuY3Rpb24gPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYS1mdW5jdGlvbicpO1xuXG4vLyBvcHRpb25hbCAvIHNpbXBsZSBjb250ZXh0IGJpbmRpbmdcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGZuLCB0aGF0LCBsZW5ndGgpIHtcbiAgYUZ1bmN0aW9uKGZuKTtcbiAgaWYgKHRoYXQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZuO1xuICBzd2l0Y2ggKGxlbmd0aCkge1xuICAgIGNhc2UgMDogcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQpO1xuICAgIH07XG4gICAgY2FzZSAxOiByZXR1cm4gZnVuY3Rpb24gKGEpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEpO1xuICAgIH07XG4gICAgY2FzZSAyOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIpO1xuICAgIH07XG4gICAgY2FzZSAzOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIsIGMpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIsIGMpO1xuICAgIH07XG4gIH1cbiAgcmV0dXJuIGZ1bmN0aW9uICgvKiAuLi5hcmdzICovKSB7XG4gICAgcmV0dXJuIGZuLmFwcGx5KHRoYXQsIGFyZ3VtZW50cyk7XG4gIH07XG59O1xuIiwgInZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9hbi1vYmplY3QnKTtcblxuLy8gY2FsbCBzb21ldGhpbmcgb24gaXRlcmF0b3Igc3RlcCB3aXRoIHNhZmUgY2xvc2luZyBvbiBlcnJvclxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXRlcmF0b3IsIGZuLCB2YWx1ZSwgRU5UUklFUykge1xuICB0cnkge1xuICAgIHJldHVybiBFTlRSSUVTID8gZm4oYW5PYmplY3QodmFsdWUpWzBdLCB2YWx1ZVsxXSkgOiBmbih2YWx1ZSk7XG4gIC8vIDcuNC42IEl0ZXJhdG9yQ2xvc2UoaXRlcmF0b3IsIGNvbXBsZXRpb24pXG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgdmFyIHJldHVybk1ldGhvZCA9IGl0ZXJhdG9yWydyZXR1cm4nXTtcbiAgICBpZiAocmV0dXJuTWV0aG9kICE9PSB1bmRlZmluZWQpIGFuT2JqZWN0KHJldHVybk1ldGhvZC5jYWxsKGl0ZXJhdG9yKSk7XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG4iLCAidmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xuXG52YXIgSVRFUkFUT1IgPSB3ZWxsS25vd25TeW1ib2woJ2l0ZXJhdG9yJyk7XG52YXIgU0FGRV9DTE9TSU5HID0gZmFsc2U7XG5cbnRyeSB7XG4gIHZhciBjYWxsZWQgPSAwO1xuICB2YXIgaXRlcmF0b3JXaXRoUmV0dXJuID0ge1xuICAgIG5leHQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB7IGRvbmU6ICEhY2FsbGVkKysgfTtcbiAgICB9LFxuICAgICdyZXR1cm4nOiBmdW5jdGlvbiAoKSB7XG4gICAgICBTQUZFX0NMT1NJTkcgPSB0cnVlO1xuICAgIH1cbiAgfTtcbiAgaXRlcmF0b3JXaXRoUmV0dXJuW0lURVJBVE9SXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXRocm93LWxpdGVyYWxcbiAgQXJyYXkuZnJvbShpdGVyYXRvcldpdGhSZXR1cm4sIGZ1bmN0aW9uICgpIHsgdGhyb3cgMjsgfSk7XG59IGNhdGNoIChlcnJvcikgeyAvKiBlbXB0eSAqLyB9XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGV4ZWMsIFNLSVBfQ0xPU0lORykge1xuICBpZiAoIVNLSVBfQ0xPU0lORyAmJiAhU0FGRV9DTE9TSU5HKSByZXR1cm4gZmFsc2U7XG4gIHZhciBJVEVSQVRJT05fU1VQUE9SVCA9IGZhbHNlO1xuICB0cnkge1xuICAgIHZhciBvYmplY3QgPSB7fTtcbiAgICBvYmplY3RbSVRFUkFUT1JdID0gZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmV4dDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiB7IGRvbmU6IElURVJBVElPTl9TVVBQT1JUID0gdHJ1ZSB9O1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH07XG4gICAgZXhlYyhvYmplY3QpO1xuICB9IGNhdGNoIChlcnJvcikgeyAvKiBlbXB0eSAqLyB9XG4gIHJldHVybiBJVEVSQVRJT05fU1VQUE9SVDtcbn07XG4iLCAidmFyIHRvU3RyaW5nID0ge30udG9TdHJpbmc7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0b1N0cmluZy5jYWxsKGl0KS5zbGljZSg4LCAtMSk7XG59O1xuIiwgInZhciBjbGFzc29mUmF3ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NsYXNzb2YtcmF3Jyk7XG52YXIgd2VsbEtub3duU3ltYm9sID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3dlbGwta25vd24tc3ltYm9sJyk7XG5cbnZhciBUT19TVFJJTkdfVEFHID0gd2VsbEtub3duU3ltYm9sKCd0b1N0cmluZ1RhZycpO1xuLy8gRVMzIHdyb25nIGhlcmVcbnZhciBDT1JSRUNUX0FSR1VNRU5UUyA9IGNsYXNzb2ZSYXcoZnVuY3Rpb24gKCkgeyByZXR1cm4gYXJndW1lbnRzOyB9KCkpID09ICdBcmd1bWVudHMnO1xuXG4vLyBmYWxsYmFjayBmb3IgSUUxMSBTY3JpcHQgQWNjZXNzIERlbmllZCBlcnJvclxudmFyIHRyeUdldCA9IGZ1bmN0aW9uIChpdCwga2V5KSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGl0W2tleV07XG4gIH0gY2F0Y2ggKGVycm9yKSB7IC8qIGVtcHR5ICovIH1cbn07XG5cbi8vIGdldHRpbmcgdGFnIGZyb20gRVM2KyBgT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZ2Bcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHZhciBPLCB0YWcsIHJlc3VsdDtcbiAgcmV0dXJuIGl0ID09PSB1bmRlZmluZWQgPyAnVW5kZWZpbmVkJyA6IGl0ID09PSBudWxsID8gJ051bGwnXG4gICAgLy8gQEB0b1N0cmluZ1RhZyBjYXNlXG4gICAgOiB0eXBlb2YgKHRhZyA9IHRyeUdldChPID0gT2JqZWN0KGl0KSwgVE9fU1RSSU5HX1RBRykpID09ICdzdHJpbmcnID8gdGFnXG4gICAgLy8gYnVpbHRpblRhZyBjYXNlXG4gICAgOiBDT1JSRUNUX0FSR1VNRU5UUyA/IGNsYXNzb2ZSYXcoTylcbiAgICAvLyBFUzMgYXJndW1lbnRzIGZhbGxiYWNrXG4gICAgOiAocmVzdWx0ID0gY2xhc3NvZlJhdyhPKSkgPT0gJ09iamVjdCcgJiYgdHlwZW9mIE8uY2FsbGVlID09ICdmdW5jdGlvbicgPyAnQXJndW1lbnRzJyA6IHJlc3VsdDtcbn07XG4iLCAidmFyIGhhcyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oYXMnKTtcbnZhciBvd25LZXlzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL293bi1rZXlzJyk7XG52YXIgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yTW9kdWxlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL29iamVjdC1nZXQtb3duLXByb3BlcnR5LWRlc2NyaXB0b3InKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHRhcmdldCwgc291cmNlKSB7XG4gIHZhciBrZXlzID0gb3duS2V5cyhzb3VyY2UpO1xuICB2YXIgZGVmaW5lUHJvcGVydHkgPSBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mO1xuICB2YXIgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yTW9kdWxlLmY7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgIGlmICghaGFzKHRhcmdldCwga2V5KSkgZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIGdldE93blByb3BlcnR5RGVzY3JpcHRvcihzb3VyY2UsIGtleSkpO1xuICB9XG59O1xuIiwgInZhciBmYWlscyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9mYWlscycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9ICFmYWlscyhmdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIEYoKSB7IC8qIGVtcHR5ICovIH1cbiAgRi5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBudWxsO1xuICByZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKG5ldyBGKCkpICE9PSBGLnByb3RvdHlwZTtcbn0pO1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciBJdGVyYXRvclByb3RvdHlwZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pdGVyYXRvcnMtY29yZScpLkl0ZXJhdG9yUHJvdG90eXBlO1xudmFyIGNyZWF0ZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtY3JlYXRlJyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG52YXIgc2V0VG9TdHJpbmdUYWcgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2V0LXRvLXN0cmluZy10YWcnKTtcbnZhciBJdGVyYXRvcnMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXRlcmF0b3JzJyk7XG5cbnZhciByZXR1cm5UaGlzID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoSXRlcmF0b3JDb25zdHJ1Y3RvciwgTkFNRSwgbmV4dCkge1xuICB2YXIgVE9fU1RSSU5HX1RBRyA9IE5BTUUgKyAnIEl0ZXJhdG9yJztcbiAgSXRlcmF0b3JDb25zdHJ1Y3Rvci5wcm90b3R5cGUgPSBjcmVhdGUoSXRlcmF0b3JQcm90b3R5cGUsIHsgbmV4dDogY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yKDEsIG5leHQpIH0pO1xuICBzZXRUb1N0cmluZ1RhZyhJdGVyYXRvckNvbnN0cnVjdG9yLCBUT19TVFJJTkdfVEFHLCBmYWxzZSwgdHJ1ZSk7XG4gIEl0ZXJhdG9yc1tUT19TVFJJTkdfVEFHXSA9IHJldHVyblRoaXM7XG4gIHJldHVybiBJdGVyYXRvckNvbnN0cnVjdG9yO1xufTtcbiIsICJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChiaXRtYXAsIHZhbHVlKSB7XG4gIHJldHVybiB7XG4gICAgZW51bWVyYWJsZTogIShiaXRtYXAgJiAxKSxcbiAgICBjb25maWd1cmFibGU6ICEoYml0bWFwICYgMiksXG4gICAgd3JpdGFibGU6ICEoYml0bWFwICYgNCksXG4gICAgdmFsdWU6IHZhbHVlXG4gIH07XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciB0b1ByaW1pdGl2ZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1wcmltaXRpdmUnKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICB2YXIgcHJvcGVydHlLZXkgPSB0b1ByaW1pdGl2ZShrZXkpO1xuICBpZiAocHJvcGVydHlLZXkgaW4gb2JqZWN0KSBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mKG9iamVjdCwgcHJvcGVydHlLZXksIGNyZWF0ZVByb3BlcnR5RGVzY3JpcHRvcigwLCB2YWx1ZSkpO1xuICBlbHNlIG9iamVjdFtwcm9wZXJ0eUtleV0gPSB2YWx1ZTtcbn07XG4iLCAiJ3VzZSBzdHJpY3QnO1xudmFyICQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZXhwb3J0Jyk7XG52YXIgY3JlYXRlSXRlcmF0b3JDb25zdHJ1Y3RvciA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jcmVhdGUtaXRlcmF0b3ItY29uc3RydWN0b3InKTtcbnZhciBnZXRQcm90b3R5cGVPZiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZ2V0LXByb3RvdHlwZS1vZicpO1xudmFyIHNldFByb3RvdHlwZU9mID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL29iamVjdC1zZXQtcHJvdG90eXBlLW9mJyk7XG52YXIgc2V0VG9TdHJpbmdUYWcgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2V0LXRvLXN0cmluZy10YWcnKTtcbnZhciBoaWRlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGUnKTtcbnZhciByZWRlZmluZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9yZWRlZmluZScpO1xudmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xudmFyIElTX1BVUkUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtcHVyZScpO1xudmFyIEl0ZXJhdG9ycyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pdGVyYXRvcnMnKTtcbnZhciBJdGVyYXRvcnNDb3JlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2l0ZXJhdG9ycy1jb3JlJyk7XG5cbnZhciBJdGVyYXRvclByb3RvdHlwZSA9IEl0ZXJhdG9yc0NvcmUuSXRlcmF0b3JQcm90b3R5cGU7XG52YXIgQlVHR1lfU0FGQVJJX0lURVJBVE9SUyA9IEl0ZXJhdG9yc0NvcmUuQlVHR1lfU0FGQVJJX0lURVJBVE9SUztcbnZhciBJVEVSQVRPUiA9IHdlbGxLbm93blN5bWJvbCgnaXRlcmF0b3InKTtcbnZhciBLRVlTID0gJ2tleXMnO1xudmFyIFZBTFVFUyA9ICd2YWx1ZXMnO1xudmFyIEVOVFJJRVMgPSAnZW50cmllcyc7XG5cbnZhciByZXR1cm5UaGlzID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoSXRlcmFibGUsIE5BTUUsIEl0ZXJhdG9yQ29uc3RydWN0b3IsIG5leHQsIERFRkFVTFQsIElTX1NFVCwgRk9SQ0VEKSB7XG4gIGNyZWF0ZUl0ZXJhdG9yQ29uc3RydWN0b3IoSXRlcmF0b3JDb25zdHJ1Y3RvciwgTkFNRSwgbmV4dCk7XG5cbiAgdmFyIGdldEl0ZXJhdGlvbk1ldGhvZCA9IGZ1bmN0aW9uIChLSU5EKSB7XG4gICAgaWYgKEtJTkQgPT09IERFRkFVTFQgJiYgZGVmYXVsdEl0ZXJhdG9yKSByZXR1cm4gZGVmYXVsdEl0ZXJhdG9yO1xuICAgIGlmICghQlVHR1lfU0FGQVJJX0lURVJBVE9SUyAmJiBLSU5EIGluIEl0ZXJhYmxlUHJvdG90eXBlKSByZXR1cm4gSXRlcmFibGVQcm90b3R5cGVbS0lORF07XG4gICAgc3dpdGNoIChLSU5EKSB7XG4gICAgICBjYXNlIEtFWVM6IHJldHVybiBmdW5jdGlvbiBrZXlzKCkgeyByZXR1cm4gbmV3IEl0ZXJhdG9yQ29uc3RydWN0b3IodGhpcywgS0lORCk7IH07XG4gICAgICBjYXNlIFZBTFVFUzogcmV0dXJuIGZ1bmN0aW9uIHZhbHVlcygpIHsgcmV0dXJuIG5ldyBJdGVyYXRvckNvbnN0cnVjdG9yKHRoaXMsIEtJTkQpOyB9O1xuICAgICAgY2FzZSBFTlRSSUVTOiByZXR1cm4gZnVuY3Rpb24gZW50cmllcygpIHsgcmV0dXJuIG5ldyBJdGVyYXRvckNvbnN0cnVjdG9yKHRoaXMsIEtJTkQpOyB9O1xuICAgIH0gcmV0dXJuIGZ1bmN0aW9uICgpIHsgcmV0dXJuIG5ldyBJdGVyYXRvckNvbnN0cnVjdG9yKHRoaXMpOyB9O1xuICB9O1xuXG4gIHZhciBUT19TVFJJTkdfVEFHID0gTkFNRSArICcgSXRlcmF0b3InO1xuICB2YXIgSU5DT1JSRUNUX1ZBTFVFU19OQU1FID0gZmFsc2U7XG4gIHZhciBJdGVyYWJsZVByb3RvdHlwZSA9IEl0ZXJhYmxlLnByb3RvdHlwZTtcbiAgdmFyIG5hdGl2ZUl0ZXJhdG9yID0gSXRlcmFibGVQcm90b3R5cGVbSVRFUkFUT1JdXG4gICAgfHwgSXRlcmFibGVQcm90b3R5cGVbJ0BAaXRlcmF0b3InXVxuICAgIHx8IERFRkFVTFQgJiYgSXRlcmFibGVQcm90b3R5cGVbREVGQVVMVF07XG4gIHZhciBkZWZhdWx0SXRlcmF0b3IgPSAhQlVHR1lfU0FGQVJJX0lURVJBVE9SUyAmJiBuYXRpdmVJdGVyYXRvciB8fCBnZXRJdGVyYXRpb25NZXRob2QoREVGQVVMVCk7XG4gIHZhciBhbnlOYXRpdmVJdGVyYXRvciA9IE5BTUUgPT0gJ0FycmF5JyA/IEl0ZXJhYmxlUHJvdG90eXBlLmVudHJpZXMgfHwgbmF0aXZlSXRlcmF0b3IgOiBuYXRpdmVJdGVyYXRvcjtcbiAgdmFyIEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSwgbWV0aG9kcywgS0VZO1xuXG4gIC8vIGZpeCBuYXRpdmVcbiAgaWYgKGFueU5hdGl2ZUl0ZXJhdG9yKSB7XG4gICAgQ3VycmVudEl0ZXJhdG9yUHJvdG90eXBlID0gZ2V0UHJvdG90eXBlT2YoYW55TmF0aXZlSXRlcmF0b3IuY2FsbChuZXcgSXRlcmFibGUoKSkpO1xuICAgIGlmIChJdGVyYXRvclByb3RvdHlwZSAhPT0gT2JqZWN0LnByb3RvdHlwZSAmJiBDdXJyZW50SXRlcmF0b3JQcm90b3R5cGUubmV4dCkge1xuICAgICAgaWYgKCFJU19QVVJFICYmIGdldFByb3RvdHlwZU9mKEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSkgIT09IEl0ZXJhdG9yUHJvdG90eXBlKSB7XG4gICAgICAgIGlmIChzZXRQcm90b3R5cGVPZikge1xuICAgICAgICAgIHNldFByb3RvdHlwZU9mKEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSwgSXRlcmF0b3JQcm90b3R5cGUpO1xuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBDdXJyZW50SXRlcmF0b3JQcm90b3R5cGVbSVRFUkFUT1JdICE9ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICBoaWRlKEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSwgSVRFUkFUT1IsIHJldHVyblRoaXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBTZXQgQEB0b1N0cmluZ1RhZyB0byBuYXRpdmUgaXRlcmF0b3JzXG4gICAgICBzZXRUb1N0cmluZ1RhZyhDdXJyZW50SXRlcmF0b3JQcm90b3R5cGUsIFRPX1NUUklOR19UQUcsIHRydWUsIHRydWUpO1xuICAgICAgaWYgKElTX1BVUkUpIEl0ZXJhdG9yc1tUT19TVFJJTkdfVEFHXSA9IHJldHVyblRoaXM7XG4gICAgfVxuICB9XG5cbiAgLy8gZml4IEFycmF5I3t2YWx1ZXMsIEBAaXRlcmF0b3J9Lm5hbWUgaW4gVjggLyBGRlxuICBpZiAoREVGQVVMVCA9PSBWQUxVRVMgJiYgbmF0aXZlSXRlcmF0b3IgJiYgbmF0aXZlSXRlcmF0b3IubmFtZSAhPT0gVkFMVUVTKSB7XG4gICAgSU5DT1JSRUNUX1ZBTFVFU19OQU1FID0gdHJ1ZTtcbiAgICBkZWZhdWx0SXRlcmF0b3IgPSBmdW5jdGlvbiB2YWx1ZXMoKSB7IHJldHVybiBuYXRpdmVJdGVyYXRvci5jYWxsKHRoaXMpOyB9O1xuICB9XG5cbiAgLy8gZGVmaW5lIGl0ZXJhdG9yXG4gIGlmICgoIUlTX1BVUkUgfHwgRk9SQ0VEKSAmJiBJdGVyYWJsZVByb3RvdHlwZVtJVEVSQVRPUl0gIT09IGRlZmF1bHRJdGVyYXRvcikge1xuICAgIGhpZGUoSXRlcmFibGVQcm90b3R5cGUsIElURVJBVE9SLCBkZWZhdWx0SXRlcmF0b3IpO1xuICB9XG4gIEl0ZXJhdG9yc1tOQU1FXSA9IGRlZmF1bHRJdGVyYXRvcjtcblxuICAvLyBleHBvcnQgYWRkaXRpb25hbCBtZXRob2RzXG4gIGlmIChERUZBVUxUKSB7XG4gICAgbWV0aG9kcyA9IHtcbiAgICAgIHZhbHVlczogZ2V0SXRlcmF0aW9uTWV0aG9kKFZBTFVFUyksXG4gICAgICBrZXlzOiBJU19TRVQgPyBkZWZhdWx0SXRlcmF0b3IgOiBnZXRJdGVyYXRpb25NZXRob2QoS0VZUyksXG4gICAgICBlbnRyaWVzOiBnZXRJdGVyYXRpb25NZXRob2QoRU5UUklFUylcbiAgICB9O1xuICAgIGlmIChGT1JDRUQpIGZvciAoS0VZIGluIG1ldGhvZHMpIHtcbiAgICAgIGlmIChCVUdHWV9TQUZBUklfSVRFUkFUT1JTIHx8IElOQ09SUkVDVF9WQUxVRVNfTkFNRSB8fCAhKEtFWSBpbiBJdGVyYWJsZVByb3RvdHlwZSkpIHtcbiAgICAgICAgcmVkZWZpbmUoSXRlcmFibGVQcm90b3R5cGUsIEtFWSwgbWV0aG9kc1tLRVldKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgJCh7IHRhcmdldDogTkFNRSwgcHJvdG86IHRydWUsIGZvcmNlZDogQlVHR1lfU0FGQVJJX0lURVJBVE9SUyB8fCBJTkNPUlJFQ1RfVkFMVUVTX05BTUUgfSwgbWV0aG9kcyk7XG4gIH1cblxuICByZXR1cm4gbWV0aG9kcztcbn07XG4iLCAidmFyIGZhaWxzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2ZhaWxzJyk7XG5cbi8vIFRoYW5rJ3MgSUU4IGZvciBoaXMgZnVubnkgZGVmaW5lUHJvcGVydHlcbm1vZHVsZS5leHBvcnRzID0gIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2EnLCB7IGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfSB9KS5hICE9IDc7XG59KTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2lzLW9iamVjdCcpO1xuXG52YXIgZG9jdW1lbnQgPSBnbG9iYWwuZG9jdW1lbnQ7XG4vLyB0eXBlb2YgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCBpcyAnb2JqZWN0JyBpbiBvbGQgSUVcbnZhciBleGlzdCA9IGlzT2JqZWN0KGRvY3VtZW50KSAmJiBpc09iamVjdChkb2N1bWVudC5jcmVhdGVFbGVtZW50KTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIGV4aXN0ID8gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChpdCkgOiB7fTtcbn07XG4iLCAiLy8gSUU4LSBkb24ndCBlbnVtIGJ1ZyBrZXlzXG5tb2R1bGUuZXhwb3J0cyA9IFtcbiAgJ2NvbnN0cnVjdG9yJyxcbiAgJ2hhc093blByb3BlcnR5JyxcbiAgJ2lzUHJvdG90eXBlT2YnLFxuICAncHJvcGVydHlJc0VudW1lcmFibGUnLFxuICAndG9Mb2NhbGVTdHJpbmcnLFxuICAndG9TdHJpbmcnLFxuICAndmFsdWVPZidcbl07XG4iLCAidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9nbG9iYWwnKTtcbnZhciBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktZGVzY3JpcHRvcicpLmY7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRlJyk7XG52YXIgcmVkZWZpbmUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvcmVkZWZpbmUnKTtcbnZhciBzZXRHbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2V0LWdsb2JhbCcpO1xudmFyIGNvcHlDb25zdHJ1Y3RvclByb3BlcnRpZXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY29weS1jb25zdHJ1Y3Rvci1wcm9wZXJ0aWVzJyk7XG52YXIgaXNGb3JjZWQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtZm9yY2VkJyk7XG5cbi8qXG4gIG9wdGlvbnMudGFyZ2V0ICAgICAgLSBuYW1lIG9mIHRoZSB0YXJnZXQgb2JqZWN0XG4gIG9wdGlvbnMuZ2xvYmFsICAgICAgLSB0YXJnZXQgaXMgdGhlIGdsb2JhbCBvYmplY3RcbiAgb3B0aW9ucy5zdGF0ICAgICAgICAtIGV4cG9ydCBhcyBzdGF0aWMgbWV0aG9kcyBvZiB0YXJnZXRcbiAgb3B0aW9ucy5wcm90byAgICAgICAtIGV4cG9ydCBhcyBwcm90b3R5cGUgbWV0aG9kcyBvZiB0YXJnZXRcbiAgb3B0aW9ucy5yZWFsICAgICAgICAtIHJlYWwgcHJvdG90eXBlIG1ldGhvZCBmb3IgdGhlIGBwdXJlYCB2ZXJzaW9uXG4gIG9wdGlvbnMuZm9yY2VkICAgICAgLSBleHBvcnQgZXZlbiBpZiB0aGUgbmF0aXZlIGZlYXR1cmUgaXMgYXZhaWxhYmxlXG4gIG9wdGlvbnMuYmluZCAgICAgICAgLSBiaW5kIG1ldGhvZHMgdG8gdGhlIHRhcmdldCwgcmVxdWlyZWQgZm9yIHRoZSBgcHVyZWAgdmVyc2lvblxuICBvcHRpb25zLndyYXAgICAgICAgIC0gd3JhcCBjb25zdHJ1Y3RvcnMgdG8gcHJldmVudGluZyBnbG9iYWwgcG9sbHV0aW9uLCByZXF1aXJlZCBmb3IgdGhlIGBwdXJlYCB2ZXJzaW9uXG4gIG9wdGlvbnMudW5zYWZlICAgICAgLSB1c2UgdGhlIHNpbXBsZSBhc3NpZ25tZW50IG9mIHByb3BlcnR5IGluc3RlYWQgb2YgZGVsZXRlICsgZGVmaW5lUHJvcGVydHlcbiAgb3B0aW9ucy5zaGFtICAgICAgICAtIGFkZCBhIGZsYWcgdG8gbm90IGNvbXBsZXRlbHkgZnVsbCBwb2x5ZmlsbHNcbiAgb3B0aW9ucy5lbnVtZXJhYmxlICAtIGV4cG9ydCBhcyBlbnVtZXJhYmxlIHByb3BlcnR5XG4gIG9wdGlvbnMubm9UYXJnZXRHZXQgLSBwcmV2ZW50IGNhbGxpbmcgYSBnZXR0ZXIgb24gdGFyZ2V0XG4qL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob3B0aW9ucywgc291cmNlKSB7XG4gIHZhciBUQVJHRVQgPSBvcHRpb25zLnRhcmdldDtcbiAgdmFyIEdMT0JBTCA9IG9wdGlvbnMuZ2xvYmFsO1xuICB2YXIgU1RBVElDID0gb3B0aW9ucy5zdGF0O1xuICB2YXIgRk9SQ0VELCB0YXJnZXQsIGtleSwgdGFyZ2V0UHJvcGVydHksIHNvdXJjZVByb3BlcnR5LCBkZXNjcmlwdG9yO1xuICBpZiAoR0xPQkFMKSB7XG4gICAgdGFyZ2V0ID0gZ2xvYmFsO1xuICB9IGVsc2UgaWYgKFNUQVRJQykge1xuICAgIHRhcmdldCA9IGdsb2JhbFtUQVJHRVRdIHx8IHNldEdsb2JhbChUQVJHRVQsIHt9KTtcbiAgfSBlbHNlIHtcbiAgICB0YXJnZXQgPSAoZ2xvYmFsW1RBUkdFVF0gfHwge30pLnByb3RvdHlwZTtcbiAgfVxuICBpZiAodGFyZ2V0KSBmb3IgKGtleSBpbiBzb3VyY2UpIHtcbiAgICBzb3VyY2VQcm9wZXJ0eSA9IHNvdXJjZVtrZXldO1xuICAgIGlmIChvcHRpb25zLm5vVGFyZ2V0R2V0KSB7XG4gICAgICBkZXNjcmlwdG9yID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KTtcbiAgICAgIHRhcmdldFByb3BlcnR5ID0gZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLnZhbHVlO1xuICAgIH0gZWxzZSB0YXJnZXRQcm9wZXJ0eSA9IHRhcmdldFtrZXldO1xuICAgIEZPUkNFRCA9IGlzRm9yY2VkKEdMT0JBTCA/IGtleSA6IFRBUkdFVCArIChTVEFUSUMgPyAnLicgOiAnIycpICsga2V5LCBvcHRpb25zLmZvcmNlZCk7XG4gICAgLy8gY29udGFpbmVkIGluIHRhcmdldFxuICAgIGlmICghRk9SQ0VEICYmIHRhcmdldFByb3BlcnR5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICh0eXBlb2Ygc291cmNlUHJvcGVydHkgPT09IHR5cGVvZiB0YXJnZXRQcm9wZXJ0eSkgY29udGludWU7XG4gICAgICBjb3B5Q29uc3RydWN0b3JQcm9wZXJ0aWVzKHNvdXJjZVByb3BlcnR5LCB0YXJnZXRQcm9wZXJ0eSk7XG4gICAgfVxuICAgIC8vIGFkZCBhIGZsYWcgdG8gbm90IGNvbXBsZXRlbHkgZnVsbCBwb2x5ZmlsbHNcbiAgICBpZiAob3B0aW9ucy5zaGFtIHx8ICh0YXJnZXRQcm9wZXJ0eSAmJiB0YXJnZXRQcm9wZXJ0eS5zaGFtKSkge1xuICAgICAgaGlkZShzb3VyY2VQcm9wZXJ0eSwgJ3NoYW0nLCB0cnVlKTtcbiAgICB9XG4gICAgLy8gZXh0ZW5kIGdsb2JhbFxuICAgIHJlZGVmaW5lKHRhcmdldCwga2V5LCBzb3VyY2VQcm9wZXJ0eSwgb3B0aW9ucyk7XG4gIH1cbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZXhlYykge1xuICB0cnkge1xuICAgIHJldHVybiAhIWV4ZWMoKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufTtcbiIsICJ2YXIgc2hhcmVkID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3NoYXJlZCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHNoYXJlZCgnbmF0aXZlLWZ1bmN0aW9uLXRvLXN0cmluZycsIEZ1bmN0aW9uLnRvU3RyaW5nKTtcbiIsICJ2YXIgY2xhc3NvZiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jbGFzc29mJyk7XG52YXIgSXRlcmF0b3JzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2l0ZXJhdG9ycycpO1xudmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xuXG52YXIgSVRFUkFUT1IgPSB3ZWxsS25vd25TeW1ib2woJ2l0ZXJhdG9yJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmIChpdCAhPSB1bmRlZmluZWQpIHJldHVybiBpdFtJVEVSQVRPUl1cbiAgICB8fCBpdFsnQEBpdGVyYXRvciddXG4gICAgfHwgSXRlcmF0b3JzW2NsYXNzb2YoaXQpXTtcbn07XG4iLCAidmFyIE8gPSAnb2JqZWN0JztcbnZhciBjaGVjayA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXQgJiYgaXQuTWF0aCA9PSBNYXRoICYmIGl0O1xufTtcblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvaXNzdWVzLzg2I2lzc3VlY29tbWVudC0xMTU3NTkwMjhcbm1vZHVsZS5leHBvcnRzID1cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG4gIGNoZWNrKHR5cGVvZiBnbG9iYWxUaGlzID09IE8gJiYgZ2xvYmFsVGhpcykgfHxcbiAgY2hlY2sodHlwZW9mIHdpbmRvdyA9PSBPICYmIHdpbmRvdykgfHxcbiAgY2hlY2sodHlwZW9mIHNlbGYgPT0gTyAmJiBzZWxmKSB8fFxuICBjaGVjayh0eXBlb2YgZ2xvYmFsID09IE8gJiYgZ2xvYmFsKSB8fFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgRnVuY3Rpb24oJ3JldHVybiB0aGlzJykoKTtcbiIsICJ2YXIgaGFzT3duUHJvcGVydHkgPSB7fS5oYXNPd25Qcm9wZXJ0eTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIGtleSkge1xuICByZXR1cm4gaGFzT3duUHJvcGVydHkuY2FsbChpdCwga2V5KTtcbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSB7fTtcbiIsICJ2YXIgREVTQ1JJUFRPUlMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZGVzY3JpcHRvcnMnKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gREVTQ1JJUFRPUlMgPyBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIHJldHVybiBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mKG9iamVjdCwga2V5LCBjcmVhdGVQcm9wZXJ0eURlc2NyaXB0b3IoMSwgdmFsdWUpKTtcbn0gOiBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIG9iamVjdFtrZXldID0gdmFsdWU7XG4gIHJldHVybiBvYmplY3Q7XG59O1xuIiwgInZhciBnbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2xvYmFsJyk7XG5cbnZhciBkb2N1bWVudCA9IGdsb2JhbC5kb2N1bWVudDtcblxubW9kdWxlLmV4cG9ydHMgPSBkb2N1bWVudCAmJiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4iLCAidmFyIERFU0NSSVBUT1JTID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2Rlc2NyaXB0b3JzJyk7XG52YXIgZmFpbHMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZmFpbHMnKTtcbnZhciBjcmVhdGVFbGVtZW50ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2RvY3VtZW50LWNyZWF0ZS1lbGVtZW50Jyk7XG5cbi8vIFRoYW5rJ3MgSUU4IGZvciBoaXMgZnVubnkgZGVmaW5lUHJvcGVydHlcbm1vZHVsZS5leHBvcnRzID0gIURFU0NSSVBUT1JTICYmICFmYWlscyhmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoY3JlYXRlRWxlbWVudCgnZGl2JyksICdhJywge1xuICAgIGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfVxuICB9KS5hICE9IDc7XG59KTtcbiIsICIvLyBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIGFuZCBub24tZW51bWVyYWJsZSBvbGQgVjggc3RyaW5nc1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2ZhaWxzJyk7XG52YXIgY2xhc3NvZiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jbGFzc29mLXJhdycpO1xuXG52YXIgc3BsaXQgPSAnJy5zcGxpdDtcblxubW9kdWxlLmV4cG9ydHMgPSBmYWlscyhmdW5jdGlvbiAoKSB7XG4gIC8vIHRocm93cyBhbiBlcnJvciBpbiByaGlubywgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9tb3ppbGxhL3JoaW5vL2lzc3Vlcy8zNDZcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGluc1xuICByZXR1cm4gIU9iamVjdCgneicpLnByb3BlcnR5SXNFbnVtZXJhYmxlKDApO1xufSkgPyBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIGNsYXNzb2YoaXQpID09ICdTdHJpbmcnID8gc3BsaXQuY2FsbChpdCwgJycpIDogT2JqZWN0KGl0KTtcbn0gOiBPYmplY3Q7XG4iLCAidmFyIE5BVElWRV9XRUFLX01BUCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9uYXRpdmUtd2Vhay1tYXAnKTtcbnZhciBnbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2xvYmFsJyk7XG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtb2JqZWN0Jyk7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRlJyk7XG52YXIgb2JqZWN0SGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIHNoYXJlZEtleSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQta2V5Jyk7XG52YXIgaGlkZGVuS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRkZW4ta2V5cycpO1xuXG52YXIgV2Vha01hcCA9IGdsb2JhbC5XZWFrTWFwO1xudmFyIHNldCwgZ2V0LCBoYXM7XG5cbnZhciBlbmZvcmNlID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBoYXMoaXQpID8gZ2V0KGl0KSA6IHNldChpdCwge30pO1xufTtcblxudmFyIGdldHRlckZvciA9IGZ1bmN0aW9uIChUWVBFKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoaXQpIHtcbiAgICB2YXIgc3RhdGU7XG4gICAgaWYgKCFpc09iamVjdChpdCkgfHwgKHN0YXRlID0gZ2V0KGl0KSkudHlwZSAhPT0gVFlQRSkge1xuICAgICAgdGhyb3cgVHlwZUVycm9yKCdJbmNvbXBhdGlibGUgcmVjZWl2ZXIsICcgKyBUWVBFICsgJyByZXF1aXJlZCcpO1xuICAgIH0gcmV0dXJuIHN0YXRlO1xuICB9O1xufTtcblxuaWYgKE5BVElWRV9XRUFLX01BUCkge1xuICB2YXIgc3RvcmUgPSBuZXcgV2Vha01hcCgpO1xuICB2YXIgd21nZXQgPSBzdG9yZS5nZXQ7XG4gIHZhciB3bWhhcyA9IHN0b3JlLmhhcztcbiAgdmFyIHdtc2V0ID0gc3RvcmUuc2V0O1xuICBzZXQgPSBmdW5jdGlvbiAoaXQsIG1ldGFkYXRhKSB7XG4gICAgd21zZXQuY2FsbChzdG9yZSwgaXQsIG1ldGFkYXRhKTtcbiAgICByZXR1cm4gbWV0YWRhdGE7XG4gIH07XG4gIGdldCA9IGZ1bmN0aW9uIChpdCkge1xuICAgIHJldHVybiB3bWdldC5jYWxsKHN0b3JlLCBpdCkgfHwge307XG4gIH07XG4gIGhhcyA9IGZ1bmN0aW9uIChpdCkge1xuICAgIHJldHVybiB3bWhhcy5jYWxsKHN0b3JlLCBpdCk7XG4gIH07XG59IGVsc2Uge1xuICB2YXIgU1RBVEUgPSBzaGFyZWRLZXkoJ3N0YXRlJyk7XG4gIGhpZGRlbktleXNbU1RBVEVdID0gdHJ1ZTtcbiAgc2V0ID0gZnVuY3Rpb24gKGl0LCBtZXRhZGF0YSkge1xuICAgIGhpZGUoaXQsIFNUQVRFLCBtZXRhZGF0YSk7XG4gICAgcmV0dXJuIG1ldGFkYXRhO1xuICB9O1xuICBnZXQgPSBmdW5jdGlvbiAoaXQpIHtcbiAgICByZXR1cm4gb2JqZWN0SGFzKGl0LCBTVEFURSkgPyBpdFtTVEFURV0gOiB7fTtcbiAgfTtcbiAgaGFzID0gZnVuY3Rpb24gKGl0KSB7XG4gICAgcmV0dXJuIG9iamVjdEhhcyhpdCwgU1RBVEUpO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgc2V0OiBzZXQsXG4gIGdldDogZ2V0LFxuICBoYXM6IGhhcyxcbiAgZW5mb3JjZTogZW5mb3JjZSxcbiAgZ2V0dGVyRm9yOiBnZXR0ZXJGb3Jcbn07XG4iLCAidmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xudmFyIEl0ZXJhdG9ycyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pdGVyYXRvcnMnKTtcblxudmFyIElURVJBVE9SID0gd2VsbEtub3duU3ltYm9sKCdpdGVyYXRvcicpO1xudmFyIEFycmF5UHJvdG90eXBlID0gQXJyYXkucHJvdG90eXBlO1xuXG4vLyBjaGVjayBvbiBkZWZhdWx0IEFycmF5IGl0ZXJhdG9yXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXQgIT09IHVuZGVmaW5lZCAmJiAoSXRlcmF0b3JzLkFycmF5ID09PSBpdCB8fCBBcnJheVByb3RvdHlwZVtJVEVSQVRPUl0gPT09IGl0KTtcbn07XG4iLCAidmFyIGZhaWxzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2ZhaWxzJyk7XG5cbnZhciByZXBsYWNlbWVudCA9IC8jfFxcLnByb3RvdHlwZVxcLi87XG5cbnZhciBpc0ZvcmNlZCA9IGZ1bmN0aW9uIChmZWF0dXJlLCBkZXRlY3Rpb24pIHtcbiAgdmFyIHZhbHVlID0gZGF0YVtub3JtYWxpemUoZmVhdHVyZSldO1xuICByZXR1cm4gdmFsdWUgPT0gUE9MWUZJTEwgPyB0cnVlXG4gICAgOiB2YWx1ZSA9PSBOQVRJVkUgPyBmYWxzZVxuICAgIDogdHlwZW9mIGRldGVjdGlvbiA9PSAnZnVuY3Rpb24nID8gZmFpbHMoZGV0ZWN0aW9uKVxuICAgIDogISFkZXRlY3Rpb247XG59O1xuXG52YXIgbm9ybWFsaXplID0gaXNGb3JjZWQubm9ybWFsaXplID0gZnVuY3Rpb24gKHN0cmluZykge1xuICByZXR1cm4gU3RyaW5nKHN0cmluZykucmVwbGFjZShyZXBsYWNlbWVudCwgJy4nKS50b0xvd2VyQ2FzZSgpO1xufTtcblxudmFyIGRhdGEgPSBpc0ZvcmNlZC5kYXRhID0ge307XG52YXIgTkFUSVZFID0gaXNGb3JjZWQuTkFUSVZFID0gJ04nO1xudmFyIFBPTFlGSUxMID0gaXNGb3JjZWQuUE9MWUZJTEwgPSAnUCc7XG5cbm1vZHVsZS5leHBvcnRzID0gaXNGb3JjZWQ7XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIHR5cGVvZiBpdCA9PT0gJ29iamVjdCcgPyBpdCAhPT0gbnVsbCA6IHR5cGVvZiBpdCA9PT0gJ2Z1bmN0aW9uJztcbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmYWxzZTtcbiIsICIndXNlIHN0cmljdCc7XG52YXIgZ2V0UHJvdG90eXBlT2YgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1wcm90b3R5cGUtb2YnKTtcbnZhciBoaWRlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGUnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaGFzJyk7XG52YXIgd2VsbEtub3duU3ltYm9sID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3dlbGwta25vd24tc3ltYm9sJyk7XG52YXIgSVNfUFVSRSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pcy1wdXJlJyk7XG5cbnZhciBJVEVSQVRPUiA9IHdlbGxLbm93blN5bWJvbCgnaXRlcmF0b3InKTtcbnZhciBCVUdHWV9TQUZBUklfSVRFUkFUT1JTID0gZmFsc2U7XG5cbnZhciByZXR1cm5UaGlzID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfTtcblxuLy8gYCVJdGVyYXRvclByb3RvdHlwZSVgIG9iamVjdFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtJWl0ZXJhdG9ycHJvdG90eXBlJS1vYmplY3RcbnZhciBJdGVyYXRvclByb3RvdHlwZSwgUHJvdG90eXBlT2ZBcnJheUl0ZXJhdG9yUHJvdG90eXBlLCBhcnJheUl0ZXJhdG9yO1xuXG5pZiAoW10ua2V5cykge1xuICBhcnJheUl0ZXJhdG9yID0gW10ua2V5cygpO1xuICAvLyBTYWZhcmkgOCBoYXMgYnVnZ3kgaXRlcmF0b3JzIHcvbyBgbmV4dGBcbiAgaWYgKCEoJ25leHQnIGluIGFycmF5SXRlcmF0b3IpKSBCVUdHWV9TQUZBUklfSVRFUkFUT1JTID0gdHJ1ZTtcbiAgZWxzZSB7XG4gICAgUHJvdG90eXBlT2ZBcnJheUl0ZXJhdG9yUHJvdG90eXBlID0gZ2V0UHJvdG90eXBlT2YoZ2V0UHJvdG90eXBlT2YoYXJyYXlJdGVyYXRvcikpO1xuICAgIGlmIChQcm90b3R5cGVPZkFycmF5SXRlcmF0b3JQcm90b3R5cGUgIT09IE9iamVjdC5wcm90b3R5cGUpIEl0ZXJhdG9yUHJvdG90eXBlID0gUHJvdG90eXBlT2ZBcnJheUl0ZXJhdG9yUHJvdG90eXBlO1xuICB9XG59XG5cbmlmIChJdGVyYXRvclByb3RvdHlwZSA9PSB1bmRlZmluZWQpIEl0ZXJhdG9yUHJvdG90eXBlID0ge307XG5cbi8vIDI1LjEuMi4xLjEgJUl0ZXJhdG9yUHJvdG90eXBlJVtAQGl0ZXJhdG9yXSgpXG5pZiAoIUlTX1BVUkUgJiYgIWhhcyhJdGVyYXRvclByb3RvdHlwZSwgSVRFUkFUT1IpKSBoaWRlKEl0ZXJhdG9yUHJvdG90eXBlLCBJVEVSQVRPUiwgcmV0dXJuVGhpcyk7XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBJdGVyYXRvclByb3RvdHlwZTogSXRlcmF0b3JQcm90b3R5cGUsXG4gIEJVR0dZX1NBRkFSSV9JVEVSQVRPUlM6IEJVR0dZX1NBRkFSSV9JVEVSQVRPUlNcbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSB7fTtcbiIsICJ2YXIgZmFpbHMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZmFpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSAhIU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgJiYgIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgLy8gQ2hyb21lIDM4IFN5bWJvbCBoYXMgaW5jb3JyZWN0IHRvU3RyaW5nIGNvbnZlcnNpb25cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG4gIHJldHVybiAhU3RyaW5nKFN5bWJvbCgpKTtcbn0pO1xuIiwgInZhciBnbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2xvYmFsJyk7XG52YXIgbmF0aXZlRnVuY3Rpb25Ub1N0cmluZyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9mdW5jdGlvbi10by1zdHJpbmcnKTtcblxudmFyIFdlYWtNYXAgPSBnbG9iYWwuV2Vha01hcDtcblxubW9kdWxlLmV4cG9ydHMgPSB0eXBlb2YgV2Vha01hcCA9PT0gJ2Z1bmN0aW9uJyAmJiAvbmF0aXZlIGNvZGUvLnRlc3QobmF0aXZlRnVuY3Rpb25Ub1N0cmluZy5jYWxsKFdlYWtNYXApKTtcbiIsICJ2YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYW4tb2JqZWN0Jyk7XG52YXIgZGVmaW5lUHJvcGVydGllcyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnRpZXMnKTtcbnZhciBlbnVtQnVnS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9lbnVtLWJ1Zy1rZXlzJyk7XG52YXIgaGlkZGVuS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRkZW4ta2V5cycpO1xudmFyIGh0bWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaHRtbCcpO1xudmFyIGRvY3VtZW50Q3JlYXRlRWxlbWVudCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kb2N1bWVudC1jcmVhdGUtZWxlbWVudCcpO1xudmFyIHNoYXJlZEtleSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQta2V5Jyk7XG52YXIgSUVfUFJPVE8gPSBzaGFyZWRLZXkoJ0lFX1BST1RPJyk7XG5cbnZhciBQUk9UT1RZUEUgPSAncHJvdG90eXBlJztcbnZhciBFbXB0eSA9IGZ1bmN0aW9uICgpIHsgLyogZW1wdHkgKi8gfTtcblxuLy8gQ3JlYXRlIG9iamVjdCB3aXRoIGZha2UgYG51bGxgIHByb3RvdHlwZTogdXNlIGlmcmFtZSBPYmplY3Qgd2l0aCBjbGVhcmVkIHByb3RvdHlwZVxudmFyIGNyZWF0ZURpY3QgPSBmdW5jdGlvbiAoKSB7XG4gIC8vIFRocmFzaCwgd2FzdGUgYW5kIHNvZG9teTogSUUgR0MgYnVnXG4gIHZhciBpZnJhbWUgPSBkb2N1bWVudENyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpO1xuICB2YXIgbGVuZ3RoID0gZW51bUJ1Z0tleXMubGVuZ3RoO1xuICB2YXIgbHQgPSAnPCc7XG4gIHZhciBzY3JpcHQgPSAnc2NyaXB0JztcbiAgdmFyIGd0ID0gJz4nO1xuICB2YXIganMgPSAnamF2YScgKyBzY3JpcHQgKyAnOic7XG4gIHZhciBpZnJhbWVEb2N1bWVudDtcbiAgaWZyYW1lLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gIGh0bWwuYXBwZW5kQ2hpbGQoaWZyYW1lKTtcbiAgaWZyYW1lLnNyYyA9IFN0cmluZyhqcyk7XG4gIGlmcmFtZURvY3VtZW50ID0gaWZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7XG4gIGlmcmFtZURvY3VtZW50Lm9wZW4oKTtcbiAgaWZyYW1lRG9jdW1lbnQud3JpdGUobHQgKyBzY3JpcHQgKyBndCArICdkb2N1bWVudC5GPU9iamVjdCcgKyBsdCArICcvJyArIHNjcmlwdCArIGd0KTtcbiAgaWZyYW1lRG9jdW1lbnQuY2xvc2UoKTtcbiAgY3JlYXRlRGljdCA9IGlmcmFtZURvY3VtZW50LkY7XG4gIHdoaWxlIChsZW5ndGgtLSkgZGVsZXRlIGNyZWF0ZURpY3RbUFJPVE9UWVBFXVtlbnVtQnVnS2V5c1tsZW5ndGhdXTtcbiAgcmV0dXJuIGNyZWF0ZURpY3QoKTtcbn07XG5cbi8vIDE5LjEuMi4yIC8gMTUuMi4zLjUgT2JqZWN0LmNyZWF0ZShPIFssIFByb3BlcnRpZXNdKVxubW9kdWxlLmV4cG9ydHMgPSBPYmplY3QuY3JlYXRlIHx8IGZ1bmN0aW9uIGNyZWF0ZShPLCBQcm9wZXJ0aWVzKSB7XG4gIHZhciByZXN1bHQ7XG4gIGlmIChPICE9PSBudWxsKSB7XG4gICAgRW1wdHlbUFJPVE9UWVBFXSA9IGFuT2JqZWN0KE8pO1xuICAgIHJlc3VsdCA9IG5ldyBFbXB0eSgpO1xuICAgIEVtcHR5W1BST1RPVFlQRV0gPSBudWxsO1xuICAgIC8vIGFkZCBcIl9fcHJvdG9fX1wiIGZvciBPYmplY3QuZ2V0UHJvdG90eXBlT2YgcG9seWZpbGxcbiAgICByZXN1bHRbSUVfUFJPVE9dID0gTztcbiAgfSBlbHNlIHJlc3VsdCA9IGNyZWF0ZURpY3QoKTtcbiAgcmV0dXJuIFByb3BlcnRpZXMgPT09IHVuZGVmaW5lZCA/IHJlc3VsdCA6IGRlZmluZVByb3BlcnRpZXMocmVzdWx0LCBQcm9wZXJ0aWVzKTtcbn07XG5cbmhpZGRlbktleXNbSUVfUFJPVE9dID0gdHJ1ZTtcbiIsICJ2YXIgREVTQ1JJUFRPUlMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZGVzY3JpcHRvcnMnKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYW4tb2JqZWN0Jyk7XG52YXIgb2JqZWN0S2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3Qta2V5cycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IERFU0NSSVBUT1JTID8gT2JqZWN0LmRlZmluZVByb3BlcnRpZXMgOiBmdW5jdGlvbiBkZWZpbmVQcm9wZXJ0aWVzKE8sIFByb3BlcnRpZXMpIHtcbiAgYW5PYmplY3QoTyk7XG4gIHZhciBrZXlzID0gb2JqZWN0S2V5cyhQcm9wZXJ0aWVzKTtcbiAgdmFyIGxlbmd0aCA9IGtleXMubGVuZ3RoO1xuICB2YXIgaSA9IDA7XG4gIHZhciBrZXk7XG4gIHdoaWxlIChsZW5ndGggPiBpKSBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mKE8sIGtleSA9IGtleXNbaSsrXSwgUHJvcGVydGllc1trZXldKTtcbiAgcmV0dXJuIE87XG59O1xuIiwgInZhciBERVNDUklQVE9SUyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kZXNjcmlwdG9ycycpO1xudmFyIElFOF9ET01fREVGSU5FID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2llOC1kb20tZGVmaW5lJyk7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYW4tb2JqZWN0Jyk7XG52YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8tcHJpbWl0aXZlJyk7XG5cbnZhciBuYXRpdmVEZWZpbmVQcm9wZXJ0eSA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTtcblxuZXhwb3J0cy5mID0gREVTQ1JJUFRPUlMgPyBuYXRpdmVEZWZpbmVQcm9wZXJ0eSA6IGZ1bmN0aW9uIGRlZmluZVByb3BlcnR5KE8sIFAsIEF0dHJpYnV0ZXMpIHtcbiAgYW5PYmplY3QoTyk7XG4gIFAgPSB0b1ByaW1pdGl2ZShQLCB0cnVlKTtcbiAgYW5PYmplY3QoQXR0cmlidXRlcyk7XG4gIGlmIChJRThfRE9NX0RFRklORSkgdHJ5IHtcbiAgICByZXR1cm4gbmF0aXZlRGVmaW5lUHJvcGVydHkoTywgUCwgQXR0cmlidXRlcyk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7IC8qIGVtcHR5ICovIH1cbiAgaWYgKCdnZXQnIGluIEF0dHJpYnV0ZXMgfHwgJ3NldCcgaW4gQXR0cmlidXRlcykgdGhyb3cgVHlwZUVycm9yKCdBY2Nlc3NvcnMgbm90IHN1cHBvcnRlZCcpO1xuICBpZiAoJ3ZhbHVlJyBpbiBBdHRyaWJ1dGVzKSBPW1BdID0gQXR0cmlidXRlcy52YWx1ZTtcbiAgcmV0dXJuIE87XG59O1xuIiwgInZhciBERVNDUklQVE9SUyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kZXNjcmlwdG9ycycpO1xudmFyIHByb3BlcnR5SXNFbnVtZXJhYmxlTW9kdWxlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL29iamVjdC1wcm9wZXJ0eS1pcy1lbnVtZXJhYmxlJyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG52YXIgdG9JbmRleGVkT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLWluZGV4ZWQtb2JqZWN0Jyk7XG52YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8tcHJpbWl0aXZlJyk7XG52YXIgaGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIElFOF9ET01fREVGSU5FID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2llOC1kb20tZGVmaW5lJyk7XG5cbnZhciBuYXRpdmVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO1xuXG5leHBvcnRzLmYgPSBERVNDUklQVE9SUyA/IG5hdGl2ZUdldE93blByb3BlcnR5RGVzY3JpcHRvciA6IGZ1bmN0aW9uIGdldE93blByb3BlcnR5RGVzY3JpcHRvcihPLCBQKSB7XG4gIE8gPSB0b0luZGV4ZWRPYmplY3QoTyk7XG4gIFAgPSB0b1ByaW1pdGl2ZShQLCB0cnVlKTtcbiAgaWYgKElFOF9ET01fREVGSU5FKSB0cnkge1xuICAgIHJldHVybiBuYXRpdmVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoTywgUCk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7IC8qIGVtcHR5ICovIH1cbiAgaWYgKGhhcyhPLCBQKSkgcmV0dXJuIGNyZWF0ZVByb3BlcnR5RGVzY3JpcHRvcighcHJvcGVydHlJc0VudW1lcmFibGVNb2R1bGUuZi5jYWxsKE8sIFApLCBPW1BdKTtcbn07XG4iLCAiLy8gMTkuMS4yLjcgLyAxNS4yLjMuNCBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhPKVxudmFyIGludGVybmFsT2JqZWN0S2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3Qta2V5cy1pbnRlcm5hbCcpO1xudmFyIGVudW1CdWdLZXlzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2VudW0tYnVnLWtleXMnKTtcblxudmFyIGhpZGRlbktleXMgPSBlbnVtQnVnS2V5cy5jb25jYXQoJ2xlbmd0aCcsICdwcm90b3R5cGUnKTtcblxuZXhwb3J0cy5mID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24gZ2V0T3duUHJvcGVydHlOYW1lcyhPKSB7XG4gIHJldHVybiBpbnRlcm5hbE9iamVjdEtleXMoTywgaGlkZGVuS2V5cyk7XG59O1xuIiwgImV4cG9ydHMuZiA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM7XG4iLCAidmFyIGhhcyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oYXMnKTtcbnZhciB0b09iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1vYmplY3QnKTtcbnZhciBzaGFyZWRLZXkgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2hhcmVkLWtleScpO1xudmFyIENPUlJFQ1RfUFJPVE9UWVBFX0dFVFRFUiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jb3JyZWN0LXByb3RvdHlwZS1nZXR0ZXInKTtcblxudmFyIElFX1BST1RPID0gc2hhcmVkS2V5KCdJRV9QUk9UTycpO1xudmFyIE9iamVjdFByb3RvdHlwZSA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8vIDE5LjEuMi45IC8gMTUuMi4zLjIgT2JqZWN0LmdldFByb3RvdHlwZU9mKE8pXG5tb2R1bGUuZXhwb3J0cyA9IENPUlJFQ1RfUFJPVE9UWVBFX0dFVFRFUiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIChPKSB7XG4gIE8gPSB0b09iamVjdChPKTtcbiAgaWYgKGhhcyhPLCBJRV9QUk9UTykpIHJldHVybiBPW0lFX1BST1RPXTtcbiAgaWYgKHR5cGVvZiBPLmNvbnN0cnVjdG9yID09ICdmdW5jdGlvbicgJiYgTyBpbnN0YW5jZW9mIE8uY29uc3RydWN0b3IpIHtcbiAgICByZXR1cm4gTy5jb25zdHJ1Y3Rvci5wcm90b3R5cGU7XG4gIH0gcmV0dXJuIE8gaW5zdGFuY2VvZiBPYmplY3QgPyBPYmplY3RQcm90b3R5cGUgOiBudWxsO1xufTtcbiIsICJ2YXIgaGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIHRvSW5kZXhlZE9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1pbmRleGVkLW9iamVjdCcpO1xudmFyIGFycmF5SW5jbHVkZXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYXJyYXktaW5jbHVkZXMnKTtcbnZhciBoaWRkZW5LZXlzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGRlbi1rZXlzJyk7XG5cbnZhciBhcnJheUluZGV4T2YgPSBhcnJheUluY2x1ZGVzKGZhbHNlKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob2JqZWN0LCBuYW1lcykge1xuICB2YXIgTyA9IHRvSW5kZXhlZE9iamVjdChvYmplY3QpO1xuICB2YXIgaSA9IDA7XG4gIHZhciByZXN1bHQgPSBbXTtcbiAgdmFyIGtleTtcbiAgZm9yIChrZXkgaW4gTykgIWhhcyhoaWRkZW5LZXlzLCBrZXkpICYmIGhhcyhPLCBrZXkpICYmIHJlc3VsdC5wdXNoKGtleSk7XG4gIC8vIERvbid0IGVudW0gYnVnICYgaGlkZGVuIGtleXNcbiAgd2hpbGUgKG5hbWVzLmxlbmd0aCA+IGkpIGlmIChoYXMoTywga2V5ID0gbmFtZXNbaSsrXSkpIHtcbiAgICB+YXJyYXlJbmRleE9mKHJlc3VsdCwga2V5KSB8fCByZXN1bHQucHVzaChrZXkpO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59O1xuIiwgInZhciBpbnRlcm5hbE9iamVjdEtleXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWtleXMtaW50ZXJuYWwnKTtcbnZhciBlbnVtQnVnS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9lbnVtLWJ1Zy1rZXlzJyk7XG5cbi8vIDE5LjEuMi4xNCAvIDE1LjIuMy4xNCBPYmplY3Qua2V5cyhPKVxubW9kdWxlLmV4cG9ydHMgPSBPYmplY3Qua2V5cyB8fCBmdW5jdGlvbiBrZXlzKE8pIHtcbiAgcmV0dXJuIGludGVybmFsT2JqZWN0S2V5cyhPLCBlbnVtQnVnS2V5cyk7XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciBuYXRpdmVQcm9wZXJ0eUlzRW51bWVyYWJsZSA9IHt9LnByb3BlcnR5SXNFbnVtZXJhYmxlO1xudmFyIGdldE93blByb3BlcnR5RGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7XG5cbi8vIE5hc2hvcm4gfiBKREs4IGJ1Z1xudmFyIE5BU0hPUk5fQlVHID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yICYmICFuYXRpdmVQcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHsgMTogMiB9LCAxKTtcblxuZXhwb3J0cy5mID0gTkFTSE9STl9CVUcgPyBmdW5jdGlvbiBwcm9wZXJ0eUlzRW51bWVyYWJsZShWKSB7XG4gIHZhciBkZXNjcmlwdG9yID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRoaXMsIFYpO1xuICByZXR1cm4gISFkZXNjcmlwdG9yICYmIGRlc2NyaXB0b3IuZW51bWVyYWJsZTtcbn0gOiBuYXRpdmVQcm9wZXJ0eUlzRW51bWVyYWJsZTtcbiIsICJ2YXIgdmFsaWRhdGVTZXRQcm90b3R5cGVPZkFyZ3VtZW50cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy92YWxpZGF0ZS1zZXQtcHJvdG90eXBlLW9mLWFyZ3VtZW50cycpO1xuXG4vLyBXb3JrcyB3aXRoIF9fcHJvdG9fXyBvbmx5LiBPbGQgdjggY2FuJ3Qgd29yayB3aXRoIG51bGwgcHJvdG8gb2JqZWN0cy5cbi8qIGVzbGludC1kaXNhYmxlIG5vLXByb3RvICovXG5tb2R1bGUuZXhwb3J0cyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCAoJ19fcHJvdG9fXycgaW4ge30gPyBmdW5jdGlvbiAoKSB7XG4gIHZhciBjb3JyZWN0U2V0dGVyID0gZmFsc2U7XG4gIHZhciB0ZXN0ID0ge307XG4gIHZhciBzZXR0ZXI7XG4gIHRyeSB7XG4gICAgc2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihPYmplY3QucHJvdG90eXBlLCAnX19wcm90b19fJykuc2V0O1xuICAgIHNldHRlci5jYWxsKHRlc3QsIFtdKTtcbiAgICBjb3JyZWN0U2V0dGVyID0gdGVzdCBpbnN0YW5jZW9mIEFycmF5O1xuICB9IGNhdGNoIChlcnJvcikgeyAvKiBlbXB0eSAqLyB9XG4gIHJldHVybiBmdW5jdGlvbiBzZXRQcm90b3R5cGVPZihPLCBwcm90bykge1xuICAgIHZhbGlkYXRlU2V0UHJvdG90eXBlT2ZBcmd1bWVudHMoTywgcHJvdG8pO1xuICAgIGlmIChjb3JyZWN0U2V0dGVyKSBzZXR0ZXIuY2FsbChPLCBwcm90byk7XG4gICAgZWxzZSBPLl9fcHJvdG9fXyA9IHByb3RvO1xuICAgIHJldHVybiBPO1xuICB9O1xufSgpIDogdW5kZWZpbmVkKTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIGdldE93blByb3BlcnR5TmFtZXNNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktbmFtZXMnKTtcbnZhciBnZXRPd25Qcm9wZXJ0eVN5bWJvbHNNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktc3ltYm9scycpO1xudmFyIGFuT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2FuLW9iamVjdCcpO1xuXG52YXIgUmVmbGVjdCA9IGdsb2JhbC5SZWZsZWN0O1xuXG4vLyBhbGwgb2JqZWN0IGtleXMsIGluY2x1ZGVzIG5vbi1lbnVtZXJhYmxlIGFuZCBzeW1ib2xzXG5tb2R1bGUuZXhwb3J0cyA9IFJlZmxlY3QgJiYgUmVmbGVjdC5vd25LZXlzIHx8IGZ1bmN0aW9uIG93bktleXMoaXQpIHtcbiAgdmFyIGtleXMgPSBnZXRPd25Qcm9wZXJ0eU5hbWVzTW9kdWxlLmYoYW5PYmplY3QoaXQpKTtcbiAgdmFyIGdldE93blByb3BlcnR5U3ltYm9scyA9IGdldE93blByb3BlcnR5U3ltYm9sc01vZHVsZS5mO1xuICByZXR1cm4gZ2V0T3duUHJvcGVydHlTeW1ib2xzID8ga2V5cy5jb25jYXQoZ2V0T3duUHJvcGVydHlTeW1ib2xzKGl0KSkgOiBrZXlzO1xufTtcbiIsICJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9nbG9iYWwnKTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIHNoYXJlZCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQnKTtcbnZhciBoaWRlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGUnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaGFzJyk7XG52YXIgc2V0R2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3NldC1nbG9iYWwnKTtcbnZhciBuYXRpdmVGdW5jdGlvblRvU3RyaW5nID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2Z1bmN0aW9uLXRvLXN0cmluZycpO1xudmFyIEludGVybmFsU3RhdGVNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaW50ZXJuYWwtc3RhdGUnKTtcblxudmFyIGdldEludGVybmFsU3RhdGUgPSBJbnRlcm5hbFN0YXRlTW9kdWxlLmdldDtcbnZhciBlbmZvcmNlSW50ZXJuYWxTdGF0ZSA9IEludGVybmFsU3RhdGVNb2R1bGUuZW5mb3JjZTtcbnZhciBURU1QTEFURSA9IFN0cmluZyhuYXRpdmVGdW5jdGlvblRvU3RyaW5nKS5zcGxpdCgndG9TdHJpbmcnKTtcblxuc2hhcmVkKCdpbnNwZWN0U291cmNlJywgZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBuYXRpdmVGdW5jdGlvblRvU3RyaW5nLmNhbGwoaXQpO1xufSk7XG5cbihtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChPLCBrZXksIHZhbHVlLCBvcHRpb25zKSB7XG4gIHZhciB1bnNhZmUgPSBvcHRpb25zID8gISFvcHRpb25zLnVuc2FmZSA6IGZhbHNlO1xuICB2YXIgc2ltcGxlID0gb3B0aW9ucyA/ICEhb3B0aW9ucy5lbnVtZXJhYmxlIDogZmFsc2U7XG4gIHZhciBub1RhcmdldEdldCA9IG9wdGlvbnMgPyAhIW9wdGlvbnMubm9UYXJnZXRHZXQgOiBmYWxzZTtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAnZnVuY3Rpb24nKSB7XG4gICAgaWYgKHR5cGVvZiBrZXkgPT0gJ3N0cmluZycgJiYgIWhhcyh2YWx1ZSwgJ25hbWUnKSkgaGlkZSh2YWx1ZSwgJ25hbWUnLCBrZXkpO1xuICAgIGVuZm9yY2VJbnRlcm5hbFN0YXRlKHZhbHVlKS5zb3VyY2UgPSBURU1QTEFURS5qb2luKHR5cGVvZiBrZXkgPT0gJ3N0cmluZycgPyBrZXkgOiAnJyk7XG4gIH1cbiAgaWYgKE8gPT09IGdsb2JhbCkge1xuICAgIGlmIChzaW1wbGUpIE9ba2V5XSA9IHZhbHVlO1xuICAgIGVsc2Ugc2V0R2xvYmFsKGtleSwgdmFsdWUpO1xuICAgIHJldHVybjtcbiAgfSBlbHNlIGlmICghdW5zYWZlKSB7XG4gICAgZGVsZXRlIE9ba2V5XTtcbiAgfSBlbHNlIGlmICghbm9UYXJnZXRHZXQgJiYgT1trZXldKSB7XG4gICAgc2ltcGxlID0gdHJ1ZTtcbiAgfVxuICBpZiAoc2ltcGxlKSBPW2tleV0gPSB2YWx1ZTtcbiAgZWxzZSBoaWRlKE8sIGtleSwgdmFsdWUpO1xuLy8gYWRkIGZha2UgRnVuY3Rpb24jdG9TdHJpbmcgZm9yIGNvcnJlY3Qgd29yayB3cmFwcGVkIG1ldGhvZHMgLyBjb25zdHJ1Y3RvcnMgd2l0aCBtZXRob2RzIGxpa2UgTG9EYXNoIGlzTmF0aXZlXG59KShGdW5jdGlvbi5wcm90b3R5cGUsICd0b1N0cmluZycsIGZ1bmN0aW9uIHRvU3RyaW5nKCkge1xuICByZXR1cm4gdHlwZW9mIHRoaXMgPT0gJ2Z1bmN0aW9uJyAmJiBnZXRJbnRlcm5hbFN0YXRlKHRoaXMpLnNvdXJjZSB8fCBuYXRpdmVGdW5jdGlvblRvU3RyaW5nLmNhbGwodGhpcyk7XG59KTtcbiIsICIvLyBgUmVxdWlyZU9iamVjdENvZXJjaWJsZWAgYWJzdHJhY3Qgb3BlcmF0aW9uXG4vLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1yZXF1aXJlb2JqZWN0Y29lcmNpYmxlXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICBpZiAoaXQgPT0gdW5kZWZpbmVkKSB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjYWxsIG1ldGhvZCBvbiBcIiArIGl0KTtcbiAgcmV0dXJuIGl0O1xufTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaGlkZScpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gIHRyeSB7XG4gICAgaGlkZShnbG9iYWwsIGtleSwgdmFsdWUpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGdsb2JhbFtrZXldID0gdmFsdWU7XG4gIH0gcmV0dXJuIHZhbHVlO1xufTtcbiIsICJ2YXIgZGVmaW5lUHJvcGVydHkgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWRlZmluZS1wcm9wZXJ0eScpLmY7XG52YXIgaGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xuXG52YXIgVE9fU1RSSU5HX1RBRyA9IHdlbGxLbm93blN5bWJvbCgndG9TdHJpbmdUYWcnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFRBRywgU1RBVElDKSB7XG4gIGlmIChpdCAmJiAhaGFzKGl0ID0gU1RBVElDID8gaXQgOiBpdC5wcm90b3R5cGUsIFRPX1NUUklOR19UQUcpKSB7XG4gICAgZGVmaW5lUHJvcGVydHkoaXQsIFRPX1NUUklOR19UQUcsIHsgY29uZmlndXJhYmxlOiB0cnVlLCB2YWx1ZTogVEFHIH0pO1xuICB9XG59O1xuIiwgInZhciBzaGFyZWQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2hhcmVkJyk7XG52YXIgdWlkID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3VpZCcpO1xuXG52YXIga2V5cyA9IHNoYXJlZCgna2V5cycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChrZXkpIHtcbiAgcmV0dXJuIGtleXNba2V5XSB8fCAoa2V5c1trZXldID0gdWlkKGtleSkpO1xufTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIHNldEdsb2JhbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zZXQtZ2xvYmFsJyk7XG52YXIgSVNfUFVSRSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pcy1wdXJlJyk7XG5cbnZhciBTSEFSRUQgPSAnX19jb3JlLWpzX3NoYXJlZF9fJztcbnZhciBzdG9yZSA9IGdsb2JhbFtTSEFSRURdIHx8IHNldEdsb2JhbChTSEFSRUQsIHt9KTtcblxuKG1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSwgdmFsdWUpIHtcbiAgcmV0dXJuIHN0b3JlW2tleV0gfHwgKHN0b3JlW2tleV0gPSB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiB7fSk7XG59KSgndmVyc2lvbnMnLCBbXSkucHVzaCh7XG4gIHZlcnNpb246ICczLjEuMycsXG4gIG1vZGU6IElTX1BVUkUgPyAncHVyZScgOiAnZ2xvYmFsJyxcbiAgY29weXJpZ2h0OiAnwqkgMjAxOSBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSdcbn0pO1xuIiwgInZhciB0b0ludGVnZXIgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8taW50ZWdlcicpO1xudmFyIHJlcXVpcmVPYmplY3RDb2VyY2libGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvcmVxdWlyZS1vYmplY3QtY29lcmNpYmxlJyk7XG5cbi8vIENPTlZFUlRfVE9fU1RSSU5HOiB0cnVlICAtPiBTdHJpbmcjYXRcbi8vIENPTlZFUlRfVE9fU1RSSU5HOiBmYWxzZSAtPiBTdHJpbmcjY29kZVBvaW50QXRcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHRoYXQsIHBvcywgQ09OVkVSVF9UT19TVFJJTkcpIHtcbiAgdmFyIFMgPSBTdHJpbmcocmVxdWlyZU9iamVjdENvZXJjaWJsZSh0aGF0KSk7XG4gIHZhciBwb3NpdGlvbiA9IHRvSW50ZWdlcihwb3MpO1xuICB2YXIgc2l6ZSA9IFMubGVuZ3RoO1xuICB2YXIgZmlyc3QsIHNlY29uZDtcbiAgaWYgKHBvc2l0aW9uIDwgMCB8fCBwb3NpdGlvbiA+PSBzaXplKSByZXR1cm4gQ09OVkVSVF9UT19TVFJJTkcgPyAnJyA6IHVuZGVmaW5lZDtcbiAgZmlyc3QgPSBTLmNoYXJDb2RlQXQocG9zaXRpb24pO1xuICByZXR1cm4gZmlyc3QgPCAweEQ4MDAgfHwgZmlyc3QgPiAweERCRkYgfHwgcG9zaXRpb24gKyAxID09PSBzaXplXG4gICAgfHwgKHNlY29uZCA9IFMuY2hhckNvZGVBdChwb3NpdGlvbiArIDEpKSA8IDB4REMwMCB8fCBzZWNvbmQgPiAweERGRkZcbiAgICAgID8gQ09OVkVSVF9UT19TVFJJTkcgPyBTLmNoYXJBdChwb3NpdGlvbikgOiBmaXJzdFxuICAgICAgOiBDT05WRVJUX1RPX1NUUklORyA/IFMuc2xpY2UocG9zaXRpb24sIHBvc2l0aW9uICsgMikgOiAoZmlyc3QgLSAweEQ4MDAgPDwgMTApICsgKHNlY29uZCAtIDB4REMwMCkgKyAweDEwMDAwO1xufTtcbiIsICJ2YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLWludGVnZXInKTtcblxudmFyIG1heCA9IE1hdGgubWF4O1xudmFyIG1pbiA9IE1hdGgubWluO1xuXG4vLyBIZWxwZXIgZm9yIGEgcG9wdWxhciByZXBlYXRpbmcgY2FzZSBvZiB0aGUgc3BlYzpcbi8vIExldCBpbnRlZ2VyIGJlID8gVG9JbnRlZ2VyKGluZGV4KS5cbi8vIElmIGludGVnZXIgPCAwLCBsZXQgcmVzdWx0IGJlIG1heCgobGVuZ3RoICsgaW50ZWdlciksIDApOyBlbHNlIGxldCByZXN1bHQgYmUgbWluKGxlbmd0aCwgbGVuZ3RoKS5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGluZGV4LCBsZW5ndGgpIHtcbiAgdmFyIGludGVnZXIgPSB0b0ludGVnZXIoaW5kZXgpO1xuICByZXR1cm4gaW50ZWdlciA8IDAgPyBtYXgoaW50ZWdlciArIGxlbmd0aCwgMCkgOiBtaW4oaW50ZWdlciwgbGVuZ3RoKTtcbn07XG4iLCAiLy8gdG9PYmplY3Qgd2l0aCBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIHN0cmluZ3NcbnZhciBJbmRleGVkT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2luZGV4ZWQtb2JqZWN0Jyk7XG52YXIgcmVxdWlyZU9iamVjdENvZXJjaWJsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9yZXF1aXJlLW9iamVjdC1jb2VyY2libGUnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIEluZGV4ZWRPYmplY3QocmVxdWlyZU9iamVjdENvZXJjaWJsZShpdCkpO1xufTtcbiIsICJ2YXIgY2VpbCA9IE1hdGguY2VpbDtcbnZhciBmbG9vciA9IE1hdGguZmxvb3I7XG5cbi8vIGBUb0ludGVnZXJgIGFic3RyYWN0IG9wZXJhdGlvblxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtdG9pbnRlZ2VyXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChhcmd1bWVudCkge1xuICByZXR1cm4gaXNOYU4oYXJndW1lbnQgPSArYXJndW1lbnQpID8gMCA6IChhcmd1bWVudCA+IDAgPyBmbG9vciA6IGNlaWwpKGFyZ3VtZW50KTtcbn07XG4iLCAidmFyIHRvSW50ZWdlciA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1pbnRlZ2VyJyk7XG5cbnZhciBtaW4gPSBNYXRoLm1pbjtcblxuLy8gYFRvTGVuZ3RoYCBhYnN0cmFjdCBvcGVyYXRpb25cbi8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLXRvbGVuZ3RoXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChhcmd1bWVudCkge1xuICByZXR1cm4gYXJndW1lbnQgPiAwID8gbWluKHRvSW50ZWdlcihhcmd1bWVudCksIDB4MUZGRkZGRkZGRkZGRkYpIDogMDsgLy8gMiAqKiA1MyAtIDEgPT0gOTAwNzE5OTI1NDc0MDk5MVxufTtcbiIsICJ2YXIgcmVxdWlyZU9iamVjdENvZXJjaWJsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9yZXF1aXJlLW9iamVjdC1jb2VyY2libGUnKTtcblxuLy8gYFRvT2JqZWN0YCBhYnN0cmFjdCBvcGVyYXRpb25cbi8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLXRvb2JqZWN0XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChhcmd1bWVudCkge1xuICByZXR1cm4gT2JqZWN0KHJlcXVpcmVPYmplY3RDb2VyY2libGUoYXJndW1lbnQpKTtcbn07XG4iLCAidmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2lzLW9iamVjdCcpO1xuXG4vLyA3LjEuMSBUb1ByaW1pdGl2ZShpbnB1dCBbLCBQcmVmZXJyZWRUeXBlXSlcbi8vIGluc3RlYWQgb2YgdGhlIEVTNiBzcGVjIHZlcnNpb24sIHdlIGRpZG4ndCBpbXBsZW1lbnQgQEB0b1ByaW1pdGl2ZSBjYXNlXG4vLyBhbmQgdGhlIHNlY29uZCBhcmd1bWVudCAtIGZsYWcgLSBwcmVmZXJyZWQgdHlwZSBpcyBhIHN0cmluZ1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFMpIHtcbiAgaWYgKCFpc09iamVjdChpdCkpIHJldHVybiBpdDtcbiAgdmFyIGZuLCB2YWw7XG4gIGlmIChTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICBpZiAodHlwZW9mIChmbiA9IGl0LnZhbHVlT2YpID09ICdmdW5jdGlvbicgJiYgIWlzT2JqZWN0KHZhbCA9IGZuLmNhbGwoaXQpKSkgcmV0dXJuIHZhbDtcbiAgaWYgKCFTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWVcIik7XG59O1xuIiwgInZhciBpZCA9IDA7XG52YXIgcG9zdGZpeCA9IE1hdGgucmFuZG9tKCk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICByZXR1cm4gJ1N5bWJvbCgnLmNvbmNhdChrZXkgPT09IHVuZGVmaW5lZCA/ICcnIDoga2V5LCAnKV8nLCAoKytpZCArIHBvc3RmaXgpLnRvU3RyaW5nKDM2KSk7XG59O1xuIiwgInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pcy1vYmplY3QnKTtcbnZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9hbi1vYmplY3QnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoTywgcHJvdG8pIHtcbiAgYW5PYmplY3QoTyk7XG4gIGlmICghaXNPYmplY3QocHJvdG8pICYmIHByb3RvICE9PSBudWxsKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKFwiQ2FuJ3Qgc2V0IFwiICsgU3RyaW5nKHByb3RvKSArICcgYXMgYSBwcm90b3R5cGUnKTtcbiAgfVxufTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIHNoYXJlZCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQnKTtcbnZhciB1aWQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdWlkJyk7XG52YXIgTkFUSVZFX1NZTUJPTCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9uYXRpdmUtc3ltYm9sJyk7XG5cbnZhciBTeW1ib2wgPSBnbG9iYWwuU3ltYm9sO1xudmFyIHN0b3JlID0gc2hhcmVkKCd3a3MnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobmFtZSkge1xuICByZXR1cm4gc3RvcmVbbmFtZV0gfHwgKHN0b3JlW25hbWVdID0gTkFUSVZFX1NZTUJPTCAmJiBTeW1ib2xbbmFtZV1cbiAgICB8fCAoTkFUSVZFX1NZTUJPTCA/IFN5bWJvbCA6IHVpZCkoJ1N5bWJvbC4nICsgbmFtZSkpO1xufTtcbiIsICJ2YXIgJCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9leHBvcnQnKTtcbnZhciBmcm9tID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2FycmF5LWZyb20nKTtcbnZhciBjaGVja0NvcnJlY3RuZXNzT2ZJdGVyYXRpb24gPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY2hlY2stY29ycmVjdG5lc3Mtb2YtaXRlcmF0aW9uJyk7XG5cbnZhciBJTkNPUlJFQ1RfSVRFUkFUSU9OID0gIWNoZWNrQ29ycmVjdG5lc3NPZkl0ZXJhdGlvbihmdW5jdGlvbiAoaXRlcmFibGUpIHtcbiAgQXJyYXkuZnJvbShpdGVyYWJsZSk7XG59KTtcblxuLy8gYEFycmF5LmZyb21gIG1ldGhvZFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtYXJyYXkuZnJvbVxuJCh7IHRhcmdldDogJ0FycmF5Jywgc3RhdDogdHJ1ZSwgZm9yY2VkOiBJTkNPUlJFQ1RfSVRFUkFUSU9OIH0sIHtcbiAgZnJvbTogZnJvbVxufSk7XG4iLCAiJ3VzZSBzdHJpY3QnO1xudmFyIGNvZGVQb2ludEF0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3N0cmluZy1hdCcpO1xudmFyIEludGVybmFsU3RhdGVNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaW50ZXJuYWwtc3RhdGUnKTtcbnZhciBkZWZpbmVJdGVyYXRvciA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kZWZpbmUtaXRlcmF0b3InKTtcblxudmFyIFNUUklOR19JVEVSQVRPUiA9ICdTdHJpbmcgSXRlcmF0b3InO1xudmFyIHNldEludGVybmFsU3RhdGUgPSBJbnRlcm5hbFN0YXRlTW9kdWxlLnNldDtcbnZhciBnZXRJbnRlcm5hbFN0YXRlID0gSW50ZXJuYWxTdGF0ZU1vZHVsZS5nZXR0ZXJGb3IoU1RSSU5HX0lURVJBVE9SKTtcblxuLy8gYFN0cmluZy5wcm90b3R5cGVbQEBpdGVyYXRvcl1gIG1ldGhvZFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtc3RyaW5nLnByb3RvdHlwZS1AQGl0ZXJhdG9yXG5kZWZpbmVJdGVyYXRvcihTdHJpbmcsICdTdHJpbmcnLCBmdW5jdGlvbiAoaXRlcmF0ZWQpIHtcbiAgc2V0SW50ZXJuYWxTdGF0ZSh0aGlzLCB7XG4gICAgdHlwZTogU1RSSU5HX0lURVJBVE9SLFxuICAgIHN0cmluZzogU3RyaW5nKGl0ZXJhdGVkKSxcbiAgICBpbmRleDogMFxuICB9KTtcbi8vIGAlU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUlLm5leHRgIG1ldGhvZFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtJXN0cmluZ2l0ZXJhdG9ycHJvdG90eXBlJS5uZXh0XG59LCBmdW5jdGlvbiBuZXh0KCkge1xuICB2YXIgc3RhdGUgPSBnZXRJbnRlcm5hbFN0YXRlKHRoaXMpO1xuICB2YXIgc3RyaW5nID0gc3RhdGUuc3RyaW5nO1xuICB2YXIgaW5kZXggPSBzdGF0ZS5pbmRleDtcbiAgdmFyIHBvaW50O1xuICBpZiAoaW5kZXggPj0gc3RyaW5nLmxlbmd0aCkgcmV0dXJuIHsgdmFsdWU6IHVuZGVmaW5lZCwgZG9uZTogdHJ1ZSB9O1xuICBwb2ludCA9IGNvZGVQb2ludEF0KHN0cmluZywgaW5kZXgsIHRydWUpO1xuICBzdGF0ZS5pbmRleCArPSBwb2ludC5sZW5ndGg7XG4gIHJldHVybiB7IHZhbHVlOiBwb2ludCwgZG9uZTogZmFsc2UgfTtcbn0pO1xuIiwgInZhciBnO1xyXG5cclxuLy8gVGhpcyB3b3JrcyBpbiBub24tc3RyaWN0IG1vZGVcclxuZyA9IChmdW5jdGlvbigpIHtcclxuXHRyZXR1cm4gdGhpcztcclxufSkoKTtcclxuXHJcbnRyeSB7XHJcblx0Ly8gVGhpcyB3b3JrcyBpZiBldmFsIGlzIGFsbG93ZWQgKHNlZSBDU1ApXHJcblx0ZyA9IGcgfHwgRnVuY3Rpb24oXCJyZXR1cm4gdGhpc1wiKSgpIHx8ICgxLCBldmFsKShcInRoaXNcIik7XHJcbn0gY2F0Y2ggKGUpIHtcclxuXHQvLyBUaGlzIHdvcmtzIGlmIHRoZSB3aW5kb3cgcmVmZXJlbmNlIGlzIGF2YWlsYWJsZVxyXG5cdGlmICh0eXBlb2Ygd2luZG93ID09PSBcIm9iamVjdFwiKSBnID0gd2luZG93O1xyXG59XHJcblxyXG4vLyBnIGNhbiBzdGlsbCBiZSB1bmRlZmluZWQsIGJ1dCBub3RoaW5nIHRvIGRvIGFib3V0IGl0Li4uXHJcbi8vIFdlIHJldHVybiB1bmRlZmluZWQsIGluc3RlYWQgb2Ygbm90aGluZyBoZXJlLCBzbyBpdCdzXHJcbi8vIGVhc2llciB0byBoYW5kbGUgdGhpcyBjYXNlLiBpZighZ2xvYmFsKSB7IC4uLn1cclxuXHJcbm1vZHVsZS5leHBvcnRzID0gZztcclxuIiwgImltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMvZGVkdXBlJztcblxuaW1wb3J0IERFRkFVTFRfQVRUUlMgZnJvbSAnLi9kZWZhdWx0LWF0dHJzLmpzb24nO1xuXG5jbGFzcyBJY29uIHtcbiAgY29uc3RydWN0b3IobmFtZSwgY29udGVudHMsIHRhZ3MgPSBbXSkge1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5jb250ZW50cyA9IGNvbnRlbnRzO1xuICAgIHRoaXMudGFncyA9IHRhZ3M7XG4gICAgdGhpcy5hdHRycyA9IHtcbiAgICAgIC4uLkRFRkFVTFRfQVRUUlMsXG4gICAgICAuLi57IGNsYXNzOiBgZmVhdGhlciBmZWF0aGVyLSR7bmFtZX1gIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gU1ZHIHN0cmluZy5cbiAgICogQHBhcmFtIHtPYmplY3R9IGF0dHJzXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICB0b1N2ZyhhdHRycyA9IHt9KSB7XG4gICAgY29uc3QgY29tYmluZWRBdHRycyA9IHtcbiAgICAgIC4uLnRoaXMuYXR0cnMsXG4gICAgICAuLi5hdHRycyxcbiAgICAgIC4uLnsgY2xhc3M6IGNsYXNzbmFtZXModGhpcy5hdHRycy5jbGFzcywgYXR0cnMuY2xhc3MpIH0sXG4gICAgfTtcblxuICAgIHJldHVybiBgPHN2ZyAke2F0dHJzVG9TdHJpbmcoY29tYmluZWRBdHRycyl9PiR7dGhpcy5jb250ZW50c308L3N2Zz5gO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW4gYEljb25gLlxuICAgKlxuICAgKiBBZGRlZCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gSWYgb2xkIGNvZGUgZXhwZWN0cyBgZmVhdGhlci5pY29ucy48bmFtZT5gXG4gICAqIHRvIGJlIGEgc3RyaW5nLCBgdG9TdHJpbmcoKWAgd2lsbCBnZXQgaW1wbGljaXRseSBjYWxsZWQuXG4gICAqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50cztcbiAgfVxufVxuXG4vKipcbiAqIENvbnZlcnQgYXR0cmlidXRlcyBvYmplY3QgdG8gc3RyaW5nIG9mIEhUTUwgYXR0cmlidXRlcy5cbiAqIEBwYXJhbSB7T2JqZWN0fSBhdHRyc1xuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gYXR0cnNUb1N0cmluZyhhdHRycykge1xuICByZXR1cm4gT2JqZWN0LmtleXMoYXR0cnMpXG4gICAgLm1hcChrZXkgPT4gYCR7a2V5fT1cIiR7YXR0cnNba2V5XX1cImApXG4gICAgLmpvaW4oJyAnKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgSWNvbjtcbiIsICJpbXBvcnQgSWNvbiBmcm9tICcuL2ljb24nO1xuaW1wb3J0IGljb25zIGZyb20gJy4uL2Rpc3QvaWNvbnMuanNvbic7XG5pbXBvcnQgdGFncyBmcm9tICcuL3RhZ3MuanNvbic7XG5cbmV4cG9ydCBkZWZhdWx0IE9iamVjdC5rZXlzKGljb25zKVxuICAubWFwKGtleSA9PiBuZXcgSWNvbihrZXksIGljb25zW2tleV0sIHRhZ3Nba2V5XSkpXG4gIC5yZWR1Y2UoKG9iamVjdCwgaWNvbikgPT4ge1xuICAgIG9iamVjdFtpY29uLm5hbWVdID0gaWNvbjtcbiAgICByZXR1cm4gb2JqZWN0O1xuICB9LCB7fSk7XG4iLCAiaW1wb3J0IGljb25zIGZyb20gJy4vaWNvbnMnO1xuaW1wb3J0IHRvU3ZnIGZyb20gJy4vdG8tc3ZnJztcbmltcG9ydCByZXBsYWNlIGZyb20gJy4vcmVwbGFjZSc7XG5cbm1vZHVsZS5leHBvcnRzID0geyBpY29ucywgdG9TdmcsIHJlcGxhY2UgfTtcbiIsICIvKiBlc2xpbnQtZW52IGJyb3dzZXIgKi9cbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMvZGVkdXBlJztcblxuaW1wb3J0IGljb25zIGZyb20gJy4vaWNvbnMnO1xuXG4vKipcbiAqIFJlcGxhY2UgYWxsIEhUTUwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYGRhdGEtZmVhdGhlcmAgYXR0cmlidXRlIHdpdGggU1ZHIG1hcmt1cFxuICogY29ycmVzcG9uZGluZyB0byB0aGUgZWxlbWVudCdzIGBkYXRhLWZlYXRoZXJgIGF0dHJpYnV0ZSB2YWx1ZS5cbiAqIEBwYXJhbSB7T2JqZWN0fSBhdHRyc1xuICovXG5mdW5jdGlvbiByZXBsYWNlKGF0dHJzID0ge30pIHtcbiAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2BmZWF0aGVyLnJlcGxhY2UoKWAgb25seSB3b3JrcyBpbiBhIGJyb3dzZXIgZW52aXJvbm1lbnQuJyk7XG4gIH1cblxuICBjb25zdCBlbGVtZW50c1RvUmVwbGFjZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLWZlYXRoZXJdJyk7XG5cbiAgQXJyYXkuZnJvbShlbGVtZW50c1RvUmVwbGFjZSkuZm9yRWFjaChlbGVtZW50ID0+XG4gICAgcmVwbGFjZUVsZW1lbnQoZWxlbWVudCwgYXR0cnMpLFxuICApO1xufVxuXG4vKipcbiAqIFJlcGxhY2UgYSBzaW5nbGUgSFRNTCBlbGVtZW50IHdpdGggU1ZHIG1hcmt1cFxuICogY29ycmVzcG9uZGluZyB0byB0aGUgZWxlbWVudCdzIGBkYXRhLWZlYXRoZXJgIGF0dHJpYnV0ZSB2YWx1ZS5cbiAqIEBwYXJhbSB7SFRNTEVsZW1lbnR9IGVsZW1lbnRcbiAqIEBwYXJhbSB7T2JqZWN0fSBhdHRyc1xuICovXG5mdW5jdGlvbiByZXBsYWNlRWxlbWVudChlbGVtZW50LCBhdHRycyA9IHt9KSB7XG4gIGNvbnN0IGVsZW1lbnRBdHRycyA9IGdldEF0dHJzKGVsZW1lbnQpO1xuICBjb25zdCBuYW1lID0gZWxlbWVudEF0dHJzWydkYXRhLWZlYXRoZXInXTtcbiAgZGVsZXRlIGVsZW1lbnRBdHRyc1snZGF0YS1mZWF0aGVyJ107XG5cbiAgaWYgKGljb25zW25hbWVdID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zb2xlLndhcm4oYGZlYXRoZXI6ICcke25hbWV9JyBpcyBub3QgYSB2YWxpZCBpY29uYCk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3Qgc3ZnU3RyaW5nID0gaWNvbnNbbmFtZV0udG9Tdmcoe1xuICAgIC4uLmF0dHJzLFxuICAgIC4uLmVsZW1lbnRBdHRycyxcbiAgICAuLi57IGNsYXNzOiBjbGFzc25hbWVzKGF0dHJzLmNsYXNzLCBlbGVtZW50QXR0cnMuY2xhc3MpIH0sXG4gIH0pO1xuICBjb25zdCBzdmdEb2N1bWVudCA9IG5ldyBET01QYXJzZXIoKS5wYXJzZUZyb21TdHJpbmcoXG4gICAgc3ZnU3RyaW5nLFxuICAgICdpbWFnZS9zdmcreG1sJyxcbiAgKTtcbiAgY29uc3Qgc3ZnRWxlbWVudCA9IHN2Z0RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3N2ZycpO1xuXG4gIGVsZW1lbnQucGFyZW50Tm9kZS5yZXBsYWNlQ2hpbGQoc3ZnRWxlbWVudCwgZWxlbWVudCk7XG59XG5cbi8qKlxuICogR2V0IHRoZSBhdHRyaWJ1dGVzIG9mIGFuIEhUTUwgZWxlbWVudC5cbiAqIEBwYXJhbSB7SFRNTEVsZW1lbnR9IGVsZW1lbnRcbiAqIEByZXR1cm5zIHtPYmplY3R9XG4gKi9cbmZ1bmN0aW9uIGdldEF0dHJzKGVsZW1lbnQpIHtcbiAgcmV0dXJuIEFycmF5LmZyb20oZWxlbWVudC5hdHRyaWJ1dGVzKS5yZWR1Y2UoKGF0dHJzLCBhdHRyKSA9PiB7XG4gICAgYXR0cnNbYXR0ci5uYW1lXSA9IGF0dHIudmFsdWU7XG4gICAgcmV0dXJuIGF0dHJzO1xuICB9LCB7fSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHJlcGxhY2U7XG4iLCAiaW1wb3J0IGljb25zIGZyb20gJy4vaWNvbnMnO1xuXG4vKipcbiAqIENyZWF0ZSBhbiBTVkcgc3RyaW5nLlxuICogQGRlcHJlY2F0ZWRcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gKiBAcGFyYW0ge09iamVjdH0gYXR0cnNcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmZ1bmN0aW9uIHRvU3ZnKG5hbWUsIGF0dHJzID0ge30pIHtcbiAgY29uc29sZS53YXJuKFxuICAgICdmZWF0aGVyLnRvU3ZnKCkgaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSBmZWF0aGVyLmljb25zW25hbWVdLnRvU3ZnKCkgaW5zdGVhZC4nLFxuICApO1xuXG4gIGlmICghbmFtZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignVGhlIHJlcXVpcmVkIGBrZXlgIChpY29uIG5hbWUpIHBhcmFtZXRlciBpcyBtaXNzaW5nLicpO1xuICB9XG5cbiAgaWYgKCFpY29uc1tuYW1lXSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBObyBpY29uIG1hdGNoaW5nICcke25hbWV9Jy4gU2VlIHRoZSBjb21wbGV0ZSBsaXN0IG9mIGljb25zIGF0IGh0dHBzOi8vZmVhdGhlcmljb25zLmNvbWAsXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBpY29uc1tuYW1lXS50b1N2ZyhhdHRycyk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHRvU3ZnO1xuIiwgIjsoZnVuY3Rpb24gKHNheCkge1xuICAvLyB3cmFwcGVyIGZvciBub24tbm9kZSBlbnZzXG4gIHNheC5wYXJzZXIgPSBmdW5jdGlvbiAoc3RyaWN0LCBvcHQpIHtcbiAgICByZXR1cm4gbmV3IFNBWFBhcnNlcihzdHJpY3QsIG9wdClcbiAgfVxuICBzYXguU0FYUGFyc2VyID0gU0FYUGFyc2VyXG4gIHNheC5TQVhTdHJlYW0gPSBTQVhTdHJlYW1cbiAgc2F4LmNyZWF0ZVN0cmVhbSA9IGNyZWF0ZVN0cmVhbVxuXG4gIC8vIFdoZW4gd2UgcGFzcyB0aGUgTUFYX0JVRkZFUl9MRU5HVEggcG9zaXRpb24sIHN0YXJ0IGNoZWNraW5nIGZvciBidWZmZXIgb3ZlcnJ1bnMuXG4gIC8vIFdoZW4gd2UgY2hlY2ssIHNjaGVkdWxlIHRoZSBuZXh0IGNoZWNrIGZvciBNQVhfQlVGRkVSX0xFTkdUSCAtIChtYXgoYnVmZmVyIGxlbmd0aHMpKSxcbiAgLy8gc2luY2UgdGhhdCdzIHRoZSBlYXJsaWVzdCB0aGF0IGEgYnVmZmVyIG92ZXJydW4gY291bGQgb2NjdXIuICBUaGlzIHdheSwgY2hlY2tzIGFyZVxuICAvLyBhcyByYXJlIGFzIHJlcXVpcmVkLCBidXQgYXMgb2Z0ZW4gYXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSBuZXZlciBjcm9zc2luZyB0aGlzIGJvdW5kLlxuICAvLyBGdXJ0aGVybW9yZSwgYnVmZmVycyBhcmUgb25seSB0ZXN0ZWQgYXQgbW9zdCBvbmNlIHBlciB3cml0ZSgpLCBzbyBwYXNzaW5nIGEgdmVyeVxuICAvLyBsYXJnZSBzdHJpbmcgaW50byB3cml0ZSgpIG1pZ2h0IGhhdmUgdW5kZXNpcmFibGUgZWZmZWN0cywgYnV0IHRoaXMgaXMgbWFuYWdlYWJsZSBieVxuICAvLyB0aGUgY2FsbGVyLCBzbyBpdCBpcyBhc3N1bWVkIHRvIGJlIHNhZmUuICBUaHVzLCBhIGNhbGwgdG8gd3JpdGUoKSBtYXksIGluIHRoZSBleHRyZW1lXG4gIC8vIGVkZ2UgY2FzZSwgcmVzdWx0IGluIGNyZWF0aW5nIGF0IG1vc3Qgb25lIGNvbXBsZXRlIGNvcHkgb2YgdGhlIHN0cmluZyBwYXNzZWQgaW4uXG4gIC8vIFNldCB0byBJbmZpbml0eSB0byBoYXZlIHVubGltaXRlZCBidWZmZXJzLlxuICBzYXguTUFYX0JVRkZFUl9MRU5HVEggPSA2NCAqIDEwMjRcblxuICB2YXIgYnVmZmVycyA9IFtcbiAgICAnY29tbWVudCcsXG4gICAgJ3NnbWxEZWNsJyxcbiAgICAndGV4dE5vZGUnLFxuICAgICd0YWdOYW1lJyxcbiAgICAnZG9jdHlwZScsXG4gICAgJ3Byb2NJbnN0TmFtZScsXG4gICAgJ3Byb2NJbnN0Qm9keScsXG4gICAgJ2VudGl0eScsXG4gICAgJ2F0dHJpYk5hbWUnLFxuICAgICdhdHRyaWJWYWx1ZScsXG4gICAgJ2NkYXRhJyxcbiAgICAnc2NyaXB0JyxcbiAgXVxuXG4gIHNheC5FVkVOVFMgPSBbXG4gICAgJ3RleHQnLFxuICAgICdwcm9jZXNzaW5naW5zdHJ1Y3Rpb24nLFxuICAgICdzZ21sZGVjbGFyYXRpb24nLFxuICAgICdkb2N0eXBlJyxcbiAgICAnY29tbWVudCcsXG4gICAgJ29wZW50YWdzdGFydCcsXG4gICAgJ2F0dHJpYnV0ZScsXG4gICAgJ29wZW50YWcnLFxuICAgICdjbG9zZXRhZycsXG4gICAgJ29wZW5jZGF0YScsXG4gICAgJ2NkYXRhJyxcbiAgICAnY2xvc2VjZGF0YScsXG4gICAgJ2Vycm9yJyxcbiAgICAnZW5kJyxcbiAgICAncmVhZHknLFxuICAgICdzY3JpcHQnLFxuICAgICdvcGVubmFtZXNwYWNlJyxcbiAgICAnY2xvc2VuYW1lc3BhY2UnLFxuICBdXG5cbiAgZnVuY3Rpb24gU0FYUGFyc2VyKHN0cmljdCwgb3B0KSB7XG4gICAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIFNBWFBhcnNlcikpIHtcbiAgICAgIHJldHVybiBuZXcgU0FYUGFyc2VyKHN0cmljdCwgb3B0KVxuICAgIH1cblxuICAgIHZhciBwYXJzZXIgPSB0aGlzXG4gICAgY2xlYXJCdWZmZXJzKHBhcnNlcilcbiAgICBwYXJzZXIucSA9IHBhcnNlci5jID0gJydcbiAgICBwYXJzZXIuYnVmZmVyQ2hlY2tQb3NpdGlvbiA9IHNheC5NQVhfQlVGRkVSX0xFTkdUSFxuICAgIHBhcnNlci5vcHQgPSBvcHQgfHwge31cbiAgICBwYXJzZXIub3B0Lmxvd2VyY2FzZSA9IHBhcnNlci5vcHQubG93ZXJjYXNlIHx8IHBhcnNlci5vcHQubG93ZXJjYXNldGFnc1xuICAgIHBhcnNlci5sb29zZUNhc2UgPSBwYXJzZXIub3B0Lmxvd2VyY2FzZSA/ICd0b0xvd2VyQ2FzZScgOiAndG9VcHBlckNhc2UnXG4gICAgcGFyc2VyLnRhZ3MgPSBbXVxuICAgIHBhcnNlci5jbG9zZWQgPSBwYXJzZXIuY2xvc2VkUm9vdCA9IHBhcnNlci5zYXdSb290ID0gZmFsc2VcbiAgICBwYXJzZXIudGFnID0gcGFyc2VyLmVycm9yID0gbnVsbFxuICAgIHBhcnNlci5zdHJpY3QgPSAhIXN0cmljdFxuICAgIHBhcnNlci5ub3NjcmlwdCA9ICEhKHN0cmljdCB8fCBwYXJzZXIub3B0Lm5vc2NyaXB0KVxuICAgIHBhcnNlci5zdGF0ZSA9IFMuQkVHSU5cbiAgICBwYXJzZXIuc3RyaWN0RW50aXRpZXMgPSBwYXJzZXIub3B0LnN0cmljdEVudGl0aWVzXG4gICAgcGFyc2VyLkVOVElUSUVTID1cbiAgICAgIHBhcnNlci5zdHJpY3RFbnRpdGllcyA/XG4gICAgICAgIE9iamVjdC5jcmVhdGUoc2F4LlhNTF9FTlRJVElFUylcbiAgICAgIDogT2JqZWN0LmNyZWF0ZShzYXguRU5USVRJRVMpXG4gICAgcGFyc2VyLmF0dHJpYkxpc3QgPSBbXVxuXG4gICAgLy8gbmFtZXNwYWNlcyBmb3JtIGEgcHJvdG90eXBlIGNoYWluLlxuICAgIC8vIGl0IGFsd2F5cyBwb2ludHMgYXQgdGhlIGN1cnJlbnQgdGFnLFxuICAgIC8vIHdoaWNoIHByb3RvcyB0byBpdHMgcGFyZW50IHRhZy5cbiAgICBpZiAocGFyc2VyLm9wdC54bWxucykge1xuICAgICAgcGFyc2VyLm5zID0gT2JqZWN0LmNyZWF0ZShyb290TlMpXG4gICAgfVxuXG4gICAgLy8gZGlzYWxsb3cgdW5xdW90ZWQgYXR0cmlidXRlIHZhbHVlcyBpZiBub3Qgb3RoZXJ3aXNlIGNvbmZpZ3VyZWRcbiAgICAvLyBhbmQgc3RyaWN0IG1vZGUgaXMgdHJ1ZVxuICAgIGlmIChwYXJzZXIub3B0LnVucXVvdGVkQXR0cmlidXRlVmFsdWVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHBhcnNlci5vcHQudW5xdW90ZWRBdHRyaWJ1dGVWYWx1ZXMgPSAhc3RyaWN0XG4gICAgfVxuXG4gICAgLy8gbW9zdGx5IGp1c3QgZm9yIGVycm9yIHJlcG9ydGluZ1xuICAgIHBhcnNlci50cmFja1Bvc2l0aW9uID0gcGFyc2VyLm9wdC5wb3NpdGlvbiAhPT0gZmFsc2VcbiAgICBpZiAocGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgIHBhcnNlci5wb3NpdGlvbiA9IHBhcnNlci5saW5lID0gcGFyc2VyLmNvbHVtbiA9IDBcbiAgICB9XG4gICAgZW1pdChwYXJzZXIsICdvbnJlYWR5JylcbiAgfVxuXG4gIGlmICghT2JqZWN0LmNyZWF0ZSkge1xuICAgIE9iamVjdC5jcmVhdGUgPSBmdW5jdGlvbiAobykge1xuICAgICAgZnVuY3Rpb24gRigpIHt9XG4gICAgICBGLnByb3RvdHlwZSA9IG9cbiAgICAgIHZhciBuZXdmID0gbmV3IEYoKVxuICAgICAgcmV0dXJuIG5ld2ZcbiAgICB9XG4gIH1cblxuICBpZiAoIU9iamVjdC5rZXlzKSB7XG4gICAgT2JqZWN0LmtleXMgPSBmdW5jdGlvbiAobykge1xuICAgICAgdmFyIGEgPSBbXVxuICAgICAgZm9yICh2YXIgaSBpbiBvKSBpZiAoby5oYXNPd25Qcm9wZXJ0eShpKSkgYS5wdXNoKGkpXG4gICAgICByZXR1cm4gYVxuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNoZWNrQnVmZmVyTGVuZ3RoKHBhcnNlcikge1xuICAgIHZhciBtYXhBbGxvd2VkID0gTWF0aC5tYXgoc2F4Lk1BWF9CVUZGRVJfTEVOR1RILCAxMClcbiAgICB2YXIgbWF4QWN0dWFsID0gMFxuICAgIGZvciAodmFyIGkgPSAwLCBsID0gYnVmZmVycy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIHZhciBsZW4gPSBwYXJzZXJbYnVmZmVyc1tpXV0ubGVuZ3RoXG4gICAgICBpZiAobGVuID4gbWF4QWxsb3dlZCkge1xuICAgICAgICAvLyBUZXh0L2NkYXRhIG5vZGVzIGNhbiBnZXQgYmlnLCBhbmQgc2luY2UgdGhleSdyZSBidWZmZXJlZCxcbiAgICAgICAgLy8gd2UgY2FuIGdldCBoZXJlIHVuZGVyIG5vcm1hbCBjb25kaXRpb25zLlxuICAgICAgICAvLyBBdm9pZCBpc3N1ZXMgYnkgZW1pdHRpbmcgdGhlIHRleHQgbm9kZSBub3csXG4gICAgICAgIC8vIHNvIGF0IGxlYXN0IGl0IHdvbid0IGdldCBhbnkgYmlnZ2VyLlxuICAgICAgICBzd2l0Y2ggKGJ1ZmZlcnNbaV0pIHtcbiAgICAgICAgICBjYXNlICd0ZXh0Tm9kZSc6XG4gICAgICAgICAgICBjbG9zZVRleHQocGFyc2VyKVxuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGNhc2UgJ2NkYXRhJzpcbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2RhdGEnLCBwYXJzZXIuY2RhdGEpXG4gICAgICAgICAgICBwYXJzZXIuY2RhdGEgPSAnJ1xuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGNhc2UgJ3NjcmlwdCc6XG4gICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbnNjcmlwdCcsIHBhcnNlci5zY3JpcHQpXG4gICAgICAgICAgICBwYXJzZXIuc2NyaXB0ID0gJydcbiAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgZXJyb3IocGFyc2VyLCAnTWF4IGJ1ZmZlciBsZW5ndGggZXhjZWVkZWQ6ICcgKyBidWZmZXJzW2ldKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBtYXhBY3R1YWwgPSBNYXRoLm1heChtYXhBY3R1YWwsIGxlbilcbiAgICB9XG4gICAgLy8gc2NoZWR1bGUgdGhlIG5leHQgY2hlY2sgZm9yIHRoZSBlYXJsaWVzdCBwb3NzaWJsZSBidWZmZXIgb3ZlcnJ1bi5cbiAgICB2YXIgbSA9IHNheC5NQVhfQlVGRkVSX0xFTkdUSCAtIG1heEFjdHVhbFxuICAgIHBhcnNlci5idWZmZXJDaGVja1Bvc2l0aW9uID0gbSArIHBhcnNlci5wb3NpdGlvblxuICB9XG5cbiAgZnVuY3Rpb24gY2xlYXJCdWZmZXJzKHBhcnNlcikge1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gYnVmZmVycy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIHBhcnNlcltidWZmZXJzW2ldXSA9ICcnXG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gZmx1c2hCdWZmZXJzKHBhcnNlcikge1xuICAgIGNsb3NlVGV4dChwYXJzZXIpXG4gICAgaWYgKHBhcnNlci5jZGF0YSAhPT0gJycpIHtcbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2RhdGEnLCBwYXJzZXIuY2RhdGEpXG4gICAgICBwYXJzZXIuY2RhdGEgPSAnJ1xuICAgIH1cbiAgICBpZiAocGFyc2VyLnNjcmlwdCAhPT0gJycpIHtcbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uc2NyaXB0JywgcGFyc2VyLnNjcmlwdClcbiAgICAgIHBhcnNlci5zY3JpcHQgPSAnJ1xuICAgIH1cbiAgfVxuXG4gIFNBWFBhcnNlci5wcm90b3R5cGUgPSB7XG4gICAgZW5kOiBmdW5jdGlvbiAoKSB7XG4gICAgICBlbmQodGhpcylcbiAgICB9LFxuICAgIHdyaXRlOiB3cml0ZSxcbiAgICByZXN1bWU6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSBudWxsXG4gICAgICByZXR1cm4gdGhpc1xuICAgIH0sXG4gICAgY2xvc2U6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB0aGlzLndyaXRlKG51bGwpXG4gICAgfSxcbiAgICBmbHVzaDogZnVuY3Rpb24gKCkge1xuICAgICAgZmx1c2hCdWZmZXJzKHRoaXMpXG4gICAgfSxcbiAgfVxuXG4gIHZhciBTdHJlYW1cbiAgdHJ5IHtcbiAgICBTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0nKS5TdHJlYW1cbiAgfSBjYXRjaCAoZXgpIHtcbiAgICBTdHJlYW0gPSBmdW5jdGlvbiAoKSB7fVxuICB9XG4gIGlmICghU3RyZWFtKSBTdHJlYW0gPSBmdW5jdGlvbiAoKSB7fVxuXG4gIHZhciBzdHJlYW1XcmFwcyA9IHNheC5FVkVOVFMuZmlsdGVyKGZ1bmN0aW9uIChldikge1xuICAgIHJldHVybiBldiAhPT0gJ2Vycm9yJyAmJiBldiAhPT0gJ2VuZCdcbiAgfSlcblxuICBmdW5jdGlvbiBjcmVhdGVTdHJlYW0oc3RyaWN0LCBvcHQpIHtcbiAgICByZXR1cm4gbmV3IFNBWFN0cmVhbShzdHJpY3QsIG9wdClcbiAgfVxuXG4gIGZ1bmN0aW9uIFNBWFN0cmVhbShzdHJpY3QsIG9wdCkge1xuICAgIGlmICghKHRoaXMgaW5zdGFuY2VvZiBTQVhTdHJlYW0pKSB7XG4gICAgICByZXR1cm4gbmV3IFNBWFN0cmVhbShzdHJpY3QsIG9wdClcbiAgICB9XG5cbiAgICBTdHJlYW0uYXBwbHkodGhpcylcblxuICAgIHRoaXMuX3BhcnNlciA9IG5ldyBTQVhQYXJzZXIoc3RyaWN0LCBvcHQpXG4gICAgdGhpcy53cml0YWJsZSA9IHRydWVcbiAgICB0aGlzLnJlYWRhYmxlID0gdHJ1ZVxuXG4gICAgdmFyIG1lID0gdGhpc1xuXG4gICAgdGhpcy5fcGFyc2VyLm9uZW5kID0gZnVuY3Rpb24gKCkge1xuICAgICAgbWUuZW1pdCgnZW5kJylcbiAgICB9XG5cbiAgICB0aGlzLl9wYXJzZXIub25lcnJvciA9IGZ1bmN0aW9uIChlcikge1xuICAgICAgbWUuZW1pdCgnZXJyb3InLCBlcilcblxuICAgICAgLy8gaWYgZGlkbid0IHRocm93LCB0aGVuIG1lYW5zIGVycm9yIHdhcyBoYW5kbGVkLlxuICAgICAgLy8gZ28gYWhlYWQgYW5kIGNsZWFyIGVycm9yLCBzbyB3ZSBjYW4gd3JpdGUgYWdhaW4uXG4gICAgICBtZS5fcGFyc2VyLmVycm9yID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXMuX2RlY29kZXIgPSBudWxsXG5cbiAgICBzdHJlYW1XcmFwcy5mb3JFYWNoKGZ1bmN0aW9uIChldikge1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG1lLCAnb24nICsgZXYsIHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIG1lLl9wYXJzZXJbJ29uJyArIGV2XVxuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChoKSB7XG4gICAgICAgICAgaWYgKCFoKSB7XG4gICAgICAgICAgICBtZS5yZW1vdmVBbGxMaXN0ZW5lcnMoZXYpXG4gICAgICAgICAgICBtZS5fcGFyc2VyWydvbicgKyBldl0gPSBoXG4gICAgICAgICAgICByZXR1cm4gaFxuICAgICAgICAgIH1cbiAgICAgICAgICBtZS5vbihldiwgaClcbiAgICAgICAgfSxcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSxcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIFNBWFN0cmVhbS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKFN0cmVhbS5wcm90b3R5cGUsIHtcbiAgICBjb25zdHJ1Y3Rvcjoge1xuICAgICAgdmFsdWU6IFNBWFN0cmVhbSxcbiAgICB9LFxuICB9KVxuXG4gIFNBWFN0cmVhbS5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbiAoZGF0YSkge1xuICAgIGlmIChcbiAgICAgIHR5cGVvZiBCdWZmZXIgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgIHR5cGVvZiBCdWZmZXIuaXNCdWZmZXIgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgIEJ1ZmZlci5pc0J1ZmZlcihkYXRhKVxuICAgICkge1xuICAgICAgaWYgKCF0aGlzLl9kZWNvZGVyKSB7XG4gICAgICAgIHZhciBTRCA9IHJlcXVpcmUoJ3N0cmluZ19kZWNvZGVyJykuU3RyaW5nRGVjb2RlclxuICAgICAgICB0aGlzLl9kZWNvZGVyID0gbmV3IFNEKCd1dGY4JylcbiAgICAgIH1cbiAgICAgIGRhdGEgPSB0aGlzLl9kZWNvZGVyLndyaXRlKGRhdGEpXG4gICAgfVxuXG4gICAgdGhpcy5fcGFyc2VyLndyaXRlKGRhdGEudG9TdHJpbmcoKSlcbiAgICB0aGlzLmVtaXQoJ2RhdGEnLCBkYXRhKVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICBTQVhTdHJlYW0ucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uIChjaHVuaykge1xuICAgIGlmIChjaHVuayAmJiBjaHVuay5sZW5ndGgpIHtcbiAgICAgIHRoaXMud3JpdGUoY2h1bmspXG4gICAgfVxuICAgIHRoaXMuX3BhcnNlci5lbmQoKVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICBTQVhTdHJlYW0ucHJvdG90eXBlLm9uID0gZnVuY3Rpb24gKGV2LCBoYW5kbGVyKSB7XG4gICAgdmFyIG1lID0gdGhpc1xuICAgIGlmICghbWUuX3BhcnNlclsnb24nICsgZXZdICYmIHN0cmVhbVdyYXBzLmluZGV4T2YoZXYpICE9PSAtMSkge1xuICAgICAgbWUuX3BhcnNlclsnb24nICsgZXZdID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgYXJncyA9XG4gICAgICAgICAgYXJndW1lbnRzLmxlbmd0aCA9PT0gMSA/XG4gICAgICAgICAgICBbYXJndW1lbnRzWzBdXVxuICAgICAgICAgIDogQXJyYXkuYXBwbHkobnVsbCwgYXJndW1lbnRzKVxuICAgICAgICBhcmdzLnNwbGljZSgwLCAwLCBldilcbiAgICAgICAgbWUuZW1pdC5hcHBseShtZSwgYXJncylcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gU3RyZWFtLnByb3RvdHlwZS5vbi5jYWxsKG1lLCBldiwgaGFuZGxlcilcbiAgfVxuXG4gIC8vIHRoaXMgcmVhbGx5IG5lZWRzIHRvIGJlIHJlcGxhY2VkIHdpdGggY2hhcmFjdGVyIGNsYXNzZXMuXG4gIC8vIFhNTCBhbGxvd3MgYWxsIG1hbm5lciBvZiByaWRpY3Vsb3VzIG51bWJlcnMgYW5kIGRpZ2l0cy5cbiAgdmFyIENEQVRBID0gJ1tDREFUQVsnXG4gIHZhciBET0NUWVBFID0gJ0RPQ1RZUEUnXG4gIHZhciBYTUxfTkFNRVNQQUNFID0gJ2h0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSdcbiAgdmFyIFhNTE5TX05BTUVTUEFDRSA9ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3htbG5zLydcbiAgdmFyIHJvb3ROUyA9IHsgeG1sOiBYTUxfTkFNRVNQQUNFLCB4bWxuczogWE1MTlNfTkFNRVNQQUNFIH1cblxuICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMteG1sLyNOVC1OYW1lU3RhcnRDaGFyXG4gIC8vIFRoaXMgaW1wbGVtZW50YXRpb24gd29ya3Mgb24gc3RyaW5ncywgYSBzaW5nbGUgY2hhcmFjdGVyIGF0IGEgdGltZVxuICAvLyBhcyBzdWNoLCBpdCBjYW5ub3QgZXZlciBzdXBwb3J0IGFzdHJhbC1wbGFuZSBjaGFyYWN0ZXJzICgxMDAwMC1FRkZGRilcbiAgLy8gd2l0aG91dCBhIHNpZ25pZmljYW50IGJyZWFraW5nIGNoYW5nZSB0byBlaXRoZXIgdGhpcyAgcGFyc2VyLCBvciB0aGVcbiAgLy8gSmF2YVNjcmlwdCBsYW5ndWFnZS4gIEltcGxlbWVudGF0aW9uIG9mIGFuIGVtb2ppLWNhcGFibGUgeG1sIHBhcnNlclxuICAvLyBpcyBsZWZ0IGFzIGFuIGV4ZXJjaXNlIGZvciB0aGUgcmVhZGVyLlxuICB2YXIgbmFtZVN0YXJ0ID1cbiAgICAvWzpfQS1aYS16XFx1MDBDMC1cXHUwMEQ2XFx1MDBEOC1cXHUwMEY2XFx1MDBGOC1cXHUwMkZGXFx1MDM3MC1cXHUwMzdEXFx1MDM3Ri1cXHUxRkZGXFx1MjAwQy1cXHUyMDBEXFx1MjA3MC1cXHUyMThGXFx1MkMwMC1cXHUyRkVGXFx1MzAwMS1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkZEXS9cblxuICB2YXIgbmFtZUJvZHkgPVxuICAgIC9bOl9BLVphLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRcXHUwMEI3XFx1MDMwMC1cXHUwMzZGXFx1MjAzRi1cXHUyMDQwLlxcZC1dL1xuXG4gIHZhciBlbnRpdHlTdGFydCA9XG4gICAgL1sjOl9BLVphLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRdL1xuICB2YXIgZW50aXR5Qm9keSA9XG4gICAgL1sjOl9BLVphLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRcXHUwMEI3XFx1MDMwMC1cXHUwMzZGXFx1MjAzRi1cXHUyMDQwLlxcZC1dL1xuXG4gIGZ1bmN0aW9uIGlzV2hpdGVzcGFjZShjKSB7XG4gICAgcmV0dXJuIGMgPT09ICcgJyB8fCBjID09PSAnXFxuJyB8fCBjID09PSAnXFxyJyB8fCBjID09PSAnXFx0J1xuICB9XG5cbiAgZnVuY3Rpb24gaXNRdW90ZShjKSB7XG4gICAgcmV0dXJuIGMgPT09ICdcIicgfHwgYyA9PT0gXCInXCJcbiAgfVxuXG4gIGZ1bmN0aW9uIGlzQXR0cmliRW5kKGMpIHtcbiAgICByZXR1cm4gYyA9PT0gJz4nIHx8IGlzV2hpdGVzcGFjZShjKVxuICB9XG5cbiAgZnVuY3Rpb24gaXNNYXRjaChyZWdleCwgYykge1xuICAgIHJldHVybiByZWdleC50ZXN0KGMpXG4gIH1cblxuICBmdW5jdGlvbiBub3RNYXRjaChyZWdleCwgYykge1xuICAgIHJldHVybiAhaXNNYXRjaChyZWdleCwgYylcbiAgfVxuXG4gIHZhciBTID0gMFxuICBzYXguU1RBVEUgPSB7XG4gICAgQkVHSU46IFMrKywgLy8gbGVhZGluZyBieXRlIG9yZGVyIG1hcmsgb3Igd2hpdGVzcGFjZVxuICAgIEJFR0lOX1dISVRFU1BBQ0U6IFMrKywgLy8gbGVhZGluZyB3aGl0ZXNwYWNlXG4gICAgVEVYVDogUysrLCAvLyBnZW5lcmFsIHN0dWZmXG4gICAgVEVYVF9FTlRJVFk6IFMrKywgLy8gJmFtcCBhbmQgc3VjaC5cbiAgICBPUEVOX1dBS0E6IFMrKywgLy8gPFxuICAgIFNHTUxfREVDTDogUysrLCAvLyA8IUJMQVJHXG4gICAgU0dNTF9ERUNMX1FVT1RFRDogUysrLCAvLyA8IUJMQVJHIGZvbyBcImJhclxuICAgIERPQ1RZUEU6IFMrKywgLy8gPCFET0NUWVBFXG4gICAgRE9DVFlQRV9RVU9URUQ6IFMrKywgLy8gPCFET0NUWVBFIFwiLy9ibGFoXG4gICAgRE9DVFlQRV9EVEQ6IFMrKywgLy8gPCFET0NUWVBFIFwiLy9ibGFoXCIgWyAuLi5cbiAgICBET0NUWVBFX0RURF9RVU9URUQ6IFMrKywgLy8gPCFET0NUWVBFIFwiLy9ibGFoXCIgWyBcImZvb1xuICAgIENPTU1FTlRfU1RBUlRJTkc6IFMrKywgLy8gPCEtXG4gICAgQ09NTUVOVDogUysrLCAvLyA8IS0tXG4gICAgQ09NTUVOVF9FTkRJTkc6IFMrKywgLy8gPCEtLSBibGFoIC1cbiAgICBDT01NRU5UX0VOREVEOiBTKyssIC8vIDwhLS0gYmxhaCAtLVxuICAgIENEQVRBOiBTKyssIC8vIDwhW0NEQVRBWyBzb21ldGhpbmdcbiAgICBDREFUQV9FTkRJTkc6IFMrKywgLy8gXVxuICAgIENEQVRBX0VORElOR18yOiBTKyssIC8vIF1dXG4gICAgUFJPQ19JTlNUOiBTKyssIC8vIDw/aGlcbiAgICBQUk9DX0lOU1RfQk9EWTogUysrLCAvLyA8P2hpIHRoZXJlXG4gICAgUFJPQ19JTlNUX0VORElORzogUysrLCAvLyA8P2hpIFwidGhlcmVcIiA/XG4gICAgT1BFTl9UQUc6IFMrKywgLy8gPHN0cm9uZ1xuICAgIE9QRU5fVEFHX1NMQVNIOiBTKyssIC8vIDxzdHJvbmcgL1xuICAgIEFUVFJJQjogUysrLCAvLyA8YVxuICAgIEFUVFJJQl9OQU1FOiBTKyssIC8vIDxhIGZvb1xuICAgIEFUVFJJQl9OQU1FX1NBV19XSElURTogUysrLCAvLyA8YSBmb28gX1xuICAgIEFUVFJJQl9WQUxVRTogUysrLCAvLyA8YSBmb289XG4gICAgQVRUUklCX1ZBTFVFX1FVT1RFRDogUysrLCAvLyA8YSBmb289XCJiYXJcbiAgICBBVFRSSUJfVkFMVUVfQ0xPU0VEOiBTKyssIC8vIDxhIGZvbz1cImJhclwiXG4gICAgQVRUUklCX1ZBTFVFX1VOUVVPVEVEOiBTKyssIC8vIDxhIGZvbz1iYXJcbiAgICBBVFRSSUJfVkFMVUVfRU5USVRZX1E6IFMrKywgLy8gPGZvbyBiYXI9XCImcXVvdDtcIlxuICAgIEFUVFJJQl9WQUxVRV9FTlRJVFlfVTogUysrLCAvLyA8Zm9vIGJhcj0mcXVvdFxuICAgIENMT1NFX1RBRzogUysrLCAvLyA8L2FcbiAgICBDTE9TRV9UQUdfU0FXX1dISVRFOiBTKyssIC8vIDwvYSAgID5cbiAgICBTQ1JJUFQ6IFMrKywgLy8gPHNjcmlwdD4gLi4uXG4gICAgU0NSSVBUX0VORElORzogUysrLCAvLyA8c2NyaXB0PiAuLi4gPFxuICB9XG5cbiAgc2F4LlhNTF9FTlRJVElFUyA9IHtcbiAgICBhbXA6ICcmJyxcbiAgICBndDogJz4nLFxuICAgIGx0OiAnPCcsXG4gICAgcXVvdDogJ1wiJyxcbiAgICBhcG9zOiBcIidcIixcbiAgfVxuXG4gIHNheC5FTlRJVElFUyA9IHtcbiAgICBhbXA6ICcmJyxcbiAgICBndDogJz4nLFxuICAgIGx0OiAnPCcsXG4gICAgcXVvdDogJ1wiJyxcbiAgICBhcG9zOiBcIidcIixcbiAgICBBRWxpZzogMTk4LFxuICAgIEFhY3V0ZTogMTkzLFxuICAgIEFjaXJjOiAxOTQsXG4gICAgQWdyYXZlOiAxOTIsXG4gICAgQXJpbmc6IDE5NyxcbiAgICBBdGlsZGU6IDE5NSxcbiAgICBBdW1sOiAxOTYsXG4gICAgQ2NlZGlsOiAxOTksXG4gICAgRVRIOiAyMDgsXG4gICAgRWFjdXRlOiAyMDEsXG4gICAgRWNpcmM6IDIwMixcbiAgICBFZ3JhdmU6IDIwMCxcbiAgICBFdW1sOiAyMDMsXG4gICAgSWFjdXRlOiAyMDUsXG4gICAgSWNpcmM6IDIwNixcbiAgICBJZ3JhdmU6IDIwNCxcbiAgICBJdW1sOiAyMDcsXG4gICAgTnRpbGRlOiAyMDksXG4gICAgT2FjdXRlOiAyMTEsXG4gICAgT2NpcmM6IDIxMixcbiAgICBPZ3JhdmU6IDIxMCxcbiAgICBPc2xhc2g6IDIxNixcbiAgICBPdGlsZGU6IDIxMyxcbiAgICBPdW1sOiAyMTQsXG4gICAgVEhPUk46IDIyMixcbiAgICBVYWN1dGU6IDIxOCxcbiAgICBVY2lyYzogMjE5LFxuICAgIFVncmF2ZTogMjE3LFxuICAgIFV1bWw6IDIyMCxcbiAgICBZYWN1dGU6IDIyMSxcbiAgICBhYWN1dGU6IDIyNSxcbiAgICBhY2lyYzogMjI2LFxuICAgIGFlbGlnOiAyMzAsXG4gICAgYWdyYXZlOiAyMjQsXG4gICAgYXJpbmc6IDIyOSxcbiAgICBhdGlsZGU6IDIyNyxcbiAgICBhdW1sOiAyMjgsXG4gICAgY2NlZGlsOiAyMzEsXG4gICAgZWFjdXRlOiAyMzMsXG4gICAgZWNpcmM6IDIzNCxcbiAgICBlZ3JhdmU6IDIzMixcbiAgICBldGg6IDI0MCxcbiAgICBldW1sOiAyMzUsXG4gICAgaWFjdXRlOiAyMzcsXG4gICAgaWNpcmM6IDIzOCxcbiAgICBpZ3JhdmU6IDIzNixcbiAgICBpdW1sOiAyMzksXG4gICAgbnRpbGRlOiAyNDEsXG4gICAgb2FjdXRlOiAyNDMsXG4gICAgb2NpcmM6IDI0NCxcbiAgICBvZ3JhdmU6IDI0MixcbiAgICBvc2xhc2g6IDI0OCxcbiAgICBvdGlsZGU6IDI0NSxcbiAgICBvdW1sOiAyNDYsXG4gICAgc3psaWc6IDIyMyxcbiAgICB0aG9ybjogMjU0LFxuICAgIHVhY3V0ZTogMjUwLFxuICAgIHVjaXJjOiAyNTEsXG4gICAgdWdyYXZlOiAyNDksXG4gICAgdXVtbDogMjUyLFxuICAgIHlhY3V0ZTogMjUzLFxuICAgIHl1bWw6IDI1NSxcbiAgICBjb3B5OiAxNjksXG4gICAgcmVnOiAxNzQsXG4gICAgbmJzcDogMTYwLFxuICAgIGlleGNsOiAxNjEsXG4gICAgY2VudDogMTYyLFxuICAgIHBvdW5kOiAxNjMsXG4gICAgY3VycmVuOiAxNjQsXG4gICAgeWVuOiAxNjUsXG4gICAgYnJ2YmFyOiAxNjYsXG4gICAgc2VjdDogMTY3LFxuICAgIHVtbDogMTY4LFxuICAgIG9yZGY6IDE3MCxcbiAgICBsYXF1bzogMTcxLFxuICAgIG5vdDogMTcyLFxuICAgIHNoeTogMTczLFxuICAgIG1hY3I6IDE3NSxcbiAgICBkZWc6IDE3NixcbiAgICBwbHVzbW46IDE3NyxcbiAgICBzdXAxOiAxODUsXG4gICAgc3VwMjogMTc4LFxuICAgIHN1cDM6IDE3OSxcbiAgICBhY3V0ZTogMTgwLFxuICAgIG1pY3JvOiAxODEsXG4gICAgcGFyYTogMTgyLFxuICAgIG1pZGRvdDogMTgzLFxuICAgIGNlZGlsOiAxODQsXG4gICAgb3JkbTogMTg2LFxuICAgIHJhcXVvOiAxODcsXG4gICAgZnJhYzE0OiAxODgsXG4gICAgZnJhYzEyOiAxODksXG4gICAgZnJhYzM0OiAxOTAsXG4gICAgaXF1ZXN0OiAxOTEsXG4gICAgdGltZXM6IDIxNSxcbiAgICBkaXZpZGU6IDI0NyxcbiAgICBPRWxpZzogMzM4LFxuICAgIG9lbGlnOiAzMzksXG4gICAgU2Nhcm9uOiAzNTIsXG4gICAgc2Nhcm9uOiAzNTMsXG4gICAgWXVtbDogMzc2LFxuICAgIGZub2Y6IDQwMixcbiAgICBjaXJjOiA3MTAsXG4gICAgdGlsZGU6IDczMixcbiAgICBBbHBoYTogOTEzLFxuICAgIEJldGE6IDkxNCxcbiAgICBHYW1tYTogOTE1LFxuICAgIERlbHRhOiA5MTYsXG4gICAgRXBzaWxvbjogOTE3LFxuICAgIFpldGE6IDkxOCxcbiAgICBFdGE6IDkxOSxcbiAgICBUaGV0YTogOTIwLFxuICAgIElvdGE6IDkyMSxcbiAgICBLYXBwYTogOTIyLFxuICAgIExhbWJkYTogOTIzLFxuICAgIE11OiA5MjQsXG4gICAgTnU6IDkyNSxcbiAgICBYaTogOTI2LFxuICAgIE9taWNyb246IDkyNyxcbiAgICBQaTogOTI4LFxuICAgIFJobzogOTI5LFxuICAgIFNpZ21hOiA5MzEsXG4gICAgVGF1OiA5MzIsXG4gICAgVXBzaWxvbjogOTMzLFxuICAgIFBoaTogOTM0LFxuICAgIENoaTogOTM1LFxuICAgIFBzaTogOTM2LFxuICAgIE9tZWdhOiA5MzcsXG4gICAgYWxwaGE6IDk0NSxcbiAgICBiZXRhOiA5NDYsXG4gICAgZ2FtbWE6IDk0NyxcbiAgICBkZWx0YTogOTQ4LFxuICAgIGVwc2lsb246IDk0OSxcbiAgICB6ZXRhOiA5NTAsXG4gICAgZXRhOiA5NTEsXG4gICAgdGhldGE6IDk1MixcbiAgICBpb3RhOiA5NTMsXG4gICAga2FwcGE6IDk1NCxcbiAgICBsYW1iZGE6IDk1NSxcbiAgICBtdTogOTU2LFxuICAgIG51OiA5NTcsXG4gICAgeGk6IDk1OCxcbiAgICBvbWljcm9uOiA5NTksXG4gICAgcGk6IDk2MCxcbiAgICByaG86IDk2MSxcbiAgICBzaWdtYWY6IDk2MixcbiAgICBzaWdtYTogOTYzLFxuICAgIHRhdTogOTY0LFxuICAgIHVwc2lsb246IDk2NSxcbiAgICBwaGk6IDk2NixcbiAgICBjaGk6IDk2NyxcbiAgICBwc2k6IDk2OCxcbiAgICBvbWVnYTogOTY5LFxuICAgIHRoZXRhc3ltOiA5NzcsXG4gICAgdXBzaWg6IDk3OCxcbiAgICBwaXY6IDk4MixcbiAgICBlbnNwOiA4MTk0LFxuICAgIGVtc3A6IDgxOTUsXG4gICAgdGhpbnNwOiA4MjAxLFxuICAgIHp3bmo6IDgyMDQsXG4gICAgendqOiA4MjA1LFxuICAgIGxybTogODIwNixcbiAgICBybG06IDgyMDcsXG4gICAgbmRhc2g6IDgyMTEsXG4gICAgbWRhc2g6IDgyMTIsXG4gICAgbHNxdW86IDgyMTYsXG4gICAgcnNxdW86IDgyMTcsXG4gICAgc2JxdW86IDgyMTgsXG4gICAgbGRxdW86IDgyMjAsXG4gICAgcmRxdW86IDgyMjEsXG4gICAgYmRxdW86IDgyMjIsXG4gICAgZGFnZ2VyOiA4MjI0LFxuICAgIERhZ2dlcjogODIyNSxcbiAgICBidWxsOiA4MjI2LFxuICAgIGhlbGxpcDogODIzMCxcbiAgICBwZXJtaWw6IDgyNDAsXG4gICAgcHJpbWU6IDgyNDIsXG4gICAgUHJpbWU6IDgyNDMsXG4gICAgbHNhcXVvOiA4MjQ5LFxuICAgIHJzYXF1bzogODI1MCxcbiAgICBvbGluZTogODI1NCxcbiAgICBmcmFzbDogODI2MCxcbiAgICBldXJvOiA4MzY0LFxuICAgIGltYWdlOiA4NDY1LFxuICAgIHdlaWVycDogODQ3MixcbiAgICByZWFsOiA4NDc2LFxuICAgIHRyYWRlOiA4NDgyLFxuICAgIGFsZWZzeW06IDg1MDEsXG4gICAgbGFycjogODU5MixcbiAgICB1YXJyOiA4NTkzLFxuICAgIHJhcnI6IDg1OTQsXG4gICAgZGFycjogODU5NSxcbiAgICBoYXJyOiA4NTk2LFxuICAgIGNyYXJyOiA4NjI5LFxuICAgIGxBcnI6IDg2NTYsXG4gICAgdUFycjogODY1NyxcbiAgICByQXJyOiA4NjU4LFxuICAgIGRBcnI6IDg2NTksXG4gICAgaEFycjogODY2MCxcbiAgICBmb3JhbGw6IDg3MDQsXG4gICAgcGFydDogODcwNixcbiAgICBleGlzdDogODcwNyxcbiAgICBlbXB0eTogODcwOSxcbiAgICBuYWJsYTogODcxMSxcbiAgICBpc2luOiA4NzEyLFxuICAgIG5vdGluOiA4NzEzLFxuICAgIG5pOiA4NzE1LFxuICAgIHByb2Q6IDg3MTksXG4gICAgc3VtOiA4NzIxLFxuICAgIG1pbnVzOiA4NzIyLFxuICAgIGxvd2FzdDogODcyNyxcbiAgICByYWRpYzogODczMCxcbiAgICBwcm9wOiA4NzMzLFxuICAgIGluZmluOiA4NzM0LFxuICAgIGFuZzogODczNixcbiAgICBhbmQ6IDg3NDMsXG4gICAgb3I6IDg3NDQsXG4gICAgY2FwOiA4NzQ1LFxuICAgIGN1cDogODc0NixcbiAgICBpbnQ6IDg3NDcsXG4gICAgdGhlcmU0OiA4NzU2LFxuICAgIHNpbTogODc2NCxcbiAgICBjb25nOiA4NzczLFxuICAgIGFzeW1wOiA4Nzc2LFxuICAgIG5lOiA4ODAwLFxuICAgIGVxdWl2OiA4ODAxLFxuICAgIGxlOiA4ODA0LFxuICAgIGdlOiA4ODA1LFxuICAgIHN1YjogODgzNCxcbiAgICBzdXA6IDg4MzUsXG4gICAgbnN1YjogODgzNixcbiAgICBzdWJlOiA4ODM4LFxuICAgIHN1cGU6IDg4MzksXG4gICAgb3BsdXM6IDg4NTMsXG4gICAgb3RpbWVzOiA4ODU1LFxuICAgIHBlcnA6IDg4NjksXG4gICAgc2RvdDogODkwMSxcbiAgICBsY2VpbDogODk2OCxcbiAgICByY2VpbDogODk2OSxcbiAgICBsZmxvb3I6IDg5NzAsXG4gICAgcmZsb29yOiA4OTcxLFxuICAgIGxhbmc6IDkwMDEsXG4gICAgcmFuZzogOTAwMixcbiAgICBsb3o6IDk2NzQsXG4gICAgc3BhZGVzOiA5ODI0LFxuICAgIGNsdWJzOiA5ODI3LFxuICAgIGhlYXJ0czogOTgyOSxcbiAgICBkaWFtczogOTgzMCxcbiAgfVxuXG4gIE9iamVjdC5rZXlzKHNheC5FTlRJVElFUykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgdmFyIGUgPSBzYXguRU5USVRJRVNba2V5XVxuICAgIHZhciBzID0gdHlwZW9mIGUgPT09ICdudW1iZXInID8gU3RyaW5nLmZyb21DaGFyQ29kZShlKSA6IGVcbiAgICBzYXguRU5USVRJRVNba2V5XSA9IHNcbiAgfSlcblxuICBmb3IgKHZhciBzIGluIHNheC5TVEFURSkge1xuICAgIHNheC5TVEFURVtzYXguU1RBVEVbc11dID0gc1xuICB9XG5cbiAgLy8gc2hvcnRoYW5kXG4gIFMgPSBzYXguU1RBVEVcblxuICBmdW5jdGlvbiBlbWl0KHBhcnNlciwgZXZlbnQsIGRhdGEpIHtcbiAgICBwYXJzZXJbZXZlbnRdICYmIHBhcnNlcltldmVudF0oZGF0YSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGVtaXROb2RlKHBhcnNlciwgbm9kZVR5cGUsIGRhdGEpIHtcbiAgICBpZiAocGFyc2VyLnRleHROb2RlKSBjbG9zZVRleHQocGFyc2VyKVxuICAgIGVtaXQocGFyc2VyLCBub2RlVHlwZSwgZGF0YSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGNsb3NlVGV4dChwYXJzZXIpIHtcbiAgICBwYXJzZXIudGV4dE5vZGUgPSB0ZXh0b3B0cyhwYXJzZXIub3B0LCBwYXJzZXIudGV4dE5vZGUpXG4gICAgaWYgKHBhcnNlci50ZXh0Tm9kZSkgZW1pdChwYXJzZXIsICdvbnRleHQnLCBwYXJzZXIudGV4dE5vZGUpXG4gICAgcGFyc2VyLnRleHROb2RlID0gJydcbiAgfVxuXG4gIGZ1bmN0aW9uIHRleHRvcHRzKG9wdCwgdGV4dCkge1xuICAgIGlmIChvcHQudHJpbSkgdGV4dCA9IHRleHQudHJpbSgpXG4gICAgaWYgKG9wdC5ub3JtYWxpemUpIHRleHQgPSB0ZXh0LnJlcGxhY2UoL1xccysvZywgJyAnKVxuICAgIHJldHVybiB0ZXh0XG4gIH1cblxuICBmdW5jdGlvbiBlcnJvcihwYXJzZXIsIGVyKSB7XG4gICAgY2xvc2VUZXh0KHBhcnNlcilcbiAgICBpZiAocGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgIGVyICs9XG4gICAgICAgICdcXG5MaW5lOiAnICtcbiAgICAgICAgcGFyc2VyLmxpbmUgK1xuICAgICAgICAnXFxuQ29sdW1uOiAnICtcbiAgICAgICAgcGFyc2VyLmNvbHVtbiArXG4gICAgICAgICdcXG5DaGFyOiAnICtcbiAgICAgICAgcGFyc2VyLmNcbiAgICB9XG4gICAgZXIgPSBuZXcgRXJyb3IoZXIpXG4gICAgcGFyc2VyLmVycm9yID0gZXJcbiAgICBlbWl0KHBhcnNlciwgJ29uZXJyb3InLCBlcilcbiAgICByZXR1cm4gcGFyc2VyXG4gIH1cblxuICBmdW5jdGlvbiBlbmQocGFyc2VyKSB7XG4gICAgaWYgKHBhcnNlci5zYXdSb290ICYmICFwYXJzZXIuY2xvc2VkUm9vdClcbiAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnVW5jbG9zZWQgcm9vdCB0YWcnKVxuICAgIGlmIChcbiAgICAgIHBhcnNlci5zdGF0ZSAhPT0gUy5CRUdJTiAmJlxuICAgICAgcGFyc2VyLnN0YXRlICE9PSBTLkJFR0lOX1dISVRFU1BBQ0UgJiZcbiAgICAgIHBhcnNlci5zdGF0ZSAhPT0gUy5URVhUXG4gICAgKSB7XG4gICAgICBlcnJvcihwYXJzZXIsICdVbmV4cGVjdGVkIGVuZCcpXG4gICAgfVxuICAgIGNsb3NlVGV4dChwYXJzZXIpXG4gICAgcGFyc2VyLmMgPSAnJ1xuICAgIHBhcnNlci5jbG9zZWQgPSB0cnVlXG4gICAgZW1pdChwYXJzZXIsICdvbmVuZCcpXG4gICAgU0FYUGFyc2VyLmNhbGwocGFyc2VyLCBwYXJzZXIuc3RyaWN0LCBwYXJzZXIub3B0KVxuICAgIHJldHVybiBwYXJzZXJcbiAgfVxuXG4gIGZ1bmN0aW9uIHN0cmljdEZhaWwocGFyc2VyLCBtZXNzYWdlKSB7XG4gICAgaWYgKHR5cGVvZiBwYXJzZXIgIT09ICdvYmplY3QnIHx8ICEocGFyc2VyIGluc3RhbmNlb2YgU0FYUGFyc2VyKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgY2FsbCB0byBzdHJpY3RGYWlsJylcbiAgICB9XG4gICAgaWYgKHBhcnNlci5zdHJpY3QpIHtcbiAgICAgIGVycm9yKHBhcnNlciwgbWVzc2FnZSlcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiBuZXdUYWcocGFyc2VyKSB7XG4gICAgaWYgKCFwYXJzZXIuc3RyaWN0KSBwYXJzZXIudGFnTmFtZSA9IHBhcnNlci50YWdOYW1lW3BhcnNlci5sb29zZUNhc2VdKClcbiAgICB2YXIgcGFyZW50ID0gcGFyc2VyLnRhZ3NbcGFyc2VyLnRhZ3MubGVuZ3RoIC0gMV0gfHwgcGFyc2VyXG4gICAgdmFyIHRhZyA9IChwYXJzZXIudGFnID0geyBuYW1lOiBwYXJzZXIudGFnTmFtZSwgYXR0cmlidXRlczoge30gfSlcblxuICAgIC8vIHdpbGwgYmUgb3ZlcnJpZGRlbiBpZiB0YWcgY29udGFpbHMgYW4geG1sbnM9XCJmb29cIiBvciB4bWxuczpmb289XCJiYXJcIlxuICAgIGlmIChwYXJzZXIub3B0LnhtbG5zKSB7XG4gICAgICB0YWcubnMgPSBwYXJlbnQubnNcbiAgICB9XG4gICAgcGFyc2VyLmF0dHJpYkxpc3QubGVuZ3RoID0gMFxuICAgIGVtaXROb2RlKHBhcnNlciwgJ29ub3BlbnRhZ3N0YXJ0JywgdGFnKVxuICB9XG5cbiAgZnVuY3Rpb24gcW5hbWUobmFtZSwgYXR0cmlidXRlKSB7XG4gICAgdmFyIGkgPSBuYW1lLmluZGV4T2YoJzonKVxuICAgIHZhciBxdWFsTmFtZSA9IGkgPCAwID8gWycnLCBuYW1lXSA6IG5hbWUuc3BsaXQoJzonKVxuICAgIHZhciBwcmVmaXggPSBxdWFsTmFtZVswXVxuICAgIHZhciBsb2NhbCA9IHF1YWxOYW1lWzFdXG5cbiAgICAvLyA8eCBcInhtbG5zXCI9XCJodHRwOi8vZm9vXCI+XG4gICAgaWYgKGF0dHJpYnV0ZSAmJiBuYW1lID09PSAneG1sbnMnKSB7XG4gICAgICBwcmVmaXggPSAneG1sbnMnXG4gICAgICBsb2NhbCA9ICcnXG4gICAgfVxuXG4gICAgcmV0dXJuIHsgcHJlZml4OiBwcmVmaXgsIGxvY2FsOiBsb2NhbCB9XG4gIH1cblxuICBmdW5jdGlvbiBhdHRyaWIocGFyc2VyKSB7XG4gICAgaWYgKCFwYXJzZXIuc3RyaWN0KSB7XG4gICAgICBwYXJzZXIuYXR0cmliTmFtZSA9IHBhcnNlci5hdHRyaWJOYW1lW3BhcnNlci5sb29zZUNhc2VdKClcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBwYXJzZXIuYXR0cmliTGlzdC5pbmRleE9mKHBhcnNlci5hdHRyaWJOYW1lKSAhPT0gLTEgfHxcbiAgICAgIHBhcnNlci50YWcuYXR0cmlidXRlcy5oYXNPd25Qcm9wZXJ0eShwYXJzZXIuYXR0cmliTmFtZSlcbiAgICApIHtcbiAgICAgIHBhcnNlci5hdHRyaWJOYW1lID0gcGFyc2VyLmF0dHJpYlZhbHVlID0gJydcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChwYXJzZXIub3B0LnhtbG5zKSB7XG4gICAgICB2YXIgcW4gPSBxbmFtZShwYXJzZXIuYXR0cmliTmFtZSwgdHJ1ZSlcbiAgICAgIHZhciBwcmVmaXggPSBxbi5wcmVmaXhcbiAgICAgIHZhciBsb2NhbCA9IHFuLmxvY2FsXG5cbiAgICAgIGlmIChwcmVmaXggPT09ICd4bWxucycpIHtcbiAgICAgICAgLy8gbmFtZXNwYWNlIGJpbmRpbmcgYXR0cmlidXRlLiBwdXNoIHRoZSBiaW5kaW5nIGludG8gc2NvcGVcbiAgICAgICAgaWYgKGxvY2FsID09PSAneG1sJyAmJiBwYXJzZXIuYXR0cmliVmFsdWUgIT09IFhNTF9OQU1FU1BBQ0UpIHtcbiAgICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgICAgcGFyc2VyLFxuICAgICAgICAgICAgJ3htbDogcHJlZml4IG11c3QgYmUgYm91bmQgdG8gJyArXG4gICAgICAgICAgICAgIFhNTF9OQU1FU1BBQ0UgK1xuICAgICAgICAgICAgICAnXFxuJyArXG4gICAgICAgICAgICAgICdBY3R1YWw6ICcgK1xuICAgICAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWVcbiAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgbG9jYWwgPT09ICd4bWxucycgJiZcbiAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWUgIT09IFhNTE5TX05BTUVTUEFDRVxuICAgICAgICApIHtcbiAgICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgICAgcGFyc2VyLFxuICAgICAgICAgICAgJ3htbG5zOiBwcmVmaXggbXVzdCBiZSBib3VuZCB0byAnICtcbiAgICAgICAgICAgICAgWE1MTlNfTkFNRVNQQUNFICtcbiAgICAgICAgICAgICAgJ1xcbicgK1xuICAgICAgICAgICAgICAnQWN0dWFsOiAnICtcbiAgICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHZhciB0YWcgPSBwYXJzZXIudGFnXG4gICAgICAgICAgdmFyIHBhcmVudCA9IHBhcnNlci50YWdzW3BhcnNlci50YWdzLmxlbmd0aCAtIDFdIHx8IHBhcnNlclxuICAgICAgICAgIGlmICh0YWcubnMgPT09IHBhcmVudC5ucykge1xuICAgICAgICAgICAgdGFnLm5zID0gT2JqZWN0LmNyZWF0ZShwYXJlbnQubnMpXG4gICAgICAgICAgfVxuICAgICAgICAgIHRhZy5uc1tsb2NhbF0gPSBwYXJzZXIuYXR0cmliVmFsdWVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBkZWZlciBvbmF0dHJpYnV0ZSBldmVudHMgdW50aWwgYWxsIGF0dHJpYnV0ZXMgaGF2ZSBiZWVuIHNlZW5cbiAgICAgIC8vIHNvIGFueSBuZXcgYmluZGluZ3MgY2FuIHRha2UgZWZmZWN0LiBwcmVzZXJ2ZSBhdHRyaWJ1dGUgb3JkZXJcbiAgICAgIC8vIHNvIGRlZmVycmVkIGV2ZW50cyBjYW4gYmUgZW1pdHRlZCBpbiBkb2N1bWVudCBvcmRlclxuICAgICAgcGFyc2VyLmF0dHJpYkxpc3QucHVzaChbcGFyc2VyLmF0dHJpYk5hbWUsIHBhcnNlci5hdHRyaWJWYWx1ZV0pXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGluIG5vbi14bWxucyBtb2RlLCB3ZSBjYW4gZW1pdCB0aGUgZXZlbnQgcmlnaHQgYXdheVxuICAgICAgcGFyc2VyLnRhZy5hdHRyaWJ1dGVzW3BhcnNlci5hdHRyaWJOYW1lXSA9IHBhcnNlci5hdHRyaWJWYWx1ZVxuICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25hdHRyaWJ1dGUnLCB7XG4gICAgICAgIG5hbWU6IHBhcnNlci5hdHRyaWJOYW1lLFxuICAgICAgICB2YWx1ZTogcGFyc2VyLmF0dHJpYlZhbHVlLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBwYXJzZXIuYXR0cmliTmFtZSA9IHBhcnNlci5hdHRyaWJWYWx1ZSA9ICcnXG4gIH1cblxuICBmdW5jdGlvbiBvcGVuVGFnKHBhcnNlciwgc2VsZkNsb3NpbmcpIHtcbiAgICBpZiAocGFyc2VyLm9wdC54bWxucykge1xuICAgICAgLy8gZW1pdCBuYW1lc3BhY2UgYmluZGluZyBldmVudHNcbiAgICAgIHZhciB0YWcgPSBwYXJzZXIudGFnXG5cbiAgICAgIC8vIGFkZCBuYW1lc3BhY2UgaW5mbyB0byB0YWdcbiAgICAgIHZhciBxbiA9IHFuYW1lKHBhcnNlci50YWdOYW1lKVxuICAgICAgdGFnLnByZWZpeCA9IHFuLnByZWZpeFxuICAgICAgdGFnLmxvY2FsID0gcW4ubG9jYWxcbiAgICAgIHRhZy51cmkgPSB0YWcubnNbcW4ucHJlZml4XSB8fCAnJ1xuXG4gICAgICBpZiAodGFnLnByZWZpeCAmJiAhdGFnLnVyaSkge1xuICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgIHBhcnNlcixcbiAgICAgICAgICAnVW5ib3VuZCBuYW1lc3BhY2UgcHJlZml4OiAnICsgSlNPTi5zdHJpbmdpZnkocGFyc2VyLnRhZ05hbWUpXG4gICAgICAgIClcbiAgICAgICAgdGFnLnVyaSA9IHFuLnByZWZpeFxuICAgICAgfVxuXG4gICAgICB2YXIgcGFyZW50ID0gcGFyc2VyLnRhZ3NbcGFyc2VyLnRhZ3MubGVuZ3RoIC0gMV0gfHwgcGFyc2VyXG4gICAgICBpZiAodGFnLm5zICYmIHBhcmVudC5ucyAhPT0gdGFnLm5zKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKHRhZy5ucykuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29ub3Blbm5hbWVzcGFjZScsIHtcbiAgICAgICAgICAgIHByZWZpeDogcCxcbiAgICAgICAgICAgIHVyaTogdGFnLm5zW3BdLFxuICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIC8vIGhhbmRsZSBkZWZlcnJlZCBvbmF0dHJpYnV0ZSBldmVudHNcbiAgICAgIC8vIE5vdGU6IGRvIG5vdCBhcHBseSBkZWZhdWx0IG5zIHRvIGF0dHJpYnV0ZXM6XG4gICAgICAvLyAgIGh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy14bWwtbmFtZXMvI2RlZmF1bHRpbmdcbiAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gcGFyc2VyLmF0dHJpYkxpc3QubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIHZhciBudiA9IHBhcnNlci5hdHRyaWJMaXN0W2ldXG4gICAgICAgIHZhciBuYW1lID0gbnZbMF1cbiAgICAgICAgdmFyIHZhbHVlID0gbnZbMV1cbiAgICAgICAgdmFyIHF1YWxOYW1lID0gcW5hbWUobmFtZSwgdHJ1ZSlcbiAgICAgICAgdmFyIHByZWZpeCA9IHF1YWxOYW1lLnByZWZpeFxuICAgICAgICB2YXIgbG9jYWwgPSBxdWFsTmFtZS5sb2NhbFxuICAgICAgICB2YXIgdXJpID0gcHJlZml4ID09PSAnJyA/ICcnIDogdGFnLm5zW3ByZWZpeF0gfHwgJydcbiAgICAgICAgdmFyIGEgPSB7XG4gICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICAgICAgcHJlZml4OiBwcmVmaXgsXG4gICAgICAgICAgbG9jYWw6IGxvY2FsLFxuICAgICAgICAgIHVyaTogdXJpLFxuICAgICAgICB9XG5cbiAgICAgICAgLy8gaWYgdGhlcmUncyBhbnkgYXR0cmlidXRlcyB3aXRoIGFuIHVuZGVmaW5lZCBuYW1lc3BhY2UsXG4gICAgICAgIC8vIHRoZW4gZmFpbCBvbiB0aGVtIG5vdy5cbiAgICAgICAgaWYgKHByZWZpeCAmJiBwcmVmaXggIT09ICd4bWxucycgJiYgIXVyaSkge1xuICAgICAgICAgIHN0cmljdEZhaWwoXG4gICAgICAgICAgICBwYXJzZXIsXG4gICAgICAgICAgICAnVW5ib3VuZCBuYW1lc3BhY2UgcHJlZml4OiAnICsgSlNPTi5zdHJpbmdpZnkocHJlZml4KVxuICAgICAgICAgIClcbiAgICAgICAgICBhLnVyaSA9IHByZWZpeFxuICAgICAgICB9XG4gICAgICAgIHBhcnNlci50YWcuYXR0cmlidXRlc1tuYW1lXSA9IGFcbiAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25hdHRyaWJ1dGUnLCBhKVxuICAgICAgfVxuICAgICAgcGFyc2VyLmF0dHJpYkxpc3QubGVuZ3RoID0gMFxuICAgIH1cblxuICAgIHBhcnNlci50YWcuaXNTZWxmQ2xvc2luZyA9ICEhc2VsZkNsb3NpbmdcblxuICAgIC8vIHByb2Nlc3MgdGhlIHRhZ1xuICAgIHBhcnNlci5zYXdSb290ID0gdHJ1ZVxuICAgIHBhcnNlci50YWdzLnB1c2gocGFyc2VyLnRhZylcbiAgICBlbWl0Tm9kZShwYXJzZXIsICdvbm9wZW50YWcnLCBwYXJzZXIudGFnKVxuICAgIGlmICghc2VsZkNsb3NpbmcpIHtcbiAgICAgIC8vIHNwZWNpYWwgY2FzZSBmb3IgPHNjcmlwdD4gaW4gbm9uLXN0cmljdCBtb2RlLlxuICAgICAgaWYgKCFwYXJzZXIubm9zY3JpcHQgJiYgcGFyc2VyLnRhZ05hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ3NjcmlwdCcpIHtcbiAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgfVxuICAgICAgcGFyc2VyLnRhZyA9IG51bGxcbiAgICAgIHBhcnNlci50YWdOYW1lID0gJydcbiAgICB9XG4gICAgcGFyc2VyLmF0dHJpYk5hbWUgPSBwYXJzZXIuYXR0cmliVmFsdWUgPSAnJ1xuICAgIHBhcnNlci5hdHRyaWJMaXN0Lmxlbmd0aCA9IDBcbiAgfVxuXG4gIGZ1bmN0aW9uIGNsb3NlVGFnKHBhcnNlcikge1xuICAgIGlmICghcGFyc2VyLnRhZ05hbWUpIHtcbiAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnV2VpcmQgZW1wdHkgY2xvc2UgdGFnLicpXG4gICAgICBwYXJzZXIudGV4dE5vZGUgKz0gJzwvPidcbiAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKHBhcnNlci5zY3JpcHQpIHtcbiAgICAgIGlmIChwYXJzZXIudGFnTmFtZSAhPT0gJ3NjcmlwdCcpIHtcbiAgICAgICAgcGFyc2VyLnNjcmlwdCArPSAnPC8nICsgcGFyc2VyLnRhZ05hbWUgKyAnPidcbiAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSAnJ1xuICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlNDUklQVFxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uc2NyaXB0JywgcGFyc2VyLnNjcmlwdClcbiAgICAgIHBhcnNlci5zY3JpcHQgPSAnJ1xuICAgIH1cblxuICAgIC8vIGZpcnN0IG1ha2Ugc3VyZSB0aGF0IHRoZSBjbG9zaW5nIHRhZyBhY3R1YWxseSBleGlzdHMuXG4gICAgLy8gPGE+PGI+PC9jPjwvYj48L2E+IHdpbGwgY2xvc2UgZXZlcnl0aGluZywgb3RoZXJ3aXNlLlxuICAgIHZhciB0ID0gcGFyc2VyLnRhZ3MubGVuZ3RoXG4gICAgdmFyIHRhZ05hbWUgPSBwYXJzZXIudGFnTmFtZVxuICAgIGlmICghcGFyc2VyLnN0cmljdCkge1xuICAgICAgdGFnTmFtZSA9IHRhZ05hbWVbcGFyc2VyLmxvb3NlQ2FzZV0oKVxuICAgIH1cbiAgICB2YXIgY2xvc2VUbyA9IHRhZ05hbWVcbiAgICB3aGlsZSAodC0tKSB7XG4gICAgICB2YXIgY2xvc2UgPSBwYXJzZXIudGFnc1t0XVxuICAgICAgaWYgKGNsb3NlLm5hbWUgIT09IGNsb3NlVG8pIHtcbiAgICAgICAgLy8gZmFpbCB0aGUgZmlyc3QgdGltZSBpbiBzdHJpY3QgbW9kZVxuICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ1VuZXhwZWN0ZWQgY2xvc2UgdGFnJylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gZGlkbid0IGZpbmQgaXQuICB3ZSBhbHJlYWR5IGZhaWxlZCBmb3Igc3RyaWN0LCBzbyBqdXN0IGFib3J0LlxuICAgIGlmICh0IDwgMCkge1xuICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdVbm1hdGNoZWQgY2xvc2luZyB0YWc6ICcgKyBwYXJzZXIudGFnTmFtZSlcbiAgICAgIHBhcnNlci50ZXh0Tm9kZSArPSAnPC8nICsgcGFyc2VyLnRhZ05hbWUgKyAnPidcbiAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHBhcnNlci50YWdOYW1lID0gdGFnTmFtZVxuICAgIHZhciBzID0gcGFyc2VyLnRhZ3MubGVuZ3RoXG4gICAgd2hpbGUgKHMtLSA+IHQpIHtcbiAgICAgIHZhciB0YWcgPSAocGFyc2VyLnRhZyA9IHBhcnNlci50YWdzLnBvcCgpKVxuICAgICAgcGFyc2VyLnRhZ05hbWUgPSBwYXJzZXIudGFnLm5hbWVcbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2xvc2V0YWcnLCBwYXJzZXIudGFnTmFtZSlcblxuICAgICAgdmFyIHggPSB7fVxuICAgICAgZm9yICh2YXIgaSBpbiB0YWcubnMpIHtcbiAgICAgICAgeFtpXSA9IHRhZy5uc1tpXVxuICAgICAgfVxuXG4gICAgICB2YXIgcGFyZW50ID0gcGFyc2VyLnRhZ3NbcGFyc2VyLnRhZ3MubGVuZ3RoIC0gMV0gfHwgcGFyc2VyXG4gICAgICBpZiAocGFyc2VyLm9wdC54bWxucyAmJiB0YWcubnMgIT09IHBhcmVudC5ucykge1xuICAgICAgICAvLyByZW1vdmUgbmFtZXNwYWNlIGJpbmRpbmdzIGludHJvZHVjZWQgYnkgdGFnXG4gICAgICAgIE9iamVjdC5rZXlzKHRhZy5ucykuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgICAgIHZhciBuID0gdGFnLm5zW3BdXG4gICAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25jbG9zZW5hbWVzcGFjZScsIHsgcHJlZml4OiBwLCB1cmk6IG4gfSlcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHQgPT09IDApIHBhcnNlci5jbG9zZWRSb290ID0gdHJ1ZVxuICAgIHBhcnNlci50YWdOYW1lID0gcGFyc2VyLmF0dHJpYlZhbHVlID0gcGFyc2VyLmF0dHJpYk5hbWUgPSAnJ1xuICAgIHBhcnNlci5hdHRyaWJMaXN0Lmxlbmd0aCA9IDBcbiAgICBwYXJzZXIuc3RhdGUgPSBTLlRFWFRcbiAgfVxuXG4gIGZ1bmN0aW9uIHBhcnNlRW50aXR5KHBhcnNlcikge1xuICAgIHZhciBlbnRpdHkgPSBwYXJzZXIuZW50aXR5XG4gICAgdmFyIGVudGl0eUxDID0gZW50aXR5LnRvTG93ZXJDYXNlKClcbiAgICB2YXIgbnVtXG4gICAgdmFyIG51bVN0ciA9ICcnXG5cbiAgICBpZiAocGFyc2VyLkVOVElUSUVTW2VudGl0eV0pIHtcbiAgICAgIHJldHVybiBwYXJzZXIuRU5USVRJRVNbZW50aXR5XVxuICAgIH1cbiAgICBpZiAocGFyc2VyLkVOVElUSUVTW2VudGl0eUxDXSkge1xuICAgICAgcmV0dXJuIHBhcnNlci5FTlRJVElFU1tlbnRpdHlMQ11cbiAgICB9XG4gICAgZW50aXR5ID0gZW50aXR5TENcbiAgICBpZiAoZW50aXR5LmNoYXJBdCgwKSA9PT0gJyMnKSB7XG4gICAgICBpZiAoZW50aXR5LmNoYXJBdCgxKSA9PT0gJ3gnKSB7XG4gICAgICAgIGVudGl0eSA9IGVudGl0eS5zbGljZSgyKVxuICAgICAgICBudW0gPSBwYXJzZUludChlbnRpdHksIDE2KVxuICAgICAgICBudW1TdHIgPSBudW0udG9TdHJpbmcoMTYpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBlbnRpdHkgPSBlbnRpdHkuc2xpY2UoMSlcbiAgICAgICAgbnVtID0gcGFyc2VJbnQoZW50aXR5LCAxMClcbiAgICAgICAgbnVtU3RyID0gbnVtLnRvU3RyaW5nKDEwKVxuICAgICAgfVxuICAgIH1cbiAgICBlbnRpdHkgPSBlbnRpdHkucmVwbGFjZSgvXjArLywgJycpXG4gICAgaWYgKFxuICAgICAgaXNOYU4obnVtKSB8fFxuICAgICAgbnVtU3RyLnRvTG93ZXJDYXNlKCkgIT09IGVudGl0eSB8fFxuICAgICAgbnVtIDwgMCB8fFxuICAgICAgbnVtID4gMHgxMGZmZmZcbiAgICApIHtcbiAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnSW52YWxpZCBjaGFyYWN0ZXIgZW50aXR5JylcbiAgICAgIHJldHVybiAnJicgKyBwYXJzZXIuZW50aXR5ICsgJzsnXG4gICAgfVxuXG4gICAgcmV0dXJuIFN0cmluZy5mcm9tQ29kZVBvaW50KG51bSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGJlZ2luV2hpdGVTcGFjZShwYXJzZXIsIGMpIHtcbiAgICBpZiAoYyA9PT0gJzwnKSB7XG4gICAgICBwYXJzZXIuc3RhdGUgPSBTLk9QRU5fV0FLQVxuICAgICAgcGFyc2VyLnN0YXJ0VGFnUG9zaXRpb24gPSBwYXJzZXIucG9zaXRpb25cbiAgICB9IGVsc2UgaWYgKCFpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgIC8vIGhhdmUgdG8gcHJvY2VzcyB0aGlzIGFzIGEgdGV4dCBub2RlLlxuICAgICAgLy8gd2VpcmQsIGJ1dCBoYXBwZW5zLlxuICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdOb24td2hpdGVzcGFjZSBiZWZvcmUgZmlyc3QgdGFnLicpXG4gICAgICBwYXJzZXIudGV4dE5vZGUgPSBjXG4gICAgICBwYXJzZXIuc3RhdGUgPSBTLlRFWFRcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiBjaGFyQXQoY2h1bmssIGkpIHtcbiAgICB2YXIgcmVzdWx0ID0gJydcbiAgICBpZiAoaSA8IGNodW5rLmxlbmd0aCkge1xuICAgICAgcmVzdWx0ID0gY2h1bmsuY2hhckF0KGkpXG4gICAgfVxuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIGZ1bmN0aW9uIHdyaXRlKGNodW5rKSB7XG4gICAgdmFyIHBhcnNlciA9IHRoaXNcbiAgICBpZiAodGhpcy5lcnJvcikge1xuICAgICAgdGhyb3cgdGhpcy5lcnJvclxuICAgIH1cbiAgICBpZiAocGFyc2VyLmNsb3NlZCkge1xuICAgICAgcmV0dXJuIGVycm9yKFxuICAgICAgICBwYXJzZXIsXG4gICAgICAgICdDYW5ub3Qgd3JpdGUgYWZ0ZXIgY2xvc2UuIEFzc2lnbiBhbiBvbnJlYWR5IGhhbmRsZXIuJ1xuICAgICAgKVxuICAgIH1cbiAgICBpZiAoY2h1bmsgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBlbmQocGFyc2VyKVxuICAgIH1cbiAgICBpZiAodHlwZW9mIGNodW5rID09PSAnb2JqZWN0Jykge1xuICAgICAgY2h1bmsgPSBjaHVuay50b1N0cmluZygpXG4gICAgfVxuICAgIHZhciBpID0gMFxuICAgIHZhciBjID0gJydcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgYyA9IGNoYXJBdChjaHVuaywgaSsrKVxuICAgICAgcGFyc2VyLmMgPSBjXG5cbiAgICAgIGlmICghYykge1xuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBpZiAocGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgICAgcGFyc2VyLnBvc2l0aW9uKytcbiAgICAgICAgaWYgKGMgPT09ICdcXG4nKSB7XG4gICAgICAgICAgcGFyc2VyLmxpbmUrK1xuICAgICAgICAgIHBhcnNlci5jb2x1bW4gPSAwXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcGFyc2VyLmNvbHVtbisrXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3dpdGNoIChwYXJzZXIuc3RhdGUpIHtcbiAgICAgICAgY2FzZSBTLkJFR0lOOlxuICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQkVHSU5fV0hJVEVTUEFDRVxuICAgICAgICAgIGlmIChjID09PSAnXFx1RkVGRicpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfVxuICAgICAgICAgIGJlZ2luV2hpdGVTcGFjZShwYXJzZXIsIGMpXG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQkVHSU5fV0hJVEVTUEFDRTpcbiAgICAgICAgICBiZWdpbldoaXRlU3BhY2UocGFyc2VyLCBjKVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlRFWFQ6XG4gICAgICAgICAgaWYgKHBhcnNlci5zYXdSb290ICYmICFwYXJzZXIuY2xvc2VkUm9vdCkge1xuICAgICAgICAgICAgdmFyIHN0YXJ0aSA9IGkgLSAxXG4gICAgICAgICAgICB3aGlsZSAoYyAmJiBjICE9PSAnPCcgJiYgYyAhPT0gJyYnKSB7XG4gICAgICAgICAgICAgIGMgPSBjaGFyQXQoY2h1bmssIGkrKylcbiAgICAgICAgICAgICAgaWYgKGMgJiYgcGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgICBwYXJzZXIucG9zaXRpb24rK1xuICAgICAgICAgICAgICAgIGlmIChjID09PSAnXFxuJykge1xuICAgICAgICAgICAgICAgICAgcGFyc2VyLmxpbmUrK1xuICAgICAgICAgICAgICAgICAgcGFyc2VyLmNvbHVtbiA9IDBcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgcGFyc2VyLmNvbHVtbisrXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXJzZXIudGV4dE5vZGUgKz0gY2h1bmsuc3Vic3RyaW5nKHN0YXJ0aSwgaSAtIDEpXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGMgPT09ICc8JyAmJlxuICAgICAgICAgICAgIShwYXJzZXIuc2F3Um9vdCAmJiBwYXJzZXIuY2xvc2VkUm9vdCAmJiAhcGFyc2VyLnN0cmljdClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuT1BFTl9XQUtBXG4gICAgICAgICAgICBwYXJzZXIuc3RhcnRUYWdQb3NpdGlvbiA9IHBhcnNlci5wb3NpdGlvblxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICFpc1doaXRlc3BhY2UoYykgJiZcbiAgICAgICAgICAgICAgKCFwYXJzZXIuc2F3Um9vdCB8fCBwYXJzZXIuY2xvc2VkUm9vdClcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ1RleHQgZGF0YSBvdXRzaWRlIG9mIHJvb3Qgbm9kZS4nKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGMgPT09ICcmJykge1xuICAgICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlRFWFRfRU5USVRZXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBwYXJzZXIudGV4dE5vZGUgKz0gY1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5TQ1JJUFQ6XG4gICAgICAgICAgLy8gb25seSBub24tc3RyaWN0XG4gICAgICAgICAgaWYgKGMgPT09ICc8Jykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRfRU5ESU5HXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5zY3JpcHQgKz0gY1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5TQ1JJUFRfRU5ESU5HOlxuICAgICAgICAgIGlmIChjID09PSAnLycpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ0xPU0VfVEFHXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5zY3JpcHQgKz0gJzwnICsgY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuT1BFTl9XQUtBOlxuICAgICAgICAgIC8vIGVpdGhlciBhIC8sID8sICEsIG9yIHRleHQgaXMgY29taW5nIG5leHQuXG4gICAgICAgICAgaWYgKGMgPT09ICchJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TR01MX0RFQ0xcbiAgICAgICAgICAgIHBhcnNlci5zZ21sRGVjbCA9ICcnXG4gICAgICAgICAgfSBlbHNlIGlmIChpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgIC8vIHdhaXQgZm9yIGl0Li4uXG4gICAgICAgICAgfSBlbHNlIGlmIChpc01hdGNoKG5hbWVTdGFydCwgYykpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuT1BFTl9UQUdcbiAgICAgICAgICAgIHBhcnNlci50YWdOYW1lID0gY1xuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJy8nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNMT1NFX1RBR1xuICAgICAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSAnJ1xuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJz8nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlBST0NfSU5TVFxuICAgICAgICAgICAgcGFyc2VyLnByb2NJbnN0TmFtZSA9IHBhcnNlci5wcm9jSW5zdEJvZHkgPSAnJ1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ1VuZW5jb2RlZCA8JylcbiAgICAgICAgICAgIC8vIGlmIHRoZXJlIHdhcyBzb21lIHdoaXRlc3BhY2UsIHRoZW4gYWRkIHRoYXQgaW4uXG4gICAgICAgICAgICBpZiAocGFyc2VyLnN0YXJ0VGFnUG9zaXRpb24gKyAxIDwgcGFyc2VyLnBvc2l0aW9uKSB7XG4gICAgICAgICAgICAgIHZhciBwYWQgPSBwYXJzZXIucG9zaXRpb24gLSBwYXJzZXIuc3RhcnRUYWdQb3NpdGlvblxuICAgICAgICAgICAgICBjID0gbmV3IEFycmF5KHBhZCkuam9pbignICcpICsgY1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VyLnRleHROb2RlICs9ICc8JyArIGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5TR01MX0RFQ0w6XG4gICAgICAgICAgaWYgKHBhcnNlci5zZ21sRGVjbCArIGMgPT09ICctLScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ09NTUVOVFxuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnNnbWxEZWNsID0gJydcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgJiZcbiAgICAgICAgICAgIHBhcnNlci5kb2N0eXBlICE9PSB0cnVlICYmXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2xcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuRE9DVFlQRV9EVERcbiAgICAgICAgICAgIHBhcnNlci5kb2N0eXBlICs9ICc8IScgKyBwYXJzZXIuc2dtbERlY2wgKyBjXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgPSAnJ1xuICAgICAgICAgIH0gZWxzZSBpZiAoKHBhcnNlci5zZ21sRGVjbCArIGMpLnRvVXBwZXJDYXNlKCkgPT09IENEQVRBKSB7XG4gICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbm9wZW5jZGF0YScpXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLmNkYXRhID0gJydcbiAgICAgICAgICB9IGVsc2UgaWYgKChwYXJzZXIuc2dtbERlY2wgKyBjKS50b1VwcGVyQ2FzZSgpID09PSBET0NUWVBFKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVcbiAgICAgICAgICAgIGlmIChwYXJzZXIuZG9jdHlwZSB8fCBwYXJzZXIuc2F3Um9vdCkge1xuICAgICAgICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgICAgICAgIHBhcnNlcixcbiAgICAgICAgICAgICAgICAnSW5hcHByb3ByaWF0ZWx5IGxvY2F0ZWQgZG9jdHlwZSBkZWNsYXJhdGlvbidcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnNnbWxEZWNsID0gJydcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICc+Jykge1xuICAgICAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25zZ21sZGVjbGFyYXRpb24nLCBwYXJzZXIuc2dtbERlY2wpXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgfSBlbHNlIGlmIChpc1F1b3RlKGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlNHTUxfREVDTF9RVU9URURcbiAgICAgICAgICAgIHBhcnNlci5zZ21sRGVjbCArPSBjXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5zZ21sRGVjbCArPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlNHTUxfREVDTF9RVU9URUQ6XG4gICAgICAgICAgaWYgKGMgPT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlNHTUxfREVDTFxuICAgICAgICAgICAgcGFyc2VyLnEgPSAnJ1xuICAgICAgICAgIH1cbiAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgKz0gY1xuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkRPQ1RZUEU6XG4gICAgICAgICAgaWYgKGMgPT09ICc+Jykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbmRvY3R5cGUnLCBwYXJzZXIuZG9jdHlwZSlcbiAgICAgICAgICAgIHBhcnNlci5kb2N0eXBlID0gdHJ1ZSAvLyBqdXN0IHJlbWVtYmVyIHRoYXQgd2Ugc2F3IGl0LlxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgICBpZiAoYyA9PT0gJ1snKSB7XG4gICAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuRE9DVFlQRV9EVERcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNRdW90ZShjKSkge1xuICAgICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVfUVVPVEVEXG4gICAgICAgICAgICAgIHBhcnNlci5xID0gY1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5ET0NUWVBFX1FVT1RFRDpcbiAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgaWYgKGMgPT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBwYXJzZXIucSA9ICcnXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuRE9DVFlQRV9EVEQ6XG4gICAgICAgICAgaWYgKGMgPT09ICddJykge1xuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgKz0gY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5ET0NUWVBFXG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnPCcpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuT1BFTl9XQUtBXG4gICAgICAgICAgICBwYXJzZXIuc3RhcnRUYWdQb3NpdGlvbiA9IHBhcnNlci5wb3NpdGlvblxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNRdW90ZShjKSkge1xuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgKz0gY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5ET0NUWVBFX0RURF9RVU9URURcbiAgICAgICAgICAgIHBhcnNlci5xID0gY1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkRPQ1RZUEVfRFREX1FVT1RFRDpcbiAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgaWYgKGMgPT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVfRFREXG4gICAgICAgICAgICBwYXJzZXIucSA9ICcnXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNPTU1FTlQ6XG4gICAgICAgICAgaWYgKGMgPT09ICctJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5DT01NRU5UX0VORElOR1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuY29tbWVudCArPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNPTU1FTlRfRU5ESU5HOlxuICAgICAgICAgIGlmIChjID09PSAnLScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ09NTUVOVF9FTkRFRFxuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgPSB0ZXh0b3B0cyhwYXJzZXIub3B0LCBwYXJzZXIuY29tbWVudClcbiAgICAgICAgICAgIGlmIChwYXJzZXIuY29tbWVudCkge1xuICAgICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbmNvbW1lbnQnLCBwYXJzZXIuY29tbWVudClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBhcnNlci5jb21tZW50ID0gJydcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgKz0gJy0nICsgY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5DT01NRU5UXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNPTU1FTlRfRU5ERUQ6XG4gICAgICAgICAgaWYgKGMgIT09ICc+Jykge1xuICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdNYWxmb3JtZWQgY29tbWVudCcpXG4gICAgICAgICAgICAvLyBhbGxvdyA8IS0tIGJsYWggLS0gYmxvbyAtLT4gaW4gbm9uLXN0cmljdCBtb2RlLFxuICAgICAgICAgICAgLy8gd2hpY2ggaXMgYSBjb21tZW50IG9mIFwiIGJsYWggLS0gYmxvbyBcIlxuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgKz0gJy0tJyArIGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ09NTUVOVFxuICAgICAgICAgIH0gZWxzZSBpZiAocGFyc2VyLmRvY3R5cGUgJiYgcGFyc2VyLmRvY3R5cGUgIT09IHRydWUpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuRE9DVFlQRV9EVERcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNEQVRBOlxuICAgICAgICAgIHZhciBzdGFydGkgPSBpIC0gMVxuICAgICAgICAgIHdoaWxlIChjICYmIGMgIT09ICddJykge1xuICAgICAgICAgICAgYyA9IGNoYXJBdChjaHVuaywgaSsrKVxuICAgICAgICAgICAgaWYgKGMgJiYgcGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnBvc2l0aW9uKytcbiAgICAgICAgICAgICAgaWYgKGMgPT09ICdcXG4nKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VyLmxpbmUrK1xuICAgICAgICAgICAgICAgIHBhcnNlci5jb2x1bW4gPSAwXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcGFyc2VyLmNvbHVtbisrXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcGFyc2VyLmNkYXRhICs9IGNodW5rLnN1YnN0cmluZyhzdGFydGksIGkgLSAxKVxuICAgICAgICAgIGlmIChjID09PSAnXScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ0RBVEFfRU5ESU5HXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNEQVRBX0VORElORzpcbiAgICAgICAgICBpZiAoYyA9PT0gJ10nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBX0VORElOR18yXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5jZGF0YSArPSAnXScgKyBjXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNEQVRBX0VORElOR18yOlxuICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIGlmIChwYXJzZXIuY2RhdGEpIHtcbiAgICAgICAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25jZGF0YScsIHBhcnNlci5jZGF0YSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2xvc2VjZGF0YScpXG4gICAgICAgICAgICBwYXJzZXIuY2RhdGEgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnXScpIHtcbiAgICAgICAgICAgIHBhcnNlci5jZGF0YSArPSAnXSdcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VyLmNkYXRhICs9ICddXScgKyBjXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlBST0NfSU5TVDpcbiAgICAgICAgICBpZiAoYyA9PT0gJz8nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlBST0NfSU5TVF9FTkRJTkdcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5QUk9DX0lOU1RfQk9EWVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIucHJvY0luc3ROYW1lICs9IGNcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuUFJPQ19JTlNUX0JPRFk6XG4gICAgICAgICAgaWYgKCFwYXJzZXIucHJvY0luc3RCb2R5ICYmIGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICc/Jykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5QUk9DX0lOU1RfRU5ESU5HXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5wcm9jSW5zdEJvZHkgKz0gY1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5QUk9DX0lOU1RfRU5ESU5HOlxuICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29ucHJvY2Vzc2luZ2luc3RydWN0aW9uJywge1xuICAgICAgICAgICAgICBuYW1lOiBwYXJzZXIucHJvY0luc3ROYW1lLFxuICAgICAgICAgICAgICBib2R5OiBwYXJzZXIucHJvY0luc3RCb2R5LFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHBhcnNlci5wcm9jSW5zdE5hbWUgPSBwYXJzZXIucHJvY0luc3RCb2R5ID0gJydcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIucHJvY0luc3RCb2R5ICs9ICc/JyArIGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuUFJPQ19JTlNUX0JPRFlcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuT1BFTl9UQUc6XG4gICAgICAgICAgaWYgKGlzTWF0Y2gobmFtZUJvZHksIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIudGFnTmFtZSArPSBjXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5ld1RhZyhwYXJzZXIpXG4gICAgICAgICAgICBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICAgIG9wZW5UYWcocGFyc2VyKVxuICAgICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnLycpIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5PUEVOX1RBR19TTEFTSFxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgaWYgKCFpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0ludmFsaWQgY2hhcmFjdGVyIGluIHRhZyBuYW1lJylcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQlxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5PUEVOX1RBR19TTEFTSDpcbiAgICAgICAgICBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlciwgdHJ1ZSlcbiAgICAgICAgICAgIGNsb3NlVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3RyaWN0RmFpbChcbiAgICAgICAgICAgICAgcGFyc2VyLFxuICAgICAgICAgICAgICAnRm9yd2FyZC1zbGFzaCBpbiBvcGVuaW5nIHRhZyBub3QgZm9sbG93ZWQgYnkgPidcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQjpcbiAgICAgICAgICAvLyBoYXZlbid0IHJlYWQgdGhlIGF0dHJpYnV0ZSBuYW1lIHlldC5cbiAgICAgICAgICBpZiAoaXNXaGl0ZXNwYWNlKGMpKSB7XG4gICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICcvJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5PUEVOX1RBR19TTEFTSFxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNNYXRjaChuYW1lU3RhcnQsIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuYXR0cmliTmFtZSA9IGNcbiAgICAgICAgICAgIHBhcnNlci5hdHRyaWJWYWx1ZSA9ICcnXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQl9OQU1FXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnSW52YWxpZCBhdHRyaWJ1dGUgbmFtZScpXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQl9OQU1FOlxuICAgICAgICAgIGlmIChjID09PSAnPScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFXG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnQXR0cmlidXRlIHdpdGhvdXQgdmFsdWUnKVxuICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlID0gcGFyc2VyLmF0dHJpYk5hbWVcbiAgICAgICAgICAgIGF0dHJpYihwYXJzZXIpXG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfTkFNRV9TQVdfV0hJVEVcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzTWF0Y2gobmFtZUJvZHksIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuYXR0cmliTmFtZSArPSBjXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnSW52YWxpZCBhdHRyaWJ1dGUgbmFtZScpXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQl9OQU1FX1NBV19XSElURTpcbiAgICAgICAgICBpZiAoYyA9PT0gJz0nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQl9WQUxVRVxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNXaGl0ZXNwYWNlKGMpKSB7XG4gICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0F0dHJpYnV0ZSB3aXRob3V0IHZhbHVlJylcbiAgICAgICAgICAgIHBhcnNlci50YWcuYXR0cmlidXRlc1twYXJzZXIuYXR0cmliTmFtZV0gPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlID0gJydcbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uYXR0cmlidXRlJywge1xuICAgICAgICAgICAgICBuYW1lOiBwYXJzZXIuYXR0cmliTmFtZSxcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHBhcnNlci5hdHRyaWJOYW1lID0gJydcbiAgICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgICAgb3BlblRhZyhwYXJzZXIpXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGlzTWF0Y2gobmFtZVN0YXJ0LCBjKSkge1xuICAgICAgICAgICAgICBwYXJzZXIuYXR0cmliTmFtZSA9IGNcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfTkFNRVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIGF0dHJpYnV0ZSBuYW1lJylcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFOlxuICAgICAgICAgIGlmIChpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfSBlbHNlIGlmIChpc1F1b3RlKGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIucSA9IGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFX1FVT1RFRFxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXBhcnNlci5vcHQudW5xdW90ZWRBdHRyaWJ1dGVWYWx1ZXMpIHtcbiAgICAgICAgICAgICAgZXJyb3IocGFyc2VyLCAnVW5xdW90ZWQgYXR0cmlidXRlIHZhbHVlJylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFX1VOUVVPVEVEXG4gICAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWUgPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQl9WQUxVRV9RVU9URUQ6XG4gICAgICAgICAgaWYgKGMgIT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBpZiAoYyA9PT0gJyYnKSB7XG4gICAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFX0VOVElUWV9RXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWUgKz0gY1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9XG4gICAgICAgICAgYXR0cmliKHBhcnNlcilcbiAgICAgICAgICBwYXJzZXIucSA9ICcnXG4gICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfVkFMVUVfQ0xPU0VEXG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX0NMT1NFRDpcbiAgICAgICAgICBpZiAoaXNXaGl0ZXNwYWNlKGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQlxuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICcvJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5PUEVOX1RBR19TTEFTSFxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNNYXRjaChuYW1lU3RhcnQsIGMpKSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ05vIHdoaXRlc3BhY2UgYmV0d2VlbiBhdHRyaWJ1dGVzJylcbiAgICAgICAgICAgIHBhcnNlci5hdHRyaWJOYW1lID0gY1xuICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlID0gJydcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX05BTUVcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIGF0dHJpYnV0ZSBuYW1lJylcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX1VOUVVPVEVEOlxuICAgICAgICAgIGlmICghaXNBdHRyaWJFbmQoYykpIHtcbiAgICAgICAgICAgIGlmIChjID09PSAnJicpIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfVkFMVUVfRU5USVRZX1VcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHBhcnNlci5hdHRyaWJWYWx1ZSArPSBjXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgIH1cbiAgICAgICAgICBhdHRyaWIocGFyc2VyKVxuICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIG9wZW5UYWcocGFyc2VyKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQlxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5DTE9TRV9UQUc6XG4gICAgICAgICAgaWYgKCFwYXJzZXIudGFnTmFtZSkge1xuICAgICAgICAgICAgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfSBlbHNlIGlmIChub3RNYXRjaChuYW1lU3RhcnQsIGMpKSB7XG4gICAgICAgICAgICAgIGlmIChwYXJzZXIuc2NyaXB0KSB7XG4gICAgICAgICAgICAgICAgcGFyc2VyLnNjcmlwdCArPSAnPC8nICsgY1xuICAgICAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuU0NSSVBUXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIHRhZ25hbWUgaW4gY2xvc2luZyB0YWcuJylcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSBjXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIGNsb3NlVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzTWF0Y2gobmFtZUJvZHksIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIudGFnTmFtZSArPSBjXG4gICAgICAgICAgfSBlbHNlIGlmIChwYXJzZXIuc2NyaXB0KSB7XG4gICAgICAgICAgICBwYXJzZXIuc2NyaXB0ICs9ICc8LycgKyBwYXJzZXIudGFnTmFtZVxuICAgICAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCFpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIHRhZ25hbWUgaW4gY2xvc2luZyB0YWcnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5DTE9TRV9UQUdfU0FXX1dISVRFXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNMT1NFX1RBR19TQVdfV0hJVEU6XG4gICAgICAgICAgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGMgPT09ICc+Jykge1xuICAgICAgICAgICAgY2xvc2VUYWcocGFyc2VyKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0ludmFsaWQgY2hhcmFjdGVycyBpbiBjbG9zaW5nIHRhZycpXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlRFWFRfRU5USVRZOlxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX0VOVElUWV9ROlxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX0VOVElUWV9VOlxuICAgICAgICAgIHZhciByZXR1cm5TdGF0ZVxuICAgICAgICAgIHZhciBidWZmZXJcbiAgICAgICAgICBzd2l0Y2ggKHBhcnNlci5zdGF0ZSkge1xuICAgICAgICAgICAgY2FzZSBTLlRFWFRfRU5USVRZOlxuICAgICAgICAgICAgICByZXR1cm5TdGF0ZSA9IFMuVEVYVFxuICAgICAgICAgICAgICBidWZmZXIgPSAndGV4dE5vZGUnXG4gICAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICAgIGNhc2UgUy5BVFRSSUJfVkFMVUVfRU5USVRZX1E6XG4gICAgICAgICAgICAgIHJldHVyblN0YXRlID0gUy5BVFRSSUJfVkFMVUVfUVVPVEVEXG4gICAgICAgICAgICAgIGJ1ZmZlciA9ICdhdHRyaWJWYWx1ZSdcbiAgICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgICAgY2FzZSBTLkFUVFJJQl9WQUxVRV9FTlRJVFlfVTpcbiAgICAgICAgICAgICAgcmV0dXJuU3RhdGUgPSBTLkFUVFJJQl9WQUxVRV9VTlFVT1RFRFxuICAgICAgICAgICAgICBidWZmZXIgPSAnYXR0cmliVmFsdWUnXG4gICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGMgPT09ICc7Jykge1xuICAgICAgICAgICAgdmFyIHBhcnNlZEVudGl0eSA9IHBhcnNlRW50aXR5KHBhcnNlcilcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgcGFyc2VyLm9wdC51bnBhcnNlZEVudGl0aWVzICYmXG4gICAgICAgICAgICAgICFPYmplY3QudmFsdWVzKHNheC5YTUxfRU5USVRJRVMpLmluY2x1ZGVzKHBhcnNlZEVudGl0eSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBwYXJzZXIuZW50aXR5ID0gJydcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gcmV0dXJuU3RhdGVcbiAgICAgICAgICAgICAgcGFyc2VyLndyaXRlKHBhcnNlZEVudGl0eSlcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHBhcnNlcltidWZmZXJdICs9IHBhcnNlZEVudGl0eVxuICAgICAgICAgICAgICBwYXJzZXIuZW50aXR5ID0gJydcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gcmV0dXJuU3RhdGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgaXNNYXRjaChwYXJzZXIuZW50aXR5Lmxlbmd0aCA/IGVudGl0eUJvZHkgOiBlbnRpdHlTdGFydCwgYylcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHBhcnNlci5lbnRpdHkgKz0gY1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0ludmFsaWQgY2hhcmFjdGVyIGluIGVudGl0eSBuYW1lJylcbiAgICAgICAgICAgIHBhcnNlcltidWZmZXJdICs9ICcmJyArIHBhcnNlci5lbnRpdHkgKyBjXG4gICAgICAgICAgICBwYXJzZXIuZW50aXR5ID0gJydcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IHJldHVyblN0YXRlXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBkZWZhdWx0OiAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHBhcnNlciwgJ1Vua25vd24gc3RhdGU6ICcgKyBwYXJzZXIuc3RhdGUpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8vIHdoaWxlXG5cbiAgICBpZiAocGFyc2VyLnBvc2l0aW9uID49IHBhcnNlci5idWZmZXJDaGVja1Bvc2l0aW9uKSB7XG4gICAgICBjaGVja0J1ZmZlckxlbmd0aChwYXJzZXIpXG4gICAgfVxuICAgIHJldHVybiBwYXJzZXJcbiAgfVxuXG4gIC8qISBodHRwOi8vbXRocy5iZS9mcm9tY29kZXBvaW50IHYwLjEuMCBieSBAbWF0aGlhcyAqL1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBpZiAoIVN0cmluZy5mcm9tQ29kZVBvaW50KSB7XG4gICAgOyhmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgc3RyaW5nRnJvbUNoYXJDb2RlID0gU3RyaW5nLmZyb21DaGFyQ29kZVxuICAgICAgdmFyIGZsb29yID0gTWF0aC5mbG9vclxuICAgICAgdmFyIGZyb21Db2RlUG9pbnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBNQVhfU0laRSA9IDB4NDAwMFxuICAgICAgICB2YXIgY29kZVVuaXRzID0gW11cbiAgICAgICAgdmFyIGhpZ2hTdXJyb2dhdGVcbiAgICAgICAgdmFyIGxvd1N1cnJvZ2F0ZVxuICAgICAgICB2YXIgaW5kZXggPSAtMVxuICAgICAgICB2YXIgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aFxuICAgICAgICBpZiAoIWxlbmd0aCkge1xuICAgICAgICAgIHJldHVybiAnJ1xuICAgICAgICB9XG4gICAgICAgIHZhciByZXN1bHQgPSAnJ1xuICAgICAgICB3aGlsZSAoKytpbmRleCA8IGxlbmd0aCkge1xuICAgICAgICAgIHZhciBjb2RlUG9pbnQgPSBOdW1iZXIoYXJndW1lbnRzW2luZGV4XSlcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAhaXNGaW5pdGUoY29kZVBvaW50KSB8fCAvLyBgTmFOYCwgYCtJbmZpbml0eWAsIG9yIGAtSW5maW5pdHlgXG4gICAgICAgICAgICBjb2RlUG9pbnQgPCAwIHx8IC8vIG5vdCBhIHZhbGlkIFVuaWNvZGUgY29kZSBwb2ludFxuICAgICAgICAgICAgY29kZVBvaW50ID4gMHgxMGZmZmYgfHwgLy8gbm90IGEgdmFsaWQgVW5pY29kZSBjb2RlIHBvaW50XG4gICAgICAgICAgICBmbG9vcihjb2RlUG9pbnQpICE9PSBjb2RlUG9pbnQgLy8gbm90IGFuIGludGVnZXJcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRocm93IFJhbmdlRXJyb3IoJ0ludmFsaWQgY29kZSBwb2ludDogJyArIGNvZGVQb2ludClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGNvZGVQb2ludCA8PSAweGZmZmYpIHtcbiAgICAgICAgICAgIC8vIEJNUCBjb2RlIHBvaW50XG4gICAgICAgICAgICBjb2RlVW5pdHMucHVzaChjb2RlUG9pbnQpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEFzdHJhbCBjb2RlIHBvaW50OyBzcGxpdCBpbiBzdXJyb2dhdGUgaGFsdmVzXG4gICAgICAgICAgICAvLyBodHRwOi8vbWF0aGlhc2J5bmVucy5iZS9ub3Rlcy9qYXZhc2NyaXB0LWVuY29kaW5nI3N1cnJvZ2F0ZS1mb3JtdWxhZVxuICAgICAgICAgICAgY29kZVBvaW50IC09IDB4MTAwMDBcbiAgICAgICAgICAgIGhpZ2hTdXJyb2dhdGUgPSAoY29kZVBvaW50ID4+IDEwKSArIDB4ZDgwMFxuICAgICAgICAgICAgbG93U3Vycm9nYXRlID0gKGNvZGVQb2ludCAlIDB4NDAwKSArIDB4ZGMwMFxuICAgICAgICAgICAgY29kZVVuaXRzLnB1c2goaGlnaFN1cnJvZ2F0ZSwgbG93U3Vycm9nYXRlKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoaW5kZXggKyAxID09PSBsZW5ndGggfHwgY29kZVVuaXRzLmxlbmd0aCA+IE1BWF9TSVpFKSB7XG4gICAgICAgICAgICByZXN1bHQgKz0gc3RyaW5nRnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsIGNvZGVVbml0cylcbiAgICAgICAgICAgIGNvZGVVbml0cy5sZW5ndGggPSAwXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgIH1cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShTdHJpbmcsICdmcm9tQ29kZVBvaW50Jywge1xuICAgICAgICAgIHZhbHVlOiBmcm9tQ29kZVBvaW50LFxuICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIFN0cmluZy5mcm9tQ29kZVBvaW50ID0gZnJvbUNvZGVQb2ludFxuICAgICAgfVxuICAgIH0pKClcbiAgfVxufSkodHlwZW9mIGV4cG9ydHMgPT09ICd1bmRlZmluZWQnID8gKHRoaXMuc2F4ID0ge30pIDogZXhwb3J0cylcbiIsICJpZiAodHlwZW9mIE9iamVjdC5jcmVhdGUgPT09ICdmdW5jdGlvbicpIHtcbiAgLy8gaW1wbGVtZW50YXRpb24gZnJvbSBzdGFuZGFyZCBub2RlLmpzICd1dGlsJyBtb2R1bGVcbiAgbW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBpbmhlcml0cyhjdG9yLCBzdXBlckN0b3IpIHtcbiAgICBpZiAoc3VwZXJDdG9yKSB7XG4gICAgICBjdG9yLnN1cGVyXyA9IHN1cGVyQ3RvclxuICAgICAgY3Rvci5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ3Rvci5wcm90b3R5cGUsIHtcbiAgICAgICAgY29uc3RydWN0b3I6IHtcbiAgICAgICAgICB2YWx1ZTogY3RvcixcbiAgICAgICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICBjb25maWd1cmFibGU6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH07XG59IGVsc2Uge1xuICAvLyBvbGQgc2Nob29sIHNoaW0gZm9yIG9sZCBicm93c2Vyc1xuICBtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGluaGVyaXRzKGN0b3IsIHN1cGVyQ3Rvcikge1xuICAgIGlmIChzdXBlckN0b3IpIHtcbiAgICAgIGN0b3Iuc3VwZXJfID0gc3VwZXJDdG9yXG4gICAgICB2YXIgVGVtcEN0b3IgPSBmdW5jdGlvbiAoKSB7fVxuICAgICAgVGVtcEN0b3IucHJvdG90eXBlID0gc3VwZXJDdG9yLnByb3RvdHlwZVxuICAgICAgY3Rvci5wcm90b3R5cGUgPSBuZXcgVGVtcEN0b3IoKVxuICAgICAgY3Rvci5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBjdG9yXG4gICAgfVxuICB9XG59XG4iLCAidHJ5IHtcbiAgdmFyIHV0aWwgPSByZXF1aXJlKCd1dGlsJyk7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGlmICh0eXBlb2YgdXRpbC5pbmhlcml0cyAhPT0gJ2Z1bmN0aW9uJykgdGhyb3cgJyc7XG4gIG1vZHVsZS5leHBvcnRzID0gdXRpbC5pbmhlcml0cztcbn0gY2F0Y2ggKGUpIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2luaGVyaXRzX2Jyb3dzZXIuanMnKTtcbn1cbiIsICJ2YXIgaW5oZXJpdHMgPSByZXF1aXJlKCdpbmhlcml0cycpXG52YXIgRXZlbnRFbWl0dGVyID0gcmVxdWlyZSgnZXZlbnRzJykuRXZlbnRFbWl0dGVyXG5cbm1vZHVsZS5leHBvcnRzID0gUXVldWVcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSBRdWV1ZVxuXG5mdW5jdGlvbiBRdWV1ZSAob3B0aW9ucykge1xuICBpZiAoISh0aGlzIGluc3RhbmNlb2YgUXVldWUpKSB7XG4gICAgcmV0dXJuIG5ldyBRdWV1ZShvcHRpb25zKVxuICB9XG5cbiAgRXZlbnRFbWl0dGVyLmNhbGwodGhpcylcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge31cbiAgdGhpcy5jb25jdXJyZW5jeSA9IG9wdGlvbnMuY29uY3VycmVuY3kgfHwgSW5maW5pdHlcbiAgdGhpcy50aW1lb3V0ID0gb3B0aW9ucy50aW1lb3V0IHx8IDBcbiAgdGhpcy5hdXRvc3RhcnQgPSBvcHRpb25zLmF1dG9zdGFydCB8fCBmYWxzZVxuICB0aGlzLnJlc3VsdHMgPSBvcHRpb25zLnJlc3VsdHMgfHwgbnVsbFxuICB0aGlzLnBlbmRpbmcgPSAwXG4gIHRoaXMuc2Vzc2lvbiA9IDBcbiAgdGhpcy5ydW5uaW5nID0gZmFsc2VcbiAgdGhpcy5qb2JzID0gW11cbiAgdGhpcy50aW1lcnMgPSB7fVxufVxuaW5oZXJpdHMoUXVldWUsIEV2ZW50RW1pdHRlcilcblxudmFyIGFycmF5TWV0aG9kcyA9IFtcbiAgJ3BvcCcsXG4gICdzaGlmdCcsXG4gICdpbmRleE9mJyxcbiAgJ2xhc3RJbmRleE9mJ1xuXVxuXG5hcnJheU1ldGhvZHMuZm9yRWFjaChmdW5jdGlvbiAobWV0aG9kKSB7XG4gIFF1ZXVlLnByb3RvdHlwZVttZXRob2RdID0gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBBcnJheS5wcm90b3R5cGVbbWV0aG9kXS5hcHBseSh0aGlzLmpvYnMsIGFyZ3VtZW50cylcbiAgfVxufSlcblxuUXVldWUucHJvdG90eXBlLnNsaWNlID0gZnVuY3Rpb24gKGJlZ2luLCBlbmQpIHtcbiAgdGhpcy5qb2JzID0gdGhpcy5qb2JzLnNsaWNlKGJlZ2luLCBlbmQpXG4gIHJldHVybiB0aGlzXG59XG5cblF1ZXVlLnByb3RvdHlwZS5yZXZlcnNlID0gZnVuY3Rpb24gKCkge1xuICB0aGlzLmpvYnMucmV2ZXJzZSgpXG4gIHJldHVybiB0aGlzXG59XG5cbnZhciBhcnJheUFkZE1ldGhvZHMgPSBbXG4gICdwdXNoJyxcbiAgJ3Vuc2hpZnQnLFxuICAnc3BsaWNlJ1xuXVxuXG5hcnJheUFkZE1ldGhvZHMuZm9yRWFjaChmdW5jdGlvbiAobWV0aG9kKSB7XG4gIFF1ZXVlLnByb3RvdHlwZVttZXRob2RdID0gZnVuY3Rpb24gKCkge1xuICAgIHZhciBtZXRob2RSZXN1bHQgPSBBcnJheS5wcm90b3R5cGVbbWV0aG9kXS5hcHBseSh0aGlzLmpvYnMsIGFyZ3VtZW50cylcbiAgICBpZiAodGhpcy5hdXRvc3RhcnQpIHtcbiAgICAgIHRoaXMuc3RhcnQoKVxuICAgIH1cbiAgICByZXR1cm4gbWV0aG9kUmVzdWx0XG4gIH1cbn0pXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShRdWV1ZS5wcm90b3R5cGUsICdsZW5ndGgnLCB7XG4gIGdldDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnBlbmRpbmcgKyB0aGlzLmpvYnMubGVuZ3RoXG4gIH1cbn0pXG5cblF1ZXVlLnByb3RvdHlwZS5zdGFydCA9IGZ1bmN0aW9uIChjYikge1xuICBpZiAoY2IpIHtcbiAgICBjYWxsT25FcnJvck9yRW5kLmNhbGwodGhpcywgY2IpXG4gIH1cblxuICB0aGlzLnJ1bm5pbmcgPSB0cnVlXG5cbiAgaWYgKHRoaXMucGVuZGluZyA+PSB0aGlzLmNvbmN1cnJlbmN5KSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAodGhpcy5qb2JzLmxlbmd0aCA9PT0gMCkge1xuICAgIGlmICh0aGlzLnBlbmRpbmcgPT09IDApIHtcbiAgICAgIGRvbmUuY2FsbCh0aGlzKVxuICAgIH1cbiAgICByZXR1cm5cbiAgfVxuXG4gIHZhciBzZWxmID0gdGhpc1xuICB2YXIgam9iID0gdGhpcy5qb2JzLnNoaWZ0KClcbiAgdmFyIG9uY2UgPSB0cnVlXG4gIHZhciBzZXNzaW9uID0gdGhpcy5zZXNzaW9uXG4gIHZhciB0aW1lb3V0SWQgPSBudWxsXG4gIHZhciBkaWRUaW1lb3V0ID0gZmFsc2VcbiAgdmFyIHJlc3VsdEluZGV4ID0gbnVsbFxuICB2YXIgdGltZW91dCA9IGpvYi5oYXNPd25Qcm9wZXJ0eSgndGltZW91dCcpID8gam9iLnRpbWVvdXQgOiB0aGlzLnRpbWVvdXRcblxuICBmdW5jdGlvbiBuZXh0IChlcnIsIHJlc3VsdCkge1xuICAgIGlmIChvbmNlICYmIHNlbGYuc2Vzc2lvbiA9PT0gc2Vzc2lvbikge1xuICAgICAgb25jZSA9IGZhbHNlXG4gICAgICBzZWxmLnBlbmRpbmctLVxuICAgICAgaWYgKHRpbWVvdXRJZCAhPT0gbnVsbCkge1xuICAgICAgICBkZWxldGUgc2VsZi50aW1lcnNbdGltZW91dElkXVxuICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dElkKVxuICAgICAgfVxuXG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHNlbGYuZW1pdCgnZXJyb3InLCBlcnIsIGpvYilcbiAgICAgIH0gZWxzZSBpZiAoZGlkVGltZW91dCA9PT0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHJlc3VsdEluZGV4ICE9PSBudWxsKSB7XG4gICAgICAgICAgc2VsZi5yZXN1bHRzW3Jlc3VsdEluZGV4XSA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMSlcbiAgICAgICAgfVxuICAgICAgICBzZWxmLmVtaXQoJ3N1Y2Nlc3MnLCByZXN1bHQsIGpvYilcbiAgICAgIH1cblxuICAgICAgaWYgKHNlbGYuc2Vzc2lvbiA9PT0gc2Vzc2lvbikge1xuICAgICAgICBpZiAoc2VsZi5wZW5kaW5nID09PSAwICYmIHNlbGYuam9icy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICBkb25lLmNhbGwoc2VsZilcbiAgICAgICAgfSBlbHNlIGlmIChzZWxmLnJ1bm5pbmcpIHtcbiAgICAgICAgICBzZWxmLnN0YXJ0KClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmICh0aW1lb3V0KSB7XG4gICAgdGltZW91dElkID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBkaWRUaW1lb3V0ID0gdHJ1ZVxuICAgICAgaWYgKHNlbGYubGlzdGVuZXJzKCd0aW1lb3V0JykubGVuZ3RoID4gMCkge1xuICAgICAgICBzZWxmLmVtaXQoJ3RpbWVvdXQnLCBuZXh0LCBqb2IpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXh0KClcbiAgICAgIH1cbiAgICB9LCB0aW1lb3V0KVxuICAgIHRoaXMudGltZXJzW3RpbWVvdXRJZF0gPSB0aW1lb3V0SWRcbiAgfVxuXG4gIGlmICh0aGlzLnJlc3VsdHMpIHtcbiAgICByZXN1bHRJbmRleCA9IHRoaXMucmVzdWx0cy5sZW5ndGhcbiAgICB0aGlzLnJlc3VsdHNbcmVzdWx0SW5kZXhdID0gbnVsbFxuICB9XG5cbiAgdGhpcy5wZW5kaW5nKytcbiAgc2VsZi5lbWl0KCdzdGFydCcsIGpvYilcbiAgdmFyIHByb21pc2UgPSBqb2IobmV4dClcbiAgaWYgKHByb21pc2UgJiYgcHJvbWlzZS50aGVuICYmIHR5cGVvZiBwcm9taXNlLnRoZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24gKHJlc3VsdCkge1xuICAgICAgcmV0dXJuIG5leHQobnVsbCwgcmVzdWx0KVxuICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgIHJldHVybiBuZXh0KGVyciB8fCB0cnVlKVxuICAgIH0pXG4gIH1cblxuICBpZiAodGhpcy5ydW5uaW5nICYmIHRoaXMuam9icy5sZW5ndGggPiAwKSB7XG4gICAgdGhpcy5zdGFydCgpXG4gIH1cbn1cblxuUXVldWUucHJvdG90eXBlLnN0b3AgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMucnVubmluZyA9IGZhbHNlXG59XG5cblF1ZXVlLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbiAoZXJyKSB7XG4gIGNsZWFyVGltZXJzLmNhbGwodGhpcylcbiAgdGhpcy5qb2JzLmxlbmd0aCA9IDBcbiAgdGhpcy5wZW5kaW5nID0gMFxuICBkb25lLmNhbGwodGhpcywgZXJyKVxufVxuXG5mdW5jdGlvbiBjbGVhclRpbWVycyAoKSB7XG4gIGZvciAodmFyIGtleSBpbiB0aGlzLnRpbWVycykge1xuICAgIHZhciB0aW1lb3V0SWQgPSB0aGlzLnRpbWVyc1trZXldXG4gICAgZGVsZXRlIHRoaXMudGltZXJzW2tleV1cbiAgICBjbGVhclRpbWVvdXQodGltZW91dElkKVxuICB9XG59XG5cbmZ1bmN0aW9uIGNhbGxPbkVycm9yT3JFbmQgKGNiKSB7XG4gIHZhciBzZWxmID0gdGhpc1xuICB0aGlzLm9uKCdlcnJvcicsIG9uZXJyb3IpXG4gIHRoaXMub24oJ2VuZCcsIG9uZW5kKVxuXG4gIGZ1bmN0aW9uIG9uZXJyb3IgKGVycikgeyBzZWxmLmVuZChlcnIpIH1cbiAgZnVuY3Rpb24gb25lbmQgKGVycikge1xuICAgIHNlbGYucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25lcnJvcilcbiAgICBzZWxmLnJlbW92ZUxpc3RlbmVyKCdlbmQnLCBvbmVuZClcbiAgICBjYihlcnIsIHRoaXMucmVzdWx0cylcbiAgfVxufVxuXG5mdW5jdGlvbiBkb25lIChlcnIpIHtcbiAgdGhpcy5zZXNzaW9uKytcbiAgdGhpcy5ydW5uaW5nID0gZmFsc2VcbiAgdGhpcy5lbWl0KCdlbmQnLCBlcnIpXG59XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmZpbmRCb3ggPSBleHBvcnRzLnJlYWRVSW50ID0gZXhwb3J0cy5yZWFkVUludDMyTEUgPSBleHBvcnRzLnJlYWRVSW50MzJCRSA9IGV4cG9ydHMucmVhZEludDMyTEUgPSBleHBvcnRzLnJlYWRVSW50MjRMRSA9IGV4cG9ydHMucmVhZFVJbnQxNkxFID0gZXhwb3J0cy5yZWFkVUludDE2QkUgPSBleHBvcnRzLnJlYWRJbnQxNkxFID0gZXhwb3J0cy50b0hleFN0cmluZyA9IGV4cG9ydHMudG9VVEY4U3RyaW5nID0gdm9pZCAwO1xuY29uc3QgZGVjb2RlciA9IG5ldyBUZXh0RGVjb2RlcigpO1xuY29uc3QgdG9VVEY4U3RyaW5nID0gKGlucHV0LCBzdGFydCA9IDAsIGVuZCA9IGlucHV0Lmxlbmd0aCkgPT4gZGVjb2Rlci5kZWNvZGUoaW5wdXQuc2xpY2Uoc3RhcnQsIGVuZCkpO1xuZXhwb3J0cy50b1VURjhTdHJpbmcgPSB0b1VURjhTdHJpbmc7XG5jb25zdCB0b0hleFN0cmluZyA9IChpbnB1dCwgc3RhcnQgPSAwLCBlbmQgPSBpbnB1dC5sZW5ndGgpID0+IGlucHV0XG4gICAgLnNsaWNlKHN0YXJ0LCBlbmQpXG4gICAgLnJlZHVjZSgobWVtbywgaSkgPT4gbWVtbyArICgnMCcgKyBpLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpLCAnJyk7XG5leHBvcnRzLnRvSGV4U3RyaW5nID0gdG9IZXhTdHJpbmc7XG5jb25zdCByZWFkSW50MTZMRSA9IChpbnB1dCwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgIGNvbnN0IHZhbCA9IGlucHV0W29mZnNldF0gKyBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogODtcbiAgICByZXR1cm4gdmFsIHwgKCh2YWwgJiAoMiAqKiAxNSkpICogMHgxZmZmZSk7XG59O1xuZXhwb3J0cy5yZWFkSW50MTZMRSA9IHJlYWRJbnQxNkxFO1xuY29uc3QgcmVhZFVJbnQxNkJFID0gKGlucHV0LCBvZmZzZXQgPSAwKSA9PiBpbnB1dFtvZmZzZXRdICogMiAqKiA4ICsgaW5wdXRbb2Zmc2V0ICsgMV07XG5leHBvcnRzLnJlYWRVSW50MTZCRSA9IHJlYWRVSW50MTZCRTtcbmNvbnN0IHJlYWRVSW50MTZMRSA9IChpbnB1dCwgb2Zmc2V0ID0gMCkgPT4gaW5wdXRbb2Zmc2V0XSArIGlucHV0W29mZnNldCArIDFdICogMiAqKiA4O1xuZXhwb3J0cy5yZWFkVUludDE2TEUgPSByZWFkVUludDE2TEU7XG5jb25zdCByZWFkVUludDI0TEUgPSAoaW5wdXQsIG9mZnNldCA9IDApID0+IGlucHV0W29mZnNldF0gKyBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogOCArIGlucHV0W29mZnNldCArIDJdICogMiAqKiAxNjtcbmV4cG9ydHMucmVhZFVJbnQyNExFID0gcmVhZFVJbnQyNExFO1xuY29uc3QgcmVhZEludDMyTEUgPSAoaW5wdXQsIG9mZnNldCA9IDApID0+IGlucHV0W29mZnNldF0gK1xuICAgIGlucHV0W29mZnNldCArIDFdICogMiAqKiA4ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAyXSAqIDIgKiogMTYgK1xuICAgIChpbnB1dFtvZmZzZXQgKyAzXSA8PCAyNCk7XG5leHBvcnRzLnJlYWRJbnQzMkxFID0gcmVhZEludDMyTEU7XG5jb25zdCByZWFkVUludDMyQkUgPSAoaW5wdXQsIG9mZnNldCA9IDApID0+IGlucHV0W29mZnNldF0gKiAyICoqIDI0ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogMTYgK1xuICAgIGlucHV0W29mZnNldCArIDJdICogMiAqKiA4ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAzXTtcbmV4cG9ydHMucmVhZFVJbnQzMkJFID0gcmVhZFVJbnQzMkJFO1xuY29uc3QgcmVhZFVJbnQzMkxFID0gKGlucHV0LCBvZmZzZXQgPSAwKSA9PiBpbnB1dFtvZmZzZXRdICtcbiAgICBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogOCArXG4gICAgaW5wdXRbb2Zmc2V0ICsgMl0gKiAyICoqIDE2ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAzXSAqIDIgKiogMjQ7XG5leHBvcnRzLnJlYWRVSW50MzJMRSA9IHJlYWRVSW50MzJMRTtcbi8vIEFic3RyYWN0IHJlYWRpbmcgbXVsdGktYnl0ZSB1bnNpZ25lZCBpbnRlZ2Vyc1xuY29uc3QgbWV0aG9kcyA9IHtcbiAgICByZWFkVUludDE2QkU6IGV4cG9ydHMucmVhZFVJbnQxNkJFLFxuICAgIHJlYWRVSW50MTZMRTogZXhwb3J0cy5yZWFkVUludDE2TEUsXG4gICAgcmVhZFVJbnQzMkJFOiBleHBvcnRzLnJlYWRVSW50MzJCRSxcbiAgICByZWFkVUludDMyTEU6IGV4cG9ydHMucmVhZFVJbnQzMkxFLFxufTtcbmZ1bmN0aW9uIHJlYWRVSW50KGlucHV0LCBiaXRzLCBvZmZzZXQsIGlzQmlnRW5kaWFuKSB7XG4gICAgb2Zmc2V0ID0gb2Zmc2V0IHx8IDA7XG4gICAgY29uc3QgZW5kaWFuID0gaXNCaWdFbmRpYW4gPyAnQkUnIDogJ0xFJztcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKCdyZWFkVUludCcgKyBiaXRzICsgZW5kaWFuKTtcbiAgICByZXR1cm4gbWV0aG9kc1ttZXRob2ROYW1lXShpbnB1dCwgb2Zmc2V0KTtcbn1cbmV4cG9ydHMucmVhZFVJbnQgPSByZWFkVUludDtcbmZ1bmN0aW9uIHJlYWRCb3goaW5wdXQsIG9mZnNldCkge1xuICAgIGlmIChpbnB1dC5sZW5ndGggLSBvZmZzZXQgPCA0KVxuICAgICAgICByZXR1cm47XG4gICAgY29uc3QgYm94U2l6ZSA9ICgwLCBleHBvcnRzLnJlYWRVSW50MzJCRSkoaW5wdXQsIG9mZnNldCk7XG4gICAgaWYgKGlucHV0Lmxlbmd0aCAtIG9mZnNldCA8IGJveFNpemUpXG4gICAgICAgIHJldHVybjtcbiAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAoMCwgZXhwb3J0cy50b1VURjhTdHJpbmcpKGlucHV0LCA0ICsgb2Zmc2V0LCA4ICsgb2Zmc2V0KSxcbiAgICAgICAgb2Zmc2V0LFxuICAgICAgICBzaXplOiBib3hTaXplLFxuICAgIH07XG59XG5mdW5jdGlvbiBmaW5kQm94KGlucHV0LCBib3hOYW1lLCBvZmZzZXQpIHtcbiAgICB3aGlsZSAob2Zmc2V0IDwgaW5wdXQubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGJveCA9IHJlYWRCb3goaW5wdXQsIG9mZnNldCk7XG4gICAgICAgIGlmICghYm94KVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGlmIChib3gubmFtZSA9PT0gYm94TmFtZSlcbiAgICAgICAgICAgIHJldHVybiBib3g7XG4gICAgICAgIC8vIEZpeCB0aGUgaW5maW5pdGUgbG9vcCBieSBlbnN1cmluZyBvZmZzZXQgYWx3YXlzIGluY3JlYXNlc1xuICAgICAgICAvLyBJZiBib3guc2l6ZSBpcyAwLCBhZHZhbmNlIGJ5IGF0IGxlYXN0IDggYnl0ZXMgKHRoZSBzaXplIG9mIHRoZSBib3ggaGVhZGVyKVxuICAgICAgICBvZmZzZXQgKz0gYm94LnNpemUgPiAwID8gYm94LnNpemUgOiA4O1xuICAgIH1cbn1cbmV4cG9ydHMuZmluZEJveCA9IGZpbmRCb3g7XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLkJNUCA9IHZvaWQgMDtcbmNvbnN0IHV0aWxzXzEgPSByZXF1aXJlKFwiLi91dGlsc1wiKTtcbmV4cG9ydHMuQk1QID0ge1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDIpID09PSAnQk0nLFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiAoe1xuICAgICAgICBoZWlnaHQ6IE1hdGguYWJzKCgwLCB1dGlsc18xLnJlYWRJbnQzMkxFKShpbnB1dCwgMjIpKSxcbiAgICAgICAgd2lkdGg6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJMRSkoaW5wdXQsIDE4KSxcbiAgICB9KSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLklDTyA9IHZvaWQgMDtcbmNvbnN0IHV0aWxzXzEgPSByZXF1aXJlKFwiLi91dGlsc1wiKTtcbmNvbnN0IFRZUEVfSUNPTiA9IDE7XG4vKipcbiAqIElDT04gSGVhZGVyXG4gKlxuICogfCBPZmZzZXQgfCBTaXplIHwgUHVycG9zZSB8XG4gKiB8IDBcdCAgICB8IDIgICAgfCBSZXNlcnZlZC4gTXVzdCBhbHdheXMgYmUgMC4gIHxcbiAqIHwgMiAgICAgIHwgMiAgICB8IEltYWdlIHR5cGU6IDEgZm9yIGljb24gKC5JQ08pIGltYWdlLCAyIGZvciBjdXJzb3IgKC5DVVIpIGltYWdlLiBPdGhlciB2YWx1ZXMgYXJlIGludmFsaWQuIHxcbiAqIHwgNCAgICAgIHwgMiAgICB8IE51bWJlciBvZiBpbWFnZXMgaW4gdGhlIGZpbGUuIHxcbiAqXG4gKi9cbmNvbnN0IFNJWkVfSEVBREVSID0gMiArIDIgKyAyOyAvLyA2XG4vKipcbiAqIEltYWdlIEVudHJ5XG4gKlxuICogfCBPZmZzZXQgfCBTaXplIHwgUHVycG9zZSB8XG4gKiB8IDBcdCAgICB8IDEgICAgfCBJbWFnZSB3aWR0aCBpbiBwaXhlbHMuIENhbiBiZSBhbnkgbnVtYmVyIGJldHdlZW4gMCBhbmQgMjU1LiBWYWx1ZSAwIG1lYW5zIHdpZHRoIGlzIDI1NiBwaXhlbHMuIHxcbiAqIHwgMSAgICAgIHwgMSAgICB8IEltYWdlIGhlaWdodCBpbiBwaXhlbHMuIENhbiBiZSBhbnkgbnVtYmVyIGJldHdlZW4gMCBhbmQgMjU1LiBWYWx1ZSAwIG1lYW5zIGhlaWdodCBpcyAyNTYgcGl4ZWxzLiB8XG4gKiB8IDIgICAgICB8IDEgICAgfCBOdW1iZXIgb2YgY29sb3JzIGluIHRoZSBjb2xvciBwYWxldHRlLiBTaG91bGQgYmUgMCBpZiB0aGUgaW1hZ2UgZG9lcyBub3QgdXNlIGEgY29sb3IgcGFsZXR0ZS4gfFxuICogfCAzICAgICAgfCAxICAgIHwgUmVzZXJ2ZWQuIFNob3VsZCBiZSAwLiB8XG4gKiB8IDQgICAgICB8IDIgICAgfCBJQ08gZm9ybWF0OiBDb2xvciBwbGFuZXMuIFNob3VsZCBiZSAwIG9yIDEuIHxcbiAqIHwgICAgICAgIHwgICAgICB8IENVUiBmb3JtYXQ6IFRoZSBob3Jpem9udGFsIGNvb3JkaW5hdGVzIG9mIHRoZSBob3RzcG90IGluIG51bWJlciBvZiBwaXhlbHMgZnJvbSB0aGUgbGVmdC4gfFxuICogfCA2ICAgICAgfCAyICAgIHwgSUNPIGZvcm1hdDogQml0cyBwZXIgcGl4ZWwuIHxcbiAqIHwgICAgICAgIHwgICAgICB8IENVUiBmb3JtYXQ6IFRoZSB2ZXJ0aWNhbCBjb29yZGluYXRlcyBvZiB0aGUgaG90c3BvdCBpbiBudW1iZXIgb2YgcGl4ZWxzIGZyb20gdGhlIHRvcC4gfFxuICogfCA4ICAgICAgfCA0ICAgIHwgVGhlIHNpemUgb2YgdGhlIGltYWdlJ3MgZGF0YSBpbiBieXRlcyB8XG4gKiB8IDEyICAgICB8IDQgICAgfCBUaGUgb2Zmc2V0IG9mIEJNUCBvciBQTkcgZGF0YSBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIElDTy9DVVIgZmlsZSB8XG4gKlxuICovXG5jb25zdCBTSVpFX0lNQUdFX0VOVFJZID0gMSArIDEgKyAxICsgMSArIDIgKyAyICsgNCArIDQ7IC8vIDE2XG5mdW5jdGlvbiBnZXRTaXplRnJvbU9mZnNldChpbnB1dCwgb2Zmc2V0KSB7XG4gICAgY29uc3QgdmFsdWUgPSBpbnB1dFtvZmZzZXRdO1xuICAgIHJldHVybiB2YWx1ZSA9PT0gMCA/IDI1NiA6IHZhbHVlO1xufVxuZnVuY3Rpb24gZ2V0SW1hZ2VTaXplKGlucHV0LCBpbWFnZUluZGV4KSB7XG4gICAgY29uc3Qgb2Zmc2V0ID0gU0laRV9IRUFERVIgKyBpbWFnZUluZGV4ICogU0laRV9JTUFHRV9FTlRSWTtcbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IGdldFNpemVGcm9tT2Zmc2V0KGlucHV0LCBvZmZzZXQgKyAxKSxcbiAgICAgICAgd2lkdGg6IGdldFNpemVGcm9tT2Zmc2V0KGlucHV0LCBvZmZzZXQpLFxuICAgIH07XG59XG5leHBvcnRzLklDTyA9IHtcbiAgICB2YWxpZGF0ZShpbnB1dCkge1xuICAgICAgICBjb25zdCByZXNlcnZlZCA9ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDApO1xuICAgICAgICBjb25zdCBpbWFnZUNvdW50ID0gKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgNCk7XG4gICAgICAgIGlmIChyZXNlcnZlZCAhPT0gMCB8fCBpbWFnZUNvdW50ID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBpbWFnZVR5cGUgPSAoMCwgdXRpbHNfMS5yZWFkVUludDE2TEUpKGlucHV0LCAyKTtcbiAgICAgICAgcmV0dXJuIGltYWdlVHlwZSA9PT0gVFlQRV9JQ09OO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IG5iSW1hZ2VzID0gKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgNCk7XG4gICAgICAgIGNvbnN0IGltYWdlU2l6ZSA9IGdldEltYWdlU2l6ZShpbnB1dCwgMCk7XG4gICAgICAgIGlmIChuYkltYWdlcyA9PT0gMSlcbiAgICAgICAgICAgIHJldHVybiBpbWFnZVNpemU7XG4gICAgICAgIGNvbnN0IGltZ3MgPSBbaW1hZ2VTaXplXTtcbiAgICAgICAgZm9yIChsZXQgaW1hZ2VJbmRleCA9IDE7IGltYWdlSW5kZXggPCBuYkltYWdlczsgaW1hZ2VJbmRleCArPSAxKSB7XG4gICAgICAgICAgICBpbWdzLnB1c2goZ2V0SW1hZ2VTaXplKGlucHV0LCBpbWFnZUluZGV4KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlaWdodDogaW1hZ2VTaXplLmhlaWdodCxcbiAgICAgICAgICAgIGltYWdlczogaW1ncyxcbiAgICAgICAgICAgIHdpZHRoOiBpbWFnZVNpemUud2lkdGgsXG4gICAgICAgIH07XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLkNVUiA9IHZvaWQgMDtcbmNvbnN0IGljb18xID0gcmVxdWlyZShcIi4vaWNvXCIpO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgVFlQRV9DVVJTT1IgPSAyO1xuZXhwb3J0cy5DVVIgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgcmVzZXJ2ZWQgPSAoMCwgdXRpbHNfMS5yZWFkVUludDE2TEUpKGlucHV0LCAwKTtcbiAgICAgICAgY29uc3QgaW1hZ2VDb3VudCA9ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDQpO1xuICAgICAgICBpZiAocmVzZXJ2ZWQgIT09IDAgfHwgaW1hZ2VDb3VudCA9PT0gMClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgaW1hZ2VUeXBlID0gKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgMik7XG4gICAgICAgIHJldHVybiBpbWFnZVR5cGUgPT09IFRZUEVfQ1VSU09SO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlOiAoaW5wdXQpID0+IGljb18xLklDTy5jYWxjdWxhdGUoaW5wdXQpLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuRERTID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuZXhwb3J0cy5ERFMgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gKDAsIHV0aWxzXzEucmVhZFVJbnQzMkxFKShpbnB1dCwgMCkgPT09IDB4MjA1MzQ0NDQsXG4gICAgY2FsY3VsYXRlOiAoaW5wdXQpID0+ICh7XG4gICAgICAgIGhlaWdodDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkxFKShpbnB1dCwgMTIpLFxuICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkxFKShpbnB1dCwgMTYpLFxuICAgIH0pLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuR0lGID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgZ2lmUmVnZXhwID0gL15HSUY4Wzc5XWEvO1xuZXhwb3J0cy5HSUYgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gZ2lmUmVnZXhwLnRlc3QoKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMCwgNikpLFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiAoe1xuICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDgpLFxuICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgNiksXG4gICAgfSksXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5IRUlGID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgYnJhbmRNYXAgPSB7XG4gICAgYXZpZjogJ2F2aWYnLFxuICAgIG1pZjE6ICdoZWlmJyxcbiAgICBtc2YxOiAnaGVpZicsIC8vIGhlaWYtc2VxdWVuY2VcbiAgICBoZWljOiAnaGVpYycsXG4gICAgaGVpeDogJ2hlaWMnLFxuICAgIGhldmM6ICdoZWljJywgLy8gaGVpYy1zZXF1ZW5jZVxuICAgIGhldng6ICdoZWljJywgLy8gaGVpYy1zZXF1ZW5jZVxufTtcbmV4cG9ydHMuSEVJRiA9IHtcbiAgICB2YWxpZGF0ZShpbnB1dCkge1xuICAgICAgICBjb25zdCBib3hUeXBlID0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgNCwgOCk7XG4gICAgICAgIGlmIChib3hUeXBlICE9PSAnZnR5cCcpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IGZ0eXBCb3ggPSAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2Z0eXAnLCAwKTtcbiAgICAgICAgaWYgKCFmdHlwQm94KVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBicmFuZCA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIGZ0eXBCb3gub2Zmc2V0ICsgOCwgZnR5cEJveC5vZmZzZXQgKyAxMik7XG4gICAgICAgIHJldHVybiBicmFuZCBpbiBicmFuZE1hcDtcbiAgICB9LFxuICAgIGNhbGN1bGF0ZShpbnB1dCkge1xuICAgICAgICAvLyBCYXNlZCBvbiBodHRwczovL25va2lhdGVjaC5naXRodWIuaW8vaGVpZi90ZWNobmljYWwuaHRtbFxuICAgICAgICBjb25zdCBtZXRhQm94ID0gKDAsIHV0aWxzXzEuZmluZEJveCkoaW5wdXQsICdtZXRhJywgMCk7XG4gICAgICAgIGNvbnN0IGlwcnBCb3ggPSBtZXRhQm94ICYmICgwLCB1dGlsc18xLmZpbmRCb3gpKGlucHV0LCAnaXBycCcsIG1ldGFCb3gub2Zmc2V0ICsgMTIpO1xuICAgICAgICBjb25zdCBpcGNvQm94ID0gaXBycEJveCAmJiAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2lwY28nLCBpcHJwQm94Lm9mZnNldCArIDgpO1xuICAgICAgICBjb25zdCBpc3BlQm94ID0gaXBjb0JveCAmJiAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2lzcGUnLCBpcGNvQm94Lm9mZnNldCArIDgpO1xuICAgICAgICBpZiAoaXNwZUJveCkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIGlzcGVCb3gub2Zmc2V0ICsgMTYpLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkVUludDMyQkUpKGlucHV0LCBpc3BlQm94Lm9mZnNldCArIDEyKSxcbiAgICAgICAgICAgICAgICB0eXBlOiAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCA4LCAxMiksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgSEVJRiwgbm8gc2l6ZSBmb3VuZCcpO1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5JQ05TID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuLyoqXG4gKiBJQ05TIEhlYWRlclxuICpcbiAqIHwgT2Zmc2V0IHwgU2l6ZSB8IFB1cnBvc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gKiB8IDBcdCAgICB8IDQgICAgfCBNYWdpYyBsaXRlcmFsLCBtdXN0IGJlIFwiaWNuc1wiICgweDY5LCAweDYzLCAweDZlLCAweDczKSB8XG4gKiB8IDQgICAgICB8IDQgICAgfCBMZW5ndGggb2YgZmlsZSwgaW4gYnl0ZXMsIG1zYiBmaXJzdC4gICAgICAgICAgICAgICAgICAgfFxuICpcbiAqL1xuY29uc3QgU0laRV9IRUFERVIgPSA0ICsgNDsgLy8gOFxuY29uc3QgRklMRV9MRU5HVEhfT0ZGU0VUID0gNDsgLy8gTVNCID0+IEJJRyBFTkRJQU5cbi8qKlxuICogSW1hZ2UgRW50cnlcbiAqXG4gKiB8IE9mZnNldCB8IFNpemUgfCBQdXJwb3NlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAqIHwgMFx0ICAgIHwgNCAgICB8IEljb24gdHlwZSwgc2VlIE9TVHlwZSBiZWxvdy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICogfCA0ICAgICAgfCA0ICAgIHwgTGVuZ3RoIG9mIGRhdGEsIGluIGJ5dGVzIChpbmNsdWRpbmcgdHlwZSBhbmQgbGVuZ3RoKSwgbXNiIGZpcnN0LiB8XG4gKiB8IDggICAgICB8IG4gICAgfCBJY29uIGRhdGEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAqL1xuY29uc3QgRU5UUllfTEVOR1RIX09GRlNFVCA9IDQ7IC8vIE1TQiA9PiBCSUcgRU5ESUFOXG5jb25zdCBJQ09OX1RZUEVfU0laRSA9IHtcbiAgICBJQ09OOiAzMixcbiAgICAnSUNOIyc6IDMyLFxuICAgIC8vIG0gPT4gMTYgeCAxNlxuICAgICdpY20jJzogMTYsXG4gICAgaWNtNDogMTYsXG4gICAgaWNtODogMTYsXG4gICAgLy8gcyA9PiAxNiB4IDE2XG4gICAgJ2ljcyMnOiAxNixcbiAgICBpY3M0OiAxNixcbiAgICBpY3M4OiAxNixcbiAgICBpczMyOiAxNixcbiAgICBzOG1rOiAxNixcbiAgICBpY3A0OiAxNixcbiAgICAvLyBsID0+IDMyIHggMzJcbiAgICBpY2w0OiAzMixcbiAgICBpY2w4OiAzMixcbiAgICBpbDMyOiAzMixcbiAgICBsOG1rOiAzMixcbiAgICBpY3A1OiAzMixcbiAgICBpYzExOiAzMixcbiAgICAvLyBoID0+IDQ4IHggNDhcbiAgICBpY2g0OiA0OCxcbiAgICBpY2g4OiA0OCxcbiAgICBpaDMyOiA0OCxcbiAgICBoOG1rOiA0OCxcbiAgICAvLyAuID0+IDY0IHggNjRcbiAgICBpY3A2OiA2NCxcbiAgICBpYzEyOiAzMixcbiAgICAvLyB0ID0+IDEyOCB4IDEyOFxuICAgIGl0MzI6IDEyOCxcbiAgICB0OG1rOiAxMjgsXG4gICAgaWMwNzogMTI4LFxuICAgIC8vIC4gPT4gMjU2IHggMjU2XG4gICAgaWMwODogMjU2LFxuICAgIGljMTM6IDI1NixcbiAgICAvLyAuID0+IDUxMiB4IDUxMlxuICAgIGljMDk6IDUxMixcbiAgICBpYzE0OiA1MTIsXG4gICAgLy8gLiA9PiAxMDI0IHggMTAyNFxuICAgIGljMTA6IDEwMjQsXG59O1xuZnVuY3Rpb24gcmVhZEltYWdlSGVhZGVyKGlucHV0LCBpbWFnZU9mZnNldCkge1xuICAgIGNvbnN0IGltYWdlTGVuZ3RoT2Zmc2V0ID0gaW1hZ2VPZmZzZXQgKyBFTlRSWV9MRU5HVEhfT0ZGU0VUO1xuICAgIHJldHVybiBbXG4gICAgICAgICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIGltYWdlT2Zmc2V0LCBpbWFnZUxlbmd0aE9mZnNldCksXG4gICAgICAgICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIGltYWdlTGVuZ3RoT2Zmc2V0KSxcbiAgICBdO1xufVxuZnVuY3Rpb24gZ2V0SW1hZ2VTaXplKHR5cGUpIHtcbiAgICBjb25zdCBzaXplID0gSUNPTl9UWVBFX1NJWkVbdHlwZV07XG4gICAgcmV0dXJuIHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSwgdHlwZSB9O1xufVxuZXhwb3J0cy5JQ05TID0ge1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDQpID09PSAnaWNucycsXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IGlucHV0TGVuZ3RoID0gaW5wdXQubGVuZ3RoO1xuICAgICAgICBjb25zdCBmaWxlTGVuZ3RoID0gKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgRklMRV9MRU5HVEhfT0ZGU0VUKTtcbiAgICAgICAgbGV0IGltYWdlT2Zmc2V0ID0gU0laRV9IRUFERVI7XG4gICAgICAgIGxldCBpbWFnZUhlYWRlciA9IHJlYWRJbWFnZUhlYWRlcihpbnB1dCwgaW1hZ2VPZmZzZXQpO1xuICAgICAgICBsZXQgaW1hZ2VTaXplID0gZ2V0SW1hZ2VTaXplKGltYWdlSGVhZGVyWzBdKTtcbiAgICAgICAgaW1hZ2VPZmZzZXQgKz0gaW1hZ2VIZWFkZXJbMV07XG4gICAgICAgIGlmIChpbWFnZU9mZnNldCA9PT0gZmlsZUxlbmd0aClcbiAgICAgICAgICAgIHJldHVybiBpbWFnZVNpemU7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAgICAgICAgIGhlaWdodDogaW1hZ2VTaXplLmhlaWdodCxcbiAgICAgICAgICAgIGltYWdlczogW2ltYWdlU2l6ZV0sXG4gICAgICAgICAgICB3aWR0aDogaW1hZ2VTaXplLndpZHRoLFxuICAgICAgICB9O1xuICAgICAgICB3aGlsZSAoaW1hZ2VPZmZzZXQgPCBmaWxlTGVuZ3RoICYmIGltYWdlT2Zmc2V0IDwgaW5wdXRMZW5ndGgpIHtcbiAgICAgICAgICAgIGltYWdlSGVhZGVyID0gcmVhZEltYWdlSGVhZGVyKGlucHV0LCBpbWFnZU9mZnNldCk7XG4gICAgICAgICAgICBpbWFnZVNpemUgPSBnZXRJbWFnZVNpemUoaW1hZ2VIZWFkZXJbMF0pO1xuICAgICAgICAgICAgaW1hZ2VPZmZzZXQgKz0gaW1hZ2VIZWFkZXJbMV07XG4gICAgICAgICAgICByZXN1bHQuaW1hZ2VzLnB1c2goaW1hZ2VTaXplKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5KMkMgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5leHBvcnRzLkoyQyA9IHtcbiAgICAvLyBUT0RPOiB0aGlzIGRvZXNuJ3Qgc2VlbSByaWdodC4gU0laIG1hcmtlciBkb2Vzbid0IGhhdmUgdG8gYmUgcmlnaHQgYWZ0ZXIgdGhlIFNPQ1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDApID09PSAweGZmNGZmZjUxLFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiAoe1xuICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDEyKSxcbiAgICAgICAgd2lkdGg6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDgpLFxuICAgIH0pLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuSlAyID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuZXhwb3J0cy5KUDIgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgYm94VHlwZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDQsIDgpO1xuICAgICAgICBpZiAoYm94VHlwZSAhPT0gJ2pQICAnKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBmdHlwQm94ID0gKDAsIHV0aWxzXzEuZmluZEJveCkoaW5wdXQsICdmdHlwJywgMCk7XG4gICAgICAgIGlmICghZnR5cEJveClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgYnJhbmQgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCBmdHlwQm94Lm9mZnNldCArIDgsIGZ0eXBCb3gub2Zmc2V0ICsgMTIpO1xuICAgICAgICByZXR1cm4gYnJhbmQgPT09ICdqcDIgJztcbiAgICB9LFxuICAgIGNhbGN1bGF0ZShpbnB1dCkge1xuICAgICAgICBjb25zdCBqcDJoQm94ID0gKDAsIHV0aWxzXzEuZmluZEJveCkoaW5wdXQsICdqcDJoJywgMCk7XG4gICAgICAgIGNvbnN0IGloZHJCb3ggPSBqcDJoQm94ICYmICgwLCB1dGlsc18xLmZpbmRCb3gpKGlucHV0LCAnaWhkcicsIGpwMmhCb3gub2Zmc2V0ICsgOCk7XG4gICAgICAgIGlmIChpaGRyQm94KSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgaWhkckJveC5vZmZzZXQgKyA4KSxcbiAgICAgICAgICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgaWhkckJveC5vZmZzZXQgKyAxMiksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1Vuc3VwcG9ydGVkIEpQRUcgMjAwMCBmb3JtYXQnKTtcbiAgICB9LFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbi8vIE5PVEU6IHdlIG9ubHkgc3VwcG9ydCBiYXNlbGluZSBhbmQgcHJvZ3Jlc3NpdmUgSlBHcyBoZXJlXG4vLyBkdWUgdG8gdGhlIHN0cnVjdHVyZSBvZiB0aGUgbG9hZGVyIGNsYXNzLCB3ZSBvbmx5IGdldCBhIGJ1ZmZlclxuLy8gd2l0aCBhIG1heGltdW0gc2l6ZSBvZiA0MDk2IGJ5dGVzLiBzbyBpZiB0aGUgU09GIG1hcmtlciBpcyBvdXRzaWRlXG4vLyBpZiB0aGlzIHJhbmdlIHdlIGNhbid0IGRldGVjdCB0aGUgZmlsZSBzaXplIGNvcnJlY3RseS5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuSlBHID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgRVhJRl9NQVJLRVIgPSAnNDU3ODY5NjYnO1xuY29uc3QgQVBQMV9EQVRBX1NJWkVfQllURVMgPSAyO1xuY29uc3QgRVhJRl9IRUFERVJfQllURVMgPSA2O1xuY29uc3QgVElGRl9CWVRFX0FMSUdOX0JZVEVTID0gMjtcbmNvbnN0IEJJR19FTkRJQU5fQllURV9BTElHTiA9ICc0ZDRkJztcbmNvbnN0IExJVFRMRV9FTkRJQU5fQllURV9BTElHTiA9ICc0OTQ5Jztcbi8vIEVhY2ggZW50cnkgaXMgZXhhY3RseSAxMiBieXRlc1xuY29uc3QgSURGX0VOVFJZX0JZVEVTID0gMTI7XG5jb25zdCBOVU1fRElSRUNUT1JZX0VOVFJJRVNfQllURVMgPSAyO1xuZnVuY3Rpb24gaXNFWElGKGlucHV0KSB7XG4gICAgcmV0dXJuICgwLCB1dGlsc18xLnRvSGV4U3RyaW5nKShpbnB1dCwgMiwgNikgPT09IEVYSUZfTUFSS0VSO1xufVxuZnVuY3Rpb24gZXh0cmFjdFNpemUoaW5wdXQsIGluZGV4KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiAoMCwgdXRpbHNfMS5yZWFkVUludDE2QkUpKGlucHV0LCBpbmRleCksXG4gICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkVUludDE2QkUpKGlucHV0LCBpbmRleCArIDIpLFxuICAgIH07XG59XG5mdW5jdGlvbiBleHRyYWN0T3JpZW50YXRpb24oZXhpZkJsb2NrLCBpc0JpZ0VuZGlhbikge1xuICAgIC8vIFRPRE86IGFzc2VydCB0aGF0IHRoaXMgY29udGFpbnMgMHgwMDJBXG4gICAgLy8gbGV0IFNUQVRJQ19NT1RPUk9MQV9USUZGX0hFQURFUl9CWVRFUyA9IDJcbiAgICAvLyBsZXQgVElGRl9JTUFHRV9GSUxFX0RJUkVDVE9SWV9CWVRFUyA9IDRcbiAgICAvLyBUT0RPOiBkZXJpdmUgZnJvbSBUSUZGX0lNQUdFX0ZJTEVfRElSRUNUT1JZX0JZVEVTXG4gICAgY29uc3QgaWRmT2Zmc2V0ID0gODtcbiAgICAvLyBJREYgb3NzZXQgd29ya3MgZnJvbSByaWdodCBhZnRlciB0aGUgaGVhZGVyIGJ5dGVzXG4gICAgLy8gKHNvIHRoZSBvZmZzZXQgaW5jbHVkZXMgdGhlIHRpZmYgYnl0ZSBhbGlnbilcbiAgICBjb25zdCBvZmZzZXQgPSBFWElGX0hFQURFUl9CWVRFUyArIGlkZk9mZnNldDtcbiAgICBjb25zdCBpZGZEaXJlY3RvcnlFbnRyaWVzID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKGV4aWZCbG9jaywgMTYsIG9mZnNldCwgaXNCaWdFbmRpYW4pO1xuICAgIGZvciAobGV0IGRpcmVjdG9yeUVudHJ5TnVtYmVyID0gMDsgZGlyZWN0b3J5RW50cnlOdW1iZXIgPCBpZGZEaXJlY3RvcnlFbnRyaWVzOyBkaXJlY3RvcnlFbnRyeU51bWJlcisrKSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gb2Zmc2V0ICtcbiAgICAgICAgICAgIE5VTV9ESVJFQ1RPUllfRU5UUklFU19CWVRFUyArXG4gICAgICAgICAgICBkaXJlY3RvcnlFbnRyeU51bWJlciAqIElERl9FTlRSWV9CWVRFUztcbiAgICAgICAgY29uc3QgZW5kID0gc3RhcnQgKyBJREZfRU5UUllfQllURVM7XG4gICAgICAgIC8vIFNraXAgb24gY29ycnVwdCBFWElGIGJsb2Nrc1xuICAgICAgICBpZiAoc3RhcnQgPiBleGlmQmxvY2subGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgYmxvY2sgPSBleGlmQmxvY2suc2xpY2Uoc3RhcnQsIGVuZCk7XG4gICAgICAgIGNvbnN0IHRhZ051bWJlciA9ICgwLCB1dGlsc18xLnJlYWRVSW50KShibG9jaywgMTYsIDAsIGlzQmlnRW5kaWFuKTtcbiAgICAgICAgLy8gMHgwMTEyIChkZWNpbWFsOiAyNzQpIGlzIHRoZSBgb3JpZW50YXRpb25gIHRhZyBJRFxuICAgICAgICBpZiAodGFnTnVtYmVyID09PSAyNzQpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGFGb3JtYXQgPSAoMCwgdXRpbHNfMS5yZWFkVUludCkoYmxvY2ssIDE2LCAyLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgICAgICBpZiAoZGF0YUZvcm1hdCAhPT0gMykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHVuc2luZ2VkIGludCBoYXMgMiBieXRlcyBwZXIgY29tcG9uZW50XG4gICAgICAgICAgICAvLyBpZiB0aGVyZSB3b3VsZCBtb3JlIHRoYW4gNCBieXRlcyBpbiB0b3RhbCBpdCdzIGEgcG9pbnRlclxuICAgICAgICAgICAgY29uc3QgbnVtYmVyT2ZDb21wb25lbnRzID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKGJsb2NrLCAzMiwgNCwgaXNCaWdFbmRpYW4pO1xuICAgICAgICAgICAgaWYgKG51bWJlck9mQ29tcG9uZW50cyAhPT0gMSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiAoMCwgdXRpbHNfMS5yZWFkVUludCkoYmxvY2ssIDE2LCA4LCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiB2YWxpZGF0ZUV4aWZCbG9jayhpbnB1dCwgaW5kZXgpIHtcbiAgICAvLyBTa2lwIEFQUDEgRGF0YSBTaXplXG4gICAgY29uc3QgZXhpZkJsb2NrID0gaW5wdXQuc2xpY2UoQVBQMV9EQVRBX1NJWkVfQllURVMsIGluZGV4KTtcbiAgICAvLyBDb25zaWRlciBieXRlIGFsaWdubWVudFxuICAgIGNvbnN0IGJ5dGVBbGlnbiA9ICgwLCB1dGlsc18xLnRvSGV4U3RyaW5nKShleGlmQmxvY2ssIEVYSUZfSEVBREVSX0JZVEVTLCBFWElGX0hFQURFUl9CWVRFUyArIFRJRkZfQllURV9BTElHTl9CWVRFUyk7XG4gICAgLy8gSWdub3JlIEVtcHR5IEVYSUYuIFZhbGlkYXRlIGJ5dGUgYWxpZ25tZW50XG4gICAgY29uc3QgaXNCaWdFbmRpYW4gPSBieXRlQWxpZ24gPT09IEJJR19FTkRJQU5fQllURV9BTElHTjtcbiAgICBjb25zdCBpc0xpdHRsZUVuZGlhbiA9IGJ5dGVBbGlnbiA9PT0gTElUVExFX0VORElBTl9CWVRFX0FMSUdOO1xuICAgIGlmIChpc0JpZ0VuZGlhbiB8fCBpc0xpdHRsZUVuZGlhbikge1xuICAgICAgICByZXR1cm4gZXh0cmFjdE9yaWVudGF0aW9uKGV4aWZCbG9jaywgaXNCaWdFbmRpYW4pO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHZhbGlkYXRlSW5wdXQoaW5wdXQsIGluZGV4KSB7XG4gICAgLy8gaW5kZXggc2hvdWxkIGJlIHdpdGhpbiBidWZmZXIgbGltaXRzXG4gICAgaWYgKGluZGV4ID4gaW5wdXQubGVuZ3RoKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0NvcnJ1cHQgSlBHLCBleGNlZWRlZCBidWZmZXIgbGltaXRzJyk7XG4gICAgfVxufVxuZXhwb3J0cy5KUEcgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gKDAsIHV0aWxzXzEudG9IZXhTdHJpbmcpKGlucHV0LCAwLCAyKSA9PT0gJ2ZmZDgnLFxuICAgIGNhbGN1bGF0ZShpbnB1dCkge1xuICAgICAgICAvLyBTa2lwIDQgY2hhcnMsIHRoZXkgYXJlIGZvciBzaWduYXR1cmVcbiAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZSg0KTtcbiAgICAgICAgbGV0IG9yaWVudGF0aW9uO1xuICAgICAgICBsZXQgbmV4dDtcbiAgICAgICAgd2hpbGUgKGlucHV0Lmxlbmd0aCkge1xuICAgICAgICAgICAgLy8gcmVhZCBsZW5ndGggb2YgdGhlIG5leHQgYmxvY2tcbiAgICAgICAgICAgIGNvbnN0IGkgPSAoMCwgdXRpbHNfMS5yZWFkVUludDE2QkUpKGlucHV0LCAwKTtcbiAgICAgICAgICAgIC8vIEV2ZXJ5IEpQRUcgYmxvY2sgbXVzdCBiZWdpbiB3aXRoIGEgMHhGRlxuICAgICAgICAgICAgaWYgKGlucHV0W2ldICE9PSAweGZmKSB7XG4gICAgICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZSgxKTtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpc0VYSUYoaW5wdXQpKSB7XG4gICAgICAgICAgICAgICAgb3JpZW50YXRpb24gPSB2YWxpZGF0ZUV4aWZCbG9jayhpbnB1dCwgaSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBlbnN1cmUgY29ycmVjdCBmb3JtYXRcbiAgICAgICAgICAgIHZhbGlkYXRlSW5wdXQoaW5wdXQsIGkpO1xuICAgICAgICAgICAgLy8gMHhGRkMwIGlzIGJhc2VsaW5lIHN0YW5kYXJkKFNPRilcbiAgICAgICAgICAgIC8vIDB4RkZDMSBpcyBiYXNlbGluZSBvcHRpbWl6ZWQoU09GKVxuICAgICAgICAgICAgLy8gMHhGRkMyIGlzIHByb2dyZXNzaXZlKFNPRjIpXG4gICAgICAgICAgICBuZXh0ID0gaW5wdXRbaSArIDFdO1xuICAgICAgICAgICAgaWYgKG5leHQgPT09IDB4YzAgfHwgbmV4dCA9PT0gMHhjMSB8fCBuZXh0ID09PSAweGMyKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2l6ZSA9IGV4dHJhY3RTaXplKGlucHV0LCBpICsgNSk7XG4gICAgICAgICAgICAgICAgLy8gVE9ETzogaXMgb3JpZW50YXRpb249MCBhIHZhbGlkIGFuc3dlciBoZXJlP1xuICAgICAgICAgICAgICAgIGlmICghb3JpZW50YXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNpemU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogc2l6ZS5oZWlnaHQsXG4gICAgICAgICAgICAgICAgICAgIG9yaWVudGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogc2l6ZS53aWR0aCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gbW92ZSB0byB0aGUgbmV4dCBibG9ja1xuICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShpICsgMik7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBKUEcsIG5vIHNpemUgZm91bmQnKTtcbiAgICB9LFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuQml0UmVhZGVyID0gdm9pZCAwO1xuLyoqIFRoaXMgY2xhc3MgaGVscHMgcmVhZCBVaW50OEFycmF5IGJpdC1ieS1iaXQgKi9cbmNsYXNzIEJpdFJlYWRlciB7XG4gICAgY29uc3RydWN0b3IoaW5wdXQsIGVuZGlhbm5lc3MpIHtcbiAgICAgICAgdGhpcy5pbnB1dCA9IGlucHV0O1xuICAgICAgICB0aGlzLmVuZGlhbm5lc3MgPSBlbmRpYW5uZXNzO1xuICAgICAgICAvLyBTa2lwIHRoZSBmaXJzdCAxNiBiaXRzICgyIGJ5dGVzKSBvZiBzaWduYXR1cmVcbiAgICAgICAgdGhpcy5ieXRlT2Zmc2V0ID0gMjtcbiAgICAgICAgdGhpcy5iaXRPZmZzZXQgPSAwO1xuICAgIH1cbiAgICAvKiogUmVhZHMgYSBzcGVjaWZpZWQgbnVtYmVyIG9mIGJpdHMsIGFuZCBtb3ZlIHRoZSBvZmZzZXQgKi9cbiAgICBnZXRCaXRzKGxlbmd0aCA9IDEpIHtcbiAgICAgICAgbGV0IHJlc3VsdCA9IDA7XG4gICAgICAgIGxldCBiaXRzUmVhZCA9IDA7XG4gICAgICAgIHdoaWxlIChiaXRzUmVhZCA8IGxlbmd0aCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuYnl0ZU9mZnNldCA+PSB0aGlzLmlucHV0Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignUmVhY2hlZCBlbmQgb2YgaW5wdXQnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRCeXRlID0gdGhpcy5pbnB1dFt0aGlzLmJ5dGVPZmZzZXRdO1xuICAgICAgICAgICAgY29uc3QgYml0c0xlZnQgPSA4IC0gdGhpcy5iaXRPZmZzZXQ7XG4gICAgICAgICAgICBjb25zdCBiaXRzVG9SZWFkID0gTWF0aC5taW4obGVuZ3RoIC0gYml0c1JlYWQsIGJpdHNMZWZ0KTtcbiAgICAgICAgICAgIGlmICh0aGlzLmVuZGlhbm5lc3MgPT09ICdsaXR0bGUtZW5kaWFuJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hc2sgPSAoMSA8PCBiaXRzVG9SZWFkKSAtIDE7XG4gICAgICAgICAgICAgICAgY29uc3QgYml0cyA9IChjdXJyZW50Qnl0ZSA+PiB0aGlzLmJpdE9mZnNldCkgJiBtYXNrO1xuICAgICAgICAgICAgICAgIHJlc3VsdCB8PSBiaXRzIDw8IGJpdHNSZWFkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFzayA9ICgoMSA8PCBiaXRzVG9SZWFkKSAtIDEpIDw8ICg4IC0gdGhpcy5iaXRPZmZzZXQgLSBiaXRzVG9SZWFkKTtcbiAgICAgICAgICAgICAgICBjb25zdCBiaXRzID0gKGN1cnJlbnRCeXRlICYgbWFzaykgPj4gKDggLSB0aGlzLmJpdE9mZnNldCAtIGJpdHNUb1JlYWQpO1xuICAgICAgICAgICAgICAgIHJlc3VsdCA9IChyZXN1bHQgPDwgYml0c1RvUmVhZCkgfCBiaXRzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYml0c1JlYWQgKz0gYml0c1RvUmVhZDtcbiAgICAgICAgICAgIHRoaXMuYml0T2Zmc2V0ICs9IGJpdHNUb1JlYWQ7XG4gICAgICAgICAgICBpZiAodGhpcy5iaXRPZmZzZXQgPT09IDgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmJ5dGVPZmZzZXQrKztcbiAgICAgICAgICAgICAgICB0aGlzLmJpdE9mZnNldCA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG5leHBvcnRzLkJpdFJlYWRlciA9IEJpdFJlYWRlcjtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuSlhMU3RyZWFtID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgYml0X3JlYWRlcl8xID0gcmVxdWlyZShcIi4uL3V0aWxzL2JpdC1yZWFkZXJcIik7XG5mdW5jdGlvbiBjYWxjdWxhdGVJbWFnZURpbWVuc2lvbihyZWFkZXIsIGlzU21hbGxJbWFnZSkge1xuICAgIGlmIChpc1NtYWxsSW1hZ2UpIHtcbiAgICAgICAgLy8gU21hbGwgaW1hZ2VzIGFyZSBtdWx0aXBsZXMgb2YgOCBwaXhlbHMsIHVwIHRvIDI1NiBwaXhlbHNcbiAgICAgICAgcmV0dXJuIDggKiAoMSArIHJlYWRlci5nZXRCaXRzKDUpKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIExhcmdlciBpbWFnZXMgdXNlIGEgdmFyaWFibGUgYml0LWxlbmd0aCBlbmNvZGluZ1xuICAgICAgICBjb25zdCBzaXplQ2xhc3MgPSByZWFkZXIuZ2V0Qml0cygyKTtcbiAgICAgICAgY29uc3QgZXh0cmFCaXRzID0gWzksIDEzLCAxOCwgMzBdW3NpemVDbGFzc107XG4gICAgICAgIHJldHVybiAxICsgcmVhZGVyLmdldEJpdHMoZXh0cmFCaXRzKTtcbiAgICB9XG59XG5mdW5jdGlvbiBjYWxjdWxhdGVJbWFnZVdpZHRoKHJlYWRlciwgaXNTbWFsbEltYWdlLCB3aWR0aE1vZGUsIGhlaWdodCkge1xuICAgIGlmIChpc1NtYWxsSW1hZ2UgJiYgd2lkdGhNb2RlID09PSAwKSB7XG4gICAgICAgIC8vIFNtYWxsIHNxdWFyZSBpbWFnZXNcbiAgICAgICAgcmV0dXJuIDggKiAoMSArIHJlYWRlci5nZXRCaXRzKDUpKTtcbiAgICB9XG4gICAgZWxzZSBpZiAod2lkdGhNb2RlID09PSAwKSB7XG4gICAgICAgIC8vIE5vbi1zbWFsbCBpbWFnZXMgd2l0aCBleHBsaWNpdGx5IGNvZGVkIHdpZHRoXG4gICAgICAgIHJldHVybiBjYWxjdWxhdGVJbWFnZURpbWVuc2lvbihyZWFkZXIsIGZhbHNlKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIEltYWdlcyB3aXRoIHdpZHRoIGRlcml2ZWQgZnJvbSBoZWlnaHQgYW5kIGFzcGVjdCByYXRpb1xuICAgICAgICBjb25zdCBhc3BlY3RSYXRpb3MgPSBbMSwgMS4yLCA0IC8gMywgMS41LCAxNiAvIDksIDUgLyA0LCAyXTtcbiAgICAgICAgcmV0dXJuIE1hdGguZmxvb3IoaGVpZ2h0ICogYXNwZWN0UmF0aW9zW3dpZHRoTW9kZSAtIDFdKTtcbiAgICB9XG59XG5leHBvcnRzLkpYTFN0cmVhbSA9IHtcbiAgICB2YWxpZGF0ZTogKGlucHV0KSA9PiB7XG4gICAgICAgIHJldHVybiAoMCwgdXRpbHNfMS50b0hleFN0cmluZykoaW5wdXQsIDAsIDIpID09PSAnZmYwYSc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IGJpdF9yZWFkZXJfMS5CaXRSZWFkZXIoaW5wdXQsICdsaXR0bGUtZW5kaWFuJyk7XG4gICAgICAgIGNvbnN0IGlzU21hbGxJbWFnZSA9IHJlYWRlci5nZXRCaXRzKDEpID09PSAxO1xuICAgICAgICBjb25zdCBoZWlnaHQgPSBjYWxjdWxhdGVJbWFnZURpbWVuc2lvbihyZWFkZXIsIGlzU21hbGxJbWFnZSk7XG4gICAgICAgIGNvbnN0IHdpZHRoTW9kZSA9IHJlYWRlci5nZXRCaXRzKDMpO1xuICAgICAgICBjb25zdCB3aWR0aCA9IGNhbGN1bGF0ZUltYWdlV2lkdGgocmVhZGVyLCBpc1NtYWxsSW1hZ2UsIHdpZHRoTW9kZSwgaGVpZ2h0KTtcbiAgICAgICAgcmV0dXJuIHsgd2lkdGgsIGhlaWdodCB9O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5KWEwgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5jb25zdCBqeGxfc3RyZWFtXzEgPSByZXF1aXJlKFwiLi9qeGwtc3RyZWFtXCIpO1xuLyoqIEV4dHJhY3RzIHRoZSBjb2Rlc3RyZWFtIGZyb20gYSBjb250YWluZXJpemVkIEpQRUcgWEwgaW1hZ2UgKi9cbmZ1bmN0aW9uIGV4dHJhY3RDb2Rlc3RyZWFtKGlucHV0KSB7XG4gICAgY29uc3QganhsY0JveCA9ICgwLCB1dGlsc18xLmZpbmRCb3gpKGlucHV0LCAnanhsYycsIDApO1xuICAgIGlmIChqeGxjQm94KSB7XG4gICAgICAgIHJldHVybiBpbnB1dC5zbGljZShqeGxjQm94Lm9mZnNldCArIDgsIGp4bGNCb3gub2Zmc2V0ICsganhsY0JveC5zaXplKTtcbiAgICB9XG4gICAgY29uc3QgcGFydGlhbFN0cmVhbXMgPSBleHRyYWN0UGFydGlhbFN0cmVhbXMoaW5wdXQpO1xuICAgIGlmIChwYXJ0aWFsU3RyZWFtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiBjb25jYXRlbmF0ZUNvZGVzdHJlYW1zKHBhcnRpYWxTdHJlYW1zKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbi8qKiBFeHRyYWN0cyBwYXJ0aWFsIGNvZGVzdHJlYW1zIGZyb20ganhscCBib3hlcyAqL1xuZnVuY3Rpb24gZXh0cmFjdFBhcnRpYWxTdHJlYW1zKGlucHV0KSB7XG4gICAgY29uc3QgcGFydGlhbFN0cmVhbXMgPSBbXTtcbiAgICBsZXQgb2Zmc2V0ID0gMDtcbiAgICB3aGlsZSAob2Zmc2V0IDwgaW5wdXQubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGp4bHBCb3ggPSAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2p4bHAnLCBvZmZzZXQpO1xuICAgICAgICBpZiAoIWp4bHBCb3gpXG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgcGFydGlhbFN0cmVhbXMucHVzaChpbnB1dC5zbGljZShqeGxwQm94Lm9mZnNldCArIDEyLCBqeGxwQm94Lm9mZnNldCArIGp4bHBCb3guc2l6ZSkpO1xuICAgICAgICBvZmZzZXQgPSBqeGxwQm94Lm9mZnNldCArIGp4bHBCb3guc2l6ZTtcbiAgICB9XG4gICAgcmV0dXJuIHBhcnRpYWxTdHJlYW1zO1xufVxuLyoqIENvbmNhdGVuYXRlcyBwYXJ0aWFsIGNvZGVzdHJlYW1zIGludG8gYSBzaW5nbGUgY29kZXN0cmVhbSAqL1xuZnVuY3Rpb24gY29uY2F0ZW5hdGVDb2Rlc3RyZWFtcyhwYXJ0aWFsQ29kZXN0cmVhbXMpIHtcbiAgICBjb25zdCB0b3RhbExlbmd0aCA9IHBhcnRpYWxDb2Rlc3RyZWFtcy5yZWR1Y2UoKGFjYywgY3VycikgPT4gYWNjICsgY3Vyci5sZW5ndGgsIDApO1xuICAgIGNvbnN0IGNvZGVzdHJlYW0gPSBuZXcgVWludDhBcnJheSh0b3RhbExlbmd0aCk7XG4gICAgbGV0IHBvc2l0aW9uID0gMDtcbiAgICBmb3IgKGNvbnN0IHBhcnRpYWwgb2YgcGFydGlhbENvZGVzdHJlYW1zKSB7XG4gICAgICAgIGNvZGVzdHJlYW0uc2V0KHBhcnRpYWwsIHBvc2l0aW9uKTtcbiAgICAgICAgcG9zaXRpb24gKz0gcGFydGlhbC5sZW5ndGg7XG4gICAgfVxuICAgIHJldHVybiBjb2Rlc3RyZWFtO1xufVxuZXhwb3J0cy5KWEwgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4ge1xuICAgICAgICBjb25zdCBib3hUeXBlID0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgNCwgOCk7XG4gICAgICAgIGlmIChib3hUeXBlICE9PSAnSlhMICcpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IGZ0eXBCb3ggPSAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2Z0eXAnLCAwKTtcbiAgICAgICAgaWYgKCFmdHlwQm94KVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBicmFuZCA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIGZ0eXBCb3gub2Zmc2V0ICsgOCwgZnR5cEJveC5vZmZzZXQgKyAxMik7XG4gICAgICAgIHJldHVybiBicmFuZCA9PT0gJ2p4bCAnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IGNvZGVzdHJlYW0gPSBleHRyYWN0Q29kZXN0cmVhbShpbnB1dCk7XG4gICAgICAgIGlmIChjb2Rlc3RyZWFtKVxuICAgICAgICAgICAgcmV0dXJuIGp4bF9zdHJlYW1fMS5KWExTdHJlYW0uY2FsY3VsYXRlKGNvZGVzdHJlYW0pO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNvZGVzdHJlYW0gZm91bmQgaW4gSlhMIGNvbnRhaW5lcicpO1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5LVFggPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5leHBvcnRzLktUWCA9IHtcbiAgICB2YWxpZGF0ZTogKGlucHV0KSA9PiB7XG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDEsIDcpO1xuICAgICAgICByZXR1cm4gWydLVFggMTEnLCAnS1RYIDIwJ10uaW5jbHVkZXMoc2lnbmF0dXJlKTtcbiAgICB9LFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBpbnB1dFs1XSA9PT0gMHgzMSA/ICdrdHgnIDogJ2t0eDInO1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB0eXBlID09PSAna3R4JyA/IDM2IDogMjA7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJMRSkoaW5wdXQsIG9mZnNldCArIDQpLFxuICAgICAgICAgICAgd2lkdGg6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJMRSkoaW5wdXQsIG9mZnNldCksXG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICB9O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5QTkcgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5jb25zdCBwbmdTaWduYXR1cmUgPSAnUE5HXFxyXFxuXFx4MWFcXG4nO1xuY29uc3QgcG5nSW1hZ2VIZWFkZXJDaHVua05hbWUgPSAnSUhEUic7XG4vLyBVc2VkIHRvIGRldGVjdCBcImZyaWVkXCIgcG5nJ3M6IGh0dHA6Ly93d3cuam9uZ3dhcmUuY29tL3BuZ2RlZnJ5Lmh0bWxcbmNvbnN0IHBuZ0ZyaWVkQ2h1bmtOYW1lID0gJ0NnQkknO1xuZXhwb3J0cy5QTkcgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgaWYgKHBuZ1NpZ25hdHVyZSA9PT0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMSwgOCkpIHtcbiAgICAgICAgICAgIGxldCBjaHVua05hbWUgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAxMiwgMTYpO1xuICAgICAgICAgICAgaWYgKGNodW5rTmFtZSA9PT0gcG5nRnJpZWRDaHVua05hbWUpIHtcbiAgICAgICAgICAgICAgICBjaHVua05hbWUgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAyOCwgMzIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNodW5rTmFtZSAhPT0gcG5nSW1hZ2VIZWFkZXJDaHVua05hbWUpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIFBORycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGlmICgoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAxMiwgMTYpID09PSBwbmdGcmllZENodW5rTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDM2KSxcbiAgICAgICAgICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMzIpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaGVpZ2h0OiAoMCwgdXRpbHNfMS5yZWFkVUludDMyQkUpKGlucHV0LCAyMCksXG4gICAgICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMTYpLFxuICAgICAgICB9O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5QTk0gPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5jb25zdCBQTk1UeXBlcyA9IHtcbiAgICBQMTogJ3BibS9hc2NpaScsXG4gICAgUDI6ICdwZ20vYXNjaWknLFxuICAgIFAzOiAncHBtL2FzY2lpJyxcbiAgICBQNDogJ3BibScsXG4gICAgUDU6ICdwZ20nLFxuICAgIFA2OiAncHBtJyxcbiAgICBQNzogJ3BhbScsXG4gICAgUEY6ICdwZm0nLFxufTtcbmNvbnN0IGhhbmRsZXJzID0ge1xuICAgIGRlZmF1bHQ6IChsaW5lcykgPT4ge1xuICAgICAgICBsZXQgZGltZW5zaW9ucyA9IFtdO1xuICAgICAgICB3aGlsZSAobGluZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgbGluZSA9IGxpbmVzLnNoaWZ0KCk7XG4gICAgICAgICAgICBpZiAobGluZVswXSA9PT0gJyMnKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaW1lbnNpb25zID0gbGluZS5zcGxpdCgnICcpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRpbWVuc2lvbnMubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogcGFyc2VJbnQoZGltZW5zaW9uc1sxXSwgMTApLFxuICAgICAgICAgICAgICAgIHdpZHRoOiBwYXJzZUludChkaW1lbnNpb25zWzBdLCAxMCksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBQTk0nKTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgcGFtOiAobGluZXMpID0+IHtcbiAgICAgICAgY29uc3Qgc2l6ZSA9IHt9O1xuICAgICAgICB3aGlsZSAobGluZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgbGluZSA9IGxpbmVzLnNoaWZ0KCk7XG4gICAgICAgICAgICBpZiAobGluZS5sZW5ndGggPiAxNiB8fCBsaW5lLmNoYXJDb2RlQXQoMCkgPiAxMjgpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IFtrZXksIHZhbHVlXSA9IGxpbmUuc3BsaXQoJyAnKTtcbiAgICAgICAgICAgIGlmIChrZXkgJiYgdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBzaXplW2tleS50b0xvd2VyQ2FzZSgpXSA9IHBhcnNlSW50KHZhbHVlLCAxMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2l6ZS5oZWlnaHQgJiYgc2l6ZS53aWR0aCkge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChzaXplLmhlaWdodCAmJiBzaXplLndpZHRoKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogc2l6ZS5oZWlnaHQsXG4gICAgICAgICAgICAgICAgd2lkdGg6IHNpemUud2lkdGgsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBQQU0nKTtcbiAgICAgICAgfVxuICAgIH0sXG59O1xuZXhwb3J0cy5QTk0gPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMCwgMikgaW4gUE5NVHlwZXMsXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDIpO1xuICAgICAgICBjb25zdCB0eXBlID0gUE5NVHlwZXNbc2lnbmF0dXJlXTtcbiAgICAgICAgLy8gVE9ETzogdGhpcyBwcm9iYWJseSBnZW5lcmF0ZXMgZ2FyYmFnZS4gbW92ZSB0byBhIHN0cmVhbSBiYXNlZCBwYXJzZXJcbiAgICAgICAgY29uc3QgbGluZXMgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAzKS5zcGxpdCgvW1xcclxcbl0rLyk7XG4gICAgICAgIGNvbnN0IGhhbmRsZXIgPSBoYW5kbGVyc1t0eXBlXSB8fCBoYW5kbGVycy5kZWZhdWx0O1xuICAgICAgICByZXR1cm4gaGFuZGxlcihsaW5lcyk7XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLlBTRCA9IHZvaWQgMDtcbmNvbnN0IHV0aWxzXzEgPSByZXF1aXJlKFwiLi91dGlsc1wiKTtcbmV4cG9ydHMuUFNEID0ge1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDQpID09PSAnOEJQUycsXG4gICAgY2FsY3VsYXRlOiAoaW5wdXQpID0+ICh7XG4gICAgICAgIGhlaWdodDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMTQpLFxuICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMTgpLFxuICAgIH0pLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuU1ZHID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3Qgc3ZnUmVnID0gLzxzdmdcXHMoW14+XCInXXxcIlteXCJdKlwifCdbXiddKicpKj4vO1xuY29uc3QgZXh0cmFjdG9yUmVnRXhwcyA9IHtcbiAgICBoZWlnaHQ6IC9cXHNoZWlnaHQ9KFsnXCJdKShbXiVdKz8pXFwxLyxcbiAgICByb290OiBzdmdSZWcsXG4gICAgdmlld2JveDogL1xcc3ZpZXdCb3g9KFsnXCJdKSguKz8pXFwxL2ksXG4gICAgd2lkdGg6IC9cXHN3aWR0aD0oWydcIl0pKFteJV0rPylcXDEvLFxufTtcbmNvbnN0IElOQ0hfQ00gPSAyLjU0O1xuY29uc3QgdW5pdHMgPSB7XG4gICAgaW46IDk2LFxuICAgIGNtOiA5NiAvIElOQ0hfQ00sXG4gICAgZW06IDE2LFxuICAgIGV4OiA4LFxuICAgIG06ICg5NiAvIElOQ0hfQ00pICogMTAwLFxuICAgIG1tOiA5NiAvIElOQ0hfQ00gLyAxMCxcbiAgICBwYzogOTYgLyA3MiAvIDEyLFxuICAgIHB0OiA5NiAvIDcyLFxuICAgIHB4OiAxLFxufTtcbmNvbnN0IHVuaXRzUmVnID0gbmV3IFJlZ0V4cChgXihbMC05Ll0rKD86ZVxcXFxkKyk/KSgke09iamVjdC5rZXlzKHVuaXRzKS5qb2luKCd8Jyl9KT8kYCk7XG5mdW5jdGlvbiBwYXJzZUxlbmd0aChsZW4pIHtcbiAgICBjb25zdCBtID0gdW5pdHNSZWcuZXhlYyhsZW4pO1xuICAgIGlmICghbSkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZChOdW1iZXIobVsxXSkgKiAodW5pdHNbbVsyXV0gfHwgMSkpO1xufVxuZnVuY3Rpb24gcGFyc2VWaWV3Ym94KHZpZXdib3gpIHtcbiAgICBjb25zdCBib3VuZHMgPSB2aWV3Ym94LnNwbGl0KCcgJyk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiBwYXJzZUxlbmd0aChib3VuZHNbM10pLFxuICAgICAgICB3aWR0aDogcGFyc2VMZW5ndGgoYm91bmRzWzJdKSxcbiAgICB9O1xufVxuZnVuY3Rpb24gcGFyc2VBdHRyaWJ1dGVzKHJvb3QpIHtcbiAgICBjb25zdCB3aWR0aCA9IHJvb3QubWF0Y2goZXh0cmFjdG9yUmVnRXhwcy53aWR0aCk7XG4gICAgY29uc3QgaGVpZ2h0ID0gcm9vdC5tYXRjaChleHRyYWN0b3JSZWdFeHBzLmhlaWdodCk7XG4gICAgY29uc3Qgdmlld2JveCA9IHJvb3QubWF0Y2goZXh0cmFjdG9yUmVnRXhwcy52aWV3Ym94KTtcbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IGhlaWdodCAmJiBwYXJzZUxlbmd0aChoZWlnaHRbMl0pLFxuICAgICAgICB2aWV3Ym94OiB2aWV3Ym94ICYmIHBhcnNlVmlld2JveCh2aWV3Ym94WzJdKSxcbiAgICAgICAgd2lkdGg6IHdpZHRoICYmIHBhcnNlTGVuZ3RoKHdpZHRoWzJdKSxcbiAgICB9O1xufVxuZnVuY3Rpb24gY2FsY3VsYXRlQnlEaW1lbnNpb25zKGF0dHJzKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiBhdHRycy5oZWlnaHQsXG4gICAgICAgIHdpZHRoOiBhdHRycy53aWR0aCxcbiAgICB9O1xufVxuZnVuY3Rpb24gY2FsY3VsYXRlQnlWaWV3Ym94KGF0dHJzLCB2aWV3Ym94KSB7XG4gICAgY29uc3QgcmF0aW8gPSB2aWV3Ym94LndpZHRoIC8gdmlld2JveC5oZWlnaHQ7XG4gICAgaWYgKGF0dHJzLndpZHRoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWlnaHQ6IE1hdGguZmxvb3IoYXR0cnMud2lkdGggLyByYXRpbyksXG4gICAgICAgICAgICB3aWR0aDogYXR0cnMud2lkdGgsXG4gICAgICAgIH07XG4gICAgfVxuICAgIGlmIChhdHRycy5oZWlnaHQpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlaWdodDogYXR0cnMuaGVpZ2h0LFxuICAgICAgICAgICAgd2lkdGg6IE1hdGguZmxvb3IoYXR0cnMuaGVpZ2h0ICogcmF0aW8pLFxuICAgICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IHZpZXdib3guaGVpZ2h0LFxuICAgICAgICB3aWR0aDogdmlld2JveC53aWR0aCxcbiAgICB9O1xufVxuZXhwb3J0cy5TVkcgPSB7XG4gICAgLy8gU2NhbiBvbmx5IHRoZSBmaXJzdCBraWxvLWJ5dGUgdG8gc3BlZWQgdXAgdGhlIGNoZWNrIG9uIGxhcmdlciBmaWxlc1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+IHN2Z1JlZy50ZXN0KCgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDEwMDApKSxcbiAgICBjYWxjdWxhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQpLm1hdGNoKGV4dHJhY3RvclJlZ0V4cHMucm9vdCk7XG4gICAgICAgIGlmIChyb290KSB7XG4gICAgICAgICAgICBjb25zdCBhdHRycyA9IHBhcnNlQXR0cmlidXRlcyhyb290WzBdKTtcbiAgICAgICAgICAgIGlmIChhdHRycy53aWR0aCAmJiBhdHRycy5oZWlnaHQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlQnlEaW1lbnNpb25zKGF0dHJzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChhdHRycy52aWV3Ym94KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGN1bGF0ZUJ5Vmlld2JveChhdHRycywgYXR0cnMudmlld2JveCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBTVkcnKTtcbiAgICB9LFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuVEdBID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuZXhwb3J0cy5UR0EgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgcmV0dXJuICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDApID09PSAwICYmICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDQpID09PSAwO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDE0KSxcbiAgICAgICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkVUludDE2TEUpKGlucHV0LCAxMiksXG4gICAgICAgIH07XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLlRJRkYgPSB2b2lkIDA7XG4vLyBiYXNlZCBvbiBodHRwOi8vd3d3LmNvbXBpeC5jb20vZmlsZWZvcm1hdHRpZi5odG1cbi8vIFRPLURPOiBzdXBwb3J0IGJpZy1lbmRpYW4gYXMgd2VsbFxuY29uc3QgZnMgPSByZXF1aXJlKFwiZnNcIik7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG4vLyBSZWFkIElGRCAoaW1hZ2UtZmlsZS1kaXJlY3RvcnkpIGludG8gYSBidWZmZXJcbmZ1bmN0aW9uIHJlYWRJRkQoaW5wdXQsIGZpbGVwYXRoLCBpc0JpZ0VuZGlhbikge1xuICAgIGNvbnN0IGlmZE9mZnNldCA9ICgwLCB1dGlsc18xLnJlYWRVSW50KShpbnB1dCwgMzIsIDQsIGlzQmlnRW5kaWFuKTtcbiAgICAvLyByZWFkIG9ubHkgdGlsbCB0aGUgZW5kIG9mIHRoZSBmaWxlXG4gICAgbGV0IGJ1ZmZlclNpemUgPSAxMDI0O1xuICAgIGNvbnN0IGZpbGVTaXplID0gZnMuc3RhdFN5bmMoZmlsZXBhdGgpLnNpemU7XG4gICAgaWYgKGlmZE9mZnNldCArIGJ1ZmZlclNpemUgPiBmaWxlU2l6ZSkge1xuICAgICAgICBidWZmZXJTaXplID0gZmlsZVNpemUgLSBpZmRPZmZzZXQgLSAxMDtcbiAgICB9XG4gICAgLy8gcG9wdWxhdGUgdGhlIGJ1ZmZlclxuICAgIGNvbnN0IGVuZEJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KGJ1ZmZlclNpemUpO1xuICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBmcy5vcGVuU3luYyhmaWxlcGF0aCwgJ3InKTtcbiAgICBmcy5yZWFkU3luYyhkZXNjcmlwdG9yLCBlbmRCdWZmZXIsIDAsIGJ1ZmZlclNpemUsIGlmZE9mZnNldCk7XG4gICAgZnMuY2xvc2VTeW5jKGRlc2NyaXB0b3IpO1xuICAgIHJldHVybiBlbmRCdWZmZXIuc2xpY2UoMik7XG59XG4vLyBUSUZGIHZhbHVlcyBzZWVtIHRvIGJlIG1lc3NlZCB1cCBvbiBCaWctRW5kaWFuLCB0aGlzIGhlbHBzXG5mdW5jdGlvbiByZWFkVmFsdWUoaW5wdXQsIGlzQmlnRW5kaWFuKSB7XG4gICAgY29uc3QgbG93ID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKGlucHV0LCAxNiwgOCwgaXNCaWdFbmRpYW4pO1xuICAgIGNvbnN0IGhpZ2ggPSAoMCwgdXRpbHNfMS5yZWFkVUludCkoaW5wdXQsIDE2LCAxMCwgaXNCaWdFbmRpYW4pO1xuICAgIHJldHVybiAoaGlnaCA8PCAxNikgKyBsb3c7XG59XG4vLyBtb3ZlIHRvIHRoZSBuZXh0IHRhZ1xuZnVuY3Rpb24gbmV4dFRhZyhpbnB1dCkge1xuICAgIGlmIChpbnB1dC5sZW5ndGggPiAyNCkge1xuICAgICAgICByZXR1cm4gaW5wdXQuc2xpY2UoMTIpO1xuICAgIH1cbn1cbi8vIEV4dHJhY3QgSUZEIHRhZ3MgZnJvbSBUSUZGIG1ldGFkYXRhXG5mdW5jdGlvbiBleHRyYWN0VGFncyhpbnB1dCwgaXNCaWdFbmRpYW4pIHtcbiAgICBjb25zdCB0YWdzID0ge307XG4gICAgbGV0IHRlbXAgPSBpbnB1dDtcbiAgICB3aGlsZSAodGVtcCAmJiB0ZW1wLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBjb2RlID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKHRlbXAsIDE2LCAwLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIGNvbnN0IHR5cGUgPSAoMCwgdXRpbHNfMS5yZWFkVUludCkodGVtcCwgMTYsIDIsIGlzQmlnRW5kaWFuKTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKHRlbXAsIDMyLCA0LCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIC8vIDAgbWVhbnMgZW5kIG9mIElGRFxuICAgICAgICBpZiAoY29kZSA9PT0gMCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyAyNTYgaXMgd2lkdGgsIDI1NyBpcyBoZWlnaHRcbiAgICAgICAgICAgIC8vIGlmIChjb2RlID09PSAyNTYgfHwgY29kZSA9PT0gMjU3KSB7XG4gICAgICAgICAgICBpZiAobGVuZ3RoID09PSAxICYmICh0eXBlID09PSAzIHx8IHR5cGUgPT09IDQpKSB7XG4gICAgICAgICAgICAgICAgdGFnc1tjb2RlXSA9IHJlYWRWYWx1ZSh0ZW1wLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBtb3ZlIHRvIHRoZSBuZXh0IHRhZ1xuICAgICAgICAgICAgdGVtcCA9IG5leHRUYWcodGVtcCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRhZ3M7XG59XG4vLyBUZXN0IGlmIHRoZSBUSUZGIGlzIEJpZyBFbmRpYW4gb3IgTGl0dGxlIEVuZGlhblxuZnVuY3Rpb24gZGV0ZXJtaW5lRW5kaWFubmVzcyhpbnB1dCkge1xuICAgIGNvbnN0IHNpZ25hdHVyZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDIpO1xuICAgIGlmICgnSUknID09PSBzaWduYXR1cmUpIHtcbiAgICAgICAgcmV0dXJuICdMRSc7XG4gICAgfVxuICAgIGVsc2UgaWYgKCdNTScgPT09IHNpZ25hdHVyZSkge1xuICAgICAgICByZXR1cm4gJ0JFJztcbiAgICB9XG59XG5jb25zdCBzaWduYXR1cmVzID0gW1xuICAgIC8vICc0OTIwNDknLCAvLyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZFxuICAgICc0OTQ5MmEwMCcsIC8vIExpdHRsZSBlbmRpYW5cbiAgICAnNGQ0ZDAwMmEnLCAvLyBCaWcgRW5kaWFuXG4gICAgLy8gJzRkNGQwMDJhJywgLy8gQmlnVElGRiA+IDRHQi4gY3VycmVudGx5IG5vdCBzdXBwb3J0ZWRcbl07XG5leHBvcnRzLlRJRkYgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gc2lnbmF0dXJlcy5pbmNsdWRlcygoMCwgdXRpbHNfMS50b0hleFN0cmluZykoaW5wdXQsIDAsIDQpKSxcbiAgICBjYWxjdWxhdGUoaW5wdXQsIGZpbGVwYXRoKSB7XG4gICAgICAgIGlmICghZmlsZXBhdGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJUaWZmIGRvZXNuJ3Qgc3VwcG9ydCBidWZmZXJcIik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gRGV0ZXJtaW5lIEJFL0xFXG4gICAgICAgIGNvbnN0IGlzQmlnRW5kaWFuID0gZGV0ZXJtaW5lRW5kaWFubmVzcyhpbnB1dCkgPT09ICdCRSc7XG4gICAgICAgIC8vIHJlYWQgdGhlIElGRFxuICAgICAgICBjb25zdCBpZmRCdWZmZXIgPSByZWFkSUZEKGlucHV0LCBmaWxlcGF0aCwgaXNCaWdFbmRpYW4pO1xuICAgICAgICAvLyBleHRyYWN0IHRoZSB0YWdzIGZyb20gdGhlIElGRFxuICAgICAgICBjb25zdCB0YWdzID0gZXh0cmFjdFRhZ3MoaWZkQnVmZmVyLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gdGFnc1syNTZdO1xuICAgICAgICBjb25zdCBoZWlnaHQgPSB0YWdzWzI1N107XG4gICAgICAgIGlmICghd2lkdGggfHwgIWhlaWdodCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBUaWZmLiBNaXNzaW5nIHRhZ3MnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBoZWlnaHQsIHdpZHRoIH07XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLldFQlAgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5mdW5jdGlvbiBjYWxjdWxhdGVFeHRlbmRlZChpbnB1dCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogMSArICgwLCB1dGlsc18xLnJlYWRVSW50MjRMRSkoaW5wdXQsIDcpLFxuICAgICAgICB3aWR0aDogMSArICgwLCB1dGlsc18xLnJlYWRVSW50MjRMRSkoaW5wdXQsIDQpLFxuICAgIH07XG59XG5mdW5jdGlvbiBjYWxjdWxhdGVMb3NzbGVzcyhpbnB1dCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogMSArXG4gICAgICAgICAgICAoKChpbnB1dFs0XSAmIDB4ZikgPDwgMTApIHwgKGlucHV0WzNdIDw8IDIpIHwgKChpbnB1dFsyXSAmIDB4YzApID4+IDYpKSxcbiAgICAgICAgd2lkdGg6IDEgKyAoKChpbnB1dFsyXSAmIDB4M2YpIDw8IDgpIHwgaW5wdXRbMV0pLFxuICAgIH07XG59XG5mdW5jdGlvbiBjYWxjdWxhdGVMb3NzeShpbnB1dCkge1xuICAgIC8vIGAmIDB4M2ZmZmAgcmV0dXJucyB0aGUgbGFzdCAxNCBiaXRzXG4gICAgLy8gVE8tRE86IGluY2x1ZGUgd2VicCBzY2FsaW5nIGluIHRoZSBjYWxjdWxhdGlvbnNcbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRJbnQxNkxFKShpbnB1dCwgOCkgJiAweDNmZmYsXG4gICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkSW50MTZMRSkoaW5wdXQsIDYpICYgMHgzZmZmLFxuICAgIH07XG59XG5leHBvcnRzLldFQlAgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgcmlmZkhlYWRlciA9ICdSSUZGJyA9PT0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMCwgNCk7XG4gICAgICAgIGNvbnN0IHdlYnBIZWFkZXIgPSAnV0VCUCcgPT09ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDgsIDEyKTtcbiAgICAgICAgY29uc3QgdnA4SGVhZGVyID0gJ1ZQOCcgPT09ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDEyLCAxNSk7XG4gICAgICAgIHJldHVybiByaWZmSGVhZGVyICYmIHdlYnBIZWFkZXIgJiYgdnA4SGVhZGVyO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IGNodW5rSGVhZGVyID0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMTIsIDE2KTtcbiAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZSgyMCwgMzApO1xuICAgICAgICAvLyBFeHRlbmRlZCB3ZWJwIHN0cmVhbSBzaWduYXR1cmVcbiAgICAgICAgaWYgKGNodW5rSGVhZGVyID09PSAnVlA4WCcpIHtcbiAgICAgICAgICAgIGNvbnN0IGV4dGVuZGVkSGVhZGVyID0gaW5wdXRbMF07XG4gICAgICAgICAgICBjb25zdCB2YWxpZFN0YXJ0ID0gKGV4dGVuZGVkSGVhZGVyICYgMHhjMCkgPT09IDA7XG4gICAgICAgICAgICBjb25zdCB2YWxpZEVuZCA9IChleHRlbmRlZEhlYWRlciAmIDB4MDEpID09PSAwO1xuICAgICAgICAgICAgaWYgKHZhbGlkU3RhcnQgJiYgdmFsaWRFbmQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlRXh0ZW5kZWQoaW5wdXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gVE9ETzogYnJlYWtpbmcgY2hhbmdlXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBXZWJQJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gTG9zc2xlc3Mgd2VicCBzdHJlYW0gc2lnbmF0dXJlXG4gICAgICAgIGlmIChjaHVua0hlYWRlciA9PT0gJ1ZQOCAnICYmIGlucHV0WzBdICE9PSAweDJmKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlTG9zc3koaW5wdXQpO1xuICAgICAgICB9XG4gICAgICAgIC8vIExvc3N5IHdlYnAgc3RyZWFtIHNpZ25hdHVyZVxuICAgICAgICBjb25zdCBzaWduYXR1cmUgPSAoMCwgdXRpbHNfMS50b0hleFN0cmluZykoaW5wdXQsIDMsIDYpO1xuICAgICAgICBpZiAoY2h1bmtIZWFkZXIgPT09ICdWUDhMJyAmJiBzaWduYXR1cmUgIT09ICc5ZDAxMmEnKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlTG9zc2xlc3MoaW5wdXQpO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgV2ViUCcpO1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy50eXBlSGFuZGxlcnMgPSB2b2lkIDA7XG4vLyBsb2FkIGFsbCBhdmFpbGFibGUgaGFuZGxlcnMgZXhwbGljaXRseSBmb3IgYnJvd3NlcmlmeSBzdXBwb3J0XG5jb25zdCBibXBfMSA9IHJlcXVpcmUoXCIuL2JtcFwiKTtcbmNvbnN0IGN1cl8xID0gcmVxdWlyZShcIi4vY3VyXCIpO1xuY29uc3QgZGRzXzEgPSByZXF1aXJlKFwiLi9kZHNcIik7XG5jb25zdCBnaWZfMSA9IHJlcXVpcmUoXCIuL2dpZlwiKTtcbmNvbnN0IGhlaWZfMSA9IHJlcXVpcmUoXCIuL2hlaWZcIik7XG5jb25zdCBpY25zXzEgPSByZXF1aXJlKFwiLi9pY25zXCIpO1xuY29uc3QgaWNvXzEgPSByZXF1aXJlKFwiLi9pY29cIik7XG5jb25zdCBqMmNfMSA9IHJlcXVpcmUoXCIuL2oyY1wiKTtcbmNvbnN0IGpwMl8xID0gcmVxdWlyZShcIi4vanAyXCIpO1xuY29uc3QganBnXzEgPSByZXF1aXJlKFwiLi9qcGdcIik7XG5jb25zdCBqeGxfMSA9IHJlcXVpcmUoXCIuL2p4bFwiKTtcbmNvbnN0IGp4bF9zdHJlYW1fMSA9IHJlcXVpcmUoXCIuL2p4bC1zdHJlYW1cIik7XG5jb25zdCBrdHhfMSA9IHJlcXVpcmUoXCIuL2t0eFwiKTtcbmNvbnN0IHBuZ18xID0gcmVxdWlyZShcIi4vcG5nXCIpO1xuY29uc3QgcG5tXzEgPSByZXF1aXJlKFwiLi9wbm1cIik7XG5jb25zdCBwc2RfMSA9IHJlcXVpcmUoXCIuL3BzZFwiKTtcbmNvbnN0IHN2Z18xID0gcmVxdWlyZShcIi4vc3ZnXCIpO1xuY29uc3QgdGdhXzEgPSByZXF1aXJlKFwiLi90Z2FcIik7XG5jb25zdCB0aWZmXzEgPSByZXF1aXJlKFwiLi90aWZmXCIpO1xuY29uc3Qgd2VicF8xID0gcmVxdWlyZShcIi4vd2VicFwiKTtcbmV4cG9ydHMudHlwZUhhbmRsZXJzID0ge1xuICAgIGJtcDogYm1wXzEuQk1QLFxuICAgIGN1cjogY3VyXzEuQ1VSLFxuICAgIGRkczogZGRzXzEuRERTLFxuICAgIGdpZjogZ2lmXzEuR0lGLFxuICAgIGhlaWY6IGhlaWZfMS5IRUlGLFxuICAgIGljbnM6IGljbnNfMS5JQ05TLFxuICAgIGljbzogaWNvXzEuSUNPLFxuICAgIGoyYzogajJjXzEuSjJDLFxuICAgIGpwMjoganAyXzEuSlAyLFxuICAgIGpwZzoganBnXzEuSlBHLFxuICAgIGp4bDoganhsXzEuSlhMLFxuICAgICdqeGwtc3RyZWFtJzoganhsX3N0cmVhbV8xLkpYTFN0cmVhbSxcbiAgICBrdHg6IGt0eF8xLktUWCxcbiAgICBwbmc6IHBuZ18xLlBORyxcbiAgICBwbm06IHBubV8xLlBOTSxcbiAgICBwc2Q6IHBzZF8xLlBTRCxcbiAgICBzdmc6IHN2Z18xLlNWRyxcbiAgICB0Z2E6IHRnYV8xLlRHQSxcbiAgICB0aWZmOiB0aWZmXzEuVElGRixcbiAgICB3ZWJwOiB3ZWJwXzEuV0VCUCxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmRldGVjdG9yID0gdm9pZCAwO1xuY29uc3QgaW5kZXhfMSA9IHJlcXVpcmUoXCIuL3R5cGVzL2luZGV4XCIpO1xuY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGluZGV4XzEudHlwZUhhbmRsZXJzKTtcbi8vIFRoaXMgbWFwIGhlbHBzIGF2b2lkIHZhbGlkYXRpbmcgZm9yIGV2ZXJ5IHNpbmdsZSBpbWFnZSB0eXBlXG5jb25zdCBmaXJzdEJ5dGVzID0ge1xuICAgIDB4Mzg6ICdwc2QnLFxuICAgIDB4NDI6ICdibXAnLFxuICAgIDB4NDQ6ICdkZHMnLFxuICAgIDB4NDc6ICdnaWYnLFxuICAgIDB4NDk6ICd0aWZmJyxcbiAgICAweDRkOiAndGlmZicsXG4gICAgMHg1MjogJ3dlYnAnLFxuICAgIDB4Njk6ICdpY25zJyxcbiAgICAweDg5OiAncG5nJyxcbiAgICAweGZmOiAnanBnJyxcbn07XG5mdW5jdGlvbiBkZXRlY3RvcihpbnB1dCkge1xuICAgIGNvbnN0IGJ5dGUgPSBpbnB1dFswXTtcbiAgICBpZiAoYnl0ZSBpbiBmaXJzdEJ5dGVzKSB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBmaXJzdEJ5dGVzW2J5dGVdO1xuICAgICAgICBpZiAodHlwZSAmJiBpbmRleF8xLnR5cGVIYW5kbGVyc1t0eXBlXS52YWxpZGF0ZShpbnB1dCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0eXBlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGZpbmRlciA9IChrZXkpID0+IGluZGV4XzEudHlwZUhhbmRsZXJzW2tleV0udmFsaWRhdGUoaW5wdXQpO1xuICAgIHJldHVybiBrZXlzLmZpbmQoZmluZGVyKTtcbn1cbmV4cG9ydHMuZGV0ZWN0b3IgPSBkZXRlY3RvcjtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMudHlwZXMgPSBleHBvcnRzLnNldENvbmN1cnJlbmN5ID0gZXhwb3J0cy5kaXNhYmxlVHlwZXMgPSBleHBvcnRzLmRpc2FibGVGUyA9IGV4cG9ydHMuaW1hZ2VTaXplID0gdm9pZCAwO1xuY29uc3QgZnMgPSByZXF1aXJlKFwiZnNcIik7XG5jb25zdCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5jb25zdCBxdWV1ZV8xID0gcmVxdWlyZShcInF1ZXVlXCIpO1xuY29uc3QgaW5kZXhfMSA9IHJlcXVpcmUoXCIuL3R5cGVzL2luZGV4XCIpO1xuY29uc3QgZGV0ZWN0b3JfMSA9IHJlcXVpcmUoXCIuL2RldGVjdG9yXCIpO1xuLy8gTWF4aW11bSBpbnB1dCBzaXplLCB3aXRoIGEgZGVmYXVsdCBvZiA1MTIga2lsb2J5dGVzLlxuLy8gVE8tRE86IG1ha2UgdGhpcyBhZGFwdGl2ZSBiYXNlZCBvbiB0aGUgaW5pdGlhbCBzaWduYXR1cmUgb2YgdGhlIGltYWdlXG5jb25zdCBNYXhJbnB1dFNpemUgPSA1MTIgKiAxMDI0O1xuLy8gVGhpcyBxdWV1ZSBpcyBmb3IgYXN5bmMgYGZzYCBvcGVyYXRpb25zLCB0byBhdm9pZCByZWFjaGluZyBmaWxlLWRlc2NyaXB0b3IgbGltaXRzXG5jb25zdCBxdWV1ZSA9IG5ldyBxdWV1ZV8xLmRlZmF1bHQoeyBjb25jdXJyZW5jeTogMTAwLCBhdXRvc3RhcnQ6IHRydWUgfSk7XG5jb25zdCBnbG9iYWxPcHRpb25zID0ge1xuICAgIGRpc2FibGVkRlM6IGZhbHNlLFxuICAgIGRpc2FibGVkVHlwZXM6IFtdLFxufTtcbi8qKlxuICogUmV0dXJuIHNpemUgaW5mb3JtYXRpb24gYmFzZWQgb24gYW4gVWludDhBcnJheVxuICpcbiAqIEBwYXJhbSB7VWludDhBcnJheX0gaW5wdXRcbiAqIEBwYXJhbSB7U3RyaW5nfSBmaWxlcGF0aFxuICogQHJldHVybnMge09iamVjdH1cbiAqL1xuZnVuY3Rpb24gbG9va3VwKGlucHV0LCBmaWxlcGF0aCkge1xuICAgIC8vIGRldGVjdCB0aGUgZmlsZSB0eXBlLi4gZG9uJ3QgcmVseSBvbiB0aGUgZXh0ZW5zaW9uXG4gICAgY29uc3QgdHlwZSA9ICgwLCBkZXRlY3Rvcl8xLmRldGVjdG9yKShpbnB1dCk7XG4gICAgaWYgKHR5cGVvZiB0eXBlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBpZiAoZ2xvYmFsT3B0aW9ucy5kaXNhYmxlZFR5cGVzLmluZGV4T2YodHlwZSkgPiAtMSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignZGlzYWJsZWQgZmlsZSB0eXBlOiAnICsgdHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZmluZCBhbiBhcHByb3ByaWF0ZSBoYW5kbGVyIGZvciB0aGlzIGZpbGUgdHlwZVxuICAgICAgICBpZiAodHlwZSBpbiBpbmRleF8xLnR5cGVIYW5kbGVycykge1xuICAgICAgICAgICAgY29uc3Qgc2l6ZSA9IGluZGV4XzEudHlwZUhhbmRsZXJzW3R5cGVdLmNhbGN1bGF0ZShpbnB1dCwgZmlsZXBhdGgpO1xuICAgICAgICAgICAgaWYgKHNpemUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHNpemUudHlwZSA9IHNpemUudHlwZSA/PyB0eXBlO1xuICAgICAgICAgICAgICAgIHJldHVybiBzaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIHRocm93IHVwLCBpZiB3ZSBkb24ndCB1bmRlcnN0YW5kIHRoZSBmaWxlXG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcigndW5zdXBwb3J0ZWQgZmlsZSB0eXBlOiAnICsgdHlwZSArICcgKGZpbGU6ICcgKyBmaWxlcGF0aCArICcpJyk7XG59XG4vKipcbiAqIFJlYWRzIGEgZmlsZSBpbnRvIGFuIFVpbnQ4QXJyYXkuXG4gKiBAcGFyYW0ge1N0cmluZ30gZmlsZXBhdGhcbiAqIEByZXR1cm5zIHtQcm9taXNlPFVpbnQ4QXJyYXk+fVxuICovXG5hc3luYyBmdW5jdGlvbiByZWFkRmlsZUFzeW5jKGZpbGVwYXRoKSB7XG4gICAgY29uc3QgaGFuZGxlID0gYXdhaXQgZnMucHJvbWlzZXMub3BlbihmaWxlcGF0aCwgJ3InKTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCB7IHNpemUgfSA9IGF3YWl0IGhhbmRsZS5zdGF0KCk7XG4gICAgICAgIGlmIChzaXplIDw9IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW1wdHkgZmlsZScpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlucHV0U2l6ZSA9IE1hdGgubWluKHNpemUsIE1heElucHV0U2l6ZSk7XG4gICAgICAgIGNvbnN0IGlucHV0ID0gbmV3IFVpbnQ4QXJyYXkoaW5wdXRTaXplKTtcbiAgICAgICAgYXdhaXQgaGFuZGxlLnJlYWQoaW5wdXQsIDAsIGlucHV0U2l6ZSwgMCk7XG4gICAgICAgIHJldHVybiBpbnB1dDtcbiAgICB9XG4gICAgZmluYWxseSB7XG4gICAgICAgIGF3YWl0IGhhbmRsZS5jbG9zZSgpO1xuICAgIH1cbn1cbi8qKlxuICogU3luY2hyb25vdXNseSByZWFkcyBhIGZpbGUgaW50byBhbiBVaW50OEFycmF5LCBibG9ja2luZyB0aGUgbm9kZWpzIHByb2Nlc3MuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGZpbGVwYXRoXG4gKiBAcmV0dXJucyB7VWludDhBcnJheX1cbiAqL1xuZnVuY3Rpb24gcmVhZEZpbGVTeW5jKGZpbGVwYXRoKSB7XG4gICAgLy8gcmVhZCBmcm9tIHRoZSBmaWxlLCBzeW5jaHJvbm91c2x5XG4gICAgY29uc3QgZGVzY3JpcHRvciA9IGZzLm9wZW5TeW5jKGZpbGVwYXRoLCAncicpO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgc2l6ZSB9ID0gZnMuZnN0YXRTeW5jKGRlc2NyaXB0b3IpO1xuICAgICAgICBpZiAoc2l6ZSA8PSAwKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VtcHR5IGZpbGUnKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpbnB1dFNpemUgPSBNYXRoLm1pbihzaXplLCBNYXhJbnB1dFNpemUpO1xuICAgICAgICBjb25zdCBpbnB1dCA9IG5ldyBVaW50OEFycmF5KGlucHV0U2l6ZSk7XG4gICAgICAgIGZzLnJlYWRTeW5jKGRlc2NyaXB0b3IsIGlucHV0LCAwLCBpbnB1dFNpemUsIDApO1xuICAgICAgICByZXR1cm4gaW5wdXQ7XG4gICAgfVxuICAgIGZpbmFsbHkge1xuICAgICAgICBmcy5jbG9zZVN5bmMoZGVzY3JpcHRvcik7XG4gICAgfVxufVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11c2UtYmVmb3JlLWRlZmluZVxubW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzID0gaW1hZ2VTaXplOyAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuZXhwb3J0cy5kZWZhdWx0ID0gaW1hZ2VTaXplO1xuLyoqXG4gKiBAcGFyYW0ge1VpbnQ4QXJyYXl8c3RyaW5nfSBpbnB1dCAtIFVpbnQ4QXJyYXkgb3IgcmVsYXRpdmUvYWJzb2x1dGUgcGF0aCBvZiB0aGUgaW1hZ2UgZmlsZVxuICogQHBhcmFtIHtGdW5jdGlvbj19IFtjYWxsYmFja10gLSBvcHRpb25hbCBmdW5jdGlvbiBmb3IgYXN5bmMgZGV0ZWN0aW9uXG4gKi9cbmZ1bmN0aW9uIGltYWdlU2l6ZShpbnB1dCwgY2FsbGJhY2spIHtcbiAgICAvLyBIYW5kbGUgVWludDhBcnJheSBpbnB1dFxuICAgIGlmIChpbnB1dCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpIHtcbiAgICAgICAgcmV0dXJuIGxvb2t1cChpbnB1dCk7XG4gICAgfVxuICAgIC8vIGlucHV0IHNob3VsZCBiZSBhIHN0cmluZyBhdCB0aGlzIHBvaW50XG4gICAgaWYgKHR5cGVvZiBpbnB1dCAhPT0gJ3N0cmluZycgfHwgZ2xvYmFsT3B0aW9ucy5kaXNhYmxlZEZTKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ludmFsaWQgaW52b2NhdGlvbi4gaW5wdXQgc2hvdWxkIGJlIGEgVWludDhBcnJheScpO1xuICAgIH1cbiAgICAvLyByZXNvbHZlIHRoZSBmaWxlIHBhdGhcbiAgICBjb25zdCBmaWxlcGF0aCA9IHBhdGgucmVzb2x2ZShpbnB1dCk7XG4gICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBxdWV1ZS5wdXNoKCgpID0+IHJlYWRGaWxlQXN5bmMoZmlsZXBhdGgpXG4gICAgICAgICAgICAudGhlbigoaW5wdXQpID0+IHByb2Nlc3MubmV4dFRpY2soY2FsbGJhY2ssIG51bGwsIGxvb2t1cChpbnB1dCwgZmlsZXBhdGgpKSlcbiAgICAgICAgICAgIC5jYXRjaChjYWxsYmFjaykpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgaW5wdXQgPSByZWFkRmlsZVN5bmMoZmlsZXBhdGgpO1xuICAgICAgICByZXR1cm4gbG9va3VwKGlucHV0LCBmaWxlcGF0aCk7XG4gICAgfVxufVxuZXhwb3J0cy5pbWFnZVNpemUgPSBpbWFnZVNpemU7XG5jb25zdCBkaXNhYmxlRlMgPSAodikgPT4ge1xuICAgIGdsb2JhbE9wdGlvbnMuZGlzYWJsZWRGUyA9IHY7XG59O1xuZXhwb3J0cy5kaXNhYmxlRlMgPSBkaXNhYmxlRlM7XG5jb25zdCBkaXNhYmxlVHlwZXMgPSAodHlwZXMpID0+IHtcbiAgICBnbG9iYWxPcHRpb25zLmRpc2FibGVkVHlwZXMgPSB0eXBlcztcbn07XG5leHBvcnRzLmRpc2FibGVUeXBlcyA9IGRpc2FibGVUeXBlcztcbmNvbnN0IHNldENvbmN1cnJlbmN5ID0gKGMpID0+IHtcbiAgICBxdWV1ZS5jb25jdXJyZW5jeSA9IGM7XG59O1xuZXhwb3J0cy5zZXRDb25jdXJyZW5jeSA9IHNldENvbmN1cnJlbmN5O1xuZXhwb3J0cy50eXBlcyA9IE9iamVjdC5rZXlzKGluZGV4XzEudHlwZUhhbmRsZXJzKTtcbiIsICIndXNlIHN0cmljdCc7XG5cbi8vIGRvIG5vdCBlZGl0IC5qcyBmaWxlcyBkaXJlY3RseSAtIGVkaXQgc3JjL2luZGV4LmpzdFxuXG5cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBlcXVhbChhLCBiKSB7XG4gIGlmIChhID09PSBiKSByZXR1cm4gdHJ1ZTtcblxuICBpZiAoYSAmJiBiICYmIHR5cGVvZiBhID09ICdvYmplY3QnICYmIHR5cGVvZiBiID09ICdvYmplY3QnKSB7XG4gICAgaWYgKGEuY29uc3RydWN0b3IgIT09IGIuY29uc3RydWN0b3IpIHJldHVybiBmYWxzZTtcblxuICAgIHZhciBsZW5ndGgsIGksIGtleXM7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHtcbiAgICAgIGxlbmd0aCA9IGEubGVuZ3RoO1xuICAgICAgaWYgKGxlbmd0aCAhPSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7KVxuICAgICAgICBpZiAoIWVxdWFsKGFbaV0sIGJbaV0pKSByZXR1cm4gZmFsc2U7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cblxuXG4gICAgaWYgKGEuY29uc3RydWN0b3IgPT09IFJlZ0V4cCkgcmV0dXJuIGEuc291cmNlID09PSBiLnNvdXJjZSAmJiBhLmZsYWdzID09PSBiLmZsYWdzO1xuICAgIGlmIChhLnZhbHVlT2YgIT09IE9iamVjdC5wcm90b3R5cGUudmFsdWVPZikgcmV0dXJuIGEudmFsdWVPZigpID09PSBiLnZhbHVlT2YoKTtcbiAgICBpZiAoYS50b1N0cmluZyAhPT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZykgcmV0dXJuIGEudG9TdHJpbmcoKSA9PT0gYi50b1N0cmluZygpO1xuXG4gICAga2V5cyA9IE9iamVjdC5rZXlzKGEpO1xuICAgIGxlbmd0aCA9IGtleXMubGVuZ3RoO1xuICAgIGlmIChsZW5ndGggIT09IE9iamVjdC5rZXlzKGIpLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7KVxuICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYiwga2V5c1tpXSkpIHJldHVybiBmYWxzZTtcblxuICAgIGZvciAoaSA9IGxlbmd0aDsgaS0tICE9PSAwOykge1xuICAgICAgdmFyIGtleSA9IGtleXNbaV07XG5cbiAgICAgIGlmICghZXF1YWwoYVtrZXldLCBiW2tleV0pKSByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyB0cnVlIGlmIGJvdGggTmFOLCBmYWxzZSBvdGhlcndpc2VcbiAgcmV0dXJuIGEhPT1hICYmIGIhPT1iO1xufTtcbiIsICIndXNlIHN0cmljdCdcblxuZXhwb3J0cy5ieXRlTGVuZ3RoID0gYnl0ZUxlbmd0aFxuZXhwb3J0cy50b0J5dGVBcnJheSA9IHRvQnl0ZUFycmF5XG5leHBvcnRzLmZyb21CeXRlQXJyYXkgPSBmcm9tQnl0ZUFycmF5XG5cbnZhciBsb29rdXAgPSBbXVxudmFyIHJldkxvb2t1cCA9IFtdXG52YXIgQXJyID0gdHlwZW9mIFVpbnQ4QXJyYXkgIT09ICd1bmRlZmluZWQnID8gVWludDhBcnJheSA6IEFycmF5XG5cbnZhciBjb2RlID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8nXG5mb3IgKHZhciBpID0gMCwgbGVuID0gY29kZS5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICBsb29rdXBbaV0gPSBjb2RlW2ldXG4gIHJldkxvb2t1cFtjb2RlLmNoYXJDb2RlQXQoaSldID0gaVxufVxuXG4vLyBTdXBwb3J0IGRlY29kaW5nIFVSTC1zYWZlIGJhc2U2NCBzdHJpbmdzLCBhcyBOb2RlLmpzIGRvZXMuXG4vLyBTZWU6IGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0Jhc2U2NCNVUkxfYXBwbGljYXRpb25zXG5yZXZMb29rdXBbJy0nLmNoYXJDb2RlQXQoMCldID0gNjJcbnJldkxvb2t1cFsnXycuY2hhckNvZGVBdCgwKV0gPSA2M1xuXG5mdW5jdGlvbiBnZXRMZW5zIChiNjQpIHtcbiAgdmFyIGxlbiA9IGI2NC5sZW5ndGhcblxuICBpZiAobGVuICUgNCA+IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgc3RyaW5nLiBMZW5ndGggbXVzdCBiZSBhIG11bHRpcGxlIG9mIDQnKVxuICB9XG5cbiAgLy8gVHJpbSBvZmYgZXh0cmEgYnl0ZXMgYWZ0ZXIgcGxhY2Vob2xkZXIgYnl0ZXMgYXJlIGZvdW5kXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2JlYXRnYW1taXQvYmFzZTY0LWpzL2lzc3Vlcy80MlxuICB2YXIgdmFsaWRMZW4gPSBiNjQuaW5kZXhPZignPScpXG4gIGlmICh2YWxpZExlbiA9PT0gLTEpIHZhbGlkTGVuID0gbGVuXG5cbiAgdmFyIHBsYWNlSG9sZGVyc0xlbiA9IHZhbGlkTGVuID09PSBsZW5cbiAgICA/IDBcbiAgICA6IDQgLSAodmFsaWRMZW4gJSA0KVxuXG4gIHJldHVybiBbdmFsaWRMZW4sIHBsYWNlSG9sZGVyc0xlbl1cbn1cblxuLy8gYmFzZTY0IGlzIDQvMyArIHVwIHRvIHR3byBjaGFyYWN0ZXJzIG9mIHRoZSBvcmlnaW5hbCBkYXRhXG5mdW5jdGlvbiBieXRlTGVuZ3RoIChiNjQpIHtcbiAgdmFyIGxlbnMgPSBnZXRMZW5zKGI2NClcbiAgdmFyIHZhbGlkTGVuID0gbGVuc1swXVxuICB2YXIgcGxhY2VIb2xkZXJzTGVuID0gbGVuc1sxXVxuICByZXR1cm4gKCh2YWxpZExlbiArIHBsYWNlSG9sZGVyc0xlbikgKiAzIC8gNCkgLSBwbGFjZUhvbGRlcnNMZW5cbn1cblxuZnVuY3Rpb24gX2J5dGVMZW5ndGggKGI2NCwgdmFsaWRMZW4sIHBsYWNlSG9sZGVyc0xlbikge1xuICByZXR1cm4gKCh2YWxpZExlbiArIHBsYWNlSG9sZGVyc0xlbikgKiAzIC8gNCkgLSBwbGFjZUhvbGRlcnNMZW5cbn1cblxuZnVuY3Rpb24gdG9CeXRlQXJyYXkgKGI2NCkge1xuICB2YXIgdG1wXG4gIHZhciBsZW5zID0gZ2V0TGVucyhiNjQpXG4gIHZhciB2YWxpZExlbiA9IGxlbnNbMF1cbiAgdmFyIHBsYWNlSG9sZGVyc0xlbiA9IGxlbnNbMV1cblxuICB2YXIgYXJyID0gbmV3IEFycihfYnl0ZUxlbmd0aChiNjQsIHZhbGlkTGVuLCBwbGFjZUhvbGRlcnNMZW4pKVxuXG4gIHZhciBjdXJCeXRlID0gMFxuXG4gIC8vIGlmIHRoZXJlIGFyZSBwbGFjZWhvbGRlcnMsIG9ubHkgZ2V0IHVwIHRvIHRoZSBsYXN0IGNvbXBsZXRlIDQgY2hhcnNcbiAgdmFyIGxlbiA9IHBsYWNlSG9sZGVyc0xlbiA+IDBcbiAgICA/IHZhbGlkTGVuIC0gNFxuICAgIDogdmFsaWRMZW5cblxuICB2YXIgaVxuICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpICs9IDQpIHtcbiAgICB0bXAgPVxuICAgICAgKHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpKV0gPDwgMTgpIHxcbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSArIDEpXSA8PCAxMikgfFxuICAgICAgKHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpICsgMildIDw8IDYpIHxcbiAgICAgIHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpICsgMyldXG4gICAgYXJyW2N1ckJ5dGUrK10gPSAodG1wID4+IDE2KSAmIDB4RkZcbiAgICBhcnJbY3VyQnl0ZSsrXSA9ICh0bXAgPj4gOCkgJiAweEZGXG4gICAgYXJyW2N1ckJ5dGUrK10gPSB0bXAgJiAweEZGXG4gIH1cblxuICBpZiAocGxhY2VIb2xkZXJzTGVuID09PSAyKSB7XG4gICAgdG1wID1cbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSldIDw8IDIpIHxcbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSArIDEpXSA+PiA0KVxuICAgIGFycltjdXJCeXRlKytdID0gdG1wICYgMHhGRlxuICB9XG5cbiAgaWYgKHBsYWNlSG9sZGVyc0xlbiA9PT0gMSkge1xuICAgIHRtcCA9XG4gICAgICAocmV2TG9va3VwW2I2NC5jaGFyQ29kZUF0KGkpXSA8PCAxMCkgfFxuICAgICAgKHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpICsgMSldIDw8IDQpIHxcbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSArIDIpXSA+PiAyKVxuICAgIGFycltjdXJCeXRlKytdID0gKHRtcCA+PiA4KSAmIDB4RkZcbiAgICBhcnJbY3VyQnl0ZSsrXSA9IHRtcCAmIDB4RkZcbiAgfVxuXG4gIHJldHVybiBhcnJcbn1cblxuZnVuY3Rpb24gdHJpcGxldFRvQmFzZTY0IChudW0pIHtcbiAgcmV0dXJuIGxvb2t1cFtudW0gPj4gMTggJiAweDNGXSArXG4gICAgbG9va3VwW251bSA+PiAxMiAmIDB4M0ZdICtcbiAgICBsb29rdXBbbnVtID4+IDYgJiAweDNGXSArXG4gICAgbG9va3VwW251bSAmIDB4M0ZdXG59XG5cbmZ1bmN0aW9uIGVuY29kZUNodW5rICh1aW50OCwgc3RhcnQsIGVuZCkge1xuICB2YXIgdG1wXG4gIHZhciBvdXRwdXQgPSBbXVxuICBmb3IgKHZhciBpID0gc3RhcnQ7IGkgPCBlbmQ7IGkgKz0gMykge1xuICAgIHRtcCA9XG4gICAgICAoKHVpbnQ4W2ldIDw8IDE2KSAmIDB4RkYwMDAwKSArXG4gICAgICAoKHVpbnQ4W2kgKyAxXSA8PCA4KSAmIDB4RkYwMCkgK1xuICAgICAgKHVpbnQ4W2kgKyAyXSAmIDB4RkYpXG4gICAgb3V0cHV0LnB1c2godHJpcGxldFRvQmFzZTY0KHRtcCkpXG4gIH1cbiAgcmV0dXJuIG91dHB1dC5qb2luKCcnKVxufVxuXG5mdW5jdGlvbiBmcm9tQnl0ZUFycmF5ICh1aW50OCkge1xuICB2YXIgdG1wXG4gIHZhciBsZW4gPSB1aW50OC5sZW5ndGhcbiAgdmFyIGV4dHJhQnl0ZXMgPSBsZW4gJSAzIC8vIGlmIHdlIGhhdmUgMSBieXRlIGxlZnQsIHBhZCAyIGJ5dGVzXG4gIHZhciBwYXJ0cyA9IFtdXG4gIHZhciBtYXhDaHVua0xlbmd0aCA9IDE2MzgzIC8vIG11c3QgYmUgbXVsdGlwbGUgb2YgM1xuXG4gIC8vIGdvIHRocm91Z2ggdGhlIGFycmF5IGV2ZXJ5IHRocmVlIGJ5dGVzLCB3ZSdsbCBkZWFsIHdpdGggdHJhaWxpbmcgc3R1ZmYgbGF0ZXJcbiAgZm9yICh2YXIgaSA9IDAsIGxlbjIgPSBsZW4gLSBleHRyYUJ5dGVzOyBpIDwgbGVuMjsgaSArPSBtYXhDaHVua0xlbmd0aCkge1xuICAgIHBhcnRzLnB1c2goZW5jb2RlQ2h1bmsodWludDgsIGksIChpICsgbWF4Q2h1bmtMZW5ndGgpID4gbGVuMiA/IGxlbjIgOiAoaSArIG1heENodW5rTGVuZ3RoKSkpXG4gIH1cblxuICAvLyBwYWQgdGhlIGVuZCB3aXRoIHplcm9zLCBidXQgbWFrZSBzdXJlIHRvIG5vdCBmb3JnZXQgdGhlIGV4dHJhIGJ5dGVzXG4gIGlmIChleHRyYUJ5dGVzID09PSAxKSB7XG4gICAgdG1wID0gdWludDhbbGVuIC0gMV1cbiAgICBwYXJ0cy5wdXNoKFxuICAgICAgbG9va3VwW3RtcCA+PiAyXSArXG4gICAgICBsb29rdXBbKHRtcCA8PCA0KSAmIDB4M0ZdICtcbiAgICAgICc9PSdcbiAgICApXG4gIH0gZWxzZSBpZiAoZXh0cmFCeXRlcyA9PT0gMikge1xuICAgIHRtcCA9ICh1aW50OFtsZW4gLSAyXSA8PCA4KSArIHVpbnQ4W2xlbiAtIDFdXG4gICAgcGFydHMucHVzaChcbiAgICAgIGxvb2t1cFt0bXAgPj4gMTBdICtcbiAgICAgIGxvb2t1cFsodG1wID4+IDQpICYgMHgzRl0gK1xuICAgICAgbG9va3VwWyh0bXAgPDwgMikgJiAweDNGXSArXG4gICAgICAnPSdcbiAgICApXG4gIH1cblxuICByZXR1cm4gcGFydHMuam9pbignJylcbn1cbiIsICJ2YXIgVElORl9PSyA9IDA7XG52YXIgVElORl9EQVRBX0VSUk9SID0gLTM7XG5cbmZ1bmN0aW9uIFRyZWUoKSB7XG4gIHRoaXMudGFibGUgPSBuZXcgVWludDE2QXJyYXkoMTYpOyAgIC8qIHRhYmxlIG9mIGNvZGUgbGVuZ3RoIGNvdW50cyAqL1xuICB0aGlzLnRyYW5zID0gbmV3IFVpbnQxNkFycmF5KDI4OCk7ICAvKiBjb2RlIC0+IHN5bWJvbCB0cmFuc2xhdGlvbiB0YWJsZSAqL1xufVxuXG5mdW5jdGlvbiBEYXRhKHNvdXJjZSwgZGVzdCkge1xuICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcbiAgdGhpcy5zb3VyY2VJbmRleCA9IDA7XG4gIHRoaXMudGFnID0gMDtcbiAgdGhpcy5iaXRjb3VudCA9IDA7XG4gIFxuICB0aGlzLmRlc3QgPSBkZXN0O1xuICB0aGlzLmRlc3RMZW4gPSAwO1xuICBcbiAgdGhpcy5sdHJlZSA9IG5ldyBUcmVlKCk7ICAvKiBkeW5hbWljIGxlbmd0aC9zeW1ib2wgdHJlZSAqL1xuICB0aGlzLmR0cmVlID0gbmV3IFRyZWUoKTsgIC8qIGR5bmFtaWMgZGlzdGFuY2UgdHJlZSAqL1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuICogLS0gdW5pbml0aWFsaXplZCBnbG9iYWwgZGF0YSAoc3RhdGljIHN0cnVjdHVyZXMpIC0tICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG52YXIgc2x0cmVlID0gbmV3IFRyZWUoKTtcbnZhciBzZHRyZWUgPSBuZXcgVHJlZSgpO1xuXG4vKiBleHRyYSBiaXRzIGFuZCBiYXNlIHRhYmxlcyBmb3IgbGVuZ3RoIGNvZGVzICovXG52YXIgbGVuZ3RoX2JpdHMgPSBuZXcgVWludDhBcnJheSgzMCk7XG52YXIgbGVuZ3RoX2Jhc2UgPSBuZXcgVWludDE2QXJyYXkoMzApO1xuXG4vKiBleHRyYSBiaXRzIGFuZCBiYXNlIHRhYmxlcyBmb3IgZGlzdGFuY2UgY29kZXMgKi9cbnZhciBkaXN0X2JpdHMgPSBuZXcgVWludDhBcnJheSgzMCk7XG52YXIgZGlzdF9iYXNlID0gbmV3IFVpbnQxNkFycmF5KDMwKTtcblxuLyogc3BlY2lhbCBvcmRlcmluZyBvZiBjb2RlIGxlbmd0aCBjb2RlcyAqL1xudmFyIGNsY2lkeCA9IG5ldyBVaW50OEFycmF5KFtcbiAgMTYsIDE3LCAxOCwgMCwgOCwgNywgOSwgNixcbiAgMTAsIDUsIDExLCA0LCAxMiwgMywgMTMsIDIsXG4gIDE0LCAxLCAxNVxuXSk7XG5cbi8qIHVzZWQgYnkgdGluZl9kZWNvZGVfdHJlZXMsIGF2b2lkcyBhbGxvY2F0aW9ucyBldmVyeSBjYWxsICovXG52YXIgY29kZV90cmVlID0gbmV3IFRyZWUoKTtcbnZhciBsZW5ndGhzID0gbmV3IFVpbnQ4QXJyYXkoMjg4ICsgMzIpO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4gKiAtLSB1dGlsaXR5IGZ1bmN0aW9ucyAtLSAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBidWlsZCBleHRyYSBiaXRzIGFuZCBiYXNlIHRhYmxlcyAqL1xuZnVuY3Rpb24gdGluZl9idWlsZF9iaXRzX2Jhc2UoYml0cywgYmFzZSwgZGVsdGEsIGZpcnN0KSB7XG4gIHZhciBpLCBzdW07XG5cbiAgLyogYnVpbGQgYml0cyB0YWJsZSAqL1xuICBmb3IgKGkgPSAwOyBpIDwgZGVsdGE7ICsraSkgYml0c1tpXSA9IDA7XG4gIGZvciAoaSA9IDA7IGkgPCAzMCAtIGRlbHRhOyArK2kpIGJpdHNbaSArIGRlbHRhXSA9IGkgLyBkZWx0YSB8IDA7XG5cbiAgLyogYnVpbGQgYmFzZSB0YWJsZSAqL1xuICBmb3IgKHN1bSA9IGZpcnN0LCBpID0gMDsgaSA8IDMwOyArK2kpIHtcbiAgICBiYXNlW2ldID0gc3VtO1xuICAgIHN1bSArPSAxIDw8IGJpdHNbaV07XG4gIH1cbn1cblxuLyogYnVpbGQgdGhlIGZpeGVkIGh1ZmZtYW4gdHJlZXMgKi9cbmZ1bmN0aW9uIHRpbmZfYnVpbGRfZml4ZWRfdHJlZXMobHQsIGR0KSB7XG4gIHZhciBpO1xuXG4gIC8qIGJ1aWxkIGZpeGVkIGxlbmd0aCB0cmVlICovXG4gIGZvciAoaSA9IDA7IGkgPCA3OyArK2kpIGx0LnRhYmxlW2ldID0gMDtcblxuICBsdC50YWJsZVs3XSA9IDI0O1xuICBsdC50YWJsZVs4XSA9IDE1MjtcbiAgbHQudGFibGVbOV0gPSAxMTI7XG5cbiAgZm9yIChpID0gMDsgaSA8IDI0OyArK2kpIGx0LnRyYW5zW2ldID0gMjU2ICsgaTtcbiAgZm9yIChpID0gMDsgaSA8IDE0NDsgKytpKSBsdC50cmFuc1syNCArIGldID0gaTtcbiAgZm9yIChpID0gMDsgaSA8IDg7ICsraSkgbHQudHJhbnNbMjQgKyAxNDQgKyBpXSA9IDI4MCArIGk7XG4gIGZvciAoaSA9IDA7IGkgPCAxMTI7ICsraSkgbHQudHJhbnNbMjQgKyAxNDQgKyA4ICsgaV0gPSAxNDQgKyBpO1xuXG4gIC8qIGJ1aWxkIGZpeGVkIGRpc3RhbmNlIHRyZWUgKi9cbiAgZm9yIChpID0gMDsgaSA8IDU7ICsraSkgZHQudGFibGVbaV0gPSAwO1xuXG4gIGR0LnRhYmxlWzVdID0gMzI7XG5cbiAgZm9yIChpID0gMDsgaSA8IDMyOyArK2kpIGR0LnRyYW5zW2ldID0gaTtcbn1cblxuLyogZ2l2ZW4gYW4gYXJyYXkgb2YgY29kZSBsZW5ndGhzLCBidWlsZCBhIHRyZWUgKi9cbnZhciBvZmZzID0gbmV3IFVpbnQxNkFycmF5KDE2KTtcblxuZnVuY3Rpb24gdGluZl9idWlsZF90cmVlKHQsIGxlbmd0aHMsIG9mZiwgbnVtKSB7XG4gIHZhciBpLCBzdW07XG5cbiAgLyogY2xlYXIgY29kZSBsZW5ndGggY291bnQgdGFibGUgKi9cbiAgZm9yIChpID0gMDsgaSA8IDE2OyArK2kpIHQudGFibGVbaV0gPSAwO1xuXG4gIC8qIHNjYW4gc3ltYm9sIGxlbmd0aHMsIGFuZCBzdW0gY29kZSBsZW5ndGggY291bnRzICovXG4gIGZvciAoaSA9IDA7IGkgPCBudW07ICsraSkgdC50YWJsZVtsZW5ndGhzW29mZiArIGldXSsrO1xuXG4gIHQudGFibGVbMF0gPSAwO1xuXG4gIC8qIGNvbXB1dGUgb2Zmc2V0IHRhYmxlIGZvciBkaXN0cmlidXRpb24gc29ydCAqL1xuICBmb3IgKHN1bSA9IDAsIGkgPSAwOyBpIDwgMTY7ICsraSkge1xuICAgIG9mZnNbaV0gPSBzdW07XG4gICAgc3VtICs9IHQudGFibGVbaV07XG4gIH1cblxuICAvKiBjcmVhdGUgY29kZS0+c3ltYm9sIHRyYW5zbGF0aW9uIHRhYmxlIChzeW1ib2xzIHNvcnRlZCBieSBjb2RlKSAqL1xuICBmb3IgKGkgPSAwOyBpIDwgbnVtOyArK2kpIHtcbiAgICBpZiAobGVuZ3Roc1tvZmYgKyBpXSkgdC50cmFuc1tvZmZzW2xlbmd0aHNbb2ZmICsgaV1dKytdID0gaTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiAqIC0tIGRlY29kZSBmdW5jdGlvbnMgLS0gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBnZXQgb25lIGJpdCBmcm9tIHNvdXJjZSBzdHJlYW0gKi9cbmZ1bmN0aW9uIHRpbmZfZ2V0Yml0KGQpIHtcbiAgLyogY2hlY2sgaWYgdGFnIGlzIGVtcHR5ICovXG4gIGlmICghZC5iaXRjb3VudC0tKSB7XG4gICAgLyogbG9hZCBuZXh0IHRhZyAqL1xuICAgIGQudGFnID0gZC5zb3VyY2VbZC5zb3VyY2VJbmRleCsrXTtcbiAgICBkLmJpdGNvdW50ID0gNztcbiAgfVxuXG4gIC8qIHNoaWZ0IGJpdCBvdXQgb2YgdGFnICovXG4gIHZhciBiaXQgPSBkLnRhZyAmIDE7XG4gIGQudGFnID4+Pj0gMTtcblxuICByZXR1cm4gYml0O1xufVxuXG4vKiByZWFkIGEgbnVtIGJpdCB2YWx1ZSBmcm9tIGEgc3RyZWFtIGFuZCBhZGQgYmFzZSAqL1xuZnVuY3Rpb24gdGluZl9yZWFkX2JpdHMoZCwgbnVtLCBiYXNlKSB7XG4gIGlmICghbnVtKVxuICAgIHJldHVybiBiYXNlO1xuXG4gIHdoaWxlIChkLmJpdGNvdW50IDwgMjQpIHtcbiAgICBkLnRhZyB8PSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4KytdIDw8IGQuYml0Y291bnQ7XG4gICAgZC5iaXRjb3VudCArPSA4O1xuICB9XG5cbiAgdmFyIHZhbCA9IGQudGFnICYgKDB4ZmZmZiA+Pj4gKDE2IC0gbnVtKSk7XG4gIGQudGFnID4+Pj0gbnVtO1xuICBkLmJpdGNvdW50IC09IG51bTtcbiAgcmV0dXJuIHZhbCArIGJhc2U7XG59XG5cbi8qIGdpdmVuIGEgZGF0YSBzdHJlYW0gYW5kIGEgdHJlZSwgZGVjb2RlIGEgc3ltYm9sICovXG5mdW5jdGlvbiB0aW5mX2RlY29kZV9zeW1ib2woZCwgdCkge1xuICB3aGlsZSAoZC5iaXRjb3VudCA8IDI0KSB7XG4gICAgZC50YWcgfD0gZC5zb3VyY2VbZC5zb3VyY2VJbmRleCsrXSA8PCBkLmJpdGNvdW50O1xuICAgIGQuYml0Y291bnQgKz0gODtcbiAgfVxuICBcbiAgdmFyIHN1bSA9IDAsIGN1ciA9IDAsIGxlbiA9IDA7XG4gIHZhciB0YWcgPSBkLnRhZztcblxuICAvKiBnZXQgbW9yZSBiaXRzIHdoaWxlIGNvZGUgdmFsdWUgaXMgYWJvdmUgc3VtICovXG4gIGRvIHtcbiAgICBjdXIgPSAyICogY3VyICsgKHRhZyAmIDEpO1xuICAgIHRhZyA+Pj49IDE7XG4gICAgKytsZW47XG5cbiAgICBzdW0gKz0gdC50YWJsZVtsZW5dO1xuICAgIGN1ciAtPSB0LnRhYmxlW2xlbl07XG4gIH0gd2hpbGUgKGN1ciA+PSAwKTtcbiAgXG4gIGQudGFnID0gdGFnO1xuICBkLmJpdGNvdW50IC09IGxlbjtcblxuICByZXR1cm4gdC50cmFuc1tzdW0gKyBjdXJdO1xufVxuXG4vKiBnaXZlbiBhIGRhdGEgc3RyZWFtLCBkZWNvZGUgZHluYW1pYyB0cmVlcyBmcm9tIGl0ICovXG5mdW5jdGlvbiB0aW5mX2RlY29kZV90cmVlcyhkLCBsdCwgZHQpIHtcbiAgdmFyIGhsaXQsIGhkaXN0LCBoY2xlbjtcbiAgdmFyIGksIG51bSwgbGVuZ3RoO1xuXG4gIC8qIGdldCA1IGJpdHMgSExJVCAoMjU3LTI4NikgKi9cbiAgaGxpdCA9IHRpbmZfcmVhZF9iaXRzKGQsIDUsIDI1Nyk7XG5cbiAgLyogZ2V0IDUgYml0cyBIRElTVCAoMS0zMikgKi9cbiAgaGRpc3QgPSB0aW5mX3JlYWRfYml0cyhkLCA1LCAxKTtcblxuICAvKiBnZXQgNCBiaXRzIEhDTEVOICg0LTE5KSAqL1xuICBoY2xlbiA9IHRpbmZfcmVhZF9iaXRzKGQsIDQsIDQpO1xuXG4gIGZvciAoaSA9IDA7IGkgPCAxOTsgKytpKSBsZW5ndGhzW2ldID0gMDtcblxuICAvKiByZWFkIGNvZGUgbGVuZ3RocyBmb3IgY29kZSBsZW5ndGggYWxwaGFiZXQgKi9cbiAgZm9yIChpID0gMDsgaSA8IGhjbGVuOyArK2kpIHtcbiAgICAvKiBnZXQgMyBiaXRzIGNvZGUgbGVuZ3RoICgwLTcpICovXG4gICAgdmFyIGNsZW4gPSB0aW5mX3JlYWRfYml0cyhkLCAzLCAwKTtcbiAgICBsZW5ndGhzW2NsY2lkeFtpXV0gPSBjbGVuO1xuICB9XG5cbiAgLyogYnVpbGQgY29kZSBsZW5ndGggdHJlZSAqL1xuICB0aW5mX2J1aWxkX3RyZWUoY29kZV90cmVlLCBsZW5ndGhzLCAwLCAxOSk7XG5cbiAgLyogZGVjb2RlIGNvZGUgbGVuZ3RocyBmb3IgdGhlIGR5bmFtaWMgdHJlZXMgKi9cbiAgZm9yIChudW0gPSAwOyBudW0gPCBobGl0ICsgaGRpc3Q7KSB7XG4gICAgdmFyIHN5bSA9IHRpbmZfZGVjb2RlX3N5bWJvbChkLCBjb2RlX3RyZWUpO1xuXG4gICAgc3dpdGNoIChzeW0pIHtcbiAgICAgIGNhc2UgMTY6XG4gICAgICAgIC8qIGNvcHkgcHJldmlvdXMgY29kZSBsZW5ndGggMy02IHRpbWVzIChyZWFkIDIgYml0cykgKi9cbiAgICAgICAgdmFyIHByZXYgPSBsZW5ndGhzW251bSAtIDFdO1xuICAgICAgICBmb3IgKGxlbmd0aCA9IHRpbmZfcmVhZF9iaXRzKGQsIDIsIDMpOyBsZW5ndGg7IC0tbGVuZ3RoKSB7XG4gICAgICAgICAgbGVuZ3Roc1tudW0rK10gPSBwcmV2O1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxNzpcbiAgICAgICAgLyogcmVwZWF0IGNvZGUgbGVuZ3RoIDAgZm9yIDMtMTAgdGltZXMgKHJlYWQgMyBiaXRzKSAqL1xuICAgICAgICBmb3IgKGxlbmd0aCA9IHRpbmZfcmVhZF9iaXRzKGQsIDMsIDMpOyBsZW5ndGg7IC0tbGVuZ3RoKSB7XG4gICAgICAgICAgbGVuZ3Roc1tudW0rK10gPSAwO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxODpcbiAgICAgICAgLyogcmVwZWF0IGNvZGUgbGVuZ3RoIDAgZm9yIDExLTEzOCB0aW1lcyAocmVhZCA3IGJpdHMpICovXG4gICAgICAgIGZvciAobGVuZ3RoID0gdGluZl9yZWFkX2JpdHMoZCwgNywgMTEpOyBsZW5ndGg7IC0tbGVuZ3RoKSB7XG4gICAgICAgICAgbGVuZ3Roc1tudW0rK10gPSAwO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLyogdmFsdWVzIDAtMTUgcmVwcmVzZW50IHRoZSBhY3R1YWwgY29kZSBsZW5ndGhzICovXG4gICAgICAgIGxlbmd0aHNbbnVtKytdID0gc3ltO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvKiBidWlsZCBkeW5hbWljIHRyZWVzICovXG4gIHRpbmZfYnVpbGRfdHJlZShsdCwgbGVuZ3RocywgMCwgaGxpdCk7XG4gIHRpbmZfYnVpbGRfdHJlZShkdCwgbGVuZ3RocywgaGxpdCwgaGRpc3QpO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4gKiAtLSBibG9jayBpbmZsYXRlIGZ1bmN0aW9ucyAtLSAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBnaXZlbiBhIHN0cmVhbSBhbmQgdHdvIHRyZWVzLCBpbmZsYXRlIGEgYmxvY2sgb2YgZGF0YSAqL1xuZnVuY3Rpb24gdGluZl9pbmZsYXRlX2Jsb2NrX2RhdGEoZCwgbHQsIGR0KSB7XG4gIHdoaWxlICgxKSB7XG4gICAgdmFyIHN5bSA9IHRpbmZfZGVjb2RlX3N5bWJvbChkLCBsdCk7XG5cbiAgICAvKiBjaGVjayBmb3IgZW5kIG9mIGJsb2NrICovXG4gICAgaWYgKHN5bSA9PT0gMjU2KSB7XG4gICAgICByZXR1cm4gVElORl9PSztcbiAgICB9XG5cbiAgICBpZiAoc3ltIDwgMjU2KSB7XG4gICAgICBkLmRlc3RbZC5kZXN0TGVuKytdID0gc3ltO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgbGVuZ3RoLCBkaXN0LCBvZmZzO1xuICAgICAgdmFyIGk7XG5cbiAgICAgIHN5bSAtPSAyNTc7XG5cbiAgICAgIC8qIHBvc3NpYmx5IGdldCBtb3JlIGJpdHMgZnJvbSBsZW5ndGggY29kZSAqL1xuICAgICAgbGVuZ3RoID0gdGluZl9yZWFkX2JpdHMoZCwgbGVuZ3RoX2JpdHNbc3ltXSwgbGVuZ3RoX2Jhc2Vbc3ltXSk7XG5cbiAgICAgIGRpc3QgPSB0aW5mX2RlY29kZV9zeW1ib2woZCwgZHQpO1xuXG4gICAgICAvKiBwb3NzaWJseSBnZXQgbW9yZSBiaXRzIGZyb20gZGlzdGFuY2UgY29kZSAqL1xuICAgICAgb2ZmcyA9IGQuZGVzdExlbiAtIHRpbmZfcmVhZF9iaXRzKGQsIGRpc3RfYml0c1tkaXN0XSwgZGlzdF9iYXNlW2Rpc3RdKTtcblxuICAgICAgLyogY29weSBtYXRjaCAqL1xuICAgICAgZm9yIChpID0gb2ZmczsgaSA8IG9mZnMgKyBsZW5ndGg7ICsraSkge1xuICAgICAgICBkLmRlc3RbZC5kZXN0TGVuKytdID0gZC5kZXN0W2ldO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBpbmZsYXRlIGFuIHVuY29tcHJlc3NlZCBibG9jayBvZiBkYXRhICovXG5mdW5jdGlvbiB0aW5mX2luZmxhdGVfdW5jb21wcmVzc2VkX2Jsb2NrKGQpIHtcbiAgdmFyIGxlbmd0aCwgaW52bGVuZ3RoO1xuICB2YXIgaTtcbiAgXG4gIC8qIHVucmVhZCBmcm9tIGJpdGJ1ZmZlciAqL1xuICB3aGlsZSAoZC5iaXRjb3VudCA+IDgpIHtcbiAgICBkLnNvdXJjZUluZGV4LS07XG4gICAgZC5iaXRjb3VudCAtPSA4O1xuICB9XG5cbiAgLyogZ2V0IGxlbmd0aCAqL1xuICBsZW5ndGggPSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4ICsgMV07XG4gIGxlbmd0aCA9IDI1NiAqIGxlbmd0aCArIGQuc291cmNlW2Quc291cmNlSW5kZXhdO1xuXG4gIC8qIGdldCBvbmUncyBjb21wbGVtZW50IG9mIGxlbmd0aCAqL1xuICBpbnZsZW5ndGggPSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4ICsgM107XG4gIGludmxlbmd0aCA9IDI1NiAqIGludmxlbmd0aCArIGQuc291cmNlW2Quc291cmNlSW5kZXggKyAyXTtcblxuICAvKiBjaGVjayBsZW5ndGggKi9cbiAgaWYgKGxlbmd0aCAhPT0gKH5pbnZsZW5ndGggJiAweDAwMDBmZmZmKSlcbiAgICByZXR1cm4gVElORl9EQVRBX0VSUk9SO1xuXG4gIGQuc291cmNlSW5kZXggKz0gNDtcblxuICAvKiBjb3B5IGJsb2NrICovXG4gIGZvciAoaSA9IGxlbmd0aDsgaTsgLS1pKVxuICAgIGQuZGVzdFtkLmRlc3RMZW4rK10gPSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4KytdO1xuXG4gIC8qIG1ha2Ugc3VyZSB3ZSBzdGFydCBuZXh0IGJsb2NrIG9uIGEgYnl0ZSBib3VuZGFyeSAqL1xuICBkLmJpdGNvdW50ID0gMDtcblxuICByZXR1cm4gVElORl9PSztcbn1cblxuLyogaW5mbGF0ZSBzdHJlYW0gZnJvbSBzb3VyY2UgdG8gZGVzdCAqL1xuZnVuY3Rpb24gdGluZl91bmNvbXByZXNzKHNvdXJjZSwgZGVzdCkge1xuICB2YXIgZCA9IG5ldyBEYXRhKHNvdXJjZSwgZGVzdCk7XG4gIHZhciBiZmluYWwsIGJ0eXBlLCByZXM7XG5cbiAgZG8ge1xuICAgIC8qIHJlYWQgZmluYWwgYmxvY2sgZmxhZyAqL1xuICAgIGJmaW5hbCA9IHRpbmZfZ2V0Yml0KGQpO1xuXG4gICAgLyogcmVhZCBibG9jayB0eXBlICgyIGJpdHMpICovXG4gICAgYnR5cGUgPSB0aW5mX3JlYWRfYml0cyhkLCAyLCAwKTtcblxuICAgIC8qIGRlY29tcHJlc3MgYmxvY2sgKi9cbiAgICBzd2l0Y2ggKGJ0eXBlKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIC8qIGRlY29tcHJlc3MgdW5jb21wcmVzc2VkIGJsb2NrICovXG4gICAgICAgIHJlcyA9IHRpbmZfaW5mbGF0ZV91bmNvbXByZXNzZWRfYmxvY2soZCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxOlxuICAgICAgICAvKiBkZWNvbXByZXNzIGJsb2NrIHdpdGggZml4ZWQgaHVmZm1hbiB0cmVlcyAqL1xuICAgICAgICByZXMgPSB0aW5mX2luZmxhdGVfYmxvY2tfZGF0YShkLCBzbHRyZWUsIHNkdHJlZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAyOlxuICAgICAgICAvKiBkZWNvbXByZXNzIGJsb2NrIHdpdGggZHluYW1pYyBodWZmbWFuIHRyZWVzICovXG4gICAgICAgIHRpbmZfZGVjb2RlX3RyZWVzKGQsIGQubHRyZWUsIGQuZHRyZWUpO1xuICAgICAgICByZXMgPSB0aW5mX2luZmxhdGVfYmxvY2tfZGF0YShkLCBkLmx0cmVlLCBkLmR0cmVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXMgPSBUSU5GX0RBVEFfRVJST1I7XG4gICAgfVxuXG4gICAgaWYgKHJlcyAhPT0gVElORl9PSylcbiAgICAgIHRocm93IG5ldyBFcnJvcignRGF0YSBlcnJvcicpO1xuXG4gIH0gd2hpbGUgKCFiZmluYWwpO1xuXG4gIGlmIChkLmRlc3RMZW4gPCBkLmRlc3QubGVuZ3RoKSB7XG4gICAgaWYgKHR5cGVvZiBkLmRlc3Quc2xpY2UgPT09ICdmdW5jdGlvbicpXG4gICAgICByZXR1cm4gZC5kZXN0LnNsaWNlKDAsIGQuZGVzdExlbik7XG4gICAgZWxzZVxuICAgICAgcmV0dXJuIGQuZGVzdC5zdWJhcnJheSgwLCBkLmRlc3RMZW4pO1xuICB9XG4gIFxuICByZXR1cm4gZC5kZXN0O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4gKiAtLSBpbml0aWFsaXphdGlvbiAtLSAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBidWlsZCBmaXhlZCBodWZmbWFuIHRyZWVzICovXG50aW5mX2J1aWxkX2ZpeGVkX3RyZWVzKHNsdHJlZSwgc2R0cmVlKTtcblxuLyogYnVpbGQgZXh0cmEgYml0cyBhbmQgYmFzZSB0YWJsZXMgKi9cbnRpbmZfYnVpbGRfYml0c19iYXNlKGxlbmd0aF9iaXRzLCBsZW5ndGhfYmFzZSwgNCwgMyk7XG50aW5mX2J1aWxkX2JpdHNfYmFzZShkaXN0X2JpdHMsIGRpc3RfYmFzZSwgMiwgMSk7XG5cbi8qIGZpeCBhIHNwZWNpYWwgY2FzZSAqL1xubGVuZ3RoX2JpdHNbMjhdID0gMDtcbmxlbmd0aF9iYXNlWzI4XSA9IDI1ODtcblxubW9kdWxlLmV4cG9ydHMgPSB0aW5mX3VuY29tcHJlc3M7XG4iLCAiY29uc3QgaXNCaWdFbmRpYW4gPSAobmV3IFVpbnQ4QXJyYXkobmV3IFVpbnQzMkFycmF5KFsweDEyMzQ1Njc4XSkuYnVmZmVyKVswXSA9PT0gMHgxMik7XG5cbmNvbnN0IHN3YXAgPSAoYiwgbiwgbSkgPT4ge1xuICBsZXQgaSA9IGJbbl07XG4gIGJbbl0gPSBiW21dO1xuICBiW21dID0gaTtcbn07XG5cbmNvbnN0IHN3YXAzMiA9IGFycmF5ID0+IHtcbiAgY29uc3QgbGVuID0gYXJyYXkubGVuZ3RoO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSArPSA0KSB7XG4gICAgc3dhcChhcnJheSwgaSwgaSArIDMpO1xuICAgIHN3YXAoYXJyYXksIGkgKyAxLCBpICsgMik7XG4gIH1cbn07XG5cbmNvbnN0IHN3YXAzMkxFID0gYXJyYXkgPT4ge1xuICBpZiAoaXNCaWdFbmRpYW4pIHtcbiAgICBzd2FwMzIoYXJyYXkpO1xuICB9XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgc3dhcDMyTEU6IHN3YXAzMkxFXG59O1xuIiwgImNvbnN0IGluZmxhdGUgPSByZXF1aXJlKCd0aW55LWluZmxhdGUnKTtcbmNvbnN0IHsgc3dhcDMyTEUgfSA9IHJlcXVpcmUoJy4vc3dhcCcpO1xuXG4vLyBTaGlmdCBzaXplIGZvciBnZXR0aW5nIHRoZSBpbmRleC0xIHRhYmxlIG9mZnNldC5cbmNvbnN0IFNISUZUXzEgPSA2ICsgNTtcblxuLy8gU2hpZnQgc2l6ZSBmb3IgZ2V0dGluZyB0aGUgaW5kZXgtMiB0YWJsZSBvZmZzZXQuXG5jb25zdCBTSElGVF8yID0gNTtcblxuLy8gRGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSB0d28gc2hpZnQgc2l6ZXMsXG4vLyBmb3IgZ2V0dGluZyBhbiBpbmRleC0xIG9mZnNldCBmcm9tIGFuIGluZGV4LTIgb2Zmc2V0LiA2PTExLTVcbmNvbnN0IFNISUZUXzFfMiA9IFNISUZUXzEgLSBTSElGVF8yO1xuXG4vLyBOdW1iZXIgb2YgaW5kZXgtMSBlbnRyaWVzIGZvciB0aGUgQk1QLiAzMj0weDIwXG4vLyBUaGlzIHBhcnQgb2YgdGhlIGluZGV4LTEgdGFibGUgaXMgb21pdHRlZCBmcm9tIHRoZSBzZXJpYWxpemVkIGZvcm0uXG5jb25zdCBPTUlUVEVEX0JNUF9JTkRFWF8xX0xFTkdUSCA9IDB4MTAwMDAgPj4gU0hJRlRfMTtcblxuLy8gTnVtYmVyIG9mIGVudHJpZXMgaW4gYW4gaW5kZXgtMiBibG9jay4gNjQ9MHg0MFxuY29uc3QgSU5ERVhfMl9CTE9DS19MRU5HVEggPSAxIDw8IFNISUZUXzFfMjtcblxuLy8gTWFzayBmb3IgZ2V0dGluZyB0aGUgbG93ZXIgYml0cyBmb3IgdGhlIGluLWluZGV4LTItYmxvY2sgb2Zmc2V0LiAqL1xuY29uc3QgSU5ERVhfMl9NQVNLID0gSU5ERVhfMl9CTE9DS19MRU5HVEggLSAxO1xuXG4vLyBTaGlmdCBzaXplIGZvciBzaGlmdGluZyBsZWZ0IHRoZSBpbmRleCBhcnJheSB2YWx1ZXMuXG4vLyBJbmNyZWFzZXMgcG9zc2libGUgZGF0YSBzaXplIHdpdGggMTYtYml0IGluZGV4IHZhbHVlcyBhdCB0aGUgY29zdFxuLy8gb2YgY29tcGFjdGFiaWxpdHkuXG4vLyBUaGlzIHJlcXVpcmVzIGRhdGEgYmxvY2tzIHRvIGJlIGFsaWduZWQgYnkgREFUQV9HUkFOVUxBUklUWS5cbmNvbnN0IElOREVYX1NISUZUID0gMjtcblxuLy8gTnVtYmVyIG9mIGVudHJpZXMgaW4gYSBkYXRhIGJsb2NrLiAzMj0weDIwXG5jb25zdCBEQVRBX0JMT0NLX0xFTkdUSCA9IDEgPDwgU0hJRlRfMjtcblxuLy8gTWFzayBmb3IgZ2V0dGluZyB0aGUgbG93ZXIgYml0cyBmb3IgdGhlIGluLWRhdGEtYmxvY2sgb2Zmc2V0LlxuY29uc3QgREFUQV9NQVNLID0gREFUQV9CTE9DS19MRU5HVEggLSAxO1xuXG4vLyBUaGUgcGFydCBvZiB0aGUgaW5kZXgtMiB0YWJsZSBmb3IgVStEODAwLi5VK0RCRkYgc3RvcmVzIHZhbHVlcyBmb3Jcbi8vIGxlYWQgc3Vycm9nYXRlIGNvZGUgX3VuaXRzXyBub3QgY29kZSBfcG9pbnRzXy5cbi8vIFZhbHVlcyBmb3IgbGVhZCBzdXJyb2dhdGUgY29kZSBfcG9pbnRzXyBhcmUgaW5kZXhlZCB3aXRoIHRoaXMgcG9ydGlvbiBvZiB0aGUgdGFibGUuXG4vLyBMZW5ndGg9MzI9MHgyMD0weDQwMD4+U0hJRlRfMi4gKFRoZXJlIGFyZSAxMDI0PTB4NDAwIGxlYWQgc3Vycm9nYXRlcy4pXG5jb25zdCBMU0NQX0lOREVYXzJfT0ZGU0VUID0gMHgxMDAwMCA+PiBTSElGVF8yO1xuY29uc3QgTFNDUF9JTkRFWF8yX0xFTkdUSCA9IDB4NDAwID4+IFNISUZUXzI7XG5cbi8vIENvdW50IHRoZSBsZW5ndGhzIG9mIGJvdGggQk1QIHBpZWNlcy4gMjA4MD0weDgyMFxuY29uc3QgSU5ERVhfMl9CTVBfTEVOR1RIID0gTFNDUF9JTkRFWF8yX09GRlNFVCArIExTQ1BfSU5ERVhfMl9MRU5HVEg7XG5cbi8vIFRoZSAyLWJ5dGUgVVRGLTggdmVyc2lvbiBvZiB0aGUgaW5kZXgtMiB0YWJsZSBmb2xsb3dzIGF0IG9mZnNldCAyMDgwPTB4ODIwLlxuLy8gTGVuZ3RoIDMyPTB4MjAgZm9yIGxlYWQgYnl0ZXMgQzAuLkRGLCByZWdhcmRsZXNzIG9mIFNISUZUXzIuXG5jb25zdCBVVEY4XzJCX0lOREVYXzJfT0ZGU0VUID0gSU5ERVhfMl9CTVBfTEVOR1RIO1xuY29uc3QgVVRGOF8yQl9JTkRFWF8yX0xFTkdUSCA9IDB4ODAwID4+IDY7ICAvLyBVKzA4MDAgaXMgdGhlIGZpcnN0IGNvZGUgcG9pbnQgYWZ0ZXIgMi1ieXRlIFVURi04XG5cbi8vIFRoZSBpbmRleC0xIHRhYmxlLCBvbmx5IHVzZWQgZm9yIHN1cHBsZW1lbnRhcnkgY29kZSBwb2ludHMsIGF0IG9mZnNldCAyMTEyPTB4ODQwLlxuLy8gVmFyaWFibGUgbGVuZ3RoLCBmb3IgY29kZSBwb2ludHMgdXAgdG8gaGlnaFN0YXJ0LCB3aGVyZSB0aGUgbGFzdCBzaW5nbGUtdmFsdWUgcmFuZ2Ugc3RhcnRzLlxuLy8gTWF4aW11bSBsZW5ndGggNTEyPTB4MjAwPTB4MTAwMDAwPj5TSElGVF8xLlxuLy8gKEZvciAweDEwMDAwMCBzdXBwbGVtZW50YXJ5IGNvZGUgcG9pbnRzIFUrMTAwMDAuLlUrMTBmZmZmLilcbi8vXG4vLyBUaGUgcGFydCBvZiB0aGUgaW5kZXgtMiB0YWJsZSBmb3Igc3VwcGxlbWVudGFyeSBjb2RlIHBvaW50cyBzdGFydHNcbi8vIGFmdGVyIHRoaXMgaW5kZXgtMSB0YWJsZS5cbi8vXG4vLyBCb3RoIHRoZSBpbmRleC0xIHRhYmxlIGFuZCB0aGUgZm9sbG93aW5nIHBhcnQgb2YgdGhlIGluZGV4LTIgdGFibGVcbi8vIGFyZSBvbWl0dGVkIGNvbXBsZXRlbHkgaWYgdGhlcmUgaXMgb25seSBCTVAgZGF0YS5cbmNvbnN0IElOREVYXzFfT0ZGU0VUID0gVVRGOF8yQl9JTkRFWF8yX09GRlNFVCArIFVURjhfMkJfSU5ERVhfMl9MRU5HVEg7XG5cbi8vIFRoZSBhbGlnbm1lbnQgc2l6ZSBvZiBhIGRhdGEgYmxvY2suIEFsc28gdGhlIGdyYW51bGFyaXR5IGZvciBjb21wYWN0aW9uLlxuY29uc3QgREFUQV9HUkFOVUxBUklUWSA9IDEgPDwgSU5ERVhfU0hJRlQ7XG5cbmNsYXNzIFVuaWNvZGVUcmllIHtcbiAgY29uc3RydWN0b3IoZGF0YSkge1xuICAgIGNvbnN0IGlzQnVmZmVyID0gKHR5cGVvZiBkYXRhLnJlYWRVSW50MzJCRSA9PT0gJ2Z1bmN0aW9uJykgJiYgKHR5cGVvZiBkYXRhLnNsaWNlID09PSAnZnVuY3Rpb24nKTtcblxuICAgIGlmIChpc0J1ZmZlciB8fCBkYXRhIGluc3RhbmNlb2YgVWludDhBcnJheSkge1xuICAgICAgLy8gcmVhZCBiaW5hcnkgZm9ybWF0XG4gICAgICBsZXQgdW5jb21wcmVzc2VkTGVuZ3RoO1xuICAgICAgaWYgKGlzQnVmZmVyKSB7XG4gICAgICAgIHRoaXMuaGlnaFN0YXJ0ID0gZGF0YS5yZWFkVUludDMyTEUoMCk7XG4gICAgICAgIHRoaXMuZXJyb3JWYWx1ZSA9IGRhdGEucmVhZFVJbnQzMkxFKDQpO1xuICAgICAgICB1bmNvbXByZXNzZWRMZW5ndGggPSBkYXRhLnJlYWRVSW50MzJMRSg4KTtcbiAgICAgICAgZGF0YSA9IGRhdGEuc2xpY2UoMTIpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdmlldyA9IG5ldyBEYXRhVmlldyhkYXRhLmJ1ZmZlcik7XG4gICAgICAgIHRoaXMuaGlnaFN0YXJ0ID0gdmlldy5nZXRVaW50MzIoMCwgdHJ1ZSk7XG4gICAgICAgIHRoaXMuZXJyb3JWYWx1ZSA9IHZpZXcuZ2V0VWludDMyKDQsIHRydWUpO1xuICAgICAgICB1bmNvbXByZXNzZWRMZW5ndGggPSB2aWV3LmdldFVpbnQzMig4LCB0cnVlKTtcbiAgICAgICAgZGF0YSA9IGRhdGEuc3ViYXJyYXkoMTIpO1xuICAgICAgfVxuXG4gICAgICAvLyBkb3VibGUgaW5mbGF0ZSB0aGUgYWN0dWFsIHRyaWUgZGF0YVxuICAgICAgZGF0YSA9IGluZmxhdGUoZGF0YSwgbmV3IFVpbnQ4QXJyYXkodW5jb21wcmVzc2VkTGVuZ3RoKSk7XG4gICAgICBkYXRhID0gaW5mbGF0ZShkYXRhLCBuZXcgVWludDhBcnJheSh1bmNvbXByZXNzZWRMZW5ndGgpKTtcblxuICAgICAgLy8gc3dhcCBieXRlcyBmcm9tIGxpdHRsZS1lbmRpYW5cbiAgICAgIHN3YXAzMkxFKGRhdGEpO1xuXG4gICAgICB0aGlzLmRhdGEgPSBuZXcgVWludDMyQXJyYXkoZGF0YS5idWZmZXIpO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHByZS1wYXJzZWQgZGF0YVxuICAgICAgKHsgZGF0YTogdGhpcy5kYXRhLCBoaWdoU3RhcnQ6IHRoaXMuaGlnaFN0YXJ0LCBlcnJvclZhbHVlOiB0aGlzLmVycm9yVmFsdWUgfSA9IGRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIGdldChjb2RlUG9pbnQpIHtcbiAgICBsZXQgaW5kZXg7XG4gICAgaWYgKChjb2RlUG9pbnQgPCAwKSB8fCAoY29kZVBvaW50ID4gMHgxMGZmZmYpKSB7XG4gICAgICByZXR1cm4gdGhpcy5lcnJvclZhbHVlO1xuICAgIH1cblxuICAgIGlmICgoY29kZVBvaW50IDwgMHhkODAwKSB8fCAoKGNvZGVQb2ludCA+IDB4ZGJmZikgJiYgKGNvZGVQb2ludCA8PSAweGZmZmYpKSkge1xuICAgICAgLy8gT3JkaW5hcnkgQk1QIGNvZGUgcG9pbnQsIGV4Y2x1ZGluZyBsZWFkaW5nIHN1cnJvZ2F0ZXMuXG4gICAgICAvLyBCTVAgdXNlcyBhIHNpbmdsZSBsZXZlbCBsb29rdXAuICBCTVAgaW5kZXggc3RhcnRzIGF0IG9mZnNldCAwIGluIHRoZSBpbmRleC5cbiAgICAgIC8vIGRhdGEgaXMgc3RvcmVkIGluIHRoZSBpbmRleCBhcnJheSBpdHNlbGYuXG4gICAgICBpbmRleCA9ICh0aGlzLmRhdGFbY29kZVBvaW50ID4+IFNISUZUXzJdIDw8IElOREVYX1NISUZUKSArIChjb2RlUG9pbnQgJiBEQVRBX01BU0spO1xuICAgICAgcmV0dXJuIHRoaXMuZGF0YVtpbmRleF07XG4gICAgfVxuXG4gICAgaWYgKGNvZGVQb2ludCA8PSAweGZmZmYpIHtcbiAgICAgIC8vIExlYWQgU3Vycm9nYXRlIENvZGUgUG9pbnQuICBBIFNlcGFyYXRlIGluZGV4IHNlY3Rpb24gaXMgc3RvcmVkIGZvclxuICAgICAgLy8gbGVhZCBzdXJyb2dhdGUgY29kZSB1bml0cyBhbmQgY29kZSBwb2ludHMuXG4gICAgICAvLyAgIFRoZSBtYWluIGluZGV4IGhhcyB0aGUgY29kZSB1bml0IGRhdGEuXG4gICAgICAvLyAgIEZvciB0aGlzIGZ1bmN0aW9uLCB3ZSBuZWVkIHRoZSBjb2RlIHBvaW50IGRhdGEuXG4gICAgICBpbmRleCA9ICh0aGlzLmRhdGFbTFNDUF9JTkRFWF8yX09GRlNFVCArICgoY29kZVBvaW50IC0gMHhkODAwKSA+PiBTSElGVF8yKV0gPDwgSU5ERVhfU0hJRlQpICsgKGNvZGVQb2ludCAmIERBVEFfTUFTSyk7XG4gICAgICByZXR1cm4gdGhpcy5kYXRhW2luZGV4XTtcbiAgICB9XG5cbiAgICBpZiAoY29kZVBvaW50IDwgdGhpcy5oaWdoU3RhcnQpIHtcbiAgICAgIC8vIFN1cHBsZW1lbnRhbCBjb2RlIHBvaW50LCB1c2UgdHdvLWxldmVsIGxvb2t1cC5cbiAgICAgIGluZGV4ID0gdGhpcy5kYXRhWyhJTkRFWF8xX09GRlNFVCAtIE9NSVRURURfQk1QX0lOREVYXzFfTEVOR1RIKSArIChjb2RlUG9pbnQgPj4gU0hJRlRfMSldO1xuICAgICAgaW5kZXggPSB0aGlzLmRhdGFbaW5kZXggKyAoKGNvZGVQb2ludCA+PiBTSElGVF8yKSAmIElOREVYXzJfTUFTSyldO1xuICAgICAgaW5kZXggPSAoaW5kZXggPDwgSU5ERVhfU0hJRlQpICsgKGNvZGVQb2ludCAmIERBVEFfTUFTSyk7XG4gICAgICByZXR1cm4gdGhpcy5kYXRhW2luZGV4XTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5kYXRhW3RoaXMuZGF0YS5sZW5ndGggLSBEQVRBX0dSQU5VTEFSSVRZXTtcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IFVuaWNvZGVUcmllOyIsICJjb25zdCBJTklUSUFMX1NUQVRFID0gMTtcbmNvbnN0IEZBSUxfU1RBVEUgPSAwO1xuXG4vKipcbiAqIEEgU3RhdGVNYWNoaW5lIHJlcHJlc2VudHMgYSBkZXRlcm1pbmlzdGljIGZpbml0ZSBhdXRvbWF0b24uXG4gKiBJdCBjYW4gcGVyZm9ybSBtYXRjaGVzIG92ZXIgYSBzZXF1ZW5jZSBvZiB2YWx1ZXMsIHNpbWlsYXIgdG8gYSByZWd1bGFyIGV4cHJlc3Npb24uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN0YXRlTWFjaGluZSB7XG4gIGNvbnN0cnVjdG9yKGRmYSkge1xuICAgIHRoaXMuc3RhdGVUYWJsZSA9IGRmYS5zdGF0ZVRhYmxlO1xuICAgIHRoaXMuYWNjZXB0aW5nID0gZGZhLmFjY2VwdGluZztcbiAgICB0aGlzLnRhZ3MgPSBkZmEudGFncztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9iamVjdCB0aGF0IHlpZWxkcyBwYXR0ZXJuIG1hdGNoZXMgb3ZlciB0aGUgaW5wdXQgc2VxdWVuY2UuXG4gICAqIE1hdGNoZXMgYXJlIG9mIHRoZSBmb3JtIFtzdGFydEluZGV4LCBlbmRJbmRleCwgdGFnc10uXG4gICAqL1xuICBtYXRjaChzdHIpIHtcbiAgICBsZXQgc2VsZiA9IHRoaXM7XG4gICAgcmV0dXJuIHtcbiAgICAgICpbU3ltYm9sLml0ZXJhdG9yXSgpIHtcbiAgICAgICAgbGV0IHN0YXRlID0gSU5JVElBTF9TVEFURTtcbiAgICAgICAgbGV0IHN0YXJ0UnVuID0gbnVsbDtcbiAgICAgICAgbGV0IGxhc3RBY2NlcHRpbmcgPSBudWxsO1xuICAgICAgICBsZXQgbGFzdFN0YXRlID0gbnVsbDtcblxuICAgICAgICBmb3IgKGxldCBwID0gMDsgcCA8IHN0ci5sZW5ndGg7IHArKykge1xuICAgICAgICAgIGxldCBjID0gc3RyW3BdO1xuXG4gICAgICAgICAgbGFzdFN0YXRlID0gc3RhdGU7XG4gICAgICAgICAgc3RhdGUgPSBzZWxmLnN0YXRlVGFibGVbc3RhdGVdW2NdO1xuXG4gICAgICAgICAgaWYgKHN0YXRlID09PSBGQUlMX1NUQVRFKSB7XG4gICAgICAgICAgICAvLyB5aWVsZCB0aGUgbGFzdCBtYXRjaCBpZiBhbnlcbiAgICAgICAgICAgIGlmIChzdGFydFJ1biAhPSBudWxsICYmIGxhc3RBY2NlcHRpbmcgIT0gbnVsbCAmJiBsYXN0QWNjZXB0aW5nID49IHN0YXJ0UnVuKSB7XG4gICAgICAgICAgICAgIHlpZWxkIFtzdGFydFJ1biwgbGFzdEFjY2VwdGluZywgc2VsZi50YWdzW2xhc3RTdGF0ZV1dO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyByZXNldCB0aGUgc3RhdGUgYXMgaWYgd2Ugc3RhcnRlZCBvdmVyIGZyb20gdGhlIGluaXRpYWwgc3RhdGVcbiAgICAgICAgICAgIHN0YXRlID0gc2VsZi5zdGF0ZVRhYmxlW0lOSVRJQUxfU1RBVEVdW2NdO1xuICAgICAgICAgICAgc3RhcnRSdW4gPSBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIHN0YXJ0IGEgcnVuIGlmIG5vdCBpbiB0aGUgZmFpbHVyZSBzdGF0ZVxuICAgICAgICAgIGlmIChzdGF0ZSAhPT0gRkFJTF9TVEFURSAmJiBzdGFydFJ1biA9PSBudWxsKSB7XG4gICAgICAgICAgICBzdGFydFJ1biA9IHA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gaWYgYWNjZXB0aW5nLCBtYXJrIHRoZSBwb3RlbnRpYWwgbWF0Y2ggZW5kXG4gICAgICAgICAgaWYgKHNlbGYuYWNjZXB0aW5nW3N0YXRlXSkge1xuICAgICAgICAgICAgbGFzdEFjY2VwdGluZyA9IHA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gcmVzZXQgdGhlIHN0YXRlIHRvIHRoZSBpbml0aWFsIHN0YXRlIGlmIHdlIGdldCBpbnRvIHRoZSBmYWlsdXJlIHN0YXRlXG4gICAgICAgICAgaWYgKHN0YXRlID09PSBGQUlMX1NUQVRFKSB7XG4gICAgICAgICAgICBzdGF0ZSA9IElOSVRJQUxfU1RBVEU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8geWllbGQgdGhlIGxhc3QgbWF0Y2ggaWYgYW55XG4gICAgICAgIGlmIChzdGFydFJ1biAhPSBudWxsICYmIGxhc3RBY2NlcHRpbmcgIT0gbnVsbCAmJiBsYXN0QWNjZXB0aW5nID49IHN0YXJ0UnVuKSB7XG4gICAgICAgICAgeWllbGQgW3N0YXJ0UnVuLCBsYXN0QWNjZXB0aW5nLCBzZWxmLnRhZ3Nbc3RhdGVdXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRm9yIGVhY2ggbWF0Y2ggb3ZlciB0aGUgaW5wdXQgc2VxdWVuY2UsIGFjdGlvbiBmdW5jdGlvbnMgbWF0Y2hpbmdcbiAgICogdGhlIHRhZyBkZWZpbml0aW9ucyBpbiB0aGUgaW5wdXQgcGF0dGVybiBhcmUgY2FsbGVkIHdpdGggdGhlIHN0YXJ0SW5kZXgsXG4gICAqIGVuZEluZGV4LCBhbmQgc3ViLW1hdGNoIHNlcXVlbmNlLlxuICAgKi9cbiAgYXBwbHkoc3RyLCBhY3Rpb25zKSB7XG4gICAgZm9yIChsZXQgW3N0YXJ0LCBlbmQsIHRhZ3NdIG9mIHRoaXMubWF0Y2goc3RyKSkge1xuICAgICAgZm9yIChsZXQgdGFnIG9mIHRhZ3MpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBhY3Rpb25zW3RhZ10gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICBhY3Rpb25zW3RhZ10oc3RhcnQsIGVuZCwgc3RyLnNsaWNlKHN0YXJ0LCBlbmQgKyAxKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsICJ2YXIgY2xvbmUgPSAoZnVuY3Rpb24oKSB7XG4ndXNlIHN0cmljdCc7XG5cbmZ1bmN0aW9uIF9pbnN0YW5jZW9mKG9iaiwgdHlwZSkge1xuICByZXR1cm4gdHlwZSAhPSBudWxsICYmIG9iaiBpbnN0YW5jZW9mIHR5cGU7XG59XG5cbnZhciBuYXRpdmVNYXA7XG50cnkge1xuICBuYXRpdmVNYXAgPSBNYXA7XG59IGNhdGNoKF8pIHtcbiAgLy8gbWF5YmUgYSByZWZlcmVuY2UgZXJyb3IgYmVjYXVzZSBubyBgTWFwYC4gR2l2ZSBpdCBhIGR1bW15IHZhbHVlIHRoYXQgbm9cbiAgLy8gdmFsdWUgd2lsbCBldmVyIGJlIGFuIGluc3RhbmNlb2YuXG4gIG5hdGl2ZU1hcCA9IGZ1bmN0aW9uKCkge307XG59XG5cbnZhciBuYXRpdmVTZXQ7XG50cnkge1xuICBuYXRpdmVTZXQgPSBTZXQ7XG59IGNhdGNoKF8pIHtcbiAgbmF0aXZlU2V0ID0gZnVuY3Rpb24oKSB7fTtcbn1cblxudmFyIG5hdGl2ZVByb21pc2U7XG50cnkge1xuICBuYXRpdmVQcm9taXNlID0gUHJvbWlzZTtcbn0gY2F0Y2goXykge1xuICBuYXRpdmVQcm9taXNlID0gZnVuY3Rpb24oKSB7fTtcbn1cblxuLyoqXG4gKiBDbG9uZXMgKGNvcGllcykgYW4gT2JqZWN0IHVzaW5nIGRlZXAgY29weWluZy5cbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIHN1cHBvcnRzIGNpcmN1bGFyIHJlZmVyZW5jZXMgYnkgZGVmYXVsdCwgYnV0IGlmIHlvdSBhcmUgY2VydGFpblxuICogdGhlcmUgYXJlIG5vIGNpcmN1bGFyIHJlZmVyZW5jZXMgaW4geW91ciBvYmplY3QsIHlvdSBjYW4gc2F2ZSBzb21lIENQVSB0aW1lXG4gKiBieSBjYWxsaW5nIGNsb25lKG9iaiwgZmFsc2UpLlxuICpcbiAqIENhdXRpb246IGlmIGBjaXJjdWxhcmAgaXMgZmFsc2UgYW5kIGBwYXJlbnRgIGNvbnRhaW5zIGNpcmN1bGFyIHJlZmVyZW5jZXMsXG4gKiB5b3VyIHByb2dyYW0gbWF5IGVudGVyIGFuIGluZmluaXRlIGxvb3AgYW5kIGNyYXNoLlxuICpcbiAqIEBwYXJhbSBgcGFyZW50YCAtIHRoZSBvYmplY3QgdG8gYmUgY2xvbmVkXG4gKiBAcGFyYW0gYGNpcmN1bGFyYCAtIHNldCB0byB0cnVlIGlmIHRoZSBvYmplY3QgdG8gYmUgY2xvbmVkIG1heSBjb250YWluXG4gKiAgICBjaXJjdWxhciByZWZlcmVuY2VzLiAob3B0aW9uYWwgLSB0cnVlIGJ5IGRlZmF1bHQpXG4gKiBAcGFyYW0gYGRlcHRoYCAtIHNldCB0byBhIG51bWJlciBpZiB0aGUgb2JqZWN0IGlzIG9ubHkgdG8gYmUgY2xvbmVkIHRvXG4gKiAgICBhIHBhcnRpY3VsYXIgZGVwdGguIChvcHRpb25hbCAtIGRlZmF1bHRzIHRvIEluZmluaXR5KVxuICogQHBhcmFtIGBwcm90b3R5cGVgIC0gc2V0cyB0aGUgcHJvdG90eXBlIHRvIGJlIHVzZWQgd2hlbiBjbG9uaW5nIGFuIG9iamVjdC5cbiAqICAgIChvcHRpb25hbCAtIGRlZmF1bHRzIHRvIHBhcmVudCBwcm90b3R5cGUpLlxuICogQHBhcmFtIGBpbmNsdWRlTm9uRW51bWVyYWJsZWAgLSBzZXQgdG8gdHJ1ZSBpZiB0aGUgbm9uLWVudW1lcmFibGUgcHJvcGVydGllc1xuICogICAgc2hvdWxkIGJlIGNsb25lZCBhcyB3ZWxsLiBOb24tZW51bWVyYWJsZSBwcm9wZXJ0aWVzIG9uIHRoZSBwcm90b3R5cGVcbiAqICAgIGNoYWluIHdpbGwgYmUgaWdub3JlZC4gKG9wdGlvbmFsIC0gZmFsc2UgYnkgZGVmYXVsdClcbiovXG5mdW5jdGlvbiBjbG9uZShwYXJlbnQsIGNpcmN1bGFyLCBkZXB0aCwgcHJvdG90eXBlLCBpbmNsdWRlTm9uRW51bWVyYWJsZSkge1xuICBpZiAodHlwZW9mIGNpcmN1bGFyID09PSAnb2JqZWN0Jykge1xuICAgIGRlcHRoID0gY2lyY3VsYXIuZGVwdGg7XG4gICAgcHJvdG90eXBlID0gY2lyY3VsYXIucHJvdG90eXBlO1xuICAgIGluY2x1ZGVOb25FbnVtZXJhYmxlID0gY2lyY3VsYXIuaW5jbHVkZU5vbkVudW1lcmFibGU7XG4gICAgY2lyY3VsYXIgPSBjaXJjdWxhci5jaXJjdWxhcjtcbiAgfVxuICAvLyBtYWludGFpbiB0d28gYXJyYXlzIGZvciBjaXJjdWxhciByZWZlcmVuY2VzLCB3aGVyZSBjb3JyZXNwb25kaW5nIHBhcmVudHNcbiAgLy8gYW5kIGNoaWxkcmVuIGhhdmUgdGhlIHNhbWUgaW5kZXhcbiAgdmFyIGFsbFBhcmVudHMgPSBbXTtcbiAgdmFyIGFsbENoaWxkcmVuID0gW107XG5cbiAgdmFyIHVzZUJ1ZmZlciA9IHR5cGVvZiBCdWZmZXIgIT0gJ3VuZGVmaW5lZCc7XG5cbiAgaWYgKHR5cGVvZiBjaXJjdWxhciA9PSAndW5kZWZpbmVkJylcbiAgICBjaXJjdWxhciA9IHRydWU7XG5cbiAgaWYgKHR5cGVvZiBkZXB0aCA9PSAndW5kZWZpbmVkJylcbiAgICBkZXB0aCA9IEluZmluaXR5O1xuXG4gIC8vIHJlY3Vyc2UgdGhpcyBmdW5jdGlvbiBzbyB3ZSBkb24ndCByZXNldCBhbGxQYXJlbnRzIGFuZCBhbGxDaGlsZHJlblxuICBmdW5jdGlvbiBfY2xvbmUocGFyZW50LCBkZXB0aCkge1xuICAgIC8vIGNsb25pbmcgbnVsbCBhbHdheXMgcmV0dXJucyBudWxsXG4gICAgaWYgKHBhcmVudCA9PT0gbnVsbClcbiAgICAgIHJldHVybiBudWxsO1xuXG4gICAgaWYgKGRlcHRoID09PSAwKVxuICAgICAgcmV0dXJuIHBhcmVudDtcblxuICAgIHZhciBjaGlsZDtcbiAgICB2YXIgcHJvdG87XG4gICAgaWYgKHR5cGVvZiBwYXJlbnQgIT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBwYXJlbnQ7XG4gICAgfVxuXG4gICAgaWYgKF9pbnN0YW5jZW9mKHBhcmVudCwgbmF0aXZlTWFwKSkge1xuICAgICAgY2hpbGQgPSBuZXcgbmF0aXZlTWFwKCk7XG4gICAgfSBlbHNlIGlmIChfaW5zdGFuY2VvZihwYXJlbnQsIG5hdGl2ZVNldCkpIHtcbiAgICAgIGNoaWxkID0gbmV3IG5hdGl2ZVNldCgpO1xuICAgIH0gZWxzZSBpZiAoX2luc3RhbmNlb2YocGFyZW50LCBuYXRpdmVQcm9taXNlKSkge1xuICAgICAgY2hpbGQgPSBuZXcgbmF0aXZlUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIHBhcmVudC50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgcmVzb2x2ZShfY2xvbmUodmFsdWUsIGRlcHRoIC0gMSkpO1xuICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHtcbiAgICAgICAgICByZWplY3QoX2Nsb25lKGVyciwgZGVwdGggLSAxKSk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChjbG9uZS5fX2lzQXJyYXkocGFyZW50KSkge1xuICAgICAgY2hpbGQgPSBbXTtcbiAgICB9IGVsc2UgaWYgKGNsb25lLl9faXNSZWdFeHAocGFyZW50KSkge1xuICAgICAgY2hpbGQgPSBuZXcgUmVnRXhwKHBhcmVudC5zb3VyY2UsIF9fZ2V0UmVnRXhwRmxhZ3MocGFyZW50KSk7XG4gICAgICBpZiAocGFyZW50Lmxhc3RJbmRleCkgY2hpbGQubGFzdEluZGV4ID0gcGFyZW50Lmxhc3RJbmRleDtcbiAgICB9IGVsc2UgaWYgKGNsb25lLl9faXNEYXRlKHBhcmVudCkpIHtcbiAgICAgIGNoaWxkID0gbmV3IERhdGUocGFyZW50LmdldFRpbWUoKSk7XG4gICAgfSBlbHNlIGlmICh1c2VCdWZmZXIgJiYgQnVmZmVyLmlzQnVmZmVyKHBhcmVudCkpIHtcbiAgICAgIGlmIChCdWZmZXIuYWxsb2NVbnNhZmUpIHtcbiAgICAgICAgLy8gTm9kZS5qcyA+PSA0LjUuMFxuICAgICAgICBjaGlsZCA9IEJ1ZmZlci5hbGxvY1Vuc2FmZShwYXJlbnQubGVuZ3RoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE9sZGVyIE5vZGUuanMgdmVyc2lvbnNcbiAgICAgICAgY2hpbGQgPSBuZXcgQnVmZmVyKHBhcmVudC5sZW5ndGgpO1xuICAgICAgfVxuICAgICAgcGFyZW50LmNvcHkoY2hpbGQpO1xuICAgICAgcmV0dXJuIGNoaWxkO1xuICAgIH0gZWxzZSBpZiAoX2luc3RhbmNlb2YocGFyZW50LCBFcnJvcikpIHtcbiAgICAgIGNoaWxkID0gT2JqZWN0LmNyZWF0ZShwYXJlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodHlwZW9mIHByb3RvdHlwZSA9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihwYXJlbnQpO1xuICAgICAgICBjaGlsZCA9IE9iamVjdC5jcmVhdGUocHJvdG8pO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNoaWxkID0gT2JqZWN0LmNyZWF0ZShwcm90b3R5cGUpO1xuICAgICAgICBwcm90byA9IHByb3RvdHlwZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY2lyY3VsYXIpIHtcbiAgICAgIHZhciBpbmRleCA9IGFsbFBhcmVudHMuaW5kZXhPZihwYXJlbnQpO1xuXG4gICAgICBpZiAoaW5kZXggIT0gLTEpIHtcbiAgICAgICAgcmV0dXJuIGFsbENoaWxkcmVuW2luZGV4XTtcbiAgICAgIH1cbiAgICAgIGFsbFBhcmVudHMucHVzaChwYXJlbnQpO1xuICAgICAgYWxsQ2hpbGRyZW4ucHVzaChjaGlsZCk7XG4gICAgfVxuXG4gICAgaWYgKF9pbnN0YW5jZW9mKHBhcmVudCwgbmF0aXZlTWFwKSkge1xuICAgICAgcGFyZW50LmZvckVhY2goZnVuY3Rpb24odmFsdWUsIGtleSkge1xuICAgICAgICB2YXIga2V5Q2hpbGQgPSBfY2xvbmUoa2V5LCBkZXB0aCAtIDEpO1xuICAgICAgICB2YXIgdmFsdWVDaGlsZCA9IF9jbG9uZSh2YWx1ZSwgZGVwdGggLSAxKTtcbiAgICAgICAgY2hpbGQuc2V0KGtleUNoaWxkLCB2YWx1ZUNoaWxkKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoX2luc3RhbmNlb2YocGFyZW50LCBuYXRpdmVTZXQpKSB7XG4gICAgICBwYXJlbnQuZm9yRWFjaChmdW5jdGlvbih2YWx1ZSkge1xuICAgICAgICB2YXIgZW50cnlDaGlsZCA9IF9jbG9uZSh2YWx1ZSwgZGVwdGggLSAxKTtcbiAgICAgICAgY2hpbGQuYWRkKGVudHJ5Q2hpbGQpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaSBpbiBwYXJlbnQpIHtcbiAgICAgIHZhciBhdHRycztcbiAgICAgIGlmIChwcm90bykge1xuICAgICAgICBhdHRycyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocHJvdG8sIGkpO1xuICAgICAgfVxuXG4gICAgICBpZiAoYXR0cnMgJiYgYXR0cnMuc2V0ID09IG51bGwpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBjaGlsZFtpXSA9IF9jbG9uZShwYXJlbnRbaV0sIGRlcHRoIC0gMSk7XG4gICAgfVxuXG4gICAgaWYgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpIHtcbiAgICAgIHZhciBzeW1ib2xzID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhwYXJlbnQpO1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzeW1ib2xzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIC8vIERvbid0IG5lZWQgdG8gd29ycnkgYWJvdXQgY2xvbmluZyBhIHN5bWJvbCBiZWNhdXNlIGl0IGlzIGEgcHJpbWl0aXZlLFxuICAgICAgICAvLyBsaWtlIGEgbnVtYmVyIG9yIHN0cmluZy5cbiAgICAgICAgdmFyIHN5bWJvbCA9IHN5bWJvbHNbaV07XG4gICAgICAgIHZhciBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihwYXJlbnQsIHN5bWJvbCk7XG4gICAgICAgIGlmIChkZXNjcmlwdG9yICYmICFkZXNjcmlwdG9yLmVudW1lcmFibGUgJiYgIWluY2x1ZGVOb25FbnVtZXJhYmxlKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgY2hpbGRbc3ltYm9sXSA9IF9jbG9uZShwYXJlbnRbc3ltYm9sXSwgZGVwdGggLSAxKTtcbiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLmVudW1lcmFibGUpIHtcbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoY2hpbGQsIHN5bWJvbCwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogZmFsc2VcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChpbmNsdWRlTm9uRW51bWVyYWJsZSkge1xuICAgICAgdmFyIGFsbFByb3BlcnR5TmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwYXJlbnQpO1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhbGxQcm9wZXJ0eU5hbWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBwcm9wZXJ0eU5hbWUgPSBhbGxQcm9wZXJ0eU5hbWVzW2ldO1xuICAgICAgICB2YXIgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocGFyZW50LCBwcm9wZXJ0eU5hbWUpO1xuICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLmVudW1lcmFibGUpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBjaGlsZFtwcm9wZXJ0eU5hbWVdID0gX2Nsb25lKHBhcmVudFtwcm9wZXJ0eU5hbWVdLCBkZXB0aCAtIDEpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoY2hpbGQsIHByb3BlcnR5TmFtZSwge1xuICAgICAgICAgIGVudW1lcmFibGU6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjaGlsZDtcbiAgfVxuXG4gIHJldHVybiBfY2xvbmUocGFyZW50LCBkZXB0aCk7XG59XG5cbi8qKlxuICogU2ltcGxlIGZsYXQgY2xvbmUgdXNpbmcgcHJvdG90eXBlLCBhY2NlcHRzIG9ubHkgb2JqZWN0cywgdXNlZnVsbCBmb3IgcHJvcGVydHlcbiAqIG92ZXJyaWRlIG9uIEZMQVQgY29uZmlndXJhdGlvbiBvYmplY3QgKG5vIG5lc3RlZCBwcm9wcykuXG4gKlxuICogVVNFIFdJVEggQ0FVVElPTiEgVGhpcyBtYXkgbm90IGJlaGF2ZSBhcyB5b3Ugd2lzaCBpZiB5b3UgZG8gbm90IGtub3cgaG93IHRoaXNcbiAqIHdvcmtzLlxuICovXG5jbG9uZS5jbG9uZVByb3RvdHlwZSA9IGZ1bmN0aW9uIGNsb25lUHJvdG90eXBlKHBhcmVudCkge1xuICBpZiAocGFyZW50ID09PSBudWxsKVxuICAgIHJldHVybiBudWxsO1xuXG4gIHZhciBjID0gZnVuY3Rpb24gKCkge307XG4gIGMucHJvdG90eXBlID0gcGFyZW50O1xuICByZXR1cm4gbmV3IGMoKTtcbn07XG5cbi8vIHByaXZhdGUgdXRpbGl0eSBmdW5jdGlvbnNcblxuZnVuY3Rpb24gX19vYmpUb1N0cihvKSB7XG4gIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobyk7XG59XG5jbG9uZS5fX29ialRvU3RyID0gX19vYmpUb1N0cjtcblxuZnVuY3Rpb24gX19pc0RhdGUobykge1xuICByZXR1cm4gdHlwZW9mIG8gPT09ICdvYmplY3QnICYmIF9fb2JqVG9TdHIobykgPT09ICdbb2JqZWN0IERhdGVdJztcbn1cbmNsb25lLl9faXNEYXRlID0gX19pc0RhdGU7XG5cbmZ1bmN0aW9uIF9faXNBcnJheShvKSB7XG4gIHJldHVybiB0eXBlb2YgbyA9PT0gJ29iamVjdCcgJiYgX19vYmpUb1N0cihvKSA9PT0gJ1tvYmplY3QgQXJyYXldJztcbn1cbmNsb25lLl9faXNBcnJheSA9IF9faXNBcnJheTtcblxuZnVuY3Rpb24gX19pc1JlZ0V4cChvKSB7XG4gIHJldHVybiB0eXBlb2YgbyA9PT0gJ29iamVjdCcgJiYgX19vYmpUb1N0cihvKSA9PT0gJ1tvYmplY3QgUmVnRXhwXSc7XG59XG5jbG9uZS5fX2lzUmVnRXhwID0gX19pc1JlZ0V4cDtcblxuZnVuY3Rpb24gX19nZXRSZWdFeHBGbGFncyhyZSkge1xuICB2YXIgZmxhZ3MgPSAnJztcbiAgaWYgKHJlLmdsb2JhbCkgZmxhZ3MgKz0gJ2cnO1xuICBpZiAocmUuaWdub3JlQ2FzZSkgZmxhZ3MgKz0gJ2knO1xuICBpZiAocmUubXVsdGlsaW5lKSBmbGFncyArPSAnbSc7XG4gIHJldHVybiBmbGFncztcbn1cbmNsb25lLl9fZ2V0UmVnRXhwRmxhZ3MgPSBfX2dldFJlZ0V4cEZsYWdzO1xuXG5yZXR1cm4gY2xvbmU7XG59KSgpO1xuXG5pZiAodHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSBjbG9uZTtcbn1cbiIsICJmdW5jdGlvbiBCcm90bGlJbnB1dChidWZmZXIpIHtcbiAgdGhpcy5idWZmZXIgPSBidWZmZXI7XG4gIHRoaXMucG9zID0gMDtcbn1cblxuQnJvdGxpSW5wdXQucHJvdG90eXBlLnJlYWQgPSBmdW5jdGlvbihidWYsIGksIGNvdW50KSB7XG4gIGlmICh0aGlzLnBvcyArIGNvdW50ID4gdGhpcy5idWZmZXIubGVuZ3RoKSB7XG4gICAgY291bnQgPSB0aGlzLmJ1ZmZlci5sZW5ndGggLSB0aGlzLnBvcztcbiAgfVxuICBcbiAgZm9yICh2YXIgcCA9IDA7IHAgPCBjb3VudDsgcCsrKVxuICAgIGJ1ZltpICsgcF0gPSB0aGlzLmJ1ZmZlclt0aGlzLnBvcyArIHBdO1xuICBcbiAgdGhpcy5wb3MgKz0gY291bnQ7XG4gIHJldHVybiBjb3VudDtcbn1cblxuZXhwb3J0cy5Ccm90bGlJbnB1dCA9IEJyb3RsaUlucHV0O1xuXG5mdW5jdGlvbiBCcm90bGlPdXRwdXQoYnVmKSB7XG4gIHRoaXMuYnVmZmVyID0gYnVmO1xuICB0aGlzLnBvcyA9IDA7XG59XG5cbkJyb3RsaU91dHB1dC5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihidWYsIGNvdW50KSB7XG4gIGlmICh0aGlzLnBvcyArIGNvdW50ID4gdGhpcy5idWZmZXIubGVuZ3RoKVxuICAgIHRocm93IG5ldyBFcnJvcignT3V0cHV0IGJ1ZmZlciBpcyBub3QgbGFyZ2UgZW5vdWdoJyk7XG4gIFxuICB0aGlzLmJ1ZmZlci5zZXQoYnVmLnN1YmFycmF5KDAsIGNvdW50KSwgdGhpcy5wb3MpO1xuICB0aGlzLnBvcyArPSBjb3VudDtcbiAgcmV0dXJuIGNvdW50O1xufTtcblxuZXhwb3J0cy5Ccm90bGlPdXRwdXQgPSBCcm90bGlPdXRwdXQ7XG4iLCAiLyogQ29weXJpZ2h0IDIwMTMgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cblxuICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuICAgQml0IHJlYWRpbmcgaGVscGVyc1xuKi9cblxudmFyIEJST1RMSV9SRUFEX1NJWkUgPSA0MDk2O1xudmFyIEJST1RMSV9JQlVGX1NJWkUgPSAgKDIgKiBCUk9UTElfUkVBRF9TSVpFICsgMzIpO1xudmFyIEJST1RMSV9JQlVGX01BU0sgPSAgKDIgKiBCUk9UTElfUkVBRF9TSVpFIC0gMSk7XG5cbnZhciBrQml0TWFzayA9IG5ldyBVaW50MzJBcnJheShbXG4gIDAsIDEsIDMsIDcsIDE1LCAzMSwgNjMsIDEyNywgMjU1LCA1MTEsIDEwMjMsIDIwNDcsIDQwOTUsIDgxOTEsIDE2MzgzLCAzMjc2NyxcbiAgNjU1MzUsIDEzMTA3MSwgMjYyMTQzLCA1MjQyODcsIDEwNDg1NzUsIDIwOTcxNTEsIDQxOTQzMDMsIDgzODg2MDcsIDE2Nzc3MjE1XG5dKTtcblxuLyogSW5wdXQgYnl0ZSBidWZmZXIsIGNvbnNpc3Qgb2YgYSByaW5nYnVmZmVyIGFuZCBhIFwic2xhY2tcIiByZWdpb24gd2hlcmUgKi9cbi8qIGJ5dGVzIGZyb20gdGhlIHN0YXJ0IG9mIHRoZSByaW5nYnVmZmVyIGFyZSBjb3BpZWQuICovXG5mdW5jdGlvbiBCcm90bGlCaXRSZWFkZXIoaW5wdXQpIHtcbiAgdGhpcy5idWZfID0gbmV3IFVpbnQ4QXJyYXkoQlJPVExJX0lCVUZfU0laRSk7XG4gIHRoaXMuaW5wdXRfID0gaW5wdXQ7ICAgIC8qIGlucHV0IGNhbGxiYWNrICovXG4gIFxuICB0aGlzLnJlc2V0KCk7XG59XG5cbkJyb3RsaUJpdFJlYWRlci5SRUFEX1NJWkUgPSBCUk9UTElfUkVBRF9TSVpFO1xuQnJvdGxpQml0UmVhZGVyLklCVUZfTUFTSyA9IEJST1RMSV9JQlVGX01BU0s7XG5cbkJyb3RsaUJpdFJlYWRlci5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbigpIHtcbiAgdGhpcy5idWZfcHRyXyA9IDA7ICAgICAgLyogbmV4dCBpbnB1dCB3aWxsIHdyaXRlIGhlcmUgKi9cbiAgdGhpcy52YWxfID0gMDsgICAgICAgICAgLyogcHJlLWZldGNoZWQgYml0cyAqL1xuICB0aGlzLnBvc18gPSAwOyAgICAgICAgICAvKiBieXRlIHBvc2l0aW9uIGluIHN0cmVhbSAqL1xuICB0aGlzLmJpdF9wb3NfID0gMDsgICAgICAvKiBjdXJyZW50IGJpdC1yZWFkaW5nIHBvc2l0aW9uIGluIHZhbF8gKi9cbiAgdGhpcy5iaXRfZW5kX3Bvc18gPSAwOyAgLyogYml0LXJlYWRpbmcgZW5kIHBvc2l0aW9uIGZyb20gTFNCIG9mIHZhbF8gKi9cbiAgdGhpcy5lb3NfID0gMDsgICAgICAgICAgLyogaW5wdXQgc3RyZWFtIGlzIGZpbmlzaGVkICovXG4gIFxuICB0aGlzLnJlYWRNb3JlSW5wdXQoKTtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCA0OyBpKyspIHtcbiAgICB0aGlzLnZhbF8gfD0gdGhpcy5idWZfW3RoaXMucG9zX10gPDwgKDggKiBpKTtcbiAgICArK3RoaXMucG9zXztcbiAgfVxuICBcbiAgcmV0dXJuIHRoaXMuYml0X2VuZF9wb3NfID4gMDtcbn07XG5cbi8qIEZpbGxzIHVwIHRoZSBpbnB1dCByaW5nYnVmZmVyIGJ5IGNhbGxpbmcgdGhlIGlucHV0IGNhbGxiYWNrLlxuXG4gICBEb2VzIG5vdGhpbmcgaWYgdGhlcmUgYXJlIGF0IGxlYXN0IDMyIGJ5dGVzIHByZXNlbnQgYWZ0ZXIgY3VycmVudCBwb3NpdGlvbi5cblxuICAgUmV0dXJucyAwIGlmIGVpdGhlcjpcbiAgICAtIHRoZSBpbnB1dCBjYWxsYmFjayByZXR1cm5lZCBhbiBlcnJvciwgb3JcbiAgICAtIHRoZXJlIGlzIG5vIG1vcmUgaW5wdXQgYW5kIHRoZSBwb3NpdGlvbiBpcyBwYXN0IHRoZSBlbmQgb2YgdGhlIHN0cmVhbS5cblxuICAgQWZ0ZXIgZW5jb3VudGVyaW5nIHRoZSBlbmQgb2YgdGhlIGlucHV0IHN0cmVhbSwgMzIgYWRkaXRpb25hbCB6ZXJvIGJ5dGVzIGFyZVxuICAgY29waWVkIHRvIHRoZSByaW5nYnVmZmVyLCB0aGVyZWZvcmUgaXQgaXMgc2FmZSB0byBjYWxsIHRoaXMgZnVuY3Rpb24gYWZ0ZXJcbiAgIGV2ZXJ5IDMyIGJ5dGVzIG9mIGlucHV0IGlzIHJlYWQuXG4qL1xuQnJvdGxpQml0UmVhZGVyLnByb3RvdHlwZS5yZWFkTW9yZUlucHV0ID0gZnVuY3Rpb24oKSB7XG4gIGlmICh0aGlzLmJpdF9lbmRfcG9zXyA+IDI1Nikge1xuICAgIHJldHVybjtcbiAgfSBlbHNlIGlmICh0aGlzLmVvc18pIHtcbiAgICBpZiAodGhpcy5iaXRfcG9zXyA+IHRoaXMuYml0X2VuZF9wb3NfKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmV4cGVjdGVkIGVuZCBvZiBpbnB1dCAnICsgdGhpcy5iaXRfcG9zXyArICcgJyArIHRoaXMuYml0X2VuZF9wb3NfKTtcbiAgfSBlbHNlIHtcbiAgICB2YXIgZHN0ID0gdGhpcy5idWZfcHRyXztcbiAgICB2YXIgYnl0ZXNfcmVhZCA9IHRoaXMuaW5wdXRfLnJlYWQodGhpcy5idWZfLCBkc3QsIEJST1RMSV9SRUFEX1NJWkUpO1xuICAgIGlmIChieXRlc19yZWFkIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmV4cGVjdGVkIGVuZCBvZiBpbnB1dCcpO1xuICAgIH1cbiAgICBcbiAgICBpZiAoYnl0ZXNfcmVhZCA8IEJST1RMSV9SRUFEX1NJWkUpIHtcbiAgICAgIHRoaXMuZW9zXyA9IDE7XG4gICAgICAvKiBTdG9yZSAzMiBieXRlcyBvZiB6ZXJvIGFmdGVyIHRoZSBzdHJlYW0gZW5kLiAqL1xuICAgICAgZm9yICh2YXIgcCA9IDA7IHAgPCAzMjsgcCsrKVxuICAgICAgICB0aGlzLmJ1Zl9bZHN0ICsgYnl0ZXNfcmVhZCArIHBdID0gMDtcbiAgICB9XG4gICAgXG4gICAgaWYgKGRzdCA9PT0gMCkge1xuICAgICAgLyogQ29weSB0aGUgaGVhZCBvZiB0aGUgcmluZ2J1ZmZlciB0byB0aGUgc2xhY2sgcmVnaW9uLiAqL1xuICAgICAgZm9yICh2YXIgcCA9IDA7IHAgPCAzMjsgcCsrKVxuICAgICAgICB0aGlzLmJ1Zl9bKEJST1RMSV9SRUFEX1NJWkUgPDwgMSkgKyBwXSA9IHRoaXMuYnVmX1twXTtcblxuICAgICAgdGhpcy5idWZfcHRyXyA9IEJST1RMSV9SRUFEX1NJWkU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYnVmX3B0cl8gPSAwO1xuICAgIH1cbiAgICBcbiAgICB0aGlzLmJpdF9lbmRfcG9zXyArPSBieXRlc19yZWFkIDw8IDM7XG4gIH1cbn07XG5cbi8qIEd1YXJhbnRlZXMgdGhhdCB0aGVyZSBhcmUgYXQgbGVhc3QgMjQgYml0cyBpbiB0aGUgYnVmZmVyLiAqL1xuQnJvdGxpQml0UmVhZGVyLnByb3RvdHlwZS5maWxsQml0V2luZG93ID0gZnVuY3Rpb24oKSB7ICAgIFxuICB3aGlsZSAodGhpcy5iaXRfcG9zXyA+PSA4KSB7XG4gICAgdGhpcy52YWxfID4+Pj0gODtcbiAgICB0aGlzLnZhbF8gfD0gdGhpcy5idWZfW3RoaXMucG9zXyAmIEJST1RMSV9JQlVGX01BU0tdIDw8IDI0O1xuICAgICsrdGhpcy5wb3NfO1xuICAgIHRoaXMuYml0X3Bvc18gPSB0aGlzLmJpdF9wb3NfIC0gOCA+Pj4gMDtcbiAgICB0aGlzLmJpdF9lbmRfcG9zXyA9IHRoaXMuYml0X2VuZF9wb3NfIC0gOCA+Pj4gMDtcbiAgfVxufTtcblxuLyogUmVhZHMgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgYml0cyBmcm9tIFJlYWQgQnVmZmVyLiAqL1xuQnJvdGxpQml0UmVhZGVyLnByb3RvdHlwZS5yZWFkQml0cyA9IGZ1bmN0aW9uKG5fYml0cykge1xuICBpZiAoMzIgLSB0aGlzLmJpdF9wb3NfIDwgbl9iaXRzKSB7XG4gICAgdGhpcy5maWxsQml0V2luZG93KCk7XG4gIH1cbiAgXG4gIHZhciB2YWwgPSAoKHRoaXMudmFsXyA+Pj4gdGhpcy5iaXRfcG9zXykgJiBrQml0TWFza1tuX2JpdHNdKTtcbiAgdGhpcy5iaXRfcG9zXyArPSBuX2JpdHM7XG4gIHJldHVybiB2YWw7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IEJyb3RsaUJpdFJlYWRlcjtcbiIsICIvKiBDb3B5cmlnaHQgMjAxMyBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuXG4gICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4gICBDb2xsZWN0aW9uIG9mIHN0YXRpYyBkaWN0aW9uYXJ5IHdvcmRzLlxuKi9cblxuZXhwb3J0cy5kaWN0aW9uYXJ5ID0gbmV3IFVpbnQ4QXJyYXkoW1xuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDY0LCAweDYxLFxuICAweDc0LCAweDYxLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDYzLCAweDY5LCAweDc0LCAweDc5LCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDZhLCAweDc1LCAweDczLCAweDc0LFxuICAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYyLCAweDZmLFxuICAweDY0LCAweDc5LCAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDc0LCAweDY4LFxuICAweDY1LCAweDZkLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDcwLCAweDYxLCAweDY3LFxuICAweDY1LCAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDZjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDY2LFxuICAweDcyLCAweDZmLCAweDZkLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDc1LCAweDcwLCAweDZmLCAweDZlLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY0LCAweDYxLCAweDc0LFxuICAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDZlLCAweDY1LCAweDc3LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDZlLCAweDY1LCAweDc4LCAweDc0LCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDcwLFxuICAweDZmLCAweDczLCAweDc0LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDY4LCAweDYxLFxuICAweDZlLCAweDY0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDRjLCAweDY5LCAweDZlLCAweDZiLCAweDYyLCAweDZjLCAweDZmLCAweDY3LCAweDczLCAweDY5LCAweDdhLCAweDY1LFxuICAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY4LCAweDY1LCAweDZjLCAweDY0LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDZkLFxuICAweDYxLCAweDY5LCAweDZlLCAweDc1LCAweDczLCAweDY1LCAweDcyLCAweDI3LCAweDI5LCAweDIwLCAweDJiLCAweDY4LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDZlLCAweDY0LCAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDRlLCAweDY1LCAweDc3LFxuICAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDY3LCAweDYxLCAweDZkLCAweDY1LCAweDczLFxuICAweDY1LCAweDY1LCAweDZlLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDc0LCAweDY4LCAweDc3LCAweDY1LFxuICAweDZjLCAweDZjLCAweDcwLCAweDZjLCAweDc1LCAweDczLCAweDZkLCAweDY1LCAweDZlLCAweDc1LCAweDY2LCAweDY5LCAweDZjLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY4LCAweDY5LCAweDczLFxuICAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY3LCAweDZmLCAweDZmLCAweDY0LCAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDc3LFxuICAweDYxLCAweDc5LCAweDczLCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDZhLCAweDZmLCAweDYyLCAweDczLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDcyLCAweDY5LCAweDYzLFxuICAweDY4LCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDc0LCAweDY1LCAweDYxLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZkLCAweDc5LCAweDY2LCAweDZmLCAweDZmLCAweDY0LCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc3LFxuICAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDYyLCAweDY1LFxuICAweDczLCAweDc0LCAweDY2LCAweDY5LCAweDcyLCAweDY1LCAweDUwLCAweDYxLCAweDY3LCAweDY1LCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDYxLCAweDc3LCAweDYxLCAweDc5LCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDZkLCAweDZmLCAweDc2LCAweDY1LFxuICAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDczLFxuICAweDY1LCAweDZjLCAweDY2LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDY2LCAweDY1LFxuICAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDZmLCAweDYzLCAweDZiLCAweDY5LCAweDYzLCAweDZmLFxuICAweDZlLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY4LCAweDY5LCAweDY0LCAweDY1LFxuICAweDY0LCAweDY5LCAweDY1LCAweDY0LCAweDQ4LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDc1LCAweDZjLCAweDY1LCAweDY4LFxuICAweDZmLCAweDczLCAweDc0LCAweDYxLCAweDZhLCAweDYxLCAweDc4LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDYzLCAweDZjLFxuICAweDc1LCAweDYyLCAweDZjLCAweDYxLCAweDc3LCAweDczLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY4LCAweDYxLCAweDZjLFxuICAweDY2LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDdhLCAweDZmLCAweDZlLCAweDY1LFxuICAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDU0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDcyLCAweDYxLCAweDYzLCAweDY1LCAweDYyLCAweDZjLCAweDc1LCAweDY1LCAweDY2LCAweDZmLFxuICAweDc1LCAweDcyLCAweDc3LCAweDY1LCAweDY1LCAweDZiLCAweDY2LCAweDYxLCAweDYzLCAweDY1LCAweDY4LCAweDZmLCAweDcwLFxuICAweDY1LCAweDY3LCAweDYxLCAweDc2LCAweDY1LCAweDY4LCAweDYxLCAweDcyLCAweDY0LCAweDZjLCAweDZmLCAweDczLCAweDc0LFxuICAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDcwLCAweDYxLCAweDcyLCAweDZiLCAweDZiLCAweDY1LCAweDcwLCAweDc0LCAweDcwLFxuICAweDYxLCAweDczLCAweDczLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDcyLCAweDZmLCAweDZmLCAweDZkLCAweDQ4LCAweDU0LFxuICAweDRkLCAweDRjLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDU0LCAweDc5LCAweDcwLCAweDY1LCAweDY0LCAweDZmLCAweDZlLFxuICAweDY1LCAweDczLCAweDYxLCAweDc2LCAweDY1LCAweDZiLCAweDY1LCAweDY1LCAweDcwLCAweDY2LCAweDZjLCAweDYxLCAweDY3LFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDZmLCAweDZjLCAweDY0LCAweDY2LCAweDY5LCAweDc2LCAweDY1LCAweDc0LFxuICAweDZmLCAweDZmLCAweDZiLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDc0LCAweDZmLCAweDc3LCAweDZlLCAweDZhLCAweDc1LFxuICAweDZkLCAweDcwLCAweDc0LCAweDY4LCAweDc1LCAweDczLCAweDY0LCAweDYxLCAweDcyLCAweDZiLCAweDYzLCAweDYxLCAweDcyLFxuICAweDY0LCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDc5LFxuICAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDYxLFxuICAweDc1LCAweDc0LCAweDZmLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDc0LCAweDYxLFxuICAweDZjLCAweDZiLCAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDc2LCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDY1LFxuICAweDcwLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDc0LCAweDc1LCAweDcyLCAweDZlLFxuICAweDYyLCAweDZmLCAweDcyLCAweDZlLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDY2LCAweDY1LCAweDZjLCAweDZjLCAweDcyLFxuICAweDZmLCAweDczLCAweDY1LCAweDc1LCAweDcyLCAweDZjLCAweDI4LCAweDczLCAweDZiLCAweDY5LCAweDZlLCAweDcyLCAweDZmLFxuICAweDZjLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDZkLCAweDY1LCAweDY1LCAweDc0LCAweDY3LCAweDZmLCAweDZjLCAweDY0LCAweDJlLCAweDZhLCAweDcwLCAweDY3LFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDc2LCAweDYxLCAweDcyLCAweDc5LCAweDY2LCAweDY1LCAweDZjLCAweDc0LCAweDc0LFxuICAweDY4LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDY0LCAweDY0LCAweDcyLCAweDZmLCAweDcwLCAweDU2LCAweDY5LFxuICAweDY1LCAweDc3LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDMxLCAweDJlLCAweDMwLCAweDIyLCAweDNjLCAweDJmLCAweDYxLFxuICAweDNlLCAweDczLCAweDc0LCAweDZmLCAweDcwLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDczLFxuICAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDcwLCAweDYxLCAweDYzLCAweDZiLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDcwLFxuICAweDYxLCAweDczLCAweDc0LCAweDYzLCAweDczLCAweDczLCAweDNmLCAweDY3LCAweDcyLCAweDYxLCAweDc5LCAweDZkLCAweDY1LFxuICAweDYxLCAweDZlLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDcyLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDY4LCAweDZmLFxuICAweDc0LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDYxLCAweDY5LCAweDY0LCAweDcyLCAweDZmLCAweDYxLCAweDY0LFxuICAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDY2LCAweDY1LCAweDY1LCAweDZjLCAweDZhLCAweDZmLCAweDY4LCAweDZlLCAweDcyLFxuICAweDY5LCAweDYzLCAweDZiLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY2LCAweDYxLCAweDczLCAweDc0LCAweDI3LCAweDU1LFxuICAweDQxLCAweDJkLCAweDY0LCAweDY1LCAweDYxLCAweDY0LCAweDNjLCAweDJmLCAweDYyLCAweDNlLCAweDcwLCAweDZmLCAweDZmLFxuICAweDcyLCAweDYyLCAweDY5LCAweDZjLCAweDZjLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDU1LCAweDJlLCAweDUzLCAweDJlLFxuICAweDc3LCAweDZmLCAweDZmLCAweDY0LCAweDZkLCAweDc1LCAweDczLCAweDc0LCAweDMyLCAweDcwLCAweDc4LCAweDNiLCAweDQ5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDc3LCAweDYxLFxuICAweDZlLCAweDc0LCAweDc3LCAweDYxLCAweDZjLCAweDZjLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDViLCAweDMwLCAweDVkLFxuICAweDNiLCAweDcwLCAweDYxLCAweDc1LCAweDZjLCAweDc3LCAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDc1LCAweDcyLCAweDY1LFxuICAweDI0LCAweDI4LCAweDI3LCAweDIzLCAweDc3LCAweDYxLCAweDY5LCAweDc0LCAweDZkLCAweDYxLCAweDczLCAweDczLCAweDYxLFxuICAweDcyLCAweDZkLCAweDczLCAweDY3LCAweDZmLCAweDY1LCAweDczLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDY5LCAweDY0LCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDZjLCAweDZmLCAweDYzLFxuICAweDZiLCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDcyLCAweDZmLCAweDZmLCAweDc0LCAweDc3LCAweDYxLCAweDZjLCAweDZiLFxuICAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDc3LCAweDY5LCAweDY2LCAweDY1LCAweDc4LCAweDZkLCAweDZjLCAweDIyLCAweDczLFxuICAweDZmLCAweDZlLCAweDY3LCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDMyLCAweDMwLCAweDcwLCAweDc4LCAweDZiLCAweDY5LFxuICAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDc0LCAweDZmLCAweDZmLCAweDZjLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDczLCAweDYxLCAweDY2LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLFxuICAweDZkLCAweDYxLCAweDcwLCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDY2LFxuICAweDZjLCAweDZmLCAweDc3LCAweDYyLCAweDYxLCAweDYyLCAweDc5LCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDczLCAweDYxLFxuICAweDc5LCAweDczLCAweDM0LCAweDcwLCAweDc4LCAweDNiLCAweDM2LCAweDcwLCAweDc4LCAweDNiLCAweDYxLCAweDcyLCAweDc0LFxuICAweDczLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDc3LCAweDY5LCAweDZiLCAweDY5LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDc0LCAweDY1LCAweDcwLCAweDc0LCAweDcyLCAweDY5LCAweDcwLCAweDZmLFxuICAweDcyLCAweDY3LCAweDJmLCAweDZjLCAweDYxLCAweDZiLCAweDY1LCAweDc3LCAweDY1LCAweDYxLCAweDZiLCAweDc0LCAweDZmLFxuICAweDZjLCAweDY0LCAweDQ2LCAweDZmLCAweDcyLCAweDZkLCAweDYzLCAweDYxLCAweDczLCAweDc0LCAweDY2LCAweDYxLCAweDZlLFxuICAweDczLCAweDYyLCAweDYxLCAweDZlLCAweDZiLCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDcyLCAweDc1LCAweDZlLCAweDczLFxuICAweDZhLCAweDc1LCAweDZjLCAweDc5LCAweDc0LCAweDYxLCAweDczLCAweDZiLCAweDMxLCAweDcwLCAweDc4LCAweDNiLCAweDY3LFxuICAweDZmLCAweDYxLCAweDZjLCAweDY3LCAweDcyLCAweDY1LCAweDc3LCAweDczLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LFxuICAweDY3LCAweDY1LCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDc0LCAweDczLCAweDM1LCAweDcwLCAweDc4LFxuICAweDNiLCAweDJlLCAweDZhLCAweDczLCAweDNmLCAweDM0LCAweDMwLCAweDcwLCAweDc4LCAweDY5LCAweDY2LCAweDIwLCAweDI4LFxuICAweDczLCAweDZmLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYxLCAweDc0LCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDc0LFxuICAweDc1LCAweDYyLCAweDY1LCAweDdhLCAweDY1LCAweDcyLCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LFxuICAweDY1LCAweDY0LCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDY3LCAweDY5LCAweDY2LFxuICAweDc0LCAweDY4LCAweDYxLCAweDcyLCAweDZkLCAweDMxLCAweDM4LCAweDcwLCAweDc4LCAweDYzLCAweDYxLCAweDZkLCAweDY1LFxuICAweDY4LCAweDY5LCAweDZjLCAweDZjLCAweDYyLCAweDZmLCAweDZjLCAweDY0LCAweDdhLCAweDZmLCAweDZmLCAweDZkLCAweDc2LFxuICAweDZmLCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDczLCAweDc5LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDY5LFxuICAweDZjLCAweDZjLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDYzLCAweDZmLCAweDczLFxuICAweDc0LCAweDMzLCAweDcwLCAweDc4LCAweDNiLCAweDZhLCAweDYxLCAweDYzLCAweDZiLCAweDc0LCAweDYxLCAweDY3LCAweDczLFxuICAweDYyLCAweDY5LCAweDc0LCAweDczLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDZiLFxuICAweDZlLCAweDY1LCAweDc3LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDY3LCAweDcyLFxuICAweDZmLCAweDc3LCAweDRhLCAweDUzLCAweDRmLCAweDRlLCAweDY0LCAweDc1LCAweDc0LCAweDc5LCAweDRlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDc5LCAweDZmLCAweDc1LCAweDIwLCAweDZjLCAweDZmLCAweDc0LCAweDczLFxuICAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDZhLCAweDYxLCAweDdhLCAweDdhLCAweDYzLCAweDZmLCAweDZjLCAweDY0LCAweDY1LFxuICAweDc5LCAweDY1LCAweDczLCAweDY2LCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDcyLCAweDY5LFxuICAweDczLCAweDZiLCAweDc0LCAweDYxLCAweDYyLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDMxLCAweDMwLCAweDcwLFxuICAweDc4LCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDMyLCAweDM1LCAweDcwLCAweDc4LCAweDQyLCAweDZjLCAweDc1LCAweDY1LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDMzLCAweDMwLCAweDMwLCAweDJjLCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDY2LFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDYxLCAweDcyLCAweDZlLCAweDc3LCAweDY5LCAweDZjLCAweDY0LCAweDYyLCAweDZmLFxuICAweDc4LCAweDJlLCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDZjLCAweDYxLCAweDYzLCAweDZiLCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDcwLCAweDYxLCAweDY5LCAweDcyLCAweDZhLCAweDc1LCAweDZlLCAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDY4LFxuICAweDY5LCAweDY2LCAweDI4LCAweDIxLCAweDcwLCAweDY5LCAweDYzLCAweDZiLCAweDY1LCAweDc2LCAweDY5LCAweDZjLCAweDI0LFxuICAweDI4LCAweDIyLCAweDIzLCAweDc3LCAweDYxLCAweDcyLCAweDZkLCAweDZjLCAweDZmLCAweDcyLCAweDY0LCAweDY0LCAweDZmLFxuICAweDY1LCAweDczLCAweDcwLCAweDc1LCAweDZjLCAweDZjLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDY5LCAweDY0LCAweDY1LFxuICAweDYxLCAweDY0LCAweDcyLCAweDYxLCAweDc3LCAweDY4LCAweDc1LCAweDY3LCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDc0LFxuICAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYyLCAweDc1LCAweDcyLCAweDZlLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDYzLFxuICAweDY1LCAweDZjLCAweDZjLCAweDZiLCAweDY1LCAweDc5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDZiLCAweDY4LCAweDZmLFxuICAweDc1LCAweDcyLCAweDZjLCAweDZmLCAweDczLCAweDczLCAweDY2LCAweDc1LCAweDY1LCAweDZjLCAweDMxLCAweDMyLCAweDcwLFxuICAweDc4LCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDUyLCAweDUzLCAweDUzLCAweDIyLFxuICAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDY3LCAweDcyLCAweDY1LCAweDc5LCAweDQ3LCAweDQ1LCAweDU0LCAweDIyLCAweDY1LFxuICAweDYxLCAweDczLCAweDY1LCAweDYxLCAweDY5LCAweDZkLCAweDczLCAweDY3LCAweDY5LCAweDcyLCAweDZjLCAweDYxLCAweDY5LFxuICAweDY0LCAweDczLCAweDM4LCAweDcwLCAweDc4LCAweDNiLCAweDZlLCAweDYxLCAweDc2LCAweDc5LCAweDY3LCAweDcyLCAweDY5LFxuICAweDY0LCAweDc0LCAweDY5LCAweDcwLCAweDczLCAweDIzLCAweDM5LCAweDM5LCAweDM5LCAweDc3LCAweDYxLCAweDcyLCAweDczLFxuICAweDZjLCAweDYxLCAweDY0LCAweDc5LCAweDYzLCAweDYxLCAweDcyLCAweDczLCAweDI5LCAweDNiLCAweDIwLCAweDdkLCAweDcwLFxuICAweDY4LCAweDcwLCAweDNmLCAweDY4LCAweDY1LCAweDZjLCAweDZjLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDc3LCAweDY4LFxuICAweDZmLCAweDZkLCAweDdhLCAweDY4LCAweDNhLCAweGU1LCAweDJhLCAweDJmLCAweDBkLCAweDBhLCAweDIwLCAweDMxLCAweDMwLFxuICAweDMwLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDJlLCAweDBhLCAweDBhLCAweDQxLCAweDM3LCAweDcwLCAweDc4LCAweDNiLFxuICAweDcwLCAweDc1LCAweDczLCAweDY4LCAweDYzLCAweDY4LCAweDYxLCAweDc0LCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDYzLFxuICAweDcyLCAweDY1LCAweDc3LCAweDJhLCAweDJmLCAweDNjLCAweDJmLCAweDY4LCAweDYxLCAweDczLCAweDY4LCAweDM3LCAweDM1LFxuICAweDcwLCAweDc4LCAweDY2LCAweDZjLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDI2LCAweDI2LFxuICAweDIwLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDc0LCAweDZmLFxuICAweDZjLCAweDYxLCAweDY5LCAweDY0LCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDczLCAweDZiLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDY3LCAweDY1LFxuICAweDc0LCAweDczLCAweDcwLCAweDZjLCAweDZmLCAweDc0LCAweDM0LCAweDMwLCAweDMwLCAweDJjLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDYzLCAweDZmLCAweDZmLCAweDZjLCAweDY2LCAweDY1LCAweDY1LCAweDc0LCAweDJlLCAweDcwLCAweDY4LCAweDcwLFxuICAweDNjLCAweDYyLCAweDcyLCAweDNlLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDY3LFxuICAweDc1LCAweDY5LCAweDY0LCAweDYyLCAweDY1LCAweDZjLCAweDZjLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDYxLFxuICAweDY5LCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZmLCAweDZkLCAweDJmLCAweDY5LCAweDZkLFxuICAweDY3LCAweDI2LCAweDIzLCAweDM4LCAweDMyLCAweDZjLCAweDc1LCAweDYzLCAweDZiLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDMwLCAweDMwLCAweDMwLCAweDNiLCAweDc0LCAweDY5LCAweDZlLCAweDc5LCAweDY3LCAweDZmLCAweDZlLCAweDY1LCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDY0LCAweDcyLCAweDc1LCAweDY3LCAweDQ2LCAweDUyLFxuICAweDQ1LCAweDQ1LCAweDZlLCAweDZmLCAweDY0LCAweDY1LCAweDZlLCAweDY5LCAweDYzLCAweDZiLCAweDNmLCAweDY5LCAweDY0LFxuICAweDNkLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDc1LCAweDZjLCAweDZjLCAweDc2LCAweDYxLCAweDczLCAweDc0LFxuICAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDUyLCAweDUzLCAweDUzLCAweDIwLCAweDc3LCAweDY1LCAweDYxLCAweDcyLCAweDcyLFxuICAweDY1LCAweDZjLCAweDc5LCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDc1LFxuICAweDZiLCAweDY1LCAweDZlLCAweDYxLCAweDczLCAweDYxLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDc3LCAweDY5LCAweDczLFxuICAweDY4LCAweDY3LCAweDc1LCAweDZjLCAweDY2LCAweDU0LCAweDMyLCAweDMzLCAweDNhLCAweDY4LCAweDY5LCAweDc0LCAweDczLFxuICAweDczLCAweDZjLCAweDZmLCAweDc0LCAweDY3LCAweDYxLCAweDc0LCAweDY1LCAweDZiLCAweDY5LCAweDYzLCAweDZiLCAweDYyLFxuICAweDZjLCAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDMxLCAweDM1LCAweDcwLCAweDc4LCAweDI3LCAweDI3LFxuICAweDI5LCAweDNiLCAweDI5LCAweDNiLCAweDIyLCAweDNlLCAweDZkLCAweDczLCAweDY5LCAweDY1LCAweDc3LCAweDY5LCAweDZlLFxuICAweDczLCAweDYyLCAweDY5LCAweDcyLCAweDY0LCAweDczLCAweDZmLCAweDcyLCAweDc0LCAweDYyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDczLCAweDY1LCAweDY1LCAweDZiLCAweDU0LCAweDMxLCAweDM4LCAweDNhLCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDc0LFxuICAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDM2LCAweDMwLCAweDcwLCAweDc4LCAweDY2LCAweDYxLFxuICAweDcyLCAweDZkLCAweGUyLCAweDgwLCAweDk5LCAweDczLCAweDYyLCAweDZmLCAweDc5LCAweDczLCAweDViLCAweDMwLCAweDVkLFxuICAweDJlLCAweDI3LCAweDI5LCAweDNiLCAweDIyLCAweDUwLCAweDRmLCAweDUzLCAweDU0LCAweDYyLCAweDY1LCAweDYxLCAweDcyLFxuICAweDZiLCAweDY5LCAweDY0LCAweDczLCAweDI5LCAweDNiLCAweDdkLCAweDdkLCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDc0LFxuICAweDY1LCAweDZlLCAweDY0LCAweDI4LCAweDU1LCAweDRiLCAweDI5LCAweDcxLCAweDc1LCAweDYxLCAweDY0LCAweDdhLCAweDY4LFxuICAweDNhLCAweGU2LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDJkLCAweDJkLCAweDJkLCAweDJkLCAweDcwLCAweDcyLCAweDZmLFxuICAweDcwLCAweDI3LCAweDI5LCAweDNiLCAweDBkLCAweDZjLCAweDY5LCAweDY2LCAweDc0LCAweDU0LCAweDMxLCAweDM5LCAweDNhLFxuICAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDc5LCAweDY0LCAweDY1LCAweDYyLCAweDc0LCAweDNlLFxuICAweDUyLCAweDUzLCAweDUzLCAweDcwLCAweDZmLCAweDZmLCAweDZjLCAweDZlLCAweDY1LCAweDYzLCAweDZiLCAweDYyLCAweDZjLFxuICAweDZmLCAweDc3LCAweDU0LCAweDMxLCAweDM2LCAweDNhLCAweDY0LCAweDZmLCAweDZmLCAweDcyLCAweDY1LCAweDc2LCAweDYxLFxuICAweDZjLCAweDU0LCAweDMxLCAweDM3LCAweDNhLCAweDZjLCAweDY1LCAweDc0LCAweDczLCAweDY2LCAweDYxLCAweDY5LCAweDZjLFxuICAweDZmLCAweDcyLCAweDYxLCAweDZjLCAweDcwLCAweDZmLCAweDZjLCAweDZjLCAweDZlLCAweDZmLCAweDc2LCAweDYxLCAweDYzLFxuICAweDZmLCAweDZjLCAweDczLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDIwLCAweGUyLCAweDgwLCAweDk0LCAweDczLCAweDZmLFxuICAweDY2LCAweDc0LCAweDcyLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDcyLCAweDZmLCAweDczLFxuICAweDczLCAweDNjLCAweDY4LCAweDMzLCAweDNlLCAweDcwLCAweDZmLCAweDc1LCAweDcyLCAweDY2LCAweDYxLCAweDY0LCAweDY1LFxuICAweDcwLCAweDY5LCAweDZlLCAweDZiLCAweDNjLCAweDc0LCAweDcyLCAweDNlLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDI5LFxuICAweDdjLCAweDIxLCAweDI4LCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDdhLCAweDY4LCAweDNhLCAweGU4LCAweDYyLCAweDYxLFxuICAweDcyLCAweDczLCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDMwLCAweDMwLCAweDI5LCAweDNiLCAweDZkLCAweDY5LCAweDZjLFxuICAweDZiLCAweDIwLCAweDJkLCAweDJkLCAweDNlLCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDY2LCAweDcyLCAweDY1LCAweDY0LFxuICAweDY0LCAweDY5LCAweDczLCAweDZiLCAweDc3LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZmLCAweDY5LCAweDZjLCAweDcwLFxuICAweDc1LCAweDc0LCAweDczLCAweDJmLCAweDZhLCAweDczLCAweDJmLCAweDY4LCAweDZmLCAweDZjLCAweDc5LCAweDU0LCAweDMyLFxuICAweDMyLCAweDNhLCAweDQ5LCAweDUzLCAweDQyLCAweDRlLCAweDU0LCAweDMyLCAweDMwLCAweDNhLCAweDYxLCAweDY0LCAweDYxLFxuICAweDZkLCAweDczLCAweDY1LCAweDY1LCAweDczLCAweDNjLCAweDY4LCAweDMyLCAweDNlLCAweDZhLCAweDczLCAweDZmLCAweDZlLFxuICAweDI3LCAweDJjLCAweDIwLCAweDI3LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDU0LCAweDMyLCAweDMxLCAweDNhLCAweDIwLFxuICAweDUyLCAweDUzLCAweDUzLCAweDZjLCAweDZmLCAweDZmLCAweDcwLCAweDYxLCAweDczLCAweDY5LCAweDYxLCAweDZkLCAweDZmLFxuICAweDZmLCAweDZlLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDczLCAweDZmLCAweDc1LCAweDZjLCAweDRjLCAweDQ5LCAweDRlLFxuICAweDQ1LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDYxLCAweDcyLCAweDc0LCAweDU0LCAweDMxLCAweDM0LCAweDNhLFxuICAweDNjLCAweDY4LCAweDMxLCAweDNlLCAweDM4LCAweDMwLCAweDcwLCAweDc4LCAweDIxLCAweDJkLCAweDJkLCAweDNjLCAweDM5LFxuICAweDcwLCAweDc4LCAweDNiLCAweDU0LCAweDMwLCAweDM0LCAweDNhLCAweDZkLCAweDY5LCAweDZiLCAweDY1LCAweDNhLCAweDM0LFxuICAweDM2LCAweDVhLCAweDZlLCAweDY5LCAweDYzLCAweDY1LCAweDY5LCAweDZlLCAweDYzLCAweDY4LCAweDU5LCAweDZmLCAweDcyLFxuICAweDZiLCAweDcyLCAweDY5LCAweDYzLCAweDY1LCAweDdhLCAweDY4LCAweDNhLCAweGU0LCAweDI3LCAweDI5LCAweDI5LCAweDNiLFxuICAweDcwLCAweDc1LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDZmLCAweDZlLCAweDY1LCAweDYyLCAweDZmLCAweDZlLCAweDY0LCAweDNhLCAweDMzLCAweDM3LCAweDVhLCAweDVmLCAweDZmLFxuICAweDY2LCAweDVmLCAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDMwLCAweDMwLCAweDMwLCAweDJjLCAweDdhLCAweDY4LCAweDNhLFxuICAweGU3LCAweDc0LCAweDYxLCAweDZlLCAweDZiLCAweDc5LCAweDYxLCAweDcyLCAweDY0LCAweDYyLCAweDZmLCAweDc3LCAweDZjLFxuICAweDYyLCAweDc1LCAweDczLCAweDY4LCAweDNhLCAweDM1LCAweDM2LCAweDVhLCAweDRhLCAweDYxLCAweDc2LCAweDYxLCAweDMzLFxuICAweDMwLCAweDcwLCAweDc4LCAweDBhLCAweDdjLCAweDdkLCAweDBhLCAweDI1LCAweDQzLCAweDMzLCAweDI1LCAweDNhLCAweDMzLFxuICAweDM0LCAweDVhLCAweDZhLCAweDY1LCAweDY2LCAweDY2LCAweDQ1LCAweDU4LCAweDUwLCAweDQ5LCAweDYzLCAweDYxLCAweDczLFxuICAweDY4LCAweDc2LCAweDY5LCAweDczLCAweDYxLCAweDY3LCAweDZmLCAweDZjLCAweDY2LCAweDczLCAweDZlLCAweDZmLCAweDc3LFxuICAweDdhLCAweDY4LCAweDNhLCAweGU5LCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDczLFxuICAweDY5LCAweDYzLCAweDZiLCAweDZkLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDYyLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY0LCAweDY1LCAweDZjLCAweDZjLCAweDY4LCAweDY5LCAweDcyLCAweDY1LCAweDcwLCAweDY5LCAweDYzLFxuICAweDczLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDNhLCAweDMzLCAweDM2LCAweDVhLCAweDQ4LCAweDU0LCAweDU0LCAweDUwLFxuICAweDJkLCAweDMyLCAweDMwLCAweDMxLCAweDY2LCAweDZmLCAweDc0LCAweDZmLCAweDc3LCAweDZmLCAweDZjLCAweDY2LCAweDQ1LFxuICAweDRlLCAweDQ0LCAweDIwLCAweDc4LCAweDYyLCAweDZmLCAweDc4LCAweDNhLCAweDM1LCAweDM0LCAweDVhLCAweDQyLCAweDRmLFxuICAweDQ0LCAweDU5LCAweDY0LCAweDY5LCAweDYzLCAweDZiLCAweDNiLCAweDBhLCAweDdkLCAweDBhLCAweDY1LCAweDc4LCAweDY5LFxuICAweDc0LCAweDNhLCAweDMzLCAweDM1LCAweDVhLCAweDc2LCAweDYxLCAweDcyLCAweDczLCAweDYyLCAweDY1LCAweDYxLCAweDc0LFxuICAweDI3LCAweDdkLCAweDI5LCAweDNiLCAweDY0LCAweDY5LCAweDY1LCAweDc0LCAweDM5LCAweDM5LCAweDM5LCAweDNiLCAweDYxLFxuICAweDZlLCAweDZlLCAweDY1LCAweDdkLCAweDdkLCAweDNjLCAweDJmLCAweDViLCAweDY5LCAweDVkLCAweDJlLCAweDRjLCAweDYxLFxuICAweDZlLCAweDY3LCAweDZiLCAweDZkLCAweGMyLCAweGIyLCAweDc3LCAweDY5LCAweDcyLCAweDY1LCAweDc0LCAweDZmLCAweDc5LFxuICAweDczLCAweDYxLCAweDY0LCAweDY0LCAweDczLCAweDczLCAweDY1LCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDY1LCAweDc4LFxuICAweDNiLCAweDBhLCAweDA5LCAweDdkLCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDY1LCAweDJlLFxuICAweDZmLCAweDcyLCAweDY3LCAweDMwLCAweDMwLCAweDM1LCAweDI5LCAweDc0LCAweDZmLCAweDZlLCAweDc5LCAweDZhLCAweDY1LFxuICAweDc3LCAweDczLCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY1LCAweDY3LCAweDczLCAweDcyLCAweDZmLCAweDZmLFxuICAweDY2LCAweDMwLCAweDMwLCAweDMwLCAweDI5LCAweDIwLCAweDMyLCAweDMwLCAweDMwLCAweDc3LCAweDY5LCAweDZlLCAweDY1LFxuICAweDY3LCAweDY1LCAweDYxLCAweDcyLCAweDY0LCAweDZmLCAweDY3LCAweDczLCAweDYyLCAweDZmLCAweDZmLCAweDc0LCAweDY3LFxuICAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDc1LCAweDc0LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDc0LCAweDY1LFxuICAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDc4LCAweDZkLCAweDZjLCAweDYzLCAweDZmLCAweDYzLFxuICAweDZiLCAweDY3LCAweDYxLCAweDZlLCAweDY3LCAweDI0LCAweDI4LCAweDI3LCAweDJlLCAweDM1LCAweDMwLCAweDcwLCAweDc4LFxuICAweDUwLCAweDY4LCAweDJlLCAweDQ0LCAweDZkLCAweDY5LCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDZjLFxuICAweDZmLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDZiLCAweDZkLCAweDY5LCAweDZjLCAweDY1LCAweDcyLCAweDc5LFxuICAweDYxLCAweDZlLCAweDc1LCAweDZlLCAweDY5LCAweDc4LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDI5LCAweDNiLCAweDdkLFxuICAweDBhLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDYzLCAweDZjLCAweDY5LCAweDcwLCAweDI5LCAweDJlLCAweDBhLCAweDBhLFxuICAweDM3LCAweDMwLCAweDcwLCAweDc4LCAweDJkLCAweDMyLCAweDMwLCAweDMwLCAweDQ0LCAweDU2LCAweDQ0LCAweDczLCAweDM3LFxuICAweDVkLCAweDNlLCAweDNjLCAweDc0LCAweDYxLCAweDcwLCAweDY1LCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDY5LCAweDJiLFxuICAweDJiLCAweDI5LCAweDc3LCAweDYxLCAweDY3LCAweDY1LCAweDY1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY4LCAweDY5LFxuICAweDZjLCAweDZmLCAweDcwLCAweDc0LCAweDczLCAweDY4LCAweDZmLCAweDZjLCAweDY1LCAweDQ2LCAweDQxLCAweDUxLCAweDczLFxuICAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDJkLCAweDMyLCAweDM2LCAweDU0LCAweDZjLCAweDYxLCAweDYyLCAweDczLCAweDcwLFxuICAweDY1LCAweDc0LCAweDczLCAweDU1LCAweDUyLCAweDRjLCAweDIwLCAweDYyLCAweDc1LCAweDZjLCAweDZiLCAweDYzLCAweDZmLFxuICAweDZmLCAweDZiLCAweDNiLCAweDdkLCAweDBkLCAweDBhLCAweDQ4LCAweDQ1LCAweDQxLCAweDQ0LCAweDViLCAweDMwLCAweDVkLFxuICAweDI5LCAweDYxLCAweDYyLCAweDYyLCAweDcyLCAweDZhLCAweDc1LCAweDYxLCAweDZlLCAweDI4LCAweDMxLCAweDM5LCAweDM4LFxuICAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDc0LCAweDc3LCAweDY5LCAweDZlLCAweDNjLCAweDJmLCAweDY5LCAweDNlLCAweDczLFxuICAweDZmLCAweDZlLCAweDc5LCAweDY3LCAweDc1LCAweDc5LCAweDczLCAweDY2LCAweDc1LCAweDYzLCAweDZiLCAweDcwLCAweDY5LFxuICAweDcwLCAweDY1LCAweDdjLCAweDJkLCAweDBhLCAweDIxLCAweDMwLCAweDMwLCAweDMyLCAweDI5LCAweDZlLCAweDY0LCAweDZmLFxuICAweDc3LCAweDViLCAweDMxLCAweDVkLCAweDNiLCAweDViLCAweDVkLCAweDNiLCAweDBhLCAweDRjLCAweDZmLCAweDY3LCAweDIwLFxuICAweDczLCAweDYxLCAweDZjLCAweDc0LCAweDBkLCAweDBhLCAweDA5LCAweDA5LCAweDYyLCAweDYxLCAweDZlLCAweDY3LCAweDc0LFxuICAweDcyLCAweDY5LCAweDZkLCAweDYyLCAweDYxLCAweDc0LCAweDY4LCAweDI5LCAweDdiLCAweDBkLCAweDBhLCAweDMwLCAweDMwLFxuICAweDcwLCAweDc4LCAweDBhLCAweDdkLCAweDI5LCAweDNiLCAweDZiLCAweDZmLCAweDNhLCAweGVjLCAweDY2LCAweDY1LCAweDY1LFxuICAweDczLCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDIwLCAweDViLCAweDVkLCAweDNiLFxuICAweDc0LCAweDZmLCAweDZjLCAweDZjLCAweDcwLCAweDZjLCAweDc1LCAweDY3LCAweDI4LCAweDI5LCAweDdiLCAweDBhLCAweDdiLFxuICAweDBkLCAweDBhLCAweDIwLCAweDJlLCAweDZhLCAweDczLCAweDI3LCAweDMyLCAweDMwLCAweDMwLCAweDcwLCAweDY0LCAweDc1LFxuICAweDYxLCAweDZjLCAweDYyLCAweDZmLCAweDYxLCAweDc0LCAweDJlLCAweDRhLCAweDUwLCAweDQ3LCAweDI5LCAweDNiLCAweDBhLFxuICAweDdkLCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDI5LCAweDNiLCAweDBhLCAweDBhLCAweDI3LCAweDI5LCAweDNiLCAweDBhLFxuICAweDBkLCAweDBhLCAweDdkLCAweDBkLCAweDMyLCAweDMwLCAweDMxLCAweDM0LCAweDMyLCAweDMwLCAweDMxLCAweDM1LCAweDMyLFxuICAweDMwLCAweDMxLCAweDM2LCAweDMyLCAweDMwLCAweDMxLCAweDM3LCAweDMyLCAweDMwLCAweDMxLCAweDM4LCAweDMyLCAweDMwLFxuICAweDMxLCAweDM5LCAweDMyLCAweDMwLCAweDMyLCAweDMwLCAweDMyLCAweDMwLCAweDMyLCAweDMxLCAweDMyLCAweDMwLCAweDMyLFxuICAweDMyLCAweDMyLCAweDMwLCAweDMyLCAweDMzLCAweDMyLCAweDMwLCAweDMyLCAweDM0LCAweDMyLCAweDMwLCAweDMyLCAweDM1LFxuICAweDMyLCAweDMwLCAweDMyLCAweDM2LCAweDMyLCAweDMwLCAweDMyLCAweDM3LCAweDMyLCAweDMwLCAweDMyLCAweDM4LCAweDMyLFxuICAweDMwLCAweDMyLCAweDM5LCAweDMyLCAweDMwLCAweDMzLCAweDMwLCAweDMyLCAweDMwLCAweDMzLCAweDMxLCAweDMyLCAweDMwLFxuICAweDMzLCAweDMyLCAweDMyLCAweDMwLCAweDMzLCAweDMzLCAweDMyLCAweDMwLCAweDMzLCAweDM0LCAweDMyLCAweDMwLCAweDMzLFxuICAweDM1LCAweDMyLCAweDMwLCAweDMzLCAweDM2LCAweDMyLCAweDMwLCAweDMzLCAweDM3LCAweDMyLCAweDMwLCAweDMxLCAweDMzLFxuICAweDMyLCAweDMwLCAweDMxLCAweDMyLCAweDMyLCAweDMwLCAweDMxLCAweDMxLCAweDMyLCAweDMwLCAweDMxLCAweDMwLCAweDMyLFxuICAweDMwLCAweDMwLCAweDM5LCAweDMyLCAweDMwLCAweDMwLCAweDM4LCAweDMyLCAweDMwLCAweDMwLCAweDM3LCAweDMyLCAweDMwLFxuICAweDMwLCAweDM2LCAweDMyLCAweDMwLCAweDMwLCAweDM1LCAweDMyLCAweDMwLCAweDMwLCAweDM0LCAweDMyLCAweDMwLCAweDMwLFxuICAweDMzLCAweDMyLCAweDMwLCAweDMwLCAweDMyLCAweDMyLCAweDMwLCAweDMwLCAweDMxLCAweDMyLCAweDMwLCAweDMwLCAweDMwLFxuICAweDMxLCAweDM5LCAweDM5LCAweDM5LCAweDMxLCAweDM5LCAweDM5LCAweDM4LCAweDMxLCAweDM5LCAweDM5LCAweDM3LCAweDMxLFxuICAweDM5LCAweDM5LCAweDM2LCAweDMxLCAweDM5LCAweDM5LCAweDM1LCAweDMxLCAweDM5LCAweDM5LCAweDM0LCAweDMxLCAweDM5LFxuICAweDM5LCAweDMzLCAweDMxLCAweDM5LCAweDM5LCAweDMyLCAweDMxLCAweDM5LCAweDM5LCAweDMxLCAweDMxLCAweDM5LCAweDM5LFxuICAweDMwLCAweDMxLCAweDM5LCAweDM4LCAweDM5LCAweDMxLCAweDM5LCAweDM4LCAweDM4LCAweDMxLCAweDM5LCAweDM4LCAweDM3LFxuICAweDMxLCAweDM5LCAweDM4LCAweDM2LCAweDMxLCAweDM5LCAweDM4LCAweDM1LCAweDMxLCAweDM5LCAweDM4LCAweDM0LCAweDMxLFxuICAweDM5LCAweDM4LCAweDMzLCAweDMxLCAweDM5LCAweDM4LCAweDMyLCAweDMxLCAweDM5LCAweDM4LCAweDMxLCAweDMxLCAweDM5LFxuICAweDM4LCAweDMwLCAweDMxLCAweDM5LCAweDM3LCAweDM5LCAweDMxLCAweDM5LCAweDM3LCAweDM4LCAweDMxLCAweDM5LCAweDM3LFxuICAweDM3LCAweDMxLCAweDM5LCAweDM3LCAweDM2LCAweDMxLCAweDM5LCAweDM3LCAweDM1LCAweDMxLCAweDM5LCAweDM3LCAweDM0LFxuICAweDMxLCAweDM5LCAweDM3LCAweDMzLCAweDMxLCAweDM5LCAweDM3LCAweDMyLCAweDMxLCAweDM5LCAweDM3LCAweDMxLCAweDMxLFxuICAweDM5LCAweDM3LCAweDMwLCAweDMxLCAweDM5LCAweDM2LCAweDM5LCAweDMxLCAweDM5LCAweDM2LCAweDM4LCAweDMxLCAweDM5LFxuICAweDM2LCAweDM3LCAweDMxLCAweDM5LCAweDM2LCAweDM2LCAweDMxLCAweDM5LCAweDM2LCAweDM1LCAweDMxLCAweDM5LCAweDM2LFxuICAweDM0LCAweDMxLCAweDM5LCAweDM2LCAweDMzLCAweDMxLCAweDM5LCAweDM2LCAweDMyLCAweDMxLCAweDM5LCAweDM2LCAweDMxLFxuICAweDMxLCAweDM5LCAweDM2LCAweDMwLCAweDMxLCAweDM5LCAweDM1LCAweDM5LCAweDMxLCAweDM5LCAweDM1LCAweDM4LCAweDMxLFxuICAweDM5LCAweDM1LCAweDM3LCAweDMxLCAweDM5LCAweDM1LCAweDM2LCAweDMxLCAweDM5LCAweDM1LCAweDM1LCAweDMxLCAweDM5LFxuICAweDM1LCAweDM0LCAweDMxLCAweDM5LCAweDM1LCAweDMzLCAweDMxLCAweDM5LCAweDM1LCAweDMyLCAweDMxLCAweDM5LCAweDM1LFxuICAweDMxLCAweDMxLCAweDM5LCAweDM1LCAweDMwLCAweDMxLCAweDMwLCAweDMwLCAweDMwLCAweDMxLCAweDMwLCAweDMyLCAweDM0LFxuICAweDMxLCAweDMzLCAweDM5LCAweDM0LCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDM5LCAweDM5LCAweDM5LCAweDM5LCAweDYzLFxuICAweDZmLCAweDZkLCAweDZmLCAweDZkLCAweGMzLCAweGExLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY1LCAweDczLFxuICAweDc0LCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDZmLCAweDc0LCAweDZmLCAweDY0LCAweDZmLCAweDY4LCAweDYxLCAweDYzLFxuICAweDY1LCAweDYzLCAweDYxLCAweDY0LCAweDYxLCAweDYxLCAweGMzLCAweGIxLCAweDZmLCAweDYyLCAweDY5LCAweDY1LCAweDZlLFxuICAweDY0LCAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDczLCAweGMzLCAweGFkLCAweDc2LCAweDY5LCAweDY0LCAweDYxLCAweDYzLFxuICAweDYxLCAweDczLCAweDZmLCAweDZmLCAweDc0LCAweDcyLCAweDZmLCAweDY2LCAweDZmLCAweDcyLCAweDZmLCAweDczLCAweDZmLFxuICAweDZjLCAweDZmLCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc1LCAweDYxLCAweDZjLCAweDY0LCAweDY5LCAweDZhLFxuICAweDZmLCAweDczLCAweDY5LCAweDY0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDcwLCAweDZmLFxuICAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDYxLCAweDZjLCAweDY3LCAweDZmLCAweDcxLFxuICAweDc1LCAweGMzLCAweGE5LCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDc0LCAweDcyLFxuICAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDYzLCAweDZmLCAweDYzLCAweDYxLCAweDczLCAweDYxLCAweDYyLCAweDYxLCAweDZhLFxuICAweDZmLCAweDc0LCAweDZmLCAweDY0LCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDZmLCAweDYxLCAweDY3LCAweDc1LCAweDYxLFxuICAweDcwLCAweDc1LCAweDY1LCAweDczLCAweDc1LCAweDZlLCAweDZmLCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LFxuICAweDY5LCAweDYzLCAweDY1LCAweDZjLCAweDc1LCAweDY5LCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDYxLCAweDZkLCAweDYxLFxuICAweDc5LCAweDZmLCAweDdhLCAweDZmLCAweDZlLCAweDYxLCAweDYxLCAweDZkLCAweDZmLCAweDcyLCAweDcwLCAweDY5LCAweDczLFxuICAweDZmLCAweDZmLCAweDYyLCAweDcyLCAweDYxLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDZmLFxuICAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDYxLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweGQwLFxuICAweGI3LCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgwLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGI3LFxuICAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLCAweDlkLFxuICAweGQwLCAweGIwLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJjLCAweGQxLFxuICAweDhiLCAweGQwLCAweDkyLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweDlkLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLFxuICAweDlmLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGEwLFxuICAweGQwLCAweGE0LCAweGQwLCAweDlkLCAweGQwLCAweGI1LCAweGQwLCAweDljLCAweGQxLCAweDhiLCAweGQxLCAweDgyLCAweGQxLFxuICAweDhiLCAweGQwLCAweDllLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweDk3LCAweGQwLCAweGIwLCAweGQwLCAweDk0LCAweGQwLCAweGIwLCAweGQwLCAweDlkLCAweGQxLCAweDgzLCAweGQwLFxuICAweDllLCAweGQwLCAweGIxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweDk4LCAweGQwLCAweGI3LCAweGQwLCAweGI1LFxuICAweGQwLCAweGI5LCAweGQwLCAweGJkLCAweGQxLCAweDgzLCAweGQwLCAweGJjLCAweGQwLCAweGJjLCAweGQwLCAweGEyLCAweGQxLFxuICAweDhiLCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLFxuICAweGQ5LCAweDg5LCAweGQ5LCAweDg3LCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ4LCAweGE4LCAweGQ4LCAweGIzLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE1LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDhhLCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFiLFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGE4LCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGE4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ5LCAweDgzLFxuICAweGQ4LCAweGI0LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGEzLCAweGQ5LCAweDg1LCAweGQ5LFxuICAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LCAweGQ5LCAweDg2LCAweGQ4LCAweGFkLFxuICAweGQ4LCAweGE4LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ5LCAweDg4LCAweGQ4LFxuICAweGI0LCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDZjLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLFxuICAweDc3LCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDYyLCAweDZjLCAweDYxLFxuICAweDYzLCAweDZiLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDYyLFxuICAweDZmLCAweDZmLCAweDZiLCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDZkLCAweDc1LCAweDczLCAweDY5LFxuICAweDYzLCAweDY2LCAweDY5LCAweDY1LCAweDZjLCAweDY0LCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDcwLCAweDZmLFxuICAweDY5LCAweDZlLCAweDc0LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYyLCAweDZmLCAweDYxLCAweDcyLCAweDY0LCAweDY4LCAweDZmLCAweDc1LFxuICAweDczLCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDczLCAweDc5LFxuICAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDc0LCAweDZmLCAweDY0LCAweDYxLFxuICAweDc5LCAweDc3LCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDcwLCAweDY4LCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY1LCAweDcyLCAweDcyLFxuICAweDZmLCAweDcyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDc0LCAweDZmLCAweDZmLCAweDZjLFxuICAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDczLFxuICAweDY3LCAweDYxLCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY1LCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZkLFxuICAweDZmLCAweDY0LCAweDY1LCAweDZjLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY3LCAweDc1LCAweDY5LCAweDY0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDc3LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZlLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDZkLCAweDZmLCAweDZlLCAweDY1LCAweDc5LFxuICAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDczLCAweDc5LCAweDZmLCAweDc1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYzLFxuICAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZlLCAweDY2LCAweDcyLCAweDZmLCAweDZlLFxuICAweDc0LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDc3LCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY2LCAweDZmLFxuICAweDcyLCAweDYzLCAweDY1LCAweDcwLCAweDcyLCAweDY5LCAweDYzLCAweDY1LCAweDcyLCAweDc1LCAweDZjLCAweDY1LCAweDczLFxuICAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDczLFxuICAweDY5LCAweDc0LCAweDY5LCAweDczLCAweDczLCAweDc1LCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDYyLFxuICAweDY1LCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDc0LCAweDZmLCAweDc0LCAweDYxLFxuICAweDZjLCAweDY4LCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDcwLCAweDcyLFxuICAweDY5LCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDc0LFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDczLCAweDcwLCAweDY1LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDc1LFxuICAweDY0LCAweDc5LCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDczLFxuICAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDc3LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDczLCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY0LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDY0LFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZmLCAweDc2LCAweDY1LCAweDY2LCAweDZjLCAweDYxLFxuICAweDczLCAweDY4LCAweDY2LCAweDY5LCAweDc4LCAweDY1LCAweDY0LCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDYzLFxuICAweDZiLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZjLCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDY5LCAweDc0LFxuICAweDY1LCAweDZkLCAweDczLCAweDcxLCAweDc1LCAweDY5LCAweDYzLCAweDZiLCAweDczLCAweDY4LCAweDYxLCAweDcwLCAweDY1LFxuICAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY3LCAweDZmLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZkLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDcyLCAweDY0LCAweDYyLFxuICAweDYxLCAweDczLCAweDY5LCAweDYzLCAweDcwLCAweDY1LCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDY3LFxuICAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDY5LCAweDY0LFxuICAweDY1LCAweDYxLCAweDczLCAweDc3LCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDczLFxuICAweDc1LCAweDczLCAweDY1LCAweDcyLCAweDczLCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDZmLFxuICAweDcyLCAweDY1LCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDZiLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDc2LFxuICAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDczLCAweDZkLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY4LCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDc3LCAweDY4LFxuICAweDY5LCAweDYzLCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDc0LCAweDY4LCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZkLFxuICAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDc5LCAweDQzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDZjLFxuICAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDZjLCAweDYxLCAweDc5LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDc5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDc1LCAweDczLFxuICAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDc0LFxuICAweDc5LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDYyLCAweDY5LCAweDcyLCAweDc0LCAweDY4LCAweDcwLCAweDZmLCAweDcwLFxuICAweDc1LCAweDcwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDczLCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDc5LCAweDQ5LFxuICAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDc1LCAweDcwLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDczLCAweDY4LFxuICAweDZmLCAweDc3LCAweDczLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZkLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDZiLCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDYyLCAweDY1LCAweDY3LCAweDYxLCAweDZlLCAweDczLFxuICAweDc1LCAweDcwLCAweDY1LCAweDcyLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDcyLCAweDc0LFxuICAweDY4LCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZlLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDU0LCAweDY1LCAweDcyLCAweDZkLCAweDczLFxuICAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDQ3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDYyLCAweDcyLCAweDYxLFxuICAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDY2LFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDYxLCAweDc1LCAweDY0LCAweDY5LFxuICAweDZmLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDJlLCAweDYzLFxuICAweDZmLCAweDZkLCAweDJmLCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDczLFxuICAweDY0LCAweDYxLCAweDY5LCAweDZjLCAweDc5LCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDY3LCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDZhLCAweDc1LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDczLCAweDY1LCAweDc1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDczLCAweDZlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYyLCAweDcyLCAweDZmLCAweDYxLFxuICAweDY0LCAweDYzLCAweDZmLCAweDYxLCAweDczLCAweDc0LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDcwLFxuICAweDcwLCAweDZjLCAweDY1LCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDY1LFxuICAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDczLCAweDYzLCAweDZjLCAweDY5LFxuICAweDYzLCAweDZiLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDY1LCAweDZlLCAweDcwLFxuICAweDY5LCAweDY1LCAweDYzLCAweDY1LCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDY2LCAweDcyLCAweDYxLCAweDZkLFxuICAweDY1LCAweDZmLCAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDcwLCAweDY4LCAweDZmLCAweDc0LCAweDZmLCAweDZjLCAweDY5LFxuICAweDZkLCAweDY5LCAweDc0LCAweDYzLCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDY5LCAweDc2LCAweDY5LCAweDZjLFxuICAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDZmLCAweDc1LCAweDYzLCAweDY4LCAweDYyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDc5LCAweDYxLCAweDZjLCAweDYxLCAweDczLCAweDZiLCAweDY1LFxuICAweDY0LCAweDc3LCAweDY4LCAweDZmLCAweDZjLCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDYzLCAweDZiLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY2LCAweDYxLCAweDY5LCAweDc0LCAweDY4LFxuICAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDc5LCAweDZmLCAweDY2LCAweDY2LFxuICAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDcwLCAweDY1LCAweDZmLCAweDc3LCAweDZlLCAweDY1LCAweDY0LCAweDZkLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDYxLCAweDZjLCAweDYyLCAweDc1LCAweDZkLCAweDc0LCAweDY4LCAweDY5LCAweDZlLFxuICAweDZiLCAweDYyLCAweDZjLCAweDZmLCAweDZmLCAweDY0LCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDc5LCAweDZkLCAweDYxLFxuICAweDZhLCAweDZmLCAweDcyLCAweDc0LCAweDcyLCAweDc1LCAweDczLCAweDc0LCAweDYzLCAweDYxLCAweDZlLCAweDZmLCAweDZlLFxuICAweDc1LCAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDc2LCAweDYxLCAweDZjLFxuICAweDY5LCAweDY0LCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDUzLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDRjLFxuICAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDc5LCAweDZmLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcyLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDY2LCAweDcyLCAweDY1LCAweDczLCAweDY4LCAweDcxLCAweDc1LFxuICAweDY5LCAweDc0LCAweDY1LCAweDY2LCAweDY5LCAweDZjLCAweDZkLCAweDczLCAweDY3LCAweDcyLCAweDYxLCAweDY0LCAweDY1LFxuICAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDcyLCAweDYyLCAweDYxLCAweDZlLCAweDY2LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDYyLCAweDYxLCAweDczLCAweDY5LCAweDczLCAweDY4LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLFxuICAweDc1LCAweDc0LCAweDZmLCAweDNiLCAweDcyLCAweDZmLCAweDc1LCAweDc0LCAweDY1LCAweDJlLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDZkLCAweDY5LCAweDc4LCAweDY1LCAweDY0LCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDU5LCAweDZmLFxuICAweDc1LCAweDcyLCAweDIwLCAweDczLCAweDZjLCAweDY5LCAweDY0LCAweDY1LCAweDc0LCAweDZmLCAweDcwLCAweDY5LCAweDYzLFxuICAweDYyLCAweDcyLCAweDZmLCAweDc3LCAweDZlLCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDcyLCAweDYxLFxuICAweDc3LCAweDZlLCAweDczLCAweDcwLCAweDZjLCAweDY5LCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDUyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDZmLCAweDY0LCAweDczLCAweDRjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDczLCAweDY0LCAweDZmLCAweDc1LCAweDYyLCAweDc0LCAweDYxLCAweDczLCAweDc5LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDYzLCAweDY4LCAweDY5LFxuICAweDY1LCAweDY2LCAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDZlLCAweDZmLCAweDc2LCAweDY1LCAweDZjLCAweDMxLFxuICAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDc1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZjLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDQzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLCAweDUzLCAweDcwLFxuICAweDYxLCAweDYzLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDZhLCAweDYxLCAweDZkLCAweDY1LCAweDczLFxuICAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDc0LCAweDc3LCAweDY5LCAweDYzLCAweDY1LCAweDMwLCAweDJjLCAweDMwLFxuICAweDMwLCAweDMwLCAweDUzLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDcwLCAweDYxLCAweDZlLCAweDY1LCAweDZjLCAweDczLFxuICAweDZmLCAweDZlLCAweDY3LCAweDczLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDczLCAweDY4LCAweDY5LCAweDY2LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDcwLCAweDZmLFxuICAweDczLCAweDc0LCAweDczLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDczLCAweDc3LCAweDY1LCAweDY1LCAweDZiLCAweDczLFxuICAweDYxLCAweDc2LCAweDZmLCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDY5LCAweDZjLFxuICAweDY1LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDc0LCAweDYxLFxuICAweDZjLCAweDcwLCAweDY4LCAweDYxLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDZkLCAweDYxLCAweDcyLCAweDZiLFxuICAweDczLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDczLCAweDYzLCAweDZjLFxuICAweDYxLCAweDY5LCAweDZkLCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDczLFxuICAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDczLCAweDc3LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDY4LFxuICAweDMzLCAweDNlLCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDZkLFxuICAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY0LCAweDUwLCAweDZmLCAweDc3LCAweDY1LFxuICAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDc0LCAweDZmLCAweDZiLCAweDY1LCAweDZlLCAweDczLCAweDZmLFxuICAweDZjLCAweDY5LCAweDY0LCAweDI4LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDYyLCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDczLCAweDczLCAweDc0LCAweDYxLCAweDY2LCAweDY2LCAweDc0LCAweDcyLCAweDY5LFxuICAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDZjLCAweDc5LCAweDY2LFxuICAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDU0LCAweDY4LCAweDY5LCAweDczLFxuICAweDIwLCAweDJmLCAweDJmLCAweDJkLCAweDJkLCAweDNlLCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY3LFxuICAweDc5LCAweDcwLCAweDc0LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDMxLCAweDM1LCAweDcwLCAweDc4LCAweDNiLFxuICAweDQ1LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDIyLCAweDYzLCAweDcyLCAweDZmLFxuICAweDczLCAweDczLCAweDczLCAweDcwLCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDZjLCAweDZmLCAweDY3LCAweDczLCAweDYyLFxuICAweDZmLCAweDc4LCAweDIyLCAweDNlLCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDZjLCAweDY1LCAweDYxLCAweDc2LFxuICAweDY1LCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDczLCAweDY3LCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDNjLCAweDJmLCAweDY4LCAweDM0LCAweDNlLCAweDcyLCAweDZmLCAweDYyLCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc2LCAweDc5LCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDJjLCAweDczLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDYzLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDczLFxuICAweDY5LCAweDY3LCAweDZlLCAweDczLCAweDYxLCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY1LCAweDcwLCAweDY4LCAweDYxLCAweDczLCAweDY1LCAweDNlLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDY1LCAweDZlLFxuICAweDVmLCAweDU1LCAweDUzLCAweDI2LCAweDIzLCAweDMzLCAweDM5LCAweDNiLCAweDMyLCAweDMwLCAweDMwLCAweDcwLCAweDc4LFxuICAweDVmLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY1LCAweDZlLCAweDZhLFxuICAweDZmLCAweDc5LCAweDYxLCAweDZhLCAweDYxLCAweDc4LCAweDJlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDZkLCAweDY5LCAweDc0LCAweDY4LCAweDU1LCAweDJlLCAweDUzLCAweDJlLCAweDIwLCAweDY4LCAweDZmLCAweDZjLCAweDY0LFxuICAweDczLCAweDcwLCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDYxLFxuICAweDc2LCAweDIyLCAweDNlLCAweDYzLCAweDY4LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDY0LCAweDZmLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDY5LFxuICAweDZmLCAweDcyLCAweDUzLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDMxLCAweDM5LCAweDM5LCAweDMwLCAweDczLCAweDcyLFxuICAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDZhLCAweDYxLCAweDcwLCAweDYxLFxuICAweDZlLCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDc3LFxuICAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDMyLCAweDNlLFxuICAweDYxLCAweDYyLCAweDc1LCAweDczLCAweDY1LCAweDYxLCAweDZjLCAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDcwLCAweDY1LFxuICAweDcyLCAweDYxLCAweDIyLCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDYzLCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDY4LFxuICAweDY5LCAweDZjLCAweDZjLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDZkLCAweDczLCAweDUwLCAweDY4LCAweDZmLCAweDc0LFxuICAweDZmLCAweDc0LCAweDcyLCAweDc1LCAweDc0LCAweDY4LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDZlLCAweDJlLCAweDcwLFxuICAweDY4LCAweDcwLCAweDNmLCAweDczLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDZmLCAweDc1LCAweDY5LCAweDczLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDZmLCAweDY2LCAweDYyLCAweDcyLCAweDY5LCAweDY1LCAweDY2LCAweDcyLCAweDZmLCAweDc3LCAweDIyLCAweDNlLCAweDY3LFxuICAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDZiLCAweDZjLCAweDZmLCAweDZmLCAweDZiLFxuICAweDczLCAweDU2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDQ2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDJlLCAweDZlLFxuICAweDY1LCAweDc0LCAweDJmLCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDdiLFxuICAweDBhLCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDczLFxuICAweDc0LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDYxLCAweDY0LCAweDc1LCAweDZjLCAweDc0LCAweDcxLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDZjLCAweDYxLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDczLCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDZkLCAweDYxLFxuICAweDY3LCAweDY5LCAweDYzLCAweDZkLCAweDZmLCAweDc0LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDcyLFxuICAweDMyLCAweDM1LCAweDMwLCAweDcwLCAweDc4LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDczLCAweDc0LCAweDY1LFxuICAweDcwLCAweDczLCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDY3LFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDY2LCAweDc1LCAweDZlLCAweDY0LFxuICAweDczLCAweDY4LCAweDZmLCAweDc0LCAweDY1LCAweDZjLCAweDYxLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDZkLCAweDZmLFxuICAweDc1LCAweDc0LCAweDY4LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY5LCAweDczLFxuICAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDY0LCAweDc1LCAweDc0LCAweDYzLCAweDY4LCAweDc0LCAweDY1LCAweDc4LFxuICAweDYxLCAweDczLCAweDY2LCAweDcyLCAweDc1LCAweDY5LCAweDc0LCAweDZlLCAweDc1LCAweDZjLCAweDZjLCAweDJjLCAweDdjLFxuICAweDdjLCAweDViLCAweDVkLCAweDNiLCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDUwLCAweDRmLCAweDUzLCAweDU0LCAweDIyLCAweDZmLCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDNjLCAweDYyLFxuICAweDcyLCAweDJmLCAweDNlLCAweDY2LCAweDZjLCAweDZmLCAweDZmLCAweDcyLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLFxuICAweDY0LCAweDY1LCAweDcwLCAweDc0LCAweDY4LCAweDIwLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDYyLCAweDYxLCAweDZlLFxuICAweDZiLCAweDczLCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDc0LCAweDMyLFxuICAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDY0LCAweDY1LCAweDYxLCAweDZjLFxuICAweDczLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDM1LCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDc1LCAweDcyLFxuICAweDZjLCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDcyLCAweDZiLCAweDczLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LFxuICAweDRkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDJlLCAweDJlLCAweDJlLCAweDNjLCAweDJmLCAweDYxLCAweDZkLCAweDZmLFxuICAweDZlLCAweDY3LCAweDYyLCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDZlLFxuICAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDcyLCAweDcyLFxuICAweDc5LCAweDY0LCAweDcyLCAweDYxLCAweDY2LCAweDc0LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcwLCAweDYxLFxuICAweDY3LCAweDY1LCAweDVmLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDJlLCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDcyLFxuICAweDY0LCAweDY1LCAweDZjLCAweDYxLCAweDc5LCAweDY0LCAweDcyLCAweDY1LCAweDYxLCAweDZkLCAweDcwLCAweDcyLCAweDZmLFxuICAweDc2LCAweDY1LCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDY0LFxuICAweDcyLCAweDc1LCAweDY3LCAweDczLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDYxLCAweDcwLCAweDcyLCAweDY5LFxuICAweDZjLCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY1LCAweDc4LFxuICAweDYxLCAweDYzLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDczLFxuICAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDU2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLCAweDczLCAweDY1LCAweDY1LFxuICAweDZkLCAweDczLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDIwLFxuICAweDI4LCAweDMyLCAweDMwLCAweDMwLCAweDczLCAweDYxLCAweDc2LCAweDY1LCAweDY0LCAweDVmLCAweDZjLCAweDY5LCAweDZlLFxuICAweDZiLCAweDY3LCAweDZmLCAweDYxLCAweDZjLCAweDczLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY3LCAweDcyLFxuICAweDY1LCAweDY1LCAweDZiLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDMzLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDc3LCAweDY4LCAweDZmLFxuICAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDI4LCAweDI5LCAweDNiLCAweDIyLCAweDIwLCAweDQyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDZjLCAweDY5LCAweDZlLCAweDc1LCAweDc4LCAweDZhLCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDcwLCAweDY5LCAweDc4LCAweDY1LCAweDZjLCAweDI3LCAweDI5LCAweDNiLCAweDIyLCAweDNlLCAweDI5LCAweDNiLFxuICAweDY5LCAweDY2LCAweDI4LCAweDJkLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDY0LCAweDYxLCAweDc2LCAweDY5LCAweDY0LFxuICAweDY4LCAweDZmLCAweDcyLCAweDczLCAweDY1LCAweDQ2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDcyLCAweDYxLCAweDY5LFxuICAweDczLCAweDY1LCAweDYyLCAweDZmLCAweDc4LCAweDY1LCAweDczLCAweDU0LCAweDcyLCAweDYxLCAweDYzLCAweDZiLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDJmLCAweDY1LCAweDZkLCAweDNlLCAweDYyLCAweDYxLCAweDcyLCAweDIyLFxuICAweDNlLCAweDJlLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDc0LCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDYxLCAweDZjLFxuICAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY4LCAweDY1LCAweDZlLCAweDcyLCAweDc5LFxuICAweDMyLCAweDM0LCAweDcwLCAweDc4LCAweDNiLCAweDczLCAweDY1LCAweDc0LCAweDc1LCAweDcwLCAweDY5LCAweDc0LCAweDYxLFxuICAweDZjLCAweDc5LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDcwLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDc3LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDc0LCAweDY4LCAweDY5LCAweDczLFxuICAweDJlLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDc0LCAweDc3LCAweDY4LCAweDY1LCAweDY1LCAweDZjLCAweDY3LCAweDY5LFxuICAweDcyLCAweDZjLCAweDczLCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDJmLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDNiLFxuICAweDYzLCAweDZjLCAweDc1LCAweDYyLCAweDczLCAweDczLCAweDc0LCAweDc1LCAweDY2LCAweDY2LCAweDYyLCAweDY5LCAweDYyLFxuICAweDZjLCAweDY1LCAweDc2LCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDMxLCAweDMwLCAweDMwLCAweDMwLCAweDZiLFxuICAweDZmLCAweDcyLCAweDY1LCAweDYxLCAweDdkLCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDYyLCAweDYxLCAweDZlLCAweDY0LFxuICAweDczLCAweDcxLCAweDc1LCAweDY1LCAweDc1LCAweDY1LCAweDNkLCAweDIwLCAweDdiLCAweDdkLCAweDNiLCAweDM4LCAweDMwLFxuICAweDcwLCAweDc4LCAweDNiLCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDdiLCAweDBkLCAweDBhLCAweDA5LCAweDA5LFxuICAweDYxLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDYzLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY5LCAweDcyLCAweDY5LFxuICAweDczLCAweDY4LCAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDczLCAweDQ2LCAweDZmLCAweDcyLCAweDZkLCAweDIyLCAweDc5LCAweDYxLCAweDY4LCAweDZmLFxuICAweDZmLCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDNiLCAweDQxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDY2LCAweDY5LFxuICAweDZlLCAweDY0LCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDMxLCAweDNlLCAweDY0LCAweDY1LCAweDYyLCAweDc1LCAweDY3LFxuICAweDc0LCAweDYxLCAweDczLCAweDZiLCAweDczLCAweDU1LCAweDUyLCAweDRjLCAweDIwLCAweDNkLCAweDYzLCAweDY1LCAweDZjLFxuICAweDZjLCAweDczLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDMxLCAweDMyLCAweDcwLCAweDc4LCAweDNiLCAweDcwLFxuICAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDZlLFxuICAweDczLCAweDMwLCAweDc4LCAweDM2LCAweDMwLCAweDMwLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDczLCAweDcwLFxuICAweDYxLCAweDY5LCAweDZlLCAweDYyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDc0LCAweDYxLCAweDc4LCAweDY1LCAweDczLFxuICAweDZkLCAweDY5LCAweDYzLCAweDcyLCAweDZmLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDZjLCAweDJkLCAweDJkLCAweDNlLFxuICAweDNjLCAweDJmLCAweDY3LCAweDY5LCAweDY2LCAweDc0LCAweDczLCAweDczLCAweDc0LCAweDY1LCAweDc2LCAweDY1LCAweDJkLFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDJlLCAweDdkLCAweDI5LCAweDNiLCAweDBhLFxuICAweDA5LCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLCAweDI4LCAweDMxLCAweDM5LCAweDM5LCAweDQ2LCAweDQxLFxuICAweDUxLCAweDNjLCAweDJmLCAweDcyLCAweDZmLCAweDY3LCAweDY1LCAweDcyLCAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweDZiLFxuICAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDMyLCAweDM4LCAweDcwLCAweDc4LCAweDNiLCAweDY2LCAweDY1LCAweDY1LFxuICAweDY0LCAweDczLCAweDNjLCAweDY4LCAweDMxLCAweDNlLCAweDNjLCAweDczLCAweDYzLCAweDZmLCAweDc0LCAweDc0LCAweDc0LFxuICAweDY1LCAweDczLCAweDc0LCAweDczLCAweDMyLCAweDMyLCAweDcwLCAweDc4LCAweDNiLCAweDY0LCAweDcyLCAweDY5LCAweDZlLFxuICAweDZiLCAweDI5LCAweDIwLCAweDdjLCAweDdjLCAweDIwLCAweDZjLCAweDY1LCAweDc3LCAweDY5LCAweDczLCAweDczLCAweDY4LFxuICAweDYxLCAweDZjLCAweDZjLCAweDIzLCAweDMwLCAweDMzLCAweDM5LCAweDNiLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLFxuICAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDMwLCAweDMwLCAweDcwLFxuICAweDc4LCAweDNiLCAweDZhLCAweDYxLCAweDNhLCAweGUzLCAweDgyLCAweDczLCAweDY5LCAweDZkLCAweDZmLCAweDZlLCAweDNjLFxuICAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDc5LCAweDZkLCAweDY1LCAweDY1LCAweDc0LFxuICAweDczLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDY1LCAweDYxLCAweDcwLCAweDc0LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDQyLCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDI5LCAweDIwLCAweDIxLCAweDNkLCAweDIwLFxuICAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDYzLCAweDZjLCAweDY5LCAweDcwLCAweDczLCAweDcyLCAweDZmLCAweDZmLFxuICAweDZkLCAweDczLCAweDZmLCAweDZlLCAweDZiLCAweDY1LCAweDc5LCAweDZkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDZkLFxuICAweDYxLCAweDY5LCAweDZlLCAweDJlLCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY2LCAweDc1LCAweDZlLCAweDZlLCAweDc5LCAweDc0LCAweDcyLCAweDY1LCAweDY1LCAweDczLCAweDYzLCAweDZmLFxuICAweDZkLCAweDJmLCAweDIyLCAweDMxLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDc3LCAweDZkLCAweDZmLCAweDY0LCAweDY1LFxuICAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLCAweDUzLCAweDU0LCAweDQxLCAweDUyLCAweDU0LCAweDZjLCAweDY1LCAweDY2LFxuICAweDc0LCAweDIwLCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDJjLCAweDIwLCAweDMyLCAweDMwLCAweDMxLCAweDI5LFxuICAweDNiLCAweDBhLCAweDdkLCAweDBhLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDJlLCAweDc2LCAweDY5LCAweDcyLCAweDc1LFxuICAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDY5LCAweDcyLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDc3LCAweDZmLFxuICAweDcyLCAweDczLCAweDc0LCAweDUwLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDcwLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDBhLCAweDZmLCAweDJkLCAweDYzLFxuICAweDYxLCAweDYzLCAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDczLCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDJjLFxuICAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDYxLCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDY5LCAweDJiLCAweDJiLCAweDI5LFxuICAweDdiLCAweDYxLCAweDY0LCAweDZmLCAweDYyLCAweDY1LCAweDI3LCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDY5LCAweDY0LFxuICAweDNkLCAweDMxLCAweDMwLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDNiLCAweDZkLCAweDY1LCAweDZlLCAweDc1LCAweDIwLFxuICAweDJlLCAweDMyLCAweDJlLCAweDZkLCAweDY5LCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDZiLCAweDY1LCAweDc2LFxuICAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDQzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDYyLFxuICAweDcyLCAweDc1LCAweDYzLCAweDY1LCAweDMyLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDU1LCAweDUyLCAweDRjLCAweDI5LFxuICAweDJiLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDdjLCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDY1LCAweDczLCAweDZjLFxuICAweDY5LCAweDYzLCAweDY1LCAweDY4LCAweDYxLCAweDcyLCAweDcyLCAweDc5LCAweDMxLCAweDMyLCAweDMwLCAweDIyLCAweDIwLFxuICAweDczLCAweDc3LCAweDY1LCAweDY1LCAweDc0LCAweDc0LCAweDcyLCAweDNlLCAweDBkLCAweDBhLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDY0LCAweDY5LCAweDY1LCAweDY3LCAweDZmLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDczLFxuICAweDc3LCAweDY5LCAweDczLCAweDczLCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDBhLCAweDIzLCAweDY2LCAweDY2LCAweDY2LFxuICAweDNiLCAweDIyLCAweDNlLCAweDRjLCAweDZmLCAweDY3LCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDIyLCAweDc0LCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDI5LCAweDIwLCAweDI2LCAweDI2LCAweDIwLFxuICAweDMxLCAweDM0LCAweDcwLCAweDc4LCAweDNiLCAweDczLCAweDZjLCAweDY1LCAweDY1LCAweDcwLCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDZhLCAweDYxLCAweDNhLCAweGUzLCAweDgzLCAweDY5LFxuICAweDY0LCAweDNkLCAweDIyLCAweDYzLCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDIyLCAweDc3LCAweDZmLCAweDcyLCAweDczLFxuICAweDY1LCAweDczLCAweDY4LCAweDZmLCAweDc0LCAweDczLCAweDJkLCAweDYyLCAweDZmLCAweDc4LCAweDJkLCAweDY0LCAweDY1LFxuICAweDZjLCAweDc0LCAweDYxLCAweDBhLCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDYyLCAweDY1LCAweDYxLCAweDcyLCAweDczLFxuICAweDNhLCAweDM0LCAweDM4LCAweDVhLCAweDNjLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDJkLCAweDcyLCAweDc1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDYyLFxuICAweDYxLCAweDZiLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDczLCAweDNkLCAweDIwLCAweDIyLCAweDIyLFxuICAweDNiLCAweDcwLCAweDY4LCAweDcwLCAweDIyLCAweDNlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMxLCAweDMzLFxuICAweDcwLCAweDc4LCAweDNiLCAweDYyLCAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDY4LCAweDY1LCAweDZjLCAweDZjLCAweDZmLFxuICAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNkLCAweDZmLCAweDNkLCAweDI1LCAweDMyLCAweDQ2LCAweDIwLCAweDZhLCAweDZmLFxuICAweDY5LCAweDZlLCAweDZkLCAweDYxLCAweDc5LCAweDYyLCAweDY1LCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIyLCAweDNlLCAweDJjLCAweDIwLCAweDY2LCAweDZhLCAweDczLCAweDY5LCAweDZkLCAweDY3LCAweDIyLFxuICAweDIwLCAweDIyLCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDRkLCAweDU0LCAweDZmLCAweDcwLCAweDQyLCAweDU0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDIyLCAweDZlLCAweDY1LCAweDc3LCAweDZjLCAweDc5LCAweDQ0LCAweDYxLCAweDZlLCAweDczLCAweDZiLFxuICAweDYzLCAweDdhLCAweDY1LCAweDYzLCAweDY4LCAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDZjLCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDM1LCAweDNlLCAweDY2LCAweDYxLCAweDcxLCAweDIyLCAweDNlLCAweDdhLFxuICAweDY4LCAweDJkLCAweDYzLCAweDZlLCAweDMxLCAweDMwLCAweDI5LCAweDNiLCAweDBhLCAweDJkLCAweDMxLCAweDIyLCAweDI5LFxuICAweDNiLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDYyLCAweDZjLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLFxuICAweDc1LCAweDZjLCAweDc5LCAweDY0LCAweDYxLCAweDc2LCAweDY5LCAweDczLCAweDJlLCAweDZhLCAweDczLCAweDI3LCAweDNiLFxuICAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDIxLCAweDczLCAweDc0LCAweDY1LCAweDY1LCAweDZjLCAweDIwLCAweDc5LCAweDZmLFxuICAweDc1LCAweDIwLCAweDY4LCAweDMyLCAweDNlLCAweDBkLCAweDBhLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZhLFxuICAweDY1LCAweDczLCAweDc1LCAweDczLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDIwLCAweDZkLCAweDY1LCAweDZlLCAweDc1LFxuICAweDJlLCAweDBkLCAweDBhLCAweDA5LCAweDBkLCAweDBhLCAweDc3LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDcyLCAweDY5LFxuICAweDczLCAweDZiLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDYyLCAweDJkLCAweDZjLCAweDY5LCAweDZiLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY3LCAweDY5LCAweDY2LFxuICAweDIyLCAweDIwLCAweDc2LCAweDY1LCAweDY3LCAweDYxLCAweDczLCAweDY0LCAweDYxLCAweDZlLCAweDczLCAweDZiLCAweDY1LFxuICAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDczLCAweDY4LCAweDcxLCAweDY5LCAweDcwLCAweDczLCAweDc1LCAweDZmLCAweDZkLFxuICAweDY5LCAweDczLCAweDZmLCAweDYyLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDY1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDY1LCAweDc0LCAweDZmLCAweDY0LCAweDZmLCAweDczLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDY1LFxuICAweDYxLCAweGMzLCAweGIxLCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGExLCAweDc0LCAweDY5LCAweDY1LFxuICAweDZlLCAweDY1LCAweDY4LCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZmLCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc1LCAweDY1LCAweDc2LFxuICAweDZmLCAweDY4LCAweDYxLCAweDYzLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZkLCAweDY5LFxuICAweDczLCAweDZkLCAweDZmLCAweDZkLCAweDY1LCAweDZhLCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDZlLCAweDY0LCAweDZmLFxuICAweDYxLCAweDcxLCAweDc1LCAweGMzLCAweGFkLCAweDY0LCAweGMzLCAweGFkLCAweDYxLCAweDczLCAweDczLCAweGMzLCAweGIzLFxuICAweDZjLCAweDZmLCAweDYxLCAweDc5LCAweDc1LCAweDY0LCAweDYxLCAweDY2LCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDc0LFxuICAweDZmLCAweDY0LCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDZmLFxuICAweDczLCAweDY0LCAweDYxLCAweDc0LCAweDZmLCAweDczLCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDczLCAweDY5LFxuICAweDc0LCAweDY5LCAweDZmLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDZmLCAweDYxLCAweDY4LCAweDZmLCAweDcyLCAweDYxLFxuICAweDZjLCAweDc1LCAweDY3LCAweDYxLCAweDcyLCAweDZkLCAweDYxLCAweDc5LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY2LCAweDZmLCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDczLCAweDcwLCAweDYxLCAweGMzLCAweGFkLCAweDczLCAweDZlLCAweDc1LCAweDY1LCAweDc2LCAweDYxLCAweDczLCAweDYxLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY2LCAweDZmLCAweDcyLCAweDZmLCAweDczLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDZmLFxuICAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDZkLCAweDY1LCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDY0LFxuICAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDc2LFxuICAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDcyLCAweDZhLCAweDZmLCAweDczLCAweGMzLFxuICAweGE5LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDY3LCAweDcyLFxuICAweDc1LCAweDcwLCAweDZmLCAweDY4LCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDY1LCAweDZjLCAweDZjLCAweDZmLCAweDczLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY3LCAweDZmLCAweDYxLCAweDZkLCAweDY5LCAweDY3LCAweDZmLCAweDYzLCAweDZmLCAweDczLFxuICAweDYxLCAweDczLCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZkLFxuICAweDY5LCAweDczLCAweDZkLCAweDYxLCAweDYxLCAweDY5LCAweDcyLCAweDY1LCAweDczLCAweDZhLCAweDc1LCAweDZjLCAweDY5LFxuICAweDZmLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDY4LCAweDYxLCAweDYzLCAweDY5LCAweDYxLCAweDY2LCAweDYxLFxuICAweDc2LCAweDZmLCAweDcyLCAweDZhLCAweDc1LCAweDZlLCAweDY5LCAweDZmLCAweDZjLCAweDY5LCAweDYyLCAweDcyLCAweDY1LFxuICAweDcwLCAweDc1LCAweDZlLCAweDc0LCAweDZmLCAweDYyLCAweDc1LCAweDY1LCAweDZlLCAweDZmLCAweDYxLCAweDc1LCAweDc0LFxuICAweDZmLCAweDcyLCAweDYxLCAweDYyLCAweDcyLCAweDY5LCAweDZjLCAweDYyLCAweDc1LCAweDY1LCAweDZlLCAweDYxLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDcyLCAweDdhLCAweDZmLCAweDczLCAweDYxLCAweDYyLCAweDY1LFxuICAweDcyLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDY3LCAweDZmLCAweDYzLCAweGMzLFxuICAweGIzLCAweDZkLCAweDZmLCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDZmLCAweDZhLCAweDc1LCAweDY1LCAweDY3LCAweDZmLFxuICAweDcwLCAweDY1LCAweDcyLCAweGMzLCAweGJhLCAweDY4LCAweDYxLCAweDYyLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDc5LCAweDZlLCAweDc1LCAweDZlLCAweDYzLCAweDYxLCAweDZkLCAweDc1LCAweDZhLCAweDY1LCAweDcyLCAweDc2LFxuICAweDYxLCAweDZjLCAweDZmLCAweDcyLCAweDY2LCAweDc1LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY5LCAweDYyLCAweDcyLFxuICAweDZmLCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDYxLCAweDY5LCAweDY3LCAweDc1LCAweDYxLCAweDZjLCAweDc2LCAweDZmLFxuICAweDc0LCAweDZmLCAweDczLCAweDYzLCAweDYxLCAweDczLCAweDZmLCAweDczLCAweDY3LCAweDc1LCAweGMzLCAweGFkLCAweDYxLFxuICAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDZmLCAweDczLCAweDZmLCAweDZkLCAweDZmLCAweDczLCAweDYxLCAweDc2LCAweDY5LFxuICAweDczLCAweDZmLCAweDc1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDZlLCAweDZlLFxuICAweDZmLCAweDYzLCAweDY4LCAweDY1LCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLCAweDY2LCAweDYxLCAweDZjLCAweDc0LFxuICAweDYxLCAweDY1LCAweDc1LCAweDcyLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDY5LFxuICAweDYzLCAweDY4LCAweDZmLCAweDYzLCAweDc1LCAweDcyLCAweDczLCAweDZmLCAweDYzLCAweDZjLCAweDYxLCAweDc2LCAweDY1LFxuICAweDYzLCAweDYxLCAweDczLCAweDYxLCAweDczLCAweDZjLCAweDY1LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDZjLCAweDYxLFxuICAweDdhLCAweDZmLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDZmLCAweDZmLCAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDc2LFxuICAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDYxLCAweDcwLCAweDZmLCAweDc5LCAweDZmLCAweDZhLCAweDc1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDYxLCAweDc2LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDZmLCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDczLFxuICAweDYzLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDZmLCAweDcwLCAweDY5LCAweDczLFxuICAweDZmLCAweDczLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDZlLCAweDY4LCAweDYxLCAweDYzLCAweDY1LCAweDZlLCAweGMzLFxuICAweGExLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDcyLFxuICAweDZmLCAweDYzLCAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDYxLCAweDcwLCAweDYxLFxuICAweDcwLCAweDY1LCAweDZjLCAweDZkLCAweDY1LCAweDZlLCAweDZmLCAweDcyLCAweGMzLCAweGJhLCAweDc0LCAweDY5LCAweDZjLFxuICAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDZmLCAweDZhLCAweDZmLCAweDcyLCAweDY3LCAweDY1LCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDZlLFxuICAweDYxLCAweDY0LCAweDY5LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDY3LCAweDc1LFxuICAweDY1LCAweDY1LCAweDZjLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDZjLCAweDZmLCAweDYzLCAweDZmLFxuICAweDYzLCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDc0LCAweDZmLCAweDczLCAweDZkLCAweDYxLCAweDY0LCAweDcyLCAweDY1LFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweGMzLFxuICAweGIxLCAweDZmLCAweDcxLCAweDc1LCAweDY1LCAweDY0LCAweDYxLCAweDcwLCAweDYxLCAweDczLCAweDYxLCAweDcyLCAweDYyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDY4LCAweDY5LCAweDZhLCAweDZmLCAweDczLCAweDc2LCAweDY5LCAweDYxLCAweDZhLFxuICAweDY1LCAweDcwLCAweDYxLCAweDYyLCAweDZjLCAweDZmLCAweGMzLCAweGE5LCAweDczLCAweDc0LCAweDY1LCAweDc2LCAweDY5LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY1LCAweDY5LCAweDZlLCAweDZmLCAweDY0LCAweDY1LCAweDZhLCAweDYxLCAweDcyLFxuICAweDY2LCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDYzLCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDZlLCAweDZmLCAweDcyLFxuICAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDYxLCAweDc0LFxuICAweDZmLCAweDZkLCAweDYxLCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDZmLCAweDczLCAweDZjLCAweDc1LCAweDZlLCAweDY1LFxuICAweDczLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDczLCAweDc2LCAweDY5LCAweDZjLCAweDZjLCAweDYxLCAweDc2LCAweDY1LFxuICAweDZlLCAweDY0LCAweDZmLCAweDcwLCAweDY1LCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDcwLCAweDZmLCAweDczLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY3LCAweDYxLCAweDZkLCAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LFxuICAweDc2LCAweDYxLCAweDcwLCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDc2LFxuICAweDYxLCAweDZkLCAweDZmLCAweDczLCAweDdhLCAweDZmLCAweDZlLCAweDYxLCAweDczLCAweDYxLCAweDZkLCAweDYyLCAweDZmLFxuICAweDczLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDYxLCAweDYyLFxuICAweDc1LCAweDczLCAweDZmLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDc1LCAweDYyLCAweDY5LCAweDcyLFxuICAweDcyLCAweDY5LCAweDZmLCAweDZhLCAweDYxLCAweDc2LCAweDY5LCAweDc2LCAweDY5LCAweDcyLCAweDY3LCAweDcyLCAweDYxLFxuICAweDY0LCAweDZmLCAweDYzLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDYxLCAweDZjLCAweDZjLCAweGMzLCAweGFkLCAweDZhLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDZjLCAweDY5LCAweDcyLCAweDczLCAweDc1LFxuICAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDczLCAweDZmLCAweDczLCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDczLFxuICAweDZjLCAweDZjLCAweDYxLCAweDZkLCAweDYxLCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweGMzLCAweGE5LCAweDczLFxuICAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZlLCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDcwLFxuICAweDZjLCAweDYxLCAweDdhLCAweDYxLCAweDY4LCAweDc1LCAweDZkLCAweDZmLCAweDcyLCAweDcwLCAweDYxLCAweDY3LCAweDYxLFxuICAweDcyLCAweDZhLCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDczLFxuICAweDZjLCAweDYxLCAweDczLCAweDYyLCAweDZmLCAweDZjLCAweDczLCAweDYxLCAweDYyLCAweDYxLCAweGMzLCAweGIxLCAweDZmLFxuICAweDY4LCAweDYxLCAweDYyLCAweDZjLCAweDYxLCAweDZjLCAweDc1LCAweDYzLCAweDY4LCAweDYxLCAweGMzLCAweDgxLCAweDcyLFxuICAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDZhLCAweDc1LCAweDY3LCAweDYxLCAweDcyLCAweDZlLFxuICAweDZmLCAweDc0LCAweDYxLCAweDczLCAweDc2LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDYxLCAweDZjLCAweDZjLCAweGMzLFxuICAweGExLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDY0LCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDYxLCAweDYyLFxuICAweDYxLCAweDZhLCAweDZmLCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGE5LCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDY2LCAweDY5LCAweDcyLFxuICAweDZkLCAweDYxLCAweDYzLCAweDZmLCAweDczLCAweDc0LCAweDZmLCAweDY2LCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDYxLCAweDY4LCAweDZmLCAweDY3LCAweDYxLCAweDcyLCAweDYxLCAweDcyLCAweDc0LCAweDY1LFxuICAweDczLCAweDZjLCAweDY1LCAweDc5LCAweDY1LCAweDczLCAweDYxLCAweDcxLCAweDc1LCAweDY1LCAweDZjLCAweDZkLCAweDc1LFxuICAweDczLCAweDY1LCAweDZmLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDYzLCAweDZmLCAweDczLFxuICAweDZkLCAweDY5LCAweDc0LCAweDYxLCAweDY0LCAweDYzLCAweDY5LCAweDY1LCAweDZjLCAweDZmLCAweDYzLCAweDY4LCAweDY5LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDY1LCAweDY0LCAweDZmLCAweDY3LCAweDYxLCAweDZlLCAweDYxLCAweDcyLCAweDczLFxuICAweDYxLCAweDZlLCAweDc0LCAweDZmLCAweDY1LCAweDc0LCAweDYxLCAweDcwLCAweDYxLCAweDY0LCAweDY1LCAweDYyLCAweDY1LFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY1LCAweDYxLFxuICAweDY0LCAweDc1LCAweDY0LCAweDYxLCAweDczLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDZmLCAweDc2LCAweDY5LCAweDY1LFxuICAweDZhLCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDYxLCAweDY3LCAweDc1LCAweDYxLCAweDczLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDYzLCAweDZmLFxuICAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDc1LCAweDczLCAweDY1LCAweDc2LCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDZkLCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDc5LCAweDczLCAweDc0LFxuICAweDY1LCAweDZkLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDYxLCAweDZlLCAweDZlLCAweDY1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLFxuICAweDc1LCAweDcwLCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZjLCAweDZmLCAweDYyLCAweDYxLCAweDZjLCAweDZkLFxuICAweDY1LCAweDY0LCAweDY5LCAweDc1LCAweDZkLCAweDY2LCAweDY5LCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDc1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDczLFxuICAweDc1LCAweDZjLCAweDc0LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDcyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDZmLCAweDcyLCAweDZkLCAweDYxLFxuICAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDc2LCAweDY1LCAweDZjLCAweDY5LCAweDczLCAweDczLCAweDc1LCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDczLFxuICAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDZmLCAweDY0LCAweDc1LCAweDZjLCAweDY1LCAweDZkLCAweDZmLFxuICAweDYyLCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDYzLCAweDY4LCAweDcwLCAweDY4LCAweDZmLFxuICAweDc0LCAweDZmLCAweDczLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY5LCAweDc0LCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLFxuICAweDZjLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDZlLFxuICAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDc0LFxuICAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDY1LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLCAweDY1LFxuICAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDY2LCAweDcyLCAweDY5LFxuICAweDY1LCAweDZlLCAweDY0LCAweDZjLCAweDYxLCAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDYxLCAweDc1LCAweDc0LCAweDY4LFxuICAweDZmLCAweDcyLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDY1LFxuICAweDc3LCAweDczLCAweDc1LCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDcyLFxuICAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDY1LFxuICAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDY0LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY0LCAweDZmLCAweDc1LCAweDYyLCAweDZjLCAweDY1LCAweDcwLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDczLFxuICAweDc1LCAweDZlLCAweDY5LCAweDcxLCAweDc1LCAweDY1LCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY3LCAweDc5LCAweDZlLCAweDYxLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY2LCAweDY5LCAweDY3LFxuICAweDc1LCAweDcyLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDc1LCAweDczLCAweDc0LFxuICAweDZmLCAweDZkLCAweDZmLCAweDY2LCAweDY2LCAweDczLCAweDY1LCAweDc0LCAweDZjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LFxuICAweDcyLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LFxuICAweDcyLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDczLCAweDc1LFxuICAweDcwLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY4LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZkLCAweDY1LFxuICAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDczLCAweDczLCAweDYzLCAweDY4LFxuICAweDZmLCAweDZmLCAweDZjLCAweDY2LCAweDc1LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDY4LCAweDYxLCAweDY0LFxuICAweDZmLCAweDc3LCAweDY0LCAweDY1LCAweDYyLCAweDYxLCAweDc0LCAweDY1LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LFxuICAweDczLCAweDRmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLFxuICAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZjLCAweDY1LCAweDYxLCAweDY3LCAweDc1LCAweDY1LCAweDYzLFxuICAweDY4LCAweDcyLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZlLCAweDZmLFxuICAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDcyLFxuICAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLFxuICAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDc3LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDQ2LCAweDcyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDczLCAweDc0LCAweDcyLFxuICAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDRjLCAweDZmLCAweDZlLCAweDY0LFxuICAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LFxuICAweDY0LCAweDY0LCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDY1LFxuICAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLCAweDY3LCAweDY3LCAweDZjLCAweDY1LCAweDcwLFxuICAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYzLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDczLCAweDc0LCAweDcyLFxuICAweDY1LCAweDYxLCAweDZkLCAweDc5LCAweDY1LCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDYxLCAweDc0LCAweDc0LCAweDYxLFxuICAweDYzLCAweDZiLCAweDczLCAweDc0LCAweDcyLCAweDY1LCAweDY1LCAweDc0LCAweDY2LCAweDZjLCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDIyLCAweDNlLFxuICAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDY1LCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDY2LCAweDc1LCAweDZjLCAweDc2LFxuICAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDc5LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDZjLCAweDY1LFxuICAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDczLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY0LCAweDYxLCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDczLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY2LCAweDY5LCAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDc2LCAweDY5LFxuICAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDc2LCAweDZmLCAweDZjLFxuICAweDc1LCAweDZkLCAweDY1LCAweDUyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDZkLCAweDc1LCAweDczLCAweDY1LFxuICAweDc1LCAweDZkLCAweDZkLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLCAweDc5LFxuICAweDZkLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYzLCAweDY4LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDc1LCAweDcyLCAweDc2LCAweDY1LCAweDc5LCAweDYyLCAweDY1LCAweDY2LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc5LCAweDZkLCAweDYyLCAweDZmLCAweDZjLCAweDZkLCAweDZmLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDY1LCAweDY1LCAweDYzLCAweDY4LCAweDZkLCAweDZmLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY5LCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDcyLFxuICAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDQ1LCAweDc1LFxuICAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDc3LCAweDc0LCAweDY4LCAweDZjLCAweDY1LCAweDY3LFxuICAweDYxLCAweDYzLCAweDc5LCAweDZkLCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDc3LCAweDY1LFxuICAweDcyLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZjLFxuICAweDYzLCAweDZjLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLFxuICAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZkLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLFxuICAweDcwLCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDYxLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZkLCAweDcwLFxuICAweDZjLCAweDc5LCAweDcyLCAweDYxLCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLFxuICAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LFxuICAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDYzLFxuICAweDZmLCAweDcyLCAweDZlLCAweDY1LCAweDcyLCAweDZmLCAweDc1LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDZkLCAweDY1LFxuICAweDZkLCAweDZmLCAweDcyLCAweDc5LCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDcwLCAweDZmLCAweDZjLFxuICAweDY5LCAweDYzLCAweDY1LCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDZjLCAweDczLCAweDRlLCAweDc1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDczLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LFxuICAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDczLFxuICAweDY5LCAweDZjLCAweDc2LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYyLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDYyLCAweDcyLCAweDZmLFxuICAweDc3LCAweDczLCAweDY1LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDczLCAweDQ3LCAweDZjLCAweDZmLCAweDYyLFxuICAweDYxLCAweDZjLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LFxuICAweDc0LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYyLCAweDc1LCAweDY0LCAweDY3LCAweDY1LCAweDc0LFxuICAweDZlLCAweDZmLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDYzLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDYzLFxuICAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDYxLFxuICAweDY2LCAweDY1LCAweDc0LCAweDc5LCAweDYzLCAweDY4LCAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDcwLCAweDY5LFxuICAweDcyLCAweDY5LCAweDc0LCAweDJkLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LFxuICAweDYxLCAweDY0LCAweDZkLCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDY1LFxuICAweDY0LCAweDcyLCAweDc1LCAweDczLCAweDczLCAweDY5LCAweDYxLCAweDcwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LFxuICAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDUzLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDYyLFxuICAweDcyLCAweDZmLCAweDZiLCAweDY1LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDYzLCAweDY4LFxuICAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY2LCAweDYxLCAweDYzLFxuICAweDc0LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDJkLCAweDYyLCAweDYxLCAweDczLFxuICAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LFxuICAweDY3LCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDY1LCAweDY0LFxuICAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDY1LCAweDY0LCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDY5LFxuICAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDZjLFxuICAweDc3LCAweDYxLCAweDc5LCAweDczLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDc0LFxuICAweDc0LCAweDZmLCAweDZkLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDIyLCAweDNlLCAweDI5LCAweDdiLCAweDc2LCAweDYxLFxuICAweDcyLCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDY2LCAweDY5LCAweDc4LCAweDZmLCAweDcyLCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDQ4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDJlLCAweDcwLCAweDc1LCAweDczLCAweDY4LCAweDI4LFxuICAweDYzLCAweDZmLCAweDc1LCAweDcwLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDZlLCAweDYyLFxuICAweDcyLCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDZjLCAweDYxLCAweDc1LCAweDZlLCAweDYzLCAweDY4LCAweDUyLCAweDY1LFxuICAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDc0LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDY5LCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDQyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDYxLCAweDc1LCAweDc0LFxuICAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDY3LCAweDZmLCAweDc0LFxuICAweDUzLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDZmLCAweDcyLCAweDYxLFxuICAweDZjLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY1LCAweDY0LCAweDQzLCAweDY4LFxuICAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDRkLCAweDZmLCAweDYyLCAweDY5LFxuICAweDZjLCAweDY1LCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLFxuICAweDc5LCAweDUzLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDczLFxuICAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY1LCAweDY0LCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDYzLFxuICAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LCAweDQxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDczLFxuICAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZmLFxuICAweDZiLCAweDY5LCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDZkLCAweDYxLCAweDdhLFxuICAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDY0LCAweDc2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDY5LCAweDZlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNhLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY0LCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDY3LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDQyLFxuICAweDQ1LCAweDQ3LCAweDQ5LCAweDRlLCAweDIwLCAweDRkLCAweDY1LCAweDc4LCAweDY5LCAweDYzLCAweDZmLCAweDczLCAweDc0LFxuICAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDY4LCAweDY1LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDQ5LCAweDczLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDc0LCAweDczLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLFxuICAweDY1LCAweDUzLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LFxuICAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDZkLFxuICAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDZjLCAweDUzLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDJlLCAweDBhLFxuICAweDBhLCAweDRmLCAweDZlLCAweDY1LCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc1LCAweDIyLCAweDNlLCAweDUwLCAweDY4LCAweDY5LCAweDZjLCAweDY5LCAweDcwLCAweDYxLCAweDc3LCAweDYxLCAweDcyLFxuICAweDY0LCAweDczLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY1LCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LFxuICAweDczLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDczLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDUzLFxuICAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDY0LCAweDY1LCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDc3LCAweDY1LFxuICAweDY1LCAweDZiLCAweDZjLCAweDc5LCAweDIwLCAweDI4LCAweDY1LCAweDJlLCAweDY3LCAweDJlLCAweDYyLCAweDY1LCAweDY4LFxuICAweDY5LCAweDZlLCAweDY0LCAweDY0LCAweDZmLCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDZjLCAweDZmLCAweDY3LCAweDY3LFxuICAweDY1LCAweDY0LCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDYyLCAweDNlLCAweDNjLFxuICAweDJmLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDczLFxuICAweDYxLCAweDczLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDczLCAweDczLCAweDc1LCAweDY1LCAweDY0LCAweDMzLCAweDMwLCAweDMwLCAweDcwLCAweDc4LCAweDdjLCAweDYzLCAweDYxLFxuICAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDczLCAweDYzLCAweDY4LFxuICAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDQyLCAweDcyLCAweDYxLCAweDdhLFxuICAweDY5LCAweDZjLCAweDczLCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDIyLFxuICAweDNlLCAweDYyLCAweDY1LCAweDc5LCAweDZmLCAweDZlLCAweDY0LCAweDJkLCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDY1LFxuICAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDZkLFxuICAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY1LCAweDQ2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDYxLFxuICAweDZkLCAweDY1LCAweDcyLCAweDYxLCAweDNjLCAweDJmLCAweDY4LCAweDMxLCAweDNlLCAweDBhLCAweDVmLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDIyLCAweDZjLCAweDY1LCAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDczLCAweDc0LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBkLCAweDBhLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY1LCAweDcyLFxuICAweDRmLCAweDc4LCAweDY2LCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDczLFxuICAweDc1LCAweDcyLCAweDc2LCAweDY5LCAweDc2LCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY2LCAweDY1LFxuICAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDQ0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDczLCAweDY5LCAweDdhLFxuICAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDc4LCAweDc0LFxuICAweDIyLCAweDNlLCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDczLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZiLFxuICAweDczLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDY0LFxuICAweDYxLCAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDc5LCAweDZmLCAweDZlLCAweDY1LCAweDQxLFxuICAweDY2LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDUwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDNjLCAweDYyLCAweDcyLFxuICAweDIwLCAweDJmLCAweDNlLCAweDc3LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDYzLFxuICAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDdjLCAweDdjLCAweDIwLCAweDdiLCAweDdkLFxuICAweDNiLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDIyLCAweDNlLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LFxuICAweDczLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc5LCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDIyLCAweDNlLCAweDY2LFxuICAweDYxLCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDc1LCAweDczLCAweDZkLCAweDY5LFxuICAweDZlLCAweDc1LCAweDc0LCAweDY1LCAweDYyLCAweDY1LCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDZmLFxuICAweDc0LCAweDY1LCAweDczLCAweDMxLCAweDM1LCAweDMwLCAweDcwLCAweDc4LCAweDdjLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc0LCAweDY1LCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZjLFxuICAweDIyLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDY1LCAweDY0LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNiLFxuICAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDYxLCAweDZjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZjLCAweDMxLFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDc1LCAweDcwLCAweDcwLCAweDcyLFxuICAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDJlLCAweDcwLCAweDZlLFxuICAweDY3LCAweDIyLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZkLCAweDJlLCAweDQxLCAweDYzLCAweDYzLCAweDY1LFxuICAweDczLCAweDczLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDczLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDczLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDQ4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDczLCAweDZjLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LCAweDIyLCAweDI2LFxuICAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDIwLCAweDQyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDJlLCAweDIwLFxuICAweDU3LCAweDY5LCAweDc0LCAweDY4LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLCAweDZmLCAweDc3LCAweDZlLFxuICAweDY1LCAweDcyLCAweDczLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY2LFxuICAweDY5LCAweDc0LCAweDZhLCAweDUxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDYxLCAweDZlLCAweDZlLCAweDc1LCAweDYxLFxuICAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDYyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LFxuICAweDY2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY3LCAweDZmLCAweDZmLCAweDY3LCAweDZjLCAweDY1LCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDY5LCAweDJiLCAweDJiLCAweDI5LCAweDIwLCAweDdiLCAweDY5LCAweDczLFxuICAweDcyLCAweDYxLCAweDY1LCAweDZjLCAweDczLCAweDYxLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDYzLFxuICAweDY5LCAweDY0LCAweDY1LCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDIyLCAweDNlLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDYyLCAweDcyLCAweDYxLCAweDZlLCAweDYzLFxuICAweDY4LCAweDcwLCAweDY5LCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLCAweDNjLCAweDcyLFxuICAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDJkLCAweDJkLFxuICAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDc0LCAweDc5LCAweDczLCAweDY1LCAweDc4LFxuICAweDc1LCAweDYxLCAweDZjLCAweDYyLCAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDc1LCAweDJlLCAweDZhLCAweDcwLCAweDY3LFxuICAweDIyLCAweDIwLCAweDMxLCAweDMwLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDZmLCAweDYyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDczLCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDJjLCAweDIwLCAweDQ5LCAweDZlLCAweDYzLCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDY0LCAweDc5LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc1LCAweDIyLCAweDIwLCAweDZjLCAweDc5LCAweDcyLCAweDY5LCAweDYzLCAweDczLCAweDc0LCAweDZmLFxuICAweDY0LCAweDYxLCAweDc5LCAweDJlLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDc1LFxuICAweDZlLCAweDc0LCAweDc5LCAweDVmLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDJlLCAweDQ2LCAweDYxLCAweDZkLCAweDY5LFxuICAweDZjLCAweDc5LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY1LCAweDY0LCAweDRkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LFxuICAweDc0LCAweDZjLCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDY2LCAweDUwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLFxuICAweDc0LCAweDc1LCAweDcyLCAweDZiLCAweDY1LCAweDc5LCAweDI5LCAweDNiLCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY3LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDcyLFxuICAweDcyLCAweDZmLCAweDcyLCAweDczLCAweDQ0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDdkLCAweDY1LCAweDZjLFxuICAweDczLCAweDY1LCAweDdiLCAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc0LCAweDQyLCAweDZjLCAweDZmLCAweDY3LFxuICAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLFxuICAweDJlLCAweDY2LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDczLFxuICAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDMxLCAweDMwLCAweDcwLCAweDc4LCAweDIwLCAweDMwLCAweDcwLFxuICAweDcyLCAweDYxLCAweDY3LCAweDZkLCAweDYxLCAweDY2LCAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDc5LCAweDZhLCAweDc1LFxuICAweDZlLCAweDY5LCAweDZmLCAweDcyLCAweDY0LCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDcyLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDZjLCAweDc1LCAweDY3LFxuICAweDY5LCAweDZlLCAweDM1LCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDIyLFxuICAweDNlLCAweDYyLCAweDZmLCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDJlLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDI4LFxuICAweDYxLCAweDc2LCAweDYxLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDVmLFxuICAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZkLCAweDczLCAweDczLCAweDYzLFxuICAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJjLCAweDY2LCAweDY5LCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY1LCAweDcyLCAweDc0LCAweDI4LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLFxuICAweDcyLCAweDUzLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDIyLCAweDNlLFxuICAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIyLCAweDNlLCAweDBhLCAweDJhLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDU0LFxuICAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDczLCAweDY1LCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDZhLCAweDY1LFxuICAweDcyLCAweDczLCAweDY1LCAweDc5LCAweDRlLCAweDY1LCAweDc3LCAweDczLCAweDNjLCAweDJmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY5LCAweDY2LCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDZhLCAweDc1LFxuICAweDcyLCAweDc5LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDQzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LFxuICAweDY1LCAweDUzLCAweDU0LCAweDQxLCAweDUyLCAweDU0LCAweDIwLCAweDYxLCAweDYzLCAweDcyLCAweDZmLCAweDczLCAweDczLFxuICAweDVmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDcwLCAweDZmLCAweDYzLCAweDZiLCAweDY1LCAweDc0LCAweDYyLCAweDZmLFxuICAweDc4LCAweDIyLCAweDNlLCAweDBhLCAweDUzLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDIwLCAweDQ0LCAweDYxLFxuICAweDc2LCAweDY5LCAweDY0LCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDQxLCAweDcwLCAweDcyLCAweDY5LCAweDZjLFxuICAweDIwLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDIyLCAweDNlLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIyLCAweDNlLCAweDYyLFxuICAweDZmLCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDczLCAweDYzLCAweDYxLFxuICAweDZkLCAweDcwLCAweDc1LCAweDczLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDdjLCAweDdjLCAweDIwLFxuICAweDViLCAweDVkLCAweDNiLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDJlLCAweDY3LCAweDc1LCAweDY5LCAweDc0LFxuICAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LFxuICAweDNhLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDRmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLFxuICAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDIyLCAweDIwLCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDczLCAweDc3LCAweDY5LCAweDZjLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDY2LCAweDczLCAweDc3LCAweDY1LFxuICAweDY0LCAweDY1LCAweDZlLCAweDQzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDY5LFxuICAweDZjLCAweDc5LCAweDIwLCAweDc5LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDUzLCAweDc0LCAweDcyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDBhLCAweDBhLCAweDU3LCAweDY4LCAweDY5LCAweDZjLCAweDc0LCAweDYxLCAweDc5LCAweDZjLCAweDZmLCAweDcyLFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDNhLCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDc0LCAweDY2LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIyLCAweDI5LFxuICAweDIwLCAweDJiLCAweDIwLCAweDIyLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDYyLCAweDc1LCAweDc5LFxuICAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDRkLCAweDY1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIyLCAweDNlLCAweDZmLCAweDcwLCAweDcwLCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDM1LCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLFxuICAweDc2LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY1LCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDIwLCAweDYzLCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDY1LCAweDZkLCAweDYxLFxuICAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDZkLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY4LCAweDYxLCAweDcwLFxuICAweDcwLCAweDY1LCAweDZlLCAweDNjLCAweDJmLCAweDZlLCAweDYxLCAweDc2LCAweDNlLCAweDZiLCAweDYxLCAweDZlLCAweDczLFxuICAweDYxLCAweDczLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDQ5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDNkLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLFxuICAweDY4LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY1LCAweDMwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDIwLFxuICAweDBhLCAweDBhLCAweDQ5LCAweDZlLCAweDIwLCAweDIwLCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDUwLCAweDZmLFxuICAweDZjLCAweDczLCAweDZiLCAweDY5LCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDZhLCAweDZmLCAweDcyLFxuICAweDY0LCAweDYxLCAweDZlLCAweDQyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDUzLCAweDc0LCAweDYxLCAweDcyLFxuICAweDc0LCAweDIwLCAweDJkLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDMyLCAweDJlLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDZlLCAweDY1LCAweDc3LCAweDczLCAweDIyLCAweDNlLCAweDMwLCAweDMxLCAweDJlLCAweDZhLCAweDcwLCAweDY3LFxuICAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDZkLFxuICAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDZlLCAweDY5LCAweDZmLCAweDcyLCAweDQ5LCAweDUzLFxuICAweDQyLCAweDRlLCAweDIwLCAweDMwLCAweDMwLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDY3LCAweDc1LCAweDY5LFxuICAweDY0LCAweDY1LCAweDczLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDI5LCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDY5LCAweDcyLCAweDJlLCAweDc4LCAweDZkLCAweDZjLCAweDIyLFxuICAweDIwLCAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLFxuICAweDJkLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDcyLCAweDY1LCAweDY3LCAweDQ1LCAweDc4LCAweDcwLCAweDNhLFxuICAweDY4LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDc2LCAweDY5LFxuICAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDcwLCAweDY4LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDc0LFxuICAweDcyLCAweDNlLCAweDBkLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDBhLCAweDA5LCAweDc2LCAweDYxLFxuICAweDcyLCAweDIwLCAweDNlLCAweDI3LCAweDI5LCAweDNiLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDBhLCAweDYyLCAweDYxLCAweDY4LCAweDYxLCAweDczLCAweDYxLFxuICAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDY5LCAweDZjLCAweDY3LCAweDYxLCAweDZjLCAweDY1LCAweDY3LCAweDZmLCAweDZkLFxuICAweDYxLCAweDY3LCAweDc5LCAweDYxLCAweDcyLCAweDcwLCAweDZmLCAweDZjLCAweDczLCAweDZiLCAweDY5LCAweDczLCAweDcyLFxuICAweDcwLCAweDczLCAweDZiLCAweDY5LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGU0LCAweGI4LCAweGFkLFxuICAweGU2LCAweDk2LCAweDg3LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweGU3LCAweGI5LCAweDgxLCAweGU5LFxuICAweGFiLCAweDk0LCAweGU0LCAweGJmLCAweGExLCAweGU2LCAweDgxLCAweGFmLCAweGU0LCAweGI4LCAweGFkLCAweGU1LCAweDliLFxuICAweGJkLCAweGU2LCAweDg4LCAweDkxLCAweGU0LCAweGJiLCAweGFjLCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGI4LCAweGFhLFxuICAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDhmLCAweGI4LCAweGU3LCAweGFlLCAweGExLCAweGU3LCAweDkwLCAweDg2LCAweGU4LFxuICAweGFlLCAweGJhLCAweGU1LCAweDlkLCAweDliLCAweGU1LCAweDhmLCAweGFmLCAweGU0LCAweGJiLCAweGE1LCAweGU2LCAweDljLFxuICAweDhkLCAweGU1LCAweDhhLCAweGExLCAweGU2LCAweDk3LCAweGI2LCAweGU5LCAweDk3LCAweGI0LCAweGU0LCAweGI4LCAweGFhLFxuICAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGJhLCAweGE3LCAweGU1LCAweDkzLCAweDgxLCAweGU4LCAweDg3LCAweGFhLCAweGU1LFxuICAweGI3LCAweGIxLCAweGU0LCAweGJjLCAweDgxLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDlmLCAweGE1LCAweGU3LCAweDljLFxuICAweDhiLCAweGU1LCAweGI3LCAweGE1LCAweGU0LCAweGJkLCAweDljLCAweGU4LCAweDgxLCAweDk0LCAweGU3LCAweGIzLCAweGJiLFxuICAweGU2LCAweGIyLCAweGExLCAweGU2LCAweDljLCAweDg5LCAweGU3LCAweGJkLCAweDkxLCAweGU3LCAweGFiLCAweDk5LCAweGU2LFxuICAweDg5LCAweDgwLCAweGU2LCAweDljLCAweDg5LCAweGU4LCAweGFmLCAweDg0LCAweGU4LCAweGFlLCAweGJhLCAweGU0LCAweGI4LFxuICAweGFkLCAweGU1LCAweGJmLCAweDgzLCAweGU2LCAweDk2LCAweDg3LCAweGU3LCAweGFiLCAweGEwLCAweGU3LCAweDk0LCAweGE4LFxuICAweGU2LCAweDg4LCAweGI3LCAweGU5LCAweGE2LCAweDk2LCAweGU5LCAweGExLCAweGI1LCAweGU0LCAweGJkLCAweDljLCAweGU4LFxuICAweDgwLCAweDg1LCAweGU2LCAweDhhLCAweDgwLCAweGU2LCAweDljLCAweGFmLCAweGU5LCAweDk3LCAweGFlLCAweGU5LCAweGEyLFxuICAweDk4LCAweGU3LCAweDliLCAweGI4LCAweGU1LCAweDg1LCAweGIzLCAweGU0LCAweGI4LCAweDhiLCAweGU4LCAweGJkLCAweGJkLFxuICAweGU2LCAweDkwLCAweDljLCAweGU3LCAweGI0LCAweGEyLCAweGU0LCAweGJkLCAweGJmLCAweGU3LCAweDk0LCAweGE4LCAweGU4LFxuICAweGJkLCAweGFmLCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDljLCAweGE4LCAweGU3LCAweGJhLCAweGJmLCAweGU0LCAweGI4LFxuICAweGJiLCAweGU5LCAweGEyLCAweDk4LCAweGU4LCAweGI1LCAweDg0LCAweGU2LCAweDk2LCAweDk5LCAweGU4LCAweGE3LCAweDg2LFxuICAweGU5LCAweGEyLCAweDkxLCAweGU1LCAweDliLCAweDllLCAweGU1LCAweGE0LCAweDhkLCAweGU2LCAweGIzLCAweGE4LCAweGU1LFxuICAweDg2LCAweDhjLCAweGU3LCAweGJkLCAweDkxLCAweGU3LCAweGJiLCAweDljLCAweGU2LCAweDk0LCAweGI2LCAweGU4LCAweDk3LFxuICAweDhmLCAweGU1LCAweDg2LCAweDg1LCAweGU1LCAweGFlLCAweGI5LCAweGU2LCAweDhlLCAweGE4LCAweGU4LCAweDhkLCAweDkwLFxuICAweGU1LCAweGI4LCAweDgyLCAweGU1LCAweDljLCAweGJhLCAweGU2LCAweGI2LCAweDg4LCAweGU2LCAweDgxLCAweGFmLCAweGU3LFxuICAweGE5LCAweGJhLCAweGU5LCAweDk3LCAweGI0LCAweGU1LCAweDhmLCAweDkxLCAweGU1LCAweGI4LCAweDgzLCAweGU0LCAweGJiLFxuICAweDgwLCAweGU0LCAweGI5LCAweDg4LCAweGU1LCAweGE1LCAweGJkLCAweGU1LCAweDhmLCAweDhiLCAweGU3LCAweDk0LCAweDlmLFxuICAweGU2LCAweGI0LCAweGJiLCAweGU1LCAweDliLCAweGJlLCAweGU3LCAweDg5LCAweDg3LCAweGU1LCAweDhmLCAweDkxLCAweGU1LFxuICAweGIxLCAweDk1LCAweGU1LCAweGE2LCAweDgyLCAweGU2LCAweDllLCAweDljLCAweGU2LCAweDg5LCAweDhiLCAweGU2LCAweDljLFxuICAweGJhLCAweGU2LCAweDk2LCAweGIwLCAweGU5LCAweDk3LCAweGJiLCAweGU2LCAweDljLCAweDgwLCAweGU2LCAweDk2LCAweGIwLFxuICAweGU2LCAweDk2LCAweGI5LCAweGU1LCAweGJjLCAweDhmLCAweGU1LCAweDhjLCAweDk3LCAweGU0LCAweGJhLCAweGFjLCAweGU2LFxuICAweDhmLCAweDkwLCAweGU0LCAweGJlLCAweDliLCAweGU1LCAweDg1LCAweGIzLCAweGU0LCAweGJhLCAweDhlLCAweGU2LCAweDliLFxuICAweGI0LCAweGU1LCAweGE0LCAweDlhLCAweGU4LCAweGJmLCAweDk5LCAweGU0LCAweGI4LCAweGFhLCAweGU3LCAweGIzLCAweGJiLFxuICAweGU3LCAweGJiLCAweDlmLCAweGU3LCAweDlmLCAweGE1LCAweGU5LCAweDgxLCAweDkzLCAweGU2LCAweGI4LCAweGI4LCAweGU2LFxuICAweDg4LCAweDhmLCAweGU1LCAweGI5LCAweGJmLCAweGU1LCAweDkxLCAweDhhLCAweGU1LCAweDg1LCAweGI2LCAweGU0LCAweGJiLFxuICAweDk2LCAweGU1LCAweDhmLCAweDkxLCAweGU4LCAweGExLCAweGE4LCAweGU1LCAweGFlLCAweDg5LCAweGU1LCAweDg1LCAweGE4LFxuICAweGU3LCAweGFjLCAweGFjLCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGJjLCAweDlhLCAweGU1LCAweDkxLCAweDk4LCAweGU4LFxuICAweGJmLCAweDliLCAweGU4LCAweGExLCAweDhjLCAweGU3LCAweDgyLCAweGI5LCAweGU1LCAweDg3LCAweGJiLCAweGU3LCAweDg5LFxuICAweDg4LCAweGU2LCAweDlkLCAweDgzLCAweGU3LCAweDk0LCAweGI1LCAweGU1LCAweGFkLCAweDkwLCAweGU0LCAweGI4LCAweDk2LFxuICAweGU3LCAweDk1LCAweDhjLCAweGU4LCAweGFlLCAweGJlLCAweGU4LCAweGFlLCAweGExLCAweGU1LCAweDg1LCAweDhkLCAweGU4LFxuICAweGI0LCAweGI5LCAweGU2LCAweDk1LCAweDk5LCAweGU4LCAweDgyLCAweGIyLCAweGU1LCAweDhhLCAweGEwLCAweGU1LCAweDg1LFxuICAweGE1LCAweGU2LCAweGI0LCAweGJiLCAweGU1LCAweDhhLCAweGE4LCAweGU0LCAweGJiLCAweDk2LCAweGU0LCAweGJiLCAweGFjLFxuICAweGU1LCAweDk1LCAweDg2LCAweGU1LCAweDkzLCAweDgxLCAweGU1LCAweDhkLCAweDlhLCAweGU1LCAweGFlLCAweGEyLCAweGU3LFxuICAweDhlLCAweGIwLCAweGU1LCAweDljLCAweGE4LCAweGU0LCAweGI4LCAweDhhLCAweGU2LCAweGI1LCAweGI3LCAweGU1LCAweGE2LFxuICAweDgyLCAweGU0LCAweGJkLCAweDk1LCAweGU1LCAweGI3LCAweGIyLCAweGU3LCAweGJiLCAweDhmLCAweGU3LCAweDk1LCAweDk5LFxuICAweGU4LCAweGE4LCAweDgwLCAweGU4LCAweGFmLCAweGE2LCAweGU3LCAweGJiLCAweDg2LCAweGU3LCAweGE0LCAweGJlLCAweGU1LFxuICAweDhjLCAweGJhLCAweGU3LCAweDk5LCAweGJiLCAweGU1LCAweGJkLCAweDk1LCAweGU2LCAweDljLCAweGFjLCAweGU3LCAweGFiLFxuICAweDk5LCAweGU5LCAweDljLCAweDgwLCAweGU4LCAweGE2LCAweDgxLCAweGU0LCAweGJiLCAweGI3LCAweGU2LCAweGEwLCAweGJjLFxuICAweGU2LCAweDk0LCAweGFmLCAweGU2LCAweDhjLCAweDgxLCAweGU1LCAweDliLCAweGJkLCAweGU5LCAweDk5LCAweDg1LCAweGU5LFxuICAweDkzLCAweGJlLCAweGU2LCAweDhlLCAweGE1LCAweGU1LCAweDliLCAweGJkLCAweGU1LCAweGFlLCAweGI2LCAweGU1LCAweGJiLFxuICAweGJhLCAweGU4LCAweGFlLCAweGJlLCAweGU2LCAweDljLCAweDhiLCAweGU1LCAweDhmLCAweDhiLCAweGU5LCAweDk4LCAweDg1LFxuICAweGU4LCAweGFmLCAweGJiLCAweGU2LCAweGIzLCAweDk1LCAweGU1LCAweGJlLCAweDhiLCAweGU0LCAweGJkLCAweDhkLCAweGU3LFxuICAweGJkLCAweGFlLCAweGU3LCAweGJiLCAweDhmLCAweGU2LCAweGI1LCAweDhlLCAweGU5LCAweDgwLCAweDg5LCAweGU2LCAweDhiLFxuICAweGE5LCAweGU4LCAweGJmLCAweDk5LCAweGU2LCAweGEwLCAweGI3LCAweGU1LCAweGJkLCAweDkzLCAweGU1LCAweDg5LCAweDhkLFxuICAweGU1LCAweDg4LCAweDg2LCAweGU3LCAweGIxLCAweGJiLCAweGU2LCAweDhlLCAweDkyLCAweGU4LCAweGExLCAweDhjLCAweGU1LFxuICAweDliLCAweGEwLCAweGU0LCAweGI4LCAweGJhLCAweGU0LCAweGJhLCAweGE0LCAweGU2LCAweDk4LCAweDkzLCAweGU2LCAweDljLFxuICAweDgwLCAweGU1LCAweDkwLCAweDhlLCAweGU5LCAweDlmLCAweGIzLCAweGU0LCAweGI5LCAweDkwLCAweGU0LCAweGI4LCAweDhkLFxuICAweGU4LCAweDgzLCAweGJkLCAweGU5LCAweDgwLCAweDlhLCAweGU4LCAweGJmLCAweDg3LCAweGU4LCAweGExLCAweDhjLCAweGU0LFxuICAweGI4LCAweDlhLCAweGU3LCAweGE3LCAweDkxLCAweGU2LCAweDhhLCAweDgwLCAweGU1LCAweDhmLCAweGFmLCAweGU4LCAweDgzLFxuICAweGJkLCAweGU4LCAweGFlLCAweGJlLCAweGU1LCAweGE0LCAweDg3LCAweGU1LCAweDkwLCAweDg4LCAweGU0LCAweGJkLCAweDljLFxuICAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweGFlLCAweGI2LCAweGU3LCAweGE0LCAweGJlLCAweGU0LCAweGJjLCAweDlhLCAweGU3LFxuICAweGEwLCAweDk0LCAweGU3LCAweGE5LCAweGI2LCAweGU0LCAweGI4LCAweDkzLCAweGU0LCAweGI4LCAweDlhLCAweGU1LCAweDg1LFxuICAweGE4LCAweGU5LCAweDgzLCAweGE4LCAweGU5LCAweGExLCAweGI5LCAweGU3LCAweDliLCAweGFlLCAweGU4LCAweGJmLCAweDk5LFxuICAweGU5LCAweDg3LCAweDhjLCAweGU4LCAweGJmLCAweDk4LCAweGU2LCAweDk4LCAweGFmLCAweGU1LCAweGJjLCAweDgwLCAweGU1LFxuICAweGE3LCAweDhiLCAweGU2LCAweDgzLCAweDg1LCAweGU1LCAweDg2LCAweGI1LCAweGU3LCAweDk0LCAweGI1LCAweGU4LCAweDg0LFxuICAweDkxLCAweGU2LCAweDk2LCAweDg3LCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDkzLCAweDgxLCAweGU3LCAweDg5LCAweDhjLFxuICAweGU1LCAweGI4LCAweGFlLCAweGU1LCAweDhhLCAweGE5LCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweDhjLCAweDk2LCAweGU4LFxuICAweGI1LCAweDg0LCAweGU2LCAweGJhLCAweDkwLCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweGFkLCAweGE2LCAweGU1LCAweGFkLFxuICAweGE2LCAweGU0LCAweGI5LCAweGEwLCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweDlkLCAweDgwLCAweGU2LCAweGI1LCAweDhmLFxuICAweGU4LCAweGE3LCAweDg4LCAweGU2LCAweDhhLCAweDk1LCAweGU4LCAweGI1LCAweDg0LCAweGU1LCAweGI3LCAweGE1LCAweGU3LFxuICAweGE4LCAweDhiLCAweGU4LCAweGE2LCAweDgxLCAweGU2LCAweGIxLCAweDgyLCAweGU2LCAweDgwLCAweDhlLCAweGU0LCAweGI5LFxuICAweDg4LCAweGU2LCAweDk3LCAweGI2LCAweGU1LCAweDgwLCAweDk5LCAweGU1LCAweDhhLCAweDlmLCAweGU4LCAweDgzLCAweGJkLFxuICAweGU0LCAweGI4LCAweGJiLCAweGU4LCAweGE2LCAweDgxLCAweGU3LCAweDliLCAweGFlLCAweGU1LCAweDg5LCAweDhkLCAweGU4LFxuICAweGI1LCAweDg0LCAweGU4LCAweGFlLCAweGFmLCAweGU1LCAweDlmLCAweDhlLCAweGU1LCAweGI4LCAweDgyLCAweGU2LCAweDk2LFxuICAweGI5LCAweGU2LCAweGIzLCAweDk1LCAweGU3LCAweDk0LCAweGI1LCAweGU1LCAweGJkLCAweGIxLCAweGU2LCAweDhiLCAweDliLFxuICAweGU4LCAweDgxLCAweDk4LCAweGU1LCAweGEzLCAweGIwLCAweGU2LCAweDk4LCAweDhlLCAweGU0LCAweGJiLCAweGJiLCAweGU0LFxuICAweGJkLCAweDk1LCAweGU1LCAweDgxLCAweGE1LCAweGU1LCAweGJhLCAweGI3LCAweGU2LCAweDk1LCAweGIwLCAweGU2LCAweDhkLFxuICAweGFlLCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweDliLCAweGJkLCAweGU2LCAweGIxLCAweGJkLCAweGU4LCAweGJkLCAweGE2LFxuICAweGU0LCAweGJiLCAweDhiLCAweGU3LCAweGJiLCAweDhkLCAweGU0LCAweGJkLCAweDg2LCAweGU2LCAweDk4LCAweGFmLCAweGU0LFxuICAweGJhLCAweGE0LCAweGU2LCAweGI1LCAweDgxLCAweGU3LCAweDk0LCAweDlmLCAweGU0LCAweGJhLCAweGE3LCAweGU2LCAweDg5LFxuICAweDgwLCAweGU0LCAweGJiLCAweGE1LCAweGU3LCAweDk0LCAweGI1LCAweGU4LCAweGFmLCAweDlkLCAweGU2LCAweDk4LCAweGJlLFxuICAweGU3LCAweGE0LCAweGJhLCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGJhLCAweDliLCAweGU1LCAweDhkLCAweDk1LCAweGU0LFxuICAweGJkLCAweDhkLCAweGU0LCAweGJhLCAweGJhLCAweGU1LCAweDkxLCAweDk4LCAweGU1LCAweDg4LCAweDg2LCAweGU2LCAweDllLFxuICAweDkwLCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweDliLCAweGJlLCAweGU2LCAweDk3LCAweDg1LCAweGU2LCAweGI4LCAweGI4LFxuICAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweDg1LCAweGI3LCAweGU1LCAweGFkLCAweGE2LCAweGU3LCAweDk0LCAweDlmLCAweGU3LFxuICAweGIzLCAweGJiLCAweGU1LCAweDg4LCAweDk3LCAweGU3LCAweGJkLCAweDkxLCAweGU1LCAweDhmLCAweDhiLCAweGU1LCAweGI4LFxuICAweDk2LCAweGU1LCAweGFkLCAweDkwLCAweGU1LCAweGFmLCAweDg2LCAweGU3LCAweGEwLCAweDgxLCAweGU5LCAweGEyLCAweDkxLFxuICAweGU5LCAweDgxLCAweDkzLCAweGU2LCAweDhlLCAweGE3LCAweGU1LCAweDg4LCAweGI2LCAweGU1LCAweDljLCAweGIwLCAweGU1LFxuICAweDhjLCAweGJhLCAweGU1LCAweDlmLCAweGJhLCAweGU2LCAweDljLCAweGFjLCAweGU1LCAweDg1LCAweGE4LCAweGU1LCAweDliLFxuICAweGJkLCAweGU3LCAweGJkLCAweDkxLCAweGU0LCAweGI4LCAweDhhLCAweGU5LCAweDg3LCAweDhkLCAweGU4LCAweGE2LCAweDgxLFxuICAweGU3LCAweGFjLCAweGFjLCAweGU0LCAweGJhLCAweDhjLCAweGU1LCAweDk2LCAweDljLCAweGU2LCAweGFjLCAweGEyLCAweGU4LFxuICAweGJmLCAweDliLCAweGU1LCAweDg1LCAweGE1LCAweGU1LCAweDhmLCAweDhiLCAweGU2LCAweDgzLCAweDg1LCAweGU4LCAweGJmLFxuICAweDk5LCAweGU0LCAweGJhLCAweDliLCAweGU4LCAweDgwLCAweDgzLCAweGU4LCAweGFmLCAweDk1LCAweGU1LCAweDhmLCAweDkxLFxuICAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweDlmLCAweGI5LCAweGU4LCAweGFlLCAweGFkLCAweGU0LCAweGJiLCAweGE1LCAweGU0LFxuICAweGI4LCAweDhhLCAweGU2LCAweDk0LCAweGJmLCAweGU1LCAweGJhLCAweDljLCAweGU2LCAweDg4LCAweDkwLCAweGU0LCAweGI4LFxuICAweGJhLCAweGU3LCAweDhlLCAweGFmLCAweGU1LCAweGEyLCAweDgzLCAweGU5LCAweGE2LCAweDk5LCAweGU2LCAweGI4LCAweGFmLFxuICAweGU1LCAweDkwLCAweDhjLCAweGU2LCAweDk3LCAweGI2LCAweGU1LCAweGE4LCAweGIxLCAweGU0LCAweGI5LCAweDkwLCAweGU1LFxuICAweDhmLCAweDkxLCAweGU5LCAweDgwLCAweDgxLCAweGU0LCAweGI4LCAweDgwLCAweGU1LCAweGFlLCAweDlhLCAweGU1LCAweGJjLFxuICAweDgwLCAweGU1LCAweDhmLCAweDkxLCAweGU0LCAweGJkLCAweDljLCAweGU1LCAweDkzLCAweDgxLCAweGU2LCAweGEwLCAweDg3LFxuICAweGU1LCAweDg3LCAweDg2LCAweGU2LCAweGFjLCAweGEyLCAweGU4LCAweGJmLCAweDhlLCAweGU4LCAweGE3LCAweGEzLCAweGU1LFxuICAweDg2LCAweGIzLCAweGU1LCAweDljLCAweGIwLCAweGU2LCAweDk2LCAweGI5LCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGI4LFxuICAweDhiLCAweGU0LCAweGJiLCAweGE1LCAweGU1LCAweDhmLCAweDhhLCAweGU4LCAweGI0LCAweGEzLCAweGU0LCAweGJiLCAweGJiLFxuICAweGU2LCAweDg4LCAweDk2LCAweGU4LCAweDgwLCAweDg1LCAweGU1LCAweGFlLCAweGEyLCAweGU2LCAweDg4LCAweGI3LCAweGU0LFxuICAweGJiLCAweGEzLCAweGU4LCAweGExLCAweGE4LCAweGU3LCAweGE3LCAweGFmLCAweGU1LCAweDg4LCAweDg2LCAweGU1LCAweGE1LFxuICAweGIzLCAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweDk1LCAweGIwLCAweGU3LCAweGEwLCAweDgxLCAweGU5LCAweDk0LCAweDgwLFxuICAweGU1LCAweDk0LCAweGFlLCAweGU1LCAweDg3LCAweGJhLCAweGU3LCAweDhlLCAweGIwLCAweGU3LCAweGE2LCAweGJiLCAweGU3LFxuICAweGJhLCAweGJmLCAweGU1LCAweGJhLCAweDk0LCAweGU3LCAweDk0LCAweGE4LCAweGU1LCAweDg4LCAweDk3LCAweGU4LCAweGExLFxuICAweGE4LCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweDkwLCAweDhjLCAweGU3LCAweGJjLCAweDk2LCAweGU4LCAweGJlLCAweDkxLFxuICAweGU3LCAweGJiLCAweDlmLCAweGU4LCAweGFlLCAweGExLCAweGU2LCAweDlmLCAweGE1LCAweGU4LCAweGFmLCAweGEyLCAweGU0LFxuICAweGI4LCAweDhkLCAweGU4LCAweGE2LCAweDgxLCAweGU2LCAweDljLCAweDg5LCAweGU1LCAweDg1LCAweGIzLCAweGU2LCAweDljLFxuICAweGJhLCAweGU2LCAweDllLCAweDg0LCAweGU1LCAweGJlLCAweDg4LCAweGU1LCAweGE0LCAweDlhLCAweGU2LCAweDkyLCAweGFkLFxuICAweGU2LCAweDk0LCAweGJlLCAweGU3LCAweGJiLCAweDg0LCAweGU3LCAweGJiLCAweDg3LCAweGU2LCAweDk0LCAweGJmLCAweGU3LFxuICAweGFkLCAweDk2LCAweGU3LCAweDliLCAweGI0LCAweGU2LCAweDhlLCAweGE1LCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweDhhLFxuICAweDliLCAweGU2LCAweDlkLCAweGE1LCAweGU2LCAweGJhLCAweDkwLCAweGU2LCAweDk5LCAweDgyLCAweGU5LCAweDk2LCAweDkzLFxuICAweGU3LCAweDljLCAweDhiLCAweGU1LCAweDg4LCAweGIwLCAweGU3LCAweDgzLCAweGFkLCAweGU5LCAweDk3LCAweGE4LCAweGU1LFxuICAweDg1LCAweGIzLCAweGU5LCAweDk0LCAweGFlLCAweGU0LCAweGI4LCAweDkzLCAweGU1LCAweDhjLCAweGJhLCAweGU5LCAweDlkLFxuICAweDllLCAweGU1LCAweGI4LCAweGI4LCAweGU4LCAweDhiLCAweGIxLCAweGU4LCAweGFmLCAweGFkLCAweGU3LCAweDk5LCAweGJlLFxuICAweGU1LCAweGJhLCAweGE2LCAweGU1LCAweGI4LCAweDhjLCAweGU2LCAweDljLCAweDliLCAweGU3LCAweGJlLCAweDhlLCAweGU1LFxuICAweGE1LCAweGIzLCAweGU2LCAweGFmLCAweDk0LCAweGU4LCAweGJlLCAweDgzLCAweGU3LCAweDlmLCAweGE1LCAweGU4LCAweGFmLFxuICAweDg2LCAweGU4LCAweGE3LCAweDg0LCAweGU1LCAweGFlLCAweDlhLCAweGU1LCAweGJiLCAweGJhLCAweGU4LCAweGFlLCAweGFlLFxuICAweGU5LCAweDgzLCAweGE4LCAweGU5LCAweDk3LCAweGE4LCAweGU2LCAweDg0LCAweDhmLCAweGU4LCAweGE3LCAweDgxLCAweGU3LFxuICAweGIyLCAweGJlLCAweGU1LCAweGJkLCAweGE5LCAweGU2LCAweDk3LCAweGE1LCAweGU2LCAweDljLCAweGFjLCAweGU2LCAweDhmLFxuICAweDkwLCAweGU5LCAweGFiLCAweDk4LCAweGU1LCAweDhmLCAweDkxLCAweGU4LCAweGE4LCAweDgwLCAweGU2LCAweDk2LCAweGI5LFxuICAweGU5LCAweDlkLCAweGEyLCAweGU1LCAweDlmLCAweGJhLCAweGU5LCAweDg3LCAweDkxLCAweGU1LCAweGE0LCAweDg0LCAweGU3LFxuICAweDkwLCAweDg2LCAweGU2LCAweDlkLCAweDgzLCAweGU5LCAweDk5LCAweDkwLCAweGU1LCAweGJkLCAweGIxLCAweGU3LCAweDg5LFxuICAweDg3LCAweGU5LCAweDkzLCAweGI2LCAweGU4LCAweGExLCAweDhjLCAweGU4LCAweGJmLCAweDk4LCAweGU2LCAweDljLCAweDg5LFxuICAweGU1LCAweDg4LCAweDg2LCAweGU0LCAweGJhLCAweGFiLCAweGU3LCAweDg5LCAweGE5LCAweGU1LCAweDkzLCAweDgxLCAweGU3LFxuICAweGJiLCAweDhmLCAweGU4LCAweDkwLCAweGE1LCAweGU2LCAweGI3LCAweGJiLCAweGU1LCAweDhhLCAweGEwLCAweGU0LCAweGI4LFxuICAweDkzLCAweGU1LCAweGFlLCAweGI2LCAweGU4LCAweGJmLCAweDk5LCAweGU3LCAweGE3LCAweDhkLCAweGU4LCAweGFmLCAweDlkLFxuICAweGU5LCAweGEyLCAweDk4LCAweGU4LCAweGI1LCAweGI3LCAweGU2LCAweDlkLCAweGE1LCAweGU0LCAweGI4LCAweDlhLCAweGU1LFxuICAweDhhLCAweGExLCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDkxLCAweDhhLCAweGU4LCAweGFlLCAweGIwLCAweGU1LCAweGJkLFxuICAweDk1LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJiLCAweDhiLCAweGU4LCAweGI0LCAweGE4LCAweGU5LCAweDg3LCAweDhmLFxuICAweGU3LCAweDk0LCAweGI3LCAweGU0LCAweGJhLCAweGJhLCAweGU1LCAweGJkLCAweGIxLCAweGU1LCAweDkzLCAweDhkLCAweGU1LFxuICAweGJjLCAweDk1LCAweGU3LCAweDk0LCAweGE4LCAweGU2LCAweDhhLCAweGE1LCAweGU1LCAweDkxLCAweDhhLCAweGU5LCAweDgzLFxuICAweGE4LCAweGU1LCAweDg4LCAweDg2LCAweGU1LCAweGJmLCAweGFiLCAweGU5LCAweDgwLCAweDlmLCAweGU1LCAweDkyLCAweGE4LFxuICAweGU4LCAweGFmLCAweGEyLCAweGU2LCAweDk3LCAweGI2LCAweGU1LCAweGIwLCAweDlhLCAweGU2LCAweGIzLCAweGE4LCAweGU2LFxuICAweDg0LCAweDhmLCAweGU3LCAweDk0LCAweGIzLCAweGU4LCAweGFmLCAweGI3LCAweGU1LCAweGFkLCAweGE2LCAweGU2LCAweGEwLFxuICAweGExLCAweGU1LCAweGJhLCAweDk0LCAweGU4LCAweGFmLCAweGE1LCAweGU1LCAweDhlLCAweDg2LCAweGU1LCAweDhmLCAweGIyLFxuICAweGU1LCAweDhmLCAweGFhLCAweGU2LCAweDk4LCAweGFmLCAweGU4LCAweGJmLCAweDk0LCAweGU1LCAweDliLCAweDllLCAweGU4LFxuICAweGI0LCAweGFkLCAweGU0LCAweGI5LCAweGIwLCAweGU1LCAweDkwLCAweDhkLCAweGU3LCAweGE3LCAweGIwLCAweGU0LCAweGI4LFxuICAweGJhLCAweGU0LCAweGJhLCAweDg2LCAweGU2LCAweDg4LCAweDkwLCAweGU1LCAweDhhLCAweDlmLCAweGU4LCAweGFmLCAweGI0LFxuICAweGU2LCAweDk4LCAweDhlLCAweGU0LCAweGJlLCAweDliLCAweGU1LCAweGJhLCAweDk0LCAweGU1LCAweGFkLCAweGE5LCAweGU1LFxuICAweGFkLCAweDkwLCAweGU0LCAweGI4LCAweDkzLCAweGU5LCAweGEyLCAweDk4LCAweGU3LCAweGE4LCAweDhiLCAweGU1LCAweGJhLFxuICAweDhmLCAweGU0LCAweGI4LCAweDgwLCAweGU4LCAweDg4LCAweGFjLCAweGU2LCAweDljLCAweDgzLCAweGU1LCAweDkzLCAweGExLFxuICAweGU1LCAweDhmLCAweGFhLCAweGU2LCAweDljLCAweDg5LCAweGU1LCAweDg1LCAweGI2LCAweGU1LCAweGFlLCAweDgzLCAweGU0LFxuICAweGJmLCAweDlkLCAweGU2LCAweDhhLCAweGE0LCAweGU4LCAweDgwLCAweDhjLCAweGU0LCAweGI4LCAweDk0LCAweGU0LCAweGJiLFxuICAweDhhLCAweGU1LCAweGE0LCAweGE5LCAweGU3LCAweGFhLCAweDk3LCAweGU1LCAweDhmLCAweGEzLCAweGU1LCAweDhhLCAweGE4LFxuICAweGU2LCAweDgwLCAweDgxLCAweGU3LCAweDhhLCAweGI2LCAweGU2LCAweDgwLCAweDgxLCAweGU3LCAweDg5LCAweGI5LCAweGU1LFxuICAweDg4LCAweGFiLCAweGU4LCAweGFlLCAweGE0LCAweGU0LCAweGI4LCAweGJhLCAweGU1LCAweGJmLCAweDg1LCAweGU5LCAweGExLFxuICAweGJiLCAweGU2LCAweDliLCAweGI0LCAweGU2LCAweDk2LCAweGIwLCAweGU1LCAweGIwLCAweDhmLCAweGU4LCAweGFmLCAweGI0LFxuICAweGU2LCAweDg4LCAweDkxLCAweGU1LCAweDgwLCAweDkxLCAweGU0LCAweGJkLCAweDljLCAweGU0LCAweGI4LCAweGJhLCAweGU1LFxuICAweGFhLCAweDkyLCAweGU0LCAweGJkLCAweDkzLCAweGU1LCAweDhjLCAweDg1LCAweGU2LCAweDhiLCAweGFjLCAweGU5LCAweDgyLFxuICAweGEzLCAweGU0LCAweGI5LCAweDg4LCAweGU0LCAweGI4LCAweDgwLCAweGU2LCAweGEwLCAweGI3LCAweGU1LCAweDliLCAweGJkLFxuICAweGU1LCAweDg2LCAweDg1LCAweGU2LCAweDk4LCAweGFmLCAweGU1LCAweDkwLCAweGE2LCAweGU2LCAweGEwLCAweGI5LCAweGU2LFxuICAweDhkLCAweGFlLCAweGU3LCAweDk0LCAweGI1LCAweGU4LCAweGE3LCAweDg2LCAweGU1LCAweGFkLCAweGE2LCAweGU5LCAweDk5LFxuICAweGEyLCAweGU1LCAweDg1LCAweGI3LCAweGU2LCAweDljLCAweDg5LCAweGU4LCAweGJmLCAweDg3LCAweGU3LCAweGE4LCAweDhiLFxuICAweGU3LCAweDk0LCAweGIxLCAweGU0LCAweGJhLCAweDhlLCAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweDg5LCAweDhkLCAweGU1LFxuICAweDg3LCAweGJhLCAweGU2LCAweDlkLCAweGE1LCAweGU0LCAweGI4LCAweDhkLCAweGU4LCAweGJmLCAweDg3LCAweGU2LCAweGFkLFxuICAweGEzLCAweGU1LCAweDljLCAweGE4LCAweGU2LCAweDk4LCAweDhlLCAweGU2LCAweDk4LCAweDlmLCAweGU2LCAweDk1LCAweDg1LFxuICAweGU0LCAweGJhLCAweDhiLCAweGU1LCAweDg1LCAweGIzLCAweGU3LCAweGIzLCAweGJiLCAweGU2LCAweGEwLCAweDg3LCAweGU5LFxuICAweGEyLCAweDk4LCAweGU1LCAweDk1LCAweDg2LCAweGU1LCAweDhhLCAweGExLCAweGU4LCAweGJlLCAweDkzLCAweGU1LCAweDg1LFxuICAweGE1LCAweGU0LCAweGI4LCAweDgwLCAweGU3LCAweDliLCAweGI0LCAweGU1LCAweDlmLCAweGJhLCAweGU3LCAweGExLCAweDgwLFxuICAweGU2LCAweDk1LCAweDk5LCAweGU1LCAweGFkLCAweGE2LCAweGU0LCAweGJhLCAweDg2LCAweGU4LCAweGE3LCAweGEzLCAweGU1LFxuICAweGJiLCAweGJhLCAweGU3LCAweGFkLCAweDkxLCAweGU3LCAweGJiLCAweDkzLCAweGU2LCAweDllLCAweDljLCAweGU1LCAweDg1LFxuICAweGE4LCAweGU3LCAweDkwLCAweDgzLCAweGU5LCAweDgwLCAweDlhLCAweGU3LCAweDlmLCAweGE1LCAweGU4LCAweGFlLCAweGExLFxuICAweGU1LCAweDg4LCAweDkyLCAweGU1LCAweGFmLCAweGI5LCAweGU0LCAweGJhLCAweDhlLCAweGU4LCAweDg5LCAweGJhLCAweGU2LFxuICAweDljLCAweGFmLCAweGU3LCAweDliLCAweGI4LCAweGU1LCAweDg2LCAweDhjLCAweGU1LCAweDhmLCAweDkxLCAweGU3LCAweDk0LFxuICAweDlmLCAweGU3LCAweDljLCAweDlmLCAweGU3LCAweDlhLCAweDg0LCAweGU1LCAweGJiLCAweGJhLCAweGU3LCAweGFiLCAweDhiLFxuICAweGU3LCAweGFkLCAweDg5LCAweGU3LCAweGJhLCAweGE3LCAweGU3LCAweGIxLCAweGJiLCAweGU1LCAweDllLCAweDhiLCAweGU3LFxuICAweGJiLCAweDhmLCAweGU5LCAweGFhLCAweDhjLCAweGU1LCAweGFlLCAweDllLCAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweDg4LFxuICAweGI2LCAweGU0LCAweGJkLCAweDljLCAweGU2LCAweDlkLCAweGE1LCAweGU4LCAweDg3LCAweGFhLCAweGU2LCAweGEwLCAweDg3LFxuICAweGU3LCAweGFkLCAweGJlLCAweGU0LCAweGJiLCAweGE1LCAweGU0LCAweGI4LCAweDhiLCAweGU1LCAweDhlLCAweDlmLCAweGU1LFxuICAweDg4LCAweDliLCAweGU2LCAweDk3LCAweGEwLCAweGU2LCAweGIzLCAweDk1LCAweGU1LCAweDg1LCAweGI2LCAweGU0LCAweGI4LFxuICAweGFkLCAweGU1LCAweDgwLCAweDhiLCAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGI4LCAweDgwLCAweGU1LCAweDg4LCAweDg3LFxuICAweGU2LCAweDhjLCAweDg3LCAweGU1LCAweDhkLCAweDk3LCAweGU1LCAweDg1LCAweGIzLCAweGU5LCAweDk3LCAweGFkLCAweGU5LFxuICAweDliLCAweDg2LCAweGU1LCAweDliLCAweGEyLCAweGU3LCAweGFjLCAweGFjLCAweGU0LCAweGI4LCAweDg5LCAweGU1LCAweDg1LFxuICAweGIzLCAweGU2LCAweGIzLCAweGE4LCAweGU1LCAweDliLCAweGEwLCAweGU2LCAweGFkLCAweGE0LCAweGU3LCAweDg1LCAweGE3LFxuICAweGU3LCAweDg5LCAweDg3LCAweGU2LCAweGI3LCAweGIxLCAweGU1LCAweDljLCAweGIzLCAweGU1LCAweDk1LCAweDg2LCAweGU0LFxuICAweGI4LCAweDlhLCAweGU1LCAweGI5LCAweGJmLCAweGU1LCAweGI3LCAweDllLCAweGU2LCAweDk3LCAweGE1LCAweGU2LCAweDljLFxuICAweDlmLCAweGU5LCAweGFiLCAweDk4LCAweGU3LCAweGJhLCAweGE3LCAweGU2LCAweDljLCAweDgwLCAweGU4LCAweGJmLCAweDkxLFxuICAweGU3LCAweGJiLCAweGJjLCAweGU1LCAweDkwLCAweDg4LCAweGU4LCAweGExLCAweGE4LCAweGU3LCAweGE0LCAweGJhLCAweGU0LFxuICAweGI4LCAweDkzLCAweGU4LCAweGJlLCAweDkxLCAweGU4LCAweGExLCAweDhjLCAweGU0LCAweGI4LCAweGJhLCAweGU0LCAweGJhLFxuICAweGE0LCAweGU5LCAweDgwLCAweDlhLCAweGU4LCAweGFmLCAweDg0LCAweGU0LCAweGJiLCAweGI3LCAweGU4LCAweGE3LCAweDg5LFxuICAweGU1LCAweGJlLCAweDk3LCAweGU3LCAweGIyLCAweGJlLCAweGU1LCAweDhkLCAweDhlLCAweGU1LCAweGFlLCAweGI2LCAweGU1LFxuICAweGJhLCAweGFkLCAweGU1LCAweGFlLCAweDhjLCAweGU2LCAweDg4LCAweDkwLCAweGU2LCAweDg0LCAweDlmLCAweGU4LCAweGE3LFxuICAweDg5LCAweGU1LCAweGFlLCAweDg5LCAweGU4LCAweGEzLCAweDg1LCAweGU1LCAweGJlLCAweDk3LCAweGU1LCAweDg4LCAweGIwLFxuICAweGU5LCAweDgyLCAweGFlLCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDg4LCAweGI2LCAweGU1LCAweGJhLCAweGE2LCAweGU5LFxuICAweGEzLCAweDlmLCAweGU1LCAweDkzLCAweDgxLCAweGU4LCAweDk5LCAweGJkLCAweGU3LCAweDg0LCAweGI2LCAweGU4LCAweGJkLFxuICAweGFjLCAweGU4LCAweGJkLCAweGJkLCAweGU2LCAweDhhLCAweGE1LCAweGU0LCAweGJiLCAweGI3LCAweGU4LCAweGFlLCAweGIwLFxuICAweGU4LCAweDgwLCAweDg1LCAweGU2LCAweDk2LCAweGI5LCAweGU2LCAweGExLCAweDg4LCAweGU4LCAweGExLCAweDhjLCAweGU2LFxuICAweDk0LCAweGJmLCAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweGIwLCAweDkxLCAweGU3LCAweDk0LCAweGE4LCAweGU1LCAweDkzLFxuICAweDgxLCAweGU0LCAweGI4LCAweDljLCAweGU4LCAweGE1LCAweGJmLCAweGU2LCAweDhmLCAweDkwLCAweGU1LCAweDg3LCAweGJhLFxuICAweGU5LCAweDg1LCAweDkyLCAweGU1LCAweGJhLCAweDk3LCAweGU3LCAweDg0LCAweGI2LCAweGU1LCAweDkwLCAweDhlLCAweGU0LFxuICAweGJiLCAweDk4LCAweGU2LCAweGFjLCAweGJlLCAweGU3LCAweDgzLCAweGFkLCAweGU3LCAweDgyLCAweGI5LCAweGU0LCAweGJiLFxuICAweGE1LCAweGU1LCAweDg5LCAweDhkLCAweGU1LCAweGFlLCAweDhjLCAweGU1LCAweDg1LCAweGE4LCAweGU1LCAweDhmLCAweDkxLFxuICAweGU1LCAweGI4LCAweDk2LCAweGU4LCAweGFlLCAweGJlLCAweGU3LCAweGJkLCAweGFlLCAweGU5LCAweGEyLCAweDg2LCAweGU1LFxuICAweGFmLCAweGJjLCAweGU1LCAweGI3LCAweGE1LCAweGU0LCAweGI4LCAweDlhLCAweGU1LCAweDhjLCAweGJiLCAweGU5LCAweDk5LFxuICAweGEyLCAweGU3LCAweDljLCAweDhiLCAweGU3LCAweDljLCAweDhiLCAweGU3LCAweGJiLCAweDhmLCAweGU1LCAweDg1LCAweGI4LFxuICAweGU1LCAweDhlLCAweDlmLCAweGU1LCAweDliLCAweGEwLCAweGU1LCAweGI5LCAweGIzLCAweGU1LCAweDhmLCAweGIwLCAweGU1LFxuICAweDkwLCAweDg0LCAweGU3LCAweGE3LCAweDhkLCAweGU1LCAweGEyLCAweDllLCAweGU1LCAweDhhLCAweGEwLCAweGU2LCAweDlkLFxuICAweDkwLCAweGU2LCAweDk2LCAweDk5LCAweGU2LCAweDk2LCAweGIwLCAweGU1LCAweGEyLCAweDllLCAweGU0LCAweGI5LCAweDhiLFxuICAweGU1LCAweDkwLCAweDhlLCAweGU4LCAweDgxLCAweDhjLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDk1LCAweDg4LCAweGU2LFxuICAweDllLCAweDljLCAweGU0LCAweGJiLCAweDhhLCAweGU1LCAweGI5LCAweGI0LCAweGU4LCAweGFlLCAweGJhLCAweGU2LCAweDk2LFxuICAweDg3LCAweGU2LCAweDg4LCAweDkxLCAweGU1LCAweDliLCAweGJkLCAweGU1LCAweDkxLCAweDhhLCAweGU4LCAweGFmLCAweDg5LFxuICAweGU3LCAweDg5LCAweDg4LCAweGU0LCAweGI4LCAweGJiLCAweGU0LCAweGJmLCAweGFlLCAweGU2LCAweDk0LCAweGI5LCAweGU1LFxuICAweDhmLCAweDgyLCAweGU0LCAweGI4LCAweDhlLCAweGU2LCAweDg5LCAweDkzLCAweGU1LCAweDhkLCAweGIwLCAweGU1LCAweGJmLFxuICAweGFiLCAweGU0LCAweGI5LCAweDkwLCAweGU2LCAweDljLCAweGJhLCAweGU2LCAweGEyLCAweGIwLCAweGU4LCAweGE3LCAweDgyLFxuICAweGU3LCAweDgyLCAweGI5LCAweGU1LCAweGFkLCAweDk4LCAweGU1LCAweDljLCAweGE4LCAweGU3LCAweGIyLCAweGJlLCAweGU3LFxuICAweGE1LCAweDllLCAweGU4LCAweDhlLCAweGI3LCAweGU1LCAweGJlLCAweDk3LCAweGU1LCAweDg4LCAweGE5LCAweGU3LCAweDk0LFxuICAweGE4LCAweGU3LCAweGJiLCAweGE3LCAweGU3LCAweGJiLCAweGFkLCAweGU0LCAweGJkLCAweGEwLCAweGU0LCAweGJiLCAweGFjLFxuICAweGU4LCAweGJmLCAweDk5LCAweGU0LCAweGI5LCAweDg4LCAweGU2LCAweGE4LCAweGExLCAweGU1LCAweGJjLCAweDhmLCAweGU4LFxuICAweGFmLCAweGFkLCAweGU4LCAweGE4LCAweDgwLCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweGE0LCAweDlmLCAweGU5LCAweDliLFxuICAweDg1LCAweGU4LCAweDk5LCAweDhlLCAweGU2LCAweDkzLCAweDhkLCAweGU0LCAweGJkLCAweDljLCAweGU5LCAweGEzLCAweDhlLFxuICAweGU2LCAweGEwLCAweGJjLCAweGU0LCAweGI4LCAweDgwLCAweGU4LCAweGI1LCAweGI3LCAweGU3LCAweGE3LCAweDkxLCAweGU1LFxuICAweGFkLCAweGE2LCAweGU0LCAweGJkLCAweDkzLCAweGU4LCAweDgyLCAweGIyLCAweGU3LCAweDlmLCAweGFkLCAweGU0LCAweGJmLFxuICAweGExLCAweGU2LCAweDlkLCAweGExLCAweGU0LCAweGJiLCAweGI2LCAweGU2LCAweGIyLCAweGJiLCAweGU3LCAweDk2LCAweDk3LFxuICAweGU4LCAweGJmLCAweDkwLCAweGU1LCAweDhhLCAweGE4LCAweGU0LCAweGJhLCAweGE3LCAweGU0LCAweGI4LCAweDlhLCAweGU0LFxuICAweGJjLCAweDlhLCAweGU4LCAweGFlLCAweGFlLCAweGU1LCAweGFmLCAweGJjLCAweGU4LCAweDg4LCAweGFhLCAweGU1LCAweDg1LFxuICAweDg4LCAweGU3LCAweDk0LCAweDlmLCAweGU4LCAweDgxLCAweDk0LCAweGU3LCAweDliLCAweDlmLCAweGU1LCAweDhmLCAweGFmLFxuICAweGU2LCAweDk4LCAweGFmLCAweGU1LCAweDk1LCAweDhmLCAweGU5LCAweGExLCAweDhjLCAweGU3LCAweGJiLCAweDkzLCAweGU2LFxuICAweDllLCAweDg0LCAweGU0LCAweGJkLCAweDljLCAweGU3LCAweDk0LCAweGE4LCAweGU4LCAweGIwLCAweDgzLCAweGU2LCAweDlmLFxuICAweGE1LCAweGU4LCAweGIzLCAweDg3LCAweGU2LCAweDk2LCAweDk5LCAweGU4LCAweDg3LCAweGFhLCAweGU1LCAweDhhLCAweGE4LFxuICAweGU4LCAweGI0LCAweDlmLCAweGU4LCAweGI0LCAweGEzLCAweGU1LCAweDg2LCAweDljLCAweGU0LCAweGI4LCAweDlhLCAweGU4LFxuICAweGFlLCAweGJmLCAweGU5LCAweDk3LCAweGFlLCAweGU1LCAweGFlLCAweDllLCAweGU2LCAweDk2LCAweGJkLCAweGU2LCAweDhlLFxuICAweGE1LCAweGU1LCAweDhmLCAweDk3LCAweGU4LCAweGFlLCAweGE4LCAweGU4LCAweGFlLCAweGJhLCAweGU5LCAweDgyLCAweGEzLFxuICAweGU0LCAweGI4LCAweGFhLCAweGU1LCAweDhmLCAweDhkLCAweGU5LCAweGE2LCAweDg4LCAweGU1LCAweDhhLCAweGEwLCAweGU1LFxuICAweGJjLCAweGJhLCAweGU1LCAweGE1LCAweGIzLCAweGU2LCAweDgwLCAweGE3LCAweGU4LCAweDhjLCAweDgzLCAweGU1LCAweDliLFxuICAweGI0LCAweGU2LCAweDljLCAweDhkLCAweGU1LCAweDhiLCAweDk5LCAweGU0LCAweGJjLCAweDkxLCAweGU5LCAweDk3LCAweGIyLFxuICAweGU0LCAweGJiLCAweDhhLCAweGU2LCAweDk3LCAweGE1LCAweGU1LCAweGFlLCAweGEyLCAweGU2LCAweDljLCAweDhkLCAweGU4LFxuICAweGE3LCAweDgwLCAweGU3LCAweDljLCAweDhiLCAweGU1LCAweDhmLCAweDgyLCAweGU1LCAweDhhLCAweGEwLCAweGU3LCAweDlhLFxuICAweDg0LCAweGU4LCAweGFmLCAweDlkLCAweGU0LCAweGI4LCAweDgwLCAweGU3LCAweDgyLCAweGI5LCAweGU0LCAweGJmLCAweDlkLFxuICAweGU4LCAweGFmLCAweDgxLCAweGU1LCAweDliLCAweGJlLCAweGU0LCAweGI5LCAweGE2LCAweGU2LCAweDljLCAweDg5LCAweGU2LFxuICAweDk1LCAweDg4LCAweGU2LCAweGI1LCAweDhiLCAweGU4LCAweGFmLCAweDk1LCAweGU3LCAweGE3LCAweGJiLCAweGU1LCAweDhhLFxuICAweGE4LCAweGU2LCAweDg5LCAweDhkLCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweDg2LCAweGIzLCAweGU1LCAweGFlLCAweDlhLFxuICAweGU4LCAweDgyLCAweGExLCAweGU3LCAweGE1LCAweGE4LCAweGU0LCAweGI4LCAweDhkLCAweGU2LCAweDk2LCAweGFkLCAweGU5LFxuICAweDljLCAweDgwLCAweGU2LCAweGIxLCAweDgyLCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweGJlLCAweDk3LCAweGU1LCAweDhhLFxuICAweDllLCAweGU2LCAweGIzLCAweDk1LCAweGU0LCAweGI5LCAweDhiLCAweGU5LCAweDk3LCAweGI0LCAweGU5LCAweDg3LCAweDg3LFxuICAweGU3LCAweDk0LCAweGE4LCAweGU4LCAweDkwLCAweGE1LCAweGU5LCAweDk0LCAweDgwLCAweGU2LCAweDhhLCAweDk1LCAweGU4LFxuICAweGFmLCAweDg5LCAweGU3LCAweDliLCAweGFlLCAweGU2LCAweGEwLCAweDg3LCAweGU3LCAweDg4LCAweGIxLCAweGU2LCAweDgzLFxuICAweDg1LCAweGU2LCAweDkxLCAweDg0LCAweGU1LCAweGJkLCAweGIxLCAweGU2LCAweDljLCAweDg5LCAweGU0LCAweGJhLCAweDliLFxuICAweGU4LCAweGE0LCAweDg3LCAweGU4LCAweGEzLCAweGJkLCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweGFkLCAweGE2LCAweGU2LFxuICAweDljLCAweGJhLCAweGU0LCAweGJjLCAweDlhLCAweGU2LCAweDk1LCAweGIwLCAweGU1LCAweGFkLCAweDk3LCAweGU4LCAweGEzLFxuICAweDg1LCAweGU0LCAweGJmLCAweGFlLCAweGU4LCAweGI0LCAweGFkLCAweGU3LCAweDg5LCAweGE5LCAweGU1LCAweDg2LCAweDljLFxuICAweGU2LCAweDlkLCAweDkxLCAweGU1LCAweDg1LCAweGE4LCAweGU5LCAweDlkLCAweGEyLCAweGU3LCAweGIyLCAweGJlLCAweGU1LFxuICAweDkzLCAweDgxLCAweGU1LCAweDg1LCAweGI2LCAweGU1LCAweGFlLCAweDllLCAweGU0LCAweGJhLCAweDhiLCAweGU2LCAweDgzLFxuICAweDg1LCAweGU2LCAweGIwLCAweGI0LCAweGU1LCAweGI5LCAweGIzLCAweGU2LCAweDhmLCAweDkwLCAweGU3LCAweGE0LCAweGJhLFxuICAweGU0LCAweGI4LCAweDhhLCAweGU1LCAweGI4LCAweDgyLCAweGU4LCAweGIwLCAweGEyLCAweGU4LCAweGIwLCAweGEyLCAweGU2LFxuICAweDk5LCAweGFlLCAweGU5LCAweDgwLCAweDlhLCAweGU2LCAweDk1LCAweDk5LCAweGU1LCAweGI4LCAweDg4LCAweGU0LCAweGI4LFxuICAweDhhLCAweGU0LCAweGJjLCAweGEwLCAweGU3LCAweGIxLCAweGJiLCAweGU1LCAweDg4LCAweGFiLCAweGU2LCAweGFkLCAweDhjLFxuICAweGU2LCAweDliLCAweGIyLCAweGU2LCAweDhiLCAweGE1LCAweGU2LCAweDljLCAweDg5LCAweGU1LCAweDg4LCAweDliLCAweGU2LFxuICAweDk2LCAweGIwLCAweGU5LCAweDg1LCAweDhkLCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDhmLCAweGFhLCAweGU4LCAweGE2LFxuICAweDgxLCAweGU2LCAweDk3LCAweGI2LCAweGU0LCAweGJiLCAweGEzLCAweGU4LCAweGIzLCAweDg3LCAweGU4LCAweGE4LCAweDhhLFxuICAweGU4LCAweGJlLCAweGJlLCAweGU1LCAweDg4LCAweGIwLCAweGU0LCAweGJhLCAweGJhLCAweGU3LCAweDk0LCAweDlmLCAweGU4LFxuICAweGFlLCAweGEyLCAweGU5LCAweDk4LCAweDg1LCAweGU4LCAweDgwLCAweDgxLCAweGU1LCAweGI4LCAweDg4LCAweGU1LCAweGIxLFxuICAweDk1LCAweGU3LCAweGE0LCAweGJhLCAweGU1LCAweGJmLCAweDgzLCAweGU3LCAweDkwLCAweDg2LCAweGU4LCAweGI0LCAweGI0LFxuICAweGU1LCAweGFkLCAweDkwLCAweGU3LCAweGI2LCAweGIyLCAweGU3LCAweGFiLCAweDk5LCAweGU0LCAweGI4LCAweGJiLCAweGU5LFxuICAweGExLCAweDhjLCAweGU4LCAweDg3LCAweGFhLCAweGU3LCAweDg0LCAweGI2LCAweGU3LCAweGJhLCAweGE3LCAweGU1LCAweDg4LFxuICAweGFiLCAweGU3LCAweGFlLCAweDgwLCAweGU1LCAweDhkLCAweDk1LCAweGU2LCAweDk0LCAweGI5LCAweGU5LCAweDlkLCAweGE5LFxuICAweGU5LCAweDgyLCAweGEzLCAweGU0LCAweGJhLCAweDliLCAweGU2LCAweDlkLCAweGE1LCAweGU4LCAweGFmLCAweGI0LCAweGU2LFxuICAweDg5LCAweDkzLCAweGU1LCAweGJjLCAweDgwLCAweGU0LCAweGJiLCAweGEzLCAweGU3LCAweGEwLCAweDgxLCAweGU1LCAweDg4LFxuICAweGEwLCAweGU5LCAweDk5LCAweGE0LCAweGU4LCAweGFmLCAweDgxLCAweGU1LCAweDg4LCAweGI4LCAweGU4LCAweDhhLCAweDgyLFxuICAweGU3LCAweDliLCAweGFlLCAweGU5LCAweDg3LCAweDhkLCAweGU3LCAweDgyLCAweGI5LCAweGU2LCAweGFjLCAweGExLCAweGU2LFxuICAweDk1LCAweGI4LCAweGU1LCAweGE0LCAweDlhLCAweGU1LCAweGIwLCAweDkxLCAweGU4LCAweGE3LCAweDg0LCAweGU1LCAweDg4LFxuICAweDkyLCAweGU4LCAweGI1LCAweDg0LCAweGU5LCAweDg3LCAweDkxLCAweGU2LCAweDg5LCAweGJlLCAweGU1LCAweDg4LCAweGIwLFxuICAweGU0LCAweGJiLCAweGE1LCAweGU1LCAweDkwLCAweDhlLCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweDg1LCAweGE4LCAweGU0LFxuICAweGI4LCAweGJiLCAweGU5LCAweGExLCAweGI1LCAweGU2LCAweDljLCAweDgwLCAweGU0LCAweGJkLCAweGIzLCAweGU1LCAweDliLFxuICAweDllLCAweGU3LCAweGFkLCAweDk0LCAweGU1LCAweGE0LCAweGE5LCAweGU0LCAweGI4LCAweDhiLCAweGU0LCAweGJmLCAweDlkLFxuICAweGU5LCAweDlhLCAweDljLCAweGU3LCAweDhlLCAweGIwLCAweGU0LCAweGJiLCAweGEzLCAweGU2LCAweGEzLCAweDgwLCAweGU2LFxuICAweDlmLCAweGE1LCAweGU2LCAweDhhLCAweDk1LCAweGU3LCAweGE1LCAweGE4LCAweGU1LCAweGIwLCAweDhmLCAweGU2LCAweDk3LFxuICAweGI2LCAweGU2LCAweGIyLCAweDkyLCAweGU2LCAweDljLCAweDg5LCAweGU2LCAweGFkLCAweGEzLCAweGU1LCAweGI4LCAweGI4LFxuICAweGU3LCAweDk0LCAweDlhLCAweGU4LCAweDg3LCAweGIzLCAweGU0LCAweGJiLCAweGEzLCAweGU3LCAweDkwLCAweDg2LCAweGU3LFxuICAweDliLCAweGFlLCAweGU1LCAweGJkLCAweDk1LCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweGJjLCAweDgwLCAweGU1LCAweGE0LFxuICAweDhkLCAweGU1LCAweDg4LCAweGI2LCAweGU5LCAweDg3LCAweDkxLCAweGU4LCAweDllLCAweDhkLCAweGU1LCAweGI5LCAweGI4LFxuICAweGU3LCAweGE2LCAweDhmLCAweGU3LCAweDg5LCAweDg4LCAweGU2LCAweDljLCAweGFjLCAweGU1LCAweGJkLCAweGEyLCAweGU2LFxuICAweDg4LCAweDkwLCAweGU1LCAweDg3LCAweDg2LCAweGU1LCAweGE0LCAweDg3LCAweGU4LCAweGExLCAweDhjLCAweGU2LCAweDgzLFxuICAweDg1LCAweGU1LCAweDliLCAweDllLCAweGU1LCAweDg4LCAweGIwLCAweGU2LCAweDgwLCAweDlkLCAweGU2LCAweDgzLCAweGIzLFxuICAweGU2LCAweDgwLCAweDhlLCAweGU2LCAweGEwLCAweGI3LCAweGU1LCAweDhkLCAweDhmLCAweGU4LCAweGFlLCAweGFlLCAweGU4LFxuICAweGFlLCAweGE0LCAweGU4LCAweGFmLCAweDgxLCAweGU2LCAweDljLCAweDgwLCAweGU1LCAweGE1LCAweGJkLCAweGU0LCAweGJhLFxuICAweGE3LCAweGU3LCAweDk0LCAweDlmLCAweGU2LCAweDhjLCAweDg5LCAweGU3LCAweDg1LCAweGE3LCAweGU2LCAweDljLCAweDhkLFxuICAweGU4LCAweGEzLCAweDg1LCAweGU1LCAweGI5LCAweGJmLCAweGU0LCAweGI4LCAweDljLCAweGU1LCAweDhhLCAweGE4LCAweGU2LFxuICAweGJjLCAweGFiLCAweGU5LCAweDg3LCAweDg3LCAweGU4LCAweGI0LCAweGFkLCAweGU2LCAweDk2LCAweGIwLCAweGU2LCAweDg5LFxuICAweDhiLCAweGU3LCAweGJiLCAweDg0LCAweGU1LCAweDliLCAweGJlLCAweGU5LCAweDlkLCAweGEyLCAweGU2LCAweDlkLCAweGJmLFxuICAweGU1LCAweDhmLCAweDgyLCAweGU4LCAweDgwLCAweDgzLCAweGU2LCAweDk0LCAweGJmLCAweGU2LCAweGIyLCAweGJiLCAweGU1LFxuICAweGFlLCAweGI5LCAweGU2LCAweDk4LCAweDkzLCAweGU1LCAweGE0LCAweGE5LCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweDhhLFxuICAweGFhLCAweGU1LCAweDhhLCAweDliLCAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGJiLCAweGFjLCAweGU1LCAweDhkLCAweDg3LFxuICAweGU3LCAweGJhLCAweGE3LCAweGU5LCAweDgwLCAweDlmLCAweGU1LCAweGJhLCAweGE2LCAweGU0LCAweGJhLCAweGJhLCAweGU3LFxuICAweDg5LCAweGE5LCAweGU4LCAweGIwLCAweDgzLCAweGU2LCAweDk1LCAweGI0LCAweGU2LCAweGI1LCAweDgxLCAweGU4LCAweGExLFxuICAweDhjLCAweGU5LCAweDgwLCAweGEwLCAweGU2LCAweDg4LCAweDkwLCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweGFkLCAweDk3LFxuICAweGU5LCAweDlmLCAweGE5LCAweGU1LCAweDliLCAweGJkLCAweGU4LCAweGI0LCAweGI4LCAweGU2LCAweDk4LCAweDkzLCAweGU1LFxuICAweGJjLCAweDgwLCAweGU1LCAweGIxLCAweDk1LCAweGU3LCAweDliLCAweGI4LCAweGU5LCAweDk3LCAweDljLCAweGU4LCAweGExLFxuICAweGE4LCAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweGJkLCAweGIxLCAweGU4LCAweGE3LCAweDg2LCAweGU1LCAweGE2LCAweDgyLFxuICAweGU2LCAweGFkLCAweGE0LCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweGFlLCAweGI5LCAweGU1LCAweGE0LCAweGE3LCAweGU1LFxuICAweGIwLCAweDhmLCAweGU2LCAweDhhLCAweGE1LCAweGU5LCAweDgxLCAweDkzLCAweGU2LCAweDlkLCAweGExLCAweGU2LCAweGFjLFxuICAweGJlLCAweGU1LCAweGJmLCAweDgzLCAweGU2LCAweDgzLCAweDg1LCAweGU4LCAweGFlLCAweGI4LCAweGU1LCAweGE0LCAweDlhLFxuICAweGU2LCAweGIzLCAweDk1LCAweGU4LCAweGE3LCAweDg0LCAweGU1LCAweGFlLCAweGI2LCAweGU1LCAweGIxLCAweDg1LCAweGU0LFxuICAweGI5LCAweGE2LCAweGU1LCAweGJhLCAweDk3LCAweGU4LCAweGJmLCAweDllLCAweGU2LCAweDhlLCAweGE1LCAweGU3LCAweGFiLFxuICAweDhiLCAweGU1LCAweDhkLCAweGIzLCAweGU0LCAweGI4LCAweGJlLCAweGU2LCAweDhhLCAweGE1LCAweGU2LCAweDhhLCAweDgwLFxuICAweGU1LCAweGI3LCAweGE3LCAweGU1LCAweGE1LCAweGE1LCAweGU4LCAweGJmLCAweDkwLCAweGU3LCAweDk5LCAweGJiLCAweGU1LFxuICAweDg1LCAweGE1LCAweGU0LCAweGJiLCAweGE1LCAweGU2LCAweDlkLCAweGE1LCAweGU3LCAweDkwLCAweDg2LCAweGU4LCAweGFlLFxuICAweGJhLCAweGU0LCAweGJhLCAweDhiLCAweGU0LCAweGJiLCAweGI2LCAweGU4LCAweDg3LCAweGFhLCAweGU3LCAweDk0LCAweGIxLFxuICAweGU0LCAweGI4LCAweGFkLCAweGU1LCAweDhkLCAweDhlLCAweGU1LCAweDhhLCAweDllLCAweGU1LCAweDg1LCAweGFjLCAweGU1LFxuICAweGE2LCAweDg4LCAweGU1LCAweGE2LCAweDg4LCAweGU3LCAweDljLCAweDlmLCAweGU2LCAweGFkLCAweGEzLCAweGU0LCAweGI4LFxuICAweDhkLCAweGU5LCAweDk0LCAweDk5LCAweGU1LCAweDg1LCAweGE4LCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweDkwLCAweDg4LFxuICAweGU1LCAweDkwLCAweDhjLCAweGU0LCAweGJiLCAweGI3LCAweGU1LCAweDgwLCAweGJjLCAweGU1LCAweDg4LCAweGFiLCAweGU0LFxuICAweGJhLCAweGJhLCAweGU3LCAweDliLCAweDkxLCAweGU3LCAweDlkLCAweGEzLCAweGU1LCAweDg1LCAweGI3LCAweGU0LCAweGJkLFxuICAweDkzLCAweGU0LCAweGI4LCAweDk2LCAweGU3LCAweGJhLCAweGFhLCAweGU1LCAweDliLCAweGEyLCAweGU5LCAweDk4LCAweDlmLFxuICAweGU1LCAweDg4LCAweDliLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDg5LCAweGJmLCAweGU2LCAweDhiLCAweDg1LCAweGU1LFxuICAweGEyLCAweDllLCAweGU5LCAweDk1LCAweGJmLCAweGU2LCAweDljLCAweDg5LCAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGJmLFxuICAweDlkLCAweGU2LCAweDhjLCAweDgxLCAweGU1LCAweDk1LCAweDg2LCAweGU1LCAweGFlLCAweGI2LCAweGU3LCAweGJiLCAweGI0LFxuICAweGU0LCAweGJmLCAweGFlLCAweGU1LCAweDhmLCAweGIwLCAweGU2LCAweGI5LCAweGJlLCAweGU1LCAweGI3LCAweGE2LCAweGU1LFxuICAweDhmLCAweGIzLCAweGU4LCAweDgyLCAweGExLCAweGU0LCAweGJiLCAweGJkLCAweGU3LCAweGFkLCAweDk0LCAweGU2LCAweGExLFxuICAweDg4LCAweGU1LCAweGFlLCAweDllLCAweGU5LCAweDk5LCAweDg1LCAweGU3LCAweDk0LCAweGI1LCAweGU0LCAweGJmLCAweGExLFxuICAweGU3LCAweGJiLCAweDhmLCAweGU3LCAweDkwLCAweDg2LCAweGU3LCAweDk0LCAweDlmLCAweGU1LCAweDkxLCAweGJkLCAweGU1LFxuICAweGFlLCAweGEzLCAweGU0LCAweGJjLCAweGEwLCAweGU0LCAweGJiLCAweGJiLCAweGU1LCAweDhhLCAweGExLCAweGU2LCAweGFkLFxuICAweGEzLCAweGU1LCAweGJjLCAweDhmLCAweGU3LCAweDg5LCAweGI5LCAweGU4LCAweDg5LCAweGIyLCAweGU0LCAweGI4LCAweDhiLFxuICAweGU2LCAweDlkLCAweGE1LCAweGU1LCAweDhkLCAweDhmLCAweGU0LCAweGJjLCAweDlhLCAweGU1LCAweDhmLCAweGFhLCAweGU4LFxuICAweDgzLCAweGJkLCAweGU1LCAweGJkLCAweDkzLCAweGU3LCAweDg0LCAweGI2LCAweGU5LCAweDg3LCAweDhkLCAweGU2LCAweDk2LFxuICAweGIwLCAweGU1LCAweDg1LCAweGE3LCAweGU1LCAweGFlLCAweGI5LCAweGU2LCAweDhjLCAweDg3LCAweGU1LCAweGFmLCAweGJjLFxuICAweGU4LCAweGJmLCAweDkwLCAweGU4LCAweGExLCAweDhjLCAweGU2LCAweDk3LCAweGE1LCAweGU1LCAweGJmLCAweDk3LCAweGU4LFxuICAweGIzLCAweGEzLCAweGU1LCAweGFlLCAweGI2LCAweGU4LCAweGI2LCAweDg1LCAweGU4LCAweGJmLCAweDg3LCAweGU1LCAweDljLFxuICAweDlmLCAweGU1LCAweDljLCAweGIwLCAweGU2LCAweGI1LCAweDk5LCAweGU2LCAweGIxLCAweDlmLCAweGU2LCAweDk0LCAweGFmLFxuICAweGU0LCAweGJiLCAweDk4LCAweGU2LCAweDhlLCAweGE4LCAweGU1LCAweDg3LCAweGJhLCAweGU3LCAweGFiLCAweDk5LCAweGU5LFxuICAweDk1LCAweGJmLCAweGU2LCAweDlkLCAweGFkLCAweGU1LCAweGI3LCAweDllLCAweGU2LCAweDg5LCAweGE3LCAweGU4LCAweGExLFxuICAweDhjLCAweGU1LCAweDg4LCAweGI2LCAweGU5LCAweDgwLCAweGEwLCAweGU0LCAweGI5LCAweDhiLCAweGU0LCAweGI4LCAweDgwLFxuICAweGU2LCAweDhlLCAweGE4LCAweGU1LCAweGI5LCAweGJmLCAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweDljLCAweGJhLCAweGU2LFxuICAweDhmLCAweDhmLCAweGU4LCAweGJmLCAweGIwLCAweGU1LCAweDhmLCAweDk4LCAweGU1LCAweDhjLCAweDk2LCAweGU0LCAweGJjLFxuICAweGEwLCAweGU3LCAweGJiLCAweDlmLCAweGU2LCAweGFkLCAweDhjLCAweGU2LCAweDg5LCAweDhiLCAweGU0LCAweGJmLCAweDlkLFxuICAweGU5LCAweDk5LCAweGE5LCAweGU4LCAweGFmLCAweGJlLCAweGU3LCAweGE4LCAweDhiLCAweGU1LCAweDhjLCAweGJiLCAweGU3LFxuICAweDk2LCAweDk3LCAweGU3LCAweGJiLCAweDhmLCAweGU4LCAweGJmLCAweDg3LCAweGU4LCAweGJmLCAweDg3LCAweGU1LCAweDhlLFxuICAweGJiLCAweGU0LCAweGI5LCAweDhiLCAweGU1LCAweDg5LCAweDhkLCAweGU2LCAweDk0LCAweGI2LCAweGU1LCAweDg1LCAweGE1LFxuICAweGU1LCAweGI5LCAweGI0LCAweGU1LCAweGJhLCAweGE2LCAweGU2LCAweDlkLCAweDgyLCAweGU1LCAweGJmLCAweDk3LCAweGU3LFxuICAweGJlLCAweDhlLCAweGU0LCAweGI4LCAweGJkLCAweGU2LCAweDljLCAweDgwLCAweGU5LCAweGFiLCAweDk4LCAweGU3LCAweDk5LFxuICAweGJiLCAweGU5LCAweDk5LCAweDg2LCAweGU2LCAweDljLCAweGFhLCAweGU2LCAweDlkLCAweGE1LCAweGU1LCAweDhhLCAweGEwLFxuICAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweDg1LCAweDhkLCAweGU4LCAweGI0LCAweGEzLCAweGU2LCAweDk1LCAweDk5LCAweGU3LFxuICAweGE4LCAweDhiLCAweGU3LCAweDg5LCAweDg4LCAweGU1LCAweDlkLCAweDk3LCAweGU4LCAweGJhLCAweGFiLCAweGU0LCAweGJkLFxuICAweDkzLCAweGU5LCAweDg3LCAweDhkLCAweGU1LCAweGJhLCAweDg2LCAweGU1LCAweDg3LCAweGJhLCAweGU1LCAweDk0LCAweGFlLFxuICAweGU2LCAweDg4LCAweDkwLCAweGU2LCAweDljLCAweGFjLCAweGU1LCAweGJkLCAweGEyLCAweGU1LCAweGJjLCAweDhmLCAweGU1LFxuICAweDljLCAweDlmLCAweGU4LCAweGIxLCAweDg2LCAweGU1LCAweDg3LCAweGJhLCAweGU1LCAweDgzLCAweGI5LCAweGU0LCAweGI4LFxuICAweDljLCAweGU2LCAweDk2LCAweGI5LCAweGU5LCAweDgyLCAweGFlLCAweGU3LCAweGFlLCAweGIxLCAweGU1LCAweDhkLCAweDk3LFxuICAweGU0LCAweGJhLCAweGFjLCAweGU2LCAweGIxLCAweDgyLCAweGU4LCAweDgxLCAweDhjLCAweGU1LCAweDhmLCAweDk2LCAweGU1LFxuICAweGJlLCAweDk3LCAweGU4LCAweDgxLCAweDhjLCAweGU0LCAweGJkLCAweDhkLCAweGU3LCAweDliLCAweGI4LCAweGU0LCAweGJmLFxuICAweGExLCAweGU5LCAweGExLCAweGI1LCAweGU5LCAweDlkLCAweGEyLCAweGU1LCAweDg4LCAweDg2LCAweGU5LCAweDkyLCAweDlmLFxuICAweGU3LCAweGJkLCAweDkxLCAweGU5LCAweGExLCAweGI1LCAweGU3LCAweGExLCAweGFlLCAweGU1LCAweGFlLCAweDlhLCAweGU1LFxuICAweDliLCAweGJlLCAweGU0LCAweGJlLCAweDhiLCAweGU3LCAweGJkLCAweDkxLCAweGU1LCAweDlkLCAweDgwLCAweGU3LCAweGE3LFxuICAweGFmLCAweGU2LCAweDllLCAweDgxLCAweGU5LCAweDk0LCAweDk5LCAweGU4LCAweGFmLCAweGFmLCAweGU3LCAweDliLCAweGFlLFxuICAweGU3LCAweDlhLCAweDg0LCAweGU1LCAweGFlLCAweDlkLCAweGU4LCAweGI0LCAweDlkLCAweGU2LCAweDljLCAweGJhLCAweGU1LFxuICAweDg1LCAweGIzLCAweGU5LCAweGEzLCAweDhlLCAweGU5LCAweDk5LCAweGE5LCAweGU2LCAweDhlLCAweDg4LCAweGU2LCAweDlkLFxuICAweDgzLCAweGU3LCAweDk3LCAweDg1LCAweGU2LCAweGFmLCAweDkyLCAweGU1LCAweGFlLCAweGEwLCAweGU3LCAweDg5LCAweGE5LFxuICAweGU5LCAweDk5LCAweGE0LCAweGU0LCAweGJhLCAweDg2LCAweGU4LCAweGE5LCAweDk1LCAweGU4LCAweGFiLCAweDk2LCAweGU3LFxuICAweDk2LCAweGJlLCAweGU3LCAweDk3LCAweDg1LCAweGU1LCAweDhmLCAweDhhLCAweGU2LCAweDk3LCAweGI2LCAweGU2LCAweGIxLFxuICAweDgyLCAweGU4LCAweGI0LCAweGFkLCAweGU3LCAweGFiLCAweDk5LCAweGU3LCAweDgyLCAweGI5LCAweGU1LCAweDg0LCAweGJmLFxuICAweGU3LCAweGFiLCAweGE1LCAweGU2LCAweGFmLCAweDhmLCAweGU1LCAweGE0LCAweGE5LCAweGU0LCAweGI4LCAweGFkLCAweGU1LFxuICAweGE0LCAweGFlLCAweGU4LCAweGFlLCAweGE0LCAweGU4LCAweGFmLCAweDg2LCAweGU2LCAweGFmLCAweDhmLCAweGU0LCAweGI4LFxuICAweGFhLCAweGU1LCAweGE0LCAweGE5LCAweGU2LCAweGI0LCAweGE1LCAweGU1LCAweGFkLCAweDk3LCAweGU0LCAweGJkLCAweDkzLFxuICAweGU1LCAweDhmLCAweGIwLCAweGU3LCAweDgxLCAweGEzLCAweGU3LCAweGJiLCAweGI0LCAweGU2LCAweDhhLCAweGE0LCAweGU2LFxuICAweDljLCAweGFjLCAweGU5LCAweGExLCAweGI1LCAweGU0LCAweGI4LCAweGFhLCAweGU2LCAweDgwLCAweGE3LCAweGU1LCAweGFlLFxuICAweDk4LCAweGU2LCAweDk2LCAweGI5LCAweGU1LCAweGI4LCAweGI4LCAweGU4LCAweGE3LCAweDgxLCAweGU3LCAweDliLCAweGI4LFxuICAweGU2LCAweDljLCAweGJhLCAweGU2LCAweDg4LCAweDk4LCAweGU3LCAweDk1LCAweGE1LCAweGU1LCAweGJhLCAweDk0LCAweGU1LFxuICAweGJkLCAweDkzLCAweGU1LCAweGJlLCAweDhiLCAweGU1LCAweGI4LCAweDg4LCAweGU2LCAweDk2LCAweGI5LCAweGU0LCAweGJlLFxuICAweGJmLCAweGU2LCAweGEwLCAweGExLCAweGU1LCAweDliLCAweGFkLCAweGU4LCAweDgyLCAweGExLCAweGU1LCAweGI4LCAweDgyLFxuICAweGU2LCAweDg4LCAweGJmLCAweGU1LCAweGIxLCAweDhiLCAweGU2LCAweGEwLCAweDhmLCAweGU3LCAweDliLCAweGFlLCAweGU1LFxuICAweDkxLCAweDk4LCAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweGFmLCAweGJjLCAweGU4LCAweDg3LCAweGI0LCAweGU3LCAweGFhLFxuICAweDgxLCAweGU3LCAweDg0LCAweGI2LCAweGU5LCAweDgxLCAweDkzLCAweGU1LCAweDg1LCAweGI3LCAweGU2LCAweDljLCAweGFjLFxuICAweGU3LCAweGJkLCAweDkxLCAweGU3LCAweGJiLCAweDkzLCAweGU1LCAweDkwLCAweDg4LCAweGU2LCAweGExLCAweGEzLCAweGU2LFxuICAweGExLCAweDg4LCAweGU1LCAweDhhLCAweGIzLCAweGU1LCAweDhhLCAweGE4LCAweGU1LCAweDhmLCAweGE2LCAweGU1LCAweGE0LFxuICAweDk2LCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweDg1LCAweDgzLCAweGU1LCAweGJjLCAweDk1LCAweGU4LCAweGI1LCAweGI3LFxuICAweGU2LCAweDk0LCAweGI5LCAweGU1LCAweDhmLCAweDk4LCAweGU3LCAweGFjLCAweGFjLCAweGU1LCAweDliLCAweDliLCAweGU0LFxuICAweGJjLCAweDlhLCAweGU4LCAweGFlLCAweGExLCAweGU4LCAweGFhLCAweGFhLCAweGU2LCAweDk4LCAweDhlLCAweGU5LCAweDlhLFxuICAweDkwLCAweGU3LCAweGE3LCAweDgxLCAweGU1LCAweGFlLCAweDlkLCAweGU1LCAweGFlLCAweDlkLCAweGU4LCAweGE3LCAweDg0LFxuICAweGU4LCAweDhjLCAweDgzLCAweGU2LCAweGI2LCAweDg4LCAweGU4LCAweGI0LCAweGI5LCAweGU1LCAweDg1LCAweGIxLCAweGU1LFxuICAweDkwLCAweDhjLCAweGU1LCAweGJmLCAweDk4LCAweGU4LCAweGFlLCAweGIwLCAweGU0LCAweGJkLCAweDkzLCAweGU3LCAweGIzLFxuICAweGJiLCAweGU1LCAweGI4LCAweGE2LCAweGU2LCAweDlkLCAweGE1LCAweGU1LCAweDkwLCAweDhkLCAweGU1LCAweGFkLCAweDk3LFxuICAweGU3LCAweDk5LCAweGJjLCAweGU4LCAweGExLCAweGE4LCAweGU1LCAweGJjLCAweDgwLCAweGU2LCAweDk0LCAweGJlLCAweGU1LFxuICAweDhhLCAweGEwLCAweGU3LCAweDliLCAweDlmLCAweGU1LCAweDhmLCAweDk3LCAweGU1LCAweDg4LCAweGIwLCAweGU0LCAweGJhLFxuICAweDhjLCAweGU2LCAweDg5LCAweDhiLCAweGU1LCAweGE0LCAweGE3LCAweGU5LCAweDg3LCAweDhmLCAweGU2LCAweDg4LCAweDkwLFxuICAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweDk1LCAweGIwLCAweGU5LCAweDg3LCAweDhmLCAweGU1LCAweDg1LCAweGIxLCAweGU0LFxuICAweGJhLCAweGFiLCAweGU1LCAweDhjLCAweGJhLCAweGU1LCAweDlmLCAweDlmLCAweGU1LCAweGE1LCAweGIzLCAweGU1LCAweGFkLFxuICAweGE5LCAweGU1LCAweDhlLCAweDlmLCAweGU1LCAweDg4LCAweDk5LCAweGU2LCAweDg5LCAweDgwLCAweGU1LCAweDljLCAweGE4LFxuICAweGU3LCAweGJiLCAweDkzLCAweGU2LCAweDlkLCAweDlmLCAweGU5LCAweDgwLCAweDlhLCAweGU0LCAweGJmLCAweGExLCAweGU4LFxuICAweGI2LCAweDg1LCAweGU3LCAweGJhLCAweGE3LCAweGU5LCAweDg1LCAweDhkLCAweGU3LCAweGJkLCAweGFlLCAweGU1LCAweGJkLFxuICAweDkzLCAweGU2LCAweDk3LCAweGI2LCAweGU0LCAweGJjLCAweDk4LCAweGU3LCAweGE3LCAweDgwLCAweGU2LCAweDgwLCAweGE3LFxuICAweGU2LCAweDg0LCAweDlmLCAweGU2LCAweDg4LCAweGJmLCAweGU0LCAweGJhLCAweGE3LCAweGU5LCAweDgxLCAweDhhLCAweGU2LFxuICAweDg4LCAweGIyLCAweGU1LCAweDg3LCAweGJhLCAweGU1LCAweDhmLCAweGEzLCAweGU2LCAweDhmLCAweDkwLCAweGU0LCAweGJhLFxuICAweGE0LCAweGU1LCAweGIwLCAweGIxLCAweGU0LCAweGI4LCAweDlhLCAweGU0LCAweGJmLCAweDlkLCAweGU1LCAweDgxLCAweGE1LFxuICAweGU3LCAweGE4LCAweDhiLCAweGU1LCAweGJhLCAweGE2LCAweGU1LCAweDhmLCAweDgyLCAweGU2LCAweDk1LCAweGIwLCAweGU0LFxuICAweGJhLCAweDhiLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDk1LCAweGI0LCAweGU0LCAweGI4LCAweGFhLCAweGU1LCAweGIxLFxuICAweGIxLCAweGU0LCAweGI4LCAweDljLCAweGU2LCAweDgzLCAweDg1LCAweGU2LCAweDg0LCAweDlmLCAweGU3LCAweDg5LCAweGI5LFxuICAweGU2LCAweGFlLCAweDhhLCAweGU1LCAweDg4LCAweDg2LCAweGU5LCAweGExLCAweDllLCAweGU2LCAweDkwLCAweDljLCAweGU1LFxuICAweGIwLCAweDhiLCAweGU1LCAweGIxLCAweDllLCAweGU0LCAweGJhLCAweDhlLCAweGU5LCAweDk3LCAweGE4LCAweGU2LCAweDg4LFxuICAweGI3LCAweGU4LCAweGI0LCAweGEyLCAweGU1LCAweDhhLCAweGExLCAweGU1LCAweGEzLCAweGIwLCAweGU5LCAweDlmLCAweGIzLFxuICAweGU1LCAweDhmLCAweDhhLCAweGU1LCAweDg1LCAweGI2LCAweGU4LCAweGI0LCAweGEyLCAweGU3LCAweGJiLCAweDhmLCAweGU1LFxuICAweDlkLCAweDlhLCAweGU2LCAweDhjLCAweDgxLCAweGU1LCAweGI5LCAweGIyLCAweGU5LCAweDgzLCAweGE4LCAweGU2LCAweDg4LFxuICAweDkwLCAweGU3LCAweGFiLCAweDhiLCAweGU1LCAweDg4LCAweGE5LCAweGU3LCAweDliLCAweDhhLCAweGU4LCAweDgwLCAweDgzLFxuICAweGU4LCAweDk5LCAweDkxLCAweGU2LCAweDg4LCAweDkwLCAweGU5LCAweDgzLCAweGJkLCAweGU1LCAweDhjLCAweDg1LCAweGU4LFxuICAweGEzLCAweDg1LCAweGU3LCAweDk0LCAweGE4LCAweGU2LCAweDg4LCAweGI2LCAweGU2LCAweGFmLCAweDk0LCAweGU4LCAweGI1LFxuICAweDliLCAweGU2LCAweDk2LCAweDg3LCAweGU2LCAweDk4LCAweDhlLCAweGU2LCAweDhiLCAweDliLCAweGU1LCAweDk1LCAweDg2LFxuICAweGU1LCAweGFlLCAweDhjLCAweGU2LCAweDk1LCAweGI0LCAweGU3LCAweDljLCAweDlmLCAweGU2LCAweDk4LCAweGFmLCAweGU3LFxuICAweDljLCAweGJjLCAweGU3LCAweDlkLCAweDliLCAweGU0LCAweGJjLCAweDk5LCAweGU0LCAweGJjLCAweGI0LCAweGU1LCAweGE4LFxuICAweDgxLCAweGU2LCAweDljLCAweDliLCAweGU5LCAweGEyLCAweDg2LCAweGU1LCAweDlmLCAweDlmLCAweGU1LCAweDhkLCAweGFiLFxuICAweGU3LCAweDk0LCAweDlmLCAweGU0LCAweGJjLCAweDk4LCAweGU2LCAweDgzLCAweGEwLCAweGU4LCAweGFiLCAweDk2LCAweGU1LFxuICAweGEzLCAweDg3LCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDg1LCAweGIxLCAweGU4LCAweDg5LCAweGFmLCAweGU1LCAweGE1LFxuICAweGJkLCAweGU1LCAweDg1LCAweDg1LCAweGU1LCAweDg4LCAweDg2LCAweGU3LCAweGFjLCAweGE2LCAweGU1LCAweDkwLCAweDg4LFxuICAweGU5LCAweDk5LCAweDg0LCAweGU0LCAweGJiLCAweGI2LCAweGU3LCAweDg5LCAweGI5LCAweGU3LCAweDgyLCAweGI5LCAweGU0LFxuICAweGI4LCAweDhkLCAweGU1LCAweDhmLCAweGFmLCAweGU4LCAweDhiLCAweGIxLCAweGU2LCAweDk2LCAweDg3LCAweGU4LCAweGI1LFxuICAweDg0LCAweGU0LCAweGJhLCAweGE3LCAweGU2LCAweGEwLCAweGI5LCAweGU2LCAweDljLCAweGFjLCAweGU2LCAweDk4LCAweDhlLFxuICAweGU2LCAweDk4LCAweGJlLCAweGU1LCAweGFmLCAweDg2LCAweGU3LCAweGEyLCAweGJjLCAweGU1LCAweDg1LCAweGFjLCAweGU0LFxuICAweGJjLCAweDk3LCAweGU2LCAweGIwLCAweDkxLCAweGU2LCAweDk3LCAweDhmLCAweGU2LCAweDliLCAweGI0LCAweGU1LCAweDhhLFxuICAweGEwLCAweGU0LCAweGJhLCAweGFiLCAweGU1LCAweDhmLCAweDk3LCAweGU1LCAweDkwLCAweDhjLCAweGU1LCAweGFkLCAweGE2LFxuICAweGU1LCAweDkwLCAweGFmLCAweGU1LCAweDhhLCAweGE4LCAweGU5LCAweDgwLCAweDgyLCAweGU1LCAweDkwLCAweDg4LCAweGU1LFxuICAweDhlLCAweDlmLCAweGU2LCAweDlkLCAweGE1LCAweGU5LCAweDk3LCAweGFlLCAweGU3LCAweGFkLCAweDk0LCAweGU2LCAweDljLFxuICAweGFjLCAweGU2LCAweDk2LCAweDg3LCAweGU3LCAweGJlLCAweDhlLCAweGU5LCAweGEzLCAweDlmLCAweGU3LCAweGJiLCAweGJmLFxuICAweGU4LCAweDg5LCAweGIyLCAweGU3LCAweGE4LCAweGIzLCAweGU1LCAweGFlLCAweDlhLCAweGU3LCAweGJiLCAweDg4LCAweGU0LFxuICAweGJhLCAweDhlLCAweGU3LCAweDk0LCAweDlmLCAweGU3LCAweDg5LCAweGE5LCAweGU0LCAweGJlLCAweDliLCAweGU2LCAweGIxLFxuICAweDgyLCAweGU2LCAweDkwLCAweDljLCAweGU3LCAweDhiLCAweDkwLCAweGU1LCAweDhhLCAweDliLCAweGU5LCAweDg3LCAweDhmLFxuICAweGU0LCAweGI4LCAweGE1LCAweGU5LCAweDg3LCAweDhkLCAweGU2LCAweGIwLCAweGI4LCAweGU4LCAweGJmLCAweDljLCAweGU1LFxuICAweDg2LCAweDk5LCAweGU3LCAweDljLCAweDlmLCAweGU2LCAweDljLCAweDg5LCAweGU5LCAweDk5LCAweDkwLCAweGU3LCAweGFiLFxuICAweDllLCAweGU0LCAweGJhLCAweDg5LCAweGU1LCAweGFmLCAweGI5LCAweGU4LCAweGIxLCAweGExLCAweGU4LCAweGI0LCAweGI5LFxuICAweGU3LCAweDk0LCAweGE4LCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweGE1LCAweGJkLCAweGU3LCAweGJiLCAweDlkLCAweGU1LFxuICAweGFmLCAweGI5LCAweGU1LCAweDhkLCAweDgxLCAweGU1LCAweDg4LCAweDg2LCAweGU0LCAweGJmLCAweDgzLCAweGU4LCAweGJmLFxuICAweDliLCAweGU3LCAweDgyLCAweGI5LCAweGU4LCAweGFmLCAweDg0LCAweGU1LCAweGJkLCAweGIxLCAweGU5LCAweDlmLCAweGIzLFxuICAweGU0LCAweGJjLCAweDk4LCAweGU1LCAweDhhLCAweGJmLCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweGIwLCAweDkxLCAweGU2LFxuICAweGFjLCAweGEzLCAweGU4LCAweGI1LCAweDhmLCAweGU1LCAweGI5LCAweGI2LCAweGU0LCAweGI4LCAweDk0LCAweGU2LCAweDljLFxuICAweDg5LCAweGU3LCAweDgyLCAweGI5LCAweGU2LCAweDk2LCAweGI5LCAweGU1LCAweDkwLCAweDkxLCAweGU1LCAweDg1LCAweGE4LFxuICAweGU2LCAweDk2LCAweGIwLCAweGU0LCAweGJmLCAweGExLCAweGU3LCAweDk0LCAweGE4LCAweGU4LCAweGFlLCAweGJlLCAweGU2LFxuICAweDk2LCAweGJkLCAweGU1LCAweGJkLCAweGEyLCAweGU4LCAweGIxLCAweGExLCAweGU4LCAweGI1LCAweDg0LCAweGU2LCAweGEwLFxuICAweGJjLCAweGU3LCAweGFhLCAweDgxLCAweGU3LCAweGEwLCAweGI0LCAweGU5LCAweDlhLCAweDhmLCAweGU3LCAweDlkLCAweDgwLFxuICAweGU5LCAweDg3LCAweDhkLCAweGU1LCAweGE0LCAweGE3LCAweGU0LCAweGJhLCAweDhlLCAweGU2LCAweDk4LCAweGFmLCAweGU2LFxuICAweGFmLCAweDk1LCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDk5LCAweGJhLCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweDhjLFxuICAweDk2LCAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweGFlLCAweDhjLCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweDk1LCAweDg2LFxuICAweGU1LCAweDlmLCAweDhlLCAweGU3LCAweGJiLCAweDlmLCAweGU0LCAweGI4LCAweDgwLCAweGU1LCAweDg3LCAweGJhLCAweGU3LFxuICAweDg5LCAweDg4LCAweGU2LCAweDg5LCAweDkzLCAweGU5LCAweDgwLCAweGEwLCAweGU3LCAweDk0LCAweGEyLCAweGU1LCAweDkzLFxuICAweDgxLCAweGU2LCAweGE2LCAweDgyLCAweGU1LCAweDg2LCAweGI1LCAweGU3LCAweDk0LCAweGE4LCAweGU0LCAweGJhLCAweDhlLFxuICAweGU0LCAweGJmLCAweDlkLCAweGU3LCAweDk1LCAweDk5LCAweGU1LCAweDliLCAweGEwLCAweGU3LCAweGI0LCAweGEwLCAweGU0LFxuICAweGI4LCAweGFkLCAweGU1LCAweDljLCAweDhiLCAweGU1LCAweGFkLCAweDk4LCAweGU1LCAweDgyLCAweGE4LCAweGU4LCAweGI0LFxuICAweGI0LCAweGU1LCAweDliLCAweGJlLCAweGU2LCAweDljLCAweDgwLCAweGU2LCAweDg0LCAweDliLCAweGU5LCAweDk1LCAweGJmLFxuICAweGU2LCAweDljLCAweDlmLCAweGU1LCAweDhmLCAweGEzLCAweGU0LCAweGJiLCAweGI3LCAweGU3LCAweDkwLCAweDg2LCAweGU4LFxuICAweGI0LCAweGEyLCAweGU1LCAweDlmLCAweGJhLCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweGFlLCAweDg5LCAweGU2LCAweDhlLFxuICAweDkyLCAweGU2LCAweGFkLCAweGE2LCAweGU2LCAweGIxLCAweDg5LCAweGU5LCAweDg3LCAweDhjLCAweGU5LCAweDlkLCAweGEyLFxuICAweGU1LCAweDg4LCAweDliLCAweGU1LCAweGJiLCAweGJhLCAweGU1LCAweGE0LCAweGE5LCAweGU3LCAweGE5LCAweGJhLCAweGU5LFxuICAweGE2LCAweDk2LCAweGU1LCAweDg1LCAweDg4LCAweGU1LCAweGFlLCAweDhjLCAweGU1LCAweDk2LCAweDg0LCAweGU5LCAweGE5LFxuICAweGIxLCAweGU1LCAweDhhLCAweGE4LCAweGU0LCAweGI4LCAweDhiLCAweGU5LCAweDlkLCAweGEyLCAweGU0LCAweGI4LCAweDhkLFxuICAweGU1LCAweDg2LCAweDhkLCAweGU4LCAweGFmLCAweDlhLCAweGU0LCAweGJmLCAweGExLCAweGU2LCAweDg0LCAweDhmLCAweGU0LFxuICAweGI5LCAweDg5LCAweGU5LCAweDk4LCAweGIzLCAweGU1LCAweDg1LCAweDg5LCAweGU4LCAweDhiLCAweGIxLCAweGU1LCAweDliLFxuICAweGJkLCAweGU2LCAweGJjLCAweDgyLCAweGU0LCAweGJhLCAweGFlLCAweGU1LCAweDg2LCAweDliLCAweGU0LCAweGJhLCAweDhiLFxuICAweGU3LCAweDhlLCAweGE5LCAweGU1LCAweGFlLCAweGI2LCAweGU3LCAweGJlLCAweGE0LCAweGU0LCAweGJjLCAweDk3LCAweGU1LFxuICAweDg2LCAweDljLCAweGU2LCAweGIwLCAweDkxLCAweGU1LCAweDhkLCAweGIzLCAweGU1LCAweDhmLCAweGFmLCAweGU1LCAweDkwLFxuICAweDhkLCAweGU3LCAweGE4LCAweGIxLCAweGU1LCAweGFlLCAweGI2LCAweGU1LCAweDg1LCAweGI3LCAweGU1LCAweDhhLCAweGE4LFxuICAweGU3LCAweDk0LCAweGJiLCAweGU2LCAweDgzLCAweGIzLCAweGU1LCAweDg4LCAweGIwLCAweGU2LCAweGIzLCAweGE4LCAweGU2LFxuICAweDk4LCAweDhlLCAweGU1LCAweGIwLCAweDhmLCAweGU1LCAweGFkLCAweGE2LCAweGU2LCAweDgwLCAweGE3LCAweGU4LCAweDgzLFxuICAweGJkLCAweGU4LCAweDgwLCAweDgzLCAweGU3LCAweGEwLCAweDk0LCAweGU3LCAweGExLCAweGFjLCAweGU0LCAweGJiLCAweGI2LFxuICAweGU4LCAweGE3LCAweDgyLCAweGU3LCAweDljLCAweDhiLCAweGU2LCAweGI4LCAweDg1LCAweGU2LCAweGE1LCAweDlhLCAweGU2LFxuICAweDkwLCAweDllLCAweGU3LCAweGFjLCAweDkxLCAweGU5LCAweGE2LCAweDk2LCAweGU5LCAweGEwLCAweDgxLCAweGU5LCAweGJiLFxuICAweDg0LCAweGU5LCAweDg3LCAweDkxLCAweGU5LCAweDgwLCAweDgyLCAweGU3LCAweDk0LCAweGE4LCAweGU2LCAweGIxLCAweDlmLFxuICAweGU4LCAweDhiLCAweDhmLCAweGU3LCAweDljLCAweDlmLCAweGU1LCAweGFlLCAweDllLCAweGU0LCAweGI4LCAweGJiLCAweGU3LFxuICAweGFlLCAweGExLCAweGU5LCAweDk4LCAweGI2LCAweGU2LCAweGFlLCAweGI1LCAweGU4LCAweGE4LCAweGJiLCAweGU1LCAweDg2LFxuICAweDhhLCAweGU3LCAweGJmLCAweGJiLCAweGU4LCAweGFmLCAweDkxLCAweGU2LCAweDlkLCAweDgzLCAweGU1LCAweDg4LCAweGE5LFxuICAweGU1LCAweDgxLCAweDlhLCAweGU1LCAweGE1LCAweGJkLCAweGU0LCAweGJjLCAweGJjLCAweGU0LCAweGI5LCAweDhlLCAweGU5LFxuICAweDgwLCAweDlhLCAweGU4LCAweGFlLCAweGFmLCAweGU2LCAweDk2LCAweGJkLCAweGU1LCAweGI3LCAweGE1LCAweGU3LCAweDhiLFxuICAweDgwLCAweGU2LCAweDg1LCAweDhiLCAweGU0LCAweGI5LCAweDlmLCAweGU4LCAweGFlLCAweGI4LCAweGU3LCAweDhlLCAweGFmLFxuICAweGU0LCAweGJmLCAweDlkLCAweGU1LCAweDlmLCAweGI5LCAweGU1LCAweDg1LCAweGJiLCAweGU2LCAweGE2LCAweDgyLCAweGU1LFxuICAweGJmLCAweGI1LCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweDllLCAweDhiLCAweGU2LCAweDljLCAweGJhLCAweGU3LCAweGE1LFxuICAweGE4LCAweGU3LCAweDkwLCAweDg2LCAweGU4LCAweGE3LCAweGEzLCAweGU1LCAweDhjLCAweGJmLCAweGU1LCAweDkwLCAweDhkLFxuICAweDYzLCAweDc1LCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDYxLCAweDcyLCAweDZkLFxuICAweDYxLCAweDY0LCAweDcyLCAweDY5LCAweDY0LCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY5LCAweDZlLFxuICAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDc0LCAweDY5LCAweDY1LCAweDZkLCAweDcwLCAweDZmLCAweDcwLCAweDZmLCAweDcyLFxuICAweDcxLCAweDc1LCAweDY1LCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDY0LCAweDZmLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDZhLCAweDc1LCAweDY1LCAweDY3LCAweDZmLFxuICAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGExLCAweDZlLFxuICAweDZlLCAweDZmLCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDZlLCAweDcwLFxuICAweDY1LCAweDcyLCAweDY2LCAweDY5LCAweDZjLCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDYxLCAweDZkLFxuICAweDY5LCAweDY3LCAweDZmLCAweDczLCAweDYzLCAweDY5LCAweDc1LCAweDY0LCAweDYxLCAweDY0LCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDZmLCAweDYxLCAweDc1LCAweDZlLCAweDcxLCAweDc1LCAweDY1LCAweDcwLCAweDc1LCAweDY1LCAweDY0LFxuICAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDY1LCAweDY3LCAweGMzLCAweGJhLCAweDZlLFxuICAweDYyLCAweDc1LCAweDY1LCAweDZlLCAweDZmLCAweDczLCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDcyLCAweDcwLFxuICAweDc1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY4LCAweDYxLFxuICAweDYyLCAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDY3LCAweDZmLCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDc1LCAweDY1LFxuICAweDc2LCAweDZmLCAweDczLCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDZjLFxuICAweDZmLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcwLCAweDZmLCAweDZlLCAweDY5LCAweGMzLCAweGIxLCAweDZmLFxuICAweDczLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDZmLCAweDczLCAweDYxLCAweDZjLCAweDY3LCAweDc1LCAweDZlLCAweDYxLFxuICAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDZmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDcyLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDYyLCAweDYxLCAweDZkLCAweDYxLFxuICAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDY4LCAweDZmLCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY0LCAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDZkLCAweDYyLFxuICAweDY5LCAweDZmLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDY2LCAweDc1LCAweDY1LCAweDcyLCAweDZmLFxuICAweDZlLCAweDcwLCAweDYxLCAweDczLCAweDYxLCAweDY0LCAweDZmLCAweDZjLCAweGMzLCAweGFkLCAweDZlLCAweDY1LCAweDYxLFxuICAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc1LCAweDY1LCAweDc2LCAweDYxLCAweDczLCAweDYzLFxuICAweDc1LCAweDcyLCAweDczLCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDYxLCAweDcxLCAweDc1LFxuICAweDY5LCAweDY1LCAweDcyLCAweDZmLCAweDZjLCAweDY5LCAweDYyLCAweDcyLCAweDZmLCAweDczLCAweDYzLCAweDc1LCAweDYxLFxuICAweDZlLCAweDc0LCAweDZmLCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDZkLCAweDY5LCAweDY3LCAweDc1LFxuICAweDY1LCAweDZjLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDczLCAweDYzLCAweDc1LCAweDYxLCAweDc0LCAweDcyLFxuICAweDZmLCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY3LCAweDcyLCAweDc1LCAweDcwLCAweDZmLCAweDczLFxuICAweDczLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDZlLCAweDY1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDYxLCAweDZkLFxuICAweDY1LCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDY2LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweDYzLFxuICAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweGMzLCAweGExLCAweDczLCAweDZmLCAweDY2LCAweDY1LFxuICAweDcyLCAweDc0LCAweDYxLCAweDYzLCAweDZmLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDZkLCAweDZmLCAweDY0LCAweDY1LFxuICAweDZjLCAweDZmLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDc0LCAweDcyLCAweDYxLFxuICAweDczLCAweDYxLCAweDZjLCAweDY3LCAweGMzLCAweGJhLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDYxLFxuICAweDYzLCAweDc1LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDYzLFxuICAweDc1LCAweDY1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDZmLCAweDcwLCAweDcyLFxuICAweDY1LCAweDZlLCAweDczLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDc2LCAweDY5LCAweDYxLFxuICAweDZhLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDZmLCAweDZkLCAweDc1LCAweDcyLCAweDYzLFxuICAweDY5LCAweDYxLCAweDcwLCAweDZmLCAweDY0LCAweDcyLCAweGMzLCAweGExLCAweDcwLCAweDc1LCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDY0LCAweDY5LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDcwLCAweDc1LCAweDY1LCAweDYyLCAweDZjLCAweDZmLFxuICAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY1LCAweDZjLCAweDcwLFxuICAweDcyLCAweDZmLCAweDcwLCAweDY5LCAweDZmLCAweDYzLCAweDcyLCAweDY5LCAweDczLCAweDY5LCAweDczLCAweDYzLCAweDY5LFxuICAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDY3LCAweDc1LCAweDcyLCAweDZmLCAweDZkLCAweDc1LCAweDY1LFxuICAweDcyLCAweDc0LCAweDY1LCAweDY2LCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYzLCAweDY1LCAweDcyLCAweDcyLFxuICAweDYxLCAweDcyLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDY1LCAweDY2LCAweDY1LCAweDYzLCAweDc0LFxuICAweDZmLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDY0LCAweDYxLFxuICAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY5LCAweDYxLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDc0LFxuICAweDY5LCAweDY1LCAweDcyLCAweDcyLCAweDYxLCAweDY1LCAweDJkLCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDc2LCAweDYxLFxuICAweDcyLCAweDY5LCAweDYxLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDczLCAweDY2LCAweDc1LCAweDc0LFxuICAweDc1LCAweDcyLCAweDZmLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDY3LCAweDc1LFxuICAweDY5LCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY3LCAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDZkLCAweDYxLFxuICAweDczLCAweDZkLCAweDY5LCAweDczLCAweDZkLCAweDZmLCAweDczLCAweGMzLCAweGJhLCAweDZlLCAweDY5LCAweDYzLCAweDZmLFxuICAweDYzLCAweDYxLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDczLCAweDcyLFxuICAweDYxLCAweDdhLCAweGMzLCAweGIzLCAweDZlLCAweDY0LCAweDY1LCAweDYyLCAweDY5LCAweDY0LCAweDZmLCAweDcwLCAweDcyLFxuICAweDc1LCAweDY1LCAweDYyLCAweDYxLCAweDc0LCAweDZmLCAweDZjLCAweDY1LCAweDY0LCAweDZmLCAweDc0LCAweDY1LCAweDZlLFxuICAweGMzLCAweGFkLCAweDYxLCAweDZhLCAweDY1LCAweDczLCAweGMzLCAweGJhLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZmLCAweDYzLCAweDZmLCAweDYzLCAweDY5LCAweDZlLCAweDYxLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDYzLCAweGMzLCAweGExLCAweDY0LCAweDY5LCAweDdhLCAweDY4LCAweDYxLCAweDYyLCAweDZjLCAweDYxLCAweDcyLCAweDczLFxuICAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDYxLCAweDY2LCAweDc1LFxuICAweDY1LCAweDcyLCAweDdhLCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZmLCAweDY3LCAweDc1LCAweDY1LFxuICAweDcyLCAweDcyLCAweDYxLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweGMzLCAweGE5LCAweDc4LCAweDY5LFxuICAweDc0LCAweDZmLCAweDZjLCAweGMzLCAweGIzLCAweDcwLCAweDY1LCAweDdhLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDY0LFxuICAweDYxLCAweDc2LCAweGMzLCAweGFkLCAweDY0LCAweDY1LCAweDZmLCAweDY1LCAweDc2LCAweDY5LCAweDc0LCAweDYxLCAweDcyLFxuICAweDcwLCAweDYxLCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDZhLFxuICAweDYxLCAweDc2LCAweDY5LCAweDY1LCAweDcyLCAweDcwLCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDY2LCAweGMzLFxuICAweGExLCAweDYzLCAweDY5LCAweDZjLCAweDYzLCAweDYxLCAweDYyLCAweDY1LCAweDdhLCAweDYxLCAweGMzLCAweGExLCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDczLCAweDYxLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY1LCAweDZlLCAweDc2LCAweGMzLFxuICAweGFkLCAweDZmLCAweDZhLCAweDYxLCAweDcwLCAweGMzLCAweGIzLCAweDZlLCAweDYxLCAweDYyLCAweDc1LCAweDczLCAweDZmLFxuICAweDczLCAweDYyLCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDZmLCAweDczLFxuICAweDZjLCAweDZjLCAweDY1LCAweDc2LCAweDYxLCAweDcyLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDY2LFxuICAweDc1LCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweGMzLCAweGJhLCAweDZlLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDY1LCAweDczLCAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDZlLFxuICAweDY5LCAweDY0LCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDYyLCAweDYxLCAweDZmLCAweDc1LCAweDZlLCAweDY5LCAweDY0LFxuICAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGExLCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDYxLFxuICAweDcyLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDZmLCAweGQwLCAweGI0LCAweGQwLCAweGJiLCAweGQxLCAweDhmLFxuICAweGQxLCAweDg3LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLFxuICAweGI4LCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIyLFxuICAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGI1LCAweGQxLCAweDg5LFxuICAweGQwLCAweGI1LCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweDlhLCAweGQwLCAweGIwLCAweGQwLFxuICAweGJhLCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLCAweGI3LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweDkyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGFkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLFxuICAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQwLCAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweDk0LCAweGQwLCAweGJiLCAweGQxLCAweDhmLFxuICAweGQwLCAweDlmLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLFxuICAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJhLFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGExLCAweGQwLCAweGE4LFxuICAweGQwLCAweDkwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDhmLCAweGQwLCAweGE3LCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGEyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLFxuICAweGI0LCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQxLCAweDhkLFxuICAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQxLCAweDgzLCAweGQwLCAweDkyLCAweGQwLFxuICAweGIwLCAweGQwLCAweGJjLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLFxuICAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLFxuICAweGI0LCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQxLCAweDhmLCAweGQwLCAweDkyLCAweGQwLCAweGJlLCAweGQxLCAweDgyLFxuICAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQwLFxuICAweDkyLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQxLCAweDgxLFxuICAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQxLFxuICAweDgzLCAweGQwLCAweGIxLCAweGQwLCAweDllLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweDllLCAweGQwLCAweDllLCAweGQwLFxuICAweDllLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg2LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGIwLFxuICAweGQwLCAweDllLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGI0LFxuICAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgzLCAweGQwLCAweGI0LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDk0LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg3LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweDZhLCAweDYxLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweGUwLCAweGE0LFxuICAweDg2LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDg1LFxuICAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LFxuICAweDhmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGE1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweDk4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDljLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweDg4LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDkzLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ4LCAweGE1LCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg5LCAweGQ5LCAweDg3LCAweGQ4LCAweGIwLCAweGQ4LCAweGE3LCAweGQ4LCAweGEyLCAweGQ4LCAweGFlLFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg5LCAweGQ5LCAweDg3LCAweGQ4LCAweGIwLCAweGQ5LCAweDg3LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGJhLCAweGQ5LCAweDhhLCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LFxuICAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGI5LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGI2LCAweGQ4LCAweGIwLCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg3LCAweGQ5LFxuICAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweGQ4LCAweGFkLCAweGQ4LCAweGFhLCAweGQ5LCAweDg5LFxuICAweGQ5LCAweDgyLCAweGQ4LCAweGE4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFlLCAweGQ4LCAweGIxLCAweGQ5LCAweDgxLCAweGQ5LCAweDgyLCAweGQ4LCAweGI3LCAweGQ4LCAweGI5LFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweGQ4LCAweGE1LCAweGQ4LFxuICAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGE1LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ5LFxuICAweDg3LCAweGQ4LCAweGE4LCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LCAweGQ5LCAweDgzLCAweGQ5LCAweDhhLCAweGQ5LCAweDgxLFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGFkLCAweGQ4LCAweGFiLCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ5LFxuICAweDg4LCAweGQ5LCAweDg3LCAweGQ5LCAweDg4LCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFjLFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ4LCAweGFmLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGIzLCAweGQ4LCAweGI5LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ4LCAweGI1LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg5LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGIwLCAweGQ4LCAweGE4LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGFiLCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDgzLCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGFiLCAweGQ5LCAweDg1LCAweGQ4LCAweGI1LCAweGQ4LCAweGIxLCAweGQ4LCAweGI0LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGFkLCAweGQ4LCAweGFkLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ5LCAweDgxLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ4LCAweGEzLCAweGQ4LCAweGE4LCAweGQ5LCAweDg4LCAweGQ4LFxuICAweGFlLCAweGQ4LCAweGE3LCAweGQ4LCAweGI1LCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGI2LCAweGQ5LCAweDg4LCAweGQ5LCAweDg4LCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGFlLCAweGQ5LCAweDhhLCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGFhLCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLFxuICAweGQ5LCAweDg4LCAweGQ5LCAweDg3LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDgyLCAweGQ4LCAweGI1LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgyLCAweGQ5LCAweDg1LCAweGQ4LCAweGEzLCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGFkLCAweGQ5LCAweDg2LCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGE4LCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGFjLCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGFjLCAweGQ5LCAweDg3LCAweGQ4LCAweGE5LCAweGQ4LCAweGIzLCAweGQ5LCAweDg2LCAweGQ4LCAweGE5LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGFhLCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ4LCAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGJhLCAweGQ4LFxuICAweGIyLCAweGQ4LCAweGE5LCAweGQ5LCAweDg2LCAweGQ5LCAweDgxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGFhLCAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFhLCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDgyLCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ5LCAweDhhLCAweGQ4LCAweGExLCAweGQ5LCAweDg2LFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDgzLCAweGQ4LCAweGE4LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE4LCAweGQ4LCAweGEzLCAweGQ5LFxuICAweDg2LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LCAweDgzLFxuICAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDgxLCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ4LFxuICAweGFkLCAweGQ4LCAweGIzLCAweGQ5LCAweDg2LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ5LFxuICAweDg3LCAweGQ4LCAweGIxLCAweGQ5LCAweDgyLCAweGQ4LCAweGI3LCAweGQ4LCAweGIxLCAweGQ4LCAweGI3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE4LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LFxuICAweDY5LCAweDYzLCAweDY1LCAweDY0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LCAweDZjLCAweDc0LCAweDY4LCAweDY5LCAweDZkLFxuICAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDczLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLFxuICAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLFxuICAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDcyLCAweDc1LCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLFxuICAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZmLFxuICAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LFxuICAweDc3LCAweDY1LCAweDZjLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLFxuICAweDY1LCAweDc1LCAweDZlLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDZmLFxuICAweDcyLCAweDZiLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDY0LCAweDc5LCAweDZlLCAweDYxLFxuICAweDZkLCAweDY5LCAweDYzLCAweDYyLCAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LFxuICAweDc2LCAweDYxLCAweDYzLCAweDc5LCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDUzLCAweDY1LFxuICAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY0LFxuICAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LFxuICAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDY2LCAweDcyLCAweDY5LCAweDY1LCAweDZlLFxuICAweDY0LCAweDczLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDZiLFxuICAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDY5LCAweDZjLFxuICAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDc3LCAweDY5LFxuICAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDYxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDc2LFxuICAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDc3LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDc3LCAweDYxLFxuICAweDcyLCAweDY0LCAweDc5LCAweDZmLCAweDc1LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDcyLCAweDY1LCAweDZkLCAweDZmLFxuICAweDc2LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDY1LCAweDYzLCAweDc1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDY5LCAweDYyLCAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDY1LCAweDY0LFxuICAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDcyLCAweDY2LCAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDczLCAweDc1LCAweDZkLCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDZkLCAweDYxLCAweDYzLCAweDY4LCAweDY5LFxuICAweDZlLCAweDY1LCAweDZkLCAweDY5LCAweDZlLCAweDc1LCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDc2LFxuICAweDYxLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDZlLCAweDc1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDY1LFxuICAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY0LCAweDc0LCAweDcyLCAweDY5LCAweDY3LCAweDY3LCAweDY1LCAweDcyLFxuICAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZlLFxuICAweDY1LCAweDcyLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcwLCAweDY1LCAweDcyLCAweDY2LFxuICAweDY1LCAweDYzLCAweDc0LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDc5LCAweDczLFxuICAweDc0LCAweDY1LCAweDZkLCAweDczLCAweDZiLCAweDY1LCAweDY1LCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDc1LFxuICAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDJjLCAweDZhLFxuICAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LFxuICAweDczLCAweDc1LCAweDcyLCAweDY2LCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LFxuICAweDNiLCAweDY1LCAweDc4LCAweDcwLCAweDY5LCAweDcyLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDY1LFxuICAweDc3LCAweDczLCAweDYyLCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDQ1LCAweDZlLCAweDY3LCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDcyLFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDUwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDcwLFxuICAweDY5LCAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDYxLFxuICAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDc5LFxuICAweDc2LCAweDY5LCAweDZjLCAweDZjLCAweDYxLCAweDY3LCAweDY1LCAweDUzLCAweDcwLCAweDYxLCAweDZlLCAweDY5LCAweDczLFxuICAweDY4LCAweDY3LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDc5LCAweDY0LCAweDY1LCAweDYzLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY1LCAweDZkLCAweDY1LCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDczLCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDcxLCAweDc1LCAweDYxLFxuICAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDY3LCAweDY1LFxuICAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY1LCAweDczLCAweDczLFxuICAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDczLCAweDY2LCAweDY5LCAweDY3LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDY1LCAweDcyLCAweDY1LCAweDc4LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY0LCAweDY5LCAweDY3LCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDcwLFxuICAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDQxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDZkLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDc0LCAweDcyLCAweDYxLCAweDY2LCAweDY2LCAweDY5LFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDY0LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDc2LCAweDY5LCAweDYzLCAweDc0LFxuICAweDZmLCAweDcyLCAweDc5LCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDczLCAweDY2LCAweDY1LFxuICAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLFxuICAweDc1LCAweDczLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLCAweDczLFxuICAweDU2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDY1LCAweDcwLCAweDY5LCAweDczLCAweDZmLCAweDY0LCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY5LFxuICAweDZlLCAweDY3LCAweDY3LCAweDcyLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDYyLCAweDc2LCAweDY5LFxuICAweDZmLCAweDc1LCAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDc5LCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDJmLFxuICAweDc1LCAweDZjLCAweDNlLCAweDBkLCAweDBhLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDY3LFxuICAweDY1LCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDZiLCAweDc0LFxuICAweDZmLCAweDcwLCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDcwLCAweDYxLCAweDc0LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZlLCAweDc1LCAweDZlLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDQ0LCAweDY5LCAweDY3LFxuICAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDYzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDU3LCAweDY1LFxuICAweDYyLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDc1LCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LFxuICAweDQxLCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDYzLCAweDYxLCAweDY0LCAweDY1LFxuICAweDczLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLFxuICAweDNiLCAweDIwLCAweDYxLCAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY1LFxuICAweDYxLCAweDczLCAweDY1LCAweDQxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY3LCAweDY1LCAweDc0LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDczLCAweDZlLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDUwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDYzLFxuICAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDczLFxuICAweDYzLCAweDYxLCAweDcwLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDczLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDNkLCAweDMxLCAweDI2LCAweDYxLFxuICAweDZkLCAweDcwLCAweDNiLCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDNkLCAweDIwLFxuICAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDc1LCAweDcwLFxuICAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDUzLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDRlLFxuICAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDQzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDc0LCAweDZmLCAweDZmLCAweDZjLCAweDYyLFxuICAweDYxLCAweDcyLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYyLCAweDY1LCAweDYzLCAweDYxLFxuICAweDc1LCAweDczLCAweDY1LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDQ0LCAweDY1LCAweDc1LFxuICAweDc0LCAweDczLCAweDYzLCAweDY4LCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDc3LCAweDZmLFxuICAweDcyLCAweDZiLCAweDY1LCAweDcyLCAweDczLCAweDcxLCAweDc1LCAweDY5LCAweDYzLCAweDZiLCAweDZjLCAweDc5LCAweDYyLFxuICAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDY1LCAweDc4LCAweDYxLCAweDYzLCAweDc0LCAweDZjLCAweDc5LFxuICAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDczLCAweDY1LCAweDYxLCAweDczLFxuICAweDY1LCAweDUzLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDc3LCAweDY1LCAweDYxLCAweDcwLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDY4LCAweDY5LCAweDYyLCAweDY5LCAweDc0LCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDIxLCAweDJkLCAweDJkLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDZmLCAweDc1LFxuICAweDc0LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDZiLCAweDczLCAweDY0LFxuICAweDY1LCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDI4LCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LFxuICAweDcwLCAweDc1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLFxuICAweDIyLCAweDRkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDQ5LCAweDc0LCAweDYxLCAweDZjLFxuICAweDY5LCAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDc2LCAweDY5LCAweDZjLCAweDc5LCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDJkLCAweDMxLFxuICAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBhLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDQzLFxuICAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDYzLCAweDY1LFxuICAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDY0LCAweDcyLCAweDYxLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDY5LCAweDZjLCAweDZjLCAweDY5LFxuICAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDQ3LCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDc3LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDUzLFxuICAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDYxLCAweDc0LCAweDYxLCAweDZjLCAweDZmLCAweDY3LFxuICAweDQxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLFxuICAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDZlLCAweDY5LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDZhLCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDc5LCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDYyLCAweDYxLCAweDcyLCAweDQzLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDY3LCAweDZmLCAweDY4LCAweDZmLCAweDZjLFxuICAweDY5LCAweDY0LCAweDYxLCAweDc5LCAweDQ3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDcwLCAweDYxLFxuICAweDczLCAweDczLCAweDYxLCAweDY3LCAweDY1LCAweDJjLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDYxLFxuICAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDY1LCAweDY1LCAweDZjLCAweDY5LCAweDZlLCAweDY3LFxuICAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLFxuICAweDY3LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDZjLCAweDc5LCAweDJlLCAweDBhLCAweDBhLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDIwLFxuICAweDZlLCAweDZmLCAweDc0LCAweDY0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDQyLCAweDcyLCAweDY5LFxuICAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDQzLCAweDY4LCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDZjLCAweDYxLFxuICAweDYzLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LCAweDQ5LFxuICAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDIyLCAweDIwLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDJkLFxuICAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LFxuICAweDY1LCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDRjLCAweDY5LCAweDYyLCAweDcyLCAweDYxLFxuICAweDcyLCAweDc5LCAweDY4LCAweDc1LCAweDczLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDYzLCAweDc0LCAweDYxLCAweDY2LCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDczLCAweDQzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDZjLCAweDY1LCAweDczLCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYyLCAweDcyLFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLFxuICAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDZkLCAweDY5LFxuICAweDc1LCAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDZiLCAweDYxLCAweDY3LCAweDY1LCAweDQxLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY5LCAweDYzLCAweDYxLCAweDQ1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDVkLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDRkLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDY1LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc4LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LFxuICAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDJkLCAweDZkLCAweDZmLCAweDYyLCAweDY5LFxuICAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDc3LCAweDYxLCAweDZlLCAweDc0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDY5LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDc4LCAweDc5LCAweDZmLCAweDc1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDY0LCAweDZkLFxuICAweDYxLCAweDc4LCAweDY5LCAweDZkLCAweDc1LCAweDZkLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDcyLCAweDYxLCAweDcwLCAweDY5LCAweDY0LCAweDZjLCAweDc5LCAweDYzLCAweDZjLCAweDY5LCAweDZkLCAweDYxLCAweDc0LFxuICAweDY1LCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY3LFxuICAweDY1LCAweDY0LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDY0LCAweDcwLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDc1LCAweDZjLCAweDYxLCAweDY0LCAweDc5LCAweDZlLCAweDYxLCAweDczLCAweDc0LCAweDc5LCAweDY4LCAweDZmLFxuICAweDc3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDUzLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc1LCAweDY1LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDc5LFxuICAweDUyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDczLCAweDZmLCAweDZjLCAweDY0LCAweDY5LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDZjLCAweDc5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDJlLCAweDI2LCAweDcxLCAweDc1LFxuICAweDZmLCAweDc0LCAweDNiLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDQ1LCAweDY0LCAweDc3LFxuICAweDYxLCAweDcyLCAweDY0LCAweDIwLCAweDczLCAweDY1LCAweDY3LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDUyLCAweDZmLFxuICAweDYyLCAweDY1LCAweDcyLCAweDc0LCAweDIwLCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDUwLFxuICAweDYxLCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZlLCAweDY1LCAweDY0LFxuICAweDc1LCAweDcwLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNhLCAweDc3LCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDQxLCAweDZlLCAweDY3LCAweDY1LCAweDZjLFxuICAweDY1LCAweDczLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDVmLCAweDczLCAweDY1LCAweDYxLFxuICAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDcxLFxuICAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDY3LCAweDcyLFxuICAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDNhLCAweDIwLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc0LFxuICAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYyLCAweDY5LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LFxuICAweDYyLCAweDY1LCAweDZlLCAweDY1LCAweDY2LCAweDY5LCAweDc0LCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY5LCAweDZlLFxuICAweDY3LCAweDUzLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDczLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDZkLFxuICAweDc1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDZkLCAweDZmLCAweDcyLCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDczLCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDc2LCAweDYxLFxuICAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLFxuICAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDY1LCAweDc2LCAweDY1LFxuICAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDYyLCAweDZmLCAweDc0LCAweDc0LFxuICAweDZmLCAweDZkLCAweDNhLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDYxLCAweDZjLCAweDZjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDcwLCAweDY1LCAweDZlLFxuICAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDIwLFxuICAweDQxLCAweDc1LCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDczLCAweDc5LCAweDZkLCAweDYyLCAweDZmLCAweDZjLCAweDczLFxuICAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDZkLCAweDc1LCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLFxuICAweDczLCAweDc0LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDdkLCAweDI5LCAweDI4LCAweDI5LFxuICAweDNiLCAweDBkLCAweDBhLCAweDcwLCAweDYxLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDcyLCAweDZmLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDczLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDIwLCAweDI3LCAweDI3LCAweDU0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLFxuICAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDYxLCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDQ3LCAweDYxLCAweDZjLCAweDZjLFxuICAweDY1LCAweDcyLCAweDc5LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDYxLCAweDYyLCAweDY5LFxuICAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDY1LCAweDZlLCAweDY4LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDYxLFxuICAweDcyLCAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDI5LCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDUzLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LFxuICAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLFxuICAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDZmLCAweDZjLCAweDY1LCAweDQ1LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDc4LCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDQzLCAweDY4LFxuICAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZjLCAweDZlLFxuICAweDY1LCAweDc1LCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LFxuICAweDVmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDNlLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDZjLFxuICAweDY1LCAweDY0LCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYzLCAweDYxLCAweDc1LCAweDczLFxuICAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDc3LCAweDY1LCAweDYyLCAweDZiLCAweDY5LCAweDc0LCAweDYzLCAweDZjLCAweDYxLFxuICAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDRhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDYzLCAweDY4LFxuICAweDYxLCAweDcwLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZkLCAweDczLCAweDU0LFxuICAweDY4LCAweDZmLCAweDZkLCAweDYxLCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDdhLCAweDY5LCAweDZjLCAweDZjLCAweDYxLFxuICAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDY1LFxuICAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDNhLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDJjLCAweDY4LCAweDc1LCAweDZlLCAweDY0LFxuICAweDcyLCAweDY1LCAweDY0LCAweDRmLCAweDZjLCAweDc5LCAweDZkLCAweDcwLCAweDY5LCAweDYzLCAweDVmLCAweDYyLCAweDc1LFxuICAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDczLCAweDcyLCAweDY1LFxuICAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDYzLCAweDY4LCAweDcyLCAweDZmLCAweDZlLCAweDY5LCAweDYzLCAweDY0LFxuICAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDczLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LFxuICAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDY1LCAweDY5LCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZjLCAweDc5LCAweDY3LCAweDcyLCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZkLCAweDcwLFxuICAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDcwLFxuICAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJlLCAweDc3LFxuICAweDZmLCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDczLFxuICAweDc0LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LFxuICAweDc0LCAweDc5LCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDQzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDY1LFxuICAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDQyLCAweDcyLFxuICAweDZmLCAweDc3LCAweDczLCAweDY1LCAweDcyLCAweDZjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDdkLFxuICAweDIwLCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDUwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDY4LCAweDY5LCAweDY0LCAweDY1LCAweDI4LCAweDI5LFxuICAweDNiLCAweDQ2LCAweDZjLCAweDZmLCAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDYxLCAweDZlLCAweDczLCAweDc3LCAweDY1LFxuICAweDcyLCAweDczLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDQ1LCAweDZkLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDczLCAweDY1LCAweDcyLFxuICAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDUzLCAweDY1LFxuICAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDJkLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDQ2LFxuICAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDIxLCAweDNkLCAweDIwLCAweDZlLCAweDc1LCAweDZjLCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDQ0LCAweDY1LCAweDZlLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDc2LCAweDZmLCAweDY5LCAweDY0LCAweDI4LFxuICAweDMwLCAweDI5LCAweDJmLCAweDYxLCAweDZjLCAweDZjLCAweDJlLCAweDZhLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDUyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDUzLCAweDc0LCAweDY1LFxuICAweDcwLCAweDY4LCAweDY1LCAweDZlLCAweDBhLCAweDBhLCAweDU3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDZmLCAweDYyLFxuICAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDMyLCAweDNlLCAweDBkLCAweDBhLCAweDRkLFxuICAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LFxuICAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDczLCAweDJlLCAweDBhLCAweDBhLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDBhLCAweDBhLCAweDRkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDcwLCAweDZmLCAweDc3LCAweDY1LFxuICAweDcyLCAweDY1LCAweDY0LCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY2LCAweDY5LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY5LCAweDYzLCAweDZiLCAweDY1LCAweDc0LCAweDczLCAweDZmLFxuICAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZjLFxuICAweDc3LCAweDY5LCAweDc0LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDYzLFxuICAweDY1LCAweDQ3LCAweDY1LCAweDZmLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDQyLCAweDY1LCAweDZjLCAweDY3LCAweDY5LFxuICAweDc1LCAweDZkLCAweDJlLCAweDJlLCAweDJlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDc0LCAweDc3LCAweDY5LCAweDc0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDc3LCAweDYxLCAweDY5LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDYxLCAweDcyLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDRmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDcwLFxuICAweDY4LCAweDcyLCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDc1LCAweDcyLCAweDc2LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDYxLFxuICAweDcyLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDc5LCAweDY5LCAweDY3LCAweDZlLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDZjLCAweDZmLCAweDczLCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDIwLCAweDYxLCAweDczLCAweDQ3LCAweDY1LCAweDZmLFxuICAweDcyLCAweDY3LCAweDY5LCAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDNjLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDNjLCAweDczLCAweDc0LCAweDZmLCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDMxLFxuICAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLFxuICAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNhLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDY5LFxuICAweDY1LCAweDY0LCAweDMxLCAweDMwLCAweDMwLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDNjLCAweDJmLCAweDY4LCAweDMzLFxuICAweDNlLCAweDBhLCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDYyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDc3LCAweDY1LFxuICAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDMwLCAweDMwLCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDZkLFxuICAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDZmLCAweDY2LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDcyLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDZjLCAweDc5LFxuICAweDIwLCAweDYyLCAweDY5LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDcyLCAweDY5LCAweDczLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDI2LCAweDcyLCAweDYxLCAweDcxLCAweDc1LCAweDZmLCAweDNiLCAweDcwLCAweDZjLCAweDc1LFxuICAweDczLCAweDZmLCAweDZlLCAweDY1LCAweDY4LCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI4LCAweDc0LFxuICAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDQ0LCAweDZmLCAweDc1LCAweDY3LCAweDZjLCAweDYxLCAweDczLCAweDZhLFxuICAweDZmLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY5LCAweDcyLCAweDYzLCAweDZjLCAweDY1LCAweDczLFxuICAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQxLCAweDZlLCAweDYzLCAweDY5LCAweDY1LCAweDZlLFxuICAweDc0LCAweDU2LCAweDY5LCAweDY1LCAweDc0LCAweDZlLCAweDYxLCAweDZkLCAweDc2LCAweDY1LCAweDY4LCAweDY5LCAweDYzLFxuICAweDZjLCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDc5LCAweDczLFxuICAweDc0LCAweDYxLCAweDZjLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDIwLCAweDNkLCAweDU3LCAweDY5LCAweDZlLFxuICAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDY1LCAweDZlLCAweDZhLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDYxLCAweDIwLFxuICAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDY0LCAweDNjLFxuICAweDYxLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDY5LCAweDY3LCAweDZlLFxuICAweDIwLCAweDQxLCAweDZjLCAweDZjLCAweDIwLCAweDcyLCAweDY5LCAweDY4LCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDQ0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDY0LCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LFxuICAweDY1LCAweDZlLCAweDNiLCAweDYyLCAweDYxLCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY1LFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLCAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDYxLCAweDc0LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY3LCAweDY1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDRhLCAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDZlLFxuICAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDNhLCAweDY4LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDQ2LCAweDcyLCAweDY1LCAweDZlLFxuICAweDYzLCAweDY4LCAweDIwLCAweDZjLCAweDYxLCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDc5LCAweDcwLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDZlLFxuICAweDY1LCAweDZkLCAweDY5LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDY2LCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDY0LFxuICAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDJmLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDY2LCAweDczLCAweDJkLCAweDY5LCAweDZkLCAweDYxLCAweDY3LFxuICAweDY1LCAweDNhLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDYzLCAweDJlLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDIyLCAweDNlLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDc2LCAweDY5LCAweDZmLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIyLCAweDNlLCAweDYzLFxuICAweDY5LCAweDcyLCAweDYzLCAweDc1LCAweDY5LCAweDc0LCAweDQ2LCAweDY5LCAweDZlLCAweDZjLCAweDYxLCAweDZlLCAweDY0LFxuICAweDYzLCAweDY4LCAweDY1LCAweDZkLCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDMxLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc1LFxuICAweDYzLCAweDY4LCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDZlLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDIwLCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDc5LFxuICAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDc5LCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDY2LFxuICAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDcyLCAweDYxLCAweDY5LCAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY3LFxuICAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZlLCAweDc1LCAweDYzLCAweDZjLFxuICAweDY1LCAweDYxLCAweDcyLCAweDRhLCAweDY1LCAweDc3LCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDcwLCAweDcyLCAweDZmLFxuICAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDQyLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDczLCAweDY4LCAweDY2LCAweDZjLFxuICAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDc0LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDczLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIwLFxuICAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDc1LCAweDY5LCAweDYzLCAweDY5LFxuICAweDY0LCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDcwLCAweDY1LCAweDcyLCAweDY5LFxuICAweDZmLCAweDY0LCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDczLCAweDUzLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDY2LCAweDY5LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLFxuICAweDZkLCAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDc3LFxuICAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDNjLCAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDUwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDYzLCAweDc5LCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LFxuICAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDZmLFxuICAweDZjLCAweDc2LCAweDY1LCAweDUzLCAweDc3LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDY4LCAweDYyLCAweDcyLCAweDY5LFxuICAweDY1LCAweDY2LCAweDZjLCAweDc5LCAweDUwLCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDZmLFxuICAweDIwLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDY0LFxuICAweDY1LCAweDcwLCAweDY5LCAweDYzLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDZlLCAweDczLFxuICAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDczLCAweDZlLCAweDY1LCAweDc4LCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDYxLCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZkLCAweDYxLCAweDcwLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDc2LCAweDY5LFxuICAweDczLCAweDY1LCAweDY0LCAweDZhLCAweDUxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDI4LCAweDJkLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLCAweDc0LCAweDZmLFxuICAweDZmLCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDUzLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LFxuICAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDczLCAweDU0LCAweDc1LCAweDcyLCAweDZiLCAweDY5LCAweDczLCAweDY4LFxuICAweDc5LCAweDZmLCAweDc1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDJlLCAweDZkLCAweDYxLCAweDc0LCAweDYzLCAweDY4LFxuICAweDI4LCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLCAweDBhLCAweDYyLCAweDc1LCAweDcyLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDY3LCAweDcyLFxuICAweDY1LCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDNkLCAweDUyLCAweDY5LCAweDYzLFxuICAweDY4LCAweDYxLCAweDcyLCAweDY0LCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDcwLCAweDZjLFxuICAweDYxLCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDNjLFxuICAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDBkLCAweDBhLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLFxuICAweDc1LCAweDZjLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDczLFxuICAweDczLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LFxuICAweDYzLCAweDczLCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDY1LCAweDYzLFxuICAweDc1LCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDZjLCAweDY5LCAweDZlLFxuICAweDZiLCAweDIwLCAweDc0LCAweDZmLCAweDQ0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LCAweDZjLCAweDc0LCAweDNjLCAweDYyLFxuICAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNhLCAweDIwLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDJjLCAweDYzLFxuICAweDY4LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDZkLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDYzLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDY1LFxuICAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDNjLCAweDJmLCAweDY4LCAweDMxLCAweDNlLFxuICAweDBkLCAweDBhLCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJlLCAweDNmLCAweDc4LCAweDZkLCAweDZjLFxuICAweDIwLCAweDc2LCAweDY1LCAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDYxLFxuICAweDZkLCAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDY5LFxuICAweDcyLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDJkLCAweDJkLCAweDNlLCAweDI5LFxuICAweDJlLCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDI4LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLFxuICAweDY4LCAweDZmLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIzLCAweDY2LCAweDY2LCAweDY2LCAweDY2LCAweDY2LFxuICAweDY2LCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDY1LCAweDU2LCAweDY5LCAweDZlLCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDIwLCAweDczLCAweDcyLCAweDYzLFxuICAweDNkLCAweDIyLCAweDJmLCAweDUwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY0LCAweDY1LCAweDczLFxuICAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDY1LFxuICAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDUwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLCAweDY4LFxuICAweDY1LCAweDZjLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDRhLCAweDZmLCAweDczLCAweDY1LCAweDcwLCAweDY4LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LFxuICAweDczLCAweDNjLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDYxLCAweDIwLCAweDZjLCAweDYxLCAweDcyLFxuICAweDY3LCAweDY1LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDZlLCAweDI3LCAweDc0LCAweDZjLCAweDYxLCAweDc0LCAweDY1LFxuICAweDcyLCAweDJjLCAweDIwLCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY2LCAweDYxLCAweDc2LFxuICAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDQ4LCAweDc1LFxuICAweDZlLCAweDY3LCAweDYxLCAweDcyLCAweDc5LCAweDQxLCAweDY5LCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLFxuICAweDY1LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDRkLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDZjLCAweDUzLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLFxuICAweDczLCAweDUwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDJjLCAweDIwLCAweDYxLCAweDZlLFxuICAweDY0LCAweDIwLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDY1LCAweDI2LCAweDcxLCAweDc1LFxuICAweDZmLCAweDc0LCAweDNiLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDY2LFxuICAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDQ3LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDZlLCAweDIwLCAweDQxLCAweDY2LCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDczLCAweDY3LFxuICAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDYxLCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDc5LCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDIwLCAweDZmLFxuICAweDY2LCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDY0LCAweDY1LCAweDczLFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDJlLCAweDczLCAweDcyLCAweDYzLFxuICAweDIwLCAweDNkLCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDc0LCAweDZmLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY3LFxuICAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDRkLCAweDc1LFxuICAweDczLCAweDZjLCAweDY5LCAweDZkLCAweDczLCAweDU3LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDY5LFxuICAweDZlLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDYxLCAweDZjLCAweDczLCAweDQ5LCAweDZlLCAweDY0LCAweDY1LCAweDY1LCAweDY0LFxuICAweDJjLCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJmLCAweDczLCAweDY4LCAweDZmLCAweDc3LFxuICAweDVmLCAweDYxLCAweDZmLCAweDc1LCAweDc0LCAweDY0LCAweDZmLCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDYzLCAweDYxLFxuICAweDcwLCAweDY1LCAweDI4LCAweDQxLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDY3LCAweDY1LCAweDZlLFxuICAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDJjLCAweDQ5LCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDQ4LFxuICAweDY1LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDQ5LCAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLFxuICAweDQxLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDc5LCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDQ0LCAweDYxLCAweDZlLCAweDY5LCAweDY1LCAweDZjLCAweDIwLCAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDIyLCAweDNlLCAweDY5LCAweDZkLCAweDcwLCAweDZmLFxuICAweDczLCAweDY1LCAweDY0LCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LCAweDdhLCAweDY1LCAweDQxLCAweDYyLCAweDcyLFxuICAweDYxLCAweDY4LCAweDYxLCAweDZkLCAweDI4LCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDdiLCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDcwLCAweDc1LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI5LFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDI4LCAweDdjLCAweDdjLCAweDIwLCAweDViLCAweDVkLCAweDNiLCAweDBhLFxuICAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLCAweDIwLCAweDJhLCAweDZiLCAweDY5LCAweDc0LCAweDYzLCAweDY4LCAweDY1LFxuICAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLFxuICAweDZjLCAweDIwLCAweDY0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDZkLCAweDYxLCAweDY5LCAweDZlLFxuICAweDZjLCAweDc5LCAweDIwLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDI3LCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDczLCAweDY5LCAweDY2LFxuICAweDI4LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDQ5LCAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDI2LFxuICAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDNiLCAweDIwLCAweDIyLCAweDNlLCAweDU0LCAweDY1LCAweDcyLCAweDZkLCAweDczLFxuICAweDYyLCAweDZmLCAweDcyLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDRmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDZiLCAweDY5LFxuICAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDY3LCAweDYxLCAweDY5LCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDY3LCAweDZmLCAweDY5LCAweDZlLCAweDY3LCAweDZhLCAweDc1LCAweDczLFxuICAweDc0LCAweDY5LCAweDY2LCAweDc5LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDY2LCAweDYxLFxuICAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDc3LCAweDZlLCAweDYxLFxuICAweDczLCAweDczLCAweDYxLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZlLCAweDc2LCAweDY5LCAweDc0LCAweDY1LCAweDY0LFxuICAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDc3LFxuICAweDZlLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLFxuICAweDY1LCAweDcyLCAweDc0LCAweDY0LCAweDY5LCAweDYxLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDY0LCAweDZmLCAweDZjLFxuICAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDYzLCAweDZjLCAweDc1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDY4LFxuICAweDcwLCAweDNmLCAweDY5LCAweDY0LCAweDNkLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDY4LCAweDZmLCAweDZjLCAweDI5LFxuICAweDNiLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLFxuICAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDc2LCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZjLFxuICAweDczLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDQxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDYxLCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDcyLFxuICAweDZmLCAweDY5LCAweDY0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDY0LCAweDY5LCAweDZjLCAweDZjLFxuICAweDZlLCAweDY1LCAweDczLCAweDczLCAweDc3LCAweDYxLCAweDZjLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDY2LCAweDc5LCAweDZkLFxuICAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDQ0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDczLFxuICAweDY1LCAweDY0LCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDBhLCAweDA5LCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDIwLCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDczLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDY5LCAweDZlLCAweDY3LCAweDRjLCAweDY5LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDIwLCAweDQyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LFxuICAweDZlLCAweDJlLCAweDZhLCAweDczLCAweDNmLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZiLFxuICAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDZiLCAweDc0LCAweDc0LCAweDZmLCAweDY0LCAweDYxLCAweDc5LCAweDI3LCAweDczLFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDNkLCAweDc3LCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDQxLCAweDZjLCAweDZjLCAweDIwLCAweDUyLFxuICAweDY5LCAweDY3LCAweDNiLCAweDBhLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDcyLCAweDYxLCAweDY5LCAweDczLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDQxLCAweDZjLCAweDczLCAweDZmLCAweDJjLCAweDIwLCAweDYzLCAweDcyLCAweDc1LFxuICAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIyLCAweDNlLCAweDY0LCAweDY1LFxuICAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDY2LFxuICAweDY5LCAweDcyLCAweDY1LCAweDY2LCAweDZmLCAweDc4LCAweDYxLCAweDczLCAweDIwLCAweDZkLCAweDc1LCAweDYzLCAweDY4LFxuICAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJjLFxuICAweDIwLCAweDczLCAweDJjLCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLFxuICAweDNkLCAweDIwLCAweDBhLCAweDBkLCAweDBhLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDc0LCAweDZmLCAweDc3LCAweDYxLFxuICAweDcyLCAweDY0LCAweDczLCAweDUyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDUwLCAweDcyLCAweDY5LFxuICAweDc2LCAweDYxLCAweDc0LCAweDY1LCAweDQ2LCAweDZmLCAweDcyLCAweDY1LCAweDY5LCAweDY3LCAweDZlLCAweDUwLCAweDcyLFxuICAweDY1LCAweDZkLCAweDY5LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDU2LFxuICAweDY5LCAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDczLFxuICAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDUwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDY1LFxuICAweDY0LCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDNiLCAweDcwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDc0LCAweDc5LCAweDYzLCAweDY4LCAweDYxLCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDRjLCAweDY5LCAweDc2LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDY1LCAweDczLCAweDQxLCAweDZlLCAweDc0LFxuICAweDY4LCAweDZmLCAweDZlLCAweDc5LCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDIyLCAweDIwLCAweDUyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDQ1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDc5LCAweDcyLFxuICAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDc1LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY3LCAweDcyLCAweDYxLCAweDc2LCAweDY5LCAweDc0LCAweDc5LCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDQzLCAweDY4LCAweDYxLCAweDcwLCAweDc0LCAweDY1LCAweDcyLCAweDJkLCAweDczLCAweDY4LCAweDYxLCAweDY0LFxuICAweDZmLCAweDc3LCAweDRlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLCAweDc0LCAweDY0LFxuICAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDY0LCAweDY5LCAweDc1LCAweDZkLCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDczLCAweDc2LCAweDYxLFxuICAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDcyLCAweDYxLCAweDc2LCAweDY1LCAweDZjLCAweDczLCAweDY4LFxuICAweDY1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDYxLCAweDYzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc5LCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDY4LFxuICAweDYxLCAweDY0LCAweDYxLCAweDY5LCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc0LCAweDZmLCAweDc3LCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDBhLCAweDBhLCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDI3LCAweDYzLCAweDZjLFxuICAweDY5LCAweDYzLCAweDZiLCAweDI3LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDZiLCAweDY1LFxuICAweDc5LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDYzLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDI4LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDI5LCAweDNiLFxuICAweDQxLCAweDZlLCAweDY0LCAweDcyLCAweDY1LCAweDc3LCAweDIwLCAweDc1LCAweDZlLCAweDY5LCAweDcxLCAweDc1LCAweDY1LFxuICAweDIwLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDIwLCAweDZkLCAweDZmLFxuICAweDcyLCAweDY1LCAweDMzLCAweDMwLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LFxuICAweDcyLCAweDZlLCAweDNiLCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDcwLCAweDZjLCAweDc1LFxuICAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDY1LFxuICAweDcyLCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ2LFxuICAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDc0LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY1LCAweDcyLCAweDczLCAweDQ0LCAweDc1LCAweDZiLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDZmLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDY5LCAweDc0LCAweDc3LCAweDY4LFxuICAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDZkLCAweDZmLCAweDZlLCAweDc5LCAweDYxLFxuICAweDIwLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDIyLCAweDNhLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDY1LCAweDZlLCAweDc1LCAweDIyLCAweDNlLFxuICAweDBhLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDZjLCAweDc5LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZjLCAweDY3LCAweDYxLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDUzLCAweDc1LCAweDZkLFxuICAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZjLCAweDZmLFxuICAweDc5LCAweDYxLCAweDZjLCAweDc0LCAweDc5LCAweDY2LCAweDY5LCAweDc0LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDY1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDZmLCAweDcyLFxuICAweDczLCAweDc1LCAweDcwLCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDUzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LFxuICAweDIwLCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDUyLCAweDc1LCAweDczLCAweDczLCAweDY5LFxuICAweDYxLCAweDZlLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDQxLCAweDZjLCAweDYyLCAweDY1LFxuICAweDcyLCAweDc0LCAweDYxLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDIyLCAweDNlLCAweDJlLCAweDYxLFxuICAweDcwLCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY0LCAweDZmLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY2LFxuICAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDYyLCAweDYxLCAweDZlLCAweDZiLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYyLCAweDY1LCAweDZlLCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDQ0LCAweDY1LCAweDczLCAweDcwLCAweDY5LCAweDc0LFxuICAweDY1LCAweDQzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDczLCAweDI5LCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDYzLCAweDZjLCAweDZmLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDQ5LCAweDZlLFxuICAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LCAweDY2LCAweDY5LCAweDY2LCAweDc0LCAweDY1LCAweDY1LCAweDZlLCAweDYxLFxuICAweDczLCAweDIwLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDJlLCAweDc5LCAweDYxLCAweDY4LCAweDZmLCAweDZmLCAweDJlLFxuICAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDY2LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY1LFxuICAweDcyLCAweDZmLCAweDYyLCAweDczLCAweDYzLCAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LFxuICAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDNkLCAweDIwLCAweDRkLCAweDYxLFxuICAweDc0LCAweDY4LCAweDJlLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDZlLCAweDZjLFxuICAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDIwLFxuICAweDc3LCAweDY4LCAweDZmLCAweDZjLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDcyLCAweDZmLCAweDcyLCAweDc5LFxuICAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDYyLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDcyLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDY5LFxuICAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDY4LCAweDY1LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYzLCAweDZjLFxuICAweDZmLCAweDc1LCAweDY0LCAweDY2LCAweDcyLCAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDRkLFxuICAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDMxLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDQyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LFxuICAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LFxuICAweDczLCAweDc0LCAweDc2LCAweDY5LCAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDczLCAweDIyLCAweDNlLCAweDYzLCAweDcyLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDQ1LCAweDRlLCAweDQ0LFxuICAweDIwLCAweDJkLCAweDJkLCAweDNlLCAweDY2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDYxLCAweDc3LFxuICAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDRjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDQ4LFxuICAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDIwLCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDZjLCAweDc5LCAweDIwLFxuICAweDc3LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDc5LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDZkLCAweDYxLFxuICAweDZjLCAweDQxLCAweDY2LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LFxuICAweDc0LCAweDY1LCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDIyLCAweDNlLCAweDczLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDYxLCAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDQyLCAweDcyLCAweDYxLFxuICAweDczLCAweDY5LCAweDZjLCAweDI5LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDcyLCAweDY1LFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDQ3LCAweDcyLCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDc5LCAweDY2LFxuICAweDZmLCAweDZlLCAweDc0LCAweDIwLCAweDYzLCAweDZmLCAweDcwLCAweDc1LCAweDcyLCAweDczLCAweDc1LCAweDY1LCAweDY0LFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDc1LFxuICAweDcwLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDczLCAweDYxLCAweDc3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZjLFxuICAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY5LCAweDY2LCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDc3LCAweDY4LFxuICAweDY1LCAweDZlLCAweDIwLCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDcwLFxuICAweDc1LCAweDczLCAweDY4LCAweDI4LCAweDY2LCAweDc1LCAweDQxLCAweDc1LCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDIwLFxuICAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDQ2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDczLFxuICAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDZhLCAweDc1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDU1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY2LCAweDYxLCAweDcyLCAweDZkLFxuICAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDZmLCAweDYyLCAweDZhLFxuICAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDc1LCAweDczLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDRkLCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDNjLFxuICAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDYyLCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZiLCAweDY1LCAweDc5LCAweDQzLCAweDZmLCAweDY0LFxuICAweDY1LCAweDczLCAweDY5LCAweDc4LCAweDc0LCAweDY1LCAweDY1LCAweDZlLCAweDQ5LCAweDczLCAweDZjLCAweDYxLCAweDZkLFxuICAweDY5LCAweDYzLCAweDIzLCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDI4LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDZmLCAweDY2LCAweDZmLCAweDZlLFxuICAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDIwLCAweDNkLCAweDczLFxuICAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY1LCAweDcyLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDczLFxuICAweDUwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDYxLCAweDY5LFxuICAweDZlLCAweDNjLCAweDc0LCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDY2LCAweDc1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDY0LCAweDY0LFxuICAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDcyLCAweDY5LCAweDYzLCAweDZiLCAweDY1LCAweDc0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDcwLCAweDY4LCAweDY1LCAweDc0LCAweDczLCAweDY4LCAweDY5LCAweDY2LCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDZmLFxuICAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDUyLCAweDc1LCAweDczLCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDIwLFxuICAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDc0LFxuICAweDYxLCAweDZjLCAweDY3LCAweDY1LCAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDJkLCAweDYyLCAweDc1LCAweDZjLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDBhLCAweDIwLCAweDY4LCAweDY1LCAweDIwLCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDI5LCAweDJlLCAweDc2LCAweDYxLCAweDZjLCAweDI4LCAweDI5LCAweDY2LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDI5LCAweDNiLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYyLCAweDYxLFxuICAweDZlLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDQxLCAweDcyLCAweDY5LCAweDdhLCAweDZmLCAweDZlLCAweDYxLFxuICAweDYzLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDczLCAweDI5LCAweDNiLCAweDBhLCAweDdkLCAweDI5LCAweDNiLFxuICAweDBhLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDc1LFxuICAweDcyLCAweDZlLCAweDQzLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDczLCAweDYyLCAweDY1LCAweDY2LCAweDZmLFxuICAweDcyLCAweDY1LCAweDIwLCAweDQyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDY3LCAweDY1LCAweDY0LCAweDU0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLCAweDQzLCAweDYxLFxuICAweDcwLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY3LFxuICAweDZmLCAweDY0LCAweDY0LCAweDY1LCAweDczLCAweDczLCAweDU0LCAweDYxLCAweDY3LCAweDIwLCAweDJkLCAweDJkLCAweDNlLFxuICAweDQxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDUyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDY5LCAweDZlLCAweDNkLCAweDY2LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDI2LCAweDRjLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZjLCAweDZlLCAweDc3LCAweDY1LCAweDIwLFxuICAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDRhLCAweDc1LFxuICAweDY0LCAweDYxLCAweDY5LCAweDczLCAweDZkLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDYxLFxuICAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBhLCAweDIwLCAweDIwLFxuICAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc1LCAweDZlLCAweDYzLCAweDZjLCAweDY1LCAweDYxLFxuICAweDcyLCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDI3LCAweDJjLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLFxuICAweDY5LCAweDZlLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDBhLCAweDBhLCAweDNjLCAweDIxLFxuICAweDJkLCAweDJkLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDYxLCAweDcyLFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDZmLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZjLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDczLFxuICAweDc0LCAweDcyLCAweDY1LCAweDY1LCAweDc0LCAweDczLCAweDQyLCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDcyLCAweDY0LFxuICAweDYxLCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDc0LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDczLCAweDc5LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDIwLFxuICAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDcyLCAweDYyLCAweDZmLCAweDc1LCAweDcyLCAweDQ2LCAweDcyLCAweDY1LCAweDY1LFxuICAweDY0LCAweDZmLCAweDZkLCAweDZhLCAweDY1LCAweDc3LCAweDY1LCAweDZjLCAweDcyLCAweDc5LCAweDJmLCAweDYxLCAweDYyLFxuICAweDZmLCAweDc1LCAweDc0LCAweDJlLCAweDJlLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDZjLCAweDY1LFxuICAweDY3LCAweDY1LCAweDZlLCAweDY0LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDZkLFxuICAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDZmLCAweDZlLFxuICAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDIyLFxuICAweDIwLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDY1LFxuICAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDcyLCAweDZmLCAweDZlLCAweDc5LCAweDZkLCAweDY0LCAweDY1LCAweDZjLFxuICAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDMwLCAweDMwLFxuICAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDYxLCAweDczLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDJmLCAweDJhLCAweDIwLCAweDNjLCAweDIxLCAweDViLCAweDQzLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIwLCAweDNkLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDcwLCAweDY5LCAweDYzLCAweDZiLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDIwLCAweDUwLCAweDc1LFxuICAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDRkLCAweDYxLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDc0LCAweDYxLFxuICAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDY0LCAweDYxLCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDc3LFxuICAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZjLCAweDYxLCAweDc3LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY1LCAweDYxLCAweDczLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLFxuICAweDc3LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDdkLCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDI4LCAweDczLCAweDY1LCAweDc2LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDYyLCAweDZmLCAweDc4LCAweDc3LCAweDY1LCAweDZlLFxuICAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDY5LFxuICAweDc0LCAweDY5LCAweDdhLCAweDY1LCAweDZlLCAweDQ5LCAweDIwLCAweDY0LCAweDZmLCAweDZlLCAweDI3LCAweDc0LCAweDcyLFxuICAweDY1LCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDJlLCAweDIwLCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDc3LCAweDc3LCAweDJlLCAweDIyLCAweDI5LCAweDNiLCAweDBhLCAweDYyLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDc0LCAweDZmLCAweDNhLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDJlLCAweDIwLCAweDRkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDcyLFxuICAweDY5LCAweDY1LCAweDczLCAweDdjLCAweDdjLCAweDdiLCAweDdkLCAweDNiLCAweDc3LCAweDY5LCAweDc3LCAweDZmLCAweDcyLFxuICAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc5LCAweDZlLCAweDZmLCAweDZlLCAweDc5LCAweDZkLCAweDY0LCAweDY1LFxuICAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDZmLFxuICAweDcwLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDU0LCAweDcyLCAweDYxLFxuICAweDc1LCAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDczLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDIyLCAweDNlLCAweDNjLCAweDYzLCAweDZmLCAweDZkLCAweDUzLCAweDYzLFxuICAweDZmLCAweDcyLCAweDQxLCAweDZjLCAweDZjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZhLCAweDUxLCAweDc1LCAweDY1LFxuICAweDcyLCAweDc5LCAweDJlLCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDQzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDY5LCAweDYzLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDIyLCAweDIwLCAweDU3LCAweDY5LFxuICAweDZjLCAweDY4LCAweDY1LCAweDZjLCAweDZkLCAweDczLCAweDc1LCAweDYyLCAweDc1LCAweDcyLCAweDYyLCAweDczLCAweDY3LFxuICAweDY1LCAweDZlLCAweDc1LCAweDY5LCAweDZlLCAweDY1LCAweDYyLCAweDY5LCAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDczLFxuICAweDJlLCAweDczLCAweDcwLCAweDZjLCAweDY5LCAweDc0LCAweDI4LCAweDY3LCAweDZjLCAweDZmLCAweDYyLCAweDYxLCAweDZjLFxuICAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDQzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDY1LCAweDY2LFxuICAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDY4LCAweDY5LCAweDY1LCAweDY2LCAweDZjLCAweDc5LCAweDJkLCAweDY4LFxuICAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDJkLCAweDYyLCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDNjLFxuICAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDBhLCAweDBhLCAweDJlLCAweDIwLCAweDU3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDY0LCAweDY5LCAweDczLCAweDZkLCAweDY5LCAweDczLFxuICAweDczLCAweDQ1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDc3LCAweDYxLCAweDc5LFxuICAweDczLCAweDIwLCAweDc2LCAweDY5LCAweDYxLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweGMzLFxuICAweGIxLCAweDZmLCAweDZjLCAweDc3LCAweDY1LCAweDZjLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDcyLCAweDc1LCAweDZjLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDYzLCAweDYxLFxuICAweDcwLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDczLCAweDZmLCAweDZlLCAweDcyLFxuICAweDc1LCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZmLCAweDZiLFxuICAweDY5LCAweDc0LCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDJjLCAweDNkLCAweDMwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLFxuICAweDNiLCAweDI4LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDYxLCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDIwLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDJmLFxuICAweDcwLCAweDYxLCAweDY3LCAweDRkLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDRiLCAweDY1LCAweDZlLFxuICAweDZlLCAweDY1LCAweDY0LCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDY2LCAweDc1LFxuICAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY1LCAweDY0LCAweDQyLFxuICAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDJmLCAweDJmLCAweDJkLCAweDJkLCAweDNlLCAweDNjLCAweDJmLFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDczLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY4LCAweDY5LCAweDZkLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLFxuICAweDZmLCAweDZlLCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDc3LCAweDYxLCAweDc5LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDJlLFxuICAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDZjLCAweDYxLCAweDY0LCAweDc2LCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDcwLFxuICAweDY1LCAweDZlLCAweDYxLCAweDZjLCAweDc0LCAweDc5LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDNhLFxuICAweDY5LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDRjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDYxLCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDQ4LCAweDY1LCAweDcyLCAweDYyLCAweDY1LFxuICAweDcyLCAweDc0LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDY3LCAweDcyLCAweDZmLFxuICAweDc1LCAweDcwLCAweDczLCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY2LCAweDZjLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDcwLCAweDczLCAweDZjLFxuICAweDZmLCAweDc3LCAweDZjLCAweDc5LCAweDIwLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDIwLCAweDczLFxuICAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDBhLCAweDA5LCAweDA5LFxuICAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDY1LCAweDY0LFxuICAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc1LCAweDZjLCAweDNlLCAweDBkLCAweDBhLFxuICAweDIwLCAweDIwLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDcwLCAweDYxLCAweDY5LCAweDcyLFxuICAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDRiLCAweDZmLCAweDZlLFxuICAweDc0LCAweDYxLCAweDZiLCAweDc0LCAweDQxLCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDZmLCAweDY4LCAweDYxLFxuICAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDIwLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDZkLCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDIyLCAweDI5LCAweDJlLCAweDYzLCAweDczLCAweDczLFxuICAweDI4LCAweDY4LCAweDZmLCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDIwLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDcwLCAweDczLCAweDJjLCAweDUwLCAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDJkLCAweDJkLCAweDNlLFxuICAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDIwLCAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDNkLCAweDIyLCAweDIwLCAweDZmLFxuICAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDNjLFxuICAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDQzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDU2LFxuICAweDNlLCAweDNjLCAweDVjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDczLCAweDZmLCAweDZjLCAweDc2LCAweDY5LCAweDZlLFxuICAweDY3LCAweDQzLCAweDY4LCAweDYxLCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDZjLCAweDYxLCAweDc2LCAweDY1LFxuICAweDcyLCAweDc5LCAweDc3LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDc3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDIxLCAweDNkLCAweDIwLCAweDI3LCAweDc1LCAweDZlLCAweDY0LCAweDY2LCAweDZmLCAweDcyLFxuICAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDJkLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDQxLCAweDcyLCAweDYxLCAweDYyLCAweDY5LCAweDYxLCAweDZlLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LFxuICAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDY1LFxuICAweDJkLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDJjLCAweDY5LCAweDczLCAweDIwLCAweDY4LCAweDZmLFxuICAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDczLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDczLCAweDY5LFxuICAweDcyLCAweDY1LCAweDY0LCAweDQzLCAweDZjLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDcwLFxuICAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDRkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDY1LCAweDYxLCAweDY0LCAweDI3LCAweDI5LCAweDViLCAweDMwLCAweDQzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDczLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDNlLCAweDI2LCAweDYzLCAweDZmLCAweDcwLFxuICAweDc5LCAweDNiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDIyLCAweDNlLCAweDYxLCAweDczLCAweDczLCAweDY1LFxuICAweDZkLCAweDYyLCAweDZjLCAweDZkLCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDY1LCAweDY0LCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDJlLCAweDcwLCAweDczLFxuICAweDNhLCAweDIyLCAweDIwLCAweDNmLCAweDIwLCAweDcyLCAweDY1LCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDc0LCAweDYyLFxuICAweDc5LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDQ2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDIwLFxuICAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDY0LCAweDY1LCAweDZjLCAweDYxLCAweDc5LCAweDY1LFxuICAweDY0LCAweDQzLCAweDYxLCAweDZlLCAweDZmLCAweDZlLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcwLCAweDc1LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDQyLCAweDYxLCAweDYyLCAweDc5LCAweDZjLCAweDZmLCAweDZlLCAweDYyLCAweDZmLFxuICAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDcyLCAweDQzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDY1LFxuICAweDQxLCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LFxuICAweDczLCAweDYxLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDcyLCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDZmLCAweDc0LFxuICAweDY1LCAweDczLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDQ4LCAweDZmLCAweDc1LCAweDczLFxuICAweDc0LCAweDZmLCAweDZlLCAweDMyLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLCAweDYxLCAweDYzLCAweDYzLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDc1LCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY3LCAweDZmLFxuICAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDI5LFxuICAweDJlLCAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDI4LCAweDcwLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDIwLCAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDY5LCAweDZlLCAweDIwLCAweDRhLCAweDc1LCAweDZjLFxuICAweDc5LCAweDczLCAweDc0LCAweDIwLCAweDJiLCAweDIwLCAweDIyLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDY4LCAweDY1LCAweDZjLCAweDcwLFxuICAweDY2LCAweDc1LCAweDZjLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDIwLFxuICAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDcyLCAweDI3LCAweDJiLCAweDI3LCAweDY5LCAweDcwLCAweDc0LCAweDZjLCAweDZmLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY5LFxuICAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDc2LCAweDYxLFxuICAweDZjLCAweDY2LCAweDc1LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDNjLCAweDZmLCAweDYyLCAweDZhLCAweDY1LFxuICAweDYzLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDUzLCAweDc0LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDI4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDY0LCAweDJlLCAweDIwLFxuICAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDZmLCAweDZlLCAweDY0LFxuICAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDJmLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLFxuICAweDYyLCAweDY3LCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDZjLCAweDYxLCAweDc3LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDQ5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDYxLCAweDYxLCAweDc2LCAweDZmLCAweDY5LCAweDY0LFxuICAweDY1LCAweDY0LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMyLCAweDcwLCAweDc4LCAweDIwLFxuICAweDMzLCAweDcwLCAweDc4LCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDYxLCAweDY2LCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDJlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDJkLCAweDNkLFxuICAweDIwLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDNiLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc1LCAweDczLCAweDY1LFxuICAweDczLCAweDYzLCAweDcyLCAweDY1LCAweDY1LCAweDZlLCAweDJlLCAweDQ5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLFxuICAweDIwLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDNkLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLFxuICAweDc5LCAweDJjLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIwLCAweDI2LCAweDZlLCAweDYyLFxuICAweDczLCAweDcwLCAweDNiLCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDY1LFxuICAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDYxLCAweDczLCAweDZlLCAweDZmLFxuICAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDY0LCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY1LCAweDcyLCAweDczLCAweDdkLFxuICAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LFxuICAweDczLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDY1LCAweDc3LCAweDY5LCAweDczLCAweDIwLCAweDZhLCAweDc1LFxuICAweDczLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDUzLCAweDY1LCAweDYxLFxuICAweDcyLCAweDYzLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDY4LCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDYyLCAweDcyLFxuICAweDNlLCAweDNjLCAweDYyLCAweDcyLCAweDNlLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDc1LCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDYxLCAweDIwLCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDQxLCAweDY0LCAweDZkLCAweDY5LCAweDcyLFxuICAweDYxLCAweDZjLCAweDIwLCAweDY2LCAweDY5LCAweDc4LCAweDY1LCAweDY0LCAweDNiLCAweDZlLCAweDZmLCAweDcyLCAweDZkLFxuICAweDYxLCAweDZjLCAweDIwLCAweDRkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDUwLCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDJjLCAweDIwLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDYzLCAweDY4LFxuICAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LFxuICAweDZlLCAweDc2LCAweDYxLCAweDY0LCAweDY1LCAweDY0LCAweDNkLCAweDIyLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDIyLFxuICAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDYxLCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDdkLCAweDI5LCAweDNiLCAweDBkLFxuICAweDBhLCAweDIwLCAweDIwLCAweDY5LCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDc0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDc0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDYxLFxuICAweDc0LCAweDY5LCAweDczLCAweDY2LCAweDc5LCAweDc0LCAweDZmLCAweDIwLCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDY0LFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDZjLCAweDZmLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDUwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDRhLCAweDc1LCAweDZlLFxuICAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDc1LCAweDZkLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY5LCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDQ2LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDczLCAweDY4LCAweDczLCAweDcyLCAweDYzLFxuICAweDIwLCAweDNkLCAweDIwLCAweDI4LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDIwLCAweDY4LCAweDY1LFxuICAweDZjLCAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDZjLFxuICAweDYxLCAweDc3LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDY1LCAweDY0LFxuICAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY1LCAweDIyLCAweDNlLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LFxuICAweDcyLCAweDJkLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDIwLCAweDYxLCAweDczLCAweDUzLCAweDc0LCAweDYxLCAweDZlLFxuICAweDZjLCAweDY1LCAweDc5LCAweDYyLCAweDcyLCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDY3LCAweDZjLFxuICAweDZmLCAweDYyLCAweDYxLCAweDZjLCAweDQzLCAweDcyLCAweDZmLCAweDYxLCAweDc0LCAweDY5LCAweDYxLCAweDIwLCAweDQxLFxuICAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDViLCAweDMwLCAweDVkLCAweDNiLCAweDBhLCAweDIwLCAweDIwLCAweDY5LFxuICAweDc0LCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDY1LCAweDY0LFxuICAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDI5LCAweDdiLCAweDc0LCAweDY4LCAweDcyLCAweDZmLFxuICAweDc3LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDQ2LCAweDQ2LCAweDQ2LCAweDQ2LFxuICAweDQ2LCAweDQ2LCAweDIyLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDIyLCAweDZjLCAweDY5LCAweDZiLFxuICAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDczLCAweDZjLCAweDY5LFxuICAweDc2LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDcwLFxuICAweDcyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDc1LCAweDYyLCAweDJkLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDcyLCAweDY1LCAweDZhLCAweDY1LCAweDYzLCAweDc0LFxuICAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LFxuICAweDIyLCAweDNlLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDY1LCAweDY0LCAweDY2LCAweDY1LCAweDY1LCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDRlLCAweDc1LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDU3LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZlLCAweDI3LCAweDczLCAweDRlLCAweDY1LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDRkLFxuICAweDY1LCAweDc4LCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDY5LCAweDZlLFxuICAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDZkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDY4LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDc5LCAweDZjLCAweDYxLCAweDc3LCAweDczLCAweDc1LFxuICAweDY5LCAweDc0LCAweDY0LCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDJlLCAweDcwLCAweDc1LCAweDczLFxuICAweDY4LCAweDI4LCAweDdiLCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDczLCAweDczLCAweDY5LCAweDZkLFxuICAweDcwLCAweDZjLCAweDc5LCAweDIwLCAweDU0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDJlLCAweDYzLFxuICAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LCAweDIwLCAweDQ5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDI4LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDc1LCAweDczLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLFxuICAweDIwLCAweDUzLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDZjLCAweDY5LCAweDY1LCAweDczLFxuICAweDIwLCAweDY5LCAweDZlLCAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDIwLCAweDIwLCAweDZkLCAweDYxLFxuICAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDI4LCAweDIyLFxuICAweDQ0LCAweDRmLCAweDRkLCAweDQzLCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDZmLFxuICAweDZlLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDZmLCAweDY2LCAweDIwLFxuICAweDRiLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY5LCAweDc0LFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDczLCAweDY4LFxuICAweDZmLCAweDc3LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNiLCAweDZkLCAweDYxLCAweDY0LCAweDY1LFxuICAweDIwLCAweDY5LCAweDc0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDZkLCAweDY5LCAweDc4LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcwLCAweDcyLFxuICAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDcyLCAweDYzLCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDYxLCAweDIwLFxuICAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDQyLCAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDczLFxuICAweDc0LCAweDc2LCAweDZmLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDBhLCAweDA5LCAweDA5LCAweDc2LCAweDYxLFxuICAweDcyLCAweDIwLCAweDRkLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDMyLCAweDY3LCAweDcyLCAweDY1LCAweDc3LFxuICAweDIwLCAweDc1LCAweDcwLCAweDQzLCAweDZjLCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDJlLCAweDcyLCAweDY1LFxuICAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDczLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDc3LCAweDYxLFxuICAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDY2LFxuICAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDZmLCAweDcyLFxuICAweDZiLCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDczLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDY4LFxuICAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDY4LCAweDZmLCAweDc3LFxuICAweDI4LCAweDI5LCAweDNiLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDYyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDNkLCAweDNkLFxuICAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDBhLFxuICAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDY2LCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LFxuICAweDJlLCAweDcyLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDZmLCAweDZlLCAweDY4LCAweDZmLCAweDczLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDJlLCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY4LCAweDY1LCAweDIwLCAweDc3LFxuICAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDczLCAweDcwLCAweDcyLFxuICAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDQ2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDIwLFxuICAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LFxuICAweDZmLCAweDcyLCAweDc1LCAweDZkLCAweDczLCAweDJlLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDYxLCAweDY3LCAweDY1LFxuICAweDIyLCAweDNlLCAweDRkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDQzLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDIyLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDYxLCAweDczLCAweDIwLCAweDY4LCAweDY5LFxuICAweDY3LCAweDY4LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDJkLCAweDJkLCAweDNlLCAweDNjLFxuICAweDIxLCAweDJkLCAweDJkLCAweDY2LCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLFxuICAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDY0LCAweDczLCAweDY1LFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDIwLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDY2LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDczLCAweDc0LFxuICAweDYyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLFxuICAweDVmLCAweDYyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLFxuICAweDY3LCAweDIwLCAweDQ5LCAweDZlLCAweDY2LCAweDZmLCAweDYyLCAweDZmLCAweDc4LCAweDY1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDJjLCAweDYxLCAweDIwLCAweDc5LCAweDZmLCAweDc1LCAweDZlLCAweDY3LCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDRlLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDYzLCAweDY4LFxuICAweDY1LCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDczLFxuICAweDc3LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDI4LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLFxuICAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDIwLFxuICAweDYxLCAweDIwLCAweDJkLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDUwLCAweDcyLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDVmLCAweDZlLCAweDYxLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDJjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcwLFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDJjLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY0LCAweDc1LCAweDYzLCAweDY1LFxuICAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LFxuICAweDZjLCAweDY1LCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDQxLCAweDY3LCAweDYxLCAweDY5LFxuICAweDZlLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDc5LCAweDZiLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLCAweDBkLCAweDBhLCAweDcwLCAweDc1LFxuICAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDZlLFxuICAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDQzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDZmLCAweDcyLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDY5LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDZmLCAweDc3LFxuICAweDZlLCAweDY1LCAweDY0LCAweDQ5LCAweDUzLCAweDQyLCAweDRlLCAweDIwLCAweDMwLCAweDJkLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDRmLCAweDYzLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDcyLCAweDZkLCAweDYxLFxuICAweDc5LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDQ0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDY1LCAweDZlLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDc3LCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDc0LFxuICAweDZmLCAweDYyLCAweDcyLCAweDZmLCAweDYxLCAweDY0LCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZmLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDNkLCAweDY5LCAweDc0LCAweDJlLCAweDIwLFxuICAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDRkLCAweDY1LCAweDZkLFxuICAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDYxLCAweDczLFxuICAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDczLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDJlLCAweDY5LCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLFxuICAweDNkLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLFxuICAweDVmLCAweDYxLCAweDIwLCAweDY3LCAweDZmLCAweDZmLCAweDY0LCAweDIwLCAweDcyLCAweDY1LCAweDZiLCAweDZjLCAweDYxLFxuICAweDZkLCAweDYxLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDJjLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDVmLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LCAweDcwLCAweDYxLCAweDZlLFxuICAweDY1LCAweDZjLCAweDIyLCAweDNlLCAweDRjLCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDJjLCAweDY0LCAweDY1LFxuICAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDc1LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDYyLFxuICAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDczLCAweDZkLCAweDYzLCAweDZmLCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZjLFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDc1LCAweDczLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLFxuICAweDIwLCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZjLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDYyLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDcyLCAweDc5LCAweDczLCAweDY1LCAweDcyLFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDUzLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDUwLCAweDY1LFxuICAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDQ3LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDczLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcyLCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDczLCAweDY1LCAweDY1LCAweDZkLFxuICAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYyLCAweDYxLCAweDYzLFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDY3LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDY3LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYzLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDJlLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDRjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDYyLCAweDc1LFxuICAweDc0LCAweDQ4LCAweDY5LCAweDY3LCAweDY4LCAweDc3LCAweDYxLCAweDc5LCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLFxuICAweDYyLCAweDc5LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDIwLCAweDY0LFxuICAweDZmLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDYyLCAweDYxLCAweDc0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDc5LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZjLCAweDYxLCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDY3LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDZmLCAweDZlLFxuICAweDcyLCAweDY1LCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LFxuICAweDIwLCAweDNkLCAweDU1LCAweDUzLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDUzLCAweDY1LCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDYyLCAweDc5LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDJlLCAweDY4LCAweDY1LCAweDYxLFxuICAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDNhLCAweDY4LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDZjLCAweDY1LFxuICAweDczLCAweDYyLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDJmLFxuICAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDVmLCAweDVmLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLFxuICAweDczLCAweDQ4LCAweDYxLCAweDcyLCAweDc2LCAweDYxLCAweDcyLCAweDY0LCAweDJmLCAweDcwLCAweDY5LCAweDc4LCAweDY1LFxuICAweDZjLCAweDJlLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZhLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDczLCAweDZiLCAweDc5LCAweDczLCAweDYzLCAweDcyLCAweDYxLCAweDU1LCAweDZlLFxuICAweDY5LCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDBkLCAweDBhLCAweDQxLFxuICAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDZlLCAweDc1LCAweDYzLCAweDZjLCAweDY1LCAweDc1LCAweDczLFxuICAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDc5LCAweDJjLCAweDcwLCAweDc1LCAweDcyLCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDY1LCAweDYxLCAweDczLCAweDY5LCAweDZjLFxuICAweDc5LCAweDIwLCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDIwLCAweDYxLCAweDZmLCAweDZlLCAweDYzLCAweDZjLFxuICAweDY5LCAweDYzLCAweDZiLCAweDYxLCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDcwLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY4LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDIwLCAweDdiLCAweDBhLCAweDY0LFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZlLCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDJjLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDc3LCAweDY4LFxuICAweDZmLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDU3LCAweDY1LCAweDYyLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDYzLCAweDYxLCAweDc2LCAweDYxLCAweDZjLCAweDcyLCAweDc5LCAweDQ4LCAweDY1LCAweDIwLCAweDY0LFxuICAweDY5LCAweDY1LCAweDY0LCAweDczLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDMwLCAweDMwLCAweDJjLFxuICAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDdiLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDY4LCAweDYxLFxuICAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDY2LCAweDI4LCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDczLCAweDZmLCAweDZjLCAweDY1LCAweDZjLCAweDc5LCAweDIwLFxuICAweDZkLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDcyLCAweDY1LCAweDZlLCAweDY1LCAweDc3LCAweDY1LFxuICAweDY0LCAweDQ0LCAweDY1LCAweDc0LCAweDcyLCAweDZmLCAweDY5LCAweDc0LCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LFxuICAweDczLCAweDc0LCAweDY1LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLFxuICAweDIwLCAweDY5LCAweDZlLCAweDUzLCAweDY1LCAweDZlLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDU1LCAweDczLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDRiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDcyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDczLCAweDJkLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY4LFxuICAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDY4LCAweDY5LCAweDZkLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDZmLFxuICAweDZkLCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDYxLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQyLCAweDc1LCAweDY2LCAweDY2LCAweDYxLCAweDZjLCAweDZmLCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNjLCAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDY2LFxuICAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDQzLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLFxuICAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDY0LFxuICAweDYxLCAweDc5LCAweDZlLCAweDY1LCAweDcyLCAweDc2LCAweDZmLCAweDc1LCAweDczLCAweDczLCAweDcxLCAweDc1LCAweDYxLFxuICAweDcyLCAweDY1LCAweDIwLCAweDdkLCAweDNiLCAweDY5LCAweDY2LCAweDI4LCAweDY3LCAweDZmLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZkLCAweDY3LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDczLFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJmLCAweDc0LFxuICAweDc1LCAweDY1LCAweDczLCAweDY0LCAweDYxLCAweDc5LCAweDZjLCAweDZmLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LFxuICAweDUzLCAweDZmLCAweDZjLCAweDZmLCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDc1LCAweDYxLCAweDZjLFxuICAweDIwLCAweDJkLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDc1LFxuICAweDZkLCAweDIyLCAweDQ0LCAweDRmLCAweDIwLCAweDRlLCAweDRmLCAweDU0LCAweDIwLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDJjLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDYxLCAweDIwLCAweDc3LCAweDYxLCAweDcyLFxuICAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDYxLFxuICAweDZiLCAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDNlLCAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDJlLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDc3LCAweDYxLCAweDc5LFxuICAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY5LCAweDc0LFxuICAweDc5LCAweDIyLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDIyLCAweDNlLCAweDZmLCAweDYyLCAweDZjLCAweDY5LCAweDY3LFxuICAweDY1LCAweDY0LCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIyLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY2LCAweDY5LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDQ1LCAweDYxLFxuICAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDcwLCAweDcyLCAweDYxLCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZlLFxuICAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDYxLFxuICAweDc0LCAweDY4LCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDRhLCAweDc1LCAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDcyLFxuICAweDU5LCAweDYxLCAweDY4LCAweDZmLCAweDZmLCAweDIxLCAweDIwLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDY0LFxuICAweDIwLCAweDczLCAweDZmLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDczLCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDc3LCAweDZmLFxuICAweDZkLCAweDYxLCAweDZlLCAweDNmLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDY0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDIwLCAweDYyLCAweDY5LFxuICAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDY0LFxuICAweDYxLCAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDUyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLFxuICAweDZmLCAweDc3LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDZlLFxuICAweDIwLCAweDYxLCAweDIwLCAweDcwLCAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDJkLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNiLCAweDYyLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDYxLFxuICAweDZlLCAweDZlLCAweDc1LCAweDYxLCAweDZjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRlLCAweDY1LCAweDc3LFxuICAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDIyLCAweDIwLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDYyLCAweDcyLCAweDY5LFxuICAweDY1LCAweDY2LCAweDI4LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDcwLCAweDczLCAweDJlLCAweDNiLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDdhLFxuICAweDc5LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLFxuICAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDdiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDcwLCAweDc5LCAweDYxLCAweDIwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LFxuICAweDYyLCAweDYxLCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDIyLCAweDNlLFxuICAweDBhLCAweDI4LCAweDI5LCAweDNiLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDYxLCAweDIwLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDVjLCAweDc1LCAweDMwLCAweDMwLCAweDMzLCAweDQzLCAweDYxLCAweDYxLCAweDYyLCAweDZmLCAweDc1LFxuICAweDc0LCAweDIwLCAweDYxLCAweDc0LCAweDcyLCAweDNlLCAweDBkLCAweDBhLCAweDA5LCAweDA5LCAweDYzLCAweDYzLCAweDZmLFxuICAweDc1LCAweDZlLCAweDc0LCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDNjLCAweDUzLFxuICAweDQzLCAweDUyLCAweDQ5LCAweDUwLCAweDU0LCAweDUyLCAweDYxLCAweDY5LCAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDc0LFxuICAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDJmLCAweDc0LCAweDZmLCAweDZmLCAweDZjLCAweDYyLCAweDZmLCAweDc4LFxuICAweDQyLCAweDc5LCAweDQ5LCAweDY0LCAweDI4LCAweDIyLCAweDc4LCAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDczLFxuICAweDJjLCAweDc3LCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDY5LCAweDY2LCAweDIwLCAweDI4LCAweDc3LCAweDY5LCAweDYzLCAweDZmLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDczLCAweDIwLCAweDU1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDY4LCAweDYxLFxuICAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY0LCAweDY1LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDJmLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLFxuICAweDY1LCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc0LCAweDYxLFxuICAweDY3LCAweDY1LCAweDY5LCAweDZlLCAweDIwLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDYxLCAweDI2LCAweDcxLCAweDc1LFxuICAweDZmLCAweDc0LCAweDNiLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDQ5LCAweDZlLCAweDIwLFxuICAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDZmLCAweDcyLCAweDY1LFxuICAweDY3LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDNjLFxuICAweDJmLCAweDcwLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDU2LCAweDYxLFxuICAweDNiLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDNjLCAweDJmLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDczLCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLFxuICAweDc5LCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDcyLCAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDdhLFxuICAweDY1LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY4LCAweDYxLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDQ4LCAweDZmLFxuICAweDczLCAweDc0LCAweDIwLCAweDNkLCAweDIwLCAweDU3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY2LFxuICAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDZjLCAweDY1LCAweDU2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLFxuICAweDNkLCAweDViLCAweDVkLCAweDNiLCAweDI4LCAweDY2LCAweDc1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDcyLCAweDYxLFxuICAweDczLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDIwLFxuICAweDYxLCAweDczLCAweDQ5LCAweDZlLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDNlLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDNjLCAweDIxLCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDNjLCAweDYyLFxuICAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDQyLCAweDY1LCAweDY5LCAweDZhLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLFxuICAweDc0LCAweDYxLCAweDZjLCAweGMzLCAweGEwLCAweDY0LCAweDY1LCAweDc1LCAweDc0LCAweDczLCAweDYzLCAweDY4LCAweDY1LFxuICAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDc1LCAweDY1LCAweDc1LCAweDczLCAweDZiLCAweDYxLCAweDcyLCAweDYxLFxuICAweDY3LCAweDYxLCAweDY1LCAweDY5LCAweDZjLCAweDY3LCAweDY1LCAweDczLCAweDc2LCAweDY1LCAweDZlLCAweDczLCAweDZiLFxuICAweDYxLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDczLCAweDYxLFxuICAweDZhLCAweDY1LCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDYyLFxuICAweDYxLCAweDZhLCAweDZmLCAweDZkLCAweGMzLCAweGE5LCAweDc4LCAweDY5LCAweDYzLCAweDZmLCAweDcwLCAweGMzLCAweGExLFxuICAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDY5LCAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDZmLCAweDYzLCAweDc0LCAweDc1LCAweDYyLCAweDcyLCAweDY1LCAweDY0LFxuICAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDY0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDYxLCAweDZkLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDc2LCAweGMzLCAweGE5LCAweDczLCAweDY3LCAweDcyLCAweDYxLCAweDYzLFxuICAweDY5LCAweDYxLCAweDczLCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDczLCAweDYzLCAweDYxLFxuICAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZlLFxuICAweGMzLCAweGJhLCAweDZkLCAweDY1LCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDc1LCAweDY1LCAweDcyLCAweDY0LCAweDZmLFxuICAweDZkLCAweGMzLCAweGJhLCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZkLCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLFxuICAweDZmLCAweDZmLCAweDY2LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDczLCAweDYxLCAweDZjLCAweDY3LCAweDc1LCAweDZlLFxuICAweDZmLCAweDczLCAweDcwLCAweDYxLCAweGMzLCAweGFkLCAweDczLCAweDY1LCAweDczLCAweDY1LCAweDZhLCAweDY1LCAweDZkLFxuICAweDcwLCAweDZjLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDYxLCAweDY0LCAweDY1LFxuICAweDZkLCAweGMzLCAweGExLCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDY0LCAweDZmLCAweDYxLCAweDY3LFxuICAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDcwLFxuICAweDZmLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDY4LCAweDZmLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDczLFxuICAweDczLCAweDY1LCAweDc2LCAweDY5LCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDcyLFxuICAweDZmLCAweGMzLCAweGJhLCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDZmLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDczLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDZmLCAweDYzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc1LCAweDcyLCAweDYxLCAweDZkLCAweDc1LCAweDZhLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY0LCAweDYxLCAweDYxLCAweDZlLCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZmLCAweDY1LCAweDZkLFxuICAweDYyLCAweDYxLCAweDcyLCAweDY3LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDY0LCAweDZmLCAweDY3LFxuICAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZhLCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDY2LCAweDY1LCAweDYyLCAweDcyLCAweDY1LCAweDcyLFxuICAweDZmLCAweDY0LCAweDY5LCAweDczLCAweDY1LCAweGMzLCAweGIxLCAweDZmLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDczLFxuICAweDZkLCAweDZmLCAweDYzLCAweGMzLCAweGIzLCAweDY0LCAweDY5LCAweDY3LCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDY0LCAweDYxLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDY2LCAweDYxLCAweDZkLFxuICAweDY5LCAweDZjLCAweDY5LCAweDYxLCAweDYxLCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDZmLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZkLCAweDY5LCAweDc0LCAweDY1LCAweDY3LCAweDc1LCAweDYxLCAweDcyLCAweDY0LCAweDYxLCAweDcyLCAweDYxLFxuICAweDZjLCAweDY3LCAweDc1LCAweDZlLCAweDYxLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDZmLCAweDczLFxuICAweDYxLCAweDZjLCAweDY3LCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY0LFxuICAweDZmLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDYxLCAweDczLCAweDc0LCAweGMzLCAweGFkLCAweDc0LCAweDc1LFxuICAweDZjLCAweDZmLCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDYzLCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDY3LCAweDc1LFxuICAweDZlLCAweDY0LCAweDZmLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZhLCAweDZmLCAweDY2LCAweDcyLCAweDYxLFxuICAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDZkLCAweDY5LCAweDZlLCAweDc1LCAweDc0LCAweDZmLCAweDczLCAweDczLCAweDY1LFxuICAweDY3LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDZkLCAweDZmLCAweDczLCAweDY1LFxuICAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDczLCAweDZkLCAweGMzLCAweGExLCAweDZjLCAweDYxLCAweDY3LCAweDYxLFxuICAweDczLCAweDY1LCAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDc0LFxuICAweDYxLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLFxuICAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDY3LCAweDYxLCAweDcyLCAweDYzLFxuICAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LCAweDYzLCAweDc1LFxuICAweDYxLCAweDY0LCAweDZmLCAweDcyLCAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDZlLFxuICAweDYzLCAweDZjLCAweDc1LCAweDczLCAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDZkLFxuICAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDYxLCAweDY4LCAweDZmLCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDczLFxuICAweDZkLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDcwLCAweDZmLCAweDY0LCAweDcyLCAweGMzLCAweGFkLFxuICAweDYxLCAweDZkLCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDZlLCAweDYxLCAweGMzLCAweGJhLCAweDZjLCAweDc0LCAweDY5LFxuICAweDZkLCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZkLCAweDZmLCAweDczLCAweDZmLCAweDY2LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDc0LCAweDYxLCAweDZkLCAweDYyLCAweDY5LCAweDY1LCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweGMzLCAweGJhLCAweDZlLCAweDczLCAweDYxLCAweDZjLCAweDc1LCAweDY0LCAweDZmLCAweDczLCAweDcwLCAweDZmLFxuICAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDczLCAweDZkLCAweDY1LCAweDZhLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDcwLFxuICAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY1LFxuICAweDczLCAweDczLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDY1LCAweDYzLFxuICAweDc1LCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDYxLFxuICAweDY5LCAweDY3LCAweDZlLCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDYzLCAweDYxLFxuICAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDc5LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDZjLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDY1LFxuICAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY1LFxuICAweDc4LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDY5LFxuICAweDc0LCAweDY1LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY5LCAweDZjLFxuICAweDY5LCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDc5LFxuICAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDcyLFxuICAweDY5LCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDczLCAweDdhLCAweDJkLFxuICAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNhLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLFxuICAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDZkLCAweDZmLCAweDc2LFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYzLCAweDczLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDcyLCAweDY1LFxuICAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDY2LCAweDY1LCAweDY1LCAweDY0LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDcyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDY0LFxuICAweDY5LCAweDczLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDZmLCAweDYzLFxuICAweDZmLCAweDZjLCAweDYxLCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY1LCAweDc0LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY5LCAweDc0LCAweDc5LFxuICAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDZlLCAweDc5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYyLFxuICAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDZkLCAweDYxLCAweDY3LCAweDYxLFxuICAweDdhLCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDc1LFxuICAweDcyLCAweDY1LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDNjLCAweDczLCAweDc0LFxuICAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LFxuICAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDYyLCAweDY1LFxuICAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZmLCAweDcyLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLFxuICAweDY0LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LFxuICAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDRjLFxuICAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc0LCAweDcyLCAweDYxLFxuICAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDY0LFxuICAweDZkLCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZjLCAweDc5LCAweDY2LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY2LCAweDY1LCAweDczLCAweDc0LFxuICAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLFxuICAweDY1LCAweDc0LCAweDY0LCAweDcyLCAweDZmLCAweDcwLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDcwLCAweDcyLCAweDYxLFxuICAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDYxLCAweDcyLCAweDcyLCAweDY5LFxuICAweDYxLCAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcwLCAweDcyLFxuICAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDczLCAweDZlLCAweDY1LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDYxLCAweDZlLCAweDYxLCAweDZjLFxuICAweDc5LCAweDczLCAweDY5LCAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDYyLFxuICAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDcwLCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLFxuICAweDczLCAweDY1LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDY3LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDcyLCAweDYzLCAweDY4LFxuICAweDY1LCAweDZkLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDczLCAweDY1LCAweDcwLCAweDYxLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDYzLFxuICAweDZmLCAweDZlLCAweDY2LCAweDZjLCAweDY5LCAweDYzLCAweDc0LCAweDY4LCAweDYxLCAweDcyLCAweDY0LCAweDc3LCAweDYxLFxuICAweDcyLCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY0LCAweDY1LCAweDZjLFxuICAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDZmLCAweDYyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDNkLCAweDIwLCAweDY2LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDNiLCAweDY2LCAweDZmLCAweDcyLCAweDI4LCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDYxLCAweDYzLFxuICAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDc0LFxuICAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDc0LCAweDc5LCAweDYxLCAweDY5LCAweDcyLCAweDYzLCAweDcyLCAweDYxLCAweDY2LCAweDc0LCAweDY1LFxuICAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LFxuICAweDY4LCAweDZmLCAweDczLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDczLCAweDY1LCAweDYxLCAweDcwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZlLCAweDY1LCAweDcyLFxuICAweDczLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDY0LCAweDYxLCAweDc1LCAweDY3LFxuICAweDY4LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDIyLCAweDIwLCAweDYzLFxuICAweDc1LCAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDY5LFxuICAweDY1LCAweDczLCAweDJmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDYxLCAweDczLCAweDczLFxuICAweDY1LCAweDZkLCAweDYyLCAweDZjLCAweDc5LCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDY2LCAweDc1LCAweDZjLFxuICAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDYzLCAweDcyLFxuICAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDY3LCAweDY5LCAweDJkLCAweDYyLCAweDY5LCAweDZlLFxuICAweDJmLCAweDcwLCAweDc1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDcxLCAweDc1LFxuICAweDY5LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLFxuICAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LFxuICAweDY1LCAweDczLCAweDYxLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDY5LCAweDYzLCAweDY1LCAweDc4LCAweDY1LFxuICAweDcyLCAweDYzLCAweDY5LCAweDczLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDY5LCAweDZlLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDRkLCAweDYxLFxuICAweDY3LCAweDYxLCAweDdhLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDZmLCAweDc0LCAweDc0LFxuICAweDZmLCAweDZkLCAweDIyLCAweDNlLCAweDZmLCAweDYyLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDNhLFxuICAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDUzLCAweDZmLCAweDY2LFxuICAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDY1LCAweDZlLFxuICAweDY3LCAweDc0LCAweDY4LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDZjLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDZjLCAweDc5LCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDZmLCAweDZlLCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LFxuICAweDY1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDcwLCAweDcyLCAweDZmLFxuICAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDc0LCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYyLCAweDczLCAweDZmLCAweDZjLFxuICAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDZjLCAweDY1LCAweDc2LCAweDYxLCAweDZlLCAweDc0LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIyLFxuICAweDIwLCAweDc2LCAweDY5LCAweDZmLCAweDZjLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDc5LCAweDc3LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDZlLCAweDY1LCAweDY2LCAweDY5LCAweDc0LCAweDczLCAweDZjLFxuICAweDYxLCAweDc1LCAweDZlLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDZjLCAweDc5LCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY2LCAweDZmLCAweDZjLFxuICAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDZkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLCAweDY1LFxuICAweDYyLCAweDc1LCAweDZjLCAweDZjLCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDI0LCAweDI4LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDI5LFxuICAweDJlLCAweDcyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDNlLCAweDNjLCAweDc0LCAweDcyLFxuICAweDNlLCAweDNjLCAweDc0LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDcyLFxuICAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDYxLFxuICAweDc0LCAweDY1LCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDc1LCAweDZjLFxuICAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDQ4LCAweDZmLCAweDZkLCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LFxuICAweDc0LCAweDY1LCAweDczLCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDczLCAweDYxLCAweDZjLFxuICAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDcyLCAweDY1LCAweDZjLFxuICAweDc5LCAweDZkLCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDZkLCAweDY1LCAweDczLCAweDczLFxuICAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDYxLFxuICAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIyLCAweDNlLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc3LCAweDY4LFxuICAweDYxLCAweDc0LCAweDc2LCAweDY5LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDU3LCAweDY1LCAweDczLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDRjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDQ0LCAweDZmLFxuICAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDc0LFxuICAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDZkLCAweDY1LCAweDYxLCAweDczLFxuICAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDIwLCAweDNkLCAweDIwLCAweDc2LFxuICAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LFxuICAweDY1LCAweDY0LCAweDc2LCAweDY5LCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY5LCAweDYxLCAweDZlLCAweDZmLCAweDcyLFxuICAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDZlLCAweDY1LCAweDY0LFxuICAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDUyLCAweDY1LFxuICAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDczLCAweDYxLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDYyLCAweDY5LCAweDcyLCAweDc0LCAweDY4LCAweDY0LCAweDYxLCAweDc5LCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDc5LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LFxuICAweDYxLCAweDZjLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDc5LFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDUwLCAweDY1LCAweDcyLCAweDczLCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDYxLFxuICAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDY1LCAweDc2LCAweDY1LFxuICAweDY0LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDZkLCAweDYxLCAweDYzLCAweDY4LFxuICAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDMyLCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDZiLFxuICAweDY1LCAweDc5LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDY2LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDY0LFxuICAweDZjLCAweDc5LCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDZkLFxuICAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDcwLCAweDYxLFxuICAweDZiLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDIyLFxuICAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLCAweDZjLCAweDYxLFxuICAweDYyLCAweDY1LCAweDZjLCAweDNlLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYyLFxuICAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDY1LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDcyLCAweDcwLCAweDZjLCAweDc1LFxuICAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDJmLCAweDRjLCAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDQ4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDIyLCAweDIwLCAweDI4LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY3LCAweDcyLFxuICAweDYxLCAweDY0LCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLFxuICAweDBhLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDYxLFxuICAweDc5LCAweDczLCAweDY5LCAweDYxLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDZkLFxuICAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDNiLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNhLCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDc1LCAweDZjLCAweDY1LCAweDYzLCAweDY4LCAweDYxLFxuICAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDYzLCAweDYxLCAweDc0LCAweDY4LCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDcwLCAweDYxLCAweDc0LCAweDc0LCAweDY1LFxuICAweDcyLCAweDZlLCAweDczLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIwLCAweDIzLCAweDY3LCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LFxuICAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLCAweDc1LCAweDZjLFxuICAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDYzLFxuICAweDY5LCAweDc0LCAweDY5LCAweDdhLCAweDY1LCAweDZlLCAweDczLCAweDYzLCAweDZjLCAweDZmLCAweDc0LCAweDY4LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc3LCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDZjLCAweDY5LFxuICAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNlLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDZiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDI4LCAweDY1LCAweDI5LCAweDczLCAweDZmLCAweDc1LCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDZlLCAweDRkLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDZjLCAweDIwLCAweDZkLFxuICAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDc0LCAweDYzLCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDczLFxuICAweDY1LCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDJlLCAweDczLCAweDcwLCAweDZjLCAweDY5LCAweDc0LCAweDI4LCAweDIyLFxuICAweDZjLCAweDY5LCAweDdhLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDRmLCAweDYzLCAweDc0LCAweDZmLCAweDYyLFxuICAweDY1LCAweDcyLCAweDIwLCAweDI5LCAweDdiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZkLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDJkLCAweDJkLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDBhLFxuICAweDBhLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDY5LFxuICAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDczLFxuICAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDUyLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDY0LCAweDIwLCAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc5LFxuICAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDZhLCAweDc1LCAweDY0LCAweDY3LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDJlLCAweDJlLCAweDYzLFxuICAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDIwLCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDY1LCAweDY2LCAweDYxLFxuICAweDc1LCAweDZjLCAweDc0LCAweDIyLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBkLCAweDBhLCAweDY1LFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDZmLCAweDc0LCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDc5LCAweDJlLCAweDIwLCAweDQ5LCAweDUzLCAweDQyLCAweDRlLCAweDIwLCAweDMwLFxuICAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDYzLCAweDY1LCAweDJkLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJkLCAweDIyLCAweDIwLFxuICAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY1LCAweDcyLFxuICAweDczLCAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDZkLFxuICAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDQ5LCAweDc0LCAweDYxLFxuICAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDZmLCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDYxLFxuICAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDZjLCAweDc5LCAweDNhLCAweDIwLCAweDI3LCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LCAweDYzLCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDQyLCAweDcyLCAweDY5LCAweDc0LFxuICAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDc5LCAweDQ2LFxuICAweDYxLCAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZlLCAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDZmLFxuICAweDc1LCAweDczLCAweDc2LCAweDY1LCAweDY4LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZlLFxuICAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDczLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLFxuICAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LFxuICAweDY0LCAweDNkLCAweDIyLCAweDU3LCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDIwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDVmLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDYxLCAweDYzLCAweDc5LCAweDczLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDY2LFxuICAweDZjLCAweDY1LCAweDc4LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDQzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLFxuICAweDcyLCAweDc5LCAweDZjLCAweDYxLCAweDc3LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDZjLCAweDYxLCAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDZkLCAweDYxLCAweDc4LCAweDY5LFxuICAweDZkLCAweDc1LCAweDZkLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLCAweDUzLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LFxuICAweDczLCAweDY4LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc0LCAweDZmLCAweDZlLCAweDYzLCAweDc1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDYxLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY4LCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDczLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LFxuICAweDczLCAweDJmLCAweDJmLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDZmLCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDYxLCAweDZjLFxuICAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDc2LCAweDYxLCAweDZjLCAweDc3LCAweDY5LCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDY1LFxuICAweDczLCAweDUzLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDYxLCAweDczLFxuICAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLFxuICAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDI2LCAweDY4LCAweDY1LCAweDZjLCAweDZjLCAweDY5LFxuICAweDcwLCAweDNiLCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDczLFxuICAweDY5LCAweDdhLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDRlLCAweDYxLCAweDZkLCAweDY1LFxuICAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIyLCAweDIwLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDNlLCAweDczLCAweDY1LFxuICAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDZmLCAweDcwLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDZmLCAweDY5LCAweDczLCAweDZjLFxuICAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDIyLCAweDNlLCAweDBhLCAweDA5LCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLFxuICAweDY1LCAweDNlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDYxLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY0LCAweDYxLCAweDc5LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDZjLFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLFxuICAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY0LCAweDY1LFxuICAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDYxLFxuICAweDZjLCAweDNkLCAweDIyLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDIyLCAweDQ1LCAweDczLCAweDcwLCAweDYxLFxuICAweGMzLCAweGIxLCAweDZmLCAweDZjLCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDczLFxuICAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDY1LCAweDcyLCAweDI2LCAweDcxLCAweDc1LCAweDZmLFxuICAweDc0LCAweDNiLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc5LCAweDZkLFxuICAweDcwLCAweDc0LCAweDZmLCAweDZkLCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LFxuICAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIyLCAweDNlLCAweDNjLCAweDcwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LFxuICAweDJlLCAweDZjLCAweDY1LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDIwLCAweDYyLCAweDZmLCAweDcyLFxuICAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDJlLCAweDBhLCAweDBhLCAweDUzLCAweDZmLCAweDZkLFxuICAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDY5LFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYyLCAweDc1LCAweDZjLCAweDY3LCAweDYxLCAweDcyLCAweDY5LCAweDYxLFxuICAweDJlLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDI4LCAweDI5LCAweDNiLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDY1LCAweDY0LCAweDQ3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDQ1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDczLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDczLCAweDRmLCAweDcyLCAweDY5LCAweDY3LFxuICAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDIyLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLCAweDNlLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LFxuICAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDYxLCAweDIwLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDQ0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDIwLCAweDBhLCAweDBhLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDc5LCAweDZmLFxuICAweDc1LCAweDcyLCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LFxuICAweDIwLCAweDZkLCAweDY5LCAweDYzLCAweDY4LCAweDY5LCAweDY3LCAweDYxLCAweDZlLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDcwLFxuICAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDY0LCAweDcyLCAweDY5LCAweDZlLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDYxLCAweDYzLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LFxuICAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDcyLCAweDczLCAweDUyLCAweDc1LCAweDczLCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDIwLCAweDY3LCAweDY1LFxuICAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDJkLCAweDM4LCAweDM4LCAweDM1LCAweDM5LCAweDJkLCAweDMxLFxuICAweDIyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDYxLCAweDZkLCAweDY5LFxuICAweDZjLCAweDY5LCAweDYxLCAweDcyLCAweDIwLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDZkLFxuICAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLCAweDMwLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDJkLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLFxuICAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LFxuICAweDc0LCAweDY4LCAweDIwLCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDZlLFxuICAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDczLCAweDYxLCAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDY5LFxuICAweDYzLCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDY2LCAweDYxLFxuICAweDc1LCAweDZjLCAweDc0LCAweDJlLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDY0LCAweDcwLFxuICAweDYxLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY3LCAweDZjLCAweDZmLCAweDczLCAweDczLCAweDYxLFxuICAweDcyLCAweDc5LCAweDBhLCAweDBhLCAweDQxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY3LCAweDc1LCAweDY5LFxuICAweDY0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDc0LCAweDY0LFxuICAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLFxuICAweDY1LCAweDIyLCAweDNlLCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY5LFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDczLCAweDczLCAweDYzLCAweDZmLCAweDc0LCAweDc0LCAweDY5LCAweDczLFxuICAweDY4LCAweDZhLCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZkLCAweDYxLCAweDZhLCAweDZmLFxuICAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDczLCAweDJlLCAweDYzLFxuICAweDZjLCAweDY5LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDNjLCAweDY4LCAweDY1LFxuICAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDA5LCAweDYxLCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LFxuICAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDNiLCAweDc0LCAweDZmLCAweDUzLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDJmLFxuICAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDNlLCAweDZmLCAweDZiLCAweDZjLCAweDYxLCAweDY4LCAweDZmLCAweDZkLFxuICAweDYxLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDc2LCAweDY1LFxuICAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDMwLCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDY4LFxuICAweDZmLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDUyLCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLFxuICAweDYzLCAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDI4LCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDJlLCAweDIwLCAweDQxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDcwLCAweDcyLFxuICAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLFxuICAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDY5LCAweDY0LCAweDIyLCAweDcxLCAweDc1LCAweDY5LCAweDYzLFxuICAweDZiLCAweDZjLCAweDc5LCAweDIwLCAweDZkLCAweDY1LCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LFxuICAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDNiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDNiLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDIwLCAweDY4LCAweDY1LFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDYxLCAweDZjLFxuICAweDJjLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDY1LCAweDYzLFxuICAweDZiLCAweDY1LCAweDY0LCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDZkLCAweDYxLFxuICAweDY3LCAweDZlLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLFxuICAweDY4LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDYzLCAweDYxLCAweDczLCAweDc0LCAweDJlLCAweDIwLCAweDU3LCAweDY4LFxuICAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDc1LCAweDcyLCAweDczLCAweDY0LCAweDYxLCAweDc5LCAweDY0LFxuICAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDY1LCAweDI2LCAweDY1LCAweDYxLCAweDYzLCAweDc1LCAweDc0LFxuICAweDY1LCAweDNiLCAweDY4LCAweDYxLCAweDczLCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDc2LCAweDYxLFxuICAweDZjLCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDYzLCAweDZmLFxuICAweDZjLCAweDZmLCAweDcyLCAweDYxLCAweDY0LCAweDZmLCAweDRmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDIyLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDYyLCAweDY1LCAweDZjLCAweDZjLCAweDNjLCAweDIxLCAweDJkLCAweDJkLFxuICAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDNjLFxuICAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDBkLCAweDBhLCAweDVmLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDcwLFxuICAweDczLCAweDdjLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDJjLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDIwLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLFxuICAweDU3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDIwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDNjLCAweDYyLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDZjLCAweDY1LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LFxuICAweDNiLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIwLCAweDQzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDNjLFxuICAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LFxuICAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZkLCAweDYxLCAweDcyLFxuICAweDczLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDZjLCAweDc5LCAweDI5LCAweDJlLCAweDBhLCAweDBhLCAweDU0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDYxLCAweDc4LCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDc5LCAweDZkLCAweDc1LFxuICAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDBhLCAweDIyLCAweDIwLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDJkLCAweDczLCAweDcyLCAweDc0LCAweDc1LCAweDY3LFxuICAweDc1LCAweGMzLCAweGFhLCAweDczLCAweDczLCAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDU0LCAweDZmLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLFxuICAweDBkLCAweDBhLCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDcyLCAweDZlLCAweDY1LCAweDc5LCAweDY1LCAweDZkLCAweDcwLFxuICAweDY4LCAweDYxLCAweDczLCAweDY5LCAweDczLCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDcyLCAweDczLFxuICAweDY2LCAweDYxLCAweDZlLCAweDYzLCAweDc5LCAweDYyLCAweDZmLCAweDc4LCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LFxuICAweDI3LCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDZjLCAweDY0LCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDYzLCAweDY4LFxuICAweDY1LCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDNkLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDcwLCAweDc4LCAweDNiLCAweDY2LFxuICAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDIwLCAweDUwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDZhLFxuICAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LFxuICAweDY1LCAweDY0LCAweDc2LCAweDYxLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDZmLFxuICAweDZkLCAweDcwLCAweDczLCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LFxuICAweDYxLCAweDZjLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDMwLCAweDYzLCAweDY4LFxuICAweDY1LCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDc0LCAweDYyLCAweDZmLCAweDY0LCAweDc5LFxuICAweDNlLCAweDNjLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIwLCAweDQzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LCAweDBhLFxuICAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLFxuICAweDY1LCAweDIwLCAweDNjLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDZlLFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDIwLCAweDRmLCAweDYzLCAweDc0LCAweDZmLFxuICAweDYyLCAweDY1LCAweDcyLCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDY1LCAweDc4LFxuICAweDcwLCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDZmLCAweDcwLCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLFxuICAweDY0LCAweDczLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDZlLCAweDc1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDIwLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDZlLCAweDUzLCAweDc1LCAweDYyLFxuICAweDZkLCAweDY5LCAweDc0LCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDYzLCAweDZmLFxuICAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDczLCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LFxuICAweDYzLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDYzLCAweDc0LCAweDJlLCAweDZjLCAweDZmLCAweDY3LCAweDY3LCAweDY1LCAweDY0LCAweDQ5LCAweDZlLCAweDYxLFxuICAweDY0LCAweDc2LCAweDY5LCAweDczLCAweDZmLCAweDcyLCAweDc5LCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDczLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDI5LCAweDczLCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLFxuICAweDcwLCAweDYxLCAweDYzLCAweDZiLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLFxuICAweDYyLCAweDZmLCAweDc4LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDcwLCAweDcyLFxuICAweDY1LCAweDY3LCAweDZlLCAweDYxLCAweDZlLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDZmLCAweDcyLCAweDcyLCAweDZmLFxuICAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLFxuICAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDZhLCAweDYxLCAweDcwLCAweDYxLCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDYzLFxuICAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLFxuICAweDIyLCAweDNlLCAweDY3LCAweDYxLCAweDZkLCAweDYyLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDc1LCAweDYzLFxuICAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDIwLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDZmLFxuICAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLFxuICAweDcwLCAweDNhLCAweDMxLCAweDcwLCAweDc4LCAweDIwLCAweDJlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDMyLCAweDZjLCAweDYxLCAweDdhLCAweDc5LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDZlLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLFxuICAweDNjLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDc0LCAweDY0LCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNhLCAweDMyLCAweDJmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDYzLCAweDZmLFxuICAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDNlLCAweDBhLCAweDI4LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweDI5LCAweDI4LCAweGU3LCAweGI5LFxuICAweDgxLCAweGU5LCAweGFiLCAweDk0LCAweDI5LCAweDY4LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDczLCAweDZiLCAweDY5LFxuICAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDZmLCAweDcyLCAweDZmLCAweDZkLCAweGMzLCAweGEyLFxuICAweDZlLCAweGM0LCAweDgzLCAweDc0LCAweGMzLCAweGJjLCAweDcyLCAweDZiLCAweGMzLCAweGE3LCAweDY1LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweDc0LCAweDYxLCAweDZkLCAweDYyLCAweDY5LCAweGMzLCAweGE5LFxuICAweDZlLCAweDZlLCAweDZmLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDczLCAweDZkLCAweDY1LCAweDZlLCAweDczLFxuICAweDYxLCAweDZhLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDczLCAweDY0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDczLCAweDZlLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDZmLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDczLFxuICAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDYxLCAweDY3LCAweDZmLCAweDYyLCAweDY5LCAweDY1LFxuICAweDcyLCAweDZlLCAweDZmLCAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDYxLCAweDczLCAweDYxLCAweDZlLFxuICAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDc2LCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDcwLFxuICAweDc1LCAweGMzLCAweGE5LCAweDczLCAweDY0LCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDczLCAweDcwLFxuICAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLFxuICAweDc0LCAweDZmLCAweDcwLCAweGMzLCAweGJhLCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDczLFxuICAweDZmLCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDZmLFxuICAweDZlLCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcwLCAweDcyLFxuICAweDY1LCAweDY3LCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZmLFxuICAweDcyLCAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDczLCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDYyLFxuICAweDZjLCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDY3LCAweDZmLCAweDZlLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY5LCAweDcyLCAweDZkLCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDYxLCAweDZkLCAweGMzLCAweGE5LCAweDcyLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc2LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDY1LFxuICAweDY0LCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY1LFxuICAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDYxLCAweDcyLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDcyLFxuICAweDZmLCAweDcwLCAweDYxLCAweDZjLCAweDYxLCAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweGMzLCAweGE5LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY1LFxuICAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZkLCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLFxuICAweDZmLCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDYzLCAweGMzLCAweGIzLFxuICAweDcyLCAweDY0LCAweDZmLCAweDYyLCAweDYxLCAweDdhLCAweDYxLCAweDcyLCAweDYxLCAweDY3LCAweDZmLCAweDdhLCAweDYxLFxuICAweDcwLCAweGMzLCAweGExLCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLFxuICAweDZjLCAweDY1LCAweDczLCAweDYyLCAweDZjLCAweDZmLCAweDcxLCAweDc1LCAweDY1LCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDczLCAweDc0LCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYxLCAweDZjLCAweDcxLCAweDc1LCAweDY5LCAweDZjLCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLFxuICAweDYzLCAweDY5LCAweDYxLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDc0LCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDcwLCAweGMzLCAweGJhLFxuICAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDc0LCAweDY5LCAweDc2LCAweDZmLFxuICAweDYxLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLFxuICAweDY0LCAweDZmLCAweDcyLCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDYxLCAweDczLCAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDZmLCAweDczLCAweDczLCAweDc1LCAweDcwLCAweDY1LFxuICAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc5LCAweDZmLCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDYxLFxuICAweDZjLCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDY5LCAweDYxLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweGMzLCAweGJhLCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDZmLCAweDczLCAweDY4LCAweDYxLCAweDYzLFxuICAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDZmLCAweDYxLCAweDcxLCAweDc1LCAweDY1LCAweDZjLCAweDZjLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY2LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDZlLCAweDY0LCAweDZmLCAweDYxLCAweDZkLCAweDYyLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY2LCAweDYxLFxuICAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDYxLFxuICAweDczLCAweDYzLCAweDZjLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDYzLFxuICAweDY1LCAweDczLCAweDZmLCAweDczLCAweDYyLCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcwLFxuICAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDcwLCAweDc1LCAweDYyLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDZmLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDZhLCAweGMzLCAweGIzLCAweDc2LCAweDY1LFxuICAweDZlLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDc0LCAweDZmLCAweDc0LCAweGMzLFxuICAweGE5LCAweDYzLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDZhLCAweDc1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY3LCAweGMzLCAweGFkLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDYyLFxuICAweDYxLCAweDZhLCAweDYxLCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDYxLCAweDczLCAweDcyLFxuICAweDY1LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LCAweDdhLFxuICAweDYxLCAweDcyLCAweDYyLCAweDZmLCAweDZjLCAweDY1LCAweDc0LCAweGMzLCAweGFkLCAweDZlLCAweDczLCAweDYxLCAweDZjLFxuICAweDc2LCAweDYxLCAweDY0LCAweDZmLCAweDcyLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDYxLFxuICAweDc0LCAweDcyLCAweDYxLCAweDYyLCAweDYxLCAweDZhLCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDZmLCAweDczLCAweDZlLCAweDY1LCAweDY3LCAweDZmLCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDZjLCAweDY5LFxuICAweDYyLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY0LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDcyLCAweGMzLCAweGIzLFxuICAweDc4LCAweDY5LCAweDZkLCAweDZmLCAweDYxLCAweDZjLCAweDZkLCAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDYxLFxuICAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDcxLCAweDc1LCAweDY5LCAweGMzLCAweGE5LCAweDZlLFxuICAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDdhLCAweGMzLCAweGIzLCAweDZlLCAweDczLCAweDY1LCAweDYzLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDZmLFxuICAweDZmLCAweDcwLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDcyLFxuICAweDY5LCAweDZmLCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDZmLCAweDc0LCAweDZmLFxuICAweDY0LCAweDYxLCAweDc2LCAweGMzLCAweGFkLCAweDYxLCAweDY3LCAweDYxLCAweDZjLCAweDY1LCAweDcyLCAweGMzLCAweGFkLFxuICAweDYxLCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY5LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDY5LFxuICAweDYzLCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDYxLCAweDYxLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LFxuICAweDZmLCAweDczLCAweDYzLCAweDcyLCAweGMzLCAweGFkLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDY0LCAweGMzLCAweGIzLFxuICAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLFxuICAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDZlLCAweDcwLCAweDY1LCAweDcyLCAweGMzLCAweGFkLFxuICAweDZmLCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDYxLCAweDZkLCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDcwLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweGMzLCAweGIxLFxuICAweDZmLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDYyLCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDcyLCAweDY5LCAweDYyLFxuICAweDc1LCAweDZlLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDY1LCAweDYzLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDYxLCAweDZlLCAweDYxLCAweDcyLCAweDY5LFxuICAweDYxLCAweDczLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDY0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDcyLCAweDYzLCAweDYxLFxuICAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweGMzLCAweGE5LCAweDYzLCAweDZlLFxuICAweDY5LCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDc2LCAweDY5LFxuICAweDc2LCAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDdhLCAweDYxLFxuICAweDczLCAweDYxLCAweDY0LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY2LCAweDc1LCAweDZlLCAweDYzLFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZhLCAweDZmLCAweDczLCAweDY0LFxuICAweDY5LCAweDY2LCAweGMzLCAweGFkLCAweDYzLCAweDY5LCAweDZjLCAweDYzLCAweDY5LCAweDc1LCAweDY0LCAweDYxLCAweDY0LFxuICAweDY1LCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDY3LCAweDc1LCAweDYxLCAweDczLCAweDYxLCAweDc2LCAweDYxLFxuICAweDZlLCAweDdhLCAweDYxLCAweDY0LCAweDYxLCAweDc0LCAweGMzLCAweGE5LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDczLCAweGMzLCAweGExLCAweDZlLCAweDYzLFxuICAweDY4LCAweDY1LCAweDdhLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDczLCAweDZmLFxuICAweDY2LCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDYzLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDc0LCAweDYxLFxuICAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDYzLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDZkLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDY2LFxuICAweDYxLCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDYxLCAweDY0LCAweDYzLCAweDcyLCAweGMzLCAweGE5LCAweDY0LCAweDY5LFxuICAweDc0LCAweDZmLCAweDY0LCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDcwLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDY1LCAweDY3LCAweDc1LCAweDZlLCAweDY0LCAweDZmLCAweDczLCAweDcwLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweGMzLCAweGIxLCAweDYxLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLFxuICAweDhjLCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDhiLFxuICAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLFxuICAweDk1LCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI1LCAweGQxLCAweDg1LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGI5LFxuICAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLFxuICAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQxLCAweDgzLCAweGQwLCAweGI0LFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGI1LFxuICAweGQwLCAweGIxLCAweGQxLCAweDhmLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGI0LFxuICAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQxLCAweDgyLCAweGQxLCAweDg0LCAweGQwLFxuICAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQxLCAweDgyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJjLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQxLCAweDhlLCAweGQwLCAweGJiLCAweGQwLCAweGI4LFxuICAweGQxLCAweDg4LCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLFxuICAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGI1LFxuICAweGQwLCAweGI5LCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLFxuICAweGI4LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGIxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQxLCAweDg1LCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQxLCAweDhmLCAweGQwLCAweGI0LCAweGQwLCAweGIyLCAweGQxLCAweDgzLCAweGQxLCAweDg1LCAweGQxLCAweDgxLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI4LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQxLCAweDhmLCAweGQxLFxuICAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGI0LFxuICAweGQwLCAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDhkLCAweGQxLFxuICAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQxLCAweDgxLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgyLFxuICAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDhiLCAweGQxLCAweDg2LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGIyLFxuICAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDhjLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGI1LCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQxLCAweDhiLCAweGQxLCAweDgyLCAweGQwLCAweGI1LFxuICAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJmLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg2LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI0LCAweGQxLCAweDhiLCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDhlLCAweGQwLCAweGJjLFxuICAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLFxuICAweGIzLCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweGI4LCAweGQwLCAweGI0LFxuICAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLFxuICAweGQwLCAweGIwLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDhlLCAweGQwLCAweGJkLCAweGQxLCAweDhmLFxuICAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhjLCAweGQwLCAweDk1LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQwLCAweGJkLFxuICAweGQwLCAweGIwLCAweGQxLCAweDg4LCAweGQwLCAweGI4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGFjLCAweGQ5LCAweDg1LFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LCAweGQ4LCAweGI1LCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGEyLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGI1LCAweGQ5LCAweDgxLCAweGQ4LFxuICAweGFkLCAweGQ4LCAweGE5LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDg2LCAweGQ4LCAweGI0LCAweGQ4LCAweGE4LCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGFkLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ4LCAweGEzLCAweGQ5LCAweDgzLCAweGQ4LCAweGFiLFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGFlLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFkLCAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ4LFxuICAweGJhLCAweGQ4LCAweGI3LCAweGQ4LCAweGFhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLCAweGQ4LFxuICAweGE5LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI3LCAweGQ4LCAweGE4LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ4LFxuICAweGI0LCAweGQ5LCAweDgzLCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLFxuICAweGQ5LCAweDg2LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGI0LCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGIzLFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGI0LCAweGQ5LCAweDhhLCAweGQ4LCAweGI3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIwLCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDg2LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGIxLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ4LCAweGE5LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDgxLCAweGQ4LCAweGE5LCAweGQ5LCAweDhhLCAweGQ5LCAweDgyLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGIyLCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGEzLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ4LCAweGFmLCAweGQ5LCAweDgyLCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGI3LCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDgyLCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGFjLFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LCAweGFlLCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDg5LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LFxuICAweGQ4LCAweGFkLCAweGQ4LCAweGFiLCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LCAweGQ4LCAweGI2LCAweGQ4LFxuICAweGE4LCAweGQ4LCAweGI0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ4LCAweGFjLFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFlLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDg4LCAweGQ5LCAweDg2LCAweGQ4LCAweGEzLCAweGQ5LCAweDhhLCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LCAweDgxLCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ5LFxuICAweDgyLCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ4LCAweGEzLCAweGQ5LCAweDgxLFxuICAweGQ4LCAweGI2LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI3LCAweGQ4LCAweGE4LCAweGQ4LCAweGFlLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDgzLCAweGQ4LCAweGFiLCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ4LCAweGI2LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFkLCAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ5LCAweDg2LCAweGQ5LCAweDgxLCAweGQ4LCAweGIzLCAweGQ5LCAweDg3LFxuICAweGQ4LCAweGEzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDg4LCAweGQ4LCAweGFmLCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGFmLFxuICAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg2LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGI2LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LCAweGFlLCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLFxuICAweDAwLCAweDAwLCAweDAxLCAweDAwLCAweDAxLCAweDAwLCAweDAxLCAweDAwLCAweDAxLCAweDAwLCAweDAyLCAweDAwLCAweDAyLFxuICAweDAwLCAweDAyLCAweDAwLCAweDAyLCAweDAwLCAweDA0LCAweDAwLCAweDA0LCAweDAwLCAweDA0LCAweDAwLCAweDA0LCAweDAwLFxuICAweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3LCAweDA3LCAweDA2LCAweDA1LCAweDA0LCAweDAzLFxuICAweDAyLCAweDAxLCAweDAwLCAweDA4LCAweDA5LCAweDBhLCAweDBiLCAweDBjLCAweDBkLCAweDBlLCAweDBmLCAweDBmLCAweDBlLFxuICAweDBkLCAweDBjLCAweDBiLCAweDBhLCAweDA5LCAweDA4LCAweDEwLCAweDExLCAweDEyLCAweDEzLCAweDE0LCAweDE1LCAweDE2LFxuICAweDE3LCAweDE3LCAweDE2LCAweDE1LCAweDE0LCAweDEzLCAweDEyLCAweDExLCAweDEwLCAweDE4LCAweDE5LCAweDFhLCAweDFiLFxuICAweDFjLCAweDFkLCAweDFlLCAweDFmLCAweDFmLCAweDFlLCAweDFkLCAweDFjLCAweDFiLCAweDFhLCAweDE5LCAweDE4LCAweGZmLFxuICAweGZmLCAweGZmLCAweGZmLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweGZmLCAweGZmLFxuICAweGZmLCAweGZmLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAyLCAweDAwLCAweDAwLCAweDAwLCAweDAyLCAweDAwLCAweDAwLFxuICAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAzLCAweDAwLCAweDAwLCAweDAwLFxuICAweGZmLCAweGZmLCAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweGZmLCAweGZmLCAweDAwLFxuICAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDA4LCAweDAwLCAweDA4LCAweDAwLCAweDA4LCAweDAwLCAweDA4LCAweDAwLCAweDAwLFxuICAweDAwLCAweDAxLCAweDAwLCAweDAyLCAweDAwLCAweDAzLCAweDAwLCAweDA0LCAweDAwLCAweDA1LCAweDAwLCAweDA2LCAweDAwLFxuICAweDA3LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDc1LFxuICAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDQ0LFxuICAweDU0LCAweDQ0LCAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LCAweDY3LCAweDY1LFxuICAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDYxLCAweDY0LCAweDc2LFxuICAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDNjLCAweDJmLFxuICAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDNlLCAweDQxLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLFxuICAweDZjLCAweDY5LCAweDYxLCAweDIyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLFxuICAweDY5LCAweDc0LCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLFxuICAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDY5LCAweDZjLCAweDc5LCAweDZmLCAweDcwLCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY3LFxuICAweDY1LCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDZmLFxuICAweDZlLCAweDc5LCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDY5LCAweDY1LCAweDczLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIyLFxuICAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDczLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDYzLFxuICAweDZjLCAweDc1LCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBkLCAweDBhLCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDQyLCAweDY5LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDdkLFxuICAweDIwLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDIwLCAweDdiLCAweDBhLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDQxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDY0LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDZmLCAweDc1LFxuICAweDczLCAweDczLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDYzLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDcwLCAweDcyLFxuICAweDZmLCAweDc0LCAweDZmLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDI2LCAweDcyLCAweDYxLCAweDcxLCAweDc1LCAweDZmLCAweDNiLCAweDNjLCAweDJmLCAweDY1LFxuICAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDYyLCAweDY1LCAweDYxLCAweDc1LCAweDc0LCAweDY5LCAweDY2LCAweDc1LCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDZlLFxuICAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLCAweDY1LFxuICAweDY0LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZjLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDZlLCAweDYxLCAweDY5LCAweDZjLCAweDRlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDJlLCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLFxuICAweDI4LCAweDI5LCAweDNiLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDY5LCAweDY3LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDBhLFxuICAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDcyLCAweDYxLFxuICAweDZkLCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDc0LCAweDZmLFxuICAweDcyLCAweDc5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDc1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDRlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDczLCAweDZkLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDc3LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDQxLCAweDZjLCAweDY1LCAweDc4LCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDcwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDYyLCAweDcyLCAweDZmLCAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDczLFxuICAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDYxLCAweDY2LCAweDY2LFxuICAweDY5LCAweDZjLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDNjLCAweDJmLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNlLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY5LFxuICAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDJmLCAweDY0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LFxuICAweDZjLCAweDc0LCAweDJlLCAweDUwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDZlLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDYyLCAweDY5LCAweDZmLCAweDY3LCAweDcyLFxuICAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc3LCAweDY5LCAweDczLCAweDY1LFxuICAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDQ2LCAweDcyLCAweDYxLCAweDZlLFxuICAweGMzLCAweGE3LCAweDYxLCAweDY5LCAweDczLCAweDQ4LCAweDZmLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDZmLCAweDZmLFxuICAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNlLCAweDBhLCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ0LCAweDY1LFxuICAweDYzLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLFxuICAweDcyLCAweDY1LCAweDY0LCAweDQzLCAweDYxLCAweDZkLCAweDYyLCAweDcyLCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDZmLFxuICAweDcwLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDc1LCAweDczLCAweDY5LCAweDZlLFxuICAweDY1LCAweDczLCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDcyLFxuICAweDZjLCAweDY0LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDYxLFxuICAweDYzLCAweDY1LCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZlLCAweDY1LFxuICAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDNlLCAweDBhLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDZjLFxuICAweDY5LCAweDZiLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDY1LFxuICAweDY0LCAweDQ1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDYxLCAweDcyLFxuICAweDczLCAweDY1LCAweDQ5LCAweDZlLCAweDc0LCAweDI4LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LFxuICAweDc0LCAweDc5LCAweDc1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDNjLCAweDJmLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDRlLCAweDZmLCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLFxuICAweDUzLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDcyLCAweDIyLFxuICAweDNlLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY5LCAweDZlLCAweDYzLFxuICAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDQyLCAweDYxLCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDc0LCAweDcyLFxuICAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLFxuICAweDYxLCAweDcyLCAweDc5LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDcyLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDY1LFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQ1LCAweDZjLCAweDY5LCAweDdhLCAweDYxLFxuICAweDYyLCAweDY1LCAweDc0LCAweDY4LCAweDNjLCAweDJmLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDNlLFxuICAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDczLCAweDc1LFxuICAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LFxuICAweDNiLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDc5LCAweDQ3LCAweDY1LCAweDZmLFxuICAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDY0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZmLFxuICAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDczLCAweDJlLCAweDY5LCAweDZlLCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDNjLFxuICAweDJmLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDc1LCAweDczLFxuICAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQzLCAweDZmLCAweDZkLCAweDZkLFxuICAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDY1LCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDZlLCAweDZmLCAweDIwLFxuICAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDYxLFxuICAweDZlLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDYzLCAweDc5LCAweDc0LCAweDc5LCAweDcwLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY5LFxuICAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDNiLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDcxLCAweDc1LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDc0LCAweDIwLFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLFxuICAweDYzLCAweDY1LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDc0LCAweDY4LFxuICAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDcwLCAweDY4LFxuICAweDZmLCAweDZlLCAweDY1LCAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDczLCAweDYzLCAweDZmLCAweDcwLCAweDY1LCAweDcwLFxuICAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLFxuICAweDc0LCAweDYxLCAweDY3LCAweDY1LCAweDI5LCAweDNiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLFxuICAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDc2LFxuICAweDY5LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDYzLCAweDcyLCAweDYxLCAweDYzLFxuICAweDc5LCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDc0LFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDczLFxuICAweDYxLCAweDY5LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDZkLCAweDYxLFxuICAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDNjLCAweDJmLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYzLCAweDY4LCAweDY1LFxuICAweDY0LCAweDc1LCAweDZjLCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LFxuICAweDczLCAweDNjLCAweDJmLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDNlLCAweDBhLCAweDczLCAweDc1LCAweDczLFxuICAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLFxuICAweDIwLCAweDMwLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDY5LCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDNjLCAweDJmLFxuICAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDBhLCAweDZkLCAweDY5LCAweDYzLCAweDcyLCAweDZmLCAweDczLFxuICAweDZmLCAweDY2LCAweDc0LCAweDY3LCAweDcyLCAweDYxLCAweDY0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LFxuICAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LFxuICAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDY1LCAweDc4LCAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDZhLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDczLFxuICAweDY1LCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDY1LFxuICAweDY0LCAweDcwLCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDZjLCAweDY5LCAweDc0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDc5LFxuICAweDY1LCAweDY0LCAweDc1LCAweDcwLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc2LCAweDYxLFxuICAweDcyLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDRhLCAweDYxLCAweDcwLCAweDYxLCAweDZlLFxuICAweDY1LCAweDczLCAweDY1LCAweDIwLCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDZjLCAweDY3LCAweDZmLFxuICAweDcyLCAweDY5LCAweDc0LCAweDY4LCAweDZkLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDczLCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDYxLFxuICAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDdhLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDZlLFxuICAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDZjLCAweDcwLFxuICAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDYxLCAweDZjLCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDI5LCAweDJjLCAweDIwLCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LFxuICAweDY0LCAweDJkLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDQ2LCAweDY1LCAweDYyLFxuICAweDcyLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDZmLCAweDc1LFxuICAweDczLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDNhLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDY2LCAweDcyLCAweDYxLCAweDY3LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDYzLFxuICAweDZmLCAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDQxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDczLCAweDZmLCAweDc1LCAweDcyLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDY0LCAweDQ4LCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDRiLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDQ2LCAweDYxLFxuICAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLFxuICAweDY1LCAweDIwLCAweDZkLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDZkLCAweDY1LCAweDZjLFxuICAweDY1LCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDZlLCAweDczLFxuICAweDY5LCAweDc2LCAweDY1LCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBhLCAweDA5LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDZmLCAweDcyLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDczLFxuICAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDZmLCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDc0LFxuICAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDY0LCAweDYzLCAweDZmLFxuICAweDZlLCAweDc2LCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDZmLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDJlLFxuICAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDI4LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDY5LFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDc2LCAweDZmLFxuICAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJkLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LFxuICAweDcyLCAweDIyLCAweDY1LCAweDZlLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDc2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDY0LCAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDQxLFxuICAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LFxuICAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDRlLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDNjLCAweDY2LCAweDc1LCAweDcyLCAweDZlLFxuICAweDY5LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDc0LFxuICAweDIwLCAweDIwLCAweDZmLCAweDZlLCAweDYyLCAweDZjLCAweDc1LCAweDcyLCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDczLFxuICAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDcwLCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDRkLCAweDZmLFxuICAweDcyLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDYxLCAweDYyLCAweDZmLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDc3LFxuICAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDY1LCAweDZkLCAweDZmLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDc5LFxuICAweDZlLCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDY0LCAweDc2LCAweDZmLFxuICAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDc4LCAweDNiLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LFxuICAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDY5LCAweDcyLFxuICAweDNkLCAweDIyLCAweDZjLCAweDc0LCAweDcyLCAweDIyLCAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDY1LFxuICAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJlLCAweDIwLCAweDczLFxuICAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDcyLCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDY0LFxuICAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDUzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDY0LCAweDY0LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LFxuICAweDQ2LCAweDYxLCAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDczLCAweDc1LCAweDY3LCAweDY3LFxuICAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LFxuICAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDczLCAweDQ5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY1LCAweDYzLCAweDY1LFxuICAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDczLCAweDRhLFxuICAweDY1LCAweDcyLCAweDc1LCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDZkLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLFxuICAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc2LFxuICAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY3LCAweDc1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LFxuICAweDY1LCAweDYxLCAweDcyLCAweDYyLCAweDY5LCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDY3LCAweDZlLCAweDY5LCAweDdhLCAweDY1LCAweDc3LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDcwLCAweDc4LCAweDNiLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDc0LCAweDY4LFxuICAweDY1LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYyLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY5LFxuICAweDZmLCAweDc1LCAweDcyLCAweDU3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LFxuICAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYyLCAweDY1LCAweDY3LCAweDYxLCAweDZlLFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LFxuICAweDZkLCAweDYxLCAweDY3LCAweDZlLCAweDY5LCAweDc0LCAweDc1LCAweDY0LCAweDY1LCAweDZkLCAweDc1LCAweDczLCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDZlLCAweDQ0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDY1LCAweDc4LCAweDc0LFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDcyLCAweDc5LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDZmLCAweDYzLFxuICAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDczLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDJlLCAweDNjLCAweDJmLCAweDZjLCAweDYxLCAweDYyLFxuICAweDY1LCAweDZjLCAweDNlLCAweDNjLCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDczLCAweDZiLCAweDY5LCAweDZlLCAweDY0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDY5LCAweDY1LFxuICAweDczLCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDJkLCAweDJkLFxuICAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDBhLCAweDBhLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDc3LCAweDY1LFxuICAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDcyLCAweDYxLFxuICAweDY0LCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDY4LCAweDYxLFxuICAweDc2LCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDI4LCAweDczLFxuICAweDcwLCAweDZmLCAweDZiLCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY1LFxuICAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDY1LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLFxuICAweDc5LCAweDYyLCAweDc1LCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDIwLCAweDczLFxuICAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDc3LCAweDY1LFxuICAweDcyLCAweDY1LCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDNlLCAweDNjLCAweDJmLCAweDRlLCAweDZmLFxuICAweDcyLCAweDc3LCAweDY1LCAweDY3LCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LFxuICAweDY5LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDcwLFxuICAweDYxLCAweDczLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDI4LCAweDZlLCAweDY1LCAweDc3LCAweDIwLFxuICAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDc5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDQxLCAweDY2LCAweDc0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDJlLCAweDcyLCAweDY1LCAweDY3LFxuICAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLFxuICAweDY1LCAweDcyLCAweDYxLCAweDYyLCAweDZmLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDY4LCAweDY1LCAweDZlLCAweDZmLCAweDZkLFxuICAweDY1LCAweDZlLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDZmLCAweDZmLCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDIyLCAweDNlLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDQxLCAweDZkLCAweDZmLCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDQxLCAweDY5LCAweDcyLFxuICAweDIwLCAweDQ2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDIwLFxuICAweDZmLCAweDY2LCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY5LCAweDZkLFxuICAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDY5LCAweDc0LCAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYzLFxuICAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDczLFxuICAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDY0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDY3LCAweDcyLCAweDZmLCAweDc3LCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLFxuICAweDIwLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZkLCAweDZmLCAweDZjLFxuICAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDY1LCAweDczLCAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDY5LFxuICAweDczLCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LFxuICAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDY4LFxuICAweDZmLCAweDZmLCAweDY0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY0LFxuICAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDYxLFxuICAweDcwLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDY2LCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDY2LFxuICAweDZjLCAweDY5LCAweDYzLCAweDc0LCAweDczLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDcwLCAweDNlLFxuICAweDBhLCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDQ1LCAweDc4LFxuICAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDYzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDUwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZkLCAweDc1LCAweDczLCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDczLFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDczLFxuICAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDY0LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDIxLCAweDViLFxuICAweDQzLCAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLCAweDIyLCAweDNlLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLFxuICAweDYzLCAweDc0LCAweDUzLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDYyLCAweDY3LFxuICAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDJlLCAweDIwLCAweDQ5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDJlLFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDY2LCAweDY2LCAweDY5LFxuICAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDZjLFxuICAweDc5LCAweDJkLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDY5LCAweDZlLCAweDY5LFxuICAweDc0LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDJkLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDY2LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDY3LCAweDY1LCAweDc0LCAweDQzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDNjLCAweDJmLCAweDYyLCAweDc1LCAweDc0LFxuICAweDc0LCAweDZmLCAweDZlLCAweDNlLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDU3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDcwLCAweDY5LCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDczLCAweDc1LCAweDczLCAweDc3LFxuICAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDc0LCAweDU2LCAweDY1LCAweDZlLCAweDY1LCAweDdhLFxuICAweDc1LCAweDY1LCAweDZjLCAweDYxLCAweDI4LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDZjLCAweDc5LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDY5LFxuICAweDYzLCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDU3LCAweDY5LCAweDZiLCAweDY5LCAweDcwLCAweDY1LCAweDY0LFxuICAweDY5LCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDc2LCAweDY5LFxuICAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLFxuICAweDc3LCAweDYxLCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDQzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDc3LCAweDYxLCAweDc5LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZjLCAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDYxLFxuICAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDY0LCAweDY5LCAweDczLFxuICAweDczLCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDU1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDNlLCAweDI2LFxuICAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLCAweDQ5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc3LFxuICAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLFxuICAweDY5LCAweDczLCAweDZkLCAweDczLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LFxuICAweDQ2LCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDcyLCAweDY5LCAweDYzLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LFxuICAweDIwLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDU0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDY4LFxuICAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDczLFxuICAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDczLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDNlLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLFxuICAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDcyLCAweDc2LFxuICAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDdkLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNlLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDczLCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY1LCAweDc4LFxuICAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDYxLFxuICAweDIwLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDZkLFxuICAweDY5LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDczLFxuICAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDYyLCAweDZjLCAweDY1LCAweDczLCAweDY0LCAweDc1LCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDczLCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY3LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDcyLFxuICAweDY5LCAweDY1LCAweDczLCAweDdiLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDczLFxuICAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDIwLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLFxuICAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDZkLCAweDY1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZkLCAweDcwLCAweDZlLCAweDY1LFxuICAweDY1LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ3LCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDU3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDY1LCAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDU0LCAweDY4LCAweDY1LFxuICAweDczLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIyLCAweDNlLCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDY2LCAweDc1LCAweDZjLCAweDZjLCAweDc5LCAweDZkLCAweDYxLFxuICAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYxLFxuICAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDY5LFxuICAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcyLCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDIyLCAweDNlLCAweDBkLCAweDBhLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDY1LCAweDZlLCAweDIwLCAweDIwLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDcwLCAweDcyLFxuICAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDIwLCAweDUwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDcyLCAweDJkLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDczLCAweDYxLCAweDc5LCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDQ4LCAweDc1LCAweDZlLCAweDY3LFxuICAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDc1LCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDczLCAweDU1LCAweDZlLCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDc4LCAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDY3LCAweDY3LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDY2LCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY4LFxuICAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIyLCAweDNlLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDYzLFxuICAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDc5LCAweDZkLCAweDYyLCAweDZmLCAweDZjLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDc0LFxuICAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LFxuICAweDYzLCAweDc0LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYxLCAweDZlLCAweDcwLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDZjLCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY1LCAweDYxLCAweDczLCAweDY5LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDcwLFxuICAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDBhLCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYyLCAweDY1LCAweDZjLFxuICAweDY5LCAweDY1LCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDQxLCAweDY2LCAweDcyLCAweDY5LCAweDZiLCAweDYxLCAweDYxLFxuICAweDZlLCAweDczLCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDYxLCAweDcyLCAweDIwLCAweDYxLCAweDczLCAweDcwLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDc3LFxuICAweDY5LCAweDc0LCAweDY4LCAweDYxLCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDNjLFxuICAweDY2LCAweDY5LCAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLFxuICAweDc0LCAweDZkLCAweDYxLCAweDczLCAweDUyLCAweDY1LCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LFxuICAweDBhLCAweDBhLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDYzLCAweDZiLFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLFxuICAweDc0LCAweDZkLCAweDYxLCAweDY3LCAweDYxLCAweDdhLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDNlLCAweDNjLCAweDczLFxuICAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDc0LCAweDc0LFxuICAweDY1LCAweDY1LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY3LCAweDcyLFxuICAweDZmLCAweDc1LCAweDcwLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDYxLFxuICAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDY2LFxuICAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDcyLCAweDIwLCAweDZmLCAweDc3LCAweDZlLFxuICAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDIwLCAweDZmLFxuICAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDQzLCAweDYxLCAweDcyLCAweDY5LCAweDYyLCAweDYyLCAweDY1LCAweDYxLFxuICAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDczLFxuICAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDczLCAweDc3LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDZlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDNiLCAweDIwLFxuICAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDYyLCAweDY5LFxuICAweDc0LCAweDY1LCAweDY0LCAweDUzLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDRhLFxuICAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDMxLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDZmLFxuICAweDc0LCAweDY1LCAweDcyLCAweDNlLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LFxuICAweDYzLCAweDY4LCAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDIwLCAweDYyLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDU0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LFxuICAweDNiLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY1LFxuICAweDYxLCAweDZjLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc1LCAweDczLCAweDY1LCAweDcyLCAweDQxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDYzLFxuICAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LFxuICAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDYxLCAweDczLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDY1LCAweDZlLCAweDY3LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDcyLCAweDY1LCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDJjLCAweDY2LCAweDY1LCAweDc3LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLFxuICAweDczLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDBhLCAweDNjLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDYzLCAweDY5LFxuICAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLFxuICAweDZiLCAweDY1LCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDZkLCAweDZlLCAweDY1LCAweDY0LCAweDYxLFxuICAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LFxuICAweDYzLCAweDY1LCAweDczLCAweDJjLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDIwLCAweDZmLCAweDY2LFxuICAweDUzLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDc2LFxuICAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDZkLCAweDY5LCAweDZlLFxuICAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDNjLCAweDJmLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLFxuICAweDc0LCAweDNlLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDIwLFxuICAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLFxuICAweDYzLCAweDY1LCAweDczLCAweDYxLCAweDY0LCAweDc2LCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDU0LFxuICAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDc1LCAweDYzLCAweDY4LFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYxLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDY1LCAweDZlLFxuICAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLFxuICAweDZlLCAweDZmLCAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDc3LFxuICAweDY1LCAweDY0LCAweDZlLCAweDY1LCAweDczLCAweDY0LCAweDYxLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDcyLCAweDY0LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDczLFxuICAweDRhLCAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDMyLCAweDc3LCAweDY4LCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDYxLCAweDIwLCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY4LFxuICAweDY5LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDY0LFxuICAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDIyLCAweDNlLCAweDBhLCAweDcwLCAweDY5LCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDUyLCAweDY1LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDc0LCAweDY1LCAweDZlLCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDY1LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDc2LCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDIwLCAweDNjLCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDNlLCAweDY3LCAweDY5LFxuICAweDc2LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLFxuICAweDY5LCAweDYxLCAweDZlLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDcwLFxuICAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDMwLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDY1LCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDY5LFxuICAweDZjLCAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDJjLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDZmLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LFxuICAweDY0LCAweDZjLCAweDc5LCAweDQzLCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDc3LFxuICAweDYxLCAweDczLCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYxLFxuICAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDczLCAweDYzLCAweDcyLCAweDZmLFxuICAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDc1LCAweDYzLFxuICAweDY4LCAweDIwLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLFxuICAweDZlLCAweDczLCAweDJlLCAweDBhLCAweDBhLCAweDQxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDJjLCAweDIwLFxuICAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRkLCAweDc1LCAweDczLCAweDY1LCAweDc1LCAweDZkLFxuICAweDIwLCAweDZmLCAweDY2LCAweDZjLCAweDZmLCAweDc1LCAweDY5LCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDYxLCAweDI4LFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY5LCAweDZlLCAweDZlLCAweDY1LFxuICAweDczLCAweDZmLCAweDc0LCAweDYxLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDczLFxuICAweDYxLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDQ0LCAweDZmLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDY2LFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDMwLCAweDMwLCAweDcwLCAweDc4LCAweDdjLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY4LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZkLCAweDZmLFxuICAweDc1LCAweDczLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDI4LFxuICAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDczLCAweDYzLCAweDZmLFxuICAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDYxLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDczLCAweDZmLCAweDZkLFxuICAweDY1LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDIwLCAweDUzLCAweDY1LCAweDcyLCAweDc2LCAweDY5LFxuICAweDYzLCAweDY1LCAweDczLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LFxuICAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLFxuICAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDc2LCAweDYxLCAweDZjLCAweDc1LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDBkLCAweDBhLCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LFxuICAweDNlLCAweDNkLCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDY0LCAweDY1LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LFxuICAweDNiLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDZlLFxuICAweDY0LCAweDIwLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDNjLCAweDJmLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDNlLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDY2LCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDc5LCAweDNhLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LFxuICAweDNiLCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDY4LCAweDY5LFxuICAweDY3LCAweDY4LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDJkLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDNkLCAweDIyLCAweDJmLCAweDYzLCAweDY3LCAweDY5LCAweDJkLCAweDYyLCAweDY5LCAweDZlLCAweDJmLCAweDc0LFxuICAweDZmLCAweDIwLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDY2LCAweDcyLCAweDY5LCAweDZiLFxuICAweDYxLCAweDYxLCAweDZlLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDZmLFxuICAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweGMzLCAweGE3LCAweDYxLCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDc2LFxuICAweDY5LCAweDY1LCAweGM1LCAweGExLCAweDc1LCAweDZjLCAweDY5LCAweDY1LCAweDc0LCAweDc1LCAweDc2LCAweDY5LCAweGM1LFxuICAweGIzLCAweGM0LCAweDhjLCAweDY1LCAweGM1LCAweGExLCAweDc0LCAweDY5LCAweDZlLCAweDYxLCAweGM0LCAweDhkLCAweDY1LFxuICAweGM1LCAweGExLCAweDc0LCAweDY5LCAweDZlLCAweDYxLCAweGUwLCAweGI5LCAweDg0LCAweGUwLCAweGI4LCAweDk3LCAweGUwLFxuICAweGI4LCAweGEyLCAweGU2LCAweDk3LCAweGE1LCAweGU2LCAweDljLCAweGFjLCAweGU4LCAweGFhLCAweDllLCAweGU3LCAweGFlLFxuICAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweGU1LCAweGFkLCAweDk3LCAweGU3LCAweGI5LCAweDgxLCAweGU5LCAweGFiLCAweDk0LFxuICAweGU1LCAweGFkLCAweDk3LCAweGVkLCAweDk1LCAweDljLCAweGVhLCAweGI1LCAweGFkLCAweGVjLCAweDk2LCAweGI0LCAweGU0LFxuICAweGI4LCAweGJhLCAweGU0LCAweGJiLCAweDgwLCAweGU0LCAweGI5LCAweDg4LCAweGU4LCAweGFlLCAweGExLCAweGU3LCAweGFlLFxuICAweDk3LCAweGU2LCAweDljLCAweGJhLCAweGU3LCAweGFjLCAweDk0LCAweGU4LCAweGFlLCAweGIwLCAweGU2LCAweDljLCAweGFjLFxuICAweGU4LCAweGE4LCAweDhlLCAweGU4LCAweGFiLCAweDk2LCAweGU1LCAweDhkLCAweDgwLCAweGU2LCAweDljLCAweDhkLCAweGU1LFxuICAweDhhLCAweGExLCAweGU1LCAweDk5LCAweGE4LCAweGU0LCAweGJhLCAweDkyLCAweGU4LCAweDgxLCAweDk0LCAweGU3LCAweGJkLFxuICAweDkxLCAweGU2LCAweDg4LCAweGJmLCAweGU1LCAweDljLCAweGIwLCAweGU0LCAweGJhLCAweGE3LCAweGU0LCAweGJmLCAweGIxLFxuICAweGU0LCAweGI5LCAweDkwLCAweGU5LCAweDgzLCAweGE4LCAweGU1LCAweDg3LCAweGJhLCAweGU3LCAweDg5LCAweDg4LCAweGU3LFxuICAweGE0LCAweGJlLCAweGU2LCAweDhlLCAweDkyLCAweGU4LCAweGExLCAweDhjLCAweGU2LCAweGE2LCAweDljLCAweGU5LCAweDgzLFxuICAweGE4LCAweGU4LCAweDkwLCAweGJkLCAweGU2LCAweGEwLCAweGJjLCAweGU4LCAweGJmLCAweDliLCAweGU0LCAweGI4LCAweDgwLFxuICAweGU2LCAweGFkLCAweGE1LCAweGU2LCAweDk0LCAweGFmLCAweGU0LCAweGJiLCAweDk4LCAweGU1LCAweGFlLCAweDlkLCAweGU5LFxuICAweGFhLCAweDhjLCAweGU4LCAweGFmLCAweDgxLCAweGU3LCAweGEwLCAweDgxLCAweGU1LCAweGE3LCAweDk0LCAweGU1LCAweDkxLFxuICAweDk4LCAweGU0LCAweGJjLCAweDlhLCAweGU2LCAweDk1LCAweGIwLCAweGU2LCAweDhkLCAweGFlLCAweGU1LCAweGJhLCAweDkzLFxuICAweGU2LCAweGI2LCAweDg4LCAweGU4LCAweGI0LCAweGI5LCAweGU4LCAweDgwLCAweDg1LCAweGU1LCAweDhhLCAweDllLCAweGU1LFxuICAweDg1LCAweGFjLCAweGU1LCAweGFlLCAweGE0LCAweGU4LCAweGFlLCAweGE4LCAweGU4LCAweGFlLCAweGJhLCAweGU1LCAweDhjLFxuICAweGJhLCAweGU2LCAweGI3LCAweGIxLCAweGU1LCAweDljLCAweGIzLCAweGU1LCAweGI4LCAweDgyLCAweGU2LCAweDkyLCAweGFkLFxuICAweGU2LCAweDk0LCAweGJlLCAweGU1LCAweDk5LCAweGE4LCAweGU1LCAweDhjLCAweDk3LCAweGU0LCAweGJhLCAweGFjLCAweGU1LFxuICAweGI4LCAweDgyLCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweGFkLCAweGE2LCAweGU3LCAweDk0LCAweDlmLCAweGU4LCAweGI2LFxuICAweDhhLCAweGU2LCAweDlkLCAweGE1LCAweGU4LCAweGI2LCAweDhhLCAweGU3LCAweGFlLCAweGExLCAweGU3LCAweDkwLCAweDg2LFxuICAweGU1LCAweDkxLCAweDk4LCAweGU0LCAweGJmLCAweGExLCAweGU2LCAweDgxLCAweGFmLCAweGU3LCAweGJkLCAweDkxLCAweDczLFxuICAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweGMzLCAweGFkLFxuICAweDYzLCAweDc1LCAweDZjLCAweDZmLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDYxLFxuICAweDYyLCAweDYxLCAweDcyLCAweDYzLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDc1LCAweDYxLCAweDZjLFxuICAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDcyLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDY0LFxuICAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDZmLCAweDczLCAweDcwLCAweDZmLCAweDZjLFxuICAweGMzLCAweGFkLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDc1LCAweDY1LCAweDczLFxuICAweDc0LCAweDYxLCAweDc3LCAweDY5LCAweDZiLCAweDY5LCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDczLCAweDY5LFxuICAweDY3LCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYyLCAweGMzLCAweGJhLCAweDczLCAweDcxLCAweDc1LFxuICAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDczLFxuICAweDY1LCAweDY3LCAweDc1LCAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLFxuICAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDczLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDcwLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDZlLCAweDY1LCAweDdhLCAweDc1LCAweDY1LCAweDZjLFxuICAweDYxLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDY0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDZlLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDYzLFxuICAweDc0LCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDYxLCAweDczLCAweDY5LFxuICAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDZmLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweGMzLCAweGFkLCAweDYxLCAweDY5LCAweDZkLCAweGMzLCAweGExLFxuICAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDYxLFxuICAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDcyLCAweDZlLCAweDY1LCAweDYzLFxuICAweDY1LCAweDczLCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDYxLCAweDc0LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweGMzLCAweGE5LCAweDY2LCAweDZmLCAweDZlLCAweDZmLCAweDYzLCAweDZmLFxuICAweDZkLCAweDY5LCAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDZmLFxuICAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LFxuICAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweGMzLCAweGExLCAweDZjLFxuICAweDY5LCAweDczLCAweDY5LCAweDczLCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDZmLCAweDczLFxuICAweDc0LCAweGMzLCAweGE5LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc2LFxuICAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDY1LCAweDc0LCAweDY5LCAweDcxLCAweDc1LCAweDY1LCAweDc0LCAweDYxLFxuICAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDYxLFxuICAweDY0LCAweDZmLCAweDYzLCAweDYxLCAweDcyLCAweGMzLCAweGExLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLFxuICAweDZmLCAweDcwLCAweDY5LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LFxuICAweDcwLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDZkLFxuICAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDczLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDY1LFxuICAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDY1LCAweDZhLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDY1LCAweDY0LCAweDY5LFxuICAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDYxLCAweDZjLCAweDYxLCAweDZkLCAweDYxLCAweDZlLFxuICAweDYzLCAweDYxLCAweDY3LCAweDZmLCAweDZlLCAweDdhLCAweGMzLCAweGExLCAweDZjLCAweDY1LCAweDdhLCAweDY0LCAweDZmLFxuICAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDcwLCAweDY1LCAweDZjLCAweGMzLCAweGFkLCAweDYzLFxuICAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDcyLCAweDYxLFxuICAweDY3LCAweDZmLCAweDZlLCAweDYxLCAweDcwLCAweDcyLCAweGMzLCAweGExLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZlLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDcwLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDczLCAweDc0LCAweGMzLCAweGE5LCAweDYzLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDczLCAweDZmLCAweDYyLCAweDZhLFxuICAweDY1LCAweDc0LCAweDY5LCAweDc2LCAweDZmLCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LFxuICAweDZmLCAweDczLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDg4LFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LFxuICAweGI1LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDliLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg4LFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweDY0LCAweDY5LCAweDcwLCAweDZjLCAweDZmLFxuICAweDY0LCAweDZmLCAweDYzLCAweDczLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFmLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk0LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE1LCAweDhjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE1LCAweDg5LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDlmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LFxuICAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDkwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDhhLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDkwLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGE2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIyLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg5LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFkLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgxLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweDg2LFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LFxuICAweDgxLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDgwLFxuICAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDcwLFxuICAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDJmLCAweDc0LCAweDY5LCAweDc0LCAweDZjLFxuICAweDY1LCAweDNlLCAweDBkLCAweDBhLCAweDQzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIwLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDYzLCAweDZmLFxuICAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc5LFxuICAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDcwLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDNjLCAweDYxLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDI2LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDNiLCAweDIwLCAweDMyLCAweDMwLCAweDMxLFxuICAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDUzLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDYzLFxuICAweDcyLCAweDc1LCAweDZkLCAweDYyLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDczLCAweDY1LCAweDZjLCAweDc2LCAweDY1LFxuICAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDY5LCAweDdhLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY3LCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQzLCAweDYxLCAweDZjLCAweDY5LCAweDY2LFxuICAweDZmLCAweDcyLCAweDZlLCAweDY5LCAweDYxLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY5LCAweDc0LCAweDY5LFxuICAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDRlLFxuICAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDJmLCAweDc0LFxuICAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDNjLCAweDZkLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLCAweDYyLFxuICAweDZmLCAweDc4LCAweDIyLCAweDIwLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDcxLCAweDc1LCAweDY1LFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcwLFxuICAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLCAweDczLCAweDIwLCAweDc3LCAweDY1LFxuICAweDZjLCAweDZjLCAweDIwLCAweDYxLCAweDczLCAweDc1LCAweDZlLCAweDc0LCAweDI3LCAweDJjLCAweDIwLCAweDI3LCAweDU1LFxuICAweDQxLCAweDJkLCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLFxuICAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDZjLCAweDY1LFxuICAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDU3LCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDZlLFxuICAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDJlLCAweDIwLCAweDNkLCAweDIwLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDYyLCAweDcyLCAweDI2LCAweDY3LCAweDc0LFxuICAweDNiLCAweDZjLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcwLCAweDZmLFxuICAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY3LCAweDYzLCAweDZmLCAweDZjLFxuICAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDIzLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDcwLFxuICAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDc3LCAweDczLFxuICAweDZjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LFxuICAweDY5LCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDU0LCAweDY1LCAweDYzLFxuICAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDUwLCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDYxLFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY5LCAweDczLCAweDZmLFxuICAweDZlLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDJlLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDRmLCAweDY2LCAweDI4LCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDZjLFxuICAweDc1LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYyLFxuICAweDY5LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDUyLCAweDY1LCAweDc2LCAweDZmLFxuICAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDVmLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDY1LCAweDcyLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDZmLCAweDZmLCAweDY0LFxuICAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDcwLCAweDY1LCAweDcyLFxuICAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDcwLCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDJlLCAweDc2LCAweDYxLCAweDZjLFxuICAweDc1LCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLFxuICAweDZmLCAweDZlLCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDczLFxuICAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDJkLCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDcyLCAweDY1LCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDY4LCAweDY1LFxuICAweDZlLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDY5LCAweDcwLFxuICAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLFxuICAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJjLCAweDYyLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDQyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDZmLFxuICAweDc1LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDI4LCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLFxuICAweDNhLCAweDIyLCAweDIwLCAweDc1LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDI4LCAweDIyLFxuICAweDcwLCAweDYxLCAweDczLCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDIyLCAweDIwLCAweDY0LCAweDY1LCAweDZkLFxuICAweDZmLCAweDYzLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDcyLCAweDIyLCAweDNlLFxuICAweDBhLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDc1LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDcwLCAweDc4LCAweDNiLCAweDcwLCAweDYxLFxuICAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLFxuICAweDY4LCAweDc5LCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDc1LFxuICAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDYxLCAweDYzLCAweDY5LFxuICAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLCAweDY5LFxuICAweDdhLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDY5LCAweDY2LCAweDIwLCAweDI4LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDY5LFxuICAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDc2LCAweDZmLCAweDYzLCAweDYxLCAweDYyLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDc5LCAweDY4LCAweDc5LCAweDcwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY5LFxuICAweDczLCAweDJlLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDI4LCAweDI5LCAweDNiLCAweDI2LCAweDYxLFxuICAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDY4LCAweDY5LCAweDZlLCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDQ2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDcyLCAweDIyLCAweDYxLCAweDczLCAweDczLCAweDc1LFxuICAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LFxuICAweDYzLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDc1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDY1LCAweDc4LCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDc0LCAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLFxuICAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDZkLCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDQzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcwLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDZlLFxuICAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LFxuICAweDY5LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDRkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY3LCAweDY1LCAweDZmLFxuICAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDJlLCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDI4LCAweDJmLCAweDY0LCAweDY1LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc1LCAweDZlLCAweDY5LCAweDczLCAweDY4LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDcyLFxuICAweDY1LCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDY0LCAweDYxLCAweDcwLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY1LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDY4LCAweDMxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LFxuICAweDZlLCAweDZkLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDY1LCAweDZjLCAweDY1LCAweDYyLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDQ3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDBhLCAweDBhLCAweDQ0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY0LFxuICAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDYxLCAweDZjLFxuICAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDc0LFxuICAweDYxLCAweDYzLCAweDY4LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLFxuICAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDRlLCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDYyLCAweDY1LFxuICAweDc5LCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLFxuICAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDZhLCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDY5LFxuICAweDczLCAweDc0LCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLFxuICAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY3LFxuICAweDNkLCAweDIyLCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNlLCAweDBkLCAweDBhLCAweDYxLCAweDYyLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDNiLCAweDIwLFxuICAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDc0LFxuICAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDcyLCAweDY1LCAweDYxLCAweDZkLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLFxuICAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDY1LCAweDZkLFxuICAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYyLCAweDZmLCAweDc1LFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIyLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDY1LCAweDZlLCAweDUwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweDY1LCAweDczLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDY5LFxuICAweDc0LCAweDc1LCAweDc0LCAweDY1LCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LCAweDYxLFxuICAweDZjLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDc1LFxuICAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDYxLCAweDZjLCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDc4LCAweDIwLCAweDczLCAweDZmLCAweDZjLCAweDY5LCAweDY0LFxuICAweDIwLCAweDIzLCAweDYxLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDczLFxuICAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDIwLCAweDQ1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDY5LFxuICAweDdhLCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLFxuICAweDY3LCAweDc1LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDZiLFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDY0LCAweDY4LCAweDMyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDYxLFxuICAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDI4LCAweDY5LCAweDZlLCAweDYzLCAweDZjLFxuICAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDc0LCAweDY1LFxuICAweDcyLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDY4LCAweDY5LCAweDYyLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDNkLFxuICAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY0LCAweDY5LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDc4LCAweDNiLFxuICAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLFxuICAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDZlLCAweDY5LCAweDc1LCAweDZkLCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDY2LCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDZlLCAweDZmLCAweDJkLCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLFxuICAweDc0LCAweDNiLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDYzLCAweDZmLFxuICAweDc1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc1LCAweDZlLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDY1LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDUyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZmLCAweDcyLCAweDY0LCAweDY5LFxuICAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDY2LCAweDY5LFxuICAweDY1LCAweDY0LCAweDZjLCAweDY1LCAweDY3LCAweDY5LCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDI4LCAweDMwLCAweDIyLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LFxuICAweDY1LCAweDZjLCAweDc5LCAweDY5LCAweDZjLCAweDZjLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY2LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDUwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDMxLCAweDIyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDcwLCAweDczLCAweDc5LCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDYzLCAweDZmLFxuICAweDZlLCAweDY2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LFxuICAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYxLCAweDYyLCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDZhLFxuICAweDZmLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDZjLCAweDc5LCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDNlLFxuICAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDYyLCAweDc1LCAweDc0LFxuICAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDZkLCAweDY5LCAweDY3LCAweDcyLFxuICAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDZmLCAweDY2LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LFxuICAweDJjLCAweDYxLCAweDIwLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDRjLCAweDY5LFxuICAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDU1LCAweDZlLCAweDZjLCAweDY5LCAweDZiLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLFxuICAweDcwLCAweDNiLCAweDBhLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY5LFxuICAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQzLCAweDZmLCAweDZlLCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDZmLCAweDYyLFxuICAweDY5LCAweDZjLCAweDY1LCAweDUwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY3LCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDY2LCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDUzLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLFxuICAweDcyLCAweDZjLCAweDc5LCAweDJjLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDBkLCAweDBhLFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDYxLFxuICAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LFxuICAweDZlLCAweDY1LCAweDY0LCAweDJhLCAweDNjLCAweDIxLCAweDViLCAweDQzLCAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLFxuICAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY5LCAweDZlLCAweDIwLFxuICAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLFxuICAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBhLCAweDNjLFxuICAweDJmLCAweDJlLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDRmLCAweDY2LCAweDI4LCAweDI3LCAweDY5LCAweDIwLFxuICAweDNkLCAweDIwLCAweDMwLCAweDNiLCAweDIwLCAweDY5LCAweDIwLCAweDNjLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY1LCAweDc2LCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZjLCAweDc0LCAweDY5LFxuICAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDJkLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDdkLCAweDBhLCAweDNjLFxuICAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDY1LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZkLCAweDcwLCAweDY4LCAweDYxLCAweDczLCAweDY5LCAweDdhLCAweDY1LFxuICAweDY0LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLFxuICAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDRkLCAweDY1LCAweDYxLCAweDZlLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDJjLCAweDY5LFxuICAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDU0LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDYxLCAweDczLCAweDZiLCAweDY1LCAweDc0LFxuICAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDZlLFxuICAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDYxLCAweDY0LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LFxuICAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDYzLFxuICAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIyLCAweDNlLCAweDNjLCAweDczLCAweDc0LCAweDcyLFxuICAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDcyLFxuICAweDczLCAweDRhLCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDc5LCAweDY2LCAweDYxLCAweDYzLCAweDY5LCAweDZjLFxuICAweDY5LCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDA5LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDZmLFxuICAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDQzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDY5LCAweDc0LCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYyLCAweDc1LCAweDczLFxuICAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDczLCAweDQ0LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDcwLCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDRhLCAweDYxLFxuICAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY5LCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDA5LCAweDY0LFxuICAweDY5LCAweDcwLCAweDZjLCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY5LFxuICAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDQ5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDZkLCAweDYxLFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRjLCAweDc1LCAweDc4LCAweDY1LCAweDZkLFxuICAweDYyLCAweDZmLCAweDc1LCAweDcyLCAweDY3LCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY1LFxuICAweDZlLCAweDY3LCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIyLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDI5LCAweDNiLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLFxuICAweDc3LCAweDYxLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY5LCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDNkLCAweDIyLCAweDBhLCAweDNjLCAweDIxLFxuICAweDJkLCAweDJkLCAweDIwLCAweDQ1LCAweDZlLCAweDY0LCAweDIwLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDZmLFxuICAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc1LCAweDZlLCAweDZjLCAweDY5LCAweDZiLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQxLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDY5LFxuICAweDYxLCAweDZlLCAweDRmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLFxuICAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDBhLCAweDNjLCAweDJmLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLCAweDY5LFxuICAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDY1LFxuICAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDQxLCAweDZjLCAweDY1LFxuICAweDc4LCAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDY5LCAweDYxLCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQxLCAweDY0LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDBhLCAweDBhLFxuICAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY4LCAweDMzLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLFxuICAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDZmLCAweDYyLCAweDZjLCAweDY5LFxuICAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LFxuICAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDYxLCAweDY0LCAweDc2LFxuICAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZlLFxuICAweDczLCAweDNjLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDcyLCAweDY1LFxuICAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZjLCAweDc5LCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZlLFxuICAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLFxuICAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDYxLCAweDc1LFxuICAweDc0LCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLFxuICAweDZmLCAweDZkLCAweDY5LCAweDczLCAweDY1LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDc0LFxuICAweDc3LCAweDZmLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ2LCAweDY1LCAweDYyLCAweDcyLFxuICAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDMyLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LFxuICAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc3LCAweDY2LCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDJlLFxuICAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDZlLCAweDY1LCAweDYxLFxuICAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LFxuICAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LFxuICAweDczLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDc3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDY0LCAweDcyLCAweDYxLCAweDc3LCAweDYxLCAweDZjLCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LFxuICAweDNhLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDY5LCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZlLFxuICAweDY1LCAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZkLCAweDc5LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDQ0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDcwLCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDc1LCAweDcwLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLFxuICAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDY1LFxuICAweDY0LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDczLCAweDc5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDZjLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDYxLCAweDY3LCAweDYxLCAweDZlLFxuICAweDY0LCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDY1LCAweDcyLCAweDY1LFxuICAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDZjLCAweDYxLCAweDY5LFxuICAweDZkLCAweDY1LCAweDY0LCAweDUwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDUzLCAweDYzLCAweDY5LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDZlLCAweDZmLCAweDJkLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDZiLFxuICAweDczLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDRjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDY0LCAweDYxLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDczLCAweDIwLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDcyLFxuICAweDY5LCAweDczLCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDQxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDBhLCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDZkLFxuICAweDRjLCAweDYxLCAweDYyLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDRlLCAweDZmLCAweDc2LFxuICAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDMyLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQ5LCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLFxuICAweDZjLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZjLFxuICAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDIwLCAweDZjLCAweDY1LCAweDY2LCAweDQ0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDY0LFxuICAweDY1LCAweDYxLCAweDZjLCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDUzLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LCAweDIyLCAweDNlLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDc5LFxuICAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDJjLCAweDczLCAweDc5LFxuICAweDZlLCAweDZmLCAweDZlLCAweDc5LCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZkLCAweDYxLCAweDYyLFxuICAweDZjLCAweDc5LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDc1LFxuICAweDczLCAweDY1LCAweDcyLCAweDQxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc1LCAweDZlLCAweDY1LCAweDc4LFxuICAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDY0LFxuICAweDYxLCAweDIwLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIyLCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDY3LFxuICAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDY5LCAweDZlLCAweDIwLCAweDRmLCAweDYzLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDcyLCAweDcwLCAweDZmLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIwLCAweDczLCAweDYxLCAweDY5LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDIwLCAweDQ2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNkLCAweDIyLCAweDZmLCAweDZlLCAweDZjLCAweDc5LFxuICAweDIwLCAweDYxLCAweDIwLCAweDY2LCAweDY1LCAweDc3LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDNjLCAweDY2LCAweDY5LFxuICAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDNlLCAweDQxLCAweDcyLCAweDYzLCAweDY4LCAweDYyLCAweDY5LFxuICAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZlLFxuICAweDZmLCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDYxLCAweDcwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDc2LCAweDY5LFxuICAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDczLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBhLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDZkLFxuICAweDYxLCAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDYxLCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDY1LCAweDY3LCAweDY3LCAweDZkLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LFxuICAweDczLCAweDZkLCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LFxuICAweDUwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLCAweDZmLCAweDZjLFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLFxuICAweDBkLCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDYxLCAweDcyLFxuICAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDJkLCAweDZhLCAweDczLCAweDczLCAweDY0LFxuICAweDZiLCAweDI3LCAweDI5LCAweDI5LCAweDNiLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYzLFxuICAweDYxLCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDYxLCAweDZlLCAweDczLCAweDUzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDYxLCAweDcyLCAweDY5LCAweDc0LCAweDY4LCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYzLCAweDY1LCAweDY0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDZkLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDUwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY5LCAweDc0LCAweDIwLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDUwLCAweDY4LFxuICAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLCAweDY4LCAweDc5LCAweDY2LCAweDcyLCAweDY5LCAweDY1LCAweDZlLFxuICAweDY0LCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDZmLCAweDY3LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LFxuICAweDZmLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDc1LCAweDYxLCAweDcyLFxuICAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDMwLCAweDMwLCAweDMwLFxuICAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDIwLCAweDY3LCAweDYxLCAweDZkLCAweDY1LCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDYxLFxuICAweDZlLCAweDczLCAweDJkLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDZmLCAweDZlLCAweDZiLCAweDY1LCAweDc5LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDNiLCAweDIwLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDNhLCAweDQ4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc1LFxuICAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDc5LCAweDcwLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LFxuICAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc1LCAweDczLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY5LCAweDZlLCAweDc1LCAweDZmLCAweDc1LCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDc0LFxuICAweDY5LCAweDY1LCAweDczLCAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDY0LCAweDc1LCAweDY1LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDY3LFxuICAweDY1LCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDc1LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLFxuICAweDY1LCAweDJjLCAweDYzLCAweDYxLCAweDcwLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDUyLFxuICAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDQ1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLFxuICAweDZlLCAweDY5LCAweDYzLCAweDZiLCAweDY5LCAweDZjLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDczLFxuICAweDYzLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDcwLCAweDc1LCAweDYyLFxuICAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDZmLCAweDc1LFxuICAweDczLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LFxuICAweDYyLCAweDczLCAweDY5LCAweDY0LCAweDY5LCAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDcwLFxuICAweDY5LCAweDcyLCAweDYxLCAweDYzLCAweDc5LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDY0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDczLFxuICAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDIwLFxuICAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDYyLCAweDczLFxuICAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYxLCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDc0LCAweDcyLFxuICAweDYxLCAweDc2LCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDIwLFxuICAweDZmLCAweDZlLCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDYxLFxuICAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LFxuICAweDY1LCAweDY1LCAweDc0LCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDZlLCAweDZmLFxuICAweDJkLCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDI4LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLFxuICAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDc1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDNmLCAweDNjLCAweDJmLCAweDYyLCAweDc1LFxuICAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDY3LCAweDY1LCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDJkLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDIyLCAweDIwLCAweDY0LFxuICAweDY5LCAweDcyLCAweDNkLCAweDIyLCAweDZjLCAweDc0LCAweDcyLCAweDRjLCAweDY5LCAweDY1LCAweDc1LCAweDc0LCAweDY1LFxuICAweDZlLCAweDYxLCAweDZlLCAweDc0LCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLFxuICAweDc1LCAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLFxuICAweDcyLCAweDY3LCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDYxLFxuICAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDcyLCAweDY1LFxuICAweDZlLCAweDI3LCAweDczLCAweDcwLCAweDc1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYyLCAweDYxLCAweDczLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc1LCAweDcwLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LFxuICAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDZmLFxuICAweDczLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDBhLCAweDBhLCAweDQ5LCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDYzLFxuICAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDcyLCAweDZmLFxuICAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDJlLFxuICAweDYzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDczLCAweDZkLCAweDY5LCAweDZlLCAweDIwLFxuICAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDJkLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LFxuICAweDZkLCAweDUzLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLFxuICAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDc3LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU5LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDYxLCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc1LCAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDY5LCAweDczLFxuICAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LFxuICAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDZlLFxuICAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDY5LCAweDY1LCAweDczLCAweDYyLCAweDc1LCAweDc0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY1LFxuICAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZjLCAweDYxLCAweDYyLFxuICAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDc0LFxuICAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDJjLCAweDIwLCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LFxuICAweDY3LCAweDYxLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LFxuICAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY2LFxuICAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDJmLCAweDIyLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY3LCAweDY1LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY5LCAweDZkLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDc0LCAweDZmLCAweDcwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDY1LCAweDY3LCAweDZmLCAweDc0LCAweDY5LCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDY1LCAweDcyLCAweDczLFxuICAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDY0LCAweDNkLCAweDIyLFxuICAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDcyLCAweDc0LCAweDY4LFxuICAweDcyLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDYzLCAweDZmLFxuICAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYzLCAweDYzLCAweDc1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYyLCAweDc1LCAweDY5LFxuICAweDZjLCAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDYxLFxuICAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZkLCAweDc1LCAweDYzLCAweDY4LFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDQ0LCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDMxLCAweDMwLCAweDMwLFxuICAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDRiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDcyLCAweDY1LCAweDY2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDYyLFxuICAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ2LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDY5LFxuICAweDczLCAweDIwLCAweDczLCAweDYxLCAweDY5LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDY0LCAweDc1LCAweDZkLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLFxuICAweDYxLCAweDIwLCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDJkLCAweDNlLCAweDBhLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDIwLCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDc3LCAweDY5LCAweDY0LCAweDY1LFxuICAweDJlLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDY1LCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY5LFxuICAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDY0LCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LFxuICAweDNkLCAweDIyLCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDc0LCAweDYyLFxuICAweDY1LCAweDZlLCAweDY1LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDc0LCAweDZmLCAweDcyLFxuICAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZjLCAweDc5LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDc3LCAweDZmLCAweDcyLFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDZmLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDNjLCAweDJmLFxuICAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDczLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDZiLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDQ2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDY5LFxuICAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDZmLCAweDcwLCAweDY1LCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDYxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LFxuICAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYxLCAweDZlLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYxLCAweDZlLCAweDIwLCAweDc2LCAweDY1LFxuICAweDcyLCAweDc5LCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLFxuICAweDZmLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYyLCAweDc5LCAweDIwLCAweDY2LCAweDYxLCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDcwLFxuICAweDc1LCAweDcyLCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDZjLCAweDZjLFxuICAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDIwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDZlLCAweDY0LFxuICAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDYzLCAweDYzLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDZmLCAweDcyLCAweDIwLCAweDY4LCAweDY1LCAweDcyLCAweDc0LCAweDcyLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDY0LCAweDZmLCAweDc1LCAweDczLCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDIwLFxuICAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDMwLFxuICAweDIwLCAweDMxLCAweDY1LCAweDZkLCAweDIwLCAweDMxLCAweDY1LCAweDZkLCAweDNiLCAweDQyLCAweDYxLCAweDczLCAweDZiLFxuICAweDY1LCAweDc0LCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDJlLFxuICAweDYzLCAweDczLCAweDczLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDY1LCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDJmLCAweDIyLCAweDIwLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDJmLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDc0LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcwLCAweDY5LCAweDc0LCAweDc0LCAweDczLCAweDYyLCAweDc1LCAweDcyLCAweDY3LCAweDY4LCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDBkLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDI4LCAweDY2LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDZmLFxuICAweDc1LCAweDc0LCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLFxuICAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDZmLCAweDYzLCAweDYzLCAweDYxLFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LFxuICAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDQzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LFxuICAweDJjLCAweDIwLCAweDYyLCAweDY3LCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDc0LCAweDYxLFxuICAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDYxLCAweDczLFxuICAweDc0LCAweDcyLCAweDZmLCAweDc1LCAweDczLCAweDQxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDNlLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDNjLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLFxuICAweDY2LCAweDZmLCAweDcyLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDJlLCAweDczLCAweDcyLCAweDYzLCAweDIwLCAweDNkLCAweDIwLCAweDIyLCAweDJmLCAweDJmLCAweDc2LCAweDY5LCAweDZmLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLFxuICAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDZjLFxuICAweDc5LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDZlLFxuICAweDY0LCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweGMzLCAweGFhLCAweDczLCAweGQ3LFxuICAweGEyLCAweGQ3LCAweDkxLCAweGQ3LCAweGE4LCAweGQ3LCAweDk5LCAweGQ3LCAweGFhLCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGRiLCAweDhjLCAweDY0LCAweDY1LCAweDczLCAweDYxLCAweDcyLCAweDcyLCAweDZmLFxuICAweDZjLCAweDZjLCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY5LCAweDZmLFxuICAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDczLCAweDY1LCAweDcwLFxuICAweDc0LCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY0LCAweDZmLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDYzLCAweDY5LCAweGMzLCAweGIzLFxuICAweDZlLCAweDc1LCAweDYyLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDc1LFxuICAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDczLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDYxLCAweDY0LFxuICAweDZmLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDY0LCAweDZmLCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweGMzLFxuICAweGFkLCAweDYzLCAweDc1LCAweDZjLCAweDZmLCAweDczLCAweDY0LCAweDY5LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLFxuICAweDcyLCAweDY1LCAweDcwLCAweGMzLCAweGJhLCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDc0LFxuICAweDc1LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDYzLCAweDY5LCAweDY0LCAweDYxLFxuICAweDY0LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDZmLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDZmLCAweDYyLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDczLCAweDYxLFxuICAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDZmLCAweDczLCAweDc0LCAweDY1LCAweDYzLCAweDY4LFxuICAweDZlLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweGMzLCAweGFkLCAweDYxLFxuICAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLFxuICAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDc2LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDY0LCAweDZmLCAweDZjLCAweDY5LCAweDY0LCAweDYyLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY5LCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDYzLFxuICAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLFxuICAweDY5LCAweDZmLCAweDcwLCAweDZmLCAweDZjLCAweGMzLCAweGFkLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDczLCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDY0LCAweDZmLCAweDYzLCAweDc1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLFxuICAweDY1LCAweDdhLCAweDYxLCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDczLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZlLCAweGMzLCAweGIzLCAweDZkLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDZmLCAweDY0LCAweDcyLCAweGMzLCAweGFkLCAweDY3LCAweDc1LCAweDY1LFxuICAweDdhLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLFxuICAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LFxuICAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDc1LFxuICAweDcyLCAweDYxLCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY2LFxuICAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZjLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQwLCAweGIxLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJjLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQxLCAweDgwLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJjLCAweGQxLCAweDhmLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGI2LCAweGQwLFxuICAweGI1LCAweGQxLCAweDg3LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGIxLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQwLFxuICAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLFxuICAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQxLCAweDgxLFxuICAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQxLFxuICAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI3LFxuICAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI5LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGI2LCAweGQwLCAweGI4LCAweGQwLCAweGI3LFxuICAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGI2LCAweGQwLCAweGI0LCAweGQxLFxuICAweDgzLCAweGQwLCAweGIxLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweDlmLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI3LCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhjLCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGI0LCAweGQwLCAweGI1LFxuICAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQxLCAweDhmLCAweGQwLCAweGI3LCAweGQwLCAweGI4LCAweGQwLFxuICAweGJkLCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLFxuICAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLFxuICAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLFxuICAweGI1LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI2LCAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGJkLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLFxuICAweGJiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLFxuICAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLFxuICAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI5LCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGI4LCAweGQxLFxuICAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgzLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGIwLFxuICAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQwLCAweGI0LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweDlmLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLFxuICAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQwLFxuICAweGI5LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDgyLFxuICAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI3LCAweGQxLCAweDgzLCAweGQwLCAweGExLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJhLFxuICAweGQxLCAweDgyLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGJjLCAweGQwLFxuICAweDlhLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJkLFxuICAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLFxuICAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGI5LFxuICAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLFxuICAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQxLCAweDhmLFxuICAweGQwLCAweGI3LCAweGQxLCAweDhjLCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgxLFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQwLCAweDlhLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGE0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDgzLFxuICAweGQwLCAweGJjLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQwLCAweGJkLCAweGQwLCAweGJhLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGJmLCAweGQwLCAweGJlLFxuICAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQxLCAweDgyLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQxLFxuICAweDhmLCAweGQxLCAweDg3LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhmLCAweGQxLCAweDg2LFxuICAweGQxLCAweDg2LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQxLCAweDgyLCAweGQxLFxuICAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGJjLFxuICAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQwLCAweGJkLCAweGQwLCAweGJhLCAweGQwLFxuICAweGIwLCAweGQwLCAweDlkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQwLCAweGI5LCAweGQxLCAweDg3LFxuICAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLCAweDg0LCAweGQwLCAweGI4LCAweGQwLCAweGJiLCAweGQxLCAweDhjLFxuICAweGQwLCAweGJjLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJjLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg4LCAweGQwLCAweGI4LCAweGQxLCAweDg1LFxuICAweGQwLCAweGJjLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLFxuICAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI1LFxuICAweGQxLCAweDhlLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgwLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQxLCAweDgxLFxuICAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQxLCAweDg2LFxuICAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweDkwLCAweGQxLCAweDgwLFxuICAweGQxLCAweDg1LCAweGQwLCAweGI4LCAweGQwLCAweGIyLCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGFmLCAweGQ5LCAweDg5LCAweGQ4LCAweGE1LCAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGE1LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgyLCAweGQ4LCAweGIzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ5LCAweDgyLCAweGQ5LCAweDg5LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ4LCAweGFlLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGFhLCAweGQ4LCAweGI3LCAweGQ5LCAweDg4LCAweGQ5LCAweDhhLCAweGQ4LCAweGIxLCAweGQ4LCAweGI5LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE1LCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDgxLCAweGQ4LCAweGE3LCAweGQ5LCAweDgyLCAweGQ4LCAweGI3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ4LCAweGJhLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFlLCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDgyLCAweGQ4LCAweGI1LCAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg3LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGI5LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LFxuICAweGQ4LCAweGE5LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweGQ5LCAweDgzLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI3LCAweGQ5LCAweDgxLCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE1LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGFlLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGFjLCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LFxuICAweGQ5LCAweDgyLCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ4LCAweGFmLCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGE5LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGI1LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGEzLCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGI0LCAweGQ5LCAweDhhLCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE4LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE5LCAweGQ4LCAweGEzLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDgxLCAweGQ4LCAweGIxLCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE5LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ4LCAweGFkLCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ4LFxuICAweGEzLCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGIxLCAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGE2LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgyLCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGEzLCAweGQ4LCAweGFmLCAweGQ4LCAweGE4LCAweGQ5LCAweDg1LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGI3LCAweGQ4LCAweGI5LCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGI3LCAweGQ5LCAweDgyLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGFjLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGI0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ5LCAweDg1LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGI3LCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweDczLCAweDQyLCAweDc5LCAweDU0LFxuICAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDIwLFxuICAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDMxLCAweDcwLCAweDc4LCAweDIwLCAweDczLCAweDZmLCAweDZjLCAweDY5LFxuICAweDY0LCAweDIwLCAweDIzLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLFxuICAweDIyLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcwLCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDZmLCAweDZlLCAweDYzLFxuICAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LFxuICAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLFxuICAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDY1LFxuICAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZkLFxuICAweDY0LCAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDY5LCAweDZkLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDc0LFxuICAweDY1LCAweDZjLCAweDc5LCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDNjLFxuICAweDJmLCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDc2LFxuICAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LFxuICAweDc0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY4LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDNhLCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLFxuICAweDMwLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDcyLCAweDY1LCAweDcwLCAweDZjLFxuICAweDYxLCAweDYzLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDQxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LCAweDYxLCAweDZjLCAweDczLCAweDcwLCAweDY1LCAweDcyLFxuICAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDY1LCAweDc0LCAweDU0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDI4LCAweDc1LCAweDcyLCAweDZjLCAweDI4LCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDYzLCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI5LCAweDIwLCAweDZlLCAweDZmLFxuICAweDJkLCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDJlLCAweDRhLCAweDUwLCAweDQ3LCAweDdjLCAweDc0LCAweDY4LCAweDc1LFxuICAweDZkLCAweDYyLCAweDdjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LFxuICAweDY1LCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDY2LFxuICAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNiLCAweDNjLCAweDZjLCAweDY5LFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDc1LCAweDZlLCAweDY0LCAweDcyLFxuICAweDY1LCAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDBhLCAweDBhLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LFxuICAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDNhLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDNiLFxuICAweDYzLCAweDZmLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDYyLCAweDY1LFxuICAweDZjLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDVhLCAweDY1LCAweDYxLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDY0LCAweDcwLCAweDY4LCAweDZmLCAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI2LCAweDZjLCAweDc0LFxuICAweDNiLCAweDczLCAweDc1LCAweDcwLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLFxuICAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDc5LCAweDRlLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZkLCAweDYxLCAweDc4LCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDNkLCAweDIyLFxuICAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDdhLCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDQ0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDBhLCAweDBhLCAweDQxLCAweDZjLCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDNjLCAweDJmLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDYxLCAweDcyLFxuICAweDY1LCAweDYxLCAweDNlLCAweDc0LCAweDY4LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDYyLCAweDY5LCAweDcyLFxuICAweDY0LCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDI2LFxuICAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDY0LCAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDczLCAweDcwLCAweDY1LFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDZjLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDZjLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY5LFxuICAweDYzLCAweDczLCAweDBhLCAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLFxuICAweDY5LCAweDZjLCAweDZjLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDZlLFxuICAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY1LCAweDcyLCAweDcyLFxuICAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LFxuICAweDc0LCAweDY1LCAweDY0LCAweDM2LCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLFxuICAweDIyLCAweDczLCAweDYxLCAweDZlLCAweDczLCAweDJkLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDNiLCAweDYzLFxuICAweDYxLCAweDcwLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY0LCAweDY5LCAweDczLFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLFxuICAweDYyLCAweDY1LCAweDQxLCAweDY2LCAweDY3LCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDRkLCAweDYxLFxuICAweDc0LCAweDY4LCAweDJlLCAweDY2LCAweDZjLCAweDZmLCAweDZmLCAweDcyLCAweDI4LCAweDczLCAweDc1LCAweDcyLCAweDcyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDZjLFxuICAweDczLCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDZmLCAweDYyLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDYxLCAweDZlLCAweDYzLFxuICAweDY1LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDNjLFxuICAweDY4LCAweDMyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDZmLCAweDcyLFxuICAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDY4LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDc2LCAweDYxLCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDI5LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LFxuICAweDI4LCAweDI5LCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLFxuICAweDQ0LCAweDY1LCAweDczLCAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDNlLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDczLCAweDcwLFxuICAweDY5LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDQ0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDJlLCAweDczLFxuICAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDI4LCAweDY1LCAweDYxLCAweDYzLCAweDY4LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDY0LFxuICAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDYyLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDIwLCAweDZlLCAweDZmLFxuICAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDRkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDQ1LCAweDYxLCAweDczLCAweDc0LCAweDNjLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDNjLCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDcwLCAweDY1LCAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLFxuICAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDIwLCAweDQ0LFxuICAweDY1LCAweDYzLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY2LCAweDYxLCAweDZkLFxuICAweDZmLCAweDc1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZjLFxuICAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDYzLFxuICAweDZjLCAweDc1LCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY5LCAweDY3LCAweDZlLCAweDc0LCAweDc5LCAweDJkLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDY0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDZmLFxuICAweDYzLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZmLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcwLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDUyLCAweDY1LCAweDZlLCAweDYxLCAweDY5LCAweDczLCAweDczLCAweDYxLFxuICAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY1LFxuICAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDY3LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDY1LFxuICAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDNjLCAweDY4LCAweDMxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDcwLFxuICAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDY2LCAweDY5LFxuICAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDNlLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDY1LFxuICAweDIwLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJlLCAweDcwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDZlLCAweDc0LCAweDRlLCAweDZmLCAweDY0LCAweDY1LCAweDYxLCAweDY3LCAweDcyLCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDQxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY1LCAweDcyLCAweDczLFxuICAweDc0LCAweDZmLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRkLCAweDZmLFxuICAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDc5LFxuICAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDI4LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDc0LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDNiLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDMxLCAweDMwLCAweDMwLFxuICAweDI1LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDNjLFxuICAweDY4LCAweDMzLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIwLCAweDZmLCAweDZlLFxuICAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDI5LCAweDJlLCAweDYxLCAweDY0LCAweDY0LFxuICAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDRmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY0LCAweDYxLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDYyLCAweDcyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDBkLCAweDBhLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDQ5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LFxuICAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDYzLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDZmLCAweDcyLFxuICAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDY4LCAweDY1LCAweDYxLFxuICAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLFxuICAweDIyLCAweDMxLCAweDYxLCAweDYzLCAweDcyLCAweDZmLCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI5LCAweDNiLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDYzLFxuICAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDQyLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc3LFxuICAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDIxLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDNiLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LFxuICAweDZlLCAweDJkLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDc1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZkLCAweDZkLCAweDY5LCAweDY3LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDNjLCAweDY4LCAweDM0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLFxuICAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDY3LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDRlLCAweDZmLCAweDc2LCAweDY1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDYxLCAweDYzLCAweDcxLCAweDc1LCAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDYxLFxuICAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDdiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LFxuICAweDdhLCAweDY1LCAweDNhLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY1LCAweDY1LFxuICAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDZjLCAweDc5LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLFxuICAweDc5LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLFxuICAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDQ5LCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDc0LCAweDIwLCAweDY0LFxuICAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLFxuICAweDcyLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDYyLCAweDY5LCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LFxuICAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDcyLCAweDIwLFxuICAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDIwLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDZmLCAweDZjLCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLFxuICAweDc1LCAweDczLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYzLFxuICAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDIwLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LFxuICAweDNkLCAweDIyLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDIwLCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLFxuICAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLFxuICAweDZkLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDZmLCAweDcwLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDIwLFxuICAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDQ2LCAweDY1LCAweDYyLCAweDcyLCAweDc1LCAweDYxLCAweDcyLFxuICAweDc5LCAweDczLCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLFxuICAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDNjLCAweDcwLCAweDYxLCAweDcyLCAweDYxLFxuICAweDZkLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDYxLCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDQ5LCAweDUzLCAweDRmLCAweDJkLCAweDM4LCAweDM4LCAweDM1LCAweDM5LCAweDJkLCAweDMxLCAweDIyLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDY5LCAweDczLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDczLCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLFxuICAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDNhLFxuICAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDYzLCAweDY1LCAweDZjLCAweDY1LCAweDYyLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZkLCAweDY5LFxuICAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDJmLCAweDZhLCAweDczLCAweDJmLCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLFxuICAweDc5LCAweDJlLCAweDY5LCAweDczLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDc0LFxuICAweDYxLCAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNkLCAweDIyLCAweDY5LCAweDc0LCAweDIwLCAweDYzLFxuICAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDNjLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYyLFxuICAweDY1LCAweDY1LCAweDZlLCAweDBkLCAweDBhLCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDY5LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY4LCAweDY1LCAweDIwLFxuICAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LFxuICAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLFxuICAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDZmLCAweDIwLCAweDczLFxuICAweDYxLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDQ1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY1LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYyLFxuICAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDcwLCAweDY4LCAweDZmLFxuICAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDY2LCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDUyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLFxuICAweDZmLCAweDY2LCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLCAweDY5LCAweDZjLCAweDc5LFxuICAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDc0LCAweDY1LFxuICAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDZjLCAweDY1LCAweDYxLCAweDc2LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDYxLFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY2LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDY5LCAweDc0LFxuICAweDc5LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDY1LCAweDZkLCAweDcwLCAweDY4LCAweDYxLFxuICAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDcyLCAweDY1LFxuICAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDIwLCAweDczLCAweDYxLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDY2LCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY0LCAweDY1LFxuICAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDc0LCAweDIwLCAweDY5LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDY2LFxuICAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDNlLCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDczLCAweDNhLCAweDZkLCAweDY1LCAweDcyLCAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDQ5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDZjLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDZlLCAweDIwLCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU5LFxuICAweDZmLCAweDcyLCAweDZiLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDBhLFxuICAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDQ1LFxuICAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLFxuICAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDUzLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDcyLCAweDIyLCAweDNlLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDRkLFxuICAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDcyLCAweDY5LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMyLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDZkLCAweDY5LCAweDc4LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDc4LFxuICAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDY0LCAweDc1LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LFxuICAweDY5LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDJmLFxuICAweDQ0LCAweDU0LCAweDQ0LCAweDIwLCAweDU4LCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDZlLCAweDYzLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDc3LCAweDZmLCAweDc1LFxuICAweDZjLCAweDY0LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDIwLCAweDZjLCAweDY1LFxuICAweDY3LCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDJlLCAweDY5LCAweDZlLCAweDZlLFxuICAweDY1LCAweDcyLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQxLCAweDY3LCAweDcyLCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDIwLCAweDc0LCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDc5LCAweDY1LCAweDYxLFxuICAweDcyLCAweDczLCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDJjLCAweDczLCAweDYxLCAweDZlLCAweDczLFxuICAweDJkLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDUwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLFxuICAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDYyLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LCAweDYxLCAweDZjLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDczLFxuICAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZjLCAweDYxLFxuICAweDY5LCAweDZkLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LFxuICAweDYyLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LFxuICAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDZlLCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDcyLCAweDc5LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDZmLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDYzLCAweDYxLCAweDZlLFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDZmLCAweDQ3LCAweDRkLCAweDU0LCAweDUzLCAweDc0LFxuICAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDQxLCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJjLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDYyLFxuICAweDZmLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc1LFxuICAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDc0LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDRkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDY1LFxuICAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDZlLCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDIwLFxuICAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDYzLFxuICAweDcyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDY0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDZjLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDYyLCAweDYxLFxuICAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDYxLFxuICAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLFxuICAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDczLCAweDc0LFxuICAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc5LCAweDIwLCAweDY0LCAweDZmLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDc1LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY4LCAweDZmLFxuICAweDcyLCAweDc0LCAweDJkLCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLFxuICAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDZjLCAweDY5LCAweDc0LCAweDc0LFxuICAweDZjLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZkLCAweDZkLFxuICAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJjLCAweDNjLCAweDJmLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLFxuICAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMzLCAweDQ5LCAweDZlLCAweDY0LFxuICAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDJkLCAweDczLFxuICAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDJlLCAweDIwLCAweDQxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LFxuICAweDY4LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZmLFxuICAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDczLCAweDc0LCAweDYxLCAweDcyLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDZmLCAweDcyLFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDYxLCAweDc0LFxuICAweDY1LCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDY4LFxuICAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDNjLCAweDJmLCAweDZmLFxuICAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDBkLCAweDBhLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY1LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDZlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLFxuICAweDYyLCAweDY1LCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDY5LCAweDZlLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LFxuICAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDczLCAweDc1LFxuICAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDYxLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDczLCAweDczLCAweDY5LFxuICAweDcwLCAweDcwLCAweDY5LCAweDcwLCAweDZmLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYyLFxuICAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDc3LCAweDY4LCAweDYxLFxuICAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc3LCAweDczLCAweDY5LCAweDc0LCAweDc1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDU0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDU0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDc0LCAweDZkLCAweDZmLFxuICAweDczLCAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LFxuICAweDczLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZkLCAweDZlLCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZjLCAweDc1LFxuICAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDNmLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDY1LCAweDY0LCAweDQ4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDRkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LFxuICAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDNjLFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDU0LCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLFxuICAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZkLCAweDYxLFxuICAweDY0LCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDY1LCAweDZkLFxuICAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDUwLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY5LCAweDYxLCAweDZlLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDZmLCAweDIwLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc1LFxuICAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDY5LFxuICAweDZjLCAweDc5LCAweDQ5LCAweDZlLCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDJjLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDY0LFxuICAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDc0LFxuICAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDZjLFxuICAweDc5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDZjLCAweDc5LCAweDZmLFxuICAweDc1LCAweDc0LCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDczLCAweDc0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDZlLCAweDczLCAweDNhLFxuICAweDZmLCAweDY3LCAweDNkLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LFxuICAweDQzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZkLCAweDYxLFxuICAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDZlLCAweDc1LFxuICAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LFxuICAweDIyLCAweDNlLCAweDBhLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDc0LFxuICAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDYxLCAweDYyLCAweDY1LCAweDYzLFxuICAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LCAweDc1LFxuICAweDZjLCAweDIwLCAweDYxLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDZlLFxuICAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDYxLCAweDZkLFxuICAweDZmLCAweDZlLCAweDY3LCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLFxuICAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDNiLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDc5LCAweDJjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LFxuICAweDY0LCAweDc0LCAweDZmLCAweDIwLCAweDZiLCAweDY1LCAweDY1LCAweDcwLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLFxuICAweDY1LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZjLCAweDY5LCAweDc2LFxuICAweDY1LCAweDIwLCAweDYyLCAweDY5LCAweDcyLCAweDc0LCAweDY4LCAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDQzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDYzLCAweDc1LCAweDc0LCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDNiLFxuICAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYxLCAweDZjLFxuICAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDYxLCAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDczLFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDQyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDIyLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDcxLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LFxuICAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDIwLFxuICAweDJmLCAweDNlLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDQ1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDBkLCAweDBhLFxuICAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLCAweDQzLCAweDZmLCAweDZlLCAweDc2LFxuICAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LFxuICAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LFxuICAweDNkLCAweDIyLCAweDMxLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDZjLFxuICAweDc5LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDYzLCAweDY5LCAweDc0LCAweDY5LCAweDdhLFxuICAweDY1LCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDczLFxuICAweDNhLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDNjLCAweDc0LFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDc2LCAweDYxLCAweDZjLCAweDY5LFxuICAweDY0LCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDY0LFxuICAweDZmLCAweDc3LCAweDZlLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LFxuICAweDczLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDZkLFxuICAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDZmLCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc3LFxuICAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIyLCAweDNlLCAweDc0LCAweDY4LFxuICAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc5LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY2LCAweDY5LCAweDZlLCAweDYxLFxuICAweDZjLCAweDZjLCAweDc5LCAweDYxLCAweDIwLCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDBkLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDY2LCAweDYxLCAweDczLFxuICAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc3LFxuICAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDcyLCAweDIyLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDYyLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLFxuICAweDY1LCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDY4LCAweDY1LCAweDY5LCAweDcyLCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDQ0LCAweDc1LCAweDcyLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LFxuICAweDI5LCAweDdiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDIwLFxuICAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDZlLCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNhLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LFxuICAweDY1LCAweDZlLCAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDY0LCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDZjLCAweDY5LCAweDYyLCAweDcyLCAweDY5LCAweDc1LCAweDZkLCAweDYxLFxuICAweDczLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDIwLFxuICAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDczLFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLFxuICAweDc1LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDYxLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY5LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY5LCAweDY1LCAweDczLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY1LCAweDY0LCAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLCAweDczLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJkLCAweDY0LCAweDYxLCAweDc5LCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDZmLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LFxuICAweDYzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LFxuICAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLFxuICAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY0LFxuICAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDYyLCAweDc1LCAweDc0LFxuICAweDIwLCAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDZmLCAweDZlLCAweDRkLCAweDZmLCAweDc1LFxuICAweDczLCAweDY1LCAweDRmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLFxuICAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDIwLFxuICAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDc0LCAweDczLFxuICAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDZkLCAweDc1LCAweDYzLFxuICAweDY4LCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDcyLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDYzLCAweDY4LCAweDY5LCAweDZjLFxuICAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDUwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLFxuICAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDczLCAweDc3LCAweDYxLCAweDcyLCAweDIwLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYyLFxuICAweDc5LCAweDIwLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDY1LFxuICAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDc1LCAweDczLFxuICAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDc4LFxuICAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDJlLCAweDc0LCAweDZmLCAweDIwLCAweDZkLFxuICAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLFxuICAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LCAweDY5LCAweDc0LCAweDZmLCAweDcyLFxuICAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LCAweDJlLCAweDUzLCAweDJlLCAweDcyLFxuICAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDcyLCAweDZmLFxuICAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LFxuICAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDMxLCAweDczLCAweDc0LCAweDIwLCAweDQ1LCAweDYxLCAweDcyLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDYzLFxuICAweDc1LCAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDcwLCAweDcyLCAweDY5LFxuICAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDJmLCAweDc0LCAweDY5LCAweDc0LFxuICAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDYzLCAweDYxLFxuICAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY4LCAweDY5LCAweDczLFxuICAweDY1LCAweDc4LCAweDcwLCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY0LCAweDQ2LCAweDYxLCAweDc2LFxuICAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDY5LCAweDc0LCAweDY5LCAweDdhLCAweDY1LCAweDZlLCAweDczLFxuICAweDY4LCAweDY5LCAweDcwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LFxuICAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDc0LCAweDZmLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLFxuICAweDZkLCAweDY5LCAweDZlLCAweDc1LCAweDczLCAweDNiLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLFxuICAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDc1LFxuICAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDZjLCAweDYxLCAweDc5LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLFxuICAweDMwLCAweDIyLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDY2LFxuICAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLFxuICAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LFxuICAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDc3LCAweDY1LFxuICAweDcyLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYyLCAweDc0LCAweDZlLCAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LFxuICAweDZlLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDRjLCAweDZmLCAweDcyLCAweDY0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDc3LCAweDZlLFxuICAweDQ1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDcwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLCAweDYyLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZmLCAweDcyLFxuICAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLFxuICAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLFxuICAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYyLCAweDZjLCAweDYxLCAweDYzLCAweDZiLFxuICAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LFxuICAweDI3LCAweDczLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDY3LCAweDZmLCAweDc2LCAweDY1LFxuICAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDU3LCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDZlLCAweDJjLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDYzLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDA5LCAweDA5LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDc0LCAweDY1LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LFxuICAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDZmLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDY1LFxuICAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc3LCAweDY5LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDc5LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDYxLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDZmLFxuICAweDc1LCAweDZjLCAweDY0LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDYxLFxuICAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYxLCAweDYzLCAweDYzLFxuICAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LFxuICAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY1LCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLFxuICAweDY5LCAweDNlLCAweDZmLCAweDY2LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDY5LCAweDY2LCAweDY1LFxuICAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDY5LCAweDY1LCAweDY0LCAweDYzLCAweDZjLFxuICAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDU3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDcwLCAweDcyLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRjLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDZjLCAweDc5LCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDY5LFxuICAweDZlLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDZjLFxuICAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNlLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDczLCAweDY1LCAweDZjLCAweDc2LCAweDY1LCAweDczLFxuICAweDJjLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDY4LCAweDY1LCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDcyLCAweDYxLFxuICAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDcyLCAweDY1LFxuICAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDQzLCAweDY4LCAweDY5LFxuICAweDZjLCAweDY0LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDUzLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY0LFxuICAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDY1LCAweDc3LCAweDczLCAweDZjLCAweDY1LCAweDc0LCAweDc0LFxuICAweDY1LCAweDcyLCAweDczLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDZjLCAweDY5LCAweDc2LFxuICAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDY1LCAweDczLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDZlLFxuICAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDc0LFxuICAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDcwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc4LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDIwLCAweDY5LCAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDQ3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZlLCAweDZmLCAweDZkLCAweDc5LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLFxuICAweDczLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDc5LFxuICAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLFxuICAweDY0LCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDcyLCAweDY5LCAweDczLCAweDY1LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDczLFxuICAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc3LCAweDY4LFxuICAweDY5LCAweDYzLCAweDY4LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDJlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZjLFxuICAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLFxuICAweDZlLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDYxLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDU0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDY1LCAweDc4LCAweDc0LFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNkLCAweDMyLCAweDIwLCAweDdjLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDczLCAweDc0LCAweDZmLFxuICAweDcyLCAweDc5LCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLFxuICAweDc0LCAweDZmLCAweDcwLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDcyLFxuICAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDQzLCAweDY4LCAweDcyLCAweDY5LFxuICAweDczLCAweDc0LCAweDY5LCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDIwLCAweDc0LFxuICAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDU0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDZkLCAweDY1LCAweDcyLFxuICAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDIwLCAweDY1LCAweDc2LCAweDY5LCAweDY0LFxuICAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY5LCAweDZlLFxuICAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLFxuICAweDZkLCAweDJmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDJjLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLFxuICAweDY1LCAweDZkLCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDIwLCAweDY2LCAweDY1LCAweDc3LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDZkLCAweDc1LFxuICAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDYxLCAweDZjLCAweDY5LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZlLCAweDY5LCAweDYxLCAweDJjLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDYxLFxuICAweDczLCAweDIwLCAweDYxLCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDJlLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDZkLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDA5LCAweDA5LCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDYxLFxuICAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLFxuICAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LFxuICAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDA5LCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLFxuICAweDJmLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDczLFxuICAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDYxLFxuICAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJlLCAweDQzLCAweDZmLCAweDZlLCAweDczLFxuICAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY1LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDY0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDZmLCAweDIwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDYxLFxuICAweDIwLCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDc1LCAweDZlLCAweDYzLFxuICAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY1LFxuICAweDczLCAweDc0LCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDYyLCAweDY1LFxuICAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDc3LCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDYxLFxuICAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDJjLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZkLCAweDczLCAweDY1LCAweDZjLCAweDc2LCAweDY1LCAweDczLCAweDJlLCAweDcxLCAweDc1LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLFxuICAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLFxuICAweDY1LCAweDIwLCAweDYxLCAweDczLCAweDc0LCAweDZmLCAweDIwLCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU0LCAweDY4LFxuICAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLFxuICAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDQ5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDRmLCAweDY2LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDY4LCAweDY5LFxuICAweDczLCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDIwLCAweDY5LCAweDczLCAweDY5LCAweDczLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LFxuICAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLFxuICAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LFxuICAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDc4LFxuICAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDJjLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDU3LCAweDY1LCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDczLFxuICAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDczLCAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDZlLCAweGM0LCAweDhkLFxuICAweDY5LCAweDZlLCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY5LCAweDZmLFxuICAweDczLCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLFxuICAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDYzLCAweDZlLCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweGMzLCAweGFkLCAweDYxLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDcwLCAweDc1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLFxuICAweDYxLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDY1LCAweGMzLCAweGIxLCAweDYxLCAweDYzLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY3LCAweDZmLCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDczLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LFxuICAweDcyLCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDYxLCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY1LCAweDY3LCAweGMzLCAweGFkLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDcwLCAweDcyLCAweDY5LFxuICAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LFxuICAweDYzLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY5LCAweDYxLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY0LFxuICAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDYzLCAweDcyLFxuICAweDY1LCAweDYzLCAweDY5LCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LFxuICAweDczLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDczLCAweDc1LCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDYyLCAweDY5LCAweDcyLCAweDczLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDYzLCAweDY5LFxuICAweGMzLCAweGIzLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY5LCAweDYyLCAweDZjLCAweDY1LFxuICAweDczLCAweDY1LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LFxuICAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDZjLFxuICAweDc1LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY0LCAweDYxLCAweDZjLCAweDYxLFxuICAweDZhLCAweDYxLCAweDcyLCAweDYxLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDY0LFxuICAweDZmLCAweDczLCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDYxLCAweDY0LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY2LCAweDZmLFxuICAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDY2LCAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDc1LCAweDc0LCAweDZmLFxuICAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDZlLCAweDY5LFxuICAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LFxuICAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY1LFxuICAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYzLCAweDY5LCAweDY0LCAweDZmLCAweDczLCAweDY5LCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLFxuICAweDZjLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDYxLCAweDc2LCAweDY1LCAweDY3LCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY5LCAweDY0LFxuICAweDYxLCAweDY0LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNhLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDNhLFxuICAweDIyLCAweDIwLCAweDNhLCAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDYxLFxuICAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDczLCAweDcwLCAweDY1LFxuICAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJmLCAweDJmLCAweDNjLCAweDIxLFxuICAweDViLCAweDQzLCAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLCAweDBhLCAweDRmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLFxuICAweDY5LCAweDdhLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LFxuICAweDYyLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDY4LCAweDY1LFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDY0LCAweDY1LCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDJkLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDNjLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDNkLFxuICAweDIyLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDNjLCAweDJmLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDJmLFxuICAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDc3LCAweDY5LFxuICAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDI4LCAweDIwLCAweDIxLCAweDY5LFxuICAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDNiLCAweDYxLCAweDcwLCAweDcwLCAweDZjLFxuICAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLFxuICAweDY3LCAweDZmLCAweDZmLCAweDY3LCAweDZjLCAweDY1LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDNjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLFxuICAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDMxLFxuICAweDM4LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDYxLCAweDZlLFxuICAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDYyLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LFxuICAweDczLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY5LCAweDc2LCAweDY5LCAweDZjLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMxLCAweDM5LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDMyLCAweDMwLCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLFxuICAweDc5LCAweDJkLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLFxuICAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDJmLFxuICAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDZlLCAweDZmLFxuICAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI3LCAweDc1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDI3LCAweDI5LCAweDQ2LCAweDc1LCAweDcyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDJjLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LFxuICAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDQ4LFxuICAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDNkLCAweDIwLCAweDcwLCAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDcyLCAweDYxLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDY3LCAweDZmLCAweDc0LCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDUzLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDY2LCAweDcyLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc1LCAweDZlLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDUwLFxuICAweDY1LCAweDZlLCAweDZlLCAweDczLCAweDc5LCAweDZjLCAweDc2LCAweDYxLCAweDZlLCAweDY5LCAweDYxLCAweDQxLCAweDczLFxuICAweDIwLCAweDYxLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDJjLCAweDNjLCAweDY4LCAweDc0LFxuICAweDZkLCAweDZjLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDJmLCAweDczLCAweDc1LCAweDcwLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDYxLCAweDY0LFxuICAweDY1LCAweDZjLCAweDcwLCAweDY4LCAweDY5LCAweDYxLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDI5LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDc0LFxuICAweDZmLCAweDcwLCAweDNhLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDZjLCAweDY3LCAweDY1LCAweDc0LCAweDQxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LFxuICAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDY1LCAweDczLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNkLCAweDY2LFxuICAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDdiLCAweDczLCAweDc1LCAweDYyLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDJlLCAweDY0LCAweDc0LFxuICAweDY0LCAweDIyLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDY3LCAweDY1LCAweDZmLCAweDY3LCAweDcyLFxuICAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDQzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LFxuICAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI3LCAweDJjLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDY3LCAweDcyLCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDc1LFxuICAweDcyLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDIwLCAweDMxLFxuICAweDYxLCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDQ1LCAweDZlLFxuICAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDY5LCAweDY2LCAweDcyLFxuICAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDZkLCAweDZmLFxuICAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDQ0LCAweDY1LCAweDZkLCAweDZmLCAweDY3LCAweDcyLCAweDYxLFxuICAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDczLCAweDI5LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDY0LCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LCAweDY3LCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDczLCAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDQ1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDI4LCAweDU1LCAweDUzLCAweDI5LCAweDYxLCAweDcwLFxuICAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDQzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDI4LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZlLCAweDczLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDJlLCAweDIwLCAweDQ4LFxuICAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZjLFxuICAweDZjLCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDYyLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNkLCAweDIyLCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNiLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDc3LCAweDY1LFxuICAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LFxuICAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDY1LCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNiLFxuICAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDZhLCAweDc1LFxuICAweDcyLCAweDY5LCAweDczLCAweDY0LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIyLCAweDNlLCAweDNjLCAweDYxLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDQ5LCAweDZlLCAweDIwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJiLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDNkLCAweDIyLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDI2LCAweDY3LCAweDc0LCAweDNiLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLFxuICAweDYzLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDZlLCAweDYxLCAweDc2LFxuICAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDNlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDY1LCAweDZlLCAweDczLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLFxuICAweDIyLCAweDYxLCAweDZjLCAweDZjLCAweDIyLCAweDIwLCAweDc2LCAweDY5LCAweDZmLCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDc0LCAweDcyLFxuICAweDc1LCAweDY1LCAweDNiLCAweDUzLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDJmLCAweDJmLCAweDQ1LCAweDRlLFxuICAweDIyLCAweDIwLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDc2LCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY0LCAweDY5LFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDQzLCAweDY4LCAweDYxLFxuICAweDZkLCAweDcwLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDYzLCAweDYxLCAweDcwLCAweDYxLFxuICAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLFxuICAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLCAweDdkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDYxLCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDUwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LFxuICAweDI4LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LCAweDc1LCAweDZlLFxuICAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDZmLCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLFxuICAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDQ3LFxuICAweDc1LCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDc3LCAweDY4LCAweDY1LCAweDZjLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDY3LCAweDYxLFxuICAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDJjLCAweDBhLCAweDJlLCAweDZlLCAweDZmLFxuICAweDZlLCAweDc0LCAweDZmLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDYyLCAweDczLCAweDY1LCAweDcyLCAweDc2LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDY2LCAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNhLCAweDIwLCAweDMxLFxuICAweDcwLCAweDc4LCAweDIwLCAweDdiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LFxuICAweDNhLCAweDMxLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDMwLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMxLFxuICAweDZkLCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY5LFxuICAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDYxLCAweDYzLCAweDY4LCAweDY5LFxuICAweDY1LCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDRhLCAweDYxLCAweDc2LCAweDYxLCAweDUzLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY4LFxuICAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDQyLCAweDcyLCAweDZmLCAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDczLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLCAweDc0LFxuICAweDY0LCAweDNlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLFxuICAweDBhLCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLFxuICAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDI3LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDZlLCAweDYxLCAweDc2LFxuICAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDYxLCAweDZjLCAweDY2LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDZjLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDIyLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDNhLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDYxLFxuICAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDc2LFxuICAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLFxuICAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDRhLCAweDY1LCAweDczLCAweDc1LCAweDczLCAweDIwLFxuICAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDUwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LFxuICAweDZlLCAweDNhLCAweDcyLCAweDJjLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDI4LCAweDI5LCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDY1LFxuICAweDczLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLFxuICAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLFxuICAweDZjLCAweDcwLCAweDY4LCAweDYxLCAweDYyLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDczLFxuICAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDZkLCAweDYxLCAweDZlLCAweDc5LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDNhLFxuICAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNiLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLFxuICAweDY1LCAweDc0LCAweDA5LCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZlLCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDYyLCAweDZmLCAweDcyLCAweDY4LCAweDZmLCAweDZmLCAweDY0LCAweDYxLFxuICAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDcyLCAweDY1LFxuICAweDY0LCAweDc1LCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDRlLCAweDZmLCAweDZlLCAweDY1LFxuICAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDJjLCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDY1LFxuICAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDI4LCAweDczLCAweDY1LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDc3LFxuICAweDI5LCAweDJlLCAweDIyLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLFxuICAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDA5LCAweDA5LFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDBhLCAweDA5LCAweDA5LFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDYxLCAweDYzLCAweDYzLCAweDY1LFxuICAweDZjLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ4LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDQ2LCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDY1LCAweDcyLCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJmLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLFxuICAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LFxuICAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDdiLFxuICAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDNhLCAweDc0LCAweDcyLFxuICAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDczLCAweDZmLCAweDZkLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZlLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLFxuICAweDY5LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY3LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LFxuICAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQxLCAweDIwLCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZlLCAweDc0LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDNlLCAweDNjLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYyLFxuICAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDYxLFxuICAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDZlLCAweDY1LCAweDY5LFxuICAweDY3LCAweDY4LCAweDYyLCAweDZmLCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDY5LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDA5LCAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDUzLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDc0LCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LFxuICAweDY3LCAweDY1LCAweDY0LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLFxuICAweDYyLCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLFxuICAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LFxuICAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQ5LCAweDZlLFxuICAweDIwLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDZjLCAweDY5LFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYxLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDZlLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDZjLCAweDQyLCAweDc1LCAweDYyLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDY0LFxuICAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDcyLCAweDIwLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZlLFxuICAweDIwLCAweDUzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDQ5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDcyLCAweDYzLCAweDNkLFxuICAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LFxuICAweDc0LCAweDc5LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY4LFxuICAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDcyLCAweDY1LCAweDIwLFxuICAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLFxuICAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDYxLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDZmLCAweDY1LCAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZlLCAweDZmLCAweDc3LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDIwLCAweDYxLCAweDczLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDYxLCAweDcyLFxuICAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLFxuICAweDUzLCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDYxLCAweDZlLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLFxuICAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDRlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDczLCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDc1LFxuICAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LFxuICAweDcyLCAweDY1LCAweDY0LCAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDBhLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLFxuICAweDZlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDYxLFxuICAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDc0LFxuICAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDcwLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDZlLCAweDZmLCAweDIwLFxuICAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDcwLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY4LCAweDY1LFxuICAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLFxuICAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDYxLCAweDZjLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY5LCAweDZlLFxuICAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQzLCAweDZmLCAweDZlLFxuICAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LFxuICAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY5LCAweDZlLFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDc4LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDZjLCAweDc5LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDNhLCAweDIwLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLFxuICAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLFxuICAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDZlLFxuICAweDIwLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDY4LCAweDZmLCAweDc3LFxuICAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDc5LFxuICAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDcyLCAweDY1LCAweDZhLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDczLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDZjLCAweDY1LCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LFxuICAweDI5LCAweDdiLCAweDQ5LCAweDc0LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLFxuICAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LFxuICAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDQxLCAweDcyLFxuICAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDc0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDYxLCAweDcyLCAweDcyLCAweDYxLFxuICAweDZlLCAweDY3LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LFxuICAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDZmLFxuICAweDc1LCAweDY3LCAweDY4LCAweDc4LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDYyLCAweDZmLCAweDZjLCAweDY0LFxuICAweDNiLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDcyLFxuICAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDY5LCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDU3LCAweDZmLCAweDcyLCAweDZjLFxuICAweDY0LCAweDIwLCAweDU3LCAweDYxLCAweDcyLCAweDIwLCAweDQ5LCAweDQ5LCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY5LFxuICAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLFxuICAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LFxuICAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDQzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDY2LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDZkLFxuICAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDUwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDIyLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLFxuICAweDczLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc1LFxuICAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDZlLFxuICAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDc1LCAweDcwLFxuICAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LFxuICAweDYzLCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNhLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYyLFxuICAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDY1LCAweDYzLFxuICAweDYxLCAweDZkLCAweDY1LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LFxuICAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDNlLFxuICAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY1LCAweDc2LFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDc4LCAweDcwLFxuICAweDZjLCAweDYxLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDc2LCAweDY5LFxuICAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDYxLFxuICAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLFxuICAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDQ5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDcyLCAweDYxLFxuICAweDZlLCAweDY3LCAweDY1LCAweDZmLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDY4LCAweDYxLCAweDZjLCAweDY2LCAweDIwLFxuICAweDZmLCAweDY2LCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLCAweDcwLFxuICAweDIyLCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDJjLCAweDNjLFxuICAweDJmLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDczLCAweDYxLFxuICAweDY5LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc3LCAweDY4LCAweDY5LCAweDZjLFxuICAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDc5LCAweDcwLCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLFxuICAweDZmLCAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDY0LFxuICAweDIwLCAweDYyLCAweDc5LCAweDY5LCAweDZlLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLFxuICAweDc0LCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LFxuICAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDZhLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDYyLCAweDY1LCAweDc0LFxuICAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLFxuICAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDQ5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDIwLCAweDRmLCAweDYzLCAweDY1LCAweDYxLCAweDZlLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDc3LFxuICAweDZmLCAweDcyLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDI3LCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc5LCAweDY1LCAweDYxLFxuICAweDcyLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDU0LCAweDY4LCAweDY5LCAweDczLFxuICAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZjLCAweDc5LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLFxuICAweDBhLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDczLCAweDcwLFxuICAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNlLCAweDczLCAweDc1LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LFxuICAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDU0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLFxuICAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDIwLCAweDYxLCAweDZlLFxuICAweDY0LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLFxuICAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY3LCAweDY5LCAweDc2LFxuICAweDY1LCAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDZlLFxuICAweDY0LCAweDY5LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBhLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLFxuICAweDYxLCAweDczLCAweDY5LCAweDczLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLFxuICAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLFxuICAweDczLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDIyLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYxLCAweDc1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDcyLCAweDc0LFxuICAweDY4LCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZjLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLFxuICAweDYyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZlLCAweDc0LFxuICAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDZjLCAweDY1LCAweDY2LCAweDc0LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc1LFxuICAweDcwLCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDY0LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDZlLFxuICAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLFxuICAweDZlLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LFxuICAweDIwLCAweDYxLCAweDc0LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDY1LCAweDc4LCAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDQ4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDUyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLFxuICAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcyLCAweDY1LCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDc1LCAweDYzLCAweDYzLFxuICAweDY1LCAweDY1LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY2LCAweDcyLFxuICAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc5LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYxLFxuICAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDNjLCAweDZjLFxuICAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDc1LFxuICAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDNhLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIyLFxuICAweDNlLCAweDUyLCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLCAweDY1LFxuICAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ5LFxuICAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDJjLCAweDY4LCAweDZmLFxuICAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDYxLCAweDZlLCAweDY0LCAweDIwLFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDY2LCAweDY1LCAweDI4LCAweDYxLCAweDZjLCAweDczLCAweDZmLFxuICAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDNlLCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDY1LCAweDZkLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LFxuICAweDYxLCAweDc2LCAweDY1LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZlLFxuICAweDZmLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDY0LFxuICAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDQ5LCAweDZlLFxuICAweDIwLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDJjLCAweDYyLCAweDcyLCAweDZmLFxuICAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LFxuICAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDYxLCAweDcyLFxuICAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLFxuICAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDZjLCAweDc5LCAweDczLCAweDY1LCAweDc0LCAweDU0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDc2LCAweDY5LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDI4LCAweDI5LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDZmLCAweDc1LCAweDczLCAweDZjLCAweDc5LCAweDcyLCAweDY1LFxuICAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDc2LCAweDZmLFxuICAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDYxLCAweDZlLCAweDIwLCAweDY1LFxuICAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDc3LCAweDY5LCAweDczLCAweDY1LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLFxuICAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LFxuICAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJjLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDY1LFxuICAweDZjLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY0LFxuICAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDcyLCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDcyLFxuICAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDcwLFxuICAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDY1LCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZmLCAweDc3LCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDc5LCAweDczLFxuICAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDU0LCAweDY1LCAweDc4LCAweDc0LCAweDc3LCAweDYxLCAweDczLFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDY1LFxuICAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDZkLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDY5LFxuICAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY5LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY1LFxuICAweDZlLCAweDczLCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDYxLCAweDc0LCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDc3LCAweDZmLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDYzLFxuICAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDUzLCAweDY1LFxuICAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLFxuICAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDY3LFxuICAweDY5LCAweDZlLCAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDMxLCAweDJmLCAweDVlLCAweDVjLCAweDczLCAweDJiLFxuICAweDdjLCAweDVjLCAweDczLCAweDJiLCAweDI0LCAweDJmLCAweDY3LCAweDY1LCAweDI5LCAweDdiLCAweDc0LCAweDY4LCAweDcyLFxuICAweDZmLCAweDc3LCAweDIwLCAweDY1LCAweDdkLCAweDNiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDYxLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDczLCAweDY1LCAweDcwLCAweDYxLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDIwLFxuICAweDYxLCAweDZlLCAweDY0LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDA5LFxuICAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDY1LCAweDc0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LFxuICAweDczLCAweDY4LCAweDIwLCAweDI4LCAweDU1LCAweDRiLCAweDI5LCAweDY1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDIwLCAweDI4LCAweDU1LCAweDUzLCAweDI5LCAweGQwLCAweDljLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLFxuICAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGExLCAweGQxLCAweDgwLCAweGQwLCAweGJmLCAweGQxLCAweDgxLFxuICAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGJmLCAweGQxLCAweDgxLCAweGQwLFxuICAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGJmLCAweGQxLCAweDgxLCAweGQwLCAweGJhLFxuICAweGQwLCAweGJlLCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGE5LCAweGU2LCAweGFkLCAweGEzLCAweGU5LCAweGFiLCAweDk0LCAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LFxuICAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LCAweGU3LFxuICAweGI5LCAweDgxLCAweGU0LCAweGJkLCAweDkzLCAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LCAweGU2LCAweDljLFxuICAweDg5LCAweGU5LCAweDk5LCAweDkwLCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDhmLCAweGI4LCAweGU0LCAweGJhLCAweGJhLFxuICAweGU2LCAweGIwLCAweDkxLCAweGU2LCAweDk0LCAweGJmLCAweGU1LCAweGJhLCAweDljLCAweGU5LCAweDk4LCAweGJmLCAweGU5LFxuICAweDg3LCAweDhjLCAweGU1LCAweGI3LCAweGI0LCAweGU1LCAweGI3LCAweGI0LCAweGU3LCAweGE0LCAweGJlLCAweGU0LCAweGJjLFxuICAweDlhLCAweGU0LCAweGI4LCAweGJiLCAweGU0LCAweGI5LCAweDg5LCAweGU2LCAweDkzLCAweDhkLCAweGU0LCAweGJkLCAweDljLFxuICAweGU3LCAweGIzLCAweGJiLCAweGU3LCAweGJiLCAweDlmLCAweGU2LCAweDk0LCAweGJmLCAweGU3LCAweGFkLCAweDk2LCAweGU2LFxuICAweGIzLCAweDk1LCAweGU4LCAweGE3LCAweDg0LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY4LCAweDY1LCAweDcyLCAweDcyLCAweDYxLCAweDZkLCAweDY5LCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweGMzLCAweGIzLCAweDZlLCAweDY5LFxuICAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDYzLCAweDY5LCAweGMzLCAweGIzLFxuICAweDZlLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDY0LCAweDZmLCAweDczLFxuICAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDYzLCAweDY5LCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweGMzLCAweGExLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDZjLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDY0LCAweDZmLCAweDczLCAweDY0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDYyLCAweDYxLCAweDZhLFxuICAweDYxLCAweDY0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDYxLFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweDc5LCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDZkLCAweDY5LFxuICAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDY0LCAweDZmLCAweDRjLCAweDY5LFxuICAweDYyLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweGMzLCAweGExLCAweDYzLCAweDc0LCAweDY1LCAweDZlLFxuICAweDZmLCAweDczLCAweDY4LCAweDYxLCAweDYyLCAweDY5LCAweDc0LCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDYzLCAweDc1LCAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY0LFxuICAweDY5LCAweDczLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDY1LCAweDZjLCAweDY1LFxuICAweDYzLCAweDc0LCAweDcyLCAweGMzLCAweGIzLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDYxLCAweDcwLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDZmLFxuICAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZjLFxuICAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LCAweDdhLCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYxLCAweDY1LCAweDZlLCAweDY2LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDYxLCAweDY0LFxuICAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDczLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDczLFxuICAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDc1LFxuICAweDYyLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGEwLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLFxuICAweGIxLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDhiLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQwLCAweGJiLFxuICAweGQxLCAweDhjLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGI1LFxuICAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLFxuICAweGI4LCAweGQxLCAweDg1LCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQwLCAweGIwLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLFxuICAweDgxLCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweGEwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLFxuICAweDljLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGI0LFxuICAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJlLFxuICAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJiLFxuICAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweDljLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJhLFxuICAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLFxuICAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweDljLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIyLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQxLFxuICAweDhiLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLFxuICAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDgzLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQxLCAweDhjLCAweGQwLCAweDllLCAweGQwLCAweGI0LFxuICAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLFxuICAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgzLCAweGQwLCAweGIwLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLFxuICAweGQxLCAweDg5LCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLFxuICAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGIzLFxuICAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLFxuICAweGI4LCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI5LFxuICAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDg1LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDg4LCAweGQwLCAweGJlLCAweGQwLCAweGJmLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGIwLFxuICAweGQwLCAweGI2LCAweGQwLCAweGI0LCAweGQxLCAweDhiLCAweGQwLCAweGI5LCAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQwLFxuICAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQxLCAweDgzLFxuICAweGQwLCAweGJmLCAweGQwLCAweGJmLCAweGQxLCAweDhiLCAweGQwLCAweGIyLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLFxuICAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGJmLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGIyLCAweGQxLCAweDhiLFxuICAweGQwLCAweGI5LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLFxuICAweDhjLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQwLCAweGIzLCAweGQwLCAweGI4LFxuICAweGQwLCAweGJmLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGIxLCAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDgyLCAweGQwLCAweGJhLCAweGQxLCAweDgzLFxuICAweGQwLCAweGJmLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLFxuICAweGJiLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJjLFxuICAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg1LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLFxuICAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGEwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGEyLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJjLCAweGQwLCAweGIyLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI5LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJmLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQxLFxuICAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQxLCAweDgxLFxuICAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJmLCAweGQwLFxuICAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQwLCAweGJlLCAweGQxLCAweDg5LCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGI5LFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJlLFxuICAweGQxLCAweDg5LCAweGQxLCAweDhjLCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI2LCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGJhLFxuICAweGQwLCAweGI4LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQxLCAweDgyLCAweGQwLCAweGExLFxuICAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJjLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGIwLFxuICAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLFxuICAweGJiLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQwLCAweGJkLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgwLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDg0LCAweGQwLCAweGI4LCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJjLCAweGQxLCAweDhiLCAweGQxLCAweDgzLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJkLFxuICAweGQxLCAweDhmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLFxuICAweDg1LCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLFxuICAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQxLFxuICAweDhmLCAweGQwLCAweGJkLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDhmLCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJkLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQwLFxuICAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGJiLFxuICAweGQxLCAweDhjLCAweGQwLCAweGI3LCAweGQxLCAweDhmLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLFxuICAweDgzLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGEyLCAweGQwLCAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgwLCAweGQxLCAweDhjLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhmLCAweGQxLFxuICAweDg2LCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQxLCAweDg5LCAweGQwLCAweGI4LCAweGQxLCAweDgyLFxuICAweGQxLCAweDhiLCAweGQwLCAweDliLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQxLCAweDg4LCAweGQwLCAweGI4LCAweGQwLFxuICAweGI1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIyLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LFxuICAweDhiLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDg3LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweDlmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFkLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDgxLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlmLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweDg1LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDlkLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDlmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LFxuICAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDk3LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGEwLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI3LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI1LFxuICAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLFxuICAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LFxuICAweDlhLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLFxuICAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDljLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDlmLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIyLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDg1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LFxuICAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFjLFxuICAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFjLFxuICAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDhjLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE1LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGQ4LCAweGFhLCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGI3LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ4LCAweGE4LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGI3LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDgxLFxuICAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LCAweGQ4LCAweGI1LFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIyLCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE5LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ4LCAweGFmLCAweGQ4LCAweGE4LFxuICAweGQ4LCAweGIxLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ5LCAweDg4LCAweGQ5LCAweDgyLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ5LCAweDg3LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFkLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFkLCAweGQ5LCAweDgyLCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDgyLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDgyLCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGFkLCAweGQ5LCAweDgxLCAweGQ5LCAweDg4LCAweGQ4LCAweGI4LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGI0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg3LCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDgyLCAweGQ4LCAweGIxLCAweGQ4LCAweGEyLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFkLCAweGQ5LFxuICAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg1LCAweGQ4LCAweGFjLCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg2LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LCAweGQ4LCAweGI3LCAweGQ5LFxuICAweDgxLCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ4LCAweGI3LCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LCAweGQ5LCAweDhhLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDgyLCAweGQ5LCAweDhhLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDg4LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGI3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ4LCAweGFlLCAweGQ4LCAweGI1LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGIyLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGFlLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGE5LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg3LCAweGQ4LCAweGFmLFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ4LCAweGFlLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFmLCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGJhLCAweGQ4LCAweGIxLCAweGQ5LCAweDgyLCAweGQ4LCAweGFhLCAweGQ4LCAweGI1LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGI4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDNkLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDY3LCAweDc1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDRkLCAweDYxLCAweDc0LCAweDY4LCAweDJlLCAweDcyLCAweDYxLCAweDZlLFxuICAweDY0LCAweDZmLCAweDZkLCAweDI4LCAweDI5LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZmLFxuICAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDUzLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDcyLCAweDYzLCAweDc1LCAweDZkLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDJlLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDQzLFxuICAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDI4LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc1LFxuICAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDIyLCAweDNlLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJlLFxuICAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRkLCAweDYxLCAweDczLCAweDczLCAweDYxLCAweDYzLCAweDY4LCAweDc1LFxuICAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDZlLCAweDc1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDNhLCAweDIzLCAweDY2LCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLFxuICAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDIwLCAweDZkLCAweDY5LCAweDczLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY1LCAweDZmLCAweDc1LCAweDczLCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDJmLCAweDZkLCAweDYxLCAweDc0LFxuICAweDY4LCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDcwLCAweDczLCAweDc5LCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZkLCAweDY1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDUzLCAweDc1LCAweDcwLCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDIwLFxuICAweDQzLCAweDZmLCAweDc1LCAweDcyLCAweDc0LCAweDZmLCAweDYzLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDQxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJjLCAweDRlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDZkLFxuICAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDcwLCAweDc4LCAweDNiLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LFxuICAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDQ1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc0LCAweDZmLCAweDRjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDQzLCAweDYxLCAweDczLCAweDY1LCAweDI4LCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDJjLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDZkLCAweDYxLCAweDc4LCAweDZjLCAweDY1LCAweDZlLFxuICAweDY3LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDRkLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDcyLFxuICAweDYxLCAweDZlLCAweDY1LCAweDYxLCAweDZlLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDYxLCAweDZmLCAweDcyLCAweDY0LFxuICAweDY5LCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDYxLCAweDczLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDcyLCAweDY5LCAweDY3LFxuICAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDY4LCAweDY1LFxuICAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLFxuICAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDJlLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDUzLCAweDYxLCAweDZlLCAweDIwLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDI4LCAweDI5LCAweDdiLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLFxuICAweDIyLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDZmLCAweDcwLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDczLCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDI4LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLFxuICAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDcyLCAweDc0LFxuICAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQ3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDIwLCAweDQyLCAweDcyLFxuICAweDY5LCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY4LCAweDZmLCAweDZjLFxuICAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDNiLCAweDIwLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLFxuICAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDIwLCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LFxuICAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDBhLCAweDA5LCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLFxuICAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDI3LCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDIyLFxuICAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LFxuICAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDcwLCAweDZmLCAweDcwLFxuICAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLFxuICAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNhLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDNjLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDYyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc4LCAweDY5LCAweDZkLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDcwLCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLFxuICAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDdjLCAweDI2LFxuICAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDcyLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDc2LCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LFxuICAweDNkLCAweDIyLCAweDZmLCAweDY3LCAweDNhLCAweDJmLCAweDc4LCAweDJkLCAweDczLCAweDY4LCAweDZmLCAweDYzLCAweDZiLFxuICAweDc3LCAweDYxLCAweDc2LCAweDY1LCAweDJkLCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDRlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDZjLCAweDY1LCAweDczLCAweDczLCAweDJjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDQxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDYyLCAweDZmLCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZlLFxuICAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLFxuICAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDJjLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLFxuICAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDYxLCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LFxuICAweDY5LCAweDY0LCAweDc1LCAweDYxLCAweDZjLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY4LCAweDZmLCAweDZkLCAweDZmLCAweDczLCAweDY1LCAweDc4LCAweDc1LFxuICAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDNhLCAweDIwLCAweDIzLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDIwLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNlLCAweDcyLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDZjLFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDQ5LCAweDZlLCAweDY0LCAweDZmLCAweDJkLCAweDQ1LCAweDc1LCAweDcyLFxuICAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDc2LCAweDc1LCAweDZjLCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU5LCAweDZmLCAweDcyLCAweDZiLFxuICAweDIwLCAweDQzLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LFxuICAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LFxuICAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LFxuICAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDJlLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDQzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LCAweDYyLCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLFxuICAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDQ5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDIwLCAweDczLFxuICAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDJlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLFxuICAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDY0LFxuICAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LFxuICAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcwLCAweDcwLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDY4LCAweDcyLFxuICAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDZlLFxuICAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDZjLCAweDY1LFxuICAweDczLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLFxuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJmLCAweDZhLFxuICAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LFxuICAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDcyLCAweDYxLCAweDZlLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZkLCAweDY0LFxuICAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDYxLCAweDczLCAweDc5LCAweDZlLCAweDYzLCAweDIwLCAweDNkLCAweDIwLFxuICAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDNiLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDczLFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDczLCAweDY1LCAweDY1LCAweDZkLCAweDczLCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDYxLCAweDcyLFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDc0LCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDc0LFxuICAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDIwLCAweDY0LCAweDY1LFxuICAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDQ1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LFxuICAweDc1LCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDc2LCAweDY5LCAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDMyLCAweDMwLCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJjLCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLFxuICAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLFxuICAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDQ0LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLFxuICAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLFxuICAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDNhLCAweDQzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDJjLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDc1LFxuICAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDI3LCAweDczLCAweDIwLFxuICAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY2LCAweDY5LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDI4LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDIyLCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDYyLCAweDYxLCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY5LFxuICAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZhLCAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDY0LCAweDY5LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc4LCAweDY5LCAweDZkLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LFxuICAweDZmLCAweDc1LCAweDc0LCAweDNkLCAweDIyLCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU0LCAweDY1LCAweDczLCAweDc0LFxuICAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDY2LCAweDY5LCAweDZjLCAweDZkLCAweDIwLCAweDY0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDJkLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDJlLFxuICAweDY0LCAweDc0LCAweDY0LCAweDIyLCAweDNlLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDc1LCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLFxuICAweDYyLCAweDZmLCAweDZjLCAweDY0LCAweDNiLCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDA5LCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDZjLCAweDY5LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDZjLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLFxuICAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLFxuICAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLCAweDY1LFxuICAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDQ3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc0LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLFxuICAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDc0LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDA5LCAweDA5LCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc2LCAweDY5LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMxLCAweDM5LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJjLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDIwLFxuICAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcwLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDZkLCAweDZmLCAweDc1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDYyLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDYxLCAweDczLCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDcyLCAweDY1LCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDY0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDcwLCAweDYxLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDQ5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LFxuICAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDJkLCAweDYzLFxuICAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLFxuICAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDJjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDcwLCAweDcwLCAweDZmLFxuICAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDQ0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDZkLCAweDYxLFxuICAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDZjLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDYxLFxuICAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLFxuICAweDY4LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDc2LCAweDY5LCAweDZjLCAweDY5LCAweDdhLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LFxuICAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LFxuICAweDQ5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLFxuICAweDIyLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDRkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDc0LFxuICAweDcyLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDZmLFxuICAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LFxuICAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDZjLCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY1LCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDQ2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDUyLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLFxuICAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LFxuICAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDNlLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDczLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLFxuICAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LFxuICAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLCAweDY5LCAweDdhLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDYxLCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDc1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDYxLFxuICAweDY0LCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDc0LCAweDc3LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDc2LCAweDY5LCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDYxLFxuICAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDYzLCAweDY1LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LFxuICAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMyLCAweDMwLCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDQzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDc0LCAweDYyLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDY4LCAweDYxLFxuICAweDZjLCAweDY2LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LFxuICAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLFxuICAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDYyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDQ5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDZjLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDY5LCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDQ2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc1LCAweDYzLCAweDYzLFxuICAweDY1LCAweDY1LCAweDY0LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLFxuICAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDY0LCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDY2LFxuICAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDc0LFxuICAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDYxLCAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LFxuICAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDYxLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDc3LFxuICAweDY1LCAweDcyLCAweDY2LCAweDc1LCAweDZjLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYxLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LFxuICAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LFxuICAweDY4LCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZjLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDZlLCAweDZmLFxuICAweDc1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQ0LCAweDRmLCAweDIwLCAweDRlLCAweDRmLCAweDU0LCAweDIwLFxuICAweDQxLCAweDRjLCAweDU0LCAweDQ1LCAweDUyLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDJmLCAweDNmLFxuICAweDczLCAweDZmLCAweDcyLCAweDc0LCAweDNkLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDY0LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY5LFxuICAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLFxuICAweDc1LCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDZmLCAweDczLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDczLFxuICAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDUzLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDY2LFxuICAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LFxuICAweDIwLCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDNiLCAweDIwLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLFxuICAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDNiLCAweDIwLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDNhLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLFxuICAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLFxuICAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDYxLCAweDY4LCAweDYxLCAweDczLCAweDYxLCAweDIwLCAweDRkLFxuICAweDY1LCAweDZjLCAweDYxLCAweDc5LCAweDc1LCAweDZlLCAweDZmLCAweDcyLCAweDczLCAweDZiLCAweDIwLCAweDYyLCAweDZmLFxuICAweDZiLCAweDZkLCAweGMzLCAweGE1LCAweDZjLCAweDZlLCAweDZmLCAweDcyLCAweDczLCAweDZiLCAweDIwLCAweDZlLCAweDc5LFxuICAweDZlLCAweDZmLCAweDcyLCAweDczLCAweDZiLCAweDczLCAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDZlLCAweGM1LCAweGExLFxuICAweGM0LCAweDhkLCAweDY5LCAweDZlLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDYzLFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDIyLCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDYxLCAweDZkLCAweDYyLCAweDY5LFxuICAweDY3LCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLFxuICAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI3LCAweDJjLCAweDIwLCAweDI3LCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLFxuICAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZkLCAweDc1LFxuICAweDZjLCAweDc0LCAweDYxLCAweDZlLCAweDY1LCAweDZmLCAweDc1LCAweDczLCAweDZjLCAweDc5LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZlLCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDZkLFxuICAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDNhLFxuICAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDNlLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDY2LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLFxuICAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDNhLCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDNkLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDI1LCAweDMzLCAweDQxLCAweDI1LCAweDMyLCAweDQ2LCAweDI1LCAweDMyLCAweDQ2LCAweDNjLCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDZkLCAweDY1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLCAweDJmLCAweDY2LFxuICAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDdkLFxuICAweDI5LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLFxuICAweDJlLCAweDczLCAweDY1LCAweDc0LCAweDQxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LFxuICAweDI4LCAweDQxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNkLCAweDIwLCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQxLCAweDcyLCAweDcyLCAweDYxLCAweDc5LFxuICAweDI4LCAweDI5LCAweDNiLCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLFxuICAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDYyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDU1LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDIyLCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLFxuICAweDNiLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDJmLCAweDY2LCAweDYxLCAweDc2LCAweDY5LCAweDYzLFxuICAweDZmLCAweDZlLCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDNlLCAweDNkLCAweDI3LCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDI3LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDNjLCAweDZjLFxuICAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDYxLFxuICAweDZlLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBhLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDIyLCAweDIwLCAweDBhLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDY0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDJmLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDJlLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDIwLCAweDQxLCAweDYzLCAweDYzLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDY5LCAweDY0LFxuICAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LFxuICAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDJlLFxuICAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc4LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNkLCAweDIyLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDJkLCAweDJkLCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LFxuICAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLCAweDUwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDRkLCAweDY5LFxuICAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDIwLCAweDNjLFxuICAweDYxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LFxuICAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDZmLCAweDZlLCAweDZkLFxuICAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDcyLFxuICAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LFxuICAweDY0LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLFxuICAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDBhLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDczLCAweDIwLFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLFxuICAweDY1LCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLFxuICAweDNhLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDIwLFxuICAweDdiLCAweDQyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDJkLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDJlLCAweDY0LCAweDc0LCAweDY0LFxuICAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDY5LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYxLFxuICAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDI5LCAweDNiLFxuICAweDIwLCAweDZhLCAweDczLCAweDJlLCAweDY5LCAweDY0LCAweDIwLCAweDNkLCAweDIwLCAweDY5LCAweDY0LCAweDIyLCAweDIwLFxuICAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDIyLCAweDcyLFxuICAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDUyLCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDQzLCAweDYxLCAweDc0LCAweDY4LCAweDZmLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDZkLCAweDY5LFxuICAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDZmLFxuICAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDIwLFxuICAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDYzLCAweDZmLCAweDZkLCAweDYyLFxuICAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDZkLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDc3LFxuICAweDJlLCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDI4LFxuICAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLFxuICAweDNlLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLFxuICAweDJmLCAweDYxLCAweDQ5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDJjLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDZjLCAweDY1LFxuICAweDY2LCAweDc0LCAweDIyLCAweDIwLCAweDQzLCAweDdhLCAweDY1LCAweDYzLCAweDY4LCAweDIwLCAweDUyLCAweDY1LCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDRiLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLFxuICAweDIyLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDYzLCAweDZmLCAweDZkLFxuICAweDY1LCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcwLFxuICAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDNjLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLFxuICAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLFxuICAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDI3LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDBhLFxuICAweDNjLCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDI4LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDZiLFxuICAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDA5LCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLFxuICAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLFxuICAweDc1LCAweDc0LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDcwLCAweDYxLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDcyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLCAweDY2LFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDYyLCAweDZmLCAweDZlLCAweDIwLCAweDY0LCAweDY5LCAweDZmLCAweDc4LCAweDY5LFxuICAweDY0LCAweDY1LCAweDBhLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDYxLFxuICAweDcyLCAweDYzLCAweDY4LCAweDJkLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDU0LCAweDY5LCAweGUxLCAweGJhLFxuICAweGJmLCAweDZlLCAweDY3LCAweDIwLCAweDU2LCAweDY5LCAweGUxLCAweGJiLCAweDg3LCAweDc0LCAweDYzLCAweDY4LCAweDYxLFxuICAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDMwLFxuICAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDNjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDIyLCAweDIwLCAweDI5LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDNlLCAweDBhLCAweDBhLCAweDQ0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY1LCAweDYzLCAweDYzLCAweDZjLCAweDY1LCAweDczLCAweDY5LCAweDYxLFxuICAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY4LFxuICAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LFxuICAweDc5LCAweDNlLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDY4LCAweDYxLCAweDczLCAweDIwLFxuICAweDZlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDY5LCAweDZlLFxuICAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDYxLFxuICAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDY5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LFxuICAweDJkLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZkLCAweDY1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDc0LCAweDcyLFxuICAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDI3LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDc3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDcyLCAweDIwLCAweDZlLFxuICAweDZmLCAweDc0LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLFxuICAweDZjLCAweDczLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLFxuICAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDYxLCAweDIwLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZlLFxuICAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDcwLCAweDYxLFxuICAweDcyLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJlLCAweDIwLCAweDQ4LCAweDZmLFxuICAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDQxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYyLFxuICAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDc0LCAweDczLFxuICAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDNjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDNkLCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLFxuICAweDczLCAweDc0LCAweDIyLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLFxuICAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDZjLCAweDY5LCAweDZiLCAweDY1LFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYxLCAweDZjLFxuICAweDczLCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDY3LFxuICAweDZlLCAweDNkLCAweDIyLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLCAweDZkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDY1LFxuICAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBkLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLFxuICAweDcwLCAweDIyLCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDYyLCAweDY5LCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDBkLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LFxuICAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY3LCAweDc1LFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDIwLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LFxuICAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZjLCAweDZmLFxuICAweDcyLCAweDNhLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDYzLFxuICAweDY5LCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDY0LCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIwLCAweDNjLFxuICAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDQ1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDYxLFxuICAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDNiLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNhLCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LFxuICAweDZlLCAweDY0LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDczLCAweDcwLCAweDYxLFxuICAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDIwLCAweDYxLCAweDZjLFxuICAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNjLCAweDJmLFxuICAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDYxLFxuICAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LFxuICAweDZlLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDU1LCAweDZlLCAweDY5LFxuICAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY5LFxuICAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDU2LCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLFxuICAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDMxLCAweDcwLCAweDc4LCAweDY1LCAweDc4LCAweDcwLCAweDZjLFxuICAweDYxLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDcyLFxuICAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDA5LFxuICAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDc0LCAweDZmLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDcwLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDY5LCAweDZlLFxuICAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDczLFxuICAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDI4LFxuICAweDRkLCAweDYxLCAweDc0LCAweDY4LCAweDJlLCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZkLCAweDI4LCAweDI5LFxuICAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDQzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDZmLFxuICAweDcwLCAweDZjLCAweDY1LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LFxuICAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMxLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY5LFxuICAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LFxuICAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDBhLFxuICAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDIwLCAweDc1LCAweDczLFxuICAweDY1LCAweDY0LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LFxuICAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDNhLCAweDYyLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDVmLCAweDY5LCAweDY0LFxuICAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDYxLFxuICAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDBkLFxuICAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLFxuICAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDc4LCAweDRkLCAweDRjLCAweDQ4LCAweDc0LCAweDc0LCAweDcwLCAweDUyLCAweDY1LCAweDcxLCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDY1LCAweDcxLFxuICAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDZjLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDY5LCAweDZkLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LCAweDcyLCAweDY2LCAweDYxLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LFxuICAweDY5LCAweDY3LCAweDZlLCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDVmLCAweDczLCAweDY1LFxuICAweDc0LCAweDQ0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDY1LCAweDczLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDQ5LCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY2LFxuICAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDQ0LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY1LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDIwLCAweDcyLFxuICAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDNjLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDcwLCAweDY1LFxuICAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDI4LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDBkLFxuICAweDY5LCAweDY2LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDY5LFxuICAweDY2LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDRlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDcwLCAweDY1LCAweDIyLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDQxLCAweDczLCAweDczLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDBhLCAweDNjLCAweDJmLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDZjLCAweDZmLCAweDYzLFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLFxuICAweDIwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDI4LFxuICAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LFxuICAweDYxLCAweDZjLCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLFxuICAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLFxuICAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDc1LCAweDcyLFxuICAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDNiLCAweDYzLCAweDZmLCAweDZjLCAweDZmLFxuICAweDcyLCAweDNhLCAweDIzLCAweDY2LCAweDY2LCAweDY2LCAweDdkLCAweDBhLCAweDJlLCAweDBhLCAweDNjLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LFxuICAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDNlLFxuICAweDBkLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLFxuICAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLFxuICAweDY1LCAweDY0LCAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDYzLCAweDY1LCAweDZjLCAweDY1LCAweDYyLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc1LCAweDY5LCAweDczLCAweDY4LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYyLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDIwLFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDZmLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNlLCAweDNjLCAweDIxLFxuICAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDY5LFxuICAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDZkLFxuICAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDczLFxuICAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLFxuICAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDYxLCAweDc2LCAweDY1LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIyLCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDczLFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDZjLCAweDY2LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDIyLFxuICAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDQ5LCAweDQ5LCAweDJjLCAweDIwLCAweDQ4LCAweDZmLCAweDZjLCAweDc5LCAweDIwLCAweDUyLCAweDZmLFxuICAweDZkLCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LFxuICAweDcyLCAweDIwLCAweDZmLCAweDc3LCAweDZlLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDY0LFxuICAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLCAweDIwLCAweDY1LFxuICAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDY3LCAweDcyLFxuICAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDcyLCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LFxuICAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDZlLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDYxLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLFxuICAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LFxuICAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY1LCAweDczLCAweDcwLCAweDY1LFxuICAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYyLFxuICAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LFxuICAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDZkLFxuICAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDYxLFxuICAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDYyLCAweDc5LCAweDQ4LFxuICAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLFxuICAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLFxuICAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY4LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ4LCAweDY5LCAweDczLFxuICAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDc0LCAweDZmLCAweDIwLCAweDczLFxuICAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDY3LFxuICAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLFxuICAweDIwLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY4LFxuICAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc3LFxuICAweDY5LCAweDc0LCAweDY4LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDcwLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDcxLCAweDIyLCAweDA5LCAweDA5LCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDcyLCAweDY1LCAweDcwLFxuICAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDZkLCAweDYxLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDY1LFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LFxuICAweDZlLCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDYzLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY4LCAweDY1LCAweDYxLFxuICAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDJjLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDI5LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLFxuICAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDczLCAweDcyLCAweDcwLCAweDczLCAweDZiLCAweDZmLFxuICAweDY4LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDczLCAweDZiLCAweDY5LCAweDc0LCAweDY5LCAweGUxLCAweGJhLCAweGJmLFxuICAweDZlLCAweDY3LCAweDIwLCAweDU2LCAweDY5LCAweGUxLCAweGJiLCAweDg3LCAweDc0LCAweGQwLCAweGEwLCAweGQxLCAweDgzLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGI5LCAweGQxLCAweDgwLCAweGQxLFxuICAweDgzLCAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGI5LCAweDY5LCAweDZlLFxuICAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLFxuICAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLFxuICAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLFxuICAweDhiLCAweGQwLCAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGIyLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQxLCAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDhiLCAweGQwLCAweDlkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJiLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGIyLCAweGQxLCAweDgwLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQxLCAweDhmLCAweGQxLCAweDgxLCAweGQwLFxuICAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQxLCAweDhmLCAweGQxLCAweDgxLFxuICAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LFxuICAweGQwLCAweGEzLCAweGQwLCAweGJhLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLFxuICAweDhiLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLFxuICAweGQxLCAweDhiLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI5LCAweGQxLCAweDgxLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQxLFxuICAweDg5LCAweGQxLCAweDhjLCAweGQxLCAweDhlLCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDgwLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQwLFxuICAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LFxuICAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweDkzLCAweGQwLFxuICAweGJiLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDhmLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQxLFxuICAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLFxuICAweDhmLCAweGQwLCAweGExLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQxLCAweDgzLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDgzLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLFxuICAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLFxuICAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQxLCAweDg4LFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQxLCAweDgwLFxuICAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJhLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGEwLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDg5LFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGI2LCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDgyLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGE2LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGI1LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE2LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIzLCAweGQ4LCAweGFjLCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDgyLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI2LCAweGQ4LCAweGJhLCAweGQ4LCAweGI3LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGFkLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LFxuICAweGFlLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDgxLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDgxLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFhLCAweGQ5LCAweDgyLCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGI3LCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGFjLCAweGQ4LCAweGFhLCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFkLCAweGQ4LCAweGE5LCAweGQ4LCAweGI5LCAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGI3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LFxuICAweGFmLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFlLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGJhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweDYzLCAweDc1LCAweDcyLFxuICAweDczLCAweDZmLCAweDcyLCAweDNhLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNiLCAweDNjLFxuICAweDJmLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLFxuICAweDIwLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDIyLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LFxuICAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDJmLCAweDYxLFxuICAweDNlLCAweDIwLCAweDdjLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLFxuICAweDNjLCAweDIxLCAweDY0LCAweDZmLCAweDYzLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNlLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDczLCAweDYzLCAweDcyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDNjLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLFxuICAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDIyLFxuICAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDY3LCAweDY1LCAweDc0LCAweDIyLFxuICAweDIwLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNlLCAweDBhLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LFxuICAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDJlLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDI4LCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDJkLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDNhLCAweDcyLCAweDY1LCAweDcwLCAweDcyLFxuICAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDczLCAweDc1LFxuICAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLFxuICAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDIyLCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDZmLCAweDc1LCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDY2LFxuICAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDBhLCAweDIwLCAweDIwLCAweDNjLCAweDY0LCAweDY5LCAweDc2LFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDIyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLCAweDZlLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLFxuICAweDNjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDI5LCAweDJlLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDJlLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDYyLCAweDY1LCAweDYzLCAweDYxLFxuICAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDZmLFxuICAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LFxuICAweDNjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLFxuICAweDIyLCAweDJmLCAweDdkLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDdiLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LFxuICAweDZlLCAweDNhLCAweDMwLCAweDNiLCAweDQ1LCAweDZlLCAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYxLCAweDIwLCAweDZmLCAweDY2LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDJlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDBhLCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLFxuICAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDczLFxuICAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDQ5LCAweDZlLCAweDIwLCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDJjLCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDIwLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDczLCAweDIwLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDIwLFxuICAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDcyLCAweDY1LCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDBkLCAweDBhLCAweDA5LCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLCAweDZjLFxuICAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLCAweDJlLCAweDZhLCAweDczLFxuICAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDIwLFxuICAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLFxuICAweDY1LCAweDY1LCAweDZlLCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDZjLCAweDYxLCAweDZlLFxuICAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLFxuICAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDUwLCAweDYxLCAweDcyLCAweDc0LCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLFxuICAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLFxuICAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDRmLCAweDcyLCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDZmLCAweDc4LCAweDIwLCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDczLFxuICAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDNkLCAweDIyLCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZjLCAweDIwLCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRlLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDNhLCAweDc1LCAweDcyLCAweDZjLCAweDI4LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDcyLFxuICAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDIyLCAweDIwLCAweDY5LFxuICAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDRlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLFxuICAweDYxLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDcyLFxuICAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY2LCAweDcyLFxuICAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LFxuICAweDYxLCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLFxuICAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLFxuICAweDNkLCAweDIyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDc3LCAweDZmLCAweDc1LFxuICAweDZjLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LFxuICAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDVmLCAweDYzLCAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDNkLCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDY0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDQ5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDZlLFxuICAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDczLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDY1LCAweDYxLFxuICAweDZlLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDZlLFxuICAweDYxLCAweDZjLCAweDc5LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDczLCAweDc1LCAweDYzLCAweDYzLFxuICAweDY1LCAweDczLCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLFxuICAweDczLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDYxLCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDcyLCAweDY1LCAweDY4LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDQ4LCAweDY5LCAweDczLFxuICAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LFxuICAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LFxuICAweDY0LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDU1LCAweDZlLCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDNlLCAweDBhLCAweDA5LCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDczLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDcwLCAweDUwLCAweDcyLCAweDZmLCAweDcwLCAweDYxLCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLFxuICAweDZkLCAweDYxLCAweDY3LCAweDZlLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDUzLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ5LFxuICAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLFxuICAweDc0LCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LFxuICAweDdiLCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDIwLCAweDY5LCAweDZlLFxuICAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LFxuICAweDIyLCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZkLCAweDY0LCAweDYxLCAweDczLFxuICAweDY4LCAweDNiLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcwLCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLFxuICAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDc1LCAweDZjLCAweDNlLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYxLFxuICAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDc0LFxuICAweDY4LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLFxuICAweDc5LCAweDNhLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDNiLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDY5LCAweDczLFxuICAweDIwLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLFxuICAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LCAweDIwLCAweDI4LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLFxuICAweDkzLCAweDI5LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDY5LCAweDZjLFxuICAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDcyLFxuICAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LFxuICAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweGUwLCAweGE0LCAweDg5LFxuICAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLFxuICAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLFxuICAweGE1LCAweDg5LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE1LCAweDgzLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweGEyLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LFxuICAweDhjLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDliLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDg5LFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweDg4LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGEyLCAweGUwLCAweGE0LFxuICAweGJjLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFiLCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LFxuICAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLFxuICAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDliLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDliLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweDk4LFxuICAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGI3LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LFxuICAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgzLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI1LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE1LCAweDg3LCAweDcyLCAweDczLCAweDczLCAweDJiLCAweDc4LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc0LCAweDY5LFxuICAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDJkLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIyLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LFxuICAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLFxuICAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDc2LCAweDY1LCAweDcyLFxuICAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDc0LFxuICAweDJmLCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDZhLFxuICAweDczLCAweDIyLCAweDNlLCAweDJlLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLFxuICAweDIyLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDdkLCAweDI5LCAweDI4LCAweDI5LFxuICAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLFxuICAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDI5LCAweDNiLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLFxuICAweDY0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIwLCAweDczLFxuICAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDIyLFxuICAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLFxuICAweDcwLCAweDczLCAweDY1LCAweDNhLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDQyLCAweDYxLCAweDY4LCAweDYxLCAweDczLCAweDYxLFxuICAweDIwLCAweDQ5LCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDYxLCAweDQ1LCAweDZlLCAweDY3LFxuICAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LFxuICAweDNjLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDNhLCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY1LCAweDNkLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LFxuICAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDNhLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNiLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDYxLCAweDY0LCAweDY0LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDRjLCAweDY5LCAweDczLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDczLCAweDJlLCAweDZhLCAweDczLCAweDIyLFxuICAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDJmLCAweDY2LFxuICAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDJmLFxuICAweDNlLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDczLCAweDc5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDMxLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDUzLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDZjLCAweDY1LFxuICAweDY2LCAweDc0LCAweDNiLCAweDBhLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLFxuICAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDI4LCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDI5LFxuICAweDNiLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLFxuICAweDBhLCAweDNjLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY4LCAweDY1LFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDNiLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY2LCAweDZjLCAweDZmLFxuICAweDc3LCAweDNhLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZlLFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDYxLCAweDIwLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDIwLCAweDZlLCAweDZmLCAweDZlLCAweDY1LFxuICAweDNiLCAweDIyLCAweDNlLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDBhLCAweDIwLCAweDIwLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDMxLCAweDM1LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJlLFxuICAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDQ0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LCAweDZjLFxuICAweDc0LCAweDI4LCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LFxuICAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQyLCAweDc5LCAweDdhLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY1LCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLCAweDY1LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDdjLFxuICAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDdjLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDdjLCAweDc2LCAweDYxLFxuICAweDczLCAweDc0LCAweDIwLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY0LCAweDZmLCAweDZkLFxuICAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDUzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDU3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDIwLFxuICAweDU3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLFxuICAweDZjLCAweDZmLCAweDc3LCAweDIyLCAweDNlLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LFxuICAweDNhLCAweDMxLCAweDMwLCAweDMwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDJkLCAweDczLFxuICAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDcyLFxuICAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDQ0LCAweDY1LCAweDZkLCAweDZmLCAweDYzLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDYzLFxuICAweDIwLCAweDUwLCAweDYxLCAweDcyLCAweDc0LCAweDc5LCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDJjLCAweDJlLFxuICAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLFxuICAweDBhLCAweDA5LCAweDczLCAweDQyLCAweDc5LCAweDU0LCAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LFxuICAweDczLCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLFxuICAweDIwLCAweDI3LCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDI3LCAweDI3LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDI3LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDYxLFxuICAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDJmLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDNjLCAweDcwLCAweDYxLCAweDY3LFxuICAweDY1LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYyLCAweDYxLCAweDY4LCAweDYxLFxuICAweDczLCAweDYxLCAweDIwLCAweDQ5LCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDYxLCAweDY1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDI4LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDI5LCAweGNlLCAweDk1LCAweGNlLCAweGJiLCAweGNlLCAweGJiLCAweGNlLCAweGI3LCAweGNlLCAweGJkLCAweGNlLFxuICAweGI5LCAweGNlLCAweGJhLCAweGNlLCAweGFjLCAweGQxLCAweDg1LCAweGQxLCAweDgwLCAweGQwLCAweGIyLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQwLCAweGJmLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQxLCAweDhmLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQxLFxuICAweDhmLCAweGQwLCAweDk0LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLFxuICAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LFxuICAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweDk4LCAweGQwLFxuICAweGJkLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDgyLFxuICAweGQwLCAweDllLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLFxuICAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGI4LFxuICAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDgyLCAweGQwLFxuICAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJhLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg2LFxuICAweGQxLCAweDhiLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgzLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGJlLFxuICAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDhiLCAweGQwLCAweGJmLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLFxuICAweDhjLCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQxLCAweDhlLCAweGQxLCAweDgyLFxuICAweGQxLCAweDgxLCAweGQxLCAweDhmLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGI4LCAweGQwLCAweGIxLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJjLFxuICAweGQwLCAweGJmLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQwLFxuICAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLFxuICAweGIyLCAweGQwLCAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGI2LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLFxuICAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE4LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGI5LCAweGQ5LCAweDg4LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFkLCAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LFxuICAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE1LCAweGQ4LCAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg1LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweDcyLCAweDZmLCAweDYyLCAweDZmLFxuICAweDc0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZmLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDJlLFxuICAweDZhLCAweDcwLCAweDY3LCAweDdjLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDdjLCAweDc0LCAweDY4LCAweDc1LFxuICAweDZkLCAweDYyLCAweDdjLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDJlLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZjLCAweDY2LCAweDcyLFxuICAweDYxLCAweDZkLCAweDY1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLFxuICAweDIwLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLFxuICAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDYyLCAweDZmLCAweDZjLCAweDY0LFxuICAweDNiLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LFxuICAweDY5LCAweDZlLCAweDNhLCAweDMwLCAweDNiLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLFxuICAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDZjLFxuICAweDZmLCAweDc3LCAweDIyLCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDc3LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDY1LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDY1LFxuICAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDNjLCAweDJmLCAweDcwLFxuICAweDYxLCAweDY3LCAweDY1LCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDc0LCAweDIwLCAweDQ1LFxuICAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDYxLCAweDJlLCAweDYxLCAweDczLCAweDc5LCAweDZlLFxuICAweDYzLCAweDIwLCAweDNkLCAweDIwLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDNiLCAweDBkLCAweDBhLCAweDY5LCAweDZlLFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDYyLCAweDZmLFxuICAweDc1LCAweDc0LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY4LCAweDY1LFxuICAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDIyLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLFxuICAweDJmLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY0LCAweDY1LCAweDcyLCAweDY5LFxuICAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDI3LCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDBhLCAweDNjLCAweDJmLCAweDYyLCAweDZmLFxuICAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LFxuICAweDdhLCAweDY1LCAweDNhLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDZjLCAweDYxLCAweDZlLFxuICAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDQxLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDJjLFxuICAweDIwLCAweDQ4LCAweDY1LCAweDZjLCAweDc2LCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDJjLCAweDNjLCAweDJmLFxuICAweDYxLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDc0LCAweDY0LCAweDNlLFxuICAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLFxuICAweDNjLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLFxuICAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc3LCAweDcyLCAweDY5LCAweDc0LFxuICAweDY1LCAweDI4LCAweDI3LCAweDNjLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDBhLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLFxuICAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDYxLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDIyLCAweDNlLCAweDIwLCAweDc0LFxuICAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLFxuICAweDIyLCAweDNlLCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDI1LCAweDMzLCAweDQxLFxuICAweDI1LCAweDMyLCAweDQ2LCAweDI1LCAweDMyLCAweDQ2LCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDZkLCAweDYxLCAweDZlLFxuICAweDY5LCAweDY2LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDUwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDRkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LCAweDIyLCAweDNlLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDJkLCAweDY0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLFxuICAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDZmLFxuICAweDY2LCAweDIwLCAweDRlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDIwLCAweDQzLCAweDYxLCAweDcyLCAweDZmLCAweDZjLFxuICAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDY5LCAweDZjLFxuICAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDJlLCAweDYxLCAweDY0LCAweDY0LCAweDQ1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDRjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY0LCAweDY5LFxuICAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDUwLCAweDY4LCAweDZmLCAweDZlLCAweDY1LCAweDc0LCAweDY5LFxuICAweDYzLCAweDIwLCAweDQxLCAweDZjLCAweDcwLCAweDY4LCAweDYxLCAweDYyLCAweDY1LCAweDc0LCAweDY0LCAweDY1LCAweDYzLFxuICAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQyLCAweDY1LCAweDZlLCAweDZhLCAweDYxLCAweDZkLCAweDY5LCAweDZlLFxuICAweDIwLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDZjLCAweDY5LCAweDZlLCAweDcyLCAweDZmLCAweDZjLCAweDY1LFxuICAweDJkLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY3LCAweDYxLCAweDZkLCAweDY1LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDU3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDUwLFxuICAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDQ3LCAweDc1LCAweDc0LCAweDY1LCAweDZlLCAweDYyLFxuICAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDZjLCAweDY1LCAweDczLCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLFxuICAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDZkLCAweDY5LCAweDZlLFxuICAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNjLCAweDY5LCAweDZkLCAweDY3LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYzLFxuICAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDcyLCAweDY1LCAweDY0LCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDc1LCAweDZkLCAweDIwLCAweDZkLCAweDY1LFxuICAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDczLCAweDRlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY5LFxuICAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDYxLFxuICAweDY3LCAweDZmLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBkLCAweGNlLCAweDk1LCAweGNlLCAweGJiLCAweGNlLCAweGJiLCAweGNlLFxuICAweGI3LCAweGNlLCAweGJkLCAweGNlLCAweGI5LCAweGNlLCAweGJhLCAweGNlLCAweGFjLCAweDBhLCAweDc0LCAweDYxLCAweDZiLFxuICAweDY1LCAweDIwLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDJjLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRkLCAweDY5LCAweDYzLCAweDcyLFxuICAweDZmLCAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDIwLCAweDU3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLFxuICAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY1LCAweDc4LFxuICAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDczLCAweDY1LFxuICAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LFxuICAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDJlLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDczLCAweDZmLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRmLCAweDZjLCAweDY0LCAweDIwLFxuICAweDU0LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQxLCAweDY2LCAweDcyLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDczLFxuICAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDZmLFxuICAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDZkLFxuICAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDYxLCAweDYzLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LCAweDY3LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDYxLCAweDYyLFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLFxuICAweDNlLCAweDBhLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLFxuICAweDBhLCAweDYzLCAweDZmLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDJkLCAweDc0LCAweDY4LCAweDY5LCAweDcyLFxuICAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ0LCAweDc1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDJjLFxuICAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDY1LFxuICAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDZjLCAweDc5LCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDY5LFxuICAweDZmLCAweDc1LCAweDczLCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLFxuICAweDYxLCAweDczLCAweDczLCAweDc1LCAweDcyLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDYxLFxuICAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZmLCAweDYzLCAweDYzLFxuICAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDc1LCAweDczLCAweDY1LFxuICAweDY0LCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDYxLCAweDYyLCAweDczLFxuICAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDNiLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDcwLCAweDZmLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDNiLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLFxuICAweDNhLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNiLCAweDZhLCAweDYxLCAweDc4LCAweDJmLCAweDZjLFxuICAweDY5LCAweDYyLCAweDczLCAweDJmLCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJmLCAweDMxLCAweDJlLFxuICAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDYzLCAweDZmLFxuICAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLFxuICAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJmLCAweDYxLCAweDZlLCAweDY3LFxuICAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDNkLCAweDIyLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLFxuICAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDUwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDYzLFxuICAweDc5LCAweDIwLCAweDUwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDY1LFxuICAweDI4LCAweDIyLCAweDI1LCAweDMzLCAweDQzLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDI3LCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLFxuICAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDRmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDY4LCAweDYxLCAweDZlLCAweDY0LFxuICAweDJjLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDdjLCAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDdjLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDdjLCAweDMyLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZjLCAweDZmLFxuICAweDYxLCAweDc0LCAweDNhLCAweDZlLCAweDY5LCAweDZlLCAweDY1LCAweDc0LCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LFxuICAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LFxuICAweDc5LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDczLCAweDNiLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLFxuICAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDYyLCAweDZmLCAweDZjLFxuICAweDY0LCAweDNiLCAweDIwLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIyLFxuICAweDIwLCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLFxuICAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDM0LCAweDJmLCAweDZjLCAweDZmLCAweDZmLCAweDczLCAweDY1LCAweDJlLFxuICAweDY0LCAweDc0LCAweDY0LCAweDIyLCAweDNlLCAweDBhLCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDNjLCAweDJmLFxuICAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDNlLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LFxuICAweDNiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLFxuICAweDYyLCAweDZmLCAweDZjLCAweDY0LCAweDNiLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDNjLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDJkLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDczLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY0LFxuICAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDIwLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDY1LCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LFxuICAweDZkLCAweDZjLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LFxuICAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDIyLCAweDNlLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZjLCAweDZmLFxuICAweDYxLCAweDc0LCAweDNhLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNiLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LFxuICAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDNkLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDI1LCAweDMzLCAweDQxLCAweDI1LCAweDMyLCAweDQ2LCAweDI1LCAweDMyLFxuICAweDQ2LCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIwLCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLFxuICAweDJmLCAweDNlLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDQ4LCAweDYxLCAweDcyLCAweDc2LCAweDYxLCAweDcyLFxuICAweDY0LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDIwLFxuICAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDRmLCAweDc4LCAweDY2LCAweDZmLFxuICAweDcyLCAweDY0LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LFxuICAweDIwLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZiLCAweDY1LCAweDc5LCAweDc3LCAweDZmLFxuICAweDcyLCAweDY0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDRiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY0LCAweDZmLCAweDZkLCAweDY2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDY3LCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLFxuICAweDIwLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDcyLCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLFxuICAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc0LCAweDY1LCAweDZjLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLFxuICAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDYzLFxuICAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LFxuICAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LFxuICAweDc3LCAweDJlLCAweDYxLCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDZlLCAweDc1LCAweDZkLFxuICAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDU0LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIyLFxuICAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDIyLCAweDIwLCAweDc0LCAweDQ4LCAweDZmLCAweDZjLCAweDc5LCAweDIwLCAweDUyLCAweDZmLCAweDZkLCAweDYxLFxuICAweDZlLCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDZmLCAweDcyLCAweDYxLCAweDZjLCAweDZkLCAweDZmLFxuICAweDczLCAweDc0LCAweDIwLCAweDY1LCAweDc4LCAweDYzLCAweDZjLCAweDc1LCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZjLFxuICAweDc5LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLFxuICAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDUzLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDYzLCAweDc1LFxuICAweDZjLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDQzLCAweDQ5LCAweDQxLCAweDIwLCAweDU3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDIwLFxuICAweDQ2LCAweDYxLCAweDYzLCAweDc0LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDYxLCAweDZlLCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDNjLCAweDZjLCAweDY5LFxuICAweDNlLCAweDNjLCAweDY1LCAweDZkLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIyLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQxLCAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDY5LFxuICAweDYzLCAweDIwLCAweDRmLCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LFxuICAweDZjLCAweDc5LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDJjLCAweDczLFxuICAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDRmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLFxuICAweDY1LCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDQxLCAweDZlLCAweDIwLCAweDQ5LCAweDZlLCAweDc0LCAweDcyLFxuICAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQzLCAweDZmLCAweDZlLCAweDY2LCAweDY1LFxuICAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDcwLCAweDY1LFxuICAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDUwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDY4LCAweDYxLFxuICAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LFxuICAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDYxLCAweDY0LCAweDZhLCAweDYxLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDY0LCAweDY5LCAweDczLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDYyLCAweDZmLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc3LCAweDY5LFxuICAweDY0LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LFxuICAweDQ0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDUyLCAweDY1LCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDYxLCAweDc2LFxuICAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLFxuICAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDczLCAweDIwLCAweDYxLFxuICAweDZjLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDcyLCAweDY1LCAweDZjLFxuICAweDc5LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LFxuICAweDZlLCAweDIwLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc2LCAweDY5LFxuICAweDY0LCAweDY1LCAweDZmLCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDIwLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLFxuICAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LFxuICAweDc3LCAweDJlLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQyLCAweDZmLCAweDYxLCAweDcyLCAweDY0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDQ0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLCAweDY1LFxuICAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDdjLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDQ5LCAweDZlLCAweDIwLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDRkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDZmLFxuICAweDc0LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc5LCAweDY1LFxuICAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDBkLCAweDBhLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZkLCAweDY5LCAweDZlLFxuICAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBhLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDIwLCAweDczLCAweDc0LCAweDcyLCAweDZmLFxuICAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLFxuICAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDY0LFxuICAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDU0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDI4LCAweDIyLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDI5LCAweDNiLCAweDQ4LCAweDZmLFxuICAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNiLFxuICAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDY3LFxuICAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDMwLCAweDNiLCAweDIwLCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDU1LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LFxuICAweDJmLCAweDc4LCAweDJkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LFxuICAweDY5LCAweDc4LCAweDIyLCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDA5LCAweDA5LCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDBhLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDcwLFxuICAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweGQwLCAweDkxLCAweGQxLCAweDhhLCAweGQwLCAweGJiLCAweGQwLFxuICAweGIzLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGIxLFxuICAweGQxLCAweDhhLCAweGQwLCAweGJiLCAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgxLCAweGQwLFxuICAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGE0LCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQxLCAweDgwLFxuICAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDg5LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLFxuICAweGQxLCAweDg5LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGJjLFxuICAweGQxLCAweDhiLCAweGQwLCAweDllLCAweGQxLCAweDgyLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLFxuICAweGIyLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQxLCAweDgxLFxuICAweGQwLCAweGJmLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJiLCAweGQxLCAweDhiLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGI3LCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJmLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLFxuICAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg3LFxuICAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI0LCAweGQxLCAweDgzLCAweGQwLCAweGJhLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJmLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLFxuICAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDhlLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLFxuICAweDg1LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQxLCAweDhmLFxuICAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGIxLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGI4LCAweGQwLFxuICAweGI3LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LFxuICAweGQxLCAweDhmLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweDkwLCAweGQwLCAweGJiLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJhLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGExLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDlhLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweDg1LCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweDkxLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LFxuICAweGJjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGI2LFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGE2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGEzLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg5LCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGE3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweDg5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE3LCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGExLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg2LFxuICAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDhmLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgxLFxuICAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LFxuICAweDgxLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LFxuICAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg3LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIyLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE1LCAweGQ4LFxuICAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDg4LCAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ4LCAweGI0LCAweGQ5LFxuICAweDg4LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGE4LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGI1LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweDZiLCAweDY1LCAweDc5LCAweDc3LCAweDZmLCAweDcyLFxuICAweDY0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLFxuICAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDMxLCAweDM5LCAweDM5LCAweDM5LCAweDJmLCAweDc4LFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LFxuICAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNjLCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDc0LCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDY2LCAweDY2LCAweDIyLCAweDIwLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDNiLCAweDc0LCAweDZmLCAweDIwLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDc2LCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDYyLCAweDYxLCAweDYzLCAweDZiLFxuICAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLFxuICAweDIwLCAweDIzLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LFxuICAweDNkLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIzLCAweDIyLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDJmLFxuICAweDJmLCAweDQ1LCAweDRlLCAweDIyLCAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc3LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDU1LCAweDUyLFxuICAweDQ5LCAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDIyLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDZmLCAweDYzLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDI4LCAweDI3LFxuICAweDNjLCAweDczLCAweDYzLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIwLFxuICAweDYxLCAweDYyLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDNiLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLFxuICAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLFxuICAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LFxuICAweDJmLCAweDMxLCAweDM5LCAweDM5LCAweDM5LCAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDIwLFxuICAweDBhLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBkLCAweDBhLCAweDNjLFxuICAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDJmLFxuICAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLFxuICAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDY4LCAweDcyLFxuICAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY1LCAweDZlLFxuICAweDYzLCAweDZmLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LFxuICAweDIyLCAweDNmLCAweDNlLCAweDBhLCAweDc3LCAweDJlLCAweDYxLCAweDY0LCAweDY0LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDRjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDNmLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDc3LCAweDc3LCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIwLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDNhLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLFxuICAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LCAweDNkLCAweDIyLCAweDZmLCAweDY3LCAweDNhLFxuICAweDc0LCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LFxuICAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLFxuICAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDMwLFxuICAweDMwLCAweDI1LCAweDIyLCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDQ5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDIwLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZlLCAweDc0LFxuICAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLFxuICAweDZlLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDY3LCAweDYyLFxuICAweDRjLCAweDY5LCAweDYyLCAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQzLCAweDZmLFxuICAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDZkLCAweDQ1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQxLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDUzLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJlLCAweDY3LCAweDY1LFxuICAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQyLCAweDc5LCAweDQ5LCAweDY0LCAweDI4LFxuICAweDY5LCAweDY0LCAweDI5LCAweDY5LCAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZhLCAweDc1LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LCAweDI5LFxuICAweDNiLCAweDIwLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LFxuICAweDcyLCAweDc0LCAweDc5LCAweDNkLCAweDIyLCAweDZmLCAweDY3LCAweDNhLCAweGQwLCAweDkxLCAweGQxLCAweDhhLCAweGQwLFxuICAweGJiLCAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LFxuICAweDBhLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLFxuICAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDNlLCAweDUwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLFxuICAweDYzLCAweDc5LCAweDIwLCAweDUwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDUzLFxuICAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDUyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDZkLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDNlLCAweDNjLFxuICAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDcyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDU3LFxuICAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDZlLCAweDJjLCAweDIwLCAweDQ0LCAweDJlLFxuICAweDQzLCAweDJlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDYxLCAweDYzLFxuICAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LFxuICAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDJjLCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LFxuICAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LFxuICAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDRmLCAweDc4LCAweDY2LCAweDZmLCAweDcyLCAweDY0LCAweDIwLFxuICAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZkLCAweDY5LFxuICAweDczLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDJjLCAweDIwLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDJmLCAweDQzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY1LCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDY2LCAweDY2LCAweDY5LCAweDZjLCAweDY5LFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYyLFxuICAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDNlLFxuICAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLCAweDc0LFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLCAweDUyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQ5LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDBhLCAweDNjLFxuICAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDc3LFxuICAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDcyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDQ2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDIwLCAweDUyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRlLFxuICAweDZmLCAweDc0LCAweDY1LCAweDJjLCAweDIwLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYzLCAweDYxLFxuICAweDcwLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc5LFxuICAweDZmLCAweDc1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDU4LCAweDJkLCAweDU1LCAweDQxLCAweDJkLFxuICAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLFxuICAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDZmLCAweDY2LCAweDIwLCAweDQyLCAweDcyLCAweDY5LCAweDc0LFxuICAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDQzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDY4LFxuICAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LFxuICAweDYzLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDI4LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcxLCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMwLCAweDIyLCAweDIwLFxuICAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLFxuICAweDMwLCAweDIyLCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY5LFxuICAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDJlLCAweDIwLCAweDQ2LFxuICAweDZmLCAweDcyLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDcyLFxuICAweDY1LCAweDZlLCAweDIwLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDI1LCAweDMzLCAweDQ1LCAweDI1LCAweDMzLFxuICAweDQzLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI1LCAweDMzLCAweDQ1LCAweDIyLCAweDI5LFxuICAweDI5LCAweDNiLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDNjLCAweDZjLCAweDY5LCAweDNlLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDVmLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIyLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJkLCAweDY0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLFxuICAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDIwLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNjLCAweDZkLFxuICAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LFxuICAweDc2LCAweDNkLCAweDIyLCAweDU4LCAweDJkLCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LFxuICAweDI4LCAweDI5LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDI4LCAweDI5LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDc4LFxuICAweDJkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LFxuICAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LFxuICAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LFxuICAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNhLCAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDI3LCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDY4LCAweDZmLCAweDcyLCAweDc0LFxuICAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDJmLCAweDYxLCAweDNlLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIwLFxuICAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDU0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDcyLFxuICAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDNkLCAweDIyLCAweDU4LCAweDJkLCAweDU1LCAweDQxLCAweDJkLCAweDQzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLFxuICAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDIwLFxuICAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDIwLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDJmLCAweDc1LFxuICAweDZjLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLFxuICAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDIyLCAweDcxLCAweDIyLCAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDIyLCAweDIwLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDcwLCAweDZmLCAweDczLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LFxuICAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLFxuICAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LFxuICAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDM2LCAweDNlLCAweDNjLCAweDc1LCAweDZjLFxuICAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIyLCAweDIwLCAweDIwLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLFxuICAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDczLCAweDYzLCAweDcyLCAweDY1LCAweDY1LCAweDZlLFxuICAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIyLCAweDIwLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDJmLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDc1LCAweDc0LFxuICAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDNkLCAweDIyLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDBkLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLFxuICAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNlLFxuICAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDZlLCAweDY1LCAweDYzLFxuICAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLCAweDY5LCAweDZjLCAweDc5LCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDNjLCAweDIxLCAweDQ0LCAweDRmLFxuICAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDNjLCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLFxuICAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDNhLCAweDc2LCAweDZmLCAweDY5LCAweDY0LCAweDI4LCAweDMwLCAweDI5LCAweDNiLCAweDIyLCAweDY1LCAweDY2LFxuICAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDY2LCAweDY2LCAweDIyLCAweDIwLCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LFxuICAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LFxuICAweDY4LCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLFxuICAweDY0LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDIwLCAweDZkLCAweDY5LCAweDczLCAweDYzLCAweDZmLFxuICAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDY0LCAweDc1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDJjLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDc4LCAweDJkLCAweDY5LCAweDYzLFxuICAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDY0LCAweDY5LFxuICAweDcwLCAweDZjLCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LFxuICAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDZkLFxuICAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LFxuICAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLFxuICAweDc1LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDY5LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LFxuICAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDI2LCAweDYxLCAweDZkLCAweDcwLFxuICAweDNiLCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDYyLFxuICAweDczLCAweDcwLCAweDNiLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDcxLCAweDc1LCAweDY5LFxuICAweDc0LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY2LCAweDZjLCAweDY5LCAweDYzLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LFxuICAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDc5LCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc2LFxuICAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY0LCAweDY1LCAweDY3LCAweDcyLCAweDY1LCAweDY1LFxuICAweDczLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY5LCAweDY3LFxuICAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLFxuICAweDcwLCAweDY1LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LFxuICAweDc0LCAweDNkLCAweDIyLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDIwLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLFxuICAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLFxuICAweDY3LCAweDY1LCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZkLCAweDZmLFxuICAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZmLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDc3LCAweDY5LCAweDczLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDcwLCAweDY1LCAweDZlLCAweDY0LFxuICAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLFxuICAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LFxuICAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDcyLFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDZlLCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDIwLCAweDZmLCAweDYzLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweGMzLCAweGFhLCAweDczLCAweDIwLCAweDI4LCAweDQ1LCAweDc1LCAweDcyLFxuICAweDZmLCAweDcwLCAweDY1LCAweDc1LCAweDI5LCAweGQwLCAweGEzLCAweGQwLCAweGJhLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQxLCAweDk3LCAweGQwLCAweGJkLCAweGQxLCAweDgxLCAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLFxuICAweDgzLCAweGQwLCAweGJhLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQxLCAweDk3LCAweGQwLCAweGJkLCAweGQxLCAweDgxLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGEwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI4LCAweGQwLCAweGI5LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGI5LFxuICAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLFxuICAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDg0LFxuICAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLFxuICAweGI4LCAweGQxLCAweDgzLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJiLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDg1LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQwLCAweGJjLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweDk4LCAweGQwLCAweGJkLFxuICAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLFxuICAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGEwLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGJmLCAweGQxLCAweDgzLFxuICAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDgyLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQxLCAweDhlLCAweGQxLCAweDgyLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGFjLFxuICAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGI0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDgyLCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFkLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLFxuICAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LFxuICAweDIyLCAweDIwLCAweDczLCAweDY1LCAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDI4LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDYyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLFxuICAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDc3LCAweDc3LCAweDJlLCAweDIyLCAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDczLCAweDY4LFxuICAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIyLCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDY2LCAweDY2LCAweDIyLFxuICAweDIwLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDNjLFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLFxuICAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDYxLFxuICAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDBkLCAweDBhLCAweDNjLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDIwLCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLFxuICAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNhLFxuICAweDI4LCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDI5LCAweDJlLCAweDY3LCAweDY1LFxuICAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDI4LCAweDI5LCAweDdkLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNkLCAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLFxuICAweDMxLCAweDIyLCAweDIwLCAweDUwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDI3LCAweDczLCAweDIwLCAweDUyLFxuICAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDIwLCAweDNjLFxuICAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDY0LCAweDY1LFxuICAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDIzLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDdiLCAweDZkLCAweDY5LCAweDZlLCAweDJkLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNhLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDZmLCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDNjLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDcyLCAweDY1LFxuICAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDczLCAweDIwLFxuICAweDJmLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDNjLCAweDZmLCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLFxuICAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDIxLFxuICAweDJkLCAweDJkLCAweDViLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDQxLCAweDY5LCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDNlLCAweDBhLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweGUwLCAweGI4LCAweGEwLCAweGUwLCAweGI4LCAweGIyLCAweGUwLCAweGI4LCAweGE5LCAweGUwLCAweGI4LCAweGIyLFxuICAweGUwLCAweGI5LCAweDg0LCAweGUwLCAweGI4LCAweDk3LCAweGUwLCAweGI4LCAweGEyLCAweGUxLCAweDgzLCAweGE1LCAweGUxLFxuICAweDgzLCAweDkwLCAweGUxLCAweDgzLCAweGEwLCAweGUxLCAweDgzLCAweDk3LCAweGUxLCAweDgzLCAweGEzLCAweGUxLCAweDgzLFxuICAweDlhLCAweGUxLCAweDgzLCAweDk4LCAweGU2LCAweGFkLCAweGEzLCAweGU5LCAweGFiLCAweDk0LCAweGU0LCAweGI4LCAweGFkLFxuICAweGU2LCAweDk2LCAweDg3LCAweDIwLCAweDI4LCAweGU3LCAweGI5LCAweDgxLCAweGU5LCAweGFiLCAweDk0LCAweDI5LCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLFxuICAweGE0LCAweGExLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweDllLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDg1LCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFkLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDlhLCAweGUwLFxuICAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGExLCAweDY0LFxuICAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDc5LCAweDU0LCAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LFxuICAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDNjLCAweDZkLCAweDY1LCAweDc0LFxuICAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDc1LCAweDc0LFxuICAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDNhLCAweDc1LCAweDcyLCAweDZjLCAweDIyLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LFxuICAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDNlLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDMxLCAweDM5LCAweDM5LCAweDM5LFxuICAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLFxuICAweDY0LCAweDNkLCAweDIyLCAweDY3LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNkLCAweDIyLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLFxuICAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDIwLFxuICAweDNkLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LFxuICAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDc4LCAweDJkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLFxuICAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLFxuICAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLFxuICAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMxLFxuICAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDZlLFxuICAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLCAweDcwLFxuICAweDZjLCAweDY5LCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDMzLCAweDQzLCAweDJmLCAweDJmLCAweDQ0LCAweDU0LCAweDQ0LFxuICAweDIwLCAweDU4LCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDMxLCAweDJlLCAweDMwLCAweDIwLCAweDY1LCAweDZjLFxuICAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLFxuICAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LFxuICAweDY1LCAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDBhLFxuICAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LFxuICAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDRhLCAweDYxLCAweDc2LCAweDYxLCAweDUzLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLFxuICAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDZkLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LFxuICAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDI3LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDYzLFxuICAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc5LCAweDcwLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDcyLFxuICAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNkLCAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLFxuICAweDIyLCAweDIwLCAweDNkLCAweDI3LCAweDJiLCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDU1LCAweDUyLFxuICAweDQ5LCAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDNjLCAweDZjLFxuICAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDYxLCAweDZjLCAweDc0LCAweDY1LFxuICAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDBhLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDJjLFxuICAweDIwLCAweDc0LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDJjLCAweDIwLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDcyLCAweDZmLCAweDYyLCAweDZmLCAweDc0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZkLFxuICAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY3LFxuICAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDY4LCAweDY5LCAweDY0LFxuICAweDY0LCAweDY1LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDIyLCAweDNlLCAweGMyLCAweGI3LFxuICAweDNjLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDZjLCAweDNkLCAweDMwLFxuICAweDNiLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDdiLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDNhLCAweDIwLCAweDc1LCAweDcyLFxuICAweDZjLCAweDI4LCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDZjLCAweDY5LFxuICAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDA5LCAweDA5LFxuICAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDIyLCAweDIwLFxuICAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNkLCAweDIyLFxuICAweDc0LCAweDcyLCAweDc1LCAweDNlLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDJmLCAweDZmLCAweDcwLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDNjLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDIyLCAweDIwLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDY4LFxuICAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDcyLCAweDY1LCAweDNkLCAweDI4LCAweDZlLFxuICAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDI5LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDU0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDI4LCAweDI5LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweGMzLFxuICAweGFhLCAweDczLCAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDIwLCAweDQyLCAweDcyLCAweDYxLCAweDczLCAweDY5LCAweDZjLFxuICAweDI5LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LFxuICAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI3LCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDgwLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LFxuICAweGQxLCAweDhmLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGIyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI3LCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDhmLFxuICAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJkLCAweGQwLCAweGIwLCAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDUwLCAweDU1LCAweDQyLCAweDRjLCAweDQ5LCAweDQzLCAweDIwLCAweDIyLFxuICAweDZlLCAweDc0LCAweDJkLCAweDU0LCAweDc5LCAweDcwLCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDNjLCAweDZkLCAweDY1LFxuICAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LFxuICAweDNkLCAweDIyLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDJmLCAweDJmLCAweDQ1LCAweDRlLCAweDIyLCAweDIwLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDc4LCAweDZkLCAweDZjLFxuICAweDZlLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LFxuICAweDc3LCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDMzLCAweDQzLCAweDJmLCAweDJmLCAweDQ0LCAweDU0LCAweDQ0LCAweDIwLFxuICAweDU4LCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDMxLCAweDJlLCAweDMwLCAweDIwLCAweDU0LCAweDQ0LCAweDU0LFxuICAweDQ0LCAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDMxLCAweDJkLCAweDc0LCAweDcyLCAweDYxLCAweDZlLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LFxuICAweDJlLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDU0LCAweDUyLCAweDJmLCAweDc4LCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDMxLCAweDJmLCAweDcwLCAweDY1LCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDc0LCAweDY1LFxuICAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDI3LCAweDNiLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDRlLCAweDZmLCAweDY0LCAweDY1LCAweDJlLCAweDY5LCAweDZlLCAweDczLFxuICAweDY1LCAweDcyLCAweDc0LCAweDQyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDNjLCAweDY5LCAweDZlLCAweDcwLFxuICAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LFxuICAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZhLCAweDczLCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI5LFxuICAweDJlLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDY5LCAweDZkLCAweDYxLFxuICAweDY3LCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDU1LCAweDQxLCAweDJkLCAweDQzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLFxuICAweDBhLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDY4LFxuICAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDNjLCAweDZjLFxuICAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDNkLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDNjLCAweDYxLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LFxuICAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LFxuICAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLFxuICAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDYxLCAweDJlLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLFxuICAweDNkLCAweDIwLCAweDI3LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LFxuICAweDNkLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDY0LCAweDc0LCAweDY0LFxuICAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDZlLFxuICAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDMzLCAweDQzLFxuICAweDJmLCAweDJmLCAweDQ0LCAweDU0LCAweDQ0LCAweDIwLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDM0LCAweDJlLFxuICAweDMwLCAweDMxLCAweDIwLCAweDU0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDc5LCAweDU0LCAweDYxLCAweDY3LFxuICAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LFxuICAweDI5LCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDNjLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDIyLCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLFxuICAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDQyLCAweDc5LCAweDQ5LCAweDY0LCAweDI4LCAweDNkLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDJlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDI4LCAweDI3LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LFxuICAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDI3LCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDY0LFxuICAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLFxuICAweDc5LCAweDU0LCAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LCAweDczLCAweDZlLCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDQzLCAweDJmLCAweDJmLCAweDQ0LCAweDU0LFxuICAweDQ0LCAweDIwLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDM0LCAweDJlLCAweDMwLCAweDMxLCAweDIwLCAweDU0LFxuICAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY5LCAweDc0LCAweDNjLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLFxuICAweDczLCAweDIyLCAweDNlLCAweDBhLCAweDBhLCAweDNjLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLFxuICAweDIyLCAweDNlLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDJlLCAweDY0LCAweDc0LCAweDY0LCAweDIyLCAweDNlLFxuICAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDZlLCAweDczLCAweDNkLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDQzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDJkLCAweDU0LCAweDc5LCAweDcwLCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLFxuICAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDY4LCAweDc0LCAweDZkLCAweDZjLFxuICAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDc1LCAweDc0LCAweDY2LFxuICAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDZlLCAweDZmLCAweDZlLFxuICAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDNjLCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDc3LCAweDc3LCAweDJlLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LFxuICAweDNlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQxLCAweDhmLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJiLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLFxuICAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgyLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI0LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLFxuICAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGFiLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg5LFxuICAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDllLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDg4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLFxuXSk7XG5cbi8vIFVzZWQgYnkgdGhlIGJyb3dzZXIgdmVyc2lvblxuZXhwb3J0cy5pbml0ID0gZnVuY3Rpb24oKSB7XG4gIHJldHVybiBleHBvcnRzLmRpY3Rpb25hcnk7XG59O1xuIiwgIi8qIENvcHlyaWdodCAyMDEzIEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG5cbiAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbiAgIENvbGxlY3Rpb24gb2Ygc3RhdGljIGRpY3Rpb25hcnkgd29yZHMuXG4qL1xuXG52YXIgZGF0YSA9IHJlcXVpcmUoJy4vZGljdGlvbmFyeS1kYXRhJyk7XG5leHBvcnRzLmluaXQgPSBmdW5jdGlvbigpIHtcbiAgZXhwb3J0cy5kaWN0aW9uYXJ5ID0gZGF0YS5pbml0KCk7XG59O1xuXG5leHBvcnRzLm9mZnNldHNCeUxlbmd0aCA9IG5ldyBVaW50MzJBcnJheShbXG4gICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgNDA5NiwgIDkyMTYsIDIxNTA0LCAzNTg0MCwgNDQwMzIsXG4gNTMyNDgsIDYzNDg4LCA3NDc1MiwgODcwNDAsIDkzNjk2LCAxMDA4NjQsIDEwNDcwNCwgMTA2NzUyLCAxMDg5MjgsIDExMzUzNixcbiAxMTU5NjgsIDExODUyOCwgMTE5ODcyLCAxMjEyODAsIDEyMjAxNixcbl0pO1xuXG5leHBvcnRzLnNpemVCaXRzQnlMZW5ndGggPSBuZXcgVWludDhBcnJheShbXG4gIDAsICAwLCAgMCwgIDAsIDEwLCAxMCwgMTEsIDExLCAxMCwgMTAsXG4gMTAsIDEwLCAxMCwgIDksICA5LCAgOCwgIDcsICA3LCAgOCwgIDcsXG4gIDcsICA2LCAgNiwgIDUsICA1LFxuXSk7XG5cbmV4cG9ydHMubWluRGljdGlvbmFyeVdvcmRMZW5ndGggPSA0O1xuZXhwb3J0cy5tYXhEaWN0aW9uYXJ5V29yZExlbmd0aCA9IDI0O1xuIiwgImZ1bmN0aW9uIEh1ZmZtYW5Db2RlKGJpdHMsIHZhbHVlKSB7XG4gIHRoaXMuYml0cyA9IGJpdHM7ICAgLyogbnVtYmVyIG9mIGJpdHMgdXNlZCBmb3IgdGhpcyBzeW1ib2wgKi9cbiAgdGhpcy52YWx1ZSA9IHZhbHVlOyAvKiBzeW1ib2wgdmFsdWUgb3IgdGFibGUgb2Zmc2V0ICovXG59XG5cbmV4cG9ydHMuSHVmZm1hbkNvZGUgPSBIdWZmbWFuQ29kZTtcblxudmFyIE1BWF9MRU5HVEggPSAxNTtcblxuLyogUmV0dXJucyByZXZlcnNlKHJldmVyc2Uoa2V5LCBsZW4pICsgMSwgbGVuKSwgd2hlcmUgcmV2ZXJzZShrZXksIGxlbikgaXMgdGhlXG4gICBiaXQtd2lzZSByZXZlcnNhbCBvZiB0aGUgbGVuIGxlYXN0IHNpZ25pZmljYW50IGJpdHMgb2Yga2V5LiAqL1xuZnVuY3Rpb24gR2V0TmV4dEtleShrZXksIGxlbikge1xuICB2YXIgc3RlcCA9IDEgPDwgKGxlbiAtIDEpO1xuICB3aGlsZSAoa2V5ICYgc3RlcCkge1xuICAgIHN0ZXAgPj49IDE7XG4gIH1cbiAgcmV0dXJuIChrZXkgJiAoc3RlcCAtIDEpKSArIHN0ZXA7XG59XG5cbi8qIFN0b3JlcyBjb2RlIGluIHRhYmxlWzBdLCB0YWJsZVtzdGVwXSwgdGFibGVbMipzdGVwXSwgLi4uLCB0YWJsZVtlbmRdICovXG4vKiBBc3N1bWVzIHRoYXQgZW5kIGlzIGFuIGludGVnZXIgbXVsdGlwbGUgb2Ygc3RlcCAqL1xuZnVuY3Rpb24gUmVwbGljYXRlVmFsdWUodGFibGUsIGksIHN0ZXAsIGVuZCwgY29kZSkge1xuICBkbyB7XG4gICAgZW5kIC09IHN0ZXA7XG4gICAgdGFibGVbaSArIGVuZF0gPSBuZXcgSHVmZm1hbkNvZGUoY29kZS5iaXRzLCBjb2RlLnZhbHVlKTtcbiAgfSB3aGlsZSAoZW5kID4gMCk7XG59XG5cbi8qIFJldHVybnMgdGhlIHRhYmxlIHdpZHRoIG9mIHRoZSBuZXh0IDJuZCBsZXZlbCB0YWJsZS4gY291bnQgaXMgdGhlIGhpc3RvZ3JhbVxuICAgb2YgYml0IGxlbmd0aHMgZm9yIHRoZSByZW1haW5pbmcgc3ltYm9scywgbGVuIGlzIHRoZSBjb2RlIGxlbmd0aCBvZiB0aGUgbmV4dFxuICAgcHJvY2Vzc2VkIHN5bWJvbCAqL1xuZnVuY3Rpb24gTmV4dFRhYmxlQml0U2l6ZShjb3VudCwgbGVuLCByb290X2JpdHMpIHtcbiAgdmFyIGxlZnQgPSAxIDw8IChsZW4gLSByb290X2JpdHMpO1xuICB3aGlsZSAobGVuIDwgTUFYX0xFTkdUSCkge1xuICAgIGxlZnQgLT0gY291bnRbbGVuXTtcbiAgICBpZiAobGVmdCA8PSAwKSBicmVhaztcbiAgICArK2xlbjtcbiAgICBsZWZ0IDw8PSAxO1xuICB9XG4gIHJldHVybiBsZW4gLSByb290X2JpdHM7XG59XG5cbmV4cG9ydHMuQnJvdGxpQnVpbGRIdWZmbWFuVGFibGUgPSBmdW5jdGlvbihyb290X3RhYmxlLCB0YWJsZSwgcm9vdF9iaXRzLCBjb2RlX2xlbmd0aHMsIGNvZGVfbGVuZ3Roc19zaXplKSB7XG4gIHZhciBzdGFydF90YWJsZSA9IHRhYmxlO1xuICB2YXIgY29kZTsgICAgICAgICAgICAvKiBjdXJyZW50IHRhYmxlIGVudHJ5ICovXG4gIHZhciBsZW47ICAgICAgICAgICAgIC8qIGN1cnJlbnQgY29kZSBsZW5ndGggKi9cbiAgdmFyIHN5bWJvbDsgICAgICAgICAgLyogc3ltYm9sIGluZGV4IGluIG9yaWdpbmFsIG9yIHNvcnRlZCB0YWJsZSAqL1xuICB2YXIga2V5OyAgICAgICAgICAgICAvKiByZXZlcnNlZCBwcmVmaXggY29kZSAqL1xuICB2YXIgc3RlcDsgICAgICAgICAgICAvKiBzdGVwIHNpemUgdG8gcmVwbGljYXRlIHZhbHVlcyBpbiBjdXJyZW50IHRhYmxlICovXG4gIHZhciBsb3c7ICAgICAgICAgICAgIC8qIGxvdyBiaXRzIGZvciBjdXJyZW50IHJvb3QgZW50cnkgKi9cbiAgdmFyIG1hc2s7ICAgICAgICAgICAgLyogbWFzayBmb3IgbG93IGJpdHMgKi9cbiAgdmFyIHRhYmxlX2JpdHM7ICAgICAgLyoga2V5IGxlbmd0aCBvZiBjdXJyZW50IHRhYmxlICovXG4gIHZhciB0YWJsZV9zaXplOyAgICAgIC8qIHNpemUgb2YgY3VycmVudCB0YWJsZSAqL1xuICB2YXIgdG90YWxfc2l6ZTsgICAgICAvKiBzdW0gb2Ygcm9vdCB0YWJsZSBzaXplIGFuZCAybmQgbGV2ZWwgdGFibGUgc2l6ZXMgKi9cbiAgdmFyIHNvcnRlZDsgICAgICAgICAgLyogc3ltYm9scyBzb3J0ZWQgYnkgY29kZSBsZW5ndGggKi9cbiAgdmFyIGNvdW50ID0gbmV3IEludDMyQXJyYXkoTUFYX0xFTkdUSCArIDEpOyAgLyogbnVtYmVyIG9mIGNvZGVzIG9mIGVhY2ggbGVuZ3RoICovXG4gIHZhciBvZmZzZXQgPSBuZXcgSW50MzJBcnJheShNQVhfTEVOR1RIICsgMSk7ICAvKiBvZmZzZXRzIGluIHNvcnRlZCB0YWJsZSBmb3IgZWFjaCBsZW5ndGggKi9cblxuICBzb3J0ZWQgPSBuZXcgSW50MzJBcnJheShjb2RlX2xlbmd0aHNfc2l6ZSk7XG5cbiAgLyogYnVpbGQgaGlzdG9ncmFtIG9mIGNvZGUgbGVuZ3RocyAqL1xuICBmb3IgKHN5bWJvbCA9IDA7IHN5bWJvbCA8IGNvZGVfbGVuZ3Roc19zaXplOyBzeW1ib2wrKykge1xuICAgIGNvdW50W2NvZGVfbGVuZ3Roc1tzeW1ib2xdXSsrO1xuICB9XG5cbiAgLyogZ2VuZXJhdGUgb2Zmc2V0cyBpbnRvIHNvcnRlZCBzeW1ib2wgdGFibGUgYnkgY29kZSBsZW5ndGggKi9cbiAgb2Zmc2V0WzFdID0gMDtcbiAgZm9yIChsZW4gPSAxOyBsZW4gPCBNQVhfTEVOR1RIOyBsZW4rKykge1xuICAgIG9mZnNldFtsZW4gKyAxXSA9IG9mZnNldFtsZW5dICsgY291bnRbbGVuXTtcbiAgfVxuXG4gIC8qIHNvcnQgc3ltYm9scyBieSBsZW5ndGgsIGJ5IHN5bWJvbCBvcmRlciB3aXRoaW4gZWFjaCBsZW5ndGggKi9cbiAgZm9yIChzeW1ib2wgPSAwOyBzeW1ib2wgPCBjb2RlX2xlbmd0aHNfc2l6ZTsgc3ltYm9sKyspIHtcbiAgICBpZiAoY29kZV9sZW5ndGhzW3N5bWJvbF0gIT09IDApIHtcbiAgICAgIHNvcnRlZFtvZmZzZXRbY29kZV9sZW5ndGhzW3N5bWJvbF1dKytdID0gc3ltYm9sO1xuICAgIH1cbiAgfVxuICBcbiAgdGFibGVfYml0cyA9IHJvb3RfYml0cztcbiAgdGFibGVfc2l6ZSA9IDEgPDwgdGFibGVfYml0cztcbiAgdG90YWxfc2l6ZSA9IHRhYmxlX3NpemU7XG5cbiAgLyogc3BlY2lhbCBjYXNlIGNvZGUgd2l0aCBvbmx5IG9uZSB2YWx1ZSAqL1xuICBpZiAob2Zmc2V0W01BWF9MRU5HVEhdID09PSAxKSB7XG4gICAgZm9yIChrZXkgPSAwOyBrZXkgPCB0b3RhbF9zaXplOyArK2tleSkge1xuICAgICAgcm9vdF90YWJsZVt0YWJsZSArIGtleV0gPSBuZXcgSHVmZm1hbkNvZGUoMCwgc29ydGVkWzBdICYgMHhmZmZmKTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHRvdGFsX3NpemU7XG4gIH1cblxuICAvKiBmaWxsIGluIHJvb3QgdGFibGUgKi9cbiAga2V5ID0gMDtcbiAgc3ltYm9sID0gMDtcbiAgZm9yIChsZW4gPSAxLCBzdGVwID0gMjsgbGVuIDw9IHJvb3RfYml0czsgKytsZW4sIHN0ZXAgPDw9IDEpIHtcbiAgICBmb3IgKDsgY291bnRbbGVuXSA+IDA7IC0tY291bnRbbGVuXSkge1xuICAgICAgY29kZSA9IG5ldyBIdWZmbWFuQ29kZShsZW4gJiAweGZmLCBzb3J0ZWRbc3ltYm9sKytdICYgMHhmZmZmKTtcbiAgICAgIFJlcGxpY2F0ZVZhbHVlKHJvb3RfdGFibGUsIHRhYmxlICsga2V5LCBzdGVwLCB0YWJsZV9zaXplLCBjb2RlKTtcbiAgICAgIGtleSA9IEdldE5leHRLZXkoa2V5LCBsZW4pO1xuICAgIH1cbiAgfVxuXG4gIC8qIGZpbGwgaW4gMm5kIGxldmVsIHRhYmxlcyBhbmQgYWRkIHBvaW50ZXJzIHRvIHJvb3QgdGFibGUgKi9cbiAgbWFzayA9IHRvdGFsX3NpemUgLSAxO1xuICBsb3cgPSAtMTtcbiAgZm9yIChsZW4gPSByb290X2JpdHMgKyAxLCBzdGVwID0gMjsgbGVuIDw9IE1BWF9MRU5HVEg7ICsrbGVuLCBzdGVwIDw8PSAxKSB7XG4gICAgZm9yICg7IGNvdW50W2xlbl0gPiAwOyAtLWNvdW50W2xlbl0pIHtcbiAgICAgIGlmICgoa2V5ICYgbWFzaykgIT09IGxvdykge1xuICAgICAgICB0YWJsZSArPSB0YWJsZV9zaXplO1xuICAgICAgICB0YWJsZV9iaXRzID0gTmV4dFRhYmxlQml0U2l6ZShjb3VudCwgbGVuLCByb290X2JpdHMpO1xuICAgICAgICB0YWJsZV9zaXplID0gMSA8PCB0YWJsZV9iaXRzO1xuICAgICAgICB0b3RhbF9zaXplICs9IHRhYmxlX3NpemU7XG4gICAgICAgIGxvdyA9IGtleSAmIG1hc2s7XG4gICAgICAgIHJvb3RfdGFibGVbc3RhcnRfdGFibGUgKyBsb3ddID0gbmV3IEh1ZmZtYW5Db2RlKCh0YWJsZV9iaXRzICsgcm9vdF9iaXRzKSAmIDB4ZmYsICgodGFibGUgLSBzdGFydF90YWJsZSkgLSBsb3cpICYgMHhmZmZmKTtcbiAgICAgIH1cbiAgICAgIGNvZGUgPSBuZXcgSHVmZm1hbkNvZGUoKGxlbiAtIHJvb3RfYml0cykgJiAweGZmLCBzb3J0ZWRbc3ltYm9sKytdICYgMHhmZmZmKTtcbiAgICAgIFJlcGxpY2F0ZVZhbHVlKHJvb3RfdGFibGUsIHRhYmxlICsgKGtleSA+PiByb290X2JpdHMpLCBzdGVwLCB0YWJsZV9zaXplLCBjb2RlKTtcbiAgICAgIGtleSA9IEdldE5leHRLZXkoa2V5LCBsZW4pO1xuICAgIH1cbiAgfVxuICBcbiAgcmV0dXJuIHRvdGFsX3NpemU7XG59XG4iLCAiLyogQ29weXJpZ2h0IDIwMTMgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cblxuICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuICAgTG9va3VwIHRhYmxlIHRvIG1hcCB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzIHRvIGEgY29udGV4dCBpZC5cblxuICAgVGhlcmUgYXJlIGZvdXIgZGlmZmVyZW50IGNvbnRleHQgbW9kZWxpbmcgbW9kZXMgZGVmaW5lZCBoZXJlOlxuICAgICBDT05URVhUX0xTQjY6IGNvbnRleHQgaWQgaXMgdGhlIGxlYXN0IHNpZ25pZmljYW50IDYgYml0cyBvZiB0aGUgbGFzdCBieXRlLFxuICAgICBDT05URVhUX01TQjY6IGNvbnRleHQgaWQgaXMgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgNiBiaXRzIG9mIHRoZSBsYXN0IGJ5dGUsXG4gICAgIENPTlRFWFRfVVRGODogc2Vjb25kLW9yZGVyIGNvbnRleHQgbW9kZWwgdHVuZWQgZm9yIFVURjgtZW5jb2RlZCB0ZXh0LFxuICAgICBDT05URVhUX1NJR05FRDogc2Vjb25kLW9yZGVyIGNvbnRleHQgbW9kZWwgdHVuZWQgZm9yIHNpZ25lZCBpbnRlZ2Vycy5cblxuICAgVGhlIGNvbnRleHQgaWQgZm9yIHRoZSBVVEY4IGNvbnRleHQgbW9kZWwgaXMgY2FsY3VsYXRlZCBhcyBmb2xsb3dzLiBJZiBwMVxuICAgYW5kIHAyIGFyZSB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzLCB3ZSBjYWxjdWFsdGUgdGhlIGNvbnRleHQgYXNcblxuICAgICBjb250ZXh0ID0ga0NvbnRleHRMb29rdXBbcDFdIHwga0NvbnRleHRMb29rdXBbcDIgKyAyNTZdLlxuXG4gICBJZiB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzIGFyZSBBU0NJSSBjaGFyYWN0ZXJzIChpLmUuIDwgMTI4KSwgdGhpcyB3aWxsIGJlXG4gICBlcXVpdmFsZW50IHRvXG5cbiAgICAgY29udGV4dCA9IDQgKiBjb250ZXh0MShwMSkgKyBjb250ZXh0MihwMiksXG5cbiAgIHdoZXJlIGNvbnRleHQxIGlzIGJhc2VkIG9uIHRoZSBwcmV2aW91cyBieXRlIGluIHRoZSBmb2xsb3dpbmcgd2F5OlxuXG4gICAgIDAgIDogbm9uLUFTQ0lJIGNvbnRyb2xcbiAgICAgMSAgOiBcXHQsIFxcbiwgXFxyXG4gICAgIDIgIDogc3BhY2VcbiAgICAgMyAgOiBvdGhlciBwdW5jdHVhdGlvblxuICAgICA0ICA6IFwiICdcbiAgICAgNSAgOiAlXG4gICAgIDYgIDogKCA8IFsge1xuICAgICA3ICA6ICkgPiBdIH1cbiAgICAgOCAgOiAsIDsgOlxuICAgICA5ICA6IC5cbiAgICAgMTAgOiA9XG4gICAgIDExIDogbnVtYmVyXG4gICAgIDEyIDogdXBwZXItY2FzZSB2b3dlbFxuICAgICAxMyA6IHVwcGVyLWNhc2UgY29uc29uYW50XG4gICAgIDE0IDogbG93ZXItY2FzZSB2b3dlbFxuICAgICAxNSA6IGxvd2VyLWNhc2UgY29uc29uYW50XG5cbiAgIGFuZCBjb250ZXh0MiBpcyBiYXNlZCBvbiB0aGUgc2Vjb25kIGxhc3QgYnl0ZTpcblxuICAgICAwIDogY29udHJvbCwgc3BhY2VcbiAgICAgMSA6IHB1bmN0dWF0aW9uXG4gICAgIDIgOiB1cHBlci1jYXNlIGxldHRlciwgbnVtYmVyXG4gICAgIDMgOiBsb3dlci1jYXNlIGxldHRlclxuXG4gICBJZiB0aGUgbGFzdCBieXRlIGlzIEFTQ0lJLCBhbmQgdGhlIHNlY29uZCBsYXN0IGJ5dGUgaXMgbm90IChpbiBhIHZhbGlkIFVURjhcbiAgIHN0cmVhbSBpdCB3aWxsIGJlIGEgY29udGludWF0aW9uIGJ5dGUsIHZhbHVlIGJldHdlZW4gMTI4IGFuZCAxOTEpLCB0aGVcbiAgIGNvbnRleHQgaXMgdGhlIHNhbWUgYXMgaWYgdGhlIHNlY29uZCBsYXN0IGJ5dGUgd2FzIGFuIEFTQ0lJIGNvbnRyb2wgb3Igc3BhY2UuXG5cbiAgIElmIHRoZSBsYXN0IGJ5dGUgaXMgYSBVVEY4IGxlYWQgYnl0ZSAodmFsdWUgPj0gMTkyKSwgdGhlbiB0aGUgbmV4dCBieXRlIHdpbGxcbiAgIGJlIGEgY29udGludWF0aW9uIGJ5dGUgYW5kIHRoZSBjb250ZXh0IGlkIGlzIDIgb3IgMyBkZXBlbmRpbmcgb24gdGhlIExTQiBvZlxuICAgdGhlIGxhc3QgYnl0ZSBhbmQgdG8gYSBsZXNzZXIgZXh0ZW50IG9uIHRoZSBzZWNvbmQgbGFzdCBieXRlIGlmIGl0IGlzIEFTQ0lJLlxuXG4gICBJZiB0aGUgbGFzdCBieXRlIGlzIGEgVVRGOCBjb250aW51YXRpb24gYnl0ZSwgdGhlIHNlY29uZCBsYXN0IGJ5dGUgY2FuIGJlOlxuICAgICAtIGNvbnRpbnVhdGlvbiBieXRlOiB0aGUgbmV4dCBieXRlIGlzIHByb2JhYmx5IEFTQ0lJIG9yIGxlYWQgYnl0ZSAoYXNzdW1pbmdcbiAgICAgICA0LWJ5dGUgVVRGOCBjaGFyYWN0ZXJzIGFyZSByYXJlKSBhbmQgdGhlIGNvbnRleHQgaWQgaXMgMCBvciAxLlxuICAgICAtIGxlYWQgYnl0ZSAoMTkyIC0gMjA3KTogbmV4dCBieXRlIGlzIEFTQ0lJIG9yIGxlYWQgYnl0ZSwgY29udGV4dCBpcyAwIG9yIDFcbiAgICAgLSBsZWFkIGJ5dGUgKDIwOCAtIDI1NSk6IG5leHQgYnl0ZSBpcyBjb250aW51YXRpb24gYnl0ZSwgY29udGV4dCBpcyAyIG9yIDNcblxuICAgVGhlIHBvc3NpYmxlIHZhbHVlIGNvbWJpbmF0aW9ucyBvZiB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzLCB0aGUgcmFuZ2Ugb2ZcbiAgIGNvbnRleHQgaWRzIGFuZCB0aGUgdHlwZSBvZiB0aGUgbmV4dCBieXRlIGlzIHN1bW1hcml6ZWQgaW4gdGhlIHRhYmxlIGJlbG93OlxuXG4gICB8LS0tLS0tLS1cXC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfFxuICAgfCAgICAgICAgIFxcICAgICAgICAgICAgICAgICAgICAgICAgIExhc3QgYnl0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgIHwgU2Vjb25kICAgXFwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18XG4gICB8IGxhc3QgYnl0ZSBcXCAgICBBU0NJSSAgICAgICAgICAgIHwgICBjb250LiBieXRlICAgICAgICB8ICAgbGVhZCBieXRlICAgICAgfFxuICAgfCAgICAgICAgICAgIFxcICAgKDAtMTI3KSAgICAgICAgICB8ICAgKDEyOC0xOTEpICAgICAgICAgfCAgICgxOTItKSAgICAgICAgIHxcbiAgIHw9PT09PT09PT09PT09fD09PT09PT09PT09PT09PT09PT18PT09PT09PT09PT09PT09PT09PT09fD09PT09PT09PT09PT09PT09PXxcbiAgIHwgIEFTQ0lJICAgICAgfCBuZXh0OiBBU0NJSS9sZWFkICB8ICBub3QgdmFsaWQgICAgICAgICAgfCAgbmV4dDogY29udC4gICAgIHxcbiAgIHwgICgwLTEyNykgICAgfCBjb250ZXh0OiA0IC0gNjMgICB8ICAgICAgICAgICAgICAgICAgICAgfCAgY29udGV4dDogMiAtIDMgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgIHwgIGNvbnQuIGJ5dGUgfCBuZXh0OiBBU0NJSS9sZWFkICB8ICBuZXh0OiBBU0NJSS9sZWFkICAgfCAgbmV4dDogY29udC4gICAgIHxcbiAgIHwgICgxMjgtMTkxKSAgfCBjb250ZXh0OiA0IC0gNjMgICB8ICBjb250ZXh0OiAwIC0gMSAgICAgfCAgY29udGV4dDogMiAtIDMgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgIHwgIGxlYWQgYnl0ZSAgfCBub3QgdmFsaWQgICAgICAgICB8ICBuZXh0OiBBU0NJSS9sZWFkICAgfCAgbm90IHZhbGlkICAgICAgIHxcbiAgIHwgICgxOTItMjA3KSAgfCAgICAgICAgICAgICAgICAgICB8ICBjb250ZXh0OiAwIC0gMSAgICAgfCAgICAgICAgICAgICAgICAgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgIHwgIGxlYWQgYnl0ZSAgfCBub3QgdmFsaWQgICAgICAgICB8ICBuZXh0OiBjb250LiAgICAgICAgfCAgbm90IHZhbGlkICAgICAgIHxcbiAgIHwgICgyMDgtKSAgICAgfCAgICAgICAgICAgICAgICAgICB8ICBjb250ZXh0OiAyIC0gMyAgICAgfCAgICAgICAgICAgICAgICAgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcblxuICAgVGhlIGNvbnRleHQgaWQgZm9yIHRoZSBzaWduZWQgY29udGV4dCBtb2RlIGlzIGNhbGN1bGF0ZWQgYXM6XG5cbiAgICAgY29udGV4dCA9IChrQ29udGV4dExvb2t1cFs1MTIgKyBwMV0gPDwgMykgfCBrQ29udGV4dExvb2t1cFs1MTIgKyBwMl0uXG5cbiAgIEZvciBhbnkgY29udGV4dCBtb2RlbGluZyBtb2RlcywgdGhlIGNvbnRleHQgaWRzIGNhbiBiZSBjYWxjdWxhdGVkIGJ5IHwtaW5nXG4gICB0b2dldGhlciB0d28gbG9va3VwcyBmcm9tIG9uZSB0YWJsZSB1c2luZyBjb250ZXh0IG1vZGVsIGRlcGVuZGVudCBvZmZzZXRzOlxuXG4gICAgIGNvbnRleHQgPSBrQ29udGV4dExvb2t1cFtvZmZzZXQxICsgcDFdIHwga0NvbnRleHRMb29rdXBbb2Zmc2V0MiArIHAyXS5cblxuICAgd2hlcmUgb2Zmc2V0MSBhbmQgb2Zmc2V0MiBhcmUgZGVwZW5kZW50IG9uIHRoZSBjb250ZXh0IG1vZGUuXG4qL1xuXG52YXIgQ09OVEVYVF9MU0I2ICAgICAgICAgPSAwO1xudmFyIENPTlRFWFRfTVNCNiAgICAgICAgID0gMTtcbnZhciBDT05URVhUX1VURjggICAgICAgICA9IDI7XG52YXIgQ09OVEVYVF9TSUdORUQgICAgICAgPSAzO1xuXG4vKiBDb21tb24gY29udGV4dCBsb29rdXAgdGFibGUgZm9yIGFsbCBjb250ZXh0IG1vZGVzLiAqL1xuZXhwb3J0cy5sb29rdXAgPSBuZXcgVWludDhBcnJheShbXG4gIC8qIENPTlRFWFRfVVRGOCwgbGFzdCBieXRlLiAqL1xuICAvKiBBU0NJSSByYW5nZS4gKi9cbiAgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDQsICA0LCAgMCwgIDAsICA0LCAgMCwgIDAsXG4gICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLFxuICAgOCwgMTIsIDE2LCAxMiwgMTIsIDIwLCAxMiwgMTYsIDI0LCAyOCwgMTIsIDEyLCAzMiwgMTIsIDM2LCAxMixcbiAgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDMyLCAzMiwgMjQsIDQwLCAyOCwgMTIsXG4gIDEyLCA0OCwgNTIsIDUyLCA1MiwgNDgsIDUyLCA1MiwgNTIsIDQ4LCA1MiwgNTIsIDUyLCA1MiwgNTIsIDQ4LFxuICA1MiwgNTIsIDUyLCA1MiwgNTIsIDQ4LCA1MiwgNTIsIDUyLCA1MiwgNTIsIDI0LCAxMiwgMjgsIDEyLCAxMixcbiAgMTIsIDU2LCA2MCwgNjAsIDYwLCA1NiwgNjAsIDYwLCA2MCwgNTYsIDYwLCA2MCwgNjAsIDYwLCA2MCwgNTYsXG4gIDYwLCA2MCwgNjAsIDYwLCA2MCwgNTYsIDYwLCA2MCwgNjAsIDYwLCA2MCwgMjQsIDEyLCAyOCwgMTIsICAwLFxuICAvKiBVVEY4IGNvbnRpbnVhdGlvbiBieXRlIHJhbmdlLiAqL1xuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAvKiBVVEY4IGxlYWQgYnl0ZSByYW5nZS4gKi9cbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgLyogQ09OVEVYVF9VVEY4IHNlY29uZCBsYXN0IGJ5dGUuICovXG4gIC8qIEFTQ0lJIHJhbmdlLiAqL1xuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLFxuICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxLCAxLCAxLCAxLCAxLCAxLFxuICAxLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLFxuICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxLCAxLCAxLCAxLCAxLFxuICAxLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLFxuICAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAxLCAxLCAxLCAxLCAwLFxuICAvKiBVVEY4IGNvbnRpbnVhdGlvbiBieXRlIHJhbmdlLiAqL1xuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAvKiBVVEY4IGxlYWQgYnl0ZSByYW5nZS4gKi9cbiAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCxcbiAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMixcbiAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMixcbiAgLyogQ09OVEVYVF9TSUdORUQsIHNlY29uZCBsYXN0IGJ5dGUuICovXG4gIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsXG4gIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsXG4gIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsXG4gIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsXG4gIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsXG4gIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsXG4gIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDcsXG4gIC8qIENPTlRFWFRfU0lHTkVELCBsYXN0IGJ5dGUsIHNhbWUgYXMgdGhlIGFib3ZlIHZhbHVlcyBzaGlmdGVkIGJ5IDMgYml0cy4gKi9cbiAgIDAsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsXG4gIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LFxuICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNixcbiAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsXG4gIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LFxuICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCxcbiAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsXG4gIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LFxuICAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMixcbiAgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsXG4gIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLFxuICAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMixcbiAgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsXG4gIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLFxuICA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCxcbiAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNTYsXG4gIC8qIENPTlRFWFRfTFNCNiwgbGFzdCBieXRlLiAqL1xuICAgMCwgIDEsICAyLCAgMywgIDQsICA1LCAgNiwgIDcsICA4LCAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSxcbiAgMTYsIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsXG4gIDMyLCAzMywgMzQsIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LFxuICA0OCwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCA1NywgNTgsIDU5LCA2MCwgNjEsIDYyLCA2MyxcbiAgIDAsICAxLCAgMiwgIDMsICA0LCAgNSwgIDYsICA3LCAgOCwgIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsXG4gIDE2LCAxNywgMTgsIDE5LCAyMCwgMjEsIDIyLCAyMywgMjQsIDI1LCAyNiwgMjcsIDI4LCAyOSwgMzAsIDMxLFxuICAzMiwgMzMsIDM0LCAzNSwgMzYsIDM3LCAzOCwgMzksIDQwLCA0MSwgNDIsIDQzLCA0NCwgNDUsIDQ2LCA0NyxcbiAgNDgsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTQsIDU1LCA1NiwgNTcsIDU4LCA1OSwgNjAsIDYxLCA2MiwgNjMsXG4gICAwLCAgMSwgIDIsICAzLCAgNCwgIDUsICA2LCAgNywgIDgsICA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LFxuICAxNiwgMTcsIDE4LCAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAzMSxcbiAgMzIsIDMzLCAzNCwgMzUsIDM2LCAzNywgMzgsIDM5LCA0MCwgNDEsIDQyLCA0MywgNDQsIDQ1LCA0NiwgNDcsXG4gIDQ4LCA0OSwgNTAsIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYzLFxuICAgMCwgIDEsICAyLCAgMywgIDQsICA1LCAgNiwgIDcsICA4LCAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSxcbiAgMTYsIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsXG4gIDMyLCAzMywgMzQsIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LFxuICA0OCwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCA1NywgNTgsIDU5LCA2MCwgNjEsIDYyLCA2MyxcbiAgLyogQ09OVEVYVF9NU0I2LCBsYXN0IGJ5dGUuICovXG4gICAwLCAgMCwgIDAsICAwLCAgMSwgIDEsICAxLCAgMSwgIDIsICAyLCAgMiwgIDIsICAzLCAgMywgIDMsICAzLFxuICAgNCwgIDQsICA0LCAgNCwgIDUsICA1LCAgNSwgIDUsICA2LCAgNiwgIDYsICA2LCAgNywgIDcsICA3LCAgNyxcbiAgIDgsICA4LCAgOCwgIDgsICA5LCAgOSwgIDksICA5LCAxMCwgMTAsIDEwLCAxMCwgMTEsIDExLCAxMSwgMTEsXG4gIDEyLCAxMiwgMTIsIDEyLCAxMywgMTMsIDEzLCAxMywgMTQsIDE0LCAxNCwgMTQsIDE1LCAxNSwgMTUsIDE1LFxuICAxNiwgMTYsIDE2LCAxNiwgMTcsIDE3LCAxNywgMTcsIDE4LCAxOCwgMTgsIDE4LCAxOSwgMTksIDE5LCAxOSxcbiAgMjAsIDIwLCAyMCwgMjAsIDIxLCAyMSwgMjEsIDIxLCAyMiwgMjIsIDIyLCAyMiwgMjMsIDIzLCAyMywgMjMsXG4gIDI0LCAyNCwgMjQsIDI0LCAyNSwgMjUsIDI1LCAyNSwgMjYsIDI2LCAyNiwgMjYsIDI3LCAyNywgMjcsIDI3LFxuICAyOCwgMjgsIDI4LCAyOCwgMjksIDI5LCAyOSwgMjksIDMwLCAzMCwgMzAsIDMwLCAzMSwgMzEsIDMxLCAzMSxcbiAgMzIsIDMyLCAzMiwgMzIsIDMzLCAzMywgMzMsIDMzLCAzNCwgMzQsIDM0LCAzNCwgMzUsIDM1LCAzNSwgMzUsXG4gIDM2LCAzNiwgMzYsIDM2LCAzNywgMzcsIDM3LCAzNywgMzgsIDM4LCAzOCwgMzgsIDM5LCAzOSwgMzksIDM5LFxuICA0MCwgNDAsIDQwLCA0MCwgNDEsIDQxLCA0MSwgNDEsIDQyLCA0MiwgNDIsIDQyLCA0MywgNDMsIDQzLCA0MyxcbiAgNDQsIDQ0LCA0NCwgNDQsIDQ1LCA0NSwgNDUsIDQ1LCA0NiwgNDYsIDQ2LCA0NiwgNDcsIDQ3LCA0NywgNDcsXG4gIDQ4LCA0OCwgNDgsIDQ4LCA0OSwgNDksIDQ5LCA0OSwgNTAsIDUwLCA1MCwgNTAsIDUxLCA1MSwgNTEsIDUxLFxuICA1MiwgNTIsIDUyLCA1MiwgNTMsIDUzLCA1MywgNTMsIDU0LCA1NCwgNTQsIDU0LCA1NSwgNTUsIDU1LCA1NSxcbiAgNTYsIDU2LCA1NiwgNTYsIDU3LCA1NywgNTcsIDU3LCA1OCwgNTgsIDU4LCA1OCwgNTksIDU5LCA1OSwgNTksXG4gIDYwLCA2MCwgNjAsIDYwLCA2MSwgNjEsIDYxLCA2MSwgNjIsIDYyLCA2MiwgNjIsIDYzLCA2MywgNjMsIDYzLFxuICAvKiBDT05URVhUX3tNLEx9U0I2LCBzZWNvbmQgbGFzdCBieXRlLCAqL1xuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuXSk7XG5cbmV4cG9ydHMubG9va3VwT2Zmc2V0cyA9IG5ldyBVaW50MTZBcnJheShbXG4gIC8qIENPTlRFWFRfTFNCNiAqL1xuICAxMDI0LCAxNTM2LFxuICAvKiBDT05URVhUX01TQjYgKi9cbiAgMTI4MCwgMTUzNixcbiAgLyogQ09OVEVYVF9VVEY4ICovXG4gIDAsIDI1NixcbiAgLyogQ09OVEVYVF9TSUdORUQgKi9cbiAgNzY4LCA1MTIsXG5dKTtcbiIsICIvKiBDb3B5cmlnaHQgMjAxMyBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuXG4gICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4gICBMb29rdXAgdGFibGVzIHRvIG1hcCBwcmVmaXggY29kZXMgdG8gdmFsdWUgcmFuZ2VzLiBUaGlzIGlzIHVzZWQgZHVyaW5nXG4gICBkZWNvZGluZyBvZiB0aGUgYmxvY2sgbGVuZ3RocywgbGl0ZXJhbCBpbnNlcnRpb24gbGVuZ3RocyBhbmQgY29weSBsZW5ndGhzLlxuKi9cblxuLyogUmVwcmVzZW50cyB0aGUgcmFuZ2Ugb2YgdmFsdWVzIGJlbG9uZ2luZyB0byBhIHByZWZpeCBjb2RlOiAqL1xuLyogW29mZnNldCwgb2Zmc2V0ICsgMl5uYml0cykgKi9cbmZ1bmN0aW9uIFByZWZpeENvZGVSYW5nZShvZmZzZXQsIG5iaXRzKSB7XG4gIHRoaXMub2Zmc2V0ID0gb2Zmc2V0O1xuICB0aGlzLm5iaXRzID0gbmJpdHM7XG59XG5cbmV4cG9ydHMua0Jsb2NrTGVuZ3RoUHJlZml4Q29kZSA9IFtcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgxLCAyKSwgbmV3IFByZWZpeENvZGVSYW5nZSg1LCAyKSwgbmV3IFByZWZpeENvZGVSYW5nZSg5LCAyKSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMywgMiksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTcsIDMpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDI1LCAzKSwgbmV3IFByZWZpeENvZGVSYW5nZSgzMywgMyksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNDEsIDMpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDQ5LCA0KSwgbmV3IFByZWZpeENvZGVSYW5nZSg2NSwgNCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoODEsIDQpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDk3LCA0KSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgxMTMsIDUpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDE0NSwgNSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTc3LCA1KSwgbmV3IFByZWZpeENvZGVSYW5nZSgyMDksIDUpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDI0MSwgNiksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMzA1LCA2KSwgbmV3IFByZWZpeENvZGVSYW5nZSgzNjksIDcpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDQ5NywgOCksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNzUzLCA5KSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMjY1LCAxMCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMjI4OSwgMTEpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDQzMzcsIDEyKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSg4NDMzLCAxMyksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTY2MjUsIDI0KVxuXTtcblxuZXhwb3J0cy5rSW5zZXJ0TGVuZ3RoUHJlZml4Q29kZSA9IFtcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgwLCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSgxLCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSgyLCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSgzLCAwKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSg0LCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSg1LCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSg2LCAxKSwgbmV3IFByZWZpeENvZGVSYW5nZSg4LCAxKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgxMCwgMiksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTQsIDIpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDE4LCAzKSwgbmV3IFByZWZpeENvZGVSYW5nZSgyNiwgMyksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMzQsIDQpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDUwLCA0KSwgbmV3IFByZWZpeENvZGVSYW5nZSg2NiwgNSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoOTgsIDUpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDEzMCwgNiksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTk0LCA3KSwgbmV3IFByZWZpeENvZGVSYW5nZSgzMjIsIDgpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDU3OCwgOSksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTA5MCwgMTApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDIxMTQsIDEyKSwgbmV3IFByZWZpeENvZGVSYW5nZSg2MjEwLCAxNCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMjI1OTQsIDI0KSxcbl07XG5cbmV4cG9ydHMua0NvcHlMZW5ndGhQcmVmaXhDb2RlID0gW1xuICBuZXcgUHJlZml4Q29kZVJhbmdlKDIsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDMsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDQsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDUsIDApLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDYsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDcsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDgsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDksIDApLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDEwLCAxKSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMiwgMSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTQsIDIpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDE4LCAyKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgyMiwgMyksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMzAsIDMpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDM4LCA0KSwgbmV3IFByZWZpeENvZGVSYW5nZSg1NCwgNCksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNzAsIDUpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDEwMiwgNSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTM0LCA2KSwgbmV3IFByZWZpeENvZGVSYW5nZSgxOTgsIDcpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDMyNiwgOCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNTgyLCA5KSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMDk0LCAxMCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMjExOCwgMjQpLFxuXTtcblxuZXhwb3J0cy5rSW5zZXJ0UmFuZ2VMdXQgPSBbXG4gIDAsIDAsIDgsIDgsIDAsIDE2LCA4LCAxNiwgMTYsXG5dO1xuXG5leHBvcnRzLmtDb3B5UmFuZ2VMdXQgPSBbXG4gIDAsIDgsIDAsIDgsIDE2LCAwLCAxNiwgOCwgMTYsXG5dO1xuIiwgIi8qIENvcHlyaWdodCAyMDEzIEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG5cbiAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbiAgIFRyYW5zZm9ybWF0aW9ucyBvbiBkaWN0aW9uYXJ5IHdvcmRzLlxuKi9cblxudmFyIEJyb3RsaURpY3Rpb25hcnkgPSByZXF1aXJlKCcuL2RpY3Rpb25hcnknKTtcblxudmFyIGtJZGVudGl0eSAgICAgICA9IDA7XG52YXIga09taXRMYXN0MSAgICAgID0gMTtcbnZhciBrT21pdExhc3QyICAgICAgPSAyO1xudmFyIGtPbWl0TGFzdDMgICAgICA9IDM7XG52YXIga09taXRMYXN0NCAgICAgID0gNDtcbnZhciBrT21pdExhc3Q1ICAgICAgPSA1O1xudmFyIGtPbWl0TGFzdDYgICAgICA9IDY7XG52YXIga09taXRMYXN0NyAgICAgID0gNztcbnZhciBrT21pdExhc3Q4ICAgICAgPSA4O1xudmFyIGtPbWl0TGFzdDkgICAgICA9IDk7XG52YXIga1VwcGVyY2FzZUZpcnN0ID0gMTA7XG52YXIga1VwcGVyY2FzZUFsbCAgID0gMTE7XG52YXIga09taXRGaXJzdDEgICAgID0gMTI7XG52YXIga09taXRGaXJzdDIgICAgID0gMTM7XG52YXIga09taXRGaXJzdDMgICAgID0gMTQ7XG52YXIga09taXRGaXJzdDQgICAgID0gMTU7XG52YXIga09taXRGaXJzdDUgICAgID0gMTY7XG52YXIga09taXRGaXJzdDYgICAgID0gMTc7XG52YXIga09taXRGaXJzdDcgICAgID0gMTg7XG52YXIga09taXRGaXJzdDggICAgID0gMTk7XG52YXIga09taXRGaXJzdDkgICAgID0gMjA7XG5cbmZ1bmN0aW9uIFRyYW5zZm9ybShwcmVmaXgsIHRyYW5zZm9ybSwgc3VmZml4KSB7XG4gIHRoaXMucHJlZml4ID0gbmV3IFVpbnQ4QXJyYXkocHJlZml4Lmxlbmd0aCk7XG4gIHRoaXMudHJhbnNmb3JtID0gdHJhbnNmb3JtO1xuICB0aGlzLnN1ZmZpeCA9IG5ldyBVaW50OEFycmF5KHN1ZmZpeC5sZW5ndGgpO1xuICBcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcmVmaXgubGVuZ3RoOyBpKyspXG4gICAgdGhpcy5wcmVmaXhbaV0gPSBwcmVmaXguY2hhckNvZGVBdChpKTtcbiAgXG4gIGZvciAodmFyIGkgPSAwOyBpIDwgc3VmZml4Lmxlbmd0aDsgaSsrKVxuICAgIHRoaXMuc3VmZml4W2ldID0gc3VmZml4LmNoYXJDb2RlQXQoaSk7XG59XG5cbnZhciBrVHJhbnNmb3JtcyA9IFtcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtJZGVudGl0eSwgICAgICAgXCIgXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdEZpcnN0MSwgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgdGhlIFwiICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrSWRlbnRpdHksICAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgIFwicyBcIiwga0lkZW50aXR5LCAgICAgICBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgb2YgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBhbmQgXCIgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0Rmlyc3QyLCAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3QxLCAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgIFwiLCBcIiwga0lkZW50aXR5LCAgICAgICBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIsIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiIFwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBpbiBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgdG8gXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgXCJlIFwiLCBrSWRlbnRpdHksICAgICAgIFwiIFwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIlxcXCJcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIi5cIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJcXFwiPlwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJcXG5cIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRMYXN0MywgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJdXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGZvciBcIiAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRGaXJzdDMsICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDIsICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGEgXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiB0aGF0IFwiICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIi5cIiwga0lkZW50aXR5LCAgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtJZGVudGl0eSwgICAgICAgXCIsIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdEZpcnN0NCwgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiB3aXRoIFwiICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCInXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGZyb20gXCIgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBieSBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0Rmlyc3Q1LCAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdEZpcnN0NiwgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgIFwiIHRoZSBcIiwga0lkZW50aXR5LCAgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDQsICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiLiBUaGUgXCIgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUFsbCwgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgb24gXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGFzIFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBpcyBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDcsICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3QxLCAgICAgIFwiaW5nIFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIlxcblxcdFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIjpcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtJZGVudGl0eSwgICAgICAgXCIuIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiZWQgXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRGaXJzdDksICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0Rmlyc3Q3LCAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3Q2LCAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIsIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3Q4LCAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBhdCBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJseSBcIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgXCIgdGhlIFwiLCBrSWRlbnRpdHksICAgICAgIFwiIG9mIFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRMYXN0NSwgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDksICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiLCBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIlxcXCJcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIi5cIiwga0lkZW50aXR5LCAgICAgICBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCIgXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiXFxcIj5cIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiPVxcXCJcIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrSWRlbnRpdHksICAgICAgIFwiLlwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgIFwiLmNvbS9cIiwga0lkZW50aXR5LCAgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICBcIiB0aGUgXCIsIGtJZGVudGl0eSwgICAgICAgXCIgb2YgdGhlIFwiICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiJ1wiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIi4gVGhpcyBcIiAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIsXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiLlwiLCBrSWRlbnRpdHksICAgICAgIFwiIFwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIuXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIG5vdCBcIiAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga0lkZW50aXR5LCAgICAgICBcIj1cXFwiXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcImVyIFwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VBbGwsICAgXCIgXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiYWwgXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUFsbCwgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCI9J1wiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiXFxcIlwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga0lkZW50aXR5LCAgICAgICBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJmdWwgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIml2ZSBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJsZXNzIFwiICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiJ1wiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcImVzdCBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIuXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiXFxcIj5cIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrSWRlbnRpdHksICAgICAgIFwiPSdcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIixcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJpemUgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLlwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oIFwiXFx4YzJcXHhhMFwiLCBrSWRlbnRpdHksICAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga0lkZW50aXR5LCAgICAgICBcIixcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCI9XFxcIlwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCI9XFxcIlwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJvdXMgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLCBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIj0nXCIgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIsXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiPVxcXCJcIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLCBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUFsbCwgICBcIixcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCIoXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUFsbCwgICBcIi5cIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCI9J1wiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUZpcnN0LCBcIj1cXFwiXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUFsbCwgICBcIj0nXCIgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCI9J1wiICAgICAgICAgKVxuXTtcblxuZXhwb3J0cy5rVHJhbnNmb3JtcyA9IGtUcmFuc2Zvcm1zO1xuZXhwb3J0cy5rTnVtVHJhbnNmb3JtcyA9IGtUcmFuc2Zvcm1zLmxlbmd0aDtcblxuZnVuY3Rpb24gVG9VcHBlckNhc2UocCwgaSkge1xuICBpZiAocFtpXSA8IDB4YzApIHtcbiAgICBpZiAocFtpXSA+PSA5NyAmJiBwW2ldIDw9IDEyMikge1xuICAgICAgcFtpXSBePSAzMjtcbiAgICB9XG4gICAgcmV0dXJuIDE7XG4gIH1cbiAgXG4gIC8qIEFuIG92ZXJseSBzaW1wbGlmaWVkIHVwcGVyY2FzaW5nIG1vZGVsIGZvciB1dGYtOC4gKi9cbiAgaWYgKHBbaV0gPCAweGUwKSB7XG4gICAgcFtpICsgMV0gXj0gMzI7XG4gICAgcmV0dXJuIDI7XG4gIH1cbiAgXG4gIC8qIEFuIGFyYml0cmFyeSB0cmFuc2Zvcm0gZm9yIHRocmVlIGJ5dGUgY2hhcmFjdGVycy4gKi9cbiAgcFtpICsgMl0gXj0gNTtcbiAgcmV0dXJuIDM7XG59XG5cbmV4cG9ydHMudHJhbnNmb3JtRGljdGlvbmFyeVdvcmQgPSBmdW5jdGlvbihkc3QsIGlkeCwgd29yZCwgbGVuLCB0cmFuc2Zvcm0pIHtcbiAgdmFyIHByZWZpeCA9IGtUcmFuc2Zvcm1zW3RyYW5zZm9ybV0ucHJlZml4O1xuICB2YXIgc3VmZml4ID0ga1RyYW5zZm9ybXNbdHJhbnNmb3JtXS5zdWZmaXg7XG4gIHZhciB0ID0ga1RyYW5zZm9ybXNbdHJhbnNmb3JtXS50cmFuc2Zvcm07XG4gIHZhciBza2lwID0gdCA8IGtPbWl0Rmlyc3QxID8gMCA6IHQgLSAoa09taXRGaXJzdDEgLSAxKTtcbiAgdmFyIGkgPSAwO1xuICB2YXIgc3RhcnRfaWR4ID0gaWR4O1xuICB2YXIgdXBwZXJjYXNlO1xuICBcbiAgaWYgKHNraXAgPiBsZW4pIHtcbiAgICBza2lwID0gbGVuO1xuICB9XG4gIFxuICB2YXIgcHJlZml4X3BvcyA9IDA7XG4gIHdoaWxlIChwcmVmaXhfcG9zIDwgcHJlZml4Lmxlbmd0aCkge1xuICAgIGRzdFtpZHgrK10gPSBwcmVmaXhbcHJlZml4X3BvcysrXTtcbiAgfVxuICBcbiAgd29yZCArPSBza2lwO1xuICBsZW4gLT0gc2tpcDtcbiAgXG4gIGlmICh0IDw9IGtPbWl0TGFzdDkpIHtcbiAgICBsZW4gLT0gdDtcbiAgfVxuICBcbiAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgZHN0W2lkeCsrXSA9IEJyb3RsaURpY3Rpb25hcnkuZGljdGlvbmFyeVt3b3JkICsgaV07XG4gIH1cbiAgXG4gIHVwcGVyY2FzZSA9IGlkeCAtIGxlbjtcbiAgXG4gIGlmICh0ID09PSBrVXBwZXJjYXNlRmlyc3QpIHtcbiAgICBUb1VwcGVyQ2FzZShkc3QsIHVwcGVyY2FzZSk7XG4gIH0gZWxzZSBpZiAodCA9PT0ga1VwcGVyY2FzZUFsbCkge1xuICAgIHdoaWxlIChsZW4gPiAwKSB7XG4gICAgICB2YXIgc3RlcCA9IFRvVXBwZXJDYXNlKGRzdCwgdXBwZXJjYXNlKTtcbiAgICAgIHVwcGVyY2FzZSArPSBzdGVwO1xuICAgICAgbGVuIC09IHN0ZXA7XG4gICAgfVxuICB9XG4gIFxuICB2YXIgc3VmZml4X3BvcyA9IDA7XG4gIHdoaWxlIChzdWZmaXhfcG9zIDwgc3VmZml4Lmxlbmd0aCkge1xuICAgIGRzdFtpZHgrK10gPSBzdWZmaXhbc3VmZml4X3BvcysrXTtcbiAgfVxuICBcbiAgcmV0dXJuIGlkeCAtIHN0YXJ0X2lkeDtcbn1cbiIsICIvKiBDb3B5cmlnaHQgMjAxMyBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuXG4gICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxudmFyIEJyb3RsaUlucHV0ID0gcmVxdWlyZSgnLi9zdHJlYW1zJykuQnJvdGxpSW5wdXQ7XG52YXIgQnJvdGxpT3V0cHV0ID0gcmVxdWlyZSgnLi9zdHJlYW1zJykuQnJvdGxpT3V0cHV0O1xudmFyIEJyb3RsaUJpdFJlYWRlciA9IHJlcXVpcmUoJy4vYml0X3JlYWRlcicpO1xudmFyIEJyb3RsaURpY3Rpb25hcnkgPSByZXF1aXJlKCcuL2RpY3Rpb25hcnknKTtcbnZhciBIdWZmbWFuQ29kZSA9IHJlcXVpcmUoJy4vaHVmZm1hbicpLkh1ZmZtYW5Db2RlO1xudmFyIEJyb3RsaUJ1aWxkSHVmZm1hblRhYmxlID0gcmVxdWlyZSgnLi9odWZmbWFuJykuQnJvdGxpQnVpbGRIdWZmbWFuVGFibGU7XG52YXIgQ29udGV4dCA9IHJlcXVpcmUoJy4vY29udGV4dCcpO1xudmFyIFByZWZpeCA9IHJlcXVpcmUoJy4vcHJlZml4Jyk7XG52YXIgVHJhbnNmb3JtID0gcmVxdWlyZSgnLi90cmFuc2Zvcm0nKTtcblxudmFyIGtEZWZhdWx0Q29kZUxlbmd0aCA9IDg7XG52YXIga0NvZGVMZW5ndGhSZXBlYXRDb2RlID0gMTY7XG52YXIga051bUxpdGVyYWxDb2RlcyA9IDI1NjtcbnZhciBrTnVtSW5zZXJ0QW5kQ29weUNvZGVzID0gNzA0O1xudmFyIGtOdW1CbG9ja0xlbmd0aENvZGVzID0gMjY7XG52YXIga0xpdGVyYWxDb250ZXh0Qml0cyA9IDY7XG52YXIga0Rpc3RhbmNlQ29udGV4dEJpdHMgPSAyO1xuXG52YXIgSFVGRk1BTl9UQUJMRV9CSVRTID0gODtcbnZhciBIVUZGTUFOX1RBQkxFX01BU0sgPSAweGZmO1xuLyogTWF4aW11bSBwb3NzaWJsZSBIdWZmbWFuIHRhYmxlIHNpemUgZm9yIGFuIGFscGhhYmV0IHNpemUgb2YgNzA0LCBtYXggY29kZVxuICogbGVuZ3RoIDE1IGFuZCByb290IHRhYmxlIGJpdHMgOC4gKi9cbnZhciBIVUZGTUFOX01BWF9UQUJMRV9TSVpFID0gMTA4MDtcblxudmFyIENPREVfTEVOR1RIX0NPREVTID0gMTg7XG52YXIga0NvZGVMZW5ndGhDb2RlT3JkZXIgPSBuZXcgVWludDhBcnJheShbXG4gIDEsIDIsIDMsIDQsIDAsIDUsIDE3LCA2LCAxNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSxcbl0pO1xuXG52YXIgTlVNX0RJU1RBTkNFX1NIT1JUX0NPREVTID0gMTY7XG52YXIga0Rpc3RhbmNlU2hvcnRDb2RlSW5kZXhPZmZzZXQgPSBuZXcgVWludDhBcnJheShbXG4gIDMsIDIsIDEsIDAsIDMsIDMsIDMsIDMsIDMsIDMsIDIsIDIsIDIsIDIsIDIsIDJcbl0pO1xuXG52YXIga0Rpc3RhbmNlU2hvcnRDb2RlVmFsdWVPZmZzZXQgPSBuZXcgSW50OEFycmF5KFtcbiAgMCwgMCwgMCwgMCwgLTEsIDEsIC0yLCAyLCAtMywgMywgLTEsIDEsIC0yLCAyLCAtMywgM1xuXSk7XG5cbnZhciBrTWF4SHVmZm1hblRhYmxlU2l6ZSA9IG5ldyBVaW50MTZBcnJheShbXG4gIDI1NiwgNDAyLCA0MzYsIDQ2OCwgNTAwLCA1MzQsIDU2NiwgNTk4LCA2MzAsIDY2MiwgNjk0LCA3MjYsIDc1OCwgNzkwLCA4MjIsXG4gIDg1NCwgODg2LCA5MjAsIDk1MiwgOTg0LCAxMDE2LCAxMDQ4LCAxMDgwXG5dKTtcblxuZnVuY3Rpb24gRGVjb2RlV2luZG93Qml0cyhicikge1xuICB2YXIgbjtcbiAgaWYgKGJyLnJlYWRCaXRzKDEpID09PSAwKSB7XG4gICAgcmV0dXJuIDE2O1xuICB9XG4gIFxuICBuID0gYnIucmVhZEJpdHMoMyk7XG4gIGlmIChuID4gMCkge1xuICAgIHJldHVybiAxNyArIG47XG4gIH1cbiAgXG4gIG4gPSBici5yZWFkQml0cygzKTtcbiAgaWYgKG4gPiAwKSB7XG4gICAgcmV0dXJuIDggKyBuO1xuICB9XG4gIFxuICByZXR1cm4gMTc7XG59XG5cbi8qIERlY29kZXMgYSBudW1iZXIgaW4gdGhlIHJhbmdlIFswLi4yNTVdLCBieSByZWFkaW5nIDEgLSAxMSBiaXRzLiAqL1xuZnVuY3Rpb24gRGVjb2RlVmFyTGVuVWludDgoYnIpIHtcbiAgaWYgKGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgdmFyIG5iaXRzID0gYnIucmVhZEJpdHMoMyk7XG4gICAgaWYgKG5iaXRzID09PSAwKSB7XG4gICAgICByZXR1cm4gMTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGJyLnJlYWRCaXRzKG5iaXRzKSArICgxIDw8IG5iaXRzKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIDA7XG59XG5cbmZ1bmN0aW9uIE1ldGFCbG9ja0xlbmd0aCgpIHtcbiAgdGhpcy5tZXRhX2Jsb2NrX2xlbmd0aCA9IDA7XG4gIHRoaXMuaW5wdXRfZW5kID0gMDtcbiAgdGhpcy5pc191bmNvbXByZXNzZWQgPSAwO1xuICB0aGlzLmlzX21ldGFkYXRhID0gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIERlY29kZU1ldGFCbG9ja0xlbmd0aChicikge1xuICB2YXIgb3V0ID0gbmV3IE1ldGFCbG9ja0xlbmd0aDsgIFxuICB2YXIgc2l6ZV9uaWJibGVzO1xuICB2YXIgc2l6ZV9ieXRlcztcbiAgdmFyIGk7XG4gIFxuICBvdXQuaW5wdXRfZW5kID0gYnIucmVhZEJpdHMoMSk7XG4gIGlmIChvdXQuaW5wdXRfZW5kICYmIGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgcmV0dXJuIG91dDtcbiAgfVxuICBcbiAgc2l6ZV9uaWJibGVzID0gYnIucmVhZEJpdHMoMikgKyA0O1xuICBpZiAoc2l6ZV9uaWJibGVzID09PSA3KSB7XG4gICAgb3V0LmlzX21ldGFkYXRhID0gdHJ1ZTtcbiAgICBcbiAgICBpZiAoYnIucmVhZEJpdHMoMSkgIT09IDApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVzZXJ2ZWQgYml0Jyk7XG4gICAgXG4gICAgc2l6ZV9ieXRlcyA9IGJyLnJlYWRCaXRzKDIpO1xuICAgIGlmIChzaXplX2J5dGVzID09PSAwKVxuICAgICAgcmV0dXJuIG91dDtcbiAgICBcbiAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZV9ieXRlczsgaSsrKSB7XG4gICAgICB2YXIgbmV4dF9ieXRlID0gYnIucmVhZEJpdHMoOCk7XG4gICAgICBpZiAoaSArIDEgPT09IHNpemVfYnl0ZXMgJiYgc2l6ZV9ieXRlcyA+IDEgJiYgbmV4dF9ieXRlID09PSAwKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgc2l6ZSBieXRlJyk7XG4gICAgICBcbiAgICAgIG91dC5tZXRhX2Jsb2NrX2xlbmd0aCB8PSBuZXh0X2J5dGUgPDwgKGkgKiA4KTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgZm9yIChpID0gMDsgaSA8IHNpemVfbmliYmxlczsgKytpKSB7XG4gICAgICB2YXIgbmV4dF9uaWJibGUgPSBici5yZWFkQml0cyg0KTtcbiAgICAgIGlmIChpICsgMSA9PT0gc2l6ZV9uaWJibGVzICYmIHNpemVfbmliYmxlcyA+IDQgJiYgbmV4dF9uaWJibGUgPT09IDApXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBzaXplIG5pYmJsZScpO1xuICAgICAgXG4gICAgICBvdXQubWV0YV9ibG9ja19sZW5ndGggfD0gbmV4dF9uaWJibGUgPDwgKGkgKiA0KTtcbiAgICB9XG4gIH1cbiAgXG4gICsrb3V0Lm1ldGFfYmxvY2tfbGVuZ3RoO1xuICBcbiAgaWYgKCFvdXQuaW5wdXRfZW5kICYmICFvdXQuaXNfbWV0YWRhdGEpIHtcbiAgICBvdXQuaXNfdW5jb21wcmVzc2VkID0gYnIucmVhZEJpdHMoMSk7XG4gIH1cbiAgXG4gIHJldHVybiBvdXQ7XG59XG5cbi8qIERlY29kZXMgdGhlIG5leHQgSHVmZm1hbiBjb2RlIGZyb20gYml0LXN0cmVhbS4gKi9cbmZ1bmN0aW9uIFJlYWRTeW1ib2wodGFibGUsIGluZGV4LCBicikge1xuICB2YXIgc3RhcnRfaW5kZXggPSBpbmRleDtcbiAgXG4gIHZhciBuYml0cztcbiAgYnIuZmlsbEJpdFdpbmRvdygpO1xuICBpbmRleCArPSAoYnIudmFsXyA+Pj4gYnIuYml0X3Bvc18pICYgSFVGRk1BTl9UQUJMRV9NQVNLO1xuICBuYml0cyA9IHRhYmxlW2luZGV4XS5iaXRzIC0gSFVGRk1BTl9UQUJMRV9CSVRTO1xuICBpZiAobmJpdHMgPiAwKSB7XG4gICAgYnIuYml0X3Bvc18gKz0gSFVGRk1BTl9UQUJMRV9CSVRTO1xuICAgIGluZGV4ICs9IHRhYmxlW2luZGV4XS52YWx1ZTtcbiAgICBpbmRleCArPSAoYnIudmFsXyA+Pj4gYnIuYml0X3Bvc18pICYgKCgxIDw8IG5iaXRzKSAtIDEpO1xuICB9XG4gIGJyLmJpdF9wb3NfICs9IHRhYmxlW2luZGV4XS5iaXRzO1xuICByZXR1cm4gdGFibGVbaW5kZXhdLnZhbHVlO1xufVxuXG5mdW5jdGlvbiBSZWFkSHVmZm1hbkNvZGVMZW5ndGhzKGNvZGVfbGVuZ3RoX2NvZGVfbGVuZ3RocywgbnVtX3N5bWJvbHMsIGNvZGVfbGVuZ3RocywgYnIpIHtcbiAgdmFyIHN5bWJvbCA9IDA7XG4gIHZhciBwcmV2X2NvZGVfbGVuID0ga0RlZmF1bHRDb2RlTGVuZ3RoO1xuICB2YXIgcmVwZWF0ID0gMDtcbiAgdmFyIHJlcGVhdF9jb2RlX2xlbiA9IDA7XG4gIHZhciBzcGFjZSA9IDMyNzY4O1xuICBcbiAgdmFyIHRhYmxlID0gW107XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgMzI7IGkrKylcbiAgICB0YWJsZS5wdXNoKG5ldyBIdWZmbWFuQ29kZSgwLCAwKSk7XG4gIFxuICBCcm90bGlCdWlsZEh1ZmZtYW5UYWJsZSh0YWJsZSwgMCwgNSwgY29kZV9sZW5ndGhfY29kZV9sZW5ndGhzLCBDT0RFX0xFTkdUSF9DT0RFUyk7XG5cbiAgd2hpbGUgKHN5bWJvbCA8IG51bV9zeW1ib2xzICYmIHNwYWNlID4gMCkge1xuICAgIHZhciBwID0gMDtcbiAgICB2YXIgY29kZV9sZW47XG4gICAgXG4gICAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICAgIGJyLmZpbGxCaXRXaW5kb3coKTtcbiAgICBwICs9IChici52YWxfID4+PiBici5iaXRfcG9zXykgJiAzMTtcbiAgICBici5iaXRfcG9zXyArPSB0YWJsZVtwXS5iaXRzO1xuICAgIGNvZGVfbGVuID0gdGFibGVbcF0udmFsdWUgJiAweGZmO1xuICAgIGlmIChjb2RlX2xlbiA8IGtDb2RlTGVuZ3RoUmVwZWF0Q29kZSkge1xuICAgICAgcmVwZWF0ID0gMDtcbiAgICAgIGNvZGVfbGVuZ3Roc1tzeW1ib2wrK10gPSBjb2RlX2xlbjtcbiAgICAgIGlmIChjb2RlX2xlbiAhPT0gMCkge1xuICAgICAgICBwcmV2X2NvZGVfbGVuID0gY29kZV9sZW47XG4gICAgICAgIHNwYWNlIC09IDMyNzY4ID4+IGNvZGVfbGVuO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgZXh0cmFfYml0cyA9IGNvZGVfbGVuIC0gMTQ7XG4gICAgICB2YXIgb2xkX3JlcGVhdDtcbiAgICAgIHZhciByZXBlYXRfZGVsdGE7XG4gICAgICB2YXIgbmV3X2xlbiA9IDA7XG4gICAgICBpZiAoY29kZV9sZW4gPT09IGtDb2RlTGVuZ3RoUmVwZWF0Q29kZSkge1xuICAgICAgICBuZXdfbGVuID0gcHJldl9jb2RlX2xlbjtcbiAgICAgIH1cbiAgICAgIGlmIChyZXBlYXRfY29kZV9sZW4gIT09IG5ld19sZW4pIHtcbiAgICAgICAgcmVwZWF0ID0gMDtcbiAgICAgICAgcmVwZWF0X2NvZGVfbGVuID0gbmV3X2xlbjtcbiAgICAgIH1cbiAgICAgIG9sZF9yZXBlYXQgPSByZXBlYXQ7XG4gICAgICBpZiAocmVwZWF0ID4gMCkge1xuICAgICAgICByZXBlYXQgLT0gMjtcbiAgICAgICAgcmVwZWF0IDw8PSBleHRyYV9iaXRzO1xuICAgICAgfVxuICAgICAgcmVwZWF0ICs9IGJyLnJlYWRCaXRzKGV4dHJhX2JpdHMpICsgMztcbiAgICAgIHJlcGVhdF9kZWx0YSA9IHJlcGVhdCAtIG9sZF9yZXBlYXQ7XG4gICAgICBpZiAoc3ltYm9sICsgcmVwZWF0X2RlbHRhID4gbnVtX3N5bWJvbHMpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbUmVhZEh1ZmZtYW5Db2RlTGVuZ3Roc10gc3ltYm9sICsgcmVwZWF0X2RlbHRhID4gbnVtX3N5bWJvbHMnKTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgZm9yICh2YXIgeCA9IDA7IHggPCByZXBlYXRfZGVsdGE7IHgrKylcbiAgICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbCArIHhdID0gcmVwZWF0X2NvZGVfbGVuO1xuICAgICAgXG4gICAgICBzeW1ib2wgKz0gcmVwZWF0X2RlbHRhO1xuICAgICAgXG4gICAgICBpZiAocmVwZWF0X2NvZGVfbGVuICE9PSAwKSB7XG4gICAgICAgIHNwYWNlIC09IHJlcGVhdF9kZWx0YSA8PCAoMTUgLSByZXBlYXRfY29kZV9sZW4pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpZiAoc3BhY2UgIT09IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJbUmVhZEh1ZmZtYW5Db2RlTGVuZ3Roc10gc3BhY2UgPSBcIiArIHNwYWNlKTtcbiAgfVxuICBcbiAgZm9yICg7IHN5bWJvbCA8IG51bV9zeW1ib2xzOyBzeW1ib2wrKylcbiAgICBjb2RlX2xlbmd0aHNbc3ltYm9sXSA9IDA7XG59XG5cbmZ1bmN0aW9uIFJlYWRIdWZmbWFuQ29kZShhbHBoYWJldF9zaXplLCB0YWJsZXMsIHRhYmxlLCBicikge1xuICB2YXIgdGFibGVfc2l6ZSA9IDA7XG4gIHZhciBzaW1wbGVfY29kZV9vcl9za2lwO1xuICB2YXIgY29kZV9sZW5ndGhzID0gbmV3IFVpbnQ4QXJyYXkoYWxwaGFiZXRfc2l6ZSk7XG4gIFxuICBici5yZWFkTW9yZUlucHV0KCk7XG4gIFxuICAvKiBzaW1wbGVfY29kZV9vcl9za2lwIGlzIHVzZWQgYXMgZm9sbG93czpcbiAgICAgMSBmb3Igc2ltcGxlIGNvZGU7XG4gICAgIDAgZm9yIG5vIHNraXBwaW5nLCAyIHNraXBzIDIgY29kZSBsZW5ndGhzLCAzIHNraXBzIDMgY29kZSBsZW5ndGhzICovXG4gIHNpbXBsZV9jb2RlX29yX3NraXAgPSBici5yZWFkQml0cygyKTtcbiAgaWYgKHNpbXBsZV9jb2RlX29yX3NraXAgPT09IDEpIHtcbiAgICAvKiBSZWFkIHN5bWJvbHMsIGNvZGVzICYgY29kZSBsZW5ndGhzIGRpcmVjdGx5LiAqL1xuICAgIHZhciBpO1xuICAgIHZhciBtYXhfYml0c19jb3VudGVyID0gYWxwaGFiZXRfc2l6ZSAtIDE7XG4gICAgdmFyIG1heF9iaXRzID0gMDtcbiAgICB2YXIgc3ltYm9scyA9IG5ldyBJbnQzMkFycmF5KDQpO1xuICAgIHZhciBudW1fc3ltYm9scyA9IGJyLnJlYWRCaXRzKDIpICsgMTtcbiAgICB3aGlsZSAobWF4X2JpdHNfY291bnRlcikge1xuICAgICAgbWF4X2JpdHNfY291bnRlciA+Pj0gMTtcbiAgICAgICsrbWF4X2JpdHM7XG4gICAgfVxuXG4gICAgZm9yIChpID0gMDsgaSA8IG51bV9zeW1ib2xzOyArK2kpIHtcbiAgICAgIHN5bWJvbHNbaV0gPSBici5yZWFkQml0cyhtYXhfYml0cykgJSBhbHBoYWJldF9zaXplO1xuICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbaV1dID0gMjtcbiAgICB9XG4gICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbMF1dID0gMTtcbiAgICBzd2l0Y2ggKG51bV9zeW1ib2xzKSB7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAzOlxuICAgICAgICBpZiAoKHN5bWJvbHNbMF0gPT09IHN5bWJvbHNbMV0pIHx8XG4gICAgICAgICAgICAoc3ltYm9sc1swXSA9PT0gc3ltYm9sc1syXSkgfHxcbiAgICAgICAgICAgIChzeW1ib2xzWzFdID09PSBzeW1ib2xzWzJdKSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignW1JlYWRIdWZmbWFuQ29kZV0gaW52YWxpZCBzeW1ib2xzJyk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI6XG4gICAgICAgIGlmIChzeW1ib2xzWzBdID09PSBzeW1ib2xzWzFdKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbUmVhZEh1ZmZtYW5Db2RlXSBpbnZhbGlkIHN5bWJvbHMnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbMV1dID0gMTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIGlmICgoc3ltYm9sc1swXSA9PT0gc3ltYm9sc1sxXSkgfHxcbiAgICAgICAgICAgIChzeW1ib2xzWzBdID09PSBzeW1ib2xzWzJdKSB8fFxuICAgICAgICAgICAgKHN5bWJvbHNbMF0gPT09IHN5bWJvbHNbM10pIHx8XG4gICAgICAgICAgICAoc3ltYm9sc1sxXSA9PT0gc3ltYm9sc1syXSkgfHxcbiAgICAgICAgICAgIChzeW1ib2xzWzFdID09PSBzeW1ib2xzWzNdKSB8fFxuICAgICAgICAgICAgKHN5bWJvbHNbMl0gPT09IHN5bWJvbHNbM10pKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbUmVhZEh1ZmZtYW5Db2RlXSBpbnZhbGlkIHN5bWJvbHMnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaWYgKGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbMl1dID0gMztcbiAgICAgICAgICBjb2RlX2xlbmd0aHNbc3ltYm9sc1szXV0gPSAzO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvZGVfbGVuZ3Roc1tzeW1ib2xzWzBdXSA9IDI7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9IGVsc2UgeyAgLyogRGVjb2RlIEh1ZmZtYW4tY29kZWQgY29kZSBsZW5ndGhzLiAqL1xuICAgIHZhciBpO1xuICAgIHZhciBjb2RlX2xlbmd0aF9jb2RlX2xlbmd0aHMgPSBuZXcgVWludDhBcnJheShDT0RFX0xFTkdUSF9DT0RFUyk7XG4gICAgdmFyIHNwYWNlID0gMzI7XG4gICAgdmFyIG51bV9jb2RlcyA9IDA7XG4gICAgLyogU3RhdGljIEh1ZmZtYW4gY29kZSBmb3IgdGhlIGNvZGUgbGVuZ3RoIGNvZGUgbGVuZ3RocyAqL1xuICAgIHZhciBodWZmID0gW1xuICAgICAgbmV3IEh1ZmZtYW5Db2RlKDIsIDApLCBuZXcgSHVmZm1hbkNvZGUoMiwgNCksIG5ldyBIdWZmbWFuQ29kZSgyLCAzKSwgbmV3IEh1ZmZtYW5Db2RlKDMsIDIpLCBcbiAgICAgIG5ldyBIdWZmbWFuQ29kZSgyLCAwKSwgbmV3IEh1ZmZtYW5Db2RlKDIsIDQpLCBuZXcgSHVmZm1hbkNvZGUoMiwgMyksIG5ldyBIdWZmbWFuQ29kZSg0LCAxKSxcbiAgICAgIG5ldyBIdWZmbWFuQ29kZSgyLCAwKSwgbmV3IEh1ZmZtYW5Db2RlKDIsIDQpLCBuZXcgSHVmZm1hbkNvZGUoMiwgMyksIG5ldyBIdWZmbWFuQ29kZSgzLCAyKSwgXG4gICAgICBuZXcgSHVmZm1hbkNvZGUoMiwgMCksIG5ldyBIdWZmbWFuQ29kZSgyLCA0KSwgbmV3IEh1ZmZtYW5Db2RlKDIsIDMpLCBuZXcgSHVmZm1hbkNvZGUoNCwgNSlcbiAgICBdO1xuICAgIGZvciAoaSA9IHNpbXBsZV9jb2RlX29yX3NraXA7IGkgPCBDT0RFX0xFTkdUSF9DT0RFUyAmJiBzcGFjZSA+IDA7ICsraSkge1xuICAgICAgdmFyIGNvZGVfbGVuX2lkeCA9IGtDb2RlTGVuZ3RoQ29kZU9yZGVyW2ldO1xuICAgICAgdmFyIHAgPSAwO1xuICAgICAgdmFyIHY7XG4gICAgICBici5maWxsQml0V2luZG93KCk7XG4gICAgICBwICs9IChici52YWxfID4+PiBici5iaXRfcG9zXykgJiAxNTtcbiAgICAgIGJyLmJpdF9wb3NfICs9IGh1ZmZbcF0uYml0cztcbiAgICAgIHYgPSBodWZmW3BdLnZhbHVlO1xuICAgICAgY29kZV9sZW5ndGhfY29kZV9sZW5ndGhzW2NvZGVfbGVuX2lkeF0gPSB2O1xuICAgICAgaWYgKHYgIT09IDApIHtcbiAgICAgICAgc3BhY2UgLT0gKDMyID4+IHYpO1xuICAgICAgICArK251bV9jb2RlcztcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgaWYgKCEobnVtX2NvZGVzID09PSAxIHx8IHNwYWNlID09PSAwKSlcbiAgICAgIHRocm93IG5ldyBFcnJvcignW1JlYWRIdWZmbWFuQ29kZV0gaW52YWxpZCBudW1fY29kZXMgb3Igc3BhY2UnKTtcbiAgICBcbiAgICBSZWFkSHVmZm1hbkNvZGVMZW5ndGhzKGNvZGVfbGVuZ3RoX2NvZGVfbGVuZ3RocywgYWxwaGFiZXRfc2l6ZSwgY29kZV9sZW5ndGhzLCBicik7XG4gIH1cbiAgXG4gIHRhYmxlX3NpemUgPSBCcm90bGlCdWlsZEh1ZmZtYW5UYWJsZSh0YWJsZXMsIHRhYmxlLCBIVUZGTUFOX1RBQkxFX0JJVFMsIGNvZGVfbGVuZ3RocywgYWxwaGFiZXRfc2l6ZSk7XG4gIFxuICBpZiAodGFibGVfc2l6ZSA9PT0gMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIltSZWFkSHVmZm1hbkNvZGVdIEJ1aWxkSHVmZm1hblRhYmxlIGZhaWxlZDogXCIpO1xuICB9XG4gIFxuICByZXR1cm4gdGFibGVfc2l6ZTtcbn1cblxuZnVuY3Rpb24gUmVhZEJsb2NrTGVuZ3RoKHRhYmxlLCBpbmRleCwgYnIpIHtcbiAgdmFyIGNvZGU7XG4gIHZhciBuYml0cztcbiAgY29kZSA9IFJlYWRTeW1ib2wodGFibGUsIGluZGV4LCBicik7XG4gIG5iaXRzID0gUHJlZml4LmtCbG9ja0xlbmd0aFByZWZpeENvZGVbY29kZV0ubmJpdHM7XG4gIHJldHVybiBQcmVmaXgua0Jsb2NrTGVuZ3RoUHJlZml4Q29kZVtjb2RlXS5vZmZzZXQgKyBici5yZWFkQml0cyhuYml0cyk7XG59XG5cbmZ1bmN0aW9uIFRyYW5zbGF0ZVNob3J0Q29kZXMoY29kZSwgcmluZ2J1ZmZlciwgaW5kZXgpIHtcbiAgdmFyIHZhbDtcbiAgaWYgKGNvZGUgPCBOVU1fRElTVEFOQ0VfU0hPUlRfQ09ERVMpIHtcbiAgICBpbmRleCArPSBrRGlzdGFuY2VTaG9ydENvZGVJbmRleE9mZnNldFtjb2RlXTtcbiAgICBpbmRleCAmPSAzO1xuICAgIHZhbCA9IHJpbmdidWZmZXJbaW5kZXhdICsga0Rpc3RhbmNlU2hvcnRDb2RlVmFsdWVPZmZzZXRbY29kZV07XG4gIH0gZWxzZSB7XG4gICAgdmFsID0gY29kZSAtIE5VTV9ESVNUQU5DRV9TSE9SVF9DT0RFUyArIDE7XG4gIH1cbiAgcmV0dXJuIHZhbDtcbn1cblxuZnVuY3Rpb24gTW92ZVRvRnJvbnQodiwgaW5kZXgpIHtcbiAgdmFyIHZhbHVlID0gdltpbmRleF07XG4gIHZhciBpID0gaW5kZXg7XG4gIGZvciAoOyBpOyAtLWkpIHZbaV0gPSB2W2kgLSAxXTtcbiAgdlswXSA9IHZhbHVlO1xufVxuXG5mdW5jdGlvbiBJbnZlcnNlTW92ZVRvRnJvbnRUcmFuc2Zvcm0odiwgdl9sZW4pIHtcbiAgdmFyIG10ZiA9IG5ldyBVaW50OEFycmF5KDI1Nik7XG4gIHZhciBpO1xuICBmb3IgKGkgPSAwOyBpIDwgMjU2OyArK2kpIHtcbiAgICBtdGZbaV0gPSBpO1xuICB9XG4gIGZvciAoaSA9IDA7IGkgPCB2X2xlbjsgKytpKSB7XG4gICAgdmFyIGluZGV4ID0gdltpXTtcbiAgICB2W2ldID0gbXRmW2luZGV4XTtcbiAgICBpZiAoaW5kZXgpIE1vdmVUb0Zyb250KG10ZiwgaW5kZXgpO1xuICB9XG59XG5cbi8qIENvbnRhaW5zIGEgY29sbGVjdGlvbiBvZiBodWZmbWFuIHRyZWVzIHdpdGggdGhlIHNhbWUgYWxwaGFiZXQgc2l6ZS4gKi9cbmZ1bmN0aW9uIEh1ZmZtYW5UcmVlR3JvdXAoYWxwaGFiZXRfc2l6ZSwgbnVtX2h0cmVlcykge1xuICB0aGlzLmFscGhhYmV0X3NpemUgPSBhbHBoYWJldF9zaXplO1xuICB0aGlzLm51bV9odHJlZXMgPSBudW1faHRyZWVzO1xuICB0aGlzLmNvZGVzID0gbmV3IEFycmF5KG51bV9odHJlZXMgKyBudW1faHRyZWVzICoga01heEh1ZmZtYW5UYWJsZVNpemVbKGFscGhhYmV0X3NpemUgKyAzMSkgPj4+IDVdKTsgIFxuICB0aGlzLmh0cmVlcyA9IG5ldyBVaW50MzJBcnJheShudW1faHRyZWVzKTtcbn1cblxuSHVmZm1hblRyZWVHcm91cC5wcm90b3R5cGUuZGVjb2RlID0gZnVuY3Rpb24oYnIpIHtcbiAgdmFyIGk7XG4gIHZhciB0YWJsZV9zaXplO1xuICB2YXIgbmV4dCA9IDA7XG4gIGZvciAoaSA9IDA7IGkgPCB0aGlzLm51bV9odHJlZXM7ICsraSkge1xuICAgIHRoaXMuaHRyZWVzW2ldID0gbmV4dDtcbiAgICB0YWJsZV9zaXplID0gUmVhZEh1ZmZtYW5Db2RlKHRoaXMuYWxwaGFiZXRfc2l6ZSwgdGhpcy5jb2RlcywgbmV4dCwgYnIpO1xuICAgIG5leHQgKz0gdGFibGVfc2l6ZTtcbiAgfVxufTtcblxuZnVuY3Rpb24gRGVjb2RlQ29udGV4dE1hcChjb250ZXh0X21hcF9zaXplLCBicikge1xuICB2YXIgb3V0ID0geyBudW1faHRyZWVzOiBudWxsLCBjb250ZXh0X21hcDogbnVsbCB9O1xuICB2YXIgdXNlX3JsZV9mb3JfemVyb3M7XG4gIHZhciBtYXhfcnVuX2xlbmd0aF9wcmVmaXggPSAwO1xuICB2YXIgdGFibGU7XG4gIHZhciBpO1xuICBcbiAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICB2YXIgbnVtX2h0cmVlcyA9IG91dC5udW1faHRyZWVzID0gRGVjb2RlVmFyTGVuVWludDgoYnIpICsgMTtcblxuICB2YXIgY29udGV4dF9tYXAgPSBvdXQuY29udGV4dF9tYXAgPSBuZXcgVWludDhBcnJheShjb250ZXh0X21hcF9zaXplKTtcbiAgaWYgKG51bV9odHJlZXMgPD0gMSkge1xuICAgIHJldHVybiBvdXQ7XG4gIH1cblxuICB1c2VfcmxlX2Zvcl96ZXJvcyA9IGJyLnJlYWRCaXRzKDEpO1xuICBpZiAodXNlX3JsZV9mb3JfemVyb3MpIHtcbiAgICBtYXhfcnVuX2xlbmd0aF9wcmVmaXggPSBici5yZWFkQml0cyg0KSArIDE7XG4gIH1cbiAgXG4gIHRhYmxlID0gW107XG4gIGZvciAoaSA9IDA7IGkgPCBIVUZGTUFOX01BWF9UQUJMRV9TSVpFOyBpKyspIHtcbiAgICB0YWJsZVtpXSA9IG5ldyBIdWZmbWFuQ29kZSgwLCAwKTtcbiAgfVxuICBcbiAgUmVhZEh1ZmZtYW5Db2RlKG51bV9odHJlZXMgKyBtYXhfcnVuX2xlbmd0aF9wcmVmaXgsIHRhYmxlLCAwLCBicik7XG4gIFxuICBmb3IgKGkgPSAwOyBpIDwgY29udGV4dF9tYXBfc2l6ZTspIHtcbiAgICB2YXIgY29kZTtcblxuICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICBjb2RlID0gUmVhZFN5bWJvbCh0YWJsZSwgMCwgYnIpO1xuICAgIGlmIChjb2RlID09PSAwKSB7XG4gICAgICBjb250ZXh0X21hcFtpXSA9IDA7XG4gICAgICArK2k7XG4gICAgfSBlbHNlIGlmIChjb2RlIDw9IG1heF9ydW5fbGVuZ3RoX3ByZWZpeCkge1xuICAgICAgdmFyIHJlcHMgPSAxICsgKDEgPDwgY29kZSkgKyBici5yZWFkQml0cyhjb2RlKTtcbiAgICAgIHdoaWxlICgtLXJlcHMpIHtcbiAgICAgICAgaWYgKGkgPj0gY29udGV4dF9tYXBfc2l6ZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIltEZWNvZGVDb250ZXh0TWFwXSBpID49IGNvbnRleHRfbWFwX3NpemVcIik7XG4gICAgICAgIH1cbiAgICAgICAgY29udGV4dF9tYXBbaV0gPSAwO1xuICAgICAgICArK2k7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRleHRfbWFwW2ldID0gY29kZSAtIG1heF9ydW5fbGVuZ3RoX3ByZWZpeDtcbiAgICAgICsraTtcbiAgICB9XG4gIH1cbiAgaWYgKGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgSW52ZXJzZU1vdmVUb0Zyb250VHJhbnNmb3JtKGNvbnRleHRfbWFwLCBjb250ZXh0X21hcF9zaXplKTtcbiAgfVxuICBcbiAgcmV0dXJuIG91dDtcbn1cblxuZnVuY3Rpb24gRGVjb2RlQmxvY2tUeXBlKG1heF9ibG9ja190eXBlLCB0cmVlcywgdHJlZV90eXBlLCBibG9ja190eXBlcywgcmluZ2J1ZmZlcnMsIGluZGV4ZXMsIGJyKSB7XG4gIHZhciByaW5nYnVmZmVyID0gdHJlZV90eXBlICogMjtcbiAgdmFyIGluZGV4ID0gdHJlZV90eXBlO1xuICB2YXIgdHlwZV9jb2RlID0gUmVhZFN5bWJvbCh0cmVlcywgdHJlZV90eXBlICogSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICB2YXIgYmxvY2tfdHlwZTtcbiAgaWYgKHR5cGVfY29kZSA9PT0gMCkge1xuICAgIGJsb2NrX3R5cGUgPSByaW5nYnVmZmVyc1tyaW5nYnVmZmVyICsgKGluZGV4ZXNbaW5kZXhdICYgMSldO1xuICB9IGVsc2UgaWYgKHR5cGVfY29kZSA9PT0gMSkge1xuICAgIGJsb2NrX3R5cGUgPSByaW5nYnVmZmVyc1tyaW5nYnVmZmVyICsgKChpbmRleGVzW2luZGV4XSAtIDEpICYgMSldICsgMTtcbiAgfSBlbHNlIHtcbiAgICBibG9ja190eXBlID0gdHlwZV9jb2RlIC0gMjtcbiAgfVxuICBpZiAoYmxvY2tfdHlwZSA+PSBtYXhfYmxvY2tfdHlwZSkge1xuICAgIGJsb2NrX3R5cGUgLT0gbWF4X2Jsb2NrX3R5cGU7XG4gIH1cbiAgYmxvY2tfdHlwZXNbdHJlZV90eXBlXSA9IGJsb2NrX3R5cGU7XG4gIHJpbmdidWZmZXJzW3JpbmdidWZmZXIgKyAoaW5kZXhlc1tpbmRleF0gJiAxKV0gPSBibG9ja190eXBlO1xuICArK2luZGV4ZXNbaW5kZXhdO1xufVxuXG5mdW5jdGlvbiBDb3B5VW5jb21wcmVzc2VkQmxvY2tUb091dHB1dChvdXRwdXQsIGxlbiwgcG9zLCByaW5nYnVmZmVyLCByaW5nYnVmZmVyX21hc2ssIGJyKSB7XG4gIHZhciByYl9zaXplID0gcmluZ2J1ZmZlcl9tYXNrICsgMTtcbiAgdmFyIHJiX3BvcyA9IHBvcyAmIHJpbmdidWZmZXJfbWFzaztcbiAgdmFyIGJyX3BvcyA9IGJyLnBvc18gJiBCcm90bGlCaXRSZWFkZXIuSUJVRl9NQVNLO1xuICB2YXIgbmJ5dGVzO1xuXG4gIC8qIEZvciBzaG9ydCBsZW5ndGhzIGNvcHkgYnl0ZS1ieS1ieXRlICovXG4gIGlmIChsZW4gPCA4IHx8IGJyLmJpdF9wb3NfICsgKGxlbiA8PCAzKSA8IGJyLmJpdF9lbmRfcG9zXykge1xuICAgIHdoaWxlIChsZW4tLSA+IDApIHtcbiAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgIHJpbmdidWZmZXJbcmJfcG9zKytdID0gYnIucmVhZEJpdHMoOCk7XG4gICAgICBpZiAocmJfcG9zID09PSByYl9zaXplKSB7XG4gICAgICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByYl9zaXplKTtcbiAgICAgICAgcmJfcG9zID0gMDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKGJyLmJpdF9lbmRfcG9zXyA8IDMyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdbQ29weVVuY29tcHJlc3NlZEJsb2NrVG9PdXRwdXRdIGJyLmJpdF9lbmRfcG9zXyA8IDMyJyk7XG4gIH1cblxuICAvKiBDb3B5IHJlbWFpbmluZyAwLTQgYnl0ZXMgZnJvbSBici52YWxfIHRvIHJpbmdidWZmZXIuICovXG4gIHdoaWxlIChici5iaXRfcG9zXyA8IDMyKSB7XG4gICAgcmluZ2J1ZmZlcltyYl9wb3NdID0gKGJyLnZhbF8gPj4+IGJyLmJpdF9wb3NfKTtcbiAgICBici5iaXRfcG9zXyArPSA4O1xuICAgICsrcmJfcG9zO1xuICAgIC0tbGVuO1xuICB9XG5cbiAgLyogQ29weSByZW1haW5pbmcgYnl0ZXMgZnJvbSBici5idWZfIHRvIHJpbmdidWZmZXIuICovXG4gIG5ieXRlcyA9IChici5iaXRfZW5kX3Bvc18gLSBici5iaXRfcG9zXykgPj4gMztcbiAgaWYgKGJyX3BvcyArIG5ieXRlcyA+IEJyb3RsaUJpdFJlYWRlci5JQlVGX01BU0spIHtcbiAgICB2YXIgdGFpbCA9IEJyb3RsaUJpdFJlYWRlci5JQlVGX01BU0sgKyAxIC0gYnJfcG9zO1xuICAgIGZvciAodmFyIHggPSAwOyB4IDwgdGFpbDsgeCsrKVxuICAgICAgcmluZ2J1ZmZlcltyYl9wb3MgKyB4XSA9IGJyLmJ1Zl9bYnJfcG9zICsgeF07XG4gICAgXG4gICAgbmJ5dGVzIC09IHRhaWw7XG4gICAgcmJfcG9zICs9IHRhaWw7XG4gICAgbGVuIC09IHRhaWw7XG4gICAgYnJfcG9zID0gMDtcbiAgfVxuXG4gIGZvciAodmFyIHggPSAwOyB4IDwgbmJ5dGVzOyB4KyspXG4gICAgcmluZ2J1ZmZlcltyYl9wb3MgKyB4XSA9IGJyLmJ1Zl9bYnJfcG9zICsgeF07XG4gIFxuICByYl9wb3MgKz0gbmJ5dGVzO1xuICBsZW4gLT0gbmJ5dGVzO1xuXG4gIC8qIElmIHdlIHdyb3RlIHBhc3QgdGhlIGxvZ2ljYWwgZW5kIG9mIHRoZSByaW5nYnVmZmVyLCBjb3B5IHRoZSB0YWlsIG9mIHRoZVxuICAgICByaW5nYnVmZmVyIHRvIGl0cyBiZWdpbm5pbmcgYW5kIGZsdXNoIHRoZSByaW5nYnVmZmVyIHRvIHRoZSBvdXRwdXQuICovXG4gIGlmIChyYl9wb3MgPj0gcmJfc2l6ZSkge1xuICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByYl9zaXplKTtcbiAgICByYl9wb3MgLT0gcmJfc2l6ZTsgICAgXG4gICAgZm9yICh2YXIgeCA9IDA7IHggPCByYl9wb3M7IHgrKylcbiAgICAgIHJpbmdidWZmZXJbeF0gPSByaW5nYnVmZmVyW3JiX3NpemUgKyB4XTtcbiAgfVxuXG4gIC8qIElmIHdlIGhhdmUgbW9yZSB0byBjb3B5IHRoYW4gdGhlIHJlbWFpbmluZyBzaXplIG9mIHRoZSByaW5nYnVmZmVyLCB0aGVuIHdlXG4gICAgIGZpcnN0IGZpbGwgdGhlIHJpbmdidWZmZXIgZnJvbSB0aGUgaW5wdXQgYW5kIHRoZW4gZmx1c2ggdGhlIHJpbmdidWZmZXIgdG9cbiAgICAgdGhlIG91dHB1dCAqL1xuICB3aGlsZSAocmJfcG9zICsgbGVuID49IHJiX3NpemUpIHtcbiAgICBuYnl0ZXMgPSByYl9zaXplIC0gcmJfcG9zO1xuICAgIGlmIChici5pbnB1dF8ucmVhZChyaW5nYnVmZmVyLCByYl9wb3MsIG5ieXRlcykgPCBuYnl0ZXMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignW0NvcHlVbmNvbXByZXNzZWRCbG9ja1RvT3V0cHV0XSBub3QgZW5vdWdoIGJ5dGVzJyk7XG4gICAgfVxuICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByYl9zaXplKTtcbiAgICBsZW4gLT0gbmJ5dGVzO1xuICAgIHJiX3BvcyA9IDA7XG4gIH1cblxuICAvKiBDb3B5IHN0cmFpZ2h0IGZyb20gdGhlIGlucHV0IG9udG8gdGhlIHJpbmdidWZmZXIuIFRoZSByaW5nYnVmZmVyIHdpbGwgYmVcbiAgICAgZmx1c2hlZCB0byB0aGUgb3V0cHV0IGF0IGEgbGF0ZXIgdGltZS4gKi9cbiAgaWYgKGJyLmlucHV0Xy5yZWFkKHJpbmdidWZmZXIsIHJiX3BvcywgbGVuKSA8IGxlbikge1xuICAgIHRocm93IG5ldyBFcnJvcignW0NvcHlVbmNvbXByZXNzZWRCbG9ja1RvT3V0cHV0XSBub3QgZW5vdWdoIGJ5dGVzJyk7XG4gIH1cblxuICAvKiBSZXN0b3JlIHRoZSBzdGF0ZSBvZiB0aGUgYml0IHJlYWRlci4gKi9cbiAgYnIucmVzZXQoKTtcbn1cblxuLyogQWR2YW5jZXMgdGhlIGJpdCByZWFkZXIgcG9zaXRpb24gdG8gdGhlIG5leHQgYnl0ZSBib3VuZGFyeSBhbmQgdmVyaWZpZXNcbiAgIHRoYXQgYW55IHNraXBwZWQgYml0cyBhcmUgc2V0IHRvIHplcm8uICovXG5mdW5jdGlvbiBKdW1wVG9CeXRlQm91bmRhcnkoYnIpIHtcbiAgdmFyIG5ld19iaXRfcG9zID0gKGJyLmJpdF9wb3NfICsgNykgJiB+NztcbiAgdmFyIHBhZF9iaXRzID0gYnIucmVhZEJpdHMobmV3X2JpdF9wb3MgLSBici5iaXRfcG9zXyk7XG4gIHJldHVybiBwYWRfYml0cyA9PSAwO1xufVxuXG5mdW5jdGlvbiBCcm90bGlEZWNvbXByZXNzZWRTaXplKGJ1ZmZlcikge1xuICB2YXIgaW5wdXQgPSBuZXcgQnJvdGxpSW5wdXQoYnVmZmVyKTtcbiAgdmFyIGJyID0gbmV3IEJyb3RsaUJpdFJlYWRlcihpbnB1dCk7XG4gIERlY29kZVdpbmRvd0JpdHMoYnIpO1xuICB2YXIgb3V0ID0gRGVjb2RlTWV0YUJsb2NrTGVuZ3RoKGJyKTtcbiAgcmV0dXJuIG91dC5tZXRhX2Jsb2NrX2xlbmd0aDtcbn1cblxuZXhwb3J0cy5Ccm90bGlEZWNvbXByZXNzZWRTaXplID0gQnJvdGxpRGVjb21wcmVzc2VkU2l6ZTtcblxuZnVuY3Rpb24gQnJvdGxpRGVjb21wcmVzc0J1ZmZlcihidWZmZXIsIG91dHB1dF9zaXplKSB7XG4gIHZhciBpbnB1dCA9IG5ldyBCcm90bGlJbnB1dChidWZmZXIpO1xuICBcbiAgaWYgKG91dHB1dF9zaXplID09IG51bGwpIHtcbiAgICBvdXRwdXRfc2l6ZSA9IEJyb3RsaURlY29tcHJlc3NlZFNpemUoYnVmZmVyKTtcbiAgfVxuICBcbiAgdmFyIG91dHB1dF9idWZmZXIgPSBuZXcgVWludDhBcnJheShvdXRwdXRfc2l6ZSk7XG4gIHZhciBvdXRwdXQgPSBuZXcgQnJvdGxpT3V0cHV0KG91dHB1dF9idWZmZXIpO1xuICBcbiAgQnJvdGxpRGVjb21wcmVzcyhpbnB1dCwgb3V0cHV0KTtcbiAgXG4gIGlmIChvdXRwdXQucG9zIDwgb3V0cHV0LmJ1ZmZlci5sZW5ndGgpIHtcbiAgICBvdXRwdXQuYnVmZmVyID0gb3V0cHV0LmJ1ZmZlci5zdWJhcnJheSgwLCBvdXRwdXQucG9zKTtcbiAgfVxuICBcbiAgcmV0dXJuIG91dHB1dC5idWZmZXI7XG59XG5cbmV4cG9ydHMuQnJvdGxpRGVjb21wcmVzc0J1ZmZlciA9IEJyb3RsaURlY29tcHJlc3NCdWZmZXI7XG5cbmZ1bmN0aW9uIEJyb3RsaURlY29tcHJlc3MoaW5wdXQsIG91dHB1dCkge1xuICB2YXIgaTtcbiAgdmFyIHBvcyA9IDA7XG4gIHZhciBpbnB1dF9lbmQgPSAwO1xuICB2YXIgd2luZG93X2JpdHMgPSAwO1xuICB2YXIgbWF4X2JhY2t3YXJkX2Rpc3RhbmNlO1xuICB2YXIgbWF4X2Rpc3RhbmNlID0gMDtcbiAgdmFyIHJpbmdidWZmZXJfc2l6ZTtcbiAgdmFyIHJpbmdidWZmZXJfbWFzaztcbiAgdmFyIHJpbmdidWZmZXI7XG4gIHZhciByaW5nYnVmZmVyX2VuZDtcbiAgLyogVGhpcyByaW5nIGJ1ZmZlciBob2xkcyBhIGZldyBwYXN0IGNvcHkgZGlzdGFuY2VzIHRoYXQgd2lsbCBiZSB1c2VkIGJ5ICovXG4gIC8qIHNvbWUgc3BlY2lhbCBkaXN0YW5jZSBjb2Rlcy4gKi9cbiAgdmFyIGRpc3RfcmIgPSBbIDE2LCAxNSwgMTEsIDQgXTtcbiAgdmFyIGRpc3RfcmJfaWR4ID0gMDtcbiAgLyogVGhlIHByZXZpb3VzIDIgYnl0ZXMgdXNlZCBmb3IgY29udGV4dC4gKi9cbiAgdmFyIHByZXZfYnl0ZTEgPSAwO1xuICB2YXIgcHJldl9ieXRlMiA9IDA7XG4gIHZhciBoZ3JvdXAgPSBbbmV3IEh1ZmZtYW5UcmVlR3JvdXAoMCwgMCksIG5ldyBIdWZmbWFuVHJlZUdyb3VwKDAsIDApLCBuZXcgSHVmZm1hblRyZWVHcm91cCgwLCAwKV07XG4gIHZhciBibG9ja190eXBlX3RyZWVzO1xuICB2YXIgYmxvY2tfbGVuX3RyZWVzO1xuICB2YXIgYnI7XG5cbiAgLyogV2UgbmVlZCB0aGUgc2xhY2sgcmVnaW9uIGZvciB0aGUgZm9sbG93aW5nIHJlYXNvbnM6XG4gICAgICAgLSBhbHdheXMgZG9pbmcgdHdvIDgtYnl0ZSBjb3BpZXMgZm9yIGZhc3QgYmFja3dhcmQgY29weWluZ1xuICAgICAgIC0gdHJhbnNmb3Jtc1xuICAgICAgIC0gZmx1c2hpbmcgdGhlIGlucHV0IHJpbmdidWZmZXIgd2hlbiBkZWNvZGluZyB1bmNvbXByZXNzZWQgYmxvY2tzICovXG4gIHZhciBrUmluZ0J1ZmZlcldyaXRlQWhlYWRTbGFjayA9IDEyOCArIEJyb3RsaUJpdFJlYWRlci5SRUFEX1NJWkU7XG5cbiAgYnIgPSBuZXcgQnJvdGxpQml0UmVhZGVyKGlucHV0KTtcblxuICAvKiBEZWNvZGUgd2luZG93IHNpemUuICovXG4gIHdpbmRvd19iaXRzID0gRGVjb2RlV2luZG93Qml0cyhicik7XG4gIG1heF9iYWNrd2FyZF9kaXN0YW5jZSA9ICgxIDw8IHdpbmRvd19iaXRzKSAtIDE2O1xuXG4gIHJpbmdidWZmZXJfc2l6ZSA9IDEgPDwgd2luZG93X2JpdHM7XG4gIHJpbmdidWZmZXJfbWFzayA9IHJpbmdidWZmZXJfc2l6ZSAtIDE7XG4gIHJpbmdidWZmZXIgPSBuZXcgVWludDhBcnJheShyaW5nYnVmZmVyX3NpemUgKyBrUmluZ0J1ZmZlcldyaXRlQWhlYWRTbGFjayArIEJyb3RsaURpY3Rpb25hcnkubWF4RGljdGlvbmFyeVdvcmRMZW5ndGgpO1xuICByaW5nYnVmZmVyX2VuZCA9IHJpbmdidWZmZXJfc2l6ZTtcblxuICBibG9ja190eXBlX3RyZWVzID0gW107XG4gIGJsb2NrX2xlbl90cmVlcyA9IFtdO1xuICBmb3IgKHZhciB4ID0gMDsgeCA8IDMgKiBIVUZGTUFOX01BWF9UQUJMRV9TSVpFOyB4KyspIHtcbiAgICBibG9ja190eXBlX3RyZWVzW3hdID0gbmV3IEh1ZmZtYW5Db2RlKDAsIDApO1xuICAgIGJsb2NrX2xlbl90cmVlc1t4XSA9IG5ldyBIdWZmbWFuQ29kZSgwLCAwKTtcbiAgfVxuXG4gIHdoaWxlICghaW5wdXRfZW5kKSB7XG4gICAgdmFyIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiA9IDA7XG4gICAgdmFyIGlzX3VuY29tcHJlc3NlZDtcbiAgICB2YXIgYmxvY2tfbGVuZ3RoID0gWyAxIDw8IDI4LCAxIDw8IDI4LCAxIDw8IDI4IF07XG4gICAgdmFyIGJsb2NrX3R5cGUgPSBbIDAgXTtcbiAgICB2YXIgbnVtX2Jsb2NrX3R5cGVzID0gWyAxLCAxLCAxIF07XG4gICAgdmFyIGJsb2NrX3R5cGVfcmIgPSBbIDAsIDEsIDAsIDEsIDAsIDEgXTtcbiAgICB2YXIgYmxvY2tfdHlwZV9yYl9pbmRleCA9IFsgMCBdO1xuICAgIHZhciBkaXN0YW5jZV9wb3N0Zml4X2JpdHM7XG4gICAgdmFyIG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXM7XG4gICAgdmFyIGRpc3RhbmNlX3Bvc3RmaXhfbWFzaztcbiAgICB2YXIgbnVtX2Rpc3RhbmNlX2NvZGVzO1xuICAgIHZhciBjb250ZXh0X21hcCA9IG51bGw7XG4gICAgdmFyIGNvbnRleHRfbW9kZXMgPSBudWxsO1xuICAgIHZhciBudW1fbGl0ZXJhbF9odHJlZXM7XG4gICAgdmFyIGRpc3RfY29udGV4dF9tYXAgPSBudWxsO1xuICAgIHZhciBudW1fZGlzdF9odHJlZXM7XG4gICAgdmFyIGNvbnRleHRfb2Zmc2V0ID0gMDtcbiAgICB2YXIgY29udGV4dF9tYXBfc2xpY2UgPSBudWxsO1xuICAgIHZhciBsaXRlcmFsX2h0cmVlX2luZGV4ID0gMDtcbiAgICB2YXIgZGlzdF9jb250ZXh0X29mZnNldCA9IDA7XG4gICAgdmFyIGRpc3RfY29udGV4dF9tYXBfc2xpY2UgPSBudWxsO1xuICAgIHZhciBkaXN0X2h0cmVlX2luZGV4ID0gMDtcbiAgICB2YXIgY29udGV4dF9sb29rdXBfb2Zmc2V0MSA9IDA7XG4gICAgdmFyIGNvbnRleHRfbG9va3VwX29mZnNldDIgPSAwO1xuICAgIHZhciBjb250ZXh0X21vZGU7XG4gICAgdmFyIGh0cmVlX2NvbW1hbmQ7XG5cbiAgICBmb3IgKGkgPSAwOyBpIDwgMzsgKytpKSB7XG4gICAgICBoZ3JvdXBbaV0uY29kZXMgPSBudWxsO1xuICAgICAgaGdyb3VwW2ldLmh0cmVlcyA9IG51bGw7XG4gICAgfVxuXG4gICAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICAgIFxuICAgIHZhciBfb3V0ID0gRGVjb2RlTWV0YUJsb2NrTGVuZ3RoKGJyKTtcbiAgICBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gPSBfb3V0Lm1ldGFfYmxvY2tfbGVuZ3RoO1xuICAgIGlmIChwb3MgKyBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gPiBvdXRwdXQuYnVmZmVyLmxlbmd0aCkge1xuICAgICAgLyogV2UgbmVlZCB0byBncm93IHRoZSBvdXRwdXQgYnVmZmVyIHRvIGZpdCB0aGUgYWRkaXRpb25hbCBkYXRhLiAqL1xuICAgICAgdmFyIHRtcCA9IG5ldyBVaW50OEFycmF5KCBwb3MgKyBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gKTtcbiAgICAgIHRtcC5zZXQoIG91dHB1dC5idWZmZXIgKTtcbiAgICAgIG91dHB1dC5idWZmZXIgPSB0bXA7XG4gICAgfSAgICBcbiAgICBpbnB1dF9lbmQgPSBfb3V0LmlucHV0X2VuZDtcbiAgICBpc191bmNvbXByZXNzZWQgPSBfb3V0LmlzX3VuY29tcHJlc3NlZDtcbiAgICBcbiAgICBpZiAoX291dC5pc19tZXRhZGF0YSkge1xuICAgICAgSnVtcFRvQnl0ZUJvdW5kYXJ5KGJyKTtcbiAgICAgIFxuICAgICAgZm9yICg7IG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiA+IDA7IC0tbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuKSB7XG4gICAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgICAgLyogUmVhZCBvbmUgYnl0ZSBhbmQgaWdub3JlIGl0LiAqL1xuICAgICAgICBici5yZWFkQml0cyg4KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIFxuICAgIGlmIChtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gPT09IDApIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBcbiAgICBpZiAoaXNfdW5jb21wcmVzc2VkKSB7XG4gICAgICBici5iaXRfcG9zXyA9IChici5iaXRfcG9zXyArIDcpICYgfjc7XG4gICAgICBDb3B5VW5jb21wcmVzc2VkQmxvY2tUb091dHB1dChvdXRwdXQsIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiwgcG9zLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmluZ2J1ZmZlciwgcmluZ2J1ZmZlcl9tYXNrLCBicik7XG4gICAgICBwb3MgKz0gbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuO1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIFxuICAgIGZvciAoaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICAgIG51bV9ibG9ja190eXBlc1tpXSA9IERlY29kZVZhckxlblVpbnQ4KGJyKSArIDE7XG4gICAgICBpZiAobnVtX2Jsb2NrX3R5cGVzW2ldID49IDIpIHtcbiAgICAgICAgUmVhZEh1ZmZtYW5Db2RlKG51bV9ibG9ja190eXBlc1tpXSArIDIsIGJsb2NrX3R5cGVfdHJlZXMsIGkgKiBIVUZGTUFOX01BWF9UQUJMRV9TSVpFLCBicik7XG4gICAgICAgIFJlYWRIdWZmbWFuQ29kZShrTnVtQmxvY2tMZW5ndGhDb2RlcywgYmxvY2tfbGVuX3RyZWVzLCBpICogSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICAgICAgICBibG9ja19sZW5ndGhbaV0gPSBSZWFkQmxvY2tMZW5ndGgoYmxvY2tfbGVuX3RyZWVzLCBpICogSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICAgICAgICBibG9ja190eXBlX3JiX2luZGV4W2ldID0gMTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICAgIFxuICAgIGRpc3RhbmNlX3Bvc3RmaXhfYml0cyA9IGJyLnJlYWRCaXRzKDIpO1xuICAgIG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXMgPSBOVU1fRElTVEFOQ0VfU0hPUlRfQ09ERVMgKyAoYnIucmVhZEJpdHMoNCkgPDwgZGlzdGFuY2VfcG9zdGZpeF9iaXRzKTtcbiAgICBkaXN0YW5jZV9wb3N0Zml4X21hc2sgPSAoMSA8PCBkaXN0YW5jZV9wb3N0Zml4X2JpdHMpIC0gMTtcbiAgICBudW1fZGlzdGFuY2VfY29kZXMgPSAobnVtX2RpcmVjdF9kaXN0YW5jZV9jb2RlcyArICg0OCA8PCBkaXN0YW5jZV9wb3N0Zml4X2JpdHMpKTtcbiAgICBjb250ZXh0X21vZGVzID0gbmV3IFVpbnQ4QXJyYXkobnVtX2Jsb2NrX3R5cGVzWzBdKTtcblxuICAgIGZvciAoaSA9IDA7IGkgPCBudW1fYmxvY2tfdHlwZXNbMF07ICsraSkge1xuICAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgICBjb250ZXh0X21vZGVzW2ldID0gKGJyLnJlYWRCaXRzKDIpIDw8IDEpO1xuICAgIH1cbiAgICBcbiAgICB2YXIgX28xID0gRGVjb2RlQ29udGV4dE1hcChudW1fYmxvY2tfdHlwZXNbMF0gPDwga0xpdGVyYWxDb250ZXh0Qml0cywgYnIpO1xuICAgIG51bV9saXRlcmFsX2h0cmVlcyA9IF9vMS5udW1faHRyZWVzO1xuICAgIGNvbnRleHRfbWFwID0gX28xLmNvbnRleHRfbWFwO1xuICAgIFxuICAgIHZhciBfbzIgPSBEZWNvZGVDb250ZXh0TWFwKG51bV9ibG9ja190eXBlc1syXSA8PCBrRGlzdGFuY2VDb250ZXh0Qml0cywgYnIpO1xuICAgIG51bV9kaXN0X2h0cmVlcyA9IF9vMi5udW1faHRyZWVzO1xuICAgIGRpc3RfY29udGV4dF9tYXAgPSBfbzIuY29udGV4dF9tYXA7XG4gICAgXG4gICAgaGdyb3VwWzBdID0gbmV3IEh1ZmZtYW5UcmVlR3JvdXAoa051bUxpdGVyYWxDb2RlcywgbnVtX2xpdGVyYWxfaHRyZWVzKTtcbiAgICBoZ3JvdXBbMV0gPSBuZXcgSHVmZm1hblRyZWVHcm91cChrTnVtSW5zZXJ0QW5kQ29weUNvZGVzLCBudW1fYmxvY2tfdHlwZXNbMV0pO1xuICAgIGhncm91cFsyXSA9IG5ldyBIdWZmbWFuVHJlZUdyb3VwKG51bV9kaXN0YW5jZV9jb2RlcywgbnVtX2Rpc3RfaHRyZWVzKTtcblxuICAgIGZvciAoaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICAgIGhncm91cFtpXS5kZWNvZGUoYnIpO1xuICAgIH1cblxuICAgIGNvbnRleHRfbWFwX3NsaWNlID0gMDtcbiAgICBkaXN0X2NvbnRleHRfbWFwX3NsaWNlID0gMDtcbiAgICBjb250ZXh0X21vZGUgPSBjb250ZXh0X21vZGVzW2Jsb2NrX3R5cGVbMF1dO1xuICAgIGNvbnRleHRfbG9va3VwX29mZnNldDEgPSBDb250ZXh0Lmxvb2t1cE9mZnNldHNbY29udGV4dF9tb2RlXTtcbiAgICBjb250ZXh0X2xvb2t1cF9vZmZzZXQyID0gQ29udGV4dC5sb29rdXBPZmZzZXRzW2NvbnRleHRfbW9kZSArIDFdO1xuICAgIGh0cmVlX2NvbW1hbmQgPSBoZ3JvdXBbMV0uaHRyZWVzWzBdO1xuXG4gICAgd2hpbGUgKG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiA+IDApIHtcbiAgICAgIHZhciBjbWRfY29kZTtcbiAgICAgIHZhciByYW5nZV9pZHg7XG4gICAgICB2YXIgaW5zZXJ0X2NvZGU7XG4gICAgICB2YXIgY29weV9jb2RlO1xuICAgICAgdmFyIGluc2VydF9sZW5ndGg7XG4gICAgICB2YXIgY29weV9sZW5ndGg7XG4gICAgICB2YXIgZGlzdGFuY2VfY29kZTtcbiAgICAgIHZhciBkaXN0YW5jZTtcbiAgICAgIHZhciBjb250ZXh0O1xuICAgICAgdmFyIGo7XG4gICAgICB2YXIgY29weV9kc3Q7XG5cbiAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgIFxuICAgICAgaWYgKGJsb2NrX2xlbmd0aFsxXSA9PT0gMCkge1xuICAgICAgICBEZWNvZGVCbG9ja1R5cGUobnVtX2Jsb2NrX3R5cGVzWzFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tfdHlwZV90cmVlcywgMSwgYmxvY2tfdHlwZSwgYmxvY2tfdHlwZV9yYixcbiAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrX3R5cGVfcmJfaW5kZXgsIGJyKTtcbiAgICAgICAgYmxvY2tfbGVuZ3RoWzFdID0gUmVhZEJsb2NrTGVuZ3RoKGJsb2NrX2xlbl90cmVlcywgSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICAgICAgICBodHJlZV9jb21tYW5kID0gaGdyb3VwWzFdLmh0cmVlc1tibG9ja190eXBlWzFdXTtcbiAgICAgIH1cbiAgICAgIC0tYmxvY2tfbGVuZ3RoWzFdO1xuICAgICAgY21kX2NvZGUgPSBSZWFkU3ltYm9sKGhncm91cFsxXS5jb2RlcywgaHRyZWVfY29tbWFuZCwgYnIpO1xuICAgICAgcmFuZ2VfaWR4ID0gY21kX2NvZGUgPj4gNjtcbiAgICAgIGlmIChyYW5nZV9pZHggPj0gMikge1xuICAgICAgICByYW5nZV9pZHggLT0gMjtcbiAgICAgICAgZGlzdGFuY2VfY29kZSA9IC0xO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGlzdGFuY2VfY29kZSA9IDA7XG4gICAgICB9XG4gICAgICBpbnNlcnRfY29kZSA9IFByZWZpeC5rSW5zZXJ0UmFuZ2VMdXRbcmFuZ2VfaWR4XSArICgoY21kX2NvZGUgPj4gMykgJiA3KTtcbiAgICAgIGNvcHlfY29kZSA9IFByZWZpeC5rQ29weVJhbmdlTHV0W3JhbmdlX2lkeF0gKyAoY21kX2NvZGUgJiA3KTtcbiAgICAgIGluc2VydF9sZW5ndGggPSBQcmVmaXgua0luc2VydExlbmd0aFByZWZpeENvZGVbaW5zZXJ0X2NvZGVdLm9mZnNldCArXG4gICAgICAgICAgYnIucmVhZEJpdHMoUHJlZml4LmtJbnNlcnRMZW5ndGhQcmVmaXhDb2RlW2luc2VydF9jb2RlXS5uYml0cyk7XG4gICAgICBjb3B5X2xlbmd0aCA9IFByZWZpeC5rQ29weUxlbmd0aFByZWZpeENvZGVbY29weV9jb2RlXS5vZmZzZXQgK1xuICAgICAgICAgIGJyLnJlYWRCaXRzKFByZWZpeC5rQ29weUxlbmd0aFByZWZpeENvZGVbY29weV9jb2RlXS5uYml0cyk7XG4gICAgICBwcmV2X2J5dGUxID0gcmluZ2J1ZmZlcltwb3MtMSAmIHJpbmdidWZmZXJfbWFza107XG4gICAgICBwcmV2X2J5dGUyID0gcmluZ2J1ZmZlcltwb3MtMiAmIHJpbmdidWZmZXJfbWFza107XG4gICAgICBmb3IgKGogPSAwOyBqIDwgaW5zZXJ0X2xlbmd0aDsgKytqKSB7XG4gICAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcblxuICAgICAgICBpZiAoYmxvY2tfbGVuZ3RoWzBdID09PSAwKSB7XG4gICAgICAgICAgRGVjb2RlQmxvY2tUeXBlKG51bV9ibG9ja190eXBlc1swXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tfdHlwZV90cmVlcywgMCwgYmxvY2tfdHlwZSwgYmxvY2tfdHlwZV9yYixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tfdHlwZV9yYl9pbmRleCwgYnIpO1xuICAgICAgICAgIGJsb2NrX2xlbmd0aFswXSA9IFJlYWRCbG9ja0xlbmd0aChibG9ja19sZW5fdHJlZXMsIDAsIGJyKTtcbiAgICAgICAgICBjb250ZXh0X29mZnNldCA9IGJsb2NrX3R5cGVbMF0gPDwga0xpdGVyYWxDb250ZXh0Qml0cztcbiAgICAgICAgICBjb250ZXh0X21hcF9zbGljZSA9IGNvbnRleHRfb2Zmc2V0O1xuICAgICAgICAgIGNvbnRleHRfbW9kZSA9IGNvbnRleHRfbW9kZXNbYmxvY2tfdHlwZVswXV07XG4gICAgICAgICAgY29udGV4dF9sb29rdXBfb2Zmc2V0MSA9IENvbnRleHQubG9va3VwT2Zmc2V0c1tjb250ZXh0X21vZGVdO1xuICAgICAgICAgIGNvbnRleHRfbG9va3VwX29mZnNldDIgPSBDb250ZXh0Lmxvb2t1cE9mZnNldHNbY29udGV4dF9tb2RlICsgMV07XG4gICAgICAgIH1cbiAgICAgICAgY29udGV4dCA9IChDb250ZXh0Lmxvb2t1cFtjb250ZXh0X2xvb2t1cF9vZmZzZXQxICsgcHJldl9ieXRlMV0gfFxuICAgICAgICAgICAgICAgICAgIENvbnRleHQubG9va3VwW2NvbnRleHRfbG9va3VwX29mZnNldDIgKyBwcmV2X2J5dGUyXSk7XG4gICAgICAgIGxpdGVyYWxfaHRyZWVfaW5kZXggPSBjb250ZXh0X21hcFtjb250ZXh0X21hcF9zbGljZSArIGNvbnRleHRdO1xuICAgICAgICAtLWJsb2NrX2xlbmd0aFswXTtcbiAgICAgICAgcHJldl9ieXRlMiA9IHByZXZfYnl0ZTE7XG4gICAgICAgIHByZXZfYnl0ZTEgPSBSZWFkU3ltYm9sKGhncm91cFswXS5jb2RlcywgaGdyb3VwWzBdLmh0cmVlc1tsaXRlcmFsX2h0cmVlX2luZGV4XSwgYnIpO1xuICAgICAgICByaW5nYnVmZmVyW3BvcyAmIHJpbmdidWZmZXJfbWFza10gPSBwcmV2X2J5dGUxO1xuICAgICAgICBpZiAoKHBvcyAmIHJpbmdidWZmZXJfbWFzaykgPT09IHJpbmdidWZmZXJfbWFzaykge1xuICAgICAgICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByaW5nYnVmZmVyX3NpemUpO1xuICAgICAgICB9XG4gICAgICAgICsrcG9zO1xuICAgICAgfVxuICAgICAgbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuIC09IGluc2VydF9sZW5ndGg7XG4gICAgICBpZiAobWV0YV9ibG9ja19yZW1haW5pbmdfbGVuIDw9IDApIGJyZWFrO1xuXG4gICAgICBpZiAoZGlzdGFuY2VfY29kZSA8IDApIHtcbiAgICAgICAgdmFyIGNvbnRleHQ7XG4gICAgICAgIFxuICAgICAgICBici5yZWFkTW9yZUlucHV0KCk7XG4gICAgICAgIGlmIChibG9ja19sZW5ndGhbMl0gPT09IDApIHtcbiAgICAgICAgICBEZWNvZGVCbG9ja1R5cGUobnVtX2Jsb2NrX3R5cGVzWzJdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja190eXBlX3RyZWVzLCAyLCBibG9ja190eXBlLCBibG9ja190eXBlX3JiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja190eXBlX3JiX2luZGV4LCBicik7XG4gICAgICAgICAgYmxvY2tfbGVuZ3RoWzJdID0gUmVhZEJsb2NrTGVuZ3RoKGJsb2NrX2xlbl90cmVlcywgMiAqIEhVRkZNQU5fTUFYX1RBQkxFX1NJWkUsIGJyKTtcbiAgICAgICAgICBkaXN0X2NvbnRleHRfb2Zmc2V0ID0gYmxvY2tfdHlwZVsyXSA8PCBrRGlzdGFuY2VDb250ZXh0Qml0cztcbiAgICAgICAgICBkaXN0X2NvbnRleHRfbWFwX3NsaWNlID0gZGlzdF9jb250ZXh0X29mZnNldDtcbiAgICAgICAgfVxuICAgICAgICAtLWJsb2NrX2xlbmd0aFsyXTtcbiAgICAgICAgY29udGV4dCA9IChjb3B5X2xlbmd0aCA+IDQgPyAzIDogY29weV9sZW5ndGggLSAyKSAmIDB4ZmY7XG4gICAgICAgIGRpc3RfaHRyZWVfaW5kZXggPSBkaXN0X2NvbnRleHRfbWFwW2Rpc3RfY29udGV4dF9tYXBfc2xpY2UgKyBjb250ZXh0XTtcbiAgICAgICAgZGlzdGFuY2VfY29kZSA9IFJlYWRTeW1ib2woaGdyb3VwWzJdLmNvZGVzLCBoZ3JvdXBbMl0uaHRyZWVzW2Rpc3RfaHRyZWVfaW5kZXhdLCBicik7XG4gICAgICAgIGlmIChkaXN0YW5jZV9jb2RlID49IG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXMpIHtcbiAgICAgICAgICB2YXIgbmJpdHM7XG4gICAgICAgICAgdmFyIHBvc3RmaXg7XG4gICAgICAgICAgdmFyIG9mZnNldDtcbiAgICAgICAgICBkaXN0YW5jZV9jb2RlIC09IG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXM7XG4gICAgICAgICAgcG9zdGZpeCA9IGRpc3RhbmNlX2NvZGUgJiBkaXN0YW5jZV9wb3N0Zml4X21hc2s7XG4gICAgICAgICAgZGlzdGFuY2VfY29kZSA+Pj0gZGlzdGFuY2VfcG9zdGZpeF9iaXRzO1xuICAgICAgICAgIG5iaXRzID0gKGRpc3RhbmNlX2NvZGUgPj4gMSkgKyAxO1xuICAgICAgICAgIG9mZnNldCA9ICgoMiArIChkaXN0YW5jZV9jb2RlICYgMSkpIDw8IG5iaXRzKSAtIDQ7XG4gICAgICAgICAgZGlzdGFuY2VfY29kZSA9IG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXMgK1xuICAgICAgICAgICAgICAoKG9mZnNldCArIGJyLnJlYWRCaXRzKG5iaXRzKSkgPDxcbiAgICAgICAgICAgICAgIGRpc3RhbmNlX3Bvc3RmaXhfYml0cykgKyBwb3N0Zml4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qIENvbnZlcnQgdGhlIGRpc3RhbmNlIGNvZGUgdG8gdGhlIGFjdHVhbCBkaXN0YW5jZSBieSBwb3NzaWJseSBsb29raW5nICovXG4gICAgICAvKiB1cCBwYXN0IGRpc3RuYWNlcyBmcm9tIHRoZSByaW5nYnVmZmVyLiAqL1xuICAgICAgZGlzdGFuY2UgPSBUcmFuc2xhdGVTaG9ydENvZGVzKGRpc3RhbmNlX2NvZGUsIGRpc3RfcmIsIGRpc3RfcmJfaWR4KTtcbiAgICAgIGlmIChkaXN0YW5jZSA8IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbQnJvdGxpRGVjb21wcmVzc10gaW52YWxpZCBkaXN0YW5jZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAocG9zIDwgbWF4X2JhY2t3YXJkX2Rpc3RhbmNlICYmXG4gICAgICAgICAgbWF4X2Rpc3RhbmNlICE9PSBtYXhfYmFja3dhcmRfZGlzdGFuY2UpIHtcbiAgICAgICAgbWF4X2Rpc3RhbmNlID0gcG9zO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbWF4X2Rpc3RhbmNlID0gbWF4X2JhY2t3YXJkX2Rpc3RhbmNlO1xuICAgICAgfVxuXG4gICAgICBjb3B5X2RzdCA9IHBvcyAmIHJpbmdidWZmZXJfbWFzaztcblxuICAgICAgaWYgKGRpc3RhbmNlID4gbWF4X2Rpc3RhbmNlKSB7XG4gICAgICAgIGlmIChjb3B5X2xlbmd0aCA+PSBCcm90bGlEaWN0aW9uYXJ5Lm1pbkRpY3Rpb25hcnlXb3JkTGVuZ3RoICYmXG4gICAgICAgICAgICBjb3B5X2xlbmd0aCA8PSBCcm90bGlEaWN0aW9uYXJ5Lm1heERpY3Rpb25hcnlXb3JkTGVuZ3RoKSB7XG4gICAgICAgICAgdmFyIG9mZnNldCA9IEJyb3RsaURpY3Rpb25hcnkub2Zmc2V0c0J5TGVuZ3RoW2NvcHlfbGVuZ3RoXTtcbiAgICAgICAgICB2YXIgd29yZF9pZCA9IGRpc3RhbmNlIC0gbWF4X2Rpc3RhbmNlIC0gMTtcbiAgICAgICAgICB2YXIgc2hpZnQgPSBCcm90bGlEaWN0aW9uYXJ5LnNpemVCaXRzQnlMZW5ndGhbY29weV9sZW5ndGhdO1xuICAgICAgICAgIHZhciBtYXNrID0gKDEgPDwgc2hpZnQpIC0gMTtcbiAgICAgICAgICB2YXIgd29yZF9pZHggPSB3b3JkX2lkICYgbWFzaztcbiAgICAgICAgICB2YXIgdHJhbnNmb3JtX2lkeCA9IHdvcmRfaWQgPj4gc2hpZnQ7XG4gICAgICAgICAgb2Zmc2V0ICs9IHdvcmRfaWR4ICogY29weV9sZW5ndGg7XG4gICAgICAgICAgaWYgKHRyYW5zZm9ybV9pZHggPCBUcmFuc2Zvcm0ua051bVRyYW5zZm9ybXMpIHtcbiAgICAgICAgICAgIHZhciBsZW4gPSBUcmFuc2Zvcm0udHJhbnNmb3JtRGljdGlvbmFyeVdvcmQocmluZ2J1ZmZlciwgY29weV9kc3QsIG9mZnNldCwgY29weV9sZW5ndGgsIHRyYW5zZm9ybV9pZHgpO1xuICAgICAgICAgICAgY29weV9kc3QgKz0gbGVuO1xuICAgICAgICAgICAgcG9zICs9IGxlbjtcbiAgICAgICAgICAgIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiAtPSBsZW47XG4gICAgICAgICAgICBpZiAoY29weV9kc3QgPj0gcmluZ2J1ZmZlcl9lbmQpIHtcbiAgICAgICAgICAgICAgb3V0cHV0LndyaXRlKHJpbmdidWZmZXIsIHJpbmdidWZmZXJfc2l6ZSk7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBmb3IgKHZhciBfeCA9IDA7IF94IDwgKGNvcHlfZHN0IC0gcmluZ2J1ZmZlcl9lbmQpOyBfeCsrKVxuICAgICAgICAgICAgICAgIHJpbmdidWZmZXJbX3hdID0gcmluZ2J1ZmZlcltyaW5nYnVmZmVyX2VuZCArIF94XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBiYWNrd2FyZCByZWZlcmVuY2UuIHBvczogXCIgKyBwb3MgKyBcIiBkaXN0YW5jZTogXCIgKyBkaXN0YW5jZSArXG4gICAgICAgICAgICAgIFwiIGxlbjogXCIgKyBjb3B5X2xlbmd0aCArIFwiIGJ5dGVzIGxlZnQ6IFwiICsgbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBiYWNrd2FyZCByZWZlcmVuY2UuIHBvczogXCIgKyBwb3MgKyBcIiBkaXN0YW5jZTogXCIgKyBkaXN0YW5jZSArXG4gICAgICAgICAgICBcIiBsZW46IFwiICsgY29weV9sZW5ndGggKyBcIiBieXRlcyBsZWZ0OiBcIiArIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbik7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChkaXN0YW5jZV9jb2RlID4gMCkge1xuICAgICAgICAgIGRpc3RfcmJbZGlzdF9yYl9pZHggJiAzXSA9IGRpc3RhbmNlO1xuICAgICAgICAgICsrZGlzdF9yYl9pZHg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29weV9sZW5ndGggPiBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4pIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIGJhY2t3YXJkIHJlZmVyZW5jZS4gcG9zOiBcIiArIHBvcyArIFwiIGRpc3RhbmNlOiBcIiArIGRpc3RhbmNlICtcbiAgICAgICAgICAgIFwiIGxlbjogXCIgKyBjb3B5X2xlbmd0aCArIFwiIGJ5dGVzIGxlZnQ6IFwiICsgbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoaiA9IDA7IGogPCBjb3B5X2xlbmd0aDsgKytqKSB7XG4gICAgICAgICAgcmluZ2J1ZmZlcltwb3MgJiByaW5nYnVmZmVyX21hc2tdID0gcmluZ2J1ZmZlclsocG9zIC0gZGlzdGFuY2UpICYgcmluZ2J1ZmZlcl9tYXNrXTtcbiAgICAgICAgICBpZiAoKHBvcyAmIHJpbmdidWZmZXJfbWFzaykgPT09IHJpbmdidWZmZXJfbWFzaykge1xuICAgICAgICAgICAgb3V0cHV0LndyaXRlKHJpbmdidWZmZXIsIHJpbmdidWZmZXJfc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICsrcG9zO1xuICAgICAgICAgIC0tbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qIFdoZW4gd2UgZ2V0IGhlcmUsIHdlIG11c3QgaGF2ZSBpbnNlcnRlZCBhdCBsZWFzdCBvbmUgbGl0ZXJhbCBhbmQgKi9cbiAgICAgIC8qIG1hZGUgYSBjb3B5IG9mIGF0IGxlYXN0IGxlbmd0aCB0d28sIHRoZXJlZm9yZSBhY2Nlc3NpbmcgdGhlIGxhc3QgMiAqL1xuICAgICAgLyogYnl0ZXMgaXMgdmFsaWQuICovXG4gICAgICBwcmV2X2J5dGUxID0gcmluZ2J1ZmZlclsocG9zIC0gMSkgJiByaW5nYnVmZmVyX21hc2tdO1xuICAgICAgcHJldl9ieXRlMiA9IHJpbmdidWZmZXJbKHBvcyAtIDIpICYgcmluZ2J1ZmZlcl9tYXNrXTtcbiAgICB9XG5cbiAgICAvKiBQcm90ZWN0IHBvcyBmcm9tIG92ZXJmbG93LCB3cmFwIGl0IGFyb3VuZCBhdCBldmVyeSBHQiBvZiBpbnB1dCBkYXRhICovXG4gICAgcG9zICY9IDB4M2ZmZmZmZmY7XG4gIH1cblxuICBvdXRwdXQud3JpdGUocmluZ2J1ZmZlciwgcG9zICYgcmluZ2J1ZmZlcl9tYXNrKTtcbn1cblxuZXhwb3J0cy5Ccm90bGlEZWNvbXByZXNzID0gQnJvdGxpRGVjb21wcmVzcztcblxuQnJvdGxpRGljdGlvbmFyeS5pbml0KCk7XG4iLCAibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2RlYy9kZWNvZGUnKS5Ccm90bGlEZWNvbXByZXNzQnVmZmVyO1xuIiwgIi8qKlxuICogVGhpcyBjbGFzcyBoYW5kbGVzIGlucHV0IGNvbmZpZ3VyYXRpb24gYW5kIG1hbmlwdWxhdGlvbi5cbiAqIEl0IGltcG9ydHMgdmFyaW91cyBtb2R1bGVzIGFuZCBwYWNrYWdlcyBmb3IgZmlsZSBvcGVyYXRpb25zLCBjb25maWd1cmF0aW9uIHBhcnNpbmcsIGFuZCBsb2dnaW5nLlxuICogVGhlIGNsYXNzIGhhcyBtZXRob2RzIGZvciBpbml0aWFsaXppbmcgdGhlIGlucHV0IGNvbmZpZ3VyYXRpb24sIHNldHRpbmcgZGVmYXVsdCB2YWx1ZXMsIGFuZCBjb252ZXJ0aW5nIHRoZSBjb25maWd1cmF0aW9uIHRvIGEgc3RyaW5nLlxuICogSXQgYWxzbyBoYXMgcHJvcGVydGllcyBmb3Igc3RvcmluZyB0aGUgY29uZmlndXJhdGlvbiB2YWx1ZXMsIHNlY3Rpb25zLCByZWFkbWUgcGF0aCwgYWN0aW9uIGluc3RhbmNlLCBhbmQgcmVhZG1lIGVkaXRvciBpbnN0YW5jZS5cbiAqL1xuaW1wb3J0ICogYXMgZnMgZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSAnbm9kZTp1cmwnO1xuXG5pbXBvcnQgKiBhcyBjb3JlIGZyb20gJ0BhY3Rpb25zL2NvcmUnO1xuaW1wb3J0IHsgQ29udGV4dCB9IGZyb20gJ0BhY3Rpb25zL2dpdGh1Yi9saWIvY29udGV4dC5qcyc7XG5pbXBvcnQgbmNvbmYgZnJvbSAnbmNvbmYnO1xuaW1wb3J0IFlBTUwgZnJvbSAneWFtbCc7XG5cbmltcG9ydCBBY3Rpb24sIHsgSW5wdXQgfSBmcm9tICcuL0FjdGlvbi5qcyc7XG5pbXBvcnQgeyBjb25maWdGaWxlTmFtZSwgQ29uZmlnS2V5cywgUkVBRE1FX1NFQ1RJT05TLCBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgcmVwb3NpdG9yeUZpbmRlciB9IGZyb20gJy4vaGVscGVycy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IFJlYWRtZUVkaXRvciBmcm9tICcuL3JlYWRtZS1lZGl0b3IuanMnO1xuXG5jb25zdCB7IFByb3ZpZGVyIH0gPSBuY29uZjtcbnR5cGUgSU9wdGlvbnMgPSBuY29uZi5JT3B0aW9ucztcblxuLyoqXG4gKiBHZXQgdGhlIGZpbGVuYW1lIGZyb20gdGhlIGltcG9ydC5tZXRhLnVybFxuICovXG5leHBvcnQgY29uc3QgX19maWxlbmFtZSA9IGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKTtcblxuLyoqXG4gKiBHZXQgdGhlIGRpcmVjdG9yeSBuYW1lIGZyb20gdGhlIGZpbGVuYW1lXG4gKi9cbmV4cG9ydCBjb25zdCBfX2Rpcm5hbWUgPSBwYXRoLmRpcm5hbWUoX19maWxlbmFtZSk7XG5cbi8qKlxuICogQ2hhbmdlIHdvcmtpbmcgZGlyZWN0b3J5IHRvIG91dHB1dCBvZiB3b3JraW5nRGlyZWN0b3J5KClcbiAqL1xuLy8gcHJvY2Vzcy5jaGRpcih3b3JraW5nRGlyZWN0b3J5KCkpO1xuZXhwb3J0IGNvbnN0IG1ldGFBY3Rpb25QYXRoID0gJy4uLy4uL2FjdGlvbi55bWwnO1xuXG5leHBvcnQgdHlwZSBBcmd2T3B0aW9uUHJvcGVydGllcyA9IHtcbiAgW2tleTogc3RyaW5nXToge1xuICAgIGFsaWFzOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgICBkZXNjcmliZTogc3RyaW5nO1xuICAgIHBhcnNlVmFsdWVzPzogYm9vbGVhbjtcbiAgICB0eXBlPzogc3RyaW5nO1xuICB9O1xufTtcbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29tbWFuZCBsaW5lIGFyZ3VtZW50IG9wdGlvbnMgZm9yIHRoZSBhcHBsaWNhdGlvbi5cbiAqL1xuY29uc3QgYXJndk9wdGlvbnM6IEFyZ3ZPcHRpb25Qcm9wZXJ0aWVzID0ge307XG5cbi8qKlxuICogU2F2ZSBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBhbGlhcyAtIEFsaWFzIGZvciB0aGUgc2F2ZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIHNhdmUgb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIHNhdmUgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHR5cGUgLSBUeXBlIG9mIHRoZSBzYXZlIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5TYXZlXSA9IHtcbiAgYWxpYXM6ICdzYXZlJyxcbiAgZGVzY3JpYmU6IGBTYXZlIHRoaXMgY29uZmlnIHRvICR7Y29uZmlnRmlsZU5hbWV9YCxcbiAgcGFyc2VWYWx1ZXM6IHRydWUsXG4gIHR5cGU6ICdib29sZWFuJyxcbn07XG5cbi8qKlxuICogUGF0aHMgYWN0aW9uIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmcgfCBzdHJpbmdbXX0gYWxpYXMgLSBBbGlhcyhlcykgZm9yIHRoZSBwYXRoc0FjdGlvbiBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gdHlwZSAtIFR5cGUgb2YgdGhlIHBhdGhzQWN0aW9uIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgcGF0aHNBY3Rpb24gb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLnBhdGhzQWN0aW9uXSA9IHtcbiAgYWxpYXM6IFsncGF0aHNBY3Rpb24nLCAnYWN0aW9uJ10sXG4gIHR5cGU6ICdzdHJpbmcnLFxuICBkZXNjcmliZTogJ1BhdGggdG8gdGhlIGFjdGlvbi55bWwnLFxufTtcblxuLyoqXG4gKiBQYXRocyByZWFkbWUgb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHN0cmluZ1tdfSBhbGlhcyAtIEFsaWFzKGVzKSBmb3IgdGhlIHBhdGhzUmVhZG1lIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgcGF0aHNSZWFkbWUgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBwYXRoc1JlYWRtZSBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMucGF0aHNSZWFkbWVdID0ge1xuICBhbGlhczogWydwYXRoc1JlYWRtZScsICdyZWFkbWUnXSxcbiAgdHlwZTogJ3N0cmluZycsXG4gIGRlc2NyaWJlOiAnUGF0aCB0byB0aGUgUkVBRE1FIGZpbGUnLFxufTtcblxuLyoqXG4gKiBCcmFuZGluZyBTVkcgcGF0aCBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBhbGlhcyAtIEFsaWFzIGZvciB0aGUgc3ZnIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgc3ZnIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgc3ZnIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5CcmFuZGluZ1N2Z1BhdGhdID0ge1xuICBhbGlhczogJ3N2ZycsXG4gIHR5cGU6ICdzdHJpbmcnLFxuICBkZXNjcmliZTogJ1NhdmUgYW5kIGxvYWQgdGhlIGJyYW5kaW5nIHN2ZyBpbWFnZSBpbiB0aGUgUkVBRE1FIGZyb20gdGhpcyBwYXRoJyxcbn07XG5cbi8qKlxuICogQnJhbmRpbmcgYXMgdGl0bGUgcHJlZml4IG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGFsaWFzIC0gQWxpYXMgZm9yIHRoZSBicmFuZGluZ19wcmVmaXggb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHR5cGUgLSBUeXBlIG9mIHRoZSBicmFuZGluZ19wcmVmaXggb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIGJyYW5kaW5nX3ByZWZpeCBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIGJyYW5kaW5nX3ByZWZpeCBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuQnJhbmRpbmdBc1RpdGxlUHJlZml4XSA9IHtcbiAgYWxpYXM6ICdicmFuZGluZ19wcmVmaXgnLFxuICB0eXBlOiAnYm9vbGVhbicsXG4gIHBhcnNlVmFsdWVzOiB0cnVlLFxuICBkZXNjcmliZTogJ1VzZSB0aGUgYnJhbmRpbmcgc3ZnIGFzIGEgcHJlZml4IGZvciB0aGUgUkVBRE1FIHRpdGxlJyxcbn07XG5cbi8qKlxuICogT3duZXIgb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gYWxpYXMgLSBBbGlhcyBmb3IgdGhlIG93bmVyIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgb3duZXIgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBvd25lciBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuT3duZXJdID0ge1xuICBhbGlhczogJ293bmVyJyxcbiAgdHlwZTogJ3N0cmluZycsXG4gIGRlc2NyaWJlOiAnVGhlIEdpdEh1YiBBY3Rpb24gcmVwb3NpdG9yeSBvd25lci4gaS5lOiBgYml0ZmxpZ2h0LWRldm9wc2AnLFxufTtcblxuLyoqXG4gKiBSZXBvIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGFsaWFzIC0gQWxpYXMgZm9yIHRoZSByZXBvIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgcmVwbyBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIHJlcG8gb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLlJlcG9dID0ge1xuICBhbGlhczogJ3JlcG8nLFxuICB0eXBlOiAnc3RyaW5nJyxcbiAgZGVzY3JpYmU6ICdUaGUgR2l0SHViIEFjdGlvbiByZXBvc2l0b3J5IG5hbWUuIGkuZTogYGdpdGh1Yi1hY3Rpb24tcmVhZG1lLWdlbmVyYXRvcmAnLFxufTtcblxuLyoqXG4gKiBQcmV0dGllciBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nIHwgc3RyaW5nW119IGFsaWFzIC0gQWxpYXMoZXMpIGZvciB0aGUgcHJldHRpZXIgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHR5cGUgLSBUeXBlIG9mIHRoZSBwcmV0dGllciBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgcHJldHRpZXIgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBwcmV0dGllciBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuUHJldHRpZXJdID0ge1xuICBhbGlhczogWydwcmV0dHknLCAncHJldHRpZXInXSxcbiAgdHlwZTogJ2Jvb2xlYW4nLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbiAgZGVzY3JpYmU6ICdGb3JtYXQgdGhlIG1hcmtkb3duIHVzaW5nIHByZXR0aWVyIGZvcm1hdHRlcicsXG59O1xuXG4vKipcbiAqIFZlcnNpb25pbmcgZW5hYmxlZCBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nIHwgc3RyaW5nW119IGFsaWFzIC0gQWxpYXMoZXMpIGZvciB0aGUgdmVyc2lvbmluZ19lbmFibGVkIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgdmVyc2lvbmluZ19lbmFibGVkIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGFyc2VWYWx1ZXMgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwYXJzZSB2YWx1ZXMgZm9yIHRoZSB2ZXJzaW9uaW5nX2VuYWJsZWQgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHR5cGUgLSBUeXBlIG9mIHRoZSB2ZXJzaW9uaW5nX2VuYWJsZWQgb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLlZlcnNpb25pbmdFbmFibGVkXSA9IHtcbiAgYWxpYXM6IFsndmVyc2lvbmluZycsICd2ZXJzaW9uaW5nX2VuYWJsZWQnXSxcbiAgZGVzY3JpYmU6XG4gICAgJ0VuYWJsZSB0aGUgdXBkYXRlIG9mIHRoZSB1c2FnZSB2ZXJzaW9uIHRvIG1hdGNoIHRoZSBsYXRlc3QgdmVyc2lvbiBpbiB0aGUgcGFja2FnZS5qc29uIGZpbGUnLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbiAgdHlwZTogJ2Jvb2xlYW4nLFxufTtcblxuLyoqXG4gKiBWZXJzaW9uaW5nIG92ZXJyaWRlIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmcgfCBzdHJpbmdbXX0gYWxpYXMgLSBBbGlhcyhlcykgZm9yIHRoZSB2ZXJzaW9uaW5nX292ZXJyaWRlIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgdmVyc2lvbmluZ19vdmVycmlkZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgdmVyc2lvbmluZ19vdmVycmlkZSBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuVmVyc2lvbmluZ092ZXJyaWRlXSA9IHtcbiAgYWxpYXM6IFsnc2V0dmVyc2lvbicsICd2ZXJzaW9uaW5nX292ZXJyaWRlJywgJ3ZlcnNpb25fb3ZlcnJpZGUnXSxcbiAgZGVzY3JpYmU6ICdTZXQgYSBzcGVjaWZpYyB2ZXJzaW9uIHRvIGRpc3BsYXkgaW4gdGhlIFJFQURNRS5tZCcsXG4gIHBhcnNlVmFsdWVzOiB0cnVlLFxufTtcblxuLyoqXG4gKiBWZXJzaW9uaW5nIHByZWZpeCBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nIHwgc3RyaW5nW119IGFsaWFzIC0gQWxpYXMoZXMpIGZvciB0aGUgdmVyc2lvbl9wcmVmaXggb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSB2ZXJzaW9uX3ByZWZpeCBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgdmVyc2lvbl9wcmVmaXggb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLlZlcnNpb25pbmdQcmVmaXhdID0ge1xuICBhbGlhczogWyd2cCcsICd2ZXJzaW9uX3ByZWZpeCddLFxuICBkZXNjcmliZTogXCJQcmVmaXggdGhlIHZlcnNpb24gd2l0aCB0aGlzIHZhbHVlIChpZiBpdCBpc24ndCBhbHJlYWR5IHByZWZpeGVkKVwiLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbn07XG5cbi8qKlxuICogVmVyc2lvbmluZyBicmFuY2ggb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHN0cmluZ1tdfSBhbGlhcyAtIEFsaWFzKGVzKSBmb3IgdGhlIHZlcnNpb25pbmdfZGVmYXVsdF9icmFuY2ggb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSB2ZXJzaW9uaW5nX2RlZmF1bHRfYnJhbmNoIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGFyc2VWYWx1ZXMgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwYXJzZSB2YWx1ZXMgZm9yIHRoZSB2ZXJzaW9uaW5nX2RlZmF1bHRfYnJhbmNoIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5WZXJzaW9uaW5nQnJhbmNoXSA9IHtcbiAgYWxpYXM6IFsnYnJhbmNoJywgJ3ZlcnNpb25pbmdfZGVmYXVsdF9icmFuY2gnXSxcbiAgZGVzY3JpYmU6ICdJZiB2ZXJzaW9uaW5nIGlzIGRpc2FibGVkIHNob3cgdGhpcyBicmFuY2ggaW5zdGVhZCcsXG4gIHBhcnNlVmFsdWVzOiB0cnVlLFxufTtcblxuLyoqXG4gKiBJbmNsdWRlIEdpdEh1YiB2ZXJzaW9uIGJhZGdlIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmcgfCBzdHJpbmdbXX0gYWxpYXMgLSBBbGlhcyhlcykgZm9yIHRoZSBpbmNsdWRlX2dpdGh1Yl92ZXJzaW9uX2JhZGdlIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgaW5jbHVkZV9naXRodWJfdmVyc2lvbl9iYWRnZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgaW5jbHVkZV9naXRodWJfdmVyc2lvbl9iYWRnZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gdHlwZSAtIFR5cGUgb2YgdGhlIGluY2x1ZGVfZ2l0aHViX3ZlcnNpb25fYmFkZ2Ugb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLkluY2x1ZGVHaXRodWJWZXJzaW9uQmFkZ2VdID0ge1xuICBhbGlhczogWyd2ZXJzaW9uLWJhZGdlJywgJ3ZlcnNpb25pbmdfYmFkZ2UnLCAnaW5jbHVkZV9naXRodWJfdmVyc2lvbl9iYWRnZSddLFxuICBkZXNjcmliZTogJ0Rpc3BsYXkgdGhlIGN1cnJlbnQgdmVyc2lvbiBhcyBhIGJhZGdlJyxcbiAgcGFyc2VWYWx1ZXM6IHRydWUsXG4gIHR5cGU6ICdib29sZWFuJyxcbn07XG5cbi8qKlxuICogVGl0bGUgcHJlZml4IG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmcgfCBzdHJpbmdbXX0gYWxpYXMgLSBBbGlhcyhlcykgZm9yIHRoZSB0aXRsZV9wcmVmaXggb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSB0aXRsZV9wcmVmaXggb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIHRpdGxlX3ByZWZpeCBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuVGl0bGVQcmVmaXhdID0ge1xuICBhbGlhczogWydwcmVmaXgnLCAndGl0bGVfcHJlZml4J10sXG4gIGRlc2NyaWJlOiAnQWRkIGEgcHJlZml4IHRvIHRoZSBSRUFETUUgdGl0bGUnLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbn07XG5cbi8qKlxuICogRGVidWcgTmNvbmYgb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIGRlYnVnTmNvbmYgb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIGRlYnVnTmNvbmYgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHR5cGUgLSBUeXBlIG9mIHRoZSBkZWJ1Z05jb25mIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5EZWJ1Z05jb25mXSA9IHtcbiAgYWxpYXM6IFsnZGVidWdfbmNvbmYnXSxcbiAgZGVzY3JpYmU6ICdQcmludCBvdXQgdGhlIHJlc29sdmVkIG5jb25mIG9iamVjdCB3aXRoIGFsbCB2YWx1ZXMnLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbiAgdHlwZTogJ2Jvb2xlYW4nLFxufTtcblxuLyoqXG4gKiBEZWJ1ZyBDb25maWcgb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIGRlYnVnQ29uZmlnIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGFyc2VWYWx1ZXMgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwYXJzZSB2YWx1ZXMgZm9yIHRoZSBkZWJ1Z0NvbmZpZyBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gdHlwZSAtIFR5cGUgb2YgdGhlIGRlYnVnQ29uZmlnIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5EZWJ1Z0NvbmZpZ10gPSB7XG4gIGFsaWFzOiBbJ2RlYnVnX2NvbmZpZyddLFxuICBkZXNjcmliZTogJ1ByaW50IG91dCB0aGUgcmVzb2x2ZWQgbmNvbmYgb2JqZWN0IHdpdGggYWxsIHZhbHVlcycsXG4gIHBhcnNlVmFsdWVzOiB0cnVlLFxuICB0eXBlOiAnYm9vbGVhbicsXG59O1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gaW5wdXRzIGZyb20gdGhlIGdpdGh1YiBhY3Rpb24gZG9uJ3RcbiAqIGFsbCBtYXRjaCB0aGUgaW5wdXQgbmFtZXMgd2hlbiBydW5uaW5nIG9uIGNsaS5cbiAqIFRoaXMgbWFwcyB0aGUgYWN0aW9uIGlucHV0cyB0byB0aGUgY2xpLlxuICovXG5jb25zdCBDb25maWdLZXlzSW5wdXRzTWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICBzYXZlOiBDb25maWdLZXlzLlNhdmUsXG4gIGFjdGlvbjogQ29uZmlnS2V5cy5wYXRoc0FjdGlvbixcbiAgcmVhZG1lOiBDb25maWdLZXlzLnBhdGhzUmVhZG1lLFxuICBicmFuZGluZ19zdmdfcGF0aDogQ29uZmlnS2V5cy5CcmFuZGluZ1N2Z1BhdGgsXG4gIGJyYW5kaW5nX2FzX3RpdGxlX3ByZWZpeDogQ29uZmlnS2V5cy5CcmFuZGluZ0FzVGl0bGVQcmVmaXgsXG4gIHZlcnNpb25pbmdfZW5hYmxlZDogQ29uZmlnS2V5cy5WZXJzaW9uaW5nRW5hYmxlZCxcbiAgdmVyc2lvbl9wcmVmaXg6IENvbmZpZ0tleXMuVmVyc2lvbmluZ1ByZWZpeCxcbiAgdmVyc2lvbmluZ19kZWZhdWx0X2JyYW5jaDogQ29uZmlnS2V5cy5WZXJzaW9uaW5nQnJhbmNoLFxuICB2ZXJzaW9uX292ZXJyaWRlOiBDb25maWdLZXlzLlZlcnNpb25pbmdPdmVycmlkZSxcbiAgaW5jbHVkZV9naXRodWJfdmVyc2lvbl9iYWRnZTogQ29uZmlnS2V5cy5JbmNsdWRlR2l0aHViVmVyc2lvbkJhZGdlLFxuICBvd25lcjogQ29uZmlnS2V5cy5Pd25lcixcbiAgcmVwbzogQ29uZmlnS2V5cy5SZXBvLFxuICB0aXRsZV9wcmVmaXg6IENvbmZpZ0tleXMuVGl0bGVQcmVmaXgsXG4gIHByZXR0eTogQ29uZmlnS2V5cy5QcmV0dGllcixcbn07XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBrZXkvdmFsdWUgcGFpciBvYmplY3RcbiAqL1xudHlwZSBLVlBhaXJUeXBlID0ge1xuICBrZXk6IHN0cmluZztcbiAgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn07XG5cbi8qKlxuICogVHlwZSBhbGlhcyBmb3IgUHJvdmlkZXIgaW5zdGFuY2VcbiAqL1xudHlwZSBQcm92aWRlckluc3RhbmNlID0gSW5zdGFuY2VUeXBlPHR5cGVvZiBQcm92aWRlcj47XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1HaXRIdWJJbnB1dHNUb0FyZ3YoXG4gIGxvZzogTG9nVGFzayxcbiAgY29uZmlnOiBQcm92aWRlckluc3RhbmNlLFxuICBvYmo6IEtWUGFpclR5cGUsXG4pOiB1bmRlZmluZWQgfCBLVlBhaXJUeXBlIHtcbiAgLyoqIFRoZSBvYmoua2V5IGlzIGFsd2F5cyBpbiBsb3dlcmNhc2UsIGJ1dCBpdCBjaGVja3MgZm9yIGl0IHdpdGhvdXQgY2FzZSBzZW5zaXRpdml0eSAqL1xuICBpZiAoL14oSU5QVVR8aW5wdXQpX1tBLVpfYS16XVxcdyokLy50ZXN0KG9iai5rZXkpKSB7XG4gICAgbG9nLmRlYnVnKGBQYXJzaW5nIGlucHV0OiAke29iai5rZXl9IHdpdGggaXRoIHZhbHVlOiAke29iai52YWx1ZX1gKTtcbiAgICBjb25zdCBrZXlQYXJzZWQgPSBvYmoua2V5LnJlcGxhY2UoL14oSU5QVVR8aW5wdXQpXy8sICcnKS50b0xvY2FsZUxvd2VyQ2FzZSgpO1xuICAgIGNvbnN0IGtleSA9IENvbmZpZ0tleXNJbnB1dHNNYXBba2V5UGFyc2VkXSB8fCBrZXlQYXJzZWQ7XG5cbiAgICBsb2cuZGVidWcoYE5ldyBpbnB1dCBpcyAke2tleX0gd2l0aCB0aGUgdmFsdWUgJHtvYmoudmFsdWV9YCk7XG4gICAgcmV0dXJuIHsga2V5LCB2YWx1ZTogb2JqLnZhbHVlIH07XG4gIH1cbiAgbG9nLmRlYnVnKGBJZ25vcmluZyBpbnB1dDogJHtvYmoua2V5fSB3aXRoIGl0aCB2YWx1ZTogJHtvYmoudmFsdWV9YCk7XG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogU2V0cyBjb25maWcgdmFsdWUgZnJvbSBhY3Rpb24gZmlsZSBkZWZhdWx0XG4gKlxuICogQHBhcmFtIHtBY3Rpb259IGFjdGlvbkluc3RhbmNlIC0gVGhlIGFjdGlvbiBpbnN0YW5jZVxuICogQHBhcmFtIHtzdHJpbmd9IGlucHV0TmFtZSAtIFRoZSBpbnB1dCBuYW1lXG4gKiBAcmV0dXJucyB7c3RyaW5nIHwgYm9vbGVhbiB8IHVuZGVmaW5lZH0gVGhlIGRlZmF1bHQgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldENvbmZpZ1ZhbHVlRnJvbUFjdGlvbkZpbGVEZWZhdWx0KFxuICBsb2c6IExvZ1Rhc2ssXG4gIGFjdGlvbkluc3RhbmNlOiBBY3Rpb24sXG4gIGlucHV0TmFtZTogc3RyaW5nLFxuKTogc3RyaW5nIHwgYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gIGlmIChDb25maWdLZXlzSW5wdXRzTWFwW2lucHV0TmFtZV0gPT09IHVuZGVmaW5lZCkge1xuICAgIGxvZy5lcnJvcihcbiAgICAgIGAke2lucHV0TmFtZX0gZnJvbSAke1xuICAgICAgICBhY3Rpb25JbnN0YW5jZS5wYXRoXG4gICAgICB9IGRvZXMgbm90IG1hdGNoIGEga25vd24gaW5wdXQuIEtub3duIGlucHV0cyBhcmU6ICR7T2JqZWN0LmtleXMoQ29uZmlnS2V5c0lucHV0c01hcCl9YCxcbiAgICApO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGNvbmZpZ05hbWUgPSBDb25maWdLZXlzSW5wdXRzTWFwW2lucHV0TmFtZV07XG4gIGNvbnN0IGRlZmF1bHRWYWx1ZSA9IGFjdGlvbkluc3RhbmNlLmlucHV0RGVmYXVsdChpbnB1dE5hbWUpO1xuXG4gIGxvZy5kZWJ1ZyhgRGVmYXVsdCBWYWx1ZSBmb3IgYWN0aW9uLnltbDogJHtpbnB1dE5hbWV9IENMSTogJHtjb25maWdOYW1lfSA9ICR7ZGVmYXVsdFZhbHVlfWApO1xuXG4gIHJldHVybiBkZWZhdWx0VmFsdWU7XG59XG5cbi8qKlxuICogQ29sbGVjdHMgYWxsIGRlZmF1bHQgdmFsdWVzIGZyb20gYWN0aW9uIGZpbGVcbiAqXG4gKiBAcmV0dXJucyB7SU9wdGlvbnN9IFRoZSBkZWZhdWx0IHZhbHVlcyBvYmplY3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbGxlY3RBbGxEZWZhdWx0VmFsdWVzRnJvbUFjdGlvbihcbiAgbG9nOiBMb2dUYXNrLFxuICBwcm92aWRlZE1ldGFBY3Rpb25QYXRoPzogc3RyaW5nLFxuICBwcm92aWRlZERlZmF1bHRzOiB7XG4gICAgW2tleTogc3RyaW5nXTogSW5wdXQ7XG4gIH0gPSB7fSxcbik6IElPcHRpb25zIHtcbiAgbG9nLmRlYnVnKCdDb2xsZWN0aW5nIGRlZmF1bHQgdmFsdWVzIGZyb20gYWN0aW9uLnltbCcpO1xuICAvLyBUaGlzIGxvYWRzIHRoZSBkZWZhdWx0cyBmcm9tIFRISVMgYWN0aW9uJ3Mgb3duIGFjdGlvbi55bWwgZmlsZSAoZ2l0aHViLWFjdGlvbi1yZWFkbWUtZ2VuZXJhdG9yJ3MgYWN0aW9uLnltbClcbiAgLy8gTk9UIHRoZSB1c2VyJ3MgYWN0aW9uLnltbCBmaWxlICh3aGljaCBpcyBsb2FkZWQgc2VwYXJhdGVseSB2aWEgdGhlICdhY3Rpb24nIGlucHV0IHBhcmFtZXRlcilcbiAgLy8gVGhlcmVmb3JlLCB3ZSB1c2UgX19kaXJuYW1lIHRvIGZpbmQgdGhpcyBwYWNrYWdlJ3MgYWN0aW9uLnltbCByZWdhcmRsZXNzIG9mIHdoZXJlIGl0J3MgaW5zdGFsbGVkXG4gIGNvbnN0IHRoaXNBY3Rpb25QYXRoID0gcGF0aC5qb2luKF9fZGlybmFtZSwgcHJvdmlkZWRNZXRhQWN0aW9uUGF0aCA/PyBtZXRhQWN0aW9uUGF0aCk7XG4gIHRyeSB7XG4gICAgY29uc3QgZGVmYXVsdFZhbHVlcyA9IHt9IGFzIElPcHRpb25zO1xuICAgIGNvbnN0IHRoaXNBY3Rpb24gPSBuZXcgQWN0aW9uKHRoaXNBY3Rpb25QYXRoKTtcbiAgICBjb25zdCBkZWZhdWx0czoge1xuICAgICAgW2tleTogc3RyaW5nXTogSW5wdXQ7XG4gICAgfSA9IHsgLi4udGhpc0FjdGlvbi5pbnB1dHMsIC4uLnByb3ZpZGVkRGVmYXVsdHMgfTtcbiAgICAvLyBDb2xsZWN0IGFsbCBvZiB0aGUgZGVmYXVsdCB2YWx1ZXMgZnJvbSB0aGUgYWN0aW9uLnltbCBmaWxlXG4gICAgaWYgKGRlZmF1bHRzKSB7XG4gICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhkZWZhdWx0cykpIHtcbiAgICAgICAgY29uc3QgbWFwcGVkS2V5ID0gQ29uZmlnS2V5c0lucHV0c01hcFtrZXldID8/IGtleTtcbiAgICAgICAgZGVmYXVsdFZhbHVlc1ttYXBwZWRLZXldID0gc2V0Q29uZmlnVmFsdWVGcm9tQWN0aW9uRmlsZURlZmF1bHQobG9nLCB0aGlzQWN0aW9uLCBrZXkpO1xuICAgICAgfVxuICAgIH1cbiAgICBsb2cuZGVidWcoSlNPTi5zdHJpbmdpZnkoZGVmYXVsdFZhbHVlcywgbnVsbCwgMikpO1xuICAgIHJldHVybiBkZWZhdWx0VmFsdWVzO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIC8vIFdoZW4gcnVubmluZyBhcyBhIENMSSB0b29sIChlLmcuLCB2aWEgbnB4IG9yIHlhcm4gZGx4KSwgdGhlIHRvb2wncyBvd24gYWN0aW9uLnltbFxuICAgIC8vIG1heSBub3QgYmUgcHJlc2VudCBpbiB0aGUgbm9kZV9tb2R1bGVzLiBUaGlzIGlzIGV4cGVjdGVkIGJlaGF2aW9yLCBhcyB0aGUgdG9vbFxuICAgIC8vIHNob3VsZCBzdGlsbCB3b3JrIHRvIGdlbmVyYXRlIGRvY3VtZW50YXRpb24gZm9yIG90aGVyIGFjdGlvbnMuXG4gICAgbG9nLmRlYnVnKGBDb3VsZCBub3QgbG9hZCBkZWZhdWx0cyBmcm9tIHRoaXMgdG9vbCdzIGFjdGlvbi55bWwgYXQgJHt0aGlzQWN0aW9uUGF0aH06ICR7ZXJyb3J9YCk7XG4gICAgbG9nLmRlYnVnKCdDb250aW51aW5nIHdpdGhvdXQgZGVmYXVsdCB2YWx1ZXMgZnJvbSBhY3Rpb24ueW1sJyk7XG4gICAgcmV0dXJuIHt9IGFzIElPcHRpb25zO1xuICB9XG59XG5cbi8qKlxuICogTG9hZHMgdGhlIGNvbmZpZ3VyYXRpb25cbiAqXG4gKiBAcmV0dXJucyB7UHJvdmlkZXJJbnN0YW5jZX0gVGhlIGNvbmZpZ3VyYXRpb24gaW5zdGFuY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxvYWRDb25maWcoXG4gIGxvZzogTG9nVGFzayxcbiAgcHJvdmlkZWRDb25maWc/OiBQcm92aWRlckluc3RhbmNlLFxuICBjb25maWdGaWxlUGF0aD86IHN0cmluZyxcbik6IFByb3ZpZGVySW5zdGFuY2Uge1xuICBsb2cuZGVidWcoJ0xvYWRpbmcgY29uZmlnIGZyb20gZW52IGFuZCBhcmd2Jyk7XG4gIGNvbnN0IGNvbmZpZyA9IHByb3ZpZGVkQ29uZmlnID8/IG5ldyBQcm92aWRlcigpO1xuICBpZiAocHJvY2Vzcy5lbnYuR0lUSFVCX0FDVElPTiA9PT0gJ3RydWUnKSB7XG4gICAgbG9nLmluZm8oJ1J1bm5pbmcgaW4gR2l0SHViIGFjdGlvbicpO1xuICB9XG4gIGlmIChjb25maWdGaWxlUGF0aCkge1xuICAgIGlmIChmcy5leGlzdHNTeW5jKGNvbmZpZ0ZpbGVQYXRoKSkge1xuICAgICAgbG9nLmluZm8oYENvbmZpZyBmaWxlIGZvdW5kOiAke2NvbmZpZ0ZpbGVQYXRofWApO1xuICAgICAgY29uZmlnLmZpbGUoY29uZmlnRmlsZVBhdGgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2cuZGVidWcoYENvbmZpZyBmaWxlIG5vdCBmb3VuZDogJHtjb25maWdGaWxlUGF0aH1gKTtcbiAgICB9XG4gIH1cblxuICBjb25maWdcbiAgICAuZW52KHtcbiAgICAgIGxvd2VyQ2FzZTogdHJ1ZSxcbiAgICAgIHBhcnNlVmFsdWVzOiB0cnVlLFxuICAgICAgdHJhbnNmb3JtOiAob2JqOiBLVlBhaXJUeXBlKTogdW5kZWZpbmVkIHwgS1ZQYWlyVHlwZSA9PiB7XG4gICAgICAgIHJldHVybiB0cmFuc2Zvcm1HaXRIdWJJbnB1dHNUb0FyZ3YobG9nLCBjb25maWcsIG9iaik7XG4gICAgICB9LFxuICAgIH0pXG4gICAgLmFyZ3YoYXJndk9wdGlvbnMpO1xuXG4gIHJldHVybiBjb25maWc7XG59XG5cbi8qKlxuICogTG9hZHMgdGhlIGRlZmF1bHQgY29uZmlndXJhdGlvblxuICpcbiAqIEBwYXJhbSB7UHJvdmlkZXJJbnN0YW5jZX0gY29uZmlnIC0gVGhlIGNvbmZpZyBpbnN0YW5jZVxuICogQHJldHVybnMge1Byb3ZpZGVySW5zdGFuY2V9IFRoZSB1cGRhdGVkIGNvbmZpZyBpbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbG9hZERlZmF1bHRDb25maWcoXG4gIGxvZzogTG9nVGFzayxcbiAgY29uZmlnOiBQcm92aWRlckluc3RhbmNlLFxuICBwcm92aWRlZENvbnRleHQ/OiBDb250ZXh0LFxuKTogUHJvdmlkZXJJbnN0YW5jZSB7XG4gIGxvZy5kZWJ1ZygnTG9hZGluZyBkZWZhdWx0IGNvbmZpZycpO1xuICBjb25zdCBkZWZhdWx0VmFsdWVzID0gY29sbGVjdEFsbERlZmF1bHRWYWx1ZXNGcm9tQWN0aW9uKGxvZyk7XG4gIGNvbnN0IGNvbnRleHQgPSBwcm92aWRlZENvbnRleHQgPz8gbmV3IENvbnRleHQoKTtcblxuICAvLyBHZXQgb3duZXIvcmVwbyBmcm9tIGNvbmZpZyAod2hpY2ggaW5jbHVkZXMgQ0xJIGFyZ3MpLCBmYWxsaW5nIGJhY2sgdG8gZW52IHZhcnMgZm9yIEdpdEh1YiBBY3Rpb25zXG4gIGNvbnN0IG93bmVyRnJvbUNvbmZpZyA9IGNvbmZpZy5nZXQoJ293bmVyJykgYXMgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBjb25zdCByZXBvRnJvbUNvbmZpZyA9IGNvbmZpZy5nZXQoJ3JlcG8nKSBhcyBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGNvbnN0IG93bmVySW5wdXQgPSBvd25lckZyb21Db25maWcgPz8gcHJvY2Vzcy5lbnYuSU5QVVRfT1dORVIgPz8gJyc7XG4gIGNvbnN0IHJlcG9JbnB1dCA9IHJlcG9Gcm9tQ29uZmlnID8/IHByb2Nlc3MuZW52LklOUFVUX1JFUE8gPz8gJyc7XG5cbiAgY29uc3QgcmVwb3NpdG9yeURldGFpbCA9IHJlcG9zaXRvcnlGaW5kZXIoYCR7b3duZXJJbnB1dH0vJHtyZXBvSW5wdXR9YCwgY29udGV4dCk7XG4gIGxvZy5kZWJ1ZyhgcmVwb3NpdG9yeURldGFpbDogJHtyZXBvc2l0b3J5RGV0YWlsfWApO1xuICAvLyBBcHBseSB0aGUgZGVmYXVsdCB2YWx1ZXMgZnJvbSB0aGUgYWN0aW9uLnltbCBmaWxlXG4gIHJldHVybiBjb25maWcuZGVmYXVsdHMoe1xuICAgIC4uLmRlZmF1bHRWYWx1ZXMsXG4gICAgb3duZXI6IHJlcG9zaXRvcnlEZXRhaWw/Lm93bmVyLFxuICAgIHJlcG86IHJlcG9zaXRvcnlEZXRhaWw/LnJlcG8sXG4gICAgc2VjdGlvbnM6IFsuLi5SRUFETUVfU0VDVElPTlNdIGFzIFJlYWRtZVNlY3Rpb25bXSxcbiAgfSk7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgcmVxdWlyZWQgaW5wdXRzIGZvciB0aGUgYWN0aW9uLlxuICovXG5jb25zdCBSZXF1aXJlZElucHV0cyA9IFtcbiAgQ29uZmlnS2V5cy5wYXRoc0FjdGlvbixcbiAgQ29uZmlnS2V5cy5wYXRoc1JlYWRtZSxcbiAgQ29uZmlnS2V5cy5Pd25lcixcbiAgQ29uZmlnS2V5cy5SZXBvLFxuXSBhcyBjb25zdDtcblxuLyoqXG4gKiBMb2FkcyB0aGUgcmVxdWlyZWQgY29uZmlndXJhdGlvblxuICpcbiAqIEBwYXJhbSB7UHJvdmlkZXJJbnN0YW5jZX0gY29uZmlnIC0gVGhlIGNvbmZpZyBpbnN0YW5jZVxuICogQHJldHVybnMge1Byb3ZpZGVySW5zdGFuY2V9IFRoZSB1cGRhdGVkIGNvbmZpZyBpbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbG9hZFJlcXVpcmVkQ29uZmlnKFxuICBsb2c6IExvZ1Rhc2ssXG4gIGNvbmZpZzogUHJvdmlkZXJJbnN0YW5jZSxcbiAgcmVxdWlyZWRJbnB1dHM6IHJlYWRvbmx5IHN0cmluZ1tdID0gUmVxdWlyZWRJbnB1dHMsXG4pOiBQcm92aWRlckluc3RhbmNlIHtcbiAgbG9nLmRlYnVnKCdMb2FkaW5nIHJlcXVpcmVkIGNvbmZpZycpO1xuXG4gIHJldHVybiBjb25maWcucmVxdWlyZWQoWy4uLnJlcXVpcmVkSW5wdXRzXSk7XG59XG5cbi8qKlxuICpcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxvYWRBY3Rpb24obG9nOiBMb2dUYXNrLCBhY3Rpb25QYXRoOiBzdHJpbmcpOiBBY3Rpb24ge1xuICBsb2cuZGVidWcoYExvYWRpbmcgYWN0aW9uIGZyb206ICR7YWN0aW9uUGF0aH1gKTtcbiAgaWYgKGFjdGlvblBhdGgpIHtcbiAgICByZXR1cm4gbmV3IEFjdGlvbihwYXRoLnJlc29sdmUoYWN0aW9uUGF0aCkpO1xuICB9XG4gIHRocm93IG5ldyBFcnJvcihgQWN0aW9uIHBhdGggbm90IGZvdW5kOiAke2FjdGlvblBhdGh9YCk7XG59XG5cbmV4cG9ydCB0eXBlIElucHV0Q29udGV4dCA9IHtcbiAgLyoqXG4gICAqIFRoZSBjb25maWd1cmF0aW9uIGluc3RhbmNlXG4gICAqL1xuICBjb25maWc/OiBQcm92aWRlckluc3RhbmNlO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVhZG1lIHNlY3Rpb25zXG4gICAqL1xuICBzZWN0aW9ucz86IFJlYWRtZVNlY3Rpb25bXTtcblxuICAvKipcbiAgICogVGhlIHJlYWRtZSBmaWxlIHBhdGhcbiAgICovXG4gIHJlYWRtZVBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb25maWcgZmlsZSBwYXRoXG4gICAqL1xuICBjb25maWdQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYWN0aW9uIGluc3RhbmNlXG4gICAqL1xuICBhY3Rpb24/OiBBY3Rpb247XG5cbiAgLyoqXG4gICAqIFRoZSByZWFkbWUgZWRpdG9yIGluc3RhbmNlXG4gICAqL1xuICByZWFkbWVFZGl0b3I/OiBSZWFkbWVFZGl0b3I7XG5cbiAgLyoqXG4gICAqIFRoZSByZXBvc2l0b3J5IG93bmVyXG4gICAqL1xuICBvd25lcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHJlcG9zaXRvcnkgbmFtZVxuICAgKi9cbiAgcmVwbz86IHN0cmluZztcbn07XG4vKipcbiAqIE1haW4gSW5wdXRzIGNsYXNzIHRoYXQgaGFuZGxlcyBjb25maWd1cmF0aW9uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIElucHV0cyB7XG4gIC8qKlxuICAgKiBUaGUgY29uZmlndXJhdGlvbiBpbnN0YW5jZVxuICAgKi9cbiAgY29uZmlnOiBQcm92aWRlckluc3RhbmNlO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVhZG1lIHNlY3Rpb25zXG4gICAqL1xuICBzZWN0aW9uczogUmVhZG1lU2VjdGlvbltdO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVhZG1lIGZpbGUgcGF0aFxuICAgKi9cbiAgcmVhZG1lUGF0aDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY29uZmlnIGZpbGUgcGF0aFxuICAgKi9cbiAgY29uZmlnUGF0aDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYWN0aW9uIGluc3RhbmNlXG4gICAqL1xuICBhY3Rpb246IEFjdGlvbjtcblxuICAvKipcbiAgICogVGhlIHJlYWRtZSBlZGl0b3IgaW5zdGFuY2VcbiAgICovXG4gIHJlYWRtZUVkaXRvcjogUmVhZG1lRWRpdG9yO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVwb3NpdG9yeSBvd25lclxuICAgKi9cbiAgb3duZXI6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHJlcG9zaXRvcnkgbmFtZVxuICAgKi9cbiAgcmVwbzogc3RyaW5nO1xuXG4gIC8qKiBUaGUgbG9nZ2VyIGZvciB0aGlzIGluc3RhbmNlICovXG4gIGxvZzogTG9nVGFzaztcblxuICAvKipcbiAgICogSW5pdGlhbGl6ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIElucHV0cyBjbGFzcy5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHByb3ZpZGVkSW5wdXRDb250ZXh0OiBJbnB1dENvbnRleHQgPSB7fSwgbG9nOiBMb2dUYXNrID0gbmV3IExvZ1Rhc2soJ2lucHV0cycpKSB7XG4gICAgdGhpcy5sb2cgPSBsb2cgPz8gbmV3IExvZ1Rhc2soJ2lucHV0cycpO1xuICAgIHRoaXMubG9nLmRlYnVnKCdJbml0aWFsaXppbmcgSW5wdXRzJyk7XG4gICAgY29uc3QgaW5wdXRDb250ZXh0ID0gcHJvdmlkZWRJbnB1dENvbnRleHQgPz8ge307XG4gICAgdGhpcy5jb25maWdQYXRoID0gaW5wdXRDb250ZXh0LmNvbmZpZ1BhdGggPz8gcGF0aC5yZXNvbHZlKGNvbmZpZ0ZpbGVOYW1lKTtcbiAgICB0aGlzLmNvbmZpZyA9IGlucHV0Q29udGV4dC5jb25maWcgPz8gbmV3IFByb3ZpZGVyKCk7XG4gICAgbG9hZENvbmZpZyhsb2csIHRoaXMuY29uZmlnLCB0aGlzLmNvbmZpZ1BhdGgpO1xuICAgIGxvYWREZWZhdWx0Q29uZmlnKGxvZywgdGhpcy5jb25maWcpO1xuICAgIGxvYWRSZXF1aXJlZENvbmZpZyhsb2csIHRoaXMuY29uZmlnKTtcblxuICAgIHRoaXMuYWN0aW9uID0gaW5wdXRDb250ZXh0LmFjdGlvbiA/PyBsb2FkQWN0aW9uKGxvZywgdGhpcy5jb25maWcuZ2V0KENvbmZpZ0tleXMucGF0aHNBY3Rpb24pKTtcbiAgICB0aGlzLmNvbmZpZy5zZXQoXG4gICAgICAnc2VjdGlvbnMnLFxuICAgICAgaW5wdXRDb250ZXh0LnNlY3Rpb25zID8/ICh0aGlzLmNvbmZpZy5nZXQoJ3NlY3Rpb25zJykgYXMgUmVhZG1lU2VjdGlvbltdKSxcbiAgICApO1xuICAgIHRoaXMuc2VjdGlvbnMgPSB0aGlzLmNvbmZpZy5nZXQoJ3NlY3Rpb25zJykgYXMgUmVhZG1lU2VjdGlvbltdO1xuICAgIHRoaXMucmVhZG1lUGF0aCA9XG4gICAgICBpbnB1dENvbnRleHQucmVhZG1lUGF0aCA/PyBwYXRoLnJlc29sdmUodGhpcy5jb25maWcuZ2V0KENvbmZpZ0tleXMucGF0aHNSZWFkbWUpIGFzIHN0cmluZyk7XG4gICAgdGhpcy5yZWFkbWVFZGl0b3IgPSBpbnB1dENvbnRleHQucmVhZG1lRWRpdG9yID8/IG5ldyBSZWFkbWVFZGl0b3IodGhpcy5yZWFkbWVQYXRoKTtcbiAgICAvKipcbiAgICAgKiBPdXRwdXQgdGhlIHJlYWRtZSBwYXRoIHRoYXQgaXMgYmVpbmcgcGFyc2VkXG4gICAgICovXG4gICAgaWYgKHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT05TKSB7XG4gICAgICBjb3JlLnNldE91dHB1dCgncmVhZG1lJywgdGhpcy5yZWFkbWVQYXRoKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogb3duZXIgaXMgcmVxdWlyZWQsIGFuZCBpZiBpdCBkb2Vzbid0IGV4aXN0IGl0IGlzIGhhbmRsZWQgYnkgbmNvbmYgd2hpY2ggdGhyb3dzIGFuIGVycm9yXG4gICAgICovXG4gICAgdGhpcy5vd25lciA9IGlucHV0Q29udGV4dC5vd25lciA/PyB0aGlzLmNvbmZpZy5nZXQoJ293bmVyJyk7XG5cbiAgICAvKipcbiAgICAgKiByZXBvIGlzIHJlcXVpcmVkLCBhbmQgaWYgaXQgZG9lc24ndCBleGlzdCBpdCBpcyBoYW5kbGVkIGJ5IG5jb25mIHdoaWNoIHRocm93cyBhbiBlcnJvclxuICAgICAqL1xuICAgIHRoaXMucmVwbyA9IGlucHV0Q29udGV4dC5yZXBvID8/IHRoaXMuY29uZmlnLmdldCgncmVwbycpO1xuICB9XG5cbiAgc3RyaW5naWZ5KCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXM/LmNvbmZpZykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIFlBTUwuc3RyaW5naWZ5KHRoaXMuY29uZmlnLmdldCgpKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIHRoaXMubG9nLmVycm9yKGAke2Vycm9yfWApO1xuICAgICAgICAvLyBjb250aW51ZVxuICAgICAgfVxuICAgIH1cbiAgICAvLyB0aGlzIGlzIGp1c3QgZm9yIGRlYnVnLCBubyBuZWVkIHRvIHN0b3AgdGhlIHByb2Nlc3MgaWYgaXQgZmFpbHNcbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cbiIsICIvKipcbiAqIFRoaXMgY2xhc3MgcmVwcmVzZW50cyB0aGUgbWV0YWRhdGEgb2YgYSBHaXRIdWIgYWN0aW9uIGRlZmluZWQgaW4gdGhlIGFjdGlvbi55bWwgZmlsZS5cbiAqIEl0IHByb3ZpZGVzIHByb3BlcnRpZXMgYW5kIG1ldGhvZHMgZm9yIGFjY2Vzc2luZyBhbmQgbWFuaXB1bGF0aW5nIHRoZSBtZXRhZGF0YS5cbiAqIFtGdXJ0aGVyIHJlYWRpbmcgb24gdGhlIG1ldGFkYXRhIGNhbiBiZSBmb3VuZCBoZXJlXShodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL2NyZWF0aW5nLWFjdGlvbnMvbWV0YWRhdGEtc3ludGF4LWZvci1naXRodWItYWN0aW9ucyNpbnB1dHMpXG4gKi9cblxuaW1wb3J0ICogYXMgZnMgZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5cbmltcG9ydCBZQU1MIGZyb20gJ3lhbWwnO1xuXG5pbXBvcnQgeyB0eXBlIEJyYW5kaW5nLCBERUZBVUxUX0JSQU5EX0NPTE9SLCBERUZBVUxUX0JSQU5EX0lDT04gfSBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gaW5wdXQgZm9yIHRoZSBhY3Rpb24uXG4gKi9cbmV4cG9ydCB0eXBlIElucHV0ID0ge1xuICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIGlucHV0ICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGlucHV0IGlzIHJlcXVpcmVkICovXG4gIHJlcXVpcmVkPzogYm9vbGVhbjtcblxuICAvKiogRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGlucHV0ICovXG4gIGRlZmF1bHQ/OiBzdHJpbmc7XG4gIC8qKiBPcHRpb25hbCBJZiB0aGUgaW5wdXQgcGFyYW1ldGVyIGlzIHVzZWQsIHRoaXMgc3RyaW5nIGlzIHRoaXMubG9nZ2VkIGFzIGEgd2FybmluZyBtZXNzYWdlLiBZb3UgY2FuIHVzZSB0aGlzIHdhcm5pbmcgdG8gbm90aWZ5IHVzZXJzIHRoYXQgdGhlIGlucHV0IGlzIGRlcHJlY2F0ZWQgYW5kIG1lbnRpb24gYW55IGFsdGVybmF0aXZlcy4gKi9cbiAgZGVwcmVjYXRpb25NZXNzYWdlPzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIG91dHB1dCBmb3IgdGhlIGFjdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPdXRwdXQge1xuICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIG91dHB1dCAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdmFsdWU/OiBzdHJpbmc7XG59XG50eXBlIENvbXBvc2l0ZUFjdGlvbiA9ICdjb21wb3NpdGUnO1xudHlwZSBDb250YWluZXJBY3Rpb24gPSAnZG9ja2VyJztcbnR5cGUgSmF2YXNjcmlwdEFjdGlvbiA9IGBOb2RlJHtzdHJpbmd9YCB8IGBub2RlJHtzdHJpbmd9YDtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBydW5zIHByb3BlcnR5IGZvciBjb250YWluZXIgYWN0aW9ucy5cbiAqL1xudHlwZSBSdW5zQ29udGFpbmVyID0ge1xuICAndXNpbmcnOiBDb250YWluZXJBY3Rpb247XG4gICdpbWFnZSc6IHN0cmluZztcbiAgJ2FyZ3MnPzogc3RyaW5nW107XG4gICdwcmUtZW50cnlwb2ludCc/OiBzdHJpbmc7XG4gICdwb3N0LWVudHJ5cG9pbnQnPzogc3RyaW5nO1xuICAnZW50cnlwb2ludCc/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIERlZmluZXMgdGhlIHJ1bnMgcHJvcGVydHkgZm9yIEphdmFTY3JpcHQgYWN0aW9ucy5cbiAqL1xudHlwZSBSdW5zSmF2YXNjcmlwdCA9IHtcbiAgLyoqIFRoZSBydW5uZXIgdXNlZCB0byBleGVjdXRlIHRoZSBhY3Rpb24gKi9cbiAgJ3VzaW5nJzogSmF2YXNjcmlwdEFjdGlvbjtcblxuICAvKiogVGhlIGVudHJ5cG9pbnQgZmlsZSBmb3IgdGhlIGFjdGlvbiAqL1xuICAnbWFpbic6IHN0cmluZztcblxuICAncHJlJz86IHN0cmluZztcbiAgJ3ByZS1pZic/OiBzdHJpbmc7XG5cbiAgJ3Bvc3QtaWYnPzogc3RyaW5nO1xuXG4gICdwb3N0Jz86IHN0cmluZztcbn07XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgc3RlcHMgcHJvcGVydHkgZm9yIGNvbXBvc2l0ZSBhY3Rpb25zLlxuICovXG50eXBlIFN0ZXBzID0ge1xuICAnc2hlbGwnPzogc3RyaW5nO1xuICAnaWYnPzogc3RyaW5nO1xuICAncnVuJz86IHN0cmluZztcbiAgJ25hbWUnPzogc3RyaW5nO1xuICAnaWQnPzogc3RyaW5nO1xuICAnd29ya2luZy1kaXJlY3RvcnknPzogc3RyaW5nO1xuICAnZW52JzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn07XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgcnVucyBwcm9wZXJ0eSBmb3IgY29tcG9zaXRlIGFjdGlvbnMuXG4gKi9cbnR5cGUgUnVuc0NvbXBvc2l0ZSA9IHtcbiAgLyoqIFRoZSBydW5uZXIgdXNlZCB0byBleGVjdXRlIHRoZSBhY3Rpb24gKi9cbiAgdXNpbmc6IENvbXBvc2l0ZUFjdGlvbjtcbiAgc3RlcHM6IFN0ZXBzO1xufTtcblxuZXhwb3J0IHR5cGUgQWN0aW9uVHlwZSA9IFJ1bnNDb250YWluZXIgfCBSdW5zSmF2YXNjcmlwdCB8IFJ1bnNDb21wb3NpdGU7XG4vKipcbiAqIERlZmluZXMgaG93IHRoZSBhY3Rpb24gaXMgcnVuLlxuICovXG5leHBvcnQgdHlwZSBBY3Rpb25ZYW1sID0ge1xuICBuYW1lOiBzdHJpbmc7XG5cbiAgYXV0aG9yPzogc3RyaW5nO1xuXG4gIC8qKiBEZXNjcmlwdGlvbiBvZiB0aGUgYWN0aW9uICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgLyoqIEJyYW5kaW5nIGluZm9ybWF0aW9uICovXG4gIGJyYW5kaW5nPzogQnJhbmRpbmc7XG5cbiAgLyoqIElucHV0IGRlZmluaXRpb25zICovXG4gIGlucHV0cz86IHsgW2tleTogc3RyaW5nXTogSW5wdXQgfTtcblxuICAvKiogT3V0cHV0IGRlZmluaXRpb25zICovXG4gIG91dHB1dHM/OiB7IFtrZXk6IHN0cmluZ106IE91dHB1dCB9O1xuXG4gIC8qKiBIb3cgdGhlIGFjdGlvbiBpcyBydW4gKi9cbiAgcnVuczogQWN0aW9uVHlwZTtcblxuICAvKiogUGF0aCB0byB0aGUgYWN0aW9uICovXG4gIHBhdGg6IHN0cmluZztcbn07XG4vKipcbiAqIFBhcnNlcyBhbmQgcmVwcmVzZW50cyBtZXRhZGF0YSBmcm9tIGFjdGlvbi55bWwuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFjdGlvbiBpbXBsZW1lbnRzIEFjdGlvbllhbWwge1xuICBzdGF0aWMgdmFsaWRhdGUob2JqOiBhbnkpOiBvYmogaXMgQWN0aW9uVHlwZSB7XG4gICAgaWYgKCduYW1lJyBpbiBvYmogJiYgJ2Rlc2NyaXB0aW9uJyBpbiBvYmogJiYgJ3J1bnMnIGluIG9iaiAmJiAndXNpbmcnIGluIG9iai5ydW5zKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICB0eXBlb2Ygb2JqLm5hbWUgPT09ICdzdHJpbmcnICYmXG4gICAgICAgIHR5cGVvZiBvYmouZGVzY3JpcHRpb24gPT09ICdzdHJpbmcnICYmXG4gICAgICAgIHR5cGVvZiBvYmoucnVucy51c2luZyA9PT0gJ3N0cmluZydcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGxvZzogTG9nVGFzaztcblxuICAvKiogTmFtZSBvZiB0aGUgYWN0aW9uICovXG4gIG5hbWU6IHN0cmluZztcblxuICBhdXRob3I/OiBzdHJpbmc7XG5cbiAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSBhY3Rpb24gKi9cbiAgZGVzY3JpcHRpb246IHN0cmluZztcblxuICAvKiogQnJhbmRpbmcgaW5mb3JtYXRpb24gKi9cbiAgYnJhbmRpbmc/OiBCcmFuZGluZztcblxuICAvKiogSW5wdXQgZGVmaW5pdGlvbnMgKi9cbiAgaW5wdXRzPzogeyBba2V5OiBzdHJpbmddOiBJbnB1dCB9O1xuXG4gIC8qKiBPdXRwdXQgZGVmaW5pdGlvbnMgKi9cbiAgb3V0cHV0cz86IHsgW2tleTogc3RyaW5nXTogT3V0cHV0IH07XG5cbiAgLyoqIEhvdyB0aGUgYWN0aW9uIGlzIHJ1biAqL1xuICBydW5zOiBBY3Rpb25UeXBlO1xuXG4gIC8qKiBQYXRoIHRvIHRoZSBhY3Rpb24gKi9cbiAgcGF0aDogc3RyaW5nO1xuXG4gIC8qKiB0aGUgb3JpZ2luYWwgZmlsZSBjb250ZW50ICovXG4gIHJhd1lhbWxTdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgQWN0aW9uIGNsYXNzIGJ5IGxvYWRpbmcgYW5kIHBhcnNpbmcgYWN0aW9uLnltbC5cbiAgICpcbiAgICogQHBhcmFtIGFjdGlvblBhdGggVGhlIHBhdGggdG8gdGhlIGFjdGlvbi55bWwgZmlsZS5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGFjdGlvblBhdGg6IHN0cmluZywgbG9nPzogTG9nVGFzaykge1xuICAgIC8vIExvYWQgYW5kIHBhcnNlIGFjdGlvbi55bWxcbiAgICB0aGlzLmxvZyA9IGxvZyA/PyBuZXcgTG9nVGFzayhhY3Rpb25QYXRoKTtcbiAgICB0aGlzLnBhdGggPSBhY3Rpb25QYXRoO1xuICAgIGxldCBhY3Rpb25ZYW1sOiBBY3Rpb25ZYW1sO1xuICAgIHRoaXMubG9nLmRlYnVnKGBDb25zdHVjdGluZyAke2FjdGlvblBhdGh9YCk7XG4gICAgdHJ5IHtcbiAgICAgIGFjdGlvbllhbWwgPSB0aGlzLmxvYWRBY3Rpb25Gcm9tKGFjdGlvblBhdGgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkICR7YWN0aW9uUGF0aH0uICR7ZXJyb3J9YCk7XG4gICAgfVxuICAgIHRoaXMubG9nLmRlYnVnKGBBY3Rpb24gWUFNTDogJHtKU09OLnN0cmluZ2lmeShhY3Rpb25ZYW1sKX1gKTtcblxuICAgIHRoaXMubmFtZSA9IGFjdGlvbllhbWwubmFtZTtcbiAgICB0aGlzLmF1dGhvciA9IGFjdGlvbllhbWwuYXV0aG9yO1xuICAgIHRoaXMuZGVzY3JpcHRpb24gPSBhY3Rpb25ZYW1sLmRlc2NyaXB0aW9uO1xuXG4gICAgdGhpcy5icmFuZGluZyA9IHtcbiAgICAgIGNvbG9yOiBhY3Rpb25ZYW1sLmJyYW5kaW5nPy5jb2xvciA/PyBERUZBVUxUX0JSQU5EX0NPTE9SLFxuICAgICAgaWNvbjogYWN0aW9uWWFtbC5icmFuZGluZz8uaWNvbiA/PyBERUZBVUxUX0JSQU5EX0lDT04sXG4gICAgfTtcbiAgICB0aGlzLmlucHV0cyA9IGFjdGlvbllhbWwuaW5wdXRzO1xuICAgIHRoaXMub3V0cHV0cyA9IGFjdGlvbllhbWwub3V0cHV0cztcbiAgICB0aGlzLnJ1bnMgPSBhY3Rpb25ZYW1sLnJ1bnM7XG4gIH1cblxuICBsb2FkQWN0aW9uRnJvbShhY3Rpb25QYXRoOiBzdHJpbmcpOiBBY3Rpb25ZYW1sIHtcbiAgICBjb25zdCBhY3Rpb25EaXIgPSBwYXRoLmRpcm5hbWUocGF0aC5yZXNvbHZlKGFjdGlvblBhdGgpKTtcbiAgICB0aGlzLmxvZy5kZWJ1ZyhgTG9hZCAke2FjdGlvblBhdGh9IGZyb20gJHthY3Rpb25EaXJ9YCk7XG4gICAgLy8gQ2hlY2sgaWYgdGhlIGFjdGlvbiBmaWxlIGV4aXN0c1xuICAgIGlmICghZnMuZXhpc3RzU3luYyhhY3Rpb25QYXRoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2FjdGlvblBhdGh9IGRvZXMgbm90IGV4aXN0IGluICR7YWN0aW9uRGlyfWApO1xuICAgIH1cbiAgICAvLyBFbnN1cmUgdGhlIHBhdGggaXMgYSBmaWxlIGFuZCBub3QgYSBkaXJlY3RvcnlcbiAgICBpZiAoIWZzLnN0YXRTeW5jKGFjdGlvblBhdGgpLmlzRmlsZSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7YWN0aW9uUGF0aH0gaXMgbm90IGEgZmlsZSB0eXBlIGF0ICR7YWN0aW9uRGlyfWApO1xuICAgIH1cblxuICAgIHRoaXMucmF3WWFtbFN0cmluZyA9IGZzLnJlYWRGaWxlU3luYyhhY3Rpb25QYXRoLCAndXRmOCcpO1xuXG4gICAgdGhpcy5sb2cuZGVidWcoYFBhcnNlICR7YWN0aW9uUGF0aH0gZnJvbSAke2FjdGlvbkRpcn1gKTtcbiAgICBjb25zdCBhY3Rpb25PYmogPSBZQU1MLnBhcnNlKHRoaXMucmF3WWFtbFN0cmluZykgYXMgQWN0aW9uWWFtbDtcbiAgICBpZiAoQWN0aW9uLnZhbGlkYXRlKGFjdGlvbk9iaikpIHtcbiAgICAgIHJldHVybiBhY3Rpb25PYmo7XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBhY3Rpb24gbWV0YWRhdGEgc3ludGF4IGluICR7YWN0aW9uUGF0aH0uYCk7XG4gIH1cblxuICAvKipcbiAgKiBHZXRzIHRoZSB2YWx1ZSBvZiBhbiBpbnB1dC5cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBkZWZhdWx0IHZhbHVlIGZvciBhbiBpbnB1dC5cbiAgICpcbiAgICogQHBhcmFtIGlucHV0TmFtZSBUaGUgbmFtZSBvZiB0aGUgaW5wdXQuXG4gICAqIEByZXR1cm5zIFRoZSBkZWZhdWx0IHZhbHVlIGlmIGRlZmluZWQsb3IgdW5kZWZpbmVkXG4gICAqL1xuICBpbnB1dERlZmF1bHQoaW5wdXROYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5pbnB1dHMpIHtcbiAgICAgIHJldHVybiB0aGlzLmlucHV0c1tpbnB1dE5hbWVdPy5kZWZhdWx0ID8/IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdHJpbmdpZmllcyB0aGUgYWN0aW9uIGJhY2sgdG8gWUFNTC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIFlBTUwgc3RyaW5nIGZvciBkZWJ1Z2dpbmcuXG4gICAqL1xuICBzdHJpbmdpZnkoKTogc3RyaW5nIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIFlBTUwuc3RyaW5naWZ5KHRoaXMpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmxvZy5lcnJvcihgRmFpbGVkIHRvIHN0cmluZ2lmeSBBY3Rpb24uICR7ZXJyb3J9YCk7XG4gICAgICAvLyB0aGlzIGlzIGp1c3QgZm9yIGRlYnVnZ2luZywgY29udGludWUgb24gZXJyb3JcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cbn1cbiIsICIvKipcbiAqIFJlcHJlc2VudHMgdGhlIEZlYXRoZXIgaWNvbiBuYW1lcy5cbiAqL1xuaW1wb3J0IHR5cGUgeyBGZWF0aGVySWNvbk5hbWVzIH0gZnJvbSAnZmVhdGhlci1pY29ucyc7XG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGljb25zIG9iamVjdCBmcm9tICdmZWF0aGVyLWljb25zJyBsaWJyYXJ5LlxuICovXG5pbXBvcnQgeyBpY29ucyB9IGZyb20gJ2ZlYXRoZXItaWNvbnMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHNlY3Rpb25zIG9mIHRoZSBSRUFETUUuXG4gKi9cbmV4cG9ydCBjb25zdCBSRUFETUVfU0VDVElPTlMgPSBbXG4gICd0aXRsZScsXG4gICdicmFuZGluZycsXG4gICdkZXNjcmlwdGlvbicsXG4gICd1c2FnZScsXG4gICdpbnB1dHMnLFxuICAnb3V0cHV0cycsXG4gICdjb250ZW50cycsXG4gICdiYWRnZXMnLFxuXSBhcyBjb25zdDtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIHNlY3Rpb24gb2YgdGhlIFJFQURNRS5cbiAqL1xuZXhwb3J0IHR5cGUgUmVhZG1lU2VjdGlvbiA9ICh0eXBlb2YgUkVBRE1FX1NFQ1RJT05TKVtudW1iZXJdO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGZpbGUgbmFtZSBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGNvbmZpZ0ZpbGVOYW1lID0gJy5naGFkb2NzLmpzb24nO1xuXG4vKipcbiAqIEVudW1lcmF0ZXMgdGhlIGtleXMgZm9yIHRoZSBjb25maWd1cmF0aW9uIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBlbnVtIENvbmZpZ0tleXMge1xuICBPd25lciA9ICdvd25lcicsXG4gIFJlcG8gPSAncmVwbycsXG4gIFRpdGxlUHJlZml4ID0gJ3RpdGxlX3ByZWZpeCcsXG4gIFByZXR0aWVyID0gJ3ByZXR0aWVyJyxcbiAgU2F2ZSA9ICdzYXZlJyxcbiAgcGF0aHNBY3Rpb24gPSAncGF0aHM6YWN0aW9uJyxcbiAgcGF0aHNSZWFkbWUgPSAncGF0aHM6cmVhZG1lJyxcbiAgQnJhbmRpbmdTdmdQYXRoID0gJ2JyYW5kaW5nX3N2Z19wYXRoJyxcbiAgQnJhbmRpbmdBc1RpdGxlUHJlZml4ID0gJ2JyYW5kaW5nX2FzX3RpdGxlX3ByZWZpeCcsXG4gIFZlcnNpb25pbmdFbmFibGVkID0gJ3ZlcnNpb25pbmc6ZW5hYmxlZCcsXG4gIFZlcnNpb25pbmdPdmVycmlkZSA9ICd2ZXJzaW9uaW5nOm92ZXJyaWRlJyxcbiAgVmVyc2lvbmluZ1ByZWZpeCA9ICd2ZXJzaW9uaW5nOnByZWZpeCcsXG4gIFZlcnNpb25pbmdCcmFuY2ggPSAndmVyc2lvbmluZzpicmFuY2gnLFxuICBJbmNsdWRlR2l0aHViVmVyc2lvbkJhZGdlID0gJ3ZlcnNpb25pbmc6YmFkZ2UnLFxuICBEZWJ1Z05jb25mID0gJ2RlYnVnOm5jb25mJyxcbiAgRGVidWdSZWFkbWUgPSAnZGVidWc6cmVhZG1lJyxcbiAgRGVidWdDb25maWcgPSAnZGVidWc6Y29uZmlnJyxcbiAgRGVidWdBY3Rpb24gPSAnZGVidWc6YWN0aW9uJyxcbiAgRGVidWdHaXRodWIgPSAnZGVidWc6Z2l0aHViJyxcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBlZGdlIGxlbmd0aCAoaW4gcGl4ZWxzKSBmb3IgdGhlIGJyYW5kaW5nIHNxdWFyZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGJyYW5kaW5nU3F1YXJlRWRnZUxlbmd0aEluUGl4ZWxzID0gNTA7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZGVmYXVsdCBicmFuZCBjb2xvci5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfQlJBTkRfQ09MT1IgPSAnYmx1ZSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZGVmYXVsdCBicmFuZCBpY29uLlxuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9CUkFORF9JQ09OID0gJ2FjdGl2aXR5JztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBtYXJrdXAgZm9yIGNlbnRlciBhbGlnbm1lbnQuXG4gKi9cbmV4cG9ydCBjb25zdCBBTElHTk1FTlRfTUFSS1VQID0gJzxkaXYgYWxpZ249XCJjZW50ZXJcIj4nO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHNldCBvZiBpY29ucyB0aGF0IGFyZSBvbWl0dGVkIGluIEdpdEh1YiBBY3Rpb25zIGJyYW5kaW5nLlxuICovXG5leHBvcnQgY29uc3QgR0lUSFVCX0FDVElPTlNfT01JVFRFRF9JQ09OUyA9IG5ldyBTZXQoW1xuICAnY29mZmVlJyxcbiAgJ2NvbHVtbnMnLFxuICAnZGl2aWRlLWNpcmNsZScsXG4gICdkaXZpZGUtc3F1YXJlJyxcbiAgJ2RpdmlkZScsXG4gICdmcm93bicsXG4gICdoZXhhZ29uJyxcbiAgJ2tleScsXG4gICdtZWgnLFxuICAnbW91c2UtcG9pbnRlcicsXG4gICdzbWlsZScsXG4gICd0b29sJyxcbiAgJ3gtb2N0YWdvbicsXG5dKTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBzZXQgb2YgaWNvbnMgYXZhaWxhYmxlIGZvciBHaXRIdWIgQWN0aW9ucyBicmFuZGluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IEdJVEhVQl9BQ1RJT05TX0JSQU5ESU5HX0lDT05TID0gbmV3IFNldChcbiAgT2JqZWN0LmtleXMoaWNvbnMpLmZpbHRlcigoaXRlbSkgPT4gIUdJVEhVQl9BQ1RJT05TX09NSVRURURfSUNPTlMuaGFzKGl0ZW0pKSxcbik7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgYXZhaWxhYmxlIGNvbG9ycyBmb3IgR2l0SHViIEFjdGlvbnMgYnJhbmRpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBHSVRIVUJfQUNUSU9OU19CUkFORElOR19DT0xPUlMgPSBbXG4gICd3aGl0ZScsXG4gICd5ZWxsb3cnLFxuICAnYmx1ZScsXG4gICdncmVlbicsXG4gICdvcmFuZ2UnLFxuICAncmVkJyxcbiAgJ3B1cnBsZScsXG4gICdncmF5LWRhcmsnLFxuXSBhcyBjb25zdDtcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBhdmFpbGFibGUgYnJhbmQgY29sb3JzLlxuICovXG5leHBvcnQgdHlwZSBCcmFuZENvbG9ycyA9ICh0eXBlb2YgR0lUSFVCX0FDVElPTlNfQlJBTkRJTkdfQ09MT1JTKVtudW1iZXJdO1xuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gaWNvbiBpcyB2YWxpZCBmb3IgR2l0SHViIEFjdGlvbnMgYnJhbmRpbmcuXG4gKiBAcGFyYW0ge1BhcnRpYWw8RmVhdGhlckljb25OYW1lcz59IGljb24gLSBUaGUgaWNvbiB0byB2YWxpZGF0ZS5cbiAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBpY29uIGlzIHZhbGlkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEljb24oaWNvbjogUGFydGlhbDxGZWF0aGVySWNvbk5hbWVzPik6IGljb24gaXMgRmVhdGhlckljb25OYW1lcyB7XG4gIHJldHVybiBHSVRIVUJfQUNUSU9OU19CUkFORElOR19JQ09OUy5oYXMoaWNvbik7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBnaXZlbiBjb2xvciBpcyB2YWxpZCBmb3IgR2l0SHViIEFjdGlvbnMgYnJhbmRpbmcuXG4gKiBAcGFyYW0ge1BhcnRpYWw8QnJhbmRDb2xvcnM+fSBjb2xvciAtIFRoZSBjb2xvciB0byB2YWxpZGF0ZS5cbiAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSBjb2xvciBpcyB2YWxpZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRDb2xvcihjb2xvcjogUGFydGlhbDxCcmFuZENvbG9ycz4pOiBjb2xvciBpcyBCcmFuZENvbG9ycyB7XG4gIHJldHVybiBHSVRIVUJfQUNUSU9OU19CUkFORElOR19DT0xPUlMuaW5jbHVkZXMoY29sb3IpO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGJyYW5kaW5nIGluZm9ybWF0aW9uIGZvciB0aGUgYWN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJyYW5kaW5nIHtcbiAgLyoqIENvbG9yIGZvciB0aGUgYWN0aW9uIGJyYW5kaW5nICovXG4gIGNvbG9yOiBQYXJ0aWFsPEJyYW5kQ29sb3JzPjtcbiAgaWNvbjogUGFydGlhbDxGZWF0aGVySWNvbk5hbWVzPjtcbn1cbiIsICJpbXBvcnQgKiBhcyBjb3JlIGZyb20gJ0BhY3Rpb25zL2NvcmUnO1xuaW1wb3J0IGNoYWxrUGtnIGZyb20gJ2NoYWxrJztcblxuaW1wb3J0IHsgbm90RW1wdHkgfSBmcm9tICcuLi91dGlsLmpzJztcblxuLy8gQ2hhbGsgY29sb3Igc3R5bGVzXG5jb25zdCB7IGJnUmVkQnJpZ2h0LCBjeWFuLCBncmVlbiwgZ3JlZW5CcmlnaHQsIHdoaXRlQnJpZ2h0LCB5ZWxsb3csIHllbGxvd0JyaWdodCB9ID0gY2hhbGtQa2c7XG5cbi8vIENvbnN0YW50cyBmb3IgZGlmZmVyZW50IGxvZyBzdGVwIHR5cGVzXG5cbmVudW0gTG9nR3JvdXAge1xuICBOT19HUk9VUCA9IDAsXG4gIFNUQVJUX0dST1VQLFxuICBFTkRfR1JPVVAsXG4gIElTX0VSUk9SLFxuICBJU19GQUlMRUQsXG4gIElTX1RJVExFLFxufVxuXG5mdW5jdGlvbiBpbkdpdEh1YkFjdGlvbnMoKTogYm9vbGVhbiB7XG4gIHJldHVybiBub3RFbXB0eShwcm9jZXNzLmVudi5HSVRIVUJfQUNUSU9OUykgJiYgcHJvY2Vzcy5lbnYuR0lUSFVCX0FDVElPTlMgPT09ICd0cnVlJztcbn1cblxuZnVuY3Rpb24gaGlnaGxpZ2h0TWVzc2FnZShzdGVwOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyk6IHsgZGVzYzogYW55OyBmYWlsZWQ6IGFueSB9IHtcbiAgbGV0IGZhaWxlZCA9IGZhbHNlO1xuICBjb25zdCBjaSA9IGluR2l0SHViQWN0aW9ucygpO1xuICBsZXQgZGVzYzogc3RyaW5nO1xuICBzd2l0Y2ggKHN0ZXApIHtcbiAgICBjYXNlICdTVEFSVCc6IHtcbiAgICAgIGRlc2MgPSBgJHttZXNzYWdlfWA7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSAnSU5GTyc6IHtcbiAgICAgIGRlc2MgPSBncmVlbihgJHttZXNzYWdlfWApO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgJ1dBUk4nOiB7XG4gICAgICBkZXNjID0geWVsbG93KGAke21lc3NhZ2V9YCk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSAnU1VDQ0VTUyc6IHtcbiAgICAgIGRlc2MgPSBncmVlbkJyaWdodChgJHttZXNzYWdlfWApO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgJ0ZBSUxVUkUnOiB7XG4gICAgICBkZXNjID0gY2kgPyBtZXNzYWdlIDogeWVsbG93LmJvbGQoYCR7bWVzc2FnZX1gKTtcbiAgICAgIGZhaWxlZCA9IHRydWU7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSAnRVJST1InOiB7XG4gICAgICBkZXNjID0gY2kgPyBtZXNzYWdlIDogeWVsbG93KGAke21lc3NhZ2V9YCk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSAnIyMjIyMnOiB7XG4gICAgICBkZXNjID0gY3lhbihgJHttZXNzYWdlfWApO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGRlc2MgPSBtZXNzYWdlO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIHJldHVybiB7IGRlc2MsIGZhaWxlZCB9O1xufVxuZnVuY3Rpb24gaGlnaGxpZ2h0U3RlcChzdGVwOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyk6IHN0cmluZyB7XG4gIGxldCBtc2c6IHN0cmluZztcbiAgY29uc3QgY2kgPSBpbkdpdEh1YkFjdGlvbnMoKTtcbiAgLy8gTG9naWMgdG8gaGFuZGxlIGRpZmZlcmVudCBsb2cgb3V0cHV0cyBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgKEdpdEh1YiBBY3Rpb25zIG9yIGxvY2FsKVxuICBzd2l0Y2ggKHN0ZXApIHtcbiAgICBjYXNlICdTVEFSVCc6IHtcbiAgICAgIG1zZyA9IHllbGxvd0JyaWdodChtZXNzYWdlKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBjYXNlICdTVUNDRVNTJzoge1xuICAgICAgbXNnID0gd2hpdGVCcmlnaHQobWVzc2FnZSk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSAnRkFJTFVSRSc6XG4gICAgY2FzZSAnRVJST1InOiB7XG4gICAgICBtc2cgPSBjaSA/IG1lc3NhZ2UgOiBiZ1JlZEJyaWdodChtZXNzYWdlKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICBtc2cgPSBtZXNzYWdlO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIHJldHVybiBtc2c7XG59XG5cbmZ1bmN0aW9uIGhhbmRsZU91dHB1dChzdGFydEdyb3VwOiBMb2dHcm91cCwgbXNnOiBzdHJpbmcsIG9yaWdpbmFsU3RyaW5nPzogc3RyaW5nKTogdm9pZCB7XG4gIC8vIExvZ2ljIHRvIGhhbmRsZSBkaWZmZXJlbnQgbG9nIG91dHB1dHMgYmFzZWQgb24gdGhlIGVudmlyb25tZW50IChHaXRIdWIgQWN0aW9ucyBvciBsb2NhbClcbiAgY29uc3QgY2kgPSBpbkdpdEh1YkFjdGlvbnMoKTtcblxuICBzd2l0Y2ggKHN0YXJ0R3JvdXApIHtcbiAgICBjYXNlIExvZ0dyb3VwLlNUQVJUX0dST1VQOiB7XG4gICAgICBpZiAoY2kgJiYgb3JpZ2luYWxTdHJpbmcpIHtcbiAgICAgICAgY29yZS5zdGFydEdyb3VwKG9yaWdpbmFsU3RyaW5nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvcmUuaW5mbyhtc2cpO1xuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSBMb2dHcm91cC5FTkRfR1JPVVA6IHtcbiAgICAgIGlmIChjaSkge1xuICAgICAgICBjb3JlLmVuZEdyb3VwKCk7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgLy8gTG9naWMgdG8gaGFuZGxlIGVycm9yaW5nIG9yIGZhaWxlZCBzdGVwc1xuICAgIGNhc2UgTG9nR3JvdXAuSVNfRVJST1I6IHtcbiAgICAgIGNvcmUuZXJyb3IobXNnKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBjYXNlIExvZ0dyb3VwLklTX0ZBSUxFRDoge1xuICAgICAgY29yZS5zZXRGYWlsZWQobXNnKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICBjb3JlLmluZm8obXNnKTtcbiAgICB9XG4gIH1cbn1cbi8qKlxuICogUmVwcmVzZW50cyBhIGxvZ2dpbmcgdGFzayB3aXRoIHZhcmlvdXMgbG9nIHN0ZXAgbWV0aG9kcy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTG9nVGFzayB7XG4gIC8qKlxuICAgKiBNYXAgb2YgaW5ncm91cCBzZXR0aW5ncyBwZXIgdGFzayBuYW1lLlxuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgaW5ncm91cFNldHRpbmdzID0gbmV3IE1hcDxzdHJpbmcsIGJvb2xlYW4+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSB3aWR0aCBvZiB0aGUgaW5kZW50YXRpb24gZm9yIGxvZyBtZXNzYWdlcy5cbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGluZGVudFdpZHRoID0gNTtcblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGRlYnVnIG1vZGUgaXMgZW5hYmxlZC5cbiAgICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgaWYgZGVidWcgbW9kZSBpcyBlbmFibGVkLlxuICAgKi9cbiAgc3RhdGljIGlzRGVidWcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGNvcmUuaXNEZWJ1ZygpIHx8IChub3RFbXB0eShwcm9jZXNzLmVudi5ERUJVRykgJiYgcHJvY2Vzcy5lbnYuREVCVUcgPT09ICd0cnVlJyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHRhc2suXG4gICAqL1xuICBwcml2YXRlIG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgTG9nVGFzayBjbGFzcy5cbiAgICogQHBhcmFtIG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgdGFzay5cbiAgICovXG4gIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZykge1xuICAgIHRoaXMubmFtZSA9IG5hbWU/LnRyaW0oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBpbmdyb3VwIHNldHRpbmcgZm9yIHRoZSB0YXNrLlxuICAgKi9cbiAgZ2V0IGluZ3JvdXAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIExvZ1Rhc2suaW5ncm91cFNldHRpbmdzLmdldCh0aGlzLm5hbWUpID8/IGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGluZ3JvdXAgc2V0dGluZyBmb3IgdGhpcyB0YXNrLlxuICAgKi9cbiAgc2V0IGluZ3JvdXAodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBMb2dUYXNrLmluZ3JvdXBTZXR0aW5ncy5zZXQodGhpcy5uYW1lLCB2YWx1ZSk7XG4gIH1cblxuICBnZXRNZXNzYWdlU3RyaW5nKHN0ZXA6IHN0cmluZywgZGVzYzogc3RyaW5nLCBlbW9qaVN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgbXNnOiBzdHJpbmc7XG4gICAgaWYgKHRoaXMuaW5ncm91cCkge1xuICAgICAgY29uc3QgaW5kZW50U3RyID0gJyAnLnJlcGVhdChMb2dUYXNrLmluZGVudFdpZHRoKTtcbiAgICAgIG1zZyA9IGAke2luZGVudFN0cn0gICAke2Vtb2ppU3RyfTogJHt0aGlzLm5hbWV9ID4gJHtkZXNjfWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHN0ZXBTdHIgPSBzdGVwLnBhZEVuZChMb2dUYXNrLmluZGVudFdpZHRoLCAnICcpO1xuICAgICAgbXNnID0gYFske3N0ZXBTdHJ9XVske3RoaXMubmFtZS5wYWRFbmQoMTEsICcgJyl9XSAke2Vtb2ppU3RyfTogJHtkZXNjfWA7XG4gICAgfVxuICAgIHJldHVybiBoaWdobGlnaHRTdGVwKHN0ZXAsIG1zZyk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhIHN0ZXAgd2l0aCB0aGUgZ2l2ZW4gZW1vamksIHR5cGUsIG1lc3NhZ2UgYW5kIGdyb3VwLlxuICAgKiBAcGFyYW0gZW1vamlTdHIgLSBUaGUgZW1vamkgc3RyaW5nIHRvIGRpc3BsYXkuXG4gICAqIEBwYXJhbSBzdGVwIC0gVGhlIHN0ZXAgdHlwZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBUaGUgbWVzc2FnZSBvZiB0aGUgc3RlcC5cbiAgICogQHBhcmFtIHN0YXJ0R3JvdXAgLSBUaGUgc3RhcnQgZ3JvdXAgdHlwZS5cbiAgICovXG4gIGxvZ1N0ZXAoZW1vamlTdHI6IHN0cmluZywgc3RlcDogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcsIHN0YXJ0R3JvdXAgPSBMb2dHcm91cC5OT19HUk9VUCk6IHZvaWQge1xuICAgIC8vIExvZ2ljIHRvIGRldGVybWluZSB0aGUgbG9nIG1lc3NhZ2UgY29sb3IgYW5kIGZvcm1hdCBiYXNlZCBvbiB0aGUgc3RlcCB0eXBlXG4gICAgaWYgKHN0ZXAubGVuZ3RoID4gTG9nVGFzay5pbmRlbnRXaWR0aCkge1xuICAgICAgTG9nVGFzay5pbmRlbnRXaWR0aCA9IHN0ZXAubGVuZ3RoO1xuICAgIH1cbiAgICBjb25zdCB7IGRlc2MgfSA9IGhpZ2hsaWdodE1lc3NhZ2Uoc3RlcCwgbWVzc2FnZSk7XG4gICAgY29uc3QgbXNnID0gdGhpcy5nZXRNZXNzYWdlU3RyaW5nKHN0ZXAsIGRlc2MsIGVtb2ppU3RyKTtcblxuICAgIGhhbmRsZU91dHB1dChzdGFydEdyb3VwLCBtc2csIG1lc3NhZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYSBkZWJ1ZyBtZXNzYWdlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIG9mIHRoZSBkZWJ1ZyBtZXNzYWdlLlxuICAgKi9cbiAgZGVidWcobWVzc2FnZSA9ICcnKTogdm9pZCB7XG4gICAgLy8gTG9naWMgdG8gbG9nIGEgZGVidWcgbWVzc2FnZVxuICAgIGlmIChMb2dUYXNrLmlzRGVidWcoKSAmJiBtZXNzYWdlICE9PSAnJykge1xuICAgICAgdGhpcy5sb2dTdGVwKCdcdUQ4M0RcdURDMUUnLCAnREVCVUcnLCBtZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhIHN0YXJ0IG1lc3NhZ2UuXG4gICAqIEBwYXJhbSBtZXNzYWdlIC0gVGhlIG1lc3NhZ2Ugb2YgdGhlIHN0YXJ0IG1lc3NhZ2UuXG4gICAqL1xuICBzdGFydChtZXNzYWdlID0gJycpOiB2b2lkIHtcbiAgICAvLyBMb2dpYyB0byBsb2cgYSBzdGFydCBtZXNzYWdlXG4gICAgY29uc3QgZGVzYyA9IG1lc3NhZ2UgPT09ICcnID8gYFN0YXJ0aW5nICR7dGhpcy5uYW1lfS4uLmAgOiBtZXNzYWdlO1xuXG4gICAgdGhpcy5sb2dTdGVwKCdcdUQ4M0RcdURFODAnLCAnU1RBUlQnLCBkZXNjLCBMb2dHcm91cC5TVEFSVF9HUk9VUCk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhbiBpbmZvIG1lc3NhZ2UuXG4gICAqIEBwYXJhbSBtZXNzYWdlIC0gVGhlIG1lc3NhZ2Ugb2YgdGhlIGluZm8gbWVzc2FnZS5cbiAgICovXG4gIGluZm8obWVzc2FnZSA9ICcnKTogdm9pZCB7XG4gICAgLy8gTG9naWMgdG8gbG9nIGFuIGluZm8gbWVzc2FnZVxuICAgIHRoaXMubG9nU3RlcCgnXHUyNzI4JywgJ0lORk8nLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGEgd2FybmluZyBtZXNzYWdlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIG9mIHRoZSB3YXJuaW5nIG1lc3NhZ2UuXG4gICAqL1xuICB3YXJuKG1lc3NhZ2UgPSAnJyk6IHZvaWQge1xuICAgIC8vIExvZ2ljIHRvIGxvZyBhIHdhcm5pbmcgbWVzc2FnZVxuICAgIHRoaXMubG9nU3RlcCgnXHUyNkEwXHVGRTBGJywgJ1dBUk4nLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGEgc3VjY2VzcyBtZXNzYWdlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIG9mIHRoZSBzdWNjZXNzIG1lc3NhZ2UuXG4gICAqIEBwYXJhbSBpbmdyb3VwIC0gSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHN1Y2Nlc3MgbWVzc2FnZSBpcyBpbiBhIGdyb3VwLlxuICAgKi9cbiAgc3VjY2VzcyhtZXNzYWdlID0gJycsIGluZ3JvdXAgPSB0cnVlKTogdm9pZCB7XG4gICAgLy8gTG9naWMgdG8gbG9nIGEgc3VjY2VzcyBtZXNzYWdlXG4gICAgY29uc3QgZGVzYyA9IG1lc3NhZ2UgPT09ICcnID8gYENvbXBsZXRlZCAke3RoaXMubmFtZX0uYCA6IG1lc3NhZ2U7XG4gICAgaWYgKGluZ3JvdXApIHtcbiAgICAgIHRoaXMuaW5ncm91cCA9IGZhbHNlO1xuICAgICAgaWYgKHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT05TKSB7XG4gICAgICAgIGNvcmUuZW5kR3JvdXAoKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5sb2dTdGVwKCdcdTI3MDUnLCAnU1VDQ0VTUycsIGRlc2MpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYSBmYWlsdXJlIG1lc3NhZ2UuXG4gICAqIEBwYXJhbSBtZXNzYWdlIC0gVGhlIG1lc3NhZ2Ugb2YgdGhlIGZhaWx1cmUgbWVzc2FnZS5cbiAgICogQHBhcmFtIGluZ3JvdXAgLSBJbmRpY2F0ZXMgd2hldGhlciB0aGUgZmFpbHVyZSBtZXNzYWdlIGlzIGluIGEgZ3JvdXAuXG4gICAqL1xuICBmYWlsKG1lc3NhZ2UgPSAnJywgaW5ncm91cCA9IHRydWUpOiB2b2lkIHtcbiAgICAvLyBMb2dpYyB0byBsb2cgYSBmYWlsdXJlIG1lc3NhZ2VcbiAgICBjb25zdCBkZXNjID0gbWVzc2FnZSA9PT0gJycgPyBgRmFpbGVkICR7dGhpcy5uYW1lfS5gIDogbWVzc2FnZTtcbiAgICBpZiAoaW5ncm91cCkge1xuICAgICAgdGhpcy5pbmdyb3VwID0gZmFsc2U7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuR0lUSFVCX0FDVElPTlMpIHtcbiAgICAgICAgY29yZS5lbmRHcm91cCgpO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBtc2d0eXBlID0gcHJvY2Vzcy5lbnYuR0lUSFVCX0FDVElPTlMgPyBMb2dHcm91cC5JU19GQUlMRUQgOiBMb2dHcm91cC5JU19FUlJPUjtcbiAgICB0aGlzLmxvZ1N0ZXAoJ1x1Mjc0QycsICdGQUlMVVJFJywgZGVzYywgbXNndHlwZSk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhbiBlcnJvciBtZXNzYWdlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIG9mIHRoZSBlcnJvciBtZXNzYWdlLlxuICAgKi9cbiAgZXJyb3IobWVzc2FnZSA9ICcnKTogdm9pZCB7XG4gICAgLy8gTG9naWMgdG8gbG9nIGFuIGVycm9yIG1lc3NhZ2VcbiAgICB0aGlzLmxvZ1N0ZXAoJ1x1RDgzRFx1REQzNCcsICdFUlJPUicsIG1lc3NhZ2UsIExvZ0dyb3VwLklTX0VSUk9SKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGEgdGl0bGUgbWVzc2FnZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBUaGUgbWVzc2FnZSBvZiB0aGUgdGl0bGUgbWVzc2FnZS5cbiAgICovXG4gIHRpdGxlKG1lc3NhZ2UgPSAnJyk6IHZvaWQge1xuICAgIC8vIExvZ2ljIHRvIGxvZyBhIHRpdGxlIG1lc3NhZ2VcbiAgICB0aGlzLmxvZ1N0ZXAoJ1x1RDgzRFx1RENEMycsICcjIyMjIycsIG1lc3NhZ2UsIExvZ0dyb3VwLklTX1RJVExFKTtcbiAgfVxufVxuIiwgImNvbnN0IEFOU0lfQkFDS0dST1VORF9PRkZTRVQgPSAxMDtcblxuY29uc3Qgd3JhcEFuc2kxNiA9IChvZmZzZXQgPSAwKSA9PiBjb2RlID0+IGBcXHUwMDFCWyR7Y29kZSArIG9mZnNldH1tYDtcblxuY29uc3Qgd3JhcEFuc2kyNTYgPSAob2Zmc2V0ID0gMCkgPT4gY29kZSA9PiBgXFx1MDAxQlskezM4ICsgb2Zmc2V0fTs1OyR7Y29kZX1tYDtcblxuY29uc3Qgd3JhcEFuc2kxNm0gPSAob2Zmc2V0ID0gMCkgPT4gKHJlZCwgZ3JlZW4sIGJsdWUpID0+IGBcXHUwMDFCWyR7MzggKyBvZmZzZXR9OzI7JHtyZWR9OyR7Z3JlZW59OyR7Ymx1ZX1tYDtcblxuY29uc3Qgc3R5bGVzID0ge1xuXHRtb2RpZmllcjoge1xuXHRcdHJlc2V0OiBbMCwgMF0sXG5cdFx0Ly8gMjEgaXNuJ3Qgd2lkZWx5IHN1cHBvcnRlZCBhbmQgMjIgZG9lcyB0aGUgc2FtZSB0aGluZ1xuXHRcdGJvbGQ6IFsxLCAyMl0sXG5cdFx0ZGltOiBbMiwgMjJdLFxuXHRcdGl0YWxpYzogWzMsIDIzXSxcblx0XHR1bmRlcmxpbmU6IFs0LCAyNF0sXG5cdFx0b3ZlcmxpbmU6IFs1MywgNTVdLFxuXHRcdGludmVyc2U6IFs3LCAyN10sXG5cdFx0aGlkZGVuOiBbOCwgMjhdLFxuXHRcdHN0cmlrZXRocm91Z2g6IFs5LCAyOV0sXG5cdH0sXG5cdGNvbG9yOiB7XG5cdFx0YmxhY2s6IFszMCwgMzldLFxuXHRcdHJlZDogWzMxLCAzOV0sXG5cdFx0Z3JlZW46IFszMiwgMzldLFxuXHRcdHllbGxvdzogWzMzLCAzOV0sXG5cdFx0Ymx1ZTogWzM0LCAzOV0sXG5cdFx0bWFnZW50YTogWzM1LCAzOV0sXG5cdFx0Y3lhbjogWzM2LCAzOV0sXG5cdFx0d2hpdGU6IFszNywgMzldLFxuXG5cdFx0Ly8gQnJpZ2h0IGNvbG9yXG5cdFx0YmxhY2tCcmlnaHQ6IFs5MCwgMzldLFxuXHRcdGdyYXk6IFs5MCwgMzldLCAvLyBBbGlhcyBvZiBgYmxhY2tCcmlnaHRgXG5cdFx0Z3JleTogWzkwLCAzOV0sIC8vIEFsaWFzIG9mIGBibGFja0JyaWdodGBcblx0XHRyZWRCcmlnaHQ6IFs5MSwgMzldLFxuXHRcdGdyZWVuQnJpZ2h0OiBbOTIsIDM5XSxcblx0XHR5ZWxsb3dCcmlnaHQ6IFs5MywgMzldLFxuXHRcdGJsdWVCcmlnaHQ6IFs5NCwgMzldLFxuXHRcdG1hZ2VudGFCcmlnaHQ6IFs5NSwgMzldLFxuXHRcdGN5YW5CcmlnaHQ6IFs5NiwgMzldLFxuXHRcdHdoaXRlQnJpZ2h0OiBbOTcsIDM5XSxcblx0fSxcblx0YmdDb2xvcjoge1xuXHRcdGJnQmxhY2s6IFs0MCwgNDldLFxuXHRcdGJnUmVkOiBbNDEsIDQ5XSxcblx0XHRiZ0dyZWVuOiBbNDIsIDQ5XSxcblx0XHRiZ1llbGxvdzogWzQzLCA0OV0sXG5cdFx0YmdCbHVlOiBbNDQsIDQ5XSxcblx0XHRiZ01hZ2VudGE6IFs0NSwgNDldLFxuXHRcdGJnQ3lhbjogWzQ2LCA0OV0sXG5cdFx0YmdXaGl0ZTogWzQ3LCA0OV0sXG5cblx0XHQvLyBCcmlnaHQgY29sb3Jcblx0XHRiZ0JsYWNrQnJpZ2h0OiBbMTAwLCA0OV0sXG5cdFx0YmdHcmF5OiBbMTAwLCA0OV0sIC8vIEFsaWFzIG9mIGBiZ0JsYWNrQnJpZ2h0YFxuXHRcdGJnR3JleTogWzEwMCwgNDldLCAvLyBBbGlhcyBvZiBgYmdCbGFja0JyaWdodGBcblx0XHRiZ1JlZEJyaWdodDogWzEwMSwgNDldLFxuXHRcdGJnR3JlZW5CcmlnaHQ6IFsxMDIsIDQ5XSxcblx0XHRiZ1llbGxvd0JyaWdodDogWzEwMywgNDldLFxuXHRcdGJnQmx1ZUJyaWdodDogWzEwNCwgNDldLFxuXHRcdGJnTWFnZW50YUJyaWdodDogWzEwNSwgNDldLFxuXHRcdGJnQ3lhbkJyaWdodDogWzEwNiwgNDldLFxuXHRcdGJnV2hpdGVCcmlnaHQ6IFsxMDcsIDQ5XSxcblx0fSxcbn07XG5cbmV4cG9ydCBjb25zdCBtb2RpZmllck5hbWVzID0gT2JqZWN0LmtleXMoc3R5bGVzLm1vZGlmaWVyKTtcbmV4cG9ydCBjb25zdCBmb3JlZ3JvdW5kQ29sb3JOYW1lcyA9IE9iamVjdC5rZXlzKHN0eWxlcy5jb2xvcik7XG5leHBvcnQgY29uc3QgYmFja2dyb3VuZENvbG9yTmFtZXMgPSBPYmplY3Qua2V5cyhzdHlsZXMuYmdDb2xvcik7XG5leHBvcnQgY29uc3QgY29sb3JOYW1lcyA9IFsuLi5mb3JlZ3JvdW5kQ29sb3JOYW1lcywgLi4uYmFja2dyb3VuZENvbG9yTmFtZXNdO1xuXG5mdW5jdGlvbiBhc3NlbWJsZVN0eWxlcygpIHtcblx0Y29uc3QgY29kZXMgPSBuZXcgTWFwKCk7XG5cblx0Zm9yIChjb25zdCBbZ3JvdXBOYW1lLCBncm91cF0gb2YgT2JqZWN0LmVudHJpZXMoc3R5bGVzKSkge1xuXHRcdGZvciAoY29uc3QgW3N0eWxlTmFtZSwgc3R5bGVdIG9mIE9iamVjdC5lbnRyaWVzKGdyb3VwKSkge1xuXHRcdFx0c3R5bGVzW3N0eWxlTmFtZV0gPSB7XG5cdFx0XHRcdG9wZW46IGBcXHUwMDFCWyR7c3R5bGVbMF19bWAsXG5cdFx0XHRcdGNsb3NlOiBgXFx1MDAxQlske3N0eWxlWzFdfW1gLFxuXHRcdFx0fTtcblxuXHRcdFx0Z3JvdXBbc3R5bGVOYW1lXSA9IHN0eWxlc1tzdHlsZU5hbWVdO1xuXG5cdFx0XHRjb2Rlcy5zZXQoc3R5bGVbMF0sIHN0eWxlWzFdKTtcblx0XHR9XG5cblx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoc3R5bGVzLCBncm91cE5hbWUsIHtcblx0XHRcdHZhbHVlOiBncm91cCxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdH0pO1xuXHR9XG5cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHN0eWxlcywgJ2NvZGVzJywge1xuXHRcdHZhbHVlOiBjb2Rlcyxcblx0XHRlbnVtZXJhYmxlOiBmYWxzZSxcblx0fSk7XG5cblx0c3R5bGVzLmNvbG9yLmNsb3NlID0gJ1xcdTAwMUJbMzltJztcblx0c3R5bGVzLmJnQ29sb3IuY2xvc2UgPSAnXFx1MDAxQls0OW0nO1xuXG5cdHN0eWxlcy5jb2xvci5hbnNpID0gd3JhcEFuc2kxNigpO1xuXHRzdHlsZXMuY29sb3IuYW5zaTI1NiA9IHdyYXBBbnNpMjU2KCk7XG5cdHN0eWxlcy5jb2xvci5hbnNpMTZtID0gd3JhcEFuc2kxNm0oKTtcblx0c3R5bGVzLmJnQ29sb3IuYW5zaSA9IHdyYXBBbnNpMTYoQU5TSV9CQUNLR1JPVU5EX09GRlNFVCk7XG5cdHN0eWxlcy5iZ0NvbG9yLmFuc2kyNTYgPSB3cmFwQW5zaTI1NihBTlNJX0JBQ0tHUk9VTkRfT0ZGU0VUKTtcblx0c3R5bGVzLmJnQ29sb3IuYW5zaTE2bSA9IHdyYXBBbnNpMTZtKEFOU0lfQkFDS0dST1VORF9PRkZTRVQpO1xuXG5cdC8vIEZyb20gaHR0cHM6Ly9naXRodWIuY29tL1FpeC0vY29sb3ItY29udmVydC9ibG9iLzNmMGUwZDRlOTJlMjM1Nzk2Y2NiMTdmNmU4NWM3MjA5NGE2NTFmNDkvY29udmVyc2lvbnMuanNcblx0T2JqZWN0LmRlZmluZVByb3BlcnRpZXMoc3R5bGVzLCB7XG5cdFx0cmdiVG9BbnNpMjU2OiB7XG5cdFx0XHR2YWx1ZShyZWQsIGdyZWVuLCBibHVlKSB7XG5cdFx0XHRcdC8vIFdlIHVzZSB0aGUgZXh0ZW5kZWQgZ3JleXNjYWxlIHBhbGV0dGUgaGVyZSwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mXG5cdFx0XHRcdC8vIGJsYWNrIGFuZCB3aGl0ZS4gbm9ybWFsIHBhbGV0dGUgb25seSBoYXMgNCBncmV5c2NhbGUgc2hhZGVzLlxuXHRcdFx0XHRpZiAocmVkID09PSBncmVlbiAmJiBncmVlbiA9PT0gYmx1ZSkge1xuXHRcdFx0XHRcdGlmIChyZWQgPCA4KSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gMTY7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aWYgKHJlZCA+IDI0OCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIDIzMTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRyZXR1cm4gTWF0aC5yb3VuZCgoKHJlZCAtIDgpIC8gMjQ3KSAqIDI0KSArIDIzMjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHJldHVybiAxNlxuXHRcdFx0XHRcdCsgKDM2ICogTWF0aC5yb3VuZChyZWQgLyAyNTUgKiA1KSlcblx0XHRcdFx0XHQrICg2ICogTWF0aC5yb3VuZChncmVlbiAvIDI1NSAqIDUpKVxuXHRcdFx0XHRcdCsgTWF0aC5yb3VuZChibHVlIC8gMjU1ICogNSk7XG5cdFx0XHR9LFxuXHRcdFx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdFx0fSxcblx0XHRoZXhUb1JnYjoge1xuXHRcdFx0dmFsdWUoaGV4KSB7XG5cdFx0XHRcdGNvbnN0IG1hdGNoZXMgPSAvW2EtZlxcZF17Nn18W2EtZlxcZF17M30vaS5leGVjKGhleC50b1N0cmluZygxNikpO1xuXHRcdFx0XHRpZiAoIW1hdGNoZXMpIHtcblx0XHRcdFx0XHRyZXR1cm4gWzAsIDAsIDBdO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0bGV0IFtjb2xvclN0cmluZ10gPSBtYXRjaGVzO1xuXG5cdFx0XHRcdGlmIChjb2xvclN0cmluZy5sZW5ndGggPT09IDMpIHtcblx0XHRcdFx0XHRjb2xvclN0cmluZyA9IFsuLi5jb2xvclN0cmluZ10ubWFwKGNoYXJhY3RlciA9PiBjaGFyYWN0ZXIgKyBjaGFyYWN0ZXIpLmpvaW4oJycpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgaW50ZWdlciA9IE51bWJlci5wYXJzZUludChjb2xvclN0cmluZywgMTYpO1xuXG5cdFx0XHRcdHJldHVybiBbXG5cdFx0XHRcdFx0LyogZXNsaW50LWRpc2FibGUgbm8tYml0d2lzZSAqL1xuXHRcdFx0XHRcdChpbnRlZ2VyID4+IDE2KSAmIDB4RkYsXG5cdFx0XHRcdFx0KGludGVnZXIgPj4gOCkgJiAweEZGLFxuXHRcdFx0XHRcdGludGVnZXIgJiAweEZGLFxuXHRcdFx0XHRcdC8qIGVzbGludC1lbmFibGUgbm8tYml0d2lzZSAqL1xuXHRcdFx0XHRdO1xuXHRcdFx0fSxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdH0sXG5cdFx0aGV4VG9BbnNpMjU2OiB7XG5cdFx0XHR2YWx1ZTogaGV4ID0+IHN0eWxlcy5yZ2JUb0Fuc2kyNTYoLi4uc3R5bGVzLmhleFRvUmdiKGhleCkpLFxuXHRcdFx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdFx0fSxcblx0XHRhbnNpMjU2VG9BbnNpOiB7XG5cdFx0XHR2YWx1ZShjb2RlKSB7XG5cdFx0XHRcdGlmIChjb2RlIDwgOCkge1xuXHRcdFx0XHRcdHJldHVybiAzMCArIGNvZGU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpZiAoY29kZSA8IDE2KSB7XG5cdFx0XHRcdFx0cmV0dXJuIDkwICsgKGNvZGUgLSA4KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGxldCByZWQ7XG5cdFx0XHRcdGxldCBncmVlbjtcblx0XHRcdFx0bGV0IGJsdWU7XG5cblx0XHRcdFx0aWYgKGNvZGUgPj0gMjMyKSB7XG5cdFx0XHRcdFx0cmVkID0gKCgoY29kZSAtIDIzMikgKiAxMCkgKyA4KSAvIDI1NTtcblx0XHRcdFx0XHRncmVlbiA9IHJlZDtcblx0XHRcdFx0XHRibHVlID0gcmVkO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGNvZGUgLT0gMTY7XG5cblx0XHRcdFx0XHRjb25zdCByZW1haW5kZXIgPSBjb2RlICUgMzY7XG5cblx0XHRcdFx0XHRyZWQgPSBNYXRoLmZsb29yKGNvZGUgLyAzNikgLyA1O1xuXHRcdFx0XHRcdGdyZWVuID0gTWF0aC5mbG9vcihyZW1haW5kZXIgLyA2KSAvIDU7XG5cdFx0XHRcdFx0Ymx1ZSA9IChyZW1haW5kZXIgJSA2KSAvIDU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRjb25zdCB2YWx1ZSA9IE1hdGgubWF4KHJlZCwgZ3JlZW4sIGJsdWUpICogMjtcblxuXHRcdFx0XHRpZiAodmFsdWUgPT09IDApIHtcblx0XHRcdFx0XHRyZXR1cm4gMzA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYml0d2lzZVxuXHRcdFx0XHRsZXQgcmVzdWx0ID0gMzAgKyAoKE1hdGgucm91bmQoYmx1ZSkgPDwgMikgfCAoTWF0aC5yb3VuZChncmVlbikgPDwgMSkgfCBNYXRoLnJvdW5kKHJlZCkpO1xuXG5cdFx0XHRcdGlmICh2YWx1ZSA9PT0gMikge1xuXHRcdFx0XHRcdHJlc3VsdCArPSA2MDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHJldHVybiByZXN1bHQ7XG5cdFx0XHR9LFxuXHRcdFx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdFx0fSxcblx0XHRyZ2JUb0Fuc2k6IHtcblx0XHRcdHZhbHVlOiAocmVkLCBncmVlbiwgYmx1ZSkgPT4gc3R5bGVzLmFuc2kyNTZUb0Fuc2koc3R5bGVzLnJnYlRvQW5zaTI1NihyZWQsIGdyZWVuLCBibHVlKSksXG5cdFx0XHRlbnVtZXJhYmxlOiBmYWxzZSxcblx0XHR9LFxuXHRcdGhleFRvQW5zaToge1xuXHRcdFx0dmFsdWU6IGhleCA9PiBzdHlsZXMuYW5zaTI1NlRvQW5zaShzdHlsZXMuaGV4VG9BbnNpMjU2KGhleCkpLFxuXHRcdFx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdFx0fSxcblx0fSk7XG5cblx0cmV0dXJuIHN0eWxlcztcbn1cblxuY29uc3QgYW5zaVN0eWxlcyA9IGFzc2VtYmxlU3R5bGVzKCk7XG5cbmV4cG9ydCBkZWZhdWx0IGFuc2lTdHlsZXM7XG4iLCAiaW1wb3J0IHByb2Nlc3MgZnJvbSAnbm9kZTpwcm9jZXNzJztcbmltcG9ydCBvcyBmcm9tICdub2RlOm9zJztcbmltcG9ydCB0dHkgZnJvbSAnbm9kZTp0dHknO1xuXG4vLyBGcm9tOiBodHRwczovL2dpdGh1Yi5jb20vc2luZHJlc29yaHVzL2hhcy1mbGFnL2Jsb2IvbWFpbi9pbmRleC5qc1xuLy8vIGZ1bmN0aW9uIGhhc0ZsYWcoZmxhZywgYXJndiA9IGdsb2JhbFRoaXMuRGVubz8uYXJncyA/PyBwcm9jZXNzLmFyZ3YpIHtcbmZ1bmN0aW9uIGhhc0ZsYWcoZmxhZywgYXJndiA9IGdsb2JhbFRoaXMuRGVubyA/IGdsb2JhbFRoaXMuRGVuby5hcmdzIDogcHJvY2Vzcy5hcmd2KSB7XG5cdGNvbnN0IHByZWZpeCA9IGZsYWcuc3RhcnRzV2l0aCgnLScpID8gJycgOiAoZmxhZy5sZW5ndGggPT09IDEgPyAnLScgOiAnLS0nKTtcblx0Y29uc3QgcG9zaXRpb24gPSBhcmd2LmluZGV4T2YocHJlZml4ICsgZmxhZyk7XG5cdGNvbnN0IHRlcm1pbmF0b3JQb3NpdGlvbiA9IGFyZ3YuaW5kZXhPZignLS0nKTtcblx0cmV0dXJuIHBvc2l0aW9uICE9PSAtMSAmJiAodGVybWluYXRvclBvc2l0aW9uID09PSAtMSB8fCBwb3NpdGlvbiA8IHRlcm1pbmF0b3JQb3NpdGlvbik7XG59XG5cbmNvbnN0IHtlbnZ9ID0gcHJvY2VzcztcblxubGV0IGZsYWdGb3JjZUNvbG9yO1xuaWYgKFxuXHRoYXNGbGFnKCduby1jb2xvcicpXG5cdHx8IGhhc0ZsYWcoJ25vLWNvbG9ycycpXG5cdHx8IGhhc0ZsYWcoJ2NvbG9yPWZhbHNlJylcblx0fHwgaGFzRmxhZygnY29sb3I9bmV2ZXInKVxuKSB7XG5cdGZsYWdGb3JjZUNvbG9yID0gMDtcbn0gZWxzZSBpZiAoXG5cdGhhc0ZsYWcoJ2NvbG9yJylcblx0fHwgaGFzRmxhZygnY29sb3JzJylcblx0fHwgaGFzRmxhZygnY29sb3I9dHJ1ZScpXG5cdHx8IGhhc0ZsYWcoJ2NvbG9yPWFsd2F5cycpXG4pIHtcblx0ZmxhZ0ZvcmNlQ29sb3IgPSAxO1xufVxuXG5mdW5jdGlvbiBlbnZGb3JjZUNvbG9yKCkge1xuXHRpZiAoJ0ZPUkNFX0NPTE9SJyBpbiBlbnYpIHtcblx0XHRpZiAoZW52LkZPUkNFX0NPTE9SID09PSAndHJ1ZScpIHtcblx0XHRcdHJldHVybiAxO1xuXHRcdH1cblxuXHRcdGlmIChlbnYuRk9SQ0VfQ09MT1IgPT09ICdmYWxzZScpIHtcblx0XHRcdHJldHVybiAwO1xuXHRcdH1cblxuXHRcdHJldHVybiBlbnYuRk9SQ0VfQ09MT1IubGVuZ3RoID09PSAwID8gMSA6IE1hdGgubWluKE51bWJlci5wYXJzZUludChlbnYuRk9SQ0VfQ09MT1IsIDEwKSwgMyk7XG5cdH1cbn1cblxuZnVuY3Rpb24gdHJhbnNsYXRlTGV2ZWwobGV2ZWwpIHtcblx0aWYgKGxldmVsID09PSAwKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0cmV0dXJuIHtcblx0XHRsZXZlbCxcblx0XHRoYXNCYXNpYzogdHJ1ZSxcblx0XHRoYXMyNTY6IGxldmVsID49IDIsXG5cdFx0aGFzMTZtOiBsZXZlbCA+PSAzLFxuXHR9O1xufVxuXG5mdW5jdGlvbiBfc3VwcG9ydHNDb2xvcihoYXZlU3RyZWFtLCB7c3RyZWFtSXNUVFksIHNuaWZmRmxhZ3MgPSB0cnVlfSA9IHt9KSB7XG5cdGNvbnN0IG5vRmxhZ0ZvcmNlQ29sb3IgPSBlbnZGb3JjZUNvbG9yKCk7XG5cdGlmIChub0ZsYWdGb3JjZUNvbG9yICE9PSB1bmRlZmluZWQpIHtcblx0XHRmbGFnRm9yY2VDb2xvciA9IG5vRmxhZ0ZvcmNlQ29sb3I7XG5cdH1cblxuXHRjb25zdCBmb3JjZUNvbG9yID0gc25pZmZGbGFncyA/IGZsYWdGb3JjZUNvbG9yIDogbm9GbGFnRm9yY2VDb2xvcjtcblxuXHRpZiAoZm9yY2VDb2xvciA9PT0gMCkge1xuXHRcdHJldHVybiAwO1xuXHR9XG5cblx0aWYgKHNuaWZmRmxhZ3MpIHtcblx0XHRpZiAoaGFzRmxhZygnY29sb3I9MTZtJylcblx0XHRcdHx8IGhhc0ZsYWcoJ2NvbG9yPWZ1bGwnKVxuXHRcdFx0fHwgaGFzRmxhZygnY29sb3I9dHJ1ZWNvbG9yJykpIHtcblx0XHRcdHJldHVybiAzO1xuXHRcdH1cblxuXHRcdGlmIChoYXNGbGFnKCdjb2xvcj0yNTYnKSkge1xuXHRcdFx0cmV0dXJuIDI7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ2hlY2sgZm9yIEF6dXJlIERldk9wcyBwaXBlbGluZXMuXG5cdC8vIEhhcyB0byBiZSBhYm92ZSB0aGUgYCFzdHJlYW1Jc1RUWWAgY2hlY2suXG5cdGlmICgnVEZfQlVJTEQnIGluIGVudiAmJiAnQUdFTlRfTkFNRScgaW4gZW52KSB7XG5cdFx0cmV0dXJuIDE7XG5cdH1cblxuXHRpZiAoaGF2ZVN0cmVhbSAmJiAhc3RyZWFtSXNUVFkgJiYgZm9yY2VDb2xvciA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIDA7XG5cdH1cblxuXHRjb25zdCBtaW4gPSBmb3JjZUNvbG9yIHx8IDA7XG5cblx0aWYgKGVudi5URVJNID09PSAnZHVtYicpIHtcblx0XHRyZXR1cm4gbWluO1xuXHR9XG5cblx0aWYgKHByb2Nlc3MucGxhdGZvcm0gPT09ICd3aW4zMicpIHtcblx0XHQvLyBXaW5kb3dzIDEwIGJ1aWxkIDEwNTg2IGlzIHRoZSBmaXJzdCBXaW5kb3dzIHJlbGVhc2UgdGhhdCBzdXBwb3J0cyAyNTYgY29sb3JzLlxuXHRcdC8vIFdpbmRvd3MgMTAgYnVpbGQgMTQ5MzEgaXMgdGhlIGZpcnN0IHJlbGVhc2UgdGhhdCBzdXBwb3J0cyAxNm0vVHJ1ZUNvbG9yLlxuXHRcdGNvbnN0IG9zUmVsZWFzZSA9IG9zLnJlbGVhc2UoKS5zcGxpdCgnLicpO1xuXHRcdGlmIChcblx0XHRcdE51bWJlcihvc1JlbGVhc2VbMF0pID49IDEwXG5cdFx0XHQmJiBOdW1iZXIob3NSZWxlYXNlWzJdKSA+PSAxMF81ODZcblx0XHQpIHtcblx0XHRcdHJldHVybiBOdW1iZXIob3NSZWxlYXNlWzJdKSA+PSAxNF85MzEgPyAzIDogMjtcblx0XHR9XG5cblx0XHRyZXR1cm4gMTtcblx0fVxuXG5cdGlmICgnQ0knIGluIGVudikge1xuXHRcdGlmIChbJ0dJVEhVQl9BQ1RJT05TJywgJ0dJVEVBX0FDVElPTlMnLCAnQ0lSQ0xFQ0knXS5zb21lKGtleSA9PiBrZXkgaW4gZW52KSkge1xuXHRcdFx0cmV0dXJuIDM7XG5cdFx0fVxuXG5cdFx0aWYgKFsnVFJBVklTJywgJ0FQUFZFWU9SJywgJ0dJVExBQl9DSScsICdCVUlMREtJVEUnLCAnRFJPTkUnXS5zb21lKHNpZ24gPT4gc2lnbiBpbiBlbnYpIHx8IGVudi5DSV9OQU1FID09PSAnY29kZXNoaXAnKSB7XG5cdFx0XHRyZXR1cm4gMTtcblx0XHR9XG5cblx0XHRyZXR1cm4gbWluO1xuXHR9XG5cblx0aWYgKCdURUFNQ0lUWV9WRVJTSU9OJyBpbiBlbnYpIHtcblx0XHRyZXR1cm4gL14oOVxcLigwKlsxLTldXFxkKilcXC58XFxkezIsfVxcLikvLnRlc3QoZW52LlRFQU1DSVRZX1ZFUlNJT04pID8gMSA6IDA7XG5cdH1cblxuXHRpZiAoZW52LkNPTE9SVEVSTSA9PT0gJ3RydWVjb2xvcicpIHtcblx0XHRyZXR1cm4gMztcblx0fVxuXG5cdGlmIChlbnYuVEVSTSA9PT0gJ3h0ZXJtLWtpdHR5Jykge1xuXHRcdHJldHVybiAzO1xuXHR9XG5cblx0aWYgKGVudi5URVJNID09PSAneHRlcm0tZ2hvc3R0eScpIHtcblx0XHRyZXR1cm4gMztcblx0fVxuXG5cdGlmIChlbnYuVEVSTSA9PT0gJ3dlenRlcm0nKSB7XG5cdFx0cmV0dXJuIDM7XG5cdH1cblxuXHRpZiAoJ1RFUk1fUFJPR1JBTScgaW4gZW52KSB7XG5cdFx0Y29uc3QgdmVyc2lvbiA9IE51bWJlci5wYXJzZUludCgoZW52LlRFUk1fUFJPR1JBTV9WRVJTSU9OIHx8ICcnKS5zcGxpdCgnLicpWzBdLCAxMCk7XG5cblx0XHRzd2l0Y2ggKGVudi5URVJNX1BST0dSQU0pIHtcblx0XHRcdGNhc2UgJ2lUZXJtLmFwcCc6IHtcblx0XHRcdFx0cmV0dXJuIHZlcnNpb24gPj0gMyA/IDMgOiAyO1xuXHRcdFx0fVxuXG5cdFx0XHRjYXNlICdBcHBsZV9UZXJtaW5hbCc6IHtcblx0XHRcdFx0cmV0dXJuIDI7XG5cdFx0XHR9XG5cdFx0XHQvLyBObyBkZWZhdWx0XG5cdFx0fVxuXHR9XG5cblx0aWYgKC8tMjU2KGNvbG9yKT8kL2kudGVzdChlbnYuVEVSTSkpIHtcblx0XHRyZXR1cm4gMjtcblx0fVxuXG5cdGlmICgvXnNjcmVlbnxeeHRlcm18XnZ0MTAwfF52dDIyMHxecnh2dHxjb2xvcnxhbnNpfGN5Z3dpbnxsaW51eC9pLnRlc3QoZW52LlRFUk0pKSB7XG5cdFx0cmV0dXJuIDE7XG5cdH1cblxuXHRpZiAoJ0NPTE9SVEVSTScgaW4gZW52KSB7XG5cdFx0cmV0dXJuIDE7XG5cdH1cblxuXHRyZXR1cm4gbWluO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU3VwcG9ydHNDb2xvcihzdHJlYW0sIG9wdGlvbnMgPSB7fSkge1xuXHRjb25zdCBsZXZlbCA9IF9zdXBwb3J0c0NvbG9yKHN0cmVhbSwge1xuXHRcdHN0cmVhbUlzVFRZOiBzdHJlYW0gJiYgc3RyZWFtLmlzVFRZLFxuXHRcdC4uLm9wdGlvbnMsXG5cdH0pO1xuXG5cdHJldHVybiB0cmFuc2xhdGVMZXZlbChsZXZlbCk7XG59XG5cbmNvbnN0IHN1cHBvcnRzQ29sb3IgPSB7XG5cdHN0ZG91dDogY3JlYXRlU3VwcG9ydHNDb2xvcih7aXNUVFk6IHR0eS5pc2F0dHkoMSl9KSxcblx0c3RkZXJyOiBjcmVhdGVTdXBwb3J0c0NvbG9yKHtpc1RUWTogdHR5LmlzYXR0eSgyKX0pLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgc3VwcG9ydHNDb2xvcjtcbiIsICIvLyBUT0RPOiBXaGVuIHRhcmdldGluZyBOb2RlLmpzIDE2LCB1c2UgYFN0cmluZy5wcm90b3R5cGUucmVwbGFjZUFsbGAuXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nUmVwbGFjZUFsbChzdHJpbmcsIHN1YnN0cmluZywgcmVwbGFjZXIpIHtcblx0bGV0IGluZGV4ID0gc3RyaW5nLmluZGV4T2Yoc3Vic3RyaW5nKTtcblx0aWYgKGluZGV4ID09PSAtMSkge1xuXHRcdHJldHVybiBzdHJpbmc7XG5cdH1cblxuXHRjb25zdCBzdWJzdHJpbmdMZW5ndGggPSBzdWJzdHJpbmcubGVuZ3RoO1xuXHRsZXQgZW5kSW5kZXggPSAwO1xuXHRsZXQgcmV0dXJuVmFsdWUgPSAnJztcblx0ZG8ge1xuXHRcdHJldHVyblZhbHVlICs9IHN0cmluZy5zbGljZShlbmRJbmRleCwgaW5kZXgpICsgc3Vic3RyaW5nICsgcmVwbGFjZXI7XG5cdFx0ZW5kSW5kZXggPSBpbmRleCArIHN1YnN0cmluZ0xlbmd0aDtcblx0XHRpbmRleCA9IHN0cmluZy5pbmRleE9mKHN1YnN0cmluZywgZW5kSW5kZXgpO1xuXHR9IHdoaWxlIChpbmRleCAhPT0gLTEpO1xuXG5cdHJldHVyblZhbHVlICs9IHN0cmluZy5zbGljZShlbmRJbmRleCk7XG5cdHJldHVybiByZXR1cm5WYWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZ0VuY2FzZUNSTEZXaXRoRmlyc3RJbmRleChzdHJpbmcsIHByZWZpeCwgcG9zdGZpeCwgaW5kZXgpIHtcblx0bGV0IGVuZEluZGV4ID0gMDtcblx0bGV0IHJldHVyblZhbHVlID0gJyc7XG5cdGRvIHtcblx0XHRjb25zdCBnb3RDUiA9IHN0cmluZ1tpbmRleCAtIDFdID09PSAnXFxyJztcblx0XHRyZXR1cm5WYWx1ZSArPSBzdHJpbmcuc2xpY2UoZW5kSW5kZXgsIChnb3RDUiA/IGluZGV4IC0gMSA6IGluZGV4KSkgKyBwcmVmaXggKyAoZ290Q1IgPyAnXFxyXFxuJyA6ICdcXG4nKSArIHBvc3RmaXg7XG5cdFx0ZW5kSW5kZXggPSBpbmRleCArIDE7XG5cdFx0aW5kZXggPSBzdHJpbmcuaW5kZXhPZignXFxuJywgZW5kSW5kZXgpO1xuXHR9IHdoaWxlIChpbmRleCAhPT0gLTEpO1xuXG5cdHJldHVyblZhbHVlICs9IHN0cmluZy5zbGljZShlbmRJbmRleCk7XG5cdHJldHVybiByZXR1cm5WYWx1ZTtcbn1cbiIsICJpbXBvcnQgYW5zaVN0eWxlcyBmcm9tICcjYW5zaS1zdHlsZXMnO1xuaW1wb3J0IHN1cHBvcnRzQ29sb3IgZnJvbSAnI3N1cHBvcnRzLWNvbG9yJztcbmltcG9ydCB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgaW1wb3J0L29yZGVyXG5cdHN0cmluZ1JlcGxhY2VBbGwsXG5cdHN0cmluZ0VuY2FzZUNSTEZXaXRoRmlyc3RJbmRleCxcbn0gZnJvbSAnLi91dGlsaXRpZXMuanMnO1xuXG5jb25zdCB7c3Rkb3V0OiBzdGRvdXRDb2xvciwgc3RkZXJyOiBzdGRlcnJDb2xvcn0gPSBzdXBwb3J0c0NvbG9yO1xuXG5jb25zdCBHRU5FUkFUT1IgPSBTeW1ib2woJ0dFTkVSQVRPUicpO1xuY29uc3QgU1RZTEVSID0gU3ltYm9sKCdTVFlMRVInKTtcbmNvbnN0IElTX0VNUFRZID0gU3ltYm9sKCdJU19FTVBUWScpO1xuXG4vLyBgc3VwcG9ydHNDb2xvci5sZXZlbGAgXHUyMTkyIGBhbnNpU3R5bGVzLmNvbG9yW25hbWVdYCBtYXBwaW5nXG5jb25zdCBsZXZlbE1hcHBpbmcgPSBbXG5cdCdhbnNpJyxcblx0J2Fuc2knLFxuXHQnYW5zaTI1NicsXG5cdCdhbnNpMTZtJyxcbl07XG5cbmNvbnN0IHN0eWxlcyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cbmNvbnN0IGFwcGx5T3B0aW9ucyA9IChvYmplY3QsIG9wdGlvbnMgPSB7fSkgPT4ge1xuXHRpZiAob3B0aW9ucy5sZXZlbCAmJiAhKE51bWJlci5pc0ludGVnZXIob3B0aW9ucy5sZXZlbCkgJiYgb3B0aW9ucy5sZXZlbCA+PSAwICYmIG9wdGlvbnMubGV2ZWwgPD0gMykpIHtcblx0XHR0aHJvdyBuZXcgRXJyb3IoJ1RoZSBgbGV2ZWxgIG9wdGlvbiBzaG91bGQgYmUgYW4gaW50ZWdlciBmcm9tIDAgdG8gMycpO1xuXHR9XG5cblx0Ly8gRGV0ZWN0IGxldmVsIGlmIG5vdCBzZXQgbWFudWFsbHlcblx0Y29uc3QgY29sb3JMZXZlbCA9IHN0ZG91dENvbG9yID8gc3Rkb3V0Q29sb3IubGV2ZWwgOiAwO1xuXHRvYmplY3QubGV2ZWwgPSBvcHRpb25zLmxldmVsID09PSB1bmRlZmluZWQgPyBjb2xvckxldmVsIDogb3B0aW9ucy5sZXZlbDtcbn07XG5cbmV4cG9ydCBjbGFzcyBDaGFsayB7XG5cdGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc3RydWN0b3ItcmV0dXJuXG5cdFx0cmV0dXJuIGNoYWxrRmFjdG9yeShvcHRpb25zKTtcblx0fVxufVxuXG5jb25zdCBjaGFsa0ZhY3RvcnkgPSBvcHRpb25zID0+IHtcblx0Y29uc3QgY2hhbGsgPSAoLi4uc3RyaW5ncykgPT4gc3RyaW5ncy5qb2luKCcgJyk7XG5cdGFwcGx5T3B0aW9ucyhjaGFsaywgb3B0aW9ucyk7XG5cblx0T2JqZWN0LnNldFByb3RvdHlwZU9mKGNoYWxrLCBjcmVhdGVDaGFsay5wcm90b3R5cGUpO1xuXG5cdHJldHVybiBjaGFsaztcbn07XG5cbmZ1bmN0aW9uIGNyZWF0ZUNoYWxrKG9wdGlvbnMpIHtcblx0cmV0dXJuIGNoYWxrRmFjdG9yeShvcHRpb25zKTtcbn1cblxuT2JqZWN0LnNldFByb3RvdHlwZU9mKGNyZWF0ZUNoYWxrLnByb3RvdHlwZSwgRnVuY3Rpb24ucHJvdG90eXBlKTtcblxuZm9yIChjb25zdCBbc3R5bGVOYW1lLCBzdHlsZV0gb2YgT2JqZWN0LmVudHJpZXMoYW5zaVN0eWxlcykpIHtcblx0c3R5bGVzW3N0eWxlTmFtZV0gPSB7XG5cdFx0Z2V0KCkge1xuXHRcdFx0Y29uc3QgYnVpbGRlciA9IGNyZWF0ZUJ1aWxkZXIodGhpcywgY3JlYXRlU3R5bGVyKHN0eWxlLm9wZW4sIHN0eWxlLmNsb3NlLCB0aGlzW1NUWUxFUl0pLCB0aGlzW0lTX0VNUFRZXSk7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgc3R5bGVOYW1lLCB7dmFsdWU6IGJ1aWxkZXJ9KTtcblx0XHRcdHJldHVybiBidWlsZGVyO1xuXHRcdH0sXG5cdH07XG59XG5cbnN0eWxlcy52aXNpYmxlID0ge1xuXHRnZXQoKSB7XG5cdFx0Y29uc3QgYnVpbGRlciA9IGNyZWF0ZUJ1aWxkZXIodGhpcywgdGhpc1tTVFlMRVJdLCB0cnVlKTtcblx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ3Zpc2libGUnLCB7dmFsdWU6IGJ1aWxkZXJ9KTtcblx0XHRyZXR1cm4gYnVpbGRlcjtcblx0fSxcbn07XG5cbmNvbnN0IGdldE1vZGVsQW5zaSA9IChtb2RlbCwgbGV2ZWwsIHR5cGUsIC4uLmFyZ3VtZW50c18pID0+IHtcblx0aWYgKG1vZGVsID09PSAncmdiJykge1xuXHRcdGlmIChsZXZlbCA9PT0gJ2Fuc2kxNm0nKSB7XG5cdFx0XHRyZXR1cm4gYW5zaVN0eWxlc1t0eXBlXS5hbnNpMTZtKC4uLmFyZ3VtZW50c18pO1xuXHRcdH1cblxuXHRcdGlmIChsZXZlbCA9PT0gJ2Fuc2kyNTYnKSB7XG5cdFx0XHRyZXR1cm4gYW5zaVN0eWxlc1t0eXBlXS5hbnNpMjU2KGFuc2lTdHlsZXMucmdiVG9BbnNpMjU2KC4uLmFyZ3VtZW50c18pKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gYW5zaVN0eWxlc1t0eXBlXS5hbnNpKGFuc2lTdHlsZXMucmdiVG9BbnNpKC4uLmFyZ3VtZW50c18pKTtcblx0fVxuXG5cdGlmIChtb2RlbCA9PT0gJ2hleCcpIHtcblx0XHRyZXR1cm4gZ2V0TW9kZWxBbnNpKCdyZ2InLCBsZXZlbCwgdHlwZSwgLi4uYW5zaVN0eWxlcy5oZXhUb1JnYiguLi5hcmd1bWVudHNfKSk7XG5cdH1cblxuXHRyZXR1cm4gYW5zaVN0eWxlc1t0eXBlXVttb2RlbF0oLi4uYXJndW1lbnRzXyk7XG59O1xuXG5jb25zdCB1c2VkTW9kZWxzID0gWydyZ2InLCAnaGV4JywgJ2Fuc2kyNTYnXTtcblxuZm9yIChjb25zdCBtb2RlbCBvZiB1c2VkTW9kZWxzKSB7XG5cdHN0eWxlc1ttb2RlbF0gPSB7XG5cdFx0Z2V0KCkge1xuXHRcdFx0Y29uc3Qge2xldmVsfSA9IHRoaXM7XG5cdFx0XHRyZXR1cm4gZnVuY3Rpb24gKC4uLmFyZ3VtZW50c18pIHtcblx0XHRcdFx0Y29uc3Qgc3R5bGVyID0gY3JlYXRlU3R5bGVyKGdldE1vZGVsQW5zaShtb2RlbCwgbGV2ZWxNYXBwaW5nW2xldmVsXSwgJ2NvbG9yJywgLi4uYXJndW1lbnRzXyksIGFuc2lTdHlsZXMuY29sb3IuY2xvc2UsIHRoaXNbU1RZTEVSXSk7XG5cdFx0XHRcdHJldHVybiBjcmVhdGVCdWlsZGVyKHRoaXMsIHN0eWxlciwgdGhpc1tJU19FTVBUWV0pO1xuXHRcdFx0fTtcblx0XHR9LFxuXHR9O1xuXG5cdGNvbnN0IGJnTW9kZWwgPSAnYmcnICsgbW9kZWxbMF0udG9VcHBlckNhc2UoKSArIG1vZGVsLnNsaWNlKDEpO1xuXHRzdHlsZXNbYmdNb2RlbF0gPSB7XG5cdFx0Z2V0KCkge1xuXHRcdFx0Y29uc3Qge2xldmVsfSA9IHRoaXM7XG5cdFx0XHRyZXR1cm4gZnVuY3Rpb24gKC4uLmFyZ3VtZW50c18pIHtcblx0XHRcdFx0Y29uc3Qgc3R5bGVyID0gY3JlYXRlU3R5bGVyKGdldE1vZGVsQW5zaShtb2RlbCwgbGV2ZWxNYXBwaW5nW2xldmVsXSwgJ2JnQ29sb3InLCAuLi5hcmd1bWVudHNfKSwgYW5zaVN0eWxlcy5iZ0NvbG9yLmNsb3NlLCB0aGlzW1NUWUxFUl0pO1xuXHRcdFx0XHRyZXR1cm4gY3JlYXRlQnVpbGRlcih0aGlzLCBzdHlsZXIsIHRoaXNbSVNfRU1QVFldKTtcblx0XHRcdH07XG5cdFx0fSxcblx0fTtcbn1cblxuY29uc3QgcHJvdG8gPSBPYmplY3QuZGVmaW5lUHJvcGVydGllcygoKSA9PiB7fSwge1xuXHQuLi5zdHlsZXMsXG5cdGxldmVsOiB7XG5cdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRnZXQoKSB7XG5cdFx0XHRyZXR1cm4gdGhpc1tHRU5FUkFUT1JdLmxldmVsO1xuXHRcdH0sXG5cdFx0c2V0KGxldmVsKSB7XG5cdFx0XHR0aGlzW0dFTkVSQVRPUl0ubGV2ZWwgPSBsZXZlbDtcblx0XHR9LFxuXHR9LFxufSk7XG5cbmNvbnN0IGNyZWF0ZVN0eWxlciA9IChvcGVuLCBjbG9zZSwgcGFyZW50KSA9PiB7XG5cdGxldCBvcGVuQWxsO1xuXHRsZXQgY2xvc2VBbGw7XG5cdGlmIChwYXJlbnQgPT09IHVuZGVmaW5lZCkge1xuXHRcdG9wZW5BbGwgPSBvcGVuO1xuXHRcdGNsb3NlQWxsID0gY2xvc2U7XG5cdH0gZWxzZSB7XG5cdFx0b3BlbkFsbCA9IHBhcmVudC5vcGVuQWxsICsgb3Blbjtcblx0XHRjbG9zZUFsbCA9IGNsb3NlICsgcGFyZW50LmNsb3NlQWxsO1xuXHR9XG5cblx0cmV0dXJuIHtcblx0XHRvcGVuLFxuXHRcdGNsb3NlLFxuXHRcdG9wZW5BbGwsXG5cdFx0Y2xvc2VBbGwsXG5cdFx0cGFyZW50LFxuXHR9O1xufTtcblxuY29uc3QgY3JlYXRlQnVpbGRlciA9IChzZWxmLCBfc3R5bGVyLCBfaXNFbXB0eSkgPT4ge1xuXHQvLyBTaW5nbGUgYXJndW1lbnQgaXMgaG90IHBhdGgsIGltcGxpY2l0IGNvZXJjaW9uIGlzIGZhc3RlciB0aGFuIGFueXRoaW5nXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1pbXBsaWNpdC1jb2VyY2lvblxuXHRjb25zdCBidWlsZGVyID0gKC4uLmFyZ3VtZW50c18pID0+IGFwcGx5U3R5bGUoYnVpbGRlciwgKGFyZ3VtZW50c18ubGVuZ3RoID09PSAxKSA/ICgnJyArIGFyZ3VtZW50c19bMF0pIDogYXJndW1lbnRzXy5qb2luKCcgJykpO1xuXG5cdC8vIFdlIGFsdGVyIHRoZSBwcm90b3R5cGUgYmVjYXVzZSB3ZSBtdXN0IHJldHVybiBhIGZ1bmN0aW9uLCBidXQgdGhlcmUgaXNcblx0Ly8gbm8gd2F5IHRvIGNyZWF0ZSBhIGZ1bmN0aW9uIHdpdGggYSBkaWZmZXJlbnQgcHJvdG90eXBlXG5cdE9iamVjdC5zZXRQcm90b3R5cGVPZihidWlsZGVyLCBwcm90byk7XG5cblx0YnVpbGRlcltHRU5FUkFUT1JdID0gc2VsZjtcblx0YnVpbGRlcltTVFlMRVJdID0gX3N0eWxlcjtcblx0YnVpbGRlcltJU19FTVBUWV0gPSBfaXNFbXB0eTtcblxuXHRyZXR1cm4gYnVpbGRlcjtcbn07XG5cbmNvbnN0IGFwcGx5U3R5bGUgPSAoc2VsZiwgc3RyaW5nKSA9PiB7XG5cdGlmIChzZWxmLmxldmVsIDw9IDAgfHwgIXN0cmluZykge1xuXHRcdHJldHVybiBzZWxmW0lTX0VNUFRZXSA/ICcnIDogc3RyaW5nO1xuXHR9XG5cblx0bGV0IHN0eWxlciA9IHNlbGZbU1RZTEVSXTtcblxuXHRpZiAoc3R5bGVyID09PSB1bmRlZmluZWQpIHtcblx0XHRyZXR1cm4gc3RyaW5nO1xuXHR9XG5cblx0Y29uc3Qge29wZW5BbGwsIGNsb3NlQWxsfSA9IHN0eWxlcjtcblx0aWYgKHN0cmluZy5pbmNsdWRlcygnXFx1MDAxQicpKSB7XG5cdFx0d2hpbGUgKHN0eWxlciAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHQvLyBSZXBsYWNlIGFueSBpbnN0YW5jZXMgYWxyZWFkeSBwcmVzZW50IHdpdGggYSByZS1vcGVuaW5nIGNvZGVcblx0XHRcdC8vIG90aGVyd2lzZSBvbmx5IHRoZSBwYXJ0IG9mIHRoZSBzdHJpbmcgdW50aWwgc2FpZCBjbG9zaW5nIGNvZGVcblx0XHRcdC8vIHdpbGwgYmUgY29sb3JlZCwgYW5kIHRoZSByZXN0IHdpbGwgc2ltcGx5IGJlICdwbGFpbicuXG5cdFx0XHRzdHJpbmcgPSBzdHJpbmdSZXBsYWNlQWxsKHN0cmluZywgc3R5bGVyLmNsb3NlLCBzdHlsZXIub3Blbik7XG5cblx0XHRcdHN0eWxlciA9IHN0eWxlci5wYXJlbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ly8gV2UgY2FuIG1vdmUgYm90aCBuZXh0IGFjdGlvbnMgb3V0IG9mIGxvb3AsIGJlY2F1c2UgcmVtYWluaW5nIGFjdGlvbnMgaW4gbG9vcCB3b24ndCBoYXZlXG5cdC8vIGFueS92aXNpYmxlIGVmZmVjdCBvbiBwYXJ0cyB3ZSBhZGQgaGVyZS4gQ2xvc2UgdGhlIHN0eWxpbmcgYmVmb3JlIGEgbGluZWJyZWFrIGFuZCByZW9wZW5cblx0Ly8gYWZ0ZXIgbmV4dCBsaW5lIHRvIGZpeCBhIGJsZWVkIGlzc3VlIG9uIG1hY09TOiBodHRwczovL2dpdGh1Yi5jb20vY2hhbGsvY2hhbGsvcHVsbC85MlxuXHRjb25zdCBsZkluZGV4ID0gc3RyaW5nLmluZGV4T2YoJ1xcbicpO1xuXHRpZiAobGZJbmRleCAhPT0gLTEpIHtcblx0XHRzdHJpbmcgPSBzdHJpbmdFbmNhc2VDUkxGV2l0aEZpcnN0SW5kZXgoc3RyaW5nLCBjbG9zZUFsbCwgb3BlbkFsbCwgbGZJbmRleCk7XG5cdH1cblxuXHRyZXR1cm4gb3BlbkFsbCArIHN0cmluZyArIGNsb3NlQWxsO1xufTtcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoY3JlYXRlQ2hhbGsucHJvdG90eXBlLCBzdHlsZXMpO1xuXG5jb25zdCBjaGFsayA9IGNyZWF0ZUNoYWxrKCk7XG5leHBvcnQgY29uc3QgY2hhbGtTdGRlcnIgPSBjcmVhdGVDaGFsayh7bGV2ZWw6IHN0ZGVyckNvbG9yID8gc3RkZXJyQ29sb3IubGV2ZWwgOiAwfSk7XG5cbmV4cG9ydCB7XG5cdG1vZGlmaWVyTmFtZXMsXG5cdGZvcmVncm91bmRDb2xvck5hbWVzLFxuXHRiYWNrZ3JvdW5kQ29sb3JOYW1lcyxcblx0Y29sb3JOYW1lcyxcblxuXHQvLyBUT0RPOiBSZW1vdmUgdGhlc2UgYWxpYXNlcyBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uXG5cdG1vZGlmaWVyTmFtZXMgYXMgbW9kaWZpZXJzLFxuXHRmb3JlZ3JvdW5kQ29sb3JOYW1lcyBhcyBmb3JlZ3JvdW5kQ29sb3JzLFxuXHRiYWNrZ3JvdW5kQ29sb3JOYW1lcyBhcyBiYWNrZ3JvdW5kQ29sb3JzLFxuXHRjb2xvck5hbWVzIGFzIGNvbG9ycyxcbn0gZnJvbSAnLi92ZW5kb3IvYW5zaS1zdHlsZXMvaW5kZXguanMnO1xuXG5leHBvcnQge1xuXHRzdGRvdXRDb2xvciBhcyBzdXBwb3J0c0NvbG9yLFxuXHRzdGRlcnJDb2xvciBhcyBzdXBwb3J0c0NvbG9yU3RkZXJyLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgY2hhbGs7XG4iLCAiZXhwb3J0IHR5cGUgTnVsbGFibGU8VD4gPSBUIHwgbnVsbCB8IHVuZGVmaW5lZDtcbmV4cG9ydCBmdW5jdGlvbiBub3RFbXB0eShzdHI6IE51bGxhYmxlPHN0cmluZz4pOiBzdHIgaXMgc3RyaW5nIHtcbiAgcmV0dXJuIHR5cGVvZiBzdHIgPT09ICdzdHJpbmcnID8gc3RyLnRyaW0oKS5sZW5ndGggPiAwIDogZmFsc2U7XG59XG4iLCAiaW1wb3J0IHsgZXhlY1N5bmMgfSBmcm9tICdub2RlOmNoaWxkX3Byb2Nlc3MnO1xuaW1wb3J0IHsgYWNjZXNzU3luYywgcmVhZEZpbGVTeW5jIH0gZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSAnbm9kZTp1cmwnO1xuXG5pbXBvcnQgdHlwZSB7IENvbnRleHQgfSBmcm9tICdAYWN0aW9ucy9naXRodWIvbGliL2NvbnRleHQuanMnO1xuaW1wb3J0IHR5cGUgeyBQYWNrYWdlSnNvbiB9IGZyb20gJ3R5cGVzLXBhY2thZ2UtanNvbic7XG5cbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IHsgdW5pY29kZVdvcmRNYXRjaCB9IGZyb20gJy4vdW5pY29kZS13b3JkLW1hdGNoLmpzJztcbmltcG9ydCB7IG5vdEVtcHR5LCBOdWxsYWJsZSB9IGZyb20gJy4vdXRpbC5qcyc7XG5cbmV4cG9ydCBjb25zdCBfX2ZpbGVuYW1lID0gZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS51cmwpO1xuZXhwb3J0IGNvbnN0IF9fZGlybmFtZSA9IHBhdGguZGlybmFtZShfX2ZpbGVuYW1lKTtcbi8qKlxuICogUmV0dXJucyB0aGUgaW5wdXQgdmFsdWUgaWYgaXQgaXMgbm90IGVtcHR5LCBvdGhlcndpc2UgcmV0dXJucyB1bmRlZmluZWQuXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgaW5wdXQgdmFsdWUgdG8gY2hlY2suXG4gKiBAcmV0dXJucyBUaGUgaW5wdXQgdmFsdWUgaWYgaXQgaXMgbm90IGVtcHR5LCBvdGhlcndpc2UgdW5kZWZpbmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5kZWZpbmVkT25FbXB0eSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKCF2YWx1ZSB8fCB2YWx1ZSA9PT0gJycpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBiYXNlbmFtZSBvZiB0aGUgZ2l2ZW4gcGF0aC5cbiAqIEBwYXJhbSBwYXRoU3RyIC0gVGhlIHBhdGggdG8gZXh0cmFjdCB0aGUgYmFzZW5hbWUgZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBiYXNlbmFtZSBvZiB0aGUgcGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJhc2VuYW1lKHBhdGhTdHI6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICghcGF0aFN0cikgcmV0dXJuIHVuZGVmaW5lZDtcbiAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soJ2Jhc2VuYW1lJyk7XG4gIGNvbnN0IHJlc3VsdCA9IHBhdGguYmFzZW5hbWUocGF0aFN0cik7XG4gIGxvZy5kZWJ1ZyhgQmFzZW5hbWUgcGFzc2VkICR7cGF0aFN0cn0gYW5kIHJldHVybnMgJHtyZXN1bHR9YCk7XG4gIHJldHVybiByZXN1bHQ7XG59XG4vKipcbiAqIFJlbW92ZXMgdGhlIFwicmVmcy9oZWFkcy9cIiBvciBcInJlZnMvdGFncy9cIiBwcmVmaXggZnJvbSB0aGUgZ2l2ZW4gcGF0aC5cbiAqXG4gKiBAcGFyYW0gcGF0aFN0ciAtIFRoZSBwYXRoIHRvIHJlbW92ZSB0aGUgcHJlZml4IGZyb21cbiAqIEByZXR1cm5zIFRoZSBwYXRoIHdpdGhvdXQgdGhlIHByZWZpeCwgb3IgbnVsbCBpZiBwYXRoIGlzIGVtcHR5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJpcFJlZnMocGF0aFN0cjogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gIGlmICghcGF0aFN0cikgcmV0dXJuIG51bGw7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKCdzdHJpcFJlZnMnKTtcbiAgY29uc3QgcmVzdWx0ID0gcGF0aFN0ci5yZXBsYWNlKCdyZWZzL2hlYWRzLycsICcnKS5yZXBsYWNlKCdyZWZzL3RhZ3MvJywgJycpO1xuICBsb2cuZGVidWcoYHN0cmlwUmVmcyBwYXNzZWQgJHtwYXRoU3RyfSBhbmQgcmV0dXJucyAke3Jlc3VsdH1gKTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyB0aGUgZ2l2ZW4gdGV4dCB0byB0aXRsZSBjYXNlLlxuICogQHBhcmFtIHRleHQgLSBUaGUgdGV4dCB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIHRleHQgY29udmVydGVkIHRvIHRpdGxlIGNhc2UuXG4gKiBAdGhyb3dzIHtUeXBlRXJyb3J9IElmIHRoZSBpbnB1dCBpcyBub3QgYSBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0aXRsZWNhc2UodGV4dDogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKCF0ZXh0KSByZXR1cm4gdW5kZWZpbmVkO1xuICBpZiAodHlwZW9mIHRleHQgIT09ICdzdHJpbmcnKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgSW52YWxpZCBhcmd1bWVudCB0eXBlIHByb3ZpZGVkIHRvIHRpdGxlY2FzZSgpOiAke3R5cGVvZiB0ZXh0fWApO1xuICB9XG4gIHJldHVybiB0ZXh0LnJlcGxhY2VBbGwodW5pY29kZVdvcmRNYXRjaCwgKHR4dCkgPT5cbiAgICB0eHRbMF0gPyB0eHRbMF0udG9VcHBlckNhc2UoKSArIHR4dC5zbGljZSgxKS50b0xvd2VyQ2FzZSgpIDogdHh0LFxuICApO1xufVxuXG4vKipcbiAqIFBhcnNlcyB0aGUgZ2l2ZW4gdGV4dCBhbmQgY29udmVydHMgaXQgdG8gdGl0bGUgY2FzZSwgcmVwbGFjaW5nIHVuZGVyc2NvcmVzIGFuZCBkYXNoZXMgd2l0aCBzcGFjZXMuXG4gKiBAcGFyYW0gdGV4dCAtIFRoZSB0ZXh0IHRvIHBhcnNlIGFuZCBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIHBhcnNlZCB0ZXh0IGNvbnZlcnRlZCB0byB0aXRsZSBjYXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJlZml4UGFyc2VyKHRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICghdGV4dCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgaWYgKHR5cGVvZiB0ZXh0ICE9PSAnc3RyaW5nJykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYEludmFsaWQgYXJndW1lbnQgdHlwZSBwcm92aWRlZCB0byBwcmVmaXhQYXJzZXIoKTogJHt0eXBlb2YgdGV4dH1gKTtcbiAgfVxuICByZXR1cm4gdGl0bGVjYXNlKHRleHQucmVwbGFjZSgvW18tXSsvLCAnICcpKTtcbn1cblxuLyoqXG4gKiBXcmFwcyB0aGUgZ2l2ZW4gdGV4dCBpbnRvIG11bHRpcGxlIGxpbmVzIHdpdGggYSBtYXhpbXVtIHdpZHRoIG9mIDgwIGNoYXJhY3RlcnMuXG4gKiBAcGFyYW0gdGV4dCAtIFRoZSB0ZXh0IHRvIHdyYXAuXG4gKiBAcGFyYW0gY29udGVudCAtIFRoZSBhcnJheSB0byBzdG9yZSB0aGUgd3JhcHBlZCBsaW5lcy5cbiAqIEBwYXJhbSBwcmVwZW5kIC0gVGhlIHN0cmluZyB0byBwcmVwZW5kIHRvIGVhY2ggd3JhcHBlZCBsaW5lLlxuICogQHJldHVybnMgVGhlIGFycmF5IG9mIHdyYXBwZWQgbGluZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3cmFwVGV4dCh0ZXh0OiBzdHJpbmcgfCB1bmRlZmluZWQsIGNvbnRlbnQ6IHN0cmluZ1tdLCBwcmVwZW5kID0gJycpOiBzdHJpbmdbXSB7XG4gIC8vIENvbnN0cmFpbiB0aGUgd2lkdGggb2YgdGhlIGRlc2NyaXB0aW9uXG4gIGlmICghdGV4dCkgcmV0dXJuIGNvbnRlbnQ7XG4gIGNvbnN0IHdpZHRoID0gODA7XG5cbiAgbGV0IGRlc2NyaXB0aW9uID0gdGV4dFxuICAgIC50cmltKClcbiAgICAucmVwbGFjZUFsbCgnXFxyXFxuJywgJ1xcbicpIC8vIENvbnZlcnQgQ1IgdG8gTEZcbiAgICAucmVwbGFjZUFsbCgvICsvZywgJyAnKSAvLyAgICBTcXVhc2ggY29uc2VjdXRpdmUgc3BhY2VzXG4gICAgLnJlcGxhY2VBbGwoJyBcXG4nLCAnXFxuJyk7IC8vICBTcXVhc2ggc3BhY2UgZm9sbG93ZWQgYnkgbmV3bGluZVxuXG4gIHdoaWxlIChkZXNjcmlwdGlvbikge1xuICAgIC8vIExvbmdlciB0aGFuIHdpZHRoPyBGaW5kIGEgc3BhY2UgdG8gYnJlYWsgYXBhcnRcbiAgICBsZXQgc2VnbWVudDogc3RyaW5nO1xuICAgIGlmIChkZXNjcmlwdGlvbi5sZW5ndGggPiB3aWR0aCkge1xuICAgICAgc2VnbWVudCA9IGRlc2NyaXB0aW9uLnNsaWNlKDAsIE1hdGgubWF4KDAsIHdpZHRoICsgMSkpO1xuICAgICAgd2hpbGUgKCFzZWdtZW50LmVuZHNXaXRoKCcgJykgJiYgIXNlZ21lbnQuZW5kc1dpdGgoJ1xcbicpICYmIHNlZ21lbnQpIHtcbiAgICAgICAgc2VnbWVudCA9IHNlZ21lbnQuc2xpY2UoMCwgTWF0aC5tYXgoMCwgc2VnbWVudC5sZW5ndGggLSAxKSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFRyaW1tZWQgdG9vIG11Y2g/XG4gICAgICBpZiAoc2VnbWVudC5sZW5ndGggPCB3aWR0aCAqIDAuNjcpIHtcbiAgICAgICAgc2VnbWVudCA9IGRlc2NyaXB0aW9uO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBzZWdtZW50ID0gZGVzY3JpcHRpb247XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgZm9yIG5ld2xpbmVcbiAgICBjb25zdCBuZXdsaW5lSW5kZXggPSBzZWdtZW50LmluZGV4T2YoJ1xcbicpO1xuICAgIGlmIChuZXdsaW5lSW5kZXggPj0gMCkge1xuICAgICAgc2VnbWVudCA9IHNlZ21lbnQuc2xpY2UoMCwgTWF0aC5tYXgoMCwgbmV3bGluZUluZGV4ICsgMSkpO1xuICAgIH1cbiAgICBjb250ZW50LnB1c2goYCR7cHJlcGVuZH0ke3NlZ21lbnR9YC50cmltRW5kKCkpO1xuICAgIC8vIFJlbWFpbmluZ1xuICAgIGRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24uc2xpY2Uoc2VnbWVudC5sZW5ndGgpO1xuICB9XG4gIHJldHVybiBjb250ZW50O1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSByZXBvc2l0b3J5IHdpdGggb3duZXIgYW5kIHJlcG8gcHJvcGVydGllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXBvIHtcbiAgb3duZXI6IHN0cmluZztcbiAgcmVwbzogc3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVhZEZpbGUoZmlsZW5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHJlYWRGaWxlU3luYyhmaWxlbmFtZSwgJ3V0ZjgnKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCByZWFkIGZpbGUgJHtmaWxlbmFtZX06ICR7ZXJyb3J9YCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcG9PYmpGcm9tUmVwb05hbWUoXG4gIHJlcG9zaXRvcnk6IE51bGxhYmxlPHN0cmluZz4sXG4gIGxvZzogTG9nVGFzayxcbiAgZnJvbT86IHN0cmluZyxcbik6IE51bGxhYmxlPFJlcG8+IHtcbiAgaWYgKG5vdEVtcHR5KHJlcG9zaXRvcnkpKSB7XG4gICAgY29uc3QgW293bmVyLCByZXBvXSA9IHJlcG9zaXRvcnkuc3BsaXQoJy8nKTtcbiAgICBpZiAob3duZXIgJiYgcmVwbykge1xuICAgICAgbG9nLmRlYnVnKGByZXBvT2JqRnJvbVJlcG9OYW1lIHVzaW5nICR7ZnJvbX0gYW5kIHJldHVybnMgJHtKU09OLnN0cmluZ2lmeSh7IG93bmVyLCByZXBvIH0pfWApO1xuICAgICAgcmV0dXJuIHsgb3duZXIsIHJlcG8gfTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbmV4cG9ydCBjb25zdCByZW1vdGVHaXRVcmxQYXR0ZXJuID0gL3VybCggKT89KCApPy4qZ2l0aHViXFwuY29tWy86XSg/PG93bmVyPi4qKVxcLyg/PHJlcG8+LiopXFwuZ2l0Lztcbi8qKlxuICogRmluZHMgdGhlIHJlcG9zaXRvcnkgaW5mb3JtYXRpb24gZnJvbSB0aGUgaW5wdXQsIGNvbnRleHQsIGVudmlyb25tZW50IHZhcmlhYmxlcywgb3IgZ2l0IGNvbmZpZ3VyYXRpb24uXG4gKiBAcGFyYW0gaW5wdXRSZXBvIC0gVGhlIGlucHV0IHJlcG9zaXRvcnkgc3RyaW5nLlxuICogQHBhcmFtIGNvbnRleHQgLSBUaGUgR2l0SHViIGNvbnRleHQgb2JqZWN0LlxuICogQHJldHVybnMgVGhlIHJlcG9zaXRvcnkgaW5mb3JtYXRpb24gKG93bmVyIGFuZCByZXBvKSBvciBudWxsIGlmIG5vdCBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcG9zaXRvcnlGaW5kZXIoXG4gIGlucHV0UmVwbzogTnVsbGFibGU8c3RyaW5nPixcbiAgY29udGV4dDogTnVsbGFibGU8Q29udGV4dD4sXG4pOiBSZXBvIHwgbnVsbCB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKCdyZXBvc2l0b3J5RmluZGVyJyk7XG4gIC8qKlxuICAgKiBBdHRlbXB0IHRvIGdldCBnaXQgdXNlciBhbmQgcmVwbyBmcm9tIGlucHV0XG4gICAqL1xuICBjb25zdCByZXBvT2JqID0gcmVwb09iakZyb21SZXBvTmFtZShpbnB1dFJlcG8sIGxvZywgJ2lucHV0UmVwbycpO1xuXG4gIGlmIChyZXBvT2JqKSB7XG4gICAgcmV0dXJuIHJlcG9PYmo7XG4gIH1cblxuICAvKipcbiAgICogQXR0ZW1wdCB0byBnZXQgZ2l0IHVzZXIgYW5kIHJlcG8gZnJvbSBHaXRIdWIgY29udGV4dCxcbiAgICogd2hpY2ggaW5jbHVkZXMgY2hlY2tpbmcgZm9yIEdJVEhVQl9SRVBPU0lUT1JZIGVudmlyb25tZW50IHZhcmlhYmxlXG4gICAqL1xuICBpZiAoY29udGV4dCkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSB7IC4uLmNvbnRleHQucmVwbyB9O1xuICAgICAgbG9nLmRlYnVnKGByZXBvc2l0b3J5RmluZGVyIHVzaW5nIEdpdEh1YiBjb250ZXh0IGFuZCByZXR1cm5zICR7SlNPTi5zdHJpbmdpZnkocmVzdWx0KX1gKTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGxvZy5kZWJ1ZyhgcmVwb3NpdG9yeUZpbmRlciB1c2luZyBHaXRIdWIgY29udGV4dCBnaXZlcyBlcnJvciAke0pTT04uc3RyaW5naWZ5KGVycm9yKX1gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQXR0ZW1wdCB0byBnZXQgZ2l0IHVzZXIgYW5kIHJlcG8gZnJvbSAuZ2l0L2NvbmZpZ1xuICAgKi9cbiAgdHJ5IHtcbiAgICBjb25zdCBmaWxlQ29udGVudCA9IHJlYWRGaWxlKCcuZ2l0L2NvbmZpZycpO1xuICAgIGxvZy5kZWJ1ZyhgbG9hZGluZyAuZ2l0L2NvbmZpZzpcXG4qKipcXG4ke2ZpbGVDb250ZW50fVxcbioqKmApO1xuICAgIGNvbnN0IHJlc3VsdHMgPSByZW1vdGVHaXRVcmxQYXR0ZXJuLmV4ZWMoZmlsZUNvbnRlbnQpO1xuICAgIGlmIChyZXN1bHRzPy5ncm91cHM/Lm93bmVyICYmIHJlc3VsdHM/Lmdyb3Vwcz8ucmVwbykge1xuICAgICAgbG9nLmRlYnVnKFxuICAgICAgICBgcmVwb3NpdG9yeUZpbmRlciB1c2luZyAnLmdpdC9jb25maWcnIGFuZCByZXR1cm5zICR7SlNPTi5zdHJpbmdpZnkocmVzdWx0cy5ncm91cHMpfWAsXG4gICAgICApO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3duZXI6IHJlc3VsdHMuZ3JvdXBzLm93bmVyLFxuICAgICAgICByZXBvOiByZXN1bHRzLmdyb3Vwcy5yZXBvLFxuICAgICAgfTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgLy8gY2FuJ3QgZmluZCBpdFxuICAgIGxvZy5lcnJvcihgQ291bGRuJ3QgcmV0cmlldmUgb3duZXIgb3IgcmVwbyBpbiAuZ2l0L2NvbmZpZyBmaWxlOiAke2Vycm9yfWApO1xuICB9XG4gIHRocm93IG5ldyBFcnJvcignTm8gb3duZXIgb3IgcmVwbyBmb3VuZCcpO1xufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGRlZmF1bHQgYnJhbmNoIG9mIHRoZSBnaXQgcmVwb3NpdG9yeS5cbiAqIEByZXR1cm5zIFRoZSBkZWZhdWx0IGJyYW5jaC5cbiAqL1xuLyoqXG4gKiBHZXRzIHRoZSBkZWZhdWx0IGJyYW5jaCBmb3IgdGhlIEdpdCByZXBvc2l0b3J5LlxuICpcbiAqIEByZXR1cm5zIFRoZSBuYW1lIG9mIHRoZSBkZWZhdWx0IGJyYW5jaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRHaXRCcmFuY2goKTogc3RyaW5nIHtcbiAgbGV0IHJlc3VsdDogQnVmZmVyIHwgdW5kZWZpbmVkO1xuICB0cnkge1xuICAgIC8vIFJ1biBnaXQgY29tbWFuZCB0byBnZXQgZGVmYXVsdCBicmFuY2hcbiAgICByZXN1bHQgPSBleGVjU3luYygnZ2l0IHN5bWJvbGljLXJlZiBIRUFEIHwgc2VkIHNAXnJlZnMvaGVhZHMvQEAnKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAvLyBJZiBjb21tYW5kIGZhaWxzLCB0cnkgYWx0ZXJuYXRpdmUgZm9yIE1hY09TXG4gICAgaWYgKGVycm9yKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXN1bHQgPSBleGVjU3luYyhcbiAgICAgICAgICBcImdpdCByZW1vdGUgc2V0LWhlYWQgb3JpZ2luIC1hO2dpdCByZW1vdGUgc2hvdyBvcmlnaW4gfCBoZWFkIDUwIHNlZCAtbiAncy9eLipkZWZhdWx0IGJyYW5jaCBcXFxcKC4qXFxcXCkvXFxcXDEvcCdcIixcbiAgICAgICAgKTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICByZXN1bHQgPSBleGVjU3luYyhcbiAgICAgICAgICBcImdpdCByZW1vdGUgc2V0LWhlYWQgb3JpZ2luIC1hO2dpdCByZW1vdGUgc2hvdyBvcmlnaW4gfCBzZWQgLW4gJ3MvXnMqSEVBRCBicmFuY2g6IFxcXFwoLipcXFxcKS9cXFxcMS9wJ1wiLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzdWx0Py50b1N0cmluZygpLnRyaW0oKSA/PyAnJztcbn1cblxuLyoqXG4gKiBGb3JtYXRzIHRoZSBnaXZlbiB2YWx1ZSBhcyBhIGNvbHVtbiBoZWFkZXIuXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gZm9ybWF0LlxuICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCBjb2x1bW4gaGVhZGVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29sdW1uSGVhZGVyKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoIXZhbHVlKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG4gIGxldCB0ZXh0OiBzdHJpbmcgPSB2YWx1ZS5yZXBsYWNlQWxsKC9cXCpcXCooLio/KVxcKlxcKi9nLCAnJDEnKTtcblxuICAvLyBSZW1vdmUgaXRhbGljIGZvcm1hdHRpbmc6ICppdGFsaWMqXG4gIHRleHQgPSB0ZXh0LnJlcGxhY2VBbGwoL1xcKiguKj8pXFwqL2csICckMScpO1xuXG4gIC8vIFJlbW92ZSBzdHJpa2V0aHJvdWdoIGZvcm1hdHRpbmc6IH5+c3RyaWtldGhyb3VnaH5+XG4gIHRleHQgPSB0ZXh0LnJlcGxhY2VBbGwoL35+KC4qPyl+fi9nLCAnJDEnKTtcblxuICBjb25zdCBub3JtYWxpc2VkSGVhZGVyID0gdGl0bGVjYXNlKHRleHQudHJpbSgpKTtcbiAgaWYgKG5vcm1hbGlzZWRIZWFkZXIpIHtcbiAgICByZXR1cm4gYCR7bm9ybWFsaXNlZEhlYWRlcn1gO1xuICB9XG4gIHJldHVybiAnJztcbn1cbi8qKlxuICogRm9ybWF0cyB0aGUgZ2l2ZW4gdmFsdWUgYXMgYSByb3cgaGVhZGVyIGluIEhUTUwuXG4gKlxuICogUmVtb3ZlcyBmb3JtYXR0aW5nIGZyb20gdGhlIHN0cmluZyBhbmQgY29udmVydHMgaXQgdG8gY29kZSBzdHlsZS5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgc3RyaW5nIHRvIGZvcm1hdCBhcyBhIGhlYWRlclxuICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCByb3cgaGVhZGVyIHN0cmluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gcm93SGVhZGVyKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoIXZhbHVlKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgbGV0IHRleHQgPSB2YWx1ZTtcblxuICAvLyBSZW1vdmUgYm9sZCBmb3JtYXR0aW5nXG4gIHRleHQgPSB0ZXh0LnJlcGxhY2VBbGwoL1xcKlxcKiguKj8pXFwqXFwqL2csICckMScpO1xuXG4gIC8vIFJlbW92ZSBpdGFsaWMgZm9ybWF0dGluZzogKml0YWxpYypcbiAgdGV4dCA9IHRleHQucmVwbGFjZUFsbCgvXFwqKC4qPylcXCovZywgJyQxJyk7XG5cbiAgLy8gUmVtb3ZlIHN0cmlrZXRocm91Z2ggZm9ybWF0dGluZzogfn5zdHJpa2V0aHJvdWdofn5cbiAgdGV4dCA9IHRleHQucmVwbGFjZUFsbCgvfn4oLio/KX5+L2csICckMScpO1xuXG4gIC8vIE5vcm1hbGl6ZSBzcGFjaW5nXG4gIHRleHQgPSB0ZXh0LnRyaW0oKTtcblxuICAvLyBBZGQgY29kZSBmb3JtYXR0aW5nXG4gIHJldHVybiBgPGNvZGU+JHt0ZXh0fTwvY29kZT5gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q3VycmVudFZlcnNpb25TdHJpbmcoaW5wdXRzOiBJbnB1dHMpOiBzdHJpbmcge1xuICBsZXQgdmVyc2lvblN0cmluZyA9ICcnO1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzaygnZ2V0Q3VycmVudFZlcnNpb25TdHJpbmcnKTtcbiAgaWYgKGlucHV0cy5jb25maWcuZ2V0KCd2ZXJzaW9uaW5nOmVuYWJsZWQnKSkge1xuICAgIGxvZy5kZWJ1ZygndmVyc2lvbiBzdHJpbmcgaW4gZ2VuZXJhdGVkIGV4YW1wbGUgaXMgZW5hYmxlZCcpO1xuICAgIGNvbnN0IG9SaWRlID0gaW5wdXRzLmNvbmZpZy5nZXQoJ3ZlcnNpb25pbmc6b3ZlcnJpZGUnKSBhcyBzdHJpbmc7XG4gICAgbGV0IHBhY2thZ2VWZXJzaW9uID0gcHJvY2Vzcy5lbnYubnBtX3BhY2thZ2VfdmVyc2lvbjtcbiAgICBsb2cuZGVidWcoYHZlcnNpb24gc3RyaW5nIGluIGVudjpucG1fcGFja2FnZV92ZXJzaW9uIGlzICR7cGFja2FnZVZlcnNpb24gPz8gJ25vdCBmb3VuZCd9YCk7XG4gICAgaWYgKCFwYWNrYWdlVmVyc2lvbikge1xuICAgICAgbG9nLmRlYnVnKCd2ZXJzaW9uIHN0cmluZyBpbiBlbnY6bnBtX3BhY2thZ2VfdmVyc2lvbiBpcyBub3QgZm91bmQsIHRyeWluZyB0byB1c2UgZ2l0Jyk7XG4gICAgICB0cnkge1xuICAgICAgICBhY2Nlc3NTeW5jKCdwYWNrYWdlLmpzb24nKTtcbiAgICAgICAgY29uc3QgcGFja2FnZURhdGE6IFBhcnRpYWw8UGFja2FnZUpzb24+ID0gSlNPTi5wYXJzZShyZWFkRmlsZVN5bmMoJ3BhY2thZ2UuanNvbicsICd1dGY4JykpO1xuICAgICAgICBwYWNrYWdlVmVyc2lvbiA9IHBhY2thZ2VEYXRhLnZlcnNpb247XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBsb2cuZGVidWcoYHBhY2thZ2UuanNvbiBub3QgZm91bmQuICR7ZXJyb3J9YCk7XG4gICAgICB9XG4gICAgICBsb2cuZGVidWcoYHZlcnNpb24gc3RyaW5nIGluIHBhY2thZ2UuanNvbjp2ZXJzaW9uIGlzICR7cGFja2FnZVZlcnNpb24gPz8gJ25vdCBmb3VuZCd9YCk7XG4gICAgfVxuXG4gICAgdmVyc2lvblN0cmluZyA9IG9SaWRlICYmIG9SaWRlLmxlbmd0aCA+IDAgPyBvUmlkZSA6IHBhY2thZ2VWZXJzaW9uID8/ICcwLjAuMCc7XG5cbiAgICBpZiAoXG4gICAgICB2ZXJzaW9uU3RyaW5nICYmXG4gICAgICAhdmVyc2lvblN0cmluZy5zdGFydHNXaXRoKGlucHV0cy5jb25maWcuZ2V0KCd2ZXJzaW9uaW5nOnByZWZpeCcpIGFzIHN0cmluZylcbiAgICApIHtcbiAgICAgIHZlcnNpb25TdHJpbmcgPSBgJHtpbnB1dHMuY29uZmlnLmdldCgndmVyc2lvbmluZzpwcmVmaXgnKSBhcyBzdHJpbmd9JHt2ZXJzaW9uU3RyaW5nfWA7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHZlcnNpb25TdHJpbmcgPSBpbnB1dHMuY29uZmlnLmdldCgndmVyc2lvbmluZzpicmFuY2gnKSBhcyBzdHJpbmc7XG4gIH1cbiAgbG9nLmRlYnVnKGB2ZXJzaW9uIHRvIHVzZSBpbiBnZW5lcmF0ZWQgZXhhbXBsZSBpcyAke3ZlcnNpb25TdHJpbmd9YCk7XG4gIHJldHVybiB2ZXJzaW9uU3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5kZXhPZlJlZ2V4KHN0cjogc3RyaW5nLCBwcm92aWRlZFJlZ2V4OiBSZWdFeHApOiBudW1iZXIge1xuICBjb25zdCByZWdleCA9IHByb3ZpZGVkUmVnZXguZ2xvYmFsXG4gICAgPyBwcm92aWRlZFJlZ2V4XG4gICAgOiBuZXcgUmVnRXhwKHByb3ZpZGVkUmVnZXguc291cmNlLCBgJHtwcm92aWRlZFJlZ2V4LmZsYWdzfWdgKTtcbiAgbGV0IGluZGV4ID0gLTE7XG4gIGxldCBtYXRjaDogUmVnRXhwRXhlY0FycmF5IHwgbnVsbCA9IHJlZ2V4LmV4ZWMoc3RyKTtcbiAgd2hpbGUgKG1hdGNoKSB7XG4gICAgaW5kZXggPSBtYXRjaC5pbmRleDtcbiAgICBtYXRjaCA9IHJlZ2V4LmV4ZWMoc3RyKTtcbiAgfVxuICByZXR1cm4gaW5kZXg7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsYXN0SW5kZXhPZlJlZ2V4KHN0cjogc3RyaW5nLCBwcm92aWRlZFJlZ2V4OiBSZWdFeHApOiBudW1iZXIge1xuICBjb25zdCByZWdleCA9IHByb3ZpZGVkUmVnZXguZ2xvYmFsXG4gICAgPyBwcm92aWRlZFJlZ2V4XG4gICAgOiBuZXcgUmVnRXhwKHByb3ZpZGVkUmVnZXguc291cmNlLCBgJHtwcm92aWRlZFJlZ2V4LmZsYWdzfWdgKTtcbiAgbGV0IGluZGV4ID0gLTE7XG4gIGxldCBtYXRjaDogUmVnRXhwRXhlY0FycmF5IHwgbnVsbCA9IHJlZ2V4LmV4ZWMoc3RyKTtcbiAgd2hpbGUgKG1hdGNoKSB7XG4gICAgaW5kZXggPSBtYXRjaC5pbmRleCArIG1hdGNoWzBdLmxlbmd0aDtcbiAgICBtYXRjaCA9IHJlZ2V4LmV4ZWMoc3RyKTtcbiAgfVxuICByZXR1cm4gaW5kZXg7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdCh2YWx1ZTogYW55KTogdmFsdWUgaXMgb2JqZWN0IHtcbiAgY29uc3QgdHlwZSA9IHR5cGVvZiB2YWx1ZTtcbiAgcmV0dXJuIHR5cGUgPT09ICdvYmplY3QnICYmICEhdmFsdWU7XG59XG4iLCAiLy9cbi8vIFJlZ2V4IGJlbG93IG1hdGNoZXMgYW55IFVuaWNvZGUgd29yZCBhbmQgbnVtYmVyIGNvbXBhdGlibGUgd2l0aCBFUzUuIEluIEVTMjAxOCB0aGUgc2FtZSByZXN1bHRcbi8vIGNhbiBiZSBhY2hpZXZlZCBieSB1c2luZyAvWzAtOVxccHtMfV1cXFMqL2d1IGFuZCBhbHNvIGtub3duIGFzIFVuaWNvZGUgUHJvcGVydHkgRXNjYXBlc1xuLy8gKGh0dHBzOi8vMmFsaXR5LmNvbS8yMDE3LzA3L3JlZ2V4cC11bmljb2RlLXByb3BlcnR5LWVzY2FwZXMuaHRtbCkuIFNpbmNlIHRoZXJlIGlzIG5vXG4vLyB0cmFuc3BpbGF0aW9uIG9mIHRoaXMgZnVuY3Rpb25hbGl0eSBkb3duIHRvIEVTNSB3aXRob3V0IGV4dGVybmFsIHRvb2wsIHRoZSBvbmx5IHNvbHV0aW9uIGlzXG4vLyB0byB1c2UgYWxyZWFkeSB0cmFuc3BpbGVkIGZvcm0uIEV4YW1wbGUgY2FuIGJlIGZvdW5kIGhlcmUgLVxuLy8gaHR0cHM6Ly9tb3RoZXJlZmYuaW4vcmVnZXhwdSNpbnB1dD12YXIrcmVnZXgrJTNEKyUyRiU1QjAtOSU1Q3AlN0JMJTdEJTVEJTVDUyolMkZndSUzQiUwQSUwQSZ1bmljb2RlUHJvcGVydHlFc2NhcGU9MVxuLy9cblxuZXhwb3J0IGNvbnN0IHVuaWNvZGVXb3JkTWF0Y2ggPVxuICAvLyB0cnVuay1pZ25vcmUoZXNsaW50L3VuaWNvcm4vYmV0dGVyLXJlZ2V4LGVzbGludC91bmljb3JuL25vLWhleC1lc2NhcGUsZXNsaW50L29wdGltaXplLXJlZ2V4L29wdGltaXplLXJlZ2V4KVxuICAvKD86W1xcZEEtWmEtelxcdTAwQUFcXHUwMEI1XFx1MDBCQVxcdTAwQzAtXFx1MDBENlxcdTAwRDgtXFx1MDBGNlxcdTAwRjgtXFx1MDJDMVxcdTAyQzYtXFx1MDJEMVxcdTAyRTAtXFx1MDJFNFxcdTAyRUNcXHUwMkVFXFx1MDM3MC1cXHUwMzc0XFx1MDM3NlxcdTAzNzdcXHUwMzdBLVxcdTAzN0RcXHUwMzdGXFx1MDM4NlxcdTAzODgtXFx1MDM4QVxcdTAzOENcXHUwMzhFLVxcdTAzQTFcXHUwM0EzLVxcdTAzRjVcXHUwM0Y3LVxcdTA0ODFcXHUwNDhBLVxcdTA1MkZcXHUwNTMxLVxcdTA1NTZcXHUwNTU5XFx1MDU2MC1cXHUwNTg4XFx1MDVEMC1cXHUwNUVBXFx1MDVFRi1cXHUwNUYyXFx1MDYyMC1cXHUwNjRBXFx1MDY2RVxcdTA2NkZcXHUwNjcxLVxcdTA2RDNcXHUwNkQ1XFx1MDZFNVxcdTA2RTZcXHUwNkVFXFx1MDZFRlxcdTA2RkEtXFx1MDZGQ1xcdTA2RkZcXHUwNzEwXFx1MDcxMi1cXHUwNzJGXFx1MDc0RC1cXHUwN0E1XFx1MDdCMVxcdTA3Q0EtXFx1MDdFQVxcdTA3RjRcXHUwN0Y1XFx1MDdGQVxcdTA4MDAtXFx1MDgxNVxcdTA4MUFcXHUwODI0XFx1MDgyOFxcdTA4NDAtXFx1MDg1OFxcdTA4NjAtXFx1MDg2QVxcdTA4NzAtXFx1MDg4N1xcdTA4ODktXFx1MDg4RVxcdTA4QTAtXFx1MDhDOVxcdTA5MDQtXFx1MDkzOVxcdTA5M0RcXHUwOTUwXFx1MDk1OC1cXHUwOTYxXFx1MDk3MS1cXHUwOTgwXFx1MDk4NS1cXHUwOThDXFx1MDk4RlxcdTA5OTBcXHUwOTkzLVxcdTA5QThcXHUwOUFBLVxcdTA5QjBcXHUwOUIyXFx1MDlCNi1cXHUwOUI5XFx1MDlCRFxcdTA5Q0VcXHUwOURDXFx1MDlERFxcdTA5REYtXFx1MDlFMVxcdTA5RjBcXHUwOUYxXFx1MDlGQ1xcdTBBMDUtXFx1MEEwQVxcdTBBMEZcXHUwQTEwXFx1MEExMy1cXHUwQTI4XFx1MEEyQS1cXHUwQTMwXFx1MEEzMlxcdTBBMzNcXHUwQTM1XFx1MEEzNlxcdTBBMzhcXHUwQTM5XFx1MEE1OS1cXHUwQTVDXFx1MEE1RVxcdTBBNzItXFx1MEE3NFxcdTBBODUtXFx1MEE4RFxcdTBBOEYtXFx1MEE5MVxcdTBBOTMtXFx1MEFBOFxcdTBBQUEtXFx1MEFCMFxcdTBBQjJcXHUwQUIzXFx1MEFCNS1cXHUwQUI5XFx1MEFCRFxcdTBBRDBcXHUwQUUwXFx1MEFFMVxcdTBBRjlcXHUwQjA1LVxcdTBCMENcXHUwQjBGXFx1MEIxMFxcdTBCMTMtXFx1MEIyOFxcdTBCMkEtXFx1MEIzMFxcdTBCMzJcXHUwQjMzXFx1MEIzNS1cXHUwQjM5XFx1MEIzRFxcdTBCNUNcXHUwQjVEXFx1MEI1Ri1cXHUwQjYxXFx1MEI3MVxcdTBCODNcXHUwQjg1LVxcdTBCOEFcXHUwQjhFLVxcdTBCOTBcXHUwQjkyLVxcdTBCOTVcXHUwQjk5XFx1MEI5QVxcdTBCOUNcXHUwQjlFXFx1MEI5RlxcdTBCQTNcXHUwQkE0XFx1MEJBOC1cXHUwQkFBXFx1MEJBRS1cXHUwQkI5XFx1MEJEMFxcdTBDMDUtXFx1MEMwQ1xcdTBDMEUtXFx1MEMxMFxcdTBDMTItXFx1MEMyOFxcdTBDMkEtXFx1MEMzOVxcdTBDM0RcXHUwQzU4LVxcdTBDNUFcXHUwQzVEXFx1MEM2MFxcdTBDNjFcXHUwQzgwXFx1MEM4NS1cXHUwQzhDXFx1MEM4RS1cXHUwQzkwXFx1MEM5Mi1cXHUwQ0E4XFx1MENBQS1cXHUwQ0IzXFx1MENCNS1cXHUwQ0I5XFx1MENCRFxcdTBDRERcXHUwQ0RFXFx1MENFMFxcdTBDRTFcXHUwQ0YxXFx1MENGMlxcdTBEMDQtXFx1MEQwQ1xcdTBEMEUtXFx1MEQxMFxcdTBEMTItXFx1MEQzQVxcdTBEM0RcXHUwRDRFXFx1MEQ1NC1cXHUwRDU2XFx1MEQ1Ri1cXHUwRDYxXFx1MEQ3QS1cXHUwRDdGXFx1MEQ4NS1cXHUwRDk2XFx1MEQ5QS1cXHUwREIxXFx1MERCMy1cXHUwREJCXFx1MERCRFxcdTBEQzAtXFx1MERDNlxcdTBFMDEtXFx1MEUzMFxcdTBFMzJcXHUwRTMzXFx1MEU0MC1cXHUwRTQ2XFx1MEU4MVxcdTBFODJcXHUwRTg0XFx1MEU4Ni1cXHUwRThBXFx1MEU4Qy1cXHUwRUEzXFx1MEVBNVxcdTBFQTctXFx1MEVCMFxcdTBFQjJcXHUwRUIzXFx1MEVCRFxcdTBFQzAtXFx1MEVDNFxcdTBFQzZcXHUwRURDLVxcdTBFREZcXHUwRjAwXFx1MEY0MC1cXHUwRjQ3XFx1MEY0OS1cXHUwRjZDXFx1MEY4OC1cXHUwRjhDXFx1MTAwMC1cXHUxMDJBXFx1MTAzRlxcdTEwNTAtXFx1MTA1NVxcdTEwNUEtXFx1MTA1RFxcdTEwNjFcXHUxMDY1XFx1MTA2NlxcdTEwNkUtXFx1MTA3MFxcdTEwNzUtXFx1MTA4MVxcdTEwOEVcXHUxMEEwLVxcdTEwQzVcXHUxMEM3XFx1MTBDRFxcdTEwRDAtXFx1MTBGQVxcdTEwRkMtXFx1MTI0OFxcdTEyNEEtXFx1MTI0RFxcdTEyNTAtXFx1MTI1NlxcdTEyNThcXHUxMjVBLVxcdTEyNURcXHUxMjYwLVxcdTEyODhcXHUxMjhBLVxcdTEyOERcXHUxMjkwLVxcdTEyQjBcXHUxMkIyLVxcdTEyQjVcXHUxMkI4LVxcdTEyQkVcXHUxMkMwXFx1MTJDMi1cXHUxMkM1XFx1MTJDOC1cXHUxMkQ2XFx1MTJEOC1cXHUxMzEwXFx1MTMxMi1cXHUxMzE1XFx1MTMxOC1cXHUxMzVBXFx1MTM4MC1cXHUxMzhGXFx1MTNBMC1cXHUxM0Y1XFx1MTNGOC1cXHUxM0ZEXFx1MTQwMS1cXHUxNjZDXFx1MTY2Ri1cXHUxNjdGXFx1MTY4MS1cXHUxNjlBXFx1MTZBMC1cXHUxNkVBXFx1MTZGMS1cXHUxNkY4XFx1MTcwMC1cXHUxNzExXFx1MTcxRi1cXHUxNzMxXFx1MTc0MC1cXHUxNzUxXFx1MTc2MC1cXHUxNzZDXFx1MTc2RS1cXHUxNzcwXFx1MTc4MC1cXHUxN0IzXFx1MTdEN1xcdTE3RENcXHUxODIwLVxcdTE4NzhcXHUxODgwLVxcdTE4ODRcXHUxODg3LVxcdTE4QThcXHUxOEFBXFx1MThCMC1cXHUxOEY1XFx1MTkwMC1cXHUxOTFFXFx1MTk1MC1cXHUxOTZEXFx1MTk3MC1cXHUxOTc0XFx1MTk4MC1cXHUxOUFCXFx1MTlCMC1cXHUxOUM5XFx1MUEwMC1cXHUxQTE2XFx1MUEyMC1cXHUxQTU0XFx1MUFBN1xcdTFCMDUtXFx1MUIzM1xcdTFCNDUtXFx1MUI0Q1xcdTFCODMtXFx1MUJBMFxcdTFCQUVcXHUxQkFGXFx1MUJCQS1cXHUxQkU1XFx1MUMwMC1cXHUxQzIzXFx1MUM0RC1cXHUxQzRGXFx1MUM1QS1cXHUxQzdEXFx1MUM4MC1cXHUxQzg4XFx1MUM5MC1cXHUxQ0JBXFx1MUNCRC1cXHUxQ0JGXFx1MUNFOS1cXHUxQ0VDXFx1MUNFRS1cXHUxQ0YzXFx1MUNGNVxcdTFDRjZcXHUxQ0ZBXFx1MUQwMC1cXHUxREJGXFx1MUUwMC1cXHUxRjE1XFx1MUYxOC1cXHUxRjFEXFx1MUYyMC1cXHUxRjQ1XFx1MUY0OC1cXHUxRjREXFx1MUY1MC1cXHUxRjU3XFx1MUY1OVxcdTFGNUJcXHUxRjVEXFx1MUY1Ri1cXHUxRjdEXFx1MUY4MC1cXHUxRkI0XFx1MUZCNi1cXHUxRkJDXFx1MUZCRVxcdTFGQzItXFx1MUZDNFxcdTFGQzYtXFx1MUZDQ1xcdTFGRDAtXFx1MUZEM1xcdTFGRDYtXFx1MUZEQlxcdTFGRTAtXFx1MUZFQ1xcdTFGRjItXFx1MUZGNFxcdTFGRjYtXFx1MUZGQ1xcdTIwNzFcXHUyMDdGXFx1MjA5MC1cXHUyMDlDXFx1MjEwMlxcdTIxMDdcXHUyMTBBLVxcdTIxMTNcXHUyMTE1XFx1MjExOS1cXHUyMTFEXFx1MjEyNFxcdTIxMjZcXHUyMTI4XFx1MjEyQS1cXHUyMTJEXFx1MjEyRi1cXHUyMTM5XFx1MjEzQy1cXHUyMTNGXFx1MjE0NS1cXHUyMTQ5XFx1MjE0RVxcdTIxODNcXHUyMTg0XFx1MkMwMC1cXHUyQ0U0XFx1MkNFQi1cXHUyQ0VFXFx1MkNGMlxcdTJDRjNcXHUyRDAwLVxcdTJEMjVcXHUyRDI3XFx1MkQyRFxcdTJEMzAtXFx1MkQ2N1xcdTJENkZcXHUyRDgwLVxcdTJEOTZcXHUyREEwLVxcdTJEQTZcXHUyREE4LVxcdTJEQUVcXHUyREIwLVxcdTJEQjZcXHUyREI4LVxcdTJEQkVcXHUyREMwLVxcdTJEQzZcXHUyREM4LVxcdTJEQ0VcXHUyREQwLVxcdTJERDZcXHUyREQ4LVxcdTJEREVcXHUyRTJGXFx1MzAwNVxcdTMwMDZcXHUzMDMxLVxcdTMwMzVcXHUzMDNCXFx1MzAzQ1xcdTMwNDEtXFx1MzA5NlxcdTMwOUQtXFx1MzA5RlxcdTMwQTEtXFx1MzBGQVxcdTMwRkMtXFx1MzBGRlxcdTMxMDUtXFx1MzEyRlxcdTMxMzEtXFx1MzE4RVxcdTMxQTAtXFx1MzFCRlxcdTMxRjAtXFx1MzFGRlxcdTM0MDAtXFx1NERCRlxcdTRFMDAtXFx1QTQ4Q1xcdUE0RDAtXFx1QTRGRFxcdUE1MDAtXFx1QTYwQ1xcdUE2MTAtXFx1QTYxRlxcdUE2MkFcXHVBNjJCXFx1QTY0MC1cXHVBNjZFXFx1QTY3Ri1cXHVBNjlEXFx1QTZBMC1cXHVBNkU1XFx1QTcxNy1cXHVBNzFGXFx1QTcyMi1cXHVBNzg4XFx1QTc4Qi1cXHVBN0NBXFx1QTdEMFxcdUE3RDFcXHVBN0QzXFx1QTdENS1cXHVBN0Q5XFx1QTdGMi1cXHVBODAxXFx1QTgwMy1cXHVBODA1XFx1QTgwNy1cXHVBODBBXFx1QTgwQy1cXHVBODIyXFx1QTg0MC1cXHVBODczXFx1QTg4Mi1cXHVBOEIzXFx1QThGMi1cXHVBOEY3XFx1QThGQlxcdUE4RkRcXHVBOEZFXFx1QTkwQS1cXHVBOTI1XFx1QTkzMC1cXHVBOTQ2XFx1QTk2MC1cXHVBOTdDXFx1QTk4NC1cXHVBOUIyXFx1QTlDRlxcdUE5RTAtXFx1QTlFNFxcdUE5RTYtXFx1QTlFRlxcdUE5RkEtXFx1QTlGRVxcdUFBMDAtXFx1QUEyOFxcdUFBNDAtXFx1QUE0MlxcdUFBNDQtXFx1QUE0QlxcdUFBNjAtXFx1QUE3NlxcdUFBN0FcXHVBQTdFLVxcdUFBQUZcXHVBQUIxXFx1QUFCNVxcdUFBQjZcXHVBQUI5LVxcdUFBQkRcXHVBQUMwXFx1QUFDMlxcdUFBREItXFx1QUFERFxcdUFBRTAtXFx1QUFFQVxcdUFBRjItXFx1QUFGNFxcdUFCMDEtXFx1QUIwNlxcdUFCMDktXFx1QUIwRVxcdUFCMTEtXFx1QUIxNlxcdUFCMjAtXFx1QUIyNlxcdUFCMjgtXFx1QUIyRVxcdUFCMzAtXFx1QUI1QVxcdUFCNUMtXFx1QUI2OVxcdUFCNzAtXFx1QUJFMlxcdUFDMDAtXFx1RDdBM1xcdUQ3QjAtXFx1RDdDNlxcdUQ3Q0ItXFx1RDdGQlxcdUY5MDAtXFx1RkE2RFxcdUZBNzAtXFx1RkFEOVxcdUZCMDAtXFx1RkIwNlxcdUZCMTMtXFx1RkIxN1xcdUZCMURcXHVGQjFGLVxcdUZCMjhcXHVGQjJBLVxcdUZCMzZcXHVGQjM4LVxcdUZCM0NcXHVGQjNFXFx1RkI0MFxcdUZCNDFcXHVGQjQzXFx1RkI0NFxcdUZCNDYtXFx1RkJCMVxcdUZCRDMtXFx1RkQzRFxcdUZENTAtXFx1RkQ4RlxcdUZEOTItXFx1RkRDN1xcdUZERjAtXFx1RkRGQlxcdUZFNzAtXFx1RkU3NFxcdUZFNzYtXFx1RkVGQ1xcdUZGMjEtXFx1RkYzQVxcdUZGNDEtXFx1RkY1QVxcdUZGNjYtXFx1RkZCRVxcdUZGQzItXFx1RkZDN1xcdUZGQ0EtXFx1RkZDRlxcdUZGRDItXFx1RkZEN1xcdUZGREEtXFx1RkZEQ118XFx1RDgwMFtcXHVEQzAwLVxcdURDMEJcXHVEQzBELVxcdURDMjZcXHVEQzI4LVxcdURDM0FcXHVEQzNDXFx1REMzRFxcdURDM0YtXFx1REM0RFxcdURDNTAtXFx1REM1RFxcdURDODAtXFx1RENGQVxcdURFODAtXFx1REU5Q1xcdURFQTAtXFx1REVEMFxcdURGMDAtXFx1REYxRlxcdURGMkQtXFx1REY0MFxcdURGNDItXFx1REY0OVxcdURGNTAtXFx1REY3NVxcdURGODAtXFx1REY5RFxcdURGQTAtXFx1REZDM1xcdURGQzgtXFx1REZDRl18XFx1RDgwMVtcXHVEQzAwLVxcdURDOURcXHVEQ0IwLVxcdURDRDNcXHVEQ0Q4LVxcdURDRkJcXHVERDAwLVxcdUREMjdcXHVERDMwLVxcdURENjNcXHVERDcwLVxcdUREN0FcXHVERDdDLVxcdUREOEFcXHVERDhDLVxcdUREOTJcXHVERDk0XFx1REQ5NVxcdUREOTctXFx1RERBMVxcdUREQTMtXFx1RERCMVxcdUREQjMtXFx1RERCOVxcdUREQkJcXHVEREJDXFx1REUwMC1cXHVERjM2XFx1REY0MC1cXHVERjU1XFx1REY2MC1cXHVERjY3XFx1REY4MC1cXHVERjg1XFx1REY4Ny1cXHVERkIwXFx1REZCMi1cXHVERkJBXXxcXHVEODAyW1xcdURDMDAtXFx1REMwNVxcdURDMDhcXHVEQzBBLVxcdURDMzVcXHVEQzM3XFx1REMzOFxcdURDM0NcXHVEQzNGLVxcdURDNTVcXHVEQzYwLVxcdURDNzZcXHVEQzgwLVxcdURDOUVcXHVEQ0UwLVxcdURDRjJcXHVEQ0Y0XFx1RENGNVxcdUREMDAtXFx1REQxNVxcdUREMjAtXFx1REQzOVxcdUREODAtXFx1RERCN1xcdUREQkVcXHVEREJGXFx1REUwMFxcdURFMTAtXFx1REUxM1xcdURFMTUtXFx1REUxN1xcdURFMTktXFx1REUzNVxcdURFNjAtXFx1REU3Q1xcdURFODAtXFx1REU5Q1xcdURFQzAtXFx1REVDN1xcdURFQzktXFx1REVFNFxcdURGMDAtXFx1REYzNVxcdURGNDAtXFx1REY1NVxcdURGNjAtXFx1REY3MlxcdURGODAtXFx1REY5MV18XFx1RDgwM1tcXHVEQzAwLVxcdURDNDhcXHVEQzgwLVxcdURDQjJcXHVEQ0MwLVxcdURDRjJcXHVERDAwLVxcdUREMjNcXHVERTgwLVxcdURFQTlcXHVERUIwXFx1REVCMVxcdURGMDAtXFx1REYxQ1xcdURGMjdcXHVERjMwLVxcdURGNDVcXHVERjcwLVxcdURGODFcXHVERkIwLVxcdURGQzRcXHVERkUwLVxcdURGRjZdfFxcdUQ4MDRbXFx1REMwMy1cXHVEQzM3XFx1REM3MVxcdURDNzJcXHVEQzc1XFx1REM4My1cXHVEQ0FGXFx1RENEMC1cXHVEQ0U4XFx1REQwMy1cXHVERDI2XFx1REQ0NFxcdURENDdcXHVERDUwLVxcdURENzJcXHVERDc2XFx1REQ4My1cXHVEREIyXFx1RERDMS1cXHVEREM0XFx1REREQVxcdURERENcXHVERTAwLVxcdURFMTFcXHVERTEzLVxcdURFMkJcXHVERTgwLVxcdURFODZcXHVERTg4XFx1REU4QS1cXHVERThEXFx1REU4Ri1cXHVERTlEXFx1REU5Ri1cXHVERUE4XFx1REVCMC1cXHVERURFXFx1REYwNS1cXHVERjBDXFx1REYwRlxcdURGMTBcXHVERjEzLVxcdURGMjhcXHVERjJBLVxcdURGMzBcXHVERjMyXFx1REYzM1xcdURGMzUtXFx1REYzOVxcdURGM0RcXHVERjUwXFx1REY1RC1cXHVERjYxXXxcXHVEODA1W1xcdURDMDAtXFx1REMzNFxcdURDNDctXFx1REM0QVxcdURDNUYtXFx1REM2MVxcdURDODAtXFx1RENBRlxcdURDQzRcXHVEQ0M1XFx1RENDN1xcdUREODAtXFx1RERBRVxcdURERDgtXFx1REREQlxcdURFMDAtXFx1REUyRlxcdURFNDRcXHVERTgwLVxcdURFQUFcXHVERUI4XFx1REYwMC1cXHVERjFBXFx1REY0MC1cXHVERjQ2XXxcXHVEODA2W1xcdURDMDAtXFx1REMyQlxcdURDQTAtXFx1RENERlxcdURDRkYtXFx1REQwNlxcdUREMDlcXHVERDBDLVxcdUREMTNcXHVERDE1XFx1REQxNlxcdUREMTgtXFx1REQyRlxcdUREM0ZcXHVERDQxXFx1RERBMC1cXHVEREE3XFx1RERBQS1cXHVEREQwXFx1RERFMVxcdURERTNcXHVERTAwXFx1REUwQi1cXHVERTMyXFx1REUzQVxcdURFNTBcXHVERTVDLVxcdURFODlcXHVERTlEXFx1REVCMC1cXHVERUY4XXxcXHVEODA3W1xcdURDMDAtXFx1REMwOFxcdURDMEEtXFx1REMyRVxcdURDNDBcXHVEQzcyLVxcdURDOEZcXHVERDAwLVxcdUREMDZcXHVERDA4XFx1REQwOVxcdUREMEItXFx1REQzMFxcdURENDZcXHVERDYwLVxcdURENjVcXHVERDY3XFx1REQ2OFxcdURENkEtXFx1REQ4OVxcdUREOThcXHVERUUwLVxcdURFRjJcXHVERkIwXXxcXHVEODA4W1xcdURDMDAtXFx1REY5OV18XFx1RDgwOVtcXHVEQzgwLVxcdURENDNdfFxcdUQ4MEJbXFx1REY5MC1cXHVERkYwXXxbXFx1RDgwQ1xcdUQ4MUMtXFx1RDgyMFxcdUQ4MjJcXHVEODQwLVxcdUQ4NjhcXHVEODZBLVxcdUQ4NkNcXHVEODZGLVxcdUQ4NzJcXHVEODc0LVxcdUQ4NzlcXHVEODgwLVxcdUQ4ODNdW1xcdURDMDAtXFx1REZGRl18XFx1RDgwRFtcXHVEQzAwLVxcdURDMkVdfFxcdUQ4MTFbXFx1REMwMC1cXHVERTQ2XXxcXHVEODFBW1xcdURDMDAtXFx1REUzOFxcdURFNDAtXFx1REU1RVxcdURFNzAtXFx1REVCRVxcdURFRDAtXFx1REVFRFxcdURGMDAtXFx1REYyRlxcdURGNDAtXFx1REY0M1xcdURGNjMtXFx1REY3N1xcdURGN0QtXFx1REY4Rl18XFx1RDgxQltcXHVERTQwLVxcdURFN0ZcXHVERjAwLVxcdURGNEFcXHVERjUwXFx1REY5My1cXHVERjlGXFx1REZFMFxcdURGRTFcXHVERkUzXXxcXHVEODIxW1xcdURDMDAtXFx1REZGN118XFx1RDgyM1tcXHVEQzAwLVxcdURDRDVcXHVERDAwLVxcdUREMDhdfFxcdUQ4MkJbXFx1REZGMC1cXHVERkYzXFx1REZGNS1cXHVERkZCXFx1REZGRFxcdURGRkVdfFxcdUQ4MkNbXFx1REMwMC1cXHVERDIyXFx1REQ1MC1cXHVERDUyXFx1REQ2NC1cXHVERDY3XFx1REQ3MC1cXHVERUZCXXxcXHVEODJGW1xcdURDMDAtXFx1REM2QVxcdURDNzAtXFx1REM3Q1xcdURDODAtXFx1REM4OFxcdURDOTAtXFx1REM5OV18XFx1RDgzNVtcXHVEQzAwLVxcdURDNTRcXHVEQzU2LVxcdURDOUNcXHVEQzlFXFx1REM5RlxcdURDQTJcXHVEQ0E1XFx1RENBNlxcdURDQTktXFx1RENBQ1xcdURDQUUtXFx1RENCOVxcdURDQkJcXHVEQ0JELVxcdURDQzNcXHVEQ0M1LVxcdUREMDVcXHVERDA3LVxcdUREMEFcXHVERDBELVxcdUREMTRcXHVERDE2LVxcdUREMUNcXHVERDFFLVxcdUREMzlcXHVERDNCLVxcdUREM0VcXHVERDQwLVxcdURENDRcXHVERDQ2XFx1REQ0QS1cXHVERDUwXFx1REQ1Mi1cXHVERUE1XFx1REVBOC1cXHVERUMwXFx1REVDMi1cXHVERURBXFx1REVEQy1cXHVERUZBXFx1REVGQy1cXHVERjE0XFx1REYxNi1cXHVERjM0XFx1REYzNi1cXHVERjRFXFx1REY1MC1cXHVERjZFXFx1REY3MC1cXHVERjg4XFx1REY4QS1cXHVERkE4XFx1REZBQS1cXHVERkMyXFx1REZDNC1cXHVERkNCXXxcXHVEODM3W1xcdURGMDAtXFx1REYxRV18XFx1RDgzOFtcXHVERDAwLVxcdUREMkNcXHVERDM3LVxcdUREM0RcXHVERDRFXFx1REU5MC1cXHVERUFEXFx1REVDMC1cXHVERUVCXXxcXHVEODM5W1xcdURGRTAtXFx1REZFNlxcdURGRTgtXFx1REZFQlxcdURGRURcXHVERkVFXFx1REZGMC1cXHVERkZFXXxcXHVEODNBW1xcdURDMDAtXFx1RENDNFxcdUREMDAtXFx1REQ0M1xcdURENEJdfFxcdUQ4M0JbXFx1REUwMC1cXHVERTAzXFx1REUwNS1cXHVERTFGXFx1REUyMVxcdURFMjJcXHVERTI0XFx1REUyN1xcdURFMjktXFx1REUzMlxcdURFMzQtXFx1REUzN1xcdURFMzlcXHVERTNCXFx1REU0MlxcdURFNDdcXHVERTQ5XFx1REU0QlxcdURFNEQtXFx1REU0RlxcdURFNTFcXHVERTUyXFx1REU1NFxcdURFNTdcXHVERTU5XFx1REU1QlxcdURFNURcXHVERTVGXFx1REU2MVxcdURFNjJcXHVERTY0XFx1REU2Ny1cXHVERTZBXFx1REU2Qy1cXHVERTcyXFx1REU3NC1cXHVERTc3XFx1REU3OS1cXHVERTdDXFx1REU3RVxcdURFODAtXFx1REU4OVxcdURFOEItXFx1REU5QlxcdURFQTEtXFx1REVBM1xcdURFQTUtXFx1REVBOVxcdURFQUItXFx1REVCQl18XFx1RDg2OVtcXHVEQzAwLVxcdURFREZcXHVERjAwLVxcdURGRkZdfFxcdUQ4NkRbXFx1REMwMC1cXHVERjM4XFx1REY0MC1cXHVERkZGXXxcXHVEODZFW1xcdURDMDAtXFx1REMxRFxcdURDMjAtXFx1REZGRl18XFx1RDg3M1tcXHVEQzAwLVxcdURFQTFcXHVERUIwLVxcdURGRkZdfFxcdUQ4N0FbXFx1REMwMC1cXHVERkUwXXxcXHVEODdFW1xcdURDMDAtXFx1REUxRF18XFx1RDg4NFtcXHVEQzAwLVxcdURGNEFdKVxcUyovZztcbiIsICIvKipcbiAqIFRoaXMgVHlwZVNjcmlwdCBjb2RlIGltcG9ydHMgdGhlIG5lY2Vzc2FyeSBtb2R1bGVzIGFuZCBkZWZpbmVzIGEgY2xhc3MgbmFtZWQgYFJlYWRtZUVkaXRvcmAuXG4gKiBUaGUgY2xhc3MgcmVwcmVzZW50cyBhbiBlZGl0b3IgZm9yIG1vZGlmeWluZyBhIFJFQURNRSBmaWxlLlxuICogSXQgaGFzIG1ldGhvZHMgdG8gdXBkYXRlIHNwZWNpZmljIHNlY3Rpb25zIHdpdGhpbiB0aGUgZmlsZSBhbmQgZHVtcCB0aGUgbW9kaWZpZWQgY29udGVudCBiYWNrIHRvIHRoZSBmaWxlLlxuICovXG5cbmltcG9ydCAqIGFzIGZzIGZyb20gJ25vZGU6ZnMnO1xuaW1wb3J0IHsgRU9MIH0gZnJvbSAnbm9kZTpvcyc7XG5cbmltcG9ydCAqIGFzIGNvcmUgZnJvbSAnQGFjdGlvbnMvY29yZSc7XG5cbmltcG9ydCB7IGluZGV4T2ZSZWdleCwgbGFzdEluZGV4T2ZSZWdleCB9IGZyb20gJy4vaGVscGVycy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IHsgZm9ybWF0TWFya2Rvd24gfSBmcm9tICcuL3ByZXR0aWVyLmpzJztcblxuLyoqXG4gKiBUaGUgZm9ybWF0IGZvciB0aGUgc3RhcnQgdG9rZW4gb2YgYSBzZWN0aW9uLlxuICovXG5cbmV4cG9ydCBjb25zdCBzdGFydFRva2VuRm9ybWF0ID0gJyhefFteYFxcXFxcXFxcXSk8IS0tXFxcXHMrc3RhcnRcXFxccyslc1xcXFxzKy0tPic7XG5cbi8qKlxuICogVGhlIGZvcm1hdCBmb3IgdGhlIGVuZCB0b2tlbiBvZiBhIHNlY3Rpb24uXG4gKi9cbmV4cG9ydCBjb25zdCBlbmRUb2tlbkZvcm1hdCA9ICcoXnxbXmBcXFxcXFxcXF0pPCEtLVxcXFxzK2VuZFxcXFxzKyVzXFxcXHMrLS0+JztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVhZG1lRWRpdG9yIHtcbiAgcHJpdmF0ZSBsb2cgPSBuZXcgTG9nVGFzaygnUmVhZG1lRWRpdG9yJyk7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHRoZSBSRUFETUUgZmlsZS5cbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsZVBhdGg6IHN0cmluZztcblxuICBwcml2YXRlIGZpbGVDb250ZW50OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgYFJlYWRtZUVkaXRvcmAuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBmaWxlUGF0aCAtIFRoZSBwYXRoIHRvIHRoZSBSRUFETUUgZmlsZS5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGZpbGVQYXRoOiBzdHJpbmcpIHtcbiAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7XG4gICAgdHJ5IHtcbiAgICAgIGZzLmFjY2Vzc1N5bmMoZmlsZVBhdGgpO1xuICAgICAgdGhpcy5maWxlQ29udGVudCA9IGZzLnJlYWRGaWxlU3luYyhmaWxlUGF0aCwgJ3V0ZjgnKTtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5HSVRIVUJfQUNUSU9OUykge1xuICAgICAgICBjb3JlLnNldE91dHB1dCgncmVhZG1lX2JlZm9yZScsIHRoaXMuZmlsZUNvbnRlbnQpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmxvZy5mYWlsKGBSZWFkbWUgYXQgJyR7ZmlsZVBhdGh9JyBkb2VzIG5vdCBleGlzdC5gKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBpbmRleGVzIG9mIHRoZSBzdGFydCBhbmQgZW5kIHRva2VucyBmb3IgYSBnaXZlbiBzZWN0aW9uLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdG9rZW4gLSBUaGUgc2VjdGlvbiB0b2tlbi5cbiAgICogQHJldHVybnMge251bWJlcltdfSAtIFRoZSBpbmRleGVzIG9mIHRoZSBzdGFydCBhbmQgZW5kIHRva2Vucy5cbiAgICovXG4gIGdldFRva2VuSW5kZXhlcyh0b2tlbjogc3RyaW5nLCBsb2dUYXNrPzogTG9nVGFzayk6IG51bWJlcltdIHtcbiAgICBjb25zdCBsb2cgPSBsb2dUYXNrID8/IG5ldyBMb2dUYXNrKCdnZXRUb2tlbkluZGV4ZXMnKTtcbiAgICBjb25zdCBzdGFydFJlZ0V4cCA9IG5ldyBSZWdFeHAoc3RhcnRUb2tlbkZvcm1hdC5yZXBsYWNlKCclcycsIHRva2VuKSk7XG4gICAgY29uc3Qgc3RvcFJlZ0V4cCA9IG5ldyBSZWdFeHAoZW5kVG9rZW5Gb3JtYXQucmVwbGFjZSgnJXMnLCB0b2tlbikpO1xuICAgIGNvbnN0IHN0YXJ0SW5kZXggPSBsYXN0SW5kZXhPZlJlZ2V4KHRoaXMuZmlsZUNvbnRlbnQsIHN0YXJ0UmVnRXhwKTtcbiAgICBpZiAoc3RhcnRJbmRleCA9PT0gLTEpIHtcbiAgICAgIGxvZy5kZWJ1ZyhgTm8gc3RhcnQgdG9rZW4gZm91bmQgZm9yIHNlY3Rpb24gJyR7dG9rZW59Jy4gU2tpcHBpbmdgKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBzdG9wSW5kZXggPSBpbmRleE9mUmVnZXgodGhpcy5maWxlQ29udGVudCwgc3RvcFJlZ0V4cCk7XG4gICAgaWYgKHN0b3BJbmRleCA9PT0gLTEpIHtcbiAgICAgIGxvZy5kZWJ1ZyhgTm8gc3RhcnQgb3IgZW5kIHRva2VuIGZvdW5kIGZvciBzZWN0aW9uICcke3Rva2VufScuIFNraXBwaW5nYCk7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgcmV0dXJuIFtzdGFydEluZGV4LCBzdG9wSW5kZXhdO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgYSBzcGVjaWZpYyBzZWN0aW9uIGluIHRoZSBSRUFETUUgZmlsZSB3aXRoIHRoZSBwcm92aWRlZCBjb250ZW50LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBzZWN0aW9uLlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHN0cmluZ1tdfSBwcm92aWRlZENvbnRlbnQgLSBUaGUgY29udGVudCB0byB1cGRhdGUgdGhlIHNlY3Rpb24gd2l0aC5cbiAgICogQHBhcmFtIHtib29sZWFufSBhZGROZXdsaW5lcyAtIFdoZXRoZXIgdG8gYWRkIG5ld2xpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIGNvbnRlbnQuXG4gICAqL1xuICB1cGRhdGVTZWN0aW9uKG5hbWU6IHN0cmluZywgcHJvdmlkZWRDb250ZW50OiBzdHJpbmcgfCBzdHJpbmdbXSwgYWRkTmV3bGluZXMgPSB0cnVlKTogdm9pZCB7XG4gICAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2sobmFtZSk7XG4gICAgY29uc3QgY29udGVudCA9IChcbiAgICAgIEFycmF5LmlzQXJyYXkocHJvdmlkZWRDb250ZW50KSA/IHByb3ZpZGVkQ29udGVudC5qb2luKEVPTCkgOiBwcm92aWRlZENvbnRlbnQgPz8gJydcbiAgICApLnRyaW0oKTtcbiAgICBsb2cuaW5mbyhgTG9va2luZyBmb3IgdGhlICR7bmFtZX0gdG9rZW4gaW4gJHt0aGlzLmZpbGVQYXRofWApO1xuXG4gICAgY29uc3QgW3N0YXJ0SW5kZXgsIHN0b3BJbmRleF0gPSB0aGlzLmdldFRva2VuSW5kZXhlcyhuYW1lLCBsb2cpO1xuICAgIGlmIChzdGFydEluZGV4ICYmIHN0b3BJbmRleCkge1xuICAgICAgY29uc3QgYmVmb3JlQ29udGVudCA9IHRoaXMuZmlsZUNvbnRlbnQuc2xpY2UoMCwgc3RhcnRJbmRleCk7XG4gICAgICBjb25zdCBhZnRlckNvbnRlbnQgPSB0aGlzLmZpbGVDb250ZW50LnNsaWNlKHN0b3BJbmRleCk7XG5cbiAgICAgIHRoaXMuZmlsZUNvbnRlbnQgPSBhZGROZXdsaW5lc1xuICAgICAgICA/IGAke2JlZm9yZUNvbnRlbnR9XFxuXFxuJHtjb250ZW50fVxcbiR7YWZ0ZXJDb250ZW50fWBcbiAgICAgICAgOiBgJHtiZWZvcmVDb250ZW50fSR7Y29udGVudH0ke2FmdGVyQ29udGVudH1gO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEdW1wcyB0aGUgbW9kaWZpZWQgY29udGVudCBiYWNrIHRvIHRoZSBSRUFETUUgZmlsZS5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59XG4gICAqL1xuICBhc3luYyBkdW1wVG9GaWxlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNvbnRlbnQgPSBhd2FpdCBmb3JtYXRNYXJrZG93bih0aGlzLmZpbGVDb250ZW50KTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuR0lUSFVCX0FDVElPTlMpIHtcbiAgICAgIGNvcmUuc2V0T3V0cHV0KCdyZWFkbWVfYWZ0ZXInLCBjb250ZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIGZzLnByb21pc2VzLndyaXRlRmlsZSh0aGlzLmZpbGVQYXRoLCBjb250ZW50LCAndXRmOCcpO1xuICB9XG59XG4iLCAiLyoqXG4gKiBUaGlzIFR5cGVTY3JpcHQgY29kZSBleHBvcnRzIHRocmVlIGZ1bmN0aW9uczogYGZvcm1hdFlhbWxgLCBgZm9ybWF0TWFya2Rvd25gLCBhbmQgYHdyYXBEZXNjcmlwdGlvbmAuXG4gKlxuICogLSBgZm9ybWF0WWFtbGAgdGFrZXMgYSBZQU1MIHN0cmluZyBhbmQgYW4gb3B0aW9uYWwgZmlsZXBhdGggYXMgcGFyYW1ldGVycyBhbmQgdXNlcyB0aGUgYHByZXR0aWVyYCBsaWJyYXJ5IHRvIGZvcm1hdCB0aGUgWUFNTCBjb2RlLiBJdCByZXR1cm5zIHRoZSBmb3JtYXR0ZWQgWUFNTCBzdHJpbmcuXG4gKiAtIGBmb3JtYXRNYXJrZG93bmAgdGFrZXMgYSBNYXJrZG93biBzdHJpbmcgYW5kIGFuIG9wdGlvbmFsIGZpbGVwYXRoIGFzIHBhcmFtZXRlcnMgYW5kIHVzZXMgdGhlIGBwcmV0dGllcmAgbGlicmFyeSB0byBmb3JtYXQgdGhlIE1hcmtkb3duIGNvZGUuIEl0IHJldHVybnMgdGhlIGZvcm1hdHRlZCBNYXJrZG93biBzdHJpbmcuXG4gKiAtIGB3cmFwRGVzY3JpcHRpb25gIHRha2VzIGEgc3RyaW5nIHZhbHVlLCBhbiBhcnJheSBvZiBjb250ZW50LCBhbmQgYW4gb3B0aW9uYWwgcHJlZml4IGFzIHBhcmFtZXRlcnMuIEl0IHdyYXBzIHRoZSBkZXNjcmlwdGlvbiB0ZXh0IHdpdGggdGhlIHNwZWNpZmllZCBwcmVmaXggYW5kIGZvcm1hdHMgaXQgdXNpbmcgYHByZXR0aWVyYC4gSXQgcmV0dXJucyB0aGUgdXBkYXRlZCBjb250ZW50IGFycmF5IHdpdGggdGhlIGZvcm1hdHRlZCBkZXNjcmlwdGlvbiBsaW5lcy5cbiAqXG4gKiBUaGUgY29kZSB1dGlsaXplcyB0aGUgYHByZXR0aWVyYCBsaWJyYXJ5IGZvciBjb2RlIGZvcm1hdHRpbmcgYW5kIHRoZSBgTG9nVGFza2AgY2xhc3MgZm9yIGxvZ2dpbmcgcHVycG9zZXMuXG4gKi9cblxuaW1wb3J0IHsgZm9ybWF0IH0gZnJvbSAncHJldHRpZXInO1xuXG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuXG5jb25zdCBsb2cgPSBuZXcgTG9nVGFzaygncHJldHRpZXInKTtcblxuLyoqXG4gKiBGb3JtYXRzIGEgWUFNTCBzdHJpbmcgdXNpbmcgYHByZXR0aWVyYC5cbiAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSAtIFRoZSBZQU1MIHN0cmluZyB0byBmb3JtYXQuXG4gKiBAcGFyYW0ge3N0cmluZ30gW2ZpbGVwYXRoXSAtIFRoZSBvcHRpb25hbCBmaWxlcGF0aC5cbiAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIGZvcm1hdHRlZCBZQU1MIHN0cmluZy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZvcm1hdFlhbWwodmFsdWU6IHN0cmluZywgZmlsZXBhdGg/OiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCBmcCA9IGZpbGVwYXRoID8geyBmaWxlcGF0aCB9IDoge307XG4gIHJldHVybiBmb3JtYXQodmFsdWUsIHtcbiAgICBzZW1pOiBmYWxzZSxcbiAgICBwYXJzZXI6ICd5YW1sJyxcbiAgICBlbWJlZGRlZExhbmd1YWdlRm9ybWF0dGluZzogJ2F1dG8nLFxuICAgIC4uLmZwLFxuICB9KTtcbn1cblxuLyoqXG4gKiBGb3JtYXRzIGEgTWFya2Rvd24gc3RyaW5nIHVzaW5nIGBwcmV0dGllcmAuXG4gKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgLSBUaGUgTWFya2Rvd24gc3RyaW5nIHRvIGZvcm1hdC5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbZmlsZXBhdGhdIC0gVGhlIG9wdGlvbmFsIGZpbGVwYXRoLlxuICogQHJldHVybnMge1Byb21pc2U8c3RyaW5nPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgZm9ybWF0dGVkIE1hcmtkb3duIHN0cmluZy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZvcm1hdE1hcmtkb3duKHZhbHVlOiBzdHJpbmcsIGZpbGVwYXRoPzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgZnAgPSBmaWxlcGF0aCA/IHsgZmlsZXBhdGggfSA6IHt9O1xuICByZXR1cm4gZm9ybWF0KHZhbHVlLCB7XG4gICAgc2VtaTogZmFsc2UsXG4gICAgcGFyc2VyOiAnbWFya2Rvd24nLFxuICAgIGVtYmVkZGVkTGFuZ3VhZ2VGb3JtYXR0aW5nOiAnYXV0bycsXG4gICAgLi4uZnAsXG4gIH0pO1xufVxuXG4vKipcbiAqIFdyYXBzIGEgZGVzY3JpcHRpb24gdGV4dCB3aXRoIGEgcHJlZml4IGFuZCBmb3JtYXRzIGl0IHVzaW5nIGBwcmV0dGllcmAuXG4gKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gdmFsdWUgLSBUaGUgZGVzY3JpcHRpb24gdGV4dCB0byB3cmFwIGFuZCBmb3JtYXQuXG4gKiBAcGFyYW0ge3N0cmluZ1tdfSBjb250ZW50IC0gVGhlIGFycmF5IG9mIGNvbnRlbnQgdG8gdXBkYXRlLlxuICogQHBhcmFtIHtzdHJpbmd9IFtwcmVmaXg9JyAgICAjICddIC0gVGhlIG9wdGlvbmFsIHByZWZpeCB0byB3cmFwIHRoZSBkZXNjcmlwdGlvbiBsaW5lcy5cbiAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZ1tdPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgdXBkYXRlZCBjb250ZW50IGFycmF5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gd3JhcERlc2NyaXB0aW9uKFxuICB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICBjb250ZW50OiBzdHJpbmdbXSxcbiAgcHJlZml4ID0gJyAgICAjICcsXG4pOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gIGlmICghdmFsdWUpIHJldHVybiBjb250ZW50ID8/IFtdO1xuICAvLyBjb25zdCB2YWx1ZVdpdGhvdXRQcmVmaXggPSBwcmVmaXggJiYgcHJlZml4Lmxlbmd0aCA+IDAgPyB2YWx1ZS5yZXBsYWNlKHByZWZpeCwgJycpIDogdmFsdWU7XG4gIGxldCBmb3JtYXR0ZWRTdHJpbmcgPSAnJztcbiAgdHJ5IHtcbiAgICBmb3JtYXR0ZWRTdHJpbmcgPSBhd2FpdCBmb3JtYXQodmFsdWUsIHtcbiAgICAgIHNlbWk6IGZhbHNlLFxuICAgICAgcGFyc2VyOiAnbWFya2Rvd24nLFxuICAgICAgcHJvc2VXcmFwOiAnYWx3YXlzJyxcbiAgICB9KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBsb2cuZXJyb3IoYCR7ZXJyb3J9YCk7XG4gIH1cblxuICBjb250ZW50LnB1c2goLi4uZm9ybWF0dGVkU3RyaW5nLnNwbGl0KCdcXG4nKS5tYXAoKGxpbmUpID0+IHByZWZpeCArIGxpbmUucmVwbGFjZShwcmVmaXgsICcnKSkpO1xuICByZXR1cm4gY29udGVudDtcbn1cbiIsICIvKipcbiAqIFRoaXMgVHlwZVNjcmlwdCBjb2RlIGltcG9ydHMgdmFyaW91cyBtb2R1bGVzIGFuZCBkZWZpbmVzIGEgZnVuY3Rpb24gbmFtZWQgJ2dlbmVyYXRlRG9jcycuXG4gKiBUaGUgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIGdlbmVyYXRpbmcgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIFJFQURNRS5tZCBmaWxlIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBpbnB1dHMuXG4gKiBJdCBpdGVyYXRlcyB0aHJvdWdoIGVhY2ggc2VjdGlvbiBkZWZpbmVkIGluIHRoZSAnaW5wdXRzLnNlY3Rpb25zJyBhcnJheSBhbmQgY2FsbHMgdGhlICd1cGRhdGVTZWN0aW9uJyBmdW5jdGlvbiB0byB1cGRhdGUgdGhlIGNvcnJlc3BvbmRpbmcgc2VjdGlvbiBpbiB0aGUgUkVBRE1FLm1kIGZpbGUuXG4gKiBJZiBhbiBlcnJvciBvY2N1cnMgZHVyaW5nIHRoZSB1cGRhdGUgb2YgYSBzZWN0aW9uLCBpdCBsb2dzIHRoZSBlcnJvciBtZXNzYWdlIGFuZCBzdG9wcyB0aGUgcHJvY2Vzcy5cbiAqIEZpbmFsbHksIGl0IHNhdmVzIHRoZSB1cGRhdGVkIFJFQURNRS5tZCBmaWxlIGFuZCBjYWxscyB0aGUgJ3NhdmUnIGZ1bmN0aW9uLlxuICovXG5cbmltcG9ydCAqIGFzIGNvcmUgZnJvbSAnQGFjdGlvbnMvY29yZSc7XG5cbmltcG9ydCB7IFJlYWRtZVNlY3Rpb24gfSBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgSW5wdXRzIGZyb20gJy4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgdXBkYXRlU2VjdGlvbiBmcm9tICcuL3NlY3Rpb25zL2luZGV4LmpzJztcblxuZXhwb3J0IHR5cGUgU2VjdGlvbktWID0gUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbi8qKlxuICogQ2xhc3MgZm9yIG1hbmFnaW5nIFJFQURNRSBnZW5lcmF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgUmVhZG1lR2VuZXJhdG9yIHtcbiAgLyoqXG4gICAqIFRoZSBJbnB1dHMgaW5zdGFuY2UuXG4gICAqL1xuICBwcml2YXRlIGlucHV0czogSW5wdXRzO1xuXG4gIC8qKlxuICAgKiBUaGUgTG9nZ2VyIGluc3RhbmNlLlxuICAgKi9cbiAgcHJpdmF0ZSBsb2c6IExvZ1Rhc2s7XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBSZWFkbWVHZW5lcmF0b3IuXG4gICAqXG4gICAqIEBwYXJhbSBpbnB1dHMgLSBUaGUgSW5wdXRzIGluc3RhbmNlXG4gICAqIEBwYXJhbSBsb2cgLSBUaGUgTG9nZ2VyIGluc3RhbmNlXG4gICAqL1xuICBjb25zdHJ1Y3RvcihpbnB1dHM6IElucHV0cywgbG9nOiBMb2dUYXNrKSB7XG4gICAgdGhpcy5pbnB1dHMgPSBpbnB1dHM7XG4gICAgdGhpcy5sb2cgPSBsb2c7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgUkVBRE1FIHNlY3Rpb25zLlxuICAgKlxuICAgKiBAcGFyYW0gc2VjdGlvbnMgLSBUaGUgc2VjdGlvbnMgYXJyYXlcbiAgICogQHJldHVybnMgUHJvbWlzZSBhcnJheSBvZiBzZWN0aW9uIEtWIG9iamVjdHNcbiAgICovXG4gIHVwZGF0ZVNlY3Rpb25zKHNlY3Rpb25zOiBSZWFkbWVTZWN0aW9uW10pOiBQcm9taXNlPFNlY3Rpb25LVj5bXSB7XG4gICAgY29uc3QgcHJvbWlzZXM6IFByb21pc2U8U2VjdGlvbktWPltdID0gW107XG5cbiAgICBmb3IgKGNvbnN0IHNlY3Rpb24gb2Ygc2VjdGlvbnMpIHtcbiAgICAgIHByb21pc2VzLnB1c2godXBkYXRlU2VjdGlvbihzZWN0aW9uLCB0aGlzLmlucHV0cykpO1xuICAgIH1cblxuICAgIHJldHVybiBwcm9taXNlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlcyB0aGUgc2VjdGlvbiB1cGRhdGUgcHJvbWlzZXMuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9taXNlcyAtIFRoZSBwcm9taXNlIGFycmF5XG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIGNvbWJpbmVkIHNlY3Rpb25zIEtWXG4gICAqL1xuICBhc3luYyByZXNvbHZlVXBkYXRlcyhwcm9taXNlczogUHJvbWlzZTxTZWN0aW9uS1Y+W10pOiBQcm9taXNlPFNlY3Rpb25LVj4ge1xuICAgIHRoaXMubG9nLmRlYnVnKCdSZXNvbHZpbmcgdXBkYXRlcycpO1xuICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcyk7XG4gICAgY29uc3Qgc2VjdGlvbnM6IFNlY3Rpb25LViA9IHt9O1xuXG4gICAgZm9yIChjb25zdCByZXN1bHQgb2YgcmVzdWx0cykge1xuICAgICAgT2JqZWN0LmFzc2lnbihzZWN0aW9ucywgcmVzdWx0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2VjdGlvbnM7XG4gIH1cblxuICAvKipcbiAgICogT3V0cHV0cyB0aGUgc2VjdGlvbnMgS1YgdG8gR2l0SHViIG91dHB1dC5cbiAgICpcbiAgICogQHBhcmFtIHNlY3Rpb25zIC0gVGhlIHNlY3Rpb25zIEtWXG4gICAqL1xuICBvdXRwdXRTZWN0aW9ucyhzZWN0aW9uczogU2VjdGlvbktWKTogdm9pZCB7XG4gICAgaWYgKHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT05TKSB7XG4gICAgICB0aGlzLmxvZy5kZWJ1ZygnT3V0cHV0dGluZyBzZWN0aW9ucycpO1xuICAgICAgY29yZS5zZXRPdXRwdXQoJ3NlY3Rpb25zJywgSlNPTi5zdHJpbmdpZnkoc2VjdGlvbnMsIG51bGwsIDIpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2cuZGVidWcoJ05vdCBvdXRwdXR0aW5nIHNlY3Rpb25zJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyB0aGUgUkVBRE1FIGRvY3VtZW50YXRpb24uXG4gICAqXG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHdoZW4gZG9uZVxuICAgKi9cbiAgYXN5bmMgZ2VuZXJhdGUocHJvdmlkZWRTZWN0aW9uczogUmVhZG1lU2VjdGlvbltdID0gdGhpcy5pbnB1dHMuc2VjdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBzZWN0aW9uUHJvbWlzZXMgPSB0aGlzLnVwZGF0ZVNlY3Rpb25zKHByb3ZpZGVkU2VjdGlvbnMpO1xuICAgIGNvbnN0IHNlY3Rpb25zID0gYXdhaXQgdGhpcy5yZXNvbHZlVXBkYXRlcyhzZWN0aW9uUHJvbWlzZXMpO1xuXG4gICAgdGhpcy5vdXRwdXRTZWN0aW9ucyhzZWN0aW9ucyk7XG5cbiAgICByZXR1cm4gdGhpcy5pbnB1dHMucmVhZG1lRWRpdG9yLmR1bXBUb0ZpbGUoKTtcbiAgfVxufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgaW1wb3J0cyBuZWNlc3NhcnkgbW9kdWxlcyBhbmQgZGVmaW5lcyBhIGZ1bmN0aW9uIG5hbWVkICd1cGRhdGVCYWRnZXMnIHdoaWNoIHRha2VzIGEgc2VjdGlvblRva2VuIChSZWFkbWVTZWN0aW9uKSBhbmQgYW4gaW5zdGFuY2Ugb2YgdGhlICdJbnB1dHMnIGNsYXNzIGFzIGl0cyBwYXJhbWV0ZXJzLlxuICogVGhlIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciB1cGRhdGluZyB0aGUgYmFkZ2VzIHNlY3Rpb24gaW4gdGhlIFJFQURNRS5tZCBmaWxlIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBpbnB1dHMuXG4gKiBJdCB1dGlsaXplcyB0aGUgJ0xvZ1Rhc2snIGNsYXNzIGZvciBsb2dnaW5nIHB1cnBvc2VzLlxuICovXG5cbmltcG9ydCB7IFJlYWRtZVNlY3Rpb24gfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHR5cGUgSW5wdXRzIGZyb20gJy4uL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuLi9sb2d0YXNrL2luZGV4LmpzJztcblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIGEgYmFkZ2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUJhZGdlIHtcbiAgYWx0OiBzdHJpbmc7XG4gIGltZzogc3RyaW5nO1xuICB1cmw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogR2VuZXJhdGUgR2l0SHViIGJhZGdlcy5cbiAqIEByZXR1cm5zIHtJQmFkZ2VbXX0gLSBUaGUgYXJyYXkgb2YgR2l0SHViIGJhZGdlcy5cbiAqL1xuZnVuY3Rpb24gZ2l0aHViQmFkZ2VzKG93bmVyOiBzdHJpbmcsIHJlcG86IHN0cmluZyk6IElCYWRnZVtdIHtcbiAgY29uc3QgcmVwb1VybCA9IGBodHRwczovL2dpdGh1Yi5jb20vJHtvd25lcn0vJHtyZXBvfWA7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgaW1nOiBgaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9naXRodWIvdi9yZWxlYXNlLyR7b3duZXJ9LyR7cmVwb30/ZGlzcGxheV9uYW1lPXRhZyZzb3J0PXNlbXZlciZsb2dvPWdpdGh1YiZzdHlsZT1mbGF0LXNxdWFyZWAsXG4gICAgICBhbHQ6ICdSZWxlYXNlIGJ5IHRhZycsXG4gICAgICB1cmw6IGAke3JlcG9Vcmx9L3JlbGVhc2VzL2xhdGVzdGAsXG4gICAgfSxcbiAgICB7XG4gICAgICBpbWc6IGBodHRwczovL2ltZy5zaGllbGRzLmlvL2dpdGh1Yi9yZWxlYXNlLWRhdGUvJHtvd25lcn0vJHtyZXBvfT9kaXNwbGF5X25hbWU9dGFnJnNvcnQ9c2VtdmVyJmxvZ289Z2l0aHViJnN0eWxlPWZsYXQtc3F1YXJlYCxcbiAgICAgIGFsdDogJ1JlbGVhc2UgYnkgZGF0ZScsXG4gICAgICB1cmw6IGAke3JlcG9Vcmx9L3JlbGVhc2VzL2xhdGVzdGAsXG4gICAgfSxcbiAgICB7XG4gICAgICBpbWc6IGBodHRwczovL2ltZy5zaGllbGRzLmlvL2dpdGh1Yi9sYXN0LWNvbW1pdC8ke293bmVyfS8ke3JlcG99P2xvZ289Z2l0aHViJnN0eWxlPWZsYXQtc3F1YXJlYCxcbiAgICAgIGFsdDogJ0NvbW1pdCcsXG4gICAgfSxcbiAgICB7XG4gICAgICBpbWc6IGBodHRwczovL2ltZy5zaGllbGRzLmlvL2dpdGh1Yi9pc3N1ZXMvJHtvd25lcn0vJHtyZXBvfT9sb2dvPWdpdGh1YiZzdHlsZT1mbGF0LXNxdWFyZWAsXG4gICAgICBhbHQ6ICdPcGVuIElzc3VlcycsXG4gICAgICB1cmw6IGAke3JlcG9Vcmx9L2lzc3Vlc2AsXG4gICAgfSxcbiAgICB7XG4gICAgICBpbWc6IGBodHRwczovL2ltZy5zaGllbGRzLmlvL2dpdGh1Yi9kb3dubG9hZHMvJHtvd25lcn0vJHtyZXBvfS90b3RhbD9sb2dvPWdpdGh1YiZzdHlsZT1mbGF0LXNxdWFyZWAsXG4gICAgICBhbHQ6ICdEb3dubG9hZHMnLFxuICAgIH0sXG4gIF07XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgYmFkZ2UgSFRNTCBtYXJrdXAuXG4gKiBAcGFyYW0ge0lCYWRnZX0gaXRlbSAtIFRoZSBiYWRnZSBvYmplY3QuXG4gKiBAcmV0dXJucyB7c3RyaW5nfSAtIFRoZSBIVE1MIG1hcmt1cCBmb3IgdGhlIGJhZGdlLlxuICovXG5mdW5jdGlvbiBnZW5lcmF0ZUJhZGdlKGl0ZW06IElCYWRnZSwgbG9nOiBMb2dUYXNrKTogc3RyaW5nIHtcbiAgY29uc3QgYmFkZ2VUZW1wbGF0ZSA9IGA8aW1nIHNyYz1cIiR7aXRlbS5pbWd9XCIgYWx0PVwiJHtlbmNvZGVVUklDb21wb25lbnQoaXRlbS5hbHQpIHx8ICcnfVwiIC8+YDtcbiAgbG9nLmluZm8oYEdlbmVyYXRpbmcgYmFkZ2UgJHtpdGVtLmFsdH1gKTtcbiAgaWYgKGl0ZW0udXJsKSB7XG4gICAgcmV0dXJuIGA8YSBocmVmPVwiJHtlbmNvZGVVUklDb21wb25lbnQoaXRlbS51cmwpfVwiPiR7YmFkZ2VUZW1wbGF0ZX08L2E+YDtcbiAgfVxuICByZXR1cm4gYmFkZ2VUZW1wbGF0ZTtcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZXMgYWxsIGJhZGdlcyBIVE1MIG1hcmt1cC5cbiAqIEBwYXJhbSB7SUJhZGdlfSBiYWRnZXMgLSBUaGUgYXJyYXkgb2YgYmFkZ2Ugb2JqZWN0c1xuICogQHBhcmFtIGxvZyAtIEEgTG9nVGFzayBpbnN0YW5jZVxuICogQHJldHVybnMge3N0cmluZ1tdfSAtIFRoZSBhcnJheSBvZiBIVE1MIG1hcmt1cCBmb3IgYWxsIGJhZGdlcy5cbiAqL1xuZnVuY3Rpb24gZ2VuZXJhdGVCYWRnZXMoYmFkZ2VzOiBJQmFkZ2VbXSwgbG9nOiBMb2dUYXNrKTogc3RyaW5nW10ge1xuICBjb25zdCBiYWRnZUFycmF5OiBzdHJpbmdbXSA9IFtdO1xuICBmb3IgKGNvbnN0IGIgb2YgYmFkZ2VzKSB7XG4gICAgYmFkZ2VBcnJheS5wdXNoKGdlbmVyYXRlQmFkZ2UoYiwgbG9nKSk7XG4gIH1cbiAgbG9nLmRlYnVnKGBUb3RhbCBiYWRnZXM6ICR7YmFkZ2VBcnJheS5sZW5ndGh9YCk7XG4gIHJldHVybiBiYWRnZUFycmF5O1xufVxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXBkYXRlQmFkZ2VzKFxuICBzZWN0aW9uVG9rZW46IFJlYWRtZVNlY3Rpb24sXG4gIGlucHV0czogSW5wdXRzLFxuKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKHNlY3Rpb25Ub2tlbik7XG4gIGNvbnN0IGNvbmZpZyA9IGlucHV0cy5jb25maWcuZ2V0KCk7XG5cbiAgY29uc3QgZW5hYmxlVmVyc2lvbmluZyA9IGNvbmZpZyA/IGNvbmZpZy52ZXJzaW9uaW5nPy5iYWRnZSA6IGZhbHNlO1xuICBsb2cuaW5mbyhgVmVyc2lvbmluZyBiYWRnZTogJHtlbmFibGVWZXJzaW9uaW5nfWApO1xuXG4gIGxvZy5zdGFydCgpO1xuICBsZXQgY29udGVudCA9ICcnO1xuICAvLyBBZGQgR2l0SHViIGJhZGdlc1xuICBpZiAoZW5hYmxlVmVyc2lvbmluZykge1xuICAgIGNvbnN0IGJhZGdlczogSUJhZGdlW10gPSBnaXRodWJCYWRnZXMoaW5wdXRzLm93bmVyLCBpbnB1dHMucmVwbyk7XG4gICAgY29udGVudCA9IGdlbmVyYXRlQmFkZ2VzKGJhZGdlcywgbG9nKS5qb2luKCcnKTtcbiAgICBpbnB1dHMucmVhZG1lRWRpdG9yLnVwZGF0ZVNlY3Rpb24oc2VjdGlvblRva2VuLCBjb250ZW50KTtcbiAgfVxuICBsb2cuc3VjY2VzcygpO1xuICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgcmV0W3NlY3Rpb25Ub2tlbl0gPSBjb250ZW50O1xuICByZXR1cm4gcmV0O1xufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgaW1wb3J0cyBuZWNlc3NhcnkgbW9kdWxlcyBhbmQgZGVmaW5lcyBhIGNsYXNzIG5hbWVkICdTVkdFZGl0b3InIGZvciBnZW5lcmF0aW5nIFNWRyBpbWFnZXMuXG4gKiBUaGUgY2xhc3MgaGFzIG1ldGhvZHMgZm9yIGluaXRpYWxpemluZyB0aGUgU1ZHIHdpbmRvdywgZ2VuZXJhdGluZyBTVkcgY29udGVudCwgYW5kIHdyaXRpbmcgU1ZHIGZpbGVzLlxuICogSXQgdXRpbGl6ZXMgdmFyaW91cyBwYWNrYWdlcyBzdWNoIGFzICdmcycsICdwYXRoJywgJ0Bzdmdkb3Rqcy9zdmcuanMnLCAnZmVhdGhlci1pY29ucycsIGFuZCAnc3ZnZG9tJyBmb3IgU1ZHIG1hbmlwdWxhdGlvbiBhbmQgZmlsZSBvcGVyYXRpb25zLlxuICogVGhlIGNsYXNzIGFsc28gZGVmaW5lcyBpbnRlcmZhY2VzIGZvciBiYWRnZXMgYW5kIGJyYW5kIGNvbG9ycy5cbiAqL1xuXG5pbXBvcnQgKiBhcyBmcyBmcm9tICdub2RlOmZzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAnbm9kZTpwYXRoJztcblxuaW1wb3J0IHR5cGUgeyBDb250YWluZXIgfSBmcm9tICdAc3ZnZG90anMvc3ZnLmpzJztcbmltcG9ydCB7IHJlZ2lzdGVyV2luZG93LCBTVkcgfSBmcm9tICdAc3ZnZG90anMvc3ZnLmpzJztcbmltcG9ydCB0eXBlIHsgRmVhdGhlckljb25OYW1lcyB9IGZyb20gJ2ZlYXRoZXItaWNvbnMnO1xuaW1wb3J0ICogYXMgZmVhdGhlciBmcm9tICdmZWF0aGVyLWljb25zJztcbmltcG9ydCB7IGNyZWF0ZVNWR1dpbmRvdywgU1ZHRG9jdW1lbnQsIFNWR1dpbmRvdyB9IGZyb20gJ3N2Z2RvbSc7IC8vLyBtYWluLW1vZHVsZS5qcyc7XG5cbmltcG9ydCB0eXBlIHsgQnJhbmRDb2xvcnMgfSBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQge1xuICBicmFuZGluZ1NxdWFyZUVkZ2VMZW5ndGhJblBpeGVscyxcbiAgREVGQVVMVF9CUkFORF9DT0xPUixcbiAgREVGQVVMVF9CUkFORF9JQ09OLFxuICBHSVRIVUJfQUNUSU9OU19CUkFORElOR19DT0xPUlMsXG4gIEdJVEhVQl9BQ1RJT05TX0JSQU5ESU5HX0lDT05TLFxuICBpc1ZhbGlkQ29sb3IsXG4gIGlzVmFsaWRJY29uLFxufSBmcm9tICcuL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuXG4vKipcbiAqIFV0aWxpdHkgY2xhc3MgZm9yIGdlbmVyYXRpbmcgU1ZHIGltYWdlcy5cbiAqL1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTVkdFZGl0b3Ige1xuICBwcml2YXRlIGxvZzogTG9nVGFzaztcblxuICBwcml2YXRlIHdpbmRvdz86IFNWR1dpbmRvdztcblxuICBwcml2YXRlIGNhbnZhcz86IENvbnRhaW5lcjtcblxuICBwcml2YXRlIGRvY3VtZW50PzogU1ZHRG9jdW1lbnQ7XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIGEgbmV3IFNWR0VkaXRvciBpbnN0YW5jZS5cbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMubG9nID0gbmV3IExvZ1Rhc2soJ1NWR0VkaXRvcicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBTVkcgd2luZG93LCBkb2N1bWVudCwgYW5kIGNhbnZhcyBpZiBub3QgYWxyZWFkeSBzZXQgdXAuXG4gICAqL1xuICBhc3luYyBpbml0U1ZHKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy53aW5kb3cpIHtcbiAgICAgIHRoaXMud2luZG93ID0gY3JlYXRlU1ZHV2luZG93KCk7XG4gICAgICBjb25zdCB7IGRvY3VtZW50IH0gPSB0aGlzLndpbmRvdztcbiAgICAgIHJlZ2lzdGVyV2luZG93KHRoaXMud2luZG93LCBkb2N1bWVudCk7XG4gICAgICBpZiAoIXRoaXMuY2FudmFzKSB7XG4gICAgICAgIHRoaXMuY2FudmFzID0gU1ZHKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkgYXMgQ29udGFpbmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgYSBicmFuZGVkIFNWRyBpbWFnZS5cbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IHN2Z1BhdGggLSBQYXRoIHRvIHdyaXRlIHRoZSBnZW5lcmF0ZWQgU1ZHIGZpbGUgdG8uXG4gICAqIEBwYXJhbSB7UGFydGlhbDxGZWF0aGVySWNvbk5hbWVzPn0gaWNvbiAtIE5hbWUgb2YgdGhlIGljb24gdG8gdXNlLlxuICAgKiBAcGFyYW0ge1BhcnRpYWw8QnJhbmRDb2xvcnM+fSBiZ2NvbG9yIC0gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGltYWdlLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgaW1hZ2UgaXMgZ2VuZXJhdGVkLlxuICAgKi9cbiAgYXN5bmMgZ2VuZXJhdGVTdmdJbWFnZShcbiAgICBzdmdQYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgaWNvbjogUGFydGlhbDxGZWF0aGVySWNvbk5hbWVzPiA9IERFRkFVTFRfQlJBTkRfSUNPTixcbiAgICBiZ2NvbG9yOiBQYXJ0aWFsPEJyYW5kQ29sb3JzPiA9IERFRkFVTFRfQlJBTkRfQ09MT1JcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCFzdmdQYXRoIHx8IHN2Z1BhdGgubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmxvZy5kZWJ1ZygnTm8gc3ZnUGF0aCBwcm92aWRlZCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghaXNWYWxpZEljb24oaWNvbikpIHtcbiAgICAgIHRoaXMubG9nLmVycm9yKGBWYWxpZCBCcmFuZGluZyBJY29uIE5hbWVzOiAke0dJVEhVQl9BQ1RJT05TX0JSQU5ESU5HX0lDT05TfWApO1xuICAgICAgdGhpcy5sb2cuZmFpbChgSW52YWxpZCBpY29uIG5hbWU6ICR7aWNvbn1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKCFpc1ZhbGlkQ29sb3IoYmdjb2xvcikpIHtcbiAgICAgIHRoaXMubG9nLmVycm9yKGBWYWxpZCBCcmFuZGluZyBDb2xvcnM6ICR7R0lUSFVCX0FDVElPTlNfQlJBTkRJTkdfQ09MT1JTfWApO1xuICAgICAgdGhpcy5sb2cuZmFpbCgnSW52YWxpZCBicmFuZGluZyBjb2xvcicpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmxvZy5pbmZvKGBTVkcgdG8gZ2VuZXJhdGUgJHtpY29ufSBhdCAke3N2Z1BhdGh9IHdpdGggY29sb3IgJHtiZ2NvbG9yfS5gKTtcbiAgICAvLyBJbml0aWFsaXplIFNWR1xuICAgIGF3YWl0IHRoaXMuaW5pdFNWRygpO1xuICAgIC8vIEdlbmVyYXRlIFNWRyBjb250ZW50XG4gICAgY29uc3Qgc3ZnQ29udGVudCA9IHRoaXMuZ2VuZXJhdGVTVkdDb250ZW50KGljb24sIGJnY29sb3IpO1xuXG4gICAgLy8gV3JpdGUgU1ZHIGZpbGVcbiAgICB0aGlzLndyaXRlU1ZHRmlsZShzdmdQYXRoLCBzdmdDb250ZW50KTtcblxuICAgIHRoaXMubG9nLmRlYnVnKCdTVkcgaW1hZ2UgZ2VuZXJhdGVkIHN1Y2Nlc3NmdWxseScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdyaXRlcyB0aGUgU1ZHIHhtbCB0byBkaXNrLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3ZnUGF0aCAtIEZpbGUgcGF0aCB0byBzYXZlIHRoZSBTVkcgdG8uXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzdmdDb250ZW50IC0gVGhlIFhNTCBmb3IgdGhlIFNWRyBmaWxlLlxuICAgKi9cbiAgd3JpdGVTVkdGaWxlKHN2Z1BhdGg6IHN0cmluZywgc3ZnQ29udGVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgZnMubWtkaXJTeW5jKHBhdGguZGlybmFtZShzdmdQYXRoKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgdGhpcy5sb2cuZGVidWcoYFdyaXRpbmcgU1ZHIGZpbGUgdG8gJHtzdmdQYXRofWApO1xuICAgIGZzLndyaXRlRmlsZShzdmdQYXRoLCBzdmdDb250ZW50LCAndXRmOCcsICgpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLmxvZy5kZWJ1ZyhgU1ZHIGltYWdlIGdlbmVyYXRlZDogJHtzdmdQYXRofWApO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyB0aGUgU1ZHIGNvbnRlbnQgZm9yIHRoZSBicmFuZGluZyBpbWFnZS5cbiAgICogQHBhcmFtIHtGZWF0aGVySWNvbk5hbWVzfSBpY29uIC0gTmFtZSBvZiB0aGUgaWNvbiB0byB1c2UuXG4gICAqIEBwYXJhbSB7QnJhbmRDb2xvcnN9IGNvbG9yIC0gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGltYWdlLlxuICAgKiBAcGFyYW0ge251bWJlcn0gb3V0ZXJWaWV3Qm94IC0gU2l6ZSBvZiB0aGUgY2FudmFzIGZvciB0aGUgaW1hZ2UuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBnZW5lcmF0ZWQgU1ZHIGNvbnRlbnQuXG4gICAqL1xuICBnZW5lcmF0ZVNWR0NvbnRlbnQoaWNvbjogRmVhdGhlckljb25OYW1lcywgY29sb3I6IEJyYW5kQ29sb3JzLCBvdXRlclZpZXdCb3ggPSAxMDApOiBzdHJpbmcge1xuICAgIGNvbnN0IHsgY2FudmFzLCBsb2cgfSA9IHRoaXM7XG4gICAgLy8gVmFsaWRhdGUgY2FudmFzXG4gICAgaWYgKCFjYW52YXMpIHtcbiAgICAgIGxvZy5mYWlsKCdDYW52YXMgbm90IGluaXRpYWxpemVkJyk7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgY29uc3Qgc3ZnRGF0YSA9IGZlYXRoZXIuaWNvbnNbaWNvbl07XG4gICAgbG9nLmRlYnVnKGBTVkcgZGF0YSB0byBpbmdlc3Q6ICR7c3ZnRGF0YS50b1N2ZygpfWApO1xuXG4gICAgY2FudmFzLmNsZWFyKCk7XG5cbiAgICAvLyBDcmVhdGUgYSBjYW52YXMgdGhhdCBpcyBgb3V0ZXJWaWV3Qm94YCB4IGBvdXRlclZpZXdCb3hgXG4gICAgY2FudmFzXG4gICAgICAuc2l6ZShicmFuZGluZ1NxdWFyZUVkZ2VMZW5ndGhJblBpeGVscywgYnJhbmRpbmdTcXVhcmVFZGdlTGVuZ3RoSW5QaXhlbHMpXG4gICAgICAudmlld2JveChgMCAwICR7b3V0ZXJWaWV3Qm94fSAke291dGVyVmlld0JveH1gKVxuICAgICAgLmZpbGwoJ25vbmUnKTtcblxuICAgIC8vIENyZWF0ZSBhICdjb2xvcicgY2lyY2xlIHRoYXQgdG91Y2hlcyB0aGUgZWRnZXMgb2YgdGhlIGNhbnZhc1xuICAgIGNvbnN0IGNpcmNsZVNpemUgPSBvdXRlclZpZXdCb3ggLyAyO1xuICAgIGNhbnZhc1xuICAgICAgLmNpcmNsZSgnNTAlJylcbiAgICAgIC5maWxsKGNvbG9yKVxuICAgICAgLnJhZGl1cyhjaXJjbGVTaXplKVxuICAgICAgLmN4KGNpcmNsZVNpemUpXG4gICAgICAuY3koY2lyY2xlU2l6ZSlcbiAgICAgIC5zdHJva2UoeyB3aWR0aDogMCB9KTtcblxuICAgIC8vIENyZWF0ZSBhbiBzdmcgYm94IHRoYXQgaXMgaGFsZiB0aGUgc2l6ZSBvZiB0aGUgcGFyZW50XG4gICAgY29uc3QgaWNvbnN2Z091dGVyID0gY2FudmFzLm5lc3RlZCgpO1xuICAgIGljb25zdmdPdXRlci5hdHRyKCdvdmVyZmxvdycsICd2aXNpYmxlJykuaGVpZ2h0KCc1MCUnKS53aWR0aCgnNTAlJykueCgnMjUlJykueSgnMjUlJyk7XG5cbiAgICAvLyBjcmVhdGUgYSBuZXN0ZWQgc3ZnIGFuZCBhZGQgdGhlIGZlYXRoZXItaWNvbiBwYXRocyB0byB0aGUgc3ZnXG4gICAgY29uc3QgaWNvbnN2ZyA9IGljb25zdmdPdXRlci5uZXN0ZWQoKTtcbiAgICBpY29uc3ZnLmlkKCdpY29uJykuc3ZnKHN2Z0RhdGEuY29udGVudHMpO1xuXG4gICAgLy8gQXBwZW5kIGFsbCBvZiB0aGUgYXR0cmlidXRlcyBmcm9tIHRoZSBmZXRoZXItaWNvblxuICAgIGZvciAoY29uc3QgYXR0ciBvZiBPYmplY3Qua2V5cyhzdmdEYXRhLmF0dHJzKSkge1xuICAgICAgaWNvbnN2Zy5hdHRyKGF0dHIsIHN2Z0RhdGEuYXR0cnNbYXR0cl0pO1xuICAgIH1cblxuICAgIC8vIGludmVydCB0aGUgc3Ryb2tlIGNvbG9yIGlmIGl0IG1hdGNoZXMgdGhlIGJhY2tncm91bmQgY29sb3JcbiAgICBpY29uc3ZnLnN0cm9rZShjb2xvci5zdGFydHNXaXRoKCd3aGl0ZScpID8gJ3doaXRlJyA6ICdibGFjaycpO1xuXG4gICAgLy8gcmVtb3ZlIHRoZSBlZGdlIGNsaXBwaW5nXG4gICAgaWNvbnN2Zy5hdHRyKCdvdmVyZmxvdycsICd2aXNpYmxlJyk7XG5cbiAgICAvLyBNYWtlIHRoZSB2aWV3Ym94IG9mIHRoZSBzdmcgbWF0Y2ggdGhlIGV4YWN0IGRpbWVuc2lvbnMgb2YgdGhlIGljb25cbiAgICBpY29uc3ZnLnZpZXdib3goaWNvbnN2Zy5iYm94KCkpO1xuXG4gICAgLy8gTWFrZSB0aGUgc3ZnIGljb24gY2VudGVyIGl0c2VsZiB2ZXJ0aWNhbGx5IGFuZCBob3Jvem9uYWxseVxuICAgIGljb25zdmcuaGVpZ2h0KCdhdXRvJykud2lkdGgoJ2F1dG8nKTtcblxuICAgIC8vIHJldHVybiB0aGUgeG1sIGZpbGUgY29udGVudFxuICAgIHJldHVybiBbJzw/eG1sIHZlcnNpb249XCIxLjBcIiBlbmNvZGluZz1cIlVURi04XCIgc3RhbmRhbG9uZT1cIm5vXCI/PicsIGNhbnZhcy5zdmcoKSwgJ1xcbiddLmpvaW4oXG4gICAgICAnXFxuJ1xuICAgICk7XG4gIH1cbn1cbiIsICJjb25zdCBtZXRob2RzID0ge31cbmNvbnN0IG5hbWVzID0gW11cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyTWV0aG9kcyhuYW1lLCBtKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KG5hbWUpKSB7XG4gICAgZm9yIChjb25zdCBfbmFtZSBvZiBuYW1lKSB7XG4gICAgICByZWdpc3Rlck1ldGhvZHMoX25hbWUsIG0pXG4gICAgfVxuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHR5cGVvZiBuYW1lID09PSAnb2JqZWN0Jykge1xuICAgIGZvciAoY29uc3QgX25hbWUgaW4gbmFtZSkge1xuICAgICAgcmVnaXN0ZXJNZXRob2RzKF9uYW1lLCBuYW1lW19uYW1lXSlcbiAgICB9XG4gICAgcmV0dXJuXG4gIH1cblxuICBhZGRNZXRob2ROYW1lcyhPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhtKSlcbiAgbWV0aG9kc1tuYW1lXSA9IE9iamVjdC5hc3NpZ24obWV0aG9kc1tuYW1lXSB8fCB7fSwgbSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1ldGhvZHNGb3IobmFtZSkge1xuICByZXR1cm4gbWV0aG9kc1tuYW1lXSB8fCB7fVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWV0aG9kTmFtZXMoKSB7XG4gIHJldHVybiBbLi4ubmV3IFNldChuYW1lcyldXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhZGRNZXRob2ROYW1lcyhfbmFtZXMpIHtcbiAgbmFtZXMucHVzaCguLi5fbmFtZXMpXG59XG4iLCAiLy8gTWFwIGZ1bmN0aW9uXG5leHBvcnQgZnVuY3Rpb24gbWFwKGFycmF5LCBibG9jaykge1xuICBsZXQgaVxuICBjb25zdCBpbCA9IGFycmF5Lmxlbmd0aFxuICBjb25zdCByZXN1bHQgPSBbXVxuXG4gIGZvciAoaSA9IDA7IGkgPCBpbDsgaSsrKSB7XG4gICAgcmVzdWx0LnB1c2goYmxvY2soYXJyYXlbaV0pKVxuICB9XG5cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG4vLyBGaWx0ZXIgZnVuY3Rpb25cbmV4cG9ydCBmdW5jdGlvbiBmaWx0ZXIoYXJyYXksIGJsb2NrKSB7XG4gIGxldCBpXG4gIGNvbnN0IGlsID0gYXJyYXkubGVuZ3RoXG4gIGNvbnN0IHJlc3VsdCA9IFtdXG5cbiAgZm9yIChpID0gMDsgaSA8IGlsOyBpKyspIHtcbiAgICBpZiAoYmxvY2soYXJyYXlbaV0pKSB7XG4gICAgICByZXN1bHQucHVzaChhcnJheVtpXSlcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzdWx0XG59XG5cbi8vIERlZ3JlZXMgdG8gcmFkaWFuc1xuZXhwb3J0IGZ1bmN0aW9uIHJhZGlhbnMoZCkge1xuICByZXR1cm4gKChkICUgMzYwKSAqIE1hdGguUEkpIC8gMTgwXG59XG5cbi8vIFJhZGlhbnMgdG8gZGVncmVlc1xuZXhwb3J0IGZ1bmN0aW9uIGRlZ3JlZXMocikge1xuICByZXR1cm4gKChyICogMTgwKSAvIE1hdGguUEkpICUgMzYwXG59XG5cbi8vIENvbnZlcnQgY2FtZWwgY2FzZWQgc3RyaW5nIHRvIGRhc2ggc2VwYXJhdGVkXG5leHBvcnQgZnVuY3Rpb24gdW5DYW1lbENhc2Uocykge1xuICByZXR1cm4gcy5yZXBsYWNlKC8oW0EtWl0pL2csIGZ1bmN0aW9uIChtLCBnKSB7XG4gICAgcmV0dXJuICctJyArIGcudG9Mb3dlckNhc2UoKVxuICB9KVxufVxuXG4vLyBDYXBpdGFsaXplIGZpcnN0IGxldHRlciBvZiBhIHN0cmluZ1xuZXhwb3J0IGZ1bmN0aW9uIGNhcGl0YWxpemUocykge1xuICByZXR1cm4gcy5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHMuc2xpY2UoMSlcbn1cblxuLy8gQ2FsY3VsYXRlIHByb3BvcnRpb25hbCB3aWR0aCBhbmQgaGVpZ2h0IHZhbHVlcyB3aGVuIG5lY2Vzc2FyeVxuZXhwb3J0IGZ1bmN0aW9uIHByb3BvcnRpb25hbFNpemUoZWxlbWVudCwgd2lkdGgsIGhlaWdodCwgYm94KSB7XG4gIGlmICh3aWR0aCA9PSBudWxsIHx8IGhlaWdodCA9PSBudWxsKSB7XG4gICAgYm94ID0gYm94IHx8IGVsZW1lbnQuYmJveCgpXG5cbiAgICBpZiAod2lkdGggPT0gbnVsbCkge1xuICAgICAgd2lkdGggPSAoYm94LndpZHRoIC8gYm94LmhlaWdodCkgKiBoZWlnaHRcbiAgICB9IGVsc2UgaWYgKGhlaWdodCA9PSBudWxsKSB7XG4gICAgICBoZWlnaHQgPSAoYm94LmhlaWdodCAvIGJveC53aWR0aCkgKiB3aWR0aFxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7XG4gICAgd2lkdGg6IHdpZHRoLFxuICAgIGhlaWdodDogaGVpZ2h0XG4gIH1cbn1cblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIGFkZHMgc3VwcG9ydCBmb3Igc3RyaW5nIG9yaWdpbnMuXG4gKiBJdCBzZWFyY2hlcyBmb3IgYW4gb3JpZ2luIGluIG8ub3JpZ2luIG8ub3ggYW5kIG8ub3JpZ2luWC5cbiAqIFRoaXMgd2F5LCBvcmlnaW46IHt4OiAnY2VudGVyJywgeTogNTB9IGNhbiBiZSBwYXNzZWQgYXMgd2VsbCBhcyBveDogJ2NlbnRlcicsIG95OiA1MFxuICoqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE9yaWdpbihvLCBlbGVtZW50KSB7XG4gIGNvbnN0IG9yaWdpbiA9IG8ub3JpZ2luXG4gIC8vIEZpcnN0IGNoZWNrIGlmIG9yaWdpbiBpcyBpbiBveCBvciBvcmlnaW5YXG4gIGxldCBveCA9IG8ub3ggIT0gbnVsbCA/IG8ub3ggOiBvLm9yaWdpblggIT0gbnVsbCA/IG8ub3JpZ2luWCA6ICdjZW50ZXInXG4gIGxldCBveSA9IG8ub3kgIT0gbnVsbCA/IG8ub3kgOiBvLm9yaWdpblkgIT0gbnVsbCA/IG8ub3JpZ2luWSA6ICdjZW50ZXInXG5cbiAgLy8gVGhlbiBjaGVjayBpZiBvcmlnaW4gd2FzIHVzZWQgYW5kIG92ZXJ3cml0ZSBpbiB0aGF0IGNhc2VcbiAgaWYgKG9yaWdpbiAhPSBudWxsKSB7XG4gICAgO1tveCwgb3ldID0gQXJyYXkuaXNBcnJheShvcmlnaW4pXG4gICAgICA/IG9yaWdpblxuICAgICAgOiB0eXBlb2Ygb3JpZ2luID09PSAnb2JqZWN0J1xuICAgICAgICA/IFtvcmlnaW4ueCwgb3JpZ2luLnldXG4gICAgICAgIDogW29yaWdpbiwgb3JpZ2luXVxuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRvIG9ubHkgY2FsbCBiYm94IHdoZW4gYWN0dWFsbHkgbmVlZGVkXG4gIGNvbnN0IGNvbmRYID0gdHlwZW9mIG94ID09PSAnc3RyaW5nJ1xuICBjb25zdCBjb25kWSA9IHR5cGVvZiBveSA9PT0gJ3N0cmluZydcbiAgaWYgKGNvbmRYIHx8IGNvbmRZKSB7XG4gICAgY29uc3QgeyBoZWlnaHQsIHdpZHRoLCB4LCB5IH0gPSBlbGVtZW50LmJib3goKVxuXG4gICAgLy8gQW5kIG9ubHkgb3ZlcndyaXRlIGlmIHN0cmluZyB3YXMgcGFzc2VkIGZvciB0aGlzIHNwZWNpZmljIGF4aXNcbiAgICBpZiAoY29uZFgpIHtcbiAgICAgIG94ID0gb3guaW5jbHVkZXMoJ2xlZnQnKVxuICAgICAgICA/IHhcbiAgICAgICAgOiBveC5pbmNsdWRlcygncmlnaHQnKVxuICAgICAgICAgID8geCArIHdpZHRoXG4gICAgICAgICAgOiB4ICsgd2lkdGggLyAyXG4gICAgfVxuXG4gICAgaWYgKGNvbmRZKSB7XG4gICAgICBveSA9IG95LmluY2x1ZGVzKCd0b3AnKVxuICAgICAgICA/IHlcbiAgICAgICAgOiBveS5pbmNsdWRlcygnYm90dG9tJylcbiAgICAgICAgICA/IHkgKyBoZWlnaHRcbiAgICAgICAgICA6IHkgKyBoZWlnaHQgLyAyXG4gICAgfVxuICB9XG5cbiAgLy8gUmV0dXJuIHRoZSBvcmlnaW4gYXMgaXQgaXMgaWYgaXQgd2Fzbid0IGEgc3RyaW5nXG4gIHJldHVybiBbb3gsIG95XVxufVxuXG5jb25zdCBkZXNjcmlwdGl2ZUVsZW1lbnRzID0gbmV3IFNldChbJ2Rlc2MnLCAnbWV0YWRhdGEnLCAndGl0bGUnXSlcbmV4cG9ydCBjb25zdCBpc0Rlc2NyaXB0aXZlID0gKGVsZW1lbnQpID0+XG4gIGRlc2NyaXB0aXZlRWxlbWVudHMuaGFzKGVsZW1lbnQubm9kZU5hbWUpXG5cbmV4cG9ydCBjb25zdCB3cml0ZURhdGFUb0RvbSA9IChlbGVtZW50LCBkYXRhLCBkZWZhdWx0cyA9IHt9KSA9PiB7XG4gIGNvbnN0IGNsb25lZCA9IHsgLi4uZGF0YSB9XG5cbiAgZm9yIChjb25zdCBrZXkgaW4gY2xvbmVkKSB7XG4gICAgaWYgKGNsb25lZFtrZXldLnZhbHVlT2YoKSA9PT0gZGVmYXVsdHNba2V5XSkge1xuICAgICAgZGVsZXRlIGNsb25lZFtrZXldXG4gICAgfVxuICB9XG5cbiAgaWYgKE9iamVjdC5rZXlzKGNsb25lZCkubGVuZ3RoKSB7XG4gICAgZWxlbWVudC5ub2RlLnNldEF0dHJpYnV0ZSgnZGF0YS1zdmdqcycsIEpTT04uc3RyaW5naWZ5KGNsb25lZCkpIC8vIHNlZSAjNDI4XG4gIH0gZWxzZSB7XG4gICAgZWxlbWVudC5ub2RlLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1zdmdqcycpXG4gICAgZWxlbWVudC5ub2RlLnJlbW92ZUF0dHJpYnV0ZSgnc3ZnanM6ZGF0YScpXG4gIH1cbn1cbiIsICIvLyBEZWZhdWx0IG5hbWVzcGFjZXNcbmV4cG9ydCBjb25zdCBzdmcgPSAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnXG5leHBvcnQgY29uc3QgaHRtbCA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJ1xuZXhwb3J0IGNvbnN0IHhtbG5zID0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMvJ1xuZXhwb3J0IGNvbnN0IHhsaW5rID0gJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnXG4iLCAiZXhwb3J0IGNvbnN0IGdsb2JhbHMgPSB7XG4gIHdpbmRvdzogdHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyBudWxsIDogd2luZG93LFxuICBkb2N1bWVudDogdHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJyA/IG51bGwgOiBkb2N1bWVudFxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJXaW5kb3cod2luID0gbnVsbCwgZG9jID0gbnVsbCkge1xuICBnbG9iYWxzLndpbmRvdyA9IHdpblxuICBnbG9iYWxzLmRvY3VtZW50ID0gZG9jXG59XG5cbmNvbnN0IHNhdmUgPSB7fVxuXG5leHBvcnQgZnVuY3Rpb24gc2F2ZVdpbmRvdygpIHtcbiAgc2F2ZS53aW5kb3cgPSBnbG9iYWxzLndpbmRvd1xuICBzYXZlLmRvY3VtZW50ID0gZ2xvYmFscy5kb2N1bWVudFxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzdG9yZVdpbmRvdygpIHtcbiAgZ2xvYmFscy53aW5kb3cgPSBzYXZlLndpbmRvd1xuICBnbG9iYWxzLmRvY3VtZW50ID0gc2F2ZS5kb2N1bWVudFxufVxuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFdpbmRvdyh3aW4sIGZuKSB7XG4gIHNhdmVXaW5kb3coKVxuICByZWdpc3RlcldpbmRvdyh3aW4sIHdpbi5kb2N1bWVudClcbiAgZm4od2luLCB3aW4uZG9jdW1lbnQpXG4gIHJlc3RvcmVXaW5kb3coKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0V2luZG93KCkge1xuICByZXR1cm4gZ2xvYmFscy53aW5kb3dcbn1cbiIsICJleHBvcnQgZGVmYXVsdCBjbGFzcyBCYXNlIHtcbiAgLy8gY29uc3RydWN0b3IgKG5vZGUvKiwge2V4dGVuc2lvbnMgPSBbXX0gKi8pIHtcbiAgLy8gICAvLyB0aGlzLnRhZ3MgPSBbXVxuICAvLyAgIC8vXG4gIC8vICAgLy8gZm9yIChsZXQgZXh0ZW5zaW9uIG9mIGV4dGVuc2lvbnMpIHtcbiAgLy8gICAvLyAgIGV4dGVuc2lvbi5zZXR1cC5jYWxsKHRoaXMsIG5vZGUpXG4gIC8vICAgLy8gICB0aGlzLnRhZ3MucHVzaChleHRlbnNpb24ubmFtZSlcbiAgLy8gICAvLyB9XG4gIC8vIH1cbn1cbiIsICJpbXBvcnQgeyBhZGRNZXRob2ROYW1lcyB9IGZyb20gJy4vbWV0aG9kcy5qcydcbmltcG9ydCB7IGNhcGl0YWxpemUgfSBmcm9tICcuL3V0aWxzLmpzJ1xuaW1wb3J0IHsgc3ZnIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuaW1wb3J0IEJhc2UgZnJvbSAnLi4vdHlwZXMvQmFzZS5qcydcblxuY29uc3QgZWxlbWVudHMgPSB7fVxuZXhwb3J0IGNvbnN0IHJvb3QgPSAnX19fU1lNQk9MX19fUk9PVF9fXydcblxuLy8gTWV0aG9kIGZvciBlbGVtZW50IGNyZWF0aW9uXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlKG5hbWUsIG5zID0gc3ZnKSB7XG4gIC8vIGNyZWF0ZSBlbGVtZW50XG4gIHJldHVybiBnbG9iYWxzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhucywgbmFtZSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VJbnN0YW5jZShlbGVtZW50LCBpc0hUTUwgPSBmYWxzZSkge1xuICBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIEJhc2UpIHJldHVybiBlbGVtZW50XG5cbiAgaWYgKHR5cGVvZiBlbGVtZW50ID09PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBhZG9wdGVyKGVsZW1lbnQpXG4gIH1cblxuICBpZiAoZWxlbWVudCA9PSBudWxsKSB7XG4gICAgcmV0dXJuIG5ldyBlbGVtZW50c1tyb290XSgpXG4gIH1cblxuICBpZiAodHlwZW9mIGVsZW1lbnQgPT09ICdzdHJpbmcnICYmIGVsZW1lbnQudHJpbSgpLmNoYXJBdCgwKSAhPT0gJzwnKSB7XG4gICAgcmV0dXJuIGFkb3B0ZXIoZ2xvYmFscy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGVsZW1lbnQpKVxuICB9XG5cbiAgLy8gTWFrZSBzdXJlLCB0aGF0IEhUTUwgZWxlbWVudHMgYXJlIGNyZWF0ZWQgd2l0aCB0aGUgY29ycmVjdCBuYW1lc3BhY2VcbiAgY29uc3Qgd3JhcHBlciA9IGlzSFRNTCA/IGdsb2JhbHMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JykgOiBjcmVhdGUoJ3N2ZycpXG4gIHdyYXBwZXIuaW5uZXJIVE1MID0gZWxlbWVudC50cmltKClcblxuICAvLyBXZSB1c2UgZmlyc3RFbGVtZW50Q2hpbGQgaGVyZSB0byBza2lwIHBvdGVudGlhbCBjb21tZW50IG5vZGVzICgjMTMzOSksXG4gIGVsZW1lbnQgPSBhZG9wdGVyKHdyYXBwZXIuZmlyc3RFbGVtZW50Q2hpbGQpXG5cbiAgLy8gbWFrZSBzdXJlLCB0aGF0IGVsZW1lbnQgZG9lc24ndCBoYXZlIGl0cyB3cmFwcGVyIGF0dGFjaGVkXG4gIHdyYXBwZXIucmVtb3ZlQ2hpbGQod3JhcHBlci5maXJzdEVsZW1lbnRDaGlsZClcbiAgcmV0dXJuIGVsZW1lbnRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vZGVPck5ldyhuYW1lLCBub2RlKSB7XG4gIHJldHVybiBub2RlICYmXG4gICAgKG5vZGUgaW5zdGFuY2VvZiBnbG9iYWxzLndpbmRvdy5Ob2RlIHx8XG4gICAgICAobm9kZS5vd25lckRvY3VtZW50ICYmXG4gICAgICAgIG5vZGUgaW5zdGFuY2VvZiBub2RlLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcuTm9kZSkpXG4gICAgPyBub2RlXG4gICAgOiBjcmVhdGUobmFtZSlcbn1cblxuLy8gQWRvcHQgZXhpc3Rpbmcgc3ZnIGVsZW1lbnRzXG5leHBvcnQgZnVuY3Rpb24gYWRvcHQobm9kZSkge1xuICAvLyBjaGVjayBmb3IgcHJlc2VuY2Ugb2Ygbm9kZVxuICBpZiAoIW5vZGUpIHJldHVybiBudWxsXG5cbiAgLy8gbWFrZSBzdXJlIGEgbm9kZSBpc24ndCBhbHJlYWR5IGFkb3B0ZWRcbiAgaWYgKG5vZGUuaW5zdGFuY2UgaW5zdGFuY2VvZiBCYXNlKSByZXR1cm4gbm9kZS5pbnN0YW5jZVxuXG4gIGlmIChub2RlLm5vZGVOYW1lID09PSAnI2RvY3VtZW50LWZyYWdtZW50Jykge1xuICAgIHJldHVybiBuZXcgZWxlbWVudHMuRnJhZ21lbnQobm9kZSlcbiAgfVxuXG4gIC8vIGluaXRpYWxpemUgdmFyaWFibGVzXG4gIGxldCBjbGFzc05hbWUgPSBjYXBpdGFsaXplKG5vZGUubm9kZU5hbWUgfHwgJ0RvbScpXG5cbiAgLy8gTWFrZSBzdXJlIHRoYXQgZ3JhZGllbnRzIGFyZSBhZG9wdGVkIGNvcnJlY3RseVxuICBpZiAoY2xhc3NOYW1lID09PSAnTGluZWFyR3JhZGllbnQnIHx8IGNsYXNzTmFtZSA9PT0gJ1JhZGlhbEdyYWRpZW50Jykge1xuICAgIGNsYXNzTmFtZSA9ICdHcmFkaWVudCdcblxuICAgIC8vIEZhbGxiYWNrIHRvIERvbSBpZiBlbGVtZW50IGlzIG5vdCBrbm93blxuICB9IGVsc2UgaWYgKCFlbGVtZW50c1tjbGFzc05hbWVdKSB7XG4gICAgY2xhc3NOYW1lID0gJ0RvbSdcbiAgfVxuXG4gIHJldHVybiBuZXcgZWxlbWVudHNbY2xhc3NOYW1lXShub2RlKVxufVxuXG5sZXQgYWRvcHRlciA9IGFkb3B0XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2NrQWRvcHQobW9jayA9IGFkb3B0KSB7XG4gIGFkb3B0ZXIgPSBtb2NrXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlcihlbGVtZW50LCBuYW1lID0gZWxlbWVudC5uYW1lLCBhc1Jvb3QgPSBmYWxzZSkge1xuICBlbGVtZW50c1tuYW1lXSA9IGVsZW1lbnRcbiAgaWYgKGFzUm9vdCkgZWxlbWVudHNbcm9vdF0gPSBlbGVtZW50XG5cbiAgYWRkTWV0aG9kTmFtZXMoT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZWxlbWVudC5wcm90b3R5cGUpKVxuXG4gIHJldHVybiBlbGVtZW50XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDbGFzcyhuYW1lKSB7XG4gIHJldHVybiBlbGVtZW50c1tuYW1lXVxufVxuXG4vLyBFbGVtZW50IGlkIHNlcXVlbmNlXG5sZXQgZGlkID0gMTAwMFxuXG4vLyBHZXQgbmV4dCBuYW1lZCBlbGVtZW50IGlkXG5leHBvcnQgZnVuY3Rpb24gZWlkKG5hbWUpIHtcbiAgcmV0dXJuICdTdmdqcycgKyBjYXBpdGFsaXplKG5hbWUpICsgZGlkKytcbn1cblxuLy8gRGVlcCBuZXcgaWQgYXNzaWdubWVudFxuZXhwb3J0IGZ1bmN0aW9uIGFzc2lnbk5ld0lkKG5vZGUpIHtcbiAgLy8gZG8gdGhlIHNhbWUgZm9yIFNWRyBjaGlsZCBub2RlcyBhcyB3ZWxsXG4gIGZvciAobGV0IGkgPSBub2RlLmNoaWxkcmVuLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgYXNzaWduTmV3SWQobm9kZS5jaGlsZHJlbltpXSlcbiAgfVxuXG4gIGlmIChub2RlLmlkKSB7XG4gICAgbm9kZS5pZCA9IGVpZChub2RlLm5vZGVOYW1lKVxuICAgIHJldHVybiBub2RlXG4gIH1cblxuICByZXR1cm4gbm9kZVxufVxuXG4vLyBNZXRob2QgZm9yIGV4dGVuZGluZyBvYmplY3RzXG5leHBvcnQgZnVuY3Rpb24gZXh0ZW5kKG1vZHVsZXMsIG1ldGhvZHMpIHtcbiAgbGV0IGtleSwgaVxuXG4gIG1vZHVsZXMgPSBBcnJheS5pc0FycmF5KG1vZHVsZXMpID8gbW9kdWxlcyA6IFttb2R1bGVzXVxuXG4gIGZvciAoaSA9IG1vZHVsZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICBmb3IgKGtleSBpbiBtZXRob2RzKSB7XG4gICAgICBtb2R1bGVzW2ldLnByb3RvdHlwZVtrZXldID0gbWV0aG9kc1trZXldXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3cmFwV2l0aEF0dHJDaGVjayhmbikge1xuICByZXR1cm4gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICBjb25zdCBvID0gYXJnc1thcmdzLmxlbmd0aCAtIDFdXG5cbiAgICBpZiAobyAmJiBvLmNvbnN0cnVjdG9yID09PSBPYmplY3QgJiYgIShvIGluc3RhbmNlb2YgQXJyYXkpKSB7XG4gICAgICByZXR1cm4gZm4uYXBwbHkodGhpcywgYXJncy5zbGljZSgwLCAtMSkpLmF0dHIobylcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGZuLmFwcGx5KHRoaXMsIGFyZ3MpXG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IHsgbWFrZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uLy4uL3V0aWxzL21ldGhvZHMuanMnXG5cbi8vIEdldCBhbGwgc2libGluZ3MsIGluY2x1ZGluZyBteXNlbGZcbmV4cG9ydCBmdW5jdGlvbiBzaWJsaW5ncygpIHtcbiAgcmV0dXJuIHRoaXMucGFyZW50KCkuY2hpbGRyZW4oKVxufVxuXG4vLyBHZXQgdGhlIGN1cnJlbnQgcG9zaXRpb24gc2libGluZ3NcbmV4cG9ydCBmdW5jdGlvbiBwb3NpdGlvbigpIHtcbiAgcmV0dXJuIHRoaXMucGFyZW50KCkuaW5kZXgodGhpcylcbn1cblxuLy8gR2V0IHRoZSBuZXh0IGVsZW1lbnQgKHdpbGwgcmV0dXJuIG51bGwgaWYgdGhlcmUgaXMgbm9uZSlcbmV4cG9ydCBmdW5jdGlvbiBuZXh0KCkge1xuICByZXR1cm4gdGhpcy5zaWJsaW5ncygpW3RoaXMucG9zaXRpb24oKSArIDFdXG59XG5cbi8vIEdldCB0aGUgbmV4dCBlbGVtZW50ICh3aWxsIHJldHVybiBudWxsIGlmIHRoZXJlIGlzIG5vbmUpXG5leHBvcnQgZnVuY3Rpb24gcHJldigpIHtcbiAgcmV0dXJuIHRoaXMuc2libGluZ3MoKVt0aGlzLnBvc2l0aW9uKCkgLSAxXVxufVxuXG4vLyBTZW5kIGdpdmVuIGVsZW1lbnQgb25lIHN0ZXAgZm9yd2FyZFxuZXhwb3J0IGZ1bmN0aW9uIGZvcndhcmQoKSB7XG4gIGNvbnN0IGkgPSB0aGlzLnBvc2l0aW9uKClcbiAgY29uc3QgcCA9IHRoaXMucGFyZW50KClcblxuICAvLyBtb3ZlIG5vZGUgb25lIHN0ZXAgZm9yd2FyZFxuICBwLmFkZCh0aGlzLnJlbW92ZSgpLCBpICsgMSlcblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBTZW5kIGdpdmVuIGVsZW1lbnQgb25lIHN0ZXAgYmFja3dhcmRcbmV4cG9ydCBmdW5jdGlvbiBiYWNrd2FyZCgpIHtcbiAgY29uc3QgaSA9IHRoaXMucG9zaXRpb24oKVxuICBjb25zdCBwID0gdGhpcy5wYXJlbnQoKVxuXG4gIHAuYWRkKHRoaXMucmVtb3ZlKCksIGkgPyBpIC0gMSA6IDApXG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gU2VuZCBnaXZlbiBlbGVtZW50IGFsbCB0aGUgd2F5IHRvIHRoZSBmcm9udFxuZXhwb3J0IGZ1bmN0aW9uIGZyb250KCkge1xuICBjb25zdCBwID0gdGhpcy5wYXJlbnQoKVxuXG4gIC8vIE1vdmUgbm9kZSBmb3J3YXJkXG4gIHAuYWRkKHRoaXMucmVtb3ZlKCkpXG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gU2VuZCBnaXZlbiBlbGVtZW50IGFsbCB0aGUgd2F5IHRvIHRoZSBiYWNrXG5leHBvcnQgZnVuY3Rpb24gYmFjaygpIHtcbiAgY29uc3QgcCA9IHRoaXMucGFyZW50KClcblxuICAvLyBNb3ZlIG5vZGUgYmFja1xuICBwLmFkZCh0aGlzLnJlbW92ZSgpLCAwKVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIEluc2VydHMgYSBnaXZlbiBlbGVtZW50IGJlZm9yZSB0aGUgdGFyZ2V0ZWQgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIGJlZm9yZShlbGVtZW50KSB7XG4gIGVsZW1lbnQgPSBtYWtlSW5zdGFuY2UoZWxlbWVudClcbiAgZWxlbWVudC5yZW1vdmUoKVxuXG4gIGNvbnN0IGkgPSB0aGlzLnBvc2l0aW9uKClcblxuICB0aGlzLnBhcmVudCgpLmFkZChlbGVtZW50LCBpKVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIEluc2VydHMgYSBnaXZlbiBlbGVtZW50IGFmdGVyIHRoZSB0YXJnZXRlZCBlbGVtZW50XG5leHBvcnQgZnVuY3Rpb24gYWZ0ZXIoZWxlbWVudCkge1xuICBlbGVtZW50ID0gbWFrZUluc3RhbmNlKGVsZW1lbnQpXG4gIGVsZW1lbnQucmVtb3ZlKClcblxuICBjb25zdCBpID0gdGhpcy5wb3NpdGlvbigpXG5cbiAgdGhpcy5wYXJlbnQoKS5hZGQoZWxlbWVudCwgaSArIDEpXG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluc2VydEJlZm9yZShlbGVtZW50KSB7XG4gIGVsZW1lbnQgPSBtYWtlSW5zdGFuY2UoZWxlbWVudClcbiAgZWxlbWVudC5iZWZvcmUodGhpcylcbiAgcmV0dXJuIHRoaXNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluc2VydEFmdGVyKGVsZW1lbnQpIHtcbiAgZWxlbWVudCA9IG1ha2VJbnN0YW5jZShlbGVtZW50KVxuICBlbGVtZW50LmFmdGVyKHRoaXMpXG4gIHJldHVybiB0aGlzXG59XG5cbnJlZ2lzdGVyTWV0aG9kcygnRG9tJywge1xuICBzaWJsaW5ncyxcbiAgcG9zaXRpb24sXG4gIG5leHQsXG4gIHByZXYsXG4gIGZvcndhcmQsXG4gIGJhY2t3YXJkLFxuICBmcm9udCxcbiAgYmFjayxcbiAgYmVmb3JlLFxuICBhZnRlcixcbiAgaW5zZXJ0QmVmb3JlLFxuICBpbnNlcnRBZnRlclxufSlcbiIsICIvLyBQYXJzZSB1bml0IHZhbHVlXG5leHBvcnQgY29uc3QgbnVtYmVyQW5kVW5pdCA9XG4gIC9eKFsrLV0/KFxcZCsoXFwuXFxkKik/fFxcLlxcZCspKGVbKy1dP1xcZCspPykoW2EteiVdKikkL2lcblxuLy8gUGFyc2UgaGV4IHZhbHVlXG5leHBvcnQgY29uc3QgaGV4ID0gL14jPyhbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KSQvaVxuXG4vLyBQYXJzZSByZ2IgdmFsdWVcbmV4cG9ydCBjb25zdCByZ2IgPSAvcmdiXFwoKFxcZCspLChcXGQrKSwoXFxkKylcXCkvXG5cbi8vIFBhcnNlIHJlZmVyZW5jZSBpZFxuZXhwb3J0IGNvbnN0IHJlZmVyZW5jZSA9IC8oI1thLXpfXVthLXowLTlcXC1fXSopL2lcblxuLy8gc3BsaXRzIGEgdHJhbnNmb3JtYXRpb24gY2hhaW5cbmV4cG9ydCBjb25zdCB0cmFuc2Zvcm1zID0gL1xcKVxccyosP1xccyovXG5cbi8vIFdoaXRlc3BhY2VcbmV4cG9ydCBjb25zdCB3aGl0ZXNwYWNlID0gL1xccy9nXG5cbi8vIFRlc3QgaGV4IHZhbHVlXG5leHBvcnQgY29uc3QgaXNIZXggPSAvXiNbYS1mMC05XXszfSR8XiNbYS1mMC05XXs2fSQvaVxuXG4vLyBUZXN0IHJnYiB2YWx1ZVxuZXhwb3J0IGNvbnN0IGlzUmdiID0gL15yZ2JcXCgvXG5cbi8vIFRlc3QgZm9yIGJsYW5rIHN0cmluZ1xuZXhwb3J0IGNvbnN0IGlzQmxhbmsgPSAvXihcXHMrKT8kL1xuXG4vLyBUZXN0IGZvciBudW1lcmljIHN0cmluZ1xuZXhwb3J0IGNvbnN0IGlzTnVtYmVyID0gL15bKy1dPyhcXGQrKFxcLlxcZCopP3xcXC5cXGQrKShlWystXT9cXGQrKT8kL2lcblxuLy8gVGVzdCBmb3IgaW1hZ2UgdXJsXG5leHBvcnQgY29uc3QgaXNJbWFnZSA9IC9cXC4oanBnfGpwZWd8cG5nfGdpZnxzdmcpKFxcP1tePV0rLiopPy9pXG5cbi8vIHNwbGl0IGF0IHdoaXRlc3BhY2UgYW5kIGNvbW1hXG5leHBvcnQgY29uc3QgZGVsaW1pdGVyID0gL1tcXHMsXSsvXG5cbi8vIFRlc3QgZm9yIHBhdGggbGV0dGVyXG5leHBvcnQgY29uc3QgaXNQYXRoTGV0dGVyID0gL1tNTEhWQ1NRVEFaXS9pXG4iLCAiaW1wb3J0IHsgZGVsaW1pdGVyIH0gZnJvbSAnLi4vY29yZS9yZWdleC5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uLy4uL3V0aWxzL21ldGhvZHMuanMnXG5cbi8vIFJldHVybiBhcnJheSBvZiBjbGFzc2VzIG9uIHRoZSBub2RlXG5leHBvcnQgZnVuY3Rpb24gY2xhc3NlcygpIHtcbiAgY29uc3QgYXR0ciA9IHRoaXMuYXR0cignY2xhc3MnKVxuICByZXR1cm4gYXR0ciA9PSBudWxsID8gW10gOiBhdHRyLnRyaW0oKS5zcGxpdChkZWxpbWl0ZXIpXG59XG5cbi8vIFJldHVybiB0cnVlIGlmIGNsYXNzIGV4aXN0cyBvbiB0aGUgbm9kZSwgZmFsc2Ugb3RoZXJ3aXNlXG5leHBvcnQgZnVuY3Rpb24gaGFzQ2xhc3MobmFtZSkge1xuICByZXR1cm4gdGhpcy5jbGFzc2VzKCkuaW5kZXhPZihuYW1lKSAhPT0gLTFcbn1cblxuLy8gQWRkIGNsYXNzIHRvIHRoZSBub2RlXG5leHBvcnQgZnVuY3Rpb24gYWRkQ2xhc3MobmFtZSkge1xuICBpZiAoIXRoaXMuaGFzQ2xhc3MobmFtZSkpIHtcbiAgICBjb25zdCBhcnJheSA9IHRoaXMuY2xhc3NlcygpXG4gICAgYXJyYXkucHVzaChuYW1lKVxuICAgIHRoaXMuYXR0cignY2xhc3MnLCBhcnJheS5qb2luKCcgJykpXG4gIH1cblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBSZW1vdmUgY2xhc3MgZnJvbSB0aGUgbm9kZVxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUNsYXNzKG5hbWUpIHtcbiAgaWYgKHRoaXMuaGFzQ2xhc3MobmFtZSkpIHtcbiAgICB0aGlzLmF0dHIoXG4gICAgICAnY2xhc3MnLFxuICAgICAgdGhpcy5jbGFzc2VzKClcbiAgICAgICAgLmZpbHRlcihmdW5jdGlvbiAoYykge1xuICAgICAgICAgIHJldHVybiBjICE9PSBuYW1lXG4gICAgICAgIH0pXG4gICAgICAgIC5qb2luKCcgJylcbiAgICApXG4gIH1cblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBUb2dnbGUgdGhlIHByZXNlbmNlIG9mIGEgY2xhc3Mgb24gdGhlIG5vZGVcbmV4cG9ydCBmdW5jdGlvbiB0b2dnbGVDbGFzcyhuYW1lKSB7XG4gIHJldHVybiB0aGlzLmhhc0NsYXNzKG5hbWUpID8gdGhpcy5yZW1vdmVDbGFzcyhuYW1lKSA6IHRoaXMuYWRkQ2xhc3MobmFtZSlcbn1cblxucmVnaXN0ZXJNZXRob2RzKCdEb20nLCB7XG4gIGNsYXNzZXMsXG4gIGhhc0NsYXNzLFxuICBhZGRDbGFzcyxcbiAgcmVtb3ZlQ2xhc3MsXG4gIHRvZ2dsZUNsYXNzXG59KVxuIiwgImltcG9ydCB7IGlzQmxhbmsgfSBmcm9tICcuLi9jb3JlL3JlZ2V4LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vLi4vdXRpbHMvbWV0aG9kcy5qcydcblxuLy8gRHluYW1pYyBzdHlsZSBnZW5lcmF0b3JcbmV4cG9ydCBmdW5jdGlvbiBjc3Moc3R5bGUsIHZhbCkge1xuICBjb25zdCByZXQgPSB7fVxuICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgIC8vIGdldCBmdWxsIHN0eWxlIGFzIG9iamVjdFxuICAgIHRoaXMubm9kZS5zdHlsZS5jc3NUZXh0XG4gICAgICAuc3BsaXQoL1xccyo7XFxzKi8pXG4gICAgICAuZmlsdGVyKGZ1bmN0aW9uIChlbCkge1xuICAgICAgICByZXR1cm4gISFlbC5sZW5ndGhcbiAgICAgIH0pXG4gICAgICAuZm9yRWFjaChmdW5jdGlvbiAoZWwpIHtcbiAgICAgICAgY29uc3QgdCA9IGVsLnNwbGl0KC9cXHMqOlxccyovKVxuICAgICAgICByZXRbdFswXV0gPSB0WzFdXG4gICAgICB9KVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGlmIChhcmd1bWVudHMubGVuZ3RoIDwgMikge1xuICAgIC8vIGdldCBzdHlsZSBwcm9wZXJ0aWVzIGFzIGFycmF5XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoc3R5bGUpKSB7XG4gICAgICBmb3IgKGNvbnN0IG5hbWUgb2Ygc3R5bGUpIHtcbiAgICAgICAgY29uc3QgY2FzZWQgPSBuYW1lXG4gICAgICAgIHJldFtuYW1lXSA9IHRoaXMubm9kZS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKGNhc2VkKVxuICAgICAgfVxuICAgICAgcmV0dXJuIHJldFxuICAgIH1cblxuICAgIC8vIGdldCBzdHlsZSBmb3IgcHJvcGVydHlcbiAgICBpZiAodHlwZW9mIHN0eWxlID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIHRoaXMubm9kZS5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKHN0eWxlKVxuICAgIH1cblxuICAgIC8vIHNldCBzdHlsZXMgaW4gb2JqZWN0XG4gICAgaWYgKHR5cGVvZiBzdHlsZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGZvciAoY29uc3QgbmFtZSBpbiBzdHlsZSkge1xuICAgICAgICAvLyBzZXQgZW1wdHkgc3RyaW5nIGlmIG51bGwvdW5kZWZpbmVkLycnIHdhcyBnaXZlblxuICAgICAgICB0aGlzLm5vZGUuc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBzdHlsZVtuYW1lXSA9PSBudWxsIHx8IGlzQmxhbmsudGVzdChzdHlsZVtuYW1lXSkgPyAnJyA6IHN0eWxlW25hbWVdXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzZXQgc3R5bGUgZm9yIHByb3BlcnR5XG4gIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAyKSB7XG4gICAgdGhpcy5ub2RlLnN0eWxlLnNldFByb3BlcnR5KFxuICAgICAgc3R5bGUsXG4gICAgICB2YWwgPT0gbnVsbCB8fCBpc0JsYW5rLnRlc3QodmFsKSA/ICcnIDogdmFsXG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gU2hvdyBlbGVtZW50XG5leHBvcnQgZnVuY3Rpb24gc2hvdygpIHtcbiAgcmV0dXJuIHRoaXMuY3NzKCdkaXNwbGF5JywgJycpXG59XG5cbi8vIEhpZGUgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIGhpZGUoKSB7XG4gIHJldHVybiB0aGlzLmNzcygnZGlzcGxheScsICdub25lJylcbn1cblxuLy8gSXMgZWxlbWVudCB2aXNpYmxlP1xuZXhwb3J0IGZ1bmN0aW9uIHZpc2libGUoKSB7XG4gIHJldHVybiB0aGlzLmNzcygnZGlzcGxheScpICE9PSAnbm9uZSdcbn1cblxucmVnaXN0ZXJNZXRob2RzKCdEb20nLCB7XG4gIGNzcyxcbiAgc2hvdyxcbiAgaGlkZSxcbiAgdmlzaWJsZVxufSlcbiIsICJpbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi8uLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICcuLi8uLi91dGlscy91dGlscy5qcydcblxuLy8gU3RvcmUgZGF0YSB2YWx1ZXMgb24gc3ZnIG5vZGVzXG5leHBvcnQgZnVuY3Rpb24gZGF0YShhLCB2LCByKSB7XG4gIGlmIChhID09IG51bGwpIHtcbiAgICAvLyBnZXQgYW4gb2JqZWN0IG9mIGF0dHJpYnV0ZXNcbiAgICByZXR1cm4gdGhpcy5kYXRhKFxuICAgICAgbWFwKFxuICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgdGhpcy5ub2RlLmF0dHJpYnV0ZXMsXG4gICAgICAgICAgKGVsKSA9PiBlbC5ub2RlTmFtZS5pbmRleE9mKCdkYXRhLScpID09PSAwXG4gICAgICAgICksXG4gICAgICAgIChlbCkgPT4gZWwubm9kZU5hbWUuc2xpY2UoNSlcbiAgICAgIClcbiAgICApXG4gIH0gZWxzZSBpZiAoYSBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgY29uc3QgZGF0YSA9IHt9XG4gICAgZm9yIChjb25zdCBrZXkgb2YgYSkge1xuICAgICAgZGF0YVtrZXldID0gdGhpcy5kYXRhKGtleSlcbiAgICB9XG4gICAgcmV0dXJuIGRhdGFcbiAgfSBlbHNlIGlmICh0eXBlb2YgYSA9PT0gJ29iamVjdCcpIHtcbiAgICBmb3IgKHYgaW4gYSkge1xuICAgICAgdGhpcy5kYXRhKHYsIGFbdl0pXG4gICAgfVxuICB9IGVsc2UgaWYgKGFyZ3VtZW50cy5sZW5ndGggPCAyKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHRoaXMuYXR0cignZGF0YS0nICsgYSkpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIHRoaXMuYXR0cignZGF0YS0nICsgYSlcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgdGhpcy5hdHRyKFxuICAgICAgJ2RhdGEtJyArIGEsXG4gICAgICB2ID09PSBudWxsXG4gICAgICAgID8gbnVsbFxuICAgICAgICA6IHIgPT09IHRydWUgfHwgdHlwZW9mIHYgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB2ID09PSAnbnVtYmVyJ1xuICAgICAgICAgID8gdlxuICAgICAgICAgIDogSlNPTi5zdHJpbmdpZnkodilcbiAgICApXG4gIH1cblxuICByZXR1cm4gdGhpc1xufVxuXG5yZWdpc3Rlck1ldGhvZHMoJ0RvbScsIHsgZGF0YSB9KVxuIiwgImltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uLy4uL3V0aWxzL21ldGhvZHMuanMnXG5cbi8vIFJlbWVtYmVyIGFyYml0cmFyeSBkYXRhXG5leHBvcnQgZnVuY3Rpb24gcmVtZW1iZXIoaywgdikge1xuICAvLyByZW1lbWJlciBldmVyeSBpdGVtIGluIGFuIG9iamVjdCBpbmRpdmlkdWFsbHlcbiAgaWYgKHR5cGVvZiBhcmd1bWVudHNbMF0gPT09ICdvYmplY3QnKSB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gaykge1xuICAgICAgdGhpcy5yZW1lbWJlcihrZXksIGtba2V5XSlcbiAgICB9XG4gIH0gZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSkge1xuICAgIC8vIHJldHJpZXZlIG1lbW9yeVxuICAgIHJldHVybiB0aGlzLm1lbW9yeSgpW2tdXG4gIH0gZWxzZSB7XG4gICAgLy8gc3RvcmUgbWVtb3J5XG4gICAgdGhpcy5tZW1vcnkoKVtrXSA9IHZcbiAgfVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIEVyYXNlIGEgZ2l2ZW4gbWVtb3J5XG5leHBvcnQgZnVuY3Rpb24gZm9yZ2V0KCkge1xuICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgIHRoaXMuX21lbW9yeSA9IHt9XG4gIH0gZWxzZSB7XG4gICAgZm9yIChsZXQgaSA9IGFyZ3VtZW50cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgZGVsZXRlIHRoaXMubWVtb3J5KClbYXJndW1lbnRzW2ldXVxuICAgIH1cbiAgfVxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBUaGlzIHRyaWdnZXJzIGNyZWF0aW9uIG9mIGEgbmV3IGhpZGRlbiBjbGFzcyB3aGljaCBpcyBub3QgcGVyZm9ybWFudFxuLy8gSG93ZXZlciwgdGhpcyBmdW5jdGlvbiBpcyBub3QgcmFyZWx5IHVzZWQgc28gaXQgd2lsbCBub3QgaGFwcGVuIGZyZXF1ZW50bHlcbi8vIFJldHVybiBsb2NhbCBtZW1vcnkgb2JqZWN0XG5leHBvcnQgZnVuY3Rpb24gbWVtb3J5KCkge1xuICByZXR1cm4gKHRoaXMuX21lbW9yeSA9IHRoaXMuX21lbW9yeSB8fCB7fSlcbn1cblxucmVnaXN0ZXJNZXRob2RzKCdEb20nLCB7IHJlbWVtYmVyLCBmb3JnZXQsIG1lbW9yeSB9KVxuIiwgImltcG9ydCB7IGhleCwgaXNIZXgsIGlzUmdiLCByZ2IsIHdoaXRlc3BhY2UgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5cbmZ1bmN0aW9uIHNpeERpZ2l0SGV4KGhleCkge1xuICByZXR1cm4gaGV4Lmxlbmd0aCA9PT0gNFxuICAgID8gW1xuICAgICAgICAnIycsXG4gICAgICAgIGhleC5zdWJzdHJpbmcoMSwgMiksXG4gICAgICAgIGhleC5zdWJzdHJpbmcoMSwgMiksXG4gICAgICAgIGhleC5zdWJzdHJpbmcoMiwgMyksXG4gICAgICAgIGhleC5zdWJzdHJpbmcoMiwgMyksXG4gICAgICAgIGhleC5zdWJzdHJpbmcoMywgNCksXG4gICAgICAgIGhleC5zdWJzdHJpbmcoMywgNClcbiAgICAgIF0uam9pbignJylcbiAgICA6IGhleFxufVxuXG5mdW5jdGlvbiBjb21wb25lbnRIZXgoY29tcG9uZW50KSB7XG4gIGNvbnN0IGludGVnZXIgPSBNYXRoLnJvdW5kKGNvbXBvbmVudClcbiAgY29uc3QgYm91bmRlZCA9IE1hdGgubWF4KDAsIE1hdGgubWluKDI1NSwgaW50ZWdlcikpXG4gIGNvbnN0IGhleCA9IGJvdW5kZWQudG9TdHJpbmcoMTYpXG4gIHJldHVybiBoZXgubGVuZ3RoID09PSAxID8gJzAnICsgaGV4IDogaGV4XG59XG5cbmZ1bmN0aW9uIGlzKG9iamVjdCwgc3BhY2UpIHtcbiAgZm9yIChsZXQgaSA9IHNwYWNlLmxlbmd0aDsgaS0tOyApIHtcbiAgICBpZiAob2JqZWN0W3NwYWNlW2ldXSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRydWVcbn1cblxuZnVuY3Rpb24gZ2V0UGFyYW1ldGVycyhhLCBiKSB7XG4gIGNvbnN0IHBhcmFtcyA9IGlzKGEsICdyZ2InKVxuICAgID8geyBfYTogYS5yLCBfYjogYS5nLCBfYzogYS5iLCBfZDogMCwgc3BhY2U6ICdyZ2InIH1cbiAgICA6IGlzKGEsICd4eXonKVxuICAgICAgPyB7IF9hOiBhLngsIF9iOiBhLnksIF9jOiBhLnosIF9kOiAwLCBzcGFjZTogJ3h5eicgfVxuICAgICAgOiBpcyhhLCAnaHNsJylcbiAgICAgICAgPyB7IF9hOiBhLmgsIF9iOiBhLnMsIF9jOiBhLmwsIF9kOiAwLCBzcGFjZTogJ2hzbCcgfVxuICAgICAgICA6IGlzKGEsICdsYWInKVxuICAgICAgICAgID8geyBfYTogYS5sLCBfYjogYS5hLCBfYzogYS5iLCBfZDogMCwgc3BhY2U6ICdsYWInIH1cbiAgICAgICAgICA6IGlzKGEsICdsY2gnKVxuICAgICAgICAgICAgPyB7IF9hOiBhLmwsIF9iOiBhLmMsIF9jOiBhLmgsIF9kOiAwLCBzcGFjZTogJ2xjaCcgfVxuICAgICAgICAgICAgOiBpcyhhLCAnY215aycpXG4gICAgICAgICAgICAgID8geyBfYTogYS5jLCBfYjogYS5tLCBfYzogYS55LCBfZDogYS5rLCBzcGFjZTogJ2NteWsnIH1cbiAgICAgICAgICAgICAgOiB7IF9hOiAwLCBfYjogMCwgX2M6IDAsIHNwYWNlOiAncmdiJyB9XG5cbiAgcGFyYW1zLnNwYWNlID0gYiB8fCBwYXJhbXMuc3BhY2VcbiAgcmV0dXJuIHBhcmFtc1xufVxuXG5mdW5jdGlvbiBjaWVTcGFjZShzcGFjZSkge1xuICBpZiAoc3BhY2UgPT09ICdsYWInIHx8IHNwYWNlID09PSAneHl6JyB8fCBzcGFjZSA9PT0gJ2xjaCcpIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9IGVsc2Uge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG59XG5cbmZ1bmN0aW9uIGh1ZVRvUmdiKHAsIHEsIHQpIHtcbiAgaWYgKHQgPCAwKSB0ICs9IDFcbiAgaWYgKHQgPiAxKSB0IC09IDFcbiAgaWYgKHQgPCAxIC8gNikgcmV0dXJuIHAgKyAocSAtIHApICogNiAqIHRcbiAgaWYgKHQgPCAxIC8gMikgcmV0dXJuIHFcbiAgaWYgKHQgPCAyIC8gMykgcmV0dXJuIHAgKyAocSAtIHApICogKDIgLyAzIC0gdCkgKiA2XG4gIHJldHVybiBwXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbG9yIHtcbiAgY29uc3RydWN0b3IoLi4uaW5wdXRzKSB7XG4gICAgdGhpcy5pbml0KC4uLmlucHV0cylcbiAgfVxuXG4gIC8vIFRlc3QgaWYgZ2l2ZW4gdmFsdWUgaXMgYSBjb2xvclxuICBzdGF0aWMgaXNDb2xvcihjb2xvcikge1xuICAgIHJldHVybiAoXG4gICAgICBjb2xvciAmJiAoY29sb3IgaW5zdGFuY2VvZiBDb2xvciB8fCB0aGlzLmlzUmdiKGNvbG9yKSB8fCB0aGlzLnRlc3QoY29sb3IpKVxuICAgIClcbiAgfVxuXG4gIC8vIFRlc3QgaWYgZ2l2ZW4gdmFsdWUgaXMgYW4gcmdiIG9iamVjdFxuICBzdGF0aWMgaXNSZ2IoY29sb3IpIHtcbiAgICByZXR1cm4gKFxuICAgICAgY29sb3IgJiZcbiAgICAgIHR5cGVvZiBjb2xvci5yID09PSAnbnVtYmVyJyAmJlxuICAgICAgdHlwZW9mIGNvbG9yLmcgPT09ICdudW1iZXInICYmXG4gICAgICB0eXBlb2YgY29sb3IuYiA9PT0gJ251bWJlcidcbiAgICApXG4gIH1cblxuICAvKlxuICBHZW5lcmF0aW5nIHJhbmRvbSBjb2xvcnNcbiAgKi9cbiAgc3RhdGljIHJhbmRvbShtb2RlID0gJ3ZpYnJhbnQnLCB0KSB7XG4gICAgLy8gR2V0IHRoZSBtYXRoIG1vZHVsZXNcbiAgICBjb25zdCB7IHJhbmRvbSwgcm91bmQsIHNpbiwgUEk6IHBpIH0gPSBNYXRoXG5cbiAgICAvLyBSdW4gdGhlIGNvcnJlY3QgZ2VuZXJhdG9yXG4gICAgaWYgKG1vZGUgPT09ICd2aWJyYW50Jykge1xuICAgICAgY29uc3QgbCA9ICg4MSAtIDU3KSAqIHJhbmRvbSgpICsgNTdcbiAgICAgIGNvbnN0IGMgPSAoODMgLSA0NSkgKiByYW5kb20oKSArIDQ1XG4gICAgICBjb25zdCBoID0gMzYwICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGwsIGMsIGgsICdsY2gnKVxuICAgICAgcmV0dXJuIGNvbG9yXG4gICAgfSBlbHNlIGlmIChtb2RlID09PSAnc2luZScpIHtcbiAgICAgIHQgPSB0ID09IG51bGwgPyByYW5kb20oKSA6IHRcbiAgICAgIGNvbnN0IHIgPSByb3VuZCg4MCAqIHNpbigoMiAqIHBpICogdCkgLyAwLjUgKyAwLjAxKSArIDE1MClcbiAgICAgIGNvbnN0IGcgPSByb3VuZCg1MCAqIHNpbigoMiAqIHBpICogdCkgLyAwLjUgKyA0LjYpICsgMjAwKVxuICAgICAgY29uc3QgYiA9IHJvdW5kKDEwMCAqIHNpbigoMiAqIHBpICogdCkgLyAwLjUgKyAyLjMpICsgMTUwKVxuICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IociwgZywgYilcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSBpZiAobW9kZSA9PT0gJ3Bhc3RlbCcpIHtcbiAgICAgIGNvbnN0IGwgPSAoOTQgLSA4NikgKiByYW5kb20oKSArIDg2XG4gICAgICBjb25zdCBjID0gKDI2IC0gOSkgKiByYW5kb20oKSArIDlcbiAgICAgIGNvbnN0IGggPSAzNjAgKiByYW5kb20oKVxuICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IobCwgYywgaCwgJ2xjaCcpXG4gICAgICByZXR1cm4gY29sb3JcbiAgICB9IGVsc2UgaWYgKG1vZGUgPT09ICdkYXJrJykge1xuICAgICAgY29uc3QgbCA9IDEwICsgMTAgKiByYW5kb20oKVxuICAgICAgY29uc3QgYyA9ICgxMjUgLSA3NSkgKiByYW5kb20oKSArIDg2XG4gICAgICBjb25zdCBoID0gMzYwICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGwsIGMsIGgsICdsY2gnKVxuICAgICAgcmV0dXJuIGNvbG9yXG4gICAgfSBlbHNlIGlmIChtb2RlID09PSAncmdiJykge1xuICAgICAgY29uc3QgciA9IDI1NSAqIHJhbmRvbSgpXG4gICAgICBjb25zdCBnID0gMjU1ICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGIgPSAyNTUgKiByYW5kb20oKVxuICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IociwgZywgYilcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSBpZiAobW9kZSA9PT0gJ2xhYicpIHtcbiAgICAgIGNvbnN0IGwgPSAxMDAgKiByYW5kb20oKVxuICAgICAgY29uc3QgYSA9IDI1NiAqIHJhbmRvbSgpIC0gMTI4XG4gICAgICBjb25zdCBiID0gMjU2ICogcmFuZG9tKCkgLSAxMjhcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGwsIGEsIGIsICdsYWInKVxuICAgICAgcmV0dXJuIGNvbG9yXG4gICAgfSBlbHNlIGlmIChtb2RlID09PSAnZ3JleScpIHtcbiAgICAgIGNvbnN0IGdyZXkgPSAyNTUgKiByYW5kb20oKVxuICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IoZ3JleSwgZ3JleSwgZ3JleSlcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIHJhbmRvbSBjb2xvciBtb2RlJylcbiAgICB9XG4gIH1cblxuICAvLyBUZXN0IGlmIGdpdmVuIHZhbHVlIGlzIGEgY29sb3Igc3RyaW5nXG4gIHN0YXRpYyB0ZXN0KGNvbG9yKSB7XG4gICAgcmV0dXJuIHR5cGVvZiBjb2xvciA9PT0gJ3N0cmluZycgJiYgKGlzSGV4LnRlc3QoY29sb3IpIHx8IGlzUmdiLnRlc3QoY29sb3IpKVxuICB9XG5cbiAgY215aygpIHtcbiAgICAvLyBHZXQgdGhlIHJnYiB2YWx1ZXMgZm9yIHRoZSBjdXJyZW50IGNvbG9yXG4gICAgY29uc3QgeyBfYSwgX2IsIF9jIH0gPSB0aGlzLnJnYigpXG4gICAgY29uc3QgW3IsIGcsIGJdID0gW19hLCBfYiwgX2NdLm1hcCgodikgPT4gdiAvIDI1NSlcblxuICAgIC8vIEdldCB0aGUgY215ayB2YWx1ZXMgaW4gYW4gdW5ib3VuZGVkIGZvcm1hdFxuICAgIGNvbnN0IGsgPSBNYXRoLm1pbigxIC0gciwgMSAtIGcsIDEgLSBiKVxuXG4gICAgaWYgKGsgPT09IDEpIHtcbiAgICAgIC8vIENhdGNoIHRoZSBibGFjayBjYXNlXG4gICAgICByZXR1cm4gbmV3IENvbG9yKDAsIDAsIDAsIDEsICdjbXlrJylcbiAgICB9XG5cbiAgICBjb25zdCBjID0gKDEgLSByIC0gaykgLyAoMSAtIGspXG4gICAgY29uc3QgbSA9ICgxIC0gZyAtIGspIC8gKDEgLSBrKVxuICAgIGNvbnN0IHkgPSAoMSAtIGIgLSBrKSAvICgxIC0gaylcblxuICAgIC8vIENvbnN0cnVjdCB0aGUgbmV3IGNvbG9yXG4gICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IoYywgbSwgeSwgaywgJ2NteWsnKVxuICAgIHJldHVybiBjb2xvclxuICB9XG5cbiAgaHNsKCkge1xuICAgIC8vIEdldCB0aGUgcmdiIHZhbHVlc1xuICAgIGNvbnN0IHsgX2EsIF9iLCBfYyB9ID0gdGhpcy5yZ2IoKVxuICAgIGNvbnN0IFtyLCBnLCBiXSA9IFtfYSwgX2IsIF9jXS5tYXAoKHYpID0+IHYgLyAyNTUpXG5cbiAgICAvLyBGaW5kIHRoZSBtYXhpbXVtIGFuZCBtaW5pbXVtIHZhbHVlcyB0byBnZXQgdGhlIGxpZ2h0bmVzc1xuICAgIGNvbnN0IG1heCA9IE1hdGgubWF4KHIsIGcsIGIpXG4gICAgY29uc3QgbWluID0gTWF0aC5taW4ociwgZywgYilcbiAgICBjb25zdCBsID0gKG1heCArIG1pbikgLyAyXG5cbiAgICAvLyBJZiB0aGUgciwgZywgdiB2YWx1ZXMgYXJlIGlkZW50aWNhbCB0aGVuIHdlIGFyZSBncmV5XG4gICAgY29uc3QgaXNHcmV5ID0gbWF4ID09PSBtaW5cblxuICAgIC8vIENhbGN1bGF0ZSB0aGUgaHVlIGFuZCBzYXR1cmF0aW9uXG4gICAgY29uc3QgZGVsdGEgPSBtYXggLSBtaW5cbiAgICBjb25zdCBzID0gaXNHcmV5XG4gICAgICA/IDBcbiAgICAgIDogbCA+IDAuNVxuICAgICAgICA/IGRlbHRhIC8gKDIgLSBtYXggLSBtaW4pXG4gICAgICAgIDogZGVsdGEgLyAobWF4ICsgbWluKVxuICAgIGNvbnN0IGggPSBpc0dyZXlcbiAgICAgID8gMFxuICAgICAgOiBtYXggPT09IHJcbiAgICAgICAgPyAoKGcgLSBiKSAvIGRlbHRhICsgKGcgPCBiID8gNiA6IDApKSAvIDZcbiAgICAgICAgOiBtYXggPT09IGdcbiAgICAgICAgICA/ICgoYiAtIHIpIC8gZGVsdGEgKyAyKSAvIDZcbiAgICAgICAgICA6IG1heCA9PT0gYlxuICAgICAgICAgICAgPyAoKHIgLSBnKSAvIGRlbHRhICsgNCkgLyA2XG4gICAgICAgICAgICA6IDBcblxuICAgIC8vIENvbnN0cnVjdCBhbmQgcmV0dXJuIHRoZSBuZXcgY29sb3JcbiAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcigzNjAgKiBoLCAxMDAgKiBzLCAxMDAgKiBsLCAnaHNsJylcbiAgICByZXR1cm4gY29sb3JcbiAgfVxuXG4gIGluaXQoYSA9IDAsIGIgPSAwLCBjID0gMCwgZCA9IDAsIHNwYWNlID0gJ3JnYicpIHtcbiAgICAvLyBUaGlzIGNhdGNoZXMgdGhlIGNhc2Ugd2hlbiBhIGZhbHN5IHZhbHVlIGlzIHBhc3NlZCBsaWtlICcnXG4gICAgYSA9ICFhID8gMCA6IGFcblxuICAgIC8vIFJlc2V0IGFsbCB2YWx1ZXMgaW4gY2FzZSB0aGUgaW5pdCBmdW5jdGlvbiBpcyByZXJ1biB3aXRoIG5ldyBjb2xvciBzcGFjZVxuICAgIGlmICh0aGlzLnNwYWNlKSB7XG4gICAgICBmb3IgKGNvbnN0IGNvbXBvbmVudCBpbiB0aGlzLnNwYWNlKSB7XG4gICAgICAgIGRlbGV0ZSB0aGlzW3RoaXMuc3BhY2VbY29tcG9uZW50XV1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGEgPT09ICdudW1iZXInKSB7XG4gICAgICAvLyBBbGxvdyBmb3IgdGhlIGNhc2UgdGhhdCB3ZSBkb24ndCBuZWVkIGQuLi5cbiAgICAgIHNwYWNlID0gdHlwZW9mIGQgPT09ICdzdHJpbmcnID8gZCA6IHNwYWNlXG4gICAgICBkID0gdHlwZW9mIGQgPT09ICdzdHJpbmcnID8gMCA6IGRcblxuICAgICAgLy8gQXNzaWduIHRoZSB2YWx1ZXMgc3RyYWlnaHQgdG8gdGhlIGNvbG9yXG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMsIHsgX2E6IGEsIF9iOiBiLCBfYzogYywgX2Q6IGQsIHNwYWNlIH0pXG4gICAgICAvLyBJZiB0aGUgdXNlciBnYXZlIHVzIGFuIGFycmF5LCBtYWtlIHRoZSBjb2xvciBmcm9tIGl0XG4gICAgfSBlbHNlIGlmIChhIGluc3RhbmNlb2YgQXJyYXkpIHtcbiAgICAgIHRoaXMuc3BhY2UgPSBiIHx8ICh0eXBlb2YgYVszXSA9PT0gJ3N0cmluZycgPyBhWzNdIDogYVs0XSkgfHwgJ3JnYidcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgeyBfYTogYVswXSwgX2I6IGFbMV0sIF9jOiBhWzJdLCBfZDogYVszXSB8fCAwIH0pXG4gICAgfSBlbHNlIGlmIChhIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICAvLyBTZXQgdGhlIG9iamVjdCB1cCBhbmQgYXNzaWduIGl0cyB2YWx1ZXMgZGlyZWN0bHlcbiAgICAgIGNvbnN0IHZhbHVlcyA9IGdldFBhcmFtZXRlcnMoYSwgYilcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgdmFsdWVzKVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoaXNSZ2IudGVzdChhKSkge1xuICAgICAgICBjb25zdCBub1doaXRlc3BhY2UgPSBhLnJlcGxhY2Uod2hpdGVzcGFjZSwgJycpXG4gICAgICAgIGNvbnN0IFtfYSwgX2IsIF9jXSA9IHJnYlxuICAgICAgICAgIC5leGVjKG5vV2hpdGVzcGFjZSlcbiAgICAgICAgICAuc2xpY2UoMSwgNClcbiAgICAgICAgICAubWFwKCh2KSA9PiBwYXJzZUludCh2KSlcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCB7IF9hLCBfYiwgX2MsIF9kOiAwLCBzcGFjZTogJ3JnYicgfSlcbiAgICAgIH0gZWxzZSBpZiAoaXNIZXgudGVzdChhKSkge1xuICAgICAgICBjb25zdCBoZXhQYXJzZSA9ICh2KSA9PiBwYXJzZUludCh2LCAxNilcbiAgICAgICAgY29uc3QgWywgX2EsIF9iLCBfY10gPSBoZXguZXhlYyhzaXhEaWdpdEhleChhKSkubWFwKGhleFBhcnNlKVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIHsgX2EsIF9iLCBfYywgX2Q6IDAsIHNwYWNlOiAncmdiJyB9KVxuICAgICAgfSBlbHNlIHRocm93IEVycm9yKFwiVW5zdXBwb3J0ZWQgc3RyaW5nIGZvcm1hdCwgY2FuJ3QgY29uc3RydWN0IENvbG9yXCIpXG4gICAgfVxuXG4gICAgLy8gTm93IGFkZCB0aGUgY29tcG9uZW50cyBhcyBhIGNvbnZlbmllbmNlXG4gICAgY29uc3QgeyBfYSwgX2IsIF9jLCBfZCB9ID0gdGhpc1xuICAgIGNvbnN0IGNvbXBvbmVudHMgPVxuICAgICAgdGhpcy5zcGFjZSA9PT0gJ3JnYidcbiAgICAgICAgPyB7IHI6IF9hLCBnOiBfYiwgYjogX2MgfVxuICAgICAgICA6IHRoaXMuc3BhY2UgPT09ICd4eXonXG4gICAgICAgICAgPyB7IHg6IF9hLCB5OiBfYiwgejogX2MgfVxuICAgICAgICAgIDogdGhpcy5zcGFjZSA9PT0gJ2hzbCdcbiAgICAgICAgICAgID8geyBoOiBfYSwgczogX2IsIGw6IF9jIH1cbiAgICAgICAgICAgIDogdGhpcy5zcGFjZSA9PT0gJ2xhYidcbiAgICAgICAgICAgICAgPyB7IGw6IF9hLCBhOiBfYiwgYjogX2MgfVxuICAgICAgICAgICAgICA6IHRoaXMuc3BhY2UgPT09ICdsY2gnXG4gICAgICAgICAgICAgICAgPyB7IGw6IF9hLCBjOiBfYiwgaDogX2MgfVxuICAgICAgICAgICAgICAgIDogdGhpcy5zcGFjZSA9PT0gJ2NteWsnXG4gICAgICAgICAgICAgICAgICA/IHsgYzogX2EsIG06IF9iLCB5OiBfYywgazogX2QgfVxuICAgICAgICAgICAgICAgICAgOiB7fVxuICAgIE9iamVjdC5hc3NpZ24odGhpcywgY29tcG9uZW50cylcbiAgfVxuXG4gIGxhYigpIHtcbiAgICAvLyBHZXQgdGhlIHh5eiBjb2xvclxuICAgIGNvbnN0IHsgeCwgeSwgeiB9ID0gdGhpcy54eXooKVxuXG4gICAgLy8gR2V0IHRoZSBsYWIgY29tcG9uZW50c1xuICAgIGNvbnN0IGwgPSAxMTYgKiB5IC0gMTZcbiAgICBjb25zdCBhID0gNTAwICogKHggLSB5KVxuICAgIGNvbnN0IGIgPSAyMDAgKiAoeSAtIHopXG5cbiAgICAvLyBDb25zdHJ1Y3QgYW5kIHJldHVybiBhIG5ldyBjb2xvclxuICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGwsIGEsIGIsICdsYWInKVxuICAgIHJldHVybiBjb2xvclxuICB9XG5cbiAgbGNoKCkge1xuICAgIC8vIEdldCB0aGUgbGFiIGNvbG9yIGRpcmVjdGx5XG4gICAgY29uc3QgeyBsLCBhLCBiIH0gPSB0aGlzLmxhYigpXG5cbiAgICAvLyBHZXQgdGhlIGNocm9tYXRpY2l0eSBhbmQgdGhlIGh1ZSB1c2luZyBwb2xhciBjb29yZGluYXRlc1xuICAgIGNvbnN0IGMgPSBNYXRoLnNxcnQoYSAqKiAyICsgYiAqKiAyKVxuICAgIGxldCBoID0gKDE4MCAqIE1hdGguYXRhbjIoYiwgYSkpIC8gTWF0aC5QSVxuICAgIGlmIChoIDwgMCkge1xuICAgICAgaCAqPSAtMVxuICAgICAgaCA9IDM2MCAtIGhcbiAgICB9XG5cbiAgICAvLyBNYWtlIGEgbmV3IGNvbG9yIGFuZCByZXR1cm4gaXRcbiAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcihsLCBjLCBoLCAnbGNoJylcbiAgICByZXR1cm4gY29sb3JcbiAgfVxuICAvKlxuICBDb252ZXJzaW9uIE1ldGhvZHNcbiAgKi9cblxuICByZ2IoKSB7XG4gICAgaWYgKHRoaXMuc3BhY2UgPT09ICdyZ2InKSB7XG4gICAgICByZXR1cm4gdGhpc1xuICAgIH0gZWxzZSBpZiAoY2llU3BhY2UodGhpcy5zcGFjZSkpIHtcbiAgICAgIC8vIENvbnZlcnQgdG8gdGhlIHh5eiBjb2xvciBzcGFjZVxuICAgICAgbGV0IHsgeCwgeSwgeiB9ID0gdGhpc1xuICAgICAgaWYgKHRoaXMuc3BhY2UgPT09ICdsYWInIHx8IHRoaXMuc3BhY2UgPT09ICdsY2gnKSB7XG4gICAgICAgIC8vIEdldCB0aGUgdmFsdWVzIGluIHRoZSBsYWIgc3BhY2VcbiAgICAgICAgbGV0IHsgbCwgYSwgYiB9ID0gdGhpc1xuICAgICAgICBpZiAodGhpcy5zcGFjZSA9PT0gJ2xjaCcpIHtcbiAgICAgICAgICBjb25zdCB7IGMsIGggfSA9IHRoaXNcbiAgICAgICAgICBjb25zdCBkVG9SID0gTWF0aC5QSSAvIDE4MFxuICAgICAgICAgIGEgPSBjICogTWF0aC5jb3MoZFRvUiAqIGgpXG4gICAgICAgICAgYiA9IGMgKiBNYXRoLnNpbihkVG9SICogaClcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFVuZG8gdGhlIG5vbmxpbmVhciBmdW5jdGlvblxuICAgICAgICBjb25zdCB5TCA9IChsICsgMTYpIC8gMTE2XG4gICAgICAgIGNvbnN0IHhMID0gYSAvIDUwMCArIHlMXG4gICAgICAgIGNvbnN0IHpMID0geUwgLSBiIC8gMjAwXG5cbiAgICAgICAgLy8gR2V0IHRoZSB4eXogdmFsdWVzXG4gICAgICAgIGNvbnN0IGN0ID0gMTYgLyAxMTZcbiAgICAgICAgY29uc3QgbXggPSAwLjAwODg1NlxuICAgICAgICBjb25zdCBubSA9IDcuNzg3XG4gICAgICAgIHggPSAwLjk1MDQ3ICogKHhMICoqIDMgPiBteCA/IHhMICoqIDMgOiAoeEwgLSBjdCkgLyBubSlcbiAgICAgICAgeSA9IDEuMCAqICh5TCAqKiAzID4gbXggPyB5TCAqKiAzIDogKHlMIC0gY3QpIC8gbm0pXG4gICAgICAgIHogPSAxLjA4ODgzICogKHpMICoqIDMgPiBteCA/IHpMICoqIDMgOiAoekwgLSBjdCkgLyBubSlcbiAgICAgIH1cblxuICAgICAgLy8gQ29udmVydCB4eXogdG8gdW5ib3VuZGVkIHJnYiB2YWx1ZXNcbiAgICAgIGNvbnN0IHJVID0geCAqIDMuMjQwNiArIHkgKiAtMS41MzcyICsgeiAqIC0wLjQ5ODZcbiAgICAgIGNvbnN0IGdVID0geCAqIC0wLjk2ODkgKyB5ICogMS44NzU4ICsgeiAqIDAuMDQxNVxuICAgICAgY29uc3QgYlUgPSB4ICogMC4wNTU3ICsgeSAqIC0wLjIwNCArIHogKiAxLjA1N1xuXG4gICAgICAvLyBDb252ZXJ0IHRoZSB2YWx1ZXMgdG8gdHJ1ZSByZ2IgdmFsdWVzXG4gICAgICBjb25zdCBwb3cgPSBNYXRoLnBvd1xuICAgICAgY29uc3QgYmQgPSAwLjAwMzEzMDhcbiAgICAgIGNvbnN0IHIgPSByVSA+IGJkID8gMS4wNTUgKiBwb3coclUsIDEgLyAyLjQpIC0gMC4wNTUgOiAxMi45MiAqIHJVXG4gICAgICBjb25zdCBnID0gZ1UgPiBiZCA/IDEuMDU1ICogcG93KGdVLCAxIC8gMi40KSAtIDAuMDU1IDogMTIuOTIgKiBnVVxuICAgICAgY29uc3QgYiA9IGJVID4gYmQgPyAxLjA1NSAqIHBvdyhiVSwgMSAvIDIuNCkgLSAwLjA1NSA6IDEyLjkyICogYlVcblxuICAgICAgLy8gTWFrZSBhbmQgcmV0dXJuIHRoZSBjb2xvclxuICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IoMjU1ICogciwgMjU1ICogZywgMjU1ICogYilcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSBpZiAodGhpcy5zcGFjZSA9PT0gJ2hzbCcpIHtcbiAgICAgIC8vIGh0dHBzOi8vYmdyaW5zLmdpdGh1Yi5pby9UaW55Q29sb3IvZG9jcy90aW55Y29sb3IuaHRtbFxuICAgICAgLy8gR2V0IHRoZSBjdXJyZW50IGhzbCB2YWx1ZXNcbiAgICAgIGxldCB7IGgsIHMsIGwgfSA9IHRoaXNcbiAgICAgIGggLz0gMzYwXG4gICAgICBzIC89IDEwMFxuICAgICAgbCAvPSAxMDBcblxuICAgICAgLy8gSWYgd2UgYXJlIGdyZXksIHRoZW4ganVzdCBtYWtlIHRoZSBjb2xvciBkaXJlY3RseVxuICAgICAgaWYgKHMgPT09IDApIHtcbiAgICAgICAgbCAqPSAyNTVcbiAgICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IobCwgbCwgbClcbiAgICAgICAgcmV0dXJuIGNvbG9yXG4gICAgICB9XG5cbiAgICAgIC8vIFRPRE8gSSBoYXZlIG5vIGlkZWEgd2hhdCB0aGlzIGRvZXMgOkQgSWYgeW91IGZpZ3VyZSBpdCBvdXQsIHRlbGwgbWUhXG4gICAgICBjb25zdCBxID0gbCA8IDAuNSA/IGwgKiAoMSArIHMpIDogbCArIHMgLSBsICogc1xuICAgICAgY29uc3QgcCA9IDIgKiBsIC0gcVxuXG4gICAgICAvLyBHZXQgdGhlIHJnYiB2YWx1ZXNcbiAgICAgIGNvbnN0IHIgPSAyNTUgKiBodWVUb1JnYihwLCBxLCBoICsgMSAvIDMpXG4gICAgICBjb25zdCBnID0gMjU1ICogaHVlVG9SZ2IocCwgcSwgaClcbiAgICAgIGNvbnN0IGIgPSAyNTUgKiBodWVUb1JnYihwLCBxLCBoIC0gMSAvIDMpXG5cbiAgICAgIC8vIE1ha2UgYSBuZXcgY29sb3JcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKHIsIGcsIGIpXG4gICAgICByZXR1cm4gY29sb3JcbiAgICB9IGVsc2UgaWYgKHRoaXMuc3BhY2UgPT09ICdjbXlrJykge1xuICAgICAgLy8gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vZmVsaXBlc2FiaW5vLzUwNjYzMzZcbiAgICAgIC8vIEdldCB0aGUgbm9ybWFsaXNlZCBjbXlrIHZhbHVlc1xuICAgICAgY29uc3QgeyBjLCBtLCB5LCBrIH0gPSB0aGlzXG5cbiAgICAgIC8vIEdldCB0aGUgcmdiIHZhbHVlc1xuICAgICAgY29uc3QgciA9IDI1NSAqICgxIC0gTWF0aC5taW4oMSwgYyAqICgxIC0gaykgKyBrKSlcbiAgICAgIGNvbnN0IGcgPSAyNTUgKiAoMSAtIE1hdGgubWluKDEsIG0gKiAoMSAtIGspICsgaykpXG4gICAgICBjb25zdCBiID0gMjU1ICogKDEgLSBNYXRoLm1pbigxLCB5ICogKDEgLSBrKSArIGspKVxuXG4gICAgICAvLyBGb3JtIHRoZSBjb2xvciBhbmQgcmV0dXJuIGl0XG4gICAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcihyLCBnLCBiKVxuICAgICAgcmV0dXJuIGNvbG9yXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICBjb25zdCB7IF9hLCBfYiwgX2MsIF9kLCBzcGFjZSB9ID0gdGhpc1xuICAgIHJldHVybiBbX2EsIF9iLCBfYywgX2QsIHNwYWNlXVxuICB9XG5cbiAgdG9IZXgoKSB7XG4gICAgY29uc3QgW3IsIGcsIGJdID0gdGhpcy5fY2xhbXBlZCgpLm1hcChjb21wb25lbnRIZXgpXG4gICAgcmV0dXJuIGAjJHtyfSR7Z30ke2J9YFxuICB9XG5cbiAgdG9SZ2IoKSB7XG4gICAgY29uc3QgW3JWLCBnViwgYlZdID0gdGhpcy5fY2xhbXBlZCgpXG4gICAgY29uc3Qgc3RyaW5nID0gYHJnYigke3JWfSwke2dWfSwke2JWfSlgXG4gICAgcmV0dXJuIHN0cmluZ1xuICB9XG5cbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9IZXgoKVxuICB9XG5cbiAgeHl6KCkge1xuICAgIC8vIE5vcm1hbGlzZSB0aGUgcmVkLCBncmVlbiBhbmQgYmx1ZSB2YWx1ZXNcbiAgICBjb25zdCB7IF9hOiByMjU1LCBfYjogZzI1NSwgX2M6IGIyNTUgfSA9IHRoaXMucmdiKClcbiAgICBjb25zdCBbciwgZywgYl0gPSBbcjI1NSwgZzI1NSwgYjI1NV0ubWFwKCh2KSA9PiB2IC8gMjU1KVxuXG4gICAgLy8gQ29udmVydCB0byB0aGUgbGFiIHJnYiBzcGFjZVxuICAgIGNvbnN0IHJMID0gciA+IDAuMDQwNDUgPyBNYXRoLnBvdygociArIDAuMDU1KSAvIDEuMDU1LCAyLjQpIDogciAvIDEyLjkyXG4gICAgY29uc3QgZ0wgPSBnID4gMC4wNDA0NSA/IE1hdGgucG93KChnICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkgOiBnIC8gMTIuOTJcbiAgICBjb25zdCBiTCA9IGIgPiAwLjA0MDQ1ID8gTWF0aC5wb3coKGIgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSA6IGIgLyAxMi45MlxuXG4gICAgLy8gQ29udmVydCB0byB0aGUgeHl6IGNvbG9yIHNwYWNlIHdpdGhvdXQgYm91bmRpbmcgdGhlIHZhbHVlc1xuICAgIGNvbnN0IHhVID0gKHJMICogMC40MTI0ICsgZ0wgKiAwLjM1NzYgKyBiTCAqIDAuMTgwNSkgLyAwLjk1MDQ3XG4gICAgY29uc3QgeVUgPSAockwgKiAwLjIxMjYgKyBnTCAqIDAuNzE1MiArIGJMICogMC4wNzIyKSAvIDEuMFxuICAgIGNvbnN0IHpVID0gKHJMICogMC4wMTkzICsgZ0wgKiAwLjExOTIgKyBiTCAqIDAuOTUwNSkgLyAxLjA4ODgzXG5cbiAgICAvLyBHZXQgdGhlIHByb3BlciB4eXogdmFsdWVzIGJ5IGFwcGx5aW5nIHRoZSBib3VuZGluZ1xuICAgIGNvbnN0IHggPSB4VSA+IDAuMDA4ODU2ID8gTWF0aC5wb3coeFUsIDEgLyAzKSA6IDcuNzg3ICogeFUgKyAxNiAvIDExNlxuICAgIGNvbnN0IHkgPSB5VSA+IDAuMDA4ODU2ID8gTWF0aC5wb3coeVUsIDEgLyAzKSA6IDcuNzg3ICogeVUgKyAxNiAvIDExNlxuICAgIGNvbnN0IHogPSB6VSA+IDAuMDA4ODU2ID8gTWF0aC5wb3coelUsIDEgLyAzKSA6IDcuNzg3ICogelUgKyAxNiAvIDExNlxuXG4gICAgLy8gTWFrZSBhbmQgcmV0dXJuIHRoZSBjb2xvclxuICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKHgsIHksIHosICd4eXonKVxuICAgIHJldHVybiBjb2xvclxuICB9XG5cbiAgLypcbiAgSW5wdXQgYW5kIE91dHB1dCBtZXRob2RzXG4gICovXG5cbiAgX2NsYW1wZWQoKSB7XG4gICAgY29uc3QgeyBfYSwgX2IsIF9jIH0gPSB0aGlzLnJnYigpXG4gICAgY29uc3QgeyBtYXgsIG1pbiwgcm91bmQgfSA9IE1hdGhcbiAgICBjb25zdCBmb3JtYXQgPSAodikgPT4gbWF4KDAsIG1pbihyb3VuZCh2KSwgMjU1KSlcbiAgICByZXR1cm4gW19hLCBfYiwgX2NdLm1hcChmb3JtYXQpXG4gIH1cblxuICAvKlxuICBDb25zdHJ1Y3RpbmcgY29sb3JzXG4gICovXG59XG4iLCAiaW1wb3J0IE1hdHJpeCBmcm9tICcuL01hdHJpeC5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUG9pbnQge1xuICAvLyBJbml0aWFsaXplXG4gIGNvbnN0cnVjdG9yKC4uLmFyZ3MpIHtcbiAgICB0aGlzLmluaXQoLi4uYXJncylcbiAgfVxuXG4gIC8vIENsb25lIHBvaW50XG4gIGNsb25lKCkge1xuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcylcbiAgfVxuXG4gIGluaXQoeCwgeSkge1xuICAgIGNvbnN0IGJhc2UgPSB7IHg6IDAsIHk6IDAgfVxuXG4gICAgLy8gZW5zdXJlIHNvdXJjZSBhcyBvYmplY3RcbiAgICBjb25zdCBzb3VyY2UgPSBBcnJheS5pc0FycmF5KHgpXG4gICAgICA/IHsgeDogeFswXSwgeTogeFsxXSB9XG4gICAgICA6IHR5cGVvZiB4ID09PSAnb2JqZWN0J1xuICAgICAgICA/IHsgeDogeC54LCB5OiB4LnkgfVxuICAgICAgICA6IHsgeDogeCwgeTogeSB9XG5cbiAgICAvLyBtZXJnZSBzb3VyY2VcbiAgICB0aGlzLnggPSBzb3VyY2UueCA9PSBudWxsID8gYmFzZS54IDogc291cmNlLnhcbiAgICB0aGlzLnkgPSBzb3VyY2UueSA9PSBudWxsID8gYmFzZS55IDogc291cmNlLnlcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB0b0FycmF5KCkge1xuICAgIHJldHVybiBbdGhpcy54LCB0aGlzLnldXG4gIH1cblxuICB0cmFuc2Zvcm0obSkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkudHJhbnNmb3JtTyhtKVxuICB9XG5cbiAgLy8gVHJhbnNmb3JtIHBvaW50IHdpdGggbWF0cml4XG4gIHRyYW5zZm9ybU8obSkge1xuICAgIGlmICghTWF0cml4LmlzTWF0cml4TGlrZShtKSkge1xuICAgICAgbSA9IG5ldyBNYXRyaXgobSlcbiAgICB9XG5cbiAgICBjb25zdCB7IHgsIHkgfSA9IHRoaXNcblxuICAgIC8vIFBlcmZvcm0gdGhlIG1hdHJpeCBtdWx0aXBsaWNhdGlvblxuICAgIHRoaXMueCA9IG0uYSAqIHggKyBtLmMgKiB5ICsgbS5lXG4gICAgdGhpcy55ID0gbS5iICogeCArIG0uZCAqIHkgKyBtLmZcblxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBvaW50KHgsIHkpIHtcbiAgcmV0dXJuIG5ldyBQb2ludCh4LCB5KS50cmFuc2Zvcm1PKHRoaXMuc2NyZWVuQ1RNKCkuaW52ZXJzZU8oKSlcbn1cbiIsICJpbXBvcnQgeyBkZWxpbWl0ZXIgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgeyByYWRpYW5zIH0gZnJvbSAnLi4vdXRpbHMvdXRpbHMuanMnXG5pbXBvcnQgeyByZWdpc3RlciB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgRWxlbWVudCBmcm9tICcuLi9lbGVtZW50cy9FbGVtZW50LmpzJ1xuaW1wb3J0IFBvaW50IGZyb20gJy4vUG9pbnQuanMnXG5cbmZ1bmN0aW9uIGNsb3NlRW5vdWdoKGEsIGIsIHRocmVzaG9sZCkge1xuICByZXR1cm4gTWF0aC5hYnMoYiAtIGEpIDwgKHRocmVzaG9sZCB8fCAxZS02KVxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNYXRyaXgge1xuICBjb25zdHJ1Y3RvciguLi5hcmdzKSB7XG4gICAgdGhpcy5pbml0KC4uLmFyZ3MpXG4gIH1cblxuICBzdGF0aWMgZm9ybWF0VHJhbnNmb3JtcyhvKSB7XG4gICAgLy8gR2V0IGFsbCBvZiB0aGUgcGFyYW1ldGVycyByZXF1aXJlZCB0byBmb3JtIHRoZSBtYXRyaXhcbiAgICBjb25zdCBmbGlwQm90aCA9IG8uZmxpcCA9PT0gJ2JvdGgnIHx8IG8uZmxpcCA9PT0gdHJ1ZVxuICAgIGNvbnN0IGZsaXBYID0gby5mbGlwICYmIChmbGlwQm90aCB8fCBvLmZsaXAgPT09ICd4JykgPyAtMSA6IDFcbiAgICBjb25zdCBmbGlwWSA9IG8uZmxpcCAmJiAoZmxpcEJvdGggfHwgby5mbGlwID09PSAneScpID8gLTEgOiAxXG4gICAgY29uc3Qgc2tld1ggPVxuICAgICAgby5za2V3ICYmIG8uc2tldy5sZW5ndGhcbiAgICAgICAgPyBvLnNrZXdbMF1cbiAgICAgICAgOiBpc0Zpbml0ZShvLnNrZXcpXG4gICAgICAgICAgPyBvLnNrZXdcbiAgICAgICAgICA6IGlzRmluaXRlKG8uc2tld1gpXG4gICAgICAgICAgICA/IG8uc2tld1hcbiAgICAgICAgICAgIDogMFxuICAgIGNvbnN0IHNrZXdZID1cbiAgICAgIG8uc2tldyAmJiBvLnNrZXcubGVuZ3RoXG4gICAgICAgID8gby5za2V3WzFdXG4gICAgICAgIDogaXNGaW5pdGUoby5za2V3KVxuICAgICAgICAgID8gby5za2V3XG4gICAgICAgICAgOiBpc0Zpbml0ZShvLnNrZXdZKVxuICAgICAgICAgICAgPyBvLnNrZXdZXG4gICAgICAgICAgICA6IDBcbiAgICBjb25zdCBzY2FsZVggPVxuICAgICAgby5zY2FsZSAmJiBvLnNjYWxlLmxlbmd0aFxuICAgICAgICA/IG8uc2NhbGVbMF0gKiBmbGlwWFxuICAgICAgICA6IGlzRmluaXRlKG8uc2NhbGUpXG4gICAgICAgICAgPyBvLnNjYWxlICogZmxpcFhcbiAgICAgICAgICA6IGlzRmluaXRlKG8uc2NhbGVYKVxuICAgICAgICAgICAgPyBvLnNjYWxlWCAqIGZsaXBYXG4gICAgICAgICAgICA6IGZsaXBYXG4gICAgY29uc3Qgc2NhbGVZID1cbiAgICAgIG8uc2NhbGUgJiYgby5zY2FsZS5sZW5ndGhcbiAgICAgICAgPyBvLnNjYWxlWzFdICogZmxpcFlcbiAgICAgICAgOiBpc0Zpbml0ZShvLnNjYWxlKVxuICAgICAgICAgID8gby5zY2FsZSAqIGZsaXBZXG4gICAgICAgICAgOiBpc0Zpbml0ZShvLnNjYWxlWSlcbiAgICAgICAgICAgID8gby5zY2FsZVkgKiBmbGlwWVxuICAgICAgICAgICAgOiBmbGlwWVxuICAgIGNvbnN0IHNoZWFyID0gby5zaGVhciB8fCAwXG4gICAgY29uc3QgdGhldGEgPSBvLnJvdGF0ZSB8fCBvLnRoZXRhIHx8IDBcbiAgICBjb25zdCBvcmlnaW4gPSBuZXcgUG9pbnQoXG4gICAgICBvLm9yaWdpbiB8fCBvLmFyb3VuZCB8fCBvLm94IHx8IG8ub3JpZ2luWCxcbiAgICAgIG8ub3kgfHwgby5vcmlnaW5ZXG4gICAgKVxuICAgIGNvbnN0IG94ID0gb3JpZ2luLnhcbiAgICBjb25zdCBveSA9IG9yaWdpbi55XG4gICAgLy8gV2UgbmVlZCBQb2ludCB0byBiZSBpbnZhbGlkIGlmIG5vdGhpbmcgd2FzIHBhc3NlZCBiZWNhdXNlIHdlIGNhbm5vdCBkZWZhdWx0IHRvIDAgaGVyZS4gVGhhdCBpcyB3aHkgTmFOXG4gICAgY29uc3QgcG9zaXRpb24gPSBuZXcgUG9pbnQoXG4gICAgICBvLnBvc2l0aW9uIHx8IG8ucHggfHwgby5wb3NpdGlvblggfHwgTmFOLFxuICAgICAgby5weSB8fCBvLnBvc2l0aW9uWSB8fCBOYU5cbiAgICApXG4gICAgY29uc3QgcHggPSBwb3NpdGlvbi54XG4gICAgY29uc3QgcHkgPSBwb3NpdGlvbi55XG4gICAgY29uc3QgdHJhbnNsYXRlID0gbmV3IFBvaW50KFxuICAgICAgby50cmFuc2xhdGUgfHwgby50eCB8fCBvLnRyYW5zbGF0ZVgsXG4gICAgICBvLnR5IHx8IG8udHJhbnNsYXRlWVxuICAgIClcbiAgICBjb25zdCB0eCA9IHRyYW5zbGF0ZS54XG4gICAgY29uc3QgdHkgPSB0cmFuc2xhdGUueVxuICAgIGNvbnN0IHJlbGF0aXZlID0gbmV3IFBvaW50KFxuICAgICAgby5yZWxhdGl2ZSB8fCBvLnJ4IHx8IG8ucmVsYXRpdmVYLFxuICAgICAgby5yeSB8fCBvLnJlbGF0aXZlWVxuICAgIClcbiAgICBjb25zdCByeCA9IHJlbGF0aXZlLnhcbiAgICBjb25zdCByeSA9IHJlbGF0aXZlLnlcblxuICAgIC8vIFBvcHVsYXRlIGFsbCBvZiB0aGUgdmFsdWVzXG4gICAgcmV0dXJuIHtcbiAgICAgIHNjYWxlWCxcbiAgICAgIHNjYWxlWSxcbiAgICAgIHNrZXdYLFxuICAgICAgc2tld1ksXG4gICAgICBzaGVhcixcbiAgICAgIHRoZXRhLFxuICAgICAgcngsXG4gICAgICByeSxcbiAgICAgIHR4LFxuICAgICAgdHksXG4gICAgICBveCxcbiAgICAgIG95LFxuICAgICAgcHgsXG4gICAgICBweVxuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBmcm9tQXJyYXkoYSkge1xuICAgIHJldHVybiB7IGE6IGFbMF0sIGI6IGFbMV0sIGM6IGFbMl0sIGQ6IGFbM10sIGU6IGFbNF0sIGY6IGFbNV0gfVxuICB9XG5cbiAgc3RhdGljIGlzTWF0cml4TGlrZShvKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIG8uYSAhPSBudWxsIHx8XG4gICAgICBvLmIgIT0gbnVsbCB8fFxuICAgICAgby5jICE9IG51bGwgfHxcbiAgICAgIG8uZCAhPSBudWxsIHx8XG4gICAgICBvLmUgIT0gbnVsbCB8fFxuICAgICAgby5mICE9IG51bGxcbiAgICApXG4gIH1cblxuICAvLyBsZWZ0IG1hdHJpeCwgcmlnaHQgbWF0cml4LCB0YXJnZXQgbWF0cml4IHdoaWNoIGlzIG92ZXJ3cml0dGVuXG4gIHN0YXRpYyBtYXRyaXhNdWx0aXBseShsLCByLCBvKSB7XG4gICAgLy8gV29yayBvdXQgdGhlIHByb2R1Y3QgZGlyZWN0bHlcbiAgICBjb25zdCBhID0gbC5hICogci5hICsgbC5jICogci5iXG4gICAgY29uc3QgYiA9IGwuYiAqIHIuYSArIGwuZCAqIHIuYlxuICAgIGNvbnN0IGMgPSBsLmEgKiByLmMgKyBsLmMgKiByLmRcbiAgICBjb25zdCBkID0gbC5iICogci5jICsgbC5kICogci5kXG4gICAgY29uc3QgZSA9IGwuZSArIGwuYSAqIHIuZSArIGwuYyAqIHIuZlxuICAgIGNvbnN0IGYgPSBsLmYgKyBsLmIgKiByLmUgKyBsLmQgKiByLmZcblxuICAgIC8vIG1ha2Ugc3VyZSB0byB1c2UgbG9jYWwgdmFyaWFibGVzIGJlY2F1c2UgbC9yIGFuZCBvIGNvdWxkIGJlIHRoZSBzYW1lXG4gICAgby5hID0gYVxuICAgIG8uYiA9IGJcbiAgICBvLmMgPSBjXG4gICAgby5kID0gZFxuICAgIG8uZSA9IGVcbiAgICBvLmYgPSBmXG5cbiAgICByZXR1cm4gb1xuICB9XG5cbiAgYXJvdW5kKGN4LCBjeSwgbWF0cml4KSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5hcm91bmRPKGN4LCBjeSwgbWF0cml4KVxuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGFyb3VuZCBhIGNlbnRlciBwb2ludFxuICBhcm91bmRPKGN4LCBjeSwgbWF0cml4KSB7XG4gICAgY29uc3QgZHggPSBjeCB8fCAwXG4gICAgY29uc3QgZHkgPSBjeSB8fCAwXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlTygtZHgsIC1keSkubG11bHRpcGx5TyhtYXRyaXgpLnRyYW5zbGF0ZU8oZHgsIGR5KVxuICB9XG5cbiAgLy8gQ2xvbmVzIHRoaXMgbWF0cml4XG4gIGNsb25lKCkge1xuICAgIHJldHVybiBuZXcgTWF0cml4KHRoaXMpXG4gIH1cblxuICAvLyBEZWNvbXBvc2VzIHRoaXMgbWF0cml4IGludG8gaXRzIGFmZmluZSBwYXJhbWV0ZXJzXG4gIGRlY29tcG9zZShjeCA9IDAsIGN5ID0gMCkge1xuICAgIC8vIEdldCB0aGUgcGFyYW1ldGVycyBmcm9tIHRoZSBtYXRyaXhcbiAgICBjb25zdCBhID0gdGhpcy5hXG4gICAgY29uc3QgYiA9IHRoaXMuYlxuICAgIGNvbnN0IGMgPSB0aGlzLmNcbiAgICBjb25zdCBkID0gdGhpcy5kXG4gICAgY29uc3QgZSA9IHRoaXMuZVxuICAgIGNvbnN0IGYgPSB0aGlzLmZcblxuICAgIC8vIEZpZ3VyZSBvdXQgaWYgdGhlIHdpbmRpbmcgZGlyZWN0aW9uIGlzIGNsb2Nrd2lzZSBvciBjb3VudGVyY2xvY2t3aXNlXG4gICAgY29uc3QgZGV0ZXJtaW5hbnQgPSBhICogZCAtIGIgKiBjXG4gICAgY29uc3QgY2N3ID0gZGV0ZXJtaW5hbnQgPiAwID8gMSA6IC0xXG5cbiAgICAvLyBTaW5jZSB3ZSBvbmx5IHNoZWFyIGluIHgsIHdlIGNhbiB1c2UgdGhlIHggYmFzaXMgdG8gZ2V0IHRoZSB4IHNjYWxlXG4gICAgLy8gYW5kIHRoZSByb3RhdGlvbiBvZiB0aGUgcmVzdWx0aW5nIG1hdHJpeFxuICAgIGNvbnN0IHN4ID0gY2N3ICogTWF0aC5zcXJ0KGEgKiBhICsgYiAqIGIpXG4gICAgY29uc3QgdGhldGFSYWQgPSBNYXRoLmF0YW4yKGNjdyAqIGIsIGNjdyAqIGEpXG4gICAgY29uc3QgdGhldGEgPSAoMTgwIC8gTWF0aC5QSSkgKiB0aGV0YVJhZFxuICAgIGNvbnN0IGN0ID0gTWF0aC5jb3ModGhldGFSYWQpXG4gICAgY29uc3Qgc3QgPSBNYXRoLnNpbih0aGV0YVJhZClcblxuICAgIC8vIFdlIGNhbiB0aGVuIHNvbHZlIHRoZSB5IGJhc2lzIHZlY3RvciBzaW11bHRhbmVvdXNseSB0byBnZXQgdGhlIG90aGVyXG4gICAgLy8gdHdvIGFmZmluZSBwYXJhbWV0ZXJzIGRpcmVjdGx5IGZyb20gdGhlc2UgcGFyYW1ldGVyc1xuICAgIGNvbnN0IGxhbSA9IChhICogYyArIGIgKiBkKSAvIGRldGVybWluYW50XG4gICAgY29uc3Qgc3kgPSAoYyAqIHN4KSAvIChsYW0gKiBhIC0gYikgfHwgKGQgKiBzeCkgLyAobGFtICogYiArIGEpXG5cbiAgICAvLyBVc2UgdGhlIHRyYW5zbGF0aW9uc1xuICAgIGNvbnN0IHR4ID0gZSAtIGN4ICsgY3ggKiBjdCAqIHN4ICsgY3kgKiAobGFtICogY3QgKiBzeCAtIHN0ICogc3kpXG4gICAgY29uc3QgdHkgPSBmIC0gY3kgKyBjeCAqIHN0ICogc3ggKyBjeSAqIChsYW0gKiBzdCAqIHN4ICsgY3QgKiBzeSlcblxuICAgIC8vIENvbnN0cnVjdCB0aGUgZGVjb21wb3NpdGlvbiBhbmQgcmV0dXJuIGl0XG4gICAgcmV0dXJuIHtcbiAgICAgIC8vIFJldHVybiB0aGUgYWZmaW5lIHBhcmFtZXRlcnNcbiAgICAgIHNjYWxlWDogc3gsXG4gICAgICBzY2FsZVk6IHN5LFxuICAgICAgc2hlYXI6IGxhbSxcbiAgICAgIHJvdGF0ZTogdGhldGEsXG4gICAgICB0cmFuc2xhdGVYOiB0eCxcbiAgICAgIHRyYW5zbGF0ZVk6IHR5LFxuICAgICAgb3JpZ2luWDogY3gsXG4gICAgICBvcmlnaW5ZOiBjeSxcblxuICAgICAgLy8gUmV0dXJuIHRoZSBtYXRyaXggcGFyYW1ldGVyc1xuICAgICAgYTogdGhpcy5hLFxuICAgICAgYjogdGhpcy5iLFxuICAgICAgYzogdGhpcy5jLFxuICAgICAgZDogdGhpcy5kLFxuICAgICAgZTogdGhpcy5lLFxuICAgICAgZjogdGhpcy5mXG4gICAgfVxuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdHdvIG1hdHJpY2VzIGFyZSBlcXVhbFxuICBlcXVhbHMob3RoZXIpIHtcbiAgICBpZiAob3RoZXIgPT09IHRoaXMpIHJldHVybiB0cnVlXG4gICAgY29uc3QgY29tcCA9IG5ldyBNYXRyaXgob3RoZXIpXG4gICAgcmV0dXJuIChcbiAgICAgIGNsb3NlRW5vdWdoKHRoaXMuYSwgY29tcC5hKSAmJlxuICAgICAgY2xvc2VFbm91Z2godGhpcy5iLCBjb21wLmIpICYmXG4gICAgICBjbG9zZUVub3VnaCh0aGlzLmMsIGNvbXAuYykgJiZcbiAgICAgIGNsb3NlRW5vdWdoKHRoaXMuZCwgY29tcC5kKSAmJlxuICAgICAgY2xvc2VFbm91Z2godGhpcy5lLCBjb21wLmUpICYmXG4gICAgICBjbG9zZUVub3VnaCh0aGlzLmYsIGNvbXAuZilcbiAgICApXG4gIH1cblxuICAvLyBGbGlwIG1hdHJpeCBvbiB4IG9yIHksIGF0IGEgZ2l2ZW4gb2Zmc2V0XG4gIGZsaXAoYXhpcywgYXJvdW5kKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5mbGlwTyhheGlzLCBhcm91bmQpXG4gIH1cblxuICBmbGlwTyhheGlzLCBhcm91bmQpIHtcbiAgICByZXR1cm4gYXhpcyA9PT0gJ3gnXG4gICAgICA/IHRoaXMuc2NhbGVPKC0xLCAxLCBhcm91bmQsIDApXG4gICAgICA6IGF4aXMgPT09ICd5J1xuICAgICAgICA/IHRoaXMuc2NhbGVPKDEsIC0xLCAwLCBhcm91bmQpXG4gICAgICAgIDogdGhpcy5zY2FsZU8oLTEsIC0xLCBheGlzLCBhcm91bmQgfHwgYXhpcykgLy8gRGVmaW5lIGFuIHgsIHkgZmxpcCBwb2ludFxuICB9XG5cbiAgLy8gSW5pdGlhbGl6ZVxuICBpbml0KHNvdXJjZSkge1xuICAgIGNvbnN0IGJhc2UgPSBNYXRyaXguZnJvbUFycmF5KFsxLCAwLCAwLCAxLCAwLCAwXSlcblxuICAgIC8vIGVuc3VyZSBzb3VyY2UgYXMgb2JqZWN0XG4gICAgc291cmNlID1cbiAgICAgIHNvdXJjZSBpbnN0YW5jZW9mIEVsZW1lbnRcbiAgICAgICAgPyBzb3VyY2UubWF0cml4aWZ5KClcbiAgICAgICAgOiB0eXBlb2Ygc291cmNlID09PSAnc3RyaW5nJ1xuICAgICAgICAgID8gTWF0cml4LmZyb21BcnJheShzb3VyY2Uuc3BsaXQoZGVsaW1pdGVyKS5tYXAocGFyc2VGbG9hdCkpXG4gICAgICAgICAgOiBBcnJheS5pc0FycmF5KHNvdXJjZSlcbiAgICAgICAgICAgID8gTWF0cml4LmZyb21BcnJheShzb3VyY2UpXG4gICAgICAgICAgICA6IHR5cGVvZiBzb3VyY2UgPT09ICdvYmplY3QnICYmIE1hdHJpeC5pc01hdHJpeExpa2Uoc291cmNlKVxuICAgICAgICAgICAgICA/IHNvdXJjZVxuICAgICAgICAgICAgICA6IHR5cGVvZiBzb3VyY2UgPT09ICdvYmplY3QnXG4gICAgICAgICAgICAgICAgPyBuZXcgTWF0cml4KCkudHJhbnNmb3JtKHNvdXJjZSlcbiAgICAgICAgICAgICAgICA6IGFyZ3VtZW50cy5sZW5ndGggPT09IDZcbiAgICAgICAgICAgICAgICAgID8gTWF0cml4LmZyb21BcnJheShbXS5zbGljZS5jYWxsKGFyZ3VtZW50cykpXG4gICAgICAgICAgICAgICAgICA6IGJhc2VcblxuICAgIC8vIE1lcmdlIHRoZSBzb3VyY2UgbWF0cml4IHdpdGggdGhlIGJhc2UgbWF0cml4XG4gICAgdGhpcy5hID0gc291cmNlLmEgIT0gbnVsbCA/IHNvdXJjZS5hIDogYmFzZS5hXG4gICAgdGhpcy5iID0gc291cmNlLmIgIT0gbnVsbCA/IHNvdXJjZS5iIDogYmFzZS5iXG4gICAgdGhpcy5jID0gc291cmNlLmMgIT0gbnVsbCA/IHNvdXJjZS5jIDogYmFzZS5jXG4gICAgdGhpcy5kID0gc291cmNlLmQgIT0gbnVsbCA/IHNvdXJjZS5kIDogYmFzZS5kXG4gICAgdGhpcy5lID0gc291cmNlLmUgIT0gbnVsbCA/IHNvdXJjZS5lIDogYmFzZS5lXG4gICAgdGhpcy5mID0gc291cmNlLmYgIT0gbnVsbCA/IHNvdXJjZS5mIDogYmFzZS5mXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgaW52ZXJzZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLmludmVyc2VPKClcbiAgfVxuXG4gIC8vIEludmVyc2VzIG1hdHJpeFxuICBpbnZlcnNlTygpIHtcbiAgICAvLyBHZXQgdGhlIGN1cnJlbnQgcGFyYW1ldGVycyBvdXQgb2YgdGhlIG1hdHJpeFxuICAgIGNvbnN0IGEgPSB0aGlzLmFcbiAgICBjb25zdCBiID0gdGhpcy5iXG4gICAgY29uc3QgYyA9IHRoaXMuY1xuICAgIGNvbnN0IGQgPSB0aGlzLmRcbiAgICBjb25zdCBlID0gdGhpcy5lXG4gICAgY29uc3QgZiA9IHRoaXMuZlxuXG4gICAgLy8gSW52ZXJ0IHRoZSAyeDIgbWF0cml4IGluIHRoZSB0b3AgbGVmdFxuICAgIGNvbnN0IGRldCA9IGEgKiBkIC0gYiAqIGNcbiAgICBpZiAoIWRldCkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgaW52ZXJ0ICcgKyB0aGlzKVxuXG4gICAgLy8gQ2FsY3VsYXRlIHRoZSB0b3AgMngyIG1hdHJpeFxuICAgIGNvbnN0IG5hID0gZCAvIGRldFxuICAgIGNvbnN0IG5iID0gLWIgLyBkZXRcbiAgICBjb25zdCBuYyA9IC1jIC8gZGV0XG4gICAgY29uc3QgbmQgPSBhIC8gZGV0XG5cbiAgICAvLyBBcHBseSB0aGUgaW52ZXJ0ZWQgbWF0cml4IHRvIHRoZSB0b3AgcmlnaHRcbiAgICBjb25zdCBuZSA9IC0obmEgKiBlICsgbmMgKiBmKVxuICAgIGNvbnN0IG5mID0gLShuYiAqIGUgKyBuZCAqIGYpXG5cbiAgICAvLyBDb25zdHJ1Y3QgdGhlIGludmVydGVkIG1hdHJpeFxuICAgIHRoaXMuYSA9IG5hXG4gICAgdGhpcy5iID0gbmJcbiAgICB0aGlzLmMgPSBuY1xuICAgIHRoaXMuZCA9IG5kXG4gICAgdGhpcy5lID0gbmVcbiAgICB0aGlzLmYgPSBuZlxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGxtdWx0aXBseShtYXRyaXgpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLmxtdWx0aXBseU8obWF0cml4KVxuICB9XG5cbiAgbG11bHRpcGx5TyhtYXRyaXgpIHtcbiAgICBjb25zdCByID0gdGhpc1xuICAgIGNvbnN0IGwgPSBtYXRyaXggaW5zdGFuY2VvZiBNYXRyaXggPyBtYXRyaXggOiBuZXcgTWF0cml4KG1hdHJpeClcblxuICAgIHJldHVybiBNYXRyaXgubWF0cml4TXVsdGlwbHkobCwgciwgdGhpcylcbiAgfVxuXG4gIC8vIExlZnQgbXVsdGlwbGllcyBieSB0aGUgZ2l2ZW4gbWF0cml4XG4gIG11bHRpcGx5KG1hdHJpeCkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkubXVsdGlwbHlPKG1hdHJpeClcbiAgfVxuXG4gIG11bHRpcGx5TyhtYXRyaXgpIHtcbiAgICAvLyBHZXQgdGhlIG1hdHJpY2VzXG4gICAgY29uc3QgbCA9IHRoaXNcbiAgICBjb25zdCByID0gbWF0cml4IGluc3RhbmNlb2YgTWF0cml4ID8gbWF0cml4IDogbmV3IE1hdHJpeChtYXRyaXgpXG5cbiAgICByZXR1cm4gTWF0cml4Lm1hdHJpeE11bHRpcGx5KGwsIHIsIHRoaXMpXG4gIH1cblxuICAvLyBSb3RhdGUgbWF0cml4XG4gIHJvdGF0ZShyLCBjeCwgY3kpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLnJvdGF0ZU8ociwgY3gsIGN5KVxuICB9XG5cbiAgcm90YXRlTyhyLCBjeCA9IDAsIGN5ID0gMCkge1xuICAgIC8vIENvbnZlcnQgZGVncmVlcyB0byByYWRpYW5zXG4gICAgciA9IHJhZGlhbnMocilcblxuICAgIGNvbnN0IGNvcyA9IE1hdGguY29zKHIpXG4gICAgY29uc3Qgc2luID0gTWF0aC5zaW4ocilcblxuICAgIGNvbnN0IHsgYSwgYiwgYywgZCwgZSwgZiB9ID0gdGhpc1xuXG4gICAgdGhpcy5hID0gYSAqIGNvcyAtIGIgKiBzaW5cbiAgICB0aGlzLmIgPSBiICogY29zICsgYSAqIHNpblxuICAgIHRoaXMuYyA9IGMgKiBjb3MgLSBkICogc2luXG4gICAgdGhpcy5kID0gZCAqIGNvcyArIGMgKiBzaW5cbiAgICB0aGlzLmUgPSBlICogY29zIC0gZiAqIHNpbiArIGN5ICogc2luIC0gY3ggKiBjb3MgKyBjeFxuICAgIHRoaXMuZiA9IGYgKiBjb3MgKyBlICogc2luIC0gY3ggKiBzaW4gLSBjeSAqIGNvcyArIGN5XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU2NhbGUgbWF0cml4XG4gIHNjYWxlKCkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkuc2NhbGVPKC4uLmFyZ3VtZW50cylcbiAgfVxuXG4gIHNjYWxlTyh4LCB5ID0geCwgY3ggPSAwLCBjeSA9IDApIHtcbiAgICAvLyBTdXBwb3J0IHVuaWZvcm0gc2NhbGluZ1xuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAzKSB7XG4gICAgICBjeSA9IGN4XG4gICAgICBjeCA9IHlcbiAgICAgIHkgPSB4XG4gICAgfVxuXG4gICAgY29uc3QgeyBhLCBiLCBjLCBkLCBlLCBmIH0gPSB0aGlzXG5cbiAgICB0aGlzLmEgPSBhICogeFxuICAgIHRoaXMuYiA9IGIgKiB5XG4gICAgdGhpcy5jID0gYyAqIHhcbiAgICB0aGlzLmQgPSBkICogeVxuICAgIHRoaXMuZSA9IGUgKiB4IC0gY3ggKiB4ICsgY3hcbiAgICB0aGlzLmYgPSBmICogeSAtIGN5ICogeSArIGN5XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU2hlYXIgbWF0cml4XG4gIHNoZWFyKGEsIGN4LCBjeSkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkuc2hlYXJPKGEsIGN4LCBjeSlcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuICBzaGVhck8obHgsIGN4ID0gMCwgY3kgPSAwKSB7XG4gICAgY29uc3QgeyBhLCBiLCBjLCBkLCBlLCBmIH0gPSB0aGlzXG5cbiAgICB0aGlzLmEgPSBhICsgYiAqIGx4XG4gICAgdGhpcy5jID0gYyArIGQgKiBseFxuICAgIHRoaXMuZSA9IGUgKyBmICogbHggLSBjeSAqIGx4XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU2tldyBNYXRyaXhcbiAgc2tldygpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLnNrZXdPKC4uLmFyZ3VtZW50cylcbiAgfVxuXG4gIHNrZXdPKHgsIHkgPSB4LCBjeCA9IDAsIGN5ID0gMCkge1xuICAgIC8vIHN1cHBvcnQgdW5pZm9ybWFsIHNrZXdcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykge1xuICAgICAgY3kgPSBjeFxuICAgICAgY3ggPSB5XG4gICAgICB5ID0geFxuICAgIH1cblxuICAgIC8vIENvbnZlcnQgZGVncmVlcyB0byByYWRpYW5zXG4gICAgeCA9IHJhZGlhbnMoeClcbiAgICB5ID0gcmFkaWFucyh5KVxuXG4gICAgY29uc3QgbHggPSBNYXRoLnRhbih4KVxuICAgIGNvbnN0IGx5ID0gTWF0aC50YW4oeSlcblxuICAgIGNvbnN0IHsgYSwgYiwgYywgZCwgZSwgZiB9ID0gdGhpc1xuXG4gICAgdGhpcy5hID0gYSArIGIgKiBseFxuICAgIHRoaXMuYiA9IGIgKyBhICogbHlcbiAgICB0aGlzLmMgPSBjICsgZCAqIGx4XG4gICAgdGhpcy5kID0gZCArIGMgKiBseVxuICAgIHRoaXMuZSA9IGUgKyBmICogbHggLSBjeSAqIGx4XG4gICAgdGhpcy5mID0gZiArIGUgKiBseSAtIGN4ICogbHlcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBTa2V3WFxuICBza2V3WCh4LCBjeCwgY3kpIHtcbiAgICByZXR1cm4gdGhpcy5za2V3KHgsIDAsIGN4LCBjeSlcbiAgfVxuXG4gIC8vIFNrZXdZXG4gIHNrZXdZKHksIGN4LCBjeSkge1xuICAgIHJldHVybiB0aGlzLnNrZXcoMCwgeSwgY3gsIGN5KVxuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gW3RoaXMuYSwgdGhpcy5iLCB0aGlzLmMsIHRoaXMuZCwgdGhpcy5lLCB0aGlzLmZdXG4gIH1cblxuICAvLyBDb252ZXJ0IG1hdHJpeCB0byBzdHJpbmdcbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgICdtYXRyaXgoJyArXG4gICAgICB0aGlzLmEgK1xuICAgICAgJywnICtcbiAgICAgIHRoaXMuYiArXG4gICAgICAnLCcgK1xuICAgICAgdGhpcy5jICtcbiAgICAgICcsJyArXG4gICAgICB0aGlzLmQgK1xuICAgICAgJywnICtcbiAgICAgIHRoaXMuZSArXG4gICAgICAnLCcgK1xuICAgICAgdGhpcy5mICtcbiAgICAgICcpJ1xuICAgIClcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBhIG1hdHJpeCBpbnRvIGFub3RoZXIgbWF0cml4IGJ5IG1hbmlwdWxhdGluZyB0aGUgc3BhY2VcbiAgdHJhbnNmb3JtKG8pIHtcbiAgICAvLyBDaGVjayBpZiBvIGlzIGEgbWF0cml4IGFuZCB0aGVuIGxlZnQgbXVsdGlwbHkgaXQgZGlyZWN0bHlcbiAgICBpZiAoTWF0cml4LmlzTWF0cml4TGlrZShvKSkge1xuICAgICAgY29uc3QgbWF0cml4ID0gbmV3IE1hdHJpeChvKVxuICAgICAgcmV0dXJuIG1hdHJpeC5tdWx0aXBseU8odGhpcylcbiAgICB9XG5cbiAgICAvLyBHZXQgdGhlIHByb3Bvc2VkIHRyYW5zZm9ybWF0aW9ucyBhbmQgdGhlIGN1cnJlbnQgdHJhbnNmb3JtYXRpb25zXG4gICAgY29uc3QgdCA9IE1hdHJpeC5mb3JtYXRUcmFuc2Zvcm1zKG8pXG4gICAgY29uc3QgY3VycmVudCA9IHRoaXNcbiAgICBjb25zdCB7IHg6IG94LCB5OiBveSB9ID0gbmV3IFBvaW50KHQub3gsIHQub3kpLnRyYW5zZm9ybShjdXJyZW50KVxuXG4gICAgLy8gQ29uc3RydWN0IHRoZSByZXN1bHRpbmcgbWF0cml4XG4gICAgY29uc3QgdHJhbnNmb3JtZXIgPSBuZXcgTWF0cml4KClcbiAgICAgIC50cmFuc2xhdGVPKHQucngsIHQucnkpXG4gICAgICAubG11bHRpcGx5TyhjdXJyZW50KVxuICAgICAgLnRyYW5zbGF0ZU8oLW94LCAtb3kpXG4gICAgICAuc2NhbGVPKHQuc2NhbGVYLCB0LnNjYWxlWSlcbiAgICAgIC5za2V3Tyh0LnNrZXdYLCB0LnNrZXdZKVxuICAgICAgLnNoZWFyTyh0LnNoZWFyKVxuICAgICAgLnJvdGF0ZU8odC50aGV0YSlcbiAgICAgIC50cmFuc2xhdGVPKG94LCBveSlcblxuICAgIC8vIElmIHdlIHdhbnQgdGhlIG9yaWdpbiBhdCBhIHBhcnRpY3VsYXIgcGxhY2UsIHdlIGZvcmNlIGl0IHRoZXJlXG4gICAgaWYgKGlzRmluaXRlKHQucHgpIHx8IGlzRmluaXRlKHQucHkpKSB7XG4gICAgICBjb25zdCBvcmlnaW4gPSBuZXcgUG9pbnQob3gsIG95KS50cmFuc2Zvcm0odHJhbnNmb3JtZXIpXG4gICAgICAvLyBUT0RPOiBSZXBsYWNlIHQucHggd2l0aCBpc0Zpbml0ZSh0LnB4KVxuICAgICAgLy8gRG9lc24ndCB3b3JrIGJlY2F1c2UgdC5weCBpcyBhbHNvIDAgaWYgaXQgd2Fzbid0IHBhc3NlZFxuICAgICAgY29uc3QgZHggPSBpc0Zpbml0ZSh0LnB4KSA/IHQucHggLSBvcmlnaW4ueCA6IDBcbiAgICAgIGNvbnN0IGR5ID0gaXNGaW5pdGUodC5weSkgPyB0LnB5IC0gb3JpZ2luLnkgOiAwXG4gICAgICB0cmFuc2Zvcm1lci50cmFuc2xhdGVPKGR4LCBkeSlcbiAgICB9XG5cbiAgICAvLyBUcmFuc2xhdGUgbm93IGFmdGVyIHBvc2l0aW9uaW5nXG4gICAgdHJhbnNmb3JtZXIudHJhbnNsYXRlTyh0LnR4LCB0LnR5KVxuICAgIHJldHVybiB0cmFuc2Zvcm1lclxuICB9XG5cbiAgLy8gVHJhbnNsYXRlIG1hdHJpeFxuICB0cmFuc2xhdGUoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkudHJhbnNsYXRlTyh4LCB5KVxuICB9XG5cbiAgdHJhbnNsYXRlTyh4LCB5KSB7XG4gICAgdGhpcy5lICs9IHggfHwgMFxuICAgIHRoaXMuZiArPSB5IHx8IDBcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdmFsdWVPZigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgYTogdGhpcy5hLFxuICAgICAgYjogdGhpcy5iLFxuICAgICAgYzogdGhpcy5jLFxuICAgICAgZDogdGhpcy5kLFxuICAgICAgZTogdGhpcy5lLFxuICAgICAgZjogdGhpcy5mXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjdG0oKSB7XG4gIHJldHVybiBuZXcgTWF0cml4KHRoaXMubm9kZS5nZXRDVE0oKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNjcmVlbkNUTSgpIHtcbiAgdHJ5IHtcbiAgICAvKiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ0NTM3XG4gICAgICAgVGhpcyBpcyBuZWVkZWQgYmVjYXVzZSBGRiBkb2VzIG5vdCByZXR1cm4gdGhlIHRyYW5zZm9ybWF0aW9uIG1hdHJpeFxuICAgICAgIGZvciB0aGUgaW5uZXIgY29vcmRpbmF0ZSBzeXN0ZW0gd2hlbiBnZXRTY3JlZW5DVE0oKSBpcyBjYWxsZWQgb24gbmVzdGVkIHN2Z3MuXG4gICAgICAgSG93ZXZlciBhbGwgb3RoZXIgQnJvd3NlcnMgZG8gdGhhdCAqL1xuICAgIGlmICh0eXBlb2YgdGhpcy5pc1Jvb3QgPT09ICdmdW5jdGlvbicgJiYgIXRoaXMuaXNSb290KCkpIHtcbiAgICAgIGNvbnN0IHJlY3QgPSB0aGlzLnJlY3QoMSwgMSlcbiAgICAgIGNvbnN0IG0gPSByZWN0Lm5vZGUuZ2V0U2NyZWVuQ1RNKClcbiAgICAgIHJlY3QucmVtb3ZlKClcbiAgICAgIHJldHVybiBuZXcgTWF0cml4KG0pXG4gICAgfVxuICAgIHJldHVybiBuZXcgTWF0cml4KHRoaXMubm9kZS5nZXRTY3JlZW5DVE0oKSlcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUud2FybihcbiAgICAgIGBDYW5ub3QgZ2V0IENUTSBmcm9tIFNWRyBub2RlICR7dGhpcy5ub2RlLm5vZGVOYW1lfS4gSXMgdGhlIGVsZW1lbnQgcmVuZGVyZWQ/YFxuICAgIClcbiAgICByZXR1cm4gbmV3IE1hdHJpeCgpXG4gIH1cbn1cblxucmVnaXN0ZXIoTWF0cml4LCAnTWF0cml4JylcbiIsICJpbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vLi4vdXRpbHMvd2luZG93LmpzJ1xuaW1wb3J0IHsgbWFrZUluc3RhbmNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvYWRvcHRlci5qcydcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcGFyc2VyKCkge1xuICAvLyBSZXVzZSBjYWNoZWQgZWxlbWVudCBpZiBwb3NzaWJsZVxuICBpZiAoIXBhcnNlci5ub2Rlcykge1xuICAgIGNvbnN0IHN2ZyA9IG1ha2VJbnN0YW5jZSgpLnNpemUoMiwgMClcbiAgICBzdmcubm9kZS5zdHlsZS5jc3NUZXh0ID0gW1xuICAgICAgJ29wYWNpdHk6IDAnLFxuICAgICAgJ3Bvc2l0aW9uOiBhYnNvbHV0ZScsXG4gICAgICAnbGVmdDogLTEwMCUnLFxuICAgICAgJ3RvcDogLTEwMCUnLFxuICAgICAgJ292ZXJmbG93OiBoaWRkZW4nXG4gICAgXS5qb2luKCc7JylcblxuICAgIHN2Zy5hdHRyKCdmb2N1c2FibGUnLCAnZmFsc2UnKVxuICAgIHN2Zy5hdHRyKCdhcmlhLWhpZGRlbicsICd0cnVlJylcblxuICAgIGNvbnN0IHBhdGggPSBzdmcucGF0aCgpLm5vZGVcblxuICAgIHBhcnNlci5ub2RlcyA9IHsgc3ZnLCBwYXRoIH1cbiAgfVxuXG4gIGlmICghcGFyc2VyLm5vZGVzLnN2Zy5ub2RlLnBhcmVudE5vZGUpIHtcbiAgICBjb25zdCBiID0gZ2xvYmFscy5kb2N1bWVudC5ib2R5IHx8IGdsb2JhbHMuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50XG4gICAgcGFyc2VyLm5vZGVzLnN2Zy5hZGRUbyhiKVxuICB9XG5cbiAgcmV0dXJuIHBhcnNlci5ub2Rlc1xufVxuIiwgImltcG9ydCB7IGRlbGltaXRlciB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9yZWdleC5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgeyByZWdpc3RlciB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IE1hdHJpeCBmcm9tICcuL01hdHJpeC5qcydcbmltcG9ydCBQb2ludCBmcm9tICcuL1BvaW50LmpzJ1xuaW1wb3J0IHBhcnNlciBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcGFyc2VyLmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gaXNOdWxsZWRCb3goYm94KSB7XG4gIHJldHVybiAhYm94LndpZHRoICYmICFib3guaGVpZ2h0ICYmICFib3gueCAmJiAhYm94Lnlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRvbUNvbnRhaW5zKG5vZGUpIHtcbiAgcmV0dXJuIChcbiAgICBub2RlID09PSBnbG9iYWxzLmRvY3VtZW50IHx8XG4gICAgKFxuICAgICAgZ2xvYmFscy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnMgfHxcbiAgICAgIGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIC8vIFRoaXMgaXMgSUUgLSBpdCBkb2VzIG5vdCBzdXBwb3J0IGNvbnRhaW5zKCkgZm9yIHRvcC1sZXZlbCBTVkdzXG4gICAgICAgIHdoaWxlIChub2RlLnBhcmVudE5vZGUpIHtcbiAgICAgICAgICBub2RlID0gbm9kZS5wYXJlbnROb2RlXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5vZGUgPT09IGdsb2JhbHMuZG9jdW1lbnRcbiAgICAgIH1cbiAgICApLmNhbGwoZ2xvYmFscy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsIG5vZGUpXG4gIClcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQm94IHtcbiAgY29uc3RydWN0b3IoLi4uYXJncykge1xuICAgIHRoaXMuaW5pdCguLi5hcmdzKVxuICB9XG5cbiAgYWRkT2Zmc2V0KCkge1xuICAgIC8vIG9mZnNldCBieSB3aW5kb3cgc2Nyb2xsIHBvc2l0aW9uLCBiZWNhdXNlIGdldEJvdW5kaW5nQ2xpZW50UmVjdCBjaGFuZ2VzIHdoZW4gd2luZG93IGlzIHNjcm9sbGVkXG4gICAgdGhpcy54ICs9IGdsb2JhbHMud2luZG93LnBhZ2VYT2Zmc2V0XG4gICAgdGhpcy55ICs9IGdsb2JhbHMud2luZG93LnBhZ2VZT2Zmc2V0XG4gICAgcmV0dXJuIG5ldyBCb3godGhpcylcbiAgfVxuXG4gIGluaXQoc291cmNlKSB7XG4gICAgY29uc3QgYmFzZSA9IFswLCAwLCAwLCAwXVxuICAgIHNvdXJjZSA9XG4gICAgICB0eXBlb2Ygc291cmNlID09PSAnc3RyaW5nJ1xuICAgICAgICA/IHNvdXJjZS5zcGxpdChkZWxpbWl0ZXIpLm1hcChwYXJzZUZsb2F0KVxuICAgICAgICA6IEFycmF5LmlzQXJyYXkoc291cmNlKVxuICAgICAgICAgID8gc291cmNlXG4gICAgICAgICAgOiB0eXBlb2Ygc291cmNlID09PSAnb2JqZWN0J1xuICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgc291cmNlLmxlZnQgIT0gbnVsbCA/IHNvdXJjZS5sZWZ0IDogc291cmNlLngsXG4gICAgICAgICAgICAgICAgc291cmNlLnRvcCAhPSBudWxsID8gc291cmNlLnRvcCA6IHNvdXJjZS55LFxuICAgICAgICAgICAgICAgIHNvdXJjZS53aWR0aCxcbiAgICAgICAgICAgICAgICBzb3VyY2UuaGVpZ2h0XG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIDogYXJndW1lbnRzLmxlbmd0aCA9PT0gNFxuICAgICAgICAgICAgICA/IFtdLnNsaWNlLmNhbGwoYXJndW1lbnRzKVxuICAgICAgICAgICAgICA6IGJhc2VcblxuICAgIHRoaXMueCA9IHNvdXJjZVswXSB8fCAwXG4gICAgdGhpcy55ID0gc291cmNlWzFdIHx8IDBcbiAgICB0aGlzLndpZHRoID0gdGhpcy53ID0gc291cmNlWzJdIHx8IDBcbiAgICB0aGlzLmhlaWdodCA9IHRoaXMuaCA9IHNvdXJjZVszXSB8fCAwXG5cbiAgICAvLyBBZGQgbW9yZSBib3VuZGluZyBib3ggcHJvcGVydGllc1xuICAgIHRoaXMueDIgPSB0aGlzLnggKyB0aGlzLndcbiAgICB0aGlzLnkyID0gdGhpcy55ICsgdGhpcy5oXG4gICAgdGhpcy5jeCA9IHRoaXMueCArIHRoaXMudyAvIDJcbiAgICB0aGlzLmN5ID0gdGhpcy55ICsgdGhpcy5oIC8gMlxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGlzTnVsbGVkKCkge1xuICAgIHJldHVybiBpc051bGxlZEJveCh0aGlzKVxuICB9XG5cbiAgLy8gTWVyZ2UgcmVjdCBib3ggd2l0aCBhbm90aGVyLCByZXR1cm4gYSBuZXcgaW5zdGFuY2VcbiAgbWVyZ2UoYm94KSB7XG4gICAgY29uc3QgeCA9IE1hdGgubWluKHRoaXMueCwgYm94LngpXG4gICAgY29uc3QgeSA9IE1hdGgubWluKHRoaXMueSwgYm94LnkpXG4gICAgY29uc3Qgd2lkdGggPSBNYXRoLm1heCh0aGlzLnggKyB0aGlzLndpZHRoLCBib3gueCArIGJveC53aWR0aCkgLSB4XG4gICAgY29uc3QgaGVpZ2h0ID0gTWF0aC5tYXgodGhpcy55ICsgdGhpcy5oZWlnaHQsIGJveC55ICsgYm94LmhlaWdodCkgLSB5XG5cbiAgICByZXR1cm4gbmV3IEJveCh4LCB5LCB3aWR0aCwgaGVpZ2h0KVxuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gW3RoaXMueCwgdGhpcy55LCB0aGlzLndpZHRoLCB0aGlzLmhlaWdodF1cbiAgfVxuXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnggKyAnICcgKyB0aGlzLnkgKyAnICcgKyB0aGlzLndpZHRoICsgJyAnICsgdGhpcy5oZWlnaHRcbiAgfVxuXG4gIHRyYW5zZm9ybShtKSB7XG4gICAgaWYgKCEobSBpbnN0YW5jZW9mIE1hdHJpeCkpIHtcbiAgICAgIG0gPSBuZXcgTWF0cml4KG0pXG4gICAgfVxuXG4gICAgbGV0IHhNaW4gPSBJbmZpbml0eVxuICAgIGxldCB4TWF4ID0gLUluZmluaXR5XG4gICAgbGV0IHlNaW4gPSBJbmZpbml0eVxuICAgIGxldCB5TWF4ID0gLUluZmluaXR5XG5cbiAgICBjb25zdCBwdHMgPSBbXG4gICAgICBuZXcgUG9pbnQodGhpcy54LCB0aGlzLnkpLFxuICAgICAgbmV3IFBvaW50KHRoaXMueDIsIHRoaXMueSksXG4gICAgICBuZXcgUG9pbnQodGhpcy54LCB0aGlzLnkyKSxcbiAgICAgIG5ldyBQb2ludCh0aGlzLngyLCB0aGlzLnkyKVxuICAgIF1cblxuICAgIHB0cy5mb3JFYWNoKGZ1bmN0aW9uIChwKSB7XG4gICAgICBwID0gcC50cmFuc2Zvcm0obSlcbiAgICAgIHhNaW4gPSBNYXRoLm1pbih4TWluLCBwLngpXG4gICAgICB4TWF4ID0gTWF0aC5tYXgoeE1heCwgcC54KVxuICAgICAgeU1pbiA9IE1hdGgubWluKHlNaW4sIHAueSlcbiAgICAgIHlNYXggPSBNYXRoLm1heCh5TWF4LCBwLnkpXG4gICAgfSlcblxuICAgIHJldHVybiBuZXcgQm94KHhNaW4sIHlNaW4sIHhNYXggLSB4TWluLCB5TWF4IC0geU1pbilcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRCb3goZWwsIGdldEJCb3hGbiwgcmV0cnkpIHtcbiAgbGV0IGJveFxuXG4gIHRyeSB7XG4gICAgLy8gVHJ5IHRvIGdldCB0aGUgYm94IHdpdGggdGhlIHByb3ZpZGVkIGZ1bmN0aW9uXG4gICAgYm94ID0gZ2V0QkJveEZuKGVsLm5vZGUpXG5cbiAgICAvLyBJZiB0aGUgYm94IGlzIHdvcnRobGVzcyBhbmQgbm90IGV2ZW4gaW4gdGhlIGRvbSwgcmV0cnlcbiAgICAvLyBieSB0aHJvd2luZyBhbiBlcnJvciBoZXJlLi4uXG4gICAgaWYgKGlzTnVsbGVkQm94KGJveCkgJiYgIWRvbUNvbnRhaW5zKGVsLm5vZGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VsZW1lbnQgbm90IGluIHRoZSBkb20nKVxuICAgIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIC8vIC4uLiBhbmQgY2FsbGluZyB0aGUgcmV0cnkgaGFuZGxlciBoZXJlXG4gICAgYm94ID0gcmV0cnkoZWwpXG4gIH1cblxuICByZXR1cm4gYm94XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiYm94KCkge1xuICAvLyBGdW5jdGlvbiB0byBnZXQgYmJveCBpcyBnZXRCQm94KClcbiAgY29uc3QgZ2V0QkJveCA9IChub2RlKSA9PiBub2RlLmdldEJCb3goKVxuXG4gIC8vIFRha2UgYWxsIG1lYXN1cmVzIHNvIHRoYXQgYSBzdHVwaWQgYnJvd3NlciByZW5kZXJzIHRoZSBlbGVtZW50XG4gIC8vIHNvIHdlIGNhbiBnZXQgdGhlIGJib3ggZnJvbSBpdCB3aGVuIHdlIHRyeSBhZ2FpblxuICBjb25zdCByZXRyeSA9IChlbCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjbG9uZSA9IGVsLmNsb25lKCkuYWRkVG8ocGFyc2VyKCkuc3ZnKS5zaG93KClcbiAgICAgIGNvbnN0IGJveCA9IGNsb25lLm5vZGUuZ2V0QkJveCgpXG4gICAgICBjbG9uZS5yZW1vdmUoKVxuICAgICAgcmV0dXJuIGJveFxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8vIFdlIGdpdmUgdXAuLi5cbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEdldHRpbmcgYmJveCBvZiBlbGVtZW50IFwiJHtcbiAgICAgICAgICBlbC5ub2RlLm5vZGVOYW1lXG4gICAgICAgIH1cIiBpcyBub3QgcG9zc2libGU6ICR7ZS50b1N0cmluZygpfWBcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBjb25zdCBib3ggPSBnZXRCb3godGhpcywgZ2V0QkJveCwgcmV0cnkpXG4gIGNvbnN0IGJib3ggPSBuZXcgQm94KGJveClcblxuICByZXR1cm4gYmJveFxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmJveChlbCkge1xuICBjb25zdCBnZXRSQm94ID0gKG5vZGUpID0+IG5vZGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgY29uc3QgcmV0cnkgPSAoZWwpID0+IHtcbiAgICAvLyBUaGVyZSBpcyBubyBwb2ludCBpbiB0cnlpbmcgdHJpY2tzIGhlcmUgYmVjYXVzZSBpZiB3ZSBpbnNlcnQgdGhlIGVsZW1lbnQgaW50byB0aGUgZG9tIG91cnNlbHZlc1xuICAgIC8vIGl0IG9idmlvdXNseSB3aWxsIGJlIGF0IHRoZSB3cm9uZyBwb3NpdGlvblxuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBHZXR0aW5nIHJib3ggb2YgZWxlbWVudCBcIiR7ZWwubm9kZS5ub2RlTmFtZX1cIiBpcyBub3QgcG9zc2libGVgXG4gICAgKVxuICB9XG5cbiAgY29uc3QgYm94ID0gZ2V0Qm94KHRoaXMsIGdldFJCb3gsIHJldHJ5KVxuICBjb25zdCByYm94ID0gbmV3IEJveChib3gpXG5cbiAgLy8gSWYgYW4gZWxlbWVudCB3YXMgcGFzc2VkLCB3ZSB3YW50IHRoZSBiYm94IGluIHRoZSBjb29yZGluYXRlIHN5c3RlbSBvZiB0aGF0IGVsZW1lbnRcbiAgaWYgKGVsKSB7XG4gICAgcmV0dXJuIHJib3gudHJhbnNmb3JtKGVsLnNjcmVlbkNUTSgpLmludmVyc2VPKCkpXG4gIH1cblxuICAvLyBFbHNlIHdlIHdhbnQgaXQgaW4gYWJzb2x1dGUgc2NyZWVuIGNvb3JkaW5hdGVzXG4gIC8vIFRoZXJlZm9yZSB3ZSBuZWVkIHRvIGFkZCB0aGUgc2Nyb2xsT2Zmc2V0XG4gIHJldHVybiByYm94LmFkZE9mZnNldCgpXG59XG5cbi8vIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBwb2ludCBpcyBpbnNpZGUgdGhlIGJvdW5kaW5nIGJveFxuZXhwb3J0IGZ1bmN0aW9uIGluc2lkZSh4LCB5KSB7XG4gIGNvbnN0IGJveCA9IHRoaXMuYmJveCgpXG5cbiAgcmV0dXJuIChcbiAgICB4ID4gYm94LnggJiYgeSA+IGJveC55ICYmIHggPCBib3gueCArIGJveC53aWR0aCAmJiB5IDwgYm94LnkgKyBib3guaGVpZ2h0XG4gIClcbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgdmlld2JveDoge1xuICAgIHZpZXdib3goeCwgeSwgd2lkdGgsIGhlaWdodCkge1xuICAgICAgLy8gYWN0IGFzIGdldHRlclxuICAgICAgaWYgKHggPT0gbnVsbCkgcmV0dXJuIG5ldyBCb3godGhpcy5hdHRyKCd2aWV3Qm94JykpXG5cbiAgICAgIC8vIGFjdCBhcyBzZXR0ZXJcbiAgICAgIHJldHVybiB0aGlzLmF0dHIoJ3ZpZXdCb3gnLCBuZXcgQm94KHgsIHksIHdpZHRoLCBoZWlnaHQpKVxuICAgIH0sXG5cbiAgICB6b29tKGxldmVsLCBwb2ludCkge1xuICAgICAgLy8gSXRzIGJlc3QgdG8gcmVseSBvbiB0aGUgYXR0cmlidXRlcyBoZXJlIGFuZCBoZXJlIGlzIHdoeTpcbiAgICAgIC8vIGNsaWVudFhZWjogRG9lc24ndCB3b3JrIG9uIG5vbi1yb290IHN2Z3MgYmVjYXVzZSB0aGV5IGRvbnQgaGF2ZSBhIENTU0JveCAoc2lsbHkhKVxuICAgICAgLy8gZ2V0Qm91bmRpbmdDbGllbnRSZWN0OiBEb2Vzbid0IHdvcmsgYmVjYXVzZSBDaHJvbWUganVzdCBpZ25vcmVzIHdpZHRoIGFuZCBoZWlnaHQgb2YgbmVzdGVkIHN2Z3MgY29tcGxldGVseVxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICB0aGF0IG1lYW5zLCB0aGVpciBjbGllbnRSZWN0IGlzIGFsd2F5cyBhcyBiaWcgYXMgdGhlIGNvbnRlbnQuXG4gICAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgIEZ1cnRoZXJtb3JlIHRoaXMgc2l6ZSBpcyBpbmNvcnJlY3QgaWYgdGhlIGVsZW1lbnQgaXMgZnVydGhlciB0cmFuc2Zvcm1lZCBieSBpdHMgcGFyZW50c1xuICAgICAgLy8gY29tcHV0ZWRTdHlsZTogT25seSByZXR1cm5zIG1lYW5pbmdmdWwgdmFsdWVzIGlmIGNzcyB3YXMgdXNlZCB3aXRoIHB4LiBXZSBkb250IGdvIHRoaXMgcm91dGUgaGVyZSFcbiAgICAgIC8vIGdldEJCb3g6IHJldHVybnMgdGhlIGJvdW5kaW5nIGJveCBvZiBpdHMgY29udGVudCAtIHRoYXQgZG9lc24ndCBoZWxwIVxuICAgICAgbGV0IHsgd2lkdGgsIGhlaWdodCB9ID0gdGhpcy5hdHRyKFsnd2lkdGgnLCAnaGVpZ2h0J10pXG5cbiAgICAgIC8vIFdpZHRoIGFuZCBoZWlnaHQgaXMgYSBzdHJpbmcgd2hlbiBhIG51bWJlciB3aXRoIGEgdW5pdCBpcyBwcmVzZW50IHdoaWNoIHdlIGNhbid0IHVzZVxuICAgICAgLy8gU28gd2UgdHJ5IGNsaWVudFhZWlxuICAgICAgaWYgKFxuICAgICAgICAoIXdpZHRoICYmICFoZWlnaHQpIHx8XG4gICAgICAgIHR5cGVvZiB3aWR0aCA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgdHlwZW9mIGhlaWdodCA9PT0gJ3N0cmluZydcbiAgICAgICkge1xuICAgICAgICB3aWR0aCA9IHRoaXMubm9kZS5jbGllbnRXaWR0aFxuICAgICAgICBoZWlnaHQgPSB0aGlzLm5vZGUuY2xpZW50SGVpZ2h0XG4gICAgICB9XG5cbiAgICAgIC8vIEdpdmluZyB1cC4uLlxuICAgICAgaWYgKCF3aWR0aCB8fCAhaGVpZ2h0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAnSW1wb3NzaWJsZSB0byBnZXQgYWJzb2x1dGUgd2lkdGggYW5kIGhlaWdodC4gUGxlYXNlIHByb3ZpZGUgYW4gYWJzb2x1dGUgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIHpvb21pbmcgZWxlbWVudCdcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICBjb25zdCB2ID0gdGhpcy52aWV3Ym94KClcblxuICAgICAgY29uc3Qgem9vbVggPSB3aWR0aCAvIHYud2lkdGhcbiAgICAgIGNvbnN0IHpvb21ZID0gaGVpZ2h0IC8gdi5oZWlnaHRcbiAgICAgIGNvbnN0IHpvb20gPSBNYXRoLm1pbih6b29tWCwgem9vbVkpXG5cbiAgICAgIGlmIChsZXZlbCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB6b29tXG4gICAgICB9XG5cbiAgICAgIGxldCB6b29tQW1vdW50ID0gem9vbSAvIGxldmVsXG5cbiAgICAgIC8vIFNldCB0aGUgem9vbUFtb3VudCB0byB0aGUgaGlnaGVzdCB2YWx1ZSB3aGljaCBpcyBzYWZlIHRvIHByb2Nlc3MgYW5kIHJlY292ZXIgZnJvbVxuICAgICAgLy8gVGhlICogMTAwIGlzIGEgYml0IG9mIHdpZ2dsZSByb29tIGZvciB0aGUgbWF0cml4IHRyYW5zZm9ybWF0aW9uXG4gICAgICBpZiAoem9vbUFtb3VudCA9PT0gSW5maW5pdHkpIHpvb21BbW91bnQgPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUiAvIDEwMFxuXG4gICAgICBwb2ludCA9XG4gICAgICAgIHBvaW50IHx8IG5ldyBQb2ludCh3aWR0aCAvIDIgLyB6b29tWCArIHYueCwgaGVpZ2h0IC8gMiAvIHpvb21ZICsgdi55KVxuXG4gICAgICBjb25zdCBib3ggPSBuZXcgQm94KHYpLnRyYW5zZm9ybShcbiAgICAgICAgbmV3IE1hdHJpeCh7IHNjYWxlOiB6b29tQW1vdW50LCBvcmlnaW46IHBvaW50IH0pXG4gICAgICApXG5cbiAgICAgIHJldHVybiB0aGlzLnZpZXdib3goYm94KVxuICAgIH1cbiAgfVxufSlcblxucmVnaXN0ZXIoQm94LCAnQm94JylcbiIsICJpbXBvcnQgeyBleHRlbmQgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuLy8gaW1wb3J0IHsgc3ViQ2xhc3NBcnJheSB9IGZyb20gJy4vQXJyYXlQb2x5ZmlsbC5qcydcblxuY2xhc3MgTGlzdCBleHRlbmRzIEFycmF5IHtcbiAgY29uc3RydWN0b3IoYXJyID0gW10sIC4uLmFyZ3MpIHtcbiAgICBzdXBlcihhcnIsIC4uLmFyZ3MpXG4gICAgaWYgKHR5cGVvZiBhcnIgPT09ICdudW1iZXInKSByZXR1cm4gdGhpc1xuICAgIHRoaXMubGVuZ3RoID0gMFxuICAgIHRoaXMucHVzaCguLi5hcnIpXG4gIH1cbn1cblxuLyogPSBzdWJDbGFzc0FycmF5KCdMaXN0JywgQXJyYXksIGZ1bmN0aW9uIChhcnIgPSBbXSkge1xuICAvLyBUaGlzIGNhdGNoZXMgdGhlIGNhc2UsIHRoYXQgbmF0aXZlIG1hcCB0cmllcyB0byBjcmVhdGUgYW4gYXJyYXkgd2l0aCBuZXcgQXJyYXkoMSlcbiAgaWYgKHR5cGVvZiBhcnIgPT09ICdudW1iZXInKSByZXR1cm4gdGhpc1xuICB0aGlzLmxlbmd0aCA9IDBcbiAgdGhpcy5wdXNoKC4uLmFycilcbn0pICovXG5cbmV4cG9ydCBkZWZhdWx0IExpc3RcblxuZXh0ZW5kKFtMaXN0XSwge1xuICBlYWNoKGZuT3JNZXRob2ROYW1lLCAuLi5hcmdzKSB7XG4gICAgaWYgKHR5cGVvZiBmbk9yTWV0aG9kTmFtZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIHRoaXMubWFwKChlbCwgaSwgYXJyKSA9PiB7XG4gICAgICAgIHJldHVybiBmbk9yTWV0aG9kTmFtZS5jYWxsKGVsLCBlbCwgaSwgYXJyKVxuICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMubWFwKChlbCkgPT4ge1xuICAgICAgICByZXR1cm4gZWxbZm5Pck1ldGhvZE5hbWVdKC4uLmFyZ3MpXG4gICAgICB9KVxuICAgIH1cbiAgfSxcblxuICB0b0FycmF5KCkge1xuICAgIHJldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLCB0aGlzKVxuICB9XG59KVxuXG5jb25zdCByZXNlcnZlZCA9IFsndG9BcnJheScsICdjb25zdHJ1Y3RvcicsICdlYWNoJ11cblxuTGlzdC5leHRlbmQgPSBmdW5jdGlvbiAobWV0aG9kcykge1xuICBtZXRob2RzID0gbWV0aG9kcy5yZWR1Y2UoKG9iaiwgbmFtZSkgPT4ge1xuICAgIC8vIERvbid0IG92ZXJ3cml0ZSBvd24gbWV0aG9kc1xuICAgIGlmIChyZXNlcnZlZC5pbmNsdWRlcyhuYW1lKSkgcmV0dXJuIG9ialxuXG4gICAgLy8gRG9uJ3QgYWRkIHByaXZhdGUgbWV0aG9kc1xuICAgIGlmIChuYW1lWzBdID09PSAnXycpIHJldHVybiBvYmpcblxuICAgIC8vIEFsbG93IGFjY2VzcyB0byBvcmlnaW5hbCBBcnJheSBtZXRob2RzIHRocm91Z2ggYSBwcmVmaXhcbiAgICBpZiAobmFtZSBpbiBBcnJheS5wcm90b3R5cGUpIHtcbiAgICAgIG9ialsnJCcgKyBuYW1lXSA9IEFycmF5LnByb3RvdHlwZVtuYW1lXVxuICAgIH1cblxuICAgIC8vIFJlbGF5IGV2ZXJ5IGNhbGwgdG8gZWFjaCgpXG4gICAgb2JqW25hbWVdID0gZnVuY3Rpb24gKC4uLmF0dHJzKSB7XG4gICAgICByZXR1cm4gdGhpcy5lYWNoKG5hbWUsIC4uLmF0dHJzKVxuICAgIH1cbiAgICByZXR1cm4gb2JqXG4gIH0sIHt9KVxuXG4gIGV4dGVuZChbTGlzdF0sIG1ldGhvZHMpXG59XG4iLCAiaW1wb3J0IHsgYWRvcHQgfSBmcm9tICcuLi8uLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uLy4uL3V0aWxzL3dpbmRvdy5qcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IExpc3QgZnJvbSAnLi4vLi4vdHlwZXMvTGlzdC5qcydcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gYmFzZUZpbmQocXVlcnksIHBhcmVudCkge1xuICByZXR1cm4gbmV3IExpc3QoXG4gICAgbWFwKChwYXJlbnQgfHwgZ2xvYmFscy5kb2N1bWVudCkucXVlcnlTZWxlY3RvckFsbChxdWVyeSksIGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICByZXR1cm4gYWRvcHQobm9kZSlcbiAgICB9KVxuICApXG59XG5cbi8vIFNjb3BlZCBmaW5kIG1ldGhvZFxuZXhwb3J0IGZ1bmN0aW9uIGZpbmQocXVlcnkpIHtcbiAgcmV0dXJuIGJhc2VGaW5kKHF1ZXJ5LCB0aGlzLm5vZGUpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kT25lKHF1ZXJ5KSB7XG4gIHJldHVybiBhZG9wdCh0aGlzLm5vZGUucXVlcnlTZWxlY3RvcihxdWVyeSkpXG59XG4iLCAiaW1wb3J0IHsgZGVsaW1pdGVyIH0gZnJvbSAnLi9yZWdleC5qcydcbmltcG9ydCB7IG1ha2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vLi4vdXRpbHMvd2luZG93LmpzJ1xuXG5sZXQgbGlzdGVuZXJJZCA9IDBcbmV4cG9ydCBjb25zdCB3aW5kb3dFdmVudHMgPSB7fVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RXZlbnRzKGluc3RhbmNlKSB7XG4gIGxldCBuID0gaW5zdGFuY2UuZ2V0RXZlbnRIb2xkZXIoKVxuXG4gIC8vIFdlIGRvbnQgd2FudCB0byBzYXZlIGV2ZW50cyBpbiBnbG9iYWwgc3BhY2VcbiAgaWYgKG4gPT09IGdsb2JhbHMud2luZG93KSBuID0gd2luZG93RXZlbnRzXG4gIGlmICghbi5ldmVudHMpIG4uZXZlbnRzID0ge31cbiAgcmV0dXJuIG4uZXZlbnRzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFdmVudFRhcmdldChpbnN0YW5jZSkge1xuICByZXR1cm4gaW5zdGFuY2UuZ2V0RXZlbnRUYXJnZXQoKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJFdmVudHMoaW5zdGFuY2UpIHtcbiAgbGV0IG4gPSBpbnN0YW5jZS5nZXRFdmVudEhvbGRlcigpXG4gIGlmIChuID09PSBnbG9iYWxzLndpbmRvdykgbiA9IHdpbmRvd0V2ZW50c1xuICBpZiAobi5ldmVudHMpIG4uZXZlbnRzID0ge31cbn1cblxuLy8gQWRkIGV2ZW50IGJpbmRlciBpbiB0aGUgU1ZHIG5hbWVzcGFjZVxuZXhwb3J0IGZ1bmN0aW9uIG9uKG5vZGUsIGV2ZW50cywgbGlzdGVuZXIsIGJpbmRpbmcsIG9wdGlvbnMpIHtcbiAgY29uc3QgbCA9IGxpc3RlbmVyLmJpbmQoYmluZGluZyB8fCBub2RlKVxuICBjb25zdCBpbnN0YW5jZSA9IG1ha2VJbnN0YW5jZShub2RlKVxuICBjb25zdCBiYWcgPSBnZXRFdmVudHMoaW5zdGFuY2UpXG4gIGNvbnN0IG4gPSBnZXRFdmVudFRhcmdldChpbnN0YW5jZSlcblxuICAvLyBldmVudHMgY2FuIGJlIGFuIGFycmF5IG9mIGV2ZW50cyBvciBhIHN0cmluZyBvZiBldmVudHNcbiAgZXZlbnRzID0gQXJyYXkuaXNBcnJheShldmVudHMpID8gZXZlbnRzIDogZXZlbnRzLnNwbGl0KGRlbGltaXRlcilcblxuICAvLyBhZGQgaWQgdG8gbGlzdGVuZXJcbiAgaWYgKCFsaXN0ZW5lci5fc3ZnanNMaXN0ZW5lcklkKSB7XG4gICAgbGlzdGVuZXIuX3N2Z2pzTGlzdGVuZXJJZCA9ICsrbGlzdGVuZXJJZFxuICB9XG5cbiAgZXZlbnRzLmZvckVhY2goZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgY29uc3QgZXYgPSBldmVudC5zcGxpdCgnLicpWzBdXG4gICAgY29uc3QgbnMgPSBldmVudC5zcGxpdCgnLicpWzFdIHx8ICcqJ1xuXG4gICAgLy8gZW5zdXJlIHZhbGlkIG9iamVjdFxuICAgIGJhZ1tldl0gPSBiYWdbZXZdIHx8IHt9XG4gICAgYmFnW2V2XVtuc10gPSBiYWdbZXZdW25zXSB8fCB7fVxuXG4gICAgLy8gcmVmZXJlbmNlIGxpc3RlbmVyXG4gICAgYmFnW2V2XVtuc11bbGlzdGVuZXIuX3N2Z2pzTGlzdGVuZXJJZF0gPSBsXG5cbiAgICAvLyBhZGQgbGlzdGVuZXJcbiAgICBuLmFkZEV2ZW50TGlzdGVuZXIoZXYsIGwsIG9wdGlvbnMgfHwgZmFsc2UpXG4gIH0pXG59XG5cbi8vIEFkZCBldmVudCB1bmJpbmRlciBpbiB0aGUgU1ZHIG5hbWVzcGFjZVxuZXhwb3J0IGZ1bmN0aW9uIG9mZihub2RlLCBldmVudHMsIGxpc3RlbmVyLCBvcHRpb25zKSB7XG4gIGNvbnN0IGluc3RhbmNlID0gbWFrZUluc3RhbmNlKG5vZGUpXG4gIGNvbnN0IGJhZyA9IGdldEV2ZW50cyhpbnN0YW5jZSlcbiAgY29uc3QgbiA9IGdldEV2ZW50VGFyZ2V0KGluc3RhbmNlKVxuXG4gIC8vIGxpc3RlbmVyIGNhbiBiZSBhIGZ1bmN0aW9uIG9yIGEgbnVtYmVyXG4gIGlmICh0eXBlb2YgbGlzdGVuZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICBsaXN0ZW5lciA9IGxpc3RlbmVyLl9zdmdqc0xpc3RlbmVySWRcbiAgICBpZiAoIWxpc3RlbmVyKSByZXR1cm5cbiAgfVxuXG4gIC8vIGV2ZW50cyBjYW4gYmUgYW4gYXJyYXkgb2YgZXZlbnRzIG9yIGEgc3RyaW5nIG9yIHVuZGVmaW5lZFxuICBldmVudHMgPSBBcnJheS5pc0FycmF5KGV2ZW50cykgPyBldmVudHMgOiAoZXZlbnRzIHx8ICcnKS5zcGxpdChkZWxpbWl0ZXIpXG5cbiAgZXZlbnRzLmZvckVhY2goZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgY29uc3QgZXYgPSBldmVudCAmJiBldmVudC5zcGxpdCgnLicpWzBdXG4gICAgY29uc3QgbnMgPSBldmVudCAmJiBldmVudC5zcGxpdCgnLicpWzFdXG4gICAgbGV0IG5hbWVzcGFjZSwgbFxuXG4gICAgaWYgKGxpc3RlbmVyKSB7XG4gICAgICAvLyByZW1vdmUgbGlzdGVuZXIgcmVmZXJlbmNlXG4gICAgICBpZiAoYmFnW2V2XSAmJiBiYWdbZXZdW25zIHx8ICcqJ10pIHtcbiAgICAgICAgLy8gcmVtb3ZlTGlzdGVuZXJcbiAgICAgICAgbi5yZW1vdmVFdmVudExpc3RlbmVyKFxuICAgICAgICAgIGV2LFxuICAgICAgICAgIGJhZ1tldl1bbnMgfHwgJyonXVtsaXN0ZW5lcl0sXG4gICAgICAgICAgb3B0aW9ucyB8fCBmYWxzZVxuICAgICAgICApXG5cbiAgICAgICAgZGVsZXRlIGJhZ1tldl1bbnMgfHwgJyonXVtsaXN0ZW5lcl1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGV2ICYmIG5zKSB7XG4gICAgICAvLyByZW1vdmUgYWxsIGxpc3RlbmVycyBmb3IgYSBuYW1lc3BhY2VkIGV2ZW50XG4gICAgICBpZiAoYmFnW2V2XSAmJiBiYWdbZXZdW25zXSkge1xuICAgICAgICBmb3IgKGwgaW4gYmFnW2V2XVtuc10pIHtcbiAgICAgICAgICBvZmYobiwgW2V2LCBuc10uam9pbignLicpLCBsKVxuICAgICAgICB9XG5cbiAgICAgICAgZGVsZXRlIGJhZ1tldl1bbnNdXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChucykge1xuICAgICAgLy8gcmVtb3ZlIGFsbCBsaXN0ZW5lcnMgZm9yIGEgc3BlY2lmaWMgbmFtZXNwYWNlXG4gICAgICBmb3IgKGV2ZW50IGluIGJhZykge1xuICAgICAgICBmb3IgKG5hbWVzcGFjZSBpbiBiYWdbZXZlbnRdKSB7XG4gICAgICAgICAgaWYgKG5zID09PSBuYW1lc3BhY2UpIHtcbiAgICAgICAgICAgIG9mZihuLCBbZXZlbnQsIG5zXS5qb2luKCcuJykpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChldikge1xuICAgICAgLy8gcmVtb3ZlIGFsbCBsaXN0ZW5lcnMgZm9yIHRoZSBldmVudFxuICAgICAgaWYgKGJhZ1tldl0pIHtcbiAgICAgICAgZm9yIChuYW1lc3BhY2UgaW4gYmFnW2V2XSkge1xuICAgICAgICAgIG9mZihuLCBbZXYsIG5hbWVzcGFjZV0uam9pbignLicpKVxuICAgICAgICB9XG5cbiAgICAgICAgZGVsZXRlIGJhZ1tldl1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gcmVtb3ZlIGFsbCBsaXN0ZW5lcnMgb24gYSBnaXZlbiBub2RlXG4gICAgICBmb3IgKGV2ZW50IGluIGJhZykge1xuICAgICAgICBvZmYobiwgZXZlbnQpXG4gICAgICB9XG5cbiAgICAgIGNsZWFyRXZlbnRzKGluc3RhbmNlKVxuICAgIH1cbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRpc3BhdGNoKG5vZGUsIGV2ZW50LCBkYXRhLCBvcHRpb25zKSB7XG4gIGNvbnN0IG4gPSBnZXRFdmVudFRhcmdldChub2RlKVxuXG4gIC8vIERpc3BhdGNoIGV2ZW50XG4gIGlmIChldmVudCBpbnN0YW5jZW9mIGdsb2JhbHMud2luZG93LkV2ZW50KSB7XG4gICAgbi5kaXNwYXRjaEV2ZW50KGV2ZW50KVxuICB9IGVsc2Uge1xuICAgIGV2ZW50ID0gbmV3IGdsb2JhbHMud2luZG93LkN1c3RvbUV2ZW50KGV2ZW50LCB7XG4gICAgICBkZXRhaWw6IGRhdGEsXG4gICAgICBjYW5jZWxhYmxlOiB0cnVlLFxuICAgICAgLi4ub3B0aW9uc1xuICAgIH0pXG4gICAgbi5kaXNwYXRjaEV2ZW50KGV2ZW50KVxuICB9XG4gIHJldHVybiBldmVudFxufVxuIiwgImltcG9ydCB7IGRpc3BhdGNoLCBvZmYsIG9uIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2V2ZW50LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXIgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IEJhc2UgZnJvbSAnLi9CYXNlLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFdmVudFRhcmdldCBleHRlbmRzIEJhc2Uge1xuICBhZGRFdmVudExpc3RlbmVyKCkge31cblxuICBkaXNwYXRjaChldmVudCwgZGF0YSwgb3B0aW9ucykge1xuICAgIHJldHVybiBkaXNwYXRjaCh0aGlzLCBldmVudCwgZGF0YSwgb3B0aW9ucylcbiAgfVxuXG4gIGRpc3BhdGNoRXZlbnQoZXZlbnQpIHtcbiAgICBjb25zdCBiYWcgPSB0aGlzLmdldEV2ZW50SG9sZGVyKCkuZXZlbnRzXG4gICAgaWYgKCFiYWcpIHJldHVybiB0cnVlXG5cbiAgICBjb25zdCBldmVudHMgPSBiYWdbZXZlbnQudHlwZV1cblxuICAgIGZvciAoY29uc3QgaSBpbiBldmVudHMpIHtcbiAgICAgIGZvciAoY29uc3QgaiBpbiBldmVudHNbaV0pIHtcbiAgICAgICAgZXZlbnRzW2ldW2pdKGV2ZW50KVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAhZXZlbnQuZGVmYXVsdFByZXZlbnRlZFxuICB9XG5cbiAgLy8gRmlyZSBnaXZlbiBldmVudFxuICBmaXJlKGV2ZW50LCBkYXRhLCBvcHRpb25zKSB7XG4gICAgdGhpcy5kaXNwYXRjaChldmVudCwgZGF0YSwgb3B0aW9ucylcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgZ2V0RXZlbnRIb2xkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGdldEV2ZW50VGFyZ2V0KCkge1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBVbmJpbmQgZXZlbnQgZnJvbSBsaXN0ZW5lclxuICBvZmYoZXZlbnQsIGxpc3RlbmVyLCBvcHRpb25zKSB7XG4gICAgb2ZmKHRoaXMsIGV2ZW50LCBsaXN0ZW5lciwgb3B0aW9ucylcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gQmluZCBnaXZlbiBldmVudCB0byBsaXN0ZW5lclxuICBvbihldmVudCwgbGlzdGVuZXIsIGJpbmRpbmcsIG9wdGlvbnMpIHtcbiAgICBvbih0aGlzLCBldmVudCwgbGlzdGVuZXIsIGJpbmRpbmcsIG9wdGlvbnMpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHJlbW92ZUV2ZW50TGlzdGVuZXIoKSB7fVxufVxuXG5yZWdpc3RlcihFdmVudFRhcmdldCwgJ0V2ZW50VGFyZ2V0JylcbiIsICJleHBvcnQgZnVuY3Rpb24gbm9vcCgpIHt9XG5cbi8vIERlZmF1bHQgYW5pbWF0aW9uIHZhbHVlc1xuZXhwb3J0IGNvbnN0IHRpbWVsaW5lID0ge1xuICBkdXJhdGlvbjogNDAwLFxuICBlYXNlOiAnPicsXG4gIGRlbGF5OiAwXG59XG5cbi8vIERlZmF1bHQgYXR0cmlidXRlIHZhbHVlc1xuZXhwb3J0IGNvbnN0IGF0dHJzID0ge1xuICAvLyBmaWxsIGFuZCBzdHJva2VcbiAgJ2ZpbGwtb3BhY2l0eSc6IDEsXG4gICdzdHJva2Utb3BhY2l0eSc6IDEsXG4gICdzdHJva2Utd2lkdGgnOiAwLFxuICAnc3Ryb2tlLWxpbmVqb2luJzogJ21pdGVyJyxcbiAgJ3N0cm9rZS1saW5lY2FwJzogJ2J1dHQnLFxuICBmaWxsOiAnIzAwMDAwMCcsXG4gIHN0cm9rZTogJyMwMDAwMDAnLFxuICBvcGFjaXR5OiAxLFxuXG4gIC8vIHBvc2l0aW9uXG4gIHg6IDAsXG4gIHk6IDAsXG4gIGN4OiAwLFxuICBjeTogMCxcblxuICAvLyBzaXplXG4gIHdpZHRoOiAwLFxuICBoZWlnaHQ6IDAsXG5cbiAgLy8gcmFkaXVzXG4gIHI6IDAsXG4gIHJ4OiAwLFxuICByeTogMCxcblxuICAvLyBncmFkaWVudFxuICBvZmZzZXQ6IDAsXG4gICdzdG9wLW9wYWNpdHknOiAxLFxuICAnc3RvcC1jb2xvcic6ICcjMDAwMDAwJyxcblxuICAvLyB0ZXh0XG4gICd0ZXh0LWFuY2hvcic6ICdzdGFydCdcbn1cbiIsICJpbXBvcnQgeyBkZWxpbWl0ZXIgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNWR0FycmF5IGV4dGVuZHMgQXJyYXkge1xuICBjb25zdHJ1Y3RvciguLi5hcmdzKSB7XG4gICAgc3VwZXIoLi4uYXJncylcbiAgICB0aGlzLmluaXQoLi4uYXJncylcbiAgfVxuXG4gIGNsb25lKCkge1xuICAgIHJldHVybiBuZXcgdGhpcy5jb25zdHJ1Y3Rvcih0aGlzKVxuICB9XG5cbiAgaW5pdChhcnIpIHtcbiAgICAvLyBUaGlzIGNhdGNoZXMgdGhlIGNhc2UsIHRoYXQgbmF0aXZlIG1hcCB0cmllcyB0byBjcmVhdGUgYW4gYXJyYXkgd2l0aCBuZXcgQXJyYXkoMSlcbiAgICBpZiAodHlwZW9mIGFyciA9PT0gJ251bWJlcicpIHJldHVybiB0aGlzXG4gICAgdGhpcy5sZW5ndGggPSAwXG4gICAgdGhpcy5wdXNoKC4uLnRoaXMucGFyc2UoYXJyKSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gUGFyc2Ugd2hpdGVzcGFjZSBzZXBhcmF0ZWQgc3RyaW5nXG4gIHBhcnNlKGFycmF5ID0gW10pIHtcbiAgICAvLyBJZiBhbHJlYWR5IGlzIGFuIGFycmF5LCBubyBuZWVkIHRvIHBhcnNlIGl0XG4gICAgaWYgKGFycmF5IGluc3RhbmNlb2YgQXJyYXkpIHJldHVybiBhcnJheVxuXG4gICAgcmV0dXJuIGFycmF5LnRyaW0oKS5zcGxpdChkZWxpbWl0ZXIpLm1hcChwYXJzZUZsb2F0KVxuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSwgdGhpcylcbiAgfVxuXG4gIHRvU2V0KCkge1xuICAgIHJldHVybiBuZXcgU2V0KHRoaXMpXG4gIH1cblxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5qb2luKCcgJylcbiAgfVxuXG4gIC8vIEZsYXR0ZW5zIHRoZSBhcnJheSBpZiBuZWVkZWRcbiAgdmFsdWVPZigpIHtcbiAgICBjb25zdCByZXQgPSBbXVxuICAgIHJldC5wdXNoKC4uLnRoaXMpXG4gICAgcmV0dXJuIHJldFxuICB9XG59XG4iLCAiaW1wb3J0IHsgbnVtYmVyQW5kVW5pdCB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9yZWdleC5qcydcblxuLy8gTW9kdWxlIGZvciB1bml0IGNvbnZlcnNpb25zXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTVkdOdW1iZXIge1xuICAvLyBJbml0aWFsaXplXG4gIGNvbnN0cnVjdG9yKC4uLmFyZ3MpIHtcbiAgICB0aGlzLmluaXQoLi4uYXJncylcbiAgfVxuXG4gIGNvbnZlcnQodW5pdCkge1xuICAgIHJldHVybiBuZXcgU1ZHTnVtYmVyKHRoaXMudmFsdWUsIHVuaXQpXG4gIH1cblxuICAvLyBEaXZpZGUgbnVtYmVyXG4gIGRpdmlkZShudW1iZXIpIHtcbiAgICBudW1iZXIgPSBuZXcgU1ZHTnVtYmVyKG51bWJlcilcbiAgICByZXR1cm4gbmV3IFNWR051bWJlcih0aGlzIC8gbnVtYmVyLCB0aGlzLnVuaXQgfHwgbnVtYmVyLnVuaXQpXG4gIH1cblxuICBpbml0KHZhbHVlLCB1bml0KSB7XG4gICAgdW5pdCA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWVbMV0gOiB1bml0XG4gICAgdmFsdWUgPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlWzBdIDogdmFsdWVcblxuICAgIC8vIGluaXRpYWxpemUgZGVmYXVsdHNcbiAgICB0aGlzLnZhbHVlID0gMFxuICAgIHRoaXMudW5pdCA9IHVuaXQgfHwgJydcblxuICAgIC8vIHBhcnNlIHZhbHVlXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIC8vIGVuc3VyZSBhIHZhbGlkIG51bWVyaWMgdmFsdWVcbiAgICAgIHRoaXMudmFsdWUgPSBpc05hTih2YWx1ZSlcbiAgICAgICAgPyAwXG4gICAgICAgIDogIWlzRmluaXRlKHZhbHVlKVxuICAgICAgICAgID8gdmFsdWUgPCAwXG4gICAgICAgICAgICA/IC0zLjRlMzhcbiAgICAgICAgICAgIDogKzMuNGUzOFxuICAgICAgICAgIDogdmFsdWVcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHVuaXQgPSB2YWx1ZS5tYXRjaChudW1iZXJBbmRVbml0KVxuXG4gICAgICBpZiAodW5pdCkge1xuICAgICAgICAvLyBtYWtlIHZhbHVlIG51bWVyaWNcbiAgICAgICAgdGhpcy52YWx1ZSA9IHBhcnNlRmxvYXQodW5pdFsxXSlcblxuICAgICAgICAvLyBub3JtYWxpemVcbiAgICAgICAgaWYgKHVuaXRbNV0gPT09ICclJykge1xuICAgICAgICAgIHRoaXMudmFsdWUgLz0gMTAwXG4gICAgICAgIH0gZWxzZSBpZiAodW5pdFs1XSA9PT0gJ3MnKSB7XG4gICAgICAgICAgdGhpcy52YWx1ZSAqPSAxMDAwXG4gICAgICAgIH1cblxuICAgICAgICAvLyBzdG9yZSB1bml0XG4gICAgICAgIHRoaXMudW5pdCA9IHVuaXRbNV1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgU1ZHTnVtYmVyKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZS52YWx1ZU9mKClcbiAgICAgICAgdGhpcy51bml0ID0gdmFsdWUudW5pdFxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBTdWJ0cmFjdCBudW1iZXJcbiAgbWludXMobnVtYmVyKSB7XG4gICAgbnVtYmVyID0gbmV3IFNWR051bWJlcihudW1iZXIpXG4gICAgcmV0dXJuIG5ldyBTVkdOdW1iZXIodGhpcyAtIG51bWJlciwgdGhpcy51bml0IHx8IG51bWJlci51bml0KVxuICB9XG5cbiAgLy8gQWRkIG51bWJlclxuICBwbHVzKG51bWJlcikge1xuICAgIG51bWJlciA9IG5ldyBTVkdOdW1iZXIobnVtYmVyKVxuICAgIHJldHVybiBuZXcgU1ZHTnVtYmVyKHRoaXMgKyBudW1iZXIsIHRoaXMudW5pdCB8fCBudW1iZXIudW5pdClcbiAgfVxuXG4gIC8vIE11bHRpcGx5IG51bWJlclxuICB0aW1lcyhudW1iZXIpIHtcbiAgICBudW1iZXIgPSBuZXcgU1ZHTnVtYmVyKG51bWJlcilcbiAgICByZXR1cm4gbmV3IFNWR051bWJlcih0aGlzICogbnVtYmVyLCB0aGlzLnVuaXQgfHwgbnVtYmVyLnVuaXQpXG4gIH1cblxuICB0b0FycmF5KCkge1xuICAgIHJldHVybiBbdGhpcy52YWx1ZSwgdGhpcy51bml0XVxuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIHJldHVybiB0aGlzLnRvU3RyaW5nKClcbiAgfVxuXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiAoXG4gICAgICAodGhpcy51bml0ID09PSAnJSdcbiAgICAgICAgPyB+fih0aGlzLnZhbHVlICogMWU4KSAvIDFlNlxuICAgICAgICA6IHRoaXMudW5pdCA9PT0gJ3MnXG4gICAgICAgICAgPyB0aGlzLnZhbHVlIC8gMWUzXG4gICAgICAgICAgOiB0aGlzLnZhbHVlKSArIHRoaXMudW5pdFxuICAgIClcbiAgfVxuXG4gIHZhbHVlT2YoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVcbiAgfVxufVxuIiwgImltcG9ydCB7IGF0dHJzIGFzIGRlZmF1bHRzIH0gZnJvbSAnLi9kZWZhdWx0cy5qcydcbmltcG9ydCB7IGlzTnVtYmVyIH0gZnJvbSAnLi9yZWdleC5qcydcbmltcG9ydCBDb2xvciBmcm9tICcuLi8uLi90eXBlcy9Db2xvci5qcydcbmltcG9ydCBTVkdBcnJheSBmcm9tICcuLi8uLi90eXBlcy9TVkdBcnJheS5qcydcbmltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuXG5jb25zdCBjb2xvckF0dHJpYnV0ZXMgPSBuZXcgU2V0KFtcbiAgJ2ZpbGwnLFxuICAnc3Ryb2tlJyxcbiAgJ2NvbG9yJyxcbiAgJ2JnY29sb3InLFxuICAnc3RvcC1jb2xvcicsXG4gICdmbG9vZC1jb2xvcicsXG4gICdsaWdodGluZy1jb2xvcidcbl0pXG5cbmNvbnN0IGhvb2tzID0gW11cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckF0dHJIb29rKGZuKSB7XG4gIGhvb2tzLnB1c2goZm4pXG59XG5cbi8vIFNldCBzdmcgZWxlbWVudCBhdHRyaWJ1dGVcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGF0dHIoYXR0ciwgdmFsLCBucykge1xuICAvLyBhY3QgYXMgZnVsbCBnZXR0ZXJcbiAgaWYgKGF0dHIgPT0gbnVsbCkge1xuICAgIC8vIGdldCBhbiBvYmplY3Qgb2YgYXR0cmlidXRlc1xuICAgIGF0dHIgPSB7fVxuICAgIHZhbCA9IHRoaXMubm9kZS5hdHRyaWJ1dGVzXG5cbiAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdmFsKSB7XG4gICAgICBhdHRyW25vZGUubm9kZU5hbWVdID0gaXNOdW1iZXIudGVzdChub2RlLm5vZGVWYWx1ZSlcbiAgICAgICAgPyBwYXJzZUZsb2F0KG5vZGUubm9kZVZhbHVlKVxuICAgICAgICA6IG5vZGUubm9kZVZhbHVlXG4gICAgfVxuXG4gICAgcmV0dXJuIGF0dHJcbiAgfSBlbHNlIGlmIChhdHRyIGluc3RhbmNlb2YgQXJyYXkpIHtcbiAgICAvLyBsb29wIHRocm91Z2ggYXJyYXkgYW5kIGdldCBhbGwgdmFsdWVzXG4gICAgcmV0dXJuIGF0dHIucmVkdWNlKChsYXN0LCBjdXJyKSA9PiB7XG4gICAgICBsYXN0W2N1cnJdID0gdGhpcy5hdHRyKGN1cnIpXG4gICAgICByZXR1cm4gbGFzdFxuICAgIH0sIHt9KVxuICB9IGVsc2UgaWYgKHR5cGVvZiBhdHRyID09PSAnb2JqZWN0JyAmJiBhdHRyLmNvbnN0cnVjdG9yID09PSBPYmplY3QpIHtcbiAgICAvLyBhcHBseSBldmVyeSBhdHRyaWJ1dGUgaW5kaXZpZHVhbGx5IGlmIGFuIG9iamVjdCBpcyBwYXNzZWRcbiAgICBmb3IgKHZhbCBpbiBhdHRyKSB0aGlzLmF0dHIodmFsLCBhdHRyW3ZhbF0pXG4gIH0gZWxzZSBpZiAodmFsID09PSBudWxsKSB7XG4gICAgLy8gcmVtb3ZlIHZhbHVlXG4gICAgdGhpcy5ub2RlLnJlbW92ZUF0dHJpYnV0ZShhdHRyKVxuICB9IGVsc2UgaWYgKHZhbCA9PSBudWxsKSB7XG4gICAgLy8gYWN0IGFzIGEgZ2V0dGVyIGlmIHRoZSBmaXJzdCBhbmQgb25seSBhcmd1bWVudCBpcyBub3QgYW4gb2JqZWN0XG4gICAgdmFsID0gdGhpcy5ub2RlLmdldEF0dHJpYnV0ZShhdHRyKVxuICAgIHJldHVybiB2YWwgPT0gbnVsbFxuICAgICAgPyBkZWZhdWx0c1thdHRyXVxuICAgICAgOiBpc051bWJlci50ZXN0KHZhbClcbiAgICAgICAgPyBwYXJzZUZsb2F0KHZhbClcbiAgICAgICAgOiB2YWxcbiAgfSBlbHNlIHtcbiAgICAvLyBMb29wIHRocm91Z2ggaG9va3MgYW5kIGV4ZWN1dGUgdGhlbSB0byBjb252ZXJ0IHZhbHVlXG4gICAgdmFsID0gaG9va3MucmVkdWNlKChfdmFsLCBob29rKSA9PiB7XG4gICAgICByZXR1cm4gaG9vayhhdHRyLCBfdmFsLCB0aGlzKVxuICAgIH0sIHZhbClcblxuICAgIC8vIGVuc3VyZSBjb3JyZWN0IG51bWVyaWMgdmFsdWVzIChhbHNvIGFjY2VwdHMgTmFOIGFuZCBJbmZpbml0eSlcbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicpIHtcbiAgICAgIHZhbCA9IG5ldyBTVkdOdW1iZXIodmFsKVxuICAgIH0gZWxzZSBpZiAoY29sb3JBdHRyaWJ1dGVzLmhhcyhhdHRyKSAmJiBDb2xvci5pc0NvbG9yKHZhbCkpIHtcbiAgICAgIC8vIGVuc3VyZSBmdWxsIGhleCBjb2xvclxuICAgICAgdmFsID0gbmV3IENvbG9yKHZhbClcbiAgICB9IGVsc2UgaWYgKHZhbC5jb25zdHJ1Y3RvciA9PT0gQXJyYXkpIHtcbiAgICAgIC8vIENoZWNrIGZvciBwbGFpbiBhcnJheXMgYW5kIHBhcnNlIGFycmF5IHZhbHVlc1xuICAgICAgdmFsID0gbmV3IFNWR0FycmF5KHZhbClcbiAgICB9XG5cbiAgICAvLyBpZiB0aGUgcGFzc2VkIGF0dHJpYnV0ZSBpcyBsZWFkaW5nLi4uXG4gICAgaWYgKGF0dHIgPT09ICdsZWFkaW5nJykge1xuICAgICAgLy8gLi4uIGNhbGwgdGhlIGxlYWRpbmcgbWV0aG9kIGluc3RlYWRcbiAgICAgIGlmICh0aGlzLmxlYWRpbmcpIHtcbiAgICAgICAgdGhpcy5sZWFkaW5nKHZhbClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gc2V0IGdpdmVuIGF0dHJpYnV0ZSBvbiBub2RlXG4gICAgICB0eXBlb2YgbnMgPT09ICdzdHJpbmcnXG4gICAgICAgID8gdGhpcy5ub2RlLnNldEF0dHJpYnV0ZU5TKG5zLCBhdHRyLCB2YWwudG9TdHJpbmcoKSlcbiAgICAgICAgOiB0aGlzLm5vZGUuc2V0QXR0cmlidXRlKGF0dHIsIHZhbC50b1N0cmluZygpKVxuICAgIH1cblxuICAgIC8vIHJlYnVpbGQgaWYgcmVxdWlyZWRcbiAgICBpZiAodGhpcy5yZWJ1aWxkICYmIChhdHRyID09PSAnZm9udC1zaXplJyB8fCBhdHRyID09PSAneCcpKSB7XG4gICAgICB0aGlzLnJlYnVpbGQoKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0aGlzXG59XG4iLCAiaW1wb3J0IHtcbiAgYWRvcHQsXG4gIGFzc2lnbk5ld0lkLFxuICBlaWQsXG4gIGV4dGVuZCxcbiAgbWFrZUluc3RhbmNlLFxuICBjcmVhdGUsXG4gIHJlZ2lzdGVyXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyBmaW5kLCBmaW5kT25lIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3NlbGVjdG9yLmpzJ1xuaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uL3V0aWxzL3dpbmRvdy5qcydcbmltcG9ydCB7IG1hcCB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IHsgc3ZnLCBodG1sIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgRXZlbnRUYXJnZXQgZnJvbSAnLi4vdHlwZXMvRXZlbnRUYXJnZXQuanMnXG5pbXBvcnQgTGlzdCBmcm9tICcuLi90eXBlcy9MaXN0LmpzJ1xuaW1wb3J0IGF0dHIgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2F0dHIuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERvbSBleHRlbmRzIEV2ZW50VGFyZ2V0IHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5ub2RlID0gbm9kZVxuICAgIHRoaXMudHlwZSA9IG5vZGUubm9kZU5hbWVcblxuICAgIGlmIChhdHRycyAmJiBub2RlICE9PSBhdHRycykge1xuICAgICAgdGhpcy5hdHRyKGF0dHJzKVxuICAgIH1cbiAgfVxuXG4gIC8vIEFkZCBnaXZlbiBlbGVtZW50IGF0IGEgcG9zaXRpb25cbiAgYWRkKGVsZW1lbnQsIGkpIHtcbiAgICBlbGVtZW50ID0gbWFrZUluc3RhbmNlKGVsZW1lbnQpXG5cbiAgICAvLyBJZiBub24tcm9vdCBzdmcgbm9kZXMgYXJlIGFkZGVkIHdlIGhhdmUgdG8gcmVtb3ZlIHRoZWlyIG5hbWVzcGFjZXNcbiAgICBpZiAoXG4gICAgICBlbGVtZW50LnJlbW92ZU5hbWVzcGFjZSAmJlxuICAgICAgdGhpcy5ub2RlIGluc3RhbmNlb2YgZ2xvYmFscy53aW5kb3cuU1ZHRWxlbWVudFxuICAgICkge1xuICAgICAgZWxlbWVudC5yZW1vdmVOYW1lc3BhY2UoKVxuICAgIH1cblxuICAgIGlmIChpID09IG51bGwpIHtcbiAgICAgIHRoaXMubm9kZS5hcHBlbmRDaGlsZChlbGVtZW50Lm5vZGUpXG4gICAgfSBlbHNlIGlmIChlbGVtZW50Lm5vZGUgIT09IHRoaXMubm9kZS5jaGlsZE5vZGVzW2ldKSB7XG4gICAgICB0aGlzLm5vZGUuaW5zZXJ0QmVmb3JlKGVsZW1lbnQubm9kZSwgdGhpcy5ub2RlLmNoaWxkTm9kZXNbaV0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIEFkZCBlbGVtZW50IHRvIGdpdmVuIGNvbnRhaW5lciBhbmQgcmV0dXJuIHNlbGZcbiAgYWRkVG8ocGFyZW50LCBpKSB7XG4gICAgcmV0dXJuIG1ha2VJbnN0YW5jZShwYXJlbnQpLnB1dCh0aGlzLCBpKVxuICB9XG5cbiAgLy8gUmV0dXJucyBhbGwgY2hpbGQgZWxlbWVudHNcbiAgY2hpbGRyZW4oKSB7XG4gICAgcmV0dXJuIG5ldyBMaXN0KFxuICAgICAgbWFwKHRoaXMubm9kZS5jaGlsZHJlbiwgZnVuY3Rpb24gKG5vZGUpIHtcbiAgICAgICAgcmV0dXJuIGFkb3B0KG5vZGUpXG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIC8vIFJlbW92ZSBhbGwgZWxlbWVudHMgaW4gdGhpcyBjb250YWluZXJcbiAgY2xlYXIoKSB7XG4gICAgLy8gcmVtb3ZlIGNoaWxkcmVuXG4gICAgd2hpbGUgKHRoaXMubm9kZS5oYXNDaGlsZE5vZGVzKCkpIHtcbiAgICAgIHRoaXMubm9kZS5yZW1vdmVDaGlsZCh0aGlzLm5vZGUubGFzdENoaWxkKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBDbG9uZSBlbGVtZW50XG4gIGNsb25lKGRlZXAgPSB0cnVlLCBhc3NpZ25OZXdJZHMgPSB0cnVlKSB7XG4gICAgLy8gd3JpdGUgZG9tIGRhdGEgdG8gdGhlIGRvbSBzbyB0aGUgY2xvbmUgY2FuIHBpY2t1cCB0aGUgZGF0YVxuICAgIHRoaXMud3JpdGVEYXRhVG9Eb20oKVxuXG4gICAgLy8gY2xvbmUgZWxlbWVudFxuICAgIGxldCBub2RlQ2xvbmUgPSB0aGlzLm5vZGUuY2xvbmVOb2RlKGRlZXApXG4gICAgaWYgKGFzc2lnbk5ld0lkcykge1xuICAgICAgLy8gYXNzaWduIG5ldyBpZFxuICAgICAgbm9kZUNsb25lID0gYXNzaWduTmV3SWQobm9kZUNsb25lKVxuICAgIH1cbiAgICByZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3Iobm9kZUNsb25lKVxuICB9XG5cbiAgLy8gSXRlcmF0ZXMgb3ZlciBhbGwgY2hpbGRyZW4gYW5kIGludm9rZXMgYSBnaXZlbiBibG9ja1xuICBlYWNoKGJsb2NrLCBkZWVwKSB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLmNoaWxkcmVuKClcbiAgICBsZXQgaSwgaWxcblxuICAgIGZvciAoaSA9IDAsIGlsID0gY2hpbGRyZW4ubGVuZ3RoOyBpIDwgaWw7IGkrKykge1xuICAgICAgYmxvY2suYXBwbHkoY2hpbGRyZW5baV0sIFtpLCBjaGlsZHJlbl0pXG5cbiAgICAgIGlmIChkZWVwKSB7XG4gICAgICAgIGNoaWxkcmVuW2ldLmVhY2goYmxvY2ssIGRlZXApXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGVsZW1lbnQobm9kZU5hbWUsIGF0dHJzKSB7XG4gICAgcmV0dXJuIHRoaXMucHV0KG5ldyBEb20oY3JlYXRlKG5vZGVOYW1lKSwgYXR0cnMpKVxuICB9XG5cbiAgLy8gR2V0IGZpcnN0IGNoaWxkXG4gIGZpcnN0KCkge1xuICAgIHJldHVybiBhZG9wdCh0aGlzLm5vZGUuZmlyc3RDaGlsZClcbiAgfVxuXG4gIC8vIEdldCBhIGVsZW1lbnQgYXQgdGhlIGdpdmVuIGluZGV4XG4gIGdldChpKSB7XG4gICAgcmV0dXJuIGFkb3B0KHRoaXMubm9kZS5jaGlsZE5vZGVzW2ldKVxuICB9XG5cbiAgZ2V0RXZlbnRIb2xkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZVxuICB9XG5cbiAgZ2V0RXZlbnRUYXJnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZVxuICB9XG5cbiAgLy8gQ2hlY2tzIGlmIHRoZSBnaXZlbiBlbGVtZW50IGlzIGEgY2hpbGRcbiAgaGFzKGVsZW1lbnQpIHtcbiAgICByZXR1cm4gdGhpcy5pbmRleChlbGVtZW50KSA+PSAwXG4gIH1cblxuICBodG1sKGh0bWxPckZuLCBvdXRlckhUTUwpIHtcbiAgICByZXR1cm4gdGhpcy54bWwoaHRtbE9yRm4sIG91dGVySFRNTCwgaHRtbClcbiAgfVxuXG4gIC8vIEdldCAvIHNldCBpZFxuICBpZChpZCkge1xuICAgIC8vIGdlbmVyYXRlIG5ldyBpZCBpZiBubyBpZCBzZXRcbiAgICBpZiAodHlwZW9mIGlkID09PSAndW5kZWZpbmVkJyAmJiAhdGhpcy5ub2RlLmlkKSB7XG4gICAgICB0aGlzLm5vZGUuaWQgPSBlaWQodGhpcy50eXBlKVxuICAgIH1cblxuICAgIC8vIGRvbid0IHNldCBkaXJlY3RseSB3aXRoIHRoaXMubm9kZS5pZCB0byBtYWtlIGBudWxsYCB3b3JrIGNvcnJlY3RseVxuICAgIHJldHVybiB0aGlzLmF0dHIoJ2lkJywgaWQpXG4gIH1cblxuICAvLyBHZXRzIGluZGV4IG9mIGdpdmVuIGVsZW1lbnRcbiAgaW5kZXgoZWxlbWVudCkge1xuICAgIHJldHVybiBbXS5zbGljZS5jYWxsKHRoaXMubm9kZS5jaGlsZE5vZGVzKS5pbmRleE9mKGVsZW1lbnQubm9kZSlcbiAgfVxuXG4gIC8vIEdldCB0aGUgbGFzdCBjaGlsZFxuICBsYXN0KCkge1xuICAgIHJldHVybiBhZG9wdCh0aGlzLm5vZGUubGFzdENoaWxkKVxuICB9XG5cbiAgLy8gbWF0Y2hlcyB0aGUgZWxlbWVudCB2cyBhIGNzcyBzZWxlY3RvclxuICBtYXRjaGVzKHNlbGVjdG9yKSB7XG4gICAgY29uc3QgZWwgPSB0aGlzLm5vZGVcbiAgICBjb25zdCBtYXRjaGVyID1cbiAgICAgIGVsLm1hdGNoZXMgfHxcbiAgICAgIGVsLm1hdGNoZXNTZWxlY3RvciB8fFxuICAgICAgZWwubXNNYXRjaGVzU2VsZWN0b3IgfHxcbiAgICAgIGVsLm1vek1hdGNoZXNTZWxlY3RvciB8fFxuICAgICAgZWwud2Via2l0TWF0Y2hlc1NlbGVjdG9yIHx8XG4gICAgICBlbC5vTWF0Y2hlc1NlbGVjdG9yIHx8XG4gICAgICBudWxsXG4gICAgcmV0dXJuIG1hdGNoZXIgJiYgbWF0Y2hlci5jYWxsKGVsLCBzZWxlY3RvcilcbiAgfVxuXG4gIC8vIFJldHVybnMgdGhlIHBhcmVudCBlbGVtZW50IGluc3RhbmNlXG4gIHBhcmVudCh0eXBlKSB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXNcblxuICAgIC8vIGNoZWNrIGZvciBwYXJlbnRcbiAgICBpZiAoIXBhcmVudC5ub2RlLnBhcmVudE5vZGUpIHJldHVybiBudWxsXG5cbiAgICAvLyBnZXQgcGFyZW50IGVsZW1lbnRcbiAgICBwYXJlbnQgPSBhZG9wdChwYXJlbnQubm9kZS5wYXJlbnROb2RlKVxuXG4gICAgaWYgKCF0eXBlKSByZXR1cm4gcGFyZW50XG5cbiAgICAvLyBsb29wIHRocm91Z2ggYW5jZXN0b3JzIGlmIHR5cGUgaXMgZ2l2ZW5cbiAgICBkbyB7XG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJyA/IHBhcmVudC5tYXRjaGVzKHR5cGUpIDogcGFyZW50IGluc3RhbmNlb2YgdHlwZVxuICAgICAgKVxuICAgICAgICByZXR1cm4gcGFyZW50XG4gICAgfSB3aGlsZSAoKHBhcmVudCA9IGFkb3B0KHBhcmVudC5ub2RlLnBhcmVudE5vZGUpKSlcblxuICAgIHJldHVybiBwYXJlbnRcbiAgfVxuXG4gIC8vIEJhc2ljYWxseSBkb2VzIHRoZSBzYW1lIGFzIGBhZGQoKWAgYnV0IHJldHVybnMgdGhlIGFkZGVkIGVsZW1lbnQgaW5zdGVhZFxuICBwdXQoZWxlbWVudCwgaSkge1xuICAgIGVsZW1lbnQgPSBtYWtlSW5zdGFuY2UoZWxlbWVudClcbiAgICB0aGlzLmFkZChlbGVtZW50LCBpKVxuICAgIHJldHVybiBlbGVtZW50XG4gIH1cblxuICAvLyBBZGQgZWxlbWVudCB0byBnaXZlbiBjb250YWluZXIgYW5kIHJldHVybiBjb250YWluZXJcbiAgcHV0SW4ocGFyZW50LCBpKSB7XG4gICAgcmV0dXJuIG1ha2VJbnN0YW5jZShwYXJlbnQpLmFkZCh0aGlzLCBpKVxuICB9XG5cbiAgLy8gUmVtb3ZlIGVsZW1lbnRcbiAgcmVtb3ZlKCkge1xuICAgIGlmICh0aGlzLnBhcmVudCgpKSB7XG4gICAgICB0aGlzLnBhcmVudCgpLnJlbW92ZUVsZW1lbnQodGhpcylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gUmVtb3ZlIGEgZ2l2ZW4gY2hpbGRcbiAgcmVtb3ZlRWxlbWVudChlbGVtZW50KSB7XG4gICAgdGhpcy5ub2RlLnJlbW92ZUNoaWxkKGVsZW1lbnQubm9kZSlcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBSZXBsYWNlIHRoaXMgd2l0aCBlbGVtZW50XG4gIHJlcGxhY2UoZWxlbWVudCkge1xuICAgIGVsZW1lbnQgPSBtYWtlSW5zdGFuY2UoZWxlbWVudClcblxuICAgIGlmICh0aGlzLm5vZGUucGFyZW50Tm9kZSkge1xuICAgICAgdGhpcy5ub2RlLnBhcmVudE5vZGUucmVwbGFjZUNoaWxkKGVsZW1lbnQubm9kZSwgdGhpcy5ub2RlKVxuICAgIH1cblxuICAgIHJldHVybiBlbGVtZW50XG4gIH1cblxuICByb3VuZChwcmVjaXNpb24gPSAyLCBtYXAgPSBudWxsKSB7XG4gICAgY29uc3QgZmFjdG9yID0gMTAgKiogcHJlY2lzaW9uXG4gICAgY29uc3QgYXR0cnMgPSB0aGlzLmF0dHIobWFwKVxuXG4gICAgZm9yIChjb25zdCBpIGluIGF0dHJzKSB7XG4gICAgICBpZiAodHlwZW9mIGF0dHJzW2ldID09PSAnbnVtYmVyJykge1xuICAgICAgICBhdHRyc1tpXSA9IE1hdGgucm91bmQoYXR0cnNbaV0gKiBmYWN0b3IpIC8gZmFjdG9yXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5hdHRyKGF0dHJzKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBJbXBvcnQgLyBFeHBvcnQgcmF3IHN2Z1xuICBzdmcoc3ZnT3JGbiwgb3V0ZXJTVkcpIHtcbiAgICByZXR1cm4gdGhpcy54bWwoc3ZnT3JGbiwgb3V0ZXJTVkcsIHN2ZylcbiAgfVxuXG4gIC8vIFJldHVybiBpZCBvbiBzdHJpbmcgY29udmVyc2lvblxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5pZCgpXG4gIH1cblxuICB3b3Jkcyh0ZXh0KSB7XG4gICAgLy8gVGhpcyBpcyBmYXN0ZXIgdGhhbiByZW1vdmluZyBhbGwgY2hpbGRyZW4gYW5kIGFkZGluZyBhIG5ldyBvbmVcbiAgICB0aGlzLm5vZGUudGV4dENvbnRlbnQgPSB0ZXh0XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHdyYXAobm9kZSkge1xuICAgIGNvbnN0IHBhcmVudCA9IHRoaXMucGFyZW50KClcblxuICAgIGlmICghcGFyZW50KSB7XG4gICAgICByZXR1cm4gdGhpcy5hZGRUbyhub2RlKVxuICAgIH1cblxuICAgIGNvbnN0IHBvc2l0aW9uID0gcGFyZW50LmluZGV4KHRoaXMpXG4gICAgcmV0dXJuIHBhcmVudC5wdXQobm9kZSwgcG9zaXRpb24pLnB1dCh0aGlzKVxuICB9XG5cbiAgLy8gd3JpdGUgc3ZnanMgZGF0YSB0byB0aGUgZG9tXG4gIHdyaXRlRGF0YVRvRG9tKCkge1xuICAgIC8vIGR1bXAgdmFyaWFibGVzIHJlY3Vyc2l2ZWx5XG4gICAgdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIHRoaXMud3JpdGVEYXRhVG9Eb20oKVxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gSW1wb3J0IC8gRXhwb3J0IHJhdyBzdmdcbiAgeG1sKHhtbE9yRm4sIG91dGVyWE1MLCBucykge1xuICAgIGlmICh0eXBlb2YgeG1sT3JGbiA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICBucyA9IG91dGVyWE1MXG4gICAgICBvdXRlclhNTCA9IHhtbE9yRm5cbiAgICAgIHhtbE9yRm4gPSBudWxsXG4gICAgfVxuXG4gICAgLy8gYWN0IGFzIGdldHRlciBpZiBubyBzdmcgc3RyaW5nIGlzIGdpdmVuXG4gICAgaWYgKHhtbE9yRm4gPT0gbnVsbCB8fCB0eXBlb2YgeG1sT3JGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgLy8gVGhlIGRlZmF1bHQgZm9yIGV4cG9ydHMgaXMsIHRoYXQgdGhlIG91dGVyTm9kZSBpcyBpbmNsdWRlZFxuICAgICAgb3V0ZXJYTUwgPSBvdXRlclhNTCA9PSBudWxsID8gdHJ1ZSA6IG91dGVyWE1MXG5cbiAgICAgIC8vIHdyaXRlIHN2Z2pzIGRhdGEgdG8gdGhlIGRvbVxuICAgICAgdGhpcy53cml0ZURhdGFUb0RvbSgpXG4gICAgICBsZXQgY3VycmVudCA9IHRoaXNcblxuICAgICAgLy8gQW4gZXhwb3J0IG1vZGlmaWVyIHdhcyBwYXNzZWRcbiAgICAgIGlmICh4bWxPckZuICE9IG51bGwpIHtcbiAgICAgICAgY3VycmVudCA9IGFkb3B0KGN1cnJlbnQubm9kZS5jbG9uZU5vZGUodHJ1ZSkpXG5cbiAgICAgICAgLy8gSWYgdGhlIHVzZXIgd2FudHMgb3V0ZXJIVE1MIHdlIG5lZWQgdG8gcHJvY2VzcyB0aGlzIG5vZGUsIHRvb1xuICAgICAgICBpZiAob3V0ZXJYTUwpIHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSB4bWxPckZuKGN1cnJlbnQpXG4gICAgICAgICAgY3VycmVudCA9IHJlc3VsdCB8fCBjdXJyZW50XG5cbiAgICAgICAgICAvLyBUaGUgdXNlciBkb2VzIG5vdCB3YW50IHRoaXMgbm9kZT8gV2VsbCwgdGhlbiBoZSBnZXRzIG5vdGhpbmdcbiAgICAgICAgICBpZiAocmVzdWx0ID09PSBmYWxzZSkgcmV0dXJuICcnXG4gICAgICAgIH1cblxuICAgICAgICAvLyBEZWVwIGxvb3AgdGhyb3VnaCBhbGwgY2hpbGRyZW4gYW5kIGFwcGx5IG1vZGlmaWVyXG4gICAgICAgIGN1cnJlbnQuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0geG1sT3JGbih0aGlzKVxuICAgICAgICAgIGNvbnN0IF90aGlzID0gcmVzdWx0IHx8IHRoaXNcblxuICAgICAgICAgIC8vIElmIG1vZGlmaWVyIHJldHVybnMgZmFsc2UsIGRpc2NhcmQgbm9kZVxuICAgICAgICAgIGlmIChyZXN1bHQgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZSgpXG5cbiAgICAgICAgICAgIC8vIElmIG1vZGlmaWVyIHJldHVybnMgbmV3IG5vZGUsIHVzZSBpdFxuICAgICAgICAgIH0gZWxzZSBpZiAocmVzdWx0ICYmIHRoaXMgIT09IF90aGlzKSB7XG4gICAgICAgICAgICB0aGlzLnJlcGxhY2UoX3RoaXMpXG4gICAgICAgICAgfVxuICAgICAgICB9LCB0cnVlKVxuICAgICAgfVxuXG4gICAgICAvLyBSZXR1cm4gb3V0ZXIgb3IgaW5uZXIgY29udGVudFxuICAgICAgcmV0dXJuIG91dGVyWE1MID8gY3VycmVudC5ub2RlLm91dGVySFRNTCA6IGN1cnJlbnQubm9kZS5pbm5lckhUTUxcbiAgICB9XG5cbiAgICAvLyBBY3QgYXMgc2V0dGVyIGlmIHdlIGdvdCBhIHN0cmluZ1xuXG4gICAgLy8gVGhlIGRlZmF1bHQgZm9yIGltcG9ydCBpcywgdGhhdCB0aGUgY3VycmVudCBub2RlIGlzIG5vdCByZXBsYWNlZFxuICAgIG91dGVyWE1MID0gb3V0ZXJYTUwgPT0gbnVsbCA/IGZhbHNlIDogb3V0ZXJYTUxcblxuICAgIC8vIENyZWF0ZSB0ZW1wb3JhcnkgaG9sZGVyXG4gICAgY29uc3Qgd2VsbCA9IGNyZWF0ZSgnd3JhcHBlcicsIG5zKVxuICAgIGNvbnN0IGZyYWdtZW50ID0gZ2xvYmFscy5kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KClcblxuICAgIC8vIER1bXAgcmF3IHN2Z1xuICAgIHdlbGwuaW5uZXJIVE1MID0geG1sT3JGblxuXG4gICAgLy8gVHJhbnNwbGFudCBub2RlcyBpbnRvIHRoZSBmcmFnbWVudFxuICAgIGZvciAobGV0IGxlbiA9IHdlbGwuY2hpbGRyZW4ubGVuZ3RoOyBsZW4tLTsgKSB7XG4gICAgICBmcmFnbWVudC5hcHBlbmRDaGlsZCh3ZWxsLmZpcnN0RWxlbWVudENoaWxkKVxuICAgIH1cblxuICAgIGNvbnN0IHBhcmVudCA9IHRoaXMucGFyZW50KClcblxuICAgIC8vIEFkZCB0aGUgd2hvbGUgZnJhZ21lbnQgYXQgb25jZVxuICAgIHJldHVybiBvdXRlclhNTCA/IHRoaXMucmVwbGFjZShmcmFnbWVudCkgJiYgcGFyZW50IDogdGhpcy5hZGQoZnJhZ21lbnQpXG4gIH1cbn1cblxuZXh0ZW5kKERvbSwgeyBhdHRyLCBmaW5kLCBmaW5kT25lIH0pXG5yZWdpc3RlcihEb20sICdEb20nKVxuIiwgImltcG9ydCB7IGJib3gsIHJib3gsIGluc2lkZSB9IGZyb20gJy4uL3R5cGVzL0JveC5qcydcbmltcG9ydCB7IGN0bSwgc2NyZWVuQ1RNIH0gZnJvbSAnLi4vdHlwZXMvTWF0cml4LmpzJ1xuaW1wb3J0IHtcbiAgZXh0ZW5kLFxuICBnZXRDbGFzcyxcbiAgbWFrZUluc3RhbmNlLFxuICByZWdpc3RlcixcbiAgcm9vdFxufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uL3V0aWxzL3dpbmRvdy5qcydcbmltcG9ydCB7IHBvaW50IH0gZnJvbSAnLi4vdHlwZXMvUG9pbnQuanMnXG5pbXBvcnQgeyBwcm9wb3J0aW9uYWxTaXplLCB3cml0ZURhdGFUb0RvbSB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IHsgcmVmZXJlbmNlIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3JlZ2V4LmpzJ1xuaW1wb3J0IERvbSBmcm9tICcuL0RvbS5qcydcbmltcG9ydCBMaXN0IGZyb20gJy4uL3R5cGVzL0xpc3QuanMnXG5pbXBvcnQgU1ZHTnVtYmVyIGZyb20gJy4uL3R5cGVzL1NWR051bWJlci5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRWxlbWVudCBleHRlbmRzIERvbSB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzKSB7XG4gICAgc3VwZXIobm9kZSwgYXR0cnMpXG5cbiAgICAvLyBpbml0aWFsaXplIGRhdGEgb2JqZWN0XG4gICAgdGhpcy5kb20gPSB7fVxuXG4gICAgLy8gY3JlYXRlIGNpcmN1bGFyIHJlZmVyZW5jZVxuICAgIHRoaXMubm9kZS5pbnN0YW5jZSA9IHRoaXNcblxuICAgIGlmIChub2RlLmhhc0F0dHJpYnV0ZSgnZGF0YS1zdmdqcycpIHx8IG5vZGUuaGFzQXR0cmlidXRlKCdzdmdqczpkYXRhJykpIHtcbiAgICAgIC8vIHB1bGwgc3ZnanMgZGF0YSBmcm9tIHRoZSBkb20gKGdldEF0dHJpYnV0ZU5TIGRvZXNuJ3Qgd29yayBpbiBodG1sNSlcbiAgICAgIHRoaXMuc2V0RGF0YShcbiAgICAgICAgSlNPTi5wYXJzZShub2RlLmdldEF0dHJpYnV0ZSgnZGF0YS1zdmdqcycpKSA/P1xuICAgICAgICAgIEpTT04ucGFyc2Uobm9kZS5nZXRBdHRyaWJ1dGUoJ3N2Z2pzOmRhdGEnKSkgPz9cbiAgICAgICAgICB7fVxuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIC8vIE1vdmUgZWxlbWVudCBieSBpdHMgY2VudGVyXG4gIGNlbnRlcih4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMuY3goeCkuY3koeSlcbiAgfVxuXG4gIC8vIE1vdmUgYnkgY2VudGVyIG92ZXIgeC1heGlzXG4gIGN4KHgpIHtcbiAgICByZXR1cm4geCA9PSBudWxsXG4gICAgICA/IHRoaXMueCgpICsgdGhpcy53aWR0aCgpIC8gMlxuICAgICAgOiB0aGlzLngoeCAtIHRoaXMud2lkdGgoKSAvIDIpXG4gIH1cblxuICAvLyBNb3ZlIGJ5IGNlbnRlciBvdmVyIHktYXhpc1xuICBjeSh5KSB7XG4gICAgcmV0dXJuIHkgPT0gbnVsbFxuICAgICAgPyB0aGlzLnkoKSArIHRoaXMuaGVpZ2h0KCkgLyAyXG4gICAgICA6IHRoaXMueSh5IC0gdGhpcy5oZWlnaHQoKSAvIDIpXG4gIH1cblxuICAvLyBHZXQgZGVmc1xuICBkZWZzKCkge1xuICAgIGNvbnN0IHJvb3QgPSB0aGlzLnJvb3QoKVxuICAgIHJldHVybiByb290ICYmIHJvb3QuZGVmcygpXG4gIH1cblxuICAvLyBSZWxhdGl2ZSBtb3ZlIG92ZXIgeCBhbmQgeSBheGVzXG4gIGRtb3ZlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5keCh4KS5keSh5KVxuICB9XG5cbiAgLy8gUmVsYXRpdmUgbW92ZSBvdmVyIHggYXhpc1xuICBkeCh4ID0gMCkge1xuICAgIHJldHVybiB0aGlzLngobmV3IFNWR051bWJlcih4KS5wbHVzKHRoaXMueCgpKSlcbiAgfVxuXG4gIC8vIFJlbGF0aXZlIG1vdmUgb3ZlciB5IGF4aXNcbiAgZHkoeSA9IDApIHtcbiAgICByZXR1cm4gdGhpcy55KG5ldyBTVkdOdW1iZXIoeSkucGx1cyh0aGlzLnkoKSkpXG4gIH1cblxuICBnZXRFdmVudEhvbGRlcigpIHtcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU2V0IGhlaWdodCBvZiBlbGVtZW50XG4gIGhlaWdodChoZWlnaHQpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdoZWlnaHQnLCBoZWlnaHQpXG4gIH1cblxuICAvLyBNb3ZlIGVsZW1lbnQgdG8gZ2l2ZW4geCBhbmQgeSB2YWx1ZXNcbiAgbW92ZSh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMueCh4KS55KHkpXG4gIH1cblxuICAvLyByZXR1cm4gYXJyYXkgb2YgYWxsIGFuY2VzdG9ycyBvZiBnaXZlbiB0eXBlIHVwIHRvIHRoZSByb290IHN2Z1xuICBwYXJlbnRzKHVudGlsID0gdGhpcy5yb290KCkpIHtcbiAgICBjb25zdCBpc1NlbGVjdG9yID0gdHlwZW9mIHVudGlsID09PSAnc3RyaW5nJ1xuICAgIGlmICghaXNTZWxlY3Rvcikge1xuICAgICAgdW50aWwgPSBtYWtlSW5zdGFuY2UodW50aWwpXG4gICAgfVxuICAgIGNvbnN0IHBhcmVudHMgPSBuZXcgTGlzdCgpXG4gICAgbGV0IHBhcmVudCA9IHRoaXNcblxuICAgIHdoaWxlIChcbiAgICAgIChwYXJlbnQgPSBwYXJlbnQucGFyZW50KCkpICYmXG4gICAgICBwYXJlbnQubm9kZSAhPT0gZ2xvYmFscy5kb2N1bWVudCAmJlxuICAgICAgcGFyZW50Lm5vZGVOYW1lICE9PSAnI2RvY3VtZW50LWZyYWdtZW50J1xuICAgICkge1xuICAgICAgcGFyZW50cy5wdXNoKHBhcmVudClcblxuICAgICAgaWYgKCFpc1NlbGVjdG9yICYmIHBhcmVudC5ub2RlID09PSB1bnRpbC5ub2RlKSB7XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgICBpZiAoaXNTZWxlY3RvciAmJiBwYXJlbnQubWF0Y2hlcyh1bnRpbCkpIHtcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICAgIGlmIChwYXJlbnQubm9kZSA9PT0gdGhpcy5yb290KCkubm9kZSkge1xuICAgICAgICAvLyBXZSB3b3JrZWQgb3VyIHdheSB0byB0aGUgcm9vdCBhbmQgZGlkbid0IG1hdGNoIGB1bnRpbGBcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcGFyZW50c1xuICB9XG5cbiAgLy8gR2V0IHJlZmVyZW5jZWQgZWxlbWVudCBmb3JtIGF0dHJpYnV0ZSB2YWx1ZVxuICByZWZlcmVuY2UoYXR0cikge1xuICAgIGF0dHIgPSB0aGlzLmF0dHIoYXR0cilcbiAgICBpZiAoIWF0dHIpIHJldHVybiBudWxsXG5cbiAgICBjb25zdCBtID0gKGF0dHIgKyAnJykubWF0Y2gocmVmZXJlbmNlKVxuICAgIHJldHVybiBtID8gbWFrZUluc3RhbmNlKG1bMV0pIDogbnVsbFxuICB9XG5cbiAgLy8gR2V0IHBhcmVudCBkb2N1bWVudFxuICByb290KCkge1xuICAgIGNvbnN0IHAgPSB0aGlzLnBhcmVudChnZXRDbGFzcyhyb290KSlcbiAgICByZXR1cm4gcCAmJiBwLnJvb3QoKVxuICB9XG5cbiAgLy8gc2V0IGdpdmVuIGRhdGEgdG8gdGhlIGVsZW1lbnRzIGRhdGEgcHJvcGVydHlcbiAgc2V0RGF0YShvKSB7XG4gICAgdGhpcy5kb20gPSBvXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFNldCBlbGVtZW50IHNpemUgdG8gZ2l2ZW4gd2lkdGggYW5kIGhlaWdodFxuICBzaXplKHdpZHRoLCBoZWlnaHQpIHtcbiAgICBjb25zdCBwID0gcHJvcG9ydGlvbmFsU2l6ZSh0aGlzLCB3aWR0aCwgaGVpZ2h0KVxuXG4gICAgcmV0dXJuIHRoaXMud2lkdGgobmV3IFNWR051bWJlcihwLndpZHRoKSkuaGVpZ2h0KG5ldyBTVkdOdW1iZXIocC5oZWlnaHQpKVxuICB9XG5cbiAgLy8gU2V0IHdpZHRoIG9mIGVsZW1lbnRcbiAgd2lkdGgod2lkdGgpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCd3aWR0aCcsIHdpZHRoKVxuICB9XG5cbiAgLy8gd3JpdGUgc3ZnanMgZGF0YSB0byB0aGUgZG9tXG4gIHdyaXRlRGF0YVRvRG9tKCkge1xuICAgIHdyaXRlRGF0YVRvRG9tKHRoaXMsIHRoaXMuZG9tKVxuICAgIHJldHVybiBzdXBlci53cml0ZURhdGFUb0RvbSgpXG4gIH1cblxuICAvLyBNb3ZlIG92ZXIgeC1heGlzXG4gIHgoeCkge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ3gnLCB4KVxuICB9XG5cbiAgLy8gTW92ZSBvdmVyIHktYXhpc1xuICB5KHkpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCd5JywgeSlcbiAgfVxufVxuXG5leHRlbmQoRWxlbWVudCwge1xuICBiYm94LFxuICByYm94LFxuICBpbnNpZGUsXG4gIHBvaW50LFxuICBjdG0sXG4gIHNjcmVlbkNUTVxufSlcblxucmVnaXN0ZXIoRWxlbWVudCwgJ0VsZW1lbnQnKVxuIiwgImltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uLy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgQ29sb3IgZnJvbSAnLi4vLi4vdHlwZXMvQ29sb3IuanMnXG5pbXBvcnQgRWxlbWVudCBmcm9tICcuLi8uLi9lbGVtZW50cy9FbGVtZW50LmpzJ1xuaW1wb3J0IE1hdHJpeCBmcm9tICcuLi8uLi90eXBlcy9NYXRyaXguanMnXG5pbXBvcnQgUG9pbnQgZnJvbSAnLi4vLi4vdHlwZXMvUG9pbnQuanMnXG5pbXBvcnQgU1ZHTnVtYmVyIGZyb20gJy4uLy4uL3R5cGVzL1NWR051bWJlci5qcydcblxuLy8gRGVmaW5lIGxpc3Qgb2YgYXZhaWxhYmxlIGF0dHJpYnV0ZXMgZm9yIHN0cm9rZSBhbmQgZmlsbFxuY29uc3Qgc3VnYXIgPSB7XG4gIHN0cm9rZTogW1xuICAgICdjb2xvcicsXG4gICAgJ3dpZHRoJyxcbiAgICAnb3BhY2l0eScsXG4gICAgJ2xpbmVjYXAnLFxuICAgICdsaW5lam9pbicsXG4gICAgJ21pdGVybGltaXQnLFxuICAgICdkYXNoYXJyYXknLFxuICAgICdkYXNob2Zmc2V0J1xuICBdLFxuICBmaWxsOiBbJ2NvbG9yJywgJ29wYWNpdHknLCAncnVsZSddLFxuICBwcmVmaXg6IGZ1bmN0aW9uICh0LCBhKSB7XG4gICAgcmV0dXJuIGEgPT09ICdjb2xvcicgPyB0IDogdCArICctJyArIGFcbiAgfVxufVxuXG4vLyBBZGQgc3VnYXIgZm9yIGZpbGwgYW5kIHN0cm9rZVxuO1snZmlsbCcsICdzdHJva2UnXS5mb3JFYWNoKGZ1bmN0aW9uIChtKSB7XG4gIGNvbnN0IGV4dGVuc2lvbiA9IHt9XG4gIGxldCBpXG5cbiAgZXh0ZW5zaW9uW21dID0gZnVuY3Rpb24gKG8pIHtcbiAgICBpZiAodHlwZW9mIG8gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICByZXR1cm4gdGhpcy5hdHRyKG0pXG4gICAgfVxuICAgIGlmIChcbiAgICAgIHR5cGVvZiBvID09PSAnc3RyaW5nJyB8fFxuICAgICAgbyBpbnN0YW5jZW9mIENvbG9yIHx8XG4gICAgICBDb2xvci5pc1JnYihvKSB8fFxuICAgICAgbyBpbnN0YW5jZW9mIEVsZW1lbnRcbiAgICApIHtcbiAgICAgIHRoaXMuYXR0cihtLCBvKVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBzZXQgYWxsIGF0dHJpYnV0ZXMgZnJvbSBzdWdhci5maWxsIGFuZCBzdWdhci5zdHJva2UgbGlzdFxuICAgICAgZm9yIChpID0gc3VnYXJbbV0ubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgaWYgKG9bc3VnYXJbbV1baV1dICE9IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmF0dHIoc3VnYXIucHJlZml4KG0sIHN1Z2FyW21dW2ldKSwgb1tzdWdhclttXVtpXV0pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgcmVnaXN0ZXJNZXRob2RzKFsnRWxlbWVudCcsICdSdW5uZXInXSwgZXh0ZW5zaW9uKVxufSlcblxucmVnaXN0ZXJNZXRob2RzKFsnRWxlbWVudCcsICdSdW5uZXInXSwge1xuICAvLyBMZXQgdGhlIHVzZXIgc2V0IHRoZSBtYXRyaXggZGlyZWN0bHlcbiAgbWF0cml4OiBmdW5jdGlvbiAobWF0LCBiLCBjLCBkLCBlLCBmKSB7XG4gICAgLy8gQWN0IGFzIGEgZ2V0dGVyXG4gICAgaWYgKG1hdCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbmV3IE1hdHJpeCh0aGlzKVxuICAgIH1cblxuICAgIC8vIEFjdCBhcyBhIHNldHRlciwgdGhlIHVzZXIgY2FuIHBhc3MgYSBtYXRyaXggb3IgYSBzZXQgb2YgbnVtYmVyc1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ3RyYW5zZm9ybScsIG5ldyBNYXRyaXgobWF0LCBiLCBjLCBkLCBlLCBmKSlcbiAgfSxcblxuICAvLyBNYXAgcm90YXRpb24gdG8gdHJhbnNmb3JtXG4gIHJvdGF0ZTogZnVuY3Rpb24gKGFuZ2xlLCBjeCwgY3kpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0oeyByb3RhdGU6IGFuZ2xlLCBveDogY3gsIG95OiBjeSB9LCB0cnVlKVxuICB9LFxuXG4gIC8vIE1hcCBza2V3IHRvIHRyYW5zZm9ybVxuICBza2V3OiBmdW5jdGlvbiAoeCwgeSwgY3gsIGN5KSB7XG4gICAgcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGggPT09IDEgfHwgYXJndW1lbnRzLmxlbmd0aCA9PT0gM1xuICAgICAgPyB0aGlzLnRyYW5zZm9ybSh7IHNrZXc6IHgsIG94OiB5LCBveTogY3ggfSwgdHJ1ZSlcbiAgICAgIDogdGhpcy50cmFuc2Zvcm0oeyBza2V3OiBbeCwgeV0sIG94OiBjeCwgb3k6IGN5IH0sIHRydWUpXG4gIH0sXG5cbiAgc2hlYXI6IGZ1bmN0aW9uIChsYW0sIGN4LCBjeSkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybSh7IHNoZWFyOiBsYW0sIG94OiBjeCwgb3k6IGN5IH0sIHRydWUpXG4gIH0sXG5cbiAgLy8gTWFwIHNjYWxlIHRvIHRyYW5zZm9ybVxuICBzY2FsZTogZnVuY3Rpb24gKHgsIHksIGN4LCBjeSkge1xuICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID09PSAxIHx8IGFyZ3VtZW50cy5sZW5ndGggPT09IDNcbiAgICAgID8gdGhpcy50cmFuc2Zvcm0oeyBzY2FsZTogeCwgb3g6IHksIG95OiBjeCB9LCB0cnVlKVxuICAgICAgOiB0aGlzLnRyYW5zZm9ybSh7IHNjYWxlOiBbeCwgeV0sIG94OiBjeCwgb3k6IGN5IH0sIHRydWUpXG4gIH0sXG5cbiAgLy8gTWFwIHRyYW5zbGF0ZSB0byB0cmFuc2Zvcm1cbiAgdHJhbnNsYXRlOiBmdW5jdGlvbiAoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybSh7IHRyYW5zbGF0ZTogW3gsIHldIH0sIHRydWUpXG4gIH0sXG5cbiAgLy8gTWFwIHJlbGF0aXZlIHRyYW5zbGF0aW9ucyB0byB0cmFuc2Zvcm1cbiAgcmVsYXRpdmU6IGZ1bmN0aW9uICh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtKHsgcmVsYXRpdmU6IFt4LCB5XSB9LCB0cnVlKVxuICB9LFxuXG4gIC8vIE1hcCBmbGlwIHRvIHRyYW5zZm9ybVxuICBmbGlwOiBmdW5jdGlvbiAoZGlyZWN0aW9uID0gJ2JvdGgnLCBvcmlnaW4gPSAnY2VudGVyJykge1xuICAgIGlmICgneHlib3RodHJ1ZScuaW5kZXhPZihkaXJlY3Rpb24pID09PSAtMSkge1xuICAgICAgb3JpZ2luID0gZGlyZWN0aW9uXG4gICAgICBkaXJlY3Rpb24gPSAnYm90aCdcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0oeyBmbGlwOiBkaXJlY3Rpb24sIG9yaWdpbjogb3JpZ2luIH0sIHRydWUpXG4gIH0sXG5cbiAgLy8gT3BhY2l0eVxuICBvcGFjaXR5OiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdvcGFjaXR5JywgdmFsdWUpXG4gIH1cbn0pXG5cbnJlZ2lzdGVyTWV0aG9kcygncmFkaXVzJywge1xuICAvLyBBZGQgeCBhbmQgeSByYWRpdXNcbiAgcmFkaXVzOiBmdW5jdGlvbiAoeCwgeSA9IHgpIHtcbiAgICBjb25zdCB0eXBlID0gKHRoaXMuX2VsZW1lbnQgfHwgdGhpcykudHlwZVxuICAgIHJldHVybiB0eXBlID09PSAncmFkaWFsR3JhZGllbnQnXG4gICAgICA/IHRoaXMuYXR0cigncicsIG5ldyBTVkdOdW1iZXIoeCkpXG4gICAgICA6IHRoaXMucngoeCkucnkoeSlcbiAgfVxufSlcblxucmVnaXN0ZXJNZXRob2RzKCdQYXRoJywge1xuICAvLyBHZXQgcGF0aCBsZW5ndGhcbiAgbGVuZ3RoOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZS5nZXRUb3RhbExlbmd0aCgpXG4gIH0sXG4gIC8vIEdldCBwb2ludCBhdCBsZW5ndGhcbiAgcG9pbnRBdDogZnVuY3Rpb24gKGxlbmd0aCkge1xuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcy5ub2RlLmdldFBvaW50QXRMZW5ndGgobGVuZ3RoKSlcbiAgfVxufSlcblxucmVnaXN0ZXJNZXRob2RzKFsnRWxlbWVudCcsICdSdW5uZXInXSwge1xuICAvLyBTZXQgZm9udFxuICBmb250OiBmdW5jdGlvbiAoYSwgdikge1xuICAgIGlmICh0eXBlb2YgYSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGZvciAodiBpbiBhKSB0aGlzLmZvbnQodiwgYVt2XSlcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgcmV0dXJuIGEgPT09ICdsZWFkaW5nJ1xuICAgICAgPyB0aGlzLmxlYWRpbmcodilcbiAgICAgIDogYSA9PT0gJ2FuY2hvcidcbiAgICAgICAgPyB0aGlzLmF0dHIoJ3RleHQtYW5jaG9yJywgdilcbiAgICAgICAgOiBhID09PSAnc2l6ZScgfHxcbiAgICAgICAgICAgIGEgPT09ICdmYW1pbHknIHx8XG4gICAgICAgICAgICBhID09PSAnd2VpZ2h0JyB8fFxuICAgICAgICAgICAgYSA9PT0gJ3N0cmV0Y2gnIHx8XG4gICAgICAgICAgICBhID09PSAndmFyaWFudCcgfHxcbiAgICAgICAgICAgIGEgPT09ICdzdHlsZSdcbiAgICAgICAgICA/IHRoaXMuYXR0cignZm9udC0nICsgYSwgdilcbiAgICAgICAgICA6IHRoaXMuYXR0cihhLCB2KVxuICB9XG59KVxuXG4vLyBBZGQgZXZlbnRzIHRvIGVsZW1lbnRzXG5jb25zdCBtZXRob2RzID0gW1xuICAnY2xpY2snLFxuICAnZGJsY2xpY2snLFxuICAnbW91c2Vkb3duJyxcbiAgJ21vdXNldXAnLFxuICAnbW91c2VvdmVyJyxcbiAgJ21vdXNlb3V0JyxcbiAgJ21vdXNlbW92ZScsXG4gICdtb3VzZWVudGVyJyxcbiAgJ21vdXNlbGVhdmUnLFxuICAndG91Y2hzdGFydCcsXG4gICd0b3VjaG1vdmUnLFxuICAndG91Y2hsZWF2ZScsXG4gICd0b3VjaGVuZCcsXG4gICd0b3VjaGNhbmNlbCcsXG4gICdjb250ZXh0bWVudScsXG4gICd3aGVlbCcsXG4gICdwb2ludGVyZG93bicsXG4gICdwb2ludGVybW92ZScsXG4gICdwb2ludGVydXAnLFxuICAncG9pbnRlcmxlYXZlJyxcbiAgJ3BvaW50ZXJjYW5jZWwnXG5dLnJlZHVjZShmdW5jdGlvbiAobGFzdCwgZXZlbnQpIHtcbiAgLy8gYWRkIGV2ZW50IHRvIEVsZW1lbnRcbiAgY29uc3QgZm4gPSBmdW5jdGlvbiAoZikge1xuICAgIGlmIChmID09PSBudWxsKSB7XG4gICAgICB0aGlzLm9mZihldmVudClcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vbihldmVudCwgZilcbiAgICB9XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGxhc3RbZXZlbnRdID0gZm5cbiAgcmV0dXJuIGxhc3Rcbn0sIHt9KVxuXG5yZWdpc3Rlck1ldGhvZHMoJ0VsZW1lbnQnLCBtZXRob2RzKVxuIiwgImltcG9ydCB7IGdldE9yaWdpbiwgaXNEZXNjcmlwdGl2ZSB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IHsgZGVsaW1pdGVyLCB0cmFuc2Zvcm1zIH0gZnJvbSAnLi4vY29yZS9yZWdleC5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uLy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgTWF0cml4IGZyb20gJy4uLy4uL3R5cGVzL01hdHJpeC5qcydcblxuLy8gUmVzZXQgYWxsIHRyYW5zZm9ybWF0aW9uc1xuZXhwb3J0IGZ1bmN0aW9uIHVudHJhbnNmb3JtKCkge1xuICByZXR1cm4gdGhpcy5hdHRyKCd0cmFuc2Zvcm0nLCBudWxsKVxufVxuXG4vLyBtZXJnZSB0aGUgd2hvbGUgdHJhbnNmb3JtYXRpb24gY2hhaW4gaW50byBvbmUgbWF0cml4IGFuZCByZXR1cm5zIGl0XG5leHBvcnQgZnVuY3Rpb24gbWF0cml4aWZ5KCkge1xuICBjb25zdCBtYXRyaXggPSAodGhpcy5hdHRyKCd0cmFuc2Zvcm0nKSB8fCAnJylcbiAgICAvLyBzcGxpdCB0cmFuc2Zvcm1hdGlvbnNcbiAgICAuc3BsaXQodHJhbnNmb3JtcylcbiAgICAuc2xpY2UoMCwgLTEpXG4gICAgLm1hcChmdW5jdGlvbiAoc3RyKSB7XG4gICAgICAvLyBnZW5lcmF0ZSBrZXkgPT4gdmFsdWUgcGFpcnNcbiAgICAgIGNvbnN0IGt2ID0gc3RyLnRyaW0oKS5zcGxpdCgnKCcpXG4gICAgICByZXR1cm4gW1xuICAgICAgICBrdlswXSxcbiAgICAgICAga3ZbMV0uc3BsaXQoZGVsaW1pdGVyKS5tYXAoZnVuY3Rpb24gKHN0cikge1xuICAgICAgICAgIHJldHVybiBwYXJzZUZsb2F0KHN0cilcbiAgICAgICAgfSlcbiAgICAgIF1cbiAgICB9KVxuICAgIC5yZXZlcnNlKClcbiAgICAvLyBtZXJnZSBldmVyeSB0cmFuc2Zvcm1hdGlvbiBpbnRvIG9uZSBtYXRyaXhcbiAgICAucmVkdWNlKGZ1bmN0aW9uIChtYXRyaXgsIHRyYW5zZm9ybSkge1xuICAgICAgaWYgKHRyYW5zZm9ybVswXSA9PT0gJ21hdHJpeCcpIHtcbiAgICAgICAgcmV0dXJuIG1hdHJpeC5sbXVsdGlwbHkoTWF0cml4LmZyb21BcnJheSh0cmFuc2Zvcm1bMV0pKVxuICAgICAgfVxuICAgICAgcmV0dXJuIG1hdHJpeFt0cmFuc2Zvcm1bMF1dLmFwcGx5KG1hdHJpeCwgdHJhbnNmb3JtWzFdKVxuICAgIH0sIG5ldyBNYXRyaXgoKSlcblxuICByZXR1cm4gbWF0cml4XG59XG5cbi8vIGFkZCBhbiBlbGVtZW50IHRvIGFub3RoZXIgcGFyZW50IHdpdGhvdXQgY2hhbmdpbmcgdGhlIHZpc3VhbCByZXByZXNlbnRhdGlvbiBvbiB0aGUgc2NyZWVuXG5leHBvcnQgZnVuY3Rpb24gdG9QYXJlbnQocGFyZW50LCBpKSB7XG4gIGlmICh0aGlzID09PSBwYXJlbnQpIHJldHVybiB0aGlzXG5cbiAgaWYgKGlzRGVzY3JpcHRpdmUodGhpcy5ub2RlKSkgcmV0dXJuIHRoaXMuYWRkVG8ocGFyZW50LCBpKVxuXG4gIGNvbnN0IGN0bSA9IHRoaXMuc2NyZWVuQ1RNKClcbiAgY29uc3QgcEN0bSA9IHBhcmVudC5zY3JlZW5DVE0oKS5pbnZlcnNlKClcblxuICB0aGlzLmFkZFRvKHBhcmVudCwgaSkudW50cmFuc2Zvcm0oKS50cmFuc2Zvcm0ocEN0bS5tdWx0aXBseShjdG0pKVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIHNhbWUgYXMgYWJvdmUgd2l0aCBwYXJlbnQgZXF1YWxzIHJvb3Qtc3ZnXG5leHBvcnQgZnVuY3Rpb24gdG9Sb290KGkpIHtcbiAgcmV0dXJuIHRoaXMudG9QYXJlbnQodGhpcy5yb290KCksIGkpXG59XG5cbi8vIEFkZCB0cmFuc2Zvcm1hdGlvbnNcbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm0obywgcmVsYXRpdmUpIHtcbiAgLy8gQWN0IGFzIGEgZ2V0dGVyIGlmIG5vIG9iamVjdCB3YXMgcGFzc2VkXG4gIGlmIChvID09IG51bGwgfHwgdHlwZW9mIG8gPT09ICdzdHJpbmcnKSB7XG4gICAgY29uc3QgZGVjb21wb3NlZCA9IG5ldyBNYXRyaXgodGhpcykuZGVjb21wb3NlKClcbiAgICByZXR1cm4gbyA9PSBudWxsID8gZGVjb21wb3NlZCA6IGRlY29tcG9zZWRbb11cbiAgfVxuXG4gIGlmICghTWF0cml4LmlzTWF0cml4TGlrZShvKSkge1xuICAgIC8vIFNldCB0aGUgb3JpZ2luIGFjY29yZGluZyB0byB0aGUgZGVmaW5lZCB0cmFuc2Zvcm1cbiAgICBvID0geyAuLi5vLCBvcmlnaW46IGdldE9yaWdpbihvLCB0aGlzKSB9XG4gIH1cblxuICAvLyBUaGUgdXNlciBjYW4gcGFzcyBhIGJvb2xlYW4sIGFuIEVsZW1lbnQgb3IgYW4gTWF0cml4IG9yIG5vdGhpbmdcbiAgY29uc3QgY2xlYW5SZWxhdGl2ZSA9IHJlbGF0aXZlID09PSB0cnVlID8gdGhpcyA6IHJlbGF0aXZlIHx8IGZhbHNlXG4gIGNvbnN0IHJlc3VsdCA9IG5ldyBNYXRyaXgoY2xlYW5SZWxhdGl2ZSkudHJhbnNmb3JtKG8pXG4gIHJldHVybiB0aGlzLmF0dHIoJ3RyYW5zZm9ybScsIHJlc3VsdClcbn1cblxucmVnaXN0ZXJNZXRob2RzKCdFbGVtZW50Jywge1xuICB1bnRyYW5zZm9ybSxcbiAgbWF0cml4aWZ5LFxuICB0b1BhcmVudCxcbiAgdG9Sb290LFxuICB0cmFuc2Zvcm1cbn0pXG4iLCAiaW1wb3J0IHsgcmVnaXN0ZXIgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IEVsZW1lbnQgZnJvbSAnLi9FbGVtZW50LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb250YWluZXIgZXh0ZW5kcyBFbGVtZW50IHtcbiAgZmxhdHRlbigpIHtcbiAgICB0aGlzLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKHRoaXMgaW5zdGFuY2VvZiBDb250YWluZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmxhdHRlbigpLnVuZ3JvdXAoKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdW5ncm91cChwYXJlbnQgPSB0aGlzLnBhcmVudCgpLCBpbmRleCA9IHBhcmVudC5pbmRleCh0aGlzKSkge1xuICAgIC8vIHdoZW4gcGFyZW50ICE9IHRoaXMsIHdlIHdhbnQgYXBwZW5kIGFsbCBlbGVtZW50cyB0byB0aGUgZW5kXG4gICAgaW5kZXggPSBpbmRleCA9PT0gLTEgPyBwYXJlbnQuY2hpbGRyZW4oKS5sZW5ndGggOiBpbmRleFxuXG4gICAgdGhpcy5lYWNoKGZ1bmN0aW9uIChpLCBjaGlsZHJlbikge1xuICAgICAgLy8gcmV2ZXJzZSBlYWNoXG4gICAgICByZXR1cm4gY2hpbGRyZW5bY2hpbGRyZW4ubGVuZ3RoIC0gaSAtIDFdLnRvUGFyZW50KHBhcmVudCwgaW5kZXgpXG4gICAgfSlcblxuICAgIHJldHVybiB0aGlzLnJlbW92ZSgpXG4gIH1cbn1cblxucmVnaXN0ZXIoQ29udGFpbmVyLCAnQ29udGFpbmVyJylcbiIsICJpbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERlZnMgZXh0ZW5kcyBDb250YWluZXIge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2RlZnMnLCBub2RlKSwgYXR0cnMpXG4gIH1cblxuICBmbGF0dGVuKCkge1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB1bmdyb3VwKCkge1xuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cblxucmVnaXN0ZXIoRGVmcywgJ0RlZnMnKVxuIiwgImltcG9ydCB7IHJlZ2lzdGVyIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCBFbGVtZW50IGZyb20gJy4vRWxlbWVudC5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2hhcGUgZXh0ZW5kcyBFbGVtZW50IHt9XG5cbnJlZ2lzdGVyKFNoYXBlLCAnU2hhcGUnKVxuIiwgImltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuXG4vLyBSYWRpdXMgeCB2YWx1ZVxuZXhwb3J0IGZ1bmN0aW9uIHJ4KHJ4KSB7XG4gIHJldHVybiB0aGlzLmF0dHIoJ3J4JywgcngpXG59XG5cbi8vIFJhZGl1cyB5IHZhbHVlXG5leHBvcnQgZnVuY3Rpb24gcnkocnkpIHtcbiAgcmV0dXJuIHRoaXMuYXR0cigncnknLCByeSlcbn1cblxuLy8gTW92ZSBvdmVyIHgtYXhpc1xuZXhwb3J0IGZ1bmN0aW9uIHgoeCkge1xuICByZXR1cm4geCA9PSBudWxsID8gdGhpcy5jeCgpIC0gdGhpcy5yeCgpIDogdGhpcy5jeCh4ICsgdGhpcy5yeCgpKVxufVxuXG4vLyBNb3ZlIG92ZXIgeS1heGlzXG5leHBvcnQgZnVuY3Rpb24geSh5KSB7XG4gIHJldHVybiB5ID09IG51bGwgPyB0aGlzLmN5KCkgLSB0aGlzLnJ5KCkgOiB0aGlzLmN5KHkgKyB0aGlzLnJ5KCkpXG59XG5cbi8vIE1vdmUgYnkgY2VudGVyIG92ZXIgeC1heGlzXG5leHBvcnQgZnVuY3Rpb24gY3goeCkge1xuICByZXR1cm4gdGhpcy5hdHRyKCdjeCcsIHgpXG59XG5cbi8vIE1vdmUgYnkgY2VudGVyIG92ZXIgeS1heGlzXG5leHBvcnQgZnVuY3Rpb24gY3koeSkge1xuICByZXR1cm4gdGhpcy5hdHRyKCdjeScsIHkpXG59XG5cbi8vIFNldCB3aWR0aCBvZiBlbGVtZW50XG5leHBvcnQgZnVuY3Rpb24gd2lkdGgod2lkdGgpIHtcbiAgcmV0dXJuIHdpZHRoID09IG51bGwgPyB0aGlzLnJ4KCkgKiAyIDogdGhpcy5yeChuZXcgU1ZHTnVtYmVyKHdpZHRoKS5kaXZpZGUoMikpXG59XG5cbi8vIFNldCBoZWlnaHQgb2YgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIGhlaWdodChoZWlnaHQpIHtcbiAgcmV0dXJuIGhlaWdodCA9PSBudWxsXG4gICAgPyB0aGlzLnJ5KCkgKiAyXG4gICAgOiB0aGlzLnJ5KG5ldyBTVkdOdW1iZXIoaGVpZ2h0KS5kaXZpZGUoMikpXG59XG4iLCAiaW1wb3J0IHtcbiAgZXh0ZW5kLFxuICBub2RlT3JOZXcsXG4gIHJlZ2lzdGVyLFxuICB3cmFwV2l0aEF0dHJDaGVja1xufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcHJvcG9ydGlvbmFsU2l6ZSB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5pbXBvcnQgKiBhcyBjaXJjbGVkIGZyb20gJy4uL21vZHVsZXMvY29yZS9jaXJjbGVkLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBFbGxpcHNlIGV4dGVuZHMgU2hhcGUge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2VsbGlwc2UnLCBub2RlKSwgYXR0cnMpXG4gIH1cblxuICBzaXplKHdpZHRoLCBoZWlnaHQpIHtcbiAgICBjb25zdCBwID0gcHJvcG9ydGlvbmFsU2l6ZSh0aGlzLCB3aWR0aCwgaGVpZ2h0KVxuXG4gICAgcmV0dXJuIHRoaXMucngobmV3IFNWR051bWJlcihwLndpZHRoKS5kaXZpZGUoMikpLnJ5KFxuICAgICAgbmV3IFNWR051bWJlcihwLmhlaWdodCkuZGl2aWRlKDIpXG4gICAgKVxuICB9XG59XG5cbmV4dGVuZChFbGxpcHNlLCBjaXJjbGVkKVxuXG5yZWdpc3Rlck1ldGhvZHMoJ0NvbnRhaW5lcicsIHtcbiAgLy8gQ3JlYXRlIGFuIGVsbGlwc2VcbiAgZWxsaXBzZTogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHdpZHRoID0gMCwgaGVpZ2h0ID0gd2lkdGgpIHtcbiAgICByZXR1cm4gdGhpcy5wdXQobmV3IEVsbGlwc2UoKSkuc2l6ZSh3aWR0aCwgaGVpZ2h0KS5tb3ZlKDAsIDApXG4gIH0pXG59KVxuXG5yZWdpc3RlcihFbGxpcHNlLCAnRWxsaXBzZScpXG4iLCAiaW1wb3J0IERvbSBmcm9tICcuL0RvbS5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgeyByZWdpc3RlciwgY3JlYXRlIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcblxuY2xhc3MgRnJhZ21lbnQgZXh0ZW5kcyBEb20ge1xuICBjb25zdHJ1Y3Rvcihub2RlID0gZ2xvYmFscy5kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkpIHtcbiAgICBzdXBlcihub2RlKVxuICB9XG5cbiAgLy8gSW1wb3J0IC8gRXhwb3J0IHJhdyB4bWxcbiAgeG1sKHhtbE9yRm4sIG91dGVyWE1MLCBucykge1xuICAgIGlmICh0eXBlb2YgeG1sT3JGbiA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICBucyA9IG91dGVyWE1MXG4gICAgICBvdXRlclhNTCA9IHhtbE9yRm5cbiAgICAgIHhtbE9yRm4gPSBudWxsXG4gICAgfVxuXG4gICAgLy8gYmVjYXVzZSB0aGlzIGlzIGEgZnJhZ21lbnQgd2UgaGF2ZSB0byBwdXQgYWxsIGVsZW1lbnRzIGludG8gYSB3cmFwcGVyIGZpcnN0XG4gICAgLy8gYmVmb3JlIHdlIGNhbiBnZXQgdGhlIGlubmVyWE1MIGZyb20gaXRcbiAgICBpZiAoeG1sT3JGbiA9PSBudWxsIHx8IHR5cGVvZiB4bWxPckZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25zdCB3cmFwcGVyID0gbmV3IERvbShjcmVhdGUoJ3dyYXBwZXInLCBucykpXG4gICAgICB3cmFwcGVyLmFkZCh0aGlzLm5vZGUuY2xvbmVOb2RlKHRydWUpKVxuXG4gICAgICByZXR1cm4gd3JhcHBlci54bWwoZmFsc2UsIG5zKVxuICAgIH1cblxuICAgIC8vIEFjdCBhcyBzZXR0ZXIgaWYgd2UgZ290IGEgc3RyaW5nXG4gICAgcmV0dXJuIHN1cGVyLnhtbCh4bWxPckZuLCBmYWxzZSwgbnMpXG4gIH1cbn1cblxucmVnaXN0ZXIoRnJhZ21lbnQsICdGcmFnbWVudCcpXG5cbmV4cG9ydCBkZWZhdWx0IEZyYWdtZW50XG4iLCAiaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi8uLi90eXBlcy9TVkdOdW1iZXIuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tKHgsIHkpIHtcbiAgcmV0dXJuICh0aGlzLl9lbGVtZW50IHx8IHRoaXMpLnR5cGUgPT09ICdyYWRpYWxHcmFkaWVudCdcbiAgICA/IHRoaXMuYXR0cih7IGZ4OiBuZXcgU1ZHTnVtYmVyKHgpLCBmeTogbmV3IFNWR051bWJlcih5KSB9KVxuICAgIDogdGhpcy5hdHRyKHsgeDE6IG5ldyBTVkdOdW1iZXIoeCksIHkxOiBuZXcgU1ZHTnVtYmVyKHkpIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0byh4LCB5KSB7XG4gIHJldHVybiAodGhpcy5fZWxlbWVudCB8fCB0aGlzKS50eXBlID09PSAncmFkaWFsR3JhZGllbnQnXG4gICAgPyB0aGlzLmF0dHIoeyBjeDogbmV3IFNWR051bWJlcih4KSwgY3k6IG5ldyBTVkdOdW1iZXIoeSkgfSlcbiAgICA6IHRoaXMuYXR0cih7IHgyOiBuZXcgU1ZHTnVtYmVyKHgpLCB5MjogbmV3IFNWR051bWJlcih5KSB9KVxufVxuIiwgImltcG9ydCB7XG4gIGV4dGVuZCxcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2tcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgQm94IGZyb20gJy4uL3R5cGVzL0JveC5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5pbXBvcnQgYmFzZUZpbmQgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3NlbGVjdG9yLmpzJ1xuaW1wb3J0ICogYXMgZ3JhZGllbnRlZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvZ3JhZGllbnRlZC5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgR3JhZGllbnQgZXh0ZW5kcyBDb250YWluZXIge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBhdHRycykge1xuICAgIHN1cGVyKFxuICAgICAgbm9kZU9yTmV3KHR5cGUgKyAnR3JhZGllbnQnLCB0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycgPyBudWxsIDogdHlwZSksXG4gICAgICBhdHRyc1xuICAgIClcbiAgfVxuXG4gIC8vIGN1c3RvbSBhdHRyIHRvIGhhbmRsZSB0cmFuc2Zvcm1cbiAgYXR0cihhLCBiLCBjKSB7XG4gICAgaWYgKGEgPT09ICd0cmFuc2Zvcm0nKSBhID0gJ2dyYWRpZW50VHJhbnNmb3JtJ1xuICAgIHJldHVybiBzdXBlci5hdHRyKGEsIGIsIGMpXG4gIH1cblxuICBiYm94KCkge1xuICAgIHJldHVybiBuZXcgQm94KClcbiAgfVxuXG4gIHRhcmdldHMoKSB7XG4gICAgcmV0dXJuIGJhc2VGaW5kKCdzdmcgW2ZpbGwqPScgKyB0aGlzLmlkKCkgKyAnXScpXG4gIH1cblxuICAvLyBBbGlhcyBzdHJpbmcgY29udmVyc2lvbiB0byBmaWxsXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnVybCgpXG4gIH1cblxuICAvLyBVcGRhdGUgZ3JhZGllbnRcbiAgdXBkYXRlKGJsb2NrKSB7XG4gICAgLy8gcmVtb3ZlIGFsbCBzdG9wc1xuICAgIHRoaXMuY2xlYXIoKVxuXG4gICAgLy8gaW52b2tlIHBhc3NlZCBibG9ja1xuICAgIGlmICh0eXBlb2YgYmxvY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGJsb2NrLmNhbGwodGhpcywgdGhpcylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gUmV0dXJuIHRoZSBmaWxsIGlkXG4gIHVybCgpIHtcbiAgICByZXR1cm4gJ3VybCgjJyArIHRoaXMuaWQoKSArICcpJ1xuICB9XG59XG5cbmV4dGVuZChHcmFkaWVudCwgZ3JhZGllbnRlZClcblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIGdyYWRpZW50IGVsZW1lbnQgaW4gZGVmc1xuICAgIGdyYWRpZW50KC4uLmFyZ3MpIHtcbiAgICAgIHJldHVybiB0aGlzLmRlZnMoKS5ncmFkaWVudCguLi5hcmdzKVxuICAgIH1cbiAgfSxcbiAgLy8gZGVmaW5lIGdyYWRpZW50XG4gIERlZnM6IHtcbiAgICBncmFkaWVudDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHR5cGUsIGJsb2NrKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IEdyYWRpZW50KHR5cGUpKS51cGRhdGUoYmxvY2spXG4gICAgfSlcbiAgfVxufSlcblxucmVnaXN0ZXIoR3JhZGllbnQsICdHcmFkaWVudCcpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBCb3ggZnJvbSAnLi4vdHlwZXMvQm94LmpzJ1xuaW1wb3J0IENvbnRhaW5lciBmcm9tICcuL0NvbnRhaW5lci5qcydcbmltcG9ydCBiYXNlRmluZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvc2VsZWN0b3IuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhdHRlcm4gZXh0ZW5kcyBDb250YWluZXIge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdwYXR0ZXJuJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gY3VzdG9tIGF0dHIgdG8gaGFuZGxlIHRyYW5zZm9ybVxuICBhdHRyKGEsIGIsIGMpIHtcbiAgICBpZiAoYSA9PT0gJ3RyYW5zZm9ybScpIGEgPSAncGF0dGVyblRyYW5zZm9ybSdcbiAgICByZXR1cm4gc3VwZXIuYXR0cihhLCBiLCBjKVxuICB9XG5cbiAgYmJveCgpIHtcbiAgICByZXR1cm4gbmV3IEJveCgpXG4gIH1cblxuICB0YXJnZXRzKCkge1xuICAgIHJldHVybiBiYXNlRmluZCgnc3ZnIFtmaWxsKj0nICsgdGhpcy5pZCgpICsgJ10nKVxuICB9XG5cbiAgLy8gQWxpYXMgc3RyaW5nIGNvbnZlcnNpb24gdG8gZmlsbFxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy51cmwoKVxuICB9XG5cbiAgLy8gVXBkYXRlIHBhdHRlcm4gYnkgcmVidWlsZGluZ1xuICB1cGRhdGUoYmxvY2spIHtcbiAgICAvLyByZW1vdmUgY29udGVudFxuICAgIHRoaXMuY2xlYXIoKVxuXG4gICAgLy8gaW52b2tlIHBhc3NlZCBibG9ja1xuICAgIGlmICh0eXBlb2YgYmxvY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGJsb2NrLmNhbGwodGhpcywgdGhpcylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gUmV0dXJuIHRoZSBmaWxsIGlkXG4gIHVybCgpIHtcbiAgICByZXR1cm4gJ3VybCgjJyArIHRoaXMuaWQoKSArICcpJ1xuICB9XG59XG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBwYXR0ZXJuIGVsZW1lbnQgaW4gZGVmc1xuICAgIHBhdHRlcm4oLi4uYXJncykge1xuICAgICAgcmV0dXJuIHRoaXMuZGVmcygpLnBhdHRlcm4oLi4uYXJncylcbiAgICB9XG4gIH0sXG4gIERlZnM6IHtcbiAgICBwYXR0ZXJuOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAod2lkdGgsIGhlaWdodCwgYmxvY2spIHtcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgUGF0dGVybigpKS51cGRhdGUoYmxvY2spLmF0dHIoe1xuICAgICAgICB4OiAwLFxuICAgICAgICB5OiAwLFxuICAgICAgICB3aWR0aDogd2lkdGgsXG4gICAgICAgIGhlaWdodDogaGVpZ2h0LFxuICAgICAgICBwYXR0ZXJuVW5pdHM6ICd1c2VyU3BhY2VPblVzZSdcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxufSlcblxucmVnaXN0ZXIoUGF0dGVybiwgJ1BhdHRlcm4nKVxuIiwgImltcG9ydCB7IGlzSW1hZ2UgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyLCB3cmFwV2l0aEF0dHJDaGVjayB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyBvZmYsIG9uIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2V2ZW50LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJBdHRySG9vayB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9hdHRyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IHhsaW5rIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgUGF0dGVybiBmcm9tICcuL1BhdHRlcm4uanMnXG5pbXBvcnQgU2hhcGUgZnJvbSAnLi9TaGFwZS5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEltYWdlIGV4dGVuZHMgU2hhcGUge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2ltYWdlJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gKHJlKWxvYWQgaW1hZ2VcbiAgbG9hZCh1cmwsIGNhbGxiYWNrKSB7XG4gICAgaWYgKCF1cmwpIHJldHVybiB0aGlzXG5cbiAgICBjb25zdCBpbWcgPSBuZXcgZ2xvYmFscy53aW5kb3cuSW1hZ2UoKVxuXG4gICAgb24oXG4gICAgICBpbWcsXG4gICAgICAnbG9hZCcsXG4gICAgICBmdW5jdGlvbiAoZSkge1xuICAgICAgICBjb25zdCBwID0gdGhpcy5wYXJlbnQoUGF0dGVybilcblxuICAgICAgICAvLyBlbnN1cmUgaW1hZ2Ugc2l6ZVxuICAgICAgICBpZiAodGhpcy53aWR0aCgpID09PSAwICYmIHRoaXMuaGVpZ2h0KCkgPT09IDApIHtcbiAgICAgICAgICB0aGlzLnNpemUoaW1nLndpZHRoLCBpbWcuaGVpZ2h0KVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHAgaW5zdGFuY2VvZiBQYXR0ZXJuKSB7XG4gICAgICAgICAgLy8gZW5zdXJlIHBhdHRlcm4gc2l6ZSBpZiBub3Qgc2V0XG4gICAgICAgICAgaWYgKHAud2lkdGgoKSA9PT0gMCAmJiBwLmhlaWdodCgpID09PSAwKSB7XG4gICAgICAgICAgICBwLnNpemUodGhpcy53aWR0aCgpLCB0aGlzLmhlaWdodCgpKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICBjYWxsYmFjay5jYWxsKHRoaXMsIGUpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB0aGlzXG4gICAgKVxuXG4gICAgb24oaW1nLCAnbG9hZCBlcnJvcicsIGZ1bmN0aW9uICgpIHtcbiAgICAgIC8vIGRvbnQgZm9yZ2V0IHRvIHVuYmluZCBtZW1vcnkgbGVha2luZyBldmVudHNcbiAgICAgIG9mZihpbWcpXG4gICAgfSlcblxuICAgIHJldHVybiB0aGlzLmF0dHIoJ2hyZWYnLCAoaW1nLnNyYyA9IHVybCksIHhsaW5rKVxuICB9XG59XG5cbnJlZ2lzdGVyQXR0ckhvb2soZnVuY3Rpb24gKGF0dHIsIHZhbCwgX3RoaXMpIHtcbiAgLy8gY29udmVydCBpbWFnZSBmaWxsIGFuZCBzdHJva2UgdG8gcGF0dGVybnNcbiAgaWYgKGF0dHIgPT09ICdmaWxsJyB8fCBhdHRyID09PSAnc3Ryb2tlJykge1xuICAgIGlmIChpc0ltYWdlLnRlc3QodmFsKSkge1xuICAgICAgdmFsID0gX3RoaXMucm9vdCgpLmRlZnMoKS5pbWFnZSh2YWwpXG4gICAgfVxuICB9XG5cbiAgaWYgKHZhbCBpbnN0YW5jZW9mIEltYWdlKSB7XG4gICAgdmFsID0gX3RoaXNcbiAgICAgIC5yb290KClcbiAgICAgIC5kZWZzKClcbiAgICAgIC5wYXR0ZXJuKDAsIDAsIChwYXR0ZXJuKSA9PiB7XG4gICAgICAgIHBhdHRlcm4uYWRkKHZhbClcbiAgICAgIH0pXG4gIH1cblxuICByZXR1cm4gdmFsXG59KVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBjcmVhdGUgaW1hZ2UgZWxlbWVudCwgbG9hZCBpbWFnZSBhbmQgc2V0IGl0cyBzaXplXG4gICAgaW1hZ2U6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uIChzb3VyY2UsIGNhbGxiYWNrKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IEltYWdlKCkpLnNpemUoMCwgMCkubG9hZChzb3VyY2UsIGNhbGxiYWNrKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKEltYWdlLCAnSW1hZ2UnKVxuIiwgImltcG9ydCB7IGRlbGltaXRlciB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9yZWdleC5qcydcbmltcG9ydCBTVkdBcnJheSBmcm9tICcuL1NWR0FycmF5LmpzJ1xuaW1wb3J0IEJveCBmcm9tICcuL0JveC5qcydcbmltcG9ydCBNYXRyaXggZnJvbSAnLi9NYXRyaXguanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBvaW50QXJyYXkgZXh0ZW5kcyBTVkdBcnJheSB7XG4gIC8vIEdldCBib3VuZGluZyBib3ggb2YgcG9pbnRzXG4gIGJib3goKSB7XG4gICAgbGV0IG1heFggPSAtSW5maW5pdHlcbiAgICBsZXQgbWF4WSA9IC1JbmZpbml0eVxuICAgIGxldCBtaW5YID0gSW5maW5pdHlcbiAgICBsZXQgbWluWSA9IEluZmluaXR5XG4gICAgdGhpcy5mb3JFYWNoKGZ1bmN0aW9uIChlbCkge1xuICAgICAgbWF4WCA9IE1hdGgubWF4KGVsWzBdLCBtYXhYKVxuICAgICAgbWF4WSA9IE1hdGgubWF4KGVsWzFdLCBtYXhZKVxuICAgICAgbWluWCA9IE1hdGgubWluKGVsWzBdLCBtaW5YKVxuICAgICAgbWluWSA9IE1hdGgubWluKGVsWzFdLCBtaW5ZKVxuICAgIH0pXG4gICAgcmV0dXJuIG5ldyBCb3gobWluWCwgbWluWSwgbWF4WCAtIG1pblgsIG1heFkgLSBtaW5ZKVxuICB9XG5cbiAgLy8gTW92ZSBwb2ludCBzdHJpbmdcbiAgbW92ZSh4LCB5KSB7XG4gICAgY29uc3QgYm94ID0gdGhpcy5iYm94KClcblxuICAgIC8vIGdldCByZWxhdGl2ZSBvZmZzZXRcbiAgICB4IC09IGJveC54XG4gICAgeSAtPSBib3gueVxuXG4gICAgLy8gbW92ZSBldmVyeSBwb2ludFxuICAgIGlmICghaXNOYU4oeCkgJiYgIWlzTmFOKHkpKSB7XG4gICAgICBmb3IgKGxldCBpID0gdGhpcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgICB0aGlzW2ldID0gW3RoaXNbaV1bMF0gKyB4LCB0aGlzW2ldWzFdICsgeV1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gUGFyc2UgcG9pbnQgc3RyaW5nIGFuZCBmbGF0IGFycmF5XG4gIHBhcnNlKGFycmF5ID0gWzAsIDBdKSB7XG4gICAgY29uc3QgcG9pbnRzID0gW11cblxuICAgIC8vIGlmIGl0IGlzIGFuIGFycmF5LCB3ZSBmbGF0dGVuIGl0IGFuZCB0aGVyZWZvcmUgY2xvbmUgaXQgdG8gMSBkZXB0aHNcbiAgICBpZiAoYXJyYXkgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgYXJyYXkgPSBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLCBhcnJheSlcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRWxzZSwgaXQgaXMgY29uc2lkZXJlZCBhcyBhIHN0cmluZ1xuICAgICAgLy8gcGFyc2UgcG9pbnRzXG4gICAgICBhcnJheSA9IGFycmF5LnRyaW0oKS5zcGxpdChkZWxpbWl0ZXIpLm1hcChwYXJzZUZsb2F0KVxuICAgIH1cblxuICAgIC8vIHZhbGlkYXRlIHBvaW50cyAtIGh0dHBzOi8vc3Znd2cub3JnL3N2ZzItZHJhZnQvc2hhcGVzLmh0bWwjRGF0YVR5cGVQb2ludHNcbiAgICAvLyBPZGQgbnVtYmVyIG9mIGNvb3JkaW5hdGVzIGlzIGFuIGVycm9yLiBJbiBzdWNoIGNhc2VzLCBkcm9wIHRoZSBsYXN0IG9kZCBjb29yZGluYXRlLlxuICAgIGlmIChhcnJheS5sZW5ndGggJSAyICE9PSAwKSBhcnJheS5wb3AoKVxuXG4gICAgLy8gd3JhcCBwb2ludHMgaW4gdHdvLXR1cGxlc1xuICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBhcnJheS5sZW5ndGg7IGkgPCBsZW47IGkgPSBpICsgMikge1xuICAgICAgcG9pbnRzLnB1c2goW2FycmF5W2ldLCBhcnJheVtpICsgMV1dKVxuICAgIH1cblxuICAgIHJldHVybiBwb2ludHNcbiAgfVxuXG4gIC8vIFJlc2l6ZSBwb2x5IHN0cmluZ1xuICBzaXplKHdpZHRoLCBoZWlnaHQpIHtcbiAgICBsZXQgaVxuICAgIGNvbnN0IGJveCA9IHRoaXMuYmJveCgpXG5cbiAgICAvLyByZWNhbGN1bGF0ZSBwb3NpdGlvbiBvZiBhbGwgcG9pbnRzIGFjY29yZGluZyB0byBuZXcgc2l6ZVxuICAgIGZvciAoaSA9IHRoaXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIGlmIChib3gud2lkdGgpXG4gICAgICAgIHRoaXNbaV1bMF0gPSAoKHRoaXNbaV1bMF0gLSBib3gueCkgKiB3aWR0aCkgLyBib3gud2lkdGggKyBib3gueFxuICAgICAgaWYgKGJveC5oZWlnaHQpXG4gICAgICAgIHRoaXNbaV1bMV0gPSAoKHRoaXNbaV1bMV0gLSBib3gueSkgKiBoZWlnaHQpIC8gYm94LmhlaWdodCArIGJveC55XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIENvbnZlcnQgYXJyYXkgdG8gbGluZSBvYmplY3RcbiAgdG9MaW5lKCkge1xuICAgIHJldHVybiB7XG4gICAgICB4MTogdGhpc1swXVswXSxcbiAgICAgIHkxOiB0aGlzWzBdWzFdLFxuICAgICAgeDI6IHRoaXNbMV1bMF0sXG4gICAgICB5MjogdGhpc1sxXVsxXVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYXJyYXkgdG8gc3RyaW5nXG4gIHRvU3RyaW5nKCkge1xuICAgIGNvbnN0IGFycmF5ID0gW11cbiAgICAvLyBjb252ZXJ0IHRvIGEgcG9seSBwb2ludCBzdHJpbmdcbiAgICBmb3IgKGxldCBpID0gMCwgaWwgPSB0aGlzLmxlbmd0aDsgaSA8IGlsOyBpKyspIHtcbiAgICAgIGFycmF5LnB1c2godGhpc1tpXS5qb2luKCcsJykpXG4gICAgfVxuXG4gICAgcmV0dXJuIGFycmF5LmpvaW4oJyAnKVxuICB9XG5cbiAgdHJhbnNmb3JtKG0pIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLnRyYW5zZm9ybU8obSlcbiAgfVxuXG4gIC8vIHRyYW5zZm9ybSBwb2ludHMgd2l0aCBtYXRyaXggKHNpbWlsYXIgdG8gUG9pbnQudHJhbnNmb3JtKVxuICB0cmFuc2Zvcm1PKG0pIHtcbiAgICBpZiAoIU1hdHJpeC5pc01hdHJpeExpa2UobSkpIHtcbiAgICAgIG0gPSBuZXcgTWF0cml4KG0pXG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IHRoaXMubGVuZ3RoOyBpLS07ICkge1xuICAgICAgLy8gUGVyZm9ybSB0aGUgbWF0cml4IG11bHRpcGxpY2F0aW9uXG4gICAgICBjb25zdCBbeCwgeV0gPSB0aGlzW2ldXG4gICAgICB0aGlzW2ldWzBdID0gbS5hICogeCArIG0uYyAqIHkgKyBtLmVcbiAgICAgIHRoaXNbaV1bMV0gPSBtLmIgKiB4ICsgbS5kICogeSArIG0uZlxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cbiIsICJpbXBvcnQgUG9pbnRBcnJheSBmcm9tICcuLi8uLi90eXBlcy9Qb2ludEFycmF5LmpzJ1xuXG5leHBvcnQgY29uc3QgTW9ycGhBcnJheSA9IFBvaW50QXJyYXlcblxuLy8gTW92ZSBieSBsZWZ0IHRvcCBjb3JuZXIgb3ZlciB4LWF4aXNcbmV4cG9ydCBmdW5jdGlvbiB4KHgpIHtcbiAgcmV0dXJuIHggPT0gbnVsbCA/IHRoaXMuYmJveCgpLnggOiB0aGlzLm1vdmUoeCwgdGhpcy5iYm94KCkueSlcbn1cblxuLy8gTW92ZSBieSBsZWZ0IHRvcCBjb3JuZXIgb3ZlciB5LWF4aXNcbmV4cG9ydCBmdW5jdGlvbiB5KHkpIHtcbiAgcmV0dXJuIHkgPT0gbnVsbCA/IHRoaXMuYmJveCgpLnkgOiB0aGlzLm1vdmUodGhpcy5iYm94KCkueCwgeSlcbn1cblxuLy8gU2V0IHdpZHRoIG9mIGVsZW1lbnRcbmV4cG9ydCBmdW5jdGlvbiB3aWR0aCh3aWR0aCkge1xuICBjb25zdCBiID0gdGhpcy5iYm94KClcbiAgcmV0dXJuIHdpZHRoID09IG51bGwgPyBiLndpZHRoIDogdGhpcy5zaXplKHdpZHRoLCBiLmhlaWdodClcbn1cblxuLy8gU2V0IGhlaWdodCBvZiBlbGVtZW50XG5leHBvcnQgZnVuY3Rpb24gaGVpZ2h0KGhlaWdodCkge1xuICBjb25zdCBiID0gdGhpcy5iYm94KClcbiAgcmV0dXJuIGhlaWdodCA9PSBudWxsID8gYi5oZWlnaHQgOiB0aGlzLnNpemUoYi53aWR0aCwgaGVpZ2h0KVxufVxuIiwgImltcG9ydCB7XG4gIGV4dGVuZCxcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2tcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHByb3BvcnRpb25hbFNpemUgfSBmcm9tICcuLi91dGlscy91dGlscy5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgUG9pbnRBcnJheSBmcm9tICcuLi90eXBlcy9Qb2ludEFycmF5LmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5pbXBvcnQgKiBhcyBwb2ludGVkIGZyb20gJy4uL21vZHVsZXMvY29yZS9wb2ludGVkLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMaW5lIGV4dGVuZHMgU2hhcGUge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdsaW5lJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gR2V0IGFycmF5XG4gIGFycmF5KCkge1xuICAgIHJldHVybiBuZXcgUG9pbnRBcnJheShbXG4gICAgICBbdGhpcy5hdHRyKCd4MScpLCB0aGlzLmF0dHIoJ3kxJyldLFxuICAgICAgW3RoaXMuYXR0cigneDInKSwgdGhpcy5hdHRyKCd5MicpXVxuICAgIF0pXG4gIH1cblxuICAvLyBNb3ZlIGJ5IGxlZnQgdG9wIGNvcm5lclxuICBtb3ZlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKHRoaXMuYXJyYXkoKS5tb3ZlKHgsIHkpLnRvTGluZSgpKVxuICB9XG5cbiAgLy8gT3ZlcndyaXRlIG5hdGl2ZSBwbG90KCkgbWV0aG9kXG4gIHBsb3QoeDEsIHkxLCB4MiwgeTIpIHtcbiAgICBpZiAoeDEgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuYXJyYXkoKVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIHkxICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgeDEgPSB7IHgxLCB5MSwgeDIsIHkyIH1cbiAgICB9IGVsc2Uge1xuICAgICAgeDEgPSBuZXcgUG9pbnRBcnJheSh4MSkudG9MaW5lKClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5hdHRyKHgxKVxuICB9XG5cbiAgLy8gU2V0IGVsZW1lbnQgc2l6ZSB0byBnaXZlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gIHNpemUod2lkdGgsIGhlaWdodCkge1xuICAgIGNvbnN0IHAgPSBwcm9wb3J0aW9uYWxTaXplKHRoaXMsIHdpZHRoLCBoZWlnaHQpXG4gICAgcmV0dXJuIHRoaXMuYXR0cih0aGlzLmFycmF5KCkuc2l6ZShwLndpZHRoLCBwLmhlaWdodCkudG9MaW5lKCkpXG4gIH1cbn1cblxuZXh0ZW5kKExpbmUsIHBvaW50ZWQpXG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBhIGxpbmUgZWxlbWVudFxuICAgIGxpbmU6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgICAvLyBtYWtlIHN1cmUgcGxvdCBpcyBjYWxsZWQgYXMgYSBzZXR0ZXJcbiAgICAgIC8vIHgxIGlzIG5vdCBuZWNlc3NhcmlseSBhIG51bWJlciwgaXQgY2FuIGFsc28gYmUgYW4gYXJyYXksIGEgc3RyaW5nIGFuZCBhIFBvaW50QXJyYXlcbiAgICAgIHJldHVybiBMaW5lLnByb3RvdHlwZS5wbG90LmFwcGx5KFxuICAgICAgICB0aGlzLnB1dChuZXcgTGluZSgpKSxcbiAgICAgICAgYXJnc1swXSAhPSBudWxsID8gYXJncyA6IFswLCAwLCAwLCAwXVxuICAgICAgKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKExpbmUsICdMaW5lJylcbiIsICJpbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyLCB3cmFwV2l0aEF0dHJDaGVjayB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IENvbnRhaW5lciBmcm9tICcuL0NvbnRhaW5lci5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWFya2VyIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygnbWFya2VyJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gU2V0IGhlaWdodCBvZiBlbGVtZW50XG4gIGhlaWdodChoZWlnaHQpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdtYXJrZXJIZWlnaHQnLCBoZWlnaHQpXG4gIH1cblxuICBvcmllbnQob3JpZW50KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignb3JpZW50Jywgb3JpZW50KVxuICB9XG5cbiAgLy8gU2V0IG1hcmtlciByZWZYIGFuZCByZWZZXG4gIHJlZih4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cigncmVmWCcsIHgpLmF0dHIoJ3JlZlknLCB5KVxuICB9XG5cbiAgLy8gUmV0dXJuIHRoZSBmaWxsIGlkXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiAndXJsKCMnICsgdGhpcy5pZCgpICsgJyknXG4gIH1cblxuICAvLyBVcGRhdGUgbWFya2VyXG4gIHVwZGF0ZShibG9jaykge1xuICAgIC8vIHJlbW92ZSBhbGwgY29udGVudFxuICAgIHRoaXMuY2xlYXIoKVxuXG4gICAgLy8gaW52b2tlIHBhc3NlZCBibG9ja1xuICAgIGlmICh0eXBlb2YgYmxvY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGJsb2NrLmNhbGwodGhpcywgdGhpcylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU2V0IHdpZHRoIG9mIGVsZW1lbnRcbiAgd2lkdGgod2lkdGgpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdtYXJrZXJXaWR0aCcsIHdpZHRoKVxuICB9XG59XG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIG1hcmtlciguLi5hcmdzKSB7XG4gICAgICAvLyBDcmVhdGUgbWFya2VyIGVsZW1lbnQgaW4gZGVmc1xuICAgICAgcmV0dXJuIHRoaXMuZGVmcygpLm1hcmtlciguLi5hcmdzKVxuICAgIH1cbiAgfSxcbiAgRGVmczoge1xuICAgIC8vIENyZWF0ZSBtYXJrZXJcbiAgICBtYXJrZXI6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh3aWR0aCwgaGVpZ2h0LCBibG9jaykge1xuICAgICAgLy8gU2V0IGRlZmF1bHQgdmlld2JveCB0byBtYXRjaCB0aGUgd2lkdGggYW5kIGhlaWdodCwgc2V0IHJlZiB0byBjeCBhbmQgY3kgYW5kIHNldCBvcmllbnQgdG8gYXV0b1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBNYXJrZXIoKSlcbiAgICAgICAgLnNpemUod2lkdGgsIGhlaWdodClcbiAgICAgICAgLnJlZih3aWR0aCAvIDIsIGhlaWdodCAvIDIpXG4gICAgICAgIC52aWV3Ym94KDAsIDAsIHdpZHRoLCBoZWlnaHQpXG4gICAgICAgIC5hdHRyKCdvcmllbnQnLCAnYXV0bycpXG4gICAgICAgIC51cGRhdGUoYmxvY2spXG4gICAgfSlcbiAgfSxcbiAgbWFya2VyOiB7XG4gICAgLy8gQ3JlYXRlIGFuZCBhdHRhY2ggbWFya2Vyc1xuICAgIG1hcmtlcihtYXJrZXIsIHdpZHRoLCBoZWlnaHQsIGJsb2NrKSB7XG4gICAgICBsZXQgYXR0ciA9IFsnbWFya2VyJ11cblxuICAgICAgLy8gQnVpbGQgYXR0cmlidXRlIG5hbWVcbiAgICAgIGlmIChtYXJrZXIgIT09ICdhbGwnKSBhdHRyLnB1c2gobWFya2VyKVxuICAgICAgYXR0ciA9IGF0dHIuam9pbignLScpXG5cbiAgICAgIC8vIFNldCBtYXJrZXIgYXR0cmlidXRlXG4gICAgICBtYXJrZXIgPVxuICAgICAgICBhcmd1bWVudHNbMV0gaW5zdGFuY2VvZiBNYXJrZXJcbiAgICAgICAgICA/IGFyZ3VtZW50c1sxXVxuICAgICAgICAgIDogdGhpcy5kZWZzKCkubWFya2VyKHdpZHRoLCBoZWlnaHQsIGJsb2NrKVxuXG4gICAgICByZXR1cm4gdGhpcy5hdHRyKGF0dHIsIG1hcmtlcilcbiAgICB9XG4gIH1cbn0pXG5cbnJlZ2lzdGVyKE1hcmtlciwgJ01hcmtlcicpXG4iLCAiaW1wb3J0IHsgdGltZWxpbmUgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvZGVmYXVsdHMuanMnXG5pbXBvcnQgeyBleHRlbmQgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuXG4vKioqXG5CYXNlIENsYXNzXG49PT09PT09PT09XG5UaGUgYmFzZSBzdGVwcGVyIGNsYXNzIHRoYXQgd2lsbCBiZVxuKioqL1xuXG5mdW5jdGlvbiBtYWtlU2V0dGVyR2V0dGVyKGssIGYpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICh2KSB7XG4gICAgaWYgKHYgPT0gbnVsbCkgcmV0dXJuIHRoaXNba11cbiAgICB0aGlzW2tdID0gdlxuICAgIGlmIChmKSBmLmNhbGwodGhpcylcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBlYXNpbmcgPSB7XG4gICctJzogZnVuY3Rpb24gKHBvcykge1xuICAgIHJldHVybiBwb3NcbiAgfSxcbiAgJzw+JzogZnVuY3Rpb24gKHBvcykge1xuICAgIHJldHVybiAtTWF0aC5jb3MocG9zICogTWF0aC5QSSkgLyAyICsgMC41XG4gIH0sXG4gICc+JzogZnVuY3Rpb24gKHBvcykge1xuICAgIHJldHVybiBNYXRoLnNpbigocG9zICogTWF0aC5QSSkgLyAyKVxuICB9LFxuICAnPCc6IGZ1bmN0aW9uIChwb3MpIHtcbiAgICByZXR1cm4gLU1hdGguY29zKChwb3MgKiBNYXRoLlBJKSAvIDIpICsgMVxuICB9LFxuICBiZXppZXI6IGZ1bmN0aW9uICh4MSwgeTEsIHgyLCB5Mikge1xuICAgIC8vIHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWVhc2luZy0xLyNjdWJpYy1iZXppZXItYWxnb1xuICAgIHJldHVybiBmdW5jdGlvbiAodCkge1xuICAgICAgaWYgKHQgPCAwKSB7XG4gICAgICAgIGlmICh4MSA+IDApIHtcbiAgICAgICAgICByZXR1cm4gKHkxIC8geDEpICogdFxuICAgICAgICB9IGVsc2UgaWYgKHgyID4gMCkge1xuICAgICAgICAgIHJldHVybiAoeTIgLyB4MikgKiB0XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIDBcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0ID4gMSkge1xuICAgICAgICBpZiAoeDIgPCAxKSB7XG4gICAgICAgICAgcmV0dXJuICgoMSAtIHkyKSAvICgxIC0geDIpKSAqIHQgKyAoeTIgLSB4MikgLyAoMSAtIHgyKVxuICAgICAgICB9IGVsc2UgaWYgKHgxIDwgMSkge1xuICAgICAgICAgIHJldHVybiAoKDEgLSB5MSkgLyAoMSAtIHgxKSkgKiB0ICsgKHkxIC0geDEpIC8gKDEgLSB4MSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gMVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gMyAqIHQgKiAoMSAtIHQpICoqIDIgKiB5MSArIDMgKiB0ICoqIDIgKiAoMSAtIHQpICogeTIgKyB0ICoqIDNcbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIC8vIHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWVhc2luZy0xLyNzdGVwLXRpbWluZy1mdW5jdGlvbi1hbGdvXG4gIHN0ZXBzOiBmdW5jdGlvbiAoc3RlcHMsIHN0ZXBQb3NpdGlvbiA9ICdlbmQnKSB7XG4gICAgLy8gZGVhbCB3aXRoIFwianVtcC1cIiBwcmVmaXhcbiAgICBzdGVwUG9zaXRpb24gPSBzdGVwUG9zaXRpb24uc3BsaXQoJy0nKS5yZXZlcnNlKClbMF1cblxuICAgIGxldCBqdW1wcyA9IHN0ZXBzXG4gICAgaWYgKHN0ZXBQb3NpdGlvbiA9PT0gJ25vbmUnKSB7XG4gICAgICAtLWp1bXBzXG4gICAgfSBlbHNlIGlmIChzdGVwUG9zaXRpb24gPT09ICdib3RoJykge1xuICAgICAgKytqdW1wc1xuICAgIH1cblxuICAgIC8vIFRoZSBiZWZvcmVGbGFnIGlzIGVzc2VudGlhbGx5IHVzZWxlc3NcbiAgICByZXR1cm4gKHQsIGJlZm9yZUZsYWcgPSBmYWxzZSkgPT4ge1xuICAgICAgLy8gU3RlcCBpcyBjYWxsZWQgY3VycmVudFN0ZXAgaW4gcmVmZXJlbmNlZCB1cmxcbiAgICAgIGxldCBzdGVwID0gTWF0aC5mbG9vcih0ICogc3RlcHMpXG4gICAgICBjb25zdCBqdW1waW5nID0gKHQgKiBzdGVwKSAlIDEgPT09IDBcblxuICAgICAgaWYgKHN0ZXBQb3NpdGlvbiA9PT0gJ3N0YXJ0JyB8fCBzdGVwUG9zaXRpb24gPT09ICdib3RoJykge1xuICAgICAgICArK3N0ZXBcbiAgICAgIH1cblxuICAgICAgaWYgKGJlZm9yZUZsYWcgJiYganVtcGluZykge1xuICAgICAgICAtLXN0ZXBcbiAgICAgIH1cblxuICAgICAgaWYgKHQgPj0gMCAmJiBzdGVwIDwgMCkge1xuICAgICAgICBzdGVwID0gMFxuICAgICAgfVxuXG4gICAgICBpZiAodCA8PSAxICYmIHN0ZXAgPiBqdW1wcykge1xuICAgICAgICBzdGVwID0ganVtcHNcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHN0ZXAgLyBqdW1wc1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgU3RlcHBlciB7XG4gIGRvbmUoKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxuLyoqKlxuRWFzaW5nIEZ1bmN0aW9uc1xuPT09PT09PT09PT09PT09PVxuKioqL1xuXG5leHBvcnQgY2xhc3MgRWFzZSBleHRlbmRzIFN0ZXBwZXIge1xuICBjb25zdHJ1Y3RvcihmbiA9IHRpbWVsaW5lLmVhc2UpIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5lYXNlID0gZWFzaW5nW2ZuXSB8fCBmblxuICB9XG5cbiAgc3RlcChmcm9tLCB0bywgcG9zKSB7XG4gICAgaWYgKHR5cGVvZiBmcm9tICE9PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIHBvcyA8IDEgPyBmcm9tIDogdG9cbiAgICB9XG4gICAgcmV0dXJuIGZyb20gKyAodG8gLSBmcm9tKSAqIHRoaXMuZWFzZShwb3MpXG4gIH1cbn1cblxuLyoqKlxuQ29udHJvbGxlciBUeXBlc1xuPT09PT09PT09PT09PT09PVxuKioqL1xuXG5leHBvcnQgY2xhc3MgQ29udHJvbGxlciBleHRlbmRzIFN0ZXBwZXIge1xuICBjb25zdHJ1Y3Rvcihmbikge1xuICAgIHN1cGVyKClcbiAgICB0aGlzLnN0ZXBwZXIgPSBmblxuICB9XG5cbiAgZG9uZShjKSB7XG4gICAgcmV0dXJuIGMuZG9uZVxuICB9XG5cbiAgc3RlcChjdXJyZW50LCB0YXJnZXQsIGR0LCBjKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RlcHBlcihjdXJyZW50LCB0YXJnZXQsIGR0LCBjKVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlY2FsY3VsYXRlKCkge1xuICAvLyBBcHBseSB0aGUgZGVmYXVsdCBwYXJhbWV0ZXJzXG4gIGNvbnN0IGR1cmF0aW9uID0gKHRoaXMuX2R1cmF0aW9uIHx8IDUwMCkgLyAxMDAwXG4gIGNvbnN0IG92ZXJzaG9vdCA9IHRoaXMuX292ZXJzaG9vdCB8fCAwXG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBQSUQgbmF0dXJhbCByZXNwb25zZVxuICBjb25zdCBlcHMgPSAxZS0xMFxuICBjb25zdCBwaSA9IE1hdGguUElcbiAgY29uc3Qgb3MgPSBNYXRoLmxvZyhvdmVyc2hvb3QgLyAxMDAgKyBlcHMpXG4gIGNvbnN0IHpldGEgPSAtb3MgLyBNYXRoLnNxcnQocGkgKiBwaSArIG9zICogb3MpXG4gIGNvbnN0IHduID0gMy45IC8gKHpldGEgKiBkdXJhdGlvbilcblxuICAvLyBDYWxjdWxhdGUgdGhlIFNwcmluZyB2YWx1ZXNcbiAgdGhpcy5kID0gMiAqIHpldGEgKiB3blxuICB0aGlzLmsgPSB3biAqIHduXG59XG5cbmV4cG9ydCBjbGFzcyBTcHJpbmcgZXh0ZW5kcyBDb250cm9sbGVyIHtcbiAgY29uc3RydWN0b3IoZHVyYXRpb24gPSA1MDAsIG92ZXJzaG9vdCA9IDApIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5kdXJhdGlvbihkdXJhdGlvbikub3ZlcnNob290KG92ZXJzaG9vdClcbiAgfVxuXG4gIHN0ZXAoY3VycmVudCwgdGFyZ2V0LCBkdCwgYykge1xuICAgIGlmICh0eXBlb2YgY3VycmVudCA9PT0gJ3N0cmluZycpIHJldHVybiBjdXJyZW50XG4gICAgYy5kb25lID0gZHQgPT09IEluZmluaXR5XG4gICAgaWYgKGR0ID09PSBJbmZpbml0eSkgcmV0dXJuIHRhcmdldFxuICAgIGlmIChkdCA9PT0gMCkgcmV0dXJuIGN1cnJlbnRcblxuICAgIGlmIChkdCA+IDEwMCkgZHQgPSAxNlxuXG4gICAgZHQgLz0gMTAwMFxuXG4gICAgLy8gR2V0IHRoZSBwcmV2aW91cyB2ZWxvY2l0eVxuICAgIGNvbnN0IHZlbG9jaXR5ID0gYy52ZWxvY2l0eSB8fCAwXG5cbiAgICAvLyBBcHBseSB0aGUgY29udHJvbCB0byBnZXQgdGhlIG5ldyBwb3NpdGlvbiBhbmQgc3RvcmUgaXRcbiAgICBjb25zdCBhY2NlbGVyYXRpb24gPSAtdGhpcy5kICogdmVsb2NpdHkgLSB0aGlzLmsgKiAoY3VycmVudCAtIHRhcmdldClcbiAgICBjb25zdCBuZXdQb3NpdGlvbiA9IGN1cnJlbnQgKyB2ZWxvY2l0eSAqIGR0ICsgKGFjY2VsZXJhdGlvbiAqIGR0ICogZHQpIC8gMlxuXG4gICAgLy8gU3RvcmUgdGhlIHZlbG9jaXR5XG4gICAgYy52ZWxvY2l0eSA9IHZlbG9jaXR5ICsgYWNjZWxlcmF0aW9uICogZHRcblxuICAgIC8vIEZpZ3VyZSBvdXQgaWYgd2UgaGF2ZSBjb252ZXJnZWQsIGFuZCBpZiBzbywgcGFzcyB0aGUgdmFsdWVcbiAgICBjLmRvbmUgPSBNYXRoLmFicyh0YXJnZXQgLSBuZXdQb3NpdGlvbikgKyBNYXRoLmFicyh2ZWxvY2l0eSkgPCAwLjAwMlxuICAgIHJldHVybiBjLmRvbmUgPyB0YXJnZXQgOiBuZXdQb3NpdGlvblxuICB9XG59XG5cbmV4dGVuZChTcHJpbmcsIHtcbiAgZHVyYXRpb246IG1ha2VTZXR0ZXJHZXR0ZXIoJ19kdXJhdGlvbicsIHJlY2FsY3VsYXRlKSxcbiAgb3ZlcnNob290OiBtYWtlU2V0dGVyR2V0dGVyKCdfb3ZlcnNob290JywgcmVjYWxjdWxhdGUpXG59KVxuXG5leHBvcnQgY2xhc3MgUElEIGV4dGVuZHMgQ29udHJvbGxlciB7XG4gIGNvbnN0cnVjdG9yKHAgPSAwLjEsIGkgPSAwLjAxLCBkID0gMCwgd2luZHVwID0gMTAwMCkge1xuICAgIHN1cGVyKClcbiAgICB0aGlzLnAocCkuaShpKS5kKGQpLndpbmR1cCh3aW5kdXApXG4gIH1cblxuICBzdGVwKGN1cnJlbnQsIHRhcmdldCwgZHQsIGMpIHtcbiAgICBpZiAodHlwZW9mIGN1cnJlbnQgPT09ICdzdHJpbmcnKSByZXR1cm4gY3VycmVudFxuICAgIGMuZG9uZSA9IGR0ID09PSBJbmZpbml0eVxuXG4gICAgaWYgKGR0ID09PSBJbmZpbml0eSkgcmV0dXJuIHRhcmdldFxuICAgIGlmIChkdCA9PT0gMCkgcmV0dXJuIGN1cnJlbnRcblxuICAgIGNvbnN0IHAgPSB0YXJnZXQgLSBjdXJyZW50XG4gICAgbGV0IGkgPSAoYy5pbnRlZ3JhbCB8fCAwKSArIHAgKiBkdFxuICAgIGNvbnN0IGQgPSAocCAtIChjLmVycm9yIHx8IDApKSAvIGR0XG4gICAgY29uc3Qgd2luZHVwID0gdGhpcy5fd2luZHVwXG5cbiAgICAvLyBhbnRpd2luZHVwXG4gICAgaWYgKHdpbmR1cCAhPT0gZmFsc2UpIHtcbiAgICAgIGkgPSBNYXRoLm1heCgtd2luZHVwLCBNYXRoLm1pbihpLCB3aW5kdXApKVxuICAgIH1cblxuICAgIGMuZXJyb3IgPSBwXG4gICAgYy5pbnRlZ3JhbCA9IGlcblxuICAgIGMuZG9uZSA9IE1hdGguYWJzKHApIDwgMC4wMDFcblxuICAgIHJldHVybiBjLmRvbmUgPyB0YXJnZXQgOiBjdXJyZW50ICsgKHRoaXMuUCAqIHAgKyB0aGlzLkkgKiBpICsgdGhpcy5EICogZClcbiAgfVxufVxuXG5leHRlbmQoUElELCB7XG4gIHdpbmR1cDogbWFrZVNldHRlckdldHRlcignX3dpbmR1cCcpLFxuICBwOiBtYWtlU2V0dGVyR2V0dGVyKCdQJyksXG4gIGk6IG1ha2VTZXR0ZXJHZXR0ZXIoJ0knKSxcbiAgZDogbWFrZVNldHRlckdldHRlcignRCcpXG59KVxuIiwgImltcG9ydCB7IGlzUGF0aExldHRlciB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9yZWdleC5qcydcbmltcG9ydCBQb2ludCBmcm9tICcuLi90eXBlcy9Qb2ludC5qcydcblxuY29uc3Qgc2VnbWVudFBhcmFtZXRlcnMgPSB7XG4gIE06IDIsXG4gIEw6IDIsXG4gIEg6IDEsXG4gIFY6IDEsXG4gIEM6IDYsXG4gIFM6IDQsXG4gIFE6IDQsXG4gIFQ6IDIsXG4gIEE6IDcsXG4gIFo6IDBcbn1cblxuY29uc3QgcGF0aEhhbmRsZXJzID0ge1xuICBNOiBmdW5jdGlvbiAoYywgcCwgcDApIHtcbiAgICBwLnggPSBwMC54ID0gY1swXVxuICAgIHAueSA9IHAwLnkgPSBjWzFdXG5cbiAgICByZXR1cm4gWydNJywgcC54LCBwLnldXG4gIH0sXG4gIEw6IGZ1bmN0aW9uIChjLCBwKSB7XG4gICAgcC54ID0gY1swXVxuICAgIHAueSA9IGNbMV1cbiAgICByZXR1cm4gWydMJywgY1swXSwgY1sxXV1cbiAgfSxcbiAgSDogZnVuY3Rpb24gKGMsIHApIHtcbiAgICBwLnggPSBjWzBdXG4gICAgcmV0dXJuIFsnSCcsIGNbMF1dXG4gIH0sXG4gIFY6IGZ1bmN0aW9uIChjLCBwKSB7XG4gICAgcC55ID0gY1swXVxuICAgIHJldHVybiBbJ1YnLCBjWzBdXVxuICB9LFxuICBDOiBmdW5jdGlvbiAoYywgcCkge1xuICAgIHAueCA9IGNbNF1cbiAgICBwLnkgPSBjWzVdXG4gICAgcmV0dXJuIFsnQycsIGNbMF0sIGNbMV0sIGNbMl0sIGNbM10sIGNbNF0sIGNbNV1dXG4gIH0sXG4gIFM6IGZ1bmN0aW9uIChjLCBwKSB7XG4gICAgcC54ID0gY1syXVxuICAgIHAueSA9IGNbM11cbiAgICByZXR1cm4gWydTJywgY1swXSwgY1sxXSwgY1syXSwgY1szXV1cbiAgfSxcbiAgUTogZnVuY3Rpb24gKGMsIHApIHtcbiAgICBwLnggPSBjWzJdXG4gICAgcC55ID0gY1szXVxuICAgIHJldHVybiBbJ1EnLCBjWzBdLCBjWzFdLCBjWzJdLCBjWzNdXVxuICB9LFxuICBUOiBmdW5jdGlvbiAoYywgcCkge1xuICAgIHAueCA9IGNbMF1cbiAgICBwLnkgPSBjWzFdXG4gICAgcmV0dXJuIFsnVCcsIGNbMF0sIGNbMV1dXG4gIH0sXG4gIFo6IGZ1bmN0aW9uIChjLCBwLCBwMCkge1xuICAgIHAueCA9IHAwLnhcbiAgICBwLnkgPSBwMC55XG4gICAgcmV0dXJuIFsnWiddXG4gIH0sXG4gIEE6IGZ1bmN0aW9uIChjLCBwKSB7XG4gICAgcC54ID0gY1s1XVxuICAgIHAueSA9IGNbNl1cbiAgICByZXR1cm4gWydBJywgY1swXSwgY1sxXSwgY1syXSwgY1szXSwgY1s0XSwgY1s1XSwgY1s2XV1cbiAgfVxufVxuXG5jb25zdCBtbGh2cXRjc2F6ID0gJ21saHZxdGNzYXonLnNwbGl0KCcnKVxuXG5mb3IgKGxldCBpID0gMCwgaWwgPSBtbGh2cXRjc2F6Lmxlbmd0aDsgaSA8IGlsOyArK2kpIHtcbiAgcGF0aEhhbmRsZXJzW21saHZxdGNzYXpbaV1dID0gKGZ1bmN0aW9uIChpKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIChjLCBwLCBwMCkge1xuICAgICAgaWYgKGkgPT09ICdIJykgY1swXSA9IGNbMF0gKyBwLnhcbiAgICAgIGVsc2UgaWYgKGkgPT09ICdWJykgY1swXSA9IGNbMF0gKyBwLnlcbiAgICAgIGVsc2UgaWYgKGkgPT09ICdBJykge1xuICAgICAgICBjWzVdID0gY1s1XSArIHAueFxuICAgICAgICBjWzZdID0gY1s2XSArIHAueVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDAsIGpsID0gYy5sZW5ndGg7IGogPCBqbDsgKytqKSB7XG4gICAgICAgICAgY1tqXSA9IGNbal0gKyAoaiAlIDIgPyBwLnkgOiBwLngpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhdGhIYW5kbGVyc1tpXShjLCBwLCBwMClcbiAgICB9XG4gIH0pKG1saHZxdGNzYXpbaV0udG9VcHBlckNhc2UoKSlcbn1cblxuZnVuY3Rpb24gbWFrZUFic29sdXQocGFyc2VyKSB7XG4gIGNvbnN0IGNvbW1hbmQgPSBwYXJzZXIuc2VnbWVudFswXVxuICByZXR1cm4gcGF0aEhhbmRsZXJzW2NvbW1hbmRdKHBhcnNlci5zZWdtZW50LnNsaWNlKDEpLCBwYXJzZXIucCwgcGFyc2VyLnAwKVxufVxuXG5mdW5jdGlvbiBzZWdtZW50Q29tcGxldGUocGFyc2VyKSB7XG4gIHJldHVybiAoXG4gICAgcGFyc2VyLnNlZ21lbnQubGVuZ3RoICYmXG4gICAgcGFyc2VyLnNlZ21lbnQubGVuZ3RoIC0gMSA9PT1cbiAgICAgIHNlZ21lbnRQYXJhbWV0ZXJzW3BhcnNlci5zZWdtZW50WzBdLnRvVXBwZXJDYXNlKCldXG4gIClcbn1cblxuZnVuY3Rpb24gc3RhcnROZXdTZWdtZW50KHBhcnNlciwgdG9rZW4pIHtcbiAgcGFyc2VyLmluTnVtYmVyICYmIGZpbmFsaXplTnVtYmVyKHBhcnNlciwgZmFsc2UpXG4gIGNvbnN0IHBhdGhMZXR0ZXIgPSBpc1BhdGhMZXR0ZXIudGVzdCh0b2tlbilcblxuICBpZiAocGF0aExldHRlcikge1xuICAgIHBhcnNlci5zZWdtZW50ID0gW3Rva2VuXVxuICB9IGVsc2Uge1xuICAgIGNvbnN0IGxhc3RDb21tYW5kID0gcGFyc2VyLmxhc3RDb21tYW5kXG4gICAgY29uc3Qgc21hbGwgPSBsYXN0Q29tbWFuZC50b0xvd2VyQ2FzZSgpXG4gICAgY29uc3QgaXNTbWFsbCA9IGxhc3RDb21tYW5kID09PSBzbWFsbFxuICAgIHBhcnNlci5zZWdtZW50ID0gW3NtYWxsID09PSAnbScgPyAoaXNTbWFsbCA/ICdsJyA6ICdMJykgOiBsYXN0Q29tbWFuZF1cbiAgfVxuXG4gIHBhcnNlci5pblNlZ21lbnQgPSB0cnVlXG4gIHBhcnNlci5sYXN0Q29tbWFuZCA9IHBhcnNlci5zZWdtZW50WzBdXG5cbiAgcmV0dXJuIHBhdGhMZXR0ZXJcbn1cblxuZnVuY3Rpb24gZmluYWxpemVOdW1iZXIocGFyc2VyLCBpbk51bWJlcikge1xuICBpZiAoIXBhcnNlci5pbk51bWJlcikgdGhyb3cgbmV3IEVycm9yKCdQYXJzZXIgRXJyb3InKVxuICBwYXJzZXIubnVtYmVyICYmIHBhcnNlci5zZWdtZW50LnB1c2gocGFyc2VGbG9hdChwYXJzZXIubnVtYmVyKSlcbiAgcGFyc2VyLmluTnVtYmVyID0gaW5OdW1iZXJcbiAgcGFyc2VyLm51bWJlciA9ICcnXG4gIHBhcnNlci5wb2ludFNlZW4gPSBmYWxzZVxuICBwYXJzZXIuaGFzRXhwb25lbnQgPSBmYWxzZVxuXG4gIGlmIChzZWdtZW50Q29tcGxldGUocGFyc2VyKSkge1xuICAgIGZpbmFsaXplU2VnbWVudChwYXJzZXIpXG4gIH1cbn1cblxuZnVuY3Rpb24gZmluYWxpemVTZWdtZW50KHBhcnNlcikge1xuICBwYXJzZXIuaW5TZWdtZW50ID0gZmFsc2VcbiAgaWYgKHBhcnNlci5hYnNvbHV0ZSkge1xuICAgIHBhcnNlci5zZWdtZW50ID0gbWFrZUFic29sdXQocGFyc2VyKVxuICB9XG4gIHBhcnNlci5zZWdtZW50cy5wdXNoKHBhcnNlci5zZWdtZW50KVxufVxuXG5mdW5jdGlvbiBpc0FyY0ZsYWcocGFyc2VyKSB7XG4gIGlmICghcGFyc2VyLnNlZ21lbnQubGVuZ3RoKSByZXR1cm4gZmFsc2VcbiAgY29uc3QgaXNBcmMgPSBwYXJzZXIuc2VnbWVudFswXS50b1VwcGVyQ2FzZSgpID09PSAnQSdcbiAgY29uc3QgbGVuZ3RoID0gcGFyc2VyLnNlZ21lbnQubGVuZ3RoXG5cbiAgcmV0dXJuIGlzQXJjICYmIChsZW5ndGggPT09IDQgfHwgbGVuZ3RoID09PSA1KVxufVxuXG5mdW5jdGlvbiBpc0V4cG9uZW50aWFsKHBhcnNlcikge1xuICByZXR1cm4gcGFyc2VyLmxhc3RUb2tlbi50b1VwcGVyQ2FzZSgpID09PSAnRSdcbn1cblxuY29uc3QgcGF0aERlbGltaXRlcnMgPSBuZXcgU2V0KFsnICcsICcsJywgJ1xcdCcsICdcXG4nLCAnXFxyJywgJ1xcZiddKVxuZXhwb3J0IGZ1bmN0aW9uIHBhdGhQYXJzZXIoZCwgdG9BYnNvbHV0ZSA9IHRydWUpIHtcbiAgbGV0IGluZGV4ID0gMFxuICBsZXQgdG9rZW4gPSAnJ1xuICBjb25zdCBwYXJzZXIgPSB7XG4gICAgc2VnbWVudDogW10sXG4gICAgaW5OdW1iZXI6IGZhbHNlLFxuICAgIG51bWJlcjogJycsXG4gICAgbGFzdFRva2VuOiAnJyxcbiAgICBpblNlZ21lbnQ6IGZhbHNlLFxuICAgIHNlZ21lbnRzOiBbXSxcbiAgICBwb2ludFNlZW46IGZhbHNlLFxuICAgIGhhc0V4cG9uZW50OiBmYWxzZSxcbiAgICBhYnNvbHV0ZTogdG9BYnNvbHV0ZSxcbiAgICBwMDogbmV3IFBvaW50KCksXG4gICAgcDogbmV3IFBvaW50KClcbiAgfVxuXG4gIHdoaWxlICgoKHBhcnNlci5sYXN0VG9rZW4gPSB0b2tlbiksICh0b2tlbiA9IGQuY2hhckF0KGluZGV4KyspKSkpIHtcbiAgICBpZiAoIXBhcnNlci5pblNlZ21lbnQpIHtcbiAgICAgIGlmIChzdGFydE5ld1NlZ21lbnQocGFyc2VyLCB0b2tlbikpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodG9rZW4gPT09ICcuJykge1xuICAgICAgaWYgKHBhcnNlci5wb2ludFNlZW4gfHwgcGFyc2VyLmhhc0V4cG9uZW50KSB7XG4gICAgICAgIGZpbmFsaXplTnVtYmVyKHBhcnNlciwgZmFsc2UpXG4gICAgICAgIC0taW5kZXhcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIHBhcnNlci5pbk51bWJlciA9IHRydWVcbiAgICAgIHBhcnNlci5wb2ludFNlZW4gPSB0cnVlXG4gICAgICBwYXJzZXIubnVtYmVyICs9IHRva2VuXG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmICghaXNOYU4ocGFyc2VJbnQodG9rZW4pKSkge1xuICAgICAgaWYgKHBhcnNlci5udW1iZXIgPT09ICcwJyB8fCBpc0FyY0ZsYWcocGFyc2VyKSkge1xuICAgICAgICBwYXJzZXIuaW5OdW1iZXIgPSB0cnVlXG4gICAgICAgIHBhcnNlci5udW1iZXIgPSB0b2tlblxuICAgICAgICBmaW5hbGl6ZU51bWJlcihwYXJzZXIsIHRydWUpXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIHBhcnNlci5pbk51bWJlciA9IHRydWVcbiAgICAgIHBhcnNlci5udW1iZXIgKz0gdG9rZW5cbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaWYgKHBhdGhEZWxpbWl0ZXJzLmhhcyh0b2tlbikpIHtcbiAgICAgIGlmIChwYXJzZXIuaW5OdW1iZXIpIHtcbiAgICAgICAgZmluYWxpemVOdW1iZXIocGFyc2VyLCBmYWxzZSlcbiAgICAgIH1cbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaWYgKHRva2VuID09PSAnLScgfHwgdG9rZW4gPT09ICcrJykge1xuICAgICAgaWYgKHBhcnNlci5pbk51bWJlciAmJiAhaXNFeHBvbmVudGlhbChwYXJzZXIpKSB7XG4gICAgICAgIGZpbmFsaXplTnVtYmVyKHBhcnNlciwgZmFsc2UpXG4gICAgICAgIC0taW5kZXhcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIHBhcnNlci5udW1iZXIgKz0gdG9rZW5cbiAgICAgIHBhcnNlci5pbk51bWJlciA9IHRydWVcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaWYgKHRva2VuLnRvVXBwZXJDYXNlKCkgPT09ICdFJykge1xuICAgICAgcGFyc2VyLm51bWJlciArPSB0b2tlblxuICAgICAgcGFyc2VyLmhhc0V4cG9uZW50ID0gdHJ1ZVxuICAgICAgY29udGludWVcbiAgICB9XG5cbiAgICBpZiAoaXNQYXRoTGV0dGVyLnRlc3QodG9rZW4pKSB7XG4gICAgICBpZiAocGFyc2VyLmluTnVtYmVyKSB7XG4gICAgICAgIGZpbmFsaXplTnVtYmVyKHBhcnNlciwgZmFsc2UpXG4gICAgICB9IGVsc2UgaWYgKCFzZWdtZW50Q29tcGxldGUocGFyc2VyKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3BhcnNlciBFcnJvcicpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmaW5hbGl6ZVNlZ21lbnQocGFyc2VyKVxuICAgICAgfVxuICAgICAgLS1pbmRleFxuICAgIH1cbiAgfVxuXG4gIGlmIChwYXJzZXIuaW5OdW1iZXIpIHtcbiAgICBmaW5hbGl6ZU51bWJlcihwYXJzZXIsIGZhbHNlKVxuICB9XG5cbiAgaWYgKHBhcnNlci5pblNlZ21lbnQgJiYgc2VnbWVudENvbXBsZXRlKHBhcnNlcikpIHtcbiAgICBmaW5hbGl6ZVNlZ21lbnQocGFyc2VyKVxuICB9XG5cbiAgcmV0dXJuIHBhcnNlci5zZWdtZW50c1xufVxuIiwgImltcG9ydCBTVkdBcnJheSBmcm9tICcuL1NWR0FycmF5LmpzJ1xuaW1wb3J0IHBhcnNlciBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcGFyc2VyLmpzJ1xuaW1wb3J0IEJveCBmcm9tICcuL0JveC5qcydcbmltcG9ydCB7IHBhdGhQYXJzZXIgfSBmcm9tICcuLi91dGlscy9wYXRoUGFyc2VyLmpzJ1xuXG5mdW5jdGlvbiBhcnJheVRvU3RyaW5nKGEpIHtcbiAgbGV0IHMgPSAnJ1xuICBmb3IgKGxldCBpID0gMCwgaWwgPSBhLmxlbmd0aDsgaSA8IGlsOyBpKyspIHtcbiAgICBzICs9IGFbaV1bMF1cblxuICAgIGlmIChhW2ldWzFdICE9IG51bGwpIHtcbiAgICAgIHMgKz0gYVtpXVsxXVxuXG4gICAgICBpZiAoYVtpXVsyXSAhPSBudWxsKSB7XG4gICAgICAgIHMgKz0gJyAnXG4gICAgICAgIHMgKz0gYVtpXVsyXVxuXG4gICAgICAgIGlmIChhW2ldWzNdICE9IG51bGwpIHtcbiAgICAgICAgICBzICs9ICcgJ1xuICAgICAgICAgIHMgKz0gYVtpXVszXVxuICAgICAgICAgIHMgKz0gJyAnXG4gICAgICAgICAgcyArPSBhW2ldWzRdXG5cbiAgICAgICAgICBpZiAoYVtpXVs1XSAhPSBudWxsKSB7XG4gICAgICAgICAgICBzICs9ICcgJ1xuICAgICAgICAgICAgcyArPSBhW2ldWzVdXG4gICAgICAgICAgICBzICs9ICcgJ1xuICAgICAgICAgICAgcyArPSBhW2ldWzZdXG5cbiAgICAgICAgICAgIGlmIChhW2ldWzddICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgcyArPSAnICdcbiAgICAgICAgICAgICAgcyArPSBhW2ldWzddXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHMgKyAnICdcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGF0aEFycmF5IGV4dGVuZHMgU1ZHQXJyYXkge1xuICAvLyBHZXQgYm91bmRpbmcgYm94IG9mIHBhdGhcbiAgYmJveCgpIHtcbiAgICBwYXJzZXIoKS5wYXRoLnNldEF0dHJpYnV0ZSgnZCcsIHRoaXMudG9TdHJpbmcoKSlcbiAgICByZXR1cm4gbmV3IEJveChwYXJzZXIubm9kZXMucGF0aC5nZXRCQm94KCkpXG4gIH1cblxuICAvLyBNb3ZlIHBhdGggc3RyaW5nXG4gIG1vdmUoeCwgeSkge1xuICAgIC8vIGdldCBib3VuZGluZyBib3ggb2YgY3VycmVudCBzaXR1YXRpb25cbiAgICBjb25zdCBib3ggPSB0aGlzLmJib3goKVxuXG4gICAgLy8gZ2V0IHJlbGF0aXZlIG9mZnNldFxuICAgIHggLT0gYm94LnhcbiAgICB5IC09IGJveC55XG5cbiAgICBpZiAoIWlzTmFOKHgpICYmICFpc05hTih5KSkge1xuICAgICAgLy8gbW92ZSBldmVyeSBwb2ludFxuICAgICAgZm9yIChsZXQgbCwgaSA9IHRoaXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgbCA9IHRoaXNbaV1bMF1cblxuICAgICAgICBpZiAobCA9PT0gJ00nIHx8IGwgPT09ICdMJyB8fCBsID09PSAnVCcpIHtcbiAgICAgICAgICB0aGlzW2ldWzFdICs9IHhcbiAgICAgICAgICB0aGlzW2ldWzJdICs9IHlcbiAgICAgICAgfSBlbHNlIGlmIChsID09PSAnSCcpIHtcbiAgICAgICAgICB0aGlzW2ldWzFdICs9IHhcbiAgICAgICAgfSBlbHNlIGlmIChsID09PSAnVicpIHtcbiAgICAgICAgICB0aGlzW2ldWzFdICs9IHlcbiAgICAgICAgfSBlbHNlIGlmIChsID09PSAnQycgfHwgbCA9PT0gJ1MnIHx8IGwgPT09ICdRJykge1xuICAgICAgICAgIHRoaXNbaV1bMV0gKz0geFxuICAgICAgICAgIHRoaXNbaV1bMl0gKz0geVxuICAgICAgICAgIHRoaXNbaV1bM10gKz0geFxuICAgICAgICAgIHRoaXNbaV1bNF0gKz0geVxuXG4gICAgICAgICAgaWYgKGwgPT09ICdDJykge1xuICAgICAgICAgICAgdGhpc1tpXVs1XSArPSB4XG4gICAgICAgICAgICB0aGlzW2ldWzZdICs9IHlcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAobCA9PT0gJ0EnKSB7XG4gICAgICAgICAgdGhpc1tpXVs2XSArPSB4XG4gICAgICAgICAgdGhpc1tpXVs3XSArPSB5XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gQWJzb2x1dGl6ZSBhbmQgcGFyc2UgcGF0aCB0byBhcnJheVxuICBwYXJzZShkID0gJ00wIDAnKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZCkpIHtcbiAgICAgIGQgPSBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLCBkKS50b1N0cmluZygpXG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGhQYXJzZXIoZClcbiAgfVxuXG4gIC8vIFJlc2l6ZSBwYXRoIHN0cmluZ1xuICBzaXplKHdpZHRoLCBoZWlnaHQpIHtcbiAgICAvLyBnZXQgYm91bmRpbmcgYm94IG9mIGN1cnJlbnQgc2l0dWF0aW9uXG4gICAgY29uc3QgYm94ID0gdGhpcy5iYm94KClcbiAgICBsZXQgaSwgbFxuXG4gICAgLy8gSWYgdGhlIGJveCB3aWR0aCBvciBoZWlnaHQgaXMgMCB0aGVuIHdlIGlnbm9yZVxuICAgIC8vIHRyYW5zZm9ybWF0aW9ucyBvbiB0aGUgcmVzcGVjdGl2ZSBheGlzXG4gICAgYm94LndpZHRoID0gYm94LndpZHRoID09PSAwID8gMSA6IGJveC53aWR0aFxuICAgIGJveC5oZWlnaHQgPSBib3guaGVpZ2h0ID09PSAwID8gMSA6IGJveC5oZWlnaHRcblxuICAgIC8vIHJlY2FsY3VsYXRlIHBvc2l0aW9uIG9mIGFsbCBwb2ludHMgYWNjb3JkaW5nIHRvIG5ldyBzaXplXG4gICAgZm9yIChpID0gdGhpcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgbCA9IHRoaXNbaV1bMF1cblxuICAgICAgaWYgKGwgPT09ICdNJyB8fCBsID09PSAnTCcgfHwgbCA9PT0gJ1QnKSB7XG4gICAgICAgIHRoaXNbaV1bMV0gPSAoKHRoaXNbaV1bMV0gLSBib3gueCkgKiB3aWR0aCkgLyBib3gud2lkdGggKyBib3gueFxuICAgICAgICB0aGlzW2ldWzJdID0gKCh0aGlzW2ldWzJdIC0gYm94LnkpICogaGVpZ2h0KSAvIGJveC5oZWlnaHQgKyBib3gueVxuICAgICAgfSBlbHNlIGlmIChsID09PSAnSCcpIHtcbiAgICAgICAgdGhpc1tpXVsxXSA9ICgodGhpc1tpXVsxXSAtIGJveC54KSAqIHdpZHRoKSAvIGJveC53aWR0aCArIGJveC54XG4gICAgICB9IGVsc2UgaWYgKGwgPT09ICdWJykge1xuICAgICAgICB0aGlzW2ldWzFdID0gKCh0aGlzW2ldWzFdIC0gYm94LnkpICogaGVpZ2h0KSAvIGJveC5oZWlnaHQgKyBib3gueVxuICAgICAgfSBlbHNlIGlmIChsID09PSAnQycgfHwgbCA9PT0gJ1MnIHx8IGwgPT09ICdRJykge1xuICAgICAgICB0aGlzW2ldWzFdID0gKCh0aGlzW2ldWzFdIC0gYm94LngpICogd2lkdGgpIC8gYm94LndpZHRoICsgYm94LnhcbiAgICAgICAgdGhpc1tpXVsyXSA9ICgodGhpc1tpXVsyXSAtIGJveC55KSAqIGhlaWdodCkgLyBib3guaGVpZ2h0ICsgYm94LnlcbiAgICAgICAgdGhpc1tpXVszXSA9ICgodGhpc1tpXVszXSAtIGJveC54KSAqIHdpZHRoKSAvIGJveC53aWR0aCArIGJveC54XG4gICAgICAgIHRoaXNbaV1bNF0gPSAoKHRoaXNbaV1bNF0gLSBib3gueSkgKiBoZWlnaHQpIC8gYm94LmhlaWdodCArIGJveC55XG5cbiAgICAgICAgaWYgKGwgPT09ICdDJykge1xuICAgICAgICAgIHRoaXNbaV1bNV0gPSAoKHRoaXNbaV1bNV0gLSBib3gueCkgKiB3aWR0aCkgLyBib3gud2lkdGggKyBib3gueFxuICAgICAgICAgIHRoaXNbaV1bNl0gPSAoKHRoaXNbaV1bNl0gLSBib3gueSkgKiBoZWlnaHQpIC8gYm94LmhlaWdodCArIGJveC55XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAobCA9PT0gJ0EnKSB7XG4gICAgICAgIC8vIHJlc2l6ZSByYWRpaVxuICAgICAgICB0aGlzW2ldWzFdID0gKHRoaXNbaV1bMV0gKiB3aWR0aCkgLyBib3gud2lkdGhcbiAgICAgICAgdGhpc1tpXVsyXSA9ICh0aGlzW2ldWzJdICogaGVpZ2h0KSAvIGJveC5oZWlnaHRcblxuICAgICAgICAvLyBtb3ZlIHBvc2l0aW9uIHZhbHVlc1xuICAgICAgICB0aGlzW2ldWzZdID0gKCh0aGlzW2ldWzZdIC0gYm94LngpICogd2lkdGgpIC8gYm94LndpZHRoICsgYm94LnhcbiAgICAgICAgdGhpc1tpXVs3XSA9ICgodGhpc1tpXVs3XSAtIGJveC55KSAqIGhlaWdodCkgLyBib3guaGVpZ2h0ICsgYm94LnlcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gQ29udmVydCBhcnJheSB0byBzdHJpbmdcbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuIGFycmF5VG9TdHJpbmcodGhpcylcbiAgfVxufVxuIiwgImltcG9ydCB7IEVhc2UgfSBmcm9tICcuL0NvbnRyb2xsZXIuanMnXG5pbXBvcnQge1xuICBkZWxpbWl0ZXIsXG4gIG51bWJlckFuZFVuaXQsXG4gIGlzUGF0aExldHRlclxufSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgeyBleHRlbmQgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IENvbG9yIGZyb20gJy4uL3R5cGVzL0NvbG9yLmpzJ1xuaW1wb3J0IFBhdGhBcnJheSBmcm9tICcuLi90eXBlcy9QYXRoQXJyYXkuanMnXG5pbXBvcnQgU1ZHQXJyYXkgZnJvbSAnLi4vdHlwZXMvU1ZHQXJyYXkuanMnXG5pbXBvcnQgU1ZHTnVtYmVyIGZyb20gJy4uL3R5cGVzL1NWR051bWJlci5qcydcblxuY29uc3QgZ2V0Q2xhc3NGb3JUeXBlID0gKHZhbHVlKSA9PiB7XG4gIGNvbnN0IHR5cGUgPSB0eXBlb2YgdmFsdWVcblxuICBpZiAodHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gU1ZHTnVtYmVyXG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICBpZiAoQ29sb3IuaXNDb2xvcih2YWx1ZSkpIHtcbiAgICAgIHJldHVybiBDb2xvclxuICAgIH0gZWxzZSBpZiAoZGVsaW1pdGVyLnRlc3QodmFsdWUpKSB7XG4gICAgICByZXR1cm4gaXNQYXRoTGV0dGVyLnRlc3QodmFsdWUpID8gUGF0aEFycmF5IDogU1ZHQXJyYXlcbiAgICB9IGVsc2UgaWYgKG51bWJlckFuZFVuaXQudGVzdCh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiBTVkdOdW1iZXJcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIE5vbk1vcnBoYWJsZVxuICAgIH1cbiAgfSBlbHNlIGlmIChtb3JwaGFibGVUeXBlcy5pbmRleE9mKHZhbHVlLmNvbnN0cnVjdG9yKSA+IC0xKSB7XG4gICAgcmV0dXJuIHZhbHVlLmNvbnN0cnVjdG9yXG4gIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gU1ZHQXJyYXlcbiAgfSBlbHNlIGlmICh0eXBlID09PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBPYmplY3RCYWdcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gTm9uTW9ycGhhYmxlXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTW9ycGhhYmxlIHtcbiAgY29uc3RydWN0b3Ioc3RlcHBlcikge1xuICAgIHRoaXMuX3N0ZXBwZXIgPSBzdGVwcGVyIHx8IG5ldyBFYXNlKCctJylcblxuICAgIHRoaXMuX2Zyb20gPSBudWxsXG4gICAgdGhpcy5fdG8gPSBudWxsXG4gICAgdGhpcy5fdHlwZSA9IG51bGxcbiAgICB0aGlzLl9jb250ZXh0ID0gbnVsbFxuICAgIHRoaXMuX21vcnBoT2JqID0gbnVsbFxuICB9XG5cbiAgYXQocG9zKSB7XG4gICAgcmV0dXJuIHRoaXMuX21vcnBoT2JqLm1vcnBoKFxuICAgICAgdGhpcy5fZnJvbSxcbiAgICAgIHRoaXMuX3RvLFxuICAgICAgcG9zLFxuICAgICAgdGhpcy5fc3RlcHBlcixcbiAgICAgIHRoaXMuX2NvbnRleHRcbiAgICApXG4gIH1cblxuICBkb25lKCkge1xuICAgIGNvbnN0IGNvbXBsZXRlID0gdGhpcy5fY29udGV4dC5tYXAodGhpcy5fc3RlcHBlci5kb25lKS5yZWR1Y2UoZnVuY3Rpb24gKFxuICAgICAgbGFzdCxcbiAgICAgIGN1cnJcbiAgICApIHtcbiAgICAgIHJldHVybiBsYXN0ICYmIGN1cnJcbiAgICB9LCB0cnVlKVxuICAgIHJldHVybiBjb21wbGV0ZVxuICB9XG5cbiAgZnJvbSh2YWwpIHtcbiAgICBpZiAodmFsID09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLl9mcm9tXG4gICAgfVxuXG4gICAgdGhpcy5fZnJvbSA9IHRoaXMuX3NldCh2YWwpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHN0ZXBwZXIoc3RlcHBlcikge1xuICAgIGlmIChzdGVwcGVyID09IG51bGwpIHJldHVybiB0aGlzLl9zdGVwcGVyXG4gICAgdGhpcy5fc3RlcHBlciA9IHN0ZXBwZXJcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdG8odmFsKSB7XG4gICAgaWYgKHZhbCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdG9cbiAgICB9XG5cbiAgICB0aGlzLl90byA9IHRoaXMuX3NldCh2YWwpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHR5cGUodHlwZSkge1xuICAgIC8vIGdldHRlclxuICAgIGlmICh0eXBlID09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLl90eXBlXG4gICAgfVxuXG4gICAgLy8gc2V0dGVyXG4gICAgdGhpcy5fdHlwZSA9IHR5cGVcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgX3NldCh2YWx1ZSkge1xuICAgIGlmICghdGhpcy5fdHlwZSkge1xuICAgICAgdGhpcy50eXBlKGdldENsYXNzRm9yVHlwZSh2YWx1ZSkpXG4gICAgfVxuXG4gICAgbGV0IHJlc3VsdCA9IG5ldyB0aGlzLl90eXBlKHZhbHVlKVxuICAgIGlmICh0aGlzLl90eXBlID09PSBDb2xvcikge1xuICAgICAgcmVzdWx0ID0gdGhpcy5fdG9cbiAgICAgICAgPyByZXN1bHRbdGhpcy5fdG9bNF1dKClcbiAgICAgICAgOiB0aGlzLl9mcm9tXG4gICAgICAgICAgPyByZXN1bHRbdGhpcy5fZnJvbVs0XV0oKVxuICAgICAgICAgIDogcmVzdWx0XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3R5cGUgPT09IE9iamVjdEJhZykge1xuICAgICAgcmVzdWx0ID0gdGhpcy5fdG9cbiAgICAgICAgPyByZXN1bHQuYWxpZ24odGhpcy5fdG8pXG4gICAgICAgIDogdGhpcy5fZnJvbVxuICAgICAgICAgID8gcmVzdWx0LmFsaWduKHRoaXMuX2Zyb20pXG4gICAgICAgICAgOiByZXN1bHRcbiAgICB9XG5cbiAgICByZXN1bHQgPSByZXN1bHQudG9Db25zdW1hYmxlKClcblxuICAgIHRoaXMuX21vcnBoT2JqID0gdGhpcy5fbW9ycGhPYmogfHwgbmV3IHRoaXMuX3R5cGUoKVxuICAgIHRoaXMuX2NvbnRleHQgPVxuICAgICAgdGhpcy5fY29udGV4dCB8fFxuICAgICAgQXJyYXkuYXBwbHkobnVsbCwgQXJyYXkocmVzdWx0Lmxlbmd0aCkpXG4gICAgICAgIC5tYXAoT2JqZWN0KVxuICAgICAgICAubWFwKGZ1bmN0aW9uIChvKSB7XG4gICAgICAgICAgby5kb25lID0gdHJ1ZVxuICAgICAgICAgIHJldHVybiBvXG4gICAgICAgIH0pXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOb25Nb3JwaGFibGUge1xuICBjb25zdHJ1Y3RvciguLi5hcmdzKSB7XG4gICAgdGhpcy5pbml0KC4uLmFyZ3MpXG4gIH1cblxuICBpbml0KHZhbCkge1xuICAgIHZhbCA9IEFycmF5LmlzQXJyYXkodmFsKSA/IHZhbFswXSA6IHZhbFxuICAgIHRoaXMudmFsdWUgPSB2YWxcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gW3RoaXMudmFsdWVdXG4gIH1cblxuICB2YWx1ZU9mKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFRyYW5zZm9ybUJhZyB7XG4gIGNvbnN0cnVjdG9yKC4uLmFyZ3MpIHtcbiAgICB0aGlzLmluaXQoLi4uYXJncylcbiAgfVxuXG4gIGluaXQob2JqKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSkge1xuICAgICAgb2JqID0ge1xuICAgICAgICBzY2FsZVg6IG9ialswXSxcbiAgICAgICAgc2NhbGVZOiBvYmpbMV0sXG4gICAgICAgIHNoZWFyOiBvYmpbMl0sXG4gICAgICAgIHJvdGF0ZTogb2JqWzNdLFxuICAgICAgICB0cmFuc2xhdGVYOiBvYmpbNF0sXG4gICAgICAgIHRyYW5zbGF0ZVk6IG9ials1XSxcbiAgICAgICAgb3JpZ2luWDogb2JqWzZdLFxuICAgICAgICBvcmlnaW5ZOiBvYmpbN11cbiAgICAgIH1cbiAgICB9XG5cbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIFRyYW5zZm9ybUJhZy5kZWZhdWx0cywgb2JqKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB0b0FycmF5KCkge1xuICAgIGNvbnN0IHYgPSB0aGlzXG5cbiAgICByZXR1cm4gW1xuICAgICAgdi5zY2FsZVgsXG4gICAgICB2LnNjYWxlWSxcbiAgICAgIHYuc2hlYXIsXG4gICAgICB2LnJvdGF0ZSxcbiAgICAgIHYudHJhbnNsYXRlWCxcbiAgICAgIHYudHJhbnNsYXRlWSxcbiAgICAgIHYub3JpZ2luWCxcbiAgICAgIHYub3JpZ2luWVxuICAgIF1cbiAgfVxufVxuXG5UcmFuc2Zvcm1CYWcuZGVmYXVsdHMgPSB7XG4gIHNjYWxlWDogMSxcbiAgc2NhbGVZOiAxLFxuICBzaGVhcjogMCxcbiAgcm90YXRlOiAwLFxuICB0cmFuc2xhdGVYOiAwLFxuICB0cmFuc2xhdGVZOiAwLFxuICBvcmlnaW5YOiAwLFxuICBvcmlnaW5ZOiAwXG59XG5cbmNvbnN0IHNvcnRCeUtleSA9IChhLCBiKSA9PiB7XG4gIHJldHVybiBhWzBdIDwgYlswXSA/IC0xIDogYVswXSA+IGJbMF0gPyAxIDogMFxufVxuXG5leHBvcnQgY2xhc3MgT2JqZWN0QmFnIHtcbiAgY29uc3RydWN0b3IoLi4uYXJncykge1xuICAgIHRoaXMuaW5pdCguLi5hcmdzKVxuICB9XG5cbiAgYWxpZ24ob3RoZXIpIHtcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLnZhbHVlc1xuICAgIGZvciAobGV0IGkgPSAwLCBpbCA9IHZhbHVlcy5sZW5ndGg7IGkgPCBpbDsgKytpKSB7XG4gICAgICAvLyBJZiB0aGUgdHlwZSBpcyB0aGUgc2FtZSB3ZSBvbmx5IG5lZWQgdG8gY2hlY2sgaWYgdGhlIGNvbG9yIGlzIGluIHRoZSBjb3JyZWN0IGZvcm1hdFxuICAgICAgaWYgKHZhbHVlc1tpICsgMV0gPT09IG90aGVyW2kgKyAxXSkge1xuICAgICAgICBpZiAodmFsdWVzW2kgKyAxXSA9PT0gQ29sb3IgJiYgb3RoZXJbaSArIDddICE9PSB2YWx1ZXNbaSArIDddKSB7XG4gICAgICAgICAgY29uc3Qgc3BhY2UgPSBvdGhlcltpICsgN11cbiAgICAgICAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcih0aGlzLnZhbHVlcy5zcGxpY2UoaSArIDMsIDUpKVxuICAgICAgICAgICAgW3NwYWNlXSgpXG4gICAgICAgICAgICAudG9BcnJheSgpXG4gICAgICAgICAgdGhpcy52YWx1ZXMuc3BsaWNlKGkgKyAzLCAwLCAuLi5jb2xvcilcbiAgICAgICAgfVxuXG4gICAgICAgIGkgKz0gdmFsdWVzW2kgKyAyXSArIDJcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgaWYgKCFvdGhlcltpICsgMV0pIHtcbiAgICAgICAgcmV0dXJuIHRoaXNcbiAgICAgIH1cblxuICAgICAgLy8gVGhlIHR5cGVzIGRpZmZlciwgc28gd2Ugb3ZlcndyaXRlIHRoZSBuZXcgdHlwZSB3aXRoIHRoZSBvbGQgb25lXG4gICAgICAvLyBBbmQgaW5pdGlhbGl6ZSBpdCB3aXRoIHRoZSB0eXBlcyBkZWZhdWx0IChlLmcuIGJsYWNrIGZvciBjb2xvciBvciAwIGZvciBudW1iZXIpXG4gICAgICBjb25zdCBkZWZhdWx0T2JqZWN0ID0gbmV3IG90aGVyW2kgKyAxXSgpLnRvQXJyYXkoKVxuXG4gICAgICAvLyBUaGFuIHdlIGZpeCB0aGUgdmFsdWVzIGFycmF5XG4gICAgICBjb25zdCB0b0RlbGV0ZSA9IHZhbHVlc1tpICsgMl0gKyAzXG5cbiAgICAgIHZhbHVlcy5zcGxpY2UoXG4gICAgICAgIGksXG4gICAgICAgIHRvRGVsZXRlLFxuICAgICAgICBvdGhlcltpXSxcbiAgICAgICAgb3RoZXJbaSArIDFdLFxuICAgICAgICBvdGhlcltpICsgMl0sXG4gICAgICAgIC4uLmRlZmF1bHRPYmplY3RcbiAgICAgIClcblxuICAgICAgaSArPSB2YWx1ZXNbaSArIDJdICsgMlxuICAgIH1cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgaW5pdChvYmpPckFycikge1xuICAgIHRoaXMudmFsdWVzID0gW11cblxuICAgIGlmIChBcnJheS5pc0FycmF5KG9iak9yQXJyKSkge1xuICAgICAgdGhpcy52YWx1ZXMgPSBvYmpPckFyci5zbGljZSgpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBvYmpPckFyciA9IG9iak9yQXJyIHx8IHt9XG4gICAgY29uc3QgZW50cmllcyA9IFtdXG5cbiAgICBmb3IgKGNvbnN0IGkgaW4gb2JqT3JBcnIpIHtcbiAgICAgIGNvbnN0IFR5cGUgPSBnZXRDbGFzc0ZvclR5cGUob2JqT3JBcnJbaV0pXG4gICAgICBjb25zdCB2YWwgPSBuZXcgVHlwZShvYmpPckFycltpXSkudG9BcnJheSgpXG4gICAgICBlbnRyaWVzLnB1c2goW2ksIFR5cGUsIHZhbC5sZW5ndGgsIC4uLnZhbF0pXG4gICAgfVxuXG4gICAgZW50cmllcy5zb3J0KHNvcnRCeUtleSlcblxuICAgIHRoaXMudmFsdWVzID0gZW50cmllcy5yZWR1Y2UoKGxhc3QsIGN1cnIpID0+IGxhc3QuY29uY2F0KGN1cnIpLCBbXSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZXNcbiAgfVxuXG4gIHZhbHVlT2YoKSB7XG4gICAgY29uc3Qgb2JqID0ge31cbiAgICBjb25zdCBhcnIgPSB0aGlzLnZhbHVlc1xuXG4gICAgLy8gZm9yICh2YXIgaSA9IDAsIGxlbiA9IGFyci5sZW5ndGg7IGkgPCBsZW47IGkgKz0gMikge1xuICAgIHdoaWxlIChhcnIubGVuZ3RoKSB7XG4gICAgICBjb25zdCBrZXkgPSBhcnIuc2hpZnQoKVxuICAgICAgY29uc3QgVHlwZSA9IGFyci5zaGlmdCgpXG4gICAgICBjb25zdCBudW0gPSBhcnIuc2hpZnQoKVxuICAgICAgY29uc3QgdmFsdWVzID0gYXJyLnNwbGljZSgwLCBudW0pXG4gICAgICBvYmpba2V5XSA9IG5ldyBUeXBlKHZhbHVlcykgLy8gLnZhbHVlT2YoKVxuICAgIH1cblxuICAgIHJldHVybiBvYmpcbiAgfVxufVxuXG5jb25zdCBtb3JwaGFibGVUeXBlcyA9IFtOb25Nb3JwaGFibGUsIFRyYW5zZm9ybUJhZywgT2JqZWN0QmFnXVxuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJNb3JwaGFibGVUeXBlKHR5cGUgPSBbXSkge1xuICBtb3JwaGFibGVUeXBlcy5wdXNoKC4uLltdLmNvbmNhdCh0eXBlKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VNb3JwaGFibGUoKSB7XG4gIGV4dGVuZChtb3JwaGFibGVUeXBlcywge1xuICAgIHRvKHZhbCkge1xuICAgICAgcmV0dXJuIG5ldyBNb3JwaGFibGUoKVxuICAgICAgICAudHlwZSh0aGlzLmNvbnN0cnVjdG9yKVxuICAgICAgICAuZnJvbSh0aGlzLnRvQXJyYXkoKSkgLy8gdGhpcy52YWx1ZU9mKCkpXG4gICAgICAgIC50byh2YWwpXG4gICAgfSxcbiAgICBmcm9tQXJyYXkoYXJyKSB7XG4gICAgICB0aGlzLmluaXQoYXJyKVxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9LFxuICAgIHRvQ29uc3VtYWJsZSgpIHtcbiAgICAgIHJldHVybiB0aGlzLnRvQXJyYXkoKVxuICAgIH0sXG4gICAgbW9ycGgoZnJvbSwgdG8sIHBvcywgc3RlcHBlciwgY29udGV4dCkge1xuICAgICAgY29uc3QgbWFwcGVyID0gZnVuY3Rpb24gKGksIGluZGV4KSB7XG4gICAgICAgIHJldHVybiBzdGVwcGVyLnN0ZXAoaSwgdG9baW5kZXhdLCBwb3MsIGNvbnRleHRbaW5kZXhdLCBjb250ZXh0KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5mcm9tQXJyYXkoZnJvbS5tYXAobWFwcGVyKSlcbiAgICB9XG4gIH0pXG59XG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcHJvcG9ydGlvbmFsU2l6ZSB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBQYXRoQXJyYXkgZnJvbSAnLi4vdHlwZXMvUGF0aEFycmF5LmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhdGggZXh0ZW5kcyBTaGFwZSB7XG4gIC8vIEluaXRpYWxpemUgbm9kZVxuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3BhdGgnLCBub2RlKSwgYXR0cnMpXG4gIH1cblxuICAvLyBHZXQgYXJyYXlcbiAgYXJyYXkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FycmF5IHx8ICh0aGlzLl9hcnJheSA9IG5ldyBQYXRoQXJyYXkodGhpcy5hdHRyKCdkJykpKVxuICB9XG5cbiAgLy8gQ2xlYXIgYXJyYXkgY2FjaGVcbiAgY2xlYXIoKSB7XG4gICAgZGVsZXRlIHRoaXMuX2FycmF5XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFNldCBoZWlnaHQgb2YgZWxlbWVudFxuICBoZWlnaHQoaGVpZ2h0KSB7XG4gICAgcmV0dXJuIGhlaWdodCA9PSBudWxsXG4gICAgICA/IHRoaXMuYmJveCgpLmhlaWdodFxuICAgICAgOiB0aGlzLnNpemUodGhpcy5iYm94KCkud2lkdGgsIGhlaWdodClcbiAgfVxuXG4gIC8vIE1vdmUgYnkgbGVmdCB0b3AgY29ybmVyXG4gIG1vdmUoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ2QnLCB0aGlzLmFycmF5KCkubW92ZSh4LCB5KSlcbiAgfVxuXG4gIC8vIFBsb3QgbmV3IHBhdGhcbiAgcGxvdChkKSB7XG4gICAgcmV0dXJuIGQgPT0gbnVsbFxuICAgICAgPyB0aGlzLmFycmF5KClcbiAgICAgIDogdGhpcy5jbGVhcigpLmF0dHIoXG4gICAgICAgICAgJ2QnLFxuICAgICAgICAgIHR5cGVvZiBkID09PSAnc3RyaW5nJyA/IGQgOiAodGhpcy5fYXJyYXkgPSBuZXcgUGF0aEFycmF5KGQpKVxuICAgICAgICApXG4gIH1cblxuICAvLyBTZXQgZWxlbWVudCBzaXplIHRvIGdpdmVuIHdpZHRoIGFuZCBoZWlnaHRcbiAgc2l6ZSh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgY29uc3QgcCA9IHByb3BvcnRpb25hbFNpemUodGhpcywgd2lkdGgsIGhlaWdodClcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdkJywgdGhpcy5hcnJheSgpLnNpemUocC53aWR0aCwgcC5oZWlnaHQpKVxuICB9XG5cbiAgLy8gU2V0IHdpZHRoIG9mIGVsZW1lbnRcbiAgd2lkdGgod2lkdGgpIHtcbiAgICByZXR1cm4gd2lkdGggPT0gbnVsbFxuICAgICAgPyB0aGlzLmJib3goKS53aWR0aFxuICAgICAgOiB0aGlzLnNpemUod2lkdGgsIHRoaXMuYmJveCgpLmhlaWdodClcbiAgfVxuXG4gIC8vIE1vdmUgYnkgbGVmdCB0b3AgY29ybmVyIG92ZXIgeC1heGlzXG4gIHgoeCkge1xuICAgIHJldHVybiB4ID09IG51bGwgPyB0aGlzLmJib3goKS54IDogdGhpcy5tb3ZlKHgsIHRoaXMuYmJveCgpLnkpXG4gIH1cblxuICAvLyBNb3ZlIGJ5IGxlZnQgdG9wIGNvcm5lciBvdmVyIHktYXhpc1xuICB5KHkpIHtcbiAgICByZXR1cm4geSA9PSBudWxsID8gdGhpcy5iYm94KCkueSA6IHRoaXMubW92ZSh0aGlzLmJib3goKS54LCB5KVxuICB9XG59XG5cbi8vIERlZmluZSBtb3JwaGFibGUgYXJyYXlcblBhdGgucHJvdG90eXBlLk1vcnBoQXJyYXkgPSBQYXRoQXJyYXlcblxuLy8gQWRkIHBhcmVudCBtZXRob2RcbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBhIHdyYXBwZWQgcGF0aCBlbGVtZW50XG4gICAgcGF0aDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKGQpIHtcbiAgICAgIC8vIG1ha2Ugc3VyZSBwbG90IGlzIGNhbGxlZCBhcyBhIHNldHRlclxuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBQYXRoKCkpLnBsb3QoZCB8fCBuZXcgUGF0aEFycmF5KCkpXG4gICAgfSlcbiAgfVxufSlcblxucmVnaXN0ZXIoUGF0aCwgJ1BhdGgnKVxuIiwgImltcG9ydCB7IHByb3BvcnRpb25hbFNpemUgfSBmcm9tICcuLi8uLi91dGlscy91dGlscy5qcydcbmltcG9ydCBQb2ludEFycmF5IGZyb20gJy4uLy4uL3R5cGVzL1BvaW50QXJyYXkuanMnXG5cbi8vIEdldCBhcnJheVxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5KCkge1xuICByZXR1cm4gdGhpcy5fYXJyYXkgfHwgKHRoaXMuX2FycmF5ID0gbmV3IFBvaW50QXJyYXkodGhpcy5hdHRyKCdwb2ludHMnKSkpXG59XG5cbi8vIENsZWFyIGFycmF5IGNhY2hlXG5leHBvcnQgZnVuY3Rpb24gY2xlYXIoKSB7XG4gIGRlbGV0ZSB0aGlzLl9hcnJheVxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBNb3ZlIGJ5IGxlZnQgdG9wIGNvcm5lclxuZXhwb3J0IGZ1bmN0aW9uIG1vdmUoeCwgeSkge1xuICByZXR1cm4gdGhpcy5hdHRyKCdwb2ludHMnLCB0aGlzLmFycmF5KCkubW92ZSh4LCB5KSlcbn1cblxuLy8gUGxvdCBuZXcgcGF0aFxuZXhwb3J0IGZ1bmN0aW9uIHBsb3QocCkge1xuICByZXR1cm4gcCA9PSBudWxsXG4gICAgPyB0aGlzLmFycmF5KClcbiAgICA6IHRoaXMuY2xlYXIoKS5hdHRyKFxuICAgICAgICAncG9pbnRzJyxcbiAgICAgICAgdHlwZW9mIHAgPT09ICdzdHJpbmcnID8gcCA6ICh0aGlzLl9hcnJheSA9IG5ldyBQb2ludEFycmF5KHApKVxuICAgICAgKVxufVxuXG4vLyBTZXQgZWxlbWVudCBzaXplIHRvIGdpdmVuIHdpZHRoIGFuZCBoZWlnaHRcbmV4cG9ydCBmdW5jdGlvbiBzaXplKHdpZHRoLCBoZWlnaHQpIHtcbiAgY29uc3QgcCA9IHByb3BvcnRpb25hbFNpemUodGhpcywgd2lkdGgsIGhlaWdodClcbiAgcmV0dXJuIHRoaXMuYXR0cigncG9pbnRzJywgdGhpcy5hcnJheSgpLnNpemUocC53aWR0aCwgcC5oZWlnaHQpKVxufVxuIiwgImltcG9ydCB7XG4gIGV4dGVuZCxcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2tcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgUG9pbnRBcnJheSBmcm9tICcuLi90eXBlcy9Qb2ludEFycmF5LmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5pbXBvcnQgKiBhcyBwb2ludGVkIGZyb20gJy4uL21vZHVsZXMvY29yZS9wb2ludGVkLmpzJ1xuaW1wb3J0ICogYXMgcG9seSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcG9seS5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUG9seWdvbiBleHRlbmRzIFNoYXBlIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygncG9seWdvbicsIG5vZGUpLCBhdHRycylcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgYSB3cmFwcGVkIHBvbHlnb24gZWxlbWVudFxuICAgIHBvbHlnb246IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uIChwKSB7XG4gICAgICAvLyBtYWtlIHN1cmUgcGxvdCBpcyBjYWxsZWQgYXMgYSBzZXR0ZXJcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgUG9seWdvbigpKS5wbG90KHAgfHwgbmV3IFBvaW50QXJyYXkoKSlcbiAgICB9KVxuICB9XG59KVxuXG5leHRlbmQoUG9seWdvbiwgcG9pbnRlZClcbmV4dGVuZChQb2x5Z29uLCBwb2x5KVxucmVnaXN0ZXIoUG9seWdvbiwgJ1BvbHlnb24nKVxuIiwgImltcG9ydCB7XG4gIGV4dGVuZCxcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2tcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgUG9pbnRBcnJheSBmcm9tICcuLi90eXBlcy9Qb2ludEFycmF5LmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5pbXBvcnQgKiBhcyBwb2ludGVkIGZyb20gJy4uL21vZHVsZXMvY29yZS9wb2ludGVkLmpzJ1xuaW1wb3J0ICogYXMgcG9seSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcG9seS5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUG9seWxpbmUgZXh0ZW5kcyBTaGFwZSB7XG4gIC8vIEluaXRpYWxpemUgbm9kZVxuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3BvbHlsaW5lJywgbm9kZSksIGF0dHJzKVxuICB9XG59XG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBhIHdyYXBwZWQgcG9seWdvbiBlbGVtZW50XG4gICAgcG9seWxpbmU6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uIChwKSB7XG4gICAgICAvLyBtYWtlIHN1cmUgcGxvdCBpcyBjYWxsZWQgYXMgYSBzZXR0ZXJcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgUG9seWxpbmUoKSkucGxvdChwIHx8IG5ldyBQb2ludEFycmF5KCkpXG4gICAgfSlcbiAgfVxufSlcblxuZXh0ZW5kKFBvbHlsaW5lLCBwb2ludGVkKVxuZXh0ZW5kKFBvbHlsaW5lLCBwb2x5KVxucmVnaXN0ZXIoUG9seWxpbmUsICdQb2x5bGluZScpXG4iLCAiaW1wb3J0IHtcbiAgZXh0ZW5kLFxuICBub2RlT3JOZXcsXG4gIHJlZ2lzdGVyLFxuICB3cmFwV2l0aEF0dHJDaGVja1xufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IHJ4LCByeSB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9jaXJjbGVkLmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlY3QgZXh0ZW5kcyBTaGFwZSB7XG4gIC8vIEluaXRpYWxpemUgbm9kZVxuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3JlY3QnLCBub2RlKSwgYXR0cnMpXG4gIH1cbn1cblxuZXh0ZW5kKFJlY3QsIHsgcngsIHJ5IH0pXG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBhIHJlY3QgZWxlbWVudFxuICAgIHJlY3Q6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFJlY3QoKSkuc2l6ZSh3aWR0aCwgaGVpZ2h0KVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFJlY3QsICdSZWN0JylcbiIsICJleHBvcnQgZGVmYXVsdCBjbGFzcyBRdWV1ZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX2ZpcnN0ID0gbnVsbFxuICAgIHRoaXMuX2xhc3QgPSBudWxsXG4gIH1cblxuICAvLyBTaG93cyB1cyB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgbGlzdFxuICBmaXJzdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZmlyc3QgJiYgdGhpcy5fZmlyc3QudmFsdWVcbiAgfVxuXG4gIC8vIFNob3dzIHVzIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIGxpc3RcbiAgbGFzdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbGFzdCAmJiB0aGlzLl9sYXN0LnZhbHVlXG4gIH1cblxuICBwdXNoKHZhbHVlKSB7XG4gICAgLy8gQW4gaXRlbSBzdG9yZXMgYW4gaWQgYW5kIHRoZSBwcm92aWRlZCB2YWx1ZVxuICAgIGNvbnN0IGl0ZW0gPVxuICAgICAgdHlwZW9mIHZhbHVlLm5leHQgIT09ICd1bmRlZmluZWQnXG4gICAgICAgID8gdmFsdWVcbiAgICAgICAgOiB7IHZhbHVlOiB2YWx1ZSwgbmV4dDogbnVsbCwgcHJldjogbnVsbCB9XG5cbiAgICAvLyBEZWFsIHdpdGggdGhlIHF1ZXVlIGJlaW5nIGVtcHR5IG9yIHBvcHVsYXRlZFxuICAgIGlmICh0aGlzLl9sYXN0KSB7XG4gICAgICBpdGVtLnByZXYgPSB0aGlzLl9sYXN0XG4gICAgICB0aGlzLl9sYXN0Lm5leHQgPSBpdGVtXG4gICAgICB0aGlzLl9sYXN0ID0gaXRlbVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9sYXN0ID0gaXRlbVxuICAgICAgdGhpcy5fZmlyc3QgPSBpdGVtXG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIHRoZSBjdXJyZW50IGl0ZW1cbiAgICByZXR1cm4gaXRlbVxuICB9XG5cbiAgLy8gUmVtb3ZlcyB0aGUgaXRlbSB0aGF0IHdhcyByZXR1cm5lZCBmcm9tIHRoZSBwdXNoXG4gIHJlbW92ZShpdGVtKSB7XG4gICAgLy8gUmVsaW5rIHRoZSBwcmV2aW91cyBpdGVtXG4gICAgaWYgKGl0ZW0ucHJldikgaXRlbS5wcmV2Lm5leHQgPSBpdGVtLm5leHRcbiAgICBpZiAoaXRlbS5uZXh0KSBpdGVtLm5leHQucHJldiA9IGl0ZW0ucHJldlxuICAgIGlmIChpdGVtID09PSB0aGlzLl9sYXN0KSB0aGlzLl9sYXN0ID0gaXRlbS5wcmV2XG4gICAgaWYgKGl0ZW0gPT09IHRoaXMuX2ZpcnN0KSB0aGlzLl9maXJzdCA9IGl0ZW0ubmV4dFxuXG4gICAgLy8gSW52YWxpZGF0ZSBpdGVtXG4gICAgaXRlbS5wcmV2ID0gbnVsbFxuICAgIGl0ZW0ubmV4dCA9IG51bGxcbiAgfVxuXG4gIHNoaWZ0KCkge1xuICAgIC8vIENoZWNrIGlmIHdlIGhhdmUgYSB2YWx1ZVxuICAgIGNvbnN0IHJlbW92ZSA9IHRoaXMuX2ZpcnN0XG4gICAgaWYgKCFyZW1vdmUpIHJldHVybiBudWxsXG5cbiAgICAvLyBJZiB3ZSBkbywgcmVtb3ZlIGl0IGFuZCByZWxpbmsgdGhpbmdzXG4gICAgdGhpcy5fZmlyc3QgPSByZW1vdmUubmV4dFxuICAgIGlmICh0aGlzLl9maXJzdCkgdGhpcy5fZmlyc3QucHJldiA9IG51bGxcbiAgICB0aGlzLl9sYXN0ID0gdGhpcy5fZmlyc3QgPyB0aGlzLl9sYXN0IDogbnVsbFxuICAgIHJldHVybiByZW1vdmUudmFsdWVcbiAgfVxufVxuIiwgImltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgUXVldWUgZnJvbSAnLi9RdWV1ZS5qcydcblxuY29uc3QgQW5pbWF0b3IgPSB7XG4gIG5leHREcmF3OiBudWxsLFxuICBmcmFtZXM6IG5ldyBRdWV1ZSgpLFxuICB0aW1lb3V0czogbmV3IFF1ZXVlKCksXG4gIGltbWVkaWF0ZXM6IG5ldyBRdWV1ZSgpLFxuICB0aW1lcjogKCkgPT4gZ2xvYmFscy53aW5kb3cucGVyZm9ybWFuY2UgfHwgZ2xvYmFscy53aW5kb3cuRGF0ZSxcbiAgdHJhbnNmb3JtczogW10sXG5cbiAgZnJhbWUoZm4pIHtcbiAgICAvLyBTdG9yZSB0aGUgbm9kZVxuICAgIGNvbnN0IG5vZGUgPSBBbmltYXRvci5mcmFtZXMucHVzaCh7IHJ1bjogZm4gfSlcblxuICAgIC8vIFJlcXVlc3QgYW4gYW5pbWF0aW9uIGZyYW1lIGlmIHdlIGRvbid0IGhhdmUgb25lXG4gICAgaWYgKEFuaW1hdG9yLm5leHREcmF3ID09PSBudWxsKSB7XG4gICAgICBBbmltYXRvci5uZXh0RHJhdyA9IGdsb2JhbHMud2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShBbmltYXRvci5fZHJhdylcbiAgICB9XG5cbiAgICAvLyBSZXR1cm4gdGhlIG5vZGUgc28gd2UgY2FuIHJlbW92ZSBpdCBlYXNpbHlcbiAgICByZXR1cm4gbm9kZVxuICB9LFxuXG4gIHRpbWVvdXQoZm4sIGRlbGF5KSB7XG4gICAgZGVsYXkgPSBkZWxheSB8fCAwXG5cbiAgICAvLyBXb3JrIG91dCB3aGVuIHRoZSBldmVudCBzaG91bGQgZmlyZVxuICAgIGNvbnN0IHRpbWUgPSBBbmltYXRvci50aW1lcigpLm5vdygpICsgZGVsYXlcblxuICAgIC8vIEFkZCB0aGUgdGltZW91dCB0byB0aGUgZW5kIG9mIHRoZSBxdWV1ZVxuICAgIGNvbnN0IG5vZGUgPSBBbmltYXRvci50aW1lb3V0cy5wdXNoKHsgcnVuOiBmbiwgdGltZTogdGltZSB9KVxuXG4gICAgLy8gUmVxdWVzdCBhbm90aGVyIGFuaW1hdGlvbiBmcmFtZSBpZiB3ZSBuZWVkIG9uZVxuICAgIGlmIChBbmltYXRvci5uZXh0RHJhdyA9PT0gbnVsbCkge1xuICAgICAgQW5pbWF0b3IubmV4dERyYXcgPSBnbG9iYWxzLndpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoQW5pbWF0b3IuX2RyYXcpXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVcbiAgfSxcblxuICBpbW1lZGlhdGUoZm4pIHtcbiAgICAvLyBBZGQgdGhlIGltbWVkaWF0ZSBmbiB0byB0aGUgZW5kIG9mIHRoZSBxdWV1ZVxuICAgIGNvbnN0IG5vZGUgPSBBbmltYXRvci5pbW1lZGlhdGVzLnB1c2goZm4pXG4gICAgLy8gUmVxdWVzdCBhbm90aGVyIGFuaW1hdGlvbiBmcmFtZSBpZiB3ZSBuZWVkIG9uZVxuICAgIGlmIChBbmltYXRvci5uZXh0RHJhdyA9PT0gbnVsbCkge1xuICAgICAgQW5pbWF0b3IubmV4dERyYXcgPSBnbG9iYWxzLndpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoQW5pbWF0b3IuX2RyYXcpXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGVcbiAgfSxcblxuICBjYW5jZWxGcmFtZShub2RlKSB7XG4gICAgbm9kZSAhPSBudWxsICYmIEFuaW1hdG9yLmZyYW1lcy5yZW1vdmUobm9kZSlcbiAgfSxcblxuICBjbGVhclRpbWVvdXQobm9kZSkge1xuICAgIG5vZGUgIT0gbnVsbCAmJiBBbmltYXRvci50aW1lb3V0cy5yZW1vdmUobm9kZSlcbiAgfSxcblxuICBjYW5jZWxJbW1lZGlhdGUobm9kZSkge1xuICAgIG5vZGUgIT0gbnVsbCAmJiBBbmltYXRvci5pbW1lZGlhdGVzLnJlbW92ZShub2RlKVxuICB9LFxuXG4gIF9kcmF3KG5vdykge1xuICAgIC8vIFJ1biBhbGwgdGhlIHRpbWVvdXRzIHdlIGNhbiBydW4sIGlmIHRoZXkgYXJlIG5vdCByZWFkeSB5ZXQsIGFkZCB0aGVtXG4gICAgLy8gdG8gdGhlIGVuZCBvZiB0aGUgcXVldWUgaW1tZWRpYXRlbHkhIChiYWQgdGltZW91dHMhISEgW3NhcmNhc21dKVxuICAgIGxldCBuZXh0VGltZW91dCA9IG51bGxcbiAgICBjb25zdCBsYXN0VGltZW91dCA9IEFuaW1hdG9yLnRpbWVvdXRzLmxhc3QoKVxuICAgIHdoaWxlICgobmV4dFRpbWVvdXQgPSBBbmltYXRvci50aW1lb3V0cy5zaGlmdCgpKSkge1xuICAgICAgLy8gUnVuIHRoZSB0aW1lb3V0IGlmIGl0cyB0aW1lLCBvciBwdXNoIGl0IHRvIHRoZSBlbmRcbiAgICAgIGlmIChub3cgPj0gbmV4dFRpbWVvdXQudGltZSkge1xuICAgICAgICBuZXh0VGltZW91dC5ydW4oKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgQW5pbWF0b3IudGltZW91dHMucHVzaChuZXh0VGltZW91dClcbiAgICAgIH1cblxuICAgICAgLy8gSWYgd2UgaGl0IHRoZSBsYXN0IGl0ZW0sIHdlIHNob3VsZCBzdG9wIHNoaWZ0aW5nIG91dCBtb3JlIGl0ZW1zXG4gICAgICBpZiAobmV4dFRpbWVvdXQgPT09IGxhc3RUaW1lb3V0KSBicmVha1xuICAgIH1cblxuICAgIC8vIFJ1biBhbGwgb2YgdGhlIGFuaW1hdGlvbiBmcmFtZXNcbiAgICBsZXQgbmV4dEZyYW1lID0gbnVsbFxuICAgIGNvbnN0IGxhc3RGcmFtZSA9IEFuaW1hdG9yLmZyYW1lcy5sYXN0KClcbiAgICB3aGlsZSAobmV4dEZyYW1lICE9PSBsYXN0RnJhbWUgJiYgKG5leHRGcmFtZSA9IEFuaW1hdG9yLmZyYW1lcy5zaGlmdCgpKSkge1xuICAgICAgbmV4dEZyYW1lLnJ1bihub3cpXG4gICAgfVxuXG4gICAgbGV0IG5leHRJbW1lZGlhdGUgPSBudWxsXG4gICAgd2hpbGUgKChuZXh0SW1tZWRpYXRlID0gQW5pbWF0b3IuaW1tZWRpYXRlcy5zaGlmdCgpKSkge1xuICAgICAgbmV4dEltbWVkaWF0ZSgpXG4gICAgfVxuXG4gICAgLy8gSWYgd2UgaGF2ZSByZW1haW5pbmcgdGltZW91dHMgb3IgZnJhbWVzLCBkcmF3IHVudGlsIHdlIGRvbid0IGFueW1vcmVcbiAgICBBbmltYXRvci5uZXh0RHJhdyA9XG4gICAgICBBbmltYXRvci50aW1lb3V0cy5maXJzdCgpIHx8IEFuaW1hdG9yLmZyYW1lcy5maXJzdCgpXG4gICAgICAgID8gZ2xvYmFscy53aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKEFuaW1hdG9yLl9kcmF3KVxuICAgICAgICA6IG51bGxcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBBbmltYXRvclxuIiwgImltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IEFuaW1hdG9yIGZyb20gJy4vQW5pbWF0b3IuanMnXG5pbXBvcnQgRXZlbnRUYXJnZXQgZnJvbSAnLi4vdHlwZXMvRXZlbnRUYXJnZXQuanMnXG5cbmNvbnN0IG1ha2VTY2hlZHVsZSA9IGZ1bmN0aW9uIChydW5uZXJJbmZvKSB7XG4gIGNvbnN0IHN0YXJ0ID0gcnVubmVySW5mby5zdGFydFxuICBjb25zdCBkdXJhdGlvbiA9IHJ1bm5lckluZm8ucnVubmVyLmR1cmF0aW9uKClcbiAgY29uc3QgZW5kID0gc3RhcnQgKyBkdXJhdGlvblxuICByZXR1cm4ge1xuICAgIHN0YXJ0OiBzdGFydCxcbiAgICBkdXJhdGlvbjogZHVyYXRpb24sXG4gICAgZW5kOiBlbmQsXG4gICAgcnVubmVyOiBydW5uZXJJbmZvLnJ1bm5lclxuICB9XG59XG5cbmNvbnN0IGRlZmF1bHRTb3VyY2UgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHcgPSBnbG9iYWxzLndpbmRvd1xuICByZXR1cm4gKHcucGVyZm9ybWFuY2UgfHwgdy5EYXRlKS5ub3coKVxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUaW1lbGluZSBleHRlbmRzIEV2ZW50VGFyZ2V0IHtcbiAgLy8gQ29uc3RydWN0IGEgbmV3IHRpbWVsaW5lIG9uIHRoZSBnaXZlbiBlbGVtZW50XG4gIGNvbnN0cnVjdG9yKHRpbWVTb3VyY2UgPSBkZWZhdWx0U291cmNlKSB7XG4gICAgc3VwZXIoKVxuXG4gICAgdGhpcy5fdGltZVNvdXJjZSA9IHRpbWVTb3VyY2VcblxuICAgIC8vIHRlcm1pbmF0ZSByZXNldHMgYWxsIHZhcmlhYmxlcyB0byB0aGVpciBpbml0aWFsIHN0YXRlXG4gICAgdGhpcy50ZXJtaW5hdGUoKVxuICB9XG5cbiAgYWN0aXZlKCkge1xuICAgIHJldHVybiAhIXRoaXMuX25leHRGcmFtZVxuICB9XG5cbiAgZmluaXNoKCkge1xuICAgIC8vIEdvIHRvIGVuZCBhbmQgcGF1c2VcbiAgICB0aGlzLnRpbWUodGhpcy5nZXRFbmRUaW1lT2ZUaW1lbGluZSgpICsgMSlcbiAgICByZXR1cm4gdGhpcy5wYXVzZSgpXG4gIH1cblxuICAvLyBDYWxjdWxhdGVzIHRoZSBlbmQgb2YgdGhlIHRpbWVsaW5lXG4gIGdldEVuZFRpbWUoKSB7XG4gICAgY29uc3QgbGFzdFJ1bm5lckluZm8gPSB0aGlzLmdldExhc3RSdW5uZXJJbmZvKClcbiAgICBjb25zdCBsYXN0RHVyYXRpb24gPSBsYXN0UnVubmVySW5mbyA/IGxhc3RSdW5uZXJJbmZvLnJ1bm5lci5kdXJhdGlvbigpIDogMFxuICAgIGNvbnN0IGxhc3RTdGFydFRpbWUgPSBsYXN0UnVubmVySW5mbyA/IGxhc3RSdW5uZXJJbmZvLnN0YXJ0IDogdGhpcy5fdGltZVxuICAgIHJldHVybiBsYXN0U3RhcnRUaW1lICsgbGFzdER1cmF0aW9uXG4gIH1cblxuICBnZXRFbmRUaW1lT2ZUaW1lbGluZSgpIHtcbiAgICBjb25zdCBlbmRUaW1lcyA9IHRoaXMuX3J1bm5lcnMubWFwKChpKSA9PiBpLnN0YXJ0ICsgaS5ydW5uZXIuZHVyYXRpb24oKSlcbiAgICByZXR1cm4gTWF0aC5tYXgoMCwgLi4uZW5kVGltZXMpXG4gIH1cblxuICBnZXRMYXN0UnVubmVySW5mbygpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRSdW5uZXJJbmZvQnlJZCh0aGlzLl9sYXN0UnVubmVySWQpXG4gIH1cblxuICBnZXRSdW5uZXJJbmZvQnlJZChpZCkge1xuICAgIHJldHVybiB0aGlzLl9ydW5uZXJzW3RoaXMuX3J1bm5lcklkcy5pbmRleE9mKGlkKV0gfHwgbnVsbFxuICB9XG5cbiAgcGF1c2UoKSB7XG4gICAgdGhpcy5fcGF1c2VkID0gdHJ1ZVxuICAgIHJldHVybiB0aGlzLl9jb250aW51ZSgpXG4gIH1cblxuICBwZXJzaXN0KGR0T3JGb3JldmVyKSB7XG4gICAgaWYgKGR0T3JGb3JldmVyID09IG51bGwpIHJldHVybiB0aGlzLl9wZXJzaXN0XG4gICAgdGhpcy5fcGVyc2lzdCA9IGR0T3JGb3JldmVyXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHBsYXkoKSB7XG4gICAgLy8gTm93IG1ha2Ugc3VyZSB3ZSBhcmUgbm90IHBhdXNlZCBhbmQgY29udGludWUgdGhlIGFuaW1hdGlvblxuICAgIHRoaXMuX3BhdXNlZCA9IGZhbHNlXG4gICAgcmV0dXJuIHRoaXMudXBkYXRlVGltZSgpLl9jb250aW51ZSgpXG4gIH1cblxuICByZXZlcnNlKHllcykge1xuICAgIGNvbnN0IGN1cnJlbnRTcGVlZCA9IHRoaXMuc3BlZWQoKVxuICAgIGlmICh5ZXMgPT0gbnVsbCkgcmV0dXJuIHRoaXMuc3BlZWQoLWN1cnJlbnRTcGVlZClcblxuICAgIGNvbnN0IHBvc2l0aXZlID0gTWF0aC5hYnMoY3VycmVudFNwZWVkKVxuICAgIHJldHVybiB0aGlzLnNwZWVkKHllcyA/IC1wb3NpdGl2ZSA6IHBvc2l0aXZlKVxuICB9XG5cbiAgLy8gc2NoZWR1bGVzIGEgcnVubmVyIG9uIHRoZSB0aW1lbGluZVxuICBzY2hlZHVsZShydW5uZXIsIGRlbGF5LCB3aGVuKSB7XG4gICAgaWYgKHJ1bm5lciA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5fcnVubmVycy5tYXAobWFrZVNjaGVkdWxlKVxuICAgIH1cblxuICAgIC8vIFRoZSBzdGFydCB0aW1lIGZvciB0aGUgbmV4dCBhbmltYXRpb24gY2FuIGVpdGhlciBiZSBnaXZlbiBleHBsaWNpdGx5LFxuICAgIC8vIGRlcml2ZWQgZnJvbSB0aGUgY3VycmVudCB0aW1lbGluZSB0aW1lIG9yIGl0IGNhbiBiZSByZWxhdGl2ZSB0byB0aGVcbiAgICAvLyBsYXN0IHN0YXJ0IHRpbWUgdG8gY2hhaW4gYW5pbWF0aW9ucyBkaXJlY3RseVxuXG4gICAgbGV0IGFic29sdXRlU3RhcnRUaW1lID0gMFxuICAgIGNvbnN0IGVuZFRpbWUgPSB0aGlzLmdldEVuZFRpbWUoKVxuICAgIGRlbGF5ID0gZGVsYXkgfHwgMFxuXG4gICAgLy8gV29yayBvdXQgd2hlbiB0byBzdGFydCB0aGUgYW5pbWF0aW9uXG4gICAgaWYgKHdoZW4gPT0gbnVsbCB8fCB3aGVuID09PSAnbGFzdCcgfHwgd2hlbiA9PT0gJ2FmdGVyJykge1xuICAgICAgLy8gVGFrZSB0aGUgbGFzdCB0aW1lIGFuZCBpbmNyZW1lbnRcbiAgICAgIGFic29sdXRlU3RhcnRUaW1lID0gZW5kVGltZVxuICAgIH0gZWxzZSBpZiAod2hlbiA9PT0gJ2Fic29sdXRlJyB8fCB3aGVuID09PSAnc3RhcnQnKSB7XG4gICAgICBhYnNvbHV0ZVN0YXJ0VGltZSA9IGRlbGF5XG4gICAgICBkZWxheSA9IDBcbiAgICB9IGVsc2UgaWYgKHdoZW4gPT09ICdub3cnKSB7XG4gICAgICBhYnNvbHV0ZVN0YXJ0VGltZSA9IHRoaXMuX3RpbWVcbiAgICB9IGVsc2UgaWYgKHdoZW4gPT09ICdyZWxhdGl2ZScpIHtcbiAgICAgIGNvbnN0IHJ1bm5lckluZm8gPSB0aGlzLmdldFJ1bm5lckluZm9CeUlkKHJ1bm5lci5pZClcbiAgICAgIGlmIChydW5uZXJJbmZvKSB7XG4gICAgICAgIGFic29sdXRlU3RhcnRUaW1lID0gcnVubmVySW5mby5zdGFydCArIGRlbGF5XG4gICAgICAgIGRlbGF5ID0gMFxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAod2hlbiA9PT0gJ3dpdGgtbGFzdCcpIHtcbiAgICAgIGNvbnN0IGxhc3RSdW5uZXJJbmZvID0gdGhpcy5nZXRMYXN0UnVubmVySW5mbygpXG4gICAgICBjb25zdCBsYXN0U3RhcnRUaW1lID0gbGFzdFJ1bm5lckluZm8gPyBsYXN0UnVubmVySW5mby5zdGFydCA6IHRoaXMuX3RpbWVcbiAgICAgIGFic29sdXRlU3RhcnRUaW1lID0gbGFzdFN0YXJ0VGltZVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWUgZm9yIHRoZSBcIndoZW5cIiBwYXJhbWV0ZXInKVxuICAgIH1cblxuICAgIC8vIE1hbmFnZSBydW5uZXJcbiAgICBydW5uZXIudW5zY2hlZHVsZSgpXG4gICAgcnVubmVyLnRpbWVsaW5lKHRoaXMpXG5cbiAgICBjb25zdCBwZXJzaXN0ID0gcnVubmVyLnBlcnNpc3QoKVxuICAgIGNvbnN0IHJ1bm5lckluZm8gPSB7XG4gICAgICBwZXJzaXN0OiBwZXJzaXN0ID09PSBudWxsID8gdGhpcy5fcGVyc2lzdCA6IHBlcnNpc3QsXG4gICAgICBzdGFydDogYWJzb2x1dGVTdGFydFRpbWUgKyBkZWxheSxcbiAgICAgIHJ1bm5lclxuICAgIH1cblxuICAgIHRoaXMuX2xhc3RSdW5uZXJJZCA9IHJ1bm5lci5pZFxuXG4gICAgdGhpcy5fcnVubmVycy5wdXNoKHJ1bm5lckluZm8pXG4gICAgdGhpcy5fcnVubmVycy5zb3J0KChhLCBiKSA9PiBhLnN0YXJ0IC0gYi5zdGFydClcbiAgICB0aGlzLl9ydW5uZXJJZHMgPSB0aGlzLl9ydW5uZXJzLm1hcCgoaW5mbykgPT4gaW5mby5ydW5uZXIuaWQpXG5cbiAgICB0aGlzLnVwZGF0ZVRpbWUoKS5fY29udGludWUoKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBzZWVrKGR0KSB7XG4gICAgcmV0dXJuIHRoaXMudGltZSh0aGlzLl90aW1lICsgZHQpXG4gIH1cblxuICBzb3VyY2UoZm4pIHtcbiAgICBpZiAoZm4gPT0gbnVsbCkgcmV0dXJuIHRoaXMuX3RpbWVTb3VyY2VcbiAgICB0aGlzLl90aW1lU291cmNlID0gZm5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgc3BlZWQoc3BlZWQpIHtcbiAgICBpZiAoc3BlZWQgPT0gbnVsbCkgcmV0dXJuIHRoaXMuX3NwZWVkXG4gICAgdGhpcy5fc3BlZWQgPSBzcGVlZFxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBzdG9wKCkge1xuICAgIC8vIEdvIHRvIHN0YXJ0IGFuZCBwYXVzZVxuICAgIHRoaXMudGltZSgwKVxuICAgIHJldHVybiB0aGlzLnBhdXNlKClcbiAgfVxuXG4gIHRpbWUodGltZSkge1xuICAgIGlmICh0aW1lID09IG51bGwpIHJldHVybiB0aGlzLl90aW1lXG4gICAgdGhpcy5fdGltZSA9IHRpbWVcbiAgICByZXR1cm4gdGhpcy5fY29udGludWUodHJ1ZSlcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgcnVubmVyIGZyb20gdGhpcyB0aW1lbGluZVxuICB1bnNjaGVkdWxlKHJ1bm5lcikge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fcnVubmVySWRzLmluZGV4T2YocnVubmVyLmlkKVxuICAgIGlmIChpbmRleCA8IDApIHJldHVybiB0aGlzXG5cbiAgICB0aGlzLl9ydW5uZXJzLnNwbGljZShpbmRleCwgMSlcbiAgICB0aGlzLl9ydW5uZXJJZHMuc3BsaWNlKGluZGV4LCAxKVxuXG4gICAgcnVubmVyLnRpbWVsaW5lKG51bGwpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIE1ha2VzIHN1cmUsIHRoYXQgYWZ0ZXIgcGF1c2luZyB0aGUgdGltZSBkb2Vzbid0IGp1bXBcbiAgdXBkYXRlVGltZSgpIHtcbiAgICBpZiAoIXRoaXMuYWN0aXZlKCkpIHtcbiAgICAgIHRoaXMuX2xhc3RTb3VyY2VUaW1lID0gdGhpcy5fdGltZVNvdXJjZSgpXG4gICAgfVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBDaGVja3MgaWYgd2UgYXJlIHJ1bm5pbmcgYW5kIGNvbnRpbnVlcyB0aGUgYW5pbWF0aW9uXG4gIF9jb250aW51ZShpbW1lZGlhdGVTdGVwID0gZmFsc2UpIHtcbiAgICBBbmltYXRvci5jYW5jZWxGcmFtZSh0aGlzLl9uZXh0RnJhbWUpXG4gICAgdGhpcy5fbmV4dEZyYW1lID0gbnVsbFxuXG4gICAgaWYgKGltbWVkaWF0ZVN0ZXApIHJldHVybiB0aGlzLl9zdGVwSW1tZWRpYXRlKClcbiAgICBpZiAodGhpcy5fcGF1c2VkKSByZXR1cm4gdGhpc1xuXG4gICAgdGhpcy5fbmV4dEZyYW1lID0gQW5pbWF0b3IuZnJhbWUodGhpcy5fc3RlcClcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgX3N0ZXBGbihpbW1lZGlhdGVTdGVwID0gZmFsc2UpIHtcbiAgICAvLyBHZXQgdGhlIHRpbWUgZGVsdGEgZnJvbSB0aGUgbGFzdCB0aW1lIGFuZCB1cGRhdGUgdGhlIHRpbWVcbiAgICBjb25zdCB0aW1lID0gdGhpcy5fdGltZVNvdXJjZSgpXG4gICAgbGV0IGR0U291cmNlID0gdGltZSAtIHRoaXMuX2xhc3RTb3VyY2VUaW1lXG5cbiAgICBpZiAoaW1tZWRpYXRlU3RlcCkgZHRTb3VyY2UgPSAwXG5cbiAgICBjb25zdCBkdFRpbWUgPSB0aGlzLl9zcGVlZCAqIGR0U291cmNlICsgKHRoaXMuX3RpbWUgLSB0aGlzLl9sYXN0U3RlcFRpbWUpXG4gICAgdGhpcy5fbGFzdFNvdXJjZVRpbWUgPSB0aW1lXG5cbiAgICAvLyBPbmx5IHVwZGF0ZSB0aGUgdGltZSBpZiB3ZSB1c2UgdGhlIHRpbWVTb3VyY2UuXG4gICAgLy8gT3RoZXJ3aXNlIHVzZSB0aGUgY3VycmVudCB0aW1lXG4gICAgaWYgKCFpbW1lZGlhdGVTdGVwKSB7XG4gICAgICAvLyBVcGRhdGUgdGhlIHRpbWVcbiAgICAgIHRoaXMuX3RpbWUgKz0gZHRUaW1lXG4gICAgICB0aGlzLl90aW1lID0gdGhpcy5fdGltZSA8IDAgPyAwIDogdGhpcy5fdGltZVxuICAgIH1cbiAgICB0aGlzLl9sYXN0U3RlcFRpbWUgPSB0aGlzLl90aW1lXG4gICAgdGhpcy5maXJlKCd0aW1lJywgdGhpcy5fdGltZSlcblxuICAgIC8vIFRoaXMgaXMgZm9yIHRoZSBjYXNlIHRoYXQgdGhlIHRpbWVsaW5lIHdhcyBzZWVrZWQgc28gdGhhdCB0aGUgdGltZVxuICAgIC8vIGlzIG5vdyBiZWZvcmUgdGhlIHN0YXJ0VGltZSBvZiB0aGUgcnVubmVyLiBUaGF0IGlzIHdoeSB3ZSBuZWVkIHRvIHNldFxuICAgIC8vIHRoZSBydW5uZXIgdG8gcG9zaXRpb24gMFxuXG4gICAgLy8gRklYTUU6XG4gICAgLy8gSG93ZXZlciwgcmVzZXR0aW5nIGluIGluc2VydGlvbiBvcmRlciBsZWFkcyB0byBidWdzLiBDb25zaWRlcmluZyB0aGUgY2FzZSxcbiAgICAvLyB3aGVyZSAyIHJ1bm5lcnMgY2hhbmdlIHRoZSBzYW1lIGF0dHJpYnV0ZSBidXQgaW4gZGlmZmVyZW50IHRpbWVzLFxuICAgIC8vIHJlc2V0dGluZyBib3RoIG9mIHRoZW0gd2lsbCBsZWFkIHRvIHRoZSBjYXNlIHdoZXJlIHRoZSBsYXRlciBkZWZpbmVkXG4gICAgLy8gcnVubmVyIGFsd2F5cyB3aW5zIHRoZSByZXNldCBldmVuIGlmIHRoZSBvdGhlciBydW5uZXIgc3RhcnRlZCBlYXJsaWVyXG4gICAgLy8gYW5kIHRoZXJlZm9yZSBzaG91bGQgd2luIHRoZSBhdHRyaWJ1dGUgYmF0dGxlXG4gICAgLy8gdGhpcyBjYW4gYmUgc29sdmVkIGJ5IHJlc2V0dGluZyB0aGVtIGJhY2t3YXJkc1xuICAgIGZvciAobGV0IGsgPSB0aGlzLl9ydW5uZXJzLmxlbmd0aDsgay0tOyApIHtcbiAgICAgIC8vIEdldCBhbmQgcnVuIHRoZSBjdXJyZW50IHJ1bm5lciBhbmQgaWdub3JlIGl0IGlmIGl0cyBpbmFjdGl2ZVxuICAgICAgY29uc3QgcnVubmVySW5mbyA9IHRoaXMuX3J1bm5lcnNba11cbiAgICAgIGNvbnN0IHJ1bm5lciA9IHJ1bm5lckluZm8ucnVubmVyXG5cbiAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHdlIGdpdmUgdGhlIGFjdHVhbCBkaWZmZXJlbmNlXG4gICAgICAvLyBiZXR3ZWVuIHJ1bm5lciBzdGFydCB0aW1lIGFuZCBub3dcbiAgICAgIGNvbnN0IGR0VG9TdGFydCA9IHRoaXMuX3RpbWUgLSBydW5uZXJJbmZvLnN0YXJ0XG5cbiAgICAgIC8vIERvbnQgcnVuIHJ1bm5lciBpZiBub3Qgc3RhcnRlZCB5ZXRcbiAgICAgIC8vIGFuZCB0cnkgdG8gcmVzZXQgaXRcbiAgICAgIGlmIChkdFRvU3RhcnQgPD0gMCkge1xuICAgICAgICBydW5uZXIucmVzZXQoKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJ1biBhbGwgb2YgdGhlIHJ1bm5lcnMgZGlyZWN0bHlcbiAgICBsZXQgcnVubmVyc0xlZnQgPSBmYWxzZVxuICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLl9ydW5uZXJzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAvLyBHZXQgYW5kIHJ1biB0aGUgY3VycmVudCBydW5uZXIgYW5kIGlnbm9yZSBpdCBpZiBpdHMgaW5hY3RpdmVcbiAgICAgIGNvbnN0IHJ1bm5lckluZm8gPSB0aGlzLl9ydW5uZXJzW2ldXG4gICAgICBjb25zdCBydW5uZXIgPSBydW5uZXJJbmZvLnJ1bm5lclxuICAgICAgbGV0IGR0ID0gZHRUaW1lXG5cbiAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHdlIGdpdmUgdGhlIGFjdHVhbCBkaWZmZXJlbmNlXG4gICAgICAvLyBiZXR3ZWVuIHJ1bm5lciBzdGFydCB0aW1lIGFuZCBub3dcbiAgICAgIGNvbnN0IGR0VG9TdGFydCA9IHRoaXMuX3RpbWUgLSBydW5uZXJJbmZvLnN0YXJ0XG5cbiAgICAgIC8vIERvbnQgcnVuIHJ1bm5lciBpZiBub3Qgc3RhcnRlZCB5ZXRcbiAgICAgIGlmIChkdFRvU3RhcnQgPD0gMCkge1xuICAgICAgICBydW5uZXJzTGVmdCA9IHRydWVcbiAgICAgICAgY29udGludWVcbiAgICAgIH0gZWxzZSBpZiAoZHRUb1N0YXJ0IDwgZHQpIHtcbiAgICAgICAgLy8gQWRqdXN0IGR0IHRvIG1ha2Ugc3VyZSB0aGF0IGFuaW1hdGlvbiBpcyBvbiBwb2ludFxuICAgICAgICBkdCA9IGR0VG9TdGFydFxuICAgICAgfVxuXG4gICAgICBpZiAoIXJ1bm5lci5hY3RpdmUoKSkgY29udGludWVcblxuICAgICAgLy8gSWYgdGhpcyBydW5uZXIgaXMgc3RpbGwgZ29pbmcsIHNpZ25hbCB0aGF0IHdlIG5lZWQgYW5vdGhlciBhbmltYXRpb25cbiAgICAgIC8vIGZyYW1lLCBvdGhlcndpc2UsIHJlbW92ZSB0aGUgY29tcGxldGVkIHJ1bm5lclxuICAgICAgY29uc3QgZmluaXNoZWQgPSBydW5uZXIuc3RlcChkdCkuZG9uZVxuICAgICAgaWYgKCFmaW5pc2hlZCkge1xuICAgICAgICBydW5uZXJzTGVmdCA9IHRydWVcbiAgICAgICAgLy8gY29udGludWVcbiAgICAgIH0gZWxzZSBpZiAocnVubmVySW5mby5wZXJzaXN0ICE9PSB0cnVlKSB7XG4gICAgICAgIC8vIHJ1bm5lciBpcyBmaW5pc2hlZC4gQW5kIHJ1bm5lciBtaWdodCBnZXQgcmVtb3ZlZFxuICAgICAgICBjb25zdCBlbmRUaW1lID0gcnVubmVyLmR1cmF0aW9uKCkgLSBydW5uZXIudGltZSgpICsgdGhpcy5fdGltZVxuXG4gICAgICAgIGlmIChlbmRUaW1lICsgcnVubmVySW5mby5wZXJzaXN0IDwgdGhpcy5fdGltZSkge1xuICAgICAgICAgIC8vIERlbGV0ZSBydW5uZXIgYW5kIGNvcnJlY3QgaW5kZXhcbiAgICAgICAgICBydW5uZXIudW5zY2hlZHVsZSgpXG4gICAgICAgICAgLS1pXG4gICAgICAgICAgLS1sZW5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJhc2ljYWxseTogd2UgY29udGludWUgd2hlbiB0aGVyZSBhcmUgcnVubmVycyByaWdodCBmcm9tIHVzIGluIHRpbWVcbiAgICAvLyB3aGVuIC0tPiwgYW5kIHdoZW4gcnVubmVycyBhcmUgbGVmdCBmcm9tIHVzIHdoZW4gPC0tXG4gICAgaWYgKFxuICAgICAgKHJ1bm5lcnNMZWZ0ICYmICEodGhpcy5fc3BlZWQgPCAwICYmIHRoaXMuX3RpbWUgPT09IDApKSB8fFxuICAgICAgKHRoaXMuX3J1bm5lcklkcy5sZW5ndGggJiYgdGhpcy5fc3BlZWQgPCAwICYmIHRoaXMuX3RpbWUgPiAwKVxuICAgICkge1xuICAgICAgdGhpcy5fY29udGludWUoKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhdXNlKClcbiAgICAgIHRoaXMuZmlyZSgnZmluaXNoZWQnKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB0ZXJtaW5hdGUoKSB7XG4gICAgLy8gY2xlYW51cCBtZW1vcnlcblxuICAgIC8vIFN0b3JlIHRoZSB0aW1pbmcgdmFyaWFibGVzXG4gICAgdGhpcy5fc3RhcnRUaW1lID0gMFxuICAgIHRoaXMuX3NwZWVkID0gMS4wXG5cbiAgICAvLyBEZXRlcm1pbmVzIGhvdyBsb25nIGEgcnVubmVyIGlzIGhvbGQgaW4gbWVtb3J5LiBDYW4gYmUgYSBkdCBvciB0cnVlL2ZhbHNlXG4gICAgdGhpcy5fcGVyc2lzdCA9IDBcblxuICAgIC8vIEtlZXAgdHJhY2sgb2YgdGhlIHJ1bm5pbmcgYW5pbWF0aW9ucyBhbmQgdGhlaXIgc3RhcnRpbmcgcGFyYW1ldGVyc1xuICAgIHRoaXMuX25leHRGcmFtZSA9IG51bGxcbiAgICB0aGlzLl9wYXVzZWQgPSB0cnVlXG4gICAgdGhpcy5fcnVubmVycyA9IFtdXG4gICAgdGhpcy5fcnVubmVySWRzID0gW11cbiAgICB0aGlzLl9sYXN0UnVubmVySWQgPSAtMVxuICAgIHRoaXMuX3RpbWUgPSAwXG4gICAgdGhpcy5fbGFzdFNvdXJjZVRpbWUgPSAwXG4gICAgdGhpcy5fbGFzdFN0ZXBUaW1lID0gMFxuXG4gICAgLy8gTWFrZSBzdXJlIHRoYXQgc3RlcCBpcyBhbHdheXMgY2FsbGVkIGluIGNsYXNzIGNvbnRleHRcbiAgICB0aGlzLl9zdGVwID0gdGhpcy5fc3RlcEZuLmJpbmQodGhpcywgZmFsc2UpXG4gICAgdGhpcy5fc3RlcEltbWVkaWF0ZSA9IHRoaXMuX3N0ZXBGbi5iaW5kKHRoaXMsIHRydWUpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgRWxlbWVudDoge1xuICAgIHRpbWVsaW5lOiBmdW5jdGlvbiAodGltZWxpbmUpIHtcbiAgICAgIGlmICh0aW1lbGluZSA9PSBudWxsKSB7XG4gICAgICAgIHRoaXMuX3RpbWVsaW5lID0gdGhpcy5fdGltZWxpbmUgfHwgbmV3IFRpbWVsaW5lKClcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RpbWVsaW5lXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl90aW1lbGluZSA9IHRpbWVsaW5lXG4gICAgICAgIHJldHVybiB0aGlzXG4gICAgICB9XG4gICAgfVxuICB9XG59KVxuIiwgImltcG9ydCB7IENvbnRyb2xsZXIsIEVhc2UsIFN0ZXBwZXIgfSBmcm9tICcuL0NvbnRyb2xsZXIuanMnXG5pbXBvcnQgeyBleHRlbmQsIHJlZ2lzdGVyIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IGZyb20sIHRvIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2dyYWRpZW50ZWQuanMnXG5pbXBvcnQgeyBnZXRPcmlnaW4gfSBmcm9tICcuLi91dGlscy91dGlscy5qcydcbmltcG9ydCB7IG5vb3AsIHRpbWVsaW5lIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2RlZmF1bHRzLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IHJ4LCByeSB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9jaXJjbGVkLmpzJ1xuaW1wb3J0IEFuaW1hdG9yIGZyb20gJy4vQW5pbWF0b3IuanMnXG5pbXBvcnQgQm94IGZyb20gJy4uL3R5cGVzL0JveC5qcydcbmltcG9ydCBFdmVudFRhcmdldCBmcm9tICcuLi90eXBlcy9FdmVudFRhcmdldC5qcydcbmltcG9ydCBNYXRyaXggZnJvbSAnLi4vdHlwZXMvTWF0cml4LmpzJ1xuaW1wb3J0IE1vcnBoYWJsZSwgeyBUcmFuc2Zvcm1CYWcsIE9iamVjdEJhZyB9IGZyb20gJy4vTW9ycGhhYmxlLmpzJ1xuaW1wb3J0IFBvaW50IGZyb20gJy4uL3R5cGVzL1BvaW50LmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi90eXBlcy9TVkdOdW1iZXIuanMnXG5pbXBvcnQgVGltZWxpbmUgZnJvbSAnLi9UaW1lbGluZS5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUnVubmVyIGV4dGVuZHMgRXZlbnRUYXJnZXQge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7XG4gICAgc3VwZXIoKVxuXG4gICAgLy8gU3RvcmUgYSB1bmlxdWUgaWQgb24gdGhlIHJ1bm5lciwgc28gdGhhdCB3ZSBjYW4gaWRlbnRpZnkgaXQgbGF0ZXJcbiAgICB0aGlzLmlkID0gUnVubmVyLmlkKytcblxuICAgIC8vIEVuc3VyZSBhIGRlZmF1bHQgdmFsdWVcbiAgICBvcHRpb25zID0gb3B0aW9ucyA9PSBudWxsID8gdGltZWxpbmUuZHVyYXRpb24gOiBvcHRpb25zXG5cbiAgICAvLyBFbnN1cmUgdGhhdCB3ZSBnZXQgYSBjb250cm9sbGVyXG4gICAgb3B0aW9ucyA9IHR5cGVvZiBvcHRpb25zID09PSAnZnVuY3Rpb24nID8gbmV3IENvbnRyb2xsZXIob3B0aW9ucykgOiBvcHRpb25zXG5cbiAgICAvLyBEZWNsYXJlIGFsbCBvZiB0aGUgdmFyaWFibGVzXG4gICAgdGhpcy5fZWxlbWVudCA9IG51bGxcbiAgICB0aGlzLl90aW1lbGluZSA9IG51bGxcbiAgICB0aGlzLmRvbmUgPSBmYWxzZVxuICAgIHRoaXMuX3F1ZXVlID0gW11cblxuICAgIC8vIFdvcmsgb3V0IHRoZSBzdGVwcGVyIGFuZCB0aGUgZHVyYXRpb25cbiAgICB0aGlzLl9kdXJhdGlvbiA9IHR5cGVvZiBvcHRpb25zID09PSAnbnVtYmVyJyAmJiBvcHRpb25zXG4gICAgdGhpcy5faXNEZWNsYXJhdGl2ZSA9IG9wdGlvbnMgaW5zdGFuY2VvZiBDb250cm9sbGVyXG4gICAgdGhpcy5fc3RlcHBlciA9IHRoaXMuX2lzRGVjbGFyYXRpdmUgPyBvcHRpb25zIDogbmV3IEVhc2UoKVxuXG4gICAgLy8gV2UgY29weSB0aGUgY3VycmVudCB2YWx1ZXMgZnJvbSB0aGUgdGltZWxpbmUgYmVjYXVzZSB0aGV5IGNhbiBjaGFuZ2VcbiAgICB0aGlzLl9oaXN0b3J5ID0ge31cblxuICAgIC8vIFN0b3JlIHRoZSBzdGF0ZSBvZiB0aGUgcnVubmVyXG4gICAgdGhpcy5lbmFibGVkID0gdHJ1ZVxuICAgIHRoaXMuX3RpbWUgPSAwXG4gICAgdGhpcy5fbGFzdFRpbWUgPSAwXG5cbiAgICAvLyBBdCBjcmVhdGlvbiwgdGhlIHJ1bm5lciBpcyBpbiByZXNldCBzdGF0ZVxuICAgIHRoaXMuX3Jlc2V0ZWQgPSB0cnVlXG5cbiAgICAvLyBTYXZlIHRyYW5zZm9ybXMgYXBwbGllZCB0byB0aGlzIHJ1bm5lclxuICAgIHRoaXMudHJhbnNmb3JtcyA9IG5ldyBNYXRyaXgoKVxuICAgIHRoaXMudHJhbnNmb3JtSWQgPSAxXG5cbiAgICAvLyBMb29waW5nIHZhcmlhYmxlc1xuICAgIHRoaXMuX2hhdmVSZXZlcnNlZCA9IGZhbHNlXG4gICAgdGhpcy5fcmV2ZXJzZSA9IGZhbHNlXG4gICAgdGhpcy5fbG9vcHNEb25lID0gMFxuICAgIHRoaXMuX3N3aW5nID0gZmFsc2VcbiAgICB0aGlzLl93YWl0ID0gMFxuICAgIHRoaXMuX3RpbWVzID0gMVxuXG4gICAgdGhpcy5fZnJhbWVJZCA9IG51bGxcblxuICAgIC8vIFN0b3JlcyBob3cgbG9uZyBhIHJ1bm5lciBpcyBzdG9yZWQgYWZ0ZXIgYmVpbmcgZG9uZVxuICAgIHRoaXMuX3BlcnNpc3QgPSB0aGlzLl9pc0RlY2xhcmF0aXZlID8gdHJ1ZSA6IG51bGxcbiAgfVxuXG4gIHN0YXRpYyBzYW5pdGlzZShkdXJhdGlvbiwgZGVsYXksIHdoZW4pIHtcbiAgICAvLyBJbml0aWFsaXNlIHRoZSBkZWZhdWx0IHBhcmFtZXRlcnNcbiAgICBsZXQgdGltZXMgPSAxXG4gICAgbGV0IHN3aW5nID0gZmFsc2VcbiAgICBsZXQgd2FpdCA9IDBcbiAgICBkdXJhdGlvbiA9IGR1cmF0aW9uID8/IHRpbWVsaW5lLmR1cmF0aW9uXG4gICAgZGVsYXkgPSBkZWxheSA/PyB0aW1lbGluZS5kZWxheVxuICAgIHdoZW4gPSB3aGVuIHx8ICdsYXN0J1xuXG4gICAgLy8gSWYgd2UgaGF2ZSBhbiBvYmplY3QsIHVucGFjayB0aGUgdmFsdWVzXG4gICAgaWYgKHR5cGVvZiBkdXJhdGlvbiA9PT0gJ29iamVjdCcgJiYgIShkdXJhdGlvbiBpbnN0YW5jZW9mIFN0ZXBwZXIpKSB7XG4gICAgICBkZWxheSA9IGR1cmF0aW9uLmRlbGF5ID8/IGRlbGF5XG4gICAgICB3aGVuID0gZHVyYXRpb24ud2hlbiA/PyB3aGVuXG4gICAgICBzd2luZyA9IGR1cmF0aW9uLnN3aW5nIHx8IHN3aW5nXG4gICAgICB0aW1lcyA9IGR1cmF0aW9uLnRpbWVzID8/IHRpbWVzXG4gICAgICB3YWl0ID0gZHVyYXRpb24ud2FpdCA/PyB3YWl0XG4gICAgICBkdXJhdGlvbiA9IGR1cmF0aW9uLmR1cmF0aW9uID8/IHRpbWVsaW5lLmR1cmF0aW9uXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGR1cmF0aW9uOiBkdXJhdGlvbixcbiAgICAgIGRlbGF5OiBkZWxheSxcbiAgICAgIHN3aW5nOiBzd2luZyxcbiAgICAgIHRpbWVzOiB0aW1lcyxcbiAgICAgIHdhaXQ6IHdhaXQsXG4gICAgICB3aGVuOiB3aGVuXG4gICAgfVxuICB9XG5cbiAgYWN0aXZlKGVuYWJsZWQpIHtcbiAgICBpZiAoZW5hYmxlZCA9PSBudWxsKSByZXR1cm4gdGhpcy5lbmFibGVkXG4gICAgdGhpcy5lbmFibGVkID0gZW5hYmxlZFxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKlxuICBQcml2YXRlIE1ldGhvZHNcbiAgPT09PT09PT09PT09PT09XG4gIE1ldGhvZHMgdGhhdCBzaG91bGRuJ3QgYmUgdXNlZCBleHRlcm5hbGx5XG4gICovXG4gIGFkZFRyYW5zZm9ybSh0cmFuc2Zvcm0pIHtcbiAgICB0aGlzLnRyYW5zZm9ybXMubG11bHRpcGx5Tyh0cmFuc2Zvcm0pXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGFmdGVyKGZuKSB7XG4gICAgcmV0dXJuIHRoaXMub24oJ2ZpbmlzaGVkJywgZm4pXG4gIH1cblxuICBhbmltYXRlKGR1cmF0aW9uLCBkZWxheSwgd2hlbikge1xuICAgIGNvbnN0IG8gPSBSdW5uZXIuc2FuaXRpc2UoZHVyYXRpb24sIGRlbGF5LCB3aGVuKVxuICAgIGNvbnN0IHJ1bm5lciA9IG5ldyBSdW5uZXIoby5kdXJhdGlvbilcbiAgICBpZiAodGhpcy5fdGltZWxpbmUpIHJ1bm5lci50aW1lbGluZSh0aGlzLl90aW1lbGluZSlcbiAgICBpZiAodGhpcy5fZWxlbWVudCkgcnVubmVyLmVsZW1lbnQodGhpcy5fZWxlbWVudClcbiAgICByZXR1cm4gcnVubmVyLmxvb3Aobykuc2NoZWR1bGUoby5kZWxheSwgby53aGVuKVxuICB9XG5cbiAgY2xlYXJUcmFuc2Zvcm0oKSB7XG4gICAgdGhpcy50cmFuc2Zvcm1zID0gbmV3IE1hdHJpeCgpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFRPRE86IEtlZXAgdHJhY2sgb2YgYWxsIHRyYW5zZm9ybWF0aW9ucyBzbyB0aGF0IGRlbGV0aW9uIGlzIGZhc3RlclxuICBjbGVhclRyYW5zZm9ybXNGcm9tUXVldWUoKSB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuZG9uZSB8fFxuICAgICAgIXRoaXMuX3RpbWVsaW5lIHx8XG4gICAgICAhdGhpcy5fdGltZWxpbmUuX3J1bm5lcklkcy5pbmNsdWRlcyh0aGlzLmlkKVxuICAgICkge1xuICAgICAgdGhpcy5fcXVldWUgPSB0aGlzLl9xdWV1ZS5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgcmV0dXJuICFpdGVtLmlzVHJhbnNmb3JtXG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIGRlbGF5KGRlbGF5KSB7XG4gICAgcmV0dXJuIHRoaXMuYW5pbWF0ZSgwLCBkZWxheSlcbiAgfVxuXG4gIGR1cmF0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLl90aW1lcyAqICh0aGlzLl93YWl0ICsgdGhpcy5fZHVyYXRpb24pIC0gdGhpcy5fd2FpdFxuICB9XG5cbiAgZHVyaW5nKGZuKSB7XG4gICAgcmV0dXJuIHRoaXMucXVldWUobnVsbCwgZm4pXG4gIH1cblxuICBlYXNlKGZuKSB7XG4gICAgdGhpcy5fc3RlcHBlciA9IG5ldyBFYXNlKGZuKVxuICAgIHJldHVybiB0aGlzXG4gIH1cbiAgLypcbiAgUnVubmVyIERlZmluaXRpb25zXG4gID09PT09PT09PT09PT09PT09PVxuICBUaGVzZSBtZXRob2RzIGhlbHAgdXMgZGVmaW5lIHRoZSBydW50aW1lIGJlaGF2aW91ciBvZiB0aGUgUnVubmVyIG9yIHRoZXlcbiAgaGVscCB1cyBtYWtlIG5ldyBydW5uZXJzIGZyb20gdGhlIGN1cnJlbnQgcnVubmVyXG4gICovXG5cbiAgZWxlbWVudChlbGVtZW50KSB7XG4gICAgaWYgKGVsZW1lbnQgPT0gbnVsbCkgcmV0dXJuIHRoaXMuX2VsZW1lbnRcbiAgICB0aGlzLl9lbGVtZW50ID0gZWxlbWVudFxuICAgIGVsZW1lbnQuX3ByZXBhcmVSdW5uZXIoKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBmaW5pc2goKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RlcChJbmZpbml0eSlcbiAgfVxuXG4gIGxvb3AodGltZXMsIHN3aW5nLCB3YWl0KSB7XG4gICAgLy8gRGVhbCB3aXRoIHRoZSB1c2VyIHBhc3NpbmcgaW4gYW4gb2JqZWN0XG4gICAgaWYgKHR5cGVvZiB0aW1lcyA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHN3aW5nID0gdGltZXMuc3dpbmdcbiAgICAgIHdhaXQgPSB0aW1lcy53YWl0XG4gICAgICB0aW1lcyA9IHRpbWVzLnRpbWVzXG4gICAgfVxuXG4gICAgLy8gU2FuaXRpc2UgdGhlIHZhbHVlcyBhbmQgc3RvcmUgdGhlbVxuICAgIHRoaXMuX3RpbWVzID0gdGltZXMgfHwgSW5maW5pdHlcbiAgICB0aGlzLl9zd2luZyA9IHN3aW5nIHx8IGZhbHNlXG4gICAgdGhpcy5fd2FpdCA9IHdhaXQgfHwgMFxuXG4gICAgLy8gQWxsb3cgdHJ1ZSB0byBiZSBwYXNzZWRcbiAgICBpZiAodGhpcy5fdGltZXMgPT09IHRydWUpIHtcbiAgICAgIHRoaXMuX3RpbWVzID0gSW5maW5pdHlcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgbG9vcHMocCkge1xuICAgIGNvbnN0IGxvb3BEdXJhdGlvbiA9IHRoaXMuX2R1cmF0aW9uICsgdGhpcy5fd2FpdFxuICAgIGlmIChwID09IG51bGwpIHtcbiAgICAgIGNvbnN0IGxvb3BzRG9uZSA9IE1hdGguZmxvb3IodGhpcy5fdGltZSAvIGxvb3BEdXJhdGlvbilcbiAgICAgIGNvbnN0IHJlbGF0aXZlVGltZSA9IHRoaXMuX3RpbWUgLSBsb29wc0RvbmUgKiBsb29wRHVyYXRpb25cbiAgICAgIGNvbnN0IHBvc2l0aW9uID0gcmVsYXRpdmVUaW1lIC8gdGhpcy5fZHVyYXRpb25cbiAgICAgIHJldHVybiBNYXRoLm1pbihsb29wc0RvbmUgKyBwb3NpdGlvbiwgdGhpcy5fdGltZXMpXG4gICAgfVxuICAgIGNvbnN0IHdob2xlID0gTWF0aC5mbG9vcihwKVxuICAgIGNvbnN0IHBhcnRpYWwgPSBwICUgMVxuICAgIGNvbnN0IHRpbWUgPSBsb29wRHVyYXRpb24gKiB3aG9sZSArIHRoaXMuX2R1cmF0aW9uICogcGFydGlhbFxuICAgIHJldHVybiB0aGlzLnRpbWUodGltZSlcbiAgfVxuXG4gIHBlcnNpc3QoZHRPckZvcmV2ZXIpIHtcbiAgICBpZiAoZHRPckZvcmV2ZXIgPT0gbnVsbCkgcmV0dXJuIHRoaXMuX3BlcnNpc3RcbiAgICB0aGlzLl9wZXJzaXN0ID0gZHRPckZvcmV2ZXJcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgcG9zaXRpb24ocCkge1xuICAgIC8vIEdldCBhbGwgb2YgdGhlIHZhcmlhYmxlcyB3ZSBuZWVkXG4gICAgY29uc3QgeCA9IHRoaXMuX3RpbWVcbiAgICBjb25zdCBkID0gdGhpcy5fZHVyYXRpb25cbiAgICBjb25zdCB3ID0gdGhpcy5fd2FpdFxuICAgIGNvbnN0IHQgPSB0aGlzLl90aW1lc1xuICAgIGNvbnN0IHMgPSB0aGlzLl9zd2luZ1xuICAgIGNvbnN0IHIgPSB0aGlzLl9yZXZlcnNlXG4gICAgbGV0IHBvc2l0aW9uXG5cbiAgICBpZiAocCA9PSBudWxsKSB7XG4gICAgICAvKlxuICAgICAgVGhpcyBmdW5jdGlvbiBjb252ZXJ0cyBhIHRpbWUgdG8gYSBwb3NpdGlvbiBpbiB0aGUgcmFuZ2UgWzAsIDFdXG4gICAgICBUaGUgZnVsbCBleHBsYW5hdGlvbiBjYW4gYmUgZm91bmQgaW4gdGhpcyBkZXNtb3MgZGVtb25zdHJhdGlvblxuICAgICAgICBodHRwczovL3d3dy5kZXNtb3MuY29tL2NhbGN1bGF0b3IvdTRmYmF2Z2NoZVxuICAgICAgVGhlIGxvZ2ljIGlzIHNsaWdodGx5IHNpbXBsaWZpZWQgaGVyZSBiZWNhdXNlIHdlIGNhbiB1c2UgYm9vbGVhbnNcbiAgICAgICovXG5cbiAgICAgIC8vIEZpZ3VyZSBvdXQgdGhlIHZhbHVlIHdpdGhvdXQgdGhpbmtpbmcgYWJvdXQgdGhlIHN0YXJ0IG9yIGVuZCB0aW1lXG4gICAgICBjb25zdCBmID0gZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgY29uc3Qgc3dpbmdpbmcgPSBzICogTWF0aC5mbG9vcigoeCAlICgyICogKHcgKyBkKSkpIC8gKHcgKyBkKSlcbiAgICAgICAgY29uc3QgYmFja3dhcmRzID0gKHN3aW5naW5nICYmICFyKSB8fCAoIXN3aW5naW5nICYmIHIpXG4gICAgICAgIGNvbnN0IHVuY2xpcGVkID1cbiAgICAgICAgICAoTWF0aC5wb3coLTEsIGJhY2t3YXJkcykgKiAoeCAlICh3ICsgZCkpKSAvIGQgKyBiYWNrd2FyZHNcbiAgICAgICAgY29uc3QgY2xpcHBlZCA9IE1hdGgubWF4KE1hdGgubWluKHVuY2xpcGVkLCAxKSwgMClcbiAgICAgICAgcmV0dXJuIGNsaXBwZWRcbiAgICAgIH1cblxuICAgICAgLy8gRmlndXJlIG91dCB0aGUgdmFsdWUgYnkgaW5jb3Jwb3JhdGluZyB0aGUgc3RhcnQgdGltZVxuICAgICAgY29uc3QgZW5kVGltZSA9IHQgKiAodyArIGQpIC0gd1xuICAgICAgcG9zaXRpb24gPVxuICAgICAgICB4IDw9IDBcbiAgICAgICAgICA/IE1hdGgucm91bmQoZigxZS01KSlcbiAgICAgICAgICA6IHggPCBlbmRUaW1lXG4gICAgICAgICAgICA/IGYoeClcbiAgICAgICAgICAgIDogTWF0aC5yb3VuZChmKGVuZFRpbWUgLSAxZS01KSlcbiAgICAgIHJldHVybiBwb3NpdGlvblxuICAgIH1cblxuICAgIC8vIFdvcmsgb3V0IHRoZSBsb29wcyBkb25lIGFuZCBhZGQgdGhlIHBvc2l0aW9uIHRvIHRoZSBsb29wcyBkb25lXG4gICAgY29uc3QgbG9vcHNEb25lID0gTWF0aC5mbG9vcih0aGlzLmxvb3BzKCkpXG4gICAgY29uc3Qgc3dpbmdGb3J3YXJkID0gcyAmJiBsb29wc0RvbmUgJSAyID09PSAwXG4gICAgY29uc3QgZm9yd2FyZHMgPSAoc3dpbmdGb3J3YXJkICYmICFyKSB8fCAociAmJiBzd2luZ0ZvcndhcmQpXG4gICAgcG9zaXRpb24gPSBsb29wc0RvbmUgKyAoZm9yd2FyZHMgPyBwIDogMSAtIHApXG4gICAgcmV0dXJuIHRoaXMubG9vcHMocG9zaXRpb24pXG4gIH1cblxuICBwcm9ncmVzcyhwKSB7XG4gICAgaWYgKHAgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIE1hdGgubWluKDEsIHRoaXMuX3RpbWUgLyB0aGlzLmR1cmF0aW9uKCkpXG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRpbWUocCAqIHRoaXMuZHVyYXRpb24oKSlcbiAgfVxuXG4gIC8qXG4gIEJhc2ljIEZ1bmN0aW9uYWxpdHlcbiAgPT09PT09PT09PT09PT09PT09PVxuICBUaGVzZSBtZXRob2RzIGFsbG93IHVzIHRvIGF0dGFjaCBiYXNpYyBmdW5jdGlvbnMgdG8gdGhlIHJ1bm5lciBkaXJlY3RseVxuICAqL1xuICBxdWV1ZShpbml0Rm4sIHJ1bkZuLCByZXRhcmdldEZuLCBpc1RyYW5zZm9ybSkge1xuICAgIHRoaXMuX3F1ZXVlLnB1c2goe1xuICAgICAgaW5pdGlhbGlzZXI6IGluaXRGbiB8fCBub29wLFxuICAgICAgcnVubmVyOiBydW5GbiB8fCBub29wLFxuICAgICAgcmV0YXJnZXQ6IHJldGFyZ2V0Rm4sXG4gICAgICBpc1RyYW5zZm9ybTogaXNUcmFuc2Zvcm0sXG4gICAgICBpbml0aWFsaXNlZDogZmFsc2UsXG4gICAgICBmaW5pc2hlZDogZmFsc2VcbiAgICB9KVxuICAgIGNvbnN0IHRpbWVsaW5lID0gdGhpcy50aW1lbGluZSgpXG4gICAgdGltZWxpbmUgJiYgdGhpcy50aW1lbGluZSgpLl9jb250aW51ZSgpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHJlc2V0KCkge1xuICAgIGlmICh0aGlzLl9yZXNldGVkKSByZXR1cm4gdGhpc1xuICAgIHRoaXMudGltZSgwKVxuICAgIHRoaXMuX3Jlc2V0ZWQgPSB0cnVlXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHJldmVyc2UocmV2ZXJzZSkge1xuICAgIHRoaXMuX3JldmVyc2UgPSByZXZlcnNlID09IG51bGwgPyAhdGhpcy5fcmV2ZXJzZSA6IHJldmVyc2VcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgc2NoZWR1bGUodGltZWxpbmUsIGRlbGF5LCB3aGVuKSB7XG4gICAgLy8gVGhlIHVzZXIgZG9lc24ndCBuZWVkIHRvIHBhc3MgYSB0aW1lbGluZSBpZiB3ZSBhbHJlYWR5IGhhdmUgb25lXG4gICAgaWYgKCEodGltZWxpbmUgaW5zdGFuY2VvZiBUaW1lbGluZSkpIHtcbiAgICAgIHdoZW4gPSBkZWxheVxuICAgICAgZGVsYXkgPSB0aW1lbGluZVxuICAgICAgdGltZWxpbmUgPSB0aGlzLnRpbWVsaW5lKClcbiAgICB9XG5cbiAgICAvLyBJZiB0aGVyZSBpcyBubyB0aW1lbGluZSwgeWVsbCBhdCB0aGUgdXNlci4uLlxuICAgIGlmICghdGltZWxpbmUpIHtcbiAgICAgIHRocm93IEVycm9yKCdSdW5uZXIgY2Fubm90IGJlIHNjaGVkdWxlZCB3aXRob3V0IHRpbWVsaW5lJylcbiAgICB9XG5cbiAgICAvLyBTY2hlZHVsZSB0aGUgcnVubmVyIG9uIHRoZSB0aW1lbGluZSBwcm92aWRlZFxuICAgIHRpbWVsaW5lLnNjaGVkdWxlKHRoaXMsIGRlbGF5LCB3aGVuKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBzdGVwKGR0KSB7XG4gICAgLy8gSWYgd2UgYXJlIGluYWN0aXZlLCB0aGlzIHN0ZXBwZXIganVzdCBnZXRzIHNraXBwZWRcbiAgICBpZiAoIXRoaXMuZW5hYmxlZCkgcmV0dXJuIHRoaXNcblxuICAgIC8vIFVwZGF0ZSB0aGUgdGltZSBhbmQgZ2V0IHRoZSBuZXcgcG9zaXRpb25cbiAgICBkdCA9IGR0ID09IG51bGwgPyAxNiA6IGR0XG4gICAgdGhpcy5fdGltZSArPSBkdFxuICAgIGNvbnN0IHBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbigpXG5cbiAgICAvLyBGaWd1cmUgb3V0IGlmIHdlIG5lZWQgdG8gcnVuIHRoZSBzdGVwcGVyIGluIHRoaXMgZnJhbWVcbiAgICBjb25zdCBydW5uaW5nID0gdGhpcy5fbGFzdFBvc2l0aW9uICE9PSBwb3NpdGlvbiAmJiB0aGlzLl90aW1lID49IDBcbiAgICB0aGlzLl9sYXN0UG9zaXRpb24gPSBwb3NpdGlvblxuXG4gICAgLy8gRmlndXJlIG91dCBpZiB3ZSBqdXN0IHN0YXJ0ZWRcbiAgICBjb25zdCBkdXJhdGlvbiA9IHRoaXMuZHVyYXRpb24oKVxuICAgIGNvbnN0IGp1c3RTdGFydGVkID0gdGhpcy5fbGFzdFRpbWUgPD0gMCAmJiB0aGlzLl90aW1lID4gMFxuICAgIGNvbnN0IGp1c3RGaW5pc2hlZCA9IHRoaXMuX2xhc3RUaW1lIDwgZHVyYXRpb24gJiYgdGhpcy5fdGltZSA+PSBkdXJhdGlvblxuXG4gICAgdGhpcy5fbGFzdFRpbWUgPSB0aGlzLl90aW1lXG4gICAgaWYgKGp1c3RTdGFydGVkKSB7XG4gICAgICB0aGlzLmZpcmUoJ3N0YXJ0JywgdGhpcylcbiAgICB9XG5cbiAgICAvLyBXb3JrIG91dCBpZiB0aGUgcnVubmVyIGlzIGZpbmlzaGVkIHNldCB0aGUgZG9uZSBmbGFnIGhlcmUgc28gYW5pbWF0aW9uc1xuICAgIC8vIGtub3csIHRoYXQgdGhleSBhcmUgcnVubmluZyBpbiB0aGUgbGFzdCBzdGVwICh0aGlzIGlzIGdvb2QgZm9yXG4gICAgLy8gdHJhbnNmb3JtYXRpb25zIHdoaWNoIGNhbiBiZSBtZXJnZWQpXG4gICAgY29uc3QgZGVjbGFyYXRpdmUgPSB0aGlzLl9pc0RlY2xhcmF0aXZlXG4gICAgdGhpcy5kb25lID0gIWRlY2xhcmF0aXZlICYmICFqdXN0RmluaXNoZWQgJiYgdGhpcy5fdGltZSA+PSBkdXJhdGlvblxuXG4gICAgLy8gUnVubmVyIGlzIHJ1bm5pbmcuIFNvIGl0cyBub3QgaW4gcmVzZXQgc3RhdGUgYW55bW9yZVxuICAgIHRoaXMuX3Jlc2V0ZWQgPSBmYWxzZVxuXG4gICAgbGV0IGNvbnZlcmdlZCA9IGZhbHNlXG4gICAgLy8gQ2FsbCBpbml0aWFsaXNlIGFuZCB0aGUgcnVuIGZ1bmN0aW9uXG4gICAgaWYgKHJ1bm5pbmcgfHwgZGVjbGFyYXRpdmUpIHtcbiAgICAgIHRoaXMuX2luaXRpYWxpc2UocnVubmluZylcblxuICAgICAgLy8gY2xlYXIgdGhlIHRyYW5zZm9ybXMgb24gdGhpcyBydW5uZXIgc28gdGhleSBkb250IGdldCBhZGRlZCBhZ2FpbiBhbmQgYWdhaW5cbiAgICAgIHRoaXMudHJhbnNmb3JtcyA9IG5ldyBNYXRyaXgoKVxuICAgICAgY29udmVyZ2VkID0gdGhpcy5fcnVuKGRlY2xhcmF0aXZlID8gZHQgOiBwb3NpdGlvbilcblxuICAgICAgdGhpcy5maXJlKCdzdGVwJywgdGhpcylcbiAgICB9XG4gICAgLy8gY29ycmVjdCB0aGUgZG9uZSBmbGFnIGhlcmVcbiAgICAvLyBkZWNsYXJhdGl2ZSBhbmltYXRpb25zIGl0c2VsZiBrbm93IHdoZW4gdGhleSBjb252ZXJnZWRcbiAgICB0aGlzLmRvbmUgPSB0aGlzLmRvbmUgfHwgKGNvbnZlcmdlZCAmJiBkZWNsYXJhdGl2ZSlcbiAgICBpZiAoanVzdEZpbmlzaGVkKSB7XG4gICAgICB0aGlzLmZpcmUoJ2ZpbmlzaGVkJywgdGhpcylcbiAgICB9XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qXG4gIFJ1bm5lciBhbmltYXRpb24gbWV0aG9kc1xuICA9PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQ29udHJvbCBob3cgdGhlIGFuaW1hdGlvbiBwbGF5c1xuICAqL1xuICB0aW1lKHRpbWUpIHtcbiAgICBpZiAodGltZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdGltZVxuICAgIH1cbiAgICBjb25zdCBkdCA9IHRpbWUgLSB0aGlzLl90aW1lXG4gICAgdGhpcy5zdGVwKGR0KVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB0aW1lbGluZSh0aW1lbGluZSkge1xuICAgIC8vIGNoZWNrIGV4cGxpY2l0bHkgZm9yIHVuZGVmaW5lZCBzbyB3ZSBjYW4gc2V0IHRoZSB0aW1lbGluZSB0byBudWxsXG4gICAgaWYgKHR5cGVvZiB0aW1lbGluZSA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiB0aGlzLl90aW1lbGluZVxuICAgIHRoaXMuX3RpbWVsaW5lID0gdGltZWxpbmVcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdW5zY2hlZHVsZSgpIHtcbiAgICBjb25zdCB0aW1lbGluZSA9IHRoaXMudGltZWxpbmUoKVxuICAgIHRpbWVsaW5lICYmIHRpbWVsaW5lLnVuc2NoZWR1bGUodGhpcylcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gUnVuIGVhY2ggaW5pdGlhbGlzZSBmdW5jdGlvbiBpbiB0aGUgcnVubmVyIGlmIHJlcXVpcmVkXG4gIF9pbml0aWFsaXNlKHJ1bm5pbmcpIHtcbiAgICAvLyBJZiB3ZSBhcmVuJ3QgcnVubmluZywgd2Ugc2hvdWxkbid0IGluaXRpYWxpc2Ugd2hlbiBub3QgZGVjbGFyYXRpdmVcbiAgICBpZiAoIXJ1bm5pbmcgJiYgIXRoaXMuX2lzRGVjbGFyYXRpdmUpIHJldHVyblxuXG4gICAgLy8gTG9vcCB0aHJvdWdoIGFsbCBvZiB0aGUgaW5pdGlhbGlzZXJzXG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHRoaXMuX3F1ZXVlLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAvLyBHZXQgdGhlIGN1cnJlbnQgaW5pdGlhbGlzZXJcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLl9xdWV1ZVtpXVxuXG4gICAgICAvLyBEZXRlcm1pbmUgd2hldGhlciB3ZSBuZWVkIHRvIGluaXRpYWxpc2VcbiAgICAgIGNvbnN0IG5lZWRzSXQgPSB0aGlzLl9pc0RlY2xhcmF0aXZlIHx8ICghY3VycmVudC5pbml0aWFsaXNlZCAmJiBydW5uaW5nKVxuICAgICAgcnVubmluZyA9ICFjdXJyZW50LmZpbmlzaGVkXG5cbiAgICAgIC8vIENhbGwgdGhlIGluaXRpYWxpc2VyIGlmIHdlIG5lZWQgdG9cbiAgICAgIGlmIChuZWVkc0l0ICYmIHJ1bm5pbmcpIHtcbiAgICAgICAgY3VycmVudC5pbml0aWFsaXNlci5jYWxsKHRoaXMpXG4gICAgICAgIGN1cnJlbnQuaW5pdGlhbGlzZWQgPSB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2F2ZSBhIG1vcnBoZXIgdG8gdGhlIG1vcnBoZXIgbGlzdCBzbyB0aGF0IHdlIGNhbiByZXRhcmdldCBpdCBsYXRlclxuICBfcmVtZW1iZXJNb3JwaGVyKG1ldGhvZCwgbW9ycGhlcikge1xuICAgIHRoaXMuX2hpc3RvcnlbbWV0aG9kXSA9IHtcbiAgICAgIG1vcnBoZXI6IG1vcnBoZXIsXG4gICAgICBjYWxsZXI6IHRoaXMuX3F1ZXVlW3RoaXMuX3F1ZXVlLmxlbmd0aCAtIDFdXG4gICAgfVxuXG4gICAgLy8gV2UgaGF2ZSB0byByZXN1bWUgdGhlIHRpbWVsaW5lIGluIGNhc2UgYSBjb250cm9sbGVyXG4gICAgLy8gaXMgYWxyZWFkeSBkb25lIHdpdGhvdXQgYmVpbmcgZXZlciBydW5cbiAgICAvLyBUaGlzIGNhbiBoYXBwZW4gd2hlbiBlLmcuIHRoaXMgaXMgZG9uZTpcbiAgICAvLyAgICBhbmltID0gZWwuYW5pbWF0ZShuZXcgU1ZHLlNwcmluZylcbiAgICAvLyBhbmQgbGF0ZXJcbiAgICAvLyAgICBhbmltLm1vdmUoLi4uKVxuICAgIGlmICh0aGlzLl9pc0RlY2xhcmF0aXZlKSB7XG4gICAgICBjb25zdCB0aW1lbGluZSA9IHRoaXMudGltZWxpbmUoKVxuICAgICAgdGltZWxpbmUgJiYgdGltZWxpbmUucGxheSgpXG4gICAgfVxuICB9XG5cbiAgLy8gVHJ5IHRvIHNldCB0aGUgdGFyZ2V0IGZvciBhIG1vcnBoZXIgaWYgdGhlIG1vcnBoZXIgZXhpc3RzLCBvdGhlcndpc2VcbiAgLy8gUnVuIGVhY2ggcnVuIGZ1bmN0aW9uIGZvciB0aGUgcG9zaXRpb24gb3IgZHQgZ2l2ZW5cbiAgX3J1bihwb3NpdGlvbk9yRHQpIHtcbiAgICAvLyBSdW4gYWxsIG9mIHRoZSBfcXVldWUgZGlyZWN0bHlcbiAgICBsZXQgYWxsZmluaXNoZWQgPSB0cnVlXG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHRoaXMuX3F1ZXVlLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAvLyBHZXQgdGhlIGN1cnJlbnQgZnVuY3Rpb24gdG8gcnVuXG4gICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5fcXVldWVbaV1cblxuICAgICAgLy8gUnVuIHRoZSBmdW5jdGlvbiBpZiBpdHMgbm90IGZpbmlzaGVkLCB3ZSBrZWVwIHRyYWNrIG9mIHRoZSBmaW5pc2hlZFxuICAgICAgLy8gZmxhZyBmb3IgdGhlIHNha2Ugb2YgZGVjbGFyYXRpdmUgX3F1ZXVlXG4gICAgICBjb25zdCBjb252ZXJnZWQgPSBjdXJyZW50LnJ1bm5lci5jYWxsKHRoaXMsIHBvc2l0aW9uT3JEdClcbiAgICAgIGN1cnJlbnQuZmluaXNoZWQgPSBjdXJyZW50LmZpbmlzaGVkIHx8IGNvbnZlcmdlZCA9PT0gdHJ1ZVxuICAgICAgYWxsZmluaXNoZWQgPSBhbGxmaW5pc2hlZCAmJiBjdXJyZW50LmZpbmlzaGVkXG4gICAgfVxuXG4gICAgLy8gV2UgcmVwb3J0IHdoZW4gYWxsIG9mIHRoZSBjb25zdHJ1Y3RvcnMgYXJlIGZpbmlzaGVkXG4gICAgcmV0dXJuIGFsbGZpbmlzaGVkXG4gIH1cblxuICAvLyBkbyBub3RoaW5nIGFuZCByZXR1cm4gZmFsc2VcbiAgX3RyeVJldGFyZ2V0KG1ldGhvZCwgdGFyZ2V0LCBleHRyYSkge1xuICAgIGlmICh0aGlzLl9oaXN0b3J5W21ldGhvZF0pIHtcbiAgICAgIC8vIGlmIHRoZSBsYXN0IG1ldGhvZCB3YXNuJ3QgZXZlbiBpbml0aWFsaXNlZCwgdGhyb3cgaXQgYXdheVxuICAgICAgaWYgKCF0aGlzLl9oaXN0b3J5W21ldGhvZF0uY2FsbGVyLmluaXRpYWxpc2VkKSB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5fcXVldWUuaW5kZXhPZih0aGlzLl9oaXN0b3J5W21ldGhvZF0uY2FsbGVyKVxuICAgICAgICB0aGlzLl9xdWV1ZS5zcGxpY2UoaW5kZXgsIDEpXG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuXG4gICAgICAvLyBmb3IgdGhlIGNhc2Ugb2YgdHJhbnNmb3JtYXRpb25zLCB3ZSB1c2UgdGhlIHNwZWNpYWwgcmV0YXJnZXQgZnVuY3Rpb25cbiAgICAgIC8vIHdoaWNoIGhhcyBhY2Nlc3MgdG8gdGhlIG91dGVyIHNjb3BlXG4gICAgICBpZiAodGhpcy5faGlzdG9yeVttZXRob2RdLmNhbGxlci5yZXRhcmdldCkge1xuICAgICAgICB0aGlzLl9oaXN0b3J5W21ldGhvZF0uY2FsbGVyLnJldGFyZ2V0LmNhbGwodGhpcywgdGFyZ2V0LCBleHRyYSlcbiAgICAgICAgLy8gZm9yIGV2ZXJ5dGhpbmcgZWxzZSBhIHNpbXBsZSBtb3JwaGVyIGNoYW5nZSBpcyBzdWZmaWNpZW50XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9oaXN0b3J5W21ldGhvZF0ubW9ycGhlci50byh0YXJnZXQpXG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2hpc3RvcnlbbWV0aG9kXS5jYWxsZXIuZmluaXNoZWQgPSBmYWxzZVxuICAgICAgY29uc3QgdGltZWxpbmUgPSB0aGlzLnRpbWVsaW5lKClcbiAgICAgIHRpbWVsaW5lICYmIHRpbWVsaW5lLnBsYXkoKVxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxuUnVubmVyLmlkID0gMFxuXG5leHBvcnQgY2xhc3MgRmFrZVJ1bm5lciB7XG4gIGNvbnN0cnVjdG9yKHRyYW5zZm9ybXMgPSBuZXcgTWF0cml4KCksIGlkID0gLTEsIGRvbmUgPSB0cnVlKSB7XG4gICAgdGhpcy50cmFuc2Zvcm1zID0gdHJhbnNmb3Jtc1xuICAgIHRoaXMuaWQgPSBpZFxuICAgIHRoaXMuZG9uZSA9IGRvbmVcbiAgfVxuXG4gIGNsZWFyVHJhbnNmb3Jtc0Zyb21RdWV1ZSgpIHt9XG59XG5cbmV4dGVuZChbUnVubmVyLCBGYWtlUnVubmVyXSwge1xuICBtZXJnZVdpdGgocnVubmVyKSB7XG4gICAgcmV0dXJuIG5ldyBGYWtlUnVubmVyKFxuICAgICAgcnVubmVyLnRyYW5zZm9ybXMubG11bHRpcGx5KHRoaXMudHJhbnNmb3JtcyksXG4gICAgICBydW5uZXIuaWRcbiAgICApXG4gIH1cbn0pXG5cbi8vIEZha2VSdW5uZXIuZW1wdHlSdW5uZXIgPSBuZXcgRmFrZVJ1bm5lcigpXG5cbmNvbnN0IGxtdWx0aXBseSA9IChsYXN0LCBjdXJyKSA9PiBsYXN0LmxtdWx0aXBseU8oY3VycilcbmNvbnN0IGdldFJ1bm5lclRyYW5zZm9ybSA9IChydW5uZXIpID0+IHJ1bm5lci50cmFuc2Zvcm1zXG5cbmZ1bmN0aW9uIG1lcmdlVHJhbnNmb3JtcygpIHtcbiAgLy8gRmluZCB0aGUgbWF0cml4IHRvIGFwcGx5IHRvIHRoZSBlbGVtZW50IGFuZCBhcHBseSBpdFxuICBjb25zdCBydW5uZXJzID0gdGhpcy5fdHJhbnNmb3JtYXRpb25SdW5uZXJzLnJ1bm5lcnNcbiAgY29uc3QgbmV0VHJhbnNmb3JtID0gcnVubmVyc1xuICAgIC5tYXAoZ2V0UnVubmVyVHJhbnNmb3JtKVxuICAgIC5yZWR1Y2UobG11bHRpcGx5LCBuZXcgTWF0cml4KCkpXG5cbiAgdGhpcy50cmFuc2Zvcm0obmV0VHJhbnNmb3JtKVxuXG4gIHRoaXMuX3RyYW5zZm9ybWF0aW9uUnVubmVycy5tZXJnZSgpXG5cbiAgaWYgKHRoaXMuX3RyYW5zZm9ybWF0aW9uUnVubmVycy5sZW5ndGgoKSA9PT0gMSkge1xuICAgIHRoaXMuX2ZyYW1lSWQgPSBudWxsXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJ1bm5lckFycmF5IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5ydW5uZXJzID0gW11cbiAgICB0aGlzLmlkcyA9IFtdXG4gIH1cblxuICBhZGQocnVubmVyKSB7XG4gICAgaWYgKHRoaXMucnVubmVycy5pbmNsdWRlcyhydW5uZXIpKSByZXR1cm5cbiAgICBjb25zdCBpZCA9IHJ1bm5lci5pZCArIDFcblxuICAgIHRoaXMucnVubmVycy5wdXNoKHJ1bm5lcilcbiAgICB0aGlzLmlkcy5wdXNoKGlkKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGNsZWFyQmVmb3JlKGlkKSB7XG4gICAgY29uc3QgZGVsZXRlQ250ID0gdGhpcy5pZHMuaW5kZXhPZihpZCArIDEpIHx8IDFcbiAgICB0aGlzLmlkcy5zcGxpY2UoMCwgZGVsZXRlQ250LCAwKVxuICAgIHRoaXMucnVubmVyc1xuICAgICAgLnNwbGljZSgwLCBkZWxldGVDbnQsIG5ldyBGYWtlUnVubmVyKCkpXG4gICAgICAuZm9yRWFjaCgocikgPT4gci5jbGVhclRyYW5zZm9ybXNGcm9tUXVldWUoKSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgZWRpdChpZCwgbmV3UnVubmVyKSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLmlkcy5pbmRleE9mKGlkICsgMSlcbiAgICB0aGlzLmlkcy5zcGxpY2UoaW5kZXgsIDEsIGlkICsgMSlcbiAgICB0aGlzLnJ1bm5lcnMuc3BsaWNlKGluZGV4LCAxLCBuZXdSdW5uZXIpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGdldEJ5SUQoaWQpIHtcbiAgICByZXR1cm4gdGhpcy5ydW5uZXJzW3RoaXMuaWRzLmluZGV4T2YoaWQgKyAxKV1cbiAgfVxuXG4gIGxlbmd0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5pZHMubGVuZ3RoXG4gIH1cblxuICBtZXJnZSgpIHtcbiAgICBsZXQgbGFzdFJ1bm5lciA9IG51bGxcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMucnVubmVycy5sZW5ndGg7ICsraSkge1xuICAgICAgY29uc3QgcnVubmVyID0gdGhpcy5ydW5uZXJzW2ldXG5cbiAgICAgIGNvbnN0IGNvbmRpdGlvbiA9XG4gICAgICAgIGxhc3RSdW5uZXIgJiZcbiAgICAgICAgcnVubmVyLmRvbmUgJiZcbiAgICAgICAgbGFzdFJ1bm5lci5kb25lICYmXG4gICAgICAgIC8vIGRvbid0IG1lcmdlIHJ1bm5lciB3aGVuIHBlcnNpc3RlZCBvbiB0aW1lbGluZVxuICAgICAgICAoIXJ1bm5lci5fdGltZWxpbmUgfHxcbiAgICAgICAgICAhcnVubmVyLl90aW1lbGluZS5fcnVubmVySWRzLmluY2x1ZGVzKHJ1bm5lci5pZCkpICYmXG4gICAgICAgICghbGFzdFJ1bm5lci5fdGltZWxpbmUgfHxcbiAgICAgICAgICAhbGFzdFJ1bm5lci5fdGltZWxpbmUuX3J1bm5lcklkcy5pbmNsdWRlcyhsYXN0UnVubmVyLmlkKSlcblxuICAgICAgaWYgKGNvbmRpdGlvbikge1xuICAgICAgICAvLyB0aGUgKzEgaGFwcGVucyBpbiB0aGUgZnVuY3Rpb25cbiAgICAgICAgdGhpcy5yZW1vdmUocnVubmVyLmlkKVxuICAgICAgICBjb25zdCBuZXdSdW5uZXIgPSBydW5uZXIubWVyZ2VXaXRoKGxhc3RSdW5uZXIpXG4gICAgICAgIHRoaXMuZWRpdChsYXN0UnVubmVyLmlkLCBuZXdSdW5uZXIpXG4gICAgICAgIGxhc3RSdW5uZXIgPSBuZXdSdW5uZXJcbiAgICAgICAgLS1pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsYXN0UnVubmVyID0gcnVubmVyXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHJlbW92ZShpZCkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pZHMuaW5kZXhPZihpZCArIDEpXG4gICAgdGhpcy5pZHMuc3BsaWNlKGluZGV4LCAxKVxuICAgIHRoaXMucnVubmVycy5zcGxpY2UoaW5kZXgsIDEpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBFbGVtZW50OiB7XG4gICAgYW5pbWF0ZShkdXJhdGlvbiwgZGVsYXksIHdoZW4pIHtcbiAgICAgIGNvbnN0IG8gPSBSdW5uZXIuc2FuaXRpc2UoZHVyYXRpb24sIGRlbGF5LCB3aGVuKVxuICAgICAgY29uc3QgdGltZWxpbmUgPSB0aGlzLnRpbWVsaW5lKClcbiAgICAgIHJldHVybiBuZXcgUnVubmVyKG8uZHVyYXRpb24pXG4gICAgICAgIC5sb29wKG8pXG4gICAgICAgIC5lbGVtZW50KHRoaXMpXG4gICAgICAgIC50aW1lbGluZSh0aW1lbGluZS5wbGF5KCkpXG4gICAgICAgIC5zY2hlZHVsZShvLmRlbGF5LCBvLndoZW4pXG4gICAgfSxcblxuICAgIGRlbGF5KGJ5LCB3aGVuKSB7XG4gICAgICByZXR1cm4gdGhpcy5hbmltYXRlKDAsIGJ5LCB3aGVuKVxuICAgIH0sXG5cbiAgICAvLyB0aGlzIGZ1bmN0aW9uIHNlYXJjaGVzIGZvciBhbGwgcnVubmVycyBvbiB0aGUgZWxlbWVudCBhbmQgZGVsZXRlcyB0aGUgb25lc1xuICAgIC8vIHdoaWNoIHJ1biBiZWZvcmUgdGhlIGN1cnJlbnQgb25lLiBUaGlzIGlzIGJlY2F1c2UgYWJzb2x1dGUgdHJhbnNmb3JtYXRpb25zXG4gICAgLy8gb3ZlcndyaXRlIGFueXRoaW5nIGFueXdheSBzbyB0aGVyZSBpcyBubyBuZWVkIHRvIHdhc3RlIHRpbWUgY29tcHV0aW5nXG4gICAgLy8gb3RoZXIgcnVubmVyc1xuICAgIF9jbGVhclRyYW5zZm9ybVJ1bm5lcnNCZWZvcmUoY3VycmVudFJ1bm5lcikge1xuICAgICAgdGhpcy5fdHJhbnNmb3JtYXRpb25SdW5uZXJzLmNsZWFyQmVmb3JlKGN1cnJlbnRSdW5uZXIuaWQpXG4gICAgfSxcblxuICAgIF9jdXJyZW50VHJhbnNmb3JtKGN1cnJlbnQpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIHRoaXMuX3RyYW5zZm9ybWF0aW9uUnVubmVycy5ydW5uZXJzXG4gICAgICAgICAgLy8gd2UgbmVlZCB0aGUgZXF1YWwgc2lnbiBoZXJlIHRvIG1ha2Ugc3VyZSwgdGhhdCBhbHNvIHRyYW5zZm9ybWF0aW9uc1xuICAgICAgICAgIC8vIG9uIHRoZSBzYW1lIHJ1bm5lciB3aGljaCBleGVjdXRlIGJlZm9yZSB0aGUgY3VycmVudCB0cmFuc2Zvcm1hdGlvbiBhcmVcbiAgICAgICAgICAvLyB0YWtlbiBpbnRvIGFjY291bnRcbiAgICAgICAgICAuZmlsdGVyKChydW5uZXIpID0+IHJ1bm5lci5pZCA8PSBjdXJyZW50LmlkKVxuICAgICAgICAgIC5tYXAoZ2V0UnVubmVyVHJhbnNmb3JtKVxuICAgICAgICAgIC5yZWR1Y2UobG11bHRpcGx5LCBuZXcgTWF0cml4KCkpXG4gICAgICApXG4gICAgfSxcblxuICAgIF9hZGRSdW5uZXIocnVubmVyKSB7XG4gICAgICB0aGlzLl90cmFuc2Zvcm1hdGlvblJ1bm5lcnMuYWRkKHJ1bm5lcilcblxuICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIHJ1bm5lciBtZXJnZSBpcyBleGVjdXRlZCBhdCB0aGUgdmVyeSBlbmQgb2ZcbiAgICAgIC8vIGFsbCBBbmltYXRvciBmdW5jdGlvbnMuIFRoYXQgaXMgd2h5IHdlIHVzZSBpbW1lZGlhdGUgaGVyZSB0byBleGVjdXRlXG4gICAgICAvLyB0aGUgbWVyZ2UgcmlnaHQgYWZ0ZXIgYWxsIGZyYW1lcyBhcmUgcnVuXG4gICAgICBBbmltYXRvci5jYW5jZWxJbW1lZGlhdGUodGhpcy5fZnJhbWVJZClcbiAgICAgIHRoaXMuX2ZyYW1lSWQgPSBBbmltYXRvci5pbW1lZGlhdGUobWVyZ2VUcmFuc2Zvcm1zLmJpbmQodGhpcykpXG4gICAgfSxcblxuICAgIF9wcmVwYXJlUnVubmVyKCkge1xuICAgICAgaWYgKHRoaXMuX2ZyYW1lSWQgPT0gbnVsbCkge1xuICAgICAgICB0aGlzLl90cmFuc2Zvcm1hdGlvblJ1bm5lcnMgPSBuZXcgUnVubmVyQXJyYXkoKS5hZGQoXG4gICAgICAgICAgbmV3IEZha2VSdW5uZXIobmV3IE1hdHJpeCh0aGlzKSlcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH1cbiAgfVxufSlcblxuLy8gV2lsbCBvdXRwdXQgdGhlIGVsZW1lbnRzIGZyb20gYXJyYXkgQSB0aGF0IGFyZSBub3QgaW4gdGhlIGFycmF5IEJcbmNvbnN0IGRpZmZlcmVuY2UgPSAoYSwgYikgPT4gYS5maWx0ZXIoKHgpID0+ICFiLmluY2x1ZGVzKHgpKVxuXG5leHRlbmQoUnVubmVyLCB7XG4gIGF0dHIoYSwgdikge1xuICAgIHJldHVybiB0aGlzLnN0eWxlQXR0cignYXR0cicsIGEsIHYpXG4gIH0sXG5cbiAgLy8gQWRkIGFuaW1hdGFibGUgc3R5bGVzXG4gIGNzcyhzLCB2KSB7XG4gICAgcmV0dXJuIHRoaXMuc3R5bGVBdHRyKCdjc3MnLCBzLCB2KVxuICB9LFxuXG4gIHN0eWxlQXR0cih0eXBlLCBuYW1lT3JBdHRycywgdmFsKSB7XG4gICAgaWYgKHR5cGVvZiBuYW1lT3JBdHRycyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0eWxlQXR0cih0eXBlLCB7IFtuYW1lT3JBdHRyc106IHZhbCB9KVxuICAgIH1cblxuICAgIGxldCBhdHRycyA9IG5hbWVPckF0dHJzXG4gICAgaWYgKHRoaXMuX3RyeVJldGFyZ2V0KHR5cGUsIGF0dHJzKSkgcmV0dXJuIHRoaXNcblxuICAgIGxldCBtb3JwaGVyID0gbmV3IE1vcnBoYWJsZSh0aGlzLl9zdGVwcGVyKS50byhhdHRycylcbiAgICBsZXQga2V5cyA9IE9iamVjdC5rZXlzKGF0dHJzKVxuXG4gICAgdGhpcy5xdWV1ZShcbiAgICAgIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbW9ycGhlciA9IG1vcnBoZXIuZnJvbSh0aGlzLmVsZW1lbnQoKVt0eXBlXShrZXlzKSlcbiAgICAgIH0sXG4gICAgICBmdW5jdGlvbiAocG9zKSB7XG4gICAgICAgIHRoaXMuZWxlbWVudCgpW3R5cGVdKG1vcnBoZXIuYXQocG9zKS52YWx1ZU9mKCkpXG4gICAgICAgIHJldHVybiBtb3JwaGVyLmRvbmUoKVxuICAgICAgfSxcbiAgICAgIGZ1bmN0aW9uIChuZXdUb0F0dHJzKSB7XG4gICAgICAgIC8vIENoZWNrIGlmIGFueSBuZXcga2V5cyB3ZXJlIGFkZGVkXG4gICAgICAgIGNvbnN0IG5ld0tleXMgPSBPYmplY3Qua2V5cyhuZXdUb0F0dHJzKVxuICAgICAgICBjb25zdCBkaWZmZXJlbmNlcyA9IGRpZmZlcmVuY2UobmV3S2V5cywga2V5cylcblxuICAgICAgICAvLyBJZiB0aGVpciBhcmUgbmV3IGtleXMsIGluaXRpYWxpemUgdGhlbSBhbmQgYWRkIHRoZW0gdG8gbW9ycGhlclxuICAgICAgICBpZiAoZGlmZmVyZW5jZXMubGVuZ3RoKSB7XG4gICAgICAgICAgLy8gR2V0IHRoZSB2YWx1ZXNcbiAgICAgICAgICBjb25zdCBhZGRlZEZyb21BdHRycyA9IHRoaXMuZWxlbWVudCgpW3R5cGVdKGRpZmZlcmVuY2VzKVxuXG4gICAgICAgICAgLy8gR2V0IHRoZSBhbHJlYWR5IGluaXRpYWxpemVkIHZhbHVlc1xuICAgICAgICAgIGNvbnN0IG9sZEZyb21BdHRycyA9IG5ldyBPYmplY3RCYWcobW9ycGhlci5mcm9tKCkpLnZhbHVlT2YoKVxuXG4gICAgICAgICAgLy8gTWVyZ2Ugb2xkIGFuZCBuZXdcbiAgICAgICAgICBPYmplY3QuYXNzaWduKG9sZEZyb21BdHRycywgYWRkZWRGcm9tQXR0cnMpXG4gICAgICAgICAgbW9ycGhlci5mcm9tKG9sZEZyb21BdHRycylcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdldCB0aGUgb2JqZWN0IGZyb20gdGhlIG1vcnBoZXJcbiAgICAgICAgY29uc3Qgb2xkVG9BdHRycyA9IG5ldyBPYmplY3RCYWcobW9ycGhlci50bygpKS52YWx1ZU9mKClcblxuICAgICAgICAvLyBNZXJnZSBpbiBuZXcgYXR0cmlidXRlc1xuICAgICAgICBPYmplY3QuYXNzaWduKG9sZFRvQXR0cnMsIG5ld1RvQXR0cnMpXG5cbiAgICAgICAgLy8gQ2hhbmdlIG1vcnBoZXIgdGFyZ2V0XG4gICAgICAgIG1vcnBoZXIudG8ob2xkVG9BdHRycylcblxuICAgICAgICAvLyBNYWtlIHN1cmUgdGhhdCB3ZSBzYXZlIHRoZSB3b3JrIHdlIGRpZCBzbyB3ZSBkb24ndCBuZWVkIGl0IHRvIGRvIGFnYWluXG4gICAgICAgIGtleXMgPSBuZXdLZXlzXG4gICAgICAgIGF0dHJzID0gbmV3VG9BdHRyc1xuICAgICAgfVxuICAgIClcblxuICAgIHRoaXMuX3JlbWVtYmVyTW9ycGhlcih0eXBlLCBtb3JwaGVyKVxuICAgIHJldHVybiB0aGlzXG4gIH0sXG5cbiAgem9vbShsZXZlbCwgcG9pbnQpIHtcbiAgICBpZiAodGhpcy5fdHJ5UmV0YXJnZXQoJ3pvb20nLCBsZXZlbCwgcG9pbnQpKSByZXR1cm4gdGhpc1xuXG4gICAgbGV0IG1vcnBoZXIgPSBuZXcgTW9ycGhhYmxlKHRoaXMuX3N0ZXBwZXIpLnRvKG5ldyBTVkdOdW1iZXIobGV2ZWwpKVxuXG4gICAgdGhpcy5xdWV1ZShcbiAgICAgIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbW9ycGhlciA9IG1vcnBoZXIuZnJvbSh0aGlzLmVsZW1lbnQoKS56b29tKCkpXG4gICAgICB9LFxuICAgICAgZnVuY3Rpb24gKHBvcykge1xuICAgICAgICB0aGlzLmVsZW1lbnQoKS56b29tKG1vcnBoZXIuYXQocG9zKSwgcG9pbnQpXG4gICAgICAgIHJldHVybiBtb3JwaGVyLmRvbmUoKVxuICAgICAgfSxcbiAgICAgIGZ1bmN0aW9uIChuZXdMZXZlbCwgbmV3UG9pbnQpIHtcbiAgICAgICAgcG9pbnQgPSBuZXdQb2ludFxuICAgICAgICBtb3JwaGVyLnRvKG5ld0xldmVsKVxuICAgICAgfVxuICAgIClcblxuICAgIHRoaXMuX3JlbWVtYmVyTW9ycGhlcignem9vbScsIG1vcnBoZXIpXG4gICAgcmV0dXJuIHRoaXNcbiAgfSxcblxuICAvKipcbiAgICoqIGFic29sdXRlIHRyYW5zZm9ybWF0aW9uc1xuICAgKiovXG5cbiAgLy9cbiAgLy8gTSB2IC0tLS0tfC0tLS0tKEQgTSB2ID0gRiB2KS0tLS0tLXwtLS0tLT4gIFQgdlxuICAvL1xuICAvLyAxLiBkZWZpbmUgdGhlIGZpbmFsIHN0YXRlIChUKSBhbmQgZGVjb21wb3NlIGl0IChvbmNlKVxuICAvLyAgICB0ID0gW3R4LCB0eSwgdGhlLCBsYW0sIHN5LCBzeF1cbiAgLy8gMi4gb24gZXZlcnkgZnJhbWU6IHB1bGwgdGhlIGN1cnJlbnQgc3RhdGUgb2YgYWxsIHByZXZpb3VzIHRyYW5zZm9ybXNcbiAgLy8gICAgKE0gLSBtIGNhbiBjaGFuZ2UpXG4gIC8vICAgYW5kIHRoZW4gd3JpdGUgdGhpcyBhcyBtID0gW3R4MCwgdHkwLCB0aGUwLCBsYW0wLCBzeTAsIHN4MF1cbiAgLy8gMy4gRmluZCB0aGUgaW50ZXJwb2xhdGVkIG1hdHJpeCBGKHBvcykgPSBtICsgcG9zICogKHQgLSBtKVxuICAvLyAgIC0gTm90ZSBGKDApID0gTVxuICAvLyAgIC0gTm90ZSBGKDEpID0gVFxuICAvLyA0LiBOb3cgeW91IGdldCB0aGUgZGVsdGEgbWF0cml4IGFzIGEgcmVzdWx0OiBEID0gRiAqIGludihNKVxuXG4gIHRyYW5zZm9ybSh0cmFuc2Zvcm1zLCByZWxhdGl2ZSwgYWZmaW5lKSB7XG4gICAgLy8gSWYgd2UgaGF2ZSBhIGRlY2xhcmF0aXZlIGZ1bmN0aW9uLCB3ZSBzaG91bGQgcmV0YXJnZXQgaXQgaWYgcG9zc2libGVcbiAgICByZWxhdGl2ZSA9IHRyYW5zZm9ybXMucmVsYXRpdmUgfHwgcmVsYXRpdmVcbiAgICBpZiAoXG4gICAgICB0aGlzLl9pc0RlY2xhcmF0aXZlICYmXG4gICAgICAhcmVsYXRpdmUgJiZcbiAgICAgIHRoaXMuX3RyeVJldGFyZ2V0KCd0cmFuc2Zvcm0nLCB0cmFuc2Zvcm1zKVxuICAgICkge1xuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICAvLyBQYXJzZSB0aGUgcGFyYW1ldGVyc1xuICAgIGNvbnN0IGlzTWF0cml4ID0gTWF0cml4LmlzTWF0cml4TGlrZSh0cmFuc2Zvcm1zKVxuICAgIGFmZmluZSA9XG4gICAgICB0cmFuc2Zvcm1zLmFmZmluZSAhPSBudWxsXG4gICAgICAgID8gdHJhbnNmb3Jtcy5hZmZpbmVcbiAgICAgICAgOiBhZmZpbmUgIT0gbnVsbFxuICAgICAgICAgID8gYWZmaW5lXG4gICAgICAgICAgOiAhaXNNYXRyaXhcblxuICAgIC8vIENyZWF0ZSBhIG1vcnBoZXIgYW5kIHNldCBpdHMgdHlwZVxuICAgIGNvbnN0IG1vcnBoZXIgPSBuZXcgTW9ycGhhYmxlKHRoaXMuX3N0ZXBwZXIpLnR5cGUoXG4gICAgICBhZmZpbmUgPyBUcmFuc2Zvcm1CYWcgOiBNYXRyaXhcbiAgICApXG5cbiAgICBsZXQgb3JpZ2luXG4gICAgbGV0IGVsZW1lbnRcbiAgICBsZXQgY3VycmVudFxuICAgIGxldCBjdXJyZW50QW5nbGVcbiAgICBsZXQgc3RhcnRUcmFuc2Zvcm1cblxuICAgIGZ1bmN0aW9uIHNldHVwKCkge1xuICAgICAgLy8gbWFrZSBzdXJlIGVsZW1lbnQgYW5kIG9yaWdpbiBpcyBkZWZpbmVkXG4gICAgICBlbGVtZW50ID0gZWxlbWVudCB8fCB0aGlzLmVsZW1lbnQoKVxuICAgICAgb3JpZ2luID0gb3JpZ2luIHx8IGdldE9yaWdpbih0cmFuc2Zvcm1zLCBlbGVtZW50KVxuXG4gICAgICBzdGFydFRyYW5zZm9ybSA9IG5ldyBNYXRyaXgocmVsYXRpdmUgPyB1bmRlZmluZWQgOiBlbGVtZW50KVxuXG4gICAgICAvLyBhZGQgdGhlIHJ1bm5lciB0byB0aGUgZWxlbWVudCBzbyBpdCBjYW4gbWVyZ2UgdHJhbnNmb3JtYXRpb25zXG4gICAgICBlbGVtZW50Ll9hZGRSdW5uZXIodGhpcylcblxuICAgICAgLy8gRGVhY3RpdmF0ZSBhbGwgdHJhbnNmb3JtcyB0aGF0IGhhdmUgcnVuIHNvIGZhciBpZiB3ZSBhcmUgYWJzb2x1dGVcbiAgICAgIGlmICghcmVsYXRpdmUpIHtcbiAgICAgICAgZWxlbWVudC5fY2xlYXJUcmFuc2Zvcm1SdW5uZXJzQmVmb3JlKHRoaXMpXG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcnVuKHBvcykge1xuICAgICAgLy8gY2xlYXIgYWxsIG90aGVyIHRyYW5zZm9ybXMgYmVmb3JlIHRoaXMgaW4gY2FzZSBzb21ldGhpbmcgaXMgc2F2ZWRcbiAgICAgIC8vIG9uIHRoaXMgcnVubmVyLiBXZSBhcmUgYWJzb2x1dGUuIFdlIGRvbnQgbmVlZCB0aGVzZSFcbiAgICAgIGlmICghcmVsYXRpdmUpIHRoaXMuY2xlYXJUcmFuc2Zvcm0oKVxuXG4gICAgICBjb25zdCB7IHgsIHkgfSA9IG5ldyBQb2ludChvcmlnaW4pLnRyYW5zZm9ybShcbiAgICAgICAgZWxlbWVudC5fY3VycmVudFRyYW5zZm9ybSh0aGlzKVxuICAgICAgKVxuXG4gICAgICBsZXQgdGFyZ2V0ID0gbmV3IE1hdHJpeCh7IC4uLnRyYW5zZm9ybXMsIG9yaWdpbjogW3gsIHldIH0pXG4gICAgICBsZXQgc3RhcnQgPSB0aGlzLl9pc0RlY2xhcmF0aXZlICYmIGN1cnJlbnQgPyBjdXJyZW50IDogc3RhcnRUcmFuc2Zvcm1cblxuICAgICAgaWYgKGFmZmluZSkge1xuICAgICAgICB0YXJnZXQgPSB0YXJnZXQuZGVjb21wb3NlKHgsIHkpXG4gICAgICAgIHN0YXJ0ID0gc3RhcnQuZGVjb21wb3NlKHgsIHkpXG5cbiAgICAgICAgLy8gR2V0IHRoZSBjdXJyZW50IGFuZCB0YXJnZXQgYW5nbGUgYXMgaXQgd2FzIHNldFxuICAgICAgICBjb25zdCByVGFyZ2V0ID0gdGFyZ2V0LnJvdGF0ZVxuICAgICAgICBjb25zdCByQ3VycmVudCA9IHN0YXJ0LnJvdGF0ZVxuXG4gICAgICAgIC8vIEZpZ3VyZSBvdXQgdGhlIHNob3J0ZXN0IHBhdGggdG8gcm90YXRlIGRpcmVjdGx5XG4gICAgICAgIGNvbnN0IHBvc3NpYmlsaXRpZXMgPSBbclRhcmdldCAtIDM2MCwgclRhcmdldCwgclRhcmdldCArIDM2MF1cbiAgICAgICAgY29uc3QgZGlzdGFuY2VzID0gcG9zc2liaWxpdGllcy5tYXAoKGEpID0+IE1hdGguYWJzKGEgLSByQ3VycmVudCkpXG4gICAgICAgIGNvbnN0IHNob3J0ZXN0ID0gTWF0aC5taW4oLi4uZGlzdGFuY2VzKVxuICAgICAgICBjb25zdCBpbmRleCA9IGRpc3RhbmNlcy5pbmRleE9mKHNob3J0ZXN0KVxuICAgICAgICB0YXJnZXQucm90YXRlID0gcG9zc2liaWxpdGllc1tpbmRleF1cbiAgICAgIH1cblxuICAgICAgaWYgKHJlbGF0aXZlKSB7XG4gICAgICAgIC8vIHdlIGhhdmUgdG8gYmUgY2FyZWZ1bCBoZXJlIG5vdCB0byBvdmVyd3JpdGUgdGhlIHJvdGF0aW9uXG4gICAgICAgIC8vIHdpdGggdGhlIHJvdGF0ZSBtZXRob2Qgb2YgTWF0cml4XG4gICAgICAgIGlmICghaXNNYXRyaXgpIHtcbiAgICAgICAgICB0YXJnZXQucm90YXRlID0gdHJhbnNmb3Jtcy5yb3RhdGUgfHwgMFxuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9pc0RlY2xhcmF0aXZlICYmIGN1cnJlbnRBbmdsZSkge1xuICAgICAgICAgIHN0YXJ0LnJvdGF0ZSA9IGN1cnJlbnRBbmdsZVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIG1vcnBoZXIuZnJvbShzdGFydClcbiAgICAgIG1vcnBoZXIudG8odGFyZ2V0KVxuXG4gICAgICBjb25zdCBhZmZpbmVQYXJhbWV0ZXJzID0gbW9ycGhlci5hdChwb3MpXG4gICAgICBjdXJyZW50QW5nbGUgPSBhZmZpbmVQYXJhbWV0ZXJzLnJvdGF0ZVxuICAgICAgY3VycmVudCA9IG5ldyBNYXRyaXgoYWZmaW5lUGFyYW1ldGVycylcblxuICAgICAgdGhpcy5hZGRUcmFuc2Zvcm0oY3VycmVudClcbiAgICAgIGVsZW1lbnQuX2FkZFJ1bm5lcih0aGlzKVxuICAgICAgcmV0dXJuIG1vcnBoZXIuZG9uZSgpXG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcmV0YXJnZXQobmV3VHJhbnNmb3Jtcykge1xuICAgICAgLy8gb25seSBnZXQgYSBuZXcgb3JpZ2luIGlmIGl0IGNoYW5nZWQgc2luY2UgdGhlIGxhc3QgY2FsbFxuICAgICAgaWYgKFxuICAgICAgICAobmV3VHJhbnNmb3Jtcy5vcmlnaW4gfHwgJ2NlbnRlcicpLnRvU3RyaW5nKCkgIT09XG4gICAgICAgICh0cmFuc2Zvcm1zLm9yaWdpbiB8fCAnY2VudGVyJykudG9TdHJpbmcoKVxuICAgICAgKSB7XG4gICAgICAgIG9yaWdpbiA9IGdldE9yaWdpbihuZXdUcmFuc2Zvcm1zLCBlbGVtZW50KVxuICAgICAgfVxuXG4gICAgICAvLyBvdmVyd3JpdGUgdGhlIG9sZCB0cmFuc2Zvcm1hdGlvbnMgd2l0aCB0aGUgbmV3IG9uZXNcbiAgICAgIHRyYW5zZm9ybXMgPSB7IC4uLm5ld1RyYW5zZm9ybXMsIG9yaWdpbiB9XG4gICAgfVxuXG4gICAgdGhpcy5xdWV1ZShzZXR1cCwgcnVuLCByZXRhcmdldCwgdHJ1ZSlcbiAgICB0aGlzLl9pc0RlY2xhcmF0aXZlICYmIHRoaXMuX3JlbWVtYmVyTW9ycGhlcigndHJhbnNmb3JtJywgbW9ycGhlcilcbiAgICByZXR1cm4gdGhpc1xuICB9LFxuXG4gIC8vIEFuaW1hdGFibGUgeC1heGlzXG4gIHgoeCkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlcigneCcsIHgpXG4gIH0sXG5cbiAgLy8gQW5pbWF0YWJsZSB5LWF4aXNcbiAgeSh5KSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyKCd5JywgeSlcbiAgfSxcblxuICBheCh4KSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyKCdheCcsIHgpXG4gIH0sXG5cbiAgYXkoeSkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlcignYXknLCB5KVxuICB9LFxuXG4gIGR4KHggPSAwKSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyRGVsdGEoJ3gnLCB4KVxuICB9LFxuXG4gIGR5KHkgPSAwKSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyRGVsdGEoJ3knLCB5KVxuICB9LFxuXG4gIGRtb3ZlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5keCh4KS5keSh5KVxuICB9LFxuXG4gIF9xdWV1ZU51bWJlckRlbHRhKG1ldGhvZCwgdG8pIHtcbiAgICB0byA9IG5ldyBTVkdOdW1iZXIodG8pXG5cbiAgICAvLyBUcnkgdG8gY2hhbmdlIHRoZSB0YXJnZXQgaWYgd2UgaGF2ZSB0aGlzIG1ldGhvZCBhbHJlYWR5IHJlZ2lzdGVyZWRcbiAgICBpZiAodGhpcy5fdHJ5UmV0YXJnZXQobWV0aG9kLCB0bykpIHJldHVybiB0aGlzXG5cbiAgICAvLyBNYWtlIGEgbW9ycGhlciBhbmQgcXVldWUgdGhlIGFuaW1hdGlvblxuICAgIGNvbnN0IG1vcnBoZXIgPSBuZXcgTW9ycGhhYmxlKHRoaXMuX3N0ZXBwZXIpLnRvKHRvKVxuICAgIGxldCBmcm9tID0gbnVsbFxuICAgIHRoaXMucXVldWUoXG4gICAgICBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGZyb20gPSB0aGlzLmVsZW1lbnQoKVttZXRob2RdKClcbiAgICAgICAgbW9ycGhlci5mcm9tKGZyb20pXG4gICAgICAgIG1vcnBoZXIudG8oZnJvbSArIHRvKVxuICAgICAgfSxcbiAgICAgIGZ1bmN0aW9uIChwb3MpIHtcbiAgICAgICAgdGhpcy5lbGVtZW50KClbbWV0aG9kXShtb3JwaGVyLmF0KHBvcykpXG4gICAgICAgIHJldHVybiBtb3JwaGVyLmRvbmUoKVxuICAgICAgfSxcbiAgICAgIGZ1bmN0aW9uIChuZXdUbykge1xuICAgICAgICBtb3JwaGVyLnRvKGZyb20gKyBuZXcgU1ZHTnVtYmVyKG5ld1RvKSlcbiAgICAgIH1cbiAgICApXG5cbiAgICAvLyBSZWdpc3RlciB0aGUgbW9ycGhlciBzbyB0aGF0IGlmIGl0IGlzIGNoYW5nZWQgYWdhaW4sIHdlIGNhbiByZXRhcmdldCBpdFxuICAgIHRoaXMuX3JlbWVtYmVyTW9ycGhlcihtZXRob2QsIG1vcnBoZXIpXG4gICAgcmV0dXJuIHRoaXNcbiAgfSxcblxuICBfcXVldWVPYmplY3QobWV0aG9kLCB0bykge1xuICAgIC8vIFRyeSB0byBjaGFuZ2UgdGhlIHRhcmdldCBpZiB3ZSBoYXZlIHRoaXMgbWV0aG9kIGFscmVhZHkgcmVnaXN0ZXJlZFxuICAgIGlmICh0aGlzLl90cnlSZXRhcmdldChtZXRob2QsIHRvKSkgcmV0dXJuIHRoaXNcblxuICAgIC8vIE1ha2UgYSBtb3JwaGVyIGFuZCBxdWV1ZSB0aGUgYW5pbWF0aW9uXG4gICAgY29uc3QgbW9ycGhlciA9IG5ldyBNb3JwaGFibGUodGhpcy5fc3RlcHBlcikudG8odG8pXG4gICAgdGhpcy5xdWV1ZShcbiAgICAgIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbW9ycGhlci5mcm9tKHRoaXMuZWxlbWVudCgpW21ldGhvZF0oKSlcbiAgICAgIH0sXG4gICAgICBmdW5jdGlvbiAocG9zKSB7XG4gICAgICAgIHRoaXMuZWxlbWVudCgpW21ldGhvZF0obW9ycGhlci5hdChwb3MpKVxuICAgICAgICByZXR1cm4gbW9ycGhlci5kb25lKClcbiAgICAgIH1cbiAgICApXG5cbiAgICAvLyBSZWdpc3RlciB0aGUgbW9ycGhlciBzbyB0aGF0IGlmIGl0IGlzIGNoYW5nZWQgYWdhaW4sIHdlIGNhbiByZXRhcmdldCBpdFxuICAgIHRoaXMuX3JlbWVtYmVyTW9ycGhlcihtZXRob2QsIG1vcnBoZXIpXG4gICAgcmV0dXJuIHRoaXNcbiAgfSxcblxuICBfcXVldWVOdW1iZXIobWV0aG9kLCB2YWx1ZSkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU9iamVjdChtZXRob2QsIG5ldyBTVkdOdW1iZXIodmFsdWUpKVxuICB9LFxuXG4gIC8vIEFuaW1hdGFibGUgY2VudGVyIHgtYXhpc1xuICBjeCh4KSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyKCdjeCcsIHgpXG4gIH0sXG5cbiAgLy8gQW5pbWF0YWJsZSBjZW50ZXIgeS1heGlzXG4gIGN5KHkpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVldWVOdW1iZXIoJ2N5JywgeSlcbiAgfSxcblxuICAvLyBBZGQgYW5pbWF0YWJsZSBtb3ZlXG4gIG1vdmUoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLngoeCkueSh5KVxuICB9LFxuXG4gIGFtb3ZlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5heCh4KS5heSh5KVxuICB9LFxuXG4gIC8vIEFkZCBhbmltYXRhYmxlIGNlbnRlclxuICBjZW50ZXIoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLmN4KHgpLmN5KHkpXG4gIH0sXG5cbiAgLy8gQWRkIGFuaW1hdGFibGUgc2l6ZVxuICBzaXplKHdpZHRoLCBoZWlnaHQpIHtcbiAgICAvLyBhbmltYXRlIGJib3ggYmFzZWQgc2l6ZSBmb3IgYWxsIG90aGVyIGVsZW1lbnRzXG4gICAgbGV0IGJveFxuXG4gICAgaWYgKCF3aWR0aCB8fCAhaGVpZ2h0KSB7XG4gICAgICBib3ggPSB0aGlzLl9lbGVtZW50LmJib3goKVxuICAgIH1cblxuICAgIGlmICghd2lkdGgpIHtcbiAgICAgIHdpZHRoID0gKGJveC53aWR0aCAvIGJveC5oZWlnaHQpICogaGVpZ2h0XG4gICAgfVxuXG4gICAgaWYgKCFoZWlnaHQpIHtcbiAgICAgIGhlaWdodCA9IChib3guaGVpZ2h0IC8gYm94LndpZHRoKSAqIHdpZHRoXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMud2lkdGgod2lkdGgpLmhlaWdodChoZWlnaHQpXG4gIH0sXG5cbiAgLy8gQWRkIGFuaW1hdGFibGUgd2lkdGhcbiAgd2lkdGgod2lkdGgpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVldWVOdW1iZXIoJ3dpZHRoJywgd2lkdGgpXG4gIH0sXG5cbiAgLy8gQWRkIGFuaW1hdGFibGUgaGVpZ2h0XG4gIGhlaWdodChoZWlnaHQpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVldWVOdW1iZXIoJ2hlaWdodCcsIGhlaWdodClcbiAgfSxcblxuICAvLyBBZGQgYW5pbWF0YWJsZSBwbG90XG4gIHBsb3QoYSwgYiwgYywgZCkge1xuICAgIC8vIExpbmVzIGNhbiBiZSBwbG90dGVkIHdpdGggNCBhcmd1bWVudHNcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gNCkge1xuICAgICAgcmV0dXJuIHRoaXMucGxvdChbYSwgYiwgYywgZF0pXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3RyeVJldGFyZ2V0KCdwbG90JywgYSkpIHJldHVybiB0aGlzXG5cbiAgICBjb25zdCBtb3JwaGVyID0gbmV3IE1vcnBoYWJsZSh0aGlzLl9zdGVwcGVyKVxuICAgICAgLnR5cGUodGhpcy5fZWxlbWVudC5Nb3JwaEFycmF5KVxuICAgICAgLnRvKGEpXG5cbiAgICB0aGlzLnF1ZXVlKFxuICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICBtb3JwaGVyLmZyb20odGhpcy5fZWxlbWVudC5hcnJheSgpKVxuICAgICAgfSxcbiAgICAgIGZ1bmN0aW9uIChwb3MpIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudC5wbG90KG1vcnBoZXIuYXQocG9zKSlcbiAgICAgICAgcmV0dXJuIG1vcnBoZXIuZG9uZSgpXG4gICAgICB9XG4gICAgKVxuXG4gICAgdGhpcy5fcmVtZW1iZXJNb3JwaGVyKCdwbG90JywgbW9ycGhlcilcbiAgICByZXR1cm4gdGhpc1xuICB9LFxuXG4gIC8vIEFkZCBsZWFkaW5nIG1ldGhvZFxuICBsZWFkaW5nKHZhbHVlKSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyKCdsZWFkaW5nJywgdmFsdWUpXG4gIH0sXG5cbiAgLy8gQWRkIGFuaW1hdGFibGUgdmlld2JveFxuICB2aWV3Ym94KHgsIHksIHdpZHRoLCBoZWlnaHQpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVldWVPYmplY3QoJ3ZpZXdib3gnLCBuZXcgQm94KHgsIHksIHdpZHRoLCBoZWlnaHQpKVxuICB9LFxuXG4gIHVwZGF0ZShvKSB7XG4gICAgaWYgKHR5cGVvZiBvICE9PSAnb2JqZWN0Jykge1xuICAgICAgcmV0dXJuIHRoaXMudXBkYXRlKHtcbiAgICAgICAgb2Zmc2V0OiBhcmd1bWVudHNbMF0sXG4gICAgICAgIGNvbG9yOiBhcmd1bWVudHNbMV0sXG4gICAgICAgIG9wYWNpdHk6IGFyZ3VtZW50c1syXVxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZiAoby5vcGFjaXR5ICE9IG51bGwpIHRoaXMuYXR0cignc3RvcC1vcGFjaXR5Jywgby5vcGFjaXR5KVxuICAgIGlmIChvLmNvbG9yICE9IG51bGwpIHRoaXMuYXR0cignc3RvcC1jb2xvcicsIG8uY29sb3IpXG4gICAgaWYgKG8ub2Zmc2V0ICE9IG51bGwpIHRoaXMuYXR0cignb2Zmc2V0Jywgby5vZmZzZXQpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG59KVxuXG5leHRlbmQoUnVubmVyLCB7IHJ4LCByeSwgZnJvbSwgdG8gfSlcbnJlZ2lzdGVyKFJ1bm5lciwgJ1J1bm5lcicpXG4iLCAiaW1wb3J0IHtcbiAgYWRvcHQsXG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyBzdmcsIHhsaW5rLCB4bWxucyB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9uYW1lc3BhY2VzLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5pbXBvcnQgRGVmcyBmcm9tICcuL0RlZnMuanMnXG5pbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdmcgZXh0ZW5kcyBDb250YWluZXIge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3N2ZycsIG5vZGUpLCBhdHRycylcbiAgICB0aGlzLm5hbWVzcGFjZSgpXG4gIH1cblxuICAvLyBDcmVhdGVzIGFuZCByZXR1cm5zIGRlZnMgZWxlbWVudFxuICBkZWZzKCkge1xuICAgIGlmICghdGhpcy5pc1Jvb3QoKSkgcmV0dXJuIHRoaXMucm9vdCgpLmRlZnMoKVxuXG4gICAgcmV0dXJuIGFkb3B0KHRoaXMubm9kZS5xdWVyeVNlbGVjdG9yKCdkZWZzJykpIHx8IHRoaXMucHV0KG5ldyBEZWZzKCkpXG4gIH1cblxuICBpc1Jvb3QoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgICF0aGlzLm5vZGUucGFyZW50Tm9kZSB8fFxuICAgICAgKCEodGhpcy5ub2RlLnBhcmVudE5vZGUgaW5zdGFuY2VvZiBnbG9iYWxzLndpbmRvdy5TVkdFbGVtZW50KSAmJlxuICAgICAgICB0aGlzLm5vZGUucGFyZW50Tm9kZS5ub2RlTmFtZSAhPT0gJyNkb2N1bWVudC1mcmFnbWVudCcpXG4gICAgKVxuICB9XG5cbiAgLy8gQWRkIG5hbWVzcGFjZXNcbiAgbmFtZXNwYWNlKCkge1xuICAgIGlmICghdGhpcy5pc1Jvb3QoKSkgcmV0dXJuIHRoaXMucm9vdCgpLm5hbWVzcGFjZSgpXG4gICAgcmV0dXJuIHRoaXMuYXR0cih7IHhtbG5zOiBzdmcsIHZlcnNpb246ICcxLjEnIH0pLmF0dHIoXG4gICAgICAneG1sbnM6eGxpbmsnLFxuICAgICAgeGxpbmssXG4gICAgICB4bWxuc1xuICAgIClcbiAgfVxuXG4gIHJlbW92ZU5hbWVzcGFjZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKHsgeG1sbnM6IG51bGwsIHZlcnNpb246IG51bGwgfSlcbiAgICAgIC5hdHRyKCd4bWxuczp4bGluaycsIG51bGwsIHhtbG5zKVxuICAgICAgLmF0dHIoJ3htbG5zOnN2Z2pzJywgbnVsbCwgeG1sbnMpXG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGlzIGlzIGEgcm9vdCBzdmdcbiAgLy8gSWYgbm90LCBjYWxsIHJvb3QoKSBmcm9tIHRoaXMgZWxlbWVudFxuICByb290KCkge1xuICAgIGlmICh0aGlzLmlzUm9vdCgpKSByZXR1cm4gdGhpc1xuICAgIHJldHVybiBzdXBlci5yb290KClcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgbmVzdGVkIHN2ZyBkb2N1bWVudFxuICAgIG5lc3RlZDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBTdmcoKSlcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihTdmcsICdTdmcnLCB0cnVlKVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIsIHdyYXBXaXRoQXR0ckNoZWNrIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgQ29udGFpbmVyIGZyb20gJy4vQ29udGFpbmVyLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTeW1ib2wgZXh0ZW5kcyBDb250YWluZXIge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdzeW1ib2wnLCBub2RlKSwgYXR0cnMpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgc3ltYm9sOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFN5bWJvbCgpKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFN5bWJvbCwgJ1N5bWJvbCcpXG4iLCAiaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uLy4uL3V0aWxzL3dpbmRvdy5qcydcblxuLy8gQ3JlYXRlIHBsYWluIHRleHQgbm9kZVxuZXhwb3J0IGZ1bmN0aW9uIHBsYWluKHRleHQpIHtcbiAgLy8gY2xlYXIgaWYgYnVpbGQgbW9kZSBpcyBkaXNhYmxlZFxuICBpZiAodGhpcy5fYnVpbGQgPT09IGZhbHNlKSB7XG4gICAgdGhpcy5jbGVhcigpXG4gIH1cblxuICAvLyBjcmVhdGUgdGV4dCBub2RlXG4gIHRoaXMubm9kZS5hcHBlbmRDaGlsZChnbG9iYWxzLmRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRleHQpKVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIEdldCBsZW5ndGggb2YgdGV4dCBlbGVtZW50XG5leHBvcnQgZnVuY3Rpb24gbGVuZ3RoKCkge1xuICByZXR1cm4gdGhpcy5ub2RlLmdldENvbXB1dGVkVGV4dExlbmd0aCgpXG59XG5cbi8vIE1vdmUgb3ZlciB4LWF4aXNcbi8vIFRleHQgaXMgbW92ZWQgYnkgaXRzIGJvdW5kaW5nIGJveFxuLy8gdGV4dC1hbmNob3IgZG9lcyBOT1QgbWF0dGVyXG5leHBvcnQgZnVuY3Rpb24geCh4LCBib3ggPSB0aGlzLmJib3goKSkge1xuICBpZiAoeCA9PSBudWxsKSB7XG4gICAgcmV0dXJuIGJveC54XG4gIH1cblxuICByZXR1cm4gdGhpcy5hdHRyKCd4JywgdGhpcy5hdHRyKCd4JykgKyB4IC0gYm94LngpXG59XG5cbi8vIE1vdmUgb3ZlciB5LWF4aXNcbmV4cG9ydCBmdW5jdGlvbiB5KHksIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGlmICh5ID09IG51bGwpIHtcbiAgICByZXR1cm4gYm94LnlcbiAgfVxuXG4gIHJldHVybiB0aGlzLmF0dHIoJ3knLCB0aGlzLmF0dHIoJ3knKSArIHkgLSBib3gueSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1vdmUoeCwgeSwgYm94ID0gdGhpcy5iYm94KCkpIHtcbiAgcmV0dXJuIHRoaXMueCh4LCBib3gpLnkoeSwgYm94KVxufVxuXG4vLyBNb3ZlIGNlbnRlciBvdmVyIHgtYXhpc1xuZXhwb3J0IGZ1bmN0aW9uIGN4KHgsIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGlmICh4ID09IG51bGwpIHtcbiAgICByZXR1cm4gYm94LmN4XG4gIH1cblxuICByZXR1cm4gdGhpcy5hdHRyKCd4JywgdGhpcy5hdHRyKCd4JykgKyB4IC0gYm94LmN4KVxufVxuXG4vLyBNb3ZlIGNlbnRlciBvdmVyIHktYXhpc1xuZXhwb3J0IGZ1bmN0aW9uIGN5KHksIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGlmICh5ID09IG51bGwpIHtcbiAgICByZXR1cm4gYm94LmN5XG4gIH1cblxuICByZXR1cm4gdGhpcy5hdHRyKCd5JywgdGhpcy5hdHRyKCd5JykgKyB5IC0gYm94LmN5KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY2VudGVyKHgsIHksIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIHJldHVybiB0aGlzLmN4KHgsIGJveCkuY3koeSwgYm94KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYXgoeCkge1xuICByZXR1cm4gdGhpcy5hdHRyKCd4JywgeClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGF5KHkpIHtcbiAgcmV0dXJuIHRoaXMuYXR0cigneScsIHkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhbW92ZSh4LCB5KSB7XG4gIHJldHVybiB0aGlzLmF4KHgpLmF5KHkpXG59XG5cbi8vIEVuYWJsZSAvIGRpc2FibGUgYnVpbGQgbW9kZVxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkKGJ1aWxkKSB7XG4gIHRoaXMuX2J1aWxkID0gISFidWlsZFxuICByZXR1cm4gdGhpc1xufVxuIiwgImltcG9ydCB7XG4gIGFkb3B0LFxuICBleHRlbmQsXG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi90eXBlcy9TVkdOdW1iZXIuanMnXG5pbXBvcnQgU2hhcGUgZnJvbSAnLi9TaGFwZS5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgKiBhcyB0ZXh0YWJsZSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvdGV4dGFibGUuanMnXG5pbXBvcnQgeyBpc0Rlc2NyaXB0aXZlLCB3cml0ZURhdGFUb0RvbSB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXh0IGV4dGVuZHMgU2hhcGUge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCd0ZXh0Jywgbm9kZSksIGF0dHJzKVxuXG4gICAgdGhpcy5kb20ubGVhZGluZyA9IHRoaXMuZG9tLmxlYWRpbmcgPz8gbmV3IFNWR051bWJlcigxLjMpIC8vIHN0b3JlIGxlYWRpbmcgdmFsdWUgZm9yIHJlYnVpbGRpbmdcbiAgICB0aGlzLl9yZWJ1aWxkID0gdHJ1ZSAvLyBlbmFibGUgYXV0b21hdGljIHVwZGF0aW5nIG9mIGR5IHZhbHVlc1xuICAgIHRoaXMuX2J1aWxkID0gZmFsc2UgLy8gZGlzYWJsZSBidWlsZCBtb2RlIGZvciBhZGRpbmcgbXVsdGlwbGUgbGluZXNcbiAgfVxuXG4gIC8vIFNldCAvIGdldCBsZWFkaW5nXG4gIGxlYWRpbmcodmFsdWUpIHtcbiAgICAvLyBhY3QgYXMgZ2V0dGVyXG4gICAgaWYgKHZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLmRvbS5sZWFkaW5nXG4gICAgfVxuXG4gICAgLy8gYWN0IGFzIHNldHRlclxuICAgIHRoaXMuZG9tLmxlYWRpbmcgPSBuZXcgU1ZHTnVtYmVyKHZhbHVlKVxuXG4gICAgcmV0dXJuIHRoaXMucmVidWlsZCgpXG4gIH1cblxuICAvLyBSZWJ1aWxkIGFwcGVhcmFuY2UgdHlwZVxuICByZWJ1aWxkKHJlYnVpbGQpIHtcbiAgICAvLyBzdG9yZSBuZXcgcmVidWlsZCBmbGFnIGlmIGdpdmVuXG4gICAgaWYgKHR5cGVvZiByZWJ1aWxkID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHRoaXMuX3JlYnVpbGQgPSByZWJ1aWxkXG4gICAgfVxuXG4gICAgLy8gZGVmaW5lIHBvc2l0aW9uIG9mIGFsbCBsaW5lc1xuICAgIGlmICh0aGlzLl9yZWJ1aWxkKSB7XG4gICAgICBjb25zdCBzZWxmID0gdGhpc1xuICAgICAgbGV0IGJsYW5rTGluZU9mZnNldCA9IDBcbiAgICAgIGNvbnN0IGxlYWRpbmcgPSB0aGlzLmRvbS5sZWFkaW5nXG5cbiAgICAgIHRoaXMuZWFjaChmdW5jdGlvbiAoaSkge1xuICAgICAgICBpZiAoaXNEZXNjcmlwdGl2ZSh0aGlzLm5vZGUpKSByZXR1cm5cblxuICAgICAgICBjb25zdCBmb250U2l6ZSA9IGdsb2JhbHMud2luZG93XG4gICAgICAgICAgLmdldENvbXB1dGVkU3R5bGUodGhpcy5ub2RlKVxuICAgICAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKCdmb250LXNpemUnKVxuXG4gICAgICAgIGNvbnN0IGR5ID0gbGVhZGluZyAqIG5ldyBTVkdOdW1iZXIoZm9udFNpemUpXG5cbiAgICAgICAgaWYgKHRoaXMuZG9tLm5ld0xpbmVkKSB7XG4gICAgICAgICAgdGhpcy5hdHRyKCd4Jywgc2VsZi5hdHRyKCd4JykpXG5cbiAgICAgICAgICBpZiAodGhpcy50ZXh0KCkgPT09ICdcXG4nKSB7XG4gICAgICAgICAgICBibGFua0xpbmVPZmZzZXQgKz0gZHlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hdHRyKCdkeScsIGkgPyBkeSArIGJsYW5rTGluZU9mZnNldCA6IDApXG4gICAgICAgICAgICBibGFua0xpbmVPZmZzZXQgPSAwXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgICB0aGlzLmZpcmUoJ3JlYnVpbGQnKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBvdmVyd3JpdGUgbWV0aG9kIGZyb20gcGFyZW50IHRvIHNldCBkYXRhIHByb3Blcmx5XG4gIHNldERhdGEobykge1xuICAgIHRoaXMuZG9tID0gb1xuICAgIHRoaXMuZG9tLmxlYWRpbmcgPSBuZXcgU1ZHTnVtYmVyKG8ubGVhZGluZyB8fCAxLjMpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHdyaXRlRGF0YVRvRG9tKCkge1xuICAgIHdyaXRlRGF0YVRvRG9tKHRoaXMsIHRoaXMuZG9tLCB7IGxlYWRpbmc6IDEuMyB9KVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBTZXQgdGhlIHRleHQgY29udGVudFxuICB0ZXh0KHRleHQpIHtcbiAgICAvLyBhY3QgYXMgZ2V0dGVyXG4gICAgaWYgKHRleHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLm5vZGUuY2hpbGROb2Rlc1xuICAgICAgbGV0IGZpcnN0TGluZSA9IDBcbiAgICAgIHRleHQgPSAnJ1xuXG4gICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gY2hpbGRyZW4ubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgICAgLy8gc2tpcCB0ZXh0UGF0aHMgLSB0aGV5IGFyZSBubyBsaW5lc1xuICAgICAgICBpZiAoY2hpbGRyZW5baV0ubm9kZU5hbWUgPT09ICd0ZXh0UGF0aCcgfHwgaXNEZXNjcmlwdGl2ZShjaGlsZHJlbltpXSkpIHtcbiAgICAgICAgICBpZiAoaSA9PT0gMCkgZmlyc3RMaW5lID0gaSArIDFcbiAgICAgICAgICBjb250aW51ZVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYWRkIG5ld2xpbmUgaWYgaXRzIG5vdCB0aGUgZmlyc3QgY2hpbGQgYW5kIG5ld0xpbmVkIGlzIHNldCB0byB0cnVlXG4gICAgICAgIGlmIChcbiAgICAgICAgICBpICE9PSBmaXJzdExpbmUgJiZcbiAgICAgICAgICBjaGlsZHJlbltpXS5ub2RlVHlwZSAhPT0gMyAmJlxuICAgICAgICAgIGFkb3B0KGNoaWxkcmVuW2ldKS5kb20ubmV3TGluZWQgPT09IHRydWVcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGV4dCArPSAnXFxuJ1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gYWRkIGNvbnRlbnQgb2YgdGhpcyBub2RlXG4gICAgICAgIHRleHQgKz0gY2hpbGRyZW5baV0udGV4dENvbnRlbnRcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRleHRcbiAgICB9XG5cbiAgICAvLyByZW1vdmUgZXhpc3RpbmcgY29udGVudFxuICAgIHRoaXMuY2xlYXIoKS5idWlsZCh0cnVlKVxuXG4gICAgaWYgKHR5cGVvZiB0ZXh0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAvLyBjYWxsIGJsb2NrXG4gICAgICB0ZXh0LmNhbGwodGhpcywgdGhpcylcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gc3RvcmUgdGV4dCBhbmQgbWFrZSBzdXJlIHRleHQgaXMgbm90IGJsYW5rXG4gICAgICB0ZXh0ID0gKHRleHQgKyAnJykuc3BsaXQoJ1xcbicpXG5cbiAgICAgIC8vIGJ1aWxkIG5ldyBsaW5lc1xuICAgICAgZm9yIChsZXQgaiA9IDAsIGpsID0gdGV4dC5sZW5ndGg7IGogPCBqbDsgaisrKSB7XG4gICAgICAgIHRoaXMubmV3TGluZSh0ZXh0W2pdKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRpc2FibGUgYnVpbGQgbW9kZSBhbmQgcmVidWlsZCBsaW5lc1xuICAgIHJldHVybiB0aGlzLmJ1aWxkKGZhbHNlKS5yZWJ1aWxkKClcbiAgfVxufVxuXG5leHRlbmQoVGV4dCwgdGV4dGFibGUpXG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSB0ZXh0IGVsZW1lbnRcbiAgICB0ZXh0OiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAodGV4dCA9ICcnKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFRleHQoKSkudGV4dCh0ZXh0KVxuICAgIH0pLFxuXG4gICAgLy8gQ3JlYXRlIHBsYWluIHRleHQgZWxlbWVudFxuICAgIHBsYWluOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAodGV4dCA9ICcnKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFRleHQoKSkucGxhaW4odGV4dClcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihUZXh0LCAnVGV4dCcpXG4iLCAiaW1wb3J0IHtcbiAgZXh0ZW5kLFxuICBub2RlT3JOZXcsXG4gIHJlZ2lzdGVyLFxuICB3cmFwV2l0aEF0dHJDaGVja1xufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uL3V0aWxzL3dpbmRvdy5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgU1ZHTnVtYmVyIGZyb20gJy4uL3R5cGVzL1NWR051bWJlci5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuaW1wb3J0IFRleHQgZnJvbSAnLi9UZXh0LmpzJ1xuaW1wb3J0ICogYXMgdGV4dGFibGUgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3RleHRhYmxlLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUc3BhbiBleHRlbmRzIFNoYXBlIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygndHNwYW4nLCBub2RlKSwgYXR0cnMpXG4gICAgdGhpcy5fYnVpbGQgPSBmYWxzZSAvLyBkaXNhYmxlIGJ1aWxkIG1vZGUgZm9yIGFkZGluZyBtdWx0aXBsZSBsaW5lc1xuICB9XG5cbiAgLy8gU2hvcnRjdXQgZHhcbiAgZHgoZHgpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdkeCcsIGR4KVxuICB9XG5cbiAgLy8gU2hvcnRjdXQgZHlcbiAgZHkoZHkpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdkeScsIGR5KVxuICB9XG5cbiAgLy8gQ3JlYXRlIG5ldyBsaW5lXG4gIG5ld0xpbmUoKSB7XG4gICAgLy8gbWFyayBuZXcgbGluZVxuICAgIHRoaXMuZG9tLm5ld0xpbmVkID0gdHJ1ZVxuXG4gICAgLy8gZmV0Y2ggcGFyZW50XG4gICAgY29uc3QgdGV4dCA9IHRoaXMucGFyZW50KClcblxuICAgIC8vIGVhcmx5IHJldHVybiBpbiBjYXNlIHdlIGFyZSBub3QgaW4gYSB0ZXh0IGVsZW1lbnRcbiAgICBpZiAoISh0ZXh0IGluc3RhbmNlb2YgVGV4dCkpIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgY29uc3QgaSA9IHRleHQuaW5kZXgodGhpcylcblxuICAgIGNvbnN0IGZvbnRTaXplID0gZ2xvYmFscy53aW5kb3dcbiAgICAgIC5nZXRDb21wdXRlZFN0eWxlKHRoaXMubm9kZSlcbiAgICAgIC5nZXRQcm9wZXJ0eVZhbHVlKCdmb250LXNpemUnKVxuICAgIGNvbnN0IGR5ID0gdGV4dC5kb20ubGVhZGluZyAqIG5ldyBTVkdOdW1iZXIoZm9udFNpemUpXG5cbiAgICAvLyBhcHBseSBuZXcgcG9zaXRpb25cbiAgICByZXR1cm4gdGhpcy5keShpID8gZHkgOiAwKS5hdHRyKCd4JywgdGV4dC54KCkpXG4gIH1cblxuICAvLyBTZXQgdGV4dCBjb250ZW50XG4gIHRleHQodGV4dCkge1xuICAgIGlmICh0ZXh0ID09IG51bGwpXG4gICAgICByZXR1cm4gdGhpcy5ub2RlLnRleHRDb250ZW50ICsgKHRoaXMuZG9tLm5ld0xpbmVkID8gJ1xcbicgOiAnJylcblxuICAgIGlmICh0eXBlb2YgdGV4dCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5jbGVhcigpLmJ1aWxkKHRydWUpXG4gICAgICB0ZXh0LmNhbGwodGhpcywgdGhpcylcbiAgICAgIHRoaXMuYnVpbGQoZmFsc2UpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGxhaW4odGV4dClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbmV4dGVuZChUc3BhbiwgdGV4dGFibGUpXG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIFRzcGFuOiB7XG4gICAgdHNwYW46IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh0ZXh0ID0gJycpIHtcbiAgICAgIGNvbnN0IHRzcGFuID0gbmV3IFRzcGFuKClcblxuICAgICAgLy8gY2xlYXIgaWYgYnVpbGQgbW9kZSBpcyBkaXNhYmxlZFxuICAgICAgaWYgKCF0aGlzLl9idWlsZCkge1xuICAgICAgICB0aGlzLmNsZWFyKClcbiAgICAgIH1cblxuICAgICAgLy8gYWRkIG5ldyB0c3BhblxuICAgICAgcmV0dXJuIHRoaXMucHV0KHRzcGFuKS50ZXh0KHRleHQpXG4gICAgfSlcbiAgfSxcbiAgVGV4dDoge1xuICAgIG5ld0xpbmU6IGZ1bmN0aW9uICh0ZXh0ID0gJycpIHtcbiAgICAgIHJldHVybiB0aGlzLnRzcGFuKHRleHQpLm5ld0xpbmUoKVxuICAgIH1cbiAgfVxufSlcblxucmVnaXN0ZXIoVHNwYW4sICdUc3BhbicpXG4iLCAiaW1wb3J0IHsgY3gsIGN5LCBoZWlnaHQsIHdpZHRoLCB4LCB5IH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2NpcmNsZWQuanMnXG5pbXBvcnQge1xuICBleHRlbmQsXG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi90eXBlcy9TVkdOdW1iZXIuanMnXG5pbXBvcnQgU2hhcGUgZnJvbSAnLi9TaGFwZS5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ2lyY2xlIGV4dGVuZHMgU2hhcGUge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2NpcmNsZScsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIHJhZGl1cyhyKSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cigncicsIHIpXG4gIH1cblxuICAvLyBSYWRpdXMgeCB2YWx1ZVxuICByeChyeCkge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ3InLCByeClcbiAgfVxuXG4gIC8vIEFsaWFzIHJhZGl1cyB4IHZhbHVlXG4gIHJ5KHJ5KSB7XG4gICAgcmV0dXJuIHRoaXMucngocnkpXG4gIH1cblxuICBzaXplKHNpemUpIHtcbiAgICByZXR1cm4gdGhpcy5yYWRpdXMobmV3IFNWR051bWJlcihzaXplKS5kaXZpZGUoMikpXG4gIH1cbn1cblxuZXh0ZW5kKENpcmNsZSwgeyB4LCB5LCBjeCwgY3ksIHdpZHRoLCBoZWlnaHQgfSlcblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIGNpcmNsZSBlbGVtZW50XG4gICAgY2lyY2xlOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAoc2l6ZSA9IDApIHtcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgQ2lyY2xlKCkpLnNpemUoc2l6ZSkubW92ZSgwLCAwKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKENpcmNsZSwgJ0NpcmNsZScpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5pbXBvcnQgYmFzZUZpbmQgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3NlbGVjdG9yLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDbGlwUGF0aCBleHRlbmRzIENvbnRhaW5lciB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygnY2xpcFBhdGgnLCBub2RlKSwgYXR0cnMpXG4gIH1cblxuICAvLyBVbmNsaXAgYWxsIGNsaXBwZWQgZWxlbWVudHMgYW5kIHJlbW92ZSBpdHNlbGZcbiAgcmVtb3ZlKCkge1xuICAgIC8vIHVuY2xpcCBhbGwgdGFyZ2V0c1xuICAgIHRoaXMudGFyZ2V0cygpLmZvckVhY2goZnVuY3Rpb24gKGVsKSB7XG4gICAgICBlbC51bmNsaXAoKVxuICAgIH0pXG5cbiAgICAvLyByZW1vdmUgY2xpcFBhdGggZnJvbSBwYXJlbnRcbiAgICByZXR1cm4gc3VwZXIucmVtb3ZlKClcbiAgfVxuXG4gIHRhcmdldHMoKSB7XG4gICAgcmV0dXJuIGJhc2VGaW5kKCdzdmcgW2NsaXAtcGF0aCo9JyArIHRoaXMuaWQoKSArICddJylcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgY2xpcHBpbmcgZWxlbWVudFxuICAgIGNsaXA6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmRlZnMoKS5wdXQobmV3IENsaXBQYXRoKCkpXG4gICAgfSlcbiAgfSxcbiAgRWxlbWVudDoge1xuICAgIC8vIERpc3RyaWJ1dGUgY2xpcFBhdGggdG8gc3ZnIGVsZW1lbnRcbiAgICBjbGlwcGVyKCkge1xuICAgICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlKCdjbGlwLXBhdGgnKVxuICAgIH0sXG5cbiAgICBjbGlwV2l0aChlbGVtZW50KSB7XG4gICAgICAvLyB1c2UgZ2l2ZW4gY2xpcCBvciBjcmVhdGUgYSBuZXcgb25lXG4gICAgICBjb25zdCBjbGlwcGVyID1cbiAgICAgICAgZWxlbWVudCBpbnN0YW5jZW9mIENsaXBQYXRoXG4gICAgICAgICAgPyBlbGVtZW50XG4gICAgICAgICAgOiB0aGlzLnBhcmVudCgpLmNsaXAoKS5hZGQoZWxlbWVudClcblxuICAgICAgLy8gYXBwbHkgbWFza1xuICAgICAgcmV0dXJuIHRoaXMuYXR0cignY2xpcC1wYXRoJywgJ3VybCgjJyArIGNsaXBwZXIuaWQoKSArICcpJylcbiAgICB9LFxuXG4gICAgLy8gVW5jbGlwIGVsZW1lbnRcbiAgICB1bmNsaXAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hdHRyKCdjbGlwLXBhdGgnLCBudWxsKVxuICAgIH1cbiAgfVxufSlcblxucmVnaXN0ZXIoQ2xpcFBhdGgsICdDbGlwUGF0aCcpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBFbGVtZW50IGZyb20gJy4vRWxlbWVudC5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRm9yZWlnbk9iamVjdCBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2ZvcmVpZ25PYmplY3QnLCBub2RlKSwgYXR0cnMpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgZm9yZWlnbk9iamVjdDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHdpZHRoLCBoZWlnaHQpIHtcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgRm9yZWlnbk9iamVjdCgpKS5zaXplKHdpZHRoLCBoZWlnaHQpXG4gICAgfSlcbiAgfVxufSlcblxucmVnaXN0ZXIoRm9yZWlnbk9iamVjdCwgJ0ZvcmVpZ25PYmplY3QnKVxuIiwgImltcG9ydCBNYXRyaXggZnJvbSAnLi4vLi4vdHlwZXMvTWF0cml4LmpzJ1xuaW1wb3J0IFBvaW50IGZyb20gJy4uLy4uL3R5cGVzL1BvaW50LmpzJ1xuaW1wb3J0IEJveCBmcm9tICcuLi8uLi90eXBlcy9Cb3guanMnXG5pbXBvcnQgeyBwcm9wb3J0aW9uYWxTaXplIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbHMuanMnXG5pbXBvcnQgeyBnZXRXaW5kb3cgfSBmcm9tICcuLi8uLi91dGlscy93aW5kb3cuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBkbW92ZShkeCwgZHkpIHtcbiAgdGhpcy5jaGlsZHJlbigpLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgbGV0IGJib3hcblxuICAgIC8vIFdlIGhhdmUgdG8gd3JhcCB0aGlzIGZvciBlbGVtZW50cyB0aGF0IGRvbnQgaGF2ZSBhIGJib3hcbiAgICAvLyBlLmcuIHRpdGxlIGFuZCBvdGhlciBkZXNjcmlwdGl2ZSBlbGVtZW50c1xuICAgIHRyeSB7XG4gICAgICAvLyBHZXQgdGhlIGNoaWxkcyBiYm94XG4gICAgICAvLyBCdWc6IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDUwMzlcbiAgICAgIC8vIEJlY2F1c2UgYmJveCBmb3IgbmVzdGVkIHN2Z3MgcmV0dXJucyB0aGUgY29udGVudHMgYmJveCBpbiB0aGUgY29vcmRpbmF0ZSBzcGFjZSBvZiB0aGUgc3ZnIGl0c2VsZiAod2VpcmQhKSwgd2UgY2FudCB1c2UgYmJveCBmb3Igc3Znc1xuICAgICAgLy8gVGhlcmVmb3JlIHdlIGhhdmUgdG8gdXNlIGdldEJvdW5kaW5nQ2xpZW50UmVjdC4gQnV0IFRIQVQgaXMgYnJva2VuIChhcyBleHBsYWluZWQgaW4gdGhlIGJ1ZykuXG4gICAgICAvLyBGdW5uaWx5IGVub3VnaCB0aGUgYnJva2VuIGJlaGF2aW9yIHdvdWxkIHdvcmsgZm9yIHVzIGJ1dCB0aGF0IGJyZWFrcyBpdCBpbiBjaHJvbWVcbiAgICAgIC8vIFNvIHdlIGhhdmUgdG8gcmVwbGljYXRlIHRoZSBicm9rZW4gYmVoYXZpb3Igb2YgRkYgYnkganVzdCByZWFkaW5nIHRoZSBhdHRyaWJ1dGVzIG9mIHRoZSBzdmcgaXRzZWxmXG4gICAgICBiYm94ID1cbiAgICAgICAgY2hpbGQubm9kZSBpbnN0YW5jZW9mIGdldFdpbmRvdygpLlNWR1NWR0VsZW1lbnRcbiAgICAgICAgICA/IG5ldyBCb3goY2hpbGQuYXR0cihbJ3gnLCAneScsICd3aWR0aCcsICdoZWlnaHQnXSkpXG4gICAgICAgICAgOiBjaGlsZC5iYm94KClcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBHZXQgY2hpbGRzIG1hdHJpeFxuICAgIGNvbnN0IG0gPSBuZXcgTWF0cml4KGNoaWxkKVxuICAgIC8vIFRyYW5zbGF0ZSBjaGlsZHMgbWF0cml4IGJ5IGFtb3VudCBhbmRcbiAgICAvLyB0cmFuc2Zvcm0gaXQgYmFjayBpbnRvIHBhcmVudHMgc3BhY2VcbiAgICBjb25zdCBtYXRyaXggPSBtLnRyYW5zbGF0ZShkeCwgZHkpLnRyYW5zZm9ybShtLmludmVyc2UoKSlcbiAgICAvLyBDYWxjdWxhdGUgbmV3IHggYW5kIHkgZnJvbSBvbGQgYm94XG4gICAgY29uc3QgcCA9IG5ldyBQb2ludChiYm94LngsIGJib3gueSkudHJhbnNmb3JtKG1hdHJpeClcbiAgICAvLyBNb3ZlIGVsZW1lbnRcbiAgICBjaGlsZC5tb3ZlKHAueCwgcC55KVxuICB9KVxuXG4gIHJldHVybiB0aGlzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkeChkeCkge1xuICByZXR1cm4gdGhpcy5kbW92ZShkeCwgMClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGR5KGR5KSB7XG4gIHJldHVybiB0aGlzLmRtb3ZlKDAsIGR5KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaGVpZ2h0KGhlaWdodCwgYm94ID0gdGhpcy5iYm94KCkpIHtcbiAgaWYgKGhlaWdodCA9PSBudWxsKSByZXR1cm4gYm94LmhlaWdodFxuICByZXR1cm4gdGhpcy5zaXplKGJveC53aWR0aCwgaGVpZ2h0LCBib3gpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb3ZlKHggPSAwLCB5ID0gMCwgYm94ID0gdGhpcy5iYm94KCkpIHtcbiAgY29uc3QgZHggPSB4IC0gYm94LnhcbiAgY29uc3QgZHkgPSB5IC0gYm94LnlcblxuICByZXR1cm4gdGhpcy5kbW92ZShkeCwgZHkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzaXplKHdpZHRoLCBoZWlnaHQsIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGNvbnN0IHAgPSBwcm9wb3J0aW9uYWxTaXplKHRoaXMsIHdpZHRoLCBoZWlnaHQsIGJveClcbiAgY29uc3Qgc2NhbGVYID0gcC53aWR0aCAvIGJveC53aWR0aFxuICBjb25zdCBzY2FsZVkgPSBwLmhlaWdodCAvIGJveC5oZWlnaHRcblxuICB0aGlzLmNoaWxkcmVuKCkuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICBjb25zdCBvID0gbmV3IFBvaW50KGJveCkudHJhbnNmb3JtKG5ldyBNYXRyaXgoY2hpbGQpLmludmVyc2UoKSlcbiAgICBjaGlsZC5zY2FsZShzY2FsZVgsIHNjYWxlWSwgby54LCBvLnkpXG4gIH0pXG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdpZHRoKHdpZHRoLCBib3ggPSB0aGlzLmJib3goKSkge1xuICBpZiAod2lkdGggPT0gbnVsbCkgcmV0dXJuIGJveC53aWR0aFxuICByZXR1cm4gdGhpcy5zaXplKHdpZHRoLCBib3guaGVpZ2h0LCBib3gpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB4KHgsIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGlmICh4ID09IG51bGwpIHJldHVybiBib3gueFxuICByZXR1cm4gdGhpcy5tb3ZlKHgsIGJveC55LCBib3gpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB5KHksIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGlmICh5ID09IG51bGwpIHJldHVybiBib3gueVxuICByZXR1cm4gdGhpcy5tb3ZlKGJveC54LCB5LCBib3gpXG59XG4iLCAiaW1wb3J0IHtcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2ssXG4gIGV4dGVuZFxufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5pbXBvcnQgKiBhcyBjb250YWluZXJHZW9tZXRyeSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvY29udGFpbmVyR2VvbWV0cnkuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEcgZXh0ZW5kcyBDb250YWluZXIge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2cnLCBub2RlKSwgYXR0cnMpXG4gIH1cbn1cblxuZXh0ZW5kKEcsIGNvbnRhaW5lckdlb21ldHJ5KVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgYSBncm91cCBlbGVtZW50XG4gICAgZ3JvdXA6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgRygpKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKEcsICdHJylcbiIsICJpbXBvcnQge1xuICBub2RlT3JOZXcsXG4gIHJlZ2lzdGVyLFxuICB3cmFwV2l0aEF0dHJDaGVjayxcbiAgZXh0ZW5kXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IHsgeGxpbmsgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvbmFtZXNwYWNlcy5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5pbXBvcnQgKiBhcyBjb250YWluZXJHZW9tZXRyeSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvY29udGFpbmVyR2VvbWV0cnkuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEEgZXh0ZW5kcyBDb250YWluZXIge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2EnLCBub2RlKSwgYXR0cnMpXG4gIH1cblxuICAvLyBMaW5rIHRhcmdldCBhdHRyaWJ1dGVcbiAgdGFyZ2V0KHRhcmdldCkge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ3RhcmdldCcsIHRhcmdldClcbiAgfVxuXG4gIC8vIExpbmsgdXJsXG4gIHRvKHVybCkge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ2hyZWYnLCB1cmwsIHhsaW5rKVxuICB9XG59XG5cbmV4dGVuZChBLCBjb250YWluZXJHZW9tZXRyeSlcblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIGEgaHlwZXJsaW5rIGVsZW1lbnRcbiAgICBsaW5rOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAodXJsKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IEEoKSkudG8odXJsKVxuICAgIH0pXG4gIH0sXG4gIEVsZW1lbnQ6IHtcbiAgICB1bmxpbmsoKSB7XG4gICAgICBjb25zdCBsaW5rID0gdGhpcy5saW5rZXIoKVxuXG4gICAgICBpZiAoIWxpbmspIHJldHVybiB0aGlzXG5cbiAgICAgIGNvbnN0IHBhcmVudCA9IGxpbmsucGFyZW50KClcblxuICAgICAgaWYgKCFwYXJlbnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVtb3ZlKClcbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5kZXggPSBwYXJlbnQuaW5kZXgobGluaylcbiAgICAgIHBhcmVudC5hZGQodGhpcywgaW5kZXgpXG5cbiAgICAgIGxpbmsucmVtb3ZlKClcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfSxcbiAgICBsaW5rVG8odXJsKSB7XG4gICAgICAvLyByZXVzZSBvbGQgbGluayBpZiBwb3NzaWJsZVxuICAgICAgbGV0IGxpbmsgPSB0aGlzLmxpbmtlcigpXG5cbiAgICAgIGlmICghbGluaykge1xuICAgICAgICBsaW5rID0gbmV3IEEoKVxuICAgICAgICB0aGlzLndyYXAobGluaylcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiB1cmwgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdXJsLmNhbGwobGluaywgbGluaylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxpbmsudG8odXJsKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpc1xuICAgIH0sXG4gICAgbGlua2VyKCkge1xuICAgICAgY29uc3QgbGluayA9IHRoaXMucGFyZW50KClcbiAgICAgIGlmIChsaW5rICYmIGxpbmsubm9kZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09PSAnYScpIHtcbiAgICAgICAgcmV0dXJuIGxpbmtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH1cbn0pXG5cbnJlZ2lzdGVyKEEsICdBJylcbiIsICJpbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyLCB3cmFwV2l0aEF0dHJDaGVjayB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IENvbnRhaW5lciBmcm9tICcuL0NvbnRhaW5lci5qcydcbmltcG9ydCBiYXNlRmluZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvc2VsZWN0b3IuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1hc2sgZXh0ZW5kcyBDb250YWluZXIge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdtYXNrJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gVW5tYXNrIGFsbCBtYXNrZWQgZWxlbWVudHMgYW5kIHJlbW92ZSBpdHNlbGZcbiAgcmVtb3ZlKCkge1xuICAgIC8vIHVubWFzayBhbGwgdGFyZ2V0c1xuICAgIHRoaXMudGFyZ2V0cygpLmZvckVhY2goZnVuY3Rpb24gKGVsKSB7XG4gICAgICBlbC51bm1hc2soKVxuICAgIH0pXG5cbiAgICAvLyByZW1vdmUgbWFzayBmcm9tIHBhcmVudFxuICAgIHJldHVybiBzdXBlci5yZW1vdmUoKVxuICB9XG5cbiAgdGFyZ2V0cygpIHtcbiAgICByZXR1cm4gYmFzZUZpbmQoJ3N2ZyBbbWFzayo9JyArIHRoaXMuaWQoKSArICddJylcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICBtYXNrOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kZWZzKCkucHV0KG5ldyBNYXNrKCkpXG4gICAgfSlcbiAgfSxcbiAgRWxlbWVudDoge1xuICAgIC8vIERpc3RyaWJ1dGUgbWFzayB0byBzdmcgZWxlbWVudFxuICAgIG1hc2tlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZSgnbWFzaycpXG4gICAgfSxcblxuICAgIG1hc2tXaXRoKGVsZW1lbnQpIHtcbiAgICAgIC8vIHVzZSBnaXZlbiBtYXNrIG9yIGNyZWF0ZSBhIG5ldyBvbmVcbiAgICAgIGNvbnN0IG1hc2tlciA9XG4gICAgICAgIGVsZW1lbnQgaW5zdGFuY2VvZiBNYXNrID8gZWxlbWVudCA6IHRoaXMucGFyZW50KCkubWFzaygpLmFkZChlbGVtZW50KVxuXG4gICAgICAvLyBhcHBseSBtYXNrXG4gICAgICByZXR1cm4gdGhpcy5hdHRyKCdtYXNrJywgJ3VybCgjJyArIG1hc2tlci5pZCgpICsgJyknKVxuICAgIH0sXG5cbiAgICAvLyBVbm1hc2sgZWxlbWVudFxuICAgIHVubWFzaygpIHtcbiAgICAgIHJldHVybiB0aGlzLmF0dHIoJ21hc2snLCBudWxsKVxuICAgIH1cbiAgfVxufSlcblxucmVnaXN0ZXIoTWFzaywgJ01hc2snKVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IEVsZW1lbnQgZnJvbSAnLi9FbGVtZW50LmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi90eXBlcy9TVkdOdW1iZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdG9wIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygnc3RvcCcsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIGFkZCBjb2xvciBzdG9wc1xuICB1cGRhdGUobykge1xuICAgIGlmICh0eXBlb2YgbyA9PT0gJ251bWJlcicgfHwgbyBpbnN0YW5jZW9mIFNWR051bWJlcikge1xuICAgICAgbyA9IHtcbiAgICAgICAgb2Zmc2V0OiBhcmd1bWVudHNbMF0sXG4gICAgICAgIGNvbG9yOiBhcmd1bWVudHNbMV0sXG4gICAgICAgIG9wYWNpdHk6IGFyZ3VtZW50c1syXVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHNldCBhdHRyaWJ1dGVzXG4gICAgaWYgKG8ub3BhY2l0eSAhPSBudWxsKSB0aGlzLmF0dHIoJ3N0b3Atb3BhY2l0eScsIG8ub3BhY2l0eSlcbiAgICBpZiAoby5jb2xvciAhPSBudWxsKSB0aGlzLmF0dHIoJ3N0b3AtY29sb3InLCBvLmNvbG9yKVxuICAgIGlmIChvLm9mZnNldCAhPSBudWxsKSB0aGlzLmF0dHIoJ29mZnNldCcsIG5ldyBTVkdOdW1iZXIoby5vZmZzZXQpKVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBHcmFkaWVudDoge1xuICAgIC8vIEFkZCBhIGNvbG9yIHN0b3BcbiAgICBzdG9wOiBmdW5jdGlvbiAob2Zmc2V0LCBjb2xvciwgb3BhY2l0eSkge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBTdG9wKCkpLnVwZGF0ZShvZmZzZXQsIGNvbG9yLCBvcGFjaXR5KVxuICAgIH1cbiAgfVxufSlcblxucmVnaXN0ZXIoU3RvcCwgJ1N0b3AnKVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IHVuQ2FtZWxDYXNlIH0gZnJvbSAnLi4vdXRpbHMvdXRpbHMuanMnXG5pbXBvcnQgRWxlbWVudCBmcm9tICcuL0VsZW1lbnQuanMnXG5cbmZ1bmN0aW9uIGNzc1J1bGUoc2VsZWN0b3IsIHJ1bGUpIHtcbiAgaWYgKCFzZWxlY3RvcikgcmV0dXJuICcnXG4gIGlmICghcnVsZSkgcmV0dXJuIHNlbGVjdG9yXG5cbiAgbGV0IHJldCA9IHNlbGVjdG9yICsgJ3snXG5cbiAgZm9yIChjb25zdCBpIGluIHJ1bGUpIHtcbiAgICByZXQgKz0gdW5DYW1lbENhc2UoaSkgKyAnOicgKyBydWxlW2ldICsgJzsnXG4gIH1cblxuICByZXQgKz0gJ30nXG5cbiAgcmV0dXJuIHJldFxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdHlsZSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3N0eWxlJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgYWRkVGV4dCh3ID0gJycpIHtcbiAgICB0aGlzLm5vZGUudGV4dENvbnRlbnQgKz0gd1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBmb250KG5hbWUsIHNyYywgcGFyYW1zID0ge30pIHtcbiAgICByZXR1cm4gdGhpcy5ydWxlKCdAZm9udC1mYWNlJywge1xuICAgICAgZm9udEZhbWlseTogbmFtZSxcbiAgICAgIHNyYzogc3JjLFxuICAgICAgLi4ucGFyYW1zXG4gICAgfSlcbiAgfVxuXG4gIHJ1bGUoc2VsZWN0b3IsIG9iaikge1xuICAgIHJldHVybiB0aGlzLmFkZFRleHQoY3NzUnVsZShzZWxlY3Rvciwgb2JqKSlcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoJ0RvbScsIHtcbiAgc3R5bGUoc2VsZWN0b3IsIG9iaikge1xuICAgIHJldHVybiB0aGlzLnB1dChuZXcgU3R5bGUoKSkucnVsZShzZWxlY3Rvciwgb2JqKVxuICB9LFxuICBmb250ZmFjZShuYW1lLCBzcmMsIHBhcmFtcykge1xuICAgIHJldHVybiB0aGlzLnB1dChuZXcgU3R5bGUoKSkuZm9udChuYW1lLCBzcmMsIHBhcmFtcylcbiAgfVxufSlcblxucmVnaXN0ZXIoU3R5bGUsICdTdHlsZScpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IHhsaW5rIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgUGF0aCBmcm9tICcuL1BhdGguanMnXG5pbXBvcnQgUGF0aEFycmF5IGZyb20gJy4uL3R5cGVzL1BhdGhBcnJheS5qcydcbmltcG9ydCBUZXh0IGZyb20gJy4vVGV4dC5qcydcbmltcG9ydCBiYXNlRmluZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvc2VsZWN0b3IuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRleHRQYXRoIGV4dGVuZHMgVGV4dCB7XG4gIC8vIEluaXRpYWxpemUgbm9kZVxuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3RleHRQYXRoJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gcmV0dXJuIHRoZSBhcnJheSBvZiB0aGUgcGF0aCB0cmFjayBlbGVtZW50XG4gIGFycmF5KCkge1xuICAgIGNvbnN0IHRyYWNrID0gdGhpcy50cmFjaygpXG5cbiAgICByZXR1cm4gdHJhY2sgPyB0cmFjay5hcnJheSgpIDogbnVsbFxuICB9XG5cbiAgLy8gUGxvdCBwYXRoIGlmIGFueVxuICBwbG90KGQpIHtcbiAgICBjb25zdCB0cmFjayA9IHRoaXMudHJhY2soKVxuICAgIGxldCBwYXRoQXJyYXkgPSBudWxsXG5cbiAgICBpZiAodHJhY2spIHtcbiAgICAgIHBhdGhBcnJheSA9IHRyYWNrLnBsb3QoZClcbiAgICB9XG5cbiAgICByZXR1cm4gZCA9PSBudWxsID8gcGF0aEFycmF5IDogdGhpc1xuICB9XG5cbiAgLy8gR2V0IHRoZSBwYXRoIGVsZW1lbnRcbiAgdHJhY2soKSB7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlKCdocmVmJylcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICB0ZXh0UGF0aDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHRleHQsIHBhdGgpIHtcbiAgICAgIC8vIENvbnZlcnQgdGV4dCB0byBpbnN0YW5jZSBpZiBuZWVkZWRcbiAgICAgIGlmICghKHRleHQgaW5zdGFuY2VvZiBUZXh0KSkge1xuICAgICAgICB0ZXh0ID0gdGhpcy50ZXh0KHRleHQpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0ZXh0LnBhdGgocGF0aClcbiAgICB9KVxuICB9LFxuICBUZXh0OiB7XG4gICAgLy8gQ3JlYXRlIHBhdGggZm9yIHRleHQgdG8gcnVuIG9uXG4gICAgcGF0aDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHRyYWNrLCBpbXBvcnROb2RlcyA9IHRydWUpIHtcbiAgICAgIGNvbnN0IHRleHRQYXRoID0gbmV3IFRleHRQYXRoKClcblxuICAgICAgLy8gaWYgdHJhY2sgaXMgYSBwYXRoLCByZXVzZSBpdFxuICAgICAgaWYgKCEodHJhY2sgaW5zdGFuY2VvZiBQYXRoKSkge1xuICAgICAgICAvLyBjcmVhdGUgcGF0aCBlbGVtZW50XG4gICAgICAgIHRyYWNrID0gdGhpcy5kZWZzKCkucGF0aCh0cmFjaylcbiAgICAgIH1cblxuICAgICAgLy8gbGluayB0ZXh0UGF0aCB0byBwYXRoIGFuZCBhZGQgY29udGVudFxuICAgICAgdGV4dFBhdGguYXR0cignaHJlZicsICcjJyArIHRyYWNrLCB4bGluaylcblxuICAgICAgLy8gVHJhbnNwbGFudCBhbGwgbm9kZXMgZnJvbSB0ZXh0IHRvIHRleHRQYXRoXG4gICAgICBsZXQgbm9kZVxuICAgICAgaWYgKGltcG9ydE5vZGVzKSB7XG4gICAgICAgIHdoaWxlICgobm9kZSA9IHRoaXMubm9kZS5maXJzdENoaWxkKSkge1xuICAgICAgICAgIHRleHRQYXRoLm5vZGUuYXBwZW5kQ2hpbGQobm9kZSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBhZGQgdGV4dFBhdGggZWxlbWVudCBhcyBjaGlsZCBub2RlIGFuZCByZXR1cm4gdGV4dFBhdGhcbiAgICAgIHJldHVybiB0aGlzLnB1dCh0ZXh0UGF0aClcbiAgICB9KSxcblxuICAgIC8vIEdldCB0aGUgdGV4dFBhdGggY2hpbGRyZW5cbiAgICB0ZXh0UGF0aCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmZpbmRPbmUoJ3RleHRQYXRoJylcbiAgICB9XG4gIH0sXG4gIFBhdGg6IHtcbiAgICAvLyBjcmVhdGVzIGEgdGV4dFBhdGggZnJvbSB0aGlzIHBhdGhcbiAgICB0ZXh0OiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAodGV4dCkge1xuICAgICAgLy8gQ29udmVydCB0ZXh0IHRvIGluc3RhbmNlIGlmIG5lZWRlZFxuICAgICAgaWYgKCEodGV4dCBpbnN0YW5jZW9mIFRleHQpKSB7XG4gICAgICAgIHRleHQgPSBuZXcgVGV4dCgpLmFkZFRvKHRoaXMucGFyZW50KCkpLnRleHQodGV4dClcbiAgICAgIH1cblxuICAgICAgLy8gQ3JlYXRlIHRleHRQYXRoIGZyb20gdGV4dCBhbmQgcGF0aCBhbmQgcmV0dXJuXG4gICAgICByZXR1cm4gdGV4dC5wYXRoKHRoaXMpXG4gICAgfSksXG5cbiAgICB0YXJnZXRzKCkge1xuICAgICAgcmV0dXJuIGJhc2VGaW5kKCdzdmcgdGV4dFBhdGgnKS5maWx0ZXIoKG5vZGUpID0+IHtcbiAgICAgICAgcmV0dXJuIChub2RlLmF0dHIoJ2hyZWYnKSB8fCAnJykuaW5jbHVkZXModGhpcy5pZCgpKVxuICAgICAgfSlcblxuICAgICAgLy8gRG9lcyBub3Qgd29yayBpbiBJRTExLiBVc2Ugd2hlbiBJRSBzdXBwb3J0IGlzIGRyb3BwZWRcbiAgICAgIC8vIHJldHVybiBiYXNlRmluZCgnc3ZnIHRleHRQYXRoWyp8aHJlZio9JyArIHRoaXMuaWQoKSArICddJylcbiAgICB9XG4gIH1cbn0pXG5cblRleHRQYXRoLnByb3RvdHlwZS5Nb3JwaEFycmF5ID0gUGF0aEFycmF5XG5yZWdpc3RlcihUZXh0UGF0aCwgJ1RleHRQYXRoJylcbiIsICJpbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyLCB3cmFwV2l0aEF0dHJDaGVjayB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IHsgeGxpbmsgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvbmFtZXNwYWNlcy5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBVc2UgZXh0ZW5kcyBTaGFwZSB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygndXNlJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gVXNlIGVsZW1lbnQgYXMgYSByZWZlcmVuY2VcbiAgdXNlKGVsZW1lbnQsIGZpbGUpIHtcbiAgICAvLyBTZXQgbGluZWQgZWxlbWVudFxuICAgIHJldHVybiB0aGlzLmF0dHIoJ2hyZWYnLCAoZmlsZSB8fCAnJykgKyAnIycgKyBlbGVtZW50LCB4bGluaylcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgYSB1c2UgZWxlbWVudFxuICAgIHVzZTogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKGVsZW1lbnQsIGZpbGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgVXNlKCkpLnVzZShlbGVtZW50LCBmaWxlKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFVzZSwgJ1VzZScpXG4iLCAiLyogT3B0aW9uYWwgTW9kdWxlcyAqL1xuaW1wb3J0ICcuL21vZHVsZXMvb3B0aW9uYWwvYXJyYW5nZS5qcydcbmltcG9ydCAnLi9tb2R1bGVzL29wdGlvbmFsL2NsYXNzLmpzJ1xuaW1wb3J0ICcuL21vZHVsZXMvb3B0aW9uYWwvY3NzLmpzJ1xuaW1wb3J0ICcuL21vZHVsZXMvb3B0aW9uYWwvZGF0YS5qcydcbmltcG9ydCAnLi9tb2R1bGVzL29wdGlvbmFsL21lbW9yeS5qcydcbmltcG9ydCAnLi9tb2R1bGVzL29wdGlvbmFsL3N1Z2FyLmpzJ1xuaW1wb3J0ICcuL21vZHVsZXMvb3B0aW9uYWwvdHJhbnNmb3JtLmpzJ1xuXG5pbXBvcnQgeyBleHRlbmQsIG1ha2VJbnN0YW5jZSB9IGZyb20gJy4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IGdldE1ldGhvZE5hbWVzLCBnZXRNZXRob2RzRm9yIH0gZnJvbSAnLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IEJveCBmcm9tICcuL3R5cGVzL0JveC5qcydcbmltcG9ydCBDb2xvciBmcm9tICcuL3R5cGVzL0NvbG9yLmpzJ1xuaW1wb3J0IENvbnRhaW5lciBmcm9tICcuL2VsZW1lbnRzL0NvbnRhaW5lci5qcydcbmltcG9ydCBEZWZzIGZyb20gJy4vZWxlbWVudHMvRGVmcy5qcydcbmltcG9ydCBEb20gZnJvbSAnLi9lbGVtZW50cy9Eb20uanMnXG5pbXBvcnQgRWxlbWVudCBmcm9tICcuL2VsZW1lbnRzL0VsZW1lbnQuanMnXG5pbXBvcnQgRWxsaXBzZSBmcm9tICcuL2VsZW1lbnRzL0VsbGlwc2UuanMnXG5pbXBvcnQgRXZlbnRUYXJnZXQgZnJvbSAnLi90eXBlcy9FdmVudFRhcmdldC5qcydcbmltcG9ydCBGcmFnbWVudCBmcm9tICcuL2VsZW1lbnRzL0ZyYWdtZW50LmpzJ1xuaW1wb3J0IEdyYWRpZW50IGZyb20gJy4vZWxlbWVudHMvR3JhZGllbnQuanMnXG5pbXBvcnQgSW1hZ2UgZnJvbSAnLi9lbGVtZW50cy9JbWFnZS5qcydcbmltcG9ydCBMaW5lIGZyb20gJy4vZWxlbWVudHMvTGluZS5qcydcbmltcG9ydCBMaXN0IGZyb20gJy4vdHlwZXMvTGlzdC5qcydcbmltcG9ydCBNYXJrZXIgZnJvbSAnLi9lbGVtZW50cy9NYXJrZXIuanMnXG5pbXBvcnQgTWF0cml4IGZyb20gJy4vdHlwZXMvTWF0cml4LmpzJ1xuaW1wb3J0IE1vcnBoYWJsZSwge1xuICBOb25Nb3JwaGFibGUsXG4gIE9iamVjdEJhZyxcbiAgVHJhbnNmb3JtQmFnLFxuICBtYWtlTW9ycGhhYmxlLFxuICByZWdpc3Rlck1vcnBoYWJsZVR5cGVcbn0gZnJvbSAnLi9hbmltYXRpb24vTW9ycGhhYmxlLmpzJ1xuaW1wb3J0IFBhdGggZnJvbSAnLi9lbGVtZW50cy9QYXRoLmpzJ1xuaW1wb3J0IFBhdGhBcnJheSBmcm9tICcuL3R5cGVzL1BhdGhBcnJheS5qcydcbmltcG9ydCBQYXR0ZXJuIGZyb20gJy4vZWxlbWVudHMvUGF0dGVybi5qcydcbmltcG9ydCBQb2ludEFycmF5IGZyb20gJy4vdHlwZXMvUG9pbnRBcnJheS5qcydcbmltcG9ydCBQb2ludCBmcm9tICcuL3R5cGVzL1BvaW50LmpzJ1xuaW1wb3J0IFBvbHlnb24gZnJvbSAnLi9lbGVtZW50cy9Qb2x5Z29uLmpzJ1xuaW1wb3J0IFBvbHlsaW5lIGZyb20gJy4vZWxlbWVudHMvUG9seWxpbmUuanMnXG5pbXBvcnQgUmVjdCBmcm9tICcuL2VsZW1lbnRzL1JlY3QuanMnXG5pbXBvcnQgUnVubmVyIGZyb20gJy4vYW5pbWF0aW9uL1J1bm5lci5qcydcbmltcG9ydCBTVkdBcnJheSBmcm9tICcuL3R5cGVzL1NWR0FycmF5LmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuL3R5cGVzL1NWR051bWJlci5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL2VsZW1lbnRzL1NoYXBlLmpzJ1xuaW1wb3J0IFN2ZyBmcm9tICcuL2VsZW1lbnRzL1N2Zy5qcydcbmltcG9ydCBTeW1ib2wgZnJvbSAnLi9lbGVtZW50cy9TeW1ib2wuanMnXG5pbXBvcnQgVGV4dCBmcm9tICcuL2VsZW1lbnRzL1RleHQuanMnXG5pbXBvcnQgVHNwYW4gZnJvbSAnLi9lbGVtZW50cy9Uc3Bhbi5qcydcbmltcG9ydCAqIGFzIGRlZmF1bHRzIGZyb20gJy4vbW9kdWxlcy9jb3JlL2RlZmF1bHRzLmpzJ1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscy91dGlscy5qcydcbmltcG9ydCAqIGFzIG5hbWVzcGFjZXMgZnJvbSAnLi9tb2R1bGVzL2NvcmUvbmFtZXNwYWNlcy5qcydcbmltcG9ydCAqIGFzIHJlZ2V4IGZyb20gJy4vbW9kdWxlcy9jb3JlL3JlZ2V4LmpzJ1xuXG5leHBvcnQge1xuICBNb3JwaGFibGUsXG4gIHJlZ2lzdGVyTW9ycGhhYmxlVHlwZSxcbiAgbWFrZU1vcnBoYWJsZSxcbiAgVHJhbnNmb3JtQmFnLFxuICBPYmplY3RCYWcsXG4gIE5vbk1vcnBoYWJsZVxufVxuXG5leHBvcnQgeyBkZWZhdWx0cywgdXRpbHMsIG5hbWVzcGFjZXMsIHJlZ2V4IH1cbmV4cG9ydCBjb25zdCBTVkcgPSBtYWtlSW5zdGFuY2VcbmV4cG9ydCB7IGRlZmF1bHQgYXMgcGFyc2VyIH0gZnJvbSAnLi9tb2R1bGVzL2NvcmUvcGFyc2VyLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaW5kIH0gZnJvbSAnLi9tb2R1bGVzL2NvcmUvc2VsZWN0b3IuanMnXG5leHBvcnQgKiBmcm9tICcuL21vZHVsZXMvY29yZS9ldmVudC5qcydcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvYWRvcHRlci5qcydcbmV4cG9ydCB7XG4gIGdldFdpbmRvdyxcbiAgcmVnaXN0ZXJXaW5kb3csXG4gIHJlc3RvcmVXaW5kb3csXG4gIHNhdmVXaW5kb3csXG4gIHdpdGhXaW5kb3dcbn0gZnJvbSAnLi91dGlscy93aW5kb3cuanMnXG5cbi8qIEFuaW1hdGlvbiBNb2R1bGVzICovXG5leHBvcnQgeyBkZWZhdWx0IGFzIEFuaW1hdG9yIH0gZnJvbSAnLi9hbmltYXRpb24vQW5pbWF0b3IuanMnXG5leHBvcnQge1xuICBDb250cm9sbGVyLFxuICBFYXNlLFxuICBQSUQsXG4gIFNwcmluZyxcbiAgZWFzaW5nXG59IGZyb20gJy4vYW5pbWF0aW9uL0NvbnRyb2xsZXIuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXVlIH0gZnJvbSAnLi9hbmltYXRpb24vUXVldWUuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFJ1bm5lciB9IGZyb20gJy4vYW5pbWF0aW9uL1J1bm5lci5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVGltZWxpbmUgfSBmcm9tICcuL2FuaW1hdGlvbi9UaW1lbGluZS5qcydcblxuLyogVHlwZXMgKi9cbmV4cG9ydCB7IGRlZmF1bHQgYXMgQXJyYXkgfSBmcm9tICcuL3R5cGVzL1NWR0FycmF5LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBCb3ggfSBmcm9tICcuL3R5cGVzL0JveC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29sb3IgfSBmcm9tICcuL3R5cGVzL0NvbG9yLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBFdmVudFRhcmdldCB9IGZyb20gJy4vdHlwZXMvRXZlbnRUYXJnZXQuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIE1hdHJpeCB9IGZyb20gJy4vdHlwZXMvTWF0cml4LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBOdW1iZXIgfSBmcm9tICcuL3R5cGVzL1NWR051bWJlci5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUGF0aEFycmF5IH0gZnJvbSAnLi90eXBlcy9QYXRoQXJyYXkuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBvaW50IH0gZnJvbSAnLi90eXBlcy9Qb2ludC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUG9pbnRBcnJheSB9IGZyb20gJy4vdHlwZXMvUG9pbnRBcnJheS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTGlzdCB9IGZyb20gJy4vdHlwZXMvTGlzdC5qcydcblxuLyogRWxlbWVudHMgKi9cbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ2lyY2xlIH0gZnJvbSAnLi9lbGVtZW50cy9DaXJjbGUuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIENsaXBQYXRoIH0gZnJvbSAnLi9lbGVtZW50cy9DbGlwUGF0aC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29udGFpbmVyIH0gZnJvbSAnLi9lbGVtZW50cy9Db250YWluZXIuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIERlZnMgfSBmcm9tICcuL2VsZW1lbnRzL0RlZnMuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIERvbSB9IGZyb20gJy4vZWxlbWVudHMvRG9tLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBFbGVtZW50IH0gZnJvbSAnLi9lbGVtZW50cy9FbGVtZW50LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBFbGxpcHNlIH0gZnJvbSAnLi9lbGVtZW50cy9FbGxpcHNlLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGb3JlaWduT2JqZWN0IH0gZnJvbSAnLi9lbGVtZW50cy9Gb3JlaWduT2JqZWN0LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGcmFnbWVudCB9IGZyb20gJy4vZWxlbWVudHMvRnJhZ21lbnQuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIEdyYWRpZW50IH0gZnJvbSAnLi9lbGVtZW50cy9HcmFkaWVudC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRyB9IGZyb20gJy4vZWxlbWVudHMvRy5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQSB9IGZyb20gJy4vZWxlbWVudHMvQS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSW1hZ2UgfSBmcm9tICcuL2VsZW1lbnRzL0ltYWdlLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBMaW5lIH0gZnJvbSAnLi9lbGVtZW50cy9MaW5lLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBNYXJrZXIgfSBmcm9tICcuL2VsZW1lbnRzL01hcmtlci5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTWFzayB9IGZyb20gJy4vZWxlbWVudHMvTWFzay5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUGF0aCB9IGZyb20gJy4vZWxlbWVudHMvUGF0aC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUGF0dGVybiB9IGZyb20gJy4vZWxlbWVudHMvUGF0dGVybi5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUG9seWdvbiB9IGZyb20gJy4vZWxlbWVudHMvUG9seWdvbi5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUG9seWxpbmUgfSBmcm9tICcuL2VsZW1lbnRzL1BvbHlsaW5lLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSZWN0IH0gZnJvbSAnLi9lbGVtZW50cy9SZWN0LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBTaGFwZSB9IGZyb20gJy4vZWxlbWVudHMvU2hhcGUuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFN0b3AgfSBmcm9tICcuL2VsZW1lbnRzL1N0b3AuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFN0eWxlIH0gZnJvbSAnLi9lbGVtZW50cy9TdHlsZS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU3ZnIH0gZnJvbSAnLi9lbGVtZW50cy9TdmcuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFN5bWJvbCB9IGZyb20gJy4vZWxlbWVudHMvU3ltYm9sLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUZXh0IH0gZnJvbSAnLi9lbGVtZW50cy9UZXh0LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUZXh0UGF0aCB9IGZyb20gJy4vZWxlbWVudHMvVGV4dFBhdGguanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFRzcGFuIH0gZnJvbSAnLi9lbGVtZW50cy9Uc3Bhbi5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVXNlIH0gZnJvbSAnLi9lbGVtZW50cy9Vc2UuanMnXG5cbmV4dGVuZChbU3ZnLCBTeW1ib2wsIEltYWdlLCBQYXR0ZXJuLCBNYXJrZXJdLCBnZXRNZXRob2RzRm9yKCd2aWV3Ym94JykpXG5cbmV4dGVuZChbTGluZSwgUG9seWxpbmUsIFBvbHlnb24sIFBhdGhdLCBnZXRNZXRob2RzRm9yKCdtYXJrZXInKSlcblxuZXh0ZW5kKFRleHQsIGdldE1ldGhvZHNGb3IoJ1RleHQnKSlcbmV4dGVuZChQYXRoLCBnZXRNZXRob2RzRm9yKCdQYXRoJykpXG5cbmV4dGVuZChEZWZzLCBnZXRNZXRob2RzRm9yKCdEZWZzJykpXG5cbmV4dGVuZChbVGV4dCwgVHNwYW5dLCBnZXRNZXRob2RzRm9yKCdUc3BhbicpKVxuXG5leHRlbmQoW1JlY3QsIEVsbGlwc2UsIEdyYWRpZW50LCBSdW5uZXJdLCBnZXRNZXRob2RzRm9yKCdyYWRpdXMnKSlcblxuZXh0ZW5kKEV2ZW50VGFyZ2V0LCBnZXRNZXRob2RzRm9yKCdFdmVudFRhcmdldCcpKVxuZXh0ZW5kKERvbSwgZ2V0TWV0aG9kc0ZvcignRG9tJykpXG5leHRlbmQoRWxlbWVudCwgZ2V0TWV0aG9kc0ZvcignRWxlbWVudCcpKVxuZXh0ZW5kKFNoYXBlLCBnZXRNZXRob2RzRm9yKCdTaGFwZScpKVxuZXh0ZW5kKFtDb250YWluZXIsIEZyYWdtZW50XSwgZ2V0TWV0aG9kc0ZvcignQ29udGFpbmVyJykpXG5leHRlbmQoR3JhZGllbnQsIGdldE1ldGhvZHNGb3IoJ0dyYWRpZW50JykpXG5cbmV4dGVuZChSdW5uZXIsIGdldE1ldGhvZHNGb3IoJ1J1bm5lcicpKVxuXG5MaXN0LmV4dGVuZChnZXRNZXRob2ROYW1lcygpKVxuXG5yZWdpc3Rlck1vcnBoYWJsZVR5cGUoW1xuICBTVkdOdW1iZXIsXG4gIENvbG9yLFxuICBCb3gsXG4gIE1hdHJpeCxcbiAgU1ZHQXJyYXksXG4gIFBvaW50QXJyYXksXG4gIFBhdGhBcnJheSxcbiAgUG9pbnRcbl0pXG5cbm1ha2VNb3JwaGFibGUoKVxuIiwgImltcG9ydCB7IGpvaW4sIGRpcm5hbWUgfSBmcm9tICdub2RlOnBhdGgnXG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSAnbm9kZTp1cmwnXG5cbmNvbnN0IGZpbGVEaXJuYW1lID0gZGlybmFtZShmaWxlVVJMVG9QYXRoKGltcG9ydC5tZXRhLnVybCkpXG5cbmV4cG9ydCBjb25zdCBmb250U2l6ZSA9IDE2XG5leHBvcnQgY29uc3QgZm9udEZhbWlseSA9ICdzYW5zLXNlcmlmJ1xuZXhwb3J0IGNvbnN0IGZvbnREaXIgPSBqb2luKGZpbGVEaXJuYW1lLCAnLi4vLi4vJywgJ2ZvbnRzLycpXG5leHBvcnQgY29uc3QgZm9udEZhbWlseU1hcHBpbmdzID0ge1xuICAnc2Fucy1zZXJpZic6ICdPcGVuU2Fucy1SZWd1bGFyLnR0ZicsXG4gICdPcGVuIFNhbnMnOiAnT3BlblNhbnMtUmVndWxhci50dGYnXG59XG4iLCAiZXhwb3J0IGNvbnN0IGV4dGVuZCA9ICguLi5tb2R1bGVzKSA9PiB7XG4gIHZhciBtZXRob2RzLCBrZXksIGlcblxuICAvLyBHZXQgb2JqZWN0IHdpdGggZXh0ZW5zaW9uc1xuICBtZXRob2RzID0gbW9kdWxlcy5wb3AoKVxuXG4gIGZvciAoaSA9IG1vZHVsZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICBmb3IgKGtleSBpbiBtZXRob2RzKSB7IG1vZHVsZXNbaV0ucHJvdG90eXBlW2tleV0gPSBtZXRob2RzW2tleV0gfVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBleHRlbmRTdGF0aWMgPSAoLi4ubW9kdWxlcykgPT4ge1xuICB2YXIgbWV0aG9kcywga2V5LCBpXG5cbiAgLy8gR2V0IG9iamVjdCB3aXRoIGV4dGVuc2lvbnNcbiAgbWV0aG9kcyA9IG1vZHVsZXMucG9wKClcblxuICBmb3IgKGkgPSBtb2R1bGVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgZm9yIChrZXkgaW4gbWV0aG9kcykgeyBtb2R1bGVzW2ldW2tleV0gPSBtZXRob2RzW2tleV0gfVxuICB9XG59XG5cbi8vIFRPRE86IHJlZmFjdG9yIHNvIHRoYXQgaXQgdGFrZXMgYSBjbGFzc1xuZXhwb3J0IGNvbnN0IG1peGluID0gKG1peGluLCBfY2xhc3MpID0+IHtcbiAgY29uc3QgZGVzY3JpcHRvcnMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhtaXhpbilcbiAgLy8gY29uc3QgYWxsID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMobWl4aW4pXG5cbiAgLy8gY29uc3QgcHJvcE5hbWVzID0gT2JqZWN0LmtleXMoZGVzY3JpcHRvcnMpXG4gIC8vIGNvbnN0IG1ldGhvZE5hbWVzID0gYWxsLmZpbHRlcihwID0+ICFwcm9wTmFtZXMuaW5jbHVkZXMocCkpXG5cbiAgLy8gZm9yIChjb25zdCBtZXRob2Qgb2YgbWV0aG9kTmFtZXMpIHtcbiAgLy8gICBfY2xhc3MucHJvdG90eXBlW21ldGhvZF0gPSBtaXhpblttZXRob2RdXG4gIC8vIH1cblxuICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhfY2xhc3MucHJvdG90eXBlLCBkZXNjcmlwdG9ycylcbn1cbiIsICJjb25zdCAkID0gU3ltYm9sKCdwcml2YXRlIHByb3BlcnRpZXMnKVxuXG5leHBvcnQgY2xhc3MgRXZlbnRUYXJnZXQge1xuICBjb25zdHJ1Y3RvciAoKSB7XG4gICAgdGhpc1skXSA9IHt9XG4gICAgdGhpc1skXS5saXN0ZW5lcnMgPSB7fVxuICB9XG5cbiAgYWRkRXZlbnRMaXN0ZW5lciAodHlwZSwgY2FsbGJhY2spIHtcbiAgICBpZiAoISh0eXBlIGluIHRoaXNbJF0ubGlzdGVuZXJzKSkge1xuICAgICAgdGhpc1skXS5saXN0ZW5lcnNbdHlwZV0gPSBbXVxuICAgIH1cbiAgICB0aGlzWyRdLmxpc3RlbmVyc1t0eXBlXS5wdXNoKGNhbGxiYWNrKVxuICB9XG5cbiAgZGlzcGF0Y2hFdmVudCAoZXZlbnQpIHtcbiAgICBpZiAoIShldmVudC50eXBlIGluIHRoaXNbJF0ubGlzdGVuZXJzKSkgeyByZXR1cm4gdHJ1ZSB9XG5cbiAgICB2YXIgc3RhY2sgPSB0aGlzWyRdLmxpc3RlbmVyc1tldmVudC50eXBlXVxuICAgIGV2ZW50LnRhcmdldCA9IHRoaXNcblxuICAgIHN0YWNrLmZvckVhY2goZnVuY3Rpb24gKGVsKSB7XG4gICAgICBlbChldmVudClcbiAgICB9KVxuXG4gICAgcmV0dXJuICFldmVudC5kZWZhdWx0UHJldmVudGVkXG4gIH1cblxuICByZW1vdmVFdmVudExpc3RlbmVyICh0eXBlLCBjYWxsYmFjaykge1xuICAgIGlmICghKHR5cGUgaW4gdGhpc1skXS5saXN0ZW5lcnMpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB2YXIgc3RhY2sgPSB0aGlzWyRdLmxpc3RlbmVyc1t0eXBlXVxuICAgIGZvciAodmFyIGkgPSAwLCBpbCA9IHN0YWNrLmxlbmd0aDsgaSA8IGlsOyBpKyspIHtcbiAgICAgIGlmIChzdGFja1tpXSA9PT0gY2FsbGJhY2spIHtcbiAgICAgICAgc3RhY2suc3BsaWNlKGksIDEpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4iLCAiY29uc3QgaHRtbEVudGl0aWVzID0gZnVuY3Rpb24gKHN0cikge1xuICByZXR1cm4gU3RyaW5nKHN0cikucmVwbGFjZSgvJi9nLCAnJmFtcDsnKS5yZXBsYWNlKC88L2csICcmbHQ7JykucmVwbGFjZSgvPi9nLCAnJmd0OycpLnJlcGxhY2UoL1wiL2csICcmcXVvdDsnKVxufVxuXG52YXIgZW1wdHlFbGVtZW50cyA9IHtcbiAgYnI6IHRydWUsXG4gIGhyOiB0cnVlLFxuICBpbWc6IHRydWUsXG4gIGxpbms6IHRydWVcbn1cblxuZXhwb3J0IGNvbnN0IHRhZyA9IGZ1bmN0aW9uIChub2RlKSB7XG4gIGNvbnN0IGF0dHJzID0gWyAuLi5ub2RlLmF0dHJzIF0ubWFwKGZ1bmN0aW9uIChub2RlKSB7XG4gICAgcmV0dXJuIChub2RlLnByZWZpeCA/IG5vZGUucHJlZml4ICsgJzonIDogJycpICsgbm9kZS5sb2NhbE5hbWUgKyAnPVwiJyArIGh0bWxFbnRpdGllcyhub2RlLnZhbHVlKSArICdcIidcbiAgfSlcblxuICBjb25zdCB7IHByZWZpeCwgbG9jYWxOYW1lIH0gPSBub2RlXG4gIGNvbnN0IHF1YWxpZmllZE5hbWUgPSAocHJlZml4ID8gcHJlZml4ICsgJzonIDogJycpICsgbG9jYWxOYW1lXG5cbiAgcmV0dXJuICc8JyArIFtdLmNvbmNhdChxdWFsaWZpZWROYW1lLCBhdHRycykuam9pbignICcpICsgJz4nICsgKGVtcHR5RWxlbWVudHNbcXVhbGlmaWVkTmFtZS50b0xvd2VyQ2FzZSgpXSA/ICcnIDogbm9kZS5pbm5lckhUTUwgKyAnPC8nICsgcXVhbGlmaWVkTmFtZSArICc+Jylcbn1cblxuZXhwb3J0IGNvbnN0IGNsb25lTm9kZSA9IGZ1bmN0aW9uIChub2RlKSB7XG5cbiAgY29uc3QgeyBwcmVmaXgsIGxvY2FsTmFtZSwgbmFtZXNwYWNlVVJJOiBucywgbm9kZVZhbHVlLCBvd25lckRvY3VtZW50IH0gPSBub2RlXG5cbiAgLy8gQnVpbGQgdXAgdGhlIGNvcnJlY3RseSBjYXNlZCBxdWFsaWZpZWQgbmFtZVxuICBjb25zdCBxdWFsaWZpZWROYW1lID0gKHByZWZpeCA/IHByZWZpeCArICc6JyA6ICcnKSArIGxvY2FsTmFtZVxuXG4gIC8vIENoZWNrIGlmIG5vZGUgd2FzIGNyZWF0ZWQgdXNpbmcgbm9uLW5hbWVzcGFjZSBmdW5jdGlvbiB3aGljaCBjYW4gbGVhZCB0byA6IGluIHRoZSBsb2NhbE5hbWUuXG4gIC8vIFRoaXMgY2hlY2sgYWxsb3dzIGZhbHNlIG5lZ2F0aXZlcyBiZWNhdXNlIGBsb2NhbGAgb25seSBtYXR0ZXJzIElGIHRoZXJlIGFyZSA6IGluIHRoZSBsb2NhbE5hbWVcbiAgLy8gYW5kIHdlIGRvbnQgY2FyZSBhYm91dCBpdCB3aGVuIHRoZXJlIGFyZSBub25cbiAgY29uc3QgbG9jYWwgPSBsb2NhbE5hbWUuaW5jbHVkZXMoJzonKVxuXG4gIHZhciBjbG9uZSA9IG5ldyBub2RlLmNvbnN0cnVjdG9yKHF1YWxpZmllZE5hbWUsIHtcbiAgICBhdHRyczogbmV3IFNldChbIC4uLm5vZGUuYXR0cnMgXS5tYXAobm9kZSA9PiBub2RlLmNsb25lTm9kZSgpKSksXG4gICAgbm9kZVZhbHVlLFxuICAgIG93bmVyRG9jdW1lbnQsXG4gICAgbG9jYWxcbiAgfSwgbnMpXG5cbiAgcmV0dXJuIGNsb25lXG59XG4iLCAiXG5leHBvcnQgY29uc3Qgc3ZnID0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJ1xuZXhwb3J0IGNvbnN0IHhsaW5rID0gJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnXG5leHBvcnQgY29uc3QgaHRtbCA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJ1xuZXhwb3J0IGNvbnN0IG1hdGhtbCA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MJ1xuZXhwb3J0IGNvbnN0IHhtbCA9ICdodHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2UnXG5leHBvcnQgY29uc3QgeG1sbnMgPSAnaHR0cDovL3d3dy53My5vcmcvMjAwMC94bWxucy8nXG4iLCAiaW1wb3J0IHsgZXh0ZW5kLCBleHRlbmRTdGF0aWMgfSBmcm9tICcuLi91dGlscy9vYmplY3RDcmVhdGlvblV0aWxzLmpzJ1xuXG5pbXBvcnQgeyBFdmVudFRhcmdldCB9IGZyb20gJy4vRXZlbnRUYXJnZXQuanMnXG5pbXBvcnQgeyBjbG9uZU5vZGUgfSBmcm9tICcuLi91dGlscy90YWdVdGlscy5qcydcbmltcG9ydCB7IGh0bWwgfSBmcm9tICcuLi91dGlscy9uYW1lc3BhY2VzLmpzJ1xuXG5jb25zdCBub2RlVHlwZXMgPSB7XG4gIEVMRU1FTlRfTk9ERTogMSxcbiAgQVRUUklCVVRFX05PREU6IDIsXG4gIFRFWFRfTk9ERTogMyxcbiAgQ0RBVEFfU0VDVElPTl9OT0RFOiA0LFxuICBFTlRJVFlfUkVGRVJFTkNFX05PREU6IDUsXG4gIEVOVElUWV9OT0RFOiA2LFxuICBQUk9DRVNTSU5HX0lOU1RSVUNUSU9OX05PREU6IDcsXG4gIENPTU1FTlRfTk9ERTogOCxcbiAgRE9DVU1FTlRfTk9ERTogOSxcbiAgRE9DVU1FTlRfVFlQRV9OT0RFOiAxMCxcbiAgRE9DVU1FTlRfRlJBR01FTlRfTk9ERTogMTEsXG4gIE5PVEFUSU9OX05PREU6IDEyXG59XG5cbmV4cG9ydCBjbGFzcyBOb2RlIGV4dGVuZHMgRXZlbnRUYXJnZXQge1xuICBjb25zdHJ1Y3RvciAobmFtZSA9ICcnLCBwcm9wcyA9IHt9LCBucyA9IG51bGwpIHtcbiAgICBzdXBlcigpXG5cbiAgICAvLyBJZiBwcm9wcy5sb2NhbCBpcyB0cnVlLCB0aGUgZWxlbWVudCB3YXMgTm9kZSB3YXMgY3JlYXRlZCB3aXRoIHRoZSBub24tbmFtZXNwYWNlIGZ1bmN0aW9uXG4gICAgLy8gdGhhdCBtZWFucyB3aGF0ZXZlciB3YXMgcGFzc2VkIGFzIG5hbWUgaXMgdGhlIGxvY2FsIG5hbWUgZXZlbiB0aG91Z2ggaXQgbWlnaHQgbG9vayBsaWtlIGEgcHJlZml4XG4gICAgaWYgKG5hbWUuaW5jbHVkZXMoJzonKSAmJiAhcHJvcHMubG9jYWwpIHtcbiAgICAgIDtbIHRoaXMucHJlZml4LCB0aGlzLmxvY2FsTmFtZSBdID0gbmFtZS5zcGxpdCgnOicpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9jYWxOYW1lID0gbmFtZVxuICAgICAgdGhpcy5wcmVmaXggPSBudWxsXG4gICAgfVxuXG4gICAgLy8gRm9sbG93IHNwZWMgYW5kIHVwcGVyY2FzZSBub2RlTmFtZSBmb3IgaHRtbFxuICAgIHRoaXMubm9kZU5hbWUgPSBucyA9PT0gaHRtbCA/IG5hbWUudG9VcHBlckNhc2UoKSA6IG5hbWVcblxuICAgIHRoaXMubmFtZXNwYWNlVVJJID0gbnNcbiAgICB0aGlzLm5vZGVUeXBlID0gTm9kZS5FTEVNRU5UX05PREVcbiAgICB0aGlzLm5vZGVWYWx1ZSA9IHByb3BzLm5vZGVWYWx1ZSAhPSBudWxsID8gcHJvcHMubm9kZVZhbHVlIDogbnVsbFxuICAgIHRoaXMuY2hpbGROb2RlcyA9IFtdXG5cbiAgICB0aGlzLmF0dHJzID0gcHJvcHMuYXR0cnMgfHwgbmV3IFNldCgpXG5cbiAgICB0aGlzLm93bmVyRG9jdW1lbnQgPSBwcm9wcy5vd25lckRvY3VtZW50IHx8IG51bGxcbiAgICB0aGlzLnBhcmVudE5vZGUgPSBudWxsXG5cbiAgICAvLyB0aGlzLm5hbWVzcGFjZXMgPSB7fVxuICAgIC8vIGlmICh0aGlzLnByZWZpeCkge1xuICAgIC8vICAgdGhpcy5uYW1lc3BhY2VzW3RoaXMucHJlZml4XSA9IG5zXG4gICAgLy8gfSBlbHNlIHtcbiAgICAvLyAgIHRoaXMubmFtZXNwYWNlcy5kZWZhdWx0ID0gbnNcbiAgICAvLyB9XG5cbiAgICBpZiAocHJvcHMuY2hpbGROb2Rlcykge1xuICAgICAgZm9yIChsZXQgaSA9IDAsIGlsID0gcHJvcHMuY2hpbGROb2Rlcy5sZW5ndGg7IGkgPCBpbDsgKytpKSB7XG4gICAgICAgIHRoaXMuYXBwZW5kQ2hpbGQocHJvcHMuY2hpbGROb2Rlc1tpXSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhcHBlbmRDaGlsZCAobm9kZSkge1xuICAgIHJldHVybiB0aGlzLmluc2VydEJlZm9yZShub2RlKVxuICB9XG5cbiAgY2xvbmVOb2RlIChkZWVwID0gZmFsc2UpIHtcbiAgICBjb25zdCBjbG9uZSA9IGNsb25lTm9kZSh0aGlzKVxuXG4gICAgaWYgKGRlZXApIHtcbiAgICAgIHRoaXMuY2hpbGROb2Rlcy5mb3JFYWNoKGZ1bmN0aW9uIChlbCkge1xuICAgICAgICBjb25zdCBub2RlID0gZWwuY2xvbmVOb2RlKGRlZXApXG4gICAgICAgIGNsb25lLmFwcGVuZENoaWxkKG5vZGUpXG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiBjbG9uZVxuICB9XG5cbiAgY29udGFpbnMgKG5vZGUpIHtcbiAgICBpZiAobm9kZSA9PT0gdGhpcykgcmV0dXJuIGZhbHNlXG5cbiAgICB3aGlsZSAobm9kZS5wYXJlbnROb2RlKSB7XG4gICAgICBpZiAobm9kZSA9PT0gdGhpcykgcmV0dXJuIHRydWVcbiAgICAgIG5vZGUgPSBub2RlLnBhcmVudE5vZGVcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBnZXRSb290Tm9kZSAoKSB7XG4gICAgaWYgKCF0aGlzLnBhcmVudE5vZGUgfHwgdGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5ET0NVTUVOVF9OT0RFKSByZXR1cm4gdGhpc1xuICAgIHJldHVybiB0aGlzLnBhcmVudE5vZGUuZ2V0Um9vdE5vZGUoKVxuICB9XG5cbiAgaGFzQ2hpbGROb2RlcyAoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5jaGlsZE5vZGVzLmxlbmd0aFxuICB9XG5cbiAgaW5zZXJ0QmVmb3JlIChub2RlLCBiZWZvcmUpIHtcbiAgICBsZXQgaW5kZXggPSB0aGlzLmNoaWxkTm9kZXMuaW5kZXhPZihiZWZvcmUpXG4gICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgaW5kZXggPSB0aGlzLmNoaWxkTm9kZXMubGVuZ3RoXG4gICAgfVxuXG4gICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5vZGUuRE9DVU1FTlRfRlJBR01FTlRfTk9ERSkge1xuICAgICAgbGV0IGNoaWxkXG4gICAgICBsZXQgb2xkQ2hpbGQgPSBiZWZvcmVcbiAgICAgIHdoaWxlICgoY2hpbGQgPSBub2RlLmNoaWxkTm9kZXMucG9wKCkpKSB7XG4gICAgICAgIHRoaXMuaW5zZXJ0QmVmb3JlKGNoaWxkLCBvbGRDaGlsZClcbiAgICAgICAgb2xkQ2hpbGQgPSBjaGlsZFxuICAgICAgfVxuICAgICAgcmV0dXJuIG5vZGVcbiAgICB9XG5cbiAgICBpZiAobm9kZS5wYXJlbnROb2RlKSB7XG4gICAgICBub2RlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobm9kZSlcbiAgICB9XG5cbiAgICBub2RlLnBhcmVudE5vZGUgPSB0aGlzXG4gICAgLy8gT2JqZWN0LnNldFByb3RvdHlwZU9mKG5vZGUubmFtZXNwYWNlcy5wcm90b3R5cGUsIHRoaXMubmFtZXNwYWNlcy5wcm90b3R5cGUpXG5cbiAgICB0aGlzLmNoaWxkTm9kZXMuc3BsaWNlKGluZGV4LCAwLCBub2RlKVxuICAgIHJldHVybiBub2RlXG4gIH1cblxuICBpc0RlZmF1bHROYW1lc3BhY2UgKG5hbWVzcGFjZVVSSSkge1xuICAgIHN3aXRjaCAodGhpcy5ub2RlVHlwZSkge1xuICAgIGNhc2UgTm9kZS5FTEVNRU5UX05PREU6XG4gICAgICBpZiAoIXRoaXMucHJlZml4KSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hbWVzcGFjZVVSSSA9PT0gbmFtZXNwYWNlVVJJXG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmhhc0F0dHJpYnV0ZSgneG1sbnMnKSkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ3htbG5zJylcbiAgICAgIH1cblxuICAgICAgLy8gRW50aXR5UmVmZXJlbmNlcyBtYXkgaGF2ZSB0byBiZSBza2lwcGVkIHRvIGdldCB0byBpdFxuICAgICAgaWYgKHRoaXMucGFyZW50Tm9kZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmlzRGVmYXVsdE5hbWVzcGFjZShuYW1lc3BhY2VVUkkpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIGNhc2UgTm9kZS5ET0NVTUVOVF9OT0RFOlxuICAgICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRFbGVtZW50LmlzRGVmYXVsdE5hbWVzcGFjZShuYW1lc3BhY2VVUkkpXG4gICAgY2FzZSBOb2RlLkVOVElUWV9OT0RFOlxuICAgIGNhc2UgTm9kZS5OT1RBVElPTl9OT0RFOlxuICAgIGNhc2UgTm9kZS5ET0NVTUVOVF9UWVBFX05PREU6XG4gICAgY2FzZSBOb2RlLkRPQ1VNRU5UX0ZSQUdNRU5UX05PREU6XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICBjYXNlIE5vZGUuQVRUUklCVVRFX05PREU6XG4gICAgICBpZiAodGhpcy5vd25lckVsZW1lbnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3duZXJFbGVtZW50LmlzRGVmYXVsdE5hbWVzcGFjZShuYW1lc3BhY2VVUkkpXG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICBkZWZhdWx0OlxuICAgICAgLy8gRW50aXR5UmVmZXJlbmNlcyBtYXkgaGF2ZSB0byBiZSBza2lwcGVkIHRvIGdldCB0byBpdFxuICAgICAgaWYgKHRoaXMucGFyZW50Tm9kZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmlzRGVmYXVsdE5hbWVzcGFjZShuYW1lc3BhY2VVUkkpXG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICBpc0VxdWFsTm9kZSAobm9kZSkge1xuICAgIHRoaXMubm9ybWFsaXplKClcbiAgICBub2RlLm5vcm1hbGl6ZSgpXG5cbiAgICBsZXQgYm9vbCA9IHRoaXMubm9kZU5hbWUgPT09IG5vZGUubm9kZU5hbWVcbiAgICBib29sID0gYm9vbCAmJiB0aGlzLmxvY2FsTmFtZSA9PT0gbm9kZS5sb2NhbE5hbWVcbiAgICBib29sID0gYm9vbCAmJiB0aGlzLm5hbWVzcGFjZVVSSSA9PT0gbm9kZS5uYW1lc3BhY2VVUklcbiAgICBib29sID0gYm9vbCAmJiB0aGlzLnByZWZpeCA9PT0gbm9kZS5wcmVmaXhcbiAgICBib29sID0gYm9vbCAmJiB0aGlzLm5vZGVWYWx1ZSA9PT0gbm9kZS5ub2RlVmFsdWVcblxuICAgIGJvb2wgPSBib29sICYmIHRoaXMuY2hpbGROb2Rlcy5sZW5ndGggPT09IG5vZGUuY2hpbGROb2Rlcy5sZW5ndGhcblxuICAgIC8vIGRvbnQgY2hlY2sgY2hpbGRyZW4gcmVjdXJzaXZlbHkgd2hlbiB0aGUgY291bnQgZG9lc250IGV2ZW50IGFkZCB1cFxuICAgIGlmICghYm9vbCkgcmV0dXJuIGZhbHNlXG5cbiAgICBib29sID0gYm9vbCAmJiAhdGhpcy5jaGlsZE5vZGVzLnJlZHVjZSgobGFzdCwgY3VyciwgaW5kZXgpID0+IHtcbiAgICAgIHJldHVybiBsYXN0ICYmIGN1cnIuaXNFcXVhbE5vZGUobm9kZS5jaGlsZE5vZGVzW2luZGV4XSlcbiAgICB9LCB0cnVlKVxuXG4gICAgLy8gRklYTUU6IFVzZSBhdHRyIG5vZGVzXG4gICAgLyogYm9vbCA9IGJvb2wgJiYgIVsgLi4udGhpcy5hdHRycy5lbnRyaWVzKCkgXS5yZWR1Y2UoKGxhc3QsIGN1cnIsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBbIGtleSwgdmFsIF0gPSBub2RlLmF0dHJzLmVudHJpZXMoKVxuICAgICAgcmV0dXJuIGxhc3QgJiYgY3VyclswXSA9PT0ga2V5ICYmIGN1cnJbMV0gPT09IHZhbFxuICAgIH0sIHRydWUpICovXG5cbiAgICAvKlxuICAgIFRPRE86XG4gICAgRm9yIHR3byBEb2N1bWVudFR5cGUgbm9kZXMgdG8gYmUgZXF1YWwsIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBtdXN0IGFsc28gYmUgc2F0aXNmaWVkOlxuXG4gICAgVGhlIGZvbGxvd2luZyBzdHJpbmcgYXR0cmlidXRlcyBhcmUgZXF1YWw6IHB1YmxpY0lkLCBzeXN0ZW1JZCwgaW50ZXJuYWxTdWJzZXQuXG4gICAgVGhlIGVudGl0aWVzIE5hbWVkTm9kZU1hcHMgYXJlIGVxdWFsLlxuICAgIFRoZSBub3RhdGlvbnMgTmFtZWROb2RlTWFwcyBhcmUgZXF1YWwuXG4gICAgKi9cblxuICAgIGlmICh0aGlzLm5vZGVUeXBlID09PSBOb2RlLkRPQ1VNRU5UX1RZUEVfTk9ERSAmJiBub2RlLm5vZGVUeXBlID09PSBOb2RlLkRPQ1VNRU5UX1RZUEVfTk9ERSkge1xuICAgICAgYm9vbCA9IGJvb2wgJiYgdGhpcy5wdWJsaWNJZCA9PT0gbm9kZS5wdWJsaWNJZFxuICAgICAgYm9vbCA9IGJvb2wgJiYgdGhpcy5zeXN0ZW1JZCA9PT0gbm9kZS5zeXN0ZW1JZFxuICAgICAgYm9vbCA9IGJvb2wgJiYgdGhpcy5pbnRlcm5hbFN1YnNldCA9PT0gbm9kZS5pbnRlcm5hbFN1YnNldFxuICAgIH1cblxuICAgIHJldHVybiBib29sXG4gIH1cblxuICBpc1NhbWVOb2RlIChub2RlKSB7XG4gICAgcmV0dXJuIHRoaXMgPT09IG5vZGVcbiAgfVxuXG4gIGxvb2t1cE5hbWVzcGFjZVByZWZpeCAobmFtZXNwYWNlVVJJLCBvcmlnaW5hbEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy5uYW1lc3BhY2VVUkkgJiYgdGhpcy5uYW1lc3BhY2VVUkkgPT09IG5hbWVzcGFjZVVSSSAmJiB0aGlzLnByZWZpeFxuICAgICAgICAgJiYgb3JpZ2luYWxFbGVtZW50Lmxvb2t1cE5hbWVzcGFjZVVSSSh0aGlzLnByZWZpeCkgPT09IG5hbWVzcGFjZVVSSSkge1xuICAgICAgcmV0dXJuIHRoaXMucHJlZml4XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBbIGtleSwgdmFsIF0gb2YgdGhpcy5hdHRycy5lbnRyaWVzKCkpIHtcbiAgICAgIGlmICgha2V5LmluY2x1ZGVzKCc6JykpIGNvbnRpbnVlXG5cbiAgICAgIGNvbnN0IFsgYXR0clByZWZpeCwgbmFtZSBdID0ga2V5LnNwbGl0KCc6JylcbiAgICAgIGlmIChhdHRyUHJlZml4ID09PSAneG1sbnMnICYmIHZhbCA9PT0gbmFtZXNwYWNlVVJJICYmIG9yaWdpbmFsRWxlbWVudC5sb29rdXBOYW1lc3BhY2VVUkkobmFtZSkgPT09IG5hbWVzcGFjZVVSSSkge1xuICAgICAgICByZXR1cm4gbmFtZVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEVudGl0eVJlZmVyZW5jZXMgbWF5IGhhdmUgdG8gYmUgc2tpcHBlZCB0byBnZXQgdG8gaXRcbiAgICBpZiAodGhpcy5wYXJlbnROb2RlKSB7XG4gICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmxvb2t1cE5hbWVzcGFjZVByZWZpeChuYW1lc3BhY2VVUkksIG9yaWdpbmFsRWxlbWVudClcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGxvb2t1cE5hbWVzcGFjZVVSSSAocHJlZml4KSB7XG4gICAgc3dpdGNoICh0aGlzLm5vZGVUeXBlKSB7XG4gICAgY2FzZSBOb2RlLkVMRU1FTlRfTk9ERTpcbiAgICAgIGlmICh0aGlzLm5hbWVzcGFjZVVSSSAhPSBudWxsICYmIHRoaXMucHJlZml4ID09PSBwcmVmaXgpIHtcbiAgICAgICAgLy8gTm90ZTogcHJlZml4IGNvdWxkIGJlIFwibnVsbFwiIGluIHRoaXMgY2FzZSB3ZSBhcmUgbG9va2luZyBmb3IgZGVmYXVsdCBuYW1lc3BhY2VcbiAgICAgICAgcmV0dXJuIHRoaXMubmFtZXNwYWNlVVJJXG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgWyBrZXksIHZhbCBdIG9mIHRoaXMuYXR0cnMuZW50cmllcygpKSB7XG4gICAgICAgIGlmICgha2V5LmluY2x1ZGVzKCc6JykpIGNvbnRpbnVlXG5cbiAgICAgICAgY29uc3QgWyBhdHRyUHJlZml4LCBuYW1lIF0gPSBrZXkuc3BsaXQoJzonKVxuICAgICAgICBpZiAoYXR0clByZWZpeCA9PT0gJ3htbG5zJyAmJiBuYW1lID09PSBwcmVmaXgpIHtcbiAgICAgICAgICBpZiAodmFsICE9IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWxcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgICAvLyBGSVhNRTogTG9vayB1cCBpZiBwcmVmaXggb3IgYXR0clByZWZpeFxuICAgICAgICB9IGVsc2UgaWYgKG5hbWUgPT09ICd4bWxucycgJiYgcHJlZml4ID09IG51bGwpIHtcbiAgICAgICAgICBpZiAodmFsICE9IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWxcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBFbnRpdHlSZWZlcmVuY2VzIG1heSBoYXZlIHRvIGJlIHNraXBwZWQgdG8gZ2V0IHRvIGl0XG4gICAgICBpZiAodGhpcy5wYXJlbnROb2RlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBhcmVudE5vZGUubG9va3VwTmFtZXNwYWNlVVJJKHByZWZpeClcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgY2FzZSBOb2RlLkRPQ1VNRU5UX05PREU6XG4gICAgICByZXR1cm4gdGhpcy5kb2N1bWVudEVsZW1lbnQubG9va3VwTmFtZXNwYWNlVVJJKHByZWZpeClcbiAgICBjYXNlIE5vZGUuRU5USVRZX05PREU6XG4gICAgY2FzZSBOb2RlLk5PVEFUSU9OX05PREU6XG4gICAgY2FzZSBOb2RlLkRPQ1VNRU5UX1RZUEVfTk9ERTpcbiAgICBjYXNlIE5vZGUuRE9DVU1FTlRfRlJBR01FTlRfTk9ERTpcbiAgICAgIHJldHVybiBudWxsXG4gICAgY2FzZSBOb2RlLkFUVFJJQlVURV9OT0RFOlxuICAgICAgaWYgKHRoaXMub3duZXJFbGVtZW50KSB7XG4gICAgICAgIHJldHVybiB0aGlzLm93bmVyRWxlbWVudC5sb29rdXBOYW1lc3BhY2VVUkkocHJlZml4KVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICBkZWZhdWx0OlxuICAgICAgLy8gRW50aXR5UmVmZXJlbmNlcyBtYXkgaGF2ZSB0byBiZSBza2lwcGVkIHRvIGdldCB0byBpdFxuICAgICAgaWYgKHRoaXMucGFyZW50Tm9kZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmxvb2t1cE5hbWVzcGFjZVVSSShwcmVmaXgpXG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGxvb2t1cFByZWZpeCAobmFtZXNwYWNlVVJJKSB7XG4gICAgaWYgKCFuYW1lc3BhY2VVUkkpIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgY29uc3QgdHlwZSA9IHRoaXMubm9kZVR5cGVcblxuICAgIHN3aXRjaCAodHlwZSkge1xuICAgIGNhc2UgTm9kZS5FTEVNRU5UX05PREU6XG4gICAgICByZXR1cm4gdGhpcy5sb29rdXBOYW1lc3BhY2VQcmVmaXgobmFtZXNwYWNlVVJJLCB0aGlzKVxuICAgIGNhc2UgTm9kZS5ET0NVTUVOVF9OT0RFOlxuICAgICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRFbGVtZW50Lmxvb2t1cE5hbWVzcGFjZVByZWZpeChuYW1lc3BhY2VVUkkpXG4gICAgY2FzZSBOb2RlLkVOVElUWV9OT0RFIDpcbiAgICBjYXNlIE5vZGUuTk9UQVRJT05fTk9ERTpcbiAgICBjYXNlIE5vZGUuRE9DVU1FTlRfRlJBR01FTlRfTk9ERTpcbiAgICBjYXNlIE5vZGUuRE9DVU1FTlRfVFlQRV9OT0RFOlxuICAgICAgcmV0dXJuIG51bGwgLy8gdHlwZSBpcyB1bmtub3duXG4gICAgY2FzZSBOb2RlLkFUVFJJQlVURV9OT0RFOlxuICAgICAgaWYgKHRoaXMub3duZXJFbGVtZW50KSB7XG4gICAgICAgIHJldHVybiB0aGlzLm93bmVyRWxlbWVudC5sb29rdXBOYW1lc3BhY2VQcmVmaXgobmFtZXNwYWNlVVJJKVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICBkZWZhdWx0OlxuICAgICAgLy8gRW50aXR5UmVmZXJlbmNlcyBtYXkgaGF2ZSB0byBiZSBza2lwcGVkIHRvIGdldCB0byBpdFxuICAgICAgaWYgKHRoaXMucGFyZW50Tm9kZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmxvb2t1cE5hbWVzcGFjZVByZWZpeChuYW1lc3BhY2VVUkkpXG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgfVxuXG4gIG5vcm1hbGl6ZSAoKSB7XG4gICAgY29uc3QgY2hpbGROb2RlcyA9IFtdXG4gICAgZm9yIChjb25zdCBub2RlIG9mIHRoaXMuY2hpbGROb2Rlcykge1xuICAgICAgY29uc3QgbGFzdCA9IGNoaWxkTm9kZXMuc2hpZnQoKVxuICAgICAgaWYgKCFsYXN0KSB7XG4gICAgICAgIGlmIChub2RlLmRhdGEpIHtcbiAgICAgICAgICBjaGlsZE5vZGVzLnVuc2hpZnQobm9kZSlcbiAgICAgICAgfVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUpIHtcbiAgICAgICAgaWYgKCFub2RlLmRhdGEpIHtcbiAgICAgICAgICBjaGlsZE5vZGVzLnVuc2hpZnQobGFzdClcbiAgICAgICAgICBjb250aW51ZVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGxhc3Qubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSB7XG4gICAgICAgICAgY29uc3QgbWVyZ2VkID0gdGhpcy5vd25lckRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGxhc3QuZGF0YSArIG5vZGUuZGF0YSlcbiAgICAgICAgICBjaGlsZE5vZGVzLnB1c2gobWVyZ2VkKVxuICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgIH1cblxuICAgICAgICBjaGlsZE5vZGVzLnB1c2gobGFzdCwgbm9kZSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjaGlsZE5vZGVzLmZvckVhY2gobm9kZSA9PiB7XG4gICAgICBub2RlLnBhcmVudE5vZGUgPSB0aGlzXG4gICAgfSlcbiAgICB0aGlzLmNoaWxkTm9kZXMgPSBjaGlsZE5vZGVzXG4gICAgLy8gdGhpcy5jaGlsZE5vZGVzID0gdGhpcy5jaGlsZE5vZGVzLmZvckVhY2goKHRleHROb2Rlcywgbm9kZSkgPT4ge1xuICAgIC8vICAgLy8gRklYTUU6IElmIGZpcnN0IG5vZGUgaXMgYW4gZW1wdHkgdGV4dG5vZGUsIHdoYXQgZG8gd2UgZG8/IC0+IHNwZWNcbiAgICAvLyAgIGlmICghdGV4dE5vZGVzKSByZXR1cm4gWyBub2RlIF1cbiAgICAvLyAgIHZhciBsYXN0ID0gdGV4dE5vZGVzLnBvcCgpXG5cbiAgICAvLyAgIGlmIChub2RlLm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSkge1xuICAgIC8vICAgICBpZiAoIW5vZGUuZGF0YSkgcmV0dXJuIHRleHROb2Rlc1xuXG4gICAgLy8gICAgIGlmIChsYXN0Lm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSkge1xuICAgIC8vICAgICAgIGNvbnN0IG1lcmdlZCA9IHRoaXMub3duZXJEb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShsYXN0LmRhdGEgKyAnICcgKyBub2RlLmRhdGEpXG4gICAgLy8gICAgICAgdGV4dE5vZGVzLnB1c2gobWVyZ2VkKVxuICAgIC8vICAgICAgIHJldHVybiB0ZXh0Tm9kZXMuY29uY2F0KG1lcmdlZClcbiAgICAvLyAgICAgfVxuICAgIC8vICAgfSBlbHNlIHtcbiAgICAvLyAgICAgdGV4dE5vZGVzLnB1c2gobGFzdCwgbm9kZSlcbiAgICAvLyAgIH1cblxuICAgIC8vICAgcmV0dXJuIHRleHROb2Rlc1xuICAgIC8vIH0sIG51bGwpXG4gIH1cblxuICByZW1vdmVDaGlsZCAobm9kZSkge1xuXG4gICAgbm9kZS5wYXJlbnROb2RlID0gbnVsbFxuICAgIC8vIE9iamVjdC5zZXRQcm90b3R5cGVPZihub2RlLCBudWxsKVxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5jaGlsZE5vZGVzLmluZGV4T2Yobm9kZSlcbiAgICBpZiAoaW5kZXggPT09IC0xKSByZXR1cm4gbm9kZVxuICAgIHRoaXMuY2hpbGROb2Rlcy5zcGxpY2UoaW5kZXgsIDEpXG4gICAgcmV0dXJuIG5vZGVcbiAgfVxuXG4gIHJlcGxhY2VDaGlsZCAobmV3Q2hpbGQsIG9sZENoaWxkKSB7XG4gICAgY29uc3QgYmVmb3JlID0gb2xkQ2hpbGQubmV4dFNpYmxpbmdcbiAgICB0aGlzLnJlbW92ZUNoaWxkKG9sZENoaWxkKVxuICAgIHRoaXMuaW5zZXJ0QmVmb3JlKG5ld0NoaWxkLCBiZWZvcmUpXG4gICAgcmV0dXJuIG9sZENoaWxkXG4gIH1cblxuICBnZXQgbmV4dFNpYmxpbmcgKCkge1xuICAgIGNvbnN0IGNoaWxkID0gdGhpcy5wYXJlbnROb2RlICYmIHRoaXMucGFyZW50Tm9kZS5jaGlsZE5vZGVzW3RoaXMucGFyZW50Tm9kZS5jaGlsZE5vZGVzLmluZGV4T2YodGhpcykgKyAxXVxuICAgIHJldHVybiBjaGlsZCB8fCBudWxsXG4gIH1cblxuICBnZXQgcHJldmlvdXNTaWJsaW5nICgpIHtcbiAgICBjb25zdCBjaGlsZCA9IHRoaXMucGFyZW50Tm9kZSAmJiB0aGlzLnBhcmVudE5vZGUuY2hpbGROb2Rlc1t0aGlzLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5pbmRleE9mKHRoaXMpIC0gMV1cbiAgICByZXR1cm4gY2hpbGQgfHwgbnVsbFxuICB9XG5cbiAgZ2V0IHRleHRDb250ZW50ICgpIHtcbiAgICBpZiAodGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUpIHJldHVybiB0aGlzLmRhdGFcbiAgICBpZiAodGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5DREFUQV9TRUNUSU9OX05PREUpIHJldHVybiB0aGlzLmRhdGFcbiAgICBpZiAodGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5DT01NRU5UX05PREUpIHJldHVybiB0aGlzLmRhdGFcblxuICAgIHJldHVybiB0aGlzLmNoaWxkTm9kZXMucmVkdWNlKGZ1bmN0aW9uIChsYXN0LCBjdXJyZW50KSB7XG4gICAgICByZXR1cm4gbGFzdCArIGN1cnJlbnQudGV4dENvbnRlbnRcbiAgICB9LCAnJylcbiAgfVxuXG4gIHNldCB0ZXh0Q29udGVudCAodGV4dCkge1xuICAgIGlmICh0aGlzLm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSB8fCB0aGlzLm5vZGVUeXBlID09PSBOb2RlLkNEQVRBX1NFQ1RJT05fTk9ERSB8fCB0aGlzLm5vZGVUeXBlID09PSBOb2RlLkNPTU1FTlRfTk9ERSkge1xuICAgICAgdGhpcy5kYXRhID0gdGV4dFxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHRoaXMuY2hpbGROb2RlcyA9IFtdXG4gICAgdGhpcy5hcHBlbmRDaGlsZCh0aGlzLm93bmVyRG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodGV4dCkpXG4gIH1cblxuICBnZXQgbGFzdENoaWxkICgpIHtcbiAgICByZXR1cm4gdGhpcy5jaGlsZE5vZGVzW3RoaXMuY2hpbGROb2Rlcy5sZW5ndGggLSAxXSB8fCBudWxsXG4gIH1cblxuICBnZXQgZmlyc3RDaGlsZCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2hpbGROb2Rlc1swXSB8fCBudWxsXG4gIH1cbn1cblxuZXh0ZW5kU3RhdGljKE5vZGUsIG5vZGVUeXBlcylcbmV4dGVuZChOb2RlLCBub2RlVHlwZXMpXG4iLCAiaW1wb3J0IHsgTm9kZSB9IGZyb20gJy4vTm9kZS5qcydcbmltcG9ydCB7IGh0bWwgfSBmcm9tICcuLi91dGlscy9uYW1lc3BhY2VzLmpzJ1xuXG5leHBvcnQgY2xhc3MgQXR0ciBleHRlbmRzIE5vZGUge1xuICBjb25zdHJ1Y3RvciAobmFtZSwgcHJvcHMsIG5zKSB7XG4gICAgc3VwZXIobmFtZSwgeyBub2RlVmFsdWU6ICcnLCAuLi5wcm9wcyB9LCBucylcblxuICAgIC8vIEZvbGxvdyBzcGVjIGFuZCBsb3dlcmNhc2Ugbm9kZU5hbWUgZm9yIGh0bWxcbiAgICB0aGlzLm5vZGVOYW1lID0gbnMgPT09IGh0bWwgPyBuYW1lLnRvTG93ZXJDYXNlKCkgOiBuYW1lXG4gICAgdGhpcy5ub2RlVHlwZSA9IE5vZGUuQVRUUklCVVRFX05PREVcbiAgICB0aGlzLm93bmVyRWxlbWVudCA9IG51bGxcbiAgfVxuXG4gIGdldCB2YWx1ZSAoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZVZhbHVlXG4gIH1cblxuICBzZXQgdmFsdWUgKHZhbCkge1xuICAgIHRoaXMubm9kZVZhbHVlID0gdmFsXG4gIH1cblxuICBnZXQgbmFtZSAoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZU5hbWVcbiAgfVxufVxuIiwgImV4cG9ydCBjb25zdCBOb25Eb2N1bWVudFR5cGVDaGlsZE5vZGUgPSB7XG5cbn1cblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoTm9uRG9jdW1lbnRUeXBlQ2hpbGROb2RlLCB7XG4gIHByZXZpb3VzRWxlbWVudFNpYmxpbmc6IHtcbiAgICBnZXQgKCkge1xuICAgICAgbGV0IG5vZGVcbiAgICAgIHdoaWxlICgobm9kZSA9IHRoaXMucHJldmlvdXNTaWJsaW5nKSkge1xuICAgICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5FTEVNRU5UX05PREUpIHtcbiAgICAgICAgICByZXR1cm4gbm9kZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgfSxcblxuICBuZXh0RWxlbWVudFNpYmxpbmc6IHtcbiAgICBnZXQgKCkge1xuICAgICAgbGV0IG5vZGVcbiAgICAgIHdoaWxlICgobm9kZSA9IHRoaXMubmV4dFNpYmxpbmcpKSB7XG4gICAgICAgIGlmIChub2RlLm5vZGVUeXBlID09PSBub2RlLkVMRU1FTlRfTk9ERSkge1xuICAgICAgICAgIHJldHVybiBub2RlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG59KVxuIiwgImV4cG9ydCBjb25zdCBub2Rlc1RvTm9kZSA9IChub2RlcywgZG9jdW1lbnQpID0+IHtcbiAgbm9kZXMgPSBub2Rlcy5tYXAoKG5vZGUpID0+IHtcbiAgICBpZiAodHlwZW9mIG5vZGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobm9kZSlcbiAgICB9XG4gICAgcmV0dXJuIG5vZGVcbiAgfSlcbiAgaWYgKG5vZGVzLmxlbmd0aCA9PT0gMSkgeyByZXR1cm4gbm9kZXNbMF0gfVxuICBjb25zdCBub2RlID0gZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpXG4gIG5vZGVzLmZvckVhY2gobm9kZS5hcHBlbmRDaGlsZCwgbm9kZSlcbiAgcmV0dXJuIG5vZGVcbn1cbiIsICJpbXBvcnQgeyBub2Rlc1RvTm9kZSB9IGZyb20gJy4uLy4uL3V0aWxzL25vZGVzVG9Ob2RlLmpzJ1xuXG4vLyBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2ludGVyZmFjZS1jaGlsZG5vZGVcbi8vIFRvZG86IGNoZWNrIGlmIHRoaXMgaXMgY29udGFpbmVkIGluIG5vZGVzIG9yIHNpYmxpbmdzIGFyZSBjb250YWluZWQgKHZpYWJsZVByZXZpb3VzU2libGluZywgdmlhYmxlTmV4dFNpYmxpbmcpXG5leHBvcnQgY29uc3QgQ2hpbGROb2RlID0ge1xuICBiZWZvcmUgKC4uLm5vZGVzKSB7XG4gICAgaWYgKCF0aGlzLnBhcmVudE5vZGUpIHJldHVyblxuICAgIGNvbnN0IG5vZGUgPSBub2Rlc1RvTm9kZShub2RlcywgdGhpcy5vd25lckRvY3VtZW50KVxuICAgIHRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobm9kZSwgdGhpcylcbiAgfSxcbiAgYWZ0ZXIgKC4uLm5vZGVzKSB7XG4gICAgaWYgKCF0aGlzLnBhcmVudE5vZGUpIHJldHVyblxuICAgIGNvbnN0IG5vZGUgPSBub2Rlc1RvTm9kZShub2RlcywgdGhpcy5vd25lckRvY3VtZW50KVxuICAgIHRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobm9kZSwgdGhpcy5uZXh0U2libGluZylcbiAgfSxcbiAgcmVwbGFjZVdpdGggKC4uLm5vZGVzKSB7XG4gICAgaWYgKCF0aGlzLnBhcmVudE5vZGUpIHJldHVyblxuICAgIGNvbnN0IG5leHQgPSB0aGlzLm5leHRTaWJsaW5nXG4gICAgY29uc3Qgbm9kZSA9IG5vZGVzVG9Ob2RlKG5vZGVzLCB0aGlzLm93bmVyRG9jdW1lbnQpXG4gICAgdGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShub2RlLCBuZXh0KVxuICAgIHRoaXMucmVtb3ZlKClcbiAgfSxcbiAgcmVtb3ZlICgpIHtcbiAgICBpZiAoIXRoaXMucGFyZW50Tm9kZSkgcmV0dXJuXG4gICAgdGhpcy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMpXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi9Ob2RlLmpzJ1xuaW1wb3J0IHsgbWl4aW4gfSBmcm9tICcuLi91dGlscy9vYmplY3RDcmVhdGlvblV0aWxzLmpzJ1xuaW1wb3J0IHsgTm9uRG9jdW1lbnRUeXBlQ2hpbGROb2RlIH0gZnJvbSAnLi9taXhpbnMvTm9uRG9jdW1lbnRUeXBlQ2hpbGROb2RlLmpzJ1xuaW1wb3J0IHsgQ2hpbGROb2RlIH0gZnJvbSAnLi9taXhpbnMvQ2hpbGROb2RlLmpzJ1xuXG5leHBvcnQgY2xhc3MgQ2hhcmFjdGVyRGF0YSBleHRlbmRzIE5vZGUge1xuICBjb25zdHJ1Y3RvciAobmFtZSwgcHJvcHMpIHtcbiAgICBzdXBlcihuYW1lLCBwcm9wcylcblxuICAgIHRoaXMuZGF0YSA9IHRoaXMubm9kZVZhbHVlXG4gIH1cblxuICBhcHBlbmREYXRhIChkYXRhKSB7XG4gICAgdGhpcy5kYXRhICs9IGRhdGFcbiAgfVxuXG4gIGRlbGV0ZURhdGEgKG9mZnNldCwgY291bnQpIHtcbiAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuc2xpY2UoMCwgb2Zmc2V0KSArIHRoaXMuZGF0YS5zbGljZSgwLCBvZmZzZXQgKyBjb3VudClcbiAgfVxuXG4gIGluc2VydERhdGEgKG9mZnNldCwgZGF0YSkge1xuICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YS5zbGljZSgwLCBvZmZzZXQpICsgZGF0YSArIHRoaXMuZGF0YS5zbGljZShvZmZzZXQpXG4gIH1cblxuICByZXBsYWNlRGF0YSAob2Zmc2V0LCBjb3VudCwgZGF0YSkge1xuICAgIHRoaXMuZGVsZXRlRGF0YShvZmZzZXQsIGNvdW50KVxuICAgIHRoaXMuaW5zZXJ0RGF0YShvZmZzZXQsIGRhdGEpXG4gIH1cblxuICBzdWJzdHJpbmdEYXRhIChvZmZzZXQsIGNvdW50KSB7XG4gICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLnN1YnN0cihvZmZzZXQsIGNvdW50KVxuICB9XG5cbiAgZ2V0IGxlbmd0aCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YS5sZW5ndGhcbiAgfVxufVxuXG5taXhpbihOb25Eb2N1bWVudFR5cGVDaGlsZE5vZGUsIENoYXJhY3RlckRhdGEpXG5taXhpbihDaGlsZE5vZGUsIENoYXJhY3RlckRhdGEpXG4iLCAiaW1wb3J0IHsgQ2hhcmFjdGVyRGF0YSB9IGZyb20gJy4vQ2hhcmFjdGVyRGF0YS5qcydcbmltcG9ydCB7IE5vZGUgfSBmcm9tICcuL05vZGUuanMnXG5leHBvcnQgY2xhc3MgQ29tbWVudCBleHRlbmRzIENoYXJhY3RlckRhdGEge1xuICBjb25zdHJ1Y3RvciAobmFtZSwgcHJvcHMpIHtcbiAgICBzdXBlcihuYW1lLCBwcm9wcylcbiAgICB0aGlzLm5vZGVUeXBlID0gTm9kZS5DT01NRU5UX05PREVcbiAgfVxufVxuIiwgImV4cG9ydCBjbGFzcyBFdmVudCB7XG4gIGNvbnN0cnVjdG9yICh0eXBlKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZVxuICAgIHRoaXMuY2FuY2VsYWJsZSA9IGZhbHNlXG4gICAgdGhpcy5kZWZhdWx0UHJldmVudGVkID0gZmFsc2VcbiAgICB0aGlzLnRhcmdldCA9IG51bGxcbiAgfVxuXG4gIHByZXZlbnREZWZhdWx0ICgpIHtcbiAgICBpZiAodGhpcy5jYW5jZWxhYmxlKSB7XG4gICAgICB0aGlzLmRlZmF1bHRQcmV2ZW50ZWQgPSB0cnVlXG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IHsgRXZlbnQgfSBmcm9tICcuL0V2ZW50LmpzJ1xuZXhwb3J0IGNsYXNzIEN1c3RvbUV2ZW50IGV4dGVuZHMgRXZlbnQge1xuICBjb25zdHJ1Y3RvciAobmFtZSwgcHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKG5hbWUpXG4gICAgdGhpcy5kZXRhaWwgPSBwcm9wcy5kZXRhaWwgfHwgbnVsbFxuICAgIHRoaXMuY2FuY2VsYWJsZSA9IHByb3BzLmNhbmNlbGFibGUgfHwgZmFsc2VcbiAgfVxufVxuIiwgImltcG9ydCB7IENoYXJhY3RlckRhdGEgfSBmcm9tICcuL0NoYXJhY3RlckRhdGEuanMnXG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi9Ob2RlLmpzJ1xuXG5leHBvcnQgY2xhc3MgVGV4dCBleHRlbmRzIENoYXJhY3RlckRhdGEge1xuICBjb25zdHJ1Y3RvciAobmFtZSwgcHJvcHMpIHtcbiAgICBzdXBlcihuYW1lLCBwcm9wcylcbiAgICB0aGlzLm5vZGVUeXBlID0gTm9kZS5URVhUX05PREVcbiAgfVxufVxuIiwgImltcG9ydCB7IGV4dGVuZFN0YXRpYyB9IGZyb20gJy4uL3V0aWxzL29iamVjdENyZWF0aW9uVXRpbHMuanMnXG5cbmV4cG9ydCBjbGFzcyBOb2RlRmlsdGVyIHtcbiAgYWNjZXB0Tm9kZSAoKSB7XG4gICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVFxuICB9XG59XG5cbmV4dGVuZFN0YXRpYyhOb2RlRmlsdGVyLCB7XG4gIEZJTFRFUl9BQ0NFUFQ6IDEsXG4gIEZJTFRFUl9SRUpFQ1Q6IDIsXG4gIEZJTFRFUl9JR05PUkU6IDQsXG4gIFNIT1dfQUxMOiAtMSxcbiAgU0hPV19FTEVNRU5UOiAxLFxuICBTSE9XX1RFWFQ6IDQsXG4gIFNIT1dfRU5USVRZX1JFRkVSRU5DRTogMTYsXG4gIFNIT1dfRU5USVRZOiAzMixcbiAgU0hPV19QUk9DRVNTSU5HX0lOU1RSVUNUSU9OOiA2NCxcbiAgU0hPV19DT01NRU5UOiAxMjgsXG4gIFNIT1dfRE9DVU1FTlQ6IDI1NixcbiAgU0hPV19ET0NVTUVOVF9UWVBFOiA1MTIsXG4gIFNIT1dfRE9DVU1FTlRfRlJBR01FTlQ6IDEwMjQsXG4gIFNIT1dfTk9UQVRJT046IDIwNDhcbn0pXG4iLCAiaW1wb3J0IHsgTm9kZUZpbHRlciB9IGZyb20gJy4uL2RvbS9Ob2RlRmlsdGVyLmpzJ1xuXG5jb25zdCBzaG93VGhpc05vZGUgPSAod2hhdFRvU2hvdywgbm9kZSkgPT4ge1xuICBpZiAod2hhdFRvU2hvdyA9PT0gTm9kZUZpbHRlci5TSE9XX0FMTCkgcmV0dXJuIHRydWVcbiAgaWYgKHdoYXRUb1Nob3cgJiBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLkVMRU1FTlRfTk9ERSkgcmV0dXJuIHRydWVcbiAgaWYgKHdoYXRUb1Nob3cgJiBOb2RlRmlsdGVyLlNIT1dfVEVYVCAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLlRFWFRfTk9ERSkgcmV0dXJuIHRydWVcbiAgaWYgKHdoYXRUb1Nob3cgJiBOb2RlRmlsdGVyLlNIT1dfRU5USVRZX1JFRkVSRU5DRSAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLkVOVElUWV9SRUZFUkVOQ0VfTk9ERSkgcmV0dXJuIHRydWVcbiAgaWYgKHdoYXRUb1Nob3cgJiBOb2RlRmlsdGVyLlNIT1dfRU5USVRZICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRU5USVRZX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX1BST0NFU1NJTkdfSU5TVFJVQ1RJT04gJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5QUk9DRVNTSU5HX0lOU1RSVUNUSU9OX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX0NPTU1FTlQgJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5DT01NRU5UX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX0RPQ1VNRU5UICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRE9DVU1FTlRfTk9ERSkgcmV0dXJuIHRydWVcbiAgaWYgKHdoYXRUb1Nob3cgJiBOb2RlRmlsdGVyLlNIT1dfRE9DVU1FTlRfVFlQRSAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLkRPQ1VNRU5UX1RZUEVfTk9ERSkgcmV0dXJuIHRydWVcbiAgaWYgKHdoYXRUb1Nob3cgJiBOb2RlRmlsdGVyLlNIT1dfRE9DVU1FTlRfRlJBR01FTlQgJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5ET0NVTUVOVF9GUkFHTUVOVF9OT0RFKSByZXR1cm4gdHJ1ZVxuICBpZiAod2hhdFRvU2hvdyAmIE5vZGVGaWx0ZXIuU0hPV19OT1RBVElPTiAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLk5PVEFUSU9OX05PREUpIHJldHVybiB0cnVlXG4gIHJldHVybiBmYWxzZVxufVxuXG5leHBvcnQgY2xhc3MgTm9kZUl0ZXJhdG9yIHtcbiAgY29uc3RydWN0b3IgKHJvb3QsIHdoYXRUb1Nob3cgPSBOb2RlRmlsdGVyLlNIT1dfQUxMLCBmaWx0ZXIgPSAoKSA9PiBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQsIGluY2x1ZGVQYXJlbnQgPSB0cnVlKSB7XG4gICAgdGhpcy5yb290ID0gaW5jbHVkZVBhcmVudCA/IHsgY2hpbGROb2RlczogWyByb290IF0gfSA6IHJvb3RcbiAgICB0aGlzLndoYXRUb1Nob3cgPSB3aGF0VG9TaG93XG4gICAgdGhpcy5maWx0ZXIgPSBmaWx0ZXJcbiAgfVxuXG4gICogW1N5bWJvbC5pdGVyYXRvcl0gKCkge1xuICAgIGNvbnN0IG5vZGVzID0gdGhpcy5yb290LmNoaWxkTm9kZXNcblxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiBub2Rlcykge1xuICAgICAgaWYgKCFzaG93VGhpc05vZGUodGhpcy53aGF0VG9TaG93LCBub2RlKSkgY29udGludWVcblxuICAgICAgY29uc3QgZmlsdGVyUmV0ID0gdGhpcy5maWx0ZXIobm9kZSlcblxuICAgICAgaWYgKGZpbHRlclJldCA9PT0gTm9kZUZpbHRlci5GSUxURVJfUkVKRUNUKSBjb250aW51ZVxuICAgICAgaWYgKGZpbHRlclJldCA9PT0gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUKSB7XG4gICAgICAgIHlpZWxkIG5vZGVcbiAgICAgIH1cblxuICAgICAgeWllbGQgKiBuZXcgTm9kZUl0ZXJhdG9yKG5vZGUsIHRoaXMud2hhdFRvU2hvdywgdGhpcy5maWx0ZXIsIGZhbHNlKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBOb2RlRmlsdGVyIH0gZnJvbSAnLi4vTm9kZUZpbHRlci5qcydcbmltcG9ydCB7IE5vZGVJdGVyYXRvciB9IGZyb20gJy4uLy4uL3V0aWxzL05vZGVJdGVyYXRvci5qcydcblxuY29uc3QgaGFzQ2xhc3MgPSAobm9kZSwgbmFtZSkgPT4ge1xuICBjb25zdCBjbGFzc0xpc3QgPSBub2RlLmNsYXNzTmFtZS5zcGxpdCgvXFxzKy8pXG4gIHJldHVybiBjbGFzc0xpc3QuaW5jbHVkZXMobmFtZSlcbn1cblxuY29uc3QgZWxlbWVudEFjY2VzcyA9IHtcbiAgZ2V0RWxlbWVudHNCeVRhZ05hbWUgKG5hbWUpIHtcbiAgICAvLyBjb25zdCBkb2N1bWVudCA9IHRoaXMub3duZXJEb2N1bWVudFxuICAgIGNvbnN0IGl0ZXIgPSBuZXcgTm9kZUl0ZXJhdG9yKHRoaXMsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCAobm9kZSkgPT4gbm9kZS5ub2RlTmFtZSA9PT0gbmFtZSA/IE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVCA6IE5vZGVGaWx0ZXIuRklMVEVSX0lHTk9SRSwgZmFsc2UpXG4gICAgLy8gY29uc3QgaXRlciA9IGRvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcih0aGlzLCAxLCAobm9kZSkgPT4gbm9kZS5ub2RlTmFtZSA9PT0gbmFtZSA/IE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVCA6IE5vZGVGaWx0ZXIuRklMVEVSX0lHTk9SRSlcbiAgICByZXR1cm4gWyAuLi5pdGVyIF1cbiAgfSxcblxuICBnZXRFbGVtZW50c0J5VGFnTmFtZU5TIChucywgbmFtZSkge1xuICAgIC8vIGNvbnN0IGRvY3VtZW50ID0gdGhpcy5vd25lckRvY3VtZW50XG4gICAgY29uc3QgaXRlciA9IG5ldyBOb2RlSXRlcmF0b3IodGhpcywgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQsIChub2RlKSA9PiBub2RlLmlzTmFtZXNwYWNlKG5zKSAmJiBub2RlLm5vZGVOYW1lID09PSBuYW1lID8gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUIDogTm9kZUZpbHRlci5GSUxURVJfSUdOT1JFLCBmYWxzZSlcbiAgICAvLyBjb25zdCBpdGVyID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9yKHRoaXMsIDEsIChub2RlKSA9PiBub2RlLmlzTmFtZXNwYWNlKG5zKSAmJiBub2RlLm5vZGVOYW1lID09PSBuYW1lID8gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUIDogTm9kZUZpbHRlci5GSUxURVJfSUdOT1JFKVxuICAgIHJldHVybiBbIC4uLml0ZXIgXVxuICB9LFxuXG4gIGdldEVsZW1lbnRzQnlDbGFzc05hbWUgKG5hbWUpIHtcbiAgICAvLyBjb25zdCBkb2N1bWVudCA9IHRoaXMub3duZXJEb2N1bWVudFxuICAgIGNvbnN0IGl0ZXIgPSBuZXcgTm9kZUl0ZXJhdG9yKHRoaXMsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCAobm9kZSkgPT4gaGFzQ2xhc3Mobm9kZSwgbmFtZSkgPyBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQgOiBOb2RlRmlsdGVyLkZJTFRFUl9JR05PUkUsIGZhbHNlKVxuICAgIC8vIGNvbnN0IGl0ZXIgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IodGhpcywgMSwgKG5vZGUpID0+IGhhc0NsYXNzKG5vZGUsIG5hbWUpID8gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUIDogTm9kZUZpbHRlci5GSUxURVJfSUdOT1JFKVxuICAgIHJldHVybiBbIC4uLml0ZXIgXVxuICB9XG59XG5cbmV4cG9ydCB7IGVsZW1lbnRBY2Nlc3MgfVxuIiwgIi8vIEVuc3VyZSB0byBzaXgtYmFzZWQgaGV4XG5leHBvcnQgY29uc3QgZnVsbEhleCA9IGZ1bmN0aW9uIChoZXgpIHtcbiAgcmV0dXJuIGhleC5sZW5ndGggPT09IDRcbiAgICA/IFsgJyMnLFxuICAgICAgaGV4LnN1YnN0cmluZygxLCAyKSwgaGV4LnN1YnN0cmluZygxLCAyKSxcbiAgICAgIGhleC5zdWJzdHJpbmcoMiwgMyksIGhleC5zdWJzdHJpbmcoMiwgMyksXG4gICAgICBoZXguc3Vic3RyaW5nKDMsIDQpLCBoZXguc3Vic3RyaW5nKDMsIDQpXG4gICAgXS5qb2luKCcnKSA6IGhleFxufVxuXG5leHBvcnQgY29uc3QgaGV4VG9SR0IgPSBmdW5jdGlvbiAodmFsT3JNYXApIHtcbiAgaWYgKHR5cGVvZiB2YWxPck1hcCBpbnN0YW5jZW9mIE1hcCkge1xuICAgIGZvciAoY29uc3QgWyBrZXksIHZhbCBdIG9mIHZhbE9yTWFwKSB7XG4gICAgICB2YWxPck1hcC5zZXQoa2V5LCBoZXhUb1JHQih2YWwpKVxuICAgIH1cbiAgICByZXR1cm4gdmFsT3JNYXBcbiAgfVxuXG4gIGlmICghLyNbMC05YS1mXXszLDZ9Ly50ZXN0KHZhbE9yTWFwKSkgeyByZXR1cm4gdmFsT3JNYXAgfVxuXG4gIHZhbE9yTWFwID0gZnVsbEhleCh2YWxPck1hcClcblxuICByZXR1cm4gJ3JnYignICsgW1xuICAgIHBhcnNlSW50KHZhbE9yTWFwLnNsaWNlKDEsIDMpLCAxNiksXG4gICAgcGFyc2VJbnQodmFsT3JNYXAuc2xpY2UoMywgNSksIDE2KSxcbiAgICBwYXJzZUludCh2YWxPck1hcC5zbGljZSg1LCA3KSwgMTYpXG4gIF0uam9pbignLCcpICsgJyknXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNhbWVsaXplIChzKSB7XG4gIHJldHVybiBTdHJpbmcocykucmVwbGFjZSgvKFthLXpdKShbQS1aXSkvZywgZnVuY3Rpb24gKG0sIGcxLCBnMikge1xuICAgIHJldHVybiBnMSArICctJyArIGcyLnRvTG93ZXJDYXNlKClcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNhbWVsQ2FzZSAocykge1xuICByZXR1cm4gU3RyaW5nKHMpLnJlcGxhY2UoLyhbYS16XSktKFthLXpdKS9nLCBmdW5jdGlvbiAobSwgZzEsIGcyKSB7XG4gICAgcmV0dXJuIGcxICsgZzIudG9VcHBlckNhc2UoKVxuICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlUXVvdGVzIChzdHIpIHtcbiAgaWYgKHN0ci5zdGFydHNXaXRoKCdcIicpIHx8IHN0ci5zdGFydHNXaXRoKFwiJ1wiKSkge1xuICAgIHJldHVybiBzdHIuc2xpY2UoMSwgLTEpXG4gIH1cbiAgcmV0dXJuIHN0clxufVxuXG5leHBvcnQgZnVuY3Rpb24gaHRtbEVudGl0aWVzIChzdHIpIHtcbiAgcmV0dXJuIFN0cmluZyhzdHIpLnJlcGxhY2UoLyYvZywgJyZhbXA7JykucmVwbGFjZSgvPC9nLCAnJmx0OycpLnJlcGxhY2UoLz4vZywgJyZndDsnKS5yZXBsYWNlKC9cIi9nLCAnJnF1b3Q7Jylcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVuaHRtbEVudGl0aWVzIChzdHIpIHtcbiAgcmV0dXJuIFN0cmluZyhzdHIpLnJlcGxhY2UoLyZhbXA7L2csICcmJykucmVwbGFjZSgvJmx0Oy9nLCAnPCcpLnJlcGxhY2UoLyZndDsvZywgJz4nKS5yZXBsYWNlKCcmcXVvdDsnLCAnXCInKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY2RhdGEgKHN0cikge1xuICByZXR1cm4gYDwhW0NEQVRBWyR7c3RyfV1dPmBcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbW1lbnQgKHN0cikge1xuICByZXR1cm4gYDwhLS0ke3N0cn0tLT5gXG59XG5cbmV4cG9ydCBjb25zdCBzcGxpdE5vdEluQnJhY2tldHMgPSAoc3RyLCBkZWxpbWl0ZXIpID0+IHtcbiAgdmFyIHJvdW5kQnJhY2tldHMgPSAwXG5cbiAgdmFyIHNxdWFyZUJyYWNrZXRzID0gMFxuXG4gIHZhciBsYXN0SW5kZXggPSAwXG5cbiAgdmFyIHNwbGl0ID0gW11cblxuICB2YXIgY2g7IHZhciBpOyB2YXIgaWxcblxuICBmb3IgKGkgPSAwLCBpbCA9IHN0ci5sZW5ndGg7IGkgPCBpbDsgKytpKSB7XG4gICAgY2ggPSBzdHIuY2hhckF0KGkpXG5cbiAgICBpZiAoY2ggPT09IGRlbGltaXRlciAmJiAhcm91bmRCcmFja2V0cyAmJiAhc3F1YXJlQnJhY2tldHMpIHtcbiAgICAgIHNwbGl0LnB1c2goc3RyLnNsaWNlKGxhc3RJbmRleCwgaSkudHJpbSgpKVxuICAgICAgbGFzdEluZGV4ID0gaSArIDFcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaWYgKGNoID09PSAnKCcpICsrcm91bmRCcmFja2V0c1xuICAgIGVsc2UgaWYgKGNoID09PSAnKScpIC0tcm91bmRCcmFja2V0c1xuICAgIGVsc2UgaWYgKGNoID09PSAnWycpICsrc3F1YXJlQnJhY2tldHNcbiAgICBlbHNlIGlmIChjaCA9PT0gJ10nKSAtLXNxdWFyZUJyYWNrZXRzXG4gIH1cblxuICBzcGxpdC5wdXNoKHN0ci5zbGljZShsYXN0SW5kZXgpLnRyaW0oKSlcbiAgcmV0dXJuIHNwbGl0XG59XG4iLCAiLy8gc3BsaXRzIGEgdHJhbnNmb3JtYXRpb24gY2hhaW5cbmV4cG9ydCBjb25zdCB0cmFuc2Zvcm1zID0gL1xcKVxccyosP1xccyovXG5cbi8vIHNwbGl0IGF0IHdoaXRlc3BhY2UgYW5kIGNvbW1hXG5leHBvcnQgY29uc3QgZGVsaW1pdGVyID0gL1tcXHMsXSsvXG5cbi8vIFRoZSBmb2xsb3dpbmcgcmVnZXggYXJlIHVzZWQgdG8gcGFyc2UgdGhlIGQgYXR0cmlidXRlIG9mIGEgcGF0aFxuXG4vLyBNYXRjaGVzIGFsbCBoeXBoZW5zIHdoaWNoIGFyZSBub3QgYWZ0ZXIgYW4gZXhwb25lbnRcbmV4cG9ydCBjb25zdCBoeXBoZW4gPSAvKFteZV0pLS9naVxuXG4vLyBSZXBsYWNlcyBhbmQgdGVzdHMgZm9yIGFsbCBwYXRoIGxldHRlcnNcbmV4cG9ydCBjb25zdCBwYXRoTGV0dGVycyA9IC9bTUxIVkNTUVRBWl0vZ2lcblxuLy8geWVzIHdlIG5lZWQgdGhpcyBvbmUsIHRvb1xuZXhwb3J0IGNvbnN0IGlzUGF0aExldHRlciA9IC9bTUxIVkNTUVRBWl0vaVxuXG4vLyBtYXRjaGVzIDAuMTU0LjIzLjQ1XG5leHBvcnQgY29uc3QgbnVtYmVyc1dpdGhEb3RzID0gLygoXFxkP1xcLlxcZCsoPzplWystXT9cXGQrKT8pKCg/OlxcLlxcZCsoPzplWystXT9cXGQrKT8pKykpKy9naVxuXG4vLyBtYXRjaGVzIC5cbmV4cG9ydCBjb25zdCBkb3RzID0gL1xcLi9nXG4iLCAiaW1wb3J0IHsgcmVtb3ZlUXVvdGVzLCBzcGxpdE5vdEluQnJhY2tldHMgfSBmcm9tICcuLi91dGlscy9zdHJVdGlscy5qcydcbmltcG9ydCAqIGFzIHJlZ2V4IGZyb20gJy4uL3V0aWxzL3JlZ2V4LmpzJ1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJy4uL3V0aWxzL25hbWVzcGFjZXMuanMnXG5cbmV4cG9ydCBjbGFzcyBDc3NRdWVyeSB7XG4gIGNvbnN0cnVjdG9yIChxdWVyeSkge1xuICAgIGlmIChDc3NRdWVyeS5jYWNoZS5oYXMocXVlcnkpKSB7XG4gICAgICB0aGlzLnF1ZXJpZXMgPSBDc3NRdWVyeS5jYWNoZS5nZXQocXVlcnkpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBsZXQgcXVlcmllcyA9IHNwbGl0Tm90SW5CcmFja2V0cyhxdWVyeSwgJywnKVxuXG4gICAgcXVlcmllcyA9IHF1ZXJpZXMubWFwKHF1ZXJ5ID0+IHtcblxuICAgICAgbGV0IHJvdW5kQnJhY2tldHMgPSAwXG4gICAgICBsZXQgc3F1YXJlQnJhY2tldHMgPSAwXG5cbiAgICAgIC8vIHRoaXMgaXMgdGhlIHNhbWUgYXMgYWJvdmUgYnV0IGVhc2llclxuICAgICAgcXVlcnkgPSBxdWVyeS5yZXBsYWNlKC9bKClbXFxdPn4rXS9nLCBmdW5jdGlvbiAoY2gpIHtcbiAgICAgICAgaWYgKGNoID09PSAnKCcpICsrcm91bmRCcmFja2V0c1xuICAgICAgICBlbHNlIGlmIChjaCA9PT0gJyknKSAtLXJvdW5kQnJhY2tldHNcbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICdbJykgKytzcXVhcmVCcmFja2V0c1xuICAgICAgICBlbHNlIGlmIChjaCA9PT0gJ10nKSAtLXNxdWFyZUJyYWNrZXRzXG5cbiAgICAgICAgaWYgKCcoKVtdJy5pbmRleE9mKGNoKSA+IC0xKSByZXR1cm4gY2hcbiAgICAgICAgaWYgKHNxdWFyZUJyYWNrZXRzIHx8IHJvdW5kQnJhY2tldHMpIHJldHVybiBjaFxuXG4gICAgICAgIHJldHVybiAnICcgKyBjaCArICcgJ1xuICAgICAgfSlcblxuICAgICAgLy8gc3BsaXQgYXQgc3BhY2UgYW5kIHJlbW92ZSBlbXB0eSByZXN1bHRzXG4gICAgICBxdWVyeSA9IHNwbGl0Tm90SW5CcmFja2V0cyhxdWVyeSwgJyAnKS5maWx0ZXIoZWwgPT4gISFlbC5sZW5ndGgpXG5cbiAgICAgIGNvbnN0IHBhaXJzID0gW11cblxuICAgICAgbGV0IHJlbGF0aW9uID0gJyUnXG5cbiAgICAgIC8vIGdlbmVyYXRlIHF1ZXJ5bm9kZSByZWxhdGlvbiB0dXBsZXNcbiAgICAgIGZvciAobGV0IGkgPSAwLCBpbCA9IHF1ZXJ5Lmxlbmd0aDsgaSA8IGlsOyArK2kpIHtcblxuICAgICAgICBpZiAoJz5+KyUnLmluZGV4T2YocXVlcnlbaV0pID4gLTEpIHtcbiAgICAgICAgICByZWxhdGlvbiA9IHF1ZXJ5W2ldXG4gICAgICAgICAgY29udGludWVcbiAgICAgICAgfVxuXG4gICAgICAgIHBhaXJzLnB1c2goWyByZWxhdGlvbiwgcXVlcnlbaV0gXSlcbiAgICAgICAgcmVsYXRpb24gPSAnJSdcblxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFpcnNcblxuICAgIH0pXG5cbiAgICB0aGlzLnF1ZXJpZXMgPSBxdWVyaWVzXG5cbiAgICAvLyB0byBwcmV2ZW50IG1lbW9yeSBsZWFrcyB3ZSBoYXZlIHRvIG1hbmFnZSBvdXIgY2FjaGUuXG4gICAgLy8gd2UgZGVsZXRlIGV2ZXJ5dGhpbmcgd2hpY2ggaXMgb2xkZXIgdGhhbiA1MCBlbnRyaWVzXG4gICAgaWYgKENzc1F1ZXJ5LmNhY2hlS2V5cy5sZW5ndGggPiA1MCkge1xuICAgICAgQ3NzUXVlcnkuY2FjaGUuZGVsZXRlKENzc1F1ZXJ5LmNhY2hlS2V5cy5zaGlmdCgpKVxuICAgIH1cbiAgICBDc3NRdWVyeS5jYWNoZS5zZXQocXVlcnksIHF1ZXJpZXMpXG4gICAgQ3NzUXVlcnkuY2FjaGVLZXlzLnB1c2gocXVlcnkpXG5cbiAgfVxuXG4gIG1hdGNoZXMgKG5vZGUsIHNjb3BlKSB7XG4gICAgZm9yIChsZXQgaSA9IHRoaXMucXVlcmllcy5sZW5ndGg7IGktLTspIHtcbiAgICAgIGlmICh0aGlzLm1hdGNoSGVscGVyKHRoaXMucXVlcmllc1tpXSwgbm9kZSwgc2NvcGUpKSB7XG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgbWF0Y2hIZWxwZXIgKHF1ZXJ5LCBub2RlLCBzY29wZSkge1xuICAgIHF1ZXJ5ID0gcXVlcnkuc2xpY2UoKVxuICAgIGNvbnN0IGxhc3QgPSBxdWVyeS5wb3AoKVxuXG4gICAgaWYgKCFuZXcgQ3NzUXVlcnlOb2RlKGxhc3RbMV0pLm1hdGNoZXMobm9kZSwgc2NvcGUpKSB7IHJldHVybiBmYWxzZSB9XG5cbiAgICBpZiAoIXF1ZXJ5Lmxlbmd0aCkgcmV0dXJuIHRydWVcblxuICAgIGlmIChsYXN0WzBdID09PSAnLCcpIHJldHVybiB0cnVlXG5cbiAgICBpZiAobGFzdFswXSA9PT0gJysnKSB7XG4gICAgICByZXR1cm4gISFub2RlLnByZXZpb3VzU2libGluZyAmJiB0aGlzLm1hdGNoSGVscGVyKHF1ZXJ5LCBub2RlLnByZXZpb3VzU2libGluZywgc2NvcGUpXG4gICAgfVxuXG4gICAgaWYgKGxhc3RbMF0gPT09ICc+Jykge1xuICAgICAgcmV0dXJuICEhbm9kZS5wYXJlbnROb2RlICYmIHRoaXMubWF0Y2hIZWxwZXIocXVlcnksIG5vZGUucGFyZW50Tm9kZSwgc2NvcGUpXG4gICAgfVxuXG4gICAgaWYgKGxhc3RbMF0gPT09ICd+Jykge1xuICAgICAgd2hpbGUgKChub2RlID0gbm9kZS5wcmV2aW91c1NpYmxpbmcpKSB7XG4gICAgICAgIGlmICh0aGlzLm1hdGNoSGVscGVyKHF1ZXJ5LCBub2RlLCBzY29wZSkpIHsgcmV0dXJuIHRydWUgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgaWYgKGxhc3RbMF0gPT09ICclJykge1xuICAgICAgd2hpbGUgKChub2RlID0gbm9kZS5wYXJlbnROb2RlKSkge1xuICAgICAgICBpZiAodGhpcy5tYXRjaEhlbHBlcihxdWVyeSwgbm9kZSwgc2NvcGUpKSB7IHJldHVybiB0cnVlIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICB9XG59XG5cbkNzc1F1ZXJ5LmNhY2hlID0gbmV3IE1hcCgpXG5Dc3NRdWVyeS5jYWNoZUtleXMgPSBbXVxuXG4vLyBjaGVjayBpZiBbbm9kZV0gaXMgdGhlIFtudGhdIGNoaWxkIG9mIFthcnJdIHdoZXJlIG50aCBjYW4gYWxzbyBiZSBhIGZvcm11bGFcbmNvbnN0IG50aCA9IChub2RlLCBhcnIsIG50aCkgPT4ge1xuXG4gIGlmIChudGggPT09ICdldmVuJykgbnRoID0gJzJuJ1xuICBlbHNlIGlmIChudGggPT09ICdvZGQnKSBudGggPSAnMm4rMSdcblxuICAvLyBjaGVjayBmb3IgZXZhbCBjaGFyc1xuICBpZiAoL1teXFxkXFwtbisqL10rLy50ZXN0KG50aCkpIHJldHVybiBmYWxzZVxuXG4gIG50aCA9IG50aC5yZXBsYWNlKCduJywgJypuJylcblxuICAvLyBldmFsIG50aCB0byBnZXQgdGhlIGluZGV4XG4gIGZvciAodmFyIGksIG4gPSAwLCBubCA9IGFyci5sZW5ndGg7IG4gPCBubDsgKytuKSB7XG4gICAgLyogZXNsaW50IG5vLWV2YWw6IG9mZiAqL1xuICAgIGkgPSBldmFsKG50aClcblxuICAgIGlmIChpID4gbmwpIGJyZWFrXG4gICAgaWYgKGFycltpIC0gMV0gPT09IG5vZGUpIHJldHVybiB0cnVlXG4gIH1cblxuICByZXR1cm4gZmFsc2Vcbn1cblxuY29uc3QgbG93ZXIgPSBhID0+IGEudG9Mb3dlckNhc2UoKVxuXG4vLyBjaGVja3MgaWYgYSBhbmQgYiBhcmUgZXF1YWwuIElzIGluc2Vuc2l0aXZlIHdoZW4gaSBpcyB0cnVlXG5jb25zdCBlcSA9IChhLCBiLCBpKSA9PiBpID8gbG93ZXIoYSkgPT09IGxvd2VyKGIpIDogYSA9PT0gYlxuXG4vLyBbaV0gKHByZWJvdW5kKSBpcyB0cnVlIGlmIGluc2Vuc2l0aXZlIG1hdGNoaW5nIGlzIHJlcXVpcmVkXG4vLyBbYV0gKHByZWJvdW5kKSBpcyB0aGUgdmFsdWUgdGhlIGF0dHIgaXMgY29tcGFyZWQgdG9cbi8vIFtiXSAocGFzc2VkKSAgIGlzIHRoZSB2YWx1ZSBvZiB0aGUgYXR0cmlidXRlXG5jb25zdCBhdHRyaWJ1dGVNYXRjaGVyID0ge1xuICAnPSc6IChpLCBhLCBiKSA9PiBlcShhLCBiLCBpKSxcbiAgJ349JzogKGksIGEsIGIpID0+IGIuc3BsaXQocmVnZXguZGVsaW1pdGVyKS5maWx0ZXIoZWwgPT4gZXEoZWwsIGEsIGkpKS5sZW5ndGggPiAwLFxuICAnfD0nOiAoaSwgYSwgYikgPT4gZXEoYi5zcGxpdChyZWdleC5kZWxpbWl0ZXIpWzBdLCBhLCBpKSxcbiAgJ149JzogKGksIGEsIGIpID0+IGkgPyBsb3dlcihiKS5zdGFydHNXaXRoKGxvd2VyKGEpKSA6IGIuc3RhcnRzV2l0aChhKSxcbiAgJyQ9JzogKGksIGEsIGIpID0+IGkgPyBsb3dlcihiKS5lbmRzV2l0aChsb3dlcihhKSkgOiBiLmVuZHNXaXRoKGEpLFxuICAnKj0nOiAoaSwgYSwgYikgPT4gaSA/IGxvd2VyKGIpLmluY2x1ZGVzKGxvd2VyKGEpKSA6IGIuaW5jbHVkZXMoYSksXG4gICcqJzogKGksIGEsIGIpID0+IGIgIT0gbnVsbFxufVxuXG5jb25zdCBnZXRBdHRyaWJ1dGVWYWx1ZSA9IChwcmVmaXgsIG5hbWUsIG5vZGUpID0+IHtcbiAgaWYgKCFwcmVmaXggfHwgcHJlZml4ID09PSAnKicpIHtcbiAgICByZXR1cm4gbm9kZS5nZXRBdHRyaWJ1dGUobmFtZSlcbiAgfVxuICByZXR1cm4gbm9kZS5nZXRBdHRyaWJ1dGUocHJlZml4ICsgJzonICsgbmFtZSlcbn1cblxuLy8gW2FdIChwcmVib3VuZCkgW2Fdcmd1bWVudCBvZiB0aGUgcHNldWRvIHNlbGVjdG9yXG4vLyBbbl0gKHBhc3NlZCkgICBbbl1vZGVcbi8vIFtzXSAocGFzc2VkKSAgIFtzXWNvcGUgLSB0aGUgZWxlbWVudCB0aGlzIHF1ZXJ5IGlzIHNjb3BlZCB0b1xuY29uc3QgcHNldWRvTWF0Y2hlciA9IHtcbiAgJ2ZpcnN0LWNoaWxkJzogKGEsIG4pID0+IG4ucGFyZW50Tm9kZSAmJiBuLnBhcmVudE5vZGUuZmlyc3RDaGlsZCA9PT0gbixcbiAgJ2xhc3QtY2hpbGQnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG4ucGFyZW50Tm9kZS5sYXN0Q2hpbGQgPT09IG4sXG4gICdudGgtY2hpbGQnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG50aChuLCBuLnBhcmVudE5vZGUuY2hpbGROb2RlcywgYSksXG4gICdudGgtbGFzdC1jaGlsZCc6IChhLCBuKSA9PiBuLnBhcmVudE5vZGUgJiYgbnRoKG4sIG4ucGFyZW50Tm9kZS5jaGlsZE5vZGVzLnNsaWNlKCkucmV2ZXJzZSgpLCBhKSxcbiAgJ2ZpcnN0LW9mLXR5cGUnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG4ucGFyZW50Tm9kZS5jaGlsZE5vZGVzLmZpbHRlcihlbCA9PiBlbC5ub2RlTmFtZSA9PT0gbi5ub2RlTmFtZSlbMF0gPT09IG4sXG4gICdsYXN0LW9mLXR5cGUnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG4ucGFyZW50Tm9kZS5jaGlsZE5vZGVzLmZpbHRlcihlbCA9PiBlbC5ub2RlTmFtZSA9PT0gbi5ub2RlTmFtZSkucG9wKCkgPT09IG4sXG4gICdudGgtb2YtdHlwZSc6IChhLCBuKSA9PiBuLnBhcmVudE5vZGUgJiYgbnRoKG4sIG4ucGFyZW50Tm9kZS5jaGlsZE5vZGVzLmZpbHRlcihlbCA9PiBlbC5ub2RlTmFtZSA9PT0gbi5ub2RlTmFtZSksIGEpLFxuICAnbnRoLWxhc3Qtb2YtdHlwZSc6IChhLCBuKSA9PiBuLnBhcmVudE5vZGUgJiYgbnRoKG4sIG4ucGFyZW50Tm9kZS5jaGlsZE5vZGVzLmZpbHRlcihlbCA9PiBlbC5ub2RlTmFtZSA9PT0gbi5ub2RlTmFtZSkucmV2ZXJzZSgpLCBhKSxcbiAgJ29ubHktY2hpbGQnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG4ucGFyZW50Tm9kZS5jaGlsZE5vZGVzLmxlbmd0aCA9PT0gMSxcbiAgJ29ubHktb2YtdHlwZSc6IChhLCBuKSA9PiBuLnBhcmVudE5vZGUgJiYgbi5wYXJlbnROb2RlLmNoaWxkTm9kZXMuZmlsdGVyKGVsID0+IGVsLm5vZGVOYW1lID09PSBuLm5vZGVOYW1lKS5sZW5ndGggPT09IDEsXG4gIHJvb3Q6IChhLCBuKSA9PiBuLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50ID09PSBuLFxuICBub3Q6IChhLCBuLCBzKSA9PiAhKG5ldyBDc3NRdWVyeShhKSkubWF0Y2hlcyhuLCBzKSxcbiAgbWF0Y2hlczogKGEsIG4sIHMpID0+IChuZXcgQ3NzUXVlcnkoYSkpLm1hdGNoZXMobiwgcyksXG4gIHNjb3BlOiAoYSwgbiwgcykgPT4gbiA9PT0gc1xufVxuXG5leHBvcnQgY2xhc3MgQ3NzUXVlcnlOb2RlIHtcbiAgY29uc3RydWN0b3IgKG5vZGUpIHtcbiAgICB0aGlzLnRhZyA9ICcnXG4gICAgdGhpcy5pZCA9ICcnXG4gICAgdGhpcy5jbGFzc0xpc3QgPSBbXVxuICAgIHRoaXMuYXR0cnMgPSBbXVxuICAgIHRoaXMucHNldWRvID0gW11cblxuICAgIC8vIG1hdGNoIHRoZSB0YWcgbmFtZVxuICAgIGxldCBtYXRjaGVzID0gbm9kZS5tYXRjaCgvXltcXHctXSt8XlxcKi8pXG4gICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgIHRoaXMudGFnID0gbWF0Y2hlc1swXVxuICAgICAgbm9kZSA9IG5vZGUuc2xpY2UodGhpcy50YWcubGVuZ3RoKVxuICAgIH1cblxuICAgIC8vIG1hdGNoIHBzZXVkbyBjbGFzc2VzXG4gICAgd2hpbGUgKChtYXRjaGVzID0gLzooW1xcdy1dKykoPzpcXCgoLispXFwpKT8vZy5leGVjKG5vZGUpKSkge1xuICAgICAgdGhpcy5wc2V1ZG8ucHVzaChwc2V1ZG9NYXRjaGVyW21hdGNoZXNbMV1dLmJpbmQodGhpcywgcmVtb3ZlUXVvdGVzKG1hdGNoZXNbMl0gfHwgJycpKSlcbiAgICAgIG5vZGUgPSBub2RlLnNsaWNlKDAsIG1hdGNoZXMuaW5kZXgpICsgbm9kZS5zbGljZShtYXRjaGVzLmluZGV4ICsgbWF0Y2hlc1swXS5sZW5ndGgpXG4gICAgfVxuXG4gICAgLy8gbWF0Y2ggYXR0cmlidXRlc1xuICAgIHdoaWxlICgobWF0Y2hlcyA9IC9cXFsoW1xcdy0qXStcXHwpPyhbXFx3LV0rKSgoWz1efiR8Kl0rKSguKz8pKCArW2lJXSk/KT9cXF0vZy5leGVjKG5vZGUpKSkge1xuICAgICAgY29uc3QgcHJlZml4ID0gbWF0Y2hlc1sxXSA/IG1hdGNoZXNbMV0uc3BsaXQoJ3wnKVswXSA6IG51bGxcbiAgICAgIHRoaXMuYXR0cnMucHVzaCh7XG4gICAgICAgIG5hbWU6IG1hdGNoZXNbMl0sXG4gICAgICAgIGdldFZhbHVlOiBnZXRBdHRyaWJ1dGVWYWx1ZS5iaW5kKHRoaXMsIHByZWZpeCwgbWF0Y2hlc1syXSksXG4gICAgICAgIG1hdGNoZXI6IGF0dHJpYnV0ZU1hdGNoZXJbbWF0Y2hlc1s0XSB8fCAnKiddLmJpbmQoXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgICAhIW1hdGNoZXNbNl0sIC8vIGNhc2UgaW5zZW5zaXRpdmUgeWVzL25vXG4gICAgICAgICAgcmVtb3ZlUXVvdGVzKChtYXRjaGVzWzVdIHx8ICcnKS50cmltKCkpIC8vIGF0dHJpYnV0ZSB2YWx1ZVxuICAgICAgICApXG4gICAgICB9KVxuICAgICAgbm9kZSA9IG5vZGUuc2xpY2UoMCwgbWF0Y2hlcy5pbmRleCkgKyBub2RlLnNsaWNlKG1hdGNoZXMuaW5kZXggKyBtYXRjaGVzWzBdLmxlbmd0aClcbiAgICB9XG5cbiAgICAvLyBtYXRjaCB0aGUgaWRcbiAgICBtYXRjaGVzID0gbm9kZS5tYXRjaCgvIyhbXFx3LV0rKS8pXG4gICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgIHRoaXMuaWQgPSBtYXRjaGVzWzFdXG4gICAgICBub2RlID0gbm9kZS5zbGljZSgwLCBtYXRjaGVzLmluZGV4KSArIG5vZGUuc2xpY2UobWF0Y2hlcy5pbmRleCArIG1hdGNoZXNbMF0ubGVuZ3RoKVxuICAgIH1cblxuICAgIC8vIG1hdGNoIGNsYXNzZXNcbiAgICB3aGlsZSAoKG1hdGNoZXMgPSAvXFwuKFtcXHctXSspL2cuZXhlYyhub2RlKSkpIHtcbiAgICAgIHRoaXMuY2xhc3NMaXN0LnB1c2gobWF0Y2hlc1sxXSlcbiAgICAgIG5vZGUgPSBub2RlLnNsaWNlKDAsIG1hdGNoZXMuaW5kZXgpICsgbm9kZS5zbGljZShtYXRjaGVzLmluZGV4ICsgbWF0Y2hlc1swXS5sZW5ndGgpXG4gICAgfVxuICB9XG5cbiAgbWF0Y2hlcyAobm9kZSwgc2NvcGUpIHtcbiAgICBsZXQgaVxuXG4gICAgaWYgKG5vZGUubm9kZVR5cGUgIT09IDEpIHJldHVybiBmYWxzZVxuXG4gICAgLy8gQWx3YXlzIHRoaXMgZXh0cmEgY29kZSBmb3IgaHRtbCAtLi1cbiAgICBpZiAobm9kZS5uYW1lc3BhY2VVUkkgPT09IGh0bWwpIHtcbiAgICAgIHRoaXMudGFnID0gdGhpcy50YWcudG9VcHBlckNhc2UoKVxuICAgIH1cblxuICAgIGlmICh0aGlzLnRhZyAmJiB0aGlzLnRhZyAhPT0gbm9kZS5ub2RlTmFtZSAmJiB0aGlzLnRhZyAhPT0gJyonKSB7IHJldHVybiBmYWxzZSB9XG5cbiAgICBpZiAodGhpcy5pZCAmJiB0aGlzLmlkICE9PSBub2RlLmlkKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc0xpc3QgPSAobm9kZS5nZXRBdHRyaWJ1dGUoJ2NsYXNzJykgfHwgJycpLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikuZmlsdGVyKGVsID0+ICEhZWwubGVuZ3RoKVxuICAgIGlmICh0aGlzLmNsYXNzTGlzdC5maWx0ZXIoY2xhc3NOYW1lID0+IGNsYXNzTGlzdC5pbmRleE9mKGNsYXNzTmFtZSkgPCAwKS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIGZvciAoaSA9IHRoaXMuYXR0cnMubGVuZ3RoOyBpLS07KSB7XG4gICAgICBjb25zdCBhdHRyVmFsdWUgPSB0aGlzLmF0dHJzW2ldLmdldFZhbHVlKG5vZGUpXG4gICAgICBpZiAoYXR0clZhbHVlID09PSBudWxsIHx8ICF0aGlzLmF0dHJzW2ldLm1hdGNoZXIoYXR0clZhbHVlKSkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmb3IgKGkgPSB0aGlzLnBzZXVkby5sZW5ndGg7IGktLTspIHtcbiAgICAgIGlmICghdGhpcy5wc2V1ZG9baV0obm9kZSwgc2NvcGUpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0cnVlXG4gIH1cblxufVxuIiwgImltcG9ydCB7IENzc1F1ZXJ5IH0gZnJvbSAnLi4vLi4vb3RoZXIvQ3NzUXVlcnkuanMnXG5pbXBvcnQgeyBOb2RlSXRlcmF0b3IgfSBmcm9tICcuLi8uLi91dGlscy9Ob2RlSXRlcmF0b3IuanMnXG5pbXBvcnQgeyBOb2RlRmlsdGVyIH0gZnJvbSAnLi4vTm9kZUZpbHRlci5qcydcbmltcG9ydCB7IG5vZGVzVG9Ob2RlIH0gZnJvbSAnLi4vLi4vdXRpbHMvbm9kZXNUb05vZGUuanMnXG5cbi8vIGh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jcGFyZW50bm9kZVxuY29uc3QgUGFyZW50Tm9kZSA9IHtcbiAgbWF0Y2hXaXRoU2NvcGUgKHF1ZXJ5LCBzY29wZSkge1xuICAgIHJldHVybiBuZXcgQ3NzUXVlcnkocXVlcnkpLm1hdGNoZXModGhpcywgc2NvcGUpXG4gIH0sXG5cbiAgcXVlcnkgKHF1ZXJ5LCBzY29wZSwgc2luZ2xlID0gZmFsc2UpIHtcblxuICAgIGNvbnN0IGl0ZXIgPSBuZXcgTm9kZUl0ZXJhdG9yKHNjb3BlLCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgKG5vZGUpID0+IG5vZGUubWF0Y2hXaXRoU2NvcGUocXVlcnksIHNjb3BlKSA/IE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVCA6IE5vZGVGaWx0ZXIuRklMVEVSX0lHTk9SRSwgZmFsc2UpXG5cbiAgICBjb25zdCBub2RlcyA9IFtdXG4gICAgZm9yIChjb25zdCBub2RlIG9mIGl0ZXIpIHtcbiAgICAgIG5vZGVzLnB1c2gobm9kZSlcbiAgICAgIGlmIChzaW5nbGUpIHJldHVybiBub2Rlc1xuICAgIH1cblxuICAgIHJldHVybiBub2Rlc1xuICB9LFxuXG4gIHF1ZXJ5U2VsZWN0b3JBbGwgKHF1ZXJ5KSB7XG4gICAgcmV0dXJuIHRoaXMucXVlcnkocXVlcnksIHRoaXMpXG4gIH0sXG5cbiAgcXVlcnlTZWxlY3RvciAocXVlcnkpIHtcbiAgICByZXR1cm4gdGhpcy5xdWVyeShxdWVyeSwgdGhpcywgdHJ1ZSlbMF0gfHwgbnVsbFxuICB9LFxuXG4gIGNsb3Nlc3QgKHF1ZXJ5KSB7XG4gICAgY29uc3QgY3NzUXVlcnkgPSBuZXcgQ3NzUXVlcnkocXVlcnkpXG4gICAgbGV0IG5vZGUgPSB0aGlzXG4gICAgd2hpbGUgKG5vZGUpIHtcbiAgICAgIGlmIChjc3NRdWVyeS5tYXRjaGVzKG5vZGUsIHRoaXMpKSB7XG4gICAgICAgIHJldHVybiBub2RlXG4gICAgICB9XG4gICAgICBub2RlID0gbm9kZS5wYXJlbnROb2RlXG4gICAgfVxuICAgIHJldHVybiBudWxsXG4gIH0sXG5cbiAgcHJlcGVuZCAoLi4ubm9kZXMpIHtcbiAgICBjb25zdCBub2RlID0gbm9kZXNUb05vZGUobm9kZXMsIHRoaXMub3duZXJEb2N1bWVudClcblxuICAgIHRoaXMuaW5zZXJ0QmVmb3JlKG5vZGUsIHRoaXMuZmlyc3RDaGlsZClcbiAgfSxcblxuICBhcHBlbmQgKC4uLm5vZGVzKSB7XG4gICAgY29uc3Qgbm9kZSA9IG5vZGVzVG9Ob2RlKG5vZGVzLCB0aGlzLm93bmVyRG9jdW1lbnQpXG4gICAgdGhpcy5hcHBlbmRDaGlsZChub2RlKVxuICB9LFxuXG4gIHJlcGxhY2VDaGlsZHJlbiAoLi4ubm9kZXMpIHtcbiAgICB3aGlsZSAodGhpcy5maXJzdENoaWxkKSB7XG4gICAgICB0aGlzLnJlbW92ZUNoaWxkKHRoaXMuZmlyc3RDaGlsZClcbiAgICB9XG4gICAgdGhpcy5hcHBlbmQoLi4ubm9kZXMpXG4gIH1cbn1cblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoUGFyZW50Tm9kZSwge1xuICBjaGlsZHJlbjoge1xuICAgIGdldCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jaGlsZE5vZGVzLmZpbHRlcihmdW5jdGlvbiAobm9kZSkgeyByZXR1cm4gbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5FTEVNRU5UX05PREUgfSlcbiAgICB9XG4gIH0sXG4gIGZpcnN0RWxlbWVudENoaWxkOiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiB0aGlzLmNoaWxkTm9kZXMpIHtcbiAgICAgICAgaWYgKG5vZGUgJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5FTEVNRU5UX05PREUpIHtcbiAgICAgICAgICByZXR1cm4gbm9kZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgfSxcbiAgbGFzdEVsZW1lbnRDaGlsZDoge1xuICAgIGdldCAoKSB7XG4gICAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdGhpcy5jaGlsZE5vZGVzLnNsaWNlKCkucmV2ZXJzZSgpKSB7XG4gICAgICAgIGlmIChub2RlICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgICAgICAgcmV0dXJuIG5vZGVcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH0sXG4gIGNoaWxkRWxlbWVudENvdW50OiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmNoaWxkcmVuLmxlbmd0aFxuICAgIH1cbiAgfVxufSlcblxuZXhwb3J0IHsgUGFyZW50Tm9kZSB9XG4iLCAiaW1wb3J0IHsgTm9kZUl0ZXJhdG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvTm9kZUl0ZXJhdG9yLmpzJ1xuaW1wb3J0IHsgTm9kZUZpbHRlciB9IGZyb20gJy4uL05vZGVGaWx0ZXIuanMnXG5cbi8vIGh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jaW50ZXJmYWNlLW5vbmVsZW1lbnRwYXJlbnRub2RlXG5leHBvcnQgY29uc3QgTm9uRWxlbWVudFBhcmVudE5vZGUgPSB7XG4gIGdldEVsZW1lbnRCeUlkIChpZCkge1xuICAgIGNvbnN0IGl0ZXIgPSBuZXcgTm9kZUl0ZXJhdG9yKHRoaXMsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCAobm9kZSkgPT4gaWQgPT09IG5vZGUuaWQgPyBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQgOiBOb2RlRmlsdGVyLkZJTFRFUl9JR05PUkUsIGZhbHNlKVxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiBpdGVyKSB7XG4gICAgICByZXR1cm4gbm9kZVxuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9XG59XG4iLCAiaW1wb3J0IHsgTm9kZSB9IGZyb20gJy4vTm9kZS5qcydcbmltcG9ydCB7IG1peGluIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcbmltcG9ydCB7IGVsZW1lbnRBY2Nlc3MgfSBmcm9tICcuL21peGlucy9lbGVtZW50QWNjZXNzLmpzJ1xuaW1wb3J0IHsgUGFyZW50Tm9kZSB9IGZyb20gJy4vbWl4aW5zL1BhcmVudE5vZGUuanMnXG5pbXBvcnQgeyBOb25FbGVtZW50UGFyZW50Tm9kZSB9IGZyb20gJy4vbWl4aW5zL05vbkVsZW1lbnRQYXJlbnROb2RlLmpzJ1xuZXhwb3J0IGNsYXNzIERvY3VtZW50RnJhZ21lbnQgZXh0ZW5kcyBOb2RlIHtcbiAgY29uc3RydWN0b3IgKG5hbWUsIHByb3BzKSB7XG4gICAgc3VwZXIobmFtZSwgcHJvcHMpXG4gICAgdGhpcy5ub2RlVHlwZSA9IE5vZGUuRE9DVU1FTlRfRlJBR01FTlRfTk9ERVxuICB9XG59XG5cbm1peGluKGVsZW1lbnRBY2Nlc3MsIERvY3VtZW50RnJhZ21lbnQpXG5taXhpbihQYXJlbnROb2RlLCBEb2N1bWVudEZyYWdtZW50KVxubWl4aW4oTm9uRWxlbWVudFBhcmVudE5vZGUsIERvY3VtZW50RnJhZ21lbnQpXG4iLCAiaW1wb3J0IHNheCBmcm9tICdzYXgnXG5cbi8vIFRPRE86IEl0cyBhbiBYTUxQYXJzZXIgbm90IEhUTUxQYXJzZXIhIVxuZXhwb3J0IGNvbnN0IEhUTUxQYXJzZXIgPSBmdW5jdGlvbiAoc3RyLCBlbCkge1xuICBsZXQgY3VycmVudFRhZyA9IGVsXG4gIC8vIGNvbnN0IG5hbWVzcGFjZXMgPSB7IHhtbG5zOiBlbC5nZXRBdHRyaWJ1dGUoJ3htbG5zJykgfVxuICBsZXQgZG9jdW1lbnQgPSBlbC5vd25lckRvY3VtZW50XG4gIGxldCBjZGF0YSA9IG51bGxcblxuICAvLyBzYXggZXhwZWN0cyBhIHJvb3QgZWxlbWVudCBidXQgd2UgYWxzbyBtaXNzdXNlIGl0IHRvIHBhcnNlIGZyYWdtZW50c1xuICBpZiAoZWwubm9kZVR5cGUgIT09IGVsLkRPQ1VNRU5UX05PREUpIHtcbiAgICBzdHIgPSAnPHN2Z2RvbTp3cmFwcGVyIHhtbG5zOnN2Z2RvbT1cInN2Z2RvbTpyb2Nrc1wiPicgKyBzdHIgKyAnPC9zdmdkb206d3JhcHBlcj4nXG4gIH0gZWxzZSB7XG4gICAgZG9jdW1lbnQgPSBlbFxuICB9XG5cbiAgY29uc3QgcGFyc2VyID0gc2F4LnBhcnNlcih0cnVlLCB7XG4gICAgLy8gbG93ZXJjYXNlOiB0cnVlLFxuICAgIHhtbG5zOiB0cnVlLFxuICAgIHN0cmljdEVudGl0aWVzOiB0cnVlXG4gIH0pXG5cbiAgcGFyc2VyLm9uZXJyb3IgPSAoZSkgPT4ge1xuICAgIHRocm93IGVcbiAgfVxuXG4gIHBhcnNlci5vbmRvY3R5cGUgPSAoKSA9PiB7XG4gICAgaWYgKGN1cnJlbnRUYWcgIT09IGRvY3VtZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RvY3R5cGUgY2FuIG9ubHkgYmUgYXBwZW5kZWQgdG8gZG9jdW1lbnQnKVxuICAgIH1cbiAgICBjdXJyZW50VGFnLmFwcGVuZENoaWxkKGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZURvY3VtZW50VHlwZSgpKVxuICB9XG5cbiAgcGFyc2VyLm9udGV4dCA9IChzdHIpID0+IGN1cnJlbnRUYWcuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoc3RyKSlcbiAgcGFyc2VyLm9uY29tbWVudCA9IChzdHIpID0+IGN1cnJlbnRUYWcuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlQ29tbWVudChzdHIpKVxuXG4gIC8vIHBhcnNlci5vbm9wZW5uYW1lc3BhY2UgPSBucyA9PiB7XG4gIC8vICAgbmFtZXNwYWNlc1tucy5wcmVmaXhdID0gbnMudXJpXG4gIC8vIH1cbiAgLy8gcGFyc2VyLm9uY2xvc2VuYW1lc3BhY2UgPSBucyA9PiB7XG4gIC8vICAgZGVsZXRlIG5hbWVzcGFjZXNbbnMucHJlZml4XVxuICAvLyB9XG5cbiAgcGFyc2VyLm9ub3BlbnRhZyA9IG5vZGUgPT4ge1xuICAgIGlmIChub2RlLm5hbWUgPT09ICdzdmdkb206d3JhcHBlcicpIHJldHVyblxuXG4gICAgY29uc3QgYXR0cnMgPSBub2RlLmF0dHJpYnV0ZXNcblxuICAgIGNvbnN0IHVyaSA9IG5vZGUudXJpIHx8IGN1cnJlbnRUYWcubG9va3VwTmFtZXNwYWNlVVJJKG5vZGUucHJlZml4IHx8IG51bGwpXG5cbiAgICBjb25zdCBuZXdFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKHVyaSwgbm9kZS5uYW1lKVxuXG4gICAgZm9yIChjb25zdCBbIG5hbWUsIG5vZGUgXSBvZiBPYmplY3QuZW50cmllcyhhdHRycykpIHtcbiAgICAgIG5ld0VsZW1lbnQuc2V0QXR0cmlidXRlTlMobm9kZS51cmksIG5hbWUsIG5vZGUudmFsdWUpXG4gICAgfVxuXG4gICAgY3VycmVudFRhZy5hcHBlbmRDaGlsZChuZXdFbGVtZW50KVxuICAgIGN1cnJlbnRUYWcgPSBuZXdFbGVtZW50XG4gIH1cblxuICBwYXJzZXIub25jbG9zZXRhZyA9IHRhZ05hbWUgPT4ge1xuICAgIGlmICh0YWdOYW1lID09PSAnc3ZnZG9tOndyYXBwZXInKSByZXR1cm5cblxuICAgIGN1cnJlbnRUYWcgPSBjdXJyZW50VGFnLnBhcmVudE5vZGVcbiAgfVxuXG4gIHBhcnNlci5vbm9wZW5jZGF0YSA9ICgpID0+IHtcbiAgICBjZGF0YSA9IGRvY3VtZW50LmNyZWF0ZUNEQVRBU2VjdGlvbignJylcbiAgfVxuXG4gIHBhcnNlci5vbmNkYXRhID0gKHN0cikgPT4ge1xuICAgIGNkYXRhLmFwcGVuZERhdGEoc3RyKVxuICB9XG5cbiAgcGFyc2VyLm9uY2xvc2VjZGF0YSA9ICgpID0+IHtcbiAgICBjdXJyZW50VGFnLmFwcGVuZENoaWxkKGNkYXRhKVxuICB9XG5cbiAgcGFyc2VyLndyaXRlKHN0cilcbn1cbiIsICJpbXBvcnQgeyBkZWNhbWVsaXplIH0gZnJvbSAnLi4vdXRpbHMvc3RyVXRpbHMuanMnXG5cbmV4cG9ydCBjb25zdCBvYmplY3RUb01hcCA9IGZ1bmN0aW9uIChvYmopIHtcbiAgaWYgKG9iaiBpbnN0YW5jZW9mIE1hcCkgcmV0dXJuIG5ldyBNYXAob2JqKVxuICByZXR1cm4gT2JqZWN0LmtleXMob2JqKS5yZWR1Y2UoKG1hcCwga2V5KSA9PiBtYXAuc2V0KGtleSwgb2JqW2tleV0pLCBuZXcgTWFwKCkpXG59XG5cbmV4cG9ydCBjb25zdCBtYXBUb09iamVjdCA9IGZ1bmN0aW9uIChtYXApIHtcbiAgdmFyIG9iaiA9IHt9XG4gIG1hcC5mb3JFYWNoKGZ1bmN0aW9uICh2YWx1ZSwga2V5KSB7XG4gICAgb2JqW2tleV0gPSB2YWx1ZVxuICB9KVxuICByZXR1cm4gb2JqXG59XG5cbmV4cG9ydCBjb25zdCBtYXBNYXAgPSBmdW5jdGlvbiAobWFwLCBjYikge1xuICB2YXIgYXJyID0gW11cbiAgbWFwLmZvckVhY2goZnVuY3Rpb24gKHZhbHVlLCBrZXkpIHtcbiAgICBhcnIucHVzaChjYih2YWx1ZSwga2V5KSlcbiAgfSlcbiAgcmV0dXJuIGFyclxufVxuXG5leHBvcnQgY29uc3QgbWFwVG9Dc3MgPSBmdW5jdGlvbiAobXlNYXApIHtcbiAgcmV0dXJuIG1hcE1hcChteU1hcCwgZnVuY3Rpb24gKHZhbHVlLCBrZXkpIHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm4gZmFsc2VcbiAgICByZXR1cm4gZGVjYW1lbGl6ZShrZXkpICsgJzogJyArIHZhbHVlXG4gIH0pLmZpbHRlcihmdW5jdGlvbiAoZWwpIHsgcmV0dXJuICEhZWwgfSkuam9pbignOyAnKSArICc7JyB8fCBudWxsXG59XG5cbmV4cG9ydCBjb25zdCBjc3NUb01hcCA9IGZ1bmN0aW9uIChjc3MpIHtcbiAgcmV0dXJuIG5ldyBNYXAoY3NzLnNwbGl0KC9cXHMqO1xccyovKS5maWx0ZXIoZnVuY3Rpb24gKGVsKSB7IHJldHVybiAhIWVsIH0pLm1hcChmdW5jdGlvbiAoZWwpIHtcbiAgICByZXR1cm4gZWwuc3BsaXQoL1xccyo6XFxzKi8pXG4gIH0pKVxufVxuIiwgImltcG9ydCB7IE5vZGUgfSBmcm9tICcuL05vZGUuanMnXG5cbmltcG9ydCB7IFBhcmVudE5vZGUgfSBmcm9tICcuL21peGlucy9QYXJlbnROb2RlLmpzJ1xuaW1wb3J0IHsgZWxlbWVudEFjY2VzcyB9IGZyb20gJy4vbWl4aW5zL2VsZW1lbnRBY2Nlc3MuanMnXG5pbXBvcnQgeyBIVE1MUGFyc2VyIH0gZnJvbSAnLi9odG1sL0hUTUxQYXJzZXIuanMnXG5pbXBvcnQgeyBEb2N1bWVudEZyYWdtZW50IH0gZnJvbSAnLi9Eb2N1bWVudEZyYWdtZW50LmpzJ1xuaW1wb3J0IHsgbWl4aW4gfSBmcm9tICcuLi91dGlscy9vYmplY3RDcmVhdGlvblV0aWxzLmpzJ1xuaW1wb3J0IHsgdGFnIH0gZnJvbSAnLi4vdXRpbHMvdGFnVXRpbHMuanMnXG5pbXBvcnQgeyBjc3NUb01hcCwgbWFwVG9Dc3MgfSBmcm9tICcuLi91dGlscy9tYXBVdGlscy5qcydcbmltcG9ydCB7IGhleFRvUkdCLCBkZWNhbWVsaXplLCBodG1sRW50aXRpZXMsIGNkYXRhLCBjb21tZW50IH0gZnJvbSAnLi4vdXRpbHMvc3RyVXRpbHMuanMnXG5pbXBvcnQgeyBOb25Eb2N1bWVudFR5cGVDaGlsZE5vZGUgfSBmcm9tICcuL21peGlucy9Ob25Eb2N1bWVudFR5cGVDaGlsZE5vZGUuanMnXG5pbXBvcnQgeyBDaGlsZE5vZGUgfSBmcm9tICcuL21peGlucy9DaGlsZE5vZGUuanMnXG5pbXBvcnQgeyBodG1sLCB4bWwsIHhtbG5zIH0gZnJvbSAnLi4vdXRpbHMvbmFtZXNwYWNlcy5qcydcblxuY29uc3QgdmFsaWRhdGVBbmRFeHRyYWN0ID0gKG5zLCBuYW1lKSA9PiB7XG4gIGxldCBwcmVmaXggPSBudWxsXG4gIGxldCBsb2NhbG5hbWUgPSBuYW1lXG5cbiAgaWYgKCFucykgbnMgPSBudWxsXG5cbiAgaWYgKG5hbWUuaW5jbHVkZXMoJzonKSkge1xuICAgIFsgcHJlZml4LCBsb2NhbG5hbWUgXSA9IG5hbWUuc3BsaXQoJzonKVxuICB9XG5cbiAgaWYgKCFucyAmJiBwcmVmaXgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05hbWVzcGFjZSBFcnJvcicpXG4gIH1cblxuICBpZiAocHJlZml4ID09PSAneG1sJyAmJiBucyAhPT0geG1sKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOYW1lc3BhY2UgRXJyb3InKVxuICB9XG5cbiAgaWYgKChwcmVmaXggPT09ICd4bWxucycgfHwgbmFtZSA9PT0gJ3htbG5zJykgJiYgbnMgIT09IHhtbG5zKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOYW1lc3BhY2UgRXJyb3InKVxuICB9XG5cbiAgaWYgKHByZWZpeCAhPT0gJ3htbG5zJyAmJiBuYW1lICE9PSAneG1sbnMnICYmIG5zID09PSB4bWxucykge1xuICAgIHRocm93IG5ldyBFcnJvcignTmFtZXNwYWNlIEVycm9yJylcbiAgfVxuXG4gIHJldHVybiBbIG5zLCBwcmVmaXgsIGxvY2FsbmFtZSBdXG59XG5cbmNvbnN0IGdldEF0dHJpYnV0ZUJ5TnNBbmRMb2NhbE5hbWUgPSAoZWwsIG5zLCBsb2NhbE5hbWUpID0+IHtcbiAgaWYgKCFucykgbnMgPSBudWxsXG4gIHJldHVybiBbIC4uLmVsLmF0dHJzIF0uZmluZCgobm9kZSkgPT4gbm9kZS5sb2NhbE5hbWUgPT09IGxvY2FsTmFtZSAmJiBub2RlLm5hbWVzcGFjZVVSSSA9PT0gbnMpXG59XG5cbmNvbnN0IGdldEF0dHJpYnV0ZUJ5UXVhbGlmaWVkTmFtZSA9IChlbCwgcXVhbGlmaWVkTmFtZSkgPT4ge1xuICBpZiAoZWwubmFtZXNwYWNlVVJJID09PSBodG1sICYmIGVsLm93bmVyRG9jdW1lbnQubmFtZXNwYWNlVVJJID09PSBodG1sKSB7XG4gICAgcXVhbGlmaWVkTmFtZSA9IHF1YWxpZmllZE5hbWUudG9Mb3dlckNhc2UoKVxuICB9XG5cbiAgcmV0dXJuIFsgLi4uZWwuYXR0cnMgXS5maW5kKChub2RlKSA9PiBub2RlLm5hbWUgPT09IHF1YWxpZmllZE5hbWUpXG59XG5cbi8vIFRoaXMgUHJveHkgcHJveGllcyBhbGwgYWNjZXNzIHRvIG5vZGUuc3R5bGUgdG8gdGhlIGNzcyBzYXZlZCBpbiB0aGUgYXR0cmlidXRlXG5jb25zdCBnZXRTdHlsZVByb3h5ID0gKG5vZGUpID0+IHtcblxuICByZXR1cm4gbmV3IFByb3h5KG5vZGUsIHtcbiAgICBnZXQgKHRhcmdldCwga2V5KSB7XG4gICAgICBjb25zdCBzdHlsZXMgPSB0YXJnZXQuZ2V0QXR0cmlidXRlKCdzdHlsZScpIHx8ICcnXG4gICAgICBjb25zdCBzdHlsZU1hcCA9IGNzc1RvTWFwKHN0eWxlcylcblxuICAgICAgaWYgKGtleSA9PT0gJ2Nzc1RleHQnKSB7XG4gICAgICAgIHJldHVybiBzdHlsZXNcbiAgICAgIH1cblxuICAgICAgaWYgKGtleSA9PT0gJ3NldFByb3BlcnR5Jykge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKHByb3BlcnR5TmFtZSwgdmFsdWUgPSAnJywgcHJpb3JpdHkgPSAnJykge1xuICAgICAgICAgIG5vZGUuc3R5bGVbcHJvcGVydHlOYW1lXSA9IHZhbHVlICsgKHByaW9yaXR5ID8gYCAhJHtwcmlvcml0eX1gIDogJycpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGtleSA9PT0gJ2dldFByb3BlcnR5VmFsdWUnKSB7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAocHJvcGVydHlOYW1lKSB7XG4gICAgICAgICAgcmV0dXJuIG5vZGUuc3R5bGVbcHJvcGVydHlOYW1lXSA/PyAnJ1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGtleSA9IGRlY2FtZWxpemUoa2V5KVxuICAgICAgaWYgKCFzdHlsZU1hcC5oYXMoa2V5KSkgcmV0dXJuICcnXG5cbiAgICAgIHJldHVybiBzdHlsZU1hcC5nZXQoa2V5KVxuICAgIH0sXG4gICAgc2V0ICh0YXJnZXQsIGtleSwgdmFsdWUpIHtcbiAgICAgIGtleSA9IGRlY2FtZWxpemUoa2V5KVxuXG4gICAgICBpZiAoa2V5ID09PSAnY3NzLXRleHQnKSB7XG4gICAgICAgIC8vIGVuc3VyZSBjb3JyZWN0IHNwYWNpbmcgYW5kIHN5bnRheCBieSBjb252ZXJ0aW5nIGJhY2sgYW5kIGZvcnRoXG4gICAgICAgIHRhcmdldC5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywgbWFwVG9Dc3MoY3NzVG9NYXAodmFsdWUpKSlcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhbHVlID0gaGV4VG9SR0IodmFsdWUudG9TdHJpbmcoKSlcbiAgICAgICAgY29uc3Qgc3R5bGVzID0gdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3R5bGUnKSB8fCAnJ1xuICAgICAgICBjb25zdCBzdHlsZU1hcCA9IGNzc1RvTWFwKHN0eWxlcylcbiAgICAgICAgc3R5bGVNYXAuc2V0KGtleSwgdmFsdWUpXG5cbiAgICAgICAgdGFyZ2V0LnNldEF0dHJpYnV0ZSgnc3R5bGUnLCBtYXBUb0NzcyhzdHlsZU1hcCkpXG5cbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgICB9XG4gIH0pXG59XG5cbi8vIGh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jZG9tLWVsZW1lbnQtc2V0YXR0cmlidXRlbnNcbmV4cG9ydCBjbGFzcyBFbGVtZW50IGV4dGVuZHMgTm9kZSB7XG4gIGNvbnN0cnVjdG9yIChuYW1lLCBwcm9wcywgbnMpIHtcbiAgICBzdXBlcihuYW1lLCBwcm9wcywgbnMpXG5cbiAgICB0aGlzLnN0eWxlID0gZ2V0U3R5bGVQcm94eSh0aGlzKVxuICAgIHRoaXMudGFnTmFtZSA9IHRoaXMubm9kZU5hbWVcbiAgfVxuXG4gIGdldEF0dHJpYnV0ZSAocXVhbGlmaWVkTmFtZSkge1xuICAgIGNvbnN0IGF0dHIgPSB0aGlzLmdldEF0dHJpYnV0ZU5vZGUocXVhbGlmaWVkTmFtZSlcbiAgICByZXR1cm4gYXR0ciA/IGF0dHIudmFsdWUgOiBudWxsXG4gIH1cblxuICBnZXRBdHRyaWJ1dGVOb2RlIChxdWFsaWZpZWROYW1lKSB7XG4gICAgcmV0dXJuIGdldEF0dHJpYnV0ZUJ5UXVhbGlmaWVkTmFtZSh0aGlzLCBxdWFsaWZpZWROYW1lKVxuICB9XG5cbiAgZ2V0QXR0cmlidXRlTm9kZU5TIChucywgbG9jYWxOYW1lKSB7XG4gICAgcmV0dXJuIGdldEF0dHJpYnV0ZUJ5TnNBbmRMb2NhbE5hbWUodGhpcywgbnMsIGxvY2FsTmFtZSlcbiAgfVxuXG4gIGdldEF0dHJpYnV0ZU5TIChucywgbG9jYWxOYW1lKSB7XG4gICAgY29uc3QgYXR0ciA9IHRoaXMuZ2V0QXR0cmlidXRlTm9kZU5TKG5zLCBsb2NhbE5hbWUpXG4gICAgcmV0dXJuIGF0dHIgPyBhdHRyLnZhbHVlIDogbnVsbFxuICB9XG5cbiAgZ2V0Qm91bmRpbmdDbGllbnRSZWN0ICgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ09ubHkgaW1wbGVtZW50ZWQgZm9yIFNWRyBFbGVtZW50cycpXG4gIH1cblxuICBoYXNBdHRyaWJ1dGUgKHF1YWxpZmllZE5hbWUpIHtcbiAgICBjb25zdCBhdHRyID0gdGhpcy5nZXRBdHRyaWJ1dGVOb2RlKHF1YWxpZmllZE5hbWUpXG4gICAgcmV0dXJuICEhYXR0clxuICB9XG5cbiAgaGFzQXR0cmlidXRlTlMgKG5zLCBsb2NhbE5hbWUpIHtcbiAgICBjb25zdCBhdHRyID0gdGhpcy5nZXRBdHRyaWJ1dGVOb2RlTlMobnMsIGxvY2FsTmFtZSlcbiAgICByZXR1cm4gISFhdHRyXG4gIH1cblxuICBtYXRjaGVzIChxdWVyeSkge1xuICAgIHJldHVybiB0aGlzLm1hdGNoV2l0aFNjb3BlKHF1ZXJ5LCB0aGlzKVxuICB9XG5cbiAgcmVtb3ZlQXR0cmlidXRlIChxdWFsaWZpZWROYW1lKSB7XG4gICAgY29uc3QgYXR0ciA9IHRoaXMuZ2V0QXR0cmlidXRlTm9kZShxdWFsaWZpZWROYW1lKVxuICAgIGlmIChhdHRyKSB7XG4gICAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZU5vZGUoYXR0cilcbiAgICB9XG4gICAgcmV0dXJuIGF0dHJcbiAgfVxuXG4gIHJlbW92ZUF0dHJpYnV0ZU5vZGUgKG5vZGUpIHtcbiAgICBpZiAoIXRoaXMuYXR0cnMuZGVsZXRlKG5vZGUpKSB0aHJvdyBuZXcgRXJyb3IoJ0F0dHJpYnV0ZSBjYW5ub3QgYmUgcmVtb3ZlZCBiZWNhdXNlIGl0IHdhcyBub3QgZm91bmQgb24gdGhlIGVsZW1lbnQnKVxuICAgIHJldHVybiBub2RlXG4gIH1cblxuICAvLyBjYWxsIGlzOiBkLnJlbW92ZUF0dHJpYnV0ZU5TKCdodHRwOi8vd3d3Lm1vemlsbGEub3JnL25zL3NwZWNpYWxzcGFjZScsICdhbGlnbicsICdjZW50ZXInKTtcbiAgcmVtb3ZlQXR0cmlidXRlTlMgKG5zLCBsb2NhbE5hbWUpIHtcbiAgICBjb25zdCBhdHRyID0gdGhpcy5nZXRBdHRyaWJ1dGVOb2RlTlMobnMsIGxvY2FsTmFtZSlcbiAgICBpZiAoYXR0cikge1xuICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGVOb2RlKGF0dHIpXG4gICAgfVxuICAgIHJldHVybiBhdHRyXG4gIH1cblxuICAvKiBUaGUgc2V0QXR0cmlidXRlKHF1YWxpZmllZE5hbWUsIHZhbHVlKSBtZXRob2QsIHdoZW4gaW52b2tlZCwgbXVzdCBydW4gdGhlc2Ugc3RlcHM6XG5cbiAgICBJZiBxdWFsaWZpZWROYW1lIGRvZXMgbm90IG1hdGNoIHRoZSBOYW1lIHByb2R1Y3Rpb24gaW4gWE1MLCB0aGVuIHRocm93IGFuIFwiSW52YWxpZENoYXJhY3RlckVycm9yXCIgRE9NRXhjZXB0aW9uLlxuXG4gICAgSWYgdGhpcyBpcyBpbiB0aGUgSFRNTCBuYW1lc3BhY2UgYW5kIGl0cyBub2RlIGRvY3VtZW50IGlzIGFuIEhUTUwgZG9jdW1lbnQsIHRoZW4gc2V0IHF1YWxpZmllZE5hbWUgdG8gcXVhbGlmaWVkTmFtZSBpbiBBU0NJSSBsb3dlcmNhc2UuXG5cbiAgICBMZXQgYXR0cmlidXRlIGJlIHRoZSBmaXJzdCBhdHRyaWJ1dGUgaW4gdGhpc1x1MjAxOXMgYXR0cmlidXRlIGxpc3Qgd2hvc2UgcXVhbGlmaWVkIG5hbWUgaXMgcXVhbGlmaWVkTmFtZSwgYW5kIG51bGwgb3RoZXJ3aXNlLlxuXG4gICAgSWYgYXR0cmlidXRlIGlzIG51bGwsIGNyZWF0ZSBhbiBhdHRyaWJ1dGUgd2hvc2UgbG9jYWwgbmFtZSBpcyBxdWFsaWZpZWROYW1lLCB2YWx1ZSBpcyB2YWx1ZSwgYW5kIG5vZGUgZG9jdW1lbnQgaXMgdGhpc1x1MjAxOXMgbm9kZSBkb2N1bWVudCwgdGhlbiBhcHBlbmQgdGhpcyBhdHRyaWJ1dGUgdG8gdGhpcywgYW5kIHRoZW4gcmV0dXJuLlxuXG4gICAgQ2hhbmdlIGF0dHJpYnV0ZSB0byB2YWx1ZS5cbiAgKi9cbiAgc2V0QXR0cmlidXRlIChxdWFsaWZpZWROYW1lLCB2YWx1ZSkge1xuICAgIC8vIFdlIGhhdmUgdG8gZG8gdGhhdCBoZXJlIGJlY2F1c2Ugd2UgY2Fubm90IGNoZWNrIGlmIGB0aGlzYCBpcyBpbiB0aGUgY29ycmVjdCBuYW1lc3BhY2VcbiAgICAvLyB3aGVuIGRvaW5nIGl0IGluIGNyZWF0ZUF0dHJpYnV0ZVxuICAgIGlmICh0aGlzLm5hbWVzcGFjZVVSSSA9PT0gaHRtbCAmJiB0aGlzLm93bmVyRG9jdW1lbnQubmFtZXNwYWNlVVJJID09PSBodG1sKSB7XG4gICAgICBxdWFsaWZpZWROYW1lID0gcXVhbGlmaWVkTmFtZS50b0xvd2VyQ2FzZSgpXG4gICAgfVxuXG4gICAgbGV0IGF0dHIgPSB0aGlzLmdldEF0dHJpYnV0ZU5vZGUocXVhbGlmaWVkTmFtZSlcbiAgICBpZiAoIWF0dHIpIHtcbiAgICAgIC8vIEJlY2F1c2UgY3JlYXRlQXR0cmlidXRlIGxvd2VyY2FzZXMgdGhlIGF0dHJpYnV0ZSBpbiBhbiBodG1sIGRvYyB3ZSBoYXZlIHRvIHVzZSBjcmVhdGVBdHRyaWJ1dGVOU1xuICAgICAgYXR0ciA9IHRoaXMub3duZXJEb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGVOUyhudWxsLCBxdWFsaWZpZWROYW1lLCB0cnVlKVxuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGVOb2RlKGF0dHIpXG4gICAgfVxuXG4gICAgYXR0ci52YWx1ZSA9IHZhbHVlXG4gIH1cblxuICAvKlxuICAgIExldCBuYW1lc3BhY2UsIHByZWZpeCwgYW5kIGxvY2FsTmFtZSBiZSB0aGUgcmVzdWx0IG9mIHBhc3NpbmcgbmFtZXNwYWNlIGFuZCBxdWFsaWZpZWROYW1lIHRvIHZhbGlkYXRlIGFuZCBleHRyYWN0LlxuXG4gICAgU2V0IGFuIGF0dHJpYnV0ZSB2YWx1ZSBmb3IgdGhpcyB1c2luZyBsb2NhbE5hbWUsIHZhbHVlLCBhbmQgYWxzbyBwcmVmaXggYW5kIG5hbWVzcGFjZS5cblxuICAgIElmIHByZWZpeCBpcyBub3QgZ2l2ZW4sIHNldCBpdCB0byBudWxsLlxuICAgIElmIG5hbWVzcGFjZSBpcyBub3QgZ2l2ZW4sIHNldCBpdCB0byBudWxsLlxuICAgIExldCBhdHRyaWJ1dGUgYmUgdGhlIHJlc3VsdCBvZiBnZXR0aW5nIGFuIGF0dHJpYnV0ZSBnaXZlbiBuYW1lc3BhY2UsIGxvY2FsTmFtZSwgYW5kIGVsZW1lbnQuXG4gICAgSWYgYXR0cmlidXRlIGlzIG51bGwsIGNyZWF0ZSBhbiBhdHRyaWJ1dGUgd2hvc2UgbmFtZXNwYWNlIGlzIG5hbWVzcGFjZSwgbmFtZXNwYWNlIHByZWZpeCBpcyBwcmVmaXgsIGxvY2FsIG5hbWUgaXMgbG9jYWxOYW1lLCB2YWx1ZSBpcyB2YWx1ZSwgYW5kIG5vZGUgZG9jdW1lbnQgaXMgZWxlbWVudFx1MjAxOXMgbm9kZSBkb2N1bWVudCwgdGhlbiBhcHBlbmQgdGhpcyBhdHRyaWJ1dGUgdG8gZWxlbWVudCwgYW5kIHRoZW4gcmV0dXJuLlxuXG4gICAgQ2hhbmdlIGF0dHJpYnV0ZSB0byB2YWx1ZS5cbiAgKi9cblxuICBzZXRBdHRyaWJ1dGVOb2RlIChub2RlKSB7XG4gICAgdGhpcy5hdHRycy5hZGQobm9kZSlcbiAgICBub2RlLm93bmVyRWxlbWVudCA9IHRoaXNcbiAgfVxuXG4gIC8vIGNhbGwgaXM6IGQuc2V0QXR0cmlidXRlTlMoJ2h0dHA6Ly93d3cubW96aWxsYS5vcmcvbnMvc3BlY2lhbHNwYWNlJywgJ3NwZWM6YWxpZ24nLCAnY2VudGVyJyk7XG4gIHNldEF0dHJpYnV0ZU5TIChuYW1lc3BhY2UsIG5hbWUsIHZhbHVlKSB7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBjb25zdCBbIG5zLCBwcmVmaXgsIGxvY2FsTmFtZSBdID0gdmFsaWRhdGVBbmRFeHRyYWN0KG5hbWVzcGFjZSwgbmFtZSlcblxuICAgIGxldCBhdHRyID0gdGhpcy5nZXRBdHRyaWJ1dGVOb2RlTlMobnMsIGxvY2FsTmFtZSlcbiAgICBpZiAoIWF0dHIpIHtcbiAgICAgIGF0dHIgPSB0aGlzLm93bmVyRG9jdW1lbnQuY3JlYXRlQXR0cmlidXRlTlMobnMsIG5hbWUpXG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZU5vZGUoYXR0cikgLy8gc2V0QXR0cmlidXRlTm9kZU5TIGlzIGEgc3lub255bSBvZiBzZXRBdHRyaWJ1dGVOb2RlXG4gICAgfVxuXG4gICAgYXR0ci52YWx1ZSA9IHZhbHVlXG5cbiAgICB0aGlzLmF0dHJzLmFkZChhdHRyKVxuICB9XG5cbiAgZ2V0IGF0dHJpYnV0ZXMgKCkge1xuICAgIHJldHVybiBbIC4uLnRoaXMuYXR0cnMgXVxuICB9XG5cbiAgZ2V0IGNsYXNzTmFtZSAoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdjbGFzcycpXG4gIH1cblxuICBzZXQgY2xhc3NOYW1lIChjKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2NsYXNzJywgYylcbiAgfVxuXG4gIGdldCBpZCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdpZCcpIHx8ICcnXG4gIH1cblxuICBzZXQgaWQgKGlkKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2lkJywgaWQpXG4gIH1cblxuICBnZXQgaW5uZXJIVE1MICgpIHtcblxuICAgIHJldHVybiB0aGlzLmNoaWxkTm9kZXMubWFwKG5vZGUgPT4ge1xuICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSByZXR1cm4gaHRtbEVudGl0aWVzKG5vZGUuZGF0YSlcbiAgICAgIGlmIChub2RlLm5vZGVUeXBlID09PSBOb2RlLkNEQVRBX1NFQ1RJT05fTk9ERSkgcmV0dXJuIGNkYXRhKG5vZGUuZGF0YSlcbiAgICAgIGlmIChub2RlLm5vZGVUeXBlID09PSBOb2RlLkNPTU1FTlRfTk9ERSkgcmV0dXJuIGNvbW1lbnQobm9kZS5kYXRhKVxuICAgICAgcmV0dXJuIG5vZGUub3V0ZXJIVE1MXG4gICAgfSkuam9pbignJylcbiAgfVxuXG4gIHNldCBpbm5lckhUTUwgKHN0cikge1xuICAgIHdoaWxlICh0aGlzLmZpcnN0Q2hpbGQpIHtcbiAgICAgIHRoaXMucmVtb3ZlQ2hpbGQodGhpcy5maXJzdENoaWxkKVxuICAgIH1cbiAgICAvLyBUaGUgcGFyc2VyIGFkZHMgdGhlIGh0bWwgdG8gdGhpc1xuICAgIEhUTUxQYXJzZXIoc3RyLCB0aGlzKVxuICB9XG5cbiAgZ2V0IG91dGVySFRNTCAoKSB7XG4gICAgcmV0dXJuIHRhZyh0aGlzKVxuICB9XG5cbiAgc2V0IG91dGVySFRNTCAoc3RyKSB7XG4gICAgY29uc3Qgd2VsbCA9IG5ldyBEb2N1bWVudEZyYWdtZW50KClcbiAgICBIVE1MUGFyc2VyKHN0ciwgd2VsbClcbiAgICB0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHdlbGwsIHRoaXMpXG4gICAgdGhpcy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMpXG4gIH1cblxufVxuXG5taXhpbihQYXJlbnROb2RlLCBFbGVtZW50KVxubWl4aW4oZWxlbWVudEFjY2VzcywgRWxlbWVudClcbm1peGluKE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZSwgRWxlbWVudClcbm1peGluKENoaWxkTm9kZSwgRWxlbWVudClcbiIsICJpbXBvcnQgeyBFbGVtZW50IH0gZnJvbSAnLi4vRWxlbWVudC5qcydcblxuZXhwb3J0IGNsYXNzIEhUTUxFbGVtZW50IGV4dGVuZHMgRWxlbWVudCB7fVxuIiwgImltcG9ydCB7IEhUTUxFbGVtZW50IH0gZnJvbSAnLi9IVE1MRWxlbWVudC5qcydcblxuZXhwb3J0IGNsYXNzIEhUTUxMaW5rRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50IHt9XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEhUTUxMaW5rRWxlbWVudC5wcm90b3R5cGUsIHtcbiAgaHJlZjoge1xuICAgIGdldCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2hyZWYnKVxuICAgIH0sXG4gICAgc2V0ICh2YWwpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdocmVmJywgdmFsKVxuICAgIH1cbiAgfSxcbiAgcmVsOiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgncmVsJylcbiAgICB9LFxuICAgIHNldCAodmFsKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgncmVsJywgdmFsKVxuICAgIH1cbiAgfSxcbiAgdHlwZToge1xuICAgIGdldCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ3R5cGUnKVxuICAgIH0sXG4gICAgc2V0ICh2YWwpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCd0eXBlJywgdmFsKVxuICAgIH1cbiAgfVxufSlcbiIsICJcbmltcG9ydCB7IEhUTUxFbGVtZW50IH0gZnJvbSAnLi9IVE1MRWxlbWVudC5qcydcbmV4cG9ydCBjbGFzcyBIVE1MU2NyaXB0RWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50IHt9XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEhUTUxTY3JpcHRFbGVtZW50LnByb3RvdHlwZSwge1xuICBzcmM6IHtcbiAgICBnZXQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdzcmMnKVxuICAgIH0sXG4gICAgc2V0ICh2YWwpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdzcmMnLCB2YWwpXG4gICAgfVxuICB9LFxuICB0eXBlOiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgndHlwZScpXG4gICAgfSxcbiAgICBzZXQgKHZhbCkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ3R5cGUnLCB2YWwpXG4gICAgfVxuICB9XG59KVxuIiwgImltcG9ydCBzaXplT2YgZnJvbSAnaW1hZ2Utc2l6ZSdcbmltcG9ydCB7IEV2ZW50IH0gZnJvbSAnLi4vRXZlbnQuanMnXG5pbXBvcnQgeyBIVE1MRWxlbWVudCB9IGZyb20gJy4vSFRNTEVsZW1lbnQuanMnXG4vLyBpbXBvcnQgeyBnZXRGaWxlQnVmZmVyRnJvbVVSTCB9IGZyb20gJy4uLy4uL3V0aWxzL2ZpbGVVcmxUb0J1ZmZlci5qcydcbi8vIGltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5cbmV4cG9ydCBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50IGV4dGVuZHMgSFRNTEVsZW1lbnQge1xuICBjb25zdHJ1Y3RvciAoLi4uYXJncykge1xuICAgIHN1cGVyKC4uLmFyZ3MpXG4gICAgdGhpcy5uYXR1cmFsV2lkdGggPSAwXG4gICAgdGhpcy5uYXR1cmFsSGVpZ2h0ID0gMFxuICAgIHRoaXMuY29tcGxldGUgPSBmYWxzZVxuICB9XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKEhUTUxJbWFnZUVsZW1lbnQucHJvdG90eXBlLCB7XG4gIHNyYzoge1xuICAgIGdldCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ3NyYycpXG4gICAgfSxcbiAgICBzZXQgKHZhbCkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ3NyYycsIHZhbClcbiAgICAgIC8vIGNvbnN0IHVybCA9IHBhdGgucmVzb2x2ZSh0aGlzLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcubG9jYXRpb24sIHZhbClcbiAgICAgIC8vIGdldEZpbGVCdWZmZXJGcm9tVVJMKHVybCwgKGJ1ZmZlcikgPT4ge1xuICAgICAgc2l6ZU9mKHZhbCwgKGVyciwgc2l6ZSkgPT4ge1xuICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZXJyb3InKSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICB0aGlzLm5hdHVyYWxXaWR0aCA9IHNpemUud2lkdGhcbiAgICAgICAgdGhpcy5uYXR1cmFsSGVpZ2h0ID0gc2l6ZS5oZWlnaHRcbiAgICAgICAgdGhpcy5jb21wbGV0ZSA9IHRydWVcbiAgICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnbG9hZCcpKVxuICAgICAgfSlcbiAgICAgIC8vIH0pXG4gICAgfVxuICB9LFxuICBoZWlnaHQ6IHtcbiAgICBnZXQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdoZWlnaHQnKSB8fCB0aGlzLm5hdHVyYWxIZWlnaHRcbiAgICB9LFxuICAgIHNldCAodmFsKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgdmFsKVxuICAgIH1cbiAgfSxcbiAgd2lkdGg6IHtcbiAgICBnZXQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCd3aWR0aCcpIHx8IHRoaXMubmF0dXJhbFdpZHRoXG4gICAgfSxcbiAgICBzZXQgKHZhbCkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ3dpZHRoJywgdmFsKVxuICAgIH1cbiAgfVxufSlcbiIsICJpbXBvcnQgeyBFbGVtZW50IH0gZnJvbSAnLi4vRWxlbWVudC5qcydcbmV4cG9ydCBjbGFzcyBTVkdFbGVtZW50IGV4dGVuZHMgRWxlbWVudCB7XG4gIGdldCBvd25lclNWR0VsZW1lbnQgKCkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzXG4gICAgd2hpbGUgKChwYXJlbnQgPSBwYXJlbnQucGFyZW50Tm9kZSkpIHtcbiAgICAgIGlmICgnc3ZnJyA9PSBwYXJlbnQubm9kZU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIHBhcmVudFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgZ2V0IHZpZXdwb3J0RWxlbWVudCAoKSB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXNcbiAgICB3aGlsZSAoKHBhcmVudCA9IHBhcmVudC5wYXJlbnROb2RlKSkge1xuICAgICAgLy8gVE9ETzogYW5kIG90aGVyc1xuICAgICAgaWYgKFsgJ3N2ZycsICdzeW1ib2wnIF0uaW5jbHVkZXMocGFyZW50Lm5vZGVOYW1lKSkge1xuICAgICAgICByZXR1cm4gcGFyZW50XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsXG4gIH1cbn1cbiIsICJleHBvcnQgY2xhc3MgU1ZHUG9pbnQge1xuICBjb25zdHJ1Y3RvciAoKSB7XG4gICAgdGhpcy54ID0gMFxuICAgIHRoaXMueSA9IDBcbiAgfVxuXG4gIG1hdHJpeFRyYW5zZm9ybSAobSkge1xuICAgIHZhciByID0gbmV3IFNWR1BvaW50KClcbiAgICByLnggPSBtLmEgKiB0aGlzLnggKyBtLmMgKiB0aGlzLnkgKyBtLmUgKiAxXG4gICAgci55ID0gbS5iICogdGhpcy54ICsgbS5kICogdGhpcy55ICsgbS5mICogMVxuICAgIHJldHVybiByXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBTVkdQb2ludCB9IGZyb20gJy4uL2RvbS9zdmcvU1ZHUG9pbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBQb2ludCB7XG4gIC8vIEluaXRpYWxpemVcbiAgY29uc3RydWN0b3IgKHgsIHkpIHtcbiAgICBjb25zdCBiYXNlID0geyB4OiAwLCB5OiAwIH1cblxuICAgIC8vIGVuc3VyZSBzb3VyY2UgYXMgb2JqZWN0XG4gICAgY29uc3Qgc291cmNlID0gQXJyYXkuaXNBcnJheSh4KVxuICAgICAgPyB7IHg6IHhbMF0sIHk6IHhbMV0gfVxuICAgICAgOiB0eXBlb2YgeCA9PT0gJ29iamVjdCdcbiAgICAgICAgPyB7IHg6IHgueCwgeTogeC55IH1cbiAgICAgICAgOiB4ICE9IG51bGxcbiAgICAgICAgICA/IHsgeDogeCwgeTogKHkgIT0gbnVsbCA/IHkgOiB4KSB9XG4gICAgICAgICAgOiBiYXNlIC8vIElmIHkgaGFzIG5vIHZhbHVlLCB0aGVuIHggaXMgdXNlZCBoYXMgaXRzIHZhbHVlXG5cbiAgICAvLyBtZXJnZSBzb3VyY2VcbiAgICB0aGlzLnggPSBzb3VyY2UueFxuICAgIHRoaXMueSA9IHNvdXJjZS55XG4gIH1cblxuICBhYnMgKCkge1xuICAgIHJldHVybiBNYXRoLnNxcnQodGhpcy5hYnNRdWFkKCkpXG4gIH1cblxuICBhYnNRdWFkICgpIHtcbiAgICByZXR1cm4gdGhpcy54ICogdGhpcy54ICsgdGhpcy55ICogdGhpcy55XG4gIH1cblxuICBhZGQgKHgsIHkpIHtcbiAgICBjb25zdCBwID0gbmV3IFBvaW50KHgsIHkpXG4gICAgcmV0dXJuIG5ldyBQb2ludCh0aGlzLnggKyBwLngsIHRoaXMueSArIHAueSlcbiAgfVxuXG4gIGFuZ2xlVG8gKHApIHtcbiAgICBsZXQgc2lnbiA9IE1hdGguc2lnbih0aGlzLnggKiBwLnkgLSB0aGlzLnkgKiBwLngpXG4gICAgc2lnbiA9IHNpZ24gfHwgMVxuICAgIHJldHVybiBzaWduICogTWF0aC5hY29zKE1hdGgucm91bmQoKHRoaXMuZG90KHApIC8gKHRoaXMuYWJzKCkgKiBwLmFicygpKSkgKiAxMDAwMDAwKSAvIDEwMDAwMDApXG4gIH1cblxuICAvLyBDbG9uZSBwb2ludFxuICBjbG9uZSAoKSB7XG4gICAgcmV0dXJuIG5ldyBQb2ludCh0aGlzKVxuICB9XG5cbiAgY2xvc2VUbyAocCwgZXRhID0gMC4wMDAwMSkge1xuICAgIHJldHVybiB0aGlzLmVxdWFscyhwKSB8fCAoTWF0aC5hYnModGhpcy54IC0gcC54KSA8IGV0YSAmJiBNYXRoLmFicyh0aGlzLnkgLSBwLnkpIDwgZXRhKVxuICB9XG5cbiAgZGl2IChmYWN0b3IpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMueCAvIGZhY3RvciwgdGhpcy55IC8gZmFjdG9yKVxuICB9XG5cbiAgZG90IChwKSB7XG4gICAgcmV0dXJuIHRoaXMueCAqIHAueCArIHRoaXMueSAqIHAueVxuICB9XG5cbiAgZXF1YWxzIChwKSB7XG4gICAgcmV0dXJuIHRoaXMueCA9PT0gcC54ICYmIHRoaXMueSA9PT0gcC55XG4gIH1cblxuICBtdWwgKGZhY3Rvcikge1xuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcy54ICogZmFjdG9yLCB0aGlzLnkgKiBmYWN0b3IpXG4gIH1cblxuICAvLyBDb252ZXJ0IHRvIG5hdGl2ZSBTVkdQb2ludFxuICBuYXRpdmUgKCkge1xuICAgIC8vIGNyZWF0ZSBuZXcgcG9pbnRcbiAgICBjb25zdCBwb2ludCA9IG5ldyBTVkdQb2ludCgpXG5cbiAgICAvLyB1cGRhdGUgd2l0aCBjdXJyZW50IHZhbHVlc1xuICAgIHBvaW50LnggPSB0aGlzLnhcbiAgICBwb2ludC55ID0gdGhpcy55XG5cbiAgICByZXR1cm4gcG9pbnRcbiAgfVxuXG4gIG5vcm1hbCAoKSB7XG4gICAgcmV0dXJuIG5ldyBQb2ludCh0aGlzLnksIC10aGlzLngpXG4gIH1cblxuICBub3JtYWxpemUgKCkge1xuICAgIGNvbnN0IGFicyA9IHRoaXMuYWJzKClcbiAgICBpZiAoIWFicykgdGhyb3cgbmV3IEVycm9yKCdDYW5cXCd0IG5vcm1hbGl6ZSB2ZWN0b3Igb2YgemVybyBsZW5ndGgnKVxuICAgIHJldHVybiB0aGlzLmRpdihhYnMpXG4gIH1cblxuICByZWZsZWN0QXQgKHApIHtcbiAgICByZXR1cm4gcC5hZGQocC5zdWIodGhpcykpXG4gIH1cblxuICBzdWIgKHgsIHkpIHtcbiAgICBjb25zdCBwID0gbmV3IFBvaW50KHgsIHkpXG4gICAgcmV0dXJuIG5ldyBQb2ludCh0aGlzLnggLSBwLngsIHRoaXMueSAtIHAueSlcbiAgfVxuXG4gIHRvQXJyYXkgKCkge1xuICAgIHJldHVybiBbIHRoaXMueCwgdGhpcy55IF1cbiAgfVxuXG4gIHRvUGF0aCAoKSB7XG4gICAgcmV0dXJuIFsgJ00nLCB0aGlzLngsIHRoaXMueSBdLmpvaW4oJyAnKVxuICB9XG5cbiAgLy8gdHJhbnNmb3JtIHBvaW50IHdpdGggbWF0cml4XG4gIHRyYW5zZm9ybSAobWF0cml4KSB7XG4gICAgcmV0dXJuIG5ldyBQb2ludCh0aGlzLm5hdGl2ZSgpLm1hdHJpeFRyYW5zZm9ybShtYXRyaXgpKVxuICB9XG5cbiAgdHJhbnNmb3JtTyAobWF0cml4KSB7XG4gICAgY29uc3QgeyB4LCB5IH0gPSB0aGlzLm5hdGl2ZSgpLm1hdHJpeFRyYW5zZm9ybShtYXRyaXgpXG4gICAgdGhpcy54ID0geFxuICAgIHRoaXMueSA9IHlcbiAgfVxuXG59XG4iLCAiaW1wb3J0ICogYXMgcmVnZXggZnJvbSAnLi4vdXRpbHMvcmVnZXguanMnXG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJy4vUG9pbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBCb3gge1xuICBjb25zdHJ1Y3RvciAoc291cmNlKSB7XG4gICAgdmFyIGJhc2UgPSBbIDAsIDAsIDAsIDAgXVxuICAgIHNvdXJjZSA9IHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnID8gc291cmNlLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikubWFwKHBhcnNlRmxvYXQpXG4gICAgICA6IEFycmF5LmlzQXJyYXkoc291cmNlKSA/IHNvdXJjZVxuICAgICAgOiB0eXBlb2Ygc291cmNlID09PSAnb2JqZWN0JyA/IFtcbiAgICAgICAgc291cmNlLmxlZnQgIT0gbnVsbCA/IHNvdXJjZS5sZWZ0IDogc291cmNlLngsXG4gICAgICAgIHNvdXJjZS50b3AgIT0gbnVsbCA/IHNvdXJjZS50b3AgOiBzb3VyY2UueSxcbiAgICAgICAgc291cmNlLndpZHRoLFxuICAgICAgICBzb3VyY2UuaGVpZ2h0XG4gICAgICBdXG4gICAgICA6IGFyZ3VtZW50cy5sZW5ndGggPT09IDQgPyBbXS5zbGljZS5jYWxsKGFyZ3VtZW50cylcbiAgICAgIDogYmFzZVxuXG4gICAgdGhpcy54ID0gdGhpcy5sZWZ0ID0gc291cmNlWzBdXG4gICAgdGhpcy55ID0gdGhpcy50b3AgPSBzb3VyY2VbMV1cbiAgICB0aGlzLndpZHRoID0gc291cmNlWzJdXG4gICAgdGhpcy5oZWlnaHQgPSBzb3VyY2VbM11cbiAgICB0aGlzLnJpZ2h0ID0gdGhpcy5sZWZ0ICsgdGhpcy53aWR0aFxuICAgIHRoaXMuYm90dG9tID0gdGhpcy50b3AgKyB0aGlzLmhlaWdodFxuICB9XG5cbiAgLy8gTWVyZ2UgcmVjdCBib3ggd2l0aCBhbm90aGVyLCByZXR1cm4gYSBuZXcgaW5zdGFuY2VcbiAgbWVyZ2UgKGJveCkge1xuICAgIGlmIChib3ggaW5zdGFuY2VvZiBOb0JveCkgcmV0dXJuIG5ldyBCb3godGhpcylcblxuICAgIHZhciB4ID0gTWF0aC5taW4odGhpcy54LCBib3gueClcbiAgICB2YXIgeSA9IE1hdGgubWluKHRoaXMueSwgYm94LnkpXG5cbiAgICByZXR1cm4gbmV3IEJveChcbiAgICAgIHgsIHksXG4gICAgICBNYXRoLm1heCh0aGlzLnggKyB0aGlzLndpZHRoLCBib3gueCArIGJveC53aWR0aCkgLSB4LFxuICAgICAgTWF0aC5tYXgodGhpcy55ICsgdGhpcy5oZWlnaHQsIGJveC55ICsgYm94LmhlaWdodCkgLSB5XG4gICAgKVxuICB9XG5cbiAgdHJhbnNmb3JtIChtKSB7XG4gICAgdmFyIHhNaW4gPSBJbmZpbml0eVxuICAgIHZhciB4TWF4ID0gLUluZmluaXR5XG4gICAgdmFyIHlNaW4gPSBJbmZpbml0eVxuICAgIHZhciB5TWF4ID0gLUluZmluaXR5XG5cbiAgICB2YXIgcHRzID0gW1xuICAgICAgbmV3IFBvaW50KHRoaXMueCwgdGhpcy55KSxcbiAgICAgIG5ldyBQb2ludCh0aGlzLnggKyB0aGlzLndpZHRoLCB0aGlzLnkpLFxuICAgICAgbmV3IFBvaW50KHRoaXMueCwgdGhpcy55ICsgdGhpcy5oZWlnaHQpLFxuICAgICAgbmV3IFBvaW50KHRoaXMueCArIHRoaXMud2lkdGgsIHRoaXMueSArIHRoaXMuaGVpZ2h0KVxuICAgIF1cblxuICAgIHB0cy5mb3JFYWNoKGZ1bmN0aW9uIChwKSB7XG4gICAgICBwID0gcC50cmFuc2Zvcm0obSlcbiAgICAgIHhNaW4gPSBNYXRoLm1pbih4TWluLCBwLngpXG4gICAgICB4TWF4ID0gTWF0aC5tYXgoeE1heCwgcC54KVxuICAgICAgeU1pbiA9IE1hdGgubWluKHlNaW4sIHAueSlcbiAgICAgIHlNYXggPSBNYXRoLm1heCh5TWF4LCBwLnkpXG4gICAgfSlcblxuICAgIHJldHVybiBuZXcgQm94KFxuICAgICAgeE1pbiwgeU1pbixcbiAgICAgIHhNYXggLSB4TWluLFxuICAgICAgeU1heCAtIHlNaW5cbiAgICApXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE5vQm94IGV4dGVuZHMgQm94IHtcbiAgLy8gTm9Cb3ggaGFzIG5vIHZhbGlkIHZhbHVlcyBzbyBpdCBjYW50IGJlIG1lcmdlZFxuICBtZXJnZSAoYm94KSB7XG4gICAgcmV0dXJuIGJveCBpbnN0YW5jZW9mIE5vQm94ID8gbmV3IE5vQm94KCkgOiBuZXcgQm94KGJveClcbiAgfVxuXG4gIHRyYW5zZm9ybSAobSkge1xuICAgIHJldHVybiBuZXcgTm9Cb3goKVxuICB9XG59XG4iLCAiY29uc3QgcmFkaWFucyA9IGZ1bmN0aW9uIChkKSB7XG4gIHJldHVybiBkICUgMzYwICogTWF0aC5QSSAvIDE4MFxufVxuXG5leHBvcnQgZnVuY3Rpb24gbWF0cml4RmFjdG9yeSAoYSwgYiwgYywgZCwgZSwgZikge1xuICB2YXIgciA9IG5ldyBTVkdNYXRyaXgoKVxuICByLmEgPSBhXG4gIHIuYiA9IGJcbiAgci5jID0gY1xuICByLmQgPSBkXG4gIHIuZSA9IGVcbiAgci5mID0gZlxuICByZXR1cm4gclxufVxuXG5leHBvcnQgY2xhc3MgU1ZHTWF0cml4IHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHRoaXMuYSA9IHRoaXMuZCA9IDFcbiAgICB0aGlzLmIgPSB0aGlzLmMgPSB0aGlzLmUgPSB0aGlzLmYgPSAwXG4gIH1cblxuICBpbnZlcnNlICgpIHtcbiAgICAvLyBHZXQgdGhlIGN1cnJlbnQgcGFyYW1ldGVycyBvdXQgb2YgdGhlIG1hdHJpeFxuICAgIHZhciBhID0gdGhpcy5hXG4gICAgdmFyIGIgPSB0aGlzLmJcbiAgICB2YXIgYyA9IHRoaXMuY1xuICAgIHZhciBkID0gdGhpcy5kXG4gICAgdmFyIGUgPSB0aGlzLmVcbiAgICB2YXIgZiA9IHRoaXMuZlxuXG4gICAgLy8gSW52ZXJ0IHRoZSAyeDIgbWF0cml4IGluIHRoZSB0b3AgbGVmdFxuICAgIHZhciBkZXQgPSBhICogZCAtIGIgKiBjXG4gICAgaWYgKCFkZXQpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGludmVydCAnICsgdGhpcylcblxuICAgIC8vIENhbGN1bGF0ZSB0aGUgdG9wIDJ4MiBtYXRyaXhcbiAgICB2YXIgbmEgPSBkIC8gZGV0XG4gICAgdmFyIG5iID0gLWIgLyBkZXRcbiAgICB2YXIgbmMgPSAtYyAvIGRldFxuICAgIHZhciBuZCA9IGEgLyBkZXRcblxuICAgIC8vIEFwcGx5IHRoZSBpbnZlcnRlZCBtYXRyaXggdG8gdGhlIHRvcCByaWdodFxuICAgIHZhciBuZSA9IC0obmEgKiBlICsgbmMgKiBmKVxuICAgIHZhciBuZiA9IC0obmIgKiBlICsgbmQgKiBmKVxuXG4gICAgLy8gQ29uc3RydWN0IHRoZSBpbnZlcnRlZCBtYXRyaXhcbiAgICB0aGlzLmEgPSBuYVxuICAgIHRoaXMuYiA9IG5iXG4gICAgdGhpcy5jID0gbmNcbiAgICB0aGlzLmQgPSBuZFxuICAgIHRoaXMuZSA9IG5lXG4gICAgdGhpcy5mID0gbmZcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBtdWx0aXBseSAobSkge1xuICAgIHZhciByID0gbmV3IFNWR01hdHJpeCgpXG4gICAgci5hID0gdGhpcy5hICogbS5hICsgdGhpcy5jICogbS5iICsgdGhpcy5lICogMFxuICAgIHIuYiA9IHRoaXMuYiAqIG0uYSArIHRoaXMuZCAqIG0uYiArIHRoaXMuZiAqIDBcbiAgICByLmMgPSB0aGlzLmEgKiBtLmMgKyB0aGlzLmMgKiBtLmQgKyB0aGlzLmUgKiAwXG4gICAgci5kID0gdGhpcy5iICogbS5jICsgdGhpcy5kICogbS5kICsgdGhpcy5mICogMFxuICAgIHIuZSA9IHRoaXMuYSAqIG0uZSArIHRoaXMuYyAqIG0uZiArIHRoaXMuZSAqIDFcbiAgICByLmYgPSB0aGlzLmIgKiBtLmUgKyB0aGlzLmQgKiBtLmYgKyB0aGlzLmYgKiAxXG4gICAgcmV0dXJuIHJcbiAgfVxuXG4gIHJvdGF0ZSAociwgeCwgeSkge1xuICAgIHIgPSByICUgMzYwICogTWF0aC5QSSAvIDE4MFxuICAgIHJldHVybiB0aGlzLm11bHRpcGx5KG1hdHJpeEZhY3RvcnkoXG4gICAgICBNYXRoLmNvcyhyKSxcbiAgICAgIE1hdGguc2luKHIpLFxuICAgICAgLU1hdGguc2luKHIpLFxuICAgICAgTWF0aC5jb3MociksXG4gICAgICB4ID8gLU1hdGguY29zKHIpICogeCArIE1hdGguc2luKHIpICogeSArIHggOiAwLFxuICAgICAgeSA/IC1NYXRoLnNpbihyKSAqIHggLSBNYXRoLmNvcyhyKSAqIHkgKyB5IDogMFxuICAgICkpXG4gIH1cblxuICBzY2FsZSAoc2NhbGVYLCBzY2FsZVkgPSBzY2FsZVgpIHtcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBseShtYXRyaXhGYWN0b3J5KHNjYWxlWCwgMCwgMCwgc2NhbGVZLCAwLCAwKSlcbiAgfVxuXG4gIHNrZXcgKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBseShtYXRyaXhGYWN0b3J5KDEsIE1hdGgudGFuKHJhZGlhbnMoeSkpLCBNYXRoLnRhbihyYWRpYW5zKHgpKSwgMSwgMCwgMCkpXG4gIH1cblxuICBza2V3WCAoeCkge1xuICAgIHJldHVybiB0aGlzLnNrZXcoeCwgMClcbiAgfVxuXG4gIHNrZXdZICh5KSB7XG4gICAgcmV0dXJuIHRoaXMuc2tldygwLCB5KVxuICB9XG5cbiAgdG9TdHJpbmcgKCkge1xuICAgIHJldHVybiAnU1ZHTWF0cml4J1xuICB9XG5cbiAgdHJhbnNsYXRlICh4ID0gMCwgeSA9IDApIHtcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBseShtYXRyaXhGYWN0b3J5KDEsIDAsIDAsIDEsIHgsIHkpKVxuICB9XG5cbn1cbiIsICJpbXBvcnQgeyBCb3gsIE5vQm94IH0gZnJvbSAnLi4vb3RoZXIvQm94LmpzJ1xuXG5leHBvcnQgY2xhc3MgUG9pbnRDbG91ZCBleHRlbmRzIEFycmF5IHtcbiAgY29uc3RydWN0b3IgKC4uLmFyZ3MpIHtcbiAgICBpZiAoYXJncy5sZW5ndGggPT09IDEgJiYgdHlwZW9mIGFyZ3NbMF0gPT09ICdudW1iZXInKSB7XG4gICAgICBzdXBlcihhcmdzLnNoaWZ0KCkpXG4gICAgfSBlbHNlIHtcbiAgICAgIHN1cGVyKClcbiAgICB9XG5cbiAgICAvLyBleGNlcHQgbXVsdGlwbGUgcG9pbnQgYXJyYXlzIGFzIGlucHV0IGFuZCBtZXJnZSB0aGVtIGludG8gb25lXG4gICAgYXJncy5yZWR1Y2UoKGxhc3QsIGN1cnIpID0+IHtcbiAgICAgIGxhc3QucHVzaCguLi5jdXJyKVxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9LCB0aGlzKVxuICB9XG5cbiAgYmJveCAoKSB7XG4gICAgaWYgKCF0aGlzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG5ldyBOb0JveCgpXG4gICAgfVxuXG4gICAgbGV0IHhNaW4gPSBJbmZpbml0eVxuICAgIGxldCB4TWF4ID0gLUluZmluaXR5XG4gICAgbGV0IHlNaW4gPSBJbmZpbml0eVxuICAgIGxldCB5TWF4ID0gLUluZmluaXR5XG5cbiAgICB0aGlzLmZvckVhY2goZnVuY3Rpb24gKHApIHtcbiAgICAgIHhNaW4gPSBNYXRoLm1pbih4TWluLCBwLngpXG4gICAgICB4TWF4ID0gTWF0aC5tYXgoeE1heCwgcC54KVxuICAgICAgeU1pbiA9IE1hdGgubWluKHlNaW4sIHAueSlcbiAgICAgIHlNYXggPSBNYXRoLm1heCh5TWF4LCBwLnkpXG4gICAgfSlcblxuICAgIHJldHVybiBuZXcgQm94KFxuICAgICAgeE1pbiwgeU1pbixcbiAgICAgIHhNYXggLSB4TWluLFxuICAgICAgeU1heCAtIHlNaW5cbiAgICApXG4gIH1cblxuICBtZXJnZSAoY2xvdWQpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50Q2xvdWQodGhpcywgY2xvdWQpXG4gIH1cblxuICB0cmFuc2Zvcm0gKG0pIHtcbiAgICByZXR1cm4gbmV3IFBvaW50Q2xvdWQodGhpcy5tYXAoKHApID0+IHAudHJhbnNmb3JtKG0pKSlcbiAgfVxuXG59XG4iLCAiaW1wb3J0IHsgQm94LCBOb0JveCB9IGZyb20gJy4uL290aGVyL0JveC5qcydcbmltcG9ydCB7IFBvaW50IH0gZnJvbSAnLi4vb3RoZXIvUG9pbnQuanMnXG5pbXBvcnQgKiBhcyByZWdleCBmcm9tICcuL3JlZ2V4LmpzJ1xuLy8gVE9ETzogdXNlIG93biBtYXRyaXggaW1wbGVtZW50YXRpb25cbmltcG9ydCB7IG1hdHJpeEZhY3RvcnkgfSBmcm9tICcuLy4uL2RvbS9zdmcvU1ZHTWF0cml4LmpzJ1xuaW1wb3J0IHsgUG9pbnRDbG91ZCB9IGZyb20gJy4vUG9pbnRDbG91ZC5qcydcblxuY29uc3QgcGF0aEhhbmRsZXJzID0ge1xuICBNIChjLCBwLCByLCBwMCkge1xuICAgIHAueCA9IHAwLnggPSBjWzBdXG4gICAgcC55ID0gcDAueSA9IGNbMV1cblxuICAgIHJldHVybiBuZXcgTW92ZShwKVxuICB9LFxuICBMIChjLCBwKSB7XG4gICAgY29uc3QgcmV0ID0gbmV3IExpbmUocC54LCBwLnksIGNbMF0sIGNbMV0pLy8gLm9mZnNldChvKVxuICAgIHAueCA9IGNbMF1cbiAgICBwLnkgPSBjWzFdXG4gICAgcmV0dXJuIHJldFxuICB9LFxuICBIIChjLCBwKSB7XG4gICAgcmV0dXJuIHBhdGhIYW5kbGVycy5MKFsgY1swXSwgcC55IF0sIHApXG4gIH0sXG4gIFYgKGMsIHApIHtcbiAgICByZXR1cm4gcGF0aEhhbmRsZXJzLkwoWyBwLngsIGNbMF0gXSwgcClcbiAgfSxcbiAgUSAoYywgcCwgcikge1xuICAgIGNvbnN0IHJldCA9IEN1YmljLmZyb21RdWFkKHAsIG5ldyBQb2ludChjWzBdLCBjWzFdKSwgbmV3IFBvaW50KGNbMl0sIGNbM10pKS8vIC5vZmZzZXQobylcbiAgICBwLnggPSBjWzJdXG4gICAgcC55ID0gY1szXVxuXG4gICAgY29uc3QgcmVmbGVjdCA9IG5ldyBQb2ludChjWzBdLCBjWzFdKS5yZWZsZWN0QXQocClcbiAgICByLnggPSByZWZsZWN0LnhcbiAgICByLnkgPSByZWZsZWN0LnlcblxuICAgIHJldHVybiByZXRcbiAgfSxcbiAgVCAoYywgcCwgciwgcDAsIHJlZmxlY3Rpb25Jc1Bvc3NpYmxlKSB7XG4gICAgaWYgKHJlZmxlY3Rpb25Jc1Bvc3NpYmxlKSB7IGMgPSBbIHIueCwgci55IF0uY29uY2F0KGMpIH0gZWxzZSB7IGMgPSBbIHAueCwgcC55IF0uY29uY2F0KGMpIH1cbiAgICByZXR1cm4gcGF0aEhhbmRsZXJzLlEoYywgcCwgcilcbiAgfSxcbiAgQyAoYywgcCwgcikge1xuICAgIGNvbnN0IHJldCA9IG5ldyBDdWJpYyhwLCBuZXcgUG9pbnQoY1swXSwgY1sxXSksIG5ldyBQb2ludChjWzJdLCBjWzNdKSwgbmV3IFBvaW50KGNbNF0sIGNbNV0pKS8vIC5vZmZzZXQobylcbiAgICBwLnggPSBjWzRdXG4gICAgcC55ID0gY1s1XVxuICAgIGNvbnN0IHJlZmxlY3QgPSBuZXcgUG9pbnQoY1syXSwgY1szXSkucmVmbGVjdEF0KHApXG4gICAgci54ID0gcmVmbGVjdC54XG4gICAgci55ID0gcmVmbGVjdC55XG4gICAgcmV0dXJuIHJldFxuICB9LFxuICBTIChjLCBwLCByLCBwMCwgcmVmbGVjdGlvbklzUG9zc2libGUpIHtcbiAgICAvLyByZWZsZWN0aW9uIG1ha2VzIG9ubHkgc2Vuc2UgaWYgdGhpcyBjb21tYW5kIHdhcyBwcmVjZWVkZWQgYnkgYW5vdGhlciBiZXppZXJlIGNvbW1hbmQgKFFUU0MpXG4gICAgaWYgKHJlZmxlY3Rpb25Jc1Bvc3NpYmxlKSB7IGMgPSBbIHIueCwgci55IF0uY29uY2F0KGMpIH0gZWxzZSB7IGMgPSBbIHAueCwgcC55IF0uY29uY2F0KGMpIH1cbiAgICByZXR1cm4gcGF0aEhhbmRsZXJzLkMoYywgcCwgcilcbiAgfSxcbiAgWiAoYywgcCwgciwgcDApIHtcbiAgICAvLyBGSVhNRTogVGhlIGJlaGF2aW9yIG9mIFogZGVwZW5kcyBvbiB0aGUgY29tbWFuZCBiZWZvcmVcbiAgICByZXR1cm4gcGF0aEhhbmRsZXJzLkwoWyBwMC54LCBwMC55IF0sIHApXG4gIH0sXG4gIEEgKGMsIHAsIF9yKSB7XG4gICAgY29uc3QgcmV0ID0gbmV3IEFyYyhwLCBuZXcgUG9pbnQoY1s1XSwgY1s2XSksIGNbMF0sIGNbMV0sIGNbMl0sIGNbM10sIGNbNF0pXG4gICAgcC54ID0gY1s1XVxuICAgIHAueSA9IGNbNl1cbiAgICByZXR1cm4gcmV0XG4gIH1cbn1cblxuY29uc3QgbWxodnF0Y3NhID0gJ21saHZxdGNzYXonLnNwbGl0KCcnKVxuXG5mb3IgKGxldCBpID0gMCwgaWwgPSBtbGh2cXRjc2EubGVuZ3RoOyBpIDwgaWw7ICsraSkge1xuICBwYXRoSGFuZGxlcnNbbWxodnF0Y3NhW2ldXSA9IChmdW5jdGlvbiAoaSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoYywgcCwgciwgcDAsIHJlZmxlY3Rpb25Jc1Bvc3NpYmxlKSB7XG4gICAgICBpZiAoaSA9PT0gJ0gnKSBjWzBdID0gY1swXSArIHAueFxuICAgICAgZWxzZSBpZiAoaSA9PT0gJ1YnKSBjWzBdID0gY1swXSArIHAueVxuICAgICAgZWxzZSBpZiAoaSA9PT0gJ0EnKSB7XG4gICAgICAgIGNbNV0gPSBjWzVdICsgcC54XG4gICAgICAgIGNbNl0gPSBjWzZdICsgcC55XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmb3IgKGxldCBqID0gMCwgamwgPSBjLmxlbmd0aDsgaiA8IGpsOyArK2opIHtcbiAgICAgICAgICBjW2pdID0gY1tqXSArIChqICUgMiA/IHAueSA6IHAueClcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGF0aEhhbmRsZXJzW2ldKGMsIHAsIHIsIHAwLCByZWZsZWN0aW9uSXNQb3NzaWJsZSlcbiAgICB9XG4gIH0pKG1saHZxdGNzYVtpXS50b1VwcGVyQ2FzZSgpKVxufVxuXG5mdW5jdGlvbiBwYXRoUmVnUmVwbGFjZSAoYSwgYiwgYywgZCkge1xuICByZXR1cm4gYyArIGQucmVwbGFjZShyZWdleC5kb3RzLCAnIC4nKVxufVxuXG5mdW5jdGlvbiBpc0JlemllcmUgKG9iaikge1xuICByZXR1cm4gb2JqIGluc3RhbmNlb2YgQ3ViaWNcbn1cblxuZXhwb3J0IGNvbnN0IHBhdGhQYXJzZXIgPSAoYXJyYXkpID0+IHtcblxuICBpZiAoIWFycmF5KSByZXR1cm4gW11cblxuICAvLyBwcmVwYXJlIGZvciBwYXJzaW5nXG4gIGNvbnN0IHBhcmFtQ250ID0geyBNOiAyLCBMOiAyLCBIOiAxLCBWOiAxLCBDOiA2LCBTOiA0LCBROiA0LCBUOiAyLCBBOiA3LCBaOiAwIH1cblxuICBhcnJheSA9IGFycmF5XG4gICAgLnJlcGxhY2UocmVnZXgubnVtYmVyc1dpdGhEb3RzLCBwYXRoUmVnUmVwbGFjZSkgLy8gY29udmVydCA0NS4xMjMuMTIzIHRvIDQ1LjEyMyAuMTIzXG4gICAgLnJlcGxhY2UocmVnZXgucGF0aExldHRlcnMsICcgJCYgJykgLy8gcHV0IHNvbWUgcm9vbSBiZXR3ZWVuIGxldHRlcnMgYW5kIG51bWJlcnNcbiAgICAucmVwbGFjZShyZWdleC5oeXBoZW4sICckMSAtJykgLy8gYWRkIHNwYWNlIGJlZm9yZSBoeXBoZW5cbiAgICAudHJpbSgpIC8vIHRyaW1cbiAgICAuc3BsaXQocmVnZXguZGVsaW1pdGVyKSAvLyBzcGxpdCBpbnRvIGFycmF5XG5cbiAgLy8gYXJyYXkgbm93IGlzIGFuIGFycmF5IGNvbnRhaW5pbmcgYWxsIHBhcnRzIG9mIGEgcGF0aCBlLmcuIFsnTScsICcwJywgJzAnLCAnTCcsICczMCcsICczMCcgLi4uXVxuICBjb25zdCBhcnIgPSBbXVxuICBjb25zdCBwID0gbmV3IFBvaW50KClcbiAgY29uc3QgcDAgPSBuZXcgUG9pbnQoKVxuICBjb25zdCByID0gbmV3IFBvaW50KClcbiAgbGV0IGluZGV4ID0gMFxuICBjb25zdCBsZW4gPSBhcnJheS5sZW5ndGhcbiAgbGV0IHNcblxuICBkbyB7XG4gICAgLy8gVGVzdCBpZiB3ZSBoYXZlIGEgcGF0aCBsZXR0ZXJcbiAgICBpZiAocmVnZXguaXNQYXRoTGV0dGVyLnRlc3QoYXJyYXlbaW5kZXhdKSkge1xuICAgICAgcyA9IGFycmF5W2luZGV4XVxuICAgICAgKytpbmRleFxuICAgIC8vIElmIGxhc3QgbGV0dGVyIHdhcyBhIG1vdmUgY29tbWFuZCBhbmQgd2UgZ290IG5vIG5ldywgaXQgZGVmYXVsdHMgdG8gW0xdaW5lXG4gICAgfSBlbHNlIGlmIChzID09PSAnTScpIHtcbiAgICAgIHMgPSAnTCdcbiAgICB9IGVsc2UgaWYgKHMgPT09ICdtJykge1xuICAgICAgcyA9ICdsJ1xuICAgIH1cblxuICAgIGFyci5wdXNoKFxuICAgICAgcGF0aEhhbmRsZXJzW3NdLmNhbGwobnVsbCxcbiAgICAgICAgYXJyYXkuc2xpY2UoaW5kZXgsIChpbmRleCA9IGluZGV4ICsgcGFyYW1DbnRbcy50b1VwcGVyQ2FzZSgpXSkpLm1hcChwYXJzZUZsb2F0KSxcbiAgICAgICAgcCwgciwgcDAsXG4gICAgICAgIGlzQmV6aWVyZShhcnJbYXJyLmxlbmd0aCAtIDFdKVxuICAgICAgKVxuICAgIClcblxuICB9IHdoaWxlIChsZW4gPiBpbmRleClcblxuICByZXR1cm4gYXJyXG59XG5cbmNsYXNzIE1vdmUge1xuICBjb25zdHJ1Y3RvciAocCkge1xuICAgIHRoaXMucDEgPSBwLmNsb25lKClcbiAgfVxuXG4gIC8vIEZJWE1FOiBVc2UgcG9pbnRjbG91ZFxuICBiYm94ICgpIHtcbiAgICBjb25zdCBwID0gdGhpcy5wMVxuICAgIHJldHVybiBuZXcgQm94KHAueCwgcC55LCAwLCAwKVxuICB9XG5cbiAgZ2V0Q2xvdWQgKCkge1xuICAgIHJldHVybiBuZXcgUG9pbnRDbG91ZChbIHRoaXMucDEgXSlcbiAgfVxuXG4gIGxlbmd0aCAoKSB7IHJldHVybiAwIH1cblxuICB0b1BhdGggKCkge1xuICAgIHJldHVybiBbICdNJywgdGhpcy5wMS54LCB0aGlzLnAxLnkgXS5qb2luKCcgJylcbiAgfVxuXG4gIHRvUGF0aEZyYWdtZW50ICgpIHtcbiAgICByZXR1cm4gWyAnTScsIHRoaXMucDEueCwgdGhpcy5wMS55IF1cbiAgfVxuXG4gIHRyYW5zZm9ybSAobWF0cml4KSB7XG4gICAgdGhpcy5wMS50cmFuc2Zvcm1PKG1hdHJpeClcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBcmMge1xuICBjb25zdHJ1Y3RvciAocDEsIHAyLCByeCwgcnksIFx1MDNDNiwgYXJjLCBzd2VlcCkge1xuICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9TVkcvaW1wbG5vdGUuaHRtbCNBcmNDb3JyZWN0aW9uT3V0T2ZSYW5nZVJhZGlpXG4gICAgaWYgKCFyeCB8fCAhcnkpIHJldHVybiBuZXcgTGluZShwMSwgcDIpXG5cbiAgICByeCA9IE1hdGguYWJzKHJ4KVxuICAgIHJ5ID0gTWF0aC5hYnMocnkpXG5cbiAgICB0aGlzLnAxID0gcDEuY2xvbmUoKVxuICAgIHRoaXMucDIgPSBwMi5jbG9uZSgpXG4gICAgdGhpcy5hcmMgPSBhcmMgPyAxIDogMFxuICAgIHRoaXMuc3dlZXAgPSBzd2VlcCA/IDEgOiAwXG5cbiAgICAvLyBDYWxjdWxhdGUgY29zIGFuZCBzaW4gb2YgYW5nbGUgcGhpXG4gICAgY29uc3QgY29zXHUwM0M2ID0gTWF0aC5jb3MoXHUwM0M2IC8gMTgwICogTWF0aC5QSSlcbiAgICBjb25zdCBzaW5cdTAzQzYgPSBNYXRoLnNpbihcdTAzQzYgLyAxODAgKiBNYXRoLlBJKVxuXG4gICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL1NWRy9pbXBsbm90ZS5odG1sI0FyY0NvbnZlcnNpb25FbmRwb2ludFRvQ2VudGVyXG4gICAgLy8gKGVxLiA1LjEpXG4gICAgY29uc3QgcDFfID0gbmV3IFBvaW50KFxuICAgICAgKHAxLnggLSBwMi54KSAvIDIsXG4gICAgICAocDEueSAtIHAyLnkpIC8gMlxuICAgICkudHJhbnNmb3JtKG1hdHJpeEZhY3RvcnkoXG4gICAgICBjb3NcdTAzQzYsIC1zaW5cdTAzQzYsIHNpblx1MDNDNiwgY29zXHUwM0M2LCAwLCAwXG4gICAgKSlcblxuICAgIC8vIChlcS4gNi4yKVxuICAgIC8vIE1ha2Ugc3VyZSB0aGUgcmFkaXVzIGZpdCB3aXRoIHRoZSBhcmMgYW5kIGNvcnJlY3QgaWYgbmVjY2Vzc2FyeVxuICAgIGNvbnN0IHJhdGlvID0gKHAxXy54ICoqIDIgLyByeCAqKiAyKSArIChwMV8ueSAqKiAyIC8gcnkgKiogMilcblxuICAgIC8vIChlcS4gNi4zKVxuICAgIGlmIChyYXRpbyA+IDEpIHtcbiAgICAgIHJ4ID0gTWF0aC5zcXJ0KHJhdGlvKSAqIHJ4XG4gICAgICByeSA9IE1hdGguc3FydChyYXRpbykgKiByeVxuICAgIH1cblxuICAgIC8vIChlcS4gNS4yKVxuICAgIGNvbnN0IHJ4UXVhZCA9IHJ4ICoqIDJcbiAgICBjb25zdCByeVF1YWQgPSByeSAqKiAyXG5cbiAgICBjb25zdCBkaXZpc29yMSA9IHJ4UXVhZCAqIHAxXy55ICoqIDJcbiAgICBjb25zdCBkaXZpc29yMiA9IHJ5UXVhZCAqIHAxXy54ICoqIDJcbiAgICBjb25zdCBkaXZpZGVuZCA9IChyeFF1YWQgKiByeVF1YWQgLSBkaXZpc29yMSAtIGRpdmlzb3IyKVxuXG4gICAgbGV0IGNfXG4gICAgaWYgKE1hdGguYWJzKGRpdmlkZW5kKSA8IDFlLTE1KSB7XG4gICAgICBjXyA9IG5ldyBQb2ludCgwLCAwKVxuICAgIH0gZWxzZSB7XG4gICAgICBjXyA9IG5ldyBQb2ludChcbiAgICAgICAgcnggKiBwMV8ueSAvIHJ5LFxuICAgICAgICAtcnkgKiBwMV8ueCAvIHJ4XG4gICAgICApLm11bChNYXRoLnNxcnQoXG4gICAgICAgIGRpdmlkZW5kIC8gKGRpdmlzb3IxICsgZGl2aXNvcjIpXG4gICAgICApKVxuICAgIH1cblxuICAgIGlmICh0aGlzLmFyYyA9PT0gdGhpcy5zd2VlcCkgY18gPSBjXy5tdWwoLTEpXG5cbiAgICAvLyAoZXEuIDUuMylcbiAgICBjb25zdCBjID0gY18udHJhbnNmb3JtKG1hdHJpeEZhY3RvcnkoXG4gICAgICBjb3NcdTAzQzYsIHNpblx1MDNDNiwgLXNpblx1MDNDNiwgY29zXHUwM0M2LCAwLCAwXG4gICAgKSkuYWRkKG5ldyBQb2ludChcbiAgICAgIChwMS54ICsgcDIueCkgLyAyLFxuICAgICAgKHAxLnkgKyBwMi55KSAvIDJcbiAgICApKVxuXG4gICAgY29uc3QgYW5nbGVQb2ludCA9IG5ldyBQb2ludChcbiAgICAgIChwMV8ueCAtIGNfLngpIC8gcngsXG4gICAgICAocDFfLnkgLSBjXy55KSAvIHJ5XG4gICAgKVxuXG4gICAgLyogRm9yIGVxLiA1LjQgc2VlIGFuZ2xlVG8gZnVuY3Rpb24gKi9cblxuICAgIC8vIChlcS4gNS41KVxuICAgIGNvbnN0IFx1MDNCOCA9IG5ldyBQb2ludCgxLCAwKS5hbmdsZVRvKGFuZ2xlUG9pbnQpXG5cbiAgICAvLyAoZXEuIDUuNilcbiAgICBsZXQgXHUwMzk0XHUwM0I4ID0gYW5nbGVQb2ludC5hbmdsZVRvKG5ldyBQb2ludChcbiAgICAgICgtcDFfLnggLSBjXy54KSAvIHJ4LFxuICAgICAgKC1wMV8ueSAtIGNfLnkpIC8gcnlcbiAgICApKVxuXG4gICAgXHUwMzk0XHUwM0I4ID0gKFx1MDM5NFx1MDNCOCAlICgyICogTWF0aC5QSSkpXG5cbiAgICBpZiAoIXN3ZWVwICYmIFx1MDM5NFx1MDNCOCA+IDApIFx1MDM5NFx1MDNCOCAtPSAyICogTWF0aC5QSVxuICAgIGlmIChzd2VlcCAmJiBcdTAzOTRcdTAzQjggPCAwKSBcdTAzOTRcdTAzQjggKz0gMiAqIE1hdGguUElcblxuICAgIHRoaXMuYyA9IGNcbiAgICB0aGlzLnRoZXRhID0gXHUwM0I4ICogMTgwIC8gTWF0aC5QSVxuICAgIHRoaXMudGhldGEyID0gKFx1MDNCOCArIFx1MDM5NFx1MDNCOCkgKiAxODAgLyBNYXRoLlBJXG5cbiAgICB0aGlzLmRlbHRhID0gXHUwMzk0XHUwM0I4ICogMTgwIC8gTWF0aC5QSVxuICAgIHRoaXMucnggPSByeFxuICAgIHRoaXMucnkgPSByeVxuICAgIHRoaXMucGhpID0gXHUwM0M2XG4gICAgdGhpcy5jb3NcdTAzQzYgPSBjb3NcdTAzQzZcbiAgICB0aGlzLnNpblx1MDNDNiA9IHNpblx1MDNDNlxuICB9XG5cbiAgc3RhdGljIGZyb21DZW50ZXJGb3JtIChjLCByeCwgcnksIFx1MDNDNiwgXHUwM0I4LCBcdTAzOTRcdTAzQjgpIHtcbiAgICBjb25zdCBjb3NcdTAzQzYgPSBNYXRoLmNvcyhcdTAzQzYgLyAxODAgKiBNYXRoLlBJKVxuICAgIGNvbnN0IHNpblx1MDNDNiA9IE1hdGguc2luKFx1MDNDNiAvIDE4MCAqIE1hdGguUEkpXG4gICAgY29uc3QgbSA9IG1hdHJpeEZhY3RvcnkoY29zXHUwM0M2LCBzaW5cdTAzQzYsIC1zaW5cdTAzQzYsIGNvc1x1MDNDNiwgMCwgMClcblxuICAgIGNvbnN0IHAxID0gbmV3IFBvaW50KFxuICAgICAgcnggKiBNYXRoLmNvcyhcdTAzQjggLyAxODAgKiBNYXRoLlBJKSxcbiAgICAgIHJ5ICogTWF0aC5zaW4oXHUwM0I4IC8gMTgwICogTWF0aC5QSSlcbiAgICApLnRyYW5zZm9ybShtKS5hZGQoYylcblxuICAgIGNvbnN0IHAyID0gbmV3IFBvaW50KFxuICAgICAgcnggKiBNYXRoLmNvcygoXHUwM0I4ICsgXHUwMzk0XHUwM0I4KSAvIDE4MCAqIE1hdGguUEkpLFxuICAgICAgcnkgKiBNYXRoLnNpbigoXHUwM0I4ICsgXHUwMzk0XHUwM0I4KSAvIDE4MCAqIE1hdGguUEkpXG4gICAgKS50cmFuc2Zvcm0obSkuYWRkKGMpXG5cbiAgICBjb25zdCBhcmMgPSBNYXRoLmFicyhcdTAzOTRcdTAzQjgpID4gMTgwID8gMSA6IDBcbiAgICBjb25zdCBzd2VlcCA9IFx1MDM5NFx1MDNCOCA+IDAgPyAxIDogMFxuXG4gICAgcmV0dXJuIG5ldyBBcmMocDEsIHAyLCByeCwgcnksIFx1MDNDNiwgYXJjLCBzd2VlcClcbiAgfVxuXG4gIGJib3ggKCkge1xuICAgIGNvbnN0IGNsb3VkID0gdGhpcy5nZXRDbG91ZCgpXG4gICAgcmV0dXJuIGNsb3VkLmJib3goKVxuICB9XG5cbiAgY2xvbmUgKCkge1xuICAgIHJldHVybiBuZXcgQXJjKHRoaXMucDEsIHRoaXMucDIsIHRoaXMucngsIHRoaXMucnksIHRoaXMucGhpLCB0aGlzLmFyYywgdGhpcy5zd2VlcClcbiAgfVxuXG4gIGdldENsb3VkICgpIHtcbiAgICBpZiAodGhpcy5wMS5lcXVhbHModGhpcy5wMikpIHJldHVybiBuZXcgUG9pbnRDbG91ZChbIHRoaXMucDEgXSlcblxuICAgIC8vIGFyYyBjb3VsZCBiZSByb3RhdGVkLiB0aGUgbWluIGFuZCBtYXggdmFsdWVzIHRoZW4gZG9udCBsaWUgb24gbXVsdGlwbGVzIG9mIDkwIGRlZ3Jlc3MgYnV0IGFyZSBzaGlmdGVkIGJ5IHRoZSByb3RhdGlvbiBhbmdsZVxuICAgIC8vIHNvIHdlIGZpcnN0IGNhbGN1bGF0ZSBvdXIgMC85MCBkZWdyZWUgYW5nbGVcbiAgICBsZXQgXHUwM0I4MDEgPSBNYXRoLmF0YW4oLXRoaXMuc2luXHUwM0M2IC8gdGhpcy5jb3NcdTAzQzYgKiB0aGlzLnJ5IC8gdGhpcy5yeCkgKiAxODAgLyBNYXRoLlBJXG4gICAgbGV0IFx1MDNCODAyID0gTWF0aC5hdGFuKHRoaXMuY29zXHUwM0M2IC8gdGhpcy5zaW5cdTAzQzYgKiB0aGlzLnJ5IC8gdGhpcy5yeCkgKiAxODAgLyBNYXRoLlBJXG4gICAgbGV0IFx1MDNCODEgPSB0aGlzLnRoZXRhXG4gICAgbGV0IFx1MDNCODIgPSB0aGlzLnRoZXRhMlxuXG4gICAgaWYgKFx1MDNCODEgPCAwIHx8IFx1MDNCODIgPCAwKSB7XG4gICAgICBcdTAzQjgxICs9IDM2MFxuICAgICAgXHUwM0I4MiArPSAzNjBcbiAgICB9XG5cbiAgICBpZiAoXHUwM0I4MiA8IFx1MDNCODEpIHtcbiAgICAgIGNvbnN0IHRlbXAgPSBcdTAzQjgxXG4gICAgICBcdTAzQjgxID0gXHUwM0I4MlxuICAgICAgXHUwM0I4MiA9IHRlbXBcblxuICAgIH1cblxuICAgIHdoaWxlIChcdTAzQjgwMSAtIDkwID4gXHUwM0I4MDEpIFx1MDNCODAxIC09IDkwXG4gICAgd2hpbGUgKFx1MDNCODAxIDwgXHUwM0I4MSkgXHUwM0I4MDEgKz0gOTBcbiAgICB3aGlsZSAoXHUwM0I4MDIgLSA5MCA+IFx1MDNCODAyKSBcdTAzQjgwMiAtPSA5MFxuICAgIHdoaWxlIChcdTAzQjgwMiA8IFx1MDNCODEpIFx1MDNCODAyICs9IDkwXG5cbiAgICBjb25zdCBhbmdsZVRvVGVzdCA9IFsgXHUwM0I4MDEsIFx1MDNCODAyLCAoXHUwM0I4MDEgKyA5MCksIChcdTAzQjgwMiArIDkwKSwgKFx1MDNCODAxICsgMTgwKSwgKFx1MDNCODAyICsgMTgwKSwgKFx1MDNCODAxICsgMjcwKSwgKFx1MDNCODAyICsgMjcwKSBdXG5cbiAgICBjb25zdCBwb2ludHMgPSBhbmdsZVRvVGVzdC5maWx0ZXIoZnVuY3Rpb24gKGFuZ2xlKSB7XG4gICAgICByZXR1cm4gKGFuZ2xlID4gXHUwM0I4MSAmJiBhbmdsZSA8IFx1MDNCODIpXG4gICAgfSkubWFwKGZ1bmN0aW9uIChhbmdsZSkge1xuICAgICAgd2hpbGUgKHRoaXMudGhldGEgPCBhbmdsZSkgYW5nbGUgLT0gMzYwXG4gICAgICByZXR1cm4gdGhpcy5wb2ludEF0KCgoYW5nbGUgLSB0aGlzLnRoZXRhKSAlIDM2MCkgLyAodGhpcy5kZWx0YSkpIC8vIFRPRE86IHJlcGxhY2UgdGhhdCBjYWxsIHdpdGggcG9pbnRBdEFuZ2xlXG4gICAgfS5iaW5kKHRoaXMpKS5jb25jYXQodGhpcy5wMSwgdGhpcy5wMilcblxuICAgIHJldHVybiBuZXcgUG9pbnRDbG91ZChwb2ludHMpXG4gIH1cblxuICBsZW5ndGggKCkge1xuICAgIGlmICh0aGlzLnAxLmVxdWFscyh0aGlzLnAyKSkgcmV0dXJuIDBcblxuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMucDIuc3ViKHRoaXMucDEpLmFicygpXG5cbiAgICBjb25zdCByZXQgPSB0aGlzLnNwbGl0QXQoMC41KVxuICAgIGNvbnN0IGxlbjEgPSByZXRbMF0ucDIuc3ViKHJldFswXS5wMSkuYWJzKClcbiAgICBjb25zdCBsZW4yID0gcmV0WzFdLnAyLnN1YihyZXRbMV0ucDEpLmFicygpXG5cbiAgICBpZiAobGVuMSArIGxlbjIgLSBsZW5ndGggPCAwLjAwMDAxKSB7XG4gICAgICByZXR1cm4gbGVuMSArIGxlbjJcbiAgICB9XG5cbiAgICByZXR1cm4gcmV0WzBdLmxlbmd0aCgpICsgcmV0WzFdLmxlbmd0aCgpXG4gIH1cblxuICBwb2ludEF0ICh0KSB7XG4gICAgaWYgKHRoaXMucDEuZXF1YWxzKHRoaXMucDIpKSByZXR1cm4gdGhpcy5wMS5jbG9uZSgpXG5cbiAgICBjb25zdCB0SW5BbmdsZSA9ICh0aGlzLnRoZXRhICsgdCAqIHRoaXMuZGVsdGEpIC8gMTgwICogTWF0aC5QSVxuICAgIGNvbnN0IHNpblx1MDNCOCA9IE1hdGguc2luKHRJbkFuZ2xlKVxuICAgIGNvbnN0IGNvc1x1MDNCOCA9IE1hdGguY29zKHRJbkFuZ2xlKVxuXG4gICAgcmV0dXJuIG5ldyBQb2ludChcbiAgICAgIHRoaXMuY29zXHUwM0M2ICogdGhpcy5yeCAqIGNvc1x1MDNCOCAtIHRoaXMuc2luXHUwM0M2ICogdGhpcy5yeSAqIHNpblx1MDNCOCArIHRoaXMuYy54LFxuICAgICAgdGhpcy5zaW5cdTAzQzYgKiB0aGlzLnJ5ICogY29zXHUwM0I4ICsgdGhpcy5jb3NcdTAzQzYgKiB0aGlzLnJ4ICogc2luXHUwM0I4ICsgdGhpcy5jLnlcbiAgICApXG4gIH1cblxuICBzcGxpdEF0ICh0KSB7XG4gICAgY29uc3QgYWJzRGVsdGEgPSBNYXRoLmFicyh0aGlzLmRlbHRhKVxuICAgIGNvbnN0IGRlbHRhMSA9IGFic0RlbHRhICogdFxuICAgIGNvbnN0IGRlbHRhMiA9IGFic0RlbHRhICogKDEgLSB0KVxuXG4gICAgY29uc3QgcG9pbnRBdFQgPSB0aGlzLnBvaW50QXQodClcblxuICAgIHJldHVybiBbXG4gICAgICBuZXcgQXJjKHRoaXMucDEsIHBvaW50QXRULCB0aGlzLnJ4LCB0aGlzLnJ5LCB0aGlzLnBoaSwgZGVsdGExID4gMTgwLCB0aGlzLnN3ZWVwKSxcbiAgICAgIG5ldyBBcmMocG9pbnRBdFQsIHRoaXMucDIsIHRoaXMucngsIHRoaXMucnksIHRoaXMucGhpLCBkZWx0YTIgPiAxODAsIHRoaXMuc3dlZXApXG4gICAgXVxuICB9XG5cbiAgdG9QYXRoICgpIHtcbiAgICByZXR1cm4gWyAnTScsIHRoaXMucDEueCwgdGhpcy5wMS55LCAnQScsIHRoaXMucngsIHRoaXMucnksIHRoaXMucGhpLCB0aGlzLmFyYywgdGhpcy5zd2VlcCwgdGhpcy5wMi54LCB0aGlzLnAyLnkgXS5qb2luKCcgJylcbiAgfVxuXG4gIHRvUGF0aEZyYWdtZW50ICgpIHtcbiAgICByZXR1cm4gWyAnQScsIHRoaXMucngsIHRoaXMucnksIHRoaXMucGhpLCB0aGlzLmFyYywgdGhpcy5zd2VlcCwgdGhpcy5wMi54LCB0aGlzLnAyLnkgXVxuICB9XG5cbiAgdG9TdHJpbmcgKCkge1xuICAgIHJldHVybiBgcDE6ICR7dGhpcy5wMS54LnRvRml4ZWQoNCl9ICR7dGhpcy5wMS55LnRvRml4ZWQoNCl9LCBwMjogJHt0aGlzLnAyLngudG9GaXhlZCg0KX0gJHt0aGlzLnAyLnkudG9GaXhlZCg0KX0sIGM6ICR7dGhpcy5jLngudG9GaXhlZCg0KX0gJHt0aGlzLmMueS50b0ZpeGVkKDQpfSB0aGV0YTogJHt0aGlzLnRoZXRhLnRvRml4ZWQoNCl9LCB0aGV0YTI6ICR7dGhpcy50aGV0YTIudG9GaXhlZCg0KX0sIGRlbHRhOiAke3RoaXMuZGVsdGEudG9GaXhlZCg0KX0sIGxhcmdlOiAke3RoaXMuYXJjfSwgc3dlZXA6ICR7dGhpcy5zd2VlcH1gXG4gIH1cblxuICB0cmFuc2Zvcm0gKG1hdHJpeCkge1xuICAgIHJldHVybiBuZXcgQXJjKHRoaXMucDEudHJhbnNmb3JtKG1hdHJpeCksIHRoaXMucDIudHJhbnNmb3JtKG1hdHJpeCksIHRoaXMucngsIHRoaXMucnksIHRoaXMucGhpLCB0aGlzLmFyYywgdGhpcy5zd2VlcClcbiAgfVxufVxuXG5jbGFzcyBDdWJpYyB7XG4gIGNvbnN0cnVjdG9yIChwMSwgYzEsIGMyLCBwMikge1xuICAgIGlmIChwMSBpbnN0YW5jZW9mIFBvaW50KSB7XG4gICAgICB0aGlzLnAxID0gbmV3IFBvaW50KHAxKVxuICAgICAgdGhpcy5jMSA9IG5ldyBQb2ludChjMSlcbiAgICAgIHRoaXMuYzIgPSBuZXcgUG9pbnQoYzIpXG4gICAgICB0aGlzLnAyID0gbmV3IFBvaW50KHAyKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnAxID0gbmV3IFBvaW50KHAxLnAxKVxuICAgICAgdGhpcy5jMSA9IG5ldyBQb2ludChwMS5jMSlcbiAgICAgIHRoaXMuYzIgPSBuZXcgUG9pbnQocDEuYzIpXG4gICAgICB0aGlzLnAyID0gbmV3IFBvaW50KHAxLnAyKVxuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBmcm9tUXVhZCAocDEsIGMsIHAyKSB7XG4gICAgY29uc3QgYzEgPSBwMS5tdWwoMSAvIDMpLmFkZChjLm11bCgyIC8gMykpXG4gICAgY29uc3QgYzIgPSBjLm11bCgyIC8gMykuYWRkKHAyLm11bCgxIC8gMykpXG4gICAgcmV0dXJuIG5ldyBDdWJpYyhwMSwgYzEsIGMyLCBwMilcbiAgfVxuXG4gIGJib3ggKCkge1xuICAgIHJldHVybiB0aGlzLmdldENsb3VkKCkuYmJveCgpXG4gIH1cblxuICBmaW5kUm9vdHMgKCkge1xuICAgIHJldHVybiB0aGlzLmZpbmRSb290c1goKS5jb25jYXQodGhpcy5maW5kUm9vdHNZKCkpXG4gIH1cblxuICBmaW5kUm9vdHNYICgpIHtcbiAgICByZXR1cm4gdGhpcy5maW5kUm9vdHNYWSh0aGlzLnAxLngsIHRoaXMuYzEueCwgdGhpcy5jMi54LCB0aGlzLnAyLngpXG4gIH1cblxuICBmaW5kUm9vdHNYWSAocDEsIHAyLCBwMywgcDQpIHtcbiAgICBjb25zdCBhID0gMyAqICgtcDEgKyAzICogcDIgLSAzICogcDMgKyBwNClcbiAgICBjb25zdCBiID0gNiAqIChwMSAtIDIgKiBwMiArIHAzKVxuICAgIGNvbnN0IGMgPSAzICogKHAyIC0gcDEpXG5cbiAgICBpZiAoYSA9PT0gMCkgcmV0dXJuIFsgLWMgLyBiIF0uZmlsdGVyKGZ1bmN0aW9uIChlbCkgeyByZXR1cm4gZWwgPiAwICYmIGVsIDwgMSB9KVxuXG4gICAgaWYgKGIgKiBiIC0gNCAqIGEgKiBjIDwgMCkgcmV0dXJuIFtdXG4gICAgaWYgKGIgKiBiIC0gNCAqIGEgKiBjID09PSAwKSByZXR1cm4gWyBNYXRoLnJvdW5kKCgtYiAvICgyICogYSkpICogMTAwMDAwKSAvIDEwMDAwMCBdLmZpbHRlcihmdW5jdGlvbiAoZWwpIHsgcmV0dXJuIGVsID4gMCAmJiBlbCA8IDEgfSlcblxuICAgIHJldHVybiBbXG4gICAgICBNYXRoLnJvdW5kKCgtYiArIE1hdGguc3FydChiICogYiAtIDQgKiBhICogYykpIC8gKDIgKiBhKSAqIDEwMDAwMCkgLyAxMDAwMDAsXG4gICAgICBNYXRoLnJvdW5kKCgtYiAtIE1hdGguc3FydChiICogYiAtIDQgKiBhICogYykpIC8gKDIgKiBhKSAqIDEwMDAwMCkgLyAxMDAwMDBcbiAgICBdLmZpbHRlcihmdW5jdGlvbiAoZWwpIHsgcmV0dXJuIGVsID4gMCAmJiBlbCA8IDEgfSlcbiAgfVxuXG4gIGZpbmRSb290c1kgKCkge1xuICAgIHJldHVybiB0aGlzLmZpbmRSb290c1hZKHRoaXMucDEueSwgdGhpcy5jMS55LCB0aGlzLmMyLnksIHRoaXMucDIueSlcbiAgfVxuXG4gIGZsYXRuZXNzICgpIHtcbiAgICBsZXQgdXggPSBNYXRoLnBvdygzICogdGhpcy5jMS54IC0gMiAqIHRoaXMucDEueCAtIHRoaXMucDIueCwgMilcbiAgICBsZXQgdXkgPSBNYXRoLnBvdygzICogdGhpcy5jMS55IC0gMiAqIHRoaXMucDEueSAtIHRoaXMucDIueSwgMilcbiAgICBjb25zdCB2eCA9IE1hdGgucG93KDMgKiB0aGlzLmMyLnggLSAyICogdGhpcy5wMi54IC0gdGhpcy5wMS54LCAyKVxuICAgIGNvbnN0IHZ5ID0gTWF0aC5wb3coMyAqIHRoaXMuYzIueSAtIDIgKiB0aGlzLnAyLnkgLSB0aGlzLnAxLnksIDIpXG5cbiAgICBpZiAodXggPCB2eCkgeyB1eCA9IHZ4IH1cbiAgICBpZiAodXkgPCB2eSkgeyB1eSA9IHZ5IH1cblxuICAgIHJldHVybiB1eCArIHV5XG4gIH1cblxuICBnZXRDbG91ZCAoKSB7XG4gICAgY29uc3QgcG9pbnRzID0gdGhpcy5maW5kUm9vdHMoKVxuICAgICAgLmZpbHRlcihyb290ID0+IHJvb3QgIT09IDAgJiYgcm9vdCAhPT0gMSlcbiAgICAgIC5tYXAocm9vdCA9PiB0aGlzLnBvaW50QXQocm9vdCkpXG4gICAgICAuY29uY2F0KHRoaXMucDEsIHRoaXMucDIpXG5cbiAgICByZXR1cm4gbmV3IFBvaW50Q2xvdWQocG9pbnRzKVxuICB9XG5cbiAgbGVuZ3RoICgpIHtcbiAgICByZXR1cm4gdGhpcy5sZW5ndGhBdCgpXG4gIH1cblxuICBsZW5ndGhBdCAodCA9IDEpIHtcbiAgICBjb25zdCBjdXJ2ZXMgPSB0aGlzLnNwbGl0QXQodClbMF0ubWFrZUZsYXQodClcblxuICAgIGxldCBsZW5ndGggPSAwXG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IGN1cnZlcy5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICAgICAgbGVuZ3RoICs9IGN1cnZlc1tpXS5wMi5zdWIoY3VydmVzW2ldLnAxKS5hYnMoKVxuICAgIH1cblxuICAgIHJldHVybiBsZW5ndGhcbiAgfVxuXG4gIG1ha2VGbGF0ICh0KSB7XG4gICAgaWYgKHRoaXMuZmxhdG5lc3MoKSA+IDAuMTUpIHtcbiAgICAgIHJldHVybiB0aGlzLnNwbGl0QXQoMC41KVxuICAgICAgICAubWFwKGZ1bmN0aW9uIChlbCkgeyByZXR1cm4gZWwubWFrZUZsYXQodCAqIDAuNSkgfSlcbiAgICAgICAgLnJlZHVjZShmdW5jdGlvbiAobGFzdCwgY3VycmVudCkgeyByZXR1cm4gbGFzdC5jb25jYXQoY3VycmVudCkgfSwgW10pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudF92YWx1ZSA9IHRcbiAgICAgIHJldHVybiBbIHRoaXMgXVxuICAgIH1cbiAgfVxuXG4gIHBvaW50QXQgKHQpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50KFxuICAgICAgKDEgLSB0KSAqICgxIC0gdCkgKiAoMSAtIHQpICogdGhpcy5wMS54ICsgMyAqICgxIC0gdCkgKiAoMSAtIHQpICogdCAqIHRoaXMuYzEueCArIDMgKiAoMSAtIHQpICogdCAqIHQgKiB0aGlzLmMyLnggKyB0ICogdCAqIHQgKiB0aGlzLnAyLngsXG4gICAgICAoMSAtIHQpICogKDEgLSB0KSAqICgxIC0gdCkgKiB0aGlzLnAxLnkgKyAzICogKDEgLSB0KSAqICgxIC0gdCkgKiB0ICogdGhpcy5jMS55ICsgMyAqICgxIC0gdCkgKiB0ICogdCAqIHRoaXMuYzIueSArIHQgKiB0ICogdCAqIHRoaXMucDIueVxuICAgIClcbiAgfVxuXG4gIHNwbGl0QXQgKHopIHtcbiAgICBjb25zdCB4ID0gdGhpcy5zcGxpdEF0U2NhbGFyKHosICd4JylcbiAgICBjb25zdCB5ID0gdGhpcy5zcGxpdEF0U2NhbGFyKHosICd5JylcblxuICAgIGNvbnN0IGEgPSBuZXcgQ3ViaWMoXG4gICAgICBuZXcgUG9pbnQoeFswXVswXSwgeVswXVswXSksXG4gICAgICBuZXcgUG9pbnQoeFswXVsxXSwgeVswXVsxXSksXG4gICAgICBuZXcgUG9pbnQoeFswXVsyXSwgeVswXVsyXSksXG4gICAgICBuZXcgUG9pbnQoeFswXVszXSwgeVswXVszXSlcbiAgICApXG5cbiAgICBjb25zdCBiID0gbmV3IEN1YmljKFxuICAgICAgbmV3IFBvaW50KHhbMV1bMF0sIHlbMV1bMF0pLFxuICAgICAgbmV3IFBvaW50KHhbMV1bMV0sIHlbMV1bMV0pLFxuICAgICAgbmV3IFBvaW50KHhbMV1bMl0sIHlbMV1bMl0pLFxuICAgICAgbmV3IFBvaW50KHhbMV1bM10sIHlbMV1bM10pXG4gICAgKVxuXG4gICAgcmV0dXJuIFsgYSwgYiBdXG4gIH1cblxuICBzcGxpdEF0U2NhbGFyICh6LCBwKSB7XG4gICAgY29uc3QgcDEgPSB0aGlzLnAxW3BdXG4gICAgY29uc3QgcDIgPSB0aGlzLmMxW3BdXG4gICAgY29uc3QgcDMgPSB0aGlzLmMyW3BdXG4gICAgY29uc3QgcDQgPSB0aGlzLnAyW3BdXG5cbiAgICBjb25zdCB0ID0geiAqIHogKiB6ICogcDQgLSAzICogeiAqIHogKiAoeiAtIDEpICogcDMgKyAzICogeiAqICh6IC0gMSkgKiAoeiAtIDEpICogcDIgLSAoeiAtIDEpICogKHogLSAxKSAqICh6IC0gMSkgKiBwMVxuXG4gICAgcmV0dXJuIFtcbiAgICAgIFtcbiAgICAgICAgcDEsXG4gICAgICAgIHogKiBwMiAtICh6IC0gMSkgKiBwMSxcbiAgICAgICAgeiAqIHogKiBwMyAtIDIgKiB6ICogKHogLSAxKSAqIHAyICsgKHogLSAxKSAqICh6IC0gMSkgKiBwMSxcbiAgICAgICAgdFxuICAgICAgXSxcbiAgICAgIFtcbiAgICAgICAgdCxcbiAgICAgICAgeiAqIHogKiBwNCAtIDIgKiB6ICogKHogLSAxKSAqIHAzICsgKHogLSAxKSAqICh6IC0gMSkgKiBwMixcbiAgICAgICAgeiAqIHA0IC0gKHogLSAxKSAqIHAzLFxuICAgICAgICBwNFxuICAgICAgXVxuICAgIF1cbiAgfVxuXG4gIHRvUGF0aCAoKSB7XG4gICAgcmV0dXJuIFsgJ00nLCB0aGlzLnAxLngsIHRoaXMucDEueSBdLmNvbmNhdCh0aGlzLnRvUGF0aEZyYWdtZW50KCkpLmpvaW4oJyAnKVxuICB9XG5cbiAgdG9QYXRoRnJhZ21lbnQgKCkge1xuICAgIHJldHVybiBbICdDJywgdGhpcy5jMS54LCB0aGlzLmMxLnksIHRoaXMuYzIueCwgdGhpcy5jMi55LCB0aGlzLnAyLngsIHRoaXMucDIueSBdXG4gIH1cblxuICB0cmFuc2Zvcm0gKG1hdHJpeCkge1xuICAgIHRoaXMucDEudHJhbnNmb3JtTyhtYXRyaXgpXG4gICAgdGhpcy5jMS50cmFuc2Zvcm1PKG1hdHJpeClcbiAgICB0aGlzLmMyLnRyYW5zZm9ybU8obWF0cml4KVxuICAgIHRoaXMucDIudHJhbnNmb3JtTyhtYXRyaXgpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuXG5jbGFzcyBMaW5lIHtcbiAgY29uc3RydWN0b3IgKHgxLCB5MSwgeDIsIHkyKSB7XG4gICAgaWYgKHgxIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICB0aGlzLnAxID0gbmV3IFBvaW50KHgxKVxuICAgICAgdGhpcy5wMiA9IG5ldyBQb2ludCh5MSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wMSA9IG5ldyBQb2ludCh4MSwgeTEpXG4gICAgICB0aGlzLnAyID0gbmV3IFBvaW50KHgyLCB5MilcbiAgICB9XG4gIH1cblxuICBiYm94ICgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRDbG91ZCgpLmJib3goKVxuICB9XG5cbiAgZ2V0Q2xvdWQgKCkge1xuICAgIHJldHVybiBuZXcgUG9pbnRDbG91ZChbIHRoaXMucDEsIHRoaXMucDIgXSlcbiAgfVxuXG4gIGxlbmd0aCAoKSB7XG4gICAgcmV0dXJuIHRoaXMucDIuc3ViKHRoaXMucDEpLmFicygpXG4gIH1cblxuICBwb2ludEF0ICh0KSB7XG4gICAgY29uc3QgdmVjID0gdGhpcy5wMi5zdWIodGhpcy5wMSkubXVsKHQpXG4gICAgcmV0dXJuIHRoaXMucDEuYWRkKHZlYylcbiAgfVxuXG4gIHRvUGF0aCAoKSB7XG4gICAgcmV0dXJuIFsgJ00nLCB0aGlzLnAxLngsIHRoaXMucDEueSwgdGhpcy5wMi54LCB0aGlzLnAyLnkgXS5qb2luKCcgJylcbiAgfVxuXG4gIHRvUGF0aEZyYWdtZW50ICgpIHtcbiAgICByZXR1cm4gWyAnTCcsIHRoaXMucDIueCwgdGhpcy5wMi55IF1cbiAgfVxuXG4gIHRyYW5zZm9ybSAobWF0cml4KSB7XG4gICAgdGhpcy5wMS50cmFuc2Zvcm1PKG1hdHJpeClcbiAgICB0aGlzLnAyLnRyYW5zZm9ybU8obWF0cml4KVxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHBhdGhCQm94ID0gZnVuY3Rpb24gKGQpIHtcbiAgcmV0dXJuIHBhdGhQYXJzZXIoZCkucmVkdWNlKChsLCBjKSA9PiBsLm1lcmdlKGMuYmJveCgpKSwgbmV3IE5vQm94KCkpXG59XG5cbmV4cG9ydCBjbGFzcyBQYXRoU2VnbWVudEFycmF5IGV4dGVuZHMgQXJyYXkge1xuICBiYm94ICgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWR1Y2UoKGwsIGMpID0+IGwubWVyZ2UoYy5iYm94KCkpLCBuZXcgTm9Cb3goKSlcbiAgfVxuXG4gIGNsb3VkICgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWR1Y2UoXG4gICAgICAoY2xvdWQsIHNlZ21lbnQpID0+IHNlZ21lbnQuZ2V0Q2xvdWQoKS5tZXJnZShjbG91ZCksXG4gICAgICBuZXcgUG9pbnRDbG91ZCgpXG4gICAgKVxuICB9XG5cbiAgbWVyZ2UgKG90aGVyKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uY2F0KG90aGVyKVxuICB9XG5cbiAgdHJhbnNmb3JtIChtYXRyaXgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXAoc2VnbWVudCA9PiBzZWdtZW50LnRyYW5zZm9ybShtYXRyaXgpKVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBnZXRQYXRoU2VnbWVudHMgPSBmdW5jdGlvbiAoZCkge1xuICByZXR1cm4gbmV3IFBhdGhTZWdtZW50QXJyYXkoLi4ucGF0aFBhcnNlcihkKSlcbn1cblxuZXhwb3J0IGNvbnN0IHBvaW50QXRMZW5ndGggPSBmdW5jdGlvbiAoZCwgbGVuKSB7XG4gIGNvbnN0IHNlZ3MgPSBwYXRoUGFyc2VyKGQpXG5cbiAgY29uc3Qgc2VnTGVuZ3RocyA9IHNlZ3MubWFwKGVsID0+IGVsLmxlbmd0aCgpKVxuXG4gIGNvbnN0IGxlbmd0aCA9IHNlZ0xlbmd0aHMucmVkdWNlKChsLCBjKSA9PiBsICsgYywgMClcblxuICBsZXQgaSA9IDBcblxuICBsZXQgdCA9IGxlbiAvIGxlbmd0aFxuXG4gIC8vIEZJWE1FOiBQb3AgTW92ZSBiZWZvcmUgdXNpbmcgc2hvcnRjdXQ/XG4gIC8vIHNob3J0Y3V0IGZvciB0cml2aWFsIGNhc2VzXG4gIGlmICh0ID49IDEpIHtcbiAgICAvLyBDaGVjayBpZiB0aGVyZSBpcyBhIHAyLiBJZiBub3QsIHVzZSBwMVxuICAgIGlmIChzZWdzW3NlZ3MubGVuZ3RoIC0gMV0ucDIpIHtcbiAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMV0ucDIubmF0aXZlKClcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHNlZ3Nbc2Vncy5sZW5ndGggLSAxXS5wMS5uYXRpdmUoKVxuICAgIH1cbiAgfVxuXG4gIGlmICh0IDw9IDApIHJldHVybiBzZWdzWzBdLnAxLm5hdGl2ZSgpXG5cbiAgLy8gcmVtb3ZlIG1vdmUgY29tbWFuZHMgYXQgdGhlIHZlcnkgZW5kIG9mIHRoZSBwYXRoXG4gIHdoaWxlIChzZWdzW3NlZ3MubGVuZ3RoIC0gMV0gaW5zdGFuY2VvZiBNb3ZlKSBzZWdzLnBvcCgpXG5cbiAgbGV0IHNlZ0VuZCA9IDBcblxuICBmb3IgKGNvbnN0IGlsID0gc2VnTGVuZ3Rocy5sZW5ndGg7IGkgPCBpbDsgKytpKSB7XG4gICAgY29uc3QgayA9IHNlZ0xlbmd0aHNbaV0gLyBsZW5ndGhcbiAgICBzZWdFbmQgKz0ga1xuXG4gICAgaWYgKHNlZ0VuZCA+IHQpIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG5cbiAgY29uc3QgcmF0aW8gPSBsZW5ndGggLyBzZWdMZW5ndGhzW2ldXG4gIHQgPSByYXRpbyAqICh0IC0gc2VnRW5kKSArIDFcblxuICByZXR1cm4gc2Vnc1tpXS5wb2ludEF0KHQpLm5hdGl2ZSgpXG59XG5cbmV4cG9ydCBjb25zdCBsZW5ndGggPSBmdW5jdGlvbiAoZCkge1xuICByZXR1cm4gcGF0aFBhcnNlcihkKVxuICAgIC5yZWR1Y2UoKGwsIGMpID0+IGwgKyBjLmxlbmd0aCgpLCAwKVxufVxuXG5leHBvcnQgY29uc3QgZGVidWcgPSBmdW5jdGlvbiAobm9kZSkge1xuICBjb25zdCBwYXJzZSA9IHBhdGhQYXJzZXIobm9kZS5nZXRBdHRyaWJ1dGUoJ2QnKSlcblxuICBjb25zdCByZXQgPSB7XG4gICAgcGF0aHM6IHBhcnNlLm1hcChlbCA9PiBlbC50b1BhdGgoKSksXG4gICAgZnJhZ21lbnRzOiBwYXJzZS5tYXAoZWwgPT4gZWwudG9QYXRoRnJhZ21lbnQoKS5qb2luKCcgJykpLFxuICAgIGJib3hzOiBwYXJzZS5tYXAoZWwgPT4ge1xuICAgICAgY29uc3QgYm94ID0gZWwuYmJveCgpXG4gICAgICByZXR1cm4gWyBib3gueCwgYm94LnksIGJveC53aWR0aCwgYm94LmhlaWdodCBdXG4gICAgfSksXG4gICAgYmJveDogcGFyc2UucmVkdWNlKChsLCBjKSA9PiBsLm1lcmdlKGMuYmJveCgpKSwgbmV3IE5vQm94KCkpLFxuICAgIGJib3hzVHJhbnNmb3JtZWQ6IHBhcnNlLm1hcChlbCA9PiB7XG4gICAgICByZXR1cm4gZWwuZ2V0Q2xvdWQoKS50cmFuc2Zvcm0obm9kZS5tYXRyaXhpZnkoKSkuYmJveCgpXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCByZXQsIHtcbiAgICBiYm94VHJhbnNmb3JtZWQ6IHJldC5iYm94c1RyYW5zZm9ybWVkLnJlZHVjZSgobCwgYykgPT4gbC5tZXJnZShjKSwgbmV3IE5vQm94KCkpXG4gIH0pXG59XG5cbmV4cG9ydCBjb25zdCBnZXRDbG91ZCA9IChkKSA9PiB7XG4gIHJldHVybiBwYXRoUGFyc2VyKGQpLnJlZHVjZSgoY2xvdWQsIHNlZ21lbnQpID0+XG4gICAgc2VnbWVudC5nZXRDbG91ZCgpLm1lcmdlKGNsb3VkKSwgbmV3IFBvaW50Q2xvdWQoKVxuICApXG59XG5cbmV4cG9ydCBjb25zdCBwYXRoRnJvbSA9IHtcbiAgYm94ICh7IHgsIHksIHdpZHRoLCBoZWlnaHQgfSkge1xuICAgIHJldHVybiBgTSAke3h9ICR7eX0gaCAke3dpZHRofSB2ICR7aGVpZ2h0fSBIICR7eH0gViAke3l9YFxuICB9LFxuICByZWN0IChub2RlKSB7XG4gICAgY29uc3Qgd2lkdGggPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd3aWR0aCcpKSB8fCAwXG4gICAgY29uc3QgaGVpZ2h0ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgnaGVpZ2h0JykpIHx8IDBcbiAgICBjb25zdCB4ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgneCcpKSB8fCAwXG4gICAgY29uc3QgeSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3knKSkgfHwgMFxuICAgIHJldHVybiBgTSAke3h9ICR7eX0gaCAke3dpZHRofSB2ICR7aGVpZ2h0fSBIICR7eH0gViAke3l9YFxuICB9LFxuICBjaXJjbGUgKG5vZGUpIHtcbiAgICBjb25zdCByID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgncicpKSB8fCAwXG4gICAgY29uc3QgeCA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ2N4JykpIHx8IDBcbiAgICBjb25zdCB5ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgnY3knKSkgfHwgMFxuXG4gICAgaWYgKHIgPT09IDApIHJldHVybiAnTTAgMCdcblxuICAgIHJldHVybiBgTSAke3ggLSByfSAke3l9IEEgJHtyfSAke3J9IDAgMCAwICR7eCArIHJ9ICR7eX0gQSAke3J9ICR7cn0gMCAwIDAgJHt4IC0gcn0gJHt5fWBcbiAgfSxcbiAgZWxsaXBzZSAobm9kZSkge1xuICAgIGNvbnN0IHJ4ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgncngnKSkgfHwgMFxuICAgIGNvbnN0IHJ5ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgncnknKSkgfHwgMFxuICAgIGNvbnN0IHggPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCdjeCcpKSB8fCAwXG4gICAgY29uc3QgeSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ2N5JykpIHx8IDBcblxuICAgIHJldHVybiBgTSAke3ggLSByeH0gJHt5fSBBICR7cnh9ICR7cnl9IDAgMCAwICR7eCArIHJ4fSAke3l9IEEgJHtyeH0gJHtyeX0gMCAwIDAgJHt4IC0gcnh9ICR7eX1gXG4gIH0sXG4gIGxpbmUgKG5vZGUpIHtcbiAgICBjb25zdCB4MSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3gxJykpIHx8IDBcbiAgICBjb25zdCB4MiA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3gyJykpIHx8IDBcbiAgICBjb25zdCB5MSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3kxJykpIHx8IDBcbiAgICBjb25zdCB5MiA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3kyJykpIHx8IDBcblxuICAgIHJldHVybiBgTSAke3gxfSAke3kxfSBMICR7eDJ9ICR7eTJ9YFxuICB9LFxuICBwb2x5Z29uIChub2RlKSB7XG4gICAgcmV0dXJuIGBNICR7bm9kZS5nZXRBdHRyaWJ1dGUoJ3BvaW50cycpfSB6YFxuICB9LFxuICBwb2x5bGluZSAobm9kZSkge1xuICAgIHJldHVybiBgTSAke25vZGUuZ2V0QXR0cmlidXRlKCdwb2ludHMnKX1gXG4gIH1cbn1cbiIsICJpbXBvcnQgcGF0aCBmcm9tICdub2RlOnBhdGgnXG5pbXBvcnQgKiBhcyBmb250a2l0IGZyb20gJ2ZvbnRraXQnXG5pbXBvcnQgKiBhcyBkZWZhdWx0cyBmcm9tICcuL2RlZmF1bHRzLmpzJ1xuaW1wb3J0IHsgQm94LCBOb0JveCB9IGZyb20gJy4uL290aGVyL0JveC5qcydcbmltcG9ydCB7IGdldENvbmZpZywgZ2V0Rm9udHMgfSBmcm9tICcuLi9jb25maWcuanMnXG5cbmV4cG9ydCBjb25zdCB0ZXh0QkJveCA9IGZ1bmN0aW9uICh0ZXh0LCB4LCB5LCBkZXRhaWxzKSB7XG5cbiAgaWYgKCF0ZXh0KSByZXR1cm4gbmV3IE5vQm94KClcblxuICBjb25zdCBjb25maWcgPSBnZXRDb25maWcoKVxuICBjb25zdCBwcmVsb2FkZWQgPSBnZXRGb250cygpXG5cbiAgY29uc3QgZmFtaWxpZXMgPSAoZGV0YWlscy5mb250RmFtaWx5IHx8IGRlZmF1bHRzLmZvbnRGYW1pbHkpLnNwbGl0KC9cXHMqLFxccyovKVxuICBjb25zdCBmb250TWFwID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdHMuZm9udEZhbWlseU1hcHBpbmdzLCBjb25maWcuZm9udEZhbWlseU1hcHBpbmdzKVxuICBjb25zdCBmb250RGlyID0gY29uZmlnLmZvbnREaXIgfHwgZGVmYXVsdHMuZm9udERpclxuICBsZXQgZm9udFNpemUgPSBwYXJzZUZsb2F0KGRldGFpbHMuZm9udFNpemUpXG4gIGlmIChpc05hTihmb250U2l6ZSkpIHtcbiAgICBmb250U2l6ZSA9IGRlZmF1bHRzLmZvbnRTaXplXG4gIH1cbiAgbGV0IGZvbnRGYW1pbHlcbiAgbGV0IGZvbnRcblxuICBmb3IgKGxldCBpID0gMCwgaWwgPSBmYW1pbGllcy5sZW5ndGg7IGkgPCBpbDsgKytpKSB7XG4gICAgaWYgKGZvbnRNYXBbZmFtaWxpZXNbaV1dKSB7XG4gICAgICBmb250RmFtaWx5ID0gZmFtaWxpZXNbaV1cbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG5cbiAgaWYgKCFmb250RmFtaWx5KSB7XG4gICAgZm9udEZhbWlseSA9IGRlZmF1bHRzLmZvbnRGYW1pbHlcbiAgfVxuXG4gIGlmIChwcmVsb2FkZWRbZm9udEZhbWlseV0pIHtcbiAgICBmb250ID0gcHJlbG9hZGVkW2ZvbnRGYW1pbHldXG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZmlsZW5hbWUgPSBwYXRoLmpvaW4oZm9udERpciwgZm9udE1hcFtmb250RmFtaWx5XSlcbiAgICB0cnkge1xuICAgICAgZm9udCA9IGZvbnRraXQub3BlblN5bmMoZmlsZW5hbWUpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS53YXJuKGBDb3VsZCBub3Qgb3BlbiBmb250IFwiJHtmb250RmFtaWx5fVwiIGluIGZpbGUgXCIke2ZpbGVuYW1lfVwiLiAke2UudG9TdHJpbmcoKX1gKVxuICAgICAgcmV0dXJuIG5ldyBOb0JveCgpXG4gICAgfVxuXG4gICAgcHJlbG9hZGVkW2ZvbnRGYW1pbHldID0gZm9udFxuICB9XG5cbiAgY29uc3QgZm9udEhlaWdodCA9IGZvbnQuYXNjZW50IC0gZm9udC5kZXNjZW50XG4gIGNvbnN0IGxpbmVIZWlnaHQgPSBmb250SGVpZ2h0ID4gZm9udC51bml0c1BlckVtID8gZm9udEhlaWdodCA6IGZvbnRIZWlnaHQgKyBmb250LmxpbmVHYXBcblxuICBjb25zdCBoZWlnaHQgPSBsaW5lSGVpZ2h0IC8gZm9udC51bml0c1BlckVtICogZm9udFNpemVcbiAgY29uc3Qgd2lkdGggPSBmb250LmxheW91dCh0ZXh0KS5nbHlwaHMucmVkdWNlKChsYXN0LCBjdXJyKSA9PiBsYXN0ICsgY3Vyci5hZHZhbmNlV2lkdGgsIDApIC8gZm9udC51bml0c1BlckVtICogZm9udFNpemVcblxuICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL3RleHQtYW5jaG9yXG4gIGxldCB4QWRqdXN0ID0gMFxuICBpZiAoZGV0YWlscy50ZXh0QW5jaG9yID09PSAnZW5kJykge1xuICAgIHhBZGp1c3QgPSAtd2lkdGhcbiAgfSBlbHNlIGlmIChkZXRhaWxzLnRleHRBbmNob3IgPT09ICdtaWRkbGUnKSB7XG4gICAgeEFkanVzdCA9IC13aWR0aCAvIDJcbiAgfVxuXG4gIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDAyL1dELWNzczMtbGluZWJveC0yMDAyMDUxNS9cbiAgLy8gNC4yLiBCYXNlbGluZSBpZGVudGlmaWVyc1xuICBsZXQgeUFkanVzdCA9IGZvbnQuYXNjZW50IC8vIGFscGhhYmV0aWNcbiAgaWYgKGRldGFpbHMuZG9taW5hbnRCYXNlbGluZSA9PT0gJ2JlZm9yZS1lZGdlJyB8fCBkZXRhaWxzLmRvbWluYW50QmFzZWxpbmUgPT09ICd0ZXh0LWJlZm9yZS1lZGdlJykge1xuICAgIHlBZGp1c3QgPSAwXG4gIH0gZWxzZSBpZiAoZGV0YWlscy5kb21pbmFudEJhc2VsaW5lID09PSAnaGFuZ2luZycpIHtcbiAgICB5QWRqdXN0ID0gZm9udC5hc2NlbnQgLSBmb250LnhIZWlnaHQgLSBmb250LmNhcEhlaWdodFxuICB9IGVsc2UgaWYgKGRldGFpbHMuZG9taW5hbnRCYXNlbGluZSA9PT0gJ21hdGhlbWF0aWNhbCcpIHtcbiAgICB5QWRqdXN0ID0gZm9udC5hc2NlbnQgLSBmb250LnhIZWlnaHRcbiAgfSBlbHNlIGlmIChkZXRhaWxzLmRvbWluYW50QmFzZWxpbmUgPT09ICdtaWRkbGUnKSB7XG4gICAgeUFkanVzdCA9IGZvbnQuYXNjZW50IC0gZm9udC54SGVpZ2h0IC8gMlxuICB9IGVsc2UgaWYgKGRldGFpbHMuZG9taW5hbnRCYXNlbGluZSA9PT0gJ2NlbnRyYWwnKSB7XG4gICAgeUFkanVzdCA9IGZvbnQuYXNjZW50IC8gMiArIGZvbnQuZGVzY2VudCAvIDJcbiAgfSBlbHNlIGlmIChkZXRhaWxzLmRvbWluYW50QmFzZWxpbmUgPT09ICdpZGVvZ3JhcGhpYycpIHtcbiAgICB5QWRqdXN0ID0gZm9udC5hc2NlbnQgKyBmb250LmRlc2NlbnRcbiAgfVxuXG4gIHJldHVybiBuZXcgQm94KHggKyB4QWRqdXN0LCB5IC0geUFkanVzdCAvIGZvbnQudW5pdHNQZXJFbSAqIGZvbnRTaXplLCB3aWR0aCwgaGVpZ2h0KVxufVxuIiwgIi8vIE5vZGUgYmFjay1jb21wYXQuXG5jb25zdCBFTkNPRElOR19NQVBQSU5HID0ge1xuICB1dGYxNmxlOiAndXRmLTE2bGUnLFxuICB1Y3MyOiAndXRmLTE2bGUnLFxuICB1dGYxNmJlOiAndXRmLTE2YmUnXG59XG5cbmV4cG9ydCBjbGFzcyBEZWNvZGVTdHJlYW0ge1xuICBjb25zdHJ1Y3RvcihidWZmZXIpIHtcbiAgICB0aGlzLmJ1ZmZlciA9IGJ1ZmZlcjtcbiAgICB0aGlzLnZpZXcgPSBuZXcgRGF0YVZpZXcoYnVmZmVyLmJ1ZmZlciwgYnVmZmVyLmJ5dGVPZmZzZXQsIGJ1ZmZlci5ieXRlTGVuZ3RoKTtcbiAgICB0aGlzLnBvcyA9IDA7XG4gICAgdGhpcy5sZW5ndGggPSB0aGlzLmJ1ZmZlci5sZW5ndGg7XG4gIH1cblxuICByZWFkU3RyaW5nKGxlbmd0aCwgZW5jb2RpbmcgPSAnYXNjaWknKSB7XG4gICAgZW5jb2RpbmcgPSBFTkNPRElOR19NQVBQSU5HW2VuY29kaW5nXSB8fCBlbmNvZGluZztcblxuICAgIGxldCBidWYgPSB0aGlzLnJlYWRCdWZmZXIobGVuZ3RoKTtcbiAgICB0cnkge1xuICAgICAgbGV0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoZW5jb2RpbmcpO1xuICAgICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKGJ1Zik7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4gYnVmO1xuICAgIH1cbiAgfVxuXG4gIHJlYWRCdWZmZXIobGVuZ3RoKSB7XG4gICAgcmV0dXJuIHRoaXMuYnVmZmVyLnNsaWNlKHRoaXMucG9zLCAodGhpcy5wb3MgKz0gbGVuZ3RoKSk7XG4gIH1cblxuICByZWFkVUludDI0QkUoKSB7XG4gICAgcmV0dXJuICh0aGlzLnJlYWRVSW50MTZCRSgpIDw8IDgpICsgdGhpcy5yZWFkVUludDgoKTtcbiAgfVxuXG4gIHJlYWRVSW50MjRMRSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWFkVUludDE2TEUoKSArICh0aGlzLnJlYWRVSW50OCgpIDw8IDE2KTtcbiAgfVxuXG4gIHJlYWRJbnQyNEJFKCkge1xuICAgIHJldHVybiAodGhpcy5yZWFkSW50MTZCRSgpIDw8IDgpICsgdGhpcy5yZWFkVUludDgoKTtcbiAgfVxuXG4gIHJlYWRJbnQyNExFKCkge1xuICAgIHJldHVybiB0aGlzLnJlYWRVSW50MTZMRSgpICsgKHRoaXMucmVhZEludDgoKSA8PCAxNik7XG4gIH1cbn1cblxuRGVjb2RlU3RyZWFtLlRZUEVTID0ge1xuICBVSW50ODogMSxcbiAgVUludDE2OiAyLFxuICBVSW50MjQ6IDMsXG4gIFVJbnQzMjogNCxcbiAgSW50ODogMSxcbiAgSW50MTY6IDIsXG4gIEludDI0OiAzLFxuICBJbnQzMjogNCxcbiAgRmxvYXQ6IDQsXG4gIERvdWJsZTogOFxufTtcblxuZm9yIChsZXQga2V5IG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKERhdGFWaWV3LnByb3RvdHlwZSkpIHtcbiAgaWYgKGtleS5zbGljZSgwLCAzKSA9PT0gJ2dldCcpIHtcbiAgICBsZXQgdHlwZSA9IGtleS5zbGljZSgzKS5yZXBsYWNlKCdVaScsICdVSScpO1xuICAgIGlmICh0eXBlID09PSAnRmxvYXQzMicpIHtcbiAgICAgIHR5cGUgPSAnRmxvYXQnO1xuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ0Zsb2F0NjQnKSB7XG4gICAgICB0eXBlID0gJ0RvdWJsZSc7XG4gICAgfVxuICAgIGxldCBieXRlcyA9IERlY29kZVN0cmVhbS5UWVBFU1t0eXBlXTtcbiAgICBEZWNvZGVTdHJlYW0ucHJvdG90eXBlWydyZWFkJyArIHR5cGUgKyAoYnl0ZXMgPT09IDEgPyAnJyA6ICdCRScpXSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IHJldCA9IHRoaXMudmlld1trZXldKHRoaXMucG9zLCBmYWxzZSk7XG4gICAgICB0aGlzLnBvcyArPSBieXRlcztcbiAgICAgIHJldHVybiByZXQ7XG4gICAgfTtcblxuICAgIGlmIChieXRlcyAhPT0gMSkge1xuICAgICAgRGVjb2RlU3RyZWFtLnByb3RvdHlwZVsncmVhZCcgKyB0eXBlICsgJ0xFJ10gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGNvbnN0IHJldCA9IHRoaXMudmlld1trZXldKHRoaXMucG9zLCB0cnVlKTtcbiAgICAgICAgdGhpcy5wb3MgKz0gYnl0ZXM7XG4gICAgICAgIHJldHVybiByZXQ7XG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCB7RGVjb2RlU3RyZWFtfSBmcm9tICcuL0RlY29kZVN0cmVhbS5qcyc7XG5cbmNvbnN0IHRleHRFbmNvZGVyID0gbmV3IFRleHRFbmNvZGVyKCk7XG5jb25zdCBpc0JpZ0VuZGlhbiA9IG5ldyBVaW50OEFycmF5KG5ldyBVaW50MTZBcnJheShbMHgxMjM0XSkuYnVmZmVyKVswXSA9PSAweDEyO1xuXG5leHBvcnQgY2xhc3MgRW5jb2RlU3RyZWFtIHtcbiAgY29uc3RydWN0b3IoYnVmZmVyKSB7XG4gICAgdGhpcy5idWZmZXIgPSBidWZmZXI7XG4gICAgdGhpcy52aWV3ID0gbmV3IERhdGFWaWV3KHRoaXMuYnVmZmVyLmJ1ZmZlciwgdGhpcy5idWZmZXIuYnl0ZU9mZnNldCwgdGhpcy5idWZmZXIuYnl0ZUxlbmd0aCk7XG4gICAgdGhpcy5wb3MgPSAwO1xuICB9XG5cbiAgd3JpdGVCdWZmZXIoYnVmZmVyKSB7XG4gICAgdGhpcy5idWZmZXIuc2V0KGJ1ZmZlciwgdGhpcy5wb3MpO1xuICAgIHRoaXMucG9zICs9IGJ1ZmZlci5sZW5ndGg7XG4gIH1cblxuICB3cml0ZVN0cmluZyhzdHJpbmcsIGVuY29kaW5nID0gJ2FzY2lpJykge1xuICAgIGxldCBidWY7XG4gICAgc3dpdGNoIChlbmNvZGluZykge1xuICAgICAgY2FzZSAndXRmMTZsZSc6XG4gICAgICBjYXNlICd1dGYxNi1sZSc6XG4gICAgICBjYXNlICd1Y3MyJzogLy8gbm9kZSB0cmVhdHMgdGhpcyB0aGUgc2FtZSBhcyB1dGYxNi5cbiAgICAgICAgYnVmID0gc3RyaW5nVG9VdGYxNihzdHJpbmcsIGlzQmlnRW5kaWFuKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ3V0ZjE2YmUnOlxuICAgICAgY2FzZSAndXRmMTYtYmUnOlxuICAgICAgICBidWYgPSBzdHJpbmdUb1V0ZjE2KHN0cmluZywgIWlzQmlnRW5kaWFuKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ3V0ZjgnOlxuICAgICAgICBidWYgPSB0ZXh0RW5jb2Rlci5lbmNvZGUoc3RyaW5nKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ2FzY2lpJzpcbiAgICAgICAgYnVmID0gc3RyaW5nVG9Bc2NpaShzdHJpbmcpO1xuICAgICAgICBicmVhaztcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBlbmNvZGluZzogJHtlbmNvZGluZ31gKTtcbiAgICB9XG5cbiAgICB0aGlzLndyaXRlQnVmZmVyKGJ1Zik7XG4gIH1cblxuICB3cml0ZVVJbnQyNEJFKHZhbCkge1xuICAgIHRoaXMuYnVmZmVyW3RoaXMucG9zKytdID0gKHZhbCA+Pj4gMTYpICYgMHhmZjtcbiAgICB0aGlzLmJ1ZmZlclt0aGlzLnBvcysrXSA9ICh2YWwgPj4+IDgpICYgMHhmZjtcbiAgICB0aGlzLmJ1ZmZlclt0aGlzLnBvcysrXSA9IHZhbCAmIDB4ZmY7XG4gIH1cblxuICB3cml0ZVVJbnQyNExFKHZhbCkge1xuICAgIHRoaXMuYnVmZmVyW3RoaXMucG9zKytdID0gdmFsICYgMHhmZjtcbiAgICB0aGlzLmJ1ZmZlclt0aGlzLnBvcysrXSA9ICh2YWwgPj4+IDgpICYgMHhmZjtcbiAgICB0aGlzLmJ1ZmZlclt0aGlzLnBvcysrXSA9ICh2YWwgPj4+IDE2KSAmIDB4ZmY7XG4gIH1cblxuICB3cml0ZUludDI0QkUodmFsKSB7XG4gICAgaWYgKHZhbCA+PSAwKSB7XG4gICAgICB0aGlzLndyaXRlVUludDI0QkUodmFsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53cml0ZVVJbnQyNEJFKHZhbCArIDB4ZmZmZmZmICsgMSk7XG4gICAgfVxuICB9XG5cbiAgd3JpdGVJbnQyNExFKHZhbCkge1xuICAgIGlmICh2YWwgPj0gMCkge1xuICAgICAgdGhpcy53cml0ZVVJbnQyNExFKHZhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud3JpdGVVSW50MjRMRSh2YWwgKyAweGZmZmZmZiArIDEpO1xuICAgIH1cbiAgfVxuXG4gIGZpbGwodmFsLCBsZW5ndGgpIHtcbiAgICBpZiAobGVuZ3RoIDwgdGhpcy5idWZmZXIubGVuZ3RoKSB7XG4gICAgICB0aGlzLmJ1ZmZlci5maWxsKHZhbCwgdGhpcy5wb3MsIHRoaXMucG9zICsgbGVuZ3RoKTtcbiAgICAgIHRoaXMucG9zICs9IGxlbmd0aDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgYnVmID0gbmV3IFVpbnQ4QXJyYXkobGVuZ3RoKTtcbiAgICAgIGJ1Zi5maWxsKHZhbCk7XG4gICAgICB0aGlzLndyaXRlQnVmZmVyKGJ1Zik7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHN0cmluZ1RvVXRmMTYoc3RyaW5nLCBzd2FwKSB7XG4gIGxldCBidWYgPSBuZXcgVWludDE2QXJyYXkoc3RyaW5nLmxlbmd0aCk7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgaSsrKSB7XG4gICAgbGV0IGNvZGUgPSBzdHJpbmcuY2hhckNvZGVBdChpKTtcbiAgICBpZiAoc3dhcCkge1xuICAgICAgY29kZSA9IChjb2RlID4+IDgpIHwgKChjb2RlICYgMHhmZikgPDwgOCk7XG4gICAgfVxuICAgIGJ1ZltpXSA9IGNvZGU7XG4gIH1cbiAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGJ1Zi5idWZmZXIpO1xufVxuXG5mdW5jdGlvbiBzdHJpbmdUb0FzY2lpKHN0cmluZykge1xuICBsZXQgYnVmID0gbmV3IFVpbnQ4QXJyYXkoc3RyaW5nLmxlbmd0aCk7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgaSsrKSB7XG4gICAgLy8gTWF0Y2ggbm9kZS5qcyBiZWhhdmlvciAtIGVuY29kaW5nIGFsbG93cyA4LWJpdCByYXRoZXIgdGhhbiA3LWJpdC5cbiAgICBidWZbaV0gPSBzdHJpbmcuY2hhckNvZGVBdChpKTtcbiAgfVxuICByZXR1cm4gYnVmO1xufVxuXG5mb3IgKGxldCBrZXkgb2YgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoRGF0YVZpZXcucHJvdG90eXBlKSkge1xuICBpZiAoa2V5LnNsaWNlKDAsIDMpID09PSAnc2V0Jykge1xuICAgIGxldCB0eXBlID0ga2V5LnNsaWNlKDMpLnJlcGxhY2UoJ1VpJywgJ1VJJyk7XG4gICAgaWYgKHR5cGUgPT09ICdGbG9hdDMyJykge1xuICAgICAgdHlwZSA9ICdGbG9hdCc7XG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnRmxvYXQ2NCcpIHtcbiAgICAgIHR5cGUgPSAnRG91YmxlJztcbiAgICB9XG4gICAgbGV0IGJ5dGVzID0gRGVjb2RlU3RyZWFtLlRZUEVTW3R5cGVdO1xuICAgIEVuY29kZVN0cmVhbS5wcm90b3R5cGVbJ3dyaXRlJyArIHR5cGUgKyAoYnl0ZXMgPT09IDEgPyAnJyA6ICdCRScpXSA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgICAgdGhpcy52aWV3W2tleV0odGhpcy5wb3MsIHZhbHVlLCBmYWxzZSk7XG4gICAgICB0aGlzLnBvcyArPSBieXRlcztcbiAgICB9O1xuXG4gICAgaWYgKGJ5dGVzICE9PSAxKSB7XG4gICAgICBFbmNvZGVTdHJlYW0ucHJvdG90eXBlWyd3cml0ZScgKyB0eXBlICsgJ0xFJ10gPSBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICAgICAgdGhpcy52aWV3W2tleV0odGhpcy5wb3MsIHZhbHVlLCB0cnVlKTtcbiAgICAgICAgdGhpcy5wb3MgKz0gYnl0ZXM7XG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCB7RGVjb2RlU3RyZWFtfSBmcm9tICcuL0RlY29kZVN0cmVhbS5qcyc7XG5pbXBvcnQge0VuY29kZVN0cmVhbX0gZnJvbSAnLi9FbmNvZGVTdHJlYW0uanMnO1xuXG5leHBvcnQgY2xhc3MgQmFzZSB7XG4gIGZyb21CdWZmZXIoYnVmZmVyKSB7XG4gICAgbGV0IHN0cmVhbSA9IG5ldyBEZWNvZGVTdHJlYW0oYnVmZmVyKTtcbiAgICByZXR1cm4gdGhpcy5kZWNvZGUoc3RyZWFtKTtcbiAgfVxuXG4gIHRvQnVmZmVyKHZhbHVlKSB7XG4gICAgbGV0IHNpemUgPSB0aGlzLnNpemUodmFsdWUpO1xuICAgIGxldCBidWZmZXIgPSBuZXcgVWludDhBcnJheShzaXplKTtcbiAgICBsZXQgc3RyZWFtID0gbmV3IEVuY29kZVN0cmVhbShidWZmZXIpO1xuICAgIHRoaXMuZW5jb2RlKHN0cmVhbSwgdmFsdWUpO1xuICAgIHJldHVybiBidWZmZXI7XG4gIH1cbn1cbiIsICJpbXBvcnQge0RlY29kZVN0cmVhbX0gZnJvbSAnLi9EZWNvZGVTdHJlYW0uanMnO1xuaW1wb3J0IHtCYXNlfSBmcm9tICcuL0Jhc2UuanMnO1xuXG5jbGFzcyBOdW1iZXJUIGV4dGVuZHMgQmFzZSB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIGVuZGlhbiA9ICdCRScpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5lbmRpYW4gPSBlbmRpYW47XG4gICAgdGhpcy5mbiA9IHRoaXMudHlwZTtcbiAgICBpZiAodGhpcy50eXBlW3RoaXMudHlwZS5sZW5ndGggLSAxXSAhPT0gJzgnKSB7XG4gICAgICB0aGlzLmZuICs9IHRoaXMuZW5kaWFuO1xuICAgIH1cbiAgfVxuXG4gIHNpemUoKSB7XG4gICAgcmV0dXJuIERlY29kZVN0cmVhbS5UWVBFU1t0aGlzLnR5cGVdO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSkge1xuICAgIHJldHVybiBzdHJlYW1bYHJlYWQke3RoaXMuZm59YF0oKTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIHZhbCkge1xuICAgIHJldHVybiBzdHJlYW1bYHdyaXRlJHt0aGlzLmZufWBdKHZhbCk7XG4gIH1cbn1cblxuZXhwb3J0IHtOdW1iZXJUIGFzIE51bWJlcn07XG5cbmV4cG9ydCBjb25zdCB1aW50OCA9IG5ldyBOdW1iZXJUKCdVSW50OCcpO1xuZXhwb3J0IGNvbnN0IHVpbnQxNmJlID0gbmV3IE51bWJlclQoJ1VJbnQxNicsICdCRScpO1xuZXhwb3J0IGNvbnN0IHVpbnQxNiA9IHVpbnQxNmJlO1xuZXhwb3J0IGNvbnN0IHVpbnQxNmxlID0gbmV3IE51bWJlclQoJ1VJbnQxNicsICdMRScpO1xuZXhwb3J0IGNvbnN0IHVpbnQyNGJlID0gbmV3IE51bWJlclQoJ1VJbnQyNCcsICdCRScpO1xuZXhwb3J0IGNvbnN0IHVpbnQyNCA9IHVpbnQyNGJlO1xuZXhwb3J0IGNvbnN0IHVpbnQyNGxlID0gbmV3IE51bWJlclQoJ1VJbnQyNCcsICdMRScpO1xuZXhwb3J0IGNvbnN0IHVpbnQzMmJlID0gbmV3IE51bWJlclQoJ1VJbnQzMicsICdCRScpO1xuZXhwb3J0IGNvbnN0IHVpbnQzMiA9IHVpbnQzMmJlO1xuZXhwb3J0IGNvbnN0IHVpbnQzMmxlID0gbmV3IE51bWJlclQoJ1VJbnQzMicsICdMRScpO1xuZXhwb3J0IGNvbnN0IGludDggPSBuZXcgTnVtYmVyVCgnSW50OCcpO1xuZXhwb3J0IGNvbnN0IGludDE2YmUgPSBuZXcgTnVtYmVyVCgnSW50MTYnLCAnQkUnKTtcbmV4cG9ydCBjb25zdCBpbnQxNiA9IGludDE2YmU7XG5leHBvcnQgY29uc3QgaW50MTZsZSA9IG5ldyBOdW1iZXJUKCdJbnQxNicsICdMRScpO1xuZXhwb3J0IGNvbnN0IGludDI0YmUgPSBuZXcgTnVtYmVyVCgnSW50MjQnLCAnQkUnKTtcbmV4cG9ydCBjb25zdCBpbnQyNCA9IGludDI0YmU7XG5leHBvcnQgY29uc3QgaW50MjRsZSA9IG5ldyBOdW1iZXJUKCdJbnQyNCcsICdMRScpO1xuZXhwb3J0IGNvbnN0IGludDMyYmUgPSBuZXcgTnVtYmVyVCgnSW50MzInLCAnQkUnKTtcbmV4cG9ydCBjb25zdCBpbnQzMiA9IGludDMyYmU7XG5leHBvcnQgY29uc3QgaW50MzJsZSA9IG5ldyBOdW1iZXJUKCdJbnQzMicsICdMRScpO1xuZXhwb3J0IGNvbnN0IGZsb2F0YmUgPSBuZXcgTnVtYmVyVCgnRmxvYXQnLCAnQkUnKTtcbmV4cG9ydCBjb25zdCBmbG9hdCA9IGZsb2F0YmU7XG5leHBvcnQgY29uc3QgZmxvYXRsZSA9IG5ldyBOdW1iZXJUKCdGbG9hdCcsICdMRScpO1xuZXhwb3J0IGNvbnN0IGRvdWJsZWJlID0gbmV3IE51bWJlclQoJ0RvdWJsZScsICdCRScpO1xuZXhwb3J0IGNvbnN0IGRvdWJsZSA9IGRvdWJsZWJlO1xuZXhwb3J0IGNvbnN0IGRvdWJsZWxlID0gbmV3IE51bWJlclQoJ0RvdWJsZScsICdMRScpO1xuXG5leHBvcnQgY2xhc3MgRml4ZWQgZXh0ZW5kcyBOdW1iZXJUIHtcbiAgY29uc3RydWN0b3Ioc2l6ZSwgZW5kaWFuLCBmcmFjQml0cyA9IHNpemUgPj4gMSkge1xuICAgIHN1cGVyKGBJbnQke3NpemV9YCwgZW5kaWFuKTtcbiAgICB0aGlzLl9wb2ludCA9IDEgPDwgZnJhY0JpdHM7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtKSB7XG4gICAgcmV0dXJuIHN1cGVyLmRlY29kZShzdHJlYW0pIC8gdGhpcy5fcG9pbnQ7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWwpIHtcbiAgICByZXR1cm4gc3VwZXIuZW5jb2RlKHN0cmVhbSwgKHZhbCAqIHRoaXMuX3BvaW50KSB8IDApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBmaXhlZDE2YmUgPSBuZXcgRml4ZWQoMTYsICdCRScpO1xuZXhwb3J0IGNvbnN0IGZpeGVkMTYgPSBmaXhlZDE2YmU7XG5leHBvcnQgY29uc3QgZml4ZWQxNmxlID0gbmV3IEZpeGVkKDE2LCAnTEUnKTtcbmV4cG9ydCBjb25zdCBmaXhlZDMyYmUgPSBuZXcgRml4ZWQoMzIsICdCRScpO1xuZXhwb3J0IGNvbnN0IGZpeGVkMzIgPSBmaXhlZDMyYmU7XG5leHBvcnQgY29uc3QgZml4ZWQzMmxlID0gbmV3IEZpeGVkKDMyLCAnTEUnKTtcbiIsICJpbXBvcnQge051bWJlciBhcyBOdW1iZXJUfSBmcm9tICcuL051bWJlci5qcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlTGVuZ3RoKGxlbmd0aCwgc3RyZWFtLCBwYXJlbnQpIHtcbiAgbGV0IHJlcztcbiAgaWYgKHR5cGVvZiBsZW5ndGggPT09ICdudW1iZXInKSB7XG4gICAgcmVzID0gbGVuZ3RoO1xuXG4gIH0gZWxzZSBpZiAodHlwZW9mIGxlbmd0aCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJlcyA9IGxlbmd0aC5jYWxsKHBhcmVudCwgcGFyZW50KTtcblxuICB9IGVsc2UgaWYgKHBhcmVudCAmJiAodHlwZW9mIGxlbmd0aCA9PT0gJ3N0cmluZycpKSB7XG4gICAgcmVzID0gcGFyZW50W2xlbmd0aF07XG5cbiAgfSBlbHNlIGlmIChzdHJlYW0gJiYgbGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgIHJlcyA9IGxlbmd0aC5kZWNvZGUoc3RyZWFtKTtcbiAgfVxuXG4gIGlmIChpc05hTihyZXMpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgYSBmaXhlZCBzaXplJyk7XG4gIH1cblxuICByZXR1cm4gcmVzO1xufTtcblxuZXhwb3J0IGNsYXNzIFByb3BlcnR5RGVzY3JpcHRvciB7XG4gIGNvbnN0cnVjdG9yKG9wdHMgPSB7fSkge1xuICAgIHRoaXMuZW51bWVyYWJsZSA9IHRydWU7XG4gICAgdGhpcy5jb25maWd1cmFibGUgPSB0cnVlO1xuXG4gICAgZm9yIChsZXQga2V5IGluIG9wdHMpIHtcbiAgICAgIGNvbnN0IHZhbCA9IG9wdHNba2V5XTtcbiAgICAgIHRoaXNba2V5XSA9IHZhbDtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5pbXBvcnQge051bWJlciBhcyBOdW1iZXJUfSBmcm9tICcuL051bWJlci5qcyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzLmpzJztcblxuY2xhc3MgQXJyYXlUIGV4dGVuZHMgQmFzZSB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIGxlbmd0aCwgbGVuZ3RoVHlwZSA9ICdjb3VudCcpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5sZW5ndGggPSBsZW5ndGg7XG4gICAgdGhpcy5sZW5ndGhUeXBlID0gbGVuZ3RoVHlwZTtcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIGxldCBsZW5ndGg7XG4gICAgY29uc3QgeyBwb3MgfSA9IHN0cmVhbTtcblxuICAgIGNvbnN0IHJlcyA9IFtdO1xuICAgIGxldCBjdHggPSBwYXJlbnQ7XG5cbiAgICBpZiAodGhpcy5sZW5ndGggIT0gbnVsbCkge1xuICAgICAgbGVuZ3RoID0gdXRpbHMucmVzb2x2ZUxlbmd0aCh0aGlzLmxlbmd0aCwgc3RyZWFtLCBwYXJlbnQpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxlbmd0aCBpbnN0YW5jZW9mIE51bWJlclQpIHtcbiAgICAgIC8vIGRlZmluZSBoaWRkZW4gcHJvcGVydGllc1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMocmVzLCB7XG4gICAgICAgIHBhcmVudDogICAgICAgICB7IHZhbHVlOiBwYXJlbnQgfSxcbiAgICAgICAgX3N0YXJ0T2Zmc2V0OiAgIHsgdmFsdWU6IHBvcyB9LFxuICAgICAgICBfY3VycmVudE9mZnNldDogeyB2YWx1ZTogMCwgd3JpdGFibGU6IHRydWUgfSxcbiAgICAgICAgX2xlbmd0aDogICAgICAgIHsgdmFsdWU6IGxlbmd0aCB9XG4gICAgICB9KTtcblxuICAgICAgY3R4ID0gcmVzO1xuICAgIH1cblxuICAgIGlmICgobGVuZ3RoID09IG51bGwpIHx8ICh0aGlzLmxlbmd0aFR5cGUgPT09ICdieXRlcycpKSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSAobGVuZ3RoICE9IG51bGwpID9cbiAgICAgICAgc3RyZWFtLnBvcyArIGxlbmd0aFxuICAgICAgOiAocGFyZW50ICE9IG51bGwgPyBwYXJlbnQuX2xlbmd0aCA6IHVuZGVmaW5lZCkgP1xuICAgICAgICBwYXJlbnQuX3N0YXJ0T2Zmc2V0ICsgcGFyZW50Ll9sZW5ndGhcbiAgICAgIDpcbiAgICAgICAgc3RyZWFtLmxlbmd0aDtcblxuICAgICAgd2hpbGUgKHN0cmVhbS5wb3MgPCB0YXJnZXQpIHtcbiAgICAgICAgcmVzLnB1c2godGhpcy50eXBlLmRlY29kZShzdHJlYW0sIGN0eCkpO1xuICAgICAgfVxuXG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAobGV0IGkgPSAwLCBlbmQgPSBsZW5ndGg7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgICByZXMucHVzaCh0aGlzLnR5cGUuZGVjb2RlKHN0cmVhbSwgY3R4KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIHNpemUoYXJyYXksIGN0eCwgaW5jbHVkZVBvaW50ZXJzID0gdHJ1ZSkge1xuICAgIGlmICghYXJyYXkpIHtcbiAgICAgIHJldHVybiB0aGlzLnR5cGUuc2l6ZShudWxsLCBjdHgpICogdXRpbHMucmVzb2x2ZUxlbmd0aCh0aGlzLmxlbmd0aCwgbnVsbCwgY3R4KTtcbiAgICB9XG5cbiAgICBsZXQgc2l6ZSA9IDA7XG4gICAgaWYgKHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgc2l6ZSArPSB0aGlzLmxlbmd0aC5zaXplKCk7XG4gICAgICBjdHggPSB7cGFyZW50OiBjdHgsIHBvaW50ZXJTaXplOiAwfTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpdGVtIG9mIGFycmF5KSB7XG4gICAgICBzaXplICs9IHRoaXMudHlwZS5zaXplKGl0ZW0sIGN0eCk7XG4gICAgfVxuXG4gICAgaWYgKGN0eCAmJiBpbmNsdWRlUG9pbnRlcnMgJiYgdGhpcy5sZW5ndGggaW5zdGFuY2VvZiBOdW1iZXJUKSB7XG4gICAgICBzaXplICs9IGN0eC5wb2ludGVyU2l6ZTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHNpemU7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCBhcnJheSwgcGFyZW50KSB7XG4gICAgbGV0IGN0eCA9IHBhcmVudDtcbiAgICBpZiAodGhpcy5sZW5ndGggaW5zdGFuY2VvZiBOdW1iZXJUKSB7XG4gICAgICBjdHggPSB7XG4gICAgICAgIHBvaW50ZXJzOiBbXSxcbiAgICAgICAgc3RhcnRPZmZzZXQ6IHN0cmVhbS5wb3MsXG4gICAgICAgIHBhcmVudFxuICAgICAgfTtcblxuICAgICAgY3R4LnBvaW50ZXJPZmZzZXQgPSBzdHJlYW0ucG9zICsgdGhpcy5zaXplKGFycmF5LCBjdHgsIGZhbHNlKTtcbiAgICAgIHRoaXMubGVuZ3RoLmVuY29kZShzdHJlYW0sIGFycmF5Lmxlbmd0aCk7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaXRlbSBvZiBhcnJheSkge1xuICAgICAgdGhpcy50eXBlLmVuY29kZShzdHJlYW0sIGl0ZW0sIGN0eCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgbGV0IGkgPSAwO1xuICAgICAgd2hpbGUgKGkgPCBjdHgucG9pbnRlcnMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IHB0ciA9IGN0eC5wb2ludGVyc1tpKytdO1xuICAgICAgICBwdHIudHlwZS5lbmNvZGUoc3RyZWFtLCBwdHIudmFsLCBwdHIucGFyZW50KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IHtBcnJheVQgYXMgQXJyYXl9O1xuIiwgImltcG9ydCB7QXJyYXkgYXMgQXJyYXlUfSBmcm9tICcuL0FycmF5LmpzJztcbmltcG9ydCB7TnVtYmVyIGFzIE51bWJlclR9IGZyb20gJy4vTnVtYmVyLmpzJztcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMuanMnO1xuXG5leHBvcnQgY2xhc3MgTGF6eUFycmF5IGV4dGVuZHMgQXJyYXlUIHtcbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgY29uc3QgeyBwb3MgfSA9IHN0cmVhbTtcbiAgICBjb25zdCBsZW5ndGggPSB1dGlscy5yZXNvbHZlTGVuZ3RoKHRoaXMubGVuZ3RoLCBzdHJlYW0sIHBhcmVudCk7XG5cbiAgICBpZiAodGhpcy5sZW5ndGggaW5zdGFuY2VvZiBOdW1iZXJUKSB7XG4gICAgICBwYXJlbnQgPSB7XG4gICAgICAgIHBhcmVudCxcbiAgICAgICAgX3N0YXJ0T2Zmc2V0OiBwb3MsXG4gICAgICAgIF9jdXJyZW50T2Zmc2V0OiAwLFxuICAgICAgICBfbGVuZ3RoOiBsZW5ndGhcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgcmVzID0gbmV3IExhenlBcnJheVZhbHVlKHRoaXMudHlwZSwgbGVuZ3RoLCBzdHJlYW0sIHBhcmVudCk7XG5cbiAgICBzdHJlYW0ucG9zICs9IGxlbmd0aCAqIHRoaXMudHlwZS5zaXplKG51bGwsIHBhcmVudCk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIHNpemUodmFsLCBjdHgpIHtcbiAgICBpZiAodmFsIGluc3RhbmNlb2YgTGF6eUFycmF5VmFsdWUpIHtcbiAgICAgIHZhbCA9IHZhbC50b0FycmF5KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN1cGVyLnNpemUodmFsLCBjdHgpO1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsLCBjdHgpIHtcbiAgICBpZiAodmFsIGluc3RhbmNlb2YgTGF6eUFycmF5VmFsdWUpIHtcbiAgICAgIHZhbCA9IHZhbC50b0FycmF5KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN1cGVyLmVuY29kZShzdHJlYW0sIHZhbCwgY3R4KTtcbiAgfVxufVxuXG5jbGFzcyBMYXp5QXJyYXlWYWx1ZSB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIGxlbmd0aCwgc3RyZWFtLCBjdHgpIHtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMubGVuZ3RoID0gbGVuZ3RoO1xuICAgIHRoaXMuc3RyZWFtID0gc3RyZWFtO1xuICAgIHRoaXMuY3R4ID0gY3R4O1xuICAgIHRoaXMuYmFzZSA9IHRoaXMuc3RyZWFtLnBvcztcbiAgICB0aGlzLml0ZW1zID0gW107XG4gIH1cblxuICBnZXQoaW5kZXgpIHtcbiAgICBpZiAoKGluZGV4IDwgMCkgfHwgKGluZGV4ID49IHRoaXMubGVuZ3RoKSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pdGVtc1tpbmRleF0gPT0gbnVsbCkge1xuICAgICAgY29uc3QgeyBwb3MgfSA9IHRoaXMuc3RyZWFtO1xuICAgICAgdGhpcy5zdHJlYW0ucG9zID0gdGhpcy5iYXNlICsgKHRoaXMudHlwZS5zaXplKG51bGwsIHRoaXMuY3R4KSAqIGluZGV4KTtcbiAgICAgIHRoaXMuaXRlbXNbaW5kZXhdID0gdGhpcy50eXBlLmRlY29kZSh0aGlzLnN0cmVhbSwgdGhpcy5jdHgpO1xuICAgICAgdGhpcy5zdHJlYW0ucG9zID0gcG9zO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLml0ZW1zW2luZGV4XTtcbiAgfVxuXG4gIHRvQXJyYXkoKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gW107XG4gICAgZm9yIChsZXQgaSA9IDAsIGVuZCA9IHRoaXMubGVuZ3RoOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgIHJlc3VsdC5wdXNoKHRoaXMuZ2V0KGkpKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIiwgImltcG9ydCB7QmFzZX0gZnJvbSAnLi9CYXNlLmpzJztcblxuZXhwb3J0IGNsYXNzIEJpdGZpZWxkIGV4dGVuZHMgQmFzZSB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIGZsYWdzID0gW10pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5mbGFncyA9IGZsYWdzO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSkge1xuICAgIGNvbnN0IHZhbCA9IHRoaXMudHlwZS5kZWNvZGUoc3RyZWFtKTtcblxuICAgIGNvbnN0IHJlcyA9IHt9O1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5mbGFncy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgZmxhZyA9IHRoaXMuZmxhZ3NbaV07XG4gICAgICBpZiAoZmxhZyAhPSBudWxsKSB7XG4gICAgICAgIHJlc1tmbGFnXSA9ICEhKHZhbCAmICgxIDw8IGkpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgc2l6ZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlLnNpemUoKTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIGtleXMpIHtcbiAgICBsZXQgdmFsID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZmxhZ3MubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGZsYWcgPSB0aGlzLmZsYWdzW2ldO1xuICAgICAgaWYgKGZsYWcgIT0gbnVsbCkge1xuICAgICAgICBpZiAoa2V5c1tmbGFnXSkgeyB2YWwgfD0gKDEgPDwgaSk7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50eXBlLmVuY29kZShzdHJlYW0sIHZhbCk7XG4gIH1cbn1cbiIsICJpbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5pbXBvcnQge051bWJlciBhcyBOdW1iZXJUfSBmcm9tICcuL051bWJlci5qcyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzLmpzJztcblxuZXhwb3J0IGNsYXNzIEJ1ZmZlclQgZXh0ZW5kcyBCYXNlIHtcbiAgY29uc3RydWN0b3IobGVuZ3RoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmxlbmd0aCA9IGxlbmd0aDtcbiAgfVxuICBcbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgY29uc3QgbGVuZ3RoID0gdXRpbHMucmVzb2x2ZUxlbmd0aCh0aGlzLmxlbmd0aCwgc3RyZWFtLCBwYXJlbnQpO1xuICAgIHJldHVybiBzdHJlYW0ucmVhZEJ1ZmZlcihsZW5ndGgpO1xuICB9XG5cbiAgc2l6ZSh2YWwsIHBhcmVudCkge1xuICAgIGlmICghdmFsKSB7XG4gICAgICByZXR1cm4gdXRpbHMucmVzb2x2ZUxlbmd0aCh0aGlzLmxlbmd0aCwgbnVsbCwgcGFyZW50KTtcbiAgICB9XG5cbiAgICBsZXQgbGVuID0gdmFsLmxlbmd0aDtcbiAgICBpZiAodGhpcy5sZW5ndGggaW5zdGFuY2VvZiBOdW1iZXJUKSB7XG4gICAgICBsZW4gKz0gdGhpcy5sZW5ndGguc2l6ZSgpO1xuICAgIH1cblxuICAgIHJldHVybiBsZW47XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCBidWYsIHBhcmVudCkge1xuICAgIGlmICh0aGlzLmxlbmd0aCBpbnN0YW5jZW9mIE51bWJlclQpIHtcbiAgICAgIHRoaXMubGVuZ3RoLmVuY29kZShzdHJlYW0sIGJ1Zi5sZW5ndGgpO1xuICAgIH1cblxuICAgIHJldHVybiBzdHJlYW0ud3JpdGVCdWZmZXIoYnVmKTtcbiAgfVxufVxuXG5leHBvcnQge0J1ZmZlclQgYXMgQnVmZmVyfTtcbiIsICJpbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5cbmV4cG9ydCBjbGFzcyBPcHRpb25hbCBleHRlbmRzIEJhc2Uge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBjb25kaXRpb24gPSB0cnVlKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuY29uZGl0aW9uID0gY29uZGl0aW9uO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgbGV0IHsgY29uZGl0aW9uIH0gPSB0aGlzO1xuICAgIGlmICh0eXBlb2YgY29uZGl0aW9uID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25kaXRpb24gPSBjb25kaXRpb24uY2FsbChwYXJlbnQsIHBhcmVudCk7XG4gICAgfVxuXG4gICAgaWYgKGNvbmRpdGlvbikge1xuICAgICAgcmV0dXJuIHRoaXMudHlwZS5kZWNvZGUoc3RyZWFtLCBwYXJlbnQpO1xuICAgIH1cbiAgfVxuXG4gIHNpemUodmFsLCBwYXJlbnQpIHtcbiAgICBsZXQgeyBjb25kaXRpb24gfSA9IHRoaXM7XG4gICAgaWYgKHR5cGVvZiBjb25kaXRpb24gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbi5jYWxsKHBhcmVudCwgcGFyZW50KTtcbiAgICB9XG5cbiAgICBpZiAoY29uZGl0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy50eXBlLnNpemUodmFsLCBwYXJlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWwsIHBhcmVudCkge1xuICAgIGxldCB7IGNvbmRpdGlvbiB9ID0gdGhpcztcbiAgICBpZiAodHlwZW9mIGNvbmRpdGlvbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uLmNhbGwocGFyZW50LCBwYXJlbnQpO1xuICAgIH1cblxuICAgIGlmIChjb25kaXRpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLnR5cGUuZW5jb2RlKHN0cmVhbSwgdmFsLCBwYXJlbnQpO1xuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCB7QmFzZX0gZnJvbSAnLi9CYXNlLmpzJztcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMuanMnO1xuXG5leHBvcnQgY2xhc3MgUmVzZXJ2ZWQgZXh0ZW5kcyBCYXNlIHtcbiAgY29uc3RydWN0b3IodHlwZSwgY291bnQgPSAxKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuY291bnQgPSBjb3VudDtcbiAgfVxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICBzdHJlYW0ucG9zICs9IHRoaXMuc2l6ZShudWxsLCBwYXJlbnQpO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBzaXplKGRhdGEsIHBhcmVudCkge1xuICAgIGNvbnN0IGNvdW50ID0gdXRpbHMucmVzb2x2ZUxlbmd0aCh0aGlzLmNvdW50LCBudWxsLCBwYXJlbnQpO1xuICAgIHJldHVybiB0aGlzLnR5cGUuc2l6ZSgpICogY291bnQ7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWwsIHBhcmVudCkge1xuICAgIHJldHVybiBzdHJlYW0uZmlsbCgwLCB0aGlzLnNpemUodmFsLCBwYXJlbnQpKTtcbiAgfVxufVxuIiwgImltcG9ydCB7QmFzZX0gZnJvbSAnLi9CYXNlLmpzJztcbmltcG9ydCB7TnVtYmVyIGFzIE51bWJlclR9IGZyb20gJy4vTnVtYmVyLmpzJztcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMuanMnO1xuXG5jbGFzcyBTdHJpbmdUIGV4dGVuZHMgQmFzZSB7XG4gIGNvbnN0cnVjdG9yKGxlbmd0aCwgZW5jb2RpbmcgPSAnYXNjaWknKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmxlbmd0aCA9IGxlbmd0aDtcbiAgICB0aGlzLmVuY29kaW5nID0gZW5jb2Rpbmc7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICBsZXQgbGVuZ3RoLCBwb3M7XG5cbiAgICBsZXQgeyBlbmNvZGluZyB9ID0gdGhpcztcbiAgICBpZiAodHlwZW9mIGVuY29kaW5nID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBlbmNvZGluZyA9IGVuY29kaW5nLmNhbGwocGFyZW50LCBwYXJlbnQpIHx8ICdhc2NpaSc7XG4gICAgfVxuICAgIGxldCB3aWR0aCA9IGVuY29kaW5nV2lkdGgoZW5jb2RpbmcpO1xuXG4gICAgaWYgKHRoaXMubGVuZ3RoICE9IG51bGwpIHtcbiAgICAgIGxlbmd0aCA9IHV0aWxzLnJlc29sdmVMZW5ndGgodGhpcy5sZW5ndGgsIHN0cmVhbSwgcGFyZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgbGV0IGJ1ZmZlcjtcbiAgICAgICh7YnVmZmVyLCBsZW5ndGgsIHBvc30gPSBzdHJlYW0pO1xuXG4gICAgICB3aGlsZSAoKHBvcyA8IGxlbmd0aCAtIHdpZHRoICsgMSkgJiZcbiAgICAgICAgKGJ1ZmZlcltwb3NdICE9PSAweDAwIHx8XG4gICAgICAgICh3aWR0aCA9PT0gMiAmJiBidWZmZXJbcG9zKzFdICE9PSAweDAwKVxuICAgICAgICApKSB7XG4gICAgICAgIHBvcyArPSB3aWR0aDtcbiAgICAgIH1cblxuICAgICAgbGVuZ3RoID0gcG9zIC0gc3RyZWFtLnBvcztcbiAgICB9XG5cblxuICAgIGNvbnN0IHN0cmluZyA9IHN0cmVhbS5yZWFkU3RyaW5nKGxlbmd0aCwgZW5jb2RpbmcpO1xuXG4gICAgaWYgKCh0aGlzLmxlbmd0aCA9PSBudWxsKSAmJiAoc3RyZWFtLnBvcyA8IHN0cmVhbS5sZW5ndGgpKSB7XG4gICAgICBzdHJlYW0ucG9zKz13aWR0aDtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgc2l6ZSh2YWwsIHBhcmVudCkge1xuICAgIC8vIFVzZSB0aGUgZGVmaW5lZCB2YWx1ZSBpZiBubyB2YWx1ZSB3YXMgZ2l2ZW5cbiAgICBpZiAodmFsID09PSB1bmRlZmluZWQgfHwgdmFsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gdXRpbHMucmVzb2x2ZUxlbmd0aCh0aGlzLmxlbmd0aCwgbnVsbCwgcGFyZW50KTtcbiAgICB9XG5cbiAgICBsZXQgeyBlbmNvZGluZyB9ID0gdGhpcztcbiAgICBpZiAodHlwZW9mIGVuY29kaW5nID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBlbmNvZGluZyA9IGVuY29kaW5nLmNhbGwocGFyZW50ICE9IG51bGwgPyBwYXJlbnQudmFsIDogdW5kZWZpbmVkLCBwYXJlbnQgIT0gbnVsbCA/IHBhcmVudC52YWwgOiB1bmRlZmluZWQpIHx8ICdhc2NpaSc7XG4gICAgfVxuXG4gICAgaWYgKGVuY29kaW5nID09PSAndXRmMTZiZScpIHtcbiAgICAgIGVuY29kaW5nID0gJ3V0ZjE2bGUnO1xuICAgIH1cblxuICAgIGxldCBzaXplID0gYnl0ZUxlbmd0aCh2YWwsIGVuY29kaW5nKTtcbiAgICBpZiAodGhpcy5sZW5ndGggaW5zdGFuY2VvZiBOdW1iZXJUKSB7XG4gICAgICBzaXplICs9IHRoaXMubGVuZ3RoLnNpemUoKTtcbiAgICB9XG5cbiAgICBpZiAoKHRoaXMubGVuZ3RoID09IG51bGwpKSB7XG4gICAgICBzaXplICs9IGVuY29kaW5nV2lkdGgoZW5jb2RpbmcpO1xuICAgIH1cblxuICAgIHJldHVybiBzaXplO1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsLCBwYXJlbnQpIHtcbiAgICBsZXQgeyBlbmNvZGluZyB9ID0gdGhpcztcbiAgICBpZiAodHlwZW9mIGVuY29kaW5nID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBlbmNvZGluZyA9IGVuY29kaW5nLmNhbGwocGFyZW50ICE9IG51bGwgPyBwYXJlbnQudmFsIDogdW5kZWZpbmVkLCBwYXJlbnQgIT0gbnVsbCA/IHBhcmVudC52YWwgOiB1bmRlZmluZWQpIHx8ICdhc2NpaSc7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgdGhpcy5sZW5ndGguZW5jb2RlKHN0cmVhbSwgYnl0ZUxlbmd0aCh2YWwsIGVuY29kaW5nKSk7XG4gICAgfVxuXG4gICAgc3RyZWFtLndyaXRlU3RyaW5nKHZhbCwgZW5jb2RpbmcpO1xuXG4gICAgaWYgKCh0aGlzLmxlbmd0aCA9PSBudWxsKSkge1xuICAgICAgcmV0dXJuIGVuY29kaW5nV2lkdGgoZW5jb2RpbmcpID09IDIgP1xuICAgICAgICBzdHJlYW0ud3JpdGVVSW50MTZMRSgweDAwMDApIDpcbiAgICAgICAgc3RyZWFtLndyaXRlVUludDgoMHgwMCk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGVuY29kaW5nV2lkdGgoZW5jb2RpbmcpIHtcbiAgc3dpdGNoKGVuY29kaW5nKSB7XG4gICAgY2FzZSAnYXNjaWknOlxuICAgIGNhc2UgJ3V0ZjgnOiAvLyB1dGY4IGlzIGEgYnl0ZS1iYXNlZCBlbmNvZGluZyBmb3IgemVyby10ZXJtIHN0cmluZ1xuICAgICAgcmV0dXJuIDE7XG4gICAgY2FzZSAndXRmMTZsZSc6XG4gICAgY2FzZSAndXRmMTYtbGUnOlxuICAgIGNhc2UgJ3V0Zi0xNmJlJzpcbiAgICBjYXNlICd1dGYtMTZsZSc6XG4gICAgY2FzZSAndXRmMTZiZSc6XG4gICAgY2FzZSAndXRmMTYtYmUnOlxuICAgIGNhc2UgJ3VjczInOlxuICAgICAgcmV0dXJuIDI7XG4gICAgZGVmYXVsdDpcbiAgICAgIC8vVE9ETzogYXNzdW1lIGFsbCBvdGhlciBlbmNvZGluZ3MgYXJlIDEtYnl0ZXJzXG4gICAgICAvL3Rocm93IG5ldyBFcnJvcignVW5rbm93biBlbmNvZGluZyAnICsgZW5jb2RpbmcpO1xuICAgICAgcmV0dXJuIDE7XG4gIH1cbn1cblxuZnVuY3Rpb24gYnl0ZUxlbmd0aChzdHJpbmcsIGVuY29kaW5nKSB7XG4gIHN3aXRjaCAoZW5jb2RpbmcpIHtcbiAgICBjYXNlICdhc2NpaSc6XG4gICAgICByZXR1cm4gc3RyaW5nLmxlbmd0aDtcbiAgICBjYXNlICd1dGY4JzpcbiAgICAgIGxldCBsZW4gPSAwO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHJpbmcubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IGMgPSBzdHJpbmcuY2hhckNvZGVBdChpKTtcblxuICAgICAgICBpZiAoYyA+PSAweGQ4MDAgJiYgYyA8PSAweGRiZmYgJiYgaSA8IHN0cmluZy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgbGV0IGMyID0gc3RyaW5nLmNoYXJDb2RlQXQoKytpKTtcbiAgICAgICAgICBpZiAoKGMyICYgMHhmYzAwKSA9PT0gMHhkYzAwKSB7XG4gICAgICAgICAgICBjID0gKChjICYgMHgzZmYpIDw8IDEwKSArIChjMiAmIDB4M2ZmKSArIDB4MTAwMDA7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIHVubWF0Y2hlZCBzdXJyb2dhdGUuXG4gICAgICAgICAgICBpLS07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKChjICYgMHhmZmZmZmY4MCkgPT09IDApIHtcbiAgICAgICAgICBsZW4rKztcbiAgICAgICAgfSBlbHNlIGlmICgoYyAmIDB4ZmZmZmY4MDApID09PSAwKSB7XG4gICAgICAgICAgbGVuICs9IDI7XG4gICAgICAgIH0gZWxzZSBpZiAoKGMgJiAweGZmZmYwMDAwKSA9PT0gMCkge1xuICAgICAgICAgIGxlbiArPSAzO1xuICAgICAgICB9IGVsc2UgaWYgKChjICYgMHhmZmUwMDAwMCkgPT09IDApIHtcbiAgICAgICAgICBsZW4gKz0gNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGxlbjtcbiAgICBjYXNlICd1dGYxNmxlJzpcbiAgICBjYXNlICd1dGYxNi1sZSc6XG4gICAgY2FzZSAndXRmMTZiZSc6XG4gICAgY2FzZSAndXRmMTYtYmUnOlxuICAgIGNhc2UgJ3VjczInOlxuICAgICAgcmV0dXJuIHN0cmluZy5sZW5ndGggKiAyO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gZW5jb2RpbmcgJyArIGVuY29kaW5nKTtcbiAgfVxufVxuXG5leHBvcnQge1N0cmluZ1QgYXMgU3RyaW5nfTtcbiIsICJpbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzLmpzJztcblxuZXhwb3J0IGNsYXNzIFN0cnVjdCBleHRlbmRzIEJhc2Uge1xuICBjb25zdHJ1Y3RvcihmaWVsZHMgPSB7fSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5maWVsZHMgPSBmaWVsZHM7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQsIGxlbmd0aCA9IDApIHtcbiAgICBjb25zdCByZXMgPSB0aGlzLl9zZXR1cChzdHJlYW0sIHBhcmVudCwgbGVuZ3RoKTtcbiAgICB0aGlzLl9wYXJzZUZpZWxkcyhzdHJlYW0sIHJlcywgdGhpcy5maWVsZHMpO1xuXG4gICAgaWYgKHRoaXMucHJvY2VzcyAhPSBudWxsKSB7XG4gICAgICB0aGlzLnByb2Nlc3MuY2FsbChyZXMsIHN0cmVhbSk7XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBfc2V0dXAoc3RyZWFtLCBwYXJlbnQsIGxlbmd0aCkge1xuICAgIGNvbnN0IHJlcyA9IHt9O1xuXG4gICAgLy8gZGVmaW5lIGhpZGRlbiBwcm9wZXJ0aWVzXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMocmVzLCB7XG4gICAgICBwYXJlbnQ6ICAgICAgICAgeyB2YWx1ZTogcGFyZW50IH0sXG4gICAgICBfc3RhcnRPZmZzZXQ6ICAgeyB2YWx1ZTogc3RyZWFtLnBvcyB9LFxuICAgICAgX2N1cnJlbnRPZmZzZXQ6IHsgdmFsdWU6IDAsIHdyaXRhYmxlOiB0cnVlIH0sXG4gICAgICBfbGVuZ3RoOiAgICAgICAgeyB2YWx1ZTogbGVuZ3RoIH1cbiAgICB9KTtcblxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBfcGFyc2VGaWVsZHMoc3RyZWFtLCByZXMsIGZpZWxkcykge1xuICAgIGZvciAobGV0IGtleSBpbiBmaWVsZHMpIHtcbiAgICAgIHZhciB2YWw7XG4gICAgICBjb25zdCB0eXBlID0gZmllbGRzW2tleV07XG4gICAgICBpZiAodHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdmFsID0gdHlwZS5jYWxsKHJlcywgcmVzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhbCA9IHR5cGUuZGVjb2RlKHN0cmVhbSwgcmVzKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHZhbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmICh2YWwgaW5zdGFuY2VvZiB1dGlscy5Qcm9wZXJ0eURlc2NyaXB0b3IpIHtcbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocmVzLCBrZXksIHZhbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzW2tleV0gPSB2YWw7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmVzLl9jdXJyZW50T2Zmc2V0ID0gc3RyZWFtLnBvcyAtIHJlcy5fc3RhcnRPZmZzZXQ7XG4gICAgfVxuXG4gIH1cblxuICBzaXplKHZhbCwgcGFyZW50LCBpbmNsdWRlUG9pbnRlcnMgPSB0cnVlKSB7XG4gICAgaWYgKHZhbCA9PSBudWxsKSB7IHZhbCA9IHt9OyB9XG4gICAgY29uc3QgY3R4ID0ge1xuICAgICAgcGFyZW50LFxuICAgICAgdmFsLFxuICAgICAgcG9pbnRlclNpemU6IDBcbiAgICB9O1xuXG4gICAgaWYgKHRoaXMucHJlRW5jb2RlICE9IG51bGwpIHtcbiAgICAgIHRoaXMucHJlRW5jb2RlLmNhbGwodmFsKTtcbiAgICB9XG5cbiAgICBsZXQgc2l6ZSA9IDA7XG4gICAgZm9yIChsZXQga2V5IGluIHRoaXMuZmllbGRzKSB7XG4gICAgICBjb25zdCB0eXBlID0gdGhpcy5maWVsZHNba2V5XTtcbiAgICAgIGlmICh0eXBlLnNpemUgIT0gbnVsbCkge1xuICAgICAgICBzaXplICs9IHR5cGUuc2l6ZSh2YWxba2V5XSwgY3R4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaW5jbHVkZVBvaW50ZXJzKSB7XG4gICAgICBzaXplICs9IGN0eC5wb2ludGVyU2l6ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2l6ZTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIHZhbCwgcGFyZW50KSB7XG4gICAgbGV0IHR5cGU7XG4gICAgaWYgKHRoaXMucHJlRW5jb2RlICE9IG51bGwpIHtcbiAgICAgIHRoaXMucHJlRW5jb2RlLmNhbGwodmFsLCBzdHJlYW0pO1xuICAgIH1cblxuICAgIGNvbnN0IGN0eCA9IHtcbiAgICAgIHBvaW50ZXJzOiBbXSxcbiAgICAgIHN0YXJ0T2Zmc2V0OiBzdHJlYW0ucG9zLFxuICAgICAgcGFyZW50LFxuICAgICAgdmFsLFxuICAgICAgcG9pbnRlclNpemU6IDBcbiAgICB9O1xuXG4gICAgY3R4LnBvaW50ZXJPZmZzZXQgPSBzdHJlYW0ucG9zICsgdGhpcy5zaXplKHZhbCwgY3R4LCBmYWxzZSk7XG5cbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5maWVsZHMpIHtcbiAgICAgIHR5cGUgPSB0aGlzLmZpZWxkc1trZXldO1xuICAgICAgaWYgKHR5cGUuZW5jb2RlICE9IG51bGwpIHtcbiAgICAgICAgdHlwZS5lbmNvZGUoc3RyZWFtLCB2YWxba2V5XSwgY3R4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgaSA9IDA7XG4gICAgd2hpbGUgKGkgPCBjdHgucG9pbnRlcnMubGVuZ3RoKSB7XG4gICAgICBjb25zdCBwdHIgPSBjdHgucG9pbnRlcnNbaSsrXTtcbiAgICAgIHB0ci50eXBlLmVuY29kZShzdHJlYW0sIHB0ci52YWwsIHB0ci5wYXJlbnQpO1xuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCB7U3RydWN0fSBmcm9tICcuL1N0cnVjdC5qcyc7XG5cbmNvbnN0IGdldFBhdGggPSAob2JqZWN0LCBwYXRoQXJyYXkpID0+IHtcbiAgcmV0dXJuIHBhdGhBcnJheS5yZWR1Y2UoKHByZXZPYmosIGtleSkgPT4gcHJldk9iaiAmJiBwcmV2T2JqW2tleV0sIG9iamVjdCk7XG59O1xuXG5leHBvcnQgY2xhc3MgVmVyc2lvbmVkU3RydWN0IGV4dGVuZHMgU3RydWN0IHtcbiAgY29uc3RydWN0b3IodHlwZSwgdmVyc2lvbnMgPSB7fSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnZlcnNpb25zID0gdmVyc2lvbnM7XG4gICAgaWYgKHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy52ZXJzaW9uUGF0aCA9IHR5cGUuc3BsaXQoJy4nKTtcbiAgICB9XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQsIGxlbmd0aCA9IDApIHtcbiAgICBjb25zdCByZXMgPSB0aGlzLl9zZXR1cChzdHJlYW0sIHBhcmVudCwgbGVuZ3RoKTtcblxuICAgIGlmICh0eXBlb2YgdGhpcy50eXBlID09PSAnc3RyaW5nJykge1xuICAgICAgcmVzLnZlcnNpb24gPSBnZXRQYXRoKHBhcmVudCwgdGhpcy52ZXJzaW9uUGF0aCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlcy52ZXJzaW9uID0gdGhpcy50eXBlLmRlY29kZShzdHJlYW0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZlcnNpb25zLmhlYWRlcikge1xuICAgICAgdGhpcy5fcGFyc2VGaWVsZHMoc3RyZWFtLCByZXMsIHRoaXMudmVyc2lvbnMuaGVhZGVyKTtcbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZHMgPSB0aGlzLnZlcnNpb25zW3Jlcy52ZXJzaW9uXTtcbiAgICBpZiAoKGZpZWxkcyA9PSBudWxsKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHZlcnNpb24gJHtyZXMudmVyc2lvbn1gKTtcbiAgICB9XG5cbiAgICBpZiAoZmllbGRzIGluc3RhbmNlb2YgVmVyc2lvbmVkU3RydWN0KSB7XG4gICAgICByZXR1cm4gZmllbGRzLmRlY29kZShzdHJlYW0sIHBhcmVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5fcGFyc2VGaWVsZHMoc3RyZWFtLCByZXMsIGZpZWxkcyk7XG5cbiAgICBpZiAodGhpcy5wcm9jZXNzICE9IG51bGwpIHtcbiAgICAgIHRoaXMucHJvY2Vzcy5jYWxsKHJlcywgc3RyZWFtKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIHNpemUodmFsLCBwYXJlbnQsIGluY2x1ZGVQb2ludGVycyA9IHRydWUpIHtcbiAgICBsZXQga2V5LCB0eXBlO1xuICAgIGlmICghdmFsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBhIGZpeGVkIHNpemUnKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcmVFbmNvZGUgIT0gbnVsbCkge1xuICAgICAgdGhpcy5wcmVFbmNvZGUuY2FsbCh2YWwpO1xuICAgIH1cblxuICAgIGNvbnN0IGN0eCA9IHtcbiAgICAgIHBhcmVudCxcbiAgICAgIHZhbCxcbiAgICAgIHBvaW50ZXJTaXplOiAwXG4gICAgfTtcblxuICAgIGxldCBzaXplID0gMDtcbiAgICBpZiAodHlwZW9mIHRoaXMudHlwZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHNpemUgKz0gdGhpcy50eXBlLnNpemUodmFsLnZlcnNpb24sIGN0eCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmVyc2lvbnMuaGVhZGVyKSB7XG4gICAgICBmb3IgKGtleSBpbiB0aGlzLnZlcnNpb25zLmhlYWRlcikge1xuICAgICAgICB0eXBlID0gdGhpcy52ZXJzaW9ucy5oZWFkZXJba2V5XTtcbiAgICAgICAgaWYgKHR5cGUuc2l6ZSAhPSBudWxsKSB7XG4gICAgICAgICAgc2l6ZSArPSB0eXBlLnNpemUodmFsW2tleV0sIGN0eCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZHMgPSB0aGlzLnZlcnNpb25zW3ZhbC52ZXJzaW9uXTtcbiAgICBpZiAoKGZpZWxkcyA9PSBudWxsKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHZlcnNpb24gJHt2YWwudmVyc2lvbn1gKTtcbiAgICB9XG5cbiAgICBmb3IgKGtleSBpbiBmaWVsZHMpIHtcbiAgICAgIHR5cGUgPSBmaWVsZHNba2V5XTtcbiAgICAgIGlmICh0eXBlLnNpemUgIT0gbnVsbCkge1xuICAgICAgICBzaXplICs9IHR5cGUuc2l6ZSh2YWxba2V5XSwgY3R4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaW5jbHVkZVBvaW50ZXJzKSB7XG4gICAgICBzaXplICs9IGN0eC5wb2ludGVyU2l6ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2l6ZTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIHZhbCwgcGFyZW50KSB7XG4gICAgbGV0IGtleSwgdHlwZTtcbiAgICBpZiAodGhpcy5wcmVFbmNvZGUgIT0gbnVsbCkge1xuICAgICAgdGhpcy5wcmVFbmNvZGUuY2FsbCh2YWwsIHN0cmVhbSk7XG4gICAgfVxuXG4gICAgY29uc3QgY3R4ID0ge1xuICAgICAgcG9pbnRlcnM6IFtdLFxuICAgICAgc3RhcnRPZmZzZXQ6IHN0cmVhbS5wb3MsXG4gICAgICBwYXJlbnQsXG4gICAgICB2YWwsXG4gICAgICBwb2ludGVyU2l6ZTogMFxuICAgIH07XG5cbiAgICBjdHgucG9pbnRlck9mZnNldCA9IHN0cmVhbS5wb3MgKyB0aGlzLnNpemUodmFsLCBjdHgsIGZhbHNlKTtcblxuICAgIGlmICh0eXBlb2YgdGhpcy50eXBlICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy50eXBlLmVuY29kZShzdHJlYW0sIHZhbC52ZXJzaW9uKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52ZXJzaW9ucy5oZWFkZXIpIHtcbiAgICAgIGZvciAoa2V5IGluIHRoaXMudmVyc2lvbnMuaGVhZGVyKSB7XG4gICAgICAgIHR5cGUgPSB0aGlzLnZlcnNpb25zLmhlYWRlcltrZXldO1xuICAgICAgICBpZiAodHlwZS5lbmNvZGUgIT0gbnVsbCkge1xuICAgICAgICAgIHR5cGUuZW5jb2RlKHN0cmVhbSwgdmFsW2tleV0sIGN0eCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZHMgPSB0aGlzLnZlcnNpb25zW3ZhbC52ZXJzaW9uXTtcbiAgICBmb3IgKGtleSBpbiBmaWVsZHMpIHtcbiAgICAgIHR5cGUgPSBmaWVsZHNba2V5XTtcbiAgICAgIGlmICh0eXBlLmVuY29kZSAhPSBudWxsKSB7XG4gICAgICAgIHR5cGUuZW5jb2RlKHN0cmVhbSwgdmFsW2tleV0sIGN0eCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGkgPSAwO1xuICAgIHdoaWxlIChpIDwgY3R4LnBvaW50ZXJzLmxlbmd0aCkge1xuICAgICAgY29uc3QgcHRyID0gY3R4LnBvaW50ZXJzW2krK107XG4gICAgICBwdHIudHlwZS5lbmNvZGUoc3RyZWFtLCBwdHIudmFsLCBwdHIucGFyZW50KTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzLmpzJztcbmltcG9ydCB7QmFzZX0gZnJvbSAnLi9CYXNlLmpzJztcblxuZXhwb3J0IGNsYXNzIFBvaW50ZXIgZXh0ZW5kcyBCYXNlIHtcbiAgY29uc3RydWN0b3Iob2Zmc2V0VHlwZSwgdHlwZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLm9mZnNldFR5cGUgPSBvZmZzZXRUeXBlO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICBpZiAodGhpcy50eXBlID09PSAndm9pZCcpIHsgdGhpcy50eXBlID0gbnVsbDsgfVxuICAgIGlmICh0aGlzLm9wdGlvbnMudHlwZSA9PSBudWxsKSB7IHRoaXMub3B0aW9ucy50eXBlID0gJ2xvY2FsJzsgfVxuICAgIGlmICh0aGlzLm9wdGlvbnMuYWxsb3dOdWxsID09IG51bGwpIHsgdGhpcy5vcHRpb25zLmFsbG93TnVsbCA9IHRydWU7IH1cbiAgICBpZiAodGhpcy5vcHRpb25zLm51bGxWYWx1ZSA9PSBudWxsKSB7IHRoaXMub3B0aW9ucy5udWxsVmFsdWUgPSAwOyB9XG4gICAgaWYgKHRoaXMub3B0aW9ucy5sYXp5ID09IG51bGwpIHsgdGhpcy5vcHRpb25zLmxhenkgPSBmYWxzZTsgfVxuICAgIGlmICh0aGlzLm9wdGlvbnMucmVsYXRpdmVUbykge1xuICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdGlvbnMucmVsYXRpdmVUbyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlbGF0aXZlVG8gb3B0aW9uIG11c3QgYmUgYSBmdW5jdGlvbicpO1xuICAgICAgfVxuICAgICAgdGhpcy5yZWxhdGl2ZVRvR2V0dGVyID0gb3B0aW9ucy5yZWxhdGl2ZVRvO1xuICAgIH1cbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIGN0eCkge1xuICAgIGNvbnN0IG9mZnNldCA9IHRoaXMub2Zmc2V0VHlwZS5kZWNvZGUoc3RyZWFtLCBjdHgpO1xuXG4gICAgLy8gaGFuZGxlIE5VTEwgcG9pbnRlcnNcbiAgICBpZiAoKG9mZnNldCA9PT0gdGhpcy5vcHRpb25zLm51bGxWYWx1ZSkgJiYgdGhpcy5vcHRpb25zLmFsbG93TnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IHJlbGF0aXZlO1xuICAgIHN3aXRjaCAodGhpcy5vcHRpb25zLnR5cGUpIHtcbiAgICAgIGNhc2UgJ2xvY2FsJzogICAgIHJlbGF0aXZlID0gY3R4Ll9zdGFydE9mZnNldDsgYnJlYWs7XG4gICAgICBjYXNlICdpbW1lZGlhdGUnOiByZWxhdGl2ZSA9IHN0cmVhbS5wb3MgLSB0aGlzLm9mZnNldFR5cGUuc2l6ZSgpOyBicmVhaztcbiAgICAgIGNhc2UgJ3BhcmVudCc6ICAgIHJlbGF0aXZlID0gY3R4LnBhcmVudC5fc3RhcnRPZmZzZXQ7IGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdmFyIGMgPSBjdHg7XG4gICAgICAgIHdoaWxlIChjLnBhcmVudCkge1xuICAgICAgICAgIGMgPSBjLnBhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlbGF0aXZlID0gYy5fc3RhcnRPZmZzZXQgfHwgMDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLnJlbGF0aXZlVG8pIHtcbiAgICAgIHJlbGF0aXZlICs9IHRoaXMucmVsYXRpdmVUb0dldHRlcihjdHgpO1xuICAgIH1cblxuICAgIGNvbnN0IHB0ciA9IG9mZnNldCArIHJlbGF0aXZlO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPSBudWxsKSB7XG4gICAgICBsZXQgdmFsID0gbnVsbDtcbiAgICAgIGNvbnN0IGRlY29kZVZhbHVlID0gKCkgPT4ge1xuICAgICAgICBpZiAodmFsICE9IG51bGwpIHsgcmV0dXJuIHZhbDsgfVxuXG4gICAgICAgIGNvbnN0IHsgcG9zIH0gPSBzdHJlYW07XG4gICAgICAgIHN0cmVhbS5wb3MgPSBwdHI7XG4gICAgICAgIHZhbCA9IHRoaXMudHlwZS5kZWNvZGUoc3RyZWFtLCBjdHgpO1xuICAgICAgICBzdHJlYW0ucG9zID0gcG9zO1xuICAgICAgICByZXR1cm4gdmFsO1xuICAgICAgfTtcblxuICAgICAgLy8gSWYgdGhpcyBpcyBhIGxhenkgcG9pbnRlciwgZGVmaW5lIGEgZ2V0dGVyIHRvIGRlY29kZSBvbmx5IHdoZW4gbmVlZGVkLlxuICAgICAgLy8gVGhpcyBvYnZpb3VzbHkgb25seSB3b3JrcyB3aGVuIHRoZSBwb2ludGVyIGlzIGNvbnRhaW5lZCBieSBhIFN0cnVjdC5cbiAgICAgIGlmICh0aGlzLm9wdGlvbnMubGF6eSkge1xuICAgICAgICByZXR1cm4gbmV3IHV0aWxzLlByb3BlcnR5RGVzY3JpcHRvcih7XG4gICAgICAgICAgZ2V0OiBkZWNvZGVWYWx1ZX0pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZGVjb2RlVmFsdWUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHB0cjtcbiAgICB9XG4gIH1cblxuICBzaXplKHZhbCwgY3R4KSB7XG4gICAgY29uc3QgcGFyZW50ID0gY3R4O1xuICAgIHN3aXRjaCAodGhpcy5vcHRpb25zLnR5cGUpIHtcbiAgICAgIGNhc2UgJ2xvY2FsJzogY2FzZSAnaW1tZWRpYXRlJzpcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdwYXJlbnQnOlxuICAgICAgICBjdHggPSBjdHgucGFyZW50O1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6IC8vIGdsb2JhbFxuICAgICAgICB3aGlsZSAoY3R4LnBhcmVudCkge1xuICAgICAgICAgIGN0eCA9IGN0eC5wYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgeyB0eXBlIH0gPSB0aGlzO1xuICAgIGlmICh0eXBlID09IG51bGwpIHtcbiAgICAgIGlmICghKHZhbCBpbnN0YW5jZW9mIFZvaWRQb2ludGVyKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNdXN0IGJlIGEgVm9pZFBvaW50ZXJcIik7XG4gICAgICB9XG5cbiAgICAgICh7IHR5cGUgfSA9IHZhbCk7XG4gICAgICB2YWwgPSB2YWwudmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbCAmJiBjdHgpIHtcbiAgICAgIC8vIE11c3QgYmUgd3JpdHRlbiBhcyB0d28gc2VwYXJhdGUgbGluZXMgcmF0aGVyIHRoYW4gKz0gaW4gY2FzZSBgdHlwZS5zaXplYCBtdXRhdGVzIGN0eC5wb2ludGVyU2l6ZS5cbiAgICAgIGxldCBzaXplID0gdHlwZS5zaXplKHZhbCwgcGFyZW50KTtcbiAgICAgIGN0eC5wb2ludGVyU2l6ZSArPSBzaXplO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLm9mZnNldFR5cGUuc2l6ZSgpO1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsLCBjdHgpIHtcbiAgICBsZXQgcmVsYXRpdmU7XG4gICAgY29uc3QgcGFyZW50ID0gY3R4O1xuICAgIGlmICgodmFsID09IG51bGwpKSB7XG4gICAgICB0aGlzLm9mZnNldFR5cGUuZW5jb2RlKHN0cmVhbSwgdGhpcy5vcHRpb25zLm51bGxWYWx1ZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoICh0aGlzLm9wdGlvbnMudHlwZSkge1xuICAgICAgY2FzZSAnbG9jYWwnOlxuICAgICAgICByZWxhdGl2ZSA9IGN0eC5zdGFydE9mZnNldDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdpbW1lZGlhdGUnOlxuICAgICAgICByZWxhdGl2ZSA9IHN0cmVhbS5wb3MgKyB0aGlzLm9mZnNldFR5cGUuc2l6ZSh2YWwsIHBhcmVudCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAncGFyZW50JzpcbiAgICAgICAgY3R4ID0gY3R4LnBhcmVudDtcbiAgICAgICAgcmVsYXRpdmUgPSBjdHguc3RhcnRPZmZzZXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDogLy8gZ2xvYmFsXG4gICAgICAgIHJlbGF0aXZlID0gMDtcbiAgICAgICAgd2hpbGUgKGN0eC5wYXJlbnQpIHtcbiAgICAgICAgICBjdHggPSBjdHgucGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5yZWxhdGl2ZVRvKSB7XG4gICAgICByZWxhdGl2ZSArPSB0aGlzLnJlbGF0aXZlVG9HZXR0ZXIocGFyZW50LnZhbCk7XG4gICAgfVxuXG4gICAgdGhpcy5vZmZzZXRUeXBlLmVuY29kZShzdHJlYW0sIGN0eC5wb2ludGVyT2Zmc2V0IC0gcmVsYXRpdmUpO1xuXG4gICAgbGV0IHsgdHlwZSB9ID0gdGhpcztcbiAgICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgICBpZiAoISh2YWwgaW5zdGFuY2VvZiBWb2lkUG9pbnRlcikpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTXVzdCBiZSBhIFZvaWRQb2ludGVyXCIpO1xuICAgICAgfVxuXG4gICAgICAoeyB0eXBlIH0gPSB2YWwpO1xuICAgICAgdmFsID0gdmFsLnZhbHVlO1xuICAgIH1cblxuICAgIGN0eC5wb2ludGVycy5wdXNoKHtcbiAgICAgIHR5cGUsXG4gICAgICB2YWwsXG4gICAgICBwYXJlbnRcbiAgICB9KTtcblxuICAgIHJldHVybiBjdHgucG9pbnRlck9mZnNldCArPSB0eXBlLnNpemUodmFsLCBwYXJlbnQpO1xuICB9XG59XG5cbi8vIEEgcG9pbnRlciB3aG9zZSB0eXBlIGlzIGRldGVybWluZWQgYXQgZGVjb2RlIHRpbWVcbmV4cG9ydCBjbGFzcyBWb2lkUG9pbnRlciB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIHZhbHVlKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cbiIsICJmdW5jdGlvbiBfZGVmaW5lX3Byb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkge1xuICAgIGlmIChrZXkgaW4gb2JqKSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgeyB2YWx1ZTogdmFsdWUsIGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUgfSk7XG4gICAgfSBlbHNlIG9ialtrZXldID0gdmFsdWU7XG5cbiAgICByZXR1cm4gb2JqO1xufVxuZXhwb3J0IHsgX2RlZmluZV9wcm9wZXJ0eSBhcyBfIH07XG4iLCAiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uXG5cblBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZC9vciBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueVxucHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLlxuXG5USEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUyBXSVRIXG5SRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFlcbkFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCxcbklORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTVxuTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1Jcbk9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1JcblBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuLyogZ2xvYmFsIFJlZmxlY3QsIFByb21pc2UsIFN1cHByZXNzZWRFcnJvciwgU3ltYm9sLCBJdGVyYXRvciAqL1xuXG52YXIgZXh0ZW5kU3RhdGljcyA9IGZ1bmN0aW9uKGQsIGIpIHtcbiAgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fFxuICAgICAgKHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24gKGQsIGIpIHsgZC5fX3Byb3RvX18gPSBiOyB9KSB8fFxuICAgICAgZnVuY3Rpb24gKGQsIGIpIHsgZm9yICh2YXIgcCBpbiBiKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIHApKSBkW3BdID0gYltwXTsgfTtcbiAgcmV0dXJuIGV4dGVuZFN0YXRpY3MoZCwgYik7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gX19leHRlbmRzKGQsIGIpIHtcbiAgaWYgKHR5cGVvZiBiICE9PSBcImZ1bmN0aW9uXCIgJiYgYiAhPT0gbnVsbClcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDbGFzcyBleHRlbmRzIHZhbHVlIFwiICsgU3RyaW5nKGIpICsgXCIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbFwiKTtcbiAgZXh0ZW5kU3RhdGljcyhkLCBiKTtcbiAgZnVuY3Rpb24gX18oKSB7IHRoaXMuY29uc3RydWN0b3IgPSBkOyB9XG4gIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTtcbn1cblxuZXhwb3J0IHZhciBfX2Fzc2lnbiA9IGZ1bmN0aW9uKCkge1xuICBfX2Fzc2lnbiA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gX19hc3NpZ24odCkge1xuICAgICAgZm9yICh2YXIgcywgaSA9IDEsIG4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbjsgaSsrKSB7XG4gICAgICAgICAgcyA9IGFyZ3VtZW50c1tpXTtcbiAgICAgICAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkpIHRbcF0gPSBzW3BdO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHQ7XG4gIH1cbiAgcmV0dXJuIF9fYXNzaWduLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3Jlc3QocywgZSkge1xuICB2YXIgdCA9IHt9O1xuICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgIHRbcF0gPSBzW3BdO1xuICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgIH1cbiAgcmV0dXJuIHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2RlY29yYXRlKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKSB7XG4gIHZhciBjID0gYXJndW1lbnRzLmxlbmd0aCwgciA9IGMgPCAzID8gdGFyZ2V0IDogZGVzYyA9PT0gbnVsbCA/IGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KSA6IGRlc2MsIGQ7XG4gIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XG4gIGVsc2UgZm9yICh2YXIgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIGlmIChkID0gZGVjb3JhdG9yc1tpXSkgciA9IChjIDwgMyA/IGQocikgOiBjID4gMyA/IGQodGFyZ2V0LCBrZXksIHIpIDogZCh0YXJnZXQsIGtleSkpIHx8IHI7XG4gIHJldHVybiBjID4gMyAmJiByICYmIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgciksIHI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3BhcmFtKHBhcmFtSW5kZXgsIGRlY29yYXRvcikge1xuICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldCwga2V5KSB7IGRlY29yYXRvcih0YXJnZXQsIGtleSwgcGFyYW1JbmRleCk7IH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fZXNEZWNvcmF0ZShjdG9yLCBkZXNjcmlwdG9ySW4sIGRlY29yYXRvcnMsIGNvbnRleHRJbiwgaW5pdGlhbGl6ZXJzLCBleHRyYUluaXRpYWxpemVycykge1xuICBmdW5jdGlvbiBhY2NlcHQoZikgeyBpZiAoZiAhPT0gdm9pZCAwICYmIHR5cGVvZiBmICE9PSBcImZ1bmN0aW9uXCIpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJGdW5jdGlvbiBleHBlY3RlZFwiKTsgcmV0dXJuIGY7IH1cbiAgdmFyIGtpbmQgPSBjb250ZXh0SW4ua2luZCwga2V5ID0ga2luZCA9PT0gXCJnZXR0ZXJcIiA/IFwiZ2V0XCIgOiBraW5kID09PSBcInNldHRlclwiID8gXCJzZXRcIiA6IFwidmFsdWVcIjtcbiAgdmFyIHRhcmdldCA9ICFkZXNjcmlwdG9ySW4gJiYgY3RvciA/IGNvbnRleHRJbltcInN0YXRpY1wiXSA/IGN0b3IgOiBjdG9yLnByb3RvdHlwZSA6IG51bGw7XG4gIHZhciBkZXNjcmlwdG9yID0gZGVzY3JpcHRvckluIHx8ICh0YXJnZXQgPyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgY29udGV4dEluLm5hbWUpIDoge30pO1xuICB2YXIgXywgZG9uZSA9IGZhbHNlO1xuICBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgdmFyIGNvbnRleHQgPSB7fTtcbiAgICAgIGZvciAodmFyIHAgaW4gY29udGV4dEluKSBjb250ZXh0W3BdID0gcCA9PT0gXCJhY2Nlc3NcIiA/IHt9IDogY29udGV4dEluW3BdO1xuICAgICAgZm9yICh2YXIgcCBpbiBjb250ZXh0SW4uYWNjZXNzKSBjb250ZXh0LmFjY2Vzc1twXSA9IGNvbnRleHRJbi5hY2Nlc3NbcF07XG4gICAgICBjb250ZXh0LmFkZEluaXRpYWxpemVyID0gZnVuY3Rpb24gKGYpIHsgaWYgKGRvbmUpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWRcIik7IGV4dHJhSW5pdGlhbGl6ZXJzLnB1c2goYWNjZXB0KGYgfHwgbnVsbCkpOyB9O1xuICAgICAgdmFyIHJlc3VsdCA9ICgwLCBkZWNvcmF0b3JzW2ldKShraW5kID09PSBcImFjY2Vzc29yXCIgPyB7IGdldDogZGVzY3JpcHRvci5nZXQsIHNldDogZGVzY3JpcHRvci5zZXQgfSA6IGRlc2NyaXB0b3Jba2V5XSwgY29udGV4dCk7XG4gICAgICBpZiAoa2luZCA9PT0gXCJhY2Nlc3NvclwiKSB7XG4gICAgICAgICAgaWYgKHJlc3VsdCA9PT0gdm9pZCAwKSBjb250aW51ZTtcbiAgICAgICAgICBpZiAocmVzdWx0ID09PSBudWxsIHx8IHR5cGVvZiByZXN1bHQgIT09IFwib2JqZWN0XCIpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJPYmplY3QgZXhwZWN0ZWRcIik7XG4gICAgICAgICAgaWYgKF8gPSBhY2NlcHQocmVzdWx0LmdldCkpIGRlc2NyaXB0b3IuZ2V0ID0gXztcbiAgICAgICAgICBpZiAoXyA9IGFjY2VwdChyZXN1bHQuc2V0KSkgZGVzY3JpcHRvci5zZXQgPSBfO1xuICAgICAgICAgIGlmIChfID0gYWNjZXB0KHJlc3VsdC5pbml0KSkgaW5pdGlhbGl6ZXJzLnVuc2hpZnQoXyk7XG4gICAgICB9XG4gICAgICBlbHNlIGlmIChfID0gYWNjZXB0KHJlc3VsdCkpIHtcbiAgICAgICAgICBpZiAoa2luZCA9PT0gXCJmaWVsZFwiKSBpbml0aWFsaXplcnMudW5zaGlmdChfKTtcbiAgICAgICAgICBlbHNlIGRlc2NyaXB0b3Jba2V5XSA9IF87XG4gICAgICB9XG4gIH1cbiAgaWYgKHRhcmdldCkgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgY29udGV4dEluLm5hbWUsIGRlc2NyaXB0b3IpO1xuICBkb25lID0gdHJ1ZTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3J1bkluaXRpYWxpemVycyh0aGlzQXJnLCBpbml0aWFsaXplcnMsIHZhbHVlKSB7XG4gIHZhciB1c2VWYWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPiAyO1xuICBmb3IgKHZhciBpID0gMDsgaSA8IGluaXRpYWxpemVycy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFsdWUgPSB1c2VWYWx1ZSA/IGluaXRpYWxpemVyc1tpXS5jYWxsKHRoaXNBcmcsIHZhbHVlKSA6IGluaXRpYWxpemVyc1tpXS5jYWxsKHRoaXNBcmcpO1xuICB9XG4gIHJldHVybiB1c2VWYWx1ZSA/IHZhbHVlIDogdm9pZCAwO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIF9fcHJvcEtleSh4KSB7XG4gIHJldHVybiB0eXBlb2YgeCA9PT0gXCJzeW1ib2xcIiA/IHggOiBcIlwiLmNvbmNhdCh4KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3NldEZ1bmN0aW9uTmFtZShmLCBuYW1lLCBwcmVmaXgpIHtcbiAgaWYgKHR5cGVvZiBuYW1lID09PSBcInN5bWJvbFwiKSBuYW1lID0gbmFtZS5kZXNjcmlwdGlvbiA/IFwiW1wiLmNvbmNhdChuYW1lLmRlc2NyaXB0aW9uLCBcIl1cIikgOiBcIlwiO1xuICByZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KGYsIFwibmFtZVwiLCB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSwgdmFsdWU6IHByZWZpeCA/IFwiXCIuY29uY2F0KHByZWZpeCwgXCIgXCIsIG5hbWUpIDogbmFtZSB9KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBfX21ldGFkYXRhKG1ldGFkYXRhS2V5LCBtZXRhZGF0YVZhbHVlKSB7XG4gIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YSA9PT0gXCJmdW5jdGlvblwiKSByZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShtZXRhZGF0YUtleSwgbWV0YWRhdGFWYWx1ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2F3YWl0ZXIodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxuICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cbiAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2dlbmVyYXRvcih0aGlzQXJnLCBib2R5KSB7XG4gIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7IGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsgcmV0dXJuIHRbMV07IH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGcgPSBPYmplY3QuY3JlYXRlKCh0eXBlb2YgSXRlcmF0b3IgPT09IFwiZnVuY3Rpb25cIiA/IEl0ZXJhdG9yIDogT2JqZWN0KS5wcm90b3R5cGUpO1xuICByZXR1cm4gZy5uZXh0ID0gdmVyYigwKSwgZ1tcInRocm93XCJdID0gdmVyYigxKSwgZ1tcInJldHVyblwiXSA9IHZlcmIoMiksIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSwgZztcbiAgZnVuY3Rpb24gdmVyYihuKSB7IHJldHVybiBmdW5jdGlvbiAodikgeyByZXR1cm4gc3RlcChbbiwgdl0pOyB9OyB9XG4gIGZ1bmN0aW9uIHN0ZXAob3ApIHtcbiAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLlwiKTtcbiAgICAgIHdoaWxlIChnICYmIChnID0gMCwgb3BbMF0gJiYgKF8gPSAwKSksIF8pIHRyeSB7XG4gICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVtcInJldHVyblwiXSA6IG9wWzBdID8geVtcInRocm93XCJdIHx8ICgodCA9IHlbXCJyZXR1cm5cIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0O1xuICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTtcbiAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7XG4gICAgICAgICAgICAgIGNhc2UgMDogY2FzZSAxOiB0ID0gb3A7IGJyZWFrO1xuICAgICAgICAgICAgICBjYXNlIDQ6IF8ubGFiZWwrKzsgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9O1xuICAgICAgICAgICAgICBjYXNlIDU6IF8ubGFiZWwrKzsgeSA9IG9wWzFdOyBvcCA9IFswXTsgY29udGludWU7XG4gICAgICAgICAgICAgIGNhc2UgNzogb3AgPSBfLm9wcy5wb3AoKTsgXy50cnlzLnBvcCgpOyBjb250aW51ZTtcbiAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7IF8gPSAwOyBjb250aW51ZTsgfVxuICAgICAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCAob3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpKSB7IF8ubGFiZWwgPSBvcFsxXTsgYnJlYWs7IH1cbiAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgeyBfLmxhYmVsID0gdFsxXTsgdCA9IG9wOyBicmVhazsgfVxuICAgICAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsgXy5sYWJlbCA9IHRbMl07IF8ub3BzLnB1c2gob3ApOyBicmVhazsgfVxuICAgICAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOyBjb250aW51ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7XG4gICAgICB9IGNhdGNoIChlKSB7IG9wID0gWzYsIGVdOyB5ID0gMDsgfSBmaW5hbGx5IHsgZiA9IHQgPSAwOyB9XG4gICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTtcbiAgfVxufVxuXG5leHBvcnQgdmFyIF9fY3JlYXRlQmluZGluZyA9IE9iamVjdC5jcmVhdGUgPyAoZnVuY3Rpb24obywgbSwgaywgazIpIHtcbiAgaWYgKGsyID09PSB1bmRlZmluZWQpIGsyID0gaztcbiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG0sIGspO1xuICBpZiAoIWRlc2MgfHwgKFwiZ2V0XCIgaW4gZGVzYyA/ICFtLl9fZXNNb2R1bGUgOiBkZXNjLndyaXRhYmxlIHx8IGRlc2MuY29uZmlndXJhYmxlKSkge1xuICAgICAgZGVzYyA9IHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJuIG1ba107IH0gfTtcbiAgfVxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkobywgazIsIGRlc2MpO1xufSkgOiAoZnVuY3Rpb24obywgbSwgaywgazIpIHtcbiAgaWYgKGsyID09PSB1bmRlZmluZWQpIGsyID0gaztcbiAgb1trMl0gPSBtW2tdO1xufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2V4cG9ydFN0YXIobSwgbykge1xuICBmb3IgKHZhciBwIGluIG0pIGlmIChwICE9PSBcImRlZmF1bHRcIiAmJiAhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8sIHApKSBfX2NyZWF0ZUJpbmRpbmcobywgbSwgcCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3ZhbHVlcyhvKSB7XG4gIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIFN5bWJvbC5pdGVyYXRvciwgbSA9IHMgJiYgb1tzXSwgaSA9IDA7XG4gIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pO1xuICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09IFwibnVtYmVyXCIpIHJldHVybiB7XG4gICAgICBuZXh0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDtcbiAgICAgICAgICByZXR1cm4geyB2YWx1ZTogbyAmJiBvW2krK10sIGRvbmU6ICFvIH07XG4gICAgICB9XG4gIH07XG4gIHRocm93IG5ldyBUeXBlRXJyb3IocyA/IFwiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS5cIiA6IFwiU3ltYm9sLml0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLlwiKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fcmVhZChvLCBuKSB7XG4gIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9bU3ltYm9sLml0ZXJhdG9yXTtcbiAgaWYgKCFtKSByZXR1cm4gbztcbiAgdmFyIGkgPSBtLmNhbGwobyksIHIsIGFyID0gW10sIGU7XG4gIHRyeSB7XG4gICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTtcbiAgfVxuICBjYXRjaCAoZXJyb3IpIHsgZSA9IHsgZXJyb3I6IGVycm9yIH07IH1cbiAgZmluYWxseSB7XG4gICAgICB0cnkge1xuICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpW1wicmV0dXJuXCJdKSkgbS5jYWxsKGkpO1xuICAgICAgfVxuICAgICAgZmluYWxseSB7IGlmIChlKSB0aHJvdyBlLmVycm9yOyB9XG4gIH1cbiAgcmV0dXJuIGFyO1xufVxuXG4vKiogQGRlcHJlY2F0ZWQgKi9cbmV4cG9ydCBmdW5jdGlvbiBfX3NwcmVhZCgpIHtcbiAgZm9yICh2YXIgYXIgPSBbXSwgaSA9IDA7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspXG4gICAgICBhciA9IGFyLmNvbmNhdChfX3JlYWQoYXJndW1lbnRzW2ldKSk7XG4gIHJldHVybiBhcjtcbn1cblxuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgZnVuY3Rpb24gX19zcHJlYWRBcnJheXMoKSB7XG4gIGZvciAodmFyIHMgPSAwLCBpID0gMCwgaWwgPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgaWw7IGkrKykgcyArPSBhcmd1bWVudHNbaV0ubGVuZ3RoO1xuICBmb3IgKHZhciByID0gQXJyYXkocyksIGsgPSAwLCBpID0gMDsgaSA8IGlsOyBpKyspXG4gICAgICBmb3IgKHZhciBhID0gYXJndW1lbnRzW2ldLCBqID0gMCwgamwgPSBhLmxlbmd0aDsgaiA8IGpsOyBqKyssIGsrKylcbiAgICAgICAgICByW2tdID0gYVtqXTtcbiAgcmV0dXJuIHI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3NwcmVhZEFycmF5KHRvLCBmcm9tLCBwYWNrKSB7XG4gIGlmIChwYWNrIHx8IGFyZ3VtZW50cy5sZW5ndGggPT09IDIpIGZvciAodmFyIGkgPSAwLCBsID0gZnJvbS5sZW5ndGgsIGFyOyBpIDwgbDsgaSsrKSB7XG4gICAgICBpZiAoYXIgfHwgIShpIGluIGZyb20pKSB7XG4gICAgICAgICAgaWYgKCFhcikgYXIgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChmcm9tLCAwLCBpKTtcbiAgICAgICAgICBhcltpXSA9IGZyb21baV07XG4gICAgICB9XG4gIH1cbiAgcmV0dXJuIHRvLmNvbmNhdChhciB8fCBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChmcm9tKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2F3YWl0KHYpIHtcbiAgcmV0dXJuIHRoaXMgaW5zdGFuY2VvZiBfX2F3YWl0ID8gKHRoaXMudiA9IHYsIHRoaXMpIDogbmV3IF9fYXdhaXQodik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jR2VuZXJhdG9yKHRoaXNBcmcsIF9hcmd1bWVudHMsIGdlbmVyYXRvcikge1xuICBpZiAoIVN5bWJvbC5hc3luY0l0ZXJhdG9yKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuXCIpO1xuICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdO1xuICByZXR1cm4gaSA9IE9iamVjdC5jcmVhdGUoKHR5cGVvZiBBc3luY0l0ZXJhdG9yID09PSBcImZ1bmN0aW9uXCIgPyBBc3luY0l0ZXJhdG9yIDogT2JqZWN0KS5wcm90b3R5cGUpLCB2ZXJiKFwibmV4dFwiKSwgdmVyYihcInRocm93XCIpLCB2ZXJiKFwicmV0dXJuXCIsIGF3YWl0UmV0dXJuKSwgaVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzOyB9LCBpO1xuICBmdW5jdGlvbiBhd2FpdFJldHVybihmKSB7IHJldHVybiBmdW5jdGlvbiAodikgeyByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZiwgcmVqZWN0KTsgfTsgfVxuICBmdW5jdGlvbiB2ZXJiKG4sIGYpIHsgaWYgKGdbbl0pIHsgaVtuXSA9IGZ1bmN0aW9uICh2KSB7IHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAoYSwgYikgeyBxLnB1c2goW24sIHYsIGEsIGJdKSA+IDEgfHwgcmVzdW1lKG4sIHYpOyB9KTsgfTsgaWYgKGYpIGlbbl0gPSBmKGlbbl0pOyB9IH1cbiAgZnVuY3Rpb24gcmVzdW1lKG4sIHYpIHsgdHJ5IHsgc3RlcChnW25dKHYpKTsgfSBjYXRjaCAoZSkgeyBzZXR0bGUocVswXVszXSwgZSk7IH0gfVxuICBmdW5jdGlvbiBzdGVwKHIpIHsgci52YWx1ZSBpbnN0YW5jZW9mIF9fYXdhaXQgPyBQcm9taXNlLnJlc29sdmUoci52YWx1ZS52KS50aGVuKGZ1bGZpbGwsIHJlamVjdCkgOiBzZXR0bGUocVswXVsyXSwgcik7IH1cbiAgZnVuY3Rpb24gZnVsZmlsbCh2YWx1ZSkgeyByZXN1bWUoXCJuZXh0XCIsIHZhbHVlKTsgfVxuICBmdW5jdGlvbiByZWplY3QodmFsdWUpIHsgcmVzdW1lKFwidGhyb3dcIiwgdmFsdWUpOyB9XG4gIGZ1bmN0aW9uIHNldHRsZShmLCB2KSB7IGlmIChmKHYpLCBxLnNoaWZ0KCksIHEubGVuZ3RoKSByZXN1bWUocVswXVswXSwgcVswXVsxXSk7IH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fYXN5bmNEZWxlZ2F0b3Iobykge1xuICB2YXIgaSwgcDtcbiAgcmV0dXJuIGkgPSB7fSwgdmVyYihcIm5leHRcIiksIHZlcmIoXCJ0aHJvd1wiLCBmdW5jdGlvbiAoZSkgeyB0aHJvdyBlOyB9KSwgdmVyYihcInJldHVyblwiKSwgaVtTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfSwgaTtcbiAgZnVuY3Rpb24gdmVyYihuLCBmKSB7IGlbbl0gPSBvW25dID8gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIChwID0gIXApID8geyB2YWx1ZTogX19hd2FpdChvW25dKHYpKSwgZG9uZTogZmFsc2UgfSA6IGYgPyBmKHYpIDogdjsgfSA6IGY7IH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fYXN5bmNWYWx1ZXMobykge1xuICBpZiAoIVN5bWJvbC5hc3luY0l0ZXJhdG9yKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuXCIpO1xuICB2YXIgbSA9IG9bU3ltYm9sLmFzeW5jSXRlcmF0b3JdLCBpO1xuICByZXR1cm4gbSA/IG0uY2FsbChvKSA6IChvID0gdHlwZW9mIF9fdmFsdWVzID09PSBcImZ1bmN0aW9uXCIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpLCBpID0ge30sIHZlcmIoXCJuZXh0XCIpLCB2ZXJiKFwidGhyb3dcIiksIHZlcmIoXCJyZXR1cm5cIiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfSwgaSk7XG4gIGZ1bmN0aW9uIHZlcmIobikgeyBpW25dID0gb1tuXSAmJiBmdW5jdGlvbiAodikgeyByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkgeyB2ID0gb1tuXSh2KSwgc2V0dGxlKHJlc29sdmUsIHJlamVjdCwgdi5kb25lLCB2LnZhbHVlKTsgfSk7IH07IH1cbiAgZnVuY3Rpb24gc2V0dGxlKHJlc29sdmUsIHJlamVjdCwgZCwgdikgeyBQcm9taXNlLnJlc29sdmUodikudGhlbihmdW5jdGlvbih2KSB7IHJlc29sdmUoeyB2YWx1ZTogdiwgZG9uZTogZCB9KTsgfSwgcmVqZWN0KTsgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gX19tYWtlVGVtcGxhdGVPYmplY3QoY29va2VkLCByYXcpIHtcbiAgaWYgKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSkgeyBPYmplY3QuZGVmaW5lUHJvcGVydHkoY29va2VkLCBcInJhd1wiLCB7IHZhbHVlOiByYXcgfSk7IH0gZWxzZSB7IGNvb2tlZC5yYXcgPSByYXc7IH1cbiAgcmV0dXJuIGNvb2tlZDtcbn07XG5cbnZhciBfX3NldE1vZHVsZURlZmF1bHQgPSBPYmplY3QuY3JlYXRlID8gKGZ1bmN0aW9uKG8sIHYpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIFwiZGVmYXVsdFwiLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2IH0pO1xufSkgOiBmdW5jdGlvbihvLCB2KSB7XG4gIG9bXCJkZWZhdWx0XCJdID0gdjtcbn07XG5cbnZhciBvd25LZXlzID0gZnVuY3Rpb24obykge1xuICBvd25LZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24gKG8pIHtcbiAgICB2YXIgYXIgPSBbXTtcbiAgICBmb3IgKHZhciBrIGluIG8pIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobywgaykpIGFyW2FyLmxlbmd0aF0gPSBrO1xuICAgIHJldHVybiBhcjtcbiAgfTtcbiAgcmV0dXJuIG93bktleXMobyk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gX19pbXBvcnRTdGFyKG1vZCkge1xuICBpZiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSByZXR1cm4gbW9kO1xuICB2YXIgcmVzdWx0ID0ge307XG4gIGlmIChtb2QgIT0gbnVsbCkgZm9yICh2YXIgayA9IG93bktleXMobW9kKSwgaSA9IDA7IGkgPCBrLmxlbmd0aDsgaSsrKSBpZiAoa1tpXSAhPT0gXCJkZWZhdWx0XCIpIF9fY3JlYXRlQmluZGluZyhyZXN1bHQsIG1vZCwga1tpXSk7XG4gIF9fc2V0TW9kdWxlRGVmYXVsdChyZXN1bHQsIG1vZCk7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2ltcG9ydERlZmF1bHQobW9kKSB7XG4gIHJldHVybiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSA/IG1vZCA6IHsgZGVmYXVsdDogbW9kIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2NsYXNzUHJpdmF0ZUZpZWxkR2V0KHJlY2VpdmVyLCBzdGF0ZSwga2luZCwgZikge1xuICBpZiAoa2luZCA9PT0gXCJhXCIgJiYgIWYpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJQcml2YXRlIGFjY2Vzc29yIHdhcyBkZWZpbmVkIHdpdGhvdXQgYSBnZXR0ZXJcIik7XG4gIGlmICh0eXBlb2Ygc3RhdGUgPT09IFwiZnVuY3Rpb25cIiA/IHJlY2VpdmVyICE9PSBzdGF0ZSB8fCAhZiA6ICFzdGF0ZS5oYXMocmVjZWl2ZXIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IHJlYWQgcHJpdmF0ZSBtZW1iZXIgZnJvbSBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0XCIpO1xuICByZXR1cm4ga2luZCA9PT0gXCJtXCIgPyBmIDoga2luZCA9PT0gXCJhXCIgPyBmLmNhbGwocmVjZWl2ZXIpIDogZiA/IGYudmFsdWUgOiBzdGF0ZS5nZXQocmVjZWl2ZXIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19jbGFzc1ByaXZhdGVGaWVsZFNldChyZWNlaXZlciwgc3RhdGUsIHZhbHVlLCBraW5kLCBmKSB7XG4gIGlmIChraW5kID09PSBcIm1cIikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlByaXZhdGUgbWV0aG9kIGlzIG5vdCB3cml0YWJsZVwiKTtcbiAgaWYgKGtpbmQgPT09IFwiYVwiICYmICFmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiUHJpdmF0ZSBhY2Nlc3NvciB3YXMgZGVmaW5lZCB3aXRob3V0IGEgc2V0dGVyXCIpO1xuICBpZiAodHlwZW9mIHN0YXRlID09PSBcImZ1bmN0aW9uXCIgPyByZWNlaXZlciAhPT0gc3RhdGUgfHwgIWYgOiAhc3RhdGUuaGFzKHJlY2VpdmVyKSkgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCB3cml0ZSBwcml2YXRlIG1lbWJlciB0byBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0XCIpO1xuICByZXR1cm4gKGtpbmQgPT09IFwiYVwiID8gZi5jYWxsKHJlY2VpdmVyLCB2YWx1ZSkgOiBmID8gZi52YWx1ZSA9IHZhbHVlIDogc3RhdGUuc2V0KHJlY2VpdmVyLCB2YWx1ZSkpLCB2YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fY2xhc3NQcml2YXRlRmllbGRJbihzdGF0ZSwgcmVjZWl2ZXIpIHtcbiAgaWYgKHJlY2VpdmVyID09PSBudWxsIHx8ICh0eXBlb2YgcmVjZWl2ZXIgIT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIHJlY2VpdmVyICE9PSBcImZ1bmN0aW9uXCIpKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IHVzZSAnaW4nIG9wZXJhdG9yIG9uIG5vbi1vYmplY3RcIik7XG4gIHJldHVybiB0eXBlb2Ygc3RhdGUgPT09IFwiZnVuY3Rpb25cIiA/IHJlY2VpdmVyID09PSBzdGF0ZSA6IHN0YXRlLmhhcyhyZWNlaXZlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2FkZERpc3Bvc2FibGVSZXNvdXJjZShlbnYsIHZhbHVlLCBhc3luYykge1xuICBpZiAodmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHZvaWQgMCkge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIHZhbHVlICE9PSBcImZ1bmN0aW9uXCIpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJPYmplY3QgZXhwZWN0ZWQuXCIpO1xuICAgIHZhciBkaXNwb3NlLCBpbm5lcjtcbiAgICBpZiAoYXN5bmMpIHtcbiAgICAgIGlmICghU3ltYm9sLmFzeW5jRGlzcG9zZSkgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN5bWJvbC5hc3luY0Rpc3Bvc2UgaXMgbm90IGRlZmluZWQuXCIpO1xuICAgICAgZGlzcG9zZSA9IHZhbHVlW1N5bWJvbC5hc3luY0Rpc3Bvc2VdO1xuICAgIH1cbiAgICBpZiAoZGlzcG9zZSA9PT0gdm9pZCAwKSB7XG4gICAgICBpZiAoIVN5bWJvbC5kaXNwb3NlKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3ltYm9sLmRpc3Bvc2UgaXMgbm90IGRlZmluZWQuXCIpO1xuICAgICAgZGlzcG9zZSA9IHZhbHVlW1N5bWJvbC5kaXNwb3NlXTtcbiAgICAgIGlmIChhc3luYykgaW5uZXIgPSBkaXNwb3NlO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIGRpc3Bvc2UgIT09IFwiZnVuY3Rpb25cIikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIk9iamVjdCBub3QgZGlzcG9zYWJsZS5cIik7XG4gICAgaWYgKGlubmVyKSBkaXNwb3NlID0gZnVuY3Rpb24oKSB7IHRyeSB7IGlubmVyLmNhbGwodGhpcyk7IH0gY2F0Y2ggKGUpIHsgcmV0dXJuIFByb21pc2UucmVqZWN0KGUpOyB9IH07XG4gICAgZW52LnN0YWNrLnB1c2goeyB2YWx1ZTogdmFsdWUsIGRpc3Bvc2U6IGRpc3Bvc2UsIGFzeW5jOiBhc3luYyB9KTtcbiAgfVxuICBlbHNlIGlmIChhc3luYykge1xuICAgIGVudi5zdGFjay5wdXNoKHsgYXN5bmM6IHRydWUgfSk7XG4gIH1cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG52YXIgX1N1cHByZXNzZWRFcnJvciA9IHR5cGVvZiBTdXBwcmVzc2VkRXJyb3IgPT09IFwiZnVuY3Rpb25cIiA/IFN1cHByZXNzZWRFcnJvciA6IGZ1bmN0aW9uIChlcnJvciwgc3VwcHJlc3NlZCwgbWVzc2FnZSkge1xuICB2YXIgZSA9IG5ldyBFcnJvcihtZXNzYWdlKTtcbiAgcmV0dXJuIGUubmFtZSA9IFwiU3VwcHJlc3NlZEVycm9yXCIsIGUuZXJyb3IgPSBlcnJvciwgZS5zdXBwcmVzc2VkID0gc3VwcHJlc3NlZCwgZTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2Rpc3Bvc2VSZXNvdXJjZXMoZW52KSB7XG4gIGZ1bmN0aW9uIGZhaWwoZSkge1xuICAgIGVudi5lcnJvciA9IGVudi5oYXNFcnJvciA/IG5ldyBfU3VwcHJlc3NlZEVycm9yKGUsIGVudi5lcnJvciwgXCJBbiBlcnJvciB3YXMgc3VwcHJlc3NlZCBkdXJpbmcgZGlzcG9zYWwuXCIpIDogZTtcbiAgICBlbnYuaGFzRXJyb3IgPSB0cnVlO1xuICB9XG4gIHZhciByLCBzID0gMDtcbiAgZnVuY3Rpb24gbmV4dCgpIHtcbiAgICB3aGlsZSAociA9IGVudi5zdGFjay5wb3AoKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgaWYgKCFyLmFzeW5jICYmIHMgPT09IDEpIHJldHVybiBzID0gMCwgZW52LnN0YWNrLnB1c2gociksIFByb21pc2UucmVzb2x2ZSgpLnRoZW4obmV4dCk7XG4gICAgICAgIGlmIChyLmRpc3Bvc2UpIHtcbiAgICAgICAgICB2YXIgcmVzdWx0ID0gci5kaXNwb3NlLmNhbGwoci52YWx1ZSk7XG4gICAgICAgICAgaWYgKHIuYXN5bmMpIHJldHVybiBzIHw9IDIsIFByb21pc2UucmVzb2x2ZShyZXN1bHQpLnRoZW4obmV4dCwgZnVuY3Rpb24oZSkgeyBmYWlsKGUpOyByZXR1cm4gbmV4dCgpOyB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHMgfD0gMTtcbiAgICAgIH1cbiAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgIGZhaWwoZSk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChzID09PSAxKSByZXR1cm4gZW52Lmhhc0Vycm9yID8gUHJvbWlzZS5yZWplY3QoZW52LmVycm9yKSA6IFByb21pc2UucmVzb2x2ZSgpO1xuICAgIGlmIChlbnYuaGFzRXJyb3IpIHRocm93IGVudi5lcnJvcjtcbiAgfVxuICByZXR1cm4gbmV4dCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19yZXdyaXRlUmVsYXRpdmVJbXBvcnRFeHRlbnNpb24ocGF0aCwgcHJlc2VydmVKc3gpIHtcbiAgaWYgKHR5cGVvZiBwYXRoID09PSBcInN0cmluZ1wiICYmIC9eXFwuXFwuP1xcLy8udGVzdChwYXRoKSkge1xuICAgICAgcmV0dXJuIHBhdGgucmVwbGFjZSgvXFwuKHRzeCkkfCgoPzpcXC5kKT8pKCg/OlxcLlteLi9dKz8pPylcXC4oW2NtXT8pdHMkL2ksIGZ1bmN0aW9uIChtLCB0c3gsIGQsIGV4dCwgY20pIHtcbiAgICAgICAgICByZXR1cm4gdHN4ID8gcHJlc2VydmVKc3ggPyBcIi5qc3hcIiA6IFwiLmpzXCIgOiBkICYmICghZXh0IHx8ICFjbSkgPyBtIDogKGQgKyBleHQgKyBcIi5cIiArIGNtLnRvTG93ZXJDYXNlKCkgKyBcImpzXCIpO1xuICAgICAgfSk7XG4gIH1cbiAgcmV0dXJuIHBhdGg7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgX19leHRlbmRzLFxuICBfX2Fzc2lnbixcbiAgX19yZXN0LFxuICBfX2RlY29yYXRlLFxuICBfX3BhcmFtLFxuICBfX2VzRGVjb3JhdGUsXG4gIF9fcnVuSW5pdGlhbGl6ZXJzLFxuICBfX3Byb3BLZXksXG4gIF9fc2V0RnVuY3Rpb25OYW1lLFxuICBfX21ldGFkYXRhLFxuICBfX2F3YWl0ZXIsXG4gIF9fZ2VuZXJhdG9yLFxuICBfX2NyZWF0ZUJpbmRpbmcsXG4gIF9fZXhwb3J0U3RhcixcbiAgX192YWx1ZXMsXG4gIF9fcmVhZCxcbiAgX19zcHJlYWQsXG4gIF9fc3ByZWFkQXJyYXlzLFxuICBfX3NwcmVhZEFycmF5LFxuICBfX2F3YWl0LFxuICBfX2FzeW5jR2VuZXJhdG9yLFxuICBfX2FzeW5jRGVsZWdhdG9yLFxuICBfX2FzeW5jVmFsdWVzLFxuICBfX21ha2VUZW1wbGF0ZU9iamVjdCxcbiAgX19pbXBvcnRTdGFyLFxuICBfX2ltcG9ydERlZmF1bHQsXG4gIF9fY2xhc3NQcml2YXRlRmllbGRHZXQsXG4gIF9fY2xhc3NQcml2YXRlRmllbGRTZXQsXG4gIF9fY2xhc3NQcml2YXRlRmllbGRJbixcbiAgX19hZGREaXNwb3NhYmxlUmVzb3VyY2UsXG4gIF9fZGlzcG9zZVJlc291cmNlcyxcbiAgX19yZXdyaXRlUmVsYXRpdmVJbXBvcnRFeHRlbnNpb24sXG59O1xuIiwgImltcG9ydCBiYXNlNjQgZnJvbSAnYmFzZTY0LWpzJztcbmltcG9ydCBVbmljb2RlVHJpZSBmcm9tICd1bmljb2RlLXRyaWUnO1xuaW1wb3J0IGRhdGEgZnJvbSAnLi9kYXRhLmpzb24nO1xuXG5jb25zdCB0cmllID0gbmV3IFVuaWNvZGVUcmllKGJhc2U2NC50b0J5dGVBcnJheShyZXF1aXJlKCdmcycpLnJlYWRGaWxlU3luYyhfX2Rpcm5hbWUgKyAnL2RhdGEudHJpZScsICdiYXNlNjQnKSkpO1xuXG5jb25zdCBsb2cyID0gTWF0aC5sb2cyIHx8IChuID0+IE1hdGgubG9nKG4pIC8gTWF0aC5MTjIpO1xuY29uc3QgYml0cyA9IChuKSA9PiAoKGxvZzIobikgKyAxKSB8IDApO1xuXG4vLyBjb21wdXRlIHRoZSBudW1iZXIgb2YgYml0cyBzdG9yZWQgZm9yIGVhY2ggZmllbGRcbmNvbnN0IENBVEVHT1JZX0JJVFMgPSBiaXRzKGRhdGEuY2F0ZWdvcmllcy5sZW5ndGggLSAxKTtcbmNvbnN0IENPTUJJTklOR19CSVRTID0gYml0cyhkYXRhLmNvbWJpbmluZ0NsYXNzZXMubGVuZ3RoIC0gMSk7XG5jb25zdCBTQ1JJUFRfQklUUyA9IGJpdHMoZGF0YS5zY3JpcHRzLmxlbmd0aCAtIDEpO1xuY29uc3QgRUFXX0JJVFMgPSBiaXRzKGRhdGEuZWF3Lmxlbmd0aCAtIDEpO1xuY29uc3QgTlVNQkVSX0JJVFMgPSAxMDtcblxuLy8gY29tcHV0ZSBzaGlmdCBhbmQgbWFzayB2YWx1ZXMgZm9yIGVhY2ggZmllbGRcbmNvbnN0IENBVEVHT1JZX1NISUZUID0gQ09NQklOSU5HX0JJVFMgKyBTQ1JJUFRfQklUUyArIEVBV19CSVRTICsgTlVNQkVSX0JJVFM7XG5jb25zdCBDT01CSU5JTkdfU0hJRlQgPSBTQ1JJUFRfQklUUyArIEVBV19CSVRTICsgTlVNQkVSX0JJVFM7XG5jb25zdCBTQ1JJUFRfU0hJRlQgPSBFQVdfQklUUyArIE5VTUJFUl9CSVRTO1xuY29uc3QgRUFXX1NISUZUID0gTlVNQkVSX0JJVFM7XG5jb25zdCBDQVRFR09SWV9NQVNLID0gKDEgPDwgQ0FURUdPUllfQklUUykgLSAxO1xuY29uc3QgQ09NQklOSU5HX01BU0sgPSAoMSA8PCBDT01CSU5JTkdfQklUUykgLSAxO1xuY29uc3QgU0NSSVBUX01BU0sgPSAoMSA8PCBTQ1JJUFRfQklUUykgLSAxO1xuY29uc3QgRUFXX01BU0sgPSAoMSA8PCBFQVdfQklUUykgLSAxO1xuY29uc3QgTlVNQkVSX01BU0sgPSAoMSA8PCBOVU1CRVJfQklUUykgLSAxO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KSB7XG4gIGNvbnN0IHZhbCA9IHRyaWUuZ2V0KGNvZGVQb2ludCk7XG4gIHJldHVybiBkYXRhLmNhdGVnb3JpZXNbKHZhbCA+PiBDQVRFR09SWV9TSElGVCkgJiBDQVRFR09SWV9NQVNLXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbWJpbmluZ0NsYXNzKGNvZGVQb2ludCkge1xuICBjb25zdCB2YWwgPSB0cmllLmdldChjb2RlUG9pbnQpO1xuICByZXR1cm4gZGF0YS5jb21iaW5pbmdDbGFzc2VzWyh2YWwgPj4gQ09NQklOSU5HX1NISUZUKSAmIENPTUJJTklOR19NQVNLXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNjcmlwdChjb2RlUG9pbnQpIHtcbiAgY29uc3QgdmFsID0gdHJpZS5nZXQoY29kZVBvaW50KTtcbiAgcmV0dXJuIGRhdGEuc2NyaXB0c1sodmFsID4+IFNDUklQVF9TSElGVCkgJiBTQ1JJUFRfTUFTS107XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFYXN0QXNpYW5XaWR0aChjb2RlUG9pbnQpIHtcbiAgY29uc3QgdmFsID0gdHJpZS5nZXQoY29kZVBvaW50KTtcbiAgcmV0dXJuIGRhdGEuZWF3Wyh2YWwgPj4gRUFXX1NISUZUKSAmIEVBV19NQVNLXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE51bWVyaWNWYWx1ZShjb2RlUG9pbnQpIHtcbiAgbGV0IHZhbCA9IHRyaWUuZ2V0KGNvZGVQb2ludCk7XG4gIGxldCBudW0gPSB2YWwgJiBOVU1CRVJfTUFTSztcblxuICBpZiAobnVtID09PSAwKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH0gZWxzZSBpZiAobnVtIDw9IDUwKSB7XG4gICAgcmV0dXJuIG51bSAtIDE7XG4gIH0gZWxzZSBpZiAobnVtIDwgMHgxZTApIHtcbiAgICBjb25zdCBudW1lcmF0b3IgPSAobnVtID4+IDQpIC0gMTI7XG4gICAgY29uc3QgZGVub21pbmF0b3IgPSAobnVtICYgMHhmKSArIDE7XG4gICAgcmV0dXJuIG51bWVyYXRvciAvIGRlbm9taW5hdG9yO1xuICB9IGVsc2UgaWYgKG51bSA8IDB4MzAwKSB7XG4gICAgdmFsID0gKG51bSA+PiA1KSAtIDE0O1xuICAgIGxldCBleHAgPSAobnVtICYgMHgxZikgKyAyO1xuXG4gICAgd2hpbGUgKGV4cCA+IDApIHtcbiAgICAgIHZhbCAqPSAxMDtcbiAgICAgIGV4cC0tO1xuICAgIH1cbiAgICByZXR1cm4gdmFsO1xuICB9IGVsc2Uge1xuICAgIHZhbCA9IChudW0gPj4gMikgLSAweGJmO1xuICAgIGxldCBleHAgPSAobnVtICYgMykgKyAxO1xuICAgIHdoaWxlIChleHAgPiAwKSB7XG4gICAgICB2YWwgKj0gNjA7XG4gICAgICBleHAtLTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbDtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBbHBoYWJldGljKGNvZGVQb2ludCkge1xuICBjb25zdCBjYXRlZ29yeSA9IGdldENhdGVnb3J5KGNvZGVQb2ludCk7XG4gIHJldHVybiAoXG4gICAgY2F0ZWdvcnkgPT09ICdMdScgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ0xsJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTHQnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdMbScgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ0xvJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTmwnXG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRGlnaXQoY29kZVBvaW50KSB7XG4gIHJldHVybiBnZXRDYXRlZ29yeShjb2RlUG9pbnQpID09PSAnTmQnXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1B1bmN0dWF0aW9uKGNvZGVQb2ludCkge1xuICBjb25zdCBjYXRlZ29yeSA9IGdldENhdGVnb3J5KGNvZGVQb2ludCk7XG4gIHJldHVybiAoXG4gICAgY2F0ZWdvcnkgPT09ICdQYycgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ1BkJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnUGUnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdQZicgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ1BpJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnUG8nIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdQcydcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTG93ZXJDYXNlKGNvZGVQb2ludCkge1xuICByZXR1cm4gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KSA9PT0gJ0xsJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVXBwZXJDYXNlKGNvZGVQb2ludCkge1xuICByZXR1cm4gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KSA9PT0gJ0x1J1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUaXRsZUNhc2UoY29kZVBvaW50KSB7XG4gIHJldHVybiBnZXRDYXRlZ29yeShjb2RlUG9pbnQpID09PSAnTHQnXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1doaXRlU3BhY2UoY29kZVBvaW50KSB7XG4gIGNvbnN0IGNhdGVnb3J5ID0gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KTtcbiAgcmV0dXJuIChcbiAgICBjYXRlZ29yeSA9PT0gJ1pzJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnWmwnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdacCdcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQmFzZUZvcm0oY29kZVBvaW50KSB7XG4gIGNvbnN0IGNhdGVnb3J5ID0gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KTtcbiAgcmV0dXJuIChcbiAgICBjYXRlZ29yeSA9PT0gJ05kJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTm8nIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdObCcgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ0x1JyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTGwnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdMdCcgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ0xtJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTG8nIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdNZScgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ01jJ1xuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc01hcmsoY29kZVBvaW50KSB7XG4gIGNvbnN0IGNhdGVnb3J5ID0gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KTtcbiAgcmV0dXJuIChcbiAgICBjYXRlZ29yeSA9PT0gJ01uJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTWUnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdNYydcbiAgKTtcbn1cblxuLy8gQmFja3dhcmRzIGNvbXBhdGliaWxpdHkuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGdldENhdGVnb3J5LFxuICBnZXRDb21iaW5pbmdDbGFzcyxcbiAgZ2V0U2NyaXB0LFxuICBnZXRFYXN0QXNpYW5XaWR0aCxcbiAgZ2V0TnVtZXJpY1ZhbHVlLFxuICBpc0FscGhhYmV0aWMsXG4gIGlzRGlnaXQsXG4gIGlzUHVuY3R1YXRpb24sXG4gIGlzTG93ZXJDYXNlLFxuICBpc1VwcGVyQ2FzZSxcbiAgaXNUaXRsZUNhc2UsXG4gIGlzV2hpdGVTcGFjZSxcbiAgaXNCYXNlRm9ybSxcbiAgaXNNYXJrXG59O1xuIiwgIntcImNhdGVnb3JpZXNcIjpbXCJDY1wiLFwiWnNcIixcIlBvXCIsXCJTY1wiLFwiUHNcIixcIlBlXCIsXCJTbVwiLFwiUGRcIixcIk5kXCIsXCJMdVwiLFwiU2tcIixcIlBjXCIsXCJMbFwiLFwiU29cIixcIkxvXCIsXCJQaVwiLFwiQ2ZcIixcIk5vXCIsXCJQZlwiLFwiTHRcIixcIkxtXCIsXCJNblwiLFwiTWVcIixcIk1jXCIsXCJObFwiLFwiWmxcIixcIlpwXCIsXCJDc1wiLFwiQ29cIl0sXCJjb21iaW5pbmdDbGFzc2VzXCI6W1wiTm90X1Jlb3JkZXJlZFwiLFwiQWJvdmVcIixcIkFib3ZlX1JpZ2h0XCIsXCJCZWxvd1wiLFwiQXR0YWNoZWRfQWJvdmVfUmlnaHRcIixcIkF0dGFjaGVkX0JlbG93XCIsXCJPdmVybGF5XCIsXCJJb3RhX1N1YnNjcmlwdFwiLFwiRG91YmxlX0JlbG93XCIsXCJEb3VibGVfQWJvdmVcIixcIkJlbG93X1JpZ2h0XCIsXCJBYm92ZV9MZWZ0XCIsXCJDQ0MxMFwiLFwiQ0NDMTFcIixcIkNDQzEyXCIsXCJDQ0MxM1wiLFwiQ0NDMTRcIixcIkNDQzE1XCIsXCJDQ0MxNlwiLFwiQ0NDMTdcIixcIkNDQzE4XCIsXCJDQ0MxOVwiLFwiQ0NDMjBcIixcIkNDQzIxXCIsXCJDQ0MyMlwiLFwiQ0NDMjNcIixcIkNDQzI0XCIsXCJDQ0MyNVwiLFwiQ0NDMzBcIixcIkNDQzMxXCIsXCJDQ0MzMlwiLFwiQ0NDMjdcIixcIkNDQzI4XCIsXCJDQ0MyOVwiLFwiQ0NDMzNcIixcIkNDQzM0XCIsXCJDQ0MzNVwiLFwiQ0NDMzZcIixcIk51a3RhXCIsXCJWaXJhbWFcIixcIkNDQzg0XCIsXCJDQ0M5MVwiLFwiQ0NDMTAzXCIsXCJDQ0MxMDdcIixcIkNDQzExOFwiLFwiQ0NDMTIyXCIsXCJDQ0MxMjlcIixcIkNDQzEzMFwiLFwiQ0NDMTMyXCIsXCJBdHRhY2hlZF9BYm92ZVwiLFwiQmVsb3dfTGVmdFwiLFwiTGVmdFwiLFwiS2FuYV9Wb2ljaW5nXCIsXCJDQ0MyNlwiLFwiUmlnaHRcIl0sXCJzY3JpcHRzXCI6W1wiQ29tbW9uXCIsXCJMYXRpblwiLFwiQm9wb21vZm9cIixcIkluaGVyaXRlZFwiLFwiR3JlZWtcIixcIkNvcHRpY1wiLFwiQ3lyaWxsaWNcIixcIkFybWVuaWFuXCIsXCJIZWJyZXdcIixcIkFyYWJpY1wiLFwiU3lyaWFjXCIsXCJUaGFhbmFcIixcIk5rb1wiLFwiU2FtYXJpdGFuXCIsXCJNYW5kYWljXCIsXCJEZXZhbmFnYXJpXCIsXCJCZW5nYWxpXCIsXCJHdXJtdWtoaVwiLFwiR3VqYXJhdGlcIixcIk9yaXlhXCIsXCJUYW1pbFwiLFwiVGVsdWd1XCIsXCJLYW5uYWRhXCIsXCJNYWxheWFsYW1cIixcIlNpbmhhbGFcIixcIlRoYWlcIixcIkxhb1wiLFwiVGliZXRhblwiLFwiTXlhbm1hclwiLFwiR2VvcmdpYW5cIixcIkhhbmd1bFwiLFwiRXRoaW9waWNcIixcIkNoZXJva2VlXCIsXCJDYW5hZGlhbl9BYm9yaWdpbmFsXCIsXCJPZ2hhbVwiLFwiUnVuaWNcIixcIlRhZ2Fsb2dcIixcIkhhbnVub29cIixcIkJ1aGlkXCIsXCJUYWdiYW53YVwiLFwiS2htZXJcIixcIk1vbmdvbGlhblwiLFwiTGltYnVcIixcIlRhaV9MZVwiLFwiTmV3X1RhaV9MdWVcIixcIkJ1Z2luZXNlXCIsXCJUYWlfVGhhbVwiLFwiQmFsaW5lc2VcIixcIlN1bmRhbmVzZVwiLFwiQmF0YWtcIixcIkxlcGNoYVwiLFwiT2xfQ2hpa2lcIixcIkJyYWlsbGVcIixcIkdsYWdvbGl0aWNcIixcIlRpZmluYWdoXCIsXCJIYW5cIixcIkhpcmFnYW5hXCIsXCJLYXRha2FuYVwiLFwiWWlcIixcIkxpc3VcIixcIlZhaVwiLFwiQmFtdW1cIixcIlN5bG90aV9OYWdyaVwiLFwiUGhhZ3NfUGFcIixcIlNhdXJhc2h0cmFcIixcIktheWFoX0xpXCIsXCJSZWphbmdcIixcIkphdmFuZXNlXCIsXCJDaGFtXCIsXCJUYWlfVmlldFwiLFwiTWVldGVpX01heWVrXCIsXCJudWxsXCIsXCJMaW5lYXJfQlwiLFwiTHljaWFuXCIsXCJDYXJpYW5cIixcIk9sZF9JdGFsaWNcIixcIkdvdGhpY1wiLFwiT2xkX1Blcm1pY1wiLFwiVWdhcml0aWNcIixcIk9sZF9QZXJzaWFuXCIsXCJEZXNlcmV0XCIsXCJTaGF2aWFuXCIsXCJPc21hbnlhXCIsXCJPc2FnZVwiLFwiRWxiYXNhblwiLFwiQ2F1Y2FzaWFuX0FsYmFuaWFuXCIsXCJMaW5lYXJfQVwiLFwiQ3lwcmlvdFwiLFwiSW1wZXJpYWxfQXJhbWFpY1wiLFwiUGFsbXlyZW5lXCIsXCJOYWJhdGFlYW5cIixcIkhhdHJhblwiLFwiUGhvZW5pY2lhblwiLFwiTHlkaWFuXCIsXCJNZXJvaXRpY19IaWVyb2dseXBoc1wiLFwiTWVyb2l0aWNfQ3Vyc2l2ZVwiLFwiS2hhcm9zaHRoaVwiLFwiT2xkX1NvdXRoX0FyYWJpYW5cIixcIk9sZF9Ob3J0aF9BcmFiaWFuXCIsXCJNYW5pY2hhZWFuXCIsXCJBdmVzdGFuXCIsXCJJbnNjcmlwdGlvbmFsX1BhcnRoaWFuXCIsXCJJbnNjcmlwdGlvbmFsX1BhaGxhdmlcIixcIlBzYWx0ZXJfUGFobGF2aVwiLFwiT2xkX1R1cmtpY1wiLFwiT2xkX0h1bmdhcmlhblwiLFwiSGFuaWZpX1JvaGluZ3lhXCIsXCJPbGRfU29nZGlhblwiLFwiU29nZGlhblwiLFwiRWx5bWFpY1wiLFwiQnJhaG1pXCIsXCJLYWl0aGlcIixcIlNvcmFfU29tcGVuZ1wiLFwiQ2hha21hXCIsXCJNYWhhamFuaVwiLFwiU2hhcmFkYVwiLFwiS2hvamtpXCIsXCJNdWx0YW5pXCIsXCJLaHVkYXdhZGlcIixcIkdyYW50aGFcIixcIk5ld2FcIixcIlRpcmh1dGFcIixcIlNpZGRoYW1cIixcIk1vZGlcIixcIlRha3JpXCIsXCJBaG9tXCIsXCJEb2dyYVwiLFwiV2FyYW5nX0NpdGlcIixcIk5hbmRpbmFnYXJpXCIsXCJaYW5hYmF6YXJfU3F1YXJlXCIsXCJTb3lvbWJvXCIsXCJQYXVfQ2luX0hhdVwiLFwiQmhhaWtzdWtpXCIsXCJNYXJjaGVuXCIsXCJNYXNhcmFtX0dvbmRpXCIsXCJHdW5qYWxhX0dvbmRpXCIsXCJNYWthc2FyXCIsXCJDdW5laWZvcm1cIixcIkVneXB0aWFuX0hpZXJvZ2x5cGhzXCIsXCJBbmF0b2xpYW5fSGllcm9nbHlwaHNcIixcIk1yb1wiLFwiQmFzc2FfVmFoXCIsXCJQYWhhd2hfSG1vbmdcIixcIk1lZGVmYWlkcmluXCIsXCJNaWFvXCIsXCJUYW5ndXRcIixcIk51c2h1XCIsXCJEdXBsb3lhblwiLFwiU2lnbldyaXRpbmdcIixcIk55aWFrZW5nX1B1YWNodWVfSG1vbmdcIixcIldhbmNob1wiLFwiTWVuZGVfS2lrYWt1aVwiLFwiQWRsYW1cIl0sXCJlYXdcIjpbXCJOXCIsXCJOYVwiLFwiQVwiLFwiV1wiLFwiSFwiLFwiRlwiXX0iLCAiaW1wb3J0IHsgcmVnaXN0ZXJGb3JtYXQsIGNyZWF0ZSwgZGVmYXVsdExhbmd1YWdlLCBzZXREZWZhdWx0TGFuZ3VhZ2UgfSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHsgb3Blbiwgb3BlblN5bmMgfSBmcm9tICcuL2ZzJztcbmltcG9ydCBUVEZGb250IGZyb20gJy4vVFRGRm9udCc7XG5pbXBvcnQgV09GRkZvbnQgZnJvbSAnLi9XT0ZGRm9udCc7XG5pbXBvcnQgV09GRjJGb250IGZyb20gJy4vV09GRjJGb250JztcbmltcG9ydCBUcnVlVHlwZUNvbGxlY3Rpb24gZnJvbSAnLi9UcnVlVHlwZUNvbGxlY3Rpb24nO1xuaW1wb3J0IERGb250IGZyb20gJy4vREZvbnQnO1xuXG4vLyBSZWdpc3RlciBmb250IGZvcm1hdHNcbnJlZ2lzdGVyRm9ybWF0KFRURkZvbnQpO1xucmVnaXN0ZXJGb3JtYXQoV09GRkZvbnQpO1xucmVnaXN0ZXJGb3JtYXQoV09GRjJGb250KTtcbnJlZ2lzdGVyRm9ybWF0KFRydWVUeXBlQ29sbGVjdGlvbik7XG5yZWdpc3RlckZvcm1hdChERm9udCk7XG5cbmV4cG9ydCAqIGZyb20gJy4vYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZzJztcbiIsICJpbXBvcnQge0RlY29kZVN0cmVhbX0gZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5leHBvcnQgbGV0IGxvZ0Vycm9ycyA9IGZhbHNlO1xuXG5sZXQgZm9ybWF0cyA9IFtdO1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRm9ybWF0KGZvcm1hdCkge1xuICBmb3JtYXRzLnB1c2goZm9ybWF0KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGUoYnVmZmVyLCBwb3N0c2NyaXB0TmFtZSkge1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGZvcm1hdHMubGVuZ3RoOyBpKyspIHtcbiAgICBsZXQgZm9ybWF0ID0gZm9ybWF0c1tpXTtcbiAgICBpZiAoZm9ybWF0LnByb2JlKGJ1ZmZlcikpIHtcbiAgICAgIGxldCBmb250ID0gbmV3IGZvcm1hdChuZXcgRGVjb2RlU3RyZWFtKGJ1ZmZlcikpO1xuICAgICAgaWYgKHBvc3RzY3JpcHROYW1lKSB7XG4gICAgICAgIHJldHVybiBmb250LmdldEZvbnQocG9zdHNjcmlwdE5hbWUpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZm9udDtcbiAgICB9XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gZm9udCBmb3JtYXQnKTtcbn07XG5cbmV4cG9ydCBsZXQgZGVmYXVsdExhbmd1YWdlID0gJ2VuJztcbmV4cG9ydCBmdW5jdGlvbiBzZXREZWZhdWx0TGFuZ3VhZ2UobGFuZyA9ICdlbicpIHtcbiAgZGVmYXVsdExhbmd1YWdlID0gbGFuZztcbn07XG4iLCAiaW1wb3J0IHsgY3JlYXRlIH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCBmcyBmcm9tICdmcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBvcGVuU3luYyhmaWxlbmFtZSwgcG9zdHNjcmlwdE5hbWUpIHtcbiAgbGV0IGJ1ZmZlciA9IGZzLnJlYWRGaWxlU3luYyhmaWxlbmFtZSk7XG4gIHJldHVybiBjcmVhdGUoYnVmZmVyLCBwb3N0c2NyaXB0TmFtZSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBvcGVuKGZpbGVuYW1lLCBwb3N0c2NyaXB0TmFtZSwgY2FsbGJhY2spIHtcbiAgaWYgKHR5cGVvZiBwb3N0c2NyaXB0TmFtZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGNhbGxiYWNrID0gcG9zdHNjcmlwdE5hbWU7XG4gICAgcG9zdHNjcmlwdE5hbWUgPSBudWxsO1xuICB9XG5cbiAgbGV0IGJ1ZmZlciA9IGF3YWl0IGZzLnByb21pc2VzLnJlYWRGaWxlKGZpbGVuYW1lKTtcbiAgcmV0dXJuIGNyZWF0ZShidWZmZXIsIHBvc3RzY3JpcHROYW1lKTtcbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7IGNhY2hlIH0gZnJvbSAnLi9kZWNvcmF0b3JzJztcbmltcG9ydCAqIGFzIGZvbnRraXQgZnJvbSAnLi9iYXNlJztcbmltcG9ydCBEaXJlY3RvcnkgZnJvbSAnLi90YWJsZXMvZGlyZWN0b3J5JztcbmltcG9ydCB0YWJsZXMgZnJvbSAnLi90YWJsZXMnO1xuaW1wb3J0IENtYXBQcm9jZXNzb3IgZnJvbSAnLi9DbWFwUHJvY2Vzc29yJztcbmltcG9ydCBMYXlvdXRFbmdpbmUgZnJvbSAnLi9sYXlvdXQvTGF5b3V0RW5naW5lJztcbmltcG9ydCBUVEZHbHlwaCBmcm9tICcuL2dseXBoL1RURkdseXBoJztcbmltcG9ydCBDRkZHbHlwaCBmcm9tICcuL2dseXBoL0NGRkdseXBoJztcbmltcG9ydCBTQklYR2x5cGggZnJvbSAnLi9nbHlwaC9TQklYR2x5cGgnO1xuaW1wb3J0IENPTFJHbHlwaCBmcm9tICcuL2dseXBoL0NPTFJHbHlwaCc7XG5pbXBvcnQgR2x5cGhWYXJpYXRpb25Qcm9jZXNzb3IgZnJvbSAnLi9nbHlwaC9HbHlwaFZhcmlhdGlvblByb2Nlc3Nvcic7XG5pbXBvcnQgVFRGU3Vic2V0IGZyb20gJy4vc3Vic2V0L1RURlN1YnNldCc7XG5pbXBvcnQgQ0ZGU3Vic2V0IGZyb20gJy4vc3Vic2V0L0NGRlN1YnNldCc7XG5pbXBvcnQgQkJveCBmcm9tICcuL2dseXBoL0JCb3gnO1xuaW1wb3J0IHsgYXNjaWlEZWNvZGVyIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogVGhpcyBpcyB0aGUgYmFzZSBjbGFzcyBmb3IgYWxsIFNGTlQtYmFzZWQgZm9udCBmb3JtYXRzIGluIGZvbnRraXQuXG4gKiBJdCBzdXBwb3J0cyBUcnVlVHlwZSwgYW5kIFBvc3RTY3JpcHQgZ2x5cGhzLCBhbmQgc2V2ZXJhbCBjb2xvciBnbHlwaCBmb3JtYXRzLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUVEZGb250IHtcbiAgdHlwZSA9ICdUVEYnO1xuXG4gIHN0YXRpYyBwcm9iZShidWZmZXIpIHtcbiAgICBsZXQgZm9ybWF0ID0gYXNjaWlEZWNvZGVyLmRlY29kZShidWZmZXIuc2xpY2UoMCwgNCkpO1xuICAgIHJldHVybiBmb3JtYXQgPT09ICd0cnVlJyB8fCBmb3JtYXQgPT09ICdPVFRPJyB8fCBmb3JtYXQgPT09IFN0cmluZy5mcm9tQ2hhckNvZGUoMCwgMSwgMCwgMCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzdHJlYW0sIHZhcmlhdGlvbkNvb3JkcyA9IG51bGwpIHtcbiAgICB0aGlzLmRlZmF1bHRMYW5ndWFnZSA9IG51bGw7XG4gICAgdGhpcy5zdHJlYW0gPSBzdHJlYW07XG4gICAgdGhpcy52YXJpYXRpb25Db29yZHMgPSB2YXJpYXRpb25Db29yZHM7XG5cbiAgICB0aGlzLl9kaXJlY3RvcnlQb3MgPSB0aGlzLnN0cmVhbS5wb3M7XG4gICAgdGhpcy5fdGFibGVzID0ge307XG4gICAgdGhpcy5fZ2x5cGhzID0ge307XG4gICAgdGhpcy5fZGVjb2RlRGlyZWN0b3J5KCk7XG5cbiAgICAvLyBkZWZpbmUgcHJvcGVydGllcyBmb3IgZWFjaCB0YWJsZSB0byBsYXppbHkgcGFyc2VcbiAgICBmb3IgKGxldCB0YWcgaW4gdGhpcy5kaXJlY3RvcnkudGFibGVzKSB7XG4gICAgICBsZXQgdGFibGUgPSB0aGlzLmRpcmVjdG9yeS50YWJsZXNbdGFnXTtcbiAgICAgIGlmICh0YWJsZXNbdGFnXSAmJiB0YWJsZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCB0YWcsIHtcbiAgICAgICAgICBnZXQ6IHRoaXMuX2dldFRhYmxlLmJpbmQodGhpcywgdGFibGUpXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNldERlZmF1bHRMYW5ndWFnZShsYW5nID0gbnVsbCkge1xuICAgIHRoaXMuZGVmYXVsdExhbmd1YWdlID0gbGFuZztcbiAgfVxuXG4gIF9nZXRUYWJsZSh0YWJsZSkge1xuICAgIGlmICghKHRhYmxlLnRhZyBpbiB0aGlzLl90YWJsZXMpKSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLl90YWJsZXNbdGFibGUudGFnXSA9IHRoaXMuX2RlY29kZVRhYmxlKHRhYmxlKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgaWYgKGZvbnRraXQubG9nRXJyb3JzKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihgRXJyb3IgZGVjb2RpbmcgdGFibGUgJHt0YWJsZS50YWd9YCk7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlLnN0YWNrKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl90YWJsZXNbdGFibGUudGFnXTtcbiAgfVxuXG4gIF9nZXRUYWJsZVN0cmVhbSh0YWcpIHtcbiAgICBsZXQgdGFibGUgPSB0aGlzLmRpcmVjdG9yeS50YWJsZXNbdGFnXTtcbiAgICBpZiAodGFibGUpIHtcbiAgICAgIHRoaXMuc3RyZWFtLnBvcyA9IHRhYmxlLm9mZnNldDtcbiAgICAgIHJldHVybiB0aGlzLnN0cmVhbTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIF9kZWNvZGVEaXJlY3RvcnkoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlyZWN0b3J5ID0gRGlyZWN0b3J5LmRlY29kZSh0aGlzLnN0cmVhbSwge19zdGFydE9mZnNldDogMH0pO1xuICB9XG5cbiAgX2RlY29kZVRhYmxlKHRhYmxlKSB7XG4gICAgbGV0IHBvcyA9IHRoaXMuc3RyZWFtLnBvcztcblxuICAgIGxldCBzdHJlYW0gPSB0aGlzLl9nZXRUYWJsZVN0cmVhbSh0YWJsZS50YWcpO1xuICAgIGxldCByZXN1bHQgPSB0YWJsZXNbdGFibGUudGFnXS5kZWNvZGUoc3RyZWFtLCB0aGlzLCB0YWJsZS5sZW5ndGgpO1xuXG4gICAgdGhpcy5zdHJlYW0ucG9zID0gcG9zO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhIHN0cmluZyBmcm9tIHRoZSBmb250J3MgYG5hbWVgIHRhYmxlXG4gICAqIGBsYW5nYCBpcyBhIEJDUC00NyBsYW5ndWFnZSBjb2RlLlxuICAgKiBAcmV0dXJuIHtzdHJpbmd9XG4gICAqL1xuICBnZXROYW1lKGtleSwgbGFuZyA9IHRoaXMuZGVmYXVsdExhbmd1YWdlIHx8IGZvbnRraXQuZGVmYXVsdExhbmd1YWdlKSB7XG4gICAgbGV0IHJlY29yZCA9IHRoaXMubmFtZSAmJiB0aGlzLm5hbWUucmVjb3Jkc1trZXldO1xuICAgIGlmIChyZWNvcmQpIHtcbiAgICAgIC8vIEF0dGVtcHQgdG8gcmV0cmlldmUgdGhlIGVudHJ5LCBkZXBlbmRpbmcgb24gd2hpY2ggdHJhbnNsYXRpb24gaXMgYXZhaWxhYmxlOlxuICAgICAgcmV0dXJuIChcbiAgICAgICAgICByZWNvcmRbbGFuZ11cbiAgICAgICAgICB8fCByZWNvcmRbdGhpcy5kZWZhdWx0TGFuZ3VhZ2VdXG4gICAgICAgICAgfHwgcmVjb3JkW2ZvbnRraXQuZGVmYXVsdExhbmd1YWdlXVxuICAgICAgICAgIHx8IHJlY29yZFsnZW4nXVxuICAgICAgICAgIHx8IHJlY29yZFtPYmplY3Qua2V5cyhyZWNvcmQpWzBdXSAvLyBTZXJpb3VzbHksIEFOWSBsYW5ndWFnZSB3b3VsZCBiZSBmaW5lXG4gICAgICAgICAgfHwgbnVsbFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlIFBvc3RTY3JpcHQgbmFtZSBmb3IgdGhpcyBmb250LCBlLmcuIFwiSGVsdmV0aWNhLUJvbGRcIlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgZ2V0IHBvc3RzY3JpcHROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmdldE5hbWUoJ3Bvc3RzY3JpcHROYW1lJyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGZvbnQncyBmdWxsIG5hbWUsIGUuZy4gXCJIZWx2ZXRpY2EgQm9sZFwiXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqL1xuICBnZXQgZnVsbE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmFtZSgnZnVsbE5hbWUnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZm9udCdzIGZhbWlseSBuYW1lLCBlLmcuIFwiSGVsdmV0aWNhXCJcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICovXG4gIGdldCBmYW1pbHlOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmdldE5hbWUoJ2ZvbnRGYW1pbHknKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZm9udCdzIHN1Yi1mYW1pbHksIGUuZy4gXCJCb2xkXCIuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqL1xuICBnZXQgc3ViZmFtaWx5TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXROYW1lKCdmb250U3ViZmFtaWx5Jyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGZvbnQncyBjb3B5cmlnaHQgaW5mb3JtYXRpb25cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICovXG4gIGdldCBjb3B5cmlnaHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmFtZSgnY29weXJpZ2h0Jyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGZvbnQncyB2ZXJzaW9uIG51bWJlclxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgZ2V0IHZlcnNpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmFtZSgndmVyc2lvbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmb2504oCZcyBbYXNjZW5kZXJdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0FzY2VuZGVyXyh0eXBvZ3JhcGh5KSlcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCBhc2NlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGhlYS5hc2NlbnQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGZvbnTigJlzIFtkZXNjZW5kZXJdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0Rlc2NlbmRlcilcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCBkZXNjZW50KCkge1xuICAgIHJldHVybiB0aGlzLmhoZWEuZGVzY2VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgYW1vdW50IG9mIHNwYWNlIHRoYXQgc2hvdWxkIGJlIGluY2x1ZGVkIGJldHdlZW4gbGluZXNcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCBsaW5lR2FwKCkge1xuICAgIHJldHVybiB0aGlzLmhoZWEubGluZUdhcDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgb2Zmc2V0IGZyb20gdGhlIG5vcm1hbCB1bmRlcmxpbmUgcG9zaXRpb24gdGhhdCBzaG91bGQgYmUgdXNlZFxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgZ2V0IHVuZGVybGluZVBvc2l0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnBvc3QudW5kZXJsaW5lUG9zaXRpb247XG4gIH1cblxuICAvKipcbiAgICogVGhlIHdlaWdodCBvZiB0aGUgdW5kZXJsaW5lIHRoYXQgc2hvdWxkIGJlIHVzZWRcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCB1bmRlcmxpbmVUaGlja25lc3MoKSB7XG4gICAgcmV0dXJuIHRoaXMucG9zdC51bmRlcmxpbmVUaGlja25lc3M7XG4gIH1cblxuICAvKipcbiAgICogSWYgdGhpcyBpcyBhbiBpdGFsaWMgZm9udCwgdGhlIGFuZ2xlIHRoZSBjdXJzb3Igc2hvdWxkIGJlIGRyYXduIGF0IHRvIG1hdGNoIHRoZSBmb250IGRlc2lnblxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgZ2V0IGl0YWxpY0FuZ2xlKCkge1xuICAgIHJldHVybiB0aGlzLnBvc3QuaXRhbGljQW5nbGU7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGhlaWdodCBvZiBjYXBpdGFsIGxldHRlcnMgYWJvdmUgdGhlIGJhc2VsaW5lLlxuICAgKiBTZWUgW2hlcmVdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NhcF9oZWlnaHQpIGZvciBtb3JlIGRldGFpbHMuXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgY2FwSGVpZ2h0KCkge1xuICAgIGxldCBvczIgPSB0aGlzWydPUy8yJ107XG4gICAgcmV0dXJuIG9zMiA/IG9zMi5jYXBIZWlnaHQgOiB0aGlzLmFzY2VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaGVpZ2h0IG9mIGxvd2VyIGNhc2UgbGV0dGVycyBpbiB0aGUgZm9udC5cbiAgICogU2VlIFtoZXJlXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9YLWhlaWdodCkgZm9yIG1vcmUgZGV0YWlscy5cbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCB4SGVpZ2h0KCkge1xuICAgIGxldCBvczIgPSB0aGlzWydPUy8yJ107XG4gICAgcmV0dXJuIG9zMiA/IG9zMi54SGVpZ2h0IDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGdseXBocyBpbiB0aGUgZm9udC5cbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCBudW1HbHlwaHMoKSB7XG4gICAgcmV0dXJuIHRoaXMubWF4cC5udW1HbHlwaHM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHNpemUgb2YgdGhlIGZvbnTigJlzIGludGVybmFsIGNvb3JkaW5hdGUgZ3JpZFxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgZ2V0IHVuaXRzUGVyRW0oKSB7XG4gICAgcmV0dXJuIHRoaXMuaGVhZC51bml0c1BlckVtO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmb2504oCZcyBib3VuZGluZyBib3gsIGkuZS4gdGhlIGJveCB0aGF0IGVuY2xvc2VzIGFsbCBnbHlwaHMgaW4gdGhlIGZvbnQuXG4gICAqIEB0eXBlIHtCQm94fVxuICAgKi9cbiAgQGNhY2hlXG4gIGdldCBiYm94KCkge1xuICAgIHJldHVybiBPYmplY3QuZnJlZXplKG5ldyBCQm94KHRoaXMuaGVhZC54TWluLCB0aGlzLmhlYWQueU1pbiwgdGhpcy5oZWFkLnhNYXgsIHRoaXMuaGVhZC55TWF4KSk7XG4gIH1cblxuICBAY2FjaGVcbiAgZ2V0IF9jbWFwUHJvY2Vzc29yKCkge1xuICAgIHJldHVybiBuZXcgQ21hcFByb2Nlc3Nvcih0aGlzLmNtYXApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIGFsbCBvZiB0aGUgdW5pY29kZSBjb2RlIHBvaW50cyBzdXBwb3J0ZWQgYnkgdGhlIGZvbnQuXG4gICAqIEB0eXBlIHtudW1iZXJbXX1cbiAgICovXG4gIEBjYWNoZVxuICBnZXQgY2hhcmFjdGVyU2V0KCkge1xuICAgIHJldHVybiB0aGlzLl9jbWFwUHJvY2Vzc29yLmdldENoYXJhY3RlclNldCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgd2hldGhlciB0aGVyZSBpcyBnbHlwaCBpbiB0aGUgZm9udCBmb3IgdGhlIGdpdmVuIHVuaWNvZGUgY29kZSBwb2ludC5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGNvZGVQb2ludFxuICAgKiBAcmV0dXJuIHtib29sZWFufVxuICAgKi9cbiAgaGFzR2x5cGhGb3JDb2RlUG9pbnQoY29kZVBvaW50KSB7XG4gICAgcmV0dXJuICEhdGhpcy5fY21hcFByb2Nlc3Nvci5sb29rdXAoY29kZVBvaW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXBzIGEgc2luZ2xlIHVuaWNvZGUgY29kZSBwb2ludCB0byBhIEdseXBoIG9iamVjdC5cbiAgICogRG9lcyBub3QgcGVyZm9ybSBhbnkgYWR2YW5jZWQgc3Vic3RpdHV0aW9ucyAodGhlcmUgaXMgbm8gY29udGV4dCB0byBkbyBzbykuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBjb2RlUG9pbnRcbiAgICogQHJldHVybiB7R2x5cGh9XG4gICAqL1xuICBnbHlwaEZvckNvZGVQb2ludChjb2RlUG9pbnQpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRHbHlwaCh0aGlzLl9jbWFwUHJvY2Vzc29yLmxvb2t1cChjb2RlUG9pbnQpLCBbY29kZVBvaW50XSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhbiBhcnJheSBvZiBHbHlwaCBvYmplY3RzIGZvciB0aGUgZ2l2ZW4gc3RyaW5nLlxuICAgKiBUaGlzIGlzIG9ubHkgYSBvbmUtdG8tb25lIG1hcHBpbmcgZnJvbSBjaGFyYWN0ZXJzIHRvIGdseXBocy5cbiAgICogRm9yIG1vc3QgdXNlcywgeW91IHNob3VsZCB1c2UgZm9udC5sYXlvdXQgKGRlc2NyaWJlZCBiZWxvdyksIHdoaWNoXG4gICAqIHByb3ZpZGVzIGEgbXVjaCBtb3JlIGFkdmFuY2VkIG1hcHBpbmcgc3VwcG9ydGluZyBBQVQgYW5kIE9wZW5UeXBlIHNoYXBpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzdHJpbmdcbiAgICogQHJldHVybiB7R2x5cGhbXX1cbiAgICovXG4gIGdseXBoc0ZvclN0cmluZyhzdHJpbmcpIHtcbiAgICBsZXQgZ2x5cGhzID0gW107XG4gICAgbGV0IGxlbiA9IHN0cmluZy5sZW5ndGg7XG4gICAgbGV0IGlkeCA9IDA7XG4gICAgbGV0IGxhc3QgPSAtMTtcbiAgICBsZXQgc3RhdGUgPSAtMTtcblxuICAgIHdoaWxlIChpZHggPD0gbGVuKSB7XG4gICAgICBsZXQgY29kZSA9IDA7XG4gICAgICBsZXQgbmV4dFN0YXRlID0gMDtcblxuICAgICAgaWYgKGlkeCA8IGxlbikge1xuICAgICAgICAvLyBEZWNvZGUgdGhlIG5leHQgY29kZXBvaW50IGZyb20gVVRGIDE2XG4gICAgICAgIGNvZGUgPSBzdHJpbmcuY2hhckNvZGVBdChpZHgrKyk7XG4gICAgICAgIGlmICgweGQ4MDAgPD0gY29kZSAmJiBjb2RlIDw9IDB4ZGJmZiAmJiBpZHggPCBsZW4pIHtcbiAgICAgICAgICBsZXQgbmV4dCA9IHN0cmluZy5jaGFyQ29kZUF0KGlkeCk7XG4gICAgICAgICAgaWYgKDB4ZGMwMCA8PSBuZXh0ICYmIG5leHQgPD0gMHhkZmZmKSB7XG4gICAgICAgICAgICBpZHgrKztcbiAgICAgICAgICAgIGNvZGUgPSAoKGNvZGUgJiAweDNmZikgPDwgMTApICsgKG5leHQgJiAweDNmZikgKyAweDEwMDAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbXB1dGUgdGhlIG5leHQgc3RhdGU6IDEgaWYgdGhlIG5leHQgY29kZXBvaW50IGlzIGEgdmFyaWF0aW9uIHNlbGVjdG9yLCAwIG90aGVyd2lzZS5cbiAgICAgICAgbmV4dFN0YXRlID0gKCgweGZlMDAgPD0gY29kZSAmJiBjb2RlIDw9IDB4ZmUwZikgfHwgKDB4ZTAxMDAgPD0gY29kZSAmJiBjb2RlIDw9IDB4ZTAxZWYpKSA/IDEgOiAwO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWR4Kys7XG4gICAgICB9XG5cbiAgICAgIGlmIChzdGF0ZSA9PT0gMCAmJiBuZXh0U3RhdGUgPT09IDEpIHtcbiAgICAgICAgLy8gVmFyaWF0aW9uIHNlbGVjdG9yIGZvbGxvd2luZyBub3JtYWwgY29kZXBvaW50LlxuICAgICAgICBnbHlwaHMucHVzaCh0aGlzLmdldEdseXBoKHRoaXMuX2NtYXBQcm9jZXNzb3IubG9va3VwKGxhc3QsIGNvZGUpLCBbbGFzdCwgY29kZV0pKTtcbiAgICAgIH0gZWxzZSBpZiAoc3RhdGUgPT09IDAgJiYgbmV4dFN0YXRlID09PSAwKSB7XG4gICAgICAgIC8vIE5vcm1hbCBjb2RlcG9pbnQgZm9sbG93aW5nIG5vcm1hbCBjb2RlcG9pbnQuXG4gICAgICAgIGdseXBocy5wdXNoKHRoaXMuZ2x5cGhGb3JDb2RlUG9pbnQobGFzdCkpO1xuICAgICAgfVxuXG4gICAgICBsYXN0ID0gY29kZTtcbiAgICAgIHN0YXRlID0gbmV4dFN0YXRlO1xuICAgIH1cblxuICAgIHJldHVybiBnbHlwaHM7XG4gIH1cblxuICBAY2FjaGVcbiAgZ2V0IF9sYXlvdXRFbmdpbmUoKSB7XG4gICAgcmV0dXJuIG5ldyBMYXlvdXRFbmdpbmUodGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIEdseXBoUnVuIG9iamVjdCwgd2hpY2ggaW5jbHVkZXMgYW4gYXJyYXkgb2YgR2x5cGhzIGFuZCBHbHlwaFBvc2l0aW9ucyBmb3IgdGhlIGdpdmVuIHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHN0cmluZ1xuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBbdXNlckZlYXR1cmVzXVxuICAgKiBAcGFyYW0ge3N0cmluZ30gW3NjcmlwdF1cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtsYW5ndWFnZV1cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtkaXJlY3Rpb25dXG4gICAqIEByZXR1cm4ge0dseXBoUnVufVxuICAgKi9cbiAgbGF5b3V0KHN0cmluZywgdXNlckZlYXR1cmVzLCBzY3JpcHQsIGxhbmd1YWdlLCBkaXJlY3Rpb24pIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0RW5naW5lLmxheW91dChzdHJpbmcsIHVzZXJGZWF0dXJlcywgc2NyaXB0LCBsYW5ndWFnZSwgZGlyZWN0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIGFycmF5IG9mIHN0cmluZ3MgdGhhdCBtYXAgdG8gdGhlIGdpdmVuIGdseXBoIGlkLlxuICAgKiBAcGFyYW0ge251bWJlcn0gZ2lkIC0gZ2x5cGggaWRcbiAgICovXG4gIHN0cmluZ3NGb3JHbHlwaChnaWQpIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0RW5naW5lLnN0cmluZ3NGb3JHbHlwaChnaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIGFsbCBbT3BlblR5cGUgZmVhdHVyZSB0YWdzXShodHRwczovL3d3dy5taWNyb3NvZnQuY29tL3R5cG9ncmFwaHkvb3RzcGVjL2ZlYXR1cmV0YWdzLmh0bSlcbiAgICogKG9yIG1hcHBlZCBBQVQgdGFncykgc3VwcG9ydGVkIGJ5IHRoZSBmb250LlxuICAgKiBUaGUgZmVhdHVyZXMgcGFyYW1ldGVyIGlzIGFuIGFycmF5IG9mIE9wZW5UeXBlIGZlYXR1cmUgdGFncyB0byBiZSBhcHBsaWVkIGluIGFkZGl0aW9uIHRvIHRoZSBkZWZhdWx0IHNldC5cbiAgICogSWYgdGhpcyBpcyBhbiBBQVQgZm9udCwgdGhlIE9wZW5UeXBlIGZlYXR1cmUgdGFncyBhcmUgbWFwcGVkIHRvIEFBVCBmZWF0dXJlcy5cbiAgICpcbiAgICogQHR5cGUge3N0cmluZ1tdfVxuICAgKi9cbiAgZ2V0IGF2YWlsYWJsZUZlYXR1cmVzKCkge1xuICAgIHJldHVybiB0aGlzLl9sYXlvdXRFbmdpbmUuZ2V0QXZhaWxhYmxlRmVhdHVyZXMoKTtcbiAgfVxuXG4gIGdldEF2YWlsYWJsZUZlYXR1cmVzKHNjcmlwdCwgbGFuZ3VhZ2UpIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0RW5naW5lLmdldEF2YWlsYWJsZUZlYXR1cmVzKHNjcmlwdCwgbGFuZ3VhZ2UpO1xuICB9XG5cbiAgX2dldEJhc2VHbHlwaChnbHlwaCwgY2hhcmFjdGVycyA9IFtdKSB7XG4gICAgaWYgKCF0aGlzLl9nbHlwaHNbZ2x5cGhdKSB7XG4gICAgICBpZiAodGhpcy5kaXJlY3RvcnkudGFibGVzLmdseWYpIHtcbiAgICAgICAgdGhpcy5fZ2x5cGhzW2dseXBoXSA9IG5ldyBUVEZHbHlwaChnbHlwaCwgY2hhcmFjdGVycywgdGhpcyk7XG5cbiAgICAgIH0gZWxzZSBpZiAodGhpcy5kaXJlY3RvcnkudGFibGVzWydDRkYgJ10gfHwgdGhpcy5kaXJlY3RvcnkudGFibGVzLkNGRjIpIHtcbiAgICAgICAgdGhpcy5fZ2x5cGhzW2dseXBoXSA9IG5ldyBDRkZHbHlwaChnbHlwaCwgY2hhcmFjdGVycywgdGhpcyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2dseXBoc1tnbHlwaF0gfHwgbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgZ2x5cGggb2JqZWN0IGZvciB0aGUgZ2l2ZW4gZ2x5cGggaWQuXG4gICAqIFlvdSBjYW4gcGFzcyB0aGUgYXJyYXkgb2YgY29kZSBwb2ludHMgdGhpcyBnbHlwaCByZXByZXNlbnRzIGZvclxuICAgKiB5b3VyIHVzZSBsYXRlciwgYW5kIGl0IHdpbGwgYmUgc3RvcmVkIGluIHRoZSBnbHlwaCBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBnbHlwaFxuICAgKiBAcGFyYW0ge251bWJlcltdfSBjaGFyYWN0ZXJzXG4gICAqIEByZXR1cm4ge0dseXBofVxuICAgKi9cbiAgZ2V0R2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMgPSBbXSkge1xuICAgIGlmICghdGhpcy5fZ2x5cGhzW2dseXBoXSkge1xuICAgICAgaWYgKHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5zYml4KSB7XG4gICAgICAgIHRoaXMuX2dseXBoc1tnbHlwaF0gPSBuZXcgU0JJWEdseXBoKGdseXBoLCBjaGFyYWN0ZXJzLCB0aGlzKTtcblxuICAgICAgfSBlbHNlIGlmICgodGhpcy5kaXJlY3RvcnkudGFibGVzLkNPTFIpICYmICh0aGlzLmRpcmVjdG9yeS50YWJsZXMuQ1BBTCkpIHtcbiAgICAgICAgdGhpcy5fZ2x5cGhzW2dseXBoXSA9IG5ldyBDT0xSR2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMsIHRoaXMpO1xuXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9nZXRCYXNlR2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9nbHlwaHNbZ2x5cGhdIHx8IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIFN1YnNldCBmb3IgdGhpcyBmb250LlxuICAgKiBAcmV0dXJuIHtTdWJzZXR9XG4gICAqL1xuICBjcmVhdGVTdWJzZXQoKSB7XG4gICAgaWYgKHRoaXMuZGlyZWN0b3J5LnRhYmxlc1snQ0ZGICddKSB7XG4gICAgICByZXR1cm4gbmV3IENGRlN1YnNldCh0aGlzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IFRURlN1YnNldCh0aGlzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIG9iamVjdCBkZXNjcmliaW5nIHRoZSBhdmFpbGFibGUgdmFyaWF0aW9uIGF4ZXNcbiAgICogdGhhdCB0aGlzIGZvbnQgc3VwcG9ydHMuIEtleXMgYXJlIHNldHRpbmcgdGFncywgYW5kIHZhbHVlc1xuICAgKiBjb250YWluIHRoZSBheGlzIG5hbWUsIHJhbmdlLCBhbmQgZGVmYXVsdCB2YWx1ZS5cbiAgICpcbiAgICogQHR5cGUge29iamVjdH1cbiAgICovXG4gIEBjYWNoZVxuICBnZXQgdmFyaWF0aW9uQXhlcygpIHtcbiAgICBsZXQgcmVzID0ge307XG4gICAgaWYgKCF0aGlzLmZ2YXIpIHtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgYXhpcyBvZiB0aGlzLmZ2YXIuYXhpcykge1xuICAgICAgcmVzW2F4aXMuYXhpc1RhZy50cmltKCldID0ge1xuICAgICAgICBuYW1lOiBheGlzLm5hbWUuZW4sXG4gICAgICAgIG1pbjogYXhpcy5taW5WYWx1ZSxcbiAgICAgICAgZGVmYXVsdDogYXhpcy5kZWZhdWx0VmFsdWUsXG4gICAgICAgIG1heDogYXhpcy5tYXhWYWx1ZVxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gb2JqZWN0IGRlc2NyaWJpbmcgdGhlIG5hbWVkIHZhcmlhdGlvbiBpbnN0YW5jZXNcbiAgICogdGhhdCB0aGUgZm9udCBkZXNpZ25lciBoYXMgc3BlY2lmaWVkLiBLZXlzIGFyZSB2YXJpYXRpb24gbmFtZXNcbiAgICogYW5kIHZhbHVlcyBhcmUgdGhlIHZhcmlhdGlvbiBzZXR0aW5ncyBmb3IgdGhpcyBpbnN0YW5jZS5cbiAgICpcbiAgICogQHR5cGUge29iamVjdH1cbiAgICovXG4gIEBjYWNoZVxuICBnZXQgbmFtZWRWYXJpYXRpb25zKCkge1xuICAgIGxldCByZXMgPSB7fTtcbiAgICBpZiAoIXRoaXMuZnZhcikge1xuICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbnN0YW5jZSBvZiB0aGlzLmZ2YXIuaW5zdGFuY2UpIHtcbiAgICAgIGxldCBzZXR0aW5ncyA9IHt9O1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmZ2YXIuYXhpcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBsZXQgYXhpcyA9IHRoaXMuZnZhci5heGlzW2ldO1xuICAgICAgICBzZXR0aW5nc1theGlzLmF4aXNUYWcudHJpbSgpXSA9IGluc3RhbmNlLmNvb3JkW2ldO1xuICAgICAgfVxuXG4gICAgICByZXNbaW5zdGFuY2UubmFtZS5lbl0gPSBzZXR0aW5ncztcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBuZXcgZm9udCB3aXRoIHRoZSBnaXZlbiB2YXJpYXRpb24gc2V0dGluZ3MgYXBwbGllZC5cbiAgICogU2V0dGluZ3MgY2FuIGVpdGhlciBiZSBhbiBpbnN0YW5jZSBuYW1lLCBvciBhbiBvYmplY3QgY29udGFpbmluZ1xuICAgKiB2YXJpYXRpb24gdGFncyBhcyBzcGVjaWZpZWQgYnkgdGhlIGB2YXJpYXRpb25BeGVzYCBwcm9wZXJ0eS5cbiAgICpcbiAgICogQHBhcmFtIHtvYmplY3R9IHNldHRpbmdzXG4gICAqIEByZXR1cm4ge1RURkZvbnR9XG4gICAqL1xuICBnZXRWYXJpYXRpb24oc2V0dGluZ3MpIHtcbiAgICBpZiAoISh0aGlzLmRpcmVjdG9yeS50YWJsZXMuZnZhciAmJiAoKHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5ndmFyICYmIHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5nbHlmKSB8fCB0aGlzLmRpcmVjdG9yeS50YWJsZXMuQ0ZGMikpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1ZhcmlhdGlvbnMgcmVxdWlyZSBhIGZvbnQgd2l0aCB0aGUgZnZhciwgZ3ZhciBhbmQgZ2x5Ziwgb3IgQ0ZGMiB0YWJsZXMuJyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBzZXR0aW5ncyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHNldHRpbmdzID0gdGhpcy5uYW1lZFZhcmlhdGlvbnNbc2V0dGluZ3NdO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygc2V0dGluZ3MgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1ZhcmlhdGlvbiBzZXR0aW5ncyBtdXN0IGJlIGVpdGhlciBhIHZhcmlhdGlvbiBuYW1lIG9yIHNldHRpbmdzIG9iamVjdC4nKTtcbiAgICB9XG5cbiAgICAvLyBub3JtYWxpemUgdGhlIGNvb3JkaW5hdGVzXG4gICAgbGV0IGNvb3JkcyA9IHRoaXMuZnZhci5heGlzLm1hcCgoYXhpcywgaSkgPT4ge1xuICAgICAgbGV0IGF4aXNUYWcgPSBheGlzLmF4aXNUYWcudHJpbSgpO1xuICAgICAgaWYgKGF4aXNUYWcgaW4gc2V0dGluZ3MpIHtcbiAgICAgICAgcmV0dXJuIE1hdGgubWF4KGF4aXMubWluVmFsdWUsIE1hdGgubWluKGF4aXMubWF4VmFsdWUsIHNldHRpbmdzW2F4aXNUYWddKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gYXhpcy5kZWZhdWx0VmFsdWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBsZXQgc3RyZWFtID0gbmV3IHIuRGVjb2RlU3RyZWFtKHRoaXMuc3RyZWFtLmJ1ZmZlcik7XG4gICAgc3RyZWFtLnBvcyA9IHRoaXMuX2RpcmVjdG9yeVBvcztcblxuICAgIGxldCBmb250ID0gbmV3IFRURkZvbnQoc3RyZWFtLCBjb29yZHMpO1xuICAgIGZvbnQuX3RhYmxlcyA9IHRoaXMuX3RhYmxlcztcblxuICAgIHJldHVybiBmb250O1xuICB9XG5cbiAgQGNhY2hlXG4gIGdldCBfdmFyaWF0aW9uUHJvY2Vzc29yKCkge1xuICAgIGlmICghdGhpcy5mdmFyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgdmFyaWF0aW9uQ29vcmRzID0gdGhpcy52YXJpYXRpb25Db29yZHM7XG5cbiAgICAvLyBJZ25vcmUgaWYgbm8gdmFyaWF0aW9uIGNvb3JkcyBhbmQgbm90IENGRjJcbiAgICBpZiAoIXZhcmlhdGlvbkNvb3JkcyAmJiAhdGhpcy5DRkYyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoIXZhcmlhdGlvbkNvb3Jkcykge1xuICAgICAgdmFyaWF0aW9uQ29vcmRzID0gdGhpcy5mdmFyLmF4aXMubWFwKGF4aXMgPT4gYXhpcy5kZWZhdWx0VmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgR2x5cGhWYXJpYXRpb25Qcm9jZXNzb3IodGhpcywgdmFyaWF0aW9uQ29vcmRzKTtcbiAgfVxuXG4gIC8vIFN0YW5kYXJkaXplZCBmb3JtYXQgcGx1Z2luIEFQSVxuICBnZXRGb250KG5hbWUpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRWYXJpYXRpb24obmFtZSk7XG4gIH1cbn1cbiIsICIvKipcbiAqIFRoaXMgZGVjb3JhdG9yIGNhY2hlcyB0aGUgcmVzdWx0cyBvZiBhIGdldHRlciBvciBtZXRob2Qgc3VjaCB0aGF0XG4gKiB0aGUgcmVzdWx0cyBhcmUgbGF6aWx5IGNvbXB1dGVkIG9uY2UsIGFuZCB0aGVuIGNhY2hlZC5cbiAqIEBwcml2YXRlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYWNoZSh0YXJnZXQsIGtleSwgZGVzY3JpcHRvcikge1xuICBpZiAoZGVzY3JpcHRvci5nZXQpIHtcbiAgICBsZXQgZ2V0ID0gZGVzY3JpcHRvci5nZXQ7XG4gICAgZGVzY3JpcHRvci5nZXQgPSBmdW5jdGlvbigpIHtcbiAgICAgIGxldCB2YWx1ZSA9IGdldC5jYWxsKHRoaXMpO1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIGtleSwgeyB2YWx1ZSB9KTtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuICB9IGVsc2UgaWYgKHR5cGVvZiBkZXNjcmlwdG9yLnZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgbGV0IGZuID0gZGVzY3JpcHRvci52YWx1ZTtcblxuICAgIHJldHVybiB7XG4gICAgICBnZXQoKSB7XG4gICAgICAgIGxldCBjYWNoZSA9IG5ldyBNYXA7XG4gICAgICAgIGZ1bmN0aW9uIG1lbW9pemVkKC4uLmFyZ3MpIHtcbiAgICAgICAgICBsZXQga2V5ID0gYXJncy5sZW5ndGggPiAwID8gYXJnc1swXSA6ICd2YWx1ZSc7XG4gICAgICAgICAgaWYgKGNhY2hlLmhhcyhrZXkpKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FjaGUuZ2V0KGtleSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGV0IHJlc3VsdCA9IGZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICAgIGNhY2hlLnNldChrZXksIHJlc3VsdCk7XG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfTtcblxuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywga2V5LCB7dmFsdWU6IG1lbW9pemVkfSk7XG4gICAgICAgIHJldHVybiBtZW1vaXplZDtcbiAgICAgIH1cbiAgICB9O1xuICB9XG59XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgVGFibGVzIGZyb20gJy4vJztcblxubGV0IFRhYmxlRW50cnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgICAgICBuZXcgci5TdHJpbmcoNCksXG4gIGNoZWNrU3VtOiAgIHIudWludDMyLFxuICBvZmZzZXQ6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDMyLCAndm9pZCcsIHsgdHlwZTogJ2dsb2JhbCcgfSksXG4gIGxlbmd0aDogICAgIHIudWludDMyXG59KTtcblxubGV0IERpcmVjdG9yeSA9IG5ldyByLlN0cnVjdCh7XG4gIHRhZzogICAgICAgICAgICBuZXcgci5TdHJpbmcoNCksXG4gIG51bVRhYmxlczogICAgICByLnVpbnQxNixcbiAgc2VhcmNoUmFuZ2U6ICAgIHIudWludDE2LFxuICBlbnRyeVNlbGVjdG9yOiAgci51aW50MTYsXG4gIHJhbmdlU2hpZnQ6ICAgICByLnVpbnQxNixcbiAgdGFibGVzOiAgICAgICAgIG5ldyByLkFycmF5KFRhYmxlRW50cnksICdudW1UYWJsZXMnKVxufSk7XG5cbkRpcmVjdG9yeS5wcm9jZXNzID0gZnVuY3Rpb24oKSB7XG4gIGxldCB0YWJsZXMgPSB7fTtcbiAgZm9yIChsZXQgdGFibGUgb2YgdGhpcy50YWJsZXMpIHtcbiAgICB0YWJsZXNbdGFibGUudGFnXSA9IHRhYmxlO1xuICB9XG5cbiAgdGhpcy50YWJsZXMgPSB0YWJsZXM7XG59O1xuXG5EaXJlY3RvcnkucHJlRW5jb2RlID0gZnVuY3Rpb24oKSB7XG4gIGlmICghQXJyYXkuaXNBcnJheSh0aGlzLnRhYmxlcykpIHtcbiAgICBsZXQgdGFibGVzID0gW107XG4gICAgZm9yIChsZXQgdGFnIGluIHRoaXMudGFibGVzKSB7XG4gICAgICBsZXQgdGFibGUgPSB0aGlzLnRhYmxlc1t0YWddO1xuICAgICAgaWYgKHRhYmxlKSB7XG4gICAgICAgIHRhYmxlcy5wdXNoKHtcbiAgICAgICAgICB0YWc6IHRhZyxcbiAgICAgICAgICBjaGVja1N1bTogMCxcbiAgICAgICAgICBvZmZzZXQ6IG5ldyByLlZvaWRQb2ludGVyKFRhYmxlc1t0YWddLCB0YWJsZSksXG4gICAgICAgICAgbGVuZ3RoOiBUYWJsZXNbdGFnXS5zaXplKHRhYmxlKVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgdGhpcy50YWJsZXMgPSB0YWJsZXM7XG4gIH1cblxuICB0aGlzLnRhZyA9ICd0cnVlJztcbiAgdGhpcy5udW1UYWJsZXMgPSB0aGlzLnRhYmxlcy5sZW5ndGg7XG5cbiAgbGV0IG1heEV4cG9uZW50Rm9yMiA9IE1hdGguZmxvb3IoKE1hdGgubG9nKHRoaXMubnVtVGFibGVzKSAvIE1hdGguTE4yKSk7XG4gIGxldCBtYXhQb3dlck9mMiA9IE1hdGgucG93KDIsIG1heEV4cG9uZW50Rm9yMik7XG5cbiAgdGhpcy5zZWFyY2hSYW5nZSA9ICBtYXhQb3dlck9mMiAqIDE2O1xuICB0aGlzLmVudHJ5U2VsZWN0b3IgPSBNYXRoLmxvZyhtYXhQb3dlck9mMikgLyBNYXRoLkxOMjtcbiAgdGhpcy5yYW5nZVNoaWZ0ID0gdGhpcy5udW1UYWJsZXMgKiAxNiAtIHRoaXMuc2VhcmNoUmFuZ2U7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBEaXJlY3Rvcnk7XG4iLCAibGV0IHRhYmxlcyA9IHt9O1xuZXhwb3J0IGRlZmF1bHQgdGFibGVzO1xuXG4vLyBSZXF1aXJlZCBUYWJsZXNcbmltcG9ydCBjbWFwIGZyb20gJy4vY21hcCc7XG5pbXBvcnQgaGVhZCBmcm9tICcuL2hlYWQnO1xuaW1wb3J0IGhoZWEgZnJvbSAnLi9oaGVhJztcbmltcG9ydCBobXR4IGZyb20gJy4vaG10eCc7XG5pbXBvcnQgbWF4cCBmcm9tICcuL21heHAnO1xuaW1wb3J0IG5hbWUgZnJvbSAnLi9uYW1lJztcbmltcG9ydCBPUzIgZnJvbSAnLi9PUzInO1xuaW1wb3J0IHBvc3QgZnJvbSAnLi9wb3N0JztcblxudGFibGVzLmNtYXAgPSBjbWFwO1xudGFibGVzLmhlYWQgPSBoZWFkO1xudGFibGVzLmhoZWEgPSBoaGVhO1xudGFibGVzLmhtdHggPSBobXR4O1xudGFibGVzLm1heHAgPSBtYXhwO1xudGFibGVzLm5hbWUgPSBuYW1lO1xudGFibGVzWydPUy8yJ10gPSBPUzI7XG50YWJsZXMucG9zdCA9IHBvc3Q7XG5cblxuLy8gVHJ1ZVR5cGUgT3V0bGluZXNcbmltcG9ydCBjdnQgZnJvbSAnLi9jdnQnO1xuaW1wb3J0IGZwZ20gZnJvbSAnLi9mcGdtJztcbmltcG9ydCBsb2NhIGZyb20gJy4vbG9jYSc7XG5pbXBvcnQgcHJlcCBmcm9tICcuL3ByZXAnO1xuaW1wb3J0IGdseWYgZnJvbSAnLi9nbHlmJztcblxudGFibGVzLmZwZ20gPSBmcGdtO1xudGFibGVzLmxvY2EgPSBsb2NhO1xudGFibGVzLnByZXAgPSBwcmVwO1xudGFibGVzWydjdnQgJ10gPSBjdnQ7XG50YWJsZXMuZ2x5ZiA9IGdseWY7XG5cblxuLy8gUG9zdFNjcmlwdCBPdXRsaW5lc1xuaW1wb3J0IENGRkZvbnQgZnJvbSAnLi4vY2ZmL0NGRkZvbnQnO1xuaW1wb3J0IFZPUkcgZnJvbSAnLi9WT1JHJztcblxudGFibGVzWydDRkYgJ10gPSBDRkZGb250O1xudGFibGVzWydDRkYyJ10gPSBDRkZGb250O1xudGFibGVzLlZPUkcgPSBWT1JHO1xuXG5cbi8vIEJpdG1hcCBHbHlwaHNcbmltcG9ydCBFQkxDIGZyb20gJy4vRUJMQyc7XG5pbXBvcnQgc2JpeCBmcm9tICcuL3NiaXgnO1xuaW1wb3J0IENPTFIgZnJvbSAnLi9DT0xSJztcbmltcG9ydCBDUEFMIGZyb20gJy4vQ1BBTCc7XG5cbnRhYmxlcy5FQkxDID0gRUJMQztcbnRhYmxlcy5DQkxDID0gdGFibGVzLkVCTEM7XG50YWJsZXMuc2JpeCA9IHNiaXg7XG50YWJsZXMuQ09MUiA9IENPTFI7XG50YWJsZXMuQ1BBTCA9IENQQUw7XG5cblxuLy8gQWR2YW5jZWQgT3BlblR5cGUgVGFibGVzXG5pbXBvcnQgQkFTRSBmcm9tICcuL0JBU0UnO1xuaW1wb3J0IEdERUYgZnJvbSAnLi9HREVGJztcbmltcG9ydCBHUE9TIGZyb20gJy4vR1BPUyc7XG5pbXBvcnQgR1NVQiBmcm9tICcuL0dTVUInO1xuaW1wb3J0IEpTVEYgZnJvbSAnLi9KU1RGJztcblxudGFibGVzLkJBU0UgPSBCQVNFO1xudGFibGVzLkdERUYgPSBHREVGO1xudGFibGVzLkdQT1MgPSBHUE9TO1xudGFibGVzLkdTVUIgPSBHU1VCO1xudGFibGVzLkpTVEYgPSBKU1RGO1xuXG4vLyBPcGVuVHlwZSB2YXJpYXRpb25zIHRhYmxlc1xuaW1wb3J0IEhWQVIgZnJvbSAnLi9IVkFSJztcblxudGFibGVzLkhWQVIgPSBIVkFSO1xuXG4vLyBPdGhlciBPcGVuVHlwZSBUYWJsZXNcbmltcG9ydCBEU0lHIGZyb20gJy4vRFNJRyc7XG5pbXBvcnQgZ2FzcCBmcm9tICcuL2dhc3AnO1xuaW1wb3J0IGhkbXggZnJvbSAnLi9oZG14JztcbmltcG9ydCBrZXJuIGZyb20gJy4va2Vybic7XG5pbXBvcnQgTFRTSCBmcm9tICcuL0xUU0gnO1xuaW1wb3J0IFBDTFQgZnJvbSAnLi9QQ0xUJztcbmltcG9ydCBWRE1YIGZyb20gJy4vVkRNWCc7XG5pbXBvcnQgdmhlYSBmcm9tICcuL3ZoZWEnO1xuaW1wb3J0IHZtdHggZnJvbSAnLi92bXR4JztcblxudGFibGVzLkRTSUcgPSBEU0lHO1xudGFibGVzLmdhc3AgPSBnYXNwO1xudGFibGVzLmhkbXggPSBoZG14O1xudGFibGVzLmtlcm4gPSBrZXJuO1xudGFibGVzLkxUU0ggPSBMVFNIO1xudGFibGVzLlBDTFQgPSBQQ0xUO1xudGFibGVzLlZETVggPSBWRE1YO1xudGFibGVzLnZoZWEgPSB2aGVhO1xudGFibGVzLnZtdHggPSB2bXR4O1xuXG5cbi8vIEFwcGxlIEFkdmFuY2VkIFR5cG9ncmFwaHkgVGFibGVzXG5pbXBvcnQgYXZhciBmcm9tICcuL2F2YXInO1xuaW1wb3J0IGJzbG4gZnJvbSAnLi9ic2xuJztcbmltcG9ydCBmZWF0IGZyb20gJy4vZmVhdCc7XG5pbXBvcnQgZnZhciBmcm9tICcuL2Z2YXInO1xuaW1wb3J0IGd2YXIgZnJvbSAnLi9ndmFyJztcbmltcG9ydCBqdXN0IGZyb20gJy4vanVzdCc7XG5pbXBvcnQgbW9yeCBmcm9tICcuL21vcngnO1xuaW1wb3J0IG9wYmQgZnJvbSAnLi9vcGJkJztcblxudGFibGVzLmF2YXIgPSBhdmFyO1xudGFibGVzLmJzbG4gPSBic2xuO1xudGFibGVzLmZlYXQgPSBmZWF0O1xudGFibGVzLmZ2YXIgPSBmdmFyO1xudGFibGVzLmd2YXIgPSBndmFyO1xudGFibGVzLmp1c3QgPSBqdXN0O1xudGFibGVzLm1vcnggPSBtb3J4O1xudGFibGVzLm9wYmQgPSBvcGJkO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgU3ViSGVhZGVyID0gbmV3IHIuU3RydWN0KHtcbiAgZmlyc3RDb2RlOiAgICAgIHIudWludDE2LFxuICBlbnRyeUNvdW50OiAgICAgci51aW50MTYsXG4gIGlkRGVsdGE6ICAgICAgICByLmludDE2LFxuICBpZFJhbmdlT2Zmc2V0OiAgci51aW50MTZcbn0pO1xuXG5sZXQgQ21hcEdyb3VwID0gbmV3IHIuU3RydWN0KHtcbiAgc3RhcnRDaGFyQ29kZTogIHIudWludDMyLFxuICBlbmRDaGFyQ29kZTogICAgci51aW50MzIsXG4gIGdseXBoSUQ6ICAgICAgICByLnVpbnQzMlxufSk7XG5cbmxldCBVbmljb2RlVmFsdWVSYW5nZSA9IG5ldyByLlN0cnVjdCh7XG4gIHN0YXJ0VW5pY29kZVZhbHVlOiAgci51aW50MjQsXG4gIGFkZGl0aW9uYWxDb3VudDogICAgci51aW50OFxufSk7XG5cbmxldCBVVlNNYXBwaW5nID0gbmV3IHIuU3RydWN0KHtcbiAgdW5pY29kZVZhbHVlOiByLnVpbnQyNCxcbiAgZ2x5cGhJRDogICAgICByLnVpbnQxNlxufSk7XG5cbmxldCBEZWZhdWx0VVZTID0gbmV3IHIuQXJyYXkoVW5pY29kZVZhbHVlUmFuZ2UsIHIudWludDMyKTtcbmxldCBOb25EZWZhdWx0VVZTID0gbmV3IHIuQXJyYXkoVVZTTWFwcGluZywgci51aW50MzIpO1xuXG5sZXQgVmFyU2VsZWN0b3JSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICB2YXJTZWxlY3RvcjogICAgci51aW50MjQsXG4gIGRlZmF1bHRVVlM6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDMyLCBEZWZhdWx0VVZTLCB7dHlwZTogJ3BhcmVudCd9KSxcbiAgbm9uRGVmYXVsdFVWUzogIG5ldyByLlBvaW50ZXIoci51aW50MzIsIE5vbkRlZmF1bHRVVlMsIHt0eXBlOiAncGFyZW50J30pXG59KTtcblxubGV0IENtYXBTdWJ0YWJsZSA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAwOiB7IC8vIEJ5dGUgZW5jb2RpbmdcbiAgICBsZW5ndGg6ICAgICByLnVpbnQxNiwgICAvLyBUb3RhbCB0YWJsZSBsZW5ndGggaW4gYnl0ZXMgKHNldCB0byAyNjIgZm9yIGZvcm1hdCAwKVxuICAgIGxhbmd1YWdlOiAgIHIudWludDE2LCAgIC8vIExhbmd1YWdlIGNvZGUgZm9yIHRoaXMgZW5jb2Rpbmcgc3VidGFibGUsIG9yIHplcm8gaWYgbGFuZ3VhZ2UtaW5kZXBlbmRlbnRcbiAgICBjb2RlTWFwOiAgICBuZXcgci5MYXp5QXJyYXkoci51aW50OCwgMjU2KVxuICB9LFxuXG4gIDI6IHsgLy8gSGlnaC1ieXRlIG1hcHBpbmcgKENKSylcbiAgICBsZW5ndGg6ICAgICAgICAgICByLnVpbnQxNixcbiAgICBsYW5ndWFnZTogICAgICAgICByLnVpbnQxNixcbiAgICBzdWJIZWFkZXJLZXlzOiAgICBuZXcgci5BcnJheShyLnVpbnQxNiwgMjU2KSxcbiAgICBzdWJIZWFkZXJDb3VudDogICB0ID0+IE1hdGgubWF4LmFwcGx5KE1hdGgsIHQuc3ViSGVhZGVyS2V5cyksXG4gICAgc3ViSGVhZGVyczogICAgICAgbmV3IHIuTGF6eUFycmF5KFN1YkhlYWRlciwgJ3N1YkhlYWRlckNvdW50JyksXG4gICAgZ2x5cGhJbmRleEFycmF5OiAgbmV3IHIuTGF6eUFycmF5KHIudWludDE2LCAnc3ViSGVhZGVyQ291bnQnKVxuICB9LFxuXG4gIDQ6IHsgLy8gU2VnbWVudCBtYXBwaW5nIHRvIGRlbHRhIHZhbHVlc1xuICAgIGxlbmd0aDogICAgICAgICAgIHIudWludDE2LCAgICAgICAgICAgICAgLy8gVG90YWwgdGFibGUgbGVuZ3RoIGluIGJ5dGVzXG4gICAgbGFuZ3VhZ2U6ICAgICAgICAgci51aW50MTYsICAgICAgICAgICAgICAvLyBMYW5ndWFnZSBjb2RlXG4gICAgc2VnQ291bnRYMjogICAgICAgci51aW50MTYsXG4gICAgc2VnQ291bnQ6ICAgICAgICAgdCA9PiB0LnNlZ0NvdW50WDIgPj4gMSxcbiAgICBzZWFyY2hSYW5nZTogICAgICByLnVpbnQxNixcbiAgICBlbnRyeVNlbGVjdG9yOiAgICByLnVpbnQxNixcbiAgICByYW5nZVNoaWZ0OiAgICAgICByLnVpbnQxNixcbiAgICBlbmRDb2RlOiAgICAgICAgICBuZXcgci5MYXp5QXJyYXkoci51aW50MTYsICdzZWdDb3VudCcpLFxuICAgIHJlc2VydmVkUGFkOiAgICAgIG5ldyByLlJlc2VydmVkKHIudWludDE2KSwgICAgICAgLy8gVGhpcyB2YWx1ZSBzaG91bGQgYmUgemVyb1xuICAgIHN0YXJ0Q29kZTogICAgICAgIG5ldyByLkxhenlBcnJheShyLnVpbnQxNiwgJ3NlZ0NvdW50JyksXG4gICAgaWREZWx0YTogICAgICAgICAgbmV3IHIuTGF6eUFycmF5KHIuaW50MTYsICdzZWdDb3VudCcpLFxuICAgIGlkUmFuZ2VPZmZzZXQ6ICAgIG5ldyByLkxhenlBcnJheShyLnVpbnQxNiwgJ3NlZ0NvdW50JyksXG4gICAgZ2x5cGhJbmRleEFycmF5OiAgbmV3IHIuTGF6eUFycmF5KHIudWludDE2LCB0ID0+ICh0Lmxlbmd0aCAtIHQuX2N1cnJlbnRPZmZzZXQpIC8gMilcbiAgfSxcblxuICA2OiB7IC8vIFRyaW1tZWQgdGFibGVcbiAgICBsZW5ndGg6ICAgICAgICAgci51aW50MTYsXG4gICAgbGFuZ3VhZ2U6ICAgICAgIHIudWludDE2LFxuICAgIGZpcnN0Q29kZTogICAgICByLnVpbnQxNixcbiAgICBlbnRyeUNvdW50OiAgICAgci51aW50MTYsXG4gICAgZ2x5cGhJbmRpY2VzOiAgIG5ldyByLkxhenlBcnJheShyLnVpbnQxNiwgJ2VudHJ5Q291bnQnKVxuICB9LFxuXG4gIDg6IHsgLy8gbWl4ZWQgMTYtYml0IGFuZCAzMi1iaXQgY292ZXJhZ2VcbiAgICByZXNlcnZlZDogbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICAgIGxlbmd0aDogICByLnVpbnQzMixcbiAgICBsYW5ndWFnZTogci51aW50MTYsXG4gICAgaXMzMjogICAgIG5ldyByLkxhenlBcnJheShyLnVpbnQ4LCA4MTkyKSxcbiAgICBuR3JvdXBzOiAgci51aW50MzIsXG4gICAgZ3JvdXBzOiAgIG5ldyByLkxhenlBcnJheShDbWFwR3JvdXAsICduR3JvdXBzJylcbiAgfSxcblxuICAxMDogeyAvLyBUcmltbWVkIEFycmF5XG4gICAgcmVzZXJ2ZWQ6ICAgICAgIG5ldyByLlJlc2VydmVkKHIudWludDE2KSxcbiAgICBsZW5ndGg6ICAgICAgICAgci51aW50MzIsXG4gICAgbGFuZ3VhZ2U6ICAgICAgIHIudWludDMyLFxuICAgIGZpcnN0Q29kZTogICAgICByLnVpbnQzMixcbiAgICBlbnRyeUNvdW50OiAgICAgci51aW50MzIsXG4gICAgZ2x5cGhJbmRpY2VzOiAgIG5ldyByLkxhenlBcnJheShyLnVpbnQxNiwgJ251bUNoYXJzJylcbiAgfSxcblxuICAxMjogeyAvLyBTZWdtZW50ZWQgY292ZXJhZ2VcbiAgICByZXNlcnZlZDogbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICAgIGxlbmd0aDogICByLnVpbnQzMixcbiAgICBsYW5ndWFnZTogci51aW50MzIsXG4gICAgbkdyb3VwczogIHIudWludDMyLFxuICAgIGdyb3VwczogICBuZXcgci5MYXp5QXJyYXkoQ21hcEdyb3VwLCAnbkdyb3VwcycpXG4gIH0sXG5cbiAgMTM6IHsgLy8gTWFueS10by1vbmUgcmFuZ2UgbWFwcGluZ3MgKHNhbWUgYXMgMTIgZXhjZXB0IGZvciBncm91cC5zdGFydEdseXBoSUQpXG4gICAgcmVzZXJ2ZWQ6IG5ldyByLlJlc2VydmVkKHIudWludDE2KSxcbiAgICBsZW5ndGg6ICAgci51aW50MzIsXG4gICAgbGFuZ3VhZ2U6IHIudWludDMyLFxuICAgIG5Hcm91cHM6ICByLnVpbnQzMixcbiAgICBncm91cHM6ICAgbmV3IHIuTGF6eUFycmF5KENtYXBHcm91cCwgJ25Hcm91cHMnKVxuICB9LFxuXG4gIDE0OiB7IC8vIFVuaWNvZGUgVmFyaWF0aW9uIFNlcXVlbmNlc1xuICAgIGxlbmd0aDogICAgICAgci51aW50MzIsXG4gICAgbnVtUmVjb3JkczogICByLnVpbnQzMixcbiAgICB2YXJTZWxlY3RvcnM6IG5ldyByLkxhenlBcnJheShWYXJTZWxlY3RvclJlY29yZCwgJ251bVJlY29yZHMnKVxuICB9XG59KTtcblxubGV0IENtYXBFbnRyeSA9IG5ldyByLlN0cnVjdCh7XG4gIHBsYXRmb3JtSUQ6ICByLnVpbnQxNiwgIC8vIFBsYXRmb3JtIGlkZW50aWZpZXJcbiAgZW5jb2RpbmdJRDogIHIudWludDE2LCAgLy8gUGxhdGZvcm0tc3BlY2lmaWMgZW5jb2RpbmcgaWRlbnRpZmllclxuICB0YWJsZTogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgQ21hcFN1YnRhYmxlLCB7dHlwZTogJ3BhcmVudCcsIGxhenk6IHRydWV9KVxufSk7XG5cbi8vIGNoYXJhY3RlciB0byBnbHlwaCBtYXBwaW5nXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgIHIudWludDE2LFxuICBudW1TdWJ0YWJsZXM6IHIudWludDE2LFxuICB0YWJsZXM6ICAgICAgIG5ldyByLkFycmF5KENtYXBFbnRyeSwgJ251bVN1YnRhYmxlcycpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gZm9udCBoZWFkZXJcbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246ICAgICAgICAgICAgci5pbnQzMiwgICAgICAgICAgICAgICAgICAgLy8gMHgwMDAxMDAwMCAodmVyc2lvbiAxLjApXG4gIHJldmlzaW9uOiAgICAgICAgICAgci5pbnQzMiwgICAgICAgICAgICAgICAgICAgLy8gc2V0IGJ5IGZvbnQgbWFudWZhY3R1cmVyXG4gIGNoZWNrU3VtQWRqdXN0bWVudDogci51aW50MzIsXG4gIG1hZ2ljTnVtYmVyOiAgICAgICAgci51aW50MzIsICAgICAgICAgICAgICAgICAgLy8gc2V0IHRvIDB4NUYwRjNDRjVcbiAgZmxhZ3M6ICAgICAgICAgICAgICByLnVpbnQxNixcbiAgdW5pdHNQZXJFbTogICAgICAgICByLnVpbnQxNiwgICAgICAgICAgICAgICAgICAvLyByYW5nZSBmcm9tIDY0IHRvIDE2Mzg0XG4gIGNyZWF0ZWQ6ICAgICAgICAgICAgbmV3IHIuQXJyYXkoci5pbnQzMiwgMiksXG4gIG1vZGlmaWVkOiAgICAgICAgICAgbmV3IHIuQXJyYXkoci5pbnQzMiwgMiksXG4gIHhNaW46ICAgICAgICAgICAgICAgci5pbnQxNiwgICAgICAgICAgICAgICAgICAgLy8gZm9yIGFsbCBnbHlwaCBib3VuZGluZyBib3hlc1xuICB5TWluOiAgICAgICAgICAgICAgIHIuaW50MTYsICAgICAgICAgICAgICAgICAgIC8vIGZvciBhbGwgZ2x5cGggYm91bmRpbmcgYm94ZXNcbiAgeE1heDogICAgICAgICAgICAgICByLmludDE2LCAgICAgICAgICAgICAgICAgICAvLyBmb3IgYWxsIGdseXBoIGJvdW5kaW5nIGJveGVzXG4gIHlNYXg6ICAgICAgICAgICAgICAgci5pbnQxNiwgICAgICAgICAgICAgICAgICAgLy8gZm9yIGFsbCBnbHlwaCBib3VuZGluZyBib3hlc1xuICBtYWNTdHlsZTogICAgICAgICAgIG5ldyByLkJpdGZpZWxkKHIudWludDE2LCBbXG4gICAgJ2JvbGQnLCAnaXRhbGljJywgJ3VuZGVybGluZScsICdvdXRsaW5lJyxcbiAgICAnc2hhZG93JywgJ2NvbmRlbnNlZCcsICdleHRlbmRlZCdcbiAgXSksXG4gIGxvd2VzdFJlY1BQRU06ICAgICAgci51aW50MTYsICAgICAgICAgICAgICAgICAgLy8gc21hbGxlc3QgcmVhZGFibGUgc2l6ZSBpbiBwaXhlbHNcbiAgZm9udERpcmVjdGlvbkhpbnQ6ICByLmludDE2LFxuICBpbmRleFRvTG9jRm9ybWF0OiAgIHIuaW50MTYsICAgICAgICAgICAgICAgICAgIC8vIDAgZm9yIHNob3J0IG9mZnNldHMsIDEgZm9yIGxvbmdcbiAgZ2x5cGhEYXRhRm9ybWF0OiAgICByLmludDE2ICAgICAgICAgICAgICAgICAgICAvLyAwIGZvciBjdXJyZW50IGZvcm1hdFxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIGhvcml6b250YWwgaGVhZGVyXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgICAgICAgICAgci5pbnQzMixcbiAgYXNjZW50OiAgICAgICAgICAgICAgIHIuaW50MTYsICAgLy8gRGlzdGFuY2UgZnJvbSBiYXNlbGluZSBvZiBoaWdoZXN0IGFzY2VuZGVyXG4gIGRlc2NlbnQ6ICAgICAgICAgICAgICByLmludDE2LCAgIC8vIERpc3RhbmNlIGZyb20gYmFzZWxpbmUgb2YgbG93ZXN0IGRlc2NlbmRlclxuICBsaW5lR2FwOiAgICAgICAgICAgICAgci5pbnQxNiwgICAvLyBUeXBvZ3JhcGhpYyBsaW5lIGdhcFxuICBhZHZhbmNlV2lkdGhNYXg6ICAgICAgci51aW50MTYsICAvLyBNYXhpbXVtIGFkdmFuY2Ugd2lkdGggdmFsdWUgaW4gJ2htdHgnIHRhYmxlXG4gIG1pbkxlZnRTaWRlQmVhcmluZzogICByLmludDE2LCAgIC8vIE1heGltdW0gYWR2YW5jZSB3aWR0aCB2YWx1ZSBpbiAnaG10eCcgdGFibGVcbiAgbWluUmlnaHRTaWRlQmVhcmluZzogIHIuaW50MTYsICAgLy8gTWluaW11bSByaWdodCBzaWRlYmVhcmluZyB2YWx1ZVxuICB4TWF4RXh0ZW50OiAgICAgICAgICAgci5pbnQxNixcbiAgY2FyZXRTbG9wZVJpc2U6ICAgICAgIHIuaW50MTYsICAgLy8gVXNlZCB0byBjYWxjdWxhdGUgdGhlIHNsb3BlIG9mIHRoZSBjdXJzb3IgKHJpc2UvcnVuKTsgMSBmb3IgdmVydGljYWxcbiAgY2FyZXRTbG9wZVJ1bjogICAgICAgIHIuaW50MTYsICAgLy8gMCBmb3IgdmVydGljYWxcbiAgY2FyZXRPZmZzZXQ6ICAgICAgICAgIHIuaW50MTYsICAgLy8gU2V0IHRvIDAgZm9yIG5vbi1zbGFudGVkIGZvbnRzXG4gIHJlc2VydmVkOiAgICAgICAgICAgICBuZXcgci5SZXNlcnZlZChyLmludDE2LCA0KSxcbiAgbWV0cmljRGF0YUZvcm1hdDogICAgIHIuaW50MTYsICAgLy8gMCBmb3IgY3VycmVudCBmb3JtYXRcbiAgbnVtYmVyT2ZNZXRyaWNzOiAgICAgIHIudWludDE2ICAgLy8gTnVtYmVyIG9mIGFkdmFuY2Ugd2lkdGhzIGluICdobXR4JyB0YWJsZVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBIbXR4RW50cnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICBhZHZhbmNlOiByLnVpbnQxNixcbiAgYmVhcmluZzogci5pbnQxNlxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIG1ldHJpY3M6ICAgIG5ldyByLkxhenlBcnJheShIbXR4RW50cnksIHQgPT4gdC5wYXJlbnQuaGhlYS5udW1iZXJPZk1ldHJpY3MpLFxuICBiZWFyaW5nczogICBuZXcgci5MYXp5QXJyYXkoci5pbnQxNiwgdCA9PiB0LnBhcmVudC5tYXhwLm51bUdseXBocyAtIHQucGFyZW50LmhoZWEubnVtYmVyT2ZNZXRyaWNzKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIG1heGl1bXVtIHByb2ZpbGVcbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246ICAgICAgICAgICAgICAgIHIuaW50MzIsXG4gIG51bUdseXBoczogICAgICAgICAgICAgIHIudWludDE2LCAgLy8gVGhlIG51bWJlciBvZiBnbHlwaHMgaW4gdGhlIGZvbnRcbiAgbWF4UG9pbnRzOiAgICAgICAgICAgICAgci51aW50MTYsICAvLyBNYXhpbXVtIHBvaW50cyBpbiBhIG5vbi1jb21wb3NpdGUgZ2x5cGhcbiAgbWF4Q29udG91cnM6ICAgICAgICAgICAgci51aW50MTYsICAvLyBNYXhpbXVtIGNvbnRvdXJzIGluIGEgbm9uLWNvbXBvc2l0ZSBnbHlwaFxuICBtYXhDb21wb25lbnRQb2ludHM6ICAgICByLnVpbnQxNiwgIC8vIE1heGltdW0gcG9pbnRzIGluIGEgY29tcG9zaXRlIGdseXBoXG4gIG1heENvbXBvbmVudENvbnRvdXJzOiAgIHIudWludDE2LCAgLy8gTWF4aW11bSBjb250b3VycyBpbiBhIGNvbXBvc2l0ZSBnbHlwaFxuICBtYXhab25lczogICAgICAgICAgICAgICByLnVpbnQxNiwgIC8vIDEgaWYgaW5zdHJ1Y3Rpb25zIGRvIG5vdCB1c2UgdGhlIHR3aWxpZ2h0IHpvbmUsIDIgb3RoZXJ3aXNlXG4gIG1heFR3aWxpZ2h0UG9pbnRzOiAgICAgIHIudWludDE2LCAgLy8gTWF4aW11bSBwb2ludHMgdXNlZCBpbiBaMFxuICBtYXhTdG9yYWdlOiAgICAgICAgICAgICByLnVpbnQxNiwgIC8vIE51bWJlciBvZiBTdG9yYWdlIEFyZWEgbG9jYXRpb25zXG4gIG1heEZ1bmN0aW9uRGVmczogICAgICAgIHIudWludDE2LCAgLy8gTnVtYmVyIG9mIEZERUZzXG4gIG1heEluc3RydWN0aW9uRGVmczogICAgIHIudWludDE2LCAgLy8gTnVtYmVyIG9mIElERUZzXG4gIG1heFN0YWNrRWxlbWVudHM6ICAgICAgIHIudWludDE2LCAgLy8gTWF4aW11bSBzdGFjayBkZXB0aFxuICBtYXhTaXplT2ZJbnN0cnVjdGlvbnM6ICByLnVpbnQxNiwgIC8vIE1heGltdW0gYnl0ZSBjb3VudCBmb3IgZ2x5cGggaW5zdHJ1Y3Rpb25zXG4gIG1heENvbXBvbmVudEVsZW1lbnRzOiAgIHIudWludDE2LCAgLy8gTWF4aW11bSBudW1iZXIgb2YgY29tcG9uZW50cyByZWZlcmVuY2VkIGF0IOKAnHRvcCBsZXZlbOKAnSBmb3IgYW55IGNvbXBvc2l0ZSBnbHlwaFxuICBtYXhDb21wb25lbnREZXB0aDogICAgICByLnVpbnQxNiAgIC8vIE1heGltdW0gbGV2ZWxzIG9mIHJlY3Vyc2lvbjsgMSBmb3Igc2ltcGxlIGNvbXBvbmVudHNcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHtnZXRFbmNvZGluZywgTEFOR1VBR0VTfSBmcm9tICcuLi9lbmNvZGluZ3MnO1xuXG5sZXQgTmFtZVJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHBsYXRmb3JtSUQ6IHIudWludDE2LFxuICBlbmNvZGluZ0lEOiByLnVpbnQxNixcbiAgbGFuZ3VhZ2VJRDogci51aW50MTYsXG4gIG5hbWVJRDogICAgIHIudWludDE2LFxuICBsZW5ndGg6ICAgICByLnVpbnQxNixcbiAgc3RyaW5nOiAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNixcbiAgICBuZXcgci5TdHJpbmcoJ2xlbmd0aCcsIHQgPT4gZ2V0RW5jb2RpbmcodC5wbGF0Zm9ybUlELCB0LmVuY29kaW5nSUQsIHQubGFuZ3VhZ2VJRCkpLFxuICAgIHsgdHlwZTogJ3BhcmVudCcsIHJlbGF0aXZlVG86IGN0eCA9PiBjdHgucGFyZW50LnN0cmluZ09mZnNldCwgYWxsb3dOdWxsOiBmYWxzZSB9XG4gIClcbn0pO1xuXG5sZXQgTGFuZ1RhZ1JlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIGxlbmd0aDogIHIudWludDE2LFxuICB0YWc6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBuZXcgci5TdHJpbmcoJ2xlbmd0aCcsICd1dGYxNmJlJyksIHt0eXBlOiAncGFyZW50JywgcmVsYXRpdmVUbzogY3R4ID0+IGN0eC5zdHJpbmdPZmZzZXR9KVxufSk7XG5cbnZhciBOYW1lVGFibGUgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMDoge1xuICAgIGNvdW50OiAgICAgICAgICByLnVpbnQxNixcbiAgICBzdHJpbmdPZmZzZXQ6ICAgci51aW50MTYsXG4gICAgcmVjb3JkczogICAgICAgIG5ldyByLkFycmF5KE5hbWVSZWNvcmQsICdjb3VudCcpXG4gIH0sXG4gIDE6IHtcbiAgICBjb3VudDogICAgICAgICAgci51aW50MTYsXG4gICAgc3RyaW5nT2Zmc2V0OiAgIHIudWludDE2LFxuICAgIHJlY29yZHM6ICAgICAgICBuZXcgci5BcnJheShOYW1lUmVjb3JkLCAnY291bnQnKSxcbiAgICBsYW5nVGFnQ291bnQ6ICAgci51aW50MTYsXG4gICAgbGFuZ1RhZ3M6ICAgICAgIG5ldyByLkFycmF5KExhbmdUYWdSZWNvcmQsICdsYW5nVGFnQ291bnQnKVxuICB9XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgTmFtZVRhYmxlO1xuXG5jb25zdCBOQU1FUyA9IFtcbiAgJ2NvcHlyaWdodCcsXG4gICdmb250RmFtaWx5JyxcbiAgJ2ZvbnRTdWJmYW1pbHknLFxuICAndW5pcXVlU3ViZmFtaWx5JyxcbiAgJ2Z1bGxOYW1lJyxcbiAgJ3ZlcnNpb24nLFxuICAncG9zdHNjcmlwdE5hbWUnLCAvLyBOb3RlOiBBIGZvbnQgbWF5IGhhdmUgb25seSBvbmUgUG9zdFNjcmlwdCBuYW1lIGFuZCB0aGF0IG5hbWUgbXVzdCBiZSBBU0NJSS5cbiAgJ3RyYWRlbWFyaycsXG4gICdtYW51ZmFjdHVyZXInLFxuICAnZGVzaWduZXInLFxuICAnZGVzY3JpcHRpb24nLFxuICAndmVuZG9yVVJMJyxcbiAgJ2Rlc2lnbmVyVVJMJyxcbiAgJ2xpY2Vuc2UnLFxuICAnbGljZW5zZVVSTCcsXG4gIG51bGwsIC8vIHJlc2VydmVkXG4gICdwcmVmZXJyZWRGYW1pbHknLFxuICAncHJlZmVycmVkU3ViZmFtaWx5JyxcbiAgJ2NvbXBhdGlibGVGdWxsJyxcbiAgJ3NhbXBsZVRleHQnLFxuICAncG9zdHNjcmlwdENJREZvbnROYW1lJyxcbiAgJ3d3c0ZhbWlseU5hbWUnLFxuICAnd3dzU3ViZmFtaWx5TmFtZSdcbl07XG5cbk5hbWVUYWJsZS5wcm9jZXNzID0gZnVuY3Rpb24oc3RyZWFtKSB7XG4gIHZhciByZWNvcmRzID0ge307XG4gIGZvciAobGV0IHJlY29yZCBvZiB0aGlzLnJlY29yZHMpIHtcbiAgICAvLyBmaW5kIG91dCB3aGF0IGxhbmd1YWdlIHRoaXMgaXMgZm9yXG4gICAgbGV0IGxhbmd1YWdlID0gTEFOR1VBR0VTW3JlY29yZC5wbGF0Zm9ybUlEXVtyZWNvcmQubGFuZ3VhZ2VJRF07XG5cbiAgICBpZiAobGFuZ3VhZ2UgPT0gbnVsbCAmJiB0aGlzLmxhbmdUYWdzICE9IG51bGwgJiYgcmVjb3JkLmxhbmd1YWdlSUQgPj0gMHg4MDAwKSB7XG4gICAgICBsYW5ndWFnZSA9IHRoaXMubGFuZ1RhZ3NbcmVjb3JkLmxhbmd1YWdlSUQgLSAweDgwMDBdLnRhZztcbiAgICB9XG5cbiAgICBpZiAobGFuZ3VhZ2UgPT0gbnVsbCkge1xuICAgICAgbGFuZ3VhZ2UgPSByZWNvcmQucGxhdGZvcm1JRCArICctJyArIHJlY29yZC5sYW5ndWFnZUlEO1xuICAgIH1cblxuICAgIC8vIGlmIHRoZSBuYW1lSUQgaXMgPj0gMjU2LCBpdCBpcyBhIGZvbnQgZmVhdHVyZSByZWNvcmQgKEFBVClcbiAgICBsZXQga2V5ID0gcmVjb3JkLm5hbWVJRCA+PSAyNTYgPyAnZm9udEZlYXR1cmVzJyA6IChOQU1FU1tyZWNvcmQubmFtZUlEXSB8fCByZWNvcmQubmFtZUlEKTtcbiAgICBpZiAocmVjb3Jkc1trZXldID09IG51bGwpIHtcbiAgICAgIHJlY29yZHNba2V5XSA9IHt9O1xuICAgIH1cblxuICAgIGxldCBvYmogPSByZWNvcmRzW2tleV07XG4gICAgaWYgKHJlY29yZC5uYW1lSUQgPj0gMjU2KSB7XG4gICAgICBvYmogPSBvYmpbcmVjb3JkLm5hbWVJRF0gfHwgKG9ialtyZWNvcmQubmFtZUlEXSA9IHt9KTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHJlY29yZC5zdHJpbmcgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiBvYmpbbGFuZ3VhZ2VdICE9PSAnc3RyaW5nJykge1xuICAgICAgb2JqW2xhbmd1YWdlXSA9IHJlY29yZC5zdHJpbmc7XG4gICAgfVxuICB9XG5cbiAgdGhpcy5yZWNvcmRzID0gcmVjb3Jkcztcbn07XG5cbk5hbWVUYWJsZS5wcmVFbmNvZGUgPSBmdW5jdGlvbigpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5yZWNvcmRzKSkgcmV0dXJuO1xuICB0aGlzLnZlcnNpb24gPSAwO1xuXG4gIGxldCByZWNvcmRzID0gW107XG4gIGZvciAobGV0IGtleSBpbiB0aGlzLnJlY29yZHMpIHtcbiAgICBsZXQgdmFsID0gdGhpcy5yZWNvcmRzW2tleV07XG4gICAgaWYgKGtleSA9PT0gJ2ZvbnRGZWF0dXJlcycpIGNvbnRpbnVlO1xuXG4gICAgcmVjb3Jkcy5wdXNoKHtcbiAgICAgIHBsYXRmb3JtSUQ6IDMsXG4gICAgICBlbmNvZGluZ0lEOiAxLFxuICAgICAgbGFuZ3VhZ2VJRDogMHg0MDksXG4gICAgICBuYW1lSUQ6IE5BTUVTLmluZGV4T2Yoa2V5KSxcbiAgICAgIGxlbmd0aDogdmFsLmVuLmxlbmd0aCAqIDIsXG4gICAgICBzdHJpbmc6IHZhbC5lblxuICAgIH0pO1xuXG4gICAgaWYgKGtleSA9PT0gJ3Bvc3RzY3JpcHROYW1lJykge1xuICAgICAgcmVjb3Jkcy5wdXNoKHtcbiAgICAgICAgcGxhdGZvcm1JRDogMSxcbiAgICAgICAgZW5jb2RpbmdJRDogMCxcbiAgICAgICAgbGFuZ3VhZ2VJRDogMCxcbiAgICAgICAgbmFtZUlEOiBOQU1FUy5pbmRleE9mKGtleSksXG4gICAgICAgIGxlbmd0aDogdmFsLmVuLmxlbmd0aCxcbiAgICAgICAgc3RyaW5nOiB2YWwuZW5cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHRoaXMucmVjb3JkcyA9IHJlY29yZHM7XG4gIHRoaXMuY291bnQgPSByZWNvcmRzLmxlbmd0aDtcbiAgdGhpcy5zdHJpbmdPZmZzZXQgPSBOYW1lVGFibGUuc2l6ZSh0aGlzLCBudWxsLCBmYWxzZSk7XG59O1xuIiwgIi8qKlxuICogR2V0cyBhbiBlbmNvZGluZyBuYW1lIGZyb20gcGxhdGZvcm0sIGVuY29kaW5nLCBhbmQgbGFuZ3VhZ2UgaWRzLlxuICogUmV0dXJuZWQgZW5jb2RpbmcgbmFtZXMgY2FuIGJlIHVzZWQgaW4gaWNvbnYtbGl0ZSB0byBkZWNvZGUgdGV4dC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVuY29kaW5nKHBsYXRmb3JtSUQsIGVuY29kaW5nSUQsIGxhbmd1YWdlSUQgPSAwKSB7XG4gIGlmIChwbGF0Zm9ybUlEID09PSAxICYmIE1BQ19MQU5HVUFHRV9FTkNPRElOR1NbbGFuZ3VhZ2VJRF0pIHtcbiAgICByZXR1cm4gTUFDX0xBTkdVQUdFX0VOQ09ESU5HU1tsYW5ndWFnZUlEXTtcbiAgfVxuICBcbiAgcmV0dXJuIEVOQ09ESU5HU1twbGF0Zm9ybUlEXVtlbmNvZGluZ0lEXTtcbn1cblxuY29uc3QgU0lOR0xFX0JZVEVfRU5DT0RJTkdTID0gbmV3IFNldChbJ3gtbWFjLXJvbWFuJywgJ3gtbWFjLWN5cmlsbGljJywgJ2lzby04ODU5LTYnLCAnaXNvLTg4NTktOCddKTtcbmNvbnN0IE1BQ19FTkNPRElOR1MgPSB7XG4gICd4LW1hYy1jcm9hdGlhbic6ICfDhMOFw4fDicORw5bDnMOhw6DDosOkw6PDpcOnw6nDqMOqw6vDrcOsw67Dr8Oxw7PDssO0w7bDtcO6w7nDu8O84oCgwrDCosKjwqfigKLCtsOfwq7FoOKEosK0wqjiiaDFvcOY4oiewrHiiaTiiaXiiIbCteKIguKIkeKIj8Wh4oirwqrCus6pxb7DuMK/wqHCrOKImsaS4omIxIbCq8SM4oCmIMOAw4PDlcWSxZPEkOKAlOKAnOKAneKAmOKAmcO34peK76O/wqnigYTigqzigLnigLrDhsK74oCTwrfigJrigJ7igLDDgsSHw4HEjcOIw43DjsOPw4zDk8OUxJHDksOaw5vDmcSxy4bLnMKvz4DDi8uawrjDisOmy4cnLFxuICAneC1tYWMtZ2FlbGljJzogJ8OEw4XDh8OJw5HDlsOcw6HDoMOiw6TDo8Olw6fDqcOow6rDq8Otw6zDrsOvw7HDs8Oyw7TDtsO1w7rDucO7w7zigKDCsMKiwqPCp+KAosK2w5/CrsKp4oSiwrTCqOKJoMOGw5jhuILCseKJpOKJpeG4g8SKxIvhuIrhuIvhuJ7huJ/EoMSh4bmAw6bDuOG5geG5luG5l8m8xpLFv+G5oMKrwrvigKYgw4DDg8OVxZLFk+KAk+KAlOKAnOKAneKAmOKAmeG5oeG6m8O/xbjhuarigqzigLnigLrFtsW34bmrwrfhu7Lhu7PigYrDgsOKw4HDi8OIw43DjsOPw4zDk8OU4pmjw5LDmsObw5nEscOdw73FtMW14bqE4bqF4bqA4bqB4bqC4bqDJyxcbiAgJ3gtbWFjLWdyZWVrJzogJ8OEwrnCssOJwrPDlsOczoXDoMOiw6TOhMKow6fDqcOow6rDq8Kj4oSiw67Dr+KAosK94oCww7TDtsKm4oKsw7nDu8O84oCgzpPOlM6YzpvOns6gw5/CrsKpzqPOqsKn4omgwrDCt86RwrHiiaTiiaXCpc6SzpXOls6XzpnOms6czqbOq86ozqnOrM6dwqzOn86h4omIzqTCq8K74oCmIM6lzqfOhs6IxZPigJPigJXigJzigJ3igJjigJnDt86JzorOjM6Ozq3Ors6vz4zOj8+NzrHOss+IzrTOtc+GzrPOt865zr7Ous67zrzOvc6/z4DPjs+Bz4PPhM64z4nPgs+Hz4XOts+Kz4vOkM6wXFx1MDBBRCcsXG4gICd4LW1hYy1pY2VsYW5kaWMnOiAnw4TDhcOHw4nDkcOWw5zDocOgw6LDpMOjw6XDp8Opw6jDqsOrw63DrMOuw6/DscOzw7LDtMO2w7XDusO5w7vDvMOdwrDCosKjwqfigKLCtsOfwq7CqeKEosK0wqjiiaDDhsOY4oiewrHiiaTiiaXCpcK14oiC4oiR4oiPz4DiiKvCqsK6zqnDpsO4wr/CocKs4oiaxpLiiYjiiIbCq8K74oCmIMOAw4PDlcWSxZPigJPigJTigJzigJ3igJjigJnDt+KXisO/xbjigYTigqzDkMOww57DvsO9wrfigJrigJ7igLDDgsOKw4HDi8OIw43DjsOPw4zDk8OU76O/w5LDmsObw5nEscuGy5zCr8uYy5nLmsK4y53Lm8uHJyxcbiAgJ3gtbWFjLWludWl0JzogJ+GQg+GQhOGQheGQhuGQiuGQi+GQseGQsuGQs+GQtOGQuOGQueGRieGRjuGRj+GRkOGRkeGRleGRluGRpuGRreGRruGRr+GRsOGRsuGRs+GSg+GSi+GSjOGSjeGSjuGSkOGSkcKw4ZKh4ZKl4ZKm4oCiwrbhkqfCrsKp4oSi4ZKo4ZKq4ZKr4ZK74ZOC4ZOD4ZOE4ZOF4ZOH4ZOI4ZOQ4ZOv4ZOw4ZOx4ZOy4ZO04ZO14ZSF4ZOV4ZOW4ZOX4ZOY4ZOa4ZOb4ZOq4ZSo4ZSp4ZSq4ZSr4ZSt4oCmIOGUruGUvuGVleGVluGVl+KAk+KAlOKAnOKAneKAmOKAmeGVmOGVmeGVmuGVneGVhuGVh+GViOGVieGVi+GVjOGVkOGVv+GWgOGWgeGWguGWg+GWhOGWheGWj+GWkOGWkeGWkuGWk+GWlOGWleGZseGZsuGZs+GZtOGZteGZtuGWluGWoOGWoeGWouGWo+GWpOGWpeGWpuGVvMWBxYInLFxuICAneC1tYWMtY2UnOiAnw4TEgMSBw4nEhMOWw5zDocSFxIzDpMSNxIbEh8OpxbnFusSOw63Ej8SSxJPElsOzxJfDtMO2w7XDusSaxJvDvOKAoMKwxJjCo8Kn4oCiwrbDn8KuwqnihKLEmcKo4omgxKPErsSvxKriiaTiiaXEq8S24oiC4oiRxYLEu8S8xL3EvsS5xLrFhcWGxYPCrOKImsWExYfiiIbCq8K74oCmIMWIxZDDlcWRxYzigJPigJTigJzigJ3igJjigJnDt+KXisWNxZTFlcWY4oC54oC6xZnFlsWXxaDigJrigJ7FocWaxZvDgcWkxaXDjcW9xb7FqsOTw5TFq8Wuw5rFr8WwxbHFssWzw53DvcS3xbvFgcW8xKLLhycsXG4gICd4LW1hYy1yb21hbmlhbic6ICfDhMOFw4fDicORw5bDnMOhw6DDosOkw6PDpcOnw6nDqMOqw6vDrcOsw67Dr8Oxw7PDssO0w7bDtcO6w7nDu8O84oCgwrDCosKjwqfigKLCtsOfwq7CqeKEosK0wqjiiaDEgsiY4oiewrHiiaTiiaXCpcK14oiC4oiR4oiPz4DiiKvCqsK6zqnEg8iZwr/CocKs4oiaxpLiiYjiiIbCq8K74oCmIMOAw4PDlcWSxZPigJPigJTigJzigJ3igJjigJnDt+KXisO/xbjigYTigqzigLnigLrImsib4oChwrfigJrigJ7igLDDgsOKw4HDi8OIw43DjsOPw4zDk8OU76O/w5LDmsObw5nEscuGy5zCr8uYy5nLmsK4y53Lm8uHJyxcbiAgJ3gtbWFjLXR1cmtpc2gnOiAnw4TDhcOHw4nDkcOWw5zDocOgw6LDpMOjw6XDp8Opw6jDqsOrw63DrMOuw6/DscOzw7LDtMO2w7XDusO5w7vDvOKAoMKwwqLCo8Kn4oCiwrbDn8KuwqnihKLCtMKo4omgw4bDmOKInsKx4omk4omlwqXCteKIguKIkeKIj8+A4oirwqrCus6pw6bDuMK/wqHCrOKImsaS4omI4oiGwqvCu+KApiDDgMODw5XFksWT4oCT4oCU4oCc4oCd4oCY4oCZw7fil4rDv8W4xJ7En8SwxLHFnsWf4oChwrfigJrigJ7igLDDgsOKw4HDi8OIw43DjsOPw4zDk8OU76O/w5LDmsObw5nvoqDLhsucwq/LmMuZy5rCuMudy5vLhydcbn07XG5cbmNvbnN0IGVuY29kaW5nQ2FjaGUgPSBuZXcgTWFwKCk7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbmNvZGluZ01hcHBpbmcoZW5jb2RpbmcpIHtcbiAgbGV0IGNhY2hlZCA9IGVuY29kaW5nQ2FjaGUuZ2V0KGVuY29kaW5nKTtcbiAgaWYgKGNhY2hlZCkge1xuICAgIHJldHVybiBjYWNoZWQ7XG4gIH1cblxuICAvLyBUaGVzZSBlbmNvZGluZ3MgYXJlbid0IHN1cHBvcnRlZCBieSBUZXh0RGVjb2Rlci5cbiAgbGV0IG1hcHBpbmcgPSBNQUNfRU5DT0RJTkdTW2VuY29kaW5nXTtcbiAgaWYgKG1hcHBpbmcpIHtcbiAgICBsZXQgcmVzID0gbmV3IE1hcCgpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWFwcGluZy5sZW5ndGg7IGkrKykge1xuICAgICAgcmVzLnNldChtYXBwaW5nLmNoYXJDb2RlQXQoaSksIDB4ODAgKyBpKTtcbiAgICB9XG5cbiAgICBlbmNvZGluZ0NhY2hlLnNldChlbmNvZGluZywgcmVzKTtcbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgLy8gT25seSBzaW5nbGUgYnl0ZSBlbmNvZGluZ3MgY2FuIGJlIG1hcHBlZCAxOjEuXG4gIGlmIChTSU5HTEVfQllURV9FTkNPRElOR1MuaGFzKGVuY29kaW5nKSkge1xuICAgIC8vIFRleHRFbmNvZGVyIG9ubHkgc3VwcG9ydHMgdXRmOCwgd2hlcmVhcyBUZXh0RGVjb2RlciBzdXBwb3J0cyBsZWdhY3kgZW5jb2RpbmdzLlxuICAgIC8vIFVzZSB0aGlzIHRvIGNyZWF0ZSBhIG1hcHBpbmcgb2YgY29kZSBwb2ludHMuXG4gICAgbGV0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoZW5jb2RpbmcpO1xuICAgIGxldCBtYXBwaW5nID0gbmV3IFVpbnQ4QXJyYXkoMHg4MCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCAweDgwOyBpKyspIHtcbiAgICAgIG1hcHBpbmdbaV0gPSAweDgwICsgaTtcbiAgICB9XG5cbiAgICBsZXQgcmVzID0gbmV3IE1hcCgpO1xuICAgIGxldCBzID0gZGVjb2Rlci5kZWNvZGUobWFwcGluZyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCAweDgwOyBpKyspIHtcbiAgICAgIHJlcy5zZXQocy5jaGFyQ29kZUF0KGkpLCAweDgwICsgaSk7XG4gICAgfVxuXG4gICAgZW5jb2RpbmdDYWNoZS5zZXQoZW5jb2RpbmcsIHJlcyk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG4vLyBNYXAgb2YgcGxhdGZvcm0gaWRzIHRvIGVuY29kaW5nIGlkcy5cbmV4cG9ydCBjb25zdCBFTkNPRElOR1MgPSBbXG4gIC8vIHVuaWNvZGVcbiAgWyd1dGYtMTZiZScsICd1dGYtMTZiZScsICd1dGYtMTZiZScsICd1dGYtMTZiZScsICd1dGYtMTZiZScsICd1dGYtMTZiZScsICd1dGYtMTZiZSddLFxuICBcbiAgLy8gbWFjaW50b3NoXG4gIC8vIE1hcHBpbmdzIGF2YWlsYWJsZSBhdCBodHRwOi8vdW5pY29kZS5vcmcvUHVibGljL01BUFBJTkdTL1ZFTkRPUlMvQVBQTEUvXG4gIC8vIDBcdFJvbWFuICAgICAgICAgICAgICAgICAxN1x0TWFsYXlhbGFtXG4gIC8vIDFcdEphcGFuZXNlXHQgICAgICAgICAgICAxOFx0U2luaGFsZXNlXG4gIC8vIDJcdFRyYWRpdGlvbmFsIENoaW5lc2VcdCAgMTlcdEJ1cm1lc2VcbiAgLy8gM1x0S29yZWFuXHQgICAgICAgICAgICAgIDIwXHRLaG1lclxuICAvLyA0XHRBcmFiaWNcdCAgICAgICAgICAgICAgMjFcdFRoYWlcbiAgLy8gNVx0SGVicmV3XHQgICAgICAgICAgICAgIDIyXHRMYW90aWFuXG4gIC8vIDZcdEdyZWVrXHQgICAgICAgICAgICAgICAgMjNcdEdlb3JnaWFuXG4gIC8vIDdcdFJ1c3NpYW5cdCAgICAgICAgICAgICAgMjRcdEFybWVuaWFuXG4gIC8vIDhcdFJTeW1ib2xcdCAgICAgICAgICAgICAgMjVcdFNpbXBsaWZpZWQgQ2hpbmVzZVxuICAvLyA5XHREZXZhbmFnYXJpXHQgICAgICAgICAgMjZcdFRpYmV0YW5cbiAgLy8gMTBcdEd1cm11a2hpXHQgICAgICAgICAgICAyN1x0TW9uZ29saWFuXG4gIC8vIDExXHRHdWphcmF0aVx0ICAgICAgICAgICAgMjhcdEdlZXpcbiAgLy8gMTJcdE9yaXlhXHQgICAgICAgICAgICAgICAgMjlcdFNsYXZpY1xuICAvLyAxM1x0QmVuZ2FsaVx0ICAgICAgICAgICAgICAzMFx0VmlldG5hbWVzZVxuICAvLyAxNFx0VGFtaWxcdCAgICAgICAgICAgICAgICAzMVx0U2luZGhpXG4gIC8vIDE1XHRUZWx1Z3VcdCAgICAgICAgICAgICAgMzJcdChVbmludGVycHJldGVkKVxuICAvLyAxNlx0S2FubmFkYVxuICBbJ3gtbWFjLXJvbWFuJywgJ3NoaWZ0LWppcycsICdiaWc1JywgJ2V1Yy1rcicsICdpc28tODg1OS02JywgJ2lzby04ODU5LTgnLFxuICAgJ3gtbWFjLWdyZWVrJywgJ3gtbWFjLWN5cmlsbGljJywgJ3gtbWFjLXN5bWJvbCcsICd4LW1hYy1kZXZhbmFnYXJpJywgJ3gtbWFjLWd1cm11a2hpJywgJ3gtbWFjLWd1amFyYXRpJyxcbiAgICdPcml5YScsICdCZW5nYWxpJywgJ1RhbWlsJywgJ1RlbHVndScsICdLYW5uYWRhJywgJ01hbGF5YWxhbScsICdTaW5oYWxlc2UnLFxuICAgJ0J1cm1lc2UnLCAnS2htZXInLCAnaXNvLTg4NTktMTEnLCAnTGFvdGlhbicsICdHZW9yZ2lhbicsICdBcm1lbmlhbicsICdnYmsnLCBcbiAgICdUaWJldGFuJywgJ01vbmdvbGlhbicsICdHZWV6JywgJ3gtbWFjLWNlJywgJ1ZpZXRuYW1lc2UnLCAnU2luZGhpJ10sXG4gIFxuICAvLyBJU08gKGRlcHJlY2F0ZWQpXG4gIFsnYXNjaWknLCBudWxsLCAnaXNvLTg4NTktMSddLFxuICBcbiAgLy8gd2luZG93c1xuICAvLyBEb2NzIGhlcmU6IGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9zeXN0ZW0udGV4dC5lbmNvZGluZyh2PXZzLjExMCkuYXNweFxuICBbJ3N5bWJvbCcsICd1dGYtMTZiZScsICdzaGlmdC1qaXMnLCAnZ2IxODAzMCcsICdiaWc1JywgJ2V1Yy1rcicsICdqb2hhYicsIG51bGwsIG51bGwsIG51bGwsICd1dGYtMTZiZSddXG5dO1xuXG4vLyBPdmVycmlkZXMgZm9yIE1hYyBzY3JpcHRzIGJ5IGxhbmd1YWdlIGlkLlxuLy8gU2VlIGh0dHA6Ly91bmljb2RlLm9yZy9QdWJsaWMvTUFQUElOR1MvVkVORE9SUy9BUFBMRS9SZWFkbWUudHh0XG5leHBvcnQgY29uc3QgTUFDX0xBTkdVQUdFX0VOQ09ESU5HUyA9IHtcbiAgMTU6ICd4LW1hYy1pY2VsYW5kaWMnLFxuICAxNzogJ3gtbWFjLXR1cmtpc2gnLFxuICAxODogJ3gtbWFjLWNyb2F0aWFuJyxcbiAgMjQ6ICd4LW1hYy1jZScsXG4gIDI1OiAneC1tYWMtY2UnLFxuICAyNjogJ3gtbWFjLWNlJyxcbiAgMjc6ICd4LW1hYy1jZScsXG4gIDI4OiAneC1tYWMtY2UnLFxuICAzMDogJ3gtbWFjLWljZWxhbmRpYycsXG4gIDM3OiAneC1tYWMtcm9tYW5pYW4nLFxuICAzODogJ3gtbWFjLWNlJyxcbiAgMzk6ICd4LW1hYy1jZScsXG4gIDQwOiAneC1tYWMtY2UnLFxuICAxNDM6ICd4LW1hYy1pbnVpdCcsXG4gIDE0NjogJ3gtbWFjLWdhZWxpYydcbn07XG5cbi8vIE1hcCBvZiBwbGF0Zm9ybSBpZHMgdG8gQkNQLTQ3IGxhbmd1YWdlIGNvZGVzLlxuZXhwb3J0IGNvbnN0IExBTkdVQUdFUyA9IFtcbiAgLy8gdW5pY29kZVxuICBbXSxcbiAgXG4gIHsgLy8gbWFjaW50b3NoXG4gICAgMDogJ2VuJywgICAgICAgIDMwOiAnZm8nLCAgICAgICA2MDogJ2tzJywgICAgICAgOTA6ICdydycsXG4gICAgMTogJ2ZyJywgICAgICAgIDMxOiAnZmEnLCAgICAgICA2MTogJ2t1JywgICAgICAgOTE6ICdybicsXG4gICAgMjogJ2RlJywgICAgICAgIDMyOiAncnUnLCAgICAgICA2MjogJ3NkJywgICAgICAgOTI6ICdueScsXG4gICAgMzogJ2l0JywgICAgICAgIDMzOiAnemgnLCAgICAgICA2MzogJ2JvJywgICAgICAgOTM6ICdtZycsXG4gICAgNDogJ25sJywgICAgICAgIDM0OiAnbmwtQkUnLCAgICA2NDogJ25lJywgICAgICAgOTQ6ICdlbycsXG4gICAgNTogJ3N2JywgICAgICAgIDM1OiAnZ2EnLCAgICAgICA2NTogJ3NhJywgICAgICAgMTI4OiAnY3knLFxuICAgIDY6ICdlcycsICAgICAgICAzNjogJ3NxJywgICAgICAgNjY6ICdtcicsICAgICAgIDEyOTogJ2V1JyxcbiAgICA3OiAnZGEnLCAgICAgICAgMzc6ICdybycsICAgICAgIDY3OiAnYm4nLCAgICAgICAxMzA6ICdjYScsXG4gICAgODogJ3B0JywgICAgICAgIDM4OiAnY3onLCAgICAgICA2ODogJ2FzJywgICAgICAgMTMxOiAnbGEnLFxuICAgIDk6ICdubycsICAgICAgICAzOTogJ3NrJywgICAgICAgNjk6ICdndScsICAgICAgIDEzMjogJ3F1JyxcbiAgICAxMDogJ2hlJywgICAgICAgNDA6ICdzaScsICAgICAgIDcwOiAncGEnLCAgICAgICAxMzM6ICdnbicsXG4gICAgMTE6ICdqYScsICAgICAgIDQxOiAneWknLCAgICAgICA3MTogJ29yJywgICAgICAgMTM0OiAnYXknLFxuICAgIDEyOiAnYXInLCAgICAgICA0MjogJ3NyJywgICAgICAgNzI6ICdtbCcsICAgICAgIDEzNTogJ3R0JyxcbiAgICAxMzogJ2ZpJywgICAgICAgNDM6ICdtaycsICAgICAgIDczOiAna24nLCAgICAgICAxMzY6ICd1ZycsXG4gICAgMTQ6ICdlbCcsICAgICAgIDQ0OiAnYmcnLCAgICAgICA3NDogJ3RhJywgICAgICAgMTM3OiAnZHonLFxuICAgIDE1OiAnaXMnLCAgICAgICA0NTogJ3VrJywgICAgICAgNzU6ICd0ZScsICAgICAgIDEzODogJ2p2JyxcbiAgICAxNjogJ210JywgICAgICAgNDY6ICdiZScsICAgICAgIDc2OiAnc2knLCAgICAgICAxMzk6ICdzdScsXG4gICAgMTc6ICd0cicsICAgICAgIDQ3OiAndXonLCAgICAgICA3NzogJ215JywgICAgICAgMTQwOiAnZ2wnLFxuICAgIDE4OiAnaHInLCAgICAgICA0ODogJ2trJywgICAgICAgNzg6ICdrbScsICAgICAgIDE0MTogJ2FmJyxcbiAgICAxOTogJ3poLUhhbnQnLCAgNDk6ICdhei1DeXJsJywgIDc5OiAnbG8nLCAgICAgICAxNDI6ICdicicsXG4gICAgMjA6ICd1cicsICAgICAgIDUwOiAnYXotQXJhYicsICA4MDogJ3ZpJywgICAgICAgMTQzOiAnaXUnLFxuICAgIDIxOiAnaGknLCAgICAgICA1MTogJ2h5JywgICAgICAgODE6ICdpZCcsICAgICAgIDE0NDogJ2dkJyxcbiAgICAyMjogJ3RoJywgICAgICAgNTI6ICdrYScsICAgICAgIDgyOiAndGwnLCAgICAgICAxNDU6ICdndicsXG4gICAgMjM6ICdrbycsICAgICAgIDUzOiAnbW8nLCAgICAgICA4MzogJ21zJywgICAgICAgMTQ2OiAnZ2EnLFxuICAgIDI0OiAnbHQnLCAgICAgICA1NDogJ2t5JywgICAgICAgODQ6ICdtcy1BcmFiJywgIDE0NzogJ3RvJyxcbiAgICAyNTogJ3BsJywgICAgICAgNTU6ICd0ZycsICAgICAgIDg1OiAnYW0nLCAgICAgICAxNDg6ICdlbC1wb2x5dG9uJyxcbiAgICAyNjogJ2h1JywgICAgICAgNTY6ICd0aycsICAgICAgIDg2OiAndGknLCAgICAgICAxNDk6ICdrbCcsXG4gICAgMjc6ICdlcycsICAgICAgIDU3OiAnbW4tQ04nLCAgICA4NzogJ29tJywgICAgICAgMTUwOiAnYXonLFxuICAgIDI4OiAnbHYnLCAgICAgICA1ODogJ21uJywgICAgICAgODg6ICdzbycsICAgICAgIDE1MTogJ25uJyxcbiAgICAyOTogJ3NlJywgICAgICAgNTk6ICdwcycsICAgICAgIDg5OiAnc3cnLFxuICB9LFxuICBcbiAgLy8gSVNPIChkZXByZWNhdGVkKVxuICBbXSxcbiAgXG4gIHsgLy8gd2luZG93cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAweDA0MzY6ICdhZicsICAgICAgIDB4NDAwOTogJ2VuLUlOJywgICAgMHgwNDg3OiAncncnLCAgICAgICAgICAweDA0MzI6ICd0bicsICAgICAgIFxuICAgIDB4MDQxQzogJ3NxJywgICAgICAgMHgxODA5OiAnZW4tSUUnLCAgICAweDA0NDE6ICdzdycsICAgICAgICAgIDB4MDQ1QjogJ3NpJywgICAgICAgICAgXG4gICAgMHgwNDg0OiAnZ3N3JywgICAgICAweDIwMDk6ICdlbi1KTScsICAgIDB4MDQ1NzogJ2tvaycsICAgICAgICAgMHgwNDFCOiAnc2snLCAgICAgICAgICBcbiAgICAweDA0NUU6ICdhbScsICAgICAgIDB4NDQwOTogJ2VuLU1ZJywgICAgMHgwNDEyOiAna28nLCAgICAgICAgICAweDA0MjQ6ICdzbCcsICAgICAgICAgIFxuICAgIDB4MTQwMTogJ2FyLURaJywgICAgMHgxNDA5OiAnZW4tTlonLCAgICAweDA0NDA6ICdreScsICAgICAgICAgIDB4MkMwQTogJ2VzLUFSJywgICAgICAgXG4gICAgMHgzQzAxOiAnYXItQkgnLCAgICAweDM0MDk6ICdlbi1QSCcsICAgIDB4MDQ1NDogJ2xvJywgICAgICAgICAgMHg0MDBBOiAnZXMtQk8nLCAgICAgICBcbiAgICAweDBDMDE6ICdhcicsICAgICAgIDB4NDgwOTogJ2VuLVNHJywgICAgMHgwNDI2OiAnbHYnLCAgICAgICAgICAweDM0MEE6ICdlcy1DTCcsICAgICAgIFxuICAgIDB4MDgwMTogJ2FyLUlRJywgICAgMHgxQzA5OiAnZW4tWkEnLCAgICAweDA0Mjc6ICdsdCcsICAgICAgICAgIDB4MjQwQTogJ2VzLUNPJywgICAgICAgXG4gICAgMHgyQzAxOiAnYXItSk8nLCAgICAweDJDMDk6ICdlbi1UVCcsICAgIDB4MDgyRTogJ2RzYicsICAgICAgICAgMHgxNDBBOiAnZXMtQ1InLCAgICAgICBcbiAgICAweDM0MDE6ICdhci1LVycsICAgIDB4MDgwOTogJ2VuLUdCJywgICAgMHgwNDZFOiAnbGInLCAgICAgICAgICAweDFDMEE6ICdlcy1ETycsICAgICAgIFxuICAgIDB4MzAwMTogJ2FyLUxCJywgICAgMHgwNDA5OiAnZW4nLCAgICAgICAweDA0MkY6ICdtaycsICAgICAgICAgIDB4MzAwQTogJ2VzLUVDJywgICAgICAgXG4gICAgMHgxMDAxOiAnYXItTFknLCAgICAweDMwMDk6ICdlbi1aVycsICAgIDB4MDgzRTogJ21zLUJOJywgICAgICAgMHg0NDBBOiAnZXMtU1YnLCAgICAgICBcbiAgICAweDE4MDE6ICdhcnknLCAgICAgIDB4MDQyNTogJ2V0JywgICAgICAgMHgwNDNFOiAnbXMnLCAgICAgICAgICAweDEwMEE6ICdlcy1HVCcsICAgICAgIFxuICAgIDB4MjAwMTogJ2FyLU9NJywgICAgMHgwNDM4OiAnZm8nLCAgICAgICAweDA0NEM6ICdtbCcsICAgICAgICAgIDB4NDgwQTogJ2VzLUhOJywgICAgICAgXG4gICAgMHg0MDAxOiAnYXItUUEnLCAgICAweDA0NjQ6ICdmaWwnLCAgICAgIDB4MDQzQTogJ210JywgICAgICAgICAgMHgwODBBOiAnZXMtTVgnLCAgICAgICBcbiAgICAweDA0MDE6ICdhci1TQScsICAgIDB4MDQwQjogJ2ZpJywgICAgICAgMHgwNDgxOiAnbWknLCAgICAgICAgICAweDRDMEE6ICdlcy1OSScsICAgICAgIFxuICAgIDB4MjgwMTogJ2FyLVNZJywgICAgMHgwODBDOiAnZnItQkUnLCAgICAweDA0N0E6ICdhcm4nLCAgICAgICAgIDB4MTgwQTogJ2VzLVBBJywgICAgICAgXG4gICAgMHgxQzAxOiAnYWViJywgICAgICAweDBDMEM6ICdmci1DQScsICAgIDB4MDQ0RTogJ21yJywgICAgICAgICAgMHgzQzBBOiAnZXMtUFknLCAgICAgICBcbiAgICAweDM4MDE6ICdhci1BRScsICAgIDB4MDQwQzogJ2ZyJywgICAgICAgMHgwNDdDOiAnbW9oJywgICAgICAgICAweDI4MEE6ICdlcy1QRScsICAgICAgIFxuICAgIDB4MjQwMTogJ2FyLVlFJywgICAgMHgxNDBDOiAnZnItTFUnLCAgICAweDA0NTA6ICdtbicsICAgICAgICAgIDB4NTAwQTogJ2VzLVBSJywgICAgICAgXG4gICAgMHgwNDJCOiAnaHknLCAgICAgICAweDE4MEM6ICdmci1NQycsICAgIDB4MDg1MDogJ21uLUNOJywgICAgICAgMHgwQzBBOiAnZXMnLCAgICAgICAgICBcbiAgICAweDA0NEQ6ICdhcycsICAgICAgIDB4MTAwQzogJ2ZyLUNIJywgICAgMHgwNDYxOiAnbmUnLCAgICAgICAgICAweDA0MEE6ICdlcycsICAgICAgICAgIFxuICAgIDB4MDgyQzogJ2F6LUN5cmwnLCAgMHgwNDYyOiAnZnknLCAgICAgICAweDA0MTQ6ICduYicsICAgICAgICAgIDB4NTQwQTogJ2VzLVVTJywgICAgICAgXG4gICAgMHgwNDJDOiAnYXonLCAgICAgICAweDA0NTY6ICdnbCcsICAgICAgIDB4MDgxNDogJ25uJywgICAgICAgICAgMHgzODBBOiAnZXMtVVknLCAgICAgXG4gICAgMHgwNDZEOiAnYmEnLCAgICAgICAweDA0Mzc6ICdrYScsICAgICAgIDB4MDQ4MjogJ29jJywgICAgICAgICAgMHgyMDBBOiAnZXMtVkUnLCAgICAgICBcbiAgICAweDA0MkQ6ICdldScsICAgICAgIDB4MEMwNzogJ2RlLUFUJywgICAgMHgwNDQ4OiAnb3InLCAgICAgICAgICAweDA4MUQ6ICdzdi1GSScsICAgICAgIFxuICAgIDB4MDQyMzogJ2JlJywgICAgICAgMHgwNDA3OiAnZGUnLCAgICAgICAweDA0NjM6ICdwcycsICAgICAgICAgIDB4MDQxRDogJ3N2JywgICAgICAgICAgXG4gICAgMHgwODQ1OiAnYm4nLCAgICAgICAweDE0MDc6ICdkZS1MSScsICAgIDB4MDQxNTogJ3BsJywgICAgICAgICAgMHgwNDVBOiAnc3lyJywgICAgICAgICBcbiAgICAweDA0NDU6ICdibi1JTicsICAgIDB4MTAwNzogJ2RlLUxVJywgICAgMHgwNDE2OiAncHQnLCAgICAgICAgICAweDA0Mjg6ICd0ZycsICAgICAgICAgIFxuICAgIDB4MjAxQTogJ2JzLUN5cmwnLCAgMHgwODA3OiAnZGUtQ0gnLCAgICAweDA4MTY6ICdwdC1QVCcsICAgICAgIDB4MDg1RjogJ3R6bScsICAgICAgICAgXG4gICAgMHgxNDFBOiAnYnMnLCAgICAgICAweDA0MDg6ICdlbCcsICAgICAgIDB4MDQ0NjogJ3BhJywgICAgICAgICAgMHgwNDQ5OiAndGEnLCAgICAgICAgICBcbiAgICAweDA0N0U6ICdicicsICAgICAgIDB4MDQ2RjogJ2tsJywgICAgICAgMHgwNDZCOiAncXUtQk8nLCAgICAgICAweDA0NDQ6ICd0dCcsICAgICAgICAgIFxuICAgIDB4MDQwMjogJ2JnJywgICAgICAgMHgwNDQ3OiAnZ3UnLCAgICAgICAweDA4NkI6ICdxdS1FQycsICAgICAgIDB4MDQ0QTogJ3RlJywgICAgICAgICAgXG4gICAgMHgwNDAzOiAnY2EnLCAgICAgICAweDA0Njg6ICdoYScsICAgICAgIDB4MEM2QjogJ3F1JywgICAgICAgICAgMHgwNDFFOiAndGgnLCAgICAgICAgICBcbiAgICAweDBDMDQ6ICd6aC1ISycsICAgIDB4MDQwRDogJ2hlJywgICAgICAgMHgwNDE4OiAncm8nLCAgICAgICAgICAweDA0NTE6ICdibycsICAgICAgICAgIFxuICAgIDB4MTQwNDogJ3poLU1PJywgICAgMHgwNDM5OiAnaGknLCAgICAgICAweDA0MTc6ICdybScsICAgICAgICAgIDB4MDQxRjogJ3RyJywgICAgICAgICAgXG4gICAgMHgwODA0OiAnemgnLCAgICAgICAweDA0MEU6ICdodScsICAgICAgIDB4MDQxOTogJ3J1JywgICAgICAgICAgMHgwNDQyOiAndGsnLCAgICAgICAgICBcbiAgICAweDEwMDQ6ICd6aC1TRycsICAgIDB4MDQwRjogJ2lzJywgICAgICAgMHgyNDNCOiAnc21uJywgICAgICAgICAweDA0ODA6ICd1ZycsICAgICAgICAgIFxuICAgIDB4MDQwNDogJ3poLVRXJywgICAgMHgwNDcwOiAnaWcnLCAgICAgICAweDEwM0I6ICdzbWotTk8nLCAgICAgIDB4MDQyMjogJ3VrJywgICAgICAgICAgXG4gICAgMHgwNDgzOiAnY28nLCAgICAgICAweDA0MjE6ICdpZCcsICAgICAgIDB4MTQzQjogJ3NtaicsICAgICAgICAgMHgwNDJFOiAnaHNiJywgICAgICAgICBcbiAgICAweDA0MUE6ICdocicsICAgICAgIDB4MDQ1RDogJ2l1JywgICAgICAgMHgwQzNCOiAnc2UtRkknLCAgICAgICAweDA0MjA6ICd1cicsICAgICAgICAgIFxuICAgIDB4MTAxQTogJ2hyLUJBJywgICAgMHgwODVEOiAnaXUtTGF0bicsICAweDA0M0I6ICdzZScsICAgICAgICAgIDB4MDg0MzogJ3V6LUN5cmwnLCAgICAgXG4gICAgMHgwNDA1OiAnY3MnLCAgICAgICAweDA4M0M6ICdnYScsICAgICAgIDB4MDgzQjogJ3NlLVNFJywgICAgICAgMHgwNDQzOiAndXonLCAgICAgICAgICBcbiAgICAweDA0MDY6ICdkYScsICAgICAgIDB4MDQzNDogJ3hoJywgICAgICAgMHgyMDNCOiAnc21zJywgICAgICAgICAweDA0MkE6ICd2aScsICAgICAgICAgIFxuICAgIDB4MDQ4QzogJ3BycycsICAgICAgMHgwNDM1OiAnenUnLCAgICAgICAweDE4M0I6ICdzbWEtTk8nLCAgICAgIDB4MDQ1MjogJ2N5JywgICAgICAgICAgXG4gICAgMHgwNDY1OiAnZHYnLCAgICAgICAweDA0MTA6ICdpdCcsICAgICAgIDB4MUMzQjogJ3NtcycsICAgICAgICAgMHgwNDg4OiAnd28nLCAgICAgICAgICBcbiAgICAweDA4MTM6ICdubC1CRScsICAgIDB4MDgxMDogJ2l0LUNIJywgICAgMHgwNDRGOiAnc2EnLCAgICAgICAgICAweDA0ODU6ICdzYWgnLCAgICAgICAgIFxuICAgIDB4MDQxMzogJ25sJywgICAgICAgMHgwNDExOiAnamEnLCAgICAgICAweDFDMUE6ICdzci1DeXJsLUJBJywgIDB4MDQ3ODogJ2lpJywgICAgICAgICAgXG4gICAgMHgwQzA5OiAnZW4tQVUnLCAgICAweDA0NEI6ICdrbicsICAgICAgIDB4MEMxQTogJ3NyJywgICAgICAgICAgMHgwNDZBOiAneW8nLCAgICAgICAgICAgXG4gICAgMHgyODA5OiAnZW4tQlonLCAgICAweDA0M0Y6ICdraycsICAgICAgIDB4MTgxQTogJ3NyLUxhdG4tQkEnLCAgXG4gICAgMHgxMDA5OiAnZW4tQ0EnLCAgICAweDA0NTM6ICdrbScsICAgICAgIDB4MDgxQTogJ3NyLUxhdG4nLCAgICAgXG4gICAgMHgyNDA5OiAnZW4tMDI5JywgICAweDA0ODY6ICdxdWMnLCAgICAgIDB4MDQ2QzogJ25zbycsICAgICAgICAgXG4gIH1cbl07XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbnZhciBPUzIgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgaGVhZGVyOiB7XG4gICAgeEF2Z0NoYXJXaWR0aDogICAgICAgICAgci5pbnQxNiwgICAvLyBhdmVyYWdlIHdlaWdodGVkIGFkdmFuY2Ugd2lkdGggb2YgbG93ZXIgY2FzZSBsZXR0ZXJzIGFuZCBzcGFjZVxuICAgIHVzV2VpZ2h0Q2xhc3M6ICAgICAgICAgIHIudWludDE2LCAgLy8gdmlzdWFsIHdlaWdodCBvZiBzdHJva2UgaW4gZ2x5cGhzXG4gICAgdXNXaWR0aENsYXNzOiAgICAgICAgICAgci51aW50MTYsICAvLyByZWxhdGl2ZSBjaGFuZ2UgZnJvbSB0aGUgbm9ybWFsIGFzcGVjdCByYXRpbyAod2lkdGggdG8gaGVpZ2h0IHJhdGlvKVxuICAgIGZzVHlwZTogICAgICAgICAgICAgICAgIG5ldyByLkJpdGZpZWxkKHIudWludDE2LCBbIC8vIEluZGljYXRlcyBmb250IGVtYmVkZGluZyBsaWNlbnNpbmcgcmlnaHRzXG4gICAgICBudWxsLCAnbm9FbWJlZGRpbmcnLCAndmlld09ubHknLCAnZWRpdGFibGUnLCBudWxsLFxuICAgICAgbnVsbCwgbnVsbCwgbnVsbCwgJ25vU3Vic2V0dGluZycsICdiaXRtYXBPbmx5J1xuICAgIF0pLFxuICAgIHlTdWJzY3JpcHRYU2l6ZTogICAgICAgIHIuaW50MTYsICAgLy8gcmVjb21tZW5kZWQgaG9yaXpvbnRhbCBzaXplIGluIHBpeGVscyBmb3Igc3Vic2NyaXB0c1xuICAgIHlTdWJzY3JpcHRZU2l6ZTogICAgICAgIHIuaW50MTYsICAgLy8gcmVjb21tZW5kZWQgdmVydGljYWwgc2l6ZSBpbiBwaXhlbHMgZm9yIHN1YnNjcmlwdHNcbiAgICB5U3Vic2NyaXB0WE9mZnNldDogICAgICByLmludDE2LCAgIC8vIHJlY29tbWVuZGVkIGhvcml6b250YWwgb2Zmc2V0IGZvciBzdWJzY3JpcHRzXG4gICAgeVN1YnNjcmlwdFlPZmZzZXQ6ICAgICAgci5pbnQxNiwgICAvLyByZWNvbW1lbmRlZCB2ZXJ0aWNhbCBvZmZzZXQgZm9ybSB0aGUgYmFzZWxpbmUgZm9yIHN1YnNjcmlwdHNcbiAgICB5U3VwZXJzY3JpcHRYU2l6ZTogICAgICByLmludDE2LCAgIC8vIHJlY29tbWVuZGVkIGhvcml6b250YWwgc2l6ZSBpbiBwaXhlbHMgZm9yIHN1cGVyc2NyaXB0c1xuICAgIHlTdXBlcnNjcmlwdFlTaXplOiAgICAgIHIuaW50MTYsICAgLy8gcmVjb21tZW5kZWQgdmVydGljYWwgc2l6ZSBpbiBwaXhlbHMgZm9yIHN1cGVyc2NyaXB0c1xuICAgIHlTdXBlcnNjcmlwdFhPZmZzZXQ6ICAgIHIuaW50MTYsICAgLy8gcmVjb21tZW5kZWQgaG9yaXpvbnRhbCBvZmZzZXQgZm9yIHN1cGVyc2NyaXB0c1xuICAgIHlTdXBlcnNjcmlwdFlPZmZzZXQ6ICAgIHIuaW50MTYsICAgLy8gcmVjb21tZW5kZWQgdmVydGljYWwgb2Zmc2V0IGZyb20gdGhlIGJhc2VsaW5lIGZvciBzdXBlcnNjcmlwdHNcbiAgICB5U3RyaWtlb3V0U2l6ZTogICAgICAgICByLmludDE2LCAgIC8vIHdpZHRoIG9mIHRoZSBzdHJpa2VvdXQgc3Ryb2tlXG4gICAgeVN0cmlrZW91dFBvc2l0aW9uOiAgICAgci5pbnQxNiwgICAvLyBwb3NpdGlvbiBvZiB0aGUgc3RyaWtlb3V0IHN0cm9rZSByZWxhdGl2ZSB0byB0aGUgYmFzZWxpbmVcbiAgICBzRmFtaWx5Q2xhc3M6ICAgICAgICAgICByLmludDE2LCAgIC8vIGNsYXNzaWZpY2F0aW9uIG9mIGZvbnQtZmFtaWx5IGRlc2lnblxuICAgIHBhbm9zZTogICAgICAgICAgICAgICAgIG5ldyByLkFycmF5KHIudWludDgsIDEwKSwgICAvLyBkZXNjcmliZSB0aGUgdmlzdWFsIGNoYXJhY3RlcmlzdGljcyBvZiBhIGdpdmVuIHR5cGVmYWNlXG4gICAgdWxDaGFyUmFuZ2U6ICAgICAgICAgICAgbmV3IHIuQXJyYXkoci51aW50MzIsIDQpLFxuICAgIHZlbmRvcklEOiAgICAgICAgICAgICAgIG5ldyByLlN0cmluZyg0KSwgICAgICAgICAgLy8gZm91ciBjaGFyYWN0ZXIgaWRlbnRpZmllciBmb3IgdGhlIGZvbnQgdmVuZG9yXG4gICAgZnNTZWxlY3Rpb246ICAgICAgICAgICAgbmV3IHIuQml0ZmllbGQoci51aW50MTYsIFsgIC8vIGJpdCBmaWVsZCBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb250XG4gICAgICAnaXRhbGljJywgJ3VuZGVyc2NvcmUnLCAnbmVnYXRpdmUnLCAnb3V0bGluZWQnLCAnc3RyaWtlb3V0JyxcbiAgICAgICdib2xkJywgJ3JlZ3VsYXInLCAndXNlVHlwb01ldHJpY3MnLCAnd3dzJywgJ29ibGlxdWUnXG4gICAgXSksXG4gICAgdXNGaXJzdENoYXJJbmRleDogICAgICAgci51aW50MTYsICAvLyBUaGUgbWluaW11bSBVbmljb2RlIGluZGV4IGluIHRoaXMgZm9udFxuICAgIHVzTGFzdENoYXJJbmRleDogICAgICAgIHIudWludDE2ICAgLy8gVGhlIG1heGltdW0gVW5pY29kZSBpbmRleCBpbiB0aGlzIGZvbnRcbiAgfSxcblxuICAvLyBUaGUgQXBwbGUgdmVyc2lvbiBvZiB0aGlzIHRhYmxlIGVuZHMgaGVyZSwgYnV0IHRoZSBNaWNyb3NvZnQgb25lIGNvbnRpbnVlcyBvbi4uLlxuICAwOiB7fSxcblxuICAxOiB7XG4gICAgdHlwb0FzY2VuZGVyOiAgICAgICByLmludDE2LFxuICAgIHR5cG9EZXNjZW5kZXI6ICAgICAgci5pbnQxNixcbiAgICB0eXBvTGluZUdhcDogICAgICAgIHIuaW50MTYsXG4gICAgd2luQXNjZW50OiAgICAgICAgICByLnVpbnQxNixcbiAgICB3aW5EZXNjZW50OiAgICAgICAgIHIudWludDE2LFxuICAgIGNvZGVQYWdlUmFuZ2U6ICAgICAgbmV3IHIuQXJyYXkoci51aW50MzIsIDIpXG4gIH0sXG5cbiAgMjoge1xuICAgIC8vIHRoZXNlIHNob3VsZCBiZSBjb21tb24gd2l0aCB2ZXJzaW9uIDEgc29tZWhvd1xuICAgIHR5cG9Bc2NlbmRlcjogICAgICAgci5pbnQxNixcbiAgICB0eXBvRGVzY2VuZGVyOiAgICAgIHIuaW50MTYsXG4gICAgdHlwb0xpbmVHYXA6ICAgICAgICByLmludDE2LFxuICAgIHdpbkFzY2VudDogICAgICAgICAgci51aW50MTYsXG4gICAgd2luRGVzY2VudDogICAgICAgICByLnVpbnQxNixcbiAgICBjb2RlUGFnZVJhbmdlOiAgICAgIG5ldyByLkFycmF5KHIudWludDMyLCAyKSxcblxuICAgIHhIZWlnaHQ6ICAgICAgICAgICAgci5pbnQxNixcbiAgICBjYXBIZWlnaHQ6ICAgICAgICAgIHIuaW50MTYsXG4gICAgZGVmYXVsdENoYXI6ICAgICAgICByLnVpbnQxNixcbiAgICBicmVha0NoYXI6ICAgICAgICAgIHIudWludDE2LFxuICAgIG1heENvbnRlbnQ6ICAgICAgICAgci51aW50MTZcbiAgfSxcblxuICA1OiB7XG4gICAgdHlwb0FzY2VuZGVyOiAgICAgICByLmludDE2LFxuICAgIHR5cG9EZXNjZW5kZXI6ICAgICAgci5pbnQxNixcbiAgICB0eXBvTGluZUdhcDogICAgICAgIHIuaW50MTYsXG4gICAgd2luQXNjZW50OiAgICAgICAgICByLnVpbnQxNixcbiAgICB3aW5EZXNjZW50OiAgICAgICAgIHIudWludDE2LFxuICAgIGNvZGVQYWdlUmFuZ2U6ICAgICAgbmV3IHIuQXJyYXkoci51aW50MzIsIDIpLFxuXG4gICAgeEhlaWdodDogICAgICAgICAgICByLmludDE2LFxuICAgIGNhcEhlaWdodDogICAgICAgICAgci5pbnQxNixcbiAgICBkZWZhdWx0Q2hhcjogICAgICAgIHIudWludDE2LFxuICAgIGJyZWFrQ2hhcjogICAgICAgICAgci51aW50MTYsXG4gICAgbWF4Q29udGVudDogICAgICAgICByLnVpbnQxNixcblxuICAgIHVzTG93ZXJPcHRpY2FsUG9pbnRTaXplOiByLnVpbnQxNixcbiAgICB1c1VwcGVyT3B0aWNhbFBvaW50U2l6ZTogci51aW50MTZcbiAgfVxufSk7XG5cbmxldCB2ZXJzaW9ucyA9IE9TMi52ZXJzaW9ucztcbnZlcnNpb25zWzNdID0gdmVyc2lvbnNbNF0gPSB2ZXJzaW9uc1syXTtcblxuZXhwb3J0IGRlZmF1bHQgT1MyO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBQb3N0U2NyaXB0IGluZm9ybWF0aW9uXG5leHBvcnQgZGVmYXVsdCBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci5maXhlZDMyLCB7XG4gIGhlYWRlcjogeyAvLyB0aGVzZSBmaWVsZHMgZXhpc3QgYXQgdGhlIHRvcCBvZiBhbGwgdmVyc2lvbnNcbiAgICBpdGFsaWNBbmdsZTogICAgICAgIHIuZml4ZWQzMiwgLy8gSXRhbGljIGFuZ2xlIGluIGNvdW50ZXItY2xvY2t3aXNlIGRlZ3JlZXMgZnJvbSB0aGUgdmVydGljYWwuXG4gICAgdW5kZXJsaW5lUG9zaXRpb246ICByLmludDE2LCAgIC8vIFN1Z2dlc3RlZCBkaXN0YW5jZSBvZiB0aGUgdG9wIG9mIHRoZSB1bmRlcmxpbmUgZnJvbSB0aGUgYmFzZWxpbmVcbiAgICB1bmRlcmxpbmVUaGlja25lc3M6IHIuaW50MTYsICAgLy8gU3VnZ2VzdGVkIHZhbHVlcyBmb3IgdGhlIHVuZGVybGluZSB0aGlja25lc3NcbiAgICBpc0ZpeGVkUGl0Y2g6ICAgICAgIHIudWludDMyLCAgLy8gV2hldGhlciB0aGUgZm9udCBpcyBtb25vc3BhY2VkXG4gICAgbWluTWVtVHlwZTQyOiAgICAgICByLnVpbnQzMiwgIC8vIE1pbmltdW0gbWVtb3J5IHVzYWdlIHdoZW4gYSBUcnVlVHlwZSBmb250IGlzIGRvd25sb2FkZWQgYXMgYSBUeXBlIDQyIGZvbnRcbiAgICBtYXhNZW1UeXBlNDI6ICAgICAgIHIudWludDMyLCAgLy8gTWF4aW11bSBtZW1vcnkgdXNhZ2Ugd2hlbiBhIFRydWVUeXBlIGZvbnQgaXMgZG93bmxvYWRlZCBhcyBhIFR5cGUgNDIgZm9udFxuICAgIG1pbk1lbVR5cGUxOiAgICAgICAgci51aW50MzIsICAvLyBNaW5pbXVtIG1lbW9yeSB1c2FnZSB3aGVuIGEgVHJ1ZVR5cGUgZm9udCBpcyBkb3dubG9hZGVkIGFzIGEgVHlwZSAxIGZvbnRcbiAgICBtYXhNZW1UeXBlMTogICAgICAgIHIudWludDMyICAgLy8gTWF4aW11bSBtZW1vcnkgdXNhZ2Ugd2hlbiBhIFRydWVUeXBlIGZvbnQgaXMgZG93bmxvYWRlZCBhcyBhIFR5cGUgMSBmb250XG4gIH0sXG5cbiAgMToge30sIC8vIHZlcnNpb24gMSBoYXMgbm8gYWRkaXRpb25hbCBmaWVsZHNcblxuICAyOiB7XG4gICAgbnVtYmVyT2ZHbHlwaHM6IHIudWludDE2LFxuICAgIGdseXBoTmFtZUluZGV4OiBuZXcgci5BcnJheShyLnVpbnQxNiwgJ251bWJlck9mR2x5cGhzJyksXG4gICAgbmFtZXM6ICAgICAgICAgIG5ldyByLkFycmF5KG5ldyByLlN0cmluZyhyLnVpbnQ4KSlcbiAgfSxcblxuICAyLjU6IHtcbiAgICBudW1iZXJPZkdseXBoczogci51aW50MTYsXG4gICAgb2Zmc2V0czogICAgICAgIG5ldyByLkFycmF5KHIudWludDgsICdudW1iZXJPZkdseXBocycpXG4gIH0sXG5cbiAgMzoge30sIC8vIHZlcnNpb24gMyBoYXMgbm8gYWRkaXRpb25hbCBmaWVsZHNcblxuICA0OiB7XG4gICAgbWFwOiBuZXcgci5BcnJheShyLnVpbnQzMiwgdCA9PiB0LnBhcmVudC5tYXhwLm51bUdseXBocylcbiAgfVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIEFuIGFycmF5IG9mIHByZWRlZmluZWQgdmFsdWVzIGFjY2Vzc2libGUgYnkgaW5zdHJ1Y3Rpb25zXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICBjb250cm9sVmFsdWVzOiBuZXcgci5BcnJheShyLmludDE2KVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIEEgbGlzdCBvZiBpbnN0cnVjdGlvbnMgdGhhdCBhcmUgZXhlY3V0ZWQgb25jZSB3aGVuIGEgZm9udCBpcyBmaXJzdCB1c2VkLlxuLy8gVGhlc2UgaW5zdHJ1Y3Rpb25zIGFyZSBrbm93biBhcyB0aGUgZm9udCBwcm9ncmFtLiBUaGUgbWFpbiB1c2Ugb2YgdGhpcyB0YWJsZVxuLy8gaXMgZm9yIHRoZSBkZWZpbml0aW9uIG9mIGZ1bmN0aW9ucyB0aGF0IGFyZSB1c2VkIGluIG1hbnkgZGlmZmVyZW50IGdseXBoIHByb2dyYW1zLlxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgaW5zdHJ1Y3Rpb25zOiBuZXcgci5BcnJheShyLnVpbnQ4KVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBsb2NhID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCdoZWFkLmluZGV4VG9Mb2NGb3JtYXQnLCB7XG4gIDA6IHtcbiAgICBvZmZzZXRzOiBuZXcgci5BcnJheShyLnVpbnQxNilcbiAgfSxcbiAgMToge1xuICAgIG9mZnNldHM6IG5ldyByLkFycmF5KHIudWludDMyKVxuICB9XG59KTtcblxubG9jYS5wcm9jZXNzID0gZnVuY3Rpb24oKSB7XG4gIGlmICh0aGlzLnZlcnNpb24gPT09IDAgJiYgIXRoaXMuX3Byb2Nlc3NlZCkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5vZmZzZXRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB0aGlzLm9mZnNldHNbaV0gPDw9IDE7XG4gICAgfVxuICAgIHRoaXMuX3Byb2Nlc3NlZCA9IHRydWU7XG4gIH1cbn07XG5cbmxvY2EucHJlRW5jb2RlID0gZnVuY3Rpb24oKSB7XG4gIGlmICh0aGlzLnZlcnNpb24gPT09IDAgJiYgdGhpcy5fcHJvY2Vzc2VkICE9PSBmYWxzZSkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5vZmZzZXRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB0aGlzLm9mZnNldHNbaV0gPj4+PSAxO1xuICAgIH1cbiAgICB0aGlzLl9wcm9jZXNzZWQgPSBmYWxzZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgbG9jYTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gU2V0IG9mIGluc3RydWN0aW9ucyBleGVjdXRlZCB3aGVuZXZlciB0aGUgcG9pbnQgc2l6ZSBvciBmb250IHRyYW5zZm9ybWF0aW9uIGNoYW5nZVxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgY29udHJvbFZhbHVlUHJvZ3JhbTogbmV3IHIuQXJyYXkoci51aW50OClcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBvbmx5IHVzZWQgZm9yIGVuY29kaW5nXG5leHBvcnQgZGVmYXVsdCBuZXcgci5BcnJheShuZXcgci5CdWZmZXIpO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IENGRkluZGV4IGZyb20gJy4vQ0ZGSW5kZXgnO1xuaW1wb3J0IENGRlRvcCBmcm9tICcuL0NGRlRvcCc7XG5pbXBvcnQgQ0ZGUHJpdmF0ZURpY3QgZnJvbSAnLi9DRkZQcml2YXRlRGljdCc7XG5pbXBvcnQgc3RhbmRhcmRTdHJpbmdzIGZyb20gJy4vQ0ZGU3RhbmRhcmRTdHJpbmdzJztcblxuY2xhc3MgQ0ZGRm9udCB7XG4gIGNvbnN0cnVjdG9yKHN0cmVhbSkge1xuICAgIHRoaXMuc3RyZWFtID0gc3RyZWFtO1xuICAgIHRoaXMuZGVjb2RlKCk7XG4gIH1cblxuICBzdGF0aWMgZGVjb2RlKHN0cmVhbSkge1xuICAgIHJldHVybiBuZXcgQ0ZGRm9udChzdHJlYW0pO1xuICB9XG5cbiAgZGVjb2RlKCkge1xuICAgIGxldCBzdGFydCA9IHRoaXMuc3RyZWFtLnBvcztcbiAgICBsZXQgdG9wID0gQ0ZGVG9wLmRlY29kZSh0aGlzLnN0cmVhbSk7XG4gICAgZm9yIChsZXQga2V5IGluIHRvcCkge1xuICAgICAgbGV0IHZhbCA9IHRvcFtrZXldO1xuICAgICAgdGhpc1trZXldID0gdmFsO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZlcnNpb24gPCAyKSB7XG4gICAgICBpZiAodGhpcy50b3BEaWN0SW5kZXgubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk9ubHkgYSBzaW5nbGUgZm9udCBpcyBhbGxvd2VkIGluIENGRlwiKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy50b3BEaWN0ID0gdGhpcy50b3BEaWN0SW5kZXhbMF07XG4gICAgfVxuXG4gICAgdGhpcy5pc0NJREZvbnQgPSB0aGlzLnRvcERpY3QuUk9TICE9IG51bGw7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzdHJpbmcoc2lkKSB7XG4gICAgaWYgKHRoaXMudmVyc2lvbiA+PSAyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoc2lkIDwgc3RhbmRhcmRTdHJpbmdzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHN0YW5kYXJkU3RyaW5nc1tzaWRdO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnN0cmluZ0luZGV4W3NpZCAtIHN0YW5kYXJkU3RyaW5ncy5sZW5ndGhdO1xuICB9XG5cbiAgZ2V0IHBvc3RzY3JpcHROYW1lKCkge1xuICAgIGlmICh0aGlzLnZlcnNpb24gPCAyKSB7XG4gICAgICByZXR1cm4gdGhpcy5uYW1lSW5kZXhbMF07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBnZXQgZnVsbE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nKHRoaXMudG9wRGljdC5GdWxsTmFtZSk7XG4gIH1cblxuICBnZXQgZmFtaWx5TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmcodGhpcy50b3BEaWN0LkZhbWlseU5hbWUpO1xuICB9XG5cbiAgZ2V0Q2hhclN0cmluZyhnbHlwaCkge1xuICAgIHRoaXMuc3RyZWFtLnBvcyA9IHRoaXMudG9wRGljdC5DaGFyU3RyaW5nc1tnbHlwaF0ub2Zmc2V0O1xuICAgIHJldHVybiB0aGlzLnN0cmVhbS5yZWFkQnVmZmVyKHRoaXMudG9wRGljdC5DaGFyU3RyaW5nc1tnbHlwaF0ubGVuZ3RoKTtcbiAgfVxuXG4gIGdldEdseXBoTmFtZShnaWQpIHtcbiAgICAvLyBDRkYyIGdseXBoIG5hbWVzIGFyZSBpbiB0aGUgcG9zdCB0YWJsZS5cbiAgICBpZiAodGhpcy52ZXJzaW9uID49IDIpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIENJRC1rZXllZCBmb250cyBkb24ndCBoYXZlIGdseXBoIG5hbWVzXG4gICAgaWYgKHRoaXMuaXNDSURGb250KSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgeyBjaGFyc2V0IH0gPSB0aGlzLnRvcERpY3Q7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoY2hhcnNldCkpIHtcbiAgICAgIHJldHVybiBjaGFyc2V0W2dpZF07XG4gICAgfVxuXG4gICAgaWYgKGdpZCA9PT0gMCkge1xuICAgICAgcmV0dXJuICcubm90ZGVmJztcbiAgICB9XG5cbiAgICBnaWQgLT0gMTtcblxuICAgIHN3aXRjaCAoY2hhcnNldC52ZXJzaW9uKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIHJldHVybiB0aGlzLnN0cmluZyhjaGFyc2V0LmdseXBoc1tnaWRdKTtcblxuICAgICAgY2FzZSAxOlxuICAgICAgY2FzZSAyOlxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoYXJzZXQucmFuZ2VzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgbGV0IHJhbmdlID0gY2hhcnNldC5yYW5nZXNbaV07XG4gICAgICAgICAgaWYgKHJhbmdlLm9mZnNldCA8PSBnaWQgJiYgZ2lkIDw9IHJhbmdlLm9mZnNldCArIHJhbmdlLm5MZWZ0KSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zdHJpbmcocmFuZ2UuZmlyc3QgKyAoZ2lkIC0gcmFuZ2Uub2Zmc2V0KSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZmRGb3JHbHlwaChnaWQpIHtcbiAgICBpZiAoIXRoaXMudG9wRGljdC5GRFNlbGVjdCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgc3dpdGNoICh0aGlzLnRvcERpY3QuRkRTZWxlY3QudmVyc2lvbikge1xuICAgICAgY2FzZSAwOlxuICAgICAgICByZXR1cm4gdGhpcy50b3BEaWN0LkZEU2VsZWN0LmZkc1tnaWRdO1xuXG4gICAgICBjYXNlIDM6XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIGxldCB7IHJhbmdlcyB9ID0gdGhpcy50b3BEaWN0LkZEU2VsZWN0O1xuICAgICAgICBsZXQgbG93ID0gMDtcbiAgICAgICAgbGV0IGhpZ2ggPSByYW5nZXMubGVuZ3RoIC0gMTtcblxuICAgICAgICB3aGlsZSAobG93IDw9IGhpZ2gpIHtcbiAgICAgICAgICBsZXQgbWlkID0gKGxvdyArIGhpZ2gpID4+IDE7XG5cbiAgICAgICAgICBpZiAoZ2lkIDwgcmFuZ2VzW21pZF0uZmlyc3QpIHtcbiAgICAgICAgICAgIGhpZ2ggPSBtaWQgLSAxO1xuICAgICAgICAgIH0gZWxzZSBpZiAobWlkIDwgaGlnaCAmJiBnaWQgPj0gcmFuZ2VzW21pZCArIDFdLmZpcnN0KSB7XG4gICAgICAgICAgICBsb3cgPSBtaWQgKyAxO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gcmFuZ2VzW21pZF0uZmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gRkRTZWxlY3QgdmVyc2lvbjogJHt0aGlzLnRvcERpY3QuRkRTZWxlY3QudmVyc2lvbn1gKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlRGljdEZvckdseXBoKGdpZCkge1xuICAgIGlmICh0aGlzLnRvcERpY3QuRkRTZWxlY3QpIHtcbiAgICAgIGxldCBmZCA9IHRoaXMuZmRGb3JHbHlwaChnaWQpO1xuICAgICAgaWYgKHRoaXMudG9wRGljdC5GREFycmF5W2ZkXSkge1xuICAgICAgICByZXR1cm4gdGhpcy50b3BEaWN0LkZEQXJyYXlbZmRdLlByaXZhdGU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZlcnNpb24gPCAyKSB7XG4gICAgICByZXR1cm4gdGhpcy50b3BEaWN0LlByaXZhdGU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudG9wRGljdC5GREFycmF5WzBdLlByaXZhdGU7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQ0ZGRm9udDtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ0ZGSW5kZXgge1xuICBjb25zdHJ1Y3Rvcih0eXBlKSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgfVxuXG4gIGdldENGRlZlcnNpb24oY3R4KSB7XG4gICAgd2hpbGUgKGN0eCAmJiAhY3R4LmhkclNpemUpIHtcbiAgICAgIGN0eCA9IGN0eC5wYXJlbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIGN0eCA/IGN0eC52ZXJzaW9uIDogLTE7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICBsZXQgdmVyc2lvbiA9IHRoaXMuZ2V0Q0ZGVmVyc2lvbihwYXJlbnQpO1xuICAgIGxldCBjb3VudCA9IHZlcnNpb24gPj0gMlxuICAgICAgPyBzdHJlYW0ucmVhZFVJbnQzMkJFKClcbiAgICAgIDogc3RyZWFtLnJlYWRVSW50MTZCRSgpO1xuXG4gICAgaWYgKGNvdW50ID09PSAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgbGV0IG9mZlNpemUgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG4gICAgbGV0IG9mZnNldFR5cGU7XG4gICAgaWYgKG9mZlNpemUgPT09IDEpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQ4O1xuICAgIH0gZWxzZSBpZiAob2ZmU2l6ZSA9PT0gMikge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDE2O1xuICAgIH0gZWxzZSBpZiAob2ZmU2l6ZSA9PT0gMykge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDI0O1xuICAgIH0gZWxzZSBpZiAob2ZmU2l6ZSA9PT0gNCkge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDMyO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEJhZCBvZmZzZXQgc2l6ZSBpbiBDRkZJbmRleDogJHtvZmZTaXplfSAke3N0cmVhbS5wb3N9YCk7XG4gICAgfVxuXG4gICAgbGV0IHJldCA9IFtdO1xuICAgIGxldCBzdGFydFBvcyA9IHN0cmVhbS5wb3MgKyAoKGNvdW50ICsgMSkgKiBvZmZTaXplKSAtIDE7XG5cbiAgICBsZXQgc3RhcnQgPSBvZmZzZXRUeXBlLmRlY29kZShzdHJlYW0pO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xuICAgICAgbGV0IGVuZCA9IG9mZnNldFR5cGUuZGVjb2RlKHN0cmVhbSk7XG5cbiAgICAgIGlmICh0aGlzLnR5cGUgIT0gbnVsbCkge1xuICAgICAgICBsZXQgcG9zID0gc3RyZWFtLnBvcztcbiAgICAgICAgc3RyZWFtLnBvcyA9IHN0YXJ0UG9zICsgc3RhcnQ7XG5cbiAgICAgICAgcGFyZW50Lmxlbmd0aCA9IGVuZCAtIHN0YXJ0O1xuICAgICAgICByZXQucHVzaCh0aGlzLnR5cGUuZGVjb2RlKHN0cmVhbSwgcGFyZW50KSk7XG4gICAgICAgIHN0cmVhbS5wb3MgPSBwb3M7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXQucHVzaCh7XG4gICAgICAgICAgb2Zmc2V0OiBzdGFydFBvcyArIHN0YXJ0LFxuICAgICAgICAgIGxlbmd0aDogZW5kIC0gc3RhcnRcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHN0YXJ0ID0gZW5kO1xuICAgIH1cblxuICAgIHN0cmVhbS5wb3MgPSBzdGFydFBvcyArIHN0YXJ0O1xuICAgIHJldHVybiByZXQ7XG4gIH1cblxuICBzaXplKGFyciwgcGFyZW50KSB7XG4gICAgbGV0IHNpemUgPSAyO1xuICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gc2l6ZTtcbiAgICB9XG5cbiAgICBsZXQgdHlwZSA9IHRoaXMudHlwZSB8fCBuZXcgci5CdWZmZXI7XG5cbiAgICAvLyBmaW5kIG1heGltdW0gb2Zmc2V0IHRvIGRldG1pbmluZSBvZmZzZXQgdHlwZVxuICAgIGxldCBvZmZzZXQgPSAxO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgaXRlbSA9IGFycltpXTtcbiAgICAgIG9mZnNldCArPSB0eXBlLnNpemUoaXRlbSwgcGFyZW50KTtcbiAgICB9XG5cbiAgICBsZXQgb2Zmc2V0VHlwZTtcbiAgICBpZiAob2Zmc2V0IDw9IDB4ZmYpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQ4O1xuICAgIH0gZWxzZSBpZiAob2Zmc2V0IDw9IDB4ZmZmZikge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDE2O1xuICAgIH0gZWxzZSBpZiAob2Zmc2V0IDw9IDB4ZmZmZmZmKSB7XG4gICAgICBvZmZzZXRUeXBlID0gci51aW50MjQ7XG4gICAgfSBlbHNlIGlmIChvZmZzZXQgPD0gMHhmZmZmZmZmZikge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDMyO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJCYWQgb2Zmc2V0IGluIENGRkluZGV4XCIpO1xuICAgIH1cblxuICAgIHNpemUgKz0gMSArIG9mZnNldFR5cGUuc2l6ZSgpICogKGFyci5sZW5ndGggKyAxKTtcbiAgICBzaXplICs9IG9mZnNldCAtIDE7XG5cbiAgICByZXR1cm4gc2l6ZTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIGFyciwgcGFyZW50KSB7XG4gICAgc3RyZWFtLndyaXRlVUludDE2QkUoYXJyLmxlbmd0aCk7XG4gICAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgdHlwZSA9IHRoaXMudHlwZSB8fCBuZXcgci5CdWZmZXI7XG5cbiAgICAvLyBmaW5kIG1heGltdW0gb2Zmc2V0IHRvIGRldG1pbmluZSBvZmZzZXQgdHlwZVxuICAgIGxldCBzaXplcyA9IFtdO1xuICAgIGxldCBvZmZzZXQgPSAxO1xuICAgIGZvciAobGV0IGl0ZW0gb2YgYXJyKSB7XG4gICAgICBsZXQgcyA9IHR5cGUuc2l6ZShpdGVtLCBwYXJlbnQpO1xuICAgICAgc2l6ZXMucHVzaChzKTtcbiAgICAgIG9mZnNldCArPSBzO1xuICAgIH1cblxuICAgIGxldCBvZmZzZXRUeXBlO1xuICAgIGlmIChvZmZzZXQgPD0gMHhmZikge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDg7XG4gICAgfSBlbHNlIGlmIChvZmZzZXQgPD0gMHhmZmZmKSB7XG4gICAgICBvZmZzZXRUeXBlID0gci51aW50MTY7XG4gICAgfSBlbHNlIGlmIChvZmZzZXQgPD0gMHhmZmZmZmYpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQyNDtcbiAgICB9IGVsc2UgaWYgKG9mZnNldCA8PSAweGZmZmZmZmZmKSB7XG4gICAgICBvZmZzZXRUeXBlID0gci51aW50MzI7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkJhZCBvZmZzZXQgaW4gQ0ZGSW5kZXhcIik7XG4gICAgfVxuXG4gICAgLy8gd3JpdGUgb2Zmc2V0IHNpemVcbiAgICBzdHJlYW0ud3JpdGVVSW50OChvZmZzZXRUeXBlLnNpemUoKSk7XG5cbiAgICAvLyB3cml0ZSBlbGVtZW50c1xuICAgIG9mZnNldCA9IDE7XG4gICAgb2Zmc2V0VHlwZS5lbmNvZGUoc3RyZWFtLCBvZmZzZXQpO1xuXG4gICAgZm9yIChsZXQgc2l6ZSBvZiBzaXplcykge1xuICAgICAgb2Zmc2V0ICs9IHNpemU7XG4gICAgICBvZmZzZXRUeXBlLmVuY29kZShzdHJlYW0sIG9mZnNldCk7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaXRlbSBvZiBhcnIpIHtcbiAgICAgIHR5cGUuZW5jb2RlKHN0cmVhbSwgaXRlbSwgcGFyZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7IHJlc29sdmVMZW5ndGggfSBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgQ0ZGRGljdCBmcm9tICcuL0NGRkRpY3QnO1xuaW1wb3J0IENGRkluZGV4IGZyb20gJy4vQ0ZGSW5kZXgnO1xuaW1wb3J0IENGRlBvaW50ZXIgZnJvbSAnLi9DRkZQb2ludGVyJztcbmltcG9ydCBDRkZQcml2YXRlRGljdCBmcm9tICcuL0NGRlByaXZhdGVEaWN0JztcbmltcG9ydCBTdGFuZGFyZFN0cmluZ3MgZnJvbSAnLi9DRkZTdGFuZGFyZFN0cmluZ3MnO1xuaW1wb3J0IHsgU3RhbmRhcmRFbmNvZGluZywgRXhwZXJ0RW5jb2RpbmcgfSBmcm9tICcuL0NGRkVuY29kaW5ncyc7XG5pbXBvcnQgeyBJU09BZG9iZUNoYXJzZXQsIEV4cGVydENoYXJzZXQsIEV4cGVydFN1YnNldENoYXJzZXQgfSBmcm9tICcuL0NGRkNoYXJzZXRzJztcbmltcG9ydCB7IEl0ZW1WYXJpYXRpb25TdG9yZSB9IGZyb20gJy4uL3RhYmxlcy92YXJpYXRpb25zJztcblxuLy8gQ2hlY2tzIGlmIGFuIG9wZXJhbmQgaXMgYW4gaW5kZXggb2YgYSBwcmVkZWZpbmVkIHZhbHVlLFxuLy8gb3RoZXJ3aXNlIGRlbGVnYXRlcyB0byB0aGUgcHJvdmlkZWQgdHlwZS5cbmNsYXNzIFByZWRlZmluZWRPcCB7XG4gIGNvbnN0cnVjdG9yKHByZWRlZmluZWRPcHMsIHR5cGUpIHtcbiAgICB0aGlzLnByZWRlZmluZWRPcHMgPSBwcmVkZWZpbmVkT3BzO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQsIG9wZXJhbmRzKSB7XG4gICAgaWYgKHRoaXMucHJlZGVmaW5lZE9wc1tvcGVyYW5kc1swXV0pIHtcbiAgICAgIHJldHVybiB0aGlzLnByZWRlZmluZWRPcHNbb3BlcmFuZHNbMF1dO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnR5cGUuZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBvcGVyYW5kcyk7XG4gIH1cblxuICBzaXplKHZhbHVlLCBjdHgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlLnNpemUodmFsdWUsIGN0eCk7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWx1ZSwgY3R4KSB7XG4gICAgbGV0IGluZGV4ID0gdGhpcy5wcmVkZWZpbmVkT3BzLmluZGV4T2YodmFsdWUpO1xuICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgIHJldHVybiBpbmRleDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50eXBlLmVuY29kZShzdHJlYW0sIHZhbHVlLCBjdHgpO1xuICB9XG59XG5cbmNsYXNzIENGRkVuY29kaW5nVmVyc2lvbiBleHRlbmRzIHIuTnVtYmVyIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ1VJbnQ4Jyk7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtKSB7XG4gICAgcmV0dXJuIHIudWludDguZGVjb2RlKHN0cmVhbSkgJiAweDdmO1xuICB9XG59XG5cbmxldCBSYW5nZTEgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmaXJzdDogci51aW50MTYsXG4gIG5MZWZ0OiByLnVpbnQ4XG59KTtcblxubGV0IFJhbmdlMiA9IG5ldyByLlN0cnVjdCh7XG4gIGZpcnN0OiByLnVpbnQxNixcbiAgbkxlZnQ6IHIudWludDE2XG59KTtcblxubGV0IENGRkN1c3RvbUVuY29kaW5nID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KG5ldyBDRkZFbmNvZGluZ1ZlcnNpb24oKSwge1xuICAwOiB7XG4gICAgbkNvZGVzOiByLnVpbnQ4LFxuICAgIGNvZGVzOiBuZXcgci5BcnJheShyLnVpbnQ4LCAnbkNvZGVzJylcbiAgfSxcblxuICAxOiB7XG4gICAgblJhbmdlczogci51aW50OCxcbiAgICByYW5nZXM6IG5ldyByLkFycmF5KFJhbmdlMSwgJ25SYW5nZXMnKVxuICB9XG5cbiAgLy8gVE9ETzogc3VwcGxlbWVudD9cbn0pO1xuXG5sZXQgQ0ZGRW5jb2RpbmcgPSBuZXcgUHJlZGVmaW5lZE9wKFsgU3RhbmRhcmRFbmNvZGluZywgRXhwZXJ0RW5jb2RpbmcgXSwgbmV3IENGRlBvaW50ZXIoQ0ZGQ3VzdG9tRW5jb2RpbmcsIHsgbGF6eTogdHJ1ZSB9KSk7XG5cbi8vIERlY29kZXMgYW4gYXJyYXkgb2YgcmFuZ2VzIHVudGlsIHRoZSB0b3RhbFxuLy8gbGVuZ3RoIGlzIGVxdWFsIHRvIHRoZSBwcm92aWRlZCBsZW5ndGguXG5jbGFzcyBSYW5nZUFycmF5IGV4dGVuZHMgci5BcnJheSB7XG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIGxldCBsZW5ndGggPSByZXNvbHZlTGVuZ3RoKHRoaXMubGVuZ3RoLCBzdHJlYW0sIHBhcmVudCk7XG4gICAgbGV0IGNvdW50ID0gMDtcbiAgICBsZXQgcmVzID0gW107XG4gICAgd2hpbGUgKGNvdW50IDwgbGVuZ3RoKSB7XG4gICAgICBsZXQgcmFuZ2UgPSB0aGlzLnR5cGUuZGVjb2RlKHN0cmVhbSwgcGFyZW50KTtcbiAgICAgIHJhbmdlLm9mZnNldCA9IGNvdW50O1xuICAgICAgY291bnQgKz0gcmFuZ2UubkxlZnQgKyAxO1xuICAgICAgcmVzLnB1c2gocmFuZ2UpO1xuICAgIH1cblxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxubGV0IENGRkN1c3RvbUNoYXJzZXQgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50OCwge1xuICAwOiB7XG4gICAgZ2x5cGhzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgdCA9PiB0LnBhcmVudC5DaGFyU3RyaW5ncy5sZW5ndGggLSAxKVxuICB9LFxuXG4gIDE6IHtcbiAgICByYW5nZXM6IG5ldyBSYW5nZUFycmF5KFJhbmdlMSwgdCA9PiB0LnBhcmVudC5DaGFyU3RyaW5ncy5sZW5ndGggLSAxKVxuICB9LFxuXG4gIDI6IHtcbiAgICByYW5nZXM6IG5ldyBSYW5nZUFycmF5KFJhbmdlMiwgdCA9PiB0LnBhcmVudC5DaGFyU3RyaW5ncy5sZW5ndGggLSAxKVxuICB9XG59KTtcblxubGV0IENGRkNoYXJzZXQgPSBuZXcgUHJlZGVmaW5lZE9wKFsgSVNPQWRvYmVDaGFyc2V0LCBFeHBlcnRDaGFyc2V0LCBFeHBlcnRTdWJzZXRDaGFyc2V0IF0sIG5ldyBDRkZQb2ludGVyKENGRkN1c3RvbUNoYXJzZXQsIHtsYXp5OiB0cnVlfSkpO1xuXG5sZXQgRkRSYW5nZTMgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmaXJzdDogci51aW50MTYsXG4gIGZkOiByLnVpbnQ4XG59KTtcblxubGV0IEZEUmFuZ2U0ID0gbmV3IHIuU3RydWN0KHtcbiAgZmlyc3Q6IHIudWludDMyLFxuICBmZDogci51aW50MTZcbn0pO1xuXG5sZXQgRkRTZWxlY3QgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50OCwge1xuICAwOiB7XG4gICAgZmRzOiBuZXcgci5BcnJheShyLnVpbnQ4LCB0ID0+IHQucGFyZW50LkNoYXJTdHJpbmdzLmxlbmd0aClcbiAgfSxcblxuICAzOiB7XG4gICAgblJhbmdlczogci51aW50MTYsXG4gICAgcmFuZ2VzOiBuZXcgci5BcnJheShGRFJhbmdlMywgJ25SYW5nZXMnKSxcbiAgICBzZW50aW5lbDogci51aW50MTZcbiAgfSxcblxuICA0OiB7XG4gICAgblJhbmdlczogci51aW50MzIsXG4gICAgcmFuZ2VzOiBuZXcgci5BcnJheShGRFJhbmdlNCwgJ25SYW5nZXMnKSxcbiAgICBzZW50aW5lbDogci51aW50MzJcbiAgfVxufSk7XG5cbmxldCBwdHIgPSBuZXcgQ0ZGUG9pbnRlcihDRkZQcml2YXRlRGljdCk7XG5jbGFzcyBDRkZQcml2YXRlT3Age1xuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQsIG9wZXJhbmRzKSB7XG4gICAgcGFyZW50Lmxlbmd0aCA9IG9wZXJhbmRzWzBdO1xuICAgIHJldHVybiBwdHIuZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBbb3BlcmFuZHNbMV1dKTtcbiAgfVxuXG4gIHNpemUoZGljdCwgY3R4KSB7XG4gICAgcmV0dXJuIFtDRkZQcml2YXRlRGljdC5zaXplKGRpY3QsIGN0eCwgZmFsc2UpLCBwdHIuc2l6ZShkaWN0LCBjdHgpWzBdXTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIGRpY3QsIGN0eCkge1xuICAgIHJldHVybiBbQ0ZGUHJpdmF0ZURpY3Quc2l6ZShkaWN0LCBjdHgsIGZhbHNlKSwgcHRyLmVuY29kZShzdHJlYW0sIGRpY3QsIGN0eClbMF1dO1xuICB9XG59XG5cbmxldCBGb250RGljdCA9IG5ldyBDRkZEaWN0KFtcbiAgLy8ga2V5ICAgICAgIG5hbWUgICAgICAgICAgICAgICAgICAgdHlwZShzKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRcbiAgWzE4LCAgICAgICAgJ1ByaXZhdGUnLCAgICAgICAgICAgICAgbmV3IENGRlByaXZhdGVPcCwgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAzOF0sICAnRm9udE5hbWUnLCAgICAgICAgICAgICAnc2lkJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDddLCAgICdGb250TWF0cml4JywgICAgICAgICAgICdhcnJheScsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbMC4wMDEsIDAsIDAsIDAuMDAxLCAwLCAwXV0sXG4gIFtbMTIsIDVdLCAgICdQYWludFR5cGUnLCAgICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbl0pO1xuXG5sZXQgQ0ZGVG9wRGljdCA9IG5ldyBDRkZEaWN0KFtcbiAgLy8ga2V5ICAgICAgIG5hbWUgICAgICAgICAgICAgICAgICAgdHlwZShzKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRcbiAgW1sxMiwgMzBdLCAgJ1JPUycsICAgICAgICAgICAgICAgICAgWydzaWQnLCAnc2lkJywgJ251bWJlciddLCAgICAgICAgICAgICAgIG51bGxdLFxuXG4gIFswLCAgICAgICAgICd2ZXJzaW9uJywgICAgICAgICAgICAgICdzaWQnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgWzEsICAgICAgICAgJ05vdGljZScsICAgICAgICAgICAgICAgJ3NpZCcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAwXSwgICAnQ29weXJpZ2h0JywgICAgICAgICAgICAnc2lkJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFsyLCAgICAgICAgICdGdWxsTmFtZScsICAgICAgICAgICAgICdzaWQnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgWzMsICAgICAgICAgJ0ZhbWlseU5hbWUnLCAgICAgICAgICAgJ3NpZCcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbNCwgICAgICAgICAnV2VpZ2h0JywgICAgICAgICAgICAgICAnc2lkJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDFdLCAgICdpc0ZpeGVkUGl0Y2gnLCAgICAgICAgICdib29sZWFuJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZV0sXG4gIFtbMTIsIDJdLCAgICdJdGFsaWNBbmdsZScsICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgW1sxMiwgM10sICAgJ1VuZGVybGluZVBvc2l0aW9uJywgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xMDBdLFxuICBbWzEyLCA0XSwgICAnVW5kZXJsaW5lVGhpY2tuZXNzJywgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNTBdLFxuICBbWzEyLCA1XSwgICAnUGFpbnRUeXBlJywgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFtbMTIsIDZdLCAgICdDaGFyc3RyaW5nVHlwZScsICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyXSxcbiAgW1sxMiwgN10sICAgJ0ZvbnRNYXRyaXgnLCAgICAgICAgICAgJ2FycmF5JywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswLjAwMSwgMCwgMCwgMC4wMDEsIDAsIDBdXSxcbiAgWzEzLCAgICAgICAgJ1VuaXF1ZUlEJywgICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbNSwgICAgICAgICAnRm9udEJCb3gnLCAgICAgICAgICAgICAnYXJyYXknLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzAsIDAsIDAsIDBdXSxcbiAgW1sxMiwgOF0sICAgJ1N0cm9rZVdpZHRoJywgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDBdLFxuICBbMTQsICAgICAgICAnWFVJRCcsICAgICAgICAgICAgICAgICAnYXJyYXknLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFsxNSwgICAgICAgICdjaGFyc2V0JywgICAgICAgICAgICAgIENGRkNoYXJzZXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJU09BZG9iZUNoYXJzZXRdLFxuICBbMTYsICAgICAgICAnRW5jb2RpbmcnLCAgICAgICAgICAgICBDRkZFbmNvZGluZywgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RhbmRhcmRFbmNvZGluZ10sXG4gIFsxNywgICAgICAgICdDaGFyU3RyaW5ncycsICAgICAgICAgIG5ldyBDRkZQb2ludGVyKG5ldyBDRkZJbmRleCksICAgICAgICAgICBudWxsXSxcbiAgWzE4LCAgICAgICAgJ1ByaXZhdGUnLCAgICAgICAgICAgICAgbmV3IENGRlByaXZhdGVPcCwgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAyMF0sICAnU3ludGhldGljQmFzZScsICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDIxXSwgICdQb3N0U2NyaXB0JywgICAgICAgICAgICdzaWQnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMjJdLCAgJ0Jhc2VGb250TmFtZScsICAgICAgICAgJ3NpZCcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAyM10sICAnQmFzZUZvbnRCbGVuZCcsICAgICAgICAnZGVsdGEnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG5cbiAgLy8gQ0lEIGZvbnQgc3BlY2lmaWNcbiAgW1sxMiwgMzFdLCAgJ0NJREZvbnRWZXJzaW9uJywgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDBdLFxuICBbWzEyLCAzMl0sICAnQ0lERm9udFJldmlzaW9uJywgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFtbMTIsIDMzXSwgICdDSURGb250VHlwZScsICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgW1sxMiwgMzRdLCAgJ0NJRENvdW50JywgICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDg3MjBdLFxuICBbWzEyLCAzNV0sICAnVUlEQmFzZScsICAgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDM3XSwgICdGRFNlbGVjdCcsICAgICAgICAgICAgIG5ldyBDRkZQb2ludGVyKEZEU2VsZWN0KSwgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMzZdLCAgJ0ZEQXJyYXknLCAgICAgICAgICAgICAgbmV3IENGRlBvaW50ZXIobmV3IENGRkluZGV4KEZvbnREaWN0KSksIG51bGxdLFxuICBbWzEyLCAzOF0sICAnRm9udE5hbWUnLCAgICAgICAgICAgICAnc2lkJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF1cbl0pO1xuXG5sZXQgVmFyaWF0aW9uU3RvcmUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBsZW5ndGg6IHIudWludDE2LFxuICBpdGVtVmFyaWF0aW9uU3RvcmU6IEl0ZW1WYXJpYXRpb25TdG9yZVxufSlcblxubGV0IENGRjJUb3BEaWN0ID0gbmV3IENGRkRpY3QoW1xuICBbWzEyLCA3XSwgICAnRm9udE1hdHJpeCcsICAgICAgICAgICAnYXJyYXknLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzAuMDAxLCAwLCAwLCAwLjAwMSwgMCwgMF1dLFxuICBbMTcsICAgICAgICAnQ2hhclN0cmluZ3MnLCAgICAgICAgICBuZXcgQ0ZGUG9pbnRlcihuZXcgQ0ZGSW5kZXgpLCAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDM3XSwgICdGRFNlbGVjdCcsICAgICAgICAgICAgIG5ldyBDRkZQb2ludGVyKEZEU2VsZWN0KSwgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMzZdLCAgJ0ZEQXJyYXknLCAgICAgICAgICAgICAgbmV3IENGRlBvaW50ZXIobmV3IENGRkluZGV4KEZvbnREaWN0KSksIG51bGxdLFxuICBbMjQsICAgICAgICAndnN0b3JlJywgICAgICAgICAgICAgICBuZXcgQ0ZGUG9pbnRlcihWYXJpYXRpb25TdG9yZSksICAgICAgICAgbnVsbF0sXG4gIFsyNSwgICAgICAgICdtYXhzdGFjaycsICAgICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxOTNdXG5dKTtcblxubGV0IENGRlRvcCA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLmZpeGVkMTYsIHtcbiAgMToge1xuICAgIGhkclNpemU6ICAgICAgICAgICAgci51aW50OCxcbiAgICBvZmZTaXplOiAgICAgICAgICAgIHIudWludDgsXG4gICAgbmFtZUluZGV4OiAgICAgICAgICBuZXcgQ0ZGSW5kZXgobmV3IHIuU3RyaW5nKCdsZW5ndGgnKSksXG4gICAgdG9wRGljdEluZGV4OiAgICAgICBuZXcgQ0ZGSW5kZXgoQ0ZGVG9wRGljdCksXG4gICAgc3RyaW5nSW5kZXg6ICAgICAgICBuZXcgQ0ZGSW5kZXgobmV3IHIuU3RyaW5nKCdsZW5ndGgnKSksXG4gICAgZ2xvYmFsU3VickluZGV4OiAgICBuZXcgQ0ZGSW5kZXhcbiAgfSxcblxuICAyOiB7XG4gICAgaGRyU2l6ZTogICAgICAgICAgICByLnVpbnQ4LFxuICAgIGxlbmd0aDogICAgICAgICAgICAgci51aW50MTYsXG4gICAgdG9wRGljdDogICAgICAgICAgICBDRkYyVG9wRGljdCxcbiAgICBnbG9iYWxTdWJySW5kZXg6ICAgIG5ldyBDRkZJbmRleFxuICB9XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgQ0ZGVG9wO1xuIiwgImltcG9ydCBpc0VxdWFsIGZyb20gJ2Zhc3QtZGVlcC1lcXVhbCc7XG5pbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCBDRkZPcGVyYW5kIGZyb20gJy4vQ0ZGT3BlcmFuZCc7XG5pbXBvcnQgeyBQcm9wZXJ0eURlc2NyaXB0b3IgfSBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENGRkRpY3Qge1xuICBjb25zdHJ1Y3RvcihvcHMgPSBbXSkge1xuICAgIHRoaXMub3BzID0gb3BzO1xuICAgIHRoaXMuZmllbGRzID0ge307XG4gICAgZm9yIChsZXQgZmllbGQgb2Ygb3BzKSB7XG4gICAgICBsZXQga2V5ID0gQXJyYXkuaXNBcnJheShmaWVsZFswXSkgPyBmaWVsZFswXVswXSA8PCA4IHwgZmllbGRbMF1bMV0gOiBmaWVsZFswXTtcbiAgICAgIHRoaXMuZmllbGRzW2tleV0gPSBmaWVsZDtcbiAgICB9XG4gIH1cblxuICBkZWNvZGVPcGVyYW5kcyh0eXBlLCBzdHJlYW0sIHJldCwgb3BlcmFuZHMpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0eXBlKSkge1xuICAgICAgcmV0dXJuIG9wZXJhbmRzLm1hcCgob3AsIGkpID0+IHRoaXMuZGVjb2RlT3BlcmFuZHModHlwZVtpXSwgc3RyZWFtLCByZXQsIFtvcF0pKTtcbiAgICB9IGVsc2UgaWYgKHR5cGUuZGVjb2RlICE9IG51bGwpIHtcbiAgICAgIHJldHVybiB0eXBlLmRlY29kZShzdHJlYW0sIHJldCwgb3BlcmFuZHMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgY2FzZSAnbnVtYmVyJzpcbiAgICAgICAgY2FzZSAnb2Zmc2V0JzpcbiAgICAgICAgY2FzZSAnc2lkJzpcbiAgICAgICAgICByZXR1cm4gb3BlcmFuZHNbMF07XG4gICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxuICAgICAgICAgIHJldHVybiAhIW9wZXJhbmRzWzBdO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiBvcGVyYW5kcztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBlbmNvZGVPcGVyYW5kcyh0eXBlLCBzdHJlYW0sIGN0eCwgb3BlcmFuZHMpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0eXBlKSkge1xuICAgICAgcmV0dXJuIG9wZXJhbmRzLm1hcCgob3AsIGkpID0+IHRoaXMuZW5jb2RlT3BlcmFuZHModHlwZVtpXSwgc3RyZWFtLCBjdHgsIG9wKVswXSk7XG4gICAgfSBlbHNlIGlmICh0eXBlLmVuY29kZSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdHlwZS5lbmNvZGUoc3RyZWFtLCBvcGVyYW5kcywgY3R4KTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcGVyYW5kcyA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBbb3BlcmFuZHNdO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIG9wZXJhbmRzID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHJldHVybiBbK29wZXJhbmRzXTtcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkob3BlcmFuZHMpKSB7XG4gICAgICByZXR1cm4gb3BlcmFuZHM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbb3BlcmFuZHNdO1xuICAgIH1cbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIGxldCBlbmQgPSBzdHJlYW0ucG9zICsgcGFyZW50Lmxlbmd0aDtcbiAgICBsZXQgcmV0ID0ge307XG4gICAgbGV0IG9wZXJhbmRzID0gW107XG5cbiAgICAvLyBkZWZpbmUgaGlkZGVuIHByb3BlcnRpZXNcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhyZXQsIHtcbiAgICAgIHBhcmVudDogICAgICAgICB7IHZhbHVlOiBwYXJlbnQgfSxcbiAgICAgIF9zdGFydE9mZnNldDogICB7IHZhbHVlOiBzdHJlYW0ucG9zIH1cbiAgICB9KTtcblxuICAgIC8vIGZpbGwgaW4gZGVmYXVsdHNcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5maWVsZHMpIHtcbiAgICAgIGxldCBmaWVsZCA9IHRoaXMuZmllbGRzW2tleV07XG4gICAgICByZXRbZmllbGRbMV1dID0gZmllbGRbM107XG4gICAgfVxuXG4gICAgd2hpbGUgKHN0cmVhbS5wb3MgPCBlbmQpIHtcbiAgICAgIGxldCBiID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgaWYgKGIgPCAyOCkge1xuICAgICAgICBpZiAoYiA9PT0gMTIpIHtcbiAgICAgICAgICBiID0gKGIgPDwgOCkgfCBzdHJlYW0ucmVhZFVJbnQ4KCk7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgZmllbGQgPSB0aGlzLmZpZWxkc1tiXTtcbiAgICAgICAgaWYgKCFmaWVsZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBvcGVyYXRvciAke2J9YCk7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgdmFsID0gdGhpcy5kZWNvZGVPcGVyYW5kcyhmaWVsZFsyXSwgc3RyZWFtLCByZXQsIG9wZXJhbmRzKTtcbiAgICAgICAgaWYgKHZhbCAhPSBudWxsKSB7XG4gICAgICAgICAgaWYgKHZhbCBpbnN0YW5jZW9mIFByb3BlcnR5RGVzY3JpcHRvcikge1xuICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJldCwgZmllbGRbMV0sIHZhbCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldFtmaWVsZFsxXV0gPSB2YWw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgb3BlcmFuZHMgPSBbXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9wZXJhbmRzLnB1c2goQ0ZGT3BlcmFuZC5kZWNvZGUoc3RyZWFtLCBiKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJldDtcbiAgfVxuXG4gIHNpemUoZGljdCwgcGFyZW50LCBpbmNsdWRlUG9pbnRlcnMgPSB0cnVlKSB7XG4gICAgbGV0IGN0eCA9IHtcbiAgICAgIHBhcmVudCxcbiAgICAgIHZhbDogZGljdCxcbiAgICAgIHBvaW50ZXJTaXplOiAwLFxuICAgICAgc3RhcnRPZmZzZXQ6IHBhcmVudC5zdGFydE9mZnNldCB8fCAwXG4gICAgfTtcblxuICAgIGxldCBsZW4gPSAwO1xuXG4gICAgZm9yIChsZXQgayBpbiB0aGlzLmZpZWxkcykge1xuICAgICAgbGV0IGZpZWxkID0gdGhpcy5maWVsZHNba107XG4gICAgICBsZXQgdmFsID0gZGljdFtmaWVsZFsxXV07XG4gICAgICBpZiAodmFsID09IG51bGwgfHwgaXNFcXVhbCh2YWwsIGZpZWxkWzNdKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgbGV0IG9wZXJhbmRzID0gdGhpcy5lbmNvZGVPcGVyYW5kcyhmaWVsZFsyXSwgbnVsbCwgY3R4LCB2YWwpO1xuICAgICAgZm9yIChsZXQgb3Agb2Ygb3BlcmFuZHMpIHtcbiAgICAgICAgbGVuICs9IENGRk9wZXJhbmQuc2l6ZShvcCk7XG4gICAgICB9XG5cbiAgICAgIGxldCBrZXkgPSBBcnJheS5pc0FycmF5KGZpZWxkWzBdKSA/IGZpZWxkWzBdIDogW2ZpZWxkWzBdXTtcbiAgICAgIGxlbiArPSBrZXkubGVuZ3RoO1xuICAgIH1cblxuICAgIGlmIChpbmNsdWRlUG9pbnRlcnMpIHtcbiAgICAgIGxlbiArPSBjdHgucG9pbnRlclNpemU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxlbjtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIGRpY3QsIHBhcmVudCkge1xuICAgIGxldCBjdHggPSB7XG4gICAgICBwb2ludGVyczogW10sXG4gICAgICBzdGFydE9mZnNldDogc3RyZWFtLnBvcyxcbiAgICAgIHBhcmVudCxcbiAgICAgIHZhbDogZGljdCxcbiAgICAgIHBvaW50ZXJTaXplOiAwXG4gICAgfTtcblxuICAgIGN0eC5wb2ludGVyT2Zmc2V0ID0gc3RyZWFtLnBvcyArIHRoaXMuc2l6ZShkaWN0LCBjdHgsIGZhbHNlKTtcblxuICAgIGZvciAobGV0IGZpZWxkIG9mIHRoaXMub3BzKSB7XG4gICAgICBsZXQgdmFsID0gZGljdFtmaWVsZFsxXV07XG4gICAgICBpZiAodmFsID09IG51bGwgfHwgaXNFcXVhbCh2YWwsIGZpZWxkWzNdKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgbGV0IG9wZXJhbmRzID0gdGhpcy5lbmNvZGVPcGVyYW5kcyhmaWVsZFsyXSwgc3RyZWFtLCBjdHgsIHZhbCk7XG4gICAgICBmb3IgKGxldCBvcCBvZiBvcGVyYW5kcykge1xuICAgICAgICBDRkZPcGVyYW5kLmVuY29kZShzdHJlYW0sIG9wKTtcbiAgICAgIH1cblxuICAgICAgbGV0IGtleSA9IEFycmF5LmlzQXJyYXkoZmllbGRbMF0pID8gZmllbGRbMF0gOiBbZmllbGRbMF1dO1xuICAgICAgZm9yIChsZXQgb3Agb2Yga2V5KSB7XG4gICAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KG9wKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgaSA9IDA7XG4gICAgd2hpbGUgKGkgPCBjdHgucG9pbnRlcnMubGVuZ3RoKSB7XG4gICAgICBsZXQgcHRyID0gY3R4LnBvaW50ZXJzW2krK107XG4gICAgICBwdHIudHlwZS5lbmNvZGUoc3RyZWFtLCBwdHIudmFsLCBwdHIucGFyZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH1cbn1cbiIsICJjb25zdCBGTE9BVF9FT0YgPSAweGY7XG5jb25zdCBGTE9BVF9MT09LVVAgPSBbXG4gICcwJywgJzEnLCAnMicsICczJywgJzQnLCAnNScsICc2JywgJzcnLFxuICAnOCcsICc5JywgJy4nLCAnRScsICdFLScsIG51bGwsICctJ1xuXTtcblxuY29uc3QgRkxPQVRfRU5DT0RFX0xPT0tVUCA9IHtcbiAgJy4nOiAxMCxcbiAgJ0UnOiAxMSxcbiAgJ0UtJzogMTIsXG4gICctJzogMTRcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENGRk9wZXJhbmQge1xuICBzdGF0aWMgZGVjb2RlKHN0cmVhbSwgdmFsdWUpIHtcbiAgICBpZiAoMzIgPD0gdmFsdWUgJiYgdmFsdWUgPD0gMjQ2KSB7XG4gICAgICByZXR1cm4gdmFsdWUgLSAxMzk7XG4gICAgfVxuXG4gICAgaWYgKDI0NyA8PSB2YWx1ZSAmJiB2YWx1ZSA8PSAyNTApIHtcbiAgICAgIHJldHVybiAodmFsdWUgLSAyNDcpICogMjU2ICsgc3RyZWFtLnJlYWRVSW50OCgpICsgMTA4O1xuICAgIH1cblxuICAgIGlmICgyNTEgPD0gdmFsdWUgJiYgdmFsdWUgPD0gMjU0KSB7XG4gICAgICByZXR1cm4gLSh2YWx1ZSAtIDI1MSkgKiAyNTYgLSBzdHJlYW0ucmVhZFVJbnQ4KCkgLSAxMDg7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlID09PSAyOCkge1xuICAgICAgcmV0dXJuIHN0cmVhbS5yZWFkSW50MTZCRSgpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA9PT0gMjkpIHtcbiAgICAgIHJldHVybiBzdHJlYW0ucmVhZEludDMyQkUoKTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPT09IDMwKSB7XG4gICAgICBsZXQgc3RyID0gJyc7XG4gICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICBsZXQgYiA9IHN0cmVhbS5yZWFkVUludDgoKTtcblxuICAgICAgICBsZXQgbjEgPSBiID4+IDQ7XG4gICAgICAgIGlmIChuMSA9PT0gRkxPQVRfRU9GKSB7IGJyZWFrOyB9XG4gICAgICAgIHN0ciArPSBGTE9BVF9MT09LVVBbbjFdO1xuXG4gICAgICAgIGxldCBuMiA9IGIgJiAxNTtcbiAgICAgICAgaWYgKG4yID09PSBGTE9BVF9FT0YpIHsgYnJlYWs7IH1cbiAgICAgICAgc3RyICs9IEZMT0FUX0xPT0tVUFtuMl07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBwYXJzZUZsb2F0KHN0cik7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzdGF0aWMgc2l6ZSh2YWx1ZSkge1xuICAgIC8vIGlmIHRoZSB2YWx1ZSBuZWVkcyB0byBiZSBmb3JjZWQgdG8gdGhlIGxhcmdlc3Qgc2l6ZSAoMzIgYml0KVxuICAgIC8vIGUuZy4gZm9yIHVua25vd24gcG9pbnRlcnMsIHNldCB0byAzMjc2OFxuICAgIGlmICh2YWx1ZS5mb3JjZUxhcmdlKSB7XG4gICAgICB2YWx1ZSA9IDMyNzY4O1xuICAgIH1cblxuICAgIGlmICgodmFsdWUgfCAwKSAhPT0gdmFsdWUpIHsgLy8gZmxvYXRpbmcgcG9pbnRcbiAgICAgIGxldCBzdHIgPSAnJyArIHZhbHVlO1xuICAgICAgcmV0dXJuIDEgKyBNYXRoLmNlaWwoKHN0ci5sZW5ndGggKyAxKSAvIDIpO1xuXG4gICAgfSBlbHNlIGlmICgtMTA3IDw9IHZhbHVlICYmIHZhbHVlIDw9IDEwNykge1xuICAgICAgcmV0dXJuIDE7XG5cbiAgICB9IGVsc2UgaWYgKDEwOCA8PSB2YWx1ZSAmJiB2YWx1ZSA8PSAxMTMxIHx8IC0xMTMxIDw9IHZhbHVlICYmIHZhbHVlIDw9IC0xMDgpIHtcbiAgICAgIHJldHVybiAyO1xuXG4gICAgfSBlbHNlIGlmICgtMzI3NjggPD0gdmFsdWUgJiYgdmFsdWUgPD0gMzI3NjcpIHtcbiAgICAgIHJldHVybiAzO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiA1O1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBlbmNvZGUoc3RyZWFtLCB2YWx1ZSkge1xuICAgIC8vIGlmIHRoZSB2YWx1ZSBuZWVkcyB0byBiZSBmb3JjZWQgdG8gdGhlIGxhcmdlc3Qgc2l6ZSAoMzIgYml0KVxuICAgIC8vIGUuZy4gZm9yIHVua25vd24gcG9pbnRlcnMsIHNhdmUgdGhlIG9sZCB2YWx1ZSBhbmQgc2V0IHRvIDMyNzY4XG4gICAgbGV0IHZhbCA9IE51bWJlcih2YWx1ZSk7XG5cbiAgICBpZiAodmFsdWUuZm9yY2VMYXJnZSkge1xuICAgICAgc3RyZWFtLndyaXRlVUludDgoMjkpO1xuICAgICAgcmV0dXJuIHN0cmVhbS53cml0ZUludDMyQkUodmFsKTtcblxuICAgIH0gZWxzZSBpZiAoKHZhbCB8IDApICE9PSB2YWwpIHsgLy8gZmxvYXRpbmcgcG9pbnRcbiAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KDMwKTtcblxuICAgICAgbGV0IHN0ciA9ICcnICsgdmFsO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAgICAgbGV0IGMxID0gc3RyW2ldO1xuICAgICAgICBsZXQgbjEgPSBGTE9BVF9FTkNPREVfTE9PS1VQW2MxXSB8fCArYzE7XG5cbiAgICAgICAgaWYgKGkgPT09IHN0ci5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgdmFyIG4yID0gRkxPQVRfRU9GO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxldCBjMiA9IHN0cltpICsgMV07XG4gICAgICAgICAgdmFyIG4yID0gRkxPQVRfRU5DT0RFX0xPT0tVUFtjMl0gfHwgK2MyO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RyZWFtLndyaXRlVUludDgoKG4xIDw8IDQpIHwgKG4yICYgMTUpKTtcbiAgICAgIH1cblxuICAgICAgaWYgKG4yICE9PSBGTE9BVF9FT0YpIHtcbiAgICAgICAgcmV0dXJuIHN0cmVhbS53cml0ZVVJbnQ4KChGTE9BVF9FT0YgPDwgNCkpO1xuICAgICAgfVxuXG4gICAgfSBlbHNlIGlmICgtMTA3IDw9IHZhbCAmJiB2YWwgPD0gMTA3KSB7XG4gICAgICByZXR1cm4gc3RyZWFtLndyaXRlVUludDgodmFsICsgMTM5KTtcblxuICAgIH0gZWxzZSBpZiAoMTA4IDw9IHZhbCAmJiB2YWwgPD0gMTEzMSkge1xuICAgICAgdmFsIC09IDEwODtcbiAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KCh2YWwgPj4gOCkgKyAyNDcpO1xuICAgICAgcmV0dXJuIHN0cmVhbS53cml0ZVVJbnQ4KHZhbCAmIDB4ZmYpO1xuXG4gICAgfSBlbHNlIGlmICgtMTEzMSA8PSB2YWwgJiYgdmFsIDw9IC0xMDgpIHtcbiAgICAgIHZhbCA9IC12YWwgLSAxMDg7XG4gICAgICBzdHJlYW0ud3JpdGVVSW50OCgodmFsID4+IDgpICsgMjUxKTtcbiAgICAgIHJldHVybiBzdHJlYW0ud3JpdGVVSW50OCh2YWwgJiAweGZmKTtcblxuICAgIH0gZWxzZSBpZiAoLTMyNzY4IDw9IHZhbCAmJiB2YWwgPD0gMzI3NjcpIHtcbiAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KDI4KTtcbiAgICAgIHJldHVybiBzdHJlYW0ud3JpdGVJbnQxNkJFKHZhbCk7XG5cbiAgICB9IGVsc2Uge1xuICAgICAgc3RyZWFtLndyaXRlVUludDgoMjkpO1xuICAgICAgcmV0dXJuIHN0cmVhbS53cml0ZUludDMyQkUodmFsKTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ0ZGUG9pbnRlciBleHRlbmRzIHIuUG9pbnRlciB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIG9wdGlvbnMgPSB7fSkge1xuICAgIGlmIChvcHRpb25zLnR5cGUgPT0gbnVsbCkge1xuICAgICAgb3B0aW9ucy50eXBlID0gJ2dsb2JhbCc7XG4gICAgfVxuXG4gICAgc3VwZXIobnVsbCwgdHlwZSwgb3B0aW9ucyk7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQsIG9wZXJhbmRzKSB7XG4gICAgdGhpcy5vZmZzZXRUeXBlID0ge1xuICAgICAgZGVjb2RlOiAoKSA9PiBvcGVyYW5kc1swXVxuICAgIH07XG5cbiAgICByZXR1cm4gc3VwZXIuZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBvcGVyYW5kcyk7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWx1ZSwgY3R4KSB7XG4gICAgaWYgKCFzdHJlYW0pIHtcbiAgICAgIC8vIGNvbXB1dGUgdGhlIHNpemUgKHNvIGN0eC5wb2ludGVyU2l6ZSBpcyBjb3JyZWN0KVxuICAgICAgdGhpcy5vZmZzZXRUeXBlID0ge1xuICAgICAgICBzaXplOiAoKSA9PiAwXG4gICAgICB9O1xuXG4gICAgICB0aGlzLnNpemUodmFsdWUsIGN0eCk7XG4gICAgICByZXR1cm4gW25ldyBQdHIoMCldO1xuICAgIH1cblxuICAgIGxldCBwdHIgPSBudWxsO1xuICAgIHRoaXMub2Zmc2V0VHlwZSA9IHtcbiAgICAgIGVuY29kZTogKHN0cmVhbSwgdmFsKSA9PiBwdHIgPSB2YWxcbiAgICB9O1xuXG4gICAgc3VwZXIuZW5jb2RlKHN0cmVhbSwgdmFsdWUsIGN0eCk7XG4gICAgcmV0dXJuIFtuZXcgUHRyKHB0cildO1xuICB9XG59XG5cbmNsYXNzIFB0ciB7XG4gIGNvbnN0cnVjdG9yKHZhbCkge1xuICAgIHRoaXMudmFsID0gdmFsO1xuICAgIHRoaXMuZm9yY2VMYXJnZSA9IHRydWU7XG4gIH1cblxuICB2YWx1ZU9mKCkge1xuICAgIHJldHVybiB0aGlzLnZhbDtcbiAgfVxufVxuIiwgImltcG9ydCBDRkZEaWN0IGZyb20gJy4vQ0ZGRGljdCc7XG5pbXBvcnQgQ0ZGSW5kZXggZnJvbSAnLi9DRkZJbmRleCc7XG5pbXBvcnQgQ0ZGUG9pbnRlciBmcm9tICcuL0NGRlBvaW50ZXInO1xuXG5jbGFzcyBDRkZCbGVuZE9wIHtcbiAgc3RhdGljIGRlY29kZShzdHJlYW0sIHBhcmVudCwgb3BlcmFuZHMpIHtcbiAgICBsZXQgbnVtQmxlbmRzID0gb3BlcmFuZHMucG9wKCk7XG5cbiAgICAvLyBUT0RPOiBhY3R1YWxseSBibGVuZC4gRm9yIG5vdyBqdXN0IGNvbnN1bWUgdGhlIGRlbHRhc1xuICAgIC8vIHNpbmNlIHdlIGRvbid0IHVzZSBhbnkgb2YgdGhlIHZhbHVlcyBhbnl3YXkuXG4gICAgd2hpbGUgKG9wZXJhbmRzLmxlbmd0aCA+IG51bUJsZW5kcykge1xuICAgICAgb3BlcmFuZHMucG9wKCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyBDRkZEaWN0KFtcbiAgLy8ga2V5ICAgICAgIG5hbWUgICAgICAgICAgICAgICAgICAgIHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0XG4gIFs2LCAgICAgICAgICdCbHVlVmFsdWVzJywgICAgICAgICAgICdkZWx0YScsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFs3LCAgICAgICAgICdPdGhlckJsdWVzJywgICAgICAgICAgICdkZWx0YScsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFs4LCAgICAgICAgICdGYW1pbHlCbHVlcycsICAgICAgICAgICdkZWx0YScsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFs5LCAgICAgICAgICdGYW1pbHlPdGhlckJsdWVzJywgICAgICdkZWx0YScsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDldLCAgICdCbHVlU2NhbGUnLCAgICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wMzk2MjVdLFxuICBbWzEyLCAxMF0sICAnQmx1ZVNoaWZ0JywgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDddLFxuICBbWzEyLCAxMV0sICAnQmx1ZUZ1enonLCAgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFdLFxuICBbMTAsICAgICAgICAnU3RkSFcnLCAgICAgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbMTEsICAgICAgICAnU3RkVlcnLCAgICAgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAxMl0sICAnU3RlbVNuYXBIJywgICAgICAgICAgICAnZGVsdGEnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAxM10sICAnU3RlbVNuYXBWJywgICAgICAgICAgICAnZGVsdGEnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAxNF0sICAnRm9yY2VCb2xkJywgICAgICAgICAgICAnYm9vbGVhbicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlXSxcbiAgW1sxMiwgMTddLCAgJ0xhbmd1YWdlR3JvdXAnLCAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgW1sxMiwgMThdLCAgJ0V4cGFuc2lvbkZhY3RvcicsICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjA2XSxcbiAgW1sxMiwgMTldLCAgJ2luaXRpYWxSYW5kb21TZWVkJywgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgWzIwLCAgICAgICAgJ2RlZmF1bHRXaWR0aFgnLCAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgWzIxLCAgICAgICAgJ25vbWluYWxXaWR0aFgnLCAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgWzIyLCAgICAgICAgJ3ZzaW5kZXgnLCAgICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgWzIzLCAgICAgICAgJ2JsZW5kJywgICAgICAgICAgICAgICAgQ0ZGQmxlbmRPcCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgWzE5LCAgICAgICAgJ1N1YnJzJywgICAgICAgICAgICAgICAgbmV3IENGRlBvaW50ZXIobmV3IENGRkluZGV4LCB7dHlwZTogJ2xvY2FsJ30pLCBudWxsXVxuXSk7XG4iLCAiLy8gQXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBBcHBlbmRpeCBBIG9mIHRoZSBDRkYgc3BlY2lmaWNhdGlvbjsgZG9cbi8vIG5vdCBlZGl0LiBMZW5ndGggc2hvdWxkIGJlIDM5MS5cbmV4cG9ydCBkZWZhdWx0IFtcbiAgXCIubm90ZGVmXCIsIFwic3BhY2VcIiwgXCJleGNsYW1cIiwgXCJxdW90ZWRibFwiLCBcIm51bWJlcnNpZ25cIiwgXCJkb2xsYXJcIixcbiAgXCJwZXJjZW50XCIsIFwiYW1wZXJzYW5kXCIsIFwicXVvdGVyaWdodFwiLCBcInBhcmVubGVmdFwiLCBcInBhcmVucmlnaHRcIixcbiAgXCJhc3Rlcmlza1wiLCBcInBsdXNcIiwgXCJjb21tYVwiLCBcImh5cGhlblwiLCBcInBlcmlvZFwiLCBcInNsYXNoXCIsIFwiemVyb1wiLCBcIm9uZVwiLFxuICBcInR3b1wiLCBcInRocmVlXCIsIFwiZm91clwiLCBcImZpdmVcIiwgXCJzaXhcIiwgXCJzZXZlblwiLCBcImVpZ2h0XCIsIFwibmluZVwiLCBcImNvbG9uXCIsXG4gIFwic2VtaWNvbG9uXCIsIFwibGVzc1wiLCBcImVxdWFsXCIsIFwiZ3JlYXRlclwiLCBcInF1ZXN0aW9uXCIsIFwiYXRcIiwgXCJBXCIsIFwiQlwiLCBcIkNcIixcbiAgXCJEXCIsIFwiRVwiLCBcIkZcIiwgXCJHXCIsIFwiSFwiLCBcIklcIiwgXCJKXCIsIFwiS1wiLCBcIkxcIiwgXCJNXCIsIFwiTlwiLCBcIk9cIiwgXCJQXCIsIFwiUVwiLCBcIlJcIixcbiAgXCJTXCIsIFwiVFwiLCBcIlVcIiwgXCJWXCIsIFwiV1wiLCBcIlhcIiwgXCJZXCIsIFwiWlwiLCBcImJyYWNrZXRsZWZ0XCIsIFwiYmFja3NsYXNoXCIsXG4gIFwiYnJhY2tldHJpZ2h0XCIsIFwiYXNjaWljaXJjdW1cIiwgXCJ1bmRlcnNjb3JlXCIsIFwicXVvdGVsZWZ0XCIsIFwiYVwiLCBcImJcIiwgXCJjXCIsXG4gIFwiZFwiLCBcImVcIiwgXCJmXCIsIFwiZ1wiLCBcImhcIiwgXCJpXCIsIFwialwiLCBcImtcIiwgXCJsXCIsIFwibVwiLCBcIm5cIiwgXCJvXCIsIFwicFwiLCBcInFcIiwgXCJyXCIsXG4gIFwic1wiLCBcInRcIiwgXCJ1XCIsIFwidlwiLCBcIndcIiwgXCJ4XCIsIFwieVwiLCBcInpcIiwgXCJicmFjZWxlZnRcIiwgXCJiYXJcIiwgXCJicmFjZXJpZ2h0XCIsXG4gIFwiYXNjaWl0aWxkZVwiLCBcImV4Y2xhbWRvd25cIiwgXCJjZW50XCIsIFwic3RlcmxpbmdcIiwgXCJmcmFjdGlvblwiLCBcInllblwiLFxuICBcImZsb3JpblwiLCBcInNlY3Rpb25cIiwgXCJjdXJyZW5jeVwiLCBcInF1b3Rlc2luZ2xlXCIsIFwicXVvdGVkYmxsZWZ0XCIsXG4gIFwiZ3VpbGxlbW90bGVmdFwiLCBcImd1aWxzaW5nbGxlZnRcIiwgXCJndWlsc2luZ2xyaWdodFwiLCBcImZpXCIsIFwiZmxcIiwgXCJlbmRhc2hcIixcbiAgXCJkYWdnZXJcIiwgXCJkYWdnZXJkYmxcIiwgXCJwZXJpb2RjZW50ZXJlZFwiLCBcInBhcmFncmFwaFwiLCBcImJ1bGxldFwiLFxuICBcInF1b3Rlc2luZ2xiYXNlXCIsIFwicXVvdGVkYmxiYXNlXCIsIFwicXVvdGVkYmxyaWdodFwiLCBcImd1aWxsZW1vdHJpZ2h0XCIsXG4gIFwiZWxsaXBzaXNcIiwgXCJwZXJ0aG91c2FuZFwiLCBcInF1ZXN0aW9uZG93blwiLCBcImdyYXZlXCIsIFwiYWN1dGVcIiwgXCJjaXJjdW1mbGV4XCIsXG4gIFwidGlsZGVcIiwgXCJtYWNyb25cIiwgXCJicmV2ZVwiLCBcImRvdGFjY2VudFwiLCBcImRpZXJlc2lzXCIsIFwicmluZ1wiLCBcImNlZGlsbGFcIixcbiAgXCJodW5nYXJ1bWxhdXRcIiwgXCJvZ29uZWtcIiwgXCJjYXJvblwiLCBcImVtZGFzaFwiLCBcIkFFXCIsIFwib3JkZmVtaW5pbmVcIiwgXCJMc2xhc2hcIixcbiAgXCJPc2xhc2hcIiwgXCJPRVwiLCBcIm9yZG1hc2N1bGluZVwiLCBcImFlXCIsIFwiZG90bGVzc2lcIiwgXCJsc2xhc2hcIiwgXCJvc2xhc2hcIiwgXCJvZVwiLFxuICBcImdlcm1hbmRibHNcIiwgXCJvbmVzdXBlcmlvclwiLCBcImxvZ2ljYWxub3RcIiwgXCJtdVwiLCBcInRyYWRlbWFya1wiLCBcIkV0aFwiLFxuICBcIm9uZWhhbGZcIiwgXCJwbHVzbWludXNcIiwgXCJUaG9yblwiLCBcIm9uZXF1YXJ0ZXJcIiwgXCJkaXZpZGVcIiwgXCJicm9rZW5iYXJcIixcbiAgXCJkZWdyZWVcIiwgXCJ0aG9yblwiLCBcInRocmVlcXVhcnRlcnNcIiwgXCJ0d29zdXBlcmlvclwiLCBcInJlZ2lzdGVyZWRcIiwgXCJtaW51c1wiLFxuICBcImV0aFwiLCBcIm11bHRpcGx5XCIsIFwidGhyZWVzdXBlcmlvclwiLCBcImNvcHlyaWdodFwiLCBcIkFhY3V0ZVwiLCBcIkFjaXJjdW1mbGV4XCIsXG4gIFwiQWRpZXJlc2lzXCIsIFwiQWdyYXZlXCIsIFwiQXJpbmdcIiwgXCJBdGlsZGVcIiwgXCJDY2VkaWxsYVwiLCBcIkVhY3V0ZVwiLFxuICBcIkVjaXJjdW1mbGV4XCIsIFwiRWRpZXJlc2lzXCIsIFwiRWdyYXZlXCIsIFwiSWFjdXRlXCIsIFwiSWNpcmN1bWZsZXhcIiwgXCJJZGllcmVzaXNcIixcbiAgXCJJZ3JhdmVcIiwgXCJOdGlsZGVcIiwgXCJPYWN1dGVcIiwgXCJPY2lyY3VtZmxleFwiLCBcIk9kaWVyZXNpc1wiLCBcIk9ncmF2ZVwiLFxuICBcIk90aWxkZVwiLCBcIlNjYXJvblwiLCBcIlVhY3V0ZVwiLCBcIlVjaXJjdW1mbGV4XCIsIFwiVWRpZXJlc2lzXCIsIFwiVWdyYXZlXCIsXG4gIFwiWWFjdXRlXCIsIFwiWWRpZXJlc2lzXCIsIFwiWmNhcm9uXCIsIFwiYWFjdXRlXCIsIFwiYWNpcmN1bWZsZXhcIiwgXCJhZGllcmVzaXNcIixcbiAgXCJhZ3JhdmVcIiwgXCJhcmluZ1wiLCBcImF0aWxkZVwiLCBcImNjZWRpbGxhXCIsIFwiZWFjdXRlXCIsIFwiZWNpcmN1bWZsZXhcIixcbiAgXCJlZGllcmVzaXNcIiwgXCJlZ3JhdmVcIiwgXCJpYWN1dGVcIiwgXCJpY2lyY3VtZmxleFwiLCBcImlkaWVyZXNpc1wiLCBcImlncmF2ZVwiLFxuICBcIm50aWxkZVwiLCBcIm9hY3V0ZVwiLCBcIm9jaXJjdW1mbGV4XCIsIFwib2RpZXJlc2lzXCIsIFwib2dyYXZlXCIsIFwib3RpbGRlXCIsXG4gIFwic2Nhcm9uXCIsIFwidWFjdXRlXCIsIFwidWNpcmN1bWZsZXhcIiwgXCJ1ZGllcmVzaXNcIiwgXCJ1Z3JhdmVcIiwgXCJ5YWN1dGVcIixcbiAgXCJ5ZGllcmVzaXNcIiwgXCJ6Y2Fyb25cIiwgXCJleGNsYW1zbWFsbFwiLCBcIkh1bmdhcnVtbGF1dHNtYWxsXCIsXG4gIFwiZG9sbGFyb2xkc3R5bGVcIiwgXCJkb2xsYXJzdXBlcmlvclwiLCBcImFtcGVyc2FuZHNtYWxsXCIsIFwiQWN1dGVzbWFsbFwiLFxuICBcInBhcmVubGVmdHN1cGVyaW9yXCIsIFwicGFyZW5yaWdodHN1cGVyaW9yXCIsIFwidHdvZG90ZW5sZWFkZXJcIixcbiAgXCJvbmVkb3RlbmxlYWRlclwiLCBcInplcm9vbGRzdHlsZVwiLCBcIm9uZW9sZHN0eWxlXCIsIFwidHdvb2xkc3R5bGVcIixcbiAgXCJ0aHJlZW9sZHN0eWxlXCIsIFwiZm91cm9sZHN0eWxlXCIsIFwiZml2ZW9sZHN0eWxlXCIsIFwic2l4b2xkc3R5bGVcIixcbiAgXCJzZXZlbm9sZHN0eWxlXCIsIFwiZWlnaHRvbGRzdHlsZVwiLCBcIm5pbmVvbGRzdHlsZVwiLCBcImNvbW1hc3VwZXJpb3JcIixcbiAgXCJ0aHJlZXF1YXJ0ZXJzZW1kYXNoXCIsIFwicGVyaW9kc3VwZXJpb3JcIiwgXCJxdWVzdGlvbnNtYWxsXCIsIFwiYXN1cGVyaW9yXCIsXG4gIFwiYnN1cGVyaW9yXCIsIFwiY2VudHN1cGVyaW9yXCIsIFwiZHN1cGVyaW9yXCIsIFwiZXN1cGVyaW9yXCIsIFwiaXN1cGVyaW9yXCIsXG4gIFwibHN1cGVyaW9yXCIsIFwibXN1cGVyaW9yXCIsIFwibnN1cGVyaW9yXCIsIFwib3N1cGVyaW9yXCIsIFwicnN1cGVyaW9yXCIsXG4gIFwic3N1cGVyaW9yXCIsIFwidHN1cGVyaW9yXCIsIFwiZmZcIiwgXCJmZmlcIiwgXCJmZmxcIiwgXCJwYXJlbmxlZnRpbmZlcmlvclwiLFxuICBcInBhcmVucmlnaHRpbmZlcmlvclwiLCBcIkNpcmN1bWZsZXhzbWFsbFwiLCBcImh5cGhlbnN1cGVyaW9yXCIsIFwiR3JhdmVzbWFsbFwiLFxuICBcIkFzbWFsbFwiLCBcIkJzbWFsbFwiLCBcIkNzbWFsbFwiLCBcIkRzbWFsbFwiLCBcIkVzbWFsbFwiLCBcIkZzbWFsbFwiLCBcIkdzbWFsbFwiLFxuICBcIkhzbWFsbFwiLCBcIklzbWFsbFwiLCBcIkpzbWFsbFwiLCBcIktzbWFsbFwiLCBcIkxzbWFsbFwiLCBcIk1zbWFsbFwiLCBcIk5zbWFsbFwiLFxuICBcIk9zbWFsbFwiLCBcIlBzbWFsbFwiLCBcIlFzbWFsbFwiLCBcIlJzbWFsbFwiLCBcIlNzbWFsbFwiLCBcIlRzbWFsbFwiLCBcIlVzbWFsbFwiLFxuICBcIlZzbWFsbFwiLCBcIldzbWFsbFwiLCBcIlhzbWFsbFwiLCBcIllzbWFsbFwiLCBcIlpzbWFsbFwiLCBcImNvbG9ubW9uZXRhcnlcIixcbiAgXCJvbmVmaXR0ZWRcIiwgXCJydXBpYWhcIiwgXCJUaWxkZXNtYWxsXCIsIFwiZXhjbGFtZG93bnNtYWxsXCIsIFwiY2VudG9sZHN0eWxlXCIsXG4gIFwiTHNsYXNoc21hbGxcIiwgXCJTY2Fyb25zbWFsbFwiLCBcIlpjYXJvbnNtYWxsXCIsIFwiRGllcmVzaXNzbWFsbFwiLCBcIkJyZXZlc21hbGxcIixcbiAgXCJDYXJvbnNtYWxsXCIsIFwiRG90YWNjZW50c21hbGxcIiwgXCJNYWNyb25zbWFsbFwiLCBcImZpZ3VyZWRhc2hcIixcbiAgXCJoeXBoZW5pbmZlcmlvclwiLCBcIk9nb25la3NtYWxsXCIsIFwiUmluZ3NtYWxsXCIsIFwiQ2VkaWxsYXNtYWxsXCIsXG4gIFwicXVlc3Rpb25kb3duc21hbGxcIiwgXCJvbmVlaWdodGhcIiwgXCJ0aHJlZWVpZ2h0aHNcIiwgXCJmaXZlZWlnaHRoc1wiLFxuICBcInNldmVuZWlnaHRoc1wiLCBcIm9uZXRoaXJkXCIsIFwidHdvdGhpcmRzXCIsIFwiemVyb3N1cGVyaW9yXCIsIFwiZm91cnN1cGVyaW9yXCIsXG4gIFwiZml2ZXN1cGVyaW9yXCIsIFwic2l4c3VwZXJpb3JcIiwgXCJzZXZlbnN1cGVyaW9yXCIsIFwiZWlnaHRzdXBlcmlvclwiLFxuICBcIm5pbmVzdXBlcmlvclwiLCBcInplcm9pbmZlcmlvclwiLCBcIm9uZWluZmVyaW9yXCIsIFwidHdvaW5mZXJpb3JcIixcbiAgXCJ0aHJlZWluZmVyaW9yXCIsIFwiZm91cmluZmVyaW9yXCIsIFwiZml2ZWluZmVyaW9yXCIsIFwic2l4aW5mZXJpb3JcIixcbiAgXCJzZXZlbmluZmVyaW9yXCIsIFwiZWlnaHRpbmZlcmlvclwiLCBcIm5pbmVpbmZlcmlvclwiLCBcImNlbnRpbmZlcmlvclwiLFxuICBcImRvbGxhcmluZmVyaW9yXCIsIFwicGVyaW9kaW5mZXJpb3JcIiwgXCJjb21tYWluZmVyaW9yXCIsIFwiQWdyYXZlc21hbGxcIixcbiAgXCJBYWN1dGVzbWFsbFwiLCBcIkFjaXJjdW1mbGV4c21hbGxcIiwgXCJBdGlsZGVzbWFsbFwiLCBcIkFkaWVyZXNpc3NtYWxsXCIsXG4gIFwiQXJpbmdzbWFsbFwiLCBcIkFFc21hbGxcIiwgXCJDY2VkaWxsYXNtYWxsXCIsIFwiRWdyYXZlc21hbGxcIiwgXCJFYWN1dGVzbWFsbFwiLFxuICBcIkVjaXJjdW1mbGV4c21hbGxcIiwgXCJFZGllcmVzaXNzbWFsbFwiLCBcIklncmF2ZXNtYWxsXCIsIFwiSWFjdXRlc21hbGxcIixcbiAgXCJJY2lyY3VtZmxleHNtYWxsXCIsIFwiSWRpZXJlc2lzc21hbGxcIiwgXCJFdGhzbWFsbFwiLCBcIk50aWxkZXNtYWxsXCIsXG4gIFwiT2dyYXZlc21hbGxcIiwgXCJPYWN1dGVzbWFsbFwiLCBcIk9jaXJjdW1mbGV4c21hbGxcIiwgXCJPdGlsZGVzbWFsbFwiLFxuICBcIk9kaWVyZXNpc3NtYWxsXCIsIFwiT0VzbWFsbFwiLCBcIk9zbGFzaHNtYWxsXCIsIFwiVWdyYXZlc21hbGxcIiwgXCJVYWN1dGVzbWFsbFwiLFxuICBcIlVjaXJjdW1mbGV4c21hbGxcIiwgXCJVZGllcmVzaXNzbWFsbFwiLCBcIllhY3V0ZXNtYWxsXCIsIFwiVGhvcm5zbWFsbFwiLFxuICBcIllkaWVyZXNpc3NtYWxsXCIsIFwiMDAxLjAwMFwiLCBcIjAwMS4wMDFcIiwgXCIwMDEuMDAyXCIsIFwiMDAxLjAwM1wiLCBcIkJsYWNrXCIsXG4gIFwiQm9sZFwiLCBcIkJvb2tcIiwgXCJMaWdodFwiLCBcIk1lZGl1bVwiLCBcIlJlZ3VsYXJcIiwgXCJSb21hblwiLCBcIlNlbWlib2xkXCJcbl07XG4iLCAiZXhwb3J0IGxldCBTdGFuZGFyZEVuY29kaW5nID0gW1xuICAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyxcbiAgJycsICcnLCAnJywgJycsICdzcGFjZScsICdleGNsYW0nLCAncXVvdGVkYmwnLCAnbnVtYmVyc2lnbicsICdkb2xsYXInLCAncGVyY2VudCcsICdhbXBlcnNhbmQnLCAncXVvdGVyaWdodCcsXG4gICdwYXJlbmxlZnQnLCAncGFyZW5yaWdodCcsICdhc3RlcmlzaycsICdwbHVzJywgJ2NvbW1hJywgJ2h5cGhlbicsICdwZXJpb2QnLCAnc2xhc2gnLCAnemVybycsICdvbmUnLCAndHdvJyxcbiAgJ3RocmVlJywgJ2ZvdXInLCAnZml2ZScsICdzaXgnLCAnc2V2ZW4nLCAnZWlnaHQnLCAnbmluZScsICdjb2xvbicsICdzZW1pY29sb24nLCAnbGVzcycsICdlcXVhbCcsICdncmVhdGVyJyxcbiAgJ3F1ZXN0aW9uJywgJ2F0JywgJ0EnLCAnQicsICdDJywgJ0QnLCAnRScsICdGJywgJ0cnLCAnSCcsICdJJywgJ0onLCAnSycsICdMJywgJ00nLCAnTicsICdPJywgJ1AnLCAnUScsICdSJywgJ1MnLFxuICAnVCcsICdVJywgJ1YnLCAnVycsICdYJywgJ1knLCAnWicsICdicmFja2V0bGVmdCcsICdiYWNrc2xhc2gnLCAnYnJhY2tldHJpZ2h0JywgJ2FzY2lpY2lyY3VtJywgJ3VuZGVyc2NvcmUnLFxuICAncXVvdGVsZWZ0JywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJywgJ2cnLCAnaCcsICdpJywgJ2onLCAnaycsICdsJywgJ20nLCAnbicsICdvJywgJ3AnLCAncScsICdyJywgJ3MnLCAndCcsXG4gICd1JywgJ3YnLCAndycsICd4JywgJ3knLCAneicsICdicmFjZWxlZnQnLCAnYmFyJywgJ2JyYWNlcmlnaHQnLCAnYXNjaWl0aWxkZScsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyxcbiAgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLFxuICAnZXhjbGFtZG93bicsICdjZW50JywgJ3N0ZXJsaW5nJywgJ2ZyYWN0aW9uJywgJ3llbicsICdmbG9yaW4nLCAnc2VjdGlvbicsICdjdXJyZW5jeScsICdxdW90ZXNpbmdsZScsXG4gICdxdW90ZWRibGxlZnQnLCAnZ3VpbGxlbW90bGVmdCcsICdndWlsc2luZ2xsZWZ0JywgJ2d1aWxzaW5nbHJpZ2h0JywgJ2ZpJywgJ2ZsJywgJycsICdlbmRhc2gnLCAnZGFnZ2VyJyxcbiAgJ2RhZ2dlcmRibCcsICdwZXJpb2RjZW50ZXJlZCcsICcnLCAncGFyYWdyYXBoJywgJ2J1bGxldCcsICdxdW90ZXNpbmdsYmFzZScsICdxdW90ZWRibGJhc2UnLCAncXVvdGVkYmxyaWdodCcsXG4gICdndWlsbGVtb3RyaWdodCcsICdlbGxpcHNpcycsICdwZXJ0aG91c2FuZCcsICcnLCAncXVlc3Rpb25kb3duJywgJycsICdncmF2ZScsICdhY3V0ZScsICdjaXJjdW1mbGV4JywgJ3RpbGRlJyxcbiAgJ21hY3JvbicsICdicmV2ZScsICdkb3RhY2NlbnQnLCAnZGllcmVzaXMnLCAnJywgJ3JpbmcnLCAnY2VkaWxsYScsICcnLCAnaHVuZ2FydW1sYXV0JywgJ29nb25laycsICdjYXJvbicsXG4gICdlbWRhc2gnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJ0FFJywgJycsICdvcmRmZW1pbmluZScsICcnLCAnJywgJycsXG4gICcnLCAnTHNsYXNoJywgJ09zbGFzaCcsICdPRScsICdvcmRtYXNjdWxpbmUnLCAnJywgJycsICcnLCAnJywgJycsICdhZScsICcnLCAnJywgJycsICdkb3RsZXNzaScsICcnLCAnJyxcbiAgJ2xzbGFzaCcsICdvc2xhc2gnLCAnb2UnLCAnZ2VybWFuZGJscydcbl07XG5cbmV4cG9ydCBsZXQgRXhwZXJ0RW5jb2RpbmcgPSBbXG4gICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLFxuICAnJywgJycsICcnLCAnJywgJ3NwYWNlJywgJ2V4Y2xhbXNtYWxsJywgJ0h1bmdhcnVtbGF1dHNtYWxsJywgJycsICdkb2xsYXJvbGRzdHlsZScsICdkb2xsYXJzdXBlcmlvcicsXG4gICdhbXBlcnNhbmRzbWFsbCcsICdBY3V0ZXNtYWxsJywgJ3BhcmVubGVmdHN1cGVyaW9yJywgJ3BhcmVucmlnaHRzdXBlcmlvcicsICd0d29kb3RlbmxlYWRlcicsICdvbmVkb3RlbmxlYWRlcicsXG4gICdjb21tYScsICdoeXBoZW4nLCAncGVyaW9kJywgJ2ZyYWN0aW9uJywgJ3plcm9vbGRzdHlsZScsICdvbmVvbGRzdHlsZScsICd0d29vbGRzdHlsZScsICd0aHJlZW9sZHN0eWxlJyxcbiAgJ2ZvdXJvbGRzdHlsZScsICdmaXZlb2xkc3R5bGUnLCAnc2l4b2xkc3R5bGUnLCAnc2V2ZW5vbGRzdHlsZScsICdlaWdodG9sZHN0eWxlJywgJ25pbmVvbGRzdHlsZScsICdjb2xvbicsXG4gICdzZW1pY29sb24nLCAnY29tbWFzdXBlcmlvcicsICd0aHJlZXF1YXJ0ZXJzZW1kYXNoJywgJ3BlcmlvZHN1cGVyaW9yJywgJ3F1ZXN0aW9uc21hbGwnLCAnJywgJ2FzdXBlcmlvcicsXG4gICdic3VwZXJpb3InLCAnY2VudHN1cGVyaW9yJywgJ2RzdXBlcmlvcicsICdlc3VwZXJpb3InLCAnJywgJycsICdpc3VwZXJpb3InLCAnJywgJycsICdsc3VwZXJpb3InLCAnbXN1cGVyaW9yJyxcbiAgJ25zdXBlcmlvcicsICdvc3VwZXJpb3InLCAnJywgJycsICdyc3VwZXJpb3InLCAnc3N1cGVyaW9yJywgJ3RzdXBlcmlvcicsICcnLCAnZmYnLCAnZmknLCAnZmwnLCAnZmZpJywgJ2ZmbCcsXG4gICdwYXJlbmxlZnRpbmZlcmlvcicsICcnLCAncGFyZW5yaWdodGluZmVyaW9yJywgJ0NpcmN1bWZsZXhzbWFsbCcsICdoeXBoZW5zdXBlcmlvcicsICdHcmF2ZXNtYWxsJywgJ0FzbWFsbCcsXG4gICdCc21hbGwnLCAnQ3NtYWxsJywgJ0RzbWFsbCcsICdFc21hbGwnLCAnRnNtYWxsJywgJ0dzbWFsbCcsICdIc21hbGwnLCAnSXNtYWxsJywgJ0pzbWFsbCcsICdLc21hbGwnLCAnTHNtYWxsJyxcbiAgJ01zbWFsbCcsICdOc21hbGwnLCAnT3NtYWxsJywgJ1BzbWFsbCcsICdRc21hbGwnLCAnUnNtYWxsJywgJ1NzbWFsbCcsICdUc21hbGwnLCAnVXNtYWxsJywgJ1ZzbWFsbCcsICdXc21hbGwnLFxuICAnWHNtYWxsJywgJ1lzbWFsbCcsICdac21hbGwnLCAnY29sb25tb25ldGFyeScsICdvbmVmaXR0ZWQnLCAncnVwaWFoJywgJ1RpbGRlc21hbGwnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyxcbiAgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyxcbiAgJ2V4Y2xhbWRvd25zbWFsbCcsICdjZW50b2xkc3R5bGUnLCAnTHNsYXNoc21hbGwnLCAnJywgJycsICdTY2Fyb25zbWFsbCcsICdaY2Fyb25zbWFsbCcsICdEaWVyZXNpc3NtYWxsJyxcbiAgJ0JyZXZlc21hbGwnLCAnQ2Fyb25zbWFsbCcsICcnLCAnRG90YWNjZW50c21hbGwnLCAnJywgJycsICdNYWNyb25zbWFsbCcsICcnLCAnJywgJ2ZpZ3VyZWRhc2gnLCAnaHlwaGVuaW5mZXJpb3InLFxuICAnJywgJycsICdPZ29uZWtzbWFsbCcsICdSaW5nc21hbGwnLCAnQ2VkaWxsYXNtYWxsJywgJycsICcnLCAnJywgJ29uZXF1YXJ0ZXInLCAnb25laGFsZicsICd0aHJlZXF1YXJ0ZXJzJyxcbiAgJ3F1ZXN0aW9uZG93bnNtYWxsJywgJ29uZWVpZ2h0aCcsICd0aHJlZWVpZ2h0aHMnLCAnZml2ZWVpZ2h0aHMnLCAnc2V2ZW5laWdodGhzJywgJ29uZXRoaXJkJywgJ3R3b3RoaXJkcycsICcnLFxuICAnJywgJ3plcm9zdXBlcmlvcicsICdvbmVzdXBlcmlvcicsICd0d29zdXBlcmlvcicsICd0aHJlZXN1cGVyaW9yJywgJ2ZvdXJzdXBlcmlvcicsICdmaXZlc3VwZXJpb3InLFxuICAnc2l4c3VwZXJpb3InLCAnc2V2ZW5zdXBlcmlvcicsICdlaWdodHN1cGVyaW9yJywgJ25pbmVzdXBlcmlvcicsICd6ZXJvaW5mZXJpb3InLCAnb25laW5mZXJpb3InLCAndHdvaW5mZXJpb3InLFxuICAndGhyZWVpbmZlcmlvcicsICdmb3VyaW5mZXJpb3InLCAnZml2ZWluZmVyaW9yJywgJ3NpeGluZmVyaW9yJywgJ3NldmVuaW5mZXJpb3InLCAnZWlnaHRpbmZlcmlvcicsXG4gICduaW5laW5mZXJpb3InLCAnY2VudGluZmVyaW9yJywgJ2RvbGxhcmluZmVyaW9yJywgJ3BlcmlvZGluZmVyaW9yJywgJ2NvbW1haW5mZXJpb3InLCAnQWdyYXZlc21hbGwnLFxuICAnQWFjdXRlc21hbGwnLCAnQWNpcmN1bWZsZXhzbWFsbCcsICdBdGlsZGVzbWFsbCcsICdBZGllcmVzaXNzbWFsbCcsICdBcmluZ3NtYWxsJywgJ0FFc21hbGwnLCAnQ2NlZGlsbGFzbWFsbCcsXG4gICdFZ3JhdmVzbWFsbCcsICdFYWN1dGVzbWFsbCcsICdFY2lyY3VtZmxleHNtYWxsJywgJ0VkaWVyZXNpc3NtYWxsJywgJ0lncmF2ZXNtYWxsJywgJ0lhY3V0ZXNtYWxsJyxcbiAgJ0ljaXJjdW1mbGV4c21hbGwnLCAnSWRpZXJlc2lzc21hbGwnLCAnRXRoc21hbGwnLCAnTnRpbGRlc21hbGwnLCAnT2dyYXZlc21hbGwnLCAnT2FjdXRlc21hbGwnLFxuICAnT2NpcmN1bWZsZXhzbWFsbCcsICdPdGlsZGVzbWFsbCcsICdPZGllcmVzaXNzbWFsbCcsICdPRXNtYWxsJywgJ09zbGFzaHNtYWxsJywgJ1VncmF2ZXNtYWxsJywgJ1VhY3V0ZXNtYWxsJyxcbiAgJ1VjaXJjdW1mbGV4c21hbGwnLCAnVWRpZXJlc2lzc21hbGwnLCAnWWFjdXRlc21hbGwnLCAnVGhvcm5zbWFsbCcsICdZZGllcmVzaXNzbWFsbCdcbl07XG4iLCAiZXhwb3J0IGxldCBJU09BZG9iZUNoYXJzZXQgPSBbXG4gICcubm90ZGVmJywgJ3NwYWNlJywgJ2V4Y2xhbScsICdxdW90ZWRibCcsICdudW1iZXJzaWduJywgJ2RvbGxhcicsXG4gICdwZXJjZW50JywgJ2FtcGVyc2FuZCcsICdxdW90ZXJpZ2h0JywgJ3BhcmVubGVmdCcsICdwYXJlbnJpZ2h0JyxcbiAgJ2FzdGVyaXNrJywgJ3BsdXMnLCAnY29tbWEnLCAnaHlwaGVuJywgJ3BlcmlvZCcsICdzbGFzaCcsICd6ZXJvJyxcbiAgJ29uZScsICd0d28nLCAndGhyZWUnLCAnZm91cicsICdmaXZlJywgJ3NpeCcsICdzZXZlbicsICdlaWdodCcsXG4gICduaW5lJywgJ2NvbG9uJywgJ3NlbWljb2xvbicsICdsZXNzJywgJ2VxdWFsJywgJ2dyZWF0ZXInLCAncXVlc3Rpb24nLFxuICAnYXQnLCAnQScsICdCJywgJ0MnLCAnRCcsICdFJywgJ0YnLCAnRycsICdIJywgJ0knLCAnSicsICdLJywgJ0wnLCAnTScsXG4gICdOJywgJ08nLCAnUCcsICdRJywgJ1InLCAnUycsICdUJywgJ1UnLCAnVicsICdXJywgJ1gnLCAnWScsICdaJyxcbiAgJ2JyYWNrZXRsZWZ0JywgJ2JhY2tzbGFzaCcsICdicmFja2V0cmlnaHQnLCAnYXNjaWljaXJjdW0nLCAndW5kZXJzY29yZScsXG4gICdxdW90ZWxlZnQnLCAnYScsICdiJywgJ2MnLCAnZCcsICdlJywgJ2YnLCAnZycsICdoJywgJ2knLCAnaicsICdrJywgJ2wnLFxuICAnbScsICduJywgJ28nLCAncCcsICdxJywgJ3InLCAncycsICd0JywgJ3UnLCAndicsICd3JywgJ3gnLCAneScsICd6JyxcbiAgJ2JyYWNlbGVmdCcsICdiYXInLCAnYnJhY2VyaWdodCcsICdhc2NpaXRpbGRlJywgJ2V4Y2xhbWRvd24nLCAnY2VudCcsXG4gICdzdGVybGluZycsICdmcmFjdGlvbicsICd5ZW4nLCAnZmxvcmluJywgJ3NlY3Rpb24nLCAnY3VycmVuY3knLFxuICAncXVvdGVzaW5nbGUnLCAncXVvdGVkYmxsZWZ0JywgJ2d1aWxsZW1vdGxlZnQnLCAnZ3VpbHNpbmdsbGVmdCcsXG4gICdndWlsc2luZ2xyaWdodCcsICdmaScsICdmbCcsICdlbmRhc2gnLCAnZGFnZ2VyJywgJ2RhZ2dlcmRibCcsXG4gICdwZXJpb2RjZW50ZXJlZCcsICdwYXJhZ3JhcGgnLCAnYnVsbGV0JywgJ3F1b3Rlc2luZ2xiYXNlJyxcbiAgJ3F1b3RlZGJsYmFzZScsICdxdW90ZWRibHJpZ2h0JywgJ2d1aWxsZW1vdHJpZ2h0JywgJ2VsbGlwc2lzJyxcbiAgJ3BlcnRob3VzYW5kJywgJ3F1ZXN0aW9uZG93bicsICdncmF2ZScsICdhY3V0ZScsICdjaXJjdW1mbGV4JywgJ3RpbGRlJyxcbiAgJ21hY3JvbicsICdicmV2ZScsICdkb3RhY2NlbnQnLCAnZGllcmVzaXMnLCAncmluZycsICdjZWRpbGxhJyxcbiAgJ2h1bmdhcnVtbGF1dCcsICdvZ29uZWsnLCAnY2Fyb24nLCAnZW1kYXNoJywgJ0FFJywgJ29yZGZlbWluaW5lJyxcbiAgJ0xzbGFzaCcsICdPc2xhc2gnLCAnT0UnLCAnb3JkbWFzY3VsaW5lJywgJ2FlJywgJ2RvdGxlc3NpJywgJ2xzbGFzaCcsXG4gICdvc2xhc2gnLCAnb2UnLCAnZ2VybWFuZGJscycsICdvbmVzdXBlcmlvcicsICdsb2dpY2Fsbm90JywgJ211JyxcbiAgJ3RyYWRlbWFyaycsICdFdGgnLCAnb25laGFsZicsICdwbHVzbWludXMnLCAnVGhvcm4nLCAnb25lcXVhcnRlcicsXG4gICdkaXZpZGUnLCAnYnJva2VuYmFyJywgJ2RlZ3JlZScsICd0aG9ybicsICd0aHJlZXF1YXJ0ZXJzJywgJ3R3b3N1cGVyaW9yJyxcbiAgJ3JlZ2lzdGVyZWQnLCAnbWludXMnLCAnZXRoJywgJ211bHRpcGx5JywgJ3RocmVlc3VwZXJpb3InLCAnY29weXJpZ2h0JyxcbiAgJ0FhY3V0ZScsICdBY2lyY3VtZmxleCcsICdBZGllcmVzaXMnLCAnQWdyYXZlJywgJ0FyaW5nJywgJ0F0aWxkZScsXG4gICdDY2VkaWxsYScsICdFYWN1dGUnLCAnRWNpcmN1bWZsZXgnLCAnRWRpZXJlc2lzJywgJ0VncmF2ZScsICdJYWN1dGUnLFxuICAnSWNpcmN1bWZsZXgnLCAnSWRpZXJlc2lzJywgJ0lncmF2ZScsICdOdGlsZGUnLCAnT2FjdXRlJywgJ09jaXJjdW1mbGV4JyxcbiAgJ09kaWVyZXNpcycsICdPZ3JhdmUnLCAnT3RpbGRlJywgJ1NjYXJvbicsICdVYWN1dGUnLCAnVWNpcmN1bWZsZXgnLFxuICAnVWRpZXJlc2lzJywgJ1VncmF2ZScsICdZYWN1dGUnLCAnWWRpZXJlc2lzJywgJ1pjYXJvbicsICdhYWN1dGUnLFxuICAnYWNpcmN1bWZsZXgnLCAnYWRpZXJlc2lzJywgJ2FncmF2ZScsICdhcmluZycsICdhdGlsZGUnLCAnY2NlZGlsbGEnLFxuICAnZWFjdXRlJywgJ2VjaXJjdW1mbGV4JywgJ2VkaWVyZXNpcycsICdlZ3JhdmUnLCAnaWFjdXRlJywgJ2ljaXJjdW1mbGV4JyxcbiAgJ2lkaWVyZXNpcycsICdpZ3JhdmUnLCAnbnRpbGRlJywgJ29hY3V0ZScsICdvY2lyY3VtZmxleCcsICdvZGllcmVzaXMnLFxuICAnb2dyYXZlJywgJ290aWxkZScsICdzY2Fyb24nLCAndWFjdXRlJywgJ3VjaXJjdW1mbGV4JywgJ3VkaWVyZXNpcycsXG4gICd1Z3JhdmUnLCAneWFjdXRlJywgJ3lkaWVyZXNpcycsICd6Y2Fyb24nXG5dO1xuXG5leHBvcnQgbGV0IEV4cGVydENoYXJzZXQgPSBbXG4gICcubm90ZGVmJywgJ3NwYWNlJywgJ2V4Y2xhbXNtYWxsJywgJ0h1bmdhcnVtbGF1dHNtYWxsJywgJ2RvbGxhcm9sZHN0eWxlJyxcbiAgJ2RvbGxhcnN1cGVyaW9yJywgJ2FtcGVyc2FuZHNtYWxsJywgJ0FjdXRlc21hbGwnLCAncGFyZW5sZWZ0c3VwZXJpb3InLFxuICAncGFyZW5yaWdodHN1cGVyaW9yJywgJ3R3b2RvdGVubGVhZGVyJywgJ29uZWRvdGVubGVhZGVyJywgJ2NvbW1hJyxcbiAgJ2h5cGhlbicsICdwZXJpb2QnLCAnZnJhY3Rpb24nLCAnemVyb29sZHN0eWxlJywgJ29uZW9sZHN0eWxlJyxcbiAgJ3R3b29sZHN0eWxlJywgJ3RocmVlb2xkc3R5bGUnLCAnZm91cm9sZHN0eWxlJywgJ2ZpdmVvbGRzdHlsZScsXG4gICdzaXhvbGRzdHlsZScsICdzZXZlbm9sZHN0eWxlJywgJ2VpZ2h0b2xkc3R5bGUnLCAnbmluZW9sZHN0eWxlJyxcbiAgJ2NvbG9uJywgJ3NlbWljb2xvbicsICdjb21tYXN1cGVyaW9yJywgJ3RocmVlcXVhcnRlcnNlbWRhc2gnLFxuICAncGVyaW9kc3VwZXJpb3InLCAncXVlc3Rpb25zbWFsbCcsICdhc3VwZXJpb3InLCAnYnN1cGVyaW9yJyxcbiAgJ2NlbnRzdXBlcmlvcicsICdkc3VwZXJpb3InLCAnZXN1cGVyaW9yJywgJ2lzdXBlcmlvcicsICdsc3VwZXJpb3InLFxuICAnbXN1cGVyaW9yJywgJ25zdXBlcmlvcicsICdvc3VwZXJpb3InLCAncnN1cGVyaW9yJywgJ3NzdXBlcmlvcicsXG4gICd0c3VwZXJpb3InLCAnZmYnLCAnZmknLCAnZmwnLCAnZmZpJywgJ2ZmbCcsICdwYXJlbmxlZnRpbmZlcmlvcicsXG4gICdwYXJlbnJpZ2h0aW5mZXJpb3InLCAnQ2lyY3VtZmxleHNtYWxsJywgJ2h5cGhlbnN1cGVyaW9yJywgJ0dyYXZlc21hbGwnLFxuICAnQXNtYWxsJywgJ0JzbWFsbCcsICdDc21hbGwnLCAnRHNtYWxsJywgJ0VzbWFsbCcsICdGc21hbGwnLCAnR3NtYWxsJyxcbiAgJ0hzbWFsbCcsICdJc21hbGwnLCAnSnNtYWxsJywgJ0tzbWFsbCcsICdMc21hbGwnLCAnTXNtYWxsJywgJ05zbWFsbCcsXG4gICdPc21hbGwnLCAnUHNtYWxsJywgJ1FzbWFsbCcsICdSc21hbGwnLCAnU3NtYWxsJywgJ1RzbWFsbCcsICdVc21hbGwnLFxuICAnVnNtYWxsJywgJ1dzbWFsbCcsICdYc21hbGwnLCAnWXNtYWxsJywgJ1pzbWFsbCcsICdjb2xvbm1vbmV0YXJ5JyxcbiAgJ29uZWZpdHRlZCcsICdydXBpYWgnLCAnVGlsZGVzbWFsbCcsICdleGNsYW1kb3duc21hbGwnLCAnY2VudG9sZHN0eWxlJyxcbiAgJ0xzbGFzaHNtYWxsJywgJ1NjYXJvbnNtYWxsJywgJ1pjYXJvbnNtYWxsJywgJ0RpZXJlc2lzc21hbGwnLFxuICAnQnJldmVzbWFsbCcsICdDYXJvbnNtYWxsJywgJ0RvdGFjY2VudHNtYWxsJywgJ01hY3JvbnNtYWxsJyxcbiAgJ2ZpZ3VyZWRhc2gnLCAnaHlwaGVuaW5mZXJpb3InLCAnT2dvbmVrc21hbGwnLCAnUmluZ3NtYWxsJyxcbiAgJ0NlZGlsbGFzbWFsbCcsICdvbmVxdWFydGVyJywgJ29uZWhhbGYnLCAndGhyZWVxdWFydGVycycsXG4gICdxdWVzdGlvbmRvd25zbWFsbCcsICdvbmVlaWdodGgnLCAndGhyZWVlaWdodGhzJywgJ2ZpdmVlaWdodGhzJyxcbiAgJ3NldmVuZWlnaHRocycsICdvbmV0aGlyZCcsICd0d290aGlyZHMnLCAnemVyb3N1cGVyaW9yJywgJ29uZXN1cGVyaW9yJyxcbiAgJ3R3b3N1cGVyaW9yJywgJ3RocmVlc3VwZXJpb3InLCAnZm91cnN1cGVyaW9yJywgJ2ZpdmVzdXBlcmlvcicsXG4gICdzaXhzdXBlcmlvcicsICdzZXZlbnN1cGVyaW9yJywgJ2VpZ2h0c3VwZXJpb3InLCAnbmluZXN1cGVyaW9yJyxcbiAgJ3plcm9pbmZlcmlvcicsICdvbmVpbmZlcmlvcicsICd0d29pbmZlcmlvcicsICd0aHJlZWluZmVyaW9yJyxcbiAgJ2ZvdXJpbmZlcmlvcicsICdmaXZlaW5mZXJpb3InLCAnc2l4aW5mZXJpb3InLCAnc2V2ZW5pbmZlcmlvcicsXG4gICdlaWdodGluZmVyaW9yJywgJ25pbmVpbmZlcmlvcicsICdjZW50aW5mZXJpb3InLCAnZG9sbGFyaW5mZXJpb3InLFxuICAncGVyaW9kaW5mZXJpb3InLCAnY29tbWFpbmZlcmlvcicsICdBZ3JhdmVzbWFsbCcsICdBYWN1dGVzbWFsbCcsXG4gICdBY2lyY3VtZmxleHNtYWxsJywgJ0F0aWxkZXNtYWxsJywgJ0FkaWVyZXNpc3NtYWxsJywgJ0FyaW5nc21hbGwnLFxuICAnQUVzbWFsbCcsICdDY2VkaWxsYXNtYWxsJywgJ0VncmF2ZXNtYWxsJywgJ0VhY3V0ZXNtYWxsJyxcbiAgJ0VjaXJjdW1mbGV4c21hbGwnLCAnRWRpZXJlc2lzc21hbGwnLCAnSWdyYXZlc21hbGwnLCAnSWFjdXRlc21hbGwnLFxuICAnSWNpcmN1bWZsZXhzbWFsbCcsICdJZGllcmVzaXNzbWFsbCcsICdFdGhzbWFsbCcsICdOdGlsZGVzbWFsbCcsXG4gICdPZ3JhdmVzbWFsbCcsICdPYWN1dGVzbWFsbCcsICdPY2lyY3VtZmxleHNtYWxsJywgJ090aWxkZXNtYWxsJyxcbiAgJ09kaWVyZXNpc3NtYWxsJywgJ09Fc21hbGwnLCAnT3NsYXNoc21hbGwnLCAnVWdyYXZlc21hbGwnLCAnVWFjdXRlc21hbGwnLFxuICAnVWNpcmN1bWZsZXhzbWFsbCcsICdVZGllcmVzaXNzbWFsbCcsICdZYWN1dGVzbWFsbCcsICdUaG9ybnNtYWxsJyxcbiAgJ1lkaWVyZXNpc3NtYWxsJ1xuXTtcblxuZXhwb3J0IGxldCBFeHBlcnRTdWJzZXRDaGFyc2V0ID0gW1xuICAnLm5vdGRlZicsICdzcGFjZScsICdkb2xsYXJvbGRzdHlsZScsICdkb2xsYXJzdXBlcmlvcicsXG4gICdwYXJlbmxlZnRzdXBlcmlvcicsICdwYXJlbnJpZ2h0c3VwZXJpb3InLCAndHdvZG90ZW5sZWFkZXInLFxuICAnb25lZG90ZW5sZWFkZXInLCAnY29tbWEnLCAnaHlwaGVuJywgJ3BlcmlvZCcsICdmcmFjdGlvbicsXG4gICd6ZXJvb2xkc3R5bGUnLCAnb25lb2xkc3R5bGUnLCAndHdvb2xkc3R5bGUnLCAndGhyZWVvbGRzdHlsZScsXG4gICdmb3Vyb2xkc3R5bGUnLCAnZml2ZW9sZHN0eWxlJywgJ3NpeG9sZHN0eWxlJywgJ3NldmVub2xkc3R5bGUnLFxuICAnZWlnaHRvbGRzdHlsZScsICduaW5lb2xkc3R5bGUnLCAnY29sb24nLCAnc2VtaWNvbG9uJywgJ2NvbW1hc3VwZXJpb3InLFxuICAndGhyZWVxdWFydGVyc2VtZGFzaCcsICdwZXJpb2RzdXBlcmlvcicsICdhc3VwZXJpb3InLCAnYnN1cGVyaW9yJyxcbiAgJ2NlbnRzdXBlcmlvcicsICdkc3VwZXJpb3InLCAnZXN1cGVyaW9yJywgJ2lzdXBlcmlvcicsICdsc3VwZXJpb3InLFxuICAnbXN1cGVyaW9yJywgJ25zdXBlcmlvcicsICdvc3VwZXJpb3InLCAncnN1cGVyaW9yJywgJ3NzdXBlcmlvcicsXG4gICd0c3VwZXJpb3InLCAnZmYnLCAnZmknLCAnZmwnLCAnZmZpJywgJ2ZmbCcsICdwYXJlbmxlZnRpbmZlcmlvcicsXG4gICdwYXJlbnJpZ2h0aW5mZXJpb3InLCAnaHlwaGVuc3VwZXJpb3InLCAnY29sb25tb25ldGFyeScsICdvbmVmaXR0ZWQnLFxuICAncnVwaWFoJywgJ2NlbnRvbGRzdHlsZScsICdmaWd1cmVkYXNoJywgJ2h5cGhlbmluZmVyaW9yJywgJ29uZXF1YXJ0ZXInLFxuICAnb25laGFsZicsICd0aHJlZXF1YXJ0ZXJzJywgJ29uZWVpZ2h0aCcsICd0aHJlZWVpZ2h0aHMnLCAnZml2ZWVpZ2h0aHMnLFxuICAnc2V2ZW5laWdodGhzJywgJ29uZXRoaXJkJywgJ3R3b3RoaXJkcycsICd6ZXJvc3VwZXJpb3InLCAnb25lc3VwZXJpb3InLFxuICAndHdvc3VwZXJpb3InLCAndGhyZWVzdXBlcmlvcicsICdmb3Vyc3VwZXJpb3InLCAnZml2ZXN1cGVyaW9yJyxcbiAgJ3NpeHN1cGVyaW9yJywgJ3NldmVuc3VwZXJpb3InLCAnZWlnaHRzdXBlcmlvcicsICduaW5lc3VwZXJpb3InLFxuICAnemVyb2luZmVyaW9yJywgJ29uZWluZmVyaW9yJywgJ3R3b2luZmVyaW9yJywgJ3RocmVlaW5mZXJpb3InLFxuICAnZm91cmluZmVyaW9yJywgJ2ZpdmVpbmZlcmlvcicsICdzaXhpbmZlcmlvcicsICdzZXZlbmluZmVyaW9yJyxcbiAgJ2VpZ2h0aW5mZXJpb3InLCAnbmluZWluZmVyaW9yJywgJ2NlbnRpbmZlcmlvcicsICdkb2xsYXJpbmZlcmlvcicsXG4gICdwZXJpb2RpbmZlcmlvcicsICdjb21tYWluZmVyaW9yJ1xuXTtcbiIsICJpbXBvcnQge0ZlYXR1cmV9IGZyb20gJy4vb3BlbnR5cGUnO1xuaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8qKioqKioqKioqKioqKioqKioqXG4gKiBWYXJpYXRpb24gU3RvcmUgKlxuICoqKioqKioqKioqKioqKioqKiovXG5cbmxldCBGMkRPVDE0ID0gbmV3IHIuRml4ZWQoMTYsICdCRScsIDE0KTtcbmxldCBSZWdpb25BeGlzQ29vcmRpbmF0ZXMgPSBuZXcgci5TdHJ1Y3Qoe1xuICBzdGFydENvb3JkOiBGMkRPVDE0LFxuICBwZWFrQ29vcmQ6IEYyRE9UMTQsXG4gIGVuZENvb3JkOiBGMkRPVDE0XG59KTtcblxubGV0IFZhcmlhdGlvblJlZ2lvbkxpc3QgPSBuZXcgci5TdHJ1Y3Qoe1xuICBheGlzQ291bnQ6IHIudWludDE2LFxuICByZWdpb25Db3VudDogci51aW50MTYsXG4gIHZhcmlhdGlvblJlZ2lvbnM6IG5ldyByLkFycmF5KG5ldyByLkFycmF5KFJlZ2lvbkF4aXNDb29yZGluYXRlcywgJ2F4aXNDb3VudCcpLCAncmVnaW9uQ291bnQnKVxufSk7XG5cbmxldCBEZWx0YVNldCA9IG5ldyByLlN0cnVjdCh7XG4gIHNob3J0RGVsdGFzOiBuZXcgci5BcnJheShyLmludDE2LCB0ID0+IHQucGFyZW50LnNob3J0RGVsdGFDb3VudCksXG4gIHJlZ2lvbkRlbHRhczogbmV3IHIuQXJyYXkoci5pbnQ4LCB0ID0+IHQucGFyZW50LnJlZ2lvbkluZGV4Q291bnQgLSB0LnBhcmVudC5zaG9ydERlbHRhQ291bnQpLFxuICBkZWx0YXM6IHQgPT4gdC5zaG9ydERlbHRhcy5jb25jYXQodC5yZWdpb25EZWx0YXMpXG59KTtcblxubGV0IEl0ZW1WYXJpYXRpb25EYXRhID0gbmV3IHIuU3RydWN0KHtcbiAgaXRlbUNvdW50OiByLnVpbnQxNixcbiAgc2hvcnREZWx0YUNvdW50OiByLnVpbnQxNixcbiAgcmVnaW9uSW5kZXhDb3VudDogci51aW50MTYsXG4gIHJlZ2lvbkluZGV4ZXM6IG5ldyByLkFycmF5KHIudWludDE2LCAncmVnaW9uSW5kZXhDb3VudCcpLFxuICBkZWx0YVNldHM6IG5ldyByLkFycmF5KERlbHRhU2V0LCAnaXRlbUNvdW50Jylcbn0pO1xuXG5leHBvcnQgbGV0IEl0ZW1WYXJpYXRpb25TdG9yZSA9IG5ldyByLlN0cnVjdCh7XG4gIGZvcm1hdDogci51aW50MTYsXG4gIHZhcmlhdGlvblJlZ2lvbkxpc3Q6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIFZhcmlhdGlvblJlZ2lvbkxpc3QpLFxuICB2YXJpYXRpb25EYXRhQ291bnQ6IHIudWludDE2LFxuICBpdGVtVmFyaWF0aW9uRGF0YTogbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgSXRlbVZhcmlhdGlvbkRhdGEpLCAndmFyaWF0aW9uRGF0YUNvdW50Jylcbn0pO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKlxuICogRmVhdHVyZSBWYXJpYXRpb25zICpcbiAqKioqKioqKioqKioqKioqKioqKioqL1xuXG5sZXQgQ29uZGl0aW9uVGFibGUgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMToge1xuICAgIGF4aXNJbmRleDogci51aW50MTYsXG4gICAgYXhpc0luZGV4OiByLnVpbnQxNixcbiAgICBmaWx0ZXJSYW5nZU1pblZhbHVlOiBGMkRPVDE0LFxuICAgIGZpbHRlclJhbmdlTWF4VmFsdWU6IEYyRE9UMTRcbiAgfVxufSk7XG5cbmxldCBDb25kaXRpb25TZXQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBjb25kaXRpb25Db3VudDogci51aW50MTYsXG4gIGNvbmRpdGlvblRhYmxlOiBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDMyLCBDb25kaXRpb25UYWJsZSksICdjb25kaXRpb25Db3VudCcpXG59KTtcblxubGV0IEZlYXR1cmVUYWJsZVN1YnN0aXR1dGlvblJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIGZlYXR1cmVJbmRleDogci51aW50MTYsXG4gIGFsdGVybmF0ZUZlYXR1cmVUYWJsZTogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgRmVhdHVyZSwge3R5cGU6ICdwYXJlbnQnfSlcbn0pO1xuXG5sZXQgRmVhdHVyZVRhYmxlU3Vic3RpdHV0aW9uID0gbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogci5maXhlZDMyLFxuICBzdWJzdGl0dXRpb25Db3VudDogci51aW50MTYsXG4gIHN1YnN0aXR1dGlvbnM6IG5ldyByLkFycmF5KEZlYXR1cmVUYWJsZVN1YnN0aXR1dGlvblJlY29yZCwgJ3N1YnN0aXR1dGlvbkNvdW50Jylcbn0pO1xuXG5sZXQgRmVhdHVyZVZhcmlhdGlvblJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIGNvbmRpdGlvblNldDogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgQ29uZGl0aW9uU2V0LCB7dHlwZTogJ3BhcmVudCd9KSxcbiAgZmVhdHVyZVRhYmxlU3Vic3RpdHV0aW9uOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBGZWF0dXJlVGFibGVTdWJzdGl0dXRpb24sIHt0eXBlOiAncGFyZW50J30pXG59KTtcblxuZXhwb3J0IGxldCBGZWF0dXJlVmFyaWF0aW9ucyA9IG5ldyByLlN0cnVjdCh7XG4gIG1ham9yVmVyc2lvbjogci51aW50MTYsXG4gIG1pbm9yVmVyc2lvbjogci51aW50MTYsXG4gIGZlYXR1cmVWYXJpYXRpb25SZWNvcmRDb3VudDogci51aW50MzIsXG4gIGZlYXR1cmVWYXJpYXRpb25SZWNvcmRzOiBuZXcgci5BcnJheShGZWF0dXJlVmFyaWF0aW9uUmVjb3JkLCAnZmVhdHVyZVZhcmlhdGlvblJlY29yZENvdW50Jylcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gU2NyaXB0cyBhbmQgTGFuZ3VhZ2VzICNcbi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbmxldCBMYW5nU3lzVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICByZXNlcnZlZDogICAgICAgICBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiksXG4gIHJlcUZlYXR1cmVJbmRleDogIHIudWludDE2LFxuICBmZWF0dXJlQ291bnQ6ICAgICByLnVpbnQxNixcbiAgZmVhdHVyZUluZGV4ZXM6ICAgbmV3IHIuQXJyYXkoci51aW50MTYsICdmZWF0dXJlQ291bnQnKVxufSk7XG5cbmxldCBMYW5nU3lzUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICAgIG5ldyByLlN0cmluZyg0KSxcbiAgbGFuZ1N5czogIG5ldyByLlBvaW50ZXIoci51aW50MTYsIExhbmdTeXNUYWJsZSwgeyB0eXBlOiAncGFyZW50JyB9KVxufSk7XG5cbmxldCBTY3JpcHQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBkZWZhdWx0TGFuZ1N5czogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTGFuZ1N5c1RhYmxlKSxcbiAgY291bnQ6ICAgICAgICAgIHIudWludDE2LFxuICBsYW5nU3lzUmVjb3JkczogbmV3IHIuQXJyYXkoTGFuZ1N5c1JlY29yZCwgJ2NvdW50Jylcbn0pO1xuXG5sZXQgU2NyaXB0UmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICBuZXcgci5TdHJpbmcoNCksXG4gIHNjcmlwdDogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgU2NyaXB0LCB7IHR5cGU6ICdwYXJlbnQnIH0pXG59KTtcblxuZXhwb3J0IGxldCBTY3JpcHRMaXN0ID0gbmV3IHIuQXJyYXkoU2NyaXB0UmVjb3JkLCByLnVpbnQxNik7XG5cbi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vIEZlYXR1cmVzIGFuZCBMb29rdXBzICNcbi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxubGV0IEZlYXR1cmVQYXJhbXMgPSBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICByLnVpbnQxNiwgLy8gc2hvdWxkIGJlIHNldCB0byAwIGFjY29yZGluZyBPVCBzcGVjXG4gIG5hbWVJRDogICAgIHIudWludDE2LCAvL09UIHNwZWM6IFVJIE5hbWUgSUQgb3IgdWlMYWJlbE5hbWVJZFxufSk7XG5cbmV4cG9ydCBsZXQgRmVhdHVyZSA9IG5ldyByLlN0cnVjdCh7XG4gIGZlYXR1cmVQYXJhbXM6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRmVhdHVyZVBhcmFtcyksXG4gIGxvb2t1cENvdW50OiAgICAgICAgci51aW50MTYsXG4gIGxvb2t1cExpc3RJbmRleGVzOiAgbmV3IHIuQXJyYXkoci51aW50MTYsICdsb29rdXBDb3VudCcpXG59KTtcblxubGV0IEZlYXR1cmVSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgICAgbmV3IHIuU3RyaW5nKDQpLFxuICBmZWF0dXJlOiAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRmVhdHVyZSwgeyB0eXBlOiAncGFyZW50JyB9KVxufSk7XG5cbmV4cG9ydCBsZXQgRmVhdHVyZUxpc3QgPSBuZXcgci5BcnJheShGZWF0dXJlUmVjb3JkLCByLnVpbnQxNik7XG5cbmxldCBMb29rdXBGbGFncyA9IG5ldyByLlN0cnVjdCh7XG4gIG1hcmtBdHRhY2htZW50VHlwZTogci51aW50OCxcbiAgZmxhZ3M6IG5ldyByLkJpdGZpZWxkKHIudWludDgsIFtcbiAgICAncmlnaHRUb0xlZnQnLCAnaWdub3JlQmFzZUdseXBocycsICdpZ25vcmVMaWdhdHVyZXMnLFxuICAgICdpZ25vcmVNYXJrcycsICd1c2VNYXJrRmlsdGVyaW5nU2V0J1xuICBdKVxufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBMb29rdXBMaXN0KFN1YlRhYmxlKSB7XG4gIGxldCBMb29rdXAgPSBuZXcgci5TdHJ1Y3Qoe1xuICAgIGxvb2t1cFR5cGU6ICAgICAgICAgci51aW50MTYsXG4gICAgZmxhZ3M6ICAgICAgICAgICAgICBMb29rdXBGbGFncyxcbiAgICBzdWJUYWJsZUNvdW50OiAgICAgIHIudWludDE2LFxuICAgIHN1YlRhYmxlczogICAgICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgU3ViVGFibGUpLCAnc3ViVGFibGVDb3VudCcpLFxuICAgIG1hcmtGaWx0ZXJpbmdTZXQ6ICAgbmV3IHIuT3B0aW9uYWwoci51aW50MTYsIHQgPT4gdC5mbGFncy5mbGFncy51c2VNYXJrRmlsdGVyaW5nU2V0KVxuICB9KTtcblxuICByZXR1cm4gbmV3IHIuTGF6eUFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIExvb2t1cCksIHIudWludDE2KTtcbn1cblxuLy8jIyMjIyMjIyMjIyMjIyMjI1xuLy8gQ292ZXJhZ2UgVGFibGUgI1xuLy8jIyMjIyMjIyMjIyMjIyMjI1xuXG5sZXQgUmFuZ2VSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBzdGFydDogICAgICAgICAgICAgIHIudWludDE2LFxuICBlbmQ6ICAgICAgICAgICAgICAgIHIudWludDE2LFxuICBzdGFydENvdmVyYWdlSW5kZXg6IHIudWludDE2XG59KTtcblxuZXhwb3J0IGxldCBDb3ZlcmFnZSA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAxOiB7XG4gICAgZ2x5cGhDb3VudDogICByLnVpbnQxNixcbiAgICBnbHlwaHM6ICAgICAgIG5ldyByLkFycmF5KHIudWludDE2LCAnZ2x5cGhDb3VudCcpXG4gIH0sXG4gIDI6IHtcbiAgICByYW5nZUNvdW50OiAgIHIudWludDE2LFxuICAgIHJhbmdlUmVjb3JkczogbmV3IHIuQXJyYXkoUmFuZ2VSZWNvcmQsICdyYW5nZUNvdW50JylcbiAgfVxufSk7XG5cbi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gQ2xhc3MgRGVmaW5pdGlvbiBUYWJsZSAjXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxubGV0IENsYXNzUmFuZ2VSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBzdGFydDogIHIudWludDE2LFxuICBlbmQ6ICAgIHIudWludDE2LFxuICBjbGFzczogIHIudWludDE2XG59KTtcblxuZXhwb3J0IGxldCBDbGFzc0RlZiA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAxOiB7IC8vIENsYXNzIGFycmF5XG4gICAgc3RhcnRHbHlwaDogICAgICAgci51aW50MTYsXG4gICAgZ2x5cGhDb3VudDogICAgICAgci51aW50MTYsXG4gICAgY2xhc3NWYWx1ZUFycmF5OiAgbmV3IHIuQXJyYXkoci51aW50MTYsICdnbHlwaENvdW50JylcbiAgfSxcbiAgMjogeyAvLyBDbGFzcyByYW5nZXNcbiAgICBjbGFzc1JhbmdlQ291bnQ6ICByLnVpbnQxNixcbiAgICBjbGFzc1JhbmdlUmVjb3JkOiBuZXcgci5BcnJheShDbGFzc1JhbmdlUmVjb3JkLCAnY2xhc3NSYW5nZUNvdW50JylcbiAgfVxufSk7XG5cbi8vIyMjIyMjIyMjIyMjIyMjXG4vLyBEZXZpY2UgVGFibGUgI1xuLy8jIyMjIyMjIyMjIyMjIyNcblxuZXhwb3J0IGxldCBEZXZpY2UgPSBuZXcgci5TdHJ1Y3Qoe1xuICBhOiByLnVpbnQxNiwgLy8gc3RhcnRTaXplIGZvciBoaW50aW5nIERldmljZSwgb3V0ZXJJbmRleCBmb3IgVmFyaWF0aW9uSW5kZXhcbiAgYjogci51aW50MTYsIC8vIGVuZFNpemUgZm9yIERldmljZSwgaW5uZXJJbmRleCBmb3IgVmFyaWF0aW9uSW5kZXhcbiAgZGVsdGFGb3JtYXQ6IHIudWludDE2XG59KTtcblxuLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vIENvbnRleHR1YWwgU3Vic3RpdHV0aW9uL1Bvc2l0aW9uaW5nIFRhYmxlcyAjXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuXG5sZXQgTG9va3VwUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgc2VxdWVuY2VJbmRleDogICAgICByLnVpbnQxNixcbiAgbG9va3VwTGlzdEluZGV4OiAgICByLnVpbnQxNlxufSk7XG5cbmxldCBSdWxlID0gbmV3IHIuU3RydWN0KHtcbiAgZ2x5cGhDb3VudDogICAgIHIudWludDE2LFxuICBsb29rdXBDb3VudDogICAgci51aW50MTYsXG4gIGlucHV0OiAgICAgICAgICBuZXcgci5BcnJheShyLnVpbnQxNiwgdCA9PiB0LmdseXBoQ291bnQgLSAxKSxcbiAgbG9va3VwUmVjb3JkczogIG5ldyByLkFycmF5KExvb2t1cFJlY29yZCwgJ2xvb2t1cENvdW50Jylcbn0pO1xuXG5sZXQgUnVsZVNldCA9IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIFJ1bGUpLCByLnVpbnQxNik7XG5cbmxldCBDbGFzc1J1bGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBnbHlwaENvdW50OiAgICAgci51aW50MTYsXG4gIGxvb2t1cENvdW50OiAgICByLnVpbnQxNixcbiAgY2xhc3NlczogICAgICAgIG5ldyByLkFycmF5KHIudWludDE2LCB0ID0+IHQuZ2x5cGhDb3VudCAtIDEpLFxuICBsb29rdXBSZWNvcmRzOiAgbmV3IHIuQXJyYXkoTG9va3VwUmVjb3JkLCAnbG9va3VwQ291bnQnKVxufSk7XG5cbmxldCBDbGFzc1NldCA9IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENsYXNzUnVsZSksIHIudWludDE2KTtcblxuZXhwb3J0IGxldCBDb250ZXh0ID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIDE6IHsgLy8gU2ltcGxlIGNvbnRleHRcbiAgICBjb3ZlcmFnZTogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgcnVsZVNldENvdW50OiAgci51aW50MTYsXG4gICAgcnVsZVNldHM6ICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgUnVsZVNldCksICdydWxlU2V0Q291bnQnKVxuICB9LFxuICAyOiB7IC8vIENsYXNzLWJhc2VkIGNvbnRleHRcbiAgICBjb3ZlcmFnZTogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgY2xhc3NEZWY6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpLFxuICAgIGNsYXNzU2V0Q250OiAgIHIudWludDE2LFxuICAgIGNsYXNzU2V0OiAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENsYXNzU2V0KSwgJ2NsYXNzU2V0Q250JylcbiAgfSxcbiAgMzoge1xuICAgIGdseXBoQ291bnQ6ICAgIHIudWludDE2LFxuICAgIGxvb2t1cENvdW50OiAgIHIudWludDE2LFxuICAgIGNvdmVyYWdlczogICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSwgJ2dseXBoQ291bnQnKSxcbiAgICBsb29rdXBSZWNvcmRzOiBuZXcgci5BcnJheShMb29rdXBSZWNvcmQsICdsb29rdXBDb3VudCcpXG4gIH1cbn0pO1xuXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gQ2hhaW5pbmcgQ29udGV4dHVhbCBTdWJzdGl0dXRpb24vUG9zaXRpb25pbmcgVGFibGVzICNcbi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbmxldCBDaGFpblJ1bGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBiYWNrdHJhY2tHbHlwaENvdW50OiAgci51aW50MTYsXG4gIGJhY2t0cmFjazogICAgICAgICAgICBuZXcgci5BcnJheShyLnVpbnQxNiwgJ2JhY2t0cmFja0dseXBoQ291bnQnKSxcbiAgaW5wdXRHbHlwaENvdW50OiAgICAgIHIudWludDE2LFxuICBpbnB1dDogICAgICAgICAgICAgICAgbmV3IHIuQXJyYXkoci51aW50MTYsIHQgPT4gdC5pbnB1dEdseXBoQ291bnQgLSAxKSxcbiAgbG9va2FoZWFkR2x5cGhDb3VudDogIHIudWludDE2LFxuICBsb29rYWhlYWQ6ICAgICAgICAgICAgbmV3IHIuQXJyYXkoci51aW50MTYsICdsb29rYWhlYWRHbHlwaENvdW50JyksXG4gIGxvb2t1cENvdW50OiAgICAgICAgICByLnVpbnQxNixcbiAgbG9va3VwUmVjb3JkczogICAgICAgIG5ldyByLkFycmF5KExvb2t1cFJlY29yZCwgJ2xvb2t1cENvdW50Jylcbn0pO1xuXG5sZXQgQ2hhaW5SdWxlU2V0ID0gbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2hhaW5SdWxlKSwgci51aW50MTYpO1xuXG5leHBvcnQgbGV0IENoYWluaW5nQ29udGV4dCA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAxOiB7IC8vIFNpbXBsZSBjb250ZXh0IGdseXBoIHN1YnN0aXR1dGlvblxuICAgIGNvdmVyYWdlOiAgICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGNoYWluQ291bnQ6ICAgICAgICAgci51aW50MTYsXG4gICAgY2hhaW5SdWxlU2V0czogICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDaGFpblJ1bGVTZXQpLCAnY2hhaW5Db3VudCcpXG4gIH0sXG5cbiAgMjogeyAvLyBDbGFzcy1iYXNlZCBjaGFpbmluZyBjb250ZXh0XG4gICAgY292ZXJhZ2U6ICAgICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgYmFja3RyYWNrQ2xhc3NEZWY6ICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc0RlZiksXG4gICAgaW5wdXRDbGFzc0RlZjogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc0RlZiksXG4gICAgbG9va2FoZWFkQ2xhc3NEZWY6ICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc0RlZiksXG4gICAgY2hhaW5Db3VudDogICAgICAgICByLnVpbnQxNixcbiAgICBjaGFpbkNsYXNzU2V0OiAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENoYWluUnVsZVNldCksICdjaGFpbkNvdW50JylcbiAgfSxcblxuICAzOiB7IC8vIENvdmVyYWdlLWJhc2VkIGNoYWluaW5nIGNvbnRleHRcbiAgICBiYWNrdHJhY2tHbHlwaENvdW50OiAgICByLnVpbnQxNixcbiAgICBiYWNrdHJhY2tDb3ZlcmFnZTogICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksICdiYWNrdHJhY2tHbHlwaENvdW50JyksXG4gICAgaW5wdXRHbHlwaENvdW50OiAgICAgICAgci51aW50MTYsXG4gICAgaW5wdXRDb3ZlcmFnZTogICAgICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLCAnaW5wdXRHbHlwaENvdW50JyksXG4gICAgbG9va2FoZWFkR2x5cGhDb3VudDogICAgci51aW50MTYsXG4gICAgbG9va2FoZWFkQ292ZXJhZ2U6ICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLCAnbG9va2FoZWFkR2x5cGhDb3VudCcpLFxuICAgIGxvb2t1cENvdW50OiAgICAgICAgICAgIHIudWludDE2LFxuICAgIGxvb2t1cFJlY29yZHM6ICAgICAgICAgIG5ldyByLkFycmF5KExvb2t1cFJlY29yZCwgJ2xvb2t1cENvdW50JylcbiAgfVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBWZXJ0aWNhbE9yaWdpbiA9IG5ldyByLlN0cnVjdCh7XG4gIGdseXBoSW5kZXg6ICAgci51aW50MTYsXG4gIHZlcnRPcmlnaW5ZOiAgci5pbnQxNlxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIG1ham9yVmVyc2lvbjogICAgICAgICAgIHIudWludDE2LFxuICBtaW5vclZlcnNpb246ICAgICAgICAgICByLnVpbnQxNixcbiAgZGVmYXVsdFZlcnRPcmlnaW5ZOiAgICAgci5pbnQxNixcbiAgbnVtVmVydE9yaWdpbllNZXRyaWNzOiAgci51aW50MTYsXG4gIG1ldHJpY3M6ICAgICAgICAgICAgICAgIG5ldyByLkFycmF5KFZlcnRpY2FsT3JpZ2luLCAnbnVtVmVydE9yaWdpbllNZXRyaWNzJylcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHtCaWdNZXRyaWNzfSBmcm9tICcuL0VCRFQnO1xuXG5sZXQgU0JpdExpbmVNZXRyaWNzID0gbmV3IHIuU3RydWN0KHtcbiAgYXNjZW5kZXI6IHIuaW50OCxcbiAgZGVzY2VuZGVyOiByLmludDgsXG4gIHdpZHRoTWF4OiByLnVpbnQ4LFxuICBjYXJldFNsb3BlTnVtZXJhdG9yOiByLmludDgsXG4gIGNhcmV0U2xvcGVEZW5vbWluYXRvcjogci5pbnQ4LFxuICBjYXJldE9mZnNldDogci5pbnQ4LFxuICBtaW5PcmlnaW5TQjogci5pbnQ4LFxuICBtaW5BZHZhbmNlU0I6IHIuaW50OCxcbiAgbWF4QmVmb3JlQkw6IHIuaW50OCxcbiAgbWluQWZ0ZXJCTDogci5pbnQ4LFxuICBwYWQ6IG5ldyByLlJlc2VydmVkKHIuaW50OCwgMilcbn0pO1xuXG5sZXQgQ29kZU9mZnNldFBhaXIgPSBuZXcgci5TdHJ1Y3Qoe1xuICBnbHlwaENvZGU6IHIudWludDE2LFxuICBvZmZzZXQ6IHIudWludDE2XG59KTtcblxubGV0IEluZGV4U3VidGFibGUgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgaGVhZGVyOiB7XG4gICAgaW1hZ2VGb3JtYXQ6IHIudWludDE2LFxuICAgIGltYWdlRGF0YU9mZnNldDogci51aW50MzJcbiAgfSxcblxuICAxOiB7XG4gICAgb2Zmc2V0QXJyYXk6IG5ldyByLkFycmF5KHIudWludDMyLCB0ID0+IHQucGFyZW50Lmxhc3RHbHlwaEluZGV4IC0gdC5wYXJlbnQuZmlyc3RHbHlwaEluZGV4ICsgMSlcbiAgfSxcblxuICAyOiB7XG4gICAgaW1hZ2VTaXplOiByLnVpbnQzMixcbiAgICBiaWdNZXRyaWNzOiBCaWdNZXRyaWNzXG4gIH0sXG5cbiAgMzoge1xuICAgIG9mZnNldEFycmF5OiBuZXcgci5BcnJheShyLnVpbnQxNiwgdCA9PiB0LnBhcmVudC5sYXN0R2x5cGhJbmRleCAtIHQucGFyZW50LmZpcnN0R2x5cGhJbmRleCArIDEpXG4gIH0sXG5cbiAgNDoge1xuICAgIG51bUdseXBoczogci51aW50MzIsXG4gICAgZ2x5cGhBcnJheTogbmV3IHIuQXJyYXkoQ29kZU9mZnNldFBhaXIsIHQgPT4gdC5udW1HbHlwaHMgKyAxKVxuICB9LFxuXG4gIDU6IHtcbiAgICBpbWFnZVNpemU6IHIudWludDMyLFxuICAgIGJpZ01ldHJpY3M6IEJpZ01ldHJpY3MsXG4gICAgbnVtR2x5cGhzOiByLnVpbnQzMixcbiAgICBnbHlwaENvZGVBcnJheTogbmV3IHIuQXJyYXkoci51aW50MTYsICdudW1HbHlwaHMnKVxuICB9XG59KTtcblxubGV0IEluZGV4U3VidGFibGVBcnJheSA9IG5ldyByLlN0cnVjdCh7XG4gIGZpcnN0R2x5cGhJbmRleDogci51aW50MTYsXG4gIGxhc3RHbHlwaEluZGV4OiByLnVpbnQxNixcbiAgc3VidGFibGU6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIEluZGV4U3VidGFibGUpXG59KTtcblxubGV0IEJpdG1hcFNpemVUYWJsZSA9IG5ldyByLlN0cnVjdCh7XG4gIGluZGV4U3ViVGFibGVBcnJheTogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IHIuQXJyYXkoSW5kZXhTdWJ0YWJsZUFycmF5LCAxKSwgeyB0eXBlOiAncGFyZW50JyB9KSxcbiAgaW5kZXhUYWJsZXNTaXplOiByLnVpbnQzMixcbiAgbnVtYmVyT2ZJbmRleFN1YlRhYmxlczogci51aW50MzIsXG4gIGNvbG9yUmVmOiByLnVpbnQzMixcbiAgaG9yaTogU0JpdExpbmVNZXRyaWNzLFxuICB2ZXJ0OiBTQml0TGluZU1ldHJpY3MsXG4gIHN0YXJ0R2x5cGhJbmRleDogci51aW50MTYsXG4gIGVuZEdseXBoSW5kZXg6IHIudWludDE2LFxuICBwcGVtWDogci51aW50OCxcbiAgcHBlbVk6IHIudWludDgsXG4gIGJpdERlcHRoOiByLnVpbnQ4LFxuICBmbGFnczogbmV3IHIuQml0ZmllbGQoci51aW50OCwgWydob3Jpem9udGFsJywgJ3ZlcnRpY2FsJ10pXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogIHIudWludDMyLCAvLyAweDAwMDIwMDAwXG4gIG51bVNpemVzOiByLnVpbnQzMixcbiAgc2l6ZXM6ICAgIG5ldyByLkFycmF5KEJpdG1hcFNpemVUYWJsZSwgJ251bVNpemVzJylcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5leHBvcnQgbGV0IEJpZ01ldHJpY3MgPSBuZXcgci5TdHJ1Y3Qoe1xuICBoZWlnaHQ6IHIudWludDgsXG4gIHdpZHRoOiByLnVpbnQ4LFxuICBob3JpQmVhcmluZ1g6IHIuaW50OCxcbiAgaG9yaUJlYXJpbmdZOiByLmludDgsXG4gIGhvcmlBZHZhbmNlOiByLnVpbnQ4LFxuICB2ZXJ0QmVhcmluZ1g6IHIuaW50OCxcbiAgdmVydEJlYXJpbmdZOiByLmludDgsXG4gIHZlcnRBZHZhbmNlOiByLnVpbnQ4XG59KTtcblxuZXhwb3J0IGxldCBTbWFsbE1ldHJpY3MgPSBuZXcgci5TdHJ1Y3Qoe1xuICBoZWlnaHQ6IHIudWludDgsXG4gIHdpZHRoOiByLnVpbnQ4LFxuICBiZWFyaW5nWDogci5pbnQ4LFxuICBiZWFyaW5nWTogci5pbnQ4LFxuICBhZHZhbmNlOiByLnVpbnQ4XG59KTtcblxubGV0IEVCRFRDb21wb25lbnQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBnbHlwaDogci51aW50MTYsXG4gIHhPZmZzZXQ6IHIuaW50OCxcbiAgeU9mZnNldDogci5pbnQ4XG59KTtcblxuY2xhc3MgQnl0ZUFsaWduZWQge31cblxuY2xhc3MgQml0QWxpZ25lZCB7fVxuXG5leHBvcnQgbGV0IGdseXBoID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCd2ZXJzaW9uJywge1xuICAxOiB7XG4gICAgbWV0cmljczogU21hbGxNZXRyaWNzLFxuICAgIGRhdGE6IEJ5dGVBbGlnbmVkXG4gIH0sXG5cbiAgMjoge1xuICAgIG1ldHJpY3M6IFNtYWxsTWV0cmljcyxcbiAgICBkYXRhOiBCaXRBbGlnbmVkXG4gIH0sXG5cbiAgLy8gZm9ybWF0IDMgaXMgZGVwcmVjYXRlZFxuICAvLyBmb3JtYXQgNCBpcyBub3Qgc3VwcG9ydGVkIGJ5IE1pY3Jvc29mdFxuXG4gIDU6IHtcbiAgICBkYXRhOiBCaXRBbGlnbmVkXG4gIH0sXG5cbiAgNjoge1xuICAgIG1ldHJpY3M6IEJpZ01ldHJpY3MsXG4gICAgZGF0YTogQnl0ZUFsaWduZWRcbiAgfSxcblxuICA3OiB7XG4gICAgbWV0cmljczogQmlnTWV0cmljcyxcbiAgICBkYXRhOiBCaXRBbGlnbmVkXG4gIH0sXG5cbiAgODoge1xuICAgIG1ldHJpY3M6IFNtYWxsTWV0cmljcyxcbiAgICBwYWQ6IG5ldyByLlJlc2VydmVkKHIudWludDgpLFxuICAgIG51bUNvbXBvbmVudHM6IHIudWludDE2LFxuICAgIGNvbXBvbmVudHM6IG5ldyByLkFycmF5KEVCRFRDb21wb25lbnQsICdudW1Db21wb25lbnRzJylcbiAgfSxcblxuICA5OiB7XG4gICAgbWV0cmljczogQmlnTWV0cmljcyxcbiAgICBwYWQ6IG5ldyByLlJlc2VydmVkKHIudWludDgpLFxuICAgIG51bUNvbXBvbmVudHM6IHIudWludDE2LFxuICAgIGNvbXBvbmVudHM6IG5ldyByLkFycmF5KEVCRFRDb21wb25lbnQsICdudW1Db21wb25lbnRzJylcbiAgfSxcblxuICAxNzoge1xuICAgIG1ldHJpY3M6IFNtYWxsTWV0cmljcyxcbiAgICBkYXRhTGVuOiByLnVpbnQzMixcbiAgICBkYXRhOiBuZXcgci5CdWZmZXIoJ2RhdGFMZW4nKVxuICB9LFxuXG4gIDE4OiB7XG4gICAgbWV0cmljczogQmlnTWV0cmljcyxcbiAgICBkYXRhTGVuOiByLnVpbnQzMixcbiAgICBkYXRhOiBuZXcgci5CdWZmZXIoJ2RhdGFMZW4nKVxuICB9LFxuXG4gIDE5OiB7XG4gICAgZGF0YUxlbjogci51aW50MzIsXG4gICAgZGF0YTogbmV3IHIuQnVmZmVyKCdkYXRhTGVuJylcbiAgfVxufSk7XG5cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IEltYWdlVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBwcGVtOiByLnVpbnQxNixcbiAgcmVzb2x1dGlvbjogci51aW50MTYsXG4gIGltYWdlT2Zmc2V0czogbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgJ3ZvaWQnKSwgdCA9PiB0LnBhcmVudC5wYXJlbnQubWF4cC5udW1HbHlwaHMgKyAxKVxufSk7XG5cbi8vIFRoaXMgaXMgdGhlIEFwcGxlIHNiaXggdGFibGUsIHVzZWQgYnkgdGhlIFwiQXBwbGUgQ29sb3IgRW1vamlcIiBmb250LlxuLy8gSXQgaW5jbHVkZXMgc2V2ZXJhbCBpbWFnZSB0YWJsZXMgd2l0aCBpbWFnZXMgZm9yIGVhY2ggYml0bWFwIGdseXBoXG4vLyBvZiBzZXZlcmFsIGRpZmZlcmVudCBzaXplcy5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIudWludDE2LFxuICBmbGFnczogbmV3IHIuQml0ZmllbGQoci51aW50MTYsIFsncmVuZGVyT3V0bGluZXMnXSksXG4gIG51bUltZ1RhYmxlczogci51aW50MzIsXG4gIGltYWdlVGFibGVzOiBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDMyLCBJbWFnZVRhYmxlKSwgJ251bUltZ1RhYmxlcycpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IExheWVyUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgZ2lkOiByLnVpbnQxNiwgICAgICAgICAgLy8gR2x5cGggSUQgb2YgbGF5ZXIgZ2x5cGggKG11c3QgYmUgaW4gei1vcmRlciBmcm9tIGJvdHRvbSB0byB0b3ApLlxuICBwYWxldHRlSW5kZXg6IHIudWludDE2ICAvLyBJbmRleCB2YWx1ZSB0byB1c2UgaW4gdGhlIGFwcHJvcHJpYXRlIHBhbGV0dGUuIFRoaXMgdmFsdWUgbXVzdFxufSk7ICAgICAgICAgICAgICAgICAgICAgICAvLyBiZSBsZXNzIHRoYW4gbnVtUGFsZXR0ZUVudHJpZXMgaW4gdGhlIENQQUwgdGFibGUsIGV4Y2VwdCBmb3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gdGhlIHNwZWNpYWwgY2FzZSBub3RlZCBiZWxvdy4gRWFjaCBwYWxldHRlIGVudHJ5IGlzIDE2IGJpdHMuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEEgcGFsZXR0ZSBpbmRleCBvZiAweEZGRkYgaXMgYSBzcGVjaWFsIGNhc2UgaW5kaWNhdGluZyB0aGF0XG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSB0ZXh0IGZvcmVncm91bmQgY29sb3Igc2hvdWxkIGJlIHVzZWQuXG5cbmxldCBCYXNlR2x5cGhSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBnaWQ6IHIudWludDE2LCAgICAgICAgICAgICAvLyBHbHlwaCBJRCBvZiByZWZlcmVuY2UgZ2x5cGguIFRoaXMgZ2x5cGggaXMgZm9yIHJlZmVyZW5jZSBvbmx5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGFuZCBpcyBub3QgcmVuZGVyZWQgZm9yIGNvbG9yLlxuICBmaXJzdExheWVySW5kZXg6IHIudWludDE2LCAvLyBJbmRleCAoZnJvbSBiZWdpbm5pbmcgb2YgdGhlIExheWVyIFJlY29yZHMpIHRvIHRoZSBsYXllciByZWNvcmQuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFRoZXJlIHdpbGwgYmUgbnVtTGF5ZXJzIGNvbnNlY3V0aXZlIGVudHJpZXMgZm9yIHRoaXMgYmFzZSBnbHlwaC5cbiAgbnVtTGF5ZXJzOiByLnVpbnQxNlxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIudWludDE2LFxuICBudW1CYXNlR2x5cGhSZWNvcmRzOiByLnVpbnQxNixcbiAgYmFzZUdseXBoUmVjb3JkOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgci5BcnJheShCYXNlR2x5cGhSZWNvcmQsICdudW1CYXNlR2x5cGhSZWNvcmRzJykpLFxuICBsYXllclJlY29yZHM6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyByLkFycmF5KExheWVyUmVjb3JkLCAnbnVtTGF5ZXJSZWNvcmRzJyksIHsgbGF6eTogdHJ1ZSB9KSxcbiAgbnVtTGF5ZXJSZWNvcmRzOiByLnVpbnQxNlxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBDb2xvclJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIGJsdWU6IHIudWludDgsXG4gIGdyZWVuOiByLnVpbnQ4LFxuICByZWQ6IHIudWludDgsXG4gIGFscGhhOiByLnVpbnQ4XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIGhlYWRlcjoge1xuICAgIG51bVBhbGV0dGVFbnRyaWVzOiByLnVpbnQxNixcbiAgICBudW1QYWxldHRlczogci51aW50MTYsXG4gICAgbnVtQ29sb3JSZWNvcmRzOiByLnVpbnQxNixcbiAgICBjb2xvclJlY29yZHM6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyByLkFycmF5KENvbG9yUmVjb3JkLCAnbnVtQ29sb3JSZWNvcmRzJykpLFxuICAgIGNvbG9yUmVjb3JkSW5kaWNlczogbmV3IHIuQXJyYXkoci51aW50MTYsICdudW1QYWxldHRlcycpLFxuICB9LFxuICAwOiB7fSxcbiAgMToge1xuICAgIG9mZnNldFBhbGV0dGVUeXBlQXJyYXk6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyByLkFycmF5KHIudWludDMyLCAnbnVtUGFsZXR0ZXMnKSksXG4gICAgb2Zmc2V0UGFsZXR0ZUxhYmVsQXJyYXk6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyByLkFycmF5KHIudWludDE2LCAnbnVtUGFsZXR0ZXMnKSksXG4gICAgb2Zmc2V0UGFsZXR0ZUVudHJ5TGFiZWxBcnJheTogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IHIuQXJyYXkoci51aW50MTYsICdudW1QYWxldHRlRW50cmllcycpKVxuICB9XG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7U2NyaXB0TGlzdCwgRmVhdHVyZUxpc3QsIExvb2t1cExpc3QsIENvdmVyYWdlLCBDbGFzc0RlZiwgRGV2aWNlfSBmcm9tICcuL29wZW50eXBlJztcbmltcG9ydCB7SXRlbVZhcmlhdGlvblN0b3JlfSBmcm9tICcuL3ZhcmlhdGlvbnMnO1xuXG5sZXQgQmFzZUNvb3JkID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIDE6IHsgLy8gRGVzaWduIHVuaXRzIG9ubHlcbiAgICBjb29yZGluYXRlOiAgIHIuaW50MTYgLy8gWCBvciBZIHZhbHVlLCBpbiBkZXNpZ24gdW5pdHNcbiAgfSxcblxuICAyOiB7IC8vIERlc2lnbiB1bml0cyBwbHVzIGNvbnRvdXIgcG9pbnRcbiAgICBjb29yZGluYXRlOiAgICAgci5pbnQxNiwgICAvLyBYIG9yIFkgdmFsdWUsIGluIGRlc2lnbiB1bml0c1xuICAgIHJlZmVyZW5jZUdseXBoOiByLnVpbnQxNiwgIC8vIEdseXBoSUQgb2YgY29udHJvbCBnbHlwaFxuICAgIGJhc2VDb29yZFBvaW50OiByLnVpbnQxNiAgIC8vIEluZGV4IG9mIGNvbnRvdXIgcG9pbnQgb24gdGhlIHJlZmVyZW5jZUdseXBoXG4gIH0sXG5cbiAgMzogeyAvLyBEZXNpZ24gdW5pdHMgcGx1cyBEZXZpY2UgdGFibGVcbiAgICBjb29yZGluYXRlOiAgIHIuaW50MTYsICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFggb3IgWSB2YWx1ZSwgaW4gZGVzaWduIHVuaXRzXG4gICAgZGV2aWNlVGFibGU6ICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBEZXZpY2UpICAvLyBEZXZpY2UgdGFibGUgZm9yIFggb3IgWSB2YWx1ZVxuICB9XG59KTtcblxubGV0IEJhc2VWYWx1ZXMgPSBuZXcgci5TdHJ1Y3Qoe1xuICBkZWZhdWx0SW5kZXg6ICAgci51aW50MTYsICAvLyBJbmRleCBvZiBkZWZhdWx0IGJhc2VsaW5lIGZvciB0aGlzIHNjcmlwdC1zYW1lIGluZGV4IGluIHRoZSBCYXNlVGFnTGlzdFxuICBiYXNlQ29vcmRDb3VudDogci51aW50MTYsXG4gIGJhc2VDb29yZHM6ICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlQ29vcmQpLCAnYmFzZUNvb3JkQ291bnQnKVxufSk7XG5cbmxldCBGZWF0TWluTWF4UmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICAgICAgbmV3IHIuU3RyaW5nKDQpLCAgLy8gNC1ieXRlIGZlYXR1cmUgaWRlbnRpZmljYXRpb24gdGFnLW11c3QgbWF0Y2ggRmVhdHVyZVRhZyBpbiBGZWF0dXJlTGlzdFxuICBtaW5Db29yZDogICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlQ29vcmQsIHt0eXBlOiAncGFyZW50J30pLCAvLyBNYXkgYmUgTlVMTFxuICBtYXhDb29yZDogICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlQ29vcmQsIHt0eXBlOiAncGFyZW50J30pICAvLyBNYXkgYmUgTlVMTFxufSk7XG5cbmxldCBNaW5NYXggPSBuZXcgci5TdHJ1Y3Qoe1xuICBtaW5Db29yZDogICAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEJhc2VDb29yZCksICAvLyBNYXkgYmUgTlVMTFxuICBtYXhDb29yZDogICAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEJhc2VDb29yZCksICAvLyBNYXkgYmUgTlVMTFxuICBmZWF0TWluTWF4Q291bnQ6ICAgIHIudWludDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNYXkgYmUgMFxuICBmZWF0TWluTWF4UmVjb3JkczogIG5ldyByLkFycmF5KEZlYXRNaW5NYXhSZWNvcmQsICdmZWF0TWluTWF4Q291bnQnKSAvLyBJbiBhbHBoYWJldGljYWwgb3JkZXJcbn0pO1xuXG5sZXQgQmFzZUxhbmdTeXNSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgIG5ldyByLlN0cmluZyg0KSwgIC8vIDQtYnl0ZSBsYW5ndWFnZSBzeXN0ZW0gaWRlbnRpZmljYXRpb24gdGFnXG4gIG1pbk1heDogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTWluTWF4LCB7dHlwZTogJ3BhcmVudCd9KVxufSk7XG5cbmxldCBCYXNlU2NyaXB0ID0gbmV3IHIuU3RydWN0KHtcbiAgYmFzZVZhbHVlczogICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlVmFsdWVzKSwgLy8gTWF5IGJlIE5VTExcbiAgZGVmYXVsdE1pbk1heDogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBNaW5NYXgpLCAgICAgLy8gTWF5IGJlIE5VTExcbiAgYmFzZUxhbmdTeXNDb3VudDogICByLnVpbnQxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWF5IGJlIDBcbiAgYmFzZUxhbmdTeXNSZWNvcmRzOiBuZXcgci5BcnJheShCYXNlTGFuZ1N5c1JlY29yZCwgJ2Jhc2VMYW5nU3lzQ291bnQnKSAvLyBpbiBhbHBoYWJldGljYWwgb3JkZXIgYnkgQmFzZUxhbmdTeXNUYWdcbn0pO1xuXG5sZXQgQmFzZVNjcmlwdFJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHRhZzogICAgICBuZXcgci5TdHJpbmcoNCksICAvLyA0LWJ5dGUgc2NyaXB0IGlkZW50aWZpY2F0aW9uIHRhZ1xuICBzY3JpcHQ6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQmFzZVNjcmlwdCwge3R5cGU6ICdwYXJlbnQnfSlcbn0pO1xuXG5sZXQgQmFzZVNjcmlwdExpc3QgPSBuZXcgci5BcnJheShCYXNlU2NyaXB0UmVjb3JkLCByLnVpbnQxNik7XG5cbi8vIEFycmF5IG9mIDQtYnl0ZSBiYXNlbGluZSBpZGVudGlmaWNhdGlvbiB0YWdzLW11c3QgYmUgaW4gYWxwaGFiZXRpY2FsIG9yZGVyXG5sZXQgQmFzZVRhZ0xpc3QgPSBuZXcgci5BcnJheShuZXcgci5TdHJpbmcoNCksIHIudWludDE2KTtcblxubGV0IEF4aXMgPSBuZXcgci5TdHJ1Y3Qoe1xuICBiYXNlVGFnTGlzdDogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQmFzZVRhZ0xpc3QpLCAgLy8gTWF5IGJlIE5VTExcbiAgYmFzZVNjcmlwdExpc3Q6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIEJhc2VTY3JpcHRMaXN0KVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQzMiwge1xuICBoZWFkZXI6IHtcbiAgICBob3JpekF4aXM6ICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEF4aXMpLCAgIC8vIE1heSBiZSBOVUxMXG4gICAgdmVydEF4aXM6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBBeGlzKSAgICAvLyBNYXkgYmUgTlVMTFxuICB9LFxuXG4gIDB4MDAwMTAwMDA6IHt9LFxuICAweDAwMDEwMDAxOiB7XG4gICAgaXRlbVZhcmlhdGlvblN0b3JlOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBJdGVtVmFyaWF0aW9uU3RvcmUpXG4gIH1cbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHtTY3JpcHRMaXN0LCBGZWF0dXJlTGlzdCwgTG9va3VwTGlzdCwgQ292ZXJhZ2UsIENsYXNzRGVmLCBEZXZpY2V9IGZyb20gJy4vb3BlbnR5cGUnO1xuaW1wb3J0IHtJdGVtVmFyaWF0aW9uU3RvcmV9IGZyb20gJy4vdmFyaWF0aW9ucyc7XG5cbmxldCBBdHRhY2hQb2ludCA9IG5ldyByLkFycmF5KHIudWludDE2LCByLnVpbnQxNik7XG5sZXQgQXR0YWNoTGlzdCA9IG5ldyByLlN0cnVjdCh7XG4gIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gIGdseXBoQ291bnQ6ICAgICByLnVpbnQxNixcbiAgYXR0YWNoUG9pbnRzOiAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIEF0dGFjaFBvaW50KSwgJ2dseXBoQ291bnQnKVxufSk7XG5cbmxldCBDYXJldFZhbHVlID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIDE6IHsgLy8gRGVzaWduIHVuaXRzIG9ubHlcbiAgICBjb29yZGluYXRlOiByLmludDE2XG4gIH0sXG5cbiAgMjogeyAvLyBDb250b3VyIHBvaW50XG4gICAgY2FyZXRWYWx1ZVBvaW50OiByLnVpbnQxNlxuICB9LFxuXG4gIDM6IHsgLy8gRGVzaWduIHVuaXRzIHBsdXMgRGV2aWNlIHRhYmxlXG4gICAgY29vcmRpbmF0ZTogICAgIHIuaW50MTYsXG4gICAgZGV2aWNlVGFibGU6ICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIERldmljZSlcbiAgfVxufSk7XG5cbmxldCBMaWdHbHlwaCA9IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENhcmV0VmFsdWUpLCByLnVpbnQxNik7XG5cbmxldCBMaWdDYXJldExpc3QgPSBuZXcgci5TdHJ1Y3Qoe1xuICBjb3ZlcmFnZTogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICBsaWdHbHlwaENvdW50OiAgci51aW50MTYsXG4gIGxpZ0dseXBoczogICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBMaWdHbHlwaCksICdsaWdHbHlwaENvdW50Jylcbn0pO1xuXG5sZXQgTWFya0dseXBoU2V0c0RlZiA9IG5ldyByLlN0cnVjdCh7XG4gIG1hcmtTZXRUYWJsZUZvcm1hdDogci51aW50MTYsXG4gIG1hcmtTZXRDb3VudDogICAgICAgci51aW50MTYsXG4gIGNvdmVyYWdlOiAgICAgICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgQ292ZXJhZ2UpLCAnbWFya1NldENvdW50Jylcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MzIsIHtcbiAgaGVhZGVyOiB7XG4gICAgZ2x5cGhDbGFzc0RlZjogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc0RlZiksXG4gICAgYXR0YWNoTGlzdDogICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBBdHRhY2hMaXN0KSxcbiAgICBsaWdDYXJldExpc3Q6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIExpZ0NhcmV0TGlzdCksXG4gICAgbWFya0F0dGFjaENsYXNzRGVmOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc0RlZilcbiAgfSxcblxuICAweDAwMDEwMDAwOiB7fSxcbiAgMHgwMDAxMDAwMjoge1xuICAgIG1hcmtHbHlwaFNldHNEZWY6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTWFya0dseXBoU2V0c0RlZilcbiAgfSxcbiAgMHgwMDAxMDAwMzoge1xuICAgIG1hcmtHbHlwaFNldHNEZWY6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTWFya0dseXBoU2V0c0RlZiksXG4gICAgaXRlbVZhcmlhdGlvblN0b3JlOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBJdGVtVmFyaWF0aW9uU3RvcmUpXG4gIH1cbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHtTY3JpcHRMaXN0LCBGZWF0dXJlTGlzdCwgTG9va3VwTGlzdCwgQ292ZXJhZ2UsIENsYXNzRGVmLCBEZXZpY2UsIENvbnRleHQsIENoYWluaW5nQ29udGV4dH0gZnJvbSAnLi9vcGVudHlwZSc7XG5pbXBvcnQge0ZlYXR1cmVWYXJpYXRpb25zfSBmcm9tICcuL3ZhcmlhdGlvbnMnO1xuXG5sZXQgVmFsdWVGb3JtYXQgPSBuZXcgci5CaXRmaWVsZChyLnVpbnQxNiwgW1xuICAneFBsYWNlbWVudCcsICd5UGxhY2VtZW50JyxcbiAgJ3hBZHZhbmNlJywgJ3lBZHZhbmNlJyxcbiAgJ3hQbGFEZXZpY2UnLCAneVBsYURldmljZScsXG4gICd4QWR2RGV2aWNlJywgJ3lBZHZEZXZpY2UnXG5dKTtcblxubGV0IHR5cGVzID0ge1xuICB4UGxhY2VtZW50OiByLmludDE2LFxuICB5UGxhY2VtZW50OiByLmludDE2LFxuICB4QWR2YW5jZTogICByLmludDE2LFxuICB5QWR2YW5jZTogICByLmludDE2LFxuICB4UGxhRGV2aWNlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBEZXZpY2UsIHsgdHlwZTogJ2dsb2JhbCcsIHJlbGF0aXZlVG86IGN0eCA9PiBjdHgucmVsIH0pLFxuICB5UGxhRGV2aWNlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBEZXZpY2UsIHsgdHlwZTogJ2dsb2JhbCcsIHJlbGF0aXZlVG86IGN0eCA9PiBjdHgucmVsIH0pLFxuICB4QWR2RGV2aWNlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBEZXZpY2UsIHsgdHlwZTogJ2dsb2JhbCcsIHJlbGF0aXZlVG86IGN0eCA9PiBjdHgucmVsIH0pLFxuICB5QWR2RGV2aWNlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBEZXZpY2UsIHsgdHlwZTogJ2dsb2JhbCcsIHJlbGF0aXZlVG86IGN0eCA9PiBjdHgucmVsIH0pXG59O1xuXG5jbGFzcyBWYWx1ZVJlY29yZCB7XG4gIGNvbnN0cnVjdG9yKGtleSA9ICd2YWx1ZUZvcm1hdCcpIHtcbiAgICB0aGlzLmtleSA9IGtleTtcbiAgfVxuXG4gIGJ1aWxkU3RydWN0KHBhcmVudCkge1xuICAgIGxldCBzdHJ1Y3QgPSBwYXJlbnQ7XG4gICAgd2hpbGUgKCFzdHJ1Y3RbdGhpcy5rZXldICYmIHN0cnVjdC5wYXJlbnQpIHtcbiAgICAgIHN0cnVjdCA9IHN0cnVjdC5wYXJlbnQ7XG4gICAgfVxuXG4gICAgaWYgKCFzdHJ1Y3RbdGhpcy5rZXldKSByZXR1cm47XG5cbiAgICBsZXQgZmllbGRzID0ge307XG4gICAgZmllbGRzLnJlbCA9ICgpID0+IHN0cnVjdC5fc3RhcnRPZmZzZXQ7XG5cbiAgICBsZXQgZm9ybWF0ID0gc3RydWN0W3RoaXMua2V5XTtcbiAgICBmb3IgKGxldCBrZXkgaW4gZm9ybWF0KSB7XG4gICAgICBpZiAoZm9ybWF0W2tleV0pIHtcbiAgICAgICAgZmllbGRzW2tleV0gPSB0eXBlc1trZXldO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBuZXcgci5TdHJ1Y3QoZmllbGRzKTtcbiAgfVxuXG4gIHNpemUodmFsLCBjdHgpIHtcbiAgICByZXR1cm4gdGhpcy5idWlsZFN0cnVjdChjdHgpLnNpemUodmFsLCBjdHgpO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgbGV0IHJlcyA9IHRoaXMuYnVpbGRTdHJ1Y3QocGFyZW50KS5kZWNvZGUoc3RyZWFtLCBwYXJlbnQpO1xuICAgIGRlbGV0ZSByZXMucmVsO1xuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxubGV0IFBhaXJWYWx1ZVJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHNlY29uZEdseXBoOiAgICByLnVpbnQxNixcbiAgdmFsdWUxOiAgICAgICAgIG5ldyBWYWx1ZVJlY29yZCgndmFsdWVGb3JtYXQxJyksXG4gIHZhbHVlMjogICAgICAgICBuZXcgVmFsdWVSZWNvcmQoJ3ZhbHVlRm9ybWF0MicpXG59KTtcblxubGV0IFBhaXJTZXQgPSBuZXcgci5BcnJheShQYWlyVmFsdWVSZWNvcmQsIHIudWludDE2KTtcblxubGV0IENsYXNzMlJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHZhbHVlMTogbmV3IFZhbHVlUmVjb3JkKCd2YWx1ZUZvcm1hdDEnKSxcbiAgdmFsdWUyOiBuZXcgVmFsdWVSZWNvcmQoJ3ZhbHVlRm9ybWF0MicpXG59KTtcblxubGV0IEFuY2hvciA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAxOiB7IC8vIERlc2lnbiB1bml0cyBvbmx5XG4gICAgeENvb3JkaW5hdGU6ICAgIHIuaW50MTYsXG4gICAgeUNvb3JkaW5hdGU6ICAgIHIuaW50MTZcbiAgfSxcblxuICAyOiB7IC8vIERlc2lnbiB1bml0cyBwbHVzIGNvbnRvdXIgcG9pbnRcbiAgICB4Q29vcmRpbmF0ZTogICAgci5pbnQxNixcbiAgICB5Q29vcmRpbmF0ZTogICAgci5pbnQxNixcbiAgICBhbmNob3JQb2ludDogICAgci51aW50MTZcbiAgfSxcblxuICAzOiB7IC8vIERlc2lnbiB1bml0cyBwbHVzIERldmljZSB0YWJsZXNcbiAgICB4Q29vcmRpbmF0ZTogICAgci5pbnQxNixcbiAgICB5Q29vcmRpbmF0ZTogICAgci5pbnQxNixcbiAgICB4RGV2aWNlVGFibGU6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRGV2aWNlKSxcbiAgICB5RGV2aWNlVGFibGU6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRGV2aWNlKVxuICB9XG59KTtcblxubGV0IEVudHJ5RXhpdFJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIGVudHJ5QW5jaG9yOiAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBBbmNob3IsIHt0eXBlOiAncGFyZW50J30pLFxuICBleGl0QW5jaG9yOiAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQW5jaG9yLCB7dHlwZTogJ3BhcmVudCd9KVxufSk7XG5cbmxldCBNYXJrUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgY2xhc3M6ICAgICAgci51aW50MTYsXG4gIG1hcmtBbmNob3I6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIEFuY2hvciwge3R5cGU6ICdwYXJlbnQnfSlcbn0pO1xuXG5sZXQgTWFya0FycmF5ID0gbmV3IHIuQXJyYXkoTWFya1JlY29yZCwgci51aW50MTYpO1xuXG5sZXQgQmFzZVJlY29yZCAgPSBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBBbmNob3IpLCB0ID0+IHQucGFyZW50LmNsYXNzQ291bnQpO1xubGV0IEJhc2VBcnJheSAgID0gbmV3IHIuQXJyYXkoQmFzZVJlY29yZCwgci51aW50MTYpO1xuXG5sZXQgQ29tcG9uZW50UmVjb3JkID0gbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQW5jaG9yKSwgdCA9PiB0LnBhcmVudC5wYXJlbnQuY2xhc3NDb3VudCk7XG5sZXQgTGlnYXR1cmVBdHRhY2ggID0gbmV3IHIuQXJyYXkoQ29tcG9uZW50UmVjb3JkLCByLnVpbnQxNik7XG5sZXQgTGlnYXR1cmVBcnJheSAgID0gbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTGlnYXR1cmVBdHRhY2gpLCByLnVpbnQxNik7XG5cbmxldCBHUE9TTG9va3VwID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCdsb29rdXBUeXBlJywge1xuICAxOiBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHsgLy8gU2luZ2xlIEFkanVzdG1lbnRcbiAgICAxOiB7IC8vIFNpbmdsZSBwb3NpdGlvbmluZyB2YWx1ZVxuICAgICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICAgIHZhbHVlRm9ybWF0OiAgICBWYWx1ZUZvcm1hdCxcbiAgICAgIHZhbHVlOiAgICAgICAgICBuZXcgVmFsdWVSZWNvcmQoKVxuICAgIH0sXG4gICAgMjoge1xuICAgICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICAgIHZhbHVlRm9ybWF0OiAgICBWYWx1ZUZvcm1hdCxcbiAgICAgIHZhbHVlQ291bnQ6ICAgICByLnVpbnQxNixcbiAgICAgIHZhbHVlczogICAgICAgICBuZXcgci5MYXp5QXJyYXkobmV3IFZhbHVlUmVjb3JkKCksICd2YWx1ZUNvdW50JylcbiAgICB9XG4gIH0pLFxuXG4gIDI6IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwgeyAvLyBQYWlyIEFkanVzdG1lbnQgUG9zaXRpb25pbmdcbiAgICAxOiB7IC8vIEFkanVzdG1lbnRzIGZvciBnbHlwaCBwYWlyc1xuICAgICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICAgIHZhbHVlRm9ybWF0MTogICBWYWx1ZUZvcm1hdCxcbiAgICAgIHZhbHVlRm9ybWF0MjogICBWYWx1ZUZvcm1hdCxcbiAgICAgIHBhaXJTZXRDb3VudDogICByLnVpbnQxNixcbiAgICAgIHBhaXJTZXRzOiAgICAgICBuZXcgci5MYXp5QXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgUGFpclNldCksICdwYWlyU2V0Q291bnQnKVxuICAgIH0sXG5cbiAgICAyOiB7IC8vIENsYXNzIHBhaXIgYWRqdXN0bWVudFxuICAgICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICAgIHZhbHVlRm9ybWF0MTogICBWYWx1ZUZvcm1hdCxcbiAgICAgIHZhbHVlRm9ybWF0MjogICBWYWx1ZUZvcm1hdCxcbiAgICAgIGNsYXNzRGVmMTogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc0RlZiksXG4gICAgICBjbGFzc0RlZjI6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpLFxuICAgICAgY2xhc3MxQ291bnQ6ICAgIHIudWludDE2LFxuICAgICAgY2xhc3MyQ291bnQ6ICAgIHIudWludDE2LFxuICAgICAgY2xhc3NSZWNvcmRzOiAgIG5ldyByLkxhenlBcnJheShuZXcgci5MYXp5QXJyYXkoQ2xhc3MyUmVjb3JkLCAnY2xhc3MyQ291bnQnKSwgJ2NsYXNzMUNvdW50JylcbiAgICB9XG4gIH0pLFxuXG4gIDM6IHsgLy8gQ3Vyc2l2ZSBBdHRhY2htZW50IFBvc2l0aW9uaW5nXG4gICAgZm9ybWF0OiAgICAgICAgICAgICByLnVpbnQxNixcbiAgICBjb3ZlcmFnZTogICAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBlbnRyeUV4aXRDb3VudDogICAgIHIudWludDE2LFxuICAgIGVudHJ5RXhpdFJlY29yZHM6ICAgbmV3IHIuQXJyYXkoRW50cnlFeGl0UmVjb3JkLCAnZW50cnlFeGl0Q291bnQnKVxuICB9LFxuXG4gIDQ6IHsgLy8gTWFya1RvQmFzZSBBdHRhY2htZW50IFBvc2l0aW9uaW5nXG4gICAgZm9ybWF0OiAgICAgICAgICAgICByLnVpbnQxNixcbiAgICBtYXJrQ292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBiYXNlQ292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBjbGFzc0NvdW50OiAgICAgICAgIHIudWludDE2LFxuICAgIG1hcmtBcnJheTogICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTWFya0FycmF5KSxcbiAgICBiYXNlQXJyYXk6ICAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEJhc2VBcnJheSlcbiAgfSxcblxuICA1OiB7IC8vIE1hcmtUb0xpZ2F0dXJlIEF0dGFjaG1lbnQgUG9zaXRpb25pbmdcbiAgICBmb3JtYXQ6ICAgICAgICAgICAgIHIudWludDE2LFxuICAgIG1hcmtDb3ZlcmFnZTogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGxpZ2F0dXJlQ292ZXJhZ2U6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGNsYXNzQ291bnQ6ICAgICAgICAgci51aW50MTYsXG4gICAgbWFya0FycmF5OiAgICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBNYXJrQXJyYXkpLFxuICAgIGxpZ2F0dXJlQXJyYXk6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTGlnYXR1cmVBcnJheSlcbiAgfSxcblxuICA2OiB7IC8vIE1hcmtUb01hcmsgQXR0YWNobWVudCBQb3NpdGlvbmluZ1xuICAgIGZvcm1hdDogICAgICAgICAgICAgci51aW50MTYsXG4gICAgbWFyazFDb3ZlcmFnZTogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgbWFyazJDb3ZlcmFnZTogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgY2xhc3NDb3VudDogICAgICAgICByLnVpbnQxNixcbiAgICBtYXJrMUFycmF5OiAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIE1hcmtBcnJheSksXG4gICAgbWFyazJBcnJheTogICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlQXJyYXkpXG4gIH0sXG5cbiAgNzogQ29udGV4dCwgICAgICAgICAgLy8gQ29udGV4dHVhbCBwb3NpdGlvbmluZ1xuICA4OiBDaGFpbmluZ0NvbnRleHQsICAvLyBDaGFpbmluZyBjb250ZXh0dWFsIHBvc2l0aW9uaW5nXG5cbiAgOTogeyAvLyBFeHRlbnNpb24gUG9zaXRpb25pbmdcbiAgICBwb3NGb3JtYXQ6ICAgci51aW50MTYsXG4gICAgbG9va3VwVHlwZTogIHIudWludDE2LCAgIC8vIGNhbm5vdCBhbHNvIGJlIDlcbiAgICBleHRlbnNpb246ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbnVsbClcbiAgfVxufSk7XG5cbi8vIEZpeCBjaXJjdWxhciByZWZlcmVuY2VcbkdQT1NMb29rdXAudmVyc2lvbnNbOV0uZXh0ZW5zaW9uLnR5cGUgPSBHUE9TTG9va3VwO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MzIsIHtcbiAgaGVhZGVyOiB7XG4gICAgc2NyaXB0TGlzdDogICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIFNjcmlwdExpc3QpLFxuICAgIGZlYXR1cmVMaXN0OiAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBGZWF0dXJlTGlzdCksXG4gICAgbG9va3VwTGlzdDogICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIG5ldyBMb29rdXBMaXN0KEdQT1NMb29rdXApKVxuICB9LFxuXG4gIDB4MDAwMTAwMDA6IHt9LFxuICAweDAwMDEwMDAxOiB7XG4gICAgZmVhdHVyZVZhcmlhdGlvbnM6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIEZlYXR1cmVWYXJpYXRpb25zKVxuICB9XG59KTtcblxuLy8gZXhwb3J0IEdQT1NMb29rdXAgZm9yIEpTVEYgdGFibGVcbmV4cG9ydCB7IEdQT1NMb29rdXAgfTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7U2NyaXB0TGlzdCwgRmVhdHVyZUxpc3QsIExvb2t1cExpc3QsIENvdmVyYWdlLCBDbGFzc0RlZiwgRGV2aWNlLCBDb250ZXh0LCBDaGFpbmluZ0NvbnRleHR9IGZyb20gJy4vb3BlbnR5cGUnO1xuaW1wb3J0IHtGZWF0dXJlVmFyaWF0aW9uc30gZnJvbSAnLi92YXJpYXRpb25zJztcblxubGV0IFNlcXVlbmNlID0gbmV3IHIuQXJyYXkoci51aW50MTYsIHIudWludDE2KTtcbmxldCBBbHRlcm5hdGVTZXQgPSBTZXF1ZW5jZTtcblxubGV0IExpZ2F0dXJlID0gbmV3IHIuU3RydWN0KHtcbiAgZ2x5cGg6ICAgICAgci51aW50MTYsXG4gIGNvbXBDb3VudDogIHIudWludDE2LFxuICBjb21wb25lbnRzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgdCA9PiB0LmNvbXBDb3VudCAtIDEpXG59KTtcblxubGV0IExpZ2F0dXJlU2V0ID0gbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTGlnYXR1cmUpLCByLnVpbnQxNik7XG5cbmxldCBHU1VCTG9va3VwID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCdsb29rdXBUeXBlJywge1xuICAxOiBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHsvLyBTaW5nbGUgU3Vic3RpdHV0aW9uXG4gICAgMToge1xuICAgICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICAgIGRlbHRhR2x5cGhJRDogICByLmludDE2XG4gICAgfSxcbiAgICAyOiB7XG4gICAgICBjb3ZlcmFnZTogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgICAgZ2x5cGhDb3VudDogICAgIHIudWludDE2LFxuICAgICAgc3Vic3RpdHV0ZTogICAgIG5ldyByLkxhenlBcnJheShyLnVpbnQxNiwgJ2dseXBoQ291bnQnKVxuICAgIH1cbiAgfSksXG5cbiAgMjogeyAvLyBNdWx0aXBsZSBTdWJzdGl0dXRpb25cbiAgICBzdWJzdEZvcm1hdDogICAgci51aW50MTYsXG4gICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBjb3VudDogICAgICAgICAgci51aW50MTYsXG4gICAgc2VxdWVuY2VzOiAgICAgIG5ldyByLkxhenlBcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBTZXF1ZW5jZSksICdjb3VudCcpXG4gIH0sXG5cbiAgMzogeyAvLyBBbHRlcm5hdGUgU3Vic3RpdHV0aW9uXG4gICAgc3Vic3RGb3JtYXQ6ICAgIHIudWludDE2LFxuICAgIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgY291bnQ6ICAgICAgICAgIHIudWludDE2LFxuICAgIGFsdGVybmF0ZVNldDogICBuZXcgci5MYXp5QXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQWx0ZXJuYXRlU2V0KSwgJ2NvdW50JylcbiAgfSxcblxuICA0OiB7IC8vIExpZ2F0dXJlIFN1YnN0aXR1dGlvblxuICAgIHN1YnN0Rm9ybWF0OiAgICByLnVpbnQxNixcbiAgICBjb3ZlcmFnZTogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGNvdW50OiAgICAgICAgICByLnVpbnQxNixcbiAgICBsaWdhdHVyZVNldHM6ICAgbmV3IHIuTGF6eUFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIExpZ2F0dXJlU2V0KSwgJ2NvdW50JylcbiAgfSxcblxuICA1OiBDb250ZXh0LCAgICAgICAgIC8vIENvbnRleHR1YWwgU3Vic3RpdHV0aW9uXG4gIDY6IENoYWluaW5nQ29udGV4dCwgLy8gQ2hhaW5pbmcgQ29udGV4dHVhbCBTdWJzdGl0dXRpb25cblxuICA3OiB7IC8vIEV4dGVuc2lvbiBTdWJzdGl0dXRpb25cbiAgICBzdWJzdEZvcm1hdDogICByLnVpbnQxNixcbiAgICBsb29rdXBUeXBlOiAgICByLnVpbnQxNiwgICAvLyBjYW5ub3QgYWxzbyBiZSA3XG4gICAgZXh0ZW5zaW9uOiAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbnVsbClcbiAgfSxcblxuICA4OiB7IC8vIFJldmVyc2UgQ2hhaW5pbmcgQ29udGV4dHVhbCBTaW5nbGUgU3Vic3RpdHV0aW9uXG4gICAgc3Vic3RGb3JtYXQ6ICAgICAgICAgICAgci51aW50MTYsXG4gICAgY292ZXJhZ2U6ICAgICAgICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGJhY2t0cmFja0NvdmVyYWdlOiAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSwgJ2JhY2t0cmFja0dseXBoQ291bnQnKSxcbiAgICBsb29rYWhlYWRHbHlwaENvdW50OiAgICByLnVpbnQxNixcbiAgICBsb29rYWhlYWRDb3ZlcmFnZTogICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksICdsb29rYWhlYWRHbHlwaENvdW50JyksXG4gICAgZ2x5cGhDb3VudDogICAgICAgICAgICAgci51aW50MTYsXG4gICAgc3Vic3RpdHV0ZXM6ICAgICAgICAgICAgbmV3IHIuQXJyYXkoci51aW50MTYsICdnbHlwaENvdW50JylcbiAgfVxufSk7XG5cbi8vIEZpeCBjaXJjdWxhciByZWZlcmVuY2VcbkdTVUJMb29rdXAudmVyc2lvbnNbN10uZXh0ZW5zaW9uLnR5cGUgPSBHU1VCTG9va3VwO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MzIsIHtcbiAgaGVhZGVyOiB7XG4gICAgc2NyaXB0TGlzdDogICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIFNjcmlwdExpc3QpLFxuICAgIGZlYXR1cmVMaXN0OiAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBGZWF0dXJlTGlzdCksXG4gICAgbG9va3VwTGlzdDogICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIG5ldyBMb29rdXBMaXN0KEdTVUJMb29rdXApKVxuICB9LFxuXG4gIDB4MDAwMTAwMDA6IHt9LFxuICAweDAwMDEwMDAxOiB7XG4gICAgZmVhdHVyZVZhcmlhdGlvbnM6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIEZlYXR1cmVWYXJpYXRpb25zKVxuICB9XG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7IFNjcmlwdExpc3QsIEZlYXR1cmVMaXN0LCBMb29rdXBMaXN0LCBDb3ZlcmFnZSwgQ2xhc3NEZWYsIERldmljZSB9IGZyb20gJy4vb3BlbnR5cGUnO1xuaW1wb3J0IHsgR1BPU0xvb2t1cCB9IGZyb20gJy4vR1BPUyc7XG5cbmxldCBKc3RmR1NVQk1vZExpc3QgPSBuZXcgci5BcnJheShyLnVpbnQxNiwgci51aW50MTYpO1xuXG5sZXQgSnN0ZlByaW9yaXR5ID0gbmV3IHIuU3RydWN0KHtcbiAgc2hyaW5rYWdlRW5hYmxlR1NVQjogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgc2hyaW5rYWdlRGlzYWJsZUdTVUI6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgc2hyaW5rYWdlRW5hYmxlR1BPUzogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgc2hyaW5rYWdlRGlzYWJsZUdQT1M6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgc2hyaW5rYWdlSnN0Zk1heDogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgbmV3IExvb2t1cExpc3QoR1BPU0xvb2t1cCkpLFxuICBleHRlbnNpb25FbmFibGVHU1VCOiAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBKc3RmR1NVQk1vZExpc3QpLFxuICBleHRlbnNpb25EaXNhYmxlR1NVQjogICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBKc3RmR1NVQk1vZExpc3QpLFxuICBleHRlbnNpb25FbmFibGVHUE9TOiAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBKc3RmR1NVQk1vZExpc3QpLFxuICBleHRlbnNpb25EaXNhYmxlR1BPUzogICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBKc3RmR1NVQk1vZExpc3QpLFxuICBleHRlbnNpb25Kc3RmTWF4OiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBuZXcgTG9va3VwTGlzdChHUE9TTG9va3VwKSlcbn0pO1xuXG5sZXQgSnN0ZkxhbmdTeXMgPSBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBKc3RmUHJpb3JpdHkpLCByLnVpbnQxNik7XG5cbmxldCBKc3RmTGFuZ1N5c1JlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHRhZzogICAgICAgICBuZXcgci5TdHJpbmcoNCksXG4gIGpzdGZMYW5nU3lzOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBKc3RmTGFuZ1N5cylcbn0pO1xuXG5sZXQgSnN0ZlNjcmlwdCA9IG5ldyByLlN0cnVjdCh7XG4gIGV4dGVuZGVyR2x5cGhzOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBuZXcgci5BcnJheShyLnVpbnQxNiwgci51aW50MTYpKSwgLy8gYXJyYXkgb2YgZ2x5cGhzIHRvIGV4dGVuZCBsaW5lIGxlbmd0aFxuICBkZWZhdWx0TGFuZ1N5czogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkxhbmdTeXMpLFxuICBsYW5nU3lzQ291bnQ6ICAgci51aW50MTYsXG4gIGxhbmdTeXNSZWNvcmRzOiBuZXcgci5BcnJheShKc3RmTGFuZ1N5c1JlY29yZCwgJ2xhbmdTeXNDb3VudCcpXG59KTtcblxubGV0IEpzdGZTY3JpcHRSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgIG5ldyByLlN0cmluZyg0KSxcbiAgc2NyaXB0OiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBKc3RmU2NyaXB0LCB7dHlwZTogJ3BhcmVudCd9KVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246ICAgICByLnVpbnQzMiwgIC8vIHNob3VsZCBiZSAweDAwMDEwMDAwXG4gIHNjcmlwdENvdW50OiByLnVpbnQxNixcbiAgc2NyaXB0TGlzdDogIG5ldyByLkFycmF5KEpzdGZTY3JpcHRSZWNvcmQsICdzY3JpcHRDb3VudCcpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7IHJlc29sdmVMZW5ndGggfSBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBJdGVtVmFyaWF0aW9uU3RvcmUgfSBmcm9tICcuL3ZhcmlhdGlvbnMnO1xuXG4vLyBUT0RPOiBhZGQgdGhpcyB0byByZXN0cnVjdHVyZVxuY2xhc3MgVmFyaWFibGVTaXplTnVtYmVyIHtcbiAgY29uc3RydWN0b3Ioc2l6ZSkge1xuICAgIHRoaXMuX3NpemUgPSBzaXplO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgc3dpdGNoICh0aGlzLnNpemUoMCwgcGFyZW50KSkge1xuICAgICAgY2FzZSAxOiByZXR1cm4gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgY2FzZSAyOiByZXR1cm4gc3RyZWFtLnJlYWRVSW50MTZCRSgpO1xuICAgICAgY2FzZSAzOiByZXR1cm4gc3RyZWFtLnJlYWRVSW50MjRCRSgpO1xuICAgICAgY2FzZSA0OiByZXR1cm4gc3RyZWFtLnJlYWRVSW50MzJCRSgpO1xuICAgIH1cbiAgfVxuXG4gIHNpemUodmFsLCBwYXJlbnQpIHtcbiAgICByZXR1cm4gcmVzb2x2ZUxlbmd0aCh0aGlzLl9zaXplLCBudWxsLCBwYXJlbnQpO1xuICB9XG59XG5cbmxldCBNYXBEYXRhRW50cnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICBlbnRyeTogbmV3IFZhcmlhYmxlU2l6ZU51bWJlcih0ID0+ICgodC5wYXJlbnQuZW50cnlGb3JtYXQgJiAweDAwMzApID4+IDQpICsgMSksXG4gIG91dGVySW5kZXg6IHQgPT4gdC5lbnRyeSA+PiAoKHQucGFyZW50LmVudHJ5Rm9ybWF0ICYgMHgwMDBGKSArIDEpLFxuICBpbm5lckluZGV4OiB0ID0+IHQuZW50cnkgJiAoKDEgPDwgKCh0LnBhcmVudC5lbnRyeUZvcm1hdCAmIDB4MDAwRikgKyAxKSkgLSAxKVxufSk7XG5cbmxldCBEZWx0YVNldEluZGV4TWFwID0gbmV3IHIuU3RydWN0KHtcbiAgZW50cnlGb3JtYXQ6IHIudWludDE2LFxuICBtYXBDb3VudDogci51aW50MTYsXG4gIG1hcERhdGE6IG5ldyByLkFycmF5KE1hcERhdGFFbnRyeSwgJ21hcENvdW50Jylcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICBtYWpvclZlcnNpb246IHIudWludDE2LFxuICBtaW5vclZlcnNpb246IHIudWludDE2LFxuICBpdGVtVmFyaWF0aW9uU3RvcmU6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIEl0ZW1WYXJpYXRpb25TdG9yZSksXG4gIGFkdmFuY2VXaWR0aE1hcHBpbmc6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIERlbHRhU2V0SW5kZXhNYXApLFxuICBMU0JNYXBwaW5nOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBEZWx0YVNldEluZGV4TWFwKSxcbiAgUlNCTWFwcGluZzogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgRGVsdGFTZXRJbmRleE1hcClcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgU2lnbmF0dXJlID0gbmV3IHIuU3RydWN0KHtcbiAgZm9ybWF0OiByLnVpbnQzMixcbiAgbGVuZ3RoOiByLnVpbnQzMixcbiAgb2Zmc2V0OiByLnVpbnQzMlxufSk7XG5cbmxldCBTaWduYXR1cmVCbG9jayA9IG5ldyByLlN0cnVjdCh7XG4gIHJlc2VydmVkOiAgICAgICBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiwgMiksXG4gIGNiU2lnbmF0dXJlOiAgICByLnVpbnQzMiwgIC8vIExlbmd0aCAoaW4gYnl0ZXMpIG9mIHRoZSBQS0NTIzcgcGFja2V0IGluIHBiU2lnbmF0dXJlXG4gIHNpZ25hdHVyZTogICAgICBuZXcgci5CdWZmZXIoJ2NiU2lnbmF0dXJlJylcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB1bFZlcnNpb246ICAgICAgIHIudWludDMyLCAgLy8gVmVyc2lvbiBudW1iZXIgb2YgdGhlIERTSUcgdGFibGUgKDB4MDAwMDAwMDEpXG4gIHVzTnVtU2lnczogICAgICAgci51aW50MTYsICAvLyBOdW1iZXIgb2Ygc2lnbmF0dXJlcyBpbiB0aGUgdGFibGVcbiAgdXNGbGFnOiAgICAgICAgICByLnVpbnQxNiwgIC8vIFBlcm1pc3Npb24gZmxhZ3NcbiAgc2lnbmF0dXJlczogICAgICBuZXcgci5BcnJheShTaWduYXR1cmUsICd1c051bVNpZ3MnKSxcbiAgc2lnbmF0dXJlQmxvY2tzOiBuZXcgci5BcnJheShTaWduYXR1cmVCbG9jaywgJ3VzTnVtU2lncycpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IEdhc3BSYW5nZSA9IG5ldyByLlN0cnVjdCh7XG4gIHJhbmdlTWF4UFBFTTogICAgICAgci51aW50MTYsICAgICAgICAgICAgICAgICAgLy8gVXBwZXIgbGltaXQgb2YgcmFuZ2UsIGluIHBwZW1cbiAgcmFuZ2VHYXNwQmVoYXZpb3I6ICBuZXcgci5CaXRmaWVsZChyLnVpbnQxNiwgWyAvLyBGbGFncyBkZXNjcmliaW5nIGRlc2lyZWQgcmFzdGVyaXplciBiZWhhdmlvclxuICAgICdncmF5c2NhbGUnLCAnZ3JpZGZpdCcsXG4gICAgJ3N5bW1ldHJpY1Ntb290aGluZycsICdzeW1tZXRyaWNHcmlkZml0JyAgICAgLy8gb25seSBpbiB2ZXJzaW9uIDEsIGZvciBDbGVhclR5cGVcbiAgXSlcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICByLnVpbnQxNiwgIC8vIHNldCB0byAwXG4gIG51bVJhbmdlczogIHIudWludDE2LFxuICBnYXNwUmFuZ2VzOiBuZXcgci5BcnJheShHYXNwUmFuZ2UsICdudW1SYW5nZXMnKSAvLyBTb3J0ZWQgYnkgcHBlbVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBEZXZpY2VSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBwaXhlbFNpemU6ICAgICAgci51aW50OCxcbiAgbWF4aW11bVdpZHRoOiAgIHIudWludDgsXG4gIHdpZHRoczogICAgICAgICBuZXcgci5BcnJheShyLnVpbnQ4LCB0ID0+IHQucGFyZW50LnBhcmVudC5tYXhwLm51bUdseXBocylcbn0pO1xuXG4vLyBUaGUgSG9yaXpvbnRhbCBEZXZpY2UgTWV0cmljcyB0YWJsZSBzdG9yZXMgaW50ZWdlciBhZHZhbmNlIHdpZHRocyBzY2FsZWQgdG8gcGFydGljdWxhciBwaXhlbCBzaXplc1xuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogICAgICAgICAgICByLnVpbnQxNixcbiAgbnVtUmVjb3JkczogICAgICAgICByLmludDE2LFxuICBzaXplRGV2aWNlUmVjb3JkOiAgIHIuaW50MzIsXG4gIHJlY29yZHM6ICAgICAgICAgICAgbmV3IHIuQXJyYXkoRGV2aWNlUmVjb3JkLCAnbnVtUmVjb3JkcycpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IEtlcm5QYWlyID0gbmV3IHIuU3RydWN0KHtcbiAgbGVmdDogICByLnVpbnQxNixcbiAgcmlnaHQ6ICByLnVpbnQxNixcbiAgdmFsdWU6ICByLmludDE2XG59KTtcblxubGV0IENsYXNzVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmaXJzdEdseXBoOiByLnVpbnQxNixcbiAgbkdseXBoczogci51aW50MTYsXG4gIG9mZnNldHM6IG5ldyByLkFycmF5KHIudWludDE2LCAnbkdseXBocycpLFxuICBtYXg6IHQgPT4gdC5vZmZzZXRzLmxlbmd0aCAmJiBNYXRoLm1heC5hcHBseShNYXRoLCB0Lm9mZnNldHMpXG59KTtcblxubGV0IEtlcm4yQXJyYXkgPSBuZXcgci5TdHJ1Y3Qoe1xuICBvZmY6IHQgPT4gdC5fc3RhcnRPZmZzZXQgLSB0LnBhcmVudC5wYXJlbnQuX3N0YXJ0T2Zmc2V0LFxuICBsZW46IHQgPT4gKCgodC5wYXJlbnQubGVmdFRhYmxlLm1heCAtIHQub2ZmKSAvIHQucGFyZW50LnJvd1dpZHRoKSArIDEpICogKHQucGFyZW50LnJvd1dpZHRoIC8gMiksXG4gIHZhbHVlczogbmV3IHIuTGF6eUFycmF5KHIuaW50MTYsICdsZW4nKVxufSk7XG5cbmxldCBLZXJuU3VidGFibGUgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3QoJ2Zvcm1hdCcsIHtcbiAgMDoge1xuICAgIG5QYWlyczogICAgICAgICByLnVpbnQxNixcbiAgICBzZWFyY2hSYW5nZTogICAgci51aW50MTYsXG4gICAgZW50cnlTZWxlY3RvcjogIHIudWludDE2LFxuICAgIHJhbmdlU2hpZnQ6ICAgICByLnVpbnQxNixcbiAgICBwYWlyczogICAgICAgICAgbmV3IHIuQXJyYXkoS2VyblBhaXIsICduUGFpcnMnKVxuICB9LFxuXG4gIDI6IHtcbiAgICByb3dXaWR0aDogICByLnVpbnQxNixcbiAgICBsZWZ0VGFibGU6ICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc1RhYmxlLCB7dHlwZTogJ3BhcmVudCd9KSxcbiAgICByaWdodFRhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc1RhYmxlLCB7dHlwZTogJ3BhcmVudCd9KSxcbiAgICBhcnJheTogICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBLZXJuMkFycmF5LCB7dHlwZTogJ3BhcmVudCd9KVxuICB9LFxuXG4gIDM6IHtcbiAgICBnbHlwaENvdW50OiAgICAgICByLnVpbnQxNixcbiAgICBrZXJuVmFsdWVDb3VudDogICByLnVpbnQ4LFxuICAgIGxlZnRDbGFzc0NvdW50OiAgIHIudWludDgsXG4gICAgcmlnaHRDbGFzc0NvdW50OiAgci51aW50OCxcbiAgICBmbGFnczogICAgICAgICAgICByLnVpbnQ4LFxuICAgIGtlcm5WYWx1ZTogICAgICAgIG5ldyByLkFycmF5KHIuaW50MTYsICdrZXJuVmFsdWVDb3VudCcpLFxuICAgIGxlZnRDbGFzczogICAgICAgIG5ldyByLkFycmF5KHIudWludDgsICdnbHlwaENvdW50JyksXG4gICAgcmlnaHRDbGFzczogICAgICAgbmV3IHIuQXJyYXkoci51aW50OCwgJ2dseXBoQ291bnQnKSxcbiAgICBrZXJuSW5kZXg6ICAgICAgICBuZXcgci5BcnJheShyLnVpbnQ4LCB0ID0+IHQubGVmdENsYXNzQ291bnQgKiB0LnJpZ2h0Q2xhc3NDb3VudClcbiAgfVxufSk7XG5cbmxldCBLZXJuVGFibGUgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3QoJ3ZlcnNpb24nLCB7XG4gIDA6IHsgLy8gTWljcm9zb2Z0IHVzZXMgdGhpcyBmb3JtYXRcbiAgICBzdWJWZXJzaW9uOiByLnVpbnQxNiwgIC8vIE1pY3Jvc29mdCBoYXMgYW4gZXh0cmEgc3ViLXRhYmxlIHZlcnNpb24gbnVtYmVyXG4gICAgbGVuZ3RoOiAgICAgci51aW50MTYsICAvLyBMZW5ndGggb2YgdGhlIHN1YnRhYmxlLCBpbiBieXRlc1xuICAgIGZvcm1hdDogICAgIHIudWludDgsICAgLy8gRm9ybWF0IG9mIHN1YnRhYmxlXG4gICAgY292ZXJhZ2U6ICAgbmV3IHIuQml0ZmllbGQoci51aW50OCwgW1xuICAgICAgJ2hvcml6b250YWwnLCAgICAvLyAxIGlmIHRhYmxlIGhhcyBob3Jpem9udGFsIGRhdGEsIDAgaWYgdmVydGljYWxcbiAgICAgICdtaW5pbXVtJywgICAgICAgLy8gSWYgc2V0IHRvIDEsIHRoZSB0YWJsZSBoYXMgbWluaW11bSB2YWx1ZXMuIElmIHNldCB0byAwLCB0aGUgdGFibGUgaGFzIGtlcm5pbmcgdmFsdWVzLlxuICAgICAgJ2Nyb3NzU3RyZWFtJywgICAvLyBJZiBzZXQgdG8gMSwga2VybmluZyBpcyBwZXJwZW5kaWN1bGFyIHRvIHRoZSBmbG93IG9mIHRoZSB0ZXh0XG4gICAgICAnb3ZlcnJpZGUnICAgICAgLy8gSWYgc2V0IHRvIDEgdGhlIHZhbHVlIGluIHRoaXMgdGFibGUgcmVwbGFjZXMgdGhlIGFjY3VtdWxhdGVkIHZhbHVlXG4gICAgXSksXG4gICAgc3VidGFibGU6ICAgS2VyblN1YnRhYmxlLFxuICAgIHBhZGRpbmc6IG5ldyByLlJlc2VydmVkKHIudWludDgsIHQgPT4gdC5sZW5ndGggLSB0Ll9jdXJyZW50T2Zmc2V0KVxuICB9LFxuICAxOiB7IC8vIEFwcGxlIHVzZXMgdGhpcyBmb3JtYXRcbiAgICBsZW5ndGg6ICAgICByLnVpbnQzMixcbiAgICBjb3ZlcmFnZTogICBuZXcgci5CaXRmaWVsZChyLnVpbnQ4LCBbXG4gICAgICBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLFxuICAgICAgJ3ZhcmlhdGlvbicsICAgICAvLyBTZXQgaWYgdGFibGUgaGFzIHZhcmlhdGlvbiBrZXJuaW5nIHZhbHVlc1xuICAgICAgJ2Nyb3NzU3RyZWFtJywgICAvLyBTZXQgaWYgdGFibGUgaGFzIGNyb3NzLXN0cmVhbSBrZXJuaW5nIHZhbHVlc1xuICAgICAgJ3ZlcnRpY2FsJyAgICAgIC8vIFNldCBpZiB0YWJsZSBoYXMgdmVydGljYWwga2VybmluZyB2YWx1ZXNcbiAgICBdKSxcbiAgICBmb3JtYXQ6ICAgICByLnVpbnQ4LFxuICAgIHR1cGxlSW5kZXg6IHIudWludDE2LFxuICAgIHN1YnRhYmxlOiAgIEtlcm5TdWJ0YWJsZSxcbiAgICBwYWRkaW5nOiBuZXcgci5SZXNlcnZlZChyLnVpbnQ4LCB0ID0+IHQubGVuZ3RoIC0gdC5fY3VycmVudE9mZnNldClcbiAgfVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAwOiB7IC8vIE1pY3Jvc29mdCBWZXJzaW9uXG4gICAgblRhYmxlczogICAgci51aW50MTYsXG4gICAgdGFibGVzOiAgICAgbmV3IHIuQXJyYXkoS2VyblRhYmxlLCAnblRhYmxlcycpXG4gIH0sXG5cbiAgMTogeyAvLyBBcHBsZSBWZXJzaW9uXG4gICAgcmVzZXJ2ZWQ6ICAgbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLCAvLyB0aGUgb3RoZXIgaGFsZiBvZiB0aGUgdmVyc2lvbiBudW1iZXJcbiAgICBuVGFibGVzOiAgICByLnVpbnQzMixcbiAgICB0YWJsZXM6ICAgICBuZXcgci5BcnJheShLZXJuVGFibGUsICduVGFibGVzJylcbiAgfVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIExpbmVhciBUaHJlc2hvbGQgdGFibGVcbi8vIFJlY29yZHMgdGhlIHBwZW0gZm9yIGVhY2ggZ2x5cGggYXQgd2hpY2ggdGhlIHNjYWxpbmcgYmVjb21lcyBsaW5lYXIgYWdhaW4sXG4vLyBkZXNwaXRlIGluc3RydWN0aW9ucyBlZmZlY3RpbmcgdGhlIGFkdmFuY2Ugd2lkdGhcbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246ICAgIHIudWludDE2LFxuICBudW1HbHlwaHM6ICByLnVpbnQxNixcbiAgeVBlbHM6ICAgICAgbmV3IHIuQXJyYXkoci51aW50OCwgJ251bUdseXBocycpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gUENMIDUgVGFibGVcbi8vIE5PVEU6IFRoZSBQQ0xUIHRhYmxlIGlzIHN0cm9uZ2x5IGRpc2NvdXJhZ2VkIGZvciBPcGVuVHlwZSBmb250cyB3aXRoIFRydWVUeXBlIG91dGxpbmVzXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgICAgICAgICAgci51aW50MTYsXG4gIGZvbnROdW1iZXI6ICAgICAgICAgICByLnVpbnQzMixcbiAgcGl0Y2g6ICAgICAgICAgICAgICAgIHIudWludDE2LFxuICB4SGVpZ2h0OiAgICAgICAgICAgICAgci51aW50MTYsXG4gIHN0eWxlOiAgICAgICAgICAgICAgICByLnVpbnQxNixcbiAgdHlwZUZhbWlseTogICAgICAgICAgIHIudWludDE2LFxuICBjYXBIZWlnaHQ6ICAgICAgICAgICAgci51aW50MTYsXG4gIHN5bWJvbFNldDogICAgICAgICAgICByLnVpbnQxNixcbiAgdHlwZWZhY2U6ICAgICAgICAgICAgIG5ldyByLlN0cmluZygxNiksXG4gIGNoYXJhY3RlckNvbXBsZW1lbnQ6ICBuZXcgci5TdHJpbmcoOCksXG4gIGZpbGVOYW1lOiAgICAgICAgICAgICBuZXcgci5TdHJpbmcoNiksXG4gIHN0cm9rZVdlaWdodDogICAgICAgICBuZXcgci5TdHJpbmcoMSksXG4gIHdpZHRoVHlwZTogICAgICAgICAgICBuZXcgci5TdHJpbmcoMSksXG4gIHNlcmlmU3R5bGU6ICAgICAgICAgICByLnVpbnQ4LFxuICByZXNlcnZlZDogICAgICAgICAgICAgbmV3IHIuUmVzZXJ2ZWQoci51aW50OClcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBWRE1YIHRhYmxlcyBjb250YWluIGFzY2VuZGVyL2Rlc2NlbmRlciBvdmVycmlkZXMgZm9yIGNlcnRhaW4gKHVzdWFsbHkgc21hbGwpXG4vLyBzaXplcy4gVGhpcyBpcyBuZWVkZWQgaW4gb3JkZXIgdG8gbWF0Y2ggZm9udCBtZXRyaWNzIG9uIFdpbmRvd3MuXG5cbmxldCBSYXRpbyA9IG5ldyByLlN0cnVjdCh7XG4gIGJDaGFyU2V0OiAgICAgICByLnVpbnQ4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2hhcmFjdGVyIHNldFxuICB4UmF0aW86ICAgICAgICAgci51aW50OCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFZhbHVlIHRvIHVzZSBmb3IgeC1SYXRpb1xuICB5U3RhcnRSYXRpbzogICAgci51aW50OCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN0YXJ0aW5nIHktUmF0aW8gdmFsdWVcbiAgeUVuZFJhdGlvOiAgICAgIHIudWludDggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBFbmRpbmcgeS1SYXRpbyB2YWx1ZVxufSk7XG5cbmxldCB2VGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICB5UGVsSGVpZ2h0OiAgICAgci51aW50MTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHlQZWxIZWlnaHQgdG8gd2hpY2ggdmFsdWVzIGFwcGx5XG4gIHlNYXg6ICAgICAgICAgICByLmludDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWF4aW11bSB2YWx1ZSAoaW4gcGVscykgZm9yIHRoaXMgeVBlbEhlaWdodFxuICB5TWluOiAgICAgICAgICAgci5pbnQxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1pbmltdW0gdmFsdWUgKGluIHBlbHMpIGZvciB0aGlzIHlQZWxIZWlnaHRcbn0pO1xuXG5sZXQgVmRteEdyb3VwID0gbmV3IHIuU3RydWN0KHtcbiAgcmVjczogICAgICAgICAgIHIudWludDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBOdW1iZXIgb2YgaGVpZ2h0IHJlY29yZHMgaW4gdGhpcyBncm91cFxuICBzdGFydHN6OiAgICAgICAgci51aW50OCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN0YXJ0aW5nIHlQZWxIZWlnaHRcbiAgZW5kc3o6ICAgICAgICAgIHIudWludDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBFbmRpbmcgeVBlbEhlaWdodFxuICBlbnRyaWVzOiAgICAgICAgbmV3IHIuQXJyYXkodlRhYmxlLCAncmVjcycpICAgICAgICAgIC8vIFRoZSBWRE1YIHJlY29yZHNcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgICAgci51aW50MTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFZlcnNpb24gbnVtYmVyICgwIG9yIDEpXG4gIG51bVJlY3M6ICAgICAgICByLnVpbnQxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTnVtYmVyIG9mIFZETVggZ3JvdXBzIHByZXNlbnRcbiAgbnVtUmF0aW9zOiAgICAgIHIudWludDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBOdW1iZXIgb2YgYXNwZWN0IHJhdGlvIGdyb3VwaW5nc1xuICByYXRpb1JhbmdlczogICAgbmV3IHIuQXJyYXkoUmF0aW8sICdudW1SYXRpb3MnKSwgICAgIC8vIFJhdGlvIHJhbmdlc1xuICBvZmZzZXRzOiAgICAgICAgbmV3IHIuQXJyYXkoci51aW50MTYsICdudW1SYXRpb3MnKSwgIC8vIE9mZnNldCB0byB0aGUgVkRNWCBncm91cCBmb3IgdGhpcyByYXRpbyByYW5nZVxuICBncm91cHM6ICAgICAgICAgbmV3IHIuQXJyYXkoVmRteEdyb3VwLCAnbnVtUmVjcycpICAgIC8vIFRoZSBhY3R1YWwgVkRNWCBncm91cGluZ3Ncbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBWZXJ0aWNhbCBIZWFkZXIgVGFibGVcbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246ICAgICAgICAgICAgICAgIHIudWludDE2LCAgLy8gVmVyc2lvbiBudW1iZXIgb2YgdGhlIFZlcnRpY2FsIEhlYWRlciBUYWJsZVxuICBhc2NlbnQ6ICAgICAgICAgICAgICAgICByLmludDE2LCAgIC8vIFRoZSB2ZXJ0aWNhbCB0eXBvZ3JhcGhpYyBhc2NlbmRlciBmb3IgdGhpcyBmb250XG4gIGRlc2NlbnQ6ICAgICAgICAgICAgICAgIHIuaW50MTYsICAgLy8gVGhlIHZlcnRpY2FsIHR5cG9ncmFwaGljIGRlc2NlbmRlciBmb3IgdGhpcyBmb250XG4gIGxpbmVHYXA6ICAgICAgICAgICAgICAgIHIuaW50MTYsICAgLy8gVGhlIHZlcnRpY2FsIHR5cG9ncmFwaGljIGxpbmUgZ2FwIGZvciB0aGlzIGZvbnRcbiAgYWR2YW5jZUhlaWdodE1heDogICAgICAgci5pbnQxNiwgICAvLyBUaGUgbWF4aW11bSBhZHZhbmNlIGhlaWdodCBtZWFzdXJlbWVudCBmb3VuZCBpbiB0aGUgZm9udFxuICBtaW5Ub3BTaWRlQmVhcmluZzogICAgICByLmludDE2LCAgIC8vIFRoZSBtaW5pbXVtIHRvcCBzaWRlIGJlYXJpbmcgbWVhc3VyZW1lbnQgZm91bmQgaW4gdGhlIGZvbnRcbiAgbWluQm90dG9tU2lkZUJlYXJpbmc6ICAgci5pbnQxNiwgICAvLyBUaGUgbWluaW11bSBib3R0b20gc2lkZSBiZWFyaW5nIG1lYXN1cmVtZW50IGZvdW5kIGluIHRoZSBmb250XG4gIHlNYXhFeHRlbnQ6ICAgICAgICAgICAgIHIuaW50MTYsXG4gIGNhcmV0U2xvcGVSaXNlOiAgICAgICAgIHIuaW50MTYsICAgLy8gQ2FyZXQgc2xvcGUgKHJpc2UvcnVuKVxuICBjYXJldFNsb3BlUnVuOiAgICAgICAgICByLmludDE2LFxuICBjYXJldE9mZnNldDogICAgICAgICAgICByLmludDE2LCAgIC8vIFNldCB2YWx1ZSBlcXVhbCB0byAwIGZvciBub25zbGFudGVkIGZvbnRzXG4gIHJlc2VydmVkOiAgICAgICAgICAgICAgIG5ldyByLlJlc2VydmVkKHIuaW50MTYsIDQpLFxuICBtZXRyaWNEYXRhRm9ybWF0OiAgICAgICByLmludDE2LCAgIC8vIFNldCB0byAwXG4gIG51bWJlck9mTWV0cmljczogICAgICAgIHIudWludDE2ICAgLy8gTnVtYmVyIG9mIGFkdmFuY2UgaGVpZ2h0cyBpbiB0aGUgVmVydGljYWwgTWV0cmljcyB0YWJsZVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBWbXR4RW50cnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICBhZHZhbmNlOiByLnVpbnQxNiwgIC8vIFRoZSBhZHZhbmNlIGhlaWdodCBvZiB0aGUgZ2x5cGhcbiAgYmVhcmluZzogci5pbnQxNiAgICAvLyBUaGUgdG9wIHNpZGViZWFyaW5nIG9mIHRoZSBnbHlwaFxufSk7XG5cbi8vIFZlcnRpY2FsIE1ldHJpY3MgVGFibGVcbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIG1ldHJpY3M6ICBuZXcgci5MYXp5QXJyYXkoVm10eEVudHJ5LCB0ID0+IHQucGFyZW50LnZoZWEubnVtYmVyT2ZNZXRyaWNzKSxcbiAgYmVhcmluZ3M6IG5ldyByLkxhenlBcnJheShyLmludDE2LCB0ID0+IHQucGFyZW50Lm1heHAubnVtR2x5cGhzIC0gdC5wYXJlbnQudmhlYS5udW1iZXJPZk1ldHJpY3MpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IHNob3J0RnJhYyA9IG5ldyByLkZpeGVkKDE2LCAnQkUnLCAxNCk7XG5cbmxldCBDb3JyZXNwb25kZW5jZSA9IG5ldyByLlN0cnVjdCh7XG4gIGZyb21Db29yZDogc2hvcnRGcmFjLFxuICB0b0Nvb3JkOiBzaG9ydEZyYWNcbn0pO1xuXG5sZXQgU2VnbWVudCA9IG5ldyByLlN0cnVjdCh7XG4gIHBhaXJDb3VudDogci51aW50MTYsXG4gIGNvcnJlc3BvbmRlbmNlOiBuZXcgci5BcnJheShDb3JyZXNwb25kZW5jZSwgJ3BhaXJDb3VudCcpXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogci5maXhlZDMyLFxuICBheGlzQ291bnQ6IHIudWludDMyLFxuICBzZWdtZW50OiBuZXcgci5BcnJheShTZWdtZW50LCAnYXhpc0NvdW50Jylcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgTG9va3VwVGFibGUgfSBmcm9tICcuL2FhdCc7XG5cbmxldCBCc2xuU3VidGFibGUgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3QoJ2Zvcm1hdCcsIHtcbiAgMDogeyAvLyBEaXN0YW5jZS1iYXNlZCwgbm8gbWFwcGluZ1xuICAgIGRlbHRhczogbmV3IHIuQXJyYXkoci5pbnQxNiwgMzIpXG4gIH0sXG5cbiAgMTogeyAvLyBEaXN0YW5jZS1iYXNlZCwgd2l0aCBtYXBwaW5nXG4gICAgZGVsdGFzOiBuZXcgci5BcnJheShyLmludDE2LCAzMiksXG4gICAgbWFwcGluZ0RhdGE6IG5ldyBMb29rdXBUYWJsZShyLnVpbnQxNilcbiAgfSxcblxuICAyOiB7IC8vIENvbnRyb2wgcG9pbnQtYmFzZWQsIG5vIG1hcHBpbmdcbiAgICBzdGFuZGFyZEdseXBoOiByLnVpbnQxNixcbiAgICBjb250cm9sUG9pbnRzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgMzIpXG4gIH0sXG5cbiAgMzogeyAvLyBDb250cm9sIHBvaW50LWJhc2VkLCB3aXRoIG1hcHBpbmdcbiAgICBzdGFuZGFyZEdseXBoOiByLnVpbnQxNixcbiAgICBjb250cm9sUG9pbnRzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgMzIpLFxuICAgIG1hcHBpbmdEYXRhOiBuZXcgTG9va3VwVGFibGUoci51aW50MTYpXG4gIH1cbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiByLmZpeGVkMzIsXG4gIGZvcm1hdDogci51aW50MTYsXG4gIGRlZmF1bHRCYXNlbGluZTogci51aW50MTYsXG4gIHN1YnRhYmxlOiBCc2xuU3VidGFibGVcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5jbGFzcyBVbmJvdW5kZWRBcnJheUFjY2Vzc29yIHtcbiAgY29uc3RydWN0b3IodHlwZSwgc3RyZWFtLCBwYXJlbnQpIHtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuc3RyZWFtID0gc3RyZWFtO1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMuYmFzZSA9IHRoaXMuc3RyZWFtLnBvcztcbiAgICB0aGlzLl9pdGVtcyA9IFtdO1xuICB9XG5cbiAgZ2V0SXRlbShpbmRleCkge1xuICAgIGlmICh0aGlzLl9pdGVtc1tpbmRleF0gPT0gbnVsbCkge1xuICAgICAgbGV0IHBvcyA9IHRoaXMuc3RyZWFtLnBvcztcbiAgICAgIHRoaXMuc3RyZWFtLnBvcyA9IHRoaXMuYmFzZSArIHRoaXMudHlwZS5zaXplKG51bGwsIHRoaXMucGFyZW50KSAqIGluZGV4O1xuICAgICAgdGhpcy5faXRlbXNbaW5kZXhdID0gdGhpcy50eXBlLmRlY29kZSh0aGlzLnN0cmVhbSwgdGhpcy5wYXJlbnQpO1xuICAgICAgdGhpcy5zdHJlYW0ucG9zID0gcG9zO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9pdGVtc1tpbmRleF07XG4gIH1cblxuICBpbnNwZWN0KCkge1xuICAgIHJldHVybiBgW1VuYm91bmRlZEFycmF5ICR7dGhpcy50eXBlLmNvbnN0cnVjdG9yLm5hbWV9XWA7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFVuYm91bmRlZEFycmF5IGV4dGVuZHMgci5BcnJheSB7XG4gIGNvbnN0cnVjdG9yKHR5cGUpIHtcbiAgICBzdXBlcih0eXBlLCAwKTtcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIHJldHVybiBuZXcgVW5ib3VuZGVkQXJyYXlBY2Nlc3Nvcih0aGlzLnR5cGUsIHN0cmVhbSwgcGFyZW50KTtcbiAgfVxufVxuXG5leHBvcnQgbGV0IExvb2t1cFRhYmxlID0gZnVuY3Rpb24oVmFsdWVUeXBlID0gci51aW50MTYpIHtcbiAgLy8gSGVscGVyIGNsYXNzIHRoYXQgbWFrZXMgaW50ZXJuYWwgc3RydWN0dXJlcyBpbnZpc2libGUgdG8gcG9pbnRlcnNcbiAgY2xhc3MgU2hhZG93IHtcbiAgICBjb25zdHJ1Y3Rvcih0eXBlKSB7XG4gICAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIH1cblxuICAgIGRlY29kZShzdHJlYW0sIGN0eCkge1xuICAgICAgY3R4ID0gY3R4LnBhcmVudC5wYXJlbnQ7XG4gICAgICByZXR1cm4gdGhpcy50eXBlLmRlY29kZShzdHJlYW0sIGN0eCk7XG4gICAgfVxuXG4gICAgc2l6ZSh2YWwsIGN0eCkge1xuICAgICAgY3R4ID0gY3R4LnBhcmVudC5wYXJlbnQ7XG4gICAgICByZXR1cm4gdGhpcy50eXBlLnNpemUodmFsLCBjdHgpO1xuICAgIH1cblxuICAgIGVuY29kZShzdHJlYW0sIHZhbCwgY3R4KSB7XG4gICAgICBjdHggPSBjdHgucGFyZW50LnBhcmVudDtcbiAgICAgIHJldHVybiB0aGlzLnR5cGUuZW5jb2RlKHN0cmVhbSwgdmFsLCBjdHgpO1xuICAgIH1cbiAgfVxuXG4gIFZhbHVlVHlwZSA9IG5ldyBTaGFkb3coVmFsdWVUeXBlKTtcblxuICBsZXQgQmluYXJ5U2VhcmNoSGVhZGVyID0gbmV3IHIuU3RydWN0KHtcbiAgICB1bml0U2l6ZTogci51aW50MTYsXG4gICAgblVuaXRzOiByLnVpbnQxNixcbiAgICBzZWFyY2hSYW5nZTogci51aW50MTYsXG4gICAgZW50cnlTZWxlY3Rvcjogci51aW50MTYsXG4gICAgcmFuZ2VTaGlmdDogci51aW50MTZcbiAgfSk7XG5cbiAgbGV0IExvb2t1cFNlZ21lbnRTaW5nbGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICAgIGxhc3RHbHlwaDogci51aW50MTYsXG4gICAgZmlyc3RHbHlwaDogci51aW50MTYsXG4gICAgdmFsdWU6IFZhbHVlVHlwZVxuICB9KTtcblxuICBsZXQgTG9va3VwU2VnbWVudEFycmF5ID0gbmV3IHIuU3RydWN0KHtcbiAgICBsYXN0R2x5cGg6IHIudWludDE2LFxuICAgIGZpcnN0R2x5cGg6IHIudWludDE2LFxuICAgIHZhbHVlczogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgbmV3IHIuQXJyYXkoVmFsdWVUeXBlLCB0ID0+IHQubGFzdEdseXBoIC0gdC5maXJzdEdseXBoICsgMSksIHt0eXBlOiAncGFyZW50J30pXG4gIH0pO1xuXG4gIGxldCBMb29rdXBTaW5nbGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICAgIGdseXBoOiByLnVpbnQxNixcbiAgICB2YWx1ZTogVmFsdWVUeXBlXG4gIH0pO1xuXG4gIHJldHVybiBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgICAwOiB7XG4gICAgICB2YWx1ZXM6IG5ldyBVbmJvdW5kZWRBcnJheShWYWx1ZVR5cGUpIC8vIGxlbmd0aCA9PSBudW1iZXIgb2YgZ2x5cGhzIG1heWJlP1xuICAgIH0sXG4gICAgMjoge1xuICAgICAgYmluYXJ5U2VhcmNoSGVhZGVyOiBCaW5hcnlTZWFyY2hIZWFkZXIsXG4gICAgICBzZWdtZW50czogbmV3IHIuQXJyYXkoTG9va3VwU2VnbWVudFNpbmdsZSwgdCA9PiB0LmJpbmFyeVNlYXJjaEhlYWRlci5uVW5pdHMpXG4gICAgfSxcbiAgICA0OiB7XG4gICAgICBiaW5hcnlTZWFyY2hIZWFkZXI6IEJpbmFyeVNlYXJjaEhlYWRlcixcbiAgICAgIHNlZ21lbnRzOiBuZXcgci5BcnJheShMb29rdXBTZWdtZW50QXJyYXksIHQgPT4gdC5iaW5hcnlTZWFyY2hIZWFkZXIublVuaXRzKVxuICAgIH0sXG4gICAgNjoge1xuICAgICAgYmluYXJ5U2VhcmNoSGVhZGVyOiBCaW5hcnlTZWFyY2hIZWFkZXIsXG4gICAgICBzZWdtZW50czogbmV3IHIuQXJyYXkoTG9va3VwU2luZ2xlLCB0ID0+IHQuYmluYXJ5U2VhcmNoSGVhZGVyLm5Vbml0cylcbiAgICB9LFxuICAgIDg6IHtcbiAgICAgIGZpcnN0R2x5cGg6IHIudWludDE2LFxuICAgICAgY291bnQ6IHIudWludDE2LFxuICAgICAgdmFsdWVzOiBuZXcgci5BcnJheShWYWx1ZVR5cGUsICdjb3VudCcpXG4gICAgfVxuICB9KTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBTdGF0ZVRhYmxlKGVudHJ5RGF0YSA9IHt9LCBsb29rdXBUeXBlID0gci51aW50MTYpIHtcbiAgbGV0IGVudHJ5ID0gT2JqZWN0LmFzc2lnbih7XG4gICAgbmV3U3RhdGU6IHIudWludDE2LFxuICAgIGZsYWdzOiByLnVpbnQxNlxuICB9LCBlbnRyeURhdGEpO1xuXG4gIGxldCBFbnRyeSA9IG5ldyByLlN0cnVjdChlbnRyeSk7XG4gIGxldCBTdGF0ZUFycmF5ID0gbmV3IFVuYm91bmRlZEFycmF5KG5ldyByLkFycmF5KHIudWludDE2LCB0ID0+IHQubkNsYXNzZXMpKTtcblxuICBsZXQgU3RhdGVIZWFkZXIgPSBuZXcgci5TdHJ1Y3Qoe1xuICAgIG5DbGFzc2VzOiByLnVpbnQzMixcbiAgICBjbGFzc1RhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgTG9va3VwVGFibGUobG9va3VwVHlwZSkpLFxuICAgIHN0YXRlQXJyYXk6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIFN0YXRlQXJyYXkpLFxuICAgIGVudHJ5VGFibGU6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyBVbmJvdW5kZWRBcnJheShFbnRyeSkpXG4gIH0pO1xuXG4gIHJldHVybiBTdGF0ZUhlYWRlcjtcbn1cblxuLy8gVGhpcyBpcyB0aGUgb2xkIHZlcnNpb24gb2YgdGhlIFN0YXRlVGFibGUgc3RydWN0dXJlXG5leHBvcnQgZnVuY3Rpb24gU3RhdGVUYWJsZTEoZW50cnlEYXRhID0ge30sIGxvb2t1cFR5cGUgPSByLnVpbnQxNikge1xuICBsZXQgQ2xhc3NMb29rdXBUYWJsZSA9IG5ldyByLlN0cnVjdCh7XG4gICAgdmVyc2lvbigpIHsgcmV0dXJuIDg7IH0sIC8vIHNpbXVsYXRlIExvb2t1cFRhYmxlXG4gICAgZmlyc3RHbHlwaDogci51aW50MTYsXG4gICAgdmFsdWVzOiBuZXcgci5BcnJheShyLnVpbnQ4LCByLnVpbnQxNilcbiAgfSk7XG5cbiAgbGV0IGVudHJ5ID0gT2JqZWN0LmFzc2lnbih7XG4gICAgbmV3U3RhdGVPZmZzZXQ6IHIudWludDE2LFxuICAgIC8vIGNvbnZlcnQgb2Zmc2V0IHRvIHN0YXRlQXJyYXkgaW5kZXhcbiAgICBuZXdTdGF0ZTogdCA9PiAodC5uZXdTdGF0ZU9mZnNldCAtICh0LnBhcmVudC5zdGF0ZUFycmF5LmJhc2UgLSB0LnBhcmVudC5fc3RhcnRPZmZzZXQpKSAvIHQucGFyZW50Lm5DbGFzc2VzLFxuICAgIGZsYWdzOiByLnVpbnQxNlxuICB9LCBlbnRyeURhdGEpO1xuXG4gIGxldCBFbnRyeSA9IG5ldyByLlN0cnVjdChlbnRyeSk7XG4gIGxldCBTdGF0ZUFycmF5ID0gbmV3IFVuYm91bmRlZEFycmF5KG5ldyByLkFycmF5KHIudWludDgsIHQgPT4gdC5uQ2xhc3NlcykpO1xuXG4gIGxldCBTdGF0ZUhlYWRlcjEgPSBuZXcgci5TdHJ1Y3Qoe1xuICAgIG5DbGFzc2VzOiByLnVpbnQxNixcbiAgICBjbGFzc1RhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc0xvb2t1cFRhYmxlKSxcbiAgICBzdGF0ZUFycmF5OiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBTdGF0ZUFycmF5KSxcbiAgICBlbnRyeVRhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBuZXcgVW5ib3VuZGVkQXJyYXkoRW50cnkpKVxuICB9KTtcblxuICByZXR1cm4gU3RhdGVIZWFkZXIxO1xufVxuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgU2V0dGluZyA9IG5ldyByLlN0cnVjdCh7XG4gIHNldHRpbmc6IHIudWludDE2LFxuICBuYW1lSW5kZXg6IHIuaW50MTYsXG4gIG5hbWU6IHQgPT4gdC5wYXJlbnQucGFyZW50LnBhcmVudC5uYW1lLnJlY29yZHMuZm9udEZlYXR1cmVzW3QubmFtZUluZGV4XVxufSk7XG5cbmxldCBGZWF0dXJlTmFtZSA9IG5ldyByLlN0cnVjdCh7XG4gIGZlYXR1cmU6IHIudWludDE2LFxuICBuU2V0dGluZ3M6IHIudWludDE2LFxuICBzZXR0aW5nVGFibGU6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyByLkFycmF5KFNldHRpbmcsICduU2V0dGluZ3MnKSwgeyB0eXBlOiAncGFyZW50JyB9KSxcbiAgZmVhdHVyZUZsYWdzOiBuZXcgci5CaXRmaWVsZChyLnVpbnQ4LCBbXG4gICAgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCxcbiAgICAnaGFzRGVmYXVsdCcsICdleGNsdXNpdmUnXG4gIF0pLFxuICBkZWZhdWx0U2V0dGluZzogci51aW50OCxcbiAgbmFtZUluZGV4OiByLmludDE2LFxuICBuYW1lOiB0ID0+IHQucGFyZW50LnBhcmVudC5uYW1lLnJlY29yZHMuZm9udEZlYXR1cmVzW3QubmFtZUluZGV4XVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIuZml4ZWQzMixcbiAgZmVhdHVyZU5hbWVDb3VudDogci51aW50MTYsXG4gIHJlc2VydmVkMTogbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICByZXNlcnZlZDI6IG5ldyByLlJlc2VydmVkKHIudWludDMyKSxcbiAgZmVhdHVyZU5hbWVzOiBuZXcgci5BcnJheShGZWF0dXJlTmFtZSwgJ2ZlYXR1cmVOYW1lQ291bnQnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBBeGlzID0gbmV3IHIuU3RydWN0KHtcbiAgYXhpc1RhZzogbmV3IHIuU3RyaW5nKDQpLFxuICBtaW5WYWx1ZTogci5maXhlZDMyLFxuICBkZWZhdWx0VmFsdWU6IHIuZml4ZWQzMixcbiAgbWF4VmFsdWU6IHIuZml4ZWQzMixcbiAgZmxhZ3M6IHIudWludDE2LFxuICBuYW1lSUQ6IHIudWludDE2LFxuICBuYW1lOiB0ID0+IHQucGFyZW50LnBhcmVudC5uYW1lLnJlY29yZHMuZm9udEZlYXR1cmVzW3QubmFtZUlEXVxufSk7XG5cbmxldCBJbnN0YW5jZSA9IG5ldyByLlN0cnVjdCh7XG4gIG5hbWVJRDogci51aW50MTYsXG4gIG5hbWU6IHQgPT4gdC5wYXJlbnQucGFyZW50Lm5hbWUucmVjb3Jkcy5mb250RmVhdHVyZXNbdC5uYW1lSURdLFxuICBmbGFnczogci51aW50MTYsXG4gIGNvb3JkOiBuZXcgci5BcnJheShyLmZpeGVkMzIsIHQgPT4gdC5wYXJlbnQuYXhpc0NvdW50KSxcbiAgcG9zdHNjcmlwdE5hbWVJRDogbmV3IHIuT3B0aW9uYWwoci51aW50MTYsIHQgPT4gdC5wYXJlbnQuaW5zdGFuY2VTaXplIC0gdC5fY3VycmVudE9mZnNldCA+IDApXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogci5maXhlZDMyLFxuICBvZmZzZXRUb0RhdGE6IHIudWludDE2LFxuICBjb3VudFNpemVQYWlyczogci51aW50MTYsXG4gIGF4aXNDb3VudDogci51aW50MTYsXG4gIGF4aXNTaXplOiByLnVpbnQxNixcbiAgaW5zdGFuY2VDb3VudDogci51aW50MTYsXG4gIGluc3RhbmNlU2l6ZTogci51aW50MTYsXG4gIGF4aXM6IG5ldyByLkFycmF5KEF4aXMsICdheGlzQ291bnQnKSxcbiAgaW5zdGFuY2U6IG5ldyByLkFycmF5KEluc3RhbmNlLCAnaW5zdGFuY2VDb3VudCcpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IHNob3J0RnJhYyA9IG5ldyByLkZpeGVkKDE2LCAnQkUnLCAxNCk7XG5jbGFzcyBPZmZzZXQge1xuICBzdGF0aWMgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgLy8gSW4gc2hvcnQgZm9ybWF0LCBvZmZzZXRzIGFyZSBtdWx0aXBsaWVkIGJ5IDIuXG4gICAgLy8gVGhpcyBkb2Vzbid0IHNlZW0gdG8gYmUgZG9jdW1lbnRlZCBieSBBcHBsZSwgYnV0IGl0XG4gICAgLy8gaXMgaW1wbGVtZW50ZWQgdGhpcyB3YXkgaW4gRnJlZXR5cGUuXG4gICAgcmV0dXJuIHBhcmVudC5mbGFnc1xuICAgICAgPyBzdHJlYW0ucmVhZFVJbnQzMkJFKClcbiAgICAgIDogc3RyZWFtLnJlYWRVSW50MTZCRSgpICogMjtcbiAgfVxufVxuXG5sZXQgZ3ZhciA9IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIudWludDE2LFxuICByZXNlcnZlZDogbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICBheGlzQ291bnQ6IHIudWludDE2LFxuICBnbG9iYWxDb29yZENvdW50OiByLnVpbnQxNixcbiAgZ2xvYmFsQ29vcmRzOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgci5BcnJheShuZXcgci5BcnJheShzaG9ydEZyYWMsICdheGlzQ291bnQnKSwgJ2dsb2JhbENvb3JkQ291bnQnKSksXG4gIGdseXBoQ291bnQ6IHIudWludDE2LFxuICBmbGFnczogci51aW50MTYsXG4gIG9mZnNldFRvRGF0YTogci51aW50MzIsXG4gIG9mZnNldHM6IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoT2Zmc2V0LCAndm9pZCcsIHsgcmVsYXRpdmVUbzogY3R4ID0+IGN0eC5vZmZzZXRUb0RhdGEsIGFsbG93TnVsbDogZmFsc2UgfSksIHQgPT4gdC5nbHlwaENvdW50ICsgMSlcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBndmFyO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgTG9va3VwVGFibGUsIFN0YXRlVGFibGUxIH0gZnJvbSAnLi9hYXQnO1xuXG5sZXQgQ2xhc3NUYWJsZSA9IG5ldyByLlN0cnVjdCh7XG4gIGxlbmd0aDogci51aW50MTYsXG4gIGNvdmVyYWdlOiByLnVpbnQxNixcbiAgc3ViRmVhdHVyZUZsYWdzOiByLnVpbnQzMixcbiAgc3RhdGVUYWJsZTogbmV3IFN0YXRlVGFibGUxXG59KTtcblxubGV0IFdpZHRoRGVsdGFSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBqdXN0Q2xhc3M6IHIudWludDMyLFxuICBiZWZvcmVHcm93TGltaXQ6IHIuZml4ZWQzMixcbiAgYmVmb3JlU2hyaW5rTGltaXQ6IHIuZml4ZWQzMixcbiAgYWZ0ZXJHcm93TGltaXQ6IHIuZml4ZWQzMixcbiAgYWZ0ZXJTaHJpbmtMaW1pdDogci5maXhlZDMyLFxuICBncm93RmxhZ3M6IHIudWludDE2LFxuICBzaHJpbmtGbGFnczogci51aW50MTZcbn0pO1xuXG5sZXQgV2lkdGhEZWx0YUNsdXN0ZXIgPSBuZXcgci5BcnJheShXaWR0aERlbHRhUmVjb3JkLCByLnVpbnQzMik7XG5cbmxldCBBY3Rpb25EYXRhID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCdhY3Rpb25UeXBlJywge1xuICAwOiB7IC8vIERlY29tcG9zaXRpb24gYWN0aW9uXG4gICAgbG93ZXJMaW1pdDogci5maXhlZDMyLFxuICAgIHVwcGVyTGltaXQ6IHIuZml4ZWQzMixcbiAgICBvcmRlcjogci51aW50MTYsXG4gICAgZ2x5cGhzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgci51aW50MTYpXG4gIH0sXG5cbiAgMTogeyAvLyBVbmNvbmRpdGlvbmFsIGFkZCBnbHlwaCBhY3Rpb25cbiAgICBhZGRHbHlwaDogci51aW50MTZcbiAgfSxcblxuICAyOiB7IC8vIENvbmRpdGlvbmFsIGFkZCBnbHlwaCBhY3Rpb25cbiAgICBzdWJzdFRocmVzaG9sZDogci5maXhlZDMyLFxuICAgIGFkZEdseXBoOiByLnVpbnQxNixcbiAgICBzdWJzdEdseXBoOiByLnVpbnQxNlxuICB9LFxuXG4gIDM6IHt9LCAvLyBTdHJldGNoIGdseXBoIGFjdGlvbiAobm8gZGF0YSwgbm90IHN1cHBvcnRlZCBieSBDb3JlVGV4dClcblxuICA0OiB7IC8vIER1Y3RpbGUgZ2x5cGggYWN0aW9uIChub3Qgc3VwcG9ydGVkIGJ5IENvcmVUZXh0KVxuICAgIHZhcmlhdGlvbkF4aXM6IHIudWludDMyLFxuICAgIG1pbmltdW1MaW1pdDogci5maXhlZDMyLFxuICAgIG5vU3RyZXRjaFZhbHVlOiByLmZpeGVkMzIsXG4gICAgbWF4aW11bUxpbWl0OiByLmZpeGVkMzJcbiAgfSxcblxuICA1OiB7IC8vIFJlcGVhdGVkIGFkZCBnbHlwaCBhY3Rpb25cbiAgICBmbGFnczogci51aW50MTYsXG4gICAgZ2x5cGg6IHIudWludDE2XG4gIH1cbn0pO1xuXG5sZXQgQWN0aW9uID0gbmV3IHIuU3RydWN0KHtcbiAgYWN0aW9uQ2xhc3M6IHIudWludDE2LFxuICBhY3Rpb25UeXBlOiByLnVpbnQxNixcbiAgYWN0aW9uTGVuZ3RoOiByLnVpbnQzMixcbiAgYWN0aW9uRGF0YTogQWN0aW9uRGF0YSxcbiAgcGFkZGluZzogbmV3IHIuUmVzZXJ2ZWQoci51aW50OCwgdCA9PiB0LmFjdGlvbkxlbmd0aCAtIHQuX2N1cnJlbnRPZmZzZXQpXG59KTtcblxubGV0IFBvc3Rjb21wZW5zYXRpb25BY3Rpb24gPSBuZXcgci5BcnJheShBY3Rpb24sIHIudWludDMyKTtcbmxldCBQb3N0Q29tcGVuc2F0aW9uVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBsb29rdXBUYWJsZTogbmV3IExvb2t1cFRhYmxlKG5ldyByLlBvaW50ZXIoci51aW50MTYsIFBvc3Rjb21wZW5zYXRpb25BY3Rpb24pKVxufSk7XG5cbmxldCBKdXN0aWZpY2F0aW9uVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBjbGFzc1RhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc1RhYmxlLCB7IHR5cGU6ICdwYXJlbnQnIH0pLFxuICB3ZGNPZmZzZXQ6IHIudWludDE2LFxuICBwb3N0Q29tcGVuc2F0aW9uVGFibGU6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIFBvc3RDb21wZW5zYXRpb25UYWJsZSwgeyB0eXBlOiAncGFyZW50JyB9KSxcbiAgd2lkdGhEZWx0YUNsdXN0ZXJzOiBuZXcgTG9va3VwVGFibGUobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgV2lkdGhEZWx0YUNsdXN0ZXIsIHsgdHlwZTogJ3BhcmVudCcsIHJlbGF0aXZlVG86IGN0eCA9PiBjdHgud2RjT2Zmc2V0IH0pKVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIudWludDMyLFxuICBmb3JtYXQ6IHIudWludDE2LFxuICBob3Jpem9udGFsOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBKdXN0aWZpY2F0aW9uVGFibGUpLFxuICB2ZXJ0aWNhbDogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnVzdGlmaWNhdGlvblRhYmxlKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBVbmJvdW5kZWRBcnJheSwgTG9va3VwVGFibGUsIFN0YXRlVGFibGUgfSBmcm9tICcuL2FhdCc7XG5cbmxldCBMaWdhdHVyZURhdGEgPSB7XG4gIGFjdGlvbjogci51aW50MTZcbn07XG5cbmxldCBDb250ZXh0dWFsRGF0YSA9IHtcbiAgbWFya0luZGV4OiByLnVpbnQxNixcbiAgY3VycmVudEluZGV4OiByLnVpbnQxNlxufTtcblxubGV0IEluc2VydGlvbkRhdGEgPSB7XG4gIGN1cnJlbnRJbnNlcnRJbmRleDogci51aW50MTYsXG4gIG1hcmtlZEluc2VydEluZGV4OiByLnVpbnQxNlxufTtcblxubGV0IFN1YnN0aXR1dGlvblRhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgaXRlbXM6IG5ldyBVbmJvdW5kZWRBcnJheShuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgTG9va3VwVGFibGUpKVxufSk7XG5cbmxldCBTdWJ0YWJsZURhdGEgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3QoJ3R5cGUnLCB7XG4gIDA6IHsgLy8gSW5kaWMgUmVhcnJhbmdlbWVudCBTdWJ0YWJsZVxuICAgIHN0YXRlVGFibGU6IG5ldyBTdGF0ZVRhYmxlXG4gIH0sXG5cbiAgMTogeyAvLyBDb250ZXh0dWFsIEdseXBoIFN1YnN0aXR1dGlvbiBTdWJ0YWJsZVxuICAgIHN0YXRlVGFibGU6IG5ldyBTdGF0ZVRhYmxlKENvbnRleHR1YWxEYXRhKSxcbiAgICBzdWJzdGl0dXRpb25UYWJsZTogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgU3Vic3RpdHV0aW9uVGFibGUpXG4gIH0sXG5cbiAgMjogeyAvLyBMaWdhdHVyZSBzdWJ0YWJsZVxuICAgIHN0YXRlVGFibGU6IG5ldyBTdGF0ZVRhYmxlKExpZ2F0dXJlRGF0YSksXG4gICAgbGlnYXR1cmVBY3Rpb25zOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgVW5ib3VuZGVkQXJyYXkoci51aW50MzIpKSxcbiAgICBjb21wb25lbnRzOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgVW5ib3VuZGVkQXJyYXkoci51aW50MTYpKSxcbiAgICBsaWdhdHVyZUxpc3Q6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyBVbmJvdW5kZWRBcnJheShyLnVpbnQxNikpXG4gIH0sXG5cbiAgNDogeyAvLyBOb24tY29udGV4dHVhbCBHbHlwaCBTdWJzdGl0dXRpb24gU3VidGFibGVcbiAgICBsb29rdXBUYWJsZTogbmV3IExvb2t1cFRhYmxlXG4gIH0sXG5cbiAgNTogeyAvLyBHbHlwaCBJbnNlcnRpb24gU3VidGFibGVcbiAgICBzdGF0ZVRhYmxlOiBuZXcgU3RhdGVUYWJsZShJbnNlcnRpb25EYXRhKSxcbiAgICBpbnNlcnRpb25BY3Rpb25zOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgVW5ib3VuZGVkQXJyYXkoci51aW50MTYpKVxuICB9XG59KTtcblxubGV0IFN1YnRhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgbGVuZ3RoOiByLnVpbnQzMixcbiAgY292ZXJhZ2U6IHIudWludDI0LFxuICB0eXBlOiByLnVpbnQ4LFxuICBzdWJGZWF0dXJlRmxhZ3M6IHIudWludDMyLFxuICB0YWJsZTogU3VidGFibGVEYXRhLFxuICBwYWRkaW5nOiBuZXcgci5SZXNlcnZlZChyLnVpbnQ4LCB0ID0+IHQubGVuZ3RoIC0gdC5fY3VycmVudE9mZnNldClcbn0pO1xuXG5sZXQgRmVhdHVyZUVudHJ5ID0gbmV3IHIuU3RydWN0KHtcbiAgZmVhdHVyZVR5cGU6ICAgIHIudWludDE2LFxuICBmZWF0dXJlU2V0dGluZzogci51aW50MTYsXG4gIGVuYWJsZUZsYWdzOiAgICByLnVpbnQzMixcbiAgZGlzYWJsZUZsYWdzOiAgIHIudWludDMyXG59KTtcblxubGV0IE1vcnhDaGFpbiA9IG5ldyByLlN0cnVjdCh7XG4gIGRlZmF1bHRGbGFnczogICAgIHIudWludDMyLFxuICBjaGFpbkxlbmd0aDogICAgICByLnVpbnQzMixcbiAgbkZlYXR1cmVFbnRyaWVzOiAgci51aW50MzIsXG4gIG5TdWJ0YWJsZXM6ICAgICAgIHIudWludDMyLFxuICBmZWF0dXJlczogICAgICAgICBuZXcgci5BcnJheShGZWF0dXJlRW50cnksICduRmVhdHVyZUVudHJpZXMnKSxcbiAgc3VidGFibGVzOiAgICAgICAgbmV3IHIuQXJyYXkoU3VidGFibGUsICduU3VidGFibGVzJylcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgci51aW50MTYsXG4gIHVudXNlZDogICBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiksXG4gIG5DaGFpbnM6ICByLnVpbnQzMixcbiAgY2hhaW5zOiAgIG5ldyByLkFycmF5KE1vcnhDaGFpbiwgJ25DaGFpbnMnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBMb29rdXBUYWJsZSB9IGZyb20gJy4vYWF0JztcblxubGV0IE9wdGljYWxCb3VuZHMgPSBuZXcgci5TdHJ1Y3Qoe1xuICBsZWZ0OiByLmludDE2LFxuICB0b3A6IHIuaW50MTYsXG4gIHJpZ2h0OiByLmludDE2LFxuICBib3R0b206IHIuaW50MTZcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiByLmZpeGVkMzIsXG4gIGZvcm1hdDogci51aW50MTYsXG4gIGxvb2t1cFRhYmxlOiBuZXcgTG9va3VwVGFibGUoT3B0aWNhbEJvdW5kcylcbn0pO1xuIiwgImltcG9ydCB7IGJpbmFyeVNlYXJjaCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgZW5jb2RpbmdFeGlzdHMsIGdldEVuY29kaW5nLCBnZXRFbmNvZGluZ01hcHBpbmcgfSBmcm9tICcuL2VuY29kaW5ncyc7XG5pbXBvcnQgeyBjYWNoZSB9IGZyb20gJy4vZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyByYW5nZSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDbWFwUHJvY2Vzc29yIHtcbiAgY29uc3RydWN0b3IoY21hcFRhYmxlKSB7XG4gICAgLy8gQXR0ZW1wdCB0byBmaW5kIGEgVW5pY29kZSBjbWFwIGZpcnN0XG4gICAgdGhpcy5lbmNvZGluZyA9IG51bGw7XG4gICAgdGhpcy5jbWFwID0gdGhpcy5maW5kU3VidGFibGUoY21hcFRhYmxlLCBbXG4gICAgICAvLyAzMi1iaXQgc3VidGFibGVzXG4gICAgICBbMywgMTBdLFxuICAgICAgWzAsIDZdLFxuICAgICAgWzAsIDRdLFxuXG4gICAgICAvLyAxNi1iaXQgc3VidGFibGVzXG4gICAgICBbMywgMV0sXG4gICAgICBbMCwgM10sXG4gICAgICBbMCwgMl0sXG4gICAgICBbMCwgMV0sXG4gICAgICBbMCwgMF1cbiAgICBdKTtcblxuICAgIC8vIElmIG5vdCB1bmljb2RlIGNtYXAgd2FzIGZvdW5kLCB0YWtlIHRoZSBmaXJzdCB0YWJsZSB3aXRoIGEgc3VwcG9ydGVkIGVuY29kaW5nLlxuICAgIGlmICghdGhpcy5jbWFwKSB7XG4gICAgICBmb3IgKGxldCBjbWFwIG9mIGNtYXBUYWJsZS50YWJsZXMpIHtcbiAgICAgICAgbGV0IGVuY29kaW5nID0gZ2V0RW5jb2RpbmcoY21hcC5wbGF0Zm9ybUlELCBjbWFwLmVuY29kaW5nSUQsIGNtYXAudGFibGUubGFuZ3VhZ2UgLSAxKTtcbiAgICAgICAgbGV0IG1hcHBpbmcgPSBnZXRFbmNvZGluZ01hcHBpbmcoZW5jb2RpbmcpO1xuICAgICAgICBpZiAobWFwcGluZykge1xuICAgICAgICAgIHRoaXMuY21hcCA9IGNtYXAudGFibGU7XG4gICAgICAgICAgdGhpcy5lbmNvZGluZyA9IG1hcHBpbmc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuY21hcCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ291bGQgbm90IGZpbmQgYSBzdXBwb3J0ZWQgY21hcCB0YWJsZVwiKTtcbiAgICB9XG5cbiAgICB0aGlzLnV2cyA9IHRoaXMuZmluZFN1YnRhYmxlKGNtYXBUYWJsZSwgW1swLCA1XV0pO1xuICAgIGlmICh0aGlzLnV2cyAmJiB0aGlzLnV2cy52ZXJzaW9uICE9PSAxNCkge1xuICAgICAgdGhpcy51dnMgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIGZpbmRTdWJ0YWJsZShjbWFwVGFibGUsIHBhaXJzKSB7XG4gICAgZm9yIChsZXQgW3BsYXRmb3JtSUQsIGVuY29kaW5nSURdIG9mIHBhaXJzKSB7XG4gICAgICBmb3IgKGxldCBjbWFwIG9mIGNtYXBUYWJsZS50YWJsZXMpIHtcbiAgICAgICAgaWYgKGNtYXAucGxhdGZvcm1JRCA9PT0gcGxhdGZvcm1JRCAmJiBjbWFwLmVuY29kaW5nSUQgPT09IGVuY29kaW5nSUQpIHtcbiAgICAgICAgICByZXR1cm4gY21hcC50YWJsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgbG9va3VwKGNvZGVwb2ludCwgdmFyaWF0aW9uU2VsZWN0b3IpIHtcbiAgICAvLyBJZiB0aGVyZSBpcyBubyBVbmljb2RlIGNtYXAgaW4gdGhpcyBmb250LCB3ZSBuZWVkIHRvIHJlLWVuY29kZVxuICAgIC8vIHRoZSBjb2RlcG9pbnQgaW4gdGhlIGVuY29kaW5nIHRoYXQgdGhlIGNtYXAgc3VwcG9ydHMuXG4gICAgaWYgKHRoaXMuZW5jb2RpbmcpIHtcbiAgICAgIGNvZGVwb2ludCA9IHRoaXMuZW5jb2RpbmcuZ2V0KGNvZGVwb2ludCkgfHwgY29kZXBvaW50O1xuXG4gICAgICAvLyBPdGhlcndpc2UsIHRyeSB0byBnZXQgYSBVbmljb2RlIHZhcmlhdGlvbiBzZWxlY3RvciBmb3IgdGhpcyBjb2RlcG9pbnQgaWYgb25lIGlzIHByb3ZpZGVkLlxuICAgIH0gZWxzZSBpZiAodmFyaWF0aW9uU2VsZWN0b3IpIHtcbiAgICAgIGxldCBnaWQgPSB0aGlzLmdldFZhcmlhdGlvblNlbGVjdG9yKGNvZGVwb2ludCwgdmFyaWF0aW9uU2VsZWN0b3IpO1xuICAgICAgaWYgKGdpZCkge1xuICAgICAgICByZXR1cm4gZ2lkO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBjbWFwID0gdGhpcy5jbWFwO1xuICAgIHN3aXRjaCAoY21hcC52ZXJzaW9uKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIHJldHVybiBjbWFwLmNvZGVNYXAuZ2V0KGNvZGVwb2ludCkgfHwgMDtcblxuICAgICAgY2FzZSA0OiB7XG4gICAgICAgIGxldCBtaW4gPSAwO1xuICAgICAgICBsZXQgbWF4ID0gY21hcC5zZWdDb3VudCAtIDE7XG4gICAgICAgIHdoaWxlIChtaW4gPD0gbWF4KSB7XG4gICAgICAgICAgbGV0IG1pZCA9IChtaW4gKyBtYXgpID4+IDE7XG5cbiAgICAgICAgICBpZiAoY29kZXBvaW50IDwgY21hcC5zdGFydENvZGUuZ2V0KG1pZCkpIHtcbiAgICAgICAgICAgIG1heCA9IG1pZCAtIDE7XG4gICAgICAgICAgfSBlbHNlIGlmIChjb2RlcG9pbnQgPiBjbWFwLmVuZENvZGUuZ2V0KG1pZCkpIHtcbiAgICAgICAgICAgIG1pbiA9IG1pZCArIDE7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCByYW5nZU9mZnNldCA9IGNtYXAuaWRSYW5nZU9mZnNldC5nZXQobWlkKTtcbiAgICAgICAgICAgIGxldCBnaWQ7XG5cbiAgICAgICAgICAgIGlmIChyYW5nZU9mZnNldCA9PT0gMCkge1xuICAgICAgICAgICAgICBnaWQgPSBjb2RlcG9pbnQgKyBjbWFwLmlkRGVsdGEuZ2V0KG1pZCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBsZXQgaW5kZXggPSByYW5nZU9mZnNldCAvIDIgKyAoY29kZXBvaW50IC0gY21hcC5zdGFydENvZGUuZ2V0KG1pZCkpIC0gKGNtYXAuc2VnQ291bnQgLSBtaWQpO1xuICAgICAgICAgICAgICBnaWQgPSBjbWFwLmdseXBoSW5kZXhBcnJheS5nZXQoaW5kZXgpIHx8IDA7XG4gICAgICAgICAgICAgIGlmIChnaWQgIT09IDApIHtcbiAgICAgICAgICAgICAgICBnaWQgKz0gY21hcC5pZERlbHRhLmdldChtaWQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBnaWQgJiAweGZmZmY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgODpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUT0RPOiBjbWFwIGZvcm1hdCA4Jyk7XG5cbiAgICAgIGNhc2UgNjpcbiAgICAgIGNhc2UgMTA6XG4gICAgICAgIHJldHVybiBjbWFwLmdseXBoSW5kaWNlcy5nZXQoY29kZXBvaW50IC0gY21hcC5maXJzdENvZGUpIHx8IDA7XG5cbiAgICAgIGNhc2UgMTI6XG4gICAgICBjYXNlIDEzOiB7XG4gICAgICAgIGxldCBtaW4gPSAwO1xuICAgICAgICBsZXQgbWF4ID0gY21hcC5uR3JvdXBzIC0gMTtcbiAgICAgICAgd2hpbGUgKG1pbiA8PSBtYXgpIHtcbiAgICAgICAgICBsZXQgbWlkID0gKG1pbiArIG1heCkgPj4gMTtcbiAgICAgICAgICBsZXQgZ3JvdXAgPSBjbWFwLmdyb3Vwcy5nZXQobWlkKTtcblxuICAgICAgICAgIGlmIChjb2RlcG9pbnQgPCBncm91cC5zdGFydENoYXJDb2RlKSB7XG4gICAgICAgICAgICBtYXggPSBtaWQgLSAxO1xuICAgICAgICAgIH0gZWxzZSBpZiAoY29kZXBvaW50ID4gZ3JvdXAuZW5kQ2hhckNvZGUpIHtcbiAgICAgICAgICAgIG1pbiA9IG1pZCArIDE7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChjbWFwLnZlcnNpb24gPT09IDEyKSB7XG4gICAgICAgICAgICAgIHJldHVybiBncm91cC5nbHlwaElEICsgKGNvZGVwb2ludCAtIGdyb3VwLnN0YXJ0Q2hhckNvZGUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGdyb3VwLmdseXBoSUQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMTQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVE9ETzogY21hcCBmb3JtYXQgMTQnKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGNtYXAgZm9ybWF0ICR7Y21hcC52ZXJzaW9ufWApO1xuICAgIH1cbiAgfVxuXG4gIGdldFZhcmlhdGlvblNlbGVjdG9yKGNvZGVwb2ludCwgdmFyaWF0aW9uU2VsZWN0b3IpIHtcbiAgICBpZiAoIXRoaXMudXZzKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBsZXQgc2VsZWN0b3JzID0gdGhpcy51dnMudmFyU2VsZWN0b3JzLnRvQXJyYXkoKTtcbiAgICBsZXQgaSA9IGJpbmFyeVNlYXJjaChzZWxlY3RvcnMsIHggPT4gdmFyaWF0aW9uU2VsZWN0b3IgLSB4LnZhclNlbGVjdG9yKTtcbiAgICBsZXQgc2VsID0gc2VsZWN0b3JzW2ldO1xuXG4gICAgaWYgKGkgIT09IC0xICYmIHNlbC5kZWZhdWx0VVZTKSB7XG4gICAgICBpID0gYmluYXJ5U2VhcmNoKHNlbC5kZWZhdWx0VVZTLCB4ID0+XG4gICAgICAgIGNvZGVwb2ludCA8IHguc3RhcnRVbmljb2RlVmFsdWUgPyAtMSA6IGNvZGVwb2ludCA+IHguc3RhcnRVbmljb2RlVmFsdWUgKyB4LmFkZGl0aW9uYWxDb3VudCA/ICsxIDogMFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoaSAhPT0gLTEgJiYgc2VsLm5vbkRlZmF1bHRVVlMpIHtcbiAgICAgIGkgPSBiaW5hcnlTZWFyY2goc2VsLm5vbkRlZmF1bHRVVlMsIHggPT4gY29kZXBvaW50IC0geC51bmljb2RlVmFsdWUpO1xuICAgICAgaWYgKGkgIT09IC0xKSB7XG4gICAgICAgIHJldHVybiBzZWwubm9uRGVmYXVsdFVWU1tpXS5nbHlwaElEO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgQGNhY2hlXG4gIGdldENoYXJhY3RlclNldCgpIHtcbiAgICBsZXQgY21hcCA9IHRoaXMuY21hcDtcbiAgICBzd2l0Y2ggKGNtYXAudmVyc2lvbikge1xuICAgICAgY2FzZSAwOlxuICAgICAgICByZXR1cm4gcmFuZ2UoMCwgY21hcC5jb2RlTWFwLmxlbmd0aCk7XG5cbiAgICAgIGNhc2UgNDoge1xuICAgICAgICBsZXQgcmVzID0gW107XG4gICAgICAgIGxldCBlbmRDb2RlcyA9IGNtYXAuZW5kQ29kZS50b0FycmF5KCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZW5kQ29kZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBsZXQgdGFpbCA9IGVuZENvZGVzW2ldICsgMTtcbiAgICAgICAgICBsZXQgc3RhcnQgPSBjbWFwLnN0YXJ0Q29kZS5nZXQoaSk7XG4gICAgICAgICAgcmVzLnB1c2goLi4ucmFuZ2Uoc3RhcnQsIHRhaWwpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgODpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUT0RPOiBjbWFwIGZvcm1hdCA4Jyk7XG5cbiAgICAgIGNhc2UgNjpcbiAgICAgIGNhc2UgMTA6XG4gICAgICAgIHJldHVybiByYW5nZShjbWFwLmZpcnN0Q29kZSwgY21hcC5maXJzdENvZGUgKyBjbWFwLmdseXBoSW5kaWNlcy5sZW5ndGgpO1xuXG4gICAgICBjYXNlIDEyOlxuICAgICAgY2FzZSAxMzoge1xuICAgICAgICBsZXQgcmVzID0gW107XG4gICAgICAgIGZvciAobGV0IGdyb3VwIG9mIGNtYXAuZ3JvdXBzLnRvQXJyYXkoKSkge1xuICAgICAgICAgIHJlcy5wdXNoKC4uLnJhbmdlKGdyb3VwLnN0YXJ0Q2hhckNvZGUsIGdyb3VwLmVuZENoYXJDb2RlICsgMSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH1cblxuICAgICAgY2FzZSAxNDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUT0RPOiBjbWFwIGZvcm1hdCAxNCcpO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gY21hcCBmb3JtYXQgJHtjbWFwLnZlcnNpb259YCk7XG4gICAgfVxuICB9XG5cbiAgQGNhY2hlXG4gIGNvZGVQb2ludHNGb3JHbHlwaChnaWQpIHtcbiAgICBsZXQgY21hcCA9IHRoaXMuY21hcDtcbiAgICBzd2l0Y2ggKGNtYXAudmVyc2lvbikge1xuICAgICAgY2FzZSAwOiB7XG4gICAgICAgIGxldCByZXMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAyNTY7IGkrKykge1xuICAgICAgICAgIGlmIChjbWFwLmNvZGVNYXAuZ2V0KGkpID09PSBnaWQpIHtcbiAgICAgICAgICAgIHJlcy5wdXNoKGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgNDoge1xuICAgICAgICBsZXQgcmVzID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY21hcC5zZWdDb3VudDsgaSsrKSB7XG4gICAgICAgICAgbGV0IGVuZCA9IGNtYXAuZW5kQ29kZS5nZXQoaSk7XG4gICAgICAgICAgbGV0IHN0YXJ0ID0gY21hcC5zdGFydENvZGUuZ2V0KGkpO1xuICAgICAgICAgIGxldCByYW5nZU9mZnNldCA9IGNtYXAuaWRSYW5nZU9mZnNldC5nZXQoaSk7XG4gICAgICAgICAgbGV0IGRlbHRhID0gY21hcC5pZERlbHRhLmdldChpKTtcblxuICAgICAgICAgIGZvciAodmFyIGMgPSBzdGFydDsgYyA8PSBlbmQ7IGMrKykge1xuICAgICAgICAgICAgbGV0IGcgPSAwO1xuICAgICAgICAgICAgaWYgKHJhbmdlT2Zmc2V0ID09PSAwKSB7XG4gICAgICAgICAgICAgIGcgPSBjICsgZGVsdGE7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBsZXQgaW5kZXggPSByYW5nZU9mZnNldCAvIDIgKyAoYyAtIHN0YXJ0KSAtIChjbWFwLnNlZ0NvdW50IC0gaSk7XG4gICAgICAgICAgICAgIGcgPSBjbWFwLmdseXBoSW5kZXhBcnJheS5nZXQoaW5kZXgpIHx8IDA7XG4gICAgICAgICAgICAgIGlmIChnICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgZyArPSBkZWx0YTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoZyA9PT0gZ2lkKSB7XG4gICAgICAgICAgICAgIHJlcy5wdXNoKGMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMTI6IHtcbiAgICAgICAgbGV0IHJlcyA9IFtdO1xuICAgICAgICBmb3IgKGxldCBncm91cCBvZiBjbWFwLmdyb3Vwcy50b0FycmF5KCkpIHtcbiAgICAgICAgICBpZiAoZ2lkID49IGdyb3VwLmdseXBoSUQgJiYgZ2lkIDw9IGdyb3VwLmdseXBoSUQgKyAoZ3JvdXAuZW5kQ2hhckNvZGUgLSBncm91cC5zdGFydENoYXJDb2RlKSkge1xuICAgICAgICAgICAgcmVzLnB1c2goZ3JvdXAuc3RhcnRDaGFyQ29kZSArIChnaWQgLSBncm91cC5nbHlwaElEKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH1cblxuICAgICAgY2FzZSAxMzoge1xuICAgICAgICBsZXQgcmVzID0gW107XG4gICAgICAgIGZvciAobGV0IGdyb3VwIG9mIGNtYXAuZ3JvdXBzLnRvQXJyYXkoKSkge1xuICAgICAgICAgIGlmIChnaWQgPT09IGdyb3VwLmdseXBoSUQpIHtcbiAgICAgICAgICAgIHJlcy5wdXNoKC4uLnJhbmdlKGdyb3VwLnN0YXJ0Q2hhckNvZGUsIGdyb3VwLmVuZENoYXJDb2RlICsgMSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjbWFwIGZvcm1hdCAke2NtYXAudmVyc2lvbn1gKTtcbiAgICB9XG4gIH1cbn1cbiIsICJleHBvcnQgZnVuY3Rpb24gYmluYXJ5U2VhcmNoKGFyciwgY21wKSB7XG4gIGxldCBtaW4gPSAwO1xuICBsZXQgbWF4ID0gYXJyLmxlbmd0aCAtIDE7XG4gIHdoaWxlIChtaW4gPD0gbWF4KSB7XG4gICAgbGV0IG1pZCA9IChtaW4gKyBtYXgpID4+IDE7XG4gICAgbGV0IHJlcyA9IGNtcChhcnJbbWlkXSk7XG5cbiAgICBpZiAocmVzIDwgMCkge1xuICAgICAgbWF4ID0gbWlkIC0gMTtcbiAgICB9IGVsc2UgaWYgKHJlcyA+IDApIHtcbiAgICAgIG1pbiA9IG1pZCArIDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBtaWQ7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIC0xO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmFuZ2UoaW5kZXgsIGVuZCkge1xuICBsZXQgcmFuZ2UgPSBbXTtcbiAgd2hpbGUgKGluZGV4IDwgZW5kKSB7XG4gICAgcmFuZ2UucHVzaChpbmRleCsrKTtcbiAgfVxuICByZXR1cm4gcmFuZ2U7XG59XG5cbmV4cG9ydCBjb25zdCBhc2NpaURlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoJ2FzY2lpJyk7XG5cbi8vIEJhc2VkIG9uIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWtsYXN2aC9iYXNlNjQtYXJyYXlidWZmZXIuIE1JVCBsaWNlbnNlLlxuY29uc3QgQ0hBUlMgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyc7XG5jb25zdCBMT09LVVAgPSBuZXcgVWludDhBcnJheSgyNTYpO1xuZm9yIChsZXQgaSA9IDA7IGkgPCBDSEFSUy5sZW5ndGg7IGkrKykge1xuICBMT09LVVBbQ0hBUlMuY2hhckNvZGVBdChpKV0gPSBpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlQmFzZTY0KGJhc2U2NCkge1xuICBsZXQgYnVmZmVyTGVuZ3RoID0gYmFzZTY0Lmxlbmd0aCAqIDAuNzU7XG5cbiAgaWYgKGJhc2U2NFtiYXNlNjQubGVuZ3RoIC0gMV0gPT09ICc9Jykge1xuICAgIGJ1ZmZlckxlbmd0aC0tO1xuICAgIGlmIChiYXNlNjRbYmFzZTY0Lmxlbmd0aCAtIDJdID09PSAnPScpIHtcbiAgICAgIGJ1ZmZlckxlbmd0aC0tO1xuICAgIH1cbiAgfVxuXG4gIGxldCBieXRlcyA9IG5ldyBVaW50OEFycmF5KGJ1ZmZlckxlbmd0aCk7XG4gIGxldCBwID0gMDtcblxuICBmb3IgKGxldCBpID0gMCwgbGVuID0gYmFzZTY0Lmxlbmd0aDsgaSA8IGxlbjsgaSArPSA0KSB7XG4gICAgbGV0IGVuY29kZWQxID0gTE9PS1VQW2Jhc2U2NC5jaGFyQ29kZUF0KGkpXTtcbiAgICBsZXQgZW5jb2RlZDIgPSBMT09LVVBbYmFzZTY0LmNoYXJDb2RlQXQoaSArIDEpXTtcbiAgICBsZXQgZW5jb2RlZDMgPSBMT09LVVBbYmFzZTY0LmNoYXJDb2RlQXQoaSArIDIpXTtcbiAgICBsZXQgZW5jb2RlZDQgPSBMT09LVVBbYmFzZTY0LmNoYXJDb2RlQXQoaSArIDMpXTtcblxuICAgIGJ5dGVzW3ArK10gPSAoZW5jb2RlZDEgPDwgMikgfCAoZW5jb2RlZDIgPj4gNCk7XG4gICAgYnl0ZXNbcCsrXSA9ICgoZW5jb2RlZDIgJiAxNSkgPDwgNCkgfCAoZW5jb2RlZDMgPj4gMik7XG4gICAgYnl0ZXNbcCsrXSA9ICgoZW5jb2RlZDMgJiAzKSA8PCA2KSB8IChlbmNvZGVkNCAmIDYzKTtcbiAgfVxuXG4gIHJldHVybiBieXRlcztcbn1cbiIsICJpbXBvcnQgS2VyblByb2Nlc3NvciBmcm9tICcuL0tlcm5Qcm9jZXNzb3InO1xuaW1wb3J0IFVuaWNvZGVMYXlvdXRFbmdpbmUgZnJvbSAnLi9Vbmljb2RlTGF5b3V0RW5naW5lJztcbmltcG9ydCBHbHlwaFJ1biBmcm9tICcuL0dseXBoUnVuJztcbmltcG9ydCBHbHlwaFBvc2l0aW9uIGZyb20gJy4vR2x5cGhQb3NpdGlvbic7XG5pbXBvcnQgKiBhcyBTY3JpcHQgZnJvbSAnLi9TY3JpcHQnO1xuaW1wb3J0IEFBVExheW91dEVuZ2luZSBmcm9tICcuLi9hYXQvQUFUTGF5b3V0RW5naW5lJztcbmltcG9ydCBPVExheW91dEVuZ2luZSBmcm9tICcuLi9vcGVudHlwZS9PVExheW91dEVuZ2luZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIExheW91dEVuZ2luZSB7XG4gIGNvbnN0cnVjdG9yKGZvbnQpIHtcbiAgICB0aGlzLmZvbnQgPSBmb250O1xuICAgIHRoaXMudW5pY29kZUxheW91dEVuZ2luZSA9IG51bGw7XG4gICAgdGhpcy5rZXJuUHJvY2Vzc29yID0gbnVsbDtcblxuICAgIC8vIENob29zZSBhbiBhZHZhbmNlZCBsYXlvdXQgZW5naW5lLiBXZSB0cnkgdGhlIEFBVCBtb3J4IHRhYmxlIGZpcnN0IHNpbmNlIG1vcmVcbiAgICAvLyBzY3JpcHRzIGFyZSBjdXJyZW50bHkgc3VwcG9ydGVkIGJlY2F1c2UgdGhlIHNoYXBpbmcgbG9naWMgaXMgYnVpbHQgaW50byB0aGUgZm9udC5cbiAgICBpZiAodGhpcy5mb250Lm1vcngpIHtcbiAgICAgIHRoaXMuZW5naW5lID0gbmV3IEFBVExheW91dEVuZ2luZSh0aGlzLmZvbnQpO1xuXG4gICAgfSBlbHNlIGlmICh0aGlzLmZvbnQuR1NVQiB8fCB0aGlzLmZvbnQuR1BPUykge1xuICAgICAgdGhpcy5lbmdpbmUgPSBuZXcgT1RMYXlvdXRFbmdpbmUodGhpcy5mb250KTtcbiAgICB9XG4gIH1cblxuICBsYXlvdXQoc3RyaW5nLCBmZWF0dXJlcywgc2NyaXB0LCBsYW5ndWFnZSwgZGlyZWN0aW9uKSB7XG4gICAgLy8gTWFrZSB0aGUgZmVhdHVyZXMgcGFyYW1ldGVyIG9wdGlvbmFsXG4gICAgaWYgKHR5cGVvZiBmZWF0dXJlcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGRpcmVjdGlvbiA9IGxhbmd1YWdlO1xuICAgICAgbGFuZ3VhZ2UgPSBzY3JpcHQ7XG4gICAgICBzY3JpcHQgPSBmZWF0dXJlcztcbiAgICAgIGZlYXR1cmVzID0gW107XG4gICAgfVxuXG4gICAgLy8gTWFwIHN0cmluZyB0byBnbHlwaHMgaWYgbmVlZGVkXG4gICAgaWYgKHR5cGVvZiBzdHJpbmcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyBBdHRlbXB0IHRvIGRldGVjdCB0aGUgc2NyaXB0IGZyb20gdGhlIHN0cmluZyBpZiBub3QgcHJvdmlkZWQuXG4gICAgICBpZiAoc2NyaXB0ID09IG51bGwpIHtcbiAgICAgICAgc2NyaXB0ID0gU2NyaXB0LmZvclN0cmluZyhzdHJpbmcpO1xuICAgICAgfVxuXG4gICAgICB2YXIgZ2x5cGhzID0gdGhpcy5mb250LmdseXBoc0ZvclN0cmluZyhzdHJpbmcpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBBdHRlbXB0IHRvIGRldGVjdCB0aGUgc2NyaXB0IGZyb20gdGhlIGdseXBoIGNvZGUgcG9pbnRzIGlmIG5vdCBwcm92aWRlZC5cbiAgICAgIGlmIChzY3JpcHQgPT0gbnVsbCkge1xuICAgICAgICBsZXQgY29kZVBvaW50cyA9IFtdO1xuICAgICAgICBmb3IgKGxldCBnbHlwaCBvZiBzdHJpbmcpIHtcbiAgICAgICAgICBjb2RlUG9pbnRzLnB1c2goLi4uZ2x5cGguY29kZVBvaW50cyk7XG4gICAgICAgIH1cblxuICAgICAgICBzY3JpcHQgPSBTY3JpcHQuZm9yQ29kZVBvaW50cyhjb2RlUG9pbnRzKTtcbiAgICAgIH1cblxuICAgICAgdmFyIGdseXBocyA9IHN0cmluZztcbiAgICB9XG5cbiAgICBsZXQgZ2x5cGhSdW4gPSBuZXcgR2x5cGhSdW4oZ2x5cGhzLCBmZWF0dXJlcywgc2NyaXB0LCBsYW5ndWFnZSwgZGlyZWN0aW9uKTtcblxuICAgIC8vIFJldHVybiBlYXJseSBpZiB0aGVyZSBhcmUgbm8gZ2x5cGhzXG4gICAgaWYgKGdseXBocy5sZW5ndGggPT09IDApIHtcbiAgICAgIGdseXBoUnVuLnBvc2l0aW9ucyA9IFtdO1xuICAgICAgcmV0dXJuIGdseXBoUnVuO1xuICAgIH1cblxuICAgIC8vIFNldHVwIHRoZSBhZHZhbmNlZCBsYXlvdXQgZW5naW5lXG4gICAgaWYgKHRoaXMuZW5naW5lICYmIHRoaXMuZW5naW5lLnNldHVwKSB7XG4gICAgICB0aGlzLmVuZ2luZS5zZXR1cChnbHlwaFJ1bik7XG4gICAgfVxuXG4gICAgLy8gU3Vic3RpdHV0ZSBhbmQgcG9zaXRpb24gdGhlIGdseXBoc1xuICAgIHRoaXMuc3Vic3RpdHV0ZShnbHlwaFJ1bik7XG4gICAgdGhpcy5wb3NpdGlvbihnbHlwaFJ1bik7XG5cbiAgICB0aGlzLmhpZGVEZWZhdWx0SWdub3JhYmxlcyhnbHlwaFJ1bi5nbHlwaHMsIGdseXBoUnVuLnBvc2l0aW9ucyk7XG5cbiAgICAvLyBMZXQgdGhlIGxheW91dCBlbmdpbmUgY2xlYW4gdXAgYW55IHN0YXRlIGl0IG1pZ2h0IGhhdmVcbiAgICBpZiAodGhpcy5lbmdpbmUgJiYgdGhpcy5lbmdpbmUuY2xlYW51cCkge1xuICAgICAgdGhpcy5lbmdpbmUuY2xlYW51cCgpO1xuICAgIH1cblxuICAgIHJldHVybiBnbHlwaFJ1bjtcbiAgfVxuXG4gIHN1YnN0aXR1dGUoZ2x5cGhSdW4pIHtcbiAgICAvLyBDYWxsIHRoZSBhZHZhbmNlZCBsYXlvdXQgZW5naW5lIHRvIG1ha2Ugc3Vic3RpdHV0aW9uc1xuICAgIGlmICh0aGlzLmVuZ2luZSAmJiB0aGlzLmVuZ2luZS5zdWJzdGl0dXRlKSB7XG4gICAgICB0aGlzLmVuZ2luZS5zdWJzdGl0dXRlKGdseXBoUnVuKTtcbiAgICB9XG4gIH1cblxuICBwb3NpdGlvbihnbHlwaFJ1bikge1xuICAgIC8vIEdldCBpbml0aWFsIGdseXBoIHBvc2l0aW9uc1xuICAgIGdseXBoUnVuLnBvc2l0aW9ucyA9IGdseXBoUnVuLmdseXBocy5tYXAoZ2x5cGggPT4gbmV3IEdseXBoUG9zaXRpb24oZ2x5cGguYWR2YW5jZVdpZHRoKSk7XG4gICAgbGV0IHBvc2l0aW9uZWQgPSBudWxsO1xuXG4gICAgLy8gQ2FsbCB0aGUgYWR2YW5jZWQgbGF5b3V0IGVuZ2luZS4gUmV0dXJucyB0aGUgZmVhdHVyZXMgYXBwbGllZC5cbiAgICBpZiAodGhpcy5lbmdpbmUgJiYgdGhpcy5lbmdpbmUucG9zaXRpb24pIHtcbiAgICAgIHBvc2l0aW9uZWQgPSB0aGlzLmVuZ2luZS5wb3NpdGlvbihnbHlwaFJ1bik7XG4gICAgfVxuXG4gICAgLy8gaWYgdGhlcmUgaXMgbm8gR1BPUyB0YWJsZSwgdXNlIHVuaWNvZGUgcHJvcGVydGllcyB0byBwb3NpdGlvbiBtYXJrcy5cbiAgICBpZiAoIXBvc2l0aW9uZWQgJiYgKCF0aGlzLmVuZ2luZSB8fCB0aGlzLmVuZ2luZS5mYWxsYmFja1Bvc2l0aW9uKSkge1xuICAgICAgaWYgKCF0aGlzLnVuaWNvZGVMYXlvdXRFbmdpbmUpIHtcbiAgICAgICAgdGhpcy51bmljb2RlTGF5b3V0RW5naW5lID0gbmV3IFVuaWNvZGVMYXlvdXRFbmdpbmUodGhpcy5mb250KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy51bmljb2RlTGF5b3V0RW5naW5lLnBvc2l0aW9uR2x5cGhzKGdseXBoUnVuLmdseXBocywgZ2x5cGhSdW4ucG9zaXRpb25zKTtcbiAgICB9XG5cbiAgICAvLyBpZiBrZXJuaW5nIGlzIG5vdCBzdXBwb3J0ZWQgYnkgR1BPUywgZG8ga2VybmluZyB3aXRoIHRoZSBUcnVlVHlwZS9BQVQga2VybiB0YWJsZVxuICAgIGlmICgoIXBvc2l0aW9uZWQgfHwgIXBvc2l0aW9uZWQua2VybikgJiYgZ2x5cGhSdW4uZmVhdHVyZXMua2VybiAhPT0gZmFsc2UgJiYgdGhpcy5mb250Lmtlcm4pIHtcbiAgICAgIGlmICghdGhpcy5rZXJuUHJvY2Vzc29yKSB7XG4gICAgICAgIHRoaXMua2VyblByb2Nlc3NvciA9IG5ldyBLZXJuUHJvY2Vzc29yKHRoaXMuZm9udCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMua2VyblByb2Nlc3Nvci5wcm9jZXNzKGdseXBoUnVuLmdseXBocywgZ2x5cGhSdW4ucG9zaXRpb25zKTtcbiAgICAgIGdseXBoUnVuLmZlYXR1cmVzLmtlcm4gPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGhpZGVEZWZhdWx0SWdub3JhYmxlcyhnbHlwaHMsIHBvc2l0aW9ucykge1xuICAgIGxldCBzcGFjZSA9IHRoaXMuZm9udC5nbHlwaEZvckNvZGVQb2ludCgweDIwKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdseXBocy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKHRoaXMuaXNEZWZhdWx0SWdub3JhYmxlKGdseXBoc1tpXS5jb2RlUG9pbnRzWzBdKSkge1xuICAgICAgICBnbHlwaHNbaV0gPSBzcGFjZTtcbiAgICAgICAgcG9zaXRpb25zW2ldLnhBZHZhbmNlID0gMDtcbiAgICAgICAgcG9zaXRpb25zW2ldLnlBZHZhbmNlID0gMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpc0RlZmF1bHRJZ25vcmFibGUoY2gpIHtcbiAgICAvLyBGcm9tIERlcml2ZWRDb3JlUHJvcGVydGllcy50eHQgaW4gdGhlIFVuaWNvZGUgZGF0YWJhc2UsXG4gICAgLy8gbWludXMgVSsxMTVGLCBVKzExNjAsIFUrMzE2NCBhbmQgVStGRkEwLCB3aGljaCBpcyB3aGF0XG4gICAgLy8gSGFyZmJ1enogYW5kIFVuaXNjcmliZSBkby5cbiAgICBsZXQgcGxhbmUgPSBjaCA+PiAxNjtcbiAgICBpZiAocGxhbmUgPT09IDApIHtcbiAgICAgIC8vIEJNUFxuICAgICAgc3dpdGNoIChjaCA+PiA4KSB7XG4gICAgICBcdGNhc2UgMHgwMDogcmV0dXJuIGNoID09PSAweDAwQUQ7XG4gICAgICBcdGNhc2UgMHgwMzogcmV0dXJuIGNoID09PSAweDAzNEY7XG4gICAgICBcdGNhc2UgMHgwNjogcmV0dXJuIGNoID09PSAweDA2MUM7XG4gICAgICBcdGNhc2UgMHgxNzogcmV0dXJuIDB4MTdCNCA8PSBjaCAmJiBjaCA8PSAweDE3QjU7XG4gICAgICBcdGNhc2UgMHgxODogcmV0dXJuIDB4MTgwQiA8PSBjaCAmJiBjaCA8PSAweDE4MEU7XG4gICAgICBcdGNhc2UgMHgyMDogcmV0dXJuICgweDIwMEIgPD0gY2ggJiYgY2ggPD0gMHgyMDBGKSB8fCAoMHgyMDJBIDw9IGNoICYmIGNoIDw9IDB4MjAyRSkgfHwgKDB4MjA2MCA8PSBjaCAmJiBjaCA8PSAweDIwNkYpO1xuICAgICAgXHRjYXNlIDB4RkU6IHJldHVybiAoMHhGRTAwIDw9IGNoICYmIGNoIDw9IDB4RkUwRikgfHwgY2ggPT09IDB4RkVGRjtcbiAgICAgIFx0Y2FzZSAweEZGOiByZXR1cm4gMHhGRkYwIDw9IGNoICYmIGNoIDw9IDB4RkZGODtcbiAgICAgIFx0ZGVmYXVsdDogICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIE90aGVyIHBsYW5lc1xuICAgICAgc3dpdGNoIChwbGFuZSkge1xuICAgICAgXHRjYXNlIDB4MDE6IHJldHVybiAoMHgxQkNBMCA8PSBjaCAmJiBjaCA8PSAweDFCQ0EzKSB8fCAoMHgxRDE3MyA8PSBjaCAmJiBjaCA8PSAweDFEMTdBKTtcbiAgICAgIFx0Y2FzZSAweDBFOiByZXR1cm4gMHhFMDAwMCA8PSBjaCAmJiBjaCA8PSAweEUwRkZGO1xuICAgICAgXHRkZWZhdWx0OiAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRBdmFpbGFibGVGZWF0dXJlcyhzY3JpcHQsIGxhbmd1YWdlKSB7XG4gICAgbGV0IGZlYXR1cmVzID0gW107XG5cbiAgICBpZiAodGhpcy5lbmdpbmUpIHtcbiAgICAgIGZlYXR1cmVzLnB1c2goLi4udGhpcy5lbmdpbmUuZ2V0QXZhaWxhYmxlRmVhdHVyZXMoc2NyaXB0LCBsYW5ndWFnZSkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmZvbnQua2VybiAmJiBmZWF0dXJlcy5pbmRleE9mKCdrZXJuJykgPT09IC0xKSB7XG4gICAgICBmZWF0dXJlcy5wdXNoKCdrZXJuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZlYXR1cmVzO1xuICB9XG5cbiAgc3RyaW5nc0ZvckdseXBoKGdpZCkge1xuICAgIGxldCByZXN1bHQgPSBuZXcgU2V0O1xuXG4gICAgbGV0IGNvZGVQb2ludHMgPSB0aGlzLmZvbnQuX2NtYXBQcm9jZXNzb3IuY29kZVBvaW50c0ZvckdseXBoKGdpZCk7XG4gICAgZm9yIChsZXQgY29kZVBvaW50IG9mIGNvZGVQb2ludHMpIHtcbiAgICAgIHJlc3VsdC5hZGQoU3RyaW5nLmZyb21Db2RlUG9pbnQoY29kZVBvaW50KSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZW5naW5lICYmIHRoaXMuZW5naW5lLnN0cmluZ3NGb3JHbHlwaCkge1xuICAgICAgZm9yIChsZXQgc3RyaW5nIG9mIHRoaXMuZW5naW5lLnN0cmluZ3NGb3JHbHlwaChnaWQpKSB7XG4gICAgICAgIHJlc3VsdC5hZGQoc3RyaW5nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gQXJyYXkuZnJvbShyZXN1bHQpO1xuICB9XG59XG4iLCAiaW1wb3J0IHtiaW5hcnlTZWFyY2h9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgS2VyblByb2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKGZvbnQpIHtcbiAgICB0aGlzLmtlcm4gPSBmb250Lmtlcm47XG4gIH1cblxuICBwcm9jZXNzKGdseXBocywgcG9zaXRpb25zKSB7XG4gICAgZm9yIChsZXQgZ2x5cGhJbmRleCA9IDA7IGdseXBoSW5kZXggPCBnbHlwaHMubGVuZ3RoIC0gMTsgZ2x5cGhJbmRleCsrKSB7XG4gICAgICBsZXQgbGVmdCA9IGdseXBoc1tnbHlwaEluZGV4XS5pZDtcbiAgICAgIGxldCByaWdodCA9IGdseXBoc1tnbHlwaEluZGV4ICsgMV0uaWQ7XG4gICAgICBwb3NpdGlvbnNbZ2x5cGhJbmRleF0ueEFkdmFuY2UgKz0gdGhpcy5nZXRLZXJuaW5nKGxlZnQsIHJpZ2h0KTtcbiAgICB9XG4gIH1cblxuICBnZXRLZXJuaW5nKGxlZnQsIHJpZ2h0KSB7XG4gICAgbGV0IHJlcyA9IDA7XG5cbiAgICBmb3IgKGxldCB0YWJsZSBvZiB0aGlzLmtlcm4udGFibGVzKSB7XG4gICAgICBpZiAodGFibGUuY292ZXJhZ2UuY3Jvc3NTdHJlYW0pIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIHN3aXRjaCAodGFibGUudmVyc2lvbikge1xuICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgaWYgKCF0YWJsZS5jb3ZlcmFnZS5ob3Jpem9udGFsKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAxOlxuICAgICAgICAgIGlmICh0YWJsZS5jb3ZlcmFnZS52ZXJ0aWNhbCB8fCB0YWJsZS5jb3ZlcmFnZS52YXJpYXRpb24pIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQga2VybmluZyB0YWJsZSB2ZXJzaW9uICR7dGFibGUudmVyc2lvbn1gKTtcbiAgICAgIH1cblxuICAgICAgbGV0IHZhbCA9IDA7XG4gICAgICBsZXQgcyA9IHRhYmxlLnN1YnRhYmxlO1xuICAgICAgc3dpdGNoICh0YWJsZS5mb3JtYXQpIHtcbiAgICAgICAgY2FzZSAwOlxuICAgICAgICAgIGxldCBwYWlySWR4ID0gYmluYXJ5U2VhcmNoKHMucGFpcnMsIGZ1bmN0aW9uIChwYWlyKSB7XG4gICAgICAgICAgICByZXR1cm4gKGxlZnQgLSBwYWlyLmxlZnQpIHx8IChyaWdodCAtIHBhaXIucmlnaHQpO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgaWYgKHBhaXJJZHggPj0gMCkge1xuICAgICAgICAgICAgdmFsID0gcy5wYWlyc1twYWlySWR4XS52YWx1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgbGV0IGxlZnRPZmZzZXQgPSAwLCByaWdodE9mZnNldCA9IDA7XG4gICAgICAgICAgaWYgKGxlZnQgPj0gcy5sZWZ0VGFibGUuZmlyc3RHbHlwaCAmJiBsZWZ0IDwgcy5sZWZ0VGFibGUuZmlyc3RHbHlwaCArIHMubGVmdFRhYmxlLm5HbHlwaHMpIHtcbiAgICAgICAgICAgIGxlZnRPZmZzZXQgPSBzLmxlZnRUYWJsZS5vZmZzZXRzW2xlZnQgLSBzLmxlZnRUYWJsZS5maXJzdEdseXBoXTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGVmdE9mZnNldCA9IHMuYXJyYXkub2ZmO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChyaWdodCA+PSBzLnJpZ2h0VGFibGUuZmlyc3RHbHlwaCAmJiByaWdodCA8IHMucmlnaHRUYWJsZS5maXJzdEdseXBoICsgcy5yaWdodFRhYmxlLm5HbHlwaHMpIHtcbiAgICAgICAgICAgIHJpZ2h0T2Zmc2V0ID0gcy5yaWdodFRhYmxlLm9mZnNldHNbcmlnaHQgLSBzLnJpZ2h0VGFibGUuZmlyc3RHbHlwaF07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGV0IGluZGV4ID0gKGxlZnRPZmZzZXQgKyByaWdodE9mZnNldCAtIHMuYXJyYXkub2ZmKSAvIDI7XG4gICAgICAgICAgdmFsID0gcy5hcnJheS52YWx1ZXMuZ2V0KGluZGV4KTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIDM6XG4gICAgICAgICAgaWYgKGxlZnQgPj0gcy5nbHlwaENvdW50IHx8IHJpZ2h0ID49IHMuZ2x5cGhDb3VudCkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdmFsID0gcy5rZXJuVmFsdWVbcy5rZXJuSW5kZXhbcy5sZWZ0Q2xhc3NbbGVmdF0gKiBzLnJpZ2h0Q2xhc3NDb3VudCArIHMucmlnaHRDbGFzc1tyaWdodF1dXTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQga2VybmluZyBzdWItdGFibGUgZm9ybWF0ICR7dGFibGUuZm9ybWF0fWApO1xuICAgICAgfVxuXG4gICAgICAvLyBNaWNyb3NvZnQgc3VwcG9ydHMgdGhlIG92ZXJyaWRlIGZsYWcsIHdoaWNoIHJlc2V0cyB0aGUgcmVzdWx0XG4gICAgICAvLyBPdGhlcndpc2UsIHRoZSBzdW0gb2YgdGhlIHJlc3VsdHMgZnJvbSBhbGwgc3VidGFibGVzIGlzIHJldHVybmVkXG4gICAgICBpZiAodGFibGUuY292ZXJhZ2Uub3ZlcnJpZGUpIHtcbiAgICAgICAgcmVzID0gdmFsO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzICs9IHZhbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG4iLCAiaW1wb3J0IHtnZXRDb21iaW5pbmdDbGFzc30gZnJvbSAndW5pY29kZS1wcm9wZXJ0aWVzJztcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIHVzZWQgd2hlbiBHUE9TIGRvZXMgbm90IGRlZmluZSAnbWFyaycgb3IgJ21rbWsnIGZlYXR1cmVzXG4gKiBmb3IgcG9zaXRpb25pbmcgbWFya3MgcmVsYXRpdmUgdG8gYmFzZSBnbHlwaHMuIEl0IHVzZXMgdGhlIHVuaWNvZGVcbiAqIGNvbWJpbmluZyBjbGFzcyBwcm9wZXJ0eSB0byBwb3NpdGlvbiBtYXJrcy5cbiAqXG4gKiBCYXNlZCBvbiBjb2RlIGZyb20gSGFyZmJ1enosIHRoYW5rcyFcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9iZWhkYWQvaGFyZmJ1enovYmxvYi9tYXN0ZXIvc3JjL2hiLW90LXNoYXBlLWZhbGxiYWNrLmNjXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFVuaWNvZGVMYXlvdXRFbmdpbmUge1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgfVxuXG4gIHBvc2l0aW9uR2x5cGhzKGdseXBocywgcG9zaXRpb25zKSB7XG4gICAgLy8gZmluZCBlYWNoIGJhc2UgKyBtYXJrIGNsdXN0ZXIsIGFuZCBwb3NpdGlvbiB0aGUgbWFya3MgcmVsYXRpdmUgdG8gdGhlIGJhc2VcbiAgICBsZXQgY2x1c3RlclN0YXJ0ID0gMDtcbiAgICBsZXQgY2x1c3RlckVuZCA9IDA7XG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGdseXBocy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGxldCBnbHlwaCA9IGdseXBoc1tpbmRleF07XG4gICAgICBpZiAoZ2x5cGguaXNNYXJrKSB7IC8vIFRPRE86IGhhbmRsZSBsaWdhdHVyZXNcbiAgICAgICAgY2x1c3RlckVuZCA9IGluZGV4O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGNsdXN0ZXJTdGFydCAhPT0gY2x1c3RlckVuZCkge1xuICAgICAgICAgIHRoaXMucG9zaXRpb25DbHVzdGVyKGdseXBocywgcG9zaXRpb25zLCBjbHVzdGVyU3RhcnQsIGNsdXN0ZXJFbmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgY2x1c3RlclN0YXJ0ID0gY2x1c3RlckVuZCA9IGluZGV4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChjbHVzdGVyU3RhcnQgIT09IGNsdXN0ZXJFbmQpIHtcbiAgICAgIHRoaXMucG9zaXRpb25DbHVzdGVyKGdseXBocywgcG9zaXRpb25zLCBjbHVzdGVyU3RhcnQsIGNsdXN0ZXJFbmQpO1xuICAgIH1cblxuICAgIHJldHVybiBwb3NpdGlvbnM7XG4gIH1cblxuICBwb3NpdGlvbkNsdXN0ZXIoZ2x5cGhzLCBwb3NpdGlvbnMsIGNsdXN0ZXJTdGFydCwgY2x1c3RlckVuZCkge1xuICAgIGxldCBiYXNlID0gZ2x5cGhzW2NsdXN0ZXJTdGFydF07XG4gICAgbGV0IGJhc2VCb3ggPSBiYXNlLmNib3guY29weSgpO1xuXG4gICAgLy8gYWRqdXN0IGJvdW5kaW5nIGJveCBmb3IgbGlnYXR1cmUgZ2x5cGhzXG4gICAgaWYgKGJhc2UuY29kZVBvaW50cy5sZW5ndGggPiAxKSB7XG4gICAgICAvLyBMVFIuIFRPRE86IFJUTCBzdXBwb3J0LlxuICAgICAgYmFzZUJveC5taW5YICs9ICgoYmFzZS5jb2RlUG9pbnRzLmxlbmd0aCAtIDEpICogYmFzZUJveC53aWR0aCkgLyBiYXNlLmNvZGVQb2ludHMubGVuZ3RoO1xuICAgIH1cblxuICAgIGxldCB4T2Zmc2V0ID0gLXBvc2l0aW9uc1tjbHVzdGVyU3RhcnRdLnhBZHZhbmNlO1xuICAgIGxldCB5T2Zmc2V0ID0gMDtcbiAgICBsZXQgeUdhcCA9IHRoaXMuZm9udC51bml0c1BlckVtIC8gMTY7XG5cbiAgICAvLyBwb3NpdGlvbiBlYWNoIG9mIHRoZSBtYXJrIGdseXBocyByZWxhdGl2ZSB0byB0aGUgYmFzZSBnbHlwaFxuICAgIGZvciAobGV0IGluZGV4ID0gY2x1c3RlclN0YXJ0ICsgMTsgaW5kZXggPD0gY2x1c3RlckVuZDsgaW5kZXgrKykge1xuICAgICAgbGV0IG1hcmsgPSBnbHlwaHNbaW5kZXhdO1xuICAgICAgbGV0IG1hcmtCb3ggPSBtYXJrLmNib3g7XG4gICAgICBsZXQgcG9zaXRpb24gPSBwb3NpdGlvbnNbaW5kZXhdO1xuXG4gICAgICBsZXQgY29tYmluaW5nQ2xhc3MgPSB0aGlzLmdldENvbWJpbmluZ0NsYXNzKG1hcmsuY29kZVBvaW50c1swXSk7XG5cbiAgICAgIGlmIChjb21iaW5pbmdDbGFzcyAhPT0gJ05vdF9SZW9yZGVyZWQnKSB7XG4gICAgICAgIHBvc2l0aW9uLnhPZmZzZXQgPSBwb3NpdGlvbi55T2Zmc2V0ID0gMDtcblxuICAgICAgICAvLyB4IHBvc2l0aW9uaW5nXG4gICAgICAgIHN3aXRjaCAoY29tYmluaW5nQ2xhc3MpIHtcbiAgICAgICAgICBjYXNlICdEb3VibGVfQWJvdmUnOlxuICAgICAgICAgIGNhc2UgJ0RvdWJsZV9CZWxvdyc6XG4gICAgICAgICAgICAvLyBMVFIuIFRPRE86IFJUTCBzdXBwb3J0LlxuICAgICAgICAgICAgcG9zaXRpb24ueE9mZnNldCArPSBiYXNlQm94Lm1pblggLSBtYXJrQm94LndpZHRoIC8gMiAtIG1hcmtCb3gubWluWDtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnQXR0YWNoZWRfQmVsb3dfTGVmdCc6XG4gICAgICAgICAgY2FzZSAnQmVsb3dfTGVmdCc6XG4gICAgICAgICAgY2FzZSAnQWJvdmVfTGVmdCc6XG4gICAgICAgICAgICAvLyBsZWZ0IGFsaWduXG4gICAgICAgICAgICBwb3NpdGlvbi54T2Zmc2V0ICs9IGJhc2VCb3gubWluWCAtIG1hcmtCb3gubWluWDtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnQXR0YWNoZWRfQWJvdmVfUmlnaHQnOlxuICAgICAgICAgIGNhc2UgJ0JlbG93X1JpZ2h0JzpcbiAgICAgICAgICBjYXNlICdBYm92ZV9SaWdodCc6XG4gICAgICAgICAgICAvLyByaWdodCBhbGlnblxuICAgICAgICAgICAgcG9zaXRpb24ueE9mZnNldCArPSBiYXNlQm94Lm1heFggLSBtYXJrQm94LndpZHRoIC0gbWFya0JveC5taW5YO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBkZWZhdWx0OiAvLyBBdHRhY2hlZF9CZWxvdywgQXR0YWNoZWRfQWJvdmUsIEJlbG93LCBBYm92ZSwgb3RoZXJcbiAgICAgICAgICAgIC8vIGNlbnRlciBhbGlnblxuICAgICAgICAgICAgcG9zaXRpb24ueE9mZnNldCArPSBiYXNlQm94Lm1pblggKyAoYmFzZUJveC53aWR0aCAtIG1hcmtCb3gud2lkdGgpIC8gMiAtIG1hcmtCb3gubWluWDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHkgcG9zaXRpb25pbmdcbiAgICAgICAgc3dpdGNoIChjb21iaW5pbmdDbGFzcykge1xuICAgICAgICAgIGNhc2UgJ0RvdWJsZV9CZWxvdyc6XG4gICAgICAgICAgY2FzZSAnQmVsb3dfTGVmdCc6XG4gICAgICAgICAgY2FzZSAnQmVsb3cnOlxuICAgICAgICAgIGNhc2UgJ0JlbG93X1JpZ2h0JzpcbiAgICAgICAgICBjYXNlICdBdHRhY2hlZF9CZWxvd19MZWZ0JzpcbiAgICAgICAgICBjYXNlICdBdHRhY2hlZF9CZWxvdyc6XG4gICAgICAgICAgICAvLyBhZGQgYSBzbWFsbCBnYXAgYmV0d2VlbiB0aGUgZ2x5cGhzIGlmIHRoZXkgYXJlIG5vdCBhdHRhY2hlZFxuICAgICAgICAgICAgaWYgKGNvbWJpbmluZ0NsYXNzID09PSAnQXR0YWNoZWRfQmVsb3dfTGVmdCcgfHwgY29tYmluaW5nQ2xhc3MgPT09ICdBdHRhY2hlZF9CZWxvdycpIHtcbiAgICAgICAgICAgICAgYmFzZUJveC5taW5ZICs9IHlHYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBvc2l0aW9uLnlPZmZzZXQgPSAtYmFzZUJveC5taW5ZIC0gbWFya0JveC5tYXhZO1xuICAgICAgICAgICAgYmFzZUJveC5taW5ZICs9IG1hcmtCb3guaGVpZ2h0O1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICdEb3VibGVfQWJvdmUnOlxuICAgICAgICAgIGNhc2UgJ0Fib3ZlX0xlZnQnOlxuICAgICAgICAgIGNhc2UgJ0Fib3ZlJzpcbiAgICAgICAgICBjYXNlICdBYm92ZV9SaWdodCc6XG4gICAgICAgICAgY2FzZSAnQXR0YWNoZWRfQWJvdmUnOlxuICAgICAgICAgIGNhc2UgJ0F0dGFjaGVkX0Fib3ZlX1JpZ2h0JzpcbiAgICAgICAgICAgIC8vIGFkZCBhIHNtYWxsIGdhcCBiZXR3ZWVuIHRoZSBnbHlwaHMgaWYgdGhleSBhcmUgbm90IGF0dGFjaGVkXG4gICAgICAgICAgICBpZiAoY29tYmluaW5nQ2xhc3MgPT09ICdBdHRhY2hlZF9BYm92ZScgfHwgY29tYmluaW5nQ2xhc3MgPT09ICdBdHRhY2hlZF9BYm92ZV9SaWdodCcpIHtcbiAgICAgICAgICAgICAgYmFzZUJveC5tYXhZICs9IHlHYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHBvc2l0aW9uLnlPZmZzZXQgPSBiYXNlQm94Lm1heFkgLSBtYXJrQm94Lm1pblk7XG4gICAgICAgICAgICBiYXNlQm94Lm1heFkgKz0gbWFya0JveC5oZWlnaHQ7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIHBvc2l0aW9uLnhBZHZhbmNlID0gcG9zaXRpb24ueUFkdmFuY2UgPSAwO1xuICAgICAgICBwb3NpdGlvbi54T2Zmc2V0ICs9IHhPZmZzZXQ7XG4gICAgICAgIHBvc2l0aW9uLnlPZmZzZXQgKz0geU9mZnNldDtcblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgeE9mZnNldCAtPSBwb3NpdGlvbi54QWR2YW5jZTtcbiAgICAgICAgeU9mZnNldCAtPSBwb3NpdGlvbi55QWR2YW5jZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBnZXRDb21iaW5pbmdDbGFzcyhjb2RlUG9pbnQpIHtcbiAgICBsZXQgY29tYmluaW5nQ2xhc3MgPSBnZXRDb21iaW5pbmdDbGFzcyhjb2RlUG9pbnQpO1xuXG4gICAgLy8gVGhhaSAvIExhbyBuZWVkIHNvbWUgcGVyLWNoYXJhY3RlciB3b3JrXG4gICAgaWYgKChjb2RlUG9pbnQgJiB+MHhmZikgPT09IDB4MGUwMCkge1xuICAgICAgaWYgKGNvbWJpbmluZ0NsYXNzID09PSAnTm90X1Jlb3JkZXJlZCcpIHtcbiAgICAgICAgc3dpdGNoIChjb2RlUG9pbnQpIHtcbiAgICAgICAgICBjYXNlIDB4MGUzMTpcbiAgICAgICAgICBjYXNlIDB4MGUzNDpcbiAgICAgICAgICBjYXNlIDB4MGUzNTpcbiAgICAgICAgICBjYXNlIDB4MGUzNjpcbiAgICAgICAgICBjYXNlIDB4MGUzNzpcbiAgICAgICAgICBjYXNlIDB4MGU0NzpcbiAgICAgICAgICBjYXNlIDB4MGU0YzpcbiAgICAgICAgICBjYXNlIDB4MGUzZDpcbiAgICAgICAgICBjYXNlIDB4MGU0ZTpcbiAgICAgICAgICAgIHJldHVybiAnQWJvdmVfUmlnaHQnO1xuXG4gICAgICAgICAgY2FzZSAweDBlYjE6XG4gICAgICAgICAgY2FzZSAweDBlYjQ6XG4gICAgICAgICAgY2FzZSAweDBlYjU6XG4gICAgICAgICAgY2FzZSAweDBlYjY6XG4gICAgICAgICAgY2FzZSAweDBlYjc6XG4gICAgICAgICAgY2FzZSAweDBlYmI6XG4gICAgICAgICAgY2FzZSAweDBlY2M6XG4gICAgICAgICAgY2FzZSAweDBlY2Q6XG4gICAgICAgICAgICByZXR1cm4gJ0Fib3ZlJztcblxuICAgICAgICAgIGNhc2UgMHgwZWJjOlxuICAgICAgICAgICAgcmV0dXJuICdCZWxvdyc7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoY29kZVBvaW50ID09PSAweDBlM2EpIHsgLy8gdmlyYW1hXG4gICAgICAgIHJldHVybiAnQmVsb3dfUmlnaHQnO1xuICAgICAgfVxuICAgIH1cblxuICAgIHN3aXRjaCAoY29tYmluaW5nQ2xhc3MpIHtcbiAgICAgIC8vIEhlYnJld1xuXG4gICAgICBjYXNlICdDQ0MxMCc6IC8vIHNoZXZhXG4gICAgICBjYXNlICdDQ0MxMSc6IC8vIGhhdGFmIHNlZ29sXG4gICAgICBjYXNlICdDQ0MxMic6IC8vIGhhdGFmIHBhdGFoXG4gICAgICBjYXNlICdDQ0MxMyc6IC8vIGhhdGFmIHFhbWF0c1xuICAgICAgY2FzZSAnQ0NDMTQnOiAvLyBoaXJpcVxuICAgICAgY2FzZSAnQ0NDMTUnOiAvLyB0c2VyZVxuICAgICAgY2FzZSAnQ0NDMTYnOiAvLyBzZWdvbFxuICAgICAgY2FzZSAnQ0NDMTcnOiAvLyBwYXRhaFxuICAgICAgY2FzZSAnQ0NDMTgnOiAvLyBxYW1hdHNcbiAgICAgIGNhc2UgJ0NDQzIwJzogLy8gcXVidXRzXG4gICAgICBjYXNlICdDQ0MyMic6IC8vIG1ldGVnXG4gICAgICAgIHJldHVybiAnQmVsb3cnO1xuXG4gICAgICBjYXNlICdDQ0MyMyc6IC8vIHJhZmVcbiAgICAgICAgcmV0dXJuICdBdHRhY2hlZF9BYm92ZSc7XG5cbiAgICAgIGNhc2UgJ0NDQzI0JzogLy8gc2hpbiBkb3RcbiAgICAgICAgcmV0dXJuICdBYm92ZV9SaWdodCc7XG5cbiAgICAgIGNhc2UgJ0NDQzI1JzogLy8gc2luIGRvdFxuICAgICAgY2FzZSAnQ0NDMTknOiAvLyBob2xhbVxuICAgICAgICByZXR1cm4gJ0Fib3ZlX0xlZnQnO1xuXG4gICAgICBjYXNlICdDQ0MyNic6IC8vIHBvaW50IHZhcmlrYVxuICAgICAgICByZXR1cm4gJ0Fib3ZlJztcblxuICAgICAgY2FzZSAnQ0NDMjEnOiAvLyBkYWdlc2hcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIC8vIEFyYWJpYyBhbmQgU3lyaWFjXG5cbiAgICAgIGNhc2UgJ0NDQzI3JzogLy8gZmF0aGF0YW5cbiAgICAgIGNhc2UgJ0NDQzI4JzogLy8gZGFtbWF0YW5cbiAgICAgIGNhc2UgJ0NDQzMwJzogLy8gZmF0aGFcbiAgICAgIGNhc2UgJ0NDQzMxJzogLy8gZGFtbWFcbiAgICAgIGNhc2UgJ0NDQzMzJzogLy8gc2hhZGRhXG4gICAgICBjYXNlICdDQ0MzNCc6IC8vIHN1a3VuXG4gICAgICBjYXNlICdDQ0MzNSc6IC8vIHN1cGVyc2NyaXB0IGFsZWZcbiAgICAgIGNhc2UgJ0NDQzM2JzogLy8gc3VwZXJzY3JpcHQgYWxhcGhcbiAgICAgICAgcmV0dXJuICdBYm92ZSc7XG5cbiAgICAgIGNhc2UgJ0NDQzI5JzogLy8ga2FzcmF0YW5cbiAgICAgIGNhc2UgJ0NDQzMyJzogLy8ga2FzcmFcbiAgICAgICAgcmV0dXJuICdCZWxvdyc7XG5cbiAgICAgIC8vIFRoYWlcblxuICAgICAgY2FzZSAnQ0NDMTAzJzogLy8gc2FyYSB1IC8gc2FyYSB1dVxuICAgICAgICByZXR1cm4gJ0JlbG93X1JpZ2h0JztcblxuICAgICAgY2FzZSAnQ0NDMTA3JzogLy8gbWFpXG4gICAgICAgIHJldHVybiAnQWJvdmVfUmlnaHQnO1xuXG4gICAgICAvLyBMYW9cblxuICAgICAgY2FzZSAnQ0NDMTE4JzogLy8gc2lnbiB1IC8gc2lnbiB1dVxuICAgICAgICByZXR1cm4gJ0JlbG93JztcblxuICAgICAgY2FzZSAnQ0NDMTIyJzogLy8gbWFpXG4gICAgICAgIHJldHVybiAnQWJvdmUnO1xuXG4gICAgICAvLyBUaWJldGFuXG5cbiAgICAgIGNhc2UgJ0NDQzEyOSc6IC8vIHNpZ24gYWFcbiAgICAgIGNhc2UgJ0NDQzEzMic6IC8vIHNpZ24gdVxuICAgICAgICByZXR1cm4gJ0JlbG93JztcblxuICAgICAgY2FzZSAnQ0NDMTMwJzogLy8gc2lnbiBpXG4gICAgICAgIHJldHVybiAnQWJvdmUnO1xuICAgIH1cblxuICAgIHJldHVybiBjb21iaW5pbmdDbGFzcztcbiAgfVxufVxuIiwgImltcG9ydCBCQm94IGZyb20gJy4uL2dseXBoL0JCb3gnO1xuaW1wb3J0ICogYXMgU2NyaXB0IGZyb20gJy4uL2xheW91dC9TY3JpcHQnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBydW4gb2YgR2x5cGggYW5kIEdseXBoUG9zaXRpb24gb2JqZWN0cy5cbiAqIFJldHVybmVkIGJ5IHRoZSBmb250IGxheW91dCBtZXRob2QuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdseXBoUnVuIHtcbiAgY29uc3RydWN0b3IoZ2x5cGhzLCBmZWF0dXJlcywgc2NyaXB0LCBsYW5ndWFnZSwgZGlyZWN0aW9uKSB7XG4gICAgLyoqXG4gICAgICogQW4gYXJyYXkgb2YgR2x5cGggb2JqZWN0cyBpbiB0aGUgcnVuXG4gICAgICogQHR5cGUge0dseXBoW119XG4gICAgICovXG4gICAgdGhpcy5nbHlwaHMgPSBnbHlwaHM7XG5cbiAgICAvKipcbiAgICAgKiBBbiBhcnJheSBvZiBHbHlwaFBvc2l0aW9uIG9iamVjdHMgZm9yIGVhY2ggZ2x5cGggaW4gdGhlIHJ1blxuICAgICAqIEB0eXBlIHtHbHlwaFBvc2l0aW9uW119XG4gICAgICovXG4gICAgdGhpcy5wb3NpdGlvbnMgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNjcmlwdCB0aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHNoYXBpbmcuIFRoaXMgd2FzIGVpdGhlciBwYXNzZWQgaW4gb3IgZGV0ZWN0ZWQgYXV0b21hdGljYWxseS5cbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgICAqL1xuICAgIHRoaXMuc2NyaXB0ID0gc2NyaXB0O1xuXG4gICAgLyoqXG4gICAgICogVGhlIGxhbmd1YWdlIHJlcXVlc3RlZCBmb3Igc2hhcGluZywgYXMgcGFzc2VkIGluLiBJZiBgbnVsbGAsIHRoZSBkZWZhdWx0IGxhbmd1YWdlIGZvciB0aGVcbiAgICAgKiBzY3JpcHQgd2FzIHVzZWQuXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICB0aGlzLmxhbmd1YWdlID0gbGFuZ3VhZ2UgfHwgbnVsbDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBkaXJlY3Rpb24gcmVxdWVzdGVkIGZvciBzaGFwaW5nLCBhcyBwYXNzZWQgaW4gKGVpdGhlciBsdHIgb3IgcnRsKS5cbiAgICAgKiBJZiBgbnVsbGAsIHRoZSBkZWZhdWx0IGRpcmVjdGlvbiBvZiB0aGUgc2NyaXB0IGlzIHVzZWQuXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICB0aGlzLmRpcmVjdGlvbiA9IGRpcmVjdGlvbiB8fCBTY3JpcHQuZGlyZWN0aW9uKHNjcmlwdCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZmVhdHVyZXMgcmVxdWVzdGVkIGR1cmluZyBzaGFwaW5nLiBUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgdXNlclxuICAgICAqIHNwZWNpZmllZCBmZWF0dXJlcyBhbmQgZmVhdHVyZXMgY2hvc2VuIGJ5IHRoZSBzaGFwZXIuXG4gICAgICogQHR5cGUge29iamVjdH1cbiAgICAgKi9cbiAgICB0aGlzLmZlYXR1cmVzID0ge307XG5cbiAgICAvLyBDb252ZXJ0IGZlYXR1cmVzIHRvIGFuIG9iamVjdFxuICAgIGlmIChBcnJheS5pc0FycmF5KGZlYXR1cmVzKSkge1xuICAgICAgZm9yIChsZXQgdGFnIG9mIGZlYXR1cmVzKSB7XG4gICAgICAgIHRoaXMuZmVhdHVyZXNbdGFnXSA9IHRydWU7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZmVhdHVyZXMgPT09ICdvYmplY3QnKSB7XG4gICAgICB0aGlzLmZlYXR1cmVzID0gZmVhdHVyZXM7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0b3RhbCBhZHZhbmNlIHdpZHRoIG9mIHRoZSBydW4uXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgYWR2YW5jZVdpZHRoKCkge1xuICAgIGxldCB3aWR0aCA9IDA7XG4gICAgZm9yIChsZXQgcG9zaXRpb24gb2YgdGhpcy5wb3NpdGlvbnMpIHtcbiAgICAgIHdpZHRoICs9IHBvc2l0aW9uLnhBZHZhbmNlO1xuICAgIH1cblxuICAgIHJldHVybiB3aWR0aDtcbiAgfVxuXG4gLyoqXG4gICogVGhlIHRvdGFsIGFkdmFuY2UgaGVpZ2h0IG9mIHRoZSBydW4uXG4gICogQHR5cGUge251bWJlcn1cbiAgKi9cbiAgZ2V0IGFkdmFuY2VIZWlnaHQoKSB7XG4gICAgbGV0IGhlaWdodCA9IDA7XG4gICAgZm9yIChsZXQgcG9zaXRpb24gb2YgdGhpcy5wb3NpdGlvbnMpIHtcbiAgICAgIGhlaWdodCArPSBwb3NpdGlvbi55QWR2YW5jZTtcbiAgICB9XG5cbiAgICByZXR1cm4gaGVpZ2h0O1xuICB9XG5cbiAvKipcbiAgKiBUaGUgYm91bmRpbmcgYm94IGNvbnRhaW5pbmcgYWxsIGdseXBocyBpbiB0aGUgcnVuLlxuICAqIEB0eXBlIHtCQm94fVxuICAqL1xuICBnZXQgYmJveCgpIHtcbiAgICBsZXQgYmJveCA9IG5ldyBCQm94O1xuXG4gICAgbGV0IHggPSAwO1xuICAgIGxldCB5ID0gMDtcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy5nbHlwaHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICBsZXQgZ2x5cGggPSB0aGlzLmdseXBoc1tpbmRleF07XG4gICAgICBsZXQgcCA9IHRoaXMucG9zaXRpb25zW2luZGV4XTtcbiAgICAgIGxldCBiID0gZ2x5cGguYmJveDtcblxuICAgICAgYmJveC5hZGRQb2ludChiLm1pblggKyB4ICsgcC54T2Zmc2V0LCBiLm1pblkgKyB5ICsgcC55T2Zmc2V0KTtcbiAgICAgIGJib3guYWRkUG9pbnQoYi5tYXhYICsgeCArIHAueE9mZnNldCwgYi5tYXhZICsgeSArIHAueU9mZnNldCk7XG5cbiAgICAgIHggKz0gcC54QWR2YW5jZTtcbiAgICAgIHkgKz0gcC55QWR2YW5jZTtcbiAgICB9XG5cbiAgICByZXR1cm4gYmJveDtcbiAgfVxufVxuIiwgIi8qKlxuICogUmVwcmVzZW50cyBhIGdseXBoIGJvdW5kaW5nIGJveFxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCQm94IHtcbiAgY29uc3RydWN0b3IobWluWCA9IEluZmluaXR5LCBtaW5ZID0gSW5maW5pdHksIG1heFggPSAtSW5maW5pdHksIG1heFkgPSAtSW5maW5pdHkpIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbWluaW11bSBYIHBvc2l0aW9uIGluIHRoZSBib3VuZGluZyBib3hcbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgICAqL1xuICAgIHRoaXMubWluWCA9IG1pblg7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbWluaW11bSBZIHBvc2l0aW9uIGluIHRoZSBib3VuZGluZyBib3hcbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgICAqL1xuICAgIHRoaXMubWluWSA9IG1pblk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbWF4bWltdW0gWCBwb3NpdGlvbiBpbiB0aGUgYm91bmRpbmcgYm94XG4gICAgICogQHR5cGUge251bWJlcn1cbiAgICAgKi9cbiAgICB0aGlzLm1heFggPSBtYXhYO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG1heG1pbXVtIFkgcG9zaXRpb24gaW4gdGhlIGJvdW5kaW5nIGJveFxuICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICovXG4gICAgdGhpcy5tYXhZID0gbWF4WTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgd2lkdGggb2YgdGhlIGJvdW5kaW5nIGJveFxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgZ2V0IHdpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLm1heFggLSB0aGlzLm1pblg7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGhlaWdodCBvZiB0aGUgYm91bmRpbmcgYm94XG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgaGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLm1heFkgLSB0aGlzLm1pblk7XG4gIH1cblxuICBhZGRQb2ludCh4LCB5KSB7XG4gICAgaWYgKE1hdGguYWJzKHgpICE9PSBJbmZpbml0eSkge1xuICAgICAgaWYgKHggPCB0aGlzLm1pblgpIHtcbiAgICAgICAgdGhpcy5taW5YID0geDtcbiAgICAgIH1cblxuICAgICAgaWYgKHggPiB0aGlzLm1heFgpIHtcbiAgICAgICAgdGhpcy5tYXhYID0geDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoTWF0aC5hYnMoeSkgIT09IEluZmluaXR5KSB7XG4gICAgICBpZiAoeSA8IHRoaXMubWluWSkge1xuICAgICAgICB0aGlzLm1pblkgPSB5O1xuICAgICAgfVxuXG4gICAgICBpZiAoeSA+IHRoaXMubWF4WSkge1xuICAgICAgICB0aGlzLm1heFkgPSB5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvcHkoKSB7XG4gICAgcmV0dXJuIG5ldyBCQm94KHRoaXMubWluWCwgdGhpcy5taW5ZLCB0aGlzLm1heFgsIHRoaXMubWF4WSk7XG4gIH1cbn1cbiIsICJpbXBvcnQge2dldFNjcmlwdH0gZnJvbSAndW5pY29kZS1wcm9wZXJ0aWVzJztcblxuLy8gVGhpcyBtYXBzIHRoZSBVbmljb2RlIFNjcmlwdCBwcm9wZXJ0eSB0byBhbiBPcGVuVHlwZSBzY3JpcHQgdGFnXG4vLyBEYXRhIGZyb20gaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3R5cG9ncmFwaHkvb3RzcGVjL3NjcmlwdHRhZ3MuaHRtXG4vLyBhbmQgaHR0cDovL3d3dy51bmljb2RlLm9yZy9QdWJsaWMvVU5JREFUQS9Qcm9wZXJ0eVZhbHVlQWxpYXNlcy50eHQuXG5jb25zdCBVTklDT0RFX1NDUklQVFMgPSB7XG4gIENhdWNhc2lhbl9BbGJhbmlhbjogJ2FnaGInLFxuICBBcmFiaWM6ICdhcmFiJyxcbiAgSW1wZXJpYWxfQXJhbWFpYzogJ2FybWknLFxuICBBcm1lbmlhbjogJ2FybW4nLFxuICBBdmVzdGFuOiAnYXZzdCcsXG4gIEJhbGluZXNlOiAnYmFsaScsXG4gIEJhbXVtOiAnYmFtdScsXG4gIEJhc3NhX1ZhaDogJ2Jhc3MnLFxuICBCYXRhazogJ2JhdGsnLFxuICBCZW5nYWxpOiBbJ2JuZzInLCAnYmVuZyddLFxuICBCb3BvbW9mbzogJ2JvcG8nLFxuICBCcmFobWk6ICdicmFoJyxcbiAgQnJhaWxsZTogJ2JyYWknLFxuICBCdWdpbmVzZTogJ2J1Z2knLFxuICBCdWhpZDogJ2J1aGQnLFxuICBDaGFrbWE6ICdjYWttJyxcbiAgQ2FuYWRpYW5fQWJvcmlnaW5hbDogJ2NhbnMnLFxuICBDYXJpYW46ICdjYXJpJyxcbiAgQ2hhbTogJ2NoYW0nLFxuICBDaGVyb2tlZTogJ2NoZXInLFxuICBDb3B0aWM6ICdjb3B0JyxcbiAgQ3lwcmlvdDogJ2NwcnQnLFxuICBDeXJpbGxpYzogJ2N5cmwnLFxuICBEZXZhbmFnYXJpOiBbJ2RldjInLCAnZGV2YSddLFxuICBEZXNlcmV0OiAnZHNydCcsXG4gIER1cGxveWFuOiAnZHVwbCcsXG4gIEVneXB0aWFuX0hpZXJvZ2x5cGhzOiAnZWd5cCcsXG4gIEVsYmFzYW46ICdlbGJhJyxcbiAgRXRoaW9waWM6ICdldGhpJyxcbiAgR2VvcmdpYW46ICdnZW9yJyxcbiAgR2xhZ29saXRpYzogJ2dsYWcnLFxuICBHb3RoaWM6ICdnb3RoJyxcbiAgR3JhbnRoYTogJ2dyYW4nLFxuICBHcmVlazogJ2dyZWsnLFxuICBHdWphcmF0aTogWydnanIyJywgJ2d1anInXSxcbiAgR3VybXVraGk6IFsnZ3VyMicsICdndXJ1J10sXG4gIEhhbmd1bDogJ2hhbmcnLFxuICBIYW46ICdoYW5pJyxcbiAgSGFudW5vbzogJ2hhbm8nLFxuICBIZWJyZXc6ICdoZWJyJyxcbiAgSGlyYWdhbmE6ICdoaXJhJyxcbiAgUGFoYXdoX0htb25nOiAnaG1uZycsXG4gIEthdGFrYW5hX09yX0hpcmFnYW5hOiAnaHJrdCcsXG4gIE9sZF9JdGFsaWM6ICdpdGFsJyxcbiAgSmF2YW5lc2U6ICdqYXZhJyxcbiAgS2F5YWhfTGk6ICdrYWxpJyxcbiAgS2F0YWthbmE6ICdrYW5hJyxcbiAgS2hhcm9zaHRoaTogJ2toYXInLFxuICBLaG1lcjogJ2tobXInLFxuICBLaG9qa2k6ICdraG9qJyxcbiAgS2FubmFkYTogWydrbmQyJywgJ2tuZGEnXSxcbiAgS2FpdGhpOiAna3RoaScsXG4gIFRhaV9UaGFtOiAnbGFuYScsXG4gIExhbzogJ2xhbyAnLFxuICBMYXRpbjogJ2xhdG4nLFxuICBMZXBjaGE6ICdsZXBjJyxcbiAgTGltYnU6ICdsaW1iJyxcbiAgTGluZWFyX0E6ICdsaW5hJyxcbiAgTGluZWFyX0I6ICdsaW5iJyxcbiAgTGlzdTogJ2xpc3UnLFxuICBMeWNpYW46ICdseWNpJyxcbiAgTHlkaWFuOiAnbHlkaScsXG4gIE1haGFqYW5pOiAnbWFoaicsXG4gIE1hbmRhaWM6ICdtYW5kJyxcbiAgTWFuaWNoYWVhbjogJ21hbmknLFxuICBNZW5kZV9LaWtha3VpOiAnbWVuZCcsXG4gIE1lcm9pdGljX0N1cnNpdmU6ICdtZXJjJyxcbiAgTWVyb2l0aWNfSGllcm9nbHlwaHM6ICdtZXJvJyxcbiAgTWFsYXlhbGFtOiBbJ21sbTInLCAnbWx5bSddLFxuICBNb2RpOiAnbW9kaScsXG4gIE1vbmdvbGlhbjogJ21vbmcnLFxuICBNcm86ICdtcm9vJyxcbiAgTWVldGVpX01heWVrOiAnbXRlaScsXG4gIE15YW5tYXI6IFsnbXltMicsICdteW1yJ10sXG4gIE9sZF9Ob3J0aF9BcmFiaWFuOiAnbmFyYicsXG4gIE5hYmF0YWVhbjogJ25iYXQnLFxuICBOa286ICdua28gJyxcbiAgT2doYW06ICdvZ2FtJyxcbiAgT2xfQ2hpa2k6ICdvbGNrJyxcbiAgT2xkX1R1cmtpYzogJ29ya2gnLFxuICBPcml5YTogWydvcnkyJywgJ29yeWEnXSxcbiAgT3NtYW55YTogJ29zbWEnLFxuICBQYWxteXJlbmU6ICdwYWxtJyxcbiAgUGF1X0Npbl9IYXU6ICdwYXVjJyxcbiAgT2xkX1Blcm1pYzogJ3Blcm0nLFxuICBQaGFnc19QYTogJ3BoYWcnLFxuICBJbnNjcmlwdGlvbmFsX1BhaGxhdmk6ICdwaGxpJyxcbiAgUHNhbHRlcl9QYWhsYXZpOiAncGhscCcsXG4gIFBob2VuaWNpYW46ICdwaG54JyxcbiAgTWlhbzogJ3BscmQnLFxuICBJbnNjcmlwdGlvbmFsX1BhcnRoaWFuOiAncHJ0aScsXG4gIFJlamFuZzogJ3JqbmcnLFxuICBSdW5pYzogJ3J1bnInLFxuICBTYW1hcml0YW46ICdzYW1yJyxcbiAgT2xkX1NvdXRoX0FyYWJpYW46ICdzYXJiJyxcbiAgU2F1cmFzaHRyYTogJ3NhdXInLFxuICBTaGF2aWFuOiAnc2hhdycsXG4gIFNoYXJhZGE6ICdzaHJkJyxcbiAgU2lkZGhhbTogJ3NpZGQnLFxuICBLaHVkYXdhZGk6ICdzaW5kJyxcbiAgU2luaGFsYTogJ3NpbmgnLFxuICBTb3JhX1NvbXBlbmc6ICdzb3JhJyxcbiAgU3VuZGFuZXNlOiAnc3VuZCcsXG4gIFN5bG90aV9OYWdyaTogJ3N5bG8nLFxuICBTeXJpYWM6ICdzeXJjJyxcbiAgVGFnYmFud2E6ICd0YWdiJyxcbiAgVGFrcmk6ICd0YWtyJyxcbiAgVGFpX0xlOiAndGFsZScsXG4gIE5ld19UYWlfTHVlOiAndGFsdScsXG4gIFRhbWlsOiBbJ3RtbDInLCAndGFtbCddLFxuICBUYWlfVmlldDogJ3RhdnQnLFxuICBUZWx1Z3U6IFsndGVsMicsICd0ZWx1J10sXG4gIFRpZmluYWdoOiAndGZuZycsXG4gIFRhZ2Fsb2c6ICd0Z2xnJyxcbiAgVGhhYW5hOiAndGhhYScsXG4gIFRoYWk6ICd0aGFpJyxcbiAgVGliZXRhbjogJ3RpYnQnLFxuICBUaXJodXRhOiAndGlyaCcsXG4gIFVnYXJpdGljOiAndWdhcicsXG4gIFZhaTogJ3ZhaSAnLFxuICBXYXJhbmdfQ2l0aTogJ3dhcmEnLFxuICBPbGRfUGVyc2lhbjogJ3hwZW8nLFxuICBDdW5laWZvcm06ICd4c3V4JyxcbiAgWWk6ICd5aSAgJyxcbiAgSW5oZXJpdGVkOiAnemluaCcsXG4gIENvbW1vbjogJ3p5eXknLFxuICBVbmtub3duOiAnenp6eidcbn07XG5cbmNvbnN0IE9QRU5UWVBFX1NDUklQVFMgPSB7fTtcbmZvciAobGV0IHNjcmlwdCBpbiBVTklDT0RFX1NDUklQVFMpIHtcbiAgbGV0IHRhZyA9IFVOSUNPREVfU0NSSVBUU1tzY3JpcHRdO1xuICBpZiAoQXJyYXkuaXNBcnJheSh0YWcpKSB7XG4gICAgZm9yIChsZXQgdCBvZiB0YWcpIHtcbiAgICAgIE9QRU5UWVBFX1NDUklQVFNbdF0gPSBzY3JpcHQ7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIE9QRU5UWVBFX1NDUklQVFNbdGFnXSA9IHNjcmlwdDtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJvbVVuaWNvZGUoc2NyaXB0KSB7XG4gIHJldHVybiBVTklDT0RFX1NDUklQVFNbc2NyaXB0XTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb21PcGVuVHlwZSh0YWcpIHtcbiAgcmV0dXJuIE9QRU5UWVBFX1NDUklQVFNbdGFnXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvclN0cmluZyhzdHJpbmcpIHtcbiAgbGV0IGxlbiA9IHN0cmluZy5sZW5ndGg7XG4gIGxldCBpZHggPSAwO1xuICB3aGlsZSAoaWR4IDwgbGVuKSB7XG4gICAgbGV0IGNvZGUgPSBzdHJpbmcuY2hhckNvZGVBdChpZHgrKyk7XG5cbiAgICAvLyBDaGVjayBpZiB0aGlzIGlzIGEgaGlnaCBzdXJyb2dhdGVcbiAgICBpZiAoMHhkODAwIDw9IGNvZGUgJiYgY29kZSA8PSAweGRiZmYgJiYgaWR4IDwgbGVuKSB7XG4gICAgICBsZXQgbmV4dCA9IHN0cmluZy5jaGFyQ29kZUF0KGlkeCk7XG5cbiAgICAgIC8vIENoZWNrIGlmIHRoaXMgaXMgYSBsb3cgc3Vycm9nYXRlXG4gICAgICBpZiAoMHhkYzAwIDw9IG5leHQgJiYgbmV4dCA8PSAweGRmZmYpIHtcbiAgICAgICAgaWR4Kys7XG4gICAgICAgIGNvZGUgPSAoKGNvZGUgJiAweDNGRikgPDwgMTApICsgKG5leHQgJiAweDNGRikgKyAweDEwMDAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBzY3JpcHQgPSBnZXRTY3JpcHQoY29kZSk7XG4gICAgaWYgKHNjcmlwdCAhPT0gJ0NvbW1vbicgJiYgc2NyaXB0ICE9PSAnSW5oZXJpdGVkJyAmJiBzY3JpcHQgIT09ICdVbmtub3duJykge1xuICAgICAgcmV0dXJuIFVOSUNPREVfU0NSSVBUU1tzY3JpcHRdO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBVTklDT0RFX1NDUklQVFMuVW5rbm93bjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvckNvZGVQb2ludHMoY29kZVBvaW50cykge1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGNvZGVQb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICBsZXQgY29kZVBvaW50ID0gY29kZVBvaW50c1tpXTtcbiAgICBsZXQgc2NyaXB0ID0gZ2V0U2NyaXB0KGNvZGVQb2ludCk7XG4gICAgaWYgKHNjcmlwdCAhPT0gJ0NvbW1vbicgJiYgc2NyaXB0ICE9PSAnSW5oZXJpdGVkJyAmJiBzY3JpcHQgIT09ICdVbmtub3duJykge1xuICAgICAgcmV0dXJuIFVOSUNPREVfU0NSSVBUU1tzY3JpcHRdO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBVTklDT0RFX1NDUklQVFMuVW5rbm93bjtcbn1cblxuLy8gVGhlIHNjcmlwdHMgaW4gdGhpcyBtYXAgYXJlIHdyaXR0ZW4gZnJvbSByaWdodCB0byBsZWZ0XG5jb25zdCBSVEwgPSB7XG4gIGFyYWI6IHRydWUsICAgLy8gQXJhYmljXG4gIGhlYnI6IHRydWUsICAgLy8gSGVicmV3XG4gIHN5cmM6IHRydWUsICAgLy8gU3lyaWFjXG4gIHRoYWE6IHRydWUsICAgLy8gVGhhYW5hXG4gIGNwcnQ6IHRydWUsICAgLy8gQ3lwcmlvdCBTeWxsYWJhcnlcbiAga2hhcjogdHJ1ZSwgICAvLyBLaGFyb3N0aGlcbiAgcGhueDogdHJ1ZSwgICAvLyBQaG9lbmljaWFuXG4gICdua28gJzogdHJ1ZSwgLy8gTidLb1xuICBseWRpOiB0cnVlLCAgIC8vIEx5ZGlhblxuICBhdnN0OiB0cnVlLCAgIC8vIEF2ZXN0YW5cbiAgYXJtaTogdHJ1ZSwgICAvLyBJbXBlcmlhbCBBcmFtYWljXG4gIHBobGk6IHRydWUsICAgLy8gSW5zY3JpcHRpb25hbCBQYWhsYXZpXG4gIHBydGk6IHRydWUsICAgLy8gSW5zY3JpcHRpb25hbCBQYXJ0aGlhblxuICBzYXJiOiB0cnVlLCAgIC8vIE9sZCBTb3V0aCBBcmFiaWFuXG4gIG9ya2g6IHRydWUsICAgLy8gT2xkIFR1cmtpYywgT3JraG9uIFJ1bmljXG4gIHNhbXI6IHRydWUsICAgLy8gU2FtYXJpdGFuXG4gIG1hbmQ6IHRydWUsICAgLy8gTWFuZGFpYywgTWFuZGFlYW5cbiAgbWVyYzogdHJ1ZSwgICAvLyBNZXJvaXRpYyBDdXJzaXZlXG4gIG1lcm86IHRydWUsICAgLy8gTWVyb2l0aWMgSGllcm9nbHlwaHNcblxuICAvLyBVbmljb2RlIDcuMCAobm90IGxpc3RlZCBvbiBodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vdHlwb2dyYXBoeS9vdHNwZWMvc2NyaXB0dGFncy5odG0pXG4gIG1hbmk6IHRydWUsICAgLy8gTWFuaWNoYWVhblxuICBtZW5kOiB0cnVlLCAgIC8vIE1lbmRlIEtpa2FrdWlcbiAgbmJhdDogdHJ1ZSwgICAvLyBOYWJhdGFlYW5cbiAgbmFyYjogdHJ1ZSwgICAvLyBPbGQgTm9ydGggQXJhYmlhblxuICBwYWxtOiB0cnVlLCAgIC8vIFBhbG15cmVuZVxuICBwaGxwOiB0cnVlICAgIC8vIFBzYWx0ZXIgUGFobGF2aVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGRpcmVjdGlvbihzY3JpcHQpIHtcbiAgaWYgKFJUTFtzY3JpcHRdKSB7XG4gICAgcmV0dXJuICdydGwnO1xuICB9XG5cbiAgcmV0dXJuICdsdHInO1xufVxuIiwgIi8qKlxuICogUmVwcmVzZW50cyBwb3NpdGlvbmluZyBpbmZvcm1hdGlvbiBmb3IgYSBnbHlwaCBpbiBhIEdseXBoUnVuLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHbHlwaFBvc2l0aW9uIHtcbiAgY29uc3RydWN0b3IoeEFkdmFuY2UgPSAwLCB5QWR2YW5jZSA9IDAsIHhPZmZzZXQgPSAwLCB5T2Zmc2V0ID0gMCkge1xuICAgIC8qKlxuICAgICAqIFRoZSBhbW91bnQgdG8gbW92ZSB0aGUgdmlydHVhbCBwZW4gaW4gdGhlIFggZGlyZWN0aW9uIGFmdGVyIHJlbmRlcmluZyB0aGlzIGdseXBoLlxuICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICovXG4gICAgdGhpcy54QWR2YW5jZSA9IHhBZHZhbmNlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGFtb3VudCB0byBtb3ZlIHRoZSB2aXJ0dWFsIHBlbiBpbiB0aGUgWSBkaXJlY3Rpb24gYWZ0ZXIgcmVuZGVyaW5nIHRoaXMgZ2x5cGguXG4gICAgICogQHR5cGUge251bWJlcn1cbiAgICAgKi9cbiAgICB0aGlzLnlBZHZhbmNlID0geUFkdmFuY2U7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgb2Zmc2V0IGZyb20gdGhlIHBlbiBwb3NpdGlvbiBpbiB0aGUgWCBkaXJlY3Rpb24gYXQgd2hpY2ggdG8gcmVuZGVyIHRoaXMgZ2x5cGguXG4gICAgICogQHR5cGUge251bWJlcn1cbiAgICAgKi9cbiAgICB0aGlzLnhPZmZzZXQgPSB4T2Zmc2V0O1xuXG4gICAgLyoqXG4gICAgICogVGhlIG9mZnNldCBmcm9tIHRoZSBwZW4gcG9zaXRpb24gaW4gdGhlIFkgZGlyZWN0aW9uIGF0IHdoaWNoIHRvIHJlbmRlciB0aGlzIGdseXBoLlxuICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICovXG4gICAgdGhpcy55T2Zmc2V0ID0geU9mZnNldDtcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIEFBVEZlYXR1cmVNYXAgZnJvbSAnLi9BQVRGZWF0dXJlTWFwJztcbmltcG9ydCAqIGFzIFNjcmlwdCBmcm9tICcuLi9sYXlvdXQvU2NyaXB0JztcbmltcG9ydCBBQVRNb3J4UHJvY2Vzc29yIGZyb20gJy4vQUFUTW9yeFByb2Nlc3Nvcic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFBVExheW91dEVuZ2luZSB7XG4gIGNvbnN0cnVjdG9yKGZvbnQpIHtcbiAgICB0aGlzLmZvbnQgPSBmb250O1xuICAgIHRoaXMubW9yeFByb2Nlc3NvciA9IG5ldyBBQVRNb3J4UHJvY2Vzc29yKGZvbnQpO1xuICAgIHRoaXMuZmFsbGJhY2tQb3NpdGlvbiA9IGZhbHNlO1xuICB9XG5cbiAgc3Vic3RpdHV0ZShnbHlwaFJ1bikge1xuICAgIC8vIEFBVCBleHBlY3RzIHRoZSBnbHlwaHMgdG8gYmUgaW4gdmlzdWFsIG9yZGVyIHByaW9yIHRvIG1vcnggcHJvY2Vzc2luZyxcbiAgICAvLyBzbyByZXZlcnNlIHRoZSBnbHlwaHMgaWYgdGhlIHNjcmlwdCBpcyByaWdodC10by1sZWZ0LlxuICAgIGlmIChnbHlwaFJ1bi5kaXJlY3Rpb24gPT09ICdydGwnKSB7XG4gICAgICBnbHlwaFJ1bi5nbHlwaHMucmV2ZXJzZSgpO1xuICAgIH1cblxuICAgIHRoaXMubW9yeFByb2Nlc3Nvci5wcm9jZXNzKGdseXBoUnVuLmdseXBocywgQUFURmVhdHVyZU1hcC5tYXBPVFRvQUFUKGdseXBoUnVuLmZlYXR1cmVzKSk7XG4gIH1cblxuICBnZXRBdmFpbGFibGVGZWF0dXJlcyhzY3JpcHQsIGxhbmd1YWdlKSB7XG4gICAgcmV0dXJuIEFBVEZlYXR1cmVNYXAubWFwQUFUVG9PVCh0aGlzLm1vcnhQcm9jZXNzb3IuZ2V0U3VwcG9ydGVkRmVhdHVyZXMoKSk7XG4gIH1cblxuICBzdHJpbmdzRm9yR2x5cGgoZ2lkKSB7XG4gICAgbGV0IGdseXBoU3RyaW5ncyA9IHRoaXMubW9yeFByb2Nlc3Nvci5nZW5lcmF0ZUlucHV0cyhnaWQpO1xuICAgIGxldCByZXN1bHQgPSBuZXcgU2V0O1xuXG4gICAgZm9yIChsZXQgZ2x5cGhzIG9mIGdseXBoU3RyaW5ncykge1xuICAgICAgdGhpcy5fYWRkU3RyaW5ncyhnbHlwaHMsIDAsIHJlc3VsdCwgJycpO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBfYWRkU3RyaW5ncyhnbHlwaHMsIGluZGV4LCBzdHJpbmdzLCBzdHJpbmcpIHtcbiAgICBsZXQgY29kZVBvaW50cyA9IHRoaXMuZm9udC5fY21hcFByb2Nlc3Nvci5jb2RlUG9pbnRzRm9yR2x5cGgoZ2x5cGhzW2luZGV4XSk7XG5cbiAgICBmb3IgKGxldCBjb2RlUG9pbnQgb2YgY29kZVBvaW50cykge1xuICAgICAgbGV0IHMgPSBzdHJpbmcgKyBTdHJpbmcuZnJvbUNvZGVQb2ludChjb2RlUG9pbnQpO1xuICAgICAgaWYgKGluZGV4IDwgZ2x5cGhzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgdGhpcy5fYWRkU3RyaW5ncyhnbHlwaHMsIGluZGV4ICsgMSwgc3RyaW5ncywgcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdHJpbmdzLmFkZChzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsICIvLyBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29tL2ZvbnRzL1RydWVUeXBlLVJlZmVyZW5jZS1NYW51YWwvUk0wOS9BcHBlbmRpeEYuaHRtbFxuLy8gYW5kIC9TeXN0ZW0vTGlicmFyeS9GcmFtZXdvcmtzL0NvcmVUZXh0LmZyYW1ld29yay9WZXJzaW9ucy9BL0hlYWRlcnMvU0ZOVExheW91dFR5cGVzLmggb24gYSBNYWNcbmNvbnN0IGZlYXR1cmVzID0ge1xuICBhbGxUeXBvZ3JhcGhpY0ZlYXR1cmVzOiB7XG4gICAgY29kZTogMCxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIGFsbFR5cGVGZWF0dXJlczogMFxuICB9LFxuICBsaWdhdHVyZXM6IHtcbiAgICBjb2RlOiAxLFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgcmVxdWlyZWRMaWdhdHVyZXM6IDAsXG4gICAgY29tbW9uTGlnYXR1cmVzOiAyLFxuICAgIHJhcmVMaWdhdHVyZXM6IDQsXG4gICAgLy8gbG9nb3M6IDZcbiAgICByZWJ1c1BpY3R1cmVzOiA4LFxuICAgIGRpcGh0aG9uZ0xpZ2F0dXJlczogMTAsXG4gICAgc3F1YXJlZExpZ2F0dXJlczogMTIsXG4gICAgYWJicmV2U3F1YXJlZExpZ2F0dXJlczogMTQsXG4gICAgc3ltYm9sTGlnYXR1cmVzOiAxNixcbiAgICBjb250ZXh0dWFsTGlnYXR1cmVzOiAxOCxcbiAgICBoaXN0b3JpY2FsTGlnYXR1cmVzOiAyMFxuICB9LFxuICBjdXJzaXZlQ29ubmVjdGlvbjoge1xuICAgIGNvZGU6IDIsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIHVuY29ubmVjdGVkOiAwLFxuICAgIHBhcnRpYWxseUNvbm5lY3RlZDogMSxcbiAgICBjdXJzaXZlOiAyXG4gIH0sXG4gIGxldHRlckNhc2U6IHtcbiAgICBjb2RlOiAzLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZVxuICB9LFxuICAgIC8vIHVwcGVyQW5kTG93ZXJDYXNlOiAwICAgICAgICAgICMgZGVwcmVjYXRlZFxuICAgIC8vIGFsbENhcHM6IDEgICAgICAgICAgICAgICAgICAgICMgZGVwcmVjYXRlZFxuICAgIC8vIGFsbExvd2VyQ2FzZTogMiAgICAgICAgICAgICAgICMgZGVwcmVjYXRlZFxuICAgIC8vIHNtYWxsQ2FwczogMyAgICAgICAgICAgICAgICAgICMgZGVwcmVjYXRlZFxuICAgIC8vIGluaXRpYWxDYXBzOiA0ICAgICAgICAgICAgICAgICMgZGVwcmVjYXRlZFxuICAgIC8vIGluaXRpYWxDYXBzQW5kU21hbGxDYXBzOiA1ICAgICMgZGVwcmVjYXRlZFxuICB2ZXJ0aWNhbFN1YnN0aXR1dGlvbjoge1xuICAgIGNvZGU6IDQsXG4gICAgZXhjbHVzaXZlOiBmYWxzZSxcbiAgICBzdWJzdGl0dXRlVmVydGljYWxGb3JtczogMFxuICB9LFxuICBsaW5ndWlzdGljUmVhcnJhbmdlbWVudDoge1xuICAgIGNvZGU6IDUsXG4gICAgZXhjbHVzaXZlOiBmYWxzZSxcbiAgICBsaW5ndWlzdGljUmVhcnJhbmdlbWVudDogMFxuICB9LFxuICBudW1iZXJTcGFjaW5nOiB7XG4gICAgY29kZTogNixcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbW9ub3NwYWNlZE51bWJlcnM6IDAsXG4gICAgcHJvcG9ydGlvbmFsTnVtYmVyczogMSxcbiAgICB0aGlyZFdpZHRoTnVtYmVyczogMixcbiAgICBxdWFydGVyV2lkdGhOdW1iZXJzOiAzXG4gIH0sXG4gIHNtYXJ0U3dhc2g6IHtcbiAgICBjb2RlOiA4LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgd29yZEluaXRpYWxTd2FzaGVzOiAwLFxuICAgIHdvcmRGaW5hbFN3YXNoZXM6IDIsXG4gICAgLy8gbGluZUluaXRpYWxTd2FzaGVzOiA0XG4gICAgLy8gbGluZUZpbmFsU3dhc2hlczogNlxuICAgIG5vbkZpbmFsU3dhc2hlczogOFxuICB9LFxuICBkaWFjcml0aWNzOiB7XG4gICAgY29kZTogOSxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgc2hvd0RpYWNyaXRpY3M6IDAsXG4gICAgaGlkZURpYWNyaXRpY3M6IDEsXG4gICAgZGVjb21wb3NlRGlhY3JpdGljczogMlxuICB9LFxuICB2ZXJ0aWNhbFBvc2l0aW9uOiB7XG4gICAgY29kZTogMTAsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG5vcm1hbFBvc2l0aW9uOiAwLFxuICAgIHN1cGVyaW9yczogMSxcbiAgICBpbmZlcmlvcnM6IDIsXG4gICAgb3JkaW5hbHM6IDMsXG4gICAgc2NpZW50aWZpY0luZmVyaW9yczogNFxuICB9LFxuICBmcmFjdGlvbnM6IHtcbiAgICBjb2RlOiAxMSxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbm9GcmFjdGlvbnM6IDAsXG4gICAgdmVydGljYWxGcmFjdGlvbnM6IDEsXG4gICAgZGlhZ29uYWxGcmFjdGlvbnM6IDJcbiAgfSxcbiAgb3ZlcmxhcHBpbmdDaGFyYWN0ZXJzOiB7XG4gICAgY29kZTogMTMsXG4gICAgZXhjbHVzaXZlOiBmYWxzZSxcbiAgICBwcmV2ZW50T3ZlcmxhcDogMFxuICB9LFxuICB0eXBvZ3JhcGhpY0V4dHJhczoge1xuICAgIGNvZGU6IDE0LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgLy8gaHlwaGVuc1RvRW1EYXNoOiAwXG4gICAgLy8gaHlwaGVuVG9FbkRhc2g6IDJcbiAgICBzbGFzaGVkWmVybzogNFxuICB9LFxuICAgIC8vIGZvcm1JbnRlcnJvYmFuZzogNlxuICAgIC8vIHNtYXJ0UXVvdGVzOiA4XG4gICAgLy8gcGVyaW9kc1RvRWxsaXBzaXM6IDEwXG4gIG1hdGhlbWF0aWNhbEV4dHJhczoge1xuICAgIGNvZGU6IDE1LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgLy8gaHlwaGVuVG9NaW51czogMFxuICAgIC8vIGFzdGVyaXN0b011bHRpcGx5OiAyXG4gICAgLy8gc2xhc2hUb0RpdmlkZTogNFxuICAgIC8vIGluZXF1YWxpdHlMaWdhdHVyZXM6IDZcbiAgICAvLyBleHBvbmVudHM6IDhcbiAgICBtYXRoZW1hdGljYWxHcmVlazogMTBcbiAgfSxcbiAgb3JuYW1lbnRTZXRzOiB7XG4gICAgY29kZTogMTYsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG5vT3JuYW1lbnRzOiAwLFxuICAgIGRpbmdiYXRzOiAxLFxuICAgIHBpQ2hhcmFjdGVyczogMixcbiAgICBmbGV1cm9uczogMyxcbiAgICBkZWNvcmF0aXZlQm9yZGVyczogNCxcbiAgICBpbnRlcm5hdGlvbmFsU3ltYm9sczogNSxcbiAgICBtYXRoU3ltYm9sczogNlxuICB9LFxuICBjaGFyYWN0ZXJBbHRlcm5hdGl2ZXM6IHtcbiAgICBjb2RlOiAxNyxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbm9BbHRlcm5hdGVzOiAwXG4gIH0sXG4gICAgLy8gdXNlciBkZWZpbmVkIG9wdGlvbnNcbiAgZGVzaWduQ29tcGxleGl0eToge1xuICAgIGNvZGU6IDE4LFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBkZXNpZ25MZXZlbDE6IDAsXG4gICAgZGVzaWduTGV2ZWwyOiAxLFxuICAgIGRlc2lnbkxldmVsMzogMixcbiAgICBkZXNpZ25MZXZlbDQ6IDMsXG4gICAgZGVzaWduTGV2ZWw1OiA0XG4gIH0sXG4gIHN0eWxlT3B0aW9uczoge1xuICAgIGNvZGU6IDE5LFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBub1N0eWxlT3B0aW9uczogMCxcbiAgICBkaXNwbGF5VGV4dDogMSxcbiAgICBlbmdyYXZlZFRleHQ6IDIsXG4gICAgaWxsdW1pbmF0ZWRDYXBzOiAzLFxuICAgIHRpdGxpbmdDYXBzOiA0LFxuICAgIHRhbGxDYXBzOiA1XG4gIH0sXG4gIGNoYXJhY3RlclNoYXBlOiB7XG4gICAgY29kZTogMjAsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIHRyYWRpdGlvbmFsQ2hhcmFjdGVyczogMCxcbiAgICBzaW1wbGlmaWVkQ2hhcmFjdGVyczogMSxcbiAgICBKSVMxOTc4Q2hhcmFjdGVyczogMixcbiAgICBKSVMxOTgzQ2hhcmFjdGVyczogMyxcbiAgICBKSVMxOTkwQ2hhcmFjdGVyczogNCxcbiAgICB0cmFkaXRpb25hbEFsdE9uZTogNSxcbiAgICB0cmFkaXRpb25hbEFsdFR3bzogNixcbiAgICB0cmFkaXRpb25hbEFsdFRocmVlOiA3LFxuICAgIHRyYWRpdGlvbmFsQWx0Rm91cjogOCxcbiAgICB0cmFkaXRpb25hbEFsdEZpdmU6IDksXG4gICAgZXhwZXJ0Q2hhcmFjdGVyczogMTAsXG4gICAgSklTMjAwNENoYXJhY3RlcnM6IDExLFxuICAgIGhvam9DaGFyYWN0ZXJzOiAxMixcbiAgICBOTENDaGFyYWN0ZXJzOiAxMyxcbiAgICB0cmFkaXRpb25hbE5hbWVzQ2hhcmFjdGVyczogMTRcbiAgfSxcbiAgbnVtYmVyQ2FzZToge1xuICAgIGNvZGU6IDIxLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBsb3dlckNhc2VOdW1iZXJzOiAwLFxuICAgIHVwcGVyQ2FzZU51bWJlcnM6IDFcbiAgfSxcbiAgdGV4dFNwYWNpbmc6IHtcbiAgICBjb2RlOiAyMixcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgcHJvcG9ydGlvbmFsVGV4dDogMCxcbiAgICBtb25vc3BhY2VkVGV4dDogMSxcbiAgICBoYWxmV2lkdGhUZXh0OiAyLFxuICAgIHRoaXJkV2lkdGhUZXh0OiAzLFxuICAgIHF1YXJ0ZXJXaWR0aFRleHQ6IDQsXG4gICAgYWx0UHJvcG9ydGlvbmFsVGV4dDogNSxcbiAgICBhbHRIYWxmV2lkdGhUZXh0OiA2XG4gIH0sXG4gIHRyYW5zbGl0ZXJhdGlvbjoge1xuICAgIGNvZGU6IDIzLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBub1RyYW5zbGl0ZXJhdGlvbjogMFxuICB9LFxuICAgIC8vIGhhbmphVG9IYW5ndWw6IDFcbiAgICAvLyBoaXJhZ2FuYVRvS2F0YWthbmE6IDJcbiAgICAvLyBrYXRha2FuYVRvSGlyYWdhbmE6IDNcbiAgICAvLyBrYW5hVG9Sb21hbml6YXRpb246IDRcbiAgICAvLyByb21hbml6YXRpb25Ub0hpcmFnYW5hOiA1XG4gICAgLy8gcm9tYW5pemF0aW9uVG9LYXRha2FuYTogNlxuICAgIC8vIGhhbmphVG9IYW5ndWxBbHRPbmU6IDdcbiAgICAvLyBoYW5qYVRvSGFuZ3VsQWx0VHdvOiA4XG4gICAgLy8gaGFuamFUb0hhbmd1bEFsdFRocmVlOiA5XG4gIGFubm90YXRpb246IHtcbiAgICBjb2RlOiAyNCxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbm9Bbm5vdGF0aW9uOiAwLFxuICAgIGJveEFubm90YXRpb246IDEsXG4gICAgcm91bmRlZEJveEFubm90YXRpb246IDIsXG4gICAgY2lyY2xlQW5ub3RhdGlvbjogMyxcbiAgICBpbnZlcnRlZENpcmNsZUFubm90YXRpb246IDQsXG4gICAgcGFyZW50aGVzaXNBbm5vdGF0aW9uOiA1LFxuICAgIHBlcmlvZEFubm90YXRpb246IDYsXG4gICAgcm9tYW5OdW1lcmFsQW5ub3RhdGlvbjogNyxcbiAgICBkaWFtb25kQW5ub3RhdGlvbjogOCxcbiAgICBpbnZlcnRlZEJveEFubm90YXRpb246IDksXG4gICAgaW52ZXJ0ZWRSb3VuZGVkQm94QW5ub3RhdGlvbjogMTBcbiAgfSxcbiAga2FuYVNwYWNpbmc6IHtcbiAgICBjb2RlOiAyNSxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgZnVsbFdpZHRoS2FuYTogMCxcbiAgICBwcm9wb3J0aW9uYWxLYW5hOiAxXG4gIH0sXG4gIGlkZW9ncmFwaGljU3BhY2luZzoge1xuICAgIGNvZGU6IDI2LFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBmdWxsV2lkdGhJZGVvZ3JhcGhzOiAwLFxuICAgIHByb3BvcnRpb25hbElkZW9ncmFwaHM6IDEsXG4gICAgaGFsZldpZHRoSWRlb2dyYXBoczogMlxuICB9LFxuICB1bmljb2RlRGVjb21wb3NpdGlvbjoge1xuICAgIGNvZGU6IDI3LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgY2Fub25pY2FsQ29tcG9zaXRpb246IDAsXG4gICAgY29tcGF0aWJpbGl0eUNvbXBvc2l0aW9uOiAyLFxuICAgIHRyYW5zY29kaW5nQ29tcG9zaXRpb246IDRcbiAgfSxcbiAgcnVieUthbmE6IHtcbiAgICBjb2RlOiAyOCxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIC8vIG5vUnVieUthbmE6IDAgICAgICMgZGVwcmVjYXRlZCAtIHVzZSBydWJ5S2FuYU9mZiBpbnN0ZWFkXG4gICAgLy8gcnVieUthbmE6IDEgICAgICMgZGVwcmVjYXRlZCAtIHVzZSBydWJ5S2FuYU9uIGluc3RlYWRcbiAgICBydWJ5S2FuYTogMlxuICB9LFxuICBDSktTeW1ib2xBbHRlcm5hdGl2ZXM6IHtcbiAgICBjb2RlOiAyOSxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbm9DSktTeW1ib2xBbHRlcm5hdGl2ZXM6IDAsXG4gICAgQ0pLU3ltYm9sQWx0T25lOiAxLFxuICAgIENKS1N5bWJvbEFsdFR3bzogMixcbiAgICBDSktTeW1ib2xBbHRUaHJlZTogMyxcbiAgICBDSktTeW1ib2xBbHRGb3VyOiA0LFxuICAgIENKS1N5bWJvbEFsdEZpdmU6IDVcbiAgfSxcbiAgaWRlb2dyYXBoaWNBbHRlcm5hdGl2ZXM6IHtcbiAgICBjb2RlOiAzMCxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbm9JZGVvZ3JhcGhpY0FsdGVybmF0aXZlczogMCxcbiAgICBpZGVvZ3JhcGhpY0FsdE9uZTogMSxcbiAgICBpZGVvZ3JhcGhpY0FsdFR3bzogMixcbiAgICBpZGVvZ3JhcGhpY0FsdFRocmVlOiAzLFxuICAgIGlkZW9ncmFwaGljQWx0Rm91cjogNCxcbiAgICBpZGVvZ3JhcGhpY0FsdEZpdmU6IDVcbiAgfSxcbiAgQ0pLVmVydGljYWxSb21hblBsYWNlbWVudDoge1xuICAgIGNvZGU6IDMxLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBDSktWZXJ0aWNhbFJvbWFuQ2VudGVyZWQ6IDAsXG4gICAgQ0pLVmVydGljYWxSb21hbkhCYXNlbGluZTogMVxuICB9LFxuICBpdGFsaWNDSktSb21hbjoge1xuICAgIGNvZGU6IDMyLFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgLy8gbm9DSktJdGFsaWNSb21hbjogMCAgICAgIyBkZXByZWNhdGVkIC0gdXNlIENKS0l0YWxpY1JvbWFuT2ZmIGluc3RlYWRcbiAgICAvLyBDSktJdGFsaWNSb21hbjogMSAgICAgIyBkZXByZWNhdGVkIC0gdXNlIENKS0l0YWxpY1JvbWFuT24gaW5zdGVhZFxuICAgIENKS0l0YWxpY1JvbWFuOiAyXG4gIH0sXG4gIGNhc2VTZW5zaXRpdmVMYXlvdXQ6IHtcbiAgICBjb2RlOiAzMyxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIGNhc2VTZW5zaXRpdmVMYXlvdXQ6IDAsXG4gICAgY2FzZVNlbnNpdGl2ZVNwYWNpbmc6IDJcbiAgfSxcbiAgYWx0ZXJuYXRlS2FuYToge1xuICAgIGNvZGU6IDM0LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgYWx0ZXJuYXRlSG9yaXpLYW5hOiAwLFxuICAgIGFsdGVybmF0ZVZlcnRLYW5hOiAyXG4gIH0sXG4gIHN0eWxpc3RpY0FsdGVybmF0aXZlczoge1xuICAgIGNvZGU6IDM1LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgbm9TdHlsaXN0aWNBbHRlcm5hdGVzOiAwLFxuICAgIHN0eWxpc3RpY0FsdE9uZTogMixcbiAgICBzdHlsaXN0aWNBbHRUd286IDQsXG4gICAgc3R5bGlzdGljQWx0VGhyZWU6IDYsXG4gICAgc3R5bGlzdGljQWx0Rm91cjogOCxcbiAgICBzdHlsaXN0aWNBbHRGaXZlOiAxMCxcbiAgICBzdHlsaXN0aWNBbHRTaXg6IDEyLFxuICAgIHN0eWxpc3RpY0FsdFNldmVuOiAxNCxcbiAgICBzdHlsaXN0aWNBbHRFaWdodDogMTYsXG4gICAgc3R5bGlzdGljQWx0TmluZTogMTgsXG4gICAgc3R5bGlzdGljQWx0VGVuOiAyMCxcbiAgICBzdHlsaXN0aWNBbHRFbGV2ZW46IDIyLFxuICAgIHN0eWxpc3RpY0FsdFR3ZWx2ZTogMjQsXG4gICAgc3R5bGlzdGljQWx0VGhpcnRlZW46IDI2LFxuICAgIHN0eWxpc3RpY0FsdEZvdXJ0ZWVuOiAyOCxcbiAgICBzdHlsaXN0aWNBbHRGaWZ0ZWVuOiAzMCxcbiAgICBzdHlsaXN0aWNBbHRTaXh0ZWVuOiAzMixcbiAgICBzdHlsaXN0aWNBbHRTZXZlbnRlZW46IDM0LFxuICAgIHN0eWxpc3RpY0FsdEVpZ2h0ZWVuOiAzNixcbiAgICBzdHlsaXN0aWNBbHROaW5ldGVlbjogMzgsXG4gICAgc3R5bGlzdGljQWx0VHdlbnR5OiA0MFxuICB9LFxuICBjb250ZXh0dWFsQWx0ZXJuYXRlczoge1xuICAgIGNvZGU6IDM2LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgY29udGV4dHVhbEFsdGVybmF0ZXM6IDAsXG4gICAgc3dhc2hBbHRlcm5hdGVzOiAyLFxuICAgIGNvbnRleHR1YWxTd2FzaEFsdGVybmF0ZXM6IDRcbiAgfSxcbiAgbG93ZXJDYXNlOiB7XG4gICAgY29kZTogMzcsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIGRlZmF1bHRMb3dlckNhc2U6IDAsXG4gICAgbG93ZXJDYXNlU21hbGxDYXBzOiAxLFxuICAgIGxvd2VyQ2FzZVBldGl0ZUNhcHM6IDJcbiAgfSxcbiAgdXBwZXJDYXNlOiB7XG4gICAgY29kZTogMzgsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIGRlZmF1bHRVcHBlckNhc2U6IDAsXG4gICAgdXBwZXJDYXNlU21hbGxDYXBzOiAxLFxuICAgIHVwcGVyQ2FzZVBldGl0ZUNhcHM6IDJcbiAgfSxcbiAgbGFuZ3VhZ2VUYWc6IHsgLy8gaW5kaWNlcyBpbnRvIGx0YWcgdGFibGVcbiAgICBjb2RlOiAzOSxcbiAgICBleGNsdXNpdmU6IHRydWVcbiAgfSxcbiAgQ0pLUm9tYW5TcGFjaW5nOiB7XG4gICAgY29kZTogMTAzLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBoYWxmV2lkdGhDSktSb21hbjogMCxcbiAgICBwcm9wb3J0aW9uYWxDSktSb21hbjogMSxcbiAgICBkZWZhdWx0Q0pLUm9tYW46IDIsXG4gICAgZnVsbFdpZHRoQ0pLUm9tYW46IDNcbiAgfVxufTtcblxuY29uc3QgZmVhdHVyZSA9IChuYW1lLCBzZWxlY3RvcikgPT4gW2ZlYXR1cmVzW25hbWVdLmNvZGUsIGZlYXR1cmVzW25hbWVdW3NlbGVjdG9yXV07XG5cbmNvbnN0IE9UTWFwcGluZyA9IHtcbiAgcmxpZzogZmVhdHVyZSgnbGlnYXR1cmVzJywgJ3JlcXVpcmVkTGlnYXR1cmVzJyksXG4gIGNsaWc6IGZlYXR1cmUoJ2xpZ2F0dXJlcycsICdjb250ZXh0dWFsTGlnYXR1cmVzJyksXG4gIGRsaWc6IGZlYXR1cmUoJ2xpZ2F0dXJlcycsICdyYXJlTGlnYXR1cmVzJyksXG4gIGhsaWc6IGZlYXR1cmUoJ2xpZ2F0dXJlcycsICdoaXN0b3JpY2FsTGlnYXR1cmVzJyksXG4gIGxpZ2E6IGZlYXR1cmUoJ2xpZ2F0dXJlcycsICdjb21tb25MaWdhdHVyZXMnKSxcbiAgaGlzdDogZmVhdHVyZSgnbGlnYXR1cmVzJywgJ2hpc3RvcmljYWxMaWdhdHVyZXMnKSwgLy8gPz9cblxuICBzbWNwOiBmZWF0dXJlKCdsb3dlckNhc2UnLCAnbG93ZXJDYXNlU21hbGxDYXBzJyksXG4gIHBjYXA6IGZlYXR1cmUoJ2xvd2VyQ2FzZScsICdsb3dlckNhc2VQZXRpdGVDYXBzJyksXG5cbiAgZnJhYzogZmVhdHVyZSgnZnJhY3Rpb25zJywgJ2RpYWdvbmFsRnJhY3Rpb25zJyksXG4gIGRub206IGZlYXR1cmUoJ2ZyYWN0aW9ucycsICdkaWFnb25hbEZyYWN0aW9ucycpLCAvLyA/P1xuICBudW1yOiBmZWF0dXJlKCdmcmFjdGlvbnMnLCAnZGlhZ29uYWxGcmFjdGlvbnMnKSwgLy8gPz9cbiAgYWZyYzogZmVhdHVyZSgnZnJhY3Rpb25zJywgJ3ZlcnRpY2FsRnJhY3Rpb25zJyksXG4gIC8vIGFhbHRcbiAgLy8gYWJ2ZiwgYWJ2bSwgYWJ2cywgYWtobiwgYmx3ZiwgYmx3bSwgYmx3cywgY2ZhciwgY2pjdCwgY3BzcCwgZmFsdCwgaXNvbCwgamFsdCwgbGptbywgbXNldD9cbiAgLy8gbHRyYSwgbHRybSwgbnVrdCwgcHJlZiwgcHJlcywgcHN0ZiwgcHN0cywgcmFuZCwgcmtyZiwgcnBoZiwgcnRsYSwgcnRsbSwgc2l6ZSwgdGptbywgdG51bT9cbiAgLy8gdW5pYywgdmF0dSwgdmhhbCwgdmptbywgdnBhbCwgdnJ0MlxuICAvLyBkaXN0IC0+IHRyYWsgdGFibGU/XG4gIC8vIGtlcm4sIHZrcm4gLT4ga2VybiB0YWJsZVxuICAvLyBsZmJkICsgb3BiZCArIHJ0YmQgLT4gb3BiZCB0YWJsZT9cbiAgLy8gbWFyaywgbWttayAtPiBhY250IHRhYmxlP1xuICAvLyBsb2NsIC0+IGxhbmd1YWdlVGFnICsgbHRhZyB0YWJsZVxuXG4gIGNhc2U6IGZlYXR1cmUoJ2Nhc2VTZW5zaXRpdmVMYXlvdXQnLCAnY2FzZVNlbnNpdGl2ZUxheW91dCcpLCAvLyBhbHNvIGNhc2VTZW5zaXRpdmVTcGFjaW5nXG4gIGNjbXA6IGZlYXR1cmUoJ3VuaWNvZGVEZWNvbXBvc2l0aW9uJywgJ2Nhbm9uaWNhbENvbXBvc2l0aW9uJyksIC8vIGNvbXBhdGliaWxpdHlDb21wb3NpdGlvbj9cbiAgY3BjdDogZmVhdHVyZSgnQ0pLVmVydGljYWxSb21hblBsYWNlbWVudCcsICdDSktWZXJ0aWNhbFJvbWFuQ2VudGVyZWQnKSwgLy8gZ3Vlc3MuLi4sIHByb2JhYmx5IG5vdCBnaXZlbiBiZWxvd1xuICB2YWx0OiBmZWF0dXJlKCdDSktWZXJ0aWNhbFJvbWFuUGxhY2VtZW50JywgJ0NKS1ZlcnRpY2FsUm9tYW5DZW50ZXJlZCcpLFxuICBzd3NoOiBmZWF0dXJlKCdjb250ZXh0dWFsQWx0ZXJuYXRlcycsICdzd2FzaEFsdGVybmF0ZXMnKSxcbiAgY3N3aDogZmVhdHVyZSgnY29udGV4dHVhbEFsdGVybmF0ZXMnLCAnY29udGV4dHVhbFN3YXNoQWx0ZXJuYXRlcycpLFxuICBjdXJzOiBmZWF0dXJlKCdjdXJzaXZlQ29ubmVjdGlvbicsICdjdXJzaXZlJyksIC8vID8/XG4gIGMycGM6IGZlYXR1cmUoJ3VwcGVyQ2FzZScsICd1cHBlckNhc2VQZXRpdGVDYXBzJyksXG4gIGMyc2M6IGZlYXR1cmUoJ3VwcGVyQ2FzZScsICd1cHBlckNhc2VTbWFsbENhcHMnKSxcblxuICBpbml0OiBmZWF0dXJlKCdzbWFydFN3YXNoJywgJ3dvcmRJbml0aWFsU3dhc2hlcycpLCAvLyA/P1xuICBmaW4yOiBmZWF0dXJlKCdzbWFydFN3YXNoJywgJ3dvcmRGaW5hbFN3YXNoZXMnKSwgLy8gPz9cbiAgbWVkaTogZmVhdHVyZSgnc21hcnRTd2FzaCcsICdub25GaW5hbFN3YXNoZXMnKSwgLy8gPz9cbiAgbWVkMjogZmVhdHVyZSgnc21hcnRTd2FzaCcsICdub25GaW5hbFN3YXNoZXMnKSwgLy8gPz9cbiAgZmluMzogZmVhdHVyZSgnc21hcnRTd2FzaCcsICd3b3JkRmluYWxTd2FzaGVzJyksIC8vID8/XG4gIGZpbmE6IGZlYXR1cmUoJ3NtYXJ0U3dhc2gnLCAnd29yZEZpbmFsU3dhc2hlcycpLCAvLyA/P1xuXG4gIHBrbmE6IGZlYXR1cmUoJ2thbmFTcGFjaW5nJywgJ3Byb3BvcnRpb25hbEthbmEnKSxcbiAgaGFsZjogZmVhdHVyZSgndGV4dFNwYWNpbmcnLCAnaGFsZldpZHRoVGV4dCcpLCAvLyBhbHNvIEhhbGZXaWR0aENKS1JvbWFuLCBIYWxmV2lkdGhJZGVvZ3JhcGhzP1xuICBoYWx0OiBmZWF0dXJlKCd0ZXh0U3BhY2luZycsICdhbHRIYWxmV2lkdGhUZXh0JyksXG5cbiAgaGtuYTogZmVhdHVyZSgnYWx0ZXJuYXRlS2FuYScsICdhbHRlcm5hdGVIb3JpekthbmEnKSxcbiAgdmtuYTogZmVhdHVyZSgnYWx0ZXJuYXRlS2FuYScsICdhbHRlcm5hdGVWZXJ0S2FuYScpLFxuICAvLyBobmdsOiBmZWF0dXJlICd0cmFuc2xpdGVyYXRpb24nLCAnaGFuamFUb0hhbmd1bFNlbGVjdG9yJyAjIGRlcHJlY2F0ZWRcblxuICBpdGFsOiBmZWF0dXJlKCdpdGFsaWNDSktSb21hbicsICdDSktJdGFsaWNSb21hbicpLFxuICBsbnVtOiBmZWF0dXJlKCdudW1iZXJDYXNlJywgJ3VwcGVyQ2FzZU51bWJlcnMnKSxcbiAgb251bTogZmVhdHVyZSgnbnVtYmVyQ2FzZScsICdsb3dlckNhc2VOdW1iZXJzJyksXG4gIG1ncms6IGZlYXR1cmUoJ21hdGhlbWF0aWNhbEV4dHJhcycsICdtYXRoZW1hdGljYWxHcmVlaycpLFxuXG4gIC8vIG5hbHQ6IG5vdCBlbm91Z2ggaW5mby4gd2hhdCB0eXBlIG9mIGFubm90YXRpb24/XG4gIC8vIG9ybm06IGRpdHRvLCB3aGljaCBvcm5hbWVudCBzdHlsZT9cblxuICBjYWx0OiBmZWF0dXJlKCdjb250ZXh0dWFsQWx0ZXJuYXRlcycsICdjb250ZXh0dWFsQWx0ZXJuYXRlcycpLCAvLyBvciBtb3JlP1xuICB2cnQyOiBmZWF0dXJlKCd2ZXJ0aWNhbFN1YnN0aXR1dGlvbicsICdzdWJzdGl0dXRlVmVydGljYWxGb3JtcycpLCAvLyBvaC4uLiBiZWxvdz9cbiAgdmVydDogZmVhdHVyZSgndmVydGljYWxTdWJzdGl0dXRpb24nLCAnc3Vic3RpdHV0ZVZlcnRpY2FsRm9ybXMnKSxcbiAgdG51bTogZmVhdHVyZSgnbnVtYmVyU3BhY2luZycsICdtb25vc3BhY2VkTnVtYmVycycpLFxuICBwbnVtOiBmZWF0dXJlKCdudW1iZXJTcGFjaW5nJywgJ3Byb3BvcnRpb25hbE51bWJlcnMnKSxcbiAgc3VwczogZmVhdHVyZSgndmVydGljYWxQb3NpdGlvbicsICdzdXBlcmlvcnMnKSxcbiAgc3ViczogZmVhdHVyZSgndmVydGljYWxQb3NpdGlvbicsICdpbmZlcmlvcnMnKSxcbiAgb3JkbjogZmVhdHVyZSgndmVydGljYWxQb3NpdGlvbicsICdvcmRpbmFscycpLFxuICBwd2lkOiBmZWF0dXJlKCd0ZXh0U3BhY2luZycsICdwcm9wb3J0aW9uYWxUZXh0JyksXG4gIGh3aWQ6IGZlYXR1cmUoJ3RleHRTcGFjaW5nJywgJ2hhbGZXaWR0aFRleHQnKSxcbiAgcXdpZDogZmVhdHVyZSgndGV4dFNwYWNpbmcnLCAncXVhcnRlcldpZHRoVGV4dCcpLCAvLyBhbHNvIFF1YXJ0ZXJXaWR0aE51bWJlcnM/XG4gIHR3aWQ6IGZlYXR1cmUoJ3RleHRTcGFjaW5nJywgJ3RoaXJkV2lkdGhUZXh0JyksIC8vIGFsc28gVGhpcmRXaWR0aE51bWJlcnM/XG4gIGZ3aWQ6IGZlYXR1cmUoJ3RleHRTcGFjaW5nJywgJ3Byb3BvcnRpb25hbFRleHQnKSwgLy8/P1xuICBwYWx0OiBmZWF0dXJlKCd0ZXh0U3BhY2luZycsICdhbHRQcm9wb3J0aW9uYWxUZXh0JyksXG4gIHRyYWQ6IGZlYXR1cmUoJ2NoYXJhY3RlclNoYXBlJywgJ3RyYWRpdGlvbmFsQ2hhcmFjdGVycycpLFxuICBzbXBsOiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdzaW1wbGlmaWVkQ2hhcmFjdGVycycpLFxuICBqcDc4OiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdKSVMxOTc4Q2hhcmFjdGVycycpLFxuICBqcDgzOiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdKSVMxOTgzQ2hhcmFjdGVycycpLFxuICBqcDkwOiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdKSVMxOTkwQ2hhcmFjdGVycycpLFxuICBqcDA0OiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdKSVMyMDA0Q2hhcmFjdGVycycpLFxuICBleHB0OiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdleHBlcnRDaGFyYWN0ZXJzJyksXG4gIGhvam86IGZlYXR1cmUoJ2NoYXJhY3RlclNoYXBlJywgJ2hvam9DaGFyYWN0ZXJzJyksXG4gIG5sY2s6IGZlYXR1cmUoJ2NoYXJhY3RlclNoYXBlJywgJ05MQ0NoYXJhY3RlcnMnKSxcbiAgdG5hbTogZmVhdHVyZSgnY2hhcmFjdGVyU2hhcGUnLCAndHJhZGl0aW9uYWxOYW1lc0NoYXJhY3RlcnMnKSxcbiAgcnVieTogZmVhdHVyZSgncnVieUthbmEnLCAncnVieUthbmEnKSxcbiAgdGl0bDogZmVhdHVyZSgnc3R5bGVPcHRpb25zJywgJ3RpdGxpbmdDYXBzJyksXG4gIHplcm86IGZlYXR1cmUoJ3R5cG9ncmFwaGljRXh0cmFzJywgJ3NsYXNoZWRaZXJvJyksXG5cbiAgc3MwMTogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdE9uZScpLFxuICBzczAyOiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0VHdvJyksXG4gIHNzMDM6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRUaHJlZScpLFxuICBzczA0OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0Rm91cicpLFxuICBzczA1OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0Rml2ZScpLFxuICBzczA2OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0U2l4JyksXG4gIHNzMDc6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRTZXZlbicpLFxuICBzczA4OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0RWlnaHQnKSxcbiAgc3MwOTogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdE5pbmUnKSxcbiAgc3MxMDogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdFRlbicpLFxuICBzczExOiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0RWxldmVuJyksXG4gIHNzMTI6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRUd2VsdmUnKSxcbiAgc3MxMzogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdFRoaXJ0ZWVuJyksXG4gIHNzMTQ6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRGb3VydGVlbicpLFxuICBzczE1OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0RmlmdGVlbicpLFxuICBzczE2OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0U2l4dGVlbicpLFxuICBzczE3OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0U2V2ZW50ZWVuJyksXG4gIHNzMTg6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRFaWdodGVlbicpLFxuICBzczE5OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0TmluZXRlZW4nKSxcbiAgc3MyMDogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdFR3ZW50eScpXG59O1xuXG4gIC8vIHNhbHQ6IGZlYXR1cmUgJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRPbmUnICMgaG1tLCB3aGljaCBvbmUgdG8gY2hvb3NlXG5cbi8vIEFkZCBjdjAxLWN2OTkgZmVhdHVyZXNcbmZvciAobGV0IGkgPSAxOyBpIDw9IDk5OyBpKyspIHtcbiAgT1RNYXBwaW5nW2BjdiR7YDAwJHtpfWAuc2xpY2UoLTIpfWBdID0gW2ZlYXR1cmVzLmNoYXJhY3RlckFsdGVybmF0aXZlcy5jb2RlLCBpXTtcbn1cblxuLy8gY3JlYXRlIGludmVyc2UgbWFwcGluZ1xubGV0IEFBVE1hcHBpbmcgPSB7fTtcbmZvciAobGV0IG90IGluIE9UTWFwcGluZykge1xuICBsZXQgYWF0ID0gT1RNYXBwaW5nW290XTtcbiAgaWYgKEFBVE1hcHBpbmdbYWF0WzBdXSA9PSBudWxsKSB7XG4gICAgQUFUTWFwcGluZ1thYXRbMF1dID0ge307XG4gIH1cblxuICBBQVRNYXBwaW5nW2FhdFswXV1bYWF0WzFdXSA9IG90O1xufVxuXG4vLyBNYXBzIGFuIGFycmF5IG9mIE9wZW5UeXBlIGZlYXR1cmVzIHRvIEFBVCBmZWF0dXJlc1xuLy8gaW4gdGhlIGZvcm0gb2Yge2ZlYXR1cmVUeXBlOntmZWF0dXJlU2V0dGluZzp0cnVlfX1cbmV4cG9ydCBmdW5jdGlvbiBtYXBPVFRvQUFUKGZlYXR1cmVzKSB7XG4gIGxldCByZXMgPSB7fTtcbiAgZm9yIChsZXQgayBpbiBmZWF0dXJlcykge1xuICAgIGxldCByO1xuICAgIGlmIChyID0gT1RNYXBwaW5nW2tdKSB7XG4gICAgICBpZiAocmVzW3JbMF1dID09IG51bGwpIHtcbiAgICAgICAgcmVzW3JbMF1dID0ge307XG4gICAgICB9XG5cbiAgICAgIHJlc1tyWzBdXVtyWzFdXSA9IGZlYXR1cmVzW2tdO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXM7XG59XG5cbi8vIE1hcHMgc3RyaW5ncyBpbiBhIFtmZWF0dXJlVHlwZSwgZmVhdHVyZVNldHRpbmddXG4vLyB0byB0aGVpciBlcXVpdmFsZW50IG51bWJlciBjb2Rlc1xuZnVuY3Rpb24gbWFwRmVhdHVyZVN0cmluZ3MoZikge1xuICBsZXQgW3R5cGUsIHNldHRpbmddID0gZjtcbiAgaWYgKGlzTmFOKHR5cGUpKSB7XG4gICAgdmFyIHR5cGVDb2RlID0gZmVhdHVyZXNbdHlwZV0gJiYgZmVhdHVyZXNbdHlwZV0uY29kZTtcbiAgfSBlbHNlIHtcbiAgICB2YXIgdHlwZUNvZGUgPSB0eXBlO1xuICB9XG5cbiAgaWYgKGlzTmFOKHNldHRpbmcpKSB7XG4gICAgdmFyIHNldHRpbmdDb2RlID0gZmVhdHVyZXNbdHlwZV0gJiYgZmVhdHVyZXNbdHlwZV1bc2V0dGluZ107XG4gIH0gZWxzZSB7XG4gICAgdmFyIHNldHRpbmdDb2RlID0gc2V0dGluZztcbiAgfVxuXG4gIHJldHVybiBbdHlwZUNvZGUsIHNldHRpbmdDb2RlXTtcbn1cblxuLy8gTWFwcyBBQVQgZmVhdHVyZXMgdG8gYW4gYXJyYXkgb2YgT3BlblR5cGUgZmVhdHVyZXNcbi8vIFN1cHBvcnRzIGJvdGggYXJyYXlzIGluIHRoZSBmb3JtIG9mIFtbZmVhdHVyZVR5cGUsIGZlYXR1cmVTZXR0aW5nXV1cbi8vIGFuZCBvYmplY3RzIGluIHRoZSBmb3JtIG9mIHtmZWF0dXJlVHlwZTp7ZmVhdHVyZVNldHRpbmc6dHJ1ZX19XG4vLyBmZWF0dXJlVHlwZXMgYW5kIGZlYXR1cmVTZXR0aW5ncyBjYW4gYmUgZWl0aGVyIHN0cmluZ3Mgb3IgbnVtYmVyIGNvZGVzXG5leHBvcnQgZnVuY3Rpb24gbWFwQUFUVG9PVChmZWF0dXJlcykge1xuICBsZXQgcmVzID0ge307XG4gIGlmIChBcnJheS5pc0FycmF5KGZlYXR1cmVzKSkge1xuICAgIGZvciAobGV0IGsgPSAwOyBrIDwgZmVhdHVyZXMubGVuZ3RoOyBrKyspIHtcbiAgICAgIGxldCByO1xuICAgICAgbGV0IGYgPSBtYXBGZWF0dXJlU3RyaW5ncyhmZWF0dXJlc1trXSk7XG4gICAgICBpZiAociA9IEFBVE1hcHBpbmdbZlswXV0gJiYgQUFUTWFwcGluZ1tmWzBdXVtmWzFdXSkge1xuICAgICAgICByZXNbcl0gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICB9IGVsc2UgaWYgKHR5cGVvZiBmZWF0dXJlcyA9PT0gJ29iamVjdCcpIHtcbiAgICBmb3IgKGxldCB0eXBlIGluIGZlYXR1cmVzKSB7XG4gICAgICBsZXQgZmVhdHVyZSA9IGZlYXR1cmVzW3R5cGVdO1xuICAgICAgZm9yIChsZXQgc2V0dGluZyBpbiBmZWF0dXJlKSB7XG4gICAgICAgIGxldCByO1xuICAgICAgICBsZXQgZiA9IG1hcEZlYXR1cmVTdHJpbmdzKFt0eXBlLCBzZXR0aW5nXSk7XG4gICAgICAgIGlmIChmZWF0dXJlW3NldHRpbmddICYmIChyID0gQUFUTWFwcGluZ1tmWzBdXSAmJiBBQVRNYXBwaW5nW2ZbMF1dW2ZbMV1dKSkge1xuICAgICAgICAgIHJlc1tyXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmtleXMocmVzKTtcbn1cbiIsICJpbXBvcnQgQUFUU3RhdGVNYWNoaW5lIGZyb20gJy4vQUFUU3RhdGVNYWNoaW5lJztcbmltcG9ydCBBQVRMb29rdXBUYWJsZSBmcm9tICcuL0FBVExvb2t1cFRhYmxlJztcbmltcG9ydCB7Y2FjaGV9IGZyb20gJy4uL2RlY29yYXRvcnMnO1xuXG4vLyBpbmRpYyByZXBsYWNlbWVudCBmbGFnc1xuY29uc3QgTUFSS19GSVJTVCA9IDB4ODAwMDtcbmNvbnN0IE1BUktfTEFTVCAgPSAweDIwMDA7XG5jb25zdCBWRVJCICAgICAgID0gMHgwMDBGO1xuXG4vLyBjb250ZXh0dWFsIHN1YnN0aXR1dGlvbiBhbmQgZ2x5cGggaW5zZXJ0aW9uIGZsYWdcbmNvbnN0IFNFVF9NQVJLID0gMHg4MDAwO1xuXG4vLyBsaWdhdHVyZSBlbnRyeSBmbGFnc1xuY29uc3QgU0VUX0NPTVBPTkVOVCAgPSAweDgwMDA7XG5jb25zdCBQRVJGT1JNX0FDVElPTiA9IDB4MjAwMDtcblxuLy8gbGlnYXR1cmUgYWN0aW9uIG1hc2tzXG5jb25zdCBMQVNUX01BU0sgICA9IDB4ODAwMDAwMDA7XG5jb25zdCBTVE9SRV9NQVNLICA9IDB4NDAwMDAwMDA7XG5jb25zdCBPRkZTRVRfTUFTSyA9IDB4M0ZGRkZGRkY7XG5cbmNvbnN0IFZFUlRJQ0FMX09OTFkgICAgICAgICAgID0gMHg4MDAwMDA7XG5jb25zdCBSRVZFUlNFX0RJUkVDVElPTiAgICAgICA9IDB4NDAwMDAwO1xuY29uc3QgSE9SSVpPTlRBTF9BTkRfVkVSVElDQUwgPSAweDIwMDAwMDtcblxuLy8gZ2x5cGggaW5zZXJ0aW9uIGZsYWdzXG5jb25zdCBDVVJSRU5UX0lTX0tBU0hJREFfTElLRSA9IDB4MjAwMDtcbmNvbnN0IE1BUktFRF9JU19LQVNISURBX0xJS0UgID0gMHgxMDAwO1xuY29uc3QgQ1VSUkVOVF9JTlNFUlRfQkVGT1JFICAgPSAweDA4MDA7XG5jb25zdCBNQVJLRURfSU5TRVJUX0JFRk9SRSAgICA9IDB4MDQwMDtcbmNvbnN0IENVUlJFTlRfSU5TRVJUX0NPVU5UICAgID0gMHgwM0UwO1xuY29uc3QgTUFSS0VEX0lOU0VSVF9DT1VOVCAgICAgPSAweDAwMUY7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFBVE1vcnhQcm9jZXNzb3Ige1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgdGhpcy5wcm9jZXNzSW5kaWNSZWFycmFnZW1lbnQgPSB0aGlzLnByb2Nlc3NJbmRpY1JlYXJyYWdlbWVudC5iaW5kKHRoaXMpO1xuICAgIHRoaXMucHJvY2Vzc0NvbnRleHR1YWxTdWJzdGl0dXRpb24gPSB0aGlzLnByb2Nlc3NDb250ZXh0dWFsU3Vic3RpdHV0aW9uLmJpbmQodGhpcyk7XG4gICAgdGhpcy5wcm9jZXNzTGlnYXR1cmUgPSB0aGlzLnByb2Nlc3NMaWdhdHVyZS5iaW5kKHRoaXMpO1xuICAgIHRoaXMucHJvY2Vzc05vbmNvbnRleHR1YWxTdWJzdGl0dXRpb25zID0gdGhpcy5wcm9jZXNzTm9uY29udGV4dHVhbFN1YnN0aXR1dGlvbnMuYmluZCh0aGlzKTtcbiAgICB0aGlzLnByb2Nlc3NHbHlwaEluc2VydGlvbiA9IHRoaXMucHJvY2Vzc0dseXBoSW5zZXJ0aW9uLmJpbmQodGhpcyk7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLm1vcnggPSBmb250Lm1vcng7XG4gICAgdGhpcy5pbnB1dENhY2hlID0gbnVsbDtcbiAgfVxuXG4gIC8vIFByb2Nlc3NlcyBhbiBhcnJheSBvZiBnbHlwaHMgYW5kIGFwcGxpZXMgdGhlIHNwZWNpZmllZCBmZWF0dXJlc1xuICAvLyBGZWF0dXJlcyBzaG91bGQgYmUgaW4gdGhlIGZvcm0gb2Yge2ZlYXR1cmVUeXBlOntmZWF0dXJlU2V0dGluZzpib29sZWFufX1cbiAgcHJvY2VzcyhnbHlwaHMsIGZlYXR1cmVzID0ge30pIHtcbiAgICBmb3IgKGxldCBjaGFpbiBvZiB0aGlzLm1vcnguY2hhaW5zKSB7XG4gICAgICBsZXQgZmxhZ3MgPSBjaGFpbi5kZWZhdWx0RmxhZ3M7XG5cbiAgICAgIC8vIGVuYWJsZS9kaXNhYmxlIHRoZSByZXF1ZXN0ZWQgZmVhdHVyZXNcbiAgICAgIGZvciAobGV0IGZlYXR1cmUgb2YgY2hhaW4uZmVhdHVyZXMpIHtcbiAgICAgICAgbGV0IGY7XG4gICAgICAgIGlmIChmID0gZmVhdHVyZXNbZmVhdHVyZS5mZWF0dXJlVHlwZV0pIHtcbiAgICAgICAgICBpZiAoZltmZWF0dXJlLmZlYXR1cmVTZXR0aW5nXSkge1xuICAgICAgICAgICAgZmxhZ3MgJj0gZmVhdHVyZS5kaXNhYmxlRmxhZ3M7XG4gICAgICAgICAgICBmbGFncyB8PSBmZWF0dXJlLmVuYWJsZUZsYWdzO1xuICAgICAgICAgIH0gZWxzZSBpZiAoZltmZWF0dXJlLmZlYXR1cmVTZXR0aW5nXSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIGZsYWdzIHw9IH5mZWF0dXJlLmRpc2FibGVGbGFncztcbiAgICAgICAgICAgIGZsYWdzICY9IH5mZWF0dXJlLmVuYWJsZUZsYWdzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBmb3IgKGxldCBzdWJ0YWJsZSBvZiBjaGFpbi5zdWJ0YWJsZXMpIHtcbiAgICAgICAgaWYgKHN1YnRhYmxlLnN1YkZlYXR1cmVGbGFncyAmIGZsYWdzKSB7XG4gICAgICAgICAgdGhpcy5wcm9jZXNzU3VidGFibGUoc3VidGFibGUsIGdseXBocyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyByZW1vdmUgZGVsZXRlZCBnbHlwaHNcbiAgICBsZXQgaW5kZXggPSBnbHlwaHMubGVuZ3RoIC0gMTtcbiAgICB3aGlsZSAoaW5kZXggPj0gMCkge1xuICAgICAgaWYgKGdseXBoc1tpbmRleF0uaWQgPT09IDB4ZmZmZikge1xuICAgICAgICBnbHlwaHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIH1cblxuICAgICAgaW5kZXgtLTtcbiAgICB9XG5cbiAgICByZXR1cm4gZ2x5cGhzO1xuICB9XG5cbiAgcHJvY2Vzc1N1YnRhYmxlKHN1YnRhYmxlLCBnbHlwaHMpIHtcbiAgICB0aGlzLnN1YnRhYmxlID0gc3VidGFibGU7XG4gICAgdGhpcy5nbHlwaHMgPSBnbHlwaHM7XG4gICAgaWYgKHRoaXMuc3VidGFibGUudHlwZSA9PT0gNCkge1xuICAgICAgdGhpcy5wcm9jZXNzTm9uY29udGV4dHVhbFN1YnN0aXR1dGlvbnModGhpcy5zdWJ0YWJsZSwgdGhpcy5nbHlwaHMpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMubGlnYXR1cmVTdGFjayA9IFtdO1xuICAgIHRoaXMubWFya2VkR2x5cGggPSBudWxsO1xuICAgIHRoaXMuZmlyc3RHbHlwaCA9IG51bGw7XG4gICAgdGhpcy5sYXN0R2x5cGggPSBudWxsO1xuICAgIHRoaXMubWFya2VkSW5kZXggPSBudWxsO1xuXG4gICAgbGV0IHN0YXRlTWFjaGluZSA9IHRoaXMuZ2V0U3RhdGVNYWNoaW5lKHN1YnRhYmxlKTtcbiAgICBsZXQgcHJvY2VzcyA9IHRoaXMuZ2V0UHJvY2Vzc29yKCk7XG5cbiAgICBsZXQgcmV2ZXJzZSA9ICEhKHRoaXMuc3VidGFibGUuY292ZXJhZ2UgJiBSRVZFUlNFX0RJUkVDVElPTik7XG4gICAgcmV0dXJuIHN0YXRlTWFjaGluZS5wcm9jZXNzKHRoaXMuZ2x5cGhzLCByZXZlcnNlLCBwcm9jZXNzKTtcbiAgfVxuXG4gIEBjYWNoZVxuICBnZXRTdGF0ZU1hY2hpbmUoc3VidGFibGUpIHtcbiAgICByZXR1cm4gbmV3IEFBVFN0YXRlTWFjaGluZShzdWJ0YWJsZS50YWJsZS5zdGF0ZVRhYmxlKTtcbiAgfVxuXG4gIGdldFByb2Nlc3NvcigpIHtcbiAgICBzd2l0Y2ggKHRoaXMuc3VidGFibGUudHlwZSkge1xuICAgICAgY2FzZSAwOlxuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzSW5kaWNSZWFycmFnZW1lbnQ7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NDb250ZXh0dWFsU3Vic3RpdHV0aW9uO1xuICAgICAgY2FzZSAyOlxuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzTGlnYXR1cmU7XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NOb25jb250ZXh0dWFsU3Vic3RpdHV0aW9ucztcbiAgICAgIGNhc2UgNTpcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0dseXBoSW5zZXJ0aW9uO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1vcnggc3VidGFibGUgdHlwZTogJHt0aGlzLnN1YnRhYmxlLnR5cGV9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvY2Vzc0luZGljUmVhcnJhZ2VtZW50KGdseXBoLCBlbnRyeSwgaW5kZXgpIHtcbiAgICBpZiAoZW50cnkuZmxhZ3MgJiBNQVJLX0ZJUlNUKSB7XG4gICAgICB0aGlzLmZpcnN0R2x5cGggPSBpbmRleDtcbiAgICB9XG5cbiAgICBpZiAoZW50cnkuZmxhZ3MgJiBNQVJLX0xBU1QpIHtcbiAgICAgIHRoaXMubGFzdEdseXBoID0gaW5kZXg7XG4gICAgfVxuXG4gICAgcmVvcmRlckdseXBocyh0aGlzLmdseXBocywgZW50cnkuZmxhZ3MgJiBWRVJCLCB0aGlzLmZpcnN0R2x5cGgsIHRoaXMubGFzdEdseXBoKTtcbiAgfVxuXG4gIHByb2Nlc3NDb250ZXh0dWFsU3Vic3RpdHV0aW9uKGdseXBoLCBlbnRyeSwgaW5kZXgpIHtcbiAgICBsZXQgc3Vic2l0dXRpb25zID0gdGhpcy5zdWJ0YWJsZS50YWJsZS5zdWJzdGl0dXRpb25UYWJsZS5pdGVtcztcbiAgICBpZiAoZW50cnkubWFya0luZGV4ICE9PSAweGZmZmYpIHtcbiAgICAgIGxldCBsb29rdXAgPSBzdWJzaXR1dGlvbnMuZ2V0SXRlbShlbnRyeS5tYXJrSW5kZXgpO1xuICAgICAgbGV0IGxvb2t1cFRhYmxlID0gbmV3IEFBVExvb2t1cFRhYmxlKGxvb2t1cCk7XG4gICAgICBnbHlwaCA9IHRoaXMuZ2x5cGhzW3RoaXMubWFya2VkR2x5cGhdO1xuICAgICAgdmFyIGdpZCA9IGxvb2t1cFRhYmxlLmxvb2t1cChnbHlwaC5pZCk7XG4gICAgICBpZiAoZ2lkKSB7XG4gICAgICAgIHRoaXMuZ2x5cGhzW3RoaXMubWFya2VkR2x5cGhdID0gdGhpcy5mb250LmdldEdseXBoKGdpZCwgZ2x5cGguY29kZVBvaW50cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGVudHJ5LmN1cnJlbnRJbmRleCAhPT0gMHhmZmZmKSB7XG4gICAgICBsZXQgbG9va3VwID0gc3Vic2l0dXRpb25zLmdldEl0ZW0oZW50cnkuY3VycmVudEluZGV4KTtcbiAgICAgIGxldCBsb29rdXBUYWJsZSA9IG5ldyBBQVRMb29rdXBUYWJsZShsb29rdXApO1xuICAgICAgZ2x5cGggPSB0aGlzLmdseXBoc1tpbmRleF07XG4gICAgICB2YXIgZ2lkID0gbG9va3VwVGFibGUubG9va3VwKGdseXBoLmlkKTtcbiAgICAgIGlmIChnaWQpIHtcbiAgICAgICAgdGhpcy5nbHlwaHNbaW5kZXhdID0gdGhpcy5mb250LmdldEdseXBoKGdpZCwgZ2x5cGguY29kZVBvaW50cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGVudHJ5LmZsYWdzICYgU0VUX01BUkspIHtcbiAgICAgIHRoaXMubWFya2VkR2x5cGggPSBpbmRleDtcbiAgICB9XG4gIH1cblxuICBwcm9jZXNzTGlnYXR1cmUoZ2x5cGgsIGVudHJ5LCBpbmRleCkge1xuICAgIGlmIChlbnRyeS5mbGFncyAmIFNFVF9DT01QT05FTlQpIHtcbiAgICAgIHRoaXMubGlnYXR1cmVTdGFjay5wdXNoKGluZGV4KTtcbiAgICB9XG5cbiAgICBpZiAoZW50cnkuZmxhZ3MgJiBQRVJGT1JNX0FDVElPTikge1xuICAgICAgbGV0IGFjdGlvbnMgPSB0aGlzLnN1YnRhYmxlLnRhYmxlLmxpZ2F0dXJlQWN0aW9ucztcbiAgICAgIGxldCBjb21wb25lbnRzID0gdGhpcy5zdWJ0YWJsZS50YWJsZS5jb21wb25lbnRzO1xuICAgICAgbGV0IGxpZ2F0dXJlTGlzdCA9IHRoaXMuc3VidGFibGUudGFibGUubGlnYXR1cmVMaXN0O1xuXG4gICAgICBsZXQgYWN0aW9uSW5kZXggPSBlbnRyeS5hY3Rpb247XG4gICAgICBsZXQgbGFzdCA9IGZhbHNlO1xuICAgICAgbGV0IGxpZ2F0dXJlSW5kZXggPSAwO1xuICAgICAgbGV0IGNvZGVQb2ludHMgPSBbXTtcbiAgICAgIGxldCBsaWdhdHVyZUdseXBocyA9IFtdO1xuXG4gICAgICB3aGlsZSAoIWxhc3QpIHtcbiAgICAgICAgbGV0IGNvbXBvbmVudEdseXBoID0gdGhpcy5saWdhdHVyZVN0YWNrLnBvcCgpO1xuICAgICAgICBjb2RlUG9pbnRzLnVuc2hpZnQoLi4udGhpcy5nbHlwaHNbY29tcG9uZW50R2x5cGhdLmNvZGVQb2ludHMpO1xuXG4gICAgICAgIGxldCBhY3Rpb24gPSBhY3Rpb25zLmdldEl0ZW0oYWN0aW9uSW5kZXgrKyk7XG4gICAgICAgIGxhc3QgPSAhIShhY3Rpb24gJiBMQVNUX01BU0spO1xuICAgICAgICBsZXQgc3RvcmUgPSAhIShhY3Rpb24gJiBTVE9SRV9NQVNLKTtcbiAgICAgICAgbGV0IG9mZnNldCA9IChhY3Rpb24gJiBPRkZTRVRfTUFTSykgPDwgMiA+PiAyOyAvLyBzaWduIGV4dGVuZCAzMCB0byAzMiBiaXRzXG4gICAgICAgIG9mZnNldCArPSB0aGlzLmdseXBoc1tjb21wb25lbnRHbHlwaF0uaWQ7XG5cbiAgICAgICAgbGV0IGNvbXBvbmVudCA9IGNvbXBvbmVudHMuZ2V0SXRlbShvZmZzZXQpO1xuICAgICAgICBsaWdhdHVyZUluZGV4ICs9IGNvbXBvbmVudDtcblxuICAgICAgICBpZiAobGFzdCB8fCBzdG9yZSkge1xuICAgICAgICAgIGxldCBsaWdhdHVyZUVudHJ5ID0gbGlnYXR1cmVMaXN0LmdldEl0ZW0obGlnYXR1cmVJbmRleCk7XG4gICAgICAgICAgdGhpcy5nbHlwaHNbY29tcG9uZW50R2x5cGhdID0gdGhpcy5mb250LmdldEdseXBoKGxpZ2F0dXJlRW50cnksIGNvZGVQb2ludHMpO1xuICAgICAgICAgIGxpZ2F0dXJlR2x5cGhzLnB1c2goY29tcG9uZW50R2x5cGgpO1xuICAgICAgICAgIGxpZ2F0dXJlSW5kZXggPSAwO1xuICAgICAgICAgIGNvZGVQb2ludHMgPSBbXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmdseXBoc1tjb21wb25lbnRHbHlwaF0gPSB0aGlzLmZvbnQuZ2V0R2x5cGgoMHhmZmZmKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBQdXQgbGlnYXR1cmUgZ2x5cGggaW5kZXhlcyBiYWNrIG9uIHRoZSBzdGFja1xuICAgICAgdGhpcy5saWdhdHVyZVN0YWNrLnB1c2goLi4ubGlnYXR1cmVHbHlwaHMpO1xuICAgIH1cbiAgfVxuXG4gIHByb2Nlc3NOb25jb250ZXh0dWFsU3Vic3RpdHV0aW9ucyhzdWJ0YWJsZSwgZ2x5cGhzLCBpbmRleCkge1xuICAgIGxldCBsb29rdXBUYWJsZSA9IG5ldyBBQVRMb29rdXBUYWJsZShzdWJ0YWJsZS50YWJsZS5sb29rdXBUYWJsZSk7XG5cbiAgICBmb3IgKGluZGV4ID0gMDsgaW5kZXggPCBnbHlwaHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICBsZXQgZ2x5cGggPSBnbHlwaHNbaW5kZXhdO1xuICAgICAgaWYgKGdseXBoLmlkICE9PSAweGZmZmYpIHtcbiAgICAgICAgbGV0IGdpZCA9IGxvb2t1cFRhYmxlLmxvb2t1cChnbHlwaC5pZCk7XG4gICAgICAgIGlmIChnaWQpIHsgLy8gMCBtZWFucyBkbyBub3RoaW5nXG4gICAgICAgICAgZ2x5cGhzW2luZGV4XSA9IHRoaXMuZm9udC5nZXRHbHlwaChnaWQsIGdseXBoLmNvZGVQb2ludHMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgX2luc2VydEdseXBocyhnbHlwaEluZGV4LCBpbnNlcnRpb25BY3Rpb25JbmRleCwgY291bnQsIGlzQmVmb3JlKSB7XG4gICAgbGV0IGluc2VydGlvbnMgPSBbXTtcbiAgICB3aGlsZSAoY291bnQtLSkge1xuICAgICAgbGV0IGdpZCA9IHRoaXMuc3VidGFibGUudGFibGUuaW5zZXJ0aW9uQWN0aW9ucy5nZXRJdGVtKGluc2VydGlvbkFjdGlvbkluZGV4KyspO1xuICAgICAgaW5zZXJ0aW9ucy5wdXNoKHRoaXMuZm9udC5nZXRHbHlwaChnaWQpKTtcbiAgICB9XG5cbiAgICBpZiAoIWlzQmVmb3JlKSB7XG4gICAgICBnbHlwaEluZGV4Kys7XG4gICAgfVxuXG4gICAgdGhpcy5nbHlwaHMuc3BsaWNlKGdseXBoSW5kZXgsIDAsIC4uLmluc2VydGlvbnMpO1xuICB9XG5cbiAgcHJvY2Vzc0dseXBoSW5zZXJ0aW9uKGdseXBoLCBlbnRyeSwgaW5kZXgpIHtcbiAgICBpZiAoZW50cnkuZmxhZ3MgJiBTRVRfTUFSSykge1xuICAgICAgdGhpcy5tYXJrZWRJbmRleCA9IGluZGV4O1xuICAgIH1cblxuICAgIGlmIChlbnRyeS5tYXJrZWRJbnNlcnRJbmRleCAhPT0gMHhmZmZmKSB7XG4gICAgICBsZXQgY291bnQgPSAoZW50cnkuZmxhZ3MgJiBNQVJLRURfSU5TRVJUX0NPVU5UKSA+Pj4gNTtcbiAgICAgIGxldCBpc0JlZm9yZSA9ICEhKGVudHJ5LmZsYWdzICYgTUFSS0VEX0lOU0VSVF9CRUZPUkUpO1xuICAgICAgdGhpcy5faW5zZXJ0R2x5cGhzKHRoaXMubWFya2VkSW5kZXgsIGVudHJ5Lm1hcmtlZEluc2VydEluZGV4LCBjb3VudCwgaXNCZWZvcmUpO1xuICAgIH1cblxuICAgIGlmIChlbnRyeS5jdXJyZW50SW5zZXJ0SW5kZXggIT09IDB4ZmZmZikge1xuICAgICAgbGV0IGNvdW50ID0gKGVudHJ5LmZsYWdzICYgQ1VSUkVOVF9JTlNFUlRfQ09VTlQpID4+PiA1O1xuICAgICAgbGV0IGlzQmVmb3JlID0gISEoZW50cnkuZmxhZ3MgJiBDVVJSRU5UX0lOU0VSVF9CRUZPUkUpO1xuICAgICAgdGhpcy5faW5zZXJ0R2x5cGhzKGluZGV4LCBlbnRyeS5jdXJyZW50SW5zZXJ0SW5kZXgsIGNvdW50LCBpc0JlZm9yZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0U3VwcG9ydGVkRmVhdHVyZXMoKSB7XG4gICAgbGV0IGZlYXR1cmVzID0gW107XG4gICAgZm9yIChsZXQgY2hhaW4gb2YgdGhpcy5tb3J4LmNoYWlucykge1xuICAgICAgZm9yIChsZXQgZmVhdHVyZSBvZiBjaGFpbi5mZWF0dXJlcykge1xuICAgICAgICBmZWF0dXJlcy5wdXNoKFtmZWF0dXJlLmZlYXR1cmVUeXBlLCBmZWF0dXJlLmZlYXR1cmVTZXR0aW5nXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZlYXR1cmVzO1xuICB9XG5cbiAgZ2VuZXJhdGVJbnB1dHMoZ2lkKSB7XG4gICAgaWYgKCF0aGlzLmlucHV0Q2FjaGUpIHtcbiAgICAgIHRoaXMuZ2VuZXJhdGVJbnB1dENhY2hlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaW5wdXRDYWNoZVtnaWRdIHx8IFtdO1xuICB9XG5cbiAgZ2VuZXJhdGVJbnB1dENhY2hlKCkge1xuICAgIHRoaXMuaW5wdXRDYWNoZSA9IHt9O1xuXG4gICAgZm9yIChsZXQgY2hhaW4gb2YgdGhpcy5tb3J4LmNoYWlucykge1xuICAgICAgbGV0IGZsYWdzID0gY2hhaW4uZGVmYXVsdEZsYWdzO1xuXG4gICAgICBmb3IgKGxldCBzdWJ0YWJsZSBvZiBjaGFpbi5zdWJ0YWJsZXMpIHtcbiAgICAgICAgaWYgKHN1YnRhYmxlLnN1YkZlYXR1cmVGbGFncyAmIGZsYWdzKSB7XG4gICAgICAgICAgdGhpcy5nZW5lcmF0ZUlucHV0c0ZvclN1YnRhYmxlKHN1YnRhYmxlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdlbmVyYXRlSW5wdXRzRm9yU3VidGFibGUoc3VidGFibGUpIHtcbiAgICAvLyBDdXJyZW50bHksIG9ubHkgc3VwcG9ydGluZyBsaWdhdHVyZSBzdWJ0YWJsZXMuXG4gICAgaWYgKHN1YnRhYmxlLnR5cGUgIT09IDIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgcmV2ZXJzZSA9ICEhKHN1YnRhYmxlLmNvdmVyYWdlICYgUkVWRVJTRV9ESVJFQ1RJT04pO1xuICAgIGlmIChyZXZlcnNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JldmVyc2Ugc3VidGFibGUsIG5vdCBzdXBwb3J0ZWQuJyk7XG4gICAgfVxuXG4gICAgdGhpcy5zdWJ0YWJsZSA9IHN1YnRhYmxlO1xuICAgIHRoaXMubGlnYXR1cmVTdGFjayA9IFtdO1xuXG4gICAgbGV0IHN0YXRlTWFjaGluZSA9IHRoaXMuZ2V0U3RhdGVNYWNoaW5lKHN1YnRhYmxlKTtcbiAgICBsZXQgcHJvY2VzcyA9IHRoaXMuZ2V0UHJvY2Vzc29yKCk7XG5cbiAgICBsZXQgaW5wdXQgPSBbXTtcbiAgICBsZXQgc3RhY2sgPSBbXTtcbiAgICB0aGlzLmdseXBocyA9IFtdO1xuXG4gICAgc3RhdGVNYWNoaW5lLnRyYXZlcnNlKHtcbiAgICAgIGVudGVyOiAoZ2x5cGgsIGVudHJ5KSA9PiB7XG4gICAgICAgIGxldCBnbHlwaHMgPSB0aGlzLmdseXBocztcbiAgICAgICAgc3RhY2sucHVzaCh7XG4gICAgICAgICAgZ2x5cGhzOiBnbHlwaHMuc2xpY2UoKSxcbiAgICAgICAgICBsaWdhdHVyZVN0YWNrOiB0aGlzLmxpZ2F0dXJlU3RhY2suc2xpY2UoKVxuICAgICAgICB9KTtcblxuICAgICAgICAvLyBBZGQgZ2x5cGggdG8gaW5wdXQgYW5kIGdseXBocyB0byBwcm9jZXNzLlxuICAgICAgICBsZXQgZyA9IHRoaXMuZm9udC5nZXRHbHlwaChnbHlwaCk7XG4gICAgICAgIGlucHV0LnB1c2goZyk7XG4gICAgICAgIGdseXBocy5wdXNoKGlucHV0W2lucHV0Lmxlbmd0aCAtIDFdKTtcblxuICAgICAgICAvLyBQcm9jZXNzIGxpZ2F0dXJlIHN1YnN0aXR1dGlvblxuICAgICAgICBwcm9jZXNzKGdseXBoc1tnbHlwaHMubGVuZ3RoIC0gMV0sIGVudHJ5LCBnbHlwaHMubGVuZ3RoIC0gMSk7XG5cbiAgICAgICAgLy8gQWRkIGlucHV0IHRvIHJlc3VsdCBpZiBvbmx5IG9uZSBtYXRjaGluZyAobm9uLWRlbGV0ZWQpIGdseXBoIHJlbWFpbnMuXG4gICAgICAgIGxldCBjb3VudCA9IDA7XG4gICAgICAgIGxldCBmb3VuZCA9IDA7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ2x5cGhzLmxlbmd0aCAmJiBjb3VudCA8PSAxOyBpKyspIHtcbiAgICAgICAgICBpZiAoZ2x5cGhzW2ldLmlkICE9PSAweGZmZmYpIHtcbiAgICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgICAgICBmb3VuZCA9IGdseXBoc1tpXS5pZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY291bnQgPT09IDEpIHtcbiAgICAgICAgICBsZXQgcmVzdWx0ID0gaW5wdXQubWFwKGcgPT4gZy5pZCk7XG4gICAgICAgICAgbGV0IGNhY2hlID0gdGhpcy5pbnB1dENhY2hlW2ZvdW5kXTtcbiAgICAgICAgICBpZiAoY2FjaGUpIHtcbiAgICAgICAgICAgIGNhY2hlLnB1c2gocmVzdWx0KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pbnB1dENhY2hlW2ZvdW5kXSA9IFtyZXN1bHRdO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgICAgZXhpdDogKCkgPT4ge1xuICAgICAgICAoe2dseXBoczogdGhpcy5nbHlwaHMsIGxpZ2F0dXJlU3RhY2s6IHRoaXMubGlnYXR1cmVTdGFja30gPSBzdGFjay5wb3AoKSk7XG4gICAgICAgIGlucHV0LnBvcCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG5cbi8vIHN3YXBzIHRoZSBnbHlwaHMgaW4gcmFuZ2VBIHdpdGggdGhvc2UgaW4gcmFuZ2VCXG4vLyByZXZlcnNlIHRoZSBnbHlwaHMgaW5zaWRlIHRob3NlIHJhbmdlcyBpZiBzcGVjaWZpZWRcbi8vIHJhbmdlcyBhcmUgaW4gW29mZnNldCwgbGVuZ3RoXSBmb3JtYXRcbmZ1bmN0aW9uIHN3YXAoZ2x5cGhzLCByYW5nZUEsIHJhbmdlQiwgcmV2ZXJzZUEgPSBmYWxzZSwgcmV2ZXJzZUIgPSBmYWxzZSkge1xuICBsZXQgZW5kID0gZ2x5cGhzLnNwbGljZShyYW5nZUJbMF0gLSAocmFuZ2VCWzFdIC0gMSksIHJhbmdlQlsxXSk7XG4gIGlmIChyZXZlcnNlQikge1xuICAgIGVuZC5yZXZlcnNlKCk7XG4gIH1cblxuICBsZXQgc3RhcnQgPSBnbHlwaHMuc3BsaWNlKHJhbmdlQVswXSwgcmFuZ2VBWzFdLCAuLi5lbmQpO1xuICBpZiAocmV2ZXJzZUEpIHtcbiAgICBzdGFydC5yZXZlcnNlKCk7XG4gIH1cblxuICBnbHlwaHMuc3BsaWNlKHJhbmdlQlswXSAtIChyYW5nZUFbMV0gLSAxKSwgMCwgLi4uc3RhcnQpO1xuICByZXR1cm4gZ2x5cGhzO1xufVxuXG5mdW5jdGlvbiByZW9yZGVyR2x5cGhzKGdseXBocywgdmVyYiwgZmlyc3RHbHlwaCwgbGFzdEdseXBoKSB7XG4gIGxldCBsZW5ndGggPSBsYXN0R2x5cGggLSBmaXJzdEdseXBoICsgMTtcbiAgc3dpdGNoICh2ZXJiKSB7XG4gICAgY2FzZSAwOiAvLyBubyBjaGFuZ2VcbiAgICAgIHJldHVybiBnbHlwaHM7XG5cbiAgICBjYXNlIDE6IC8vIEF4ID0+IHhBXG4gICAgICByZXR1cm4gc3dhcChnbHlwaHMsIFtmaXJzdEdseXBoLCAxXSwgW2xhc3RHbHlwaCwgMF0pO1xuXG4gICAgY2FzZSAyOiAvLyB4RCA9PiBEeFxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMF0sIFtsYXN0R2x5cGgsIDFdKTtcblxuICAgIGNhc2UgMzogLy8gQXhEID0+IER4QVxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMV0sIFtsYXN0R2x5cGgsIDFdKTtcblxuICAgIGNhc2UgNDogLy8gQUJ4ID0+IHhBQlxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMl0sIFtsYXN0R2x5cGgsIDBdKTtcblxuICAgIGNhc2UgNTogLy8gQUJ4ID0+IHhCQVxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMl0sIFtsYXN0R2x5cGgsIDBdLCB0cnVlLCBmYWxzZSk7XG5cbiAgICBjYXNlIDY6IC8vIHhDRCA9PiBDRHhcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDBdLCBbbGFzdEdseXBoLCAyXSk7XG5cbiAgICBjYXNlIDc6IC8vIHhDRCA9PiBEQ3hcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDBdLCBbbGFzdEdseXBoLCAyXSwgZmFsc2UsIHRydWUpO1xuXG4gICAgY2FzZSA4OiAvLyBBeENEID0+IENEeEFcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDFdLCBbbGFzdEdseXBoLCAyXSk7XG5cbiAgICBjYXNlIDk6IC8vIEF4Q0QgPT4gREN4QVxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMV0sIFtsYXN0R2x5cGgsIDJdLCBmYWxzZSwgdHJ1ZSk7XG5cbiAgICBjYXNlIDEwOiAvLyBBQnhEID0+IER4QUJcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAxXSk7XG5cbiAgICBjYXNlIDExOiAvLyBBQnhEID0+IER4QkFcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAxXSwgdHJ1ZSwgZmFsc2UpO1xuXG4gICAgY2FzZSAxMjogLy8gQUJ4Q0QgPT4gQ0R4QUJcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAyXSk7XG5cbiAgICBjYXNlIDEzOiAvLyBBQnhDRCA9PiBDRHhCQVxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMl0sIFtsYXN0R2x5cGgsIDJdLCB0cnVlLCBmYWxzZSk7XG5cbiAgICBjYXNlIDE0OiAvLyBBQnhDRCA9PiBEQ3hBQlxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMl0sIFtsYXN0R2x5cGgsIDJdLCBmYWxzZSwgdHJ1ZSk7XG5cbiAgICBjYXNlIDE1OiAvLyBBQnhDRCA9PiBEQ3hCQVxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMl0sIFtsYXN0R2x5cGgsIDJdLCB0cnVlLCB0cnVlKTtcblxuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gdmVyYjogJHt2ZXJifWApO1xuICB9XG59XG4iLCAiaW1wb3J0IEFBVExvb2t1cFRhYmxlIGZyb20gJy4vQUFUTG9va3VwVGFibGUnO1xuXG5jb25zdCBTVEFSVF9PRl9URVhUX1NUQVRFID0gMDtcbmNvbnN0IFNUQVJUX09GX0xJTkVfU1RBVEUgPSAxO1xuXG5jb25zdCBFTkRfT0ZfVEVYVF9DTEFTUyA9IDA7XG5jb25zdCBPVVRfT0ZfQk9VTkRTX0NMQVNTID0gMTtcbmNvbnN0IERFTEVURURfR0xZUEhfQ0xBU1MgPSAyO1xuY29uc3QgRU5EX09GX0xJTkVfQ0xBU1MgPSAzO1xuXG5jb25zdCBET05UX0FEVkFOQ0UgPSAweDQwMDA7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFBVFN0YXRlTWFjaGluZSB7XG4gIGNvbnN0cnVjdG9yKHN0YXRlVGFibGUpIHtcbiAgICB0aGlzLnN0YXRlVGFibGUgPSBzdGF0ZVRhYmxlO1xuICAgIHRoaXMubG9va3VwVGFibGUgPSBuZXcgQUFUTG9va3VwVGFibGUoc3RhdGVUYWJsZS5jbGFzc1RhYmxlKTtcbiAgfVxuXG4gIHByb2Nlc3MoZ2x5cGhzLCByZXZlcnNlLCBwcm9jZXNzRW50cnkpIHtcbiAgICBsZXQgY3VycmVudFN0YXRlID0gU1RBUlRfT0ZfVEVYVF9TVEFURTsgLy8gU1RBUlRfT0ZfTElORV9TVEFURSBpcyB1c2VkIGZvciBrYXNoaWRhIGdseXBoIGluc2VydGlvbnMgc29tZXRpbWVzIEkgdGhpbms/XG4gICAgbGV0IGluZGV4ID0gcmV2ZXJzZSA/IGdseXBocy5sZW5ndGggLSAxIDogMDtcbiAgICBsZXQgZGlyID0gcmV2ZXJzZSA/IC0xIDogMTtcblxuICAgIHdoaWxlICgoZGlyID09PSAxICYmIGluZGV4IDw9IGdseXBocy5sZW5ndGgpIHx8IChkaXIgPT09IC0xICYmIGluZGV4ID49IC0xKSkge1xuICAgICAgbGV0IGdseXBoID0gbnVsbDtcbiAgICAgIGxldCBjbGFzc0NvZGUgPSBPVVRfT0ZfQk9VTkRTX0NMQVNTO1xuICAgICAgbGV0IHNob3VsZEFkdmFuY2UgPSB0cnVlO1xuXG4gICAgICBpZiAoaW5kZXggPT09IGdseXBocy5sZW5ndGggfHwgaW5kZXggPT09IC0xKSB7XG4gICAgICAgIGNsYXNzQ29kZSA9IEVORF9PRl9URVhUX0NMQVNTO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZ2x5cGggPSBnbHlwaHNbaW5kZXhdO1xuICAgICAgICBpZiAoZ2x5cGguaWQgPT09IDB4ZmZmZikgeyAvLyBkZWxldGVkIGdseXBoXG4gICAgICAgICAgY2xhc3NDb2RlID0gREVMRVRFRF9HTFlQSF9DTEFTUztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjbGFzc0NvZGUgPSB0aGlzLmxvb2t1cFRhYmxlLmxvb2t1cChnbHlwaC5pZCk7XG4gICAgICAgICAgaWYgKGNsYXNzQ29kZSA9PSBudWxsKSB7XG4gICAgICAgICAgICBjbGFzc0NvZGUgPSBPVVRfT0ZfQk9VTkRTX0NMQVNTO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsZXQgcm93ID0gdGhpcy5zdGF0ZVRhYmxlLnN0YXRlQXJyYXkuZ2V0SXRlbShjdXJyZW50U3RhdGUpO1xuICAgICAgbGV0IGVudHJ5SW5kZXggPSByb3dbY2xhc3NDb2RlXTtcbiAgICAgIGxldCBlbnRyeSA9IHRoaXMuc3RhdGVUYWJsZS5lbnRyeVRhYmxlLmdldEl0ZW0oZW50cnlJbmRleCk7XG5cbiAgICAgIGlmIChjbGFzc0NvZGUgIT09IEVORF9PRl9URVhUX0NMQVNTICYmIGNsYXNzQ29kZSAhPT0gIERFTEVURURfR0xZUEhfQ0xBU1MpIHtcbiAgICAgICAgcHJvY2Vzc0VudHJ5KGdseXBoLCBlbnRyeSwgaW5kZXgpO1xuICAgICAgICBzaG91bGRBZHZhbmNlID0gIShlbnRyeS5mbGFncyAmIERPTlRfQURWQU5DRSk7XG4gICAgICB9XG5cbiAgICAgIGN1cnJlbnRTdGF0ZSA9IGVudHJ5Lm5ld1N0YXRlO1xuICAgICAgaWYgKHNob3VsZEFkdmFuY2UpIHtcbiAgICAgICAgaW5kZXggKz0gZGlyO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBnbHlwaHM7XG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybXMgYSBkZXB0aC1maXJzdCB0cmF2ZXJzYWwgb2YgdGhlIGdseXBoIHN0cmluZ3NcbiAgICogcmVwcmVzZW50ZWQgYnkgdGhlIHN0YXRlIG1hY2hpbmUuXG4gICAqL1xuICB0cmF2ZXJzZShvcHRzLCBzdGF0ZSA9IDAsIHZpc2l0ZWQgPSBuZXcgU2V0KSB7XG4gICAgaWYgKHZpc2l0ZWQuaGFzKHN0YXRlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZpc2l0ZWQuYWRkKHN0YXRlKTtcblxuICAgIGxldCB7bkNsYXNzZXMsIHN0YXRlQXJyYXksIGVudHJ5VGFibGV9ID0gdGhpcy5zdGF0ZVRhYmxlO1xuICAgIGxldCByb3cgPSBzdGF0ZUFycmF5LmdldEl0ZW0oc3RhdGUpO1xuXG4gICAgLy8gU2tpcCBwcmVkZWZpbmVkIGNsYXNzZXNcbiAgICBmb3IgKGxldCBjbGFzc0NvZGUgPSA0OyBjbGFzc0NvZGUgPCBuQ2xhc3NlczsgY2xhc3NDb2RlKyspIHtcbiAgICAgIGxldCBlbnRyeUluZGV4ID0gcm93W2NsYXNzQ29kZV07XG4gICAgICBsZXQgZW50cnkgPSBlbnRyeVRhYmxlLmdldEl0ZW0oZW50cnlJbmRleCk7XG5cbiAgICAgIC8vIFRyeSBhbGwgZ2x5cGhzIGluIHRoZSBjbGFzc1xuICAgICAgZm9yIChsZXQgZ2x5cGggb2YgdGhpcy5sb29rdXBUYWJsZS5nbHlwaHNGb3JWYWx1ZShjbGFzc0NvZGUpKSB7XG4gICAgICAgIGlmIChvcHRzLmVudGVyKSB7XG4gICAgICAgICAgb3B0cy5lbnRlcihnbHlwaCwgZW50cnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVudHJ5Lm5ld1N0YXRlICE9PSAwKSB7XG4gICAgICAgICAgdGhpcy50cmF2ZXJzZShvcHRzLCBlbnRyeS5uZXdTdGF0ZSwgdmlzaXRlZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob3B0cy5leGl0KSB7XG4gICAgICAgICAgb3B0cy5leGl0KGdseXBoLCBlbnRyeSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQge2NhY2hlfSBmcm9tICcuLi9kZWNvcmF0b3JzJztcbmltcG9ydCB7cmFuZ2V9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQUFUTG9va3VwVGFibGUge1xuICBjb25zdHJ1Y3Rvcih0YWJsZSkge1xuICAgIHRoaXMudGFibGUgPSB0YWJsZTtcbiAgfVxuXG4gIGxvb2t1cChnbHlwaCkge1xuICAgIHN3aXRjaCAodGhpcy50YWJsZS52ZXJzaW9uKSB7XG4gICAgICBjYXNlIDA6IC8vIHNpbXBsZSBhcnJheSBmb3JtYXRcbiAgICAgICAgcmV0dXJuIHRoaXMudGFibGUudmFsdWVzLmdldEl0ZW0oZ2x5cGgpO1xuXG4gICAgICBjYXNlIDI6IC8vIHNlZ21lbnQgZm9ybWF0XG4gICAgICBjYXNlIDQ6IHtcbiAgICAgICAgbGV0IG1pbiA9IDA7XG4gICAgICAgIGxldCBtYXggPSB0aGlzLnRhYmxlLmJpbmFyeVNlYXJjaEhlYWRlci5uVW5pdHMgLSAxO1xuXG4gICAgICAgIHdoaWxlIChtaW4gPD0gbWF4KSB7XG4gICAgICAgICAgdmFyIG1pZCA9IChtaW4gKyBtYXgpID4+IDE7XG4gICAgICAgICAgdmFyIHNlZyA9IHRoaXMudGFibGUuc2VnbWVudHNbbWlkXTtcblxuICAgICAgICAgIC8vIHNwZWNpYWwgZW5kIG9mIHNlYXJjaCB2YWx1ZVxuICAgICAgICAgIGlmIChzZWcuZmlyc3RHbHlwaCA9PT0gMHhmZmZmKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZ2x5cGggPCBzZWcuZmlyc3RHbHlwaCkge1xuICAgICAgICAgICAgbWF4ID0gbWlkIC0gMTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGdseXBoID4gc2VnLmxhc3RHbHlwaCkge1xuICAgICAgICAgICAgbWluID0gbWlkICsgMTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMudGFibGUudmVyc2lvbiA9PT0gMikge1xuICAgICAgICAgICAgICByZXR1cm4gc2VnLnZhbHVlO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHNlZy52YWx1ZXNbZ2x5cGggLSBzZWcuZmlyc3RHbHlwaF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgNjogeyAvLyBsb29rdXAgc2luZ2xlXG4gICAgICAgIGxldCBtaW4gPSAwO1xuICAgICAgICBsZXQgbWF4ID0gdGhpcy50YWJsZS5iaW5hcnlTZWFyY2hIZWFkZXIublVuaXRzIC0gMTtcblxuICAgICAgICB3aGlsZSAobWluIDw9IG1heCkge1xuICAgICAgICAgIHZhciBtaWQgPSAobWluICsgbWF4KSA+PiAxO1xuICAgICAgICAgIHZhciBzZWcgPSB0aGlzLnRhYmxlLnNlZ21lbnRzW21pZF07XG5cbiAgICAgICAgICAvLyBzcGVjaWFsIGVuZCBvZiBzZWFyY2ggdmFsdWVcbiAgICAgICAgICBpZiAoc2VnLmdseXBoID09PSAweGZmZmYpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChnbHlwaCA8IHNlZy5nbHlwaCkge1xuICAgICAgICAgICAgbWF4ID0gbWlkIC0gMTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGdseXBoID4gc2VnLmdseXBoKSB7XG4gICAgICAgICAgICBtaW4gPSBtaWQgKyAxO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gc2VnLnZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDg6IC8vIGxvb2t1cCB0cmltbWVkXG4gICAgICAgIHJldHVybiB0aGlzLnRhYmxlLnZhbHVlc1tnbHlwaCAtIHRoaXMudGFibGUuZmlyc3RHbHlwaF07XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBsb29rdXAgdGFibGUgZm9ybWF0OiAke3RoaXMudGFibGUudmVyc2lvbn1gKTtcbiAgICB9XG4gIH1cblxuICBAY2FjaGVcbiAgZ2x5cGhzRm9yVmFsdWUoY2xhc3NWYWx1ZSkge1xuICAgIGxldCByZXMgPSBbXTtcblxuICAgIHN3aXRjaCAodGhpcy50YWJsZS52ZXJzaW9uKSB7XG4gICAgICBjYXNlIDI6IC8vIHNlZ21lbnQgZm9ybWF0XG4gICAgICBjYXNlIDQ6IHtcbiAgICAgICAgZm9yIChsZXQgc2VnbWVudCBvZiB0aGlzLnRhYmxlLnNlZ21lbnRzKSB7XG4gICAgICAgICAgaWYgKCh0aGlzLnRhYmxlLnZlcnNpb24gPT09IDIgJiYgc2VnbWVudC52YWx1ZSA9PT0gY2xhc3NWYWx1ZSkpIHtcbiAgICAgICAgICAgIHJlcy5wdXNoKC4uLnJhbmdlKHNlZ21lbnQuZmlyc3RHbHlwaCwgc2VnbWVudC5sYXN0R2x5cGggKyAxKSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBzZWdtZW50LnZhbHVlcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgICAgaWYgKHNlZ21lbnQudmFsdWVzW2luZGV4XSA9PT0gY2xhc3NWYWx1ZSkge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKHNlZ21lbnQuZmlyc3RHbHlwaCArIGluZGV4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDY6IHsgLy8gbG9va3VwIHNpbmdsZVxuICAgICAgICBmb3IgKGxldCBzZWdtZW50IG9mIHRoaXMudGFibGUuc2VnbWVudHMpIHtcbiAgICAgICAgICBpZiAoc2VnbWVudC52YWx1ZSA9PT0gY2xhc3NWYWx1ZSkge1xuICAgICAgICAgICAgcmVzLnB1c2goc2VnbWVudC5nbHlwaCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgODogeyAvLyBsb29rdXAgdHJpbW1lZFxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMudGFibGUudmFsdWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgaWYgKHRoaXMudGFibGUudmFsdWVzW2ldID09PSBjbGFzc1ZhbHVlKSB7XG4gICAgICAgICAgICByZXMucHVzaCh0aGlzLnRhYmxlLmZpcnN0R2x5cGggKyBpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGxvb2t1cCB0YWJsZSBmb3JtYXQ6ICR7dGhpcy50YWJsZS52ZXJzaW9ufWApO1xuICAgIH1cblxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cbiIsICJpbXBvcnQgU2hhcGluZ1BsYW4gZnJvbSAnLi9TaGFwaW5nUGxhbic7XG5pbXBvcnQgKiBhcyBTaGFwZXJzIGZyb20gJy4vc2hhcGVycyc7XG5pbXBvcnQgR2x5cGhJbmZvIGZyb20gJy4vR2x5cGhJbmZvJztcbmltcG9ydCBHU1VCUHJvY2Vzc29yIGZyb20gJy4vR1NVQlByb2Nlc3Nvcic7XG5pbXBvcnQgR1BPU1Byb2Nlc3NvciBmcm9tICcuL0dQT1NQcm9jZXNzb3InO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBPVExheW91dEVuZ2luZSB7XG4gIGNvbnN0cnVjdG9yKGZvbnQpIHtcbiAgICB0aGlzLmZvbnQgPSBmb250O1xuICAgIHRoaXMuZ2x5cGhJbmZvcyA9IG51bGw7XG4gICAgdGhpcy5wbGFuID0gbnVsbDtcbiAgICB0aGlzLkdTVUJQcm9jZXNzb3IgPSBudWxsO1xuICAgIHRoaXMuR1BPU1Byb2Nlc3NvciA9IG51bGw7XG4gICAgdGhpcy5mYWxsYmFja1Bvc2l0aW9uID0gdHJ1ZTtcblxuICAgIGlmIChmb250LkdTVUIpIHtcbiAgICAgIHRoaXMuR1NVQlByb2Nlc3NvciA9IG5ldyBHU1VCUHJvY2Vzc29yKGZvbnQsIGZvbnQuR1NVQik7XG4gICAgfVxuXG4gICAgaWYgKGZvbnQuR1BPUykge1xuICAgICAgdGhpcy5HUE9TUHJvY2Vzc29yID0gbmV3IEdQT1NQcm9jZXNzb3IoZm9udCwgZm9udC5HUE9TKTtcbiAgICB9XG4gIH1cblxuICBzZXR1cChnbHlwaFJ1bikge1xuICAgIC8vIE1hcCBnbHlwaHMgdG8gR2x5cGhJbmZvIG9iamVjdHMgc28gZGF0YSBjYW4gYmUgcGFzc2VkIGJldHdlZW5cbiAgICAvLyBHU1VCIGFuZCBHUE9TIHdpdGhvdXQgbXV0YXRpbmcgdGhlIHJlYWwgKHNoYXJlZCkgR2x5cGggb2JqZWN0cy5cbiAgICB0aGlzLmdseXBoSW5mb3MgPSBnbHlwaFJ1bi5nbHlwaHMubWFwKGdseXBoID0+IG5ldyBHbHlwaEluZm8odGhpcy5mb250LCBnbHlwaC5pZCwgWy4uLmdseXBoLmNvZGVQb2ludHNdKSk7XG5cbiAgICAvLyBTZWxlY3QgYSBzY3JpcHQgYmFzZWQgb24gd2hhdCBpcyBhdmFpbGFibGUgaW4gR1NVQi9HUE9TLlxuICAgIGxldCBzY3JpcHQgPSBudWxsO1xuICAgIGlmICh0aGlzLkdQT1NQcm9jZXNzb3IpIHtcbiAgICAgIHNjcmlwdCA9IHRoaXMuR1BPU1Byb2Nlc3Nvci5zZWxlY3RTY3JpcHQoZ2x5cGhSdW4uc2NyaXB0LCBnbHlwaFJ1bi5sYW5ndWFnZSwgZ2x5cGhSdW4uZGlyZWN0aW9uKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5HU1VCUHJvY2Vzc29yKSB7XG4gICAgICBzY3JpcHQgPSB0aGlzLkdTVUJQcm9jZXNzb3Iuc2VsZWN0U2NyaXB0KGdseXBoUnVuLnNjcmlwdCwgZ2x5cGhSdW4ubGFuZ3VhZ2UsIGdseXBoUnVuLmRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgLy8gQ2hvb3NlIGEgc2hhcGVyIGJhc2VkIG9uIHRoZSBzY3JpcHQsIGFuZCBzZXR1cCBhIHNoYXBpbmcgcGxhbi5cbiAgICAvLyBUaGlzIGRldGVybWluZXMgd2hpY2ggZmVhdHVyZXMgdG8gYXBwbHkgdG8gd2hpY2ggZ2x5cGhzLlxuICAgIHRoaXMuc2hhcGVyID0gU2hhcGVycy5jaG9vc2Uoc2NyaXB0KTtcbiAgICB0aGlzLnBsYW4gPSBuZXcgU2hhcGluZ1BsYW4odGhpcy5mb250LCBzY3JpcHQsIGdseXBoUnVuLmRpcmVjdGlvbik7XG4gICAgdGhpcy5zaGFwZXIucGxhbih0aGlzLnBsYW4sIHRoaXMuZ2x5cGhJbmZvcywgZ2x5cGhSdW4uZmVhdHVyZXMpO1xuXG4gICAgLy8gQXNzaWduIGNob3NlbiBmZWF0dXJlcyB0byBvdXRwdXQgZ2x5cGggcnVuXG4gICAgZm9yIChsZXQga2V5IGluIHRoaXMucGxhbi5hbGxGZWF0dXJlcykge1xuICAgICAgZ2x5cGhSdW4uZmVhdHVyZXNba2V5XSA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgc3Vic3RpdHV0ZShnbHlwaFJ1bikge1xuICAgIGlmICh0aGlzLkdTVUJQcm9jZXNzb3IpIHtcbiAgICAgIHRoaXMucGxhbi5wcm9jZXNzKHRoaXMuR1NVQlByb2Nlc3NvciwgdGhpcy5nbHlwaEluZm9zKTtcblxuICAgICAgLy8gTWFwIGdseXBoIGluZm9zIGJhY2sgdG8gbm9ybWFsIEdseXBoIG9iamVjdHNcbiAgICAgIGdseXBoUnVuLmdseXBocyA9IHRoaXMuZ2x5cGhJbmZvcy5tYXAoZ2x5cGhJbmZvID0+IHRoaXMuZm9udC5nZXRHbHlwaChnbHlwaEluZm8uaWQsIGdseXBoSW5mby5jb2RlUG9pbnRzKSk7XG4gICAgfVxuICB9XG5cbiAgcG9zaXRpb24oZ2x5cGhSdW4pIHtcbiAgICBpZiAodGhpcy5zaGFwZXIuemVyb01hcmtXaWR0aHMgPT09ICdCRUZPUkVfR1BPUycpIHtcbiAgICAgIHRoaXMuemVyb01hcmtBZHZhbmNlcyhnbHlwaFJ1bi5wb3NpdGlvbnMpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLkdQT1NQcm9jZXNzb3IpIHtcbiAgICAgIHRoaXMucGxhbi5wcm9jZXNzKHRoaXMuR1BPU1Byb2Nlc3NvciwgdGhpcy5nbHlwaEluZm9zLCBnbHlwaFJ1bi5wb3NpdGlvbnMpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNoYXBlci56ZXJvTWFya1dpZHRocyA9PT0gJ0FGVEVSX0dQT1MnKSB7XG4gICAgICB0aGlzLnplcm9NYXJrQWR2YW5jZXMoZ2x5cGhSdW4ucG9zaXRpb25zKTtcbiAgICB9XG5cbiAgICAvLyBSZXZlcnNlIHRoZSBnbHlwaHMgYW5kIHBvc2l0aW9ucyBpZiB0aGUgc2NyaXB0IGlzIHJpZ2h0LXRvLWxlZnRcbiAgICBpZiAoZ2x5cGhSdW4uZGlyZWN0aW9uID09PSAncnRsJykge1xuICAgICAgZ2x5cGhSdW4uZ2x5cGhzLnJldmVyc2UoKTtcbiAgICAgIGdseXBoUnVuLnBvc2l0aW9ucy5yZXZlcnNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuR1BPU1Byb2Nlc3NvciAmJiB0aGlzLkdQT1NQcm9jZXNzb3IuZmVhdHVyZXM7XG4gIH1cblxuICB6ZXJvTWFya0FkdmFuY2VzKHBvc2l0aW9ucykge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5nbHlwaEluZm9zLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAodGhpcy5nbHlwaEluZm9zW2ldLmlzTWFyaykge1xuICAgICAgICBwb3NpdGlvbnNbaV0ueEFkdmFuY2UgPSAwO1xuICAgICAgICBwb3NpdGlvbnNbaV0ueUFkdmFuY2UgPSAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNsZWFudXAoKSB7XG4gICAgdGhpcy5nbHlwaEluZm9zID0gbnVsbDtcbiAgICB0aGlzLnBsYW4gPSBudWxsO1xuICAgIHRoaXMuc2hhcGVyID0gbnVsbDtcbiAgfVxuXG4gIGdldEF2YWlsYWJsZUZlYXR1cmVzKHNjcmlwdCwgbGFuZ3VhZ2UpIHtcbiAgICBsZXQgZmVhdHVyZXMgPSBbXTtcblxuICAgIGlmICh0aGlzLkdTVUJQcm9jZXNzb3IpIHtcbiAgICAgIHRoaXMuR1NVQlByb2Nlc3Nvci5zZWxlY3RTY3JpcHQoc2NyaXB0LCBsYW5ndWFnZSk7XG4gICAgICBmZWF0dXJlcy5wdXNoKC4uLk9iamVjdC5rZXlzKHRoaXMuR1NVQlByb2Nlc3Nvci5mZWF0dXJlcykpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLkdQT1NQcm9jZXNzb3IpIHtcbiAgICAgIHRoaXMuR1BPU1Byb2Nlc3Nvci5zZWxlY3RTY3JpcHQoc2NyaXB0LCBsYW5ndWFnZSk7XG4gICAgICBmZWF0dXJlcy5wdXNoKC4uLk9iamVjdC5rZXlzKHRoaXMuR1BPU1Byb2Nlc3Nvci5mZWF0dXJlcykpO1xuICAgIH1cblxuICAgIHJldHVybiBmZWF0dXJlcztcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIFNjcmlwdCBmcm9tICcuLi9sYXlvdXQvU2NyaXB0JztcblxuLyoqXG4gKiBTaGFwaW5nUGxhbnMgYXJlIHVzZWQgYnkgdGhlIE9wZW5UeXBlIHNoYXBlcnMgdG8gc3RvcmUgd2hpY2hcbiAqIGZlYXR1cmVzIHNob3VsZCBieSBhcHBsaWVkLCBhbmQgaW4gd2hhdCBvcmRlciB0byBhcHBseSB0aGVtLlxuICogVGhlIGZlYXR1cmVzIGFyZSBhcHBsaWVkIGluIGdyb3VwcyBjYWxsZWQgc3RhZ2VzLiBBIGZlYXR1cmVcbiAqIGNhbiBiZSBhcHBsaWVkIGdsb2JhbGx5IHRvIGFsbCBnbHlwaHMsIG9yIGxvY2FsbHkgdG8gb25seVxuICogc3BlY2lmaWMgZ2x5cGhzLlxuICpcbiAqIEBwcml2YXRlXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNoYXBpbmdQbGFuIHtcbiAgY29uc3RydWN0b3IoZm9udCwgc2NyaXB0LCBkaXJlY3Rpb24pIHtcbiAgICB0aGlzLmZvbnQgPSBmb250O1xuICAgIHRoaXMuc2NyaXB0ID0gc2NyaXB0O1xuICAgIHRoaXMuZGlyZWN0aW9uID0gZGlyZWN0aW9uO1xuICAgIHRoaXMuc3RhZ2VzID0gW107XG4gICAgdGhpcy5nbG9iYWxGZWF0dXJlcyA9IHt9O1xuICAgIHRoaXMuYWxsRmVhdHVyZXMgPSB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHRoZSBnaXZlbiBmZWF0dXJlcyB0byB0aGUgbGFzdCBzdGFnZS5cbiAgICogSWdub3JlcyBmZWF0dXJlcyB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIGFwcGxpZWQuXG4gICAqL1xuICBfYWRkRmVhdHVyZXMoZmVhdHVyZXMsIGdsb2JhbCkge1xuICAgIGxldCBzdGFnZUluZGV4ID0gdGhpcy5zdGFnZXMubGVuZ3RoIC0gMTtcbiAgICBsZXQgc3RhZ2UgPSB0aGlzLnN0YWdlc1tzdGFnZUluZGV4XTtcbiAgICBmb3IgKGxldCBmZWF0dXJlIG9mIGZlYXR1cmVzKSB7XG4gICAgICBpZiAodGhpcy5hbGxGZWF0dXJlc1tmZWF0dXJlXSA9PSBudWxsKSB7XG4gICAgICAgIHN0YWdlLnB1c2goZmVhdHVyZSk7XG4gICAgICAgIHRoaXMuYWxsRmVhdHVyZXNbZmVhdHVyZV0gPSBzdGFnZUluZGV4O1xuXG4gICAgICAgIGlmIChnbG9iYWwpIHtcbiAgICAgICAgICB0aGlzLmdsb2JhbEZlYXR1cmVzW2ZlYXR1cmVdID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgZmVhdHVyZXMgdG8gdGhlIGxhc3Qgc3RhZ2VcbiAgICovXG4gIGFkZChhcmcsIGdsb2JhbCA9IHRydWUpIHtcbiAgICBpZiAodGhpcy5zdGFnZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLnN0YWdlcy5wdXNoKFtdKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGFyZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGFyZyA9IFthcmddO1xuICAgIH1cblxuICAgIGlmIChBcnJheS5pc0FycmF5KGFyZykpIHtcbiAgICAgIHRoaXMuX2FkZEZlYXR1cmVzKGFyZywgZ2xvYmFsKTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmcgPT09ICdvYmplY3QnKSB7XG4gICAgICB0aGlzLl9hZGRGZWF0dXJlcyhhcmcuZ2xvYmFsIHx8IFtdLCB0cnVlKTtcbiAgICAgIHRoaXMuX2FkZEZlYXR1cmVzKGFyZy5sb2NhbCB8fCBbXSwgZmFsc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBhcmd1bWVudCB0byBTaGFwaW5nUGxhbiNhZGRcIik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIG5ldyBzdGFnZVxuICAgKi9cbiAgYWRkU3RhZ2UoYXJnLCBnbG9iYWwpIHtcbiAgICBpZiAodHlwZW9mIGFyZyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5zdGFnZXMucHVzaChhcmcsIFtdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGFnZXMucHVzaChbXSk7XG4gICAgICB0aGlzLmFkZChhcmcsIGdsb2JhbCk7XG4gICAgfVxuICB9XG5cbiAgc2V0RmVhdHVyZU92ZXJyaWRlcyhmZWF0dXJlcykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGZlYXR1cmVzKSkge1xuICAgICAgdGhpcy5hZGQoZmVhdHVyZXMpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGZlYXR1cmVzID09PSAnb2JqZWN0Jykge1xuICAgICAgZm9yIChsZXQgdGFnIGluIGZlYXR1cmVzKSB7XG4gICAgICAgIGlmIChmZWF0dXJlc1t0YWddKSB7XG4gICAgICAgICAgdGhpcy5hZGQodGFnKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmFsbEZlYXR1cmVzW3RhZ10gIT0gbnVsbCkge1xuICAgICAgICAgIGxldCBzdGFnZSA9IHRoaXMuc3RhZ2VzW3RoaXMuYWxsRmVhdHVyZXNbdGFnXV07XG4gICAgICAgICAgc3RhZ2Uuc3BsaWNlKHN0YWdlLmluZGV4T2YodGFnKSwgMSk7XG4gICAgICAgICAgZGVsZXRlIHRoaXMuYWxsRmVhdHVyZXNbdGFnXTtcbiAgICAgICAgICBkZWxldGUgdGhpcy5nbG9iYWxGZWF0dXJlc1t0YWddO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFzc2lnbnMgdGhlIGdsb2JhbCBmZWF0dXJlcyB0byB0aGUgZ2l2ZW4gZ2x5cGhzXG4gICAqL1xuICBhc3NpZ25HbG9iYWxGZWF0dXJlcyhnbHlwaHMpIHtcbiAgICBmb3IgKGxldCBnbHlwaCBvZiBnbHlwaHMpIHtcbiAgICAgIGZvciAobGV0IGZlYXR1cmUgaW4gdGhpcy5nbG9iYWxGZWF0dXJlcykge1xuICAgICAgICBnbHlwaC5mZWF0dXJlc1tmZWF0dXJlXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4ZWN1dGVzIHRoZSBwbGFubmVkIHN0YWdlcyB1c2luZyB0aGUgZ2l2ZW4gT1RQcm9jZXNzb3JcbiAgICovXG4gIHByb2Nlc3MocHJvY2Vzc29yLCBnbHlwaHMsIHBvc2l0aW9ucykge1xuICAgIGZvciAobGV0IHN0YWdlIG9mIHRoaXMuc3RhZ2VzKSB7XG4gICAgICBpZiAodHlwZW9mIHN0YWdlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGlmICghcG9zaXRpb25zKSB7XG4gICAgICAgICAgc3RhZ2UodGhpcy5mb250LCBnbHlwaHMsIHRoaXMpO1xuICAgICAgICB9XG5cbiAgICAgIH0gZWxzZSBpZiAoc3RhZ2UubGVuZ3RoID4gMCkge1xuICAgICAgICBwcm9jZXNzb3IuYXBwbHlGZWF0dXJlcyhzdGFnZSwgZ2x5cGhzLCBwb3NpdGlvbnMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCBEZWZhdWx0U2hhcGVyIGZyb20gJy4vRGVmYXVsdFNoYXBlcic7XG5pbXBvcnQgQXJhYmljU2hhcGVyIGZyb20gJy4vQXJhYmljU2hhcGVyJztcbmltcG9ydCBIYW5ndWxTaGFwZXIgZnJvbSAnLi9IYW5ndWxTaGFwZXInO1xuaW1wb3J0IEluZGljU2hhcGVyIGZyb20gJy4vSW5kaWNTaGFwZXInO1xuaW1wb3J0IFVuaXZlcnNhbFNoYXBlciBmcm9tICcuL1VuaXZlcnNhbFNoYXBlcic7XG5cbmNvbnN0IFNIQVBFUlMgPSB7XG4gIGFyYWI6IEFyYWJpY1NoYXBlciwgICAgLy8gQXJhYmljXG4gIG1vbmc6IEFyYWJpY1NoYXBlciwgICAgLy8gTW9uZ29saWFuXG4gIHN5cmM6IEFyYWJpY1NoYXBlciwgICAgLy8gU3lyaWFjXG4gICdua28gJzogQXJhYmljU2hhcGVyLCAgLy8gTidLb1xuICBwaGFnOiBBcmFiaWNTaGFwZXIsICAgIC8vIFBoYWdzIFBhXG4gIG1hbmQ6IEFyYWJpY1NoYXBlciwgICAgLy8gTWFuZGFpY1xuICBtYW5pOiBBcmFiaWNTaGFwZXIsICAgIC8vIE1hbmljaGFlYW5cbiAgcGhscDogQXJhYmljU2hhcGVyLCAgICAvLyBQc2FsdGVyIFBhaGxhdmlcblxuICBoYW5nOiBIYW5ndWxTaGFwZXIsICAgIC8vIEhhbmd1bFxuXG4gIGJuZzI6IEluZGljU2hhcGVyLCAgICAgLy8gQmVuZ2FsaVxuICBiZW5nOiBJbmRpY1NoYXBlciwgICAgIC8vIEJlbmdhbGlcbiAgZGV2MjogSW5kaWNTaGFwZXIsICAgICAvLyBEZXZhbmFnYXJpXG4gIGRldmE6IEluZGljU2hhcGVyLCAgICAgLy8gRGV2YW5hZ2FyaVxuICBnanIyOiBJbmRpY1NoYXBlciwgICAgIC8vIEd1amFyYXRpXG4gIGd1anI6IEluZGljU2hhcGVyLCAgICAgLy8gR3VqYXJhdGlcbiAgZ3VydTogSW5kaWNTaGFwZXIsICAgICAvLyBHdXJtdWtoaVxuICBndXIyOiBJbmRpY1NoYXBlciwgICAgIC8vIEd1cm11a2hpXG4gIGtuZGE6IEluZGljU2hhcGVyLCAgICAgLy8gS2FubmFkYVxuICBrbmQyOiBJbmRpY1NoYXBlciwgICAgIC8vIEthbm5hZGFcbiAgbWxtMjogSW5kaWNTaGFwZXIsICAgICAvLyBNYWxheWFsYW1cbiAgbWx5bTogSW5kaWNTaGFwZXIsICAgICAvLyBNYWxheWFsYW1cbiAgb3J5MjogSW5kaWNTaGFwZXIsICAgICAvLyBPcml5YVxuICBvcnlhOiBJbmRpY1NoYXBlciwgICAgIC8vIE9yaXlhXG4gIHRhbWw6IEluZGljU2hhcGVyLCAgICAgLy8gVGFtaWxcbiAgdG1sMjogSW5kaWNTaGFwZXIsICAgICAvLyBUYW1pbFxuICB0ZWx1OiBJbmRpY1NoYXBlciwgICAgIC8vIFRlbHVndVxuICB0ZWwyOiBJbmRpY1NoYXBlciwgICAgIC8vIFRlbHVndVxuICBraG1yOiBJbmRpY1NoYXBlciwgICAgIC8vIEtobWVyXG5cbiAgYmFsaTogVW5pdmVyc2FsU2hhcGVyLCAvLyBCYWxpbmVzZVxuICBiYXRrOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEJhdGFrXG4gIGJyYWg6IFVuaXZlcnNhbFNoYXBlciwgLy8gQnJhaG1pXG4gIGJ1Z2k6IFVuaXZlcnNhbFNoYXBlciwgLy8gQnVnaW5lc2VcbiAgYnVoZDogVW5pdmVyc2FsU2hhcGVyLCAvLyBCdWhpZFxuICBjYWttOiBVbml2ZXJzYWxTaGFwZXIsIC8vIENoYWttYVxuICBjaGFtOiBVbml2ZXJzYWxTaGFwZXIsIC8vIENoYW1cbiAgZHVwbDogVW5pdmVyc2FsU2hhcGVyLCAvLyBEdXBsb3lhblxuICBlZ3lwOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEVneXB0aWFuIEhpZXJvZ2x5cGhzXG4gIGdyYW46IFVuaXZlcnNhbFNoYXBlciwgLy8gR3JhbnRoYVxuICBoYW5vOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEhhbnVub29cbiAgamF2YTogVW5pdmVyc2FsU2hhcGVyLCAvLyBKYXZhbmVzZVxuICBrdGhpOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEthaXRoaVxuICBrYWxpOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEtheWFoIExpXG4gIGtoYXI6IFVuaXZlcnNhbFNoYXBlciwgLy8gS2hhcm9zaHRoaVxuICBraG9qOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEtob2praVxuICBzaW5kOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEtodWRhd2FkaVxuICBsZXBjOiBVbml2ZXJzYWxTaGFwZXIsIC8vIExlcGNoYVxuICBsaW1iOiBVbml2ZXJzYWxTaGFwZXIsIC8vIExpbWJ1XG4gIG1haGo6IFVuaXZlcnNhbFNoYXBlciwgLy8gTWFoYWphbmlcbiAgLy8gbWFuZDogVW5pdmVyc2FsU2hhcGVyLCAvLyBNYW5kYWljXG4gIC8vIG1hbmk6IFVuaXZlcnNhbFNoYXBlciwgLy8gTWFuaWNoYWVhblxuICBtdGVpOiBVbml2ZXJzYWxTaGFwZXIsIC8vIE1laXRlaSBNYXlla1xuICBtb2RpOiBVbml2ZXJzYWxTaGFwZXIsIC8vIE1vZGlcbiAgLy8gbW9uZzogVW5pdmVyc2FsU2hhcGVyLCAvLyBNb25nb2xpYW5cbiAgLy8gJ25rbyAnOiBVbml2ZXJzYWxTaGFwZXIsIC8vIE7igJlLb1xuICBobW5nOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFBhaGF3aCBIbW9uZ1xuICAvLyBwaGFnOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFBoYWdzLXBhXG4gIC8vIHBobHA6IFVuaXZlcnNhbFNoYXBlciwgLy8gUHNhbHRlciBQYWhsYXZpXG4gIHJqbmc6IFVuaXZlcnNhbFNoYXBlciwgLy8gUmVqYW5nXG4gIHNhdXI6IFVuaXZlcnNhbFNoYXBlciwgLy8gU2F1cmFzaHRyYVxuICBzaHJkOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFNoYXJhZGFcbiAgc2lkZDogVW5pdmVyc2FsU2hhcGVyLCAvLyBTaWRkaGFtXG4gIHNpbmg6IEluZGljU2hhcGVyLCAvLyBTaW5oYWxhXG4gIHN1bmQ6IFVuaXZlcnNhbFNoYXBlciwgLy8gU3VuZGFuZXNlXG4gIHN5bG86IFVuaXZlcnNhbFNoYXBlciwgLy8gU3lsb3RpIE5hZ3JpXG4gIHRnbGc6IFVuaXZlcnNhbFNoYXBlciwgLy8gVGFnYWxvZ1xuICB0YWdiOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRhZ2JhbndhXG4gIHRhbGU6IFVuaXZlcnNhbFNoYXBlciwgLy8gVGFpIExlXG4gIGxhbmE6IFVuaXZlcnNhbFNoYXBlciwgLy8gVGFpIFRoYW1cbiAgdGF2dDogVW5pdmVyc2FsU2hhcGVyLCAvLyBUYWkgVmlldFxuICB0YWtyOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRha3JpXG4gIHRpYnQ6IFVuaXZlcnNhbFNoYXBlciwgLy8gVGliZXRhblxuICB0Zm5nOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRpZmluYWdoXG4gIHRpcmg6IFVuaXZlcnNhbFNoYXBlciwgLy8gVGlyaHV0YVxuXG4gIGxhdG46IERlZmF1bHRTaGFwZXIsICAgLy8gTGF0aW5cbiAgREZMVDogRGVmYXVsdFNoYXBlciAgICAvLyBEZWZhdWx0XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY2hvb3NlKHNjcmlwdCkge1xuICBpZiAoIUFycmF5LmlzQXJyYXkoc2NyaXB0KSkge1xuICAgIHNjcmlwdCA9IFtzY3JpcHRdO1xuICB9XG5cbiAgZm9yIChsZXQgcyBvZiBzY3JpcHQpIHtcbiAgICBsZXQgc2hhcGVyID0gU0hBUEVSU1tzXTtcbiAgICBpZiAoc2hhcGVyKSB7XG4gICAgICByZXR1cm4gc2hhcGVyO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBEZWZhdWx0U2hhcGVyO1xufVxuIiwgImltcG9ydCB7aXNEaWdpdH0gZnJvbSAndW5pY29kZS1wcm9wZXJ0aWVzJztcblxuY29uc3QgVkFSSUFUSU9OX0ZFQVRVUkVTID0gWydydnJuJ107XG5jb25zdCBDT01NT05fRkVBVFVSRVMgPSBbJ2NjbXAnLCAnbG9jbCcsICdybGlnJywgJ21hcmsnLCAnbWttayddO1xuY29uc3QgRlJBQ1RJT05BTF9GRUFUVVJFUyA9IFsnZnJhYycsICdudW1yJywgJ2Rub20nXTtcbmNvbnN0IEhPUklaT05UQUxfRkVBVFVSRVMgPSBbJ2NhbHQnLCAnY2xpZycsICdsaWdhJywgJ3JjbHQnLCAnY3VycycsICdrZXJuJ107XG5jb25zdCBWRVJUSUNBTF9GRUFUVVJFUyA9IFsndmVydCddO1xuY29uc3QgRElSRUNUSU9OQUxfRkVBVFVSRVMgPSB7XG4gIGx0cjogWydsdHJhJywgJ2x0cm0nXSxcbiAgcnRsOiBbJ3J0bGEnLCAncnRsbSddXG59O1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEZWZhdWx0U2hhcGVyIHtcbiAgc3RhdGljIHplcm9NYXJrV2lkdGhzID0gJ0FGVEVSX0dQT1MnO1xuICBzdGF0aWMgcGxhbihwbGFuLCBnbHlwaHMsIGZlYXR1cmVzKSB7XG4gICAgLy8gUGxhbiB0aGUgZmVhdHVyZXMgd2Ugd2FudCB0byBhcHBseVxuICAgIHRoaXMucGxhblByZXByb2Nlc3NpbmcocGxhbik7XG4gICAgdGhpcy5wbGFuRmVhdHVyZXMocGxhbik7XG4gICAgdGhpcy5wbGFuUG9zdHByb2Nlc3NpbmcocGxhbiwgZmVhdHVyZXMpO1xuXG4gICAgLy8gQXNzaWduIHRoZSBnbG9iYWwgZmVhdHVyZXMgdG8gYWxsIHRoZSBnbHlwaHNcbiAgICBwbGFuLmFzc2lnbkdsb2JhbEZlYXR1cmVzKGdseXBocyk7XG5cbiAgICAvLyBBc3NpZ24gbG9jYWwgZmVhdHVyZXMgdG8gZ2x5cGhzXG4gICAgdGhpcy5hc3NpZ25GZWF0dXJlcyhwbGFuLCBnbHlwaHMpO1xuICB9XG5cbiAgc3RhdGljIHBsYW5QcmVwcm9jZXNzaW5nKHBsYW4pIHtcbiAgICBwbGFuLmFkZCh7XG4gICAgICBnbG9iYWw6IFsuLi5WQVJJQVRJT05fRkVBVFVSRVMsIC4uLkRJUkVDVElPTkFMX0ZFQVRVUkVTW3BsYW4uZGlyZWN0aW9uXV0sXG4gICAgICBsb2NhbDogRlJBQ1RJT05BTF9GRUFUVVJFU1xuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIHBsYW5GZWF0dXJlcyhwbGFuKSB7XG4gICAgLy8gRG8gbm90aGluZyBieSBkZWZhdWx0LiBMZXQgc3ViY2xhc3NlcyBvdmVycmlkZSB0aGlzLlxuICB9XG5cbiAgc3RhdGljIHBsYW5Qb3N0cHJvY2Vzc2luZyhwbGFuLCB1c2VyRmVhdHVyZXMpIHtcbiAgICBwbGFuLmFkZChbLi4uQ09NTU9OX0ZFQVRVUkVTLCAuLi5IT1JJWk9OVEFMX0ZFQVRVUkVTXSk7XG4gICAgcGxhbi5zZXRGZWF0dXJlT3ZlcnJpZGVzKHVzZXJGZWF0dXJlcyk7XG4gIH1cblxuICBzdGF0aWMgYXNzaWduRmVhdHVyZXMocGxhbiwgZ2x5cGhzKSB7XG4gICAgLy8gRW5hYmxlIGNvbnRleHR1YWwgZnJhY3Rpb25zXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnbHlwaHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBnbHlwaCA9IGdseXBoc1tpXTtcbiAgICAgIGlmIChnbHlwaC5jb2RlUG9pbnRzWzBdID09PSAweDIwNDQpIHsgLy8gZnJhY3Rpb24gc2xhc2hcbiAgICAgICAgbGV0IHN0YXJ0ID0gaTtcbiAgICAgICAgbGV0IGVuZCA9IGkgKyAxO1xuXG4gICAgICAgIC8vIEFwcGx5IG51bWVyYXRvclxuICAgICAgICB3aGlsZSAoc3RhcnQgPiAwICYmIGlzRGlnaXQoZ2x5cGhzW3N0YXJ0IC0gMV0uY29kZVBvaW50c1swXSkpIHtcbiAgICAgICAgICBnbHlwaHNbc3RhcnQgLSAxXS5mZWF0dXJlcy5udW1yID0gdHJ1ZTtcbiAgICAgICAgICBnbHlwaHNbc3RhcnQgLSAxXS5mZWF0dXJlcy5mcmFjID0gdHJ1ZTtcbiAgICAgICAgICBzdGFydC0tO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXBwbHkgZGVub21pbmF0b3JcbiAgICAgICAgd2hpbGUgKGVuZCA8IGdseXBocy5sZW5ndGggJiYgaXNEaWdpdChnbHlwaHNbZW5kXS5jb2RlUG9pbnRzWzBdKSkge1xuICAgICAgICAgIGdseXBoc1tlbmRdLmZlYXR1cmVzLmRub20gPSB0cnVlO1xuICAgICAgICAgIGdseXBoc1tlbmRdLmZlYXR1cmVzLmZyYWMgPSB0cnVlO1xuICAgICAgICAgIGVuZCsrO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXBwbHkgZnJhY3Rpb24gc2xhc2hcbiAgICAgICAgZ2x5cGguZmVhdHVyZXMuZnJhYyA9IHRydWU7XG4gICAgICAgIGkgPSBlbmQgLSAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCBEZWZhdWx0U2hhcGVyIGZyb20gJy4vRGVmYXVsdFNoYXBlcic7XG5pbXBvcnQge2dldENhdGVnb3J5fSBmcm9tICd1bmljb2RlLXByb3BlcnRpZXMnO1xuaW1wb3J0IFVuaWNvZGVUcmllIGZyb20gJ3VuaWNvZGUtdHJpZSc7XG5pbXBvcnQgeyBkZWNvZGVCYXNlNjQgfSBmcm9tICcuLi8uLi91dGlscyc7XG5cbmNvbnN0IHRyaWUgPSBuZXcgVW5pY29kZVRyaWUoZGVjb2RlQmFzZTY0KHJlcXVpcmUoJ2ZzJykucmVhZEZpbGVTeW5jKF9fZGlybmFtZSArICcvZGF0YS50cmllJywgJ2Jhc2U2NCcpKSk7XG5jb25zdCBGRUFUVVJFUyA9IFsnaXNvbCcsICdmaW5hJywgJ2ZpbjInLCAnZmluMycsICdtZWRpJywgJ21lZDInLCAnaW5pdCddO1xuXG5jb25zdCBTaGFwaW5nQ2xhc3NlcyA9IHtcbiAgTm9uX0pvaW5pbmc6IDAsXG4gIExlZnRfSm9pbmluZzogMSxcbiAgUmlnaHRfSm9pbmluZzogMixcbiAgRHVhbF9Kb2luaW5nOiAzLFxuICBKb2luX0NhdXNpbmc6IDMsXG4gIEFMQVBIOiA0LFxuICAnREFMQVRIIFJJU0gnOiA1LFxuICBUcmFuc3BhcmVudDogNlxufTtcblxuY29uc3QgSVNPTCA9ICdpc29sJztcbmNvbnN0IEZJTkEgPSAnZmluYSc7XG5jb25zdCBGSU4yID0gJ2ZpbjInO1xuY29uc3QgRklOMyA9ICdmaW4zJztcbmNvbnN0IE1FREkgPSAnbWVkaSc7XG5jb25zdCBNRUQyID0gJ21lZDInO1xuY29uc3QgSU5JVCA9ICdpbml0JztcbmNvbnN0IE5PTkUgPSBudWxsO1xuXG4vLyBFYWNoIGVudHJ5IGlzIFtwcmV2QWN0aW9uLCBjdXJBY3Rpb24sIG5leHRTdGF0ZV1cbmNvbnN0IFNUQVRFX1RBQkxFID0gW1xuICAvLyAgIE5vbl9Kb2luaW5nLCAgICAgICAgTGVmdF9Kb2luaW5nLCAgICAgICBSaWdodF9Kb2luaW5nLCAgICAgRHVhbF9Kb2luaW5nLCAgICAgICAgICAgQUxBUEgsICAgICAgICAgICAgREFMQVRIIFJJU0hcbiAgLy8gU3RhdGUgMDogcHJldiB3YXMgVSwgIG5vdCB3aWxsaW5nIHRvIGpvaW4uXG4gIFsgWyBOT05FLCBOT05FLCAwIF0sICBbIE5PTkUsIElTT0wsIDIgXSwgIFsgTk9ORSwgSVNPTCwgMSBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIE5PTkUsIElTT0wsIDEgXSwgIFsgTk9ORSwgSVNPTCwgNiBdIF0sXG5cbiAgLy8gU3RhdGUgMTogcHJldiB3YXMgUiBvciBJU09ML0FMQVBILCAgbm90IHdpbGxpbmcgdG8gam9pbi5cbiAgWyBbIE5PTkUsIE5PTkUsIDAgXSwgIFsgTk9ORSwgSVNPTCwgMiBdLCAgWyBOT05FLCBJU09MLCAxIF0sICBbIE5PTkUsIElTT0wsIDIgXSwgIFsgTk9ORSwgRklOMiwgNSBdLCAgWyBOT05FLCBJU09MLCA2IF0gXSxcblxuICAvLyBTdGF0ZSAyOiBwcmV2IHdhcyBEL0wgaW4gSVNPTCBmb3JtLCAgd2lsbGluZyB0byBqb2luLlxuICBbIFsgTk9ORSwgTk9ORSwgMCBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIElOSVQsIEZJTkEsIDEgXSwgIFsgSU5JVCwgRklOQSwgMyBdLCAgWyBJTklULCBGSU5BLCA0IF0sICBbIElOSVQsIEZJTkEsIDYgXSBdLFxuXG4gIC8vIFN0YXRlIDM6IHByZXYgd2FzIEQgaW4gRklOQSBmb3JtLCAgd2lsbGluZyB0byBqb2luLlxuICBbIFsgTk9ORSwgTk9ORSwgMCBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIE1FREksIEZJTkEsIDEgXSwgIFsgTUVESSwgRklOQSwgMyBdLCAgWyBNRURJLCBGSU5BLCA0IF0sICBbIE1FREksIEZJTkEsIDYgXSBdLFxuXG4gIC8vIFN0YXRlIDQ6IHByZXYgd2FzIEZJTkEgQUxBUEgsICBub3Qgd2lsbGluZyB0byBqb2luLlxuICBbIFsgTk9ORSwgTk9ORSwgMCBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIE1FRDIsIElTT0wsIDEgXSwgIFsgTUVEMiwgSVNPTCwgMiBdLCAgWyBNRUQyLCBGSU4yLCA1IF0sICBbIE1FRDIsIElTT0wsIDYgXSBdLFxuXG4gIC8vIFN0YXRlIDU6IHByZXYgd2FzIEZJTjIvRklOMyBBTEFQSCwgIG5vdCB3aWxsaW5nIHRvIGpvaW4uXG4gIFsgWyBOT05FLCBOT05FLCAwIF0sICBbIE5PTkUsIElTT0wsIDIgXSwgIFsgSVNPTCwgSVNPTCwgMSBdLCAgWyBJU09MLCBJU09MLCAyIF0sICBbIElTT0wsIEZJTjIsIDUgXSwgIFsgSVNPTCwgSVNPTCwgNiBdIF0sXG5cbiAgLy8gU3RhdGUgNjogcHJldiB3YXMgREFMQVRIL1JJU0gsICBub3Qgd2lsbGluZyB0byBqb2luLlxuICBbIFsgTk9ORSwgTk9ORSwgMCBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIE5PTkUsIElTT0wsIDEgXSwgIFsgTk9ORSwgSVNPTCwgMiBdLCAgWyBOT05FLCBGSU4zLCA1IF0sICBbIE5PTkUsIElTT0wsIDYgXSBdXG5dO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGFwZXIgZm9yIEFyYWJpYywgYW5kIG90aGVyIGN1cnNpdmUgc2NyaXB0cy5cbiAqIEl0IHVzZXMgZGF0YSBmcm9tIEFyYWJpY1NoYXBpbmcudHh0IGluIHRoZSBVbmljb2RlIGRhdGFiYXNlLFxuICogY29tcGlsZWQgdG8gYSBVbmljb2RlVHJpZSBieSBnZW5lcmF0ZS1kYXRhLmNvZmZlZS5cbiAqXG4gKiBUaGUgc2hhcGluZyBzdGF0ZSBtYWNoaW5lIHdhcyBwb3J0ZWQgZnJvbSBIYXJmYnV6ei5cbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9iZWhkYWQvaGFyZmJ1enovYmxvYi9tYXN0ZXIvc3JjL2hiLW90LXNoYXBlLWNvbXBsZXgtYXJhYmljLmNjXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFyYWJpY1NoYXBlciBleHRlbmRzIERlZmF1bHRTaGFwZXIge1xuICBzdGF0aWMgcGxhbkZlYXR1cmVzKHBsYW4pIHtcbiAgICBwbGFuLmFkZChbJ2NjbXAnLCAnbG9jbCddKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IEZFQVRVUkVTLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgZmVhdHVyZSA9IEZFQVRVUkVTW2ldO1xuICAgICAgcGxhbi5hZGRTdGFnZShmZWF0dXJlLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcGxhbi5hZGRTdGFnZSgnbXNldCcpO1xuICB9XG5cbiAgc3RhdGljIGFzc2lnbkZlYXR1cmVzKHBsYW4sIGdseXBocykge1xuICAgIHN1cGVyLmFzc2lnbkZlYXR1cmVzKHBsYW4sIGdseXBocyk7XG5cbiAgICBsZXQgcHJldiA9IC0xO1xuICAgIGxldCBzdGF0ZSA9IDA7XG4gICAgbGV0IGFjdGlvbnMgPSBbXTtcblxuICAgIC8vIEFwcGx5IHRoZSBzdGF0ZSBtYWNoaW5lIHRvIG1hcCBnbHlwaHMgdG8gZmVhdHVyZXNcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdseXBocy5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGN1ckFjdGlvbiwgcHJldkFjdGlvbjtcbiAgICAgIHZhciBnbHlwaCA9IGdseXBoc1tpXTtcbiAgICAgIGxldCB0eXBlID0gZ2V0U2hhcGluZ0NsYXNzKGdseXBoLmNvZGVQb2ludHNbMF0pO1xuICAgICAgaWYgKHR5cGUgPT09IFNoYXBpbmdDbGFzc2VzLlRyYW5zcGFyZW50KSB7XG4gICAgICAgIGFjdGlvbnNbaV0gPSBOT05FO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgW3ByZXZBY3Rpb24sIGN1ckFjdGlvbiwgc3RhdGVdID0gU1RBVEVfVEFCTEVbc3RhdGVdW3R5cGVdO1xuXG4gICAgICBpZiAocHJldkFjdGlvbiAhPT0gTk9ORSAmJiBwcmV2ICE9PSAtMSkge1xuICAgICAgICBhY3Rpb25zW3ByZXZdID0gcHJldkFjdGlvbjtcbiAgICAgIH1cblxuICAgICAgYWN0aW9uc1tpXSA9IGN1ckFjdGlvbjtcbiAgICAgIHByZXYgPSBpO1xuICAgIH1cblxuICAgIC8vIEFwcGx5IHRoZSBjaG9zZW4gZmVhdHVyZXMgdG8gdGhlaXIgcmVzcGVjdGl2ZSBnbHlwaHNcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZ2x5cGhzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgbGV0IGZlYXR1cmU7XG4gICAgICB2YXIgZ2x5cGggPSBnbHlwaHNbaW5kZXhdO1xuICAgICAgaWYgKGZlYXR1cmUgPSBhY3Rpb25zW2luZGV4XSkge1xuICAgICAgICBnbHlwaC5mZWF0dXJlc1tmZWF0dXJlXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGdldFNoYXBpbmdDbGFzcyhjb2RlUG9pbnQpIHtcbiAgbGV0IHJlcyA9IHRyaWUuZ2V0KGNvZGVQb2ludCk7XG4gIGlmIChyZXMpIHtcbiAgICByZXR1cm4gcmVzIC0gMTtcbiAgfVxuXG4gIGxldCBjYXRlZ29yeSA9IGdldENhdGVnb3J5KGNvZGVQb2ludCk7XG4gIGlmIChjYXRlZ29yeSA9PT0gJ01uJyB8fCBjYXRlZ29yeSA9PT0gJ01lJyB8fCBjYXRlZ29yeSA9PT0gJ0NmJykge1xuICAgIHJldHVybiBTaGFwaW5nQ2xhc3Nlcy5UcmFuc3BhcmVudDtcbiAgfVxuXG4gIHJldHVybiBTaGFwaW5nQ2xhc3Nlcy5Ob25fSm9pbmluZztcbn1cbiIsICJpbXBvcnQgRGVmYXVsdFNoYXBlciBmcm9tICcuL0RlZmF1bHRTaGFwZXInO1xuaW1wb3J0IEdseXBoSW5mbyBmcm9tICcuLi9HbHlwaEluZm8nO1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaGFwZXIgZm9yIHRoZSBIYW5ndWwgc2NyaXB0LCB1c2VkIGJ5IHRoZSBLb3JlYW4gbGFuZ3VhZ2UuXG4gKiBJdCBkb2VzIHRoZSBmb2xsb3dpbmc6XG4gKiAgIC0gZGVjb21wb3NlIGlmIHVuc3VwcG9ydGVkIGJ5IHRoZSBmb250OlxuICogICAgIDxMVj4gICAtPiA8TCxWPlxuICogICAgIDxMVlQ+ICAtPiA8TCxWLFQ+XG4gKiAgICAgPExWLFQ+IC0+IDxMLFYsVD5cbiAqXG4gKiAgIC0gY29tcG9zZSBpZiBzdXBwb3J0ZWQgYnkgdGhlIGZvbnQ6XG4gKiAgICAgPEwsVj4gICAtPiA8TFY+XG4gKiAgICAgPEwsVixUPiAtPiA8TFZUPlxuICogICAgIDxMVixUPiAgLT4gPExWVD5cbiAqXG4gKiAgIC0gcmVvcmRlciB0b25lIG1hcmtzIChTIGlzIGFueSB2YWxpZCBzeWxsYWJsZSk6XG4gKiAgICAgPFMsIE0+IC0+IDxNLCBTPlxuICpcbiAqICAgLSBhcHBseSBsam1vLCB2am1vLCBhbmQgdGptbyBPcGVuVHlwZSBmZWF0dXJlcyB0byBkZWNvbXBvc2VkIEphbW8gc2VxdWVuY2VzLlxuICpcbiAqIFRoaXMgbG9naWMgaXMgYmFzZWQgb24gdGhlIGZvbGxvd2luZyBkb2N1bWVudHM6XG4gKiAgIC0gaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3R5cG9ncmFwaHkvT3BlblR5cGVEZXYvaGFuZ3VsL2ludHJvLmh0bVxuICogICAtIGh0dHA6Ly9rdHVnLm9yZy9+bm9tb3MvaGFyZmJ1enotaGFuZ3VsL2hhbmd1bHNoYXBlci5wZGZcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSGFuZ3VsU2hhcGVyIGV4dGVuZHMgRGVmYXVsdFNoYXBlciB7XG4gIHN0YXRpYyB6ZXJvTWFya1dpZHRocyA9ICdOT05FJztcbiAgc3RhdGljIHBsYW5GZWF0dXJlcyhwbGFuKSB7XG4gICAgcGxhbi5hZGQoWydsam1vJywgJ3ZqbW8nLCAndGptbyddLCBmYWxzZSk7XG4gIH1cblxuICBzdGF0aWMgYXNzaWduRmVhdHVyZXMocGxhbiwgZ2x5cGhzKSB7XG4gICAgbGV0IHN0YXRlID0gMDtcbiAgICBsZXQgaSA9IDA7XG4gICAgd2hpbGUgKGkgPCBnbHlwaHMubGVuZ3RoKSB7XG4gICAgICBsZXQgYWN0aW9uO1xuICAgICAgbGV0IGdseXBoID0gZ2x5cGhzW2ldO1xuICAgICAgbGV0IGNvZGUgPSBnbHlwaC5jb2RlUG9pbnRzWzBdO1xuICAgICAgbGV0IHR5cGUgPSBnZXRUeXBlKGNvZGUpO1xuXG4gICAgICBbIGFjdGlvbiwgc3RhdGUgXSA9IFNUQVRFX1RBQkxFW3N0YXRlXVt0eXBlXTtcblxuICAgICAgc3dpdGNoIChhY3Rpb24pIHtcbiAgICAgICAgY2FzZSBERUNPTVBPU0U6XG4gICAgICAgICAgLy8gRGVjb21wb3NlIHRoZSBjb21wb3NlZCBzeWxsYWJsZSBpZiBpdCBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBmb250LlxuICAgICAgICAgIGlmICghcGxhbi5mb250Lmhhc0dseXBoRm9yQ29kZVBvaW50KGNvZGUpKSB7XG4gICAgICAgICAgICBpID0gZGVjb21wb3NlKGdseXBocywgaSwgcGxhbi5mb250KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBDT01QT1NFOlxuICAgICAgICAgIC8vIEZvdW5kIGEgZGVjb21wb3NlZCBzeWxsYWJsZS4gVHJ5IHRvIGNvbXBvc2UgaWYgc3VwcG9ydGVkIGJ5IHRoZSBmb250LlxuICAgICAgICAgIGkgPSBjb21wb3NlKGdseXBocywgaSwgcGxhbi5mb250KTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIFRPTkVfTUFSSzpcbiAgICAgICAgICAvLyBHb3QgYSB2YWxpZCBzeWxsYWJsZSwgZm9sbG93ZWQgYnkgYSB0b25lIG1hcmsuIE1vdmUgdGhlIHRvbmUgbWFyayB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBzeWxsYWJsZS5cbiAgICAgICAgICByZW9yZGVyVG9uZU1hcmsoZ2x5cGhzLCBpLCBwbGFuLmZvbnQpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgSU5WQUxJRDpcbiAgICAgICAgICAvLyBUb25lIG1hcmsgaGFzIG5vIHZhbGlkIHN5bGxhYmxlIHRvIGF0dGFjaCB0bywgc28gaW5zZXJ0IGEgZG90dGVkIGNpcmNsZVxuICAgICAgICAgIGkgPSBpbnNlcnREb3R0ZWRDaXJjbGUoZ2x5cGhzLCBpLCBwbGFuLmZvbnQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBpKys7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IEhBTkdVTF9CQVNFICA9IDB4YWMwMDtcbmNvbnN0IEhBTkdVTF9FTkQgICA9IDB4ZDdhNDtcbmNvbnN0IEhBTkdVTF9DT1VOVCA9IEhBTkdVTF9FTkQgLSBIQU5HVUxfQkFTRSArIDE7XG5jb25zdCBMX0JBU0UgID0gMHgxMTAwOyAvLyBsZWFkXG5jb25zdCBWX0JBU0UgID0gMHgxMTYxOyAvLyB2b3dlbFxuY29uc3QgVF9CQVNFICA9IDB4MTFhNzsgLy8gdHJhaWxcbmNvbnN0IExfQ09VTlQgPSAxOTtcbmNvbnN0IFZfQ09VTlQgPSAyMTtcbmNvbnN0IFRfQ09VTlQgPSAyODtcbmNvbnN0IExfRU5EICAgPSBMX0JBU0UgKyBMX0NPVU5UIC0gMTtcbmNvbnN0IFZfRU5EICAgPSBWX0JBU0UgKyBWX0NPVU5UIC0gMTtcbmNvbnN0IFRfRU5EICAgPSBUX0JBU0UgKyBUX0NPVU5UIC0gMTtcbmNvbnN0IERPVFRFRF9DSVJDTEUgPSAweDI1Y2M7XG5cbmNvbnN0IGlzTCAgICA9IGNvZGUgPT4gMHgxMTAwIDw9IGNvZGUgJiYgY29kZSA8PSAweDExNWYgfHwgMHhhOTYwIDw9IGNvZGUgJiYgY29kZSA8PSAweGE5N2M7XG5jb25zdCBpc1YgICAgPSBjb2RlID0+IDB4MTE2MCA8PSBjb2RlICYmIGNvZGUgPD0gMHgxMWE3IHx8IDB4ZDdiMCA8PSBjb2RlICYmIGNvZGUgPD0gMHhkN2M2O1xuY29uc3QgaXNUICAgID0gY29kZSA9PiAweDExYTggPD0gY29kZSAmJiBjb2RlIDw9IDB4MTFmZiB8fCAweGQ3Y2IgPD0gY29kZSAmJiBjb2RlIDw9IDB4ZDdmYjtcbmNvbnN0IGlzVG9uZSA9IGNvZGUgPT4gMHgzMDJlIDw9IGNvZGUgJiYgY29kZSA8PSAweDMwMmY7XG5jb25zdCBpc0xWVCAgPSBjb2RlID0+IEhBTkdVTF9CQVNFIDw9IGNvZGUgJiYgY29kZSA8PSBIQU5HVUxfRU5EO1xuY29uc3QgaXNMViAgID0gY29kZSA9PiAoY29kZSAtIEhBTkdVTF9CQVNFKSA8IEhBTkdVTF9DT1VOVCAmJiAoY29kZSAtIEhBTkdVTF9CQVNFKSAlIFRfQ09VTlQgPT09IDA7XG5jb25zdCBpc0NvbWJpbmluZ0wgPSBjb2RlID0+IExfQkFTRSA8PSBjb2RlICYmIGNvZGUgPD0gTF9FTkQ7XG5jb25zdCBpc0NvbWJpbmluZ1YgPSBjb2RlID0+IFZfQkFTRSA8PSBjb2RlICYmIGNvZGUgPD0gVl9FTkQ7XG5jb25zdCBpc0NvbWJpbmluZ1QgPSBjb2RlID0+IFRfQkFTRSArIDEgJiYgMSA8PSBjb2RlICYmIGNvZGUgPD0gVF9FTkQ7XG5cbi8vIENoYXJhY3RlciBjYXRlZ29yaWVzXG5jb25zdCBYICAgPSAwOyAvLyBPdGhlciBjaGFyYWN0ZXJcbmNvbnN0IEwgICA9IDE7IC8vIExlYWRpbmcgY29uc29uYW50XG5jb25zdCBWICAgPSAyOyAvLyBNZWRpYWwgdm93ZWxcbmNvbnN0IFQgICA9IDM7IC8vIFRyYWlsaW5nIGNvbnNvbmFudFxuY29uc3QgTFYgID0gNDsgLy8gQ29tcG9zZWQgPExWPiBzeWxsYWJsZVxuY29uc3QgTFZUID0gNTsgLy8gQ29tcG9zZWQgPExWVD4gc3lsbGFibGVcbmNvbnN0IE0gICA9IDY7IC8vIFRvbmUgbWFya1xuXG4vLyBUaGlzIGZ1bmN0aW9uIGNsYXNzaWZpZXMgYSBjaGFyYWN0ZXIgdXNpbmcgdGhlIGFib3ZlIGNhdGVnb3JpZXMuXG5mdW5jdGlvbiBnZXRUeXBlKGNvZGUpIHtcbiAgaWYgKGlzTChjb2RlKSkgICAgeyByZXR1cm4gTDsgfVxuICBpZiAoaXNWKGNvZGUpKSAgICB7IHJldHVybiBWOyB9XG4gIGlmIChpc1QoY29kZSkpICAgIHsgcmV0dXJuIFQ7IH1cbiAgaWYgKGlzTFYoY29kZSkpICAgeyByZXR1cm4gTFY7IH1cbiAgaWYgKGlzTFZUKGNvZGUpKSAgeyByZXR1cm4gTFZUOyB9XG4gIGlmIChpc1RvbmUoY29kZSkpIHsgcmV0dXJuIE07IH1cbiAgcmV0dXJuIFg7XG59XG5cbi8vIFN0YXRlIG1hY2hpbmUgYWN0aW9uc1xuY29uc3QgTk9fQUNUSU9OID0gMDtcbmNvbnN0IERFQ09NUE9TRSA9IDE7XG5jb25zdCBDT01QT1NFICAgPSAyO1xuY29uc3QgVE9ORV9NQVJLID0gNDtcbmNvbnN0IElOVkFMSUQgICA9IDU7XG5cbi8vIEJ1aWxkIGEgc3RhdGUgbWFjaGluZSB0aGF0IGFjY2VwdHMgdmFsaWQgc3lsbGFibGVzLCBhbmQgYXBwbGllcyBhY3Rpb25zIGFsb25nIHRoZSB3YXkuXG4vLyBUaGUgbG9naWMgdGhpcyBpcyBpbXBsZW1lbnRpbmcgaXMgZG9jdW1lbnRlZCBhdCB0aGUgdG9wIG9mIHRoZSBmaWxlLlxuY29uc3QgU1RBVEVfVEFCTEUgPSBbXG4gIC8vICAgICAgIFggICAgICAgICAgICAgICAgIEwgICAgICAgICAgICAgICAgIFYgICAgICAgICAgICAgICAgVCAgICAgICAgICAgICAgICAgIExWICAgICAgICAgICAgICAgIExWVCAgICAgICAgICAgICAgIE1cbiAgLy8gU3RhdGUgMDogc3RhcnQgc3RhdGVcbiAgWyBbIE5PX0FDVElPTiwgMCBdLCBbIE5PX0FDVElPTiwgMSBdLCBbIE5PX0FDVElPTiwgMCBdLCBbIE5PX0FDVElPTiwgMCBdLCBbIERFQ09NUE9TRSwgMiBdLCBbIERFQ09NUE9TRSwgMyBdLCBbICBJTlZBTElELCAwICBdIF0sXG5cbiAgLy8gU3RhdGUgMTogPEw+XG4gIFsgWyBOT19BQ1RJT04sIDAgXSwgWyBOT19BQ1RJT04sIDEgXSwgWyAgQ09NUE9TRSwgMiAgXSwgWyBOT19BQ1RJT04sIDAgXSwgWyBERUNPTVBPU0UsIDIgXSwgWyBERUNPTVBPU0UsIDMgXSwgWyAgSU5WQUxJRCwgMCAgXSBdLFxuXG4gIC8vIFN0YXRlIDI6IDxMLFY+IG9yIDxMVj5cbiAgWyBbIE5PX0FDVElPTiwgMCBdLCBbIE5PX0FDVElPTiwgMSBdLCBbIE5PX0FDVElPTiwgMCBdLCBbICBDT01QT1NFLCAzICBdLCBbIERFQ09NUE9TRSwgMiBdLCBbIERFQ09NUE9TRSwgMyBdLCBbIFRPTkVfTUFSSywgMCBdIF0sXG5cbiAgLy8gU3RhdGUgMzogPEwsVixUPiBvciA8TFZUPlxuICBbIFsgTk9fQUNUSU9OLCAwIF0sIFsgTk9fQUNUSU9OLCAxIF0sIFsgTk9fQUNUSU9OLCAwIF0sIFsgTk9fQUNUSU9OLCAwIF0sIFsgREVDT01QT1NFLCAyIF0sIFsgREVDT01QT1NFLCAzIF0sIFsgVE9ORV9NQVJLLCAwIF0gXVxuXTtcblxuZnVuY3Rpb24gZ2V0R2x5cGgoZm9udCwgY29kZSwgZmVhdHVyZXMpIHtcbiAgcmV0dXJuIG5ldyBHbHlwaEluZm8oZm9udCwgZm9udC5nbHlwaEZvckNvZGVQb2ludChjb2RlKS5pZCwgW2NvZGVdLCBmZWF0dXJlcyk7XG59XG5cbmZ1bmN0aW9uIGRlY29tcG9zZShnbHlwaHMsIGksIGZvbnQpIHtcbiAgbGV0IGdseXBoID0gZ2x5cGhzW2ldO1xuICBsZXQgY29kZSA9IGdseXBoLmNvZGVQb2ludHNbMF07XG5cbiAgbGV0IHMgPSBjb2RlIC0gSEFOR1VMX0JBU0U7XG4gIGxldCB0ID0gVF9CQVNFICsgcyAlIFRfQ09VTlQ7XG4gIHMgPSBzIC8gVF9DT1VOVCB8IDA7XG4gIGxldCBsID0gTF9CQVNFICsgcyAvIFZfQ09VTlQgfCAwO1xuICBsZXQgdiA9IFZfQkFTRSArIHMgJSBWX0NPVU5UO1xuXG4gIC8vIERvbid0IGRlY29tcG9zZSBpZiBhbGwgb2YgdGhlIGNvbXBvbmVudHMgYXJlIG5vdCBhdmFpbGFibGVcbiAgaWYgKCFmb250Lmhhc0dseXBoRm9yQ29kZVBvaW50KGwpIHx8XG4gICAgICAhZm9udC5oYXNHbHlwaEZvckNvZGVQb2ludCh2KSB8fFxuICAgICAgKHQgIT09IFRfQkFTRSAmJiAhZm9udC5oYXNHbHlwaEZvckNvZGVQb2ludCh0KSkpIHtcbiAgICByZXR1cm4gaTtcbiAgfVxuXG4gIC8vIFJlcGxhY2UgdGhlIGN1cnJlbnQgZ2x5cGggd2l0aCBkZWNvbXBvc2VkIEwsIFYsIGFuZCBUIGdseXBocyxcbiAgLy8gYW5kIGFwcGx5IHRoZSBwcm9wZXIgT3BlblR5cGUgZmVhdHVyZXMgdG8gZWFjaCBjb21wb25lbnQuXG4gIGxldCBsam1vID0gZ2V0R2x5cGgoZm9udCwgbCwgZ2x5cGguZmVhdHVyZXMpO1xuICBsam1vLmZlYXR1cmVzLmxqbW8gPSB0cnVlO1xuXG4gIGxldCB2am1vID0gZ2V0R2x5cGgoZm9udCwgdiwgZ2x5cGguZmVhdHVyZXMpO1xuICB2am1vLmZlYXR1cmVzLnZqbW8gPSB0cnVlO1xuXG4gIGxldCBpbnNlcnQgPSBbIGxqbW8sIHZqbW8gXTtcblxuICBpZiAodCA+IFRfQkFTRSkge1xuICAgIGxldCB0am1vID0gZ2V0R2x5cGgoZm9udCwgdCwgZ2x5cGguZmVhdHVyZXMpO1xuICAgIHRqbW8uZmVhdHVyZXMudGptbyA9IHRydWU7XG4gICAgaW5zZXJ0LnB1c2godGptbyk7XG4gIH1cblxuICBnbHlwaHMuc3BsaWNlKGksIDEsIC4uLmluc2VydCk7XG4gIHJldHVybiBpICsgaW5zZXJ0Lmxlbmd0aCAtIDE7XG59XG5cbmZ1bmN0aW9uIGNvbXBvc2UoZ2x5cGhzLCBpLCBmb250KSB7XG4gIGxldCBnbHlwaCA9IGdseXBoc1tpXTtcbiAgbGV0IGNvZGUgPSBnbHlwaHNbaV0uY29kZVBvaW50c1swXTtcbiAgbGV0IHR5cGUgPSBnZXRUeXBlKGNvZGUpO1xuXG4gIGxldCBwcmV2ID0gZ2x5cGhzW2kgLSAxXS5jb2RlUG9pbnRzWzBdO1xuICBsZXQgcHJldlR5cGUgPSBnZXRUeXBlKHByZXYpO1xuXG4gIC8vIEZpZ3VyZSBvdXQgd2hhdCB0eXBlIG9mIHN5bGxhYmxlIHdlJ3JlIGRlYWxpbmcgd2l0aFxuICBsZXQgbHYsIGxqbW8sIHZqbW8sIHRqbW87XG4gIGlmIChwcmV2VHlwZSA9PT0gTFYgJiYgdHlwZSA9PT0gVCkge1xuICAgIC8vIDxMVixUPlxuICAgIGx2ID0gcHJldjtcbiAgICB0am1vID0gZ2x5cGg7XG4gIH0gZWxzZSB7XG4gICAgaWYgKHR5cGUgPT09IFYpIHtcbiAgICAgIC8vIDxMLFY+XG4gICAgICBsam1vID0gZ2x5cGhzW2kgLSAxXTtcbiAgICAgIHZqbW8gPSBnbHlwaDtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gPEwsVixUPlxuICAgICAgbGptbyA9IGdseXBoc1tpIC0gMl07XG4gICAgICB2am1vID0gZ2x5cGhzW2kgLSAxXTtcbiAgICAgIHRqbW8gPSBnbHlwaDtcbiAgICB9XG5cbiAgICBsZXQgbCA9IGxqbW8uY29kZVBvaW50c1swXTtcbiAgICBsZXQgdiA9IHZqbW8uY29kZVBvaW50c1swXTtcblxuICAgIC8vIE1ha2Ugc3VyZSBMIGFuZCBWIGFyZSBjb21iaW5pbmcgY2hhcmFjdGVyc1xuICAgIGlmIChpc0NvbWJpbmluZ0wobCkgJiYgaXNDb21iaW5pbmdWKHYpKSB7XG4gICAgICBsdiA9IEhBTkdVTF9CQVNFICsgKChsIC0gTF9CQVNFKSAqIFZfQ09VTlQgKyAodiAtIFZfQkFTRSkpICogVF9DT1VOVDtcbiAgICB9XG4gIH1cblxuICBsZXQgdCA9ICh0am1vICYmIHRqbW8uY29kZVBvaW50c1swXSkgfHwgVF9CQVNFO1xuICBpZiAoKGx2ICE9IG51bGwpICYmICh0ID09PSBUX0JBU0UgfHwgaXNDb21iaW5pbmdUKHQpKSkge1xuICAgIGxldCBzID0gbHYgKyAodCAtIFRfQkFTRSk7XG5cbiAgICAvLyBSZXBsYWNlIHdpdGggYSBjb21wb3NlZCBnbHlwaCBpZiBzdXBwb3J0ZWQgYnkgdGhlIGZvbnQsXG4gICAgLy8gb3RoZXJ3aXNlIGFwcGx5IHRoZSBwcm9wZXIgT3BlblR5cGUgZmVhdHVyZXMgdG8gZWFjaCBjb21wb25lbnQuXG4gICAgaWYgKGZvbnQuaGFzR2x5cGhGb3JDb2RlUG9pbnQocykpIHtcbiAgICAgIGxldCBkZWwgPSBwcmV2VHlwZSA9PT0gViA/IDMgOiAyO1xuICAgICAgZ2x5cGhzLnNwbGljZShpIC0gZGVsICsgMSwgZGVsLCBnZXRHbHlwaChmb250LCBzLCBnbHlwaC5mZWF0dXJlcykpO1xuICAgICAgcmV0dXJuIGkgLSBkZWwgKyAxO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpZG4ndCBjb21wb3NlIChlaXRoZXIgYSBub24tY29tYmluaW5nIGNvbXBvbmVudCBvciB1bnN1cHBvcnRlZCBieSBmb250KS5cbiAgaWYgKGxqbW8pIHsgbGptby5mZWF0dXJlcy5sam1vID0gdHJ1ZTsgfVxuICBpZiAodmptbykgeyB2am1vLmZlYXR1cmVzLnZqbW8gPSB0cnVlOyB9XG4gIGlmICh0am1vKSB7IHRqbW8uZmVhdHVyZXMudGptbyA9IHRydWU7IH1cblxuICBpZiAocHJldlR5cGUgPT09IExWKSB7XG4gICAgLy8gU2VxdWVuY2Ugd2FzIG9yaWdpbmFsbHkgPEwsVj4sIHdoaWNoIGdvdCBjb21iaW5lZCBlYXJsaWVyLlxuICAgIC8vIEVpdGhlciB0aGUgVCB3YXMgbm9uLWNvbWJpbmluZywgb3IgdGhlIExWVCBnbHlwaCB3YXNuJ3Qgc3VwcG9ydGVkLlxuICAgIC8vIERlY29tcG9zZSB0aGUgZ2x5cGggYWdhaW4gYW5kIGFwcGx5IE9UIGZlYXR1cmVzLlxuICAgIGRlY29tcG9zZShnbHlwaHMsIGkgLSAxLCBmb250KTtcbiAgICByZXR1cm4gaSArIDE7XG4gIH1cblxuICByZXR1cm4gaTtcbn1cblxuZnVuY3Rpb24gZ2V0TGVuZ3RoKGNvZGUpIHtcbiAgc3dpdGNoIChnZXRUeXBlKGNvZGUpKSB7XG4gICAgY2FzZSBMVjpcbiAgICBjYXNlIExWVDpcbiAgICAgIHJldHVybiAxO1xuICAgIGNhc2UgVjpcbiAgICAgIHJldHVybiAyO1xuICAgIGNhc2UgVDpcbiAgICAgIHJldHVybiAzO1xuICB9XG59XG5cbmZ1bmN0aW9uIHJlb3JkZXJUb25lTWFyayhnbHlwaHMsIGksIGZvbnQpIHtcbiAgbGV0IGdseXBoID0gZ2x5cGhzW2ldO1xuICBsZXQgY29kZSA9IGdseXBoc1tpXS5jb2RlUG9pbnRzWzBdO1xuXG4gIC8vIE1vdmUgdG9uZSBtYXJrIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHByZXZpb3VzIHN5bGxhYmxlLCB1bmxlc3MgaXQgaXMgemVybyB3aWR0aFxuICBpZiAoZm9udC5nbHlwaEZvckNvZGVQb2ludChjb2RlKS5hZHZhbmNlV2lkdGggPT09IDApIHsgcmV0dXJuOyB9XG5cbiAgbGV0IHByZXYgPSBnbHlwaHNbaSAtIDFdLmNvZGVQb2ludHNbMF07XG4gIGxldCBsZW4gPSBnZXRMZW5ndGgocHJldik7XG5cbiAgZ2x5cGhzLnNwbGljZShpLCAxKTtcbiAgcmV0dXJuIGdseXBocy5zcGxpY2UoaSAtIGxlbiwgMCwgZ2x5cGgpO1xufVxuXG5mdW5jdGlvbiBpbnNlcnREb3R0ZWRDaXJjbGUoZ2x5cGhzLCBpLCBmb250KSB7XG4gIGxldCBnbHlwaCA9IGdseXBoc1tpXTtcbiAgbGV0IGNvZGUgPSBnbHlwaHNbaV0uY29kZVBvaW50c1swXTtcblxuICBpZiAoZm9udC5oYXNHbHlwaEZvckNvZGVQb2ludChET1RURURfQ0lSQ0xFKSkge1xuICAgIGxldCBkb3R0ZWRDaXJjbGUgPSBnZXRHbHlwaChmb250LCBET1RURURfQ0lSQ0xFLCBnbHlwaC5mZWF0dXJlcyk7XG5cbiAgICAvLyBJZiB0aGUgdG9uZSBtYXJrIGlzIHplcm8gd2lkdGgsIGluc2VydCB0aGUgZG90dGVkIGNpcmNsZSBiZWZvcmUsIG90aGVyd2lzZSBhZnRlclxuICAgIGxldCBpZHggPSBmb250LmdseXBoRm9yQ29kZVBvaW50KGNvZGUpLmFkdmFuY2VXaWR0aCA9PT0gMCA/IGkgOiBpICsgMTtcbiAgICBnbHlwaHMuc3BsaWNlKGlkeCwgMCwgZG90dGVkQ2lyY2xlKTtcbiAgICBpKys7XG4gIH1cblxuICByZXR1cm4gaTtcbn1cbiIsICJpbXBvcnQge2lzTWFya30gZnJvbSAndW5pY29kZS1wcm9wZXJ0aWVzJztcbmltcG9ydCBPVFByb2Nlc3NvciBmcm9tICcuL09UUHJvY2Vzc29yJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgR2x5cGhJbmZvIHtcbiAgY29uc3RydWN0b3IoZm9udCwgaWQsIGNvZGVQb2ludHMgPSBbXSwgZmVhdHVyZXMpIHtcbiAgICB0aGlzLl9mb250ID0gZm9udDtcbiAgICB0aGlzLmNvZGVQb2ludHMgPSBjb2RlUG9pbnRzO1xuICAgIHRoaXMuaWQgPSBpZDtcblxuICAgIHRoaXMuZmVhdHVyZXMgPSB7fTtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShmZWF0dXJlcykpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZmVhdHVyZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IGZlYXR1cmUgPSBmZWF0dXJlc1tpXTtcbiAgICAgICAgdGhpcy5mZWF0dXJlc1tmZWF0dXJlXSA9IHRydWU7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZmVhdHVyZXMgPT09ICdvYmplY3QnKSB7XG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMuZmVhdHVyZXMsIGZlYXR1cmVzKTtcbiAgICB9XG5cbiAgICB0aGlzLmxpZ2F0dXJlSUQgPSBudWxsO1xuICAgIHRoaXMubGlnYXR1cmVDb21wb25lbnQgPSBudWxsO1xuICAgIHRoaXMuaXNMaWdhdGVkID0gZmFsc2U7XG4gICAgdGhpcy5jdXJzaXZlQXR0YWNobWVudCA9IG51bGw7XG4gICAgdGhpcy5tYXJrQXR0YWNobWVudCA9IG51bGw7XG4gICAgdGhpcy5zaGFwZXJJbmZvID0gbnVsbDtcbiAgICB0aGlzLnN1YnN0aXR1dGVkID0gZmFsc2U7XG4gICAgdGhpcy5pc011bHRpcGxpZWQgPSBmYWxzZTtcbiAgfVxuXG4gIGdldCBpZCgpIHtcbiAgICByZXR1cm4gdGhpcy5faWQ7XG4gIH1cblxuICBzZXQgaWQoaWQpIHtcbiAgICB0aGlzLl9pZCA9IGlkO1xuICAgIHRoaXMuc3Vic3RpdHV0ZWQgPSB0cnVlO1xuXG4gICAgbGV0IEdERUYgPSB0aGlzLl9mb250LkdERUY7XG4gICAgaWYgKEdERUYgJiYgR0RFRi5nbHlwaENsYXNzRGVmKSB7XG4gICAgICAvLyBUT0RPOiBjbGVhbiB0aGlzIHVwXG4gICAgICBsZXQgY2xhc3NJRCA9IE9UUHJvY2Vzc29yLnByb3RvdHlwZS5nZXRDbGFzc0lEKGlkLCBHREVGLmdseXBoQ2xhc3NEZWYpO1xuICAgICAgdGhpcy5pc0Jhc2UgPSBjbGFzc0lEID09PSAxO1xuICAgICAgdGhpcy5pc0xpZ2F0dXJlID0gY2xhc3NJRCA9PT0gMjtcbiAgICAgIHRoaXMuaXNNYXJrID0gY2xhc3NJRCA9PT0gMztcbiAgICAgIHRoaXMubWFya0F0dGFjaG1lbnRUeXBlID0gR0RFRi5tYXJrQXR0YWNoQ2xhc3NEZWYgPyBPVFByb2Nlc3Nvci5wcm90b3R5cGUuZ2V0Q2xhc3NJRChpZCwgR0RFRi5tYXJrQXR0YWNoQ2xhc3NEZWYpIDogMDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc01hcmsgPSB0aGlzLmNvZGVQb2ludHMubGVuZ3RoID4gMCAmJiB0aGlzLmNvZGVQb2ludHMuZXZlcnkoaXNNYXJrKTtcbiAgICAgIHRoaXMuaXNCYXNlID0gIXRoaXMuaXNNYXJrO1xuICAgICAgdGhpcy5pc0xpZ2F0dXJlID0gdGhpcy5jb2RlUG9pbnRzLmxlbmd0aCA+IDE7XG4gICAgICB0aGlzLm1hcmtBdHRhY2htZW50VHlwZSA9IDA7XG4gICAgfVxuICB9XG5cbiAgY29weSgpIHtcbiAgICByZXR1cm4gbmV3IEdseXBoSW5mbyh0aGlzLl9mb250LCB0aGlzLmlkLCB0aGlzLmNvZGVQb2ludHMsIHRoaXMuZmVhdHVyZXMpO1xuICB9XG59XG4iLCAiaW1wb3J0IEdseXBoSXRlcmF0b3IgZnJvbSAnLi9HbHlwaEl0ZXJhdG9yJztcbmltcG9ydCAqIGFzIFNjcmlwdCBmcm9tICcuLi9sYXlvdXQvU2NyaXB0JztcblxuY29uc3QgREVGQVVMVF9TQ1JJUFRTID0gWydERkxUJywgJ2RmbHQnLCAnbGF0biddO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBPVFByb2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKGZvbnQsIHRhYmxlKSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLnRhYmxlID0gdGFibGU7XG5cbiAgICB0aGlzLnNjcmlwdCA9IG51bGw7XG4gICAgdGhpcy5zY3JpcHRUYWcgPSBudWxsO1xuXG4gICAgdGhpcy5sYW5ndWFnZSA9IG51bGw7XG4gICAgdGhpcy5sYW5ndWFnZVRhZyA9IG51bGw7XG5cbiAgICB0aGlzLmZlYXR1cmVzID0ge307XG4gICAgdGhpcy5sb29rdXBzID0ge307XG5cbiAgICAvLyBTZXR1cCB2YXJpYXRpb24gc3Vic3RpdHV0aW9uc1xuICAgIHRoaXMudmFyaWF0aW9uc0luZGV4ID0gZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yXG4gICAgICA/IHRoaXMuZmluZFZhcmlhdGlvbnNJbmRleChmb250Ll92YXJpYXRpb25Qcm9jZXNzb3Iubm9ybWFsaXplZENvb3JkcylcbiAgICAgIDogLTE7XG5cbiAgICAvLyBpbml0aWFsaXplIHRvIGRlZmF1bHQgc2NyaXB0ICsgbGFuZ3VhZ2VcbiAgICB0aGlzLnNlbGVjdFNjcmlwdCgpO1xuXG4gICAgLy8gY3VycmVudCBjb250ZXh0IChzZXQgYnkgYXBwbHlGZWF0dXJlcylcbiAgICB0aGlzLmdseXBocyA9IFtdO1xuICAgIHRoaXMucG9zaXRpb25zID0gW107IC8vIG9ubHkgdXNlZCBieSBHUE9TXG4gICAgdGhpcy5saWdhdHVyZUlEID0gMTtcbiAgICB0aGlzLmN1cnJlbnRGZWF0dXJlID0gbnVsbDtcbiAgfVxuXG4gIGZpbmRTY3JpcHQoc2NyaXB0KSB7XG4gICAgaWYgKHRoaXMudGFibGUuc2NyaXB0TGlzdCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoc2NyaXB0KSkge1xuICAgICAgc2NyaXB0ID0gW3NjcmlwdF07XG4gICAgfVxuXG4gICAgZm9yIChsZXQgcyBvZiBzY3JpcHQpIHtcbiAgICAgIGZvciAobGV0IGVudHJ5IG9mIHRoaXMudGFibGUuc2NyaXB0TGlzdCkge1xuICAgICAgICBpZiAoZW50cnkudGFnID09PSBzKSB7XG4gICAgICAgICAgcmV0dXJuIGVudHJ5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBzZWxlY3RTY3JpcHQoc2NyaXB0LCBsYW5ndWFnZSwgZGlyZWN0aW9uKSB7XG4gICAgbGV0IGNoYW5nZWQgPSBmYWxzZTtcbiAgICBsZXQgZW50cnk7XG4gICAgaWYgKCF0aGlzLnNjcmlwdCB8fCBzY3JpcHQgIT09IHRoaXMuc2NyaXB0VGFnKSB7XG4gICAgICBlbnRyeSA9IHRoaXMuZmluZFNjcmlwdChzY3JpcHQpO1xuICAgICAgaWYgKCFlbnRyeSkge1xuICAgICAgICBlbnRyeSA9IHRoaXMuZmluZFNjcmlwdChERUZBVUxUX1NDUklQVFMpO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWVudHJ5KSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNjcmlwdFRhZztcbiAgICAgIH1cblxuICAgICAgdGhpcy5zY3JpcHRUYWcgPSBlbnRyeS50YWc7XG4gICAgICB0aGlzLnNjcmlwdCA9IGVudHJ5LnNjcmlwdDtcbiAgICAgIHRoaXMubGFuZ3VhZ2UgPSBudWxsO1xuICAgICAgdGhpcy5sYW5ndWFnZVRhZyA9IG51bGw7XG4gICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoIWRpcmVjdGlvbiB8fCBkaXJlY3Rpb24gIT09IHRoaXMuZGlyZWN0aW9uKSB7XG4gICAgICB0aGlzLmRpcmVjdGlvbiA9IGRpcmVjdGlvbiB8fCBTY3JpcHQuZGlyZWN0aW9uKHNjcmlwdCk7XG4gICAgfVxuXG4gICAgaWYgKGxhbmd1YWdlICYmIGxhbmd1YWdlLmxlbmd0aCA8IDQpIHtcbiAgICAgIGxhbmd1YWdlICs9ICcgJy5yZXBlYXQoNCAtIGxhbmd1YWdlLmxlbmd0aCk7XG4gICAgfVxuXG4gICAgaWYgKCFsYW5ndWFnZSB8fCBsYW5ndWFnZSAhPT0gdGhpcy5sYW5ndWFnZVRhZykge1xuICAgICAgdGhpcy5sYW5ndWFnZSA9IG51bGw7XG5cbiAgICAgIGZvciAobGV0IGxhbmcgb2YgdGhpcy5zY3JpcHQubGFuZ1N5c1JlY29yZHMpIHtcbiAgICAgICAgaWYgKGxhbmcudGFnID09PSBsYW5ndWFnZSkge1xuICAgICAgICAgIHRoaXMubGFuZ3VhZ2UgPSBsYW5nLmxhbmdTeXM7XG4gICAgICAgICAgdGhpcy5sYW5ndWFnZVRhZyA9IGxhbmcudGFnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy5sYW5ndWFnZSkge1xuICAgICAgICB0aGlzLmxhbmd1YWdlID0gdGhpcy5zY3JpcHQuZGVmYXVsdExhbmdTeXM7XG4gICAgICAgIHRoaXMubGFuZ3VhZ2VUYWcgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBCdWlsZCBhIGZlYXR1cmUgbG9va3VwIHRhYmxlXG4gICAgaWYgKGNoYW5nZWQpIHtcbiAgICAgIHRoaXMuZmVhdHVyZXMgPSB7fTtcbiAgICAgIGlmICh0aGlzLmxhbmd1YWdlKSB7XG4gICAgICAgIGZvciAobGV0IGZlYXR1cmVJbmRleCBvZiB0aGlzLmxhbmd1YWdlLmZlYXR1cmVJbmRleGVzKSB7XG4gICAgICAgICAgbGV0IHJlY29yZCA9IHRoaXMudGFibGUuZmVhdHVyZUxpc3RbZmVhdHVyZUluZGV4XTtcbiAgICAgICAgICBsZXQgc3Vic3RpdHV0ZUZlYXR1cmUgPSB0aGlzLnN1YnN0aXR1dGVGZWF0dXJlRm9yVmFyaWF0aW9ucyhmZWF0dXJlSW5kZXgpO1xuICAgICAgICAgIHRoaXMuZmVhdHVyZXNbcmVjb3JkLnRhZ10gPSBzdWJzdGl0dXRlRmVhdHVyZSB8fCByZWNvcmQuZmVhdHVyZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnNjcmlwdFRhZztcbiAgfVxuXG4gIGxvb2t1cHNGb3JGZWF0dXJlcyh1c2VyRmVhdHVyZXMgPSBbXSwgZXhjbHVkZSkge1xuICAgIGxldCBsb29rdXBzID0gW107XG4gICAgZm9yIChsZXQgdGFnIG9mIHVzZXJGZWF0dXJlcykge1xuICAgICAgbGV0IGZlYXR1cmUgPSB0aGlzLmZlYXR1cmVzW3RhZ107XG4gICAgICBpZiAoIWZlYXR1cmUpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGZvciAobGV0IGxvb2t1cEluZGV4IG9mIGZlYXR1cmUubG9va3VwTGlzdEluZGV4ZXMpIHtcbiAgICAgICAgaWYgKGV4Y2x1ZGUgJiYgZXhjbHVkZS5pbmRleE9mKGxvb2t1cEluZGV4KSAhPT0gLTEpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxvb2t1cHMucHVzaCh7XG4gICAgICAgICAgZmVhdHVyZTogdGFnLFxuICAgICAgICAgIGluZGV4OiBsb29rdXBJbmRleCxcbiAgICAgICAgICBsb29rdXA6IHRoaXMudGFibGUubG9va3VwTGlzdC5nZXQobG9va3VwSW5kZXgpXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxvb2t1cHMuc29ydCgoYSwgYikgPT4gYS5pbmRleCAtIGIuaW5kZXgpO1xuICAgIHJldHVybiBsb29rdXBzO1xuICB9XG5cbiAgc3Vic3RpdHV0ZUZlYXR1cmVGb3JWYXJpYXRpb25zKGZlYXR1cmVJbmRleCkge1xuICAgIGlmICh0aGlzLnZhcmlhdGlvbnNJbmRleCA9PT0gLTEpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGxldCByZWNvcmQgPSB0aGlzLnRhYmxlLmZlYXR1cmVWYXJpYXRpb25zLmZlYXR1cmVWYXJpYXRpb25SZWNvcmRzW3RoaXMudmFyaWF0aW9uc0luZGV4XTtcbiAgICBsZXQgc3Vic3RpdHV0aW9ucyA9IHJlY29yZC5mZWF0dXJlVGFibGVTdWJzdGl0dXRpb24uc3Vic3RpdHV0aW9ucztcbiAgICBmb3IgKGxldCBzdWJzdGl0dXRpb24gb2Ygc3Vic3RpdHV0aW9ucykge1xuICAgICAgaWYgKHN1YnN0aXR1dGlvbi5mZWF0dXJlSW5kZXggPT09IGZlYXR1cmVJbmRleCkge1xuICAgICAgICByZXR1cm4gc3Vic3RpdHV0aW9uLmFsdGVybmF0ZUZlYXR1cmVUYWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGZpbmRWYXJpYXRpb25zSW5kZXgoY29vcmRzKSB7XG4gICAgbGV0IHZhcmlhdGlvbnMgPSB0aGlzLnRhYmxlLmZlYXR1cmVWYXJpYXRpb25zO1xuICAgIGlmICghdmFyaWF0aW9ucykge1xuICAgICAgcmV0dXJuIC0xO1xuICAgIH1cblxuICAgIGxldCByZWNvcmRzID0gdmFyaWF0aW9ucy5mZWF0dXJlVmFyaWF0aW9uUmVjb3JkcztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlY29yZHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBjb25kaXRpb25zID0gcmVjb3Jkc1tpXS5jb25kaXRpb25TZXQuY29uZGl0aW9uVGFibGU7XG4gICAgICBpZiAodGhpcy52YXJpYXRpb25Db25kaXRpb25zTWF0Y2goY29uZGl0aW9ucywgY29vcmRzKSkge1xuICAgICAgICByZXR1cm4gaTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gLTE7XG4gIH1cblxuICB2YXJpYXRpb25Db25kaXRpb25zTWF0Y2goY29uZGl0aW9ucywgY29vcmRzKSB7XG4gICAgcmV0dXJuIGNvbmRpdGlvbnMuZXZlcnkoY29uZGl0aW9uID0+IHtcbiAgICAgIGxldCBjb29yZCA9IGNvbmRpdGlvbi5heGlzSW5kZXggPCBjb29yZHMubGVuZ3RoID8gY29vcmRzW2NvbmRpdGlvbi5heGlzSW5kZXhdIDogMDtcbiAgICAgIHJldHVybiBjb25kaXRpb24uZmlsdGVyUmFuZ2VNaW5WYWx1ZSA8PSBjb29yZCAmJiBjb29yZCA8PSBjb25kaXRpb24uZmlsdGVyUmFuZ2VNYXhWYWx1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIGFwcGx5RmVhdHVyZXModXNlckZlYXR1cmVzLCBnbHlwaHMsIGFkdmFuY2VzKSB7XG4gICAgbGV0IGxvb2t1cHMgPSB0aGlzLmxvb2t1cHNGb3JGZWF0dXJlcyh1c2VyRmVhdHVyZXMpO1xuICAgIHRoaXMuYXBwbHlMb29rdXBzKGxvb2t1cHMsIGdseXBocywgYWR2YW5jZXMpO1xuICB9XG5cbiAgYXBwbHlMb29rdXBzKGxvb2t1cHMsIGdseXBocywgcG9zaXRpb25zKSB7XG4gICAgdGhpcy5nbHlwaHMgPSBnbHlwaHM7XG4gICAgdGhpcy5wb3NpdGlvbnMgPSBwb3NpdGlvbnM7XG4gICAgdGhpcy5nbHlwaEl0ZXJhdG9yID0gbmV3IEdseXBoSXRlcmF0b3IoZ2x5cGhzKTtcblxuICAgIGZvciAobGV0IHsgZmVhdHVyZSwgbG9va3VwIH0gb2YgbG9va3Vwcykge1xuICAgICAgdGhpcy5jdXJyZW50RmVhdHVyZSA9IGZlYXR1cmU7XG4gICAgICB0aGlzLmdseXBoSXRlcmF0b3IucmVzZXQobG9va3VwLmZsYWdzKTtcblxuICAgICAgd2hpbGUgKHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleCA8IGdseXBocy5sZW5ndGgpIHtcbiAgICAgICAgaWYgKCEoZmVhdHVyZSBpbiB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmZlYXR1cmVzKSkge1xuICAgICAgICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5uZXh0KCk7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGxldCB0YWJsZSBvZiBsb29rdXAuc3ViVGFibGVzKSB7XG4gICAgICAgICAgbGV0IHJlcyA9IHRoaXMuYXBwbHlMb29rdXAobG9va3VwLmxvb2t1cFR5cGUsIHRhYmxlKTtcbiAgICAgICAgICBpZiAocmVzKSB7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmdseXBoSXRlcmF0b3IubmV4dCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGFwcGx5TG9va3VwKGxvb2t1cCwgdGFibGUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJhcHBseUxvb2t1cCBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IHN1YmNsYXNzZXNcIik7XG4gIH1cblxuICBhcHBseUxvb2t1cExpc3QobG9va3VwUmVjb3Jkcykge1xuICAgIGxldCBvcHRpb25zID0gdGhpcy5nbHlwaEl0ZXJhdG9yLm9wdGlvbnM7XG4gICAgbGV0IGdseXBoSW5kZXggPSB0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXg7XG5cbiAgICBmb3IgKGxldCBsb29rdXBSZWNvcmQgb2YgbG9va3VwUmVjb3Jkcykge1xuICAgICAgLy8gUmVzZXQgZmxhZ3MgYW5kIGZpbmQgZ2x5cGggaW5kZXggZm9yIHRoaXMgbG9va3VwIHJlY29yZFxuICAgICAgdGhpcy5nbHlwaEl0ZXJhdG9yLnJlc2V0KG9wdGlvbnMsIGdseXBoSW5kZXgpO1xuICAgICAgdGhpcy5nbHlwaEl0ZXJhdG9yLmluY3JlbWVudChsb29rdXBSZWNvcmQuc2VxdWVuY2VJbmRleCk7XG5cbiAgICAgIC8vIEdldCB0aGUgbG9va3VwIGFuZCBzZXR1cCBmbGFncyBmb3Igc3VidGFibGVzXG4gICAgICBsZXQgbG9va3VwID0gdGhpcy50YWJsZS5sb29rdXBMaXN0LmdldChsb29rdXBSZWNvcmQubG9va3VwTGlzdEluZGV4KTtcbiAgICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5yZXNldChsb29rdXAuZmxhZ3MsIHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleCk7XG5cbiAgICAgIC8vIEFwcGx5IGxvb2t1cCBzdWJ0YWJsZXMgdW50aWwgb25lIG1hdGNoZXNcbiAgICAgIGZvciAobGV0IHRhYmxlIG9mIGxvb2t1cC5zdWJUYWJsZXMpIHtcbiAgICAgICAgaWYgKHRoaXMuYXBwbHlMb29rdXAobG9va3VwLmxvb2t1cFR5cGUsIHRhYmxlKSkge1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5nbHlwaEl0ZXJhdG9yLnJlc2V0KG9wdGlvbnMsIGdseXBoSW5kZXgpO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY292ZXJhZ2VJbmRleChjb3ZlcmFnZSwgZ2x5cGgpIHtcbiAgICBpZiAoZ2x5cGggPT0gbnVsbCkge1xuICAgICAgZ2x5cGggPSB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmlkO1xuICAgIH1cblxuICAgIHN3aXRjaCAoY292ZXJhZ2UudmVyc2lvbikge1xuICAgICAgY2FzZSAxOlxuICAgICAgICByZXR1cm4gY292ZXJhZ2UuZ2x5cGhzLmluZGV4T2YoZ2x5cGgpO1xuXG4gICAgICBjYXNlIDI6XG4gICAgICAgIGZvciAobGV0IHJhbmdlIG9mIGNvdmVyYWdlLnJhbmdlUmVjb3Jkcykge1xuICAgICAgICAgIGlmIChyYW5nZS5zdGFydCA8PSBnbHlwaCAmJiBnbHlwaCA8PSByYW5nZS5lbmQpIHtcbiAgICAgICAgICAgIHJldHVybiByYW5nZS5zdGFydENvdmVyYWdlSW5kZXggKyBnbHlwaCAtIHJhbmdlLnN0YXJ0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHJldHVybiAtMTtcbiAgfVxuXG4gIG1hdGNoKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlLCBmbiwgbWF0Y2hlZCkge1xuICAgIGxldCBwb3MgPSB0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXg7XG4gICAgbGV0IGdseXBoID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmluY3JlbWVudChzZXF1ZW5jZUluZGV4KTtcbiAgICBsZXQgaWR4ID0gMDtcblxuICAgIHdoaWxlIChpZHggPCBzZXF1ZW5jZS5sZW5ndGggJiYgZ2x5cGggJiYgZm4oc2VxdWVuY2VbaWR4XSwgZ2x5cGgpKSB7XG4gICAgICBpZiAobWF0Y2hlZCkge1xuICAgICAgICBtYXRjaGVkLnB1c2godGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4KTtcbiAgICAgIH1cblxuICAgICAgaWR4Kys7XG4gICAgICBnbHlwaCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5uZXh0KCk7XG4gICAgfVxuXG4gICAgdGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4ID0gcG9zO1xuICAgIGlmIChpZHggPCBzZXF1ZW5jZS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWF0Y2hlZCB8fCB0cnVlO1xuICB9XG5cbiAgc2VxdWVuY2VNYXRjaGVzKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlKSB7XG4gICAgcmV0dXJuIHRoaXMubWF0Y2goc2VxdWVuY2VJbmRleCwgc2VxdWVuY2UsIChjb21wb25lbnQsIGdseXBoKSA9PiBjb21wb25lbnQgPT09IGdseXBoLmlkKTtcbiAgfVxuXG4gIHNlcXVlbmNlTWF0Y2hJbmRpY2VzKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlKSB7XG4gICAgcmV0dXJuIHRoaXMubWF0Y2goc2VxdWVuY2VJbmRleCwgc2VxdWVuY2UsIChjb21wb25lbnQsIGdseXBoKSA9PiB7XG4gICAgICAvLyBJZiB0aGUgY3VycmVudCBmZWF0dXJlIGRvZXNuJ3QgYXBwbHkgdG8gdGhpcyBnbHlwaCxcbiAgICAgIGlmICghKHRoaXMuY3VycmVudEZlYXR1cmUgaW4gZ2x5cGguZmVhdHVyZXMpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbXBvbmVudCA9PT0gZ2x5cGguaWQ7XG4gICAgfSwgW10pO1xuICB9XG5cbiAgY292ZXJhZ2VTZXF1ZW5jZU1hdGNoZXMoc2VxdWVuY2VJbmRleCwgc2VxdWVuY2UpIHtcbiAgICByZXR1cm4gdGhpcy5tYXRjaChzZXF1ZW5jZUluZGV4LCBzZXF1ZW5jZSwgKGNvdmVyYWdlLCBnbHlwaCkgPT5cbiAgICAgIHRoaXMuY292ZXJhZ2VJbmRleChjb3ZlcmFnZSwgZ2x5cGguaWQpID49IDBcbiAgICApO1xuICB9XG5cbiAgZ2V0Q2xhc3NJRChnbHlwaCwgY2xhc3NEZWYpIHtcbiAgICBzd2l0Y2ggKGNsYXNzRGVmLnZlcnNpb24pIHtcbiAgICAgIGNhc2UgMTogLy8gQ2xhc3MgYXJyYXlcbiAgICAgICAgbGV0IGkgPSBnbHlwaCAtIGNsYXNzRGVmLnN0YXJ0R2x5cGg7XG4gICAgICAgIGlmIChpID49IDAgJiYgaSA8IGNsYXNzRGVmLmNsYXNzVmFsdWVBcnJheS5sZW5ndGgpIHtcbiAgICAgICAgICByZXR1cm4gY2xhc3NEZWYuY2xhc3NWYWx1ZUFycmF5W2ldO1xuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgMjpcbiAgICAgICAgZm9yIChsZXQgcmFuZ2Ugb2YgY2xhc3NEZWYuY2xhc3NSYW5nZVJlY29yZCkge1xuICAgICAgICAgIGlmIChyYW5nZS5zdGFydCA8PSBnbHlwaCAmJiBnbHlwaCA8PSByYW5nZS5lbmQpIHtcbiAgICAgICAgICAgIHJldHVybiByYW5nZS5jbGFzcztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIGNsYXNzU2VxdWVuY2VNYXRjaGVzKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlLCBjbGFzc0RlZikge1xuICAgIHJldHVybiB0aGlzLm1hdGNoKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlLCAoY2xhc3NJRCwgZ2x5cGgpID0+XG4gICAgICBjbGFzc0lEID09PSB0aGlzLmdldENsYXNzSUQoZ2x5cGguaWQsIGNsYXNzRGVmKVxuICAgICk7XG4gIH1cblxuICBhcHBseUNvbnRleHQodGFibGUpIHtcbiAgICBsZXQgaW5kZXgsIHNldDtcbiAgICBzd2l0Y2ggKHRhYmxlLnZlcnNpb24pIHtcbiAgICAgIGNhc2UgMTpcbiAgICAgICAgaW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UpO1xuICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0ID0gdGFibGUucnVsZVNldHNbaW5kZXhdO1xuICAgICAgICBmb3IgKGxldCBydWxlIG9mIHNldCkge1xuICAgICAgICAgIGlmICh0aGlzLnNlcXVlbmNlTWF0Y2hlcygxLCBydWxlLmlucHV0KSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlMb29rdXBMaXN0KHJ1bGUubG9va3VwUmVjb3Jkcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgMjpcbiAgICAgICAgaWYgKHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5jb3ZlcmFnZSkgPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5kZXggPSB0aGlzLmdldENsYXNzSUQodGhpcy5nbHlwaEl0ZXJhdG9yLmN1ci5pZCwgdGFibGUuY2xhc3NEZWYpO1xuICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0ID0gdGFibGUuY2xhc3NTZXRbaW5kZXhdO1xuICAgICAgICBmb3IgKGxldCBydWxlIG9mIHNldCkge1xuICAgICAgICAgIGlmICh0aGlzLmNsYXNzU2VxdWVuY2VNYXRjaGVzKDEsIHJ1bGUuY2xhc3NlcywgdGFibGUuY2xhc3NEZWYpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5hcHBseUxvb2t1cExpc3QocnVsZS5sb29rdXBSZWNvcmRzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAzOlxuICAgICAgICBpZiAodGhpcy5jb3ZlcmFnZVNlcXVlbmNlTWF0Y2hlcygwLCB0YWJsZS5jb3ZlcmFnZXMpKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlMb29rdXBMaXN0KHRhYmxlLmxvb2t1cFJlY29yZHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgYXBwbHlDaGFpbmluZ0NvbnRleHQodGFibGUpIHtcbiAgICBsZXQgaW5kZXg7XG4gICAgc3dpdGNoICh0YWJsZS52ZXJzaW9uKSB7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIGluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKTtcbiAgICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBzZXQgPSB0YWJsZS5jaGFpblJ1bGVTZXRzW2luZGV4XTtcbiAgICAgICAgZm9yIChsZXQgcnVsZSBvZiBzZXQpIHtcbiAgICAgICAgICBpZiAodGhpcy5zZXF1ZW5jZU1hdGNoZXMoLXJ1bGUuYmFja3RyYWNrLmxlbmd0aCwgcnVsZS5iYWNrdHJhY2spXG4gICAgICAgICAgICAmJiB0aGlzLnNlcXVlbmNlTWF0Y2hlcygxLCBydWxlLmlucHV0KVxuICAgICAgICAgICAgJiYgdGhpcy5zZXF1ZW5jZU1hdGNoZXMoMSArIHJ1bGUuaW5wdXQubGVuZ3RoLCBydWxlLmxvb2thaGVhZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFwcGx5TG9va3VwTGlzdChydWxlLmxvb2t1cFJlY29yZHMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIDI6XG4gICAgICAgIGlmICh0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UpID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGluZGV4ID0gdGhpcy5nZXRDbGFzc0lEKHRoaXMuZ2x5cGhJdGVyYXRvci5jdXIuaWQsIHRhYmxlLmlucHV0Q2xhc3NEZWYpO1xuICAgICAgICBsZXQgcnVsZXMgPSB0YWJsZS5jaGFpbkNsYXNzU2V0W2luZGV4XTtcbiAgICAgICAgaWYgKCFydWxlcykge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAobGV0IHJ1bGUgb2YgcnVsZXMpIHtcbiAgICAgICAgICBpZiAodGhpcy5jbGFzc1NlcXVlbmNlTWF0Y2hlcygtcnVsZS5iYWNrdHJhY2subGVuZ3RoLCBydWxlLmJhY2t0cmFjaywgdGFibGUuYmFja3RyYWNrQ2xhc3NEZWYpICYmXG4gICAgICAgICAgICB0aGlzLmNsYXNzU2VxdWVuY2VNYXRjaGVzKDEsIHJ1bGUuaW5wdXQsIHRhYmxlLmlucHV0Q2xhc3NEZWYpICYmXG4gICAgICAgICAgICB0aGlzLmNsYXNzU2VxdWVuY2VNYXRjaGVzKDEgKyBydWxlLmlucHV0Lmxlbmd0aCwgcnVsZS5sb29rYWhlYWQsIHRhYmxlLmxvb2thaGVhZENsYXNzRGVmKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlMb29rdXBMaXN0KHJ1bGUubG9va3VwUmVjb3Jkcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgMzpcbiAgICAgICAgaWYgKHRoaXMuY292ZXJhZ2VTZXF1ZW5jZU1hdGNoZXMoLXRhYmxlLmJhY2t0cmFja0dseXBoQ291bnQsIHRhYmxlLmJhY2t0cmFja0NvdmVyYWdlKSAmJlxuICAgICAgICAgIHRoaXMuY292ZXJhZ2VTZXF1ZW5jZU1hdGNoZXMoMCwgdGFibGUuaW5wdXRDb3ZlcmFnZSkgJiZcbiAgICAgICAgICB0aGlzLmNvdmVyYWdlU2VxdWVuY2VNYXRjaGVzKHRhYmxlLmlucHV0R2x5cGhDb3VudCwgdGFibGUubG9va2FoZWFkQ292ZXJhZ2UpKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlMb29rdXBMaXN0KHRhYmxlLmxvb2t1cFJlY29yZHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG4iLCAiZXhwb3J0IGRlZmF1bHQgY2xhc3MgR2x5cGhJdGVyYXRvciB7XG4gIGNvbnN0cnVjdG9yKGdseXBocywgb3B0aW9ucykge1xuICAgIHRoaXMuZ2x5cGhzID0gZ2x5cGhzO1xuICAgIHRoaXMucmVzZXQob3B0aW9ucyk7XG4gIH1cblxuICByZXNldChvcHRpb25zID0ge30sIGluZGV4ID0gMCkge1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgdGhpcy5mbGFncyA9IG9wdGlvbnMuZmxhZ3MgfHwge307XG4gICAgdGhpcy5tYXJrQXR0YWNobWVudFR5cGUgPSBvcHRpb25zLm1hcmtBdHRhY2htZW50VHlwZSB8fCAwO1xuICAgIHRoaXMuaW5kZXggPSBpbmRleDtcbiAgfVxuXG4gIGdldCBjdXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2x5cGhzW3RoaXMuaW5kZXhdIHx8IG51bGw7XG4gIH1cblxuICBzaG91bGRJZ25vcmUoZ2x5cGgpIHtcbiAgICByZXR1cm4gKHRoaXMuZmxhZ3MuaWdub3JlTWFya3MgJiYgZ2x5cGguaXNNYXJrKSB8fFxuICAgICAgICAgICAodGhpcy5mbGFncy5pZ25vcmVCYXNlR2x5cGhzICYmIGdseXBoLmlzQmFzZSkgfHxcbiAgICAgICAgICAgKHRoaXMuZmxhZ3MuaWdub3JlTGlnYXR1cmVzICYmIGdseXBoLmlzTGlnYXR1cmUpIHx8XG4gICAgICAgICAgICh0aGlzLm1hcmtBdHRhY2htZW50VHlwZSAmJiBnbHlwaC5pc01hcmsgJiYgZ2x5cGgubWFya0F0dGFjaG1lbnRUeXBlICE9PSB0aGlzLm1hcmtBdHRhY2htZW50VHlwZSk7XG4gIH1cblxuICBtb3ZlKGRpcikge1xuICAgIHRoaXMuaW5kZXggKz0gZGlyO1xuICAgIHdoaWxlICgwIDw9IHRoaXMuaW5kZXggJiYgdGhpcy5pbmRleCA8IHRoaXMuZ2x5cGhzLmxlbmd0aCAmJiB0aGlzLnNob3VsZElnbm9yZSh0aGlzLmdseXBoc1t0aGlzLmluZGV4XSkpIHtcbiAgICAgIHRoaXMuaW5kZXggKz0gZGlyO1xuICAgIH1cblxuICAgIGlmICgwID4gdGhpcy5pbmRleCB8fCB0aGlzLmluZGV4ID49IHRoaXMuZ2x5cGhzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2x5cGhzW3RoaXMuaW5kZXhdO1xuICB9XG5cbiAgbmV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5tb3ZlKCsxKTtcbiAgfVxuXG4gIHByZXYoKSB7XG4gICAgcmV0dXJuIHRoaXMubW92ZSgtMSk7XG4gIH1cblxuICBwZWVrKGNvdW50ID0gMSkge1xuICAgIGxldCBpZHggPSB0aGlzLmluZGV4O1xuICAgIGxldCByZXMgPSB0aGlzLmluY3JlbWVudChjb3VudCk7XG4gICAgdGhpcy5pbmRleCA9IGlkeDtcbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgcGVla0luZGV4KGNvdW50ID0gMSkge1xuICAgIGxldCBpZHggPSB0aGlzLmluZGV4O1xuICAgIHRoaXMuaW5jcmVtZW50KGNvdW50KTtcbiAgICBsZXQgcmVzID0gdGhpcy5pbmRleDtcbiAgICB0aGlzLmluZGV4ID0gaWR4O1xuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBpbmNyZW1lbnQoY291bnQgPSAxKSB7XG4gICAgbGV0IGRpciA9IGNvdW50IDwgMCA/IC0xIDogMTtcbiAgICBjb3VudCA9IE1hdGguYWJzKGNvdW50KTtcbiAgICB3aGlsZSAoY291bnQtLSkge1xuICAgICAgdGhpcy5tb3ZlKGRpcik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2x5cGhzW3RoaXMuaW5kZXhdO1xuICB9XG59XG4iLCAiaW1wb3J0IERlZmF1bHRTaGFwZXIgZnJvbSAnLi9EZWZhdWx0U2hhcGVyJztcbmltcG9ydCBTdGF0ZU1hY2hpbmUgZnJvbSAnZGZhJztcbmltcG9ydCBVbmljb2RlVHJpZSBmcm9tICd1bmljb2RlLXRyaWUnO1xuaW1wb3J0IHtnZXRDYXRlZ29yeX0gZnJvbSAndW5pY29kZS1wcm9wZXJ0aWVzJztcbmltcG9ydCAqIGFzIFNjcmlwdCBmcm9tICcuLi8uLi9sYXlvdXQvU2NyaXB0JztcbmltcG9ydCBHbHlwaEluZm8gZnJvbSAnLi4vR2x5cGhJbmZvJztcbmltcG9ydCBpbmRpY01hY2hpbmUgZnJvbSAnLi9pbmRpYy5qc29uJztcbmltcG9ydCB1c2VEYXRhIGZyb20gJy4vdXNlLmpzb24nO1xuaW1wb3J0IHtcbiAgQ0FURUdPUklFUyxcbiAgUE9TSVRJT05TLFxuICBDT05TT05BTlRfRkxBR1MsXG4gIEpPSU5FUl9GTEFHUyxcbiAgSEFMQU5UX09SX0NPRU5HX0ZMQUdTLCBJTkRJQ19DT05GSUdTLFxuICBJTkRJQ19ERUNPTVBPU0lUSU9OU1xufSBmcm9tICcuL2luZGljLWRhdGEnO1xuaW1wb3J0IHsgZGVjb2RlQmFzZTY0IH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5jb25zdCB7ZGVjb21wb3NpdGlvbnN9ID0gdXNlRGF0YTtcbmNvbnN0IHRyaWUgPSBuZXcgVW5pY29kZVRyaWUoZGVjb2RlQmFzZTY0KHJlcXVpcmUoJ2ZzJykucmVhZEZpbGVTeW5jKF9fZGlybmFtZSArICcvaW5kaWMudHJpZScsICdiYXNlNjQnKSkpO1xuY29uc3Qgc3RhdGVNYWNoaW5lID0gbmV3IFN0YXRlTWFjaGluZShpbmRpY01hY2hpbmUpO1xuXG4vKipcbiAqIFRoZSBJbmRpY1NoYXBlciBzdXBwb3J0cyBpbmRpYyBzY3JpcHRzIGUuZy4gRGV2YW5hZ2FyaSwgS2FubmFkYSwgZXRjLlxuICogQmFzZWQgb24gY29kZSBmcm9tIEhhcmZidXp6OiBodHRwczovL2dpdGh1Yi5jb20vYmVoZGFkL2hhcmZidXp6L2Jsb2IvbWFzdGVyL3NyYy9oYi1vdC1zaGFwZS1jb21wbGV4LWluZGljLmNjXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEluZGljU2hhcGVyIGV4dGVuZHMgRGVmYXVsdFNoYXBlciB7XG4gIHN0YXRpYyB6ZXJvTWFya1dpZHRocyA9ICdOT05FJztcbiAgc3RhdGljIHBsYW5GZWF0dXJlcyhwbGFuKSB7XG4gICAgcGxhbi5hZGRTdGFnZShzZXR1cFN5bGxhYmxlcyk7XG5cbiAgICBwbGFuLmFkZFN0YWdlKFsnbG9jbCcsICdjY21wJ10pO1xuXG4gICAgcGxhbi5hZGRTdGFnZShpbml0aWFsUmVvcmRlcmluZyk7XG5cbiAgICBwbGFuLmFkZFN0YWdlKCdudWt0Jyk7XG4gICAgcGxhbi5hZGRTdGFnZSgnYWtobicpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ3JwaGYnLCBmYWxzZSk7XG4gICAgcGxhbi5hZGRTdGFnZSgncmtyZicpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ3ByZWYnLCBmYWxzZSk7XG4gICAgcGxhbi5hZGRTdGFnZSgnYmx3ZicsIGZhbHNlKTtcbiAgICBwbGFuLmFkZFN0YWdlKCdhYnZmJywgZmFsc2UpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ2hhbGYnLCBmYWxzZSk7XG4gICAgcGxhbi5hZGRTdGFnZSgncHN0ZicsIGZhbHNlKTtcbiAgICBwbGFuLmFkZFN0YWdlKCd2YXR1Jyk7XG4gICAgcGxhbi5hZGRTdGFnZSgnY2pjdCcpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ2NmYXInLCBmYWxzZSk7XG5cbiAgICBwbGFuLmFkZFN0YWdlKGZpbmFsUmVvcmRlcmluZyk7XG5cbiAgICBwbGFuLmFkZFN0YWdlKHtcbiAgICAgIGxvY2FsOiBbJ2luaXQnXSxcbiAgICAgIGdsb2JhbDogWydwcmVzJywgJ2FidnMnLCAnYmx3cycsICdwc3RzJywgJ2hhbG4nLCAnZGlzdCcsICdhYnZtJywgJ2Jsd20nLCAnY2FsdCcsICdjbGlnJ11cbiAgICB9KTtcblxuICAgIC8vIFNldHVwIHRoZSBpbmRpYyBjb25maWcgZm9yIHRoZSBzZWxlY3RlZCBzY3JpcHRcbiAgICBwbGFuLnVuaWNvZGVTY3JpcHQgPSBTY3JpcHQuZnJvbU9wZW5UeXBlKHBsYW4uc2NyaXB0KTtcbiAgICBwbGFuLmluZGljQ29uZmlnID0gSU5ESUNfQ09ORklHU1twbGFuLnVuaWNvZGVTY3JpcHRdIHx8IElORElDX0NPTkZJR1MuRGVmYXVsdDtcbiAgICBwbGFuLmlzT2xkU3BlYyA9IHBsYW4uaW5kaWNDb25maWcuaGFzT2xkU3BlYyAmJiBwbGFuLnNjcmlwdFtwbGFuLnNjcmlwdC5sZW5ndGggLSAxXSAhPT0gJzInO1xuXG4gICAgLy8gVE9ETzogdHVybiBvZmYga2VybiAoS2htZXIpIGFuZCBsaWdhIGZlYXR1cmVzLlxuICB9XG5cbiAgc3RhdGljIGFzc2lnbkZlYXR1cmVzKHBsYW4sIGdseXBocykge1xuICAgIC8vIERlY29tcG9zZSBzcGxpdCBtYXRyYXNcbiAgICAvLyBUT0RPOiBkbyB0aGlzIGluIGEgbW9yZSBnZW5lcmFsIHVuaWNvZGUgbm9ybWFsaXplclxuICAgIGZvciAobGV0IGkgPSBnbHlwaHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIGxldCBjb2RlcG9pbnQgPSBnbHlwaHNbaV0uY29kZVBvaW50c1swXTtcbiAgICAgIGxldCBkID0gSU5ESUNfREVDT01QT1NJVElPTlNbY29kZXBvaW50XSB8fCBkZWNvbXBvc2l0aW9uc1tjb2RlcG9pbnRdO1xuICAgICAgaWYgKGQpIHtcbiAgICAgICAgbGV0IGRlY29tcG9zZWQgPSBkLm1hcChjID0+IHtcbiAgICAgICAgICBsZXQgZyA9IHBsYW4uZm9udC5nbHlwaEZvckNvZGVQb2ludChjKTtcbiAgICAgICAgICByZXR1cm4gbmV3IEdseXBoSW5mbyhwbGFuLmZvbnQsIGcuaWQsIFtjXSwgZ2x5cGhzW2ldLmZlYXR1cmVzKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZ2x5cGhzLnNwbGljZShpLCAxLCAuLi5kZWNvbXBvc2VkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5kaWNDYXRlZ29yeShnbHlwaCkge1xuICByZXR1cm4gdHJpZS5nZXQoZ2x5cGguY29kZVBvaW50c1swXSkgPj4gODtcbn1cblxuZnVuY3Rpb24gaW5kaWNQb3NpdGlvbihnbHlwaCkge1xuICByZXR1cm4gMSA8PCAodHJpZS5nZXQoZ2x5cGguY29kZVBvaW50c1swXSkgJiAweGZmKTtcbn1cblxuY2xhc3MgSW5kaWNJbmZvIHtcbiAgY29uc3RydWN0b3IoY2F0ZWdvcnksIHBvc2l0aW9uLCBzeWxsYWJsZVR5cGUsIHN5bGxhYmxlKSB7XG4gICAgdGhpcy5jYXRlZ29yeSA9IGNhdGVnb3J5O1xuICAgIHRoaXMucG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgICB0aGlzLnN5bGxhYmxlVHlwZSA9IHN5bGxhYmxlVHlwZTtcbiAgICB0aGlzLnN5bGxhYmxlID0gc3lsbGFibGU7XG4gIH1cbn1cblxuZnVuY3Rpb24gc2V0dXBTeWxsYWJsZXMoZm9udCwgZ2x5cGhzKSB7XG4gIGxldCBzeWxsYWJsZSA9IDA7XG4gIGxldCBsYXN0ID0gMDtcbiAgZm9yIChsZXQgW3N0YXJ0LCBlbmQsIHRhZ3NdIG9mIHN0YXRlTWFjaGluZS5tYXRjaChnbHlwaHMubWFwKGluZGljQ2F0ZWdvcnkpKSkge1xuICAgIGlmIChzdGFydCA+IGxhc3QpIHtcbiAgICAgICsrc3lsbGFibGU7XG4gICAgICBmb3IgKGxldCBpID0gbGFzdDsgaSA8IHN0YXJ0OyBpKyspIHtcbiAgICAgICAgZ2x5cGhzW2ldLnNoYXBlckluZm8gPSBuZXcgSW5kaWNJbmZvKENBVEVHT1JJRVMuWCwgUE9TSVRJT05TLkVuZCwgJ25vbl9pbmRpY19jbHVzdGVyJywgc3lsbGFibGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICsrc3lsbGFibGU7XG5cbiAgICAvLyBDcmVhdGUgc2hhcGVyIGluZm9cbiAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPD0gZW5kOyBpKyspIHtcbiAgICAgIGdseXBoc1tpXS5zaGFwZXJJbmZvID0gbmV3IEluZGljSW5mbyhcbiAgICAgICAgMSA8PCBpbmRpY0NhdGVnb3J5KGdseXBoc1tpXSksXG4gICAgICAgIGluZGljUG9zaXRpb24oZ2x5cGhzW2ldKSxcbiAgICAgICAgdGFnc1swXSxcbiAgICAgICAgc3lsbGFibGVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgbGFzdCA9IGVuZCArIDE7XG4gIH1cblxuICBpZiAobGFzdCA8IGdseXBocy5sZW5ndGgpIHtcbiAgICArK3N5bGxhYmxlO1xuICAgIGZvciAobGV0IGkgPSBsYXN0OyBpIDwgZ2x5cGhzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBnbHlwaHNbaV0uc2hhcGVySW5mbyA9IG5ldyBJbmRpY0luZm8oQ0FURUdPUklFUy5YLCBQT1NJVElPTlMuRW5kLCAnbm9uX2luZGljX2NsdXN0ZXInLCBzeWxsYWJsZSk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGlzQ29uc29uYW50KGdseXBoKSB7XG4gIHJldHVybiBnbHlwaC5zaGFwZXJJbmZvLmNhdGVnb3J5ICYgQ09OU09OQU5UX0ZMQUdTO1xufVxuXG5mdW5jdGlvbiBpc0pvaW5lcihnbHlwaCkge1xuICByZXR1cm4gZ2x5cGguc2hhcGVySW5mby5jYXRlZ29yeSAmIEpPSU5FUl9GTEFHUztcbn1cblxuZnVuY3Rpb24gaXNIYWxhbnRPckNvZW5nKGdseXBoKSB7XG4gIHJldHVybiBnbHlwaC5zaGFwZXJJbmZvLmNhdGVnb3J5ICYgSEFMQU5UX09SX0NPRU5HX0ZMQUdTO1xufVxuXG5mdW5jdGlvbiB3b3VsZFN1YnN0aXR1dGUoZ2x5cGhzLCBmZWF0dXJlKSB7XG4gIGZvciAobGV0IGdseXBoIG9mIGdseXBocykge1xuICAgIGdseXBoLmZlYXR1cmVzID0ge1tmZWF0dXJlXTogdHJ1ZX07XG4gIH1cblxuICBsZXQgR1NVQiA9IGdseXBoc1swXS5fZm9udC5fbGF5b3V0RW5naW5lLmVuZ2luZS5HU1VCUHJvY2Vzc29yO1xuICBHU1VCLmFwcGx5RmVhdHVyZXMoW2ZlYXR1cmVdLCBnbHlwaHMpO1xuXG4gIHJldHVybiBnbHlwaHMubGVuZ3RoID09PSAxO1xufVxuXG5mdW5jdGlvbiBjb25zb25hbnRQb3NpdGlvbihmb250LCBjb25zb25hbnQsIHZpcmFtYSkge1xuICBsZXQgZ2x5cGhzID0gW3ZpcmFtYSwgY29uc29uYW50LCB2aXJhbWFdO1xuICBpZiAod291bGRTdWJzdGl0dXRlKGdseXBocy5zbGljZSgwLCAyKSwgJ2Jsd2YnKSB8fCB3b3VsZFN1YnN0aXR1dGUoZ2x5cGhzLnNsaWNlKDEsIDMpLCAnYmx3ZicpKSB7XG4gICAgcmV0dXJuIFBPU0lUSU9OUy5CZWxvd19DO1xuICB9IGVsc2UgaWYgKHdvdWxkU3Vic3RpdHV0ZShnbHlwaHMuc2xpY2UoMCwgMiksICdwc3RmJykgfHwgd291bGRTdWJzdGl0dXRlKGdseXBocy5zbGljZSgxLCAzKSwgJ3BzdGYnKSkge1xuICAgIHJldHVybiBQT1NJVElPTlMuUG9zdF9DO1xuICB9IGVsc2UgaWYgKHdvdWxkU3Vic3RpdHV0ZShnbHlwaHMuc2xpY2UoMCwgMiksICdwcmVmJykgfHwgd291bGRTdWJzdGl0dXRlKGdseXBocy5zbGljZSgxLCAzKSwgJ3ByZWYnKSkge1xuICAgIHJldHVybiBQT1NJVElPTlMuUG9zdF9DO1xuICB9XG5cbiAgcmV0dXJuIFBPU0lUSU9OUy5CYXNlX0M7XG59XG5cbmZ1bmN0aW9uIGluaXRpYWxSZW9yZGVyaW5nKGZvbnQsIGdseXBocywgcGxhbikge1xuICBsZXQgaW5kaWNDb25maWcgPSBwbGFuLmluZGljQ29uZmlnO1xuICBsZXQgZmVhdHVyZXMgPSBmb250Ll9sYXlvdXRFbmdpbmUuZW5naW5lLkdTVUJQcm9jZXNzb3IuZmVhdHVyZXM7XG5cbiAgbGV0IGRvdHRlZENpcmNsZSA9IGZvbnQuZ2x5cGhGb3JDb2RlUG9pbnQoMHgyNWNjKS5pZDtcbiAgbGV0IHZpcmFtYSA9IGZvbnQuZ2x5cGhGb3JDb2RlUG9pbnQoaW5kaWNDb25maWcudmlyYW1hKS5pZDtcbiAgaWYgKHZpcmFtYSkge1xuICAgIGxldCBpbmZvID0gbmV3IEdseXBoSW5mbyhmb250LCB2aXJhbWEsIFtpbmRpY0NvbmZpZy52aXJhbWFdKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdseXBocy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKGdseXBoc1tpXS5zaGFwZXJJbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuQmFzZV9DKSB7XG4gICAgICAgIGdseXBoc1tpXS5zaGFwZXJJbmZvLnBvc2l0aW9uID0gY29uc29uYW50UG9zaXRpb24oZm9udCwgZ2x5cGhzW2ldLmNvcHkoKSwgaW5mbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZm9yIChsZXQgc3RhcnQgPSAwLCBlbmQgPSBuZXh0U3lsbGFibGUoZ2x5cGhzLCAwKTsgc3RhcnQgPCBnbHlwaHMubGVuZ3RoOyBzdGFydCA9IGVuZCwgZW5kID0gbmV4dFN5bGxhYmxlKGdseXBocywgc3RhcnQpKSB7XG4gICAgbGV0IHtjYXRlZ29yeSwgc3lsbGFibGVUeXBlfSA9IGdseXBoc1tzdGFydF0uc2hhcGVySW5mbztcblxuICAgIGlmIChzeWxsYWJsZVR5cGUgPT09ICdzeW1ib2xfY2x1c3RlcicgfHwgc3lsbGFibGVUeXBlID09PSAnbm9uX2luZGljX2NsdXN0ZXInKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAoc3lsbGFibGVUeXBlID09PSAnYnJva2VuX2NsdXN0ZXInICYmIGRvdHRlZENpcmNsZSkge1xuICAgICAgbGV0IGcgPSBuZXcgR2x5cGhJbmZvKGZvbnQsIGRvdHRlZENpcmNsZSwgWzB4MjVjY10pO1xuICAgICAgZy5zaGFwZXJJbmZvID0gbmV3IEluZGljSW5mbyhcbiAgICAgICAgMSA8PCBpbmRpY0NhdGVnb3J5KGcpLFxuICAgICAgICBpbmRpY1Bvc2l0aW9uKGcpLFxuICAgICAgICBnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8uc3lsbGFibGVUeXBlLFxuICAgICAgICBnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8uc3lsbGFibGVcbiAgICAgICk7XG5cbiAgICAgIC8vIEluc2VydCBhZnRlciBwb3NzaWJsZSBSZXBoYS5cbiAgICAgIGxldCBpID0gc3RhcnQ7XG4gICAgICB3aGlsZSAoaSA8IGVuZCAmJiBnbHlwaHNbaV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5SZXBoYSkge1xuICAgICAgICBpKys7XG4gICAgICB9XG5cbiAgICAgIGdseXBocy5zcGxpY2UoaSsrLCAwLCBnKTtcbiAgICAgIGVuZCsrO1xuICAgIH1cblxuICAgIC8vIDEuIEZpbmQgYmFzZSBjb25zb25hbnQ6XG4gICAgLy9cbiAgICAvLyBUaGUgc2hhcGluZyBlbmdpbmUgZmluZHMgdGhlIGJhc2UgY29uc29uYW50IG9mIHRoZSBzeWxsYWJsZSwgdXNpbmcgdGhlXG4gICAgLy8gZm9sbG93aW5nIGFsZ29yaXRobTogc3RhcnRpbmcgZnJvbSB0aGUgZW5kIG9mIHRoZSBzeWxsYWJsZSwgbW92ZSBiYWNrd2FyZHNcbiAgICAvLyB1bnRpbCBhIGNvbnNvbmFudCBpcyBmb3VuZCB0aGF0IGRvZXMgbm90IGhhdmUgYSBiZWxvdy1iYXNlIG9yIHBvc3QtYmFzZVxuICAgIC8vIGZvcm0gKHBvc3QtYmFzZSBmb3JtcyBoYXZlIHRvIGZvbGxvdyBiZWxvdy1iYXNlIGZvcm1zKSwgb3IgdGhhdCBpcyBub3QgYVxuICAgIC8vIHByZS1iYXNlIHJlb3JkZXJpbmcgUmEsIG9yIGFycml2ZSBhdCB0aGUgZmlyc3QgY29uc29uYW50LiBUaGUgY29uc29uYW50XG4gICAgLy8gc3RvcHBlZCBhdCB3aWxsIGJlIHRoZSBiYXNlLlxuXG4gICAgbGV0IGJhc2UgPSBlbmQ7XG4gICAgbGV0IGxpbWl0ID0gc3RhcnQ7XG4gICAgbGV0IGhhc1JlcGggPSBmYWxzZTtcblxuICAgIC8vIElmIHRoZSBzeWxsYWJsZSBzdGFydHMgd2l0aCBSYSArIEhhbGFudCAoaW4gYSBzY3JpcHQgdGhhdCBoYXMgUmVwaClcbiAgICAvLyBhbmQgaGFzIG1vcmUgdGhhbiBvbmUgY29uc29uYW50LCBSYSBpcyBleGNsdWRlZCBmcm9tIGNhbmRpZGF0ZXMgZm9yXG4gICAgLy8gYmFzZSBjb25zb25hbnRzLlxuICAgIGlmIChpbmRpY0NvbmZpZy5yZXBoUG9zICE9PSBQT1NJVElPTlMuUmFfVG9fQmVjb21lX1JlcGggJiZcbiAgICAgIGZlYXR1cmVzLnJwaGYgJiZcbiAgICAgIHN0YXJ0ICsgMyA8PSBlbmQgJiYgKFxuICAgICAgICAoaW5kaWNDb25maWcucmVwaE1vZGUgPT09ICdJbXBsaWNpdCcgJiYgIWlzSm9pbmVyKGdseXBoc1tzdGFydCArIDJdKSkgfHxcbiAgICAgICAgKGluZGljQ29uZmlnLnJlcGhNb2RlID09PSAnRXhwbGljaXQnICYmIGdseXBoc1tzdGFydCArIDJdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuWldKKVxuICAgICAgKVxuICAgICkge1xuICAgICAgLy8gU2VlIGlmIGl0IG1hdGNoZXMgdGhlICdycGhmJyBmZWF0dXJlLlxuICAgICAgbGV0IGcgPSBbZ2x5cGhzW3N0YXJ0XS5jb3B5KCksIGdseXBoc1tzdGFydCArIDFdLmNvcHkoKSwgZ2x5cGhzW3N0YXJ0ICsgMl0uY29weSgpXTtcbiAgICAgIGlmICh3b3VsZFN1YnN0aXR1dGUoZy5zbGljZSgwLCAyKSwgJ3JwaGYnKSB8fCAoaW5kaWNDb25maWcucmVwaE1vZGUgPT09ICdFeHBsaWNpdCcgJiYgd291bGRTdWJzdGl0dXRlKGcsICdycGhmJykpKSB7XG4gICAgICAgIGxpbWl0ICs9IDI7XG4gICAgICAgIHdoaWxlIChsaW1pdCA8IGVuZCAmJiBpc0pvaW5lcihnbHlwaHNbbGltaXRdKSkge1xuICAgICAgICAgIGxpbWl0Kys7XG4gICAgICAgIH1cbiAgICAgICAgYmFzZSA9IHN0YXJ0O1xuICAgICAgICBoYXNSZXBoID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGluZGljQ29uZmlnLnJlcGhNb2RlID09PSAnTG9nX1JlcGhhJyAmJiBnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuUmVwaGEpIHtcbiAgICAgIGxpbWl0Kys7XG4gICAgICB3aGlsZSAobGltaXQgPCBlbmQgJiYgaXNKb2luZXIoZ2x5cGhzW2xpbWl0XSkpIHtcbiAgICAgICAgbGltaXQrKztcbiAgICAgIH1cbiAgICAgIGJhc2UgPSBzdGFydDtcbiAgICAgIGhhc1JlcGggPSB0cnVlO1xuICAgIH1cblxuICAgIHN3aXRjaCAoaW5kaWNDb25maWcuYmFzZVBvcykge1xuICAgICAgY2FzZSAnTGFzdCc6IHtcbiAgICAgICAgLy8gc3RhcnRpbmcgZnJvbSB0aGUgZW5kIG9mIHRoZSBzeWxsYWJsZSwgbW92ZSBiYWNrd2FyZHNcbiAgICAgICAgbGV0IGkgPSBlbmQ7XG4gICAgICAgIGxldCBzZWVuQmVsb3cgPSBmYWxzZTtcblxuICAgICAgICBkbyB7XG4gICAgICAgICAgbGV0IGluZm8gPSBnbHlwaHNbLS1pXS5zaGFwZXJJbmZvO1xuXG4gICAgICAgICAgLy8gdW50aWwgYSBjb25zb25hbnQgaXMgZm91bmRcbiAgICAgICAgICBpZiAoaXNDb25zb25hbnQoZ2x5cGhzW2ldKSkge1xuICAgICAgICAgICAgLy8gdGhhdCBkb2VzIG5vdCBoYXZlIGEgYmVsb3ctYmFzZSBvciBwb3N0LWJhc2UgZm9ybVxuICAgICAgICAgICAgLy8gKHBvc3QtYmFzZSBmb3JtcyBoYXZlIHRvIGZvbGxvdyBiZWxvdy1iYXNlIGZvcm1zKSxcbiAgICAgICAgICAgIGlmIChpbmZvLnBvc2l0aW9uICE9PSBQT1NJVElPTlMuQmVsb3dfQyAmJiAoaW5mby5wb3NpdGlvbiAhPT0gUE9TSVRJT05TLlBvc3RfQyB8fCBzZWVuQmVsb3cpKSB7XG4gICAgICAgICAgICAgIGJhc2UgPSBpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gb3IgdGhhdCBpcyBub3QgYSBwcmUtYmFzZSByZW9yZGVyaW5nIFJhLFxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIElNUExFTUVOVEFUSU9OIE5PVEVTOlxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIE91ciBwcmUtYmFzZSByZW9yZGVyaW5nIFJhJ3MgYXJlIG1hcmtlZCBQT1NfUE9TVF9DLCBzbyB3aWxsIGJlIHNraXBwZWRcbiAgICAgICAgICAgIC8vIGJ5IHRoZSBsb2dpYyBhYm92ZSBhbHJlYWR5LlxuICAgICAgICAgICAgLy9cblxuICAgICAgICAgICAgLy8gb3IgYXJyaXZlIGF0IHRoZSBmaXJzdCBjb25zb25hbnQuIFRoZSBjb25zb25hbnQgc3RvcHBlZCBhdCB3aWxsXG4gICAgICAgICAgICAvLyBiZSB0aGUgYmFzZS5cbiAgICAgICAgICAgIGlmIChpbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuQmVsb3dfQykge1xuICAgICAgICAgICAgICBzZWVuQmVsb3cgPSB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBiYXNlID0gaTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHN0YXJ0IDwgaSAmJiBpbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLlpXSiAmJiBnbHlwaHNbaSAtIDFdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuSCkge1xuICAgICAgICAgICAgLy8gQSBaV0ogYWZ0ZXIgYSBIYWxhbnQgc3RvcHMgdGhlIGJhc2Ugc2VhcmNoLCBhbmQgcmVxdWVzdHMgYW4gZXhwbGljaXRcbiAgICAgICAgICAgIC8vIGhhbGYgZm9ybS5cbiAgICAgICAgICAgIC8vIEEgWldKIGJlZm9yZSBhIEhhbGFudCwgcmVxdWVzdHMgYSBzdWJqb2luZWQgZm9ybSBpbnN0ZWFkLCBhbmQgaGVuY2VcbiAgICAgICAgICAgIC8vIHNlYXJjaCBjb250aW51ZXMuICBUaGlzIGlzIHBhcnRpY3VsYXJseSBpbXBvcnRhbnQgZm9yIEJlbmdhbGlcbiAgICAgICAgICAgIC8vIHNlcXVlbmNlIFJhLEgsWWEgdGhhdCBzaG91bGQgZm9ybSBZYS1QaGFsYWEgYnkgc3Viam9pbmluZyBZYS5cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfSB3aGlsZSAoaSA+IGxpbWl0KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ0ZpcnN0Jzoge1xuICAgICAgICAvLyBUaGUgZmlyc3QgY29uc29uYW50IGlzIGFsd2F5cyB0aGUgYmFzZS5cbiAgICAgICAgYmFzZSA9IHN0YXJ0O1xuXG4gICAgICAgIC8vIE1hcmsgYWxsIHN1YnNlcXVlbnQgY29uc29uYW50cyBhcyBiZWxvdy5cbiAgICAgICAgZm9yIChsZXQgaSA9IGJhc2UgKyAxOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgICAgICBpZiAoaXNDb25zb25hbnQoZ2x5cGhzW2ldKSkge1xuICAgICAgICAgICAgZ2x5cGhzW2ldLnNoYXBlckluZm8ucG9zaXRpb24gPSBQT1NJVElPTlMuQmVsb3dfQztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgc3lsbGFibGUgc3RhcnRzIHdpdGggUmEgKyBIYWxhbnQgKGluIGEgc2NyaXB0IHRoYXQgaGFzIFJlcGgpXG4gICAgLy8gYW5kIGhhcyBtb3JlIHRoYW4gb25lIGNvbnNvbmFudCwgUmEgaXMgZXhjbHVkZWQgZnJvbSBjYW5kaWRhdGVzIGZvclxuICAgIC8vIGJhc2UgY29uc29uYW50cy5cbiAgICAvL1xuICAgIC8vICBPbmx5IGRvIHRoaXMgZm9yIHVuZm9yY2VkIFJlcGguIChpZS4gbm90IGZvciBSYSxILFpXSilcbiAgICBpZiAoaGFzUmVwaCAmJiBiYXNlID09PSBzdGFydCAmJiBsaW1pdCAtIGJhc2UgPD0gMikge1xuICAgICAgaGFzUmVwaCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIDIuIERlY29tcG9zZSBhbmQgcmVvcmRlciBNYXRyYXM6XG4gICAgLy9cbiAgICAvLyBFYWNoIG1hdHJhIGFuZCBhbnkgc3lsbGFibGUgbW9kaWZpZXIgc2lnbiBpbiB0aGUgY2x1c3RlciBhcmUgbW92ZWQgdG8gdGhlXG4gICAgLy8gYXBwcm9wcmlhdGUgcG9zaXRpb24gcmVsYXRpdmUgdG8gdGhlIGNvbnNvbmFudChzKSBpbiB0aGUgY2x1c3Rlci4gVGhlXG4gICAgLy8gc2hhcGluZyBlbmdpbmUgZGVjb21wb3NlcyB0d28tIG9yIHRocmVlLXBhcnQgbWF0cmFzIGludG8gdGhlaXIgY29uc3RpdHVlbnRcbiAgICAvLyBwYXJ0cyBiZWZvcmUgYW55IHJlcG9zaXRpb25pbmcuIE1hdHJhIGNoYXJhY3RlcnMgYXJlIGNsYXNzaWZpZWQgYnkgd2hpY2hcbiAgICAvLyBjb25zb25hbnQgaW4gYSBjb25qdW5jdCB0aGV5IGhhdmUgYWZmaW5pdHkgZm9yIGFuZCBhcmUgcmVvcmRlcmVkIHRvIHRoZVxuICAgIC8vIGZvbGxvd2luZyBwb3NpdGlvbnM6XG4gICAgLy9cbiAgICAvLyAgIG8gQmVmb3JlIGZpcnN0IGhhbGYgZm9ybSBpbiB0aGUgc3lsbGFibGVcbiAgICAvLyAgIG8gQWZ0ZXIgc3Viam9pbmVkIGNvbnNvbmFudHNcbiAgICAvLyAgIG8gQWZ0ZXIgcG9zdC1mb3JtIGNvbnNvbmFudFxuICAgIC8vICAgbyBBZnRlciBtYWluIGNvbnNvbmFudCAoZm9yIGFib3ZlIG1hcmtzKVxuICAgIC8vXG4gICAgLy8gSU1QTEVNRU5UQVRJT04gTk9URVM6XG4gICAgLy9cbiAgICAvLyBUaGUgbm9ybWFsaXplKCkgcm91dGluZSBoYXMgYWxyZWFkeSBkZWNvbXBvc2VkIG1hdHJhcyBmb3IgdXMsIHNvIHdlIGRvbid0XG4gICAgLy8gbmVlZCB0byB3b3JyeSBhYm91dCB0aGF0LlxuXG4gICAgLy8gMy4gIFJlb3JkZXIgbWFya3MgdG8gY2Fub25pY2FsIG9yZGVyOlxuICAgIC8vXG4gICAgLy8gQWRqYWNlbnQgbnVrdGEgYW5kIGhhbGFudCBvciBudWt0YSBhbmQgdmVkaWMgc2lnbiBhcmUgYWx3YXlzIHJlcG9zaXRpb25lZFxuICAgIC8vIGlmIG5lY2Vzc2FyeSwgc28gdGhhdCB0aGUgbnVrdGEgaXMgZmlyc3QuXG4gICAgLy9cbiAgICAvLyBJTVBMRU1FTlRBVElPTiBOT1RFUzpcbiAgICAvL1xuICAgIC8vIFdlIGRvbid0IG5lZWQgdG8gZG8gdGhpczogdGhlIG5vcm1hbGl6ZSgpIHJvdXRpbmUgYWxyZWFkeSBkaWQgdGhpcyBmb3IgdXMuXG5cbiAgICAvLyBSZW9yZGVyIGNoYXJhY3RlcnNcblxuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IGJhc2U7IGkrKykge1xuICAgICAgbGV0IGluZm8gPSBnbHlwaHNbaV0uc2hhcGVySW5mbztcbiAgICAgIGluZm8ucG9zaXRpb24gPSBNYXRoLm1pbihQT1NJVElPTlMuUHJlX0MsIGluZm8ucG9zaXRpb24pO1xuICAgIH1cblxuICAgIGlmIChiYXNlIDwgZW5kKSB7XG4gICAgICBnbHlwaHNbYmFzZV0uc2hhcGVySW5mby5wb3NpdGlvbiA9IFBPU0lUSU9OUy5CYXNlX0M7XG4gICAgfVxuXG4gICAgLy8gTWFyayBmaW5hbCBjb25zb25hbnRzLiAgQSBmaW5hbCBjb25zb25hbnQgaXMgb25lIGFwcGVhcmluZyBhZnRlciBhIG1hdHJhLFxuICAgIC8vIGxpa2UgaW4gS2htZXIuXG4gICAgZm9yIChsZXQgaSA9IGJhc2UgKyAxOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgIGlmIChnbHlwaHNbaV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5NKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IGVuZDsgaisrKSB7XG4gICAgICAgICAgaWYgKGlzQ29uc29uYW50KGdseXBoc1tqXSkpIHtcbiAgICAgICAgICAgIGdseXBoc1tqXS5zaGFwZXJJbmZvLnBvc2l0aW9uID0gUE9TSVRJT05TLkZpbmFsX0M7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIGJlZ2lubmluZyBSYVxuICAgIGlmIChoYXNSZXBoKSB7XG4gICAgICBnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8ucG9zaXRpb24gPSBQT1NJVElPTlMuUmFfVG9fQmVjb21lX1JlcGg7XG4gICAgfVxuXG4gICAgLy8gRm9yIG9sZC1zdHlsZSBJbmRpYyBzY3JpcHQgdGFncywgbW92ZSB0aGUgZmlyc3QgcG9zdC1iYXNlIEhhbGFudCBhZnRlclxuICAgIC8vIGxhc3QgY29uc29uYW50LlxuICAgIC8vXG4gICAgLy8gUmVwb3J0cyBzdWdnZXN0IHRoYXQgaW4gc29tZSBzY3JpcHRzIFVuaXNjcmliZSBkb2VzIHRoaXMgb25seSBpZiB0aGVyZVxuICAgIC8vIGlzICpub3QqIGEgSGFsYW50IGFmdGVyIGxhc3QgY29uc29uYW50IGFscmVhZHkgKGVnLiBLYW5uYWRhKSwgd2hpbGUgaXRcbiAgICAvLyBkb2VzIGl0IHVuY29uZGl0aW9uYWxseSBpbiBvdGhlciBzY3JpcHRzIChlZy4gTWFsYXlhbGFtKS4gIFdlIGRvbid0XG4gICAgLy8gY3VycmVudGx5IGtub3cgYWJvdXQgb3RoZXIgc2NyaXB0cywgc28gd2Ugc2luZ2xlIG91dCBNYWxheWFsYW0gZm9yIG5vdy5cbiAgICAvL1xuICAgIC8vIEthbm5hZGEgdGVzdCBjYXNlOlxuICAgIC8vIFUrMEM5QSxVKzBDQ0QsVSswQzlBLFUrMENDRFxuICAgIC8vIFdpdGggc29tZSB2ZXJzaW9ucyBvZiBMb2hpdCBLYW5uYWRhLlxuICAgIC8vIGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTU5MTE4XG4gICAgLy9cbiAgICAvLyBNYWxheWFsYW0gdGVzdCBjYXNlOlxuICAgIC8vIFUrMEQzOCxVKzBENEQsVSswRDMxLFUrMEQ0RCxVKzBEMzEsVSswRDREXG4gICAgLy8gV2l0aCBsb2hpdC10dGYtMjAxMjExMjIvTG9oaXQtTWFsYXlhbGFtLnR0ZlxuICAgIGlmIChwbGFuLmlzT2xkU3BlYykge1xuICAgICAgbGV0IGRpc2FsbG93RG91YmxlSGFsYW50cyA9IHBsYW4udW5pY29kZVNjcmlwdCAhPT0gJ01hbGF5YWxhbSc7XG4gICAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgICBpZiAoZ2x5cGhzW2ldLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuSCkge1xuICAgICAgICAgIGxldCBqO1xuICAgICAgICAgIGZvciAoaiA9IGVuZCAtIDE7IGogPiBpOyBqLS0pIHtcbiAgICAgICAgICAgIGlmIChpc0NvbnNvbmFudChnbHlwaHNbal0pIHx8IChkaXNhbGxvd0RvdWJsZUhhbGFudHMgJiYgZ2x5cGhzW2pdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuSCkpIHtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGdseXBoc1tqXS5zaGFwZXJJbmZvLmNhdGVnb3J5ICE9PSBDQVRFR09SSUVTLkggJiYgaiA+IGkpIHtcbiAgICAgICAgICAgIC8vIE1vdmUgSGFsYW50IHRvIGFmdGVyIGxhc3QgY29uc29uYW50LlxuICAgICAgICAgICAgbGV0IHQgPSBnbHlwaHNbaV07XG4gICAgICAgICAgICBnbHlwaHMuc3BsaWNlKGksIDAsIC4uLmdseXBocy5zcGxpY2UoaSArIDEsIGogLSBpKSk7XG4gICAgICAgICAgICBnbHlwaHNbal0gPSB0O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQXR0YWNoIG1pc2MgbWFya3MgdG8gcHJldmlvdXMgY2hhciB0byBtb3ZlIHdpdGggdGhlbS5cbiAgICBsZXQgbGFzdFBvcyA9IFBPU0lUSU9OUy5TdGFydDtcbiAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgbGV0IGluZm8gPSBnbHlwaHNbaV0uc2hhcGVySW5mbztcbiAgICAgIGlmIChpbmZvLmNhdGVnb3J5ICYgKEpPSU5FUl9GTEFHUyB8IENBVEVHT1JJRVMuTiB8IENBVEVHT1JJRVMuUlMgfCBDQVRFR09SSUVTLkNNIHwgSEFMQU5UX09SX0NPRU5HX0ZMQUdTICYgaW5mby5jYXRlZ29yeSkpIHtcbiAgICAgICAgaW5mby5wb3NpdGlvbiA9IGxhc3RQb3M7XG4gICAgICAgIGlmIChpbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLkggJiYgaW5mby5wb3NpdGlvbiA9PT0gUE9TSVRJT05TLlByZV9NKSB7XG4gICAgICAgICAgLy8gVW5pc2NyaWJlIGRvZXNuJ3QgbW92ZSB0aGUgSGFsYW50IHdpdGggTGVmdCBNYXRyYS5cbiAgICAgICAgICAvLyBURVNUOiBVKzA5MkIsVSswOTNGLFUrMDk0REVcbiAgICAgICAgICAvLyBXZSBmb2xsb3cuICBUaGlzIGlzIGltcG9ydGFudCBmb3IgdGhlIFNpbmhhbGFcbiAgICAgICAgICAvLyBVKzBEREEgc3BsaXQgbWF0cmEgc2luY2UgaXQgZGVjb21wb3NlcyB0byBVKzBERDksVSswRENBXG4gICAgICAgICAgLy8gd2hlcmUgVSswREQ5IGlzIGEgbGVmdCBtYXRyYSBhbmQgVSswRENBIGlzIHRoZSB2aXJhbWEuXG4gICAgICAgICAgLy8gV2UgZG9uJ3Qgd2FudCB0byBtb3ZlIHRoZSB2aXJhbWEgd2l0aCB0aGUgbGVmdCBtYXRyYS5cbiAgICAgICAgICAvLyBURVNUOiBVKzBEOUEsVSswRERBXG4gICAgICAgICAgZm9yIChsZXQgaiA9IGk7IGogPiBzdGFydDsgai0tKSB7XG4gICAgICAgICAgICBpZiAoZ2x5cGhzW2ogLSAxXS5zaGFwZXJJbmZvLnBvc2l0aW9uICE9PSBQT1NJVElPTlMuUHJlX00pIHtcbiAgICAgICAgICAgICAgaW5mby5wb3NpdGlvbiA9IGdseXBoc1tqIC0gMV0uc2hhcGVySW5mby5wb3NpdGlvbjtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGluZm8ucG9zaXRpb24gIT09IFBPU0lUSU9OUy5TTVZEKSB7XG4gICAgICAgIGxhc3RQb3MgPSBpbmZvLnBvc2l0aW9uO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZvciBwb3N0LWJhc2UgY29uc29uYW50cyBsZXQgdGhlbSBvd24gYW55dGhpbmcgYmVmb3JlIHRoZW1cbiAgICAvLyBzaW5jZSB0aGUgbGFzdCBjb25zb25hbnQgb3IgbWF0cmEuXG4gICAgbGV0IGxhc3QgPSBiYXNlO1xuICAgIGZvciAobGV0IGkgPSBiYXNlICsgMTsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICBpZiAoaXNDb25zb25hbnQoZ2x5cGhzW2ldKSkge1xuICAgICAgICBmb3IgKGxldCBqID0gbGFzdCArIDE7IGogPCBpOyBqKyspIHtcbiAgICAgICAgICBpZiAoZ2x5cGhzW2pdLnNoYXBlckluZm8ucG9zaXRpb24gPCBQT1NJVElPTlMuU01WRCkge1xuICAgICAgICAgICAgZ2x5cGhzW2pdLnNoYXBlckluZm8ucG9zaXRpb24gPSBnbHlwaHNbaV0uc2hhcGVySW5mby5wb3NpdGlvbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGFzdCA9IGk7XG4gICAgICB9IGVsc2UgaWYgKGdseXBoc1tpXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLk0pIHtcbiAgICAgICAgbGFzdCA9IGk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGFyciA9IGdseXBocy5zbGljZShzdGFydCwgZW5kKTtcbiAgICBhcnIuc29ydCgoYSwgYikgPT4gYS5zaGFwZXJJbmZvLnBvc2l0aW9uIC0gYi5zaGFwZXJJbmZvLnBvc2l0aW9uKTtcbiAgICBnbHlwaHMuc3BsaWNlKHN0YXJ0LCBhcnIubGVuZ3RoLCAuLi5hcnIpO1xuXG4gICAgLy8gRmluZCBiYXNlIGFnYWluXG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHtcbiAgICAgIGlmIChnbHlwaHNbaV0uc2hhcGVySW5mby5wb3NpdGlvbiA9PT0gUE9TSVRJT05TLkJhc2VfQykge1xuICAgICAgICBiYXNlID0gaTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0dXAgZmVhdHVyZXMgbm93XG5cbiAgICAvLyBSZXBoXG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDwgZW5kICYmIGdseXBoc1tpXS5zaGFwZXJJbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuUmFfVG9fQmVjb21lX1JlcGg7IGkrKykge1xuICAgICAgZ2x5cGhzW2ldLmZlYXR1cmVzLnJwaGYgPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIFByZS1iYXNlXG4gICAgbGV0IGJsd2YgPSAhcGxhbi5pc09sZFNwZWMgJiYgaW5kaWNDb25maWcuYmx3Zk1vZGUgPT09ICdQcmVfQW5kX1Bvc3QnO1xuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IGJhc2U7IGkrKykge1xuICAgICAgZ2x5cGhzW2ldLmZlYXR1cmVzLmhhbGYgPSB0cnVlO1xuICAgICAgaWYgKGJsd2YpIHtcbiAgICAgICAgZ2x5cGhzW2ldLmZlYXR1cmVzLmJsd2YgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBvc3QtYmFzZVxuICAgIGZvciAobGV0IGkgPSBiYXNlICsgMTsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICBnbHlwaHNbaV0uZmVhdHVyZXMuYWJ2ZiA9IHRydWU7XG4gICAgICBnbHlwaHNbaV0uZmVhdHVyZXMucHN0ZiA9IHRydWU7XG4gICAgICBnbHlwaHNbaV0uZmVhdHVyZXMuYmx3ZiA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHBsYW4uaXNPbGRTcGVjICYmIHBsYW4udW5pY29kZVNjcmlwdCA9PT0gJ0RldmFuYWdhcmknKSB7XG4gICAgICAvLyBPbGQtc3BlYyBleWUtbGFzaCBSYSBuZWVkcyBzcGVjaWFsIGhhbmRsaW5nLiAgRnJvbSB0aGVcbiAgICAgIC8vIHNwZWM6XG4gICAgICAvL1xuICAgICAgLy8gXCJUaGUgZmVhdHVyZSAnYmVsb3ctYmFzZSBmb3JtJyBpcyBhcHBsaWVkIHRvIGNvbnNvbmFudHNcbiAgICAgIC8vIGhhdmluZyBiZWxvdy1iYXNlIGZvcm1zIGFuZCBmb2xsb3dpbmcgdGhlIGJhc2UgY29uc29uYW50LlxuICAgICAgLy8gVGhlIGV4Y2VwdGlvbiBpcyB2YXR0dSwgd2hpY2ggbWF5IGFwcGVhciBiZWxvdyBoYWxmIGZvcm1zXG4gICAgICAvLyBhcyB3ZWxsIGFzIGJlbG93IHRoZSBiYXNlIGdseXBoLiBUaGUgZmVhdHVyZSAnYmVsb3ctYmFzZVxuICAgICAgLy8gZm9ybScgd2lsbCBiZSBhcHBsaWVkIHRvIGFsbCBzdWNoIG9jY3VycmVuY2VzIG9mIFJhIGFzIHdlbGwuXCJcbiAgICAgIC8vXG4gICAgICAvLyBUZXN0IGNhc2U6IFUrMDkyNCxVKzA5NEQsVSswOTMwLFUrMDk0ZCxVKzA5MTVcbiAgICAgIC8vIHdpdGggU2Fuc2tyaXQgMjAwMyBmb250LlxuICAgICAgLy9cbiAgICAgIC8vIEhvd2V2ZXIsIG5vdGUgdGhhdCBSYSxIYWxhbnQsWldKIGlzIHRoZSBjb3JyZWN0IHdheSB0b1xuICAgICAgLy8gcmVxdWVzdCBleWVsYXNoIGZvcm0gb2YgUmEsIHNvIHdlIHdvdWxkYm4ndCBpbmhpYml0IGl0XG4gICAgICAvLyBpbiB0aGF0IHNlcXVlbmNlLlxuICAgICAgLy9cbiAgICAgIC8vIFRlc3QgY2FzZTogVSswOTI0LFUrMDk0RCxVKzA5MzAsVSswOTRkLFUrMjAwRCxVKzA5MTVcbiAgICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSArIDEgPCBiYXNlOyBpKyspIHtcbiAgICAgICAgaWYgKGdseXBoc1tpXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLlJhICYmXG4gICAgICAgICAgZ2x5cGhzW2kgKyAxXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLkggJiZcbiAgICAgICAgICAoaSArIDEgPT09IGJhc2UgfHwgZ2x5cGhzW2kgKyAyXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLlpXSilcbiAgICAgICAgKSB7XG4gICAgICAgICAgZ2x5cGhzW2ldLmZlYXR1cmVzLmJsd2YgPSB0cnVlO1xuICAgICAgICAgIGdseXBoc1tpICsgMV0uZmVhdHVyZXMuYmx3ZiA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgcHJlZkxlbiA9IDI7XG4gICAgaWYgKGZlYXR1cmVzLnByZWYgJiYgYmFzZSArIHByZWZMZW4gPCBlbmQpIHtcbiAgICAgIC8vIEZpbmQgYSBIYWxhbnQsUmEgc2VxdWVuY2UgYW5kIG1hcmsgaXQgZm9yIHByZS1iYXNlIHJlb3JkZXJpbmcgcHJvY2Vzc2luZy5cbiAgICAgIGZvciAobGV0IGkgPSBiYXNlICsgMTsgaSArIHByZWZMZW4gLSAxIDwgZW5kOyBpKyspIHtcbiAgICAgICAgbGV0IGcgPSBbZ2x5cGhzW2ldLmNvcHkoKSwgZ2x5cGhzW2kgKyAxXS5jb3B5KCldO1xuICAgICAgICBpZiAod291bGRTdWJzdGl0dXRlKGcsICdwcmVmJykpIHtcbiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHByZWZMZW47IGorKykge1xuICAgICAgICAgICAgZ2x5cGhzW2krK10uZmVhdHVyZXMucHJlZiA9IHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gTWFyayB0aGUgc3Vic2VxdWVudCBzdHVmZiB3aXRoICdjZmFyJy4gIFVzZWQgaW4gS2htZXIuXG4gICAgICAgICAgLy8gUmVhZCB0aGUgZmVhdHVyZSBzcGVjLlxuICAgICAgICAgIC8vIFRoaXMgYWxsb3dzIGRpc3Rpbmd1aXNoaW5nIHRoZSBmb2xsb3dpbmcgY2FzZXMgd2l0aCBNUyBLaG1lciBmb250czpcbiAgICAgICAgICAvLyBVKzE3ODQsVSsxN0QyLFUrMTc5QSxVKzE3RDIsVSsxNzgyXG4gICAgICAgICAgLy8gVSsxNzg0LFUrMTdEMixVKzE3ODIsVSsxN0QyLFUrMTc5QVxuICAgICAgICAgIGlmIChmZWF0dXJlcy5jZmFyKSB7XG4gICAgICAgICAgICBmb3IgKDsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICAgICAgICAgIGdseXBoc1tpXS5mZWF0dXJlcy5jZmFyID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFwcGx5IFpXSi9aV05KIGVmZmVjdHNcbiAgICBmb3IgKGxldCBpID0gc3RhcnQgKyAxOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgIGlmIChpc0pvaW5lcihnbHlwaHNbaV0pKSB7XG4gICAgICAgIGxldCBub25Kb2luZXIgPSBnbHlwaHNbaV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5aV05KO1xuICAgICAgICBsZXQgaiA9IGk7XG5cbiAgICAgICAgZG8ge1xuICAgICAgICAgIGotLTtcblxuICAgICAgICAgIC8vIFpXSi9aV05KIHNob3VsZCBkaXNhYmxlIENKQ1QuICBUaGV5IGRvIHRoYXQgYnkgc2ltcGx5XG4gICAgICAgICAgLy8gYmVpbmcgdGhlcmUsIHNpbmNlIHdlIGRvbid0IHNraXAgdGhlbSBmb3IgdGhlIENKQ1RcbiAgICAgICAgICAvLyBmZWF0dXJlIChpZS4gRl9NQU5VQUxfWldKKVxuXG4gICAgICAgICAgLy8gQSBaV05KIGRpc2FibGVzIEhBTEYuXG4gICAgICAgICAgaWYgKG5vbkpvaW5lcikge1xuICAgICAgICAgICAgZGVsZXRlIGdseXBoc1tqXS5mZWF0dXJlcy5oYWxmO1xuICAgICAgICAgIH1cbiAgICAgICAgfSB3aGlsZSAoaiA+IHN0YXJ0ICYmICFpc0NvbnNvbmFudChnbHlwaHNbal0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZmluYWxSZW9yZGVyaW5nKGZvbnQsIGdseXBocywgcGxhbikge1xuICBsZXQgaW5kaWNDb25maWcgPSBwbGFuLmluZGljQ29uZmlnO1xuICBsZXQgZmVhdHVyZXMgPSBmb250Ll9sYXlvdXRFbmdpbmUuZW5naW5lLkdTVUJQcm9jZXNzb3IuZmVhdHVyZXM7XG5cbiAgZm9yIChsZXQgc3RhcnQgPSAwLCBlbmQgPSBuZXh0U3lsbGFibGUoZ2x5cGhzLCAwKTsgc3RhcnQgPCBnbHlwaHMubGVuZ3RoOyBzdGFydCA9IGVuZCwgZW5kID0gbmV4dFN5bGxhYmxlKGdseXBocywgc3RhcnQpKSB7XG4gICAgLy8gNC4gRmluYWwgcmVvcmRlcmluZzpcbiAgICAvL1xuICAgIC8vIEFmdGVyIHRoZSBsb2NhbGl6ZWQgZm9ybXMgYW5kIGJhc2ljIHNoYXBpbmcgZm9ybXMgR1NVQiBmZWF0dXJlcyBoYXZlIGJlZW5cbiAgICAvLyBhcHBsaWVkIChzZWUgYmVsb3cpLCB0aGUgc2hhcGluZyBlbmdpbmUgcGVyZm9ybXMgc29tZSBmaW5hbCBnbHlwaFxuICAgIC8vIHJlb3JkZXJpbmcgYmVmb3JlIGFwcGx5aW5nIGFsbCB0aGUgcmVtYWluaW5nIGZvbnQgZmVhdHVyZXMgdG8gdGhlIGVudGlyZVxuICAgIC8vIGNsdXN0ZXIuXG5cbiAgICBsZXQgdHJ5UHJlZiA9ICEhZmVhdHVyZXMucHJlZjtcblxuICAgIC8vIEZpbmQgYmFzZSBhZ2FpblxuICAgIGxldCBiYXNlID0gc3RhcnQ7XG4gICAgZm9yICg7IGJhc2UgPCBlbmQ7IGJhc2UrKykge1xuICAgICAgaWYgKGdseXBoc1tiYXNlXS5zaGFwZXJJbmZvLnBvc2l0aW9uID49IFBPU0lUSU9OUy5CYXNlX0MpIHtcbiAgICAgICAgaWYgKHRyeVByZWYgJiYgYmFzZSArIDEgPCBlbmQpIHtcbiAgICAgICAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgICAgICAgaWYgKGdseXBoc1tpXS5mZWF0dXJlcy5wcmVmKSB7XG4gICAgICAgICAgICAgIGlmICghKGdseXBoc1tpXS5zdWJzdGl0dXRlZCAmJiBnbHlwaHNbaV0uaXNMaWdhdGVkICYmICFnbHlwaHNbaV0uaXNNdWx0aXBsaWVkKSkge1xuICAgICAgICAgICAgICAgIC8vIE9rLCB0aGlzIHdhcyBhICdwcmVmJyBjYW5kaWRhdGUgYnV0IGRpZG4ndCBmb3JtIGFueS5cbiAgICAgICAgICAgICAgICAvLyBCYXNlIGlzIGFyb3VuZCBoZXJlLi4uXG4gICAgICAgICAgICAgICAgYmFzZSA9IGk7XG4gICAgICAgICAgICAgICAgd2hpbGUgKGJhc2UgPCBlbmQgJiYgaXNIYWxhbnRPckNvZW5nKGdseXBoc1tiYXNlXSkpIHtcbiAgICAgICAgICAgICAgICAgIGJhc2UrKztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZ2x5cGhzW2Jhc2VdLnNoYXBlckluZm8ucG9zaXRpb24gPSBQT1NJVElPTlMuQkFTRV9DO1xuICAgICAgICAgICAgICAgIHRyeVByZWYgPSBmYWxzZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb3IgTWFsYXlhbGFtLCBza2lwIG92ZXIgdW5mb3JtZWQgYmVsb3ctIChidXQgTk9UIHBvc3QtKSBmb3Jtcy5cbiAgICAgICAgaWYgKHBsYW4udW5pY29kZVNjcmlwdCA9PT0gJ01hbGF5YWxhbScpIHtcbiAgICAgICAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgICAgICAgd2hpbGUgKGkgPCBlbmQgJiYgaXNKb2luZXIoZ2x5cGhzW2ldKSkge1xuICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChpID09PSBlbmQgfHwgIWlzSGFsYW50T3JDb2VuZyhnbHlwaHNbaV0pKSB7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpKys7IC8vIFNraXAgaGFsYW50LlxuICAgICAgICAgICAgd2hpbGUgKGkgPCBlbmQgJiYgaXNKb2luZXIoZ2x5cGhzW2ldKSkge1xuICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChpIDwgZW5kICYmIGlzQ29uc29uYW50KGdseXBoc1tpXSkgJiYgZ2x5cGhzW2ldLnNoYXBlckluZm8ucG9zaXRpb24gPT09IFBPU0lUSU9OUy5CZWxvd19DKSB7XG4gICAgICAgICAgICAgIGJhc2UgPSBpO1xuICAgICAgICAgICAgICBnbHlwaHNbYmFzZV0uc2hhcGVySW5mby5wb3NpdGlvbiA9IFBPU0lUSU9OUy5CYXNlX0M7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHN0YXJ0IDwgYmFzZSAmJiBnbHlwaHNbYmFzZV0uc2hhcGVySW5mby5wb3NpdGlvbiA+IFBPU0lUSU9OUy5CYXNlX0MpIHtcbiAgICAgICAgICBiYXNlLS07XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGJhc2UgPT09IGVuZCAmJiBzdGFydCA8IGJhc2UgJiYgZ2x5cGhzW2Jhc2UgLSAxXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLlpXSikge1xuICAgICAgYmFzZS0tO1xuICAgIH1cblxuICAgIGlmIChiYXNlIDwgZW5kKSB7XG4gICAgICB3aGlsZSAoc3RhcnQgPCBiYXNlICYmIGdseXBoc1tiYXNlXS5zaGFwZXJJbmZvLmNhdGVnb3J5ICYgKENBVEVHT1JJRVMuTiB8IEhBTEFOVF9PUl9DT0VOR19GTEFHUykpIHtcbiAgICAgICAgYmFzZS0tO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIG8gUmVvcmRlciBtYXRyYXM6XG4gICAgLy9cbiAgICAvLyBJZiBhIHByZS1iYXNlIG1hdHJhIGNoYXJhY3RlciBoYWQgYmVlbiByZW9yZGVyZWQgYmVmb3JlIGFwcGx5aW5nIGJhc2ljXG4gICAgLy8gZmVhdHVyZXMsIHRoZSBnbHlwaCBjYW4gYmUgbW92ZWQgY2xvc2VyIHRvIHRoZSBtYWluIGNvbnNvbmFudCBiYXNlZCBvblxuICAgIC8vIHdoZXRoZXIgaGFsZi1mb3JtcyBoYWQgYmVlbiBmb3JtZWQuIEFjdHVhbCBwb3NpdGlvbiBmb3IgdGhlIG1hdHJhIGlzXG4gICAgLy8gZGVmaW5lZCBhcyDigJxhZnRlciBsYXN0IHN0YW5kYWxvbmUgaGFsYW50IGdseXBoLCBhZnRlciBpbml0aWFsIG1hdHJhXG4gICAgLy8gcG9zaXRpb24gYW5kIGJlZm9yZSB0aGUgbWFpbiBjb25zb25hbnTigJ0uIElmIFpXSiBvciBaV05KIGZvbGxvdyB0aGlzXG4gICAgLy8gaGFsYW50LCBwb3NpdGlvbiBpcyBtb3ZlZCBhZnRlciBpdC5cbiAgICAvL1xuXG4gICAgaWYgKHN0YXJ0ICsgMSA8IGVuZCAmJiBzdGFydCA8IGJhc2UpIHsgLy8gT3RoZXJ3aXNlIHRoZXJlIGNhbid0IGJlIGFueSBwcmUtYmFzZSBtYXRyYSBjaGFyYWN0ZXJzLlxuICAgICAgLy8gSWYgd2UgbG9zdCB0cmFjayBvZiBiYXNlLCBhbGFzLCBwb3NpdGlvbiBiZWZvcmUgbGFzdCB0aGluZ3kuXG4gICAgICBsZXQgbmV3UG9zID0gYmFzZSA9PT0gZW5kID8gYmFzZSAtIDIgOiBiYXNlIC0gMTtcblxuICAgICAgLy8gTWFsYXlhbGFtIC8gVGFtaWwgZG8gbm90IGhhdmUgXCJoYWxmXCIgZm9ybXMgb3IgZXhwbGljaXQgdmlyYW1hIGZvcm1zLlxuICAgICAgLy8gVGhlIGdseXBocyBmb3JtZWQgYnkgJ2hhbGYnIGFyZSBDaGlsbHVzIG9yIGxpZ2F0ZWQgZXhwbGljaXQgdmlyYW1hcy5cbiAgICAgIC8vIFdlIHdhbnQgdG8gcG9zaXRpb24gbWF0cmEgYWZ0ZXIgdGhlbS5cbiAgICAgIGlmIChwbGFuLnVuaWNvZGVTY3JpcHQgIT09ICdNYWxheWFsYW0nICYmIHBsYW4udW5pY29kZVNjcmlwdCAhPT0gJ1RhbWlsJykge1xuICAgICAgICB3aGlsZSAobmV3UG9zID4gc3RhcnQgJiYgIShnbHlwaHNbbmV3UG9zXS5zaGFwZXJJbmZvLmNhdGVnb3J5ICYgKENBVEVHT1JJRVMuTSB8IEhBTEFOVF9PUl9DT0VOR19GTEFHUykpKSB7XG4gICAgICAgICAgbmV3UG9zLS07XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiB3ZSBmb3VuZCBubyBIYWxhbnQgd2UgYXJlIGRvbmUuXG4gICAgICAgIC8vIE90aGVyd2lzZSBvbmx5IHByb2NlZWQgaWYgdGhlIEhhbGFudCBkb2VzXG4gICAgICAgIC8vIG5vdCBiZWxvbmcgdG8gdGhlIE1hdHJhIGl0c2VsZiFcbiAgICAgICAgaWYgKGlzSGFsYW50T3JDb2VuZyhnbHlwaHNbbmV3UG9zXSkgJiYgZ2x5cGhzW25ld1Bvc10uc2hhcGVySW5mby5wb3NpdGlvbiAhPT0gUE9TSVRJT05TLlByZV9NKSB7XG4gICAgICAgICAgLy8gSWYgWldKIG9yIFpXTkogZm9sbG93IHRoaXMgaGFsYW50LCBwb3NpdGlvbiBpcyBtb3ZlZCBhZnRlciBpdC5cbiAgICAgICAgICBpZiAobmV3UG9zICsgMSA8IGVuZCAmJiBpc0pvaW5lcihnbHlwaHNbbmV3UG9zICsgMV0pKSB7XG4gICAgICAgICAgICBuZXdQb3MrKztcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbmV3UG9zID0gc3RhcnQ7IC8vIE5vIG1vdmUuXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHN0YXJ0IDwgbmV3UG9zICYmIGdseXBoc1tuZXdQb3NdLnNoYXBlckluZm8ucG9zaXRpb24gIT09IFBPU0lUSU9OUy5QcmVfTSkge1xuICAgICAgICAvLyBOb3cgZ28gc2VlIGlmIHRoZXJlJ3MgYWN0dWFsbHkgYW55IG1hdHJhcy4uLlxuICAgICAgICBmb3IgKGxldCBpID0gbmV3UG9zOyBpID4gc3RhcnQ7IGktLSkge1xuICAgICAgICAgIGlmIChnbHlwaHNbaSAtIDFdLnNoYXBlckluZm8ucG9zaXRpb24gPT09IFBPU0lUSU9OUy5QcmVfTSkge1xuICAgICAgICAgICAgbGV0IG9sZFBvcyA9IGkgLSAxO1xuICAgICAgICAgICAgaWYgKG9sZFBvcyA8IGJhc2UgJiYgYmFzZSA8PSBuZXdQb3MpIHsgLy8gU2hvdWxkbid0IGFjdHVhbGx5IGhhcHBlbi5cbiAgICAgICAgICAgICAgYmFzZS0tO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgdG1wID0gZ2x5cGhzW29sZFBvc107XG4gICAgICAgICAgICBnbHlwaHMuc3BsaWNlKG9sZFBvcywgMCwgLi4uZ2x5cGhzLnNwbGljZShvbGRQb3MgKyAxLCBuZXdQb3MgLSBvbGRQb3MpKTtcbiAgICAgICAgICAgIGdseXBoc1tuZXdQb3NdID0gdG1wO1xuXG4gICAgICAgICAgICBuZXdQb3MtLTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvIFJlb3JkZXIgcmVwaDpcbiAgICAvL1xuICAgIC8vIFJlcGjigJlzIG9yaWdpbmFsIHBvc2l0aW9uIGlzIGFsd2F5cyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBzeWxsYWJsZSxcbiAgICAvLyAoaS5lLiBpdCBpcyBub3QgcmVvcmRlcmVkIGF0IHRoZSBjaGFyYWN0ZXIgcmVvcmRlcmluZyBzdGFnZSkuIEhvd2V2ZXIsXG4gICAgLy8gaXQgd2lsbCBiZSByZW9yZGVyZWQgYWNjb3JkaW5nIHRvIHRoZSBiYXNpYy1mb3JtcyBzaGFwaW5nIHJlc3VsdHMuXG4gICAgLy8gUG9zc2libGUgcG9zaXRpb25zIGZvciByZXBoLCBkZXBlbmRpbmcgb24gdGhlIHNjcmlwdCwgYXJlOyBhZnRlciBtYWluLFxuICAgIC8vIGJlZm9yZSBwb3N0LWJhc2UgY29uc29uYW50IGZvcm1zLCBhbmQgYWZ0ZXIgcG9zdC1iYXNlIGNvbnNvbmFudCBmb3Jtcy5cblxuICAgIC8vIFR3byBjYXNlczpcbiAgICAvL1xuICAgIC8vIC0gSWYgcmVwaGEgaXMgZW5jb2RlZCBhcyBhIHNlcXVlbmNlIG9mIGNoYXJhY3RlcnMgKFJhLEggb3IgUmEsSCxaV0opLCB0aGVuXG4gICAgLy8gICB3ZSBzaG91bGQgb25seSBtb3ZlIGl0IGlmIHRoZSBzZXF1ZW5jZSBsaWdhdGVkIHRvIHRoZSByZXBoYSBmb3JtLlxuICAgIC8vXG4gICAgLy8gLSBJZiByZXBoYSBpcyBlbmNvZGVkIHNlcGFyYXRlbHkgYW5kIGluIHRoZSBsb2dpY2FsIHBvc2l0aW9uLCB3ZSBzaG91bGQgb25seVxuICAgIC8vICAgbW92ZSBpdCBpZiBpdCBkaWQgTk9UIGxpZ2F0ZS4gIElmIGl0IGxpZ2F0ZWQsIGl0J3MgcHJvYmFibHkgdGhlIGZvbnQgdHJ5aW5nXG4gICAgLy8gICB0byBtYWtlIGl0IHdvcmsgd2l0aG91dCB0aGUgcmVvcmRlcmluZy5cbiAgICBpZiAoc3RhcnQgKyAxIDwgZW5kICYmXG4gICAgICBnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8ucG9zaXRpb24gPT09IFBPU0lUSU9OUy5SYV9Ub19CZWNvbWVfUmVwaCAmJlxuICAgICAgKGdseXBoc1tzdGFydF0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5SZXBoYSkgIT09IChnbHlwaHNbc3RhcnRdLmlzTGlnYXRlZCAmJiAhZ2x5cGhzW3N0YXJ0XS5pc011bHRpcGxpZWQpXG4gICAgKSB7XG4gICAgICBsZXQgbmV3UmVwaFBvcztcbiAgICAgIGxldCByZXBoUG9zID0gaW5kaWNDb25maWcucmVwaFBvcztcbiAgICAgIGxldCBmb3VuZCA9IGZhbHNlO1xuXG4gICAgICAvLyAxLiBJZiByZXBoIHNob3VsZCBiZSBwb3NpdGlvbmVkIGFmdGVyIHBvc3QtYmFzZSBjb25zb25hbnQgZm9ybXMsXG4gICAgICAvLyAgICBwcm9jZWVkIHRvIHN0ZXAgNS5cbiAgICAgIGlmIChyZXBoUG9zICE9PSBQT1NJVElPTlMuQWZ0ZXJfUG9zdCkge1xuICAgICAgICAvLyAgMi4gSWYgdGhlIHJlcGggcmVwb3NpdGlvbmluZyBjbGFzcyBpcyBub3QgYWZ0ZXIgcG9zdC1iYXNlOiB0YXJnZXRcbiAgICAgICAgLy8gICAgIHBvc2l0aW9uIGlzIGFmdGVyIHRoZSBmaXJzdCBleHBsaWNpdCBoYWxhbnQgZ2x5cGggYmV0d2VlbiB0aGVcbiAgICAgICAgLy8gICAgIGZpcnN0IHBvc3QtcmVwaCBjb25zb25hbnQgYW5kIGxhc3QgbWFpbiBjb25zb25hbnQuIElmIFpXSiBvciBaV05KXG4gICAgICAgIC8vICAgICBhcmUgZm9sbG93aW5nIHRoaXMgaGFsYW50LCBwb3NpdGlvbiBpcyBtb3ZlZCBhZnRlciBpdC4gSWYgc3VjaFxuICAgICAgICAvLyAgICAgcG9zaXRpb24gaXMgZm91bmQsIHRoaXMgaXMgdGhlIHRhcmdldCBwb3NpdGlvbi4gT3RoZXJ3aXNlLFxuICAgICAgICAvLyAgICAgcHJvY2VlZCB0byB0aGUgbmV4dCBzdGVwLlxuICAgICAgICAvL1xuICAgICAgICAvLyAgICAgTm90ZTogaW4gb2xkLWltcGxlbWVudGF0aW9uIGZvbnRzLCB3aGVyZSBjbGFzc2lmaWNhdGlvbnMgd2VyZVxuICAgICAgICAvLyAgICAgZml4ZWQgaW4gc2hhcGluZyBlbmdpbmUsIHRoZXJlIHdhcyBubyBjYXNlIHdoZXJlIHJlcGggcG9zaXRpb25cbiAgICAgICAgLy8gICAgIHdpbGwgYmUgZm91bmQgb24gdGhpcyBzdGVwLlxuICAgICAgICBuZXdSZXBoUG9zID0gc3RhcnQgKyAxO1xuICAgICAgICB3aGlsZSAobmV3UmVwaFBvcyA8IGJhc2UgJiYgIWlzSGFsYW50T3JDb2VuZyhnbHlwaHNbbmV3UmVwaFBvc10pKSB7XG4gICAgICAgICAgbmV3UmVwaFBvcysrO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5ld1JlcGhQb3MgPCBiYXNlICYmIGlzSGFsYW50T3JDb2VuZyhnbHlwaHNbbmV3UmVwaFBvc10pKSB7XG4gICAgICAgICAgLy8gLT5JZiBaV0ogb3IgWldOSiBhcmUgZm9sbG93aW5nIHRoaXMgaGFsYW50LCBwb3NpdGlvbiBpcyBtb3ZlZCBhZnRlciBpdC5cbiAgICAgICAgICBpZiAobmV3UmVwaFBvcyArIDEgPCBiYXNlICYmIGlzSm9pbmVyKGdseXBoc1tuZXdSZXBoUG9zICsgMV0pKSB7XG4gICAgICAgICAgICBuZXdSZXBoUG9zKys7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZm91bmQgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gMy4gSWYgcmVwaCBzaG91bGQgYmUgcmVwb3NpdGlvbmVkIGFmdGVyIHRoZSBtYWluIGNvbnNvbmFudDogZmluZCB0aGVcbiAgICAgICAgLy8gICAgZmlyc3QgY29uc29uYW50IG5vdCBsaWdhdGVkIHdpdGggbWFpbiwgb3IgZmluZCB0aGUgZmlyc3RcbiAgICAgICAgLy8gICAgY29uc29uYW50IHRoYXQgaXMgbm90IGEgcG90ZW50aWFsIHByZS1iYXNlIHJlb3JkZXJpbmcgUmEuXG4gICAgICAgIGlmICghZm91bmQgJiYgcmVwaFBvcyA9PT0gUE9TSVRJT05TLkFmdGVyX01haW4pIHtcbiAgICAgICAgICBuZXdSZXBoUG9zID0gYmFzZTtcbiAgICAgICAgICB3aGlsZSAobmV3UmVwaFBvcyArIDEgPCBlbmQgJiYgZ2x5cGhzW25ld1JlcGhQb3MgKyAxXS5zaGFwZXJJbmZvLnBvc2l0aW9uIDw9IFBPU0lUSU9OUy5BZnRlcl9NYWluKSB7XG4gICAgICAgICAgICBuZXdSZXBoUG9zKys7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZm91bmQgPSBuZXdSZXBoUG9zIDwgZW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gNC4gSWYgcmVwaCBzaG91bGQgYmUgcG9zaXRpb25lZCBiZWZvcmUgcG9zdC1iYXNlIGNvbnNvbmFudCwgZmluZFxuICAgICAgICAvLyAgICBmaXJzdCBwb3N0LWJhc2UgY2xhc3NpZmllZCBjb25zb25hbnQgbm90IGxpZ2F0ZWQgd2l0aCBtYWluLiBJZiBub1xuICAgICAgICAvLyAgICBjb25zb25hbnQgaXMgZm91bmQsIHRoZSB0YXJnZXQgcG9zaXRpb24gc2hvdWxkIGJlIGJlZm9yZSB0aGVcbiAgICAgICAgLy8gICAgZmlyc3QgbWF0cmEsIHN5bGxhYmxlIG1vZGlmaWVyIHNpZ24gb3IgdmVkaWMgc2lnbi5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gVGhpcyBpcyBvdXIgdGFrZSBvbiB3aGF0IHN0ZXAgNCBpcyB0cnlpbmcgdG8gc2F5IChhbmQgZmFpbGluZywgQkFETFkpLlxuICAgICAgICBpZiAoIWZvdW5kICYmIHJlcGhQb3MgPT09IFBPU0lUSU9OUy5BZnRlcl9TdWIpIHtcbiAgICAgICAgICBuZXdSZXBoUG9zID0gYmFzZTtcbiAgICAgICAgICB3aGlsZSAobmV3UmVwaFBvcyArIDEgPCBlbmQgJiYgIShnbHlwaHNbbmV3UmVwaFBvcyArIDFdLnNoYXBlckluZm8ucG9zaXRpb24gJiAoUE9TSVRJT05TLlBvc3RfQyB8IFBPU0lUSU9OUy5BZnRlcl9Qb3N0IHwgUE9TSVRJT05TLlNNVkQpKSkge1xuICAgICAgICAgICAgbmV3UmVwaFBvcysrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZvdW5kID0gbmV3UmVwaFBvcyA8IGVuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyAgNS4gSWYgbm8gY29uc29uYW50IGlzIGZvdW5kIGluIHN0ZXBzIDMgb3IgNCwgbW92ZSByZXBoIHRvIGEgcG9zaXRpb25cbiAgICAgIC8vICAgICBpbW1lZGlhdGVseSBiZWZvcmUgdGhlIGZpcnN0IHBvc3QtYmFzZSBtYXRyYSwgc3lsbGFibGUgbW9kaWZpZXJcbiAgICAgIC8vICAgICBzaWduIG9yIHZlZGljIHNpZ24gdGhhdCBoYXMgYSByZW9yZGVyaW5nIGNsYXNzIGFmdGVyIHRoZSBpbnRlbmRlZFxuICAgICAgLy8gICAgIHJlcGggcG9zaXRpb24uIEZvciBleGFtcGxlLCBpZiB0aGUgcmVvcmRlcmluZyBwb3NpdGlvbiBmb3IgcmVwaFxuICAgICAgLy8gICAgIGlzIHBvc3QtbWFpbiwgaXQgd2lsbCBza2lwIGFib3ZlLWJhc2UgbWF0cmFzIHRoYXQgYWxzbyBoYXZlIGFcbiAgICAgIC8vICAgICBwb3N0LW1haW4gcG9zaXRpb24uXG4gICAgICBpZiAoIWZvdW5kKSB7XG4gICAgICAgIC8vIENvcGllZCBmcm9tIHN0ZXAgMi5cbiAgICAgICAgbmV3UmVwaFBvcyA9IHN0YXJ0ICsgMTtcbiAgICAgICAgd2hpbGUgKG5ld1JlcGhQb3MgPCBiYXNlICYmICFpc0hhbGFudE9yQ29lbmcoZ2x5cGhzW25ld1JlcGhQb3NdKSkge1xuICAgICAgICAgIG5ld1JlcGhQb3MrKztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuZXdSZXBoUG9zIDwgYmFzZSAmJiBpc0hhbGFudE9yQ29lbmcoZ2x5cGhzW25ld1JlcGhQb3NdKSkge1xuICAgICAgICAgIC8vIC0+SWYgWldKIG9yIFpXTkogYXJlIGZvbGxvd2luZyB0aGlzIGhhbGFudCwgcG9zaXRpb24gaXMgbW92ZWQgYWZ0ZXIgaXQuXG4gICAgICAgICAgaWYgKG5ld1JlcGhQb3MgKyAxIDwgYmFzZSAmJiBpc0pvaW5lcihnbHlwaHNbbmV3UmVwaFBvcyArIDFdKSkge1xuICAgICAgICAgICAgbmV3UmVwaFBvcysrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyA2LiBPdGhlcndpc2UsIHJlb3JkZXIgcmVwaCB0byB0aGUgZW5kIG9mIHRoZSBzeWxsYWJsZS5cbiAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgbmV3UmVwaFBvcyA9IGVuZCAtIDE7XG4gICAgICAgIHdoaWxlIChuZXdSZXBoUG9zID4gc3RhcnQgJiYgZ2x5cGhzW25ld1JlcGhQb3NdLnNoYXBlckluZm8ucG9zaXRpb24gPT09IFBPU0lUSU9OUy5TTVZEKSB7XG4gICAgICAgICAgbmV3UmVwaFBvcy0tO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgdGhlIFJlcGggaXMgdG8gYmUgZW5kaW5nIHVwIGFmdGVyIGEgTWF0cmEsSGFsYW50IHNlcXVlbmNlLFxuICAgICAgICAvLyBwb3NpdGlvbiBpdCBiZWZvcmUgdGhhdCBIYWxhbnQgc28gaXQgY2FuIGludGVyYWN0IHdpdGggdGhlIE1hdHJhLlxuICAgICAgICAvLyBIb3dldmVyLCBpZiBpdCdzIGEgcGxhaW4gQ29uc29uYW50LEhhbGFudCB3ZSBzaG91bGRuJ3QgZG8gdGhhdC5cbiAgICAgICAgLy8gVW5pc2NyaWJlIGRvZXNuJ3QgZG8gdGhpcy5cbiAgICAgICAgLy8gVEVTVDogVSswOTMwLFUrMDk0RCxVKzA5MTUsVSswOTRCLFUrMDk0RFxuICAgICAgICBpZiAoaXNIYWxhbnRPckNvZW5nKGdseXBoc1tuZXdSZXBoUG9zXSkpIHtcbiAgICAgICAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgPCBuZXdSZXBoUG9zOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChnbHlwaHNbaV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5NKSB7XG4gICAgICAgICAgICAgIG5ld1JlcGhQb3MtLTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGV0IHJlcGggPSBnbHlwaHNbc3RhcnRdO1xuICAgICAgZ2x5cGhzLnNwbGljZShzdGFydCwgMCwgLi4uZ2x5cGhzLnNwbGljZShzdGFydCArIDEsIG5ld1JlcGhQb3MgLSBzdGFydCkpO1xuICAgICAgZ2x5cGhzW25ld1JlcGhQb3NdID0gcmVwaDtcblxuICAgICAgaWYgKHN0YXJ0IDwgYmFzZSAmJiBiYXNlIDw9IG5ld1JlcGhQb3MpIHtcbiAgICAgICAgYmFzZS0tO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIG8gUmVvcmRlciBwcmUtYmFzZSByZW9yZGVyaW5nIGNvbnNvbmFudHM6XG4gICAgLy9cbiAgICAvLyBJZiBhIHByZS1iYXNlIHJlb3JkZXJpbmcgY29uc29uYW50IGlzIGZvdW5kLCByZW9yZGVyIGl0IGFjY29yZGluZyB0b1xuICAgIC8vIHRoZSBmb2xsb3dpbmcgcnVsZXM6XG4gICAgaWYgKHRyeVByZWYgJiYgYmFzZSArIDEgPCBlbmQpIHtcbiAgICAgIGZvciAobGV0IGkgPSBiYXNlICsgMTsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICAgIGlmIChnbHlwaHNbaV0uZmVhdHVyZXMucHJlZikge1xuICAgICAgICAgICAvLyAxLiBPbmx5IHJlb3JkZXIgYSBnbHlwaCBwcm9kdWNlZCBieSBzdWJzdGl0dXRpb24gZHVyaW5nIGFwcGxpY2F0aW9uXG4gICAgICAgICAgIC8vICAgIG9mIHRoZSA8cHJlZj4gZmVhdHVyZS4gKE5vdGUgdGhhdCBhIGZvbnQgbWF5IHNoYXBlIGEgUmEgY29uc29uYW50IHdpdGhcbiAgICAgICAgICAgLy8gICAgdGhlIGZlYXR1cmUgZ2VuZXJhbGx5IGJ1dCBibG9jayBpdCBpbiBjZXJ0YWluIGNvbnRleHRzLilcblxuICAgICAgICAgIC8vIE5vdGU6IFdlIGp1c3QgY2hlY2sgdGhhdCBzb21ldGhpbmcgZ290IHN1YnN0aXR1dGVkLiAgV2UgZG9uJ3QgY2hlY2sgdGhhdFxuICAgICAgICAgIC8vIHRoZSA8cHJlZj4gZmVhdHVyZSBhY3R1YWxseSBkaWQgaXQuLi5cbiAgICAgICAgICAvL1xuICAgICAgICAgIC8vIFJlb3JkZXIgcHJlZiBvbmx5IGlmIGl0IGxpZ2F0ZWQuXG4gICAgICAgICAgaWYgKGdseXBoc1tpXS5pc0xpZ2F0ZWQgJiYgIWdseXBoc1tpXS5pc011bHRpcGxpZWQpIHtcbiAgICAgICAgICAgIC8vIDIuIFRyeSB0byBmaW5kIGEgdGFyZ2V0IHBvc2l0aW9uIHRoZSBzYW1lIHdheSBhcyBmb3IgcHJlLWJhc2UgbWF0cmEuXG4gICAgICAgICAgICAvLyAgICBJZiBpdCBpcyBmb3VuZCwgcmVvcmRlciBwcmUtYmFzZSBjb25zb25hbnQgZ2x5cGguXG4gICAgICAgICAgICAvL1xuICAgICAgICAgICAgLy8gMy4gSWYgcG9zaXRpb24gaXMgbm90IGZvdW5kLCByZW9yZGVyIGltbWVkaWF0ZWx5IGJlZm9yZSBtYWluXG4gICAgICAgICAgICAvLyAgICBjb25zb25hbnQuXG4gICAgICAgICAgICBsZXQgbmV3UG9zID0gYmFzZTtcblxuICAgICAgICAgICAgLy8gTWFsYXlhbGFtIC8gVGFtaWwgZG8gbm90IGhhdmUgXCJoYWxmXCIgZm9ybXMgb3IgZXhwbGljaXQgdmlyYW1hIGZvcm1zLlxuICAgICAgICAgICAgLy8gVGhlIGdseXBocyBmb3JtZWQgYnkgJ2hhbGYnIGFyZSBDaGlsbHVzIG9yIGxpZ2F0ZWQgZXhwbGljaXQgdmlyYW1hcy5cbiAgICAgICAgICAgIC8vIFdlIHdhbnQgdG8gcG9zaXRpb24gbWF0cmEgYWZ0ZXIgdGhlbS5cbiAgICAgICAgICAgIGlmIChwbGFuLnVuaWNvZGVTY3JpcHQgIT09ICdNYWxheWFsYW0nICYmIHBsYW4udW5pY29kZVNjcmlwdCAhPT0gJ1RhbWlsJykge1xuICAgICAgICAgICAgICB3aGlsZSAobmV3UG9zID4gc3RhcnQgJiYgIShnbHlwaHNbbmV3UG9zIC0gMV0uc2hhcGVySW5mby5jYXRlZ29yeSAmIChDQVRFR09SSUVTLk0gfCBIQUxBTlRfT1JfQ09FTkdfRkxBR1MpKSkge1xuICAgICAgICAgICAgICAgIG5ld1Bvcy0tO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLy8gSW4gS2htZXIgY29lbmcgbW9kZWwsIGEgSCxSYSBjYW4gZ28gKmFmdGVyKiBtYXRyYXMuICBJZiBpdCBnb2VzIGFmdGVyIGFcbiAgICAgICAgICAgICAgLy8gc3BsaXQgbWF0cmEsIGl0IHNob3VsZCBiZSByZW9yZGVyZWQgdG8gKmJlZm9yZSogdGhlIGxlZnQgcGFydCBvZiBzdWNoIG1hdHJhLlxuICAgICAgICAgICAgICBpZiAobmV3UG9zID4gc3RhcnQgJiYgZ2x5cGhzW25ld1BvcyAtIDFdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuTSkge1xuICAgICAgICAgICAgICAgIGxldCBvbGRQb3MgPSBpO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGogPSBiYXNlICsgMTsgaiA8IG9sZFBvczsgaisrKSB7XG4gICAgICAgICAgICAgICAgICBpZiAoZ2x5cGhzW2pdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuTSkge1xuICAgICAgICAgICAgICAgICAgICBuZXdQb3MtLTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChuZXdQb3MgPiBzdGFydCAmJiBpc0hhbGFudE9yQ29lbmcoZ2x5cGhzW25ld1BvcyAtIDFdKSkge1xuICAgICAgICAgICAgICAvLyAtPiBJZiBaV0ogb3IgWldOSiBmb2xsb3cgdGhpcyBoYWxhbnQsIHBvc2l0aW9uIGlzIG1vdmVkIGFmdGVyIGl0LlxuICAgICAgICAgICAgICBpZiAobmV3UG9zIDwgZW5kICYmIGlzSm9pbmVyKGdseXBoc1tuZXdQb3NdKSkge1xuICAgICAgICAgICAgICAgIG5ld1BvcysrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxldCBvbGRQb3MgPSBpO1xuICAgICAgICAgICAgbGV0IHRtcCA9IGdseXBoc1tvbGRQb3NdO1xuICAgICAgICAgICAgZ2x5cGhzLnNwbGljZShuZXdQb3MgKyAxLCAwLCAuLi5nbHlwaHMuc3BsaWNlKG5ld1Bvcywgb2xkUG9zIC0gbmV3UG9zKSk7XG4gICAgICAgICAgICBnbHlwaHNbbmV3UG9zXSA9IHRtcDtcblxuICAgICAgICAgICAgaWYgKG5ld1BvcyA8PSBiYXNlICYmIGJhc2UgPCBvbGRQb3MpIHtcbiAgICAgICAgICAgICAgYmFzZSsrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQXBwbHkgJ2luaXQnIHRvIHRoZSBMZWZ0IE1hdHJhIGlmIGl0J3MgYSB3b3JkIHN0YXJ0LlxuICAgIGlmIChnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8ucG9zaXRpb24gPT09IFBPU0lUSU9OUy5QcmVfTSAmJiAoIXN0YXJ0IHx8ICEvQ2Z8TW4vLnRlc3QoZ2V0Q2F0ZWdvcnkoZ2x5cGhzW3N0YXJ0IC0gMV0uY29kZVBvaW50c1swXSkpKSkge1xuICAgICAgZ2x5cGhzW3N0YXJ0XS5mZWF0dXJlcy5pbml0ID0gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gbmV4dFN5bGxhYmxlKGdseXBocywgc3RhcnQpIHtcbiAgaWYgKHN0YXJ0ID49IGdseXBocy5sZW5ndGgpIHJldHVybiBzdGFydDtcbiAgbGV0IHN5bGxhYmxlID0gZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnN5bGxhYmxlO1xuICB3aGlsZSAoKytzdGFydCA8IGdseXBocy5sZW5ndGggJiYgZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnN5bGxhYmxlID09PSBzeWxsYWJsZSk7XG4gIHJldHVybiBzdGFydDtcbn1cbiIsICJ7XCJzdGF0ZVRhYmxlXCI6W1swLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwyLDMsNCw1LDYsNyw4LDksMCwxMCwxMSwxMSwxMiwxMywxNCwxNSwxNiwxN10sWzAsMCwwLDE4LDE5LDIwLDIxLDIyLDIzLDAsMjQsMCwwLDI1LDI2LDAsMCwyNywwXSxbMCwwLDAsMjgsMjksMzAsMzEsMzIsMzMsMCwzNCwwLDAsMzUsMzYsMCwwLDM3LDBdLFswLDAsMCwzOCw1LDcsNyw4LDksMCwxMCwwLDAsMCwxMywwLDAsMTYsMF0sWzAsMzksMCwwLDAsNDAsNDEsMCw5LDAsMTAsMCwwLDAsNDIsMCwzOSwwLDBdLFswLDAsMCwwLDQzLDQ0LDQ0LDgsOSwwLDAsMCwwLDEyLDQzLDAsMCwwLDBdLFswLDAsMCwwLDQzLDQ0LDQ0LDgsOSwwLDAsMCwwLDAsNDMsMCwwLDAsMF0sWzAsMCwwLDQ1LDQ2LDQ3LDQ4LDQ5LDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDUwLDAsMCw1MSwwLDEwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsNTIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNTMsNTQsNTUsNTYsNTcsNTgsMCw1OSwwLDAsNjAsNjEsMCwwLDYyLDBdLFswLDAsMCw0LDUsNyw3LDgsOSwwLDEwLDAsMCwwLDEzLDAsMCwxNiwwXSxbMCw2Myw2NCwwLDAsNDAsNDEsMCw5LDAsMTAsMCwwLDAsNDIsMCw2MywwLDBdLFswLDIsMyw0LDUsNiw3LDgsOSwwLDEwLDExLDExLDEyLDEzLDAsMiwxNiwwXSxbMCwwLDAsMTgsNjUsMjAsMjEsMjIsMjMsMCwyNCwwLDAsMjUsMjYsMCwwLDI3LDBdLFswLDAsMCwwLDY2LDY3LDY3LDgsOSwwLDEwLDAsMCwwLDY4LDAsMCwwLDBdLFswLDAsMCw2OSwwLDcwLDcwLDAsNzEsMCw3MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw3MywxOSw3NCw3NCwyMiwyMywwLDI0LDAsMCwwLDI2LDAsMCwyNywwXSxbMCw3NSwwLDAsMCw3Niw3NywwLDIzLDAsMjQsMCwwLDAsNzgsMCw3NSwwLDBdLFswLDAsMCwwLDc5LDgwLDgwLDIyLDIzLDAsMCwwLDAsMjUsNzksMCwwLDAsMF0sWzAsMCwwLDE4LDE5LDIwLDc0LDIyLDIzLDAsMjQsMCwwLDI1LDI2LDAsMCwyNywwXSxbMCwwLDAsODEsODIsODMsODQsODUsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDg2LDAsMCw4NywwLDI0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsODgsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMTgsMTksNzQsNzQsMjIsMjMsMCwyNCwwLDAsMCwyNiwwLDAsMjcsMF0sWzAsODksOTAsMCwwLDc2LDc3LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDg5LDAsMF0sWzAsMCwwLDAsOTEsOTIsOTIsMjIsMjMsMCwyNCwwLDAsMCw5MywwLDAsMCwwXSxbMCwwLDAsOTQsMjksOTUsMzEsMzIsMzMsMCwzNCwwLDAsMCwzNiwwLDAsMzcsMF0sWzAsOTYsMCwwLDAsOTcsOTgsMCwzMywwLDM0LDAsMCwwLDk5LDAsOTYsMCwwXSxbMCwwLDAsMCwxMDAsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDM1LDEwMCwwLDAsMCwwXSxbMCwwLDAsMCwxMDAsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDAsMTAwLDAsMCwwLDBdLFswLDAsMCwxMDIsMTAzLDEwNCwxMDUsMTA2LDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDAsMCwxMDcsMCwwLDEwOCwwLDM0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMTA5LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDI4LDI5LDk1LDMxLDMyLDMzLDAsMzQsMCwwLDAsMzYsMCwwLDM3LDBdLFswLDExMCwxMTEsMCwwLDk3LDk4LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDExMCwwLDBdLFswLDAsMCwwLDExMiwxMTMsMTEzLDMyLDMzLDAsMzQsMCwwLDAsMTE0LDAsMCwwLDBdLFswLDAsMCwwLDUsNyw3LDgsOSwwLDEwLDAsMCwwLDEzLDAsMCwxNiwwXSxbMCwwLDAsMTE1LDExNiwxMTcsMTE4LDgsOSwwLDEwLDAsMCwxMTksMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMzksMCwxMjIsMCwxMjMsMTIzLDgsOSwwLDEwLDAsMCwwLDQyLDAsMzksMCwwXSxbMCwxMjQsNjQsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwxMjQsMCwwXSxbMCwzOSwwLDAsMCwxMjEsMTI1LDAsOSwwLDEwLDAsMCwwLDQyLDAsMzksMCwwXSxbMCwwLDAsMCwwLDEyNiwxMjYsOCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDQ2LDQ3LDQ4LDQ5LDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDQ3LDQ3LDQ5LDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDEyNywxMjcsNDksOSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxMjgsMTI3LDEyNyw0OSw5LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwxMjksMTMwLDEzMSwxMzIsMTMzLDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwxMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNTAsMCwwLDAsMCwxMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDEzNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwxMzUsNTQsNTYsNTYsNTcsNTgsMCw1OSwwLDAsMCw2MSwwLDAsNjIsMF0sWzAsMTM2LDAsMCwwLDEzNywxMzgsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDEzNiwwLDBdLFswLDAsMCwwLDE0MCwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsNjAsMTQwLDAsMCwwLDBdLFswLDAsMCwwLDE0MCwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsMCwxNDAsMCwwLDAsMF0sWzAsMCwwLDE0MiwxNDMsMTQ0LDE0NSwxNDYsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDAsMCwxNDcsMCwwLDE0OCwwLDU5LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMTQ5LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDUzLDU0LDU2LDU2LDU3LDU4LDAsNTksMCwwLDAsNjEsMCwwLDYyLDBdLFswLDE1MCwxNTEsMCwwLDEzNywxMzgsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDE1MCwwLDBdLFswLDAsMCwwLDE1MiwxNTMsMTUzLDU3LDU4LDAsNTksMCwwLDAsMTU0LDAsMCwwLDBdLFswLDAsMCwxNTUsMTE2LDE1NiwxNTcsOCw5LDAsMTAsMCwwLDE1OCwxMjAsMCwwLDE2LDBdLFswLDAsMCwwLDAsMTIxLDEyMSwwLDksMCwxMCwwLDAsMCwwLDAsMCwwLDBdLFswLDc1LDMsNCw1LDE1OSwxNjAsOCwxNjEsMCwxNjIsMCwxMSwxMiwxNjMsMCw3NSwxNiwwXSxbMCwwLDAsMCwwLDQwLDE2NCwwLDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwxNjUsNDQsNDQsOCw5LDAsMCwwLDAsMCwxNjUsMCwwLDAsMF0sWzAsMTI0LDY0LDAsMCw0MCwxNjQsMCw5LDAsMTAsMCwwLDAsNDIsMCwxMjQsMCwwXSxbMCwwLDAsMCwwLDcwLDcwLDAsNzEsMCw3MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsNzEsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwxNjYsMCwwLDE2NywwLDcyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMTY4LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMTksNzQsNzQsMjIsMjMsMCwyNCwwLDAsMCwyNiwwLDAsMjcsMF0sWzAsMCwwLDAsNzksODAsODAsMjIsMjMsMCwwLDAsMCwwLDc5LDAsMCwwLDBdLFswLDAsMCwxNjksMTcwLDE3MSwxNzIsMjIsMjMsMCwyNCwwLDAsMTczLDE3NCwwLDAsMjcsMF0sWzAsMCwwLDAsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCw3NSwwLDE3NiwwLDE3NywxNzcsMjIsMjMsMCwyNCwwLDAsMCw3OCwwLDc1LDAsMF0sWzAsMTc4LDkwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMTc4LDAsMF0sWzAsNzUsMCwwLDAsMTc1LDE3OSwwLDIzLDAsMjQsMCwwLDAsNzgsMCw3NSwwLDBdLFswLDAsMCwwLDAsMTgwLDE4MCwyMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDgyLDgzLDg0LDg1LDIzLDAsMjQsMCwwLDAsNzgsMCwwLDAsMF0sWzAsMCwwLDAsMCw4Myw4Myw4NSwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDAsMTgxLDE4MSw4NSwyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxODIsMTgxLDE4MSw4NSwyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMTgzLDE4NCwxODUsMTg2LDE4NywyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDI0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw4NiwwLDAsMCwwLDI0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMTg4LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDE4OSwxNzAsMTkwLDE5MSwyMiwyMywwLDI0LDAsMCwxOTIsMTc0LDAsMCwyNywwXSxbMCwwLDAsMCwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw3NiwxOTMsMCwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDE5NCw4MCw4MCwyMiwyMywwLDAsMCwwLDAsMTk0LDAsMCwwLDBdLFswLDE3OCw5MCwwLDAsNzYsMTkzLDAsMjMsMCwyNCwwLDAsMCw3OCwwLDE3OCwwLDBdLFswLDAsMCwwLDI5LDk1LDMxLDMyLDMzLDAsMzQsMCwwLDAsMzYsMCwwLDM3LDBdLFswLDAsMCwwLDEwMCwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsMCwxMDAsMCwwLDAsMF0sWzAsMCwwLDE5NSwxOTYsMTk3LDE5OCwzMiwzMywwLDM0LDAsMCwxOTksMjAwLDAsMCwzNywwXSxbMCwwLDAsMCwwLDIwMSwyMDEsMCwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDk2LDAsMjAyLDAsMjAzLDIwMywzMiwzMywwLDM0LDAsMCwwLDk5LDAsOTYsMCwwXSxbMCwyMDQsMTExLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjA0LDAsMF0sWzAsOTYsMCwwLDAsMjAxLDIwNSwwLDMzLDAsMzQsMCwwLDAsOTksMCw5NiwwLDBdLFswLDAsMCwwLDAsMjA2LDIwNiwzMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDEwMywxMDQsMTA1LDEwNiwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsMTA0LDEwNCwxMDYsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwwLDIwNywyMDcsMTA2LDMzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDIwOCwyMDcsMjA3LDEwNiwzMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjA5LDIxMCwyMTEsMjEyLDIxMywzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDM0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwxMDcsMCwwLDAsMCwzNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDIxNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyMTUsMTk2LDIxNiwyMTcsMzIsMzMsMCwzNCwwLDAsMjE4LDIwMCwwLDAsMzcsMF0sWzAsMCwwLDAsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsOTcsMjE5LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwyMjAsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDAsMjIwLDAsMCwwLDBdLFswLDIwNCwxMTEsMCwwLDk3LDIxOSwwLDMzLDAsMzQsMCwwLDAsOTksMCwyMDQsMCwwXSxbMCwwLDAsMjIxLDExNiwyMjIsMjIyLDgsOSwwLDEwLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMjIzLDAsMCwwLDQwLDIyNCwwLDksMCwxMCwwLDAsMCw0MiwwLDIyMywwLDBdLFswLDAsMCwwLDIyNSw0NCw0NCw4LDksMCwwLDAsMCwxMTksMjI1LDAsMCwwLDBdLFswLDAsMCwxMTUsMTE2LDExNywyMjIsOCw5LDAsMTAsMCwwLDExOSwxMjAsMCwwLDE2LDBdLFswLDAsMCwxMTUsMTE2LDIyMiwyMjIsOCw5LDAsMTAsMCwwLDAsMTIwLDAsMCwxNiwwXSxbMCwyMjYsNjQsMCwwLDQwLDIyNCwwLDksMCwxMCwwLDAsMCw0MiwwLDIyNiwwLDBdLFswLDAsMCwwLDAsMCwwLDAsOSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwzOSwwLDAsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDQyLDAsMzksMCwwXSxbMCwwLDAsMCwwLDQ0LDQ0LDgsOSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjI3LDAsMjI4LDIyOSwwLDksMCwxMCwwLDAsMjMwLDAsMCwwLDAsMF0sWzAsMzksMCwxMjIsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDQyLDAsMzksMCwwXSxbMCwwLDAsMCwwLDAsMCw4LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyMzEsMjMxLDQ5LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDIzMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMTMwLDEzMSwxMzIsMTMzLDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDEzMSwxMzEsMTMzLDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDIzMywyMzMsMTMzLDksMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMjM0LDIzMywyMzMsMTMzLDksMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDIzNSwyMzYsMjM3LDIzOCwyMzksOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw1NCw1Niw1Niw1Nyw1OCwwLDU5LDAsMCwwLDYxLDAsMCw2MiwwXSxbMCwwLDAsMjQwLDI0MSwyNDIsMjQzLDU3LDU4LDAsNTksMCwwLDI0NCwyNDUsMCwwLDYyLDBdLFswLDAsMCwwLDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDEzNiwwLDI0NywwLDI0OCwyNDgsNTcsNTgsMCw1OSwwLDAsMCwxMzksMCwxMzYsMCwwXSxbMCwyNDksMTUxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjQ5LDAsMF0sWzAsMTM2LDAsMCwwLDI0NiwyNTAsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDEzNiwwLDBdLFswLDAsMCwwLDAsMjUxLDI1MSw1NywwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDE0MywxNDQsMTQ1LDE0Niw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwwLDE0NCwxNDQsMTQ2LDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMjUyLDI1MiwxNDYsNTgsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMjUzLDI1MiwyNTIsMTQ2LDU4LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyNTQsMjU1LDI1NiwyNTcsMjU4LDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDU5LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwxNDcsMCwwLDAsMCw1OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDI1OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyNjAsMjQxLDI2MSwyNjIsNTcsNTgsMCw1OSwwLDAsMjYzLDI0NSwwLDAsNjIsMF0sWzAsMCwwLDAsMCwyNDYsMjQ2LDAsNTgsMCw1OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMTM3LDI2NCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDI2NSwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsMCwyNjUsMCwwLDAsMF0sWzAsMjQ5LDE1MSwwLDAsMTM3LDI2NCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMjQ5LDAsMF0sWzAsMCwwLDIyMSwxMTYsMjIyLDIyMiw4LDksMCwxMCwwLDAsMCwxMjAsMCwwLDE2LDBdLFswLDAsMCwwLDIyNSw0NCw0NCw4LDksMCwwLDAsMCwxNTgsMjI1LDAsMCwwLDBdLFswLDAsMCwxNTUsMTE2LDE1NiwyMjIsOCw5LDAsMTAsMCwwLDE1OCwxMjAsMCwwLDE2LDBdLFswLDAsMCwxNTUsMTE2LDIyMiwyMjIsOCw5LDAsMTAsMCwwLDAsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCw0MywyNjYsMjY2LDgsMTYxLDAsMjQsMCwwLDEyLDI2NywwLDAsMCwwXSxbMCw3NSwwLDE3Niw0MywyNjgsMjY4LDI2OSwxNjEsMCwyNCwwLDAsMCwyNjcsMCw3NSwwLDBdLFswLDAsMCwwLDAsMjcwLDAsMCwyNzEsMCwxNjIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwyNzIsMCwwLDAsMCwwLDAsMCwwXSxbMCwyNzMsMjc0LDAsMCw0MCw0MSwwLDksMCwxMCwwLDAsMCw0MiwwLDI3MywwLDBdLFswLDAsMCw0MCwwLDEyMywxMjMsOCw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwxMjEsMjc1LDAsOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDcyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwxNjYsMCwwLDAsMCw3MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDI3NiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyNzcsMTcwLDI3OCwyNzgsMjIsMjMsMCwyNCwwLDAsMCwxNzQsMCwwLDI3LDBdLFswLDI3OSwwLDAsMCw3NiwyODAsMCwyMywwLDI0LDAsMCwwLDc4LDAsMjc5LDAsMF0sWzAsMCwwLDAsMjgxLDgwLDgwLDIyLDIzLDAsMCwwLDAsMTczLDI4MSwwLDAsMCwwXSxbMCwwLDAsMTY5LDE3MCwxNzEsMjc4LDIyLDIzLDAsMjQsMCwwLDE3MywxNzQsMCwwLDI3LDBdLFswLDAsMCwxNjksMTcwLDI3OCwyNzgsMjIsMjMsMCwyNCwwLDAsMCwxNzQsMCwwLDI3LDBdLFswLDI4Miw5MCwwLDAsNzYsMjgwLDAsMjMsMCwyNCwwLDAsMCw3OCwwLDI4MiwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsNzUsMCwwLDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsNzgsMCw3NSwwLDBdLFswLDAsMCwwLDAsODAsODAsMjIsMjMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDI4MywwLDI4NCwyODUsMCwyMywwLDI0LDAsMCwyODYsMCwwLDAsMCwwXSxbMCw3NSwwLDE3NiwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDc4LDAsNzUsMCwwXSxbMCwwLDAsMCwwLDAsMCwyMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjg3LDI4Nyw4NSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwyODgsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDE4NCwxODUsMTg2LDE4NywyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDAsMTg1LDE4NSwxODcsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI4OSwyODksMTg3LDIzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDI5MCwyODksMjg5LDE4NywyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjkxLDI5MiwyOTMsMjk0LDI5NSwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjc3LDE3MCwyNzgsMjc4LDIyLDIzLDAsMjQsMCwwLDAsMTc0LDAsMCwyNywwXSxbMCwwLDAsMCwyODEsODAsODAsMjIsMjMsMCwwLDAsMCwxOTIsMjgxLDAsMCwwLDBdLFswLDAsMCwxODksMTcwLDE5MCwyNzgsMjIsMjMsMCwyNCwwLDAsMTkyLDE3NCwwLDAsMjcsMF0sWzAsMCwwLDE4OSwxNzAsMjc4LDI3OCwyMiwyMywwLDI0LDAsMCwwLDE3NCwwLDAsMjcsMF0sWzAsMCwwLDc2LDAsMTc3LDE3NywyMiwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDAsMTc1LDI5NiwwLDIzLDAsMjQsMCwwLDAsNzgsMCwwLDAsMF0sWzAsMCwwLDI5NywxOTYsMjk4LDI5OCwzMiwzMywwLDM0LDAsMCwwLDIwMCwwLDAsMzcsMF0sWzAsMjk5LDAsMCwwLDk3LDMwMCwwLDMzLDAsMzQsMCwwLDAsOTksMCwyOTksMCwwXSxbMCwwLDAsMCwzMDEsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDE5OSwzMDEsMCwwLDAsMF0sWzAsMCwwLDE5NSwxOTYsMTk3LDI5OCwzMiwzMywwLDM0LDAsMCwxOTksMjAwLDAsMCwzNywwXSxbMCwwLDAsMTk1LDE5NiwyOTgsMjk4LDMyLDMzLDAsMzQsMCwwLDAsMjAwLDAsMCwzNywwXSxbMCwzMDIsMTExLDAsMCw5NywzMDAsMCwzMywwLDM0LDAsMCwwLDk5LDAsMzAyLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwzMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCw5NiwwLDAsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDk2LDAsMF0sWzAsMCwwLDAsMCwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzMDMsMCwzMDQsMzA1LDAsMzMsMCwzNCwwLDAsMzA2LDAsMCwwLDAsMF0sWzAsOTYsMCwyMDIsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDk2LDAsMF0sWzAsMCwwLDAsMCwwLDAsMzIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDMwNywzMDcsMTA2LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDMwOCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMjEwLDIxMSwyMTIsMjEzLDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDAsMCwyMTEsMjExLDIxMywzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsMzA5LDMwOSwyMTMsMzMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMzEwLDMwOSwzMDksMjEzLDMzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzMTEsMzEyLDMxMywzMTQsMzE1LDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyOTcsMTk2LDI5OCwyOTgsMzIsMzMsMCwzNCwwLDAsMCwyMDAsMCwwLDM3LDBdLFswLDAsMCwwLDMwMSwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsMjE4LDMwMSwwLDAsMCwwXSxbMCwwLDAsMjE1LDE5NiwyMTYsMjk4LDMyLDMzLDAsMzQsMCwwLDIxOCwyMDAsMCwwLDM3LDBdLFswLDAsMCwyMTUsMTk2LDI5OCwyOTgsMzIsMzMsMCwzNCwwLDAsMCwyMDAsMCwwLDM3LDBdLFswLDAsMCw5NywwLDIwMywyMDMsMzIsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwwLDIwMSwzMTYsMCwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDExNiwyMjIsMjIyLDgsOSwwLDEwLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMjI1LDQ0LDQ0LDgsOSwwLDAsMCwwLDAsMjI1LDAsMCwwLDBdLFswLDAsMCwzMTcsMzE4LDMxOSwzMjAsOCw5LDAsMTAsMCwwLDMyMSwzMjIsMCwwLDE2LDBdLFswLDIyMywwLDMyMywwLDEyMywxMjMsOCw5LDAsMTAsMCwwLDAsNDIsMCwyMjMsMCwwXSxbMCwyMjMsMCwwLDAsMTIxLDMyNCwwLDksMCwxMCwwLDAsMCw0MiwwLDIyMywwLDBdLFswLDAsMCwzMjUsMzE4LDMyNiwzMjcsOCw5LDAsMTAsMCwwLDMyOCwzMjIsMCwwLDE2LDBdLFswLDAsMCw2NCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDksMCwwLDAsMCwyMzAsMCwwLDAsMCwwXSxbMCwwLDAsMjI3LDAsMjI4LDEyMSwwLDksMCwxMCwwLDAsMjMwLDAsMCwwLDAsMF0sWzAsMCwwLDIyNywwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCw0OSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDQ2LDAsMF0sWzAsMCwwLDAsMCwzMjksMzI5LDEzMywwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwzMzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDIzNiwyMzcsMjM4LDIzOSw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwyMzcsMjM3LDIzOSw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwzMzEsMzMxLDIzOSw5LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDMzMiwzMzEsMzMxLDIzOSw5LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzMzMsNDAsMTIxLDMzNCwwLDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMzM1LDI0MSwzMzYsMzM2LDU3LDU4LDAsNTksMCwwLDAsMjQ1LDAsMCw2MiwwXSxbMCwzMzcsMCwwLDAsMTM3LDMzOCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMzM3LDAsMF0sWzAsMCwwLDAsMzM5LDE0MSwxNDEsNTcsNTgsMCwwLDAsMCwyNDQsMzM5LDAsMCwwLDBdLFswLDAsMCwyNDAsMjQxLDI0MiwzMzYsNTcsNTgsMCw1OSwwLDAsMjQ0LDI0NSwwLDAsNjIsMF0sWzAsMCwwLDI0MCwyNDEsMzM2LDMzNiw1Nyw1OCwwLDU5LDAsMCwwLDI0NSwwLDAsNjIsMF0sWzAsMzQwLDE1MSwwLDAsMTM3LDMzOCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMzQwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCw1OCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwxMzYsMCwwLDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMTM2LDAsMF0sWzAsMCwwLDAsMCwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzNDEsMCwzNDIsMzQzLDAsNTgsMCw1OSwwLDAsMzQ0LDAsMCwwLDAsMF0sWzAsMTM2LDAsMjQ3LDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMTM2LDAsMF0sWzAsMCwwLDAsMCwwLDAsNTcsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDM0NSwzNDUsMTQ2LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDM0NiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMjU1LDI1NiwyNTcsMjU4LDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMjU2LDI1NiwyNTgsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDAsMCwzNDcsMzQ3LDI1OCw1OCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwzNDgsMzQ3LDM0NywyNTgsNTgsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDM0OSwzNTAsMzUxLDM1MiwzNTMsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzMzUsMjQxLDMzNiwzMzYsNTcsNTgsMCw1OSwwLDAsMCwyNDUsMCwwLDYyLDBdLFswLDAsMCwwLDMzOSwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsMjYzLDMzOSwwLDAsMCwwXSxbMCwwLDAsMjYwLDI0MSwyNjEsMzM2LDU3LDU4LDAsNTksMCwwLDI2MywyNDUsMCwwLDYyLDBdLFswLDAsMCwyNjAsMjQxLDMzNiwzMzYsNTcsNTgsMCw1OSwwLDAsMCwyNDUsMCwwLDYyLDBdLFswLDAsMCwxMzcsMCwyNDgsMjQ4LDU3LDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMjQ2LDM1NCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMTI2LDEyNiw4LDIzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDM1NSw5MCwwLDAsMTIxLDEyNSwwLDksMCwxMCwwLDAsMCw0MiwwLDM1NSwwLDBdLFswLDAsMCwwLDAsMzU2LDM1NiwyNjksMjMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDM1NywzNTgsMzU5LDM2MCwzNjEsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwxNjIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI3MCwwLDAsMCwwLDE2MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDM2MywwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzNjQsMTE2LDM2NSwzNjYsOCwxNjEsMCwxNjIsMCwwLDM2NywxMjAsMCwwLDE2LDBdLFswLDAsMCwwLDAsMzY4LDM2OCwwLDE2MSwwLDE2MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw0MCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDE3MCwyNzgsMjc4LDIyLDIzLDAsMjQsMCwwLDAsMTc0LDAsMCwyNywwXSxbMCwwLDAsMCwyODEsODAsODAsMjIsMjMsMCwwLDAsMCwwLDI4MSwwLDAsMCwwXSxbMCwwLDAsMzY5LDM3MCwzNzEsMzcyLDIyLDIzLDAsMjQsMCwwLDM3MywzNzQsMCwwLDI3LDBdLFswLDI3OSwwLDM3NSwwLDE3NywxNzcsMjIsMjMsMCwyNCwwLDAsMCw3OCwwLDI3OSwwLDBdLFswLDI3OSwwLDAsMCwxNzUsMzc2LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDI3OSwwLDBdLFswLDAsMCwzNzcsMzcwLDM3OCwzNzksMjIsMjMsMCwyNCwwLDAsMzgwLDM3NCwwLDAsMjcsMF0sWzAsMCwwLDkwLDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDIzLDAsMCwwLDAsMjg2LDAsMCwwLDAsMF0sWzAsMCwwLDI4MywwLDI4NCwxNzUsMCwyMywwLDI0LDAsMCwyODYsMCwwLDAsMCwwXSxbMCwwLDAsMjgzLDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCw4NSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDgyLDAsMF0sWzAsMCwwLDAsMCwzODEsMzgxLDE4NywwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwzODIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDI5MiwyOTMsMjk0LDI5NSwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDAsMjkzLDI5MywyOTUsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDM4MywzODMsMjk1LDIzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDM4NCwzODMsMzgzLDI5NSwyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMzg1LDc2LDE3NSwzODYsMCwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCw3NiwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDE5NiwyOTgsMjk4LDMyLDMzLDAsMzQsMCwwLDAsMjAwLDAsMCwzNywwXSxbMCwwLDAsMCwzMDEsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDAsMzAxLDAsMCwwLDBdLFswLDAsMCwzODcsMzg4LDM4OSwzOTAsMzIsMzMsMCwzNCwwLDAsMzkxLDM5MiwwLDAsMzcsMF0sWzAsMjk5LDAsMzkzLDAsMjAzLDIwMywzMiwzMywwLDM0LDAsMCwwLDk5LDAsMjk5LDAsMF0sWzAsMjk5LDAsMCwwLDIwMSwzOTQsMCwzMywwLDM0LDAsMCwwLDk5LDAsMjk5LDAsMF0sWzAsMCwwLDM5NSwzODgsMzk2LDM5NywzMiwzMywwLDM0LDAsMCwzOTgsMzkyLDAsMCwzNywwXSxbMCwwLDAsMTExLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDMzLDAsMCwwLDAsMzA2LDAsMCwwLDAsMF0sWzAsMCwwLDMwMywwLDMwNCwyMDEsMCwzMywwLDM0LDAsMCwzMDYsMCwwLDAsMCwwXSxbMCwwLDAsMzAzLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwxMDYsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwxMDMsMCwwXSxbMCwwLDAsMCwwLDM5OSwzOTksMjEzLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDQwMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMzEyLDMxMywzMTQsMzE1LDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDAsMCwzMTMsMzEzLDMxNSwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsNDAxLDQwMSwzMTUsMzMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsNDAyLDQwMSw0MDEsMzE1LDMzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw0MDMsOTcsMjAxLDQwNCwwLDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDk3LDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDQwNSwzMTgsNDA2LDQwNiw4LDksMCwxMCwwLDAsMCwzMjIsMCwwLDE2LDBdLFswLDQwNywwLDAsMCw0MCw0MDgsMCw5LDAsMTAsMCwwLDAsNDIsMCw0MDcsMCwwXSxbMCwwLDAsMCw0MDksNDQsNDQsOCw5LDAsMCwwLDAsMzIxLDQwOSwwLDAsMCwwXSxbMCwwLDAsMzE3LDMxOCwzMTksNDA2LDgsOSwwLDEwLDAsMCwzMjEsMzIyLDAsMCwxNiwwXSxbMCwwLDAsMzE3LDMxOCw0MDYsNDA2LDgsOSwwLDEwLDAsMCwwLDMyMiwwLDAsMTYsMF0sWzAsNDEwLDY0LDAsMCw0MCw0MDgsMCw5LDAsMTAsMCwwLDAsNDIsMCw0MTAsMCwwXSxbMCwyMjMsMCwwLDAsMTIxLDEyMSwwLDksMCwxMCwwLDAsMCw0MiwwLDIyMywwLDBdLFswLDIyMywwLDMyMywwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCwyMjMsMCwwXSxbMCwwLDAsNDA1LDMxOCw0MDYsNDA2LDgsOSwwLDEwLDAsMCwwLDMyMiwwLDAsMTYsMF0sWzAsMCwwLDAsNDA5LDQ0LDQ0LDgsOSwwLDAsMCwwLDMyOCw0MDksMCwwLDAsMF0sWzAsMCwwLDMyNSwzMTgsMzI2LDQwNiw4LDksMCwxMCwwLDAsMzI4LDMyMiwwLDAsMTYsMF0sWzAsMCwwLDMyNSwzMTgsNDA2LDQwNiw4LDksMCwxMCwwLDAsMCwzMjIsMCwwLDE2LDBdLFswLDAsMCwwLDAsMCwwLDEzMywwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDEzMCwwLDBdLFswLDAsMCwwLDAsNDExLDQxMSwyMzksMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsNDEyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0MCwxMjEsMzM0LDAsOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDAsMCwwLDQxMywwLDAsMCw5LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDI0MSwzMzYsMzM2LDU3LDU4LDAsNTksMCwwLDAsMjQ1LDAsMCw2MiwwXSxbMCwwLDAsMCwzMzksMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDAsMzM5LDAsMCwwLDBdLFswLDAsMCw0MTQsNDE1LDQxNiw0MTcsNTcsNTgsMCw1OSwwLDAsNDE4LDQxOSwwLDAsNjIsMF0sWzAsMzM3LDAsNDIwLDAsMjQ4LDI0OCw1Nyw1OCwwLDU5LDAsMCwwLDEzOSwwLDMzNywwLDBdLFswLDMzNywwLDAsMCwyNDYsNDIxLDAsNTgsMCw1OSwwLDAsMCwxMzksMCwzMzcsMCwwXSxbMCwwLDAsNDIyLDQxNSw0MjMsNDI0LDU3LDU4LDAsNTksMCwwLDQyNSw0MTksMCwwLDYyLDBdLFswLDAsMCwxNTEsMCwyNDYsMjQ2LDAsNTgsMCw1OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsNTgsMCwwLDAsMCwzNDQsMCwwLDAsMCwwXSxbMCwwLDAsMzQxLDAsMzQyLDI0NiwwLDU4LDAsNTksMCwwLDM0NCwwLDAsMCwwLDBdLFswLDAsMCwzNDEsMCwyNDYsMjQ2LDAsNTgsMCw1OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDE0NiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDE0MywwLDBdLFswLDAsMCwwLDAsNDI2LDQyNiwyNTgsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsNDI3LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwzNTAsMzUxLDM1MiwzNTMsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDAsMCwzNTEsMzUxLDM1Myw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwwLDQyOCw0MjgsMzUzLDU4LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDQyOSw0MjgsNDI4LDM1Myw1OCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDMwLDEzNywyNDYsNDMxLDAsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDEzNywwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsNDMyLDExNiw0MzMsNDM0LDgsMTYxLDAsMTYyLDAsMCw0MzUsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCwwLDE4MCwxODAsMjY5LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMzU4LDM1OSwzNjAsMzYxLDE2MSwwLDE2MiwwLDAsMCwzNjIsMCwwLDAsMF0sWzAsMCwwLDAsMCwzNTksMzU5LDM2MSwxNjEsMCwxNjIsMCwwLDAsMzYyLDAsMCwwLDBdLFswLDAsMCwwLDAsNDM2LDQzNiwzNjEsMTYxLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDQzNyw0MzYsNDM2LDM2MSwxNjEsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDQzOCw0MzksNDQwLDQ0MSw0NDIsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCw0NDMsMjc0LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNDQzLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw0NDQsMTE2LDQ0NSw0NDUsOCwxNjEsMCwxNjIsMCwwLDAsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCwyMjUsNDQsNDQsOCwxNjEsMCwwLDAsMCwzNjcsMjI1LDAsMCwwLDBdLFswLDAsMCwzNjQsMTE2LDM2NSw0NDUsOCwxNjEsMCwxNjIsMCwwLDM2NywxMjAsMCwwLDE2LDBdLFswLDAsMCwzNjQsMTE2LDQ0NSw0NDUsOCwxNjEsMCwxNjIsMCwwLDAsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCwwLDAsMCwwLDE2MSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDQ2LDM3MCw0NDcsNDQ3LDIyLDIzLDAsMjQsMCwwLDAsMzc0LDAsMCwyNywwXSxbMCw0NDgsMCwwLDAsNzYsNDQ5LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDQ0OCwwLDBdLFswLDAsMCwwLDQ1MCw4MCw4MCwyMiwyMywwLDAsMCwwLDM3Myw0NTAsMCwwLDAsMF0sWzAsMCwwLDM2OSwzNzAsMzcxLDQ0NywyMiwyMywwLDI0LDAsMCwzNzMsMzc0LDAsMCwyNywwXSxbMCwwLDAsMzY5LDM3MCw0NDcsNDQ3LDIyLDIzLDAsMjQsMCwwLDAsMzc0LDAsMCwyNywwXSxbMCw0NTEsOTAsMCwwLDc2LDQ0OSwwLDIzLDAsMjQsMCwwLDAsNzgsMCw0NTEsMCwwXSxbMCwyNzksMCwwLDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsNzgsMCwyNzksMCwwXSxbMCwyNzksMCwzNzUsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDI3OSwwLDBdLFswLDAsMCw0NDYsMzcwLDQ0Nyw0NDcsMjIsMjMsMCwyNCwwLDAsMCwzNzQsMCwwLDI3LDBdLFswLDAsMCwwLDQ1MCw4MCw4MCwyMiwyMywwLDAsMCwwLDM4MCw0NTAsMCwwLDAsMF0sWzAsMCwwLDM3NywzNzAsMzc4LDQ0NywyMiwyMywwLDI0LDAsMCwzODAsMzc0LDAsMCwyNywwXSxbMCwwLDAsMzc3LDM3MCw0NDcsNDQ3LDIyLDIzLDAsMjQsMCwwLDAsMzc0LDAsMCwyNywwXSxbMCwwLDAsMCwwLDAsMCwxODcsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwxODQsMCwwXSxbMCwwLDAsMCwwLDQ1Miw0NTIsMjk1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDQ1MywwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsNzYsMTc1LDM4NiwwLDIzLDAsMjQsMCwwLDAsNzgsMCwwLDAsMF0sWzAsMCwwLDAsNDU0LDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw0NTUsMzg4LDQ1Niw0NTYsMzIsMzMsMCwzNCwwLDAsMCwzOTIsMCwwLDM3LDBdLFswLDQ1NywwLDAsMCw5Nyw0NTgsMCwzMywwLDM0LDAsMCwwLDk5LDAsNDU3LDAsMF0sWzAsMCwwLDAsNDU5LDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwzOTEsNDU5LDAsMCwwLDBdLFswLDAsMCwzODcsMzg4LDM4OSw0NTYsMzIsMzMsMCwzNCwwLDAsMzkxLDM5MiwwLDAsMzcsMF0sWzAsMCwwLDM4NywzODgsNDU2LDQ1NiwzMiwzMywwLDM0LDAsMCwwLDM5MiwwLDAsMzcsMF0sWzAsNDYwLDExMSwwLDAsOTcsNDU4LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDQ2MCwwLDBdLFswLDI5OSwwLDAsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDI5OSwwLDBdLFswLDI5OSwwLDM5MywwLDIwMSwyMDEsMCwzMywwLDM0LDAsMCwwLDk5LDAsMjk5LDAsMF0sWzAsMCwwLDQ1NSwzODgsNDU2LDQ1NiwzMiwzMywwLDM0LDAsMCwwLDM5MiwwLDAsMzcsMF0sWzAsMCwwLDAsNDU5LDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwzOTgsNDU5LDAsMCwwLDBdLFswLDAsMCwzOTUsMzg4LDM5Niw0NTYsMzIsMzMsMCwzNCwwLDAsMzk4LDM5MiwwLDAsMzcsMF0sWzAsMCwwLDM5NSwzODgsNDU2LDQ1NiwzMiwzMywwLDM0LDAsMCwwLDM5MiwwLDAsMzcsMF0sWzAsMCwwLDAsMCwwLDAsMjEzLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjEwLDAsMF0sWzAsMCwwLDAsMCw0NjEsNDYxLDMxNSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCw0NjIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDk3LDIwMSw0MDQsMCwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDQ2MywwLDAsMCwzMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwzMTgsNDA2LDQwNiw4LDksMCwxMCwwLDAsMCwzMjIsMCwwLDE2LDBdLFswLDAsMCwwLDQwOSw0NCw0NCw4LDksMCwwLDAsMCwwLDQwOSwwLDAsMCwwXSxbMCwwLDAsNDY0LDQ2NSw0NjYsNDY3LDgsOSwwLDEwLDAsMCw0NjgsNDY5LDAsMCwxNiwwXSxbMCw0MDcsMCw0NzAsMCwxMjMsMTIzLDgsOSwwLDEwLDAsMCwwLDQyLDAsNDA3LDAsMF0sWzAsNDA3LDAsMCwwLDEyMSw0NzEsMCw5LDAsMTAsMCwwLDAsNDIsMCw0MDcsMCwwXSxbMCwwLDAsNDcyLDQ2NSw0NzMsNDc0LDgsOSwwLDEwLDAsMCw0NzUsNDY5LDAsMCwxNiwwXSxbMCwwLDAsMCwwLDAsMCwyMzksMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyMzYsMCwwXSxbMCwwLDAsMCwwLDAsNDc2LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDc3LDQxNSw0NzgsNDc4LDU3LDU4LDAsNTksMCwwLDAsNDE5LDAsMCw2MiwwXSxbMCw0NzksMCwwLDAsMTM3LDQ4MCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNDc5LDAsMF0sWzAsMCwwLDAsNDgxLDE0MSwxNDEsNTcsNTgsMCwwLDAsMCw0MTgsNDgxLDAsMCwwLDBdLFswLDAsMCw0MTQsNDE1LDQxNiw0NzgsNTcsNTgsMCw1OSwwLDAsNDE4LDQxOSwwLDAsNjIsMF0sWzAsMCwwLDQxNCw0MTUsNDc4LDQ3OCw1Nyw1OCwwLDU5LDAsMCwwLDQxOSwwLDAsNjIsMF0sWzAsNDgyLDE1MSwwLDAsMTM3LDQ4MCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNDgyLDAsMF0sWzAsMzM3LDAsMCwwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDMzNywwLDBdLFswLDMzNywwLDQyMCwwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDMzNywwLDBdLFswLDAsMCw0NzcsNDE1LDQ3OCw0NzgsNTcsNTgsMCw1OSwwLDAsMCw0MTksMCwwLDYyLDBdLFswLDAsMCwwLDQ4MSwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsNDI1LDQ4MSwwLDAsMCwwXSxbMCwwLDAsNDIyLDQxNSw0MjMsNDc4LDU3LDU4LDAsNTksMCwwLDQyNSw0MTksMCwwLDYyLDBdLFswLDAsMCw0MjIsNDE1LDQ3OCw0NzgsNTcsNTgsMCw1OSwwLDAsMCw0MTksMCwwLDYyLDBdLFswLDAsMCwwLDAsMCwwLDI1OCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDI1NSwwLDBdLFswLDAsMCwwLDAsNDgzLDQ4MywzNTMsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsNDg0LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxMzcsMjQ2LDQzMSwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDQ4NSwwLDAsMCw1OCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDQ0LDExNiw0NDUsNDQ1LDgsMTYxLDAsMTYyLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMjI1LDQ0LDQ0LDgsMTYxLDAsMCwwLDAsNDM1LDIyNSwwLDAsMCwwXSxbMCwwLDAsNDMyLDExNiw0MzMsNDQ1LDgsMTYxLDAsMTYyLDAsMCw0MzUsMTIwLDAsMCwxNiwwXSxbMCwwLDAsNDMyLDExNiw0NDUsNDQ1LDgsMTYxLDAsMTYyLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMCw0ODYsNDg2LDM2MSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCw0ODcsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDQzOSw0NDAsNDQxLDQ0MiwxNjEsMCwxNjIsMCwwLDAsMzYyLDAsMCwwLDBdLFswLDAsMCwwLDAsNDQwLDQ0MCw0NDIsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDQ4OCw0ODgsNDQyLDE2MSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0ODksNDg4LDQ4OCw0NDIsMTYxLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw0OTAsNDkxLDQ5Miw0OTMsNDk0LDE2MSwwLDE2MiwwLDAsMCwzNjIsMCwwLDAsMF0sWzAsMCwwLDQ5NSwwLDQ5Niw0OTcsMCwxNjEsMCwxNjIsMCwwLDQ5OCwwLDAsMCwwLDBdLFswLDAsMCwwLDExNiw0NDUsNDQ1LDgsMTYxLDAsMTYyLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMjI1LDQ0LDQ0LDgsMTYxLDAsMCwwLDAsMCwyMjUsMCwwLDAsMF0sWzAsMCwwLDAsMzcwLDQ0Nyw0NDcsMjIsMjMsMCwyNCwwLDAsMCwzNzQsMCwwLDI3LDBdLFswLDAsMCwwLDQ1MCw4MCw4MCwyMiwyMywwLDAsMCwwLDAsNDUwLDAsMCwwLDBdLFswLDAsMCw0OTksNTAwLDUwMSw1MDIsMjIsMjMsMCwyNCwwLDAsNTAzLDUwNCwwLDAsMjcsMF0sWzAsNDQ4LDAsNTA1LDAsMTc3LDE3NywyMiwyMywwLDI0LDAsMCwwLDc4LDAsNDQ4LDAsMF0sWzAsNDQ4LDAsMCwwLDE3NSw1MDYsMCwyMywwLDI0LDAsMCwwLDc4LDAsNDQ4LDAsMF0sWzAsMCwwLDUwNyw1MDAsNTA4LDUwOSwyMiwyMywwLDI0LDAsMCw1MTAsNTA0LDAsMCwyNywwXSxbMCwwLDAsMCwwLDAsMCwyOTUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyOTIsMCwwXSxbMCwwLDAsMCwwLDAsNTExLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwzODgsNDU2LDQ1NiwzMiwzMywwLDM0LDAsMCwwLDM5MiwwLDAsMzcsMF0sWzAsMCwwLDAsNDU5LDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwwLDQ1OSwwLDAsMCwwXSxbMCwwLDAsNTEyLDUxMyw1MTQsNTE1LDMyLDMzLDAsMzQsMCwwLDUxNiw1MTcsMCwwLDM3LDBdLFswLDQ1NywwLDUxOCwwLDIwMywyMDMsMzIsMzMsMCwzNCwwLDAsMCw5OSwwLDQ1NywwLDBdLFswLDQ1NywwLDAsMCwyMDEsNTE5LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDQ1NywwLDBdLFswLDAsMCw1MjAsNTEzLDUyMSw1MjIsMzIsMzMsMCwzNCwwLDAsNTIzLDUxNywwLDAsMzcsMF0sWzAsMCwwLDAsMCwwLDAsMzE1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMzEyLDAsMF0sWzAsMCwwLDAsMCwwLDUyNCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDUyNSw0NjUsNTI2LDUyNiw4LDksMCwxMCwwLDAsMCw0NjksMCwwLDE2LDBdLFswLDUyNywwLDAsMCw0MCw1MjgsMCw5LDAsMTAsMCwwLDAsNDIsMCw1MjcsMCwwXSxbMCwwLDAsMCw1MjksNDQsNDQsOCw5LDAsMCwwLDAsNDY4LDUyOSwwLDAsMCwwXSxbMCwwLDAsNDY0LDQ2NSw0NjYsNTI2LDgsOSwwLDEwLDAsMCw0NjgsNDY5LDAsMCwxNiwwXSxbMCwwLDAsNDY0LDQ2NSw1MjYsNTI2LDgsOSwwLDEwLDAsMCwwLDQ2OSwwLDAsMTYsMF0sWzAsNTMwLDY0LDAsMCw0MCw1MjgsMCw5LDAsMTAsMCwwLDAsNDIsMCw1MzAsMCwwXSxbMCw0MDcsMCwwLDAsMTIxLDEyMSwwLDksMCwxMCwwLDAsMCw0MiwwLDQwNywwLDBdLFswLDQwNywwLDQ3MCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCw0MDcsMCwwXSxbMCwwLDAsNTI1LDQ2NSw1MjYsNTI2LDgsOSwwLDEwLDAsMCwwLDQ2OSwwLDAsMTYsMF0sWzAsMCwwLDAsNTI5LDQ0LDQ0LDgsOSwwLDAsMCwwLDQ3NSw1MjksMCwwLDAsMF0sWzAsMCwwLDQ3Miw0NjUsNDczLDUyNiw4LDksMCwxMCwwLDAsNDc1LDQ2OSwwLDAsMTYsMF0sWzAsMCwwLDQ3Miw0NjUsNTI2LDUyNiw4LDksMCwxMCwwLDAsMCw0NjksMCwwLDE2LDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDQwLDAsMF0sWzAsMCwwLDAsNDE1LDQ3OCw0NzgsNTcsNTgsMCw1OSwwLDAsMCw0MTksMCwwLDYyLDBdLFswLDAsMCwwLDQ4MSwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsMCw0ODEsMCwwLDAsMF0sWzAsMCwwLDUzMSw1MzIsNTMzLDUzNCw1Nyw1OCwwLDU5LDAsMCw1MzUsNTM2LDAsMCw2MiwwXSxbMCw0NzksMCw1MzcsMCwyNDgsMjQ4LDU3LDU4LDAsNTksMCwwLDAsMTM5LDAsNDc5LDAsMF0sWzAsNDc5LDAsMCwwLDI0Niw1MzgsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDQ3OSwwLDBdLFswLDAsMCw1MzksNTMyLDU0MCw1NDEsNTcsNTgsMCw1OSwwLDAsNTQyLDUzNiwwLDAsNjIsMF0sWzAsMCwwLDAsMCwwLDAsMzUzLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMzUwLDAsMF0sWzAsMCwwLDAsMCwwLDU0MywwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMzYxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMzU4LDAsMF0sWzAsMCwwLDAsMCw1NDQsNTQ0LDQ0MiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCw1NDUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDQ5MSw0OTIsNDkzLDQ5NCwxNjEsMCwxNjIsMCwwLDAsMzYyLDAsMCwwLDBdLFswLDAsMCwwLDAsNDkyLDQ5Miw0OTQsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDU0Niw1NDYsNDk0LDE2MSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw1NDcsNTQ2LDU0Niw0OTQsMTYxLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw1NDgsNTQ5LDM2OCw1NTAsMCwxNjEsMCwxNjIsMCwwLDAsMzYyLDAsMCwwLDBdLFswLDAsMCwyNzQsMCwzNjgsMzY4LDAsMTYxLDAsMTYyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwxNjEsMCwwLDAsMCw0OTgsMCwwLDAsMCwwXSxbMCwwLDAsNDk1LDAsNDk2LDM2OCwwLDE2MSwwLDE2MiwwLDAsNDk4LDAsMCwwLDAsMF0sWzAsMCwwLDQ5NSwwLDM2OCwzNjgsMCwxNjEsMCwxNjIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNTUxLDUwMCw1NTIsNTUyLDIyLDIzLDAsMjQsMCwwLDAsNTA0LDAsMCwyNywwXSxbMCw1NTMsMCwwLDAsNzYsNTU0LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDU1MywwLDBdLFswLDAsMCwwLDU1NSw4MCw4MCwyMiwyMywwLDAsMCwwLDUwMyw1NTUsMCwwLDAsMF0sWzAsMCwwLDQ5OSw1MDAsNTAxLDU1MiwyMiwyMywwLDI0LDAsMCw1MDMsNTA0LDAsMCwyNywwXSxbMCwwLDAsNDk5LDUwMCw1NTIsNTUyLDIyLDIzLDAsMjQsMCwwLDAsNTA0LDAsMCwyNywwXSxbMCw1NTYsOTAsMCwwLDc2LDU1NCwwLDIzLDAsMjQsMCwwLDAsNzgsMCw1NTYsMCwwXSxbMCw0NDgsMCwwLDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsNzgsMCw0NDgsMCwwXSxbMCw0NDgsMCw1MDUsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDQ0OCwwLDBdLFswLDAsMCw1NTEsNTAwLDU1Miw1NTIsMjIsMjMsMCwyNCwwLDAsMCw1MDQsMCwwLDI3LDBdLFswLDAsMCwwLDU1NSw4MCw4MCwyMiwyMywwLDAsMCwwLDUxMCw1NTUsMCwwLDAsMF0sWzAsMCwwLDUwNyw1MDAsNTA4LDU1MiwyMiwyMywwLDI0LDAsMCw1MTAsNTA0LDAsMCwyNywwXSxbMCwwLDAsNTA3LDUwMCw1NTIsNTUyLDIyLDIzLDAsMjQsMCwwLDAsNTA0LDAsMCwyNywwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw3NiwwLDBdLFswLDAsMCw1NTcsNTEzLDU1OCw1NTgsMzIsMzMsMCwzNCwwLDAsMCw1MTcsMCwwLDM3LDBdLFswLDU1OSwwLDAsMCw5Nyw1NjAsMCwzMywwLDM0LDAsMCwwLDk5LDAsNTU5LDAsMF0sWzAsMCwwLDAsNTYxLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCw1MTYsNTYxLDAsMCwwLDBdLFswLDAsMCw1MTIsNTEzLDUxNCw1NTgsMzIsMzMsMCwzNCwwLDAsNTE2LDUxNywwLDAsMzcsMF0sWzAsMCwwLDUxMiw1MTMsNTU4LDU1OCwzMiwzMywwLDM0LDAsMCwwLDUxNywwLDAsMzcsMF0sWzAsNTYyLDExMSwwLDAsOTcsNTYwLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDU2MiwwLDBdLFswLDQ1NywwLDAsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDQ1NywwLDBdLFswLDQ1NywwLDUxOCwwLDIwMSwyMDEsMCwzMywwLDM0LDAsMCwwLDk5LDAsNDU3LDAsMF0sWzAsMCwwLDU1Nyw1MTMsNTU4LDU1OCwzMiwzMywwLDM0LDAsMCwwLDUxNywwLDAsMzcsMF0sWzAsMCwwLDAsNTYxLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCw1MjMsNTYxLDAsMCwwLDBdLFswLDAsMCw1MjAsNTEzLDUyMSw1NTgsMzIsMzMsMCwzNCwwLDAsNTIzLDUxNywwLDAsMzcsMF0sWzAsMCwwLDUyMCw1MTMsNTU4LDU1OCwzMiwzMywwLDM0LDAsMCwwLDUxNywwLDAsMzcsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsOTcsMCwwXSxbMCwwLDAsMCw0NjUsNTI2LDUyNiw4LDksMCwxMCwwLDAsMCw0NjksMCwwLDE2LDBdLFswLDAsMCwwLDUyOSw0NCw0NCw4LDksMCwwLDAsMCwwLDUyOSwwLDAsMCwwXSxbMCwwLDAsNTYzLDY2LDU2NCw1NjUsOCw5LDAsMTAsMCwwLDU2Niw2OCwwLDAsMTYsMF0sWzAsNTI3LDAsNTY3LDAsMTIzLDEyMyw4LDksMCwxMCwwLDAsMCw0MiwwLDUyNywwLDBdLFswLDUyNywwLDAsMCwxMjEsNTY4LDAsOSwwLDEwLDAsMCwwLDQyLDAsNTI3LDAsMF0sWzAsMCwwLDU2OSw2Niw1NzAsNTcxLDgsOSwwLDEwLDAsMCw1NzIsNjgsMCwwLDE2LDBdLFswLDAsMCw1NzMsNTMyLDU3NCw1NzQsNTcsNTgsMCw1OSwwLDAsMCw1MzYsMCwwLDYyLDBdLFswLDU3NSwwLDAsMCwxMzcsNTc2LDAsNTgsMCw1OSwwLDAsMCwxMzksMCw1NzUsMCwwXSxbMCwwLDAsMCw1NzcsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDUzNSw1NzcsMCwwLDAsMF0sWzAsMCwwLDUzMSw1MzIsNTMzLDU3NCw1Nyw1OCwwLDU5LDAsMCw1MzUsNTM2LDAsMCw2MiwwXSxbMCwwLDAsNTMxLDUzMiw1NzQsNTc0LDU3LDU4LDAsNTksMCwwLDAsNTM2LDAsMCw2MiwwXSxbMCw1NzgsMTUxLDAsMCwxMzcsNTc2LDAsNTgsMCw1OSwwLDAsMCwxMzksMCw1NzgsMCwwXSxbMCw0NzksMCwwLDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNDc5LDAsMF0sWzAsNDc5LDAsNTM3LDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNDc5LDAsMF0sWzAsMCwwLDU3Myw1MzIsNTc0LDU3NCw1Nyw1OCwwLDU5LDAsMCwwLDUzNiwwLDAsNjIsMF0sWzAsMCwwLDAsNTc3LDE0MSwxNDEsNTcsNTgsMCwwLDAsMCw1NDIsNTc3LDAsMCwwLDBdLFswLDAsMCw1MzksNTMyLDU0MCw1NzQsNTcsNTgsMCw1OSwwLDAsNTQyLDUzNiwwLDAsNjIsMF0sWzAsMCwwLDUzOSw1MzIsNTc0LDU3NCw1Nyw1OCwwLDU5LDAsMCwwLDUzNiwwLDAsNjIsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMTM3LDAsMF0sWzAsMCwwLDAsMCwwLDAsNDQyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNDM5LDAsMF0sWzAsMCwwLDAsMCw1NzksNTc5LDQ5NCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCw1ODAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDU0OSwzNjgsNTUwLDAsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDM2OCwzNjgsMCwxNjEsMCwxNjIsMCwwLDAsMzYyLDAsMCwwLDBdLFswLDAsMCwwLDU4MSwwLDAsMCwxNjEsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsNTAwLDU1Miw1NTIsMjIsMjMsMCwyNCwwLDAsMCw1MDQsMCwwLDI3LDBdLFswLDAsMCwwLDU1NSw4MCw4MCwyMiwyMywwLDAsMCwwLDAsNTU1LDAsMCwwLDBdLFswLDAsMCw1ODIsOTEsNTgzLDU4NCwyMiwyMywwLDI0LDAsMCw1ODUsOTMsMCwwLDI3LDBdLFswLDU1MywwLDU4NiwwLDE3NywxNzcsMjIsMjMsMCwyNCwwLDAsMCw3OCwwLDU1MywwLDBdLFswLDU1MywwLDAsMCwxNzUsNTg3LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDU1MywwLDBdLFswLDAsMCw1ODgsOTEsNTg5LDU5MCwyMiwyMywwLDI0LDAsMCw1OTEsOTMsMCwwLDI3LDBdLFswLDAsMCwwLDUxMyw1NTgsNTU4LDMyLDMzLDAsMzQsMCwwLDAsNTE3LDAsMCwzNywwXSxbMCwwLDAsMCw1NjEsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDAsNTYxLDAsMCwwLDBdLFswLDAsMCw1OTIsMTEyLDU5Myw1OTQsMzIsMzMsMCwzNCwwLDAsNTk1LDExNCwwLDAsMzcsMF0sWzAsNTU5LDAsNTk2LDAsMjAzLDIwMywzMiwzMywwLDM0LDAsMCwwLDk5LDAsNTU5LDAsMF0sWzAsNTU5LDAsMCwwLDIwMSw1OTcsMCwzMywwLDM0LDAsMCwwLDk5LDAsNTU5LDAsMF0sWzAsMCwwLDU5OCwxMTIsNTk5LDYwMCwzMiwzMywwLDM0LDAsMCw2MDEsMTE0LDAsMCwzNywwXSxbMCwwLDAsNjAyLDY2LDY3LDY3LDgsOSwwLDEwLDAsMCwwLDY4LDAsMCwxNiwwXSxbMCwwLDAsMCwxNjUsNDQsNDQsOCw5LDAsMCwwLDAsNTY2LDE2NSwwLDAsMCwwXSxbMCwwLDAsNTYzLDY2LDU2NCw2Nyw4LDksMCwxMCwwLDAsNTY2LDY4LDAsMCwxNiwwXSxbMCwwLDAsNTYzLDY2LDY3LDY3LDgsOSwwLDEwLDAsMCwwLDY4LDAsMCwxNiwwXSxbMCw1MjcsMCwwLDAsMTIxLDEyMSwwLDksMCwxMCwwLDAsMCw0MiwwLDUyNywwLDBdLFswLDUyNywwLDU2NywwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCw1MjcsMCwwXSxbMCwwLDAsNjAyLDY2LDY3LDY3LDgsOSwwLDEwLDAsMCwwLDY4LDAsMCwxNiwwXSxbMCwwLDAsMCwxNjUsNDQsNDQsOCw5LDAsMCwwLDAsNTcyLDE2NSwwLDAsMCwwXSxbMCwwLDAsNTY5LDY2LDU3MCw2Nyw4LDksMCwxMCwwLDAsNTcyLDY4LDAsMCwxNiwwXSxbMCwwLDAsNTY5LDY2LDY3LDY3LDgsOSwwLDEwLDAsMCwwLDY4LDAsMCwxNiwwXSxbMCwwLDAsMCw1MzIsNTc0LDU3NCw1Nyw1OCwwLDU5LDAsMCwwLDUzNiwwLDAsNjIsMF0sWzAsMCwwLDAsNTc3LDE0MSwxNDEsNTcsNTgsMCwwLDAsMCwwLDU3NywwLDAsMCwwXSxbMCwwLDAsNjAzLDE1Miw2MDQsNjA1LDU3LDU4LDAsNTksMCwwLDYwNiwxNTQsMCwwLDYyLDBdLFswLDU3NSwwLDYwNywwLDI0OCwyNDgsNTcsNTgsMCw1OSwwLDAsMCwxMzksMCw1NzUsMCwwXSxbMCw1NzUsMCwwLDAsMjQ2LDYwOCwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNTc1LDAsMF0sWzAsMCwwLDYwOSwxNTIsNjEwLDYxMSw1Nyw1OCwwLDU5LDAsMCw2MTIsMTU0LDAsMCw2MiwwXSxbMCwwLDAsMCwwLDAsMCw0OTQsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0OTEsMCwwXSxbMCwwLDAsMCwwLDAsNjEzLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNjE0LDkxLDkyLDkyLDIyLDIzLDAsMjQsMCwwLDAsOTMsMCwwLDI3LDBdLFswLDAsMCwwLDE5NCw4MCw4MCwyMiwyMywwLDAsMCwwLDU4NSwxOTQsMCwwLDAsMF0sWzAsMCwwLDU4Miw5MSw1ODMsOTIsMjIsMjMsMCwyNCwwLDAsNTg1LDkzLDAsMCwyNywwXSxbMCwwLDAsNTgyLDkxLDkyLDkyLDIyLDIzLDAsMjQsMCwwLDAsOTMsMCwwLDI3LDBdLFswLDU1MywwLDAsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDU1MywwLDBdLFswLDU1MywwLDU4NiwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDc4LDAsNTUzLDAsMF0sWzAsMCwwLDYxNCw5MSw5Miw5MiwyMiwyMywwLDI0LDAsMCwwLDkzLDAsMCwyNywwXSxbMCwwLDAsMCwxOTQsODAsODAsMjIsMjMsMCwwLDAsMCw1OTEsMTk0LDAsMCwwLDBdLFswLDAsMCw1ODgsOTEsNTg5LDkyLDIyLDIzLDAsMjQsMCwwLDU5MSw5MywwLDAsMjcsMF0sWzAsMCwwLDU4OCw5MSw5Miw5MiwyMiwyMywwLDI0LDAsMCwwLDkzLDAsMCwyNywwXSxbMCwwLDAsNjE1LDExMiwxMTMsMTEzLDMyLDMzLDAsMzQsMCwwLDAsMTE0LDAsMCwzNywwXSxbMCwwLDAsMCwyMjAsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDU5NSwyMjAsMCwwLDAsMF0sWzAsMCwwLDU5MiwxMTIsNTkzLDExMywzMiwzMywwLDM0LDAsMCw1OTUsMTE0LDAsMCwzNywwXSxbMCwwLDAsNTkyLDExMiwxMTMsMTEzLDMyLDMzLDAsMzQsMCwwLDAsMTE0LDAsMCwzNywwXSxbMCw1NTksMCwwLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsOTksMCw1NTksMCwwXSxbMCw1NTksMCw1OTYsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDU1OSwwLDBdLFswLDAsMCw2MTUsMTEyLDExMywxMTMsMzIsMzMsMCwzNCwwLDAsMCwxMTQsMCwwLDM3LDBdLFswLDAsMCwwLDIyMCwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsNjAxLDIyMCwwLDAsMCwwXSxbMCwwLDAsNTk4LDExMiw1OTksMTEzLDMyLDMzLDAsMzQsMCwwLDYwMSwxMTQsMCwwLDM3LDBdLFswLDAsMCw1OTgsMTEyLDExMywxMTMsMzIsMzMsMCwzNCwwLDAsMCwxMTQsMCwwLDM3LDBdLFswLDAsMCwwLDY2LDY3LDY3LDgsOSwwLDEwLDAsMCwwLDY4LDAsMCwxNiwwXSxbMCwwLDAsNjE2LDE1MiwxNTMsMTUzLDU3LDU4LDAsNTksMCwwLDAsMTU0LDAsMCw2MiwwXSxbMCwwLDAsMCwyNjUsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDYwNiwyNjUsMCwwLDAsMF0sWzAsMCwwLDYwMywxNTIsNjA0LDE1Myw1Nyw1OCwwLDU5LDAsMCw2MDYsMTU0LDAsMCw2MiwwXSxbMCwwLDAsNjAzLDE1MiwxNTMsMTUzLDU3LDU4LDAsNTksMCwwLDAsMTU0LDAsMCw2MiwwXSxbMCw1NzUsMCwwLDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNTc1LDAsMF0sWzAsNTc1LDAsNjA3LDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNTc1LDAsMF0sWzAsMCwwLDYxNiwxNTIsMTUzLDE1Myw1Nyw1OCwwLDU5LDAsMCwwLDE1NCwwLDAsNjIsMF0sWzAsMCwwLDAsMjY1LDE0MSwxNDEsNTcsNTgsMCwwLDAsMCw2MTIsMjY1LDAsMCwwLDBdLFswLDAsMCw2MDksMTUyLDYxMCwxNTMsNTcsNTgsMCw1OSwwLDAsNjEyLDE1NCwwLDAsNjIsMF0sWzAsMCwwLDYwOSwxNTIsMTUzLDE1Myw1Nyw1OCwwLDU5LDAsMCwwLDE1NCwwLDAsNjIsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNTQ5LDAsMF0sWzAsMCwwLDAsOTEsOTIsOTIsMjIsMjMsMCwyNCwwLDAsMCw5MywwLDAsMjcsMF0sWzAsMCwwLDAsMTEyLDExMywxMTMsMzIsMzMsMCwzNCwwLDAsMCwxMTQsMCwwLDM3LDBdLFswLDAsMCwwLDE1MiwxNTMsMTUzLDU3LDU4LDAsNTksMCwwLDAsMTU0LDAsMCw2MiwwXV0sXCJhY2NlcHRpbmdcIjpbZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZV0sXCJ0YWdzXCI6W1tdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcInN5bWJvbF9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtdLFtdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW10sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW10sW10sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW10sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXSxbXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW10sW10sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtdLFtdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtdLFtdLFtdLFtdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW10sW10sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXV19IiwgIntcImNhdGVnb3JpZXNcIjpbXCJPXCIsXCJJTkRcIixcIlNcIixcIkdCXCIsXCJCXCIsXCJGTVwiLFwiQ0dKXCIsXCJWTUFidlwiLFwiVk1Qc3RcIixcIlZBYnZcIixcIlZQc3RcIixcIkNNQmx3XCIsXCJWUHJlXCIsXCJWQmx3XCIsXCJIXCIsXCJWTUJsd1wiLFwiQ01BYnZcIixcIk1CbHdcIixcIkNTXCIsXCJSXCIsXCJTVUJcIixcIk1Qc3RcIixcIk1QcmVcIixcIkZBYnZcIixcIkZQc3RcIixcIkZCbHdcIixcIm51bGxcIixcIlNNQWJ2XCIsXCJTTUJsd1wiLFwiVk1QcmVcIixcIlpXTkpcIixcIlpXSlwiLFwiV0pcIixcIk1cIixcIlZTXCIsXCJOXCIsXCJITlwiLFwiTUFidlwiXSxcImRlY29tcG9zaXRpb25zXCI6e1wiMjUwN1wiOlsyNTAzLDI0OTRdLFwiMjUwOFwiOlsyNTAzLDI1MTldLFwiMjg4OFwiOlsyODg3LDI5MDJdLFwiMjg5MVwiOlsyODg3LDI4NzhdLFwiMjg5MlwiOlsyODg3LDI5MDNdLFwiMzAxOFwiOlszMDE0LDMwMDZdLFwiMzAxOVwiOlszMDE1LDMwMDZdLFwiMzAyMFwiOlszMDE0LDMwMzFdLFwiMzE0NFwiOlszMTQyLDMxNThdLFwiMzI2NFwiOlszMjYzLDMyODVdLFwiMzI3MVwiOlszMjcwLDMyODVdLFwiMzI3MlwiOlszMjcwLDMyODZdLFwiMzI3NFwiOlszMjcwLDMyNjZdLFwiMzI3NVwiOlszMjcwLDMyNjYsMzI4NV0sXCIzNDAyXCI6WzMzOTgsMzM5MF0sXCIzNDAzXCI6WzMzOTksMzM5MF0sXCIzNDA0XCI6WzMzOTgsMzQxNV0sXCIzNTQ2XCI6WzM1NDUsMzUzMF0sXCIzNTQ4XCI6WzM1NDUsMzUzNV0sXCIzNTQ5XCI6WzM1NDUsMzUzNSwzNTMwXSxcIjM1NTBcIjpbMzU0NSwzNTUxXSxcIjM2MzVcIjpbMzY2MSwzNjM0XSxcIjM3NjNcIjpbMzc4OSwzNzYyXSxcIjM5NTVcIjpbMzk1MywzOTU0XSxcIjM5NTdcIjpbMzk1MywzOTU2XSxcIjM5NThcIjpbNDAxOCwzOTY4XSxcIjM5NTlcIjpbNDAxOCwzOTUzLDM5NjhdLFwiMzk2MFwiOls0MDE5LDM5NjhdLFwiMzk2MVwiOls0MDE5LDM5NTMsMzk2OF0sXCIzOTY5XCI6WzM5NTMsMzk2OF0sXCI2OTcxXCI6WzY5NzAsNjk2NV0sXCI2OTczXCI6WzY5NzIsNjk2NV0sXCI2OTc2XCI6WzY5NzQsNjk2NV0sXCI2OTc3XCI6WzY5NzUsNjk2NV0sXCI2OTc5XCI6WzY5NzgsNjk2NV0sXCI2OTkzNFwiOls2OTkzNyw2OTkyN10sXCI2OTkzNVwiOls2OTkzOCw2OTkyN10sXCI3MDQ3NVwiOls3MDQ3MSw3MDQ2Ml0sXCI3MDQ3NlwiOls3MDQ3MSw3MDQ4N10sXCI3MDg0M1wiOls3MDg0MSw3MDg0Ml0sXCI3MDg0NFwiOls3MDg0MSw3MDgzMl0sXCI3MDg0NlwiOls3MDg0MSw3MDg0NV0sXCI3MTA5OFwiOls3MTA5Niw3MTA4N10sXCI3MTA5OVwiOls3MTA5Nyw3MTA4N119LFwic3RhdGVUYWJsZVwiOltbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMiwyLDMsNCw0LDUsMCw2LDcsOCw5LDEwLDExLDEyLDEzLDE0LDE1LDE2LDAsMTcsMTgsMTEsMTksMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDIsMCwwLDI0LDAsMjVdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDI2LDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjcsMjgsMCwwLDAsMCwwLDI3LDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsMzQsMzUsMzYsMzcsMzgsMzksNDAsMCwwLDQxLDM1LDQyLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMzksMCwwLDQ3XSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDUsMCw2LDcsMCwwLDAsMCwwLDAsMTQsMCwwLDAsMCwwLDAsMCwyMCwyMSwyMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsMCw3LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyMCwyMSwyMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDgsOSwwLDAsMTIsMCwxNCwwLDAsMCwwLDAsMCwwLDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDAsOSwwLDAsMCwwLDE0LDAsMCwwLDAsMCwwLDAsMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDUsMCw2LDcsOCw5LDEwLDExLDEyLDEzLDE0LDAsMTYsMCwwLDE4LDExLDE5LDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMjVdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksMCwxMSwxMiwwLDE0LDAsMCwwLDAsMCwwLDAsMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDUsMCw2LDcsMCw5LDAsMCwxMiwwLDE0LDAsMCwwLDAsMCwwLDAsMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxOCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsMCw3LDAsMCwwLDAsMCwwLDE0LDAsMCwwLDAsMCwwLDAsMjAsMjEsMjIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksMTAsMTEsMTIsMTMsMTQsMTUsMTYsMCwwLDE4LDExLDE5LDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMjVdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksMCwxMSwxMiwwLDE0LDAsMCwwLDAsMCwxMSwwLDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDQsNCw1LDAsNiw3LDgsOSwxMCwxMSwxMiwxMywxNCwxNSwxNiwwLDAsMTgsMTEsMTksMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwyNV0sWzAsMCwwLDAsMCw1LDAsNiw3LDgsOSw0OCwxMSwxMiwxMywxNCw0OCwxNiwwLDAsMTgsMTEsMTksMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCw0OSwwLDAsMjVdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksMCwxMSwxMiwwLDE0LDAsMTYsMCwwLDAsMTEsMCwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDI1XSxbMCwwLDAsMCwwLDUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIwLDIxLDIyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjEsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIxLDIyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDUsMCw2LDcsMCwwLDAsMCwwLDAsMTQsMCwwLDAsMCwwLDAsMCwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDUwLDAsNTEsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDgsOSwwLDExLDEyLDAsMTQsMCwxNiwwLDAsMCwxMSwwLDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDI3LDI4LDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyOCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDAsMCwwLDAsMCwwLDM4LDAsMCwwLDAsMCwwLDAsNDMsNDQsNDUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjksMCwwLDMxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0Myw0NCw0NSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDAsMCwzNiwwLDM4LDAsMCwwLDAsMCwwLDAsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMCwzMywwLDAsMCwwLDM4LDAsMCwwLDAsMCwwLDAsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsMzQsMzUsMzYsMzcsMzgsMCw0MCwwLDAsNDEsMzUsNDIsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCw0N10sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDAsMzUsMzYsMCwzOCwwLDAsMCwwLDAsMCwwLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDAsMzMsMCwwLDM2LDAsMzgsMCwwLDAsMCwwLDAsMCw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDQxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMCwzMSwwLDAsMCwwLDAsMCwzOCwwLDAsMCwwLDAsMCwwLDQzLDQ0LDQ1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsMzQsMzUsMzYsMzcsMzgsMzksNDAsMCwwLDQxLDM1LDQyLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsNDddLFswLDAsMCwwLDAsMjksMCwzMCwzMSwzMiwzMywwLDM1LDM2LDAsMzgsMCwwLDAsMCwwLDM1LDAsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsNTIsMzUsMzYsMzcsMzgsNTIsNDAsMCwwLDQxLDM1LDQyLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsNTMsMCwwLDQ3XSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsMCwzNSwzNiwwLDM4LDAsNDAsMCwwLDAsMzUsMCw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDQ3XSxbMCwwLDAsMCwwLDI5LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0Myw0NCw0NSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0NCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDQ0LDQ1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMCwwLDAsMCwwLDAsMzgsMCwwLDAsMCwwLDAsMCw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjksMCwzMCwzMSwzMiwzMywwLDM1LDM2LDAsMzgsMCw0MCwwLDAsMCwzNSwwLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDgsOSw0OCwxMSwxMiwxMywxNCwwLDE2LDAsMCwxOCwxMSwxOSwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDI1XSxbMCwwLDAsMCwwLDUsMCw2LDcsOCw5LDQ4LDExLDEyLDEzLDE0LDQ4LDE2LDAsMCwxOCwxMSwxOSwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDI1XSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNTEsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw1NCwwLDBdLFswLDAsMCwwLDAsMjksMCwzMCwzMSwzMiwzMyw1MiwzNSwzNiwzNywzOCwwLDQwLDAsMCw0MSwzNSw0Miw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDQ3XSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsNTIsMzUsMzYsMzcsMzgsNTIsNDAsMCwwLDQxLDM1LDQyLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsNDddLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDUwLDAsNTEsMF1dLFwiYWNjZXB0aW5nXCI6W2ZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZV0sXCJ0YWdzXCI6W1tdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImluZGVwZW5kZW50X2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJudW1lcmFsX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiaW5kZXBlbmRlbnRfY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1widmlyYW1hX3Rlcm1pbmF0ZWRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcIm51bWVyYWxfY2x1c3RlclwiXSxbXCJudW1iZXJfam9pbmVyX3Rlcm1pbmF0ZWRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wibnVtZXJhbF9jbHVzdGVyXCJdXX0iLCAiLy8gQ2F0ZW9yaWVzIHVzZWQgaW4gdGhlIE9wZW5UeXBlIHNwZWM6XG4vLyBodHRwczovL3d3dy5taWNyb3NvZnQuY29tL3R5cG9ncmFwaHkvb3RmbnRkZXYvZGV2YW5vdC9zaGFwaW5nLmFzcHhcbmV4cG9ydCBjb25zdCBDQVRFR09SSUVTID0ge1xuICBYOiAxIDw8IDAsXG4gIEM6IDEgPDwgMSxcbiAgVjogMSA8PCAyLFxuICBOOiAxIDw8IDMsXG4gIEg6IDEgPDwgNCxcbiAgWldOSjogMSA8PCA1LFxuICBaV0o6IDEgPDwgNixcbiAgTTogMSA8PCA3LFxuICBTTTogMSA8PCA4LFxuICBWRDogMSA8PCA5LFxuICBBOiAxIDw8IDEwLFxuICBQbGFjZWhvbGRlcjogMSA8PCAxMSxcbiAgRG90dGVkX0NpcmNsZTogMSA8PCAxMixcbiAgUlM6IDEgPDwgMTMsICAgIC8vIFJlZ2lzdGVyIFNoaWZ0ZXIsIHVzZWQgaW4gS2htZXIgT1Qgc3BlYy5cbiAgQ29lbmc6IDEgPDwgMTQsIC8vIEtobWVyLXN0eWxlIFZpcmFtYS5cbiAgUmVwaGE6IDEgPDwgMTUsIC8vIEF0b21pY2FsbHktZW5jb2RlZCBsb2dpY2FsIG9yIHZpc3VhbCByZXBoYS5cbiAgUmE6IDEgPDwgMTYsXG4gIENNOiAxIDw8IDE3LCAgICAvLyBDb25zb25hbnQtTWVkaWFsLlxuICBTeW1ib2w6IDEgPDwgMTggLy8gQXZhZ3JhaGEsIGV0YyB0aGF0IHRha2UgbWFya3MgKFNNLEEsVkQpLlxufTtcblxuLy8gVmlzdWFsIHBvc2l0aW9ucyBpbiBhIHN5bGxhYmxlIGZyb20gbGVmdCB0byByaWdodC5cbmV4cG9ydCBjb25zdCBQT1NJVElPTlMgPSB7XG4gIFN0YXJ0OiAxIDw8IDAsXG5cbiAgUmFfVG9fQmVjb21lX1JlcGg6IDEgPDwgMSxcbiAgUHJlX006IDEgPDwgMixcbiAgUHJlX0M6IDEgPDwgMyxcblxuICBCYXNlX0M6IDEgPDwgNCxcbiAgQWZ0ZXJfTWFpbjogMSA8PCA1LFxuXG4gIEFib3ZlX0M6IDEgPDwgNixcblxuICBCZWZvcmVfU3ViOiAxIDw8IDcsXG4gIEJlbG93X0M6IDEgPDwgOCxcbiAgQWZ0ZXJfU3ViOiAxIDw8IDksXG5cbiAgQmVmb3JlX1Bvc3Q6IDEgPDwgMTAsXG4gIFBvc3RfQzogMSA8PCAxMSxcbiAgQWZ0ZXJfUG9zdDogMSA8PCAxMixcblxuICBGaW5hbF9DOiAxIDw8IDEzLFxuICBTTVZEOiAxIDw8IDE0LFxuXG4gIEVuZDogMSA8PCAxNVxufTtcblxuZXhwb3J0IGNvbnN0IENPTlNPTkFOVF9GTEFHUyA9IENBVEVHT1JJRVMuQyB8IENBVEVHT1JJRVMuUmEgfCBDQVRFR09SSUVTLkNNIHwgQ0FURUdPUklFUy5WIHwgQ0FURUdPUklFUy5QbGFjZWhvbGRlciB8IENBVEVHT1JJRVMuRG90dGVkX0NpcmNsZTtcbmV4cG9ydCBjb25zdCBKT0lORVJfRkxBR1MgPSBDQVRFR09SSUVTLlpXSiB8IENBVEVHT1JJRVMuWldOSjtcbmV4cG9ydCBjb25zdCBIQUxBTlRfT1JfQ09FTkdfRkxBR1MgPSBDQVRFR09SSUVTLkggfCBDQVRFR09SSUVTLkNvZW5nO1xuXG5leHBvcnQgY29uc3QgSU5ESUNfQ09ORklHUyA9IHtcbiAgRGVmYXVsdDoge1xuICAgIGhhc09sZFNwZWM6IGZhbHNlLFxuICAgIHZpcmFtYTogMCxcbiAgICBiYXNlUG9zOiAnTGFzdCcsXG4gICAgcmVwaFBvczogUE9TSVRJT05TLkJlZm9yZV9Qb3N0LFxuICAgIHJlcGhNb2RlOiAnSW1wbGljaXQnLFxuICAgIGJsd2ZNb2RlOiAnUHJlX0FuZF9Qb3N0J1xuICB9LFxuXG4gIERldmFuYWdhcmk6IHtcbiAgICBoYXNPbGRTcGVjOiB0cnVlLFxuICAgIHZpcmFtYTogMHgwOTRELFxuICAgIGJhc2VQb3M6ICdMYXN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuQmVmb3JlX1Bvc3QsXG4gICAgcmVwaE1vZGU6ICdJbXBsaWNpdCcsXG4gICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIH0sXG5cbiAgQmVuZ2FsaToge1xuICAgIGhhc09sZFNwZWM6IHRydWUsXG4gICAgdmlyYW1hOiAweDA5Q0QsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5BZnRlcl9TdWIsXG4gICAgcmVwaE1vZGU6ICdJbXBsaWNpdCcsXG4gICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIH0sXG5cbiAgR3VybXVraGk6IHtcbiAgICBoYXNPbGRTcGVjOiB0cnVlLFxuICAgIHZpcmFtYTogMHgwQTRELFxuICAgIGJhc2VQb3M6ICdMYXN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuQmVmb3JlX1N1YixcbiAgICByZXBoTW9kZTogJ0ltcGxpY2l0JyxcbiAgICBibHdmTW9kZTogJ1ByZV9BbmRfUG9zdCdcbiAgfSxcblxuICBHdWphcmF0aToge1xuICAgIGhhc09sZFNwZWM6IHRydWUsXG4gICAgdmlyYW1hOiAweDBBQ0QsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5CZWZvcmVfUG9zdCxcbiAgICByZXBoTW9kZTogJ0ltcGxpY2l0JyxcbiAgICBibHdmTW9kZTogJ1ByZV9BbmRfUG9zdCdcbiAgfSxcblxuICBPcml5YToge1xuICAgIGhhc09sZFNwZWM6IHRydWUsXG4gICAgdmlyYW1hOiAweDBCNEQsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5BZnRlcl9NYWluLFxuICAgIHJlcGhNb2RlOiAnSW1wbGljaXQnLFxuICAgIGJsd2ZNb2RlOiAnUHJlX0FuZF9Qb3N0J1xuICB9LFxuXG4gIFRhbWlsOiB7XG4gICAgaGFzT2xkU3BlYzogdHJ1ZSxcbiAgICB2aXJhbWE6IDB4MEJDRCxcbiAgICBiYXNlUG9zOiAnTGFzdCcsXG4gICAgcmVwaFBvczogUE9TSVRJT05TLkFmdGVyX1Bvc3QsXG4gICAgcmVwaE1vZGU6ICdJbXBsaWNpdCcsXG4gICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIH0sXG5cbiAgVGVsdWd1OiB7XG4gICAgaGFzT2xkU3BlYzogdHJ1ZSxcbiAgICB2aXJhbWE6IDB4MEM0RCxcbiAgICBiYXNlUG9zOiAnTGFzdCcsXG4gICAgcmVwaFBvczogUE9TSVRJT05TLkFmdGVyX1Bvc3QsXG4gICAgcmVwaE1vZGU6ICdFeHBsaWNpdCcsXG4gICAgYmx3Zk1vZGU6ICdQb3N0X09ubHknXG4gIH0sXG5cbiAgS2FubmFkYToge1xuICAgIGhhc09sZFNwZWM6IHRydWUsXG4gICAgdmlyYW1hOiAweDBDQ0QsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5BZnRlcl9Qb3N0LFxuICAgIHJlcGhNb2RlOiAnSW1wbGljaXQnLFxuICAgIGJsd2ZNb2RlOiAnUG9zdF9Pbmx5J1xuICB9LFxuXG4gIE1hbGF5YWxhbToge1xuICAgIGhhc09sZFNwZWM6IHRydWUsXG4gICAgdmlyYW1hOiAweDBENEQsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5BZnRlcl9NYWluLFxuICAgIHJlcGhNb2RlOiAnTG9nX1JlcGhhJyxcbiAgICBibHdmTW9kZTogJ1ByZV9BbmRfUG9zdCdcbiAgfSxcblxuICAvLyBIYW5kbGVkIGJ5IFVuaXZlcnNhbFNoYXBlclxuICAvLyBTaW5oYWxhOiB7XG4gIC8vICAgaGFzT2xkU3BlYzogZmFsc2UsXG4gIC8vICAgdmlyYW1hOiAweDBEQ0EsXG4gIC8vICAgYmFzZVBvczogJ0xhc3RfU2luaGFsYScsXG4gIC8vICAgcmVwaFBvczogUE9TSVRJT05TLkFmdGVyX01haW4sXG4gIC8vICAgcmVwaE1vZGU6ICdFeHBsaWNpdCcsXG4gIC8vICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIC8vIH0sXG5cbiAgS2htZXI6IHtcbiAgICBoYXNPbGRTcGVjOiBmYWxzZSxcbiAgICB2aXJhbWE6IDB4MTdEMixcbiAgICBiYXNlUG9zOiAnRmlyc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5SYV9Ub19CZWNvbWVfUmVwaCxcbiAgICByZXBoTW9kZTogJ1Zpc19SZXBoYScsXG4gICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIH1cbn07XG5cbi8vIEFkZGl0aW9uYWwgZGVjb21wb3NpdGlvbnMgdGhhdCBhcmVuJ3QgaW4gVW5pY29kZVxuZXhwb3J0IGNvbnN0IElORElDX0RFQ09NUE9TSVRJT05TID0ge1xuICAvLyBLaG1lclxuICAweDE3QkU6IFsweDE3QzEsIDB4MTdCRV0sXG4gIDB4MTdCRjogWzB4MTdDMSwgMHgxN0JGXSxcbiAgMHgxN0MwOiBbMHgxN0MxLCAweDE3QzBdLFxuICAweDE3QzQ6IFsweDE3QzEsIDB4MTdDNF0sXG4gIDB4MTdDNTogWzB4MTdDMSwgMHgxN0M1XVxufTtcbiIsICJpbXBvcnQgRGVmYXVsdFNoYXBlciBmcm9tICcuL0RlZmF1bHRTaGFwZXInO1xuaW1wb3J0IFN0YXRlTWFjaGluZSBmcm9tICdkZmEnO1xuaW1wb3J0IFVuaWNvZGVUcmllIGZyb20gJ3VuaWNvZGUtdHJpZSc7XG5pbXBvcnQgR2x5cGhJbmZvIGZyb20gJy4uL0dseXBoSW5mbyc7XG5pbXBvcnQgdXNlRGF0YSBmcm9tICcuL3VzZS5qc29uJztcbmltcG9ydCB7IGRlY29kZUJhc2U2NCB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuY29uc3Qge2NhdGVnb3JpZXMsIGRlY29tcG9zaXRpb25zfSA9IHVzZURhdGE7XG5jb25zdCB0cmllID0gbmV3IFVuaWNvZGVUcmllKGRlY29kZUJhc2U2NChyZXF1aXJlKCdmcycpLnJlYWRGaWxlU3luYyhfX2Rpcm5hbWUgKyAnL3VzZS50cmllJywgJ2Jhc2U2NCcpKSk7XG5jb25zdCBzdGF0ZU1hY2hpbmUgPSBuZXcgU3RhdGVNYWNoaW5lKHVzZURhdGEpO1xuXG4vKipcbiAqIFRoaXMgc2hhcGVyIGlzIGFuIGltcGxlbWVudGF0aW9uIG9mIHRoZSBVbml2ZXJzYWwgU2hhcGluZyBFbmdpbmUsIHdoaWNoXG4gKiB1c2VzIFVuaWNvZGUgZGF0YSB0byBzaGFwZSBhIG51bWJlciBvZiBzY3JpcHRzIHdpdGhvdXQgYSBkZWRpY2F0ZWQgc2hhcGluZyBlbmdpbmUuXG4gKiBTZWUgaHR0cHM6Ly93d3cubWljcm9zb2Z0LmNvbS90eXBvZ3JhcGh5L09wZW5UeXBlRGV2L1VTRS9pbnRyby5odG0uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFVuaXZlcnNhbFNoYXBlciBleHRlbmRzIERlZmF1bHRTaGFwZXIge1xuICBzdGF0aWMgemVyb01hcmtXaWR0aHMgPSAnQkVGT1JFX0dQT1MnO1xuICBzdGF0aWMgcGxhbkZlYXR1cmVzKHBsYW4pIHtcbiAgICBwbGFuLmFkZFN0YWdlKHNldHVwU3lsbGFibGVzKTtcblxuICAgIC8vIERlZmF1bHQgZ2x5cGggcHJlLXByb2Nlc3NpbmcgZ3JvdXBcbiAgICBwbGFuLmFkZFN0YWdlKFsnbG9jbCcsICdjY21wJywgJ251a3QnLCAnYWtobiddKTtcblxuICAgIC8vIFJlb3JkZXJpbmcgZ3JvdXBcbiAgICBwbGFuLmFkZFN0YWdlKGNsZWFyU3Vic3RpdHV0aW9uRmxhZ3MpO1xuICAgIHBsYW4uYWRkU3RhZ2UoWydycGhmJ10sIGZhbHNlKTtcbiAgICBwbGFuLmFkZFN0YWdlKHJlY29yZFJwaGYpO1xuICAgIHBsYW4uYWRkU3RhZ2UoY2xlYXJTdWJzdGl0dXRpb25GbGFncyk7XG4gICAgcGxhbi5hZGRTdGFnZShbJ3ByZWYnXSk7XG4gICAgcGxhbi5hZGRTdGFnZShyZWNvcmRQcmVmKTtcblxuICAgIC8vIE9ydGhvZ3JhcGhpYyB1bml0IHNoYXBpbmcgZ3JvdXBcbiAgICBwbGFuLmFkZFN0YWdlKFsncmtyZicsICdhYnZmJywgJ2Jsd2YnLCAnaGFsZicsICdwc3RmJywgJ3ZhdHUnLCAnY2pjdCddKTtcbiAgICBwbGFuLmFkZFN0YWdlKHJlb3JkZXIpO1xuXG4gICAgLy8gVG9wb2dyYXBoaWNhbCBmZWF0dXJlc1xuICAgIC8vIFNjcmlwdHMgdGhhdCBuZWVkIHRoaXMgYXJlIGhhbmRsZWQgYnkgdGhlIEFyYWJpYyBzaGFwZXIsIG5vdCBpbXBsZW1lbnRlZCBoZXJlIGZvciBub3cuXG4gICAgLy8gcGxhbi5hZGRTdGFnZShbJ2lzb2wnLCAnaW5pdCcsICdtZWRpJywgJ2ZpbmEnLCAnbWVkMicsICdmaW4yJywgJ2ZpbjMnXSwgZmFsc2UpO1xuXG4gICAgLy8gU3RhbmRhcmQgdG9wb2dyYXBoaWMgcHJlc2VudGF0aW9uIGFuZCBwb3NpdGlvbmFsIGZlYXR1cmUgYXBwbGljYXRpb25cbiAgICBwbGFuLmFkZFN0YWdlKFsnYWJ2cycsICdibHdzJywgJ3ByZXMnLCAncHN0cycsICdkaXN0JywgJ2Fidm0nLCAnYmx3bSddKTtcbiAgfVxuXG4gIHN0YXRpYyBhc3NpZ25GZWF0dXJlcyhwbGFuLCBnbHlwaHMpIHtcbiAgICAvLyBEZWNvbXBvc2Ugc3BsaXQgdm93ZWxzXG4gICAgLy8gVE9ETzogZG8gdGhpcyBpbiBhIG1vcmUgZ2VuZXJhbCB1bmljb2RlIG5vcm1hbGl6ZXJcbiAgICBmb3IgKGxldCBpID0gZ2x5cGhzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICBsZXQgY29kZXBvaW50ID0gZ2x5cGhzW2ldLmNvZGVQb2ludHNbMF07XG4gICAgICBpZiAoZGVjb21wb3NpdGlvbnNbY29kZXBvaW50XSkge1xuICAgICAgICBsZXQgZGVjb21wb3NlZCA9IGRlY29tcG9zaXRpb25zW2NvZGVwb2ludF0ubWFwKGMgPT4ge1xuICAgICAgICAgIGxldCBnID0gcGxhbi5mb250LmdseXBoRm9yQ29kZVBvaW50KGMpO1xuICAgICAgICAgIHJldHVybiBuZXcgR2x5cGhJbmZvKHBsYW4uZm9udCwgZy5pZCwgW2NdLCBnbHlwaHNbaV0uZmVhdHVyZXMpO1xuICAgICAgICB9KTtcblxuICAgICAgICBnbHlwaHMuc3BsaWNlKGksIDEsIC4uLmRlY29tcG9zZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiB1c2VDYXRlZ29yeShnbHlwaCkge1xuICByZXR1cm4gdHJpZS5nZXQoZ2x5cGguY29kZVBvaW50c1swXSk7XG59XG5cbmNsYXNzIFVTRUluZm8ge1xuICBjb25zdHJ1Y3RvcihjYXRlZ29yeSwgc3lsbGFibGVUeXBlLCBzeWxsYWJsZSkge1xuICAgIHRoaXMuY2F0ZWdvcnkgPSBjYXRlZ29yeTtcbiAgICB0aGlzLnN5bGxhYmxlVHlwZSA9IHN5bGxhYmxlVHlwZTtcbiAgICB0aGlzLnN5bGxhYmxlID0gc3lsbGFibGU7XG4gIH1cbn1cblxuZnVuY3Rpb24gc2V0dXBTeWxsYWJsZXMoZm9udCwgZ2x5cGhzKSB7XG4gIGxldCBzeWxsYWJsZSA9IDA7XG4gIGZvciAobGV0IFtzdGFydCwgZW5kLCB0YWdzXSBvZiBzdGF0ZU1hY2hpbmUubWF0Y2goZ2x5cGhzLm1hcCh1c2VDYXRlZ29yeSkpKSB7XG4gICAgKytzeWxsYWJsZTtcblxuICAgIC8vIENyZWF0ZSBzaGFwZXIgaW5mb1xuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8PSBlbmQ7IGkrKykge1xuICAgICAgZ2x5cGhzW2ldLnNoYXBlckluZm8gPSBuZXcgVVNFSW5mbyhjYXRlZ29yaWVzW3VzZUNhdGVnb3J5KGdseXBoc1tpXSldLCB0YWdzWzBdLCBzeWxsYWJsZSk7XG4gICAgfVxuXG4gICAgLy8gQXNzaWduIHJwaGYgZmVhdHVyZVxuICAgIGxldCBsaW1pdCA9IGdseXBoc1tzdGFydF0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gJ1InID8gMSA6IE1hdGgubWluKDMsIGVuZCAtIHN0YXJ0KTtcbiAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPCBzdGFydCArIGxpbWl0OyBpKyspIHtcbiAgICAgIGdseXBoc1tpXS5mZWF0dXJlcy5ycGhmID0gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gY2xlYXJTdWJzdGl0dXRpb25GbGFncyhmb250LCBnbHlwaHMpIHtcbiAgZm9yIChsZXQgZ2x5cGggb2YgZ2x5cGhzKSB7XG4gICAgZ2x5cGguc3Vic3RpdHV0ZWQgPSBmYWxzZTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZWNvcmRScGhmKGZvbnQsIGdseXBocykge1xuICBmb3IgKGxldCBnbHlwaCBvZiBnbHlwaHMpIHtcbiAgICBpZiAoZ2x5cGguc3Vic3RpdHV0ZWQgJiYgZ2x5cGguZmVhdHVyZXMucnBoZikge1xuICAgICAgLy8gTWFyayBhIHN1YnN0aXR1dGVkIHJlcGhhLlxuICAgICAgZ2x5cGguc2hhcGVySW5mby5jYXRlZ29yeSA9ICdSJztcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVjb3JkUHJlZihmb250LCBnbHlwaHMpIHtcbiAgZm9yIChsZXQgZ2x5cGggb2YgZ2x5cGhzKSB7XG4gICAgaWYgKGdseXBoLnN1YnN0aXR1dGVkKSB7XG4gICAgICAvLyBNYXJrIGEgc3Vic3RpdHV0ZWQgcHJlZiBhcyBWUHJlLCBhcyB0aGV5IGJlaGF2ZSB0aGUgc2FtZSB3YXkuXG4gICAgICBnbHlwaC5zaGFwZXJJbmZvLmNhdGVnb3J5ID0gJ1ZQcmUnO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiByZW9yZGVyKGZvbnQsIGdseXBocykge1xuICBsZXQgZG90dGVkQ2lyY2xlID0gZm9udC5nbHlwaEZvckNvZGVQb2ludCgweDI1Y2MpLmlkO1xuXG4gIGZvciAobGV0IHN0YXJ0ID0gMCwgZW5kID0gbmV4dFN5bGxhYmxlKGdseXBocywgMCk7IHN0YXJ0IDwgZ2x5cGhzLmxlbmd0aDsgc3RhcnQgPSBlbmQsIGVuZCA9IG5leHRTeWxsYWJsZShnbHlwaHMsIHN0YXJ0KSkge1xuICAgIGxldCBpLCBqO1xuICAgIGxldCBpbmZvID0gZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvO1xuICAgIGxldCB0eXBlID0gaW5mby5zeWxsYWJsZVR5cGU7XG5cbiAgICAvLyBPbmx5IGEgZmV3IHN5bGxhYmxlIHR5cGVzIG5lZWQgcmVvcmRlcmluZy5cbiAgICBpZiAodHlwZSAhPT0gJ3ZpcmFtYV90ZXJtaW5hdGVkX2NsdXN0ZXInICYmIHR5cGUgIT09ICdzdGFuZGFyZF9jbHVzdGVyJyAmJiB0eXBlICE9PSAnYnJva2VuX2NsdXN0ZXInKSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICAvLyBJbnNlcnQgYSBkb3R0ZWQgY2lyY2xlIGdseXBoIGluIGJyb2tlbiBjbHVzdGVycy5cbiAgICBpZiAodHlwZSA9PT0gJ2Jyb2tlbl9jbHVzdGVyJyAmJiBkb3R0ZWRDaXJjbGUpIHtcbiAgICAgIGxldCBnID0gbmV3IEdseXBoSW5mbyhmb250LCBkb3R0ZWRDaXJjbGUsIFsweDI1Y2NdKTtcbiAgICAgIGcuc2hhcGVySW5mbyA9IGluZm87XG5cbiAgICAgIC8vIEluc2VydCBhZnRlciBwb3NzaWJsZSBSZXBoYS5cbiAgICAgIGZvciAoaSA9IHN0YXJ0OyBpIDwgZW5kICYmIGdseXBoc1tpXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSAnUic7IGkrKyk7XG4gICAgICBnbHlwaHMuc3BsaWNlKCsraSwgMCwgZyk7XG4gICAgICBlbmQrKztcbiAgICB9XG5cbiAgICAvLyBNb3ZlIHRoaW5ncyBmb3J3YXJkLlxuICAgIGlmIChpbmZvLmNhdGVnb3J5ID09PSAnUicgJiYgZW5kIC0gc3RhcnQgPiAxKSB7XG4gICAgICAvLyBHb3QgYSByZXBoYS4gUmVvcmRlciBpdCB0byBhZnRlciBmaXJzdCBiYXNlLCBiZWZvcmUgZmlyc3QgaGFsYW50LlxuICAgICAgZm9yIChpID0gc3RhcnQgKyAxOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgICAgaW5mbyA9IGdseXBoc1tpXS5zaGFwZXJJbmZvO1xuICAgICAgICBpZiAoaXNCYXNlKGluZm8pIHx8IGlzSGFsYW50KGdseXBoc1tpXSkpIHtcbiAgICAgICAgICAvLyBJZiB3ZSBoaXQgYSBoYWxhbnQsIG1vdmUgYmVmb3JlIGl0OyBvdGhlcndpc2UgaXQncyBhIGJhc2U6IG1vdmUgdG8gaXQnc1xuICAgICAgICAgIC8vIHBsYWNlLCBhbmQgc2hpZnQgdGhpbmdzIGluIGJldHdlZW4gYmFja3dhcmQuXG4gICAgICAgICAgaWYgKGlzSGFsYW50KGdseXBoc1tpXSkpIHtcbiAgICAgICAgICAgIGktLTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBnbHlwaHMuc3BsaWNlKHN0YXJ0LCAwLCAuLi5nbHlwaHMuc3BsaWNlKHN0YXJ0ICsgMSwgaSAtIHN0YXJ0KSwgZ2x5cGhzW2ldKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1vdmUgdGhpbmdzIGJhY2suXG4gICAgZm9yIChpID0gc3RhcnQsIGogPSBlbmQ7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgaW5mbyA9IGdseXBoc1tpXS5zaGFwZXJJbmZvO1xuICAgICAgaWYgKGlzQmFzZShpbmZvKSB8fCBpc0hhbGFudChnbHlwaHNbaV0pKSB7XG4gICAgICAgIC8vIElmIHdlIGhpdCBhIGhhbGFudCwgbW92ZSBhZnRlciBpdDsgb3RoZXJ3aXNlIGl0J3MgYSBiYXNlOiBtb3ZlIHRvIGl0J3NcbiAgICAgICAgLy8gcGxhY2UsIGFuZCBzaGlmdCB0aGluZ3MgaW4gYmV0d2VlbiBiYWNrd2FyZC5cbiAgICAgICAgaiA9IGlzSGFsYW50KGdseXBoc1tpXSkgPyBpICsgMSA6IGk7XG4gICAgICB9IGVsc2UgaWYgKChpbmZvLmNhdGVnb3J5ID09PSAnVlByZScgfHwgaW5mby5jYXRlZ29yeSA9PT0gJ1ZNUHJlJykgJiYgaiA8IGkpIHtcbiAgICAgICAgZ2x5cGhzLnNwbGljZShqLCAxLCBnbHlwaHNbaV0sIC4uLmdseXBocy5zcGxpY2UoaiwgaSAtIGopKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gbmV4dFN5bGxhYmxlKGdseXBocywgc3RhcnQpIHtcbiAgaWYgKHN0YXJ0ID49IGdseXBocy5sZW5ndGgpIHJldHVybiBzdGFydDtcbiAgbGV0IHN5bGxhYmxlID0gZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnN5bGxhYmxlO1xuICB3aGlsZSAoKytzdGFydCA8IGdseXBocy5sZW5ndGggJiYgZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnN5bGxhYmxlID09PSBzeWxsYWJsZSk7XG4gIHJldHVybiBzdGFydDtcbn1cblxuZnVuY3Rpb24gaXNIYWxhbnQoZ2x5cGgpIHtcbiAgcmV0dXJuIGdseXBoLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09ICdIJyAmJiAhZ2x5cGguaXNMaWdhdGVkO1xufVxuXG5mdW5jdGlvbiBpc0Jhc2UoaW5mbykge1xuICByZXR1cm4gaW5mby5jYXRlZ29yeSA9PT0gJ0InIHx8IGluZm8uY2F0ZWdvcnkgPT09ICdHQic7XG59XG4iLCAiaW1wb3J0IE9UUHJvY2Vzc29yIGZyb20gJy4vT1RQcm9jZXNzb3InO1xuaW1wb3J0IEdseXBoSW5mbyBmcm9tICcuL0dseXBoSW5mbyc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdTVUJQcm9jZXNzb3IgZXh0ZW5kcyBPVFByb2Nlc3NvciB7XG4gIGFwcGx5TG9va3VwKGxvb2t1cFR5cGUsIHRhYmxlKSB7XG4gICAgc3dpdGNoIChsb29rdXBUeXBlKSB7XG4gICAgICBjYXNlIDE6IHsgLy8gU2luZ2xlIFN1YnN0aXR1dGlvblxuICAgICAgICBsZXQgaW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UpO1xuICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGdseXBoID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmN1cjtcbiAgICAgICAgc3dpdGNoICh0YWJsZS52ZXJzaW9uKSB7XG4gICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgZ2x5cGguaWQgPSAoZ2x5cGguaWQgKyB0YWJsZS5kZWx0YUdseXBoSUQpICYgMHhmZmZmO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgICBnbHlwaC5pZCA9IHRhYmxlLnN1YnN0aXR1dGUuZ2V0KGluZGV4KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMjogeyAvLyBNdWx0aXBsZSBTdWJzdGl0dXRpb25cbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKTtcbiAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIGxldCBzZXF1ZW5jZSA9IHRhYmxlLnNlcXVlbmNlcy5nZXQoaW5kZXgpO1xuXG4gICAgICAgICAgaWYgKHNlcXVlbmNlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgLy8gSWYgdGhlIHNlcXVlbmNlIGxlbmd0aCBpcyB6ZXJvLCBkZWxldGUgdGhlIGdseXBoLlxuICAgICAgICAgICAgLy8gVGhlIE9wZW5UeXBlIHNwZWMgZGlzYWxsb3dzIHRoaXMsIGJ1dCBzZWVtcyBsaWtlIEhhcmZidXp6IGFuZCBVbmlzY3JpYmUgYWxsb3cgaXQuXG4gICAgICAgICAgICB0aGlzLmdseXBocy5zcGxpY2UodGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4LCAxKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5jdXIuaWQgPSBzZXF1ZW5jZVswXTtcbiAgICAgICAgICB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmxpZ2F0dXJlQ29tcG9uZW50ID0gMDtcblxuICAgICAgICAgIGxldCBmZWF0dXJlcyA9IHRoaXMuZ2x5cGhJdGVyYXRvci5jdXIuZmVhdHVyZXM7XG4gICAgICAgICAgbGV0IGN1ckdseXBoID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmN1cjtcbiAgICAgICAgICBsZXQgcmVwbGFjZW1lbnQgPSBzZXF1ZW5jZS5zbGljZSgxKS5tYXAoKGdpZCwgaSkgPT4ge1xuICAgICAgICAgICAgbGV0IGdseXBoID0gbmV3IEdseXBoSW5mbyh0aGlzLmZvbnQsIGdpZCwgdW5kZWZpbmVkLCBmZWF0dXJlcyk7XG4gICAgICAgICAgICBnbHlwaC5zaGFwZXJJbmZvID0gY3VyR2x5cGguc2hhcGVySW5mbztcbiAgICAgICAgICAgIGdseXBoLmlzTGlnYXRlZCA9IGN1ckdseXBoLmlzTGlnYXRlZDtcbiAgICAgICAgICAgIGdseXBoLmxpZ2F0dXJlQ29tcG9uZW50ID0gaSArIDE7XG4gICAgICAgICAgICBnbHlwaC5zdWJzdGl0dXRlZCA9IHRydWU7XG4gICAgICAgICAgICBnbHlwaC5pc011bHRpcGxpZWQgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIGdseXBoO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgdGhpcy5nbHlwaHMuc3BsaWNlKHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleCArIDEsIDAsIC4uLnJlcGxhY2VtZW50KTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgY2FzZSAzOiB7IC8vIEFsdGVybmF0ZSBTdWJzdGl0dXRpb25cbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKTtcbiAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgIGxldCBVU0VSX0lOREVYID0gMDsgLy8gVE9ET1xuICAgICAgICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5jdXIuaWQgPSB0YWJsZS5hbHRlcm5hdGVTZXQuZ2V0KGluZGV4KVtVU0VSX0lOREVYXTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgY2FzZSA0OiB7IC8vIExpZ2F0dXJlIFN1YnN0aXR1dGlvblxuICAgICAgICBsZXQgaW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UpO1xuICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgbGlnYXR1cmUgb2YgdGFibGUubGlnYXR1cmVTZXRzLmdldChpbmRleCkpIHtcbiAgICAgICAgICBsZXQgbWF0Y2hlZCA9IHRoaXMuc2VxdWVuY2VNYXRjaEluZGljZXMoMSwgbGlnYXR1cmUuY29tcG9uZW50cyk7XG4gICAgICAgICAgaWYgKCFtYXRjaGVkKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgY3VyR2x5cGggPSB0aGlzLmdseXBoSXRlcmF0b3IuY3VyO1xuXG4gICAgICAgICAgLy8gQ29uY2F0ZW5hdGUgYWxsIG9mIHRoZSBjaGFyYWN0ZXJzIHRoZSBuZXcgbGlnYXR1cmUgd2lsbCByZXByZXNlbnRcbiAgICAgICAgICBsZXQgY2hhcmFjdGVycyA9IGN1ckdseXBoLmNvZGVQb2ludHMuc2xpY2UoKTtcbiAgICAgICAgICBmb3IgKGxldCBpbmRleCBvZiBtYXRjaGVkKSB7XG4gICAgICAgICAgICBjaGFyYWN0ZXJzLnB1c2goLi4udGhpcy5nbHlwaHNbaW5kZXhdLmNvZGVQb2ludHMpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIENyZWF0ZSB0aGUgcmVwbGFjZW1lbnQgbGlnYXR1cmUgZ2x5cGhcbiAgICAgICAgICBsZXQgbGlnYXR1cmVHbHlwaCA9IG5ldyBHbHlwaEluZm8odGhpcy5mb250LCBsaWdhdHVyZS5nbHlwaCwgY2hhcmFjdGVycywgY3VyR2x5cGguZmVhdHVyZXMpO1xuICAgICAgICAgIGxpZ2F0dXJlR2x5cGguc2hhcGVySW5mbyA9IGN1ckdseXBoLnNoYXBlckluZm87XG4gICAgICAgICAgbGlnYXR1cmVHbHlwaC5pc0xpZ2F0ZWQgPSB0cnVlO1xuICAgICAgICAgIGxpZ2F0dXJlR2x5cGguc3Vic3RpdHV0ZWQgPSB0cnVlO1xuXG4gICAgICAgICAgLy8gRnJvbSBIYXJmYnV6ejpcbiAgICAgICAgICAvLyAtIElmIGl0ICppcyogYSBtYXJrIGxpZ2F0dXJlLCB3ZSBkb24ndCBhbGxvY2F0ZSBhIG5ldyBsaWdhdHVyZSBpZCwgYW5kIGxlYXZlXG4gICAgICAgICAgLy8gICB0aGUgbGlnYXR1cmUgdG8ga2VlcCBpdHMgb2xkIGxpZ2F0dXJlIGlkLiAgVGhpcyB3aWxsIGFsbG93IGl0IHRvIGF0dGFjaCB0b1xuICAgICAgICAgIC8vICAgYSBiYXNlIGxpZ2F0dXJlIGluIEdQT1MuICBFZy4gaWYgdGhlIHNlcXVlbmNlIGlzOiBMQU0sTEFNLFNIQUREQSxGQVRIQSxIRUgsXG4gICAgICAgICAgLy8gICBhbmQgTEFNLExBTSxIRUggZm9yIGEgbGlnYXR1cmUsIHRoZXkgd2lsbCBsZWF2ZSBTSEFEREEgYW5kIEZBVEhBIHdpdGggYVxuICAgICAgICAgIC8vICAgbGlnYXR1cmUgaWQgYW5kIGNvbXBvbmVudCB2YWx1ZSBvZiAyLiAgVGhlbiBpZiBTSEFEREEsRkFUSEEgZm9ybSBhIGxpZ2F0dXJlXG4gICAgICAgICAgLy8gICBsYXRlciwgd2UgZG9uJ3Qgd2FudCB0aGVtIHRvIGxvc2UgdGhlaXIgbGlnYXR1cmUgaWQvY29tcG9uZW50LCBvdGhlcndpc2VcbiAgICAgICAgICAvLyAgIEdQT1Mgd2lsbCBmYWlsIHRvIGNvcnJlY3RseSBwb3NpdGlvbiB0aGUgbWFyayBsaWdhdHVyZSBvbiB0b3Agb2YgdGhlXG4gICAgICAgICAgLy8gICBMQU0sTEFNLEhFSCBsaWdhdHVyZS4gU2VlIGh0dHBzOi8vYnVnemlsbGEuZ25vbWUub3JnL3Nob3dfYnVnLmNnaT9pZD02NzYzNDNcbiAgICAgICAgICAvL1xuICAgICAgICAgIC8vIC0gSWYgYSBsaWdhdHVyZSBpcyBmb3JtZWQgb2YgY29tcG9uZW50cyB0aGF0IHNvbWUgb2Ygd2hpY2ggYXJlIGFsc28gbGlnYXR1cmVzXG4gICAgICAgICAgLy8gICB0aGVtc2VsdmVzLCBhbmQgdGhvc2UgbGlnYXR1cmUgY29tcG9uZW50cyBoYWQgbWFya3MgYXR0YWNoZWQgdG8gKnRoZWlyKlxuICAgICAgICAgIC8vICAgY29tcG9uZW50cywgd2UgaGF2ZSB0byBhdHRhY2ggdGhlIG1hcmtzIHRvIHRoZSBuZXcgbGlnYXR1cmUgY29tcG9uZW50XG4gICAgICAgICAgLy8gICBwb3NpdGlvbnMhICBOb3cgKnRoYXQqJ3MgdHJpY2t5ISAgQW5kIHRoZXNlIG1hcmtzIG1heSBiZSBmb2xsb3dpbmcgdGhlXG4gICAgICAgICAgLy8gICBsYXN0IGNvbXBvbmVudCBvZiB0aGUgd2hvbGUgc2VxdWVuY2UsIHNvIHdlIHNob3VsZCBsb29wIGZvcndhcmQgbG9va2luZ1xuICAgICAgICAgIC8vICAgZm9yIHRoZW0gYW5kIHVwZGF0ZSB0aGVtLlxuICAgICAgICAgIC8vXG4gICAgICAgICAgLy8gICBFZy4gdGhlIHNlcXVlbmNlIGlzIExBTSxMQU0sU0hBRERBLEZBVEhBLEhFSCwgYW5kIHRoZSBmb250IGZpcnN0IGZvcm1zIGFcbiAgICAgICAgICAvLyAgICdjYWx0JyBsaWdhdHVyZSBvZiBMQU0sSEVILCBsZWF2aW5nIHRoZSBTSEFEREEgYW5kIEZBVEhBIHdpdGggYSBsaWdhdHVyZVxuICAgICAgICAgIC8vICAgaWQgYW5kIGNvbXBvbmVudCA9PSAxLiAgTm93LCBkdXJpbmcgJ2xpZ2EnLCB0aGUgTEFNIGFuZCB0aGUgTEFNLUhFSCBsaWdhdHVyZVxuICAgICAgICAgIC8vICAgZm9ybSBhIExBTS1MQU0tSEVIIGxpZ2F0dXJlLiAgV2UgbmVlZCB0byByZWFzc2lnbiB0aGUgU0hBRERBIGFuZCBGQVRIQSB0b1xuICAgICAgICAgIC8vICAgdGhlIG5ldyBsaWdhdHVyZSB3aXRoIGEgY29tcG9uZW50IHZhbHVlIG9mIDIuXG4gICAgICAgICAgLy9cbiAgICAgICAgICAvLyAgIFRoaXMgaW4gZmFjdCBoYXBwZW5lZCB0byBhIGZvbnQuLi4gIFNlZSBodHRwczovL2J1Z3ppbGxhLmdub21lLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDM3NjMzXG4gICAgICAgICAgbGV0IGlzTWFya0xpZ2F0dXJlID0gY3VyR2x5cGguaXNNYXJrO1xuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWF0Y2hlZC5sZW5ndGggJiYgaXNNYXJrTGlnYXR1cmU7IGkrKykge1xuICAgICAgICAgICAgaXNNYXJrTGlnYXR1cmUgPSB0aGlzLmdseXBoc1ttYXRjaGVkW2ldXS5pc01hcms7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGlnYXR1cmVHbHlwaC5saWdhdHVyZUlEID0gaXNNYXJrTGlnYXR1cmUgPyBudWxsIDogdGhpcy5saWdhdHVyZUlEKys7XG5cbiAgICAgICAgICBsZXQgbGFzdExpZ0lEID0gY3VyR2x5cGgubGlnYXR1cmVJRDtcbiAgICAgICAgICBsZXQgbGFzdE51bUNvbXBzID0gY3VyR2x5cGguY29kZVBvaW50cy5sZW5ndGg7XG4gICAgICAgICAgbGV0IGN1ckNvbXBzID0gbGFzdE51bUNvbXBzO1xuICAgICAgICAgIGxldCBpZHggPSB0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXggKyAxO1xuXG4gICAgICAgICAgLy8gU2V0IGxpZ2F0dXJlSUQgYW5kIGxpZ2F0dXJlQ29tcG9uZW50IG9uIGdseXBocyB0aGF0IHdlcmUgc2tpcHBlZCBpbiB0aGUgbWF0Y2hlZCBzZXF1ZW5jZS5cbiAgICAgICAgICAvLyBUaGlzIGFsbG93cyBHUE9TIHRvIGF0dGFjaCBtYXJrcyB0byB0aGUgY29ycmVjdCBsaWdhdHVyZSBjb21wb25lbnRzLlxuICAgICAgICAgIGZvciAobGV0IG1hdGNoSW5kZXggb2YgbWF0Y2hlZCkge1xuICAgICAgICAgICAgLy8gRG9uJ3QgYXNzaWduIG5ldyBsaWdhdHVyZSBjb21wb25lbnRzIGZvciBtYXJrIGxpZ2F0dXJlcyAoc2VlIGFib3ZlKVxuICAgICAgICAgICAgaWYgKGlzTWFya0xpZ2F0dXJlKSB7XG4gICAgICAgICAgICAgIGlkeCA9IG1hdGNoSW5kZXg7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB3aGlsZSAoaWR4IDwgbWF0Y2hJbmRleCkge1xuICAgICAgICAgICAgICAgIHZhciBsaWdhdHVyZUNvbXBvbmVudCA9IGN1ckNvbXBzIC0gbGFzdE51bUNvbXBzICsgTWF0aC5taW4odGhpcy5nbHlwaHNbaWR4XS5saWdhdHVyZUNvbXBvbmVudCB8fCAxLCBsYXN0TnVtQ29tcHMpO1xuICAgICAgICAgICAgICAgIHRoaXMuZ2x5cGhzW2lkeF0ubGlnYXR1cmVJRCA9IGxpZ2F0dXJlR2x5cGgubGlnYXR1cmVJRDtcbiAgICAgICAgICAgICAgICB0aGlzLmdseXBoc1tpZHhdLmxpZ2F0dXJlQ29tcG9uZW50ID0gbGlnYXR1cmVDb21wb25lbnQ7XG4gICAgICAgICAgICAgICAgaWR4Kys7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFzdExpZ0lEID0gdGhpcy5nbHlwaHNbaWR4XS5saWdhdHVyZUlEO1xuICAgICAgICAgICAgbGFzdE51bUNvbXBzID0gdGhpcy5nbHlwaHNbaWR4XS5jb2RlUG9pbnRzLmxlbmd0aDtcbiAgICAgICAgICAgIGN1ckNvbXBzICs9IGxhc3ROdW1Db21wcztcbiAgICAgICAgICAgIGlkeCsrOyAvLyBza2lwIGJhc2UgZ2x5cGhcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBBZGp1c3QgbGlnYXR1cmUgY29tcG9uZW50cyBmb3IgYW55IG1hcmtzIGZvbGxvd2luZ1xuICAgICAgICAgIGlmIChsYXN0TGlnSUQgJiYgIWlzTWFya0xpZ2F0dXJlKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gaWR4OyBpIDwgdGhpcy5nbHlwaHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgaWYgKHRoaXMuZ2x5cGhzW2ldLmxpZ2F0dXJlSUQgPT09IGxhc3RMaWdJRCkge1xuICAgICAgICAgICAgICAgIHZhciBsaWdhdHVyZUNvbXBvbmVudCA9IGN1ckNvbXBzIC0gbGFzdE51bUNvbXBzICsgTWF0aC5taW4odGhpcy5nbHlwaHNbaV0ubGlnYXR1cmVDb21wb25lbnQgfHwgMSwgbGFzdE51bUNvbXBzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmdseXBoc1tpXS5saWdhdHVyZUNvbXBvbmVudCA9IGxpZ2F0dXJlQ29tcG9uZW50O1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gRGVsZXRlIHRoZSBtYXRjaGVkIGdseXBocywgYW5kIHJlcGxhY2UgdGhlIGN1cnJlbnQgZ2x5cGggd2l0aCB0aGUgbGlnYXR1cmUgZ2x5cGhcbiAgICAgICAgICBmb3IgKGxldCBpID0gbWF0Y2hlZC5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgICAgICAgdGhpcy5nbHlwaHMuc3BsaWNlKG1hdGNoZWRbaV0sIDEpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuZ2x5cGhzW3RoaXMuZ2x5cGhJdGVyYXRvci5pbmRleF0gPSBsaWdhdHVyZUdseXBoO1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDU6IC8vIENvbnRleHR1YWwgU3Vic3RpdHV0aW9uXG4gICAgICAgIHJldHVybiB0aGlzLmFwcGx5Q29udGV4dCh0YWJsZSk7XG5cbiAgICAgIGNhc2UgNjogLy8gQ2hhaW5pbmcgQ29udGV4dHVhbCBTdWJzdGl0dXRpb25cbiAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlDaGFpbmluZ0NvbnRleHQodGFibGUpO1xuXG4gICAgICBjYXNlIDc6IC8vIEV4dGVuc2lvbiBTdWJzdGl0dXRpb25cbiAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlMb29rdXAodGFibGUubG9va3VwVHlwZSwgdGFibGUuZXh0ZW5zaW9uKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBHU1VCIGxvb2t1cFR5cGUgJHtsb29rdXBUeXBlfSBpcyBub3Qgc3VwcG9ydGVkYCk7XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IE9UUHJvY2Vzc29yIGZyb20gJy4vT1RQcm9jZXNzb3InO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHUE9TUHJvY2Vzc29yIGV4dGVuZHMgT1RQcm9jZXNzb3Ige1xuICBhcHBseVBvc2l0aW9uVmFsdWUoc2VxdWVuY2VJbmRleCwgdmFsdWUpIHtcbiAgICBsZXQgcG9zaXRpb24gPSB0aGlzLnBvc2l0aW9uc1t0aGlzLmdseXBoSXRlcmF0b3IucGVla0luZGV4KHNlcXVlbmNlSW5kZXgpXTtcbiAgICBpZiAodmFsdWUueEFkdmFuY2UgIT0gbnVsbCkge1xuICAgICAgcG9zaXRpb24ueEFkdmFuY2UgKz0gdmFsdWUueEFkdmFuY2U7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlLnlBZHZhbmNlICE9IG51bGwpIHtcbiAgICAgIHBvc2l0aW9uLnlBZHZhbmNlICs9IHZhbHVlLnlBZHZhbmNlO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZS54UGxhY2VtZW50ICE9IG51bGwpIHtcbiAgICAgIHBvc2l0aW9uLnhPZmZzZXQgKz0gdmFsdWUueFBsYWNlbWVudDtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUueVBsYWNlbWVudCAhPSBudWxsKSB7XG4gICAgICBwb3NpdGlvbi55T2Zmc2V0ICs9IHZhbHVlLnlQbGFjZW1lbnQ7XG4gICAgfVxuXG4gICAgLy8gQWRqdXN0bWVudHMgZm9yIGZvbnQgdmFyaWF0aW9uc1xuICAgIGxldCB2YXJpYXRpb25Qcm9jZXNzb3IgPSB0aGlzLmZvbnQuX3ZhcmlhdGlvblByb2Nlc3NvcjtcbiAgICBsZXQgdmFyaWF0aW9uU3RvcmUgPSB0aGlzLmZvbnQuR0RFRiAmJiB0aGlzLmZvbnQuR0RFRi5pdGVtVmFyaWF0aW9uU3RvcmU7XG4gICAgaWYgKHZhcmlhdGlvblByb2Nlc3NvciAmJiB2YXJpYXRpb25TdG9yZSkge1xuICAgICAgaWYgKHZhbHVlLnhQbGFEZXZpY2UpIHtcbiAgICAgICAgcG9zaXRpb24ueE9mZnNldCArPSB2YXJpYXRpb25Qcm9jZXNzb3IuZ2V0RGVsdGEodmFyaWF0aW9uU3RvcmUsIHZhbHVlLnhQbGFEZXZpY2UuYSwgdmFsdWUueFBsYURldmljZS5iKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHZhbHVlLnlQbGFEZXZpY2UpIHtcbiAgICAgICAgcG9zaXRpb24ueU9mZnNldCArPSB2YXJpYXRpb25Qcm9jZXNzb3IuZ2V0RGVsdGEodmFyaWF0aW9uU3RvcmUsIHZhbHVlLnlQbGFEZXZpY2UuYSwgdmFsdWUueVBsYURldmljZS5iKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHZhbHVlLnhBZHZEZXZpY2UpIHtcbiAgICAgICAgcG9zaXRpb24ueEFkdmFuY2UgKz0gdmFyaWF0aW9uUHJvY2Vzc29yLmdldERlbHRhKHZhcmlhdGlvblN0b3JlLCB2YWx1ZS54QWR2RGV2aWNlLmEsIHZhbHVlLnhBZHZEZXZpY2UuYik7XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWx1ZS55QWR2RGV2aWNlKSB7XG4gICAgICAgIHBvc2l0aW9uLnlBZHZhbmNlICs9IHZhcmlhdGlvblByb2Nlc3Nvci5nZXREZWx0YSh2YXJpYXRpb25TdG9yZSwgdmFsdWUueUFkdkRldmljZS5hLCB2YWx1ZS55QWR2RGV2aWNlLmIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRPRE86IGRldmljZSB0YWJsZXNcbiAgfVxuXG4gIGFwcGx5TG9va3VwKGxvb2t1cFR5cGUsIHRhYmxlKSB7XG4gICAgc3dpdGNoIChsb29rdXBUeXBlKSB7XG4gICAgICBjYXNlIDE6IHsgLy8gU2luZ2xlIHBvc2l0aW9uaW5nIHZhbHVlXG4gICAgICAgIGxldCBpbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5jb3ZlcmFnZSk7XG4gICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBzd2l0Y2ggKHRhYmxlLnZlcnNpb24pIHtcbiAgICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgICB0aGlzLmFwcGx5UG9zaXRpb25WYWx1ZSgwLCB0YWJsZS52YWx1ZSk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgMjpcbiAgICAgICAgICAgIHRoaXMuYXBwbHlQb3NpdGlvblZhbHVlKDAsIHRhYmxlLnZhbHVlcy5nZXQoaW5kZXgpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMjogeyAvLyBQYWlyIEFkanVzdG1lbnQgUG9zaXRpb25pbmdcbiAgICAgICAgbGV0IG5leHRHbHlwaCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5wZWVrKCk7XG4gICAgICAgIGlmICghbmV4dEdseXBoKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKTtcbiAgICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN3aXRjaCAodGFibGUudmVyc2lvbikge1xuICAgICAgICAgIGNhc2UgMTogLy8gQWRqdXN0bWVudHMgZm9yIGdseXBoIHBhaXJzXG4gICAgICAgICAgICBsZXQgc2V0ID0gdGFibGUucGFpclNldHMuZ2V0KGluZGV4KTtcblxuICAgICAgICAgICAgZm9yIChsZXQgcGFpciBvZiBzZXQpIHtcbiAgICAgICAgICAgICAgaWYgKHBhaXIuc2Vjb25kR2x5cGggPT09IG5leHRHbHlwaC5pZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYXBwbHlQb3NpdGlvblZhbHVlKDAsIHBhaXIudmFsdWUxKTtcbiAgICAgICAgICAgICAgICB0aGlzLmFwcGx5UG9zaXRpb25WYWx1ZSgxLCBwYWlyLnZhbHVlMik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuXG4gICAgICAgICAgY2FzZSAyOiAvLyBDbGFzcyBwYWlyIGFkanVzdG1lbnRcbiAgICAgICAgICAgIGxldCBjbGFzczEgPSB0aGlzLmdldENsYXNzSUQodGhpcy5nbHlwaEl0ZXJhdG9yLmN1ci5pZCwgdGFibGUuY2xhc3NEZWYxKTtcbiAgICAgICAgICAgIGxldCBjbGFzczIgPSB0aGlzLmdldENsYXNzSUQobmV4dEdseXBoLmlkLCB0YWJsZS5jbGFzc0RlZjIpO1xuICAgICAgICAgICAgaWYgKGNsYXNzMSA9PT0gLTEgfHwgY2xhc3MyID09PSAtMSkge1xuICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHZhciBwYWlyID0gdGFibGUuY2xhc3NSZWNvcmRzLmdldChjbGFzczEpLmdldChjbGFzczIpO1xuICAgICAgICAgICAgdGhpcy5hcHBseVBvc2l0aW9uVmFsdWUoMCwgcGFpci52YWx1ZTEpO1xuICAgICAgICAgICAgdGhpcy5hcHBseVBvc2l0aW9uVmFsdWUoMSwgcGFpci52YWx1ZTIpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY2FzZSAzOiB7IC8vIEN1cnNpdmUgQXR0YWNobWVudCBQb3NpdGlvbmluZ1xuICAgICAgICBsZXQgbmV4dEluZGV4ID0gdGhpcy5nbHlwaEl0ZXJhdG9yLnBlZWtJbmRleCgpO1xuICAgICAgICBsZXQgbmV4dEdseXBoID0gdGhpcy5nbHlwaHNbbmV4dEluZGV4XTtcbiAgICAgICAgaWYgKCFuZXh0R2x5cGgpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgY3VyUmVjb3JkID0gdGFibGUuZW50cnlFeGl0UmVjb3Jkc1t0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UpXTtcbiAgICAgICAgaWYgKCFjdXJSZWNvcmQgfHwgIWN1clJlY29yZC5leGl0QW5jaG9yKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG5leHRSZWNvcmQgPSB0YWJsZS5lbnRyeUV4aXRSZWNvcmRzW3RoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5jb3ZlcmFnZSwgbmV4dEdseXBoLmlkKV07XG4gICAgICAgIGlmICghbmV4dFJlY29yZCB8fCAhbmV4dFJlY29yZC5lbnRyeUFuY2hvcikge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBlbnRyeSA9IHRoaXMuZ2V0QW5jaG9yKG5leHRSZWNvcmQuZW50cnlBbmNob3IpO1xuICAgICAgICBsZXQgZXhpdCA9IHRoaXMuZ2V0QW5jaG9yKGN1clJlY29yZC5leGl0QW5jaG9yKTtcblxuICAgICAgICBsZXQgY3VyID0gdGhpcy5wb3NpdGlvbnNbdGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4XTtcbiAgICAgICAgbGV0IG5leHQgPSB0aGlzLnBvc2l0aW9uc1tuZXh0SW5kZXhdO1xuICAgICAgICBsZXQgZDtcblxuICAgICAgICBzd2l0Y2ggKHRoaXMuZGlyZWN0aW9uKSB7XG4gICAgICAgICAgY2FzZSAnbHRyJzpcbiAgICAgICAgICAgIGN1ci54QWR2YW5jZSA9IGV4aXQueCArIGN1ci54T2Zmc2V0O1xuXG4gICAgICAgICAgICBkID0gZW50cnkueCArIG5leHQueE9mZnNldDtcbiAgICAgICAgICAgIG5leHQueEFkdmFuY2UgLT0gZDtcbiAgICAgICAgICAgIG5leHQueE9mZnNldCAtPSBkO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICdydGwnOlxuICAgICAgICAgICAgZCA9IGV4aXQueCArIGN1ci54T2Zmc2V0O1xuICAgICAgICAgICAgY3VyLnhBZHZhbmNlIC09IGQ7XG4gICAgICAgICAgICBjdXIueE9mZnNldCAtPSBkO1xuICAgICAgICAgICAgbmV4dC54QWR2YW5jZSA9IGVudHJ5LnggKyBuZXh0LnhPZmZzZXQ7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmdseXBoSXRlcmF0b3IuZmxhZ3MucmlnaHRUb0xlZnQpIHtcbiAgICAgICAgICB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmN1cnNpdmVBdHRhY2htZW50ID0gbmV4dEluZGV4O1xuICAgICAgICAgIGN1ci55T2Zmc2V0ID0gZW50cnkueSAtIGV4aXQueTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBuZXh0R2x5cGguY3Vyc2l2ZUF0dGFjaG1lbnQgPSB0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXg7XG4gICAgICAgICAgY3VyLnlPZmZzZXQgPSBleGl0LnkgLSBlbnRyeS55O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgNDogeyAvLyBNYXJrIHRvIGJhc2UgcG9zaXRpb25pbmdcbiAgICAgICAgbGV0IG1hcmtJbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5tYXJrQ292ZXJhZ2UpO1xuICAgICAgICBpZiAobWFya0luZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHNlYXJjaCBiYWNrd2FyZCBmb3IgYSBiYXNlIGdseXBoXG4gICAgICAgIGxldCBiYXNlR2x5cGhJbmRleCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleDtcbiAgICAgICAgd2hpbGUgKC0tYmFzZUdseXBoSW5kZXggPj0gMCAmJiAodGhpcy5nbHlwaHNbYmFzZUdseXBoSW5kZXhdLmlzTWFyayB8fCB0aGlzLmdseXBoc1tiYXNlR2x5cGhJbmRleF0ubGlnYXR1cmVDb21wb25lbnQgPiAwKSk7XG5cbiAgICAgICAgaWYgKGJhc2VHbHlwaEluZGV4IDwgMCkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBiYXNlSW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuYmFzZUNvdmVyYWdlLCB0aGlzLmdseXBoc1tiYXNlR2x5cGhJbmRleF0uaWQpO1xuICAgICAgICBpZiAoYmFzZUluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBtYXJrUmVjb3JkID0gdGFibGUubWFya0FycmF5W21hcmtJbmRleF07XG4gICAgICAgIGxldCBiYXNlQW5jaG9yID0gdGFibGUuYmFzZUFycmF5W2Jhc2VJbmRleF1bbWFya1JlY29yZC5jbGFzc107XG4gICAgICAgIHRoaXMuYXBwbHlBbmNob3IobWFya1JlY29yZCwgYmFzZUFuY2hvciwgYmFzZUdseXBoSW5kZXgpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgY2FzZSA1OiB7IC8vIE1hcmsgdG8gbGlnYXR1cmUgcG9zaXRpb25pbmdcbiAgICAgICAgbGV0IG1hcmtJbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5tYXJrQ292ZXJhZ2UpO1xuICAgICAgICBpZiAobWFya0luZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHNlYXJjaCBiYWNrd2FyZCBmb3IgYSBiYXNlIGdseXBoXG4gICAgICAgIGxldCBiYXNlR2x5cGhJbmRleCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleDtcbiAgICAgICAgd2hpbGUgKC0tYmFzZUdseXBoSW5kZXggPj0gMCAmJiB0aGlzLmdseXBoc1tiYXNlR2x5cGhJbmRleF0uaXNNYXJrKTtcblxuICAgICAgICBpZiAoYmFzZUdseXBoSW5kZXggPCAwKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxpZ0luZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmxpZ2F0dXJlQ292ZXJhZ2UsIHRoaXMuZ2x5cGhzW2Jhc2VHbHlwaEluZGV4XS5pZCk7XG4gICAgICAgIGlmIChsaWdJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbGlnQXR0YWNoID0gdGFibGUubGlnYXR1cmVBcnJheVtsaWdJbmRleF07XG4gICAgICAgIGxldCBtYXJrR2x5cGggPSB0aGlzLmdseXBoSXRlcmF0b3IuY3VyO1xuICAgICAgICBsZXQgbGlnR2x5cGggPSB0aGlzLmdseXBoc1tiYXNlR2x5cGhJbmRleF07XG4gICAgICAgIGxldCBjb21wSW5kZXggPSBsaWdHbHlwaC5saWdhdHVyZUlEICYmIGxpZ0dseXBoLmxpZ2F0dXJlSUQgPT09IG1hcmtHbHlwaC5saWdhdHVyZUlEICYmIChtYXJrR2x5cGgubGlnYXR1cmVDb21wb25lbnQgPiAwKVxuICAgICAgICAgID8gTWF0aC5taW4obWFya0dseXBoLmxpZ2F0dXJlQ29tcG9uZW50LCBsaWdHbHlwaC5jb2RlUG9pbnRzLmxlbmd0aCkgLSAxXG4gICAgICAgICAgOiBsaWdHbHlwaC5jb2RlUG9pbnRzLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgbGV0IG1hcmtSZWNvcmQgPSB0YWJsZS5tYXJrQXJyYXlbbWFya0luZGV4XTtcbiAgICAgICAgbGV0IGJhc2VBbmNob3IgPSBsaWdBdHRhY2hbY29tcEluZGV4XVttYXJrUmVjb3JkLmNsYXNzXTtcbiAgICAgICAgdGhpcy5hcHBseUFuY2hvcihtYXJrUmVjb3JkLCBiYXNlQW5jaG9yLCBiYXNlR2x5cGhJbmRleCk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDY6IHsgLy8gTWFyayB0byBtYXJrIHBvc2l0aW9uaW5nXG4gICAgICAgIGxldCBtYXJrMUluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLm1hcmsxQ292ZXJhZ2UpO1xuICAgICAgICBpZiAobWFyazFJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBnZXQgdGhlIHByZXZpb3VzIG1hcmsgdG8gYXR0YWNoIHRvXG4gICAgICAgIGxldCBwcmV2SW5kZXggPSB0aGlzLmdseXBoSXRlcmF0b3IucGVla0luZGV4KC0xKTtcbiAgICAgICAgbGV0IHByZXYgPSB0aGlzLmdseXBoc1twcmV2SW5kZXhdO1xuICAgICAgICBpZiAoIXByZXYgfHwgIXByZXYuaXNNYXJrKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGN1ciA9IHRoaXMuZ2x5cGhJdGVyYXRvci5jdXI7XG5cbiAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBsb2dpYyB3YXMgYm9ycm93ZWQgZnJvbSBIYXJmYnV6elxuICAgICAgICBsZXQgZ29vZCA9IGZhbHNlO1xuICAgICAgICBpZiAoY3VyLmxpZ2F0dXJlSUQgPT09IHByZXYubGlnYXR1cmVJRCkge1xuICAgICAgICAgIGlmICghY3VyLmxpZ2F0dXJlSUQpIHsgLy8gTWFya3MgYmVsb25naW5nIHRvIHRoZSBzYW1lIGJhc2VcbiAgICAgICAgICAgIGdvb2QgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSBpZiAoY3VyLmxpZ2F0dXJlQ29tcG9uZW50ID09PSBwcmV2LmxpZ2F0dXJlQ29tcG9uZW50KSB7IC8vIE1hcmtzIGJlbG9uZ2luZyB0byB0aGUgc2FtZSBsaWdhdHVyZSBjb21wb25lbnRcbiAgICAgICAgICAgIGdvb2QgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBJZiBsaWdhdHVyZSBpZHMgZG9uJ3QgbWF0Y2gsIGl0IG1heSBiZSB0aGUgY2FzZSB0aGF0IG9uZSBvZiB0aGUgbWFya3NcbiAgICAgICAgICAvLyBpdHNlbGYgaXMgYSBsaWdhdHVyZSwgaW4gd2hpY2ggY2FzZSBtYXRjaC5cbiAgICAgICAgICBpZiAoKGN1ci5saWdhdHVyZUlEICYmICFjdXIubGlnYXR1cmVDb21wb25lbnQpIHx8IChwcmV2LmxpZ2F0dXJlSUQgJiYgIXByZXYubGlnYXR1cmVDb21wb25lbnQpKSB7XG4gICAgICAgICAgICBnb29kID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWdvb2QpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWFyazJJbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5tYXJrMkNvdmVyYWdlLCBwcmV2LmlkKTtcbiAgICAgICAgaWYgKG1hcmsySW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1hcmtSZWNvcmQgPSB0YWJsZS5tYXJrMUFycmF5W21hcmsxSW5kZXhdO1xuICAgICAgICBsZXQgYmFzZUFuY2hvciA9IHRhYmxlLm1hcmsyQXJyYXlbbWFyazJJbmRleF1bbWFya1JlY29yZC5jbGFzc107XG4gICAgICAgIHRoaXMuYXBwbHlBbmNob3IobWFya1JlY29yZCwgYmFzZUFuY2hvciwgcHJldkluZGV4KTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgNzogLy8gQ29udGV4dHVhbCBwb3NpdGlvbmluZ1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBseUNvbnRleHQodGFibGUpO1xuXG4gICAgICBjYXNlIDg6IC8vIENoYWluaW5nIGNvbnRleHR1YWwgcG9zaXRpb25pbmdcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlDaGFpbmluZ0NvbnRleHQodGFibGUpO1xuXG4gICAgICBjYXNlIDk6IC8vIEV4dGVuc2lvbiBwb3NpdGlvbmluZ1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBseUxvb2t1cCh0YWJsZS5sb29rdXBUeXBlLCB0YWJsZS5leHRlbnNpb24pO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIEdQT1MgdGFibGU6ICR7bG9va3VwVHlwZX1gKTtcbiAgICB9XG4gIH1cblxuICBhcHBseUFuY2hvcihtYXJrUmVjb3JkLCBiYXNlQW5jaG9yLCBiYXNlR2x5cGhJbmRleCkge1xuICAgIGxldCBiYXNlQ29vcmRzID0gdGhpcy5nZXRBbmNob3IoYmFzZUFuY2hvcik7XG4gICAgbGV0IG1hcmtDb29yZHMgPSB0aGlzLmdldEFuY2hvcihtYXJrUmVjb3JkLm1hcmtBbmNob3IpO1xuXG4gICAgbGV0IGJhc2VQb3MgPSB0aGlzLnBvc2l0aW9uc1tiYXNlR2x5cGhJbmRleF07XG4gICAgbGV0IG1hcmtQb3MgPSB0aGlzLnBvc2l0aW9uc1t0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXhdO1xuXG4gICAgbWFya1Bvcy54T2Zmc2V0ID0gYmFzZUNvb3Jkcy54IC0gbWFya0Nvb3Jkcy54O1xuICAgIG1hcmtQb3MueU9mZnNldCA9IGJhc2VDb29yZHMueSAtIG1hcmtDb29yZHMueTtcbiAgICB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLm1hcmtBdHRhY2htZW50ID0gYmFzZUdseXBoSW5kZXg7XG4gIH1cblxuICBnZXRBbmNob3IoYW5jaG9yKSB7XG4gICAgLy8gVE9ETzogY29udG91ciBwb2ludCwgZGV2aWNlIHRhYmxlc1xuICAgIGxldCB4ID0gYW5jaG9yLnhDb29yZGluYXRlO1xuICAgIGxldCB5ID0gYW5jaG9yLnlDb29yZGluYXRlO1xuXG4gICAgLy8gQWRqdXN0bWVudHMgZm9yIGZvbnQgdmFyaWF0aW9uc1xuICAgIGxldCB2YXJpYXRpb25Qcm9jZXNzb3IgPSB0aGlzLmZvbnQuX3ZhcmlhdGlvblByb2Nlc3NvcjtcbiAgICBsZXQgdmFyaWF0aW9uU3RvcmUgPSB0aGlzLmZvbnQuR0RFRiAmJiB0aGlzLmZvbnQuR0RFRi5pdGVtVmFyaWF0aW9uU3RvcmU7XG4gICAgaWYgKHZhcmlhdGlvblByb2Nlc3NvciAmJiB2YXJpYXRpb25TdG9yZSkge1xuICAgICAgaWYgKGFuY2hvci54RGV2aWNlVGFibGUpIHtcbiAgICAgICAgeCArPSB2YXJpYXRpb25Qcm9jZXNzb3IuZ2V0RGVsdGEodmFyaWF0aW9uU3RvcmUsIGFuY2hvci54RGV2aWNlVGFibGUuYSwgYW5jaG9yLnhEZXZpY2VUYWJsZS5iKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGFuY2hvci55RGV2aWNlVGFibGUpIHtcbiAgICAgICAgeSArPSB2YXJpYXRpb25Qcm9jZXNzb3IuZ2V0RGVsdGEodmFyaWF0aW9uU3RvcmUsIGFuY2hvci55RGV2aWNlVGFibGUuYSwgYW5jaG9yLnlEZXZpY2VUYWJsZS5iKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4geyB4LCB5IH07XG4gIH1cblxuICBhcHBseUZlYXR1cmVzKHVzZXJGZWF0dXJlcywgZ2x5cGhzLCBhZHZhbmNlcykge1xuICAgIHN1cGVyLmFwcGx5RmVhdHVyZXModXNlckZlYXR1cmVzLCBnbHlwaHMsIGFkdmFuY2VzKTtcblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5nbHlwaHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHRoaXMuZml4Q3Vyc2l2ZUF0dGFjaG1lbnQoaSk7XG4gICAgfVxuXG4gICAgdGhpcy5maXhNYXJrQXR0YWNobWVudCgpO1xuICB9XG5cbiAgZml4Q3Vyc2l2ZUF0dGFjaG1lbnQoaSkge1xuICAgIGxldCBnbHlwaCA9IHRoaXMuZ2x5cGhzW2ldO1xuICAgIGlmIChnbHlwaC5jdXJzaXZlQXR0YWNobWVudCAhPSBudWxsKSB7XG4gICAgICBsZXQgaiA9IGdseXBoLmN1cnNpdmVBdHRhY2htZW50O1xuXG4gICAgICBnbHlwaC5jdXJzaXZlQXR0YWNobWVudCA9IG51bGw7XG4gICAgICB0aGlzLmZpeEN1cnNpdmVBdHRhY2htZW50KGopO1xuXG4gICAgICB0aGlzLnBvc2l0aW9uc1tpXS55T2Zmc2V0ICs9IHRoaXMucG9zaXRpb25zW2pdLnlPZmZzZXQ7XG4gICAgfVxuICB9XG5cbiAgZml4TWFya0F0dGFjaG1lbnQoKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmdseXBocy5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGdseXBoID0gdGhpcy5nbHlwaHNbaV07XG4gICAgICBpZiAoZ2x5cGgubWFya0F0dGFjaG1lbnQgIT0gbnVsbCkge1xuICAgICAgICBsZXQgaiA9IGdseXBoLm1hcmtBdHRhY2htZW50O1xuXG4gICAgICAgIHRoaXMucG9zaXRpb25zW2ldLnhPZmZzZXQgKz0gdGhpcy5wb3NpdGlvbnNbal0ueE9mZnNldDtcbiAgICAgICAgdGhpcy5wb3NpdGlvbnNbaV0ueU9mZnNldCArPSB0aGlzLnBvc2l0aW9uc1tqXS55T2Zmc2V0O1xuXG4gICAgICAgIGlmICh0aGlzLmRpcmVjdGlvbiA9PT0gJ2x0cicpIHtcbiAgICAgICAgICBmb3IgKGxldCBrID0gajsgayA8IGk7IGsrKykge1xuICAgICAgICAgICAgdGhpcy5wb3NpdGlvbnNbaV0ueE9mZnNldCAtPSB0aGlzLnBvc2l0aW9uc1trXS54QWR2YW5jZTtcbiAgICAgICAgICAgIHRoaXMucG9zaXRpb25zW2ldLnlPZmZzZXQgLT0gdGhpcy5wb3NpdGlvbnNba10ueUFkdmFuY2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZvciAobGV0IGsgPSBqICsgMTsgayA8IGkgKyAxOyBrKyspIHtcbiAgICAgICAgICAgIHRoaXMucG9zaXRpb25zW2ldLnhPZmZzZXQgKz0gdGhpcy5wb3NpdGlvbnNba10ueEFkdmFuY2U7XG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uc1tpXS55T2Zmc2V0ICs9IHRoaXMucG9zaXRpb25zW2tdLnlBZHZhbmNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCBHbHlwaCBmcm9tICcuL0dseXBoJztcbmltcG9ydCBQYXRoIGZyb20gJy4vUGF0aCc7XG5pbXBvcnQgQkJveCBmcm9tICcuL0JCb3gnO1xuaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIFRoZSBoZWFkZXIgZm9yIGJvdGggc2ltcGxlIGFuZCBjb21wb3NpdGUgZ2x5cGhzXG5sZXQgR2x5ZkhlYWRlciA9IG5ldyByLlN0cnVjdCh7XG4gIG51bWJlck9mQ29udG91cnM6IHIuaW50MTYsIC8vIGlmIG5lZ2F0aXZlLCB0aGlzIGlzIGEgY29tcG9zaXRlIGdseXBoXG4gIHhNaW46ICAgICAgICAgICAgIHIuaW50MTYsXG4gIHlNaW46ICAgICAgICAgICAgIHIuaW50MTYsXG4gIHhNYXg6ICAgICAgICAgICAgIHIuaW50MTYsXG4gIHlNYXg6ICAgICAgICAgICAgIHIuaW50MTZcbn0pO1xuXG4vLyBGbGFncyBmb3Igc2ltcGxlIGdseXBoc1xuY29uc3QgT05fQ1VSVkUgICAgICAgID0gMSA8PCAwO1xuY29uc3QgWF9TSE9SVF9WRUNUT1IgID0gMSA8PCAxO1xuY29uc3QgWV9TSE9SVF9WRUNUT1IgID0gMSA8PCAyO1xuY29uc3QgUkVQRUFUICAgICAgICAgID0gMSA8PCAzO1xuY29uc3QgU0FNRV9YICAgICAgICAgID0gMSA8PCA0O1xuY29uc3QgU0FNRV9ZICAgICAgICAgID0gMSA8PCA1O1xuXG4vLyBGbGFncyBmb3IgY29tcG9zaXRlIGdseXBoc1xuY29uc3QgQVJHXzFfQU5EXzJfQVJFX1dPUkRTICAgICA9IDEgPDwgMDtcbmNvbnN0IEFSR1NfQVJFX1hZX1ZBTFVFUyAgICAgICAgPSAxIDw8IDE7XG5jb25zdCBST1VORF9YWV9UT19HUklEICAgICAgICAgID0gMSA8PCAyO1xuY29uc3QgV0VfSEFWRV9BX1NDQUxFICAgICAgICAgICA9IDEgPDwgMztcbmNvbnN0IE1PUkVfQ09NUE9ORU5UUyAgICAgICAgICAgPSAxIDw8IDU7XG5jb25zdCBXRV9IQVZFX0FOX1hfQU5EX1lfU0NBTEUgID0gMSA8PCA2O1xuY29uc3QgV0VfSEFWRV9BX1RXT19CWV9UV08gICAgICA9IDEgPDwgNztcbmNvbnN0IFdFX0hBVkVfSU5TVFJVQ1RJT05TICAgICAgPSAxIDw8IDg7XG5jb25zdCBVU0VfTVlfTUVUUklDUyAgICAgICAgICAgID0gMSA8PCA5O1xuY29uc3QgT1ZFUkxBUF9DT01QT1VORCAgICAgICAgICA9IDEgPDwgMTA7XG5jb25zdCBTQ0FMRURfQ09NUE9ORU5UX09GRlNFVCAgID0gMSA8PCAxMTtcbmNvbnN0IFVOU0NBTEVEX0NPTVBPTkVOVF9PRkZTRVQgPSAxIDw8IDEyO1xuXG4vLyBSZXByZXNlbnRzIGEgcG9pbnQgaW4gYSBzaW1wbGUgZ2x5cGhcbmV4cG9ydCBjbGFzcyBQb2ludCB7XG4gIGNvbnN0cnVjdG9yKG9uQ3VydmUsIGVuZENvbnRvdXIsIHggPSAwLCB5ID0gMCkge1xuICAgIHRoaXMub25DdXJ2ZSA9IG9uQ3VydmU7XG4gICAgdGhpcy5lbmRDb250b3VyID0gZW5kQ29udG91cjtcbiAgICB0aGlzLnggPSB4O1xuICAgIHRoaXMueSA9IHk7XG4gIH1cblxuICBjb3B5KCkge1xuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcy5vbkN1cnZlLCB0aGlzLmVuZENvbnRvdXIsIHRoaXMueCwgdGhpcy55KTtcbiAgfVxufVxuXG4vLyBSZXByZXNlbnRzIGEgY29tcG9uZW50IGluIGEgY29tcG9zaXRlIGdseXBoXG5jbGFzcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3RvcihnbHlwaElELCBkeCwgZHkpIHtcbiAgICB0aGlzLmdseXBoSUQgPSBnbHlwaElEO1xuICAgIHRoaXMuZHggPSBkeDtcbiAgICB0aGlzLmR5ID0gZHk7XG4gICAgdGhpcy5wb3MgPSAwO1xuICAgIHRoaXMuc2NhbGVYID0gdGhpcy5zY2FsZVkgPSAxO1xuICAgIHRoaXMuc2NhbGUwMSA9IHRoaXMuc2NhbGUxMCA9IDA7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgVHJ1ZVR5cGUgZ2x5cGguXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRURkdseXBoIGV4dGVuZHMgR2x5cGgge1xuICB0eXBlID0gJ1RURic7XG5cbiAgLy8gUGFyc2VzIGp1c3QgdGhlIGdseXBoIGhlYWRlciBhbmQgcmV0dXJucyB0aGUgYm91bmRpbmcgYm94XG4gIF9nZXRDQm94KGludGVybmFsKSB7XG4gICAgLy8gV2UgbmVlZCB0byBkZWNvZGUgdGhlIGdseXBoIGlmIHZhcmlhdGlvbiBwcm9jZXNzaW5nIGlzIHJlcXVlc3RlZCxcbiAgICAvLyBzbyBpdCdzIGVhc2llciBqdXN0IHRvIHJlY29tcHV0ZSB0aGUgcGF0aCdzIGNib3ggYWZ0ZXIgZGVjb2RpbmcuXG4gICAgaWYgKHRoaXMuX2ZvbnQuX3ZhcmlhdGlvblByb2Nlc3NvciAmJiAhaW50ZXJuYWwpIHtcbiAgICAgIHJldHVybiB0aGlzLnBhdGguY2JveDtcbiAgICB9XG5cbiAgICBsZXQgc3RyZWFtID0gdGhpcy5fZm9udC5fZ2V0VGFibGVTdHJlYW0oJ2dseWYnKTtcbiAgICBzdHJlYW0ucG9zICs9IHRoaXMuX2ZvbnQubG9jYS5vZmZzZXRzW3RoaXMuaWRdO1xuICAgIGxldCBnbHlwaCA9IEdseWZIZWFkZXIuZGVjb2RlKHN0cmVhbSk7XG5cbiAgICBsZXQgY2JveCA9IG5ldyBCQm94KGdseXBoLnhNaW4sIGdseXBoLnlNaW4sIGdseXBoLnhNYXgsIGdseXBoLnlNYXgpO1xuICAgIHJldHVybiBPYmplY3QuZnJlZXplKGNib3gpO1xuICB9XG5cbiAgLy8gUGFyc2VzIGEgc2luZ2xlIGdseXBoIGNvb3JkaW5hdGVcbiAgX3BhcnNlR2x5cGhDb29yZChzdHJlYW0sIHByZXYsIHNob3J0LCBzYW1lKSB7XG4gICAgaWYgKHNob3J0KSB7XG4gICAgICB2YXIgdmFsID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgaWYgKCFzYW1lKSB7XG4gICAgICAgIHZhbCA9IC12YWw7XG4gICAgICB9XG5cbiAgICAgIHZhbCArPSBwcmV2O1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoc2FtZSkge1xuICAgICAgICB2YXIgdmFsID0gcHJldjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciB2YWwgPSBwcmV2ICsgc3RyZWFtLnJlYWRJbnQxNkJFKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbDtcbiAgfVxuXG4gIC8vIERlY29kZXMgdGhlIGdseXBoIGRhdGEgaW50byBwb2ludHMgZm9yIHNpbXBsZSBnbHlwaHMsXG4gIC8vIG9yIGNvbXBvbmVudHMgZm9yIGNvbXBvc2l0ZSBnbHlwaHNcbiAgX2RlY29kZSgpIHtcbiAgICBsZXQgZ2x5ZlBvcyA9IHRoaXMuX2ZvbnQubG9jYS5vZmZzZXRzW3RoaXMuaWRdO1xuICAgIGxldCBuZXh0UG9zID0gdGhpcy5fZm9udC5sb2NhLm9mZnNldHNbdGhpcy5pZCArIDFdO1xuXG4gICAgLy8gTm90aGluZyB0byBkbyBpZiB0aGVyZSBpcyBubyBkYXRhIGZvciB0aGlzIGdseXBoXG4gICAgaWYgKGdseWZQb3MgPT09IG5leHRQb3MpIHsgcmV0dXJuIG51bGw7IH1cblxuICAgIGxldCBzdHJlYW0gPSB0aGlzLl9mb250Ll9nZXRUYWJsZVN0cmVhbSgnZ2x5ZicpO1xuICAgIHN0cmVhbS5wb3MgKz0gZ2x5ZlBvcztcbiAgICBsZXQgc3RhcnRQb3MgPSBzdHJlYW0ucG9zO1xuXG4gICAgbGV0IGdseXBoID0gR2x5ZkhlYWRlci5kZWNvZGUoc3RyZWFtKTtcblxuICAgIGlmIChnbHlwaC5udW1iZXJPZkNvbnRvdXJzID4gMCkge1xuICAgICAgdGhpcy5fZGVjb2RlU2ltcGxlKGdseXBoLCBzdHJlYW0pO1xuXG4gICAgfSBlbHNlIGlmIChnbHlwaC5udW1iZXJPZkNvbnRvdXJzIDwgMCkge1xuICAgICAgdGhpcy5fZGVjb2RlQ29tcG9zaXRlKGdseXBoLCBzdHJlYW0sIHN0YXJ0UG9zKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZ2x5cGg7XG4gIH1cblxuICBfZGVjb2RlU2ltcGxlKGdseXBoLCBzdHJlYW0pIHtcbiAgICAvLyB0aGlzIGlzIGEgc2ltcGxlIGdseXBoXG4gICAgZ2x5cGgucG9pbnRzID0gW107XG5cbiAgICBsZXQgZW5kUHRzT2ZDb250b3VycyA9IG5ldyByLkFycmF5KHIudWludDE2LCBnbHlwaC5udW1iZXJPZkNvbnRvdXJzKS5kZWNvZGUoc3RyZWFtKTtcbiAgICBnbHlwaC5pbnN0cnVjdGlvbnMgPSBuZXcgci5BcnJheShyLnVpbnQ4LCByLnVpbnQxNikuZGVjb2RlKHN0cmVhbSk7XG5cbiAgICBsZXQgZmxhZ3MgPSBbXTtcbiAgICBsZXQgbnVtQ29vcmRzID0gZW5kUHRzT2ZDb250b3Vyc1tlbmRQdHNPZkNvbnRvdXJzLmxlbmd0aCAtIDFdICsgMTtcblxuICAgIHdoaWxlIChmbGFncy5sZW5ndGggPCBudW1Db29yZHMpIHtcbiAgICAgIHZhciBmbGFnID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgZmxhZ3MucHVzaChmbGFnKTtcblxuICAgICAgLy8gY2hlY2sgZm9yIHJlcGVhdCBmbGFnXG4gICAgICBpZiAoZmxhZyAmIFJFUEVBVCkge1xuICAgICAgICBsZXQgY291bnQgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG4gICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgY291bnQ7IGorKykge1xuICAgICAgICAgIGZsYWdzLnB1c2goZmxhZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZsYWdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgZmxhZyA9IGZsYWdzW2ldO1xuICAgICAgbGV0IHBvaW50ID0gbmV3IFBvaW50KCEhKGZsYWcgJiBPTl9DVVJWRSksIGVuZFB0c09mQ29udG91cnMuaW5kZXhPZihpKSA+PSAwLCAwLCAwKTtcbiAgICAgIGdseXBoLnBvaW50cy5wdXNoKHBvaW50KTtcbiAgICB9XG5cbiAgICBsZXQgcHggPSAwO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZmxhZ3MubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciBmbGFnID0gZmxhZ3NbaV07XG4gICAgICBnbHlwaC5wb2ludHNbaV0ueCA9IHB4ID0gdGhpcy5fcGFyc2VHbHlwaENvb3JkKHN0cmVhbSwgcHgsIGZsYWcgJiBYX1NIT1JUX1ZFQ1RPUiwgZmxhZyAmIFNBTUVfWCk7XG4gICAgfVxuXG4gICAgbGV0IHB5ID0gMDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZsYWdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgZmxhZyA9IGZsYWdzW2ldO1xuICAgICAgZ2x5cGgucG9pbnRzW2ldLnkgPSBweSA9IHRoaXMuX3BhcnNlR2x5cGhDb29yZChzdHJlYW0sIHB5LCBmbGFnICYgWV9TSE9SVF9WRUNUT1IsIGZsYWcgJiBTQU1FX1kpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9mb250Ll92YXJpYXRpb25Qcm9jZXNzb3IpIHtcbiAgICAgIGxldCBwb2ludHMgPSBnbHlwaC5wb2ludHMuc2xpY2UoKTtcbiAgICAgIHBvaW50cy5wdXNoKC4uLnRoaXMuX2dldFBoYW50b21Qb2ludHMoZ2x5cGgpKTtcblxuICAgICAgdGhpcy5fZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yLnRyYW5zZm9ybVBvaW50cyh0aGlzLmlkLCBwb2ludHMpO1xuICAgICAgZ2x5cGgucGhhbnRvbVBvaW50cyA9IHBvaW50cy5zbGljZSgtNCk7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgX2RlY29kZUNvbXBvc2l0ZShnbHlwaCwgc3RyZWFtLCBvZmZzZXQgPSAwKSB7XG4gICAgLy8gdGhpcyBpcyBhIGNvbXBvc2l0ZSBnbHlwaFxuICAgIGdseXBoLmNvbXBvbmVudHMgPSBbXTtcbiAgICBsZXQgaGF2ZUluc3RydWN0aW9ucyA9IGZhbHNlO1xuICAgIGxldCBmbGFncyA9IE1PUkVfQ09NUE9ORU5UUztcblxuICAgIHdoaWxlIChmbGFncyAmIE1PUkVfQ09NUE9ORU5UUykge1xuICAgICAgZmxhZ3MgPSBzdHJlYW0ucmVhZFVJbnQxNkJFKCk7XG4gICAgICBsZXQgZ1BvcyA9IHN0cmVhbS5wb3MgLSBvZmZzZXQ7XG4gICAgICBsZXQgZ2x5cGhJRCA9IHN0cmVhbS5yZWFkVUludDE2QkUoKTtcbiAgICAgIGlmICghaGF2ZUluc3RydWN0aW9ucykge1xuICAgICAgICBoYXZlSW5zdHJ1Y3Rpb25zID0gKGZsYWdzICYgV0VfSEFWRV9JTlNUUlVDVElPTlMpICE9PSAwO1xuICAgICAgfVxuXG4gICAgICBpZiAoZmxhZ3MgJiBBUkdfMV9BTkRfMl9BUkVfV09SRFMpIHtcbiAgICAgICAgdmFyIGR4ID0gc3RyZWFtLnJlYWRJbnQxNkJFKCk7XG4gICAgICAgIHZhciBkeSA9IHN0cmVhbS5yZWFkSW50MTZCRSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIGR4ID0gc3RyZWFtLnJlYWRJbnQ4KCk7XG4gICAgICAgIHZhciBkeSA9IHN0cmVhbS5yZWFkSW50OCgpO1xuICAgICAgfVxuXG4gICAgICB2YXIgY29tcG9uZW50ID0gbmV3IENvbXBvbmVudChnbHlwaElELCBkeCwgZHkpO1xuICAgICAgY29tcG9uZW50LnBvcyA9IGdQb3M7XG5cbiAgICAgIGlmIChmbGFncyAmIFdFX0hBVkVfQV9TQ0FMRSkge1xuICAgICAgICAvLyBmaXhlZCBudW1iZXIgd2l0aCAxNCBiaXRzIG9mIGZyYWN0aW9uXG4gICAgICAgIGNvbXBvbmVudC5zY2FsZVggPVxuICAgICAgICBjb21wb25lbnQuc2NhbGVZID0gKChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMjQpIHwgKHN0cmVhbS5yZWFkVUludDgoKSA8PCAxNikpIC8gMTA3Mzc0MTgyNDtcblxuICAgICAgfSBlbHNlIGlmIChmbGFncyAmIFdFX0hBVkVfQU5fWF9BTkRfWV9TQ0FMRSkge1xuICAgICAgICBjb21wb25lbnQuc2NhbGVYID0gKChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMjQpIHwgKHN0cmVhbS5yZWFkVUludDgoKSA8PCAxNikpIC8gMTA3Mzc0MTgyNDtcbiAgICAgICAgY29tcG9uZW50LnNjYWxlWSA9ICgoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDI0KSB8IChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMTYpKSAvIDEwNzM3NDE4MjQ7XG5cbiAgICAgIH0gZWxzZSBpZiAoZmxhZ3MgJiBXRV9IQVZFX0FfVFdPX0JZX1RXTykge1xuICAgICAgICBjb21wb25lbnQuc2NhbGVYICA9ICgoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDI0KSB8IChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMTYpKSAvIDEwNzM3NDE4MjQ7XG4gICAgICAgIGNvbXBvbmVudC5zY2FsZTAxID0gKChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMjQpIHwgKHN0cmVhbS5yZWFkVUludDgoKSA8PCAxNikpIC8gMTA3Mzc0MTgyNDtcbiAgICAgICAgY29tcG9uZW50LnNjYWxlMTAgPSAoKHN0cmVhbS5yZWFkVUludDgoKSA8PCAyNCkgfCAoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDE2KSkgLyAxMDczNzQxODI0O1xuICAgICAgICBjb21wb25lbnQuc2NhbGVZICA9ICgoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDI0KSB8IChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMTYpKSAvIDEwNzM3NDE4MjQ7XG4gICAgICB9XG5cbiAgICAgIGdseXBoLmNvbXBvbmVudHMucHVzaChjb21wb25lbnQpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9mb250Ll92YXJpYXRpb25Qcm9jZXNzb3IpIHtcbiAgICAgIGxldCBwb2ludHMgPSBbXTtcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgZ2x5cGguY29tcG9uZW50cy5sZW5ndGg7IGorKykge1xuICAgICAgICB2YXIgY29tcG9uZW50ID0gZ2x5cGguY29tcG9uZW50c1tqXTtcbiAgICAgICAgcG9pbnRzLnB1c2gobmV3IFBvaW50KHRydWUsIHRydWUsIGNvbXBvbmVudC5keCwgY29tcG9uZW50LmR5KSk7XG4gICAgICB9XG5cbiAgICAgIHBvaW50cy5wdXNoKC4uLnRoaXMuX2dldFBoYW50b21Qb2ludHMoZ2x5cGgpKTtcblxuICAgICAgdGhpcy5fZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yLnRyYW5zZm9ybVBvaW50cyh0aGlzLmlkLCBwb2ludHMpO1xuICAgICAgZ2x5cGgucGhhbnRvbVBvaW50cyA9IHBvaW50cy5zcGxpY2UoLTQsIDQpO1xuXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBvaW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBsZXQgcG9pbnQgPSBwb2ludHNbaV07XG4gICAgICAgIGdseXBoLmNvbXBvbmVudHNbaV0uZHggPSBwb2ludC54O1xuICAgICAgICBnbHlwaC5jb21wb25lbnRzW2ldLmR5ID0gcG9pbnQueTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaGF2ZUluc3RydWN0aW9ucztcbiAgfVxuXG4gIF9nZXRQaGFudG9tUG9pbnRzKGdseXBoKSB7XG4gICAgbGV0IGNib3ggPSB0aGlzLl9nZXRDQm94KHRydWUpO1xuICAgIGlmICh0aGlzLl9tZXRyaWNzID09IG51bGwpIHtcbiAgICAgIHRoaXMuX21ldHJpY3MgPSBHbHlwaC5wcm90b3R5cGUuX2dldE1ldHJpY3MuY2FsbCh0aGlzLCBjYm94KTtcbiAgICB9XG5cbiAgICBsZXQgeyBhZHZhbmNlV2lkdGgsIGFkdmFuY2VIZWlnaHQsIGxlZnRCZWFyaW5nLCB0b3BCZWFyaW5nIH0gPSB0aGlzLl9tZXRyaWNzO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIG5ldyBQb2ludChmYWxzZSwgdHJ1ZSwgZ2x5cGgueE1pbiAtIGxlZnRCZWFyaW5nLCAwKSxcbiAgICAgIG5ldyBQb2ludChmYWxzZSwgdHJ1ZSwgZ2x5cGgueE1pbiAtIGxlZnRCZWFyaW5nICsgYWR2YW5jZVdpZHRoLCAwKSxcbiAgICAgIG5ldyBQb2ludChmYWxzZSwgdHJ1ZSwgMCwgZ2x5cGgueU1heCArIHRvcEJlYXJpbmcpLFxuICAgICAgbmV3IFBvaW50KGZhbHNlLCB0cnVlLCAwLCBnbHlwaC55TWF4ICsgdG9wQmVhcmluZyArIGFkdmFuY2VIZWlnaHQpXG4gICAgXTtcbiAgfVxuXG4gIC8vIERlY29kZXMgZm9udCBkYXRhLCByZXNvbHZlcyBjb21wb3NpdGUgZ2x5cGhzLCBhbmQgcmV0dXJucyBhbiBhcnJheSBvZiBjb250b3Vyc1xuICBfZ2V0Q29udG91cnMoKSB7XG4gICAgbGV0IGdseXBoID0gdGhpcy5fZGVjb2RlKCk7XG4gICAgaWYgKCFnbHlwaCkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGxldCBwb2ludHMgPSBbXTtcblxuICAgIGlmIChnbHlwaC5udW1iZXJPZkNvbnRvdXJzIDwgMCkge1xuICAgICAgLy8gcmVzb2x2ZSBjb21wb3NpdGUgZ2x5cGhzXG4gICAgICBmb3IgKGxldCBjb21wb25lbnQgb2YgZ2x5cGguY29tcG9uZW50cykge1xuICAgICAgICBsZXQgY29udG91cnMgPSB0aGlzLl9mb250LmdldEdseXBoKGNvbXBvbmVudC5nbHlwaElEKS5fZ2V0Q29udG91cnMoKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb250b3Vycy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGxldCBjb250b3VyID0gY29udG91cnNbaV07XG4gICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBjb250b3VyLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICBsZXQgcG9pbnQgPSBjb250b3VyW2pdO1xuICAgICAgICAgICAgbGV0IHggPSBwb2ludC54ICogY29tcG9uZW50LnNjYWxlWCArIHBvaW50LnkgKiBjb21wb25lbnQuc2NhbGUwMSArIGNvbXBvbmVudC5keDtcbiAgICAgICAgICAgIGxldCB5ID0gcG9pbnQueSAqIGNvbXBvbmVudC5zY2FsZVkgKyBwb2ludC54ICogY29tcG9uZW50LnNjYWxlMTAgKyBjb21wb25lbnQuZHk7XG4gICAgICAgICAgICBwb2ludHMucHVzaChuZXcgUG9pbnQocG9pbnQub25DdXJ2ZSwgcG9pbnQuZW5kQ29udG91ciwgeCwgeSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBwb2ludHMgPSBnbHlwaC5wb2ludHMgfHwgW107XG4gICAgfVxuXG4gICAgLy8gUmVjb21wdXRlIGFuZCBjYWNoZSBtZXRyaWNzIGlmIHdlIHBlcmZvcm1lZCB2YXJpYXRpb24gcHJvY2Vzc2luZywgYW5kIGRvbid0IGhhdmUgYW4gSFZBUiB0YWJsZVxuICAgIGlmIChnbHlwaC5waGFudG9tUG9pbnRzICYmICF0aGlzLl9mb250LmRpcmVjdG9yeS50YWJsZXMuSFZBUikge1xuICAgICAgdGhpcy5fbWV0cmljcy5hZHZhbmNlV2lkdGggID0gZ2x5cGgucGhhbnRvbVBvaW50c1sxXS54IC0gZ2x5cGgucGhhbnRvbVBvaW50c1swXS54O1xuICAgICAgdGhpcy5fbWV0cmljcy5hZHZhbmNlSGVpZ2h0ID0gZ2x5cGgucGhhbnRvbVBvaW50c1szXS55IC0gZ2x5cGgucGhhbnRvbVBvaW50c1syXS55O1xuICAgICAgdGhpcy5fbWV0cmljcy5sZWZ0QmVhcmluZyAgID0gZ2x5cGgueE1pbiAtIGdseXBoLnBoYW50b21Qb2ludHNbMF0ueDtcbiAgICAgIHRoaXMuX21ldHJpY3MudG9wQmVhcmluZyAgICA9IGdseXBoLnBoYW50b21Qb2ludHNbMl0ueSAtIGdseXBoLnlNYXg7XG4gICAgfVxuXG4gICAgbGV0IGNvbnRvdXJzID0gW107XG4gICAgbGV0IGN1ciA9IFtdO1xuICAgIGZvciAobGV0IGsgPSAwOyBrIDwgcG9pbnRzLmxlbmd0aDsgaysrKSB7XG4gICAgICB2YXIgcG9pbnQgPSBwb2ludHNba107XG4gICAgICBjdXIucHVzaChwb2ludCk7XG4gICAgICBpZiAocG9pbnQuZW5kQ29udG91cikge1xuICAgICAgICBjb250b3Vycy5wdXNoKGN1cik7XG4gICAgICAgIGN1ciA9IFtdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjb250b3VycztcbiAgfVxuXG4gIF9nZXRNZXRyaWNzKCkge1xuICAgIGlmICh0aGlzLl9tZXRyaWNzKSB7XG4gICAgICByZXR1cm4gdGhpcy5fbWV0cmljcztcbiAgICB9XG5cbiAgICBsZXQgY2JveCA9IHRoaXMuX2dldENCb3godHJ1ZSk7XG4gICAgc3VwZXIuX2dldE1ldHJpY3MoY2JveCk7XG5cbiAgICBpZiAodGhpcy5fZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yICYmICF0aGlzLl9mb250LkhWQVIpIHtcbiAgICAgIC8vIE5vIEhWQVIgdGFibGUsIGRlY29kZSB0aGUgZ2x5cGguIFRoaXMgdHJpZ2dlcnMgcmVjb21wdXRhdGlvbiBvZiBtZXRyaWNzLlxuICAgICAgdGhpcy5wYXRoO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9tZXRyaWNzO1xuICB9XG5cbiAgLy8gQ29udmVydHMgY29udG91cnMgdG8gYSBQYXRoIG9iamVjdCB0aGF0IGNhbiBiZSByZW5kZXJlZFxuICBfZ2V0UGF0aCgpIHtcbiAgICBsZXQgY29udG91cnMgPSB0aGlzLl9nZXRDb250b3VycygpO1xuICAgIGxldCBwYXRoID0gbmV3IFBhdGg7XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbnRvdXJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgY29udG91ciA9IGNvbnRvdXJzW2ldO1xuICAgICAgbGV0IGZpcnN0UHQgPSBjb250b3VyWzBdO1xuICAgICAgbGV0IGxhc3RQdCA9IGNvbnRvdXJbY29udG91ci5sZW5ndGggLSAxXTtcbiAgICAgIGxldCBzdGFydCA9IDA7XG5cbiAgICAgIGlmIChmaXJzdFB0Lm9uQ3VydmUpIHtcbiAgICAgICAgLy8gVGhlIGZpcnN0IHBvaW50IHdpbGwgYmUgY29uc3VtZWQgYnkgdGhlIG1vdmVUbyBjb21tYW5kLCBzbyBza2lwIGluIHRoZSBsb29wXG4gICAgICAgIHZhciBjdXJ2ZVB0ID0gbnVsbDtcbiAgICAgICAgc3RhcnQgPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGxhc3RQdC5vbkN1cnZlKSB7XG4gICAgICAgICAgLy8gU3RhcnQgYXQgdGhlIGxhc3QgcG9pbnQgaWYgdGhlIGZpcnN0IHBvaW50IGlzIG9mZiBjdXJ2ZSBhbmQgdGhlIGxhc3QgcG9pbnQgaXMgb24gY3VydmVcbiAgICAgICAgICBmaXJzdFB0ID0gbGFzdFB0O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIFN0YXJ0IGF0IHRoZSBtaWRkbGUgaWYgYm90aCB0aGUgZmlyc3QgYW5kIGxhc3QgcG9pbnRzIGFyZSBvZmYgY3VydmVcbiAgICAgICAgICBmaXJzdFB0ID0gbmV3IFBvaW50KGZhbHNlLCBmYWxzZSwgKGZpcnN0UHQueCArIGxhc3RQdC54KSAvIDIsIChmaXJzdFB0LnkgKyBsYXN0UHQueSkgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBjdXJ2ZVB0ID0gZmlyc3RQdDtcbiAgICAgIH1cblxuICAgICAgcGF0aC5tb3ZlVG8oZmlyc3RQdC54LCBmaXJzdFB0LnkpO1xuXG4gICAgICBmb3IgKGxldCBqID0gc3RhcnQ7IGogPCBjb250b3VyLmxlbmd0aDsgaisrKSB7XG4gICAgICAgIGxldCBwdCA9IGNvbnRvdXJbal07XG4gICAgICAgIGxldCBwcmV2UHQgPSBqID09PSAwID8gZmlyc3RQdCA6IGNvbnRvdXJbaiAtIDFdO1xuXG4gICAgICAgIGlmIChwcmV2UHQub25DdXJ2ZSAmJiBwdC5vbkN1cnZlKSB7XG4gICAgICAgICAgcGF0aC5saW5lVG8ocHQueCwgcHQueSk7XG5cbiAgICAgICAgfSBlbHNlIGlmIChwcmV2UHQub25DdXJ2ZSAmJiAhcHQub25DdXJ2ZSkge1xuICAgICAgICAgIHZhciBjdXJ2ZVB0ID0gcHQ7XG5cbiAgICAgICAgfSBlbHNlIGlmICghcHJldlB0Lm9uQ3VydmUgJiYgIXB0Lm9uQ3VydmUpIHtcbiAgICAgICAgICBsZXQgbWlkWCA9IChwcmV2UHQueCArIHB0LngpIC8gMjtcbiAgICAgICAgICBsZXQgbWlkWSA9IChwcmV2UHQueSArIHB0LnkpIC8gMjtcbiAgICAgICAgICBwYXRoLnF1YWRyYXRpY0N1cnZlVG8ocHJldlB0LngsIHByZXZQdC55LCBtaWRYLCBtaWRZKTtcbiAgICAgICAgICB2YXIgY3VydmVQdCA9IHB0O1xuXG4gICAgICAgIH0gZWxzZSBpZiAoIXByZXZQdC5vbkN1cnZlICYmIHB0Lm9uQ3VydmUpIHtcbiAgICAgICAgICBwYXRoLnF1YWRyYXRpY0N1cnZlVG8oY3VydmVQdC54LCBjdXJ2ZVB0LnksIHB0LngsIHB0LnkpO1xuICAgICAgICAgIHZhciBjdXJ2ZVB0ID0gbnVsbDtcblxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlVua25vd24gVFRGIHBhdGggc3RhdGVcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gQ29ubmVjdCB0aGUgZmlyc3QgYW5kIGxhc3QgcG9pbnRzXG4gICAgICBpZiAoY3VydmVQdCkge1xuICAgICAgICBwYXRoLnF1YWRyYXRpY0N1cnZlVG8oY3VydmVQdC54LCBjdXJ2ZVB0LnksIGZpcnN0UHQueCwgZmlyc3RQdC55KTtcbiAgICAgIH1cblxuICAgICAgcGF0aC5jbG9zZVBhdGgoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGF0aDtcbiAgfVxufVxuIiwgImltcG9ydCB7IGNhY2hlIH0gZnJvbSAnLi4vZGVjb3JhdG9ycyc7XG5pbXBvcnQgUGF0aCBmcm9tICcuL1BhdGgnO1xuaW1wb3J0IHtpc01hcmt9IGZyb20gJ3VuaWNvZGUtcHJvcGVydGllcyc7XG5pbXBvcnQgU3RhbmRhcmROYW1lcyBmcm9tICcuL1N0YW5kYXJkTmFtZXMnO1xuXG4vKipcbiAqIEdseXBoIG9iamVjdHMgcmVwcmVzZW50IGEgZ2x5cGggaW4gdGhlIGZvbnQuIFRoZXkgaGF2ZSB2YXJpb3VzIHByb3BlcnRpZXMgZm9yIGFjY2Vzc2luZyBtZXRyaWNzIGFuZFxuICogdGhlIGFjdHVhbCB2ZWN0b3IgcGF0aCB0aGUgZ2x5cGggcmVwcmVzZW50cywgYW5kIG1ldGhvZHMgZm9yIHJlbmRlcmluZyB0aGUgZ2x5cGggdG8gYSBncmFwaGljcyBjb250ZXh0LlxuICpcbiAqIFlvdSBkbyBub3QgY3JlYXRlIGdseXBoIG9iamVjdHMgZGlyZWN0bHkuIFRoZXkgYXJlIGNyZWF0ZWQgYnkgdmFyaW91cyBtZXRob2RzIG9uIHRoZSBmb250IG9iamVjdC5cbiAqIFRoZXJlIGFyZSBzZXZlcmFsIHN1YmNsYXNzZXMgb2YgdGhlIGJhc2UgR2x5cGggY2xhc3MgaW50ZXJuYWxseSB0aGF0IG1heSBiZSByZXR1cm5lZCBkZXBlbmRpbmdcbiAqIG9uIHRoZSBmb250IGZvcm1hdCwgYnV0IHRoZXkgYWxsIGluaGVyaXQgZnJvbSB0aGlzIGNsYXNzLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHbHlwaCB7XG4gIGNvbnN0cnVjdG9yKGlkLCBjb2RlUG9pbnRzLCBmb250KSB7XG4gICAgLyoqXG4gICAgICogVGhlIGdseXBoIGlkIGluIHRoZSBmb250XG4gICAgICogQHR5cGUge251bWJlcn1cbiAgICAgKi9cbiAgICB0aGlzLmlkID0gaWQ7XG5cbiAgICAvKipcbiAgICAgKiBBbiBhcnJheSBvZiB1bmljb2RlIGNvZGUgcG9pbnRzIHRoYXQgYXJlIHJlcHJlc2VudGVkIGJ5IHRoaXMgZ2x5cGguXG4gICAgICogVGhlcmUgY2FuIGJlIG11bHRpcGxlIGNvZGUgcG9pbnRzIGluIHRoZSBjYXNlIG9mIGxpZ2F0dXJlcyBhbmQgb3RoZXIgZ2x5cGhzXG4gICAgICogdGhhdCByZXByZXNlbnQgbXVsdGlwbGUgdmlzdWFsIGNoYXJhY3RlcnMuXG4gICAgICogQHR5cGUge251bWJlcltdfVxuICAgICAqL1xuICAgIHRoaXMuY29kZVBvaW50cyA9IGNvZGVQb2ludHM7XG4gICAgdGhpcy5fZm9udCA9IGZvbnQ7XG5cbiAgICAvLyBUT0RPOiBnZXQgdGhpcyBpbmZvIGZyb20gR0RFRiBpZiBhdmFpbGFibGVcbiAgICB0aGlzLmlzTWFyayA9IHRoaXMuY29kZVBvaW50cy5sZW5ndGggPiAwICYmIHRoaXMuY29kZVBvaW50cy5ldmVyeShpc01hcmspO1xuICAgIHRoaXMuaXNMaWdhdHVyZSA9IHRoaXMuY29kZVBvaW50cy5sZW5ndGggPiAxO1xuICB9XG5cbiAgX2dldFBhdGgoKSB7XG4gICAgcmV0dXJuIG5ldyBQYXRoKCk7XG4gIH1cblxuICBfZ2V0Q0JveCgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXRoLmNib3g7XG4gIH1cblxuICBfZ2V0QkJveCgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXRoLmJib3g7XG4gIH1cblxuICBfZ2V0VGFibGVNZXRyaWNzKHRhYmxlKSB7XG4gICAgaWYgKHRoaXMuaWQgPCB0YWJsZS5tZXRyaWNzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHRhYmxlLm1ldHJpY3MuZ2V0KHRoaXMuaWQpO1xuICAgIH1cblxuICAgIGxldCBtZXRyaWMgPSB0YWJsZS5tZXRyaWNzLmdldCh0YWJsZS5tZXRyaWNzLmxlbmd0aCAtIDEpO1xuICAgIGxldCByZXMgPSB7XG4gICAgICBhZHZhbmNlOiBtZXRyaWMgPyBtZXRyaWMuYWR2YW5jZSA6IDAsXG4gICAgICBiZWFyaW5nOiB0YWJsZS5iZWFyaW5ncy5nZXQodGhpcy5pZCAtIHRhYmxlLm1ldHJpY3MubGVuZ3RoKSB8fCAwXG4gICAgfTtcblxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBfZ2V0TWV0cmljcyhjYm94KSB7XG4gICAgaWYgKHRoaXMuX21ldHJpY3MpIHsgcmV0dXJuIHRoaXMuX21ldHJpY3M7IH1cblxuICAgIGxldCB7YWR2YW5jZTphZHZhbmNlV2lkdGgsIGJlYXJpbmc6bGVmdEJlYXJpbmd9ID0gdGhpcy5fZ2V0VGFibGVNZXRyaWNzKHRoaXMuX2ZvbnQuaG10eCk7XG5cbiAgICAvLyBGb3IgdmVydGljYWwgbWV0cmljcywgdXNlIHZtdHggaWYgYXZhaWxhYmxlLCBvciBmYWxsIGJhY2sgdG8gZ2xvYmFsIGRhdGEgZnJvbSBPUy8yIG9yIGhoZWFcbiAgICBpZiAodGhpcy5fZm9udC52bXR4KSB7XG4gICAgICB2YXIge2FkdmFuY2U6YWR2YW5jZUhlaWdodCwgYmVhcmluZzp0b3BCZWFyaW5nfSA9IHRoaXMuX2dldFRhYmxlTWV0cmljcyh0aGlzLl9mb250LnZtdHgpO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBvczI7XG4gICAgICBpZiAodHlwZW9mIGNib3ggPT09ICd1bmRlZmluZWQnIHx8IGNib3ggPT09IG51bGwpIHsgKHsgY2JveCB9ID0gdGhpcyk7IH1cblxuICAgICAgaWYgKChvczIgPSB0aGlzLl9mb250WydPUy8yJ10pICYmIG9zMi52ZXJzaW9uID4gMCkge1xuICAgICAgICB2YXIgYWR2YW5jZUhlaWdodCA9IE1hdGguYWJzKG9zMi50eXBvQXNjZW5kZXIgLSBvczIudHlwb0Rlc2NlbmRlcik7XG4gICAgICAgIHZhciB0b3BCZWFyaW5nID0gb3MyLnR5cG9Bc2NlbmRlciAtIGNib3gubWF4WTtcblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGV0IHsgaGhlYSB9ID0gdGhpcy5fZm9udDtcbiAgICAgICAgdmFyIGFkdmFuY2VIZWlnaHQgPSBNYXRoLmFicyhoaGVhLmFzY2VudCAtIGhoZWEuZGVzY2VudCk7XG4gICAgICAgIHZhciB0b3BCZWFyaW5nID0gaGhlYS5hc2NlbnQgLSBjYm94Lm1heFk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2ZvbnQuX3ZhcmlhdGlvblByb2Nlc3NvciAmJiB0aGlzLl9mb250LkhWQVIpIHtcbiAgICAgIGFkdmFuY2VXaWR0aCArPSB0aGlzLl9mb250Ll92YXJpYXRpb25Qcm9jZXNzb3IuZ2V0QWR2YW5jZUFkanVzdG1lbnQodGhpcy5pZCwgdGhpcy5fZm9udC5IVkFSKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fbWV0cmljcyA9IHsgYWR2YW5jZVdpZHRoLCBhZHZhbmNlSGVpZ2h0LCBsZWZ0QmVhcmluZywgdG9wQmVhcmluZyB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBnbHlwaOKAmXMgY29udHJvbCBib3guXG4gICAqIFRoaXMgaXMgb2Z0ZW4gdGhlIHNhbWUgYXMgdGhlIGJvdW5kaW5nIGJveCwgYnV0IGlzIGZhc3RlciB0byBjb21wdXRlLlxuICAgKiBCZWNhdXNlIG9mIHRoZSB3YXkgYmV6aWVyIGN1cnZlcyBhcmUgZGVmaW5lZCwgc29tZSBvZiB0aGUgY29udHJvbCBwb2ludHNcbiAgICogY2FuIGJlIG91dHNpZGUgb2YgdGhlIGJvdW5kaW5nIGJveC4gV2hlcmUgYGJib3hgIHRha2VzIHRoaXMgaW50byBhY2NvdW50LFxuICAgKiBgY2JveGAgZG9lcyBub3QuIFRodXMsIGNib3ggaXMgbGVzcyBhY2N1cmF0ZSwgYnV0IGZhc3RlciB0byBjb21wdXRlLlxuICAgKiBTZWUgW2hlcmVdKGh0dHA6Ly93d3cuZnJlZXR5cGUub3JnL2ZyZWV0eXBlMi9kb2NzL2dseXBocy9nbHlwaHMtNi5odG1sI3NlY3Rpb24tMilcbiAgICogZm9yIGEgbW9yZSBkZXRhaWxlZCBkZXNjcmlwdGlvbi5cbiAgICpcbiAgICogQHR5cGUge0JCb3h9XG4gICAqL1xuICBAY2FjaGVcbiAgZ2V0IGNib3goKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldENCb3goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZ2x5cGjigJlzIGJvdW5kaW5nIGJveCwgaS5lLiB0aGUgcmVjdGFuZ2xlIHRoYXQgZW5jbG9zZXMgdGhlXG4gICAqIGdseXBoIG91dGxpbmUgYXMgdGlnaHRseSBhcyBwb3NzaWJsZS5cbiAgICogQHR5cGUge0JCb3h9XG4gICAqL1xuICBAY2FjaGVcbiAgZ2V0IGJib3goKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldEJCb3goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIHZlY3RvciBQYXRoIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGdseXBoIG91dGxpbmUuXG4gICAqIEB0eXBlIHtQYXRofVxuICAgKi9cbiAgQGNhY2hlXG4gIGdldCBwYXRoKCkge1xuICAgIC8vIENhY2hlIHRoZSBwYXRoIHNvIHdlIG9ubHkgZGVjb2RlIGl0IG9uY2VcbiAgICAvLyBEZWNvZGluZyBpcyBhY3R1YWxseSBwZXJmb3JtZWQgYnkgc3ViY2xhc3Nlc1xuICAgIHJldHVybiB0aGlzLl9nZXRQYXRoKCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHBhdGggc2NhbGVkIHRvIHRoZSBnaXZlbiBmb250IHNpemUuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBzaXplXG4gICAqIEByZXR1cm4ge1BhdGh9XG4gICAqL1xuICBnZXRTY2FsZWRQYXRoKHNpemUpIHtcbiAgICBsZXQgc2NhbGUgPSAxIC8gdGhpcy5fZm9udC51bml0c1BlckVtICogc2l6ZTtcbiAgICByZXR1cm4gdGhpcy5wYXRoLnNjYWxlKHNjYWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZ2x5cGgncyBhZHZhbmNlIHdpZHRoLlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgQGNhY2hlXG4gIGdldCBhZHZhbmNlV2lkdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldE1ldHJpY3MoKS5hZHZhbmNlV2lkdGg7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGdseXBoJ3MgYWR2YW5jZSBoZWlnaHQuXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBAY2FjaGVcbiAgZ2V0IGFkdmFuY2VIZWlnaHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldE1ldHJpY3MoKS5hZHZhbmNlSGVpZ2h0O1xuICB9XG5cbiAgZ2V0IGxpZ2F0dXJlQ2FyZXRQb3NpdGlvbnMoKSB7fVxuXG4gIF9nZXROYW1lKCkge1xuICAgIGxldCB7IHBvc3QgfSA9IHRoaXMuX2ZvbnQ7XG4gICAgaWYgKCFwb3N0KSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHBvc3QudmVyc2lvbikge1xuICAgICAgY2FzZSAxOlxuICAgICAgICByZXR1cm4gU3RhbmRhcmROYW1lc1t0aGlzLmlkXTtcblxuICAgICAgY2FzZSAyOlxuICAgICAgICBsZXQgaWQgPSBwb3N0LmdseXBoTmFtZUluZGV4W3RoaXMuaWRdO1xuICAgICAgICBpZiAoaWQgPCBTdGFuZGFyZE5hbWVzLmxlbmd0aCkge1xuICAgICAgICAgIHJldHVybiBTdGFuZGFyZE5hbWVzW2lkXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwb3N0Lm5hbWVzW2lkIC0gU3RhbmRhcmROYW1lcy5sZW5ndGhdO1xuXG4gICAgICBjYXNlIDIuNTpcbiAgICAgICAgcmV0dXJuIFN0YW5kYXJkTmFtZXNbdGhpcy5pZCArIHBvc3Qub2Zmc2V0c1t0aGlzLmlkXV07XG5cbiAgICAgIGNhc2UgNDpcbiAgICAgICAgcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUocG9zdC5tYXBbdGhpcy5pZF0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZ2x5cGgncyBuYW1lXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqL1xuICBAY2FjaGVcbiAgZ2V0IG5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2dldE5hbWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBnbHlwaCB0byB0aGUgZ2l2ZW4gZ3JhcGhpY3MgY29udGV4dCwgYXQgdGhlIHNwZWNpZmllZCBmb250IHNpemUuXG4gICAqIEBwYXJhbSB7Q2FudmFzUmVuZGVyaW5nQ29udGV4dDJkfSBjdHhcbiAgICogQHBhcmFtIHtudW1iZXJ9IHNpemVcbiAgICovXG4gIHJlbmRlcihjdHgsIHNpemUpIHtcbiAgICBjdHguc2F2ZSgpO1xuXG4gICAgbGV0IHNjYWxlID0gMSAvIHRoaXMuX2ZvbnQuaGVhZC51bml0c1BlckVtICogc2l6ZTtcbiAgICBjdHguc2NhbGUoc2NhbGUsIHNjYWxlKTtcblxuICAgIGxldCBmbiA9IHRoaXMucGF0aC50b0Z1bmN0aW9uKCk7XG4gICAgZm4oY3R4KTtcbiAgICBjdHguZmlsbCgpO1xuXG4gICAgY3R4LnJlc3RvcmUoKTtcbiAgfVxufVxuIiwgImltcG9ydCBCQm94IGZyb20gJy4vQkJveCc7XG5cbmNvbnN0IFNWR19DT01NQU5EUyA9IHtcbiAgbW92ZVRvOiAnTScsXG4gIGxpbmVUbzogJ0wnLFxuICBxdWFkcmF0aWNDdXJ2ZVRvOiAnUScsXG4gIGJlemllckN1cnZlVG86ICdDJyxcbiAgY2xvc2VQYXRoOiAnWidcbn07XG5cbi8qKlxuICogUGF0aCBvYmplY3RzIGFyZSByZXR1cm5lZCBieSBnbHlwaHMgYW5kIHJlcHJlc2VudCB0aGUgYWN0dWFsXG4gKiB2ZWN0b3Igb3V0bGluZXMgZm9yIGVhY2ggZ2x5cGggaW4gdGhlIGZvbnQuIFBhdGhzIGNhbiBiZSBjb252ZXJ0ZWRcbiAqIHRvIFNWRyBwYXRoIGRhdGEgc3RyaW5ncywgb3IgdG8gZnVuY3Rpb25zIHRoYXQgY2FuIGJlIGFwcGxpZWQgdG9cbiAqIHJlbmRlciB0aGUgcGF0aCB0byBhIGdyYXBoaWNzIGNvbnRleHQuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhdGgge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmNvbW1hbmRzID0gW107XG4gICAgdGhpcy5fYmJveCA9IG51bGw7XG4gICAgdGhpcy5fY2JveCA9IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQ29tcGlsZXMgdGhlIHBhdGggdG8gYSBKYXZhU2NyaXB0IGZ1bmN0aW9uIHRoYXQgY2FuIGJlIGFwcGxpZWQgd2l0aFxuICAgKiBhIGdyYXBoaWNzIGNvbnRleHQgaW4gb3JkZXIgdG8gcmVuZGVyIHRoZSBwYXRoLlxuICAgKiBAcmV0dXJuIHtzdHJpbmd9XG4gICAqL1xuICB0b0Z1bmN0aW9uKCkge1xuICAgIHJldHVybiBjdHggPT4ge1xuICAgICAgdGhpcy5jb21tYW5kcy5mb3JFYWNoKGMgPT4ge1xuICAgICAgICByZXR1cm4gY3R4W2MuY29tbWFuZF0uYXBwbHkoY3R4LCBjLmFyZ3MpXG4gICAgICB9KVxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgdGhlIHBhdGggdG8gYW4gU1ZHIHBhdGggZGF0YSBzdHJpbmdcbiAgICogQHJldHVybiB7c3RyaW5nfVxuICAgKi9cbiAgdG9TVkcoKSB7XG4gICAgbGV0IGNtZHMgPSB0aGlzLmNvbW1hbmRzLm1hcChjID0+IHtcbiAgICAgIGxldCBhcmdzID0gYy5hcmdzLm1hcChhcmcgPT4gTWF0aC5yb3VuZChhcmcgKiAxMDApIC8gMTAwKTtcbiAgICAgIHJldHVybiBgJHtTVkdfQ09NTUFORFNbYy5jb21tYW5kXX0ke2FyZ3Muam9pbignICcpfWA7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gY21kcy5qb2luKCcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBcImNvbnRyb2wgYm94XCIgb2YgYSBwYXRoLlxuICAgKiBUaGlzIGlzIGxpa2UgdGhlIGJvdW5kaW5nIGJveCwgYnV0IGl0IGluY2x1ZGVzIGFsbCBwb2ludHMgaW5jbHVkaW5nXG4gICAqIGNvbnRyb2wgcG9pbnRzIG9mIGJlemllciBzZWdtZW50cyBhbmQgaXMgbXVjaCBmYXN0ZXIgdG8gY29tcHV0ZSB0aGFuXG4gICAqIHRoZSByZWFsIGJvdW5kaW5nIGJveC5cbiAgICogQHR5cGUge0JCb3h9XG4gICAqL1xuICBnZXQgY2JveCgpIHtcbiAgICBpZiAoIXRoaXMuX2Nib3gpIHtcbiAgICAgIGxldCBjYm94ID0gbmV3IEJCb3g7XG4gICAgICBmb3IgKGxldCBjb21tYW5kIG9mIHRoaXMuY29tbWFuZHMpIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb21tYW5kLmFyZ3MubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAgICAgICBjYm94LmFkZFBvaW50KGNvbW1hbmQuYXJnc1tpXSwgY29tbWFuZC5hcmdzW2kgKyAxXSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy5fY2JveCA9IE9iamVjdC5mcmVlemUoY2JveCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2Nib3g7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgZXhhY3QgYm91bmRpbmcgYm94IG9mIHRoZSBwYXRoIGJ5IGV2YWx1YXRpbmcgY3VydmUgc2VnbWVudHMuXG4gICAqIFNsb3dlciB0byBjb21wdXRlIHRoYW4gdGhlIGNvbnRyb2wgYm94LCBidXQgbW9yZSBhY2N1cmF0ZS5cbiAgICogQHR5cGUge0JCb3h9XG4gICAqL1xuICBnZXQgYmJveCgpIHtcbiAgICBpZiAodGhpcy5fYmJveCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2Jib3g7XG4gICAgfVxuXG4gICAgbGV0IGJib3ggPSBuZXcgQkJveDtcbiAgICBsZXQgY3ggPSAwLCBjeSA9IDA7XG5cbiAgICBsZXQgZiA9IHQgPT4gKFxuICAgICAgTWF0aC5wb3coMSAtIHQsIDMpICogcDBbaV1cbiAgICAgICAgKyAzICogTWF0aC5wb3coMSAtIHQsIDIpICogdCAqIHAxW2ldXG4gICAgICAgICsgMyAqICgxIC0gdCkgKiBNYXRoLnBvdyh0LCAyKSAqIHAyW2ldXG4gICAgICAgICsgTWF0aC5wb3codCwgMykgKiBwM1tpXVxuICAgICk7XG5cbiAgICBmb3IgKGxldCBjIG9mIHRoaXMuY29tbWFuZHMpIHtcbiAgICAgIHN3aXRjaCAoYy5jb21tYW5kKSB7XG4gICAgICAgIGNhc2UgJ21vdmVUbyc6XG4gICAgICAgIGNhc2UgJ2xpbmVUbyc6XG4gICAgICAgICAgbGV0IFt4LCB5XSA9IGMuYXJncztcbiAgICAgICAgICBiYm94LmFkZFBvaW50KHgsIHkpO1xuICAgICAgICAgIGN4ID0geDtcbiAgICAgICAgICBjeSA9IHk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAncXVhZHJhdGljQ3VydmVUbyc6XG4gICAgICAgIGNhc2UgJ2JlemllckN1cnZlVG8nOlxuICAgICAgICAgIGlmIChjLmNvbW1hbmQgPT09ICdxdWFkcmF0aWNDdXJ2ZVRvJykge1xuICAgICAgICAgICAgLy8gaHR0cDovL2ZvbnRmb3JnZS5vcmcvYmV6aWVyLmh0bWxcbiAgICAgICAgICAgIHZhciBbcXAxeCwgcXAxeSwgcDN4LCBwM3ldID0gYy5hcmdzO1xuICAgICAgICAgICAgdmFyIGNwMXggPSBjeCArIDIgLyAzICogKHFwMXggLSBjeCk7ICAgIC8vIENQMSA9IFFQMCArIDIvMyAqIChRUDEtUVAwKVxuICAgICAgICAgICAgdmFyIGNwMXkgPSBjeSArIDIgLyAzICogKHFwMXkgLSBjeSk7XG4gICAgICAgICAgICB2YXIgY3AyeCA9IHAzeCArIDIgLyAzICogKHFwMXggLSBwM3gpOyAgLy8gQ1AyID0gUVAyICsgMi8zICogKFFQMS1RUDIpXG4gICAgICAgICAgICB2YXIgY3AyeSA9IHAzeSArIDIgLyAzICogKHFwMXkgLSBwM3kpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB2YXIgW2NwMXgsIGNwMXksIGNwMngsIGNwMnksIHAzeCwgcDN5XSA9IGMuYXJncztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBodHRwOi8vYmxvZy5oYWNrZXJzLWNhZmUubmV0LzIwMDkvMDYvaG93LXRvLWNhbGN1bGF0ZS1iZXppZXItY3VydmVzLWJvdW5kaW5nLmh0bWxcbiAgICAgICAgICBiYm94LmFkZFBvaW50KHAzeCwgcDN5KTtcblxuICAgICAgICAgIHZhciBwMCA9IFtjeCwgY3ldO1xuICAgICAgICAgIHZhciBwMSA9IFtjcDF4LCBjcDF5XTtcbiAgICAgICAgICB2YXIgcDIgPSBbY3AyeCwgY3AyeV07XG4gICAgICAgICAgdmFyIHAzID0gW3AzeCwgcDN5XTtcblxuICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDw9IDE7IGkrKykge1xuICAgICAgICAgICAgbGV0IGIgPSA2ICogcDBbaV0gLSAxMiAqIHAxW2ldICsgNiAqIHAyW2ldO1xuICAgICAgICAgICAgbGV0IGEgPSAtMyAqIHAwW2ldICsgOSAqIHAxW2ldIC0gOSAqIHAyW2ldICsgMyAqIHAzW2ldO1xuICAgICAgICAgICAgYyA9IDMgKiBwMVtpXSAtIDMgKiBwMFtpXTtcblxuICAgICAgICAgICAgaWYgKGEgPT09IDApIHtcbiAgICAgICAgICAgICAgaWYgKGIgPT09IDApIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGxldCB0ID0gLWMgLyBiO1xuICAgICAgICAgICAgICBpZiAoMCA8IHQgJiYgdCA8IDEpIHtcbiAgICAgICAgICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgYmJveC5hZGRQb2ludChmKHQpLCBiYm94Lm1heFkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaSA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgYmJveC5hZGRQb2ludChiYm94Lm1heFgsIGYodCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgYjJhYyA9IE1hdGgucG93KGIsIDIpIC0gNCAqIGMgKiBhO1xuICAgICAgICAgICAgaWYgKGIyYWMgPCAwKSB7XG4gICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgdDEgPSAoLWIgKyBNYXRoLnNxcnQoYjJhYykpIC8gKDIgKiBhKTtcbiAgICAgICAgICAgIGlmICgwIDwgdDEgJiYgdDEgPCAxKSB7XG4gICAgICAgICAgICAgIGlmIChpID09PSAwKSB7XG4gICAgICAgICAgICAgICAgYmJveC5hZGRQb2ludChmKHQxKSwgYmJveC5tYXhZKTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChpID09PSAxKSB7XG4gICAgICAgICAgICAgICAgYmJveC5hZGRQb2ludChiYm94Lm1heFgsIGYodDEpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgdDIgPSAoLWIgLSBNYXRoLnNxcnQoYjJhYykpIC8gKDIgKiBhKTtcbiAgICAgICAgICAgIGlmICgwIDwgdDIgJiYgdDIgPCAxKSB7XG4gICAgICAgICAgICAgIGlmIChpID09PSAwKSB7XG4gICAgICAgICAgICAgICAgYmJveC5hZGRQb2ludChmKHQyKSwgYmJveC5tYXhZKTtcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChpID09PSAxKSB7XG4gICAgICAgICAgICAgICAgYmJveC5hZGRQb2ludChiYm94Lm1heFgsIGYodDIpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGN4ID0gcDN4O1xuICAgICAgICAgIGN5ID0gcDN5O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9iYm94ID0gT2JqZWN0LmZyZWV6ZShiYm94KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHBsaWVzIGEgbWFwcGluZyBmdW5jdGlvbiB0byBlYWNoIHBvaW50IGluIHRoZSBwYXRoLlxuICAgKiBAcGFyYW0ge2Z1bmN0aW9ufSBmblxuICAgKiBAcmV0dXJuIHtQYXRofVxuICAgKi9cbiAgbWFwUG9pbnRzKGZuKSB7XG4gICAgbGV0IHBhdGggPSBuZXcgUGF0aDtcblxuICAgIGZvciAobGV0IGMgb2YgdGhpcy5jb21tYW5kcykge1xuICAgICAgbGV0IGFyZ3MgPSBbXTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYy5hcmdzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICAgIGxldCBbeCwgeV0gPSBmbihjLmFyZ3NbaV0sIGMuYXJnc1tpICsgMV0pO1xuICAgICAgICBhcmdzLnB1c2goeCwgeSk7XG4gICAgICB9XG5cbiAgICAgIHBhdGhbYy5jb21tYW5kXSguLi5hcmdzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGF0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSBwYXRoIGJ5IHRoZSBnaXZlbiBtYXRyaXguXG4gICAqL1xuICB0cmFuc2Zvcm0obTAsIG0xLCBtMiwgbTMsIG00LCBtNSkge1xuICAgIHJldHVybiB0aGlzLm1hcFBvaW50cygoeCwgeSkgPT4ge1xuICAgICAgY29uc3QgdHggPSBtMCAqIHggKyBtMiAqIHkgKyBtNDtcbiAgICAgIGNvbnN0IHR5ID0gbTEgKiB4ICsgbTMgKiB5ICsgbTU7XG4gICAgICByZXR1cm4gW3R4LCB0eV07XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNsYXRlcyB0aGUgcGF0aCBieSB0aGUgZ2l2ZW4gb2Zmc2V0LlxuICAgKi9cbiAgdHJhbnNsYXRlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0oMSwgMCwgMCwgMSwgeCwgeSk7XG4gIH1cblxuICAvKipcbiAgICogUm90YXRlcyB0aGUgcGF0aCBieSB0aGUgZ2l2ZW4gYW5nbGUgKGluIHJhZGlhbnMpLlxuICAgKi9cbiAgcm90YXRlKGFuZ2xlKSB7XG4gICAgbGV0IGNvcyA9IE1hdGguY29zKGFuZ2xlKTtcbiAgICBsZXQgc2luID0gTWF0aC5zaW4oYW5nbGUpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybShjb3MsIHNpbiwgLXNpbiwgY29zLCAwLCAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTY2FsZXMgdGhlIHBhdGguXG4gICAqL1xuICBzY2FsZShzY2FsZVgsIHNjYWxlWSA9IHNjYWxlWCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybShzY2FsZVgsIDAsIDAsIHNjYWxlWSwgMCwgMCk7XG4gIH1cbn1cblxuZm9yIChsZXQgY29tbWFuZCBvZiBbJ21vdmVUbycsICdsaW5lVG8nLCAncXVhZHJhdGljQ3VydmVUbycsICdiZXppZXJDdXJ2ZVRvJywgJ2Nsb3NlUGF0aCddKSB7XG4gIFBhdGgucHJvdG90eXBlW2NvbW1hbmRdID0gZnVuY3Rpb24oLi4uYXJncykge1xuICAgIHRoaXMuX2Jib3ggPSB0aGlzLl9jYm94ID0gbnVsbDtcbiAgICB0aGlzLmNvbW1hbmRzLnB1c2goe1xuICAgICAgY29tbWFuZCxcbiAgICAgIGFyZ3NcbiAgICB9KTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9O1xufVxuIiwgImV4cG9ydCBkZWZhdWx0IFtcbiAgJy5ub3RkZWYnLCAnLm51bGwnLCAnbm9ubWFya2luZ3JldHVybicsICdzcGFjZScsICdleGNsYW0nLCAncXVvdGVkYmwnLCAnbnVtYmVyc2lnbicsICdkb2xsYXInLCAncGVyY2VudCcsXG4gICdhbXBlcnNhbmQnLCAncXVvdGVzaW5nbGUnLCAncGFyZW5sZWZ0JywgJ3BhcmVucmlnaHQnLCAnYXN0ZXJpc2snLCAncGx1cycsICdjb21tYScsICdoeXBoZW4nLCAncGVyaW9kJywgJ3NsYXNoJyxcbiAgJ3plcm8nLCAnb25lJywgJ3R3bycsICd0aHJlZScsICdmb3VyJywgJ2ZpdmUnLCAnc2l4JywgJ3NldmVuJywgJ2VpZ2h0JywgJ25pbmUnLCAnY29sb24nLCAnc2VtaWNvbG9uJywgJ2xlc3MnLFxuICAnZXF1YWwnLCAnZ3JlYXRlcicsICdxdWVzdGlvbicsICdhdCcsICdBJywgJ0InLCAnQycsICdEJywgJ0UnLCAnRicsICdHJywgJ0gnLCAnSScsICdKJywgJ0snLCAnTCcsICdNJywgJ04nLCAnTycsXG4gICdQJywgJ1EnLCAnUicsICdTJywgJ1QnLCAnVScsICdWJywgJ1cnLCAnWCcsICdZJywgJ1onLCAnYnJhY2tldGxlZnQnLCAnYmFja3NsYXNoJywgJ2JyYWNrZXRyaWdodCcsXG4gICdhc2NpaWNpcmN1bScsICd1bmRlcnNjb3JlJywgJ2dyYXZlJywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJywgJ2cnLCAnaCcsICdpJywgJ2onLCAnaycsICdsJywgJ20nLCAnbicsICdvJyxcbiAgJ3AnLCAncScsICdyJywgJ3MnLCAndCcsICd1JywgJ3YnLCAndycsICd4JywgJ3knLCAneicsICdicmFjZWxlZnQnLCAnYmFyJywgJ2JyYWNlcmlnaHQnLCAnYXNjaWl0aWxkZScsXG4gICdBZGllcmVzaXMnLCAnQXJpbmcnLCAnQ2NlZGlsbGEnLCAnRWFjdXRlJywgJ050aWxkZScsICdPZGllcmVzaXMnLCAnVWRpZXJlc2lzJywgJ2FhY3V0ZScsICdhZ3JhdmUnLFxuICAnYWNpcmN1bWZsZXgnLCAnYWRpZXJlc2lzJywgJ2F0aWxkZScsICdhcmluZycsICdjY2VkaWxsYScsICdlYWN1dGUnLCAnZWdyYXZlJywgJ2VjaXJjdW1mbGV4JywgJ2VkaWVyZXNpcycsXG4gICdpYWN1dGUnLCAnaWdyYXZlJywgJ2ljaXJjdW1mbGV4JywgJ2lkaWVyZXNpcycsICdudGlsZGUnLCAnb2FjdXRlJywgJ29ncmF2ZScsICdvY2lyY3VtZmxleCcsICdvZGllcmVzaXMnLFxuICAnb3RpbGRlJywgJ3VhY3V0ZScsICd1Z3JhdmUnLCAndWNpcmN1bWZsZXgnLCAndWRpZXJlc2lzJywgJ2RhZ2dlcicsICdkZWdyZWUnLCAnY2VudCcsICdzdGVybGluZycsICdzZWN0aW9uJyxcbiAgJ2J1bGxldCcsICdwYXJhZ3JhcGgnLCAnZ2VybWFuZGJscycsICdyZWdpc3RlcmVkJywgJ2NvcHlyaWdodCcsICd0cmFkZW1hcmsnLCAnYWN1dGUnLCAnZGllcmVzaXMnLCAnbm90ZXF1YWwnLFxuICAnQUUnLCAnT3NsYXNoJywgJ2luZmluaXR5JywgJ3BsdXNtaW51cycsICdsZXNzZXF1YWwnLCAnZ3JlYXRlcmVxdWFsJywgJ3llbicsICdtdScsICdwYXJ0aWFsZGlmZicsICdzdW1tYXRpb24nLFxuICAncHJvZHVjdCcsICdwaScsICdpbnRlZ3JhbCcsICdvcmRmZW1pbmluZScsICdvcmRtYXNjdWxpbmUnLCAnT21lZ2EnLCAnYWUnLCAnb3NsYXNoJywgJ3F1ZXN0aW9uZG93bicsXG4gICdleGNsYW1kb3duJywgJ2xvZ2ljYWxub3QnLCAncmFkaWNhbCcsICdmbG9yaW4nLCAnYXBwcm94ZXF1YWwnLCAnRGVsdGEnLCAnZ3VpbGxlbW90bGVmdCcsICdndWlsbGVtb3RyaWdodCcsXG4gICdlbGxpcHNpcycsICdub25icmVha2luZ3NwYWNlJywgJ0FncmF2ZScsICdBdGlsZGUnLCAnT3RpbGRlJywgJ09FJywgJ29lJywgJ2VuZGFzaCcsICdlbWRhc2gnLCAncXVvdGVkYmxsZWZ0JyxcbiAgJ3F1b3RlZGJscmlnaHQnLCAncXVvdGVsZWZ0JywgJ3F1b3RlcmlnaHQnLCAnZGl2aWRlJywgJ2xvemVuZ2UnLCAneWRpZXJlc2lzJywgJ1lkaWVyZXNpcycsICdmcmFjdGlvbicsXG4gICdjdXJyZW5jeScsICdndWlsc2luZ2xsZWZ0JywgJ2d1aWxzaW5nbHJpZ2h0JywgJ2ZpJywgJ2ZsJywgJ2RhZ2dlcmRibCcsICdwZXJpb2RjZW50ZXJlZCcsICdxdW90ZXNpbmdsYmFzZScsXG4gICdxdW90ZWRibGJhc2UnLCAncGVydGhvdXNhbmQnLCAnQWNpcmN1bWZsZXgnLCAnRWNpcmN1bWZsZXgnLCAnQWFjdXRlJywgJ0VkaWVyZXNpcycsICdFZ3JhdmUnLCAnSWFjdXRlJyxcbiAgJ0ljaXJjdW1mbGV4JywgJ0lkaWVyZXNpcycsICdJZ3JhdmUnLCAnT2FjdXRlJywgJ09jaXJjdW1mbGV4JywgJ2FwcGxlJywgJ09ncmF2ZScsICdVYWN1dGUnLCAnVWNpcmN1bWZsZXgnLFxuICAnVWdyYXZlJywgJ2RvdGxlc3NpJywgJ2NpcmN1bWZsZXgnLCAndGlsZGUnLCAnbWFjcm9uJywgJ2JyZXZlJywgJ2RvdGFjY2VudCcsICdyaW5nJywgJ2NlZGlsbGEnLCAnaHVuZ2FydW1sYXV0JyxcbiAgJ29nb25laycsICdjYXJvbicsICdMc2xhc2gnLCAnbHNsYXNoJywgJ1NjYXJvbicsICdzY2Fyb24nLCAnWmNhcm9uJywgJ3pjYXJvbicsICdicm9rZW5iYXInLCAnRXRoJywgJ2V0aCcsXG4gICdZYWN1dGUnLCAneWFjdXRlJywgJ1Rob3JuJywgJ3Rob3JuJywgJ21pbnVzJywgJ211bHRpcGx5JywgJ29uZXN1cGVyaW9yJywgJ3R3b3N1cGVyaW9yJywgJ3RocmVlc3VwZXJpb3InLFxuICAnb25laGFsZicsICdvbmVxdWFydGVyJywgJ3RocmVlcXVhcnRlcnMnLCAnZnJhbmMnLCAnR2JyZXZlJywgJ2dicmV2ZScsICdJZG90YWNjZW50JywgJ1NjZWRpbGxhJywgJ3NjZWRpbGxhJyxcbiAgJ0NhY3V0ZScsICdjYWN1dGUnLCAnQ2Nhcm9uJywgJ2NjYXJvbicsICdkY3JvYXQnXG5dO1xuIiwgImltcG9ydCBHbHlwaCBmcm9tICcuL0dseXBoJztcbmltcG9ydCBQYXRoIGZyb20gJy4vUGF0aCc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBPcGVuVHlwZSBQb3N0U2NyaXB0IGdseXBoLCBpbiB0aGUgQ29tcGFjdCBGb250IEZvcm1hdC5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ0ZGR2x5cGggZXh0ZW5kcyBHbHlwaCB7XG4gIHR5cGUgPSAnQ0ZGJztcblxuICBfZ2V0TmFtZSgpIHtcbiAgICBpZiAodGhpcy5fZm9udC5DRkYyKSB7XG4gICAgICByZXR1cm4gc3VwZXIuX2dldE5hbWUoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fZm9udFsnQ0ZGICddLmdldEdseXBoTmFtZSh0aGlzLmlkKTtcbiAgfVxuXG4gIGJpYXMocykge1xuICAgIGlmIChzLmxlbmd0aCA8IDEyNDApIHtcbiAgICAgIHJldHVybiAxMDc7XG4gICAgfSBlbHNlIGlmIChzLmxlbmd0aCA8IDMzOTAwKSB7XG4gICAgICByZXR1cm4gMTEzMTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIDMyNzY4O1xuICAgIH1cbiAgfVxuXG4gIF9nZXRQYXRoKCkge1xuICAgIGxldCBjZmYgPSB0aGlzLl9mb250LkNGRjIgfHwgdGhpcy5fZm9udFsnQ0ZGICddO1xuICAgIGxldCB7IHN0cmVhbSB9ID0gY2ZmO1xuICAgIGxldCBzdHIgPSBjZmYudG9wRGljdC5DaGFyU3RyaW5nc1t0aGlzLmlkXTtcbiAgICBsZXQgZW5kID0gc3RyLm9mZnNldCArIHN0ci5sZW5ndGg7XG4gICAgc3RyZWFtLnBvcyA9IHN0ci5vZmZzZXQ7XG5cbiAgICBsZXQgcGF0aCA9IG5ldyBQYXRoO1xuICAgIGxldCBzdGFjayA9IFtdO1xuICAgIGxldCB0cmFucyA9IFtdO1xuXG4gICAgbGV0IHdpZHRoID0gbnVsbDtcbiAgICBsZXQgblN0ZW1zID0gMDtcbiAgICBsZXQgeCA9IDAsIHkgPSAwO1xuICAgIGxldCB1c2VkR3N1YnJzO1xuICAgIGxldCB1c2VkU3VicnM7XG4gICAgbGV0IG9wZW4gPSBmYWxzZTtcblxuICAgIHRoaXMuX3VzZWRHc3VicnMgPSB1c2VkR3N1YnJzID0ge307XG4gICAgdGhpcy5fdXNlZFN1YnJzID0gdXNlZFN1YnJzID0ge307XG5cbiAgICBsZXQgZ3N1YnJzID0gY2ZmLmdsb2JhbFN1YnJJbmRleCB8fCBbXTtcbiAgICBsZXQgZ3N1YnJzQmlhcyA9IHRoaXMuYmlhcyhnc3VicnMpO1xuXG4gICAgbGV0IHByaXZhdGVEaWN0ID0gY2ZmLnByaXZhdGVEaWN0Rm9yR2x5cGgodGhpcy5pZCkgfHwge307XG4gICAgbGV0IHN1YnJzID0gcHJpdmF0ZURpY3QuU3VicnMgfHwgW107XG4gICAgbGV0IHN1YnJzQmlhcyA9IHRoaXMuYmlhcyhzdWJycyk7XG5cbiAgICBsZXQgdnN0b3JlID0gY2ZmLnRvcERpY3QudnN0b3JlICYmIGNmZi50b3BEaWN0LnZzdG9yZS5pdGVtVmFyaWF0aW9uU3RvcmU7XG4gICAgbGV0IHZzaW5kZXggPSBwcml2YXRlRGljdC52c2luZGV4O1xuICAgIGxldCB2YXJpYXRpb25Qcm9jZXNzb3IgPSB0aGlzLl9mb250Ll92YXJpYXRpb25Qcm9jZXNzb3I7XG5cbiAgICBmdW5jdGlvbiBjaGVja1dpZHRoKCkge1xuICAgICAgaWYgKHdpZHRoID09IG51bGwpIHtcbiAgICAgICAgd2lkdGggPSBzdGFjay5zaGlmdCgpICsgcHJpdmF0ZURpY3Qubm9taW5hbFdpZHRoWDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJzZVN0ZW1zKCkge1xuICAgICAgaWYgKHN0YWNrLmxlbmd0aCAlIDIgIT09IDApIHtcbiAgICAgICAgY2hlY2tXaWR0aCgpO1xuICAgICAgfVxuXG4gICAgICBuU3RlbXMgKz0gc3RhY2subGVuZ3RoID4+IDE7XG4gICAgICByZXR1cm4gc3RhY2subGVuZ3RoID0gMDtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBtb3ZlVG8oeCwgeSkge1xuICAgICAgaWYgKG9wZW4pIHtcbiAgICAgICAgcGF0aC5jbG9zZVBhdGgoKTtcbiAgICAgIH1cblxuICAgICAgcGF0aC5tb3ZlVG8oeCwgeSk7XG4gICAgICBvcGVuID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBsZXQgcGFyc2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICB3aGlsZSAoc3RyZWFtLnBvcyA8IGVuZCkge1xuICAgICAgICBsZXQgb3AgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG4gICAgICAgIGlmIChvcCA8IDMyKSB7XG4gICAgICAgICAgbGV0IGluZGV4LCBzdWJyLCBwaGFzZTtcbiAgICAgICAgICBsZXQgYzF4LCBjMXksIGMyeCwgYzJ5LCBjM3gsIGMzeTtcbiAgICAgICAgICBsZXQgYzR4LCBjNHksIGM1eCwgYzV5LCBjNngsIGM2eTtcbiAgICAgICAgICBsZXQgcHRzO1xuXG4gICAgICAgICAgc3dpdGNoIChvcCkge1xuICAgICAgICAgICAgY2FzZSAxOiAgLy8gaHN0ZW1cbiAgICAgICAgICAgIGNhc2UgMzogIC8vIHZzdGVtXG4gICAgICAgICAgICBjYXNlIDE4OiAvLyBoc3RlbWhtXG4gICAgICAgICAgICBjYXNlIDIzOiAvLyB2c3RlbWhtXG4gICAgICAgICAgICAgIHBhcnNlU3RlbXMoKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgNDogLy8gdm1vdmV0b1xuICAgICAgICAgICAgICBpZiAoc3RhY2subGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgIGNoZWNrV2lkdGgoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHkgKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgbW92ZVRvKHgsIHkpO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSA1OiAvLyBybGluZXRvXG4gICAgICAgICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPj0gMikge1xuICAgICAgICAgICAgICAgIHggKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICB5ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgcGF0aC5saW5lVG8oeCwgeSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgNjogLy8gaGxpbmV0b1xuICAgICAgICAgICAgY2FzZSA3OiAvLyB2bGluZXRvXG4gICAgICAgICAgICAgIHBoYXNlID0gb3AgPT09IDY7XG4gICAgICAgICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPj0gMSkge1xuICAgICAgICAgICAgICAgIGlmIChwaGFzZSkge1xuICAgICAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICB5ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcGF0aC5saW5lVG8oeCwgeSk7XG4gICAgICAgICAgICAgICAgcGhhc2UgPSAhcGhhc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgODogLy8gcnJjdXJ2ZXRvXG4gICAgICAgICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgYzF4ID0geCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzF5ID0geSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzJ4ID0gYzF4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHggPSBjMnggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHkgPSBjMnkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHBhdGguYmV6aWVyQ3VydmVUbyhjMXgsIGMxeSwgYzJ4LCBjMnksIHgsIHkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDEwOiAvLyBjYWxsc3ViclxuICAgICAgICAgICAgICBpbmRleCA9IHN0YWNrLnBvcCgpICsgc3VicnNCaWFzO1xuICAgICAgICAgICAgICBzdWJyID0gc3VicnNbaW5kZXhdO1xuICAgICAgICAgICAgICBpZiAoc3Vicikge1xuICAgICAgICAgICAgICAgIHVzZWRTdWJyc1tpbmRleF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgIGxldCBwID0gc3RyZWFtLnBvcztcbiAgICAgICAgICAgICAgICBsZXQgZSA9IGVuZDtcbiAgICAgICAgICAgICAgICBzdHJlYW0ucG9zID0gc3Vici5vZmZzZXQ7XG4gICAgICAgICAgICAgICAgZW5kID0gc3Vici5vZmZzZXQgKyBzdWJyLmxlbmd0aDtcbiAgICAgICAgICAgICAgICBwYXJzZSgpO1xuICAgICAgICAgICAgICAgIHN0cmVhbS5wb3MgPSBwO1xuICAgICAgICAgICAgICAgIGVuZCA9IGU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMTE6IC8vIHJldHVyblxuICAgICAgICAgICAgICBpZiAoY2ZmLnZlcnNpb24gPj0gMikge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJldHVybjtcblxuICAgICAgICAgICAgY2FzZSAxNDogLy8gZW5kY2hhclxuICAgICAgICAgICAgICBpZiAoY2ZmLnZlcnNpb24gPj0gMikge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaWYgKHN0YWNrLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBjaGVja1dpZHRoKCk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpZiAob3Blbikge1xuICAgICAgICAgICAgICAgIHBhdGguY2xvc2VQYXRoKCk7XG4gICAgICAgICAgICAgICAgb3BlbiA9IGZhbHNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDE1OiB7IC8vIHZzaW5kZXhcbiAgICAgICAgICAgICAgaWYgKGNmZi52ZXJzaW9uIDwgMikge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigndnNpbmRleCBvcGVyYXRvciBub3Qgc3VwcG9ydGVkIGluIENGRiB2MScpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgdnNpbmRleCA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY2FzZSAxNjogeyAvLyBibGVuZFxuICAgICAgICAgICAgICBpZiAoY2ZmLnZlcnNpb24gPCAyKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdibGVuZCBvcGVyYXRvciBub3Qgc3VwcG9ydGVkIGluIENGRiB2MScpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaWYgKCF2YXJpYXRpb25Qcm9jZXNzb3IpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2JsZW5kIG9wZXJhdG9yIGluIG5vbi12YXJpYXRpb24gZm9udCcpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgbGV0IGJsZW5kVmVjdG9yID0gdmFyaWF0aW9uUHJvY2Vzc29yLmdldEJsZW5kVmVjdG9yKHZzdG9yZSwgdnNpbmRleCk7XG4gICAgICAgICAgICAgIGxldCBudW1CbGVuZHMgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgbGV0IG51bU9wZXJhbmRzID0gbnVtQmxlbmRzICogYmxlbmRWZWN0b3IubGVuZ3RoO1xuICAgICAgICAgICAgICBsZXQgZGVsdGEgPSBzdGFjay5sZW5ndGggLSBudW1PcGVyYW5kcztcbiAgICAgICAgICAgICAgbGV0IGJhc2UgPSBkZWx0YSAtIG51bUJsZW5kcztcblxuICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bUJsZW5kczsgaSsrKSB7XG4gICAgICAgICAgICAgICAgbGV0IHN1bSA9IHN0YWNrW2Jhc2UgKyBpXTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGJsZW5kVmVjdG9yLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgICBzdW0gKz0gYmxlbmRWZWN0b3Jbal0gKiBzdGFja1tkZWx0YSsrXTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdGFja1tiYXNlICsgaV0gPSBzdW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB3aGlsZSAobnVtT3BlcmFuZHMtLSkge1xuICAgICAgICAgICAgICAgIHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNhc2UgMTk6IC8vIGhpbnRtYXNrXG4gICAgICAgICAgICBjYXNlIDIwOiAvLyBjbnRybWFza1xuICAgICAgICAgICAgICBwYXJzZVN0ZW1zKCk7XG4gICAgICAgICAgICAgIHN0cmVhbS5wb3MgKz0gKG5TdGVtcyArIDcpID4+IDM7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDIxOiAvLyBybW92ZXRvXG4gICAgICAgICAgICAgIGlmIChzdGFjay5sZW5ndGggPiAyKSB7XG4gICAgICAgICAgICAgICAgY2hlY2tXaWR0aCgpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICB5ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgIG1vdmVUbyh4LCB5KTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMjI6IC8vIGhtb3ZldG9cbiAgICAgICAgICAgICAgaWYgKHN0YWNrLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICBjaGVja1dpZHRoKCk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB4ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgIG1vdmVUbyh4LCB5KTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMjQ6IC8vIHJjdXJ2ZWxpbmVcbiAgICAgICAgICAgICAgd2hpbGUgKHN0YWNrLmxlbmd0aCA+PSA4KSB7XG4gICAgICAgICAgICAgICAgYzF4ID0geCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzF5ID0geSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzJ4ID0gYzF4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHggPSBjMnggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHkgPSBjMnkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHBhdGguYmV6aWVyQ3VydmVUbyhjMXgsIGMxeSwgYzJ4LCBjMnksIHgsIHkpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICB5ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgIHBhdGgubGluZVRvKHgsIHkpO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAyNTogLy8gcmxpbmVjdXJ2ZVxuICAgICAgICAgICAgICB3aGlsZSAoc3RhY2subGVuZ3RoID49IDgpIHtcbiAgICAgICAgICAgICAgICB4ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHBhdGgubGluZVRvKHgsIHkpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgYzF4ID0geCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgIGMxeSA9IHkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICBjMnggPSBjMXggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICB4ID0gYzJ4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgeSA9IGMyeSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgIHBhdGguYmV6aWVyQ3VydmVUbyhjMXgsIGMxeSwgYzJ4LCBjMnksIHgsIHkpO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAyNjogLy8gdnZjdXJ2ZXRvXG4gICAgICAgICAgICAgIGlmIChzdGFjay5sZW5ndGggJSAyKSB7XG4gICAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgd2hpbGUgKHN0YWNrLmxlbmd0aCA+PSA0KSB7XG4gICAgICAgICAgICAgICAgYzF4ID0geDtcbiAgICAgICAgICAgICAgICBjMXkgPSB5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBjMnggPSBjMXggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIGMyeSA9IGMxeSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgeCA9IGMyeDtcbiAgICAgICAgICAgICAgICB5ID0gYzJ5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCB4LCB5KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAyNzogLy8gaGhjdXJ2ZXRvXG4gICAgICAgICAgICAgIGlmIChzdGFjay5sZW5ndGggJSAyKSB7XG4gICAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgd2hpbGUgKHN0YWNrLmxlbmd0aCA+PSA0KSB7XG4gICAgICAgICAgICAgICAgYzF4ID0geCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzF5ID0geTtcbiAgICAgICAgICAgICAgICBjMnggPSBjMXggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIGMyeSA9IGMxeSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgeCA9IGMyeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgeSA9IGMyeTtcbiAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCB4LCB5KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAyODogLy8gc2hvcnRpbnRcbiAgICAgICAgICAgICAgc3RhY2sucHVzaChzdHJlYW0ucmVhZEludDE2QkUoKSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDI5OiAvLyBjYWxsZ3N1YnJcbiAgICAgICAgICAgICAgaW5kZXggPSBzdGFjay5wb3AoKSArIGdzdWJyc0JpYXM7XG4gICAgICAgICAgICAgIHN1YnIgPSBnc3VicnNbaW5kZXhdO1xuICAgICAgICAgICAgICBpZiAoc3Vicikge1xuICAgICAgICAgICAgICAgIHVzZWRHc3VicnNbaW5kZXhdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBsZXQgcCA9IHN0cmVhbS5wb3M7XG4gICAgICAgICAgICAgICAgbGV0IGUgPSBlbmQ7XG4gICAgICAgICAgICAgICAgc3RyZWFtLnBvcyA9IHN1YnIub2Zmc2V0O1xuICAgICAgICAgICAgICAgIGVuZCA9IHN1YnIub2Zmc2V0ICsgc3Vici5sZW5ndGg7XG4gICAgICAgICAgICAgICAgcGFyc2UoKTtcbiAgICAgICAgICAgICAgICBzdHJlYW0ucG9zID0gcDtcbiAgICAgICAgICAgICAgICBlbmQgPSBlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDMwOiAvLyB2aGN1cnZldG9cbiAgICAgICAgICAgIGNhc2UgMzE6IC8vIGh2Y3VydmV0b1xuICAgICAgICAgICAgICBwaGFzZSA9IG9wID09PSAzMTtcbiAgICAgICAgICAgICAgd2hpbGUgKHN0YWNrLmxlbmd0aCA+PSA0KSB7XG4gICAgICAgICAgICAgICAgaWYgKHBoYXNlKSB7XG4gICAgICAgICAgICAgICAgICBjMXggPSB4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMxeSA9IHk7XG4gICAgICAgICAgICAgICAgICBjMnggPSBjMXggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzJ5ID0gYzF5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIHkgPSBjMnkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgeCA9IGMyeCArIChzdGFjay5sZW5ndGggPT09IDEgPyBzdGFjay5zaGlmdCgpIDogMCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIGMxeCA9IHg7XG4gICAgICAgICAgICAgICAgICBjMXkgPSB5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMyeCA9IGMxeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgeCA9IGMyeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICB5ID0gYzJ5ICsgKHN0YWNrLmxlbmd0aCA9PT0gMSA/IHN0YWNrLnNoaWZ0KCkgOiAwKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCB4LCB5KTtcbiAgICAgICAgICAgICAgICBwaGFzZSA9ICFwaGFzZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAxMjpcbiAgICAgICAgICAgICAgb3AgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG4gICAgICAgICAgICAgIHN3aXRjaCAob3ApIHtcbiAgICAgICAgICAgICAgICBjYXNlIDM6IC8vIGFuZFxuICAgICAgICAgICAgICAgICAgbGV0IGEgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGxldCBiID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKGEgJiYgYiA/IDEgOiAwKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSA0OiAvLyBvclxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgYiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChhIHx8IGIgPyAxIDogMCk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgNTogLy8gbm90XG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKGEgPyAwIDogMSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgOTogLy8gYWJzXG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKE1hdGguYWJzKGEpKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAxMDogLy8gYWRkXG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBiID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKGEgKyBiKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAxMTogLy8gc3ViXG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBiID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKGEgLSBiKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAxMjogLy8gZGl2XG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBiID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKGEgLyBiKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAxNDogLy8gbmVnXG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKC1hKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAxNTogLy8gZXFcbiAgICAgICAgICAgICAgICAgIGEgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGIgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnB1c2goYSA9PT0gYiA/IDEgOiAwKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAxODogLy8gZHJvcFxuICAgICAgICAgICAgICAgICAgc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMjA6IC8vIHB1dFxuICAgICAgICAgICAgICAgICAgbGV0IHZhbCA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgbGV0IGlkeCA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgdHJhbnNbaWR4XSA9IHZhbDtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAyMTogLy8gZ2V0XG4gICAgICAgICAgICAgICAgICBpZHggPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnB1c2godHJhbnNbaWR4XSB8fCAwKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAyMjogLy8gaWZlbHNlXG4gICAgICAgICAgICAgICAgICBsZXQgczEgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGxldCBzMiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgbGV0IHYxID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBsZXQgdjIgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnB1c2godjEgPD0gdjIgPyBzMSA6IHMyKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAyMzogLy8gcmFuZG9tXG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKE1hdGgucmFuZG9tKCkpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDI0OiAvLyBtdWxcbiAgICAgICAgICAgICAgICAgIGEgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGIgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnB1c2goYSAqIGIpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDI2OiAvLyBzcXJ0XG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKE1hdGguc3FydChhKSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMjc6IC8vIGR1cFxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChhLCBhKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAyODogLy8gZXhjaFxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgYiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChiLCBhKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAyOTogLy8gaW5kZXhcbiAgICAgICAgICAgICAgICAgIGlkeCA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgaWYgKGlkeCA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgaWR4ID0gMDtcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaWR4ID4gc3RhY2subGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICBpZHggPSBzdGFjay5sZW5ndGggLSAxO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKHN0YWNrW2lkeF0pO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDMwOiAvLyByb2xsXG4gICAgICAgICAgICAgICAgICBsZXQgbiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgbGV0IGogPSBzdGFjay5wb3AoKTtcblxuICAgICAgICAgICAgICAgICAgaWYgKGogPj0gMCkge1xuICAgICAgICAgICAgICAgICAgICB3aGlsZSAoaiA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHN0YWNrW24gLSAxXTtcbiAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gbiAtIDI7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGFja1tpICsgMV0gPSBzdGFja1tpXTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICBzdGFja1swXSA9IHQ7XG4gICAgICAgICAgICAgICAgICAgICAgai0tO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB3aGlsZSAoaiA8IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICB2YXIgdCA9IHN0YWNrWzBdO1xuICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IG47IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhY2tbaV0gPSBzdGFja1tpICsgMV07XG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgc3RhY2tbbiAtIDFdID0gdDtcbiAgICAgICAgICAgICAgICAgICAgICBqKys7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAzNDogLy8gaGZsZXhcbiAgICAgICAgICAgICAgICAgIGMxeCA9IHggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzF5ID0geTtcbiAgICAgICAgICAgICAgICAgIGMyeCA9IGMxeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzN4ID0gYzJ4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMzeSA9IGMyeTtcbiAgICAgICAgICAgICAgICAgIGM0eCA9IGMzeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjNHkgPSBjM3k7XG4gICAgICAgICAgICAgICAgICBjNXggPSBjNHggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzV5ID0gYzR5O1xuICAgICAgICAgICAgICAgICAgYzZ4ID0gYzV4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGM2eSA9IGM1eTtcbiAgICAgICAgICAgICAgICAgIHggPSBjNng7XG4gICAgICAgICAgICAgICAgICB5ID0gYzZ5O1xuXG4gICAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCBjM3gsIGMzeSk7XG4gICAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzR4LCBjNHksIGM1eCwgYzV5LCBjNngsIGM2eSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMzU6IC8vIGZsZXhcbiAgICAgICAgICAgICAgICAgIHB0cyA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSA1OyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgICB5ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICAgIHB0cy5wdXNoKHgsIHkpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oLi4ucHRzLnNsaWNlKDAsIDYpKTtcbiAgICAgICAgICAgICAgICAgIHBhdGguYmV6aWVyQ3VydmVUbyguLi5wdHMuc2xpY2UoNikpO1xuICAgICAgICAgICAgICAgICAgc3RhY2suc2hpZnQoKTsgLy8gZmRcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAzNjogLy8gaGZsZXgxXG4gICAgICAgICAgICAgICAgICBjMXggPSB4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMxeSA9IHkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzJ4ID0gYzF4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMyeSA9IGMxeSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjM3ggPSBjMnggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzN5ID0gYzJ5O1xuICAgICAgICAgICAgICAgICAgYzR4ID0gYzN4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGM0eSA9IGMzeTtcbiAgICAgICAgICAgICAgICAgIGM1eCA9IGM0eCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjNXkgPSBjNHkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzZ4ID0gYzV4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGM2eSA9IGM1eTtcbiAgICAgICAgICAgICAgICAgIHggPSBjNng7XG4gICAgICAgICAgICAgICAgICB5ID0gYzZ5O1xuXG4gICAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCBjM3gsIGMzeSk7XG4gICAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzR4LCBjNHksIGM1eCwgYzV5LCBjNngsIGM2eSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMzc6IC8vIGZsZXgxXG4gICAgICAgICAgICAgICAgICBsZXQgc3RhcnR4ID0geDtcbiAgICAgICAgICAgICAgICAgIGxldCBzdGFydHkgPSB5O1xuXG4gICAgICAgICAgICAgICAgICBwdHMgPSBbXTtcbiAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDQ7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICB4ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICAgIHkgKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgICAgcHRzLnB1c2goeCwgeSk7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGlmIChNYXRoLmFicyh4IC0gc3RhcnR4KSA+IE1hdGguYWJzKHkgLSBzdGFydHkpKSB7IC8vIGhvcml6b250YWxcbiAgICAgICAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgICB5ID0gc3RhcnR5O1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgeCA9IHN0YXJ0eDtcbiAgICAgICAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBwdHMucHVzaCh4LCB5KTtcbiAgICAgICAgICAgICAgICAgIHBhdGguYmV6aWVyQ3VydmVUbyguLi5wdHMuc2xpY2UoMCwgNikpO1xuICAgICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKC4uLnB0cy5zbGljZSg2KSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gb3A6IDEyICR7b3B9YCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBvcDogJHtvcH1gKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfSBlbHNlIGlmIChvcCA8IDI0Nykge1xuICAgICAgICAgIHN0YWNrLnB1c2gob3AgLSAxMzkpO1xuICAgICAgICB9IGVsc2UgaWYgKG9wIDwgMjUxKSB7XG4gICAgICAgICAgdmFyIGIxID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgICAgIHN0YWNrLnB1c2goKG9wIC0gMjQ3KSAqIDI1NiArIGIxICsgMTA4KTtcbiAgICAgICAgfSBlbHNlIGlmIChvcCA8IDI1NSkge1xuICAgICAgICAgIHZhciBiMSA9IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgICAgICBzdGFjay5wdXNoKC0ob3AgLSAyNTEpICogMjU2IC0gYjEgLSAxMDgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHN0YWNrLnB1c2goc3RyZWFtLnJlYWRJbnQzMkJFKCkgLyA2NTUzNik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgcGFyc2UoKTtcblxuICAgIGlmIChvcGVuKSB7XG4gICAgICBwYXRoLmNsb3NlUGF0aCgpO1xuICAgIH1cblxuICAgIHJldHVybiBwYXRoO1xuICB9XG59XG4iLCAiaW1wb3J0IFRURkdseXBoIGZyb20gJy4vVFRGR2x5cGgnO1xuaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBTQklYSW1hZ2UgPSBuZXcgci5TdHJ1Y3Qoe1xuICBvcmlnaW5YOiByLnVpbnQxNixcbiAgb3JpZ2luWTogci51aW50MTYsXG4gIHR5cGU6IG5ldyByLlN0cmluZyg0KSxcbiAgZGF0YTogbmV3IHIuQnVmZmVyKHQgPT4gdC5wYXJlbnQuYnVmbGVuIC0gdC5fY3VycmVudE9mZnNldClcbn0pO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb2xvciAoZS5nLiBlbW9qaSkgZ2x5cGggaW4gQXBwbGUncyBTQklYIGZvcm1hdC5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU0JJWEdseXBoIGV4dGVuZHMgVFRGR2x5cGgge1xuICB0eXBlID0gJ1NCSVgnO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIG9iamVjdCByZXByZXNlbnRpbmcgYSBnbHlwaCBpbWFnZSBhdCB0aGUgZ2l2ZW4gcG9pbnQgc2l6ZS5cbiAgICogVGhlIG9iamVjdCBoYXMgYSBkYXRhIHByb3BlcnR5IHdpdGggYSBCdWZmZXIgY29udGFpbmluZyB0aGUgYWN0dWFsIGltYWdlIGRhdGEsXG4gICAqIGFsb25nIHdpdGggdGhlIGltYWdlIHR5cGUsIGFuZCBvcmlnaW4uXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBzaXplXG4gICAqIEByZXR1cm4ge29iamVjdH1cbiAgICovXG4gIGdldEltYWdlRm9yU2l6ZShzaXplKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl9mb250LnNiaXguaW1hZ2VUYWJsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciB0YWJsZSA9IHRoaXMuX2ZvbnQuc2JpeC5pbWFnZVRhYmxlc1tpXTtcbiAgICAgIGlmICh0YWJsZS5wcGVtID49IHNpemUpIHsgYnJlYWs7IH1cbiAgICB9XG5cbiAgICBsZXQgb2Zmc2V0cyA9IHRhYmxlLmltYWdlT2Zmc2V0cztcbiAgICBsZXQgc3RhcnQgPSBvZmZzZXRzW3RoaXMuaWRdO1xuICAgIGxldCBlbmQgPSBvZmZzZXRzW3RoaXMuaWQgKyAxXTtcblxuICAgIGlmIChzdGFydCA9PT0gZW5kKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICB0aGlzLl9mb250LnN0cmVhbS5wb3MgPSBzdGFydDtcbiAgICByZXR1cm4gU0JJWEltYWdlLmRlY29kZSh0aGlzLl9mb250LnN0cmVhbSwge2J1ZmxlbjogZW5kIC0gc3RhcnR9KTtcbiAgfVxuXG4gIHJlbmRlcihjdHgsIHNpemUpIHtcbiAgICBsZXQgaW1nID0gdGhpcy5nZXRJbWFnZUZvclNpemUoc2l6ZSk7XG4gICAgaWYgKGltZyAhPSBudWxsKSB7XG4gICAgICBsZXQgc2NhbGUgPSBzaXplIC8gdGhpcy5fZm9udC51bml0c1BlckVtO1xuICAgICAgY3R4LmltYWdlKGltZy5kYXRhLCB7aGVpZ2h0OiBzaXplLCB4OiBpbWcub3JpZ2luWCwgeTogKHRoaXMuYmJveC5taW5ZIC0gaW1nLm9yaWdpblkpICogc2NhbGV9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZm9udC5zYml4LmZsYWdzLnJlbmRlck91dGxpbmVzKSB7XG4gICAgICBzdXBlci5yZW5kZXIoY3R4LCBzaXplKTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQgR2x5cGggZnJvbSAnLi9HbHlwaCc7XG5pbXBvcnQgQkJveCBmcm9tICcuL0JCb3gnO1xuXG5jbGFzcyBDT0xSTGF5ZXIge1xuICBjb25zdHJ1Y3RvcihnbHlwaCwgY29sb3IpIHtcbiAgICB0aGlzLmdseXBoID0gZ2x5cGg7XG4gICAgdGhpcy5jb2xvciA9IGNvbG9yO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNvbG9yIChlLmcuIGVtb2ppKSBnbHlwaCBpbiBNaWNyb3NvZnQncyBDT0xSIGZvcm1hdC5cbiAqIEVhY2ggZ2x5cGggaW4gdGhpcyBmb3JtYXQgY29udGFpbiBhIGxpc3Qgb2YgY29sb3JlZCBsYXllcnMsIGVhY2hcbiAqIG9mIHdoaWNoICBpcyBhbm90aGVyIHZlY3RvciBnbHlwaC5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ09MUkdseXBoIGV4dGVuZHMgR2x5cGgge1xuICB0eXBlID0gJ0NPTFInO1xuXG4gIF9nZXRCQm94KCkge1xuICAgIGxldCBiYm94ID0gbmV3IEJCb3g7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmxheWVycy5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGxheWVyID0gdGhpcy5sYXllcnNbaV07XG4gICAgICBsZXQgYiA9IGxheWVyLmdseXBoLmJib3g7XG4gICAgICBiYm94LmFkZFBvaW50KGIubWluWCwgYi5taW5ZKTtcbiAgICAgIGJib3guYWRkUG9pbnQoYi5tYXhYLCBiLm1heFkpO1xuICAgIH1cblxuICAgIHJldHVybiBiYm94O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gYXJyYXkgb2Ygb2JqZWN0cyBjb250YWluaW5nIHRoZSBnbHlwaCBhbmQgY29sb3IgZm9yXG4gICAqIGVhY2ggbGF5ZXIgaW4gdGhlIGNvbXBvc2l0ZSBjb2xvciBnbHlwaC5cbiAgICogQHR5cGUge29iamVjdFtdfVxuICAgKi9cbiAgZ2V0IGxheWVycygpIHtcbiAgICBsZXQgY3BhbCA9IHRoaXMuX2ZvbnQuQ1BBTDtcbiAgICBsZXQgY29sciA9IHRoaXMuX2ZvbnQuQ09MUjtcbiAgICBsZXQgbG93ID0gMDtcbiAgICBsZXQgaGlnaCA9IGNvbHIuYmFzZUdseXBoUmVjb3JkLmxlbmd0aCAtIDE7XG5cbiAgICB3aGlsZSAobG93IDw9IGhpZ2gpIHtcbiAgICAgIGxldCBtaWQgPSAobG93ICsgaGlnaCkgPj4gMTtcbiAgICAgIHZhciByZWMgPSBjb2xyLmJhc2VHbHlwaFJlY29yZFttaWRdO1xuXG4gICAgICBpZiAodGhpcy5pZCA8IHJlYy5naWQpIHtcbiAgICAgICAgaGlnaCA9IG1pZCAtIDE7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaWQgPiByZWMuZ2lkKSB7XG4gICAgICAgIGxvdyA9IG1pZCArIDE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgYmFzZUxheWVyID0gcmVjO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpZiBiYXNlIGdseXBoIG5vdCBmb3VuZCBpbiBDT0xSIHRhYmxlLFxuICAgIC8vIGRlZmF1bHQgdG8gbm9ybWFsIGdseXBoIGZyb20gZ2x5ZiBvciBDRkZcbiAgICBpZiAoYmFzZUxheWVyID09IG51bGwpIHtcbiAgICAgIHZhciBnID0gdGhpcy5fZm9udC5fZ2V0QmFzZUdseXBoKHRoaXMuaWQpO1xuICAgICAgdmFyIGNvbG9yID0ge1xuICAgICAgICByZWQ6IDAsXG4gICAgICAgIGdyZWVuOiAwLFxuICAgICAgICBibHVlOiAwLFxuICAgICAgICBhbHBoYTogMjU1XG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gW25ldyBDT0xSTGF5ZXIoZywgY29sb3IpXTtcbiAgICB9XG5cbiAgICAvLyBvdGhlcndpc2UsIHJldHVybiBhbiBhcnJheSBvZiBhbGwgdGhlIGxheWVyc1xuICAgIGxldCBsYXllcnMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gYmFzZUxheWVyLmZpcnN0TGF5ZXJJbmRleDsgaSA8IGJhc2VMYXllci5maXJzdExheWVySW5kZXggKyBiYXNlTGF5ZXIubnVtTGF5ZXJzOyBpKyspIHtcbiAgICAgIHZhciByZWMgPSBjb2xyLmxheWVyUmVjb3Jkc1tpXTtcbiAgICAgIHZhciBjb2xvciA9IGNwYWwuY29sb3JSZWNvcmRzW3JlYy5wYWxldHRlSW5kZXhdO1xuICAgICAgdmFyIGcgPSB0aGlzLl9mb250Ll9nZXRCYXNlR2x5cGgocmVjLmdpZCk7XG4gICAgICBsYXllcnMucHVzaChuZXcgQ09MUkxheWVyKGcsIGNvbG9yKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxheWVycztcbiAgfVxuXG4gIHJlbmRlcihjdHgsIHNpemUpIHtcbiAgICBmb3IgKGxldCB7Z2x5cGgsIGNvbG9yfSBvZiB0aGlzLmxheWVycykge1xuICAgICAgY3R4LmZpbGxDb2xvcihbY29sb3IucmVkLCBjb2xvci5ncmVlbiwgY29sb3IuYmx1ZV0sIGNvbG9yLmFscGhhIC8gMjU1ICogMTAwKTtcbiAgICAgIGdseXBoLnJlbmRlcihjdHgsIHNpemUpO1xuICAgIH1cblxuICAgIHJldHVybjtcbiAgfVxufVxuIiwgImNvbnN0IFRVUExFU19TSEFSRV9QT0lOVF9OVU1CRVJTID0gMHg4MDAwO1xuY29uc3QgVFVQTEVfQ09VTlRfTUFTSyAgICAgICAgICAgPSAweDBmZmY7XG5jb25zdCBFTUJFRERFRF9UVVBMRV9DT09SRCAgICAgICA9IDB4ODAwMDtcbmNvbnN0IElOVEVSTUVESUFURV9UVVBMRSAgICAgICAgID0gMHg0MDAwO1xuY29uc3QgUFJJVkFURV9QT0lOVF9OVU1CRVJTICAgICAgPSAweDIwMDA7XG5jb25zdCBUVVBMRV9JTkRFWF9NQVNLICAgICAgICAgICA9IDB4MGZmZjtcbmNvbnN0IFBPSU5UU19BUkVfV09SRFMgICAgICAgICAgID0gMHg4MDtcbmNvbnN0IFBPSU5UX1JVTl9DT1VOVF9NQVNLICAgICAgID0gMHg3ZjtcbmNvbnN0IERFTFRBU19BUkVfWkVSTyAgICAgICAgICAgID0gMHg4MDtcbmNvbnN0IERFTFRBU19BUkVfV09SRFMgICAgICAgICAgID0gMHg0MDtcbmNvbnN0IERFTFRBX1JVTl9DT1VOVF9NQVNLICAgICAgID0gMHgzZjtcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIHRyYW5zZm9ybXMgVHJ1ZVR5cGUgZ2x5cGhzIGFjY29yZGluZyB0byB0aGUgZGF0YSBmcm9tXG4gKiB0aGUgQXBwbGUgQWR2YW5jZWQgVHlwb2dyYXBoeSB2YXJpYXRpb24gdGFibGVzIChmdmFyLCBndmFyLCBhbmQgYXZhcikuXG4gKiBUaGVzZSB0YWJsZXMgYWxsb3cgaW5maW5pdGUgYWRqdXN0bWVudHMgdG8gZ2x5cGggd2VpZ2h0LCB3aWR0aCwgc2xhbnQsXG4gKiBhbmQgb3B0aWNhbCBzaXplIHdpdGhvdXQgdGhlIGRlc2lnbmVyIG5lZWRpbmcgdG8gc3BlY2lmeSBldmVyeSBleGFjdCBzdHlsZS5cbiAqXG4gKiBBcHBsZSdzIGRvY3VtZW50YXRpb24gZm9yIHRoZXNlIHRhYmxlcyBpcyBub3QgZ3JlYXQsIHNvIHRoYW5rcyB0byB0aGVcbiAqIEZyZWV0eXBlIHByb2plY3QgZm9yIGZpZ3VyaW5nIG11Y2ggb2YgdGhpcyBvdXQuXG4gKlxuICogQHByaXZhdGVcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgR2x5cGhWYXJpYXRpb25Qcm9jZXNzb3Ige1xuICBjb25zdHJ1Y3Rvcihmb250LCBjb29yZHMpIHtcbiAgICB0aGlzLmZvbnQgPSBmb250O1xuICAgIHRoaXMubm9ybWFsaXplZENvb3JkcyA9IHRoaXMubm9ybWFsaXplQ29vcmRzKGNvb3Jkcyk7XG4gICAgdGhpcy5ibGVuZFZlY3RvcnMgPSBuZXcgTWFwO1xuICB9XG5cbiAgbm9ybWFsaXplQ29vcmRzKGNvb3Jkcykge1xuICAgIC8vIHRoZSBkZWZhdWx0IG1hcHBpbmcgaXMgbGluZWFyIGFsb25nIGVhY2ggYXhpcywgaW4gdHdvIHNlZ21lbnRzOlxuICAgIC8vIGZyb20gdGhlIG1pblZhbHVlIHRvIGRlZmF1bHRWYWx1ZSwgYW5kIGZyb20gZGVmYXVsdFZhbHVlIHRvIG1heFZhbHVlLlxuICAgIGxldCBub3JtYWxpemVkID0gW107XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmZvbnQuZnZhci5heGlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgYXhpcyA9IHRoaXMuZm9udC5mdmFyLmF4aXNbaV07XG4gICAgICBpZiAoY29vcmRzW2ldIDwgYXhpcy5kZWZhdWx0VmFsdWUpIHtcbiAgICAgICAgbm9ybWFsaXplZC5wdXNoKChjb29yZHNbaV0gLSBheGlzLmRlZmF1bHRWYWx1ZSArIE51bWJlci5FUFNJTE9OKSAvIChheGlzLmRlZmF1bHRWYWx1ZSAtIGF4aXMubWluVmFsdWUgKyBOdW1iZXIuRVBTSUxPTikpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbm9ybWFsaXplZC5wdXNoKChjb29yZHNbaV0gLSBheGlzLmRlZmF1bHRWYWx1ZSArIE51bWJlci5FUFNJTE9OKSAvIChheGlzLm1heFZhbHVlIC0gYXhpcy5kZWZhdWx0VmFsdWUgKyBOdW1iZXIuRVBTSUxPTikpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGlmIHRoZXJlIGlzIGFuIGF2YXIgdGFibGUsIHRoZSBub3JtYWxpemVkIHZhbHVlIGlzIGNhbGN1bGF0ZWRcbiAgICAvLyBieSBpbnRlcnBvbGF0aW5nIGJldHdlZW4gdGhlIHR3byBuZWFyZXN0IG1hcHBlZCB2YWx1ZXMuXG4gICAgaWYgKHRoaXMuZm9udC5hdmFyKSB7XG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuZm9udC5hdmFyLnNlZ21lbnQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IHNlZ21lbnQgPSB0aGlzLmZvbnQuYXZhci5zZWdtZW50W2ldO1xuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHNlZ21lbnQuY29ycmVzcG9uZGVuY2UubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICBsZXQgcGFpciA9IHNlZ21lbnQuY29ycmVzcG9uZGVuY2Vbal07XG4gICAgICAgICAgaWYgKGogPj0gMSAmJiBub3JtYWxpemVkW2ldIDwgcGFpci5mcm9tQ29vcmQpIHtcbiAgICAgICAgICAgIGxldCBwcmV2ID0gc2VnbWVudC5jb3JyZXNwb25kZW5jZVtqIC0gMV07XG4gICAgICAgICAgICBub3JtYWxpemVkW2ldID0gKChub3JtYWxpemVkW2ldIC0gcHJldi5mcm9tQ29vcmQpICogKHBhaXIudG9Db29yZCAtIHByZXYudG9Db29yZCkgKyBOdW1iZXIuRVBTSUxPTikgL1xuICAgICAgICAgICAgICAocGFpci5mcm9tQ29vcmQgLSBwcmV2LmZyb21Db29yZCArIE51bWJlci5FUFNJTE9OKSArXG4gICAgICAgICAgICAgIHByZXYudG9Db29yZDtcblxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG4gIH1cblxuICB0cmFuc2Zvcm1Qb2ludHMoZ2lkLCBnbHlwaFBvaW50cykge1xuICAgIGlmICghdGhpcy5mb250LmZ2YXIgfHwgIXRoaXMuZm9udC5ndmFyKSB7IHJldHVybjsgfVxuXG4gICAgbGV0IHsgZ3ZhciB9ID0gdGhpcy5mb250O1xuICAgIGlmIChnaWQgPj0gZ3Zhci5nbHlwaENvdW50KSB7IHJldHVybjsgfVxuXG4gICAgbGV0IG9mZnNldCA9IGd2YXIub2Zmc2V0c1tnaWRdO1xuICAgIGlmIChvZmZzZXQgPT09IGd2YXIub2Zmc2V0c1tnaWQgKyAxXSkgeyByZXR1cm47IH1cblxuICAgIC8vIFJlYWQgdGhlIGd2YXIgZGF0YSBmb3IgdGhpcyBnbHlwaFxuICAgIGxldCB7IHN0cmVhbSB9ID0gdGhpcy5mb250O1xuICAgIHN0cmVhbS5wb3MgPSBvZmZzZXQ7XG4gICAgaWYgKHN0cmVhbS5wb3MgPj0gc3RyZWFtLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCB0dXBsZUNvdW50ID0gc3RyZWFtLnJlYWRVSW50MTZCRSgpO1xuICAgIGxldCBvZmZzZXRUb0RhdGEgPSBvZmZzZXQgKyBzdHJlYW0ucmVhZFVJbnQxNkJFKCk7XG5cbiAgICBpZiAodHVwbGVDb3VudCAmIFRVUExFU19TSEFSRV9QT0lOVF9OVU1CRVJTKSB7XG4gICAgICB2YXIgaGVyZSA9IHN0cmVhbS5wb3M7XG4gICAgICBzdHJlYW0ucG9zID0gb2Zmc2V0VG9EYXRhO1xuICAgICAgdmFyIHNoYXJlZFBvaW50cyA9IHRoaXMuZGVjb2RlUG9pbnRzKCk7XG4gICAgICBvZmZzZXRUb0RhdGEgPSBzdHJlYW0ucG9zO1xuICAgICAgc3RyZWFtLnBvcyA9IGhlcmU7XG4gICAgfVxuXG4gICAgbGV0IG9yaWdQb2ludHMgPSBnbHlwaFBvaW50cy5tYXAocHQgPT4gcHQuY29weSgpKTtcblxuICAgIHR1cGxlQ291bnQgJj0gVFVQTEVfQ09VTlRfTUFTSztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHR1cGxlQ291bnQ7IGkrKykge1xuICAgICAgbGV0IHR1cGxlRGF0YVNpemUgPSBzdHJlYW0ucmVhZFVJbnQxNkJFKCk7XG4gICAgICBsZXQgdHVwbGVJbmRleCA9IHN0cmVhbS5yZWFkVUludDE2QkUoKTtcblxuICAgICAgaWYgKHR1cGxlSW5kZXggJiBFTUJFRERFRF9UVVBMRV9DT09SRCkge1xuICAgICAgICB2YXIgdHVwbGVDb29yZHMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgYSA9IDA7IGEgPCBndmFyLmF4aXNDb3VudDsgYSsrKSB7XG4gICAgICAgICAgdHVwbGVDb29yZHMucHVzaChzdHJlYW0ucmVhZEludDE2QkUoKSAvIDE2Mzg0KTtcbiAgICAgICAgfVxuXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoKHR1cGxlSW5kZXggJiBUVVBMRV9JTkRFWF9NQVNLKSA+PSBndmFyLmdsb2JhbENvb3JkQ291bnQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZ3ZhciB0YWJsZScpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIHR1cGxlQ29vcmRzID0gZ3Zhci5nbG9iYWxDb29yZHNbdHVwbGVJbmRleCAmIFRVUExFX0lOREVYX01BU0tdO1xuICAgICAgfVxuXG4gICAgICBpZiAodHVwbGVJbmRleCAmIElOVEVSTUVESUFURV9UVVBMRSkge1xuICAgICAgICB2YXIgc3RhcnRDb29yZHMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgYSA9IDA7IGEgPCBndmFyLmF4aXNDb3VudDsgYSsrKSB7XG4gICAgICAgICAgc3RhcnRDb29yZHMucHVzaChzdHJlYW0ucmVhZEludDE2QkUoKSAvIDE2Mzg0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBlbmRDb29yZHMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgYSA9IDA7IGEgPCBndmFyLmF4aXNDb3VudDsgYSsrKSB7XG4gICAgICAgICAgZW5kQ29vcmRzLnB1c2goc3RyZWFtLnJlYWRJbnQxNkJFKCkgLyAxNjM4NCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gR2V0IHRoZSBmYWN0b3IgYXQgd2hpY2ggdG8gYXBwbHkgdGhpcyB0dXBsZVxuICAgICAgbGV0IGZhY3RvciA9IHRoaXMudHVwbGVGYWN0b3IodHVwbGVJbmRleCwgdHVwbGVDb29yZHMsIHN0YXJ0Q29vcmRzLCBlbmRDb29yZHMpO1xuICAgICAgaWYgKGZhY3RvciA9PT0gMCkge1xuICAgICAgICBvZmZzZXRUb0RhdGEgKz0gdHVwbGVEYXRhU2l6ZTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIHZhciBoZXJlID0gc3RyZWFtLnBvcztcbiAgICAgIHN0cmVhbS5wb3MgPSBvZmZzZXRUb0RhdGE7XG5cbiAgICAgIGlmICh0dXBsZUluZGV4ICYgUFJJVkFURV9QT0lOVF9OVU1CRVJTKSB7XG4gICAgICAgIHZhciBwb2ludHMgPSB0aGlzLmRlY29kZVBvaW50cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIHBvaW50cyA9IHNoYXJlZFBvaW50cztcbiAgICAgIH1cblxuICAgICAgLy8gcG9pbnRzLmxlbmd0aCA9IDAgbWVhbnMgdGhlcmUgYXJlIGRlbHRhcyBmb3IgYWxsIHBvaW50c1xuICAgICAgbGV0IG5Qb2ludHMgPSBwb2ludHMubGVuZ3RoID09PSAwID8gZ2x5cGhQb2ludHMubGVuZ3RoIDogcG9pbnRzLmxlbmd0aDtcbiAgICAgIGxldCB4RGVsdGFzID0gdGhpcy5kZWNvZGVEZWx0YXMoblBvaW50cyk7XG4gICAgICBsZXQgeURlbHRhcyA9IHRoaXMuZGVjb2RlRGVsdGFzKG5Qb2ludHMpO1xuXG4gICAgICBpZiAocG9pbnRzLmxlbmd0aCA9PT0gMCkgeyAvLyBhbGwgcG9pbnRzXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ2x5cGhQb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICB2YXIgcG9pbnQgPSBnbHlwaFBvaW50c1tpXTtcbiAgICAgICAgICBwb2ludC54ICs9IE1hdGgucm91bmQoeERlbHRhc1tpXSAqIGZhY3Rvcik7XG4gICAgICAgICAgcG9pbnQueSArPSBNYXRoLnJvdW5kKHlEZWx0YXNbaV0gKiBmYWN0b3IpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsZXQgb3V0UG9pbnRzID0gb3JpZ1BvaW50cy5tYXAocHQgPT4gcHQuY29weSgpKTtcbiAgICAgICAgbGV0IGhhc0RlbHRhID0gZ2x5cGhQb2ludHMubWFwKCgpID0+IGZhbHNlKTtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBvaW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGxldCBpZHggPSBwb2ludHNbaV07XG4gICAgICAgICAgaWYgKGlkeCA8IGdseXBoUG9pbnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgbGV0IHBvaW50ID0gb3V0UG9pbnRzW2lkeF07XG4gICAgICAgICAgICBoYXNEZWx0YVtpZHhdID0gdHJ1ZTtcblxuICAgICAgICAgICAgcG9pbnQueCArPSB4RGVsdGFzW2ldICogZmFjdG9yO1xuICAgICAgICAgICAgcG9pbnQueSArPSB5RGVsdGFzW2ldICogZmFjdG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaW50ZXJwb2xhdGVNaXNzaW5nRGVsdGFzKG91dFBvaW50cywgb3JpZ1BvaW50cywgaGFzRGVsdGEpO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ2x5cGhQb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBsZXQgZGVsdGFYID0gb3V0UG9pbnRzW2ldLnggLSBvcmlnUG9pbnRzW2ldLng7XG4gICAgICAgICAgbGV0IGRlbHRhWSA9IG91dFBvaW50c1tpXS55IC0gb3JpZ1BvaW50c1tpXS55O1xuXG4gICAgICAgICAgZ2x5cGhQb2ludHNbaV0ueCA9IE1hdGgucm91bmQoZ2x5cGhQb2ludHNbaV0ueCArIGRlbHRhWCk7XG4gICAgICAgICAgZ2x5cGhQb2ludHNbaV0ueSA9IE1hdGgucm91bmQoZ2x5cGhQb2ludHNbaV0ueSArIGRlbHRhWSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgb2Zmc2V0VG9EYXRhICs9IHR1cGxlRGF0YVNpemU7XG4gICAgICBzdHJlYW0ucG9zID0gaGVyZTtcbiAgICB9XG4gIH1cblxuICBkZWNvZGVQb2ludHMoKSB7XG4gICAgbGV0IHN0cmVhbSA9IHRoaXMuZm9udC5zdHJlYW07XG4gICAgbGV0IGNvdW50ID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuXG4gICAgaWYgKGNvdW50ICYgUE9JTlRTX0FSRV9XT1JEUykge1xuICAgICAgY291bnQgPSAoY291bnQgJiBQT0lOVF9SVU5fQ09VTlRfTUFTSykgPDwgOCB8IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICB9XG5cbiAgICBsZXQgcG9pbnRzID0gbmV3IFVpbnQxNkFycmF5KGNvdW50KTtcbiAgICBsZXQgaSA9IDA7XG4gICAgbGV0IHBvaW50ID0gMDtcbiAgICB3aGlsZSAoaSA8IGNvdW50KSB7XG4gICAgICBsZXQgcnVuID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgbGV0IHJ1bkNvdW50ID0gKHJ1biAmIFBPSU5UX1JVTl9DT1VOVF9NQVNLKSArIDE7XG4gICAgICBsZXQgZm4gPSBydW4gJiBQT0lOVFNfQVJFX1dPUkRTID8gc3RyZWFtLnJlYWRVSW50MTYgOiBzdHJlYW0ucmVhZFVJbnQ4O1xuXG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHJ1bkNvdW50ICYmIGkgPCBjb3VudDsgaisrKSB7XG4gICAgICAgIHBvaW50ICs9IGZuLmNhbGwoc3RyZWFtKTtcbiAgICAgICAgcG9pbnRzW2krK10gPSBwb2ludDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcG9pbnRzO1xuICB9XG5cbiAgZGVjb2RlRGVsdGFzKGNvdW50KSB7XG4gICAgbGV0IHN0cmVhbSA9IHRoaXMuZm9udC5zdHJlYW07XG4gICAgbGV0IGkgPSAwO1xuICAgIGxldCBkZWx0YXMgPSBuZXcgSW50MTZBcnJheShjb3VudCk7XG5cbiAgICB3aGlsZSAoaSA8IGNvdW50KSB7XG4gICAgICBsZXQgcnVuID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgbGV0IHJ1bkNvdW50ID0gKHJ1biAmIERFTFRBX1JVTl9DT1VOVF9NQVNLKSArIDE7XG5cbiAgICAgIGlmIChydW4gJiBERUxUQVNfQVJFX1pFUk8pIHtcbiAgICAgICAgaSArPSBydW5Db3VudDtcblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGV0IGZuID0gcnVuICYgREVMVEFTX0FSRV9XT1JEUyA/IHN0cmVhbS5yZWFkSW50MTZCRSA6IHN0cmVhbS5yZWFkSW50ODtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBydW5Db3VudCAmJiBpIDwgY291bnQ7IGorKykge1xuICAgICAgICAgIGRlbHRhc1tpKytdID0gZm4uY2FsbChzdHJlYW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlbHRhcztcbiAgfVxuXG4gIHR1cGxlRmFjdG9yKHR1cGxlSW5kZXgsIHR1cGxlQ29vcmRzLCBzdGFydENvb3JkcywgZW5kQ29vcmRzKSB7XG4gICAgbGV0IG5vcm1hbGl6ZWQgPSB0aGlzLm5vcm1hbGl6ZWRDb29yZHM7XG4gICAgbGV0IHsgZ3ZhciB9ID0gdGhpcy5mb250O1xuICAgIGxldCBmYWN0b3IgPSAxO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBndmFyLmF4aXNDb3VudDsgaSsrKSB7XG4gICAgICBpZiAodHVwbGVDb29yZHNbaV0gPT09IDApIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChub3JtYWxpemVkW2ldID09PSAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuXG4gICAgICBpZiAoKHR1cGxlSW5kZXggJiBJTlRFUk1FRElBVEVfVFVQTEUpID09PSAwKSB7XG4gICAgICAgIGlmICgobm9ybWFsaXplZFtpXSA8IE1hdGgubWluKDAsIHR1cGxlQ29vcmRzW2ldKSkgfHxcbiAgICAgICAgICAgIChub3JtYWxpemVkW2ldID4gTWF0aC5tYXgoMCwgdHVwbGVDb29yZHNbaV0pKSkge1xuICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZmFjdG9yID0gKGZhY3RvciAqIG5vcm1hbGl6ZWRbaV0gKyBOdW1iZXIuRVBTSUxPTikgLyAodHVwbGVDb29yZHNbaV0gKyBOdW1iZXIuRVBTSUxPTik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoKG5vcm1hbGl6ZWRbaV0gPCBzdGFydENvb3Jkc1tpXSkgfHxcbiAgICAgICAgICAgIChub3JtYWxpemVkW2ldID4gZW5kQ29vcmRzW2ldKSkge1xuICAgICAgICAgIHJldHVybiAwO1xuXG4gICAgICAgIH0gZWxzZSBpZiAobm9ybWFsaXplZFtpXSA8IHR1cGxlQ29vcmRzW2ldKSB7XG4gICAgICAgICAgZmFjdG9yID0gZmFjdG9yICogKG5vcm1hbGl6ZWRbaV0gLSBzdGFydENvb3Jkc1tpXSArIE51bWJlci5FUFNJTE9OKSAvICh0dXBsZUNvb3Jkc1tpXSAtIHN0YXJ0Q29vcmRzW2ldICsgTnVtYmVyLkVQU0lMT04pO1xuXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZmFjdG9yID0gZmFjdG9yICogKGVuZENvb3Jkc1tpXSAtIG5vcm1hbGl6ZWRbaV0gKyBOdW1iZXIuRVBTSUxPTikgLyAoZW5kQ29vcmRzW2ldIC0gdHVwbGVDb29yZHNbaV0gKyBOdW1iZXIuRVBTSUxPTik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFjdG9yO1xuICB9XG5cbiAgLy8gSW50ZXJwb2xhdGVzIHBvaW50cyB3aXRob3V0IGRlbHRhIHZhbHVlcy5cbiAgLy8gTmVlZGVkIGZvciB0aGUgw5ggYW5kIFEgZ2x5cGhzIGluIFNraWEuXG4gIC8vIEFsZ29yaXRobSBmcm9tIEZyZWV0eXBlLlxuICBpbnRlcnBvbGF0ZU1pc3NpbmdEZWx0YXMocG9pbnRzLCBpblBvaW50cywgaGFzRGVsdGEpIHtcbiAgICBpZiAocG9pbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBwb2ludCA9IDA7XG4gICAgd2hpbGUgKHBvaW50IDwgcG9pbnRzLmxlbmd0aCkge1xuICAgICAgbGV0IGZpcnN0UG9pbnQgPSBwb2ludDtcblxuICAgICAgLy8gZmluZCB0aGUgZW5kIHBvaW50IG9mIHRoZSBjb250b3VyXG4gICAgICBsZXQgZW5kUG9pbnQgPSBwb2ludDtcbiAgICAgIGxldCBwdCA9IHBvaW50c1tlbmRQb2ludF07XG4gICAgICB3aGlsZSAoIXB0LmVuZENvbnRvdXIpIHtcbiAgICAgICAgcHQgPSBwb2ludHNbKytlbmRQb2ludF07XG4gICAgICB9XG5cbiAgICAgIC8vIGZpbmQgdGhlIGZpcnN0IHBvaW50IHRoYXQgaGFzIGEgZGVsdGFcbiAgICAgIHdoaWxlIChwb2ludCA8PSBlbmRQb2ludCAmJiAhaGFzRGVsdGFbcG9pbnRdKSB7XG4gICAgICAgIHBvaW50Kys7XG4gICAgICB9XG5cbiAgICAgIGlmIChwb2ludCA+IGVuZFBvaW50KSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBsZXQgZmlyc3REZWx0YSA9IHBvaW50O1xuICAgICAgbGV0IGN1ckRlbHRhID0gcG9pbnQ7XG4gICAgICBwb2ludCsrO1xuXG4gICAgICB3aGlsZSAocG9pbnQgPD0gZW5kUG9pbnQpIHtcbiAgICAgICAgLy8gZmluZCB0aGUgbmV4dCBwb2ludCB3aXRoIGEgZGVsdGEsIGFuZCBpbnRlcnBvbGF0ZSBpbnRlcm1lZGlhdGUgcG9pbnRzXG4gICAgICAgIGlmIChoYXNEZWx0YVtwb2ludF0pIHtcbiAgICAgICAgICB0aGlzLmRlbHRhSW50ZXJwb2xhdGUoY3VyRGVsdGEgKyAxLCBwb2ludCAtIDEsIGN1ckRlbHRhLCBwb2ludCwgaW5Qb2ludHMsIHBvaW50cyk7XG4gICAgICAgICAgY3VyRGVsdGEgPSBwb2ludDtcbiAgICAgICAgfVxuXG4gICAgICAgIHBvaW50Kys7XG4gICAgICB9XG5cbiAgICAgIC8vIHNoaWZ0IGNvbnRvdXIgaWYgd2Ugb25seSBoYXZlIGEgc2luZ2xlIGRlbHRhXG4gICAgICBpZiAoY3VyRGVsdGEgPT09IGZpcnN0RGVsdGEpIHtcbiAgICAgICAgdGhpcy5kZWx0YVNoaWZ0KGZpcnN0UG9pbnQsIGVuZFBvaW50LCBjdXJEZWx0YSwgaW5Qb2ludHMsIHBvaW50cyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBvdGhlcndpc2UsIGhhbmRsZSB0aGUgcmVtYWluaW5nIHBvaW50cyBhdCB0aGUgZW5kIGFuZCBiZWdpbm5pbmcgb2YgdGhlIGNvbnRvdXJcbiAgICAgICAgdGhpcy5kZWx0YUludGVycG9sYXRlKGN1ckRlbHRhICsgMSwgZW5kUG9pbnQsIGN1ckRlbHRhLCBmaXJzdERlbHRhLCBpblBvaW50cywgcG9pbnRzKTtcblxuICAgICAgICBpZiAoZmlyc3REZWx0YSA+IDApIHtcbiAgICAgICAgICB0aGlzLmRlbHRhSW50ZXJwb2xhdGUoZmlyc3RQb2ludCwgZmlyc3REZWx0YSAtIDEsIGN1ckRlbHRhLCBmaXJzdERlbHRhLCBpblBvaW50cywgcG9pbnRzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBwb2ludCA9IGVuZFBvaW50ICsgMTtcbiAgICB9XG4gIH1cblxuICBkZWx0YUludGVycG9sYXRlKHAxLCBwMiwgcmVmMSwgcmVmMiwgaW5Qb2ludHMsIG91dFBvaW50cykge1xuICAgIGlmIChwMSA+IHAyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IGl0ZXJhYmxlID0gWyd4JywgJ3knXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZXJhYmxlLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgayA9IGl0ZXJhYmxlW2ldO1xuICAgICAgaWYgKGluUG9pbnRzW3JlZjFdW2tdID4gaW5Qb2ludHNbcmVmMl1ba10pIHtcbiAgICAgICAgdmFyIHAgPSByZWYxO1xuICAgICAgICByZWYxID0gcmVmMjtcbiAgICAgICAgcmVmMiA9IHA7XG4gICAgICB9XG5cbiAgICAgIGxldCBpbjEgPSBpblBvaW50c1tyZWYxXVtrXTtcbiAgICAgIGxldCBpbjIgPSBpblBvaW50c1tyZWYyXVtrXTtcbiAgICAgIGxldCBvdXQxID0gb3V0UG9pbnRzW3JlZjFdW2tdO1xuICAgICAgbGV0IG91dDIgPSBvdXRQb2ludHNbcmVmMl1ba107XG5cbiAgICAgIC8vIElmIHRoZSByZWZlcmVuY2UgcG9pbnRzIGhhdmUgdGhlIHNhbWUgY29vcmRpbmF0ZSBidXQgZGlmZmVyZW50XG4gICAgICAvLyBkZWx0YSwgaW5mZXJyZWQgZGVsdGEgaXMgemVyby4gIE90aGVyd2lzZSBpbnRlcnBvbGF0ZS5cbiAgICAgIGlmIChpbjEgIT09IGluMiB8fCBvdXQxID09PSBvdXQyKSB7XG4gICAgICAgIGxldCBzY2FsZSA9IGluMSA9PT0gaW4yID8gMCA6IChvdXQyIC0gb3V0MSkgLyAoaW4yIC0gaW4xKTtcblxuICAgICAgICBmb3IgKGxldCBwID0gcDE7IHAgPD0gcDI7IHArKykge1xuICAgICAgICAgIGxldCBvdXQgPSBpblBvaW50c1twXVtrXTtcblxuICAgICAgICAgIGlmIChvdXQgPD0gaW4xKSB7XG4gICAgICAgICAgICBvdXQgKz0gb3V0MSAtIGluMTtcbiAgICAgICAgICB9IGVsc2UgaWYgKG91dCA+PSBpbjIpIHtcbiAgICAgICAgICAgIG91dCArPSBvdXQyIC0gaW4yO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvdXQgPSBvdXQxICsgKG91dCAtIGluMSkgKiBzY2FsZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBvdXRQb2ludHNbcF1ba10gPSBvdXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBkZWx0YVNoaWZ0KHAxLCBwMiwgcmVmLCBpblBvaW50cywgb3V0UG9pbnRzKSB7XG4gICAgbGV0IGRlbHRhWCA9IG91dFBvaW50c1tyZWZdLnggLSBpblBvaW50c1tyZWZdLng7XG4gICAgbGV0IGRlbHRhWSA9IG91dFBvaW50c1tyZWZdLnkgLSBpblBvaW50c1tyZWZdLnk7XG5cbiAgICBpZiAoZGVsdGFYID09PSAwICYmIGRlbHRhWSA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZvciAobGV0IHAgPSBwMTsgcCA8PSBwMjsgcCsrKSB7XG4gICAgICBpZiAocCAhPT0gcmVmKSB7XG4gICAgICAgIG91dFBvaW50c1twXS54ICs9IGRlbHRhWDtcbiAgICAgICAgb3V0UG9pbnRzW3BdLnkgKz0gZGVsdGFZO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldEFkdmFuY2VBZGp1c3RtZW50KGdpZCwgdGFibGUpIHtcbiAgICBsZXQgb3V0ZXJJbmRleCwgaW5uZXJJbmRleDtcblxuICAgIGlmICh0YWJsZS5hZHZhbmNlV2lkdGhNYXBwaW5nKSB7XG4gICAgICBsZXQgaWR4ID0gZ2lkO1xuICAgICAgaWYgKGlkeCA+PSB0YWJsZS5hZHZhbmNlV2lkdGhNYXBwaW5nLm1hcENvdW50KSB7XG4gICAgICAgIGlkeCA9IHRhYmxlLmFkdmFuY2VXaWR0aE1hcHBpbmcubWFwQ291bnQgLSAxO1xuICAgICAgfVxuXG4gICAgICBsZXQgZW50cnlGb3JtYXQgPSB0YWJsZS5hZHZhbmNlV2lkdGhNYXBwaW5nLmVudHJ5Rm9ybWF0O1xuICAgICAgKHtvdXRlckluZGV4LCBpbm5lckluZGV4fSA9IHRhYmxlLmFkdmFuY2VXaWR0aE1hcHBpbmcubWFwRGF0YVtpZHhdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb3V0ZXJJbmRleCA9IDA7XG4gICAgICBpbm5lckluZGV4ID0gZ2lkO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmdldERlbHRhKHRhYmxlLml0ZW1WYXJpYXRpb25TdG9yZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCk7XG4gIH1cblxuICAvLyBTZWUgcHNldWRvIGNvZGUgZnJvbSBgRm9udCBWYXJpYXRpb25zIE92ZXJ2aWV3J1xuICAvLyBpbiB0aGUgT3BlblR5cGUgc3BlY2lmaWNhdGlvbi5cbiAgZ2V0RGVsdGEoaXRlbVN0b3JlLCBvdXRlckluZGV4LCBpbm5lckluZGV4KSB7XG4gICAgaWYgKG91dGVySW5kZXggPj0gaXRlbVN0b3JlLml0ZW1WYXJpYXRpb25EYXRhLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgbGV0IHZhckRhdGEgPSBpdGVtU3RvcmUuaXRlbVZhcmlhdGlvbkRhdGFbb3V0ZXJJbmRleF07XG4gICAgaWYgKGlubmVySW5kZXggPj0gdmFyRGF0YS5kZWx0YVNldHMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBsZXQgZGVsdGFTZXQgPSB2YXJEYXRhLmRlbHRhU2V0c1tpbm5lckluZGV4XTtcbiAgICBsZXQgYmxlbmRWZWN0b3IgPSB0aGlzLmdldEJsZW5kVmVjdG9yKGl0ZW1TdG9yZSwgb3V0ZXJJbmRleCk7XG4gICAgbGV0IG5ldEFkanVzdG1lbnQgPSAwO1xuXG4gICAgZm9yIChsZXQgbWFzdGVyID0gMDsgbWFzdGVyIDwgdmFyRGF0YS5yZWdpb25JbmRleENvdW50OyBtYXN0ZXIrKykge1xuICAgICAgbmV0QWRqdXN0bWVudCArPSBkZWx0YVNldC5kZWx0YXNbbWFzdGVyXSAqIGJsZW5kVmVjdG9yW21hc3Rlcl07XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldEFkanVzdG1lbnQ7XG4gIH1cblxuICBnZXRCbGVuZFZlY3RvcihpdGVtU3RvcmUsIG91dGVySW5kZXgpIHtcbiAgICBsZXQgdmFyRGF0YSA9IGl0ZW1TdG9yZS5pdGVtVmFyaWF0aW9uRGF0YVtvdXRlckluZGV4XTtcbiAgICBpZiAodGhpcy5ibGVuZFZlY3RvcnMuaGFzKHZhckRhdGEpKSB7XG4gICAgICByZXR1cm4gdGhpcy5ibGVuZFZlY3RvcnMuZ2V0KHZhckRhdGEpO1xuICAgIH1cblxuICAgIGxldCBub3JtYWxpemVkQ29vcmRzID0gdGhpcy5ub3JtYWxpemVkQ29vcmRzO1xuICAgIGxldCBibGVuZFZlY3RvciA9IFtdO1xuXG4gICAgLy8gb3V0ZXIgbG9vcCBzdGVwcyB0aHJvdWdoIG1hc3RlciBkZXNpZ25zIHRvIGJlIGJsZW5kZWRcbiAgICBmb3IgKGxldCBtYXN0ZXIgPSAwOyBtYXN0ZXIgPCB2YXJEYXRhLnJlZ2lvbkluZGV4Q291bnQ7IG1hc3RlcisrKSB7XG4gICAgICBsZXQgc2NhbGFyID0gMTtcbiAgICAgIGxldCByZWdpb25JbmRleCA9IHZhckRhdGEucmVnaW9uSW5kZXhlc1ttYXN0ZXJdO1xuICAgICAgbGV0IGF4ZXMgPSBpdGVtU3RvcmUudmFyaWF0aW9uUmVnaW9uTGlzdC52YXJpYXRpb25SZWdpb25zW3JlZ2lvbkluZGV4XTtcblxuICAgICAgLy8gaW5uZXIgbG9vcCBzdGVwcyB0aHJvdWdoIGF4ZXMgaW4gdGhpcyByZWdpb25cbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgYXhlcy5sZW5ndGg7IGorKykge1xuICAgICAgICBsZXQgYXhpcyA9IGF4ZXNbal07XG4gICAgICAgIGxldCBheGlzU2NhbGFyO1xuXG4gICAgICAgIC8vIGNvbXB1dGUgdGhlIHNjYWxhciBjb250cmlidXRpb24gb2YgdGhpcyBheGlzXG4gICAgICAgIC8vIGlnbm9yZSBpbnZhbGlkIHJhbmdlc1xuICAgICAgICBpZiAoYXhpcy5zdGFydENvb3JkID4gYXhpcy5wZWFrQ29vcmQgfHwgYXhpcy5wZWFrQ29vcmQgPiBheGlzLmVuZENvb3JkKSB7XG4gICAgICAgICAgYXhpc1NjYWxhciA9IDE7XG5cbiAgICAgICAgfSBlbHNlIGlmIChheGlzLnN0YXJ0Q29vcmQgPCAwICYmIGF4aXMuZW5kQ29vcmQgPiAwICYmIGF4aXMucGVha0Nvb3JkICE9PSAwKSB7XG4gICAgICAgICAgYXhpc1NjYWxhciA9IDE7XG5cbiAgICAgICAgLy8gcGVhayBvZiAwIG1lYW5zIGlnbm9yZSB0aGlzIGF4aXNcbiAgICAgICAgfSBlbHNlIGlmIChheGlzLnBlYWtDb29yZCA9PT0gMCkge1xuICAgICAgICAgIGF4aXNTY2FsYXIgPSAxO1xuXG4gICAgICAgIC8vIGlnbm9yZSB0aGlzIHJlZ2lvbiBpZiBjb29yZHMgYXJlIG91dCBvZiByYW5nZVxuICAgICAgICB9IGVsc2UgaWYgKG5vcm1hbGl6ZWRDb29yZHNbal0gPCBheGlzLnN0YXJ0Q29vcmQgfHwgbm9ybWFsaXplZENvb3Jkc1tqXSA+IGF4aXMuZW5kQ29vcmQpIHtcbiAgICAgICAgICBheGlzU2NhbGFyID0gMDtcblxuICAgICAgICAvLyBjYWxjdWxhdGUgYSBwcm9wb3J0aW9uYWwgZmFjdG9yXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKG5vcm1hbGl6ZWRDb29yZHNbal0gPT09IGF4aXMucGVha0Nvb3JkKSB7XG4gICAgICAgICAgICBheGlzU2NhbGFyID0gMTtcbiAgICAgICAgICB9IGVsc2UgaWYgKG5vcm1hbGl6ZWRDb29yZHNbal0gPCBheGlzLnBlYWtDb29yZCkge1xuICAgICAgICAgICAgYXhpc1NjYWxhciA9IChub3JtYWxpemVkQ29vcmRzW2pdIC0gYXhpcy5zdGFydENvb3JkICsgTnVtYmVyLkVQU0lMT04pIC9cbiAgICAgICAgICAgICAgKGF4aXMucGVha0Nvb3JkIC0gYXhpcy5zdGFydENvb3JkICsgTnVtYmVyLkVQU0lMT04pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBheGlzU2NhbGFyID0gKGF4aXMuZW5kQ29vcmQgLSBub3JtYWxpemVkQ29vcmRzW2pdICsgTnVtYmVyLkVQU0lMT04pIC9cbiAgICAgICAgICAgICAgKGF4aXMuZW5kQ29vcmQgLSBheGlzLnBlYWtDb29yZCArIE51bWJlci5FUFNJTE9OKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyB0YWtlIHByb2R1Y3Qgb2YgYWxsIHRoZSBheGlzIHNjYWxhcnNcbiAgICAgICAgc2NhbGFyICo9IGF4aXNTY2FsYXI7XG4gICAgICB9XG5cbiAgICAgIGJsZW5kVmVjdG9yW21hc3Rlcl0gPSBzY2FsYXI7XG4gICAgfVxuXG4gICAgdGhpcy5ibGVuZFZlY3RvcnMuc2V0KHZhckRhdGEsIGJsZW5kVmVjdG9yKTtcbiAgICByZXR1cm4gYmxlbmRWZWN0b3I7XG4gIH1cbn1cbiIsICJpbXBvcnQgY2xvbmVEZWVwIGZyb20gJ2Nsb25lJztcbmltcG9ydCBTdWJzZXQgZnJvbSAnLi9TdWJzZXQnO1xuaW1wb3J0IERpcmVjdG9yeSBmcm9tICcuLi90YWJsZXMvZGlyZWN0b3J5JztcbmltcG9ydCBUYWJsZXMgZnJvbSAnLi4vdGFibGVzJztcbmltcG9ydCBUVEZHbHlwaEVuY29kZXIgZnJvbSAnLi4vZ2x5cGgvVFRGR2x5cGhFbmNvZGVyJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVFRGU3Vic2V0IGV4dGVuZHMgU3Vic2V0IHtcbiAgY29uc3RydWN0b3IoZm9udCkge1xuICAgIHN1cGVyKGZvbnQpO1xuICAgIHRoaXMuZ2x5cGhFbmNvZGVyID0gbmV3IFRURkdseXBoRW5jb2RlcjtcbiAgfVxuXG4gIF9hZGRHbHlwaChnaWQpIHtcbiAgICBsZXQgZ2x5cGggPSB0aGlzLmZvbnQuZ2V0R2x5cGgoZ2lkKTtcbiAgICBsZXQgZ2x5ZiA9IGdseXBoLl9kZWNvZGUoKTtcblxuICAgIC8vIGdldCB0aGUgb2Zmc2V0IHRvIHRoZSBnbHlwaCBmcm9tIHRoZSBsb2NhIHRhYmxlXG4gICAgbGV0IGN1ck9mZnNldCA9IHRoaXMuZm9udC5sb2NhLm9mZnNldHNbZ2lkXTtcbiAgICBsZXQgbmV4dE9mZnNldCA9IHRoaXMuZm9udC5sb2NhLm9mZnNldHNbZ2lkICsgMV07XG5cbiAgICBsZXQgc3RyZWFtID0gdGhpcy5mb250Ll9nZXRUYWJsZVN0cmVhbSgnZ2x5ZicpO1xuICAgIHN0cmVhbS5wb3MgKz0gY3VyT2Zmc2V0O1xuXG4gICAgbGV0IGJ1ZmZlciA9IHN0cmVhbS5yZWFkQnVmZmVyKG5leHRPZmZzZXQgLSBjdXJPZmZzZXQpO1xuXG4gICAgLy8gaWYgaXQgaXMgYSBjb21wb3VuZCBnbHlwaCwgaW5jbHVkZSBpdHMgY29tcG9uZW50c1xuICAgIGlmIChnbHlmICYmIGdseWYubnVtYmVyT2ZDb250b3VycyA8IDApIHtcbiAgICAgIGJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KGJ1ZmZlcik7XG4gICAgICBsZXQgdmlldyA9IG5ldyBEYXRhVmlldyhidWZmZXIuYnVmZmVyKTtcbiAgICAgIGZvciAobGV0IGNvbXBvbmVudCBvZiBnbHlmLmNvbXBvbmVudHMpIHtcbiAgICAgICAgZ2lkID0gdGhpcy5pbmNsdWRlR2x5cGgoY29tcG9uZW50LmdseXBoSUQpO1xuICAgICAgICB2aWV3LnNldFVpbnQxNihjb21wb25lbnQucG9zLCBnaWQpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZ2x5ZiAmJiB0aGlzLmZvbnQuX3ZhcmlhdGlvblByb2Nlc3Nvcikge1xuICAgICAgLy8gSWYgdGhpcyBpcyBhIFRydWVUeXBlIHZhcmlhdGlvbiBnbHlwaCwgcmUtZW5jb2RlIHRoZSBwYXRoXG4gICAgICBidWZmZXIgPSB0aGlzLmdseXBoRW5jb2Rlci5lbmNvZGVTaW1wbGUoZ2x5cGgucGF0aCwgZ2x5Zi5pbnN0cnVjdGlvbnMpO1xuICAgIH1cblxuICAgIHRoaXMuZ2x5Zi5wdXNoKGJ1ZmZlcik7XG4gICAgdGhpcy5sb2NhLm9mZnNldHMucHVzaCh0aGlzLm9mZnNldCk7XG5cbiAgICB0aGlzLmhtdHgubWV0cmljcy5wdXNoKHtcbiAgICAgIGFkdmFuY2U6IGdseXBoLmFkdmFuY2VXaWR0aCxcbiAgICAgIGJlYXJpbmc6IGdseXBoLl9nZXRNZXRyaWNzKCkubGVmdEJlYXJpbmdcbiAgICB9KTtcblxuICAgIHRoaXMub2Zmc2V0ICs9IGJ1ZmZlci5sZW5ndGg7XG4gICAgcmV0dXJuIHRoaXMuZ2x5Zi5sZW5ndGggLSAxO1xuICB9XG5cbiAgZW5jb2RlKCkge1xuICAgIC8vIHRhYmxlcyByZXF1aXJlZCBieSBQREYgc3BlYzpcbiAgICAvLyAgIGhlYWQsIGhoZWEsIGxvY2EsIG1heHAsIGN2dCAsIHByZXAsIGdseWYsIGhtdHgsIGZwZ21cbiAgICAvL1xuICAgIC8vIGFkZGl0aW9uYWwgdGFibGVzIHJlcXVpcmVkIGZvciBzdGFuZGFsb25lIGZvbnRzOlxuICAgIC8vICAgbmFtZSwgY21hcCwgT1MvMiwgcG9zdFxuXG4gICAgdGhpcy5nbHlmID0gW107XG4gICAgdGhpcy5vZmZzZXQgPSAwO1xuICAgIHRoaXMubG9jYSA9IHtcbiAgICAgIG9mZnNldHM6IFtdLFxuICAgICAgdmVyc2lvbjogdGhpcy5mb250LmxvY2EudmVyc2lvblxuICAgIH07XG5cbiAgICB0aGlzLmhtdHggPSB7XG4gICAgICBtZXRyaWNzOiBbXSxcbiAgICAgIGJlYXJpbmdzOiBbXVxuICAgIH07XG5cbiAgICAvLyBpbmNsdWRlIGFsbCB0aGUgZ2x5cGhzXG4gICAgLy8gbm90IHVzaW5nIGEgZm9yIGxvb3AgYmVjYXVzZSB3ZSBuZWVkIHRvIHN1cHBvcnQgYWRkaW5nIG1vcmVcbiAgICAvLyBnbHlwaHMgdG8gdGhlIGFycmF5IGFzIHdlIGdvLCBhbmQgQ29mZmVlU2NyaXB0IGNhY2hlcyB0aGUgbGVuZ3RoLlxuICAgIGxldCBpID0gMDtcbiAgICB3aGlsZSAoaSA8IHRoaXMuZ2x5cGhzLmxlbmd0aCkge1xuICAgICAgdGhpcy5fYWRkR2x5cGgodGhpcy5nbHlwaHNbaSsrXSk7XG4gICAgfVxuXG4gICAgbGV0IG1heHAgPSBjbG9uZURlZXAodGhpcy5mb250Lm1heHApO1xuICAgIG1heHAubnVtR2x5cGhzID0gdGhpcy5nbHlmLmxlbmd0aDtcblxuICAgIHRoaXMubG9jYS5vZmZzZXRzLnB1c2godGhpcy5vZmZzZXQpO1xuXG4gICAgbGV0IGhlYWQgPSBjbG9uZURlZXAodGhpcy5mb250LmhlYWQpO1xuICAgIGhlYWQuaW5kZXhUb0xvY0Zvcm1hdCA9IHRoaXMubG9jYS52ZXJzaW9uO1xuXG4gICAgbGV0IGhoZWEgPSBjbG9uZURlZXAodGhpcy5mb250LmhoZWEpO1xuICAgIGhoZWEubnVtYmVyT2ZNZXRyaWNzID0gdGhpcy5obXR4Lm1ldHJpY3MubGVuZ3RoO1xuXG4gICAgLy8gbWFwID0gW11cbiAgICAvLyBmb3IgaW5kZXggaW4gWzAuLi4yNTZdXG4gICAgLy8gICAgIGlmIGluZGV4IDwgQG51bUdseXBoc1xuICAgIC8vICAgICAgICAgbWFwW2luZGV4XSA9IGluZGV4XG4gICAgLy8gICAgIGVsc2VcbiAgICAvLyAgICAgICAgIG1hcFtpbmRleF0gPSAwXG4gICAgLy9cbiAgICAvLyBjbWFwVGFibGUgPVxuICAgIC8vICAgICB2ZXJzaW9uOiAwXG4gICAgLy8gICAgIGxlbmd0aDogMjYyXG4gICAgLy8gICAgIGxhbmd1YWdlOiAwXG4gICAgLy8gICAgIGNvZGVNYXA6IG1hcFxuICAgIC8vXG4gICAgLy8gY21hcCA9XG4gICAgLy8gICAgIHZlcnNpb246IDBcbiAgICAvLyAgICAgbnVtU3VidGFibGVzOiAxXG4gICAgLy8gICAgIHRhYmxlczogW1xuICAgIC8vICAgICAgICAgcGxhdGZvcm1JRDogMVxuICAgIC8vICAgICAgICAgZW5jb2RpbmdJRDogMFxuICAgIC8vICAgICAgICAgdGFibGU6IGNtYXBUYWJsZVxuICAgIC8vICAgICBdXG5cbiAgICAvLyBUT0RPOiBzdWJzZXQgcHJlcCwgY3Z0LCBmcGdtP1xuICAgIHJldHVybiBEaXJlY3RvcnkudG9CdWZmZXIoe1xuICAgICAgdGFibGVzOiB7XG4gICAgICAgIGhlYWQsXG4gICAgICAgIGhoZWEsXG4gICAgICAgIGxvY2E6IHRoaXMubG9jYSxcbiAgICAgICAgbWF4cCxcbiAgICAgICAgJ2N2dCAnOiB0aGlzLmZvbnRbJ2N2dCAnXSxcbiAgICAgICAgcHJlcDogdGhpcy5mb250LnByZXAsXG4gICAgICAgIGdseWY6IHRoaXMuZ2x5ZixcbiAgICAgICAgaG10eDogdGhpcy5obXR4LFxuICAgICAgICBmcGdtOiB0aGlzLmZvbnQuZnBnbVxuXG4gICAgICAgIC8vIG5hbWU6IGNsb25lIEBmb250Lm5hbWVcbiAgICAgICAgLy8gJ09TLzInOiBjbG9uZSBAZm9udFsnT1MvMiddXG4gICAgICAgIC8vIHBvc3Q6IGNsb25lIEBmb250LnBvc3RcbiAgICAgICAgLy8gY21hcDogY21hcFxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmNvbnN0IHJlc29sdmVkID0gUHJvbWlzZS5yZXNvbHZlKCk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN1YnNldCB7XG4gIGNvbnN0cnVjdG9yKGZvbnQpIHtcbiAgICB0aGlzLmZvbnQgPSBmb250O1xuICAgIHRoaXMuZ2x5cGhzID0gW107XG4gICAgdGhpcy5tYXBwaW5nID0ge307XG5cbiAgICAvLyBhbHdheXMgaW5jbHVkZSB0aGUgbWlzc2luZyBnbHlwaFxuICAgIHRoaXMuaW5jbHVkZUdseXBoKDApO1xuICB9XG5cbiAgaW5jbHVkZUdseXBoKGdseXBoKSB7XG4gICAgaWYgKHR5cGVvZiBnbHlwaCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGdseXBoID0gZ2x5cGguaWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubWFwcGluZ1tnbHlwaF0gPT0gbnVsbCkge1xuICAgICAgdGhpcy5nbHlwaHMucHVzaChnbHlwaCk7XG4gICAgICB0aGlzLm1hcHBpbmdbZ2x5cGhdID0gdGhpcy5nbHlwaHMubGVuZ3RoIC0gMTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5tYXBwaW5nW2dseXBoXTtcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBGbGFncyBmb3Igc2ltcGxlIGdseXBoc1xuY29uc3QgT05fQ1VSVkUgICAgICAgID0gMSA8PCAwO1xuY29uc3QgWF9TSE9SVF9WRUNUT1IgID0gMSA8PCAxO1xuY29uc3QgWV9TSE9SVF9WRUNUT1IgID0gMSA8PCAyO1xuY29uc3QgUkVQRUFUICAgICAgICAgID0gMSA8PCAzO1xuY29uc3QgU0FNRV9YICAgICAgICAgID0gMSA8PCA0O1xuY29uc3QgU0FNRV9ZICAgICAgICAgID0gMSA8PCA1O1xuXG5jbGFzcyBQb2ludCB7XG4gIHN0YXRpYyBzaXplKHZhbCkge1xuICAgIHJldHVybiB2YWwgPj0gMCAmJiB2YWwgPD0gMjU1ID8gMSA6IDI7XG4gIH1cbiAgXG4gIHN0YXRpYyBlbmNvZGUoc3RyZWFtLCB2YWx1ZSkge1xuICAgIGlmICh2YWx1ZSA+PSAwICYmIHZhbHVlIDw9IDI1NSkge1xuICAgICAgc3RyZWFtLndyaXRlVUludDgodmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzdHJlYW0ud3JpdGVJbnQxNkJFKHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cblxubGV0IEdseWYgPSBuZXcgci5TdHJ1Y3Qoe1xuICBudW1iZXJPZkNvbnRvdXJzOiByLmludDE2LCAvLyBpZiBuZWdhdGl2ZSwgdGhpcyBpcyBhIGNvbXBvc2l0ZSBnbHlwaFxuICB4TWluOiByLmludDE2LFxuICB5TWluOiByLmludDE2LFxuICB4TWF4OiByLmludDE2LFxuICB5TWF4OiByLmludDE2LFxuICBlbmRQdHNPZkNvbnRvdXJzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgJ251bWJlck9mQ29udG91cnMnKSxcbiAgaW5zdHJ1Y3Rpb25zOiBuZXcgci5BcnJheShyLnVpbnQ4LCByLnVpbnQxNiksXG4gIGZsYWdzOiBuZXcgci5BcnJheShyLnVpbnQ4LCAwKSxcbiAgeFBvaW50czogbmV3IHIuQXJyYXkoUG9pbnQsIDApLFxuICB5UG9pbnRzOiBuZXcgci5BcnJheShQb2ludCwgMClcbn0pO1xuXG4vKipcbiAqIEVuY29kZXMgVHJ1ZVR5cGUgZ2x5cGggb3V0bGluZXNcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVFRGR2x5cGhFbmNvZGVyIHtcbiAgZW5jb2RlU2ltcGxlKHBhdGgsIGluc3RydWN0aW9ucyA9IFtdKSB7XG4gICAgbGV0IGVuZFB0c09mQ29udG91cnMgPSBbXTtcbiAgICBsZXQgeFBvaW50cyA9IFtdO1xuICAgIGxldCB5UG9pbnRzID0gW107XG4gICAgbGV0IGZsYWdzID0gW107XG4gICAgbGV0IHNhbWUgPSAwO1xuICAgIGxldCBsYXN0WCA9IDAsIGxhc3RZID0gMCwgbGFzdEZsYWcgPSAwO1xuICAgIGxldCBwb2ludENvdW50ID0gMDtcbiAgICBcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhdGguY29tbWFuZHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBjID0gcGF0aC5jb21tYW5kc1tpXTtcbiAgICAgIFxuICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBjLmFyZ3MubGVuZ3RoOyBqICs9IDIpIHtcbiAgICAgICAgbGV0IHggPSBjLmFyZ3Nbal07XG4gICAgICAgIGxldCB5ID0gYy5hcmdzW2ogKyAxXTtcbiAgICAgICAgbGV0IGZsYWcgPSAwO1xuICAgICAgICBcbiAgICAgICAgLy8gSWYgdGhlIGVuZGluZyBwb2ludCBvZiBhIHF1YWRyYXRpYyBjdXJ2ZSBpcyB0aGUgbWlkcG9pbnRcbiAgICAgICAgLy8gYmV0d2VlbiB0aGUgY29udHJvbCBwb2ludCBhbmQgdGhlIGNvbnRyb2wgcG9pbnQgb2YgdGhlIG5leHRcbiAgICAgICAgLy8gcXVhZHJhdGljIGN1cnZlLCB3ZSBjYW4gb21pdCB0aGUgZW5kaW5nIHBvaW50LlxuICAgICAgICBpZiAoYy5jb21tYW5kID09PSAncXVhZHJhdGljQ3VydmVUbycgJiYgaiA9PT0gMikge1xuICAgICAgICAgIGxldCBuZXh0ID0gcGF0aC5jb21tYW5kc1tpICsgMV07XG4gICAgICAgICAgaWYgKG5leHQgJiYgbmV4dC5jb21tYW5kID09PSAncXVhZHJhdGljQ3VydmVUbycpIHtcbiAgICAgICAgICAgIGxldCBtaWRYID0gKGxhc3RYICsgbmV4dC5hcmdzWzBdKSAvIDI7XG4gICAgICAgICAgICBsZXQgbWlkWSA9IChsYXN0WSArIG5leHQuYXJnc1sxXSkgLyAyO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpZiAoeCA9PT0gbWlkWCAmJiB5ID09PSBtaWRZKSB7XG4gICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLy8gQWxsIHBvaW50cyBleGNlcHQgY29udHJvbCBwb2ludHMgYXJlIG9uIGN1cnZlLlxuICAgICAgICBpZiAoIShjLmNvbW1hbmQgPT09ICdxdWFkcmF0aWNDdXJ2ZVRvJyAmJiBqID09PSAwKSkge1xuICAgICAgICAgIGZsYWcgfD0gT05fQ1VSVkU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGZsYWcgPSB0aGlzLl9lbmNvZGVQb2ludCh4LCBsYXN0WCwgeFBvaW50cywgZmxhZywgWF9TSE9SVF9WRUNUT1IsIFNBTUVfWCk7XG4gICAgICAgIGZsYWcgPSB0aGlzLl9lbmNvZGVQb2ludCh5LCBsYXN0WSwgeVBvaW50cywgZmxhZywgWV9TSE9SVF9WRUNUT1IsIFNBTUVfWSk7XG4gICAgICAgIFxuICAgICAgICBpZiAoZmxhZyA9PT0gbGFzdEZsYWcgJiYgc2FtZSA8IDI1NSkge1xuICAgICAgICAgIGZsYWdzW2ZsYWdzLmxlbmd0aCAtIDFdIHw9IFJFUEVBVDtcbiAgICAgICAgICBzYW1lKys7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKHNhbWUgPiAwKSB7XG4gICAgICAgICAgICBmbGFncy5wdXNoKHNhbWUpO1xuICAgICAgICAgICAgc2FtZSA9IDA7XG4gICAgICAgICAgfVxuICAgICAgXG4gICAgICAgICAgZmxhZ3MucHVzaChmbGFnKTtcbiAgICAgICAgICBsYXN0RmxhZyA9IGZsYWc7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGxhc3RYID0geDtcbiAgICAgICAgbGFzdFkgPSB5O1xuICAgICAgICBwb2ludENvdW50Kys7XG4gICAgICB9XG4gIFxuICAgICAgaWYgKGMuY29tbWFuZCA9PT0gJ2Nsb3NlUGF0aCcpIHtcbiAgICAgICAgZW5kUHRzT2ZDb250b3Vycy5wdXNoKHBvaW50Q291bnQgLSAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbG9zZSB0aGUgcGF0aCBpZiB0aGUgbGFzdCBjb21tYW5kIGRpZG4ndCBhbHJlYWR5XG4gICAgaWYgKHBhdGguY29tbWFuZHMubGVuZ3RoID4gMSAmJiBwYXRoLmNvbW1hbmRzW3BhdGguY29tbWFuZHMubGVuZ3RoIC0gMV0uY29tbWFuZCAhPT0gJ2Nsb3NlUGF0aCcpIHtcbiAgICAgIGVuZFB0c09mQ29udG91cnMucHVzaChwb2ludENvdW50IC0gMSk7XG4gICAgfVxuICAgIFxuICAgIGxldCBiYm94ID0gcGF0aC5iYm94O1xuICAgIGxldCBnbHlmID0ge1xuICAgICAgbnVtYmVyT2ZDb250b3VyczogZW5kUHRzT2ZDb250b3Vycy5sZW5ndGgsXG4gICAgICB4TWluOiBiYm94Lm1pblgsXG4gICAgICB5TWluOiBiYm94Lm1pblksXG4gICAgICB4TWF4OiBiYm94Lm1heFgsXG4gICAgICB5TWF4OiBiYm94Lm1heFksXG4gICAgICBlbmRQdHNPZkNvbnRvdXJzOiBlbmRQdHNPZkNvbnRvdXJzLFxuICAgICAgaW5zdHJ1Y3Rpb25zOiBpbnN0cnVjdGlvbnMsXG4gICAgICBmbGFnczogZmxhZ3MsXG4gICAgICB4UG9pbnRzOiB4UG9pbnRzLFxuICAgICAgeVBvaW50czogeVBvaW50c1xuICAgIH07XG4gICAgXG4gICAgbGV0IHNpemUgPSBHbHlmLnNpemUoZ2x5Zik7XG4gICAgbGV0IHRhaWwgPSA0IC0gKHNpemUgJSA0KTtcbiAgICBcbiAgICBsZXQgc3RyZWFtID0gbmV3IHIuRW5jb2RlU3RyZWFtKHNpemUgKyB0YWlsKTtcbiAgICBHbHlmLmVuY29kZShzdHJlYW0sIGdseWYpO1xuICAgIFxuICAgIC8vIEFsaWduIHRvIDQtYnl0ZSBsZW5ndGhcbiAgICBpZiAodGFpbCAhPT0gMCkge1xuICAgICAgc3RyZWFtLmZpbGwoMCwgdGFpbCk7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBzdHJlYW0uYnVmZmVyO1xuICB9XG4gIFxuICBfZW5jb2RlUG9pbnQodmFsdWUsIGxhc3QsIHBvaW50cywgZmxhZywgc2hvcnRGbGFnLCBzYW1lRmxhZykge1xuICAgIGxldCBkaWZmID0gdmFsdWUgLSBsYXN0O1xuICAgIFxuICAgIGlmICh2YWx1ZSA9PT0gbGFzdCkge1xuICAgICAgZmxhZyB8PSBzYW1lRmxhZztcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKC0yNTUgPD0gZGlmZiAmJiBkaWZmIDw9IDI1NSkge1xuICAgICAgICBmbGFnIHw9IHNob3J0RmxhZztcbiAgICAgICAgaWYgKGRpZmYgPCAwKSB7XG4gICAgICAgICAgZGlmZiA9IC1kaWZmO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZsYWcgfD0gc2FtZUZsYWc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgcG9pbnRzLnB1c2goZGlmZik7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBmbGFnO1xuICB9XG59XG4iLCAiaW1wb3J0IFN1YnNldCBmcm9tICcuL1N1YnNldCc7XG5pbXBvcnQgQ0ZGVG9wIGZyb20gJy4uL2NmZi9DRkZUb3AnO1xuaW1wb3J0IENGRlByaXZhdGVEaWN0IGZyb20gJy4uL2NmZi9DRkZQcml2YXRlRGljdCc7XG5pbXBvcnQgc3RhbmRhcmRTdHJpbmdzIGZyb20gJy4uL2NmZi9DRkZTdGFuZGFyZFN0cmluZ3MnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDRkZTdWJzZXQgZXh0ZW5kcyBTdWJzZXQge1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgc3VwZXIoZm9udCk7XG5cbiAgICB0aGlzLmNmZiA9IHRoaXMuZm9udFsnQ0ZGICddO1xuICAgIGlmICghdGhpcy5jZmYpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm90IGEgQ0ZGIEZvbnQnKTtcbiAgICB9XG4gIH1cblxuICBzdWJzZXRDaGFyc3RyaW5ncygpIHtcbiAgICB0aGlzLmNoYXJzdHJpbmdzID0gW107XG4gICAgbGV0IGdzdWJycyA9IHt9O1xuXG4gICAgZm9yIChsZXQgZ2lkIG9mIHRoaXMuZ2x5cGhzKSB7XG4gICAgICB0aGlzLmNoYXJzdHJpbmdzLnB1c2godGhpcy5jZmYuZ2V0Q2hhclN0cmluZyhnaWQpKTtcblxuICAgICAgbGV0IGdseXBoID0gdGhpcy5mb250LmdldEdseXBoKGdpZCk7XG4gICAgICBsZXQgcGF0aCA9IGdseXBoLnBhdGg7IC8vIHRoaXMgY2F1c2VzIHRoZSBnbHlwaCB0byBiZSBwYXJzZWRcblxuICAgICAgZm9yIChsZXQgc3ViciBpbiBnbHlwaC5fdXNlZEdzdWJycykge1xuICAgICAgICBnc3VicnNbc3Vicl0gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuZ3N1YnJzID0gdGhpcy5zdWJzZXRTdWJycyh0aGlzLmNmZi5nbG9iYWxTdWJySW5kZXgsIGdzdWJycyk7XG4gIH1cblxuICBzdWJzZXRTdWJycyhzdWJycywgdXNlZCkge1xuICAgIGxldCByZXMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN1YnJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgc3ViciA9IHN1YnJzW2ldO1xuICAgICAgaWYgKHVzZWRbaV0pIHtcbiAgICAgICAgdGhpcy5jZmYuc3RyZWFtLnBvcyA9IHN1YnIub2Zmc2V0O1xuICAgICAgICByZXMucHVzaCh0aGlzLmNmZi5zdHJlYW0ucmVhZEJ1ZmZlcihzdWJyLmxlbmd0aCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzLnB1c2gobmV3IFVpbnQ4QXJyYXkoWzExXSkpOyAvLyByZXR1cm5cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgc3Vic2V0Rm9udGRpY3QodG9wRGljdCkge1xuICAgIHRvcERpY3QuRkRBcnJheSA9IFtdO1xuICAgIHRvcERpY3QuRkRTZWxlY3QgPSB7XG4gICAgICB2ZXJzaW9uOiAwLFxuICAgICAgZmRzOiBbXVxuICAgIH07XG5cbiAgICBsZXQgdXNlZF9mZHMgPSB7fTtcbiAgICBsZXQgdXNlZF9zdWJycyA9IFtdO1xuICAgIGxldCBmZF9zZWxlY3QgPSB7fTtcbiAgICBmb3IgKGxldCBnaWQgb2YgdGhpcy5nbHlwaHMpIHtcbiAgICAgIGxldCBmZCA9IHRoaXMuY2ZmLmZkRm9yR2x5cGgoZ2lkKTtcbiAgICAgIGlmIChmZCA9PSBudWxsKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXVzZWRfZmRzW2ZkXSkge1xuICAgICAgICB0b3BEaWN0LkZEQXJyYXkucHVzaChPYmplY3QuYXNzaWduKHt9LCB0aGlzLmNmZi50b3BEaWN0LkZEQXJyYXlbZmRdKSk7XG4gICAgICAgIHVzZWRfc3VicnMucHVzaCh7fSk7XG4gICAgICAgIGZkX3NlbGVjdFtmZF0gPSB0b3BEaWN0LkZEQXJyYXkubGVuZ3RoIC0gMTtcbiAgICAgIH1cblxuICAgICAgdXNlZF9mZHNbZmRdID0gdHJ1ZTtcbiAgICAgIHRvcERpY3QuRkRTZWxlY3QuZmRzLnB1c2goZmRfc2VsZWN0W2ZkXSk7XG5cbiAgICAgIGxldCBnbHlwaCA9IHRoaXMuZm9udC5nZXRHbHlwaChnaWQpO1xuICAgICAgbGV0IHBhdGggPSBnbHlwaC5wYXRoOyAvLyB0aGlzIGNhdXNlcyB0aGUgZ2x5cGggdG8gYmUgcGFyc2VkXG4gICAgICBmb3IgKGxldCBzdWJyIGluIGdseXBoLl91c2VkU3VicnMpIHtcbiAgICAgICAgdXNlZF9zdWJyc1tmZF9zZWxlY3RbZmRdXVtzdWJyXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0b3BEaWN0LkZEQXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBkaWN0ID0gdG9wRGljdC5GREFycmF5W2ldO1xuICAgICAgZGVsZXRlIGRpY3QuRm9udE5hbWU7XG4gICAgICBpZiAoZGljdC5Qcml2YXRlICYmIGRpY3QuUHJpdmF0ZS5TdWJycykge1xuICAgICAgICBkaWN0LlByaXZhdGUgPSBPYmplY3QuYXNzaWduKHt9LCBkaWN0LlByaXZhdGUpO1xuICAgICAgICBkaWN0LlByaXZhdGUuU3VicnMgPSB0aGlzLnN1YnNldFN1YnJzKGRpY3QuUHJpdmF0ZS5TdWJycywgdXNlZF9zdWJyc1tpXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY3JlYXRlQ0lERm9udGRpY3QodG9wRGljdCkge1xuICAgIGxldCB1c2VkX3N1YnJzID0ge307XG4gICAgZm9yIChsZXQgZ2lkIG9mIHRoaXMuZ2x5cGhzKSB7XG4gICAgICBsZXQgZ2x5cGggPSB0aGlzLmZvbnQuZ2V0R2x5cGgoZ2lkKTtcbiAgICAgIGxldCBwYXRoID0gZ2x5cGgucGF0aDsgLy8gdGhpcyBjYXVzZXMgdGhlIGdseXBoIHRvIGJlIHBhcnNlZFxuXG4gICAgICBmb3IgKGxldCBzdWJyIGluIGdseXBoLl91c2VkU3VicnMpIHtcbiAgICAgICAgdXNlZF9zdWJyc1tzdWJyXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHByaXZhdGVEaWN0ID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jZmYudG9wRGljdC5Qcml2YXRlKTtcbiAgICBpZiAodGhpcy5jZmYudG9wRGljdC5Qcml2YXRlICYmIHRoaXMuY2ZmLnRvcERpY3QuUHJpdmF0ZS5TdWJycykge1xuICAgICAgcHJpdmF0ZURpY3QuU3VicnMgPSB0aGlzLnN1YnNldFN1YnJzKHRoaXMuY2ZmLnRvcERpY3QuUHJpdmF0ZS5TdWJycywgdXNlZF9zdWJycyk7XG4gICAgfVxuXG4gICAgdG9wRGljdC5GREFycmF5ID0gW3sgUHJpdmF0ZTogcHJpdmF0ZURpY3QgfV07XG4gICAgcmV0dXJuIHRvcERpY3QuRkRTZWxlY3QgPSB7XG4gICAgICB2ZXJzaW9uOiAzLFxuICAgICAgblJhbmdlczogMSxcbiAgICAgIHJhbmdlczogW3sgZmlyc3Q6IDAsIGZkOiAwIH1dLFxuICAgICAgc2VudGluZWw6IHRoaXMuY2hhcnN0cmluZ3MubGVuZ3RoXG4gICAgfTtcbiAgfVxuXG4gIGFkZFN0cmluZyhzdHJpbmcpIHtcbiAgICBpZiAoIXN0cmluZykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnN0cmluZ3MpIHtcbiAgICAgIHRoaXMuc3RyaW5ncyA9IFtdO1xuICAgIH1cblxuICAgIHRoaXMuc3RyaW5ncy5wdXNoKHN0cmluZyk7XG4gICAgcmV0dXJuIHN0YW5kYXJkU3RyaW5ncy5sZW5ndGggKyB0aGlzLnN0cmluZ3MubGVuZ3RoIC0gMTtcbiAgfVxuXG4gIGVuY29kZSgpIHtcbiAgICB0aGlzLnN1YnNldENoYXJzdHJpbmdzKCk7XG5cbiAgICBsZXQgY2hhcnNldCA9IHtcbiAgICAgIHZlcnNpb246IHRoaXMuY2hhcnN0cmluZ3MubGVuZ3RoID4gMjU1ID8gMiA6IDEsXG4gICAgICByYW5nZXM6IFt7IGZpcnN0OiAxLCBuTGVmdDogdGhpcy5jaGFyc3RyaW5ncy5sZW5ndGggLSAyIH1dXG4gICAgfTtcblxuICAgIGxldCB0b3BEaWN0ID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jZmYudG9wRGljdCk7XG4gICAgdG9wRGljdC5Qcml2YXRlID0gbnVsbDtcbiAgICB0b3BEaWN0LmNoYXJzZXQgPSBjaGFyc2V0O1xuICAgIHRvcERpY3QuRW5jb2RpbmcgPSBudWxsO1xuICAgIHRvcERpY3QuQ2hhclN0cmluZ3MgPSB0aGlzLmNoYXJzdHJpbmdzO1xuXG4gICAgZm9yIChsZXQga2V5IG9mIFsndmVyc2lvbicsICdOb3RpY2UnLCAnQ29weXJpZ2h0JywgJ0Z1bGxOYW1lJywgJ0ZhbWlseU5hbWUnLCAnV2VpZ2h0JywgJ1Bvc3RTY3JpcHQnLCAnQmFzZUZvbnROYW1lJywgJ0ZvbnROYW1lJ10pIHtcbiAgICAgIHRvcERpY3Rba2V5XSA9IHRoaXMuYWRkU3RyaW5nKHRoaXMuY2ZmLnN0cmluZyh0b3BEaWN0W2tleV0pKTtcbiAgICB9XG5cbiAgICB0b3BEaWN0LlJPUyA9IFt0aGlzLmFkZFN0cmluZygnQWRvYmUnKSwgdGhpcy5hZGRTdHJpbmcoJ0lkZW50aXR5JyksIDBdO1xuICAgIHRvcERpY3QuQ0lEQ291bnQgPSB0aGlzLmNoYXJzdHJpbmdzLmxlbmd0aDtcblxuICAgIGlmICh0aGlzLmNmZi5pc0NJREZvbnQpIHtcbiAgICAgIHRoaXMuc3Vic2V0Rm9udGRpY3QodG9wRGljdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY3JlYXRlQ0lERm9udGRpY3QodG9wRGljdCk7XG4gICAgfVxuXG4gICAgbGV0IHRvcCA9IHtcbiAgICAgIHZlcnNpb246IDEsXG4gICAgICBoZHJTaXplOiB0aGlzLmNmZi5oZHJTaXplLFxuICAgICAgb2ZmU2l6ZTogNCxcbiAgICAgIGhlYWRlcjogdGhpcy5jZmYuaGVhZGVyLFxuICAgICAgbmFtZUluZGV4OiBbdGhpcy5jZmYucG9zdHNjcmlwdE5hbWVdLFxuICAgICAgdG9wRGljdEluZGV4OiBbdG9wRGljdF0sXG4gICAgICBzdHJpbmdJbmRleDogdGhpcy5zdHJpbmdzLFxuICAgICAgZ2xvYmFsU3VickluZGV4OiB0aGlzLmdzdWJyc1xuICAgIH07XG5cbiAgICByZXR1cm4gQ0ZGVG9wLnRvQnVmZmVyKHRvcCk7XG4gIH1cbn1cbiIsICJpbXBvcnQgVFRGRm9udCBmcm9tICcuL1RURkZvbnQnO1xuaW1wb3J0IFdPRkZEaXJlY3RvcnkgZnJvbSAnLi90YWJsZXMvV09GRkRpcmVjdG9yeSc7XG5pbXBvcnQgdGFibGVzIGZyb20gJy4vdGFibGVzJztcbmltcG9ydCBpbmZsYXRlIGZyb20gJ3RpbnktaW5mbGF0ZSc7XG5pbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7IGFzY2lpRGVjb2RlciB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXT0ZGRm9udCBleHRlbmRzIFRURkZvbnQge1xuICB0eXBlID0gJ1dPRkYnO1xuXG4gIHN0YXRpYyBwcm9iZShidWZmZXIpIHtcbiAgICByZXR1cm4gYXNjaWlEZWNvZGVyLmRlY29kZShidWZmZXIuc2xpY2UoMCwgNCkpID09PSAnd09GRic7XG4gIH1cblxuICBfZGVjb2RlRGlyZWN0b3J5KCkge1xuICAgIHRoaXMuZGlyZWN0b3J5ID0gV09GRkRpcmVjdG9yeS5kZWNvZGUodGhpcy5zdHJlYW0sIHsgX3N0YXJ0T2Zmc2V0OiAwIH0pO1xuICB9XG5cbiAgX2dldFRhYmxlU3RyZWFtKHRhZykge1xuICAgIGxldCB0YWJsZSA9IHRoaXMuZGlyZWN0b3J5LnRhYmxlc1t0YWddO1xuICAgIGlmICh0YWJsZSkge1xuICAgICAgdGhpcy5zdHJlYW0ucG9zID0gdGFibGUub2Zmc2V0O1xuXG4gICAgICBpZiAodGFibGUuY29tcExlbmd0aCA8IHRhYmxlLmxlbmd0aCkge1xuICAgICAgICB0aGlzLnN0cmVhbS5wb3MgKz0gMjsgLy8gc2tpcCBkZWZsYXRlIGhlYWRlclxuICAgICAgICBsZXQgb3V0QnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkodGFibGUubGVuZ3RoKTtcbiAgICAgICAgbGV0IGJ1ZiA9IGluZmxhdGUodGhpcy5zdHJlYW0ucmVhZEJ1ZmZlcih0YWJsZS5jb21wTGVuZ3RoIC0gMiksIG91dEJ1ZmZlcik7XG4gICAgICAgIHJldHVybiBuZXcgci5EZWNvZGVTdHJlYW0oYnVmKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0cmVhbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHRhYmxlcyBmcm9tICcuLyc7XG5cbmxldCBXT0ZGRGlyZWN0b3J5RW50cnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgICAgICAgIG5ldyByLlN0cmluZyg0KSxcbiAgb2Zmc2V0OiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDMyLCAndm9pZCcsIHt0eXBlOiAnZ2xvYmFsJ30pLFxuICBjb21wTGVuZ3RoOiAgIHIudWludDMyLFxuICBsZW5ndGg6ICAgICAgIHIudWludDMyLFxuICBvcmlnQ2hlY2tzdW06IHIudWludDMyXG59KTtcblxubGV0IFdPRkZEaXJlY3RvcnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgICAgICAgICAgbmV3IHIuU3RyaW5nKDQpLCAvLyBzaG91bGQgYmUgJ3dPRkYnXG4gIGZsYXZvcjogICAgICAgICByLnVpbnQzMixcbiAgbGVuZ3RoOiAgICAgICAgIHIudWludDMyLFxuICBudW1UYWJsZXM6ICAgICAgci51aW50MTYsXG4gIHJlc2VydmVkOiAgICAgICBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiksXG4gIHRvdGFsU2ZudFNpemU6ICByLnVpbnQzMixcbiAgbWFqb3JWZXJzaW9uOiAgIHIudWludDE2LFxuICBtaW5vclZlcnNpb246ICAgci51aW50MTYsXG4gIG1ldGFPZmZzZXQ6ICAgICByLnVpbnQzMixcbiAgbWV0YUxlbmd0aDogICAgIHIudWludDMyLFxuICBtZXRhT3JpZ0xlbmd0aDogci51aW50MzIsXG4gIHByaXZPZmZzZXQ6ICAgICByLnVpbnQzMixcbiAgcHJpdkxlbmd0aDogICAgIHIudWludDMyLFxuICB0YWJsZXM6ICAgICAgICAgbmV3IHIuQXJyYXkoV09GRkRpcmVjdG9yeUVudHJ5LCAnbnVtVGFibGVzJylcbn0pO1xuXG5XT0ZGRGlyZWN0b3J5LnByb2Nlc3MgPSBmdW5jdGlvbigpIHtcbiAgbGV0IHRhYmxlcyA9IHt9O1xuICBmb3IgKGxldCB0YWJsZSBvZiB0aGlzLnRhYmxlcykge1xuICAgIHRhYmxlc1t0YWJsZS50YWddID0gdGFibGU7XG4gIH1cblxuICB0aGlzLnRhYmxlcyA9IHRhYmxlcztcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFdPRkZEaXJlY3Rvcnk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgYnJvdGxpIGZyb20gJ2Jyb3RsaS9kZWNvbXByZXNzLmpzJztcbmltcG9ydCBUVEZGb250IGZyb20gJy4vVFRGRm9udCc7XG5pbXBvcnQgVFRGR2x5cGgsIHsgUG9pbnQgfSBmcm9tICcuL2dseXBoL1RURkdseXBoJztcbmltcG9ydCBXT0ZGMkdseXBoIGZyb20gJy4vZ2x5cGgvV09GRjJHbHlwaCc7XG5pbXBvcnQgV09GRjJEaXJlY3RvcnkgZnJvbSAnLi90YWJsZXMvV09GRjJEaXJlY3RvcnknO1xuaW1wb3J0IHsgYXNjaWlEZWNvZGVyIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogU3ViY2xhc3Mgb2YgVFRGRm9udCB0aGF0IHJlcHJlc2VudHMgYSBUVEYvT1RGIGZvbnQgY29tcHJlc3NlZCBieSBXT0ZGMlxuICogU2VlIHNwZWMgaGVyZTogaHR0cDovL3d3dy53My5vcmcvVFIvV09GRjIvXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFdPRkYyRm9udCBleHRlbmRzIFRURkZvbnQge1xuICB0eXBlID0gJ1dPRkYyJztcblxuICBzdGF0aWMgcHJvYmUoYnVmZmVyKSB7XG4gICAgcmV0dXJuIGFzY2lpRGVjb2Rlci5kZWNvZGUoYnVmZmVyLnNsaWNlKDAsIDQpKSA9PT0gJ3dPRjInO1xuICB9XG5cbiAgX2RlY29kZURpcmVjdG9yeSgpIHtcbiAgICB0aGlzLmRpcmVjdG9yeSA9IFdPRkYyRGlyZWN0b3J5LmRlY29kZSh0aGlzLnN0cmVhbSk7XG4gICAgdGhpcy5fZGF0YVBvcyA9IHRoaXMuc3RyZWFtLnBvcztcbiAgfVxuXG4gIF9kZWNvbXByZXNzKCkge1xuICAgIC8vIGRlY29tcHJlc3MgZGF0YSBhbmQgc2V0dXAgdGFibGUgb2Zmc2V0cyBpZiB3ZSBoYXZlbid0IGFscmVhZHlcbiAgICBpZiAoIXRoaXMuX2RlY29tcHJlc3NlZCkge1xuICAgICAgdGhpcy5zdHJlYW0ucG9zID0gdGhpcy5fZGF0YVBvcztcbiAgICAgIGxldCBidWZmZXIgPSB0aGlzLnN0cmVhbS5yZWFkQnVmZmVyKHRoaXMuZGlyZWN0b3J5LnRvdGFsQ29tcHJlc3NlZFNpemUpO1xuXG4gICAgICBsZXQgZGVjb21wcmVzc2VkU2l6ZSA9IDA7XG4gICAgICBmb3IgKGxldCB0YWcgaW4gdGhpcy5kaXJlY3RvcnkudGFibGVzKSB7XG4gICAgICAgIGxldCBlbnRyeSA9IHRoaXMuZGlyZWN0b3J5LnRhYmxlc1t0YWddO1xuICAgICAgICBlbnRyeS5vZmZzZXQgPSBkZWNvbXByZXNzZWRTaXplO1xuICAgICAgICBkZWNvbXByZXNzZWRTaXplICs9IChlbnRyeS50cmFuc2Zvcm1MZW5ndGggIT0gbnVsbCkgPyBlbnRyeS50cmFuc2Zvcm1MZW5ndGggOiBlbnRyeS5sZW5ndGg7XG4gICAgICB9XG5cbiAgICAgIGxldCBkZWNvbXByZXNzZWQgPSBicm90bGkoYnVmZmVyLCBkZWNvbXByZXNzZWRTaXplKTtcbiAgICAgIGlmICghZGVjb21wcmVzc2VkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZGVjb2RpbmcgY29tcHJlc3NlZCBkYXRhIGluIFdPRkYyJyk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc3RyZWFtID0gbmV3IHIuRGVjb2RlU3RyZWFtKGRlY29tcHJlc3NlZCk7XG4gICAgICB0aGlzLl9kZWNvbXByZXNzZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIF9kZWNvZGVUYWJsZSh0YWJsZSkge1xuICAgIHRoaXMuX2RlY29tcHJlc3MoKTtcbiAgICByZXR1cm4gc3VwZXIuX2RlY29kZVRhYmxlKHRhYmxlKTtcbiAgfVxuXG4gIC8vIE92ZXJyaWRlIHRoaXMgbWV0aG9kIHRvIGdldCBhIGdseXBoIGFuZCByZXR1cm4gb3VyXG4gIC8vIGN1c3RvbSBzdWJjbGFzcyBpZiB0aGVyZSBpcyBhIGdseWYgdGFibGUuXG4gIF9nZXRCYXNlR2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMgPSBbXSkge1xuICAgIGlmICghdGhpcy5fZ2x5cGhzW2dseXBoXSkge1xuICAgICAgaWYgKHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5nbHlmICYmIHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5nbHlmLnRyYW5zZm9ybWVkKSB7XG4gICAgICAgIGlmICghdGhpcy5fdHJhbnNmb3JtZWRHbHlwaHMpIHsgdGhpcy5fdHJhbnNmb3JtR2x5ZlRhYmxlKCk7IH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX2dseXBoc1tnbHlwaF0gPSBuZXcgV09GRjJHbHlwaChnbHlwaCwgY2hhcmFjdGVycywgdGhpcyk7XG5cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBzdXBlci5fZ2V0QmFzZUdseXBoKGdseXBoLCBjaGFyYWN0ZXJzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBfdHJhbnNmb3JtR2x5ZlRhYmxlKCkge1xuICAgIHRoaXMuX2RlY29tcHJlc3MoKTtcbiAgICB0aGlzLnN0cmVhbS5wb3MgPSB0aGlzLmRpcmVjdG9yeS50YWJsZXMuZ2x5Zi5vZmZzZXQ7XG4gICAgbGV0IHRhYmxlID0gR2x5ZlRhYmxlLmRlY29kZSh0aGlzLnN0cmVhbSk7XG4gICAgbGV0IGdseXBocyA9IFtdO1xuXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHRhYmxlLm51bUdseXBoczsgaW5kZXgrKykge1xuICAgICAgbGV0IGdseXBoID0ge307XG4gICAgICBsZXQgbkNvbnRvdXJzID0gdGFibGUubkNvbnRvdXJzLnJlYWRJbnQxNkJFKCk7XG4gICAgICBnbHlwaC5udW1iZXJPZkNvbnRvdXJzID0gbkNvbnRvdXJzO1xuXG4gICAgICBpZiAobkNvbnRvdXJzID4gMCkgeyAvLyBzaW1wbGUgZ2x5cGhcbiAgICAgICAgbGV0IG5Qb2ludHMgPSBbXTtcbiAgICAgICAgbGV0IHRvdGFsUG9pbnRzID0gMDtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5Db250b3VyczsgaSsrKSB7XG4gICAgICAgICAgbGV0IHIgPSByZWFkMjU1VUludDE2KHRhYmxlLm5Qb2ludHMpO1xuICAgICAgICAgIHRvdGFsUG9pbnRzICs9IHI7XG4gICAgICAgICAgblBvaW50cy5wdXNoKHRvdGFsUG9pbnRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGdseXBoLnBvaW50cyA9IGRlY29kZVRyaXBsZXQodGFibGUuZmxhZ3MsIHRhYmxlLmdseXBocywgdG90YWxQb2ludHMpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5Db250b3VyczsgaSsrKSB7XG4gICAgICAgICAgZ2x5cGgucG9pbnRzW25Qb2ludHNbaV0gLSAxXS5lbmRDb250b3VyID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBpbnN0cnVjdGlvblNpemUgPSByZWFkMjU1VUludDE2KHRhYmxlLmdseXBocyk7XG5cbiAgICAgIH0gZWxzZSBpZiAobkNvbnRvdXJzIDwgMCkgeyAvLyBjb21wb3NpdGUgZ2x5cGhcbiAgICAgICAgbGV0IGhhdmVJbnN0cnVjdGlvbnMgPSBUVEZHbHlwaC5wcm90b3R5cGUuX2RlY29kZUNvbXBvc2l0ZS5jYWxsKHsgX2ZvbnQ6IHRoaXMgfSwgZ2x5cGgsIHRhYmxlLmNvbXBvc2l0ZXMpO1xuICAgICAgICBpZiAoaGF2ZUluc3RydWN0aW9ucykge1xuICAgICAgICAgIHZhciBpbnN0cnVjdGlvblNpemUgPSByZWFkMjU1VUludDE2KHRhYmxlLmdseXBocyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZ2x5cGhzLnB1c2goZ2x5cGgpO1xuICAgIH1cblxuICAgIHRoaXMuX3RyYW5zZm9ybWVkR2x5cGhzID0gZ2x5cGhzO1xuICB9XG59XG5cbi8vIFNwZWNpYWwgY2xhc3MgdGhhdCBhY2NlcHRzIGEgbGVuZ3RoIGFuZCByZXR1cm5zIGEgc3ViLXN0cmVhbSBmb3IgdGhhdCBkYXRhXG5jbGFzcyBTdWJzdHJlYW0ge1xuICBjb25zdHJ1Y3RvcihsZW5ndGgpIHtcbiAgICB0aGlzLmxlbmd0aCA9IGxlbmd0aDtcbiAgICB0aGlzLl9idWYgPSBuZXcgci5CdWZmZXIobGVuZ3RoKTtcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIHJldHVybiBuZXcgci5EZWNvZGVTdHJlYW0odGhpcy5fYnVmLmRlY29kZShzdHJlYW0sIHBhcmVudCkpO1xuICB9XG59XG5cbi8vIFRoaXMgc3RydWN0IHJlcHJlc2VudHMgdGhlIGVudGlyZSBnbHlmIHRhYmxlXG5sZXQgR2x5ZlRhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogci51aW50MzIsXG4gIG51bUdseXBoczogci51aW50MTYsXG4gIGluZGV4Rm9ybWF0OiByLnVpbnQxNixcbiAgbkNvbnRvdXJTdHJlYW1TaXplOiByLnVpbnQzMixcbiAgblBvaW50c1N0cmVhbVNpemU6IHIudWludDMyLFxuICBmbGFnU3RyZWFtU2l6ZTogci51aW50MzIsXG4gIGdseXBoU3RyZWFtU2l6ZTogci51aW50MzIsXG4gIGNvbXBvc2l0ZVN0cmVhbVNpemU6IHIudWludDMyLFxuICBiYm94U3RyZWFtU2l6ZTogci51aW50MzIsXG4gIGluc3RydWN0aW9uU3RyZWFtU2l6ZTogci51aW50MzIsXG4gIG5Db250b3VyczogbmV3IFN1YnN0cmVhbSgnbkNvbnRvdXJTdHJlYW1TaXplJyksXG4gIG5Qb2ludHM6IG5ldyBTdWJzdHJlYW0oJ25Qb2ludHNTdHJlYW1TaXplJyksXG4gIGZsYWdzOiBuZXcgU3Vic3RyZWFtKCdmbGFnU3RyZWFtU2l6ZScpLFxuICBnbHlwaHM6IG5ldyBTdWJzdHJlYW0oJ2dseXBoU3RyZWFtU2l6ZScpLFxuICBjb21wb3NpdGVzOiBuZXcgU3Vic3RyZWFtKCdjb21wb3NpdGVTdHJlYW1TaXplJyksXG4gIGJib3hlczogbmV3IFN1YnN0cmVhbSgnYmJveFN0cmVhbVNpemUnKSxcbiAgaW5zdHJ1Y3Rpb25zOiBuZXcgU3Vic3RyZWFtKCdpbnN0cnVjdGlvblN0cmVhbVNpemUnKVxufSk7XG5cbmNvbnN0IFdPUkRfQ09ERSA9IDI1MztcbmNvbnN0IE9ORV9NT1JFX0JZVEVfQ09ERTIgPSAyNTQ7XG5jb25zdCBPTkVfTU9SRV9CWVRFX0NPREUxID0gMjU1O1xuY29uc3QgTE9XRVNUX1VfQ09ERSA9IDI1MztcblxuZnVuY3Rpb24gcmVhZDI1NVVJbnQxNihzdHJlYW0pIHtcbiAgbGV0IGNvZGUgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG5cbiAgaWYgKGNvZGUgPT09IFdPUkRfQ09ERSkge1xuICAgIHJldHVybiBzdHJlYW0ucmVhZFVJbnQxNkJFKCk7XG4gIH1cblxuICBpZiAoY29kZSA9PT0gT05FX01PUkVfQllURV9DT0RFMSkge1xuICAgIHJldHVybiBzdHJlYW0ucmVhZFVJbnQ4KCkgKyBMT1dFU1RfVV9DT0RFO1xuICB9XG5cbiAgaWYgKGNvZGUgPT09IE9ORV9NT1JFX0JZVEVfQ09ERTIpIHtcbiAgICByZXR1cm4gc3RyZWFtLnJlYWRVSW50OCgpICsgTE9XRVNUX1VfQ09ERSAqIDI7XG4gIH1cblxuICByZXR1cm4gY29kZTtcbn1cblxuZnVuY3Rpb24gd2l0aFNpZ24oZmxhZywgYmFzZXZhbCkge1xuICByZXR1cm4gZmxhZyAmIDEgPyBiYXNldmFsIDogLWJhc2V2YWw7XG59XG5cbmZ1bmN0aW9uIGRlY29kZVRyaXBsZXQoZmxhZ3MsIGdseXBocywgblBvaW50cykge1xuICBsZXQgeTtcbiAgbGV0IHggPSB5ID0gMDtcbiAgbGV0IHJlcyA9IFtdO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgblBvaW50czsgaSsrKSB7XG4gICAgbGV0IGR4ID0gMCwgZHkgPSAwO1xuICAgIGxldCBmbGFnID0gZmxhZ3MucmVhZFVJbnQ4KCk7XG4gICAgbGV0IG9uQ3VydmUgPSAhKGZsYWcgPj4gNyk7XG4gICAgZmxhZyAmPSAweDdmO1xuXG4gICAgaWYgKGZsYWcgPCAxMCkge1xuICAgICAgZHggPSAwO1xuICAgICAgZHkgPSB3aXRoU2lnbihmbGFnLCAoKGZsYWcgJiAxNCkgPDwgNykgKyBnbHlwaHMucmVhZFVJbnQ4KCkpO1xuXG4gICAgfSBlbHNlIGlmIChmbGFnIDwgMjApIHtcbiAgICAgIGR4ID0gd2l0aFNpZ24oZmxhZywgKCgoZmxhZyAtIDEwKSAmIDE0KSA8PCA3KSArIGdseXBocy5yZWFkVUludDgoKSk7XG4gICAgICBkeSA9IDA7XG5cbiAgICB9IGVsc2UgaWYgKGZsYWcgPCA4NCkge1xuICAgICAgdmFyIGIwID0gZmxhZyAtIDIwO1xuICAgICAgdmFyIGIxID0gZ2x5cGhzLnJlYWRVSW50OCgpO1xuICAgICAgZHggPSB3aXRoU2lnbihmbGFnLCAxICsgKGIwICYgMHgzMCkgKyAoYjEgPj4gNCkpO1xuICAgICAgZHkgPSB3aXRoU2lnbihmbGFnID4+IDEsIDEgKyAoKGIwICYgMHgwYykgPDwgMikgKyAoYjEgJiAweDBmKSk7XG5cbiAgICB9IGVsc2UgaWYgKGZsYWcgPCAxMjApIHtcbiAgICAgIHZhciBiMCA9IGZsYWcgLSA4NDtcbiAgICAgIGR4ID0gd2l0aFNpZ24oZmxhZywgMSArICgoYjAgLyAxMikgPDwgOCkgKyBnbHlwaHMucmVhZFVJbnQ4KCkpO1xuICAgICAgZHkgPSB3aXRoU2lnbihmbGFnID4+IDEsIDEgKyAoKChiMCAlIDEyKSA+PiAyKSA8PCA4KSArIGdseXBocy5yZWFkVUludDgoKSk7XG5cbiAgICB9IGVsc2UgaWYgKGZsYWcgPCAxMjQpIHtcbiAgICAgIHZhciBiMSA9IGdseXBocy5yZWFkVUludDgoKTtcbiAgICAgIGxldCBiMiA9IGdseXBocy5yZWFkVUludDgoKTtcbiAgICAgIGR4ID0gd2l0aFNpZ24oZmxhZywgKGIxIDw8IDQpICsgKGIyID4+IDQpKTtcbiAgICAgIGR5ID0gd2l0aFNpZ24oZmxhZyA+PiAxLCAoKGIyICYgMHgwZikgPDwgOCkgKyBnbHlwaHMucmVhZFVJbnQ4KCkpO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIGR4ID0gd2l0aFNpZ24oZmxhZywgZ2x5cGhzLnJlYWRVSW50MTZCRSgpKTtcbiAgICAgIGR5ID0gd2l0aFNpZ24oZmxhZyA+PiAxLCBnbHlwaHMucmVhZFVJbnQxNkJFKCkpO1xuICAgIH1cblxuICAgIHggKz0gZHg7XG4gICAgeSArPSBkeTtcbiAgICByZXMucHVzaChuZXcgUG9pbnQob25DdXJ2ZSwgZmFsc2UsIHgsIHkpKTtcbiAgfVxuXG4gIHJldHVybiByZXM7XG59XG4iLCAiaW1wb3J0IFRURkdseXBoIGZyb20gJy4vVFRGR2x5cGgnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBUcnVlVHlwZSBnbHlwaCBpbiB0aGUgV09GRjIgZm9ybWF0LCB3aGljaCBjb21wcmVzc2VzIGdseXBocyBkaWZmZXJlbnRseS5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV09GRjJHbHlwaCBleHRlbmRzIFRURkdseXBoIHtcbiAgdHlwZSA9ICdXT0ZGMic7XG5cbiAgX2RlY29kZSgpIHtcbiAgICAvLyBXZSBoYXZlIHRvIGRlY29kZSBpbiBhZHZhbmNlIChpbiBXT0ZGMkZvbnQpLCBzbyBqdXN0IHJldHVybiB0aGUgcHJlLWRlY29kZWQgZGF0YS5cbiAgICByZXR1cm4gdGhpcy5fZm9udC5fdHJhbnNmb3JtZWRHbHlwaHNbdGhpcy5pZF07XG4gIH1cblxuICBfZ2V0Q0JveCgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXRoLmJib3g7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuY29uc3QgQmFzZTEyOCA9IHtcbiAgZGVjb2RlKHN0cmVhbSkge1xuICAgIGxldCByZXN1bHQgPSAwO1xuICAgIGxldCBpdGVyYWJsZSA9IFswLCAxLCAyLCAzLCA0XTtcbiAgICBmb3IgKGxldCBqID0gMDsgaiA8IGl0ZXJhYmxlLmxlbmd0aDsgaisrKSB7XG4gICAgICBsZXQgaSA9IGl0ZXJhYmxlW2pdO1xuICAgICAgbGV0IGNvZGUgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG5cbiAgICAgIC8vIElmIGFueSBvZiB0aGUgdG9wIHNldmVuIGJpdHMgYXJlIHNldCB0aGVuIHdlJ3JlIGFib3V0IHRvIG92ZXJmbG93LlxuICAgICAgaWYgKHJlc3VsdCAmIDB4ZTAwMDAwMDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdPdmVyZmxvdycpO1xuICAgICAgfVxuXG4gICAgICByZXN1bHQgPSAocmVzdWx0IDw8IDcpIHwgKGNvZGUgJiAweDdmKTtcbiAgICAgIGlmICgoY29kZSAmIDB4ODApID09PSAwKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdCYWQgYmFzZSAxMjggbnVtYmVyJyk7XG4gIH1cbn07XG5cbmxldCBrbm93blRhZ3MgPSBbXG4gICdjbWFwJywgJ2hlYWQnLCAnaGhlYScsICdobXR4JywgJ21heHAnLCAnbmFtZScsICdPUy8yJywgJ3Bvc3QnLCAnY3Z0ICcsXG4gICdmcGdtJywgJ2dseWYnLCAnbG9jYScsICdwcmVwJywgJ0NGRiAnLCAnVk9SRycsICdFQkRUJywgJ0VCTEMnLCAnZ2FzcCcsXG4gICdoZG14JywgJ2tlcm4nLCAnTFRTSCcsICdQQ0xUJywgJ1ZETVgnLCAndmhlYScsICd2bXR4JywgJ0JBU0UnLCAnR0RFRicsXG4gICdHUE9TJywgJ0dTVUInLCAnRUJTQycsICdKU1RGJywgJ01BVEgnLCAnQ0JEVCcsICdDQkxDJywgJ0NPTFInLCAnQ1BBTCcsXG4gICdTVkcgJywgJ3NiaXgnLCAnYWNudCcsICdhdmFyJywgJ2JkYXQnLCAnYmxvYycsICdic2xuJywgJ2N2YXInLCAnZmRzYycsXG4gICdmZWF0JywgJ2ZtdHgnLCAnZnZhcicsICdndmFyJywgJ2hzdHknLCAnanVzdCcsICdsY2FyJywgJ21vcnQnLCAnbW9yeCcsXG4gICdvcGJkJywgJ3Byb3AnLCAndHJhaycsICdaYXBmJywgJ1NpbGYnLCAnR2xhdCcsICdHbG9jJywgJ0ZlYXQnLCAnU2lsbCdcbl07XG5cbmxldCBXT0ZGMkRpcmVjdG9yeUVudHJ5ID0gbmV3IHIuU3RydWN0KHtcbiAgZmxhZ3M6IHIudWludDgsXG4gIGN1c3RvbVRhZzogbmV3IHIuT3B0aW9uYWwobmV3IHIuU3RyaW5nKDQpLCB0ID0+ICh0LmZsYWdzICYgMHgzZikgPT09IDB4M2YpLFxuICB0YWc6IHQgPT4gdC5jdXN0b21UYWcgfHwga25vd25UYWdzW3QuZmxhZ3MgJiAweDNmXSwvLyB8fCAoKCkgPT4geyB0aHJvdyBuZXcgRXJyb3IoYEJhZCB0YWc6ICR7ZmxhZ3MgJiAweDNmfWApOyB9KSgpOyB9LFxuICBsZW5ndGg6IEJhc2UxMjgsXG4gIHRyYW5zZm9ybVZlcnNpb246IHQgPT4gKHQuZmxhZ3MgPj4+IDYpICYgMHgwMyxcbiAgdHJhbnNmb3JtZWQ6IHQgPT4gKHQudGFnID09PSAnZ2x5ZicgfHwgdC50YWcgPT09ICdsb2NhJykgPyB0LnRyYW5zZm9ybVZlcnNpb24gPT09IDAgOiB0LnRyYW5zZm9ybVZlcnNpb24gIT09IDAsXG4gIHRyYW5zZm9ybUxlbmd0aDogbmV3IHIuT3B0aW9uYWwoQmFzZTEyOCwgdCA9PiB0LnRyYW5zZm9ybWVkKVxufSk7XG5cbmxldCBXT0ZGMkRpcmVjdG9yeSA9IG5ldyByLlN0cnVjdCh7XG4gIHRhZzogbmV3IHIuU3RyaW5nKDQpLCAvLyBzaG91bGQgYmUgJ3dPRjInXG4gIGZsYXZvcjogci51aW50MzIsXG4gIGxlbmd0aDogci51aW50MzIsXG4gIG51bVRhYmxlczogci51aW50MTYsXG4gIHJlc2VydmVkOiBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiksXG4gIHRvdGFsU2ZudFNpemU6IHIudWludDMyLFxuICB0b3RhbENvbXByZXNzZWRTaXplOiByLnVpbnQzMixcbiAgbWFqb3JWZXJzaW9uOiByLnVpbnQxNixcbiAgbWlub3JWZXJzaW9uOiByLnVpbnQxNixcbiAgbWV0YU9mZnNldDogci51aW50MzIsXG4gIG1ldGFMZW5ndGg6IHIudWludDMyLFxuICBtZXRhT3JpZ0xlbmd0aDogci51aW50MzIsXG4gIHByaXZPZmZzZXQ6IHIudWludDMyLFxuICBwcml2TGVuZ3RoOiByLnVpbnQzMixcbiAgdGFibGVzOiBuZXcgci5BcnJheShXT0ZGMkRpcmVjdG9yeUVudHJ5LCAnbnVtVGFibGVzJylcbn0pO1xuXG5XT0ZGMkRpcmVjdG9yeS5wcm9jZXNzID0gZnVuY3Rpb24oKSB7XG4gIGxldCB0YWJsZXMgPSB7fTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnRhYmxlcy5sZW5ndGg7IGkrKykge1xuICAgIGxldCB0YWJsZSA9IHRoaXMudGFibGVzW2ldO1xuICAgIHRhYmxlc1t0YWJsZS50YWddID0gdGFibGU7XG4gIH1cblxuICByZXR1cm4gdGhpcy50YWJsZXMgPSB0YWJsZXM7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBXT0ZGMkRpcmVjdG9yeTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCBUVEZGb250IGZyb20gJy4vVFRGRm9udCc7XG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gJy4vdGFibGVzL2RpcmVjdG9yeSc7XG5pbXBvcnQgdGFibGVzIGZyb20gJy4vdGFibGVzJztcbmltcG9ydCB7IGFzY2lpRGVjb2RlciB9IGZyb20gJy4vdXRpbHMnO1xuXG5sZXQgVFRDSGVhZGVyID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDMyLCB7XG4gIDB4MDAwMTAwMDA6IHtcbiAgICBudW1Gb250czogICByLnVpbnQzMixcbiAgICBvZmZzZXRzOiAgICBuZXcgci5BcnJheShyLnVpbnQzMiwgJ251bUZvbnRzJylcbiAgfSxcbiAgMHgwMDAyMDAwMDoge1xuICAgIG51bUZvbnRzOiAgIHIudWludDMyLFxuICAgIG9mZnNldHM6ICAgIG5ldyByLkFycmF5KHIudWludDMyLCAnbnVtRm9udHMnKSxcbiAgICBkc2lnVGFnOiAgICByLnVpbnQzMixcbiAgICBkc2lnTGVuZ3RoOiByLnVpbnQzMixcbiAgICBkc2lnT2Zmc2V0OiByLnVpbnQzMlxuICB9XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVHJ1ZVR5cGVDb2xsZWN0aW9uIHtcbiAgdHlwZSA9ICdUVEMnO1xuXG4gIHN0YXRpYyBwcm9iZShidWZmZXIpIHtcbiAgICByZXR1cm4gYXNjaWlEZWNvZGVyLmRlY29kZShidWZmZXIuc2xpY2UoMCwgNCkpID09PSAndHRjZic7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzdHJlYW0pIHtcbiAgICB0aGlzLnN0cmVhbSA9IHN0cmVhbTtcbiAgICBpZiAoc3RyZWFtLnJlYWRTdHJpbmcoNCkgIT09ICd0dGNmJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgYSBUcnVlVHlwZSBjb2xsZWN0aW9uJyk7XG4gICAgfVxuXG4gICAgdGhpcy5oZWFkZXIgPSBUVENIZWFkZXIuZGVjb2RlKHN0cmVhbSk7XG4gIH1cblxuICBnZXRGb250KG5hbWUpIHtcbiAgICBmb3IgKGxldCBvZmZzZXQgb2YgdGhpcy5oZWFkZXIub2Zmc2V0cykge1xuICAgICAgbGV0IHN0cmVhbSA9IG5ldyByLkRlY29kZVN0cmVhbSh0aGlzLnN0cmVhbS5idWZmZXIpO1xuICAgICAgc3RyZWFtLnBvcyA9IG9mZnNldDtcbiAgICAgIGxldCBmb250ID0gbmV3IFRURkZvbnQoc3RyZWFtKTtcbiAgICAgIGlmIChcbiAgICAgICAgZm9udC5wb3N0c2NyaXB0TmFtZSA9PT0gbmFtZSB8fFxuICAgICAgICAoXG4gICAgICAgICAgZm9udC5wb3N0c2NyaXB0TmFtZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkgJiYgXG4gICAgICAgICAgbmFtZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkgJiYgXG4gICAgICAgICAgZm9udC5wb3N0c2NyaXB0TmFtZS5ldmVyeSgodiwgaSkgPT4gbmFtZVtpXSA9PT0gdilcbiAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBmb250O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZ2V0IGZvbnRzKCkge1xuICAgIGxldCBmb250cyA9IFtdO1xuICAgIGZvciAobGV0IG9mZnNldCBvZiB0aGlzLmhlYWRlci5vZmZzZXRzKSB7XG4gICAgICBsZXQgc3RyZWFtID0gbmV3IHIuRGVjb2RlU3RyZWFtKHRoaXMuc3RyZWFtLmJ1ZmZlcik7XG4gICAgICBzdHJlYW0ucG9zID0gb2Zmc2V0O1xuICAgICAgZm9udHMucHVzaChuZXcgVFRGRm9udChzdHJlYW0pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9udHM7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCBUVEZGb250IGZyb20gJy4vVFRGRm9udCc7XG5cbmxldCBERm9udE5hbWUgPSBuZXcgci5TdHJpbmcoci51aW50OCk7XG5sZXQgREZvbnREYXRhID0gbmV3IHIuU3RydWN0KHtcbiAgbGVuOiByLnVpbnQzMixcbiAgYnVmOiBuZXcgci5CdWZmZXIoJ2xlbicpXG59KTtcblxubGV0IFJlZiA9IG5ldyByLlN0cnVjdCh7XG4gIGlkOiByLnVpbnQxNixcbiAgbmFtZU9mZnNldDogci5pbnQxNixcbiAgYXR0cjogci51aW50OCxcbiAgZGF0YU9mZnNldDogci51aW50MjQsXG4gIGhhbmRsZTogci51aW50MzJcbn0pO1xuXG5sZXQgVHlwZSA9IG5ldyByLlN0cnVjdCh7XG4gIG5hbWU6IG5ldyByLlN0cmluZyg0KSxcbiAgbWF4VHlwZUluZGV4OiByLnVpbnQxNixcbiAgcmVmTGlzdDogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgbmV3IHIuQXJyYXkoUmVmLCB0ID0+IHQubWF4VHlwZUluZGV4ICsgMSksIHsgdHlwZTogJ3BhcmVudCcgfSlcbn0pO1xuXG5sZXQgVHlwZUxpc3QgPSBuZXcgci5TdHJ1Y3Qoe1xuICBsZW5ndGg6IHIudWludDE2LFxuICB0eXBlczogbmV3IHIuQXJyYXkoVHlwZSwgdCA9PiB0Lmxlbmd0aCArIDEpXG59KTtcblxubGV0IERGb250TWFwID0gbmV3IHIuU3RydWN0KHtcbiAgcmVzZXJ2ZWQ6IG5ldyByLlJlc2VydmVkKHIudWludDgsIDI0KSxcbiAgdHlwZUxpc3Q6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIFR5cGVMaXN0KSxcbiAgbmFtZUxpc3RPZmZzZXQ6IG5ldyByLlBvaW50ZXIoci51aW50MTYsICd2b2lkJylcbn0pO1xuXG5sZXQgREZvbnRIZWFkZXIgPSBuZXcgci5TdHJ1Y3Qoe1xuICBkYXRhT2Zmc2V0OiByLnVpbnQzMixcbiAgbWFwOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBERm9udE1hcCksXG4gIGRhdGFMZW5ndGg6IHIudWludDMyLFxuICBtYXBMZW5ndGg6IHIudWludDMyXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgREZvbnQge1xuICB0eXBlID0gJ0RGb250JztcblxuICBzdGF0aWMgcHJvYmUoYnVmZmVyKSB7XG4gICAgbGV0IHN0cmVhbSA9IG5ldyByLkRlY29kZVN0cmVhbShidWZmZXIpO1xuXG4gICAgdHJ5IHtcbiAgICAgIHZhciBoZWFkZXIgPSBERm9udEhlYWRlci5kZWNvZGUoc3RyZWFtKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgdHlwZSBvZiBoZWFkZXIubWFwLnR5cGVMaXN0LnR5cGVzKSB7XG4gICAgICBpZiAodHlwZS5uYW1lID09PSAnc2ZudCcpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3RydWN0b3Ioc3RyZWFtKSB7XG4gICAgdGhpcy5zdHJlYW0gPSBzdHJlYW07XG4gICAgdGhpcy5oZWFkZXIgPSBERm9udEhlYWRlci5kZWNvZGUodGhpcy5zdHJlYW0pO1xuXG4gICAgZm9yIChsZXQgdHlwZSBvZiB0aGlzLmhlYWRlci5tYXAudHlwZUxpc3QudHlwZXMpIHtcbiAgICAgIGZvciAobGV0IHJlZiBvZiB0eXBlLnJlZkxpc3QpIHtcbiAgICAgICAgaWYgKHJlZi5uYW1lT2Zmc2V0ID49IDApIHtcbiAgICAgICAgICB0aGlzLnN0cmVhbS5wb3MgPSByZWYubmFtZU9mZnNldCArIHRoaXMuaGVhZGVyLm1hcC5uYW1lTGlzdE9mZnNldDtcbiAgICAgICAgICByZWYubmFtZSA9IERGb250TmFtZS5kZWNvZGUodGhpcy5zdHJlYW0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlZi5uYW1lID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZS5uYW1lID09PSAnc2ZudCcpIHtcbiAgICAgICAgdGhpcy5zZm50ID0gdHlwZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRGb250KG5hbWUpIHtcbiAgICBpZiAoIXRoaXMuc2ZudCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgcmVmIG9mIHRoaXMuc2ZudC5yZWZMaXN0KSB7XG4gICAgICBsZXQgcG9zID0gdGhpcy5oZWFkZXIuZGF0YU9mZnNldCArIHJlZi5kYXRhT2Zmc2V0ICsgNDtcbiAgICAgIGxldCBzdHJlYW0gPSBuZXcgci5EZWNvZGVTdHJlYW0odGhpcy5zdHJlYW0uYnVmZmVyLnNsaWNlKHBvcykpO1xuICAgICAgbGV0IGZvbnQgPSBuZXcgVFRGRm9udChzdHJlYW0pO1xuICAgICAgaWYgKFxuICAgICAgICBmb250LnBvc3RzY3JpcHROYW1lID09PSBuYW1lIHx8XG4gICAgICAgIChcbiAgICAgICAgICBmb250LnBvc3RzY3JpcHROYW1lIGluc3RhbmNlb2YgVWludDhBcnJheSAmJiBcbiAgICAgICAgICBuYW1lIGluc3RhbmNlb2YgVWludDhBcnJheSAmJiBcbiAgICAgICAgICBmb250LnBvc3RzY3JpcHROYW1lLmV2ZXJ5KCh2LCBpKSA9PiBuYW1lW2ldID09PSB2KVxuICAgICAgICApXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIGZvbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBnZXQgZm9udHMoKSB7XG4gICAgbGV0IGZvbnRzID0gW107XG4gICAgZm9yIChsZXQgcmVmIG9mIHRoaXMuc2ZudC5yZWZMaXN0KSB7XG4gICAgICBsZXQgcG9zID0gdGhpcy5oZWFkZXIuZGF0YU9mZnNldCArIHJlZi5kYXRhT2Zmc2V0ICsgNDtcbiAgICAgIGxldCBzdHJlYW0gPSBuZXcgci5EZWNvZGVTdHJlYW0odGhpcy5zdHJlYW0uYnVmZmVyLnNsaWNlKHBvcykpO1xuICAgICAgZm9udHMucHVzaChuZXcgVFRGRm9udChzdHJlYW0pKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9udHM7XG4gIH1cbn1cbiIsICJpbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xuaW1wb3J0ICogYXMgZm9udGtpdCBmcm9tICdmb250a2l0J1xuXG5jb25zdCBfY29uZmlnID0geyBmb250RmFtaWx5TWFwcGluZ3M6IHt9IH1cbmNvbnN0IGZvbnRzID0ge31cblxuZXhwb3J0IGNvbnN0IHNldEZvbnREaXIgPSBmdW5jdGlvbiAoZGlyKSB7XG4gIF9jb25maWcuZm9udERpciA9IGRpclxuICByZXR1cm4gdGhpc1xufVxuXG5leHBvcnQgY29uc3Qgc2V0Rm9udEZhbWlseU1hcHBpbmdzID0gZnVuY3Rpb24gKG1hcCkge1xuICBfY29uZmlnLmZvbnRGYW1pbHlNYXBwaW5ncyA9IG1hcFxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBUT0RPOiBtYWtlIGFzeW5jXG5leHBvcnQgY29uc3QgcHJlbG9hZEZvbnRzID0gKCkgPT4ge1xuICBjb25zdCBtYXAgPSBfY29uZmlnLmZvbnRGYW1pbHlNYXBwaW5nc1xuXG4gIGZvciAoY29uc3QgWyBmb250LCBmaWxlIF0gb2YgT2JqZWN0LmVudHJpZXMobWFwKSkge1xuICAgIGNvbnN0IGZpbGVuYW1lID0gcGF0aC5qb2luKF9jb25maWcuZm9udERpciwgZmlsZSlcblxuICAgIHRyeSB7XG4gICAgICBmb250c1tmb250XSA9IGZvbnRraXQub3BlblN5bmMoZmlsZW5hbWUpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS53YXJuKGBDb3VsZCBub3QgbG9hZCBmb250IGZpbGUgZm9yICR7Zm9udH1gLCBlKVxuICAgIH1cbiAgfVxuICByZXR1cm4gdGhpc1xufVxuXG5leHBvcnQgY29uc3QgZ2V0Q29uZmlnID0gKCkgPT4gX2NvbmZpZ1xuZXhwb3J0IGNvbnN0IGdldEZvbnRzID0gKCkgPT4gZm9udHNcblxuZXhwb3J0IGNvbnN0IGNvbmZpZyA9IHtcbiAgc2V0Rm9udERpcixcbiAgc2V0Rm9udEZhbWlseU1hcHBpbmdzLFxuICBwcmVsb2FkRm9udHMsXG4gIGdldENvbmZpZyxcbiAgZ2V0Rm9udHNcbn1cbiIsICJpbXBvcnQgKiBhcyBwYXRoVXRpbHMgZnJvbSAnLi9wYXRoVXRpbHMuanMnXG5pbXBvcnQgKiBhcyByZWdleCBmcm9tICcuL3JlZ2V4LmpzJ1xuaW1wb3J0ICogYXMgdGV4dFV0aWxzIGZyb20gJy4vdGV4dFV0aWxzLmpzJ1xuaW1wb3J0IHsgTm9Cb3ggfSBmcm9tICcuLi9vdGhlci9Cb3guanMnXG5pbXBvcnQgeyBOb2RlSXRlcmF0b3IgfSBmcm9tICcuL05vZGVJdGVyYXRvci5qcydcbmltcG9ydCB7IE5vZGVGaWx0ZXIgfSBmcm9tICcuLi9kb20vTm9kZUZpbHRlci5qcydcblxuY29uc3QgYXBwbHlUcmFuc2Zvcm1hdGlvbiA9IChzZWdtZW50cywgbm9kZSwgYXBwbHlUcmFuc2Zvcm1hdGlvbnMpID0+IHtcbiAgaWYgKG5vZGUubWF0cml4aWZ5ICYmIGFwcGx5VHJhbnNmb3JtYXRpb25zKSB7XG4gICAgcmV0dXJuIHNlZ21lbnRzLnRyYW5zZm9ybShub2RlLm1hdHJpeGlmeSgpKVxuICB9XG4gIHJldHVybiBzZWdtZW50c1xufVxuXG5leHBvcnQgY29uc3QgZ2V0U2VnbWVudHMgPSAobm9kZSwgYXBwbHlUcmFuc2Zvcm1hdGlvbnMsIHJib3ggPSBmYWxzZSkgPT4ge1xuICBjb25zdCBzZWdtZW50cyA9IGdldFBhdGhTZWdtZW50cyhub2RlLCByYm94KVxuICByZXR1cm4gYXBwbHlUcmFuc2Zvcm1hdGlvbihzZWdtZW50cywgbm9kZSwgYXBwbHlUcmFuc2Zvcm1hdGlvbnMpXG59XG5cbmNvbnN0IGdldFBhdGhTZWdtZW50cyA9IChub2RlLCByYm94KSA9PiB7XG4gIGlmIChub2RlLm5vZGVUeXBlICE9PSAxKSByZXR1cm4gbmV3IHBhdGhVdGlscy5QYXRoU2VnbWVudEFycmF5KClcblxuICBzd2l0Y2ggKG5vZGUubm9kZU5hbWUpIHtcbiAgY2FzZSAncmVjdCc6XG4gIGNhc2UgJ2ltYWdlJzpcbiAgY2FzZSAncGF0dGVybic6XG4gIGNhc2UgJ21hc2snOlxuICBjYXNlICdmb3JlaWduT2JqZWN0JzpcbiAgICAvLyBDcmVhdGUgUGF0aCBmcm9tIHJlY3QgYW5kIGNyZWF0ZSBQb2ludENsb3VkIGZyb20gUGF0aFxuICAgIHJldHVybiBwYXRoVXRpbHMuZ2V0UGF0aFNlZ21lbnRzKHBhdGhVdGlscy5wYXRoRnJvbS5yZWN0KG5vZGUpKVxuICBjYXNlICdzdmcnOlxuICBjYXNlICdzeW1ib2wnOlxuICAgIC8vIHJldHVybiBwYXRoVXRpbHMuZ2V0UGF0aFNlZ21lbnRzKHBhdGhVdGlscy5wYXRoRnJvbS5yZWN0KG5vZGUpKVxuICAgIGlmIChyYm94KSB7XG4gICAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20ucmVjdChub2RlKSlcbiAgICB9XG4gIC8vIEFUVEVOVElPTjogRkFMTCBUSFJPVUdIXG4gIC8vIEJlY2F1c2Ugbm9ybWFsIGJib3ggaXMgY2FsY3VsYXRlZCBieSB0aGUgY29udGVudCBvZiB0aGUgZWxlbWVudCBhbmQgbm90IGl0cyB3aWR0aCBhbmQgaGVpZ2h0XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBjYXNlICdnJzpcbiAgY2FzZSAnY2xpcFBhdGgnOlxuICBjYXNlICdhJzpcbiAgY2FzZSAnbWFya2VyJzpcbiAgICAvLyBJdGVyYXRlIHRyb3VnaCBhbGwgY2hpbGRyZW4gYW5kIGdldCB0aGUgcG9pbnQgY2xvdWQgb2YgZWFjaFxuICAgIC8vIFRoZW4gdHJhbnNmb3JtIGl0IHdpdGggdmlld2JveCBtYXRyaXggaWYgbmVlZGVkXG4gICAgcmV0dXJuIG5vZGUuY2hpbGROb2Rlcy5yZWR1Y2UoKHNlZ21lbnRzLCBjaGlsZCkgPT4ge1xuICAgICAgaWYgKCFjaGlsZC5tYXRyaXhpZnkpIHJldHVybiBzZWdtZW50c1xuICAgICAgcmV0dXJuIHNlZ21lbnRzLm1lcmdlKGdldFNlZ21lbnRzKGNoaWxkLCB0cnVlKS50cmFuc2Zvcm0oY2hpbGQuZ2VuZXJhdGVWaWV3Qm94TWF0cml4KCkpKVxuICAgIH0sIG5ldyBwYXRoVXRpbHMuUGF0aFNlZ21lbnRBcnJheSgpKVxuICBjYXNlICdjaXJjbGUnOlxuICAgIHJldHVybiBwYXRoVXRpbHMuZ2V0UGF0aFNlZ21lbnRzKHBhdGhVdGlscy5wYXRoRnJvbS5jaXJjbGUobm9kZSkpXG4gIGNhc2UgJ2VsbGlwc2UnOlxuICAgIHJldHVybiBwYXRoVXRpbHMuZ2V0UGF0aFNlZ21lbnRzKHBhdGhVdGlscy5wYXRoRnJvbS5lbGxpcHNlKG5vZGUpKVxuICBjYXNlICdsaW5lJzpcbiAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20ubGluZShub2RlKSlcbiAgY2FzZSAncG9seWxpbmUnOlxuICBjYXNlICdwb2x5Z29uJzpcbiAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20ucG9seWxpbmUobm9kZSkpXG4gIGNhc2UgJ3BhdGgnOlxuICBjYXNlICdnbHlwaCc6XG4gIGNhc2UgJ21pc3NpbmctZ2x5cGgnOlxuICAgIHJldHVybiBwYXRoVXRpbHMuZ2V0UGF0aFNlZ21lbnRzKG5vZGUuZ2V0QXR0cmlidXRlKCdkJykpXG4gIGNhc2UgJ3VzZSc6IHtcbiAgICAvLyBHZXQgcmVmZXJlbmNlIGZyb20gZWxlbWVudFxuICAgIGNvbnN0IHJlZiA9IG5vZGUuZ2V0QXR0cmlidXRlKCdocmVmJykgfHwgbm9kZS5nZXRBdHRyaWJ1dGUoJ3hsaW5rOmhyZWYnKVxuICAgIC8vIEdldCB0aGUgYWN0dWFsIHJlZmVyZW5jZWQgTm9kZVxuICAgIGNvbnN0IHJlZk5vZGUgPSBub2RlLmdldFJvb3ROb2RlKCkucXVlcnlTZWxlY3RvcihyZWYpXG4gICAgLy8gR2V0IHRoZSBCQm94IG9mIHRoZSByZWZlcmVuY2VkIGVsZW1lbnQgYW5kIGFwcGx5IHRoZSB2aWV3Ym94IG9mIDx1c2U+XG4gICAgLy8gVE9ETzogRG8gd2UgbmVlZCB0byBhcHBseSB0aGUgdHJhbnNmb3JtYXRpb25zIG9mIHRoZSBlbGVtZW50P1xuICAgIC8vIENoZWNrIGJib3ggb2YgdHJhbnNmb3JtZWQgZWxlbWVudCB3aGljaCBpcyByZXVzZWQgd2l0aCA8dXNlPlxuICAgIHJldHVybiBnZXRTZWdtZW50cyhyZWZOb2RlKS50cmFuc2Zvcm0obm9kZS5nZW5lcmF0ZVZpZXdCb3hNYXRyaXgoKSlcbiAgfVxuICBjYXNlICd0c3Bhbic6XG4gIGNhc2UgJ3RleHQnOlxuICBjYXNlICdhbHRHbHlwaCc6IHtcbiAgICBjb25zdCBib3ggPSBnZXRUZXh0QkJveChub2RlKVxuXG4gICAgaWYgKGJveCBpbnN0YW5jZW9mIE5vQm94KSB7XG4gICAgICByZXR1cm4gbmV3IHBhdGhVdGlscy5QYXRoU2VnbWVudEFycmF5KClcbiAgICB9XG5cbiAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20uYm94KGJveCkpXG4gIH1cbiAgZGVmYXVsdDpcbiAgICByZXR1cm4gbmV3IHBhdGhVdGlscy5QYXRoU2VnbWVudEFycmF5KClcbiAgfVxufVxuXG5jb25zdCBnZXRUZXh0QkJveCA9IChub2RlKSA9PiB7XG4gIGNvbnN0IHRleHRSb290ID0gZmluZFRleHRSb290KG5vZGUpXG4gIGNvbnN0IGJveGVzID0gZ2V0VGV4dEJCb3hlcyhub2RlLCB0ZXh0Um9vdClcbiAgcmV0dXJuIGJveGVzLmZpbHRlcihpc05vdEVtcHR5Qm94KS5yZWR1Y2UoKGxhc3QsIGN1cnIpID0+IGxhc3QubWVyZ2UoY3VyciksIG5ldyBOb0JveCgpKVxufVxuXG5jb25zdCBmaW5kVGV4dFJvb3QgPSAobm9kZSkgPT4ge1xuICB3aGlsZSAobm9kZS5wYXJlbnROb2RlKSB7XG4gICAgaWYgKChub2RlLm5vZGVOYW1lID09PSAndGV4dCcgJiYgbm9kZS5wYXJlbnROb2RlLm5vZGVOYW1lID09PSAndGV4dCcpXG4gICAgfHwgKChub2RlLm5vZGVOYW1lID09PSAndHNwYW4nIHx8IG5vZGUubm9kZU5hbWUgPT09ICd0ZXh0UGF0aCcpICYmIFsgJ3RzcGFuJywgJ3RleHQnLCAndGV4dFBhdGgnIF0uaW5jbHVkZXMobm9kZS5wYXJlbnROb2RlLm5vZGVOYW1lKSkpIHtcbiAgICAgIG5vZGUgPSBub2RlLnBhcmVudE5vZGVcbiAgICB9IGVsc2Uge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbm9kZVxufVxuXG4vLyBUaGlzIGZ1bmN0aW9uIHRha2VzIGEgbm9kZSBvZiB3aGljaCB0aGUgYmJveCBuZWVkcyB0byBiZSBjYWxjdWxhdGVkXG4vLyBJbiBvcmRlciB0byBwb3NpdGlvbiB0aGUgYm94IGNvcnJlY3RseSwgd2UgbmVlZCB0byBrbm93IHdlcmUgdGhlIHBhcmVudCBhbmQgd2VyZSB0aGUgc2libGluZ3MgKmJlZm9yZSogb3VyIG5vZGUgYXJlXG4vLyBUaGF0cyB3aHkgYSB0ZXh0Um9vdCBpcyBwYXNzZWQgd2hpY2ggaXMgdGhlIG1vc3Qgb3V0ZXIgdGV4dEVsZW1lbnQgbmVlZGVkIHRvIGNhbGN1bGF0ZSBhbGwgYm94ZXNcbi8vIFdoZW4gdGhlIGl0ZXJhdG9yIGhpdHMgdGhlIGVsZW1lbnQgd2UgbmVlZCB0aGUgYmJveCBvZiwgaXQgaXMgdGVybWluYXRlZCBhbmQgdGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgYWdhaW5cbi8vIG9ubHkgZm9yIHRoZSBzdWJzdHJlZSBvZiBvdXIgbm9kZSBhbmQgd2l0aG91dCB0ZXh0Um9vciBidXQgaW5zdGVhZCBwb3MsIGR4IGFuZCBkeSBhcmUga25vd25cbmNvbnN0IGdldFRleHRCQm94ZXMgPSBmdW5jdGlvbiAodGFyZ2V0LCB0ZXh0Um9vdCA9IHRhcmdldCwgcG9zID0geyB4OiAwLCB5OiAwIH0sIGR4ID0gWyAwIF0sIGR5ID0gWyAwIF0sIGJveGVzID0gW10pIHtcblxuICAvLyBDcmVhdGUgTm9kZUl0ZXJhdG9yLiBPbmx5IHNob3cgZWxlbW50cyBhbmQgdGV4dCBhbmQgc2tpcCBkZXNjcmlwdGl2ZSBlbGVtZW50c1xuICAvLyBUT0RPOiBtYWtlIGFuIGluc3RhbmNlb2YgY2hlY2sgZm9yIERlc2NyaXB0aXZlRWxlbWVudCBpbnN0ZWFkIG9mIHRlc3Rpbmcgb25lIGJ5IG9uZVxuICAvLyBPbmx5IHRpdGxlIGlzIHNraXBwZWQgYXRtXG4gIGNvbnN0IGl0ZXIgPSBuZXcgTm9kZUl0ZXJhdG9yKHRleHRSb290LCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCB8IE5vZGVGaWx0ZXIuU0hPV19URVhULCAobm9kZSkgPT4ge1xuICAgIGlmIChub2RlLm5vZGVOYW1lID09PSAndGl0bGUnKSByZXR1cm4gTm9kZUZpbHRlci5GSUxURVJfSUdOT1JFXG4gICAgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVFxuICB9KVxuXG4gIC8vIEl0ZXJhdGUgdHJvdWdoIGFsbCBub2RlcyB0b3AgdG8gYm90dG9tLCBsZWZ0IHRvIHJpZ2h0XG4gIGZvciAoY29uc3Qgbm9kZSBvZiBpdGVyKSB7XG5cbiAgICAvLyBJZiB3ZSBoaXQgb3VyIHRhcmdldCwgd2UgZ2F0aGVyZWQgYWxsIHBvc2l0aW9uYWwgaW5mb3JtYXRpb24gd2UgbmVlZCB0byBtb3ZlIHRoZSBiYm94IHRvIHRoZSBjb3JyZWN0IHNwb3RcbiAgICBpZiAobm9kZSA9PT0gdGFyZ2V0ICYmIG5vZGUgIT09IHRleHRSb290KSB7XG4gICAgICByZXR1cm4gZ2V0VGV4dEJCb3hlcyhub2RlLCBub2RlLCBwb3MsIGR4LCBkeSlcbiAgICB9XG5cbiAgICAvLyBUcmF2ZXJzZSB0cm91Z2ggdGhpcyBub2RlIHVwZGF0aW5nIHBvc2l0aW9ucyBhbmQgYWRkIGJveGVzXG4gICAgZ2V0UG9zaXRpb25EZXRhaWxzRm9yKG5vZGUsIHBvcywgZHgsIGR5LCBib3hlcylcbiAgfVxuXG4gIHJldHVybiBib3hlc1xufVxuXG5jb25zdCBpc05vdEVtcHR5Qm94ID0gYm94ID0+IGJveC54ICE9PSAwIHx8IGJveC55ICE9PSAwIHx8IGJveC53aWR0aCAhPT0gMCB8fCBib3guaGVpZ2h0ICE9PSAwXG5cbi8vIFRoaXMgZnVuY3Rpb24gZWl0aGVyIHVwZGF0ZXMgcG9zLCBkeCBhbmQgZHkgKHdoZW4gaXRzIGFuIGVsZW1lbnQpIG9yIGNhbGN1bGF0ZXMgdGhlIGJveGVzIGZvciB0ZXh0IHdpdGggdGhlIHBhc3NlZCBhcmd1bWVudHNcbi8vIEFsbCBhcmd1bWVudHMgYXJlIHBhc3NlZCBieSByZWZlcmVuY2Ugc28gZG9udCBvdmVyd3JpdGUgdGhlbSAodHJlYXQgdGhlbSBhcyBjb25zdCEpXG4vLyBUT0RPOiBCcmVhayB0aGlzIGludG8gdHdvIGZ1bmN0aW9ucz9cbmNvbnN0IGdldFBvc2l0aW9uRGV0YWlsc0ZvciA9IChub2RlLCBwb3MsIGR4LCBkeSwgYm94ZXMpID0+IHtcbiAgaWYgKG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgY29uc3QgeCA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3gnKSlcbiAgICBjb25zdCB5ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgneScpKVxuXG4gICAgcG9zLnggPSBpc05hTih4KSA/IHBvcy54IDogeFxuICAgIHBvcy55ID0gaXNOYU4oeSkgPyBwb3MueSA6IHlcblxuICAgIGNvbnN0IGR4MCA9IChub2RlLmdldEF0dHJpYnV0ZSgnZHgnKSB8fCAnJykuc3BsaXQocmVnZXguZGVsaW1pdGVyKS5maWx0ZXIobnVtID0+IG51bSAhPT0gJycpLm1hcChwYXJzZUZsb2F0KVxuICAgIGNvbnN0IGR5MCA9IChub2RlLmdldEF0dHJpYnV0ZSgnZHknKSB8fCAnJykuc3BsaXQocmVnZXguZGVsaW1pdGVyKS5maWx0ZXIobnVtID0+IG51bSAhPT0gJycpLm1hcChwYXJzZUZsb2F0KVxuXG4gICAgLy8gVE9ETzogZXZlbnR1YWxseSByZXBsYWNlIG9ubHkgYXMgbXVjaCB2YWx1ZXMgYXMgd2UgaGF2ZSB0ZXh0IGNoYXJzIChub2RlLnRleHRDb250ZW50Lmxlbmd0aCkgYmVjYXVzZSB3ZSBjb3VsZCBlbmQgdXAgYWRkaW5nIHRvIG11Y2hcbiAgICAvLyByZXBsYWNlIGluaXRpYWwgdmFsdWVzIHdpdGggbm9kZSB2YWx1ZXMgaWYgcHJlc2VudFxuICAgIGR4LnNwbGljZSgwLCBkeDAubGVuZ3RoLCAuLi5keDApXG4gICAgZHkuc3BsaWNlKDAsIGR5MC5sZW5ndGgsIC4uLmR5MClcbiAgfSBlbHNlIHtcbiAgICAvLyBnZXQgdGV4dCBkYXRhXG4gICAgY29uc3QgZGF0YSA9IG5vZGUuZGF0YVxuXG4gICAgbGV0IGogPSAwXG4gICAgY29uc3QgamwgPSBkYXRhLmxlbmd0aFxuICAgIGNvbnN0IGRldGFpbHMgPSBnZXRGb250RGV0YWlscyhub2RlKVxuXG4gICAgLy8gaWYgaXQgaXMgbW9yZSB0aGFuIG9uZSBkeC9keSBzaW5nbGUgbGV0dGVycyBhcmUgbW92ZWQgYnkgdGhlIGFtb3VudCAoaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS9keClcbiAgICBpZiAoZHkubGVuZ3RoIHx8IGR4Lmxlbmd0aCkge1xuICAgICAgZm9yICg7aiA8IGpsOyBqKyspIHtcbiAgICAgICAgLy8gQ2FsY3VsYXRlIGEgYm94IGZvciBhIHNpbmdsZSBsZXR0ZXJcbiAgICAgICAgYm94ZXMucHVzaCh0ZXh0VXRpbHMudGV4dEJCb3goZGF0YS5zdWJzdHIoaiwgMSksIHBvcy54LCBwb3MueSwgZGV0YWlscykpXG5cbiAgICAgICAgLy8gQWRkIHRoZSBuZXh0IHBvc2l0aW9uIHRvIGN1cnJlbnQgb25lXG4gICAgICAgIHBvcy54ICs9IGR4LnNoaWZ0KCkgfHwgMFxuICAgICAgICBwb3MueSArPSBkeS5zaGlmdCgpIHx8IDBcblxuICAgICAgICBpZiAoIWR5Lmxlbmd0aCAmJiAhZHgubGVuZ3RoKSBicmVha1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGluIGNhc2UgaXQgd2FzIG9ubHkgb25lIGR4L2R5IG9yIG5vIG1vcmUgZHgvZHkgbW92ZSB0aGUgcmVzdCBvZiB0aGUgdGV4dFxuICAgIGJveGVzLnB1c2godGV4dFV0aWxzLnRleHRCQm94KGRhdGEuc3Vic3RyKGopLCBwb3MueCwgcG9zLnksIGRldGFpbHMpKVxuICAgIHBvcy54ICs9IGJveGVzW2JveGVzLmxlbmd0aCAtIDFdLndpZHRoXG4gIH1cbn1cblxuLypcbi8vIHRoaXMgZnVuY3Rpb24gaXMgcGFzc2luZyBkeCBhbmQgZHkgdmFsdWVzIGJ5IHJlZmVyZW5jZXMuIERvbnQgYXNzaWduIG5ldyB2YWx1ZXMgdG8gaXRcbmNvbnN0IHRleHRJdGVyYXRvciA9IGZ1bmN0aW9uIChub2RlLCBwb3MgPSB7IHg6IDAsIHk6IDAgfSwgZHggPSBbIDAgXSwgZHkgPSBbIDAgXSkge1xuXG4gIHZhciB4ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgneCcpKVxuICB2YXIgeSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3knKSlcblxuICBwb3MueCA9IGlzTmFOKHgpID8gcG9zLnggOiB4XG4gIHBvcy55ID0gaXNOYU4oeSkgPyBwb3MueSA6IHlcblxuICB2YXIgZHgwID0gKG5vZGUuZ2V0QXR0cmlidXRlKCdkeCcpIHx8ICcnKS5zcGxpdChyZWdleC5kZWxpbWl0ZXIpLmZpbHRlcihudW0gPT4gbnVtICE9PSAnJykubWFwKHBhcnNlRmxvYXQpXG4gIHZhciBkeTAgPSAobm9kZS5nZXRBdHRyaWJ1dGUoJ2R5JykgfHwgJycpLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikuZmlsdGVyKG51bSA9PiBudW0gIT09ICcnKS5tYXAocGFyc2VGbG9hdClcbiAgdmFyIGJveGVzID0gW11cbiAgdmFyIGRhdGEgPSAnJ1xuXG4gIC8vIFRPRE86IGV2ZW50dWFsbHkgcmVwbGFjZSBvbmx5IGFzIG11Y2ggdmFsdWVzIGFzIHdlIGhhdmUgdGV4dCBjaGFycyAobm9kZS50ZXh0Q29udGVudC5sZW5ndGgpIGJlY2F1c2Ugd2UgY291bGQgZW5kIHVwIGFkZGluZyB0byBtdWNoXG4gIC8vIHJlcGxhY2UgaW5pdGlhbCB2YWx1ZXMgd2l0aCBub2RlIHZhbHVlcyBpZiBwcmVzZW50XG4gIGR4LnNwbGljZSgwLCBkeDAubGVuZ3RoLCAuLi5keDApXG4gIGR5LnNwbGljZSgwLCBkeTAubGVuZ3RoLCAuLi5keTApXG5cbiAgdmFyIGkgPSAwXG4gIHZhciBpbCA9IG5vZGUuY2hpbGROb2Rlcy5sZW5ndGhcblxuICAvLyBpdGVyYXRlIHRocm91Z2ggYWxsIGNoaWxkcmVuXG4gIGZvciAoOyBpIDwgaWw7ICsraSkge1xuXG4gICAgLy8gc2hpZnQgbmV4dCBjaGlsZFxuICAgIHBvcy54ICs9IGR4LnNoaWZ0KCkgfHwgMFxuICAgIHBvcy55ICs9IGR5LnNoaWZ0KCkgfHwgMFxuXG4gICAgLy8gdGV4dFxuICAgIGlmIChub2RlLmNoaWxkTm9kZXNbaV0ubm9kZVR5cGUgPT09IG5vZGUuVEVYVF9OT0RFKSB7XG5cbiAgICAgIC8vIGdldCB0ZXh0IGRhdGFcbiAgICAgIGRhdGEgPSBub2RlLmNoaWxkTm9kZXNbaV0uZGF0YVxuXG4gICAgICBsZXQgaiA9IDBcbiAgICAgIGNvbnN0IGpsID0gZGF0YS5sZW5ndGhcblxuICAgICAgLy8gaWYgaXQgaXMgbW9yZSB0aGFuIG9uZSBkeC9keSBzaW5nbGUgbGV0dGVycyBhcmUgbW92ZWQgYnkgdGhlIGFtb3VudCAoaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS9keClcbiAgICAgIGlmIChkeS5sZW5ndGggfHwgZHgubGVuZ3RoKSB7XG4gICAgICAgIGZvciAoO2ogPCBqbDsgaisrKSB7XG4gICAgICAgICAgYm94ZXMucHVzaCh0ZXh0VXRpbHMudGV4dEJCb3goZGF0YS5zdWJzdHIoaiwgMSksIHBvcy54LCBwb3MueSwgZ2V0Rm9udERldGFpbHMobm9kZSkpKVxuXG4gICAgICAgICAgcG9zLnggKz0gZHguc2hpZnQoKSB8fCAwXG4gICAgICAgICAgcG9zLnkgKz0gZHkuc2hpZnQoKSB8fCAwXG5cbiAgICAgICAgICBpZiAoIWR5Lmxlbmd0aCAmJiAhZHgubGVuZ3RoKSBicmVha1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGluIGNhc2UgaXQgd2FzIG9ubHkgb25lIGR4L2R5IG9yIG5vIG1vcmUgZHgvZHkgbW92ZSB0aGUgcmVzdCBvZiB0aGUgdGV4dFxuXG4gICAgICBib3hlcy5wdXNoKHRleHRVdGlscy50ZXh0QkJveChkYXRhLnN1YnN0cihqKSwgcG9zLngsIHBvcy55LCBnZXRGb250RGV0YWlscyhub2RlKSkpXG4gICAgICBwb3MueCArPSBib3hlc1tib3hlcy5sZW5ndGggLSAxXS53aWR0aFxuXG4gICAgLy8gZWxlbWVudFxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBpbiBjYXNlIG9mIGVsZW1lbnQsIHJlY3Vyc2l2ZWx5IGNhbGwgZnVuY3Rpb24gYWdhaW4gd2l0aCBuZXcgc3RhcnQgdmFsdWVzXG4gICAgICBib3hlcyA9IGJveGVzLmNvbmNhdCh0ZXh0SXRlcmF0b3Iobm9kZS5jaGlsZE5vZGVzW2ldLCBwb3MsIGR4LCBkeSkpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGJveGVzXG59ICovXG5cbmNvbnN0IGdldEZvbnREZXRhaWxzID0gKG5vZGUpID0+IHtcbiAgaWYgKG5vZGUubm9kZVR5cGUgPT09IG5vZGUuVEVYVF9OT0RFKSBub2RlID0gbm9kZS5wYXJlbnROb2RlXG5cbiAgbGV0IGZvbnRTaXplID0gbnVsbFxuICBsZXQgZm9udEZhbWlseSA9IG51bGxcbiAgbGV0IHRleHRBbmNob3IgPSBudWxsXG4gIGxldCBkb21pbmFudEJhc2VsaW5lID0gbnVsbFxuXG4gIGNvbnN0IHRleHRDb250ZW50RWxlbWVudHMgPSBbXG4gICAgJ3RleHQnLFxuICAgICd0c3BhbicsXG4gICAgJ3RyZWYnLFxuICAgICd0ZXh0UGF0aCcsXG4gICAgJ2FsdEdseXBoJyxcbiAgICAnZydcbiAgXVxuXG4gIGRvIHtcbiAgICAvLyBUT0RPOiBzdG9wIG9uXG4gICAgaWYgKCFmb250U2l6ZSkgeyBmb250U2l6ZSA9IG5vZGUuc3R5bGUuZm9udFNpemUgfHwgbm9kZS5nZXRBdHRyaWJ1dGUoJ2ZvbnQtc2l6ZScpIH1cbiAgICBpZiAoIWZvbnRGYW1pbHkpIHsgZm9udEZhbWlseSA9IG5vZGUuc3R5bGUuZm9udEZhbWlseSB8fCBub2RlLmdldEF0dHJpYnV0ZSgnZm9udC1mYW1pbHknKSB9XG4gICAgaWYgKCF0ZXh0QW5jaG9yKSB7IHRleHRBbmNob3IgPSBub2RlLnN0eWxlLnRleHRBbmNob3IgfHwgbm9kZS5nZXRBdHRyaWJ1dGUoJ3RleHQtYW5jaG9yJykgfVxuICAgIGlmICghZG9taW5hbnRCYXNlbGluZSkgeyBkb21pbmFudEJhc2VsaW5lID0gbm9kZS5zdHlsZS5kb21pbmFudEJhc2VsaW5lIHx8IG5vZGUuZ2V0QXR0cmlidXRlKCdkb21pbmFudC1iYXNlbGluZScpIH1cbiAgICAvLyBUT0RPOiBjaGVjayBmb3IgYWxpZ25tZW50LWJhc2VsaW5lIGluIHRzcGFuLCB0cmVmLCB0ZXh0UGF0aCwgYWx0R2x5cGhcbiAgICAvLyBUT0RPOiBhbGlnbm1lbnQtYWRqdXN0LCBiYXNlbGluZS1zaGlmdFxuICAgIC8qXG4gICAgaWYoIWFsaWdubWVudEJhc2VsaW5lKVxuICAgIGFsaWdubWVudEJhc2VsaW5lID0gdGhpcy5zdHlsZS5hbGlnbm1lbnRCYXNlbGluZSB8fCB0aGlzLmdldEF0dHJpYnV0ZSgnYWxpZ25tZW50LWJhc2VsaW5lJylcbiAgICAqL1xuXG4gIH0gd2hpbGUgKFxuICAgIChub2RlID0gbm9kZS5wYXJlbnROb2RlKVxuICAgICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRUxFTUVOVF9OT0RFXG4gICAgJiYgKHRleHRDb250ZW50RWxlbWVudHMuaW5jbHVkZXMobm9kZS5ub2RlTmFtZSkpXG4gIClcblxuICByZXR1cm4ge1xuICAgIGZvbnRGYW1pbHksXG4gICAgZm9udFNpemUsXG4gICAgdGV4dEFuY2hvcjogdGV4dEFuY2hvciB8fCAnc3RhcnQnLFxuICAgIC8vIFRPRE86IHVzZSBjZW50cmFsIGZvciB3cml0aW5nLW1vZGUgPT09IGhvcml6b250YWwgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS9kb21pbmFudC1iYXNlbGluZVxuICAgIGRvbWluYW50QmFzZWxpbmU6IGRvbWluYW50QmFzZWxpbmUgfHwgJ2FscGhhYmV0aWNhbCdcbiAgICAvLyBmb250RmFtaWx5TWFwcGluZ3M6IHRoaXMub3duZXJEb2N1bWVudC5mb250RmFtaWx5TWFwcGluZ3MsXG4gICAgLy8gZm9udERpcjogdGhpcy5vd25lckRvY3VtZW50LmZvbnREaXIsXG4gICAgLy8gcHJlbG9hZGVkOiB0aGlzLm93bmVyRG9jdW1lbnQuX3ByZWxvYWRlZFxuICB9XG59XG4iLCAiaW1wb3J0IHsgU1ZHRWxlbWVudCB9IGZyb20gJy4vU1ZHRWxlbWVudC5qcydcbmltcG9ydCB7IGdldFNlZ21lbnRzIH0gZnJvbSAnLi4vLi4vdXRpbHMvYmJveFV0aWxzLmpzJ1xuaW1wb3J0ICogYXMgcmVnZXggZnJvbSAnLi4vLi4vdXRpbHMvcmVnZXguanMnXG5pbXBvcnQgeyBTVkdNYXRyaXggfSBmcm9tICcuL1NWR01hdHJpeC5qcydcblxuLy8gTWFwIG1hdHJpeCBhcnJheSB0byBvYmplY3RcbmZ1bmN0aW9uIGFycmF5VG9NYXRyaXggKGEpIHtcbiAgcmV0dXJuIHsgYTogYVswXSwgYjogYVsxXSwgYzogYVsyXSwgZDogYVszXSwgZTogYVs0XSwgZjogYVs1XSB9XG59XG5cbmV4cG9ydCBjbGFzcyBTVkdHcmFwaGljc0VsZW1lbnQgZXh0ZW5kcyBTVkdFbGVtZW50IHtcbiAgLy8gVE9ETzogaHR0cHM6Ly93d3cudzMub3JnL1RSL1NWRzIvY29vcmRzLmh0bWwjQ29tcHV0aW5nQVZpZXdwb3J0c1RyYW5zZm9ybVxuICBnZW5lcmF0ZVZpZXdCb3hNYXRyaXggKCkge1xuICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL1NWRy9BdHRyaWJ1dGUvdmlld0JveFxuICAgIGlmICghWyAnbWFya2VyJywgJ3N5bWJvbCcsICdwYXR0ZXJuJywgJ3N2ZycsICd2aWV3JyBdLmluY2x1ZGVzKHRoaXMubm9kZU5hbWUpKSB7XG4gICAgICByZXR1cm4gbmV3IFNWR01hdHJpeCgpXG4gICAgfVxuXG4gICAgbGV0IHZpZXcgPSAodGhpcy5nZXRBdHRyaWJ1dGUoJ3ZpZXdCb3gnKSB8fCAnJykuc3BsaXQocmVnZXguZGVsaW1pdGVyKS5tYXAocGFyc2VGbG9hdCkuZmlsdGVyKGVsID0+ICFpc05hTihlbCkpXG4gICAgY29uc3Qgd2lkdGggPSBwYXJzZUZsb2F0KHRoaXMuZ2V0QXR0cmlidXRlKCd3aWR0aCcpKSB8fCAwXG4gICAgY29uc3QgaGVpZ2h0ID0gcGFyc2VGbG9hdCh0aGlzLmdldEF0dHJpYnV0ZSgnaGVpZ2h0JykpIHx8IDBcbiAgICBjb25zdCB4ID0gcGFyc2VGbG9hdCh0aGlzLmdldEF0dHJpYnV0ZSgneCcpKSB8fCAwXG4gICAgY29uc3QgeSA9IHBhcnNlRmxvYXQodGhpcy5nZXRBdHRyaWJ1dGUoJ3knKSkgfHwgMFxuXG4gICAgLy8gVE9ETzogSWYgbm8gd2lkdGggYW5kIGhlaWdodCBpcyBnaXZlbiwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgb3V0ZXIgc3ZnIGVsZW1lbnQgaXMgdXNlZFxuICAgIGlmICghd2lkdGggfHwgIWhlaWdodCkge1xuICAgICAgcmV0dXJuIG5ldyBTVkdNYXRyaXgoKS50cmFuc2xhdGUoeCwgeSlcbiAgICB9XG5cbiAgICBpZiAodmlldy5sZW5ndGggIT09IDQpIHtcbiAgICAgIHZpZXcgPSBbIDAsIDAsIHdpZHRoLCBoZWlnaHQgXVxuICAgIH1cblxuICAgIC8vIGZpcnN0IGFwcGx5IHggYW5kIHkgaWYgbmVzdGVkLCB0aGVuIHZpZXdib3ggc2NhbGUsIHRoZW4gdmlld0JveCBtb3ZlXG4gICAgcmV0dXJuIG5ldyBTVkdNYXRyaXgoKS50cmFuc2xhdGUoeCwgeSkuc2NhbGUod2lkdGggLyB2aWV3WzJdLCBoZWlnaHQgLyB2aWV3WzNdKS50cmFuc2xhdGUoLXZpZXdbMF0sIC12aWV3WzFdKVxuICB9XG5cbiAgZ2V0QkJveCAoKSB7XG4gICAgcmV0dXJuIGdldFNlZ21lbnRzKHRoaXMpLmJib3goKVxuICB9XG5cbiAgLy8gVE9ETzogVGhpcyBtZXRob2QgYWN0dWFsbHkgZXhpc3RzIG9uIGFsbCBFbGVtZW50c1xuICBnZXRCb3VuZGluZ0NsaWVudFJlY3QgKCkge1xuICAgIC8vIFRoZSBib3VuZGluZyBjbGllbnQgcmVjdCB0YWtlcyB0aGUgc2NyZWVuIGN0bSBvZiB0aGUgZWxlbWVudFxuICAgIC8vIGFuZCBjb252ZXJ0cyB0aGUgYm91bmRpbmcgYm94IHdpdGggaXRcblxuICAgIC8vIGhvd2V2ZXIsIG5vcm1hbCBib3VuZGluZyBjb25zaXN0cyBvZjpcbiAgICAvLyAtIGFsbCBjaGlsZHJlbiB0cmFuc2Zvcm1lZFxuICAgIC8vIC0gdGhlIHZpZXdib3ggb2YgdGhlIGVsZW1lbnQgaWYgYXZhaWxhYmxlXG5cbiAgICAvLyBUaGUgYm91bmRpbmdDbGllbnRSZWN0IGlzIG5vdCBhZmZlY3RlZCBieSBpdHMgb3duIHZpZXdib3hcbiAgICAvLyBTbyB3ZSBhcHBseSBvbmx5IG91ciBvd24gdHJhbnNmb3JtYXRpb25zIGFuZCBwYXJlbnRzIHNjcmVlbkNUTVxuXG4gICAgbGV0IG0gPSB0aGlzLm1hdHJpeGlmeSgpXG5cbiAgICBpZiAodGhpcy5wYXJlbnROb2RlICYmIHRoaXMucGFyZW50Tm9kZS5ub2RlTmFtZSAhPT0gJyNkb2N1bWVudCcpIHtcbiAgICAgIG0gPSB0aGlzLnBhcmVudE5vZGUuZ2V0U2NyZWVuQ1RNKCkubXVsdGlwbHkobSlcbiAgICB9XG5cbiAgICAvLyBsZXQgbSA9IHRoaXMuZ2V0U2NyZWVuQ1RNKClcblxuICAgIC8vIFRoZXJlIGFyZSBhIGZldyBleHRyYSBydWxlcyByZWdhcmRpbmcgcmJveCBhbmQgdGhlIDxzdmc+IGVsZW1lbnRcbiAgICAvLyBOYW1lbHkgdGhpcyBpczpcbiAgICAvLyBCQm94IGlzIGNhbGN1bGF0ZWQgYXMgbm9ybWFsIGZvciBjb250YWluZXIgZWxlbWVudHNcbiAgICAvLyBSYm94IGlzIGNhbGN1bGF0ZWQgd2l0aCB0aGUgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgPHN2Zz5cbiAgICAvLyBUaGlzIGNvdWxkIGJlIGFsc28gdHJ1ZSBmb3Igc3ltYm9scyBzbyB0aGlzIGlzIGE6XG4gICAgLy8gVG9kbzogLi4uXG4gICAgcmV0dXJuIGdldFNlZ21lbnRzKHRoaXMsIGZhbHNlLCB0cnVlKS50cmFuc2Zvcm0obSkuYmJveCgpXG4gIH1cblxuICBnZXRDVE0gKCkge1xuICAgIGxldCBtID0gdGhpcy5tYXRyaXhpZnkoKVxuXG4gICAgbGV0IG5vZGUgPSB0aGlzXG4gICAgd2hpbGUgKChub2RlID0gbm9kZS5wYXJlbnROb2RlKSkge1xuICAgICAgaWYgKFsgJ3N2ZycsICdzeW1ib2wnLCAnaW1hZ2UnLCAncGF0dGVybicsICdtYXJrZXInIF0uaW5kZXhPZihub2RlLm5vZGVOYW1lKSA+IC0xKSBicmVha1xuICAgICAgbSA9IG0ubXVsdGlwbHkobm9kZS5tYXRyaXhpZnkoKSlcbiAgICAgIGlmIChub2RlLm5vZGVOYW1lID09PSAnI2RvY3VtZW50JykgcmV0dXJuIHRoaXMuZ2V0U2NyZWVuQ1RNKClcbiAgICB9XG5cbiAgICByZXR1cm4gbm9kZS5nZW5lcmF0ZVZpZXdCb3hNYXRyaXgoKS5tdWx0aXBseShtKVxuICB9XG5cbiAgZ2V0SW5uZXJNYXRyaXggKCkge1xuICAgIGxldCBtID0gdGhpcy5tYXRyaXhpZnkoKVxuXG4gICAgaWYgKFsgJ3N2ZycsICdzeW1ib2wnLCAnaW1hZ2UnLCAncGF0dGVybicsICdtYXJrZXInIF0uaW5kZXhPZih0aGlzLm5vZGVOYW1lKSA+IC0xKSB7XG4gICAgICBtID0gdGhpcy5nZW5lcmF0ZVZpZXdCb3hNYXRyaXgoKS5tdWx0aXBseShtKVxuICAgIH1cbiAgICByZXR1cm4gbVxuICB9XG5cbiAgZ2V0U2NyZWVuQ1RNICgpIHtcbiAgICAvLyByZWY6IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTEzNDQ1MzdcbiAgICAvLyBXZSBmb2xsb3cgQ2hyb21lcyBiZWhhdmlvciBhbmQgaW5jbHVkZSB0aGUgdmlld2JveCBpbiB0aGUgc2NyZWVuQ1RNXG4gICAgY29uc3QgbSA9IHRoaXMuZ2V0SW5uZXJNYXRyaXgoKVxuXG4gICAgLy8gVE9ETzogV2UgaGF2ZSB0byBsb29wIHVudGlsIGRvY3VtZW50LCBob3dldmVyIGh0bWwgZWxlbWVudHMgZG9udCBoYXZlIGdldFNjcmVlbkNUTSBpbXBsZW1lbnRlZFxuICAgIC8vIHRoZXkgYWxzbyBkb250IGhhdmUgYSB0cmFuc2Zvcm0gYXR0cmlidXRlLiBUaGVyZWZvcmUgd2UgbmVlZCBhIGRpZmZlcmVudCB3YXkgb2YgZmlndXJpbmcgb3V0IHRoZWlyIChjc3MpIHRyYW5zZm9ybVxuICAgIGlmICh0aGlzLnBhcmVudE5vZGUgJiYgdGhpcy5wYXJlbnROb2RlIGluc3RhbmNlb2YgU1ZHR3JhcGhpY3NFbGVtZW50KSB7XG4gICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmdldFNjcmVlbkNUTSgpLm11bHRpcGx5KG0pXG4gICAgfVxuXG4gICAgcmV0dXJuIG1cbiAgfVxuXG4gIG1hdHJpeGlmeSAoKSB7XG4gICAgY29uc3QgbWF0cml4ID0gKHRoaXMuZ2V0QXR0cmlidXRlKCd0cmFuc2Zvcm0nKSB8fCAnJykudHJpbSgpXG4gICAgICAvLyBzcGxpdCB0cmFuc2Zvcm1hdGlvbnNcbiAgICAgIC5zcGxpdChyZWdleC50cmFuc2Zvcm1zKS5zbGljZSgwLCAtMSkubWFwKGZ1bmN0aW9uIChzdHIpIHtcbiAgICAgICAgLy8gZ2VuZXJhdGUga2V5ID0+IHZhbHVlIHBhaXJzXG4gICAgICAgIGNvbnN0IGt2ID0gc3RyLnRyaW0oKS5zcGxpdCgnKCcpXG4gICAgICAgIHJldHVybiBbIGt2WzBdLnRyaW0oKSwga3ZbMV0uc3BsaXQocmVnZXguZGVsaW1pdGVyKS5tYXAoZnVuY3Rpb24gKHN0cikgeyByZXR1cm4gcGFyc2VGbG9hdChzdHIudHJpbSgpKSB9KSBdXG4gICAgICB9KVxuICAgICAgLy8gbWVyZ2UgZXZlcnkgdHJhbnNmb3JtYXRpb24gaW50byBvbmUgbWF0cml4XG4gICAgICAucmVkdWNlKGZ1bmN0aW9uIChtYXRyaXgsIHRyYW5zZm9ybSkge1xuXG4gICAgICAgIGlmICh0cmFuc2Zvcm1bMF0gPT09ICdtYXRyaXgnKSByZXR1cm4gbWF0cml4Lm11bHRpcGx5KGFycmF5VG9NYXRyaXgodHJhbnNmb3JtWzFdKSlcbiAgICAgICAgcmV0dXJuIG1hdHJpeFt0cmFuc2Zvcm1bMF1dLmFwcGx5KG1hdHJpeCwgdHJhbnNmb3JtWzFdKVxuXG4gICAgICB9LCBuZXcgU1ZHTWF0cml4KCkpXG5cbiAgICByZXR1cm4gbWF0cml4XG4gIH1cblxuICBnZXQgdHJhbnNmb3JtICgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpXG4gIH1cblxufVxuIiwgImltcG9ydCB7IFNWR0dyYXBoaWNzRWxlbWVudCB9IGZyb20gJy4vU1ZHR3JhcGhpY3NFbGVtZW50LmpzJ1xuaW1wb3J0IHsgQm94IH0gZnJvbSAnLi4vLi4vb3RoZXIvQm94LmpzJ1xuaW1wb3J0IHsgU1ZHTWF0cml4IH0gZnJvbSAnLi9TVkdNYXRyaXguanMnXG5pbXBvcnQgeyBTVkdQb2ludCB9IGZyb20gJy4vU1ZHUG9pbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBTVkdTVkdFbGVtZW50IGV4dGVuZHMgU1ZHR3JhcGhpY3NFbGVtZW50IHtcbiAgY3JlYXRlU1ZHTWF0cml4ICgpIHtcbiAgICByZXR1cm4gbmV3IFNWR01hdHJpeCgpXG4gIH1cblxuICBjcmVhdGVTVkdQb2ludCAoKSB7XG4gICAgcmV0dXJuIG5ldyBTVkdQb2ludCgpXG4gIH1cblxuICBjcmVhdGVTVkdSZWN0ICgpIHtcbiAgICByZXR1cm4gbmV3IEJveCgpXG4gIH1cblxufVxuIiwgImltcG9ydCB7IFNWR0dyYXBoaWNzRWxlbWVudCB9IGZyb20gJy4vU1ZHR3JhcGhpY3NFbGVtZW50LmpzJ1xuaW1wb3J0ICogYXMgcGF0aFV0aWxzIGZyb20gJy4uLy4uL3V0aWxzL3BhdGhVdGlscy5qcydcblxuZXhwb3J0IGNsYXNzIFNWR1BhdGhFbGVtZW50IGV4dGVuZHMgU1ZHR3JhcGhpY3NFbGVtZW50IHtcbiAgZ2V0UG9pbnRBdExlbmd0aCAobGVuKSB7XG4gICAgcmV0dXJuIHBhdGhVdGlscy5wb2ludEF0TGVuZ3RoKHRoaXMuZ2V0QXR0cmlidXRlKCdkJyksIGxlbilcbiAgfVxuXG4gIGdldFRvdGFsTGVuZ3RoICgpIHtcbiAgICByZXR1cm4gcGF0aFV0aWxzLmxlbmd0aCh0aGlzLmdldEF0dHJpYnV0ZSgnZCcpKVxuICB9XG59XG4iLCAiLy8gQHRzLWNoZWNrXG4vLyBAdHMtaWdub3JlXG5pbXBvcnQgeyBleHRlbmRTdGF0aWMgfSBmcm9tICcuLi8uLi91dGlscy9vYmplY3RDcmVhdGlvblV0aWxzLmpzJ1xuXG5jb25zdCB1bml0VHlwZXMgPSB7XG4gIFNWR19MRU5HVEhUWVBFX1VOS05PV046IDAsXG4gIFNWR19MRU5HVEhUWVBFX05VTUJFUjogMSxcbiAgU1ZHX0xFTkdUSFRZUEVfUEVSQ0VOVEFHRTogMixcbiAgU1ZHX0xFTkdUSFRZUEVfRU1TOiAzLFxuICBTVkdfTEVOR1RIVFlQRV9FWFM6IDQsXG4gIFNWR19MRU5HVEhUWVBFX1BYOiA1LFxuICBTVkdfTEVOR1RIVFlQRV9DTTogNixcbiAgU1ZHX0xFTkdUSFRZUEVfTU06IDcsXG4gIFNWR19MRU5HVEhUWVBFX0lOOiA4LFxuICBTVkdfTEVOR1RIVFlQRV9QVDogOSxcbiAgU1ZHX0xFTkdUSFRZUEVfUEM6IDEwLFxufVxuXG5jb25zdCB1bml0QnlTdHJpbmcgPSB7XG4gIFsnJ106IHVuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9OVU1CRVIsXG4gIFsnJSddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfUEVSQ0VOVEFHRSxcbiAgWydlbSddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfRU1TLFxuICBbJ2V4J106IHVuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9FWFMsXG4gIFsncHgnXTogdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX1BYLFxuICBbJ2NtJ106IHVuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9DTSxcbiAgWydtbSddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfTU0sXG4gIFsnaW4nXTogdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX0lOLFxuICBbJ3B0J106IHVuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9QVCxcbiAgWydwYyddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfUEMsXG59XG5cbmNvbnN0IHVuaXRTdHJpbmdCeUNvbnN0YW50ID0gbmV3IE1hcChcbiAgT2JqZWN0LmVudHJpZXModW5pdEJ5U3RyaW5nKS5tYXAoKFt1bml0U3RyaW5nLCB1bml0Q29uc3RhbnRdKSA9PiBbXG4gICAgdW5pdENvbnN0YW50LFxuICAgIHVuaXRTdHJpbmcsXG4gIF0pXG4pXG5cbmNvbnN0IHVuaXRGYWN0b3JzID0gbmV3IE1hcChbXG4gIFt1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfTlVNQkVSLCAxXSxcbiAgW3VuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9QRVJDRU5UQUdFLCBOYU5dLFxuICBbdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX0VNUywgTmFOXSxcbiAgW3VuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9FWFMsIE5hTl0sXG4gIFt1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfUFgsIDFdLFxuICBbdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX0NNLCA2XSxcbiAgW3VuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9NTSwgOTYgLyAyNS40XSxcbiAgW3VuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9JTiwgOTZdLFxuICBbdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX1BULCA0IC8gM10sXG4gIFt1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfUEMsIDE2XSxcbl0pXG5cbmNvbnN0IHZhbHVlUGF0dGVybiA9IC9eXFxzKihbKy1dP1swLTldKlsuXT9bMC05XSsoPzplWystXT9bMC05XSspPykoZW18ZXh8cHh8aW58Y218bW18cHR8cGN8JSk/XFxzKiQvaTtcblxuZXhwb3J0IGNsYXNzIFNWR0xlbmd0aCB7XG4gIGVsZW1lbnRcbiAgYXR0cmlidXRlTmFtZVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge0VsZW1lbnR9IGVsZW1lbnRcbiAgICogQHBhcmFtIHtzdHJpbmd9IGF0dHJpYnV0ZU5hbWVcbiAgICovXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnQsIGF0dHJpYnV0ZU5hbWUpIHtcbiAgICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50XG4gICAgdGhpcy5hdHRyaWJ1dGVOYW1lID0gYXR0cmlidXRlTmFtZVxuICB9XG5cbiAgZ2V0IHVuaXRUeXBlKCkge1xuICAgIHJldHVybiBwYXJzZVZhbHVlKHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUodGhpcy5hdHRyaWJ1dGVOYW1lKSlbMV1cbiAgfVxuXG4gIGdldCB2YWx1ZSgpIHtcbiAgICBjb25zdCBbdmFsdWUsIHVuaXRdID0gcGFyc2VWYWx1ZShcbiAgICAgIHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUodGhpcy5hdHRyaWJ1dGVOYW1lKVxuICAgIClcbiAgICByZXR1cm4gdmFsdWUgKiBnZXRVbml0RmFjdG9yKHVuaXQpXG4gIH1cblxuICBzZXQgdmFsdWUodmFsdWUpIHtcbiAgICBjb25zdCB1bml0RmFjdG9yID0gZ2V0VW5pdEZhY3Rvcih0aGlzLnVuaXRUeXBlKVxuICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICB0aGlzLmF0dHJpYnV0ZU5hbWUsXG4gICAgICB2YWx1ZSAvIHVuaXRGYWN0b3IgKyB1bml0U3RyaW5nKHRoaXMpXG4gICAgKVxuICB9XG5cbiAgZ2V0IHZhbHVlSW5TcGVjaWZpZWRVbml0cygpIHtcbiAgICByZXR1cm4gcGFyc2VWYWx1ZSh0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKHRoaXMuYXR0cmlidXRlTmFtZSkpWzBdXG4gIH1cblxuICBzZXQgdmFsdWVJblNwZWNpZmllZFVuaXRzKHZhbHVlKSB7XG4gICAgdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSh0aGlzLmF0dHJpYnV0ZU5hbWUsIHZhbHVlICsgdW5pdFN0cmluZyh0aGlzKSlcbiAgfVxuXG4gIGdldCB2YWx1ZUFzU3RyaW5nKCkge1xuICAgIC8vIERvIG5vdCBzaW1wbHkgdXNlIGdldEF0dHJpYnV0ZSgpIGFzIHRoaXMgZnVuY3Rpb24gaGFzIHRvIHJldHVybiBhIHN0cmluZ1xuICAgIC8vIHRoYXQgaXMgYSB2YWxpZCByZXByZXNlbnRhdGlvbiBvZiB0aGUgdXNlZCB2YWx1ZS5cbiAgICByZXR1cm4gdGhpcy52YWx1ZUluU3BlY2lmaWVkVW5pdHMgKyB1bml0U3RyaW5nKHRoaXMpXG4gIH1cblxuICBzZXQgdmFsdWVBc1N0cmluZyh2YWx1ZVN0cmluZykge1xuICAgIGNvbnN0IFt2YWx1ZSwgdW5pdF0gPSBwYXJzZVZhbHVlKHZhbHVlU3RyaW5nLCBmYWxzZSlcbiAgICBjb25zdCB1bml0U3RyaW5nID0gdW5pdFN0cmluZ0J5Q29uc3RhbnQuZ2V0KHVuaXQpIHx8ICcnXG4gICAgdGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSh0aGlzLmF0dHJpYnV0ZU5hbWUsIHZhbHVlICsgdW5pdFN0cmluZylcbiAgfVxufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfG51bGx9IHZhbHVlU3RyaW5nXG4gKiBAcGFyYW0ge2Jvb2xlYW59IGZhbGxiYWNrICBJZiBzZXQgdG8gYGZhbHNlYCBjYXVzZXMgYW4gZXJyb3IgdG8gYmUgdGhyb3duIGlmXG4gKiBgdmFsdWVTdHJpbmdgIGNhbiBub3QgYmUgcGFyc2VkIHByb3Blcmx5LiBPdGhlcndpc2UgdGhlIHJldHVybmVkIHZhbHVlIGZhbGxzXG4gKiBiYWNrIHRvIDAgYW5kIHRoZSB1bml0IGZhbGxzIGJhY2sgdG8gYFNWR19MRU5HVEhUWVBFX05VTUJFUmAuXG4gKiBAcmV0dXJuIHtbbnVtYmVyLCBudW1iZXJdfSAgVmFsdWUgYW5kIHVuaXQuIEZvciB1bmtub3duIHVuaXRzLCBpZiB0aGVcbiAqIGF0dHJpYnV0ZSBpcyBub3Qgb2YgdGhlIGNvcnJlY3QgZm9ybWF0IG9yIGlmIHRoZSBhdHRyaWJ1dGUgaXMgbm90IHByZXNlbnQgb25cbiAqIHRoZSBlbGVtZW50LCB2YWx1ZSAwIGFuZCB1bml0IFNWR19MRU5HVEhUWVBFX05VTUJFUiBhcmUgcmV0dXJuZWQuXG4gKi9cbmZ1bmN0aW9uIHBhcnNlVmFsdWUodmFsdWVTdHJpbmcsIGZhbGxiYWNrID0gdHJ1ZSkge1xuICBjb25zdCBbLCByYXdWYWx1ZSwgcmF3VW5pdF0gPSAodmFsdWVTdHJpbmcgfHwgJycpLm1hdGNoKHZhbHVlUGF0dGVybikgfHwgW11cbiAgY29uc3QgdW5pdCA9IHVuaXRCeVN0cmluZ1socmF3VW5pdCB8fCAnJykudG9Mb3dlckNhc2UoKV1cbiAgaWYgKHJhd1ZhbHVlICE9PSB1bmRlZmluZWQgJiYgdW5pdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIFtwYXJzZUZsb2F0KHJhd1ZhbHVlKSwgdW5pdF1cbiAgfVxuICBpZiAoZmFsbGJhY2spIHtcbiAgICAvLyBGb3IgdW5rbm93biB1bml0cyBvciB1bnBhcnNhYmxlIGF0dHJpYnV0ZXMsIGJyb3dzZXJzIGZhbGwgYmFjayB0byB2YWx1ZSAwXG4gICAgcmV0dXJuIFswLCB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfTlVNQkVSXVxuICB9XG4gIHRocm93IG5ldyBFcnJvcignQW4gaW52YWxpZCBvciBpbGxlZ2FsIHN0cmluZyB3YXMgc3BlY2lmaWVkJylcbn1cblxuLyoqXG4gKiBAcGFyYW0ge251bWJlcn0gdW5pdCAgVW5pdCBjb25zdGFudFxuICovXG5mdW5jdGlvbiBnZXRVbml0RmFjdG9yKHVuaXQpIHtcbiAgY29uc3QgdW5pdEZhY3RvciA9IHVuaXRGYWN0b3JzLmdldCh1bml0KVxuICBpZiAodW5pdEZhY3RvciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKHVuaXRGYWN0b3IgKyAnIGlzIG5vdCBhIGtub3duIHVuaXQgY29uc3RhbnQnKVxuICB9XG4gIGlmIChpc05hTih1bml0RmFjdG9yKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5pdCAke3VuaXRTdHJpbmdCeUNvbnN0YW50LmdldCh1bml0KX0gaXMgbm90IHN1cHBvcnRlZGApXG4gIH1cbiAgcmV0dXJuIHVuaXRGYWN0b3Jcbn1cblxuLyoqXG4gKiBAcGFyYW0ge1NWR0xlbmd0aH0gc3ZnTGVuZ3RoXG4gKiBAcmV0dXJuIHtzdHJpbmd9XG4gKi9cbmZ1bmN0aW9uIHVuaXRTdHJpbmcoc3ZnTGVuZ3RoKSB7XG4gIHJldHVybiB1bml0U3RyaW5nQnlDb25zdGFudC5nZXQoc3ZnTGVuZ3RoLnVuaXRUeXBlKSB8fCAnJ1xufVxuXG5leHRlbmRTdGF0aWMoU1ZHTGVuZ3RoLCB1bml0VHlwZXMpXG4iLCAiLy8gQHRzLWNoZWNrXG5pbXBvcnQgeyBTVkdMZW5ndGggfSBmcm9tICcuL1NWR0xlbmd0aC5qcydcblxuZXhwb3J0IGNsYXNzIFNWR0FuaW1hdGVkTGVuZ3RoIHtcbiAgYmFzZVZhbFxuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnQsIGF0dHJpYnV0ZU5hbWUpIHtcbiAgICB0aGlzLmJhc2VWYWwgPSBuZXcgU1ZHTGVuZ3RoKGVsZW1lbnQsIGF0dHJpYnV0ZU5hbWUpXG4gIH1cblxuICBnZXQgYW5pbVZhbCgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2FuaW1WYWwgaXMgbm90IGltcGxlbWVudGVkJylcbiAgfVxufVxuIiwgImltcG9ydCB7IFNWR0FuaW1hdGVkTGVuZ3RoIH0gZnJvbSAnLi9TVkdBbmltYXRlZExlbmd0aC5qcydcbmltcG9ydCB7IFNWR0dyYXBoaWNzRWxlbWVudCB9IGZyb20gJy4vU1ZHR3JhcGhpY3NFbGVtZW50LmpzJ1xuXG5leHBvcnQgY2xhc3MgU1ZHVGV4dENvbnRlbnRFbGVtZW50IGV4dGVuZHMgU1ZHR3JhcGhpY3NFbGVtZW50IHtcbiAgdGV4dFdpZHRoID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICd0ZXh0V2lkdGgnKVxuXG4gIGdldENvbXB1dGVkVGV4dExlbmd0aCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QkJveCgpLndpZHRoXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi9Ob2RlLmpzJ1xuaW1wb3J0IHsgbWl4aW4gfSBmcm9tICcuLi91dGlscy9vYmplY3RDcmVhdGlvblV0aWxzLmpzJ1xuaW1wb3J0IHsgQ2hpbGROb2RlIH0gZnJvbSAnLi9taXhpbnMvQ2hpbGROb2RlLmpzJ1xuXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRUeXBlIGV4dGVuZHMgTm9kZSB7XG4gIGNvbnN0cnVjdG9yIChuYW1lLCBwcm9wcykge1xuICAgIHN1cGVyKG5hbWUsIHByb3BzKVxuXG4gICAgdGhpcy5ub2RlVHlwZSA9IE5vZGUuRE9DVU1FTlRfVFlQRV9OT0RFXG4gICAgdGhpcy5uYW1lID0gbmFtZVxuXG4gICAgY29uc3QgeyBwdWJsaWNJZCwgc3lzdGVtSWQgfSA9IHByb3BzXG4gICAgdGhpcy5wdWJsaWNJZCA9IHB1YmxpY0lkIHx8ICcnXG4gICAgdGhpcy5zeXN0ZW1JZCA9IHN5c3RlbUlkIHx8ICcnXG4gIH1cbn1cblxubWl4aW4oQ2hpbGROb2RlLCBEb2N1bWVudFR5cGUpXG4iLCAiLy8gQHRzLWNoZWNrXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcbmltcG9ydCB7IFNWR0FuaW1hdGVkTGVuZ3RoIH0gZnJvbSAnLi9TVkdBbmltYXRlZExlbmd0aC5qcydcblxuZXhwb3J0IGNsYXNzIFNWR1JlY3RFbGVtZW50IGV4dGVuZHMgU1ZHR3JhcGhpY3NFbGVtZW50IHtcbiAgeCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneCcpXG4gIHkgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3knKVxuICB3aWR0aCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnd2lkdGgnKVxuICBoZWlnaHQgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ2hlaWdodCcpXG4gIHJ4ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdyeCcpXG4gIHJ5ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdyeScpXG59XG4iLCAiLy8gQHRzLWNoZWNrXG5pbXBvcnQgeyBTVkdBbmltYXRlZExlbmd0aCB9IGZyb20gJy4vU1ZHQW5pbWF0ZWRMZW5ndGguanMnXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcblxuZXhwb3J0IGNsYXNzIFNWR0NpcmNsZUVsZW1lbnQgZXh0ZW5kcyBTVkdHcmFwaGljc0VsZW1lbnQge1xuICBjeCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnY3gnKVxuICBjeSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnY3knKVxuICByID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdyJylcbn1cbiIsICIvLyBAdHMtY2hlY2tcbmltcG9ydCB7IFNWR0FuaW1hdGVkTGVuZ3RoIH0gZnJvbSAnLi9TVkdBbmltYXRlZExlbmd0aC5qcydcbmltcG9ydCB7IFNWR0dyYXBoaWNzRWxlbWVudCB9IGZyb20gJy4vU1ZHR3JhcGhpY3NFbGVtZW50LmpzJ1xuXG5leHBvcnQgY2xhc3MgU1ZHTGluZUVsZW1lbnQgZXh0ZW5kcyBTVkdHcmFwaGljc0VsZW1lbnQge1xuICB4MSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneDEnKVxuICB5MSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneTEnKVxuICB4MiA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneDInKVxuICB5MiA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneTInKVxufVxuIiwgIi8vIEB0cy1jaGVja1xuaW1wb3J0IHsgU1ZHQW5pbWF0ZWRMZW5ndGggfSBmcm9tICcuL1NWR0FuaW1hdGVkTGVuZ3RoLmpzJ1xuaW1wb3J0IHsgU1ZHR3JhcGhpY3NFbGVtZW50IH0gZnJvbSAnLi9TVkdHcmFwaGljc0VsZW1lbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBTVkdFbGxpcHNlRWxlbWVudCBleHRlbmRzIFNWR0dyYXBoaWNzRWxlbWVudCB7XG4gIGN4ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdjeCcpXG4gIGN5ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdjeScpXG4gIHJ4ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdyeCcpXG4gIHJ5ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdyeScpXG59XG4iLCAiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCB7IFNWR0FuaW1hdGVkTGVuZ3RoIH0gZnJvbSAnLi9TVkdBbmltYXRlZExlbmd0aC5qcydcbmltcG9ydCB7IFNWR0dyYXBoaWNzRWxlbWVudCB9IGZyb20gJy4vU1ZHR3JhcGhpY3NFbGVtZW50LmpzJ1xuXG5leHBvcnQgY2xhc3MgU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQgZXh0ZW5kcyBTVkdHcmFwaGljc0VsZW1lbnQge1xuICB4ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICd4JylcbiAgeSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneScpXG4gIHdpZHRoID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICd3aWR0aCcpXG4gIGhlaWdodCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnaGVpZ2h0Jylcbn1cbiIsICJpbXBvcnQgeyBTVkdBbmltYXRlZExlbmd0aCB9IGZyb20gJy4vU1ZHQW5pbWF0ZWRMZW5ndGguanMnXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcblxuZXhwb3J0IGNsYXNzIFNWR0ltYWdlRWxlbWVudCBleHRlbmRzIFNWR0dyYXBoaWNzRWxlbWVudCB7XG4gIHggPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3gnKVxuICB5ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICd5JylcbiAgd2lkdGggPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3dpZHRoJylcbiAgaGVpZ2h0ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdoZWlnaHQnKVxufVxuIiwgImltcG9ydCB7IE5vZGUgfSBmcm9tICcuL05vZGUuanMnXG5pbXBvcnQgeyBDb21tZW50IH0gZnJvbSAnLi9Db21tZW50LmpzJ1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gJy4vVGV4dC5qcydcbmltcG9ydCB7IEF0dHIgfSBmcm9tICcuL0F0dHIuanMnXG5pbXBvcnQgeyBEb2N1bWVudEZyYWdtZW50IH0gZnJvbSAnLi9Eb2N1bWVudEZyYWdtZW50LmpzJ1xuaW1wb3J0IHsgSFRNTExpbmtFbGVtZW50IH0gZnJvbSAnLi9odG1sL0hUTUxMaW5rRWxlbWVudC5qcydcbmltcG9ydCB7IEhUTUxTY3JpcHRFbGVtZW50IH0gZnJvbSAnLi9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmpzJ1xuaW1wb3J0IHsgSFRNTEltYWdlRWxlbWVudCB9IGZyb20gJy4vaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmpzJ1xuaW1wb3J0IHsgSFRNTEVsZW1lbnQgfSBmcm9tICcuL2h0bWwvSFRNTEVsZW1lbnQuanMnXG5pbXBvcnQgeyBlbGVtZW50QWNjZXNzIH0gZnJvbSAnLi9taXhpbnMvZWxlbWVudEFjY2Vzcy5qcydcbmltcG9ydCB7IG1peGluIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcbmltcG9ydCB7IFNWR1NWR0VsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdTVkdFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHUGF0aEVsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdQYXRoRWxlbWVudC5qcydcbmltcG9ydCB7IFNWR1RleHRDb250ZW50RWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR1RleHRDb250ZW50RWxlbWVudC5qcydcbmltcG9ydCB7IFNWR0dyYXBoaWNzRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcbmltcG9ydCB7IFBhcmVudE5vZGUgfSBmcm9tICcuL21peGlucy9QYXJlbnROb2RlLmpzJ1xuaW1wb3J0IHsgc3ZnLCBodG1sIH0gZnJvbSAnLi4vdXRpbHMvbmFtZXNwYWNlcy5qcydcbmltcG9ydCB7IERvY3VtZW50VHlwZSB9IGZyb20gJy4vRG9jdW1lbnRUeXBlLmpzJ1xuaW1wb3J0IHsgTm9uRWxlbWVudFBhcmVudE5vZGUgfSBmcm9tICcuL21peGlucy9Ob25FbGVtZW50UGFyZW50Tm9kZS5qcydcbmltcG9ydCB7IFNWR1JlY3RFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHUmVjdEVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdDaXJjbGVFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5qcydcbmltcG9ydCB7IFNWR0xpbmVFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHTGluZUVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdFbGxpcHNlRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR0VsbGlwc2VFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5qcydcbmltcG9ydCB7IFNWR0ltYWdlRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR0ltYWdlRWxlbWVudC5qcydcblxuZnVuY3Rpb24gZ2V0Q2hpbGRCeVRhZ05hbWUgKHBhcmVudCwgbmFtZSkge1xuICBmb3IgKGxldCBjaGlsZCA9IHBhcmVudC5maXJzdENoaWxkOyBjaGlsZCAhPSBudWxsOyBjaGlsZCA9IGNoaWxkLm5leHRTaWJsaW5nKSB7XG4gICAgaWYgKGNoaWxkLm5vZGVUeXBlID09PSBOb2RlLkVMRU1FTlRfTk9ERSAmJiBjaGlsZC5ub2RlTmFtZSA9PT0gbmFtZSkge1xuICAgICAgcmV0dXJuIGNoaWxkXG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmNvbnN0IGdldFNWR0VsZW1lbnRGb3JOYW1lID0gKG5hbWUpID0+IHtcbiAgc3dpdGNoIChuYW1lLnRvTG93ZXJDYXNlKCkpIHtcbiAgY2FzZSAnc3ZnJzpcbiAgICByZXR1cm4gU1ZHU1ZHRWxlbWVudFxuICBjYXNlICdwYXRoJzpcbiAgICByZXR1cm4gU1ZHUGF0aEVsZW1lbnRcbiAgY2FzZSAnY2lyY2xlJzpcbiAgICByZXR1cm4gU1ZHQ2lyY2xlRWxlbWVudFxuICBjYXNlICdlbGxpcHNlJzpcbiAgICByZXR1cm4gU1ZHRWxsaXBzZUVsZW1lbnRcbiAgY2FzZSAnbGluZSc6XG4gICAgcmV0dXJuIFNWR0xpbmVFbGVtZW50XG4gIGNhc2UgJ3JlY3QnOlxuICAgIHJldHVybiBTVkdSZWN0RWxlbWVudFxuICBjYXNlICdmb3JlaWduT2JqZWN0JzpcbiAgICByZXR1cm4gU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnRcbiAgY2FzZSAnaW1hZ2UnOlxuICAgIHJldHVybiBTVkdJbWFnZUVsZW1lbnRcbiAgY2FzZSAndGV4dCc6XG4gIGNhc2UgJ3RzcGFuJzpcbiAgY2FzZSAndHJlZic6XG4gIGNhc2UgJ2FsdGdseXBoJzpcbiAgY2FzZSAndGV4dHBhdGgnOlxuICAgIHJldHVybiBTVkdUZXh0Q29udGVudEVsZW1lbnRcbiAgZGVmYXVsdDpcbiAgICByZXR1cm4gU1ZHR3JhcGhpY3NFbGVtZW50XG4gIH1cbn1cblxuY29uc3QgZ2V0SFRNTEVsZW1lbnRGb3JOYW1lID0gKG5hbWUpID0+IHtcbiAgc3dpdGNoIChuYW1lLnRvTG93ZXJDYXNlKCkpIHtcbiAgY2FzZSAnaW1nJzpcbiAgICByZXR1cm4gSFRNTEltYWdlRWxlbWVudFxuICBjYXNlICdsaW5rJzpcbiAgICByZXR1cm4gSFRNTExpbmtFbGVtZW50XG4gIGNhc2UgJ3NjcmlwdCc6XG4gICAgcmV0dXJuIEhUTUxTY3JpcHRFbGVtZW50XG4gIGRlZmF1bHQ6XG4gICAgcmV0dXJuIEhUTUxFbGVtZW50XG4gIH1cbn1cblxuY29uc3QgZ2V0RWxlbWVudEZvck5hbWVzcGFjZSA9IChucywgbmFtZSkgPT4ge1xuICBzd2l0Y2ggKG5zKSB7XG4gIGNhc2Ugc3ZnOlxuICAgIHJldHVybiBnZXRTVkdFbGVtZW50Rm9yTmFtZShuYW1lKVxuICBjYXNlIGh0bWw6XG4gIGNhc2UgbnVsbDpcbiAgY2FzZSAnJzpcbiAgZGVmYXVsdDpcbiAgICByZXR1cm4gZ2V0SFRNTEVsZW1lbnRGb3JOYW1lKG5hbWUpXG4gIH1cbn1cblxuLy8gRmVhdHVyZS92ZXJzaW9uIHBhaXJzIHRoYXQgRE9NSW1wbGVtZW50YXRpb24uaGFzRmVhdHVyZSgpIHJldHVybnMgdHJ1ZSBmb3IuICBJdCByZXR1cm5zIGZhbHNlIGZvciBhbnl0aGluZyBlbHNlLlxuY29uc3Qgc3VwcG9ydGVkRmVhdHVyZXMgPSB7XG4gIHhtbDogeyAnJzogdHJ1ZSwgJzEuMCc6IHRydWUsICcyLjAnOiB0cnVlIH0sXG4gIGNvcmU6IHsgJyc6IHRydWUsICcyLjAnOiB0cnVlIH0sXG4gIGh0bWw6IHsgJyc6IHRydWUsICcxLjAnOiB0cnVlLCAnMi4wJzogdHJ1ZSB9LFxuICB4aHRtbDogeyAnJzogdHJ1ZSwgJzEuMCc6IHRydWUsICcyLjAnOiB0cnVlIH0gLy8gSFRNTFxufVxuXG5leHBvcnQgY29uc3QgRE9NSW1wbGVtZW50YXRpb24gPSB7XG4gIGhhc0ZlYXR1cmUgKGZlYXR1cmUsIHZlcnNpb24pIHtcbiAgICBjb25zdCBmID0gc3VwcG9ydGVkRmVhdHVyZXNbKGZlYXR1cmUgfHwgJycpLnRvTG93ZXJDYXNlKCldXG4gICAgcmV0dXJuIChmICYmIGZbdmVyc2lvbiB8fCAnJ10pIHx8IGZhbHNlXG4gIH0sXG5cbiAgY3JlYXRlRG9jdW1lbnRUeXBlIChxdWFsaWZpZWROYW1lLCBwdWJsaWNJZCwgc3lzdGVtSWQpIHtcbiAgICByZXR1cm4gbmV3IERvY3VtZW50VHlwZShxdWFsaWZpZWROYW1lLCB7IHB1YmxpY0lkLCBzeXN0ZW1JZCwgb3duZXJEb2N1bWVudDogdGhpcyB9KVxuICB9LFxuXG4gIGNyZWF0ZURvY3VtZW50IChuYW1lc3BhY2UsIHF1YWxpZmllZE5hbWUsIGRvY3R5cGUpIHtcbiAgICBjb25zdCBkb2MgPSBuZXcgRG9jdW1lbnQobmFtZXNwYWNlKVxuICAgIGlmIChkb2N0eXBlKSB7XG4gICAgICBpZiAoZG9jdHlwZS5vd25lckRvY3VtZW50KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigndGhlIG9iamVjdCBpcyBpbiB0aGUgd3JvbmcgRG9jdW1lbnQsIGEgY2FsbCB0byBpbXBvcnROb2RlIGlzIHJlcXVpcmVkJylcbiAgICAgIH1cbiAgICAgIGRvY3R5cGUub3duZXJEb2N1bWVudCA9IGRvY1xuICAgICAgZG9jLmFwcGVuZENoaWxkKGRvY3R5cGUpXG4gICAgfVxuICAgIGlmIChxdWFsaWZpZWROYW1lKSB7XG4gICAgICBkb2MuYXBwZW5kQ2hpbGQoZG9jLmNyZWF0ZUVsZW1lbnROUyhuYW1lc3BhY2UsIHF1YWxpZmllZE5hbWUpKVxuICAgIH1cbiAgICByZXR1cm4gZG9jXG4gIH0sXG5cbiAgY3JlYXRlSFRNTERvY3VtZW50ICh0aXRsZVRleHQgPSAnJykge1xuICAgIGNvbnN0IGQgPSBuZXcgRG9jdW1lbnQoaHRtbClcbiAgICBjb25zdCByb290ID0gZC5jcmVhdGVFbGVtZW50KCdodG1sJylcbiAgICBjb25zdCBoZWFkID0gZC5jcmVhdGVFbGVtZW50KCdoZWFkJylcbiAgICBjb25zdCB0aXRsZSA9IGQuY3JlYXRlRWxlbWVudCgndGl0bGUnKVxuICAgIHRpdGxlLmFwcGVuZENoaWxkKGQuY3JlYXRlVGV4dE5vZGUodGl0bGVUZXh0KSlcbiAgICBoZWFkLmFwcGVuZENoaWxkKHRpdGxlKVxuICAgIHJvb3QuYXBwZW5kQ2hpbGQoaGVhZClcbiAgICByb290LmFwcGVuZENoaWxkKGQuY3JlYXRlRWxlbWVudCgnYm9keScpKVxuXG4gICAgZC5hcHBlbmRDaGlsZChyb290KVxuICAgIHJldHVybiBkXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIERvY3VtZW50IGV4dGVuZHMgTm9kZSB7XG4gIGNvbnN0cnVjdG9yIChucykge1xuICAgIHN1cGVyKCcjZG9jdW1lbnQnLCB7fSwgbnMpXG4gICAgdGhpcy5ub2RlVHlwZSA9IE5vZGUuRE9DVU1FTlRfTk9ERVxuICAgIHRoaXMuaW1wbGVtZW50YXRpb24gPSBET01JbXBsZW1lbnRhdGlvblxuICAgIHRoaXMuZGVmYXVsdFZpZXcgPSBudWxsXG4gIH1cblxuICAvLyBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2RvbS1kb2N1bWVudC1jcmVhdGVhdHRyaWJ1dGVcbiAgY3JlYXRlQXR0cmlidXRlIChsb2NhbE5hbWUpIHtcbiAgICBpZiAodGhpcy5uYW1lc3BhY2VVUkkgPT09IGh0bWwpIHtcbiAgICAgIGxvY2FsTmFtZSA9IGxvY2FsTmFtZS50b0xvd2VyQ2FzZSgpXG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNyZWF0ZUF0dHJpYnV0ZU5TKG51bGwsIGxvY2FsTmFtZSwgdHJ1ZSlcbiAgfVxuXG4gIGNyZWF0ZUF0dHJpYnV0ZU5TIChucywgcXVhbGlmaWVkTmFtZSwgbG9jYWwgPSBmYWxzZSkge1xuICAgIHJldHVybiBuZXcgQXR0cihxdWFsaWZpZWROYW1lLCB7IG93bmVyRG9jdW1lbnQ6IHRoaXMsIGxvY2FsIH0sIG5zKVxuICB9XG5cbiAgY3JlYXRlQ29tbWVudCAodGV4dCkge1xuICAgIHJldHVybiBuZXcgQ29tbWVudCgnI2NvbW1lbnQnLCB7IG5vZGVWYWx1ZTogdGV4dCwgb3duZXJEb2N1bWVudDogdGhpcyB9KVxuICB9XG5cbiAgY3JlYXRlRG9jdW1lbnRGcmFnbWVudCAobmFtZSkge1xuICAgIHJldHVybiBuZXcgRG9jdW1lbnRGcmFnbWVudCgnI2RvY3VtZW50LWZyYWdtZW50JywgeyBvd25lckRvY3VtZW50OiB0aGlzIH0pXG4gIH1cblxuICBjcmVhdGVFbGVtZW50IChsb2NhbE5hbWUpIHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVFbGVtZW50TlModGhpcy5uYW1lc3BhY2VVUkksIGxvY2FsTmFtZSwgdHJ1ZSlcbiAgfVxuXG4gIGNyZWF0ZUVsZW1lbnROUyAobnMsIHF1YWxpZmllZE5hbWUsIGxvY2FsID0gZmFsc2UpIHtcbiAgICBjb25zdCBFbGVtZW50ID0gZ2V0RWxlbWVudEZvck5hbWVzcGFjZShucywgcXVhbGlmaWVkTmFtZSlcblxuICAgIHJldHVybiBuZXcgRWxlbWVudChxdWFsaWZpZWROYW1lLCB7XG4gICAgICBvd25lckRvY3VtZW50OiB0aGlzLFxuICAgICAgbG9jYWxcbiAgICB9LCBucylcbiAgfVxuXG4gIGNyZWF0ZVRleHROb2RlICh0ZXh0KSB7XG4gICAgcmV0dXJuIG5ldyBUZXh0KCcjdGV4dCcsIHsgbm9kZVZhbHVlOiB0ZXh0LCBvd25lckRvY3VtZW50OiB0aGlzIH0pXG4gIH1cblxuICBnZXQgY29tcGF0TW9kZSAoKSB7XG4gICAgcmV0dXJuICdDU1MxQ29tcGF0JyAvLyBhbHdheXMgYmUgaW4gc3RhbmRhcmRzLW1vZGVcbiAgfVxuXG4gIGdldCBib2R5ICgpIHtcbiAgICByZXR1cm4gZ2V0Q2hpbGRCeVRhZ05hbWUodGhpcy5kb2N1bWVudEVsZW1lbnQsICdCT0RZJylcbiAgfVxuXG4gIGdldCBoZWFkICgpIHtcbiAgICByZXR1cm4gZ2V0Q2hpbGRCeVRhZ05hbWUodGhpcy5kb2N1bWVudEVsZW1lbnQsICdIRUFEJylcbiAgfVxuXG4gIGdldCBkb2N1bWVudEVsZW1lbnQgKCkge1xuICAgIHJldHVybiB0aGlzLmxhc3RDaGlsZFxuICB9XG59XG5cbm1peGluKGVsZW1lbnRBY2Nlc3MsIERvY3VtZW50KVxubWl4aW4oUGFyZW50Tm9kZSwgRG9jdW1lbnQpXG5taXhpbihOb25FbGVtZW50UGFyZW50Tm9kZSwgRG9jdW1lbnQpXG4iLCAiaW1wb3J0IHsgZXh0ZW5kIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcbmltcG9ydCB7IEV2ZW50VGFyZ2V0IH0gZnJvbSAnLi9FdmVudFRhcmdldC5qcydcbmltcG9ydCB7IE5vZGUgfSBmcm9tICcuL05vZGUuanMnXG5pbXBvcnQgeyBEb2N1bWVudCB9IGZyb20gJy4vRG9jdW1lbnQuanMnXG5pbXBvcnQgeyBEb2N1bWVudEZyYWdtZW50IH0gZnJvbSAnLi9Eb2N1bWVudEZyYWdtZW50LmpzJ1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gJy4vVGV4dC5qcydcbmltcG9ydCB7IEN1c3RvbUV2ZW50IH0gZnJvbSAnLi9DdXN0b21FdmVudC5qcydcbmltcG9ydCB7IEV2ZW50IH0gZnJvbSAnLi9FdmVudC5qcydcbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tICcuL0VsZW1lbnQuanMnXG5pbXBvcnQgeyBBdHRyIH0gZnJvbSAnLi9BdHRyLmpzJ1xuaW1wb3J0IHsgSFRNTEltYWdlRWxlbWVudCB9IGZyb20gJy4vaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmpzJ1xuaW1wb3J0IHsgSFRNTExpbmtFbGVtZW50IH0gZnJvbSAnLi9odG1sL0hUTUxMaW5rRWxlbWVudC5qcydcbmltcG9ydCB7IEhUTUxTY3JpcHRFbGVtZW50IH0gZnJvbSAnLi9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmpzJ1xuaW1wb3J0IHsgSFRNTEVsZW1lbnQgfSBmcm9tICcuL2h0bWwvSFRNTEVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdQb2ludCB9IGZyb20gJy4vc3ZnL1NWR1BvaW50LmpzJ1xuaW1wb3J0IHsgU1ZHTWF0cml4IH0gZnJvbSAnLi9zdmcvU1ZHTWF0cml4LmpzJ1xuaW1wb3J0IHsgU1ZHRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR0VsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdTVkdFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHU1ZHRWxlbWVudC5qcydcbmltcG9ydCB7IFNWR1BhdGhFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHUGF0aEVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdHcmFwaGljc0VsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdUZXh0Q29udGVudEVsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuanMnXG5pbXBvcnQgeyBjYW1lbENhc2UgfSBmcm9tICcuLi91dGlscy9zdHJVdGlscy5qcydcbmltcG9ydCAqIGFzIGRlZmF1bHRzIGZyb20gJy4uL3V0aWxzL2RlZmF1bHRzLmpzJ1xuXG5leHBvcnQgY2xhc3MgV2luZG93IGV4dGVuZHMgRXZlbnRUYXJnZXQge1xuICBjb25zdHJ1Y3RvciAoKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMuZG9jdW1lbnQgPSBuZXcgRG9jdW1lbnQoKVxuICAgIHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXcgPSB0aGlzXG4gICAgdGhpcy5zZWxmID0gdGhpc1xuICAgIGNvbnN0IGRvYyA9IHRoaXMuZG9jdW1lbnRcbiAgICB0aGlzLkltYWdlID0gY2xhc3Mge1xuICAgICAgY29uc3RydWN0b3IgKHdpZHRoLCBoZWlnaHQpIHtcbiAgICAgICAgY29uc3QgaW1nID0gZG9jLmNyZWF0ZUVsZW1lbnQoJ2ltZycpXG4gICAgICAgIGlmICh3aWR0aCAhPSBudWxsKSBpbWcuc2V0QXR0cmlidXRlKCd3aWR0aCcsIHdpZHRoKVxuICAgICAgICBpZiAoaGVpZ2h0ICE9IG51bGwpIGltZy5zZXRBdHRyaWJ1dGUoJ2hlaWdodCcsIGhlaWdodClcbiAgICAgICAgcmV0dXJuIGltZ1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldENvbXB1dGVkU3R5bGUgKG5vZGUpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLy8gRklYTUU6IEN1cnJlbnRseSB0aGlzIGZ1bmN0aW9uIHRyZWF0cyBldmVyeSBnaXZlbiBhdHRyXG4gICAgICAvLyBhcyBpbmhlcml0YWJsZSBmcm9tIGl0cyBwYXJlbnRzIHdoaWNoIGlzIG9mYyBub3QgYWx3YXlzIHRydWVcbiAgICAgIC8vIGJ1dCBnb29kIGVub3VnaCBmb3Igc3ZnLmpzXG4gICAgICBnZXRQcm9wZXJ0eVZhbHVlIChhdHRyKSB7XG4gICAgICAgIGxldCB2YWx1ZVxuICAgICAgICBsZXQgY3VyID0gbm9kZVxuXG4gICAgICAgIGRvIHtcbiAgICAgICAgICB2YWx1ZSA9IGN1ci5zdHlsZVthdHRyXSB8fCBjdXIuZ2V0QXR0cmlidXRlKGF0dHIpXG4gICAgICAgIH0gd2hpbGUgKFxuICAgICAgICAgIHZhbHVlID09IG51bGxcbiAgICAgICAgICAmJiAoY3VyID0gY3VyLnBhcmVudE5vZGUpXG4gICAgICAgICAgJiYgY3VyLm5vZGVUeXBlID09PSAxXG4gICAgICAgIClcblxuICAgICAgICByZXR1cm4gdmFsdWUgfHwgZGVmYXVsdHNbY2FtZWxDYXNlKGF0dHIpXSB8fCBudWxsXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmxldCBsYXN0VGltZSA9IDBcbmNvbnN0IHJlcXVlc3RBbmltYXRpb25GcmFtZSA9IGNhbGxiYWNrID0+IHtcbiAgY29uc3Qgbm93ID0gbmV3IGdsb2JhbFRoaXMuRGF0ZSgpLmdldFRpbWUoKVxuICBjb25zdCB0aW1lVG9DYWxsID0gTWF0aC5tYXgoMCwgMTYgLSAobm93IC0gbGFzdFRpbWUpKVxuICByZXR1cm4gZ2xvYmFsVGhpcy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICBsYXN0VGltZSA9IG5vdyArIHRpbWVUb0NhbGxcbiAgICBjYWxsYmFjayhsYXN0VGltZSlcbiAgfSwgdGltZVRvQ2FsbClcbn1cblxuY29uc3Qgbm93T2Zmc2V0ID0gZ2xvYmFsVGhpcy5EYXRlLm5vdygpXG5jb25zdCBwZXJmb3JtYW5jZSA9IHtcbiAgbm93OiAoKSA9PiBEYXRlLm5vdygpIC0gbm93T2Zmc2V0XG59XG5cbmNvbnN0IHdpblByb3BzID0ge1xuICBXaW5kb3csXG4gIERvY3VtZW50LFxuICBEb2N1bWVudEZyYWdtZW50LFxuICBOb2RlLFxuICBFdmVudFRhcmdldCxcbiAgVGV4dCxcbiAgQXR0cixcbiAgRWxlbWVudCxcbiAgQ3VzdG9tRXZlbnQsXG4gIEV2ZW50LFxuICBIVE1MRWxlbWVudCxcbiAgSFRNTExpbmtFbGVtZW50LFxuICBIVE1MU2NyaXB0RWxlbWVudCxcbiAgSFRNTEltYWdlRWxlbWVudCxcbiAgLy8gSW1hZ2U6IEhUTUxJbWFnZUVsZW1lbnQsIC8vIGlzIHNldCBvbiBjb25zdHJ1Y3Rpb25cbiAgU1ZHTWF0cml4LFxuICBTVkdQb2ludCxcbiAgU1ZHRWxlbWVudCxcbiAgU1ZHU1ZHRWxlbWVudCxcbiAgU1ZHUGF0aEVsZW1lbnQsXG4gIFNWR0dyYXBoaWNzRWxlbWVudCxcbiAgU1ZHVGV4dENvbnRlbnRFbGVtZW50LFxuICBzZXRUaW1lb3V0OiBnbG9iYWxUaGlzLnNldFRpbWVvdXQsXG4gIGNsZWFyVGltZW91dDogZ2xvYmFsVGhpcy5jbGVhclRpbWVvdXQsXG4gIHBhZ2VYT2Zmc2V0OiAwLFxuICBwYWdlWU9mZnNldDogMCxcbiAgRGF0ZTogZ2xvYmFsVGhpcy5EYXRlLFxuICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUsXG4gIGNhbmNlbEFuaW1hdGlvbkZyYW1lOiBnbG9iYWxUaGlzLmNsZWFyVGltZW91dCxcbiAgcGVyZm9ybWFuY2Vcbn1cblxuZXh0ZW5kKFdpbmRvdywgd2luUHJvcHMpXG4iLCAiaW1wb3J0IHsgV2luZG93IH0gZnJvbSAnLi9kb20vV2luZG93LmpzJ1xuaW1wb3J0IHsgRE9NSW1wbGVtZW50YXRpb24gfSBmcm9tICcuL2RvbS9Eb2N1bWVudC5qcydcbmltcG9ydCAqIGFzIG5hbWVzcGFjZXMgZnJvbSAnLi91dGlscy9uYW1lc3BhY2VzLmpzJ1xuXG5jb25zdCB7IGNyZWF0ZURvY3VtZW50LCBjcmVhdGVIVE1MRG9jdW1lbnQgfSA9IERPTUltcGxlbWVudGF0aW9uXG5cbmNvbnN0IGNyZWF0ZVdpbmRvdyA9ICguLi5hcmdzKSA9PiB7XG4gIGNvbnN0IHdpbmRvdyA9IG5ldyBXaW5kb3coKVxuICBjb25zdCBkb2N1bWVudCA9IGNyZWF0ZURvY3VtZW50KC4uLmFyZ3MpXG4gIHdpbmRvdy5kb2N1bWVudCA9IGRvY3VtZW50XG4gIGRvY3VtZW50LmRlZmF1bHRWaWV3ID0gd2luZG93XG4gIHJldHVybiB3aW5kb3dcbn1cblxuY29uc3QgY3JlYXRlSFRNTFdpbmRvdyA9ICh0aXRsZSkgPT4ge1xuICBjb25zdCB3aW5kb3cgPSBuZXcgV2luZG93KClcbiAgY29uc3QgZG9jdW1lbnQgPSBET01JbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQodGl0bGUpXG4gIHdpbmRvdy5kb2N1bWVudCA9IGRvY3VtZW50XG4gIGRvY3VtZW50LmRlZmF1bHRWaWV3ID0gd2luZG93XG4gIHJldHVybiB3aW5kb3dcbn1cblxuY29uc3QgY3JlYXRlU1ZHV2luZG93ID0gKCkgPT4ge1xuICByZXR1cm4gY3JlYXRlV2luZG93KG5hbWVzcGFjZXMuc3ZnLCAnc3ZnJylcbn1cblxuY29uc3QgY3JlYXRlU1ZHRG9jdW1lbnQgPSAoKSA9PiB7XG4gIHJldHVybiBjcmVhdGVEb2N1bWVudChuYW1lc3BhY2VzLnN2ZywgJ3N2ZycpXG59XG5cbmV4cG9ydCB7XG4gIGNyZWF0ZURvY3VtZW50LFxuICBjcmVhdGVIVE1MRG9jdW1lbnQsXG4gIGNyZWF0ZVNWR0RvY3VtZW50LFxuICBjcmVhdGVXaW5kb3csXG4gIGNyZWF0ZUhUTUxXaW5kb3csXG4gIGNyZWF0ZVNWR1dpbmRvd1xufVxuIiwgImltcG9ydCB0eXBlIHsgRmVhdGhlckljb25OYW1lcyB9IGZyb20gJ2ZlYXRoZXItaWNvbnMnO1xuXG5pbXBvcnQgdHlwZSB7IEJyYW5kQ29sb3JzIH0gZnJvbSAnLi4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB7IEdJVEhVQl9BQ1RJT05TX09NSVRURURfSUNPTlMsIGlzVmFsaWRJY29uLCBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgU1ZHRWRpdG9yIGZyb20gJy4uL3N2Zy1lZGl0b3IubWpzJztcbi8qKlxuICogV2lpdGggdGhhbmtzIHRvXG4gKiBodHRwczovL2dpdGh1Yi5jb20vaGF5YTE0YnVzYS9naXRodWItYWN0aW9uLWJyYW5kaW5ncy9ibG9iL21hc3Rlci9tYWluLmpzXG4gKiBmb3IgdGhlIHVybHMgdG8gdGhlIGJyYW5kaW5nIGltYWdlcy5cbiAqL1xuXG50eXBlIE1heWJlPFQ+ID0gVCB8IHVuZGVmaW5lZDtcblxuZXhwb3J0IGludGVyZmFjZSBJQnJhbmRpbmcge1xuICBhbHQ6IHN0cmluZztcbiAgaW1nOiBzdHJpbmc7XG4gIHVybD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZXMgYSBzdmcgYnJhbmRpbmcgaW1hZ2UuXG4gKiBleGFtcGxlOlxuICogYGBgdHNcbiAqIGdlbmVyYXRlU3ZnSW1hZ2UoJy9wYXRoL3RvL2ZpbGUuc3ZnJywgJ2hvbWUnLCAncmVkJylcbiAqIGBgYFxuICpcbiAqIEBwYXJhbSBzdmdQYXRoIC0gVGhlIHBhdGggdG8gd2hlcmUgdGhlIHN2ZyBmaWxlIHdpbGwgYmUgc2F2ZWRcbiAqIEBwYXJhbSBpY29uIC0gVGhlIGljb24gbmFtZSBmcm9tIHRoZSBmZWF0aGVyLWljb25zIGxpc3RcbiAqIEBwYXJhbSBiZ2NvbG9yIC0gVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNpcmNsZSBiZWhpbmQgdGhlIGljb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlU3ZnSW1hZ2UoXG4gIHN2Z1BhdGg6IHN0cmluZyxcbiAgaWNvbjogUGFydGlhbDxGZWF0aGVySWNvbk5hbWVzPixcbiAgYmdjb2xvcjogUGFydGlhbDxCcmFuZENvbG9ycz4sXG4pOiB2b2lkIHtcbiAgY29uc3Qgc3ZnRWRpdG9yID0gbmV3IFNWR0VkaXRvcigpO1xuICBzdmdFZGl0b3IuZ2VuZXJhdGVTdmdJbWFnZShzdmdQYXRoLCBpY29uLCBiZ2NvbG9yKTtcbn1cblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgYSB2YWxpZCBpY29uIG5hbWUgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGJyYW5kaW5nLlxuICogSWYgdGhlIGJyYW5kaW5nIGlzIHVuZGVmaW5lZCBvciBub3QgYSB2YWxpZCBpY29uIG5hbWUsIGFuIGVycm9yIGlzIHRocm93bi5cbiAqIEl0IGNoZWNrcyBpZiB0aGUgYnJhbmRpbmcgaWNvbiBpcyBwcmVzZW50IGluIHRoZSBHSVRIVUJfQUNUSU9OU19CUkFORElOR19JQ09OUyBzZXQsXG4gKiBhbmQgaWYgc28sIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmcgZmVhdGhlciBpY29uIGtleSBhcnJheS5cbiAqIElmIHRoZSBicmFuZGluZyBpY29uIGlzIHByZXNlbnQgaW4gdGhlIEdJVEhVQl9BQ1RJT05TX09NSVRURURfSUNPTlMgc2V0LFxuICogYW4gZXJyb3IgaXMgdGhyb3duIHNwZWNpZnlpbmcgdGhhdCB0aGUgaWNvbiBpcyBwYXJ0IG9mIHRoZSBvbWl0dGVkIGljb25zIGxpc3QuXG4gKiBJZiB0aGUgYnJhbmRpbmcgaWNvbiBpcyBub3QgYSB2YWxpZCBpY29uIGZyb20gdGhlIGZlYXRoZXItaWNvbnMgbGlzdCwgYW4gZXJyb3IgaXMgdGhyb3duLlxuICogQHBhcmFtIGJyYW5kIC0gVGhlIGJyYW5kaW5nIG9iamVjdFxuICogQHJldHVybnMgVGhlIGNvcnJlc3BvbmRpbmcgZmVhdGhlciBpY29uIGtleSBhcnJheVxuICogQHRocm93cyBFcnJvciBpZiB0aGUgYnJhbmRpbmcgaWNvbiBpcyB1bmRlZmluZWQsIG5vdCBhIHZhbGlkIGljb24gbmFtZSwgb3IgcGFydCBvZiB0aGUgb21pdHRlZCBpY29ucyBsaXN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRWYWxpZEljb25OYW1lKGljb24/OiBQYXJ0aWFsPEZlYXRoZXJJY29uTmFtZXM+KTogRmVhdGhlckljb25OYW1lcyB7XG4gIGlmICghaWNvbikge1xuICAgIHRocm93IG5ldyBFcnJvcihgTm8gdmFsaWQgYnJhbmRpbmcgaWNvbiBuYW1lIGZvdW5kOiBhY3Rpb24ueW1sIGJyYW5kaW5nIGlzIHVuZGVmaW5lZGApO1xuICB9XG5cbiAgaWYgKGlzVmFsaWRJY29uKGljb24pKSB7XG4gICAgcmV0dXJuIGljb247XG4gIH1cblxuICBpZiAoR0lUSFVCX0FDVElPTlNfT01JVFRFRF9JQ09OUy5oYXMoaWNvbikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgTm8gdmFsaWQgYnJhbmRpbmcgaWNvbiBuYW1lIGZvdW5kOiAke2ljb259IGlzIHBhcnQgb2YgdGhlIGxpc3Qgb2Ygb21pdHRlZCBpY29ucy4gYCxcbiAgICApO1xuICB9XG5cbiAgdGhyb3cgbmV3IEVycm9yKFxuICAgIGBObyB2YWxpZCBicmFuZGluZyBpY29uIG5hbWUgZm91bmQ6ICR7aWNvbn0gaXMgbm90IGEgdmFsaWQgaWNvbiBmcm9tIHRoZSBmZWF0aGVyLWljb25zIGxpc3RgLFxuICApO1xufVxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gZ2VuZXJhdGVzIGFuIEhUTUwgaW1hZ2UgbWFya3VwIHdpdGggYnJhbmRpbmcgaW5mb3JtYXRpb24uXG4gKiBJdCB0YWtlcyBpbnB1dHMgYW5kIGFuIG9wdGlvbmFsIHdpZHRoIHBhcmFtZXRlci5cbiAqIElmIHRoZSBicmFuZGluZ19zdmdfcGF0aCBpcyBwcm92aWRlZCwgaXQgZ2VuZXJhdGVzIGFuIGFjdGlvbi55bWwgYnJhbmRpbmcgaW1hZ2UgZm9yIHRoZSBzcGVjaWZpZWQgaWNvbiBhbmQgY29sb3IuXG4gKiBPdGhlcndpc2UsIGl0IHJldHVybnMgYW4gZXJyb3IgbWVzc2FnZS5cbiAqXG4gKiBAcGFyYW0gaW5wdXRzIC0gVGhlIGlucHV0cyBpbnN0YW5jZSB3aXRoIGRhdGEgZm9yIHRoZSBmdW5jdGlvbi5cbiAqIEBwYXJhbSB3aWR0aCAtIFRoZSB3aWR0aCBvZiB0aGUgaW1hZ2UgKGRlZmF1bHQgaXMgJzE1JScpLlxuICogQHJldHVybnMgVGhlIEhUTUwgaW1hZ2UgbWFya3VwIHdpdGggYnJhbmRpbmcgaW5mb3JtYXRpb24gb3IgYW4gZXJyb3IgbWVzc2FnZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlSW1nTWFya3VwKGlucHV0czogSW5wdXRzLCB3aWR0aCA9ICcxNSUnKTogc3RyaW5nIHtcbiAgLy8gQ3JlYXRlIGEgbG9nIHRhc2sgZm9yIGRlYnVnZ2luZ1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzaygnZ2VuZXJhdGVJbWdNYXJrdXAnKTtcbiAgaWYgKCFpbnB1dHMuYWN0aW9uLmJyYW5kaW5nKSB7XG4gICAgbG9nLmluZm8oJ05vIGJyYW5kaW5nIHNlY3Rpb24nKTtcbiAgICByZXR1cm4gJyc7XG4gIH1cbiAgLy8gR2V0IHRoZSBicmFuZGluZyBpbmZvcm1hdGlvbiBmcm9tIHRoZSBpbnB1dHNcbiAgY29uc3QgeyBpY29uLCBjb2xvciB9ID0gaW5wdXRzLmFjdGlvbi5icmFuZGluZztcbiAgY29uc3QgaWNvbk5hbWUgPSBnZXRWYWxpZEljb25OYW1lKGljb24pO1xuICBjb25zdCBzdmdQYXRoID0gaW5wdXRzLmNvbmZpZy5nZXQoJ2JyYW5kaW5nX3N2Z19wYXRoJykgYXMgTWF5YmU8c3RyaW5nPjtcbiAgY29uc3QgcmVzdWx0ID0gYDxpbWcgc3JjPVwiJHtzdmdQYXRofVwiIHdpZHRoPVwiJHt3aWR0aH1cIiBhbGlnbj1cImNlbnRlclwiIGFsdD1cImJyYW5kaW5nPGljb246JHtpY29uTmFtZX0gY29sb3I6JHtjb2xvcn0+XCIgLz5gO1xuXG4gIGlmIChzdmdQYXRoKSB7XG4gICAgbG9nLmluZm8oYEdlbmVyYXRpbmcgYWN0aW9uLnltbCBicmFuZGluZyBpbWFnZSBmb3IgJHtpY29uTmFtZX1gKTtcbiAgICBjb25zdCBzdmcgPSBpbnB1dHMuY29uZmlnLmdldCgnaW1hZ2VfZ2VuZXJhdGVkJykgYXMgTWF5YmU8c3RyaW5nPjtcbiAgICBjb25zdCBoYXNoID0gYCR7aWNvbk5hbWV9JHtjb2xvcn1gO1xuICAgIGlmIChzdmcgJiYgaGFzaC5sb2NhbGVDb21wYXJlKHN2ZykgIT09IDApIHtcbiAgICAgIGdlbmVyYXRlU3ZnSW1hZ2Uoc3ZnUGF0aCwgaWNvbk5hbWUsIGNvbG9yKTtcbiAgICAgIGlucHV0cy5jb25maWcuc2V0KCdpbWFnZV9nZW5lcmF0ZWQnLCBoYXNoKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuICBsb2cuZXJyb3IoYE5vIGJyYW5kaW5nX3N2Z19wYXRoIHByb3ZpZGVkIG9yIGl0IGlzIGVtcHR5IHN0cmluZywgY2FuJ3QgY3JlYXRlIHRoZSBmaWxlIWApO1xuICByZXR1cm4gYDwhLS0gRVJST1I6IG5vIGJyYW5kaW5nIHBhdGggZm91bmQgPSAke3Jlc3VsdH0gLS0+YDtcbn1cblxuLyoqXG4gKiBUaGlzIGlzIGEgVHlwZVNjcmlwdCBmdW5jdGlvbiBuYW1lZCBcInVwZGF0ZUJyYW5kaW5nXCIgdGhhdCB0YWtlcyBpbiBhIHNlY3Rpb25Ub2tlbiBzdHJpbmcgYW5kIGFuIG9iamVjdCBvZiBpbnB1dHMuXG4gKiBJdCBleHBvcnRzIHRoZSBmdW5jdGlvbiBhcyB0aGUgZGVmYXVsdCBleHBvcnQuXG4gKiBUaGUgZnVuY3Rpb24gbG9ncyB0aGUgYnJhbmQgZGV0YWlscyBmcm9tIHRoZSBpbnB1dHMsIHN0YXJ0cyBhIGxvZyB0YXNrLCBnZW5lcmF0ZXMgaW1hZ2UgbWFya3VwLFxuICogdXBkYXRlcyBhIHNlY3Rpb24gaW4gdGhlIHJlYWRtZSBlZGl0b3IgdXNpbmcgdGhlIHNlY3Rpb25Ub2tlbiBhbmQgY29udGVudCwgYW5kIGxvZ3Mgc3VjY2VzcyBvciBmYWlsdXJlIG1lc3NhZ2VzLlxuICpcbiAqIEBwYXJhbSBzZWN0aW9uVG9rZW4gLSBUaGUgc2VjdGlvblRva2VuIHN0cmluZyB0aGF0IGlzIHVzZWQgdG8gaWRlbnRpZnkgdGhlIHNlY3Rpb24gaW4gdGhlIHJlYWRtZSBlZGl0b3IuXG4gKiBAcGFyYW0gaW5wdXRzIC0gVGhlIGlucHV0cyBvYmplY3QgdGhhdCBjb250YWlucyBkYXRhIGZvciB0aGUgZnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVwZGF0ZUJyYW5kaW5nKFxuICBzZWN0aW9uVG9rZW46IFJlYWRtZVNlY3Rpb24sXG4gIGlucHV0czogSW5wdXRzLFxuKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKHNlY3Rpb25Ub2tlbik7XG5cbiAgbG9nLmluZm8oYEJyYW5kIGRldGFpbHM6ICR7SlNPTi5zdHJpbmdpZnkoaW5wdXRzLmFjdGlvbi5icmFuZGluZyl9YCk7XG5cbiAgbG9nLnN0YXJ0KCk7XG4gIC8qKiBjcmVhdGUgPGltZyAgLz4gbWFya3VwIHdpdGggYW4gaW1hZ2Ugd2lkdGggb2YgMTUlICovXG4gIGNvbnN0IGltYWdlV2lkdGggPSAnMTUlJztcbiAgY29uc3QgY29udGVudCA9IGdlbmVyYXRlSW1nTWFya3VwKGlucHV0cywgaW1hZ2VXaWR0aCk7XG4gIGlucHV0cy5yZWFkbWVFZGl0b3IudXBkYXRlU2VjdGlvbihzZWN0aW9uVG9rZW4sIGNvbnRlbnQpO1xuICBpZiAoY29udGVudCAmJiBjb250ZW50ICE9PSAnJykge1xuICAgIGxvZy5zdWNjZXNzKCdicmFuZGluZyBzdmcgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQnKTtcbiAgfSBlbHNlIHtcbiAgICBsb2cuZmFpbCgnYnJhbmRpbmcgc3ZnIGZhaWxlZCB0byBiZSBjcmVhdGVkJyk7XG4gIH1cblxuICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgcmV0W3NlY3Rpb25Ub2tlbl0gPSBjb250ZW50O1xuICByZXR1cm4gcmV0O1xufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgZXhwb3J0cyBhIGZ1bmN0aW9uIG5hbWVkICd1cGRhdGVEZXNjcmlwdGlvbicgd2hpY2ggdGFrZXMgYSBzZWN0aW9uVG9rZW4gKFJlYWRtZVNlY3Rpb24pIGFuZCBhbiBpbnN0YW5jZSBvZiB0aGUgJ0lucHV0cycgY2xhc3MgYXMgaXRzIHBhcmFtZXRlcnMuXG4gKiBUaGUgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIHVwZGF0aW5nIHRoZSBkZXNjcmlwdGlvbiBzZWN0aW9uIGluIHRoZSBSRUFETUUubWQgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW5wdXRzLlxuICogSXQgdXRpbGl6ZXMgdGhlICdMb2dUYXNrJyBjbGFzcyBmb3IgbG9nZ2luZyBwdXJwb3Nlcy5cbiAqIEBwYXJhbSB7UmVhZG1lU2VjdGlvbn0gc2VjdGlvblRva2VuIC0gVGhlIHNlY3Rpb25Ub2tlbiByZXByZXNlbnRpbmcgdGhlIHNlY3Rpb24gb2YgdGhlIFJFQURNRSB0byB1cGRhdGUuXG4gKiBAcGFyYW0ge0lucHV0c30gaW5wdXRzIC0gVGhlIElucHV0cyBjbGFzcyBpbnN0YW5jZS5cbiAqL1xuaW1wb3J0IHsgUmVhZG1lU2VjdGlvbiB9IGZyb20gJy4uL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgdHlwZSBJbnB1dHMgZnJvbSAnLi4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4uL2xvZ3Rhc2svaW5kZXguanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1cGRhdGVEZXNjcmlwdGlvbihcbiAgc2VjdGlvblRva2VuOiBSZWFkbWVTZWN0aW9uLFxuICBpbnB1dHM6IElucHV0cyxcbik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzayhzZWN0aW9uVG9rZW4pO1xuXG4gIC8vIEJ1aWxkIHRoZSBuZXcgUkVBRE1FXG4gIGNvbnN0IGNvbnRlbnQ6IHN0cmluZ1tdID0gW107XG5cbiAgLy8gQnVpbGQgdGhlIG5ldyBkZXNjcmlwdGlvbiBzZWN0aW9uXG4gIGlmIChpbnB1dHM/LmFjdGlvbj8uZGVzY3JpcHRpb24pIHtcbiAgICBsb2cuc3RhcnQoKTtcbiAgICBjb25zdCBkZXNjOiBzdHJpbmcgPSBpbnB1dHMuYWN0aW9uLmRlc2NyaXB0aW9uXG4gICAgICAudHJpbSgpXG4gICAgICAucmVwbGFjZUFsbCgnXFxyXFxuJywgJ1xcbicpIC8vIENvbnZlcnQgQ1IgdG8gTEZcbiAgICAgIC5yZXBsYWNlQWxsKC8gKy9nLCAnICcpIC8vIFNxdWFzaCBjb25zZWN1dGl2ZSBzcGFjZXNcbiAgICAgIC5yZXBsYWNlQWxsKCcgXFxuJywgJ1xcbicpIC8vIFNxdWFzaCBzcGFjZSBmb2xsb3dlZCBieSBuZXdsaW5lXG4gICAgICAucmVwbGFjZUFsbCgnXFxuXFxuJywgJzxiciAvPicpOyAvLyBDb252ZXJ0IGRvdWJsZSByZXR1cm4gdG8gYSBicmVha1xuXG4gICAgbG9nLmluZm8oYFdyaXRpbmcgJHtkZXNjLmxlbmd0aH0gY2hhcmFjdGVycyB0byB0aGUgZGVzY3JpcHRpb24gc2VjdGlvbmApO1xuICAgIGNvbnRlbnQucHVzaChkZXNjKTtcbiAgICBpbnB1dHMucmVhZG1lRWRpdG9yLnVwZGF0ZVNlY3Rpb24oc2VjdGlvblRva2VuLCBjb250ZW50KTtcbiAgICBsb2cuc3VjY2VzcygpO1xuICB9XG4gIGNvbnN0IHJldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICByZXRbc2VjdGlvblRva2VuXSA9IGNvbnRlbnQuam9pbignXFxuJyk7XG4gIHJldHVybiByZXQ7XG59XG4iLCAiLyoqXG4gKiBUeXBlcyByZXByZXNlbnRpbmcgYSAyRCBhcnJheSBvZiBzdHJpbmdzIGZvciBhIE1hcmtkb3duIHRhYmxlLlxuICovXG5leHBvcnQgdHlwZSBNYXJrZG93bkFycmF5Um93VHlwZSA9IHN0cmluZ1tdW107XG5leHBvcnQgdHlwZSBNYXJrZG93bkFycmF5SXRlbVR5cGUgPSBzdHJpbmc7XG5cbi8qKlxuICogRmlsbHMgYSBzdHJpbmcgdG8gYSBkZXNpcmVkIHdpZHRoIGJ5IHBhZGRpbmcgd2l0aCBzcGFjZXMuXG4gKlxuICogQHBhcmFtIHRleHQgLSBUaGUgdGV4dCB0byBwYWQuXG4gKiBAcGFyYW0gd2lkdGggLSBUaGUgZGVzaXJlZCB0b3RhbCB3aWR0aC5cbiAqIEBwYXJhbSBwYWRkaW5nU3RhcnQgLSBOdW1iZXIgb2Ygc3BhY2VzIHRvIHBhZCBhdCB0aGUgc3RhcnQuXG4gKiBAcmV0dXJucyBUaGUgcGFkZGVkIHN0cmluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhZFN0cmluZyh0ZXh0OiBzdHJpbmcsIHdpZHRoOiBudW1iZXIsIHBhZGRpbmdTdGFydDogbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuICcgJy5yZXBlYXQocGFkZGluZ1N0YXJ0KSArIHRleHQucGFkRW5kKHdpZHRoKTtcbn1cblxuLyoqXG4gKiBFc2NhcGVzIHNwZWNpYWwgTWFya2Rvd24gY2hhcmFjdGVycyBpbiBhIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gdGV4dCAtIFRoZSB0ZXh0IHRvIGVzY2FwZS5cbiAqIEByZXR1cm5zIFRoZSBlc2NhcGVkIHRleHQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXJrZG93bkVzY2FwZVRhYmxlQ2VsbCh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gdGV4dC5yZXBsYWNlQWxsKCdcXG4nLCAnPGJyIC8+JykucmVwbGFjZUFsbCgnfCcsICdcXFxcfCcpO1xufVxuXG4vKipcbiAqIEVzY2FwZXMgaW5saW5lIGNvZGUgYmxvY2tzIGluIGEgTWFya2Rvd24gc3RyaW5nLlxuICpcbiAqIEBwYXJhbSBjb250ZW50IC0gTWFya2Rvd24gc3RyaW5nLlxuICogQHJldHVybnMgU3RyaW5nIHdpdGggZXNjYXBlZCBpbmxpbmUgY29kZSBibG9ja3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXJrZG93bkVzY2FwZUlubGluZUNvZGUoY29udGVudDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGNvbnRlbnQucmVwbGFjZUFsbCgvYChbXmBdKilgL2csICc8Y29kZT4kMTwvY29kZT4nKS5yZXBsYWNlQWxsKCc+PCEtLScsICc+XFxcXDwhLS0nKTtcbn1cbi8qKlxuICogQ2xvbmVzIGEgMkQgYXJyYXkuXG4gKlxuICogQHBhcmFtIGFyciAtIEFycmF5IHRvIGNsb25lLlxuICogQHJldHVybnMgQ2xvbmVkIGFycmF5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2xvbmVBcnJheShhcnI6IE1hcmtkb3duQXJyYXlSb3dUeXBlKTogTWFya2Rvd25BcnJheVJvd1R5cGUge1xuICByZXR1cm4gYXJyLm1hcCgoaW5uZXJBcnIpID0+IFsuLi5pbm5lckFycl0pO1xufVxuXG4vKipcbiAqIEdldHMgbWF4IGFuZCBtaW4gY29sdW1uIGNvdW50cyBmcm9tIDJEIGFycmF5LlxuICpcbiAqIEBwYXJhbSBkYXRhIC0gMkQgc3RyaW5nIGFycmF5LlxuICogQHJldHVybnMgT2JqZWN0IHdpdGggbWF4IGFuZCBtaW4gY29scy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENvbHVtbkNvdW50cyhkYXRhOiBNYXJrZG93bkFycmF5Um93VHlwZSk6IHtcbiAgbWF4Q29sczogbnVtYmVyO1xuICBtaW5Db2xzOiBudW1iZXI7XG59IHtcbiAgbGV0IG1heENvbHMgPSAwO1xuICBsZXQgbWluQ29scyA9IDA7XG5cbiAgZm9yIChjb25zdCBlIG9mIGRhdGEpIHtcbiAgICBjb25zdCBudW1Db2xzID0gZS5sZW5ndGg7XG4gICAgbWF4Q29scyA9IE1hdGgubWF4KG1heENvbHMsIG51bUNvbHMpO1xuICAgIG1pbkNvbHMgPSBtaW5Db2xzID09PSAwID8gbnVtQ29scyA6IE1hdGgubWluKG1pbkNvbHMsIG51bUNvbHMpO1xuICB9XG5cbiAgcmV0dXJuIHsgbWF4Q29scywgbWluQ29scyB9O1xufVxuXG4vKipcbiAqIFBhZHMgMkQgYXJyYXkgcm93cyB0byBlcXVhbCBsZW5ndGguXG4gKlxuICogQHBhcmFtIGRhdGEgLSAyRCBhcnJheSB0byBwYWQuXG4gKiBAcGFyYW0gbWF4Q29scyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHBhZCB0by5cbiAqIEByZXR1cm5zIFBhZGRlZCAyRCBhcnJheS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhZEFycmF5Um93cyhkYXRhOiBNYXJrZG93bkFycmF5Um93VHlwZSwgbWF4Q29sczogbnVtYmVyKTogTWFya2Rvd25BcnJheVJvd1R5cGUge1xuICByZXR1cm4gZGF0YS5tYXAoKHJvdykgPT4ge1xuICAgIGNvbnN0IHBhZGRpbmcgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiBtYXhDb2xzIC0gcm93Lmxlbmd0aCB9KS5maWxsKCcnKTtcbiAgICByZXR1cm4gWy4uLnJvdywgLi4ucGFkZGluZ107XG4gIH0pIGFzIE1hcmtkb3duQXJyYXlSb3dUeXBlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgMkQgYXJyYXkgb2Ygc3RyaW5ncyB0byBhIE1hcmtkb3duIHRhYmxlLlxuICpcbiAqIEBwYXJhbSBkYXRhIC0gMkQgc3RyaW5nIGFycmF5LlxuICogQHJldHVybnMgTWFya2Rvd24gdGFibGUgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gQXJyYXlPZkFycmF5c1RvTWFya2Rvd25UYWJsZShwcm92aWRlZFRhYmxlQ29udGVudDogTWFya2Rvd25BcnJheVJvd1R5cGUpOiBzdHJpbmcge1xuICBjb25zdCBjbG9uZWREYXRhID0gY2xvbmVBcnJheShwcm92aWRlZFRhYmxlQ29udGVudCk7XG4gIGNvbnN0IHsgbWF4Q29scyB9ID0gZ2V0Q29sdW1uQ291bnRzKGNsb25lZERhdGEpO1xuICBjb25zdCBwYWRkZWREYXRhID0gcGFkQXJyYXlSb3dzKGNsb25lZERhdGEsIG1heENvbHMpO1xuICBjb25zdCBtYXhSb3dzID0gcGFkZGVkRGF0YS5sZW5ndGg7XG5cbiAgY29uc3QgbWFya2Rvd25BcnJheVJvd3NMZW5ndGggPSBtYXhSb3dzICsgMTtcbiAgY29uc3QgbWFya2Rvd25BcnJheUVudHJpZXNMZW5ndGggPSBtYXhDb2xzICogMiArIDE7XG4gIGNvbnN0IG1hcmtkb3duQXJyYXlzOiBNYXJrZG93bkFycmF5Um93VHlwZSA9IEFycmF5LmZyb20oeyBsZW5ndGg6IG1hcmtkb3duQXJyYXlSb3dzTGVuZ3RoIH0sICgpID0+XG4gICAgQXJyYXkuZnJvbSh7IGxlbmd0aDogbWFya2Rvd25BcnJheUVudHJpZXNMZW5ndGggfSwgKCkgPT4gJ3wnKSxcbiAgKTtcblxuICBjb25zdCBvdXRwdXRTdHJpbmdzOiBzdHJpbmdbXSA9IFtdO1xuICBsZXQgaSA9IDA7XG4gIGZvciAoY29uc3Qgcm93IG9mIG1hcmtkb3duQXJyYXlzKSB7XG4gICAgbGV0IGNvbCA9IDA7XG4gICAgY29uc3QgaWR4ID0gaSA+IDEgPyBpIC0gMSA6IDA7XG4gICAgY29uc3QgZGF0YVJvdyA9IHBhZGRlZERhdGFbaWR4XTtcbiAgICBmb3IgKGxldCBqID0gMDsgaiA8IHJvdy5sZW5ndGg7IGorKykge1xuICAgICAgbGV0IGNvbnRlbnQgPSBtYXJrZG93bkVzY2FwZVRhYmxlQ2VsbChkYXRhUm93W2NvbF0gPz8gJycpO1xuICAgICAgY29udGVudCA9IG1hcmtkb3duRXNjYXBlSW5saW5lQ29kZShjb250ZW50KTtcbiAgICAgIGlmIChqICUgMiA9PT0gMSkge1xuICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgIG1hcmtkb3duQXJyYXlzW2ldW2pdID0gYCAqKiR7Y29udGVudC50cmltKCl9KiogYDtcbiAgICAgICAgfSBlbHNlIGlmIChpID09PSAxKSB7XG4gICAgICAgICAgbWFya2Rvd25BcnJheXNbaV1bal0gPSAnLS0tJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBtYXJrZG93bkFycmF5c1tpXVtqXSA9IGAgJHtjb250ZW50LnRyaW0oKX0gYDtcbiAgICAgICAgfVxuICAgICAgICBjb2wgKz0gMTtcbiAgICAgIH1cbiAgICB9XG4gICAgb3V0cHV0U3RyaW5ncy5wdXNoKGAke21hcmtkb3duQXJyYXlzW2ldLmpvaW4oJycpfVxcbmApO1xuICAgIGkgKz0gMTtcbiAgfVxuICByZXR1cm4gb3V0cHV0U3RyaW5ncy5qb2luKCcnKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgQXJyYXlPZkFycmF5c1RvTWFya2Rvd25UYWJsZTtcbiIsICIvKipcbiAqIFRoaXMgVHlwZVNjcmlwdCBjb2RlIGV4cG9ydHMgYSBmdW5jdGlvbiBuYW1lZCAndXBkYXRlSW5wdXRzJyB3aGljaCB0YWtlcyBhIHNlY3Rpb25Ub2tlbiAoUmVhZG1lU2VjdGlvbikgYW5kIGFuIGluc3RhbmNlIG9mIHRoZSAnSW5wdXRzJyBjbGFzcyBhcyBpdHMgcGFyYW1ldGVycy5cbiAqIFRoZSBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdXBkYXRpbmcgdGhlIGlucHV0cyBzZWN0aW9uIGluIHRoZSBSRUFETUUubWQgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW5wdXRzLlxuICogSXQgdXRpbGl6ZXMgdGhlICdMb2dUYXNrJyBjbGFzcyBmb3IgbG9nZ2luZyBwdXJwb3NlcywgJ2NvbHVtbkhlYWRlcicgYW5kICdyb3dIZWFkZXInIGZ1bmN0aW9ucyBmcm9tICcuLi9oZWxwZXJzLmpzJyBmb3IgZm9ybWF0dGluZyB0YWJsZSBoZWFkZXJzLCBhbmQgJ21hcmtkb3duZXInIGZ1bmN0aW9uIGZyb20gJy4uL21hcmtkb3duZXIvaW5kZXguanMnIGZvciBnZW5lcmF0aW5nIG1hcmtkb3duIGNvbnRlbnQuXG4gKiBAcGFyYW0ge1JlYWRtZVNlY3Rpb259IHNlY3Rpb25Ub2tlbiAtIFRoZSBzZWN0aW9uVG9rZW4gcmVwcmVzZW50aW5nIHRoZSBzZWN0aW9uIG9mIHRoZSBSRUFETUUgdG8gdXBkYXRlLlxuICogQHBhcmFtIHtJbnB1dHN9IGlucHV0cyAtIFRoZSBJbnB1dHMgY2xhc3MgaW5zdGFuY2UuXG4gKi9cbmltcG9ydCB7IFJlYWRtZVNlY3Rpb24gfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgY29sdW1uSGVhZGVyLCByb3dIZWFkZXIgfSBmcm9tICcuLi9oZWxwZXJzLmpzJztcbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgbWFya2Rvd25lciBmcm9tICcuLi9tYXJrZG93bmVyL2luZGV4LmpzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXBkYXRlSW5wdXRzKFxuICBzZWN0aW9uVG9rZW46IFJlYWRtZVNlY3Rpb24sXG4gIGlucHV0czogSW5wdXRzLFxuKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKHNlY3Rpb25Ub2tlbik7XG5cbiAgLy8gQnVpbGQgdGhlIG5ldyBSRUFETUVcbiAgY29uc3QgY29udGVudDogc3RyaW5nW10gPSBbXTtcbiAgY29uc3QgbWFya2Rvd25BcnJheTogc3RyaW5nW11bXSA9IFtdO1xuICBjb25zdCB0aXRsZUFycmF5ID0gWydJbnB1dCcsICdEZXNjcmlwdGlvbicsICdEZWZhdWx0JywgJ1JlcXVpcmVkJ107XG4gIGNvbnN0IHRpdGxlczogc3RyaW5nW10gPSBbXTtcblxuICBmb3IgKGNvbnN0IHQgb2YgdGl0bGVBcnJheSkge1xuICAgIHRpdGxlcy5wdXNoKGNvbHVtbkhlYWRlcih0KSk7XG4gIH1cblxuICBtYXJrZG93bkFycmF5LnB1c2godGl0bGVzKTtcblxuICBjb25zdCB2YXJzID0gaW5wdXRzLmFjdGlvbi5pbnB1dHM7XG4gIGNvbnN0IHRJID0gdmFycyA/IE9iamVjdC5rZXlzKHZhcnMpLmxlbmd0aCA6IDA7XG5cbiAgaWYgKHZhcnMgJiYgdEkgPiAwKSB7XG4gICAgbG9nLnN0YXJ0KCk7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyh2YXJzKSkge1xuICAgICAgY29uc3QgdmFsdWVzID0gdmFyc1trZXldO1xuICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdmFsdWVzPy5kZXNjcmlwdGlvbiA/PyAnJztcblxuICAgICAgLy8gQ2hlY2sgaWYgb25seSB0aGUgZmlyc3QgbGluZSBzaG91bGQgYmUgYWRkZWQgKG9ubHkgc3ViamVjdCB3aXRob3V0IGJvZHkpXG4gICAgICBjb25zdCBtYXRjaGVzID0gLyguKj8pXFxuXFxuKFtTc10qKS8uZXhlYyhkZXNjcmlwdGlvbik7XG5cbiAgICAgIGlmIChtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID49IDIpIHtcbiAgICAgICAgZGVzY3JpcHRpb24gPSBtYXRjaGVzWzFdIHx8IGRlc2NyaXB0aW9uO1xuICAgICAgfVxuXG4gICAgICBkZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uLnRyaW0oKS5yZXBsYWNlKCdcXG4nLCAnPGJyIC8+Jyk7XG5cbiAgICAgIGNvbnN0IHJvdzogc3RyaW5nW10gPSBbXG4gICAgICAgIHJvd0hlYWRlcihrZXkpLFxuICAgICAgICBkZXNjcmlwdGlvbixcbiAgICAgICAgdmFsdWVzPy5kZWZhdWx0ID8gYDxjb2RlPiR7dmFsdWVzLmRlZmF1bHR9PC9jb2RlPmAgOiAnJyxcbiAgICAgICAgdmFsdWVzPy5yZXF1aXJlZCA/ICcqKnRydWUqKicgOiAnX19mYWxzZV9fJyxcbiAgICAgIF07XG4gICAgICBsb2cuZGVidWcoSlNPTi5zdHJpbmdpZnkocm93KSk7XG4gICAgICBtYXJrZG93bkFycmF5LnB1c2gocm93KTtcbiAgICB9XG4gICAgY29udGVudC5wdXNoKG1hcmtkb3duZXIobWFya2Rvd25BcnJheSkpO1xuICAgIGxvZy5pbmZvKGBBY3Rpb24gaGFzICR7dEl9IHRvdGFsICR7c2VjdGlvblRva2VufWApO1xuICAgIGlucHV0cy5yZWFkbWVFZGl0b3IudXBkYXRlU2VjdGlvbihzZWN0aW9uVG9rZW4sIGNvbnRlbnQpO1xuICAgIGxvZy5zdWNjZXNzKCk7XG4gIH0gZWxzZSB7XG4gICAgbG9nLmRlYnVnKGBBY3Rpb24gaGFzIG5vICR7c2VjdGlvblRva2VufWApO1xuICB9XG4gIGNvbnN0IHJldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICByZXRbc2VjdGlvblRva2VuXSA9IGNvbnRlbnQuam9pbignXFxuJyk7XG4gIHJldHVybiByZXQ7XG59XG4iLCAiLyoqXG4gKiBUaGlzIFR5cGVTY3JpcHQgY29kZSBleHBvcnRzIGEgZnVuY3Rpb24gbmFtZWQgJ3VwZGF0ZU91dHB1dHMnIHdoaWNoIHRha2VzIGEgc2VjdGlvblRva2VuIChzdHJpbmcpIGFuZCBhbiBpbnN0YW5jZSBvZiB0aGUgJ0lucHV0cycgY2xhc3MgYXMgaXRzIHBhcmFtZXRlcnMuXG4gKiBUaGUgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIHVwZGF0aW5nIHRoZSBvdXRwdXRzIHNlY3Rpb24gaW4gdGhlIFJFQURNRS5tZCBmaWxlIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBpbnB1dHMuXG4gKiBJdCBnZW5lcmF0ZXMgYSB0YWJsZSB3aXRoIHRocmVlIGNvbHVtbnM6IE91dHB1dCBuYW1lLCBEZXNjcmlwdGlvbiwgYW5kIFZhbHVlIChmb3IgY29tcG9zaXRlIGFjdGlvbnMpLlxuICogSXQgdXRpbGl6ZXMgdGhlICdMb2dUYXNrJyBjbGFzcyBmb3IgbG9nZ2luZyBwdXJwb3NlcywgJ2NvbHVtbkhlYWRlcicgYW5kICdyb3dIZWFkZXInIGZ1bmN0aW9ucyBmcm9tICcuLi9oZWxwZXJzLmpzJyBmb3IgZm9ybWF0dGluZyB0YWJsZSBoZWFkZXJzLCBhbmQgJ21hcmtkb3duZXInIGZ1bmN0aW9uIGZyb20gJy4uL21hcmtkb3duZXIvaW5kZXguanMnIGZvciBnZW5lcmF0aW5nIG1hcmtkb3duIGNvbnRlbnQuXG4gKiBAcGFyYW0ge1JlYWRtZVNlY3Rpb259IHNlY3Rpb25Ub2tlbiAtIFRoZSBzZWN0aW9uVG9rZW4gdXNlZCBmb3IgaWRlbnRpZnlpbmcgdGhlIHNlY3Rpb24uXG4gKiBAcGFyYW0ge0lucHV0c30gaW5wdXRzIC0gVGhlIElucHV0cyBjbGFzcyBpbnN0YW5jZS5cbiAqL1xuaW1wb3J0IHsgUmVhZG1lU2VjdGlvbiB9IGZyb20gJy4uL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgeyBjb2x1bW5IZWFkZXIsIHJvd0hlYWRlciB9IGZyb20gJy4uL2hlbHBlcnMuanMnO1xuaW1wb3J0IHR5cGUgSW5wdXRzIGZyb20gJy4uL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuLi9sb2d0YXNrL2luZGV4LmpzJztcbmltcG9ydCBtYXJrZG93bmVyIGZyb20gJy4uL21hcmtkb3duZXIvaW5kZXguanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1cGRhdGVPdXRwdXRzKFxuICBzZWN0aW9uVG9rZW46IFJlYWRtZVNlY3Rpb24sXG4gIGlucHV0czogSW5wdXRzLFxuKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKHNlY3Rpb25Ub2tlbik7XG5cbiAgLy8gQnVpbGQgdGhlIG5ldyBSRUFETUVcbiAgY29uc3QgY29udGVudDogc3RyaW5nW10gPSBbXTtcblxuICBjb25zdCBtYXJrZG93bkFycmF5OiBzdHJpbmdbXVtdID0gW107XG4gIGNvbnN0IHRpdGxlQXJyYXkgPSBbJ091dHB1dCcsICdEZXNjcmlwdGlvbicsICdWYWx1ZSddO1xuICBjb25zdCB0aXRsZXM6IHN0cmluZ1tdID0gW107XG4gIGZvciAoY29uc3QgdCBvZiB0aXRsZUFycmF5KSB7XG4gICAgdGl0bGVzLnB1c2goY29sdW1uSGVhZGVyKHQpKTtcbiAgfVxuICBtYXJrZG93bkFycmF5LnB1c2godGl0bGVzKTtcbiAgY29uc3QgdmFycyA9IGlucHV0cy5hY3Rpb24ub3V0cHV0cztcbiAgY29uc3QgdEkgPSB2YXJzID8gT2JqZWN0LmtleXModmFycykubGVuZ3RoIDogMDtcbiAgaWYgKHZhcnMgJiYgdEkgPiAwKSB7XG4gICAgbG9nLnN0YXJ0KCk7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXModmFycykpIHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IHZhcnNba2V5XTtcblxuICAgICAgbGV0IGRlc2NyaXB0aW9uID0gdmFsdWVzPy5kZXNjcmlwdGlvbiA/PyAnJztcblxuICAgICAgLy8gQ2hlY2sgaWYgb25seSBmaXJzdCBsaW5lIHNob3VsZCBiZSBhZGRlZCAob25seSBzdWJqZWN0IHdpdGhvdXQgYm9keSlcblxuICAgICAgY29uc3QgbWF0Y2hlcyA9IC8oLio/KVxcblxcbihbU3NdKikvLmV4ZWMoZGVzY3JpcHRpb24pO1xuICAgICAgaWYgKG1hdGNoZXMgJiYgbWF0Y2hlcy5sZW5ndGggPj0gMikge1xuICAgICAgICBkZXNjcmlwdGlvbiA9IG1hdGNoZXNbMV0gfHwgZGVzY3JpcHRpb247XG4gICAgICB9XG5cbiAgICAgIGRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24udHJpbSgpLnJlcGxhY2UoJ1xcbicsICc8YnIgLz4nKTtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzPy52YWx1ZSA/IGBcXGAke3ZhbHVlcy52YWx1ZX1cXGBgIDogJyc7XG4gICAgICBjb25zdCByb3c6IHN0cmluZ1tdID0gW3Jvd0hlYWRlcihrZXkpLCBkZXNjcmlwdGlvbiwgdmFsdWVdO1xuXG4gICAgICBsb2cuZGVidWcoSlNPTi5zdHJpbmdpZnkocm93KSk7XG4gICAgICBtYXJrZG93bkFycmF5LnB1c2gocm93KTtcbiAgICB9XG4gICAgY29udGVudC5wdXNoKG1hcmtkb3duZXIobWFya2Rvd25BcnJheSkpO1xuICAgIGxvZy5pbmZvKGBBY3Rpb24gaGFzICR7dEl9IHRvdGFsICR7c2VjdGlvblRva2VufWApO1xuICAgIGlucHV0cy5yZWFkbWVFZGl0b3IudXBkYXRlU2VjdGlvbihzZWN0aW9uVG9rZW4sIGNvbnRlbnQpO1xuICAgIGxvZy5zdWNjZXNzKCk7XG4gIH0gZWxzZSB7XG4gICAgbG9nLmRlYnVnKGBBY3Rpb24gaGFzIG5vICR7c2VjdGlvblRva2VufWApO1xuICB9XG4gIGNvbnN0IHJldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICByZXRbc2VjdGlvblRva2VuXSA9IGNvbnRlbnQuam9pbignXFxuJyk7XG4gIHJldHVybiByZXQ7XG59XG4iLCAiLyoqXG4gKiBUaGlzIFR5cGVTY3JpcHQgY29kZSBleHBvcnRzIGEgZnVuY3Rpb24gbmFtZWQgJ3VwZGF0ZVRpdGxlJyB3aGljaCB0YWtlcyBhIHNlY3Rpb25Ub2tlbiAoUmVhZG1lU2VjdGlvbikgYW5kIGFuIGluc3RhbmNlIG9mIHRoZSAnSW5wdXRzJyBjbGFzcyBhcyBpdHMgcGFyYW1ldGVycy5cbiAqIFRoZSBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdXBkYXRpbmcgdGhlIHRpdGxlIHNlY3Rpb24gaW4gdGhlIFJFQURNRS5tZCBmaWxlIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBpbnB1dHMuXG4gKiBJdCB1dGlsaXplcyB0aGUgJ0xvZ1Rhc2snIGNsYXNzIGZvciBsb2dnaW5nIHB1cnBvc2VzLCB0aGUgJ2dlbmVyYXRlSW1nTWFya3VwJyBmdW5jdGlvbiBmcm9tICcuL3VwZGF0ZS1icmFuZGluZy5qcycgZm9yIGdlbmVyYXRpbmcgaW1hZ2UgbWFya3VwLlxuICogQHBhcmFtIHtSZWFkbWVTZWN0aW9ufSBzZWN0aW9uVG9rZW4gLSBUaGUgc2VjdGlvblRva2VuIHJlcHJlc2VudGluZyB0aGUgc2VjdGlvbiBvZiB0aGUgUkVBRE1FIHRvIHVwZGF0ZS5cbiAqIEBwYXJhbSB7SW5wdXRzfSBpbnB1dHMgLSBUaGUgSW5wdXRzIGNsYXNzIGluc3RhbmNlLlxuICovXG5pbXBvcnQgeyBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgeyBnZW5lcmF0ZUltZ01hcmt1cCB9IGZyb20gJy4vdXBkYXRlLWJyYW5kaW5nLmpzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXBkYXRlVGl0bGUoXG4gIHNlY3Rpb25Ub2tlbjogUmVhZG1lU2VjdGlvbixcbiAgaW5wdXRzOiBJbnB1dHMsXG4pOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soc2VjdGlvblRva2VuKTtcblxuICAvLyBCdWlsZCB0aGUgbmV3IFJFQURNRVxuICBjb25zdCBjb250ZW50OiBzdHJpbmdbXSA9IFtdO1xuICBsZXQgbmFtZSA9ICcnO1xuICBsZXQgc3ZnSW5saW5lID0gJyc7XG5cbiAgaWYgKGlucHV0cy5hY3Rpb24ubmFtZSkge1xuICAgIGxvZy5zdGFydCgpO1xuICAgIG5hbWUgPSBpbnB1dHMuYWN0aW9uLm5hbWU7XG4gICAgaWYgKGlucHV0cy5jb25maWcuZ2V0KCdicmFuZGluZ19hc190aXRsZV9wcmVmaXgnKSBhcyBib29sZWFuKSB7XG4gICAgICBzdmdJbmxpbmUgPSBgJHtnZW5lcmF0ZUltZ01hcmt1cChpbnB1dHMsICc2MHB4Jyl9IGA7XG4gICAgfVxuICAgIGxvZy5pbmZvKGBXcml0aW5nICR7bmFtZS5sZW5ndGh9IGNoYXJhY3RlcnMgdG8gdGhlIHRpdGxlYCk7XG4gICAgY29uc3QgdGl0bGUgPSBgIyAke3N2Z0lubGluZX0ke2lucHV0cy5jb25maWcuZ2V0KCd0aXRsZV9wcmVmaXgnKSBhcyBzdHJpbmd9JHtcbiAgICAgIGlucHV0cy5hY3Rpb24ubmFtZVxuICAgIH1gO1xuICAgIGxvZy5pbmZvKGBUaXRsZTogJHt0aXRsZX1gKTtcbiAgICAvLyBCdWlsZCB0aGUgbmV3IHVzYWdlIHNlY3Rpb25cbiAgICBjb250ZW50LnB1c2godGl0bGUpO1xuICAgIGlucHV0cy5yZWFkbWVFZGl0b3IudXBkYXRlU2VjdGlvbihzZWN0aW9uVG9rZW4sIGNvbnRlbnQsIHRydWUpO1xuXG4gICAgbG9nLnN1Y2Nlc3MoKTtcbiAgfVxuICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgcmV0W3NlY3Rpb25Ub2tlbl0gPSBjb250ZW50LmpvaW4oJ1xcbicpO1xuICByZXR1cm4gcmV0O1xufVxuIiwgImltcG9ydCB7IFJlYWRtZVNlY3Rpb24gfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgZ2V0Q3VycmVudFZlcnNpb25TdHJpbmcgfSBmcm9tICcuLi9oZWxwZXJzLmpzJztcbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgeyB3cmFwRGVzY3JpcHRpb24gfSBmcm9tICcuLi9wcmV0dGllci5qcyc7XG5cbnR5cGUgRGVzY3JpcHRpb25UeXBlID0gUmVjb3JkPHN0cmluZywgc3RyaW5nW10+O1xuZXhwb3J0IGRlZmF1bHQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlVXNhZ2UoXG4gIHNlY3Rpb25Ub2tlbjogUmVhZG1lU2VjdGlvbixcbiAgaW5wdXRzOiBJbnB1dHMsXG4pOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcbiAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soc2VjdGlvblRva2VuKTtcbiAgbG9nLnN0YXJ0KCk7XG5cbiAgY29uc3QgYWN0aW9uTmFtZSA9IGAke2lucHV0cy5vd25lcn0vJHtpbnB1dHMucmVwb31gO1xuICBsb2cuaW5mbyhgQWN0aW9uIG5hbWU6ICR7YWN0aW9uTmFtZX1gKTtcbiAgY29uc3QgdmVyc2lvblN0cmluZzogc3RyaW5nID0gZ2V0Q3VycmVudFZlcnNpb25TdHJpbmcoaW5wdXRzKTtcblxuICBsb2cuaW5mbyhgVmVyc2lvbiBzdHJpbmc6ICR7dmVyc2lvblN0cmluZ31gKTtcblxuICBjb25zdCBhY3Rpb25SZWZlcmVuY2UgPSBgJHthY3Rpb25OYW1lfUAke3ZlcnNpb25TdHJpbmd9YDtcblxuICBjb25zdCBpbmRlbnQgPSAnICAgICMgJztcbiAgLy8gQnVpbGQgdGhlIG5ldyBSRUFETUVcbiAgY29uc3QgY29udGVudDogc3RyaW5nW10gPSBbXTtcbiAgLy8gQnVpbGQgdGhlIG5ldyB1c2FnZSBzZWN0aW9uXG4gIGNvbnRlbnQucHVzaCgnYGBgeWFtbCcsIGAtIHVzZXM6ICR7YWN0aW9uUmVmZXJlbmNlfWAsICcgIHdpdGg6Jyk7XG5cbiAgY29uc3QgaW5wID0gaW5wdXRzLmFjdGlvbi5pbnB1dHM7XG4gIGxldCBmaXJzdElucHV0ID0gdHJ1ZTtcbiAgY29uc3QgZGVzY3JpcHRpb25Qcm9taXNlczogUmVjb3JkPHN0cmluZywgUHJvbWlzZTxzdHJpbmdbXT4+ID0ge307XG4gIGlmIChpbnApIHtcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhpbnApKSB7XG4gICAgICBjb25zdCBpbnB1dCA9IGlucFtrZXldO1xuICAgICAgaWYgKGlucHV0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgZGVzY3JpcHRpb25Qcm9taXNlc1trZXldID0gd3JhcERlc2NyaXB0aW9uKGBEZXNjcmlwdGlvbjogJHtpbnB1dC5kZXNjcmlwdGlvbn1gLCBbXSwgaW5kZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBkZXNjcmlwdGlvbnM6IERlc2NyaXB0aW9uVHlwZSA9IHt9O1xuICAgIGNvbnN0IGt2QXJyYXkgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIE9iamVjdC5rZXlzKGRlc2NyaXB0aW9uUHJvbWlzZXMpLm1hcChhc3luYyAoa2V5KSA9PiB7XG4gICAgICAgIHJldHVybiB7IGtleSwgdmFsdWU6IGF3YWl0IGRlc2NyaXB0aW9uUHJvbWlzZXNba2V5XSB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgICBmb3IgKGNvbnN0IGUgb2Yga3ZBcnJheSkge1xuICAgICAgZGVzY3JpcHRpb25zW2Uua2V5XSA9IGUudmFsdWU7XG4gICAgICBsb2cuZGVidWcoYCR7ZS5rZXl9OiAke2Rlc2NyaXB0aW9uc1tlLmtleV0uam9pbignXFxuJyl9YCk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoaW5wKSkge1xuICAgICAgY29uc3QgaW5wdXQgPSBpbnBba2V5XTtcbiAgICAgIGlmIChpbnB1dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIExpbmUgYnJlYWsgYmV0d2VlbiBpbnB1dHNcbiAgICAgICAgaWYgKCFmaXJzdElucHV0KSB7XG4gICAgICAgICAgY29udGVudC5wdXNoKCcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbnN0cmFpbiB0aGUgd2lkdGggb2YgdGhlIGRlc2NyaXB0aW9uLCBhbmQgYXBwZW5kIGl0XG4gICAgICAgIGNvbnRlbnQucHVzaCguLi5kZXNjcmlwdGlvbnNba2V5XSk7XG5cbiAgICAgICAgaWYgKGlucHV0LmRlZmF1bHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIC8vIEFwcGVuZCBibGFuayBsaW5lIGlmIGRlc2NyaXB0aW9uIGhhZCBwYXJhZ3JhcGhzXG4gICAgICAgICAgLy8gaWYgKGlucHV0LmRlc2NyaXB0aW9uPy50cmltRW5kKCkubWF0Y2goL1xcbiAqXFxyP1xcbi8pKSB7XG4gICAgICAgICAgLy8gICBjb250ZW50LnB1c2goJyAgICAjJyk7XG4gICAgICAgICAgLy8gfVxuXG4gICAgICAgICAgLy8gRGVmYXVsdFxuICAgICAgICAgIGNvbnRlbnQucHVzaChgJHtpbmRlbnR9RGVmYXVsdDogJHtpbnB1dC5kZWZhdWx0fWApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5wdXQgbmFtZVxuICAgICAgICBjb250ZW50LnB1c2goYCAgICAke2tleX06ICcnYCk7XG5cbiAgICAgICAgZmlyc3RJbnB1dCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnRlbnQucHVzaCgnYGBgXFxuJyk7XG5cbiAgaW5wdXRzLnJlYWRtZUVkaXRvci51cGRhdGVTZWN0aW9uKHNlY3Rpb25Ub2tlbiwgY29udGVudCk7XG4gIGxvZy5zdWNjZXNzKCk7XG4gIGNvbnN0IHJldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICByZXRbc2VjdGlvblRva2VuXSA9IGNvbnRlbnQuam9pbignXFxuJyk7XG4gIHJldHVybiByZXQ7XG59XG4iLCAiLyoqXG4gKiBUaGlzIFR5cGVTY3JpcHQgY29kZSBleHBvcnRzIGEgZnVuY3Rpb24gbmFtZWQgJ3VwZGF0ZVNlY3Rpb24nIHdoaWNoIHRha2VzIGEgc2VjdGlvbiAoUmVhZG1lU2VjdGlvbikgYW5kIGFuIGluc3RhbmNlIG9mIHRoZSAnSW5wdXRzJyBjbGFzcyBhcyBpdHMgcGFyYW1ldGVycy5cbiAqIFRoZSBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdXBkYXRpbmcgZGlmZmVyZW50IHNlY3Rpb25zIG9mIHRoZSBSRUFETUUubWQgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgc2VjdGlvbiBpbnB1dC5cbiAqIEl0IHV0aWxpemVzIHZhcmlvdXMgdXBkYXRlIGZ1bmN0aW9ucyAoZS5nLiwgdXBkYXRlQnJhbmRpbmcsIHVwZGF0ZUJhZGdlcykgdG8gdXBkYXRlIHNwZWNpZmljIHNlY3Rpb25zLlxuICogQHBhcmFtIHtSZWFkbWVTZWN0aW9ufSBzZWN0aW9uIC0gVGhlIHNlY3Rpb24gb2YgdGhlIFJFQURNRSB0byB1cGRhdGUuXG4gKiBAcGFyYW0ge0lucHV0c30gaW5wdXRzIC0gVGhlIElucHV0cyBjbGFzcyBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyBvbmNlIHRoZSBzZWN0aW9uIGlzIHVwZGF0ZWQuXG4gKi9cbmltcG9ydCB7IFJlYWRtZVNlY3Rpb24gfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHR5cGUgSW5wdXRzIGZyb20gJy4uL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuLi9sb2d0YXNrL2luZGV4LmpzJztcbmltcG9ydCB1cGRhdGVCYWRnZXMgZnJvbSAnLi91cGRhdGUtYmFkZ2VzLmpzJztcbmltcG9ydCB1cGRhdGVCcmFuZGluZyBmcm9tICcuL3VwZGF0ZS1icmFuZGluZy5qcyc7XG5pbXBvcnQgdXBkYXRlRGVzY3JpcHRpb24gZnJvbSAnLi91cGRhdGUtZGVzY3JpcHRpb24uanMnO1xuaW1wb3J0IHVwZGF0ZUlucHV0cyBmcm9tICcuL3VwZGF0ZS1pbnB1dHMuanMnO1xuaW1wb3J0IHVwZGF0ZU91dHB1dHMgZnJvbSAnLi91cGRhdGUtb3V0cHV0cy5qcyc7XG5pbXBvcnQgdXBkYXRlVGl0bGUgZnJvbSAnLi91cGRhdGUtdGl0bGUuanMnO1xuaW1wb3J0IHVwZGF0ZVVzYWdlIGZyb20gJy4vdXBkYXRlLXVzYWdlLmpzJztcblxuY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soJ3VwZGF0ZVNlY3Rpb24nKTtcblxuZXhwb3J0IGRlZmF1bHQgYXN5bmMgZnVuY3Rpb24gdXBkYXRlU2VjdGlvbihcbiAgc2VjdGlvbjogUmVhZG1lU2VjdGlvbixcbiAgaW5wdXRzOiBJbnB1dHMsXG4pOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+IHtcbiAgY29uc3QgW3N0YXJ0VG9rZW4sIHN0b3BUb2tlbl0gPSBpbnB1dHMucmVhZG1lRWRpdG9yLmdldFRva2VuSW5kZXhlcyhzZWN0aW9uKTtcbiAgLy8gJiZcbiAgLy8gWydicmFuZGluZycsICd0aXRsZSddLmluY2x1ZGVzKHNlY3Rpb24pICYmXG4gIC8vIGlucHV0cy5jb25maWcuZ2V0KCdicmFuZGluZ19hc190aXRsZV9wcmVmaXgnKSAhPT0gdHJ1ZVxuICBpZiAoc3RhcnRUb2tlbiA9PT0gLTEgfHwgc3RvcFRva2VuID09PSAtMSkge1xuICAgIHJldHVybiB7fTtcbiAgfVxuICBzd2l0Y2ggKHNlY3Rpb24pIHtcbiAgICBjYXNlICdicmFuZGluZyc6IHtcbiAgICAgIHJldHVybiB1cGRhdGVCcmFuZGluZyhzZWN0aW9uLCBpbnB1dHMpO1xuICAgIH1cbiAgICBjYXNlICdiYWRnZXMnOiB7XG4gICAgICByZXR1cm4gdXBkYXRlQmFkZ2VzKHNlY3Rpb24sIGlucHV0cyk7XG4gICAgfVxuICAgIGNhc2UgJ3VzYWdlJzoge1xuICAgICAgcmV0dXJuIHVwZGF0ZVVzYWdlKHNlY3Rpb24sIGlucHV0cyk7XG4gICAgfVxuICAgIGNhc2UgJ3RpdGxlJzoge1xuICAgICAgcmV0dXJuIHVwZGF0ZVRpdGxlKHNlY3Rpb24sIGlucHV0cyk7XG4gICAgfVxuICAgIGNhc2UgJ2Rlc2NyaXB0aW9uJzoge1xuICAgICAgcmV0dXJuIHVwZGF0ZURlc2NyaXB0aW9uKHNlY3Rpb24sIGlucHV0cyk7XG4gICAgfVxuICAgIGNhc2UgJ2lucHV0cyc6IHtcbiAgICAgIHJldHVybiB1cGRhdGVJbnB1dHMoc2VjdGlvbiwgaW5wdXRzKTtcbiAgICB9XG4gICAgY2FzZSAnb3V0cHV0cyc6IHtcbiAgICAgIHJldHVybiB1cGRhdGVPdXRwdXRzKHNlY3Rpb24sIGlucHV0cyk7XG4gICAgfVxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGxvZy5kZWJ1ZyhgdW5rbm93biBzZWN0aW9uIGZvdW5kIDwhLS0gc3RhcnQgJHtzZWN0aW9ufSAtLT4uIE5vIHVwZGF0ZXMgd2VyZSBtYWRlLmApO1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgfVxufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgaW1wb3J0cyB0aGUgbmVjZXNzYXJ5IG1vZHVsZXMgYW5kIGRlZmluZXMgdHdvIGludGVyZmFjZXM6IGBWZXJzaW9uaW5nYCBhbmQgYFBhdGhzYC5cbiAqIEl0IGFsc28gZGVmaW5lcyBhIGNsYXNzIG5hbWVkIGBHSEFjdGlvbkRvY3NDb25maWdgIHRoYXQgcmVwcmVzZW50cyB0aGUgY29uZmlndXJhdGlvbiBmb3IgZ2VuZXJhdGluZyBHaXRIdWIgQWN0aW9ucyBkb2N1bWVudGF0aW9uLlxuICogVGhlIGNsYXNzIGhhcyBwcm9wZXJ0aWVzIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgY29uZmlndXJhdGlvbiBvcHRpb25zIGFuZCBhIG1ldGhvZCBgbG9hZElucHV0c2AgdG8gbG9hZCB0aGUgY29uZmlndXJhdGlvbiBmcm9tIHRoZSBwcm92aWRlZCBgSW5wdXRzYCBvYmplY3QuXG4gKiBUaGUgY2xhc3MgYWxzbyBoYXMgYSBtZXRob2QgYHNhdmVgIHRvIHNhdmUgdGhlIGNvbmZpZ3VyYXRpb24gdG8gYSBmaWxlLlxuICovXG5cbmltcG9ydCB7IHByb21pc2VzIGFzIGZzUHJvbWlzZXMgfSBmcm9tICdub2RlOmZzJztcbmltcG9ydCBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5cbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHZlcnNpb25pbmcgY29uZmlndXJhdGlvbiBmb3IgR2l0SHViIEFjdGlvbnMgZG9jdW1lbnRhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWZXJzaW9uaW5nIHtcbiAgZW5hYmxlZD86IGJvb2xlYW47XG4gIHByZWZpeD86IHN0cmluZztcbiAgb3ZlcnJpZGU/OiBzdHJpbmc7XG4gIGJyYW5jaD86IHN0cmluZztcbiAgYmFkZ2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgcGF0aHMgY29uZmlndXJhdGlvbiBmb3IgR2l0SHViIEFjdGlvbnMgZG9jdW1lbnRhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYXRocyB7XG4gIGFjdGlvbjogc3RyaW5nO1xuICByZWFkbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBjb25maWd1cmF0aW9uIGZvciBnZW5lcmF0aW5nIEdpdEh1YiBBY3Rpb25zIGRvY3VtZW50YXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBHSEFjdGlvbkRvY3NDb25maWcge1xuICBvd25lcj86IHN0cmluZztcblxuICByZXBvPzogc3RyaW5nO1xuXG4gIHRpdGxlX3ByZWZpeD86IHN0cmluZztcblxuICB0aXRsZT86IHN0cmluZztcblxuICBwYXRocz86IFBhdGhzO1xuXG4gIGJyYW5kaW5nX3N2Z19wYXRoPzogc3RyaW5nO1xuXG4gIHZlcnNpb25pbmc/OiBWZXJzaW9uaW5nO1xuXG4gIHByZXR0aWVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTG9hZHMgdGhlIGNvbmZpZ3VyYXRpb24gZnJvbSB0aGUgcHJvdmlkZWQgYElucHV0c2Agb2JqZWN0LlxuICAgKiBAcGFyYW0ge0lucHV0c30gaW5wdXRzIC0gVGhlIGBJbnB1dHNgIG9iamVjdCBjb250YWluaW5nIHRoZSBjb25maWd1cmF0aW9uIHZhbHVlcy5cbiAgICovXG4gIGxvYWRJbnB1dHMoaW5wdXRzOiBJbnB1dHMpOiB2b2lkIHtcbiAgICBjb25zdCBjb25maWcgPSBpbnB1dHMuY29uZmlnLmdldCgpO1xuICAgIHRoaXMub3duZXIgPSBjb25maWcub3duZXI7XG4gICAgdGhpcy5yZXBvID0gY29uZmlnLnJlcG87XG4gICAgdGhpcy50aXRsZV9wcmVmaXggPSBjb25maWcudGl0bGVfcHJlZml4O1xuICAgIHRoaXMudGl0bGUgPSBjb25maWcudGl0bGU7XG4gICAgdGhpcy5wYXRocyA9IGNvbmZpZy5wYXRocztcbiAgICB0aGlzLmJyYW5kaW5nX3N2Z19wYXRoID0gY29uZmlnLmJyYW5kaW5nX3N2Z19wYXRoO1xuICAgIHRoaXMudmVyc2lvbmluZyA9IGNvbmZpZy52ZXJzaW9uaW5nO1xuICAgIHRoaXMucHJldHRpZXIgPSBjb25maWcucHJldHRpZXI7XG4gIH1cblxuICAvKipcbiAgICogU2F2ZXMgdGhlIGNvbmZpZ3VyYXRpb24gdG8gYSBmaWxlLiBJZiB0aGUgZmlsZSBleGlzdHMsIGl0IHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjb25maWdQYXRoIC0gVGhlIHBhdGggdG8gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAgICovXG4gIGFzeW5jIHNhdmUoY29uZmlnUGF0aDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soJ2NvbmZpZzpzYXZlJyk7XG4gICAgY29uc3QgZGlyZWN0b3J5ID0gcGF0aC5kaXJuYW1lKGNvbmZpZ1BhdGgpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGZzUHJvbWlzZXMubWtkaXIoZGlyZWN0b3J5LCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgbG9nLmVycm9yKGBFcnJvciBjcmVhdGluZyBkaXJlY3Rvcnk6ICR7ZGlyZWN0b3J5fS5gKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBmc1Byb21pc2VzLndyaXRlRmlsZShjb25maWdQYXRoLCBKU09OLnN0cmluZ2lmeSh0aGlzLCBudWxsLCAyKSk7XG4gICAgICBsb2cuaW5mbyhgQ29uZmlnIGZpbGUgd3JpdHRlbiB0bzogJHtjb25maWdQYXRofWApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBsb2cuZXJyb3IoYEVycm9yIHdyaXRpbmcgY29uZmlnIGZpbGU6ICR7Y29uZmlnUGF0aH0uYCk7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH1cbn1cbiIsICIvKipcbiAqIFRoaXMgY29kZSBleHBvcnRzIGEgZnVuY3Rpb24gbmFtZWQgJ3NhdmUnIHdoaWNoIHRha2VzIGFuIGluc3RhbmNlIG9mIHRoZSAnSW5wdXRzJyBjbGFzcyBhcyBpdHMgcGFyYW1ldGVyLlxuICogVGhlIGZ1bmN0aW9uIHJlYWRzIHRoZSBjb25maWd1cmF0aW9uIGlucHV0cyBmcm9tIHRoZSAnaW5wdXRzJyBwYXJhbWV0ZXIgYW5kIHVzZXMgdGhlbSB0byBjcmVhdGUgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlICdHSEFjdGlvbkRvY3NDb25maWcnIGNsYXNzLlxuICogSWYgdGhlICdzYXZlJyBwcm9wZXJ0eSBpcyBzZXQgdG8gdHJ1ZSBpbiB0aGUgY29uZmlndXJhdGlvbiBpbnB1dHMsIHRoZSBmdW5jdGlvbiBzYXZlcyB0aGUgY29uZmlndXJhdGlvbiB0byB0aGUgZmlsZSBzcGVjaWZpZWQgaW4gdGhlICdjb25maWdQYXRoJyBwcm9wZXJ0eSBvZiB0aGUgJ2lucHV0cycgcGFyYW1ldGVyLlxuICogVGhpcyBzY3JpcHQgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHVzYWdlIHNlY3Rpb24gaW4gdGhlIFJFQURNRS5tZCBmaWxlIHRvIG1hdGNoIHRoZSBjb250ZW50cyBvZiB0aGUgYWN0aW9uLnltbCBmaWxlLlxuICovXG5cbmltcG9ydCB7IEdIQWN0aW9uRG9jc0NvbmZpZyB9IGZyb20gJy4vY29uZmlnLmpzJztcbmltcG9ydCBJbnB1dHMgZnJvbSAnLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi9sb2d0YXNrL2luZGV4LmpzJztcblxuLyoqXG4gKiBUaGlzIHNjcmlwdCByZWJ1aWxkcyB0aGUgdXNhZ2Ugc2VjdGlvbiBpbiB0aGUgUkVBRE1FLm1kIHRvIGJlIGNvbnNpc3RlbnQgd2l0aCB0aGUgYWN0aW9uLnltbFxuICogQHBhcmFtIHtJbnB1dHN9IGlucHV0cyAtIHRoZSBpbnB1dHMgY2xhc3NcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gc2F2ZShpbnB1dHM6IElucHV0cywgbG9nOiBMb2dUYXNrKTogdm9pZCB7XG4gIGNvbnN0IGRvY3NDb25maWcgPSBuZXcgR0hBY3Rpb25Eb2NzQ29uZmlnKCk7XG4gIGRvY3NDb25maWcubG9hZElucHV0cyhpbnB1dHMpO1xuICBpZiAoaW5wdXRzLmNvbmZpZy5nZXQoKS5zYXZlID09PSB0cnVlKSB7XG4gICAgdHJ5IHtcbiAgICAgIGRvY3NDb25maWcuc2F2ZShpbnB1dHMuY29uZmlnUGF0aCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGxvZy5lcnJvcihgJHtlcnJvcn1gKTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQgSW5wdXRzIGZyb20gJy4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgeyBSZWFkbWVHZW5lcmF0b3IgfSBmcm9tICcuL3JlYWRtZS1nZW5lcmF0b3IuanMnO1xuaW1wb3J0IHNhdmUgZnJvbSAnLi9zYXZlLmpzJztcbi8qKlxuICogQ3JlYXRlcyBhIFJlYWRtZUdlbmVyYXRvciBpbnN0YW5jZSBhbmQgZ2VuZXJhdGVzIGRvY3MuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZVJlYWRtZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soJ0dlbmVyYXRlIERvY3VtZW50YXRpb24nKTtcbiAgY29uc3QgaW5wdXRzID0gbmV3IElucHV0cygpO1xuICBjb25zdCBnZW5lcmF0b3IgPSBuZXcgUmVhZG1lR2VuZXJhdG9yKGlucHV0cywgbG9nKTtcbiAgYXdhaXQgZ2VuZXJhdG9yLmdlbmVyYXRlKCk7XG4gIHJldHVybiBzYXZlKGlucHV0cywgbG9nKTtcbn1cblxuYXdhaXQgZ2VuZXJhdGVSZWFkbWUo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QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFBQTtBQUFBOzs7QUNyT0E7QUFBQTtBQUFBO0FBR0EsUUFBTSw2QkFBNkIsQ0FBQztBQUdwQyxRQUFNLHVCQUF1QjtBQUFBLE1BQzNCO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtB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TyxVQUFVO0FBQUE7QUFBQTs7O0FDalRqQjtBQUFBO0FBQUE7QUFFQSxRQUFNLFVBQVU7QUFFaEIsUUFBTSxNQUFNO0FBQUEsTUFDVjtBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsSUFDL0M7QUFFQSxhQUFTLFVBQVc7QUFDbEIsV0FBSyxTQUFTO0FBQUEsSUFDaEI7QUFDQSxZQUFRLFVBQVUsUUFBUSxTQUFVLEtBQUs7QUFFdkMsWUFBTSxJQUFJLFFBQVEsU0FBUyxHQUFHO0FBQzlCLFVBQUksTUFBTTtBQUNWLFVBQUlFLEtBQUk7QUFBRyxVQUFJLElBQUk7QUFBRyxZQUFNLE1BQU0sSUFBSTtBQUN0QyxhQUFPQSxLQUFJLEtBQUssRUFBRUEsSUFBRztBQUNuQixZQUFJLEtBQUssV0FBVyxRQUFXO0FBQzdCLGNBQUksQ0FBQyxJQUFJLElBQUksV0FBV0EsRUFBQyxDQUFDLEdBQUc7QUFDM0IsbUJBQU8sTUFBTSxLQUFLO0FBQ2xCLGlCQUFLLFNBQVM7QUFDZCxjQUFFQTtBQUFBLFVBQ0osT0FBTztBQUNMLGlCQUFLLFVBQVUsSUFBSUEsRUFBQztBQUNwQixjQUFFO0FBQ0YsZ0JBQUksS0FBSyxPQUFPLFdBQVcsR0FBRztBQUM1QixxQkFBTyxPQUFPLGFBQWEsU0FBUyxLQUFLLFFBQVEsRUFBRSxDQUFDO0FBQ3BELG1CQUFLLFNBQVM7QUFBQSxZQUNoQjtBQUFBLFVBQ0Y7QUFBQSxRQUNGLFdBQVcsSUFBSUEsRUFBQyxNQUFNLEtBQUs7QUFDekIsY0FBSUEsS0FBSSxHQUFHO0FBQ1QsbUJBQU8sSUFBSSxVQUFVLEdBQUdBLEVBQUM7QUFDekIsZ0JBQUlBO0FBQUEsVUFDTjtBQUNBLGVBQUssU0FBUztBQUNkLFlBQUU7QUFBQSxRQUNKO0FBQUEsTUFDRjtBQUNBLFVBQUksSUFBSSxPQUFPLEtBQUssV0FBVyxRQUFXO0FBQUUsZUFBTyxJQUFJLFVBQVUsQ0FBQztBQUFBLE1BQUU7QUFDcEUsYUFBTztBQUFBLElBQ1Q7QUFDQSxZQUFRLFVBQVUsUUFBUSxXQUFZO0FBQ3BDLFdBQUssU0FBUztBQUFBLElBQ2hCO0FBRUEsV0FBTyxVQUFVO0FBQUE7QUFBQTs7O0FDckRqQjtBQUFBO0FBQUE7QUFFQSxRQUFNLFVBQVU7QUFDaEIsUUFBTSxhQUFhO0FBQ25CLFFBQU0sV0FBVztBQUVqQixRQUFNLGFBQWE7QUFFbkIsZUFBVyxTQUFTO0FBQ3BCLGFBQVMsV0FBWSxLQUFLLEtBQUs7QUFDN0IsWUFBTSxTQUFTLElBQUk7QUFDbkIsWUFBTSxnQkFBZ0IsSUFBSTtBQUMxQixXQUFLLE1BQU07QUFFWCxXQUFLLGlCQUFpQixTQUFTLFFBQVEsYUFBYSxJQUFJLE9BQU8sSUFBSTtBQUNuRSxXQUFLLHFCQUFxQixTQUFTLFFBQVEsaUJBQWlCLEdBQUc7QUFDL0QsV0FBSyxjQUFjLFNBQVMsUUFBUSxVQUFVLFFBQVE7QUFFdEQsVUFBSTtBQUNKLGVBQVNDLEtBQUksR0FBRyxNQUFNLGNBQWMsUUFBUUEsS0FBSSxLQUFLLEVBQUVBLElBQUc7QUFDeEQsWUFBSSxNQUFNLFFBQVEsY0FBY0EsRUFBQyxDQUFDLEtBQzlCLFdBQVcsS0FBSyxjQUFjQSxFQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUc7QUFDeEMsb0JBQVUsY0FBY0EsRUFBQyxFQUFFLENBQUMsRUFBRSxZQUFZO0FBQzFDO0FBQUEsUUFDRjtBQUFBLE1BQ0Y7QUFFQSxVQUFJLFlBQVksUUFBVztBQUFFLGtCQUFVLElBQUksY0FBYztBQUFBLE1BQU87QUFFaEUsV0FBSyxVQUFVLElBQUksUUFBUTtBQUMzQixXQUFLLFVBQVU7QUFDZixXQUFLLFVBQVU7QUFDZixXQUFLLFNBQVM7QUFDZCxXQUFLLGlCQUFpQjtBQUN0QixXQUFLLFlBQVk7QUFDakIsV0FBSyxZQUFZO0FBQ2pCLFdBQUssT0FBTztBQUNaLFdBQUssT0FBTztBQUNaLFdBQUssWUFBWTtBQUNqQixXQUFLLFlBQVk7QUFDakIsV0FBSyxZQUFZO0FBQUEsSUFDbkI7QUFFQSxlQUFXLFVBQVUsUUFBUSxTQUFVQyxPQUFNLElBQUk7QUFDL0MsVUFBSSxLQUFLLFlBQVksS0FBSyxhQUFhO0FBQ3JDLFlBQUksQ0FBQyxLQUFLLElBQUksZ0JBQWdCO0FBQzVCLGVBQUssSUFBSSxpQkFBaUI7QUFDMUIsZUFBSyxJQUFJLEtBQUssYUFBYTtBQUFBLFFBQzdCO0FBQ0EsZUFBTyxHQUFHO0FBQUEsTUFDWjtBQUVBLFVBQUk7QUFBTyxVQUFJO0FBQVEsVUFBSUQ7QUFBRyxVQUFJLElBQUk7QUFBRyxZQUFNLE1BQU1DLE1BQUs7QUFFMUQsYUFBTyxJQUFJLEtBQUs7QUFDZCxZQUFJLEtBQUssV0FBVyxPQUFPO0FBQ3pCLGtCQUFRLFNBQVM7QUFDakIsZUFBS0QsS0FBSSxHQUFHQSxLQUFJLEtBQUssRUFBRUEsSUFBRztBQUN4QixnQkFBSSxDQUFDLEtBQUssZ0JBQWdCO0FBQUUsZ0JBQUU7QUFBQSxZQUFFO0FBQ2hDLGdCQUFJQyxNQUFLRCxFQUFDLE1BQU0sSUFBYTtBQUMzQixzQkFBUUE7QUFDUjtBQUFBLFlBQ0YsV0FBV0MsTUFBS0QsRUFBQyxNQUFNLElBQWE7QUFDbEMsdUJBQVNBO0FBQ1Q7QUFBQSxZQUNGO0FBQ0EsZ0JBQUksS0FBSyxrQkFBa0IsS0FBSyxjQUFjLEtBQUssb0JBQW9CO0FBQ3JFLG1CQUFLLFlBQVk7QUFDakI7QUFBQSxZQUNGLFdBQVcsS0FBSyxnQkFBZ0I7QUFBRSxnQkFBRSxLQUFLO0FBQUEsWUFBVTtBQUFBLFVBQ3JEO0FBRUEsY0FBSSxVQUFVLFFBQVc7QUFFdkIsZ0JBQUksUUFBUSxHQUFHO0FBQUUsbUJBQUssUUFBUSxLQUFLLFFBQVEsTUFBTUMsTUFBSyxTQUFTLFVBQVUsR0FBRyxLQUFLLENBQUM7QUFBQSxZQUFFO0FBQ3BGLGlCQUFLLFNBQVM7QUFFZCxpQkFBSyxZQUFZO0FBQ2pCLGlCQUFLLGlCQUFpQjtBQUN0QixpQkFBSyxPQUFPO0FBQ1osaUJBQUssWUFBWTtBQUNqQixpQkFBSyxZQUFZO0FBQ2pCLGlCQUFLLFFBQVEsTUFBTTtBQUVuQixnQkFBSSxRQUFRO0FBQUEsVUFDZCxXQUFXLFdBQVcsUUFBVztBQUUvQixjQUFFLEtBQUs7QUFDUCxnQkFBSTtBQUFLLGtCQUFNLFdBQVcsS0FBSztBQUMvQixnQkFBSSxTQUFTLEdBQUc7QUFBRSxvQkFBTyxLQUFLLFFBQVEsS0FBSyxRQUFRLE1BQU1BLE1BQUssU0FBUyxVQUFVLEdBQUcsTUFBTSxDQUFDO0FBQUEsWUFBRyxPQUFPO0FBQUUsb0JBQU0sS0FBSztBQUFBLFlBQUs7QUFFdkgsaUJBQUssWUFBWTtBQUNqQixpQkFBSyxpQkFBaUI7QUFDdEIsaUJBQUssT0FBTztBQUNaLGlCQUFLLFlBQVk7QUFDakIsaUJBQUssWUFBWTtBQUNqQixpQkFBSyxRQUFRLE1BQU07QUFFbkIsZ0JBQUksSUFBSSxRQUFRO0FBQ2QsbUJBQUssSUFBSTtBQUFBLGdCQUFLO0FBQUEsZ0JBQVMsV0FBVyxLQUFLLFVBQVUsS0FBSyxPQUFPO0FBQUEsZ0JBQzNEO0FBQUEsZ0JBQ0E7QUFBQSxnQkFDQTtBQUFBLGNBQUs7QUFBQSxZQUNUO0FBRUEsZ0JBQUksU0FBUztBQUNiLGdCQUFJLEtBQUssWUFBWSxLQUFLLGFBQWE7QUFBRSxxQkFBTyxHQUFHO0FBQUEsWUFBRTtBQUFBLFVBQ3ZELFdBQVcsS0FBSyxXQUFXO0FBRXpCLGdCQUFJRCxLQUFJLEdBQUc7QUFBRSxtQkFBSyxRQUFRLEtBQUssUUFBUSxNQUFNQyxNQUFLLFNBQVMsVUFBVSxHQUFHRCxFQUFDLENBQUM7QUFBQSxZQUFFO0FBQzVFLGdCQUFJQTtBQUNKLGlCQUFLLEtBQUssWUFBWSxLQUFLLEtBQUssWUFBWSxLQUFLLG9CQUFvQjtBQUVuRSxtQkFBSyxpQkFBaUI7QUFDdEIsbUJBQUssWUFBWTtBQUFBLFlBQ25CO0FBQUEsVUFDRixPQUFPO0FBQ0wsZ0JBQUksSUFBSSxLQUFLO0FBQUUsbUJBQUssUUFBUSxLQUFLLFFBQVEsTUFBTUMsTUFBSyxTQUFTLFVBQVUsQ0FBQyxDQUFDO0FBQUEsWUFBRTtBQUMzRSxnQkFBSTtBQUFBLFVBQ047QUFBQSxRQUNGLE9BQU87QUFDTCxtQkFBUztBQUNULGVBQUtELEtBQUksR0FBR0EsS0FBSSxLQUFLLEVBQUVBLElBQUc7QUFDeEIsZ0JBQUksQ0FBQyxLQUFLLGdCQUFnQjtBQUFFLGdCQUFFO0FBQUEsWUFBRTtBQUNoQyxnQkFBSUMsTUFBS0QsRUFBQyxNQUFNLElBQWE7QUFDM0IsdUJBQVNBO0FBQ1Q7QUFBQSxZQUNGO0FBQ0EsZ0JBQUksS0FBSyxrQkFBa0IsS0FBSyxjQUFjLEtBQUssZ0JBQWdCO0FBQ2pFLG1CQUFLLFlBQVk7QUFDakI7QUFBQSxZQUNGLFdBQVcsS0FBSyxnQkFBZ0I7QUFBRSxnQkFBRSxLQUFLO0FBQUEsWUFBVTtBQUFBLFVBQ3JEO0FBRUEsY0FBSSxXQUFXLFFBQVc7QUFDeEIsY0FBRSxLQUFLO0FBQ1AsZ0JBQUksU0FBUyxHQUFHO0FBQUUsbUJBQUssUUFBUSxLQUFLLFFBQVEsTUFBTUMsTUFBSyxTQUFTLFVBQVUsR0FBRyxNQUFNLENBQUM7QUFBQSxZQUFFO0FBQ3RGLGlCQUFLLElBQUk7QUFBQSxjQUFLO0FBQUEsY0FBUyxXQUFXLEtBQUssTUFBTSxVQUFVLEtBQUssT0FBTztBQUFBLGNBQ2pFLFdBQVcsS0FBSyxNQUFNLFVBQVUsS0FBSyxPQUFPO0FBQUEsY0FDNUMsS0FBSztBQUFBLGNBQ0wsS0FBSztBQUFBLFlBQVM7QUFDaEIsaUJBQUssU0FBUztBQUVkLGlCQUFLLFlBQVk7QUFDakIsaUJBQUssaUJBQWlCO0FBQ3RCLGlCQUFLLE9BQU87QUFDWixpQkFBSyxZQUFZO0FBQ2pCLGlCQUFLLFlBQVk7QUFDakIsaUJBQUssUUFBUSxNQUFNO0FBRW5CLGdCQUFJLFNBQVM7QUFDYixnQkFBSSxLQUFLLFlBQVksS0FBSyxhQUFhO0FBQUUscUJBQU8sR0FBRztBQUFBLFlBQUU7QUFBQSxVQUN2RCxXQUFXLEtBQUssV0FBVztBQUV6QixnQkFBSUQsS0FBSSxHQUFHO0FBQUUsbUJBQUssUUFBUSxLQUFLLFFBQVEsTUFBTUMsTUFBSyxTQUFTLFVBQVUsR0FBR0QsRUFBQyxDQUFDO0FBQUEsWUFBRTtBQUM1RSxnQkFBSUE7QUFDSixnQkFBSyxLQUFLLFNBQVMsTUFBTSxLQUFLLG1CQUFtQixNQUM1QyxLQUFLLFlBQVksS0FBSyxLQUFLLFlBQVksS0FBSyxnQkFBZ0I7QUFFL0QsbUJBQUssaUJBQWlCO0FBQ3RCLG1CQUFLLFlBQVk7QUFBQSxZQUNuQjtBQUFBLFVBQ0YsT0FBTztBQUNMLGdCQUFJLElBQUksS0FBSztBQUFFLG1CQUFLLFFBQVEsS0FBSyxRQUFRLE1BQU1DLE1BQUssU0FBUyxVQUFVLENBQUMsQ0FBQztBQUFBLFlBQUU7QUFDM0UsZ0JBQUk7QUFBQSxVQUNOO0FBQUEsUUFDRjtBQUFBLE1BQ0Y7QUFDQSxTQUFHO0FBQUEsSUFDTDtBQUVBLGVBQVcsVUFBVSxNQUFNLFdBQVk7QUFDckMsVUFBSSxLQUFLLElBQUksT0FBTztBQUFFO0FBQUEsTUFBTztBQUU3QixVQUFJLEtBQUssV0FBVyxTQUFTLEtBQUssS0FBSyxTQUFTLEdBQUc7QUFDakQsYUFBSyxJQUFJO0FBQUEsVUFBSztBQUFBLFVBQVMsV0FBVyxLQUFLLE1BQU0sVUFBVSxLQUFLLE9BQU87QUFBQSxVQUNqRTtBQUFBLFVBQ0EsS0FBSztBQUFBLFVBQ0w7QUFBQSxRQUFLO0FBQUEsTUFDVCxXQUFXLEtBQUssV0FBVyxPQUFPO0FBQ2hDLGFBQUssSUFBSTtBQUFBLFVBQUs7QUFBQSxVQUFTLFdBQVcsS0FBSyxNQUFNLFVBQVUsS0FBSyxPQUFPO0FBQUEsVUFDakUsV0FBVyxLQUFLLE1BQU0sVUFBVSxLQUFLLE9BQU87QUFBQSxVQUM1QyxLQUFLO0FBQUEsVUFDTCxLQUFLO0FBQUEsUUFBUztBQUFBLE1BQ2xCO0FBQ0EsV0FBSyxJQUFJLFFBQVE7QUFDakIsV0FBSyxJQUFJLEtBQUssUUFBUTtBQUFBLElBQ3hCO0FBRUEsV0FBTyxVQUFVO0FBQUE7QUFBQTs7O0FDN0xqQjtBQUFBO0FBQUE7QUFFQSxRQUFNLGlCQUFpQixVQUFRLGFBQWEsRUFBRTtBQUM5QyxRQUFNLEVBQUUsU0FBUyxJQUFJLFVBQVEsV0FBVztBQUN4QyxRQUFNLFFBQVE7QUFFZCxRQUFNLGtCQUFrQjtBQUN4QixRQUFNLG1CQUFtQjtBQUN6QixRQUFNLGNBQWM7QUFFcEIsYUFBUyxPQUFRLE1BQU07QUFDckIsVUFBSSxFQUFFLGdCQUFnQixTQUFTO0FBQUUsZUFBTyxJQUFJLE9BQU8sSUFBSTtBQUFBLE1BQUU7QUFFekQsVUFBSSxPQUFPLFNBQVMsVUFBVTtBQUM1QixjQUFNLElBQUksVUFBVSxvQ0FBb0M7QUFBQSxNQUMxRDtBQUNBLFVBQUksT0FBTyxLQUFLLFlBQVksVUFBVTtBQUNwQyxjQUFNLElBQUksVUFBVSwyREFBMkQ7QUFBQSxNQUNqRjtBQUNBLFVBQUksT0FBTyxLQUFLLFFBQVEsY0FBYyxNQUFNLFVBQVU7QUFDcEQsY0FBTSxJQUFJLFVBQVUsOEJBQThCO0FBQUEsTUFDcEQ7QUFFQSxZQUFNO0FBQUEsUUFDSjtBQUFBLFFBQ0EsR0FBRztBQUFBLE1BQ0wsSUFBSTtBQUVKLFdBQUssT0FBTztBQUFBLFFBQ1YsYUFBYTtBQUFBLFFBQ2IsR0FBRztBQUFBLE1BQ0w7QUFDQSxxQkFBZSxLQUFLLE1BQU0sS0FBSyxJQUFJO0FBRW5DLFdBQUssUUFBUTtBQUNiLFdBQUssVUFBVSxLQUFLLG1CQUFtQixPQUFPO0FBQzlDLFdBQUssWUFBWTtBQUFBLElBQ25CO0FBQ0EsYUFBUyxRQUFRLGNBQWM7QUFFL0IsV0FBTyxVQUFVLE9BQU8sU0FBVSxJQUFJO0FBQ3BDLFVBQUksT0FBTyxVQUFVO0FBQ25CLFlBQUksQ0FBQyxLQUFLLE9BQU87QUFDZixlQUFLLFNBQVMsSUFBSTtBQUNsQjtBQUFBLFFBQ0YsV0FBVyxLQUFLLFdBQVc7QUFDekI7QUFBQSxRQUNGO0FBQ0EsYUFBSyxZQUFZO0FBQUEsTUFDbkI7QUFDQSxxQkFBZSxVQUFVLEtBQUssTUFBTSxNQUFNLFNBQVM7QUFBQSxJQUNyRDtBQUVBLFdBQU8sVUFBVSxxQkFBcUIsU0FBVSxTQUFTO0FBQ3ZELFlBQU0sU0FBUyxZQUFZLFFBQVEsY0FBYyxDQUFDO0FBRWxELFlBQU0sTUFBTTtBQUFBLFFBQ1YsWUFBWSxLQUFLLEtBQUs7QUFBQSxRQUN0QixTQUFTLEtBQUssS0FBSztBQUFBLFFBQ25CO0FBQUEsUUFDQSxlQUFlLEtBQUssS0FBSztBQUFBLFFBQ3pCLGFBQWEsS0FBSyxLQUFLO0FBQUEsUUFDdkIsUUFBUSxLQUFLLEtBQUs7QUFBQSxRQUNsQixlQUFlO0FBQUEsUUFDZixjQUFjLEtBQUssS0FBSztBQUFBLE1BQzFCO0FBRUEsVUFBSSxnQkFBZ0IsT0FBTyxLQUFLLE9BQU8sQ0FBQyxDQUFDLEdBQUc7QUFDMUMsZUFBTyxJQUFJLGdCQUFnQixNQUFNLEdBQUc7QUFBQSxNQUN0QztBQUNBLFVBQUksaUJBQWlCLE9BQU8sS0FBSyxPQUFPLENBQUMsQ0FBQyxHQUFHO0FBQzNDLGVBQU8sSUFBSSxpQkFBaUIsTUFBTSxHQUFHO0FBQUEsTUFDdkM7QUFDQSxZQUFNLElBQUksTUFBTSwyQkFBMkI7QUFBQSxJQUM3QztBQUVBLFdBQU8sVUFBVSxTQUFTLFNBQVUsT0FBTyxVQUFVLElBQUk7QUFDdkQsV0FBSyxRQUFRLE1BQU0sT0FBTyxFQUFFO0FBQUEsSUFDOUI7QUFFQSxXQUFPLFVBQVU7QUFDakIsV0FBTyxRQUFRLFVBQVU7QUFDekIsV0FBTyxRQUFRLFNBQVM7QUFFeEIsV0FBTyxRQUFRLFFBQVE7QUFBQTtBQUFBOzs7QUNwRnZCLElBQUFDLHFCQUFBO0FBQUE7QUFBQTtBQUVBLFFBQU0sRUFBRSxnQkFBZ0IscUJBQXFCLElBQUksVUFBUSxnQkFBZ0I7QUFFekUsUUFBTSx3QkFBd0IsQ0FBQyxPQUFPLFFBQVEsTUFBTTtBQUNwRCxRQUFNLDJCQUEyQixJQUFJLElBQUkscUJBQXFCO0FBRTlELFFBQU0saUJBQWlCLENBQUMsS0FBSyxLQUFLLEtBQUssR0FBRztBQUUxQyxRQUFNLGlCQUFpQixDQUFDLEtBQUssS0FBSyxLQUFLLEtBQUssR0FBRztBQUMvQyxRQUFNLG9CQUFvQixJQUFJLElBQUksY0FBYztBQUdoRCxRQUFNLFdBQVc7QUFBQSxNQUNmO0FBQUEsTUFBSztBQUFBLE1BQUs7QUFBQSxNQUFLO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQy9HO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFDdkc7QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQ2xHO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBUTtBQUFBLE1BQVE7QUFBQSxNQUNwRztBQUFBLE1BQVE7QUFBQSxNQUFRO0FBQUEsTUFBUTtBQUFBLE1BQVE7QUFBQSxNQUFRO0FBQUEsTUFBUTtBQUFBLE1BQVE7QUFBQSxNQUFRO0FBQUEsTUFBUTtBQUFBLE1BQVE7QUFBQSxNQUFRO0FBQUEsTUFBUTtBQUFBLE1BQ2hHO0FBQUEsSUFDRjtBQUVBLFFBQU0sY0FBYyxJQUFJLElBQUksUUFBUTtBQUdwQyxRQUFNLGlCQUFpQjtBQUFBLE1BQ3JCO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGO0FBQ0EsUUFBTSxvQkFBb0IsSUFBSSxJQUFJLGNBQWM7QUFFaEQsUUFBTSxrQkFBa0IsQ0FBQyxVQUFVLFVBQVUsT0FBTztBQUVwRCxRQUFNLGNBQWMsQ0FBQyxPQUFPLFFBQVEsV0FBVyxPQUFPO0FBQ3RELFFBQU0saUJBQWlCLElBQUksSUFBSSxXQUFXO0FBRTFDLFFBQU0sY0FBYyxDQUFDLFlBQVksZUFBZSxXQUFXLE1BQU07QUFFakUsUUFBTSxxQkFBcUIsQ0FBQyxRQUFRLGVBQWUsU0FBUztBQUU1RCxRQUFNLGVBQWU7QUFBQSxNQUNuQjtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsSUFDRjtBQUdBLFFBQU0sb0JBQW9CO0FBQUEsTUFDeEI7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLE1BS0E7QUFBQSxJQUNGO0FBR0EsUUFBTSxnQkFBZ0I7QUFBQSxNQUNwQjtBQUFBLElBQ0Y7QUFHQSxRQUFNLG1CQUFtQixDQUFDLFdBQVcsU0FBUyxPQUFPO0FBQ3JELFFBQU0sc0JBQXNCLElBQUksSUFBSSxnQkFBZ0I7QUFFcEQsUUFBTSxjQUFjO0FBQUEsTUFDbEI7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFDQSxRQUFNLGlCQUFpQixJQUFJLElBQUksV0FBVztBQUcxQyxRQUFNQyxnQkFBZSxXQUFXLGlCQUFpQixNQUFNO0FBR3JELFVBQUk7QUFDRixhQUFLLEdBQUc7QUFBQSxNQUNWLFNBQVMsS0FBSztBQUNaLGVBQU8sT0FBTyxlQUFlLEdBQUcsRUFBRTtBQUFBLE1BQ3BDO0FBQUEsSUFDRixHQUFHO0FBRUgsUUFBSTtBQUdKLFFBQU0sa0JBQ0osV0FBVztBQUFBO0FBQUEsSUFHWCxTQUFTQyxpQkFBaUIsT0FBTyxVQUFVLFFBQVc7QUFDcEQsVUFBSSxVQUFVLFdBQVcsR0FBRztBQUMxQixjQUFNLElBQUksVUFBVSxrQkFBa0I7QUFBQSxNQUN4QztBQUVBLFVBQUksQ0FBQyxTQUFTO0FBQ1osa0JBQVUsSUFBSSxlQUFlO0FBQUEsTUFDL0I7QUFDQSxjQUFRLE1BQU0sTUFBTTtBQUNwQixjQUFRLE1BQU0sTUFBTTtBQUNwQixjQUFRLE1BQU0sWUFBWSxPQUFPLFNBQVMsUUFBUTtBQUNsRCxhQUFPLHFCQUFxQixRQUFRLEtBQUssRUFBRTtBQUFBLElBQzdDO0FBRUYsV0FBTyxVQUFVO0FBQUEsTUFDZixjQUFBRDtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGO0FBQUE7QUFBQTs7O0FDdEpBO0FBQUE7QUFBQTtBQUlBLFFBQU0sZUFBZSxPQUFPLElBQUksdUJBQXVCO0FBRXZELGFBQVMsa0JBQW1CO0FBQzFCLGFBQU8sV0FBVyxZQUFZO0FBQUEsSUFDaEM7QUFFQSxhQUFTLGdCQUFpQixXQUFXO0FBQ25DLFVBQUksY0FBYyxRQUFXO0FBQzNCLGVBQU8sZUFBZSxZQUFZLGNBQWM7QUFBQSxVQUM5QyxPQUFPO0FBQUEsVUFDUCxVQUFVO0FBQUEsVUFDVixZQUFZO0FBQUEsVUFDWixjQUFjO0FBQUEsUUFDaEIsQ0FBQztBQUVEO0FBQUEsTUFDRjtBQUVBLFlBQU0sWUFBWSxJQUFJLElBQUksU0FBUztBQUVuQyxVQUFJLFVBQVUsYUFBYSxXQUFXLFVBQVUsYUFBYSxVQUFVO0FBQ3JFLGNBQU0sSUFBSSxVQUFVLGdEQUFnRCxVQUFVLFFBQVEsRUFBRTtBQUFBLE1BQzFGO0FBRUEsYUFBTyxlQUFlLFlBQVksY0FBYztBQUFBLFFBQzlDLE9BQU87QUFBQSxRQUNQLFVBQVU7QUFBQSxRQUNWLFlBQVk7QUFBQSxRQUNaLGNBQWM7QUFBQSxNQUNoQixDQUFDO0FBQUEsSUFDSDtBQUVBLFdBQU8sVUFBVTtBQUFBLE1BQ2Y7QUFBQSxNQUNBO0FBQUEsSUFDRjtBQUFBO0FBQUE7OztBQ3ZDQSxJQUFBRSxnQkFBQTtBQUFBO0FBQUE7QUFFQSxRQUFNLEVBQUUsbUJBQW1CLG1CQUFtQixzQkFBc0IsWUFBWSxJQUFJO0FBQ3BGLFFBQU0sRUFBRSxnQkFBZ0IsSUFBSTtBQUM1QixRQUFNLEVBQUUsYUFBQUMsYUFBWSxJQUFJLFVBQVEsWUFBWTtBQUM1QyxRQUFNLEVBQUUsWUFBWSxhQUFhLG1CQUFtQixJQUFJO0FBQ3hELFFBQU0sU0FBUyxVQUFRLFFBQVE7QUFDL0IsUUFBTSxFQUFFLGFBQWEsSUFBSSxVQUFRLFlBQVk7QUFFN0MsUUFBSSxrQkFBa0IsQ0FBQztBQUl2QixRQUFJO0FBRUosUUFBSTtBQUNGLGVBQVMsVUFBUSxRQUFRO0FBQ3pCLFlBQU0seUJBQXlCLENBQUMsVUFBVSxVQUFVLFFBQVE7QUFDNUQsd0JBQWtCLE9BQU8sVUFBVSxFQUFFLE9BQU8sQ0FBQyxTQUFTLHVCQUF1QixTQUFTLElBQUksQ0FBQztBQUFBLElBRTdGLFFBQVE7QUFBQSxJQUNSO0FBRUEsYUFBUyxZQUFhLFVBQVU7QUFJOUIsWUFBTSxVQUFVLFNBQVM7QUFDekIsWUFBTUMsVUFBUyxRQUFRO0FBQ3ZCLGFBQU9BLFlBQVcsSUFBSSxPQUFPLFFBQVFBLFVBQVMsQ0FBQyxFQUFFLFNBQVM7QUFBQSxJQUM1RDtBQUdBLGFBQVMsb0JBQXFCLFVBQVUsaUJBQWlCO0FBRXZELFVBQUksQ0FBQyxrQkFBa0IsSUFBSSxTQUFTLE1BQU0sR0FBRztBQUMzQyxlQUFPO0FBQUEsTUFDVDtBQUlBLFVBQUksV0FBVyxTQUFTLFlBQVksSUFBSSxVQUFVO0FBSWxELFVBQUksYUFBYSxRQUFRLG1CQUFtQixRQUFRLEdBQUc7QUFDckQsbUJBQVcsSUFBSSxJQUFJLFVBQVUsWUFBWSxRQUFRLENBQUM7QUFBQSxNQUNwRDtBQUlBLFVBQUksWUFBWSxDQUFDLFNBQVMsTUFBTTtBQUM5QixpQkFBUyxPQUFPO0FBQUEsTUFDbEI7QUFHQSxhQUFPO0FBQUEsSUFDVDtBQUdBLGFBQVMsa0JBQW1CLFNBQVM7QUFDbkMsYUFBTyxRQUFRLFFBQVEsUUFBUSxRQUFRLFNBQVMsQ0FBQztBQUFBLElBQ25EO0FBRUEsYUFBUyxlQUFnQixTQUFTO0FBRWhDLFlBQU0sTUFBTSxrQkFBa0IsT0FBTztBQUlyQyxVQUFJLHFCQUFxQixHQUFHLEtBQUssWUFBWSxJQUFJLElBQUksSUFBSSxHQUFHO0FBQzFELGVBQU87QUFBQSxNQUNUO0FBR0EsYUFBTztBQUFBLElBQ1Q7QUFFQSxhQUFTLFlBQWEsUUFBUTtBQUM1QixhQUFPLGtCQUFrQixVQUN2QixRQUFRLGFBQWEsU0FBUyxXQUM5QixRQUFRLGFBQWEsU0FBUztBQUFBLElBRWxDO0FBUUEsYUFBUyxvQkFBcUIsWUFBWTtBQUN4QyxlQUFTQyxLQUFJLEdBQUdBLEtBQUksV0FBVyxRQUFRLEVBQUVBLElBQUc7QUFDMUMsY0FBTSxJQUFJLFdBQVcsV0FBV0EsRUFBQztBQUNqQyxZQUNFLEVBRUksTUFBTTtBQUFBLFFBQ0wsS0FBSyxNQUFRLEtBQUs7QUFBQSxRQUNsQixLQUFLLE9BQVEsS0FBSyxNQUd2QjtBQUNBLGlCQUFPO0FBQUEsUUFDVDtBQUFBLE1BQ0Y7QUFDQSxhQUFPO0FBQUEsSUFDVDtBQU1BLGFBQVMsZ0JBQWlCLEdBQUc7QUFDM0IsY0FBUSxHQUFHO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBRUgsaUJBQU87QUFBQSxRQUNUO0FBRUUsaUJBQU8sS0FBSyxNQUFRLEtBQUs7QUFBQSxNQUM3QjtBQUFBLElBQ0Y7QUFLQSxhQUFTLGlCQUFrQixZQUFZO0FBQ3JDLFVBQUksV0FBVyxXQUFXLEdBQUc7QUFDM0IsZUFBTztBQUFBLE1BQ1Q7QUFDQSxlQUFTQSxLQUFJLEdBQUdBLEtBQUksV0FBVyxRQUFRLEVBQUVBLElBQUc7QUFDMUMsWUFBSSxDQUFDLGdCQUFnQixXQUFXLFdBQVdBLEVBQUMsQ0FBQyxHQUFHO0FBQzlDLGlCQUFPO0FBQUEsUUFDVDtBQUFBLE1BQ0Y7QUFDQSxhQUFPO0FBQUEsSUFDVDtBQU1BLGFBQVMsa0JBQW1CLGdCQUFnQjtBQUMxQyxhQUFPLGlCQUFpQixjQUFjO0FBQUEsSUFDeEM7QUFNQSxhQUFTLG1CQUFvQixnQkFBZ0I7QUFHM0MsVUFDRSxlQUFlLFdBQVcsR0FBSSxLQUM5QixlQUFlLFdBQVcsR0FBRyxLQUM3QixlQUFlLFNBQVMsR0FBSSxLQUM1QixlQUFlLFNBQVMsR0FBRyxHQUMzQjtBQUNBLGVBQU87QUFBQSxNQUNUO0FBRUEsVUFDRSxlQUFlLFNBQVMsSUFBSSxLQUM1QixlQUFlLFNBQVMsSUFBSSxLQUM1QixlQUFlLFNBQVMsSUFBSSxHQUM1QjtBQUNBLGVBQU87QUFBQSxNQUNUO0FBRUEsYUFBTztBQUFBLElBQ1Q7QUFHQSxhQUFTLG1DQUFvQyxTQUFTLGdCQUFnQjtBQVVwRSxZQUFNLEVBQUUsWUFBWSxJQUFJO0FBSXhCLFlBQU0sZ0JBQWdCLFlBQVksSUFBSSxpQkFBaUIsS0FBSyxJQUFJLE1BQU0sR0FBRztBQU16RSxVQUFJLFNBQVM7QUFDYixVQUFJLGFBQWEsU0FBUyxHQUFHO0FBRzNCLGlCQUFTQSxLQUFJLGFBQWEsUUFBUUEsT0FBTSxHQUFHQSxNQUFLO0FBQzlDLGdCQUFNLFFBQVEsYUFBYUEsS0FBSSxDQUFDLEVBQUUsS0FBSztBQUN2QyxjQUFJLHFCQUFxQixJQUFJLEtBQUssR0FBRztBQUNuQyxxQkFBUztBQUNUO0FBQUEsVUFDRjtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBR0EsVUFBSSxXQUFXLElBQUk7QUFDakIsZ0JBQVEsaUJBQWlCO0FBQUEsTUFDM0I7QUFBQSxJQUNGO0FBR0EsYUFBUyxpQ0FBa0M7QUFFekMsYUFBTztBQUFBLElBQ1Q7QUFHQSxhQUFTLFlBQWE7QUFFcEIsYUFBTztBQUFBLElBQ1Q7QUFHQSxhQUFTLFdBQVk7QUFFbkIsYUFBTztBQUFBLElBQ1Q7QUFFQSxhQUFTLG9CQUFxQixhQUFhO0FBVXpDLFVBQUksU0FBUztBQUdiLGVBQVMsWUFBWTtBQUdyQixrQkFBWSxZQUFZLElBQUksa0JBQWtCLE1BQU07QUFBQSxJQU90RDtBQUdBLGFBQVMsMEJBQTJCLFNBQVM7QUFFM0MsVUFBSSxtQkFBbUIsUUFBUTtBQUcvQixVQUFJLFFBQVEscUJBQXFCLFVBQVUsUUFBUSxTQUFTLGFBQWE7QUFDdkUsWUFBSSxrQkFBa0I7QUFDcEIsa0JBQVEsWUFBWSxPQUFPLFVBQVUsZ0JBQWdCO0FBQUEsUUFDdkQ7QUFBQSxNQUdGLFdBQVcsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVE7QUFFaEUsZ0JBQVEsUUFBUSxnQkFBZ0I7QUFBQSxVQUM5QixLQUFLO0FBRUgsK0JBQW1CO0FBQ25CO0FBQUEsVUFDRixLQUFLO0FBQUEsVUFDTCxLQUFLO0FBQUEsVUFDTCxLQUFLO0FBRUgsZ0JBQUksUUFBUSxVQUFVLGtCQUFrQixRQUFRLE1BQU0sS0FBSyxDQUFDLGtCQUFrQixrQkFBa0IsT0FBTyxDQUFDLEdBQUc7QUFDekcsaUNBQW1CO0FBQUEsWUFDckI7QUFDQTtBQUFBLFVBQ0YsS0FBSztBQUVILGdCQUFJLENBQUMsV0FBVyxTQUFTLGtCQUFrQixPQUFPLENBQUMsR0FBRztBQUNwRCxpQ0FBbUI7QUFBQSxZQUNyQjtBQUNBO0FBQUEsVUFDRjtBQUFBLFFBRUY7QUFFQSxZQUFJLGtCQUFrQjtBQUVwQixrQkFBUSxZQUFZLE9BQU8sVUFBVSxnQkFBZ0I7QUFBQSxRQUN2RDtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBRUEsYUFBUywyQkFBNEIsK0JBQStCO0FBRWxFLGFBQU9GLGFBQVksSUFBSTtBQUFBLElBQ3pCO0FBR0EsYUFBUyx1QkFBd0IsWUFBWTtBQUMzQyxhQUFPO0FBQUEsUUFDTCxXQUFXLFdBQVcsYUFBYTtBQUFBLFFBQ25DLG1CQUFtQjtBQUFBLFFBQ25CLGlCQUFpQjtBQUFBLFFBQ2pCLHVCQUF1QixXQUFXLGFBQWE7QUFBQSxRQUMvQyw2QkFBNkI7QUFBQSxRQUM3QiwrQkFBK0I7QUFBQSxRQUMvQiw4QkFBOEI7QUFBQSxRQUM5QixTQUFTO0FBQUEsUUFDVCxpQkFBaUI7QUFBQSxRQUNqQixpQkFBaUI7QUFBQSxRQUNqQiwyQkFBMkI7QUFBQSxNQUM3QjtBQUFBLElBQ0Y7QUFHQSxhQUFTLHNCQUF1QjtBQUU5QixhQUFPO0FBQUEsUUFDTCxnQkFBZ0I7QUFBQSxNQUNsQjtBQUFBLElBQ0Y7QUFHQSxhQUFTLHFCQUFzQixpQkFBaUI7QUFDOUMsYUFBTztBQUFBLFFBQ0wsZ0JBQWdCLGdCQUFnQjtBQUFBLE1BQ2xDO0FBQUEsSUFDRjtBQUdBLGFBQVMsMEJBQTJCLFNBQVM7QUFFM0MsWUFBTSxTQUFTLFFBQVE7QUFHdkIsYUFBTyxNQUFNO0FBSWIsVUFBSSxpQkFBaUI7QUFHckIsVUFBSSxRQUFRLGFBQWEsVUFBVTtBQUlqQyxjQUFNLGVBQWUsZ0JBQWdCO0FBRXJDLFlBQUksQ0FBQyxnQkFBZ0IsYUFBYSxXQUFXLFFBQVE7QUFDbkQsaUJBQU87QUFBQSxRQUNUO0FBR0EseUJBQWlCLElBQUksSUFBSSxZQUFZO0FBQUEsTUFDdkMsV0FBVyxRQUFRLG9CQUFvQixLQUFLO0FBRTFDLHlCQUFpQixRQUFRO0FBQUEsTUFDM0I7QUFJQSxVQUFJLGNBQWMsb0JBQW9CLGNBQWM7QUFJcEQsWUFBTSxpQkFBaUIsb0JBQW9CLGdCQUFnQixJQUFJO0FBSS9ELFVBQUksWUFBWSxTQUFTLEVBQUUsU0FBUyxNQUFNO0FBQ3hDLHNCQUFjO0FBQUEsTUFDaEI7QUFFQSxZQUFNLGdCQUFnQixXQUFXLFNBQVMsV0FBVztBQUNyRCxZQUFNLDhCQUE4Qiw0QkFBNEIsV0FBVyxLQUN6RSxDQUFDLDRCQUE0QixRQUFRLEdBQUc7QUFHMUMsY0FBUSxRQUFRO0FBQUEsUUFDZCxLQUFLO0FBQVUsaUJBQU8sa0JBQWtCLE9BQU8saUJBQWlCLG9CQUFvQixnQkFBZ0IsSUFBSTtBQUFBLFFBQ3hHLEtBQUs7QUFBYyxpQkFBTztBQUFBLFFBQzFCLEtBQUs7QUFDSCxpQkFBTyxnQkFBZ0IsaUJBQWlCO0FBQUEsUUFDMUMsS0FBSztBQUNILGlCQUFPLGdCQUFnQixjQUFjO0FBQUEsUUFDdkMsS0FBSyxtQ0FBbUM7QUFDdEMsZ0JBQU0sYUFBYSxrQkFBa0IsT0FBTztBQUk1QyxjQUFJLFdBQVcsYUFBYSxVQUFVLEdBQUc7QUFDdkMsbUJBQU87QUFBQSxVQUNUO0FBS0EsY0FBSSw0QkFBNEIsV0FBVyxLQUFLLENBQUMsNEJBQTRCLFVBQVUsR0FBRztBQUN4RixtQkFBTztBQUFBLFVBQ1Q7QUFHQSxpQkFBTztBQUFBLFFBQ1Q7QUFBQSxRQUNBLEtBQUs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLFFBT0wsS0FBSztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsUUFRTDtBQUNFLGlCQUFPLDhCQUE4QixnQkFBZ0I7QUFBQSxNQUN6RDtBQUFBLElBQ0Y7QUFPQSxhQUFTLG9CQUFxQixLQUFLLFlBQVk7QUFFN0MsYUFBTyxlQUFlLEdBQUc7QUFHekIsVUFBSSxJQUFJLGFBQWEsV0FBVyxJQUFJLGFBQWEsWUFBWSxJQUFJLGFBQWEsVUFBVTtBQUN0RixlQUFPO0FBQUEsTUFDVDtBQUdBLFVBQUksV0FBVztBQUdmLFVBQUksV0FBVztBQUdmLFVBQUksT0FBTztBQUdYLFVBQUksWUFBWTtBQUVkLFlBQUksV0FBVztBQUdmLFlBQUksU0FBUztBQUFBLE1BQ2Y7QUFHQSxhQUFPO0FBQUEsSUFDVDtBQUVBLGFBQVMsNEJBQTZCLEtBQUs7QUFDekMsVUFBSSxFQUFFLGVBQWUsTUFBTTtBQUN6QixlQUFPO0FBQUEsTUFDVDtBQUdBLFVBQUksSUFBSSxTQUFTLGlCQUFpQixJQUFJLFNBQVMsZ0JBQWdCO0FBQzdELGVBQU87QUFBQSxNQUNUO0FBR0EsVUFBSSxJQUFJLGFBQWEsUUFBUyxRQUFPO0FBR3JDLFVBQUksSUFBSSxhQUFhLFFBQVMsUUFBTztBQUVyQyxhQUFPLCtCQUErQixJQUFJLE1BQU07QUFFaEQsZUFBUywrQkFBZ0MsUUFBUTtBQUUvQyxZQUFJLFVBQVUsUUFBUSxXQUFXLE9BQVEsUUFBTztBQUVoRCxjQUFNLGNBQWMsSUFBSSxJQUFJLE1BQU07QUFHbEMsWUFBSSxZQUFZLGFBQWEsWUFBWSxZQUFZLGFBQWEsUUFBUTtBQUN4RSxpQkFBTztBQUFBLFFBQ1Q7QUFHQSxZQUFJLHNEQUFzRCxLQUFLLFlBQVksUUFBUSxNQUNqRixZQUFZLGFBQWEsZUFBZSxZQUFZLFNBQVMsU0FBUyxZQUFZLE1BQ2xGLFlBQVksU0FBUyxTQUFTLFlBQVksR0FBSTtBQUM5QyxpQkFBTztBQUFBLFFBQ1Q7QUFHQSxlQUFPO0FBQUEsTUFDVDtBQUFBLElBQ0Y7QUFPQSxhQUFTLFdBQVksT0FBTyxjQUFjO0FBS3hDLFVBQUksV0FBVyxRQUFXO0FBQ3hCLGVBQU87QUFBQSxNQUNUO0FBR0EsWUFBTSxpQkFBaUIsY0FBYyxZQUFZO0FBR2pELFVBQUksbUJBQW1CLGVBQWU7QUFDcEMsZUFBTztBQUFBLE1BQ1Q7QUFNQSxVQUFJLGVBQWUsV0FBVyxHQUFHO0FBQy9CLGVBQU87QUFBQSxNQUNUO0FBSUEsWUFBTSxZQUFZLHFCQUFxQixjQUFjO0FBQ3JELFlBQU0sV0FBVyw4QkFBOEIsZ0JBQWdCLFNBQVM7QUFHeEUsaUJBQVcsUUFBUSxVQUFVO0FBRTNCLGNBQU0sWUFBWSxLQUFLO0FBR3ZCLGNBQU0sZ0JBQWdCLEtBQUs7QUFNM0IsWUFBSSxjQUFjLE9BQU8sV0FBVyxTQUFTLEVBQUUsT0FBTyxLQUFLLEVBQUUsT0FBTyxRQUFRO0FBRTVFLFlBQUksWUFBWSxZQUFZLFNBQVMsQ0FBQyxNQUFNLEtBQUs7QUFDL0MsY0FBSSxZQUFZLFlBQVksU0FBUyxDQUFDLE1BQU0sS0FBSztBQUMvQywwQkFBYyxZQUFZLE1BQU0sR0FBRyxFQUFFO0FBQUEsVUFDdkMsT0FBTztBQUNMLDBCQUFjLFlBQVksTUFBTSxHQUFHLEVBQUU7QUFBQSxVQUN2QztBQUFBLFFBQ0Y7QUFJQSxZQUFJLG1CQUFtQixhQUFhLGFBQWEsR0FBRztBQUNsRCxpQkFBTztBQUFBLFFBQ1Q7QUFBQSxNQUNGO0FBR0EsYUFBTztBQUFBLElBQ1Q7QUFLQSxRQUFNLHVCQUF1QjtBQU03QixhQUFTLGNBQWUsVUFBVTtBQUdoQyxZQUFNLFNBQVMsQ0FBQztBQUdoQixVQUFJLFFBQVE7QUFHWixpQkFBVyxTQUFTLFNBQVMsTUFBTSxHQUFHLEdBQUc7QUFFdkMsZ0JBQVE7QUFHUixjQUFNLGNBQWMscUJBQXFCLEtBQUssS0FBSztBQUduRCxZQUNFLGdCQUFnQixRQUNoQixZQUFZLFdBQVcsVUFDdkIsWUFBWSxPQUFPLFNBQVMsUUFDNUI7QUFLQTtBQUFBLFFBQ0Y7QUFHQSxjQUFNLFlBQVksWUFBWSxPQUFPLEtBQUssWUFBWTtBQUl0RCxZQUFJLGdCQUFnQixTQUFTLFNBQVMsR0FBRztBQUN2QyxpQkFBTyxLQUFLLFlBQVksTUFBTTtBQUFBLFFBQ2hDO0FBQUEsTUFDRjtBQUdBLFVBQUksVUFBVSxNQUFNO0FBQ2xCLGVBQU87QUFBQSxNQUNUO0FBRUEsYUFBTztBQUFBLElBQ1Q7QUFLQSxhQUFTLHFCQUFzQixjQUFjO0FBRzNDLFVBQUksWUFBWSxhQUFhLENBQUMsRUFBRTtBQUdoQyxVQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUs7QUFDeEIsZUFBTztBQUFBLE1BQ1Q7QUFFQSxlQUFTRSxLQUFJLEdBQUdBLEtBQUksYUFBYSxRQUFRLEVBQUVBLElBQUc7QUFDNUMsY0FBTSxXQUFXLGFBQWFBLEVBQUM7QUFHL0IsWUFBSSxTQUFTLEtBQUssQ0FBQyxNQUFNLEtBQUs7QUFDNUIsc0JBQVk7QUFDWjtBQUFBLFFBRUYsV0FBVyxVQUFVLENBQUMsTUFBTSxLQUFLO0FBQy9CO0FBQUEsUUFHRixXQUFXLFNBQVMsS0FBSyxDQUFDLE1BQU0sS0FBSztBQUNuQyxzQkFBWTtBQUFBLFFBQ2Q7QUFBQSxNQUNGO0FBQ0EsYUFBTztBQUFBLElBQ1Q7QUFFQSxhQUFTLDhCQUErQixjQUFjLFdBQVc7QUFDL0QsVUFBSSxhQUFhLFdBQVcsR0FBRztBQUM3QixlQUFPO0FBQUEsTUFDVDtBQUVBLFVBQUksTUFBTTtBQUNWLGVBQVNBLEtBQUksR0FBR0EsS0FBSSxhQUFhLFFBQVEsRUFBRUEsSUFBRztBQUM1QyxZQUFJLGFBQWFBLEVBQUMsRUFBRSxTQUFTLFdBQVc7QUFDdEMsdUJBQWEsS0FBSyxJQUFJLGFBQWFBLEVBQUM7QUFBQSxRQUN0QztBQUFBLE1BQ0Y7QUFFQSxtQkFBYSxTQUFTO0FBRXRCLGFBQU87QUFBQSxJQUNUO0FBVUEsYUFBUyxtQkFBb0IsYUFBYSxlQUFlO0FBQ3ZELFVBQUksWUFBWSxXQUFXLGNBQWMsUUFBUTtBQUMvQyxlQUFPO0FBQUEsTUFDVDtBQUNBLGVBQVNBLEtBQUksR0FBR0EsS0FBSSxZQUFZLFFBQVEsRUFBRUEsSUFBRztBQUMzQyxZQUFJLFlBQVlBLEVBQUMsTUFBTSxjQUFjQSxFQUFDLEdBQUc7QUFDdkMsY0FDRyxZQUFZQSxFQUFDLE1BQU0sT0FBTyxjQUFjQSxFQUFDLE1BQU0sT0FDL0MsWUFBWUEsRUFBQyxNQUFNLE9BQU8sY0FBY0EsRUFBQyxNQUFNLEtBQ2hEO0FBQ0E7QUFBQSxVQUNGO0FBQ0EsaUJBQU87QUFBQSxRQUNUO0FBQUEsTUFDRjtBQUVBLGFBQU87QUFBQSxJQUNUO0FBR0EsYUFBUyw4Q0FBK0MsU0FBUztBQUFBLElBRWpFO0FBT0EsYUFBUyxXQUFZQyxJQUFHLEdBQUc7QUFFekIsVUFBSUEsR0FBRSxXQUFXLEVBQUUsVUFBVUEsR0FBRSxXQUFXLFFBQVE7QUFDaEQsZUFBTztBQUFBLE1BQ1Q7QUFJQSxVQUFJQSxHQUFFLGFBQWEsRUFBRSxZQUFZQSxHQUFFLGFBQWEsRUFBRSxZQUFZQSxHQUFFLFNBQVMsRUFBRSxNQUFNO0FBQy9FLGVBQU87QUFBQSxNQUNUO0FBR0EsYUFBTztBQUFBLElBQ1Q7QUFFQSxhQUFTLHdCQUF5QjtBQUNoQyxVQUFJO0FBQ0osVUFBSTtBQUNKLFlBQU0sVUFBVSxJQUFJLFFBQVEsQ0FBQ0MsVUFBUyxXQUFXO0FBQy9DLGNBQU1BO0FBQ04sY0FBTTtBQUFBLE1BQ1IsQ0FBQztBQUVELGFBQU8sRUFBRSxTQUFTLFNBQVMsS0FBSyxRQUFRLElBQUk7QUFBQSxJQUM5QztBQUVBLGFBQVMsVUFBVyxhQUFhO0FBQy9CLGFBQU8sWUFBWSxXQUFXLFVBQVU7QUFBQSxJQUMxQztBQUVBLGFBQVMsWUFBYSxhQUFhO0FBQ2pDLGFBQU8sWUFBWSxXQUFXLFVBQVUsYUFDdEMsWUFBWSxXQUFXLFVBQVU7QUFBQSxJQUNyQztBQUVBLFFBQU0sd0JBQXdCO0FBQUEsTUFDNUIsUUFBUTtBQUFBLE1BQ1IsUUFBUTtBQUFBLE1BQ1IsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsTUFBTTtBQUFBLE1BQ04sTUFBTTtBQUFBLE1BQ04sU0FBUztBQUFBLE1BQ1QsU0FBUztBQUFBLE1BQ1QsTUFBTTtBQUFBLE1BQ04sTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLElBQ1A7QUFHQSxXQUFPLGVBQWUsdUJBQXVCLElBQUk7QUFNakQsYUFBUyxnQkFBaUIsUUFBUTtBQUNoQyxhQUFPLHNCQUFzQixPQUFPLFlBQVksQ0FBQyxLQUFLO0FBQUEsSUFDeEQ7QUFHQSxhQUFTLHFDQUFzQyxPQUFPO0FBRXBELFlBQU0sU0FBUyxLQUFLLFVBQVUsS0FBSztBQUduQyxVQUFJLFdBQVcsUUFBVztBQUN4QixjQUFNLElBQUksVUFBVSxnQ0FBZ0M7QUFBQSxNQUN0RDtBQUdBLGFBQU8sT0FBTyxXQUFXLFFBQVE7QUFHakMsYUFBTztBQUFBLElBQ1Q7QUFHQSxRQUFNLHNCQUFzQixPQUFPLGVBQWUsT0FBTyxlQUFlLENBQUMsRUFBRSxPQUFPLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFROUYsYUFBUyxhQUFjLFVBQVUsTUFBTSxNQUFNO0FBQzNDLFlBQU0sU0FBUztBQUFBLFFBQ2IsT0FBTztBQUFBLFFBQ1A7QUFBQSxRQUNBLFFBQVE7QUFBQSxNQUNWO0FBRUEsWUFBTUYsS0FBSTtBQUFBLFFBQ1IsT0FBUTtBQVlOLGNBQUksT0FBTyxlQUFlLElBQUksTUFBTUEsSUFBRztBQUNyQyxrQkFBTSxJQUFJO0FBQUEsY0FDUixnRUFBZ0UsSUFBSTtBQUFBLFlBQ3RFO0FBQUEsVUFDRjtBQUtBLGdCQUFNLEVBQUUsT0FBTyxNQUFBRyxPQUFNLE9BQU8sSUFBSTtBQUNoQyxnQkFBTSxTQUFTLE9BQU87QUFHdEIsZ0JBQU0sTUFBTSxPQUFPO0FBSW5CLGNBQUksU0FBUyxLQUFLO0FBQ2hCLG1CQUFPLEVBQUUsT0FBTyxRQUFXLE1BQU0sS0FBSztBQUFBLFVBQ3hDO0FBR0EsZ0JBQU0sT0FBTyxPQUFPLEtBQUs7QUFHekIsaUJBQU8sUUFBUSxRQUFRO0FBR3ZCLGlCQUFPLGVBQWUsTUFBTUEsS0FBSTtBQUFBLFFBQ2xDO0FBQUE7QUFBQTtBQUFBLFFBR0EsQ0FBQyxPQUFPLFdBQVcsR0FBRyxHQUFHLElBQUk7QUFBQSxNQUMvQjtBQUdBLGFBQU8sZUFBZUgsSUFBRyxtQkFBbUI7QUFHNUMsYUFBTyxPQUFPLGVBQWUsQ0FBQyxHQUFHQSxFQUFDO0FBQUEsSUFDcEM7QUFHQSxhQUFTLGVBQWdCLE1BQU0sTUFBTTtBQUNuQyxVQUFJO0FBR0osY0FBUSxNQUFNO0FBQUEsUUFDWixLQUFLLE9BQU87QUFLVixtQkFBUyxLQUFLLENBQUM7QUFDZjtBQUFBLFFBQ0Y7QUFBQSxRQUNBLEtBQUssU0FBUztBQUtaLG1CQUFTLEtBQUssQ0FBQztBQUNmO0FBQUEsUUFDRjtBQUFBLFFBQ0EsS0FBSyxhQUFhO0FBV2hCLG1CQUFTO0FBQ1Q7QUFBQSxRQUNGO0FBQUEsTUFDRjtBQUdBLGFBQU8sRUFBRSxPQUFPLFFBQVEsTUFBTSxNQUFNO0FBQUEsSUFDdEM7QUFLQSxtQkFBZSxjQUFlLE1BQU0sYUFBYSxrQkFBa0I7QUFNakUsWUFBTSxlQUFlO0FBSXJCLFlBQU0sYUFBYTtBQUtuQixVQUFJO0FBRUosVUFBSTtBQUNGLGlCQUFTLEtBQUssT0FBTyxVQUFVO0FBQUEsTUFDakMsU0FBUyxHQUFHO0FBQ1YsbUJBQVcsQ0FBQztBQUNaO0FBQUEsTUFDRjtBQUdBLFVBQUk7QUFDRixjQUFNLFNBQVMsTUFBTSxhQUFhLE1BQU07QUFDeEMscUJBQWEsTUFBTTtBQUFBLE1BQ3JCLFNBQVMsR0FBRztBQUNWLG1CQUFXLENBQUM7QUFBQSxNQUNkO0FBQUEsSUFDRjtBQUdBLFFBQUksaUJBQWlCLFdBQVc7QUFFaEMsYUFBUyxxQkFBc0IsUUFBUTtBQUNyQyxVQUFJLENBQUMsZ0JBQWdCO0FBQ25CLHlCQUFpQixVQUFRLFlBQVksRUFBRTtBQUFBLE1BQ3pDO0FBRUEsYUFBTyxrQkFBa0Isa0JBQ3ZCLE9BQU8sT0FBTyxXQUFXLE1BQU0sb0JBQy9CLE9BQU8sT0FBTyxRQUFRO0FBQUEsSUFFMUI7QUFFQSxRQUFNLDBCQUEwQjtBQU1oQyxhQUFTLGlCQUFrQixPQUFPO0FBS2hDLFVBQUksTUFBTSxTQUFTLHlCQUF5QjtBQUMxQyxlQUFPLE9BQU8sYUFBYSxHQUFHLEtBQUs7QUFBQSxNQUNyQztBQUVBLGFBQU8sTUFBTSxPQUFPLENBQUMsVUFBVSxZQUFZLFdBQVcsT0FBTyxhQUFhLE9BQU8sR0FBRyxFQUFFO0FBQUEsSUFDeEY7QUFLQSxhQUFTLG9CQUFxQixZQUFZO0FBQ3hDLFVBQUk7QUFDRixtQkFBVyxNQUFNO0FBQUEsTUFDbkIsU0FBUyxLQUFLO0FBRVosWUFBSSxDQUFDLElBQUksUUFBUSxTQUFTLDhCQUE4QixHQUFHO0FBQ3pELGdCQUFNO0FBQUEsUUFDUjtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBTUEsYUFBUyxpQkFBa0IsT0FBTztBQUVoQyxlQUFTQSxLQUFJLEdBQUdBLEtBQUksTUFBTSxRQUFRQSxNQUFLO0FBQ3JDLGVBQU8sTUFBTSxXQUFXQSxFQUFDLEtBQUssR0FBSTtBQUFBLE1BQ3BDO0FBS0EsYUFBTztBQUFBLElBQ1Q7QUFPQSxtQkFBZSxhQUFjLFFBQVE7QUFDbkMsWUFBTSxRQUFRLENBQUM7QUFDZixVQUFJSSxjQUFhO0FBRWpCLGFBQU8sTUFBTTtBQUNYLGNBQU0sRUFBRSxNQUFNLE9BQU8sTUFBTSxJQUFJLE1BQU0sT0FBTyxLQUFLO0FBRWpELFlBQUksTUFBTTtBQUVSLGlCQUFPLE9BQU8sT0FBTyxPQUFPQSxXQUFVO0FBQUEsUUFDeEM7QUFJQSxZQUFJLENBQUMsYUFBYSxLQUFLLEdBQUc7QUFDeEIsZ0JBQU0sSUFBSSxVQUFVLCtCQUErQjtBQUFBLFFBQ3JEO0FBR0EsY0FBTSxLQUFLLEtBQUs7QUFDaEIsUUFBQUEsZUFBYyxNQUFNO0FBQUEsTUFHdEI7QUFBQSxJQUNGO0FBTUEsYUFBUyxXQUFZLEtBQUs7QUFDeEIsYUFBTyxjQUFjLEdBQUc7QUFFeEIsWUFBTSxXQUFXLElBQUk7QUFFckIsYUFBTyxhQUFhLFlBQVksYUFBYSxXQUFXLGFBQWE7QUFBQSxJQUN2RTtBQUtBLGFBQVMsa0JBQW1CLEtBQUs7QUFDL0IsVUFBSSxPQUFPLFFBQVEsVUFBVTtBQUMzQixlQUFPLElBQUksV0FBVyxRQUFRO0FBQUEsTUFDaEM7QUFFQSxhQUFPLElBQUksYUFBYTtBQUFBLElBQzFCO0FBTUEsYUFBUyxxQkFBc0IsS0FBSztBQUNsQyxhQUFPLGNBQWMsR0FBRztBQUV4QixZQUFNLFdBQVcsSUFBSTtBQUVyQixhQUFPLGFBQWEsV0FBVyxhQUFhO0FBQUEsSUFDOUM7QUFLQSxRQUFNLFNBQVMsT0FBTyxXQUFXLENBQUMsTUFBTSxRQUFRLE9BQU8sVUFBVSxlQUFlLEtBQUssTUFBTSxHQUFHO0FBRTlGLFdBQU8sVUFBVTtBQUFBLE1BQ2Y7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFBQTtBQUFBOzs7QUN2bkNBLElBQUFDLG1CQUFBO0FBQUE7QUFBQTtBQUVBLFdBQU8sVUFBVTtBQUFBLE1BQ2YsTUFBTSxPQUFPLEtBQUs7QUFBQSxNQUNsQixVQUFVLE9BQU8sU0FBUztBQUFBLE1BQzFCLFNBQVMsT0FBTyxRQUFRO0FBQUEsTUFDeEIsUUFBUSxPQUFPLE9BQU87QUFBQSxNQUN0QixRQUFRLE9BQU8sT0FBTztBQUFBLE1BQ3RCLFFBQVEsT0FBTyxPQUFPO0FBQUEsSUFDeEI7QUFBQTtBQUFBOzs7QUNUQTtBQUFBO0FBQUE7QUFFQSxRQUFNLEVBQUUsTUFBTSxJQUFJLFVBQVEsTUFBTTtBQUNoQyxRQUFNLEVBQUUsUUFBUSxZQUFZLElBQUk7QUFHaEMsUUFBTSxTQUFTLENBQUM7QUFDaEIsV0FBTyxhQUFhLENBQUM7QUFDckIsV0FBTyxPQUFPLENBQUM7QUFDZixXQUFPLFNBQVMsQ0FBQztBQUVqQixXQUFPLE9BQU8sWUFBWSxTQUFVLFNBQVM7QUFDM0MsYUFBTyxJQUFJLFVBQVUsR0FBRyxRQUFRLE1BQU0sS0FBSyxRQUFRLE9BQU8sRUFBRTtBQUFBLElBQzlEO0FBRUEsV0FBTyxPQUFPLG1CQUFtQixTQUFVLFNBQVM7QUFDbEQsWUFBTSxTQUFTLFFBQVEsTUFBTSxXQUFXLElBQUksS0FBSztBQUNqRCxZQUFNLFVBQ0osR0FBRyxRQUFRLFFBQVEsNkJBQ2hCLE1BQU0sS0FBSyxRQUFRLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFFeEMsYUFBTyxPQUFPLE9BQU8sVUFBVTtBQUFBLFFBQzdCLFFBQVEsUUFBUTtBQUFBLFFBQ2hCO0FBQUEsTUFDRixDQUFDO0FBQUEsSUFDSDtBQUVBLFdBQU8sT0FBTyxrQkFBa0IsU0FBVSxTQUFTO0FBQ2pELGFBQU8sT0FBTyxPQUFPLFVBQVU7QUFBQSxRQUM3QixRQUFRLFFBQVE7QUFBQSxRQUNoQixTQUFTLElBQUksUUFBUSxLQUFLLG1CQUFtQixRQUFRLElBQUk7QUFBQSxNQUMzRCxDQUFDO0FBQUEsSUFDSDtBQUdBLFdBQU8sYUFBYSxTQUFVLEdBQUcsR0FBRyxPQUFPLFFBQVc7QUFDcEQsVUFBSSxNQUFNLFdBQVcsU0FBUyxFQUFFLGFBQWEsSUFBSTtBQUMvQyxjQUFNLElBQUksVUFBVSxvQkFBb0I7QUFBQSxNQUMxQyxPQUFPO0FBQ0wsZUFBTyxJQUFJLE9BQU8sV0FBVyxNQUFNLEVBQUUsVUFBVSxPQUFPLFdBQVc7QUFBQSxNQUNuRTtBQUFBLElBQ0Y7QUFFQSxXQUFPLHNCQUFzQixTQUFVLEVBQUUsUUFBQUMsUUFBTyxHQUFHLEtBQUssS0FBSztBQUMzRCxVQUFJQSxVQUFTLEtBQUs7QUFDaEIsY0FBTSxPQUFPLE9BQU8sVUFBVTtBQUFBLFVBQzVCLFNBQVMsR0FBRyxHQUFHLFlBQVksUUFBUSxJQUFJLE1BQU0sRUFBRSxpQkFDaENBLFVBQVMsVUFBVSxFQUFFLElBQUlBLE9BQU07QUFBQSxVQUM5QyxHQUFHO0FBQUEsUUFDTCxDQUFDO0FBQUEsTUFDSDtBQUFBLElBQ0Y7QUFFQSxXQUFPLHFCQUFxQixXQUFZO0FBQ3RDLFlBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxRQUM1QixRQUFRO0FBQUEsUUFDUixTQUFTO0FBQUEsTUFDWCxDQUFDO0FBQUEsSUFDSDtBQUdBLFdBQU8sS0FBSyxPQUFPLFNBQVUsR0FBRztBQUM5QixjQUFRLE9BQU8sR0FBRztBQUFBLFFBQ2hCLEtBQUs7QUFBYSxpQkFBTztBQUFBLFFBQ3pCLEtBQUs7QUFBVyxpQkFBTztBQUFBLFFBQ3ZCLEtBQUs7QUFBVSxpQkFBTztBQUFBLFFBQ3RCLEtBQUs7QUFBVSxpQkFBTztBQUFBLFFBQ3RCLEtBQUs7QUFBVSxpQkFBTztBQUFBLFFBQ3RCLEtBQUs7QUFBVSxpQkFBTztBQUFBLFFBQ3RCLEtBQUs7QUFBQSxRQUNMLEtBQUssVUFBVTtBQUNiLGNBQUksTUFBTSxNQUFNO0FBQ2QsbUJBQU87QUFBQSxVQUNUO0FBRUEsaUJBQU87QUFBQSxRQUNUO0FBQUEsTUFDRjtBQUFBLElBQ0Y7QUFHQSxXQUFPLEtBQUssZUFBZSxTQUFVLEdBQUcsV0FBVyxZQUFZLE9BQU8sQ0FBQyxHQUFHO0FBQ3hFLFVBQUk7QUFDSixVQUFJO0FBR0osVUFBSSxjQUFjLElBQUk7QUFFcEIscUJBQWEsS0FBSyxJQUFJLEdBQUcsRUFBRSxJQUFJO0FBRy9CLFlBQUksZUFBZSxZQUFZO0FBQzdCLHVCQUFhO0FBQUEsUUFDZixPQUFPO0FBRUwsdUJBQWEsS0FBSyxJQUFJLElBQUksRUFBRSxJQUFJO0FBQUEsUUFDbEM7QUFBQSxNQUNGLFdBQVcsZUFBZSxZQUFZO0FBSXBDLHFCQUFhO0FBR2IscUJBQWEsS0FBSyxJQUFJLEdBQUcsU0FBUyxJQUFJO0FBQUEsTUFDeEMsT0FBTztBQUlMLHFCQUFhLEtBQUssSUFBSSxJQUFJLFNBQVMsSUFBSTtBQUd2QyxxQkFBYSxLQUFLLElBQUksR0FBRyxZQUFZLENBQUMsSUFBSTtBQUFBLE1BQzVDO0FBR0EsVUFBSUMsS0FBSSxPQUFPLENBQUM7QUFHaEIsVUFBSUEsT0FBTSxHQUFHO0FBQ1gsUUFBQUEsS0FBSTtBQUFBLE1BQ047QUFJQSxVQUFJLEtBQUssaUJBQWlCLE1BQU07QUFFOUIsWUFDRSxPQUFPLE1BQU1BLEVBQUMsS0FDZEEsT0FBTSxPQUFPLHFCQUNiQSxPQUFNLE9BQU8sbUJBQ2I7QUFDQSxnQkFBTSxPQUFPLE9BQU8sVUFBVTtBQUFBLFlBQzVCLFFBQVE7QUFBQSxZQUNSLFNBQVMscUJBQXFCLENBQUM7QUFBQSxVQUNqQyxDQUFDO0FBQUEsUUFDSDtBQUdBLFFBQUFBLEtBQUksT0FBTyxLQUFLLFlBQVlBLEVBQUM7QUFJN0IsWUFBSUEsS0FBSSxjQUFjQSxLQUFJLFlBQVk7QUFDcEMsZ0JBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxZQUM1QixRQUFRO0FBQUEsWUFDUixTQUFTLHlCQUF5QixVQUFVLElBQUksVUFBVSxTQUFTQSxFQUFDO0FBQUEsVUFDdEUsQ0FBQztBQUFBLFFBQ0g7QUFHQSxlQUFPQTtBQUFBLE1BQ1Q7QUFLQSxVQUFJLENBQUMsT0FBTyxNQUFNQSxFQUFDLEtBQUssS0FBSyxVQUFVLE1BQU07QUFFM0MsUUFBQUEsS0FBSSxLQUFLLElBQUksS0FBSyxJQUFJQSxJQUFHLFVBQVUsR0FBRyxVQUFVO0FBS2hELFlBQUksS0FBSyxNQUFNQSxFQUFDLElBQUksTUFBTSxHQUFHO0FBQzNCLFVBQUFBLEtBQUksS0FBSyxNQUFNQSxFQUFDO0FBQUEsUUFDbEIsT0FBTztBQUNMLFVBQUFBLEtBQUksS0FBSyxLQUFLQSxFQUFDO0FBQUEsUUFDakI7QUFHQSxlQUFPQTtBQUFBLE1BQ1Q7QUFHQSxVQUNFLE9BQU8sTUFBTUEsRUFBQyxLQUNiQSxPQUFNLEtBQUssT0FBTyxHQUFHLEdBQUdBLEVBQUMsS0FDMUJBLE9BQU0sT0FBTyxxQkFDYkEsT0FBTSxPQUFPLG1CQUNiO0FBQ0EsZUFBTztBQUFBLE1BQ1Q7QUFHQSxNQUFBQSxLQUFJLE9BQU8sS0FBSyxZQUFZQSxFQUFDO0FBRzdCLE1BQUFBLEtBQUlBLEtBQUksS0FBSyxJQUFJLEdBQUcsU0FBUztBQUk3QixVQUFJLGVBQWUsWUFBWUEsTUFBSyxLQUFLLElBQUksR0FBRyxTQUFTLElBQUksR0FBRztBQUM5RCxlQUFPQSxLQUFJLEtBQUssSUFBSSxHQUFHLFNBQVM7QUFBQSxNQUNsQztBQUdBLGFBQU9BO0FBQUEsSUFDVDtBQUdBLFdBQU8sS0FBSyxjQUFjLFNBQVVDLElBQUc7QUFFckMsWUFBTSxJQUFJLEtBQUssTUFBTSxLQUFLLElBQUlBLEVBQUMsQ0FBQztBQUdoQyxVQUFJQSxLQUFJLEdBQUc7QUFDVCxlQUFPLEtBQUs7QUFBQSxNQUNkO0FBR0EsYUFBTztBQUFBLElBQ1Q7QUFHQSxXQUFPLG9CQUFvQixTQUFVLFdBQVc7QUFDOUMsYUFBTyxDQUFDLE1BQU07QUFFWixZQUFJLE9BQU8sS0FBSyxLQUFLLENBQUMsTUFBTSxVQUFVO0FBQ3BDLGdCQUFNLE9BQU8sT0FBTyxVQUFVO0FBQUEsWUFDNUIsUUFBUTtBQUFBLFlBQ1IsU0FBUyxpQkFBaUIsT0FBTyxLQUFLLEtBQUssQ0FBQyxDQUFDO0FBQUEsVUFDL0MsQ0FBQztBQUFBLFFBQ0g7QUFJQSxjQUFNLFNBQVMsSUFBSSxPQUFPLFFBQVEsSUFBSTtBQUN0QyxjQUFNLE1BQU0sQ0FBQztBQUdiLFlBQ0UsV0FBVyxVQUNYLE9BQU8sT0FBTyxTQUFTLFlBQ3ZCO0FBQ0EsZ0JBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxZQUM1QixRQUFRO0FBQUEsWUFDUixTQUFTO0FBQUEsVUFDWCxDQUFDO0FBQUEsUUFDSDtBQUdBLGVBQU8sTUFBTTtBQUNYLGdCQUFNLEVBQUUsTUFBTSxNQUFNLElBQUksT0FBTyxLQUFLO0FBRXBDLGNBQUksTUFBTTtBQUNSO0FBQUEsVUFDRjtBQUVBLGNBQUksS0FBSyxVQUFVLEtBQUssQ0FBQztBQUFBLFFBQzNCO0FBRUEsZUFBTztBQUFBLE1BQ1Q7QUFBQSxJQUNGO0FBR0EsV0FBTyxrQkFBa0IsU0FBVSxjQUFjLGdCQUFnQjtBQUMvRCxhQUFPLENBQUMsTUFBTTtBQUVaLFlBQUksT0FBTyxLQUFLLEtBQUssQ0FBQyxNQUFNLFVBQVU7QUFDcEMsZ0JBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxZQUM1QixRQUFRO0FBQUEsWUFDUixTQUFTLGlCQUFpQixPQUFPLEtBQUssS0FBSyxDQUFDLENBQUM7QUFBQSxVQUMvQyxDQUFDO0FBQUEsUUFDSDtBQUdBLGNBQU0sU0FBUyxDQUFDO0FBRWhCLFlBQUksQ0FBQyxNQUFNLFFBQVEsQ0FBQyxHQUFHO0FBRXJCLGdCQUFNQyxRQUFPLE9BQU8sS0FBSyxDQUFDO0FBRTFCLHFCQUFXLE9BQU9BLE9BQU07QUFFdEIsa0JBQU0sV0FBVyxhQUFhLEdBQUc7QUFJakMsa0JBQU0sYUFBYSxlQUFlLEVBQUUsR0FBRyxDQUFDO0FBR3hDLG1CQUFPLFFBQVEsSUFBSTtBQUFBLFVBQ3JCO0FBR0EsaUJBQU87QUFBQSxRQUNUO0FBR0EsY0FBTSxPQUFPLFFBQVEsUUFBUSxDQUFDO0FBRzlCLG1CQUFXLE9BQU8sTUFBTTtBQUV0QixnQkFBTSxPQUFPLFFBQVEseUJBQXlCLEdBQUcsR0FBRztBQUdwRCxjQUFJLE1BQU0sWUFBWTtBQUVwQixrQkFBTSxXQUFXLGFBQWEsR0FBRztBQUlqQyxrQkFBTSxhQUFhLGVBQWUsRUFBRSxHQUFHLENBQUM7QUFHeEMsbUJBQU8sUUFBUSxJQUFJO0FBQUEsVUFDckI7QUFBQSxRQUNGO0FBR0EsZUFBTztBQUFBLE1BQ1Q7QUFBQSxJQUNGO0FBRUEsV0FBTyxxQkFBcUIsU0FBVUMsSUFBRztBQUN2QyxhQUFPLENBQUMsR0FBRyxPQUFPLENBQUMsTUFBTTtBQUN2QixZQUFJLEtBQUssV0FBVyxTQUFTLEVBQUUsYUFBYUEsS0FBSTtBQUM5QyxnQkFBTSxPQUFPLE9BQU8sVUFBVTtBQUFBLFlBQzVCLFFBQVFBLEdBQUU7QUFBQSxZQUNWLFNBQVMsWUFBWSxDQUFDLHlCQUF5QkEsR0FBRSxJQUFJO0FBQUEsVUFDdkQsQ0FBQztBQUFBLFFBQ0g7QUFFQSxlQUFPO0FBQUEsTUFDVDtBQUFBLElBQ0Y7QUFFQSxXQUFPLHNCQUFzQixTQUFVLFlBQVk7QUFDakQsYUFBTyxDQUFDLGVBQWU7QUFDckIsY0FBTSxPQUFPLE9BQU8sS0FBSyxLQUFLLFVBQVU7QUFDeEMsY0FBTSxPQUFPLENBQUM7QUFFZCxZQUFJLFNBQVMsVUFBVSxTQUFTLGFBQWE7QUFDM0MsaUJBQU87QUFBQSxRQUNULFdBQVcsU0FBUyxVQUFVO0FBQzVCLGdCQUFNLE9BQU8sT0FBTyxVQUFVO0FBQUEsWUFDNUIsUUFBUTtBQUFBLFlBQ1IsU0FBUyxZQUFZLFVBQVU7QUFBQSxVQUNqQyxDQUFDO0FBQUEsUUFDSDtBQUVBLG1CQUFXLFdBQVcsWUFBWTtBQUNoQyxnQkFBTSxFQUFFLEtBQUssY0FBYyxVQUFVLFVBQVUsSUFBSTtBQUVuRCxjQUFJLGFBQWEsTUFBTTtBQUNyQixnQkFBSSxDQUFDLE9BQU8sWUFBWSxHQUFHLEdBQUc7QUFDNUIsb0JBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxnQkFDNUIsUUFBUTtBQUFBLGdCQUNSLFNBQVMseUJBQXlCLEdBQUc7QUFBQSxjQUN2QyxDQUFDO0FBQUEsWUFDSDtBQUFBLFVBQ0Y7QUFFQSxjQUFJLFFBQVEsV0FBVyxHQUFHO0FBQzFCLGdCQUFNLGFBQWEsT0FBTyxTQUFTLGNBQWM7QUFJakQsY0FBSSxjQUFjLFVBQVUsTUFBTTtBQUNoQyxvQkFBUSxTQUFTO0FBQUEsVUFDbkI7QUFLQSxjQUFJLFlBQVksY0FBYyxVQUFVLFFBQVc7QUFDakQsb0JBQVEsVUFBVSxLQUFLO0FBRXZCLGdCQUNFLFFBQVEsaUJBQ1IsQ0FBQyxRQUFRLGNBQWMsU0FBUyxLQUFLLEdBQ3JDO0FBQ0Esb0JBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxnQkFDNUIsUUFBUTtBQUFBLGdCQUNSLFNBQVMsR0FBRyxLQUFLLDZDQUE2QyxRQUFRLGNBQWMsS0FBSyxJQUFJLENBQUM7QUFBQSxjQUNoRyxDQUFDO0FBQUEsWUFDSDtBQUVBLGlCQUFLLEdBQUcsSUFBSTtBQUFBLFVBQ2Q7QUFBQSxRQUNGO0FBRUEsZUFBTztBQUFBLE1BQ1Q7QUFBQSxJQUNGO0FBRUEsV0FBTyxvQkFBb0IsU0FBVSxXQUFXO0FBQzlDLGFBQU8sQ0FBQyxNQUFNO0FBQ1osWUFBSSxNQUFNLE1BQU07QUFDZCxpQkFBTztBQUFBLFFBQ1Q7QUFFQSxlQUFPLFVBQVUsQ0FBQztBQUFBLE1BQ3BCO0FBQUEsSUFDRjtBQUdBLFdBQU8sV0FBVyxZQUFZLFNBQVUsR0FBRyxPQUFPLENBQUMsR0FBRztBQUtwRCxVQUFJLE1BQU0sUUFBUSxLQUFLLHlCQUF5QjtBQUM5QyxlQUFPO0FBQUEsTUFDVDtBQUdBLFVBQUksT0FBTyxNQUFNLFVBQVU7QUFDekIsY0FBTSxJQUFJLFVBQVUsc0RBQXNEO0FBQUEsTUFDNUU7QUFLQSxhQUFPLE9BQU8sQ0FBQztBQUFBLElBQ2pCO0FBR0EsV0FBTyxXQUFXLGFBQWEsU0FBVSxHQUFHO0FBRzFDLFlBQU1ILEtBQUksT0FBTyxXQUFXLFVBQVUsQ0FBQztBQUl2QyxlQUFTLFFBQVEsR0FBRyxRQUFRQSxHQUFFLFFBQVEsU0FBUztBQUM3QyxZQUFJQSxHQUFFLFdBQVcsS0FBSyxJQUFJLEtBQUs7QUFDN0IsZ0JBQU0sSUFBSTtBQUFBLFlBQ1IsMEVBQ1MsS0FBSyxtQkFBbUJBLEdBQUUsV0FBVyxLQUFLLENBQUM7QUFBQSxVQUN0RDtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBS0EsYUFBT0E7QUFBQSxJQUNUO0FBR0EsV0FBTyxXQUFXLFlBQVk7QUFHOUIsV0FBTyxXQUFXLFVBQVUsU0FBVSxHQUFHO0FBRXZDLFlBQU1BLEtBQUksUUFBUSxDQUFDO0FBSW5CLGFBQU9BO0FBQUEsSUFDVDtBQUdBLFdBQU8sV0FBVyxNQUFNLFNBQVUsR0FBRztBQUNuQyxhQUFPO0FBQUEsSUFDVDtBQUdBLFdBQU8sV0FBVyxXQUFXLElBQUksU0FBVSxHQUFHO0FBRTVDLFlBQU1BLEtBQUksT0FBTyxLQUFLLGFBQWEsR0FBRyxJQUFJLFFBQVE7QUFJbEQsYUFBT0E7QUFBQSxJQUNUO0FBR0EsV0FBTyxXQUFXLG9CQUFvQixJQUFJLFNBQVUsR0FBRztBQUVyRCxZQUFNQSxLQUFJLE9BQU8sS0FBSyxhQUFhLEdBQUcsSUFBSSxVQUFVO0FBSXBELGFBQU9BO0FBQUEsSUFDVDtBQUdBLFdBQU8sV0FBVyxlQUFlLElBQUksU0FBVSxHQUFHO0FBRWhELFlBQU1BLEtBQUksT0FBTyxLQUFLLGFBQWEsR0FBRyxJQUFJLFVBQVU7QUFJcEQsYUFBT0E7QUFBQSxJQUNUO0FBR0EsV0FBTyxXQUFXLGdCQUFnQixJQUFJLFNBQVUsR0FBRyxNQUFNO0FBRXZELFlBQU1BLEtBQUksT0FBTyxLQUFLLGFBQWEsR0FBRyxJQUFJLFlBQVksSUFBSTtBQUkxRCxhQUFPQTtBQUFBLElBQ1Q7QUFHQSxXQUFPLFdBQVcsY0FBYyxTQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUc7QUFNdEQsVUFDRSxPQUFPLEtBQUssS0FBSyxDQUFDLE1BQU0sWUFDeEIsQ0FBQyxNQUFNLGlCQUFpQixDQUFDLEdBQ3pCO0FBQ0EsY0FBTSxPQUFPLE9BQU8saUJBQWlCO0FBQUEsVUFDbkMsUUFBUSxHQUFHLENBQUM7QUFBQSxVQUNaLFVBQVUsR0FBRyxDQUFDO0FBQUEsVUFDZCxPQUFPLENBQUMsYUFBYTtBQUFBLFFBQ3ZCLENBQUM7QUFBQSxNQUNIO0FBTUEsVUFBSSxLQUFLLGdCQUFnQixTQUFTLE1BQU0sb0JBQW9CLENBQUMsR0FBRztBQUM5RCxjQUFNLE9BQU8sT0FBTyxVQUFVO0FBQUEsVUFDNUIsUUFBUTtBQUFBLFVBQ1IsU0FBUztBQUFBLFFBQ1gsQ0FBQztBQUFBLE1BQ0g7QUFVQSxhQUFPO0FBQUEsSUFDVDtBQUVBLFdBQU8sV0FBVyxhQUFhLFNBQVUsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHO0FBTXhELFVBQ0UsT0FBTyxLQUFLLEtBQUssQ0FBQyxNQUFNLFlBQ3hCLENBQUMsTUFBTSxhQUFhLENBQUMsS0FDckIsRUFBRSxZQUFZLFNBQVMsRUFBRSxNQUN6QjtBQUNBLGNBQU0sT0FBTyxPQUFPLGlCQUFpQjtBQUFBLFVBQ25DLFFBQVEsR0FBRyxFQUFFLElBQUk7QUFBQSxVQUNqQixVQUFVLEdBQUcsQ0FBQztBQUFBLFVBQ2QsT0FBTyxDQUFDLEVBQUUsSUFBSTtBQUFBLFFBQ2hCLENBQUM7QUFBQSxNQUNIO0FBTUEsVUFBSSxLQUFLLGdCQUFnQixTQUFTLE1BQU0sb0JBQW9CLEVBQUUsTUFBTSxHQUFHO0FBQ3JFLGNBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxVQUM1QixRQUFRO0FBQUEsVUFDUixTQUFTO0FBQUEsUUFDWCxDQUFDO0FBQUEsTUFDSDtBQVVBLGFBQU87QUFBQSxJQUNUO0FBRUEsV0FBTyxXQUFXLFdBQVcsU0FBVSxHQUFHLE9BQU8sQ0FBQyxHQUFHO0FBR25ELFVBQUksT0FBTyxLQUFLLEtBQUssQ0FBQyxNQUFNLFlBQVksQ0FBQyxNQUFNLFdBQVcsQ0FBQyxHQUFHO0FBQzVELGNBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxVQUM1QixRQUFRO0FBQUEsVUFDUixTQUFTO0FBQUEsUUFDWCxDQUFDO0FBQUEsTUFDSDtBQU1BLFVBQUksS0FBSyxnQkFBZ0IsU0FBUyxNQUFNLG9CQUFvQixFQUFFLE1BQU0sR0FBRztBQUNyRSxjQUFNLE9BQU8sT0FBTyxVQUFVO0FBQUEsVUFDNUIsUUFBUTtBQUFBLFVBQ1IsU0FBUztBQUFBLFFBQ1gsQ0FBQztBQUFBLE1BQ0g7QUFVQSxhQUFPO0FBQUEsSUFDVDtBQUdBLFdBQU8sV0FBVyxlQUFlLFNBQVUsR0FBRyxPQUFPLENBQUMsR0FBRztBQUN2RCxVQUFJLE1BQU0saUJBQWlCLENBQUMsR0FBRztBQUM3QixlQUFPLE9BQU8sV0FBVyxZQUFZLEdBQUcsSUFBSTtBQUFBLE1BQzlDO0FBRUEsVUFBSSxNQUFNLGFBQWEsQ0FBQyxHQUFHO0FBQ3pCLGVBQU8sT0FBTyxXQUFXLFdBQVcsR0FBRyxFQUFFLFdBQVc7QUFBQSxNQUN0RDtBQUVBLFVBQUksTUFBTSxXQUFXLENBQUMsR0FBRztBQUN2QixlQUFPLE9BQU8sV0FBVyxTQUFTLEdBQUcsSUFBSTtBQUFBLE1BQzNDO0FBRUEsWUFBTSxJQUFJLFVBQVUscUJBQXFCLENBQUMscUJBQXFCO0FBQUEsSUFDakU7QUFFQSxXQUFPLFdBQVcsc0JBQXNCLElBQUksT0FBTztBQUFBLE1BQ2pELE9BQU8sV0FBVztBQUFBLElBQ3BCO0FBRUEsV0FBTyxXQUFXLGdDQUFnQyxJQUFJLE9BQU87QUFBQSxNQUMzRCxPQUFPLFdBQVcsc0JBQXNCO0FBQUEsSUFDMUM7QUFFQSxXQUFPLFdBQVcsZ0NBQWdDLElBQUksT0FBTztBQUFBLE1BQzNELE9BQU8sV0FBVztBQUFBLE1BQ2xCLE9BQU8sV0FBVztBQUFBLElBQ3BCO0FBRUEsV0FBTyxVQUFVO0FBQUEsTUFDZjtBQUFBLElBQ0Y7QUFBQTtBQUFBOzs7QUNyb0JBO0FBQUE7QUFBQSxRQUFNLFNBQVMsVUFBUSxRQUFRO0FBQy9CLFFBQU0sRUFBRSxNQUFBSSxNQUFLLElBQUksVUFBUSxRQUFRO0FBQ2pDLFFBQU0sRUFBRSxpQkFBaUIsSUFBSTtBQUU3QixRQUFNLFVBQVUsSUFBSSxZQUFZO0FBS2hDLFFBQU0sd0JBQXdCO0FBQzlCLFFBQU0sd0JBQXdCO0FBSTlCLFFBQU0sNEJBQTRCO0FBSWxDLGFBQVMsaUJBQWtCLFNBQVM7QUFFbEMsYUFBTyxRQUFRLGFBQWEsT0FBTztBQUtuQyxVQUFJLFFBQVEsY0FBYyxTQUFTLElBQUk7QUFHdkMsY0FBUSxNQUFNLE1BQU0sQ0FBQztBQUdyQixZQUFNQyxZQUFXLEVBQUUsVUFBVSxFQUFFO0FBSy9CLFVBQUksV0FBVztBQUFBLFFBQ2I7QUFBQSxRQUNBO0FBQUEsUUFDQUE7QUFBQSxNQUNGO0FBUUEsWUFBTSxpQkFBaUIsU0FBUztBQUNoQyxpQkFBVyxzQkFBc0IsVUFBVSxNQUFNLElBQUk7QUFJckQsVUFBSUEsVUFBUyxZQUFZLE1BQU0sUUFBUTtBQUNyQyxlQUFPO0FBQUEsTUFDVDtBQUdBLE1BQUFBLFVBQVM7QUFHVCxZQUFNLGNBQWMsTUFBTSxNQUFNLGlCQUFpQixDQUFDO0FBR2xELFVBQUksT0FBTyxvQkFBb0IsV0FBVztBQUsxQyxVQUFJLHdCQUF3QixLQUFLLFFBQVEsR0FBRztBQUUxQyxjQUFNLGFBQWEsaUJBQWlCLElBQUk7QUFJeEMsZUFBTyxnQkFBZ0IsVUFBVTtBQUdqQyxZQUFJLFNBQVMsV0FBVztBQUN0QixpQkFBTztBQUFBLFFBQ1Q7QUFHQSxtQkFBVyxTQUFTLE1BQU0sR0FBRyxFQUFFO0FBSS9CLG1CQUFXLFNBQVMsUUFBUSxjQUFjLEVBQUU7QUFHNUMsbUJBQVcsU0FBUyxNQUFNLEdBQUcsRUFBRTtBQUFBLE1BQ2pDO0FBSUEsVUFBSSxTQUFTLFdBQVcsR0FBRyxHQUFHO0FBQzVCLG1CQUFXLGVBQWU7QUFBQSxNQUM1QjtBQUlBLFVBQUksaUJBQWlCLGNBQWMsUUFBUTtBQUkzQyxVQUFJLG1CQUFtQixXQUFXO0FBQ2hDLHlCQUFpQixjQUFjLDZCQUE2QjtBQUFBLE1BQzlEO0FBS0EsYUFBTyxFQUFFLFVBQVUsZ0JBQWdCLEtBQUs7QUFBQSxJQUMxQztBQU9BLGFBQVMsY0FBZSxLQUFLLGtCQUFrQixPQUFPO0FBQ3BELFVBQUksQ0FBQyxpQkFBaUI7QUFDcEIsZUFBTyxJQUFJO0FBQUEsTUFDYjtBQUVBLFlBQU0sT0FBTyxJQUFJO0FBQ2pCLFlBQU0sYUFBYSxJQUFJLEtBQUs7QUFFNUIsYUFBTyxlQUFlLElBQUksT0FBTyxLQUFLLFVBQVUsR0FBRyxLQUFLLFNBQVMsVUFBVTtBQUFBLElBQzdFO0FBUUEsYUFBUyw2QkFBOEIsV0FBVyxPQUFPQSxXQUFVO0FBRWpFLFVBQUksU0FBUztBQUliLGFBQU9BLFVBQVMsV0FBVyxNQUFNLFVBQVUsVUFBVSxNQUFNQSxVQUFTLFFBQVEsQ0FBQyxHQUFHO0FBRTlFLGtCQUFVLE1BQU1BLFVBQVMsUUFBUTtBQUdqQyxRQUFBQSxVQUFTO0FBQUEsTUFDWDtBQUdBLGFBQU87QUFBQSxJQUNUO0FBUUEsYUFBUyxpQ0FBa0MsTUFBTSxPQUFPQSxXQUFVO0FBQ2hFLFlBQU0sTUFBTSxNQUFNLFFBQVEsTUFBTUEsVUFBUyxRQUFRO0FBQ2pELFlBQU0sUUFBUUEsVUFBUztBQUV2QixVQUFJLFFBQVEsSUFBSTtBQUNkLFFBQUFBLFVBQVMsV0FBVyxNQUFNO0FBQzFCLGVBQU8sTUFBTSxNQUFNLEtBQUs7QUFBQSxNQUMxQjtBQUVBLE1BQUFBLFVBQVMsV0FBVztBQUNwQixhQUFPLE1BQU0sTUFBTSxPQUFPQSxVQUFTLFFBQVE7QUFBQSxJQUM3QztBQUlBLGFBQVMsb0JBQXFCLE9BQU87QUFFbkMsWUFBTSxRQUFRLFFBQVEsT0FBTyxLQUFLO0FBR2xDLGFBQU8sY0FBYyxLQUFLO0FBQUEsSUFDNUI7QUFJQSxhQUFTLGNBQWUsT0FBTztBQUc3QixZQUFNLFNBQVMsQ0FBQztBQUdoQixlQUFTQyxLQUFJLEdBQUdBLEtBQUksTUFBTSxRQUFRQSxNQUFLO0FBQ3JDLGNBQU0sT0FBTyxNQUFNQSxFQUFDO0FBR3BCLFlBQUksU0FBUyxJQUFNO0FBQ2pCLGlCQUFPLEtBQUssSUFBSTtBQUFBLFFBT2xCLFdBQ0UsU0FBUyxNQUNULENBQUMsb0JBQW9CLEtBQUssT0FBTyxhQUFhLE1BQU1BLEtBQUksQ0FBQyxHQUFHLE1BQU1BLEtBQUksQ0FBQyxDQUFDLENBQUMsR0FDekU7QUFDQSxpQkFBTyxLQUFLLEVBQUk7QUFBQSxRQUdsQixPQUFPO0FBR0wsZ0JBQU0sZUFBZSxPQUFPLGFBQWEsTUFBTUEsS0FBSSxDQUFDLEdBQUcsTUFBTUEsS0FBSSxDQUFDLENBQUM7QUFDbkUsZ0JBQU0sWUFBWSxPQUFPLFNBQVMsY0FBYyxFQUFFO0FBR2xELGlCQUFPLEtBQUssU0FBUztBQUdyQixVQUFBQSxNQUFLO0FBQUEsUUFDUDtBQUFBLE1BQ0Y7QUFHQSxhQUFPLFdBQVcsS0FBSyxNQUFNO0FBQUEsSUFDL0I7QUFJQSxhQUFTLGNBQWUsT0FBTztBQUc3QixjQUFRLHFCQUFxQixPQUFPLE1BQU0sSUFBSTtBQUk5QyxZQUFNRCxZQUFXLEVBQUUsVUFBVSxFQUFFO0FBSy9CLFlBQU0sT0FBTztBQUFBLFFBQ1g7QUFBQSxRQUNBO0FBQUEsUUFDQUE7QUFBQSxNQUNGO0FBS0EsVUFBSSxLQUFLLFdBQVcsS0FBSyxDQUFDLHNCQUFzQixLQUFLLElBQUksR0FBRztBQUMxRCxlQUFPO0FBQUEsTUFDVDtBQUlBLFVBQUlBLFVBQVMsV0FBVyxNQUFNLFFBQVE7QUFDcEMsZUFBTztBQUFBLE1BQ1Q7QUFHQSxNQUFBQSxVQUFTO0FBS1QsVUFBSSxVQUFVO0FBQUEsUUFDWjtBQUFBLFFBQ0E7QUFBQSxRQUNBQTtBQUFBLE1BQ0Y7QUFHQSxnQkFBVSxxQkFBcUIsU0FBUyxPQUFPLElBQUk7QUFJbkQsVUFBSSxRQUFRLFdBQVcsS0FBSyxDQUFDLHNCQUFzQixLQUFLLE9BQU8sR0FBRztBQUNoRSxlQUFPO0FBQUEsTUFDVDtBQUVBLFlBQU0sZ0JBQWdCLEtBQUssWUFBWTtBQUN2QyxZQUFNLG1CQUFtQixRQUFRLFlBQVk7QUFNN0MsWUFBTSxXQUFXO0FBQUEsUUFDZixNQUFNO0FBQUEsUUFDTixTQUFTO0FBQUE7QUFBQSxRQUVULFlBQVksb0JBQUksSUFBSTtBQUFBO0FBQUEsUUFFcEIsU0FBUyxHQUFHLGFBQWEsSUFBSSxnQkFBZ0I7QUFBQSxNQUMvQztBQUdBLGFBQU9BLFVBQVMsV0FBVyxNQUFNLFFBQVE7QUFFdkMsUUFBQUEsVUFBUztBQUlUO0FBQUE7QUFBQSxVQUVFLFVBQVEsc0JBQXNCLEtBQUssSUFBSTtBQUFBLFVBQ3ZDO0FBQUEsVUFDQUE7QUFBQSxRQUNGO0FBS0EsWUFBSSxnQkFBZ0I7QUFBQSxVQUNsQixDQUFDLFNBQVMsU0FBUyxPQUFPLFNBQVM7QUFBQSxVQUNuQztBQUFBLFVBQ0FBO0FBQUEsUUFDRjtBQUlBLHdCQUFnQixjQUFjLFlBQVk7QUFHMUMsWUFBSUEsVUFBUyxXQUFXLE1BQU0sUUFBUTtBQUdwQyxjQUFJLE1BQU1BLFVBQVMsUUFBUSxNQUFNLEtBQUs7QUFDcEM7QUFBQSxVQUNGO0FBR0EsVUFBQUEsVUFBUztBQUFBLFFBQ1g7QUFHQSxZQUFJQSxVQUFTLFdBQVcsTUFBTSxRQUFRO0FBQ3BDO0FBQUEsUUFDRjtBQUdBLFlBQUksaUJBQWlCO0FBSXJCLFlBQUksTUFBTUEsVUFBUyxRQUFRLE1BQU0sS0FBSztBQUlwQywyQkFBaUIsMEJBQTBCLE9BQU9BLFdBQVUsSUFBSTtBQUloRTtBQUFBLFlBQ0U7QUFBQSxZQUNBO0FBQUEsWUFDQUE7QUFBQSxVQUNGO0FBQUEsUUFHRixPQUFPO0FBSUwsMkJBQWlCO0FBQUEsWUFDZjtBQUFBLFlBQ0E7QUFBQSxZQUNBQTtBQUFBLFVBQ0Y7QUFHQSwyQkFBaUIscUJBQXFCLGdCQUFnQixPQUFPLElBQUk7QUFHakUsY0FBSSxlQUFlLFdBQVcsR0FBRztBQUMvQjtBQUFBLFVBQ0Y7QUFBQSxRQUNGO0FBUUEsWUFDRSxjQUFjLFdBQVcsS0FDekIsc0JBQXNCLEtBQUssYUFBYSxNQUN2QyxlQUFlLFdBQVcsS0FBSywwQkFBMEIsS0FBSyxjQUFjLE1BQzdFLENBQUMsU0FBUyxXQUFXLElBQUksYUFBYSxHQUN0QztBQUNBLG1CQUFTLFdBQVcsSUFBSSxlQUFlLGNBQWM7QUFBQSxRQUN2RDtBQUFBLE1BQ0Y7QUFHQSxhQUFPO0FBQUEsSUFDVDtBQUlBLGFBQVMsZ0JBQWlCRSxPQUFNO0FBRTlCLE1BQUFBLFFBQU9BLE1BQUssUUFBUSxxQ0FBcUMsRUFBRTtBQUkzRCxVQUFJQSxNQUFLLFNBQVMsTUFBTSxHQUFHO0FBR3pCLFFBQUFBLFFBQU9BLE1BQUssUUFBUSxRQUFRLEVBQUU7QUFBQSxNQUNoQztBQUlBLFVBQUlBLE1BQUssU0FBUyxNQUFNLEdBQUc7QUFDekIsZUFBTztBQUFBLE1BQ1Q7QUFPQSxVQUFJLGlCQUFpQixLQUFLQSxLQUFJLEdBQUc7QUFDL0IsZUFBTztBQUFBLE1BQ1Q7QUFFQSxZQUFNLFNBQVNILE1BQUtHLEtBQUk7QUFDeEIsWUFBTSxRQUFRLElBQUksV0FBVyxPQUFPLE1BQU07QUFFMUMsZUFBUyxPQUFPLEdBQUcsT0FBTyxPQUFPLFFBQVEsUUFBUTtBQUMvQyxjQUFNLElBQUksSUFBSSxPQUFPLFdBQVcsSUFBSTtBQUFBLE1BQ3RDO0FBRUEsYUFBTztBQUFBLElBQ1Q7QUFTQSxhQUFTLDBCQUEyQixPQUFPRixXQUFVLGNBQWM7QUFFakUsWUFBTSxnQkFBZ0JBLFVBQVM7QUFHL0IsVUFBSSxRQUFRO0FBSVosYUFBTyxNQUFNQSxVQUFTLFFBQVEsTUFBTSxHQUFHO0FBR3ZDLE1BQUFBLFVBQVM7QUFHVCxhQUFPLE1BQU07QUFJWCxpQkFBUztBQUFBLFVBQ1AsQ0FBQyxTQUFTLFNBQVMsT0FBTyxTQUFTO0FBQUEsVUFDbkM7QUFBQSxVQUNBQTtBQUFBLFFBQ0Y7QUFHQSxZQUFJQSxVQUFTLFlBQVksTUFBTSxRQUFRO0FBQ3JDO0FBQUEsUUFDRjtBQUlBLGNBQU0sbUJBQW1CLE1BQU1BLFVBQVMsUUFBUTtBQUdoRCxRQUFBQSxVQUFTO0FBR1QsWUFBSSxxQkFBcUIsTUFBTTtBQUc3QixjQUFJQSxVQUFTLFlBQVksTUFBTSxRQUFRO0FBQ3JDLHFCQUFTO0FBQ1Q7QUFBQSxVQUNGO0FBR0EsbUJBQVMsTUFBTUEsVUFBUyxRQUFRO0FBR2hDLFVBQUFBLFVBQVM7QUFBQSxRQUdYLE9BQU87QUFFTCxpQkFBTyxxQkFBcUIsR0FBRztBQUcvQjtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBR0EsVUFBSSxjQUFjO0FBQ2hCLGVBQU87QUFBQSxNQUNUO0FBSUEsYUFBTyxNQUFNLE1BQU0sZUFBZUEsVUFBUyxRQUFRO0FBQUEsSUFDckQ7QUFLQSxhQUFTLG1CQUFvQixVQUFVO0FBQ3JDLGFBQU8sYUFBYSxTQUFTO0FBQzdCLFlBQU0sRUFBRSxZQUFZLFFBQVEsSUFBSTtBQUloQyxVQUFJLGdCQUFnQjtBQUdwQixlQUFTLENBQUMsTUFBTSxLQUFLLEtBQUssV0FBVyxRQUFRLEdBQUc7QUFFOUMseUJBQWlCO0FBR2pCLHlCQUFpQjtBQUdqQix5QkFBaUI7QUFJakIsWUFBSSxDQUFDLHNCQUFzQixLQUFLLEtBQUssR0FBRztBQUd0QyxrQkFBUSxNQUFNLFFBQVEsV0FBVyxNQUFNO0FBR3ZDLGtCQUFRLE1BQU07QUFHZCxtQkFBUztBQUFBLFFBQ1g7QUFHQSx5QkFBaUI7QUFBQSxNQUNuQjtBQUdBLGFBQU87QUFBQSxJQUNUO0FBTUEsYUFBUyxpQkFBa0IsTUFBTTtBQUMvQixhQUFPLFNBQVMsUUFBUSxTQUFTLFFBQVEsU0FBUyxPQUFRLFNBQVM7QUFBQSxJQUNyRTtBQU1BLGFBQVMscUJBQXNCLEtBQUssVUFBVSxNQUFNLFdBQVcsTUFBTTtBQUNuRSxVQUFJLE9BQU87QUFDWCxVQUFJLFFBQVEsSUFBSSxTQUFTO0FBRXpCLFVBQUksU0FBUztBQUNYLGVBQU8sT0FBTyxJQUFJLFVBQVUsaUJBQWlCLElBQUksSUFBSSxDQUFDLEdBQUcsT0FBTztBQUFBLE1BQ2xFO0FBRUEsVUFBSSxVQUFVO0FBQ1osZUFBTyxRQUFRLEtBQUssaUJBQWlCLElBQUksS0FBSyxDQUFDLEdBQUcsUUFBUTtBQUFBLE1BQzVEO0FBRUEsYUFBTyxJQUFJLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFBQSxJQUNsQztBQU1BLGFBQVMsa0JBQW1CLE1BQU07QUFDaEMsYUFBTyxTQUFTLFFBQVEsU0FBUyxRQUFRLFNBQVMsT0FBUSxTQUFTLFFBQVEsU0FBUztBQUFBLElBQ3RGO0FBS0EsYUFBUyxzQkFBdUIsS0FBSyxVQUFVLE1BQU0sV0FBVyxNQUFNO0FBQ3BFLFVBQUksT0FBTztBQUNYLFVBQUksUUFBUSxJQUFJLFNBQVM7QUFFekIsVUFBSSxTQUFTO0FBQ1gsZUFBTyxPQUFPLElBQUksVUFBVSxrQkFBa0IsSUFBSSxJQUFJLENBQUMsR0FBRyxPQUFPO0FBQUEsTUFDbkU7QUFFQSxVQUFJLFVBQVU7QUFDWixlQUFPLFFBQVEsS0FBSyxrQkFBa0IsSUFBSSxLQUFLLENBQUMsR0FBRyxRQUFRO0FBQUEsTUFDN0Q7QUFFQSxhQUFPLElBQUksTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUFBLElBQ2xDO0FBRUEsV0FBTyxVQUFVO0FBQUEsTUFDZjtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGO0FBQUE7QUFBQTs7O0FDbG5CQTtBQUFBO0FBQUE7QUFFQSxRQUFNLEVBQUUsTUFBQUcsT0FBTSxNQUFNLFdBQVcsSUFBSSxVQUFRLFFBQVE7QUFDbkQsUUFBTSxFQUFFLE1BQU0sSUFBSSxVQUFRLE1BQU07QUFDaEMsUUFBTSxFQUFFLE9BQU8sSUFBSTtBQUNuQixRQUFNLEVBQUUsV0FBVyxJQUFJO0FBQ3ZCLFFBQU0sRUFBRSxPQUFPLElBQUk7QUFDbkIsUUFBTSxFQUFFLGVBQWUsbUJBQW1CLElBQUk7QUFDOUMsUUFBTSxFQUFFLG9CQUFvQixJQUFJO0FBQ2hDLFFBQU0sVUFBVSxJQUFJLFlBQVk7QUFFaEMsUUFBTSxPQUFOLE1BQU0sY0FBYUEsTUFBSztBQUFBLE1BQ3RCLFlBQWEsVUFBVSxVQUFVLFVBQVUsQ0FBQyxHQUFHO0FBSTdDLGVBQU8sb0JBQW9CLFdBQVcsR0FBRyxFQUFFLFFBQVEsbUJBQW1CLENBQUM7QUFFdkUsbUJBQVcsT0FBTyxXQUFXLG9CQUFvQixFQUFFLFFBQVE7QUFDM0QsbUJBQVcsT0FBTyxXQUFXLFVBQVUsUUFBUTtBQUMvQyxrQkFBVSxPQUFPLFdBQVcsZ0JBQWdCLE9BQU87QUFPbkQsY0FBTUMsS0FBSTtBQVVWLFlBQUksSUFBSSxRQUFRO0FBQ2hCLFlBQUk7QUFHSixpQkFBUztBQUNQLGNBQUksR0FBRztBQUNMLGdCQUFJLGNBQWMsQ0FBQztBQUVuQixnQkFBSSxNQUFNLFdBQVc7QUFDbkIsa0JBQUk7QUFFSixvQkFBTTtBQUFBLFlBQ1I7QUFFQSxnQkFBSSxtQkFBbUIsQ0FBQyxFQUFFLFlBQVk7QUFBQSxVQUN4QztBQU1BLGNBQUksUUFBUTtBQUFBLFFBQ2Q7QUFTQSxjQUFNLGlCQUFpQixVQUFVLE9BQU8sR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDO0FBQ3RELGFBQUssTUFBTSxJQUFJO0FBQUEsVUFDYixNQUFNQTtBQUFBLFVBQ04sY0FBYztBQUFBLFVBQ2QsTUFBTTtBQUFBLFFBQ1I7QUFBQSxNQUNGO0FBQUEsTUFFQSxJQUFJLE9BQVE7QUFDVixlQUFPLFdBQVcsTUFBTSxLQUFJO0FBRTVCLGVBQU8sS0FBSyxNQUFNLEVBQUU7QUFBQSxNQUN0QjtBQUFBLE1BRUEsSUFBSSxlQUFnQjtBQUNsQixlQUFPLFdBQVcsTUFBTSxLQUFJO0FBRTVCLGVBQU8sS0FBSyxNQUFNLEVBQUU7QUFBQSxNQUN0QjtBQUFBLE1BRUEsSUFBSSxPQUFRO0FBQ1YsZUFBTyxXQUFXLE1BQU0sS0FBSTtBQUU1QixlQUFPLEtBQUssTUFBTSxFQUFFO0FBQUEsTUFDdEI7QUFBQSxJQUNGO0FBRUEsUUFBTSxXQUFOLE1BQU0sVUFBUztBQUFBLE1BQ2IsWUFBYSxVQUFVLFVBQVUsVUFBVSxDQUFDLEdBQUc7QUFXN0MsY0FBTUEsS0FBSTtBQVVWLGNBQU0sSUFBSSxRQUFRO0FBU2xCLGNBQU0sSUFBSSxRQUFRLGdCQUFnQixLQUFLLElBQUk7QUFTM0MsYUFBSyxNQUFNLElBQUk7QUFBQSxVQUNiO0FBQUEsVUFDQSxNQUFNQTtBQUFBLFVBQ04sTUFBTTtBQUFBLFVBQ04sY0FBYztBQUFBLFFBQ2hCO0FBQUEsTUFDRjtBQUFBLE1BRUEsVUFBVyxNQUFNO0FBQ2YsZUFBTyxXQUFXLE1BQU0sU0FBUTtBQUVoQyxlQUFPLEtBQUssTUFBTSxFQUFFLFNBQVMsT0FBTyxHQUFHLElBQUk7QUFBQSxNQUM3QztBQUFBLE1BRUEsZUFBZ0IsTUFBTTtBQUNwQixlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sS0FBSyxNQUFNLEVBQUUsU0FBUyxZQUFZLEdBQUcsSUFBSTtBQUFBLE1BQ2xEO0FBQUEsTUFFQSxTQUFVLE1BQU07QUFDZCxlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sS0FBSyxNQUFNLEVBQUUsU0FBUyxNQUFNLEdBQUcsSUFBSTtBQUFBLE1BQzVDO0FBQUEsTUFFQSxRQUFTLE1BQU07QUFDYixlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sS0FBSyxNQUFNLEVBQUUsU0FBUyxLQUFLLEdBQUcsSUFBSTtBQUFBLE1BQzNDO0FBQUEsTUFFQSxJQUFJLE9BQVE7QUFDVixlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sS0FBSyxNQUFNLEVBQUUsU0FBUztBQUFBLE1BQy9CO0FBQUEsTUFFQSxJQUFJLE9BQVE7QUFDVixlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sS0FBSyxNQUFNLEVBQUUsU0FBUztBQUFBLE1BQy9CO0FBQUEsTUFFQSxJQUFJLE9BQVE7QUFDVixlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sS0FBSyxNQUFNLEVBQUU7QUFBQSxNQUN0QjtBQUFBLE1BRUEsSUFBSSxlQUFnQjtBQUNsQixlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sS0FBSyxNQUFNLEVBQUU7QUFBQSxNQUN0QjtBQUFBLE1BRUEsS0FBSyxPQUFPLFdBQVcsSUFBSztBQUMxQixlQUFPO0FBQUEsTUFDVDtBQUFBLElBQ0Y7QUFFQSxXQUFPLGlCQUFpQixLQUFLLFdBQVc7QUFBQSxNQUN0QyxDQUFDLE9BQU8sV0FBVyxHQUFHO0FBQUEsUUFDcEIsT0FBTztBQUFBLFFBQ1AsY0FBYztBQUFBLE1BQ2hCO0FBQUEsTUFDQSxNQUFNO0FBQUEsTUFDTixjQUFjO0FBQUEsSUFDaEIsQ0FBQztBQUVELFdBQU8sV0FBVyxPQUFPLE9BQU8sbUJBQW1CRCxLQUFJO0FBRXZELFdBQU8sV0FBVyxXQUFXLFNBQVUsR0FBRyxNQUFNO0FBQzlDLFVBQUksT0FBTyxLQUFLLEtBQUssQ0FBQyxNQUFNLFVBQVU7QUFDcEMsWUFBSSxXQUFXLENBQUMsR0FBRztBQUNqQixpQkFBTyxPQUFPLFdBQVcsS0FBSyxHQUFHLEVBQUUsUUFBUSxNQUFNLENBQUM7QUFBQSxRQUNwRDtBQUVBLFlBQ0UsWUFBWSxPQUFPLENBQUMsS0FDcEIsTUFBTSxpQkFBaUIsQ0FBQyxHQUN4QjtBQUNBLGlCQUFPLE9BQU8sV0FBVyxhQUFhLEdBQUcsSUFBSTtBQUFBLFFBQy9DO0FBQUEsTUFDRjtBQUVBLGFBQU8sT0FBTyxXQUFXLFVBQVUsR0FBRyxJQUFJO0FBQUEsSUFDNUM7QUFFQSxXQUFPLFdBQVcsb0JBQW9CLElBQUksT0FBTztBQUFBLE1BQy9DLE9BQU8sV0FBVztBQUFBLElBQ3BCO0FBR0EsV0FBTyxXQUFXLGtCQUFrQixPQUFPLG9CQUFvQjtBQUFBLE1BQzdEO0FBQUEsUUFDRSxLQUFLO0FBQUEsUUFDTCxXQUFXLE9BQU8sV0FBVyxXQUFXO0FBQUEsUUFDeEMsSUFBSSxlQUFnQjtBQUNsQixpQkFBTyxLQUFLLElBQUk7QUFBQSxRQUNsQjtBQUFBLE1BQ0Y7QUFBQSxNQUNBO0FBQUEsUUFDRSxLQUFLO0FBQUEsUUFDTCxXQUFXLE9BQU8sV0FBVztBQUFBLFFBQzdCLGNBQWM7QUFBQSxNQUNoQjtBQUFBLE1BQ0E7QUFBQSxRQUNFLEtBQUs7QUFBQSxRQUNMLFdBQVcsQ0FBQyxVQUFVO0FBQ3BCLGtCQUFRLE9BQU8sV0FBVyxVQUFVLEtBQUs7QUFDekMsa0JBQVEsTUFBTSxZQUFZO0FBRTFCLGNBQUksVUFBVSxVQUFVO0FBQ3RCLG9CQUFRO0FBQUEsVUFDVjtBQUVBLGlCQUFPO0FBQUEsUUFDVDtBQUFBLFFBQ0EsY0FBYztBQUFBLE1BQ2hCO0FBQUEsSUFDRixDQUFDO0FBT0QsYUFBUyxpQkFBa0IsT0FBTyxTQUFTO0FBR3pDLFlBQU0sUUFBUSxDQUFDO0FBR2YsaUJBQVcsV0FBVyxPQUFPO0FBRTNCLFlBQUksT0FBTyxZQUFZLFVBQVU7QUFFL0IsY0FBSSxJQUFJO0FBS1IsY0FBSSxRQUFRLFlBQVksVUFBVTtBQUNoQyxnQkFBSSx5QkFBeUIsQ0FBQztBQUFBLFVBQ2hDO0FBR0EsZ0JBQU0sS0FBSyxRQUFRLE9BQU8sQ0FBQyxDQUFDO0FBQUEsUUFDOUIsV0FDRSxNQUFNLGlCQUFpQixPQUFPLEtBQzlCLE1BQU0sYUFBYSxPQUFPLEdBQzFCO0FBSUEsY0FBSSxDQUFDLFFBQVEsUUFBUTtBQUNuQixrQkFBTSxLQUFLLElBQUksV0FBVyxPQUFPLENBQUM7QUFBQSxVQUNwQyxPQUFPO0FBQ0wsa0JBQU07QUFBQSxjQUNKLElBQUksV0FBVyxRQUFRLFFBQVEsUUFBUSxZQUFZLFFBQVEsVUFBVTtBQUFBLFlBQ3ZFO0FBQUEsVUFDRjtBQUFBLFFBQ0YsV0FBVyxXQUFXLE9BQU8sR0FBRztBQUc5QixnQkFBTSxLQUFLLE9BQU87QUFBQSxRQUNwQjtBQUFBLE1BQ0Y7QUFHQSxhQUFPO0FBQUEsSUFDVDtBQU1BLGFBQVMseUJBQTBCLEdBQUc7QUFFcEMsVUFBSSxtQkFBbUI7QUFNdkIsVUFBSSxRQUFRLGFBQWEsU0FBUztBQUNoQywyQkFBbUI7QUFBQSxNQUNyQjtBQUVBLGFBQU8sRUFBRSxRQUFRLFVBQVUsZ0JBQWdCO0FBQUEsSUFDN0M7QUFLQSxhQUFTLFdBQVksUUFBUTtBQUMzQixhQUNHLGNBQWMsa0JBQWtCLGNBQ2pDLGtCQUFrQixRQUNoQixXQUNDLE9BQU8sT0FBTyxXQUFXLGNBQzFCLE9BQU8sT0FBTyxnQkFBZ0IsZUFDOUIsT0FBTyxPQUFPLFdBQVcsTUFBTTtBQUFBLElBR3JDO0FBRUEsV0FBTyxVQUFVLEVBQUUsTUFBTSxVQUFVLFdBQVc7QUFBQTtBQUFBOzs7QUN2VjlDO0FBQUE7QUFBQTtBQUVBLFFBQU0sRUFBRSxZQUFZLGFBQWEsYUFBYSxJQUFJO0FBQ2xELFFBQU0sRUFBRSxPQUFPLElBQUk7QUFDbkIsUUFBTSxFQUFFLE1BQU0sWUFBWSxVQUFVLFdBQVcsSUFBSTtBQUNuRCxRQUFNLEVBQUUsT0FBTyxJQUFJO0FBQ25CLFFBQU0sRUFBRSxNQUFBRSxPQUFNLE1BQU0sV0FBVyxJQUFJLFVBQVEsUUFBUTtBQUduRCxRQUFNLE9BQU8sY0FBYztBQUczQixRQUFNLFdBQU4sTUFBTSxVQUFTO0FBQUEsTUFDYixZQUFhLE1BQU07QUFDakIsWUFBSSxTQUFTLFFBQVc7QUFDdEIsZ0JBQU0sT0FBTyxPQUFPLGlCQUFpQjtBQUFBLFlBQ25DLFFBQVE7QUFBQSxZQUNSLFVBQVU7QUFBQSxZQUNWLE9BQU8sQ0FBQyxXQUFXO0FBQUEsVUFDckIsQ0FBQztBQUFBLFFBQ0g7QUFFQSxhQUFLLE1BQU0sSUFBSSxDQUFDO0FBQUEsTUFDbEI7QUFBQSxNQUVBLE9BQVEsTUFBTSxPQUFPLFdBQVcsUUFBVztBQUN6QyxlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sb0JBQW9CLFdBQVcsR0FBRyxFQUFFLFFBQVEsa0JBQWtCLENBQUM7QUFFdEUsWUFBSSxVQUFVLFdBQVcsS0FBSyxDQUFDLFdBQVcsS0FBSyxHQUFHO0FBQ2hELGdCQUFNLElBQUk7QUFBQSxZQUNSO0FBQUEsVUFDRjtBQUFBLFFBQ0Y7QUFJQSxlQUFPLE9BQU8sV0FBVyxVQUFVLElBQUk7QUFDdkMsZ0JBQVEsV0FBVyxLQUFLLElBQ3BCLE9BQU8sV0FBVyxLQUFLLE9BQU8sRUFBRSxRQUFRLE1BQU0sQ0FBQyxJQUMvQyxPQUFPLFdBQVcsVUFBVSxLQUFLO0FBQ3JDLG1CQUFXLFVBQVUsV0FBVyxJQUM1QixPQUFPLFdBQVcsVUFBVSxRQUFRLElBQ3BDO0FBSUosY0FBTSxRQUFRLFVBQVUsTUFBTSxPQUFPLFFBQVE7QUFHN0MsYUFBSyxNQUFNLEVBQUUsS0FBSyxLQUFLO0FBQUEsTUFDekI7QUFBQSxNQUVBLE9BQVEsTUFBTTtBQUNaLGVBQU8sV0FBVyxNQUFNLFNBQVE7QUFFaEMsZUFBTyxvQkFBb0IsV0FBVyxHQUFHLEVBQUUsUUFBUSxrQkFBa0IsQ0FBQztBQUV0RSxlQUFPLE9BQU8sV0FBVyxVQUFVLElBQUk7QUFJdkMsYUFBSyxNQUFNLElBQUksS0FBSyxNQUFNLEVBQUUsT0FBTyxXQUFTLE1BQU0sU0FBUyxJQUFJO0FBQUEsTUFDakU7QUFBQSxNQUVBLElBQUssTUFBTTtBQUNULGVBQU8sV0FBVyxNQUFNLFNBQVE7QUFFaEMsZUFBTyxvQkFBb0IsV0FBVyxHQUFHLEVBQUUsUUFBUSxlQUFlLENBQUM7QUFFbkUsZUFBTyxPQUFPLFdBQVcsVUFBVSxJQUFJO0FBSXZDLGNBQU0sTUFBTSxLQUFLLE1BQU0sRUFBRSxVQUFVLENBQUMsVUFBVSxNQUFNLFNBQVMsSUFBSTtBQUNqRSxZQUFJLFFBQVEsSUFBSTtBQUNkLGlCQUFPO0FBQUEsUUFDVDtBQUlBLGVBQU8sS0FBSyxNQUFNLEVBQUUsR0FBRyxFQUFFO0FBQUEsTUFDM0I7QUFBQSxNQUVBLE9BQVEsTUFBTTtBQUNaLGVBQU8sV0FBVyxNQUFNLFNBQVE7QUFFaEMsZUFBTyxvQkFBb0IsV0FBVyxHQUFHLEVBQUUsUUFBUSxrQkFBa0IsQ0FBQztBQUV0RSxlQUFPLE9BQU8sV0FBVyxVQUFVLElBQUk7QUFNdkMsZUFBTyxLQUFLLE1BQU0sRUFDZixPQUFPLENBQUMsVUFBVSxNQUFNLFNBQVMsSUFBSSxFQUNyQyxJQUFJLENBQUMsVUFBVSxNQUFNLEtBQUs7QUFBQSxNQUMvQjtBQUFBLE1BRUEsSUFBSyxNQUFNO0FBQ1QsZUFBTyxXQUFXLE1BQU0sU0FBUTtBQUVoQyxlQUFPLG9CQUFvQixXQUFXLEdBQUcsRUFBRSxRQUFRLGVBQWUsQ0FBQztBQUVuRSxlQUFPLE9BQU8sV0FBVyxVQUFVLElBQUk7QUFJdkMsZUFBTyxLQUFLLE1BQU0sRUFBRSxVQUFVLENBQUMsVUFBVSxNQUFNLFNBQVMsSUFBSSxNQUFNO0FBQUEsTUFDcEU7QUFBQSxNQUVBLElBQUssTUFBTSxPQUFPLFdBQVcsUUFBVztBQUN0QyxlQUFPLFdBQVcsTUFBTSxTQUFRO0FBRWhDLGVBQU8sb0JBQW9CLFdBQVcsR0FBRyxFQUFFLFFBQVEsZUFBZSxDQUFDO0FBRW5FLFlBQUksVUFBVSxXQUFXLEtBQUssQ0FBQyxXQUFXLEtBQUssR0FBRztBQUNoRCxnQkFBTSxJQUFJO0FBQUEsWUFDUjtBQUFBLFVBQ0Y7QUFBQSxRQUNGO0FBT0EsZUFBTyxPQUFPLFdBQVcsVUFBVSxJQUFJO0FBQ3ZDLGdCQUFRLFdBQVcsS0FBSyxJQUNwQixPQUFPLFdBQVcsS0FBSyxPQUFPLEVBQUUsUUFBUSxNQUFNLENBQUMsSUFDL0MsT0FBTyxXQUFXLFVBQVUsS0FBSztBQUNyQyxtQkFBVyxVQUFVLFdBQVcsSUFDNUIsWUFBWSxRQUFRLElBQ3BCO0FBSUosY0FBTSxRQUFRLFVBQVUsTUFBTSxPQUFPLFFBQVE7QUFJN0MsY0FBTSxNQUFNLEtBQUssTUFBTSxFQUFFLFVBQVUsQ0FBQ0MsV0FBVUEsT0FBTSxTQUFTLElBQUk7QUFDakUsWUFBSSxRQUFRLElBQUk7QUFDZCxlQUFLLE1BQU0sSUFBSTtBQUFBLFlBQ2IsR0FBRyxLQUFLLE1BQU0sRUFBRSxNQUFNLEdBQUcsR0FBRztBQUFBLFlBQzVCO0FBQUEsWUFDQSxHQUFHLEtBQUssTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDQSxXQUFVQSxPQUFNLFNBQVMsSUFBSTtBQUFBLFVBQ3RFO0FBQUEsUUFDRixPQUFPO0FBRUwsZUFBSyxNQUFNLEVBQUUsS0FBSyxLQUFLO0FBQUEsUUFDekI7QUFBQSxNQUNGO0FBQUEsTUFFQSxVQUFXO0FBQ1QsZUFBTyxXQUFXLE1BQU0sU0FBUTtBQUVoQyxlQUFPO0FBQUEsVUFDTCxNQUFNLEtBQUssTUFBTSxFQUFFLElBQUksVUFBUSxDQUFDLEtBQUssTUFBTSxLQUFLLEtBQUssQ0FBQztBQUFBLFVBQ3REO0FBQUEsVUFDQTtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBQUEsTUFFQSxPQUFRO0FBQ04sZUFBTyxXQUFXLE1BQU0sU0FBUTtBQUVoQyxlQUFPO0FBQUEsVUFDTCxNQUFNLEtBQUssTUFBTSxFQUFFLElBQUksVUFBUSxDQUFDLEtBQUssTUFBTSxLQUFLLEtBQUssQ0FBQztBQUFBLFVBQ3REO0FBQUEsVUFDQTtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBQUEsTUFFQSxTQUFVO0FBQ1IsZUFBTyxXQUFXLE1BQU0sU0FBUTtBQUVoQyxlQUFPO0FBQUEsVUFDTCxNQUFNLEtBQUssTUFBTSxFQUFFLElBQUksVUFBUSxDQUFDLEtBQUssTUFBTSxLQUFLLEtBQUssQ0FBQztBQUFBLFVBQ3REO0FBQUEsVUFDQTtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxNQU1BLFFBQVMsWUFBWSxVQUFVLFlBQVk7QUFDekMsZUFBTyxXQUFXLE1BQU0sU0FBUTtBQUVoQyxlQUFPLG9CQUFvQixXQUFXLEdBQUcsRUFBRSxRQUFRLG1CQUFtQixDQUFDO0FBRXZFLFlBQUksT0FBTyxlQUFlLFlBQVk7QUFDcEMsZ0JBQU0sSUFBSTtBQUFBLFlBQ1I7QUFBQSxVQUNGO0FBQUEsUUFDRjtBQUVBLG1CQUFXLENBQUMsS0FBSyxLQUFLLEtBQUssTUFBTTtBQUMvQixxQkFBVyxNQUFNLFNBQVMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDO0FBQUEsUUFDOUM7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUVBLGFBQVMsVUFBVSxPQUFPLFFBQVEsSUFBSSxTQUFTLFVBQVU7QUFFekQsV0FBTyxpQkFBaUIsU0FBUyxXQUFXO0FBQUEsTUFDMUMsQ0FBQyxPQUFPLFdBQVcsR0FBRztBQUFBLFFBQ3BCLE9BQU87QUFBQSxRQUNQLGNBQWM7QUFBQSxNQUNoQjtBQUFBLElBQ0YsQ0FBQztBQVNELGFBQVMsVUFBVyxNQUFNLE9BQU8sVUFBVTtBQUt6QyxhQUFPLE9BQU8sS0FBSyxJQUFJLEVBQUUsU0FBUyxNQUFNO0FBSXhDLFVBQUksT0FBTyxVQUFVLFVBQVU7QUFDN0IsZ0JBQVEsT0FBTyxLQUFLLEtBQUssRUFBRSxTQUFTLE1BQU07QUFBQSxNQUM1QyxPQUFPO0FBS0wsWUFBSSxDQUFDLFdBQVcsS0FBSyxHQUFHO0FBQ3RCLGtCQUFRLGlCQUFpQkQsUUFDckIsSUFBSSxLQUFLLENBQUMsS0FBSyxHQUFHLFFBQVEsRUFBRSxNQUFNLE1BQU0sS0FBSyxDQUFDLElBQzlDLElBQUksU0FBUyxPQUFPLFFBQVEsRUFBRSxNQUFNLE1BQU0sS0FBSyxDQUFDO0FBQUEsUUFDdEQ7QUFJQSxZQUFJLGFBQWEsUUFBVztBQUUxQixnQkFBTSxVQUFVO0FBQUEsWUFDZCxNQUFNLE1BQU07QUFBQSxZQUNaLGNBQWMsTUFBTTtBQUFBLFVBQ3RCO0FBRUEsa0JBQVMsY0FBYyxpQkFBaUIsY0FBZSxpQkFBaUIsYUFDcEUsSUFBSSxLQUFLLENBQUMsS0FBSyxHQUFHLFVBQVUsT0FBTyxJQUNuQyxJQUFJLFNBQVMsT0FBTyxVQUFVLE9BQU87QUFBQSxRQUMzQztBQUFBLE1BQ0Y7QUFHQSxhQUFPLEVBQUUsTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFFQSxXQUFPLFVBQVUsRUFBRSxTQUFTO0FBQUE7QUFBQTs7O0FDeFE1QjtBQUFBO0FBQUE7QUFFQSxRQUFNLFNBQVM7QUFDZixRQUFNLE9BQU87QUFDYixRQUFNO0FBQUEsTUFDSjtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsSUFDRixJQUFJO0FBQ0osUUFBTSxFQUFFLFNBQVMsSUFBSTtBQUNyQixRQUFNLEVBQUUsT0FBTyxJQUFJO0FBQ25CLFFBQU0sRUFBRSxPQUFPLElBQUk7QUFDbkIsUUFBTSxFQUFFLGNBQUFFLGVBQWMsZ0JBQWdCLElBQUk7QUFDMUMsUUFBTSxFQUFFLE1BQUFDLE9BQU0sTUFBTSxXQUFXLElBQUksVUFBUSxRQUFRO0FBQ25ELFFBQU0sRUFBRSxVQUFVLElBQUk7QUFDdEIsUUFBTSxTQUFTLFVBQVEsUUFBUTtBQUMvQixRQUFNLEVBQUUsVUFBVSxJQUFJO0FBQ3RCLFFBQU0sRUFBRSxjQUFjLGNBQWMsSUFBSSxVQUFRLFlBQVk7QUFDNUQsUUFBTSxFQUFFLE1BQU0sV0FBVyxJQUFJO0FBQzdCLFFBQU0sRUFBRSxlQUFlLG1CQUFtQixJQUFJO0FBRTlDLFFBQUk7QUFDSixRQUFJO0FBQ0YsWUFBTSxTQUFTLFVBQVEsYUFBYTtBQUNwQyxlQUFTLENBQUMsUUFBUSxPQUFPLFVBQVUsR0FBRyxHQUFHO0FBQUEsSUFDM0MsUUFBUTtBQUNOLGVBQVMsQ0FBQyxRQUFRLEtBQUssTUFBTSxLQUFLLE9BQU8sR0FBRyxDQUFDO0FBQUEsSUFDL0M7QUFFQSxRQUFJLGlCQUFpQixXQUFXO0FBR2hDLFFBQU0sT0FBTyxjQUFjO0FBQzNCLFFBQU1DLGVBQWMsSUFBSSxZQUFZO0FBQ3BDLFFBQU0sY0FBYyxJQUFJLFlBQVk7QUFHcEMsYUFBUyxZQUFhLFFBQVEsWUFBWSxPQUFPO0FBQy9DLFVBQUksQ0FBQyxnQkFBZ0I7QUFDbkIseUJBQWlCLFVBQVEsWUFBWSxFQUFFO0FBQUEsTUFDekM7QUFHQSxVQUFJLFNBQVM7QUFHYixVQUFJLGtCQUFrQixnQkFBZ0I7QUFDcEMsaUJBQVM7QUFBQSxNQUNYLFdBQVcsV0FBVyxNQUFNLEdBQUc7QUFHN0IsaUJBQVMsT0FBTyxPQUFPO0FBQUEsTUFDekIsT0FBTztBQUdMLGlCQUFTLElBQUksZUFBZTtBQUFBLFVBQzFCLE1BQU0sS0FBTSxZQUFZO0FBQ3RCLHVCQUFXO0FBQUEsY0FDVCxPQUFPLFdBQVcsV0FBV0EsYUFBWSxPQUFPLE1BQU0sSUFBSTtBQUFBLFlBQzVEO0FBQ0EsMkJBQWUsTUFBTSxvQkFBb0IsVUFBVSxDQUFDO0FBQUEsVUFDdEQ7QUFBQSxVQUNBLFFBQVM7QUFBQSxVQUFDO0FBQUEsVUFDVixNQUFNO0FBQUEsUUFDUixDQUFDO0FBQUEsTUFDSDtBQUdBLGFBQU8scUJBQXFCLE1BQU0sQ0FBQztBQUduQyxVQUFJLFNBQVM7QUFHYixVQUFJLFNBQVM7QUFHYixVQUFJQyxVQUFTO0FBR2IsVUFBSSxPQUFPO0FBR1gsVUFBSSxPQUFPLFdBQVcsVUFBVTtBQUc5QixpQkFBUztBQUdULGVBQU87QUFBQSxNQUNULFdBQVcsa0JBQWtCLGlCQUFpQjtBQVM1QyxpQkFBUyxPQUFPLFNBQVM7QUFHekIsZUFBTztBQUFBLE1BQ1QsV0FBVyxjQUFjLE1BQU0sR0FBRztBQUloQyxpQkFBUyxJQUFJLFdBQVcsT0FBTyxNQUFNLENBQUM7QUFBQSxNQUN4QyxXQUFXLFlBQVksT0FBTyxNQUFNLEdBQUc7QUFJckMsaUJBQVMsSUFBSSxXQUFXLE9BQU8sT0FBTyxNQUFNLE9BQU8sWUFBWSxPQUFPLGFBQWEsT0FBTyxVQUFVLENBQUM7QUFBQSxNQUN2RyxXQUFXLEtBQUssZUFBZSxNQUFNLEdBQUc7QUFDdEMsY0FBTSxXQUFXLHdCQUF3QixHQUFHLE9BQU8sSUFBSSxDQUFDLEdBQUcsU0FBUyxJQUFJLEdBQUcsQ0FBQztBQUM1RSxjQUFNLFNBQVMsS0FBSyxRQUFRO0FBQUE7QUFHNUIsY0FBTSxTQUFTLENBQUMsUUFDZCxJQUFJLFFBQVEsT0FBTyxLQUFLLEVBQUUsUUFBUSxPQUFPLEtBQUssRUFBRSxRQUFRLE1BQU0sS0FBSztBQUNyRSxjQUFNLHFCQUFxQixDQUFDLFVBQVUsTUFBTSxRQUFRLGFBQWEsTUFBTTtBQVF2RSxjQUFNLFlBQVksQ0FBQztBQUNuQixjQUFNLEtBQUssSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDbEMsUUFBQUEsVUFBUztBQUNULFlBQUksc0JBQXNCO0FBRTFCLG1CQUFXLENBQUMsTUFBTSxLQUFLLEtBQUssUUFBUTtBQUNsQyxjQUFJLE9BQU8sVUFBVSxVQUFVO0FBQzdCLGtCQUFNQyxTQUFRRixhQUFZLE9BQU8sU0FDL0IsV0FBVyxPQUFPLG1CQUFtQixJQUFJLENBQUMsQ0FBQztBQUFBO0FBQUEsRUFDaEMsbUJBQW1CLEtBQUssQ0FBQztBQUFBLENBQU07QUFDNUMsc0JBQVUsS0FBS0UsTUFBSztBQUNwQixZQUFBRCxXQUFVQyxPQUFNO0FBQUEsVUFDbEIsT0FBTztBQUNMLGtCQUFNQSxTQUFRRixhQUFZLE9BQU8sR0FBRyxNQUFNLFdBQVcsT0FBTyxtQkFBbUIsSUFBSSxDQUFDLENBQUMsT0FDbEYsTUFBTSxPQUFPLGVBQWUsT0FBTyxNQUFNLElBQUksQ0FBQyxNQUFNLE1BQU07QUFBQSxnQkFFekQsTUFBTSxRQUFRLDBCQUNoQjtBQUFBO0FBQUEsQ0FBVTtBQUNaLHNCQUFVLEtBQUtFLFFBQU8sT0FBTyxFQUFFO0FBQy9CLGdCQUFJLE9BQU8sTUFBTSxTQUFTLFVBQVU7QUFDbEMsY0FBQUQsV0FBVUMsT0FBTSxhQUFhLE1BQU0sT0FBTyxHQUFHO0FBQUEsWUFDL0MsT0FBTztBQUNMLG9DQUFzQjtBQUFBLFlBQ3hCO0FBQUEsVUFDRjtBQUFBLFFBQ0Y7QUFFQSxjQUFNLFFBQVFGLGFBQVksT0FBTyxLQUFLLFFBQVEsSUFBSTtBQUNsRCxrQkFBVSxLQUFLLEtBQUs7QUFDcEIsUUFBQUMsV0FBVSxNQUFNO0FBQ2hCLFlBQUkscUJBQXFCO0FBQ3ZCLFVBQUFBLFVBQVM7QUFBQSxRQUNYO0FBR0EsaUJBQVM7QUFFVCxpQkFBUyxtQkFBb0I7QUFDM0IscUJBQVcsUUFBUSxXQUFXO0FBQzVCLGdCQUFJLEtBQUssUUFBUTtBQUNmLHFCQUFRLEtBQUssT0FBTztBQUFBLFlBQ3RCLE9BQU87QUFDTCxvQkFBTTtBQUFBLFlBQ1I7QUFBQSxVQUNGO0FBQUEsUUFDRjtBQUtBLGVBQU8sbUNBQW1DO0FBQUEsTUFDNUMsV0FBVyxXQUFXLE1BQU0sR0FBRztBQUk3QixpQkFBUztBQUdULFFBQUFBLFVBQVMsT0FBTztBQUloQixZQUFJLE9BQU8sTUFBTTtBQUNmLGlCQUFPLE9BQU87QUFBQSxRQUNoQjtBQUFBLE1BQ0YsV0FBVyxPQUFPLE9BQU8sT0FBTyxhQUFhLE1BQU0sWUFBWTtBQUU3RCxZQUFJLFdBQVc7QUFDYixnQkFBTSxJQUFJLFVBQVUsV0FBVztBQUFBLFFBQ2pDO0FBR0EsWUFBSSxLQUFLLFlBQVksTUFBTSxLQUFLLE9BQU8sUUFBUTtBQUM3QyxnQkFBTSxJQUFJO0FBQUEsWUFDUjtBQUFBLFVBQ0Y7QUFBQSxRQUNGO0FBRUEsaUJBQ0Usa0JBQWtCLGlCQUFpQixTQUFTLG1CQUFtQixNQUFNO0FBQUEsTUFDekU7QUFJQSxVQUFJLE9BQU8sV0FBVyxZQUFZLEtBQUssU0FBUyxNQUFNLEdBQUc7QUFDdkQsUUFBQUEsVUFBUyxPQUFPLFdBQVcsTUFBTTtBQUFBLE1BQ25DO0FBR0EsVUFBSSxVQUFVLE1BQU07QUFFbEIsWUFBSTtBQUNKLGlCQUFTLElBQUksZUFBZTtBQUFBLFVBQzFCLE1BQU0sUUFBUztBQUNiLHVCQUFXLE9BQU8sTUFBTSxFQUFFLE9BQU8sYUFBYSxFQUFFO0FBQUEsVUFDbEQ7QUFBQSxVQUNBLE1BQU0sS0FBTSxZQUFZO0FBQ3RCLGtCQUFNLEVBQUUsT0FBTyxLQUFLLElBQUksTUFBTSxTQUFTLEtBQUs7QUFDNUMsZ0JBQUksTUFBTTtBQUVSLDZCQUFlLE1BQU07QUFDbkIsMkJBQVcsTUFBTTtBQUFBLGNBQ25CLENBQUM7QUFBQSxZQUNILE9BQU87QUFJTCxrQkFBSSxDQUFDLFVBQVUsTUFBTSxHQUFHO0FBQ3RCLDJCQUFXLFFBQVEsSUFBSSxXQUFXLEtBQUssQ0FBQztBQUFBLGNBQzFDO0FBQUEsWUFDRjtBQUNBLG1CQUFPLFdBQVcsY0FBYztBQUFBLFVBQ2xDO0FBQUEsVUFDQSxNQUFNLE9BQVEsUUFBUTtBQUNwQixrQkFBTSxTQUFTLE9BQU87QUFBQSxVQUN4QjtBQUFBLFVBQ0EsTUFBTTtBQUFBLFFBQ1IsQ0FBQztBQUFBLE1BQ0g7QUFJQSxZQUFNLE9BQU8sRUFBRSxRQUFRLFFBQVEsUUFBQUEsUUFBTztBQUd0QyxhQUFPLENBQUMsTUFBTSxJQUFJO0FBQUEsSUFDcEI7QUFHQSxhQUFTLGtCQUFtQixRQUFRLFlBQVksT0FBTztBQUNyRCxVQUFJLENBQUMsZ0JBQWdCO0FBRW5CLHlCQUFpQixVQUFRLFlBQVksRUFBRTtBQUFBLE1BQ3pDO0FBTUEsVUFBSSxrQkFBa0IsZ0JBQWdCO0FBR3BDLGVBQU8sQ0FBQyxLQUFLLFlBQVksTUFBTSxHQUFHLHFDQUFxQztBQUV2RSxlQUFPLENBQUMsT0FBTyxRQUFRLHVCQUF1QjtBQUFBLE1BQ2hEO0FBR0EsYUFBTyxZQUFZLFFBQVEsU0FBUztBQUFBLElBQ3RDO0FBRUEsYUFBUyxVQUFXLE1BQU07QUFNeEIsWUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJO0FBQ3JDLFlBQU0sWUFBWSxnQkFBZ0IsTUFBTSxFQUFFLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztBQUc1RCxZQUFNLENBQUMsRUFBRSxVQUFVLElBQUksVUFBVSxJQUFJO0FBR3JDLFdBQUssU0FBUztBQUdkLGFBQU87QUFBQSxRQUNMLFFBQVE7QUFBQSxRQUNSLFFBQVEsS0FBSztBQUFBLFFBQ2IsUUFBUSxLQUFLO0FBQUEsTUFDZjtBQUFBLElBQ0Y7QUFFQSxvQkFBaUIsWUFBYSxNQUFNO0FBQ2xDLFVBQUksTUFBTTtBQUNSLFlBQUksYUFBYSxJQUFJLEdBQUc7QUFDdEIsZ0JBQU07QUFBQSxRQUNSLE9BQU87QUFDTCxnQkFBTSxTQUFTLEtBQUs7QUFFcEIsY0FBSSxLQUFLLFlBQVksTUFBTSxHQUFHO0FBQzVCLGtCQUFNLElBQUksVUFBVSxxQ0FBcUM7QUFBQSxVQUMzRDtBQUVBLGNBQUksT0FBTyxRQUFRO0FBQ2pCLGtCQUFNLElBQUksVUFBVSx1QkFBdUI7QUFBQSxVQUM3QztBQUdBLGlCQUFPLFNBQVMsSUFBSTtBQUVwQixpQkFBUTtBQUFBLFFBQ1Y7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUVBLGFBQVMsZUFBZ0IsT0FBTztBQUM5QixVQUFJLE1BQU0sU0FBUztBQUNqQixjQUFNLElBQUlILGNBQWEsOEJBQThCLFlBQVk7QUFBQSxNQUNuRTtBQUFBLElBQ0Y7QUFFQSxhQUFTLGlCQUFrQixVQUFVO0FBQ25DLFlBQU1LLFdBQVU7QUFBQSxRQUNkLE9BQVE7QUFNTixpQkFBTyxnQkFBZ0IsTUFBTSxDQUFDLFVBQVU7QUFDdEMsZ0JBQUksV0FBVyxhQUFhLElBQUk7QUFFaEMsZ0JBQUksYUFBYSxXQUFXO0FBQzFCLHlCQUFXO0FBQUEsWUFDYixXQUFXLFVBQVU7QUFDbkIseUJBQVcsbUJBQW1CLFFBQVE7QUFBQSxZQUN4QztBQUlBLG1CQUFPLElBQUlKLE1BQUssQ0FBQyxLQUFLLEdBQUcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUFBLFVBQzdDLEdBQUcsUUFBUTtBQUFBLFFBQ2I7QUFBQSxRQUVBLGNBQWU7QUFLYixpQkFBTyxnQkFBZ0IsTUFBTSxDQUFDLFVBQVU7QUFDdEMsbUJBQU8sSUFBSSxXQUFXLEtBQUssRUFBRTtBQUFBLFVBQy9CLEdBQUcsUUFBUTtBQUFBLFFBQ2I7QUFBQSxRQUVBLE9BQVE7QUFHTixpQkFBTyxnQkFBZ0IsTUFBTSxpQkFBaUIsUUFBUTtBQUFBLFFBQ3hEO0FBQUEsUUFFQSxPQUFRO0FBR04saUJBQU8sZ0JBQWdCLE1BQU0sb0JBQW9CLFFBQVE7QUFBQSxRQUMzRDtBQUFBLFFBRUEsTUFBTSxXQUFZO0FBQ2hCLGlCQUFPLFdBQVcsTUFBTSxRQUFRO0FBRWhDLHlCQUFlLEtBQUssTUFBTSxDQUFDO0FBRTNCLGdCQUFNLGNBQWMsS0FBSyxRQUFRLElBQUksY0FBYztBQUduRCxjQUFJLHVCQUF1QixLQUFLLFdBQVcsR0FBRztBQUM1QyxrQkFBTSxVQUFVLENBQUM7QUFDakIsdUJBQVcsQ0FBQyxLQUFLLEtBQUssS0FBSyxLQUFLLFFBQVMsU0FBUSxJQUFJLFlBQVksQ0FBQyxJQUFJO0FBRXRFLGtCQUFNLG1CQUFtQixJQUFJLFNBQVM7QUFFdEMsZ0JBQUk7QUFFSixnQkFBSTtBQUNGLHVCQUFTLElBQUksT0FBTztBQUFBLGdCQUNsQjtBQUFBLGdCQUNBLGNBQWM7QUFBQSxjQUNoQixDQUFDO0FBQUEsWUFDSCxTQUFTLEtBQUs7QUFDWixvQkFBTSxJQUFJRCxjQUFhLEdBQUcsR0FBRyxJQUFJLFlBQVk7QUFBQSxZQUMvQztBQUVBLG1CQUFPLEdBQUcsU0FBUyxDQUFDLE1BQU0sVUFBVTtBQUNsQywrQkFBaUIsT0FBTyxNQUFNLEtBQUs7QUFBQSxZQUNyQyxDQUFDO0FBQ0QsbUJBQU8sR0FBRyxRQUFRLENBQUMsTUFBTSxPQUFPLFVBQVUsVUFBVSxhQUFhO0FBQy9ELG9CQUFNLFNBQVMsQ0FBQztBQUVoQixrQkFBSSxhQUFhLFlBQVksU0FBUyxZQUFZLE1BQU0sVUFBVTtBQUNoRSxvQkFBSSxjQUFjO0FBRWxCLHNCQUFNLEdBQUcsUUFBUSxDQUFDLFVBQVU7QUFDMUIsaUNBQWUsTUFBTSxTQUFTLEVBQUUsUUFBUSxZQUFZLEVBQUU7QUFFdEQsd0JBQU0sTUFBTSxZQUFZLFNBQVMsWUFBWSxTQUFTO0FBQ3RELHlCQUFPLEtBQUssT0FBTyxLQUFLLFlBQVksTUFBTSxHQUFHLEdBQUcsR0FBRyxRQUFRLENBQUM7QUFFNUQsZ0NBQWMsWUFBWSxNQUFNLEdBQUc7QUFBQSxnQkFDckMsQ0FBQztBQUNELHNCQUFNLEdBQUcsT0FBTyxNQUFNO0FBQ3BCLHlCQUFPLEtBQUssT0FBTyxLQUFLLGFBQWEsUUFBUSxDQUFDO0FBQzlDLG1DQUFpQixPQUFPLE1BQU0sSUFBSSxLQUFLLFFBQVEsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDLENBQUM7QUFBQSxnQkFDOUUsQ0FBQztBQUFBLGNBQ0gsT0FBTztBQUNMLHNCQUFNLEdBQUcsUUFBUSxDQUFDLFVBQVU7QUFDMUIseUJBQU8sS0FBSyxLQUFLO0FBQUEsZ0JBQ25CLENBQUM7QUFDRCxzQkFBTSxHQUFHLE9BQU8sTUFBTTtBQUNwQixtQ0FBaUIsT0FBTyxNQUFNLElBQUksS0FBSyxRQUFRLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQyxDQUFDO0FBQUEsZ0JBQzlFLENBQUM7QUFBQSxjQUNIO0FBQUEsWUFDRixDQUFDO0FBRUQsa0JBQU0sZ0JBQWdCLElBQUksUUFBUSxDQUFDTSxVQUFTLFdBQVc7QUFDckQscUJBQU8sR0FBRyxVQUFVQSxRQUFPO0FBQzNCLHFCQUFPLEdBQUcsU0FBUyxDQUFDLFFBQVEsT0FBTyxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFBQSxZQUN4RCxDQUFDO0FBRUQsZ0JBQUksS0FBSyxTQUFTLEtBQU0sa0JBQWlCLFNBQVMsWUFBWSxLQUFLLE1BQU0sRUFBRSxJQUFJLEVBQUcsUUFBTyxNQUFNLEtBQUs7QUFDcEcsbUJBQU8sSUFBSTtBQUNYLGtCQUFNO0FBRU4sbUJBQU87QUFBQSxVQUNULFdBQVcscUNBQXFDLEtBQUssV0FBVyxHQUFHO0FBSWpFLGdCQUFJO0FBQ0osZ0JBQUk7QUFDRixrQkFBSSxPQUFPO0FBSVgsb0JBQU0sbUJBQW1CLElBQUksWUFBWSxTQUFTLEVBQUUsV0FBVyxLQUFLLENBQUM7QUFFckUsK0JBQWlCLFNBQVMsWUFBWSxLQUFLLE1BQU0sRUFBRSxJQUFJLEdBQUc7QUFDeEQsb0JBQUksQ0FBQyxhQUFhLEtBQUssR0FBRztBQUN4Qix3QkFBTSxJQUFJLFVBQVUsMkJBQTJCO0FBQUEsZ0JBQ2pEO0FBQ0Esd0JBQVEsaUJBQWlCLE9BQU8sT0FBTyxFQUFFLFFBQVEsS0FBSyxDQUFDO0FBQUEsY0FDekQ7QUFDQSxzQkFBUSxpQkFBaUIsT0FBTztBQUNoQyx3QkFBVSxJQUFJLGdCQUFnQixJQUFJO0FBQUEsWUFDcEMsU0FBUyxLQUFLO0FBR1osb0JBQU0sT0FBTyxPQUFPLElBQUksVUFBVSxHQUFHLEVBQUUsT0FBTyxJQUFJLENBQUM7QUFBQSxZQUNyRDtBQUdBLGtCQUFNLFdBQVcsSUFBSSxTQUFTO0FBQzlCLHVCQUFXLENBQUMsTUFBTSxLQUFLLEtBQUssU0FBUztBQUNuQyx1QkFBUyxPQUFPLE1BQU0sS0FBSztBQUFBLFlBQzdCO0FBQ0EsbUJBQU87QUFBQSxVQUNULE9BQU87QUFHTCxrQkFBTSxRQUFRLFFBQVE7QUFFdEIsMkJBQWUsS0FBSyxNQUFNLENBQUM7QUFHM0Isa0JBQU0sT0FBTyxPQUFPLFVBQVU7QUFBQSxjQUM1QixRQUFRLEdBQUcsU0FBUyxJQUFJO0FBQUEsY0FDeEIsU0FBUztBQUFBLFlBQ1gsQ0FBQztBQUFBLFVBQ0g7QUFBQSxRQUNGO0FBQUEsTUFDRjtBQUVBLGFBQU9EO0FBQUEsSUFDVDtBQUVBLGFBQVMsVUFBVyxXQUFXO0FBQzdCLGFBQU8sT0FBTyxVQUFVLFdBQVcsaUJBQWlCLFNBQVMsQ0FBQztBQUFBLElBQ2hFO0FBUUEsbUJBQWUsZ0JBQWlCLFFBQVEsdUJBQXVCLFVBQVU7QUFDdkUsYUFBTyxXQUFXLFFBQVEsUUFBUTtBQUVsQyxxQkFBZSxPQUFPLE1BQU0sQ0FBQztBQUk3QixVQUFJLGFBQWEsT0FBTyxNQUFNLEVBQUUsSUFBSSxHQUFHO0FBQ3JDLGNBQU0sSUFBSSxVQUFVLGtCQUFrQjtBQUFBLE1BQ3hDO0FBR0EsWUFBTSxVQUFVLHNCQUFzQjtBQUd0QyxZQUFNLGFBQWEsQ0FBQ0UsV0FBVSxRQUFRLE9BQU9BLE1BQUs7QUFNbEQsWUFBTSxlQUFlLENBQUNDLFVBQVM7QUFDN0IsWUFBSTtBQUNGLGtCQUFRLFFBQVEsc0JBQXNCQSxLQUFJLENBQUM7QUFBQSxRQUM3QyxTQUFTLEdBQUc7QUFDVixxQkFBVyxDQUFDO0FBQUEsUUFDZDtBQUFBLE1BQ0Y7QUFJQSxVQUFJLE9BQU8sTUFBTSxFQUFFLFFBQVEsTUFBTTtBQUMvQixxQkFBYSxJQUFJLFdBQVcsQ0FBQztBQUM3QixlQUFPLFFBQVE7QUFBQSxNQUNqQjtBQUlBLFlBQU0sY0FBYyxPQUFPLE1BQU0sRUFBRSxNQUFNLGNBQWMsVUFBVTtBQUdqRSxhQUFPLFFBQVE7QUFBQSxJQUNqQjtBQUdBLGFBQVMsYUFBYyxNQUFNO0FBSTNCLGFBQU8sUUFBUSxTQUFTLEtBQUssT0FBTyxVQUFVLEtBQUssWUFBWSxLQUFLLE1BQU07QUFBQSxJQUM1RTtBQU1BLGFBQVMsZ0JBQWlCLFFBQVE7QUFDaEMsVUFBSSxPQUFPLFdBQVcsR0FBRztBQUN2QixlQUFPO0FBQUEsTUFDVDtBQU9BLFVBQUksT0FBTyxDQUFDLE1BQU0sT0FBUSxPQUFPLENBQUMsTUFBTSxPQUFRLE9BQU8sQ0FBQyxNQUFNLEtBQU07QUFDbEUsaUJBQVMsT0FBTyxTQUFTLENBQUM7QUFBQSxNQUM1QjtBQUlBLFlBQU0sU0FBUyxZQUFZLE9BQU8sTUFBTTtBQUd4QyxhQUFPO0FBQUEsSUFDVDtBQU1BLGFBQVMsbUJBQW9CLE9BQU87QUFDbEMsYUFBTyxLQUFLLE1BQU0sZ0JBQWdCLEtBQUssQ0FBQztBQUFBLElBQzFDO0FBTUEsYUFBUyxhQUFjLFFBQVE7QUFDN0IsWUFBTSxFQUFFLFlBQVksSUFBSSxPQUFPLE1BQU07QUFDckMsWUFBTSxjQUFjLFlBQVksSUFBSSxjQUFjO0FBRWxELFVBQUksZ0JBQWdCLE1BQU07QUFDeEIsZUFBTztBQUFBLE1BQ1Q7QUFFQSxhQUFPLGNBQWMsV0FBVztBQUFBLElBQ2xDO0FBRUEsV0FBTyxVQUFVO0FBQUEsTUFDZjtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFBQTtBQUFBOzs7QUNwbUJBO0FBQUE7QUFBQTtBQUVBLFFBQU07QUFBQSxNQUNKO0FBQUEsTUFDQTtBQUFBLElBQ0YsSUFBSTtBQUNKLFFBQU0sU0FBUyxVQUFRLFFBQVE7QUFDL0IsUUFBTSxFQUFFLG9CQUFvQixtQkFBbUIsbUJBQW1CLElBQUk7QUFDdEUsUUFBTSxPQUFPO0FBVWIsUUFBTSxjQUFjO0FBUXBCLFFBQU0sa0JBQWtCO0FBR3hCLFFBQU0sbUJBQW1CO0FBRXpCLFFBQU0sV0FBVyxPQUFPLFNBQVM7QUFFakMsUUFBTSxXQUFXLENBQUM7QUFFbEIsUUFBSTtBQUVKLFFBQUk7QUFDRixZQUFNLHFCQUFxQixVQUFRLHFCQUFxQjtBQUN4RCxlQUFTLFNBQVMsbUJBQW1CLFFBQVEsdUJBQXVCO0FBQ3BFLGVBQVMsV0FBVyxtQkFBbUIsUUFBUSx5QkFBeUI7QUFDeEUsZUFBUyxVQUFVLG1CQUFtQixRQUFRLHdCQUF3QjtBQUN0RSxlQUFTLFdBQVcsbUJBQW1CLFFBQVEseUJBQXlCO0FBQ3hFLGVBQVMsUUFBUSxtQkFBbUIsUUFBUSxzQkFBc0I7QUFBQSxJQUNwRSxRQUFRO0FBQ04sZUFBUyxTQUFTLEVBQUUsZ0JBQWdCLE1BQU07QUFDMUMsZUFBUyxXQUFXLEVBQUUsZ0JBQWdCLE1BQU07QUFDNUMsZUFBUyxVQUFVLEVBQUUsZ0JBQWdCLE1BQU07QUFDM0MsZUFBUyxXQUFXLEVBQUUsZ0JBQWdCLE1BQU07QUFDNUMsZUFBUyxRQUFRLEVBQUUsZ0JBQWdCLE1BQU07QUFBQSxJQUMzQztBQUVBLFFBQU0sVUFBTixNQUFNLFNBQVE7QUFBQSxNQUNaLFlBQWEsUUFBUTtBQUFBLFFBQ25CLE1BQUFDO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsTUFDRixHQUFHLFNBQVM7QUFDVixZQUFJLE9BQU9BLFVBQVMsVUFBVTtBQUM1QixnQkFBTSxJQUFJLHFCQUFxQix1QkFBdUI7QUFBQSxRQUN4RCxXQUNFQSxNQUFLLENBQUMsTUFBTSxPQUNaLEVBQUVBLE1BQUssV0FBVyxTQUFTLEtBQUtBLE1BQUssV0FBVyxVQUFVLE1BQzFELFdBQVcsV0FDWDtBQUNBLGdCQUFNLElBQUkscUJBQXFCLG9EQUFvRDtBQUFBLFFBQ3JGLFdBQVcsaUJBQWlCLEtBQUtBLEtBQUksTUFBTSxNQUFNO0FBQy9DLGdCQUFNLElBQUkscUJBQXFCLHNCQUFzQjtBQUFBLFFBQ3ZEO0FBRUEsWUFBSSxPQUFPLFdBQVcsVUFBVTtBQUM5QixnQkFBTSxJQUFJLHFCQUFxQix5QkFBeUI7QUFBQSxRQUMxRCxXQUFXLFlBQVksS0FBSyxNQUFNLE1BQU0sTUFBTTtBQUM1QyxnQkFBTSxJQUFJLHFCQUFxQix3QkFBd0I7QUFBQSxRQUN6RDtBQUVBLFlBQUksV0FBVyxPQUFPLFlBQVksVUFBVTtBQUMxQyxnQkFBTSxJQUFJLHFCQUFxQiwwQkFBMEI7QUFBQSxRQUMzRDtBQUVBLFlBQUksa0JBQWtCLFNBQVMsQ0FBQyxPQUFPLFNBQVMsY0FBYyxLQUFLLGlCQUFpQixJQUFJO0FBQ3RGLGdCQUFNLElBQUkscUJBQXFCLHdCQUF3QjtBQUFBLFFBQ3pEO0FBRUEsWUFBSSxlQUFlLFNBQVMsQ0FBQyxPQUFPLFNBQVMsV0FBVyxLQUFLLGNBQWMsSUFBSTtBQUM3RSxnQkFBTSxJQUFJLHFCQUFxQixxQkFBcUI7QUFBQSxRQUN0RDtBQUVBLFlBQUksU0FBUyxRQUFRLE9BQU8sVUFBVSxXQUFXO0FBQy9DLGdCQUFNLElBQUkscUJBQXFCLGVBQWU7QUFBQSxRQUNoRDtBQUVBLFlBQUksa0JBQWtCLFFBQVEsT0FBTyxtQkFBbUIsV0FBVztBQUNqRSxnQkFBTSxJQUFJLHFCQUFxQix3QkFBd0I7QUFBQSxRQUN6RDtBQUVBLGFBQUssaUJBQWlCO0FBRXRCLGFBQUssY0FBYztBQUVuQixhQUFLLGVBQWUsaUJBQWlCO0FBRXJDLGFBQUssU0FBUztBQUVkLGFBQUssUUFBUTtBQUViLFlBQUksUUFBUSxNQUFNO0FBQ2hCLGVBQUssT0FBTztBQUFBLFFBQ2QsV0FBVyxLQUFLLFNBQVMsSUFBSSxHQUFHO0FBQzlCLGVBQUssT0FBTztBQUVaLGdCQUFNLFNBQVMsS0FBSyxLQUFLO0FBQ3pCLGNBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxhQUFhO0FBQ2xDLGlCQUFLLGFBQWEsU0FBUyxjQUFlO0FBQ3hDLG1CQUFLLFFBQVEsSUFBSTtBQUFBLFlBQ25CO0FBQ0EsaUJBQUssS0FBSyxHQUFHLE9BQU8sS0FBSyxVQUFVO0FBQUEsVUFDckM7QUFFQSxlQUFLLGVBQWUsU0FBTztBQUN6QixnQkFBSSxLQUFLLE9BQU87QUFDZCxtQkFBSyxNQUFNLEdBQUc7QUFBQSxZQUNoQixPQUFPO0FBQ0wsbUJBQUssUUFBUTtBQUFBLFlBQ2Y7QUFBQSxVQUNGO0FBQ0EsZUFBSyxLQUFLLEdBQUcsU0FBUyxLQUFLLFlBQVk7QUFBQSxRQUN6QyxXQUFXLEtBQUssU0FBUyxJQUFJLEdBQUc7QUFDOUIsZUFBSyxPQUFPLEtBQUssYUFBYSxPQUFPO0FBQUEsUUFDdkMsV0FBVyxZQUFZLE9BQU8sSUFBSSxHQUFHO0FBQ25DLGVBQUssT0FBTyxLQUFLLE9BQU8sYUFBYSxPQUFPLEtBQUssS0FBSyxRQUFRLEtBQUssWUFBWSxLQUFLLFVBQVUsSUFBSTtBQUFBLFFBQ3BHLFdBQVcsZ0JBQWdCLGFBQWE7QUFDdEMsZUFBSyxPQUFPLEtBQUssYUFBYSxPQUFPLEtBQUssSUFBSSxJQUFJO0FBQUEsUUFDcEQsV0FBVyxPQUFPLFNBQVMsVUFBVTtBQUNuQyxlQUFLLE9BQU8sS0FBSyxTQUFTLE9BQU8sS0FBSyxJQUFJLElBQUk7QUFBQSxRQUNoRCxXQUFXLEtBQUssZUFBZSxJQUFJLEtBQUssS0FBSyxXQUFXLElBQUksS0FBSyxLQUFLLFdBQVcsSUFBSSxHQUFHO0FBQ3RGLGVBQUssT0FBTztBQUFBLFFBQ2QsT0FBTztBQUNMLGdCQUFNLElBQUkscUJBQXFCLHVGQUF1RjtBQUFBLFFBQ3hIO0FBRUEsYUFBSyxZQUFZO0FBRWpCLGFBQUssVUFBVTtBQUVmLGFBQUssVUFBVSxXQUFXO0FBRTFCLGFBQUssT0FBTyxRQUFRLEtBQUssU0FBU0EsT0FBTSxLQUFLLElBQUlBO0FBRWpELGFBQUssU0FBUztBQUVkLGFBQUssYUFBYSxjQUFjLE9BQzVCLFdBQVcsVUFBVSxXQUFXLFFBQ2hDO0FBRUosYUFBSyxXQUFXLFlBQVksT0FBTyxRQUFRO0FBRTNDLGFBQUssUUFBUSxTQUFTLE9BQU8sT0FBTztBQUVwQyxhQUFLLE9BQU87QUFFWixhQUFLLGdCQUFnQjtBQUVyQixhQUFLLGNBQWM7QUFFbkIsYUFBSyxVQUFVO0FBR2YsYUFBSyxpQkFBaUIsa0JBQWtCLE9BQU8saUJBQWlCO0FBRWhFLFlBQUksTUFBTSxRQUFRLE9BQU8sR0FBRztBQUMxQixjQUFJLFFBQVEsU0FBUyxNQUFNLEdBQUc7QUFDNUIsa0JBQU0sSUFBSSxxQkFBcUIsNEJBQTRCO0FBQUEsVUFDN0Q7QUFDQSxtQkFBU0MsS0FBSSxHQUFHQSxLQUFJLFFBQVEsUUFBUUEsTUFBSyxHQUFHO0FBQzFDLDBCQUFjLE1BQU0sUUFBUUEsRUFBQyxHQUFHLFFBQVFBLEtBQUksQ0FBQyxDQUFDO0FBQUEsVUFDaEQ7QUFBQSxRQUNGLFdBQVcsV0FBVyxPQUFPLFlBQVksVUFBVTtBQUNqRCxnQkFBTSxPQUFPLE9BQU8sS0FBSyxPQUFPO0FBQ2hDLG1CQUFTQSxLQUFJLEdBQUdBLEtBQUksS0FBSyxRQUFRQSxNQUFLO0FBQ3BDLGtCQUFNLE1BQU0sS0FBS0EsRUFBQztBQUNsQiwwQkFBYyxNQUFNLEtBQUssUUFBUSxHQUFHLENBQUM7QUFBQSxVQUN2QztBQUFBLFFBQ0YsV0FBVyxXQUFXLE1BQU07QUFDMUIsZ0JBQU0sSUFBSSxxQkFBcUIsdUNBQXVDO0FBQUEsUUFDeEU7QUFFQSxZQUFJLEtBQUssZUFBZSxLQUFLLElBQUksR0FBRztBQUNsQyxjQUFJLEtBQUssWUFBWSxNQUFPLEtBQUssY0FBYyxNQUFNLEtBQUssWUFBWSxHQUFJO0FBQ3hFLGtCQUFNLElBQUkscUJBQXFCLDhEQUE4RDtBQUFBLFVBQy9GO0FBRUEsY0FBSSxDQUFDLGFBQWE7QUFDaEIsMEJBQWMsZUFBNEI7QUFBQSxVQUM1QztBQUVBLGdCQUFNLENBQUMsWUFBWSxXQUFXLElBQUksWUFBWSxJQUFJO0FBQ2xELGNBQUksS0FBSyxlQUFlLE1BQU07QUFDNUIsaUJBQUssY0FBYztBQUNuQixpQkFBSyxXQUFXLGlCQUFpQixXQUFXO0FBQUE7QUFBQSxVQUM5QztBQUNBLGVBQUssT0FBTyxXQUFXO0FBQ3ZCLGVBQUssZ0JBQWdCLFdBQVc7QUFBQSxRQUNsQyxXQUFXLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxlQUFlLFFBQVEsS0FBSyxNQUFNO0FBQ3pFLGVBQUssY0FBYyxLQUFLO0FBQ3hCLGVBQUssV0FBVyxpQkFBaUIsS0FBSyxJQUFJO0FBQUE7QUFBQSxRQUM1QztBQUVBLGFBQUssZ0JBQWdCLFNBQVMsUUFBUSxPQUFPO0FBRTdDLGFBQUssYUFBYSxLQUFLLGNBQWMsS0FBSyxJQUFJO0FBRTlDLGFBQUssUUFBUSxJQUFJO0FBRWpCLFlBQUksU0FBUyxPQUFPLGdCQUFnQjtBQUNsQyxtQkFBUyxPQUFPLFFBQVEsRUFBRSxTQUFTLEtBQUssQ0FBQztBQUFBLFFBQzNDO0FBQUEsTUFDRjtBQUFBLE1BRUEsV0FBWSxPQUFPO0FBQ2pCLFlBQUksS0FBSyxRQUFRLEVBQUUsWUFBWTtBQUM3QixjQUFJO0FBQ0YsbUJBQU8sS0FBSyxRQUFRLEVBQUUsV0FBVyxLQUFLO0FBQUEsVUFDeEMsU0FBUyxLQUFLO0FBQ1osaUJBQUssTUFBTSxHQUFHO0FBQUEsVUFDaEI7QUFBQSxRQUNGO0FBQUEsTUFDRjtBQUFBLE1BRUEsZ0JBQWlCO0FBQ2YsWUFBSSxTQUFTLFNBQVMsZ0JBQWdCO0FBQ3BDLG1CQUFTLFNBQVMsUUFBUSxFQUFFLFNBQVMsS0FBSyxDQUFDO0FBQUEsUUFDN0M7QUFFQSxZQUFJLEtBQUssUUFBUSxFQUFFLGVBQWU7QUFDaEMsY0FBSTtBQUNGLG1CQUFPLEtBQUssUUFBUSxFQUFFLGNBQWM7QUFBQSxVQUN0QyxTQUFTLEtBQUs7QUFDWixpQkFBSyxNQUFNLEdBQUc7QUFBQSxVQUNoQjtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBQUEsTUFFQSxVQUFXLE9BQU87QUFDaEIsZUFBTyxDQUFDLEtBQUssT0FBTztBQUNwQixlQUFPLENBQUMsS0FBSyxTQUFTO0FBRXRCLFlBQUksS0FBSyxPQUFPO0FBQ2QsZ0JBQU0sS0FBSyxLQUFLO0FBQUEsUUFDbEIsT0FBTztBQUNMLGVBQUssUUFBUTtBQUNiLGlCQUFPLEtBQUssUUFBUSxFQUFFLFVBQVUsS0FBSztBQUFBLFFBQ3ZDO0FBQUEsTUFDRjtBQUFBLE1BRUEsVUFBVyxZQUFZLFNBQVMsUUFBUSxZQUFZO0FBQ2xELGVBQU8sQ0FBQyxLQUFLLE9BQU87QUFDcEIsZUFBTyxDQUFDLEtBQUssU0FBUztBQUV0QixZQUFJLFNBQVMsUUFBUSxnQkFBZ0I7QUFDbkMsbUJBQVMsUUFBUSxRQUFRLEVBQUUsU0FBUyxNQUFNLFVBQVUsRUFBRSxZQUFZLFNBQVMsV0FBVyxFQUFFLENBQUM7QUFBQSxRQUMzRjtBQUVBLFlBQUk7QUFDRixpQkFBTyxLQUFLLFFBQVEsRUFBRSxVQUFVLFlBQVksU0FBUyxRQUFRLFVBQVU7QUFBQSxRQUN6RSxTQUFTLEtBQUs7QUFDWixlQUFLLE1BQU0sR0FBRztBQUFBLFFBQ2hCO0FBQUEsTUFDRjtBQUFBLE1BRUEsT0FBUSxPQUFPO0FBQ2IsZUFBTyxDQUFDLEtBQUssT0FBTztBQUNwQixlQUFPLENBQUMsS0FBSyxTQUFTO0FBRXRCLFlBQUk7QUFDRixpQkFBTyxLQUFLLFFBQVEsRUFBRSxPQUFPLEtBQUs7QUFBQSxRQUNwQyxTQUFTLEtBQUs7QUFDWixlQUFLLE1BQU0sR0FBRztBQUNkLGlCQUFPO0FBQUEsUUFDVDtBQUFBLE1BQ0Y7QUFBQSxNQUVBLFVBQVcsWUFBWSxTQUFTLFFBQVE7QUFDdEMsZUFBTyxDQUFDLEtBQUssT0FBTztBQUNwQixlQUFPLENBQUMsS0FBSyxTQUFTO0FBRXRCLGVBQU8sS0FBSyxRQUFRLEVBQUUsVUFBVSxZQUFZLFNBQVMsTUFBTTtBQUFBLE1BQzdEO0FBQUEsTUFFQSxXQUFZLFVBQVU7QUFDcEIsYUFBSyxVQUFVO0FBRWYsZUFBTyxDQUFDLEtBQUssT0FBTztBQUVwQixhQUFLLFlBQVk7QUFDakIsWUFBSSxTQUFTLFNBQVMsZ0JBQWdCO0FBQ3BDLG1CQUFTLFNBQVMsUUFBUSxFQUFFLFNBQVMsTUFBTSxTQUFTLENBQUM7QUFBQSxRQUN2RDtBQUVBLFlBQUk7QUFDRixpQkFBTyxLQUFLLFFBQVEsRUFBRSxXQUFXLFFBQVE7QUFBQSxRQUMzQyxTQUFTLEtBQUs7QUFFWixlQUFLLFFBQVEsR0FBRztBQUFBLFFBQ2xCO0FBQUEsTUFDRjtBQUFBLE1BRUEsUUFBU0MsUUFBTztBQUNkLGFBQUssVUFBVTtBQUVmLFlBQUksU0FBUyxNQUFNLGdCQUFnQjtBQUNqQyxtQkFBUyxNQUFNLFFBQVEsRUFBRSxTQUFTLE1BQU0sT0FBQUEsT0FBTSxDQUFDO0FBQUEsUUFDakQ7QUFFQSxZQUFJLEtBQUssU0FBUztBQUNoQjtBQUFBLFFBQ0Y7QUFDQSxhQUFLLFVBQVU7QUFFZixlQUFPLEtBQUssUUFBUSxFQUFFLFFBQVFBLE1BQUs7QUFBQSxNQUNyQztBQUFBLE1BRUEsWUFBYTtBQUNYLFlBQUksS0FBSyxjQUFjO0FBQ3JCLGVBQUssS0FBSyxJQUFJLFNBQVMsS0FBSyxZQUFZO0FBQ3hDLGVBQUssZUFBZTtBQUFBLFFBQ3RCO0FBRUEsWUFBSSxLQUFLLFlBQVk7QUFDbkIsZUFBSyxLQUFLLElBQUksT0FBTyxLQUFLLFVBQVU7QUFDcEMsZUFBSyxhQUFhO0FBQUEsUUFDcEI7QUFBQSxNQUNGO0FBQUE7QUFBQSxNQUdBLFVBQVcsS0FBSyxPQUFPO0FBQ3JCLHNCQUFjLE1BQU0sS0FBSyxLQUFLO0FBQzlCLGVBQU87QUFBQSxNQUNUO0FBQUEsTUFFQSxRQUFRLGtCQUFrQixFQUFHLFFBQVEsTUFBTSxTQUFTO0FBR2xELGVBQU8sSUFBSSxTQUFRLFFBQVEsTUFBTSxPQUFPO0FBQUEsTUFDMUM7QUFBQSxNQUVBLFFBQVEsa0JBQWtCLEVBQUcsUUFBUSxNQUFNLFNBQVM7QUFDbEQsY0FBTSxVQUFVLEtBQUs7QUFDckIsZUFBTyxFQUFFLEdBQUcsTUFBTSxTQUFTLEtBQUs7QUFFaEMsY0FBTSxVQUFVLElBQUksU0FBUSxRQUFRLE1BQU0sT0FBTztBQUVqRCxnQkFBUSxVQUFVLENBQUM7QUFFbkIsWUFBSSxNQUFNLFFBQVEsT0FBTyxHQUFHO0FBQzFCLGNBQUksUUFBUSxTQUFTLE1BQU0sR0FBRztBQUM1QixrQkFBTSxJQUFJLHFCQUFxQiw0QkFBNEI7QUFBQSxVQUM3RDtBQUNBLG1CQUFTRCxLQUFJLEdBQUdBLEtBQUksUUFBUSxRQUFRQSxNQUFLLEdBQUc7QUFDMUMsMEJBQWMsU0FBUyxRQUFRQSxFQUFDLEdBQUcsUUFBUUEsS0FBSSxDQUFDLEdBQUcsSUFBSTtBQUFBLFVBQ3pEO0FBQUEsUUFDRixXQUFXLFdBQVcsT0FBTyxZQUFZLFVBQVU7QUFDakQsZ0JBQU0sT0FBTyxPQUFPLEtBQUssT0FBTztBQUNoQyxtQkFBU0EsS0FBSSxHQUFHQSxLQUFJLEtBQUssUUFBUUEsTUFBSztBQUNwQyxrQkFBTSxNQUFNLEtBQUtBLEVBQUM7QUFDbEIsMEJBQWMsU0FBUyxLQUFLLFFBQVEsR0FBRyxHQUFHLElBQUk7QUFBQSxVQUNoRDtBQUFBLFFBQ0YsV0FBVyxXQUFXLE1BQU07QUFDMUIsZ0JBQU0sSUFBSSxxQkFBcUIsdUNBQXVDO0FBQUEsUUFDeEU7QUFFQSxlQUFPO0FBQUEsTUFDVDtBQUFBLE1BRUEsUUFBUSxpQkFBaUIsRUFBRyxLQUFLO0FBQy9CLGNBQU0sYUFBYSxJQUFJLE1BQU0sTUFBTTtBQUNuQyxjQUFNLFVBQVUsQ0FBQztBQUVqQixtQkFBVyxVQUFVLFlBQVk7QUFDL0IsZ0JBQU0sQ0FBQyxLQUFLLEtBQUssSUFBSSxPQUFPLE1BQU0sSUFBSTtBQUV0QyxjQUFJLFNBQVMsUUFBUSxNQUFNLFdBQVcsRUFBRztBQUV6QyxjQUFJLFFBQVEsR0FBRyxFQUFHLFNBQVEsR0FBRyxLQUFLLElBQUksS0FBSztBQUFBLGNBQ3RDLFNBQVEsR0FBRyxJQUFJO0FBQUEsUUFDdEI7QUFFQSxlQUFPO0FBQUEsTUFDVDtBQUFBLElBQ0Y7QUFFQSxhQUFTLG1CQUFvQixLQUFLLEtBQUssWUFBWTtBQUNqRCxVQUFJLE9BQU8sT0FBTyxRQUFRLFVBQVU7QUFDbEMsY0FBTSxJQUFJLHFCQUFxQixXQUFXLEdBQUcsU0FBUztBQUFBLE1BQ3hEO0FBRUEsWUFBTSxPQUFPLE9BQU8sR0FBRyxHQUFHLEtBQUs7QUFFL0IsVUFBSSxnQkFBZ0IsS0FBSyxHQUFHLE1BQU0sTUFBTTtBQUN0QyxjQUFNLElBQUkscUJBQXFCLFdBQVcsR0FBRyxTQUFTO0FBQUEsTUFDeEQ7QUFFQSxhQUFPLGFBQWEsTUFBTSxHQUFHLEdBQUcsS0FBSyxHQUFHO0FBQUE7QUFBQSxJQUMxQztBQUVBLGFBQVMsY0FBZSxTQUFTLEtBQUssS0FBSyxhQUFhLE9BQU87QUFDN0QsVUFBSSxRQUFRLE9BQU8sUUFBUSxZQUFZLENBQUMsTUFBTSxRQUFRLEdBQUcsSUFBSTtBQUMzRCxjQUFNLElBQUkscUJBQXFCLFdBQVcsR0FBRyxTQUFTO0FBQUEsTUFDeEQsV0FBVyxRQUFRLFFBQVc7QUFDNUI7QUFBQSxNQUNGO0FBRUEsVUFDRSxRQUFRLFNBQVMsUUFDakIsSUFBSSxXQUFXLEtBQ2YsSUFBSSxZQUFZLE1BQU0sUUFDdEI7QUFDQSxZQUFJLGdCQUFnQixLQUFLLEdBQUcsTUFBTSxNQUFNO0FBQ3RDLGdCQUFNLElBQUkscUJBQXFCLFdBQVcsR0FBRyxTQUFTO0FBQUEsUUFDeEQ7QUFFQSxnQkFBUSxPQUFPO0FBQUEsTUFDakIsV0FDRSxRQUFRLGtCQUFrQixRQUMxQixJQUFJLFdBQVcsTUFDZixJQUFJLFlBQVksTUFBTSxrQkFDdEI7QUFDQSxnQkFBUSxnQkFBZ0IsU0FBUyxLQUFLLEVBQUU7QUFDeEMsWUFBSSxDQUFDLE9BQU8sU0FBUyxRQUFRLGFBQWEsR0FBRztBQUMzQyxnQkFBTSxJQUFJLHFCQUFxQiwrQkFBK0I7QUFBQSxRQUNoRTtBQUFBLE1BQ0YsV0FDRSxRQUFRLGdCQUFnQixRQUN4QixJQUFJLFdBQVcsTUFDZixJQUFJLFlBQVksTUFBTSxnQkFDdEI7QUFDQSxnQkFBUSxjQUFjO0FBQ3RCLFlBQUksV0FBWSxTQUFRLFFBQVEsR0FBRyxJQUFJLG1CQUFtQixLQUFLLEtBQUssVUFBVTtBQUFBLFlBQ3pFLFNBQVEsV0FBVyxtQkFBbUIsS0FBSyxHQUFHO0FBQUEsTUFDckQsV0FDRSxJQUFJLFdBQVcsTUFDZixJQUFJLFlBQVksTUFBTSxxQkFDdEI7QUFDQSxjQUFNLElBQUkscUJBQXFCLGtDQUFrQztBQUFBLE1BQ25FLFdBQ0UsSUFBSSxXQUFXLE1BQ2YsSUFBSSxZQUFZLE1BQU0sY0FDdEI7QUFDQSxjQUFNLFFBQVEsT0FBTyxRQUFRLFdBQVcsSUFBSSxZQUFZLElBQUk7QUFDNUQsWUFBSSxVQUFVLFdBQVcsVUFBVSxjQUFjO0FBQy9DLGdCQUFNLElBQUkscUJBQXFCLDJCQUEyQjtBQUFBLFFBQzVELFdBQVcsVUFBVSxTQUFTO0FBQzVCLGtCQUFRLFFBQVE7QUFBQSxRQUNsQjtBQUFBLE1BQ0YsV0FDRSxJQUFJLFdBQVcsTUFDZixJQUFJLFlBQVksTUFBTSxjQUN0QjtBQUNBLGNBQU0sSUFBSSxxQkFBcUIsMkJBQTJCO0FBQUEsTUFDNUQsV0FDRSxJQUFJLFdBQVcsS0FDZixJQUFJLFlBQVksTUFBTSxXQUN0QjtBQUNBLGNBQU0sSUFBSSxxQkFBcUIsd0JBQXdCO0FBQUEsTUFDekQsV0FDRSxJQUFJLFdBQVcsS0FDZixJQUFJLFlBQVksTUFBTSxVQUN0QjtBQUNBLGNBQU0sSUFBSSxrQkFBa0IsNkJBQTZCO0FBQUEsTUFDM0QsV0FBVyxZQUFZLEtBQUssR0FBRyxNQUFNLE1BQU07QUFDekMsY0FBTSxJQUFJLHFCQUFxQixvQkFBb0I7QUFBQSxNQUNyRCxPQUFPO0FBQ0wsWUFBSSxNQUFNLFFBQVEsR0FBRyxHQUFHO0FBQ3RCLG1CQUFTQSxLQUFJLEdBQUdBLEtBQUksSUFBSSxRQUFRQSxNQUFLO0FBQ25DLGdCQUFJLFlBQVk7QUFDZCxrQkFBSSxRQUFRLFFBQVEsR0FBRyxFQUFHLFNBQVEsUUFBUSxHQUFHLEtBQUssSUFBSSxtQkFBbUIsS0FBSyxJQUFJQSxFQUFDLEdBQUcsVUFBVSxDQUFDO0FBQUEsa0JBQzVGLFNBQVEsUUFBUSxHQUFHLElBQUksbUJBQW1CLEtBQUssSUFBSUEsRUFBQyxHQUFHLFVBQVU7QUFBQSxZQUN4RSxPQUFPO0FBQ0wsc0JBQVEsV0FBVyxtQkFBbUIsS0FBSyxJQUFJQSxFQUFDLENBQUM7QUFBQSxZQUNuRDtBQUFBLFVBQ0Y7QUFBQSxRQUNGLE9BQU87QUFDTCxjQUFJLFdBQVksU0FBUSxRQUFRLEdBQUcsSUFBSSxtQkFBbUIsS0FBSyxLQUFLLFVBQVU7QUFBQSxjQUN6RSxTQUFRLFdBQVcsbUJBQW1CLEtBQUssR0FBRztBQUFBLFFBQ3JEO0FBQUEsTUFDRjtBQUFBLElBQ0Y7QUFFQSxXQUFPLFVBQVU7QUFBQTtBQUFBOzs7QUNsZmpCO0FBQUE7QUFBQTtBQUVBLFFBQU0sZUFBZSxVQUFRLFFBQVE7QUFFckMsUUFBTSxhQUFOLGNBQXlCLGFBQWE7QUFBQSxNQUNwQyxXQUFZO0FBQ1YsY0FBTSxJQUFJLE1BQU0saUJBQWlCO0FBQUEsTUFDbkM7QUFBQSxNQUVBLFFBQVM7QUFDUCxjQUFNLElBQUksTUFBTSxpQkFBaUI7QUFBQSxNQUNuQztBQUFBLE1BRUEsVUFBVztBQUNULGNBQU0sSUFBSSxNQUFNLGlCQUFpQjtBQUFBLE1BQ25DO0FBQUEsSUFDRjtBQUVBLFdBQU8sVUFBVTtBQUFBO0FBQUE7OztBQ2xCakI7QUFBQTtBQUFBO0FBRUEsUUFBTSxhQUFhO0FBQ25CLFFBQU07QUFBQSxNQUNKO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGLElBQUk7QUFDSixRQUFNLEVBQUUsVUFBVSxRQUFRLFdBQVcsY0FBYyxJQUFJO0FBRXZELFFBQU0sYUFBYSxPQUFPLFdBQVc7QUFDckMsUUFBTSxVQUFVLE9BQU8sUUFBUTtBQUMvQixRQUFNLGVBQWUsT0FBTyxhQUFhO0FBQ3pDLFFBQU0sWUFBWSxPQUFPLFVBQVU7QUFDbkMsUUFBTSx1QkFBdUIsT0FBTyxzQkFBc0I7QUFFMUQsUUFBTSxpQkFBTixjQUE2QixXQUFXO0FBQUEsTUFDdEMsY0FBZTtBQUNiLGNBQU07QUFFTixhQUFLLFVBQVUsSUFBSTtBQUNuQixhQUFLLFlBQVksSUFBSTtBQUNyQixhQUFLLE9BQU8sSUFBSTtBQUNoQixhQUFLLFNBQVMsSUFBSSxDQUFDO0FBQUEsTUFDckI7QUFBQSxNQUVBLElBQUksWUFBYTtBQUNmLGVBQU8sS0FBSyxVQUFVO0FBQUEsTUFDeEI7QUFBQSxNQUVBLElBQUksU0FBVTtBQUNaLGVBQU8sS0FBSyxPQUFPO0FBQUEsTUFDckI7QUFBQSxNQUVBLElBQUksZUFBZ0I7QUFDbEIsZUFBTyxLQUFLLGFBQWE7QUFBQSxNQUMzQjtBQUFBLE1BRUEsSUFBSSxhQUFjLGlCQUFpQjtBQUNqQyxZQUFJLGlCQUFpQjtBQUNuQixtQkFBU0UsS0FBSSxnQkFBZ0IsU0FBUyxHQUFHQSxNQUFLLEdBQUdBLE1BQUs7QUFDcEQsa0JBQU0sY0FBYyxLQUFLLGFBQWEsRUFBRUEsRUFBQztBQUN6QyxnQkFBSSxPQUFPLGdCQUFnQixZQUFZO0FBQ3JDLG9CQUFNLElBQUkscUJBQXFCLGlDQUFpQztBQUFBLFlBQ2xFO0FBQUEsVUFDRjtBQUFBLFFBQ0Y7QUFFQSxhQUFLLGFBQWEsSUFBSTtBQUFBLE1BQ3hCO0FBQUEsTUFFQSxNQUFPLFVBQVU7QUFDZixZQUFJLGFBQWEsUUFBVztBQUMxQixpQkFBTyxJQUFJLFFBQVEsQ0FBQ0MsVUFBUyxXQUFXO0FBQ3RDLGlCQUFLLE1BQU0sQ0FBQyxLQUFLQyxVQUFTO0FBQ3hCLHFCQUFPLE1BQU0sT0FBTyxHQUFHLElBQUlELFNBQVFDLEtBQUk7QUFBQSxZQUN6QyxDQUFDO0FBQUEsVUFDSCxDQUFDO0FBQUEsUUFDSDtBQUVBLFlBQUksT0FBTyxhQUFhLFlBQVk7QUFDbEMsZ0JBQU0sSUFBSSxxQkFBcUIsa0JBQWtCO0FBQUEsUUFDbkQ7QUFFQSxZQUFJLEtBQUssVUFBVSxHQUFHO0FBQ3BCLHlCQUFlLE1BQU0sU0FBUyxJQUFJLHFCQUFxQixHQUFHLElBQUksQ0FBQztBQUMvRDtBQUFBLFFBQ0Y7QUFFQSxZQUFJLEtBQUssT0FBTyxHQUFHO0FBQ2pCLGNBQUksS0FBSyxTQUFTLEdBQUc7QUFDbkIsaUJBQUssU0FBUyxFQUFFLEtBQUssUUFBUTtBQUFBLFVBQy9CLE9BQU87QUFDTCwyQkFBZSxNQUFNLFNBQVMsTUFBTSxJQUFJLENBQUM7QUFBQSxVQUMzQztBQUNBO0FBQUEsUUFDRjtBQUVBLGFBQUssT0FBTyxJQUFJO0FBQ2hCLGFBQUssU0FBUyxFQUFFLEtBQUssUUFBUTtBQUU3QixjQUFNLFdBQVcsTUFBTTtBQUNyQixnQkFBTSxZQUFZLEtBQUssU0FBUztBQUNoQyxlQUFLLFNBQVMsSUFBSTtBQUNsQixtQkFBU0YsS0FBSSxHQUFHQSxLQUFJLFVBQVUsUUFBUUEsTUFBSztBQUN6QyxzQkFBVUEsRUFBQyxFQUFFLE1BQU0sSUFBSTtBQUFBLFVBQ3pCO0FBQUEsUUFDRjtBQUdBLGFBQUssTUFBTSxFQUFFLEVBQ1YsS0FBSyxNQUFNLEtBQUssUUFBUSxDQUFDLEVBQ3pCLEtBQUssTUFBTTtBQUNWLHlCQUFlLFFBQVE7QUFBQSxRQUN6QixDQUFDO0FBQUEsTUFDTDtBQUFBLE1BRUEsUUFBUyxLQUFLLFVBQVU7QUFDdEIsWUFBSSxPQUFPLFFBQVEsWUFBWTtBQUM3QixxQkFBVztBQUNYLGdCQUFNO0FBQUEsUUFDUjtBQUVBLFlBQUksYUFBYSxRQUFXO0FBQzFCLGlCQUFPLElBQUksUUFBUSxDQUFDQyxVQUFTLFdBQVc7QUFDdEMsaUJBQUssUUFBUSxLQUFLLENBQUNFLE1BQUtELFVBQVM7QUFDL0IscUJBQU9DO0FBQUE7QUFBQSxnQkFBcUQsT0FBT0EsSUFBRztBQUFBLGtCQUFJRixTQUFRQyxLQUFJO0FBQUEsWUFDeEYsQ0FBQztBQUFBLFVBQ0gsQ0FBQztBQUFBLFFBQ0g7QUFFQSxZQUFJLE9BQU8sYUFBYSxZQUFZO0FBQ2xDLGdCQUFNLElBQUkscUJBQXFCLGtCQUFrQjtBQUFBLFFBQ25EO0FBRUEsWUFBSSxLQUFLLFVBQVUsR0FBRztBQUNwQixjQUFJLEtBQUssWUFBWSxHQUFHO0FBQ3RCLGlCQUFLLFlBQVksRUFBRSxLQUFLLFFBQVE7QUFBQSxVQUNsQyxPQUFPO0FBQ0wsMkJBQWUsTUFBTSxTQUFTLE1BQU0sSUFBSSxDQUFDO0FBQUEsVUFDM0M7QUFDQTtBQUFBLFFBQ0Y7QUFFQSxZQUFJLENBQUMsS0FBSztBQUNSLGdCQUFNLElBQUkscUJBQXFCO0FBQUEsUUFDakM7QUFFQSxhQUFLLFVBQVUsSUFBSTtBQUNuQixhQUFLLFlBQVksSUFBSSxLQUFLLFlBQVksS0FBSyxDQUFDO0FBQzVDLGFBQUssWUFBWSxFQUFFLEtBQUssUUFBUTtBQUVoQyxjQUFNLGNBQWMsTUFBTTtBQUN4QixnQkFBTSxZQUFZLEtBQUssWUFBWTtBQUNuQyxlQUFLLFlBQVksSUFBSTtBQUNyQixtQkFBU0YsS0FBSSxHQUFHQSxLQUFJLFVBQVUsUUFBUUEsTUFBSztBQUN6QyxzQkFBVUEsRUFBQyxFQUFFLE1BQU0sSUFBSTtBQUFBLFVBQ3pCO0FBQUEsUUFDRjtBQUdBLGFBQUssUUFBUSxFQUFFLEdBQUcsRUFBRSxLQUFLLE1BQU07QUFDN0IseUJBQWUsV0FBVztBQUFBLFFBQzVCLENBQUM7QUFBQSxNQUNIO0FBQUEsTUFFQSxDQUFDLG9CQUFvQixFQUFHLE1BQU0sU0FBUztBQUNyQyxZQUFJLENBQUMsS0FBSyxhQUFhLEtBQUssS0FBSyxhQUFhLEVBQUUsV0FBVyxHQUFHO0FBQzVELGVBQUssb0JBQW9CLElBQUksS0FBSyxTQUFTO0FBQzNDLGlCQUFPLEtBQUssU0FBUyxFQUFFLE1BQU0sT0FBTztBQUFBLFFBQ3RDO0FBRUEsWUFBSUksWUFBVyxLQUFLLFNBQVMsRUFBRSxLQUFLLElBQUk7QUFDeEMsaUJBQVNKLEtBQUksS0FBSyxhQUFhLEVBQUUsU0FBUyxHQUFHQSxNQUFLLEdBQUdBLE1BQUs7QUFDeEQsVUFBQUksWUFBVyxLQUFLLGFBQWEsRUFBRUosRUFBQyxFQUFFSSxTQUFRO0FBQUEsUUFDNUM7QUFDQSxhQUFLLG9CQUFvQixJQUFJQTtBQUM3QixlQUFPQSxVQUFTLE1BQU0sT0FBTztBQUFBLE1BQy9CO0FBQUEsTUFFQSxTQUFVLE1BQU0sU0FBUztBQUN2QixZQUFJLENBQUMsV0FBVyxPQUFPLFlBQVksVUFBVTtBQUMzQyxnQkFBTSxJQUFJLHFCQUFxQiwyQkFBMkI7QUFBQSxRQUM1RDtBQUVBLFlBQUk7QUFDRixjQUFJLENBQUMsUUFBUSxPQUFPLFNBQVMsVUFBVTtBQUNyQyxrQkFBTSxJQUFJLHFCQUFxQix5QkFBeUI7QUFBQSxVQUMxRDtBQUVBLGNBQUksS0FBSyxVQUFVLEtBQUssS0FBSyxZQUFZLEdBQUc7QUFDMUMsa0JBQU0sSUFBSSxxQkFBcUI7QUFBQSxVQUNqQztBQUVBLGNBQUksS0FBSyxPQUFPLEdBQUc7QUFDakIsa0JBQU0sSUFBSSxrQkFBa0I7QUFBQSxVQUM5QjtBQUVBLGlCQUFPLEtBQUssb0JBQW9CLEVBQUUsTUFBTSxPQUFPO0FBQUEsUUFDakQsU0FBUyxLQUFLO0FBQ1osY0FBSSxPQUFPLFFBQVEsWUFBWSxZQUFZO0FBQ3pDLGtCQUFNLElBQUkscUJBQXFCLHdCQUF3QjtBQUFBLFVBQ3pEO0FBRUEsa0JBQVEsUUFBUSxHQUFHO0FBRW5CLGlCQUFPO0FBQUEsUUFDVDtBQUFBLE1BQ0Y7QUFBQSxJQUNGO0FBRUEsV0FBTyxVQUFVO0FBQUE7QUFBQTs7O0FDL0xqQjtBQUFBO0FBQUE7QUFFQSxRQUFNLE1BQU0sVUFBUSxLQUFLO0FBQ3pCLFFBQU0sU0FBUyxVQUFRLFFBQVE7QUFDL0IsUUFBTSxPQUFPO0FBQ2IsUUFBTSxFQUFFLHNCQUFzQixvQkFBb0IsSUFBSTtBQUV0RCxRQUFJO0FBT0osUUFBSTtBQUdKLFFBQUksT0FBTyx3QkFBd0IsQ0FBQyxRQUFRLElBQUksa0JBQWtCO0FBQ2hFLHFCQUFlLE1BQU0saUJBQWlCO0FBQUEsUUFDcEMsWUFBYSxtQkFBbUI7QUFDOUIsZUFBSyxxQkFBcUI7QUFDMUIsZUFBSyxnQkFBZ0Isb0JBQUksSUFBSTtBQUM3QixlQUFLLG1CQUFtQixJQUFJLE9BQU8scUJBQXFCLENBQUMsUUFBUTtBQUMvRCxnQkFBSSxLQUFLLGNBQWMsT0FBTyxLQUFLLG9CQUFvQjtBQUNyRDtBQUFBLFlBQ0Y7QUFFQSxrQkFBTSxNQUFNLEtBQUssY0FBYyxJQUFJLEdBQUc7QUFDdEMsZ0JBQUksUUFBUSxVQUFhLElBQUksTUFBTSxNQUFNLFFBQVc7QUFDbEQsbUJBQUssY0FBYyxPQUFPLEdBQUc7QUFBQSxZQUMvQjtBQUFBLFVBQ0YsQ0FBQztBQUFBLFFBQ0g7QUFBQSxRQUVBLElBQUssWUFBWTtBQUNmLGdCQUFNLE1BQU0sS0FBSyxjQUFjLElBQUksVUFBVTtBQUM3QyxpQkFBTyxNQUFNLElBQUksTUFBTSxJQUFJO0FBQUEsUUFDN0I7QUFBQSxRQUVBLElBQUssWUFBWSxTQUFTO0FBQ3hCLGNBQUksS0FBSyx1QkFBdUIsR0FBRztBQUNqQztBQUFBLFVBQ0Y7QUFFQSxlQUFLLGNBQWMsSUFBSSxZQUFZLElBQUksUUFBUSxPQUFPLENBQUM7QUFDdkQsZUFBSyxpQkFBaUIsU0FBUyxTQUFTLFVBQVU7QUFBQSxRQUNwRDtBQUFBLE1BQ0Y7QUFBQSxJQUNGLE9BQU87QUFDTCxxQkFBZSxNQUFNLG1CQUFtQjtBQUFBLFFBQ3RDLFlBQWEsbUJBQW1CO0FBQzlCLGVBQUsscUJBQXFCO0FBQzFCLGVBQUssZ0JBQWdCLG9CQUFJLElBQUk7QUFBQSxRQUMvQjtBQUFBLFFBRUEsSUFBSyxZQUFZO0FBQ2YsaUJBQU8sS0FBSyxjQUFjLElBQUksVUFBVTtBQUFBLFFBQzFDO0FBQUEsUUFFQSxJQUFLLFlBQVksU0FBUztBQUN4QixjQUFJLEtBQUssdUJBQXVCLEdBQUc7QUFDakM7QUFBQSxVQUNGO0FBRUEsY0FBSSxLQUFLLGNBQWMsUUFBUSxLQUFLLG9CQUFvQjtBQUV0RCxrQkFBTSxFQUFFLE9BQU8sVUFBVSxJQUFJLEtBQUssY0FBYyxLQUFLLEVBQUUsS0FBSztBQUM1RCxpQkFBSyxjQUFjLE9BQU8sU0FBUztBQUFBLFVBQ3JDO0FBRUEsZUFBSyxjQUFjLElBQUksWUFBWSxPQUFPO0FBQUEsUUFDNUM7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUVBLGFBQVMsZUFBZ0IsRUFBRSxTQUFTLG1CQUFtQixZQUFZLFNBQVMsR0FBRyxLQUFLLEdBQUc7QUFDckYsVUFBSSxxQkFBcUIsU0FBUyxDQUFDLE9BQU8sVUFBVSxpQkFBaUIsS0FBSyxvQkFBb0IsSUFBSTtBQUNoRyxjQUFNLElBQUkscUJBQXFCLHNEQUFzRDtBQUFBLE1BQ3ZGO0FBRUEsWUFBTSxVQUFVLEVBQUUsTUFBTSxZQUFZLEdBQUcsS0FBSztBQUM1QyxZQUFNLGVBQWUsSUFBSSxhQUFhLHFCQUFxQixPQUFPLE1BQU0saUJBQWlCO0FBQ3pGLGdCQUFVLFdBQVcsT0FBTyxNQUFPO0FBQ25DLGdCQUFVLFdBQVcsT0FBTyxVQUFVO0FBQ3RDLGFBQU8sU0FBUyxRQUFTLEVBQUUsVUFBVSxNQUFNLFVBQVUsTUFBTSxZQUFZLGNBQWMsV0FBVyxHQUFHLFVBQVU7QUFDM0csWUFBSTtBQUNKLFlBQUksYUFBYSxVQUFVO0FBQ3pCLGNBQUksQ0FBQyxLQUFLO0FBQ1Isa0JBQU0sVUFBUSxLQUFLO0FBQUEsVUFDckI7QUFDQSx1QkFBYSxjQUFjLFFBQVEsY0FBYyxLQUFLLGNBQWMsSUFBSSxLQUFLO0FBRTdFLGdCQUFNLGFBQWEsY0FBYztBQUNqQyxnQkFBTSxVQUFVLGFBQWEsSUFBSSxVQUFVLEtBQUs7QUFFaEQsaUJBQU8sVUFBVTtBQUVqQixtQkFBUyxJQUFJLFFBQVE7QUFBQSxZQUNuQixlQUFlO0FBQUE7QUFBQSxZQUNmLEdBQUc7QUFBQSxZQUNIO0FBQUEsWUFDQTtBQUFBLFlBQ0E7QUFBQTtBQUFBLFlBRUEsZUFBZSxVQUFVLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxVQUFVO0FBQUEsWUFDekQsUUFBUTtBQUFBO0FBQUEsWUFDUixNQUFNLFFBQVE7QUFBQSxZQUNkLE1BQU07QUFBQSxVQUNSLENBQUM7QUFFRCxpQkFDRyxHQUFHLFdBQVcsU0FBVUMsVUFBUztBQUVoQyx5QkFBYSxJQUFJLFlBQVlBLFFBQU87QUFBQSxVQUN0QyxDQUFDO0FBQUEsUUFDTCxPQUFPO0FBQ0wsaUJBQU8sQ0FBQyxZQUFZLDJDQUEyQztBQUMvRCxtQkFBUyxJQUFJLFFBQVE7QUFBQSxZQUNuQixlQUFlLEtBQUs7QUFBQTtBQUFBLFlBQ3BCLEdBQUc7QUFBQSxZQUNIO0FBQUEsWUFDQSxNQUFNLFFBQVE7QUFBQSxZQUNkLE1BQU07QUFBQSxVQUNSLENBQUM7QUFBQSxRQUNIO0FBR0EsWUFBSSxRQUFRLGFBQWEsUUFBUSxRQUFRLFdBQVc7QUFDbEQsZ0JBQU0sd0JBQXdCLFFBQVEsMEJBQTBCLFNBQVksTUFBTyxRQUFRO0FBQzNGLGlCQUFPLGFBQWEsTUFBTSxxQkFBcUI7QUFBQSxRQUNqRDtBQUVBLGNBQU0sZ0JBQWdCLGFBQWEsTUFBTSxpQkFBaUIsTUFBTSxHQUFHLE9BQU87QUFFMUUsZUFDRyxXQUFXLElBQUksRUFDZixLQUFLLGFBQWEsV0FBVyxrQkFBa0IsV0FBVyxXQUFZO0FBQ3JFLHdCQUFjO0FBRWQsY0FBSSxVQUFVO0FBQ1osa0JBQU0sS0FBSztBQUNYLHVCQUFXO0FBQ1gsZUFBRyxNQUFNLElBQUk7QUFBQSxVQUNmO0FBQUEsUUFDRixDQUFDLEVBQ0EsR0FBRyxTQUFTLFNBQVUsS0FBSztBQUMxQix3QkFBYztBQUVkLGNBQUksVUFBVTtBQUNaLGtCQUFNLEtBQUs7QUFDWCx1QkFBVztBQUNYLGVBQUcsR0FBRztBQUFBLFVBQ1I7QUFBQSxRQUNGLENBQUM7QUFFSCxlQUFPO0FBQUEsTUFDVDtBQUFBLElBQ0Y7QUFFQSxhQUFTLGFBQWNDLG1CQUFrQixTQUFTO0FBQ2hELFVBQUksQ0FBQyxTQUFTO0FBQ1osZUFBTyxNQUFNO0FBQUEsUUFBQztBQUFBLE1BQ2hCO0FBRUEsVUFBSSxLQUFLO0FBQ1QsVUFBSSxLQUFLO0FBQ1QsWUFBTSxZQUFZLFdBQVcsTUFBTTtBQUVqQyxhQUFLLGFBQWEsTUFBTTtBQUN0QixjQUFJLFFBQVEsYUFBYSxTQUFTO0FBRWhDLGlCQUFLLGFBQWEsTUFBTUEsa0JBQWlCLENBQUM7QUFBQSxVQUM1QyxPQUFPO0FBQ0wsWUFBQUEsa0JBQWlCO0FBQUEsVUFDbkI7QUFBQSxRQUNGLENBQUM7QUFBQSxNQUNILEdBQUcsT0FBTztBQUNWLGFBQU8sTUFBTTtBQUNYLHFCQUFhLFNBQVM7QUFDdEIsdUJBQWUsRUFBRTtBQUNqQix1QkFBZSxFQUFFO0FBQUEsTUFDbkI7QUFBQSxJQUNGO0FBRUEsYUFBUyxpQkFBa0IsUUFBUTtBQUNqQyxXQUFLLFFBQVEsUUFBUSxJQUFJLG9CQUFvQixDQUFDO0FBQUEsSUFDaEQ7QUFFQSxXQUFPLFVBQVU7QUFBQTtBQUFBOzs7Ozs7OztBQ3hMakIsYUFBZ0IsVUFBVSxLQUFRO0FBQ2hDLFlBQU0sTUFBZ0IsQ0FBQTtBQUV0QixhQUFPLEtBQUssR0FBRyxFQUFFLFFBQVEsQ0FBQyxRQUFPO0FBQy9CLGNBQU0sUUFBUSxJQUFJLEdBQUc7QUFDckIsWUFBSSxPQUFPLFVBQVUsVUFBVTtBQUM3QixjQUFJLEdBQUcsSUFBSTs7TUFFZixDQUFDO0FBRUQsYUFBTztJQUNUO0FBWEEsWUFBQSxZQUFBOzs7Ozs7Ozs7O0FDSkEsUUFBQSxVQUFBO0FBTUEsUUFBWTtBQUFaLEtBQUEsU0FBWUMsUUFBSztBQUNmLE1BQUFBLE9BQUFBLE9BQUEsSUFBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsVUFBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsUUFBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsYUFBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsMkJBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLG1CQUFBLElBQUEsQ0FBQSxJQUFBO0FBQ0EsTUFBQUEsT0FBQUEsT0FBQSxnQkFBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsYUFBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsa0JBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLGlCQUFBLElBQUEsQ0FBQSxJQUFBO0FBQ0EsTUFBQUEsT0FBQUEsT0FBQSxzQkFBQSxJQUFBLEVBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsd0JBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLG9CQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsT0FBQUEsT0FBQSxnQkFBQSxJQUFBLEVBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsbUJBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLDJCQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsT0FBQUEsT0FBQSxrQkFBQSxJQUFBLEVBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEscUJBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLHFCQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsT0FBQUEsT0FBQSxpQkFBQSxJQUFBLEVBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsbUJBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxPQUFBQSxPQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLGdCQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsT0FBQUEsT0FBQSxtQkFBQSxJQUFBLEVBQUEsSUFBQTtBQUVBLE1BQUFBLE9BQUFBLE9BQUEsTUFBQSxJQUFBLEVBQUEsSUFBQTtJQUNGLEdBN0JZLFFBQUEsUUFBQSxVQUFBLFFBQUEsUUFBSyxDQUFBLEVBQUE7QUErQmpCLFFBQVk7QUFBWixLQUFBLFNBQVlDLE9BQUk7QUFDZCxNQUFBQSxNQUFBQSxNQUFBLE1BQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxNQUFBQSxNQUFBLFNBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxNQUFBQSxNQUFBLFVBQUEsSUFBQSxDQUFBLElBQUE7SUFDRixHQUpZLE9BQUEsUUFBQSxTQUFBLFFBQUEsT0FBSSxDQUFBLEVBQUE7QUFNaEIsUUFBWTtBQUFaLEtBQUEsU0FBWUMsUUFBSztBQUNmLE1BQUFBLE9BQUFBLE9BQUEsdUJBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLGtCQUFBLElBQUEsQ0FBQSxJQUFBO0FBQ0EsTUFBQUEsT0FBQUEsT0FBQSxvQkFBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsU0FBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsU0FBQSxJQUFBLEVBQUEsSUFBQTtBQUNBLE1BQUFBLE9BQUFBLE9BQUEsZ0JBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxPQUFBQSxPQUFBLFVBQUEsSUFBQSxHQUFBLElBQUE7QUFFQSxNQUFBQSxPQUFBQSxPQUFBLG1CQUFBLElBQUEsR0FBQSxJQUFBO0lBQ0YsR0FYWSxRQUFBLFFBQUEsVUFBQSxRQUFBLFFBQUssQ0FBQSxFQUFBO0FBYWpCLFFBQVk7QUFBWixLQUFBLFNBQVlDLGdCQUFhO0FBQ3ZCLE1BQUFBLGVBQUFBLGVBQUEsU0FBQSxJQUFBLENBQUEsSUFBQTtBQUNBLE1BQUFBLGVBQUFBLGVBQUEsZ0JBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxlQUFBQSxlQUFBLFlBQUEsSUFBQSxDQUFBLElBQUE7SUFDRixHQUpZLGdCQUFBLFFBQUEsa0JBQUEsUUFBQSxnQkFBYSxDQUFBLEVBQUE7QUFNekIsUUFBWTtBQUFaLEtBQUEsU0FBWUMsVUFBTztBQUNqQixNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLEtBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLEtBQUEsSUFBQSxDQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLFNBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFNBQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxDQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxDQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFdBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLEtBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFlBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFdBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLGFBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLFlBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLEtBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE1BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLGVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLGVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFVBQUEsSUFBQSxFQUFBLElBQUE7QUFDQSxNQUFBQSxTQUFBQSxTQUFBLFFBQUEsSUFBQSxFQUFBLElBQUE7QUFFQSxNQUFBQSxTQUFBQSxTQUFBLE9BQUEsSUFBQSxFQUFBLElBQUE7SUFDRixHQTFEWSxVQUFBLFFBQUEsWUFBQSxRQUFBLFVBQU8sQ0FBQSxFQUFBO0FBNEROLFlBQUEsZUFBZTtNQUMxQixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRLFVBQVU7TUFDbEIsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFROztNQUdSLFFBQVE7O0FBR0csWUFBQSxjQUFjO01BQ3pCLFFBQVE7O0FBR0csWUFBQSxlQUFlO01BQzFCLFFBQVE7TUFDUixRQUFR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QSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztB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TixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixLQUFLO0FBQUEsUUFDTCxNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixLQUFLO0FBQUEsUUFDTCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxTQUFTO0FBQUEsUUFDVCxNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixJQUFJO0FBQUEsUUFDSixJQUFJO0FBQUEsUUFDSixJQUFJO0FBQUEsUUFDSixTQUFTO0FBQUEsUUFDVCxJQUFJO0FBQUEsUUFDSixLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsUUFDUCxLQUFLO0FBQUEsUUFDTCxTQUFTO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxTQUFTO0FBQUEsUUFDVCxNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixJQUFJO0FBQUEsUUFDSixJQUFJO0FBQUEsUUFDSixJQUFJO0FBQUEsUUFDSixTQUFTO0FBQUEsUUFDVCxJQUFJO0FBQUEsUUFDSixLQUFLO0FBQUEsUUFDTCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxLQUFLO0FBQUEsUUFDTCxTQUFTO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsUUFDUCxVQUFVO0FBQUEsUUFDVixPQUFPO0FBQUEsUUFDUCxLQUFLO0FBQUEsUUFDTCxNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxTQUFTO0FBQUEsUUFDVCxNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxJQUFJO0FBQUEsUUFDSixNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxJQUFJO0FBQUEsUUFDSixLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxRQUFRO0FBQUEsUUFDUixLQUFLO0FBQUEsUUFDTCxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxJQUFJO0FBQUEsUUFDSixPQUFPO0FBQUEsUUFDUCxJQUFJO0FBQUEsUUFDSixJQUFJO0FBQUEsUUFDSixLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixRQUFRO0FBQUEsUUFDUixNQUFNO0FBQUEsUUFDTixNQUFNO0FBQUEsUUFDTixLQUFLO0FBQUEsUUFDTCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsUUFDUCxRQUFRO0FBQUEsUUFDUixPQUFPO0FBQUEsTUFDVDtBQUVBLGFBQU8sS0FBS0EsS0FBSSxRQUFRLEVBQUUsUUFBUSxTQUFVLEtBQUs7QUFDL0MsWUFBSSxJQUFJQSxLQUFJLFNBQVMsR0FBRztBQUN4QixZQUFJSyxLQUFJLE9BQU8sTUFBTSxXQUFXLE9BQU8sYUFBYSxDQUFDLElBQUk7QUFD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QUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FB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QSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSztBQUFBO0FBQUEsTUFFN0Q7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQTtBQUFBLE1BRTdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUE7QUFBQTtBQUFBLE1BRzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQTtBQUFBLE1BRTdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQTtBQUFBLE1BRTdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBO0FBQUEsTUFFN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQTtBQUFBLE1BRTVDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDOUM7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUE7QUFBQSxNQUUzRDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUc7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzNEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBRztBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDM0Q7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFHO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUMzRDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUc7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBO0FBQUEsTUFFM0Q7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUc7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQTtBQUFBLE1BRTVEO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FB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QUFJO0lBQ3BELEdBQUc7SUFBYSxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFDcEQsR0FBRztJQUFhLElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUNwRCxHQUFHO0lBQWEsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQ3BELEdBQUc7SUFBYSxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFDcEQsR0FBRztJQUFhLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxHQUFHO0lBQWEsSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELEdBQUc7SUFBYSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsR0FBRztJQUFhLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxHQUFHO0lBQWEsSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0VBQ3RDOztFQUdBLENBQUE7RUFFQTtJQUNFLE1BQVE7SUFBWSxPQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxPQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxPQUFRO0lBQVksT0FBUTtJQUFZLE1BQVE7SUFBZSxPQUFRO0lBQ3ZFLE1BQVE7SUFBWSxPQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxPQUFRO0lBQVksT0FBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE9BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsT0FBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxNQUFRO0lBQVksT0FBUTtJQUFZLE1BQVE7SUFBZSxPQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxPQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsT0FBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxPQUFRO0lBQ3ZFLE9BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxPQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFR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Qzs7RUFDNUU7SUFBQztJQUFXO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztJQUFXO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO0lBQVc7SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7TUFBQztNQUFPO01BQUc7TUFBRztNQUFPO01BQUc7OztFQUNwRztJQUFDO0lBQVc7SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtJQUF3QztNQUFDO01BQUc7TUFBRztNQUFHOzs7RUFDdEY7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztJQUFXO0lBQXdCO0tBQXdDLEdBQUE7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtLQUF3QyxHQUFBOztFQUM1RTtJQUFDO0lBQVc7SUFBd0IsS0FBSSxHQUFBLDBDQUFXLEtBQUksR0FBQSwyQ0FBTztJQUFjOztFQUM1RTtJQUFDO0lBQVc7SUFBd0IsSUFBSTtJQUFvQzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7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QixNQUFJLE9BQU8sT0FBTyxJQUFJLEVBQUUsU0FBUyxNQUFNO0FBQ3JDLFFBQUk7QUFDRixpQkFBVyxLQUFLLE9BQU8sVUFBVTtBQUFBLElBQ25DLFNBQVNDLFFBQU87QUFDZCxNQUFBRCxLQUFJLE1BQU0sR0FBR0MsTUFBSyxFQUFFO0FBQUEsSUFDdEI7QUFBQSxFQUNGO0FBQ0Y7OztBQ2xCQSxlQUFzQixpQkFBZ0M7QUFDcEQsUUFBTUMsT0FBTSxJQUFJLFFBQVEsd0JBQXdCO0FBQ2hELFFBQU0sU0FBUyxJQUFJLE9BQU87QUFDMUIsUUFBTSxZQUFZLElBQUksZ0JBQWdCLFFBQVFBLElBQUc7QUFDakQsUUFBTSxVQUFVLFNBQVM7QUFDekIsU0FBTyxLQUFLLFFBQVFBLElBQUc7QUFDekI7QUFFQSxNQUFNLGVBQWU7IiwKICAibmFtZXMiOiBbIm9zIiwgImZzIiwgIm9zIiwgImRlbGltaXRlciIsICJ4IiwgInNlbGYiLCAib3B0aW9ucyIsICJpIiwgImVycm9yIiwgInNvY2tldCIsICJyZXF1aXJlX3R1bm5lbCIsICJkYXRhIiwgImkiLCAiQmxvYiIsICJwYXRoIiwgImlkeCIsICJzdHJlYW0iLCAiZXJyIiwgImkiLCAieCIsICJuIiwgImkiLCAiZGF0YSIsICJuIiwgInNlbGYiLCAiZGF0YSIsICJpIiwgInNlbGYiLCAiZGF0YSIsICJpIiwgIm4iLCAiaSIsICJiYXNlbmFtZSIsICJwYXRoIiwgImkiLCAiYmFzZW5hbWUiLCAiaSIsICJzZWxmIiwgIm4iLCAiZGF0YSIsICJpIiwgImkiLCAiZGF0YSIsICJyZXF1aXJlX2NvbnN0YW50cyIsICJET01FeGNlcHRpb24iLCAic3RydWN0dXJlZENsb25lIiwgInJlcXVpcmVfdXRpbCIsICJwZXJmb3JtYW5jZSIsICJsZW5ndGgiLCAiaSIsICJBIiwgInJlc29sdmUiLCAia2luZCIsICJieXRlTGVuZ3RoIiwgInJlcXVpcmVfc3ltYm9scyIsICJsZW5ndGgiLCAieCIsICJuIiwgImtleXMiLCAiaSIsICJhdG9iIiwgInBvc2l0aW9uIiwgImkiLCAiZGF0YSIsICJCbG9iIiwgIm4iLCAiQmxvYiIsICJlbnRyeSIsICJET01FeGNlcHRpb24iLCAiQmxvYiIsICJ0ZXh0RW5jb2RlciIsICJsZW5ndGgiLCAiY2h1bmsiLCAibWV0aG9kcyIsICJyZXNvbHZlIiwgImVycm9yIiwgImRhdGEiLCAicGF0aCIsICJpIiwgImVycm9yIiwgImkiLCAicmVzb2x2ZSIsICJkYXRhIiwgImVyciIsICJkaXNwYXRjaCIsICJzZXNzaW9uIiwgIm9uQ29ubmVjdFRpbWVvdXQiLCAiRVJST1IiLCAiVFlQRSIsICJGTEFHUyIsICJMRU5JRU5UX0ZMQUdTIiwgIk1FVEhPRFMiLCAiRklOSVNIIiwgImkiLCAiSEVBREVSX1NUQVRFIiwgImRpc3BhdGNoIiwgImVycm9yIiwgInBhdGgiLCAiaSIsICJkaXNwYXRjaCIsICJjb25uZWN0IiwgInJlc29sdmUiLCAiaSIsICJleHBvcnRzIiwgImRhdGEiLCAicGFyc2VyIiwgInNvY2tldCIsICJyZXF1ZXN0IiwgInBhdGgiLCAiaGVhZGVycyIsICJlcnIiLCAiZGF0YSIsICJuZXh0IiwgInNpemUiLCAicmVzb2x2ZSIsICJvcmlnaW4iLCAiZXJyb3IiLCAiZGlzcGF0Y2hlciIsICJwb29sIiwgImRpc3BhdGNoZXIiLCAiV2Vha1JlZiIsICJCbG9iIiwgIm5vb3AiLCAicmVzb2x2ZSIsICJzZWxmIiwgImNvbnN1bWUiLCAibGVuZ3RoIiwgInJlcXVpcmVfdXRpbCIsICJzZWxmIiwgInJlc29sdmUiLCAiZGF0YSIsICJjYWxsYmFjayIsICJyZXMiLCAib3BhcXVlIiwgInJlc29sdmUiLCAiZGF0YSIsICJib2R5IiwgInJlc29sdmUiLCAiZGF0YSIsICJyZXNvbHZlIiwgImRhdGEiLCAiaSIsICJtb2NrRGlzcGF0Y2giLCAicGF0aCIsICJkYXRhIiwgImRpc3BhdGNoIiwgIngiLCAiZXJyb3IiLCAiZGF0YSIsICJzdGF0dXNDb2RlIiwgInJlc3BvbnNlT3B0aW9ucyIsICJuZXdNb2NrRGlzcGF0Y2giLCAiZXJyb3IiLCAicGF0aCIsICJkaXNwYXRjaCIsICJVUkwiLCAib3B0cyIsICJpIiwgIm1ldGhvZHMiLCAic2l6ZSIsICJlcnIiLCAicmVxdWlyZV9nbG9iYWwiLCAiaSIsICJkZWxpbWl0ZXIiLCAibmFtZXMiLCAiRE9NRXhjZXB0aW9uIiwgInRleHRFbmNvZGVyIiwgImRhdGEiLCAicmVxdWlyZV9yZXF1ZXN0IiwgIndpbmRvdyIsICJhYyIsICJET01FeGNlcHRpb24iLCAiZXJyb3IiLCAiZ2xvYmFsVGhpcyIsICJsZW5ndGgiLCAiZGlzcGF0Y2giLCAicmVzb2x2ZSIsICJuIiwgIngiLCAicmVxdWlyZV9zeW1ib2xzIiwgInJlcXVpcmVfdXRpbCIsICJET01FeGNlcHRpb24iLCAiYnRvYSIsICJlcnJvciIsICJ0eXBlIiwgInNpemUiLCAicmVxdWlyZV9zeW1ib2xzIiwgInJlcXVpcmVfdXRpbCIsICJBIiwgInJlcXVlc3QiLCAiY2FjaGUiLCAicmVxdWlyZV9jb25zdGFudHMiLCAicmVxdWlyZV91dGlsIiwgInBhdGgiLCAicG9zaXRpb24iLCAicmVxdWlyZV9jb25zdGFudHMiLCAicmVxdWlyZV9zeW1ib2xzIiwgImRhdGEiLCAicmVxdWlyZV91dGlsIiwgImRhdGEiLCAiZXJyb3IiLCAiZGF0YSIsICJpIiwgImJvZHkiLCAibG93ZXIiLCAibiIsICJuZXh0IiwgImxlbmd0aCIsICJkYXRhIiwgIkRPTUV4Y2VwdGlvbiIsICJkYXRhIiwgInBhcnNlciIsICJwYXRoIiwgIkh0dHBDb2RlcyIsICJIZWFkZXJzIiwgIk1lZGlhVHlwZXMiLCAicmVzb2x2ZSIsICJkYXRhIiwgImluZm8iLCAiZXJyb3IiLCAid3JpdGVGaWxlIiwgInRhZyIsICJhdHRycyIsICJkYXRhIiwgIndpZHRoIiwgImhlaWdodCIsICJwYXRoIiwgImZzIiwgInBhdGgiLCAiX2EiLCAicGF0aCIsICJvcyIsICJwYXRoIiwgImRhdGEiLCAibiIsICJ4IiwgImkiLCAicmVzb2x2ZSIsICJlcnJvciIsICJkYXRhIiwgIm9zIiwgInBhdGgiLCAiRXhpdENvZGUiLCAieCIsICJzZXRPdXRwdXQiLCAic2V0RmFpbGVkIiwgImVycm9yIiwgImlzRGVidWciLCAiaW5mbyIsICJzdGFydEdyb3VwIiwgImVuZEdyb3VwIiwgIkNvbnRleHQiLCAicGF0aCIsICJnbG9iYWwiLCAiZXhwb3J0cyIsICJlcnJvciIsICJyZXNvbHZlIiwgInJlamVjdCIsICJhcHBseUVhY2giLCAiYXJyIiwgImluZGV4IiwgImkiLCAibmV4dCIsICJsZW5ndGgiLCAibWFwIiwgIm5vZGUiLCAib24iLCAib25jZSIsICJvZmYiLCAiZGF0YSIsICJwcm9taXNlQ2FsbGJhY2siLCAieCIsICJmaWx0ZXIiLCAibG9nIiwgInkiLCAiYXJyYXkiLCAiaW5mbyIsICJzaXplIiwgIm4iLCAidHJhbnNmb3JtIiwgIndoaXRlc3BhY2UiLCAicCIsICJubCIsICJpIiwgInBhdGgiLCAiaSIsICJzZWxmIiwgImZzIiwgIm5leHQiLCAiZGF0YSIsICJtYXAiLCAiZXJyb3IiLCAiUHJvdmlkZXIiLCAic3RvcmUiLCAic2VsZiIsICJuYW1lcyIsICJuZXh0IiwgImkiLCAiZGF0YSIsICJmcyIsICJwYXRoIiwgImkiLCAieTE4biIsICJyZXF1aXJlX2J1aWxkIiwgImZzIiwgInBhdGgiLCAiY2FtZWxDYXNlIiwgImkiLCAiZGVjYW1lbGl6ZSIsICJ4IiwgIkRlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5IiwgIm1peGluIiwgImtleSIsICJlcnJvciIsICJuZXh0IiwgImFyZ3MiLCAidmFsdWUiLCAidmFsIiwgImFyZ3YiLCAicHJldiIsICJlbnYiLCAiYWxpYXNlcyIsICJkZWZhdWx0cyIsICJ5IiwgInNlbGYiLCAicGFyc2VyIiwgIndpZHRoIiwgImkiLCAicmdiIiwgInkiLCAieCIsICJpIiwgIm4iLCAieTIiLCAieDIiLCAiaSIsICJub2RlIiwgImZyb20iLCAidG8iLCAicGF0aCIsICJpIiwgIndyYXBBbnNpMTYiLCAid3JhcEFuc2kyNTYiLCAid3JhcEFuc2kxNm0iLCAicmdiIiwgIm4iLCAic3R5bGVzIiwgImFzc2VtYmxlU3R5bGVzIiwgImFuc2lTdHlsZXMiLCAidmlzaWJsZSIsICJjb2RlIiwgInJlcXVpcmVfYnVpbGQiLCAibWl4aW4iLCAiaSIsICJ3aWR0aCIsICJkaXJuYW1lIiwgInJlc29sdmUiLCAic3RhdFN5bmMiLCAicG9zaXRpb24iLCAic3RhY2siLCAiZnMiLCAiam9pbiIsICJyZXNvbHZlIiwgImRpcm5hbWUiLCAicGF0aCIsICJyZXF1aXJlX2J1aWxkIiwgImNtZCIsICJpIiwgInBvc2l0aW9uIiwgImxlbmd0aCIsICJzaGltIiwgImZpbHRlciIsICJ1c2FnZSIsICJ2YWxpZGF0aW9uIiwgInNlbGYiLCAiY29tbWFuZCIsICJ5YXJncyIsICJlcnJvciIsICJjIiwgInkxOG4iLCAid2lkdGgiLCAiYXJyYXkiLCAibWF4V2lkdGgiLCAiYXJndiIsICJjb21wbGV0aW9ucyIsICJ5IiwgImtleSIsICJnbG9iYWwiLCAieCIsICJrIiwgInR5cGUiLCAidmFsdWUiLCAicGFyc2VGbiIsICJnbG9iYWxzIiwgIm5hbWVzIiwgImhpZGUiLCAiY29tcGxldGlvbiIsICJyZWFkRmlsZVN5bmMiLCAicmVzb2x2ZSIsICJzZWxmIiwgInNlbGYiLCAiZW52IiwgImRhdGEiLCAic2VsZiIsICJyZXF1aXJlX2ZpbGUiLCAiZnMiLCAicGF0aCIsICJleGlzdHNTeW5jIiwgImZvcm1hdCIsICJzZWxmIiwgImV4aXN0cyIsICJkYXRhIiwgImV4IiwgIkxpdGVyYWwiLCAiUHJvdmlkZXIiLCAibmNvbmYiLCAibm9kZSIsICJub2RlIiwgInBhdGgiLCAiaSIsICJlcnJvciIsICJ0YWciLCAibm9kZSIsICJyb290IiwgIm5vZGUiLCAiaSIsICJlcnJvciIsICJpIiwgImkiLCAiZGF0YSIsICJyZXMiLCAicmVzIiwgIk5vZGUiLCAibm9kZSIsICJhbmNob3JzIiwgImRhdGEiLCAiTm9kZSIsICJtYXAiLCAibm9kZSIsICJOb2RlIiwgInBhdGgiLCAiaSIsICJub2RlIiwgIm4iLCAiY29tbWVudCIsICJwcmV2IiwgImkiLCAibmV4dCIsICJlbmQiLCAiaSIsICJjb21tZW50IiwgInRhZyIsICJub2RlIiwgInRhZyIsICJ0YWciLCAibWFwIiwgInZhbHVlIiwgImxvZyIsICJtYXAiLCAibm9kZSIsICJzdHJpbmdpZnkiLCAiY29tbWVudCIsICJpIiwgInN0ciIsICJtYXAiLCAicHJldiIsICJpIiwgIm5vZGUiLCAibWFwIiwgInByZXYiLCAiaSIsICJzZXEiLCAiZm9ybWF0IiwgInRhZyIsICJuIiwgImkiLCAibm9kZSIsICJub2RlIiwgIm1hcCIsICJyZXF1aXJlX3NjaGVtYSIsICJtYXAiLCAiaSIsICJjb21tZW50IiwgIm4iLCAiaSIsICJwYWlycyIsICJtYXAiLCAib21hcCIsICJyZXF1aXJlX2Jvb2wiLCAicmVxdWlyZV9mbG9hdCIsICJub2RlIiwgInJlcXVpcmVfaW50IiwgIm4iLCAibm9kZSIsICJwcmV2IiwgInNldCIsICJtYXAiLCAibiIsICJyZXMiLCAibm9kZSIsICJyZXF1aXJlX3NjaGVtYSIsICJtYXAiLCAibWFwIiwgInRhZyIsICJ0YWdzIiwgIm1hcCIsICJEb2N1bWVudCIsICJwYXRoIiwgIm5vZGUiLCAicHJldiIsICJ0YWciLCAicmVzIiwgInJlcXVpcmVfZXJyb3JzIiwgImVycm9yIiwgInByZXYiLCAibmV4dCIsICJjb21tZW50IiwgInRhZyIsICJ0YWciLCAibWFwIiwgInRhZyIsICJub2RlIiwgImNvbW1lbnQiLCAidGFnIiwgImkiLCAicHJldiIsICJtYXAiLCAidGFnIiwgIm5sIiwgIm5vZGUiLCAiaSIsICJ2YWx1ZSIsICJlbmQiLCAiZXJyb3IiLCAibiIsICJjb21tZW50IiwgImxlbmd0aCIsICJpIiwgIm5leHQiLCAibGVuZ3RoIiwgImNvbW1lbnQiLCAidGFnIiwgImVycm9yIiwgImJlZm9yZSIsICJpIiwgImNvbW1lbnQiLCAidGFnIiwgIm5vZGUiLCAiYmVmb3JlIiwgIkRvY3VtZW50IiwgIkRvY3VtZW50IiwgImNvbW1lbnQiLCAiaSIsICJlcnJvciIsICJubCIsICJwYXRoIiwgImkiLCAibmV4dCIsICJpIiwgIm4iLCAibmwiLCAiY2giLCAiaSIsICJwcmV2IiwgIm4iLCAiZXJyb3IiLCAibWFwIiwgIm5sIiwgInN0YXJ0IiwgImZzIiwgIkRvY3VtZW50IiwgImxvZyIsICJwYXJzZXIiLCAibGluZUNvdW50ZXIiLCAiRG9jdW1lbnQiLCAicGFyc2VyIiwgInJvb3QiLCAibW9kdWxlIiwgImV4cG9ydHMiLCAiYXJyYXkiLCAibGVuZ3RoIiwgImkiLCAicGF0aCIsICJmcm9tIiwgImVycm9yIiwgInRhZyIsICJjcmVhdGUiLCAibmV4dCIsICIkIiwgImhpZGUiLCAibWV0aG9kcyIsICJnbG9iYWwiLCAiZG9jdW1lbnQiLCAiZGF0YSIsICJodG1sIiwgIm5hbWVzIiwgInByb3RvIiwgIlJlZmxlY3QiLCAicG9zaXRpb24iLCAic2l6ZSIsICJTeW1ib2wiLCAicG9pbnQiLCAiSWNvbiIsICJuYW1lIiwgImNvbnRlbnRzIiwgInRhZ3MiLCAiYXR0cnMiLCAiREVGQVVMVF9BVFRSUyIsICJjbGFzcyIsICJjb21iaW5lZEF0dHJzIiwgImF0dHJzVG9TdHJpbmciLCAiT2JqZWN0IiwgImtleXMiLCAibWFwIiwgImtleSIsICJqb2luIiwgImljb25zIiwgInJlZHVjZSIsICJvYmplY3QiLCAiaWNvbiIsICJ0b1N2ZyIsICJyZXBsYWNlIiwgIkVycm9yIiwgImVsZW1lbnRzVG9SZXBsYWNlIiwgInF1ZXJ5U2VsZWN0b3JBbGwiLCAiQXJyYXkiLCAiZm9yRWFjaCIsICJyZXBsYWNlRWxlbWVudCIsICJlbGVtZW50IiwgImVsZW1lbnRBdHRycyIsICJnZXRBdHRycyIsICJ1bmRlZmluZWQiLCAiY29uc29sZSIsICJ3YXJuIiwgInN2Z1N0cmluZyIsICJzdmdEb2N1bWVudCIsICJET01QYXJzZXIiLCAicGFyc2VGcm9tU3RyaW5nIiwgInN2Z0VsZW1lbnQiLCAicXVlcnlTZWxlY3RvciIsICJwYXJlbnROb2RlIiwgInJlcGxhY2VDaGlsZCIsICJhdHRyaWJ1dGVzIiwgImF0dHIiLCAidmFsdWUiLCAic2F4IiwgInBhcnNlciIsICJpIiwgImVycm9yIiwgImRhdGEiLCAicyIsICJ0YWciLCAieCIsICJuIiwgImxlbmd0aCIsICJRdWV1ZSIsICJzZWxmIiwgIm5leHQiLCAicmVxdWlyZV91dGlscyIsICJpIiwgIm1ldGhvZHMiLCAiaXNCaWdFbmRpYW4iLCAicmVzZXJ2ZWQiLCAicmVzZXJ2ZWQiLCAic2l6ZSIsICJpc0JpZ0VuZGlhbiIsICJuZXh0IiwgImkiLCAic2l6ZSIsICJsZW5ndGgiLCAiaGVpZ2h0IiwgIndpZHRoIiwgInBvc2l0aW9uIiwgInNpemUiLCAicm9vdCIsICJ3aWR0aCIsICJoZWlnaHQiLCAiYXR0cnMiLCAiZnMiLCAiaXNCaWdFbmRpYW4iLCAibGVuZ3RoIiwgIndpZHRoIiwgImhlaWdodCIsICJyZXF1aXJlX2Rpc3QiLCAiZnMiLCAicGF0aCIsICJzaXplIiwgInJlYWRGaWxlU3luYyIsICJpbnB1dCIsICJsZW5ndGgiLCAiaSIsICJieXRlTGVuZ3RoIiwgImkiLCAibGVuIiwgImFyciIsICJ1aW50OCIsICJsZW4yIiwgImkiLCAibGVuZ3RocyIsICJvZmYiLCAidGFnIiwgImxlbmd0aCIsICJwcmV2IiwgIm9mZnMiLCAiaXNCaWdFbmRpYW4iLCAibiIsICJpIiwgImFycmF5IiwgImRhdGEiLCAiSU5JVElBTF9TVEFURSIsICJGQUlMX1NUQVRFIiwgIlN0YXRlTWFjaGluZSIsICJjb25zdHJ1Y3RvciIsICJkZmEiLCAic3RhdGVUYWJsZSIsICJhY2NlcHRpbmciLCAidGFncyIsICJtYXRjaCIsICJzdHIiLCAic2VsZiIsICJTeW1ib2wiLCAiaXRlcmF0b3IiLCAic3RhdGUiLCAic3RhcnRSdW4iLCAibGFzdEFjY2VwdGluZyIsICJsYXN0U3RhdGUiLCAicCIsICJsZW5ndGgiLCAiYyIsICJhcHBseSIsICJhY3Rpb25zIiwgInN0YXJ0IiwgImVuZCIsICJ0YWciLCAic2xpY2UiLCAiY2xvbmUiLCAicGFyZW50IiwgImRlcHRoIiwgInByb3RvIiwgInJlc29sdmUiLCAiaSIsICJhdHRycyIsICJpIiwgInJlcXVpcmVfYml0X3JlYWRlciIsICJpIiwgImRhdGEiLCAiaSIsICJyZXF1aXJlX2NvbnRleHQiLCAidHJhbnNmb3JtIiwgImkiLCAiQ29udGV4dCIsICJuIiwgImkiLCAieCIsICJuZXh0IiwgImNvcmUiLCAiaW1wb3J0X3lhbWwiLCAiZnMiLCAicGF0aCIsICJmaWxlVVJMVG9QYXRoIiwgImdyZWVuIiwgImhleCIsICJwcm9jZXNzIiwgInBvc2l0aW9uIiwgInN0eWxlcyIsICJjaGFsayIsICJzdHlsZXMiLCAic2VsZiIsICJzdGFydEdyb3VwIiwgImxvZyIsICJlcnJvciIsICJZQU1MIiwgInJlYWRGaWxlU3luYyIsICJwYXRoIiwgIl9fZGlybmFtZSIsICJyZWFkRmlsZVN5bmMiLCAiZXJyb3IiLCAibG9nIiwgImZyb20iLCAibG9nIiwgInJlYWRGaWxlU3luYyIsICJlcnJvciIsICJjb3JlIiwgImZzIiwgImVycm9yIiwgImVycm9yIiwgImxvZyIsICJuY29uZiIsICJfX2ZpbGVuYW1lIiwgImZpbGVVUkxUb1BhdGgiLCAiX19kaXJuYW1lIiwgImxvZyIsICJlcnJvciIsICJZQU1MIiwgImNvcmUiLCAibG9nIiwgImZzIiwgInBhdGgiLCAiYXJyYXkiLCAiaSIsICJ3aWR0aCIsICJoZWlnaHQiLCAieCIsICJ5IiwgImRhdGEiLCAibm9kZSIsICJub2RlIiwgImkiLCAibWV0aG9kcyIsICJpIiwgImF0dHIiLCAiYXJyYXkiLCAiZGF0YSIsICJpIiwgImhleCIsICJpIiwgInkiLCAiX2EiLCAiX2IiLCAiX2MiLCAieCIsICJiIiwgImNvbG9yIiwgImZvcm1hdCIsICJ4IiwgInkiLCAicG9zaXRpb24iLCAicngiLCAicnkiLCAiY3giLCAiY3kiLCAiZHgiLCAiZHkiLCAieCIsICJ5IiwgInN2ZyIsICJwYXRoIiwgIm5vZGUiLCAieCIsICJ5IiwgIndpZHRoIiwgImhlaWdodCIsICJib3giLCAiYmJveCIsICJlbCIsICJyYm94IiwgInBvaW50IiwgImFyciIsICJpIiwgIm1ldGhvZHMiLCAiYXR0cnMiLCAibm9kZSIsICJuIiwgIm5vZGUiLCAiZGF0YSIsICJFdmVudFRhcmdldCIsICJkYXRhIiwgImkiLCAiYXJyIiwgImFycmF5IiwgImF0dHIiLCAibm9kZSIsICJFdmVudFRhcmdldCIsICJub2RlIiwgImF0dHJzIiwgImkiLCAibWFwIiwgInBvc2l0aW9uIiwgIm5vZGUiLCAiYXR0cnMiLCAieCIsICJ5IiwgInJvb3QiLCAiaGVpZ2h0IiwgImF0dHIiLCAid2lkdGgiLCAiaSIsICJjeCIsICJjeSIsICJ4IiwgInkiLCAibGVuZ3RoIiwgIm1ldGhvZHMiLCAic3RyIiwgIm1hdHJpeCIsICJ0cmFuc2Zvcm0iLCAiaSIsICJjdG0iLCAiaSIsICJub2RlIiwgImF0dHJzIiwgInJ4IiwgInJ5IiwgIngiLCAieSIsICJ3aWR0aCIsICJoZWlnaHQiLCAibm9kZSIsICJhdHRycyIsICJ3aWR0aCIsICJoZWlnaHQiLCAibm9kZSIsICJ4IiwgInkiLCAiYXR0cnMiLCAibm9kZSIsICJhdHRycyIsICJ3aWR0aCIsICJoZWlnaHQiLCAibm9kZSIsICJhdHRycyIsICJhdHRyIiwgIngiLCAieSIsICJpIiwgImFycmF5IiwgIndpZHRoIiwgImhlaWdodCIsICJoZWlnaHQiLCAid2lkdGgiLCAieCIsICJ5IiwgIngiLCAieSIsICJ3aWR0aCIsICJoZWlnaHQiLCAibm9kZSIsICJhdHRycyIsICJ4IiwgInkiLCAieDIiLCAieTIiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiYXR0cnMiLCAiaGVpZ2h0IiwgIngiLCAieSIsICJ3aWR0aCIsICJhdHRyIiwgIngyIiwgInkyIiwgImZyb20iLCAidG8iLCAib3MiLCAiaSIsICJpIiwgInBhcnNlciIsICJsZW5ndGgiLCAiaSIsICJ4IiwgInkiLCAid2lkdGgiLCAiaGVpZ2h0IiwgImkiLCAiYXJyIiwgImZyb20iLCAidG8iLCAibm9kZSIsICJhdHRycyIsICJoZWlnaHQiLCAieCIsICJ5IiwgIndpZHRoIiwgIngiLCAieSIsICJ3aWR0aCIsICJoZWlnaHQiLCAibm9kZSIsICJhdHRycyIsICJub2RlIiwgImF0dHJzIiwgIm5vZGUiLCAiYXR0cnMiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiRXZlbnRUYXJnZXQiLCAiaSIsICJydW5uZXJJbmZvIiwgImluZm8iLCAidGltZWxpbmUiLCAiRXZlbnRUYXJnZXQiLCAidHJhbnNmb3JtIiwgInBvc2l0aW9uIiwgIngiLCAidGltZWxpbmUiLCAiaSIsICJ0cmFuc2Zvcm1zIiwgImF0dHJzIiwgInBvaW50IiwgInkiLCAidG8iLCAiZnJvbSIsICJ3aWR0aCIsICJoZWlnaHQiLCAibm9kZSIsICJhdHRycyIsICJTeW1ib2wiLCAibm9kZSIsICJhdHRycyIsICJjeCIsICJjeSIsICJtb3ZlIiwgIngiLCAieSIsICJ4IiwgInkiLCAibW92ZSIsICJjeCIsICJjeSIsICJidWlsZCIsICJub2RlIiwgImF0dHJzIiwgInNlbGYiLCAiaSIsICJmb250U2l6ZSIsICJkeSIsICJub2RlIiwgImF0dHJzIiwgImR4IiwgImR5IiwgImkiLCAiZm9udFNpemUiLCAibm9kZSIsICJhdHRycyIsICJyeCIsICJyeSIsICJzaXplIiwgIm5vZGUiLCAiYXR0cnMiLCAibm9kZSIsICJhdHRycyIsICJ3aWR0aCIsICJoZWlnaHQiLCAiaGVpZ2h0IiwgIm1vdmUiLCAic2l6ZSIsICJ3aWR0aCIsICJ4IiwgInkiLCAiZHgiLCAiZHkiLCAiYmJveCIsICJoZWlnaHQiLCAibW92ZSIsICJ4IiwgInkiLCAic2l6ZSIsICJ3aWR0aCIsICJub2RlIiwgImF0dHJzIiwgIm5vZGUiLCAiYXR0cnMiLCAibm9kZSIsICJhdHRycyIsICJub2RlIiwgImF0dHJzIiwgImkiLCAibm9kZSIsICJhdHRycyIsICJub2RlIiwgImF0dHJzIiwgInBhdGgiLCAibm9kZSIsICJhdHRycyIsICJTeW1ib2wiLCAiRXZlbnRUYXJnZXQiLCAiZGVmYXVsdHNfZXhwb3J0cyIsICJqb2luIiwgImRpcm5hbWUiLCAiZmlsZVVSTFRvUGF0aCIsICJleHRlbmQiLCAibWV0aG9kcyIsICJpIiwgIm1peGluIiwgIkV2ZW50VGFyZ2V0IiwgImkiLCAibm9kZSIsICJhdHRycyIsICJzdmciLCAiaHRtbCIsICJ4bWxucyIsICJFdmVudFRhcmdldCIsICJodG1sIiwgImkiLCAibm9kZSIsICJiZWZvcmUiLCAiZXh0ZW5kIiwgImh0bWwiLCAibm9kZSIsICJkb2N1bWVudCIsICJub2RlIiwgIm5vZGUiLCAibmV4dCIsICJkYXRhIiwgIkV2ZW50IiwgIkV2ZW50IiwgIlRleHQiLCAibm9kZSIsICJyb290IiwgImZpbHRlciIsICJoYXNDbGFzcyIsICJub2RlIiwgImhleCIsICJodG1sRW50aXRpZXMiLCAiZGVsaW1pdGVyIiwgImkiLCAidHJhbnNmb3JtcyIsICJkZWxpbWl0ZXIiLCAiaXNQYXRoTGV0dGVyIiwgInF1ZXJ5IiwgImkiLCAibm9kZSIsICJudGgiLCAiZGVsaW1pdGVyIiwgIm4iLCAiaHRtbCIsICJub2RlIiwgIm5vZGUiLCAiZG9jdW1lbnQiLCAiY2RhdGEiLCAicGFyc2VyIiwgInNheCIsICJzdHIiLCAibm9kZSIsICJhdHRycyIsICJtYXAiLCAiYXJyIiwgImNzcyIsICJ4bWxucyIsICJub2RlIiwgImh0bWwiLCAic3R5bGVzIiwgIkVsZW1lbnQiLCAiYXR0ciIsICJodG1sRW50aXRpZXMiLCAiRWxlbWVudCIsICJzaXplT2YiLCAic2l6ZSIsICJFdmVudCIsICJFbGVtZW50IiwgIlBvaW50IiwgIngiLCAieSIsICJwb2ludCIsICJCb3giLCAiZGVsaW1pdGVyIiwgIngiLCAieSIsICJQb2ludCIsICJyYWRpYW5zIiwgIngiLCAieSIsICJCb3giLCAicGF0aEhhbmRsZXJzIiwgIkxpbmUiLCAiUG9pbnQiLCAiaSIsICJwYXRoUGFyc2VyIiwgImFycmF5IiwgImRlbGltaXRlciIsICJhcnIiLCAiaXNQYXRoTGV0dGVyIiwgIkJveCIsICJyeCIsICJyeSIsICJsZW5ndGgiLCAicm9vdCIsICJ4IiwgInkiLCAieDIiLCAieTIiLCAicGF0aFBhcnNlciIsICJsZW5ndGgiLCAiaSIsICJ4IiwgInkiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAicngiLCAicnkiLCAieDIiLCAieTIiLCAicGF0aCIsICJsZW5ndGgiLCAibGVuZ3RoIiwgImkiLCAiQmFzZSIsICJzaXplIiwgIkJhc2UiLCAic2l6ZSIsICJsZW5ndGgiLCAiQmFzZSIsICJsZW5ndGgiLCAiaSIsICJhcnJheSIsICJzaXplIiwgImxlbmd0aCIsICJpIiwgIkJhc2UiLCAiaSIsICJCYXNlIiwgImxlbmd0aCIsICJCYXNlIiwgIkJhc2UiLCAiZGF0YSIsICJCYXNlIiwgImxlbmd0aCIsICJ3aWR0aCIsICJzaXplIiwgImkiLCAiQmFzZSIsICJsZW5ndGgiLCAic2l6ZSIsICJpIiwgImxlbmd0aCIsICJzaXplIiwgImkiLCAiQmFzZSIsICJzaXplIiwgImkiLCAiJGJkakdwJHVuaWNvZGV0cmllIiwgIiRiZGpHcCRiYXNlNjRqcyIsICJuIiwgImZvcm1hdCIsICJpIiwgImtleSIsICJtYXBwaW5nIiwgImFyciIsICJzaXplIiwgIiQ1MlpJZiRmYXN0ZGVlcGVxdWFsIiwgInN0cmVhbSIsICJsZW5ndGgiLCAidGFnIiwgIngiLCAicG9zaXRpb24iLCAieSIsICJ0YWciLCAibmV4dCIsICJpIiwgIndpZHRoIiwgInBvc2l0aW9uIiwgImhlaWdodCIsICJiYm94IiwgIngiLCAieSIsICJwcm9jZXNzIiwgImkiLCAiZyIsICJsZW5ndGgiLCAiZ2xvYmFsIiwgInRhZyIsICJpIiwgIiQ1MlpJZiR1bmljb2RldHJpZSIsICJwcmV2IiwgInRhZyIsICIkcGFyY2VsJGludGVyb3BEZWZhdWx0IiwgIiQ1MlpJZiRkZmEiLCAicG9zaXRpb24iLCAiaW5mbyIsICJhcnIiLCAib2xkUG9zIiwgImluZGV4IiwgInBhaXIiLCAibmV4dCIsICJ4IiwgInkiLCAiYmJveCIsICJjeCIsICJjeSIsICJwYXRoIiwgInNpemUiLCAieCIsICJ5IiwgImR4IiwgImR5IiwgInByZXYiLCAiaSIsICJwb2ludCIsICJjb250b3VycyIsICJwYXRoIiwgIndpZHRoIiwgIm4iLCAic2l6ZSIsICJiYm94IiwgInAiLCAibmV4dCIsICIkNTJaSWYkY2xvbmUiLCAiZm9ybWF0IiwgInRhZyIsICIkNTJaSWYkdGlueWluZmxhdGUiLCAiJDUyWklmJGJyb3RsaWRlY29tcHJlc3NqcyIsICJsZW5ndGgiLCAiZm9udHMiLCAieCIsICJ5IiwgImZvbnREaXIiLCAiZm9udFNpemUiLCAiZm9udEZhbWlseSIsICJpIiwgInBhdGgiLCAiaGVpZ2h0IiwgIndpZHRoIiwgIkJveCIsICJub2RlIiwgInJib3giLCAiZ2V0UGF0aFNlZ21lbnRzIiwgImR4IiwgImR5IiwgIngiLCAieSIsICJkZWxpbWl0ZXIiLCAiZGF0YSIsICJmb250U2l6ZSIsICJmb250RmFtaWx5IiwgImRlbGltaXRlciIsICJ3aWR0aCIsICJoZWlnaHQiLCAieCIsICJ5IiwgIm5vZGUiLCAidHJhbnNmb3JtcyIsICJzdHIiLCAibWF0cml4IiwgInRyYW5zZm9ybSIsICJCb3giLCAibGVuZ3RoIiwgInVuaXRTdHJpbmciLCAic3ZnIiwgImh0bWwiLCAicm9vdCIsICJFbGVtZW50IiwgIlRleHQiLCAiRXZlbnRUYXJnZXQiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiYXR0ciIsICJkZWZhdWx0c19leHBvcnRzIiwgInBlcmZvcm1hbmNlIiwgIlRleHQiLCAiRWxlbWVudCIsICJFdmVudCIsICJleHRlbmQiLCAid2luZG93IiwgImRvY3VtZW50IiwgInN2ZyIsICJkb2N1bWVudCIsICJsb2ciLCAiYXR0ciIsICJ3aWR0aCIsICJsb2ciLCAic3ZnIiwgImxvZyIsICJhcnIiLCAiZGF0YSIsICJpIiwgImxvZyIsICJsb2ciLCAibG9nIiwgImxvZyIsICJsb2ciLCAibG9nIiwgInByb21pc2VzIiwgInBhdGgiLCAibG9nIiwgInBhdGgiLCAiZXJyb3IiLCAibG9nIiwgImVycm9yIiwgImxvZyJdCn0K +//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vbm9kZV9tb2R1bGVzL0BhY3Rpb25zL2NvcmUvc3JjL3V0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9jb21tYW5kLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9maWxlLWNvbW1hbmQudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BhY3Rpb25zL2h0dHAtY2xpZW50L3NyYy9wcm94eS50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdHVubmVsL2xpYi90dW5uZWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3R1bm5lbC9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jb3JlL3N5bWJvbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY29yZS9lcnJvcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY29yZS9jb25zdGFudHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY29yZS91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3RpbWVycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2RlcHMvc3RyZWFtc2VhcmNoL3NibWguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYXN0aWZ5L2J1c2JveS9kZXBzL2RpY2VyL2xpYi9QYXJ0U3RyZWFtLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvbGliL3V0aWxzL2dldExpbWl0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvZGVwcy9kaWNlci9saWIvSGVhZGVyUGFyc2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvZGVwcy9kaWNlci9saWIvRGljZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYXN0aWZ5L2J1c2JveS9saWIvdXRpbHMvZGVjb2RlVGV4dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi91dGlscy9wYXJzZVBhcmFtcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi91dGlscy9iYXNlbmFtZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi90eXBlcy9tdWx0aXBhcnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYXN0aWZ5L2J1c2JveS9saWIvdXRpbHMvRGVjb2Rlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGZhc3RpZnkvYnVzYm95L2xpYi90eXBlcy91cmxlbmNvZGVkLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFzdGlmeS9idXNib3kvbGliL21haW4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvY29uc3RhbnRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL2dsb2JhbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL3N5bWJvbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvd2ViaWRsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL2RhdGFVUkwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvZmlsZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC9mb3JtZGF0YS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC9ib2R5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2NvcmUvcmVxdWVzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9kaXNwYXRjaGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Rpc3BhdGNoZXItYmFzZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jb3JlL2Nvbm5lY3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9zcmMvbGxodHRwL3V0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvc3JjL2xsaHR0cC9jb25zdGFudHMudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvaGFuZGxlci9SZWRpcmVjdEhhbmRsZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvaW50ZXJjZXB0b3IvcmVkaXJlY3RJbnRlcmNlcHRvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9sbGh0dHAvbGxodHRwLXdhc20uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbGxodHRwL2xsaHR0cF9zaW1kLXdhc20uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY2xpZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL25vZGUvZml4ZWQtcXVldWUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvcG9vbC1zdGF0cy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9wb29sLWJhc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvcG9vbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9iYWxhbmNlZC1wb29sLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2NvbXBhdC9kaXNwYXRjaGVyLXdlYWtyZWYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYWdlbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYXBpL3JlYWRhYmxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hYm9ydC1zaWduYWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYXBpL2FwaS1yZXF1ZXN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hcGktc3RyZWFtLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hcGktcGlwZWxpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvYXBpL2FwaS11cGdyYWRlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2FwaS9hcGktY29ubmVjdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9hcGkvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9tb2NrLWVycm9ycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9tb2NrL21vY2stc3ltYm9scy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9tb2NrL21vY2stdXRpbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9tb2NrLWludGVyY2VwdG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL21vY2svbW9jay1jbGllbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9tb2NrLXBvb2wuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvbW9jay9wbHVyYWxpemVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL21vY2svcGVuZGluZy1pbnRlcmNlcHRvcnMtZm9ybWF0dGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL21vY2svbW9jay1hZ2VudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9wcm94eS1hZ2VudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9oYW5kbGVyL1JldHJ5SGFuZGxlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9nbG9iYWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvaGFuZGxlci9EZWNvcmF0b3JIYW5kbGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZldGNoL2hlYWRlcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvcmVzcG9uc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmV0Y2gvcmVxdWVzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9mZXRjaC9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9maWxlYXBpL3N5bWJvbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmlsZWFwaS9wcm9ncmVzc2V2ZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZpbGVhcGkvZW5jb2RpbmcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvZmlsZWFwaS91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2ZpbGVhcGkvZmlsZXJlYWRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jYWNoZS9zeW1ib2xzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2NhY2hlL3V0aWwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY2FjaGUvY2FjaGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvY2FjaGUvY2FjaGVzdG9yYWdlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Nvb2tpZXMvY29uc3RhbnRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Nvb2tpZXMvdXRpbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi9jb29raWVzL3BhcnNlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL2Nvb2tpZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvd2Vic29ja2V0L2NvbnN0YW50cy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi93ZWJzb2NrZXQvc3ltYm9scy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi93ZWJzb2NrZXQvZXZlbnRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3dlYnNvY2tldC91dGlsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3dlYnNvY2tldC9jb25uZWN0aW9uLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmRpY2kvbGliL3dlYnNvY2tldC9mcmFtZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2xpYi93ZWJzb2NrZXQvcmVjZWl2ZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3VuZGljaS9saWIvd2Vic29ja2V0L3dlYnNvY2tldC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5kaWNpL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9odHRwLWNsaWVudC9zcmMvaW5kZXgudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0BhY3Rpb25zL2h0dHAtY2xpZW50L3NyYy9hdXRoLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9vaWRjLXV0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9zdW1tYXJ5LnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9wYXRoLXV0aWxzLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9pby9zcmMvaW8tdXRpbC50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGFjdGlvbnMvaW8vc3JjL2lvLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9leGVjL3NyYy90b29scnVubmVyLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9leGVjL3NyYy9leGVjLnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9AYWN0aW9ucy9jb3JlL3NyYy9wbGF0Zm9ybS50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGFjdGlvbnMvY29yZS9zcmMvY29yZS50cyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQGFjdGlvbnMvZ2l0aHViL3NyYy9jb250ZXh0LnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9hc3luYy9kaXN0L2FzeW5jLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9ub2RlX21vZHVsZXMvaW5pL2luaS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbGliL25jb25mL2Zvcm1hdHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL25jb25mL2xpYi9uY29uZi9zdG9yZXMvbWVtb3J5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYvY29tbW9uLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYvcHJvdmlkZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL25jb25mL3BhY2thZ2UuanNvbiIsICIuLi8uLi9ub2RlX21vZHVsZXMveTE4bi9idWlsZC9pbmRleC5janMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhcmdzLXBhcnNlci9idWlsZC9pbmRleC5janMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Fuc2ktcmVnZXgvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N0cmlwLWFuc2kvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N0cmluZy13aWR0aC9ub2RlX21vZHVsZXMvaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Vtb2ppLXJlZ2V4L2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdHJpbmctd2lkdGgvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Fuc2ktc3R5bGVzL25vZGVfbW9kdWxlcy9jb2xvci1uYW1lL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9hbnNpLXN0eWxlcy9ub2RlX21vZHVsZXMvY29sb3ItY29udmVydC9jb252ZXJzaW9ucy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYW5zaS1zdHlsZXMvbm9kZV9tb2R1bGVzL2NvbG9yLWNvbnZlcnQvcm91dGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Fuc2ktc3R5bGVzL25vZGVfbW9kdWxlcy9jb2xvci1jb252ZXJ0L2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9hbnNpLXN0eWxlcy9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL3dyYXAtYW5zaS9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL2NsaXVpL2J1aWxkL2luZGV4LmNqcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZXNjYWxhZGUvc3luYy9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZ2V0LWNhbGxlci1maWxlL2luZGV4LnRzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXF1aXJlLWRpcmVjdG9yeS9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL3lhcmdzL2J1aWxkL2luZGV4LmNqcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbm9kZV9tb2R1bGVzL3lhcmdzL2luZGV4LmNqcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbGliL25jb25mL3N0b3Jlcy9hcmd2LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYvc3RvcmVzL2Vudi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc2VjdXJlLWtleXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL25jb25mL2xpYi9uY29uZi9zdG9yZXMvZmlsZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvbmNvbmYvbGliL25jb25mL3N0b3Jlcy9saXRlcmFsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9uY29uZi9saWIvbmNvbmYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy9pZGVudGl0eS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3Zpc2l0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvZG9jL2RpcmVjdGl2ZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9kb2MvYW5jaG9ycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2RvYy9hcHBseVJldml2ZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy90b0pTLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvbm9kZXMvTm9kZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL0FsaWFzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvbm9kZXMvU2NhbGFyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvZG9jL2NyZWF0ZU5vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy9Db2xsZWN0aW9uLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc3RyaW5naWZ5L3N0cmluZ2lmeUNvbW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zdHJpbmdpZnkvZm9sZEZsb3dMaW5lcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3N0cmluZ2lmeS9zdHJpbmdpZnlTdHJpbmcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zdHJpbmdpZnkvc3RyaW5naWZ5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc3RyaW5naWZ5L3N0cmluZ2lmeVBhaXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9sb2cuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvbWVyZ2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9ub2Rlcy9hZGRQYWlyVG9KU01hcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL1BhaXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zdHJpbmdpZnkvc3RyaW5naWZ5Q29sbGVjdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL1lBTUxNYXAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEvY29tbW9uL21hcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L25vZGVzL1lBTUxTZXEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEvY29tbW9uL3NlcS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9jb21tb24vc3RyaW5nLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL2NvbW1vbi9udWxsLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL2NvcmUvYm9vbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEvY29yZS9mbG9hdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9jb3JlL2ludC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9jb3JlL3NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS9qc29uL3NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS95YW1sLTEuMS9iaW5hcnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvcGFpcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvb21hcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS95YW1sLTEuMS9ib29sLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL3lhbWwtMS4xL2Zsb2F0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL3lhbWwtMS4xL2ludC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS95YW1sLTEuMS9zZXQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9zY2hlbWEveWFtbC0xLjEvdGltZXN0YW1wLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL3lhbWwtMS4xL3NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3NjaGVtYS90YWdzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3Qvc2NoZW1hL1NjaGVtYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3N0cmluZ2lmeS9zdHJpbmdpZnlEb2N1bWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2RvYy9Eb2N1bWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2Vycm9ycy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1wcm9wcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvdXRpbC1jb250YWlucy1uZXdsaW5lLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS91dGlsLWZsb3ctaW5kZW50LWNoZWNrLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS91dGlsLW1hcC1pbmNsdWRlcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1ibG9jay1tYXAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL3Jlc29sdmUtYmxvY2stc2VxLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS9yZXNvbHZlLWVuZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1mbG93LWNvbGxlY3Rpb24uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL2NvbXBvc2UtY29sbGVjdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvcmVzb2x2ZS1ibG9jay1zY2FsYXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL3Jlc29sdmUtZmxvdy1zY2FsYXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9jb21wb3NlL2NvbXBvc2Utc2NhbGFyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS91dGlsLWVtcHR5LXNjYWxhci1wb3NpdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvY29tcG9zZS1ub2RlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvY29tcG9zZS9jb21wb3NlLWRvYy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2NvbXBvc2UvY29tcG9zZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3lhbWwvZGlzdC9wYXJzZS9jc3Qtc2NhbGFyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcGFyc2UvY3N0LXN0cmluZ2lmeS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3BhcnNlL2NzdC12aXNpdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3BhcnNlL2NzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L3BhcnNlL2xleGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcGFyc2UvbGluZS1jb3VudGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcGFyc2UvcGFyc2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy95YW1sL2Rpc3QvcHVibGljLWFwaS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMveWFtbC9kaXN0L2luZGV4LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL3dlYnBhY2svdW5pdmVyc2FsTW9kdWxlRGVmaW5pdGlvbiIsICJ3ZWJwYWNrOi8vZmVhdGhlci93ZWJwYWNrL2Jvb3RzdHJhcCIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY2xhc3NuYW1lcy9kZWR1cGUuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvZXMvYXJyYXkvZnJvbS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvYS1mdW5jdGlvbi5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvYW4tb2JqZWN0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9hcnJheS1mcm9tLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9hcnJheS1pbmNsdWRlcy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvYmluZC1jb250ZXh0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9jYWxsLXdpdGgtc2FmZS1pdGVyYXRpb24tY2xvc2luZy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY2hlY2stY29ycmVjdG5lc3Mtb2YtaXRlcmF0aW9uLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9jbGFzc29mLXJhdy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY2xhc3NvZi5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY29weS1jb25zdHJ1Y3Rvci1wcm9wZXJ0aWVzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9jb3JyZWN0LXByb3RvdHlwZS1nZXR0ZXIuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2NyZWF0ZS1pdGVyYXRvci1jb25zdHJ1Y3Rvci5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvY3JlYXRlLXByb3BlcnR5LWRlc2NyaXB0b3IuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZGVmaW5lLWl0ZXJhdG9yLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9kZXNjcmlwdG9ycy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZG9jdW1lbnQtY3JlYXRlLWVsZW1lbnQuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2VudW0tYnVnLWtleXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2V4cG9ydC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZmFpbHMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2Z1bmN0aW9uLXRvLXN0cmluZy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZ2V0LWl0ZXJhdG9yLW1ldGhvZC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvZ2xvYmFsLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9oYXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2hpZGRlbi1rZXlzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9oaWRlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9odG1sLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pZTgtZG9tLWRlZmluZS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvaW5kZXhlZC1vYmplY3QuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2ludGVybmFsLXN0YXRlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pcy1hcnJheS1pdGVyYXRvci1tZXRob2QuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL2lzLWZvcmNlZC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvaXMtb2JqZWN0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pcy1wdXJlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9pdGVyYXRvcnMtY29yZS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvaXRlcmF0b3JzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9uYXRpdmUtc3ltYm9sLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9uYXRpdmUtd2Vhay1tYXAuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1jcmVhdGUuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1kZWZpbmUtcHJvcGVydGllcy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWRlZmluZS1wcm9wZXJ0eS5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktZGVzY3JpcHRvci5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktbmFtZXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1nZXQtb3duLXByb3BlcnR5LXN5bWJvbHMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1nZXQtcHJvdG90eXBlLW9mLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9vYmplY3Qta2V5cy1pbnRlcm5hbC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb2JqZWN0LWtleXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL29iamVjdC1wcm9wZXJ0eS1pcy1lbnVtZXJhYmxlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9vYmplY3Qtc2V0LXByb3RvdHlwZS1vZi5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvb3duLWtleXMuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3BhdGguanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3JlZGVmaW5lLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9yZXF1aXJlLW9iamVjdC1jb2VyY2libGUuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3NldC1nbG9iYWwuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3NldC10by1zdHJpbmctdGFnLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9zaGFyZWQta2V5LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy9zaGFyZWQuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3N0cmluZy1hdC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvdG8tYWJzb2x1dGUtaW5kZXguanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3RvLWluZGV4ZWQtb2JqZWN0LmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy90by1pbnRlZ2VyLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy90by1sZW5ndGguanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3RvLW9iamVjdC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9pbnRlcm5hbHMvdG8tcHJpbWl0aXZlLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy91aWQuanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvaW50ZXJuYWxzL3ZhbGlkYXRlLXNldC1wcm90b3R5cGUtb2YtYXJndW1lbnRzLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL25vZGVfbW9kdWxlcy9jb3JlLWpzL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbC5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9ub2RlX21vZHVsZXMvY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmZyb20uanMiLCAid2VicGFjazovL2ZlYXRoZXIvbm9kZV9tb2R1bGVzL2NvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcuaXRlcmF0b3IuanMiLCAid2VicGFjazovL2ZlYXRoZXIvKHdlYnBhY2spL2J1aWxkaW4vZ2xvYmFsLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL3NyYy9pY29uLmpzIiwgIndlYnBhY2s6Ly9mZWF0aGVyL3NyYy9pY29ucy5qcyIsICJ3ZWJwYWNrOi8vZmVhdGhlci9zcmMvaW5kZXguanMiLCAid2VicGFjazovL2ZlYXRoZXIvc3JjL3JlcGxhY2UuanMiLCAid2VicGFjazovL2ZlYXRoZXIvc3JjL3RvLXN2Zy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc2F4L2xpYi9zYXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2luaGVyaXRzL2luaGVyaXRzX2Jyb3dzZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2luaGVyaXRzL2luaGVyaXRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9xdWV1ZS9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvYm1wLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvaWNvLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvY3VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvZGRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvZ2lmLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvaGVpZi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL2ljbnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy9qMmMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy9qcDIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy9qcGcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC91dGlscy9iaXQtcmVhZGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvanhsLXN0cmVhbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL2p4bC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL2t0eC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3BuZy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3BubS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3BzZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3N2Zy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3RnYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L3R5cGVzL3RpZmYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC90eXBlcy93ZWJwLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9pbWFnZS1zaXplL2Rpc3QvdHlwZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ltYWdlLXNpemUvZGlzdC9kZXRlY3Rvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvaW1hZ2Utc2l6ZS9kaXN0L2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mYXN0LWRlZXAtZXF1YWwvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jhc2U2NC1qcy9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdGlueS1pbmZsYXRlL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmljb2RlLXRyaWUvc3dhcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5pY29kZS10cmllL2luZGV4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9kZmEvc3JjL1N0YXRlTWFjaGluZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvY2xvbmUvY2xvbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jyb3RsaS9kZWMvc3RyZWFtcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlYy9iaXRfcmVhZGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9icm90bGkvZGVjL2RpY3Rpb25hcnktZGF0YS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlYy9kaWN0aW9uYXJ5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9icm90bGkvZGVjL2h1ZmZtYW4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jyb3RsaS9kZWMvY29udGV4dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlYy9wcmVmaXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2Jyb3RsaS9kZWMvdHJhbnNmb3JtLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9icm90bGkvZGVjL2RlY29kZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvYnJvdGxpL2RlY29tcHJlc3MuanMiLCAiLi4vLi4vc3JjL2lucHV0cy50cyIsICIuLi8uLi9zcmMvQWN0aW9uLnRzIiwgIi4uLy4uL3NyYy9jb25zdGFudHMudHMiLCAiLi4vLi4vc3JjL2xvZ3Rhc2svaW5kZXgudHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS92ZW5kb3IvYW5zaS1zdHlsZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS92ZW5kb3Ivc3VwcG9ydHMtY29sb3IvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS91dGlsaXRpZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2NoYWxrL3NvdXJjZS9pbmRleC5qcyIsICIuLi8uLi9zcmMvdXRpbC50cyIsICIuLi8uLi9zcmMvaGVscGVycy50cyIsICIuLi8uLi9zcmMvdW5pY29kZS13b3JkLW1hdGNoLnRzIiwgIi4uLy4uL3NyYy9yZWFkbWUtZWRpdG9yLnRzIiwgIi4uLy4uL3NyYy9wcmV0dGllci50cyIsICIuLi8uLi9zcmMvcmVhZG1lLWdlbmVyYXRvci50cyIsICIuLi8uLi9zcmMvc2VjdGlvbnMvdXBkYXRlLWJhZGdlcy50cyIsICIuLi8uLi9zcmMvc3ZnLWVkaXRvci5tdHMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3V0aWxzL21ldGhvZHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3V0aWxzL3V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvbmFtZXNwYWNlcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdXRpbHMvd2luZG93LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9CYXNlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy91dGlscy9hZG9wdGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL29wdGlvbmFsL2FycmFuZ2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL21vZHVsZXMvY29yZS9yZWdleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9vcHRpb25hbC9jbGFzcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9vcHRpb25hbC9jc3MuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL21vZHVsZXMvb3B0aW9uYWwvZGF0YS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9vcHRpb25hbC9tZW1vcnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3R5cGVzL0NvbG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9Qb2ludC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdHlwZXMvTWF0cml4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvcGFyc2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9Cb3guanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL3R5cGVzL0xpc3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL21vZHVsZXMvY29yZS9zZWxlY3Rvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9jb3JlL2V2ZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9FdmVudFRhcmdldC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9jb3JlL2RlZmF1bHRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9TVkdBcnJheS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdHlwZXMvU1ZHTnVtYmVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvYXR0ci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvRG9tLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9FbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL29wdGlvbmFsL3N1Z2FyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL29wdGlvbmFsL3RyYW5zZm9ybS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvQ29udGFpbmVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9EZWZzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9TaGFwZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvbW9kdWxlcy9jb3JlL2NpcmNsZWQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0VsbGlwc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0ZyYWdtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvZ3JhZGllbnRlZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvR3JhZGllbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1BhdHRlcm4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0ltYWdlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy90eXBlcy9Qb2ludEFycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvcG9pbnRlZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvTGluZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvTWFya2VyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9hbmltYXRpb24vQ29udHJvbGxlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdXRpbHMvcGF0aFBhcnNlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvdHlwZXMvUGF0aEFycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9hbmltYXRpb24vTW9ycGhhYmxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9QYXRoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvcG9seS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvUG9seWdvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvUG9seWxpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1JlY3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2FuaW1hdGlvbi9RdWV1ZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvYW5pbWF0aW9uL0FuaW1hdG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9hbmltYXRpb24vVGltZWxpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2FuaW1hdGlvbi9SdW5uZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1N2Zy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvU3ltYm9sLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvdGV4dGFibGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1RleHQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1RzcGFuLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9DaXJjbGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0NsaXBQYXRoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9Gb3JlaWduT2JqZWN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tb2R1bGVzL2NvcmUvY29udGFpbmVyR2VvbWV0cnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0cuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL0EuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL01hc2suanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1N0b3AuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL0Bzdmdkb3Rqcy9zdmcuanMvc3JjL2VsZW1lbnRzL1N0eWxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9lbGVtZW50cy9UZXh0UGF0aC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN2Z2RvdGpzL3N2Zy5qcy9zcmMvZWxlbWVudHMvVXNlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9Ac3ZnZG90anMvc3ZnLmpzL3NyYy9tYWluLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL2RlZmF1bHRzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL29iamVjdENyZWF0aW9uVXRpbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0V2ZW50VGFyZ2V0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3RhZ1V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL25hbWVzcGFjZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL05vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0F0dHIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL21peGlucy9Ob25Eb2N1bWVudFR5cGVDaGlsZE5vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvbm9kZXNUb05vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL21peGlucy9DaGlsZE5vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0NoYXJhY3RlckRhdGEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0NvbW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0V2ZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9DdXN0b21FdmVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vVGV4dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vTm9kZUZpbHRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy91dGlscy9Ob2RlSXRlcmF0b3IuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL21peGlucy9lbGVtZW50QWNjZXNzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3N0clV0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3JlZ2V4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL290aGVyL0Nzc1F1ZXJ5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9taXhpbnMvUGFyZW50Tm9kZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vbWl4aW5zL05vbkVsZW1lbnRQYXJlbnROb2RlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9Eb2N1bWVudEZyYWdtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9odG1sL0hUTUxQYXJzZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvbWFwVXRpbHMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0VsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL2h0bWwvSFRNTEVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL2h0bWwvSFRNTExpbmtFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9odG1sL0hUTUxTY3JpcHRFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL3N2Zy9TVkdFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHUG9pbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvb3RoZXIvUG9pbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvb3RoZXIvQm94LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHTWF0cml4LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL1BvaW50Q2xvdWQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvcGF0aFV0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL3V0aWxzL3RleHRVdGlscy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0RlY29kZVN0cmVhbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0VuY29kZVN0cmVhbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0Jhc2UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy9OdW1iZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy91dGlscy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL0FycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvTGF6eUFycmF5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvQml0ZmllbGQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy9CdWZmZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3Jlc3RydWN0dXJlL3NyYy9PcHRpb25hbC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvcmVzdHJ1Y3R1cmUvc3JjL1Jlc2VydmVkLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvU3RyaW5nLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvU3RydWN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvVmVyc2lvbmVkU3RydWN0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9yZXN0cnVjdHVyZS9zcmMvUG9pbnRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9fZGVmaW5lX3Byb3BlcnR5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy90c2xpYi90c2xpYi5lczYubWpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy91bmljb2RlLXByb3BlcnRpZXMvZGlzdC9pbmRleC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvdW5pY29kZS1wcm9wZXJ0aWVzL2Rpc3QvZGF0YS5qc29uIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL25vZGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvYmFzZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9mcy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9UVEZGb250LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2RlY29yYXRvcnMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2RpcmVjdG9yeS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2NtYXAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2hlYWQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2hoZWEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2htdHguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL21heHAuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL25hbWUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZW5jb2RpbmdzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3RhYmxlcy9PUzIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3Bvc3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2N2dC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZnBnbS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvbG9jYS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvcHJlcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZ2x5Zi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGRm9udC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGSW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvY2ZmL0NGRlRvcC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGRGljdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGT3BlcmFuZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGUG9pbnRlci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGUHJpdmF0ZURpY3QuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvY2ZmL0NGRlN0YW5kYXJkU3RyaW5ncy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9jZmYvQ0ZGRW5jb2RpbmdzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2NmZi9DRkZDaGFyc2V0cy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvdmFyaWF0aW9ucy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvb3BlbnR5cGUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1ZPUkcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0VCTEMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0VCRFQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3NiaXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0NPTFIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0NQQUwuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0JBU0UuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0dERUYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0dQT1MuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0dTVUIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0pTVEYuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0hWQVIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0RTSUcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2dhc3AuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2hkbXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2tlcm4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL0xUU0guanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1BDTFQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1ZETVguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3ZoZWEuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL3ZtdHguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2F2YXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2JzbG4uanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL2FhdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZmVhdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZnZhci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvZ3Zhci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvanVzdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvbW9yeC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy90YWJsZXMvb3BiZC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9DbWFwUHJvY2Vzc29yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3V0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2xheW91dC9MYXlvdXRFbmdpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L0tlcm5Qcm9jZXNzb3IuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L1VuaWNvZGVMYXlvdXRFbmdpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L0dseXBoUnVuLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL0JCb3guanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvbGF5b3V0L1NjcmlwdC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9sYXlvdXQvR2x5cGhQb3NpdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9hYXQvQUFUTGF5b3V0RW5naW5lLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2FhdC9BQVRGZWF0dXJlTWFwLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2FhdC9BQVRNb3J4UHJvY2Vzc29yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2FhdC9BQVRTdGF0ZU1hY2hpbmUuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvYWF0L0FBVExvb2t1cFRhYmxlLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL09UTGF5b3V0RW5naW5lLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL1NoYXBpbmdQbGFuLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvaW5kZXguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvc2hhcGVycy9EZWZhdWx0U2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvQXJhYmljU2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvSGFuZ3VsU2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL0dseXBoSW5mby5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9vcGVudHlwZS9PVFByb2Nlc3Nvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9vcGVudHlwZS9HbHlwaEl0ZXJhdG9yLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvSW5kaWNTaGFwZXIuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvc2hhcGVycy9pbmRpYy5qc29uIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvdXNlLmpzb24iLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvc2hhcGVycy9pbmRpYy1kYXRhLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL3NoYXBlcnMvVW5pdmVyc2FsU2hhcGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL29wZW50eXBlL0dTVUJQcm9jZXNzb3IuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvb3BlbnR5cGUvR1BPU1Byb2Nlc3Nvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9UVEZHbHlwaC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9HbHlwaC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9QYXRoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL1N0YW5kYXJkTmFtZXMuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZ2x5cGgvQ0ZGR2x5cGguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZ2x5cGgvU0JJWEdseXBoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL0NPTFJHbHlwaC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9nbHlwaC9HbHlwaFZhcmlhdGlvblByb2Nlc3Nvci5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9zdWJzZXQvVFRGU3Vic2V0LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3N1YnNldC9TdWJzZXQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvZ2x5cGgvVFRGR2x5cGhFbmNvZGVyLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL3N1YnNldC9DRkZTdWJzZXQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvV09GRkZvbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1dPRkZEaXJlY3RvcnkuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvV09GRjJGb250LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL2dseXBoL1dPRkYyR2x5cGguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvbnRraXQvZGlzdC9zcmMvdGFibGVzL1dPRkYyRGlyZWN0b3J5LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9mb250a2l0L2Rpc3Qvc3JjL1RydWVUeXBlQ29sbGVjdGlvbi5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvZm9udGtpdC9kaXN0L3NyYy9ERm9udC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9jb25maWcuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvdXRpbHMvYmJveFV0aWxzLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHR3JhcGhpY3NFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHU1ZHRWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR1BhdGhFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHTGVuZ3RoLmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHQW5pbWF0ZWRMZW5ndGguanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL0RvY3VtZW50VHlwZS5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR1JlY3RFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHQ2lyY2xlRWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR0xpbmVFbGVtZW50LmpzIiwgIi4uLy4uL25vZGVfbW9kdWxlcy9zdmdkb20vc3JjL2RvbS9zdmcvU1ZHRWxsaXBzZUVsZW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL3N2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vc3ZnL1NWR0ltYWdlRWxlbWVudC5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9kb20vRG9jdW1lbnQuanMiLCAiLi4vLi4vbm9kZV9tb2R1bGVzL3N2Z2RvbS9zcmMvZG9tL1dpbmRvdy5qcyIsICIuLi8uLi9ub2RlX21vZHVsZXMvc3ZnZG9tL3NyYy9mYWN0b3JpZXMuanMiLCAiLi4vLi4vc3JjL3NlY3Rpb25zL3VwZGF0ZS1icmFuZGluZy50cyIsICIuLi8uLi9zcmMvc2VjdGlvbnMvdXBkYXRlLWRlc2NyaXB0aW9uLnRzIiwgIi4uLy4uL3NyYy9tYXJrZG93bmVyL2luZGV4LnRzIiwgIi4uLy4uL3NyYy9zZWN0aW9ucy91cGRhdGUtaW5wdXRzLnRzIiwgIi4uLy4uL3NyYy9zZWN0aW9ucy91cGRhdGUtb3V0cHV0cy50cyIsICIuLi8uLi9zcmMvc2VjdGlvbnMvdXBkYXRlLXRpdGxlLnRzIiwgIi4uLy4uL3NyYy9zZWN0aW9ucy91cGRhdGUtdXNhZ2UudHMiLCAiLi4vLi4vc3JjL3NlY3Rpb25zL2luZGV4LnRzIiwgIi4uLy4uL3NyYy9jb25maWcudHMiLCAiLi4vLi4vc3JjL3NhdmUudHMiLCAiLi4vLi4vc3JjL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogW251bGwsIG51bGwsIG51bGwsIG51bGwsICIndXNlIHN0cmljdCc7XG5cbnZhciBuZXQgPSByZXF1aXJlKCduZXQnKTtcbnZhciB0bHMgPSByZXF1aXJlKCd0bHMnKTtcbnZhciBodHRwID0gcmVxdWlyZSgnaHR0cCcpO1xudmFyIGh0dHBzID0gcmVxdWlyZSgnaHR0cHMnKTtcbnZhciBldmVudHMgPSByZXF1aXJlKCdldmVudHMnKTtcbnZhciBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKTtcbnZhciB1dGlsID0gcmVxdWlyZSgndXRpbCcpO1xuXG5cbmV4cG9ydHMuaHR0cE92ZXJIdHRwID0gaHR0cE92ZXJIdHRwO1xuZXhwb3J0cy5odHRwc092ZXJIdHRwID0gaHR0cHNPdmVySHR0cDtcbmV4cG9ydHMuaHR0cE92ZXJIdHRwcyA9IGh0dHBPdmVySHR0cHM7XG5leHBvcnRzLmh0dHBzT3Zlckh0dHBzID0gaHR0cHNPdmVySHR0cHM7XG5cblxuZnVuY3Rpb24gaHR0cE92ZXJIdHRwKG9wdGlvbnMpIHtcbiAgdmFyIGFnZW50ID0gbmV3IFR1bm5lbGluZ0FnZW50KG9wdGlvbnMpO1xuICBhZ2VudC5yZXF1ZXN0ID0gaHR0cC5yZXF1ZXN0O1xuICByZXR1cm4gYWdlbnQ7XG59XG5cbmZ1bmN0aW9uIGh0dHBzT3Zlckh0dHAob3B0aW9ucykge1xuICB2YXIgYWdlbnQgPSBuZXcgVHVubmVsaW5nQWdlbnQob3B0aW9ucyk7XG4gIGFnZW50LnJlcXVlc3QgPSBodHRwLnJlcXVlc3Q7XG4gIGFnZW50LmNyZWF0ZVNvY2tldCA9IGNyZWF0ZVNlY3VyZVNvY2tldDtcbiAgYWdlbnQuZGVmYXVsdFBvcnQgPSA0NDM7XG4gIHJldHVybiBhZ2VudDtcbn1cblxuZnVuY3Rpb24gaHR0cE92ZXJIdHRwcyhvcHRpb25zKSB7XG4gIHZhciBhZ2VudCA9IG5ldyBUdW5uZWxpbmdBZ2VudChvcHRpb25zKTtcbiAgYWdlbnQucmVxdWVzdCA9IGh0dHBzLnJlcXVlc3Q7XG4gIHJldHVybiBhZ2VudDtcbn1cblxuZnVuY3Rpb24gaHR0cHNPdmVySHR0cHMob3B0aW9ucykge1xuICB2YXIgYWdlbnQgPSBuZXcgVHVubmVsaW5nQWdlbnQob3B0aW9ucyk7XG4gIGFnZW50LnJlcXVlc3QgPSBodHRwcy5yZXF1ZXN0O1xuICBhZ2VudC5jcmVhdGVTb2NrZXQgPSBjcmVhdGVTZWN1cmVTb2NrZXQ7XG4gIGFnZW50LmRlZmF1bHRQb3J0ID0gNDQzO1xuICByZXR1cm4gYWdlbnQ7XG59XG5cblxuZnVuY3Rpb24gVHVubmVsaW5nQWdlbnQob3B0aW9ucykge1xuICB2YXIgc2VsZiA9IHRoaXM7XG4gIHNlbGYub3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gIHNlbGYucHJveHlPcHRpb25zID0gc2VsZi5vcHRpb25zLnByb3h5IHx8IHt9O1xuICBzZWxmLm1heFNvY2tldHMgPSBzZWxmLm9wdGlvbnMubWF4U29ja2V0cyB8fCBodHRwLkFnZW50LmRlZmF1bHRNYXhTb2NrZXRzO1xuICBzZWxmLnJlcXVlc3RzID0gW107XG4gIHNlbGYuc29ja2V0cyA9IFtdO1xuXG4gIHNlbGYub24oJ2ZyZWUnLCBmdW5jdGlvbiBvbkZyZWUoc29ja2V0LCBob3N0LCBwb3J0LCBsb2NhbEFkZHJlc3MpIHtcbiAgICB2YXIgb3B0aW9ucyA9IHRvT3B0aW9ucyhob3N0LCBwb3J0LCBsb2NhbEFkZHJlc3MpO1xuICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSBzZWxmLnJlcXVlc3RzLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICB2YXIgcGVuZGluZyA9IHNlbGYucmVxdWVzdHNbaV07XG4gICAgICBpZiAocGVuZGluZy5ob3N0ID09PSBvcHRpb25zLmhvc3QgJiYgcGVuZGluZy5wb3J0ID09PSBvcHRpb25zLnBvcnQpIHtcbiAgICAgICAgLy8gRGV0ZWN0IHRoZSByZXF1ZXN0IHRvIGNvbm5lY3Qgc2FtZSBvcmlnaW4gc2VydmVyLFxuICAgICAgICAvLyByZXVzZSB0aGUgY29ubmVjdGlvbi5cbiAgICAgICAgc2VsZi5yZXF1ZXN0cy5zcGxpY2UoaSwgMSk7XG4gICAgICAgIHBlbmRpbmcucmVxdWVzdC5vblNvY2tldChzb2NrZXQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIHNvY2tldC5kZXN0cm95KCk7XG4gICAgc2VsZi5yZW1vdmVTb2NrZXQoc29ja2V0KTtcbiAgfSk7XG59XG51dGlsLmluaGVyaXRzKFR1bm5lbGluZ0FnZW50LCBldmVudHMuRXZlbnRFbWl0dGVyKTtcblxuVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLmFkZFJlcXVlc3QgPSBmdW5jdGlvbiBhZGRSZXF1ZXN0KHJlcSwgaG9zdCwgcG9ydCwgbG9jYWxBZGRyZXNzKSB7XG4gIHZhciBzZWxmID0gdGhpcztcbiAgdmFyIG9wdGlvbnMgPSBtZXJnZU9wdGlvbnMoe3JlcXVlc3Q6IHJlcX0sIHNlbGYub3B0aW9ucywgdG9PcHRpb25zKGhvc3QsIHBvcnQsIGxvY2FsQWRkcmVzcykpO1xuXG4gIGlmIChzZWxmLnNvY2tldHMubGVuZ3RoID49IHRoaXMubWF4U29ja2V0cykge1xuICAgIC8vIFdlIGFyZSBvdmVyIGxpbWl0IHNvIHdlJ2xsIGFkZCBpdCB0byB0aGUgcXVldWUuXG4gICAgc2VsZi5yZXF1ZXN0cy5wdXNoKG9wdGlvbnMpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8vIElmIHdlIGFyZSB1bmRlciBtYXhTb2NrZXRzIGNyZWF0ZSBhIG5ldyBvbmUuXG4gIHNlbGYuY3JlYXRlU29ja2V0KG9wdGlvbnMsIGZ1bmN0aW9uKHNvY2tldCkge1xuICAgIHNvY2tldC5vbignZnJlZScsIG9uRnJlZSk7XG4gICAgc29ja2V0Lm9uKCdjbG9zZScsIG9uQ2xvc2VPclJlbW92ZSk7XG4gICAgc29ja2V0Lm9uKCdhZ2VudFJlbW92ZScsIG9uQ2xvc2VPclJlbW92ZSk7XG4gICAgcmVxLm9uU29ja2V0KHNvY2tldCk7XG5cbiAgICBmdW5jdGlvbiBvbkZyZWUoKSB7XG4gICAgICBzZWxmLmVtaXQoJ2ZyZWUnLCBzb2NrZXQsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIG9uQ2xvc2VPclJlbW92ZShlcnIpIHtcbiAgICAgIHNlbGYucmVtb3ZlU29ja2V0KHNvY2tldCk7XG4gICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2ZyZWUnLCBvbkZyZWUpO1xuICAgICAgc29ja2V0LnJlbW92ZUxpc3RlbmVyKCdjbG9zZScsIG9uQ2xvc2VPclJlbW92ZSk7XG4gICAgICBzb2NrZXQucmVtb3ZlTGlzdGVuZXIoJ2FnZW50UmVtb3ZlJywgb25DbG9zZU9yUmVtb3ZlKTtcbiAgICB9XG4gIH0pO1xufTtcblxuVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLmNyZWF0ZVNvY2tldCA9IGZ1bmN0aW9uIGNyZWF0ZVNvY2tldChvcHRpb25zLCBjYikge1xuICB2YXIgc2VsZiA9IHRoaXM7XG4gIHZhciBwbGFjZWhvbGRlciA9IHt9O1xuICBzZWxmLnNvY2tldHMucHVzaChwbGFjZWhvbGRlcik7XG5cbiAgdmFyIGNvbm5lY3RPcHRpb25zID0gbWVyZ2VPcHRpb25zKHt9LCBzZWxmLnByb3h5T3B0aW9ucywge1xuICAgIG1ldGhvZDogJ0NPTk5FQ1QnLFxuICAgIHBhdGg6IG9wdGlvbnMuaG9zdCArICc6JyArIG9wdGlvbnMucG9ydCxcbiAgICBhZ2VudDogZmFsc2UsXG4gICAgaGVhZGVyczoge1xuICAgICAgaG9zdDogb3B0aW9ucy5ob3N0ICsgJzonICsgb3B0aW9ucy5wb3J0XG4gICAgfVxuICB9KTtcbiAgaWYgKG9wdGlvbnMubG9jYWxBZGRyZXNzKSB7XG4gICAgY29ubmVjdE9wdGlvbnMubG9jYWxBZGRyZXNzID0gb3B0aW9ucy5sb2NhbEFkZHJlc3M7XG4gIH1cbiAgaWYgKGNvbm5lY3RPcHRpb25zLnByb3h5QXV0aCkge1xuICAgIGNvbm5lY3RPcHRpb25zLmhlYWRlcnMgPSBjb25uZWN0T3B0aW9ucy5oZWFkZXJzIHx8IHt9O1xuICAgIGNvbm5lY3RPcHRpb25zLmhlYWRlcnNbJ1Byb3h5LUF1dGhvcml6YXRpb24nXSA9ICdCYXNpYyAnICtcbiAgICAgICAgbmV3IEJ1ZmZlcihjb25uZWN0T3B0aW9ucy5wcm94eUF1dGgpLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgfVxuXG4gIGRlYnVnKCdtYWtpbmcgQ09OTkVDVCByZXF1ZXN0Jyk7XG4gIHZhciBjb25uZWN0UmVxID0gc2VsZi5yZXF1ZXN0KGNvbm5lY3RPcHRpb25zKTtcbiAgY29ubmVjdFJlcS51c2VDaHVua2VkRW5jb2RpbmdCeURlZmF1bHQgPSBmYWxzZTsgLy8gZm9yIHYwLjZcbiAgY29ubmVjdFJlcS5vbmNlKCdyZXNwb25zZScsIG9uUmVzcG9uc2UpOyAvLyBmb3IgdjAuNlxuICBjb25uZWN0UmVxLm9uY2UoJ3VwZ3JhZGUnLCBvblVwZ3JhZGUpOyAgIC8vIGZvciB2MC42XG4gIGNvbm5lY3RSZXEub25jZSgnY29ubmVjdCcsIG9uQ29ubmVjdCk7ICAgLy8gZm9yIHYwLjcgb3IgbGF0ZXJcbiAgY29ubmVjdFJlcS5vbmNlKCdlcnJvcicsIG9uRXJyb3IpO1xuICBjb25uZWN0UmVxLmVuZCgpO1xuXG4gIGZ1bmN0aW9uIG9uUmVzcG9uc2UocmVzKSB7XG4gICAgLy8gVmVyeSBoYWNreS4gVGhpcyBpcyBuZWNlc3NhcnkgdG8gYXZvaWQgaHR0cC1wYXJzZXIgbGVha3MuXG4gICAgcmVzLnVwZ3JhZGUgPSB0cnVlO1xuICB9XG5cbiAgZnVuY3Rpb24gb25VcGdyYWRlKHJlcywgc29ja2V0LCBoZWFkKSB7XG4gICAgLy8gSGFja3kuXG4gICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbigpIHtcbiAgICAgIG9uQ29ubmVjdChyZXMsIHNvY2tldCwgaGVhZCk7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiBvbkNvbm5lY3QocmVzLCBzb2NrZXQsIGhlYWQpIHtcbiAgICBjb25uZWN0UmVxLnJlbW92ZUFsbExpc3RlbmVycygpO1xuICAgIHNvY2tldC5yZW1vdmVBbGxMaXN0ZW5lcnMoKTtcblxuICAgIGlmIChyZXMuc3RhdHVzQ29kZSAhPT0gMjAwKSB7XG4gICAgICBkZWJ1ZygndHVubmVsaW5nIHNvY2tldCBjb3VsZCBub3QgYmUgZXN0YWJsaXNoZWQsIHN0YXR1c0NvZGU9JWQnLFxuICAgICAgICByZXMuc3RhdHVzQ29kZSk7XG4gICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgdmFyIGVycm9yID0gbmV3IEVycm9yKCd0dW5uZWxpbmcgc29ja2V0IGNvdWxkIG5vdCBiZSBlc3RhYmxpc2hlZCwgJyArXG4gICAgICAgICdzdGF0dXNDb2RlPScgKyByZXMuc3RhdHVzQ29kZSk7XG4gICAgICBlcnJvci5jb2RlID0gJ0VDT05OUkVTRVQnO1xuICAgICAgb3B0aW9ucy5yZXF1ZXN0LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgICAgc2VsZi5yZW1vdmVTb2NrZXQocGxhY2Vob2xkZXIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoaGVhZC5sZW5ndGggPiAwKSB7XG4gICAgICBkZWJ1ZygnZ290IGlsbGVnYWwgcmVzcG9uc2UgYm9keSBmcm9tIHByb3h5Jyk7XG4gICAgICBzb2NrZXQuZGVzdHJveSgpO1xuICAgICAgdmFyIGVycm9yID0gbmV3IEVycm9yKCdnb3QgaWxsZWdhbCByZXNwb25zZSBib2R5IGZyb20gcHJveHknKTtcbiAgICAgIGVycm9yLmNvZGUgPSAnRUNPTk5SRVNFVCc7XG4gICAgICBvcHRpb25zLnJlcXVlc3QuZW1pdCgnZXJyb3InLCBlcnJvcik7XG4gICAgICBzZWxmLnJlbW92ZVNvY2tldChwbGFjZWhvbGRlcik7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGRlYnVnKCd0dW5uZWxpbmcgY29ubmVjdGlvbiBoYXMgZXN0YWJsaXNoZWQnKTtcbiAgICBzZWxmLnNvY2tldHNbc2VsZi5zb2NrZXRzLmluZGV4T2YocGxhY2Vob2xkZXIpXSA9IHNvY2tldDtcbiAgICByZXR1cm4gY2Ioc29ja2V0KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIG9uRXJyb3IoY2F1c2UpIHtcbiAgICBjb25uZWN0UmVxLnJlbW92ZUFsbExpc3RlbmVycygpO1xuXG4gICAgZGVidWcoJ3R1bm5lbGluZyBzb2NrZXQgY291bGQgbm90IGJlIGVzdGFibGlzaGVkLCBjYXVzZT0lc1xcbicsXG4gICAgICAgICAgY2F1c2UubWVzc2FnZSwgY2F1c2Uuc3RhY2spO1xuICAgIHZhciBlcnJvciA9IG5ldyBFcnJvcigndHVubmVsaW5nIHNvY2tldCBjb3VsZCBub3QgYmUgZXN0YWJsaXNoZWQsICcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAnY2F1c2U9JyArIGNhdXNlLm1lc3NhZ2UpO1xuICAgIGVycm9yLmNvZGUgPSAnRUNPTk5SRVNFVCc7XG4gICAgb3B0aW9ucy5yZXF1ZXN0LmVtaXQoJ2Vycm9yJywgZXJyb3IpO1xuICAgIHNlbGYucmVtb3ZlU29ja2V0KHBsYWNlaG9sZGVyKTtcbiAgfVxufTtcblxuVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLnJlbW92ZVNvY2tldCA9IGZ1bmN0aW9uIHJlbW92ZVNvY2tldChzb2NrZXQpIHtcbiAgdmFyIHBvcyA9IHRoaXMuc29ja2V0cy5pbmRleE9mKHNvY2tldClcbiAgaWYgKHBvcyA9PT0gLTEpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgdGhpcy5zb2NrZXRzLnNwbGljZShwb3MsIDEpO1xuXG4gIHZhciBwZW5kaW5nID0gdGhpcy5yZXF1ZXN0cy5zaGlmdCgpO1xuICBpZiAocGVuZGluZykge1xuICAgIC8vIElmIHdlIGhhdmUgcGVuZGluZyByZXF1ZXN0cyBhbmQgYSBzb2NrZXQgZ2V0cyBjbG9zZWQgYSBuZXcgb25lXG4gICAgLy8gbmVlZHMgdG8gYmUgY3JlYXRlZCB0byB0YWtlIG92ZXIgaW4gdGhlIHBvb2wgZm9yIHRoZSBvbmUgdGhhdCBjbG9zZWQuXG4gICAgdGhpcy5jcmVhdGVTb2NrZXQocGVuZGluZywgZnVuY3Rpb24oc29ja2V0KSB7XG4gICAgICBwZW5kaW5nLnJlcXVlc3Qub25Tb2NrZXQoc29ja2V0KTtcbiAgICB9KTtcbiAgfVxufTtcblxuZnVuY3Rpb24gY3JlYXRlU2VjdXJlU29ja2V0KG9wdGlvbnMsIGNiKSB7XG4gIHZhciBzZWxmID0gdGhpcztcbiAgVHVubmVsaW5nQWdlbnQucHJvdG90eXBlLmNyZWF0ZVNvY2tldC5jYWxsKHNlbGYsIG9wdGlvbnMsIGZ1bmN0aW9uKHNvY2tldCkge1xuICAgIHZhciBob3N0SGVhZGVyID0gb3B0aW9ucy5yZXF1ZXN0LmdldEhlYWRlcignaG9zdCcpO1xuICAgIHZhciB0bHNPcHRpb25zID0gbWVyZ2VPcHRpb25zKHt9LCBzZWxmLm9wdGlvbnMsIHtcbiAgICAgIHNvY2tldDogc29ja2V0LFxuICAgICAgc2VydmVybmFtZTogaG9zdEhlYWRlciA/IGhvc3RIZWFkZXIucmVwbGFjZSgvOi4qJC8sICcnKSA6IG9wdGlvbnMuaG9zdFxuICAgIH0pO1xuXG4gICAgLy8gMCBpcyBkdW1teSBwb3J0IGZvciB2MC42XG4gICAgdmFyIHNlY3VyZVNvY2tldCA9IHRscy5jb25uZWN0KDAsIHRsc09wdGlvbnMpO1xuICAgIHNlbGYuc29ja2V0c1tzZWxmLnNvY2tldHMuaW5kZXhPZihzb2NrZXQpXSA9IHNlY3VyZVNvY2tldDtcbiAgICBjYihzZWN1cmVTb2NrZXQpO1xuICB9KTtcbn1cblxuXG5mdW5jdGlvbiB0b09wdGlvbnMoaG9zdCwgcG9ydCwgbG9jYWxBZGRyZXNzKSB7XG4gIGlmICh0eXBlb2YgaG9zdCA9PT0gJ3N0cmluZycpIHsgLy8gc2luY2UgdjAuMTBcbiAgICByZXR1cm4ge1xuICAgICAgaG9zdDogaG9zdCxcbiAgICAgIHBvcnQ6IHBvcnQsXG4gICAgICBsb2NhbEFkZHJlc3M6IGxvY2FsQWRkcmVzc1xuICAgIH07XG4gIH1cbiAgcmV0dXJuIGhvc3Q7IC8vIGZvciB2MC4xMSBvciBsYXRlclxufVxuXG5mdW5jdGlvbiBtZXJnZU9wdGlvbnModGFyZ2V0KSB7XG4gIGZvciAodmFyIGkgPSAxLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICB2YXIgb3ZlcnJpZGVzID0gYXJndW1lbnRzW2ldO1xuICAgIGlmICh0eXBlb2Ygb3ZlcnJpZGVzID09PSAnb2JqZWN0Jykge1xuICAgICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhvdmVycmlkZXMpO1xuICAgICAgZm9yICh2YXIgaiA9IDAsIGtleUxlbiA9IGtleXMubGVuZ3RoOyBqIDwga2V5TGVuOyArK2opIHtcbiAgICAgICAgdmFyIGsgPSBrZXlzW2pdO1xuICAgICAgICBpZiAob3ZlcnJpZGVzW2tdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0YXJnZXRba10gPSBvdmVycmlkZXNba107XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRhcmdldDtcbn1cblxuXG52YXIgZGVidWc7XG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9ERUJVRyAmJiAvXFxidHVubmVsXFxiLy50ZXN0KHByb2Nlc3MuZW52Lk5PREVfREVCVUcpKSB7XG4gIGRlYnVnID0gZnVuY3Rpb24oKSB7XG4gICAgdmFyIGFyZ3MgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO1xuICAgIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGFyZ3NbMF0gPSAnVFVOTkVMOiAnICsgYXJnc1swXTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXJncy51bnNoaWZ0KCdUVU5ORUw6Jyk7XG4gICAgfVxuICAgIGNvbnNvbGUuZXJyb3IuYXBwbHkoY29uc29sZSwgYXJncyk7XG4gIH1cbn0gZWxzZSB7XG4gIGRlYnVnID0gZnVuY3Rpb24oKSB7fTtcbn1cbmV4cG9ydHMuZGVidWcgPSBkZWJ1ZzsgLy8gZm9yIHRlc3RcbiIsICJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vbGliL3R1bm5lbCcpO1xuIiwgIm1vZHVsZS5leHBvcnRzID0ge1xuICBrQ2xvc2U6IFN5bWJvbCgnY2xvc2UnKSxcbiAga0Rlc3Ryb3k6IFN5bWJvbCgnZGVzdHJveScpLFxuICBrRGlzcGF0Y2g6IFN5bWJvbCgnZGlzcGF0Y2gnKSxcbiAga1VybDogU3ltYm9sKCd1cmwnKSxcbiAga1dyaXRpbmc6IFN5bWJvbCgnd3JpdGluZycpLFxuICBrUmVzdW1pbmc6IFN5bWJvbCgncmVzdW1pbmcnKSxcbiAga1F1ZXVlOiBTeW1ib2woJ3F1ZXVlJyksXG4gIGtDb25uZWN0OiBTeW1ib2woJ2Nvbm5lY3QnKSxcbiAga0Nvbm5lY3Rpbmc6IFN5bWJvbCgnY29ubmVjdGluZycpLFxuICBrSGVhZGVyc0xpc3Q6IFN5bWJvbCgnaGVhZGVycyBsaXN0JyksXG4gIGtLZWVwQWxpdmVEZWZhdWx0VGltZW91dDogU3ltYm9sKCdkZWZhdWx0IGtlZXAgYWxpdmUgdGltZW91dCcpLFxuICBrS2VlcEFsaXZlTWF4VGltZW91dDogU3ltYm9sKCdtYXgga2VlcCBhbGl2ZSB0aW1lb3V0JyksXG4gIGtLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkOiBTeW1ib2woJ2tlZXAgYWxpdmUgdGltZW91dCB0aHJlc2hvbGQnKSxcbiAga0tlZXBBbGl2ZVRpbWVvdXRWYWx1ZTogU3ltYm9sKCdrZWVwIGFsaXZlIHRpbWVvdXQnKSxcbiAga0tlZXBBbGl2ZTogU3ltYm9sKCdrZWVwIGFsaXZlJyksXG4gIGtIZWFkZXJzVGltZW91dDogU3ltYm9sKCdoZWFkZXJzIHRpbWVvdXQnKSxcbiAga0JvZHlUaW1lb3V0OiBTeW1ib2woJ2JvZHkgdGltZW91dCcpLFxuICBrU2VydmVyTmFtZTogU3ltYm9sKCdzZXJ2ZXIgbmFtZScpLFxuICBrTG9jYWxBZGRyZXNzOiBTeW1ib2woJ2xvY2FsIGFkZHJlc3MnKSxcbiAga0hvc3Q6IFN5bWJvbCgnaG9zdCcpLFxuICBrTm9SZWY6IFN5bWJvbCgnbm8gcmVmJyksXG4gIGtCb2R5VXNlZDogU3ltYm9sKCd1c2VkJyksXG4gIGtSdW5uaW5nOiBTeW1ib2woJ3J1bm5pbmcnKSxcbiAga0Jsb2NraW5nOiBTeW1ib2woJ2Jsb2NraW5nJyksXG4gIGtQZW5kaW5nOiBTeW1ib2woJ3BlbmRpbmcnKSxcbiAga1NpemU6IFN5bWJvbCgnc2l6ZScpLFxuICBrQnVzeTogU3ltYm9sKCdidXN5JyksXG4gIGtRdWV1ZWQ6IFN5bWJvbCgncXVldWVkJyksXG4gIGtGcmVlOiBTeW1ib2woJ2ZyZWUnKSxcbiAga0Nvbm5lY3RlZDogU3ltYm9sKCdjb25uZWN0ZWQnKSxcbiAga0Nsb3NlZDogU3ltYm9sKCdjbG9zZWQnKSxcbiAga05lZWREcmFpbjogU3ltYm9sKCduZWVkIGRyYWluJyksXG4gIGtSZXNldDogU3ltYm9sKCdyZXNldCcpLFxuICBrRGVzdHJveWVkOiBTeW1ib2wuZm9yKCdub2RlanMuc3RyZWFtLmRlc3Ryb3llZCcpLFxuICBrTWF4SGVhZGVyc1NpemU6IFN5bWJvbCgnbWF4IGhlYWRlcnMgc2l6ZScpLFxuICBrUnVubmluZ0lkeDogU3ltYm9sKCdydW5uaW5nIGluZGV4JyksXG4gIGtQZW5kaW5nSWR4OiBTeW1ib2woJ3BlbmRpbmcgaW5kZXgnKSxcbiAga0Vycm9yOiBTeW1ib2woJ2Vycm9yJyksXG4gIGtDbGllbnRzOiBTeW1ib2woJ2NsaWVudHMnKSxcbiAga0NsaWVudDogU3ltYm9sKCdjbGllbnQnKSxcbiAga1BhcnNlcjogU3ltYm9sKCdwYXJzZXInKSxcbiAga09uRGVzdHJveWVkOiBTeW1ib2woJ2Rlc3Ryb3kgY2FsbGJhY2tzJyksXG4gIGtQaXBlbGluaW5nOiBTeW1ib2woJ3BpcGVsaW5pbmcnKSxcbiAga1NvY2tldDogU3ltYm9sKCdzb2NrZXQnKSxcbiAga0hvc3RIZWFkZXI6IFN5bWJvbCgnaG9zdCBoZWFkZXInKSxcbiAga0Nvbm5lY3RvcjogU3ltYm9sKCdjb25uZWN0b3InKSxcbiAga1N0cmljdENvbnRlbnRMZW5ndGg6IFN5bWJvbCgnc3RyaWN0IGNvbnRlbnQgbGVuZ3RoJyksXG4gIGtNYXhSZWRpcmVjdGlvbnM6IFN5bWJvbCgnbWF4UmVkaXJlY3Rpb25zJyksXG4gIGtNYXhSZXF1ZXN0czogU3ltYm9sKCdtYXhSZXF1ZXN0c1BlckNsaWVudCcpLFxuICBrUHJveHk6IFN5bWJvbCgncHJveHkgYWdlbnQgb3B0aW9ucycpLFxuICBrQ291bnRlcjogU3ltYm9sKCdzb2NrZXQgcmVxdWVzdCBjb3VudGVyJyksXG4gIGtJbnRlcmNlcHRvcnM6IFN5bWJvbCgnZGlzcGF0Y2ggaW50ZXJjZXB0b3JzJyksXG4gIGtNYXhSZXNwb25zZVNpemU6IFN5bWJvbCgnbWF4IHJlc3BvbnNlIHNpemUnKSxcbiAga0hUVFAyU2Vzc2lvbjogU3ltYm9sKCdodHRwMlNlc3Npb24nKSxcbiAga0hUVFAyU2Vzc2lvblN0YXRlOiBTeW1ib2woJ2h0dHAyU2Vzc2lvbiBzdGF0ZScpLFxuICBrSFRUUDJCdWlsZFJlcXVlc3Q6IFN5bWJvbCgnaHR0cDIgYnVpbGQgcmVxdWVzdCcpLFxuICBrSFRUUDFCdWlsZFJlcXVlc3Q6IFN5bWJvbCgnaHR0cDEgYnVpbGQgcmVxdWVzdCcpLFxuICBrSFRUUDJDb3B5SGVhZGVyczogU3ltYm9sKCdodHRwMiBjb3B5IGhlYWRlcnMnKSxcbiAga0hUVFBDb25uVmVyc2lvbjogU3ltYm9sKCdodHRwIGNvbm5lY3Rpb24gdmVyc2lvbicpLFxuICBrUmV0cnlIYW5kbGVyRGVmYXVsdFJldHJ5OiBTeW1ib2woJ3JldHJ5IGFnZW50IGRlZmF1bHQgcmV0cnknKSxcbiAga0NvbnN0cnVjdDogU3ltYm9sKCdjb25zdHJ1Y3RhYmxlJylcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY2xhc3MgVW5kaWNpRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSlcbiAgICB0aGlzLm5hbWUgPSAnVW5kaWNpRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlInXG4gIH1cbn1cblxuY2xhc3MgQ29ubmVjdFRpbWVvdXRFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIENvbm5lY3RUaW1lb3V0RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0Nvbm5lY3RUaW1lb3V0RXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnQ29ubmVjdCBUaW1lb3V0IEVycm9yJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX0NPTk5FQ1RfVElNRU9VVCdcbiAgfVxufVxuXG5jbGFzcyBIZWFkZXJzVGltZW91dEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSGVhZGVyc1RpbWVvdXRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnSGVhZGVyc1RpbWVvdXRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdIZWFkZXJzIFRpbWVvdXQgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSEVBREVSU19USU1FT1VUJ1xuICB9XG59XG5cbmNsYXNzIEhlYWRlcnNPdmVyZmxvd0Vycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSGVhZGVyc092ZXJmbG93RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0hlYWRlcnNPdmVyZmxvd0Vycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ0hlYWRlcnMgT3ZlcmZsb3cgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSEVBREVSU19PVkVSRkxPVydcbiAgfVxufVxuXG5jbGFzcyBCb2R5VGltZW91dEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgQm9keVRpbWVvdXRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnQm9keVRpbWVvdXRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdCb2R5IFRpbWVvdXQgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfQk9EWV9USU1FT1VUJ1xuICB9XG59XG5cbmNsYXNzIFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSwgc3RhdHVzQ29kZSwgaGVhZGVycywgYm9keSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgUmVzcG9uc2VTdGF0dXNDb2RlRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ1Jlc3BvbnNlU3RhdHVzQ29kZUVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1Jlc3BvbnNlIFN0YXR1cyBDb2RlIEVycm9yJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX1JFU1BPTlNFX1NUQVRVU19DT0RFJ1xuICAgIHRoaXMuYm9keSA9IGJvZHlcbiAgICB0aGlzLnN0YXR1cyA9IHN0YXR1c0NvZGVcbiAgICB0aGlzLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlXG4gICAgdGhpcy5oZWFkZXJzID0gaGVhZGVyc1xuICB9XG59XG5cbmNsYXNzIEludmFsaWRBcmd1bWVudEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSW52YWxpZEFyZ3VtZW50RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0ludmFsaWRBcmd1bWVudEVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ0ludmFsaWQgQXJndW1lbnQgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSU5WQUxJRF9BUkcnXG4gIH1cbn1cblxuY2xhc3MgSW52YWxpZFJldHVyblZhbHVlRXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSlcbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLCBJbnZhbGlkUmV0dXJuVmFsdWVFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnSW52YWxpZFJldHVyblZhbHVlRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnSW52YWxpZCBSZXR1cm4gVmFsdWUgRXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfSU5WQUxJRF9SRVRVUk5fVkFMVUUnXG4gIH1cbn1cblxuY2xhc3MgUmVxdWVzdEFib3J0ZWRFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFJlcXVlc3RBYm9ydGVkRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0Fib3J0RXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnUmVxdWVzdCBhYm9ydGVkJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX0FCT1JURUQnXG4gIH1cbn1cblxuY2xhc3MgSW5mb3JtYXRpb25hbEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSW5mb3JtYXRpb25hbEVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdJbmZvcm1hdGlvbmFsRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnUmVxdWVzdCBpbmZvcm1hdGlvbidcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9JTkZPJ1xuICB9XG59XG5cbmNsYXNzIFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1JlcXVlc3QgYm9keSBsZW5ndGggZG9lcyBub3QgbWF0Y2ggY29udGVudC1sZW5ndGggaGVhZGVyJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX1JFUV9DT05URU5UX0xFTkdUSF9NSVNNQVRDSCdcbiAgfVxufVxuXG5jbGFzcyBSZXNwb25zZUNvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgUmVzcG9uc2VDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnUmVzcG9uc2VDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdSZXNwb25zZSBib2R5IGxlbmd0aCBkb2VzIG5vdCBtYXRjaCBjb250ZW50LWxlbmd0aCBoZWFkZXInXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfUkVTX0NPTlRFTlRfTEVOR1RIX01JU01BVENIJ1xuICB9XG59XG5cbmNsYXNzIENsaWVudERlc3Ryb3llZEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgQ2xpZW50RGVzdHJveWVkRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ0NsaWVudERlc3Ryb3llZEVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1RoZSBjbGllbnQgaXMgZGVzdHJveWVkJ1xuICAgIHRoaXMuY29kZSA9ICdVTkRfRVJSX0RFU1RST1lFRCdcbiAgfVxufVxuXG5jbGFzcyBDbGllbnRDbG9zZWRFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIENsaWVudENsb3NlZEVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdDbGllbnRDbG9zZWRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdUaGUgY2xpZW50IGlzIGNsb3NlZCdcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9DTE9TRUQnXG4gIH1cbn1cblxuY2xhc3MgU29ja2V0RXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlLCBzb2NrZXQpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFNvY2tldEVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdTb2NrZXRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdTb2NrZXQgZXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfU09DS0VUJ1xuICAgIHRoaXMuc29ja2V0ID0gc29ja2V0XG4gIH1cbn1cblxuY2xhc3MgTm90U3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSlcbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLCBOb3RTdXBwb3J0ZWRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnTm90U3VwcG9ydGVkRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnTm90IHN1cHBvcnRlZCBlcnJvcidcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9OT1RfU1VQUE9SVEVEJ1xuICB9XG59XG5cbmNsYXNzIEJhbGFuY2VkUG9vbE1pc3NpbmdVcHN0cmVhbUVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgTm90U3VwcG9ydGVkRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ01pc3NpbmdVcHN0cmVhbUVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ05vIHVwc3RyZWFtIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBCYWxhbmNlZFBvb2wnXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfQlBMX01JU1NJTkdfVVBTVFJFQU0nXG4gIH1cbn1cblxuY2xhc3MgSFRUUFBhcnNlckVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSwgY29kZSwgZGF0YSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgSFRUUFBhcnNlckVycm9yKVxuICAgIHRoaXMubmFtZSA9ICdIVFRQUGFyc2VyRXJyb3InXG4gICAgdGhpcy5jb2RlID0gY29kZSA/IGBIUEVfJHtjb2RlfWAgOiB1bmRlZmluZWRcbiAgICB0aGlzLmRhdGEgPSBkYXRhID8gZGF0YS50b1N0cmluZygpIDogdW5kZWZpbmVkXG4gIH1cbn1cblxuY2xhc3MgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvciBleHRlbmRzIFVuZGljaUVycm9yIHtcbiAgY29uc3RydWN0b3IgKG1lc3NhZ2UpIHtcbiAgICBzdXBlcihtZXNzYWdlKVxuICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIFJlc3BvbnNlRXhjZWVkZWRNYXhTaXplRXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ1Jlc3BvbnNlRXhjZWVkZWRNYXhTaXplRXJyb3InXG4gICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZSB8fCAnUmVzcG9uc2UgY29udGVudCBleGNlZWRlZCBtYXggc2l6ZSdcbiAgICB0aGlzLmNvZGUgPSAnVU5EX0VSUl9SRVNfRVhDRUVERURfTUFYX1NJWkUnXG4gIH1cbn1cblxuY2xhc3MgUmVxdWVzdFJldHJ5RXJyb3IgZXh0ZW5kcyBVbmRpY2lFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChtZXNzYWdlLCBjb2RlLCB7IGhlYWRlcnMsIGRhdGEgfSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgUmVxdWVzdFJldHJ5RXJyb3IpXG4gICAgdGhpcy5uYW1lID0gJ1JlcXVlc3RSZXRyeUVycm9yJ1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2UgfHwgJ1JlcXVlc3QgcmV0cnkgZXJyb3InXG4gICAgdGhpcy5jb2RlID0gJ1VORF9FUlJfUkVRX1JFVFJZJ1xuICAgIHRoaXMuc3RhdHVzQ29kZSA9IGNvZGVcbiAgICB0aGlzLmRhdGEgPSBkYXRhXG4gICAgdGhpcy5oZWFkZXJzID0gaGVhZGVyc1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBIVFRQUGFyc2VyRXJyb3IsXG4gIFVuZGljaUVycm9yLFxuICBIZWFkZXJzVGltZW91dEVycm9yLFxuICBIZWFkZXJzT3ZlcmZsb3dFcnJvcixcbiAgQm9keVRpbWVvdXRFcnJvcixcbiAgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBDb25uZWN0VGltZW91dEVycm9yLFxuICBSZXNwb25zZVN0YXR1c0NvZGVFcnJvcixcbiAgSW52YWxpZEFyZ3VtZW50RXJyb3IsXG4gIEludmFsaWRSZXR1cm5WYWx1ZUVycm9yLFxuICBSZXF1ZXN0QWJvcnRlZEVycm9yLFxuICBDbGllbnREZXN0cm95ZWRFcnJvcixcbiAgQ2xpZW50Q2xvc2VkRXJyb3IsXG4gIEluZm9ybWF0aW9uYWxFcnJvcixcbiAgU29ja2V0RXJyb3IsXG4gIE5vdFN1cHBvcnRlZEVycm9yLFxuICBSZXNwb25zZUNvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBCYWxhbmNlZFBvb2xNaXNzaW5nVXBzdHJlYW1FcnJvcixcbiAgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvcixcbiAgUmVxdWVzdFJldHJ5RXJyb3Jcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCB1bmRlZmluZWQ+fSAqL1xuY29uc3QgaGVhZGVyTmFtZUxvd2VyQ2FzZWRSZWNvcmQgPSB7fVxuXG4vLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9IVFRQL0hlYWRlcnNcbmNvbnN0IHdlbGxrbm93bkhlYWRlck5hbWVzID0gW1xuICAnQWNjZXB0JyxcbiAgJ0FjY2VwdC1FbmNvZGluZycsXG4gICdBY2NlcHQtTGFuZ3VhZ2UnLFxuICAnQWNjZXB0LVJhbmdlcycsXG4gICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1DcmVkZW50aWFscycsXG4gICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU1ldGhvZHMnLFxuICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luJyxcbiAgJ0FjY2Vzcy1Db250cm9sLUV4cG9zZS1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLU1heC1BZ2UnLFxuICAnQWNjZXNzLUNvbnRyb2wtUmVxdWVzdC1IZWFkZXJzJyxcbiAgJ0FjY2Vzcy1Db250cm9sLVJlcXVlc3QtTWV0aG9kJyxcbiAgJ0FnZScsXG4gICdBbGxvdycsXG4gICdBbHQtU3ZjJyxcbiAgJ0FsdC1Vc2VkJyxcbiAgJ0F1dGhvcml6YXRpb24nLFxuICAnQ2FjaGUtQ29udHJvbCcsXG4gICdDbGVhci1TaXRlLURhdGEnLFxuICAnQ29ubmVjdGlvbicsXG4gICdDb250ZW50LURpc3Bvc2l0aW9uJyxcbiAgJ0NvbnRlbnQtRW5jb2RpbmcnLFxuICAnQ29udGVudC1MYW5ndWFnZScsXG4gICdDb250ZW50LUxlbmd0aCcsXG4gICdDb250ZW50LUxvY2F0aW9uJyxcbiAgJ0NvbnRlbnQtUmFuZ2UnLFxuICAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3knLFxuICAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3ktUmVwb3J0LU9ubHknLFxuICAnQ29udGVudC1UeXBlJyxcbiAgJ0Nvb2tpZScsXG4gICdDcm9zcy1PcmlnaW4tRW1iZWRkZXItUG9saWN5JyxcbiAgJ0Nyb3NzLU9yaWdpbi1PcGVuZXItUG9saWN5JyxcbiAgJ0Nyb3NzLU9yaWdpbi1SZXNvdXJjZS1Qb2xpY3knLFxuICAnRGF0ZScsXG4gICdEZXZpY2UtTWVtb3J5JyxcbiAgJ0Rvd25saW5rJyxcbiAgJ0VDVCcsXG4gICdFVGFnJyxcbiAgJ0V4cGVjdCcsXG4gICdFeHBlY3QtQ1QnLFxuICAnRXhwaXJlcycsXG4gICdGb3J3YXJkZWQnLFxuICAnRnJvbScsXG4gICdIb3N0JyxcbiAgJ0lmLU1hdGNoJyxcbiAgJ0lmLU1vZGlmaWVkLVNpbmNlJyxcbiAgJ0lmLU5vbmUtTWF0Y2gnLFxuICAnSWYtUmFuZ2UnLFxuICAnSWYtVW5tb2RpZmllZC1TaW5jZScsXG4gICdLZWVwLUFsaXZlJyxcbiAgJ0xhc3QtTW9kaWZpZWQnLFxuICAnTGluaycsXG4gICdMb2NhdGlvbicsXG4gICdNYXgtRm9yd2FyZHMnLFxuICAnT3JpZ2luJyxcbiAgJ1Blcm1pc3Npb25zLVBvbGljeScsXG4gICdQcmFnbWEnLFxuICAnUHJveHktQXV0aGVudGljYXRlJyxcbiAgJ1Byb3h5LUF1dGhvcml6YXRpb24nLFxuICAnUlRUJyxcbiAgJ1JhbmdlJyxcbiAgJ1JlZmVyZXInLFxuICAnUmVmZXJyZXItUG9saWN5JyxcbiAgJ1JlZnJlc2gnLFxuICAnUmV0cnktQWZ0ZXInLFxuICAnU2VjLVdlYlNvY2tldC1BY2NlcHQnLFxuICAnU2VjLVdlYlNvY2tldC1FeHRlbnNpb25zJyxcbiAgJ1NlYy1XZWJTb2NrZXQtS2V5JyxcbiAgJ1NlYy1XZWJTb2NrZXQtUHJvdG9jb2wnLFxuICAnU2VjLVdlYlNvY2tldC1WZXJzaW9uJyxcbiAgJ1NlcnZlcicsXG4gICdTZXJ2ZXItVGltaW5nJyxcbiAgJ1NlcnZpY2UtV29ya2VyLUFsbG93ZWQnLFxuICAnU2VydmljZS1Xb3JrZXItTmF2aWdhdGlvbi1QcmVsb2FkJyxcbiAgJ1NldC1Db29raWUnLFxuICAnU291cmNlTWFwJyxcbiAgJ1N0cmljdC1UcmFuc3BvcnQtU2VjdXJpdHknLFxuICAnU3VwcG9ydHMtTG9hZGluZy1Nb2RlJyxcbiAgJ1RFJyxcbiAgJ1RpbWluZy1BbGxvdy1PcmlnaW4nLFxuICAnVHJhaWxlcicsXG4gICdUcmFuc2Zlci1FbmNvZGluZycsXG4gICdVcGdyYWRlJyxcbiAgJ1VwZ3JhZGUtSW5zZWN1cmUtUmVxdWVzdHMnLFxuICAnVXNlci1BZ2VudCcsXG4gICdWYXJ5JyxcbiAgJ1ZpYScsXG4gICdXV1ctQXV0aGVudGljYXRlJyxcbiAgJ1gtQ29udGVudC1UeXBlLU9wdGlvbnMnLFxuICAnWC1ETlMtUHJlZmV0Y2gtQ29udHJvbCcsXG4gICdYLUZyYW1lLU9wdGlvbnMnLFxuICAnWC1QZXJtaXR0ZWQtQ3Jvc3MtRG9tYWluLVBvbGljaWVzJyxcbiAgJ1gtUG93ZXJlZC1CeScsXG4gICdYLVJlcXVlc3RlZC1XaXRoJyxcbiAgJ1gtWFNTLVByb3RlY3Rpb24nXG5dXG5cbmZvciAobGV0IGkgPSAwOyBpIDwgd2VsbGtub3duSGVhZGVyTmFtZXMubGVuZ3RoOyArK2kpIHtcbiAgY29uc3Qga2V5ID0gd2VsbGtub3duSGVhZGVyTmFtZXNbaV1cbiAgY29uc3QgbG93ZXJDYXNlZEtleSA9IGtleS50b0xvd2VyQ2FzZSgpXG4gIGhlYWRlck5hbWVMb3dlckNhc2VkUmVjb3JkW2tleV0gPSBoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZFtsb3dlckNhc2VkS2V5XSA9XG4gICAgbG93ZXJDYXNlZEtleVxufVxuXG4vLyBOb3RlOiBvYmplY3QgcHJvdG90eXBlcyBzaG91bGQgbm90IGJlIGFibGUgdG8gYmUgcmVmZXJlbmNlZC4gZS5nLiBgT2JqZWN0I2hhc093blByb3BlcnR5YC5cbk9iamVjdC5zZXRQcm90b3R5cGVPZihoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZCwgbnVsbClcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHdlbGxrbm93bkhlYWRlck5hbWVzLFxuICBoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBrRGVzdHJveWVkLCBrQm9keVVzZWQgfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IEluY29taW5nTWVzc2FnZSB9ID0gcmVxdWlyZSgnaHR0cCcpXG5jb25zdCBzdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgbmV0ID0gcmVxdWlyZSgnbmV0JylcbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IgfSA9IHJlcXVpcmUoJy4vZXJyb3JzJylcbmNvbnN0IHsgQmxvYiB9ID0gcmVxdWlyZSgnYnVmZmVyJylcbmNvbnN0IG5vZGVVdGlsID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IHN0cmluZ2lmeSB9ID0gcmVxdWlyZSgncXVlcnlzdHJpbmcnKVxuY29uc3QgeyBoZWFkZXJOYW1lTG93ZXJDYXNlZFJlY29yZCB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKVxuXG5jb25zdCBbbm9kZU1ham9yLCBub2RlTWlub3JdID0gcHJvY2Vzcy52ZXJzaW9ucy5ub2RlLnNwbGl0KCcuJykubWFwKHYgPT4gTnVtYmVyKHYpKVxuXG5mdW5jdGlvbiBub3AgKCkge31cblxuZnVuY3Rpb24gaXNTdHJlYW0gKG9iaikge1xuICByZXR1cm4gb2JqICYmIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIHR5cGVvZiBvYmoucGlwZSA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygb2JqLm9uID09PSAnZnVuY3Rpb24nXG59XG5cbi8vIGJhc2VkIG9uIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlLWZldGNoL2ZldGNoLWJsb2IvYmxvYi84YWI1ODdkMzQwODBkZTk0MTQwYjU0ZjA3MTY4NDUxZTdkMGI2NTVlL2luZGV4LmpzI0wyMjktTDI0MSAoTUlUIExpY2Vuc2UpXG5mdW5jdGlvbiBpc0Jsb2JMaWtlIChvYmplY3QpIHtcbiAgcmV0dXJuIChCbG9iICYmIG9iamVjdCBpbnN0YW5jZW9mIEJsb2IpIHx8IChcbiAgICBvYmplY3QgJiZcbiAgICB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJlxuICAgICh0eXBlb2Ygb2JqZWN0LnN0cmVhbSA9PT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgdHlwZW9mIG9iamVjdC5hcnJheUJ1ZmZlciA9PT0gJ2Z1bmN0aW9uJykgJiZcbiAgICAvXihCbG9ifEZpbGUpJC8udGVzdChvYmplY3RbU3ltYm9sLnRvU3RyaW5nVGFnXSlcbiAgKVxufVxuXG5mdW5jdGlvbiBidWlsZFVSTCAodXJsLCBxdWVyeVBhcmFtcykge1xuICBpZiAodXJsLmluY2x1ZGVzKCc/JykgfHwgdXJsLmluY2x1ZGVzKCcjJykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1F1ZXJ5IHBhcmFtcyBjYW5ub3QgYmUgcGFzc2VkIHdoZW4gdXJsIGFscmVhZHkgY29udGFpbnMgXCI/XCIgb3IgXCIjXCIuJylcbiAgfVxuXG4gIGNvbnN0IHN0cmluZ2lmaWVkID0gc3RyaW5naWZ5KHF1ZXJ5UGFyYW1zKVxuXG4gIGlmIChzdHJpbmdpZmllZCkge1xuICAgIHVybCArPSAnPycgKyBzdHJpbmdpZmllZFxuICB9XG5cbiAgcmV0dXJuIHVybFxufVxuXG5mdW5jdGlvbiBwYXJzZVVSTCAodXJsKSB7XG4gIGlmICh0eXBlb2YgdXJsID09PSAnc3RyaW5nJykge1xuICAgIHVybCA9IG5ldyBVUkwodXJsKVxuXG4gICAgaWYgKCEvXmh0dHBzPzovLnRlc3QodXJsLm9yaWdpbiB8fCB1cmwucHJvdG9jb2wpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIHByb3RvY29sOiB0aGUgVVJMIG11c3Qgc3RhcnQgd2l0aCBgaHR0cDpgIG9yIGBodHRwczpgLicpXG4gICAgfVxuXG4gICAgcmV0dXJuIHVybFxuICB9XG5cbiAgaWYgKCF1cmwgfHwgdHlwZW9mIHVybCAhPT0gJ29iamVjdCcpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMOiBUaGUgVVJMIGFyZ3VtZW50IG11c3QgYmUgYSBub24tbnVsbCBvYmplY3QuJylcbiAgfVxuXG4gIGlmICghL15odHRwcz86Ly50ZXN0KHVybC5vcmlnaW4gfHwgdXJsLnByb3RvY29sKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignSW52YWxpZCBVUkwgcHJvdG9jb2w6IHRoZSBVUkwgbXVzdCBzdGFydCB3aXRoIGBodHRwOmAgb3IgYGh0dHBzOmAuJylcbiAgfVxuXG4gIGlmICghKHVybCBpbnN0YW5jZW9mIFVSTCkpIHtcbiAgICBpZiAodXJsLnBvcnQgIT0gbnVsbCAmJiB1cmwucG9ydCAhPT0gJycgJiYgIU51bWJlci5pc0Zpbml0ZShwYXJzZUludCh1cmwucG9ydCkpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMOiBwb3J0IG11c3QgYmUgYSB2YWxpZCBpbnRlZ2VyIG9yIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIGludGVnZXIuJylcbiAgICB9XG5cbiAgICBpZiAodXJsLnBhdGggIT0gbnVsbCAmJiB0eXBlb2YgdXJsLnBhdGggIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIHBhdGg6IHRoZSBwYXRoIG11c3QgYmUgYSBzdHJpbmcgb3IgbnVsbC91bmRlZmluZWQuJylcbiAgICB9XG5cbiAgICBpZiAodXJsLnBhdGhuYW1lICE9IG51bGwgJiYgdHlwZW9mIHVybC5wYXRobmFtZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignSW52YWxpZCBVUkwgcGF0aG5hbWU6IHRoZSBwYXRobmFtZSBtdXN0IGJlIGEgc3RyaW5nIG9yIG51bGwvdW5kZWZpbmVkLicpXG4gICAgfVxuXG4gICAgaWYgKHVybC5ob3N0bmFtZSAhPSBudWxsICYmIHR5cGVvZiB1cmwuaG9zdG5hbWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIGhvc3RuYW1lOiB0aGUgaG9zdG5hbWUgbXVzdCBiZSBhIHN0cmluZyBvciBudWxsL3VuZGVmaW5lZC4nKVxuICAgIH1cblxuICAgIGlmICh1cmwub3JpZ2luICE9IG51bGwgJiYgdHlwZW9mIHVybC5vcmlnaW4gIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0ludmFsaWQgVVJMIG9yaWdpbjogdGhlIG9yaWdpbiBtdXN0IGJlIGEgc3RyaW5nIG9yIG51bGwvdW5kZWZpbmVkLicpXG4gICAgfVxuXG4gICAgY29uc3QgcG9ydCA9IHVybC5wb3J0ICE9IG51bGxcbiAgICAgID8gdXJsLnBvcnRcbiAgICAgIDogKHVybC5wcm90b2NvbCA9PT0gJ2h0dHBzOicgPyA0NDMgOiA4MClcbiAgICBsZXQgb3JpZ2luID0gdXJsLm9yaWdpbiAhPSBudWxsXG4gICAgICA/IHVybC5vcmlnaW5cbiAgICAgIDogYCR7dXJsLnByb3RvY29sfS8vJHt1cmwuaG9zdG5hbWV9OiR7cG9ydH1gXG4gICAgbGV0IHBhdGggPSB1cmwucGF0aCAhPSBudWxsXG4gICAgICA/IHVybC5wYXRoXG4gICAgICA6IGAke3VybC5wYXRobmFtZSB8fCAnJ30ke3VybC5zZWFyY2ggfHwgJyd9YFxuXG4gICAgaWYgKG9yaWdpbi5lbmRzV2l0aCgnLycpKSB7XG4gICAgICBvcmlnaW4gPSBvcmlnaW4uc3Vic3RyaW5nKDAsIG9yaWdpbi5sZW5ndGggLSAxKVxuICAgIH1cblxuICAgIGlmIChwYXRoICYmICFwYXRoLnN0YXJ0c1dpdGgoJy8nKSkge1xuICAgICAgcGF0aCA9IGAvJHtwYXRofWBcbiAgICB9XG4gICAgLy8gbmV3IFVSTChwYXRoLCBvcmlnaW4pIGlzIHVuc2FmZSB3aGVuIGBwYXRoYCBjb250YWlucyBhbiBhYnNvbHV0ZSBVUkxcbiAgICAvLyBGcm9tIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9VUkwvVVJMOlxuICAgIC8vIElmIGZpcnN0IHBhcmFtZXRlciBpcyBhIHJlbGF0aXZlIFVSTCwgc2Vjb25kIHBhcmFtIGlzIHJlcXVpcmVkLCBhbmQgd2lsbCBiZSB1c2VkIGFzIHRoZSBiYXNlIFVSTC5cbiAgICAvLyBJZiBmaXJzdCBwYXJhbWV0ZXIgaXMgYW4gYWJzb2x1dGUgVVJMLCBhIGdpdmVuIHNlY29uZCBwYXJhbSB3aWxsIGJlIGlnbm9yZWQuXG4gICAgdXJsID0gbmV3IFVSTChvcmlnaW4gKyBwYXRoKVxuICB9XG5cbiAgcmV0dXJuIHVybFxufVxuXG5mdW5jdGlvbiBwYXJzZU9yaWdpbiAodXJsKSB7XG4gIHVybCA9IHBhcnNlVVJMKHVybClcblxuICBpZiAodXJsLnBhdGhuYW1lICE9PSAnLycgfHwgdXJsLnNlYXJjaCB8fCB1cmwuaGFzaCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCB1cmwnKVxuICB9XG5cbiAgcmV0dXJuIHVybFxufVxuXG5mdW5jdGlvbiBnZXRIb3N0bmFtZSAoaG9zdCkge1xuICBpZiAoaG9zdFswXSA9PT0gJ1snKSB7XG4gICAgY29uc3QgaWR4ID0gaG9zdC5pbmRleE9mKCddJylcblxuICAgIGFzc2VydChpZHggIT09IC0xKVxuICAgIHJldHVybiBob3N0LnN1YnN0cmluZygxLCBpZHgpXG4gIH1cblxuICBjb25zdCBpZHggPSBob3N0LmluZGV4T2YoJzonKVxuICBpZiAoaWR4ID09PSAtMSkgcmV0dXJuIGhvc3RcblxuICByZXR1cm4gaG9zdC5zdWJzdHJpbmcoMCwgaWR4KVxufVxuXG4vLyBJUCBhZGRyZXNzZXMgYXJlIG5vdCB2YWxpZCBzZXJ2ZXIgbmFtZXMgcGVyIFJGQzYwNjZcbi8vID4gQ3VycmVudGx5LCB0aGUgb25seSBzZXJ2ZXIgbmFtZXMgc3VwcG9ydGVkIGFyZSBETlMgaG9zdG5hbWVzXG5mdW5jdGlvbiBnZXRTZXJ2ZXJOYW1lIChob3N0KSB7XG4gIGlmICghaG9zdCkge1xuICAgIHJldHVybiBudWxsXG4gIH1cblxuICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGhvc3QsICdzdHJpbmcnKVxuXG4gIGNvbnN0IHNlcnZlcm5hbWUgPSBnZXRIb3N0bmFtZShob3N0KVxuICBpZiAobmV0LmlzSVAoc2VydmVybmFtZSkpIHtcbiAgICByZXR1cm4gJydcbiAgfVxuXG4gIHJldHVybiBzZXJ2ZXJuYW1lXG59XG5cbmZ1bmN0aW9uIGRlZXBDbG9uZSAob2JqKSB7XG4gIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG9iaikpXG59XG5cbmZ1bmN0aW9uIGlzQXN5bmNJdGVyYWJsZSAob2JqKSB7XG4gIHJldHVybiAhIShvYmogIT0gbnVsbCAmJiB0eXBlb2Ygb2JqW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9PT0gJ2Z1bmN0aW9uJylcbn1cblxuZnVuY3Rpb24gaXNJdGVyYWJsZSAob2JqKSB7XG4gIHJldHVybiAhIShvYmogIT0gbnVsbCAmJiAodHlwZW9mIG9ialtTeW1ib2wuaXRlcmF0b3JdID09PSAnZnVuY3Rpb24nIHx8IHR5cGVvZiBvYmpbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID09PSAnZnVuY3Rpb24nKSlcbn1cblxuZnVuY3Rpb24gYm9keUxlbmd0aCAoYm9keSkge1xuICBpZiAoYm9keSA9PSBudWxsKSB7XG4gICAgcmV0dXJuIDBcbiAgfSBlbHNlIGlmIChpc1N0cmVhbShib2R5KSkge1xuICAgIGNvbnN0IHN0YXRlID0gYm9keS5fcmVhZGFibGVTdGF0ZVxuICAgIHJldHVybiBzdGF0ZSAmJiBzdGF0ZS5vYmplY3RNb2RlID09PSBmYWxzZSAmJiBzdGF0ZS5lbmRlZCA9PT0gdHJ1ZSAmJiBOdW1iZXIuaXNGaW5pdGUoc3RhdGUubGVuZ3RoKVxuICAgICAgPyBzdGF0ZS5sZW5ndGhcbiAgICAgIDogbnVsbFxuICB9IGVsc2UgaWYgKGlzQmxvYkxpa2UoYm9keSkpIHtcbiAgICByZXR1cm4gYm9keS5zaXplICE9IG51bGwgPyBib2R5LnNpemUgOiBudWxsXG4gIH0gZWxzZSBpZiAoaXNCdWZmZXIoYm9keSkpIHtcbiAgICByZXR1cm4gYm9keS5ieXRlTGVuZ3RoXG4gIH1cblxuICByZXR1cm4gbnVsbFxufVxuXG5mdW5jdGlvbiBpc0Rlc3Ryb3llZCAoc3RyZWFtKSB7XG4gIHJldHVybiAhc3RyZWFtIHx8ICEhKHN0cmVhbS5kZXN0cm95ZWQgfHwgc3RyZWFtW2tEZXN0cm95ZWRdKVxufVxuXG5mdW5jdGlvbiBpc1JlYWRhYmxlQWJvcnRlZCAoc3RyZWFtKSB7XG4gIGNvbnN0IHN0YXRlID0gc3RyZWFtICYmIHN0cmVhbS5fcmVhZGFibGVTdGF0ZVxuICByZXR1cm4gaXNEZXN0cm95ZWQoc3RyZWFtKSAmJiBzdGF0ZSAmJiAhc3RhdGUuZW5kRW1pdHRlZFxufVxuXG5mdW5jdGlvbiBkZXN0cm95IChzdHJlYW0sIGVycikge1xuICBpZiAoc3RyZWFtID09IG51bGwgfHwgIWlzU3RyZWFtKHN0cmVhbSkgfHwgaXNEZXN0cm95ZWQoc3RyZWFtKSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHR5cGVvZiBzdHJlYW0uZGVzdHJveSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGlmIChPYmplY3QuZ2V0UHJvdG90eXBlT2Yoc3RyZWFtKS5jb25zdHJ1Y3RvciA9PT0gSW5jb21pbmdNZXNzYWdlKSB7XG4gICAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9wdWxsLzM4NTA1L2ZpbGVzXG4gICAgICBzdHJlYW0uc29ja2V0ID0gbnVsbFxuICAgIH1cblxuICAgIHN0cmVhbS5kZXN0cm95KGVycilcbiAgfSBlbHNlIGlmIChlcnIpIHtcbiAgICBwcm9jZXNzLm5leHRUaWNrKChzdHJlYW0sIGVycikgPT4ge1xuICAgICAgc3RyZWFtLmVtaXQoJ2Vycm9yJywgZXJyKVxuICAgIH0sIHN0cmVhbSwgZXJyKVxuICB9XG5cbiAgaWYgKHN0cmVhbS5kZXN0cm95ZWQgIT09IHRydWUpIHtcbiAgICBzdHJlYW1ba0Rlc3Ryb3llZF0gPSB0cnVlXG4gIH1cbn1cblxuY29uc3QgS0VFUEFMSVZFX1RJTUVPVVRfRVhQUiA9IC90aW1lb3V0PShcXGQrKS9cbmZ1bmN0aW9uIHBhcnNlS2VlcEFsaXZlVGltZW91dCAodmFsKSB7XG4gIGNvbnN0IG0gPSB2YWwudG9TdHJpbmcoKS5tYXRjaChLRUVQQUxJVkVfVElNRU9VVF9FWFBSKVxuICByZXR1cm4gbSA/IHBhcnNlSW50KG1bMV0sIDEwKSAqIDEwMDAgOiBudWxsXG59XG5cbi8qKlxuICogUmV0cmlldmVzIGEgaGVhZGVyIG5hbWUgYW5kIHJldHVybnMgaXRzIGxvd2VyY2FzZSB2YWx1ZS5cbiAqIEBwYXJhbSB7c3RyaW5nIHwgQnVmZmVyfSB2YWx1ZSBIZWFkZXIgbmFtZVxuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gaGVhZGVyTmFtZVRvU3RyaW5nICh2YWx1ZSkge1xuICByZXR1cm4gaGVhZGVyTmFtZUxvd2VyQ2FzZWRSZWNvcmRbdmFsdWVdIHx8IHZhbHVlLnRvTG93ZXJDYXNlKClcbn1cblxuZnVuY3Rpb24gcGFyc2VIZWFkZXJzIChoZWFkZXJzLCBvYmogPSB7fSkge1xuICAvLyBGb3IgSDIgc3VwcG9ydFxuICBpZiAoIUFycmF5LmlzQXJyYXkoaGVhZGVycykpIHJldHVybiBoZWFkZXJzXG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBoZWFkZXJzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgY29uc3Qga2V5ID0gaGVhZGVyc1tpXS50b1N0cmluZygpLnRvTG93ZXJDYXNlKClcbiAgICBsZXQgdmFsID0gb2JqW2tleV1cblxuICAgIGlmICghdmFsKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzW2kgKyAxXSkpIHtcbiAgICAgICAgb2JqW2tleV0gPSBoZWFkZXJzW2kgKyAxXS5tYXAoeCA9PiB4LnRvU3RyaW5nKCd1dGY4JykpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYmpba2V5XSA9IGhlYWRlcnNbaSArIDFdLnRvU3RyaW5nKCd1dGY4JylcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgdmFsID0gW3ZhbF1cbiAgICAgICAgb2JqW2tleV0gPSB2YWxcbiAgICAgIH1cbiAgICAgIHZhbC5wdXNoKGhlYWRlcnNbaSArIDFdLnRvU3RyaW5nKCd1dGY4JykpXG4gICAgfVxuICB9XG5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9wdWxsLzQ2NTI4XG4gIGlmICgnY29udGVudC1sZW5ndGgnIGluIG9iaiAmJiAnY29udGVudC1kaXNwb3NpdGlvbicgaW4gb2JqKSB7XG4gICAgb2JqWydjb250ZW50LWRpc3Bvc2l0aW9uJ10gPSBCdWZmZXIuZnJvbShvYmpbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXSkudG9TdHJpbmcoJ2xhdGluMScpXG4gIH1cblxuICByZXR1cm4gb2JqXG59XG5cbmZ1bmN0aW9uIHBhcnNlUmF3SGVhZGVycyAoaGVhZGVycykge1xuICBjb25zdCByZXQgPSBbXVxuICBsZXQgaGFzQ29udGVudExlbmd0aCA9IGZhbHNlXG4gIGxldCBjb250ZW50RGlzcG9zaXRpb25JZHggPSAtMVxuXG4gIGZvciAobGV0IG4gPSAwOyBuIDwgaGVhZGVycy5sZW5ndGg7IG4gKz0gMikge1xuICAgIGNvbnN0IGtleSA9IGhlYWRlcnNbbiArIDBdLnRvU3RyaW5nKClcbiAgICBjb25zdCB2YWwgPSBoZWFkZXJzW24gKyAxXS50b1N0cmluZygndXRmOCcpXG5cbiAgICBpZiAoa2V5Lmxlbmd0aCA9PT0gMTQgJiYgKGtleSA9PT0gJ2NvbnRlbnQtbGVuZ3RoJyB8fCBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtbGVuZ3RoJykpIHtcbiAgICAgIHJldC5wdXNoKGtleSwgdmFsKVxuICAgICAgaGFzQ29udGVudExlbmd0aCA9IHRydWVcbiAgICB9IGVsc2UgaWYgKGtleS5sZW5ndGggPT09IDE5ICYmIChrZXkgPT09ICdjb250ZW50LWRpc3Bvc2l0aW9uJyB8fCBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtZGlzcG9zaXRpb24nKSkge1xuICAgICAgY29udGVudERpc3Bvc2l0aW9uSWR4ID0gcmV0LnB1c2goa2V5LCB2YWwpIC0gMVxuICAgIH0gZWxzZSB7XG4gICAgICByZXQucHVzaChrZXksIHZhbClcbiAgICB9XG4gIH1cblxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL3B1bGwvNDY1MjhcbiAgaWYgKGhhc0NvbnRlbnRMZW5ndGggJiYgY29udGVudERpc3Bvc2l0aW9uSWR4ICE9PSAtMSkge1xuICAgIHJldFtjb250ZW50RGlzcG9zaXRpb25JZHhdID0gQnVmZmVyLmZyb20ocmV0W2NvbnRlbnREaXNwb3NpdGlvbklkeF0pLnRvU3RyaW5nKCdsYXRpbjEnKVxuICB9XG5cbiAgcmV0dXJuIHJldFxufVxuXG5mdW5jdGlvbiBpc0J1ZmZlciAoYnVmZmVyKSB7XG4gIC8vIFNlZSwgaHR0cHM6Ly9naXRodWIuY29tL21jb2xsaW5hL3VuZGljaS9wdWxsLzMxOVxuICByZXR1cm4gYnVmZmVyIGluc3RhbmNlb2YgVWludDhBcnJheSB8fCBCdWZmZXIuaXNCdWZmZXIoYnVmZmVyKVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZUhhbmRsZXIgKGhhbmRsZXIsIG1ldGhvZCwgdXBncmFkZSkge1xuICBpZiAoIWhhbmRsZXIgfHwgdHlwZW9mIGhhbmRsZXIgIT09ICdvYmplY3QnKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoYW5kbGVyIG11c3QgYmUgYW4gb2JqZWN0JylcbiAgfVxuXG4gIGlmICh0eXBlb2YgaGFuZGxlci5vbkNvbm5lY3QgIT09ICdmdW5jdGlvbicpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb25Db25uZWN0IG1ldGhvZCcpXG4gIH1cblxuICBpZiAodHlwZW9mIGhhbmRsZXIub25FcnJvciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkVycm9yIG1ldGhvZCcpXG4gIH1cblxuICBpZiAodHlwZW9mIGhhbmRsZXIub25Cb2R5U2VudCAhPT0gJ2Z1bmN0aW9uJyAmJiBoYW5kbGVyLm9uQm9keVNlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkJvZHlTZW50IG1ldGhvZCcpXG4gIH1cblxuICBpZiAodXBncmFkZSB8fCBtZXRob2QgPT09ICdDT05ORUNUJykge1xuICAgIGlmICh0eXBlb2YgaGFuZGxlci5vblVwZ3JhZGUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvblVwZ3JhZGUgbWV0aG9kJylcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgaWYgKHR5cGVvZiBoYW5kbGVyLm9uSGVhZGVycyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9uSGVhZGVycyBtZXRob2QnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgaGFuZGxlci5vbkRhdGEgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkRhdGEgbWV0aG9kJylcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGhhbmRsZXIub25Db21wbGV0ZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9uQ29tcGxldGUgbWV0aG9kJylcbiAgICB9XG4gIH1cbn1cblxuLy8gQSBib2R5IGlzIGRpc3R1cmJlZCBpZiBpdCBoYXMgYmVlbiByZWFkIGZyb20gYW5kIGl0IGNhbm5vdFxuLy8gYmUgcmUtdXNlZCB3aXRob3V0IGxvc2luZyBzdGF0ZSBvciBkYXRhLlxuZnVuY3Rpb24gaXNEaXN0dXJiZWQgKGJvZHkpIHtcbiAgcmV0dXJuICEhKGJvZHkgJiYgKFxuICAgIHN0cmVhbS5pc0Rpc3R1cmJlZFxuICAgICAgPyBzdHJlYW0uaXNEaXN0dXJiZWQoYm9keSkgfHwgYm9keVtrQm9keVVzZWRdIC8vIFRPRE8gKGZpeCk6IFdoeSBpcyBib2R5W2tCb2R5VXNlZF0gbmVlZGVkP1xuICAgICAgOiBib2R5W2tCb2R5VXNlZF0gfHxcbiAgICAgICAgYm9keS5yZWFkYWJsZURpZFJlYWQgfHxcbiAgICAgICAgKGJvZHkuX3JlYWRhYmxlU3RhdGUgJiYgYm9keS5fcmVhZGFibGVTdGF0ZS5kYXRhRW1pdHRlZCkgfHxcbiAgICAgICAgaXNSZWFkYWJsZUFib3J0ZWQoYm9keSlcbiAgKSlcbn1cblxuZnVuY3Rpb24gaXNFcnJvcmVkIChib2R5KSB7XG4gIHJldHVybiAhIShib2R5ICYmIChcbiAgICBzdHJlYW0uaXNFcnJvcmVkXG4gICAgICA/IHN0cmVhbS5pc0Vycm9yZWQoYm9keSlcbiAgICAgIDogL3N0YXRlOiAnZXJyb3JlZCcvLnRlc3Qobm9kZVV0aWwuaW5zcGVjdChib2R5KVxuICAgICAgKSkpXG59XG5cbmZ1bmN0aW9uIGlzUmVhZGFibGUgKGJvZHkpIHtcbiAgcmV0dXJuICEhKGJvZHkgJiYgKFxuICAgIHN0cmVhbS5pc1JlYWRhYmxlXG4gICAgICA/IHN0cmVhbS5pc1JlYWRhYmxlKGJvZHkpXG4gICAgICA6IC9zdGF0ZTogJ3JlYWRhYmxlJy8udGVzdChub2RlVXRpbC5pbnNwZWN0KGJvZHkpXG4gICAgICApKSlcbn1cblxuZnVuY3Rpb24gZ2V0U29ja2V0SW5mbyAoc29ja2V0KSB7XG4gIHJldHVybiB7XG4gICAgbG9jYWxBZGRyZXNzOiBzb2NrZXQubG9jYWxBZGRyZXNzLFxuICAgIGxvY2FsUG9ydDogc29ja2V0LmxvY2FsUG9ydCxcbiAgICByZW1vdGVBZGRyZXNzOiBzb2NrZXQucmVtb3RlQWRkcmVzcyxcbiAgICByZW1vdGVQb3J0OiBzb2NrZXQucmVtb3RlUG9ydCxcbiAgICByZW1vdGVGYW1pbHk6IHNvY2tldC5yZW1vdGVGYW1pbHksXG4gICAgdGltZW91dDogc29ja2V0LnRpbWVvdXQsXG4gICAgYnl0ZXNXcml0dGVuOiBzb2NrZXQuYnl0ZXNXcml0dGVuLFxuICAgIGJ5dGVzUmVhZDogc29ja2V0LmJ5dGVzUmVhZFxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uICogY29udmVydEl0ZXJhYmxlVG9CdWZmZXIgKGl0ZXJhYmxlKSB7XG4gIGZvciBhd2FpdCAoY29uc3QgY2h1bmsgb2YgaXRlcmFibGUpIHtcbiAgICB5aWVsZCBCdWZmZXIuaXNCdWZmZXIoY2h1bmspID8gY2h1bmsgOiBCdWZmZXIuZnJvbShjaHVuaylcbiAgfVxufVxuXG5sZXQgUmVhZGFibGVTdHJlYW1cbmZ1bmN0aW9uIFJlYWRhYmxlU3RyZWFtRnJvbSAoaXRlcmFibGUpIHtcbiAgaWYgKCFSZWFkYWJsZVN0cmVhbSkge1xuICAgIFJlYWRhYmxlU3RyZWFtID0gcmVxdWlyZSgnc3RyZWFtL3dlYicpLlJlYWRhYmxlU3RyZWFtXG4gIH1cblxuICBpZiAoUmVhZGFibGVTdHJlYW0uZnJvbSkge1xuICAgIHJldHVybiBSZWFkYWJsZVN0cmVhbS5mcm9tKGNvbnZlcnRJdGVyYWJsZVRvQnVmZmVyKGl0ZXJhYmxlKSlcbiAgfVxuXG4gIGxldCBpdGVyYXRvclxuICByZXR1cm4gbmV3IFJlYWRhYmxlU3RyZWFtKFxuICAgIHtcbiAgICAgIGFzeW5jIHN0YXJ0ICgpIHtcbiAgICAgICAgaXRlcmF0b3IgPSBpdGVyYWJsZVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0oKVxuICAgICAgfSxcbiAgICAgIGFzeW5jIHB1bGwgKGNvbnRyb2xsZXIpIHtcbiAgICAgICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgaXRlcmF0b3IubmV4dCgpXG4gICAgICAgIGlmIChkb25lKSB7XG4gICAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgICAgY29udHJvbGxlci5jbG9zZSgpXG4gICAgICAgICAgfSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBidWYgPSBCdWZmZXIuaXNCdWZmZXIodmFsdWUpID8gdmFsdWUgOiBCdWZmZXIuZnJvbSh2YWx1ZSlcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUobmV3IFVpbnQ4QXJyYXkoYnVmKSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udHJvbGxlci5kZXNpcmVkU2l6ZSA+IDBcbiAgICAgIH0sXG4gICAgICBhc3luYyBjYW5jZWwgKHJlYXNvbikge1xuICAgICAgICBhd2FpdCBpdGVyYXRvci5yZXR1cm4oKVxuICAgICAgfVxuICAgIH0sXG4gICAgMFxuICApXG59XG5cbi8vIFRoZSBjaHVuayBzaG91bGQgYmUgYSBGb3JtRGF0YSBpbnN0YW5jZSBhbmQgY29udGFpbnNcbi8vIGFsbCB0aGUgcmVxdWlyZWQgbWV0aG9kcy5cbmZ1bmN0aW9uIGlzRm9ybURhdGFMaWtlIChvYmplY3QpIHtcbiAgcmV0dXJuIChcbiAgICBvYmplY3QgJiZcbiAgICB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJlxuICAgIHR5cGVvZiBvYmplY3QuYXBwZW5kID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIG9iamVjdC5kZWxldGUgPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2Ygb2JqZWN0LmdldCA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIHR5cGVvZiBvYmplY3QuZ2V0QWxsID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIG9iamVjdC5oYXMgPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2Ygb2JqZWN0LnNldCA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIG9iamVjdFtTeW1ib2wudG9TdHJpbmdUYWddID09PSAnRm9ybURhdGEnXG4gIClcbn1cblxuZnVuY3Rpb24gdGhyb3dJZkFib3J0ZWQgKHNpZ25hbCkge1xuICBpZiAoIXNpZ25hbCkgeyByZXR1cm4gfVxuICBpZiAodHlwZW9mIHNpZ25hbC50aHJvd0lmQWJvcnRlZCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHNpZ25hbC50aHJvd0lmQWJvcnRlZCgpXG4gIH0gZWxzZSB7XG4gICAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgICAvLyBET01FeGNlcHRpb24gbm90IGF2YWlsYWJsZSA8IHYxNy4wLjBcbiAgICAgIGNvbnN0IGVyciA9IG5ldyBFcnJvcignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZCcpXG4gICAgICBlcnIubmFtZSA9ICdBYm9ydEVycm9yJ1xuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGFkZEFib3J0TGlzdGVuZXIgKHNpZ25hbCwgbGlzdGVuZXIpIHtcbiAgaWYgKCdhZGRFdmVudExpc3RlbmVyJyBpbiBzaWduYWwpIHtcbiAgICBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBsaXN0ZW5lciwgeyBvbmNlOiB0cnVlIH0pXG4gICAgcmV0dXJuICgpID0+IHNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIGxpc3RlbmVyKVxuICB9XG4gIHNpZ25hbC5hZGRMaXN0ZW5lcignYWJvcnQnLCBsaXN0ZW5lcilcbiAgcmV0dXJuICgpID0+IHNpZ25hbC5yZW1vdmVMaXN0ZW5lcignYWJvcnQnLCBsaXN0ZW5lcilcbn1cblxuY29uc3QgaGFzVG9XZWxsRm9ybWVkID0gISFTdHJpbmcucHJvdG90eXBlLnRvV2VsbEZvcm1lZFxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB2YWxcbiAqL1xuZnVuY3Rpb24gdG9VU1ZTdHJpbmcgKHZhbCkge1xuICBpZiAoaGFzVG9XZWxsRm9ybWVkKSB7XG4gICAgcmV0dXJuIGAke3ZhbH1gLnRvV2VsbEZvcm1lZCgpXG4gIH0gZWxzZSBpZiAobm9kZVV0aWwudG9VU1ZTdHJpbmcpIHtcbiAgICByZXR1cm4gbm9kZVV0aWwudG9VU1ZTdHJpbmcodmFsKVxuICB9XG5cbiAgcmV0dXJuIGAke3ZhbH1gXG59XG5cbi8vIFBhcnNlZCBhY2NvcmRpbmdseSB0byBSRkMgOTExMFxuLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzkxMTAjZmllbGQuY29udGVudC1yYW5nZVxuZnVuY3Rpb24gcGFyc2VSYW5nZUhlYWRlciAocmFuZ2UpIHtcbiAgaWYgKHJhbmdlID09IG51bGwgfHwgcmFuZ2UgPT09ICcnKSByZXR1cm4geyBzdGFydDogMCwgZW5kOiBudWxsLCBzaXplOiBudWxsIH1cblxuICBjb25zdCBtID0gcmFuZ2UgPyByYW5nZS5tYXRjaCgvXmJ5dGVzIChcXGQrKS0oXFxkKylcXC8oXFxkKyk/JC8pIDogbnVsbFxuICByZXR1cm4gbVxuICAgID8ge1xuICAgICAgICBzdGFydDogcGFyc2VJbnQobVsxXSksXG4gICAgICAgIGVuZDogbVsyXSA/IHBhcnNlSW50KG1bMl0pIDogbnVsbCxcbiAgICAgICAgc2l6ZTogbVszXSA/IHBhcnNlSW50KG1bM10pIDogbnVsbFxuICAgICAgfVxuICAgIDogbnVsbFxufVxuXG5jb25zdCBrRW51bWVyYWJsZVByb3BlcnR5ID0gT2JqZWN0LmNyZWF0ZShudWxsKVxua0VudW1lcmFibGVQcm9wZXJ0eS5lbnVtZXJhYmxlID0gdHJ1ZVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgbm9wLFxuICBpc0Rpc3R1cmJlZCxcbiAgaXNFcnJvcmVkLFxuICBpc1JlYWRhYmxlLFxuICB0b1VTVlN0cmluZyxcbiAgaXNSZWFkYWJsZUFib3J0ZWQsXG4gIGlzQmxvYkxpa2UsXG4gIHBhcnNlT3JpZ2luLFxuICBwYXJzZVVSTCxcbiAgZ2V0U2VydmVyTmFtZSxcbiAgaXNTdHJlYW0sXG4gIGlzSXRlcmFibGUsXG4gIGlzQXN5bmNJdGVyYWJsZSxcbiAgaXNEZXN0cm95ZWQsXG4gIGhlYWRlck5hbWVUb1N0cmluZyxcbiAgcGFyc2VSYXdIZWFkZXJzLFxuICBwYXJzZUhlYWRlcnMsXG4gIHBhcnNlS2VlcEFsaXZlVGltZW91dCxcbiAgZGVzdHJveSxcbiAgYm9keUxlbmd0aCxcbiAgZGVlcENsb25lLFxuICBSZWFkYWJsZVN0cmVhbUZyb20sXG4gIGlzQnVmZmVyLFxuICB2YWxpZGF0ZUhhbmRsZXIsXG4gIGdldFNvY2tldEluZm8sXG4gIGlzRm9ybURhdGFMaWtlLFxuICBidWlsZFVSTCxcbiAgdGhyb3dJZkFib3J0ZWQsXG4gIGFkZEFib3J0TGlzdGVuZXIsXG4gIHBhcnNlUmFuZ2VIZWFkZXIsXG4gIG5vZGVNYWpvcixcbiAgbm9kZU1pbm9yLFxuICBub2RlSGFzQXV0b1NlbGVjdEZhbWlseTogbm9kZU1ham9yID4gMTggfHwgKG5vZGVNYWpvciA9PT0gMTggJiYgbm9kZU1pbm9yID49IDEzKSxcbiAgc2FmZUhUVFBNZXRob2RzOiBbJ0dFVCcsICdIRUFEJywgJ09QVElPTlMnLCAnVFJBQ0UnXVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5sZXQgZmFzdE5vdyA9IERhdGUubm93KClcbmxldCBmYXN0Tm93VGltZW91dFxuXG5jb25zdCBmYXN0VGltZXJzID0gW11cblxuZnVuY3Rpb24gb25UaW1lb3V0ICgpIHtcbiAgZmFzdE5vdyA9IERhdGUubm93KClcblxuICBsZXQgbGVuID0gZmFzdFRpbWVycy5sZW5ndGhcbiAgbGV0IGlkeCA9IDBcbiAgd2hpbGUgKGlkeCA8IGxlbikge1xuICAgIGNvbnN0IHRpbWVyID0gZmFzdFRpbWVyc1tpZHhdXG5cbiAgICBpZiAodGltZXIuc3RhdGUgPT09IDApIHtcbiAgICAgIHRpbWVyLnN0YXRlID0gZmFzdE5vdyArIHRpbWVyLmRlbGF5XG4gICAgfSBlbHNlIGlmICh0aW1lci5zdGF0ZSA+IDAgJiYgZmFzdE5vdyA+PSB0aW1lci5zdGF0ZSkge1xuICAgICAgdGltZXIuc3RhdGUgPSAtMVxuICAgICAgdGltZXIuY2FsbGJhY2sodGltZXIub3BhcXVlKVxuICAgIH1cblxuICAgIGlmICh0aW1lci5zdGF0ZSA9PT0gLTEpIHtcbiAgICAgIHRpbWVyLnN0YXRlID0gLTJcbiAgICAgIGlmIChpZHggIT09IGxlbiAtIDEpIHtcbiAgICAgICAgZmFzdFRpbWVyc1tpZHhdID0gZmFzdFRpbWVycy5wb3AoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZmFzdFRpbWVycy5wb3AoKVxuICAgICAgfVxuICAgICAgbGVuIC09IDFcbiAgICB9IGVsc2Uge1xuICAgICAgaWR4ICs9IDFcbiAgICB9XG4gIH1cblxuICBpZiAoZmFzdFRpbWVycy5sZW5ndGggPiAwKSB7XG4gICAgcmVmcmVzaFRpbWVvdXQoKVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlZnJlc2hUaW1lb3V0ICgpIHtcbiAgaWYgKGZhc3ROb3dUaW1lb3V0ICYmIGZhc3ROb3dUaW1lb3V0LnJlZnJlc2gpIHtcbiAgICBmYXN0Tm93VGltZW91dC5yZWZyZXNoKClcbiAgfSBlbHNlIHtcbiAgICBjbGVhclRpbWVvdXQoZmFzdE5vd1RpbWVvdXQpXG4gICAgZmFzdE5vd1RpbWVvdXQgPSBzZXRUaW1lb3V0KG9uVGltZW91dCwgMWUzKVxuICAgIGlmIChmYXN0Tm93VGltZW91dC51bnJlZikge1xuICAgICAgZmFzdE5vd1RpbWVvdXQudW5yZWYoKVxuICAgIH1cbiAgfVxufVxuXG5jbGFzcyBUaW1lb3V0IHtcbiAgY29uc3RydWN0b3IgKGNhbGxiYWNrLCBkZWxheSwgb3BhcXVlKSB7XG4gICAgdGhpcy5jYWxsYmFjayA9IGNhbGxiYWNrXG4gICAgdGhpcy5kZWxheSA9IGRlbGF5XG4gICAgdGhpcy5vcGFxdWUgPSBvcGFxdWVcblxuICAgIC8vICAtMiBub3QgaW4gdGltZXIgbGlzdFxuICAgIC8vICAtMSBpbiB0aW1lciBsaXN0IGJ1dCBpbmFjdGl2ZVxuICAgIC8vICAgMCBpbiB0aW1lciBsaXN0IHdhaXRpbmcgZm9yIHRpbWVcbiAgICAvLyA+IDAgaW4gdGltZXIgbGlzdCB3YWl0aW5nIGZvciB0aW1lIHRvIGV4cGlyZVxuICAgIHRoaXMuc3RhdGUgPSAtMlxuXG4gICAgdGhpcy5yZWZyZXNoKClcbiAgfVxuXG4gIHJlZnJlc2ggKCkge1xuICAgIGlmICh0aGlzLnN0YXRlID09PSAtMikge1xuICAgICAgZmFzdFRpbWVycy5wdXNoKHRoaXMpXG4gICAgICBpZiAoIWZhc3ROb3dUaW1lb3V0IHx8IGZhc3RUaW1lcnMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHJlZnJlc2hUaW1lb3V0KClcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnN0YXRlID0gMFxuICB9XG5cbiAgY2xlYXIgKCkge1xuICAgIHRoaXMuc3RhdGUgPSAtMVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBzZXRUaW1lb3V0IChjYWxsYmFjaywgZGVsYXksIG9wYXF1ZSkge1xuICAgIHJldHVybiBkZWxheSA8IDFlM1xuICAgICAgPyBzZXRUaW1lb3V0KGNhbGxiYWNrLCBkZWxheSwgb3BhcXVlKVxuICAgICAgOiBuZXcgVGltZW91dChjYWxsYmFjaywgZGVsYXksIG9wYXF1ZSlcbiAgfSxcbiAgY2xlYXJUaW1lb3V0ICh0aW1lb3V0KSB7XG4gICAgaWYgKHRpbWVvdXQgaW5zdGFuY2VvZiBUaW1lb3V0KSB7XG4gICAgICB0aW1lb3V0LmNsZWFyKClcbiAgICB9IGVsc2Uge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpXG4gICAgfVxuICB9XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8qKlxuICogQ29weXJpZ2h0IEJyaWFuIFdoaXRlLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL21zY2RleC9zdHJlYW1zZWFyY2hcbiAqXG4gKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4gKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0b1xuICogZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGVcbiAqIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vclxuICogc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbiAqIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4gKlxuICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbiAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuICpcbiAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4gKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4gKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lOR1xuICogRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HU1xuICogSU4gVEhFIFNPRlRXQVJFLlxuICpcbiAqIEJhc2VkIGhlYXZpbHkgb24gdGhlIFN0cmVhbWluZyBCb3llci1Nb29yZS1Ib3JzcG9vbCBDKysgaW1wbGVtZW50YXRpb25cbiAqIGJ5IEhvbmdsaSBMYWkgYXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9Gb29CYXJXaWRnZXQvYm95ZXItbW9vcmUtaG9yc3Bvb2xcbiAqL1xuY29uc3QgRXZlbnRFbWl0dGVyID0gcmVxdWlyZSgnbm9kZTpldmVudHMnKS5FdmVudEVtaXR0ZXJcbmNvbnN0IGluaGVyaXRzID0gcmVxdWlyZSgnbm9kZTp1dGlsJykuaW5oZXJpdHNcblxuZnVuY3Rpb24gU0JNSCAobmVlZGxlKSB7XG4gIGlmICh0eXBlb2YgbmVlZGxlID09PSAnc3RyaW5nJykge1xuICAgIG5lZWRsZSA9IEJ1ZmZlci5mcm9tKG5lZWRsZSlcbiAgfVxuXG4gIGlmICghQnVmZmVyLmlzQnVmZmVyKG5lZWRsZSkpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdUaGUgbmVlZGxlIGhhcyB0byBiZSBhIFN0cmluZyBvciBhIEJ1ZmZlci4nKVxuICB9XG5cbiAgY29uc3QgbmVlZGxlTGVuZ3RoID0gbmVlZGxlLmxlbmd0aFxuXG4gIGlmIChuZWVkbGVMZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBuZWVkbGUgY2Fubm90IGJlIGFuIGVtcHR5IFN0cmluZy9CdWZmZXIuJylcbiAgfVxuXG4gIGlmIChuZWVkbGVMZW5ndGggPiAyNTYpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBuZWVkbGUgY2Fubm90IGhhdmUgYSBsZW5ndGggYmlnZ2VyIHRoYW4gMjU2LicpXG4gIH1cblxuICB0aGlzLm1heE1hdGNoZXMgPSBJbmZpbml0eVxuICB0aGlzLm1hdGNoZXMgPSAwXG5cbiAgdGhpcy5fb2NjID0gbmV3IEFycmF5KDI1NilcbiAgICAuZmlsbChuZWVkbGVMZW5ndGgpIC8vIEluaXRpYWxpemUgb2NjdXJyZW5jZSB0YWJsZS5cbiAgdGhpcy5fbG9va2JlaGluZF9zaXplID0gMFxuICB0aGlzLl9uZWVkbGUgPSBuZWVkbGVcbiAgdGhpcy5fYnVmcG9zID0gMFxuXG4gIHRoaXMuX2xvb2tiZWhpbmQgPSBCdWZmZXIuYWxsb2MobmVlZGxlTGVuZ3RoKVxuXG4gIC8vIFBvcHVsYXRlIG9jY3VycmVuY2UgdGFibGUgd2l0aCBhbmFseXNpcyBvZiB0aGUgbmVlZGxlLFxuICAvLyBpZ25vcmluZyBsYXN0IGxldHRlci5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBuZWVkbGVMZW5ndGggLSAxOyArK2kpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby12YXJcbiAgICB0aGlzLl9vY2NbbmVlZGxlW2ldXSA9IG5lZWRsZUxlbmd0aCAtIDEgLSBpXG4gIH1cbn1cbmluaGVyaXRzKFNCTUgsIEV2ZW50RW1pdHRlcilcblxuU0JNSC5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSA9IDBcbiAgdGhpcy5tYXRjaGVzID0gMFxuICB0aGlzLl9idWZwb3MgPSAwXG59XG5cblNCTUgucHJvdG90eXBlLnB1c2ggPSBmdW5jdGlvbiAoY2h1bmssIHBvcykge1xuICBpZiAoIUJ1ZmZlci5pc0J1ZmZlcihjaHVuaykpIHtcbiAgICBjaHVuayA9IEJ1ZmZlci5mcm9tKGNodW5rLCAnYmluYXJ5JylcbiAgfVxuICBjb25zdCBjaGxlbiA9IGNodW5rLmxlbmd0aFxuICB0aGlzLl9idWZwb3MgPSBwb3MgfHwgMFxuICBsZXQgclxuICB3aGlsZSAociAhPT0gY2hsZW4gJiYgdGhpcy5tYXRjaGVzIDwgdGhpcy5tYXhNYXRjaGVzKSB7IHIgPSB0aGlzLl9zYm1oX2ZlZWQoY2h1bmspIH1cbiAgcmV0dXJuIHJcbn1cblxuU0JNSC5wcm90b3R5cGUuX3NibWhfZmVlZCA9IGZ1bmN0aW9uIChkYXRhKSB7XG4gIGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoXG4gIGNvbnN0IG5lZWRsZSA9IHRoaXMuX25lZWRsZVxuICBjb25zdCBuZWVkbGVMZW5ndGggPSBuZWVkbGUubGVuZ3RoXG4gIGNvbnN0IGxhc3ROZWVkbGVDaGFyID0gbmVlZGxlW25lZWRsZUxlbmd0aCAtIDFdXG5cbiAgLy8gUG9zaXRpdmU6IHBvaW50cyB0byBhIHBvc2l0aW9uIGluIGBkYXRhYFxuICAvLyAgICAgICAgICAgcG9zID09IDMgcG9pbnRzIHRvIGRhdGFbM11cbiAgLy8gTmVnYXRpdmU6IHBvaW50cyB0byBhIHBvc2l0aW9uIGluIHRoZSBsb29rYmVoaW5kIGJ1ZmZlclxuICAvLyAgICAgICAgICAgcG9zID09IC0yIHBvaW50cyB0byBsb29rYmVoaW5kW2xvb2tiZWhpbmRfc2l6ZSAtIDJdXG4gIGxldCBwb3MgPSAtdGhpcy5fbG9va2JlaGluZF9zaXplXG4gIGxldCBjaFxuXG4gIGlmIChwb3MgPCAwKSB7XG4gICAgLy8gTG9va2JlaGluZCBidWZmZXIgaXMgbm90IGVtcHR5LiBQZXJmb3JtIEJveWVyLU1vb3JlLUhvcnNwb29sXG4gICAgLy8gc2VhcmNoIHdpdGggY2hhcmFjdGVyIGxvb2t1cCBjb2RlIHRoYXQgY29uc2lkZXJzIGJvdGggdGhlXG4gICAgLy8gbG9va2JlaGluZCBidWZmZXIgYW5kIHRoZSBjdXJyZW50IHJvdW5kJ3MgaGF5c3RhY2sgZGF0YS5cbiAgICAvL1xuICAgIC8vIExvb3AgdW50aWxcbiAgICAvLyAgIHRoZXJlIGlzIGEgbWF0Y2guXG4gICAgLy8gb3IgdW50aWxcbiAgICAvLyAgIHdlJ3ZlIG1vdmVkIHBhc3QgdGhlIHBvc2l0aW9uIHRoYXQgcmVxdWlyZXMgdGhlXG4gICAgLy8gICBsb29rYmVoaW5kIGJ1ZmZlci4gSW4gdGhpcyBjYXNlIHdlIHN3aXRjaCB0byB0aGVcbiAgICAvLyAgIG9wdGltaXplZCBsb29wLlxuICAgIC8vIG9yIHVudGlsXG4gICAgLy8gICB0aGUgY2hhcmFjdGVyIHRvIGxvb2sgYXQgbGllcyBvdXRzaWRlIHRoZSBoYXlzdGFjay5cbiAgICB3aGlsZSAocG9zIDwgMCAmJiBwb3MgPD0gbGVuIC0gbmVlZGxlTGVuZ3RoKSB7XG4gICAgICBjaCA9IHRoaXMuX3NibWhfbG9va3VwX2NoYXIoZGF0YSwgcG9zICsgbmVlZGxlTGVuZ3RoIC0gMSlcblxuICAgICAgaWYgKFxuICAgICAgICBjaCA9PT0gbGFzdE5lZWRsZUNoYXIgJiZcbiAgICAgICAgdGhpcy5fc2JtaF9tZW1jbXAoZGF0YSwgcG9zLCBuZWVkbGVMZW5ndGggLSAxKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSA9IDBcbiAgICAgICAgKyt0aGlzLm1hdGNoZXNcbiAgICAgICAgdGhpcy5lbWl0KCdpbmZvJywgdHJ1ZSlcblxuICAgICAgICByZXR1cm4gKHRoaXMuX2J1ZnBvcyA9IHBvcyArIG5lZWRsZUxlbmd0aClcbiAgICAgIH1cbiAgICAgIHBvcyArPSB0aGlzLl9vY2NbY2hdXG4gICAgfVxuXG4gICAgLy8gTm8gbWF0Y2guXG5cbiAgICBpZiAocG9zIDwgMCkge1xuICAgICAgLy8gVGhlcmUncyB0b28gZmV3IGRhdGEgZm9yIEJveWVyLU1vb3JlLUhvcnNwb29sIHRvIHJ1bixcbiAgICAgIC8vIHNvIGxldCdzIHVzZSBhIGRpZmZlcmVudCBhbGdvcml0aG0gdG8gc2tpcCBhcyBtdWNoIGFzXG4gICAgICAvLyB3ZSBjYW4uXG4gICAgICAvLyBGb3J3YXJkIHBvcyB1bnRpbFxuICAgICAgLy8gICB0aGUgdHJhaWxpbmcgcGFydCBvZiBsb29rYmVoaW5kICsgZGF0YVxuICAgICAgLy8gICBsb29rcyBsaWtlIHRoZSBiZWdpbm5pbmcgb2YgdGhlIG5lZWRsZVxuICAgICAgLy8gb3IgdW50aWxcbiAgICAgIC8vICAgcG9zID09IDBcbiAgICAgIHdoaWxlIChwb3MgPCAwICYmICF0aGlzLl9zYm1oX21lbWNtcChkYXRhLCBwb3MsIGxlbiAtIHBvcykpIHsgKytwb3MgfVxuICAgIH1cblxuICAgIGlmIChwb3MgPj0gMCkge1xuICAgICAgLy8gRGlzY2FyZCBsb29rYmVoaW5kIGJ1ZmZlci5cbiAgICAgIHRoaXMuZW1pdCgnaW5mbycsIGZhbHNlLCB0aGlzLl9sb29rYmVoaW5kLCAwLCB0aGlzLl9sb29rYmVoaW5kX3NpemUpXG4gICAgICB0aGlzLl9sb29rYmVoaW5kX3NpemUgPSAwXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEN1dCBvZmYgcGFydCBvZiB0aGUgbG9va2JlaGluZCBidWZmZXIgdGhhdCBoYXNcbiAgICAgIC8vIGJlZW4gcHJvY2Vzc2VkIGFuZCBhcHBlbmQgdGhlIGVudGlyZSBoYXlzdGFja1xuICAgICAgLy8gaW50byBpdC5cbiAgICAgIGNvbnN0IGJ5dGVzVG9DdXRPZmYgPSB0aGlzLl9sb29rYmVoaW5kX3NpemUgKyBwb3NcbiAgICAgIGlmIChieXRlc1RvQ3V0T2ZmID4gMCkge1xuICAgICAgICAvLyBUaGUgY3V0IG9mZiBkYXRhIGlzIGd1YXJhbnRlZWQgbm90IHRvIGNvbnRhaW4gdGhlIG5lZWRsZS5cbiAgICAgICAgdGhpcy5lbWl0KCdpbmZvJywgZmFsc2UsIHRoaXMuX2xvb2tiZWhpbmQsIDAsIGJ5dGVzVG9DdXRPZmYpXG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2xvb2tiZWhpbmQuY29weSh0aGlzLl9sb29rYmVoaW5kLCAwLCBieXRlc1RvQ3V0T2ZmLFxuICAgICAgICB0aGlzLl9sb29rYmVoaW5kX3NpemUgLSBieXRlc1RvQ3V0T2ZmKVxuICAgICAgdGhpcy5fbG9va2JlaGluZF9zaXplIC09IGJ5dGVzVG9DdXRPZmZcblxuICAgICAgZGF0YS5jb3B5KHRoaXMuX2xvb2tiZWhpbmQsIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSlcbiAgICAgIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSArPSBsZW5cblxuICAgICAgdGhpcy5fYnVmcG9zID0gbGVuXG4gICAgICByZXR1cm4gbGVuXG4gICAgfVxuICB9XG5cbiAgcG9zICs9IChwb3MgPj0gMCkgKiB0aGlzLl9idWZwb3NcblxuICAvLyBMb29rYmVoaW5kIGJ1ZmZlciBpcyBub3cgZW1wdHkuIFdlIG9ubHkgbmVlZCB0byBjaGVjayBpZiB0aGVcbiAgLy8gbmVlZGxlIGlzIGluIHRoZSBoYXlzdGFjay5cbiAgaWYgKGRhdGEuaW5kZXhPZihuZWVkbGUsIHBvcykgIT09IC0xKSB7XG4gICAgcG9zID0gZGF0YS5pbmRleE9mKG5lZWRsZSwgcG9zKVxuICAgICsrdGhpcy5tYXRjaGVzXG4gICAgaWYgKHBvcyA+IDApIHsgdGhpcy5lbWl0KCdpbmZvJywgdHJ1ZSwgZGF0YSwgdGhpcy5fYnVmcG9zLCBwb3MpIH0gZWxzZSB7IHRoaXMuZW1pdCgnaW5mbycsIHRydWUpIH1cblxuICAgIHJldHVybiAodGhpcy5fYnVmcG9zID0gcG9zICsgbmVlZGxlTGVuZ3RoKVxuICB9IGVsc2Uge1xuICAgIHBvcyA9IGxlbiAtIG5lZWRsZUxlbmd0aFxuICB9XG5cbiAgLy8gVGhlcmUgd2FzIG5vIG1hdGNoLiBJZiB0aGVyZSdzIHRyYWlsaW5nIGhheXN0YWNrIGRhdGEgdGhhdCB3ZSBjYW5ub3RcbiAgLy8gbWF0Y2ggeWV0IHVzaW5nIHRoZSBCb3llci1Nb29yZS1Ib3JzcG9vbCBhbGdvcml0aG0gKGJlY2F1c2UgdGhlIHRyYWlsaW5nXG4gIC8vIGRhdGEgaXMgbGVzcyB0aGFuIHRoZSBuZWVkbGUgc2l6ZSkgdGhlbiBtYXRjaCB1c2luZyBhIG1vZGlmaWVkXG4gIC8vIGFsZ29yaXRobSB0aGF0IHN0YXJ0cyBtYXRjaGluZyBmcm9tIHRoZSBiZWdpbm5pbmcgaW5zdGVhZCBvZiB0aGUgZW5kLlxuICAvLyBXaGF0ZXZlciB0cmFpbGluZyBkYXRhIGlzIGxlZnQgYWZ0ZXIgcnVubmluZyB0aGlzIGFsZ29yaXRobSBpcyBhZGRlZCB0b1xuICAvLyB0aGUgbG9va2JlaGluZCBidWZmZXIuXG4gIHdoaWxlIChcbiAgICBwb3MgPCBsZW4gJiZcbiAgICAoXG4gICAgICBkYXRhW3Bvc10gIT09IG5lZWRsZVswXSB8fFxuICAgICAgKFxuICAgICAgICAoQnVmZmVyLmNvbXBhcmUoXG4gICAgICAgICAgZGF0YS5zdWJhcnJheShwb3MsIHBvcyArIGxlbiAtIHBvcyksXG4gICAgICAgICAgbmVlZGxlLnN1YmFycmF5KDAsIGxlbiAtIHBvcylcbiAgICAgICAgKSAhPT0gMClcbiAgICAgIClcbiAgICApXG4gICkge1xuICAgICsrcG9zXG4gIH1cbiAgaWYgKHBvcyA8IGxlbikge1xuICAgIGRhdGEuY29weSh0aGlzLl9sb29rYmVoaW5kLCAwLCBwb3MsIHBvcyArIChsZW4gLSBwb3MpKVxuICAgIHRoaXMuX2xvb2tiZWhpbmRfc2l6ZSA9IGxlbiAtIHBvc1xuICB9XG5cbiAgLy8gRXZlcnl0aGluZyB1bnRpbCBwb3MgaXMgZ3VhcmFudGVlZCBub3QgdG8gY29udGFpbiBuZWVkbGUgZGF0YS5cbiAgaWYgKHBvcyA+IDApIHsgdGhpcy5lbWl0KCdpbmZvJywgZmFsc2UsIGRhdGEsIHRoaXMuX2J1ZnBvcywgcG9zIDwgbGVuID8gcG9zIDogbGVuKSB9XG5cbiAgdGhpcy5fYnVmcG9zID0gbGVuXG4gIHJldHVybiBsZW5cbn1cblxuU0JNSC5wcm90b3R5cGUuX3NibWhfbG9va3VwX2NoYXIgPSBmdW5jdGlvbiAoZGF0YSwgcG9zKSB7XG4gIHJldHVybiAocG9zIDwgMClcbiAgICA/IHRoaXMuX2xvb2tiZWhpbmRbdGhpcy5fbG9va2JlaGluZF9zaXplICsgcG9zXVxuICAgIDogZGF0YVtwb3NdXG59XG5cblNCTUgucHJvdG90eXBlLl9zYm1oX21lbWNtcCA9IGZ1bmN0aW9uIChkYXRhLCBwb3MsIGxlbikge1xuICBmb3IgKHZhciBpID0gMDsgaSA8IGxlbjsgKytpKSB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdmFyXG4gICAgaWYgKHRoaXMuX3NibWhfbG9va3VwX2NoYXIoZGF0YSwgcG9zICsgaSkgIT09IHRoaXMuX25lZWRsZVtpXSkgeyByZXR1cm4gZmFsc2UgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbm1vZHVsZS5leHBvcnRzID0gU0JNSFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBpbmhlcml0cyA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpLmluaGVyaXRzXG5jb25zdCBSZWFkYWJsZVN0cmVhbSA9IHJlcXVpcmUoJ25vZGU6c3RyZWFtJykuUmVhZGFibGVcblxuZnVuY3Rpb24gUGFydFN0cmVhbSAob3B0cykge1xuICBSZWFkYWJsZVN0cmVhbS5jYWxsKHRoaXMsIG9wdHMpXG59XG5pbmhlcml0cyhQYXJ0U3RyZWFtLCBSZWFkYWJsZVN0cmVhbSlcblxuUGFydFN0cmVhbS5wcm90b3R5cGUuX3JlYWQgPSBmdW5jdGlvbiAobikge31cblxubW9kdWxlLmV4cG9ydHMgPSBQYXJ0U3RyZWFtXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gZ2V0TGltaXQgKGxpbWl0cywgbmFtZSwgZGVmYXVsdExpbWl0KSB7XG4gIGlmIChcbiAgICAhbGltaXRzIHx8XG4gICAgbGltaXRzW25hbWVdID09PSB1bmRlZmluZWQgfHxcbiAgICBsaW1pdHNbbmFtZV0gPT09IG51bGxcbiAgKSB7IHJldHVybiBkZWZhdWx0TGltaXQgfVxuXG4gIGlmIChcbiAgICB0eXBlb2YgbGltaXRzW25hbWVdICE9PSAnbnVtYmVyJyB8fFxuICAgIGlzTmFOKGxpbWl0c1tuYW1lXSlcbiAgKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoJ0xpbWl0ICcgKyBuYW1lICsgJyBpcyBub3QgYSB2YWxpZCBudW1iZXInKSB9XG5cbiAgcmV0dXJuIGxpbWl0c1tuYW1lXVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBFdmVudEVtaXR0ZXIgPSByZXF1aXJlKCdub2RlOmV2ZW50cycpLkV2ZW50RW1pdHRlclxuY29uc3QgaW5oZXJpdHMgPSByZXF1aXJlKCdub2RlOnV0aWwnKS5pbmhlcml0c1xuY29uc3QgZ2V0TGltaXQgPSByZXF1aXJlKCcuLi8uLi8uLi9saWIvdXRpbHMvZ2V0TGltaXQnKVxuXG5jb25zdCBTdHJlYW1TZWFyY2ggPSByZXF1aXJlKCcuLi8uLi9zdHJlYW1zZWFyY2gvc2JtaCcpXG5cbmNvbnN0IEJfRENSTEYgPSBCdWZmZXIuZnJvbSgnXFxyXFxuXFxyXFxuJylcbmNvbnN0IFJFX0NSTEYgPSAvXFxyXFxuL2dcbmNvbnN0IFJFX0hEUiA9IC9eKFteOl0rKTpbIFxcdF0/KFtcXHgwMC1cXHhGRl0rKT8kLyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLWNvbnRyb2wtcmVnZXhcblxuZnVuY3Rpb24gSGVhZGVyUGFyc2VyIChjZmcpIHtcbiAgRXZlbnRFbWl0dGVyLmNhbGwodGhpcylcblxuICBjZmcgPSBjZmcgfHwge31cbiAgY29uc3Qgc2VsZiA9IHRoaXNcbiAgdGhpcy5ucmVhZCA9IDBcbiAgdGhpcy5tYXhlZCA9IGZhbHNlXG4gIHRoaXMubnBhaXJzID0gMFxuICB0aGlzLm1heEhlYWRlclBhaXJzID0gZ2V0TGltaXQoY2ZnLCAnbWF4SGVhZGVyUGFpcnMnLCAyMDAwKVxuICB0aGlzLm1heEhlYWRlclNpemUgPSBnZXRMaW1pdChjZmcsICdtYXhIZWFkZXJTaXplJywgODAgKiAxMDI0KVxuICB0aGlzLmJ1ZmZlciA9ICcnXG4gIHRoaXMuaGVhZGVyID0ge31cbiAgdGhpcy5maW5pc2hlZCA9IGZhbHNlXG4gIHRoaXMuc3MgPSBuZXcgU3RyZWFtU2VhcmNoKEJfRENSTEYpXG4gIHRoaXMuc3Mub24oJ2luZm8nLCBmdW5jdGlvbiAoaXNNYXRjaCwgZGF0YSwgc3RhcnQsIGVuZCkge1xuICAgIGlmIChkYXRhICYmICFzZWxmLm1heGVkKSB7XG4gICAgICBpZiAoc2VsZi5ucmVhZCArIGVuZCAtIHN0YXJ0ID49IHNlbGYubWF4SGVhZGVyU2l6ZSkge1xuICAgICAgICBlbmQgPSBzZWxmLm1heEhlYWRlclNpemUgLSBzZWxmLm5yZWFkICsgc3RhcnRcbiAgICAgICAgc2VsZi5ucmVhZCA9IHNlbGYubWF4SGVhZGVyU2l6ZVxuICAgICAgICBzZWxmLm1heGVkID0gdHJ1ZVxuICAgICAgfSBlbHNlIHsgc2VsZi5ucmVhZCArPSAoZW5kIC0gc3RhcnQpIH1cblxuICAgICAgc2VsZi5idWZmZXIgKz0gZGF0YS50b1N0cmluZygnYmluYXJ5Jywgc3RhcnQsIGVuZClcbiAgICB9XG4gICAgaWYgKGlzTWF0Y2gpIHsgc2VsZi5fZmluaXNoKCkgfVxuICB9KVxufVxuaW5oZXJpdHMoSGVhZGVyUGFyc2VyLCBFdmVudEVtaXR0ZXIpXG5cbkhlYWRlclBhcnNlci5wcm90b3R5cGUucHVzaCA9IGZ1bmN0aW9uIChkYXRhKSB7XG4gIGNvbnN0IHIgPSB0aGlzLnNzLnB1c2goZGF0YSlcbiAgaWYgKHRoaXMuZmluaXNoZWQpIHsgcmV0dXJuIHIgfVxufVxuXG5IZWFkZXJQYXJzZXIucHJvdG90eXBlLnJlc2V0ID0gZnVuY3Rpb24gKCkge1xuICB0aGlzLmZpbmlzaGVkID0gZmFsc2VcbiAgdGhpcy5idWZmZXIgPSAnJ1xuICB0aGlzLmhlYWRlciA9IHt9XG4gIHRoaXMuc3MucmVzZXQoKVxufVxuXG5IZWFkZXJQYXJzZXIucHJvdG90eXBlLl9maW5pc2ggPSBmdW5jdGlvbiAoKSB7XG4gIGlmICh0aGlzLmJ1ZmZlcikgeyB0aGlzLl9wYXJzZUhlYWRlcigpIH1cbiAgdGhpcy5zcy5tYXRjaGVzID0gdGhpcy5zcy5tYXhNYXRjaGVzXG4gIGNvbnN0IGhlYWRlciA9IHRoaXMuaGVhZGVyXG4gIHRoaXMuaGVhZGVyID0ge31cbiAgdGhpcy5idWZmZXIgPSAnJ1xuICB0aGlzLmZpbmlzaGVkID0gdHJ1ZVxuICB0aGlzLm5yZWFkID0gdGhpcy5ucGFpcnMgPSAwXG4gIHRoaXMubWF4ZWQgPSBmYWxzZVxuICB0aGlzLmVtaXQoJ2hlYWRlcicsIGhlYWRlcilcbn1cblxuSGVhZGVyUGFyc2VyLnByb3RvdHlwZS5fcGFyc2VIZWFkZXIgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICh0aGlzLm5wYWlycyA9PT0gdGhpcy5tYXhIZWFkZXJQYWlycykgeyByZXR1cm4gfVxuXG4gIGNvbnN0IGxpbmVzID0gdGhpcy5idWZmZXIuc3BsaXQoUkVfQ1JMRilcbiAgY29uc3QgbGVuID0gbGluZXMubGVuZ3RoXG4gIGxldCBtLCBoXG5cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBsZW47ICsraSkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXZhclxuICAgIGlmIChsaW5lc1tpXS5sZW5ndGggPT09IDApIHsgY29udGludWUgfVxuICAgIGlmIChsaW5lc1tpXVswXSA9PT0gJ1xcdCcgfHwgbGluZXNbaV1bMF0gPT09ICcgJykge1xuICAgICAgLy8gZm9sZGVkIGhlYWRlciBjb250ZW50XG4gICAgICAvLyBSRkMyODIyIHNheXMgdG8ganVzdCByZW1vdmUgdGhlIENSTEYgYW5kIG5vdCB0aGUgd2hpdGVzcGFjZSBmb2xsb3dpbmdcbiAgICAgIC8vIGl0LCBzbyB3ZSBmb2xsb3cgdGhlIFJGQyBhbmQgaW5jbHVkZSB0aGUgbGVhZGluZyB3aGl0ZXNwYWNlIC4uLlxuICAgICAgaWYgKGgpIHtcbiAgICAgICAgdGhpcy5oZWFkZXJbaF1bdGhpcy5oZWFkZXJbaF0ubGVuZ3RoIC0gMV0gKz0gbGluZXNbaV1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBwb3NDb2xvbiA9IGxpbmVzW2ldLmluZGV4T2YoJzonKVxuICAgIGlmIChcbiAgICAgIHBvc0NvbG9uID09PSAtMSB8fFxuICAgICAgcG9zQ29sb24gPT09IDBcbiAgICApIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBtID0gUkVfSERSLmV4ZWMobGluZXNbaV0pXG4gICAgaCA9IG1bMV0udG9Mb3dlckNhc2UoKVxuICAgIHRoaXMuaGVhZGVyW2hdID0gdGhpcy5oZWFkZXJbaF0gfHwgW11cbiAgICB0aGlzLmhlYWRlcltoXS5wdXNoKChtWzJdIHx8ICcnKSlcbiAgICBpZiAoKyt0aGlzLm5wYWlycyA9PT0gdGhpcy5tYXhIZWFkZXJQYWlycykgeyBicmVhayB9XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBIZWFkZXJQYXJzZXJcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgV3JpdGFibGVTdHJlYW0gPSByZXF1aXJlKCdub2RlOnN0cmVhbScpLldyaXRhYmxlXG5jb25zdCBpbmhlcml0cyA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpLmluaGVyaXRzXG5cbmNvbnN0IFN0cmVhbVNlYXJjaCA9IHJlcXVpcmUoJy4uLy4uL3N0cmVhbXNlYXJjaC9zYm1oJylcblxuY29uc3QgUGFydFN0cmVhbSA9IHJlcXVpcmUoJy4vUGFydFN0cmVhbScpXG5jb25zdCBIZWFkZXJQYXJzZXIgPSByZXF1aXJlKCcuL0hlYWRlclBhcnNlcicpXG5cbmNvbnN0IERBU0ggPSA0NVxuY29uc3QgQl9PTkVEQVNIID0gQnVmZmVyLmZyb20oJy0nKVxuY29uc3QgQl9DUkxGID0gQnVmZmVyLmZyb20oJ1xcclxcbicpXG5jb25zdCBFTVBUWV9GTiA9IGZ1bmN0aW9uICgpIHt9XG5cbmZ1bmN0aW9uIERpY2VyIChjZmcpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIERpY2VyKSkgeyByZXR1cm4gbmV3IERpY2VyKGNmZykgfVxuICBXcml0YWJsZVN0cmVhbS5jYWxsKHRoaXMsIGNmZylcblxuICBpZiAoIWNmZyB8fCAoIWNmZy5oZWFkZXJGaXJzdCAmJiB0eXBlb2YgY2ZnLmJvdW5kYXJ5ICE9PSAnc3RyaW5nJykpIHsgdGhyb3cgbmV3IFR5cGVFcnJvcignQm91bmRhcnkgcmVxdWlyZWQnKSB9XG5cbiAgaWYgKHR5cGVvZiBjZmcuYm91bmRhcnkgPT09ICdzdHJpbmcnKSB7IHRoaXMuc2V0Qm91bmRhcnkoY2ZnLmJvdW5kYXJ5KSB9IGVsc2UgeyB0aGlzLl9icGFyc2VyID0gdW5kZWZpbmVkIH1cblxuICB0aGlzLl9oZWFkZXJGaXJzdCA9IGNmZy5oZWFkZXJGaXJzdFxuXG4gIHRoaXMuX2Rhc2hlcyA9IDBcbiAgdGhpcy5fcGFydHMgPSAwXG4gIHRoaXMuX2ZpbmlzaGVkID0gZmFsc2VcbiAgdGhpcy5fcmVhbEZpbmlzaCA9IGZhbHNlXG4gIHRoaXMuX2lzUHJlYW1ibGUgPSB0cnVlXG4gIHRoaXMuX2p1c3RNYXRjaGVkID0gZmFsc2VcbiAgdGhpcy5fZmlyc3RXcml0ZSA9IHRydWVcbiAgdGhpcy5faW5IZWFkZXIgPSB0cnVlXG4gIHRoaXMuX3BhcnQgPSB1bmRlZmluZWRcbiAgdGhpcy5fY2IgPSB1bmRlZmluZWRcbiAgdGhpcy5faWdub3JlRGF0YSA9IGZhbHNlXG4gIHRoaXMuX3BhcnRPcHRzID0geyBoaWdoV2F0ZXJNYXJrOiBjZmcucGFydEh3bSB9XG4gIHRoaXMuX3BhdXNlID0gZmFsc2VcblxuICBjb25zdCBzZWxmID0gdGhpc1xuICB0aGlzLl9ocGFyc2VyID0gbmV3IEhlYWRlclBhcnNlcihjZmcpXG4gIHRoaXMuX2hwYXJzZXIub24oJ2hlYWRlcicsIGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgICBzZWxmLl9pbkhlYWRlciA9IGZhbHNlXG4gICAgc2VsZi5fcGFydC5lbWl0KCdoZWFkZXInLCBoZWFkZXIpXG4gIH0pXG59XG5pbmhlcml0cyhEaWNlciwgV3JpdGFibGVTdHJlYW0pXG5cbkRpY2VyLnByb3RvdHlwZS5lbWl0ID0gZnVuY3Rpb24gKGV2KSB7XG4gIGlmIChldiA9PT0gJ2ZpbmlzaCcgJiYgIXRoaXMuX3JlYWxGaW5pc2gpIHtcbiAgICBpZiAoIXRoaXMuX2ZpbmlzaGVkKSB7XG4gICAgICBjb25zdCBzZWxmID0gdGhpc1xuICAgICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIHNlbGYuZW1pdCgnZXJyb3InLCBuZXcgRXJyb3IoJ1VuZXhwZWN0ZWQgZW5kIG9mIG11bHRpcGFydCBkYXRhJykpXG4gICAgICAgIGlmIChzZWxmLl9wYXJ0ICYmICFzZWxmLl9pZ25vcmVEYXRhKSB7XG4gICAgICAgICAgY29uc3QgdHlwZSA9IChzZWxmLl9pc1ByZWFtYmxlID8gJ1ByZWFtYmxlJyA6ICdQYXJ0JylcbiAgICAgICAgICBzZWxmLl9wYXJ0LmVtaXQoJ2Vycm9yJywgbmV3IEVycm9yKHR5cGUgKyAnIHRlcm1pbmF0ZWQgZWFybHkgZHVlIHRvIHVuZXhwZWN0ZWQgZW5kIG9mIG11bHRpcGFydCBkYXRhJykpXG4gICAgICAgICAgc2VsZi5fcGFydC5wdXNoKG51bGwpXG4gICAgICAgICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gdHJ1ZVxuICAgICAgICAgICAgc2VsZi5lbWl0KCdmaW5pc2gnKVxuICAgICAgICAgICAgc2VsZi5fcmVhbEZpbmlzaCA9IGZhbHNlXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gdHJ1ZVxuICAgICAgICBzZWxmLmVtaXQoJ2ZpbmlzaCcpXG4gICAgICAgIHNlbGYuX3JlYWxGaW5pc2ggPSBmYWxzZVxuICAgICAgfSlcbiAgICB9XG4gIH0gZWxzZSB7IFdyaXRhYmxlU3RyZWFtLnByb3RvdHlwZS5lbWl0LmFwcGx5KHRoaXMsIGFyZ3VtZW50cykgfVxufVxuXG5EaWNlci5wcm90b3R5cGUuX3dyaXRlID0gZnVuY3Rpb24gKGRhdGEsIGVuY29kaW5nLCBjYikge1xuICAvLyBpZ25vcmUgdW5leHBlY3RlZCBkYXRhIChlLmcuIGV4dHJhIHRyYWlsZXIgZGF0YSBhZnRlciBmaW5pc2hlZClcbiAgaWYgKCF0aGlzLl9ocGFyc2VyICYmICF0aGlzLl9icGFyc2VyKSB7IHJldHVybiBjYigpIH1cblxuICBpZiAodGhpcy5faGVhZGVyRmlyc3QgJiYgdGhpcy5faXNQcmVhbWJsZSkge1xuICAgIGlmICghdGhpcy5fcGFydCkge1xuICAgICAgdGhpcy5fcGFydCA9IG5ldyBQYXJ0U3RyZWFtKHRoaXMuX3BhcnRPcHRzKVxuICAgICAgaWYgKHRoaXMuX2V2ZW50cy5wcmVhbWJsZSkgeyB0aGlzLmVtaXQoJ3ByZWFtYmxlJywgdGhpcy5fcGFydCkgfSBlbHNlIHsgdGhpcy5faWdub3JlKCkgfVxuICAgIH1cbiAgICBjb25zdCByID0gdGhpcy5faHBhcnNlci5wdXNoKGRhdGEpXG4gICAgaWYgKCF0aGlzLl9pbkhlYWRlciAmJiByICE9PSB1bmRlZmluZWQgJiYgciA8IGRhdGEubGVuZ3RoKSB7IGRhdGEgPSBkYXRhLnNsaWNlKHIpIH0gZWxzZSB7IHJldHVybiBjYigpIH1cbiAgfVxuXG4gIC8vIGFsbG93cyBmb3IgXCJlYXNpZXJcIiB0ZXN0aW5nXG4gIGlmICh0aGlzLl9maXJzdFdyaXRlKSB7XG4gICAgdGhpcy5fYnBhcnNlci5wdXNoKEJfQ1JMRilcbiAgICB0aGlzLl9maXJzdFdyaXRlID0gZmFsc2VcbiAgfVxuXG4gIHRoaXMuX2JwYXJzZXIucHVzaChkYXRhKVxuXG4gIGlmICh0aGlzLl9wYXVzZSkgeyB0aGlzLl9jYiA9IGNiIH0gZWxzZSB7IGNiKCkgfVxufVxuXG5EaWNlci5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuX3BhcnQgPSB1bmRlZmluZWRcbiAgdGhpcy5fYnBhcnNlciA9IHVuZGVmaW5lZFxuICB0aGlzLl9ocGFyc2VyID0gdW5kZWZpbmVkXG59XG5cbkRpY2VyLnByb3RvdHlwZS5zZXRCb3VuZGFyeSA9IGZ1bmN0aW9uIChib3VuZGFyeSkge1xuICBjb25zdCBzZWxmID0gdGhpc1xuICB0aGlzLl9icGFyc2VyID0gbmV3IFN0cmVhbVNlYXJjaCgnXFxyXFxuLS0nICsgYm91bmRhcnkpXG4gIHRoaXMuX2JwYXJzZXIub24oJ2luZm8nLCBmdW5jdGlvbiAoaXNNYXRjaCwgZGF0YSwgc3RhcnQsIGVuZCkge1xuICAgIHNlbGYuX29uaW5mbyhpc01hdGNoLCBkYXRhLCBzdGFydCwgZW5kKVxuICB9KVxufVxuXG5EaWNlci5wcm90b3R5cGUuX2lnbm9yZSA9IGZ1bmN0aW9uICgpIHtcbiAgaWYgKHRoaXMuX3BhcnQgJiYgIXRoaXMuX2lnbm9yZURhdGEpIHtcbiAgICB0aGlzLl9pZ25vcmVEYXRhID0gdHJ1ZVxuICAgIHRoaXMuX3BhcnQub24oJ2Vycm9yJywgRU1QVFlfRk4pXG4gICAgLy8gd2UgbXVzdCBwZXJmb3JtIHNvbWUga2luZCBvZiByZWFkIG9uIHRoZSBzdHJlYW0gZXZlbiB0aG91Z2ggd2UgYXJlXG4gICAgLy8gaWdub3JpbmcgdGhlIGRhdGEsIG90aGVyd2lzZSBub2RlJ3MgUmVhZGFibGUgc3RyZWFtIHdpbGwgbm90IGVtaXQgJ2VuZCdcbiAgICAvLyBhZnRlciBwdXNoaW5nIG51bGwgdG8gdGhlIHN0cmVhbVxuICAgIHRoaXMuX3BhcnQucmVzdW1lKClcbiAgfVxufVxuXG5EaWNlci5wcm90b3R5cGUuX29uaW5mbyA9IGZ1bmN0aW9uIChpc01hdGNoLCBkYXRhLCBzdGFydCwgZW5kKSB7XG4gIGxldCBidWY7IGNvbnN0IHNlbGYgPSB0aGlzOyBsZXQgaSA9IDA7IGxldCByOyBsZXQgc2hvdWxkV3JpdGVNb3JlID0gdHJ1ZVxuXG4gIGlmICghdGhpcy5fcGFydCAmJiB0aGlzLl9qdXN0TWF0Y2hlZCAmJiBkYXRhKSB7XG4gICAgd2hpbGUgKHRoaXMuX2Rhc2hlcyA8IDIgJiYgKHN0YXJ0ICsgaSkgPCBlbmQpIHtcbiAgICAgIGlmIChkYXRhW3N0YXJ0ICsgaV0gPT09IERBU0gpIHtcbiAgICAgICAgKytpXG4gICAgICAgICsrdGhpcy5fZGFzaGVzXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy5fZGFzaGVzKSB7IGJ1ZiA9IEJfT05FREFTSCB9XG4gICAgICAgIHRoaXMuX2Rhc2hlcyA9IDBcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rhc2hlcyA9PT0gMikge1xuICAgICAgaWYgKChzdGFydCArIGkpIDwgZW5kICYmIHRoaXMuX2V2ZW50cy50cmFpbGVyKSB7IHRoaXMuZW1pdCgndHJhaWxlcicsIGRhdGEuc2xpY2Uoc3RhcnQgKyBpLCBlbmQpKSB9XG4gICAgICB0aGlzLnJlc2V0KClcbiAgICAgIHRoaXMuX2ZpbmlzaGVkID0gdHJ1ZVxuICAgICAgLy8gbm8gbW9yZSBwYXJ0cyB3aWxsIGJlIGFkZGVkXG4gICAgICBpZiAoc2VsZi5fcGFydHMgPT09IDApIHtcbiAgICAgICAgc2VsZi5fcmVhbEZpbmlzaCA9IHRydWVcbiAgICAgICAgc2VsZi5lbWl0KCdmaW5pc2gnKVxuICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gZmFsc2VcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRoaXMuX2Rhc2hlcykgeyByZXR1cm4gfVxuICB9XG4gIGlmICh0aGlzLl9qdXN0TWF0Y2hlZCkgeyB0aGlzLl9qdXN0TWF0Y2hlZCA9IGZhbHNlIH1cbiAgaWYgKCF0aGlzLl9wYXJ0KSB7XG4gICAgdGhpcy5fcGFydCA9IG5ldyBQYXJ0U3RyZWFtKHRoaXMuX3BhcnRPcHRzKVxuICAgIHRoaXMuX3BhcnQuX3JlYWQgPSBmdW5jdGlvbiAobikge1xuICAgICAgc2VsZi5fdW5wYXVzZSgpXG4gICAgfVxuICAgIGlmICh0aGlzLl9pc1ByZWFtYmxlICYmIHRoaXMuX2V2ZW50cy5wcmVhbWJsZSkgeyB0aGlzLmVtaXQoJ3ByZWFtYmxlJywgdGhpcy5fcGFydCkgfSBlbHNlIGlmICh0aGlzLl9pc1ByZWFtYmxlICE9PSB0cnVlICYmIHRoaXMuX2V2ZW50cy5wYXJ0KSB7IHRoaXMuZW1pdCgncGFydCcsIHRoaXMuX3BhcnQpIH0gZWxzZSB7IHRoaXMuX2lnbm9yZSgpIH1cbiAgICBpZiAoIXRoaXMuX2lzUHJlYW1ibGUpIHsgdGhpcy5faW5IZWFkZXIgPSB0cnVlIH1cbiAgfVxuICBpZiAoZGF0YSAmJiBzdGFydCA8IGVuZCAmJiAhdGhpcy5faWdub3JlRGF0YSkge1xuICAgIGlmICh0aGlzLl9pc1ByZWFtYmxlIHx8ICF0aGlzLl9pbkhlYWRlcikge1xuICAgICAgaWYgKGJ1ZikgeyBzaG91bGRXcml0ZU1vcmUgPSB0aGlzLl9wYXJ0LnB1c2goYnVmKSB9XG4gICAgICBzaG91bGRXcml0ZU1vcmUgPSB0aGlzLl9wYXJ0LnB1c2goZGF0YS5zbGljZShzdGFydCwgZW5kKSlcbiAgICAgIGlmICghc2hvdWxkV3JpdGVNb3JlKSB7IHRoaXMuX3BhdXNlID0gdHJ1ZSB9XG4gICAgfSBlbHNlIGlmICghdGhpcy5faXNQcmVhbWJsZSAmJiB0aGlzLl9pbkhlYWRlcikge1xuICAgICAgaWYgKGJ1ZikgeyB0aGlzLl9ocGFyc2VyLnB1c2goYnVmKSB9XG4gICAgICByID0gdGhpcy5faHBhcnNlci5wdXNoKGRhdGEuc2xpY2Uoc3RhcnQsIGVuZCkpXG4gICAgICBpZiAoIXRoaXMuX2luSGVhZGVyICYmIHIgIT09IHVuZGVmaW5lZCAmJiByIDwgZW5kKSB7IHRoaXMuX29uaW5mbyhmYWxzZSwgZGF0YSwgc3RhcnQgKyByLCBlbmQpIH1cbiAgICB9XG4gIH1cbiAgaWYgKGlzTWF0Y2gpIHtcbiAgICB0aGlzLl9ocGFyc2VyLnJlc2V0KClcbiAgICBpZiAodGhpcy5faXNQcmVhbWJsZSkgeyB0aGlzLl9pc1ByZWFtYmxlID0gZmFsc2UgfSBlbHNlIHtcbiAgICAgIGlmIChzdGFydCAhPT0gZW5kKSB7XG4gICAgICAgICsrdGhpcy5fcGFydHNcbiAgICAgICAgdGhpcy5fcGFydC5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlmICgtLXNlbGYuX3BhcnRzID09PSAwKSB7XG4gICAgICAgICAgICBpZiAoc2VsZi5fZmluaXNoZWQpIHtcbiAgICAgICAgICAgICAgc2VsZi5fcmVhbEZpbmlzaCA9IHRydWVcbiAgICAgICAgICAgICAgc2VsZi5lbWl0KCdmaW5pc2gnKVxuICAgICAgICAgICAgICBzZWxmLl9yZWFsRmluaXNoID0gZmFsc2VcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHNlbGYuX3VucGF1c2UoKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fcGFydC5wdXNoKG51bGwpXG4gICAgdGhpcy5fcGFydCA9IHVuZGVmaW5lZFxuICAgIHRoaXMuX2lnbm9yZURhdGEgPSBmYWxzZVxuICAgIHRoaXMuX2p1c3RNYXRjaGVkID0gdHJ1ZVxuICAgIHRoaXMuX2Rhc2hlcyA9IDBcbiAgfVxufVxuXG5EaWNlci5wcm90b3R5cGUuX3VucGF1c2UgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICghdGhpcy5fcGF1c2UpIHsgcmV0dXJuIH1cblxuICB0aGlzLl9wYXVzZSA9IGZhbHNlXG4gIGlmICh0aGlzLl9jYikge1xuICAgIGNvbnN0IGNiID0gdGhpcy5fY2JcbiAgICB0aGlzLl9jYiA9IHVuZGVmaW5lZFxuICAgIGNiKClcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IERpY2VyXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8vIE5vZGUgaGFzIGFsd2F5cyB1dGYtOFxuY29uc3QgdXRmOERlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoJ3V0Zi04JylcbmNvbnN0IHRleHREZWNvZGVycyA9IG5ldyBNYXAoW1xuICBbJ3V0Zi04JywgdXRmOERlY29kZXJdLFxuICBbJ3V0ZjgnLCB1dGY4RGVjb2Rlcl1cbl0pXG5cbmZ1bmN0aW9uIGRlY29kZVRleHQgKHRleHQsIHRleHRFbmNvZGluZywgZGVzdEVuY29kaW5nKSB7XG4gIGlmICh0ZXh0KSB7XG4gICAgaWYgKHRleHREZWNvZGVycy5oYXMoZGVzdEVuY29kaW5nKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHRleHREZWNvZGVycy5nZXQoZGVzdEVuY29kaW5nKS5kZWNvZGUoQnVmZmVyLmZyb20odGV4dCwgdGV4dEVuY29kaW5nKSlcbiAgICAgIH0gY2F0Y2ggKGUpIHsgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0cnkge1xuICAgICAgICB0ZXh0RGVjb2RlcnMuc2V0KGRlc3RFbmNvZGluZywgbmV3IFRleHREZWNvZGVyKGRlc3RFbmNvZGluZykpXG4gICAgICAgIHJldHVybiB0ZXh0RGVjb2RlcnMuZ2V0KGRlc3RFbmNvZGluZykuZGVjb2RlKEJ1ZmZlci5mcm9tKHRleHQsIHRleHRFbmNvZGluZykpXG4gICAgICB9IGNhdGNoIChlKSB7IH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRleHRcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBkZWNvZGVUZXh0XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IGRlY29kZVRleHQgPSByZXF1aXJlKCcuL2RlY29kZVRleHQnKVxuXG5jb25zdCBSRV9FTkNPREVEID0gLyUoW2EtZkEtRjAtOV17Mn0pL2dcblxuZnVuY3Rpb24gZW5jb2RlZFJlcGxhY2VyIChtYXRjaCwgYnl0ZSkge1xuICByZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShwYXJzZUludChieXRlLCAxNikpXG59XG5cbmZ1bmN0aW9uIHBhcnNlUGFyYW1zIChzdHIpIHtcbiAgY29uc3QgcmVzID0gW11cbiAgbGV0IHN0YXRlID0gJ2tleSdcbiAgbGV0IGNoYXJzZXQgPSAnJ1xuICBsZXQgaW5xdW90ZSA9IGZhbHNlXG4gIGxldCBlc2NhcGluZyA9IGZhbHNlXG4gIGxldCBwID0gMFxuICBsZXQgdG1wID0gJydcblxuICBmb3IgKHZhciBpID0gMCwgbGVuID0gc3RyLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdmFyXG4gICAgY29uc3QgY2hhciA9IHN0cltpXVxuICAgIGlmIChjaGFyID09PSAnXFxcXCcgJiYgaW5xdW90ZSkge1xuICAgICAgaWYgKGVzY2FwaW5nKSB7IGVzY2FwaW5nID0gZmFsc2UgfSBlbHNlIHtcbiAgICAgICAgZXNjYXBpbmcgPSB0cnVlXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChjaGFyID09PSAnXCInKSB7XG4gICAgICBpZiAoIWVzY2FwaW5nKSB7XG4gICAgICAgIGlmIChpbnF1b3RlKSB7XG4gICAgICAgICAgaW5xdW90ZSA9IGZhbHNlXG4gICAgICAgICAgc3RhdGUgPSAna2V5J1xuICAgICAgICB9IGVsc2UgeyBpbnF1b3RlID0gdHJ1ZSB9XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgeyBlc2NhcGluZyA9IGZhbHNlIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGVzY2FwaW5nICYmIGlucXVvdGUpIHsgdG1wICs9ICdcXFxcJyB9XG4gICAgICBlc2NhcGluZyA9IGZhbHNlXG4gICAgICBpZiAoKHN0YXRlID09PSAnY2hhcnNldCcgfHwgc3RhdGUgPT09ICdsYW5nJykgJiYgY2hhciA9PT0gXCInXCIpIHtcbiAgICAgICAgaWYgKHN0YXRlID09PSAnY2hhcnNldCcpIHtcbiAgICAgICAgICBzdGF0ZSA9ICdsYW5nJ1xuICAgICAgICAgIGNoYXJzZXQgPSB0bXAuc3Vic3RyaW5nKDEpXG4gICAgICAgIH0gZWxzZSB7IHN0YXRlID0gJ3ZhbHVlJyB9XG4gICAgICAgIHRtcCA9ICcnXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKHN0YXRlID09PSAna2V5JyAmJlxuICAgICAgICAoY2hhciA9PT0gJyonIHx8IGNoYXIgPT09ICc9JykgJiZcbiAgICAgICAgcmVzLmxlbmd0aCkge1xuICAgICAgICBpZiAoY2hhciA9PT0gJyonKSB7IHN0YXRlID0gJ2NoYXJzZXQnIH0gZWxzZSB7IHN0YXRlID0gJ3ZhbHVlJyB9XG4gICAgICAgIHJlc1twXSA9IFt0bXAsIHVuZGVmaW5lZF1cbiAgICAgICAgdG1wID0gJydcbiAgICAgICAgY29udGludWVcbiAgICAgIH0gZWxzZSBpZiAoIWlucXVvdGUgJiYgY2hhciA9PT0gJzsnKSB7XG4gICAgICAgIHN0YXRlID0gJ2tleSdcbiAgICAgICAgaWYgKGNoYXJzZXQpIHtcbiAgICAgICAgICBpZiAodG1wLmxlbmd0aCkge1xuICAgICAgICAgICAgdG1wID0gZGVjb2RlVGV4dCh0bXAucmVwbGFjZShSRV9FTkNPREVELCBlbmNvZGVkUmVwbGFjZXIpLFxuICAgICAgICAgICAgICAnYmluYXJ5JyxcbiAgICAgICAgICAgICAgY2hhcnNldClcbiAgICAgICAgICB9XG4gICAgICAgICAgY2hhcnNldCA9ICcnXG4gICAgICAgIH0gZWxzZSBpZiAodG1wLmxlbmd0aCkge1xuICAgICAgICAgIHRtcCA9IGRlY29kZVRleHQodG1wLCAnYmluYXJ5JywgJ3V0ZjgnKVxuICAgICAgICB9XG4gICAgICAgIGlmIChyZXNbcF0gPT09IHVuZGVmaW5lZCkgeyByZXNbcF0gPSB0bXAgfSBlbHNlIHsgcmVzW3BdWzFdID0gdG1wIH1cbiAgICAgICAgdG1wID0gJydcbiAgICAgICAgKytwXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKCFpbnF1b3RlICYmIChjaGFyID09PSAnICcgfHwgY2hhciA9PT0gJ1xcdCcpKSB7IGNvbnRpbnVlIH1cbiAgICB9XG4gICAgdG1wICs9IGNoYXJcbiAgfVxuICBpZiAoY2hhcnNldCAmJiB0bXAubGVuZ3RoKSB7XG4gICAgdG1wID0gZGVjb2RlVGV4dCh0bXAucmVwbGFjZShSRV9FTkNPREVELCBlbmNvZGVkUmVwbGFjZXIpLFxuICAgICAgJ2JpbmFyeScsXG4gICAgICBjaGFyc2V0KVxuICB9IGVsc2UgaWYgKHRtcCkge1xuICAgIHRtcCA9IGRlY29kZVRleHQodG1wLCAnYmluYXJ5JywgJ3V0ZjgnKVxuICB9XG5cbiAgaWYgKHJlc1twXSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKHRtcCkgeyByZXNbcF0gPSB0bXAgfVxuICB9IGVsc2UgeyByZXNbcF1bMV0gPSB0bXAgfVxuXG4gIHJldHVybiByZXNcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBwYXJzZVBhcmFtc1xuIiwgIid1c2Ugc3RyaWN0J1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGJhc2VuYW1lIChwYXRoKSB7XG4gIGlmICh0eXBlb2YgcGF0aCAhPT0gJ3N0cmluZycpIHsgcmV0dXJuICcnIH1cbiAgZm9yICh2YXIgaSA9IHBhdGgubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby12YXJcbiAgICBzd2l0Y2ggKHBhdGguY2hhckNvZGVBdChpKSkge1xuICAgICAgY2FzZSAweDJGOiAvLyAnLydcbiAgICAgIGNhc2UgMHg1QzogLy8gJ1xcJ1xuICAgICAgICBwYXRoID0gcGF0aC5zbGljZShpICsgMSlcbiAgICAgICAgcmV0dXJuIChwYXRoID09PSAnLi4nIHx8IHBhdGggPT09ICcuJyA/ICcnIDogcGF0aClcbiAgICB9XG4gIH1cbiAgcmV0dXJuIChwYXRoID09PSAnLi4nIHx8IHBhdGggPT09ICcuJyA/ICcnIDogcGF0aClcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLy8gVE9ETzpcbi8vICAqIHN1cHBvcnQgMSBuZXN0ZWQgbXVsdGlwYXJ0IGxldmVsXG4vLyAgICAoc2VlIHNlY29uZCBtdWx0aXBhcnQgZXhhbXBsZSBoZXJlOlxuLy8gICAgIGh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0MDEvaW50ZXJhY3QvZm9ybXMuaHRtbCNkaWR4LW11bHRpcGFydGZvcm0tZGF0YSlcbi8vICAqIHN1cHBvcnQgbGltaXRzLmZpZWxkTmFtZVNpemVcbi8vICAgICAtLSB0aGlzIHdpbGwgcmVxdWlyZSBtb2RpZmljYXRpb25zIHRvIHV0aWxzLnBhcnNlUGFyYW1zXG5cbmNvbnN0IHsgUmVhZGFibGUgfSA9IHJlcXVpcmUoJ25vZGU6c3RyZWFtJylcbmNvbnN0IHsgaW5oZXJpdHMgfSA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpXG5cbmNvbnN0IERpY2VyID0gcmVxdWlyZSgnLi4vLi4vZGVwcy9kaWNlci9saWIvRGljZXInKVxuXG5jb25zdCBwYXJzZVBhcmFtcyA9IHJlcXVpcmUoJy4uL3V0aWxzL3BhcnNlUGFyYW1zJylcbmNvbnN0IGRlY29kZVRleHQgPSByZXF1aXJlKCcuLi91dGlscy9kZWNvZGVUZXh0JylcbmNvbnN0IGJhc2VuYW1lID0gcmVxdWlyZSgnLi4vdXRpbHMvYmFzZW5hbWUnKVxuY29uc3QgZ2V0TGltaXQgPSByZXF1aXJlKCcuLi91dGlscy9nZXRMaW1pdCcpXG5cbmNvbnN0IFJFX0JPVU5EQVJZID0gL15ib3VuZGFyeSQvaVxuY29uc3QgUkVfRklFTEQgPSAvXmZvcm0tZGF0YSQvaVxuY29uc3QgUkVfQ0hBUlNFVCA9IC9eY2hhcnNldCQvaVxuY29uc3QgUkVfRklMRU5BTUUgPSAvXmZpbGVuYW1lJC9pXG5jb25zdCBSRV9OQU1FID0gL15uYW1lJC9pXG5cbk11bHRpcGFydC5kZXRlY3QgPSAvXm11bHRpcGFydFxcL2Zvcm0tZGF0YS9pXG5mdW5jdGlvbiBNdWx0aXBhcnQgKGJveSwgY2ZnKSB7XG4gIGxldCBpXG4gIGxldCBsZW5cbiAgY29uc3Qgc2VsZiA9IHRoaXNcbiAgbGV0IGJvdW5kYXJ5XG4gIGNvbnN0IGxpbWl0cyA9IGNmZy5saW1pdHNcbiAgY29uc3QgaXNQYXJ0QUZpbGUgPSBjZmcuaXNQYXJ0QUZpbGUgfHwgKChmaWVsZE5hbWUsIGNvbnRlbnRUeXBlLCBmaWxlTmFtZSkgPT4gKGNvbnRlbnRUeXBlID09PSAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyB8fCBmaWxlTmFtZSAhPT0gdW5kZWZpbmVkKSlcbiAgY29uc3QgcGFyc2VkQ29uVHlwZSA9IGNmZy5wYXJzZWRDb25UeXBlIHx8IFtdXG4gIGNvbnN0IGRlZkNoYXJzZXQgPSBjZmcuZGVmQ2hhcnNldCB8fCAndXRmOCdcbiAgY29uc3QgcHJlc2VydmVQYXRoID0gY2ZnLnByZXNlcnZlUGF0aFxuICBjb25zdCBmaWxlT3B0cyA9IHsgaGlnaFdhdGVyTWFyazogY2ZnLmZpbGVId20gfVxuXG4gIGZvciAoaSA9IDAsIGxlbiA9IHBhcnNlZENvblR5cGUubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShwYXJzZWRDb25UeXBlW2ldKSAmJlxuICAgICAgUkVfQk9VTkRBUlkudGVzdChwYXJzZWRDb25UeXBlW2ldWzBdKSkge1xuICAgICAgYm91bmRhcnkgPSBwYXJzZWRDb25UeXBlW2ldWzFdXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNoZWNrRmluaXNoZWQgKCkge1xuICAgIGlmIChuZW5kcyA9PT0gMCAmJiBmaW5pc2hlZCAmJiAhYm95Ll9kb25lKSB7XG4gICAgICBmaW5pc2hlZCA9IGZhbHNlXG4gICAgICBzZWxmLmVuZCgpXG4gICAgfVxuICB9XG5cbiAgaWYgKHR5cGVvZiBib3VuZGFyeSAhPT0gJ3N0cmluZycpIHsgdGhyb3cgbmV3IEVycm9yKCdNdWx0aXBhcnQ6IEJvdW5kYXJ5IG5vdCBmb3VuZCcpIH1cblxuICBjb25zdCBmaWVsZFNpemVMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpZWxkU2l6ZScsIDEgKiAxMDI0ICogMTAyNClcbiAgY29uc3QgZmlsZVNpemVMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpbGVTaXplJywgSW5maW5pdHkpXG4gIGNvbnN0IGZpbGVzTGltaXQgPSBnZXRMaW1pdChsaW1pdHMsICdmaWxlcycsIEluZmluaXR5KVxuICBjb25zdCBmaWVsZHNMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpZWxkcycsIEluZmluaXR5KVxuICBjb25zdCBwYXJ0c0xpbWl0ID0gZ2V0TGltaXQobGltaXRzLCAncGFydHMnLCBJbmZpbml0eSlcbiAgY29uc3QgaGVhZGVyUGFpcnNMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2hlYWRlclBhaXJzJywgMjAwMClcbiAgY29uc3QgaGVhZGVyU2l6ZUxpbWl0ID0gZ2V0TGltaXQobGltaXRzLCAnaGVhZGVyU2l6ZScsIDgwICogMTAyNClcblxuICBsZXQgbmZpbGVzID0gMFxuICBsZXQgbmZpZWxkcyA9IDBcbiAgbGV0IG5lbmRzID0gMFxuICBsZXQgY3VyRmlsZVxuICBsZXQgY3VyRmllbGRcbiAgbGV0IGZpbmlzaGVkID0gZmFsc2VcblxuICB0aGlzLl9uZWVkRHJhaW4gPSBmYWxzZVxuICB0aGlzLl9wYXVzZSA9IGZhbHNlXG4gIHRoaXMuX2NiID0gdW5kZWZpbmVkXG4gIHRoaXMuX25wYXJ0cyA9IDBcbiAgdGhpcy5fYm95ID0gYm95XG5cbiAgY29uc3QgcGFyc2VyQ2ZnID0ge1xuICAgIGJvdW5kYXJ5LFxuICAgIG1heEhlYWRlclBhaXJzOiBoZWFkZXJQYWlyc0xpbWl0LFxuICAgIG1heEhlYWRlclNpemU6IGhlYWRlclNpemVMaW1pdCxcbiAgICBwYXJ0SHdtOiBmaWxlT3B0cy5oaWdoV2F0ZXJNYXJrLFxuICAgIGhpZ2hXYXRlck1hcms6IGNmZy5oaWdoV2F0ZXJNYXJrXG4gIH1cblxuICB0aGlzLnBhcnNlciA9IG5ldyBEaWNlcihwYXJzZXJDZmcpXG4gIHRoaXMucGFyc2VyLm9uKCdkcmFpbicsIGZ1bmN0aW9uICgpIHtcbiAgICBzZWxmLl9uZWVkRHJhaW4gPSBmYWxzZVxuICAgIGlmIChzZWxmLl9jYiAmJiAhc2VsZi5fcGF1c2UpIHtcbiAgICAgIGNvbnN0IGNiID0gc2VsZi5fY2JcbiAgICAgIHNlbGYuX2NiID0gdW5kZWZpbmVkXG4gICAgICBjYigpXG4gICAgfVxuICB9KS5vbigncGFydCcsIGZ1bmN0aW9uIG9uUGFydCAocGFydCkge1xuICAgIGlmICgrK3NlbGYuX25wYXJ0cyA+IHBhcnRzTGltaXQpIHtcbiAgICAgIHNlbGYucGFyc2VyLnJlbW92ZUxpc3RlbmVyKCdwYXJ0Jywgb25QYXJ0KVxuICAgICAgc2VsZi5wYXJzZXIub24oJ3BhcnQnLCBza2lwUGFydClcbiAgICAgIGJveS5oaXRQYXJ0c0xpbWl0ID0gdHJ1ZVxuICAgICAgYm95LmVtaXQoJ3BhcnRzTGltaXQnKVxuICAgICAgcmV0dXJuIHNraXBQYXJ0KHBhcnQpXG4gICAgfVxuXG4gICAgLy8gaGFjayBiZWNhdXNlIHN0cmVhbXMyIF9hbHdheXNfIGRvZXNuJ3QgZW1pdCAnZW5kJyB1bnRpbCBuZXh0VGljaywgc28gbGV0XG4gICAgLy8gdXMgZW1pdCAnZW5kJyBlYXJseSBzaW5jZSB3ZSBrbm93IHRoZSBwYXJ0IGhhcyBlbmRlZCBpZiB3ZSBhcmUgYWxyZWFkeVxuICAgIC8vIHNlZWluZyB0aGUgbmV4dCBwYXJ0XG4gICAgaWYgKGN1ckZpZWxkKSB7XG4gICAgICBjb25zdCBmaWVsZCA9IGN1ckZpZWxkXG4gICAgICBmaWVsZC5lbWl0KCdlbmQnKVxuICAgICAgZmllbGQucmVtb3ZlQWxsTGlzdGVuZXJzKCdlbmQnKVxuICAgIH1cblxuICAgIHBhcnQub24oJ2hlYWRlcicsIGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgICAgIGxldCBjb250eXBlXG4gICAgICBsZXQgZmllbGRuYW1lXG4gICAgICBsZXQgcGFyc2VkXG4gICAgICBsZXQgY2hhcnNldFxuICAgICAgbGV0IGVuY29kaW5nXG4gICAgICBsZXQgZmlsZW5hbWVcbiAgICAgIGxldCBuc2l6ZSA9IDBcblxuICAgICAgaWYgKGhlYWRlclsnY29udGVudC10eXBlJ10pIHtcbiAgICAgICAgcGFyc2VkID0gcGFyc2VQYXJhbXMoaGVhZGVyWydjb250ZW50LXR5cGUnXVswXSlcbiAgICAgICAgaWYgKHBhcnNlZFswXSkge1xuICAgICAgICAgIGNvbnR5cGUgPSBwYXJzZWRbMF0udG9Mb3dlckNhc2UoKVxuICAgICAgICAgIGZvciAoaSA9IDAsIGxlbiA9IHBhcnNlZC5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICAgICAgICAgICAgaWYgKFJFX0NIQVJTRVQudGVzdChwYXJzZWRbaV1bMF0pKSB7XG4gICAgICAgICAgICAgIGNoYXJzZXQgPSBwYXJzZWRbaV1bMV0udG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICBicmVha1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoY29udHlwZSA9PT0gdW5kZWZpbmVkKSB7IGNvbnR5cGUgPSAndGV4dC9wbGFpbicgfVxuICAgICAgaWYgKGNoYXJzZXQgPT09IHVuZGVmaW5lZCkgeyBjaGFyc2V0ID0gZGVmQ2hhcnNldCB9XG5cbiAgICAgIGlmIChoZWFkZXJbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXSkge1xuICAgICAgICBwYXJzZWQgPSBwYXJzZVBhcmFtcyhoZWFkZXJbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXVswXSlcbiAgICAgICAgaWYgKCFSRV9GSUVMRC50ZXN0KHBhcnNlZFswXSkpIHsgcmV0dXJuIHNraXBQYXJ0KHBhcnQpIH1cbiAgICAgICAgZm9yIChpID0gMCwgbGVuID0gcGFyc2VkLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgICAgaWYgKFJFX05BTUUudGVzdChwYXJzZWRbaV1bMF0pKSB7XG4gICAgICAgICAgICBmaWVsZG5hbWUgPSBwYXJzZWRbaV1bMV1cbiAgICAgICAgICB9IGVsc2UgaWYgKFJFX0ZJTEVOQU1FLnRlc3QocGFyc2VkW2ldWzBdKSkge1xuICAgICAgICAgICAgZmlsZW5hbWUgPSBwYXJzZWRbaV1bMV1cbiAgICAgICAgICAgIGlmICghcHJlc2VydmVQYXRoKSB7IGZpbGVuYW1lID0gYmFzZW5hbWUoZmlsZW5hbWUpIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7IHJldHVybiBza2lwUGFydChwYXJ0KSB9XG5cbiAgICAgIGlmIChoZWFkZXJbJ2NvbnRlbnQtdHJhbnNmZXItZW5jb2RpbmcnXSkgeyBlbmNvZGluZyA9IGhlYWRlclsnY29udGVudC10cmFuc2Zlci1lbmNvZGluZyddWzBdLnRvTG93ZXJDYXNlKCkgfSBlbHNlIHsgZW5jb2RpbmcgPSAnN2JpdCcgfVxuXG4gICAgICBsZXQgb25EYXRhLFxuICAgICAgICBvbkVuZFxuXG4gICAgICBpZiAoaXNQYXJ0QUZpbGUoZmllbGRuYW1lLCBjb250eXBlLCBmaWxlbmFtZSkpIHtcbiAgICAgICAgLy8gZmlsZS9iaW5hcnkgZmllbGRcbiAgICAgICAgaWYgKG5maWxlcyA9PT0gZmlsZXNMaW1pdCkge1xuICAgICAgICAgIGlmICghYm95LmhpdEZpbGVzTGltaXQpIHtcbiAgICAgICAgICAgIGJveS5oaXRGaWxlc0xpbWl0ID0gdHJ1ZVxuICAgICAgICAgICAgYm95LmVtaXQoJ2ZpbGVzTGltaXQnKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc2tpcFBhcnQocGFydClcbiAgICAgICAgfVxuXG4gICAgICAgICsrbmZpbGVzXG5cbiAgICAgICAgaWYgKCFib3kuX2V2ZW50cy5maWxlKSB7XG4gICAgICAgICAgc2VsZi5wYXJzZXIuX2lnbm9yZSgpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICArK25lbmRzXG4gICAgICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZVN0cmVhbShmaWxlT3B0cylcbiAgICAgICAgY3VyRmlsZSA9IGZpbGVcbiAgICAgICAgZmlsZS5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIC0tbmVuZHNcbiAgICAgICAgICBzZWxmLl9wYXVzZSA9IGZhbHNlXG4gICAgICAgICAgY2hlY2tGaW5pc2hlZCgpXG4gICAgICAgICAgaWYgKHNlbGYuX2NiICYmICFzZWxmLl9uZWVkRHJhaW4pIHtcbiAgICAgICAgICAgIGNvbnN0IGNiID0gc2VsZi5fY2JcbiAgICAgICAgICAgIHNlbGYuX2NiID0gdW5kZWZpbmVkXG4gICAgICAgICAgICBjYigpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICBmaWxlLl9yZWFkID0gZnVuY3Rpb24gKG4pIHtcbiAgICAgICAgICBpZiAoIXNlbGYuX3BhdXNlKSB7IHJldHVybiB9XG4gICAgICAgICAgc2VsZi5fcGF1c2UgPSBmYWxzZVxuICAgICAgICAgIGlmIChzZWxmLl9jYiAmJiAhc2VsZi5fbmVlZERyYWluKSB7XG4gICAgICAgICAgICBjb25zdCBjYiA9IHNlbGYuX2NiXG4gICAgICAgICAgICBzZWxmLl9jYiA9IHVuZGVmaW5lZFxuICAgICAgICAgICAgY2IoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBib3kuZW1pdCgnZmlsZScsIGZpZWxkbmFtZSwgZmlsZSwgZmlsZW5hbWUsIGVuY29kaW5nLCBjb250eXBlKVxuXG4gICAgICAgIG9uRGF0YSA9IGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgICAgICAgaWYgKChuc2l6ZSArPSBkYXRhLmxlbmd0aCkgPiBmaWxlU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgICBjb25zdCBleHRyYWxlbiA9IGZpbGVTaXplTGltaXQgLSBuc2l6ZSArIGRhdGEubGVuZ3RoXG4gICAgICAgICAgICBpZiAoZXh0cmFsZW4gPiAwKSB7IGZpbGUucHVzaChkYXRhLnNsaWNlKDAsIGV4dHJhbGVuKSkgfVxuICAgICAgICAgICAgZmlsZS50cnVuY2F0ZWQgPSB0cnVlXG4gICAgICAgICAgICBmaWxlLmJ5dGVzUmVhZCA9IGZpbGVTaXplTGltaXRcbiAgICAgICAgICAgIHBhcnQucmVtb3ZlQWxsTGlzdGVuZXJzKCdkYXRhJylcbiAgICAgICAgICAgIGZpbGUuZW1pdCgnbGltaXQnKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfSBlbHNlIGlmICghZmlsZS5wdXNoKGRhdGEpKSB7IHNlbGYuX3BhdXNlID0gdHJ1ZSB9XG5cbiAgICAgICAgICBmaWxlLmJ5dGVzUmVhZCA9IG5zaXplXG4gICAgICAgIH1cblxuICAgICAgICBvbkVuZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBjdXJGaWxlID0gdW5kZWZpbmVkXG4gICAgICAgICAgZmlsZS5wdXNoKG51bGwpXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIG5vbi1maWxlIGZpZWxkXG4gICAgICAgIGlmIChuZmllbGRzID09PSBmaWVsZHNMaW1pdCkge1xuICAgICAgICAgIGlmICghYm95LmhpdEZpZWxkc0xpbWl0KSB7XG4gICAgICAgICAgICBib3kuaGl0RmllbGRzTGltaXQgPSB0cnVlXG4gICAgICAgICAgICBib3kuZW1pdCgnZmllbGRzTGltaXQnKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc2tpcFBhcnQocGFydClcbiAgICAgICAgfVxuXG4gICAgICAgICsrbmZpZWxkc1xuICAgICAgICArK25lbmRzXG4gICAgICAgIGxldCBidWZmZXIgPSAnJ1xuICAgICAgICBsZXQgdHJ1bmNhdGVkID0gZmFsc2VcbiAgICAgICAgY3VyRmllbGQgPSBwYXJ0XG5cbiAgICAgICAgb25EYXRhID0gZnVuY3Rpb24gKGRhdGEpIHtcbiAgICAgICAgICBpZiAoKG5zaXplICs9IGRhdGEubGVuZ3RoKSA+IGZpZWxkU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgICBjb25zdCBleHRyYWxlbiA9IChmaWVsZFNpemVMaW1pdCAtIChuc2l6ZSAtIGRhdGEubGVuZ3RoKSlcbiAgICAgICAgICAgIGJ1ZmZlciArPSBkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCAwLCBleHRyYWxlbilcbiAgICAgICAgICAgIHRydW5jYXRlZCA9IHRydWVcbiAgICAgICAgICAgIHBhcnQucmVtb3ZlQWxsTGlzdGVuZXJzKCdkYXRhJylcbiAgICAgICAgICB9IGVsc2UgeyBidWZmZXIgKz0gZGF0YS50b1N0cmluZygnYmluYXJ5JykgfVxuICAgICAgICB9XG5cbiAgICAgICAgb25FbmQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgY3VyRmllbGQgPSB1bmRlZmluZWRcbiAgICAgICAgICBpZiAoYnVmZmVyLmxlbmd0aCkgeyBidWZmZXIgPSBkZWNvZGVUZXh0KGJ1ZmZlciwgJ2JpbmFyeScsIGNoYXJzZXQpIH1cbiAgICAgICAgICBib3kuZW1pdCgnZmllbGQnLCBmaWVsZG5hbWUsIGJ1ZmZlciwgZmFsc2UsIHRydW5jYXRlZCwgZW5jb2RpbmcsIGNvbnR5cGUpXG4gICAgICAgICAgLS1uZW5kc1xuICAgICAgICAgIGNoZWNrRmluaXNoZWQoKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qIEFzIG9mIG5vZGVAMmVmZTRhYjc2MTY2NiAodjAuMTAuMjkrL3YwLjExLjE0KyksIGJ1c2JveSBoYWQgYmVjb21lXG4gICAgICAgICBicm9rZW4uIFN0cmVhbXMyL3N0cmVhbXMzIGlzIGEgaHVnZSBibGFjayBib3ggb2YgY29uZnVzaW9uLCBidXRcbiAgICAgICAgIHNvbWVob3cgb3ZlcnJpZGluZyB0aGUgc3luYyBzdGF0ZSBzZWVtcyB0byBmaXggdGhpbmdzIGFnYWluIChhbmQgc3RpbGxcbiAgICAgICAgIHNlZW1zIHRvIHdvcmsgZm9yIHByZXZpb3VzIG5vZGUgdmVyc2lvbnMpLlxuICAgICAgKi9cbiAgICAgIHBhcnQuX3JlYWRhYmxlU3RhdGUuc3luYyA9IGZhbHNlXG5cbiAgICAgIHBhcnQub24oJ2RhdGEnLCBvbkRhdGEpXG4gICAgICBwYXJ0Lm9uKCdlbmQnLCBvbkVuZClcbiAgICB9KS5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICBpZiAoY3VyRmlsZSkgeyBjdXJGaWxlLmVtaXQoJ2Vycm9yJywgZXJyKSB9XG4gICAgfSlcbiAgfSkub24oJ2Vycm9yJywgZnVuY3Rpb24gKGVycikge1xuICAgIGJveS5lbWl0KCdlcnJvcicsIGVycilcbiAgfSkub24oJ2ZpbmlzaCcsIGZ1bmN0aW9uICgpIHtcbiAgICBmaW5pc2hlZCA9IHRydWVcbiAgICBjaGVja0ZpbmlzaGVkKClcbiAgfSlcbn1cblxuTXVsdGlwYXJ0LnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uIChjaHVuaywgY2IpIHtcbiAgY29uc3QgciA9IHRoaXMucGFyc2VyLndyaXRlKGNodW5rKVxuICBpZiAociAmJiAhdGhpcy5fcGF1c2UpIHtcbiAgICBjYigpXG4gIH0gZWxzZSB7XG4gICAgdGhpcy5fbmVlZERyYWluID0gIXJcbiAgICB0aGlzLl9jYiA9IGNiXG4gIH1cbn1cblxuTXVsdGlwYXJ0LnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHNlbGYgPSB0aGlzXG5cbiAgaWYgKHNlbGYucGFyc2VyLndyaXRhYmxlKSB7XG4gICAgc2VsZi5wYXJzZXIuZW5kKClcbiAgfSBlbHNlIGlmICghc2VsZi5fYm95Ll9kb25lKSB7XG4gICAgcHJvY2Vzcy5uZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICBzZWxmLl9ib3kuX2RvbmUgPSB0cnVlXG4gICAgICBzZWxmLl9ib3kuZW1pdCgnZmluaXNoJylcbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uIHNraXBQYXJ0IChwYXJ0KSB7XG4gIHBhcnQucmVzdW1lKClcbn1cblxuZnVuY3Rpb24gRmlsZVN0cmVhbSAob3B0cykge1xuICBSZWFkYWJsZS5jYWxsKHRoaXMsIG9wdHMpXG5cbiAgdGhpcy5ieXRlc1JlYWQgPSAwXG5cbiAgdGhpcy50cnVuY2F0ZWQgPSBmYWxzZVxufVxuXG5pbmhlcml0cyhGaWxlU3RyZWFtLCBSZWFkYWJsZSlcblxuRmlsZVN0cmVhbS5wcm90b3R5cGUuX3JlYWQgPSBmdW5jdGlvbiAobikge31cblxubW9kdWxlLmV4cG9ydHMgPSBNdWx0aXBhcnRcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgUkVfUExVUyA9IC9cXCsvZ1xuXG5jb25zdCBIRVggPSBbXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsXG4gIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDBcbl1cblxuZnVuY3Rpb24gRGVjb2RlciAoKSB7XG4gIHRoaXMuYnVmZmVyID0gdW5kZWZpbmVkXG59XG5EZWNvZGVyLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uIChzdHIpIHtcbiAgLy8gUmVwbGFjZSAnKycgd2l0aCAnICcgYmVmb3JlIGRlY29kaW5nXG4gIHN0ciA9IHN0ci5yZXBsYWNlKFJFX1BMVVMsICcgJylcbiAgbGV0IHJlcyA9ICcnXG4gIGxldCBpID0gMDsgbGV0IHAgPSAwOyBjb25zdCBsZW4gPSBzdHIubGVuZ3RoXG4gIGZvciAoOyBpIDwgbGVuOyArK2kpIHtcbiAgICBpZiAodGhpcy5idWZmZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKCFIRVhbc3RyLmNoYXJDb2RlQXQoaSldKSB7XG4gICAgICAgIHJlcyArPSAnJScgKyB0aGlzLmJ1ZmZlclxuICAgICAgICB0aGlzLmJ1ZmZlciA9IHVuZGVmaW5lZFxuICAgICAgICAtLWkgLy8gcmV0cnkgY2hhcmFjdGVyXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmJ1ZmZlciArPSBzdHJbaV1cbiAgICAgICAgKytwXG4gICAgICAgIGlmICh0aGlzLmJ1ZmZlci5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgICByZXMgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShwYXJzZUludCh0aGlzLmJ1ZmZlciwgMTYpKVxuICAgICAgICAgIHRoaXMuYnVmZmVyID0gdW5kZWZpbmVkXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHN0cltpXSA9PT0gJyUnKSB7XG4gICAgICBpZiAoaSA+IHApIHtcbiAgICAgICAgcmVzICs9IHN0ci5zdWJzdHJpbmcocCwgaSlcbiAgICAgICAgcCA9IGlcbiAgICAgIH1cbiAgICAgIHRoaXMuYnVmZmVyID0gJydcbiAgICAgICsrcFxuICAgIH1cbiAgfVxuICBpZiAocCA8IGxlbiAmJiB0aGlzLmJ1ZmZlciA9PT0gdW5kZWZpbmVkKSB7IHJlcyArPSBzdHIuc3Vic3RyaW5nKHApIH1cbiAgcmV0dXJuIHJlc1xufVxuRGVjb2Rlci5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuYnVmZmVyID0gdW5kZWZpbmVkXG59XG5cbm1vZHVsZS5leHBvcnRzID0gRGVjb2RlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBEZWNvZGVyID0gcmVxdWlyZSgnLi4vdXRpbHMvRGVjb2RlcicpXG5jb25zdCBkZWNvZGVUZXh0ID0gcmVxdWlyZSgnLi4vdXRpbHMvZGVjb2RlVGV4dCcpXG5jb25zdCBnZXRMaW1pdCA9IHJlcXVpcmUoJy4uL3V0aWxzL2dldExpbWl0JylcblxuY29uc3QgUkVfQ0hBUlNFVCA9IC9eY2hhcnNldCQvaVxuXG5VcmxFbmNvZGVkLmRldGVjdCA9IC9eYXBwbGljYXRpb25cXC94LXd3dy1mb3JtLXVybGVuY29kZWQvaVxuZnVuY3Rpb24gVXJsRW5jb2RlZCAoYm95LCBjZmcpIHtcbiAgY29uc3QgbGltaXRzID0gY2ZnLmxpbWl0c1xuICBjb25zdCBwYXJzZWRDb25UeXBlID0gY2ZnLnBhcnNlZENvblR5cGVcbiAgdGhpcy5ib3kgPSBib3lcblxuICB0aGlzLmZpZWxkU2l6ZUxpbWl0ID0gZ2V0TGltaXQobGltaXRzLCAnZmllbGRTaXplJywgMSAqIDEwMjQgKiAxMDI0KVxuICB0aGlzLmZpZWxkTmFtZVNpemVMaW1pdCA9IGdldExpbWl0KGxpbWl0cywgJ2ZpZWxkTmFtZVNpemUnLCAxMDApXG4gIHRoaXMuZmllbGRzTGltaXQgPSBnZXRMaW1pdChsaW1pdHMsICdmaWVsZHMnLCBJbmZpbml0eSlcblxuICBsZXQgY2hhcnNldFxuICBmb3IgKHZhciBpID0gMCwgbGVuID0gcGFyc2VkQ29uVHlwZS5sZW5ndGg7IGkgPCBsZW47ICsraSkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLXZhclxuICAgIGlmIChBcnJheS5pc0FycmF5KHBhcnNlZENvblR5cGVbaV0pICYmXG4gICAgICAgIFJFX0NIQVJTRVQudGVzdChwYXJzZWRDb25UeXBlW2ldWzBdKSkge1xuICAgICAgY2hhcnNldCA9IHBhcnNlZENvblR5cGVbaV1bMV0udG9Mb3dlckNhc2UoKVxuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBpZiAoY2hhcnNldCA9PT0gdW5kZWZpbmVkKSB7IGNoYXJzZXQgPSBjZmcuZGVmQ2hhcnNldCB8fCAndXRmOCcgfVxuXG4gIHRoaXMuZGVjb2RlciA9IG5ldyBEZWNvZGVyKClcbiAgdGhpcy5jaGFyc2V0ID0gY2hhcnNldFxuICB0aGlzLl9maWVsZHMgPSAwXG4gIHRoaXMuX3N0YXRlID0gJ2tleSdcbiAgdGhpcy5fY2hlY2tpbmdCeXRlcyA9IHRydWVcbiAgdGhpcy5fYnl0ZXNLZXkgPSAwXG4gIHRoaXMuX2J5dGVzVmFsID0gMFxuICB0aGlzLl9rZXkgPSAnJ1xuICB0aGlzLl92YWwgPSAnJ1xuICB0aGlzLl9rZXlUcnVuYyA9IGZhbHNlXG4gIHRoaXMuX3ZhbFRydW5jID0gZmFsc2VcbiAgdGhpcy5faGl0TGltaXQgPSBmYWxzZVxufVxuXG5VcmxFbmNvZGVkLnByb3RvdHlwZS53cml0ZSA9IGZ1bmN0aW9uIChkYXRhLCBjYikge1xuICBpZiAodGhpcy5fZmllbGRzID09PSB0aGlzLmZpZWxkc0xpbWl0KSB7XG4gICAgaWYgKCF0aGlzLmJveS5oaXRGaWVsZHNMaW1pdCkge1xuICAgICAgdGhpcy5ib3kuaGl0RmllbGRzTGltaXQgPSB0cnVlXG4gICAgICB0aGlzLmJveS5lbWl0KCdmaWVsZHNMaW1pdCcpXG4gICAgfVxuICAgIHJldHVybiBjYigpXG4gIH1cblxuICBsZXQgaWR4ZXE7IGxldCBpZHhhbXA7IGxldCBpOyBsZXQgcCA9IDA7IGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoXG5cbiAgd2hpbGUgKHAgPCBsZW4pIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdrZXknKSB7XG4gICAgICBpZHhlcSA9IGlkeGFtcCA9IHVuZGVmaW5lZFxuICAgICAgZm9yIChpID0gcDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgIGlmICghdGhpcy5fY2hlY2tpbmdCeXRlcykgeyArK3AgfVxuICAgICAgICBpZiAoZGF0YVtpXSA9PT0gMHgzRC8qID0gKi8pIHtcbiAgICAgICAgICBpZHhlcSA9IGlcbiAgICAgICAgICBicmVha1xuICAgICAgICB9IGVsc2UgaWYgKGRhdGFbaV0gPT09IDB4MjYvKiAmICovKSB7XG4gICAgICAgICAgaWR4YW1wID0gaVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX2NoZWNraW5nQnl0ZXMgJiYgdGhpcy5fYnl0ZXNLZXkgPT09IHRoaXMuZmllbGROYW1lU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgdGhpcy5faGl0TGltaXQgPSB0cnVlXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9jaGVja2luZ0J5dGVzKSB7ICsrdGhpcy5fYnl0ZXNLZXkgfVxuICAgICAgfVxuXG4gICAgICBpZiAoaWR4ZXEgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAvLyBrZXkgd2l0aCBhc3NpZ25tZW50XG4gICAgICAgIGlmIChpZHhlcSA+IHApIHsgdGhpcy5fa2V5ICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwLCBpZHhlcSkpIH1cbiAgICAgICAgdGhpcy5fc3RhdGUgPSAndmFsJ1xuXG4gICAgICAgIHRoaXMuX2hpdExpbWl0ID0gZmFsc2VcbiAgICAgICAgdGhpcy5fY2hlY2tpbmdCeXRlcyA9IHRydWVcbiAgICAgICAgdGhpcy5fdmFsID0gJydcbiAgICAgICAgdGhpcy5fYnl0ZXNWYWwgPSAwXG4gICAgICAgIHRoaXMuX3ZhbFRydW5jID0gZmFsc2VcbiAgICAgICAgdGhpcy5kZWNvZGVyLnJlc2V0KClcblxuICAgICAgICBwID0gaWR4ZXEgKyAxXG4gICAgICB9IGVsc2UgaWYgKGlkeGFtcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIGtleSB3aXRoIG5vIGFzc2lnbm1lbnRcbiAgICAgICAgKyt0aGlzLl9maWVsZHNcbiAgICAgICAgbGV0IGtleTsgY29uc3Qga2V5VHJ1bmMgPSB0aGlzLl9rZXlUcnVuY1xuICAgICAgICBpZiAoaWR4YW1wID4gcCkgeyBrZXkgPSAodGhpcy5fa2V5ICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwLCBpZHhhbXApKSkgfSBlbHNlIHsga2V5ID0gdGhpcy5fa2V5IH1cblxuICAgICAgICB0aGlzLl9oaXRMaW1pdCA9IGZhbHNlXG4gICAgICAgIHRoaXMuX2NoZWNraW5nQnl0ZXMgPSB0cnVlXG4gICAgICAgIHRoaXMuX2tleSA9ICcnXG4gICAgICAgIHRoaXMuX2J5dGVzS2V5ID0gMFxuICAgICAgICB0aGlzLl9rZXlUcnVuYyA9IGZhbHNlXG4gICAgICAgIHRoaXMuZGVjb2Rlci5yZXNldCgpXG5cbiAgICAgICAgaWYgKGtleS5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQoa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgICAgICAgICcnLFxuICAgICAgICAgICAga2V5VHJ1bmMsXG4gICAgICAgICAgICBmYWxzZSlcbiAgICAgICAgfVxuXG4gICAgICAgIHAgPSBpZHhhbXAgKyAxXG4gICAgICAgIGlmICh0aGlzLl9maWVsZHMgPT09IHRoaXMuZmllbGRzTGltaXQpIHsgcmV0dXJuIGNiKCkgfVxuICAgICAgfSBlbHNlIGlmICh0aGlzLl9oaXRMaW1pdCkge1xuICAgICAgICAvLyB3ZSBtYXkgbm90IGhhdmUgaGl0IHRoZSBhY3R1YWwgbGltaXQgaWYgdGhlcmUgYXJlIGVuY29kZWQgYnl0ZXMuLi5cbiAgICAgICAgaWYgKGkgPiBwKSB7IHRoaXMuX2tleSArPSB0aGlzLmRlY29kZXIud3JpdGUoZGF0YS50b1N0cmluZygnYmluYXJ5JywgcCwgaSkpIH1cbiAgICAgICAgcCA9IGlcbiAgICAgICAgaWYgKCh0aGlzLl9ieXRlc0tleSA9IHRoaXMuX2tleS5sZW5ndGgpID09PSB0aGlzLmZpZWxkTmFtZVNpemVMaW1pdCkge1xuICAgICAgICAgIC8vIHllcCwgd2UgYWN0dWFsbHkgZGlkIGhpdCB0aGUgbGltaXRcbiAgICAgICAgICB0aGlzLl9jaGVja2luZ0J5dGVzID0gZmFsc2VcbiAgICAgICAgICB0aGlzLl9rZXlUcnVuYyA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHAgPCBsZW4pIHsgdGhpcy5fa2V5ICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwKSkgfVxuICAgICAgICBwID0gbGVuXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlkeGFtcCA9IHVuZGVmaW5lZFxuICAgICAgZm9yIChpID0gcDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgIGlmICghdGhpcy5fY2hlY2tpbmdCeXRlcykgeyArK3AgfVxuICAgICAgICBpZiAoZGF0YVtpXSA9PT0gMHgyNi8qICYgKi8pIHtcbiAgICAgICAgICBpZHhhbXAgPSBpXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5fY2hlY2tpbmdCeXRlcyAmJiB0aGlzLl9ieXRlc1ZhbCA9PT0gdGhpcy5maWVsZFNpemVMaW1pdCkge1xuICAgICAgICAgIHRoaXMuX2hpdExpbWl0ID0gdHJ1ZVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5fY2hlY2tpbmdCeXRlcykgeyArK3RoaXMuX2J5dGVzVmFsIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGlkeGFtcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICsrdGhpcy5fZmllbGRzXG4gICAgICAgIGlmIChpZHhhbXAgPiBwKSB7IHRoaXMuX3ZhbCArPSB0aGlzLmRlY29kZXIud3JpdGUoZGF0YS50b1N0cmluZygnYmluYXJ5JywgcCwgaWR4YW1wKSkgfVxuICAgICAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQodGhpcy5fa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgICAgICBkZWNvZGVUZXh0KHRoaXMuX3ZhbCwgJ2JpbmFyeScsIHRoaXMuY2hhcnNldCksXG4gICAgICAgICAgdGhpcy5fa2V5VHJ1bmMsXG4gICAgICAgICAgdGhpcy5fdmFsVHJ1bmMpXG4gICAgICAgIHRoaXMuX3N0YXRlID0gJ2tleSdcblxuICAgICAgICB0aGlzLl9oaXRMaW1pdCA9IGZhbHNlXG4gICAgICAgIHRoaXMuX2NoZWNraW5nQnl0ZXMgPSB0cnVlXG4gICAgICAgIHRoaXMuX2tleSA9ICcnXG4gICAgICAgIHRoaXMuX2J5dGVzS2V5ID0gMFxuICAgICAgICB0aGlzLl9rZXlUcnVuYyA9IGZhbHNlXG4gICAgICAgIHRoaXMuZGVjb2Rlci5yZXNldCgpXG5cbiAgICAgICAgcCA9IGlkeGFtcCArIDFcbiAgICAgICAgaWYgKHRoaXMuX2ZpZWxkcyA9PT0gdGhpcy5maWVsZHNMaW1pdCkgeyByZXR1cm4gY2IoKSB9XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuX2hpdExpbWl0KSB7XG4gICAgICAgIC8vIHdlIG1heSBub3QgaGF2ZSBoaXQgdGhlIGFjdHVhbCBsaW1pdCBpZiB0aGVyZSBhcmUgZW5jb2RlZCBieXRlcy4uLlxuICAgICAgICBpZiAoaSA+IHApIHsgdGhpcy5fdmFsICs9IHRoaXMuZGVjb2Rlci53cml0ZShkYXRhLnRvU3RyaW5nKCdiaW5hcnknLCBwLCBpKSkgfVxuICAgICAgICBwID0gaVxuICAgICAgICBpZiAoKHRoaXMuX3ZhbCA9PT0gJycgJiYgdGhpcy5maWVsZFNpemVMaW1pdCA9PT0gMCkgfHxcbiAgICAgICAgICAgICh0aGlzLl9ieXRlc1ZhbCA9IHRoaXMuX3ZhbC5sZW5ndGgpID09PSB0aGlzLmZpZWxkU2l6ZUxpbWl0KSB7XG4gICAgICAgICAgLy8geWVwLCB3ZSBhY3R1YWxseSBkaWQgaGl0IHRoZSBsaW1pdFxuICAgICAgICAgIHRoaXMuX2NoZWNraW5nQnl0ZXMgPSBmYWxzZVxuICAgICAgICAgIHRoaXMuX3ZhbFRydW5jID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAocCA8IGxlbikgeyB0aGlzLl92YWwgKz0gdGhpcy5kZWNvZGVyLndyaXRlKGRhdGEudG9TdHJpbmcoJ2JpbmFyeScsIHApKSB9XG4gICAgICAgIHAgPSBsZW5cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgY2IoKVxufVxuXG5VcmxFbmNvZGVkLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICh0aGlzLmJveS5fZG9uZSkgeyByZXR1cm4gfVxuXG4gIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2tleScgJiYgdGhpcy5fa2V5Lmxlbmd0aCA+IDApIHtcbiAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQodGhpcy5fa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgICcnLFxuICAgICAgdGhpcy5fa2V5VHJ1bmMsXG4gICAgICBmYWxzZSlcbiAgfSBlbHNlIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ3ZhbCcpIHtcbiAgICB0aGlzLmJveS5lbWl0KCdmaWVsZCcsIGRlY29kZVRleHQodGhpcy5fa2V5LCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgIGRlY29kZVRleHQodGhpcy5fdmFsLCAnYmluYXJ5JywgdGhpcy5jaGFyc2V0KSxcbiAgICAgIHRoaXMuX2tleVRydW5jLFxuICAgICAgdGhpcy5fdmFsVHJ1bmMpXG4gIH1cbiAgdGhpcy5ib3kuX2RvbmUgPSB0cnVlXG4gIHRoaXMuYm95LmVtaXQoJ2ZpbmlzaCcpXG59XG5cbm1vZHVsZS5leHBvcnRzID0gVXJsRW5jb2RlZFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBXcml0YWJsZVN0cmVhbSA9IHJlcXVpcmUoJ25vZGU6c3RyZWFtJykuV3JpdGFibGVcbmNvbnN0IHsgaW5oZXJpdHMgfSA9IHJlcXVpcmUoJ25vZGU6dXRpbCcpXG5jb25zdCBEaWNlciA9IHJlcXVpcmUoJy4uL2RlcHMvZGljZXIvbGliL0RpY2VyJylcblxuY29uc3QgTXVsdGlwYXJ0UGFyc2VyID0gcmVxdWlyZSgnLi90eXBlcy9tdWx0aXBhcnQnKVxuY29uc3QgVXJsZW5jb2RlZFBhcnNlciA9IHJlcXVpcmUoJy4vdHlwZXMvdXJsZW5jb2RlZCcpXG5jb25zdCBwYXJzZVBhcmFtcyA9IHJlcXVpcmUoJy4vdXRpbHMvcGFyc2VQYXJhbXMnKVxuXG5mdW5jdGlvbiBCdXNib3kgKG9wdHMpIHtcbiAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIEJ1c2JveSkpIHsgcmV0dXJuIG5ldyBCdXNib3kob3B0cykgfVxuXG4gIGlmICh0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdCdXNib3kgZXhwZWN0ZWQgYW4gb3B0aW9ucy1PYmplY3QuJylcbiAgfVxuICBpZiAodHlwZW9mIG9wdHMuaGVhZGVycyAhPT0gJ29iamVjdCcpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdCdXNib3kgZXhwZWN0ZWQgYW4gb3B0aW9ucy1PYmplY3Qgd2l0aCBoZWFkZXJzLWF0dHJpYnV0ZS4nKVxuICB9XG4gIGlmICh0eXBlb2Ygb3B0cy5oZWFkZXJzWydjb250ZW50LXR5cGUnXSAhPT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdNaXNzaW5nIENvbnRlbnQtVHlwZS1oZWFkZXIuJylcbiAgfVxuXG4gIGNvbnN0IHtcbiAgICBoZWFkZXJzLFxuICAgIC4uLnN0cmVhbU9wdGlvbnNcbiAgfSA9IG9wdHNcblxuICB0aGlzLm9wdHMgPSB7XG4gICAgYXV0b0Rlc3Ryb3k6IGZhbHNlLFxuICAgIC4uLnN0cmVhbU9wdGlvbnNcbiAgfVxuICBXcml0YWJsZVN0cmVhbS5jYWxsKHRoaXMsIHRoaXMub3B0cylcblxuICB0aGlzLl9kb25lID0gZmFsc2VcbiAgdGhpcy5fcGFyc2VyID0gdGhpcy5nZXRQYXJzZXJCeUhlYWRlcnMoaGVhZGVycylcbiAgdGhpcy5fZmluaXNoZWQgPSBmYWxzZVxufVxuaW5oZXJpdHMoQnVzYm95LCBXcml0YWJsZVN0cmVhbSlcblxuQnVzYm95LnByb3RvdHlwZS5lbWl0ID0gZnVuY3Rpb24gKGV2KSB7XG4gIGlmIChldiA9PT0gJ2ZpbmlzaCcpIHtcbiAgICBpZiAoIXRoaXMuX2RvbmUpIHtcbiAgICAgIHRoaXMuX3BhcnNlcj8uZW5kKClcbiAgICAgIHJldHVyblxuICAgIH0gZWxzZSBpZiAodGhpcy5fZmluaXNoZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLl9maW5pc2hlZCA9IHRydWVcbiAgfVxuICBXcml0YWJsZVN0cmVhbS5wcm90b3R5cGUuZW1pdC5hcHBseSh0aGlzLCBhcmd1bWVudHMpXG59XG5cbkJ1c2JveS5wcm90b3R5cGUuZ2V0UGFyc2VyQnlIZWFkZXJzID0gZnVuY3Rpb24gKGhlYWRlcnMpIHtcbiAgY29uc3QgcGFyc2VkID0gcGFyc2VQYXJhbXMoaGVhZGVyc1snY29udGVudC10eXBlJ10pXG5cbiAgY29uc3QgY2ZnID0ge1xuICAgIGRlZkNoYXJzZXQ6IHRoaXMub3B0cy5kZWZDaGFyc2V0LFxuICAgIGZpbGVId206IHRoaXMub3B0cy5maWxlSHdtLFxuICAgIGhlYWRlcnMsXG4gICAgaGlnaFdhdGVyTWFyazogdGhpcy5vcHRzLmhpZ2hXYXRlck1hcmssXG4gICAgaXNQYXJ0QUZpbGU6IHRoaXMub3B0cy5pc1BhcnRBRmlsZSxcbiAgICBsaW1pdHM6IHRoaXMub3B0cy5saW1pdHMsXG4gICAgcGFyc2VkQ29uVHlwZTogcGFyc2VkLFxuICAgIHByZXNlcnZlUGF0aDogdGhpcy5vcHRzLnByZXNlcnZlUGF0aFxuICB9XG5cbiAgaWYgKE11bHRpcGFydFBhcnNlci5kZXRlY3QudGVzdChwYXJzZWRbMF0pKSB7XG4gICAgcmV0dXJuIG5ldyBNdWx0aXBhcnRQYXJzZXIodGhpcywgY2ZnKVxuICB9XG4gIGlmIChVcmxlbmNvZGVkUGFyc2VyLmRldGVjdC50ZXN0KHBhcnNlZFswXSkpIHtcbiAgICByZXR1cm4gbmV3IFVybGVuY29kZWRQYXJzZXIodGhpcywgY2ZnKVxuICB9XG4gIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgQ29udGVudC1UeXBlLicpXG59XG5cbkJ1c2JveS5wcm90b3R5cGUuX3dyaXRlID0gZnVuY3Rpb24gKGNodW5rLCBlbmNvZGluZywgY2IpIHtcbiAgdGhpcy5fcGFyc2VyLndyaXRlKGNodW5rLCBjYilcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBCdXNib3lcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSBCdXNib3lcbm1vZHVsZS5leHBvcnRzLkJ1c2JveSA9IEJ1c2JveVxuXG5tb2R1bGUuZXhwb3J0cy5EaWNlciA9IERpY2VyXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgTWVzc2FnZUNoYW5uZWwsIHJlY2VpdmVNZXNzYWdlT25Qb3J0IH0gPSByZXF1aXJlKCd3b3JrZXJfdGhyZWFkcycpXG5cbmNvbnN0IGNvcnNTYWZlTGlzdGVkTWV0aG9kcyA9IFsnR0VUJywgJ0hFQUQnLCAnUE9TVCddXG5jb25zdCBjb3JzU2FmZUxpc3RlZE1ldGhvZHNTZXQgPSBuZXcgU2V0KGNvcnNTYWZlTGlzdGVkTWV0aG9kcylcblxuY29uc3QgbnVsbEJvZHlTdGF0dXMgPSBbMTAxLCAyMDQsIDIwNSwgMzA0XVxuXG5jb25zdCByZWRpcmVjdFN0YXR1cyA9IFszMDEsIDMwMiwgMzAzLCAzMDcsIDMwOF1cbmNvbnN0IHJlZGlyZWN0U3RhdHVzU2V0ID0gbmV3IFNldChyZWRpcmVjdFN0YXR1cylcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2Jsb2NrLWJhZC1wb3J0XG5jb25zdCBiYWRQb3J0cyA9IFtcbiAgJzEnLCAnNycsICc5JywgJzExJywgJzEzJywgJzE1JywgJzE3JywgJzE5JywgJzIwJywgJzIxJywgJzIyJywgJzIzJywgJzI1JywgJzM3JywgJzQyJywgJzQzJywgJzUzJywgJzY5JywgJzc3JywgJzc5JyxcbiAgJzg3JywgJzk1JywgJzEwMScsICcxMDInLCAnMTAzJywgJzEwNCcsICcxMDknLCAnMTEwJywgJzExMScsICcxMTMnLCAnMTE1JywgJzExNycsICcxMTknLCAnMTIzJywgJzEzNScsICcxMzcnLFxuICAnMTM5JywgJzE0MycsICcxNjEnLCAnMTc5JywgJzM4OScsICc0MjcnLCAnNDY1JywgJzUxMicsICc1MTMnLCAnNTE0JywgJzUxNScsICc1MjYnLCAnNTMwJywgJzUzMScsICc1MzInLFxuICAnNTQwJywgJzU0OCcsICc1NTQnLCAnNTU2JywgJzU2MycsICc1ODcnLCAnNjAxJywgJzYzNicsICc5ODknLCAnOTkwJywgJzk5MycsICc5OTUnLCAnMTcxOScsICcxNzIwJywgJzE3MjMnLFxuICAnMjA0OScsICczNjU5JywgJzQwNDUnLCAnNTA2MCcsICc1MDYxJywgJzYwMDAnLCAnNjU2NicsICc2NjY1JywgJzY2NjYnLCAnNjY2NycsICc2NjY4JywgJzY2NjknLCAnNjY5NycsXG4gICcxMDA4MCdcbl1cblxuY29uc3QgYmFkUG9ydHNTZXQgPSBuZXcgU2V0KGJhZFBvcnRzKVxuXG4vLyBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLXJlZmVycmVyLXBvbGljeS8jcmVmZXJyZXItcG9saWNpZXNcbmNvbnN0IHJlZmVycmVyUG9saWN5ID0gW1xuICAnJyxcbiAgJ25vLXJlZmVycmVyJyxcbiAgJ25vLXJlZmVycmVyLXdoZW4tZG93bmdyYWRlJyxcbiAgJ3NhbWUtb3JpZ2luJyxcbiAgJ29yaWdpbicsXG4gICdzdHJpY3Qtb3JpZ2luJyxcbiAgJ29yaWdpbi13aGVuLWNyb3NzLW9yaWdpbicsXG4gICdzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJyxcbiAgJ3Vuc2FmZS11cmwnXG5dXG5jb25zdCByZWZlcnJlclBvbGljeVNldCA9IG5ldyBTZXQocmVmZXJyZXJQb2xpY3kpXG5cbmNvbnN0IHJlcXVlc3RSZWRpcmVjdCA9IFsnZm9sbG93JywgJ21hbnVhbCcsICdlcnJvciddXG5cbmNvbnN0IHNhZmVNZXRob2RzID0gWydHRVQnLCAnSEVBRCcsICdPUFRJT05TJywgJ1RSQUNFJ11cbmNvbnN0IHNhZmVNZXRob2RzU2V0ID0gbmV3IFNldChzYWZlTWV0aG9kcylcblxuY29uc3QgcmVxdWVzdE1vZGUgPSBbJ25hdmlnYXRlJywgJ3NhbWUtb3JpZ2luJywgJ25vLWNvcnMnLCAnY29ycyddXG5cbmNvbnN0IHJlcXVlc3RDcmVkZW50aWFscyA9IFsnb21pdCcsICdzYW1lLW9yaWdpbicsICdpbmNsdWRlJ11cblxuY29uc3QgcmVxdWVzdENhY2hlID0gW1xuICAnZGVmYXVsdCcsXG4gICduby1zdG9yZScsXG4gICdyZWxvYWQnLFxuICAnbm8tY2FjaGUnLFxuICAnZm9yY2UtY2FjaGUnLFxuICAnb25seS1pZi1jYWNoZWQnXG5dXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0LWJvZHktaGVhZGVyLW5hbWVcbmNvbnN0IHJlcXVlc3RCb2R5SGVhZGVyID0gW1xuICAnY29udGVudC1lbmNvZGluZycsXG4gICdjb250ZW50LWxhbmd1YWdlJyxcbiAgJ2NvbnRlbnQtbG9jYXRpb24nLFxuICAnY29udGVudC10eXBlJyxcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8yMDIxXG4gIC8vICdDb250ZW50LUxlbmd0aCcgaXMgYSBmb3JiaWRkZW4gaGVhZGVyIG5hbWUsIHdoaWNoIGlzIHR5cGljYWxseVxuICAvLyByZW1vdmVkIGluIHRoZSBIZWFkZXJzIGltcGxlbWVudGF0aW9uLiBIb3dldmVyLCB1bmRpY2kgZG9lc24ndFxuICAvLyBmaWx0ZXIgb3V0IGhlYWRlcnMsIHNvIHdlIGFkZCBpdCBoZXJlLlxuICAnY29udGVudC1sZW5ndGgnXG5dXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNlbnVtZGVmLXJlcXVlc3RkdXBsZXhcbmNvbnN0IHJlcXVlc3REdXBsZXggPSBbXG4gICdoYWxmJ1xuXVxuXG4vLyBodHRwOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmb3JiaWRkZW4tbWV0aG9kXG5jb25zdCBmb3JiaWRkZW5NZXRob2RzID0gWydDT05ORUNUJywgJ1RSQUNFJywgJ1RSQUNLJ11cbmNvbnN0IGZvcmJpZGRlbk1ldGhvZHNTZXQgPSBuZXcgU2V0KGZvcmJpZGRlbk1ldGhvZHMpXG5cbmNvbnN0IHN1YnJlc291cmNlID0gW1xuICAnYXVkaW8nLFxuICAnYXVkaW93b3JrbGV0JyxcbiAgJ2ZvbnQnLFxuICAnaW1hZ2UnLFxuICAnbWFuaWZlc3QnLFxuICAncGFpbnR3b3JrbGV0JyxcbiAgJ3NjcmlwdCcsXG4gICdzdHlsZScsXG4gICd0cmFjaycsXG4gICd2aWRlbycsXG4gICd4c2x0JyxcbiAgJydcbl1cbmNvbnN0IHN1YnJlc291cmNlU2V0ID0gbmV3IFNldChzdWJyZXNvdXJjZSlcblxuLyoqIEB0eXBlIHtnbG9iYWxUaGlzWydET01FeGNlcHRpb24nXX0gKi9cbmNvbnN0IERPTUV4Y2VwdGlvbiA9IGdsb2JhbFRoaXMuRE9NRXhjZXB0aW9uID8/ICgoKSA9PiB7XG4gIC8vIERPTUV4Y2VwdGlvbiB3YXMgb25seSBtYWRlIGEgZ2xvYmFsIGluIE5vZGUgdjE3LjAuMCxcbiAgLy8gYnV0IGZldGNoIHN1cHBvcnRzID49IHYxNi44LlxuICB0cnkge1xuICAgIGF0b2IoJ34nKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKGVycikuY29uc3RydWN0b3JcbiAgfVxufSkoKVxuXG5sZXQgY2hhbm5lbFxuXG4vKiogQHR5cGUge2dsb2JhbFRoaXNbJ3N0cnVjdHVyZWRDbG9uZSddfSAqL1xuY29uc3Qgc3RydWN0dXJlZENsb25lID1cbiAgZ2xvYmFsVGhpcy5zdHJ1Y3R1cmVkQ2xvbmUgPz9cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL2Jsb2IvYjI3YWUyNGRjYzQyNTFiYWQ3MjZkOWQ4NGJhZjY3OGQxZjcwN2ZlZC9saWIvaW50ZXJuYWwvc3RydWN0dXJlZF9jbG9uZS5qc1xuICAvLyBzdHJ1Y3R1cmVkQ2xvbmUgd2FzIGFkZGVkIGluIHYxNy4wLjAsIGJ1dCBmZXRjaCBzdXBwb3J0cyB2MTYuOFxuICBmdW5jdGlvbiBzdHJ1Y3R1cmVkQ2xvbmUgKHZhbHVlLCBvcHRpb25zID0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ21pc3NpbmcgYXJndW1lbnQnKVxuICAgIH1cblxuICAgIGlmICghY2hhbm5lbCkge1xuICAgICAgY2hhbm5lbCA9IG5ldyBNZXNzYWdlQ2hhbm5lbCgpXG4gICAgfVxuICAgIGNoYW5uZWwucG9ydDEudW5yZWYoKVxuICAgIGNoYW5uZWwucG9ydDIudW5yZWYoKVxuICAgIGNoYW5uZWwucG9ydDEucG9zdE1lc3NhZ2UodmFsdWUsIG9wdGlvbnM/LnRyYW5zZmVyKVxuICAgIHJldHVybiByZWNlaXZlTWVzc2FnZU9uUG9ydChjaGFubmVsLnBvcnQyKS5tZXNzYWdlXG4gIH1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIERPTUV4Y2VwdGlvbixcbiAgc3RydWN0dXJlZENsb25lLFxuICBzdWJyZXNvdXJjZSxcbiAgZm9yYmlkZGVuTWV0aG9kcyxcbiAgcmVxdWVzdEJvZHlIZWFkZXIsXG4gIHJlZmVycmVyUG9saWN5LFxuICByZXF1ZXN0UmVkaXJlY3QsXG4gIHJlcXVlc3RNb2RlLFxuICByZXF1ZXN0Q3JlZGVudGlhbHMsXG4gIHJlcXVlc3RDYWNoZSxcbiAgcmVkaXJlY3RTdGF0dXMsXG4gIGNvcnNTYWZlTGlzdGVkTWV0aG9kcyxcbiAgbnVsbEJvZHlTdGF0dXMsXG4gIHNhZmVNZXRob2RzLFxuICBiYWRQb3J0cyxcbiAgcmVxdWVzdER1cGxleCxcbiAgc3VicmVzb3VyY2VTZXQsXG4gIGJhZFBvcnRzU2V0LFxuICByZWRpcmVjdFN0YXR1c1NldCxcbiAgY29yc1NhZmVMaXN0ZWRNZXRob2RzU2V0LFxuICBzYWZlTWV0aG9kc1NldCxcbiAgZm9yYmlkZGVuTWV0aG9kc1NldCxcbiAgcmVmZXJyZXJQb2xpY3lTZXRcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLy8gSW4gY2FzZSBvZiBicmVha2luZyBjaGFuZ2VzLCBpbmNyZWFzZSB0aGUgdmVyc2lvblxuLy8gbnVtYmVyIHRvIGF2b2lkIGNvbmZsaWN0cy5cbmNvbnN0IGdsb2JhbE9yaWdpbiA9IFN5bWJvbC5mb3IoJ3VuZGljaS5nbG9iYWxPcmlnaW4uMScpXG5cbmZ1bmN0aW9uIGdldEdsb2JhbE9yaWdpbiAoKSB7XG4gIHJldHVybiBnbG9iYWxUaGlzW2dsb2JhbE9yaWdpbl1cbn1cblxuZnVuY3Rpb24gc2V0R2xvYmFsT3JpZ2luIChuZXdPcmlnaW4pIHtcbiAgaWYgKG5ld09yaWdpbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGdsb2JhbFRoaXMsIGdsb2JhbE9yaWdpbiwge1xuICAgICAgdmFsdWU6IHVuZGVmaW5lZCxcbiAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlXG4gICAgfSlcblxuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgcGFyc2VkVVJMID0gbmV3IFVSTChuZXdPcmlnaW4pXG5cbiAgaWYgKHBhcnNlZFVSTC5wcm90b2NvbCAhPT0gJ2h0dHA6JyAmJiBwYXJzZWRVUkwucHJvdG9jb2wgIT09ICdodHRwczonKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgT25seSBodHRwICYgaHR0cHMgdXJscyBhcmUgYWxsb3dlZCwgcmVjZWl2ZWQgJHtwYXJzZWRVUkwucHJvdG9jb2x9YClcbiAgfVxuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShnbG9iYWxUaGlzLCBnbG9iYWxPcmlnaW4sIHtcbiAgICB2YWx1ZTogcGFyc2VkVVJMLFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgIGNvbmZpZ3VyYWJsZTogZmFsc2VcbiAgfSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGdldEdsb2JhbE9yaWdpbixcbiAgc2V0R2xvYmFsT3JpZ2luXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcmVkaXJlY3RTdGF0dXNTZXQsIHJlZmVycmVyUG9saWN5U2V0OiByZWZlcnJlclBvbGljeVRva2VucywgYmFkUG9ydHNTZXQgfSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsgZ2V0R2xvYmFsT3JpZ2luIH0gPSByZXF1aXJlKCcuL2dsb2JhbCcpXG5jb25zdCB7IHBlcmZvcm1hbmNlIH0gPSByZXF1aXJlKCdwZXJmX2hvb2tzJylcbmNvbnN0IHsgaXNCbG9iTGlrZSwgdG9VU1ZTdHJpbmcsIFJlYWRhYmxlU3RyZWFtRnJvbSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7IGlzVWludDhBcnJheSB9ID0gcmVxdWlyZSgndXRpbC90eXBlcycpXG5cbmxldCBzdXBwb3J0ZWRIYXNoZXMgPSBbXVxuXG4vLyBodHRwczovL25vZGVqcy5vcmcvYXBpL2NyeXB0by5odG1sI2RldGVybWluaW5nLWlmLWNyeXB0by1zdXBwb3J0LWlzLXVuYXZhaWxhYmxlXG4vKiogQHR5cGUge2ltcG9ydCgnY3J5cHRvJyl8dW5kZWZpbmVkfSAqL1xubGV0IGNyeXB0b1xuXG50cnkge1xuICBjcnlwdG8gPSByZXF1aXJlKCdjcnlwdG8nKVxuICBjb25zdCBwb3NzaWJsZVJlbGV2YW50SGFzaGVzID0gWydzaGEyNTYnLCAnc2hhMzg0JywgJ3NoYTUxMiddXG4gIHN1cHBvcnRlZEhhc2hlcyA9IGNyeXB0by5nZXRIYXNoZXMoKS5maWx0ZXIoKGhhc2gpID0+IHBvc3NpYmxlUmVsZXZhbnRIYXNoZXMuaW5jbHVkZXMoaGFzaCkpXG4vKiBjOCBpZ25vcmUgbmV4dCAzICovXG59IGNhdGNoIHtcbn1cblxuZnVuY3Rpb24gcmVzcG9uc2VVUkwgKHJlc3BvbnNlKSB7XG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXNwb25zZXNcbiAgLy8gQSByZXNwb25zZSBoYXMgYW4gYXNzb2NpYXRlZCBVUkwuIEl0IGlzIGEgcG9pbnRlciB0byB0aGUgbGFzdCBVUkxcbiAgLy8gaW4gcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0IGFuZCBudWxsIGlmIHJlc3BvbnNlXHUyMDE5cyBVUkwgbGlzdCBpcyBlbXB0eS5cbiAgY29uc3QgdXJsTGlzdCA9IHJlc3BvbnNlLnVybExpc3RcbiAgY29uc3QgbGVuZ3RoID0gdXJsTGlzdC5sZW5ndGhcbiAgcmV0dXJuIGxlbmd0aCA9PT0gMCA/IG51bGwgOiB1cmxMaXN0W2xlbmd0aCAtIDFdLnRvU3RyaW5nKClcbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtcmVzcG9uc2UtbG9jYXRpb24tdXJsXG5mdW5jdGlvbiByZXNwb25zZUxvY2F0aW9uVVJMIChyZXNwb25zZSwgcmVxdWVzdEZyYWdtZW50KSB7XG4gIC8vIDEuIElmIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgbm90IGEgcmVkaXJlY3Qgc3RhdHVzLCB0aGVuIHJldHVybiBudWxsLlxuICBpZiAoIXJlZGlyZWN0U3RhdHVzU2V0LmhhcyhyZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIC8vIDIuIExldCBsb2NhdGlvbiBiZSB0aGUgcmVzdWx0IG9mIGV4dHJhY3RpbmcgaGVhZGVyIGxpc3QgdmFsdWVzIGdpdmVuXG4gIC8vIGBMb2NhdGlvbmAgYW5kIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgbGV0IGxvY2F0aW9uID0gcmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdsb2NhdGlvbicpXG5cbiAgLy8gMy4gSWYgbG9jYXRpb24gaXMgYSBoZWFkZXIgdmFsdWUsIHRoZW4gc2V0IGxvY2F0aW9uIHRvIHRoZSByZXN1bHQgb2ZcbiAgLy8gICAgcGFyc2luZyBsb2NhdGlvbiB3aXRoIHJlc3BvbnNlXHUyMDE5cyBVUkwuXG4gIGlmIChsb2NhdGlvbiAhPT0gbnVsbCAmJiBpc1ZhbGlkSGVhZGVyVmFsdWUobG9jYXRpb24pKSB7XG4gICAgbG9jYXRpb24gPSBuZXcgVVJMKGxvY2F0aW9uLCByZXNwb25zZVVSTChyZXNwb25zZSkpXG4gIH1cblxuICAvLyA0LiBJZiBsb2NhdGlvbiBpcyBhIFVSTCB3aG9zZSBmcmFnbWVudCBpcyBudWxsLCB0aGVuIHNldCBsb2NhdGlvblx1MjAxOXNcbiAgLy8gZnJhZ21lbnQgdG8gcmVxdWVzdEZyYWdtZW50LlxuICBpZiAobG9jYXRpb24gJiYgIWxvY2F0aW9uLmhhc2gpIHtcbiAgICBsb2NhdGlvbi5oYXNoID0gcmVxdWVzdEZyYWdtZW50XG4gIH1cblxuICAvLyA1LiBSZXR1cm4gbG9jYXRpb24uXG4gIHJldHVybiBsb2NhdGlvblxufVxuXG4vKiogQHJldHVybnMge1VSTH0gKi9cbmZ1bmN0aW9uIHJlcXVlc3RDdXJyZW50VVJMIChyZXF1ZXN0KSB7XG4gIHJldHVybiByZXF1ZXN0LnVybExpc3RbcmVxdWVzdC51cmxMaXN0Lmxlbmd0aCAtIDFdXG59XG5cbmZ1bmN0aW9uIHJlcXVlc3RCYWRQb3J0IChyZXF1ZXN0KSB7XG4gIC8vIDEuIExldCB1cmwgYmUgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkwuXG4gIGNvbnN0IHVybCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG5cbiAgLy8gMi4gSWYgdXJsXHUyMDE5cyBzY2hlbWUgaXMgYW4gSFRUUChTKSBzY2hlbWUgYW5kIHVybFx1MjAxOXMgcG9ydCBpcyBhIGJhZCBwb3J0LFxuICAvLyB0aGVuIHJldHVybiBibG9ja2VkLlxuICBpZiAodXJsSXNIdHRwSHR0cHNTY2hlbWUodXJsKSAmJiBiYWRQb3J0c1NldC5oYXModXJsLnBvcnQpKSB7XG4gICAgcmV0dXJuICdibG9ja2VkJ1xuICB9XG5cbiAgLy8gMy4gUmV0dXJuIGFsbG93ZWQuXG4gIHJldHVybiAnYWxsb3dlZCdcbn1cblxuZnVuY3Rpb24gaXNFcnJvckxpa2UgKG9iamVjdCkge1xuICByZXR1cm4gb2JqZWN0IGluc3RhbmNlb2YgRXJyb3IgfHwgKFxuICAgIG9iamVjdD8uY29uc3RydWN0b3I/Lm5hbWUgPT09ICdFcnJvcicgfHxcbiAgICBvYmplY3Q/LmNvbnN0cnVjdG9yPy5uYW1lID09PSAnRE9NRXhjZXB0aW9uJ1xuICApXG59XG5cbi8vIENoZWNrIHdoZXRoZXIgfHN0YXR1c1RleHR8IGlzIGEgQnl0ZVN0cmluZyBhbmRcbi8vIG1hdGNoZXMgdGhlIFJlYXNvbi1QaHJhc2UgdG9rZW4gcHJvZHVjdGlvbi5cbi8vIFJGQyAyNjE2OiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMjYxNlxuLy8gUkZDIDcyMzA6IGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMwXG4vLyBcInJlYXNvbi1waHJhc2UgPSAqKCBIVEFCIC8gU1AgLyBWQ0hBUiAvIG9icy10ZXh0IClcIlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2Nocm9taXVtL2Nocm9taXVtL2Jsb2IvOTQuMC40NjA0LjEvdGhpcmRfcGFydHkvYmxpbmsvcmVuZGVyZXIvY29yZS9mZXRjaC9yZXNwb25zZS5jYyNMMTE2XG5mdW5jdGlvbiBpc1ZhbGlkUmVhc29uUGhyYXNlIChzdGF0dXNUZXh0KSB7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc3RhdHVzVGV4dC5sZW5ndGg7ICsraSkge1xuICAgIGNvbnN0IGMgPSBzdGF0dXNUZXh0LmNoYXJDb2RlQXQoaSlcbiAgICBpZiAoXG4gICAgICAhKFxuICAgICAgICAoXG4gICAgICAgICAgYyA9PT0gMHgwOSB8fCAvLyBIVEFCXG4gICAgICAgICAgKGMgPj0gMHgyMCAmJiBjIDw9IDB4N2UpIHx8IC8vIFNQIC8gVkNIQVJcbiAgICAgICAgICAoYyA+PSAweDgwICYmIGMgPD0gMHhmZilcbiAgICAgICAgKSAvLyBvYnMtdGV4dFxuICAgICAgKVxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMCNzZWN0aW9uLTMuMi42XG4gKiBAcGFyYW0ge251bWJlcn0gY1xuICovXG5mdW5jdGlvbiBpc1Rva2VuQ2hhckNvZGUgKGMpIHtcbiAgc3dpdGNoIChjKSB7XG4gICAgY2FzZSAweDIyOlxuICAgIGNhc2UgMHgyODpcbiAgICBjYXNlIDB4Mjk6XG4gICAgY2FzZSAweDJjOlxuICAgIGNhc2UgMHgyZjpcbiAgICBjYXNlIDB4M2E6XG4gICAgY2FzZSAweDNiOlxuICAgIGNhc2UgMHgzYzpcbiAgICBjYXNlIDB4M2Q6XG4gICAgY2FzZSAweDNlOlxuICAgIGNhc2UgMHgzZjpcbiAgICBjYXNlIDB4NDA6XG4gICAgY2FzZSAweDViOlxuICAgIGNhc2UgMHg1YzpcbiAgICBjYXNlIDB4NWQ6XG4gICAgY2FzZSAweDdiOlxuICAgIGNhc2UgMHg3ZDpcbiAgICAgIC8vIERRVU9URSBhbmQgXCIoKSwvOjs8PT4/QFtcXF17fVwiXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICBkZWZhdWx0OlxuICAgICAgLy8gVkNIQVIgJXgyMS03RVxuICAgICAgcmV0dXJuIGMgPj0gMHgyMSAmJiBjIDw9IDB4N2VcbiAgfVxufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSBjaGFyYWN0ZXJzXG4gKi9cbmZ1bmN0aW9uIGlzVmFsaWRIVFRQVG9rZW4gKGNoYXJhY3RlcnMpIHtcbiAgaWYgKGNoYXJhY3RlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFyYWN0ZXJzLmxlbmd0aDsgKytpKSB7XG4gICAgaWYgKCFpc1Rva2VuQ2hhckNvZGUoY2hhcmFjdGVycy5jaGFyQ29kZUF0KGkpKSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaGVhZGVyLW5hbWVcbiAqIEBwYXJhbSB7c3RyaW5nfSBwb3RlbnRpYWxWYWx1ZVxuICovXG5mdW5jdGlvbiBpc1ZhbGlkSGVhZGVyTmFtZSAocG90ZW50aWFsVmFsdWUpIHtcbiAgcmV0dXJuIGlzVmFsaWRIVFRQVG9rZW4ocG90ZW50aWFsVmFsdWUpXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaGVhZGVyLXZhbHVlXG4gKiBAcGFyYW0ge3N0cmluZ30gcG90ZW50aWFsVmFsdWVcbiAqL1xuZnVuY3Rpb24gaXNWYWxpZEhlYWRlclZhbHVlIChwb3RlbnRpYWxWYWx1ZSkge1xuICAvLyAtIEhhcyBubyBsZWFkaW5nIG9yIHRyYWlsaW5nIEhUVFAgdGFiIG9yIHNwYWNlIGJ5dGVzLlxuICAvLyAtIENvbnRhaW5zIG5vIDB4MDAgKE5VTCkgb3IgSFRUUCBuZXdsaW5lIGJ5dGVzLlxuICBpZiAoXG4gICAgcG90ZW50aWFsVmFsdWUuc3RhcnRzV2l0aCgnXFx0JykgfHxcbiAgICBwb3RlbnRpYWxWYWx1ZS5zdGFydHNXaXRoKCcgJykgfHxcbiAgICBwb3RlbnRpYWxWYWx1ZS5lbmRzV2l0aCgnXFx0JykgfHxcbiAgICBwb3RlbnRpYWxWYWx1ZS5lbmRzV2l0aCgnICcpXG4gICkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgaWYgKFxuICAgIHBvdGVudGlhbFZhbHVlLmluY2x1ZGVzKCdcXDAnKSB8fFxuICAgIHBvdGVudGlhbFZhbHVlLmluY2x1ZGVzKCdcXHInKSB8fFxuICAgIHBvdGVudGlhbFZhbHVlLmluY2x1ZGVzKCdcXG4nKVxuICApIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyNzZXQtcmVxdWVzdHMtcmVmZXJyZXItcG9saWN5LW9uLXJlZGlyZWN0XG5mdW5jdGlvbiBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0IChyZXF1ZXN0LCBhY3R1YWxSZXNwb25zZSkge1xuICAvLyAgR2l2ZW4gYSByZXF1ZXN0IHJlcXVlc3QgYW5kIGEgcmVzcG9uc2UgYWN0dWFsUmVzcG9uc2UsIHRoaXMgYWxnb3JpdGhtXG4gIC8vICB1cGRhdGVzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeSBhY2NvcmRpbmcgdG8gdGhlIFJlZmVycmVyLVBvbGljeVxuICAvLyAgaGVhZGVyIChpZiBhbnkpIGluIGFjdHVhbFJlc3BvbnNlLlxuXG4gIC8vIDEuIExldCBwb2xpY3kgYmUgdGhlIHJlc3VsdCBvZiBleGVjdXRpbmcgXHUwMEE3IDguMSBQYXJzZSBhIHJlZmVycmVyIHBvbGljeVxuICAvLyBmcm9tIGEgUmVmZXJyZXItUG9saWN5IGhlYWRlciBvbiBhY3R1YWxSZXNwb25zZS5cblxuICAvLyA4LjEgUGFyc2UgYSByZWZlcnJlciBwb2xpY3kgZnJvbSBhIFJlZmVycmVyLVBvbGljeSBoZWFkZXJcbiAgLy8gMS4gTGV0IHBvbGljeS10b2tlbnMgYmUgdGhlIHJlc3VsdCBvZiBleHRyYWN0aW5nIGhlYWRlciBsaXN0IHZhbHVlcyBnaXZlbiBgUmVmZXJyZXItUG9saWN5YCBhbmQgcmVzcG9uc2VcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBjb25zdCB7IGhlYWRlcnNMaXN0IH0gPSBhY3R1YWxSZXNwb25zZVxuICAvLyAyLiBMZXQgcG9saWN5IGJlIHRoZSBlbXB0eSBzdHJpbmcuXG4gIC8vIDMuIEZvciBlYWNoIHRva2VuIGluIHBvbGljeS10b2tlbnMsIGlmIHRva2VuIGlzIGEgcmVmZXJyZXIgcG9saWN5IGFuZCB0b2tlbiBpcyBub3QgdGhlIGVtcHR5IHN0cmluZywgdGhlbiBzZXQgcG9saWN5IHRvIHRva2VuLlxuICAvLyA0LiBSZXR1cm4gcG9saWN5LlxuICBjb25zdCBwb2xpY3lIZWFkZXIgPSAoaGVhZGVyc0xpc3QuZ2V0KCdyZWZlcnJlci1wb2xpY3knKSA/PyAnJykuc3BsaXQoJywnKVxuXG4gIC8vIE5vdGU6IEFzIHRoZSByZWZlcnJlci1wb2xpY3kgY2FuIGNvbnRhaW4gbXVsdGlwbGUgcG9saWNpZXNcbiAgLy8gc2VwYXJhdGVkIGJ5IGNvbW1hLCB3ZSBuZWVkIHRvIGxvb3AgdGhyb3VnaCBhbGwgb2YgdGhlbVxuICAvLyBhbmQgcGljayB0aGUgZmlyc3QgdmFsaWQgb25lLlxuICAvLyBSZWY6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvSGVhZGVycy9SZWZlcnJlci1Qb2xpY3kjc3BlY2lmeV9hX2ZhbGxiYWNrX3BvbGljeVxuICBsZXQgcG9saWN5ID0gJydcbiAgaWYgKHBvbGljeUhlYWRlci5sZW5ndGggPiAwKSB7XG4gICAgLy8gVGhlIHJpZ2h0LW1vc3QgcG9saWN5IHRha2VzIHByZWNlZGVuY2UuXG4gICAgLy8gVGhlIGxlZnQtbW9zdCBwb2xpY3kgaXMgdGhlIGZhbGxiYWNrLlxuICAgIGZvciAobGV0IGkgPSBwb2xpY3lIZWFkZXIubGVuZ3RoOyBpICE9PSAwOyBpLS0pIHtcbiAgICAgIGNvbnN0IHRva2VuID0gcG9saWN5SGVhZGVyW2kgLSAxXS50cmltKClcbiAgICAgIGlmIChyZWZlcnJlclBvbGljeVRva2Vucy5oYXModG9rZW4pKSB7XG4gICAgICAgIHBvbGljeSA9IHRva2VuXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gMi4gSWYgcG9saWN5IGlzIG5vdCB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyByZWZlcnJlciBwb2xpY3kgdG8gcG9saWN5LlxuICBpZiAocG9saWN5ICE9PSAnJykge1xuICAgIHJlcXVlc3QucmVmZXJyZXJQb2xpY3kgPSBwb2xpY3lcbiAgfVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY3Jvc3Mtb3JpZ2luLXJlc291cmNlLXBvbGljeS1jaGVja1xuZnVuY3Rpb24gY3Jvc3NPcmlnaW5SZXNvdXJjZVBvbGljeUNoZWNrICgpIHtcbiAgLy8gVE9ET1xuICByZXR1cm4gJ2FsbG93ZWQnXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWNvcnMtY2hlY2tcbmZ1bmN0aW9uIGNvcnNDaGVjayAoKSB7XG4gIC8vIFRPRE9cbiAgcmV0dXJuICdzdWNjZXNzJ1xufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC10YW8tY2hlY2tcbmZ1bmN0aW9uIFRBT0NoZWNrICgpIHtcbiAgLy8gVE9ET1xuICByZXR1cm4gJ3N1Y2Nlc3MnXG59XG5cbmZ1bmN0aW9uIGFwcGVuZEZldGNoTWV0YWRhdGEgKGh0dHBSZXF1ZXN0KSB7XG4gIC8vICBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLWZldGNoLW1ldGFkYXRhLyNzZWMtZmV0Y2gtZGVzdC1oZWFkZXJcbiAgLy8gIFRPRE9cblxuICAvLyAgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3dlYmFwcHNlYy1mZXRjaC1tZXRhZGF0YS8jc2VjLWZldGNoLW1vZGUtaGVhZGVyXG5cbiAgLy8gIDEuIEFzc2VydDogclx1MjAxOXMgdXJsIGlzIGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMLlxuICAvLyAgVE9ET1xuXG4gIC8vICAyLiBMZXQgaGVhZGVyIGJlIGEgU3RydWN0dXJlZCBIZWFkZXIgd2hvc2UgdmFsdWUgaXMgYSB0b2tlbi5cbiAgbGV0IGhlYWRlciA9IG51bGxcblxuICAvLyAgMy4gU2V0IGhlYWRlclx1MjAxOXMgdmFsdWUgdG8gclx1MjAxOXMgbW9kZS5cbiAgaGVhZGVyID0gaHR0cFJlcXVlc3QubW9kZVxuXG4gIC8vICA0LiBTZXQgYSBzdHJ1Y3R1cmVkIGZpZWxkIHZhbHVlIGBTZWMtRmV0Y2gtTW9kZWAvaGVhZGVyIGluIHJcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5zZXQoJ3NlYy1mZXRjaC1tb2RlJywgaGVhZGVyKVxuXG4gIC8vICBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLWZldGNoLW1ldGFkYXRhLyNzZWMtZmV0Y2gtc2l0ZS1oZWFkZXJcbiAgLy8gIFRPRE9cblxuICAvLyAgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3dlYmFwcHNlYy1mZXRjaC1tZXRhZGF0YS8jc2VjLWZldGNoLXVzZXItaGVhZGVyXG4gIC8vICBUT0RPXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNhcHBlbmQtYS1yZXF1ZXN0LW9yaWdpbi1oZWFkZXJcbmZ1bmN0aW9uIGFwcGVuZFJlcXVlc3RPcmlnaW5IZWFkZXIgKHJlcXVlc3QpIHtcbiAgLy8gMS4gTGV0IHNlcmlhbGl6ZWRPcmlnaW4gYmUgdGhlIHJlc3VsdCBvZiBieXRlLXNlcmlhbGl6aW5nIGEgcmVxdWVzdCBvcmlnaW4gd2l0aCByZXF1ZXN0LlxuICBsZXQgc2VyaWFsaXplZE9yaWdpbiA9IHJlcXVlc3Qub3JpZ2luXG5cbiAgLy8gMi4gSWYgcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgaXMgXCJjb3JzXCIgb3IgcmVxdWVzdFx1MjAxOXMgbW9kZSBpcyBcIndlYnNvY2tldFwiLCB0aGVuIGFwcGVuZCAoYE9yaWdpbmAsIHNlcmlhbGl6ZWRPcmlnaW4pIHRvIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAocmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnY29ycycgfHwgcmVxdWVzdC5tb2RlID09PSAnd2Vic29ja2V0Jykge1xuICAgIGlmIChzZXJpYWxpemVkT3JpZ2luKSB7XG4gICAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnb3JpZ2luJywgc2VyaWFsaXplZE9yaWdpbilcbiAgICB9XG5cbiAgLy8gMy4gT3RoZXJ3aXNlLCBpZiByZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgbmVpdGhlciBgR0VUYCBub3IgYEhFQURgLCB0aGVuOlxuICB9IGVsc2UgaWYgKHJlcXVlc3QubWV0aG9kICE9PSAnR0VUJyAmJiByZXF1ZXN0Lm1ldGhvZCAhPT0gJ0hFQUQnKSB7XG4gICAgLy8gMS4gU3dpdGNoIG9uIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeTpcbiAgICBzd2l0Y2ggKHJlcXVlc3QucmVmZXJyZXJQb2xpY3kpIHtcbiAgICAgIGNhc2UgJ25vLXJlZmVycmVyJzpcbiAgICAgICAgLy8gU2V0IHNlcmlhbGl6ZWRPcmlnaW4gdG8gYG51bGxgLlxuICAgICAgICBzZXJpYWxpemVkT3JpZ2luID0gbnVsbFxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnbm8tcmVmZXJyZXItd2hlbi1kb3duZ3JhZGUnOlxuICAgICAgY2FzZSAnc3RyaWN0LW9yaWdpbic6XG4gICAgICBjYXNlICdzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJzpcbiAgICAgICAgLy8gSWYgcmVxdWVzdFx1MjAxOXMgb3JpZ2luIGlzIGEgdHVwbGUgb3JpZ2luLCBpdHMgc2NoZW1lIGlzIFwiaHR0cHNcIiwgYW5kIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBzY2hlbWUgaXMgbm90IFwiaHR0cHNcIiwgdGhlbiBzZXQgc2VyaWFsaXplZE9yaWdpbiB0byBgbnVsbGAuXG4gICAgICAgIGlmIChyZXF1ZXN0Lm9yaWdpbiAmJiB1cmxIYXNIdHRwc1NjaGVtZShyZXF1ZXN0Lm9yaWdpbikgJiYgIXVybEhhc0h0dHBzU2NoZW1lKHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpKSkge1xuICAgICAgICAgIHNlcmlhbGl6ZWRPcmlnaW4gPSBudWxsXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ3NhbWUtb3JpZ2luJzpcbiAgICAgICAgLy8gSWYgcmVxdWVzdFx1MjAxOXMgb3JpZ2luIGlzIG5vdCBzYW1lIG9yaWdpbiB3aXRoIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBvcmlnaW4sIHRoZW4gc2V0IHNlcmlhbGl6ZWRPcmlnaW4gdG8gYG51bGxgLlxuICAgICAgICBpZiAoIXNhbWVPcmlnaW4ocmVxdWVzdCwgcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCkpKSB7XG4gICAgICAgICAgc2VyaWFsaXplZE9yaWdpbiA9IG51bGxcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLy8gRG8gbm90aGluZy5cbiAgICB9XG5cbiAgICBpZiAoc2VyaWFsaXplZE9yaWdpbikge1xuICAgICAgLy8gMi4gQXBwZW5kIChgT3JpZ2luYCwgc2VyaWFsaXplZE9yaWdpbikgdG8gcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnb3JpZ2luJywgc2VyaWFsaXplZE9yaWdpbilcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gY29hcnNlbmVkU2hhcmVkQ3VycmVudFRpbWUgKGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5KSB7XG4gIC8vIFRPRE9cbiAgcmV0dXJuIHBlcmZvcm1hbmNlLm5vdygpXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjcmVhdGUtYW4tb3BhcXVlLXRpbWluZy1pbmZvXG5mdW5jdGlvbiBjcmVhdGVPcGFxdWVUaW1pbmdJbmZvICh0aW1pbmdJbmZvKSB7XG4gIHJldHVybiB7XG4gICAgc3RhcnRUaW1lOiB0aW1pbmdJbmZvLnN0YXJ0VGltZSA/PyAwLFxuICAgIHJlZGlyZWN0U3RhcnRUaW1lOiAwLFxuICAgIHJlZGlyZWN0RW5kVGltZTogMCxcbiAgICBwb3N0UmVkaXJlY3RTdGFydFRpbWU6IHRpbWluZ0luZm8uc3RhcnRUaW1lID8/IDAsXG4gICAgZmluYWxTZXJ2aWNlV29ya2VyU3RhcnRUaW1lOiAwLFxuICAgIGZpbmFsTmV0d29ya1Jlc3BvbnNlU3RhcnRUaW1lOiAwLFxuICAgIGZpbmFsTmV0d29ya1JlcXVlc3RTdGFydFRpbWU6IDAsXG4gICAgZW5kVGltZTogMCxcbiAgICBlbmNvZGVkQm9keVNpemU6IDAsXG4gICAgZGVjb2RlZEJvZHlTaXplOiAwLFxuICAgIGZpbmFsQ29ubmVjdGlvblRpbWluZ0luZm86IG51bGxcbiAgfVxufVxuXG4vLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9vcmlnaW4uaHRtbCNwb2xpY3ktY29udGFpbmVyXG5mdW5jdGlvbiBtYWtlUG9saWN5Q29udGFpbmVyICgpIHtcbiAgLy8gTm90ZTogdGhlIGZldGNoIHNwZWMgZG9lc24ndCBtYWtlIHVzZSBvZiBlbWJlZGRlciBwb2xpY3kgb3IgQ1NQIGxpc3RcbiAgcmV0dXJuIHtcbiAgICByZWZlcnJlclBvbGljeTogJ3N0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4nXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvb3JpZ2luLmh0bWwjY2xvbmUtYS1wb2xpY3ktY29udGFpbmVyXG5mdW5jdGlvbiBjbG9uZVBvbGljeUNvbnRhaW5lciAocG9saWN5Q29udGFpbmVyKSB7XG4gIHJldHVybiB7XG4gICAgcmVmZXJyZXJQb2xpY3k6IHBvbGljeUNvbnRhaW5lci5yZWZlcnJlclBvbGljeVxuICB9XG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyNkZXRlcm1pbmUtcmVxdWVzdHMtcmVmZXJyZXJcbmZ1bmN0aW9uIGRldGVybWluZVJlcXVlc3RzUmVmZXJyZXIgKHJlcXVlc3QpIHtcbiAgLy8gMS4gTGV0IHBvbGljeSBiZSByZXF1ZXN0J3MgcmVmZXJyZXIgcG9saWN5LlxuICBjb25zdCBwb2xpY3kgPSByZXF1ZXN0LnJlZmVycmVyUG9saWN5XG5cbiAgLy8gTm90ZTogcG9saWN5IGNhbm5vdCAoc2hvdWxkbid0KSBiZSBudWxsIG9yIGFuIGVtcHR5IHN0cmluZy5cbiAgYXNzZXJ0KHBvbGljeSlcblxuICAvLyAyLiBMZXQgZW52aXJvbm1lbnQgYmUgcmVxdWVzdFx1MjAxOXMgY2xpZW50LlxuXG4gIGxldCByZWZlcnJlclNvdXJjZSA9IG51bGxcblxuICAvLyAzLiBTd2l0Y2ggb24gcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXI6XG4gIGlmIChyZXF1ZXN0LnJlZmVycmVyID09PSAnY2xpZW50Jykge1xuICAgIC8vIE5vdGU6IG5vZGUgaXNuJ3QgYSBicm93c2VyIGFuZCBkb2Vzbid0IGltcGxlbWVudCBkb2N1bWVudC9pZnJhbWVzLFxuICAgIC8vIHNvIHdlIGJ5cGFzcyB0aGlzIHN0ZXAgYW5kIHJlcGxhY2UgaXQgd2l0aCBvdXIgb3duLlxuXG4gICAgY29uc3QgZ2xvYmFsT3JpZ2luID0gZ2V0R2xvYmFsT3JpZ2luKClcblxuICAgIGlmICghZ2xvYmFsT3JpZ2luIHx8IGdsb2JhbE9yaWdpbi5vcmlnaW4gPT09ICdudWxsJykge1xuICAgICAgcmV0dXJuICduby1yZWZlcnJlcidcbiAgICB9XG5cbiAgICAvLyBub3RlOiB3ZSBuZWVkIHRvIGNsb25lIGl0IGFzIGl0J3MgbXV0YXRlZFxuICAgIHJlZmVycmVyU291cmNlID0gbmV3IFVSTChnbG9iYWxPcmlnaW4pXG4gIH0gZWxzZSBpZiAocmVxdWVzdC5yZWZlcnJlciBpbnN0YW5jZW9mIFVSTCkge1xuICAgIC8vIExldCByZWZlcnJlclNvdXJjZSBiZSByZXF1ZXN0XHUyMDE5cyByZWZlcnJlci5cbiAgICByZWZlcnJlclNvdXJjZSA9IHJlcXVlc3QucmVmZXJyZXJcbiAgfVxuXG4gIC8vIDQuIExldCByZXF1ZXN0XHUyMDE5cyByZWZlcnJlclVSTCBiZSB0aGUgcmVzdWx0IG9mIHN0cmlwcGluZyByZWZlcnJlclNvdXJjZSBmb3JcbiAgLy8gICAgdXNlIGFzIGEgcmVmZXJyZXIuXG4gIGxldCByZWZlcnJlclVSTCA9IHN0cmlwVVJMRm9yUmVmZXJyZXIocmVmZXJyZXJTb3VyY2UpXG5cbiAgLy8gNS4gTGV0IHJlZmVycmVyT3JpZ2luIGJlIHRoZSByZXN1bHQgb2Ygc3RyaXBwaW5nIHJlZmVycmVyU291cmNlIGZvciB1c2UgYXNcbiAgLy8gICAgYSByZWZlcnJlciwgd2l0aCB0aGUgb3JpZ2luLW9ubHkgZmxhZyBzZXQgdG8gdHJ1ZS5cbiAgY29uc3QgcmVmZXJyZXJPcmlnaW4gPSBzdHJpcFVSTEZvclJlZmVycmVyKHJlZmVycmVyU291cmNlLCB0cnVlKVxuXG4gIC8vIDYuIElmIHRoZSByZXN1bHQgb2Ygc2VyaWFsaXppbmcgcmVmZXJyZXJVUkwgaXMgYSBzdHJpbmcgd2hvc2UgbGVuZ3RoIGlzXG4gIC8vICAgIGdyZWF0ZXIgdGhhbiA0MDk2LCBzZXQgcmVmZXJyZXJVUkwgdG8gcmVmZXJyZXJPcmlnaW4uXG4gIGlmIChyZWZlcnJlclVSTC50b1N0cmluZygpLmxlbmd0aCA+IDQwOTYpIHtcbiAgICByZWZlcnJlclVSTCA9IHJlZmVycmVyT3JpZ2luXG4gIH1cblxuICBjb25zdCBhcmVTYW1lT3JpZ2luID0gc2FtZU9yaWdpbihyZXF1ZXN0LCByZWZlcnJlclVSTClcbiAgY29uc3QgaXNOb25Qb3RlbnRpYWxseVRydXN0V29ydGh5ID0gaXNVUkxQb3RlbnRpYWxseVRydXN0d29ydGh5KHJlZmVycmVyVVJMKSAmJlxuICAgICFpc1VSTFBvdGVudGlhbGx5VHJ1c3R3b3J0aHkocmVxdWVzdC51cmwpXG5cbiAgLy8gOC4gRXhlY3V0ZSB0aGUgc3dpdGNoIHN0YXRlbWVudHMgY29ycmVzcG9uZGluZyB0byB0aGUgdmFsdWUgb2YgcG9saWN5OlxuICBzd2l0Y2ggKHBvbGljeSkge1xuICAgIGNhc2UgJ29yaWdpbic6IHJldHVybiByZWZlcnJlck9yaWdpbiAhPSBudWxsID8gcmVmZXJyZXJPcmlnaW4gOiBzdHJpcFVSTEZvclJlZmVycmVyKHJlZmVycmVyU291cmNlLCB0cnVlKVxuICAgIGNhc2UgJ3Vuc2FmZS11cmwnOiByZXR1cm4gcmVmZXJyZXJVUkxcbiAgICBjYXNlICdzYW1lLW9yaWdpbic6XG4gICAgICByZXR1cm4gYXJlU2FtZU9yaWdpbiA/IHJlZmVycmVyT3JpZ2luIDogJ25vLXJlZmVycmVyJ1xuICAgIGNhc2UgJ29yaWdpbi13aGVuLWNyb3NzLW9yaWdpbic6XG4gICAgICByZXR1cm4gYXJlU2FtZU9yaWdpbiA/IHJlZmVycmVyVVJMIDogcmVmZXJyZXJPcmlnaW5cbiAgICBjYXNlICdzdHJpY3Qtb3JpZ2luLXdoZW4tY3Jvc3Mtb3JpZ2luJzoge1xuICAgICAgY29uc3QgY3VycmVudFVSTCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG5cbiAgICAgIC8vIDEuIElmIHRoZSBvcmlnaW4gb2YgcmVmZXJyZXJVUkwgYW5kIHRoZSBvcmlnaW4gb2YgcmVxdWVzdFx1MjAxOXMgY3VycmVudFxuICAgICAgLy8gICAgVVJMIGFyZSB0aGUgc2FtZSwgdGhlbiByZXR1cm4gcmVmZXJyZXJVUkwuXG4gICAgICBpZiAoc2FtZU9yaWdpbihyZWZlcnJlclVSTCwgY3VycmVudFVSTCkpIHtcbiAgICAgICAgcmV0dXJuIHJlZmVycmVyVVJMXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIElmIHJlZmVycmVyVVJMIGlzIGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMIGFuZCByZXF1ZXN0XHUyMDE5c1xuICAgICAgLy8gICAgY3VycmVudCBVUkwgaXMgbm90IGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMLCB0aGVuIHJldHVybiBub1xuICAgICAgLy8gICAgcmVmZXJyZXIuXG4gICAgICBpZiAoaXNVUkxQb3RlbnRpYWxseVRydXN0d29ydGh5KHJlZmVycmVyVVJMKSAmJiAhaXNVUkxQb3RlbnRpYWxseVRydXN0d29ydGh5KGN1cnJlbnRVUkwpKSB7XG4gICAgICAgIHJldHVybiAnbm8tcmVmZXJyZXInXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIFJldHVybiByZWZlcnJlck9yaWdpbi5cbiAgICAgIHJldHVybiByZWZlcnJlck9yaWdpblxuICAgIH1cbiAgICBjYXNlICdzdHJpY3Qtb3JpZ2luJzogLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICAgICAgLyoqXG4gICAgICAgICAqIDEuIElmIHJlZmVycmVyVVJMIGlzIGEgcG90ZW50aWFsbHkgdHJ1c3R3b3J0aHkgVVJMIGFuZFxuICAgICAgICAgKiByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTCBpcyBub3QgYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwsXG4gICAgICAgICAqIHRoZW4gcmV0dXJuIG5vIHJlZmVycmVyLlxuICAgICAgICAgKiAyLiBSZXR1cm4gcmVmZXJyZXJPcmlnaW5cbiAgICAgICAgKi9cbiAgICBjYXNlICduby1yZWZlcnJlci13aGVuLWRvd25ncmFkZSc6IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbiAgICAgIC8qKlxuICAgICAgICogMS4gSWYgcmVmZXJyZXJVUkwgaXMgYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwgYW5kXG4gICAgICAgKiByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTCBpcyBub3QgYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwsXG4gICAgICAgKiB0aGVuIHJldHVybiBubyByZWZlcnJlci5cbiAgICAgICAqIDIuIFJldHVybiByZWZlcnJlck9yaWdpblxuICAgICAgKi9cblxuICAgIGRlZmF1bHQ6IC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbiAgICAgIHJldHVybiBpc05vblBvdGVudGlhbGx5VHJ1c3RXb3J0aHkgPyAnbm8tcmVmZXJyZXInIDogcmVmZXJyZXJPcmlnaW5cbiAgfVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3dlYmFwcHNlYy1yZWZlcnJlci1wb2xpY3kvI3N0cmlwLXVybFxuICogQHBhcmFtIHtVUkx9IHVybFxuICogQHBhcmFtIHtib29sZWFufHVuZGVmaW5lZH0gb3JpZ2luT25seVxuICovXG5mdW5jdGlvbiBzdHJpcFVSTEZvclJlZmVycmVyICh1cmwsIG9yaWdpbk9ubHkpIHtcbiAgLy8gMS4gQXNzZXJ0OiB1cmwgaXMgYSBVUkwuXG4gIGFzc2VydCh1cmwgaW5zdGFuY2VvZiBVUkwpXG5cbiAgLy8gMi4gSWYgdXJsXHUyMDE5cyBzY2hlbWUgaXMgYSBsb2NhbCBzY2hlbWUsIHRoZW4gcmV0dXJuIG5vIHJlZmVycmVyLlxuICBpZiAodXJsLnByb3RvY29sID09PSAnZmlsZTonIHx8IHVybC5wcm90b2NvbCA9PT0gJ2Fib3V0OicgfHwgdXJsLnByb3RvY29sID09PSAnYmxhbms6Jykge1xuICAgIHJldHVybiAnbm8tcmVmZXJyZXInXG4gIH1cblxuICAvLyAzLiBTZXQgdXJsXHUyMDE5cyB1c2VybmFtZSB0byB0aGUgZW1wdHkgc3RyaW5nLlxuICB1cmwudXNlcm5hbWUgPSAnJ1xuXG4gIC8vIDQuIFNldCB1cmxcdTIwMTlzIHBhc3N3b3JkIHRvIHRoZSBlbXB0eSBzdHJpbmcuXG4gIHVybC5wYXNzd29yZCA9ICcnXG5cbiAgLy8gNS4gU2V0IHVybFx1MjAxOXMgZnJhZ21lbnQgdG8gbnVsbC5cbiAgdXJsLmhhc2ggPSAnJ1xuXG4gIC8vIDYuIElmIHRoZSBvcmlnaW4tb25seSBmbGFnIGlzIHRydWUsIHRoZW46XG4gIGlmIChvcmlnaW5Pbmx5KSB7XG4gICAgLy8gMS4gU2V0IHVybFx1MjAxOXMgcGF0aCB0byBcdTAwQUIgdGhlIGVtcHR5IHN0cmluZyBcdTAwQkIuXG4gICAgdXJsLnBhdGhuYW1lID0gJydcblxuICAgIC8vIDIuIFNldCB1cmxcdTIwMTlzIHF1ZXJ5IHRvIG51bGwuXG4gICAgdXJsLnNlYXJjaCA9ICcnXG4gIH1cblxuICAvLyA3LiBSZXR1cm4gdXJsLlxuICByZXR1cm4gdXJsXG59XG5cbmZ1bmN0aW9uIGlzVVJMUG90ZW50aWFsbHlUcnVzdHdvcnRoeSAodXJsKSB7XG4gIGlmICghKHVybCBpbnN0YW5jZW9mIFVSTCkpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIC8vIElmIGNoaWxkIG9mIGFib3V0LCByZXR1cm4gdHJ1ZVxuICBpZiAodXJsLmhyZWYgPT09ICdhYm91dDpibGFuaycgfHwgdXJsLmhyZWYgPT09ICdhYm91dDpzcmNkb2MnKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8vIElmIHNjaGVtZSBpcyBkYXRhLCByZXR1cm4gdHJ1ZVxuICBpZiAodXJsLnByb3RvY29sID09PSAnZGF0YTonKSByZXR1cm4gdHJ1ZVxuXG4gIC8vIElmIGZpbGUsIHJldHVybiB0cnVlXG4gIGlmICh1cmwucHJvdG9jb2wgPT09ICdmaWxlOicpIHJldHVybiB0cnVlXG5cbiAgcmV0dXJuIGlzT3JpZ2luUG90ZW50aWFsbHlUcnVzdHdvcnRoeSh1cmwub3JpZ2luKVxuXG4gIGZ1bmN0aW9uIGlzT3JpZ2luUG90ZW50aWFsbHlUcnVzdHdvcnRoeSAob3JpZ2luKSB7XG4gICAgLy8gSWYgb3JpZ2luIGlzIGV4cGxpY2l0bHkgbnVsbCwgcmV0dXJuIGZhbHNlXG4gICAgaWYgKG9yaWdpbiA9PSBudWxsIHx8IG9yaWdpbiA9PT0gJ251bGwnKSByZXR1cm4gZmFsc2VcblxuICAgIGNvbnN0IG9yaWdpbkFzVVJMID0gbmV3IFVSTChvcmlnaW4pXG5cbiAgICAvLyBJZiBzZWN1cmUsIHJldHVybiB0cnVlXG4gICAgaWYgKG9yaWdpbkFzVVJMLnByb3RvY29sID09PSAnaHR0cHM6JyB8fCBvcmlnaW5Bc1VSTC5wcm90b2NvbCA9PT0gJ3dzczonKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIC8vIElmIGxvY2FsaG9zdCBvciB2YXJpYW50cywgcmV0dXJuIHRydWVcbiAgICBpZiAoL14xMjcoPzpcXC5bMC05XSspezAsMn1cXC5bMC05XSskfF5cXFsoPzowKjopKj86PzAqMVxcXSQvLnRlc3Qob3JpZ2luQXNVUkwuaG9zdG5hbWUpIHx8XG4gICAgIChvcmlnaW5Bc1VSTC5ob3N0bmFtZSA9PT0gJ2xvY2FsaG9zdCcgfHwgb3JpZ2luQXNVUkwuaG9zdG5hbWUuaW5jbHVkZXMoJ2xvY2FsaG9zdC4nKSkgfHxcbiAgICAgKG9yaWdpbkFzVVJMLmhvc3RuYW1lLmVuZHNXaXRoKCcubG9jYWxob3N0JykpKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIC8vIElmIGFueSBvdGhlciwgcmV0dXJuIGZhbHNlXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtc3VicmVzb3VyY2UtaW50ZWdyaXR5LyNkb2VzLXJlc3BvbnNlLW1hdGNoLW1ldGFkYXRhbGlzdFxuICogQHBhcmFtIHtVaW50OEFycmF5fSBieXRlc1xuICogQHBhcmFtIHtzdHJpbmd9IG1ldGFkYXRhTGlzdFxuICovXG5mdW5jdGlvbiBieXRlc01hdGNoIChieXRlcywgbWV0YWRhdGFMaXN0KSB7XG4gIC8vIElmIG5vZGUgaXMgbm90IGJ1aWx0IHdpdGggT3BlblNTTCBzdXBwb3J0LCB3ZSBjYW5ub3QgY2hlY2tcbiAgLy8gYSByZXF1ZXN0J3MgaW50ZWdyaXR5LCBzbyBhbGxvdyBpdCBieSBkZWZhdWx0ICh0aGUgc3BlYyB3aWxsXG4gIC8vIGFsbG93IHJlcXVlc3RzIGlmIGFuIGludmFsaWQgaGFzaCBpcyBnaXZlbiwgYXMgcHJlY2VkZW5jZSkuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBpZjogb25seSBpZiBub2RlIGlzIGJ1aWx0IHdpdGggLS13aXRob3V0LXNzbCAqL1xuICBpZiAoY3J5cHRvID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLy8gMS4gTGV0IHBhcnNlZE1ldGFkYXRhIGJlIHRoZSByZXN1bHQgb2YgcGFyc2luZyBtZXRhZGF0YUxpc3QuXG4gIGNvbnN0IHBhcnNlZE1ldGFkYXRhID0gcGFyc2VNZXRhZGF0YShtZXRhZGF0YUxpc3QpXG5cbiAgLy8gMi4gSWYgcGFyc2VkTWV0YWRhdGEgaXMgbm8gbWV0YWRhdGEsIHJldHVybiB0cnVlLlxuICBpZiAocGFyc2VkTWV0YWRhdGEgPT09ICdubyBtZXRhZGF0YScpIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLy8gMy4gSWYgcmVzcG9uc2UgaXMgbm90IGVsaWdpYmxlIGZvciBpbnRlZ3JpdHkgdmFsaWRhdGlvbiwgcmV0dXJuIGZhbHNlLlxuICAvLyBUT0RPXG5cbiAgLy8gNC4gSWYgcGFyc2VkTWV0YWRhdGEgaXMgdGhlIGVtcHR5IHNldCwgcmV0dXJuIHRydWUuXG4gIGlmIChwYXJzZWRNZXRhZGF0YS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLy8gNS4gTGV0IG1ldGFkYXRhIGJlIHRoZSByZXN1bHQgb2YgZ2V0dGluZyB0aGUgc3Ryb25nZXN0XG4gIC8vICAgIG1ldGFkYXRhIGZyb20gcGFyc2VkTWV0YWRhdGEuXG4gIGNvbnN0IHN0cm9uZ2VzdCA9IGdldFN0cm9uZ2VzdE1ldGFkYXRhKHBhcnNlZE1ldGFkYXRhKVxuICBjb25zdCBtZXRhZGF0YSA9IGZpbHRlck1ldGFkYXRhTGlzdEJ5QWxnb3JpdGhtKHBhcnNlZE1ldGFkYXRhLCBzdHJvbmdlc3QpXG5cbiAgLy8gNi4gRm9yIGVhY2ggaXRlbSBpbiBtZXRhZGF0YTpcbiAgZm9yIChjb25zdCBpdGVtIG9mIG1ldGFkYXRhKSB7XG4gICAgLy8gMS4gTGV0IGFsZ29yaXRobSBiZSB0aGUgYWxnIGNvbXBvbmVudCBvZiBpdGVtLlxuICAgIGNvbnN0IGFsZ29yaXRobSA9IGl0ZW0uYWxnb1xuXG4gICAgLy8gMi4gTGV0IGV4cGVjdGVkVmFsdWUgYmUgdGhlIHZhbCBjb21wb25lbnQgb2YgaXRlbS5cbiAgICBjb25zdCBleHBlY3RlZFZhbHVlID0gaXRlbS5oYXNoXG5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvY29tbWl0L2U0YzVjYzdhNWU0ODA5MzIyMDUyOGRmZGQxYzQwMTJkYzM4MzdhMGVcbiAgICAvLyBcImJlIGxpYmVyYWwgd2l0aCBwYWRkaW5nXCIuIFRoaXMgaXMgYW5ub3lpbmcsIGFuZCBpdCdzIG5vdCBldmVuIGluIHRoZSBzcGVjLlxuXG4gICAgLy8gMy4gTGV0IGFjdHVhbFZhbHVlIGJlIHRoZSByZXN1bHQgb2YgYXBwbHlpbmcgYWxnb3JpdGhtIHRvIGJ5dGVzLlxuICAgIGxldCBhY3R1YWxWYWx1ZSA9IGNyeXB0by5jcmVhdGVIYXNoKGFsZ29yaXRobSkudXBkYXRlKGJ5dGVzKS5kaWdlc3QoJ2Jhc2U2NCcpXG5cbiAgICBpZiAoYWN0dWFsVmFsdWVbYWN0dWFsVmFsdWUubGVuZ3RoIC0gMV0gPT09ICc9Jykge1xuICAgICAgaWYgKGFjdHVhbFZhbHVlW2FjdHVhbFZhbHVlLmxlbmd0aCAtIDJdID09PSAnPScpIHtcbiAgICAgICAgYWN0dWFsVmFsdWUgPSBhY3R1YWxWYWx1ZS5zbGljZSgwLCAtMilcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFjdHVhbFZhbHVlID0gYWN0dWFsVmFsdWUuc2xpY2UoMCwgLTEpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNC4gSWYgYWN0dWFsVmFsdWUgaXMgYSBjYXNlLXNlbnNpdGl2ZSBtYXRjaCBmb3IgZXhwZWN0ZWRWYWx1ZSxcbiAgICAvLyAgICByZXR1cm4gdHJ1ZS5cbiAgICBpZiAoY29tcGFyZUJhc2U2NE1peGVkKGFjdHVhbFZhbHVlLCBleHBlY3RlZFZhbHVlKSkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gIH1cblxuICAvLyA3LiBSZXR1cm4gZmFsc2UuXG4gIHJldHVybiBmYWxzZVxufVxuXG4vLyBodHRwczovL3czYy5naXRodWIuaW8vd2ViYXBwc2VjLXN1YnJlc291cmNlLWludGVncml0eS8jZ3JhbW1hcmRlZi1oYXNoLXdpdGgtb3B0aW9uc1xuLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL0NTUDIvI3NvdXJjZS1saXN0LXN5bnRheFxuLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzUyMzQjYXBwZW5kaXgtQi4xXG5jb25zdCBwYXJzZUhhc2hXaXRoT3B0aW9ucyA9IC8oPzxhbGdvPnNoYTI1NnxzaGEzODR8c2hhNTEyKS0oKD88aGFzaD5bQS1aYS16MC05Ky9dK3xbQS1aYS16MC05Xy1dKyk9ezAsMn0oPzpcXHN8JCkoICtbIS1+XSopPyk/L2lcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtc3VicmVzb3VyY2UtaW50ZWdyaXR5LyNwYXJzZS1tZXRhZGF0YVxuICogQHBhcmFtIHtzdHJpbmd9IG1ldGFkYXRhXG4gKi9cbmZ1bmN0aW9uIHBhcnNlTWV0YWRhdGEgKG1ldGFkYXRhKSB7XG4gIC8vIDEuIExldCByZXN1bHQgYmUgdGhlIGVtcHR5IHNldC5cbiAgLyoqIEB0eXBlIHt7IGFsZ286IHN0cmluZywgaGFzaDogc3RyaW5nIH1bXX0gKi9cbiAgY29uc3QgcmVzdWx0ID0gW11cblxuICAvLyAyLiBMZXQgZW1wdHkgYmUgZXF1YWwgdG8gdHJ1ZS5cbiAgbGV0IGVtcHR5ID0gdHJ1ZVxuXG4gIC8vIDMuIEZvciBlYWNoIHRva2VuIHJldHVybmVkIGJ5IHNwbGl0dGluZyBtZXRhZGF0YSBvbiBzcGFjZXM6XG4gIGZvciAoY29uc3QgdG9rZW4gb2YgbWV0YWRhdGEuc3BsaXQoJyAnKSkge1xuICAgIC8vIDEuIFNldCBlbXB0eSB0byBmYWxzZS5cbiAgICBlbXB0eSA9IGZhbHNlXG5cbiAgICAvLyAyLiBQYXJzZSB0b2tlbiBhcyBhIGhhc2gtd2l0aC1vcHRpb25zLlxuICAgIGNvbnN0IHBhcnNlZFRva2VuID0gcGFyc2VIYXNoV2l0aE9wdGlvbnMuZXhlYyh0b2tlbilcblxuICAgIC8vIDMuIElmIHRva2VuIGRvZXMgbm90IHBhcnNlLCBjb250aW51ZSB0byB0aGUgbmV4dCB0b2tlbi5cbiAgICBpZiAoXG4gICAgICBwYXJzZWRUb2tlbiA9PT0gbnVsbCB8fFxuICAgICAgcGFyc2VkVG9rZW4uZ3JvdXBzID09PSB1bmRlZmluZWQgfHxcbiAgICAgIHBhcnNlZFRva2VuLmdyb3Vwcy5hbGdvID09PSB1bmRlZmluZWRcbiAgICApIHtcbiAgICAgIC8vIE5vdGU6IENocm9taXVtIGJsb2NrcyB0aGUgcmVxdWVzdCBhdCB0aGlzIHBvaW50LCBidXQgRmlyZWZveFxuICAgICAgLy8gZ2l2ZXMgYSB3YXJuaW5nIHRoYXQgYW4gaW52YWxpZCBpbnRlZ3JpdHkgd2FzIGdpdmVuLiBUaGVcbiAgICAgIC8vIGNvcnJlY3QgYmVoYXZpb3IgaXMgdG8gaWdub3JlIHRoZXNlLCBhbmQgc3Vic2VxdWVudGx5IG5vdFxuICAgICAgLy8gY2hlY2sgdGhlIGludGVncml0eSBvZiB0aGUgcmVzb3VyY2UuXG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIC8vIDQuIExldCBhbGdvcml0aG0gYmUgdGhlIGhhc2gtYWxnbyBjb21wb25lbnQgb2YgdG9rZW4uXG4gICAgY29uc3QgYWxnb3JpdGhtID0gcGFyc2VkVG9rZW4uZ3JvdXBzLmFsZ28udG9Mb3dlckNhc2UoKVxuXG4gICAgLy8gNS4gSWYgYWxnb3JpdGhtIGlzIGEgaGFzaCBmdW5jdGlvbiByZWNvZ25pemVkIGJ5IHRoZSB1c2VyXG4gICAgLy8gICAgYWdlbnQsIGFkZCB0aGUgcGFyc2VkIHRva2VuIHRvIHJlc3VsdC5cbiAgICBpZiAoc3VwcG9ydGVkSGFzaGVzLmluY2x1ZGVzKGFsZ29yaXRobSkpIHtcbiAgICAgIHJlc3VsdC5wdXNoKHBhcnNlZFRva2VuLmdyb3VwcylcbiAgICB9XG4gIH1cblxuICAvLyA0LiBSZXR1cm4gbm8gbWV0YWRhdGEgaWYgZW1wdHkgaXMgdHJ1ZSwgb3RoZXJ3aXNlIHJldHVybiByZXN1bHQuXG4gIGlmIChlbXB0eSA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiAnbm8gbWV0YWRhdGEnXG4gIH1cblxuICByZXR1cm4gcmVzdWx0XG59XG5cbi8qKlxuICogQHBhcmFtIHt7IGFsZ286ICdzaGEyNTYnIHwgJ3NoYTM4NCcgfCAnc2hhNTEyJyB9W119IG1ldGFkYXRhTGlzdFxuICovXG5mdW5jdGlvbiBnZXRTdHJvbmdlc3RNZXRhZGF0YSAobWV0YWRhdGFMaXN0KSB7XG4gIC8vIExldCBhbGdvcml0aG0gYmUgdGhlIGFsZ28gY29tcG9uZW50IG9mIHRoZSBmaXJzdCBpdGVtIGluIG1ldGFkYXRhTGlzdC5cbiAgLy8gQ2FuIGJlIHNoYTI1NlxuICBsZXQgYWxnb3JpdGhtID0gbWV0YWRhdGFMaXN0WzBdLmFsZ29cbiAgLy8gSWYgdGhlIGFsZ29yaXRobSBpcyBzaGE1MTIsIHRoZW4gaXQgaXMgdGhlIHN0cm9uZ2VzdFxuICAvLyBhbmQgd2UgY2FuIHJldHVybiBpbW1lZGlhdGVseVxuICBpZiAoYWxnb3JpdGhtWzNdID09PSAnNScpIHtcbiAgICByZXR1cm4gYWxnb3JpdGhtXG4gIH1cblxuICBmb3IgKGxldCBpID0gMTsgaSA8IG1ldGFkYXRhTGlzdC5sZW5ndGg7ICsraSkge1xuICAgIGNvbnN0IG1ldGFkYXRhID0gbWV0YWRhdGFMaXN0W2ldXG4gICAgLy8gSWYgdGhlIGFsZ29yaXRobSBpcyBzaGE1MTIsIHRoZW4gaXQgaXMgdGhlIHN0cm9uZ2VzdFxuICAgIC8vIGFuZCB3ZSBjYW4gYnJlYWsgdGhlIGxvb3AgaW1tZWRpYXRlbHlcbiAgICBpZiAobWV0YWRhdGEuYWxnb1szXSA9PT0gJzUnKSB7XG4gICAgICBhbGdvcml0aG0gPSAnc2hhNTEyJ1xuICAgICAgYnJlYWtcbiAgICAvLyBJZiB0aGUgYWxnb3JpdGhtIGlzIHNoYTM4NCwgdGhlbiBhIHBvdGVudGlhbCBzaGEyNTYgb3Igc2hhMzg0IGlzIGlnbm9yZWRcbiAgICB9IGVsc2UgaWYgKGFsZ29yaXRobVszXSA9PT0gJzMnKSB7XG4gICAgICBjb250aW51ZVxuICAgIC8vIGFsZ29yaXRobSBpcyBzaGEyNTYsIGNoZWNrIGlmIGFsZ29yaXRobSBpcyBzaGEzODQgYW5kIGlmIHNvLCBzZXQgaXQgYXNcbiAgICAvLyB0aGUgc3Ryb25nZXN0XG4gICAgfSBlbHNlIGlmIChtZXRhZGF0YS5hbGdvWzNdID09PSAnMycpIHtcbiAgICAgIGFsZ29yaXRobSA9ICdzaGEzODQnXG4gICAgfVxuICB9XG4gIHJldHVybiBhbGdvcml0aG1cbn1cblxuZnVuY3Rpb24gZmlsdGVyTWV0YWRhdGFMaXN0QnlBbGdvcml0aG0gKG1ldGFkYXRhTGlzdCwgYWxnb3JpdGhtKSB7XG4gIGlmIChtZXRhZGF0YUxpc3QubGVuZ3RoID09PSAxKSB7XG4gICAgcmV0dXJuIG1ldGFkYXRhTGlzdFxuICB9XG5cbiAgbGV0IHBvcyA9IDBcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBtZXRhZGF0YUxpc3QubGVuZ3RoOyArK2kpIHtcbiAgICBpZiAobWV0YWRhdGFMaXN0W2ldLmFsZ28gPT09IGFsZ29yaXRobSkge1xuICAgICAgbWV0YWRhdGFMaXN0W3BvcysrXSA9IG1ldGFkYXRhTGlzdFtpXVxuICAgIH1cbiAgfVxuXG4gIG1ldGFkYXRhTGlzdC5sZW5ndGggPSBwb3NcblxuICByZXR1cm4gbWV0YWRhdGFMaXN0XG59XG5cbi8qKlxuICogQ29tcGFyZXMgdHdvIGJhc2U2NCBzdHJpbmdzLCBhbGxvd2luZyBmb3IgYmFzZTY0dXJsXG4gKiBpbiB0aGUgc2Vjb25kIHN0cmluZy5cbiAqXG4qIEBwYXJhbSB7c3RyaW5nfSBhY3R1YWxWYWx1ZSBhbHdheXMgYmFzZTY0XG4gKiBAcGFyYW0ge3N0cmluZ30gZXhwZWN0ZWRWYWx1ZSBiYXNlNjQgb3IgYmFzZTY0dXJsXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAqL1xuZnVuY3Rpb24gY29tcGFyZUJhc2U2NE1peGVkIChhY3R1YWxWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSkge1xuICBpZiAoYWN0dWFsVmFsdWUubGVuZ3RoICE9PSBleHBlY3RlZFZhbHVlLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgYWN0dWFsVmFsdWUubGVuZ3RoOyArK2kpIHtcbiAgICBpZiAoYWN0dWFsVmFsdWVbaV0gIT09IGV4cGVjdGVkVmFsdWVbaV0pIHtcbiAgICAgIGlmIChcbiAgICAgICAgKGFjdHVhbFZhbHVlW2ldID09PSAnKycgJiYgZXhwZWN0ZWRWYWx1ZVtpXSA9PT0gJy0nKSB8fFxuICAgICAgICAoYWN0dWFsVmFsdWVbaV0gPT09ICcvJyAmJiBleHBlY3RlZFZhbHVlW2ldID09PSAnXycpXG4gICAgICApIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtdXBncmFkZS1pbnNlY3VyZS1yZXF1ZXN0cy8jdXBncmFkZS1yZXF1ZXN0XG5mdW5jdGlvbiB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwgKHJlcXVlc3QpIHtcbiAgLy8gVE9ET1xufVxuXG4vKipcbiAqIEBsaW5rIHtodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9vcmlnaW4uaHRtbCNzYW1lLW9yaWdpbn1cbiAqIEBwYXJhbSB7VVJMfSBBXG4gKiBAcGFyYW0ge1VSTH0gQlxuICovXG5mdW5jdGlvbiBzYW1lT3JpZ2luIChBLCBCKSB7XG4gIC8vIDEuIElmIEEgYW5kIEIgYXJlIHRoZSBzYW1lIG9wYXF1ZSBvcmlnaW4sIHRoZW4gcmV0dXJuIHRydWUuXG4gIGlmIChBLm9yaWdpbiA9PT0gQi5vcmlnaW4gJiYgQS5vcmlnaW4gPT09ICdudWxsJykge1xuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvLyAyLiBJZiBBIGFuZCBCIGFyZSBib3RoIHR1cGxlIG9yaWdpbnMgYW5kIHRoZWlyIHNjaGVtZXMsXG4gIC8vICAgIGhvc3RzLCBhbmQgcG9ydCBhcmUgaWRlbnRpY2FsLCB0aGVuIHJldHVybiB0cnVlLlxuICBpZiAoQS5wcm90b2NvbCA9PT0gQi5wcm90b2NvbCAmJiBBLmhvc3RuYW1lID09PSBCLmhvc3RuYW1lICYmIEEucG9ydCA9PT0gQi5wb3J0KSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8vIDMuIFJldHVybiBmYWxzZS5cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmZ1bmN0aW9uIGNyZWF0ZURlZmVycmVkUHJvbWlzZSAoKSB7XG4gIGxldCByZXNcbiAgbGV0IHJlalxuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHJlcyA9IHJlc29sdmVcbiAgICByZWogPSByZWplY3RcbiAgfSlcblxuICByZXR1cm4geyBwcm9taXNlLCByZXNvbHZlOiByZXMsIHJlamVjdDogcmVqIH1cbn1cblxuZnVuY3Rpb24gaXNBYm9ydGVkIChmZXRjaFBhcmFtcykge1xuICByZXR1cm4gZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zdGF0ZSA9PT0gJ2Fib3J0ZWQnXG59XG5cbmZ1bmN0aW9uIGlzQ2FuY2VsbGVkIChmZXRjaFBhcmFtcykge1xuICByZXR1cm4gZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zdGF0ZSA9PT0gJ2Fib3J0ZWQnIHx8XG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zdGF0ZSA9PT0gJ3Rlcm1pbmF0ZWQnXG59XG5cbmNvbnN0IG5vcm1hbGl6ZU1ldGhvZFJlY29yZCA9IHtcbiAgZGVsZXRlOiAnREVMRVRFJyxcbiAgREVMRVRFOiAnREVMRVRFJyxcbiAgZ2V0OiAnR0VUJyxcbiAgR0VUOiAnR0VUJyxcbiAgaGVhZDogJ0hFQUQnLFxuICBIRUFEOiAnSEVBRCcsXG4gIG9wdGlvbnM6ICdPUFRJT05TJyxcbiAgT1BUSU9OUzogJ09QVElPTlMnLFxuICBwb3N0OiAnUE9TVCcsXG4gIFBPU1Q6ICdQT1NUJyxcbiAgcHV0OiAnUFVUJyxcbiAgUFVUOiAnUFVUJ1xufVxuXG4vLyBOb3RlOiBvYmplY3QgcHJvdG90eXBlcyBzaG91bGQgbm90IGJlIGFibGUgdG8gYmUgcmVmZXJlbmNlZC4gZS5nLiBgT2JqZWN0I2hhc093blByb3BlcnR5YC5cbk9iamVjdC5zZXRQcm90b3R5cGVPZihub3JtYWxpemVNZXRob2RSZWNvcmQsIG51bGwpXG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1tZXRob2Qtbm9ybWFsaXplXG4gKiBAcGFyYW0ge3N0cmluZ30gbWV0aG9kXG4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZU1ldGhvZCAobWV0aG9kKSB7XG4gIHJldHVybiBub3JtYWxpemVNZXRob2RSZWNvcmRbbWV0aG9kLnRvTG93ZXJDYXNlKCldID8/IG1ldGhvZFxufVxuXG4vLyBodHRwczovL2luZnJhLnNwZWMud2hhdHdnLm9yZy8jc2VyaWFsaXplLWEtamF2YXNjcmlwdC12YWx1ZS10by1hLWpzb24tc3RyaW5nXG5mdW5jdGlvbiBzZXJpYWxpemVKYXZhc2NyaXB0VmFsdWVUb0pTT05TdHJpbmcgKHZhbHVlKSB7XG4gIC8vIDEuIExldCByZXN1bHQgYmUgPyBDYWxsKCVKU09OLnN0cmluZ2lmeSUsIHVuZGVmaW5lZCwgXHUwMEFCIHZhbHVlIFx1MDBCQikuXG4gIGNvbnN0IHJlc3VsdCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKVxuXG4gIC8vIDIuIElmIHJlc3VsdCBpcyB1bmRlZmluZWQsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIGlmIChyZXN1bHQgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1ZhbHVlIGlzIG5vdCBKU09OIHNlcmlhbGl6YWJsZScpXG4gIH1cblxuICAvLyAzLiBBc3NlcnQ6IHJlc3VsdCBpcyBhIHN0cmluZy5cbiAgYXNzZXJ0KHR5cGVvZiByZXN1bHQgPT09ICdzdHJpbmcnKVxuXG4gIC8vIDQuIFJldHVybiByZXN1bHQuXG4gIHJldHVybiByZXN1bHRcbn1cblxuLy8gaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy0lMjVpdGVyYXRvcnByb3RvdHlwZSUyNS1vYmplY3RcbmNvbnN0IGVzSXRlcmF0b3JQcm90b3R5cGUgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoT2JqZWN0LmdldFByb3RvdHlwZU9mKFtdW1N5bWJvbC5pdGVyYXRvcl0oKSkpXG5cbi8qKlxuICogQHNlZSBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2Rmbi1pdGVyYXRvci1wcm90b3R5cGUtb2JqZWN0XG4gKiBAcGFyYW0geygpID0+IHVua25vd25bXX0gaXRlcmF0b3JcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIG5hbWUgb2YgdGhlIGluc3RhbmNlXG4gKiBAcGFyYW0geydrZXknfCd2YWx1ZSd8J2tleSt2YWx1ZSd9IGtpbmRcbiAqL1xuZnVuY3Rpb24gbWFrZUl0ZXJhdG9yIChpdGVyYXRvciwgbmFtZSwga2luZCkge1xuICBjb25zdCBvYmplY3QgPSB7XG4gICAgaW5kZXg6IDAsXG4gICAga2luZCxcbiAgICB0YXJnZXQ6IGl0ZXJhdG9yXG4gIH1cblxuICBjb25zdCBpID0ge1xuICAgIG5leHQgKCkge1xuICAgICAgLy8gMS4gTGV0IGludGVyZmFjZSBiZSB0aGUgaW50ZXJmYWNlIGZvciB3aGljaCB0aGUgaXRlcmF0b3IgcHJvdG90eXBlIG9iamVjdCBleGlzdHMuXG5cbiAgICAgIC8vIDIuIExldCB0aGlzVmFsdWUgYmUgdGhlIHRoaXMgdmFsdWUuXG5cbiAgICAgIC8vIDMuIExldCBvYmplY3QgYmUgPyBUb09iamVjdCh0aGlzVmFsdWUpLlxuXG4gICAgICAvLyA0LiBJZiBvYmplY3QgaXMgYSBwbGF0Zm9ybSBvYmplY3QsIHRoZW4gcGVyZm9ybSBhIHNlY3VyaXR5XG4gICAgICAvLyAgICBjaGVjaywgcGFzc2luZzpcblxuICAgICAgLy8gNS4gSWYgb2JqZWN0IGlzIG5vdCBhIGRlZmF1bHQgaXRlcmF0b3Igb2JqZWN0IGZvciBpbnRlcmZhY2UsXG4gICAgICAvLyAgICB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgICAgaWYgKE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzKSAhPT0gaSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgIGAnbmV4dCcgY2FsbGVkIG9uIGFuIG9iamVjdCB0aGF0IGRvZXMgbm90IGltcGxlbWVudCBpbnRlcmZhY2UgJHtuYW1lfSBJdGVyYXRvci5gXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gNi4gTGV0IGluZGV4IGJlIG9iamVjdFx1MjAxOXMgaW5kZXguXG4gICAgICAvLyA3LiBMZXQga2luZCBiZSBvYmplY3RcdTIwMTlzIGtpbmQuXG4gICAgICAvLyA4LiBMZXQgdmFsdWVzIGJlIG9iamVjdFx1MjAxOXMgdGFyZ2V0J3MgdmFsdWUgcGFpcnMgdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAgY29uc3QgeyBpbmRleCwga2luZCwgdGFyZ2V0IH0gPSBvYmplY3RcbiAgICAgIGNvbnN0IHZhbHVlcyA9IHRhcmdldCgpXG5cbiAgICAgIC8vIDkuIExldCBsZW4gYmUgdGhlIGxlbmd0aCBvZiB2YWx1ZXMuXG4gICAgICBjb25zdCBsZW4gPSB2YWx1ZXMubGVuZ3RoXG5cbiAgICAgIC8vIDEwLiBJZiBpbmRleCBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gbGVuLCB0aGVuIHJldHVyblxuICAgICAgLy8gICAgIENyZWF0ZUl0ZXJSZXN1bHRPYmplY3QodW5kZWZpbmVkLCB0cnVlKS5cbiAgICAgIGlmIChpbmRleCA+PSBsZW4pIHtcbiAgICAgICAgcmV0dXJuIHsgdmFsdWU6IHVuZGVmaW5lZCwgZG9uZTogdHJ1ZSB9XG4gICAgICB9XG5cbiAgICAgIC8vIDExLiBMZXQgcGFpciBiZSB0aGUgZW50cnkgaW4gdmFsdWVzIGF0IGluZGV4IGluZGV4LlxuICAgICAgY29uc3QgcGFpciA9IHZhbHVlc1tpbmRleF1cblxuICAgICAgLy8gMTIuIFNldCBvYmplY3RcdTIwMTlzIGluZGV4IHRvIGluZGV4ICsgMS5cbiAgICAgIG9iamVjdC5pbmRleCA9IGluZGV4ICsgMVxuXG4gICAgICAvLyAxMy4gUmV0dXJuIHRoZSBpdGVyYXRvciByZXN1bHQgZm9yIHBhaXIgYW5kIGtpbmQuXG4gICAgICByZXR1cm4gaXRlcmF0b3JSZXN1bHQocGFpciwga2luZClcbiAgICB9LFxuICAgIC8vIFRoZSBjbGFzcyBzdHJpbmcgb2YgYW4gaXRlcmF0b3IgcHJvdG90eXBlIG9iamVjdCBmb3IgYSBnaXZlbiBpbnRlcmZhY2UgaXMgdGhlXG4gICAgLy8gcmVzdWx0IG9mIGNvbmNhdGVuYXRpbmcgdGhlIGlkZW50aWZpZXIgb2YgdGhlIGludGVyZmFjZSBhbmQgdGhlIHN0cmluZyBcIiBJdGVyYXRvclwiLlxuICAgIFtTeW1ib2wudG9TdHJpbmdUYWddOiBgJHtuYW1lfSBJdGVyYXRvcmBcbiAgfVxuXG4gIC8vIFRoZSBbW1Byb3RvdHlwZV1dIGludGVybmFsIHNsb3Qgb2YgYW4gaXRlcmF0b3IgcHJvdG90eXBlIG9iamVjdCBtdXN0IGJlICVJdGVyYXRvclByb3RvdHlwZSUuXG4gIE9iamVjdC5zZXRQcm90b3R5cGVPZihpLCBlc0l0ZXJhdG9yUHJvdG90eXBlKVxuICAvLyBlc0l0ZXJhdG9yUHJvdG90eXBlIG5lZWRzIHRvIGJlIHRoZSBwcm90b3R5cGUgb2YgaVxuICAvLyB3aGljaCBpcyB0aGUgcHJvdG90eXBlIG9mIGFuIGVtcHR5IG9iamVjdC4gWWVzLCBpdCdzIGNvbmZ1c2luZy5cbiAgcmV0dXJuIE9iamVjdC5zZXRQcm90b3R5cGVPZih7fSwgaSlcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNpdGVyYXRvci1yZXN1bHRcbmZ1bmN0aW9uIGl0ZXJhdG9yUmVzdWx0IChwYWlyLCBraW5kKSB7XG4gIGxldCByZXN1bHRcblxuICAvLyAxLiBMZXQgcmVzdWx0IGJlIGEgdmFsdWUgZGV0ZXJtaW5lZCBieSB0aGUgdmFsdWUgb2Yga2luZDpcbiAgc3dpdGNoIChraW5kKSB7XG4gICAgY2FzZSAna2V5Jzoge1xuICAgICAgLy8gMS4gTGV0IGlkbEtleSBiZSBwYWlyXHUyMDE5cyBrZXkuXG4gICAgICAvLyAyLiBMZXQga2V5IGJlIHRoZSByZXN1bHQgb2YgY29udmVydGluZyBpZGxLZXkgdG8gYW5cbiAgICAgIC8vICAgIEVDTUFTY3JpcHQgdmFsdWUuXG4gICAgICAvLyAzLiByZXN1bHQgaXMga2V5LlxuICAgICAgcmVzdWx0ID0gcGFpclswXVxuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY2FzZSAndmFsdWUnOiB7XG4gICAgICAvLyAxLiBMZXQgaWRsVmFsdWUgYmUgcGFpclx1MjAxOXMgdmFsdWUuXG4gICAgICAvLyAyLiBMZXQgdmFsdWUgYmUgdGhlIHJlc3VsdCBvZiBjb252ZXJ0aW5nIGlkbFZhbHVlIHRvXG4gICAgICAvLyAgICBhbiBFQ01BU2NyaXB0IHZhbHVlLlxuICAgICAgLy8gMy4gcmVzdWx0IGlzIHZhbHVlLlxuICAgICAgcmVzdWx0ID0gcGFpclsxXVxuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY2FzZSAna2V5K3ZhbHVlJzoge1xuICAgICAgLy8gMS4gTGV0IGlkbEtleSBiZSBwYWlyXHUyMDE5cyBrZXkuXG4gICAgICAvLyAyLiBMZXQgaWRsVmFsdWUgYmUgcGFpclx1MjAxOXMgdmFsdWUuXG4gICAgICAvLyAzLiBMZXQga2V5IGJlIHRoZSByZXN1bHQgb2YgY29udmVydGluZyBpZGxLZXkgdG8gYW5cbiAgICAgIC8vICAgIEVDTUFTY3JpcHQgdmFsdWUuXG4gICAgICAvLyA0LiBMZXQgdmFsdWUgYmUgdGhlIHJlc3VsdCBvZiBjb252ZXJ0aW5nIGlkbFZhbHVlIHRvXG4gICAgICAvLyAgICBhbiBFQ01BU2NyaXB0IHZhbHVlLlxuICAgICAgLy8gNS4gTGV0IGFycmF5IGJlICEgQXJyYXlDcmVhdGUoMikuXG4gICAgICAvLyA2LiBDYWxsICEgQ3JlYXRlRGF0YVByb3BlcnR5KGFycmF5LCBcIjBcIiwga2V5KS5cbiAgICAgIC8vIDcuIENhbGwgISBDcmVhdGVEYXRhUHJvcGVydHkoYXJyYXksIFwiMVwiLCB2YWx1ZSkuXG4gICAgICAvLyA4LiByZXN1bHQgaXMgYXJyYXkuXG4gICAgICByZXN1bHQgPSBwYWlyXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIC8vIDIuIFJldHVybiBDcmVhdGVJdGVyUmVzdWx0T2JqZWN0KHJlc3VsdCwgZmFsc2UpLlxuICByZXR1cm4geyB2YWx1ZTogcmVzdWx0LCBkb25lOiBmYWxzZSB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jYm9keS1mdWxseS1yZWFkXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGZ1bGx5UmVhZEJvZHkgKGJvZHksIHByb2Nlc3NCb2R5LCBwcm9jZXNzQm9keUVycm9yKSB7XG4gIC8vIDEuIElmIHRhc2tEZXN0aW5hdGlvbiBpcyBudWxsLCB0aGVuIHNldCB0YXNrRGVzdGluYXRpb24gdG9cbiAgLy8gICAgdGhlIHJlc3VsdCBvZiBzdGFydGluZyBhIG5ldyBwYXJhbGxlbCBxdWV1ZS5cblxuICAvLyAyLiBMZXQgc3VjY2Vzc1N0ZXBzIGdpdmVuIGEgYnl0ZSBzZXF1ZW5jZSBieXRlcyBiZSB0byBxdWV1ZSBhXG4gIC8vICAgIGZldGNoIHRhc2sgdG8gcnVuIHByb2Nlc3NCb2R5IGdpdmVuIGJ5dGVzLCB3aXRoIHRhc2tEZXN0aW5hdGlvbi5cbiAgY29uc3Qgc3VjY2Vzc1N0ZXBzID0gcHJvY2Vzc0JvZHlcblxuICAvLyAzLiBMZXQgZXJyb3JTdGVwcyBiZSB0byBxdWV1ZSBhIGZldGNoIHRhc2sgdG8gcnVuIHByb2Nlc3NCb2R5RXJyb3IsXG4gIC8vICAgIHdpdGggdGFza0Rlc3RpbmF0aW9uLlxuICBjb25zdCBlcnJvclN0ZXBzID0gcHJvY2Vzc0JvZHlFcnJvclxuXG4gIC8vIDQuIExldCByZWFkZXIgYmUgdGhlIHJlc3VsdCBvZiBnZXR0aW5nIGEgcmVhZGVyIGZvciBib2R5XHUyMDE5cyBzdHJlYW0uXG4gIC8vICAgIElmIHRoYXQgdGhyZXcgYW4gZXhjZXB0aW9uLCB0aGVuIHJ1biBlcnJvclN0ZXBzIHdpdGggdGhhdFxuICAvLyAgICBleGNlcHRpb24gYW5kIHJldHVybi5cbiAgbGV0IHJlYWRlclxuXG4gIHRyeSB7XG4gICAgcmVhZGVyID0gYm9keS5zdHJlYW0uZ2V0UmVhZGVyKClcbiAgfSBjYXRjaCAoZSkge1xuICAgIGVycm9yU3RlcHMoZSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIC8vIDUuIFJlYWQgYWxsIGJ5dGVzIGZyb20gcmVhZGVyLCBnaXZlbiBzdWNjZXNzU3RlcHMgYW5kIGVycm9yU3RlcHMuXG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcmVhZEFsbEJ5dGVzKHJlYWRlcilcbiAgICBzdWNjZXNzU3RlcHMocmVzdWx0KVxuICB9IGNhdGNoIChlKSB7XG4gICAgZXJyb3JTdGVwcyhlKVxuICB9XG59XG5cbi8qKiBAdHlwZSB7UmVhZGFibGVTdHJlYW19ICovXG5sZXQgUmVhZGFibGVTdHJlYW0gPSBnbG9iYWxUaGlzLlJlYWRhYmxlU3RyZWFtXG5cbmZ1bmN0aW9uIGlzUmVhZGFibGVTdHJlYW1MaWtlIChzdHJlYW0pIHtcbiAgaWYgKCFSZWFkYWJsZVN0cmVhbSkge1xuICAgIFJlYWRhYmxlU3RyZWFtID0gcmVxdWlyZSgnc3RyZWFtL3dlYicpLlJlYWRhYmxlU3RyZWFtXG4gIH1cblxuICByZXR1cm4gc3RyZWFtIGluc3RhbmNlb2YgUmVhZGFibGVTdHJlYW0gfHwgKFxuICAgIHN0cmVhbVtTeW1ib2wudG9TdHJpbmdUYWddID09PSAnUmVhZGFibGVTdHJlYW0nICYmXG4gICAgdHlwZW9mIHN0cmVhbS50ZWUgPT09ICdmdW5jdGlvbidcbiAgKVxufVxuXG5jb25zdCBNQVhJTVVNX0FSR1VNRU5UX0xFTkdUSCA9IDY1NTM1XG5cbi8qKlxuICogQHNlZSBodHRwczovL2luZnJhLnNwZWMud2hhdHdnLm9yZy8jaXNvbW9ycGhpYy1kZWNvZGVcbiAqIEBwYXJhbSB7bnVtYmVyW118VWludDhBcnJheX0gaW5wdXRcbiAqL1xuZnVuY3Rpb24gaXNvbW9ycGhpY0RlY29kZSAoaW5wdXQpIHtcbiAgLy8gMS4gVG8gaXNvbW9ycGhpYyBkZWNvZGUgYSBieXRlIHNlcXVlbmNlIGlucHV0LCByZXR1cm4gYSBzdHJpbmcgd2hvc2UgY29kZSBwb2ludFxuICAvLyAgICBsZW5ndGggaXMgZXF1YWwgdG8gaW5wdXRcdTIwMTlzIGxlbmd0aCBhbmQgd2hvc2UgY29kZSBwb2ludHMgaGF2ZSB0aGUgc2FtZSB2YWx1ZXNcbiAgLy8gICAgYXMgdGhlIHZhbHVlcyBvZiBpbnB1dFx1MjAxOXMgYnl0ZXMsIGluIHRoZSBzYW1lIG9yZGVyLlxuXG4gIGlmIChpbnB1dC5sZW5ndGggPCBNQVhJTVVNX0FSR1VNRU5UX0xFTkdUSCkge1xuICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLmlucHV0KVxuICB9XG5cbiAgcmV0dXJuIGlucHV0LnJlZHVjZSgocHJldmlvdXMsIGN1cnJlbnQpID0+IHByZXZpb3VzICsgU3RyaW5nLmZyb21DaGFyQ29kZShjdXJyZW50KSwgJycpXG59XG5cbi8qKlxuICogQHBhcmFtIHtSZWFkYWJsZVN0cmVhbUNvbnRyb2xsZXI8VWludDhBcnJheT59IGNvbnRyb2xsZXJcbiAqL1xuZnVuY3Rpb24gcmVhZGFibGVTdHJlYW1DbG9zZSAoY29udHJvbGxlcikge1xuICB0cnkge1xuICAgIGNvbnRyb2xsZXIuY2xvc2UoKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBUT0RPOiBhZGQgY29tbWVudCBleHBsYWluaW5nIHdoeSB0aGlzIGVycm9yIG9jY3Vycy5cbiAgICBpZiAoIWVyci5tZXNzYWdlLmluY2x1ZGVzKCdDb250cm9sbGVyIGlzIGFscmVhZHkgY2xvc2VkJykpIHtcbiAgICAgIHRocm93IGVyclxuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9pbmZyYS5zcGVjLndoYXR3Zy5vcmcvI2lzb21vcnBoaWMtZW5jb2RlXG4gKiBAcGFyYW0ge3N0cmluZ30gaW5wdXRcbiAqL1xuZnVuY3Rpb24gaXNvbW9ycGhpY0VuY29kZSAoaW5wdXQpIHtcbiAgLy8gMS4gQXNzZXJ0OiBpbnB1dCBjb250YWlucyBubyBjb2RlIHBvaW50cyBncmVhdGVyIHRoYW4gVSswMEZGLlxuICBmb3IgKGxldCBpID0gMDsgaSA8IGlucHV0Lmxlbmd0aDsgaSsrKSB7XG4gICAgYXNzZXJ0KGlucHV0LmNoYXJDb2RlQXQoaSkgPD0gMHhGRilcbiAgfVxuXG4gIC8vIDIuIFJldHVybiBhIGJ5dGUgc2VxdWVuY2Ugd2hvc2UgbGVuZ3RoIGlzIGVxdWFsIHRvIGlucHV0XHUyMDE5cyBjb2RlXG4gIC8vICAgIHBvaW50IGxlbmd0aCBhbmQgd2hvc2UgYnl0ZXMgaGF2ZSB0aGUgc2FtZSB2YWx1ZXMgYXMgdGhlXG4gIC8vICAgIHZhbHVlcyBvZiBpbnB1dFx1MjAxOXMgY29kZSBwb2ludHMsIGluIHRoZSBzYW1lIG9yZGVyXG4gIHJldHVybiBpbnB1dFxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9zdHJlYW1zLnNwZWMud2hhdHdnLm9yZy8jcmVhZGFibGVzdHJlYW1kZWZhdWx0cmVhZGVyLXJlYWQtYWxsLWJ5dGVzXG4gKiBAc2VlIGh0dHBzOi8vc3RyZWFtcy5zcGVjLndoYXR3Zy5vcmcvI3JlYWQtbG9vcFxuICogQHBhcmFtIHtSZWFkYWJsZVN0cmVhbURlZmF1bHRSZWFkZXJ9IHJlYWRlclxuICovXG5hc3luYyBmdW5jdGlvbiByZWFkQWxsQnl0ZXMgKHJlYWRlcikge1xuICBjb25zdCBieXRlcyA9IFtdXG4gIGxldCBieXRlTGVuZ3RoID0gMFxuXG4gIHdoaWxlICh0cnVlKSB7XG4gICAgY29uc3QgeyBkb25lLCB2YWx1ZTogY2h1bmsgfSA9IGF3YWl0IHJlYWRlci5yZWFkKClcblxuICAgIGlmIChkb25lKSB7XG4gICAgICAvLyAxLiBDYWxsIHN1Y2Nlc3NTdGVwcyB3aXRoIGJ5dGVzLlxuICAgICAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoYnl0ZXMsIGJ5dGVMZW5ndGgpXG4gICAgfVxuXG4gICAgLy8gMS4gSWYgY2h1bmsgaXMgbm90IGEgVWludDhBcnJheSBvYmplY3QsIGNhbGwgZmFpbHVyZVN0ZXBzXG4gICAgLy8gICAgd2l0aCBhIFR5cGVFcnJvciBhbmQgYWJvcnQgdGhlc2Ugc3RlcHMuXG4gICAgaWYgKCFpc1VpbnQ4QXJyYXkoY2h1bmspKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdSZWNlaXZlZCBub24tVWludDhBcnJheSBjaHVuaycpXG4gICAgfVxuXG4gICAgLy8gMi4gQXBwZW5kIHRoZSBieXRlcyByZXByZXNlbnRlZCBieSBjaHVuayB0byBieXRlcy5cbiAgICBieXRlcy5wdXNoKGNodW5rKVxuICAgIGJ5dGVMZW5ndGggKz0gY2h1bmsubGVuZ3RoXG5cbiAgICAvLyAzLiBSZWFkLWxvb3AgZ2l2ZW4gcmVhZGVyLCBieXRlcywgc3VjY2Vzc1N0ZXBzLCBhbmQgZmFpbHVyZVN0ZXBzLlxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaXMtbG9jYWxcbiAqIEBwYXJhbSB7VVJMfSB1cmxcbiAqL1xuZnVuY3Rpb24gdXJsSXNMb2NhbCAodXJsKSB7XG4gIGFzc2VydCgncHJvdG9jb2wnIGluIHVybCkgLy8gZW5zdXJlIGl0J3MgYSB1cmwgb2JqZWN0XG5cbiAgY29uc3QgcHJvdG9jb2wgPSB1cmwucHJvdG9jb2xcblxuICByZXR1cm4gcHJvdG9jb2wgPT09ICdhYm91dDonIHx8IHByb3RvY29sID09PSAnYmxvYjonIHx8IHByb3RvY29sID09PSAnZGF0YTonXG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd8VVJMfSB1cmxcbiAqL1xuZnVuY3Rpb24gdXJsSGFzSHR0cHNTY2hlbWUgKHVybCkge1xuICBpZiAodHlwZW9mIHVybCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gdXJsLnN0YXJ0c1dpdGgoJ2h0dHBzOicpXG4gIH1cblxuICByZXR1cm4gdXJsLnByb3RvY29sID09PSAnaHR0cHM6J1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtc2NoZW1lXG4gKiBAcGFyYW0ge1VSTH0gdXJsXG4gKi9cbmZ1bmN0aW9uIHVybElzSHR0cEh0dHBzU2NoZW1lICh1cmwpIHtcbiAgYXNzZXJ0KCdwcm90b2NvbCcgaW4gdXJsKSAvLyBlbnN1cmUgaXQncyBhIHVybCBvYmplY3RcblxuICBjb25zdCBwcm90b2NvbCA9IHVybC5wcm90b2NvbFxuXG4gIHJldHVybiBwcm90b2NvbCA9PT0gJ2h0dHA6JyB8fCBwcm90b2NvbCA9PT0gJ2h0dHBzOidcbn1cblxuLyoqXG4gKiBGZXRjaCBzdXBwb3J0cyBub2RlID49IDE2LjguMCwgYnV0IE9iamVjdC5oYXNPd24gd2FzIGFkZGVkIGluIHYxNi45LjAuXG4gKi9cbmNvbnN0IGhhc093biA9IE9iamVjdC5oYXNPd24gfHwgKChkaWN0LCBrZXkpID0+IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkaWN0LCBrZXkpKVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgaXNBYm9ydGVkLFxuICBpc0NhbmNlbGxlZCxcbiAgY3JlYXRlRGVmZXJyZWRQcm9taXNlLFxuICBSZWFkYWJsZVN0cmVhbUZyb20sXG4gIHRvVVNWU3RyaW5nLFxuICB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwsXG4gIGNvYXJzZW5lZFNoYXJlZEN1cnJlbnRUaW1lLFxuICBkZXRlcm1pbmVSZXF1ZXN0c1JlZmVycmVyLFxuICBtYWtlUG9saWN5Q29udGFpbmVyLFxuICBjbG9uZVBvbGljeUNvbnRhaW5lcixcbiAgYXBwZW5kRmV0Y2hNZXRhZGF0YSxcbiAgYXBwZW5kUmVxdWVzdE9yaWdpbkhlYWRlcixcbiAgVEFPQ2hlY2ssXG4gIGNvcnNDaGVjayxcbiAgY3Jvc3NPcmlnaW5SZXNvdXJjZVBvbGljeUNoZWNrLFxuICBjcmVhdGVPcGFxdWVUaW1pbmdJbmZvLFxuICBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0LFxuICBpc1ZhbGlkSFRUUFRva2VuLFxuICByZXF1ZXN0QmFkUG9ydCxcbiAgcmVxdWVzdEN1cnJlbnRVUkwsXG4gIHJlc3BvbnNlVVJMLFxuICByZXNwb25zZUxvY2F0aW9uVVJMLFxuICBpc0Jsb2JMaWtlLFxuICBpc1VSTFBvdGVudGlhbGx5VHJ1c3R3b3J0aHksXG4gIGlzVmFsaWRSZWFzb25QaHJhc2UsXG4gIHNhbWVPcmlnaW4sXG4gIG5vcm1hbGl6ZU1ldGhvZCxcbiAgc2VyaWFsaXplSmF2YXNjcmlwdFZhbHVlVG9KU09OU3RyaW5nLFxuICBtYWtlSXRlcmF0b3IsXG4gIGlzVmFsaWRIZWFkZXJOYW1lLFxuICBpc1ZhbGlkSGVhZGVyVmFsdWUsXG4gIGhhc093bixcbiAgaXNFcnJvckxpa2UsXG4gIGZ1bGx5UmVhZEJvZHksXG4gIGJ5dGVzTWF0Y2gsXG4gIGlzUmVhZGFibGVTdHJlYW1MaWtlLFxuICByZWFkYWJsZVN0cmVhbUNsb3NlLFxuICBpc29tb3JwaGljRW5jb2RlLFxuICBpc29tb3JwaGljRGVjb2RlLFxuICB1cmxJc0xvY2FsLFxuICB1cmxIYXNIdHRwc1NjaGVtZSxcbiAgdXJsSXNIdHRwSHR0cHNTY2hlbWUsXG4gIHJlYWRBbGxCeXRlcyxcbiAgbm9ybWFsaXplTWV0aG9kUmVjb3JkLFxuICBwYXJzZU1ldGFkYXRhXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrVXJsOiBTeW1ib2woJ3VybCcpLFxuICBrSGVhZGVyczogU3ltYm9sKCdoZWFkZXJzJyksXG4gIGtTaWduYWw6IFN5bWJvbCgnc2lnbmFsJyksXG4gIGtTdGF0ZTogU3ltYm9sKCdzdGF0ZScpLFxuICBrR3VhcmQ6IFN5bWJvbCgnZ3VhcmQnKSxcbiAga1JlYWxtOiBTeW1ib2woJ3JlYWxtJylcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyB0eXBlcyB9ID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IGhhc093biwgdG9VU1ZTdHJpbmcgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5cbi8qKiBAdHlwZSB7aW1wb3J0KCcuLi8uLi90eXBlcy93ZWJpZGwnKS5XZWJpZGx9ICovXG5jb25zdCB3ZWJpZGwgPSB7fVxud2ViaWRsLmNvbnZlcnRlcnMgPSB7fVxud2ViaWRsLnV0aWwgPSB7fVxud2ViaWRsLmVycm9ycyA9IHt9XG5cbndlYmlkbC5lcnJvcnMuZXhjZXB0aW9uID0gZnVuY3Rpb24gKG1lc3NhZ2UpIHtcbiAgcmV0dXJuIG5ldyBUeXBlRXJyb3IoYCR7bWVzc2FnZS5oZWFkZXJ9OiAke21lc3NhZ2UubWVzc2FnZX1gKVxufVxuXG53ZWJpZGwuZXJyb3JzLmNvbnZlcnNpb25GYWlsZWQgPSBmdW5jdGlvbiAoY29udGV4dCkge1xuICBjb25zdCBwbHVyYWwgPSBjb250ZXh0LnR5cGVzLmxlbmd0aCA9PT0gMSA/ICcnIDogJyBvbmUgb2YnXG4gIGNvbnN0IG1lc3NhZ2UgPVxuICAgIGAke2NvbnRleHQuYXJndW1lbnR9IGNvdWxkIG5vdCBiZSBjb252ZXJ0ZWQgdG9gICtcbiAgICBgJHtwbHVyYWx9OiAke2NvbnRleHQudHlwZXMuam9pbignLCAnKX0uYFxuXG4gIHJldHVybiB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgaGVhZGVyOiBjb250ZXh0LnByZWZpeCxcbiAgICBtZXNzYWdlXG4gIH0pXG59XG5cbndlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50ID0gZnVuY3Rpb24gKGNvbnRleHQpIHtcbiAgcmV0dXJuIHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICBoZWFkZXI6IGNvbnRleHQucHJlZml4LFxuICAgIG1lc3NhZ2U6IGBcIiR7Y29udGV4dC52YWx1ZX1cIiBpcyBhbiBpbnZhbGlkICR7Y29udGV4dC50eXBlfS5gXG4gIH0pXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jaW1wbGVtZW50c1xud2ViaWRsLmJyYW5kQ2hlY2sgPSBmdW5jdGlvbiAoViwgSSwgb3B0cyA9IHVuZGVmaW5lZCkge1xuICBpZiAob3B0cz8uc3RyaWN0ICE9PSBmYWxzZSAmJiAhKFYgaW5zdGFuY2VvZiBJKSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0lsbGVnYWwgaW52b2NhdGlvbicpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIFY/LltTeW1ib2wudG9TdHJpbmdUYWddID09PSBJLnByb3RvdHlwZVtTeW1ib2wudG9TdHJpbmdUYWddXG4gIH1cbn1cblxud2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2sgPSBmdW5jdGlvbiAoeyBsZW5ndGggfSwgbWluLCBjdHgpIHtcbiAgaWYgKGxlbmd0aCA8IG1pbikge1xuICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgIG1lc3NhZ2U6IGAke21pbn0gYXJndW1lbnQke21pbiAhPT0gMSA/ICdzJyA6ICcnfSByZXF1aXJlZCwgYCArXG4gICAgICAgICAgICAgICBgYnV0JHtsZW5ndGggPyAnIG9ubHknIDogJyd9ICR7bGVuZ3RofSBmb3VuZC5gLFxuICAgICAgLi4uY3R4XG4gICAgfSlcbiAgfVxufVxuXG53ZWJpZGwuaWxsZWdhbENvbnN0cnVjdG9yID0gZnVuY3Rpb24gKCkge1xuICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgaGVhZGVyOiAnVHlwZUVycm9yJyxcbiAgICBtZXNzYWdlOiAnSWxsZWdhbCBjb25zdHJ1Y3RvcidcbiAgfSlcbn1cblxuLy8gaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1lY21hc2NyaXB0LWRhdGEtdHlwZXMtYW5kLXZhbHVlc1xud2ViaWRsLnV0aWwuVHlwZSA9IGZ1bmN0aW9uIChWKSB7XG4gIHN3aXRjaCAodHlwZW9mIFYpIHtcbiAgICBjYXNlICd1bmRlZmluZWQnOiByZXR1cm4gJ1VuZGVmaW5lZCdcbiAgICBjYXNlICdib29sZWFuJzogcmV0dXJuICdCb29sZWFuJ1xuICAgIGNhc2UgJ3N0cmluZyc6IHJldHVybiAnU3RyaW5nJ1xuICAgIGNhc2UgJ3N5bWJvbCc6IHJldHVybiAnU3ltYm9sJ1xuICAgIGNhc2UgJ251bWJlcic6IHJldHVybiAnTnVtYmVyJ1xuICAgIGNhc2UgJ2JpZ2ludCc6IHJldHVybiAnQmlnSW50J1xuICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICBjYXNlICdvYmplY3QnOiB7XG4gICAgICBpZiAoViA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gJ051bGwnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiAnT2JqZWN0J1xuICAgIH1cbiAgfVxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2Fic3RyYWN0LW9wZGVmLWNvbnZlcnR0b2ludFxud2ViaWRsLnV0aWwuQ29udmVydFRvSW50ID0gZnVuY3Rpb24gKFYsIGJpdExlbmd0aCwgc2lnbmVkbmVzcywgb3B0cyA9IHt9KSB7XG4gIGxldCB1cHBlckJvdW5kXG4gIGxldCBsb3dlckJvdW5kXG5cbiAgLy8gMS4gSWYgYml0TGVuZ3RoIGlzIDY0LCB0aGVuOlxuICBpZiAoYml0TGVuZ3RoID09PSA2NCkge1xuICAgIC8vIDEuIExldCB1cHBlckJvdW5kIGJlIDJeNTMgXHUyMjEyIDEuXG4gICAgdXBwZXJCb3VuZCA9IE1hdGgucG93KDIsIDUzKSAtIDFcblxuICAgIC8vIDIuIElmIHNpZ25lZG5lc3MgaXMgXCJ1bnNpZ25lZFwiLCB0aGVuIGxldCBsb3dlckJvdW5kIGJlIDAuXG4gICAgaWYgKHNpZ25lZG5lc3MgPT09ICd1bnNpZ25lZCcpIHtcbiAgICAgIGxvd2VyQm91bmQgPSAwXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDMuIE90aGVyd2lzZSBsZXQgbG93ZXJCb3VuZCBiZSBcdTIyMTIyXjUzICsgMS5cbiAgICAgIGxvd2VyQm91bmQgPSBNYXRoLnBvdygtMiwgNTMpICsgMVxuICAgIH1cbiAgfSBlbHNlIGlmIChzaWduZWRuZXNzID09PSAndW5zaWduZWQnKSB7XG4gICAgLy8gMi4gT3RoZXJ3aXNlLCBpZiBzaWduZWRuZXNzIGlzIFwidW5zaWduZWRcIiwgdGhlbjpcblxuICAgIC8vIDEuIExldCBsb3dlckJvdW5kIGJlIDAuXG4gICAgbG93ZXJCb3VuZCA9IDBcblxuICAgIC8vIDIuIExldCB1cHBlckJvdW5kIGJlIDJeYml0TGVuZ3RoIFx1MjIxMiAxLlxuICAgIHVwcGVyQm91bmQgPSBNYXRoLnBvdygyLCBiaXRMZW5ndGgpIC0gMVxuICB9IGVsc2Uge1xuICAgIC8vIDMuIE90aGVyd2lzZTpcblxuICAgIC8vIDEuIExldCBsb3dlckJvdW5kIGJlIC0yXmJpdExlbmd0aCBcdTIyMTIgMS5cbiAgICBsb3dlckJvdW5kID0gTWF0aC5wb3coLTIsIGJpdExlbmd0aCkgLSAxXG5cbiAgICAvLyAyLiBMZXQgdXBwZXJCb3VuZCBiZSAyXmJpdExlbmd0aCBcdTIyMTIgMSBcdTIyMTIgMS5cbiAgICB1cHBlckJvdW5kID0gTWF0aC5wb3coMiwgYml0TGVuZ3RoIC0gMSkgLSAxXG4gIH1cblxuICAvLyA0LiBMZXQgeCBiZSA/IFRvTnVtYmVyKFYpLlxuICBsZXQgeCA9IE51bWJlcihWKVxuXG4gIC8vIDUuIElmIHggaXMgXHUyMjEyMCwgdGhlbiBzZXQgeCB0byArMC5cbiAgaWYgKHggPT09IDApIHtcbiAgICB4ID0gMFxuICB9XG5cbiAgLy8gNi4gSWYgdGhlIGNvbnZlcnNpb24gaXMgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbRW5mb3JjZVJhbmdlXSBleHRlbmRlZCBhdHRyaWJ1dGUsIHRoZW46XG4gIGlmIChvcHRzLmVuZm9yY2VSYW5nZSA9PT0gdHJ1ZSkge1xuICAgIC8vIDEuIElmIHggaXMgTmFOLCArXHUyMjFFLCBvciBcdTIyMTJcdTIyMUUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKFxuICAgICAgTnVtYmVyLmlzTmFOKHgpIHx8XG4gICAgICB4ID09PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkgfHxcbiAgICAgIHggPT09IE51bWJlci5ORUdBVElWRV9JTkZJTklUWVxuICAgICkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdJbnRlZ2VyIGNvbnZlcnNpb24nLFxuICAgICAgICBtZXNzYWdlOiBgQ291bGQgbm90IGNvbnZlcnQgJHtWfSB0byBhbiBpbnRlZ2VyLmBcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMi4gU2V0IHggdG8gSW50ZWdlclBhcnQoeCkuXG4gICAgeCA9IHdlYmlkbC51dGlsLkludGVnZXJQYXJ0KHgpXG5cbiAgICAvLyAzLiBJZiB4IDwgbG93ZXJCb3VuZCBvciB4ID4gdXBwZXJCb3VuZCwgdGhlblxuICAgIC8vICAgIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICh4IDwgbG93ZXJCb3VuZCB8fCB4ID4gdXBwZXJCb3VuZCkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdJbnRlZ2VyIGNvbnZlcnNpb24nLFxuICAgICAgICBtZXNzYWdlOiBgVmFsdWUgbXVzdCBiZSBiZXR3ZWVuICR7bG93ZXJCb3VuZH0tJHt1cHBlckJvdW5kfSwgZ290ICR7eH0uYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyA0LiBSZXR1cm4geC5cbiAgICByZXR1cm4geFxuICB9XG5cbiAgLy8gNy4gSWYgeCBpcyBub3QgTmFOIGFuZCB0aGUgY29udmVyc2lvbiBpcyB0byBhbiBJRExcbiAgLy8gICAgdHlwZSBhc3NvY2lhdGVkIHdpdGggdGhlIFtDbGFtcF0gZXh0ZW5kZWRcbiAgLy8gICAgYXR0cmlidXRlLCB0aGVuOlxuICBpZiAoIU51bWJlci5pc05hTih4KSAmJiBvcHRzLmNsYW1wID09PSB0cnVlKSB7XG4gICAgLy8gMS4gU2V0IHggdG8gbWluKG1heCh4LCBsb3dlckJvdW5kKSwgdXBwZXJCb3VuZCkuXG4gICAgeCA9IE1hdGgubWluKE1hdGgubWF4KHgsIGxvd2VyQm91bmQpLCB1cHBlckJvdW5kKVxuXG4gICAgLy8gMi4gUm91bmQgeCB0byB0aGUgbmVhcmVzdCBpbnRlZ2VyLCBjaG9vc2luZyB0aGVcbiAgICAvLyAgICBldmVuIGludGVnZXIgaWYgaXQgbGllcyBoYWxmd2F5IGJldHdlZW4gdHdvLFxuICAgIC8vICAgIGFuZCBjaG9vc2luZyArMCByYXRoZXIgdGhhbiBcdTIyMTIwLlxuICAgIGlmIChNYXRoLmZsb29yKHgpICUgMiA9PT0gMCkge1xuICAgICAgeCA9IE1hdGguZmxvb3IoeClcbiAgICB9IGVsc2Uge1xuICAgICAgeCA9IE1hdGguY2VpbCh4KVxuICAgIH1cblxuICAgIC8vIDMuIFJldHVybiB4LlxuICAgIHJldHVybiB4XG4gIH1cblxuICAvLyA4LiBJZiB4IGlzIE5hTiwgKzAsICtcdTIyMUUsIG9yIFx1MjIxMlx1MjIxRSwgdGhlbiByZXR1cm4gKzAuXG4gIGlmIChcbiAgICBOdW1iZXIuaXNOYU4oeCkgfHxcbiAgICAoeCA9PT0gMCAmJiBPYmplY3QuaXMoMCwgeCkpIHx8XG4gICAgeCA9PT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZIHx8XG4gICAgeCA9PT0gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZXG4gICkge1xuICAgIHJldHVybiAwXG4gIH1cblxuICAvLyA5LiBTZXQgeCB0byBJbnRlZ2VyUGFydCh4KS5cbiAgeCA9IHdlYmlkbC51dGlsLkludGVnZXJQYXJ0KHgpXG5cbiAgLy8gMTAuIFNldCB4IHRvIHggbW9kdWxvIDJeYml0TGVuZ3RoLlxuICB4ID0geCAlIE1hdGgucG93KDIsIGJpdExlbmd0aClcblxuICAvLyAxMS4gSWYgc2lnbmVkbmVzcyBpcyBcInNpZ25lZFwiIGFuZCB4IFx1MjI2NSAyXmJpdExlbmd0aCBcdTIyMTIgMSxcbiAgLy8gICAgdGhlbiByZXR1cm4geCBcdTIyMTIgMl5iaXRMZW5ndGguXG4gIGlmIChzaWduZWRuZXNzID09PSAnc2lnbmVkJyAmJiB4ID49IE1hdGgucG93KDIsIGJpdExlbmd0aCkgLSAxKSB7XG4gICAgcmV0dXJuIHggLSBNYXRoLnBvdygyLCBiaXRMZW5ndGgpXG4gIH1cblxuICAvLyAxMi4gT3RoZXJ3aXNlLCByZXR1cm4geC5cbiAgcmV0dXJuIHhcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNhYnN0cmFjdC1vcGRlZi1pbnRlZ2VycGFydFxud2ViaWRsLnV0aWwuSW50ZWdlclBhcnQgPSBmdW5jdGlvbiAobikge1xuICAvLyAxLiBMZXQgciBiZSBmbG9vcihhYnMobikpLlxuICBjb25zdCByID0gTWF0aC5mbG9vcihNYXRoLmFicyhuKSlcblxuICAvLyAyLiBJZiBuIDwgMCwgdGhlbiByZXR1cm4gLTEgXHUwMEQ3IHIuXG4gIGlmIChuIDwgMCkge1xuICAgIHJldHVybiAtMSAqIHJcbiAgfVxuXG4gIC8vIDMuIE90aGVyd2lzZSwgcmV0dXJuIHIuXG4gIHJldHVybiByXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtc2VxdWVuY2VcbndlYmlkbC5zZXF1ZW5jZUNvbnZlcnRlciA9IGZ1bmN0aW9uIChjb252ZXJ0ZXIpIHtcbiAgcmV0dXJuIChWKSA9PiB7XG4gICAgLy8gMS4gSWYgVHlwZShWKSBpcyBub3QgT2JqZWN0LCB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAod2ViaWRsLnV0aWwuVHlwZShWKSAhPT0gJ09iamVjdCcpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgaGVhZGVyOiAnU2VxdWVuY2UnLFxuICAgICAgICBtZXNzYWdlOiBgVmFsdWUgb2YgdHlwZSAke3dlYmlkbC51dGlsLlR5cGUoVil9IGlzIG5vdCBhbiBPYmplY3QuYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBMZXQgbWV0aG9kIGJlID8gR2V0TWV0aG9kKFYsIEBAaXRlcmF0b3IpLlxuICAgIC8qKiBAdHlwZSB7R2VuZXJhdG9yfSAqL1xuICAgIGNvbnN0IG1ldGhvZCA9IFY/LltTeW1ib2wuaXRlcmF0b3JdPy4oKVxuICAgIGNvbnN0IHNlcSA9IFtdXG5cbiAgICAvLyAzLiBJZiBtZXRob2QgaXMgdW5kZWZpbmVkLCB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAoXG4gICAgICBtZXRob2QgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgdHlwZW9mIG1ldGhvZC5uZXh0ICE9PSAnZnVuY3Rpb24nXG4gICAgKSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogJ1NlcXVlbmNlJyxcbiAgICAgICAgbWVzc2FnZTogJ09iamVjdCBpcyBub3QgYW4gaXRlcmF0b3IuJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2NyZWF0ZS1zZXF1ZW5jZS1mcm9tLWl0ZXJhYmxlXG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IG1ldGhvZC5uZXh0KClcblxuICAgICAgaWYgKGRvbmUpIHtcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgc2VxLnB1c2goY29udmVydGVyKHZhbHVlKSlcbiAgICB9XG5cbiAgICByZXR1cm4gc2VxXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy10by1yZWNvcmRcbndlYmlkbC5yZWNvcmRDb252ZXJ0ZXIgPSBmdW5jdGlvbiAoa2V5Q29udmVydGVyLCB2YWx1ZUNvbnZlcnRlcikge1xuICByZXR1cm4gKE8pID0+IHtcbiAgICAvLyAxLiBJZiBUeXBlKE8pIGlzIG5vdCBPYmplY3QsIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICh3ZWJpZGwudXRpbC5UeXBlKE8pICE9PSAnT2JqZWN0Jykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdSZWNvcmQnLFxuICAgICAgICBtZXNzYWdlOiBgVmFsdWUgb2YgdHlwZSAke3dlYmlkbC51dGlsLlR5cGUoTyl9IGlzIG5vdCBhbiBPYmplY3QuYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBMZXQgcmVzdWx0IGJlIGEgbmV3IGVtcHR5IGluc3RhbmNlIG9mIHJlY29yZDxLLCBWPi5cbiAgICBjb25zdCByZXN1bHQgPSB7fVxuXG4gICAgaWYgKCF0eXBlcy5pc1Byb3h5KE8pKSB7XG4gICAgICAvLyBPYmplY3Qua2V5cyBvbmx5IHJldHVybnMgZW51bWVyYWJsZSBwcm9wZXJ0aWVzXG4gICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoTylcblxuICAgICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgICAvLyAxLiBMZXQgdHlwZWRLZXkgYmUga2V5IGNvbnZlcnRlZCB0byBhbiBJREwgdmFsdWUgb2YgdHlwZSBLLlxuICAgICAgICBjb25zdCB0eXBlZEtleSA9IGtleUNvbnZlcnRlcihrZXkpXG5cbiAgICAgICAgLy8gMi4gTGV0IHZhbHVlIGJlID8gR2V0KE8sIGtleSkuXG4gICAgICAgIC8vIDMuIExldCB0eXBlZFZhbHVlIGJlIHZhbHVlIGNvbnZlcnRlZCB0byBhbiBJREwgdmFsdWUgb2YgdHlwZSBWLlxuICAgICAgICBjb25zdCB0eXBlZFZhbHVlID0gdmFsdWVDb252ZXJ0ZXIoT1trZXldKVxuXG4gICAgICAgIC8vIDQuIFNldCByZXN1bHRbdHlwZWRLZXldIHRvIHR5cGVkVmFsdWUuXG4gICAgICAgIHJlc3VsdFt0eXBlZEtleV0gPSB0eXBlZFZhbHVlXG4gICAgICB9XG5cbiAgICAgIC8vIDUuIFJldHVybiByZXN1bHQuXG4gICAgICByZXR1cm4gcmVzdWx0XG4gICAgfVxuXG4gICAgLy8gMy4gTGV0IGtleXMgYmUgPyBPLltbT3duUHJvcGVydHlLZXlzXV0oKS5cbiAgICBjb25zdCBrZXlzID0gUmVmbGVjdC5vd25LZXlzKE8pXG5cbiAgICAvLyA0LiBGb3IgZWFjaCBrZXkgb2Yga2V5cy5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzKSB7XG4gICAgICAvLyAxLiBMZXQgZGVzYyBiZSA/IE8uW1tHZXRPd25Qcm9wZXJ0eV1dKGtleSkuXG4gICAgICBjb25zdCBkZXNjID0gUmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoTywga2V5KVxuXG4gICAgICAvLyAyLiBJZiBkZXNjIGlzIG5vdCB1bmRlZmluZWQgYW5kIGRlc2MuW1tFbnVtZXJhYmxlXV0gaXMgdHJ1ZTpcbiAgICAgIGlmIChkZXNjPy5lbnVtZXJhYmxlKSB7XG4gICAgICAgIC8vIDEuIExldCB0eXBlZEtleSBiZSBrZXkgY29udmVydGVkIHRvIGFuIElETCB2YWx1ZSBvZiB0eXBlIEsuXG4gICAgICAgIGNvbnN0IHR5cGVkS2V5ID0ga2V5Q29udmVydGVyKGtleSlcblxuICAgICAgICAvLyAyLiBMZXQgdmFsdWUgYmUgPyBHZXQoTywga2V5KS5cbiAgICAgICAgLy8gMy4gTGV0IHR5cGVkVmFsdWUgYmUgdmFsdWUgY29udmVydGVkIHRvIGFuIElETCB2YWx1ZSBvZiB0eXBlIFYuXG4gICAgICAgIGNvbnN0IHR5cGVkVmFsdWUgPSB2YWx1ZUNvbnZlcnRlcihPW2tleV0pXG5cbiAgICAgICAgLy8gNC4gU2V0IHJlc3VsdFt0eXBlZEtleV0gdG8gdHlwZWRWYWx1ZS5cbiAgICAgICAgcmVzdWx0W3R5cGVkS2V5XSA9IHR5cGVkVmFsdWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA1LiBSZXR1cm4gcmVzdWx0LlxuICAgIHJldHVybiByZXN1bHRcbiAgfVxufVxuXG53ZWJpZGwuaW50ZXJmYWNlQ29udmVydGVyID0gZnVuY3Rpb24gKGkpIHtcbiAgcmV0dXJuIChWLCBvcHRzID0ge30pID0+IHtcbiAgICBpZiAob3B0cy5zdHJpY3QgIT09IGZhbHNlICYmICEoViBpbnN0YW5jZW9mIGkpKSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogaS5uYW1lLFxuICAgICAgICBtZXNzYWdlOiBgRXhwZWN0ZWQgJHtWfSB0byBiZSBhbiBpbnN0YW5jZSBvZiAke2kubmFtZX0uYFxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gVlxuICB9XG59XG5cbndlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyID0gZnVuY3Rpb24gKGNvbnZlcnRlcnMpIHtcbiAgcmV0dXJuIChkaWN0aW9uYXJ5KSA9PiB7XG4gICAgY29uc3QgdHlwZSA9IHdlYmlkbC51dGlsLlR5cGUoZGljdGlvbmFyeSlcbiAgICBjb25zdCBkaWN0ID0ge31cblxuICAgIGlmICh0eXBlID09PSAnTnVsbCcgfHwgdHlwZSA9PT0gJ1VuZGVmaW5lZCcpIHtcbiAgICAgIHJldHVybiBkaWN0XG4gICAgfSBlbHNlIGlmICh0eXBlICE9PSAnT2JqZWN0Jykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdEaWN0aW9uYXJ5JyxcbiAgICAgICAgbWVzc2FnZTogYEV4cGVjdGVkICR7ZGljdGlvbmFyeX0gdG8gYmUgb25lIG9mOiBOdWxsLCBVbmRlZmluZWQsIE9iamVjdC5gXG4gICAgICB9KVxuICAgIH1cblxuICAgIGZvciAoY29uc3Qgb3B0aW9ucyBvZiBjb252ZXJ0ZXJzKSB7XG4gICAgICBjb25zdCB7IGtleSwgZGVmYXVsdFZhbHVlLCByZXF1aXJlZCwgY29udmVydGVyIH0gPSBvcHRpb25zXG5cbiAgICAgIGlmIChyZXF1aXJlZCA9PT0gdHJ1ZSkge1xuICAgICAgICBpZiAoIWhhc093bihkaWN0aW9uYXJ5LCBrZXkpKSB7XG4gICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgaGVhZGVyOiAnRGljdGlvbmFyeScsXG4gICAgICAgICAgICBtZXNzYWdlOiBgTWlzc2luZyByZXF1aXJlZCBrZXkgXCIke2tleX1cIi5gXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsZXQgdmFsdWUgPSBkaWN0aW9uYXJ5W2tleV1cbiAgICAgIGNvbnN0IGhhc0RlZmF1bHQgPSBoYXNPd24ob3B0aW9ucywgJ2RlZmF1bHRWYWx1ZScpXG5cbiAgICAgIC8vIE9ubHkgdXNlIGRlZmF1bHRWYWx1ZSBpZiB2YWx1ZSBpcyB1bmRlZmluZWQgYW5kXG4gICAgICAvLyBhIGRlZmF1bHRWYWx1ZSBvcHRpb25zIHdhcyBwcm92aWRlZC5cbiAgICAgIGlmIChoYXNEZWZhdWx0ICYmIHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgIHZhbHVlID0gdmFsdWUgPz8gZGVmYXVsdFZhbHVlXG4gICAgICB9XG5cbiAgICAgIC8vIEEga2V5IGNhbiBiZSBvcHRpb25hbCBhbmQgaGF2ZSBubyBkZWZhdWx0IHZhbHVlLlxuICAgICAgLy8gV2hlbiB0aGlzIGhhcHBlbnMsIGRvIG5vdCBwZXJmb3JtIGEgY29udmVyc2lvbixcbiAgICAgIC8vIGFuZCBkbyBub3QgYXNzaWduIHRoZSBrZXkgYSB2YWx1ZS5cbiAgICAgIGlmIChyZXF1aXJlZCB8fCBoYXNEZWZhdWx0IHx8IHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdmFsdWUgPSBjb252ZXJ0ZXIodmFsdWUpXG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIG9wdGlvbnMuYWxsb3dlZFZhbHVlcyAmJlxuICAgICAgICAgICFvcHRpb25zLmFsbG93ZWRWYWx1ZXMuaW5jbHVkZXModmFsdWUpXG4gICAgICAgICkge1xuICAgICAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICAgIGhlYWRlcjogJ0RpY3Rpb25hcnknLFxuICAgICAgICAgICAgbWVzc2FnZTogYCR7dmFsdWV9IGlzIG5vdCBhbiBhY2NlcHRlZCB0eXBlLiBFeHBlY3RlZCBvbmUgb2YgJHtvcHRpb25zLmFsbG93ZWRWYWx1ZXMuam9pbignLCAnKX0uYFxuICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICBkaWN0W2tleV0gPSB2YWx1ZVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBkaWN0XG4gIH1cbn1cblxud2ViaWRsLm51bGxhYmxlQ29udmVydGVyID0gZnVuY3Rpb24gKGNvbnZlcnRlcikge1xuICByZXR1cm4gKFYpID0+IHtcbiAgICBpZiAoViA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIFZcbiAgICB9XG5cbiAgICByZXR1cm4gY29udmVydGVyKFYpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy1ET01TdHJpbmdcbndlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyA9IGZ1bmN0aW9uIChWLCBvcHRzID0ge30pIHtcbiAgLy8gMS4gSWYgViBpcyBudWxsIGFuZCB0aGUgY29udmVyc2lvbiBpcyB0byBhbiBJREwgdHlwZVxuICAvLyAgICBhc3NvY2lhdGVkIHdpdGggdGhlIFtMZWdhY3lOdWxsVG9FbXB0eVN0cmluZ11cbiAgLy8gICAgZXh0ZW5kZWQgYXR0cmlidXRlLCB0aGVuIHJldHVybiB0aGUgRE9NU3RyaW5nIHZhbHVlXG4gIC8vICAgIHRoYXQgcmVwcmVzZW50cyB0aGUgZW1wdHkgc3RyaW5nLlxuICBpZiAoViA9PT0gbnVsbCAmJiBvcHRzLmxlZ2FjeU51bGxUb0VtcHR5U3RyaW5nKSB7XG4gICAgcmV0dXJuICcnXG4gIH1cblxuICAvLyAyLiBMZXQgeCBiZSA/IFRvU3RyaW5nKFYpLlxuICBpZiAodHlwZW9mIFYgPT09ICdzeW1ib2wnKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignQ291bGQgbm90IGNvbnZlcnQgYXJndW1lbnQgb2YgdHlwZSBzeW1ib2wgdG8gc3RyaW5nLicpXG4gIH1cblxuICAvLyAzLiBSZXR1cm4gdGhlIElETCBET01TdHJpbmcgdmFsdWUgdGhhdCByZXByZXNlbnRzIHRoZVxuICAvLyAgICBzYW1lIHNlcXVlbmNlIG9mIGNvZGUgdW5pdHMgYXMgdGhlIG9uZSB0aGVcbiAgLy8gICAgRUNNQVNjcmlwdCBTdHJpbmcgdmFsdWUgeCByZXByZXNlbnRzLlxuICByZXR1cm4gU3RyaW5nKFYpXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtQnl0ZVN0cmluZ1xud2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZyA9IGZ1bmN0aW9uIChWKSB7XG4gIC8vIDEuIExldCB4IGJlID8gVG9TdHJpbmcoVikuXG4gIC8vIE5vdGU6IERPTVN0cmluZyBjb252ZXJ0ZXIgcGVyZm9ybSA/IFRvU3RyaW5nKFYpXG4gIGNvbnN0IHggPSB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcoVilcblxuICAvLyAyLiBJZiB0aGUgdmFsdWUgb2YgYW55IGVsZW1lbnQgb2YgeCBpcyBncmVhdGVyIHRoYW5cbiAgLy8gICAgMjU1LCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgeC5sZW5ndGg7IGluZGV4KyspIHtcbiAgICBpZiAoeC5jaGFyQ29kZUF0KGluZGV4KSA+IDI1NSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBjb252ZXJ0IGFyZ3VtZW50IHRvIGEgQnl0ZVN0cmluZyBiZWNhdXNlIHRoZSBjaGFyYWN0ZXIgYXQgJyArXG4gICAgICAgIGBpbmRleCAke2luZGV4fSBoYXMgYSB2YWx1ZSBvZiAke3guY2hhckNvZGVBdChpbmRleCl9IHdoaWNoIGlzIGdyZWF0ZXIgdGhhbiAyNTUuYFxuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIC8vIDMuIFJldHVybiBhbiBJREwgQnl0ZVN0cmluZyB2YWx1ZSB3aG9zZSBsZW5ndGggaXMgdGhlXG4gIC8vICAgIGxlbmd0aCBvZiB4LCBhbmQgd2hlcmUgdGhlIHZhbHVlIG9mIGVhY2ggZWxlbWVudCBpc1xuICAvLyAgICB0aGUgdmFsdWUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgZWxlbWVudCBvZiB4LlxuICByZXR1cm4geFxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2VzLVVTVlN0cmluZ1xud2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nID0gdG9VU1ZTdHJpbmdcblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy1ib29sZWFuXG53ZWJpZGwuY29udmVydGVycy5ib29sZWFuID0gZnVuY3Rpb24gKFYpIHtcbiAgLy8gMS4gTGV0IHggYmUgdGhlIHJlc3VsdCBvZiBjb21wdXRpbmcgVG9Cb29sZWFuKFYpLlxuICBjb25zdCB4ID0gQm9vbGVhbihWKVxuXG4gIC8vIDIuIFJldHVybiB0aGUgSURMIGJvb2xlYW4gdmFsdWUgdGhhdCBpcyB0aGUgb25lIHRoYXQgcmVwcmVzZW50c1xuICAvLyAgICB0aGUgc2FtZSB0cnV0aCB2YWx1ZSBhcyB0aGUgRUNNQVNjcmlwdCBCb29sZWFuIHZhbHVlIHguXG4gIHJldHVybiB4XG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtYW55XG53ZWJpZGwuY29udmVydGVycy5hbnkgPSBmdW5jdGlvbiAoVikge1xuICByZXR1cm4gVlxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2VzLWxvbmctbG9uZ1xud2ViaWRsLmNvbnZlcnRlcnNbJ2xvbmcgbG9uZyddID0gZnVuY3Rpb24gKFYpIHtcbiAgLy8gMS4gTGV0IHggYmUgPyBDb252ZXJ0VG9JbnQoViwgNjQsIFwic2lnbmVkXCIpLlxuICBjb25zdCB4ID0gd2ViaWRsLnV0aWwuQ29udmVydFRvSW50KFYsIDY0LCAnc2lnbmVkJylcblxuICAvLyAyLiBSZXR1cm4gdGhlIElETCBsb25nIGxvbmcgdmFsdWUgdGhhdCByZXByZXNlbnRzXG4gIC8vICAgIHRoZSBzYW1lIG51bWVyaWMgdmFsdWUgYXMgeC5cbiAgcmV0dXJuIHhcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNlcy11bnNpZ25lZC1sb25nLWxvbmdcbndlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBsb25nIGxvbmcnXSA9IGZ1bmN0aW9uIChWKSB7XG4gIC8vIDEuIExldCB4IGJlID8gQ29udmVydFRvSW50KFYsIDY0LCBcInVuc2lnbmVkXCIpLlxuICBjb25zdCB4ID0gd2ViaWRsLnV0aWwuQ29udmVydFRvSW50KFYsIDY0LCAndW5zaWduZWQnKVxuXG4gIC8vIDIuIFJldHVybiB0aGUgSURMIHVuc2lnbmVkIGxvbmcgbG9uZyB2YWx1ZSB0aGF0XG4gIC8vICAgIHJlcHJlc2VudHMgdGhlIHNhbWUgbnVtZXJpYyB2YWx1ZSBhcyB4LlxuICByZXR1cm4geFxufVxuXG4vLyBodHRwczovL3dlYmlkbC5zcGVjLndoYXR3Zy5vcmcvI2VzLXVuc2lnbmVkLWxvbmdcbndlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBsb25nJ10gPSBmdW5jdGlvbiAoVikge1xuICAvLyAxLiBMZXQgeCBiZSA/IENvbnZlcnRUb0ludChWLCAzMiwgXCJ1bnNpZ25lZFwiKS5cbiAgY29uc3QgeCA9IHdlYmlkbC51dGlsLkNvbnZlcnRUb0ludChWLCAzMiwgJ3Vuc2lnbmVkJylcblxuICAvLyAyLiBSZXR1cm4gdGhlIElETCB1bnNpZ25lZCBsb25nIHZhbHVlIHRoYXRcbiAgLy8gICAgcmVwcmVzZW50cyB0aGUgc2FtZSBudW1lcmljIHZhbHVlIGFzIHguXG4gIHJldHVybiB4XG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jZXMtdW5zaWduZWQtc2hvcnRcbndlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBzaG9ydCddID0gZnVuY3Rpb24gKFYsIG9wdHMpIHtcbiAgLy8gMS4gTGV0IHggYmUgPyBDb252ZXJ0VG9JbnQoViwgMTYsIFwidW5zaWduZWRcIikuXG4gIGNvbnN0IHggPSB3ZWJpZGwudXRpbC5Db252ZXJ0VG9JbnQoViwgMTYsICd1bnNpZ25lZCcsIG9wdHMpXG5cbiAgLy8gMi4gUmV0dXJuIHRoZSBJREwgdW5zaWduZWQgc2hvcnQgdmFsdWUgdGhhdCByZXByZXNlbnRzXG4gIC8vICAgIHRoZSBzYW1lIG51bWVyaWMgdmFsdWUgYXMgeC5cbiAgcmV0dXJuIHhcbn1cblxuLy8gaHR0cHM6Ly93ZWJpZGwuc3BlYy53aGF0d2cub3JnLyNpZGwtQXJyYXlCdWZmZXJcbndlYmlkbC5jb252ZXJ0ZXJzLkFycmF5QnVmZmVyID0gZnVuY3Rpb24gKFYsIG9wdHMgPSB7fSkge1xuICAvLyAxLiBJZiBUeXBlKFYpIGlzIG5vdCBPYmplY3QsIG9yIFYgZG9lcyBub3QgaGF2ZSBhblxuICAvLyAgICBbW0FycmF5QnVmZmVyRGF0YV1dIGludGVybmFsIHNsb3QsIHRoZW4gdGhyb3cgYVxuICAvLyAgICBUeXBlRXJyb3IuXG4gIC8vIHNlZTogaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1wcm9wZXJ0aWVzLW9mLXRoZS1hcnJheWJ1ZmZlci1pbnN0YW5jZXNcbiAgLy8gc2VlOiBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLXByb3BlcnRpZXMtb2YtdGhlLXNoYXJlZGFycmF5YnVmZmVyLWluc3RhbmNlc1xuICBpZiAoXG4gICAgd2ViaWRsLnV0aWwuVHlwZShWKSAhPT0gJ09iamVjdCcgfHxcbiAgICAhdHlwZXMuaXNBbnlBcnJheUJ1ZmZlcihWKVxuICApIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmNvbnZlcnNpb25GYWlsZWQoe1xuICAgICAgcHJlZml4OiBgJHtWfWAsXG4gICAgICBhcmd1bWVudDogYCR7Vn1gLFxuICAgICAgdHlwZXM6IFsnQXJyYXlCdWZmZXInXVxuICAgIH0pXG4gIH1cblxuICAvLyAyLiBJZiB0aGUgY29udmVyc2lvbiBpcyBub3QgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbQWxsb3dTaGFyZWRdIGV4dGVuZGVkIGF0dHJpYnV0ZSwgYW5kXG4gIC8vICAgIElzU2hhcmVkQXJyYXlCdWZmZXIoVikgaXMgdHJ1ZSwgdGhlbiB0aHJvdyBhXG4gIC8vICAgIFR5cGVFcnJvci5cbiAgaWYgKG9wdHMuYWxsb3dTaGFyZWQgPT09IGZhbHNlICYmIHR5cGVzLmlzU2hhcmVkQXJyYXlCdWZmZXIoVikpIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICBoZWFkZXI6ICdBcnJheUJ1ZmZlcicsXG4gICAgICBtZXNzYWdlOiAnU2hhcmVkQXJyYXlCdWZmZXIgaXMgbm90IGFsbG93ZWQuJ1xuICAgIH0pXG4gIH1cblxuICAvLyAzLiBJZiB0aGUgY29udmVyc2lvbiBpcyBub3QgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbQWxsb3dSZXNpemFibGVdIGV4dGVuZGVkIGF0dHJpYnV0ZSwgYW5kXG4gIC8vICAgIElzUmVzaXphYmxlQXJyYXlCdWZmZXIoVikgaXMgdHJ1ZSwgdGhlbiB0aHJvdyBhXG4gIC8vICAgIFR5cGVFcnJvci5cbiAgLy8gTm90ZTogcmVzaXphYmxlIEFycmF5QnVmZmVycyBhcmUgY3VycmVudGx5IGEgcHJvcG9zYWwuXG5cbiAgLy8gNC4gUmV0dXJuIHRoZSBJREwgQXJyYXlCdWZmZXIgdmFsdWUgdGhhdCBpcyBhXG4gIC8vICAgIHJlZmVyZW5jZSB0byB0aGUgc2FtZSBvYmplY3QgYXMgVi5cbiAgcmV0dXJuIFZcbn1cblxud2ViaWRsLmNvbnZlcnRlcnMuVHlwZWRBcnJheSA9IGZ1bmN0aW9uIChWLCBULCBvcHRzID0ge30pIHtcbiAgLy8gMS4gTGV0IFQgYmUgdGhlIElETCB0eXBlIFYgaXMgYmVpbmcgY29udmVydGVkIHRvLlxuXG4gIC8vIDIuIElmIFR5cGUoVikgaXMgbm90IE9iamVjdCwgb3IgViBkb2VzIG5vdCBoYXZlIGFcbiAgLy8gICAgW1tUeXBlZEFycmF5TmFtZV1dIGludGVybmFsIHNsb3Qgd2l0aCBhIHZhbHVlXG4gIC8vICAgIGVxdWFsIHRvIFRcdTIwMTlzIG5hbWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIGlmIChcbiAgICB3ZWJpZGwudXRpbC5UeXBlKFYpICE9PSAnT2JqZWN0JyB8fFxuICAgICF0eXBlcy5pc1R5cGVkQXJyYXkoVikgfHxcbiAgICBWLmNvbnN0cnVjdG9yLm5hbWUgIT09IFQubmFtZVxuICApIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmNvbnZlcnNpb25GYWlsZWQoe1xuICAgICAgcHJlZml4OiBgJHtULm5hbWV9YCxcbiAgICAgIGFyZ3VtZW50OiBgJHtWfWAsXG4gICAgICB0eXBlczogW1QubmFtZV1cbiAgICB9KVxuICB9XG5cbiAgLy8gMy4gSWYgdGhlIGNvbnZlcnNpb24gaXMgbm90IHRvIGFuIElETCB0eXBlIGFzc29jaWF0ZWRcbiAgLy8gICAgd2l0aCB0aGUgW0FsbG93U2hhcmVkXSBleHRlbmRlZCBhdHRyaWJ1dGUsIGFuZFxuICAvLyAgICBJc1NoYXJlZEFycmF5QnVmZmVyKFYuW1tWaWV3ZWRBcnJheUJ1ZmZlcl1dKSBpc1xuICAvLyAgICB0cnVlLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICBpZiAob3B0cy5hbGxvd1NoYXJlZCA9PT0gZmFsc2UgJiYgdHlwZXMuaXNTaGFyZWRBcnJheUJ1ZmZlcihWLmJ1ZmZlcikpIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICBoZWFkZXI6ICdBcnJheUJ1ZmZlcicsXG4gICAgICBtZXNzYWdlOiAnU2hhcmVkQXJyYXlCdWZmZXIgaXMgbm90IGFsbG93ZWQuJ1xuICAgIH0pXG4gIH1cblxuICAvLyA0LiBJZiB0aGUgY29udmVyc2lvbiBpcyBub3QgdG8gYW4gSURMIHR5cGUgYXNzb2NpYXRlZFxuICAvLyAgICB3aXRoIHRoZSBbQWxsb3dSZXNpemFibGVdIGV4dGVuZGVkIGF0dHJpYnV0ZSwgYW5kXG4gIC8vICAgIElzUmVzaXphYmxlQXJyYXlCdWZmZXIoVi5bW1ZpZXdlZEFycmF5QnVmZmVyXV0pIGlzXG4gIC8vICAgIHRydWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIC8vIE5vdGU6IHJlc2l6YWJsZSBhcnJheSBidWZmZXJzIGFyZSBjdXJyZW50bHkgYSBwcm9wb3NhbFxuXG4gIC8vIDUuIFJldHVybiB0aGUgSURMIHZhbHVlIG9mIHR5cGUgVCB0aGF0IGlzIGEgcmVmZXJlbmNlXG4gIC8vICAgIHRvIHRoZSBzYW1lIG9iamVjdCBhcyBWLlxuICByZXR1cm4gVlxufVxuXG53ZWJpZGwuY29udmVydGVycy5EYXRhVmlldyA9IGZ1bmN0aW9uIChWLCBvcHRzID0ge30pIHtcbiAgLy8gMS4gSWYgVHlwZShWKSBpcyBub3QgT2JqZWN0LCBvciBWIGRvZXMgbm90IGhhdmUgYVxuICAvLyAgICBbW0RhdGFWaWV3XV0gaW50ZXJuYWwgc2xvdCwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgIT09ICdPYmplY3QnIHx8ICF0eXBlcy5pc0RhdGFWaWV3KFYpKSB7XG4gICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgaGVhZGVyOiAnRGF0YVZpZXcnLFxuICAgICAgbWVzc2FnZTogJ09iamVjdCBpcyBub3QgYSBEYXRhVmlldy4nXG4gICAgfSlcbiAgfVxuXG4gIC8vIDIuIElmIHRoZSBjb252ZXJzaW9uIGlzIG5vdCB0byBhbiBJREwgdHlwZSBhc3NvY2lhdGVkXG4gIC8vICAgIHdpdGggdGhlIFtBbGxvd1NoYXJlZF0gZXh0ZW5kZWQgYXR0cmlidXRlLCBhbmRcbiAgLy8gICAgSXNTaGFyZWRBcnJheUJ1ZmZlcihWLltbVmlld2VkQXJyYXlCdWZmZXJdXSkgaXMgdHJ1ZSxcbiAgLy8gICAgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKG9wdHMuYWxsb3dTaGFyZWQgPT09IGZhbHNlICYmIHR5cGVzLmlzU2hhcmVkQXJyYXlCdWZmZXIoVi5idWZmZXIpKSB7XG4gICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgaGVhZGVyOiAnQXJyYXlCdWZmZXInLFxuICAgICAgbWVzc2FnZTogJ1NoYXJlZEFycmF5QnVmZmVyIGlzIG5vdCBhbGxvd2VkLidcbiAgICB9KVxuICB9XG5cbiAgLy8gMy4gSWYgdGhlIGNvbnZlcnNpb24gaXMgbm90IHRvIGFuIElETCB0eXBlIGFzc29jaWF0ZWRcbiAgLy8gICAgd2l0aCB0aGUgW0FsbG93UmVzaXphYmxlXSBleHRlbmRlZCBhdHRyaWJ1dGUsIGFuZFxuICAvLyAgICBJc1Jlc2l6YWJsZUFycmF5QnVmZmVyKFYuW1tWaWV3ZWRBcnJheUJ1ZmZlcl1dKSBpc1xuICAvLyAgICB0cnVlLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAvLyBOb3RlOiByZXNpemFibGUgQXJyYXlCdWZmZXJzIGFyZSBjdXJyZW50bHkgYSBwcm9wb3NhbFxuXG4gIC8vIDQuIFJldHVybiB0aGUgSURMIERhdGFWaWV3IHZhbHVlIHRoYXQgaXMgYSByZWZlcmVuY2VcbiAgLy8gICAgdG8gdGhlIHNhbWUgb2JqZWN0IGFzIFYuXG4gIHJldHVybiBWXG59XG5cbi8vIGh0dHBzOi8vd2ViaWRsLnNwZWMud2hhdHdnLm9yZy8jQnVmZmVyU291cmNlXG53ZWJpZGwuY29udmVydGVycy5CdWZmZXJTb3VyY2UgPSBmdW5jdGlvbiAoViwgb3B0cyA9IHt9KSB7XG4gIGlmICh0eXBlcy5pc0FueUFycmF5QnVmZmVyKFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkFycmF5QnVmZmVyKFYsIG9wdHMpXG4gIH1cblxuICBpZiAodHlwZXMuaXNUeXBlZEFycmF5KFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlR5cGVkQXJyYXkoViwgVi5jb25zdHJ1Y3RvcilcbiAgfVxuXG4gIGlmICh0eXBlcy5pc0RhdGFWaWV3KFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkRhdGFWaWV3KFYsIG9wdHMpXG4gIH1cblxuICB0aHJvdyBuZXcgVHlwZUVycm9yKGBDb3VsZCBub3QgY29udmVydCAke1Z9IHRvIGEgQnVmZmVyU291cmNlLmApXG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxCeXRlU3RyaW5nPiddID0gd2ViaWRsLnNlcXVlbmNlQ29udmVydGVyKFxuICB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nXG4pXG5cbndlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nXSA9IHdlYmlkbC5zZXF1ZW5jZUNvbnZlcnRlcihcbiAgd2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPEJ5dGVTdHJpbmc+J11cbilcblxud2ViaWRsLmNvbnZlcnRlcnNbJ3JlY29yZDxCeXRlU3RyaW5nLCBCeXRlU3RyaW5nPiddID0gd2ViaWRsLnJlY29yZENvbnZlcnRlcihcbiAgd2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZyxcbiAgd2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZ1xuKVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgd2ViaWRsXG59XG4iLCAiY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgYXRvYiB9ID0gcmVxdWlyZSgnYnVmZmVyJylcbmNvbnN0IHsgaXNvbW9ycGhpY0RlY29kZSB9ID0gcmVxdWlyZSgnLi91dGlsJylcblxuY29uc3QgZW5jb2RlciA9IG5ldyBUZXh0RW5jb2RlcigpXG5cbi8qKlxuICogQHNlZSBodHRwczovL21pbWVzbmlmZi5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtdG9rZW4tY29kZS1wb2ludFxuICovXG5jb25zdCBIVFRQX1RPS0VOX0NPREVQT0lOVFMgPSAvXlshIyQlJicqKy0uXl98fkEtWmEtejAtOV0rJC9cbmNvbnN0IEhUVFBfV0hJVEVTUEFDRV9SRUdFWCA9IC8oXFx1MDAwQXxcXHUwMDBEfFxcdTAwMDl8XFx1MDAyMCkvIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcbi8qKlxuICogQHNlZSBodHRwczovL21pbWVzbmlmZi5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtcXVvdGVkLXN0cmluZy10b2tlbi1jb2RlLXBvaW50XG4gKi9cbmNvbnN0IEhUVFBfUVVPVEVEX1NUUklOR19UT0tFTlMgPSAvW1xcdTAwMDl8XFx1MDAyMC1cXHUwMDdFfFxcdTAwODAtXFx1MDBGRl0vIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RhdGEtdXJsLXByb2Nlc3NvclxuLyoqIEBwYXJhbSB7VVJMfSBkYXRhVVJMICovXG5mdW5jdGlvbiBkYXRhVVJMUHJvY2Vzc29yIChkYXRhVVJMKSB7XG4gIC8vIDEuIEFzc2VydDogZGF0YVVSTFx1MjAxOXMgc2NoZW1lIGlzIFwiZGF0YVwiLlxuICBhc3NlcnQoZGF0YVVSTC5wcm90b2NvbCA9PT0gJ2RhdGE6JylcblxuICAvLyAyLiBMZXQgaW5wdXQgYmUgdGhlIHJlc3VsdCBvZiBydW5uaW5nIHRoZSBVUkxcbiAgLy8gc2VyaWFsaXplciBvbiBkYXRhVVJMIHdpdGggZXhjbHVkZSBmcmFnbWVudFxuICAvLyBzZXQgdG8gdHJ1ZS5cbiAgbGV0IGlucHV0ID0gVVJMU2VyaWFsaXplcihkYXRhVVJMLCB0cnVlKVxuXG4gIC8vIDMuIFJlbW92ZSB0aGUgbGVhZGluZyBcImRhdGE6XCIgc3RyaW5nIGZyb20gaW5wdXQuXG4gIGlucHV0ID0gaW5wdXQuc2xpY2UoNSlcblxuICAvLyA0LiBMZXQgcG9zaXRpb24gcG9pbnQgYXQgdGhlIHN0YXJ0IG9mIGlucHV0LlxuICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuXG4gIC8vIDUuIExldCBtaW1lVHlwZSBiZSB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYVxuICAvLyBzZXF1ZW5jZSBvZiBjb2RlIHBvaW50cyB0aGF0IGFyZSBub3QgZXF1YWxcbiAgLy8gdG8gVSswMDJDICgsKSwgZ2l2ZW4gcG9zaXRpb24uXG4gIGxldCBtaW1lVHlwZSA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0KFxuICAgICcsJyxcbiAgICBpbnB1dCxcbiAgICBwb3NpdGlvblxuICApXG5cbiAgLy8gNi4gU3RyaXAgbGVhZGluZyBhbmQgdHJhaWxpbmcgQVNDSUkgd2hpdGVzcGFjZVxuICAvLyBmcm9tIG1pbWVUeXBlLlxuICAvLyBVbmRpY2kgaW1wbGVtZW50YXRpb24gbm90ZTogd2UgbmVlZCB0byBzdG9yZSB0aGVcbiAgLy8gbGVuZ3RoIGJlY2F1c2UgaWYgdGhlIG1pbWV0eXBlIGhhcyBzcGFjZXMgcmVtb3ZlZCxcbiAgLy8gdGhlIHdyb25nIGFtb3VudCB3aWxsIGJlIHNsaWNlZCBmcm9tIHRoZSBpbnB1dCBpblxuICAvLyBzdGVwICM5XG4gIGNvbnN0IG1pbWVUeXBlTGVuZ3RoID0gbWltZVR5cGUubGVuZ3RoXG4gIG1pbWVUeXBlID0gcmVtb3ZlQVNDSUlXaGl0ZXNwYWNlKG1pbWVUeXBlLCB0cnVlLCB0cnVlKVxuXG4gIC8vIDcuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlblxuICAvLyByZXR1cm4gZmFpbHVyZVxuICBpZiAocG9zaXRpb24ucG9zaXRpb24gPj0gaW5wdXQubGVuZ3RoKSB7XG4gICAgcmV0dXJuICdmYWlsdXJlJ1xuICB9XG5cbiAgLy8gOC4gQWR2YW5jZSBwb3NpdGlvbiBieSAxLlxuICBwb3NpdGlvbi5wb3NpdGlvbisrXG5cbiAgLy8gOS4gTGV0IGVuY29kZWRCb2R5IGJlIHRoZSByZW1haW5kZXIgb2YgaW5wdXQuXG4gIGNvbnN0IGVuY29kZWRCb2R5ID0gaW5wdXQuc2xpY2UobWltZVR5cGVMZW5ndGggKyAxKVxuXG4gIC8vIDEwLiBMZXQgYm9keSBiZSB0aGUgcGVyY2VudC1kZWNvZGluZyBvZiBlbmNvZGVkQm9keS5cbiAgbGV0IGJvZHkgPSBzdHJpbmdQZXJjZW50RGVjb2RlKGVuY29kZWRCb2R5KVxuXG4gIC8vIDExLiBJZiBtaW1lVHlwZSBlbmRzIHdpdGggVSswMDNCICg7KSwgZm9sbG93ZWQgYnlcbiAgLy8gemVybyBvciBtb3JlIFUrMDAyMCBTUEFDRSwgZm9sbG93ZWQgYnkgYW4gQVNDSUlcbiAgLy8gY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgXCJiYXNlNjRcIiwgdGhlbjpcbiAgaWYgKC87KFxcdTAwMjApezAsfWJhc2U2NCQvaS50ZXN0KG1pbWVUeXBlKSkge1xuICAgIC8vIDEuIExldCBzdHJpbmdCb2R5IGJlIHRoZSBpc29tb3JwaGljIGRlY29kZSBvZiBib2R5LlxuICAgIGNvbnN0IHN0cmluZ0JvZHkgPSBpc29tb3JwaGljRGVjb2RlKGJvZHkpXG5cbiAgICAvLyAyLiBTZXQgYm9keSB0byB0aGUgZm9yZ2l2aW5nLWJhc2U2NCBkZWNvZGUgb2ZcbiAgICAvLyBzdHJpbmdCb2R5LlxuICAgIGJvZHkgPSBmb3JnaXZpbmdCYXNlNjQoc3RyaW5nQm9keSlcblxuICAgIC8vIDMuIElmIGJvZHkgaXMgZmFpbHVyZSwgdGhlbiByZXR1cm4gZmFpbHVyZS5cbiAgICBpZiAoYm9keSA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICByZXR1cm4gJ2ZhaWx1cmUnXG4gICAgfVxuXG4gICAgLy8gNC4gUmVtb3ZlIHRoZSBsYXN0IDYgY29kZSBwb2ludHMgZnJvbSBtaW1lVHlwZS5cbiAgICBtaW1lVHlwZSA9IG1pbWVUeXBlLnNsaWNlKDAsIC02KVxuXG4gICAgLy8gNS4gUmVtb3ZlIHRyYWlsaW5nIFUrMDAyMCBTUEFDRSBjb2RlIHBvaW50cyBmcm9tIG1pbWVUeXBlLFxuICAgIC8vIGlmIGFueS5cbiAgICBtaW1lVHlwZSA9IG1pbWVUeXBlLnJlcGxhY2UoLyhcXHUwMDIwKSskLywgJycpXG5cbiAgICAvLyA2LiBSZW1vdmUgdGhlIGxhc3QgVSswMDNCICg7KSBjb2RlIHBvaW50IGZyb20gbWltZVR5cGUuXG4gICAgbWltZVR5cGUgPSBtaW1lVHlwZS5zbGljZSgwLCAtMSlcbiAgfVxuXG4gIC8vIDEyLiBJZiBtaW1lVHlwZSBzdGFydHMgd2l0aCBVKzAwM0IgKDspLCB0aGVuIHByZXBlbmRcbiAgLy8gXCJ0ZXh0L3BsYWluXCIgdG8gbWltZVR5cGUuXG4gIGlmIChtaW1lVHlwZS5zdGFydHNXaXRoKCc7JykpIHtcbiAgICBtaW1lVHlwZSA9ICd0ZXh0L3BsYWluJyArIG1pbWVUeXBlXG4gIH1cblxuICAvLyAxMy4gTGV0IG1pbWVUeXBlUmVjb3JkIGJlIHRoZSByZXN1bHQgb2YgcGFyc2luZ1xuICAvLyBtaW1lVHlwZS5cbiAgbGV0IG1pbWVUeXBlUmVjb3JkID0gcGFyc2VNSU1FVHlwZShtaW1lVHlwZSlcblxuICAvLyAxNC4gSWYgbWltZVR5cGVSZWNvcmQgaXMgZmFpbHVyZSwgdGhlbiBzZXRcbiAgLy8gbWltZVR5cGVSZWNvcmQgdG8gdGV4dC9wbGFpbjtjaGFyc2V0PVVTLUFTQ0lJLlxuICBpZiAobWltZVR5cGVSZWNvcmQgPT09ICdmYWlsdXJlJykge1xuICAgIG1pbWVUeXBlUmVjb3JkID0gcGFyc2VNSU1FVHlwZSgndGV4dC9wbGFpbjtjaGFyc2V0PVVTLUFTQ0lJJylcbiAgfVxuXG4gIC8vIDE1LiBSZXR1cm4gYSBuZXcgZGF0YTogVVJMIHN0cnVjdCB3aG9zZSBNSU1FXG4gIC8vIHR5cGUgaXMgbWltZVR5cGVSZWNvcmQgYW5kIGJvZHkgaXMgYm9keS5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RhdGEtdXJsLXN0cnVjdFxuICByZXR1cm4geyBtaW1lVHlwZTogbWltZVR5cGVSZWNvcmQsIGJvZHkgfVxufVxuXG4vLyBodHRwczovL3VybC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtdXJsLXNlcmlhbGl6ZXJcbi8qKlxuICogQHBhcmFtIHtVUkx9IHVybFxuICogQHBhcmFtIHtib29sZWFufSBleGNsdWRlRnJhZ21lbnRcbiAqL1xuZnVuY3Rpb24gVVJMU2VyaWFsaXplciAodXJsLCBleGNsdWRlRnJhZ21lbnQgPSBmYWxzZSkge1xuICBpZiAoIWV4Y2x1ZGVGcmFnbWVudCkge1xuICAgIHJldHVybiB1cmwuaHJlZlxuICB9XG5cbiAgY29uc3QgaHJlZiA9IHVybC5ocmVmXG4gIGNvbnN0IGhhc2hMZW5ndGggPSB1cmwuaGFzaC5sZW5ndGhcblxuICByZXR1cm4gaGFzaExlbmd0aCA9PT0gMCA/IGhyZWYgOiBocmVmLnN1YnN0cmluZygwLCBocmVmLmxlbmd0aCAtIGhhc2hMZW5ndGgpXG59XG5cbi8vIGh0dHBzOi8vaW5mcmEuc3BlYy53aGF0d2cub3JnLyNjb2xsZWN0LWEtc2VxdWVuY2Utb2YtY29kZS1wb2ludHNcbi8qKlxuICogQHBhcmFtIHsoY2hhcjogc3RyaW5nKSA9PiBib29sZWFufSBjb25kaXRpb25cbiAqIEBwYXJhbSB7c3RyaW5nfSBpbnB1dFxuICogQHBhcmFtIHt7IHBvc2l0aW9uOiBudW1iZXIgfX0gcG9zaXRpb25cbiAqL1xuZnVuY3Rpb24gY29sbGVjdEFTZXF1ZW5jZU9mQ29kZVBvaW50cyAoY29uZGl0aW9uLCBpbnB1dCwgcG9zaXRpb24pIHtcbiAgLy8gMS4gTGV0IHJlc3VsdCBiZSB0aGUgZW1wdHkgc3RyaW5nLlxuICBsZXQgcmVzdWx0ID0gJydcblxuICAvLyAyLiBXaGlsZSBwb3NpdGlvbiBkb2Vzblx1MjAxOXQgcG9pbnQgcGFzdCB0aGUgZW5kIG9mIGlucHV0IGFuZCB0aGVcbiAgLy8gY29kZSBwb2ludCBhdCBwb3NpdGlvbiB3aXRoaW4gaW5wdXQgbWVldHMgdGhlIGNvbmRpdGlvbiBjb25kaXRpb246XG4gIHdoaWxlIChwb3NpdGlvbi5wb3NpdGlvbiA8IGlucHV0Lmxlbmd0aCAmJiBjb25kaXRpb24oaW5wdXRbcG9zaXRpb24ucG9zaXRpb25dKSkge1xuICAgIC8vIDEuIEFwcGVuZCB0aGF0IGNvZGUgcG9pbnQgdG8gdGhlIGVuZCBvZiByZXN1bHQuXG4gICAgcmVzdWx0ICs9IGlucHV0W3Bvc2l0aW9uLnBvc2l0aW9uXVxuXG4gICAgLy8gMi4gQWR2YW5jZSBwb3NpdGlvbiBieSAxLlxuICAgIHBvc2l0aW9uLnBvc2l0aW9uKytcbiAgfVxuXG4gIC8vIDMuIFJldHVybiByZXN1bHQuXG4gIHJldHVybiByZXN1bHRcbn1cblxuLyoqXG4gKiBBIGZhc3RlciBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzIHRoYXQgb25seSB3b3JrcyB3aGVuIGNvbXBhcmluZyBhIHNpbmdsZSBjaGFyYWN0ZXIuXG4gKiBAcGFyYW0ge3N0cmluZ30gY2hhclxuICogQHBhcmFtIHtzdHJpbmd9IGlucHV0XG4gKiBAcGFyYW0ge3sgcG9zaXRpb246IG51bWJlciB9fSBwb3NpdGlvblxuICovXG5mdW5jdGlvbiBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdCAoY2hhciwgaW5wdXQsIHBvc2l0aW9uKSB7XG4gIGNvbnN0IGlkeCA9IGlucHV0LmluZGV4T2YoY2hhciwgcG9zaXRpb24ucG9zaXRpb24pXG4gIGNvbnN0IHN0YXJ0ID0gcG9zaXRpb24ucG9zaXRpb25cblxuICBpZiAoaWR4ID09PSAtMSkge1xuICAgIHBvc2l0aW9uLnBvc2l0aW9uID0gaW5wdXQubGVuZ3RoXG4gICAgcmV0dXJuIGlucHV0LnNsaWNlKHN0YXJ0KVxuICB9XG5cbiAgcG9zaXRpb24ucG9zaXRpb24gPSBpZHhcbiAgcmV0dXJuIGlucHV0LnNsaWNlKHN0YXJ0LCBwb3NpdGlvbi5wb3NpdGlvbilcbn1cblxuLy8gaHR0cHM6Ly91cmwuc3BlYy53aGF0d2cub3JnLyNzdHJpbmctcGVyY2VudC1kZWNvZGVcbi8qKiBAcGFyYW0ge3N0cmluZ30gaW5wdXQgKi9cbmZ1bmN0aW9uIHN0cmluZ1BlcmNlbnREZWNvZGUgKGlucHV0KSB7XG4gIC8vIDEuIExldCBieXRlcyBiZSB0aGUgVVRGLTggZW5jb2Rpbmcgb2YgaW5wdXQuXG4gIGNvbnN0IGJ5dGVzID0gZW5jb2Rlci5lbmNvZGUoaW5wdXQpXG5cbiAgLy8gMi4gUmV0dXJuIHRoZSBwZXJjZW50LWRlY29kaW5nIG9mIGJ5dGVzLlxuICByZXR1cm4gcGVyY2VudERlY29kZShieXRlcylcbn1cblxuLy8gaHR0cHM6Ly91cmwuc3BlYy53aGF0d2cub3JnLyNwZXJjZW50LWRlY29kZVxuLyoqIEBwYXJhbSB7VWludDhBcnJheX0gaW5wdXQgKi9cbmZ1bmN0aW9uIHBlcmNlbnREZWNvZGUgKGlucHV0KSB7XG4gIC8vIDEuIExldCBvdXRwdXQgYmUgYW4gZW1wdHkgYnl0ZSBzZXF1ZW5jZS5cbiAgLyoqIEB0eXBlIHtudW1iZXJbXX0gKi9cbiAgY29uc3Qgb3V0cHV0ID0gW11cblxuICAvLyAyLiBGb3IgZWFjaCBieXRlIGJ5dGUgaW4gaW5wdXQ6XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgaW5wdXQubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBieXRlID0gaW5wdXRbaV1cblxuICAgIC8vIDEuIElmIGJ5dGUgaXMgbm90IDB4MjUgKCUpLCB0aGVuIGFwcGVuZCBieXRlIHRvIG91dHB1dC5cbiAgICBpZiAoYnl0ZSAhPT0gMHgyNSkge1xuICAgICAgb3V0cHV0LnB1c2goYnl0ZSlcblxuICAgIC8vIDIuIE90aGVyd2lzZSwgaWYgYnl0ZSBpcyAweDI1ICglKSBhbmQgdGhlIG5leHQgdHdvIGJ5dGVzXG4gICAgLy8gYWZ0ZXIgYnl0ZSBpbiBpbnB1dCBhcmUgbm90IGluIHRoZSByYW5nZXNcbiAgICAvLyAweDMwICgwKSB0byAweDM5ICg5KSwgMHg0MSAoQSkgdG8gMHg0NiAoRiksXG4gICAgLy8gYW5kIDB4NjEgKGEpIHRvIDB4NjYgKGYpLCBhbGwgaW5jbHVzaXZlLCBhcHBlbmQgYnl0ZVxuICAgIC8vIHRvIG91dHB1dC5cbiAgICB9IGVsc2UgaWYgKFxuICAgICAgYnl0ZSA9PT0gMHgyNSAmJlxuICAgICAgIS9eWzAtOUEtRmEtZl17Mn0kL2kudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGlucHV0W2kgKyAxXSwgaW5wdXRbaSArIDJdKSlcbiAgICApIHtcbiAgICAgIG91dHB1dC5wdXNoKDB4MjUpXG5cbiAgICAvLyAzLiBPdGhlcndpc2U6XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDEuIExldCBieXRlUG9pbnQgYmUgdGhlIHR3byBieXRlcyBhZnRlciBieXRlIGluIGlucHV0LFxuICAgICAgLy8gZGVjb2RlZCwgYW5kIHRoZW4gaW50ZXJwcmV0ZWQgYXMgaGV4YWRlY2ltYWwgbnVtYmVyLlxuICAgICAgY29uc3QgbmV4dFR3b0J5dGVzID0gU3RyaW5nLmZyb21DaGFyQ29kZShpbnB1dFtpICsgMV0sIGlucHV0W2kgKyAyXSlcbiAgICAgIGNvbnN0IGJ5dGVQb2ludCA9IE51bWJlci5wYXJzZUludChuZXh0VHdvQnl0ZXMsIDE2KVxuXG4gICAgICAvLyAyLiBBcHBlbmQgYSBieXRlIHdob3NlIHZhbHVlIGlzIGJ5dGVQb2ludCB0byBvdXRwdXQuXG4gICAgICBvdXRwdXQucHVzaChieXRlUG9pbnQpXG5cbiAgICAgIC8vIDMuIFNraXAgdGhlIG5leHQgdHdvIGJ5dGVzIGluIGlucHV0LlxuICAgICAgaSArPSAyXG4gICAgfVxuICB9XG5cbiAgLy8gMy4gUmV0dXJuIG91dHB1dC5cbiAgcmV0dXJuIFVpbnQ4QXJyYXkuZnJvbShvdXRwdXQpXG59XG5cbi8vIGh0dHBzOi8vbWltZXNuaWZmLnNwZWMud2hhdHdnLm9yZy8jcGFyc2UtYS1taW1lLXR5cGVcbi8qKiBAcGFyYW0ge3N0cmluZ30gaW5wdXQgKi9cbmZ1bmN0aW9uIHBhcnNlTUlNRVR5cGUgKGlucHV0KSB7XG4gIC8vIDEuIFJlbW92ZSBhbnkgbGVhZGluZyBhbmQgdHJhaWxpbmcgSFRUUCB3aGl0ZXNwYWNlXG4gIC8vIGZyb20gaW5wdXQuXG4gIGlucHV0ID0gcmVtb3ZlSFRUUFdoaXRlc3BhY2UoaW5wdXQsIHRydWUsIHRydWUpXG5cbiAgLy8gMi4gTGV0IHBvc2l0aW9uIGJlIGEgcG9zaXRpb24gdmFyaWFibGUgZm9yIGlucHV0LFxuICAvLyBpbml0aWFsbHkgcG9pbnRpbmcgYXQgdGhlIHN0YXJ0IG9mIGlucHV0LlxuICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuXG4gIC8vIDMuIExldCB0eXBlIGJlIHRoZSByZXN1bHQgb2YgY29sbGVjdGluZyBhIHNlcXVlbmNlXG4gIC8vIG9mIGNvZGUgcG9pbnRzIHRoYXQgYXJlIG5vdCBVKzAwMkYgKC8pIGZyb21cbiAgLy8gaW5wdXQsIGdpdmVuIHBvc2l0aW9uLlxuICBjb25zdCB0eXBlID0gY29sbGVjdEFTZXF1ZW5jZU9mQ29kZVBvaW50c0Zhc3QoXG4gICAgJy8nLFxuICAgIGlucHV0LFxuICAgIHBvc2l0aW9uXG4gIClcblxuICAvLyA0LiBJZiB0eXBlIGlzIHRoZSBlbXB0eSBzdHJpbmcgb3IgZG9lcyBub3Qgc29sZWx5XG4gIC8vIGNvbnRhaW4gSFRUUCB0b2tlbiBjb2RlIHBvaW50cywgdGhlbiByZXR1cm4gZmFpbHVyZS5cbiAgLy8gaHR0cHM6Ly9taW1lc25pZmYuc3BlYy53aGF0d2cub3JnLyNodHRwLXRva2VuLWNvZGUtcG9pbnRcbiAgaWYgKHR5cGUubGVuZ3RoID09PSAwIHx8ICFIVFRQX1RPS0VOX0NPREVQT0lOVFMudGVzdCh0eXBlKSkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIC8vIDUuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlbiByZXR1cm5cbiAgLy8gZmFpbHVyZVxuICBpZiAocG9zaXRpb24ucG9zaXRpb24gPiBpbnB1dC5sZW5ndGgpIHtcbiAgICByZXR1cm4gJ2ZhaWx1cmUnXG4gIH1cblxuICAvLyA2LiBBZHZhbmNlIHBvc2l0aW9uIGJ5IDEuIChUaGlzIHNraXBzIHBhc3QgVSswMDJGICgvKS4pXG4gIHBvc2l0aW9uLnBvc2l0aW9uKytcblxuICAvLyA3LiBMZXQgc3VidHlwZSBiZSB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYSBzZXF1ZW5jZSBvZlxuICAvLyBjb2RlIHBvaW50cyB0aGF0IGFyZSBub3QgVSswMDNCICg7KSBmcm9tIGlucHV0LCBnaXZlblxuICAvLyBwb3NpdGlvbi5cbiAgbGV0IHN1YnR5cGUgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdChcbiAgICAnOycsXG4gICAgaW5wdXQsXG4gICAgcG9zaXRpb25cbiAgKVxuXG4gIC8vIDguIFJlbW92ZSBhbnkgdHJhaWxpbmcgSFRUUCB3aGl0ZXNwYWNlIGZyb20gc3VidHlwZS5cbiAgc3VidHlwZSA9IHJlbW92ZUhUVFBXaGl0ZXNwYWNlKHN1YnR5cGUsIGZhbHNlLCB0cnVlKVxuXG4gIC8vIDkuIElmIHN1YnR5cGUgaXMgdGhlIGVtcHR5IHN0cmluZyBvciBkb2VzIG5vdCBzb2xlbHlcbiAgLy8gY29udGFpbiBIVFRQIHRva2VuIGNvZGUgcG9pbnRzLCB0aGVuIHJldHVybiBmYWlsdXJlLlxuICBpZiAoc3VidHlwZS5sZW5ndGggPT09IDAgfHwgIUhUVFBfVE9LRU5fQ09ERVBPSU5UUy50ZXN0KHN1YnR5cGUpKSB7XG4gICAgcmV0dXJuICdmYWlsdXJlJ1xuICB9XG5cbiAgY29uc3QgdHlwZUxvd2VyY2FzZSA9IHR5cGUudG9Mb3dlckNhc2UoKVxuICBjb25zdCBzdWJ0eXBlTG93ZXJjYXNlID0gc3VidHlwZS50b0xvd2VyQ2FzZSgpXG5cbiAgLy8gMTAuIExldCBtaW1lVHlwZSBiZSBhIG5ldyBNSU1FIHR5cGUgcmVjb3JkIHdob3NlIHR5cGVcbiAgLy8gaXMgdHlwZSwgaW4gQVNDSUkgbG93ZXJjYXNlLCBhbmQgc3VidHlwZSBpcyBzdWJ0eXBlLFxuICAvLyBpbiBBU0NJSSBsb3dlcmNhc2UuXG4gIC8vIGh0dHBzOi8vbWltZXNuaWZmLnNwZWMud2hhdHdnLm9yZy8jbWltZS10eXBlXG4gIGNvbnN0IG1pbWVUeXBlID0ge1xuICAgIHR5cGU6IHR5cGVMb3dlcmNhc2UsXG4gICAgc3VidHlwZTogc3VidHlwZUxvd2VyY2FzZSxcbiAgICAvKiogQHR5cGUge01hcDxzdHJpbmcsIHN0cmluZz59ICovXG4gICAgcGFyYW1ldGVyczogbmV3IE1hcCgpLFxuICAgIC8vIGh0dHBzOi8vbWltZXNuaWZmLnNwZWMud2hhdHdnLm9yZy8jbWltZS10eXBlLWVzc2VuY2VcbiAgICBlc3NlbmNlOiBgJHt0eXBlTG93ZXJjYXNlfS8ke3N1YnR5cGVMb3dlcmNhc2V9YFxuICB9XG5cbiAgLy8gMTEuIFdoaWxlIHBvc2l0aW9uIGlzIG5vdCBwYXN0IHRoZSBlbmQgb2YgaW5wdXQ6XG4gIHdoaWxlIChwb3NpdGlvbi5wb3NpdGlvbiA8IGlucHV0Lmxlbmd0aCkge1xuICAgIC8vIDEuIEFkdmFuY2UgcG9zaXRpb24gYnkgMS4gKFRoaXMgc2tpcHMgcGFzdCBVKzAwM0IgKDspLilcbiAgICBwb3NpdGlvbi5wb3NpdGlvbisrXG5cbiAgICAvLyAyLiBDb2xsZWN0IGEgc2VxdWVuY2Ugb2YgY29kZSBwb2ludHMgdGhhdCBhcmUgSFRUUFxuICAgIC8vIHdoaXRlc3BhY2UgZnJvbSBpbnB1dCBnaXZlbiBwb3NpdGlvbi5cbiAgICBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzKFxuICAgICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtd2hpdGVzcGFjZVxuICAgICAgY2hhciA9PiBIVFRQX1dISVRFU1BBQ0VfUkVHRVgudGVzdChjaGFyKSxcbiAgICAgIGlucHV0LFxuICAgICAgcG9zaXRpb25cbiAgICApXG5cbiAgICAvLyAzLiBMZXQgcGFyYW1ldGVyTmFtZSBiZSB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYVxuICAgIC8vIHNlcXVlbmNlIG9mIGNvZGUgcG9pbnRzIHRoYXQgYXJlIG5vdCBVKzAwM0IgKDspXG4gICAgLy8gb3IgVSswMDNEICg9KSBmcm9tIGlucHV0LCBnaXZlbiBwb3NpdGlvbi5cbiAgICBsZXQgcGFyYW1ldGVyTmFtZSA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHMoXG4gICAgICAoY2hhcikgPT4gY2hhciAhPT0gJzsnICYmIGNoYXIgIT09ICc9JyxcbiAgICAgIGlucHV0LFxuICAgICAgcG9zaXRpb25cbiAgICApXG5cbiAgICAvLyA0LiBTZXQgcGFyYW1ldGVyTmFtZSB0byBwYXJhbWV0ZXJOYW1lLCBpbiBBU0NJSVxuICAgIC8vIGxvd2VyY2FzZS5cbiAgICBwYXJhbWV0ZXJOYW1lID0gcGFyYW1ldGVyTmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgICAvLyA1LiBJZiBwb3NpdGlvbiBpcyBub3QgcGFzdCB0aGUgZW5kIG9mIGlucHV0LCB0aGVuOlxuICAgIGlmIChwb3NpdGlvbi5wb3NpdGlvbiA8IGlucHV0Lmxlbmd0aCkge1xuICAgICAgLy8gMS4gSWYgdGhlIGNvZGUgcG9pbnQgYXQgcG9zaXRpb24gd2l0aGluIGlucHV0IGlzXG4gICAgICAvLyBVKzAwM0IgKDspLCB0aGVuIGNvbnRpbnVlLlxuICAgICAgaWYgKGlucHV0W3Bvc2l0aW9uLnBvc2l0aW9uXSA9PT0gJzsnKSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIEFkdmFuY2UgcG9zaXRpb24gYnkgMS4gKFRoaXMgc2tpcHMgcGFzdCBVKzAwM0QgKD0pLilcbiAgICAgIHBvc2l0aW9uLnBvc2l0aW9uKytcbiAgICB9XG5cbiAgICAvLyA2LiBJZiBwb3NpdGlvbiBpcyBwYXN0IHRoZSBlbmQgb2YgaW5wdXQsIHRoZW4gYnJlYWsuXG4gICAgaWYgKHBvc2l0aW9uLnBvc2l0aW9uID4gaW5wdXQubGVuZ3RoKSB7XG4gICAgICBicmVha1xuICAgIH1cblxuICAgIC8vIDcuIExldCBwYXJhbWV0ZXJWYWx1ZSBiZSBudWxsLlxuICAgIGxldCBwYXJhbWV0ZXJWYWx1ZSA9IG51bGxcblxuICAgIC8vIDguIElmIHRoZSBjb2RlIHBvaW50IGF0IHBvc2l0aW9uIHdpdGhpbiBpbnB1dCBpc1xuICAgIC8vIFUrMDAyMiAoXCIpLCB0aGVuOlxuICAgIGlmIChpbnB1dFtwb3NpdGlvbi5wb3NpdGlvbl0gPT09ICdcIicpIHtcbiAgICAgIC8vIDEuIFNldCBwYXJhbWV0ZXJWYWx1ZSB0byB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmdcbiAgICAgIC8vIGFuIEhUVFAgcXVvdGVkIHN0cmluZyBmcm9tIGlucHV0LCBnaXZlbiBwb3NpdGlvblxuICAgICAgLy8gYW5kIHRoZSBleHRyYWN0LXZhbHVlIGZsYWcuXG4gICAgICBwYXJhbWV0ZXJWYWx1ZSA9IGNvbGxlY3RBbkhUVFBRdW90ZWRTdHJpbmcoaW5wdXQsIHBvc2l0aW9uLCB0cnVlKVxuXG4gICAgICAvLyAyLiBDb2xsZWN0IGEgc2VxdWVuY2Ugb2YgY29kZSBwb2ludHMgdGhhdCBhcmUgbm90XG4gICAgICAvLyBVKzAwM0IgKDspIGZyb20gaW5wdXQsIGdpdmVuIHBvc2l0aW9uLlxuICAgICAgY29sbGVjdEFTZXF1ZW5jZU9mQ29kZVBvaW50c0Zhc3QoXG4gICAgICAgICc7JyxcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHBvc2l0aW9uXG4gICAgICApXG5cbiAgICAvLyA5LiBPdGhlcndpc2U6XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDEuIFNldCBwYXJhbWV0ZXJWYWx1ZSB0byB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmdcbiAgICAgIC8vIGEgc2VxdWVuY2Ugb2YgY29kZSBwb2ludHMgdGhhdCBhcmUgbm90IFUrMDAzQiAoOylcbiAgICAgIC8vIGZyb20gaW5wdXQsIGdpdmVuIHBvc2l0aW9uLlxuICAgICAgcGFyYW1ldGVyVmFsdWUgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdChcbiAgICAgICAgJzsnLFxuICAgICAgICBpbnB1dCxcbiAgICAgICAgcG9zaXRpb25cbiAgICAgIClcblxuICAgICAgLy8gMi4gUmVtb3ZlIGFueSB0cmFpbGluZyBIVFRQIHdoaXRlc3BhY2UgZnJvbSBwYXJhbWV0ZXJWYWx1ZS5cbiAgICAgIHBhcmFtZXRlclZhbHVlID0gcmVtb3ZlSFRUUFdoaXRlc3BhY2UocGFyYW1ldGVyVmFsdWUsIGZhbHNlLCB0cnVlKVxuXG4gICAgICAvLyAzLiBJZiBwYXJhbWV0ZXJWYWx1ZSBpcyB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIGNvbnRpbnVlLlxuICAgICAgaWYgKHBhcmFtZXRlclZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDEwLiBJZiBhbGwgb2YgdGhlIGZvbGxvd2luZyBhcmUgdHJ1ZVxuICAgIC8vIC0gcGFyYW1ldGVyTmFtZSBpcyBub3QgdGhlIGVtcHR5IHN0cmluZ1xuICAgIC8vIC0gcGFyYW1ldGVyTmFtZSBzb2xlbHkgY29udGFpbnMgSFRUUCB0b2tlbiBjb2RlIHBvaW50c1xuICAgIC8vIC0gcGFyYW1ldGVyVmFsdWUgc29sZWx5IGNvbnRhaW5zIEhUVFAgcXVvdGVkLXN0cmluZyB0b2tlbiBjb2RlIHBvaW50c1xuICAgIC8vIC0gbWltZVR5cGVcdTIwMTlzIHBhcmFtZXRlcnNbcGFyYW1ldGVyTmFtZV0gZG9lcyBub3QgZXhpc3RcbiAgICAvLyB0aGVuIHNldCBtaW1lVHlwZVx1MjAxOXMgcGFyYW1ldGVyc1twYXJhbWV0ZXJOYW1lXSB0byBwYXJhbWV0ZXJWYWx1ZS5cbiAgICBpZiAoXG4gICAgICBwYXJhbWV0ZXJOYW1lLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgSFRUUF9UT0tFTl9DT0RFUE9JTlRTLnRlc3QocGFyYW1ldGVyTmFtZSkgJiZcbiAgICAgIChwYXJhbWV0ZXJWYWx1ZS5sZW5ndGggPT09IDAgfHwgSFRUUF9RVU9URURfU1RSSU5HX1RPS0VOUy50ZXN0KHBhcmFtZXRlclZhbHVlKSkgJiZcbiAgICAgICFtaW1lVHlwZS5wYXJhbWV0ZXJzLmhhcyhwYXJhbWV0ZXJOYW1lKVxuICAgICkge1xuICAgICAgbWltZVR5cGUucGFyYW1ldGVycy5zZXQocGFyYW1ldGVyTmFtZSwgcGFyYW1ldGVyVmFsdWUpXG4gICAgfVxuICB9XG5cbiAgLy8gMTIuIFJldHVybiBtaW1lVHlwZS5cbiAgcmV0dXJuIG1pbWVUeXBlXG59XG5cbi8vIGh0dHBzOi8vaW5mcmEuc3BlYy53aGF0d2cub3JnLyNmb3JnaXZpbmctYmFzZTY0LWRlY29kZVxuLyoqIEBwYXJhbSB7c3RyaW5nfSBkYXRhICovXG5mdW5jdGlvbiBmb3JnaXZpbmdCYXNlNjQgKGRhdGEpIHtcbiAgLy8gMS4gUmVtb3ZlIGFsbCBBU0NJSSB3aGl0ZXNwYWNlIGZyb20gZGF0YS5cbiAgZGF0YSA9IGRhdGEucmVwbGFjZSgvW1xcdTAwMDlcXHUwMDBBXFx1MDAwQ1xcdTAwMERcXHUwMDIwXS9nLCAnJykgIC8vIGVzbGludC1kaXNhYmxlLWxpbmVcblxuICAvLyAyLiBJZiBkYXRhXHUyMDE5cyBjb2RlIHBvaW50IGxlbmd0aCBkaXZpZGVzIGJ5IDQgbGVhdmluZ1xuICAvLyBubyByZW1haW5kZXIsIHRoZW46XG4gIGlmIChkYXRhLmxlbmd0aCAlIDQgPT09IDApIHtcbiAgICAvLyAxLiBJZiBkYXRhIGVuZHMgd2l0aCBvbmUgb3IgdHdvIFUrMDAzRCAoPSkgY29kZSBwb2ludHMsXG4gICAgLy8gdGhlbiByZW1vdmUgdGhlbSBmcm9tIGRhdGEuXG4gICAgZGF0YSA9IGRhdGEucmVwbGFjZSgvPT89JC8sICcnKVxuICB9XG5cbiAgLy8gMy4gSWYgZGF0YVx1MjAxOXMgY29kZSBwb2ludCBsZW5ndGggZGl2aWRlcyBieSA0IGxlYXZpbmdcbiAgLy8gYSByZW1haW5kZXIgb2YgMSwgdGhlbiByZXR1cm4gZmFpbHVyZS5cbiAgaWYgKGRhdGEubGVuZ3RoICUgNCA9PT0gMSkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIC8vIDQuIElmIGRhdGEgY29udGFpbnMgYSBjb2RlIHBvaW50IHRoYXQgaXMgbm90IG9uZSBvZlxuICAvLyAgVSswMDJCICgrKVxuICAvLyAgVSswMDJGICgvKVxuICAvLyAgQVNDSUkgYWxwaGFudW1lcmljXG4gIC8vIHRoZW4gcmV0dXJuIGZhaWx1cmUuXG4gIGlmICgvW14rLzAtOUEtWmEtel0vLnRlc3QoZGF0YSkpIHtcbiAgICByZXR1cm4gJ2ZhaWx1cmUnXG4gIH1cblxuICBjb25zdCBiaW5hcnkgPSBhdG9iKGRhdGEpXG4gIGNvbnN0IGJ5dGVzID0gbmV3IFVpbnQ4QXJyYXkoYmluYXJ5Lmxlbmd0aClcblxuICBmb3IgKGxldCBieXRlID0gMDsgYnl0ZSA8IGJpbmFyeS5sZW5ndGg7IGJ5dGUrKykge1xuICAgIGJ5dGVzW2J5dGVdID0gYmluYXJ5LmNoYXJDb2RlQXQoYnl0ZSlcbiAgfVxuXG4gIHJldHVybiBieXRlc1xufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29sbGVjdC1hbi1odHRwLXF1b3RlZC1zdHJpbmdcbi8vIHRlc3RzOiBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZXhhbXBsZS1odHRwLXF1b3RlZC1zdHJpbmdcbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IGlucHV0XG4gKiBAcGFyYW0ge3sgcG9zaXRpb246IG51bWJlciB9fSBwb3NpdGlvblxuICogQHBhcmFtIHtib29sZWFuP30gZXh0cmFjdFZhbHVlXG4gKi9cbmZ1bmN0aW9uIGNvbGxlY3RBbkhUVFBRdW90ZWRTdHJpbmcgKGlucHV0LCBwb3NpdGlvbiwgZXh0cmFjdFZhbHVlKSB7XG4gIC8vIDEuIExldCBwb3NpdGlvblN0YXJ0IGJlIHBvc2l0aW9uLlxuICBjb25zdCBwb3NpdGlvblN0YXJ0ID0gcG9zaXRpb24ucG9zaXRpb25cblxuICAvLyAyLiBMZXQgdmFsdWUgYmUgdGhlIGVtcHR5IHN0cmluZy5cbiAgbGV0IHZhbHVlID0gJydcblxuICAvLyAzLiBBc3NlcnQ6IHRoZSBjb2RlIHBvaW50IGF0IHBvc2l0aW9uIHdpdGhpbiBpbnB1dFxuICAvLyBpcyBVKzAwMjIgKFwiKS5cbiAgYXNzZXJ0KGlucHV0W3Bvc2l0aW9uLnBvc2l0aW9uXSA9PT0gJ1wiJylcblxuICAvLyA0LiBBZHZhbmNlIHBvc2l0aW9uIGJ5IDEuXG4gIHBvc2l0aW9uLnBvc2l0aW9uKytcblxuICAvLyA1LiBXaGlsZSB0cnVlOlxuICB3aGlsZSAodHJ1ZSkge1xuICAgIC8vIDEuIEFwcGVuZCB0aGUgcmVzdWx0IG9mIGNvbGxlY3RpbmcgYSBzZXF1ZW5jZSBvZiBjb2RlIHBvaW50c1xuICAgIC8vIHRoYXQgYXJlIG5vdCBVKzAwMjIgKFwiKSBvciBVKzAwNUMgKFxcKSBmcm9tIGlucHV0LCBnaXZlblxuICAgIC8vIHBvc2l0aW9uLCB0byB2YWx1ZS5cbiAgICB2YWx1ZSArPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzKFxuICAgICAgKGNoYXIpID0+IGNoYXIgIT09ICdcIicgJiYgY2hhciAhPT0gJ1xcXFwnLFxuICAgICAgaW5wdXQsXG4gICAgICBwb3NpdGlvblxuICAgIClcblxuICAgIC8vIDIuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlbiBicmVhay5cbiAgICBpZiAocG9zaXRpb24ucG9zaXRpb24gPj0gaW5wdXQubGVuZ3RoKSB7XG4gICAgICBicmVha1xuICAgIH1cblxuICAgIC8vIDMuIExldCBxdW90ZU9yQmFja3NsYXNoIGJlIHRoZSBjb2RlIHBvaW50IGF0IHBvc2l0aW9uIHdpdGhpblxuICAgIC8vIGlucHV0LlxuICAgIGNvbnN0IHF1b3RlT3JCYWNrc2xhc2ggPSBpbnB1dFtwb3NpdGlvbi5wb3NpdGlvbl1cblxuICAgIC8vIDQuIEFkdmFuY2UgcG9zaXRpb24gYnkgMS5cbiAgICBwb3NpdGlvbi5wb3NpdGlvbisrXG5cbiAgICAvLyA1LiBJZiBxdW90ZU9yQmFja3NsYXNoIGlzIFUrMDA1QyAoXFwpLCB0aGVuOlxuICAgIGlmIChxdW90ZU9yQmFja3NsYXNoID09PSAnXFxcXCcpIHtcbiAgICAgIC8vIDEuIElmIHBvc2l0aW9uIGlzIHBhc3QgdGhlIGVuZCBvZiBpbnB1dCwgdGhlbiBhcHBlbmRcbiAgICAgIC8vIFUrMDA1QyAoXFwpIHRvIHZhbHVlIGFuZCBicmVhay5cbiAgICAgIGlmIChwb3NpdGlvbi5wb3NpdGlvbiA+PSBpbnB1dC5sZW5ndGgpIHtcbiAgICAgICAgdmFsdWUgKz0gJ1xcXFwnXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIEFwcGVuZCB0aGUgY29kZSBwb2ludCBhdCBwb3NpdGlvbiB3aXRoaW4gaW5wdXQgdG8gdmFsdWUuXG4gICAgICB2YWx1ZSArPSBpbnB1dFtwb3NpdGlvbi5wb3NpdGlvbl1cblxuICAgICAgLy8gMy4gQWR2YW5jZSBwb3NpdGlvbiBieSAxLlxuICAgICAgcG9zaXRpb24ucG9zaXRpb24rK1xuXG4gICAgLy8gNi4gT3RoZXJ3aXNlOlxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAxLiBBc3NlcnQ6IHF1b3RlT3JCYWNrc2xhc2ggaXMgVSswMDIyIChcIikuXG4gICAgICBhc3NlcnQocXVvdGVPckJhY2tzbGFzaCA9PT0gJ1wiJylcblxuICAgICAgLy8gMi4gQnJlYWsuXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIC8vIDYuIElmIHRoZSBleHRyYWN0LXZhbHVlIGZsYWcgaXMgc2V0LCB0aGVuIHJldHVybiB2YWx1ZS5cbiAgaWYgKGV4dHJhY3RWYWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZVxuICB9XG5cbiAgLy8gNy4gUmV0dXJuIHRoZSBjb2RlIHBvaW50cyBmcm9tIHBvc2l0aW9uU3RhcnQgdG8gcG9zaXRpb24sXG4gIC8vIGluY2x1c2l2ZSwgd2l0aGluIGlucHV0LlxuICByZXR1cm4gaW5wdXQuc2xpY2UocG9zaXRpb25TdGFydCwgcG9zaXRpb24ucG9zaXRpb24pXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL21pbWVzbmlmZi5zcGVjLndoYXR3Zy5vcmcvI3NlcmlhbGl6ZS1hLW1pbWUtdHlwZVxuICovXG5mdW5jdGlvbiBzZXJpYWxpemVBTWltZVR5cGUgKG1pbWVUeXBlKSB7XG4gIGFzc2VydChtaW1lVHlwZSAhPT0gJ2ZhaWx1cmUnKVxuICBjb25zdCB7IHBhcmFtZXRlcnMsIGVzc2VuY2UgfSA9IG1pbWVUeXBlXG5cbiAgLy8gMS4gTGV0IHNlcmlhbGl6YXRpb24gYmUgdGhlIGNvbmNhdGVuYXRpb24gb2YgbWltZVR5cGVcdTIwMTlzXG4gIC8vICAgIHR5cGUsIFUrMDAyRiAoLyksIGFuZCBtaW1lVHlwZVx1MjAxOXMgc3VidHlwZS5cbiAgbGV0IHNlcmlhbGl6YXRpb24gPSBlc3NlbmNlXG5cbiAgLy8gMi4gRm9yIGVhY2ggbmFtZSBcdTIxOTIgdmFsdWUgb2YgbWltZVR5cGVcdTIwMTlzIHBhcmFtZXRlcnM6XG4gIGZvciAobGV0IFtuYW1lLCB2YWx1ZV0gb2YgcGFyYW1ldGVycy5lbnRyaWVzKCkpIHtcbiAgICAvLyAxLiBBcHBlbmQgVSswMDNCICg7KSB0byBzZXJpYWxpemF0aW9uLlxuICAgIHNlcmlhbGl6YXRpb24gKz0gJzsnXG5cbiAgICAvLyAyLiBBcHBlbmQgbmFtZSB0byBzZXJpYWxpemF0aW9uLlxuICAgIHNlcmlhbGl6YXRpb24gKz0gbmFtZVxuXG4gICAgLy8gMy4gQXBwZW5kIFUrMDAzRCAoPSkgdG8gc2VyaWFsaXphdGlvbi5cbiAgICBzZXJpYWxpemF0aW9uICs9ICc9J1xuXG4gICAgLy8gNC4gSWYgdmFsdWUgZG9lcyBub3Qgc29sZWx5IGNvbnRhaW4gSFRUUCB0b2tlbiBjb2RlXG4gICAgLy8gICAgcG9pbnRzIG9yIHZhbHVlIGlzIHRoZSBlbXB0eSBzdHJpbmcsIHRoZW46XG4gICAgaWYgKCFIVFRQX1RPS0VOX0NPREVQT0lOVFMudGVzdCh2YWx1ZSkpIHtcbiAgICAgIC8vIDEuIFByZWNlZGUgZWFjaCBvY2N1cmVuY2Ugb2YgVSswMDIyIChcIikgb3JcbiAgICAgIC8vICAgIFUrMDA1QyAoXFwpIGluIHZhbHVlIHdpdGggVSswMDVDIChcXCkuXG4gICAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoLyhcXFxcfFwiKS9nLCAnXFxcXCQxJylcblxuICAgICAgLy8gMi4gUHJlcGVuZCBVKzAwMjIgKFwiKSB0byB2YWx1ZS5cbiAgICAgIHZhbHVlID0gJ1wiJyArIHZhbHVlXG5cbiAgICAgIC8vIDMuIEFwcGVuZCBVKzAwMjIgKFwiKSB0byB2YWx1ZS5cbiAgICAgIHZhbHVlICs9ICdcIidcbiAgICB9XG5cbiAgICAvLyA1LiBBcHBlbmQgdmFsdWUgdG8gc2VyaWFsaXphdGlvbi5cbiAgICBzZXJpYWxpemF0aW9uICs9IHZhbHVlXG4gIH1cblxuICAvLyAzLiBSZXR1cm4gc2VyaWFsaXphdGlvbi5cbiAgcmV0dXJuIHNlcmlhbGl6YXRpb25cbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNodHRwLXdoaXRlc3BhY2VcbiAqIEBwYXJhbSB7c3RyaW5nfSBjaGFyXG4gKi9cbmZ1bmN0aW9uIGlzSFRUUFdoaXRlU3BhY2UgKGNoYXIpIHtcbiAgcmV0dXJuIGNoYXIgPT09ICdcXHInIHx8IGNoYXIgPT09ICdcXG4nIHx8IGNoYXIgPT09ICdcXHQnIHx8IGNoYXIgPT09ICcgJ1xufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtd2hpdGVzcGFjZVxuICogQHBhcmFtIHtzdHJpbmd9IHN0clxuICovXG5mdW5jdGlvbiByZW1vdmVIVFRQV2hpdGVzcGFjZSAoc3RyLCBsZWFkaW5nID0gdHJ1ZSwgdHJhaWxpbmcgPSB0cnVlKSB7XG4gIGxldCBsZWFkID0gMFxuICBsZXQgdHJhaWwgPSBzdHIubGVuZ3RoIC0gMVxuXG4gIGlmIChsZWFkaW5nKSB7XG4gICAgZm9yICg7IGxlYWQgPCBzdHIubGVuZ3RoICYmIGlzSFRUUFdoaXRlU3BhY2Uoc3RyW2xlYWRdKTsgbGVhZCsrKTtcbiAgfVxuXG4gIGlmICh0cmFpbGluZykge1xuICAgIGZvciAoOyB0cmFpbCA+IDAgJiYgaXNIVFRQV2hpdGVTcGFjZShzdHJbdHJhaWxdKTsgdHJhaWwtLSk7XG4gIH1cblxuICByZXR1cm4gc3RyLnNsaWNlKGxlYWQsIHRyYWlsICsgMSlcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vaW5mcmEuc3BlYy53aGF0d2cub3JnLyNhc2NpaS13aGl0ZXNwYWNlXG4gKiBAcGFyYW0ge3N0cmluZ30gY2hhclxuICovXG5mdW5jdGlvbiBpc0FTQ0lJV2hpdGVzcGFjZSAoY2hhcikge1xuICByZXR1cm4gY2hhciA9PT0gJ1xccicgfHwgY2hhciA9PT0gJ1xcbicgfHwgY2hhciA9PT0gJ1xcdCcgfHwgY2hhciA9PT0gJ1xcZicgfHwgY2hhciA9PT0gJyAnXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2luZnJhLnNwZWMud2hhdHdnLm9yZy8jc3RyaXAtbGVhZGluZy1hbmQtdHJhaWxpbmctYXNjaWktd2hpdGVzcGFjZVxuICovXG5mdW5jdGlvbiByZW1vdmVBU0NJSVdoaXRlc3BhY2UgKHN0ciwgbGVhZGluZyA9IHRydWUsIHRyYWlsaW5nID0gdHJ1ZSkge1xuICBsZXQgbGVhZCA9IDBcbiAgbGV0IHRyYWlsID0gc3RyLmxlbmd0aCAtIDFcblxuICBpZiAobGVhZGluZykge1xuICAgIGZvciAoOyBsZWFkIDwgc3RyLmxlbmd0aCAmJiBpc0FTQ0lJV2hpdGVzcGFjZShzdHJbbGVhZF0pOyBsZWFkKyspO1xuICB9XG5cbiAgaWYgKHRyYWlsaW5nKSB7XG4gICAgZm9yICg7IHRyYWlsID4gMCAmJiBpc0FTQ0lJV2hpdGVzcGFjZShzdHJbdHJhaWxdKTsgdHJhaWwtLSk7XG4gIH1cblxuICByZXR1cm4gc3RyLnNsaWNlKGxlYWQsIHRyYWlsICsgMSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGRhdGFVUkxQcm9jZXNzb3IsXG4gIFVSTFNlcmlhbGl6ZXIsXG4gIGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHMsXG4gIGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0LFxuICBzdHJpbmdQZXJjZW50RGVjb2RlLFxuICBwYXJzZU1JTUVUeXBlLFxuICBjb2xsZWN0QW5IVFRQUXVvdGVkU3RyaW5nLFxuICBzZXJpYWxpemVBTWltZVR5cGVcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBCbG9iLCBGaWxlOiBOYXRpdmVGaWxlIH0gPSByZXF1aXJlKCdidWZmZXInKVxuY29uc3QgeyB0eXBlcyB9ID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IGtTdGF0ZSB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgaXNCbG9iTGlrZSB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuL3dlYmlkbCcpXG5jb25zdCB7IHBhcnNlTUlNRVR5cGUsIHNlcmlhbGl6ZUFNaW1lVHlwZSB9ID0gcmVxdWlyZSgnLi9kYXRhVVJMJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IGVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKVxuXG5jbGFzcyBGaWxlIGV4dGVuZHMgQmxvYiB7XG4gIGNvbnN0cnVjdG9yIChmaWxlQml0cywgZmlsZU5hbWUsIG9wdGlvbnMgPSB7fSkge1xuICAgIC8vIFRoZSBGaWxlIGNvbnN0cnVjdG9yIGlzIGludm9rZWQgd2l0aCB0d28gb3IgdGhyZWUgcGFyYW1ldGVycywgZGVwZW5kaW5nXG4gICAgLy8gb24gd2hldGhlciB0aGUgb3B0aW9uYWwgZGljdGlvbmFyeSBwYXJhbWV0ZXIgaXMgdXNlZC4gV2hlbiB0aGUgRmlsZSgpXG4gICAgLy8gY29uc3RydWN0b3IgaXMgaW52b2tlZCwgdXNlciBhZ2VudHMgbXVzdCBydW4gdGhlIGZvbGxvd2luZyBzdGVwczpcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDIsIHsgaGVhZGVyOiAnRmlsZSBjb25zdHJ1Y3RvcicgfSlcblxuICAgIGZpbGVCaXRzID0gd2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPEJsb2JQYXJ0PiddKGZpbGVCaXRzKVxuICAgIGZpbGVOYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKGZpbGVOYW1lKVxuICAgIG9wdGlvbnMgPSB3ZWJpZGwuY29udmVydGVycy5GaWxlUHJvcGVydHlCYWcob3B0aW9ucylcblxuICAgIC8vIDEuIExldCBieXRlcyBiZSB0aGUgcmVzdWx0IG9mIHByb2Nlc3NpbmcgYmxvYiBwYXJ0cyBnaXZlbiBmaWxlQml0cyBhbmRcbiAgICAvLyBvcHRpb25zLlxuICAgIC8vIE5vdGU6IEJsb2IgaGFuZGxlcyB0aGlzIGZvciB1c1xuXG4gICAgLy8gMi4gTGV0IG4gYmUgdGhlIGZpbGVOYW1lIGFyZ3VtZW50IHRvIHRoZSBjb25zdHJ1Y3Rvci5cbiAgICBjb25zdCBuID0gZmlsZU5hbWVcblxuICAgIC8vIDMuIFByb2Nlc3MgRmlsZVByb3BlcnR5QmFnIGRpY3Rpb25hcnkgYXJndW1lbnQgYnkgcnVubmluZyB0aGUgZm9sbG93aW5nXG4gICAgLy8gc3Vic3RlcHM6XG5cbiAgICAvLyAgICAxLiBJZiB0aGUgdHlwZSBtZW1iZXIgaXMgcHJvdmlkZWQgYW5kIGlzIG5vdCB0aGUgZW1wdHkgc3RyaW5nLCBsZXQgdFxuICAgIC8vICAgIGJlIHNldCB0byB0aGUgdHlwZSBkaWN0aW9uYXJ5IG1lbWJlci4gSWYgdCBjb250YWlucyBhbnkgY2hhcmFjdGVyc1xuICAgIC8vICAgIG91dHNpZGUgdGhlIHJhbmdlIFUrMDAyMCB0byBVKzAwN0UsIHRoZW4gc2V0IHQgdG8gdGhlIGVtcHR5IHN0cmluZ1xuICAgIC8vICAgIGFuZCByZXR1cm4gZnJvbSB0aGVzZSBzdWJzdGVwcy5cbiAgICAvLyAgICAyLiBDb252ZXJ0IGV2ZXJ5IGNoYXJhY3RlciBpbiB0IHRvIEFTQ0lJIGxvd2VyY2FzZS5cbiAgICBsZXQgdCA9IG9wdGlvbnMudHlwZVxuICAgIGxldCBkXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbGFiZWxzXG4gICAgc3Vic3RlcDoge1xuICAgICAgaWYgKHQpIHtcbiAgICAgICAgdCA9IHBhcnNlTUlNRVR5cGUodClcblxuICAgICAgICBpZiAodCA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgICAgdCA9ICcnXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWxhYmVsc1xuICAgICAgICAgIGJyZWFrIHN1YnN0ZXBcbiAgICAgICAgfVxuXG4gICAgICAgIHQgPSBzZXJpYWxpemVBTWltZVR5cGUodCkudG9Mb3dlckNhc2UoKVxuICAgICAgfVxuXG4gICAgICAvLyAgICAzLiBJZiB0aGUgbGFzdE1vZGlmaWVkIG1lbWJlciBpcyBwcm92aWRlZCwgbGV0IGQgYmUgc2V0IHRvIHRoZVxuICAgICAgLy8gICAgbGFzdE1vZGlmaWVkIGRpY3Rpb25hcnkgbWVtYmVyLiBJZiBpdCBpcyBub3QgcHJvdmlkZWQsIHNldCBkIHRvIHRoZVxuICAgICAgLy8gICAgY3VycmVudCBkYXRlIGFuZCB0aW1lIHJlcHJlc2VudGVkIGFzIHRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHNpbmNlXG4gICAgICAvLyAgICB0aGUgVW5peCBFcG9jaCAod2hpY2ggaXMgdGhlIGVxdWl2YWxlbnQgb2YgRGF0ZS5ub3coKSBbRUNNQS0yNjJdKS5cbiAgICAgIGQgPSBvcHRpb25zLmxhc3RNb2RpZmllZFxuICAgIH1cblxuICAgIC8vIDQuIFJldHVybiBhIG5ldyBGaWxlIG9iamVjdCBGIHN1Y2ggdGhhdDpcbiAgICAvLyBGIHJlZmVycyB0byB0aGUgYnl0ZXMgYnl0ZSBzZXF1ZW5jZS5cbiAgICAvLyBGLnNpemUgaXMgc2V0IHRvIHRoZSBudW1iZXIgb2YgdG90YWwgYnl0ZXMgaW4gYnl0ZXMuXG4gICAgLy8gRi5uYW1lIGlzIHNldCB0byBuLlxuICAgIC8vIEYudHlwZSBpcyBzZXQgdG8gdC5cbiAgICAvLyBGLmxhc3RNb2RpZmllZCBpcyBzZXQgdG8gZC5cblxuICAgIHN1cGVyKHByb2Nlc3NCbG9iUGFydHMoZmlsZUJpdHMsIG9wdGlvbnMpLCB7IHR5cGU6IHQgfSlcbiAgICB0aGlzW2tTdGF0ZV0gPSB7XG4gICAgICBuYW1lOiBuLFxuICAgICAgbGFzdE1vZGlmaWVkOiBkLFxuICAgICAgdHlwZTogdFxuICAgIH1cbiAgfVxuXG4gIGdldCBuYW1lICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5uYW1lXG4gIH1cblxuICBnZXQgbGFzdE1vZGlmaWVkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5sYXN0TW9kaWZpZWRcbiAgfVxuXG4gIGdldCB0eXBlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS50eXBlXG4gIH1cbn1cblxuY2xhc3MgRmlsZUxpa2Uge1xuICBjb25zdHJ1Y3RvciAoYmxvYkxpa2UsIGZpbGVOYW1lLCBvcHRpb25zID0ge30pIHtcbiAgICAvLyBUT0RPOiBhcmd1bWVudCBpZGwgdHlwZSBjaGVja1xuXG4gICAgLy8gVGhlIEZpbGUgY29uc3RydWN0b3IgaXMgaW52b2tlZCB3aXRoIHR3byBvciB0aHJlZSBwYXJhbWV0ZXJzLCBkZXBlbmRpbmdcbiAgICAvLyBvbiB3aGV0aGVyIHRoZSBvcHRpb25hbCBkaWN0aW9uYXJ5IHBhcmFtZXRlciBpcyB1c2VkLiBXaGVuIHRoZSBGaWxlKClcbiAgICAvLyBjb25zdHJ1Y3RvciBpcyBpbnZva2VkLCB1c2VyIGFnZW50cyBtdXN0IHJ1biB0aGUgZm9sbG93aW5nIHN0ZXBzOlxuXG4gICAgLy8gMS4gTGV0IGJ5dGVzIGJlIHRoZSByZXN1bHQgb2YgcHJvY2Vzc2luZyBibG9iIHBhcnRzIGdpdmVuIGZpbGVCaXRzIGFuZFxuICAgIC8vIG9wdGlvbnMuXG5cbiAgICAvLyAyLiBMZXQgbiBiZSB0aGUgZmlsZU5hbWUgYXJndW1lbnQgdG8gdGhlIGNvbnN0cnVjdG9yLlxuICAgIGNvbnN0IG4gPSBmaWxlTmFtZVxuXG4gICAgLy8gMy4gUHJvY2VzcyBGaWxlUHJvcGVydHlCYWcgZGljdGlvbmFyeSBhcmd1bWVudCBieSBydW5uaW5nIHRoZSBmb2xsb3dpbmdcbiAgICAvLyBzdWJzdGVwczpcblxuICAgIC8vICAgIDEuIElmIHRoZSB0eXBlIG1lbWJlciBpcyBwcm92aWRlZCBhbmQgaXMgbm90IHRoZSBlbXB0eSBzdHJpbmcsIGxldCB0XG4gICAgLy8gICAgYmUgc2V0IHRvIHRoZSB0eXBlIGRpY3Rpb25hcnkgbWVtYmVyLiBJZiB0IGNvbnRhaW5zIGFueSBjaGFyYWN0ZXJzXG4gICAgLy8gICAgb3V0c2lkZSB0aGUgcmFuZ2UgVSswMDIwIHRvIFUrMDA3RSwgdGhlbiBzZXQgdCB0byB0aGUgZW1wdHkgc3RyaW5nXG4gICAgLy8gICAgYW5kIHJldHVybiBmcm9tIHRoZXNlIHN1YnN0ZXBzLlxuICAgIC8vICAgIFRPRE9cbiAgICBjb25zdCB0ID0gb3B0aW9ucy50eXBlXG5cbiAgICAvLyAgICAyLiBDb252ZXJ0IGV2ZXJ5IGNoYXJhY3RlciBpbiB0IHRvIEFTQ0lJIGxvd2VyY2FzZS5cbiAgICAvLyAgICBUT0RPXG5cbiAgICAvLyAgICAzLiBJZiB0aGUgbGFzdE1vZGlmaWVkIG1lbWJlciBpcyBwcm92aWRlZCwgbGV0IGQgYmUgc2V0IHRvIHRoZVxuICAgIC8vICAgIGxhc3RNb2RpZmllZCBkaWN0aW9uYXJ5IG1lbWJlci4gSWYgaXQgaXMgbm90IHByb3ZpZGVkLCBzZXQgZCB0byB0aGVcbiAgICAvLyAgICBjdXJyZW50IGRhdGUgYW5kIHRpbWUgcmVwcmVzZW50ZWQgYXMgdGhlIG51bWJlciBvZiBtaWxsaXNlY29uZHMgc2luY2VcbiAgICAvLyAgICB0aGUgVW5peCBFcG9jaCAod2hpY2ggaXMgdGhlIGVxdWl2YWxlbnQgb2YgRGF0ZS5ub3coKSBbRUNNQS0yNjJdKS5cbiAgICBjb25zdCBkID0gb3B0aW9ucy5sYXN0TW9kaWZpZWQgPz8gRGF0ZS5ub3coKVxuXG4gICAgLy8gNC4gUmV0dXJuIGEgbmV3IEZpbGUgb2JqZWN0IEYgc3VjaCB0aGF0OlxuICAgIC8vIEYgcmVmZXJzIHRvIHRoZSBieXRlcyBieXRlIHNlcXVlbmNlLlxuICAgIC8vIEYuc2l6ZSBpcyBzZXQgdG8gdGhlIG51bWJlciBvZiB0b3RhbCBieXRlcyBpbiBieXRlcy5cbiAgICAvLyBGLm5hbWUgaXMgc2V0IHRvIG4uXG4gICAgLy8gRi50eXBlIGlzIHNldCB0byB0LlxuICAgIC8vIEYubGFzdE1vZGlmaWVkIGlzIHNldCB0byBkLlxuXG4gICAgdGhpc1trU3RhdGVdID0ge1xuICAgICAgYmxvYkxpa2UsXG4gICAgICBuYW1lOiBuLFxuICAgICAgdHlwZTogdCxcbiAgICAgIGxhc3RNb2RpZmllZDogZFxuICAgIH1cbiAgfVxuXG4gIHN0cmVhbSAoLi4uYXJncykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ibG9iTGlrZS5zdHJlYW0oLi4uYXJncylcbiAgfVxuXG4gIGFycmF5QnVmZmVyICguLi5hcmdzKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZUxpa2UpXG5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmJsb2JMaWtlLmFycmF5QnVmZmVyKC4uLmFyZ3MpXG4gIH1cblxuICBzbGljZSAoLi4uYXJncykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ibG9iTGlrZS5zbGljZSguLi5hcmdzKVxuICB9XG5cbiAgdGV4dCAoLi4uYXJncykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ibG9iTGlrZS50ZXh0KC4uLmFyZ3MpXG4gIH1cblxuICBnZXQgc2l6ZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZUxpa2UpXG5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmJsb2JMaWtlLnNpemVcbiAgfVxuXG4gIGdldCB0eXBlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlTGlrZSlcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uYmxvYkxpa2UudHlwZVxuICB9XG5cbiAgZ2V0IG5hbWUgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVMaWtlKVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5uYW1lXG4gIH1cblxuICBnZXQgbGFzdE1vZGlmaWVkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlTGlrZSlcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ubGFzdE1vZGlmaWVkXG4gIH1cblxuICBnZXQgW1N5bWJvbC50b1N0cmluZ1RhZ10gKCkge1xuICAgIHJldHVybiAnRmlsZSdcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhGaWxlLnByb3RvdHlwZSwge1xuICBbU3ltYm9sLnRvU3RyaW5nVGFnXToge1xuICAgIHZhbHVlOiAnRmlsZScsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH0sXG4gIG5hbWU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGxhc3RNb2RpZmllZDoga0VudW1lcmFibGVQcm9wZXJ0eVxufSlcblxud2ViaWRsLmNvbnZlcnRlcnMuQmxvYiA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoQmxvYilcblxud2ViaWRsLmNvbnZlcnRlcnMuQmxvYlBhcnQgPSBmdW5jdGlvbiAoViwgb3B0cykge1xuICBpZiAod2ViaWRsLnV0aWwuVHlwZShWKSA9PT0gJ09iamVjdCcpIHtcbiAgICBpZiAoaXNCbG9iTGlrZShWKSkge1xuICAgICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2IoViwgeyBzdHJpY3Q6IGZhbHNlIH0pXG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgQXJyYXlCdWZmZXIuaXNWaWV3KFYpIHx8XG4gICAgICB0eXBlcy5pc0FueUFycmF5QnVmZmVyKFYpXG4gICAgKSB7XG4gICAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuQnVmZmVyU291cmNlKFYsIG9wdHMpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyhWLCBvcHRzKVxufVxuXG53ZWJpZGwuY29udmVydGVyc1snc2VxdWVuY2U8QmxvYlBhcnQ+J10gPSB3ZWJpZGwuc2VxdWVuY2VDb252ZXJ0ZXIoXG4gIHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2JQYXJ0XG4pXG5cbi8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9GaWxlQVBJLyNkZm4tRmlsZVByb3BlcnR5QmFnXG53ZWJpZGwuY29udmVydGVycy5GaWxlUHJvcGVydHlCYWcgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBrZXk6ICdsYXN0TW9kaWZpZWQnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ2xvbmcgbG9uZyddLFxuICAgIGdldCBkZWZhdWx0VmFsdWUgKCkge1xuICAgICAgcmV0dXJuIERhdGUubm93KClcbiAgICB9XG4gIH0sXG4gIHtcbiAgICBrZXk6ICd0eXBlJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyxcbiAgICBkZWZhdWx0VmFsdWU6ICcnXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdlbmRpbmdzJyxcbiAgICBjb252ZXJ0ZXI6ICh2YWx1ZSkgPT4ge1xuICAgICAgdmFsdWUgPSB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcodmFsdWUpXG4gICAgICB2YWx1ZSA9IHZhbHVlLnRvTG93ZXJDYXNlKClcblxuICAgICAgaWYgKHZhbHVlICE9PSAnbmF0aXZlJykge1xuICAgICAgICB2YWx1ZSA9ICd0cmFuc3BhcmVudCdcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlXG4gICAgfSxcbiAgICBkZWZhdWx0VmFsdWU6ICd0cmFuc3BhcmVudCdcbiAgfVxuXSlcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9GaWxlQVBJLyNwcm9jZXNzLWJsb2ItcGFydHNcbiAqIEBwYXJhbSB7KE5vZGVKUy5UeXBlZEFycmF5fEJsb2J8c3RyaW5nKVtdfSBwYXJ0c1xuICogQHBhcmFtIHt7IHR5cGU6IHN0cmluZywgZW5kaW5nczogc3RyaW5nIH19IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gcHJvY2Vzc0Jsb2JQYXJ0cyAocGFydHMsIG9wdGlvbnMpIHtcbiAgLy8gMS4gTGV0IGJ5dGVzIGJlIGFuIGVtcHR5IHNlcXVlbmNlIG9mIGJ5dGVzLlxuICAvKiogQHR5cGUge05vZGVKUy5UeXBlZEFycmF5W119ICovXG4gIGNvbnN0IGJ5dGVzID0gW11cblxuICAvLyAyLiBGb3IgZWFjaCBlbGVtZW50IGluIHBhcnRzOlxuICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgcGFydHMpIHtcbiAgICAvLyAxLiBJZiBlbGVtZW50IGlzIGEgVVNWU3RyaW5nLCBydW4gdGhlIGZvbGxvd2luZyBzdWJzdGVwczpcbiAgICBpZiAodHlwZW9mIGVsZW1lbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyAxLiBMZXQgcyBiZSBlbGVtZW50LlxuICAgICAgbGV0IHMgPSBlbGVtZW50XG5cbiAgICAgIC8vIDIuIElmIHRoZSBlbmRpbmdzIG1lbWJlciBvZiBvcHRpb25zIGlzIFwibmF0aXZlXCIsIHNldCBzXG4gICAgICAvLyAgICB0byB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmcgbGluZSBlbmRpbmdzIHRvIG5hdGl2ZVxuICAgICAgLy8gICAgb2YgZWxlbWVudC5cbiAgICAgIGlmIChvcHRpb25zLmVuZGluZ3MgPT09ICduYXRpdmUnKSB7XG4gICAgICAgIHMgPSBjb252ZXJ0TGluZUVuZGluZ3NOYXRpdmUocylcbiAgICAgIH1cblxuICAgICAgLy8gMy4gQXBwZW5kIHRoZSByZXN1bHQgb2YgVVRGLTggZW5jb2RpbmcgcyB0byBieXRlcy5cbiAgICAgIGJ5dGVzLnB1c2goZW5jb2Rlci5lbmNvZGUocykpXG4gICAgfSBlbHNlIGlmIChcbiAgICAgIHR5cGVzLmlzQW55QXJyYXlCdWZmZXIoZWxlbWVudCkgfHxcbiAgICAgIHR5cGVzLmlzVHlwZWRBcnJheShlbGVtZW50KVxuICAgICkge1xuICAgICAgLy8gMi4gSWYgZWxlbWVudCBpcyBhIEJ1ZmZlclNvdXJjZSwgZ2V0IGEgY29weSBvZiB0aGVcbiAgICAgIC8vICAgIGJ5dGVzIGhlbGQgYnkgdGhlIGJ1ZmZlciBzb3VyY2UsIGFuZCBhcHBlbmQgdGhvc2VcbiAgICAgIC8vICAgIGJ5dGVzIHRvIGJ5dGVzLlxuICAgICAgaWYgKCFlbGVtZW50LmJ1ZmZlcikgeyAvLyBBcnJheUJ1ZmZlclxuICAgICAgICBieXRlcy5wdXNoKG5ldyBVaW50OEFycmF5KGVsZW1lbnQpKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYnl0ZXMucHVzaChcbiAgICAgICAgICBuZXcgVWludDhBcnJheShlbGVtZW50LmJ1ZmZlciwgZWxlbWVudC5ieXRlT2Zmc2V0LCBlbGVtZW50LmJ5dGVMZW5ndGgpXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGlzQmxvYkxpa2UoZWxlbWVudCkpIHtcbiAgICAgIC8vIDMuIElmIGVsZW1lbnQgaXMgYSBCbG9iLCBhcHBlbmQgdGhlIGJ5dGVzIGl0IHJlcHJlc2VudHNcbiAgICAgIC8vICAgIHRvIGJ5dGVzLlxuICAgICAgYnl0ZXMucHVzaChlbGVtZW50KVxuICAgIH1cbiAgfVxuXG4gIC8vIDMuIFJldHVybiBieXRlcy5cbiAgcmV0dXJuIGJ5dGVzXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvRmlsZUFQSS8jY29udmVydC1saW5lLWVuZGluZ3MtdG8tbmF0aXZlXG4gKiBAcGFyYW0ge3N0cmluZ30gc1xuICovXG5mdW5jdGlvbiBjb252ZXJ0TGluZUVuZGluZ3NOYXRpdmUgKHMpIHtcbiAgLy8gMS4gTGV0IG5hdGl2ZSBsaW5lIGVuZGluZyBiZSBiZSB0aGUgY29kZSBwb2ludCBVKzAwMEEgTEYuXG4gIGxldCBuYXRpdmVMaW5lRW5kaW5nID0gJ1xcbidcblxuICAvLyAyLiBJZiB0aGUgdW5kZXJseWluZyBwbGF0Zm9ybVx1MjAxOXMgY29udmVudGlvbnMgYXJlIHRvXG4gIC8vICAgIHJlcHJlc2VudCBuZXdsaW5lcyBhcyBhIGNhcnJpYWdlIHJldHVybiBhbmQgbGluZSBmZWVkXG4gIC8vICAgIHNlcXVlbmNlLCBzZXQgbmF0aXZlIGxpbmUgZW5kaW5nIHRvIHRoZSBjb2RlIHBvaW50XG4gIC8vICAgIFUrMDAwRCBDUiBmb2xsb3dlZCBieSB0aGUgY29kZSBwb2ludCBVKzAwMEEgTEYuXG4gIGlmIChwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInKSB7XG4gICAgbmF0aXZlTGluZUVuZGluZyA9ICdcXHJcXG4nXG4gIH1cblxuICByZXR1cm4gcy5yZXBsYWNlKC9cXHI/XFxuL2csIG5hdGl2ZUxpbmVFbmRpbmcpXG59XG5cbi8vIElmIHRoaXMgZnVuY3Rpb24gaXMgbW92ZWQgdG8gLi91dGlsLmpzLCBzb21lIHRvb2xzIChzdWNoIGFzXG4vLyByb2xsdXApIHdpbGwgd2FybiBhYm91dCBjaXJjdWxhciBkZXBlbmRlbmNpZXMuIFNlZTpcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xNjI5XG5mdW5jdGlvbiBpc0ZpbGVMaWtlIChvYmplY3QpIHtcbiAgcmV0dXJuIChcbiAgICAoTmF0aXZlRmlsZSAmJiBvYmplY3QgaW5zdGFuY2VvZiBOYXRpdmVGaWxlKSB8fFxuICAgIG9iamVjdCBpbnN0YW5jZW9mIEZpbGUgfHwgKFxuICAgICAgb2JqZWN0ICYmXG4gICAgICAodHlwZW9mIG9iamVjdC5zdHJlYW0gPT09ICdmdW5jdGlvbicgfHxcbiAgICAgIHR5cGVvZiBvYmplY3QuYXJyYXlCdWZmZXIgPT09ICdmdW5jdGlvbicpICYmXG4gICAgICBvYmplY3RbU3ltYm9sLnRvU3RyaW5nVGFnXSA9PT0gJ0ZpbGUnXG4gICAgKVxuICApXG59XG5cbm1vZHVsZS5leHBvcnRzID0geyBGaWxlLCBGaWxlTGlrZSwgaXNGaWxlTGlrZSB9XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgaXNCbG9iTGlrZSwgdG9VU1ZTdHJpbmcsIG1ha2VJdGVyYXRvciB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsga1N0YXRlIH0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBGaWxlOiBVbmRpY2lGaWxlLCBGaWxlTGlrZSwgaXNGaWxlTGlrZSB9ID0gcmVxdWlyZSgnLi9maWxlJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuL3dlYmlkbCcpXG5jb25zdCB7IEJsb2IsIEZpbGU6IE5hdGl2ZUZpbGUgfSA9IHJlcXVpcmUoJ2J1ZmZlcicpXG5cbi8qKiBAdHlwZSB7Z2xvYmFsVGhpc1snRmlsZSddfSAqL1xuY29uc3QgRmlsZSA9IE5hdGl2ZUZpbGUgPz8gVW5kaWNpRmlsZVxuXG4vLyBodHRwczovL3hoci5zcGVjLndoYXR3Zy5vcmcvI2Zvcm1kYXRhXG5jbGFzcyBGb3JtRGF0YSB7XG4gIGNvbnN0cnVjdG9yIChmb3JtKSB7XG4gICAgaWYgKGZvcm0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5jb252ZXJzaW9uRmFpbGVkKHtcbiAgICAgICAgcHJlZml4OiAnRm9ybURhdGEgY29uc3RydWN0b3InLFxuICAgICAgICBhcmd1bWVudDogJ0FyZ3VtZW50IDEnLFxuICAgICAgICB0eXBlczogWyd1bmRlZmluZWQnXVxuICAgICAgfSlcbiAgICB9XG5cbiAgICB0aGlzW2tTdGF0ZV0gPSBbXVxuICB9XG5cbiAgYXBwZW5kIChuYW1lLCB2YWx1ZSwgZmlsZW5hbWUgPSB1bmRlZmluZWQpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdGb3JtRGF0YS5hcHBlbmQnIH0pXG5cbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMyAmJiAhaXNCbG9iTGlrZSh2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgIFwiRmFpbGVkIHRvIGV4ZWN1dGUgJ2FwcGVuZCcgb24gJ0Zvcm1EYXRhJzogcGFyYW1ldGVyIDIgaXMgbm90IG9mIHR5cGUgJ0Jsb2InXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyAxLiBMZXQgdmFsdWUgYmUgdmFsdWUgaWYgZ2l2ZW47IG90aGVyd2lzZSBibG9iVmFsdWUuXG5cbiAgICBuYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKG5hbWUpXG4gICAgdmFsdWUgPSBpc0Jsb2JMaWtlKHZhbHVlKVxuICAgICAgPyB3ZWJpZGwuY29udmVydGVycy5CbG9iKHZhbHVlLCB7IHN0cmljdDogZmFsc2UgfSlcbiAgICAgIDogd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKHZhbHVlKVxuICAgIGZpbGVuYW1lID0gYXJndW1lbnRzLmxlbmd0aCA9PT0gM1xuICAgICAgPyB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcoZmlsZW5hbWUpXG4gICAgICA6IHVuZGVmaW5lZFxuXG4gICAgLy8gMi4gTGV0IGVudHJ5IGJlIHRoZSByZXN1bHQgb2YgY3JlYXRpbmcgYW4gZW50cnkgd2l0aFxuICAgIC8vIG5hbWUsIHZhbHVlLCBhbmQgZmlsZW5hbWUgaWYgZ2l2ZW4uXG4gICAgY29uc3QgZW50cnkgPSBtYWtlRW50cnkobmFtZSwgdmFsdWUsIGZpbGVuYW1lKVxuXG4gICAgLy8gMy4gQXBwZW5kIGVudHJ5IHRvIHRoaXNcdTIwMTlzIGVudHJ5IGxpc3QuXG4gICAgdGhpc1trU3RhdGVdLnB1c2goZW50cnkpXG4gIH1cblxuICBkZWxldGUgKG5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdGb3JtRGF0YS5kZWxldGUnIH0pXG5cbiAgICBuYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKG5hbWUpXG5cbiAgICAvLyBUaGUgZGVsZXRlKG5hbWUpIG1ldGhvZCBzdGVwcyBhcmUgdG8gcmVtb3ZlIGFsbCBlbnRyaWVzIHdob3NlIG5hbWVcbiAgICAvLyBpcyBuYW1lIGZyb20gdGhpc1x1MjAxOXMgZW50cnkgbGlzdC5cbiAgICB0aGlzW2tTdGF0ZV0gPSB0aGlzW2tTdGF0ZV0uZmlsdGVyKGVudHJ5ID0+IGVudHJ5Lm5hbWUgIT09IG5hbWUpXG4gIH1cblxuICBnZXQgKG5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdGb3JtRGF0YS5nZXQnIH0pXG5cbiAgICBuYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKG5hbWUpXG5cbiAgICAvLyAxLiBJZiB0aGVyZSBpcyBubyBlbnRyeSB3aG9zZSBuYW1lIGlzIG5hbWUgaW4gdGhpc1x1MjAxOXMgZW50cnkgbGlzdCxcbiAgICAvLyB0aGVuIHJldHVybiBudWxsLlxuICAgIGNvbnN0IGlkeCA9IHRoaXNba1N0YXRlXS5maW5kSW5kZXgoKGVudHJ5KSA9PiBlbnRyeS5uYW1lID09PSBuYW1lKVxuICAgIGlmIChpZHggPT09IC0xKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIC8vIDIuIFJldHVybiB0aGUgdmFsdWUgb2YgdGhlIGZpcnN0IGVudHJ5IHdob3NlIG5hbWUgaXMgbmFtZSBmcm9tXG4gICAgLy8gdGhpc1x1MjAxOXMgZW50cnkgbGlzdC5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdW2lkeF0udmFsdWVcbiAgfVxuXG4gIGdldEFsbCAobmFtZSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0Zvcm1EYXRhLmdldEFsbCcgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcobmFtZSlcblxuICAgIC8vIDEuIElmIHRoZXJlIGlzIG5vIGVudHJ5IHdob3NlIG5hbWUgaXMgbmFtZSBpbiB0aGlzXHUyMDE5cyBlbnRyeSBsaXN0LFxuICAgIC8vIHRoZW4gcmV0dXJuIHRoZSBlbXB0eSBsaXN0LlxuICAgIC8vIDIuIFJldHVybiB0aGUgdmFsdWVzIG9mIGFsbCBlbnRyaWVzIHdob3NlIG5hbWUgaXMgbmFtZSwgaW4gb3JkZXIsXG4gICAgLy8gZnJvbSB0aGlzXHUyMDE5cyBlbnRyeSBsaXN0LlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV1cbiAgICAgIC5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5uYW1lID09PSBuYW1lKVxuICAgICAgLm1hcCgoZW50cnkpID0+IGVudHJ5LnZhbHVlKVxuICB9XG5cbiAgaGFzIChuYW1lKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRm9ybURhdGEpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnRm9ybURhdGEuaGFzJyB9KVxuXG4gICAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyhuYW1lKVxuXG4gICAgLy8gVGhlIGhhcyhuYW1lKSBtZXRob2Qgc3RlcHMgYXJlIHRvIHJldHVybiB0cnVlIGlmIHRoZXJlIGlzIGFuIGVudHJ5XG4gICAgLy8gd2hvc2UgbmFtZSBpcyBuYW1lIGluIHRoaXNcdTIwMTlzIGVudHJ5IGxpc3Q7IG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmZpbmRJbmRleCgoZW50cnkpID0+IGVudHJ5Lm5hbWUgPT09IG5hbWUpICE9PSAtMVxuICB9XG5cbiAgc2V0IChuYW1lLCB2YWx1ZSwgZmlsZW5hbWUgPSB1bmRlZmluZWQpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGb3JtRGF0YSlcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdGb3JtRGF0YS5zZXQnIH0pXG5cbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMyAmJiAhaXNCbG9iTGlrZSh2YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgIFwiRmFpbGVkIHRvIGV4ZWN1dGUgJ3NldCcgb24gJ0Zvcm1EYXRhJzogcGFyYW1ldGVyIDIgaXMgbm90IG9mIHR5cGUgJ0Jsb2InXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyBUaGUgc2V0KG5hbWUsIHZhbHVlKSBhbmQgc2V0KG5hbWUsIGJsb2JWYWx1ZSwgZmlsZW5hbWUpIG1ldGhvZCBzdGVwc1xuICAgIC8vIGFyZTpcblxuICAgIC8vIDEuIExldCB2YWx1ZSBiZSB2YWx1ZSBpZiBnaXZlbjsgb3RoZXJ3aXNlIGJsb2JWYWx1ZS5cblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcobmFtZSlcbiAgICB2YWx1ZSA9IGlzQmxvYkxpa2UodmFsdWUpXG4gICAgICA/IHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2IodmFsdWUsIHsgc3RyaWN0OiBmYWxzZSB9KVxuICAgICAgOiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcodmFsdWUpXG4gICAgZmlsZW5hbWUgPSBhcmd1bWVudHMubGVuZ3RoID09PSAzXG4gICAgICA/IHRvVVNWU3RyaW5nKGZpbGVuYW1lKVxuICAgICAgOiB1bmRlZmluZWRcblxuICAgIC8vIDIuIExldCBlbnRyeSBiZSB0aGUgcmVzdWx0IG9mIGNyZWF0aW5nIGFuIGVudHJ5IHdpdGggbmFtZSwgdmFsdWUsIGFuZFxuICAgIC8vIGZpbGVuYW1lIGlmIGdpdmVuLlxuICAgIGNvbnN0IGVudHJ5ID0gbWFrZUVudHJ5KG5hbWUsIHZhbHVlLCBmaWxlbmFtZSlcblxuICAgIC8vIDMuIElmIHRoZXJlIGFyZSBlbnRyaWVzIGluIHRoaXNcdTIwMTlzIGVudHJ5IGxpc3Qgd2hvc2UgbmFtZSBpcyBuYW1lLCB0aGVuXG4gICAgLy8gcmVwbGFjZSB0aGUgZmlyc3Qgc3VjaCBlbnRyeSB3aXRoIGVudHJ5IGFuZCByZW1vdmUgdGhlIG90aGVycy5cbiAgICBjb25zdCBpZHggPSB0aGlzW2tTdGF0ZV0uZmluZEluZGV4KChlbnRyeSkgPT4gZW50cnkubmFtZSA9PT0gbmFtZSlcbiAgICBpZiAoaWR4ICE9PSAtMSkge1xuICAgICAgdGhpc1trU3RhdGVdID0gW1xuICAgICAgICAuLi50aGlzW2tTdGF0ZV0uc2xpY2UoMCwgaWR4KSxcbiAgICAgICAgZW50cnksXG4gICAgICAgIC4uLnRoaXNba1N0YXRlXS5zbGljZShpZHggKyAxKS5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5uYW1lICE9PSBuYW1lKVxuICAgICAgXVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyA0LiBPdGhlcndpc2UsIGFwcGVuZCBlbnRyeSB0byB0aGlzXHUyMDE5cyBlbnRyeSBsaXN0LlxuICAgICAgdGhpc1trU3RhdGVdLnB1c2goZW50cnkpXG4gICAgfVxuICB9XG5cbiAgZW50cmllcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRm9ybURhdGEpXG5cbiAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKFxuICAgICAgKCkgPT4gdGhpc1trU3RhdGVdLm1hcChwYWlyID0+IFtwYWlyLm5hbWUsIHBhaXIudmFsdWVdKSxcbiAgICAgICdGb3JtRGF0YScsXG4gICAgICAna2V5K3ZhbHVlJ1xuICAgIClcbiAgfVxuXG4gIGtleXMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IHRoaXNba1N0YXRlXS5tYXAocGFpciA9PiBbcGFpci5uYW1lLCBwYWlyLnZhbHVlXSksXG4gICAgICAnRm9ybURhdGEnLFxuICAgICAgJ2tleSdcbiAgICApXG4gIH1cblxuICB2YWx1ZXMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IHRoaXNba1N0YXRlXS5tYXAocGFpciA9PiBbcGFpci5uYW1lLCBwYWlyLnZhbHVlXSksXG4gICAgICAnRm9ybURhdGEnLFxuICAgICAgJ3ZhbHVlJ1xuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0geyh2YWx1ZTogc3RyaW5nLCBrZXk6IHN0cmluZywgc2VsZjogRm9ybURhdGEpID0+IHZvaWR9IGNhbGxiYWNrRm5cbiAgICogQHBhcmFtIHt1bmtub3dufSB0aGlzQXJnXG4gICAqL1xuICBmb3JFYWNoIChjYWxsYmFja0ZuLCB0aGlzQXJnID0gZ2xvYmFsVGhpcykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZvcm1EYXRhKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0Zvcm1EYXRhLmZvckVhY2gnIH0pXG5cbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrRm4gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgIFwiRmFpbGVkIHRvIGV4ZWN1dGUgJ2ZvckVhY2gnIG9uICdGb3JtRGF0YSc6IHBhcmFtZXRlciAxIGlzIG5vdCBvZiB0eXBlICdGdW5jdGlvbicuXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzKSB7XG4gICAgICBjYWxsYmFja0ZuLmFwcGx5KHRoaXNBcmcsIFt2YWx1ZSwga2V5LCB0aGlzXSlcbiAgICB9XG4gIH1cbn1cblxuRm9ybURhdGEucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl0gPSBGb3JtRGF0YS5wcm90b3R5cGUuZW50cmllc1xuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhGb3JtRGF0YS5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0Zvcm1EYXRhJyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Zvcm0tY29udHJvbC1pbmZyYXN0cnVjdHVyZS5odG1sI2NyZWF0ZS1hbi1lbnRyeVxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWVcbiAqIEBwYXJhbSB7c3RyaW5nfEJsb2J9IHZhbHVlXG4gKiBAcGFyYW0gez9zdHJpbmd9IGZpbGVuYW1lXG4gKiBAcmV0dXJuc1xuICovXG5mdW5jdGlvbiBtYWtlRW50cnkgKG5hbWUsIHZhbHVlLCBmaWxlbmFtZSkge1xuICAvLyAxLiBTZXQgbmFtZSB0byB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmcgbmFtZSBpbnRvIGEgc2NhbGFyIHZhbHVlIHN0cmluZy5cbiAgLy8gXCJUbyBjb252ZXJ0IGEgc3RyaW5nIGludG8gYSBzY2FsYXIgdmFsdWUgc3RyaW5nLCByZXBsYWNlIGFueSBzdXJyb2dhdGVzXG4gIC8vICB3aXRoIFUrRkZGRC5cIlxuICAvLyBzZWU6IGh0dHBzOi8vbm9kZWpzLm9yZy9kaXN0L2xhdGVzdC12MTgueC9kb2NzL2FwaS9idWZmZXIuaHRtbCNidWZ0b3N0cmluZ2VuY29kaW5nLXN0YXJ0LWVuZFxuICBuYW1lID0gQnVmZmVyLmZyb20obmFtZSkudG9TdHJpbmcoJ3V0ZjgnKVxuXG4gIC8vIDIuIElmIHZhbHVlIGlzIGEgc3RyaW5nLCB0aGVuIHNldCB2YWx1ZSB0byB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmdcbiAgLy8gICAgdmFsdWUgaW50byBhIHNjYWxhciB2YWx1ZSBzdHJpbmcuXG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgdmFsdWUgPSBCdWZmZXIuZnJvbSh2YWx1ZSkudG9TdHJpbmcoJ3V0ZjgnKVxuICB9IGVsc2Uge1xuICAgIC8vIDMuIE90aGVyd2lzZTpcblxuICAgIC8vIDEuIElmIHZhbHVlIGlzIG5vdCBhIEZpbGUgb2JqZWN0LCB0aGVuIHNldCB2YWx1ZSB0byBhIG5ldyBGaWxlIG9iamVjdCxcbiAgICAvLyAgICByZXByZXNlbnRpbmcgdGhlIHNhbWUgYnl0ZXMsIHdob3NlIG5hbWUgYXR0cmlidXRlIHZhbHVlIGlzIFwiYmxvYlwiXG4gICAgaWYgKCFpc0ZpbGVMaWtlKHZhbHVlKSkge1xuICAgICAgdmFsdWUgPSB2YWx1ZSBpbnN0YW5jZW9mIEJsb2JcbiAgICAgICAgPyBuZXcgRmlsZShbdmFsdWVdLCAnYmxvYicsIHsgdHlwZTogdmFsdWUudHlwZSB9KVxuICAgICAgICA6IG5ldyBGaWxlTGlrZSh2YWx1ZSwgJ2Jsb2InLCB7IHR5cGU6IHZhbHVlLnR5cGUgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBJZiBmaWxlbmFtZSBpcyBnaXZlbiwgdGhlbiBzZXQgdmFsdWUgdG8gYSBuZXcgRmlsZSBvYmplY3QsXG4gICAgLy8gICAgcmVwcmVzZW50aW5nIHRoZSBzYW1lIGJ5dGVzLCB3aG9zZSBuYW1lIGF0dHJpYnV0ZSBpcyBmaWxlbmFtZS5cbiAgICBpZiAoZmlsZW5hbWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLyoqIEB0eXBlIHtGaWxlUHJvcGVydHlCYWd9ICovXG4gICAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICB0eXBlOiB2YWx1ZS50eXBlLFxuICAgICAgICBsYXN0TW9kaWZpZWQ6IHZhbHVlLmxhc3RNb2RpZmllZFxuICAgICAgfVxuXG4gICAgICB2YWx1ZSA9IChOYXRpdmVGaWxlICYmIHZhbHVlIGluc3RhbmNlb2YgTmF0aXZlRmlsZSkgfHwgdmFsdWUgaW5zdGFuY2VvZiBVbmRpY2lGaWxlXG4gICAgICAgID8gbmV3IEZpbGUoW3ZhbHVlXSwgZmlsZW5hbWUsIG9wdGlvbnMpXG4gICAgICAgIDogbmV3IEZpbGVMaWtlKHZhbHVlLCBmaWxlbmFtZSwgb3B0aW9ucylcbiAgICB9XG4gIH1cblxuICAvLyA0LiBSZXR1cm4gYW4gZW50cnkgd2hvc2UgbmFtZSBpcyBuYW1lIGFuZCB3aG9zZSB2YWx1ZSBpcyB2YWx1ZS5cbiAgcmV0dXJuIHsgbmFtZSwgdmFsdWUgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHsgRm9ybURhdGEgfVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBCdXNib3kgPSByZXF1aXJlKCdAZmFzdGlmeS9idXNib3knKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7XG4gIFJlYWRhYmxlU3RyZWFtRnJvbSxcbiAgaXNCbG9iTGlrZSxcbiAgaXNSZWFkYWJsZVN0cmVhbUxpa2UsXG4gIHJlYWRhYmxlU3RyZWFtQ2xvc2UsXG4gIGNyZWF0ZURlZmVycmVkUHJvbWlzZSxcbiAgZnVsbHlSZWFkQm9keVxufSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IEZvcm1EYXRhIH0gPSByZXF1aXJlKCcuL2Zvcm1kYXRhJylcbmNvbnN0IHsga1N0YXRlIH0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyB3ZWJpZGwgfSA9IHJlcXVpcmUoJy4vd2ViaWRsJylcbmNvbnN0IHsgRE9NRXhjZXB0aW9uLCBzdHJ1Y3R1cmVkQ2xvbmUgfSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsgQmxvYiwgRmlsZTogTmF0aXZlRmlsZSB9ID0gcmVxdWlyZSgnYnVmZmVyJylcbmNvbnN0IHsga0JvZHlVc2VkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgaXNFcnJvcmVkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBpc1VpbnQ4QXJyYXksIGlzQXJyYXlCdWZmZXIgfSA9IHJlcXVpcmUoJ3V0aWwvdHlwZXMnKVxuY29uc3QgeyBGaWxlOiBVbmRpY2lGaWxlIH0gPSByZXF1aXJlKCcuL2ZpbGUnKVxuY29uc3QgeyBwYXJzZU1JTUVUeXBlLCBzZXJpYWxpemVBTWltZVR5cGUgfSA9IHJlcXVpcmUoJy4vZGF0YVVSTCcpXG5cbmxldCByYW5kb21cbnRyeSB7XG4gIGNvbnN0IGNyeXB0byA9IHJlcXVpcmUoJ25vZGU6Y3J5cHRvJylcbiAgcmFuZG9tID0gKG1heCkgPT4gY3J5cHRvLnJhbmRvbUludCgwLCBtYXgpXG59IGNhdGNoIHtcbiAgcmFuZG9tID0gKG1heCkgPT4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbShtYXgpKVxufVxuXG5sZXQgUmVhZGFibGVTdHJlYW0gPSBnbG9iYWxUaGlzLlJlYWRhYmxlU3RyZWFtXG5cbi8qKiBAdHlwZSB7Z2xvYmFsVGhpc1snRmlsZSddfSAqL1xuY29uc3QgRmlsZSA9IE5hdGl2ZUZpbGUgPz8gVW5kaWNpRmlsZVxuY29uc3QgdGV4dEVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKVxuY29uc3QgdGV4dERlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoKVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1ib2R5aW5pdC1leHRyYWN0XG5mdW5jdGlvbiBleHRyYWN0Qm9keSAob2JqZWN0LCBrZWVwYWxpdmUgPSBmYWxzZSkge1xuICBpZiAoIVJlYWRhYmxlU3RyZWFtKSB7XG4gICAgUmVhZGFibGVTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbiAgfVxuXG4gIC8vIDEuIExldCBzdHJlYW0gYmUgbnVsbC5cbiAgbGV0IHN0cmVhbSA9IG51bGxcblxuICAvLyAyLiBJZiBvYmplY3QgaXMgYSBSZWFkYWJsZVN0cmVhbSBvYmplY3QsIHRoZW4gc2V0IHN0cmVhbSB0byBvYmplY3QuXG4gIGlmIChvYmplY3QgaW5zdGFuY2VvZiBSZWFkYWJsZVN0cmVhbSkge1xuICAgIHN0cmVhbSA9IG9iamVjdFxuICB9IGVsc2UgaWYgKGlzQmxvYkxpa2Uob2JqZWN0KSkge1xuICAgIC8vIDMuIE90aGVyd2lzZSwgaWYgb2JqZWN0IGlzIGEgQmxvYiBvYmplY3QsIHNldCBzdHJlYW0gdG8gdGhlXG4gICAgLy8gICAgcmVzdWx0IG9mIHJ1bm5pbmcgb2JqZWN0XHUyMDE5cyBnZXQgc3RyZWFtLlxuICAgIHN0cmVhbSA9IG9iamVjdC5zdHJlYW0oKVxuICB9IGVsc2Uge1xuICAgIC8vIDQuIE90aGVyd2lzZSwgc2V0IHN0cmVhbSB0byBhIG5ldyBSZWFkYWJsZVN0cmVhbSBvYmplY3QsIGFuZCBzZXRcbiAgICAvLyAgICB1cCBzdHJlYW0uXG4gICAgc3RyZWFtID0gbmV3IFJlYWRhYmxlU3RyZWFtKHtcbiAgICAgIGFzeW5jIHB1bGwgKGNvbnRyb2xsZXIpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKFxuICAgICAgICAgIHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnID8gdGV4dEVuY29kZXIuZW5jb2RlKHNvdXJjZSkgOiBzb3VyY2VcbiAgICAgICAgKVxuICAgICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiByZWFkYWJsZVN0cmVhbUNsb3NlKGNvbnRyb2xsZXIpKVxuICAgICAgfSxcbiAgICAgIHN0YXJ0ICgpIHt9LFxuICAgICAgdHlwZTogdW5kZWZpbmVkXG4gICAgfSlcbiAgfVxuXG4gIC8vIDUuIEFzc2VydDogc3RyZWFtIGlzIGEgUmVhZGFibGVTdHJlYW0gb2JqZWN0LlxuICBhc3NlcnQoaXNSZWFkYWJsZVN0cmVhbUxpa2Uoc3RyZWFtKSlcblxuICAvLyA2LiBMZXQgYWN0aW9uIGJlIG51bGwuXG4gIGxldCBhY3Rpb24gPSBudWxsXG5cbiAgLy8gNy4gTGV0IHNvdXJjZSBiZSBudWxsLlxuICBsZXQgc291cmNlID0gbnVsbFxuXG4gIC8vIDguIExldCBsZW5ndGggYmUgbnVsbC5cbiAgbGV0IGxlbmd0aCA9IG51bGxcblxuICAvLyA5LiBMZXQgdHlwZSBiZSBudWxsLlxuICBsZXQgdHlwZSA9IG51bGxcblxuICAvLyAxMC4gU3dpdGNoIG9uIG9iamVjdDpcbiAgaWYgKHR5cGVvZiBvYmplY3QgPT09ICdzdHJpbmcnKSB7XG4gICAgLy8gU2V0IHNvdXJjZSB0byB0aGUgVVRGLTggZW5jb2Rpbmcgb2Ygb2JqZWN0LlxuICAgIC8vIE5vdGU6IHNldHRpbmcgc291cmNlIHRvIGEgVWludDhBcnJheSBoZXJlIGJyZWFrcyBzb21lIG1vY2tpbmcgYXNzdW1wdGlvbnMuXG4gICAgc291cmNlID0gb2JqZWN0XG5cbiAgICAvLyBTZXQgdHlwZSB0byBgdGV4dC9wbGFpbjtjaGFyc2V0PVVURi04YC5cbiAgICB0eXBlID0gJ3RleHQvcGxhaW47Y2hhcnNldD1VVEYtOCdcbiAgfSBlbHNlIGlmIChvYmplY3QgaW5zdGFuY2VvZiBVUkxTZWFyY2hQYXJhbXMpIHtcbiAgICAvLyBVUkxTZWFyY2hQYXJhbXNcblxuICAgIC8vIHNwZWMgc2F5cyB0byBydW4gYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIG9uIGJvZHkubGlzdFxuICAgIC8vIHRoaXMgaXMgaW1wbGVtZW50ZWQgaW4gTm9kZS5qcyBhcyBhcGFydCBvZiBhbiBVUkxTZWFyY2hQYXJhbXMgaW5zdGFuY2UgdG9TdHJpbmcgbWV0aG9kXG4gICAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9lNDZjNjgwYmYyYjIxMWJiZDUyY2Y5NTljYTE3ZWU5OGM3ZjY1N2Y1L2xpYi9pbnRlcm5hbC91cmwuanMjTDQ5MFxuICAgIC8vIGFuZCBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvYmxvYi9lNDZjNjgwYmYyYjIxMWJiZDUyY2Y5NTljYTE3ZWU5OGM3ZjY1N2Y1L2xpYi9pbnRlcm5hbC91cmwuanMjTDExMDBcblxuICAgIC8vIFNldCBzb3VyY2UgdG8gdGhlIHJlc3VsdCBvZiBydW5uaW5nIHRoZSBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQgc2VyaWFsaXplciB3aXRoIG9iamVjdFx1MjAxOXMgbGlzdC5cbiAgICBzb3VyY2UgPSBvYmplY3QudG9TdHJpbmcoKVxuXG4gICAgLy8gU2V0IHR5cGUgdG8gYGFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PVVURi04YC5cbiAgICB0eXBlID0gJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDtjaGFyc2V0PVVURi04J1xuICB9IGVsc2UgaWYgKGlzQXJyYXlCdWZmZXIob2JqZWN0KSkge1xuICAgIC8vIEJ1ZmZlclNvdXJjZS9BcnJheUJ1ZmZlclxuXG4gICAgLy8gU2V0IHNvdXJjZSB0byBhIGNvcHkgb2YgdGhlIGJ5dGVzIGhlbGQgYnkgb2JqZWN0LlxuICAgIHNvdXJjZSA9IG5ldyBVaW50OEFycmF5KG9iamVjdC5zbGljZSgpKVxuICB9IGVsc2UgaWYgKEFycmF5QnVmZmVyLmlzVmlldyhvYmplY3QpKSB7XG4gICAgLy8gQnVmZmVyU291cmNlL0FycmF5QnVmZmVyVmlld1xuXG4gICAgLy8gU2V0IHNvdXJjZSB0byBhIGNvcHkgb2YgdGhlIGJ5dGVzIGhlbGQgYnkgb2JqZWN0LlxuICAgIHNvdXJjZSA9IG5ldyBVaW50OEFycmF5KG9iamVjdC5idWZmZXIuc2xpY2Uob2JqZWN0LmJ5dGVPZmZzZXQsIG9iamVjdC5ieXRlT2Zmc2V0ICsgb2JqZWN0LmJ5dGVMZW5ndGgpKVxuICB9IGVsc2UgaWYgKHV0aWwuaXNGb3JtRGF0YUxpa2Uob2JqZWN0KSkge1xuICAgIGNvbnN0IGJvdW5kYXJ5ID0gYC0tLS1mb3JtZGF0YS11bmRpY2ktMCR7YCR7cmFuZG9tKDFlMTEpfWAucGFkU3RhcnQoMTEsICcwJyl9YFxuICAgIGNvbnN0IHByZWZpeCA9IGAtLSR7Ym91bmRhcnl9XFxyXFxuQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhYFxuXG4gICAgLyohIGZvcm1kYXRhLXBvbHlmaWxsLiBNSVQgTGljZW5zZS4gSmltbXkgV1x1MDBFNHJ0aW5nIDxodHRwczovL2ppbW15LndhcnRpbmcuc2Uvb3BlbnNvdXJjZT4gKi9cbiAgICBjb25zdCBlc2NhcGUgPSAoc3RyKSA9PlxuICAgICAgc3RyLnJlcGxhY2UoL1xcbi9nLCAnJTBBJykucmVwbGFjZSgvXFxyL2csICclMEQnKS5yZXBsYWNlKC9cIi9nLCAnJTIyJylcbiAgICBjb25zdCBub3JtYWxpemVMaW5lZmVlZHMgPSAodmFsdWUpID0+IHZhbHVlLnJlcGxhY2UoL1xccj9cXG58XFxyL2csICdcXHJcXG4nKVxuXG4gICAgLy8gU2V0IGFjdGlvbiB0byB0aGlzIHN0ZXA6IHJ1biB0aGUgbXVsdGlwYXJ0L2Zvcm0tZGF0YVxuICAgIC8vIGVuY29kaW5nIGFsZ29yaXRobSwgd2l0aCBvYmplY3RcdTIwMTlzIGVudHJ5IGxpc3QgYW5kIFVURi04LlxuICAgIC8vIC0gVGhpcyBlbnN1cmVzIHRoYXQgdGhlIGJvZHkgaXMgaW1tdXRhYmxlIGFuZCBjYW4ndCBiZSBjaGFuZ2VkIGFmdGVyd29yZHNcbiAgICAvLyAtIFRoYXQgdGhlIGNvbnRlbnQtbGVuZ3RoIGlzIGNhbGN1bGF0ZWQgaW4gYWR2YW5jZS5cbiAgICAvLyAtIEFuZCB0aGF0IGFsbCBwYXJ0cyBhcmUgcHJlLWVuY29kZWQgYW5kIHJlYWR5IHRvIGJlIHNlbnQuXG5cbiAgICBjb25zdCBibG9iUGFydHMgPSBbXVxuICAgIGNvbnN0IHJuID0gbmV3IFVpbnQ4QXJyYXkoWzEzLCAxMF0pIC8vICdcXHJcXG4nXG4gICAgbGVuZ3RoID0gMFxuICAgIGxldCBoYXNVbmtub3duU2l6ZVZhbHVlID0gZmFsc2VcblxuICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBvYmplY3QpIHtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IGNodW5rID0gdGV4dEVuY29kZXIuZW5jb2RlKHByZWZpeCArXG4gICAgICAgICAgYDsgbmFtZT1cIiR7ZXNjYXBlKG5vcm1hbGl6ZUxpbmVmZWVkcyhuYW1lKSl9XCJgICtcbiAgICAgICAgICBgXFxyXFxuXFxyXFxuJHtub3JtYWxpemVMaW5lZmVlZHModmFsdWUpfVxcclxcbmApXG4gICAgICAgIGJsb2JQYXJ0cy5wdXNoKGNodW5rKVxuICAgICAgICBsZW5ndGggKz0gY2h1bmsuYnl0ZUxlbmd0aFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgY2h1bmsgPSB0ZXh0RW5jb2Rlci5lbmNvZGUoYCR7cHJlZml4fTsgbmFtZT1cIiR7ZXNjYXBlKG5vcm1hbGl6ZUxpbmVmZWVkcyhuYW1lKSl9XCJgICtcbiAgICAgICAgICAodmFsdWUubmFtZSA/IGA7IGZpbGVuYW1lPVwiJHtlc2NhcGUodmFsdWUubmFtZSl9XCJgIDogJycpICsgJ1xcclxcbicgK1xuICAgICAgICAgIGBDb250ZW50LVR5cGU6ICR7XG4gICAgICAgICAgICB2YWx1ZS50eXBlIHx8ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nXG4gICAgICAgICAgfVxcclxcblxcclxcbmApXG4gICAgICAgIGJsb2JQYXJ0cy5wdXNoKGNodW5rLCB2YWx1ZSwgcm4pXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUuc2l6ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICBsZW5ndGggKz0gY2h1bmsuYnl0ZUxlbmd0aCArIHZhbHVlLnNpemUgKyBybi5ieXRlTGVuZ3RoXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaGFzVW5rbm93blNpemVWYWx1ZSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGNodW5rID0gdGV4dEVuY29kZXIuZW5jb2RlKGAtLSR7Ym91bmRhcnl9LS1gKVxuICAgIGJsb2JQYXJ0cy5wdXNoKGNodW5rKVxuICAgIGxlbmd0aCArPSBjaHVuay5ieXRlTGVuZ3RoXG4gICAgaWYgKGhhc1Vua25vd25TaXplVmFsdWUpIHtcbiAgICAgIGxlbmd0aCA9IG51bGxcbiAgICB9XG5cbiAgICAvLyBTZXQgc291cmNlIHRvIG9iamVjdC5cbiAgICBzb3VyY2UgPSBvYmplY3RcblxuICAgIGFjdGlvbiA9IGFzeW5jIGZ1bmN0aW9uICogKCkge1xuICAgICAgZm9yIChjb25zdCBwYXJ0IG9mIGJsb2JQYXJ0cykge1xuICAgICAgICBpZiAocGFydC5zdHJlYW0pIHtcbiAgICAgICAgICB5aWVsZCAqIHBhcnQuc3RyZWFtKClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB5aWVsZCBwYXJ0XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXQgdHlwZSB0byBgbXVsdGlwYXJ0L2Zvcm0tZGF0YTsgYm91bmRhcnk9YCxcbiAgICAvLyBmb2xsb3dlZCBieSB0aGUgbXVsdGlwYXJ0L2Zvcm0tZGF0YSBib3VuZGFyeSBzdHJpbmcgZ2VuZXJhdGVkXG4gICAgLy8gYnkgdGhlIG11bHRpcGFydC9mb3JtLWRhdGEgZW5jb2RpbmcgYWxnb3JpdGhtLlxuICAgIHR5cGUgPSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YTsgYm91bmRhcnk9JyArIGJvdW5kYXJ5XG4gIH0gZWxzZSBpZiAoaXNCbG9iTGlrZShvYmplY3QpKSB7XG4gICAgLy8gQmxvYlxuXG4gICAgLy8gU2V0IHNvdXJjZSB0byBvYmplY3QuXG4gICAgc291cmNlID0gb2JqZWN0XG5cbiAgICAvLyBTZXQgbGVuZ3RoIHRvIG9iamVjdFx1MjAxOXMgc2l6ZS5cbiAgICBsZW5ndGggPSBvYmplY3Quc2l6ZVxuXG4gICAgLy8gSWYgb2JqZWN0XHUyMDE5cyB0eXBlIGF0dHJpYnV0ZSBpcyBub3QgdGhlIGVtcHR5IGJ5dGUgc2VxdWVuY2UsIHNldFxuICAgIC8vIHR5cGUgdG8gaXRzIHZhbHVlLlxuICAgIGlmIChvYmplY3QudHlwZSkge1xuICAgICAgdHlwZSA9IG9iamVjdC50eXBlXG4gICAgfVxuICB9IGVsc2UgaWYgKHR5cGVvZiBvYmplY3RbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgLy8gSWYga2VlcGFsaXZlIGlzIHRydWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKGtlZXBhbGl2ZSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigna2VlcGFsaXZlJylcbiAgICB9XG5cbiAgICAvLyBJZiBvYmplY3QgaXMgZGlzdHVyYmVkIG9yIGxvY2tlZCwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAodXRpbC5pc0Rpc3R1cmJlZChvYmplY3QpIHx8IG9iamVjdC5sb2NrZWQpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICdSZXNwb25zZSBib2R5IG9iamVjdCBzaG91bGQgbm90IGJlIGRpc3R1cmJlZCBvciBsb2NrZWQnXG4gICAgICApXG4gICAgfVxuXG4gICAgc3RyZWFtID1cbiAgICAgIG9iamVjdCBpbnN0YW5jZW9mIFJlYWRhYmxlU3RyZWFtID8gb2JqZWN0IDogUmVhZGFibGVTdHJlYW1Gcm9tKG9iamVjdClcbiAgfVxuXG4gIC8vIDExLiBJZiBzb3VyY2UgaXMgYSBieXRlIHNlcXVlbmNlLCB0aGVuIHNldCBhY3Rpb24gdG8gYVxuICAvLyBzdGVwIHRoYXQgcmV0dXJucyBzb3VyY2UgYW5kIGxlbmd0aCB0byBzb3VyY2VcdTIwMTlzIGxlbmd0aC5cbiAgaWYgKHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnIHx8IHV0aWwuaXNCdWZmZXIoc291cmNlKSkge1xuICAgIGxlbmd0aCA9IEJ1ZmZlci5ieXRlTGVuZ3RoKHNvdXJjZSlcbiAgfVxuXG4gIC8vIDEyLiBJZiBhY3Rpb24gaXMgbm9uLW51bGwsIHRoZW4gcnVuIHRoZXNlIHN0ZXBzIGluIGluIHBhcmFsbGVsOlxuICBpZiAoYWN0aW9uICE9IG51bGwpIHtcbiAgICAvLyBSdW4gYWN0aW9uLlxuICAgIGxldCBpdGVyYXRvclxuICAgIHN0cmVhbSA9IG5ldyBSZWFkYWJsZVN0cmVhbSh7XG4gICAgICBhc3luYyBzdGFydCAoKSB7XG4gICAgICAgIGl0ZXJhdG9yID0gYWN0aW9uKG9iamVjdClbU3ltYm9sLmFzeW5jSXRlcmF0b3JdKClcbiAgICAgIH0sXG4gICAgICBhc3luYyBwdWxsIChjb250cm9sbGVyKSB7XG4gICAgICAgIGNvbnN0IHsgdmFsdWUsIGRvbmUgfSA9IGF3YWl0IGl0ZXJhdG9yLm5leHQoKVxuICAgICAgICBpZiAoZG9uZSkge1xuICAgICAgICAgIC8vIFdoZW4gcnVubmluZyBhY3Rpb24gaXMgZG9uZSwgY2xvc2Ugc3RyZWFtLlxuICAgICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnRyb2xsZXIuY2xvc2UoKVxuICAgICAgICAgIH0pXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gV2hlbmV2ZXIgb25lIG9yIG1vcmUgYnl0ZXMgYXJlIGF2YWlsYWJsZSBhbmQgc3RyZWFtIGlzIG5vdCBlcnJvcmVkLFxuICAgICAgICAgIC8vIGVucXVldWUgYSBVaW50OEFycmF5IHdyYXBwaW5nIGFuIEFycmF5QnVmZmVyIGNvbnRhaW5pbmcgdGhlIGF2YWlsYWJsZVxuICAgICAgICAgIC8vIGJ5dGVzIGludG8gc3RyZWFtLlxuICAgICAgICAgIGlmICghaXNFcnJvcmVkKHN0cmVhbSkpIHtcbiAgICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShuZXcgVWludDhBcnJheSh2YWx1ZSkpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb250cm9sbGVyLmRlc2lyZWRTaXplID4gMFxuICAgICAgfSxcbiAgICAgIGFzeW5jIGNhbmNlbCAocmVhc29uKSB7XG4gICAgICAgIGF3YWl0IGl0ZXJhdG9yLnJldHVybigpXG4gICAgICB9LFxuICAgICAgdHlwZTogdW5kZWZpbmVkXG4gICAgfSlcbiAgfVxuXG4gIC8vIDEzLiBMZXQgYm9keSBiZSBhIGJvZHkgd2hvc2Ugc3RyZWFtIGlzIHN0cmVhbSwgc291cmNlIGlzIHNvdXJjZSxcbiAgLy8gYW5kIGxlbmd0aCBpcyBsZW5ndGguXG4gIGNvbnN0IGJvZHkgPSB7IHN0cmVhbSwgc291cmNlLCBsZW5ndGggfVxuXG4gIC8vIDE0LiBSZXR1cm4gKGJvZHksIHR5cGUpLlxuICByZXR1cm4gW2JvZHksIHR5cGVdXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNib2R5aW5pdC1zYWZlbHktZXh0cmFjdFxuZnVuY3Rpb24gc2FmZWx5RXh0cmFjdEJvZHkgKG9iamVjdCwga2VlcGFsaXZlID0gZmFsc2UpIHtcbiAgaWYgKCFSZWFkYWJsZVN0cmVhbSkge1xuICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gICAgUmVhZGFibGVTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbiAgfVxuXG4gIC8vIFRvIHNhZmVseSBleHRyYWN0IGEgYm9keSBhbmQgYSBgQ29udGVudC1UeXBlYCB2YWx1ZSBmcm9tXG4gIC8vIGEgYnl0ZSBzZXF1ZW5jZSBvciBCb2R5SW5pdCBvYmplY3Qgb2JqZWN0LCBydW4gdGhlc2Ugc3RlcHM6XG5cbiAgLy8gMS4gSWYgb2JqZWN0IGlzIGEgUmVhZGFibGVTdHJlYW0gb2JqZWN0LCB0aGVuOlxuICBpZiAob2JqZWN0IGluc3RhbmNlb2YgUmVhZGFibGVTdHJlYW0pIHtcbiAgICAvLyBBc3NlcnQ6IG9iamVjdCBpcyBuZWl0aGVyIGRpc3R1cmJlZCBub3IgbG9ja2VkLlxuICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG4gICAgYXNzZXJ0KCF1dGlsLmlzRGlzdHVyYmVkKG9iamVjdCksICdUaGUgYm9keSBoYXMgYWxyZWFkeSBiZWVuIGNvbnN1bWVkLicpXG4gICAgLy8gaXN0YW5idWwgaWdub3JlIG5leHRcbiAgICBhc3NlcnQoIW9iamVjdC5sb2NrZWQsICdUaGUgc3RyZWFtIGlzIGxvY2tlZC4nKVxuICB9XG5cbiAgLy8gMi4gUmV0dXJuIHRoZSByZXN1bHRzIG9mIGV4dHJhY3Rpbmcgb2JqZWN0LlxuICByZXR1cm4gZXh0cmFjdEJvZHkob2JqZWN0LCBrZWVwYWxpdmUpXG59XG5cbmZ1bmN0aW9uIGNsb25lQm9keSAoYm9keSkge1xuICAvLyBUbyBjbG9uZSBhIGJvZHkgYm9keSwgcnVuIHRoZXNlIHN0ZXBzOlxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWJvZHktY2xvbmVcblxuICAvLyAxLiBMZXQgXHUwMEFCIG91dDEsIG91dDIgXHUwMEJCIGJlIHRoZSByZXN1bHQgb2YgdGVlaW5nIGJvZHlcdTIwMTlzIHN0cmVhbS5cbiAgY29uc3QgW291dDEsIG91dDJdID0gYm9keS5zdHJlYW0udGVlKClcbiAgY29uc3Qgb3V0MkNsb25lID0gc3RydWN0dXJlZENsb25lKG91dDIsIHsgdHJhbnNmZXI6IFtvdXQyXSB9KVxuICAvLyBUaGlzLCBmb3Igd2hhdGV2ZXIgcmVhc29ucywgdW5yZWZzIG91dDJDbG9uZSB3aGljaCBhbGxvd3NcbiAgLy8gdGhlIHByb2Nlc3MgdG8gZXhpdCBieSBpdHNlbGYuXG4gIGNvbnN0IFssIGZpbmFsQ2xvbmVdID0gb3V0MkNsb25lLnRlZSgpXG5cbiAgLy8gMi4gU2V0IGJvZHlcdTIwMTlzIHN0cmVhbSB0byBvdXQxLlxuICBib2R5LnN0cmVhbSA9IG91dDFcblxuICAvLyAzLiBSZXR1cm4gYSBib2R5IHdob3NlIHN0cmVhbSBpcyBvdXQyIGFuZCBvdGhlciBtZW1iZXJzIGFyZSBjb3BpZWQgZnJvbSBib2R5LlxuICByZXR1cm4ge1xuICAgIHN0cmVhbTogZmluYWxDbG9uZSxcbiAgICBsZW5ndGg6IGJvZHkubGVuZ3RoLFxuICAgIHNvdXJjZTogYm9keS5zb3VyY2VcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiAqIGNvbnN1bWVCb2R5IChib2R5KSB7XG4gIGlmIChib2R5KSB7XG4gICAgaWYgKGlzVWludDhBcnJheShib2R5KSkge1xuICAgICAgeWllbGQgYm9keVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdHJlYW0gPSBib2R5LnN0cmVhbVxuXG4gICAgICBpZiAodXRpbC5pc0Rpc3R1cmJlZChzdHJlYW0pKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSBib2R5IGhhcyBhbHJlYWR5IGJlZW4gY29uc3VtZWQuJylcbiAgICAgIH1cblxuICAgICAgaWYgKHN0cmVhbS5sb2NrZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlIHN0cmVhbSBpcyBsb2NrZWQuJylcbiAgICAgIH1cblxuICAgICAgLy8gQ29tcGF0LlxuICAgICAgc3RyZWFtW2tCb2R5VXNlZF0gPSB0cnVlXG5cbiAgICAgIHlpZWxkICogc3RyZWFtXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHRocm93SWZBYm9ydGVkIChzdGF0ZSkge1xuICBpZiAoc3RhdGUuYWJvcnRlZCkge1xuICAgIHRocm93IG5ldyBET01FeGNlcHRpb24oJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQuJywgJ0Fib3J0RXJyb3InKVxuICB9XG59XG5cbmZ1bmN0aW9uIGJvZHlNaXhpbk1ldGhvZHMgKGluc3RhbmNlKSB7XG4gIGNvbnN0IG1ldGhvZHMgPSB7XG4gICAgYmxvYiAoKSB7XG4gICAgICAvLyBUaGUgYmxvYigpIG1ldGhvZCBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoZSByZXN1bHQgb2ZcbiAgICAgIC8vIHJ1bm5pbmcgY29uc3VtZSBib2R5IHdpdGggdGhpcyBhbmQgdGhlIGZvbGxvd2luZyBzdGVwXG4gICAgICAvLyBnaXZlbiBhIGJ5dGUgc2VxdWVuY2UgYnl0ZXM6IHJldHVybiBhIEJsb2Igd2hvc2VcbiAgICAgIC8vIGNvbnRlbnRzIGFyZSBieXRlcyBhbmQgd2hvc2UgdHlwZSBhdHRyaWJ1dGUgaXMgdGhpc1x1MjAxOXNcbiAgICAgIC8vIE1JTUUgdHlwZS5cbiAgICAgIHJldHVybiBzcGVjQ29uc3VtZUJvZHkodGhpcywgKGJ5dGVzKSA9PiB7XG4gICAgICAgIGxldCBtaW1lVHlwZSA9IGJvZHlNaW1lVHlwZSh0aGlzKVxuXG4gICAgICAgIGlmIChtaW1lVHlwZSA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgICAgbWltZVR5cGUgPSAnJ1xuICAgICAgICB9IGVsc2UgaWYgKG1pbWVUeXBlKSB7XG4gICAgICAgICAgbWltZVR5cGUgPSBzZXJpYWxpemVBTWltZVR5cGUobWltZVR5cGUpXG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZXR1cm4gYSBCbG9iIHdob3NlIGNvbnRlbnRzIGFyZSBieXRlcyBhbmQgdHlwZSBhdHRyaWJ1dGVcbiAgICAgICAgLy8gaXMgbWltZVR5cGUuXG4gICAgICAgIHJldHVybiBuZXcgQmxvYihbYnl0ZXNdLCB7IHR5cGU6IG1pbWVUeXBlIH0pXG4gICAgICB9LCBpbnN0YW5jZSlcbiAgICB9LFxuXG4gICAgYXJyYXlCdWZmZXIgKCkge1xuICAgICAgLy8gVGhlIGFycmF5QnVmZmVyKCkgbWV0aG9kIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhlIHJlc3VsdFxuICAgICAgLy8gb2YgcnVubmluZyBjb25zdW1lIGJvZHkgd2l0aCB0aGlzIGFuZCB0aGUgZm9sbG93aW5nIHN0ZXBcbiAgICAgIC8vIGdpdmVuIGEgYnl0ZSBzZXF1ZW5jZSBieXRlczogcmV0dXJuIGEgbmV3IEFycmF5QnVmZmVyXG4gICAgICAvLyB3aG9zZSBjb250ZW50cyBhcmUgYnl0ZXMuXG4gICAgICByZXR1cm4gc3BlY0NvbnN1bWVCb2R5KHRoaXMsIChieXRlcykgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYnl0ZXMpLmJ1ZmZlclxuICAgICAgfSwgaW5zdGFuY2UpXG4gICAgfSxcblxuICAgIHRleHQgKCkge1xuICAgICAgLy8gVGhlIHRleHQoKSBtZXRob2Qgc3RlcHMgYXJlIHRvIHJldHVybiB0aGUgcmVzdWx0IG9mIHJ1bm5pbmdcbiAgICAgIC8vIGNvbnN1bWUgYm9keSB3aXRoIHRoaXMgYW5kIFVURi04IGRlY29kZS5cbiAgICAgIHJldHVybiBzcGVjQ29uc3VtZUJvZHkodGhpcywgdXRmOERlY29kZUJ5dGVzLCBpbnN0YW5jZSlcbiAgICB9LFxuXG4gICAganNvbiAoKSB7XG4gICAgICAvLyBUaGUganNvbigpIG1ldGhvZCBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZ1xuICAgICAgLy8gY29uc3VtZSBib2R5IHdpdGggdGhpcyBhbmQgcGFyc2UgSlNPTiBmcm9tIGJ5dGVzLlxuICAgICAgcmV0dXJuIHNwZWNDb25zdW1lQm9keSh0aGlzLCBwYXJzZUpTT05Gcm9tQnl0ZXMsIGluc3RhbmNlKVxuICAgIH0sXG5cbiAgICBhc3luYyBmb3JtRGF0YSAoKSB7XG4gICAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBpbnN0YW5jZSlcblxuICAgICAgdGhyb3dJZkFib3J0ZWQodGhpc1trU3RhdGVdKVxuXG4gICAgICBjb25zdCBjb250ZW50VHlwZSA9IHRoaXMuaGVhZGVycy5nZXQoJ0NvbnRlbnQtVHlwZScpXG5cbiAgICAgIC8vIElmIG1pbWVUeXBlXHUyMDE5cyBlc3NlbmNlIGlzIFwibXVsdGlwYXJ0L2Zvcm0tZGF0YVwiLCB0aGVuOlxuICAgICAgaWYgKC9tdWx0aXBhcnRcXC9mb3JtLWRhdGEvLnRlc3QoY29udGVudFR5cGUpKSB7XG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSB7fVxuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzLmhlYWRlcnMpIGhlYWRlcnNba2V5LnRvTG93ZXJDYXNlKCldID0gdmFsdWVcblxuICAgICAgICBjb25zdCByZXNwb25zZUZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcblxuICAgICAgICBsZXQgYnVzYm95XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBidXNib3kgPSBuZXcgQnVzYm95KHtcbiAgICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgICBwcmVzZXJ2ZVBhdGg6IHRydWVcbiAgICAgICAgICB9KVxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKGAke2Vycn1gLCAnQWJvcnRFcnJvcicpXG4gICAgICAgIH1cblxuICAgICAgICBidXNib3kub24oJ2ZpZWxkJywgKG5hbWUsIHZhbHVlKSA9PiB7XG4gICAgICAgICAgcmVzcG9uc2VGb3JtRGF0YS5hcHBlbmQobmFtZSwgdmFsdWUpXG4gICAgICAgIH0pXG4gICAgICAgIGJ1c2JveS5vbignZmlsZScsIChuYW1lLCB2YWx1ZSwgZmlsZW5hbWUsIGVuY29kaW5nLCBtaW1lVHlwZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGNodW5rcyA9IFtdXG5cbiAgICAgICAgICBpZiAoZW5jb2RpbmcgPT09ICdiYXNlNjQnIHx8IGVuY29kaW5nLnRvTG93ZXJDYXNlKCkgPT09ICdiYXNlNjQnKSB7XG4gICAgICAgICAgICBsZXQgYmFzZTY0Y2h1bmsgPSAnJ1xuXG4gICAgICAgICAgICB2YWx1ZS5vbignZGF0YScsIChjaHVuaykgPT4ge1xuICAgICAgICAgICAgICBiYXNlNjRjaHVuayArPSBjaHVuay50b1N0cmluZygpLnJlcGxhY2UoL1tcXHJcXG5dL2dtLCAnJylcblxuICAgICAgICAgICAgICBjb25zdCBlbmQgPSBiYXNlNjRjaHVuay5sZW5ndGggLSBiYXNlNjRjaHVuay5sZW5ndGggJSA0XG4gICAgICAgICAgICAgIGNodW5rcy5wdXNoKEJ1ZmZlci5mcm9tKGJhc2U2NGNodW5rLnNsaWNlKDAsIGVuZCksICdiYXNlNjQnKSlcblxuICAgICAgICAgICAgICBiYXNlNjRjaHVuayA9IGJhc2U2NGNodW5rLnNsaWNlKGVuZClcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB2YWx1ZS5vbignZW5kJywgKCkgPT4ge1xuICAgICAgICAgICAgICBjaHVua3MucHVzaChCdWZmZXIuZnJvbShiYXNlNjRjaHVuaywgJ2Jhc2U2NCcpKVxuICAgICAgICAgICAgICByZXNwb25zZUZvcm1EYXRhLmFwcGVuZChuYW1lLCBuZXcgRmlsZShjaHVua3MsIGZpbGVuYW1lLCB7IHR5cGU6IG1pbWVUeXBlIH0pKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdmFsdWUub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICAgICAgICAgICAgY2h1bmtzLnB1c2goY2h1bmspXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgdmFsdWUub24oJ2VuZCcsICgpID0+IHtcbiAgICAgICAgICAgICAgcmVzcG9uc2VGb3JtRGF0YS5hcHBlbmQobmFtZSwgbmV3IEZpbGUoY2h1bmtzLCBmaWxlbmFtZSwgeyB0eXBlOiBtaW1lVHlwZSB9KSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIGNvbnN0IGJ1c2JveVJlc29sdmUgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgYnVzYm95Lm9uKCdmaW5pc2gnLCByZXNvbHZlKVxuICAgICAgICAgIGJ1c2JveS5vbignZXJyb3InLCAoZXJyKSA9PiByZWplY3QobmV3IFR5cGVFcnJvcihlcnIpKSlcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAodGhpcy5ib2R5ICE9PSBudWxsKSBmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIGNvbnN1bWVCb2R5KHRoaXNba1N0YXRlXS5ib2R5KSkgYnVzYm95LndyaXRlKGNodW5rKVxuICAgICAgICBidXNib3kuZW5kKClcbiAgICAgICAgYXdhaXQgYnVzYm95UmVzb2x2ZVxuXG4gICAgICAgIHJldHVybiByZXNwb25zZUZvcm1EYXRhXG4gICAgICB9IGVsc2UgaWYgKC9hcHBsaWNhdGlvblxcL3gtd3d3LWZvcm0tdXJsZW5jb2RlZC8udGVzdChjb250ZW50VHlwZSkpIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBpZiBtaW1lVHlwZVx1MjAxOXMgZXNzZW5jZSBpcyBcImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZFwiLCB0aGVuOlxuXG4gICAgICAgIC8vIDEuIExldCBlbnRyaWVzIGJlIHRoZSByZXN1bHQgb2YgcGFyc2luZyBieXRlcy5cbiAgICAgICAgbGV0IGVudHJpZXNcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBsZXQgdGV4dCA9ICcnXG4gICAgICAgICAgLy8gYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIHBhcnNlciB3aWxsIGtlZXAgdGhlIEJPTS5cbiAgICAgICAgICAvLyBodHRwczovL3VybC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtdXJsZW5jb2RlZC1wYXJzZXJcbiAgICAgICAgICAvLyBOb3RlIHRoYXQgc3RyZWFtaW5nIGRlY29kZXIgaXMgc3RhdGVmdWwgYW5kIGNhbm5vdCBiZSByZXVzZWRcbiAgICAgICAgICBjb25zdCBzdHJlYW1pbmdEZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCd1dGYtOCcsIHsgaWdub3JlQk9NOiB0cnVlIH0pXG5cbiAgICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIGNvbnN1bWVCb2R5KHRoaXNba1N0YXRlXS5ib2R5KSkge1xuICAgICAgICAgICAgaWYgKCFpc1VpbnQ4QXJyYXkoY2h1bmspKSB7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0V4cGVjdGVkIFVpbnQ4QXJyYXkgY2h1bmsnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGV4dCArPSBzdHJlYW1pbmdEZWNvZGVyLmRlY29kZShjaHVuaywgeyBzdHJlYW06IHRydWUgfSlcbiAgICAgICAgICB9XG4gICAgICAgICAgdGV4dCArPSBzdHJlYW1pbmdEZWNvZGVyLmRlY29kZSgpXG4gICAgICAgICAgZW50cmllcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXModGV4dClcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgLy8gaXN0YW5idWwgaWdub3JlIG5leHQ6IFVuY2xlYXIgd2hlbiBuZXcgVVJMU2VhcmNoUGFyYW1zIGNhbiBmYWlsIG9uIGEgc3RyaW5nLlxuICAgICAgICAgIC8vIDIuIElmIGVudHJpZXMgaXMgZmFpbHVyZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAgICAgICB0aHJvdyBPYmplY3QuYXNzaWduKG5ldyBUeXBlRXJyb3IoKSwgeyBjYXVzZTogZXJyIH0pXG4gICAgICAgIH1cblxuICAgICAgICAvLyAzLiBSZXR1cm4gYSBuZXcgRm9ybURhdGEgb2JqZWN0IHdob3NlIGVudHJpZXMgYXJlIGVudHJpZXMuXG4gICAgICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgICAgICAgZm9yIChjb25zdCBbbmFtZSwgdmFsdWVdIG9mIGVudHJpZXMpIHtcbiAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQobmFtZSwgdmFsdWUpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZvcm1EYXRhXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBXYWl0IGEgdGljayBiZWZvcmUgY2hlY2tpbmcgaWYgdGhlIHJlcXVlc3QgaGFzIGJlZW4gYWJvcnRlZC5cbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBhIFR5cGVFcnJvciBjYW4gYmUgdGhyb3duIHdoZW4gYW4gQWJvcnRFcnJvciBzaG91bGQuXG4gICAgICAgIGF3YWl0IFByb21pc2UucmVzb2x2ZSgpXG5cbiAgICAgICAgdGhyb3dJZkFib3J0ZWQodGhpc1trU3RhdGVdKVxuXG4gICAgICAgIC8vIE90aGVyd2lzZSwgdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICBoZWFkZXI6IGAke2luc3RhbmNlLm5hbWV9LmZvcm1EYXRhYCxcbiAgICAgICAgICBtZXNzYWdlOiAnQ291bGQgbm90IHBhcnNlIGNvbnRlbnQgYXMgRm9ybURhdGEuJ1xuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRob2RzXG59XG5cbmZ1bmN0aW9uIG1peGluQm9keSAocHJvdG90eXBlKSB7XG4gIE9iamVjdC5hc3NpZ24ocHJvdG90eXBlLnByb3RvdHlwZSwgYm9keU1peGluTWV0aG9kcyhwcm90b3R5cGUpKVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtYm9keS1jb25zdW1lLWJvZHlcbiAqIEBwYXJhbSB7UmVzcG9uc2V8UmVxdWVzdH0gb2JqZWN0XG4gKiBAcGFyYW0geyh2YWx1ZTogdW5rbm93bikgPT4gdW5rbm93bn0gY29udmVydEJ5dGVzVG9KU1ZhbHVlXG4gKiBAcGFyYW0ge1Jlc3BvbnNlfFJlcXVlc3R9IGluc3RhbmNlXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHNwZWNDb25zdW1lQm9keSAob2JqZWN0LCBjb252ZXJ0Qnl0ZXNUb0pTVmFsdWUsIGluc3RhbmNlKSB7XG4gIHdlYmlkbC5icmFuZENoZWNrKG9iamVjdCwgaW5zdGFuY2UpXG5cbiAgdGhyb3dJZkFib3J0ZWQob2JqZWN0W2tTdGF0ZV0pXG5cbiAgLy8gMS4gSWYgb2JqZWN0IGlzIHVudXNhYmxlLCB0aGVuIHJldHVybiBhIHByb21pc2UgcmVqZWN0ZWRcbiAgLy8gICAgd2l0aCBhIFR5cGVFcnJvci5cbiAgaWYgKGJvZHlVbnVzYWJsZShvYmplY3Rba1N0YXRlXS5ib2R5KSkge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0JvZHkgaXMgdW51c2FibGUnKVxuICB9XG5cbiAgLy8gMi4gTGV0IHByb21pc2UgYmUgYSBuZXcgcHJvbWlzZS5cbiAgY29uc3QgcHJvbWlzZSA9IGNyZWF0ZURlZmVycmVkUHJvbWlzZSgpXG5cbiAgLy8gMy4gTGV0IGVycm9yU3RlcHMgZ2l2ZW4gZXJyb3IgYmUgdG8gcmVqZWN0IHByb21pc2Ugd2l0aCBlcnJvci5cbiAgY29uc3QgZXJyb3JTdGVwcyA9IChlcnJvcikgPT4gcHJvbWlzZS5yZWplY3QoZXJyb3IpXG5cbiAgLy8gNC4gTGV0IHN1Y2Nlc3NTdGVwcyBnaXZlbiBhIGJ5dGUgc2VxdWVuY2UgZGF0YSBiZSB0byByZXNvbHZlXG4gIC8vICAgIHByb21pc2Ugd2l0aCB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgY29udmVydEJ5dGVzVG9KU1ZhbHVlXG4gIC8vICAgIHdpdGggZGF0YS4gSWYgdGhhdCB0aHJldyBhbiBleGNlcHRpb24sIHRoZW4gcnVuIGVycm9yU3RlcHNcbiAgLy8gICAgd2l0aCB0aGF0IGV4Y2VwdGlvbi5cbiAgY29uc3Qgc3VjY2Vzc1N0ZXBzID0gKGRhdGEpID0+IHtcbiAgICB0cnkge1xuICAgICAgcHJvbWlzZS5yZXNvbHZlKGNvbnZlcnRCeXRlc1RvSlNWYWx1ZShkYXRhKSlcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBlcnJvclN0ZXBzKGUpXG4gICAgfVxuICB9XG5cbiAgLy8gNS4gSWYgb2JqZWN0XHUyMDE5cyBib2R5IGlzIG51bGwsIHRoZW4gcnVuIHN1Y2Nlc3NTdGVwcyB3aXRoIGFuXG4gIC8vICAgIGVtcHR5IGJ5dGUgc2VxdWVuY2UuXG4gIGlmIChvYmplY3Rba1N0YXRlXS5ib2R5ID09IG51bGwpIHtcbiAgICBzdWNjZXNzU3RlcHMobmV3IFVpbnQ4QXJyYXkoKSlcbiAgICByZXR1cm4gcHJvbWlzZS5wcm9taXNlXG4gIH1cblxuICAvLyA2LiBPdGhlcndpc2UsIGZ1bGx5IHJlYWQgb2JqZWN0XHUyMDE5cyBib2R5IGdpdmVuIHN1Y2Nlc3NTdGVwcyxcbiAgLy8gICAgZXJyb3JTdGVwcywgYW5kIG9iamVjdFx1MjAxOXMgcmVsZXZhbnQgZ2xvYmFsIG9iamVjdC5cbiAgYXdhaXQgZnVsbHlSZWFkQm9keShvYmplY3Rba1N0YXRlXS5ib2R5LCBzdWNjZXNzU3RlcHMsIGVycm9yU3RlcHMpXG5cbiAgLy8gNy4gUmV0dXJuIHByb21pc2UuXG4gIHJldHVybiBwcm9taXNlLnByb21pc2Vcbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2JvZHktdW51c2FibGVcbmZ1bmN0aW9uIGJvZHlVbnVzYWJsZSAoYm9keSkge1xuICAvLyBBbiBvYmplY3QgaW5jbHVkaW5nIHRoZSBCb2R5IGludGVyZmFjZSBtaXhpbiBpc1xuICAvLyBzYWlkIHRvIGJlIHVudXNhYmxlIGlmIGl0cyBib2R5IGlzIG5vbi1udWxsIGFuZFxuICAvLyBpdHMgYm9keVx1MjAxOXMgc3RyZWFtIGlzIGRpc3R1cmJlZCBvciBsb2NrZWQuXG4gIHJldHVybiBib2R5ICE9IG51bGwgJiYgKGJvZHkuc3RyZWFtLmxvY2tlZCB8fCB1dGlsLmlzRGlzdHVyYmVkKGJvZHkuc3RyZWFtKSlcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLyN1dGYtOC1kZWNvZGVcbiAqIEBwYXJhbSB7QnVmZmVyfSBidWZmZXJcbiAqL1xuZnVuY3Rpb24gdXRmOERlY29kZUJ5dGVzIChidWZmZXIpIHtcbiAgaWYgKGJ1ZmZlci5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gJydcbiAgfVxuXG4gIC8vIDEuIExldCBidWZmZXIgYmUgdGhlIHJlc3VsdCBvZiBwZWVraW5nIHRocmVlIGJ5dGVzIGZyb21cbiAgLy8gICAgaW9RdWV1ZSwgY29udmVydGVkIHRvIGEgYnl0ZSBzZXF1ZW5jZS5cblxuICAvLyAyLiBJZiBidWZmZXIgaXMgMHhFRiAweEJCIDB4QkYsIHRoZW4gcmVhZCB0aHJlZVxuICAvLyAgICBieXRlcyBmcm9tIGlvUXVldWUuIChEbyBub3RoaW5nIHdpdGggdGhvc2UgYnl0ZXMuKVxuICBpZiAoYnVmZmVyWzBdID09PSAweEVGICYmIGJ1ZmZlclsxXSA9PT0gMHhCQiAmJiBidWZmZXJbMl0gPT09IDB4QkYpIHtcbiAgICBidWZmZXIgPSBidWZmZXIuc3ViYXJyYXkoMylcbiAgfVxuXG4gIC8vIDMuIFByb2Nlc3MgYSBxdWV1ZSB3aXRoIGFuIGluc3RhbmNlIG9mIFVURi04XHUyMDE5c1xuICAvLyAgICBkZWNvZGVyLCBpb1F1ZXVlLCBvdXRwdXQsIGFuZCBcInJlcGxhY2VtZW50XCIuXG4gIGNvbnN0IG91dHB1dCA9IHRleHREZWNvZGVyLmRlY29kZShidWZmZXIpXG5cbiAgLy8gNC4gUmV0dXJuIG91dHB1dC5cbiAgcmV0dXJuIG91dHB1dFxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9pbmZyYS5zcGVjLndoYXR3Zy5vcmcvI3BhcnNlLWpzb24tYnl0ZXMtdG8tYS1qYXZhc2NyaXB0LXZhbHVlXG4gKiBAcGFyYW0ge1VpbnQ4QXJyYXl9IGJ5dGVzXG4gKi9cbmZ1bmN0aW9uIHBhcnNlSlNPTkZyb21CeXRlcyAoYnl0ZXMpIHtcbiAgcmV0dXJuIEpTT04ucGFyc2UodXRmOERlY29kZUJ5dGVzKGJ5dGVzKSlcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWJvZHktbWltZS10eXBlXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi9yZXNwb25zZScpLlJlc3BvbnNlfGltcG9ydCgnLi9yZXF1ZXN0JykuUmVxdWVzdH0gb2JqZWN0XG4gKi9cbmZ1bmN0aW9uIGJvZHlNaW1lVHlwZSAob2JqZWN0KSB7XG4gIGNvbnN0IHsgaGVhZGVyc0xpc3QgfSA9IG9iamVjdFtrU3RhdGVdXG4gIGNvbnN0IGNvbnRlbnRUeXBlID0gaGVhZGVyc0xpc3QuZ2V0KCdjb250ZW50LXR5cGUnKVxuXG4gIGlmIChjb250ZW50VHlwZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIHJldHVybiBwYXJzZU1JTUVUeXBlKGNvbnRlbnRUeXBlKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgZXh0cmFjdEJvZHksXG4gIHNhZmVseUV4dHJhY3RCb2R5LFxuICBjbG9uZUJvZHksXG4gIG1peGluQm9keVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yLFxuICBOb3RTdXBwb3J0ZWRFcnJvclxufSA9IHJlcXVpcmUoJy4vZXJyb3JzJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7IGtIVFRQMkJ1aWxkUmVxdWVzdCwga0hUVFAyQ29weUhlYWRlcnMsIGtIVFRQMUJ1aWxkUmVxdWVzdCB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuL3V0aWwnKVxuXG4vLyB0b2tlblJlZ0V4cCBhbmQgaGVhZGVyQ2hhclJlZ2V4IGhhdmUgYmVlbiBsaWZ0ZWQgZnJvbVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy9ub2RlL2Jsb2IvbWFpbi9saWIvX2h0dHBfY29tbW9uLmpzXG5cbi8qKlxuICogVmVyaWZpZXMgdGhhdCB0aGUgZ2l2ZW4gdmFsIGlzIGEgdmFsaWQgSFRUUCB0b2tlblxuICogcGVyIHRoZSBydWxlcyBkZWZpbmVkIGluIFJGQyA3MjMwXG4gKiBTZWUgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzAjc2VjdGlvbi0zLjIuNlxuICovXG5jb25zdCB0b2tlblJlZ0V4cCA9IC9eW1xcXl9gYS16QS1aXFwtMC05ISMkJSYnKisufH5dKyQvXG5cbi8qKlxuICogTWF0Y2hlcyBpZiB2YWwgY29udGFpbnMgYW4gaW52YWxpZCBmaWVsZC12Y2hhclxuICogIGZpZWxkLXZhbHVlICAgID0gKiggZmllbGQtY29udGVudCAvIG9icy1mb2xkIClcbiAqICBmaWVsZC1jb250ZW50ICA9IGZpZWxkLXZjaGFyIFsgMSooIFNQIC8gSFRBQiApIGZpZWxkLXZjaGFyIF1cbiAqICBmaWVsZC12Y2hhciAgICA9IFZDSEFSIC8gb2JzLXRleHRcbiAqL1xuY29uc3QgaGVhZGVyQ2hhclJlZ2V4ID0gL1teXFx0XFx4MjAtXFx4N2VcXHg4MC1cXHhmZl0vXG5cbi8vIFZlcmlmaWVzIHRoYXQgYSBnaXZlbiBwYXRoIGlzIHZhbGlkIGRvZXMgbm90IGNvbnRhaW4gY29udHJvbCBjaGFycyBcXHgwMCB0byBcXHgyMFxuY29uc3QgaW52YWxpZFBhdGhSZWdleCA9IC9bXlxcdTAwMjEtXFx1MDBmZl0vXG5cbmNvbnN0IGtIYW5kbGVyID0gU3ltYm9sKCdoYW5kbGVyJylcblxuY29uc3QgY2hhbm5lbHMgPSB7fVxuXG5sZXQgZXh0cmFjdEJvZHlcblxudHJ5IHtcbiAgY29uc3QgZGlhZ25vc3RpY3NDaGFubmVsID0gcmVxdWlyZSgnZGlhZ25vc3RpY3NfY2hhbm5lbCcpXG4gIGNoYW5uZWxzLmNyZWF0ZSA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6cmVxdWVzdDpjcmVhdGUnKVxuICBjaGFubmVscy5ib2R5U2VudCA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6cmVxdWVzdDpib2R5U2VudCcpXG4gIGNoYW5uZWxzLmhlYWRlcnMgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOnJlcXVlc3Q6aGVhZGVycycpXG4gIGNoYW5uZWxzLnRyYWlsZXJzID0gZGlhZ25vc3RpY3NDaGFubmVsLmNoYW5uZWwoJ3VuZGljaTpyZXF1ZXN0OnRyYWlsZXJzJylcbiAgY2hhbm5lbHMuZXJyb3IgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOnJlcXVlc3Q6ZXJyb3InKVxufSBjYXRjaCB7XG4gIGNoYW5uZWxzLmNyZWF0ZSA9IHsgaGFzU3Vic2NyaWJlcnM6IGZhbHNlIH1cbiAgY2hhbm5lbHMuYm9keVNlbnQgPSB7IGhhc1N1YnNjcmliZXJzOiBmYWxzZSB9XG4gIGNoYW5uZWxzLmhlYWRlcnMgPSB7IGhhc1N1YnNjcmliZXJzOiBmYWxzZSB9XG4gIGNoYW5uZWxzLnRyYWlsZXJzID0geyBoYXNTdWJzY3JpYmVyczogZmFsc2UgfVxuICBjaGFubmVscy5lcnJvciA9IHsgaGFzU3Vic2NyaWJlcnM6IGZhbHNlIH1cbn1cblxuY2xhc3MgUmVxdWVzdCB7XG4gIGNvbnN0cnVjdG9yIChvcmlnaW4sIHtcbiAgICBwYXRoLFxuICAgIG1ldGhvZCxcbiAgICBib2R5LFxuICAgIGhlYWRlcnMsXG4gICAgcXVlcnksXG4gICAgaWRlbXBvdGVudCxcbiAgICBibG9ja2luZyxcbiAgICB1cGdyYWRlLFxuICAgIGhlYWRlcnNUaW1lb3V0LFxuICAgIGJvZHlUaW1lb3V0LFxuICAgIHJlc2V0LFxuICAgIHRocm93T25FcnJvcixcbiAgICBleHBlY3RDb250aW51ZVxuICB9LCBoYW5kbGVyKSB7XG4gICAgaWYgKHR5cGVvZiBwYXRoICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdwYXRoIG11c3QgYmUgYSBzdHJpbmcnKVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICBwYXRoWzBdICE9PSAnLycgJiZcbiAgICAgICEocGF0aC5zdGFydHNXaXRoKCdodHRwOi8vJykgfHwgcGF0aC5zdGFydHNXaXRoKCdodHRwczovLycpKSAmJlxuICAgICAgbWV0aG9kICE9PSAnQ09OTkVDVCdcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigncGF0aCBtdXN0IGJlIGFuIGFic29sdXRlIFVSTCBvciBzdGFydCB3aXRoIGEgc2xhc2gnKVxuICAgIH0gZWxzZSBpZiAoaW52YWxpZFBhdGhSZWdleC5leGVjKHBhdGgpICE9PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgcmVxdWVzdCBwYXRoJylcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIG1ldGhvZCAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWV0aG9kIG11c3QgYmUgYSBzdHJpbmcnKVxuICAgIH0gZWxzZSBpZiAodG9rZW5SZWdFeHAuZXhlYyhtZXRob2QpID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgcmVxdWVzdCBtZXRob2QnKVxuICAgIH1cblxuICAgIGlmICh1cGdyYWRlICYmIHR5cGVvZiB1cGdyYWRlICE9PSAnc3RyaW5nJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd1cGdyYWRlIG11c3QgYmUgYSBzdHJpbmcnKVxuICAgIH1cblxuICAgIGlmIChoZWFkZXJzVGltZW91dCAhPSBudWxsICYmICghTnVtYmVyLmlzRmluaXRlKGhlYWRlcnNUaW1lb3V0KSB8fCBoZWFkZXJzVGltZW91dCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgaGVhZGVyc1RpbWVvdXQnKVxuICAgIH1cblxuICAgIGlmIChib2R5VGltZW91dCAhPSBudWxsICYmICghTnVtYmVyLmlzRmluaXRlKGJvZHlUaW1lb3V0KSB8fCBib2R5VGltZW91dCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgYm9keVRpbWVvdXQnKVxuICAgIH1cblxuICAgIGlmIChyZXNldCAhPSBudWxsICYmIHR5cGVvZiByZXNldCAhPT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgcmVzZXQnKVxuICAgIH1cblxuICAgIGlmIChleHBlY3RDb250aW51ZSAhPSBudWxsICYmIHR5cGVvZiBleHBlY3RDb250aW51ZSAhPT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgZXhwZWN0Q29udGludWUnKVxuICAgIH1cblxuICAgIHRoaXMuaGVhZGVyc1RpbWVvdXQgPSBoZWFkZXJzVGltZW91dFxuXG4gICAgdGhpcy5ib2R5VGltZW91dCA9IGJvZHlUaW1lb3V0XG5cbiAgICB0aGlzLnRocm93T25FcnJvciA9IHRocm93T25FcnJvciA9PT0gdHJ1ZVxuXG4gICAgdGhpcy5tZXRob2QgPSBtZXRob2RcblxuICAgIHRoaXMuYWJvcnQgPSBudWxsXG5cbiAgICBpZiAoYm9keSA9PSBudWxsKSB7XG4gICAgICB0aGlzLmJvZHkgPSBudWxsXG4gICAgfSBlbHNlIGlmICh1dGlsLmlzU3RyZWFtKGJvZHkpKSB7XG4gICAgICB0aGlzLmJvZHkgPSBib2R5XG5cbiAgICAgIGNvbnN0IHJTdGF0ZSA9IHRoaXMuYm9keS5fcmVhZGFibGVTdGF0ZVxuICAgICAgaWYgKCFyU3RhdGUgfHwgIXJTdGF0ZS5hdXRvRGVzdHJveSkge1xuICAgICAgICB0aGlzLmVuZEhhbmRsZXIgPSBmdW5jdGlvbiBhdXRvRGVzdHJveSAoKSB7XG4gICAgICAgICAgdXRpbC5kZXN0cm95KHRoaXMpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5ib2R5Lm9uKCdlbmQnLCB0aGlzLmVuZEhhbmRsZXIpXG4gICAgICB9XG5cbiAgICAgIHRoaXMuZXJyb3JIYW5kbGVyID0gZXJyID0+IHtcbiAgICAgICAgaWYgKHRoaXMuYWJvcnQpIHtcbiAgICAgICAgICB0aGlzLmFib3J0KGVycilcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmVycm9yID0gZXJyXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMuYm9keS5vbignZXJyb3InLCB0aGlzLmVycm9ySGFuZGxlcilcbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNCdWZmZXIoYm9keSkpIHtcbiAgICAgIHRoaXMuYm9keSA9IGJvZHkuYnl0ZUxlbmd0aCA/IGJvZHkgOiBudWxsXG4gICAgfSBlbHNlIGlmIChBcnJheUJ1ZmZlci5pc1ZpZXcoYm9keSkpIHtcbiAgICAgIHRoaXMuYm9keSA9IGJvZHkuYnVmZmVyLmJ5dGVMZW5ndGggPyBCdWZmZXIuZnJvbShib2R5LmJ1ZmZlciwgYm9keS5ieXRlT2Zmc2V0LCBib2R5LmJ5dGVMZW5ndGgpIDogbnVsbFxuICAgIH0gZWxzZSBpZiAoYm9keSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSB7XG4gICAgICB0aGlzLmJvZHkgPSBib2R5LmJ5dGVMZW5ndGggPyBCdWZmZXIuZnJvbShib2R5KSA6IG51bGxcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBib2R5ID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5ib2R5ID0gYm9keS5sZW5ndGggPyBCdWZmZXIuZnJvbShib2R5KSA6IG51bGxcbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNGb3JtRGF0YUxpa2UoYm9keSkgfHwgdXRpbC5pc0l0ZXJhYmxlKGJvZHkpIHx8IHV0aWwuaXNCbG9iTGlrZShib2R5KSkge1xuICAgICAgdGhpcy5ib2R5ID0gYm9keVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2JvZHkgbXVzdCBiZSBhIHN0cmluZywgYSBCdWZmZXIsIGEgUmVhZGFibGUgc3RyZWFtLCBhbiBpdGVyYWJsZSwgb3IgYW4gYXN5bmMgaXRlcmFibGUnKVxuICAgIH1cblxuICAgIHRoaXMuY29tcGxldGVkID0gZmFsc2VcblxuICAgIHRoaXMuYWJvcnRlZCA9IGZhbHNlXG5cbiAgICB0aGlzLnVwZ3JhZGUgPSB1cGdyYWRlIHx8IG51bGxcblxuICAgIHRoaXMucGF0aCA9IHF1ZXJ5ID8gdXRpbC5idWlsZFVSTChwYXRoLCBxdWVyeSkgOiBwYXRoXG5cbiAgICB0aGlzLm9yaWdpbiA9IG9yaWdpblxuXG4gICAgdGhpcy5pZGVtcG90ZW50ID0gaWRlbXBvdGVudCA9PSBudWxsXG4gICAgICA/IG1ldGhvZCA9PT0gJ0hFQUQnIHx8IG1ldGhvZCA9PT0gJ0dFVCdcbiAgICAgIDogaWRlbXBvdGVudFxuXG4gICAgdGhpcy5ibG9ja2luZyA9IGJsb2NraW5nID09IG51bGwgPyBmYWxzZSA6IGJsb2NraW5nXG5cbiAgICB0aGlzLnJlc2V0ID0gcmVzZXQgPT0gbnVsbCA/IG51bGwgOiByZXNldFxuXG4gICAgdGhpcy5ob3N0ID0gbnVsbFxuXG4gICAgdGhpcy5jb250ZW50TGVuZ3RoID0gbnVsbFxuXG4gICAgdGhpcy5jb250ZW50VHlwZSA9IG51bGxcblxuICAgIHRoaXMuaGVhZGVycyA9ICcnXG5cbiAgICAvLyBPbmx5IGZvciBIMlxuICAgIHRoaXMuZXhwZWN0Q29udGludWUgPSBleHBlY3RDb250aW51ZSAhPSBudWxsID8gZXhwZWN0Q29udGludWUgOiBmYWxzZVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaGVhZGVycykpIHtcbiAgICAgIGlmIChoZWFkZXJzLmxlbmd0aCAlIDIgIT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoZWFkZXJzIGFycmF5IG11c3QgYmUgZXZlbicpXG4gICAgICB9XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGhlYWRlcnMubGVuZ3RoOyBpICs9IDIpIHtcbiAgICAgICAgcHJvY2Vzc0hlYWRlcih0aGlzLCBoZWFkZXJzW2ldLCBoZWFkZXJzW2kgKyAxXSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGhlYWRlcnMgJiYgdHlwZW9mIGhlYWRlcnMgPT09ICdvYmplY3QnKSB7XG4gICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoaGVhZGVycylcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBrZXkgPSBrZXlzW2ldXG4gICAgICAgIHByb2Nlc3NIZWFkZXIodGhpcywga2V5LCBoZWFkZXJzW2tleV0pXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChoZWFkZXJzICE9IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaGVhZGVycyBtdXN0IGJlIGFuIG9iamVjdCBvciBhbiBhcnJheScpXG4gICAgfVxuXG4gICAgaWYgKHV0aWwuaXNGb3JtRGF0YUxpa2UodGhpcy5ib2R5KSkge1xuICAgICAgaWYgKHV0aWwubm9kZU1ham9yIDwgMTYgfHwgKHV0aWwubm9kZU1ham9yID09PSAxNiAmJiB1dGlsLm5vZGVNaW5vciA8IDgpKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignRm9ybS1EYXRhIGJvZGllcyBhcmUgb25seSBzdXBwb3J0ZWQgaW4gbm9kZSB2MTYuOCBhbmQgbmV3ZXIuJylcbiAgICAgIH1cblxuICAgICAgaWYgKCFleHRyYWN0Qm9keSkge1xuICAgICAgICBleHRyYWN0Qm9keSA9IHJlcXVpcmUoJy4uL2ZldGNoL2JvZHkuanMnKS5leHRyYWN0Qm9keVxuICAgICAgfVxuXG4gICAgICBjb25zdCBbYm9keVN0cmVhbSwgY29udGVudFR5cGVdID0gZXh0cmFjdEJvZHkoYm9keSlcbiAgICAgIGlmICh0aGlzLmNvbnRlbnRUeXBlID09IG51bGwpIHtcbiAgICAgICAgdGhpcy5jb250ZW50VHlwZSA9IGNvbnRlbnRUeXBlXG4gICAgICAgIHRoaXMuaGVhZGVycyArPSBgY29udGVudC10eXBlOiAke2NvbnRlbnRUeXBlfVxcclxcbmBcbiAgICAgIH1cbiAgICAgIHRoaXMuYm9keSA9IGJvZHlTdHJlYW0uc3RyZWFtXG4gICAgICB0aGlzLmNvbnRlbnRMZW5ndGggPSBib2R5U3RyZWFtLmxlbmd0aFxuICAgIH0gZWxzZSBpZiAodXRpbC5pc0Jsb2JMaWtlKGJvZHkpICYmIHRoaXMuY29udGVudFR5cGUgPT0gbnVsbCAmJiBib2R5LnR5cGUpIHtcbiAgICAgIHRoaXMuY29udGVudFR5cGUgPSBib2R5LnR5cGVcbiAgICAgIHRoaXMuaGVhZGVycyArPSBgY29udGVudC10eXBlOiAke2JvZHkudHlwZX1cXHJcXG5gXG4gICAgfVxuXG4gICAgdXRpbC52YWxpZGF0ZUhhbmRsZXIoaGFuZGxlciwgbWV0aG9kLCB1cGdyYWRlKVxuXG4gICAgdGhpcy5zZXJ2ZXJuYW1lID0gdXRpbC5nZXRTZXJ2ZXJOYW1lKHRoaXMuaG9zdClcblxuICAgIHRoaXNba0hhbmRsZXJdID0gaGFuZGxlclxuXG4gICAgaWYgKGNoYW5uZWxzLmNyZWF0ZS5oYXNTdWJzY3JpYmVycykge1xuICAgICAgY2hhbm5lbHMuY3JlYXRlLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzIH0pXG4gICAgfVxuICB9XG5cbiAgb25Cb2R5U2VudCAoY2h1bmspIHtcbiAgICBpZiAodGhpc1trSGFuZGxlcl0ub25Cb2R5U2VudCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHRoaXNba0hhbmRsZXJdLm9uQm9keVNlbnQoY2h1bmspXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5hYm9ydChlcnIpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25SZXF1ZXN0U2VudCAoKSB7XG4gICAgaWYgKGNoYW5uZWxzLmJvZHlTZW50Lmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICBjaGFubmVscy5ib2R5U2VudC5wdWJsaXNoKHsgcmVxdWVzdDogdGhpcyB9KVxuICAgIH1cblxuICAgIGlmICh0aGlzW2tIYW5kbGVyXS5vblJlcXVlc3RTZW50KSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25SZXF1ZXN0U2VudCgpXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5hYm9ydChlcnIpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCkge1xuICAgIGFzc2VydCghdGhpcy5hYm9ydGVkKVxuICAgIGFzc2VydCghdGhpcy5jb21wbGV0ZWQpXG5cbiAgICBpZiAodGhpcy5lcnJvcikge1xuICAgICAgYWJvcnQodGhpcy5lcnJvcilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hYm9ydCA9IGFib3J0XG4gICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25Db25uZWN0KGFib3J0KVxuICAgIH1cbiAgfVxuXG4gIG9uSGVhZGVycyAoc3RhdHVzQ29kZSwgaGVhZGVycywgcmVzdW1lLCBzdGF0dXNUZXh0KSB7XG4gICAgYXNzZXJ0KCF0aGlzLmFib3J0ZWQpXG4gICAgYXNzZXJ0KCF0aGlzLmNvbXBsZXRlZClcblxuICAgIGlmIChjaGFubmVscy5oZWFkZXJzLmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICBjaGFubmVscy5oZWFkZXJzLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzLCByZXNwb25zZTogeyBzdGF0dXNDb2RlLCBoZWFkZXJzLCBzdGF0dXNUZXh0IH0gfSlcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHRoaXNba0hhbmRsZXJdLm9uSGVhZGVycyhzdGF0dXNDb2RlLCBoZWFkZXJzLCByZXN1bWUsIHN0YXR1c1RleHQpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmFib3J0KGVycilcbiAgICB9XG4gIH1cblxuICBvbkRhdGEgKGNodW5rKSB7XG4gICAgYXNzZXJ0KCF0aGlzLmFib3J0ZWQpXG4gICAgYXNzZXJ0KCF0aGlzLmNvbXBsZXRlZClcblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25EYXRhKGNodW5rKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhpcy5hYm9ydChlcnIpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICBvblVwZ3JhZGUgKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHNvY2tldCkge1xuICAgIGFzc2VydCghdGhpcy5hYm9ydGVkKVxuICAgIGFzc2VydCghdGhpcy5jb21wbGV0ZWQpXG5cbiAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25VcGdyYWRlKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHNvY2tldClcbiAgfVxuXG4gIG9uQ29tcGxldGUgKHRyYWlsZXJzKSB7XG4gICAgdGhpcy5vbkZpbmFsbHkoKVxuXG4gICAgYXNzZXJ0KCF0aGlzLmFib3J0ZWQpXG5cbiAgICB0aGlzLmNvbXBsZXRlZCA9IHRydWVcbiAgICBpZiAoY2hhbm5lbHMudHJhaWxlcnMuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICAgIGNoYW5uZWxzLnRyYWlsZXJzLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzLCB0cmFpbGVycyB9KVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25Db21wbGV0ZSh0cmFpbGVycylcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vIFRPRE8gKGZpeCk6IFRoaXMgbWlnaHQgYmUgYSBiYWQgaWRlYT9cbiAgICAgIHRoaXMub25FcnJvcihlcnIpXG4gICAgfVxuICB9XG5cbiAgb25FcnJvciAoZXJyb3IpIHtcbiAgICB0aGlzLm9uRmluYWxseSgpXG5cbiAgICBpZiAoY2hhbm5lbHMuZXJyb3IuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICAgIGNoYW5uZWxzLmVycm9yLnB1Ymxpc2goeyByZXF1ZXN0OiB0aGlzLCBlcnJvciB9KVxuICAgIH1cblxuICAgIGlmICh0aGlzLmFib3J0ZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLmFib3J0ZWQgPSB0cnVlXG5cbiAgICByZXR1cm4gdGhpc1trSGFuZGxlcl0ub25FcnJvcihlcnJvcilcbiAgfVxuXG4gIG9uRmluYWxseSAoKSB7XG4gICAgaWYgKHRoaXMuZXJyb3JIYW5kbGVyKSB7XG4gICAgICB0aGlzLmJvZHkub2ZmKCdlcnJvcicsIHRoaXMuZXJyb3JIYW5kbGVyKVxuICAgICAgdGhpcy5lcnJvckhhbmRsZXIgPSBudWxsXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZW5kSGFuZGxlcikge1xuICAgICAgdGhpcy5ib2R5Lm9mZignZW5kJywgdGhpcy5lbmRIYW5kbGVyKVxuICAgICAgdGhpcy5lbmRIYW5kbGVyID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIC8vIFRPRE86IGFkanVzdCB0byBzdXBwb3J0IEgyXG4gIGFkZEhlYWRlciAoa2V5LCB2YWx1ZSkge1xuICAgIHByb2Nlc3NIZWFkZXIodGhpcywga2V5LCB2YWx1ZSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgc3RhdGljIFtrSFRUUDFCdWlsZFJlcXVlc3RdIChvcmlnaW4sIG9wdHMsIGhhbmRsZXIpIHtcbiAgICAvLyBUT0RPOiBNaWdyYXRlIGhlYWRlciBwYXJzaW5nIGhlcmUsIHRvIG1ha2UgUmVxdWVzdHNcbiAgICAvLyBIVFRQIGFnbm9zdGljXG4gICAgcmV0dXJuIG5ldyBSZXF1ZXN0KG9yaWdpbiwgb3B0cywgaGFuZGxlcilcbiAgfVxuXG4gIHN0YXRpYyBba0hUVFAyQnVpbGRSZXF1ZXN0XSAob3JpZ2luLCBvcHRzLCBoYW5kbGVyKSB7XG4gICAgY29uc3QgaGVhZGVycyA9IG9wdHMuaGVhZGVyc1xuICAgIG9wdHMgPSB7IC4uLm9wdHMsIGhlYWRlcnM6IG51bGwgfVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IG5ldyBSZXF1ZXN0KG9yaWdpbiwgb3B0cywgaGFuZGxlcilcblxuICAgIHJlcXVlc3QuaGVhZGVycyA9IHt9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzKSkge1xuICAgICAgaWYgKGhlYWRlcnMubGVuZ3RoICUgMiAhPT0gMCkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2hlYWRlcnMgYXJyYXkgbXVzdCBiZSBldmVuJylcbiAgICAgIH1cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaGVhZGVycy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICBwcm9jZXNzSGVhZGVyKHJlcXVlc3QsIGhlYWRlcnNbaV0sIGhlYWRlcnNbaSArIDFdLCB0cnVlKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoaGVhZGVycyAmJiB0eXBlb2YgaGVhZGVycyA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhoZWFkZXJzKVxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGtleSA9IGtleXNbaV1cbiAgICAgICAgcHJvY2Vzc0hlYWRlcihyZXF1ZXN0LCBrZXksIGhlYWRlcnNba2V5XSwgdHJ1ZSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGhlYWRlcnMgIT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoZWFkZXJzIG11c3QgYmUgYW4gb2JqZWN0IG9yIGFuIGFycmF5JylcbiAgICB9XG5cbiAgICByZXR1cm4gcmVxdWVzdFxuICB9XG5cbiAgc3RhdGljIFtrSFRUUDJDb3B5SGVhZGVyc10gKHJhdykge1xuICAgIGNvbnN0IHJhd0hlYWRlcnMgPSByYXcuc3BsaXQoJ1xcclxcbicpXG4gICAgY29uc3QgaGVhZGVycyA9IHt9XG5cbiAgICBmb3IgKGNvbnN0IGhlYWRlciBvZiByYXdIZWFkZXJzKSB7XG4gICAgICBjb25zdCBba2V5LCB2YWx1ZV0gPSBoZWFkZXIuc3BsaXQoJzogJylcblxuICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUubGVuZ3RoID09PSAwKSBjb250aW51ZVxuXG4gICAgICBpZiAoaGVhZGVyc1trZXldKSBoZWFkZXJzW2tleV0gKz0gYCwke3ZhbHVlfWBcbiAgICAgIGVsc2UgaGVhZGVyc1trZXldID0gdmFsdWVcbiAgICB9XG5cbiAgICByZXR1cm4gaGVhZGVyc1xuICB9XG59XG5cbmZ1bmN0aW9uIHByb2Nlc3NIZWFkZXJWYWx1ZSAoa2V5LCB2YWwsIHNraXBBcHBlbmQpIHtcbiAgaWYgKHZhbCAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0Jykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihgaW52YWxpZCAke2tleX0gaGVhZGVyYClcbiAgfVxuXG4gIHZhbCA9IHZhbCAhPSBudWxsID8gYCR7dmFsfWAgOiAnJ1xuXG4gIGlmIChoZWFkZXJDaGFyUmVnZXguZXhlYyh2YWwpICE9PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKGBpbnZhbGlkICR7a2V5fSBoZWFkZXJgKVxuICB9XG5cbiAgcmV0dXJuIHNraXBBcHBlbmQgPyB2YWwgOiBgJHtrZXl9OiAke3ZhbH1cXHJcXG5gXG59XG5cbmZ1bmN0aW9uIHByb2Nlc3NIZWFkZXIgKHJlcXVlc3QsIGtleSwgdmFsLCBza2lwQXBwZW5kID0gZmFsc2UpIHtcbiAgaWYgKHZhbCAmJiAodHlwZW9mIHZhbCA9PT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkodmFsKSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoYGludmFsaWQgJHtrZXl9IGhlYWRlcmApXG4gIH0gZWxzZSBpZiAodmFsID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmIChcbiAgICByZXF1ZXN0Lmhvc3QgPT09IG51bGwgJiZcbiAgICBrZXkubGVuZ3RoID09PSA0ICYmXG4gICAga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdob3N0J1xuICApIHtcbiAgICBpZiAoaGVhZGVyQ2hhclJlZ2V4LmV4ZWModmFsKSAhPT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKGBpbnZhbGlkICR7a2V5fSBoZWFkZXJgKVxuICAgIH1cbiAgICAvLyBDb25zdW1lZCBieSBDbGllbnRcbiAgICByZXF1ZXN0Lmhvc3QgPSB2YWxcbiAgfSBlbHNlIGlmIChcbiAgICByZXF1ZXN0LmNvbnRlbnRMZW5ndGggPT09IG51bGwgJiZcbiAgICBrZXkubGVuZ3RoID09PSAxNCAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC1sZW5ndGgnXG4gICkge1xuICAgIHJlcXVlc3QuY29udGVudExlbmd0aCA9IHBhcnNlSW50KHZhbCwgMTApXG4gICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUocmVxdWVzdC5jb250ZW50TGVuZ3RoKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIGNvbnRlbnQtbGVuZ3RoIGhlYWRlcicpXG4gICAgfVxuICB9IGVsc2UgaWYgKFxuICAgIHJlcXVlc3QuY29udGVudFR5cGUgPT09IG51bGwgJiZcbiAgICBrZXkubGVuZ3RoID09PSAxMiAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC10eXBlJ1xuICApIHtcbiAgICByZXF1ZXN0LmNvbnRlbnRUeXBlID0gdmFsXG4gICAgaWYgKHNraXBBcHBlbmQpIHJlcXVlc3QuaGVhZGVyc1trZXldID0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsLCBza2lwQXBwZW5kKVxuICAgIGVsc2UgcmVxdWVzdC5oZWFkZXJzICs9IHByb2Nlc3NIZWFkZXJWYWx1ZShrZXksIHZhbClcbiAgfSBlbHNlIGlmIChcbiAgICBrZXkubGVuZ3RoID09PSAxNyAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAndHJhbnNmZXItZW5jb2RpbmcnXG4gICkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCB0cmFuc2Zlci1lbmNvZGluZyBoZWFkZXInKVxuICB9IGVsc2UgaWYgKFxuICAgIGtleS5sZW5ndGggPT09IDEwICYmXG4gICAga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdjb25uZWN0aW9uJ1xuICApIHtcbiAgICBjb25zdCB2YWx1ZSA9IHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnID8gdmFsLnRvTG93ZXJDYXNlKCkgOiBudWxsXG4gICAgaWYgKHZhbHVlICE9PSAnY2xvc2UnICYmIHZhbHVlICE9PSAna2VlcC1hbGl2ZScpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjb25uZWN0aW9uIGhlYWRlcicpXG4gICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gJ2Nsb3NlJykge1xuICAgICAgcmVxdWVzdC5yZXNldCA9IHRydWVcbiAgICB9XG4gIH0gZWxzZSBpZiAoXG4gICAga2V5Lmxlbmd0aCA9PT0gMTAgJiZcbiAgICBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2tlZXAtYWxpdmUnXG4gICkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBrZWVwLWFsaXZlIGhlYWRlcicpXG4gIH0gZWxzZSBpZiAoXG4gICAga2V5Lmxlbmd0aCA9PT0gNyAmJlxuICAgIGtleS50b0xvd2VyQ2FzZSgpID09PSAndXBncmFkZSdcbiAgKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIHVwZ3JhZGUgaGVhZGVyJylcbiAgfSBlbHNlIGlmIChcbiAgICBrZXkubGVuZ3RoID09PSA2ICYmXG4gICAga2V5LnRvTG93ZXJDYXNlKCkgPT09ICdleHBlY3QnXG4gICkge1xuICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWRFcnJvcignZXhwZWN0IGhlYWRlciBub3Qgc3VwcG9ydGVkJylcbiAgfSBlbHNlIGlmICh0b2tlblJlZ0V4cC5leGVjKGtleSkgPT09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgaGVhZGVyIGtleScpXG4gIH0gZWxzZSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWwubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKHNraXBBcHBlbmQpIHtcbiAgICAgICAgICBpZiAocmVxdWVzdC5oZWFkZXJzW2tleV0pIHJlcXVlc3QuaGVhZGVyc1trZXldICs9IGAsJHtwcm9jZXNzSGVhZGVyVmFsdWUoa2V5LCB2YWxbaV0sIHNraXBBcHBlbmQpfWBcbiAgICAgICAgICBlbHNlIHJlcXVlc3QuaGVhZGVyc1trZXldID0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsW2ldLCBza2lwQXBwZW5kKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlcXVlc3QuaGVhZGVycyArPSBwcm9jZXNzSGVhZGVyVmFsdWUoa2V5LCB2YWxbaV0pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHNraXBBcHBlbmQpIHJlcXVlc3QuaGVhZGVyc1trZXldID0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsLCBza2lwQXBwZW5kKVxuICAgICAgZWxzZSByZXF1ZXN0LmhlYWRlcnMgKz0gcHJvY2Vzc0hlYWRlclZhbHVlKGtleSwgdmFsKVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IFJlcXVlc3RcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgRXZlbnRFbWl0dGVyID0gcmVxdWlyZSgnZXZlbnRzJylcblxuY2xhc3MgRGlzcGF0Y2hlciBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gIGRpc3BhdGNoICgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBpbXBsZW1lbnRlZCcpXG4gIH1cblxuICBjbG9zZSAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKVxuICB9XG5cbiAgZGVzdHJveSAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdub3QgaW1wbGVtZW50ZWQnKVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gRGlzcGF0Y2hlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBEaXNwYXRjaGVyID0gcmVxdWlyZSgnLi9kaXNwYXRjaGVyJylcbmNvbnN0IHtcbiAgQ2xpZW50RGVzdHJveWVkRXJyb3IsXG4gIENsaWVudENsb3NlZEVycm9yLFxuICBJbnZhbGlkQXJndW1lbnRFcnJvclxufSA9IHJlcXVpcmUoJy4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyBrRGVzdHJveSwga0Nsb3NlLCBrRGlzcGF0Y2gsIGtJbnRlcmNlcHRvcnMgfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcblxuY29uc3Qga0Rlc3Ryb3llZCA9IFN5bWJvbCgnZGVzdHJveWVkJylcbmNvbnN0IGtDbG9zZWQgPSBTeW1ib2woJ2Nsb3NlZCcpXG5jb25zdCBrT25EZXN0cm95ZWQgPSBTeW1ib2woJ29uRGVzdHJveWVkJylcbmNvbnN0IGtPbkNsb3NlZCA9IFN5bWJvbCgnb25DbG9zZWQnKVxuY29uc3Qga0ludGVyY2VwdGVkRGlzcGF0Y2ggPSBTeW1ib2woJ0ludGVyY2VwdGVkIERpc3BhdGNoJylcblxuY2xhc3MgRGlzcGF0Y2hlckJhc2UgZXh0ZW5kcyBEaXNwYXRjaGVyIHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXNba0Rlc3Ryb3llZF0gPSBmYWxzZVxuICAgIHRoaXNba09uRGVzdHJveWVkXSA9IG51bGxcbiAgICB0aGlzW2tDbG9zZWRdID0gZmFsc2VcbiAgICB0aGlzW2tPbkNsb3NlZF0gPSBbXVxuICB9XG5cbiAgZ2V0IGRlc3Ryb3llZCAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0Rlc3Ryb3llZF1cbiAgfVxuXG4gIGdldCBjbG9zZWQgKCkge1xuICAgIHJldHVybiB0aGlzW2tDbG9zZWRdXG4gIH1cblxuICBnZXQgaW50ZXJjZXB0b3JzICgpIHtcbiAgICByZXR1cm4gdGhpc1trSW50ZXJjZXB0b3JzXVxuICB9XG5cbiAgc2V0IGludGVyY2VwdG9ycyAobmV3SW50ZXJjZXB0b3JzKSB7XG4gICAgaWYgKG5ld0ludGVyY2VwdG9ycykge1xuICAgICAgZm9yIChsZXQgaSA9IG5ld0ludGVyY2VwdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgICBjb25zdCBpbnRlcmNlcHRvciA9IHRoaXNba0ludGVyY2VwdG9yc11baV1cbiAgICAgICAgaWYgKHR5cGVvZiBpbnRlcmNlcHRvciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW50ZXJjZXB0b3IgbXVzdCBiZSBhbiBmdW5jdGlvbicpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzW2tJbnRlcmNlcHRvcnNdID0gbmV3SW50ZXJjZXB0b3JzXG4gIH1cblxuICBjbG9zZSAoY2FsbGJhY2spIHtcbiAgICBpZiAoY2FsbGJhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGVyciA/IHJlamVjdChlcnIpIDogcmVzb2x2ZShkYXRhKVxuICAgICAgICB9KVxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgY2FsbGJhY2snKVxuICAgIH1cblxuICAgIGlmICh0aGlzW2tEZXN0cm95ZWRdKSB7XG4gICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBjYWxsYmFjayhuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKSwgbnVsbCkpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAodGhpc1trQ2xvc2VkXSkge1xuICAgICAgaWYgKHRoaXNba09uQ2xvc2VkXSkge1xuICAgICAgICB0aGlzW2tPbkNsb3NlZF0ucHVzaChjYWxsYmFjaylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKG51bGwsIG51bGwpKVxuICAgICAgfVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpc1trQ2xvc2VkXSA9IHRydWVcbiAgICB0aGlzW2tPbkNsb3NlZF0ucHVzaChjYWxsYmFjaylcblxuICAgIGNvbnN0IG9uQ2xvc2VkID0gKCkgPT4ge1xuICAgICAgY29uc3QgY2FsbGJhY2tzID0gdGhpc1trT25DbG9zZWRdXG4gICAgICB0aGlzW2tPbkNsb3NlZF0gPSBudWxsXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhbGxiYWNrcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjYWxsYmFja3NbaV0obnVsbCwgbnVsbClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTaG91bGQgbm90IGVycm9yLlxuICAgIHRoaXNba0Nsb3NlXSgpXG4gICAgICAudGhlbigoKSA9PiB0aGlzLmRlc3Ryb3koKSlcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgcXVldWVNaWNyb3Rhc2sob25DbG9zZWQpXG4gICAgICB9KVxuICB9XG5cbiAgZGVzdHJveSAoZXJyLCBjYWxsYmFjaykge1xuICAgIGlmICh0eXBlb2YgZXJyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjYWxsYmFjayA9IGVyclxuICAgICAgZXJyID0gbnVsbFxuICAgIH1cblxuICAgIGlmIChjYWxsYmFjayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICB0aGlzLmRlc3Ryb3koZXJyLCAoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGVyciA/IC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBzaG91bGQgbmV2ZXIgZXJyb3IgKi8gcmVqZWN0KGVycikgOiByZXNvbHZlKGRhdGEpXG4gICAgICAgIH0pXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjYWxsYmFjaycpXG4gICAgfVxuXG4gICAgaWYgKHRoaXNba0Rlc3Ryb3llZF0pIHtcbiAgICAgIGlmICh0aGlzW2tPbkRlc3Ryb3llZF0pIHtcbiAgICAgICAgdGhpc1trT25EZXN0cm95ZWRdLnB1c2goY2FsbGJhY2spXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBjYWxsYmFjayhudWxsLCBudWxsKSlcbiAgICAgIH1cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghZXJyKSB7XG4gICAgICBlcnIgPSBuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKVxuICAgIH1cblxuICAgIHRoaXNba0Rlc3Ryb3llZF0gPSB0cnVlXG4gICAgdGhpc1trT25EZXN0cm95ZWRdID0gdGhpc1trT25EZXN0cm95ZWRdIHx8IFtdXG4gICAgdGhpc1trT25EZXN0cm95ZWRdLnB1c2goY2FsbGJhY2spXG5cbiAgICBjb25zdCBvbkRlc3Ryb3llZCA9ICgpID0+IHtcbiAgICAgIGNvbnN0IGNhbGxiYWNrcyA9IHRoaXNba09uRGVzdHJveWVkXVxuICAgICAgdGhpc1trT25EZXN0cm95ZWRdID0gbnVsbFxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjYWxsYmFja3MubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY2FsbGJhY2tzW2ldKG51bGwsIG51bGwpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2hvdWxkIG5vdCBlcnJvci5cbiAgICB0aGlzW2tEZXN0cm95XShlcnIpLnRoZW4oKCkgPT4ge1xuICAgICAgcXVldWVNaWNyb3Rhc2sob25EZXN0cm95ZWQpXG4gICAgfSlcbiAgfVxuXG4gIFtrSW50ZXJjZXB0ZWREaXNwYXRjaF0gKG9wdHMsIGhhbmRsZXIpIHtcbiAgICBpZiAoIXRoaXNba0ludGVyY2VwdG9yc10gfHwgdGhpc1trSW50ZXJjZXB0b3JzXS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXNba0ludGVyY2VwdGVkRGlzcGF0Y2hdID0gdGhpc1trRGlzcGF0Y2hdXG4gICAgICByZXR1cm4gdGhpc1trRGlzcGF0Y2hdKG9wdHMsIGhhbmRsZXIpXG4gICAgfVxuXG4gICAgbGV0IGRpc3BhdGNoID0gdGhpc1trRGlzcGF0Y2hdLmJpbmQodGhpcylcbiAgICBmb3IgKGxldCBpID0gdGhpc1trSW50ZXJjZXB0b3JzXS5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgZGlzcGF0Y2ggPSB0aGlzW2tJbnRlcmNlcHRvcnNdW2ldKGRpc3BhdGNoKVxuICAgIH1cbiAgICB0aGlzW2tJbnRlcmNlcHRlZERpc3BhdGNoXSA9IGRpc3BhdGNoXG4gICAgcmV0dXJuIGRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpXG4gIH1cblxuICBkaXNwYXRjaCAob3B0cywgaGFuZGxlcikge1xuICAgIGlmICghaGFuZGxlciB8fCB0eXBlb2YgaGFuZGxlciAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaGFuZGxlciBtdXN0IGJlIGFuIG9iamVjdCcpXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGlmICghb3B0cyB8fCB0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdvcHRzIG11c3QgYmUgYW4gb2JqZWN0LicpXG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzW2tEZXN0cm95ZWRdIHx8IHRoaXNba09uRGVzdHJveWVkXSkge1xuICAgICAgICB0aHJvdyBuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpc1trQ2xvc2VkXSkge1xuICAgICAgICB0aHJvdyBuZXcgQ2xpZW50Q2xvc2VkRXJyb3IoKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpc1trSW50ZXJjZXB0ZWREaXNwYXRjaF0ob3B0cywgaGFuZGxlcilcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmICh0eXBlb2YgaGFuZGxlci5vbkVycm9yICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvbkVycm9yIG1ldGhvZCcpXG4gICAgICB9XG5cbiAgICAgIGhhbmRsZXIub25FcnJvcihlcnIpXG5cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IERpc3BhdGNoZXJCYXNlXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IG5ldCA9IHJlcXVpcmUoJ25ldCcpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yLCBDb25uZWN0VGltZW91dEVycm9yIH0gPSByZXF1aXJlKCcuL2Vycm9ycycpXG5cbmxldCB0bHMgLy8gaW5jbHVkZSB0bHMgY29uZGl0aW9uYWxseSBzaW5jZSBpdCBpcyBub3QgYWx3YXlzIGF2YWlsYWJsZVxuXG4vLyBUT0RPOiBzZXNzaW9uIHJlLXVzZSBkb2VzIG5vdCB3YWl0IGZvciB0aGUgZmlyc3Rcbi8vIGNvbm5lY3Rpb24gdG8gcmVzb2x2ZSB0aGUgc2Vzc2lvbiBhbmQgbWlnaHQgdGhlcmVmb3JlXG4vLyByZXNvbHZlIHRoZSBzYW1lIHNlcnZlcm5hbWUgbXVsdGlwbGUgdGltZXMgZXZlbiB3aGVuXG4vLyByZS11c2UgaXMgZW5hYmxlZC5cblxubGV0IFNlc3Npb25DYWNoZVxuLy8gRklYTUU6IHJlbW92ZSB3b3JrYXJvdW5kIHdoZW4gdGhlIE5vZGUgYnVnIGlzIGZpeGVkXG4vLyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvaXNzdWVzLzQ5MzQ0I2lzc3VlY29tbWVudC0xNzQxNzc2MzA4XG5pZiAoZ2xvYmFsLkZpbmFsaXphdGlvblJlZ2lzdHJ5ICYmICFwcm9jZXNzLmVudi5OT0RFX1Y4X0NPVkVSQUdFKSB7XG4gIFNlc3Npb25DYWNoZSA9IGNsYXNzIFdlYWtTZXNzaW9uQ2FjaGUge1xuICAgIGNvbnN0cnVjdG9yIChtYXhDYWNoZWRTZXNzaW9ucykge1xuICAgICAgdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMgPSBtYXhDYWNoZWRTZXNzaW9uc1xuICAgICAgdGhpcy5fc2Vzc2lvbkNhY2hlID0gbmV3IE1hcCgpXG4gICAgICB0aGlzLl9zZXNzaW9uUmVnaXN0cnkgPSBuZXcgZ2xvYmFsLkZpbmFsaXphdGlvblJlZ2lzdHJ5KChrZXkpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX3Nlc3Npb25DYWNoZS5zaXplIDwgdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlZiA9IHRoaXMuX3Nlc3Npb25DYWNoZS5nZXQoa2V5KVxuICAgICAgICBpZiAocmVmICE9PSB1bmRlZmluZWQgJiYgcmVmLmRlcmVmKCkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMuX3Nlc3Npb25DYWNoZS5kZWxldGUoa2V5KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cblxuICAgIGdldCAoc2Vzc2lvbktleSkge1xuICAgICAgY29uc3QgcmVmID0gdGhpcy5fc2Vzc2lvbkNhY2hlLmdldChzZXNzaW9uS2V5KVxuICAgICAgcmV0dXJuIHJlZiA/IHJlZi5kZXJlZigpIDogbnVsbFxuICAgIH1cblxuICAgIHNldCAoc2Vzc2lvbktleSwgc2Vzc2lvbikge1xuICAgICAgaWYgKHRoaXMuX21heENhY2hlZFNlc3Npb25zID09PSAwKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICB0aGlzLl9zZXNzaW9uQ2FjaGUuc2V0KHNlc3Npb25LZXksIG5ldyBXZWFrUmVmKHNlc3Npb24pKVxuICAgICAgdGhpcy5fc2Vzc2lvblJlZ2lzdHJ5LnJlZ2lzdGVyKHNlc3Npb24sIHNlc3Npb25LZXkpXG4gICAgfVxuICB9XG59IGVsc2Uge1xuICBTZXNzaW9uQ2FjaGUgPSBjbGFzcyBTaW1wbGVTZXNzaW9uQ2FjaGUge1xuICAgIGNvbnN0cnVjdG9yIChtYXhDYWNoZWRTZXNzaW9ucykge1xuICAgICAgdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMgPSBtYXhDYWNoZWRTZXNzaW9uc1xuICAgICAgdGhpcy5fc2Vzc2lvbkNhY2hlID0gbmV3IE1hcCgpXG4gICAgfVxuXG4gICAgZ2V0IChzZXNzaW9uS2V5KSB7XG4gICAgICByZXR1cm4gdGhpcy5fc2Vzc2lvbkNhY2hlLmdldChzZXNzaW9uS2V5KVxuICAgIH1cblxuICAgIHNldCAoc2Vzc2lvbktleSwgc2Vzc2lvbikge1xuICAgICAgaWYgKHRoaXMuX21heENhY2hlZFNlc3Npb25zID09PSAwKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5fc2Vzc2lvbkNhY2hlLnNpemUgPj0gdGhpcy5fbWF4Q2FjaGVkU2Vzc2lvbnMpIHtcbiAgICAgICAgLy8gcmVtb3ZlIHRoZSBvbGRlc3Qgc2Vzc2lvblxuICAgICAgICBjb25zdCB7IHZhbHVlOiBvbGRlc3RLZXkgfSA9IHRoaXMuX3Nlc3Npb25DYWNoZS5rZXlzKCkubmV4dCgpXG4gICAgICAgIHRoaXMuX3Nlc3Npb25DYWNoZS5kZWxldGUob2xkZXN0S2V5KVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9zZXNzaW9uQ2FjaGUuc2V0KHNlc3Npb25LZXksIHNlc3Npb24pXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGJ1aWxkQ29ubmVjdG9yICh7IGFsbG93SDIsIG1heENhY2hlZFNlc3Npb25zLCBzb2NrZXRQYXRoLCB0aW1lb3V0LCAuLi5vcHRzIH0pIHtcbiAgaWYgKG1heENhY2hlZFNlc3Npb25zICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKG1heENhY2hlZFNlc3Npb25zKSB8fCBtYXhDYWNoZWRTZXNzaW9ucyA8IDApKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdtYXhDYWNoZWRTZXNzaW9ucyBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciBvciB6ZXJvJylcbiAgfVxuXG4gIGNvbnN0IG9wdGlvbnMgPSB7IHBhdGg6IHNvY2tldFBhdGgsIC4uLm9wdHMgfVxuICBjb25zdCBzZXNzaW9uQ2FjaGUgPSBuZXcgU2Vzc2lvbkNhY2hlKG1heENhY2hlZFNlc3Npb25zID09IG51bGwgPyAxMDAgOiBtYXhDYWNoZWRTZXNzaW9ucylcbiAgdGltZW91dCA9IHRpbWVvdXQgPT0gbnVsbCA/IDEwZTMgOiB0aW1lb3V0XG4gIGFsbG93SDIgPSBhbGxvd0gyICE9IG51bGwgPyBhbGxvd0gyIDogZmFsc2VcbiAgcmV0dXJuIGZ1bmN0aW9uIGNvbm5lY3QgKHsgaG9zdG5hbWUsIGhvc3QsIHByb3RvY29sLCBwb3J0LCBzZXJ2ZXJuYW1lLCBsb2NhbEFkZHJlc3MsIGh0dHBTb2NrZXQgfSwgY2FsbGJhY2spIHtcbiAgICBsZXQgc29ja2V0XG4gICAgaWYgKHByb3RvY29sID09PSAnaHR0cHM6Jykge1xuICAgICAgaWYgKCF0bHMpIHtcbiAgICAgICAgdGxzID0gcmVxdWlyZSgndGxzJylcbiAgICAgIH1cbiAgICAgIHNlcnZlcm5hbWUgPSBzZXJ2ZXJuYW1lIHx8IG9wdGlvbnMuc2VydmVybmFtZSB8fCB1dGlsLmdldFNlcnZlck5hbWUoaG9zdCkgfHwgbnVsbFxuXG4gICAgICBjb25zdCBzZXNzaW9uS2V5ID0gc2VydmVybmFtZSB8fCBob3N0bmFtZVxuICAgICAgY29uc3Qgc2Vzc2lvbiA9IHNlc3Npb25DYWNoZS5nZXQoc2Vzc2lvbktleSkgfHwgbnVsbFxuXG4gICAgICBhc3NlcnQoc2Vzc2lvbktleSlcblxuICAgICAgc29ja2V0ID0gdGxzLmNvbm5lY3Qoe1xuICAgICAgICBoaWdoV2F0ZXJNYXJrOiAxNjM4NCwgLy8gVExTIGluIG5vZGUgY2FuJ3QgaGF2ZSBiaWdnZXIgSFdNIGFueXdheS4uLlxuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBzZXJ2ZXJuYW1lLFxuICAgICAgICBzZXNzaW9uLFxuICAgICAgICBsb2NhbEFkZHJlc3MsXG4gICAgICAgIC8vIFRPRE8oSFRUUC8yKTogQWRkIHN1cHBvcnQgZm9yIGgyY1xuICAgICAgICBBTFBOUHJvdG9jb2xzOiBhbGxvd0gyID8gWydodHRwLzEuMScsICdoMiddIDogWydodHRwLzEuMSddLFxuICAgICAgICBzb2NrZXQ6IGh0dHBTb2NrZXQsIC8vIHVwZ3JhZGUgc29ja2V0IGNvbm5lY3Rpb25cbiAgICAgICAgcG9ydDogcG9ydCB8fCA0NDMsXG4gICAgICAgIGhvc3Q6IGhvc3RuYW1lXG4gICAgICB9KVxuXG4gICAgICBzb2NrZXRcbiAgICAgICAgLm9uKCdzZXNzaW9uJywgZnVuY3Rpb24gKHNlc3Npb24pIHtcbiAgICAgICAgICAvLyBUT0RPIChmaXgpOiBDYW4gYSBzZXNzaW9uIGJlY29tZSBpbnZhbGlkIG9uY2UgZXN0YWJsaXNoZWQ/IERvbid0IHRoaW5rIHNvP1xuICAgICAgICAgIHNlc3Npb25DYWNoZS5zZXQoc2Vzc2lvbktleSwgc2Vzc2lvbilcbiAgICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KCFodHRwU29ja2V0LCAnaHR0cFNvY2tldCBjYW4gb25seSBiZSBzZW50IG9uIFRMUyB1cGRhdGUnKVxuICAgICAgc29ja2V0ID0gbmV0LmNvbm5lY3Qoe1xuICAgICAgICBoaWdoV2F0ZXJNYXJrOiA2NCAqIDEwMjQsIC8vIFNhbWUgYXMgbm9kZWpzIGZzIHN0cmVhbXMuXG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgIGxvY2FsQWRkcmVzcyxcbiAgICAgICAgcG9ydDogcG9ydCB8fCA4MCxcbiAgICAgICAgaG9zdDogaG9zdG5hbWVcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gU2V0IFRDUCBrZWVwIGFsaXZlIG9wdGlvbnMgb24gdGhlIHNvY2tldCBoZXJlIGluc3RlYWQgb2YgaW4gY29ubmVjdCgpIGZvciB0aGUgY2FzZSBvZiBhc3NpZ25pbmcgdGhlIHNvY2tldFxuICAgIGlmIChvcHRpb25zLmtlZXBBbGl2ZSA9PSBudWxsIHx8IG9wdGlvbnMua2VlcEFsaXZlKSB7XG4gICAgICBjb25zdCBrZWVwQWxpdmVJbml0aWFsRGVsYXkgPSBvcHRpb25zLmtlZXBBbGl2ZUluaXRpYWxEZWxheSA9PT0gdW5kZWZpbmVkID8gNjBlMyA6IG9wdGlvbnMua2VlcEFsaXZlSW5pdGlhbERlbGF5XG4gICAgICBzb2NrZXQuc2V0S2VlcEFsaXZlKHRydWUsIGtlZXBBbGl2ZUluaXRpYWxEZWxheSlcbiAgICB9XG5cbiAgICBjb25zdCBjYW5jZWxUaW1lb3V0ID0gc2V0dXBUaW1lb3V0KCgpID0+IG9uQ29ubmVjdFRpbWVvdXQoc29ja2V0KSwgdGltZW91dClcblxuICAgIHNvY2tldFxuICAgICAgLnNldE5vRGVsYXkodHJ1ZSlcbiAgICAgIC5vbmNlKHByb3RvY29sID09PSAnaHR0cHM6JyA/ICdzZWN1cmVDb25uZWN0JyA6ICdjb25uZWN0JywgZnVuY3Rpb24gKCkge1xuICAgICAgICBjYW5jZWxUaW1lb3V0KClcblxuICAgICAgICBpZiAoY2FsbGJhY2spIHtcbiAgICAgICAgICBjb25zdCBjYiA9IGNhbGxiYWNrXG4gICAgICAgICAgY2FsbGJhY2sgPSBudWxsXG4gICAgICAgICAgY2IobnVsbCwgdGhpcylcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC5vbignZXJyb3InLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICAgIGNhbmNlbFRpbWVvdXQoKVxuXG4gICAgICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgICAgIGNvbnN0IGNiID0gY2FsbGJhY2tcbiAgICAgICAgICBjYWxsYmFjayA9IG51bGxcbiAgICAgICAgICBjYihlcnIpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICByZXR1cm4gc29ja2V0XG4gIH1cbn1cblxuZnVuY3Rpb24gc2V0dXBUaW1lb3V0IChvbkNvbm5lY3RUaW1lb3V0LCB0aW1lb3V0KSB7XG4gIGlmICghdGltZW91dCkge1xuICAgIHJldHVybiAoKSA9PiB7fVxuICB9XG5cbiAgbGV0IHMxID0gbnVsbFxuICBsZXQgczIgPSBudWxsXG4gIGNvbnN0IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vIHNldEltbWVkaWF0ZSBpcyBhZGRlZCB0byBtYWtlIHN1cmUgdGhhdCB3ZSBwcmlvdG9yaXNlIHNvY2tldCBlcnJvciBldmVudHMgb3ZlciB0aW1lb3V0c1xuICAgIHMxID0gc2V0SW1tZWRpYXRlKCgpID0+IHtcbiAgICAgIGlmIChwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInKSB7XG4gICAgICAgIC8vIFdpbmRvd3MgbmVlZHMgYW4gZXh0cmEgc2V0SW1tZWRpYXRlIHByb2JhYmx5IGR1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmZXJlbmNlcyBpbiB0aGUgc29ja2V0IGxvZ2ljXG4gICAgICAgIHMyID0gc2V0SW1tZWRpYXRlKCgpID0+IG9uQ29ubmVjdFRpbWVvdXQoKSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9uQ29ubmVjdFRpbWVvdXQoKVxuICAgICAgfVxuICAgIH0pXG4gIH0sIHRpbWVvdXQpXG4gIHJldHVybiAoKSA9PiB7XG4gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZClcbiAgICBjbGVhckltbWVkaWF0ZShzMSlcbiAgICBjbGVhckltbWVkaWF0ZShzMilcbiAgfVxufVxuXG5mdW5jdGlvbiBvbkNvbm5lY3RUaW1lb3V0IChzb2NrZXQpIHtcbiAgdXRpbC5kZXN0cm95KHNvY2tldCwgbmV3IENvbm5lY3RUaW1lb3V0RXJyb3IoKSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBidWlsZENvbm5lY3RvclxuIiwgbnVsbCwgbnVsbCwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHsga0JvZHlVc2VkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IgfSA9IHJlcXVpcmUoJy4uL2NvcmUvZXJyb3JzJylcbmNvbnN0IEVFID0gcmVxdWlyZSgnZXZlbnRzJylcblxuY29uc3QgcmVkaXJlY3RhYmxlU3RhdHVzQ29kZXMgPSBbMzAwLCAzMDEsIDMwMiwgMzAzLCAzMDcsIDMwOF1cblxuY29uc3Qga0JvZHkgPSBTeW1ib2woJ2JvZHknKVxuXG5jbGFzcyBCb2R5QXN5bmNJdGVyYWJsZSB7XG4gIGNvbnN0cnVjdG9yIChib2R5KSB7XG4gICAgdGhpc1trQm9keV0gPSBib2R5XG4gICAgdGhpc1trQm9keVVzZWRdID0gZmFsc2VcbiAgfVxuXG4gIGFzeW5jICogW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSAoKSB7XG4gICAgYXNzZXJ0KCF0aGlzW2tCb2R5VXNlZF0sICdkaXN0dXJiZWQnKVxuICAgIHRoaXNba0JvZHlVc2VkXSA9IHRydWVcbiAgICB5aWVsZCAqIHRoaXNba0JvZHldXG4gIH1cbn1cblxuY2xhc3MgUmVkaXJlY3RIYW5kbGVyIHtcbiAgY29uc3RydWN0b3IgKGRpc3BhdGNoLCBtYXhSZWRpcmVjdGlvbnMsIG9wdHMsIGhhbmRsZXIpIHtcbiAgICBpZiAobWF4UmVkaXJlY3Rpb25zICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKG1heFJlZGlyZWN0aW9ucykgfHwgbWF4UmVkaXJlY3Rpb25zIDwgMCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWF4UmVkaXJlY3Rpb25zIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIHV0aWwudmFsaWRhdGVIYW5kbGVyKGhhbmRsZXIsIG9wdHMubWV0aG9kLCBvcHRzLnVwZ3JhZGUpXG5cbiAgICB0aGlzLmRpc3BhdGNoID0gZGlzcGF0Y2hcbiAgICB0aGlzLmxvY2F0aW9uID0gbnVsbFxuICAgIHRoaXMuYWJvcnQgPSBudWxsXG4gICAgdGhpcy5vcHRzID0geyAuLi5vcHRzLCBtYXhSZWRpcmVjdGlvbnM6IDAgfSAvLyBvcHRzIG11c3QgYmUgYSBjb3B5XG4gICAgdGhpcy5tYXhSZWRpcmVjdGlvbnMgPSBtYXhSZWRpcmVjdGlvbnNcbiAgICB0aGlzLmhhbmRsZXIgPSBoYW5kbGVyXG4gICAgdGhpcy5oaXN0b3J5ID0gW11cblxuICAgIGlmICh1dGlsLmlzU3RyZWFtKHRoaXMub3B0cy5ib2R5KSkge1xuICAgICAgLy8gVE9ETyAoZml4KTogUHJvdmlkZSBzb21lIHdheSBmb3IgdGhlIHVzZXIgdG8gY2FjaGUgdGhlIGZpbGUgdG8gZS5nLiAvdG1wXG4gICAgICAvLyBzbyB0aGF0IGl0IGNhbiBiZSBkaXNwYXRjaGVkIGFnYWluP1xuICAgICAgLy8gVE9ETyAoZml4KTogRG8gd2UgbmVlZCAxMDAtZXhwZWN0IHN1cHBvcnQgdG8gcHJvdmlkZSBhIHdheSB0byBkbyB0aGlzIHByb3Blcmx5P1xuICAgICAgaWYgKHV0aWwuYm9keUxlbmd0aCh0aGlzLm9wdHMuYm9keSkgPT09IDApIHtcbiAgICAgICAgdGhpcy5vcHRzLmJvZHlcbiAgICAgICAgICAub24oJ2RhdGEnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBhc3NlcnQoZmFsc2UpXG4gICAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiB0aGlzLm9wdHMuYm9keS5yZWFkYWJsZURpZFJlYWQgIT09ICdib29sZWFuJykge1xuICAgICAgICB0aGlzLm9wdHMuYm9keVtrQm9keVVzZWRdID0gZmFsc2VcbiAgICAgICAgRUUucHJvdG90eXBlLm9uLmNhbGwodGhpcy5vcHRzLmJvZHksICdkYXRhJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHRoaXNba0JvZHlVc2VkXSA9IHRydWVcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMub3B0cy5ib2R5ICYmIHR5cGVvZiB0aGlzLm9wdHMuYm9keS5waXBlVG8gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIC8vIFRPRE8gKGZpeCk6IFdlIGNhbid0IGFjY2VzcyBSZWFkYWJsZVN0cmVhbSBpbnRlcm5hbCBzdGF0ZVxuICAgICAgLy8gdG8gZGV0ZXJtaW5lIHdoZXRoZXIgb3Igbm90IGl0IGhhcyBiZWVuIGRpc3R1cmJlZC4gVGhpcyBpcyBqdXN0XG4gICAgICAvLyBhIHdvcmthcm91bmQuXG4gICAgICB0aGlzLm9wdHMuYm9keSA9IG5ldyBCb2R5QXN5bmNJdGVyYWJsZSh0aGlzLm9wdHMuYm9keSlcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGhpcy5vcHRzLmJvZHkgJiZcbiAgICAgIHR5cGVvZiB0aGlzLm9wdHMuYm9keSAhPT0gJ3N0cmluZycgJiZcbiAgICAgICFBcnJheUJ1ZmZlci5pc1ZpZXcodGhpcy5vcHRzLmJvZHkpICYmXG4gICAgICB1dGlsLmlzSXRlcmFibGUodGhpcy5vcHRzLmJvZHkpXG4gICAgKSB7XG4gICAgICAvLyBUT0RPOiBTaG91bGQgd2UgYWxsb3cgcmUtdXNpbmcgaXRlcmFibGUgaWYgIXRoaXMub3B0cy5pZGVtcG90ZW50XG4gICAgICAvLyBvciB0aHJvdWdoIHNvbWUgb3RoZXIgZmxhZz9cbiAgICAgIHRoaXMub3B0cy5ib2R5ID0gbmV3IEJvZHlBc3luY0l0ZXJhYmxlKHRoaXMub3B0cy5ib2R5KVxuICAgIH1cbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQpIHtcbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmhhbmRsZXIub25Db25uZWN0KGFib3J0LCB7IGhpc3Rvcnk6IHRoaXMuaGlzdG9yeSB9KVxuICB9XG5cbiAgb25VcGdyYWRlIChzdGF0dXNDb2RlLCBoZWFkZXJzLCBzb2NrZXQpIHtcbiAgICB0aGlzLmhhbmRsZXIub25VcGdyYWRlKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHNvY2tldClcbiAgfVxuXG4gIG9uRXJyb3IgKGVycm9yKSB7XG4gICAgdGhpcy5oYW5kbGVyLm9uRXJyb3IoZXJyb3IpXG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIGhlYWRlcnMsIHJlc3VtZSwgc3RhdHVzVGV4dCkge1xuICAgIHRoaXMubG9jYXRpb24gPSB0aGlzLmhpc3RvcnkubGVuZ3RoID49IHRoaXMubWF4UmVkaXJlY3Rpb25zIHx8IHV0aWwuaXNEaXN0dXJiZWQodGhpcy5vcHRzLmJvZHkpXG4gICAgICA/IG51bGxcbiAgICAgIDogcGFyc2VMb2NhdGlvbihzdGF0dXNDb2RlLCBoZWFkZXJzKVxuXG4gICAgaWYgKHRoaXMub3B0cy5vcmlnaW4pIHtcbiAgICAgIHRoaXMuaGlzdG9yeS5wdXNoKG5ldyBVUkwodGhpcy5vcHRzLnBhdGgsIHRoaXMub3B0cy5vcmlnaW4pKVxuICAgIH1cblxuICAgIGlmICghdGhpcy5sb2NhdGlvbikge1xuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkhlYWRlcnMoc3RhdHVzQ29kZSwgaGVhZGVycywgcmVzdW1lLCBzdGF0dXNUZXh0KVxuICAgIH1cblxuICAgIGNvbnN0IHsgb3JpZ2luLCBwYXRobmFtZSwgc2VhcmNoIH0gPSB1dGlsLnBhcnNlVVJMKG5ldyBVUkwodGhpcy5sb2NhdGlvbiwgdGhpcy5vcHRzLm9yaWdpbiAmJiBuZXcgVVJMKHRoaXMub3B0cy5wYXRoLCB0aGlzLm9wdHMub3JpZ2luKSkpXG4gICAgY29uc3QgcGF0aCA9IHNlYXJjaCA/IGAke3BhdGhuYW1lfSR7c2VhcmNofWAgOiBwYXRobmFtZVxuXG4gICAgLy8gUmVtb3ZlIGhlYWRlcnMgcmVmZXJyaW5nIHRvIHRoZSBvcmlnaW5hbCBVUkwuXG4gICAgLy8gQnkgZGVmYXVsdCBpdCBpcyBIb3N0IG9ubHksIHVubGVzcyBpdCdzIGEgMzAzIChzZWUgYmVsb3cpLCB3aGljaCByZW1vdmVzIGFsc28gYWxsIENvbnRlbnQtKiBoZWFkZXJzLlxuICAgIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNi40XG4gICAgdGhpcy5vcHRzLmhlYWRlcnMgPSBjbGVhblJlcXVlc3RIZWFkZXJzKHRoaXMub3B0cy5oZWFkZXJzLCBzdGF0dXNDb2RlID09PSAzMDMsIHRoaXMub3B0cy5vcmlnaW4gIT09IG9yaWdpbilcbiAgICB0aGlzLm9wdHMucGF0aCA9IHBhdGhcbiAgICB0aGlzLm9wdHMub3JpZ2luID0gb3JpZ2luXG4gICAgdGhpcy5vcHRzLm1heFJlZGlyZWN0aW9ucyA9IDBcbiAgICB0aGlzLm9wdHMucXVlcnkgPSBudWxsXG5cbiAgICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMSNzZWN0aW9uLTYuNC40XG4gICAgLy8gSW4gY2FzZSBvZiBIVFRQIDMwMywgYWx3YXlzIHJlcGxhY2UgbWV0aG9kIHRvIGJlIGVpdGhlciBIRUFEIG9yIEdFVFxuICAgIGlmIChzdGF0dXNDb2RlID09PSAzMDMgJiYgdGhpcy5vcHRzLm1ldGhvZCAhPT0gJ0hFQUQnKSB7XG4gICAgICB0aGlzLm9wdHMubWV0aG9kID0gJ0dFVCdcbiAgICAgIHRoaXMub3B0cy5ib2R5ID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIG9uRGF0YSAoY2h1bmspIHtcbiAgICBpZiAodGhpcy5sb2NhdGlvbikge1xuICAgICAgLypcbiAgICAgICAgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi02LjRcblxuICAgICAgICBUTERSOiB1bmRpY2kgYWx3YXlzIGlnbm9yZXMgM3h4IHJlc3BvbnNlIGJvZGllcy5cblxuICAgICAgICBSZWRpcmVjdGlvbiBpcyB1c2VkIHRvIHNlcnZlIHRoZSByZXF1ZXN0ZWQgcmVzb3VyY2UgZnJvbSBhbm90aGVyIFVSTCwgc28gaXQgaXMgYXNzdW1lcyB0aGF0XG4gICAgICAgIG5vIGJvZHkgaXMgZ2VuZXJhdGVkIChhbmQgdGh1cyBjYW4gYmUgaWdub3JlZCkuIEV2ZW4gdGhvdWdoIGdlbmVyYXRpbmcgYSBib2R5IGlzIG5vdCBwcm9oaWJpdGVkLlxuXG4gICAgICAgIEZvciBzdGF0dXMgMzAxLCAzMDIsIDMwMywgMzA3IGFuZCAzMDggKHRoZSBsYXR0ZXIgZnJvbSBSRkMgNzIzOCksIHRoZSBzcGVjcyBtZW50aW9uIHRoYXQgdGhlIGJvZHkgdXN1YWxseVxuICAgICAgICAod2hpY2ggbWVhbnMgaXQncyBvcHRpb25hbCBhbmQgbm90IG1hbmRhdGVkKSBjb250YWluIGp1c3QgYW4gaHlwZXJsaW5rIHRvIHRoZSB2YWx1ZSBvZlxuICAgICAgICB0aGUgTG9jYXRpb24gcmVzcG9uc2UgaGVhZGVyLCBzbyB0aGUgYm9keSBjYW4gYmUgaWdub3JlZCBzYWZlbHkuXG5cbiAgICAgICAgRm9yIHN0YXR1cyAzMDAsIHdoaWNoIGlzIFwiTXVsdGlwbGUgQ2hvaWNlc1wiLCB0aGUgc3BlYyBtZW50aW9ucyBib3RoIGdlbmVyYXRpbmcgYSBMb2NhdGlvblxuICAgICAgICByZXNwb25zZSBoZWFkZXIgQU5EIGEgcmVzcG9uc2UgYm9keSB3aXRoIHRoZSBvdGhlciBwb3NzaWJsZSBsb2NhdGlvbiB0byBmb2xsb3cuXG4gICAgICAgIFNpbmNlIHRoZSBzcGVjIGV4cGxpY2l0aWx5IGNob29zZXMgbm90IHRvIHNwZWNpZnkgYSBmb3JtYXQgZm9yIHN1Y2ggYm9keSBhbmQgbGVhdmUgaXQgdG9cbiAgICAgICAgc2VydmVycyBhbmQgYnJvd3NlcnMgaW1wbGVtZW50b3JzLCB3ZSBpZ25vcmUgdGhlIGJvZHkgYXMgdGhlcmUgaXMgbm8gc3BlY2lmaWVkIHdheSB0byBldmVudHVhbGx5IHBhcnNlIGl0LlxuICAgICAgKi9cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkRhdGEoY2h1bmspXG4gICAgfVxuICB9XG5cbiAgb25Db21wbGV0ZSAodHJhaWxlcnMpIHtcbiAgICBpZiAodGhpcy5sb2NhdGlvbikge1xuICAgICAgLypcbiAgICAgICAgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi02LjRcblxuICAgICAgICBUTERSOiB1bmRpY2kgYWx3YXlzIGlnbm9yZXMgM3h4IHJlc3BvbnNlIHRyYWlsZXJzIGFzIHRoZXkgYXJlIG5vdCBleHBlY3RlZCBpbiBjYXNlIG9mIHJlZGlyZWN0aW9uc1xuICAgICAgICBhbmQgbmVpdGhlciBhcmUgdXNlZnVsIGlmIHByZXNlbnQuXG5cbiAgICAgICAgU2VlIGNvbW1lbnQgb24gb25EYXRhIG1ldGhvZCBhYm92ZSBmb3IgbW9yZSBkZXRhaWxlZCBpbmZvcm1hdGlvbnMuXG4gICAgICAqL1xuXG4gICAgICB0aGlzLmxvY2F0aW9uID0gbnVsbFxuICAgICAgdGhpcy5hYm9ydCA9IG51bGxcblxuICAgICAgdGhpcy5kaXNwYXRjaCh0aGlzLm9wdHMsIHRoaXMpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGFuZGxlci5vbkNvbXBsZXRlKHRyYWlsZXJzKVxuICAgIH1cbiAgfVxuXG4gIG9uQm9keVNlbnQgKGNodW5rKSB7XG4gICAgaWYgKHRoaXMuaGFuZGxlci5vbkJvZHlTZW50KSB7XG4gICAgICB0aGlzLmhhbmRsZXIub25Cb2R5U2VudChjaHVuaylcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gcGFyc2VMb2NhdGlvbiAoc3RhdHVzQ29kZSwgaGVhZGVycykge1xuICBpZiAocmVkaXJlY3RhYmxlU3RhdHVzQ29kZXMuaW5kZXhPZihzdGF0dXNDb2RlKSA9PT0gLTEpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBoZWFkZXJzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgaWYgKGhlYWRlcnNbaV0udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAnbG9jYXRpb24nKSB7XG4gICAgICByZXR1cm4gaGVhZGVyc1tpICsgMV1cbiAgICB9XG4gIH1cbn1cblxuLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi02LjQuNFxuZnVuY3Rpb24gc2hvdWxkUmVtb3ZlSGVhZGVyIChoZWFkZXIsIHJlbW92ZUNvbnRlbnQsIHVua25vd25PcmlnaW4pIHtcbiAgaWYgKGhlYWRlci5sZW5ndGggPT09IDQpIHtcbiAgICByZXR1cm4gdXRpbC5oZWFkZXJOYW1lVG9TdHJpbmcoaGVhZGVyKSA9PT0gJ2hvc3QnXG4gIH1cbiAgaWYgKHJlbW92ZUNvbnRlbnQgJiYgdXRpbC5oZWFkZXJOYW1lVG9TdHJpbmcoaGVhZGVyKS5zdGFydHNXaXRoKCdjb250ZW50LScpKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuICBpZiAodW5rbm93bk9yaWdpbiAmJiAoaGVhZGVyLmxlbmd0aCA9PT0gMTMgfHwgaGVhZGVyLmxlbmd0aCA9PT0gNiB8fCBoZWFkZXIubGVuZ3RoID09PSAxOSkpIHtcbiAgICBjb25zdCBuYW1lID0gdXRpbC5oZWFkZXJOYW1lVG9TdHJpbmcoaGVhZGVyKVxuICAgIHJldHVybiBuYW1lID09PSAnYXV0aG9yaXphdGlvbicgfHwgbmFtZSA9PT0gJ2Nvb2tpZScgfHwgbmFtZSA9PT0gJ3Byb3h5LWF1dGhvcml6YXRpb24nXG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbi8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNi40XG5mdW5jdGlvbiBjbGVhblJlcXVlc3RIZWFkZXJzIChoZWFkZXJzLCByZW1vdmVDb250ZW50LCB1bmtub3duT3JpZ2luKSB7XG4gIGNvbnN0IHJldCA9IFtdXG4gIGlmIChBcnJheS5pc0FycmF5KGhlYWRlcnMpKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBoZWFkZXJzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICBpZiAoIXNob3VsZFJlbW92ZUhlYWRlcihoZWFkZXJzW2ldLCByZW1vdmVDb250ZW50LCB1bmtub3duT3JpZ2luKSkge1xuICAgICAgICByZXQucHVzaChoZWFkZXJzW2ldLCBoZWFkZXJzW2kgKyAxXSlcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSBpZiAoaGVhZGVycyAmJiB0eXBlb2YgaGVhZGVycyA9PT0gJ29iamVjdCcpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhoZWFkZXJzKSkge1xuICAgICAgaWYgKCFzaG91bGRSZW1vdmVIZWFkZXIoa2V5LCByZW1vdmVDb250ZW50LCB1bmtub3duT3JpZ2luKSkge1xuICAgICAgICByZXQucHVzaChrZXksIGhlYWRlcnNba2V5XSlcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgYXNzZXJ0KGhlYWRlcnMgPT0gbnVsbCwgJ2hlYWRlcnMgbXVzdCBiZSBhbiBvYmplY3Qgb3IgYW4gYXJyYXknKVxuICB9XG4gIHJldHVybiByZXRcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBSZWRpcmVjdEhhbmRsZXJcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgUmVkaXJlY3RIYW5kbGVyID0gcmVxdWlyZSgnLi4vaGFuZGxlci9SZWRpcmVjdEhhbmRsZXInKVxuXG5mdW5jdGlvbiBjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yICh7IG1heFJlZGlyZWN0aW9uczogZGVmYXVsdE1heFJlZGlyZWN0aW9ucyB9KSB7XG4gIHJldHVybiAoZGlzcGF0Y2gpID0+IHtcbiAgICByZXR1cm4gZnVuY3Rpb24gSW50ZXJjZXB0IChvcHRzLCBoYW5kbGVyKSB7XG4gICAgICBjb25zdCB7IG1heFJlZGlyZWN0aW9ucyA9IGRlZmF1bHRNYXhSZWRpcmVjdGlvbnMgfSA9IG9wdHNcblxuICAgICAgaWYgKCFtYXhSZWRpcmVjdGlvbnMpIHtcbiAgICAgICAgcmV0dXJuIGRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlZGlyZWN0SGFuZGxlciA9IG5ldyBSZWRpcmVjdEhhbmRsZXIoZGlzcGF0Y2gsIG1heFJlZGlyZWN0aW9ucywgb3B0cywgaGFuZGxlcilcbiAgICAgIG9wdHMgPSB7IC4uLm9wdHMsIG1heFJlZGlyZWN0aW9uczogMCB9IC8vIFN0b3Agc3ViIGRpc3BhdGNoZXIgZnJvbSBhbHNvIHJlZGlyZWN0aW5nLlxuICAgICAgcmV0dXJuIGRpc3BhdGNoKG9wdHMsIHJlZGlyZWN0SGFuZGxlcilcbiAgICB9XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yXG4iLCAibW9kdWxlLmV4cG9ydHMgPSAnQUdGemJRRUFBQUFCTUFoZ0FYOEJmMkFEZjM5L0FYOWdCSDkvZjM4QmYyQUFBR0FEZjM5L0FHQUJmd0JnQW45L0FHQUdmMzkvZjM5L0FBTExBUWdEWlc1MkdIZGhjMjFmYjI1ZmFHVmhaR1Z5YzE5amIyMXdiR1YwWlFBQ0EyVnVkaFYzWVhOdFgyOXVYMjFsYzNOaFoyVmZZbVZuYVc0QUFBTmxibllMZDJGemJWOXZibDkxY213QUFRTmxibllPZDJGemJWOXZibDl6ZEdGMGRYTUFBUU5sYm5ZVWQyRnpiVjl2Ymw5b1pXRmtaWEpmWm1sbGJHUUFBUU5sYm5ZVWQyRnpiVjl2Ymw5b1pXRmtaWEpmZG1Gc2RXVUFBUU5sYm5ZTWQyRnpiVjl2Ymw5aWIyUjVBQUVEWlc1MkdIZGhjMjFmYjI1ZmJXVnpjMkZuWlY5amIyMXdiR1YwWlFBQUEwWkZBd01FQUFBRkFBQUFBQUFBQlFFRkFBVUZCUUFBQmdBQUFBQUdCZ1lHQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFCQUFBQkFRY0FBQVVGQXdBQkJBVUJjQUVTRWdVREFRQUNCZ2dCZndGQmdOUUVDd2ZSQlNJR2JXVnRiM0o1QWdBTFgybHVhWFJwWVd4cGVtVUFDUmxmWDJsdVpHbHlaV04wWDJaMWJtTjBhVzl1WDNSaFlteGxBUUFMYkd4b2RIUndYMmx1YVhRQUNoaHNiR2gwZEhCZmMyaHZkV3hrWDJ0bFpYQmZZV3hwZG1VQVFReHNiR2gwZEhCZllXeHNiMk1BREFadFlXeHNiMk1BUmd0c2JHaDBkSEJmWm5KbFpRQU5CR1p5WldVQVNBOXNiR2gwZEhCZloyVjBYM1I1Y0dVQURoVnNiR2gwZEhCZloyVjBYMmgwZEhCZmJXRnFiM0lBRHhWc2JHaDBkSEJmWjJWMFgyaDBkSEJmYldsdWIzSUFFQkZzYkdoMGRIQmZaMlYwWDIxbGRHaHZaQUFSRm14c2FIUjBjRjluWlhSZmMzUmhkSFZ6WDJOdlpHVUFFaEpzYkdoMGRIQmZaMlYwWDNWd1ozSmhaR1VBRXd4c2JHaDBkSEJmY21WelpYUUFGQTVzYkdoMGRIQmZaWGhsWTNWMFpRQVZGR3hzYUhSMGNGOXpaWFIwYVc1bmMxOXBibWwwQUJZTmJHeG9kSFJ3WDJacGJtbHphQUFYREd4c2FIUjBjRjl3WVhWelpRQVlEV3hzYUhSMGNGOXlaWE4xYldVQUdSdHNiR2gwZEhCZmNtVnpkVzFsWDJGbWRHVnlYM1Z3WjNKaFpHVUFHaEJzYkdoMGRIQmZaMlYwWDJWeWNtNXZBQnNYYkd4b2RIUndYMmRsZEY5bGNuSnZjbDl5WldGemIyNEFIQmRzYkdoMGRIQmZjMlYwWDJWeWNtOXlYM0psWVhOdmJnQWRGR3hzYUhSMGNGOW5aWFJmWlhKeWIzSmZjRzl6QUI0UmJHeG9kSFJ3WDJWeWNtNXZYMjVoYldVQUh4SnNiR2gwZEhCZmJXVjBhRzlrWDI1aGJXVUFJQkpzYkdoMGRIQmZjM1JoZEhWelgyNWhiV1VBSVJwc2JHaDBkSEJmYzJWMFgyeGxibWxsYm5SZmFHVmhaR1Z5Y3dBaUlXeHNhSFIwY0Y5elpYUmZiR1Z1YVdWdWRGOWphSFZ1YTJWa1gyeGxibWQwYUFBakhXeHNhSFIwY0Y5elpYUmZiR1Z1YVdWdWRGOXJaV1Z3WDJGc2FYWmxBQ1FrYkd4b2RIUndYM05sZEY5c1pXNXBaVzUwWDNSeVlXNXpabVZ5WDJWdVkyOWthVzVuQUNVWWJHeG9kSFJ3WDIxbGMzTmhaMlZmYm1WbFpITmZaVzltQUQ4SkZ3RUFRUUVMRVFFQ0F3UUZDd1lITlRrM01TOHRKeXNwQ3NMZ0FrVUNBQXNJQUJDSWdJQ0FBQXNaQUNBQUVNS0FnSUFBR2lBQUlBSTJBamdnQUNBQk9nQW9DeHdBSUFBZ0FDOEJNaUFBTFFBdUlBQVF3WUNBZ0FBUWdJQ0FnQUFMS2dFQmYwSEFBQkRHZ0lDQUFDSUJFTUtBZ0lBQUdpQUJRWUNJZ0lBQU5nSTRJQUVnQURvQUtDQUJDd29BSUFBUXlJQ0FnQUFMQndBZ0FDMEFLQXNIQUNBQUxRQXFDd2NBSUFBdEFDc0xCd0FnQUMwQUtRc0hBQ0FBTHdFeUN3Y0FJQUF0QUM0TFJRRUVmeUFBS0FJWUlRRWdBQzBBTFNFQ0lBQXRBQ2doQXlBQUtBSTRJUVFnQUJEQ2dJQ0FBQm9nQUNBRU5nSTRJQUFnQXpvQUtDQUFJQUk2QUMwZ0FDQUJOZ0lZQ3hFQUlBQWdBU0FCSUFKcUVNT0FnSUFBQ3hBQUlBQkJBRUhjQUJETWdJQ0FBQm9MWndFQmYwRUFJUUVDUUNBQUtBSU1EUUFDUUFKQUFrQUNRQ0FBTFFBdkRnTUJBQU1DQ3lBQUtBSTRJZ0ZGRFFBZ0FTZ0NMQ0lCUlEwQUlBQWdBUkdBZ0lDQUFBQWlBUTBEQzBFQUR3c1F5b0NBZ0FBQUN5QUFRY09XZ0lBQU5nSVFRUTRoQVFzZ0FRc2VBQUpBSUFBb0Fnd05BQ0FBUWRHYmdJQUFOZ0lRSUFCQkZUWUNEQXNMRmdBQ1FDQUFLQUlNUVJWSERRQWdBRUVBTmdJTUN3c1dBQUpBSUFBb0FneEJGa2NOQUNBQVFRQTJBZ3dMQ3djQUlBQW9BZ3dMQndBZ0FDZ0NFQXNKQUNBQUlBRTJBaEFMQndBZ0FDZ0NGQXNpQUFKQUlBQkJKRWtOQUJES2dJQ0FBQUFMSUFCQkFuUkJvTE9BZ0FCcUtBSUFDeUlBQWtBZ0FFRXVTUTBBRU1xQWdJQUFBQXNnQUVFQ2RFR3d0SUNBQUdvb0FnQUw3Z3NCQVg5QjY2aUFnQUFoQVFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUlBQkJuSDlxRHZRRFkySUFBV0ZoWVdGaFlRSURCQVZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaEJnY0lDUW9MREEwT0QyRmhZV0ZoRUdGaFlXRmhZV0ZoWVdGaEVXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlSSVRGQlVXRnhnWkdodGhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhIQjBlSHlBaElpTWtKU1luS0NrcUt5d3RMaTh3TVRJek5EVTJZVGM0T1RwaFlXRmhZV0ZoWVR0aFlXRThZV0ZoWVQwK1AyRmhZV0ZoWVdGaFFHRmhRV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVVKRFJFVkdSMGhKU2t0TVRVNVBVRkZTVTJGaFlXRmhZV0ZoVkZWV1YxaFpXbHRoWEYxaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmVZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhYMkJoQzBIaHA0Q0FBQThMUWFTaGdJQUFEd3RCeTZ5QWdBQVBDMEgrc1lDQUFBOExRY0NrZ0lBQUR3dEJxNlNBZ0FBUEMwR05xSUNBQUE4TFFlS21nSUFBRHd0QmdMQ0FnQUFQQzBHNXI0Q0FBQThMUWRla2dJQUFEd3RCNzUrQWdBQVBDMEhobjRDQUFBOExRZnFmZ0lBQUR3dEI4cUNBZ0FBUEMwR29yNENBQUE4TFFhNnlnSUFBRHd0QmlMQ0FnQUFQQzBIc3A0Q0FBQThMUVlLaWdJQUFEd3RCanAyQWdBQVBDMEhRcm9DQUFBOExRY3FqZ0lBQUR3dEJ4YktBZ0FBUEMwSGZuSUNBQUE4TFFkS2NnSUFBRHd0QnhLQ0FnQUFQQzBIWG9JQ0FBQThMUWFLZmdJQUFEd3RCN2E2QWdBQVBDMEdyc0lDQUFBOExRZFNsZ0lBQUR3dEJ6SzZBZ0FBUEMwSDZyb0NBQUE4TFFmeXJnSUFBRHd0QjByQ0FnQUFQQzBIeG5ZQ0FBQThMUWJ1Z2dJQUFEd3RCOTZ1QWdBQVBDMEdRc1lDQUFBOExRZGV4Z0lBQUR3dEJvcTJBZ0FBUEMwSFVwNENBQUE4TFFlQ3JnSUFBRHd0Qm42eUFnQUFQQzBIcnNZQ0FBQThMUWRXZmdJQUFEd3RCeXJHQWdBQVBDMEhlcFlDQUFBOExRZFNlZ0lBQUR3dEI5SnlBZ0FBUEMwR25zb0NBQUE4TFFiR2RnSUFBRHd0Qm9KMkFnQUFQQzBHNXNZQ0FBQThMUWJ5d2dJQUFEd3RCa3FHQWdBQVBDMEd6cG9DQUFBOExRZW1zZ0lBQUR3dEJySjZBZ0FBUEMwSFVxNENBQUE4TFFmZW1nSUFBRHd0QmdLYUFnQUFQQzBHd29ZQ0FBQThMUWY2ZWdJQUFEd3RCamFPQWdBQVBDMEdKcllDQUFBOExRZmVpZ0lBQUR3dEJvTEdBZ0FBUEMwR3VuNENBQUE4TFFjYWxnSUFBRHd0QjZKNkFnQUFQQzBHVG9vQ0FBQThMUWNLdmdJQUFEd3RCdzUyQWdBQVBDMEdMcklDQUFBOExRZUdkZ0lBQUR3dEJqYStBZ0FBUEMwSHFvWUNBQUE4TFFiU3RnSUFBRHd0QjBxK0FnQUFQQzBIZnNvQ0FBQThMUWRLeWdJQUFEd3RCOExDQWdBQVBDMEdwb29DQUFBOExRZm1qZ0lBQUR3dEJtWjZBZ0FBUEMwRzFySUNBQUE4TFFadXdnSUFBRHd0QmtyS0FnQUFQQzBHMnE0Q0FBQThMUWNLaWdJQUFEd3RCK0xLQWdBQVBDMEdlcFlDQUFBOExRZENpZ0lBQUR3dEJ1cDZBZ0FBUEMwR0Jub0NBQUE4TEVNcUFnSUFBQUF0QjFxR0FnQUFoQVFzZ0FRc1dBQ0FBSUFBdEFDMUIvZ0Z4SUFGQkFFZHlPZ0F0Q3hrQUlBQWdBQzBBTFVIOUFYRWdBVUVBUjBFQmRISTZBQzBMR1FBZ0FDQUFMUUF0UWZzQmNTQUJRUUJIUVFKMGNqb0FMUXNaQUNBQUlBQXRBQzFCOXdGeElBRkJBRWRCQTNSeU9nQXRDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FnQWlCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MU1FFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NCQ0lFUlEwQUlBQWdBU0FDSUFGcklBUVJnWUNBZ0FBQUlnTkJmMGNOQUNBQVFjYVJnSUFBTmdJUVFSZ2hBd3NnQXdzdUFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUl3SWdSRkRRQWdBQ0FFRVlDQWdJQUFBQ0VEQ3lBREMwa0JBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWdnaUJFVU5BQ0FBSUFFZ0FpQUJheUFFRVlHQWdJQUFBQ0lEUVg5SERRQWdBRUgyaW9DQUFEWUNFRUVZSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ05DSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3RKQVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSU1JZ1JGRFFBZ0FDQUJJQUlnQVdzZ0JCR0JnSUNBQUFBaUEwRi9SdzBBSUFCQjdacUFnQUEyQWhCQkdDRURDeUFEQ3k0QkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BamdpQkVVTkFDQUFJQVFSZ0lDQWdBQUFJUU1MSUFNTFNRRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDRUNJRVJRMEFJQUFnQVNBQ0lBRnJJQVFSZ1lDQWdBQUFJZ05CZjBjTkFDQUFRWldRZ0lBQU5nSVFRUmdoQXdzZ0F3c3VBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJOElnUkZEUUFnQUNBRUVZQ0FnSUFBQUNFREN5QURDMGtCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FoUWlCRVVOQUNBQUlBRWdBaUFCYXlBRUVZR0FnSUFBQUNJRFFYOUhEUUFnQUVHcW00Q0FBRFlDRUVFWUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NRQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXd0SkFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUlZSWdSRkRRQWdBQ0FCSUFJZ0FXc2dCQkdCZ0lDQUFBQWlBMEYvUncwQUlBQkI3Wk9BZ0FBMkFoQkJHQ0VEQ3lBREN5NEJBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWtRaUJFVU5BQ0FBSUFRUmdJQ0FnQUFBSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ0pDSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3N1QVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSXNJZ1JGRFFBZ0FDQUVFWUNBZ0lBQUFDRURDeUFEQzBrQkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BaWdpQkVVTkFDQUFJQUVnQWlBQmF5QUVFWUdBZ0lBQUFDSURRWDlIRFFBZ0FFSDJpSUNBQURZQ0VFRVlJUU1MSUFNTExnRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDVUNJRVJRMEFJQUFnQkJHQWdJQ0FBQUFoQXdzZ0F3dEpBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJY0lnUkZEUUFnQUNBQklBSWdBV3NnQkJHQmdJQ0FBQUFpQTBGL1J3MEFJQUJCd3BtQWdBQTJBaEJCR0NFREN5QURDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FrZ2lCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MU1FFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NJQ0lFUlEwQUlBQWdBU0FDSUFGcklBUVJnWUNBZ0FBQUlnTkJmMGNOQUNBQVFaU1VnSUFBTmdJUVFSZ2hBd3NnQXdzdUFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUpNSWdSRkRRQWdBQ0FFRVlDQWdJQUFBQ0VEQ3lBREN5NEJBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWxRaUJFVU5BQ0FBSUFRUmdJQ0FnQUFBSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ1dDSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3RGQVFGL0FrQUNRQ0FBTHdFd1FSUnhRUlJIRFFCQkFTRURJQUF0QUNoQkFVWU5BU0FBTHdFeVFlVUFSaUVEREFFTElBQXRBQ2xCQlVZaEF3c2dBQ0FET2dBdVFRQUwvZ0VCQTM5QkFTRURBa0FnQUM4Qk1DSUVRUWh4RFFBZ0FDa0RJRUlBVWlFREN3SkFBa0FnQUMwQUxrVU5BRUVCSVFVZ0FDMEFLVUVGUmcwQlFRRWhCU0FFUWNBQWNVVWdBM0ZCQVVjTkFRdEJBQ0VGSUFSQndBQnhEUUJCQWlFRklBUkIvLzhEY1NJRFFRaHhEUUFDUUNBRFFZQUVjVVVOQUFKQUlBQXRBQ2hCQVVjTkFDQUFMUUF0UVFweERRQkJCUThMUVFRUEN3SkFJQU5CSUhFTkFBSkFJQUF0QUNoQkFVWU5BQ0FBTHdFeVFmLy9BM0VpQUVHY2YycEI1QUJKRFFBZ0FFSE1BVVlOQUNBQVFiQUNSZzBBUVFRaEJTQUVRU2h4UlEwQ0lBTkJpQVJ4UVlBRVJnMENDMEVBRHd0QkFFRURJQUFwQXlCUUd5RUZDeUFGQzJJQkFuOUJBQ0VCQWtBZ0FDMEFLRUVCUmcwQUlBQXZBVEpCLy84RGNTSUNRWngvYWtIa0FFa05BQ0FDUWN3QlJnMEFJQUpCc0FKR0RRQWdBQzhCTUNJQVFjQUFjUTBBUVFFaEFTQUFRWWdFY1VHQUJFWU5BQ0FBUVNoeFJTRUJDeUFCQzZjQkFRTi9Ba0FDUUFKQUlBQXRBQ3BGRFFBZ0FDMEFLMFVOQUVFQUlRTWdBQzhCTUNJRVFRSnhSUTBCREFJTFFRQWhBeUFBTHdFd0lnUkJBWEZGRFFFTFFRRWhBeUFBTFFBb1FRRkdEUUFnQUM4Qk1rSC8vd054SWdWQm5IOXFRZVFBU1EwQUlBVkJ6QUZHRFFBZ0JVR3dBa1lOQUNBRVFjQUFjUTBBUVFBaEF5QUVRWWdFY1VHQUJFWU5BQ0FFUVNoeFFRQkhJUU1MSUFCQkFEc0JNQ0FBUVFBNkFDOGdBd3VaQVFFQ2Z3SkFBa0FDUUNBQUxRQXFSUTBBSUFBdEFDdEZEUUJCQUNFQklBQXZBVEFpQWtFQ2NVVU5BUXdDQzBFQUlRRWdBQzhCTUNJQ1FRRnhSUTBCQzBFQklRRWdBQzBBS0VFQlJnMEFJQUF2QVRKQi8vOERjU0lBUVp4L2FrSGtBRWtOQUNBQVFjd0JSZzBBSUFCQnNBSkdEUUFnQWtIQUFIRU5BRUVBSVFFZ0FrR0lCSEZCZ0FSR0RRQWdBa0VvY1VFQVJ5RUJDeUFCQzFrQUlBQkJHR3BDQURjREFDQUFRZ0EzQXdBZ0FFRTRha0lBTndNQUlBQkJNR3BDQURjREFDQUFRU2hxUWdBM0F3QWdBRUVnYWtJQU53TUFJQUJCRUdwQ0FEY0RBQ0FBUVFocVFnQTNBd0FnQUVIZEFUWUNIRUVBQzNzQkFYOENRQ0FBS0FJTUlnTU5BQUpBSUFBb0FnUkZEUUFnQUNBQk5nSUVDd0pBSUFBZ0FTQUNFTVNBZ0lBQUlnTU5BQ0FBS0FJTUR3c2dBQ0FETmdJY1FRQWhBeUFBS0FJRUlnRkZEUUFnQUNBQklBSWdBQ2dDQ0JHQmdJQ0FBQUFpQVVVTkFDQUFJQUkyQWhRZ0FDQUJOZ0lNSUFFaEF3c2dBd3ZrOHdFRERuOERmZ1IvSTRDQWdJQUFRUkJySWdNa2dJQ0FnQUFnQVNFRUlBRWhCU0FCSVFZZ0FTRUhJQUVoQ0NBQklRa2dBU0VLSUFFaEN5QUJJUXdnQVNFTklBRWhEaUFCSVE4Q1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBZ0FDZ0NIQ0lRUVg5cUR0MEIyZ0VCMlFFQ0F3UUZCZ2NJQ1FvTERBME8yQUVQRU5jQkVSTFdBUk1VRlJZWEdCa2FHK0FCM3dFY0hSN1ZBUjhnSVNJakpDWFVBU1luS0NrcUt5elRBZElCTFM3UkFkQUJMekF4TWpNME5UWTNPRGs2T3p3OVBqOUFRVUpEUkVWRzJ3RkhTRWxLendIT0FVdk5BVXpNQVUxT1QxQlJVbE5VVlZaWFdGbGFXMXhkWGw5Z1lXSmpaR1ZtWjJocGFtdHNiVzV2Y0hGeWMzUjFkbmQ0ZVhwN2ZIMStmNEFCZ1FHQ0FZTUJoQUdGQVlZQmh3R0lBWWtCaWdHTEFZd0JqUUdPQVk4QmtBR1JBWklCa3dHVUFaVUJsZ0dYQVpnQm1RR2FBWnNCbkFHZEFaNEJud0dnQWFFQm9nR2pBYVFCcFFHbUFhY0JxQUdwQWFvQnF3R3NBYTBCcmdHdkFiQUJzUUd5QWJNQnRBRzFBYllCdHdITEFjb0J1QUhKQWJrQnlBRzZBYnNCdkFHOUFiNEJ2d0hBQWNFQndnSERBY1FCeFFIR0FRRGNBUXRCQUNFUURNWUJDMEVPSVJBTXhRRUxRUTBoRUF6RUFRdEJEeUVRRE1NQkMwRVFJUkFNd2dFTFFSTWhFQXpCQVF0QkZDRVFETUFCQzBFVklSQU12d0VMUVJZaEVBeStBUXRCRnlFUURMMEJDMEVZSVJBTXZBRUxRUmtoRUF5N0FRdEJHaUVRRExvQkMwRWJJUkFNdVFFTFFSd2hFQXk0QVF0QkNDRVFETGNCQzBFZElSQU10Z0VMUVNBaEVBeTFBUXRCSHlFUURMUUJDMEVISVJBTXN3RUxRU0VoRUF5eUFRdEJJaUVRRExFQkMwRWVJUkFNc0FFTFFTTWhFQXl2QVF0QkVpRVFESzRCQzBFUklSQU1yUUVMUVNRaEVBeXNBUXRCSlNFUURLc0JDMEVtSVJBTXFnRUxRU2NoRUF5cEFRdEJ3d0VoRUF5b0FRdEJLU0VRREtjQkMwRXJJUkFNcGdFTFFTd2hFQXlsQVF0QkxTRVFES1FCQzBFdUlSQU1vd0VMUVM4aEVBeWlBUXRCeEFFaEVBeWhBUXRCTUNFUURLQUJDMEUwSVJBTW53RUxRUXdoRUF5ZUFRdEJNU0VRREowQkMwRXlJUkFNbkFFTFFUTWhFQXliQVF0Qk9TRVFESm9CQzBFMUlSQU1tUUVMUWNVQklSQU1tQUVMUVFzaEVBeVhBUXRCT2lFUURKWUJDMEUySVJBTWxRRUxRUW9oRUF5VUFRdEJOeUVRREpNQkMwRTRJUkFNa2dFTFFUd2hFQXlSQVF0Qk95RVFESkFCQzBFOUlSQU1qd0VMUVFraEVBeU9BUXRCS0NFUURJMEJDMEUrSVJBTWpBRUxRVDhoRUF5TEFRdEJ3QUFoRUF5S0FRdEJ3UUFoRUF5SkFRdEJ3Z0FoRUF5SUFRdEJ3d0FoRUF5SEFRdEJ4QUFoRUF5R0FRdEJ4UUFoRUF5RkFRdEJ4Z0FoRUF5RUFRdEJLaUVRRElNQkMwSEhBQ0VRRElJQkMwSElBQ0VRRElFQkMwSEpBQ0VRRElBQkMwSEtBQ0VRREg4TFFjc0FJUkFNZmd0QnpRQWhFQXg5QzBITUFDRVFESHdMUWM0QUlSQU1ld3RCendBaEVBeDZDMEhRQUNFUURIa0xRZEVBSVJBTWVBdEIwZ0FoRUF4M0MwSFRBQ0VRREhZTFFkUUFJUkFNZFF0QjFnQWhFQXgwQzBIVkFDRVFESE1MUVFZaEVBeHlDMEhYQUNFUURIRUxRUVVoRUF4d0MwSFlBQ0VRREc4TFFRUWhFQXh1QzBIWkFDRVFERzBMUWRvQUlSQU1iQXRCMndBaEVBeHJDMEhjQUNFUURHb0xRUU1oRUF4cEMwSGRBQ0VRREdnTFFkNEFJUkFNWnd0QjN3QWhFQXhtQzBIaEFDRVFER1VMUWVBQUlSQU1aQXRCNGdBaEVBeGpDMEhqQUNFUURHSUxRUUloRUF4aEMwSGtBQ0VRREdBTFFlVUFJUkFNWHd0QjVnQWhFQXhlQzBIbkFDRVFERjBMUWVnQUlSQU1YQXRCNlFBaEVBeGJDMEhxQUNFUURGb0xRZXNBSVJBTVdRdEI3QUFoRUF4WUMwSHRBQ0VRREZjTFFlNEFJUkFNVmd0Qjd3QWhFQXhWQzBId0FDRVFERlFMUWZFQUlSQU1Vd3RCOGdBaEVBeFNDMEh6QUNFUURGRUxRZlFBSVJBTVVBdEI5UUFoRUF4UEMwSDJBQ0VRREU0TFFmY0FJUkFNVFF0QitBQWhFQXhNQzBINUFDRVFERXNMUWZvQUlSQU1TZ3RCK3dBaEVBeEpDMEg4QUNFUURFZ0xRZjBBSVJBTVJ3dEIvZ0FoRUF4R0MwSC9BQ0VRREVVTFFZQUJJUkFNUkF0QmdRRWhFQXhEQzBHQ0FTRVFERUlMUVlNQklSQU1RUXRCaEFFaEVBeEFDMEdGQVNFUUREOExRWVlCSVJBTVBndEJod0VoRUF3OUMwR0lBU0VRRER3TFFZa0JJUkFNT3d0QmlnRWhFQXc2QzBHTEFTRVFERGtMUVl3QklSQU1PQXRCalFFaEVBdzNDMEdPQVNFUUREWUxRWThCSVJBTU5RdEJrQUVoRUF3MEMwR1JBU0VRRERNTFFaSUJJUkFNTWd0Qmt3RWhFQXd4QzBHVUFTRVFEREFMUVpVQklSQU1Md3RCbGdFaEVBd3VDMEdYQVNFUURDMExRWmdCSVJBTUxBdEJtUUVoRUF3ckMwR2FBU0VRRENvTFFac0JJUkFNS1F0Qm5BRWhFQXdvQzBHZEFTRVFEQ2NMUVo0QklSQU1KZ3RCbndFaEVBd2xDMEdnQVNFUURDUUxRYUVCSVJBTUl3dEJvZ0VoRUF3aUMwR2pBU0VRRENFTFFhUUJJUkFNSUF0QnBRRWhFQXdmQzBHbUFTRVFEQjRMUWFjQklSQU1IUXRCcUFFaEVBd2NDMEdwQVNFUURCc0xRYW9CSVJBTUdndEJxd0VoRUF3WkMwR3NBU0VRREJnTFFhMEJJUkFNRnd0QnJnRWhFQXdXQzBFQklSQU1GUXRCcndFaEVBd1VDMEd3QVNFUURCTUxRYkVCSVJBTUVndEJzd0VoRUF3UkMwR3lBU0VRREJBTFFiUUJJUkFNRHd0QnRRRWhFQXdPQzBHMkFTRVFEQTBMUWJjQklSQU1EQXRCdUFFaEVBd0xDMEc1QVNFUURBb0xRYm9CSVJBTUNRdEJ1d0VoRUF3SUMwSEdBU0VRREFjTFFid0JJUkFNQmd0QnZRRWhFQXdGQzBHK0FTRVFEQVFMUWI4QklSQU1Bd3RCd0FFaEVBd0NDMEhDQVNFUURBRUxRY0VCSVJBTEEwQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQ0FRRHNjQkFBRUNBd1FGQmdjSUNRb0xEQTBPRHhBUkVoTVVGUllYR0JrYUd4d2VIeUFoSXlVb1AwQkJSRVZHUjBoSlNrdE1UVTlRVVZKVDNnTlhXVnRjWFdCaVpXWm5hR2xxYTJ4dGIzQnhjbk4wZFhaM2VIbDZlM3g5Zm9BQmdnR0ZBWVlCaHdHSkFZc0JqQUdOQVk0Qmp3R1FBWkVCbEFHVkFaWUJsd0dZQVprQm1nR2JBWndCblFHZUFaOEJvQUdoQWFJQm93R2tBYVVCcGdHbkFhZ0JxUUdxQWFzQnJBR3RBYTRCcndHd0FiRUJzZ0d6QWJRQnRRRzJBYmNCdUFHNUFib0J1d0c4QWIwQnZnRy9BY0FCd1FIQ0FjTUJ4QUhGQWNZQnh3SElBY2tCeWdITEFjd0J6UUhPQWM4QjBBSFJBZElCMHdIVUFkVUIxZ0hYQWRnQjJRSGFBZHNCM0FIZEFkNEI0QUhoQWVJQjR3SGtBZVVCNWdIbkFlZ0I2UUhxQWVzQjdBSHRBZTRCN3dId0FmRUI4Z0h6QVprQ3BBS3dBdjRDL2dJTElBRWlCQ0FDUnczekFVSGRBU0VRRFA4REN5QUJJaEFnQWtjTjNRRkJ3d0VoRUF6K0F3c2dBU0lCSUFKSERaQUJRZmNBSVJBTS9RTUxJQUVpQVNBQ1J3MkdBVUh2QUNFUURQd0RDeUFCSWdFZ0FrY05mMEhxQUNFUURQc0RDeUFCSWdFZ0FrY05lMEhvQUNFUURQb0RDeUFCSWdFZ0FrY05lRUhtQUNFUURQa0RDeUFCSWdFZ0FrY05Ha0VZSVJBTStBTUxJQUVpQVNBQ1J3MFVRUkloRUF6M0F3c2dBU0lCSUFKSERWbEJ4UUFoRUF6MkF3c2dBU0lCSUFKSERVcEJQeUVRRFBVREN5QUJJZ0VnQWtjTlNFRThJUkFNOUFNTElBRWlBU0FDUncxQlFURWhFQXp6QXdzZ0FDMEFMa0VCUmczckF3eUhBZ3NnQUNBQklnRWdBaERBZ0lDQUFFRUJSdzNtQVNBQVFnQTNBeUFNNXdFTElBQWdBU0lCSUFJUXRJQ0FnQUFpRUEzbkFTQUJJUUVNOVFJTEFrQWdBU0lCSUFKSERRQkJCaUVRRFBBREN5QUFJQUZCQVdvaUFTQUNFTHVBZ0lBQUloQU42QUVnQVNFQkRERUxJQUJDQURjRElFRVNJUkFNMVFNTElBRWlFQ0FDUncwclFSMGhFQXp0QXdzQ1FDQUJJZ0VnQWtZTkFDQUJRUUZxSVFGQkVDRVFETlFEQzBFSElSQU03QU1MSUFCQ0FDQUFLUU1nSWhFZ0FpQUJJaEJyclNJU2ZTSVRJQk1nRVZZYk53TWdJQkVnRWxZaUZFVU41UUZCQ0NFUURPc0RDd0pBSUFFaUFTQUNSZzBBSUFCQmlZQ0FnQUEyQWdnZ0FDQUJOZ0lFSUFFaEFVRVVJUkFNMGdNTFFRa2hFQXpxQXdzZ0FTRUJJQUFwQXlCUURlUUJJQUVoQVF6eUFnc0NRQ0FCSWdFZ0FrY05BRUVMSVJBTTZRTUxJQUFnQVVFQmFpSUJJQUlRdG9DQWdBQWlFQTNsQVNBQklRRU04Z0lMSUFBZ0FTSUJJQUlRdUlDQWdBQWlFQTNsQVNBQklRRU04Z0lMSUFBZ0FTSUJJQUlRdUlDQWdBQWlFQTNtQVNBQklRRU1EUXNnQUNBQklnRWdBaEM2Z0lDQUFDSVFEZWNCSUFFaEFRendBZ3NDUUNBQklnRWdBa2NOQUVFUElSQU01UU1MSUFFdEFBQWlFRUU3UmcwSUlCQkJEVWNONkFFZ0FVRUJhaUVCRE84Q0N5QUFJQUVpQVNBQ0VMcUFnSUFBSWhBTjZBRWdBU0VCRFBJQ0N3TkFBa0FnQVMwQUFFSHd0WUNBQUdvdEFBQWlFRUVCUmcwQUlCQkJBa2NONndFZ0FDZ0NCQ0VRSUFCQkFEWUNCQ0FBSUJBZ0FVRUJhaUlCRUxtQWdJQUFJaEFONmdFZ0FTRUJEUFFDQ3lBQlFRRnFJZ0VnQWtjTkFBdEJFaUVRRE9JREN5QUFJQUVpQVNBQ0VMcUFnSUFBSWhBTjZRRWdBU0VCREFvTElBRWlBU0FDUncwR1FSc2hFQXpnQXdzQ1FDQUJJZ0VnQWtjTkFFRVdJUkFNNEFNTElBQkJpb0NBZ0FBMkFnZ2dBQ0FCTmdJRUlBQWdBU0FDRUxpQWdJQUFJaEFONmdFZ0FTRUJRU0FoRUF6R0F3c0NRQ0FCSWdFZ0FrWU5BQU5BQWtBZ0FTMEFBRUh3dDRDQUFHb3RBQUFpRUVFQ1JnMEFBa0FnRUVGL2FnNEU1UUhzQVFEckFld0JDeUFCUVFGcUlRRkJDQ0VRRE1nREN5QUJRUUZxSWdFZ0FrY05BQXRCRlNFUUROOERDMEVWSVJBTTNnTUxBMEFDUUNBQkxRQUFRZkM1Z0lBQWFpMEFBQ0lRUVFKR0RRQWdFRUYvYWc0RTNnSHNBZUFCNndIc0FRc2dBVUVCYWlJQklBSkhEUUFMUVJnaEVBemRBd3NDUUNBQklnRWdBa1lOQUNBQVFZdUFnSUFBTmdJSUlBQWdBVFlDQkNBQklRRkJCeUVRRE1RREMwRVpJUkFNM0FNTElBRkJBV29oQVF3Q0N3SkFJQUVpRkNBQ1J3MEFRUm9oRUF6YkF3c2dGQ0VCQWtBZ0ZDMEFBRUZ6YWc0VTNRTHVBdTRDN2dMdUF1NEM3Z0x1QXU0QzdnTHVBdTRDN2dMdUF1NEM3Z0x1QXU0QzdnSUE3Z0lMUVFBaEVDQUFRUUEyQWh3Z0FFR3ZpNENBQURZQ0VDQUFRUUkyQWd3Z0FDQVVRUUZxTmdJVUROb0RDd0pBSUFFdEFBQWlFRUU3UmcwQUlCQkJEVWNONkFFZ0FVRUJhaUVCRE9VQ0N5QUJRUUZxSVFFTFFTSWhFQXkvQXdzQ1FDQUJJaEFnQWtjTkFFRWNJUkFNMkFNTFFnQWhFU0FRSVFFZ0VDMEFBRUZRYWc0MzV3SG1BUUVDQXdRRkJnY0lBQUFBQUFBQUFBa0tDd3dORGdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRHhBUkVoTVVBQXRCSGlFUURMMERDMElDSVJFTTVRRUxRZ01oRVF6a0FRdENCQ0VSRE9NQkMwSUZJUkVNNGdFTFFnWWhFUXpoQVF0Q0J5RVJET0FCQzBJSUlSRU0zd0VMUWdraEVRemVBUXRDQ2lFUkROMEJDMElMSVJFTTNBRUxRZ3doRVF6YkFRdENEU0VSRE5vQkMwSU9JUkVNMlFFTFFnOGhFUXpZQVF0Q0NpRVJETmNCQzBJTElSRU0xZ0VMUWd3aEVRelZBUXRDRFNFUkROUUJDMElPSVJFTTB3RUxRZzhoRVF6U0FRdENBQ0VSQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FDQVFMUUFBUVZCcURqZmxBZVFCQUFFQ0F3UUZCZ2ZtQWVZQjVnSG1BZVlCNWdIbUFRZ0pDZ3NNRGVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0VPRHhBUkVoUG1BUXRDQWlFUkRPUUJDMElESVJFTTR3RUxRZ1FoRVF6aUFRdENCU0VSRE9FQkMwSUdJUkVNNEFFTFFnY2hFUXpmQVF0Q0NDRVJETjRCQzBJSklSRU0zUUVMUWdvaEVRemNBUXRDQ3lFUkROc0JDMElNSVJFTTJnRUxRZzBoRVF6WkFRdENEaUVSRE5nQkMwSVBJUkVNMXdFTFFnb2hFUXpXQVF0Q0N5RVJETlVCQzBJTUlSRU0xQUVMUWcwaEVRelRBUXRDRGlFUkROSUJDMElQSVJFTTBRRUxJQUJDQUNBQUtRTWdJaEVnQWlBQkloQnJyU0lTZlNJVElCTWdFVlliTndNZ0lCRWdFbFlpRkVVTjBnRkJIeUVRRE1BREN3SkFJQUVpQVNBQ1JnMEFJQUJCaVlDQWdBQTJBZ2dnQUNBQk5nSUVJQUVoQVVFa0lSQU1wd01MUVNBaEVBeS9Bd3NnQUNBQkloQWdBaEMrZ0lDQUFFRi9hZzRGdGdFQXhRSUIwUUhTQVF0QkVTRVFES1FEQ3lBQVFRRTZBQzhnRUNFQkRMc0RDeUFCSWdFZ0FrY04wZ0ZCSkNFUURMc0RDeUFCSWcwZ0FrY05Ia0hHQUNFUURMb0RDeUFBSUFFaUFTQUNFTEtBZ0lBQUloQU4xQUVnQVNFQkRMVUJDeUFCSWhBZ0FrY05Ka0hRQUNFUURMZ0RDd0pBSUFFaUFTQUNSdzBBUVNnaEVBeTRBd3NnQUVFQU5nSUVJQUJCaklDQWdBQTJBZ2dnQUNBQklBRVFzWUNBZ0FBaUVBM1RBU0FCSVFFTTJBRUxBa0FnQVNJUUlBSkhEUUJCS1NFUURMY0RDeUFRTFFBQUlnRkJJRVlORkNBQlFRbEhEZE1CSUJCQkFXb2hBUXdWQ3dKQUlBRWlBU0FDUmcwQUlBRkJBV29oQVF3WEMwRXFJUkFNdFFNTEFrQWdBU0lRSUFKSERRQkJLeUVRRExVREN3SkFJQkF0QUFBaUFVRUpSZzBBSUFGQklFY04xUUVMSUFBdEFDeEJDRVlOMHdFZ0VDRUJESkVEQ3dKQUlBRWlBU0FDUncwQVFTd2hFQXkwQXdzZ0FTMEFBRUVLUnczVkFTQUJRUUZxSVFFTXlRSUxJQUVpRGlBQ1J3M1ZBVUV2SVJBTXNnTUxBMEFDUUNBQkxRQUFJaEJCSUVZTkFBSkFJQkJCZG1vT0JBRGNBZHdCQU5vQkN5QUJJUUVNNEFFTElBRkJBV29pQVNBQ1J3MEFDMEV4SVJBTXNRTUxRVEloRUNBQkloUWdBa1lOc0FNZ0FpQVVheUFBS0FJQUlnRnFJUlVnRkNBQmEwRURhaUVXQWtBRFFDQVVMUUFBSWhkQklISWdGeUFYUWI5L2FrSC9BWEZCR2trYlFmOEJjU0FCUWZDN2dJQUFhaTBBQUVjTkFRSkFJQUZCQTBjTkFFRUdJUUVNbGdNTElBRkJBV29oQVNBVVFRRnFJaFFnQWtjTkFBc2dBQ0FWTmdJQURMRURDeUFBUVFBMkFnQWdGQ0VCRE5rQkMwRXpJUkFnQVNJVUlBSkdEYThESUFJZ0ZHc2dBQ2dDQUNJQmFpRVZJQlFnQVd0QkNHb2hGZ0pBQTBBZ0ZDMEFBQ0lYUVNCeUlCY2dGMEcvZjJwQi93RnhRUnBKRzBIL0FYRWdBVUgwdTRDQUFHb3RBQUJIRFFFQ1FDQUJRUWhIRFFCQkJTRUJESlVEQ3lBQlFRRnFJUUVnRkVFQmFpSVVJQUpIRFFBTElBQWdGVFlDQUF5d0F3c2dBRUVBTmdJQUlCUWhBUXpZQVF0Qk5DRVFJQUVpRkNBQ1JnMnVBeUFDSUJScklBQW9BZ0FpQVdvaEZTQVVJQUZyUVFWcUlSWUNRQU5BSUJRdEFBQWlGMEVnY2lBWElCZEJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkIwTUtBZ0FCcUxRQUFSdzBCQWtBZ0FVRUZSdzBBUVFjaEFReVVBd3NnQVVFQmFpRUJJQlJCQVdvaUZDQUNSdzBBQ3lBQUlCVTJBZ0FNcndNTElBQkJBRFlDQUNBVUlRRU0xd0VMQWtBZ0FTSUJJQUpHRFFBRFFBSkFJQUV0QUFCQmdMNkFnQUJxTFFBQUloQkJBVVlOQUNBUVFRSkdEUW9nQVNFQkROMEJDeUFCUVFGcUlnRWdBa2NOQUF0Qk1DRVFESzREQzBFd0lSQU1yUU1MQWtBZ0FTSUJJQUpHRFFBRFFBSkFJQUV0QUFBaUVFRWdSZzBBSUJCQmRtb09CTmtCMmdIYUFka0IyZ0VMSUFGQkFXb2lBU0FDUncwQUMwRTRJUkFNclFNTFFUZ2hFQXlzQXdzRFFBSkFJQUV0QUFBaUVFRWdSZzBBSUJCQkNVY05Bd3NnQVVFQmFpSUJJQUpIRFFBTFFUd2hFQXlyQXdzRFFBSkFJQUV0QUFBaUVFRWdSZzBBQWtBQ1FDQVFRWFpxRGdUYUFRRUIyZ0VBQ3lBUVFTeEdEZHNCQ3lBQklRRU1CQXNnQVVFQmFpSUJJQUpIRFFBTFFUOGhFQXlxQXdzZ0FTRUJETnNCQzBIQUFDRVFJQUVpRkNBQ1JnMm9BeUFDSUJScklBQW9BZ0FpQVdvaEZpQVVJQUZyUVFacUlSY0NRQU5BSUJRdEFBQkJJSElnQVVHQXdJQ0FBR290QUFCSERRRWdBVUVHUmcyT0F5QUJRUUZxSVFFZ0ZFRUJhaUlVSUFKSERRQUxJQUFnRmpZQ0FBeXBBd3NnQUVFQU5nSUFJQlFoQVF0Qk5pRVFESTREQ3dKQUlBRWlEeUFDUncwQVFjRUFJUkFNcHdNTElBQkJqSUNBZ0FBMkFnZ2dBQ0FQTmdJRUlBOGhBU0FBTFFBc1FYOXFEZ1ROQWRVQjF3SFpBWWNEQ3lBQlFRRnFJUUVNekFFTEFrQWdBU0lCSUFKR0RRQURRQUpBSUFFdEFBQWlFRUVnY2lBUUlCQkJ2MzlxUWY4QmNVRWFTUnRCL3dGeEloQkJDVVlOQUNBUVFTQkdEUUFDUUFKQUFrQUNRQ0FRUVoxL2FnNFRBQU1EQXdNREF3TUJBd01EQXdNREF3TURBZ01MSUFGQkFXb2hBVUV4SVJBTWtRTUxJQUZCQVdvaEFVRXlJUkFNa0FNTElBRkJBV29oQVVFeklSQU1qd01MSUFFaEFRelFBUXNnQVVFQmFpSUJJQUpIRFFBTFFUVWhFQXlsQXd0Qk5TRVFES1FEQ3dKQUlBRWlBU0FDUmcwQUEwQUNRQ0FCTFFBQVFZQzhnSUFBYWkwQUFFRUJSZzBBSUFFaEFRelRBUXNnQVVFQmFpSUJJQUpIRFFBTFFUMGhFQXlrQXd0QlBTRVFES01EQ3lBQUlBRWlBU0FDRUxDQWdJQUFJaEFOMWdFZ0FTRUJEQUVMSUJCQkFXb2hBUXRCUENFUURJY0RDd0pBSUFFaUFTQUNSdzBBUWNJQUlSQU1vQU1MQWtBRFFBSkFJQUV0QUFCQmQyb09HQUFDL2dMK0FvUUQvZ0wrQXY0Qy9nTCtBdjRDL2dMK0F2NEMvZ0wrQXY0Qy9nTCtBdjRDL2dMK0F2NENBUDRDQ3lBQlFRRnFJZ0VnQWtjTkFBdEJ3Z0FoRUF5Z0F3c2dBVUVCYWlFQklBQXRBQzFCQVhGRkRiMEJJQUVoQVF0QkxDRVFESVVEQ3lBQklnRWdBa2NOMHdGQnhBQWhFQXlkQXdzRFFBSkFJQUV0QUFCQmtNQ0FnQUJxTFFBQVFRRkdEUUFnQVNFQkRMY0NDeUFCUVFGcUlnRWdBa2NOQUF0QnhRQWhFQXljQXdzZ0RTMEFBQ0lRUVNCR0RiTUJJQkJCT2tjTmdRTWdBQ2dDQkNFQklBQkJBRFlDQkNBQUlBRWdEUkN2Z0lDQUFDSUJEZEFCSUExQkFXb2hBUXl6QWd0Qnh3QWhFQ0FCSWcwZ0FrWU5tZ01nQWlBTmF5QUFLQUlBSWdGcUlSWWdEU0FCYTBFRmFpRVhBMEFnRFMwQUFDSVVRU0J5SUJRZ0ZFRy9mMnBCL3dGeFFScEpHMEgvQVhFZ0FVR1F3b0NBQUdvdEFBQkhEWUFESUFGQkJVWU45QUlnQVVFQmFpRUJJQTFCQVdvaURTQUNSdzBBQ3lBQUlCWTJBZ0FNbWdNTFFjZ0FJUkFnQVNJTklBSkdEWmtESUFJZ0RXc2dBQ2dDQUNJQmFpRVdJQTBnQVd0QkNXb2hGd05BSUEwdEFBQWlGRUVnY2lBVUlCUkJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkJsc0tBZ0FCcUxRQUFSdzMvQWdKQUlBRkJDVWNOQUVFQ0lRRU05UUlMSUFGQkFXb2hBU0FOUVFGcUlnMGdBa2NOQUFzZ0FDQVdOZ0lBREprREN3SkFJQUVpRFNBQ1J3MEFRY2tBSVJBTW1RTUxBa0FDUUNBTkxRQUFJZ0ZCSUhJZ0FTQUJRYjkvYWtIL0FYRkJHa2tiUWY4QmNVR1NmMm9PQndDQUE0QURnQU9BQTRBREFZQURDeUFOUVFGcUlRRkJQaUVRRElBREN5QU5RUUZxSVFGQlB5RVFEUDhDQzBIS0FDRVFJQUVpRFNBQ1JnMlhBeUFDSUExcklBQW9BZ0FpQVdvaEZpQU5JQUZyUVFGcUlSY0RRQ0FOTFFBQUloUkJJSElnRkNBVVFiOS9ha0gvQVhGQkdra2JRZjhCY1NBQlFhRENnSUFBYWkwQUFFY04vUUlnQVVFQlJnM3dBaUFCUVFGcUlRRWdEVUVCYWlJTklBSkhEUUFMSUFBZ0ZqWUNBQXlYQXd0Qnl3QWhFQ0FCSWcwZ0FrWU5sZ01nQWlBTmF5QUFLQUlBSWdGcUlSWWdEU0FCYTBFT2FpRVhBMEFnRFMwQUFDSVVRU0J5SUJRZ0ZFRy9mMnBCL3dGeFFScEpHMEgvQVhFZ0FVR2l3b0NBQUdvdEFBQkhEZndDSUFGQkRrWU44QUlnQVVFQmFpRUJJQTFCQVdvaURTQUNSdzBBQ3lBQUlCWTJBZ0FNbGdNTFFjd0FJUkFnQVNJTklBSkdEWlVESUFJZ0RXc2dBQ2dDQUNJQmFpRVdJQTBnQVd0QkQyb2hGd05BSUEwdEFBQWlGRUVnY2lBVUlCUkJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkJ3TUtBZ0FCcUxRQUFSdzM3QWdKQUlBRkJEMGNOQUVFRElRRU04UUlMSUFGQkFXb2hBU0FOUVFGcUlnMGdBa2NOQUFzZ0FDQVdOZ0lBREpVREMwSE5BQ0VRSUFFaURTQUNSZzJVQXlBQ0lBMXJJQUFvQWdBaUFXb2hGaUFOSUFGclFRVnFJUmNEUUNBTkxRQUFJaFJCSUhJZ0ZDQVVRYjkvYWtIL0FYRkJHa2tiUWY4QmNTQUJRZERDZ0lBQWFpMEFBRWNOK2dJQ1FDQUJRUVZIRFFCQkJDRUJEUEFDQ3lBQlFRRnFJUUVnRFVFQmFpSU5JQUpIRFFBTElBQWdGallDQUF5VUF3c0NRQ0FCSWcwZ0FrY05BRUhPQUNFUURKUURDd0pBQWtBQ1FBSkFJQTB0QUFBaUFVRWdjaUFCSUFGQnYzOXFRZjhCY1VFYVNSdEIvd0Z4UVoxL2FnNFRBUDBDL1FMOUF2MEMvUUw5QXYwQy9RTDlBdjBDL1FMOUFnSDlBdjBDL1FJQ0EvMENDeUFOUVFGcUlRRkJ3UUFoRUF6OUFnc2dEVUVCYWlFQlFjSUFJUkFNL0FJTElBMUJBV29oQVVIREFDRVFEUHNDQ3lBTlFRRnFJUUZCeEFBaEVBejZBZ3NDUUNBQklnRWdBa1lOQUNBQVFZMkFnSUFBTmdJSUlBQWdBVFlDQkNBQklRRkJ4UUFoRUF6NkFndEJ6d0FoRUF5U0F3c2dFQ0VCQWtBQ1FDQVFMUUFBUVhacURnUUJxQUtvQWdDb0Fnc2dFRUVCYWlFQkMwRW5JUkFNK0FJTEFrQWdBU0lCSUFKSERRQkIwUUFoRUF5UkF3c0NRQ0FCTFFBQVFTQkdEUUFnQVNFQkRJMEJDeUFCUVFGcUlRRWdBQzBBTFVFQmNVVU54d0VnQVNFQkRJd0JDeUFCSWhjZ0FrY055QUZCMGdBaEVBeVBBd3RCMHdBaEVDQUJJaFFnQWtZTmpnTWdBaUFVYXlBQUtBSUFJZ0ZxSVJZZ0ZDQUJhMEVCYWlFWEEwQWdGQzBBQUNBQlFkYkNnSUFBYWkwQUFFY056QUVnQVVFQlJnM0hBU0FCUVFGcUlRRWdGRUVCYWlJVUlBSkhEUUFMSUFBZ0ZqWUNBQXlPQXdzQ1FDQUJJZ0VnQWtjTkFFSFZBQ0VRREk0REN5QUJMUUFBUVFwSERjd0JJQUZCQVdvaEFRekhBUXNDUUNBQklnRWdBa2NOQUVIV0FDRVFESTBEQ3dKQUFrQWdBUzBBQUVGMmFnNEVBTTBCelFFQnpRRUxJQUZCQVdvaEFRekhBUXNnQVVFQmFpRUJRY29BSVJBTTh3SUxJQUFnQVNJQklBSVFyb0NBZ0FBaUVBM0xBU0FCSVFGQnpRQWhFQXp5QWdzZ0FDMEFLVUVpUmcyRkF3eW1BZ3NDUUNBQklnRWdBa2NOQUVIYkFDRVFESW9EQzBFQUlSUkJBU0VYUVFFaEZrRUFJUkFDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnQVMwQUFFRlFhZzRLMUFIVEFRQUJBZ01FQlFZSTFRRUxRUUloRUF3R0MwRURJUkFNQlF0QkJDRVFEQVFMUVFVaEVBd0RDMEVHSVJBTUFndEJCeUVRREFFTFFRZ2hFQXRCQUNFWFFRQWhGa0VBSVJRTXpBRUxRUWtoRUVFQklSUkJBQ0VYUVFBaEZnekxBUXNDUUNBQklnRWdBa2NOQUVIZEFDRVFESWtEQ3lBQkxRQUFRUzVIRGN3QklBRkJBV29oQVF5bUFnc2dBU0lCSUFKSERjd0JRZDhBSVJBTWh3TUxBa0FnQVNJQklBSkdEUUFnQUVHT2dJQ0FBRFlDQ0NBQUlBRTJBZ1FnQVNFQlFkQUFJUkFNN2dJTFFlQUFJUkFNaGdNTFFlRUFJUkFnQVNJQklBSkdEWVVESUFJZ0FXc2dBQ2dDQUNJVWFpRVdJQUVnRkd0QkEyb2hGd05BSUFFdEFBQWdGRUhpd29DQUFHb3RBQUJIRGMwQklCUkJBMFlOekFFZ0ZFRUJhaUVVSUFGQkFXb2lBU0FDUncwQUN5QUFJQlkyQWdBTWhRTUxRZUlBSVJBZ0FTSUJJQUpHRFlRRElBSWdBV3NnQUNnQ0FDSVVhaUVXSUFFZ0ZHdEJBbW9oRndOQUlBRXRBQUFnRkVIbXdvQ0FBR290QUFCSERjd0JJQlJCQWtZTnpnRWdGRUVCYWlFVUlBRkJBV29pQVNBQ1J3MEFDeUFBSUJZMkFnQU1oQU1MUWVNQUlSQWdBU0lCSUFKR0RZTURJQUlnQVdzZ0FDZ0NBQ0lVYWlFV0lBRWdGR3RCQTJvaEZ3TkFJQUV0QUFBZ0ZFSHB3b0NBQUdvdEFBQkhEY3NCSUJSQkEwWU56Z0VnRkVFQmFpRVVJQUZCQVdvaUFTQUNSdzBBQ3lBQUlCWTJBZ0FNZ3dNTEFrQWdBU0lCSUFKSERRQkI1UUFoRUF5REF3c2dBQ0FCUVFGcUlnRWdBaENvZ0lDQUFDSVFEYzBCSUFFaEFVSFdBQ0VRRE9rQ0N3SkFJQUVpQVNBQ1JnMEFBMEFDUUNBQkxRQUFJaEJCSUVZTkFBSkFBa0FDUUNBUVFiaC9hZzRMQUFIUEFjOEJ6d0hQQWM4Qnp3SFBBYzhCQXM4QkN5QUJRUUZxSVFGQjBnQWhFQXp0QWdzZ0FVRUJhaUVCUWRNQUlSQU03QUlMSUFGQkFXb2hBVUhVQUNFUURPc0NDeUFCUVFGcUlnRWdBa2NOQUF0QjVBQWhFQXlDQXd0QjVBQWhFQXlCQXdzRFFBSkFJQUV0QUFCQjhNS0FnQUJxTFFBQUloQkJBVVlOQUNBUVFYNXFEZ1BQQWRBQjBRSFNBUXNnQVVFQmFpSUJJQUpIRFFBTFFlWUFJUkFNZ0FNTEFrQWdBU0lCSUFKR0RRQWdBVUVCYWlFQkRBTUxRZWNBSVJBTS93SUxBMEFDUUNBQkxRQUFRZkRFZ0lBQWFpMEFBQ0lRUVFGR0RRQUNRQ0FRUVg1cURnVFNBZE1CMUFFQTFRRUxJQUVoQVVIWEFDRVFET2NDQ3lBQlFRRnFJZ0VnQWtjTkFBdEI2QUFoRUF6K0Fnc0NRQ0FCSWdFZ0FrY05BRUhwQUNFUURQNENDd0pBSUFFdEFBQWlFRUYyYWc0YXVnSFZBZFVCdkFIVkFkVUIxUUhWQWRVQjFRSFZBZFVCMVFIVkFkVUIxUUhWQWRVQjFRSFZBZFVCMVFIS0FkVUIxUUVBMHdFTElBRkJBV29oQVF0QkJpRVFET01DQ3dOQUFrQWdBUzBBQUVId3hvQ0FBR290QUFCQkFVWU5BQ0FCSVFFTW5nSUxJQUZCQVdvaUFTQUNSdzBBQzBIcUFDRVFEUHNDQ3dKQUlBRWlBU0FDUmcwQUlBRkJBV29oQVF3REMwSHJBQ0VRRFBvQ0N3SkFJQUVpQVNBQ1J3MEFRZXdBSVJBTStnSUxJQUZCQVdvaEFRd0JDd0pBSUFFaUFTQUNSdzBBUWUwQUlSQU0rUUlMSUFGQkFXb2hBUXRCQkNFUURONENDd0pBSUFFaUZDQUNSdzBBUWU0QUlSQU05d0lMSUJRaEFRSkFBa0FDUUNBVUxRQUFRZkRJZ0lBQWFpMEFBRUYvYWc0SDFBSFZBZFlCQUp3Q0FRTFhBUXNnRkVFQmFpRUJEQW9MSUJSQkFXb2hBUXpOQVF0QkFDRVFJQUJCQURZQ0hDQUFRWnVTZ0lBQU5nSVFJQUJCQnpZQ0RDQUFJQlJCQVdvMkFoUU05Z0lMQWtBRFFBSkFJQUV0QUFCQjhNaUFnQUJxTFFBQUloQkJCRVlOQUFKQUFrQWdFRUYvYWc0SDBnSFRBZFFCMlFFQUJBSFpBUXNnQVNFQlFkb0FJUkFNNEFJTElBRkJBV29oQVVIY0FDRVFETjhDQ3lBQlFRRnFJZ0VnQWtjTkFBdEI3d0FoRUF6MkFnc2dBVUVCYWlFQkRNc0JDd0pBSUFFaUZDQUNSdzBBUWZBQUlSQU05UUlMSUJRdEFBQkJMMGNOMUFFZ0ZFRUJhaUVCREFZTEFrQWdBU0lVSUFKSERRQkI4UUFoRUF6MEFnc0NRQ0FVTFFBQUlnRkJMMGNOQUNBVVFRRnFJUUZCM1FBaEVBemJBZ3NnQVVGMmFpSUVRUlpMRGRNQlFRRWdCSFJCaVlDQUFuRkZEZE1CRE1vQ0N3SkFJQUVpQVNBQ1JnMEFJQUZCQVdvaEFVSGVBQ0VRRE5vQ0MwSHlBQ0VRRFBJQ0N3SkFJQUVpRkNBQ1J3MEFRZlFBSVJBTThnSUxJQlFoQVFKQUlCUXRBQUJCOE15QWdBQnFMUUFBUVg5cURnUEpBcFFDQU5RQkMwSGhBQ0VRRE5nQ0N3SkFJQUVpRkNBQ1JnMEFBMEFDUUNBVUxRQUFRZkRLZ0lBQWFpMEFBQ0lCUVFOR0RRQUNRQ0FCUVg5cURnTExBZ0RWQVFzZ0ZDRUJRZDhBSVJBTTJnSUxJQlJCQVdvaUZDQUNSdzBBQzBIekFDRVFEUEVDQzBIekFDRVFEUEFDQ3dKQUlBRWlBU0FDUmcwQUlBQkJqNENBZ0FBMkFnZ2dBQ0FCTmdJRUlBRWhBVUhnQUNFUUROY0NDMEgxQUNFUURPOENDd0pBSUFFaUFTQUNSdzBBUWZZQUlSQU03d0lMSUFCQmo0Q0FnQUEyQWdnZ0FDQUJOZ0lFSUFFaEFRdEJBeUVRRE5RQ0N3TkFJQUV0QUFCQklFY053d0lnQVVFQmFpSUJJQUpIRFFBTFFmY0FJUkFNN0FJTEFrQWdBU0lCSUFKSERRQkIrQUFoRUF6c0Fnc2dBUzBBQUVFZ1J3M09BU0FCUVFGcUlRRU03d0VMSUFBZ0FTSUJJQUlRcklDQWdBQWlFQTNPQVNBQklRRU1qZ0lMQWtBZ0FTSUVJQUpIRFFCQitnQWhFQXpxQWdzZ0JDMEFBRUhNQUVjTjBRRWdCRUVCYWlFQlFSTWhFQXpQQVFzQ1FDQUJJZ1FnQWtjTkFFSDdBQ0VRRE9rQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUVZxSVJBRFFDQUVMUUFBSUFGQjhNNkFnQUJxTFFBQVJ3M1FBU0FCUVFWR0RjNEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRZnNBSVJBTTZBSUxBa0FnQVNJRUlBSkhEUUJCL0FBaEVBem9BZ3NDUUFKQUlBUXRBQUJCdlg5cURnd0EwUUhSQWRFQjBRSFJBZEVCMFFIUkFkRUIwUUVCMFFFTElBUkJBV29oQVVIbUFDRVFETThDQ3lBRVFRRnFJUUZCNXdBaEVBek9BZ3NDUUNBQklnUWdBa2NOQUVIOUFDRVFET2NDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRSnFJUkFDUUFOQUlBUXRBQUFnQVVIdHo0Q0FBR290QUFCSERjOEJJQUZCQWtZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSDlBQ0VRRE9jQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVJBaEVBek1BUXNDUUNBQklnUWdBa2NOQUVIK0FDRVFET1lDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRVnFJUkFDUUFOQUlBUXRBQUFnQVVIMnpvQ0FBR290QUFCSERjNEJJQUZCQlVZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSCtBQ0VRRE9ZQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVJZaEVBekxBUXNDUUNBQklnUWdBa2NOQUVIL0FDRVFET1VDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRTnFJUkFDUUFOQUlBUXRBQUFnQVVIOHpvQ0FBR290QUFCSERjMEJJQUZCQTBZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSC9BQ0VRRE9VQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVFVaEVBektBUXNDUUNBQklnUWdBa2NOQUVHQUFTRVFET1FDQ3lBRUxRQUFRZGtBUnczTEFTQUVRUUZxSVFGQkNDRVFETWtCQ3dKQUlBRWlCQ0FDUncwQVFZRUJJUkFNNHdJTEFrQUNRQ0FFTFFBQVFiSi9hZzREQU13QkFjd0JDeUFFUVFGcUlRRkI2d0FoRUF6S0Fnc2dCRUVCYWlFQlFld0FJUkFNeVFJTEFrQWdBU0lFSUFKSERRQkJnZ0VoRUF6aUFnc0NRQUpBSUFRdEFBQkJ1SDlxRGdnQXl3SExBY3NCeXdITEFjc0JBY3NCQ3lBRVFRRnFJUUZCNmdBaEVBekpBZ3NnQkVFQmFpRUJRZTBBSVJBTXlBSUxBa0FnQVNJRUlBSkhEUUJCZ3dFaEVBemhBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSQWdCQ0FCYTBFQ2FpRVVBa0FEUUNBRUxRQUFJQUZCZ00rQWdBQnFMUUFBUnczSkFTQUJRUUpHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQkEyQWdCQmd3RWhFQXpoQWd0QkFDRVFJQUJCQURZQ0FDQVVRUUZxSVFFTXhnRUxBa0FnQVNJRUlBSkhEUUJCaEFFaEVBemdBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFRWFpRVFBa0FEUUNBRUxRQUFJQUZCZzgrQWdBQnFMUUFBUnczSUFTQUJRUVJHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQmhBRWhFQXpnQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVqSVJBTXhRRUxBa0FnQVNJRUlBSkhEUUJCaFFFaEVBemZBZ3NDUUFKQUlBUXRBQUJCdEg5cURnZ0F5QUhJQWNnQnlBSElBY2dCQWNnQkN5QUVRUUZxSVFGQjd3QWhFQXpHQWdzZ0JFRUJhaUVCUWZBQUlSQU14UUlMQWtBZ0FTSUVJQUpIRFFCQmhnRWhFQXplQWdzZ0JDMEFBRUhGQUVjTnhRRWdCRUVCYWlFQkRJTUNDd0pBSUFFaUJDQUNSdzBBUVljQklSQU0zUUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkEyb2hFQUpBQTBBZ0JDMEFBQ0FCUVlqUGdJQUFhaTBBQUVjTnhRRWdBVUVEUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFZY0JJUkFNM1FJTElBQkJBRFlDQUNBUVFRRnFJUUZCTFNFUURNSUJDd0pBSUFFaUJDQUNSdzBBUVlnQklSQU0zQUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkNHb2hFQUpBQTBBZ0JDMEFBQ0FCUWREUGdJQUFhaTBBQUVjTnhBRWdBVUVJUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFZZ0JJUkFNM0FJTElBQkJBRFlDQUNBUVFRRnFJUUZCS1NFUURNRUJDd0pBSUFFaUFTQUNSdzBBUVlrQklSQU0yd0lMUVFFaEVDQUJMUUFBUWQ4QVJ3M0FBU0FCUVFGcUlRRU1nUUlMQWtBZ0FTSUVJQUpIRFFCQmlnRWhFQXphQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQTBBZ0JDMEFBQ0FCUVl6UGdJQUFhaTBBQUVjTndRRWdBVUVCUmcydkFpQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR0tBU0VRRE5rQ0N3SkFJQUVpQkNBQ1J3MEFRWXNCSVJBTTJRSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQW1vaEVBSkFBMEFnQkMwQUFDQUJRWTdQZ0lBQWFpMEFBRWNOd1FFZ0FVRUNSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVlzQklSQU0yUUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJBaUVRREw0QkN3SkFJQUVpQkNBQ1J3MEFRWXdCSVJBTTJBSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRZkRQZ0lBQWFpMEFBRWNOd0FFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVl3QklSQU0yQUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJIeUVRREwwQkN3SkFJQUVpQkNBQ1J3MEFRWTBCSVJBTTF3SUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRZkxQZ0lBQWFpMEFBRWNOdndFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVkwQklSQU0xd0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJDU0VRREx3QkN3SkFJQUVpQkNBQ1J3MEFRWTRCSVJBTTFnSUxBa0FDUUNBRUxRQUFRYmQvYWc0SEFMOEJ2d0cvQWI4QnZ3RUJ2d0VMSUFSQkFXb2hBVUg0QUNFUURMMENDeUFFUVFGcUlRRkIrUUFoRUF5OEFnc0NRQ0FCSWdRZ0FrY05BRUdQQVNFUUROVUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUdSejRDQUFHb3RBQUJIRGIwQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHUEFTRVFETlVDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUmdoRUF5NkFRc0NRQ0FCSWdRZ0FrY05BRUdRQVNFUUROUUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUdYejRDQUFHb3RBQUJIRGJ3QklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHUUFTRVFETlFDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUmNoRUF5NUFRc0NRQ0FCSWdRZ0FrY05BRUdSQVNFUUROTUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFacUlSQUNRQU5BSUFRdEFBQWdBVUdhejRDQUFHb3RBQUJIRGJzQklBRkJCa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHUkFTRVFETk1DQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUlVoRUF5NEFRc0NRQ0FCSWdRZ0FrY05BRUdTQVNFUUROSUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUdoejRDQUFHb3RBQUJIRGJvQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHU0FTRVFETklDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUjRoRUF5M0FRc0NRQ0FCSWdRZ0FrY05BRUdUQVNFUURORUNDeUFFTFFBQVFjd0FSdzI0QVNBRVFRRnFJUUZCQ2lFUURMWUJDd0pBSUFRZ0FrY05BRUdVQVNFUUROQUNDd0pBQWtBZ0JDMEFBRUcvZjJvT0R3QzVBYmtCdVFHNUFia0J1UUc1QWJrQnVRRzVBYmtCdVFHNUFRRzVBUXNnQkVFQmFpRUJRZjRBSVJBTXR3SUxJQVJCQVdvaEFVSC9BQ0VRRExZQ0N3SkFJQVFnQWtjTkFFR1ZBU0VRRE04Q0N3SkFBa0FnQkMwQUFFRy9mMm9PQXdDNEFRRzRBUXNnQkVFQmFpRUJRZjBBSVJBTXRnSUxJQVJCQVdvaEJFR0FBU0VRRExVQ0N3SkFJQVFnQWtjTkFFR1dBU0VRRE00Q0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUZxSVJBQ1FBTkFJQVF0QUFBZ0FVR256NENBQUdvdEFBQkhEYllCSUFGQkFVWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdXQVNFUURNNENDeUFBUVFBMkFnQWdFRUVCYWlFQlFRc2hFQXl6QVFzQ1FDQUVJQUpIRFFCQmx3RWhFQXpOQWdzQ1FBSkFBa0FDUUNBRUxRQUFRVk5xRGlNQXVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCdUFHNEFRRzRBYmdCdUFHNEFiZ0JBcmdCdUFHNEFRTzRBUXNnQkVFQmFpRUJRZnNBSVJBTXRnSUxJQVJCQVdvaEFVSDhBQ0VRRExVQ0N5QUVRUUZxSVFSQmdRRWhFQXkwQWdzZ0JFRUJhaUVFUVlJQklSQU1zd0lMQWtBZ0JDQUNSdzBBUVpnQklSQU16QUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJHb2hFQUpBQTBBZ0JDMEFBQ0FCUWFuUGdJQUFhaTBBQUVjTnRBRWdBVUVFUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFaZ0JJUkFNekFJTElBQkJBRFlDQUNBUVFRRnFJUUZCR1NFUURMRUJDd0pBSUFRZ0FrY05BRUdaQVNFUURNc0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUd1ejRDQUFHb3RBQUJIRGJNQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHWkFTRVFETXNDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUVloRUF5d0FRc0NRQ0FFSUFKSERRQkJtZ0VoRUF6S0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVCYWlFUUFrQURRQ0FFTFFBQUlBRkJ0TStBZ0FCcUxRQUFSdzJ5QVNBQlFRRkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCbWdFaEVBektBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRWNJUkFNcndFTEFrQWdCQ0FDUncwQVFac0JJUkFNeVFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBV29oRUFKQUEwQWdCQzBBQUNBQlFiYlBnSUFBYWkwQUFFY05zUUVnQVVFQlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWnNCSVJBTXlRSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkp5RVFESzRCQ3dKQUlBUWdBa2NOQUVHY0FTRVFETWdDQ3dKQUFrQWdCQzBBQUVHc2Yyb09BZ0FCc1FFTElBUkJBV29oQkVHR0FTRVFESzhDQ3lBRVFRRnFJUVJCaHdFaEVBeXVBZ3NDUUNBRUlBSkhEUUJCblFFaEVBekhBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFQmFpRVFBa0FEUUNBRUxRQUFJQUZCdU0rQWdBQnFMUUFBUncydkFTQUJRUUZHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQm5RRWhFQXpIQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVtSVJBTXJBRUxBa0FnQkNBQ1J3MEFRWjRCSVJBTXhnSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRYnJQZ0lBQWFpMEFBRWNOcmdFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVo0QklSQU14Z0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJBeUVRREtzQkN3SkFJQVFnQWtjTkFFR2ZBU0VRRE1VQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUpxSVJBQ1FBTkFJQVF0QUFBZ0FVSHR6NENBQUdvdEFBQkhEYTBCSUFGQkFrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdmQVNFUURNVUNDeUFBUVFBMkFnQWdFRUVCYWlFQlFRd2hFQXlxQVFzQ1FDQUVJQUpIRFFCQm9BRWhFQXpFQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRURhaUVRQWtBRFFDQUVMUUFBSUFGQnZNK0FnQUJxTFFBQVJ3MnNBU0FCUVFOR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJvQUVoRUF6RUFnc2dBRUVBTmdJQUlCQkJBV29oQVVFTklSQU1xUUVMQWtBZ0JDQUNSdzBBUWFFQklSQU13d0lMQWtBQ1FDQUVMUUFBUWJwL2FnNExBS3dCckFHc0Fhd0JyQUdzQWF3QnJBR3NBUUdzQVFzZ0JFRUJhaUVFUVlzQklSQU1xZ0lMSUFSQkFXb2hCRUdNQVNFUURLa0NDd0pBSUFRZ0FrY05BRUdpQVNFUURNSUNDeUFFTFFBQVFkQUFSdzJwQVNBRVFRRnFJUVFNNlFFTEFrQWdCQ0FDUncwQVFhTUJJUkFNd1FJTEFrQUNRQ0FFTFFBQVFiZC9hZzRIQWFvQnFnR3FBYW9CcWdFQXFnRUxJQVJCQVdvaEJFR09BU0VRREtnQ0N5QUVRUUZxSVFGQklpRVFES1lCQ3dKQUlBUWdBa2NOQUVHa0FTRVFETUFDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRRnFJUkFDUUFOQUlBUXRBQUFnQVVIQXo0Q0FBR290QUFCSERhZ0JJQUZCQVVZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR2tBU0VRRE1BQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVIwaEVBeWxBUXNDUUNBRUlBSkhEUUJCcFFFaEVBeS9BZ3NDUUFKQUlBUXRBQUJCcm45cURnTUFxQUVCcUFFTElBUkJBV29oQkVHUUFTRVFES1lDQ3lBRVFRRnFJUUZCQkNFUURLUUJDd0pBSUFRZ0FrY05BRUdtQVNFUURMNENDd0pBQWtBQ1FBSkFBa0FnQkMwQUFFRy9mMm9PRlFDcUFhb0JxZ0dxQWFvQnFnR3FBYW9CcWdHcUFRR3FBYW9CQXFvQnFnRURxZ0dxQVFTcUFRc2dCRUVCYWlFRVFZZ0JJUkFNcUFJTElBUkJBV29oQkVHSkFTRVFES2NDQ3lBRVFRRnFJUVJCaWdFaEVBeW1BZ3NnQkVFQmFpRUVRWThCSVJBTXBRSUxJQVJCQVdvaEJFR1JBU0VRREtRQ0N3SkFJQVFnQWtjTkFFR25BU0VRREwwQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUpxSVJBQ1FBTkFJQVF0QUFBZ0FVSHR6NENBQUdvdEFBQkhEYVVCSUFGQkFrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUduQVNFUURMMENDeUFBUVFBMkFnQWdFRUVCYWlFQlFSRWhFQXlpQVFzQ1FDQUVJQUpIRFFCQnFBRWhFQXk4QWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUNhaUVRQWtBRFFDQUVMUUFBSUFGQndzK0FnQUJxTFFBQVJ3MmtBU0FCUVFKR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJxQUVoRUF5OEFnc2dBRUVBTmdJQUlCQkJBV29oQVVFc0lSQU1vUUVMQWtBZ0JDQUNSdzBBUWFrQklSQU11d0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJHb2hFQUpBQTBBZ0JDMEFBQ0FCUWNYUGdJQUFhaTBBQUVjTm93RWdBVUVFUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFha0JJUkFNdXdJTElBQkJBRFlDQUNBUVFRRnFJUUZCS3lFUURLQUJDd0pBSUFRZ0FrY05BRUdxQVNFUURMb0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUhLejRDQUFHb3RBQUJIRGFJQklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHcUFTRVFETG9DQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUlFoRUF5ZkFRc0NRQ0FFSUFKSERRQkJxd0VoRUF5NUFnc0NRQUpBQWtBQ1FDQUVMUUFBUWI1L2FnNFBBQUVDcEFHa0FhUUJwQUdrQWFRQnBBR2tBYVFCcEFHa0FRT2tBUXNnQkVFQmFpRUVRWk1CSVJBTW9nSUxJQVJCQVdvaEJFR1VBU0VRREtFQ0N5QUVRUUZxSVFSQmxRRWhFQXlnQWdzZ0JFRUJhaUVFUVpZQklSQU1ud0lMQWtBZ0JDQUNSdzBBUWF3QklSQU11QUlMSUFRdEFBQkJ4UUJIRFo4QklBUkJBV29oQkF6Z0FRc0NRQ0FFSUFKSERRQkJyUUVoRUF5M0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVDYWlFUUFrQURRQ0FFTFFBQUlBRkJ6YytBZ0FCcUxRQUFSdzJmQVNBQlFRSkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCclFFaEVBeTNBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRU9JUkFNbkFFTEFrQWdCQ0FDUncwQVFhNEJJUkFNdGdJTElBUXRBQUJCMEFCSERaMEJJQVJCQVdvaEFVRWxJUkFNbXdFTEFrQWdCQ0FDUncwQVFhOEJJUkFNdFFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJDR29oRUFKQUEwQWdCQzBBQUNBQlFkRFBnSUFBYWkwQUFFY05uUUVnQVVFSVJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRYThCSVJBTXRRSUxJQUJCQURZQ0FDQVFRUUZxSVFGQktpRVFESm9CQ3dKQUlBUWdBa2NOQUVHd0FTRVFETFFDQ3dKQUFrQWdCQzBBQUVHcmYyb09Dd0NkQVowQm5RR2RBWjBCblFHZEFaMEJuUUVCblFFTElBUkJBV29oQkVHYUFTRVFESnNDQ3lBRVFRRnFJUVJCbXdFaEVBeWFBZ3NDUUNBRUlBSkhEUUJCc1FFaEVBeXpBZ3NDUUFKQUlBUXRBQUJCdjM5cURoUUFuQUdjQVp3Qm5BR2NBWndCbkFHY0Fad0JuQUdjQVp3Qm5BR2NBWndCbkFHY0Fad0JBWndCQ3lBRVFRRnFJUVJCbVFFaEVBeWFBZ3NnQkVFQmFpRUVRWndCSVJBTW1RSUxBa0FnQkNBQ1J3MEFRYklCSVJBTXNnSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQTJvaEVBSkFBMEFnQkMwQUFDQUJRZG5QZ0lBQWFpMEFBRWNObWdFZ0FVRURSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWJJQklSQU1zZ0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJJU0VRREpjQkN3SkFJQVFnQWtjTkFFR3pBU0VRRExFQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUVpxSVJBQ1FBTkFJQVF0QUFBZ0FVSGR6NENBQUdvdEFBQkhEWmtCSUFGQkJrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUd6QVNFUURMRUNDeUFBUVFBMkFnQWdFRUVCYWlFQlFSb2hFQXlXQVFzQ1FDQUVJQUpIRFFCQnRBRWhFQXl3QWdzQ1FBSkFBa0FnQkMwQUFFRzdmMm9PRVFDYUFab0JtZ0dhQVpvQm1nR2FBWm9CbWdFQm1nR2FBWm9CbWdHYUFRS2FBUXNnQkVFQmFpRUVRWjBCSVJBTW1BSUxJQVJCQVdvaEJFR2VBU0VRREpjQ0N5QUVRUUZxSVFSQm53RWhFQXlXQWdzQ1FDQUVJQUpIRFFCQnRRRWhFQXl2QWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUZhaUVRQWtBRFFDQUVMUUFBSUFGQjVNK0FnQUJxTFFBQVJ3MlhBU0FCUVFWR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJ0UUVoRUF5dkFnc2dBRUVBTmdJQUlCQkJBV29oQVVFb0lSQU1sQUVMQWtBZ0JDQUNSdzBBUWJZQklSQU1yZ0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFtb2hFQUpBQTBBZ0JDMEFBQ0FCUWVyUGdJQUFhaTBBQUVjTmxnRWdBVUVDUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFiWUJJUkFNcmdJTElBQkJBRFlDQUNBUVFRRnFJUUZCQnlFUURKTUJDd0pBSUFRZ0FrY05BRUczQVNFUURLMENDd0pBQWtBZ0JDMEFBRUc3ZjJvT0RnQ1dBWllCbGdHV0FaWUJsZ0dXQVpZQmxnR1dBWllCbGdFQmxnRUxJQVJCQVdvaEJFR2hBU0VRREpRQ0N5QUVRUUZxSVFSQm9nRWhFQXlUQWdzQ1FDQUVJQUpIRFFCQnVBRWhFQXlzQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUNhaUVRQWtBRFFDQUVMUUFBSUFGQjdjK0FnQUJxTFFBQVJ3MlVBU0FCUVFKR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJ1QUVoRUF5c0Fnc2dBRUVBTmdJQUlCQkJBV29oQVVFU0lSQU1rUUVMQWtBZ0JDQUNSdzBBUWJrQklSQU1xd0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFXb2hFQUpBQTBBZ0JDMEFBQ0FCUWZEUGdJQUFhaTBBQUVjTmt3RWdBVUVCUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFia0JJUkFNcXdJTElBQkJBRFlDQUNBUVFRRnFJUUZCSUNFUURKQUJDd0pBSUFRZ0FrY05BRUc2QVNFUURLb0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFGcUlSQUNRQU5BSUFRdEFBQWdBVUh5ejRDQUFHb3RBQUJIRFpJQklBRkJBVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHNkFTRVFES29DQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUThoRUF5UEFRc0NRQ0FFSUFKSERRQkJ1d0VoRUF5cEFnc0NRQUpBSUFRdEFBQkJ0MzlxRGdjQWtnR1NBWklCa2dHU0FRR1NBUXNnQkVFQmFpRUVRYVVCSVJBTWtBSUxJQVJCQVdvaEJFR21BU0VRREk4Q0N3SkFJQVFnQWtjTkFFRzhBU0VRREtnQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUWRxSVJBQ1FBTkFJQVF0QUFBZ0FVSDB6NENBQUdvdEFBQkhEWkFCSUFGQkIwWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUc4QVNFUURLZ0NDeUFBUVFBMkFnQWdFRUVCYWlFQlFSc2hFQXlOQVFzQ1FDQUVJQUpIRFFCQnZRRWhFQXluQWdzQ1FBSkFBa0FnQkMwQUFFRytmMm9PRWdDUkFaRUJrUUdSQVpFQmtRR1JBWkVCa1FFQmtRR1JBWkVCa1FHUkFaRUJBcEVCQ3lBRVFRRnFJUVJCcEFFaEVBeVBBZ3NnQkVFQmFpRUVRYWNCSVJBTWpnSUxJQVJCQVdvaEJFR29BU0VRREkwQ0N3SkFJQVFnQWtjTkFFRytBU0VRREtZQ0N5QUVMUUFBUWM0QVJ3Mk5BU0FFUVFGcUlRUU16d0VMQWtBZ0JDQUNSdzBBUWI4QklSQU1wUUlMQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdCQzBBQUVHL2Yyb09GUUFCQWdPY0FRUUZCcHdCbkFHY0FRY0lDUW9MbkFFTURRNFBuQUVMSUFSQkFXb2hBVUhvQUNFUURKb0NDeUFFUVFGcUlRRkI2UUFoRUF5WkFnc2dCRUVCYWlFQlFlNEFJUkFNbUFJTElBUkJBV29oQVVIeUFDRVFESmNDQ3lBRVFRRnFJUUZCOHdBaEVBeVdBZ3NnQkVFQmFpRUJRZllBSVJBTWxRSUxJQVJCQVdvaEFVSDNBQ0VRREpRQ0N5QUVRUUZxSVFGQitnQWhFQXlUQWdzZ0JFRUJhaUVFUVlNQklSQU1rZ0lMSUFSQkFXb2hCRUdFQVNFUURKRUNDeUFFUVFGcUlRUkJoUUVoRUF5UUFnc2dCRUVCYWlFRVFaSUJJUkFNandJTElBUkJBV29oQkVHWUFTRVFESTRDQ3lBRVFRRnFJUVJCb0FFaEVBeU5BZ3NnQkVFQmFpRUVRYU1CSVJBTWpBSUxJQVJCQVdvaEJFR3FBU0VRRElzQ0N3SkFJQVFnQWtZTkFDQUFRWkNBZ0lBQU5nSUlJQUFnQkRZQ0JFR3JBU0VRRElzQ0MwSEFBU0VRREtNQ0N5QUFJQVVnQWhDcWdJQ0FBQ0lCRFlzQklBVWhBUXhjQ3dKQUlBWWdBa1lOQUNBR1FRRnFJUVVNalFFTFFjSUJJUkFNb1FJTEEwQUNRQ0FRTFFBQVFYWnFEZ1NNQVFBQWp3RUFDeUFRUVFGcUloQWdBa2NOQUF0Qnd3RWhFQXlnQWdzQ1FDQUhJQUpHRFFBZ0FFR1JnSUNBQURZQ0NDQUFJQWMyQWdRZ0J5RUJRUUVoRUF5SEFndEJ4QUVoRUF5ZkFnc0NRQ0FISUFKSERRQkJ4UUVoRUF5ZkFnc0NRQUpBSUFjdEFBQkJkbW9PQkFIT0FjNEJBTTRCQ3lBSFFRRnFJUVlNalFFTElBZEJBV29oQlF5SkFRc0NRQ0FISUFKSERRQkJ4Z0VoRUF5ZUFnc0NRQUpBSUFjdEFBQkJkbW9PRndHUEFZOEJBWThCandHUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0dQQVk4Qmp3R1BBUUNQQVFzZ0IwRUJhaUVIQzBHd0FTRVFESVFDQ3dKQUlBZ2dBa2NOQUVISUFTRVFESjBDQ3lBSUxRQUFRU0JIRFkwQklBQkJBRHNCTWlBSVFRRnFJUUZCc3dFaEVBeURBZ3NnQVNFWEFrQURRQ0FYSWdjZ0FrWU5BU0FITFFBQVFWQnFRZjhCY1NJUVFRcFBEY3dCQWtBZ0FDOEJNaUlVUVprelN3MEFJQUFnRkVFS2JDSVVPd0V5SUJCQi8vOERjeUFVUWY3L0EzRkpEUUFnQjBFQmFpRVhJQUFnRkNBUWFpSVFPd0V5SUJCQi8vOERjVUhvQjBrTkFRc0xRUUFoRUNBQVFRQTJBaHdnQUVIQmlZQ0FBRFlDRUNBQVFRMDJBZ3dnQUNBSFFRRnFOZ0lVREp3Q0MwSEhBU0VRREpzQ0N5QUFJQWdnQWhDdWdJQ0FBQ0lRUlEzS0FTQVFRUlZIRFl3QklBQkJ5QUUyQWh3Z0FDQUlOZ0lVSUFCQnlaZUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBeWFBZ3NDUUNBSklBSkhEUUJCekFFaEVBeWFBZ3RCQUNFVVFRRWhGMEVCSVJaQkFDRVFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFJQWt0QUFCQlVHb09DcFlCbFFFQUFRSURCQVVHQ0pjQkMwRUNJUkFNQmd0QkF5RVFEQVVMUVFRaEVBd0VDMEVGSVJBTUF3dEJCaUVRREFJTFFRY2hFQXdCQzBFSUlSQUxRUUFoRjBFQUlSWkJBQ0VVREk0QkMwRUpJUkJCQVNFVVFRQWhGMEVBSVJZTWpRRUxBa0FnQ2lBQ1J3MEFRYzRCSVJBTW1RSUxJQW90QUFCQkxrY05qZ0VnQ2tFQmFpRUpETW9CQ3lBTElBSkhEWTRCUWRBQklSQU1sd0lMQWtBZ0N5QUNSZzBBSUFCQmpvQ0FnQUEyQWdnZ0FDQUxOZ0lFUWJjQklSQU0vZ0VMUWRFQklSQU1sZ0lMQWtBZ0JDQUNSdzBBUWRJQklSQU1sZ0lMSUFJZ0JHc2dBQ2dDQUNJUWFpRVVJQVFnRUd0QkJHb2hDd05BSUFRdEFBQWdFRUg4ejRDQUFHb3RBQUJIRFk0QklCQkJCRVlONlFFZ0VFRUJhaUVRSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQjBnRWhFQXlWQWdzZ0FDQU1JQUlRcklDQWdBQWlBUTJOQVNBTUlRRU11QUVMQWtBZ0JDQUNSdzBBUWRRQklSQU1sQUlMSUFJZ0JHc2dBQ2dDQUNJUWFpRVVJQVFnRUd0QkFXb2hEQU5BSUFRdEFBQWdFRUdCMElDQUFHb3RBQUJIRFk4QklCQkJBVVlOamdFZ0VFRUJhaUVRSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQjFBRWhFQXlUQWdzQ1FDQUVJQUpIRFFCQjFnRWhFQXlUQWdzZ0FpQUVheUFBS0FJQUloQnFJUlFnQkNBUWEwRUNhaUVMQTBBZ0JDMEFBQ0FRUVlQUWdJQUFhaTBBQUVjTmpnRWdFRUVDUmcyUUFTQVFRUUZxSVJBZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFSFdBU0VRREpJQ0N3SkFJQVFnQWtjTkFFSFhBU0VRREpJQ0N3SkFBa0FnQkMwQUFFRzdmMm9PRUFDUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0dQQVk4QkFZOEJDeUFFUVFGcUlRUkJ1d0VoRUF6NUFRc2dCRUVCYWlFRVFid0JJUkFNK0FFTEFrQWdCQ0FDUncwQVFkZ0JJUkFNa1FJTElBUXRBQUJCeUFCSERZd0JJQVJCQVdvaEJBekVBUXNDUUNBRUlBSkdEUUFnQUVHUWdJQ0FBRFlDQ0NBQUlBUTJBZ1JCdmdFaEVBejNBUXRCMlFFaEVBeVBBZ3NDUUNBRUlBSkhEUUJCMmdFaEVBeVBBZ3NnQkMwQUFFSElBRVlOd3dFZ0FFRUJPZ0FvRExrQkN5QUFRUUk2QUM4Z0FDQUVJQUlRcG9DQWdBQWlFQTJOQVVIQ0FTRVFEUFFCQ3lBQUxRQW9RWDlxRGdLM0Fia0J1QUVMQTBBQ1FDQUVMUUFBUVhacURnUUFqZ0dPQVFDT0FRc2dCRUVCYWlJRUlBSkhEUUFMUWQwQklSQU1pd0lMSUFCQkFEb0FMeUFBTFFBdFFRUnhSUTJFQWdzZ0FFRUFPZ0F2SUFCQkFUb0FOQ0FCSVFFTWpBRUxJQkJCRlVZTjJnRWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFhZU9nSUFBTmdJUUlBQkJFallDREVFQUlSQU1pQUlMQWtBZ0FDQVFJQUlRdElDQWdBQWlCQTBBSUJBaEFReUJBZ3NDUUNBRVFSVkhEUUFnQUVFRE5nSWNJQUFnRURZQ0ZDQUFRYkNZZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNaUFJTElBQkJBRFlDSENBQUlCQTJBaFFnQUVHbmpvQ0FBRFlDRUNBQVFSSTJBZ3hCQUNFUURJY0NDeUFRUVJWR0RkWUJJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSGFqWUNBQURZQ0VDQUFRUlEyQWd4QkFDRVFESVlDQ3lBQUtBSUVJUmNnQUVFQU5nSUVJQkFnRWFkcUloWWhBU0FBSUJjZ0VDQVdJQlFiSWhBUXRZQ0FnQUFpRkVVTmpRRWdBRUVITmdJY0lBQWdFRFlDRkNBQUlCUTJBZ3hCQUNFUURJVUNDeUFBSUFBdkFUQkJnQUZ5T3dFd0lBRWhBUXRCS2lFUURPb0JDeUFRUVJWR0RkRUJJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR0RqSUNBQURZQ0VDQUFRUk0yQWd4QkFDRVFESUlDQ3lBUVFSVkdEYzhCSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUdhajRDQUFEWUNFQ0FBUVNJMkFneEJBQ0VRRElFQ0N5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRdDRDQWdBQWlFQTBBSUFGQkFXb2hBUXlOQVFzZ0FFRU1OZ0ljSUFBZ0VEWUNEQ0FBSUFGQkFXbzJBaFJCQUNFUURJQUNDeUFRUVJWR0Rjd0JJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR2FqNENBQURZQ0VDQUFRU0kyQWd4QkFDRVFEUDhCQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVF0NENBZ0FBaUVBMEFJQUZCQVdvaEFReU1BUXNnQUVFTk5nSWNJQUFnRURZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFA0QkN5QVFRUlZHRGNrQklBQkJBRFlDSENBQUlBRTJBaFFnQUVIR2pJQ0FBRFlDRUNBQVFTTTJBZ3hCQUNFUURQMEJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXVZQ0FnQUFpRUEwQUlBRkJBV29oQVF5TEFRc2dBRUVPTmdJY0lBQWdFRFlDRENBQUlBRkJBV28yQWhSQkFDRVFEUHdCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCd0pXQWdBQTJBaEFnQUVFQ05nSU1RUUFoRUF6N0FRc2dFRUVWUmczRkFTQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnhveUFnQUEyQWhBZ0FFRWpOZ0lNUVFBaEVBejZBUXNnQUVFUU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFEUGtCQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVF1WUNBZ0FBaUJBMEFJQUZCQVdvaEFRenhBUXNnQUVFUk5nSWNJQUFnQkRZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFBnQkN5QVFRUlZHRGNFQklBQkJBRFlDSENBQUlBRTJBaFFnQUVIR2pJQ0FBRFlDRUNBQVFTTTJBZ3hCQUNFUURQY0JDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXVZQ0FnQUFpRUEwQUlBRkJBV29oQVF5SUFRc2dBRUVUTmdJY0lBQWdFRFlDRENBQUlBRkJBV28yQWhSQkFDRVFEUFlCQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVF1WUNBZ0FBaUJBMEFJQUZCQVdvaEFRenRBUXNnQUVFVU5nSWNJQUFnQkRZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFBVQkN5QVFRUlZHRGIwQklBQkJBRFlDSENBQUlBRTJBaFFnQUVHYWo0Q0FBRFlDRUNBQVFTSTJBZ3hCQUNFUURQUUJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXQ0Q0FnQUFpRUEwQUlBRkJBV29oQVF5R0FRc2dBRUVXTmdJY0lBQWdFRFlDRENBQUlBRkJBV28yQWhSQkFDRVFEUE1CQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVF0NENBZ0FBaUJBMEFJQUZCQVdvaEFRenBBUXNnQUVFWE5nSWNJQUFnQkRZQ0RDQUFJQUZCQVdvMkFoUkJBQ0VRRFBJQkN5QUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnpaT0FnQUEyQWhBZ0FFRU1OZ0lNUVFBaEVBenhBUXRDQVNFUkN5QVFRUUZxSVFFQ1FDQUFLUU1nSWhKQy8vLy8vLy8vLy84UFZnMEFJQUFnRWtJRWhpQVJoRGNESUNBQklRRU1oQUVMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUd0aVlDQUFEWUNFQ0FBUVF3MkFneEJBQ0VRRE84QkN5QUFRUUEyQWh3Z0FDQVFOZ0lVSUFCQnpaT0FnQUEyQWhBZ0FFRU1OZ0lNUVFBaEVBenVBUXNnQUNnQ0JDRVhJQUJCQURZQ0JDQVFJQkduYWlJV0lRRWdBQ0FYSUJBZ0ZpQVVHeUlRRUxXQWdJQUFJaFJGRFhNZ0FFRUZOZ0ljSUFBZ0VEWUNGQ0FBSUJRMkFneEJBQ0VRRE8wQkN5QUFRUUEyQWh3Z0FDQVFOZ0lVSUFCQnFweUFnQUEyQWhBZ0FFRVBOZ0lNUVFBaEVBenNBUXNnQUNBUUlBSVF0SUNBZ0FBaUFRMEJJQkFoQVF0QkRpRVFETkVCQ3dKQUlBRkJGVWNOQUNBQVFRSTJBaHdnQUNBUU5nSVVJQUJCc0ppQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF6cUFRc2dBRUVBTmdJY0lBQWdFRFlDRkNBQVFhZU9nSUFBTmdJUUlBQkJFallDREVFQUlSQU02UUVMSUFGQkFXb2hFQUpBSUFBdkFUQWlBVUdBQVhGRkRRQUNRQ0FBSUJBZ0FoQzdnSUNBQUNJQkRRQWdFQ0VCREhBTElBRkJGVWNOdWdFZ0FFRUZOZ0ljSUFBZ0VEWUNGQ0FBUWZtWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTTZRRUxBa0FnQVVHZ0JIRkJvQVJIRFFBZ0FDMEFMVUVDY1EwQUlBQkJBRFlDSENBQUlCQTJBaFFnQUVHV2s0Q0FBRFlDRUNBQVFRUTJBZ3hCQUNFUURPa0JDeUFBSUJBZ0FoQzlnSUNBQUJvZ0VDRUJBa0FDUUFKQUFrQUNRQ0FBSUJBZ0FoQ3pnSUNBQUE0V0FnRUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBd1FMSUFCQkFUb0FMZ3NnQUNBQUx3RXdRY0FBY2pzQk1DQVFJUUVMUVNZaEVBelJBUXNnQUVFak5nSWNJQUFnRURZQ0ZDQUFRYVdXZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNNlFFTElBQkJBRFlDSENBQUlCQTJBaFFnQUVIVmk0Q0FBRFlDRUNBQVFSRTJBZ3hCQUNFUURPZ0JDeUFBTFFBdFFRRnhSUTBCUWNNQklSQU16Z0VMQWtBZ0RTQUNSZzBBQTBBQ1FDQU5MUUFBUVNCR0RRQWdEU0VCRE1RQkN5QU5RUUZxSWcwZ0FrY05BQXRCSlNFUURPY0JDMEVsSVJBTTVnRUxJQUFvQWdRaEJDQUFRUUEyQWdRZ0FDQUVJQTBRcjRDQWdBQWlCRVVOclFFZ0FFRW1OZ0ljSUFBZ0JEWUNEQ0FBSUExQkFXbzJBaFJCQUNFUURPVUJDeUFRUVJWR0Rhc0JJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSDlqWUNBQURZQ0VDQUFRUjAyQWd4QkFDRVFET1FCQ3lBQVFTYzJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNNHdFTElCQWhBVUVCSVJRQ1FBSkFBa0FDUUFKQUFrQUNRQ0FBTFFBc1FYNXFEZ2NHQlFVREFRSUFCUXNnQUNBQUx3RXdRUWh5T3dFd0RBTUxRUUloRkF3QkMwRUVJUlFMSUFCQkFUb0FMQ0FBSUFBdkFUQWdGSEk3QVRBTElCQWhBUXRCS3lFUURNb0JDeUFBUVFBMkFod2dBQ0FRTmdJVUlBQkJxNUtBZ0FBMkFoQWdBRUVMTmdJTVFRQWhFQXppQVFzZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWVHUGdJQUFOZ0lRSUFCQkNqWUNERUVBSVJBTTRRRUxJQUJCQURvQUxDQVFJUUVNdlFFTElCQWhBVUVCSVJRQ1FBSkFBa0FDUUFKQUlBQXRBQ3hCZTJvT0JBTUJBZ0FGQ3lBQUlBQXZBVEJCQ0hJN0FUQU1Bd3RCQWlFVURBRUxRUVFoRkFzZ0FFRUJPZ0FzSUFBZ0FDOEJNQ0FVY2pzQk1Bc2dFQ0VCQzBFcElSQU14UUVMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUh3bElDQUFEWUNFQ0FBUVFNMkFneEJBQ0VRRE4wQkN3SkFJQTR0QUFCQkRVY05BQ0FBS0FJRUlRRWdBRUVBTmdJRUFrQWdBQ0FCSUE0UXNZQ0FnQUFpQVEwQUlBNUJBV29oQVF4MUN5QUFRU3cyQWh3Z0FDQUJOZ0lNSUFBZ0RrRUJhallDRkVFQUlSQU0zUUVMSUFBdEFDMUJBWEZGRFFGQnhBRWhFQXpEQVFzQ1FDQU9JQUpIRFFCQkxTRVFETndCQ3dKQUFrQURRQUpBSUE0dEFBQkJkbW9PQkFJQUFBTUFDeUFPUVFGcUlnNGdBa2NOQUF0QkxTRVFETjBCQ3lBQUtBSUVJUUVnQUVFQU5nSUVBa0FnQUNBQklBNFFzWUNBZ0FBaUFRMEFJQTRoQVF4MEN5QUFRU3cyQWh3Z0FDQU9OZ0lVSUFBZ0FUWUNERUVBSVJBTTNBRUxJQUFvQWdRaEFTQUFRUUEyQWdRQ1FDQUFJQUVnRGhDeGdJQ0FBQ0lCRFFBZ0RrRUJhaUVCREhNTElBQkJMRFlDSENBQUlBRTJBZ3dnQUNBT1FRRnFOZ0lVUVFBaEVBemJBUXNnQUNnQ0JDRUVJQUJCQURZQ0JDQUFJQVFnRGhDeGdJQ0FBQ0lFRGFBQklBNGhBUXpPQVFzZ0VFRXNSdzBCSUFGQkFXb2hFRUVCSVFFQ1FBSkFBa0FDUUFKQUlBQXRBQ3hCZTJvT0JBTUJBZ1FBQ3lBUUlRRU1CQXRCQWlFQkRBRUxRUVFoQVFzZ0FFRUJPZ0FzSUFBZ0FDOEJNQ0FCY2pzQk1DQVFJUUVNQVFzZ0FDQUFMd0V3UVFoeU93RXdJQkFoQVF0Qk9TRVFETDhCQ3lBQVFRQTZBQ3dnQVNFQkMwRTBJUkFNdlFFTElBQWdBQzhCTUVFZ2Nqc0JNQ0FCSVFFTUFnc2dBQ2dDQkNFRUlBQkJBRFlDQkFKQUlBQWdCQ0FCRUxHQWdJQUFJZ1FOQUNBQklRRU14d0VMSUFCQk56WUNIQ0FBSUFFMkFoUWdBQ0FFTmdJTVFRQWhFQXpVQVFzZ0FFRUlPZ0FzSUFFaEFRdEJNQ0VRRExrQkN3SkFJQUF0QUNoQkFVWU5BQ0FCSVFFTUJBc2dBQzBBTFVFSWNVVU5rd0VnQVNFQkRBTUxJQUF0QURCQklIRU5sQUZCeFFFaEVBeTNBUXNDUUNBUElBSkdEUUFDUUFOQUFrQWdEeTBBQUVGUWFpSUJRZjhCY1VFS1NRMEFJQThoQVVFMUlSQU11Z0VMSUFBcEF5QWlFVUtacytiTW1iUG16QmxXRFFFZ0FDQVJRZ3ArSWhFM0F5QWdFU0FCclVML0FZTWlFa0ovaFZZTkFTQUFJQkVnRW53M0F5QWdEMEVCYWlJUElBSkhEUUFMUVRraEVBelJBUXNnQUNnQ0JDRUNJQUJCQURZQ0JDQUFJQUlnRDBFQmFpSUVFTEdBZ0lBQUlnSU5sUUVnQkNFQkRNTUJDMEU1SVJBTXp3RUxBa0FnQUM4Qk1DSUJRUWh4UlEwQUlBQXRBQ2hCQVVjTkFDQUFMUUF0UVFoeFJRMlFBUXNnQUNBQlFmZjdBM0ZCZ0FSeU93RXdJQThoQVF0Qk55RVFETFFCQ3lBQUlBQXZBVEJCRUhJN0FUQU1xd0VMSUJCQkZVWU5pd0VnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRZkNPZ0lBQU5nSVFJQUJCSERZQ0RFRUFJUkFNeXdFTElBQkJ3d0EyQWh3Z0FDQUJOZ0lNSUFBZ0RVRUJhallDRkVFQUlSQU15Z0VMQWtBZ0FTMEFBRUU2UncwQUlBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkN2Z0lDQUFDSVFEUUFnQVVFQmFpRUJER01MSUFCQnd3QTJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTXlnRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR3hrWUNBQURZQ0VDQUFRUW8yQWd4QkFDRVFETWtCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCb0ptQWdBQTJBaEFnQUVFZU5nSU1RUUFoRUF6SUFRc2dBRUVBTmdJQUN5QUFRWUFTT3dFcUlBQWdGMEVCYWlJQklBSVFxSUNBZ0FBaUVBMEJJQUVoQVF0Qnh3QWhFQXlzQVFzZ0VFRVZSdzJEQVNBQVFkRUFOZ0ljSUFBZ0FUWUNGQ0FBUWVPWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTXhBRUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDbmdJQ0FBQ0lRRFFBZ0FTRUJERjRMSUFCQjBnQTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNd3dFTElBQkJBRFlDSENBQUlCUTJBaFFnQUVIQnFJQ0FBRFlDRUNBQVFRYzJBZ3dnQUVFQU5nSUFRUUFoRUF6Q0FRc2dBQ2dDQkNFUUlBQkJBRFlDQkFKQUlBQWdFQ0FCRUtlQWdJQUFJaEFOQUNBQklRRU1YUXNnQUVIVEFEWUNIQ0FBSUFFMkFoUWdBQ0FRTmdJTVFRQWhFQXpCQVF0QkFDRVFJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR0FrWUNBQURZQ0VDQUFRUWsyQWd3TXdBRUxJQkJCRlVZTmZTQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQmxJMkFnQUEyQWhBZ0FFRWhOZ0lNUVFBaEVBeS9BUXRCQVNFV1FRQWhGMEVBSVJSQkFTRVFDeUFBSUJBNkFDc2dBVUVCYWlFQkFrQUNRQ0FBTFFBdFFSQnhEUUFDUUFKQUFrQWdBQzBBS2c0REFRQUNCQXNnRmtVTkF3d0NDeUFVRFFFTUFnc2dGMFVOQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFSzJBZ0lBQUloQU5BQ0FCSVFFTVhBc2dBRUhZQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeStBUXNnQUNnQ0JDRUVJQUJCQURZQ0JBSkFJQUFnQkNBQkVLMkFnSUFBSWdRTkFDQUJJUUVNclFFTElBQkIyUUEyQWh3Z0FDQUJOZ0lVSUFBZ0JEWUNERUVBSVJBTXZRRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDdGdJQ0FBQ0lFRFFBZ0FTRUJES3NCQ3lBQVFkb0FOZ0ljSUFBZ0FUWUNGQ0FBSUFRMkFneEJBQ0VRREx3QkN5QUFLQUlFSVFRZ0FFRUFOZ0lFQWtBZ0FDQUVJQUVRcllDQWdBQWlCQTBBSUFFaEFReXBBUXNnQUVIY0FEWUNIQ0FBSUFFMkFoUWdBQ0FFTmdJTVFRQWhFQXk3QVFzQ1FDQUJMUUFBUVZCcUloQkIvd0Z4UVFwUERRQWdBQ0FRT2dBcUlBRkJBV29oQVVIUEFDRVFES0lCQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVFyWUNBZ0FBaUJBMEFJQUVoQVF5bkFRc2dBRUhlQURZQ0hDQUFJQUUyQWhRZ0FDQUVOZ0lNUVFBaEVBeTZBUXNnQUVFQU5nSUFJQmRCQVdvaEFRSkFJQUF0QUNsQkkwOE5BQ0FCSVFFTVdRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFkT0pnSUFBTmdJUUlBQkJDRFlDREVFQUlSQU11UUVMSUFCQkFEWUNBQXRCQUNFUUlBQkJBRFlDSENBQUlBRTJBaFFnQUVHUXM0Q0FBRFlDRUNBQVFRZzJBZ3dNdHdFTElBQkJBRFlDQUNBWFFRRnFJUUVDUUNBQUxRQXBRU0ZIRFFBZ0FTRUJERllMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUdiaW9DQUFEWUNFQ0FBUVFnMkFneEJBQ0VRRExZQkN5QUFRUUEyQWdBZ0YwRUJhaUVCQWtBZ0FDMEFLU0lRUVYxcVFRdFBEUUFnQVNFQkRGVUxBa0FnRUVFR1N3MEFRUUVnRUhSQnlnQnhSUTBBSUFFaEFReFZDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWZlSmdJQUFOZ0lRSUFCQkNEWUNEQXkxQVFzZ0VFRVZSZzF4SUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUc1allDQUFEWUNFQ0FBUVJvMkFneEJBQ0VRRExRQkN5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRcDRDQWdBQWlFQTBBSUFFaEFReFVDeUFBUWVVQU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFETE1CQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVFwNENBZ0FBaUVBMEFJQUVoQVF4TkN5QUFRZElBTmdJY0lBQWdBVFlDRkNBQUlCQTJBZ3hCQUNFUURMSUJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXA0Q0FnQUFpRUEwQUlBRWhBUXhOQ3lBQVFkTUFOZ0ljSUFBZ0FUWUNGQ0FBSUJBMkFneEJBQ0VRRExFQkN5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRcDRDQWdBQWlFQTBBSUFFaEFReFJDeUFBUWVVQU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFETEFCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCeG9xQWdBQTJBaEFnQUVFSE5nSU1RUUFoRUF5dkFRc2dBQ2dDQkNFUUlBQkJBRFlDQkFKQUlBQWdFQ0FCRUtlQWdJQUFJaEFOQUNBQklRRU1TUXNnQUVIU0FEWUNIQ0FBSUFFMkFoUWdBQ0FRTmdJTVFRQWhFQXl1QVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFS2VBZ0lBQUloQU5BQ0FCSVFFTVNRc2dBRUhUQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeXRBUXNnQUNnQ0JDRVFJQUJCQURZQ0JBSkFJQUFnRUNBQkVLZUFnSUFBSWhBTkFDQUJJUUVNVFFzZ0FFSGxBRFlDSENBQUlBRTJBaFFnQUNBUU5nSU1RUUFoRUF5c0FRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFkeUlnSUFBTmdJUUlBQkJCellDREVFQUlSQU1xd0VMSUJCQlAwY05BU0FCUVFGcUlRRUxRUVVoRUF5UUFRdEJBQ0VRSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUg5a29DQUFEWUNFQ0FBUVFjMkFnd01xQUVMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQ25nSUNBQUNJUURRQWdBU0VCREVJTElBQkIwZ0EyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTXB3RUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDbmdJQ0FBQ0lRRFFBZ0FTRUJERUlMSUFCQjB3QTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNcGdFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkNuZ0lDQUFDSVFEUUFnQVNFQkRFWUxJQUJCNVFBMkFod2dBQ0FCTmdJVUlBQWdFRFlDREVFQUlSQU1wUUVMSUFBb0FnUWhBU0FBUVFBMkFnUUNRQ0FBSUFFZ0ZCQ25nSUNBQUNJQkRRQWdGQ0VCREQ4TElBQkIwZ0EyQWh3Z0FDQVVOZ0lVSUFBZ0FUWUNERUVBSVJBTXBBRUxJQUFvQWdRaEFTQUFRUUEyQWdRQ1FDQUFJQUVnRkJDbmdJQ0FBQ0lCRFFBZ0ZDRUJERDhMSUFCQjB3QTJBaHdnQUNBVU5nSVVJQUFnQVRZQ0RFRUFJUkFNb3dFTElBQW9BZ1FoQVNBQVFRQTJBZ1FDUUNBQUlBRWdGQkNuZ0lDQUFDSUJEUUFnRkNFQkRFTUxJQUJCNVFBMkFod2dBQ0FVTmdJVUlBQWdBVFlDREVFQUlSQU1vZ0VMSUFCQkFEWUNIQ0FBSUJRMkFoUWdBRUhEajRDQUFEWUNFQ0FBUVFjMkFneEJBQ0VRREtFQkN5QUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnc0K0FnQUEyQWhBZ0FFRUhOZ0lNUVFBaEVBeWdBUXRCQUNFUUlBQkJBRFlDSENBQUlCUTJBaFFnQUVHTW5JQ0FBRFlDRUNBQVFRYzJBZ3dNbndFTElBQkJBRFlDSENBQUlCUTJBaFFnQUVHTW5JQ0FBRFlDRUNBQVFRYzJBZ3hCQUNFUURKNEJDeUFBUVFBMkFod2dBQ0FVTmdJVUlBQkIvcEdBZ0FBMkFoQWdBRUVITmdJTVFRQWhFQXlkQVFzZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVk2YmdJQUFOZ0lRSUFCQkJqWUNERUVBSVJBTW5BRUxJQkJCRlVZTlZ5QUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnpJNkFnQUEyQWhBZ0FFRWdOZ0lNUVFBaEVBeWJBUXNnQUVFQU5nSUFJQkJCQVdvaEFVRWtJUkFMSUFBZ0VEb0FLU0FBS0FJRUlSQWdBRUVBTmdJRUlBQWdFQ0FCRUt1QWdJQUFJaEFOVkNBQklRRU1QZ3NnQUVFQU5nSUFDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0JEWUNGQ0FBUWZHYmdJQUFOZ0lRSUFCQkJqWUNEQXlYQVFzZ0FVRVZSZzFRSUFCQkFEWUNIQ0FBSUFVMkFoUWdBRUh3aklDQUFEWUNFQ0FBUVJzMkFneEJBQ0VRREpZQkN5QUFLQUlFSVFVZ0FFRUFOZ0lFSUFBZ0JTQVFFS21BZ0lBQUlnVU5BU0FRUVFGcUlRVUxRYTBCSVJBTWV3c2dBRUhCQVRZQ0hDQUFJQVUyQWd3Z0FDQVFRUUZxTmdJVVFRQWhFQXlUQVFzZ0FDZ0NCQ0VHSUFCQkFEWUNCQ0FBSUFZZ0VCQ3BnSUNBQUNJR0RRRWdFRUVCYWlFR0MwR3VBU0VRREhnTElBQkJ3Z0UyQWh3Z0FDQUdOZ0lNSUFBZ0VFRUJhallDRkVFQUlSQU1rQUVMSUFCQkFEWUNIQ0FBSUFjMkFoUWdBRUdYaTRDQUFEWUNFQ0FBUVEwMkFneEJBQ0VRREk4QkN5QUFRUUEyQWh3Z0FDQUlOZ0lVSUFCQjQ1Q0FnQUEyQWhBZ0FFRUpOZ0lNUVFBaEVBeU9BUXNnQUVFQU5nSWNJQUFnQ0RZQ0ZDQUFRWlNOZ0lBQU5nSVFJQUJCSVRZQ0RFRUFJUkFNalFFTFFRRWhGa0VBSVJkQkFDRVVRUUVoRUFzZ0FDQVFPZ0FySUFsQkFXb2hDQUpBQWtBZ0FDMEFMVUVRY1EwQUFrQUNRQUpBSUFBdEFDb09Bd0VBQWdRTElCWkZEUU1NQWdzZ0ZBMEJEQUlMSUJkRkRRRUxJQUFvQWdRaEVDQUFRUUEyQWdRZ0FDQVFJQWdRcllDQWdBQWlFRVVOUFNBQVFja0JOZ0ljSUFBZ0NEWUNGQ0FBSUJBMkFneEJBQ0VRREl3QkN5QUFLQUlFSVFRZ0FFRUFOZ0lFSUFBZ0JDQUlFSzJBZ0lBQUlnUkZEWFlnQUVIS0FUWUNIQ0FBSUFnMkFoUWdBQ0FFTmdJTVFRQWhFQXlMQVFzZ0FDZ0NCQ0VFSUFCQkFEWUNCQ0FBSUFRZ0NSQ3RnSUNBQUNJRVJRMTBJQUJCeXdFMkFod2dBQ0FKTmdJVUlBQWdCRFlDREVFQUlSQU1pZ0VMSUFBb0FnUWhCQ0FBUVFBMkFnUWdBQ0FFSUFvUXJZQ0FnQUFpQkVVTmNpQUFRYzBCTmdJY0lBQWdDallDRkNBQUlBUTJBZ3hCQUNFUURJa0JDd0pBSUFzdEFBQkJVR29pRUVIL0FYRkJDazhOQUNBQUlCQTZBQ29nQzBFQmFpRUtRYllCSVJBTWNBc2dBQ2dDQkNFRUlBQkJBRFlDQkNBQUlBUWdDeEN0Z0lDQUFDSUVSUTF3SUFCQnp3RTJBaHdnQUNBTE5nSVVJQUFnQkRZQ0RFRUFJUkFNaUFFTElBQkJBRFlDSENBQUlBUTJBaFFnQUVHUXM0Q0FBRFlDRUNBQVFRZzJBZ3dnQUVFQU5nSUFRUUFoRUF5SEFRc2dBVUVWUmcwL0lBQkJBRFlDSENBQUlBdzJBaFFnQUVITWpvQ0FBRFlDRUNBQVFTQTJBZ3hCQUNFUURJWUJDeUFBUVlFRU93RW9JQUFvQWdRaEVDQUFRZ0EzQXdBZ0FDQVFJQXhCQVdvaURCQ3JnSUNBQUNJUVJRMDRJQUJCMHdFMkFod2dBQ0FNTmdJVUlBQWdFRFlDREVFQUlSQU1oUUVMSUFCQkFEWUNBQXRCQUNFUUlBQkJBRFlDSENBQUlBUTJBaFFnQUVIWW00Q0FBRFlDRUNBQVFRZzJBZ3dNZ3dFTElBQW9BZ1FoRUNBQVFnQTNBd0FnQUNBUUlBdEJBV29pQ3hDcmdJQ0FBQ0lRRFFGQnhnRWhFQXhwQ3lBQVFRSTZBQ2dNVlFzZ0FFSFZBVFlDSENBQUlBczJBaFFnQUNBUU5nSU1RUUFoRUF5QUFRc2dFRUVWUmcwM0lBQkJBRFlDSENBQUlBUTJBaFFnQUVHa2pJQ0FBRFlDRUNBQVFSQTJBZ3hCQUNFUURIOExJQUF0QURSQkFVY05OQ0FBSUFRZ0FoQzhnSUNBQUNJUVJRMDBJQkJCRlVjTk5TQUFRZHdCTmdJY0lBQWdCRFlDRkNBQVFkV1dnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1mZ3RCQUNFUUlBQkJBRFlDSENBQVFhK0xnSUFBTmdJUUlBQkJBallDRENBQUlCUkJBV28yQWhRTWZRdEJBQ0VRREdNTFFRSWhFQXhpQzBFTklSQU1ZUXRCRHlFUURHQUxRU1VoRUF4ZkMwRVRJUkFNWGd0QkZTRVFERjBMUVJZaEVBeGNDMEVYSVJBTVd3dEJHQ0VRREZvTFFSa2hFQXhaQzBFYUlSQU1XQXRCR3lFUURGY0xRUndoRUF4V0MwRWRJUkFNVlF0Qkh5RVFERlFMUVNFaEVBeFRDMEVqSVJBTVVndEJ4Z0FoRUF4UkMwRXVJUkFNVUF0Qkx5RVFERThMUVRzaEVBeE9DMEU5SVJBTVRRdEJ5QUFoRUF4TUMwSEpBQ0VRREVzTFFjc0FJUkFNU2d0QnpBQWhFQXhKQzBIT0FDRVFERWdMUWRFQUlSQU1Sd3RCMVFBaEVBeEdDMEhZQUNFUURFVUxRZGtBSVJBTVJBdEIyd0FoRUF4REMwSGtBQ0VRREVJTFFlVUFJUkFNUVF0QjhRQWhFQXhBQzBIMEFDRVFERDhMUVkwQklSQU1QZ3RCbHdFaEVBdzlDMEdwQVNFUUREd0xRYXdCSVJBTU93dEJ3QUVoRUF3NkMwRzVBU0VRRERrTFFhOEJJUkFNT0F0QnNRRWhFQXczQzBHeUFTRVFERFlMUWJRQklSQU1OUXRCdFFFaEVBdzBDMEc2QVNFUURETUxRYjBCSVJBTU1ndEJ2d0VoRUF3eEMwSEJBU0VRRERBTElBQkJBRFlDSENBQUlBUTJBaFFnQUVIcGk0Q0FBRFlDRUNBQVFSODJBZ3hCQUNFUURFZ0xJQUJCMndFMkFod2dBQ0FFTmdJVUlBQkIrcGFBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhIQ3lBQVFmZ0FOZ0ljSUFBZ0REWUNGQ0FBUWNxWWdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTVJnc2dBRUhSQURZQ0hDQUFJQVUyQWhRZ0FFR3dsNENBQURZQ0VDQUFRUlUyQWd4QkFDRVFERVVMSUFCQitRQTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNUkFzZ0FFSDRBRFlDSENBQUlBRTJBaFFnQUVIS21JQ0FBRFlDRUNBQVFSVTJBZ3hCQUNFUURFTUxJQUJCNUFBMkFod2dBQ0FCTmdJVUlBQkI0NWVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhDQ3lBQVFkY0FOZ0ljSUFBZ0FUWUNGQ0FBUWNtWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTVFRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFibU5nSUFBTmdJUUlBQkJHallDREVFQUlSQU1RQXNnQUVIQ0FEWUNIQ0FBSUFFMkFoUWdBRUhqbUlDQUFEWUNFQ0FBUVJVMkFneEJBQ0VRREQ4TElBQkJBRFlDQkNBQUlBOGdEeEN4Z0lDQUFDSUVSUTBCSUFCQk9qWUNIQ0FBSUFRMkFnd2dBQ0FQUVFGcU5nSVVRUUFoRUF3K0N5QUFLQUlFSVFRZ0FFRUFOZ0lFQWtBZ0FDQUVJQUVRc1lDQWdBQWlCRVVOQUNBQVFUczJBaHdnQUNBRU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTVBnc2dBVUVCYWlFQkRDMExJQTlCQVdvaEFRd3RDeUFBUVFBMkFod2dBQ0FQTmdJVUlBQkI1SktBZ0FBMkFoQWdBRUVFTmdJTVFRQWhFQXc3Q3lBQVFUWTJBaHdnQUNBRU5nSVVJQUFnQWpZQ0RFRUFJUkFNT2dzZ0FFRXVOZ0ljSUFBZ0RqWUNGQ0FBSUFRMkFneEJBQ0VRRERrTElBQkIwQUEyQWh3Z0FDQUJOZ0lVSUFCQmtaaUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBdzRDeUFOUVFGcUlRRU1MQXNnQUVFVk5nSWNJQUFnQVRZQ0ZDQUFRWUtaZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTmdzZ0FFRWJOZ0ljSUFBZ0FUWUNGQ0FBUVpHWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTU5Rc2dBRUVQTmdJY0lBQWdBVFlDRkNBQVFaR1hnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1OQXNnQUVFTE5nSWNJQUFnQVRZQ0ZDQUFRWkdYZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTXdzZ0FFRWFOZ0ljSUFBZ0FUWUNGQ0FBUVlLWmdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTU1nc2dBRUVMTmdJY0lBQWdBVFlDRkNBQVFZS1pnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1NUXNnQUVFS05nSWNJQUFnQVRZQ0ZDQUFRZVNXZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTUFzZ0FFRWVOZ0ljSUFBZ0FUWUNGQ0FBUWZtWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTUx3c2dBRUVBTmdJY0lBQWdFRFlDRkNBQVFkcU5nSUFBTmdJUUlBQkJGRFlDREVFQUlSQU1MZ3NnQUVFRU5nSWNJQUFnQVRZQ0ZDQUFRYkNZZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNTFFzZ0FFRUFOZ0lBSUF0QkFXb2hDd3RCdUFFaEVBd1NDeUFBUVFBMkFnQWdFRUVCYWlFQlFmVUFJUkFNRVFzZ0FTRUJBa0FnQUMwQUtVRUZSdzBBUWVNQUlSQU1FUXRCNGdBaEVBd1FDMEVBSVJBZ0FFRUFOZ0ljSUFCQjVKR0FnQUEyQWhBZ0FFRUhOZ0lNSUFBZ0ZFRUJhallDRkF3b0N5QUFRUUEyQWdBZ0YwRUJhaUVCUWNBQUlSQU1EZ3RCQVNFQkN5QUFJQUU2QUN3Z0FFRUFOZ0lBSUJkQkFXb2hBUXRCS0NFUURBc0xJQUVoQVF0Qk9DRVFEQWtMQWtBZ0FTSVBJQUpHRFFBRFFBSkFJQTh0QUFCQmdMNkFnQUJxTFFBQUlnRkJBVVlOQUNBQlFRSkhEUU1nRDBFQmFpRUJEQVFMSUE5QkFXb2lEeUFDUncwQUMwRStJUkFNSWd0QlBpRVFEQ0VMSUFCQkFEb0FMQ0FQSVFFTUFRdEJDeUVRREFZTFFUb2hFQXdGQ3lBQlFRRnFJUUZCTFNFUURBUUxJQUFnQVRvQUxDQUFRUUEyQWdBZ0ZrRUJhaUVCUVF3aEVBd0RDeUFBUVFBMkFnQWdGMEVCYWlFQlFRb2hFQXdDQ3lBQVFRQTJBZ0FMSUFCQkFEb0FMQ0FOSVFGQkNTRVFEQUFMQzBFQUlSQWdBRUVBTmdJY0lBQWdDellDRkNBQVFjMlFnSUFBTmdJUUlBQkJDVFlDREF3WEMwRUFJUkFnQUVFQU5nSWNJQUFnQ2pZQ0ZDQUFRZW1LZ0lBQU5nSVFJQUJCQ1RZQ0RBd1dDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0NUWUNGQ0FBUWJlUWdJQUFOZ0lRSUFCQkNUWUNEQXdWQzBFQUlSQWdBRUVBTmdJY0lBQWdDRFlDRkNBQVFaeVJnSUFBTmdJUUlBQkJDVFlDREF3VUMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRYzJRZ0lBQU5nSVFJQUJCQ1RZQ0RBd1RDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWVtS2dJQUFOZ0lRSUFCQkNUWUNEQXdTQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFiZVFnSUFBTmdJUUlBQkJDVFlDREF3UkMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRWnlSZ0lBQU5nSVFJQUJCQ1RZQ0RBd1FDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVplVmdJQUFOZ0lRSUFCQkR6WUNEQXdQQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFaZVZnSUFBTmdJUUlBQkJEellDREF3T0MwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRY0NTZ0lBQU5nSVFJQUJCQ3pZQ0RBd05DMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVpXSmdJQUFOZ0lRSUFCQkN6WUNEQXdNQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFlR1BnSUFBTmdJUUlBQkJDallDREF3TEMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRZnVQZ0lBQU5nSVFJQUJCQ2pZQ0RBd0tDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWZHWmdJQUFOZ0lRSUFCQkFqWUNEQXdKQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFjU1VnSUFBTmdJUUlBQkJBallDREF3SUMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRZktWZ0lBQU5nSVFJQUJCQWpZQ0RBd0hDeUFBUVFJMkFod2dBQ0FCTmdJVUlBQkJuSnFBZ0FBMkFoQWdBRUVXTmdJTVFRQWhFQXdHQzBFQklSQU1CUXRCMUFBaEVDQUJJZ1FnQWtZTkJDQURRUWhxSUFBZ0JDQUNRZGpDZ0lBQVFRb1F4WUNBZ0FBZ0F5Z0NEQ0VFSUFNb0FnZ09Bd0VFQWdBTEVNcUFnSUFBQUFzZ0FFRUFOZ0ljSUFCQnRacUFnQUEyQWhBZ0FFRVhOZ0lNSUFBZ0JFRUJhallDRkVFQUlSQU1BZ3NnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRY3FhZ0lBQU5nSVFJQUJCQ1RZQ0RFRUFJUkFNQVFzQ1FDQUJJZ1FnQWtjTkFFRWlJUkFNQVFzZ0FFR0pnSUNBQURZQ0NDQUFJQVEyQWdSQklTRVFDeUFEUVJCcUpJQ0FnSUFBSUJBTHJ3RUJBbjhnQVNnQ0FDRUdBa0FDUUNBQ0lBTkdEUUFnQkNBR2FpRUVJQVlnQTJvZ0Ftc2hCeUFDSUFaQmYzTWdCV29pQm1vaEJRTkFBa0FnQWkwQUFDQUVMUUFBUmcwQVFRSWhCQXdEQ3dKQUlBWU5BRUVBSVFRZ0JTRUNEQU1MSUFaQmYyb2hCaUFFUVFGcUlRUWdBa0VCYWlJQ0lBTkhEUUFMSUFjaEJpQURJUUlMSUFCQkFUWUNBQ0FCSUFZMkFnQWdBQ0FDTmdJRUR3c2dBVUVBTmdJQUlBQWdCRFlDQUNBQUlBSTJBZ1FMQ2dBZ0FCREhnSUNBQUF2eU5nRUxmeU9BZ0lDQUFFRVFheUlCSklDQWdJQUFBa0JCQUNnQ29OQ0FnQUFOQUVFQUVNdUFnSUFBUVlEVWhJQUFheUlDUWRrQVNRMEFRUUFoQXdKQVFRQW9BdURUZ0lBQUlnUU5BRUVBUW44M0F1elRnSUFBUVFCQ2dJQ0VnSUNBd0FBM0F1VFRnSUFBUVFBZ0FVRUlha0Z3Y1VIWXF0V3FCWE1pQkRZQzROT0FnQUJCQUVFQU5nTDAwNENBQUVFQVFRQTJBc1RUZ0lBQUMwRUFJQUkyQXN6VGdJQUFRUUJCZ05TRWdBQTJBc2pUZ0lBQVFRQkJnTlNFZ0FBMkFwalFnSUFBUVFBZ0JEWUNyTkNBZ0FCQkFFRi9OZ0tvMElDQUFBTkFJQU5CeE5DQWdBQnFJQU5CdU5DQWdBQnFJZ1EyQWdBZ0JDQURRYkRRZ0lBQWFpSUZOZ0lBSUFOQnZOQ0FnQUJxSUFVMkFnQWdBMEhNMElDQUFHb2dBMEhBMElDQUFHb2lCVFlDQUNBRklBUTJBZ0FnQTBIVTBJQ0FBR29nQTBISTBJQ0FBR29pQkRZQ0FDQUVJQVUyQWdBZ0EwSFEwSUNBQUdvZ0JEWUNBQ0FEUVNCcUlnTkJnQUpIRFFBTFFZRFVoSUFBUVhoQmdOU0VnQUJyUVE5eFFRQkJnTlNFZ0FCQkNHcEJEM0ViSWdOcUlnUkJCR29nQWtGSWFpSUZJQU5ySWdOQkFYSTJBZ0JCQUVFQUtBTHcwNENBQURZQ3BOQ0FnQUJCQUNBRE5nS1UwSUNBQUVFQUlBUTJBcURRZ0lBQVFZRFVoSUFBSUFWcVFUZzJBZ1FMQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFJQUJCN0FGTERRQUNRRUVBS0FLSTBJQ0FBQ0lHUVJBZ0FFRVRha0Z3Y1NBQVFRdEpHeUlDUVFOMklnUjJJZ05CQTNGRkRRQUNRQUpBSUFOQkFYRWdCSEpCQVhNaUJVRURkQ0lFUWJEUWdJQUFhaUlESUFSQnVOQ0FnQUJxS0FJQUlnUW9BZ2dpQWtjTkFFRUFJQVpCZmlBRmQzRTJBb2pRZ0lBQURBRUxJQU1nQWpZQ0NDQUNJQU0yQWd3TElBUkJDR29oQXlBRUlBVkJBM1FpQlVFRGNqWUNCQ0FFSUFWcUlnUWdCQ2dDQkVFQmNqWUNCQXdNQ3lBQ1FRQW9BcERRZ0lBQUlnZE5EUUVDUUNBRFJRMEFBa0FDUUNBRElBUjBRUUlnQkhRaUEwRUFJQU5yY25FaUEwRUFJQU5yY1VGL2FpSURJQU5CREhaQkVIRWlBM1lpQkVFRmRrRUljU0lGSUFOeUlBUWdCWFlpQTBFQ2RrRUVjU0lFY2lBRElBUjJJZ05CQVhaQkFuRWlCSElnQXlBRWRpSURRUUYyUVFGeElnUnlJQU1nQkhacUlnUkJBM1FpQTBHdzBJQ0FBR29pQlNBRFFialFnSUFBYWlnQ0FDSURLQUlJSWdCSERRQkJBQ0FHUVg0Z0JIZHhJZ1kyQW9qUWdJQUFEQUVMSUFVZ0FEWUNDQ0FBSUFVMkFnd0xJQU1nQWtFRGNqWUNCQ0FESUFSQkEzUWlCR29nQkNBQ2F5SUZOZ0lBSUFNZ0Ftb2lBQ0FGUVFGeU5nSUVBa0FnQjBVTkFDQUhRWGh4UWJEUWdJQUFhaUVDUVFBb0FwelFnSUFBSVFRQ1FBSkFJQVpCQVNBSFFRTjJkQ0lJY1EwQVFRQWdCaUFJY2pZQ2lOQ0FnQUFnQWlFSURBRUxJQUlvQWdnaENBc2dDQ0FFTmdJTUlBSWdCRFlDQ0NBRUlBSTJBZ3dnQkNBSU5nSUlDeUFEUVFocUlRTkJBQ0FBTmdLYzBJQ0FBRUVBSUFVMkFwRFFnSUFBREF3TFFRQW9Bb3pRZ0lBQUlnbEZEUUVnQ1VFQUlBbHJjVUYvYWlJRElBTkJESFpCRUhFaUEzWWlCRUVGZGtFSWNTSUZJQU55SUFRZ0JYWWlBMEVDZGtFRWNTSUVjaUFESUFSMklnTkJBWFpCQW5FaUJISWdBeUFFZGlJRFFRRjJRUUZ4SWdSeUlBTWdCSFpxUVFKMFFialNnSUFBYWlnQ0FDSUFLQUlFUVhoeElBSnJJUVFnQUNFRkFrQURRQUpBSUFVb0FoQWlBdzBBSUFWQkZHb29BZ0FpQTBVTkFnc2dBeWdDQkVGNGNTQUNheUlGSUFRZ0JTQUVTU0lGR3lFRUlBTWdBQ0FGR3lFQUlBTWhCUXdBQ3dzZ0FDZ0NHQ0VLQWtBZ0FDZ0NEQ0lJSUFCR0RRQWdBQ2dDQ0NJRFFRQW9BcGpRZ0lBQVNSb2dDQ0FETmdJSUlBTWdDRFlDREF3TEN3SkFJQUJCRkdvaUJTZ0NBQ0lERFFBZ0FDZ0NFQ0lEUlEwRElBQkJFR29oQlFzRFFDQUZJUXNnQXlJSVFSUnFJZ1VvQWdBaUF3MEFJQWhCRUdvaEJTQUlLQUlRSWdNTkFBc2dDMEVBTmdJQURBb0xRWDhoQWlBQVFiOS9TdzBBSUFCQkUyb2lBMEZ3Y1NFQ1FRQW9Bb3pRZ0lBQUlnZEZEUUJCQUNFTEFrQWdBa0dBQWtrTkFFRWZJUXNnQWtILy8vOEhTdzBBSUFOQkNIWWlBeUFEUVlEK1AycEJFSFpCQ0hFaUEzUWlCQ0FFUVlEZ0gycEJFSFpCQkhFaUJIUWlCU0FGUVlDQUQycEJFSFpCQW5FaUJYUkJEM1lnQXlBRWNpQUZjbXNpQTBFQmRDQUNJQU5CRldwMlFRRnhja0VjYWlFTEMwRUFJQUpySVFRQ1FBSkFBa0FDUUNBTFFRSjBRYmpTZ0lBQWFpZ0NBQ0lGRFFCQkFDRURRUUFoQ0F3QkMwRUFJUU1nQWtFQVFSa2dDMEVCZG1zZ0MwRWZSaHQwSVFCQkFDRUlBMEFDUUNBRktBSUVRWGh4SUFKcklnWWdCRThOQUNBR0lRUWdCU0VJSUFZTkFFRUFJUVFnQlNFSUlBVWhBd3dEQ3lBRElBVkJGR29vQWdBaUJpQUdJQVVnQUVFZGRrRUVjV3BCRUdvb0FnQWlCVVliSUFNZ0Joc2hBeUFBUVFGMElRQWdCUTBBQ3dzQ1FDQURJQWh5RFFCQkFDRUlRUUlnQzNRaUEwRUFJQU5yY2lBSGNTSURSUTBESUFOQkFDQURhM0ZCZjJvaUF5QURRUXgyUVJCeElnTjJJZ1ZCQlhaQkNIRWlBQ0FEY2lBRklBQjJJZ05CQW5aQkJIRWlCWElnQXlBRmRpSURRUUYyUVFKeElnVnlJQU1nQlhZaUEwRUJka0VCY1NJRmNpQURJQVYyYWtFQ2RFRzQwb0NBQUdvb0FnQWhBd3NnQTBVTkFRc0RRQ0FES0FJRVFYaHhJQUpySWdZZ0JFa2hBQUpBSUFNb0FoQWlCUTBBSUFOQkZHb29BZ0FoQlFzZ0JpQUVJQUFiSVFRZ0F5QUlJQUFiSVFnZ0JTRURJQVVOQUFzTElBaEZEUUFnQkVFQUtBS1EwSUNBQUNBQ2EwOE5BQ0FJS0FJWUlRc0NRQ0FJS0FJTUlnQWdDRVlOQUNBSUtBSUlJZ05CQUNnQ21OQ0FnQUJKR2lBQUlBTTJBZ2dnQXlBQU5nSU1EQWtMQWtBZ0NFRVVhaUlGS0FJQUlnTU5BQ0FJS0FJUUlnTkZEUU1nQ0VFUWFpRUZDd05BSUFVaEJpQURJZ0JCRkdvaUJTZ0NBQ0lERFFBZ0FFRVFhaUVGSUFBb0FoQWlBdzBBQ3lBR1FRQTJBZ0FNQ0FzQ1FFRUFLQUtRMElDQUFDSURJQUpKRFFCQkFDZ0NuTkNBZ0FBaEJBSkFBa0FnQXlBQ2F5SUZRUkJKRFFBZ0JDQUNhaUlBSUFWQkFYSTJBZ1JCQUNBRk5nS1EwSUNBQUVFQUlBQTJBcHpRZ0lBQUlBUWdBMm9nQlRZQ0FDQUVJQUpCQTNJMkFnUU1BUXNnQkNBRFFRTnlOZ0lFSUFRZ0Eyb2lBeUFES0FJRVFRRnlOZ0lFUVFCQkFEWUNuTkNBZ0FCQkFFRUFOZ0tRMElDQUFBc2dCRUVJYWlFRERBb0xBa0JCQUNnQ2xOQ0FnQUFpQUNBQ1RRMEFRUUFvQXFEUWdJQUFJZ01nQW1vaUJDQUFJQUpySWdWQkFYSTJBZ1JCQUNBRk5nS1UwSUNBQUVFQUlBUTJBcURRZ0lBQUlBTWdBa0VEY2pZQ0JDQURRUWhxSVFNTUNnc0NRQUpBUVFBb0F1RFRnSUFBUlEwQVFRQW9BdWpUZ0lBQUlRUU1BUXRCQUVKL053THMwNENBQUVFQVFvQ0FoSUNBZ01BQU53TGswNENBQUVFQUlBRkJER3BCY0hGQjJLclZxZ1Z6TmdMZzA0Q0FBRUVBUVFBMkF2VFRnSUFBUVFCQkFEWUN4Tk9BZ0FCQmdJQUVJUVFMUVFBaEF3SkFJQVFnQWtISEFHb2lCMm9pQmtFQUlBUnJJZ3R4SWdnZ0Frc05BRUVBUVRBMkF2alRnSUFBREFvTEFrQkJBQ2dDd05PQWdBQWlBMFVOQUFKQVFRQW9BcmpUZ0lBQUlnUWdDR29pQlNBRVRRMEFJQVVnQTAwTkFRdEJBQ0VEUVFCQk1EWUMrTk9BZ0FBTUNndEJBQzBBeE5PQWdBQkJCSEVOQkFKQUFrQUNRRUVBS0FLZzBJQ0FBQ0lFUlEwQVFjalRnSUFBSVFNRFFBSkFJQU1vQWdBaUJTQUVTdzBBSUFVZ0F5Z0NCR29nQkVzTkF3c2dBeWdDQ0NJRERRQUxDMEVBRU11QWdJQUFJZ0JCZjBZTkJTQUlJUVlDUUVFQUtBTGswNENBQUNJRFFYOXFJZ1FnQUhGRkRRQWdDQ0FBYXlBRUlBQnFRUUFnQTJ0eGFpRUdDeUFHSUFKTkRRVWdCa0grLy8vL0Iwc05CUUpBUVFBb0FzRFRnSUFBSWdORkRRQkJBQ2dDdU5PQWdBQWlCQ0FHYWlJRklBUk5EUVlnQlNBRFN3MEdDeUFHRU11QWdJQUFJZ01nQUVjTkFRd0hDeUFHSUFCcklBdHhJZ1pCL3YvLy93ZExEUVFnQmhETGdJQ0FBQ0lBSUFNb0FnQWdBeWdDQkdwR0RRTWdBQ0VEQ3dKQUlBTkJmMFlOQUNBQ1FjZ0FhaUFHVFEwQUFrQWdCeUFHYTBFQUtBTG8wNENBQUNJRWFrRUFJQVJyY1NJRVFmNy8vLzhIVFEwQUlBTWhBQXdIQ3dKQUlBUVF5NENBZ0FCQmYwWU5BQ0FFSUFacUlRWWdBeUVBREFjTFFRQWdCbXNReTRDQWdBQWFEQVFMSUFNaEFDQURRWDlIRFFVTUF3dEJBQ0VJREFjTFFRQWhBQXdGQ3lBQVFYOUhEUUlMUVFCQkFDZ0N4Tk9BZ0FCQkJISTJBc1RUZ0lBQUN5QUlRZjcvLy84SFN3MEJJQWdReTRDQWdBQWhBRUVBRU11QWdJQUFJUU1nQUVGL1JnMEJJQU5CZjBZTkFTQUFJQU5QRFFFZ0F5QUFheUlHSUFKQk9HcE5EUUVMUVFCQkFDZ0N1Tk9BZ0FBZ0Jtb2lBellDdU5PQWdBQUNRQ0FEUVFBb0FyelRnSUFBVFEwQVFRQWdBellDdk5PQWdBQUxBa0FDUUFKQUFrQkJBQ2dDb05DQWdBQWlCRVVOQUVISTA0Q0FBQ0VEQTBBZ0FDQURLQUlBSWdVZ0F5Z0NCQ0lJYWtZTkFpQURLQUlJSWdNTkFBd0RDd3NDUUFKQVFRQW9BcGpRZ0lBQUlnTkZEUUFnQUNBRFR3MEJDMEVBSUFBMkFwalFnSUFBQzBFQUlRTkJBQ0FHTmdMTTA0Q0FBRUVBSUFBMkFzalRnSUFBUVFCQmZ6WUNxTkNBZ0FCQkFFRUFLQUxnMDRDQUFEWUNyTkNBZ0FCQkFFRUFOZ0xVMDRDQUFBTkFJQU5CeE5DQWdBQnFJQU5CdU5DQWdBQnFJZ1EyQWdBZ0JDQURRYkRRZ0lBQWFpSUZOZ0lBSUFOQnZOQ0FnQUJxSUFVMkFnQWdBMEhNMElDQUFHb2dBMEhBMElDQUFHb2lCVFlDQUNBRklBUTJBZ0FnQTBIVTBJQ0FBR29nQTBISTBJQ0FBR29pQkRZQ0FDQUVJQVUyQWdBZ0EwSFEwSUNBQUdvZ0JEWUNBQ0FEUVNCcUlnTkJnQUpIRFFBTElBQkJlQ0FBYTBFUGNVRUFJQUJCQ0dwQkQzRWJJZ05xSWdRZ0JrRklhaUlGSUFOcklnTkJBWEkyQWdSQkFFRUFLQUx3MDRDQUFEWUNwTkNBZ0FCQkFDQUROZ0tVMElDQUFFRUFJQVEyQXFEUWdJQUFJQUFnQldwQk9EWUNCQXdDQ3lBRExRQU1RUWh4RFFBZ0JDQUZTUTBBSUFRZ0FFOE5BQ0FFUVhnZ0JHdEJEM0ZCQUNBRVFRaHFRUTl4R3lJRmFpSUFRUUFvQXBUUWdJQUFJQVpxSWdzZ0JXc2lCVUVCY2pZQ0JDQURJQWdnQm1vMkFnUkJBRUVBS0FMdzA0Q0FBRFlDcE5DQWdBQkJBQ0FGTmdLVTBJQ0FBRUVBSUFBMkFxRFFnSUFBSUFRZ0MycEJPRFlDQkF3QkN3SkFJQUJCQUNnQ21OQ0FnQUFpQ0U4TkFFRUFJQUEyQXBqUWdJQUFJQUFoQ0FzZ0FDQUdhaUVGUWNqVGdJQUFJUU1DUUFKQUFrQUNRQUpBQWtBQ1FBTkFJQU1vQWdBZ0JVWU5BU0FES0FJSUlnTU5BQXdDQ3dzZ0F5MEFERUVJY1VVTkFRdEJ5Tk9BZ0FBaEF3TkFBa0FnQXlnQ0FDSUZJQVJMRFFBZ0JTQURLQUlFYWlJRklBUkxEUU1MSUFNb0FnZ2hBd3dBQ3dzZ0F5QUFOZ0lBSUFNZ0F5Z0NCQ0FHYWpZQ0JDQUFRWGdnQUd0QkQzRkJBQ0FBUVFocVFROXhHMm9pQ3lBQ1FRTnlOZ0lFSUFWQmVDQUZhMEVQY1VFQUlBVkJDR3BCRDNFYmFpSUdJQXNnQW1vaUFtc2hBd0pBSUFZZ0JFY05BRUVBSUFJMkFxRFFnSUFBUVFCQkFDZ0NsTkNBZ0FBZ0Eyb2lBellDbE5DQWdBQWdBaUFEUVFGeU5nSUVEQU1MQWtBZ0JrRUFLQUtjMElDQUFFY05BRUVBSUFJMkFwelFnSUFBUVFCQkFDZ0NrTkNBZ0FBZ0Eyb2lBellDa05DQWdBQWdBaUFEUVFGeU5nSUVJQUlnQTJvZ0F6WUNBQXdEQ3dKQUlBWW9BZ1FpQkVFRGNVRUJSdzBBSUFSQmVIRWhCd0pBQWtBZ0JFSC9BVXNOQUNBR0tBSUlJZ1VnQkVFRGRpSUlRUU4wUWJEUWdJQUFhaUlBUmhvQ1FDQUdLQUlNSWdRZ0JVY05BRUVBUVFBb0FvalFnSUFBUVg0Z0NIZHhOZ0tJMElDQUFBd0NDeUFFSUFCR0dpQUVJQVUyQWdnZ0JTQUVOZ0lNREFFTElBWW9BaGdoQ1FKQUFrQWdCaWdDRENJQUlBWkdEUUFnQmlnQ0NDSUVJQWhKR2lBQUlBUTJBZ2dnQkNBQU5nSU1EQUVMQWtBZ0JrRVVhaUlFS0FJQUlnVU5BQ0FHUVJCcUlnUW9BZ0FpQlEwQVFRQWhBQXdCQ3dOQUlBUWhDQ0FGSWdCQkZHb2lCQ2dDQUNJRkRRQWdBRUVRYWlFRUlBQW9BaEFpQlEwQUN5QUlRUUEyQWdBTElBbEZEUUFDUUFKQUlBWWdCaWdDSENJRlFRSjBRYmpTZ0lBQWFpSUVLQUlBUncwQUlBUWdBRFlDQUNBQURRRkJBRUVBS0FLTTBJQ0FBRUYrSUFWM2NUWUNqTkNBZ0FBTUFnc2dDVUVRUVJRZ0NTZ0NFQ0FHUmh0cUlBQTJBZ0FnQUVVTkFRc2dBQ0FKTmdJWUFrQWdCaWdDRUNJRVJRMEFJQUFnQkRZQ0VDQUVJQUEyQWhnTElBWW9BaFFpQkVVTkFDQUFRUlJxSUFRMkFnQWdCQ0FBTmdJWUN5QUhJQU5xSVFNZ0JpQUhhaUlHS0FJRUlRUUxJQVlnQkVGK2NUWUNCQ0FDSUFOcUlBTTJBZ0FnQWlBRFFRRnlOZ0lFQWtBZ0EwSC9BVXNOQUNBRFFYaHhRYkRRZ0lBQWFpRUVBa0FDUUVFQUtBS0kwSUNBQUNJRlFRRWdBMEVEZG5RaUEzRU5BRUVBSUFVZ0EzSTJBb2pRZ0lBQUlBUWhBd3dCQ3lBRUtBSUlJUU1MSUFNZ0FqWUNEQ0FFSUFJMkFnZ2dBaUFFTmdJTUlBSWdBellDQ0F3REMwRWZJUVFDUUNBRFFmLy8vd2RMRFFBZ0EwRUlkaUlFSUFSQmdQNC9ha0VRZGtFSWNTSUVkQ0lGSUFWQmdPQWZha0VRZGtFRWNTSUZkQ0lBSUFCQmdJQVBha0VRZGtFQ2NTSUFkRUVQZGlBRUlBVnlJQUJ5YXlJRVFRRjBJQU1nQkVFVmFuWkJBWEZ5UVJ4cUlRUUxJQUlnQkRZQ0hDQUNRZ0EzQWhBZ0JFRUNkRUc0MG9DQUFHb2hCUUpBUVFBb0FvelFnSUFBSWdCQkFTQUVkQ0lJY1EwQUlBVWdBallDQUVFQUlBQWdDSEkyQW96UWdJQUFJQUlnQlRZQ0dDQUNJQUkyQWdnZ0FpQUNOZ0lNREFNTElBTkJBRUVaSUFSQkFYWnJJQVJCSDBZYmRDRUVJQVVvQWdBaEFBTkFJQUFpQlNnQ0JFRjRjU0FEUmcwQ0lBUkJIWFloQUNBRVFRRjBJUVFnQlNBQVFRUnhha0VRYWlJSUtBSUFJZ0FOQUFzZ0NDQUNOZ0lBSUFJZ0JUWUNHQ0FDSUFJMkFnd2dBaUFDTmdJSURBSUxJQUJCZUNBQWEwRVBjVUVBSUFCQkNHcEJEM0ViSWdOcUlnc2dCa0ZJYWlJSUlBTnJJZ05CQVhJMkFnUWdBQ0FJYWtFNE5nSUVJQVFnQlVFM0lBVnJRUTl4UVFBZ0JVRkpha0VQY1J0cVFVRnFJZ2dnQ0NBRVFSQnFTUnNpQ0VFak5nSUVRUUJCQUNnQzhOT0FnQUEyQXFUUWdJQUFRUUFnQXpZQ2xOQ0FnQUJCQUNBTE5nS2cwSUNBQUNBSVFSQnFRUUFwQXREVGdJQUFOd0lBSUFoQkFDa0N5Tk9BZ0FBM0FnaEJBQ0FJUVFocU5nTFEwNENBQUVFQUlBWTJBc3pUZ0lBQVFRQWdBRFlDeU5PQWdBQkJBRUVBTmdMVTA0Q0FBQ0FJUVNScUlRTURRQ0FEUVFjMkFnQWdBMEVFYWlJRElBVkpEUUFMSUFnZ0JFWU5BeUFJSUFnb0FnUkJmbkUyQWdRZ0NDQUlJQVJySWdBMkFnQWdCQ0FBUVFGeU5nSUVBa0FnQUVIL0FVc05BQ0FBUVhoeFFiRFFnSUFBYWlFREFrQUNRRUVBS0FLSTBJQ0FBQ0lGUVFFZ0FFRURkblFpQUhFTkFFRUFJQVVnQUhJMkFvalFnSUFBSUFNaEJRd0JDeUFES0FJSUlRVUxJQVVnQkRZQ0RDQURJQVEyQWdnZ0JDQUROZ0lNSUFRZ0JUWUNDQXdFQzBFZklRTUNRQ0FBUWYvLy93ZExEUUFnQUVFSWRpSURJQU5CZ1A0L2FrRVFka0VJY1NJRGRDSUZJQVZCZ09BZmFrRVFka0VFY1NJRmRDSUlJQWhCZ0lBUGFrRVFka0VDY1NJSWRFRVBkaUFESUFWeUlBaHlheUlEUVFGMElBQWdBMEVWYW5aQkFYRnlRUnhxSVFNTElBUWdBellDSENBRVFnQTNBaEFnQTBFQ2RFRzQwb0NBQUdvaEJRSkFRUUFvQW96UWdJQUFJZ2hCQVNBRGRDSUdjUTBBSUFVZ0JEWUNBRUVBSUFnZ0JuSTJBb3pRZ0lBQUlBUWdCVFlDR0NBRUlBUTJBZ2dnQkNBRU5nSU1EQVFMSUFCQkFFRVpJQU5CQVhacklBTkJIMFliZENFRElBVW9BZ0FoQ0FOQUlBZ2lCU2dDQkVGNGNTQUFSZzBESUFOQkhYWWhDQ0FEUVFGMElRTWdCU0FJUVFSeGFrRVFhaUlHS0FJQUlnZ05BQXNnQmlBRU5nSUFJQVFnQlRZQ0dDQUVJQVEyQWd3Z0JDQUVOZ0lJREFNTElBVW9BZ2dpQXlBQ05nSU1JQVVnQWpZQ0NDQUNRUUEyQWhnZ0FpQUZOZ0lNSUFJZ0F6WUNDQXNnQzBFSWFpRUREQVVMSUFVb0FnZ2lBeUFFTmdJTUlBVWdCRFlDQ0NBRVFRQTJBaGdnQkNBRk5nSU1JQVFnQXpZQ0NBdEJBQ2dDbE5DQWdBQWlBeUFDVFEwQVFRQW9BcURRZ0lBQUlnUWdBbW9pQlNBRElBSnJJZ05CQVhJMkFnUkJBQ0FETmdLVTBJQ0FBRUVBSUFVMkFxRFFnSUFBSUFRZ0FrRURjallDQkNBRVFRaHFJUU1NQXd0QkFDRURRUUJCTURZQytOT0FnQUFNQWdzQ1FDQUxSUTBBQWtBQ1FDQUlJQWdvQWh3aUJVRUNkRUc0MG9DQUFHb2lBeWdDQUVjTkFDQURJQUEyQWdBZ0FBMEJRUUFnQjBGK0lBVjNjU0lITmdLTTBJQ0FBQXdDQ3lBTFFSQkJGQ0FMS0FJUUlBaEdHMm9nQURZQ0FDQUFSUTBCQ3lBQUlBczJBaGdDUUNBSUtBSVFJZ05GRFFBZ0FDQUROZ0lRSUFNZ0FEWUNHQXNnQ0VFVWFpZ0NBQ0lEUlEwQUlBQkJGR29nQXpZQ0FDQURJQUEyQWhnTEFrQUNRQ0FFUVE5TERRQWdDQ0FFSUFKcUlnTkJBM0kyQWdRZ0NDQURhaUlESUFNb0FnUkJBWEkyQWdRTUFRc2dDQ0FDYWlJQUlBUkJBWEkyQWdRZ0NDQUNRUU55TmdJRUlBQWdCR29nQkRZQ0FBSkFJQVJCL3dGTERRQWdCRUY0Y1VHdzBJQ0FBR29oQXdKQUFrQkJBQ2dDaU5DQWdBQWlCVUVCSUFSQkEzWjBJZ1J4RFFCQkFDQUZJQVJ5TmdLSTBJQ0FBQ0FESVFRTUFRc2dBeWdDQ0NFRUN5QUVJQUEyQWd3Z0F5QUFOZ0lJSUFBZ0F6WUNEQ0FBSUFRMkFnZ01BUXRCSHlFREFrQWdCRUgvLy84SFN3MEFJQVJCQ0hZaUF5QURRWUQrUDJwQkVIWkJDSEVpQTNRaUJTQUZRWURnSDJwQkVIWkJCSEVpQlhRaUFpQUNRWUNBRDJwQkVIWkJBbkVpQW5SQkQzWWdBeUFGY2lBQ2Ntc2lBMEVCZENBRUlBTkJGV3AyUVFGeGNrRWNhaUVEQ3lBQUlBTTJBaHdnQUVJQU53SVFJQU5CQW5SQnVOS0FnQUJxSVFVQ1FDQUhRUUVnQTNRaUFuRU5BQ0FGSUFBMkFnQkJBQ0FISUFKeU5nS00wSUNBQUNBQUlBVTJBaGdnQUNBQU5nSUlJQUFnQURZQ0RBd0JDeUFFUVFCQkdTQURRUUYyYXlBRFFSOUdHM1FoQXlBRktBSUFJUUlDUUFOQUlBSWlCU2dDQkVGNGNTQUVSZzBCSUFOQkhYWWhBaUFEUVFGMElRTWdCU0FDUVFSeGFrRVFhaUlHS0FJQUlnSU5BQXNnQmlBQU5nSUFJQUFnQlRZQ0dDQUFJQUEyQWd3Z0FDQUFOZ0lJREFFTElBVW9BZ2dpQXlBQU5nSU1JQVVnQURZQ0NDQUFRUUEyQWhnZ0FDQUZOZ0lNSUFBZ0F6WUNDQXNnQ0VFSWFpRUREQUVMQWtBZ0NrVU5BQUpBQWtBZ0FDQUFLQUljSWdWQkFuUkJ1TktBZ0FCcUlnTW9BZ0JIRFFBZ0F5QUlOZ0lBSUFnTkFVRUFJQWxCZmlBRmQzRTJBb3pRZ0lBQURBSUxJQXBCRUVFVUlBb29BaEFnQUVZYmFpQUlOZ0lBSUFoRkRRRUxJQWdnQ2pZQ0dBSkFJQUFvQWhBaUEwVU5BQ0FJSUFNMkFoQWdBeUFJTmdJWUN5QUFRUlJxS0FJQUlnTkZEUUFnQ0VFVWFpQUROZ0lBSUFNZ0NEWUNHQXNDUUFKQUlBUkJEMHNOQUNBQUlBUWdBbW9pQTBFRGNqWUNCQ0FBSUFOcUlnTWdBeWdDQkVFQmNqWUNCQXdCQ3lBQUlBSnFJZ1VnQkVFQmNqWUNCQ0FBSUFKQkEzSTJBZ1FnQlNBRWFpQUVOZ0lBQWtBZ0IwVU5BQ0FIUVhoeFFiRFFnSUFBYWlFQ1FRQW9BcHpRZ0lBQUlRTUNRQUpBUVFFZ0IwRURkblFpQ0NBR2NRMEFRUUFnQ0NBR2NqWUNpTkNBZ0FBZ0FpRUlEQUVMSUFJb0FnZ2hDQXNnQ0NBRE5nSU1JQUlnQXpZQ0NDQURJQUkyQWd3Z0F5QUlOZ0lJQzBFQUlBVTJBcHpRZ0lBQVFRQWdCRFlDa05DQWdBQUxJQUJCQ0dvaEF3c2dBVUVRYWlTQWdJQ0FBQ0FEQ3dvQUlBQVF5WUNBZ0FBTDRnMEJCMzhDUUNBQVJRMEFJQUJCZUdvaUFTQUFRWHhxS0FJQUlnSkJlSEVpQUdvaEF3SkFJQUpCQVhFTkFDQUNRUU54UlEwQklBRWdBU2dDQUNJQ2F5SUJRUUFvQXBqUWdJQUFJZ1JKRFFFZ0FpQUFhaUVBQWtBZ0FVRUFLQUtjMElDQUFFWU5BQUpBSUFKQi93RkxEUUFnQVNnQ0NDSUVJQUpCQTNZaUJVRURkRUd3MElDQUFHb2lCa1lhQWtBZ0FTZ0NEQ0lDSUFSSERRQkJBRUVBS0FLSTBJQ0FBRUYrSUFWM2NUWUNpTkNBZ0FBTUF3c2dBaUFHUmhvZ0FpQUVOZ0lJSUFRZ0FqWUNEQXdDQ3lBQktBSVlJUWNDUUFKQUlBRW9BZ3dpQmlBQlJnMEFJQUVvQWdnaUFpQUVTUm9nQmlBQ05nSUlJQUlnQmpZQ0RBd0JDd0pBSUFGQkZHb2lBaWdDQUNJRURRQWdBVUVRYWlJQ0tBSUFJZ1FOQUVFQUlRWU1BUXNEUUNBQ0lRVWdCQ0lHUVJScUlnSW9BZ0FpQkEwQUlBWkJFR29oQWlBR0tBSVFJZ1FOQUFzZ0JVRUFOZ0lBQ3lBSFJRMEJBa0FDUUNBQklBRW9BaHdpQkVFQ2RFRzQwb0NBQUdvaUFpZ0NBRWNOQUNBQ0lBWTJBZ0FnQmcwQlFRQkJBQ2dDak5DQWdBQkJmaUFFZDNFMkFvelFnSUFBREFNTElBZEJFRUVVSUFjb0FoQWdBVVliYWlBR05nSUFJQVpGRFFJTElBWWdCellDR0FKQUlBRW9BaEFpQWtVTkFDQUdJQUkyQWhBZ0FpQUdOZ0lZQ3lBQktBSVVJZ0pGRFFFZ0JrRVVhaUFDTmdJQUlBSWdCallDR0F3QkN5QURLQUlFSWdKQkEzRkJBMGNOQUNBRElBSkJmbkUyQWdSQkFDQUFOZ0tRMElDQUFDQUJJQUJxSUFBMkFnQWdBU0FBUVFGeU5nSUVEd3NnQVNBRFR3MEFJQU1vQWdRaUFrRUJjVVVOQUFKQUFrQWdBa0VDY1EwQUFrQWdBMEVBS0FLZzBJQ0FBRWNOQUVFQUlBRTJBcURRZ0lBQVFRQkJBQ2dDbE5DQWdBQWdBR29pQURZQ2xOQ0FnQUFnQVNBQVFRRnlOZ0lFSUFGQkFDZ0NuTkNBZ0FCSERRTkJBRUVBTmdLUTBJQ0FBRUVBUVFBMkFwelFnSUFBRHdzQ1FDQURRUUFvQXB6UWdJQUFSdzBBUVFBZ0FUWUNuTkNBZ0FCQkFFRUFLQUtRMElDQUFDQUFhaUlBTmdLUTBJQ0FBQ0FCSUFCQkFYSTJBZ1FnQVNBQWFpQUFOZ0lBRHdzZ0FrRjRjU0FBYWlFQUFrQUNRQ0FDUWY4QlN3MEFJQU1vQWdnaUJDQUNRUU4ySWdWQkEzUkJzTkNBZ0FCcUlnWkdHZ0pBSUFNb0Fnd2lBaUFFUncwQVFRQkJBQ2dDaU5DQWdBQkJmaUFGZDNFMkFvalFnSUFBREFJTElBSWdCa1lhSUFJZ0JEWUNDQ0FFSUFJMkFnd01BUXNnQXlnQ0dDRUhBa0FDUUNBREtBSU1JZ1lnQTBZTkFDQURLQUlJSWdKQkFDZ0NtTkNBZ0FCSkdpQUdJQUkyQWdnZ0FpQUdOZ0lNREFFTEFrQWdBMEVVYWlJQ0tBSUFJZ1FOQUNBRFFSQnFJZ0lvQWdBaUJBMEFRUUFoQmd3QkN3TkFJQUloQlNBRUlnWkJGR29pQWlnQ0FDSUVEUUFnQmtFUWFpRUNJQVlvQWhBaUJBMEFDeUFGUVFBMkFnQUxJQWRGRFFBQ1FBSkFJQU1nQXlnQ0hDSUVRUUowUWJqU2dJQUFhaUlDS0FJQVJ3MEFJQUlnQmpZQ0FDQUdEUUZCQUVFQUtBS00wSUNBQUVGK0lBUjNjVFlDak5DQWdBQU1BZ3NnQjBFUVFSUWdCeWdDRUNBRFJodHFJQVkyQWdBZ0JrVU5BUXNnQmlBSE5nSVlBa0FnQXlnQ0VDSUNSUTBBSUFZZ0FqWUNFQ0FDSUFZMkFoZ0xJQU1vQWhRaUFrVU5BQ0FHUVJScUlBSTJBZ0FnQWlBR05nSVlDeUFCSUFCcUlBQTJBZ0FnQVNBQVFRRnlOZ0lFSUFGQkFDZ0NuTkNBZ0FCSERRRkJBQ0FBTmdLUTBJQ0FBQThMSUFNZ0FrRitjVFlDQkNBQklBQnFJQUEyQWdBZ0FTQUFRUUZ5TmdJRUN3SkFJQUJCL3dGTERRQWdBRUY0Y1VHdzBJQ0FBR29oQWdKQUFrQkJBQ2dDaU5DQWdBQWlCRUVCSUFCQkEzWjBJZ0J4RFFCQkFDQUVJQUJ5TmdLSTBJQ0FBQ0FDSVFBTUFRc2dBaWdDQ0NFQUN5QUFJQUUyQWd3Z0FpQUJOZ0lJSUFFZ0FqWUNEQ0FCSUFBMkFnZ1BDMEVmSVFJQ1FDQUFRZi8vL3dkTERRQWdBRUVJZGlJQ0lBSkJnUDQvYWtFUWRrRUljU0lDZENJRUlBUkJnT0FmYWtFUWRrRUVjU0lFZENJR0lBWkJnSUFQYWtFUWRrRUNjU0lHZEVFUGRpQUNJQVJ5SUFaeWF5SUNRUUYwSUFBZ0FrRVZhblpCQVhGeVFSeHFJUUlMSUFFZ0FqWUNIQ0FCUWdBM0FoQWdBa0VDZEVHNDBvQ0FBR29oQkFKQUFrQkJBQ2dDak5DQWdBQWlCa0VCSUFKMElnTnhEUUFnQkNBQk5nSUFRUUFnQmlBRGNqWUNqTkNBZ0FBZ0FTQUVOZ0lZSUFFZ0FUWUNDQ0FCSUFFMkFnd01BUXNnQUVFQVFSa2dBa0VCZG1zZ0FrRWZSaHQwSVFJZ0JDZ0NBQ0VHQWtBRFFDQUdJZ1FvQWdSQmVIRWdBRVlOQVNBQ1FSMTJJUVlnQWtFQmRDRUNJQVFnQmtFRWNXcEJFR29pQXlnQ0FDSUdEUUFMSUFNZ0FUWUNBQ0FCSUFRMkFoZ2dBU0FCTmdJTUlBRWdBVFlDQ0F3QkN5QUVLQUlJSWdBZ0FUWUNEQ0FFSUFFMkFnZ2dBVUVBTmdJWUlBRWdCRFlDRENBQklBQTJBZ2dMUVFCQkFDZ0NxTkNBZ0FCQmYyb2lBVUYvSUFFYk5nS28wSUNBQUFzTEJBQUFBQXRPQUFKQUlBQU5BRDhBUVJCMER3c0NRQ0FBUWYvL0EzRU5BQ0FBUVg5TURRQUNRQ0FBUVJCMlFBQWlBRUYvUncwQVFRQkJNRFlDK05PQWdBQkJmdzhMSUFCQkVIUVBDeERLZ0lDQUFBQUw4Z0lDQTM4QmZnSkFJQUpGRFFBZ0FDQUJPZ0FBSUFJZ0FHb2lBMEYvYWlBQk9nQUFJQUpCQTBrTkFDQUFJQUU2QUFJZ0FDQUJPZ0FCSUFOQmZXb2dBVG9BQUNBRFFYNXFJQUU2QUFBZ0FrRUhTUTBBSUFBZ0FUb0FBeUFEUVh4cUlBRTZBQUFnQWtFSlNRMEFJQUJCQUNBQWEwRURjU0lFYWlJRElBRkIvd0Z4UVlHQ2hBaHNJZ0UyQWdBZ0F5QUNJQVJyUVh4eElnUnFJZ0pCZkdvZ0FUWUNBQ0FFUVFsSkRRQWdBeUFCTmdJSUlBTWdBVFlDQkNBQ1FYaHFJQUUyQWdBZ0FrRjBhaUFCTmdJQUlBUkJHVWtOQUNBRElBRTJBaGdnQXlBQk5nSVVJQU1nQVRZQ0VDQURJQUUyQWd3Z0FrRndhaUFCTmdJQUlBSkJiR29nQVRZQ0FDQUNRV2hxSUFFMkFnQWdBa0ZrYWlBQk5nSUFJQVFnQTBFRWNVRVljaUlGYXlJQ1FTQkpEUUFnQWExQ2dZQ0FnQkIrSVFZZ0F5QUZhaUVCQTBBZ0FTQUdOd01ZSUFFZ0JqY0RFQ0FCSUFZM0F3Z2dBU0FHTndNQUlBRkJJR29oQVNBQ1FXQnFJZ0pCSDBzTkFBc0xJQUFMQzQ1SUFRQkJnQWdMaGtnQkFBQUFBZ0FBQUFNQUFBQUFBQUFBQUFBQUFBUUFBQUFGQUFBQUFBQUFBQUFBQUFBR0FBQUFCd0FBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFbHVkbUZzYVdRZ1kyaGhjaUJwYmlCMWNtd2djWFZsY25rQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5aWIyUjVBRU52Ym5SbGJuUXRUR1Z1WjNSb0lHOTJaWEptYkc5M0FFTm9kVzVySUhOcGVtVWdiM1psY21ac2IzY0FVbVZ6Y0c5dWMyVWdiM1psY21ac2IzY0FTVzUyWVd4cFpDQnRaWFJvYjJRZ1ptOXlJRWhVVkZBdmVDNTRJSEpsY1hWbGMzUUFTVzUyWVd4cFpDQnRaWFJvYjJRZ1ptOXlJRkpVVTFBdmVDNTRJSEpsY1hWbGMzUUFSWGh3WldOMFpXUWdVMDlWVWtORklHMWxkR2h2WkNCbWIzSWdTVU5GTDNndWVDQnlaWEYxWlhOMEFFbHVkbUZzYVdRZ1kyaGhjaUJwYmlCMWNtd2dabkpoWjIxbGJuUWdjM1JoY25RQVJYaHdaV04wWldRZ1pHOTBBRk53WVc0Z1kyRnNiR0poWTJzZ1pYSnliM0lnYVc0Z2IyNWZjM1JoZEhWekFFbHVkbUZzYVdRZ2NtVnpjRzl1YzJVZ2MzUmhkSFZ6QUVsdWRtRnNhV1FnWTJoaGNtRmpkR1Z5SUdsdUlHTm9kVzVySUdWNGRHVnVjMmx2Ym5NQVZYTmxjaUJqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmY21WelpYUmdJR05oYkd4aVlXTnJJR1Z5Y205eUFHQnZibDlqYUhWdWExOW9aV0ZrWlhKZ0lHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOXRaWE56WVdkbFgySmxaMmx1WUNCallXeHNZbUZqYXlCbGNuSnZjZ0JnYjI1ZlkyaDFibXRmWlhoMFpXNXphVzl1WDNaaGJIVmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmYzNSaGRIVnpYMk52YlhCc1pYUmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmZG1WeWMybHZibDlqYjIxd2JHVjBaV0FnWTJGc2JHSmhZMnNnWlhKeWIzSUFZRzl1WDNWeWJGOWpiMjF3YkdWMFpXQWdZMkZzYkdKaFkyc2daWEp5YjNJQVlHOXVYMk5vZFc1clgyTnZiWEJzWlhSbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCZ2IyNWZhR1ZoWkdWeVgzWmhiSFZsWDJOdmJYQnNaWFJsWUNCallXeHNZbUZqYXlCbGNuSnZjZ0JnYjI1ZmJXVnpjMkZuWlY5amIyMXdiR1YwWldBZ1kyRnNiR0poWTJzZ1pYSnliM0lBWUc5dVgyMWxkR2h2WkY5amIyMXdiR1YwWldBZ1kyRnNiR0poWTJzZ1pYSnliM0lBWUc5dVgyaGxZV1JsY2w5bWFXVnNaRjlqYjIxd2JHVjBaV0FnWTJGc2JHSmhZMnNnWlhKeWIzSUFZRzl1WDJOb2RXNXJYMlY0ZEdWdWMybHZibDl1WVcxbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCVmJtVjRjR1ZqZEdWa0lHTm9ZWElnYVc0Z2RYSnNJSE5sY25abGNnQkpiblpoYkdsa0lHaGxZV1JsY2lCMllXeDFaU0JqYUdGeUFFbHVkbUZzYVdRZ2FHVmhaR1Z5SUdacFpXeGtJR05vWVhJQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5MlpYSnphVzl1QUVsdWRtRnNhV1FnYldsdWIzSWdkbVZ5YzJsdmJnQkpiblpoYkdsa0lHMWhhbTl5SUhabGNuTnBiMjRBUlhod1pXTjBaV1FnYzNCaFkyVWdZV1owWlhJZ2RtVnljMmx2YmdCRmVIQmxZM1JsWkNCRFVreEdJR0ZtZEdWeUlIWmxjbk5wYjI0QVNXNTJZV3hwWkNCSVZGUlFJSFpsY25OcGIyNEFTVzUyWVd4cFpDQm9aV0ZrWlhJZ2RHOXJaVzRBVTNCaGJpQmpZV3hzWW1GamF5Qmxjbkp2Y2lCcGJpQnZibDkxY213QVNXNTJZV3hwWkNCamFHRnlZV04wWlhKeklHbHVJSFZ5YkFCVmJtVjRjR1ZqZEdWa0lITjBZWEowSUdOb1lYSWdhVzRnZFhKc0FFUnZkV0pzWlNCQUlHbHVJSFZ5YkFCRmJYQjBlU0JEYjI1MFpXNTBMVXhsYm1kMGFBQkpiblpoYkdsa0lHTm9ZWEpoWTNSbGNpQnBiaUJEYjI1MFpXNTBMVXhsYm1kMGFBQkVkWEJzYVdOaGRHVWdRMjl1ZEdWdWRDMU1aVzVuZEdnQVNXNTJZV3hwWkNCamFHRnlJR2x1SUhWeWJDQndZWFJvQUVOdmJuUmxiblF0VEdWdVozUm9JR05oYmlkMElHSmxJSEJ5WlhObGJuUWdkMmwwYUNCVWNtRnVjMlpsY2kxRmJtTnZaR2x1WndCSmJuWmhiR2xrSUdOb1lYSmhZM1JsY2lCcGJpQmphSFZ1YXlCemFYcGxBRk53WVc0Z1kyRnNiR0poWTJzZ1pYSnliM0lnYVc0Z2IyNWZhR1ZoWkdWeVgzWmhiSFZsQUZOd1lXNGdZMkZzYkdKaFkyc2daWEp5YjNJZ2FXNGdiMjVmWTJoMWJtdGZaWGgwWlc1emFXOXVYM1poYkhWbEFFbHVkbUZzYVdRZ1kyaGhjbUZqZEdWeUlHbHVJR05vZFc1cklHVjRkR1Z1YzJsdmJuTWdkbUZzZFdVQVRXbHpjMmx1WnlCbGVIQmxZM1JsWkNCTVJpQmhablJsY2lCb1pXRmtaWElnZG1Gc2RXVUFTVzUyWVd4cFpDQmdWSEpoYm5ObVpYSXRSVzVqYjJScGJtZGdJR2hsWVdSbGNpQjJZV3gxWlFCSmJuWmhiR2xrSUdOb1lYSmhZM1JsY2lCcGJpQmphSFZ1YXlCbGVIUmxibk5wYjI1eklIRjFiM1JsSUhaaGJIVmxBRWx1ZG1Gc2FXUWdZMmhoY21GamRHVnlJR2x1SUdOb2RXNXJJR1Y0ZEdWdWMybHZibk1nY1hWdmRHVmtJSFpoYkhWbEFGQmhkWE5sWkNCaWVTQnZibDlvWldGa1pYSnpYMk52YlhCc1pYUmxBRWx1ZG1Gc2FXUWdSVTlHSUhOMFlYUmxBRzl1WDNKbGMyVjBJSEJoZFhObEFHOXVYMk5vZFc1clgyaGxZV1JsY2lCd1lYVnpaUUJ2Ymw5dFpYTnpZV2RsWDJKbFoybHVJSEJoZFhObEFHOXVYMk5vZFc1clgyVjRkR1Z1YzJsdmJsOTJZV3gxWlNCd1lYVnpaUUJ2Ymw5emRHRjBkWE5mWTI5dGNHeGxkR1VnY0dGMWMyVUFiMjVmZG1WeWMybHZibDlqYjIxd2JHVjBaU0J3WVhWelpRQnZibDkxY214ZlkyOXRjR3hsZEdVZ2NHRjFjMlVBYjI1ZlkyaDFibXRmWTI5dGNHeGxkR1VnY0dGMWMyVUFiMjVmYUdWaFpHVnlYM1poYkhWbFgyTnZiWEJzWlhSbElIQmhkWE5sQUc5dVgyMWxjM05oWjJWZlkyOXRjR3hsZEdVZ2NHRjFjMlVBYjI1ZmJXVjBhRzlrWDJOdmJYQnNaWFJsSUhCaGRYTmxBRzl1WDJobFlXUmxjbDltYVdWc1pGOWpiMjF3YkdWMFpTQndZWFZ6WlFCdmJsOWphSFZ1YTE5bGVIUmxibk5wYjI1ZmJtRnRaU0J3WVhWelpRQlZibVY0Y0dWamRHVmtJSE53WVdObElHRm1kR1Z5SUhOMFlYSjBJR3hwYm1VQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5amFIVnVhMTlsZUhSbGJuTnBiMjVmYm1GdFpRQkpiblpoYkdsa0lHTm9ZWEpoWTNSbGNpQnBiaUJqYUhWdWF5QmxlSFJsYm5OcGIyNXpJRzVoYldVQVVHRjFjMlVnYjI0Z1EwOU9Ua1ZEVkM5VmNHZHlZV1JsQUZCaGRYTmxJRzl1SUZCU1NTOVZjR2R5WVdSbEFFVjRjR1ZqZEdWa0lFaFVWRkF2TWlCRGIyNXVaV04wYVc5dUlGQnlaV1poWTJVQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5dFpYUm9iMlFBUlhod1pXTjBaV1FnYzNCaFkyVWdZV1owWlhJZ2JXVjBhRzlrQUZOd1lXNGdZMkZzYkdKaFkyc2daWEp5YjNJZ2FXNGdiMjVmYUdWaFpHVnlYMlpwWld4a0FGQmhkWE5sWkFCSmJuWmhiR2xrSUhkdmNtUWdaVzVqYjNWdWRHVnlaV1FBU1c1MllXeHBaQ0J0WlhSb2IyUWdaVzVqYjNWdWRHVnlaV1FBVlc1bGVIQmxZM1JsWkNCamFHRnlJR2x1SUhWeWJDQnpZMmhsYldFQVVtVnhkV1Z6ZENCb1lYTWdhVzUyWVd4cFpDQmdWSEpoYm5ObVpYSXRSVzVqYjJScGJtZGdBRk5YU1ZSRFNGOVFVazlZV1FCVlUwVmZVRkpQV0ZrQVRVdEJRMVJKVmtsVVdRQlZUbEJTVDBORlUxTkJRa3hGWDBWT1ZFbFVXUUJEVDFCWkFFMVBWa1ZFWDFCRlVrMUJUa1ZPVkV4WkFGUlBUMTlGUVZKTVdRQk9UMVJKUmxrQVJrRkpURVZFWDBSRlVFVk9SRVZPUTFrQVFrRkVYMGRCVkVWWFFWa0FVRXhCV1FCUVZWUUFRMGhGUTB0UFZWUUFSMEZVUlZkQldWOVVTVTFGVDFWVUFGSkZVVlZGVTFSZlZFbE5SVTlWVkFCT1JWUlhUMUpMWDBOUFRrNUZRMVJmVkVsTlJVOVZWQUJEVDA1T1JVTlVTVTlPWDFSSlRVVlBWVlFBVEU5SFNVNWZWRWxOUlU5VlZBQk9SVlJYVDFKTFgxSkZRVVJmVkVsTlJVOVZWQUJRVDFOVUFFMUpVMFJKVWtWRFZFVkVYMUpGVVZWRlUxUUFRMHhKUlU1VVgwTk1UMU5GUkY5U1JWRlZSVk5VQUVOTVNVVk9WRjlEVEU5VFJVUmZURTlCUkY5Q1FVeEJUa05GUkY5U1JWRlZSVk5VQUVKQlJGOVNSVkZWUlZOVUFFaFVWRkJmVWtWUlZVVlRWRjlUUlU1VVgxUlBYMGhVVkZCVFgxQlBVbFFBVWtWUVQxSlVBRWxOWDBGZlZFVkJVRTlVQUZKRlUwVlVYME5QVGxSRlRsUUFUazlmUTA5T1ZFVk9WQUJRUVZKVVNVRk1YME5QVGxSRlRsUUFTRkJGWDBsT1ZrRk1TVVJmUTA5T1UxUkJUbFFBU0ZCRlgwTkNYMUpGVTBWVUFFZEZWQUJJVUVWZlUxUlNTVU5VQUVOUFRrWk1TVU5VQUZSRlRWQlBVa0ZTV1Y5U1JVUkpVa1ZEVkFCUVJWSk5RVTVGVGxSZlVrVkVTVkpGUTFRQVEwOU9Ua1ZEVkFCTlZVeFVTVjlUVkVGVVZWTUFTRkJGWDBsT1ZrRk1TVVJmVTFSQlZGVlRBRlJQVDE5TlFVNVpYMUpGVVZWRlUxUlRBRVZCVWt4WlgwaEpUbFJUQUZWT1FWWkJTVXhCUWt4RlgwWlBVbDlNUlVkQlRGOVNSVUZUVDA1VEFFOVFWRWxQVGxNQVUxZEpWRU5JU1U1SFgxQlNUMVJQUTA5TVV3QldRVkpKUVU1VVgwRk1VMDlmVGtWSFQxUkpRVlJGVXdCTlZVeFVTVkJNUlY5RFNFOUpRMFZUQUVsT1ZFVlNUa0ZNWDFORlVsWkZVbDlGVWxKUFVnQlhSVUpmVTBWU1ZrVlNYMVZPUzA1UFYwNWZSVkpTVDFJQVVrRkpURWRWVGw5RlVsSlBVZ0JKUkVWT1ZFbFVXVjlRVWs5V1NVUkZVbDlCVlZSSVJVNVVTVU5CVkVsUFRsOUZVbEpQVWdCVFUweGZRMFZTVkVsR1NVTkJWRVZmUlZKU1QxSUFTVTVXUVV4SlJGOVlYMFpQVWxkQlVrUkZSRjlHVDFJQVUwVlVYMUJCVWtGTlJWUkZVZ0JIUlZSZlVFRlNRVTFGVkVWU0FFaFFSVjlWVTBWU0FGTkZSVjlQVkVoRlVnQklVRVZmUTBKZlEwaFZUa3RmU0VWQlJFVlNBRTFMUTBGTVJVNUVRVklBVTBWVVZWQUFWMFZDWDFORlVsWkZVbDlKVTE5RVQxZE9BRlJGUVZKRVQxZE9BRWhRUlY5RFRFOVRSVVJmUTA5T1RrVkRWRWxQVGdCSVJWVlNTVk5VU1VOZlJWaFFTVkpCVkVsUFRnQkVTVk5EVDA1T1JVTlVSVVJmVDFCRlVrRlVTVTlPQUU1UFRsOUJWVlJJVDFKSlZFRlVTVlpGWDBsT1JrOVNUVUZVU1U5T0FFaFFSVjlKVGxaQlRFbEVYMVpGVWxOSlQwNEFTRkJGWDBOQ1gwMUZVMU5CUjBWZlFrVkhTVTRBVTBsVVJWOUpVMTlHVWs5YVJVNEFTRkJGWDBsT1ZrRk1TVVJmU0VWQlJFVlNYMVJQUzBWT0FFbE9Wa0ZNU1VSZlZFOUxSVTRBUms5U1FrbEVSRVZPQUVWT1NFRk9RMFZmV1U5VlVsOURRVXhOQUVoUVJWOUpUbFpCVEVsRVgxVlNUQUJDVEU5RFMwVkVYMEpaWDFCQlVrVk9WRUZNWDBOUFRsUlNUMHdBVFV0RFQwd0FRVU5NQUVoUVJWOUpUbFJGVWs1QlRBQlNSVkZWUlZOVVgwaEZRVVJGVWw5R1NVVk1SRk5mVkU5UFgweEJVa2RGWDFWT1QwWkdTVU5KUVV3QVNGQkZYMDlMQUZWT1RFbE9Td0JWVGt4UFEwc0FVRkpKQUZKRlZGSlpYMWRKVkVnQVNGQkZYMGxPVmtGTVNVUmZRMDlPVkVWT1ZGOU1SVTVIVkVnQVNGQkZYMVZPUlZoUVJVTlVSVVJmUTA5T1ZFVk9WRjlNUlU1SFZFZ0FSa3hWVTBnQVVGSlBVRkJCVkVOSUFFMHRVMFZCVWtOSUFGVlNTVjlVVDA5ZlRFOU9Sd0JRVWs5RFJWTlRTVTVIQUUxSlUwTkZURXhCVGtWUFZWTmZVRVZTVTBsVFZFVk9WRjlYUVZKT1NVNUhBRTFKVTBORlRFeEJUa1ZQVlZOZlYwRlNUa2xPUndCSVVFVmZTVTVXUVV4SlJGOVVVa0ZPVTBaRlVsOUZUa05QUkVsT1J3QkZlSEJsWTNSbFpDQkRVa3hHQUVoUVJWOUpUbFpCVEVsRVgwTklWVTVMWDFOSldrVUFUVTlXUlFCRFQwNVVTVTVWUlFCSVVFVmZRMEpmVTFSQlZGVlRYME5QVFZCTVJWUkZBRWhRUlY5RFFsOUlSVUZFUlZKVFgwTlBUVkJNUlZSRkFFaFFSVjlEUWw5V1JWSlRTVTlPWDBOUFRWQk1SVlJGQUVoUVJWOURRbDlWVWt4ZlEwOU5VRXhGVkVVQVNGQkZYME5DWDBOSVZVNUxYME5QVFZCTVJWUkZBRWhRUlY5RFFsOUlSVUZFUlZKZlZrRk1WVVZmUTA5TlVFeEZWRVVBU0ZCRlgwTkNYME5JVlU1TFgwVllWRVZPVTBsUFRsOVdRVXhWUlY5RFQwMVFURVZVUlFCSVVFVmZRMEpmUTBoVlRrdGZSVmhVUlU1VFNVOU9YMDVCVFVWZlEwOU5VRXhGVkVVQVNGQkZYME5DWDAxRlUxTkJSMFZmUTA5TlVFeEZWRVVBU0ZCRlgwTkNYMDFGVkVoUFJGOURUMDFRVEVWVVJRQklVRVZmUTBKZlNFVkJSRVZTWDBaSlJVeEVYME5QVFZCTVJWUkZBRVJGVEVWVVJRQklVRVZmU1U1V1FVeEpSRjlGVDBaZlUxUkJWRVVBU1U1V1FVeEpSRjlUVTB4ZlEwVlNWRWxHU1VOQlZFVUFVRUZWVTBVQVRrOWZVa1ZUVUU5T1UwVUFWVTVUVlZCUVQxSlVSVVJmVFVWRVNVRmZWRmxRUlFCSFQwNUZBRTVQVkY5QlEwTkZVRlJCUWt4RkFGTkZVbFpKUTBWZlZVNUJWa0ZKVEVGQ1RFVUFVa0ZPUjBWZlRrOVVYMU5CVkVsVFJrbEJRa3hGQUU5U1NVZEpUbDlKVTE5VlRsSkZRVU5JUVVKTVJRQlNSVk5RVDA1VFJWOUpVMTlUVkVGTVJRQlFWVkpIUlFCTlJWSkhSUUJTUlZGVlJWTlVYMGhGUVVSRlVsOUdTVVZNUkZOZlZFOVBYMHhCVWtkRkFGSkZVVlZGVTFSZlNFVkJSRVZTWDFSUFQxOU1RVkpIUlFCUVFWbE1UMEZFWDFSUFQxOU1RVkpIUlFCSlRsTlZSa1pKUTBsRlRsUmZVMVJQVWtGSFJRQklVRVZmVUVGVlUwVkVYMVZRUjFKQlJFVUFTRkJGWDFCQlZWTkZSRjlJTWw5VlVFZFNRVVJGQUZOUFZWSkRSUUJCVGs1UFZVNURSUUJVVWtGRFJRQklVRVZmVlU1RldGQkZRMVJGUkY5VFVFRkRSUUJFUlZORFVrbENSUUJWVGxOVlFsTkRVa2xDUlFCU1JVTlBVa1FBU0ZCRlgwbE9Wa0ZNU1VSZlRVVlVTRTlFQUU1UFZGOUdUMVZPUkFCUVVrOVFSa2xPUkFCVlRrSkpUa1FBVWtWQ1NVNUVBRlZPUVZWVVNFOVNTVnBGUkFCTlJWUklUMFJmVGs5VVgwRk1URTlYUlVRQVNGUlVVRjlXUlZKVFNVOU9YMDVQVkY5VFZWQlFUMUpVUlVRQVFVeFNSVUZFV1Y5U1JWQlBVbFJGUkFCQlEwTkZVRlJGUkFCT1QxUmZTVTFRVEVWTlJVNVVSVVFBVEU5UFVGOUVSVlJGUTFSRlJBQklVRVZmUTFKZlJWaFFSVU5VUlVRQVNGQkZYMHhHWDBWWVVFVkRWRVZFQUVOU1JVRlVSVVFBU1UxZlZWTkZSQUJJVUVWZlVFRlZVMFZFQUZSSlRVVlBWVlJmVDBORFZWSkZSQUJRUVZsTlJVNVVYMUpGVVZWSlVrVkVBRkJTUlVOUFRrUkpWRWxQVGw5U1JWRlZTVkpGUkFCUVVrOVlXVjlCVlZSSVJVNVVTVU5CVkVsUFRsOVNSVkZWU1ZKRlJBQk9SVlJYVDFKTFgwRlZWRWhGVGxSSlEwRlVTVTlPWDFKRlVWVkpVa1ZFQUV4RlRrZFVTRjlTUlZGVlNWSkZSQUJUVTB4ZlEwVlNWRWxHU1VOQlZFVmZVa1ZSVlVsU1JVUUFWVkJIVWtGRVJWOVNSVkZWU1ZKRlJBQlFRVWRGWDBWWVVFbFNSVVFBVUZKRlEwOU9SRWxVU1U5T1gwWkJTVXhGUkFCRldGQkZRMVJCVkVsUFRsOUdRVWxNUlVRQVVrVldRVXhKUkVGVVNVOU9YMFpCU1V4RlJBQlRVMHhmU0VGT1JGTklRVXRGWDBaQlNVeEZSQUJNVDBOTFJVUUFWRkpCVGxOR1QxSk5RVlJKVDA1ZlFWQlFURWxGUkFCT1QxUmZUVTlFU1VaSlJVUUFUazlVWDBWWVZFVk9SRVZFQUVKQlRrUlhTVVJVU0Y5TVNVMUpWRjlGV0VORlJVUkZSQUJUU1ZSRlgwbFRYMDlXUlZKTVQwRkVSVVFBU0VWQlJBQkZlSEJsWTNSbFpDQklWRlJRTHdBQVhoTUFBQ1lUQUFBd0VBQUE4QmNBQUowVEFBQVZFZ0FBT1JjQUFQQVNBQUFLRUFBQWRSSUFBSzBTQUFDQ0V3QUFUeFFBQUg4UUFBQ2dGUUFBSXhRQUFJa1NBQUNMRkFBQVRSVUFBTlFSQUFEUEZBQUFFQmdBQU1rV0FBRGNGZ0FBd1JFQUFPQVhBQUM3RkFBQWRCUUFBSHdWQUFEbEZBQUFDQmNBQUI4UUFBQmxGUUFBb3hRQUFDZ1ZBQUFDRlFBQW1SVUFBQ3dRQUFDTEdRQUFUdzhBQU5RT0FBQnFFQUFBemhBQUFBSVhBQUNKRGdBQWJoTUFBQndUQUFCbUZBQUFWaGNBQU1FVEFBRE5Fd0FBYkJNQUFHZ1hBQUJtRndBQVh4Y0FBQ0lUQUFET0R3QUFhUTRBQU5nT0FBQmpGZ0FBeXhNQUFLb09BQUFvRndBQUpoY0FBTVVUQUFCZEZnQUE2QkVBQUdjVEFBQmxFd0FBOGhZQUFITVRBQUFkRndBQStSWUFBUE1SQUFEUERnQUF6aFVBQUF3U0FBQ3pFUUFBcFJFQUFHRVFBQUF5RndBQXV4TUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFRSUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlEQWdJQ0FnSUFBQUlDQUFJQ0FBSUNBZ0lDQWdJQ0FnSUFCQUFBQUFBQUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQUFBQUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0FDQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ0FBSUNBZ0lDQUFBQ0FnQUNBZ0FDQWdJQ0FnSUNBZ0lDQUFNQUJBQUFBQUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBQUFBQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQUFnQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBYkc5elpXVmxjQzFoYkdsMlpRQUFBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVCQVFFQkFRRUJBUUVCQVFJQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJZMmgxYm10bFpBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFFQUFRRUJBUUVBQUFFQkFBRUJBQUVCQVFFQkFRRUJBUUVBQUFBQUFBQUFBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJsWTNScGIyNWxiblF0YkdWdVozUm9iMjV5YjNoNUxXTnZibTVsWTNScGIyNEFBQUFBQUFBQUFBQUFBQUFBQUFCeVlXNXpabVZ5TFdWdVkyOWthVzVuY0dkeVlXUmxEUW9OQ2cwS1UwME5DZzBLVkZSUUwwTkZMMVJUVUM4QUFBQUFBQUFBQUFBQUFBQUJBZ0FCQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUFBQUFBQUFBQVFJQUFRTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVBUUVGQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUFBQUFBQUFBQUFBRUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQkFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQUFBQUFBQUFBQUFBQVFBQUFnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBTUVBQUFFQkFRRUJBUUVCQVFFQkFVRUJBUUVCQVFFQkFRRUJBUUFCQUFHQndRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBRUFBUUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFBQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlBQUFBQUFBQURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3QUFBQUFBQUFNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFBQUFBSUFBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01BQUFBQUFBQURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCT1QxVk9RMFZGUTB0UFZWUk9SVU5VUlZSRlExSkpRa1ZNVlZOSVJWUkZRVVJUUlVGU1EwaFNSMFZEVkVsV1NWUlpURVZPUkVGU1ZrVlBWRWxHV1ZCVVNVOU9VME5JVTBWQldWTlVRVlJEU0VkRlQxSkVTVkpGUTFSUFVsUlNRMGhRUVZKQlRVVlVSVkpWVWtORlFsTkRVa2xDUlVGU1JFOVhUa0ZEUlVsT1JFNUxRMHRWUWxORFVrbENSVWhVVkZBdlFVUlVVQzg9J1xuIiwgIm1vZHVsZS5leHBvcnRzID0gJ0FHRnpiUUVBQUFBQk1BaGdBWDhCZjJBRGYzOS9BWDlnQkg5L2YzOEJmMkFBQUdBRGYzOS9BR0FCZndCZ0FuOS9BR0FHZjM5L2YzOS9BQUxMQVFnRFpXNTJHSGRoYzIxZmIyNWZhR1ZoWkdWeWMxOWpiMjF3YkdWMFpRQUNBMlZ1ZGhWM1lYTnRYMjl1WDIxbGMzTmhaMlZmWW1WbmFXNEFBQU5sYm5ZTGQyRnpiVjl2Ymw5MWNtd0FBUU5sYm5ZT2QyRnpiVjl2Ymw5emRHRjBkWE1BQVFObGJuWVVkMkZ6YlY5dmJsOW9aV0ZrWlhKZlptbGxiR1FBQVFObGJuWVVkMkZ6YlY5dmJsOW9aV0ZrWlhKZmRtRnNkV1VBQVFObGJuWU1kMkZ6YlY5dmJsOWliMlI1QUFFRFpXNTJHSGRoYzIxZmIyNWZiV1Z6YzJGblpWOWpiMjF3YkdWMFpRQUFBMFpGQXdNRUFBQUZBQUFBQUFBQUJRRUZBQVVGQlFBQUJnQUFBQUFHQmdZR0FRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFBQUJBUWNBQUFVRkF3QUJCQVVCY0FFU0VnVURBUUFDQmdnQmZ3RkJnTlFFQ3dmUkJTSUdiV1Z0YjNKNUFnQUxYMmx1YVhScFlXeHBlbVVBQ1JsZlgybHVaR2x5WldOMFgyWjFibU4wYVc5dVgzUmhZbXhsQVFBTGJHeG9kSFJ3WDJsdWFYUUFDaGhzYkdoMGRIQmZjMmh2ZFd4a1gydGxaWEJmWVd4cGRtVUFRUXhzYkdoMGRIQmZZV3hzYjJNQURBWnRZV3hzYjJNQVJndHNiR2gwZEhCZlpuSmxaUUFOQkdaeVpXVUFTQTlzYkdoMGRIQmZaMlYwWDNSNWNHVUFEaFZzYkdoMGRIQmZaMlYwWDJoMGRIQmZiV0ZxYjNJQUR4VnNiR2gwZEhCZloyVjBYMmgwZEhCZmJXbHViM0lBRUJGc2JHaDBkSEJmWjJWMFgyMWxkR2h2WkFBUkZteHNhSFIwY0Y5blpYUmZjM1JoZEhWelgyTnZaR1VBRWhKc2JHaDBkSEJmWjJWMFgzVndaM0poWkdVQUV3eHNiR2gwZEhCZmNtVnpaWFFBRkE1c2JHaDBkSEJmWlhobFkzVjBaUUFWRkd4c2FIUjBjRjl6WlhSMGFXNW5jMTlwYm1sMEFCWU5iR3hvZEhSd1gyWnBibWx6YUFBWERHeHNhSFIwY0Y5d1lYVnpaUUFZRFd4c2FIUjBjRjl5WlhOMWJXVUFHUnRzYkdoMGRIQmZjbVZ6ZFcxbFgyRm1kR1Z5WDNWd1ozSmhaR1VBR2hCc2JHaDBkSEJmWjJWMFgyVnljbTV2QUJzWGJHeG9kSFJ3WDJkbGRGOWxjbkp2Y2w5eVpXRnpiMjRBSEJkc2JHaDBkSEJmYzJWMFgyVnljbTl5WDNKbFlYTnZiZ0FkRkd4c2FIUjBjRjluWlhSZlpYSnliM0pmY0c5ekFCNFJiR3hvZEhSd1gyVnljbTV2WDI1aGJXVUFIeEpzYkdoMGRIQmZiV1YwYUc5a1gyNWhiV1VBSUJKc2JHaDBkSEJmYzNSaGRIVnpYMjVoYldVQUlScHNiR2gwZEhCZmMyVjBYMnhsYm1sbGJuUmZhR1ZoWkdWeWN3QWlJV3hzYUhSMGNGOXpaWFJmYkdWdWFXVnVkRjlqYUhWdWEyVmtYMnhsYm1kMGFBQWpIV3hzYUhSMGNGOXpaWFJmYkdWdWFXVnVkRjlyWldWd1gyRnNhWFpsQUNRa2JHeG9kSFJ3WDNObGRGOXNaVzVwWlc1MFgzUnlZVzV6Wm1WeVgyVnVZMjlrYVc1bkFDVVliR3hvZEhSd1gyMWxjM05oWjJWZmJtVmxaSE5mWlc5bUFEOEpGd0VBUVFFTEVRRUNBd1FGQ3dZSE5UazNNUzh0SnlzcENyTGdBa1VDQUFzSUFCQ0lnSUNBQUFzWkFDQUFFTUtBZ0lBQUdpQUFJQUkyQWpnZ0FDQUJPZ0FvQ3h3QUlBQWdBQzhCTWlBQUxRQXVJQUFRd1lDQWdBQVFnSUNBZ0FBTEtnRUJmMEhBQUJER2dJQ0FBQ0lCRU1LQWdJQUFHaUFCUVlDSWdJQUFOZ0k0SUFFZ0FEb0FLQ0FCQ3dvQUlBQVF5SUNBZ0FBTEJ3QWdBQzBBS0FzSEFDQUFMUUFxQ3djQUlBQXRBQ3NMQndBZ0FDMEFLUXNIQUNBQUx3RXlDd2NBSUFBdEFDNExSUUVFZnlBQUtBSVlJUUVnQUMwQUxTRUNJQUF0QUNnaEF5QUFLQUk0SVFRZ0FCRENnSUNBQUJvZ0FDQUVOZ0k0SUFBZ0F6b0FLQ0FBSUFJNkFDMGdBQ0FCTmdJWUN4RUFJQUFnQVNBQklBSnFFTU9BZ0lBQUN4QUFJQUJCQUVIY0FCRE1nSUNBQUJvTFp3RUJmMEVBSVFFQ1FDQUFLQUlNRFFBQ1FBSkFBa0FDUUNBQUxRQXZEZ01CQUFNQ0N5QUFLQUk0SWdGRkRRQWdBU2dDTENJQlJRMEFJQUFnQVJHQWdJQ0FBQUFpQVEwREMwRUFEd3NReW9DQWdBQUFDeUFBUWNPV2dJQUFOZ0lRUVE0aEFRc2dBUXNlQUFKQUlBQW9BZ3dOQUNBQVFkR2JnSUFBTmdJUUlBQkJGVFlDREFzTEZnQUNRQ0FBS0FJTVFSVkhEUUFnQUVFQU5nSU1Dd3NXQUFKQUlBQW9BZ3hCRmtjTkFDQUFRUUEyQWd3TEN3Y0FJQUFvQWd3TEJ3QWdBQ2dDRUFzSkFDQUFJQUUyQWhBTEJ3QWdBQ2dDRkFzaUFBSkFJQUJCSkVrTkFCREtnSUNBQUFBTElBQkJBblJCb0xPQWdBQnFLQUlBQ3lJQUFrQWdBRUV1U1EwQUVNcUFnSUFBQUFzZ0FFRUNkRUd3dElDQUFHb29BZ0FMN2dzQkFYOUI2NmlBZ0FBaEFRSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFJQUJCbkg5cUR2UURZMklBQVdGaFlXRmhZUUlEQkFWaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhCZ2NJQ1FvTERBME9EMkZoWVdGaEVHRmhZV0ZoWVdGaFlXRmhFV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZUklURkJVV0Z4Z1pHaHRoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoSEIwZUh5QWhJaU1rSlNZbktDa3FLeXd0TGk4d01USXpORFUyWVRjNE9UcGhZV0ZoWVdGaFlUdGhZV0U4WVdGaFlUMCtQMkZoWVdGaFlXRmhRR0ZoUVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlVSkRSRVZHUjBoSlNrdE1UVTVQVUZGU1UyRmhZV0ZoWVdGaFZGVldWMWhaV2x0aFhGMWhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZlWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWVdGaFlXRmhZV0ZoWDJCaEMwSGhwNENBQUE4TFFhU2hnSUFBRHd0Qnk2eUFnQUFQQzBIK3NZQ0FBQThMUWNDa2dJQUFEd3RCcTZTQWdBQVBDMEdOcUlDQUFBOExRZUttZ0lBQUR3dEJnTENBZ0FBUEMwRzVyNENBQUE4TFFkZWtnSUFBRHd0Qjc1K0FnQUFQQzBIaG40Q0FBQThMUWZxZmdJQUFEd3RCOHFDQWdBQVBDMEdvcjRDQUFBOExRYTZ5Z0lBQUR3dEJpTENBZ0FBUEMwSHNwNENBQUE4TFFZS2lnSUFBRHd0QmpwMkFnQUFQQzBIUXJvQ0FBQThMUWNxamdJQUFEd3RCeGJLQWdBQVBDMEhmbklDQUFBOExRZEtjZ0lBQUR3dEJ4S0NBZ0FBUEMwSFhvSUNBQUE4TFFhS2ZnSUFBRHd0QjdhNkFnQUFQQzBHcnNJQ0FBQThMUWRTbGdJQUFEd3RCeks2QWdBQVBDMEg2cm9DQUFBOExRZnlyZ0lBQUR3dEIwckNBZ0FBUEMwSHhuWUNBQUE4TFFidWdnSUFBRHd0Qjk2dUFnQUFQQzBHUXNZQ0FBQThMUWRleGdJQUFEd3RCb3EyQWdBQVBDMEhVcDRDQUFBOExRZUNyZ0lBQUR3dEJuNnlBZ0FBUEMwSHJzWUNBQUE4TFFkV2ZnSUFBRHd0QnlyR0FnQUFQQzBIZXBZQ0FBQThMUWRTZWdJQUFEd3RCOUp5QWdBQVBDMEduc29DQUFBOExRYkdkZ0lBQUR3dEJvSjJBZ0FBUEMwRzVzWUNBQUE4TFFieXdnSUFBRHd0QmtxR0FnQUFQQzBHenBvQ0FBQThMUWVtc2dJQUFEd3RCcko2QWdBQVBDMEhVcTRDQUFBOExRZmVtZ0lBQUR3dEJnS2FBZ0FBUEMwR3dvWUNBQUE4TFFmNmVnSUFBRHd0QmphT0FnQUFQQzBHSnJZQ0FBQThMUWZlaWdJQUFEd3RCb0xHQWdBQVBDMEd1bjRDQUFBOExRY2FsZ0lBQUR3dEI2SjZBZ0FBUEMwR1Rvb0NBQUE4TFFjS3ZnSUFBRHd0Qnc1MkFnQUFQQzBHTHJJQ0FBQThMUWVHZGdJQUFEd3RCamErQWdBQVBDMEhxb1lDQUFBOExRYlN0Z0lBQUR3dEIwcStBZ0FBUEMwSGZzb0NBQUE4TFFkS3lnSUFBRHd0QjhMQ0FnQUFQQzBHcG9vQ0FBQThMUWZtamdJQUFEd3RCbVo2QWdBQVBDMEcxcklDQUFBOExRWnV3Z0lBQUR3dEJrcktBZ0FBUEMwRzJxNENBQUE4TFFjS2lnSUFBRHd0QitMS0FnQUFQQzBHZXBZQ0FBQThMUWRDaWdJQUFEd3RCdXA2QWdBQVBDMEdCbm9DQUFBOExFTXFBZ0lBQUFBdEIxcUdBZ0FBaEFRc2dBUXNXQUNBQUlBQXRBQzFCL2dGeElBRkJBRWR5T2dBdEN4a0FJQUFnQUMwQUxVSDlBWEVnQVVFQVIwRUJkSEk2QUMwTEdRQWdBQ0FBTFFBdFFmc0JjU0FCUVFCSFFRSjBjam9BTFFzWkFDQUFJQUF0QUMxQjl3RnhJQUZCQUVkQkEzUnlPZ0F0Q3k0QkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BZ0FpQkVVTkFDQUFJQVFSZ0lDQWdBQUFJUU1MSUFNTFNRRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDQkNJRVJRMEFJQUFnQVNBQ0lBRnJJQVFSZ1lDQWdBQUFJZ05CZjBjTkFDQUFRY2FSZ0lBQU5nSVFRUmdoQXdzZ0F3c3VBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJd0lnUkZEUUFnQUNBRUVZQ0FnSUFBQUNFREN5QURDMGtCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FnZ2lCRVVOQUNBQUlBRWdBaUFCYXlBRUVZR0FnSUFBQUNJRFFYOUhEUUFnQUVIMmlvQ0FBRFlDRUVFWUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NOQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXd0SkFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUlNSWdSRkRRQWdBQ0FCSUFJZ0FXc2dCQkdCZ0lDQUFBQWlBMEYvUncwQUlBQkI3WnFBZ0FBMkFoQkJHQ0VEQ3lBREN5NEJBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWpnaUJFVU5BQ0FBSUFRUmdJQ0FnQUFBSVFNTElBTUxTUUVDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ0VDSUVSUTBBSUFBZ0FTQUNJQUZySUFRUmdZQ0FnQUFBSWdOQmYwY05BQ0FBUVpXUWdJQUFOZ0lRUVJnaEF3c2dBd3N1QVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSThJZ1JGRFFBZ0FDQUVFWUNBZ0lBQUFDRURDeUFEQzBrQkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9BaFFpQkVVTkFDQUFJQUVnQWlBQmF5QUVFWUdBZ0lBQUFDSURRWDlIRFFBZ0FFR3FtNENBQURZQ0VFRVlJUU1MSUFNTExnRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDUUNJRVJRMEFJQUFnQkJHQWdJQ0FBQUFoQXdzZ0F3dEpBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FJWUlnUkZEUUFnQUNBQklBSWdBV3NnQkJHQmdJQ0FBQUFpQTBGL1J3MEFJQUJCN1pPQWdBQTJBaEJCR0NFREN5QURDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FrUWlCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NKQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXdzdUFRSi9RUUFoQXdKQUlBQW9BamdpQkVVTkFDQUVLQUlzSWdSRkRRQWdBQ0FFRVlDQWdJQUFBQ0VEQ3lBREMwa0JBbjlCQUNFREFrQWdBQ2dDT0NJRVJRMEFJQVFvQWlnaUJFVU5BQ0FBSUFFZ0FpQUJheUFFRVlHQWdJQUFBQ0lEUVg5SERRQWdBRUgyaUlDQUFEWUNFRUVZSVFNTElBTUxMZ0VDZjBFQUlRTUNRQ0FBS0FJNElnUkZEUUFnQkNnQ1VDSUVSUTBBSUFBZ0JCR0FnSUNBQUFBaEF3c2dBd3RKQVFKL1FRQWhBd0pBSUFBb0FqZ2lCRVVOQUNBRUtBSWNJZ1JGRFFBZ0FDQUJJQUlnQVdzZ0JCR0JnSUNBQUFBaUEwRi9SdzBBSUFCQndwbUFnQUEyQWhCQkdDRURDeUFEQ3k0QkFuOUJBQ0VEQWtBZ0FDZ0NPQ0lFUlEwQUlBUW9Ba2dpQkVVTkFDQUFJQVFSZ0lDQWdBQUFJUU1MSUFNTFNRRUNmMEVBSVFNQ1FDQUFLQUk0SWdSRkRRQWdCQ2dDSUNJRVJRMEFJQUFnQVNBQ0lBRnJJQVFSZ1lDQWdBQUFJZ05CZjBjTkFDQUFRWlNVZ0lBQU5nSVFRUmdoQXdzZ0F3c3VBUUovUVFBaEF3SkFJQUFvQWpnaUJFVU5BQ0FFS0FKTUlnUkZEUUFnQUNBRUVZQ0FnSUFBQUNFREN5QURDeTRCQW45QkFDRURBa0FnQUNnQ09DSUVSUTBBSUFRb0FsUWlCRVVOQUNBQUlBUVJnSUNBZ0FBQUlRTUxJQU1MTGdFQ2YwRUFJUU1DUUNBQUtBSTRJZ1JGRFFBZ0JDZ0NXQ0lFUlEwQUlBQWdCQkdBZ0lDQUFBQWhBd3NnQXd0RkFRRi9Ba0FDUUNBQUx3RXdRUlJ4UVJSSERRQkJBU0VESUFBdEFDaEJBVVlOQVNBQUx3RXlRZVVBUmlFRERBRUxJQUF0QUNsQkJVWWhBd3NnQUNBRE9nQXVRUUFML2dFQkEzOUJBU0VEQWtBZ0FDOEJNQ0lFUVFoeERRQWdBQ2tESUVJQVVpRURDd0pBQWtBZ0FDMEFMa1VOQUVFQklRVWdBQzBBS1VFRlJnMEJRUUVoQlNBRVFjQUFjVVVnQTNGQkFVY05BUXRCQUNFRklBUkJ3QUJ4RFFCQkFpRUZJQVJCLy84RGNTSURRUWh4RFFBQ1FDQURRWUFFY1VVTkFBSkFJQUF0QUNoQkFVY05BQ0FBTFFBdFFRcHhEUUJCQlE4TFFRUVBDd0pBSUFOQklIRU5BQUpBSUFBdEFDaEJBVVlOQUNBQUx3RXlRZi8vQTNFaUFFR2NmMnBCNUFCSkRRQWdBRUhNQVVZTkFDQUFRYkFDUmcwQVFRUWhCU0FFUVNoeFJRMENJQU5CaUFSeFFZQUVSZzBDQzBFQUR3dEJBRUVESUFBcEF5QlFHeUVGQ3lBRkMySUJBbjlCQUNFQkFrQWdBQzBBS0VFQlJnMEFJQUF2QVRKQi8vOERjU0lDUVp4L2FrSGtBRWtOQUNBQ1Fjd0JSZzBBSUFKQnNBSkdEUUFnQUM4Qk1DSUFRY0FBY1EwQVFRRWhBU0FBUVlnRWNVR0FCRVlOQUNBQVFTaHhSU0VCQ3lBQkM2Y0JBUU4vQWtBQ1FBSkFJQUF0QUNwRkRRQWdBQzBBSzBVTkFFRUFJUU1nQUM4Qk1DSUVRUUp4UlEwQkRBSUxRUUFoQXlBQUx3RXdJZ1JCQVhGRkRRRUxRUUVoQXlBQUxRQW9RUUZHRFFBZ0FDOEJNa0gvL3dOeElnVkJuSDlxUWVRQVNRMEFJQVZCekFGR0RRQWdCVUd3QWtZTkFDQUVRY0FBY1EwQVFRQWhBeUFFUVlnRWNVR0FCRVlOQUNBRVFTaHhRUUJISVFNTElBQkJBRHNCTUNBQVFRQTZBQzhnQXd1WkFRRUNmd0pBQWtBQ1FDQUFMUUFxUlEwQUlBQXRBQ3RGRFFCQkFDRUJJQUF2QVRBaUFrRUNjVVVOQVF3Q0MwRUFJUUVnQUM4Qk1DSUNRUUZ4UlEwQkMwRUJJUUVnQUMwQUtFRUJSZzBBSUFBdkFUSkIvLzhEY1NJQVFaeC9ha0hrQUVrTkFDQUFRY3dCUmcwQUlBQkJzQUpHRFFBZ0FrSEFBSEVOQUVFQUlRRWdBa0dJQkhGQmdBUkdEUUFnQWtFb2NVRUFSeUVCQ3lBQkMwa0JBWHNnQUVFUWF2ME1BQUFBQUFBQUFBQUFBQUFBQUFBQUFDSUIvUXNEQUNBQUlBSDlDd01BSUFCQk1Hb2dBZjBMQXdBZ0FFRWdhaUFCL1FzREFDQUFRZDBCTmdJY1FRQUxld0VCZndKQUlBQW9BZ3dpQXcwQUFrQWdBQ2dDQkVVTkFDQUFJQUUyQWdRTEFrQWdBQ0FCSUFJUXhJQ0FnQUFpQXcwQUlBQW9BZ3dQQ3lBQUlBTTJBaHhCQUNFRElBQW9BZ1FpQVVVTkFDQUFJQUVnQWlBQUtBSUlFWUdBZ0lBQUFDSUJSUTBBSUFBZ0FqWUNGQ0FBSUFFMkFnd2dBU0VEQ3lBREMrVHpBUU1PZndOK0JIOGpnSUNBZ0FCQkVHc2lBeVNBZ0lDQUFDQUJJUVFnQVNFRklBRWhCaUFCSVFjZ0FTRUlJQUVoQ1NBQklRb2dBU0VMSUFFaERDQUJJUTBnQVNFT0lBRWhEd0pBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQ0FBS0FJY0loQkJmMm9PM1FIYUFRSFpBUUlEQkFVR0J3Z0pDZ3NNRFE3WUFROFExd0VSRXRZQkV4UVZGaGNZR1JvYjRBSGZBUndkSHRVQkh5QWhJaU1rSmRRQkppY29LU29yTE5NQjBnRXRMdEVCMEFFdk1ERXlNelExTmpjNE9UbzdQRDArUDBCQlFrTkVSVWJiQVVkSVNVclBBYzRCUzgwQlRNd0JUVTVQVUZGU1UxUlZWbGRZV1ZwYlhGMWVYMkJoWW1Oa1pXWm5hR2xxYTJ4dGJtOXdjWEp6ZEhWMmQzaDVlbnQ4Zlg1L2dBR0JBWUlCZ3dHRUFZVUJoZ0dIQVlnQmlRR0tBWXNCakFHTkFZNEJqd0dRQVpFQmtnR1RBWlFCbFFHV0FaY0JtQUdaQVpvQm13R2NBWjBCbmdHZkFhQUJvUUdpQWFNQnBBR2xBYVlCcHdHb0Fha0JxZ0dyQWF3QnJRR3VBYThCc0FHeEFiSUJzd0cwQWJVQnRnRzNBY3NCeWdHNEFja0J1UUhJQWJvQnV3RzhBYjBCdmdHL0FjQUJ3UUhDQWNNQnhBSEZBY1lCQU53QkMwRUFJUkFNeGdFTFFRNGhFQXpGQVF0QkRTRVFETVFCQzBFUElSQU13d0VMUVJBaEVBekNBUXRCRXlFUURNRUJDMEVVSVJBTXdBRUxRUlVoRUF5L0FRdEJGaUVRREw0QkMwRVhJUkFNdlFFTFFSZ2hFQXk4QVF0QkdTRVFETHNCQzBFYUlSQU11Z0VMUVJzaEVBeTVBUXRCSENFUURMZ0JDMEVJSVJBTXR3RUxRUjBoRUF5MkFRdEJJQ0VRRExVQkMwRWZJUkFNdEFFTFFRY2hFQXl6QVF0QklTRVFETElCQzBFaUlSQU1zUUVMUVI0aEVBeXdBUXRCSXlFUURLOEJDMEVTSVJBTXJnRUxRUkVoRUF5dEFRdEJKQ0VRREt3QkMwRWxJUkFNcXdFTFFTWWhFQXlxQVF0Qkp5RVFES2tCQzBIREFTRVFES2dCQzBFcElSQU1wd0VMUVNzaEVBeW1BUXRCTENFUURLVUJDMEV0SVJBTXBBRUxRUzRoRUF5akFRdEJMeUVRREtJQkMwSEVBU0VRREtFQkMwRXdJUkFNb0FFTFFUUWhFQXlmQVF0QkRDRVFESjRCQzBFeElSQU1uUUVMUVRJaEVBeWNBUXRCTXlFUURKc0JDMEU1SVJBTW1nRUxRVFVoRUF5WkFRdEJ4UUVoRUF5WUFRdEJDeUVRREpjQkMwRTZJUkFNbGdFTFFUWWhFQXlWQVF0QkNpRVFESlFCQzBFM0lSQU1rd0VMUVRnaEVBeVNBUXRCUENFUURKRUJDMEU3SVJBTWtBRUxRVDBoRUF5UEFRdEJDU0VRREk0QkMwRW9JUkFNalFFTFFUNGhFQXlNQVF0QlB5RVFESXNCQzBIQUFDRVFESW9CQzBIQkFDRVFESWtCQzBIQ0FDRVFESWdCQzBIREFDRVFESWNCQzBIRUFDRVFESVlCQzBIRkFDRVFESVVCQzBIR0FDRVFESVFCQzBFcUlSQU1nd0VMUWNjQUlSQU1nZ0VMUWNnQUlSQU1nUUVMUWNrQUlSQU1nQUVMUWNvQUlSQU1md3RCeXdBaEVBeCtDMEhOQUNFUURIMExRY3dBSVJBTWZBdEJ6Z0FoRUF4N0MwSFBBQ0VRREhvTFFkQUFJUkFNZVF0QjBRQWhFQXg0QzBIU0FDRVFESGNMUWRNQUlSQU1kZ3RCMUFBaEVBeDFDMEhXQUNFUURIUUxRZFVBSVJBTWN3dEJCaUVRREhJTFFkY0FJUkFNY1F0QkJTRVFESEFMUWRnQUlSQU1id3RCQkNFUURHNExRZGtBSVJBTWJRdEIyZ0FoRUF4c0MwSGJBQ0VRREdzTFFkd0FJUkFNYWd0QkF5RVFER2tMUWQwQUlSQU1hQXRCM2dBaEVBeG5DMEhmQUNFUURHWUxRZUVBSVJBTVpRdEI0QUFoRUF4a0MwSGlBQ0VRREdNTFFlTUFJUkFNWWd0QkFpRVFER0VMUWVRQUlSQU1ZQXRCNVFBaEVBeGZDMEhtQUNFUURGNExRZWNBSVJBTVhRdEI2QUFoRUF4Y0MwSHBBQ0VRREZzTFFlb0FJUkFNV2d0QjZ3QWhFQXhaQzBIc0FDRVFERmdMUWUwQUlSQU1Wd3RCN2dBaEVBeFdDMEh2QUNFUURGVUxRZkFBSVJBTVZBdEI4UUFoRUF4VEMwSHlBQ0VRREZJTFFmTUFJUkFNVVF0QjlBQWhFQXhRQzBIMUFDRVFERThMUWZZQUlSQU1UZ3RCOXdBaEVBeE5DMEg0QUNFUURFd0xRZmtBSVJBTVN3dEIrZ0FoRUF4S0MwSDdBQ0VRREVrTFFmd0FJUkFNU0F0Qi9RQWhFQXhIQzBIK0FDRVFERVlMUWY4QUlSQU1SUXRCZ0FFaEVBeEVDMEdCQVNFUURFTUxRWUlCSVJBTVFndEJnd0VoRUF4QkMwR0VBU0VRREVBTFFZVUJJUkFNUHd0QmhnRWhFQXcrQzBHSEFTRVFERDBMUVlnQklSQU1QQXRCaVFFaEVBdzdDMEdLQVNFUUREb0xRWXNCSVJBTU9RdEJqQUVoRUF3NEMwR05BU0VRRERjTFFZNEJJUkFNTmd0Qmp3RWhFQXcxQzBHUUFTRVFERFFMUVpFQklSQU1Nd3RCa2dFaEVBd3lDMEdUQVNFUURERUxRWlFCSVJBTU1BdEJsUUVoRUF3dkMwR1dBU0VRREM0TFFaY0JJUkFNTFF0Qm1BRWhFQXdzQzBHWkFTRVFEQ3NMUVpvQklSQU1LZ3RCbXdFaEVBd3BDMEdjQVNFUURDZ0xRWjBCSVJBTUp3dEJuZ0VoRUF3bUMwR2ZBU0VRRENVTFFhQUJJUkFNSkF0Qm9RRWhFQXdqQzBHaUFTRVFEQ0lMUWFNQklSQU1JUXRCcEFFaEVBd2dDMEdsQVNFUURCOExRYVlCSVJBTUhndEJwd0VoRUF3ZEMwR29BU0VRREJ3TFFha0JJUkFNR3d0QnFnRWhFQXdhQzBHckFTRVFEQmtMUWF3QklSQU1HQXRCclFFaEVBd1hDMEd1QVNFUURCWUxRUUVoRUF3VkMwR3ZBU0VRREJRTFFiQUJJUkFNRXd0QnNRRWhFQXdTQzBHekFTRVFEQkVMUWJJQklSQU1FQXRCdEFFaEVBd1BDMEcxQVNFUURBNExRYllCSVJBTURRdEJ0d0VoRUF3TUMwRzRBU0VRREFzTFFia0JJUkFNQ2d0QnVnRWhFQXdKQzBHN0FTRVFEQWdMUWNZQklSQU1Cd3RCdkFFaEVBd0dDMEc5QVNFUURBVUxRYjRCSVJBTUJBdEJ2d0VoRUF3REMwSEFBU0VRREFJTFFjSUJJUkFNQVF0QndRRWhFQXNEUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUlCQU94d0VBQVFJREJBVUdCd2dKQ2dzTURRNFBFQkVTRXhRVkZoY1lHUm9iSEI0ZklDRWpKU2cvUUVGRVJVWkhTRWxLUzB4TlQxQlJVbFBlQTFkWlcxeGRZR0psWm1kb2FXcHJiRzF2Y0hGeWMzUjFkbmQ0ZVhwN2ZIMStnQUdDQVlVQmhnR0hBWWtCaXdHTUFZMEJqZ0dQQVpBQmtRR1VBWlVCbGdHWEFaZ0JtUUdhQVpzQm5BR2RBWjRCbndHZ0FhRUJvZ0dqQWFRQnBRR21BYWNCcUFHcEFhb0Jxd0dzQWEwQnJnR3ZBYkFCc1FHeUFiTUJ0QUcxQWJZQnR3RzRBYmtCdWdHN0Fid0J2UUcrQWI4QndBSEJBY0lCd3dIRUFjVUJ4Z0hIQWNnQnlRSEtBY3NCekFITkFjNEJ6d0hRQWRFQjBnSFRBZFFCMVFIV0FkY0IyQUhaQWRvQjJ3SGNBZDBCM2dIZ0FlRUI0Z0hqQWVRQjVRSG1BZWNCNkFIcEFlb0I2d0hzQWUwQjdnSHZBZkFCOFFIeUFmTUJtUUtrQXJBQy9nTCtBZ3NnQVNJRUlBSkhEZk1CUWQwQklSQU0vd01MSUFFaUVDQUNSdzNkQVVIREFTRVFEUDREQ3lBQklnRWdBa2NOa0FGQjl3QWhFQXo5QXdzZ0FTSUJJQUpIRFlZQlFlOEFJUkFNL0FNTElBRWlBU0FDUncxL1Flb0FJUkFNK3dNTElBRWlBU0FDUncxN1FlZ0FJUkFNK2dNTElBRWlBU0FDUncxNFFlWUFJUkFNK1FNTElBRWlBU0FDUncwYVFSZ2hFQXo0QXdzZ0FTSUJJQUpIRFJSQkVpRVFEUGNEQ3lBQklnRWdBa2NOV1VIRkFDRVFEUFlEQ3lBQklnRWdBa2NOU2tFL0lSQU05UU1MSUFFaUFTQUNSdzFJUVR3aEVBejBBd3NnQVNJQklBSkhEVUZCTVNFUURQTURDeUFBTFFBdVFRRkdEZXNEREljQ0N5QUFJQUVpQVNBQ0VNQ0FnSUFBUVFGSERlWUJJQUJDQURjRElBem5BUXNnQUNBQklnRWdBaEMwZ0lDQUFDSVFEZWNCSUFFaEFRejFBZ3NDUUNBQklnRWdBa2NOQUVFR0lSQU04QU1MSUFBZ0FVRUJhaUlCSUFJUXU0Q0FnQUFpRUEzb0FTQUJJUUVNTVFzZ0FFSUFOd01nUVJJaEVBelZBd3NnQVNJUUlBSkhEU3RCSFNFUURPMERDd0pBSUFFaUFTQUNSZzBBSUFGQkFXb2hBVUVRSVJBTTFBTUxRUWNoRUF6c0F3c2dBRUlBSUFBcEF5QWlFU0FDSUFFaUVHdXRJaEo5SWhNZ0V5QVJWaHMzQXlBZ0VTQVNWaUlVUlEzbEFVRUlJUkFNNndNTEFrQWdBU0lCSUFKR0RRQWdBRUdKZ0lDQUFEWUNDQ0FBSUFFMkFnUWdBU0VCUVJRaEVBelNBd3RCQ1NFUURPb0RDeUFCSVFFZ0FDa0RJRkFONUFFZ0FTRUJEUElDQ3dKQUlBRWlBU0FDUncwQVFRc2hFQXpwQXdzZ0FDQUJRUUZxSWdFZ0FoQzJnSUNBQUNJUURlVUJJQUVoQVF6eUFnc2dBQ0FCSWdFZ0FoQzRnSUNBQUNJUURlVUJJQUVoQVF6eUFnc2dBQ0FCSWdFZ0FoQzRnSUNBQUNJUURlWUJJQUVoQVF3TkN5QUFJQUVpQVNBQ0VMcUFnSUFBSWhBTjV3RWdBU0VCRFBBQ0N3SkFJQUVpQVNBQ1J3MEFRUThoRUF6bEF3c2dBUzBBQUNJUVFUdEdEUWdnRUVFTlJ3M29BU0FCUVFGcUlRRU03d0lMSUFBZ0FTSUJJQUlRdW9DQWdBQWlFQTNvQVNBQklRRU04Z0lMQTBBQ1FDQUJMUUFBUWZDMWdJQUFhaTBBQUNJUVFRRkdEUUFnRUVFQ1J3M3JBU0FBS0FJRUlSQWdBRUVBTmdJRUlBQWdFQ0FCUVFGcUlnRVF1WUNBZ0FBaUVBM3FBU0FCSVFFTTlBSUxJQUZCQVdvaUFTQUNSdzBBQzBFU0lSQU00Z01MSUFBZ0FTSUJJQUlRdW9DQWdBQWlFQTNwQVNBQklRRU1DZ3NnQVNJQklBSkhEUVpCR3lFUURPQURDd0pBSUFFaUFTQUNSdzBBUVJZaEVBemdBd3NnQUVHS2dJQ0FBRFlDQ0NBQUlBRTJBZ1FnQUNBQklBSVF1SUNBZ0FBaUVBM3FBU0FCSVFGQklDRVFETVlEQ3dKQUlBRWlBU0FDUmcwQUEwQUNRQ0FCTFFBQVFmQzNnSUFBYWkwQUFDSVFRUUpHRFFBQ1FDQVFRWDlxRGdUbEFld0JBT3NCN0FFTElBRkJBV29oQVVFSUlSQU15QU1MSUFGQkFXb2lBU0FDUncwQUMwRVZJUkFNM3dNTFFSVWhFQXplQXdzRFFBSkFJQUV0QUFCQjhMbUFnQUJxTFFBQUloQkJBa1lOQUNBUVFYOXFEZ1RlQWV3QjRBSHJBZXdCQ3lBQlFRRnFJZ0VnQWtjTkFBdEJHQ0VRRE4wREN3SkFJQUVpQVNBQ1JnMEFJQUJCaTRDQWdBQTJBZ2dnQUNBQk5nSUVJQUVoQVVFSElSQU14QU1MUVJraEVBemNBd3NnQVVFQmFpRUJEQUlMQWtBZ0FTSVVJQUpIRFFCQkdpRVFETnNEQ3lBVUlRRUNRQ0FVTFFBQVFYTnFEaFRkQXU0QzdnTHVBdTRDN2dMdUF1NEM3Z0x1QXU0QzdnTHVBdTRDN2dMdUF1NEM3Z0x1QWdEdUFndEJBQ0VRSUFCQkFEWUNIQ0FBUWErTGdJQUFOZ0lRSUFCQkFqWUNEQ0FBSUJSQkFXbzJBaFFNMmdNTEFrQWdBUzBBQUNJUVFUdEdEUUFnRUVFTlJ3M29BU0FCUVFGcUlRRU01UUlMSUFGQkFXb2hBUXRCSWlFUURMOERDd0pBSUFFaUVDQUNSdzBBUVJ3aEVBellBd3RDQUNFUklCQWhBU0FRTFFBQVFWQnFEamZuQWVZQkFRSURCQVVHQndnQUFBQUFBQUFBQ1FvTERBME9BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVBFQkVTRXhRQUMwRWVJUkFNdlFNTFFnSWhFUXpsQVF0Q0F5RVJET1FCQzBJRUlSRU00d0VMUWdVaEVRemlBUXRDQmlFUkRPRUJDMElISVJFTTRBRUxRZ2doRVF6ZkFRdENDU0VSRE40QkMwSUtJUkVNM1FFTFFnc2hFUXpjQVF0Q0RDRVJETnNCQzBJTklSRU0yZ0VMUWc0aEVRelpBUXRDRHlFUkROZ0JDMElLSVJFTTF3RUxRZ3NoRVF6V0FRdENEQ0VSRE5VQkMwSU5JUkVNMUFFTFFnNGhFUXpUQVF0Q0R5RVJETklCQzBJQUlSRUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBSUJBdEFBQkJVR29PTitVQjVBRUFBUUlEQkFVR0IrWUI1Z0htQWVZQjVnSG1BZVlCQ0FrS0N3d041Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFlWUI1Z0htQWVZQjVnSG1BZVlCNWdIbUFRNFBFQkVTRStZQkMwSUNJUkVNNUFFTFFnTWhFUXpqQVF0Q0JDRVJET0lCQzBJRklSRU00UUVMUWdZaEVRemdBUXRDQnlFUkROOEJDMElJSVJFTTNnRUxRZ2toRVF6ZEFRdENDaUVSRE53QkMwSUxJUkVNMndFTFFnd2hFUXphQVF0Q0RTRVJETmtCQzBJT0lSRU0yQUVMUWc4aEVRelhBUXRDQ2lFUkROWUJDMElMSVJFTTFRRUxRZ3doRVF6VUFRdENEU0VSRE5NQkMwSU9JUkVNMGdFTFFnOGhFUXpSQVFzZ0FFSUFJQUFwQXlBaUVTQUNJQUVpRUd1dEloSjlJaE1nRXlBUlZoczNBeUFnRVNBU1ZpSVVSUTNTQVVFZklSQU13QU1MQWtBZ0FTSUJJQUpHRFFBZ0FFR0pnSUNBQURZQ0NDQUFJQUUyQWdRZ0FTRUJRU1FoRUF5bkF3dEJJQ0VRREw4REN5QUFJQUVpRUNBQ0VMNkFnSUFBUVg5cURnVzJBUURGQWdIUkFkSUJDMEVSSVJBTXBBTUxJQUJCQVRvQUx5QVFJUUVNdXdNTElBRWlBU0FDUnczU0FVRWtJUkFNdXdNTElBRWlEU0FDUncwZVFjWUFJUkFNdWdNTElBQWdBU0lCSUFJUXNvQ0FnQUFpRUEzVUFTQUJJUUVNdFFFTElBRWlFQ0FDUncwbVFkQUFJUkFNdUFNTEFrQWdBU0lCSUFKSERRQkJLQ0VRRExnREN5QUFRUUEyQWdRZ0FFR01nSUNBQURZQ0NDQUFJQUVnQVJDeGdJQ0FBQ0lRRGRNQklBRWhBUXpZQVFzQ1FDQUJJaEFnQWtjTkFFRXBJUkFNdHdNTElCQXRBQUFpQVVFZ1JnMFVJQUZCQ1VjTjB3RWdFRUVCYWlFQkRCVUxBa0FnQVNJQklBSkdEUUFnQVVFQmFpRUJEQmNMUVNvaEVBeTFBd3NDUUNBQkloQWdBa2NOQUVFcklSQU10UU1MQWtBZ0VDMEFBQ0lCUVFsR0RRQWdBVUVnUnczVkFRc2dBQzBBTEVFSVJnM1RBU0FRSVFFTWtRTUxBa0FnQVNJQklBSkhEUUJCTENFUURMUURDeUFCTFFBQVFRcEhEZFVCSUFGQkFXb2hBUXpKQWdzZ0FTSU9JQUpIRGRVQlFTOGhFQXl5QXdzRFFBSkFJQUV0QUFBaUVFRWdSZzBBQWtBZ0VFRjJhZzRFQU53QjNBRUEyZ0VMSUFFaEFRemdBUXNnQVVFQmFpSUJJQUpIRFFBTFFURWhFQXl4QXd0Qk1pRVFJQUVpRkNBQ1JnMndBeUFDSUJScklBQW9BZ0FpQVdvaEZTQVVJQUZyUVFOcUlSWUNRQU5BSUJRdEFBQWlGMEVnY2lBWElCZEJ2MzlxUWY4QmNVRWFTUnRCL3dGeElBRkI4THVBZ0FCcUxRQUFSdzBCQWtBZ0FVRURSdzBBUVFZaEFReVdBd3NnQVVFQmFpRUJJQlJCQVdvaUZDQUNSdzBBQ3lBQUlCVTJBZ0FNc1FNTElBQkJBRFlDQUNBVUlRRU0yUUVMUVRNaEVDQUJJaFFnQWtZTnJ3TWdBaUFVYXlBQUtBSUFJZ0ZxSVJVZ0ZDQUJhMEVJYWlFV0FrQURRQ0FVTFFBQUloZEJJSElnRnlBWFFiOS9ha0gvQVhGQkdra2JRZjhCY1NBQlFmUzdnSUFBYWkwQUFFY05BUUpBSUFGQkNFY05BRUVGSVFFTWxRTUxJQUZCQVdvaEFTQVVRUUZxSWhRZ0FrY05BQXNnQUNBVk5nSUFETEFEQ3lBQVFRQTJBZ0FnRkNFQkROZ0JDMEUwSVJBZ0FTSVVJQUpHRGE0RElBSWdGR3NnQUNnQ0FDSUJhaUVWSUJRZ0FXdEJCV29oRmdKQUEwQWdGQzBBQUNJWFFTQnlJQmNnRjBHL2YycEIvd0Z4UVJwSkcwSC9BWEVnQVVIUXdvQ0FBR290QUFCSERRRUNRQ0FCUVFWSERRQkJCeUVCREpRREN5QUJRUUZxSVFFZ0ZFRUJhaUlVSUFKSERRQUxJQUFnRlRZQ0FBeXZBd3NnQUVFQU5nSUFJQlFoQVF6WEFRc0NRQ0FCSWdFZ0FrWU5BQU5BQWtBZ0FTMEFBRUdBdm9DQUFHb3RBQUFpRUVFQlJnMEFJQkJCQWtZTkNpQUJJUUVNM1FFTElBRkJBV29pQVNBQ1J3MEFDMEV3SVJBTXJnTUxRVEFoRUF5dEF3c0NRQ0FCSWdFZ0FrWU5BQU5BQWtBZ0FTMEFBQ0lRUVNCR0RRQWdFRUYyYWc0RTJRSGFBZG9CMlFIYUFRc2dBVUVCYWlJQklBSkhEUUFMUVRnaEVBeXRBd3RCT0NFUURLd0RDd05BQWtBZ0FTMEFBQ0lRUVNCR0RRQWdFRUVKUncwREN5QUJRUUZxSWdFZ0FrY05BQXRCUENFUURLc0RDd05BQWtBZ0FTMEFBQ0lRUVNCR0RRQUNRQUpBSUJCQmRtb09CTm9CQVFIYUFRQUxJQkJCTEVZTjJ3RUxJQUVoQVF3RUN5QUJRUUZxSWdFZ0FrY05BQXRCUHlFUURLb0RDeUFCSVFFTTJ3RUxRY0FBSVJBZ0FTSVVJQUpHRGFnRElBSWdGR3NnQUNnQ0FDSUJhaUVXSUJRZ0FXdEJCbW9oRndKQUEwQWdGQzBBQUVFZ2NpQUJRWURBZ0lBQWFpMEFBRWNOQVNBQlFRWkdEWTRESUFGQkFXb2hBU0FVUVFGcUloUWdBa2NOQUFzZ0FDQVdOZ0lBREtrREN5QUFRUUEyQWdBZ0ZDRUJDMEUySVJBTWpnTUxBa0FnQVNJUElBSkhEUUJCd1FBaEVBeW5Bd3NnQUVHTWdJQ0FBRFlDQ0NBQUlBODJBZ1FnRHlFQklBQXRBQ3hCZjJvT0JNMEIxUUhYQWRrQmh3TUxJQUZCQVdvaEFRek1BUXNDUUNBQklnRWdBa1lOQUFOQUFrQWdBUzBBQUNJUVFTQnlJQkFnRUVHL2YycEIvd0Z4UVJwSkcwSC9BWEVpRUVFSlJnMEFJQkJCSUVZTkFBSkFBa0FDUUFKQUlCQkJuWDlxRGhNQUF3TURBd01EQXdFREF3TURBd01EQXdNQ0F3c2dBVUVCYWlFQlFURWhFQXlSQXdzZ0FVRUJhaUVCUVRJaEVBeVFBd3NnQVVFQmFpRUJRVE1oRUF5UEF3c2dBU0VCRE5BQkN5QUJRUUZxSWdFZ0FrY05BQXRCTlNFUURLVURDMEUxSVJBTXBBTUxBa0FnQVNJQklBSkdEUUFEUUFKQUlBRXRBQUJCZ0x5QWdBQnFMUUFBUVFGR0RRQWdBU0VCRE5NQkN5QUJRUUZxSWdFZ0FrY05BQXRCUFNFUURLUURDMEU5SVJBTW93TUxJQUFnQVNJQklBSVFzSUNBZ0FBaUVBM1dBU0FCSVFFTUFRc2dFRUVCYWlFQkMwRThJUkFNaHdNTEFrQWdBU0lCSUFKSERRQkJ3Z0FoRUF5Z0F3c0NRQU5BQWtBZ0FTMEFBRUYzYWc0WUFBTCtBdjRDaEFQK0F2NEMvZ0wrQXY0Qy9nTCtBdjRDL2dMK0F2NEMvZ0wrQXY0Qy9nTCtBdjRDL2dJQS9nSUxJQUZCQVdvaUFTQUNSdzBBQzBIQ0FDRVFES0FEQ3lBQlFRRnFJUUVnQUMwQUxVRUJjVVVOdlFFZ0FTRUJDMEVzSVJBTWhRTUxJQUVpQVNBQ1J3M1RBVUhFQUNFUURKMERDd05BQWtBZ0FTMEFBRUdRd0lDQUFHb3RBQUJCQVVZTkFDQUJJUUVNdHdJTElBRkJBV29pQVNBQ1J3MEFDMEhGQUNFUURKd0RDeUFOTFFBQUloQkJJRVlOc3dFZ0VFRTZSdzJCQXlBQUtBSUVJUUVnQUVFQU5nSUVJQUFnQVNBTkVLK0FnSUFBSWdFTjBBRWdEVUVCYWlFQkRMTUNDMEhIQUNFUUlBRWlEU0FDUmcyYUF5QUNJQTFySUFBb0FnQWlBV29oRmlBTklBRnJRUVZxSVJjRFFDQU5MUUFBSWhSQklISWdGQ0FVUWI5L2FrSC9BWEZCR2trYlFmOEJjU0FCUVpEQ2dJQUFhaTBBQUVjTmdBTWdBVUVGUmczMEFpQUJRUUZxSVFFZ0RVRUJhaUlOSUFKSERRQUxJQUFnRmpZQ0FBeWFBd3RCeUFBaEVDQUJJZzBnQWtZTm1RTWdBaUFOYXlBQUtBSUFJZ0ZxSVJZZ0RTQUJhMEVKYWlFWEEwQWdEUzBBQUNJVVFTQnlJQlFnRkVHL2YycEIvd0Z4UVJwSkcwSC9BWEVnQVVHV3dvQ0FBR290QUFCSERmOENBa0FnQVVFSlJ3MEFRUUloQVF6MUFnc2dBVUVCYWlFQklBMUJBV29pRFNBQ1J3MEFDeUFBSUJZMkFnQU1tUU1MQWtBZ0FTSU5JQUpIRFFCQnlRQWhFQXlaQXdzQ1FBSkFJQTB0QUFBaUFVRWdjaUFCSUFGQnYzOXFRZjhCY1VFYVNSdEIvd0Z4UVpKL2FnNEhBSUFEZ0FPQUE0QURnQU1CZ0FNTElBMUJBV29oQVVFK0lSQU1nQU1MSUExQkFXb2hBVUUvSVJBTS93SUxRY29BSVJBZ0FTSU5JQUpHRFpjRElBSWdEV3NnQUNnQ0FDSUJhaUVXSUEwZ0FXdEJBV29oRndOQUlBMHRBQUFpRkVFZ2NpQVVJQlJCdjM5cVFmOEJjVUVhU1J0Qi93RnhJQUZCb01LQWdBQnFMUUFBUnczOUFpQUJRUUZHRGZBQ0lBRkJBV29oQVNBTlFRRnFJZzBnQWtjTkFBc2dBQ0FXTmdJQURKY0RDMEhMQUNFUUlBRWlEU0FDUmcyV0F5QUNJQTFySUFBb0FnQWlBV29oRmlBTklBRnJRUTVxSVJjRFFDQU5MUUFBSWhSQklISWdGQ0FVUWI5L2FrSC9BWEZCR2trYlFmOEJjU0FCUWFMQ2dJQUFhaTBBQUVjTi9BSWdBVUVPUmczd0FpQUJRUUZxSVFFZ0RVRUJhaUlOSUFKSERRQUxJQUFnRmpZQ0FBeVdBd3RCekFBaEVDQUJJZzBnQWtZTmxRTWdBaUFOYXlBQUtBSUFJZ0ZxSVJZZ0RTQUJhMEVQYWlFWEEwQWdEUzBBQUNJVVFTQnlJQlFnRkVHL2YycEIvd0Z4UVJwSkcwSC9BWEVnQVVIQXdvQ0FBR290QUFCSERmc0NBa0FnQVVFUFJ3MEFRUU1oQVF6eEFnc2dBVUVCYWlFQklBMUJBV29pRFNBQ1J3MEFDeUFBSUJZMkFnQU1sUU1MUWMwQUlSQWdBU0lOSUFKR0RaUURJQUlnRFdzZ0FDZ0NBQ0lCYWlFV0lBMGdBV3RCQldvaEZ3TkFJQTB0QUFBaUZFRWdjaUFVSUJSQnYzOXFRZjhCY1VFYVNSdEIvd0Z4SUFGQjBNS0FnQUJxTFFBQVJ3MzZBZ0pBSUFGQkJVY05BRUVFSVFFTThBSUxJQUZCQVdvaEFTQU5RUUZxSWcwZ0FrY05BQXNnQUNBV05nSUFESlFEQ3dKQUlBRWlEU0FDUncwQVFjNEFJUkFNbEFNTEFrQUNRQUpBQWtBZ0RTMEFBQ0lCUVNCeUlBRWdBVUcvZjJwQi93RnhRUnBKRzBIL0FYRkJuWDlxRGhNQS9RTDlBdjBDL1FMOUF2MEMvUUw5QXYwQy9RTDlBdjBDQWYwQy9RTDlBZ0lEL1FJTElBMUJBV29oQVVIQkFDRVFEUDBDQ3lBTlFRRnFJUUZCd2dBaEVBejhBZ3NnRFVFQmFpRUJRY01BSVJBTSt3SUxJQTFCQVdvaEFVSEVBQ0VRRFBvQ0N3SkFJQUVpQVNBQ1JnMEFJQUJCallDQWdBQTJBZ2dnQUNBQk5nSUVJQUVoQVVIRkFDRVFEUG9DQzBIUEFDRVFESklEQ3lBUUlRRUNRQUpBSUJBdEFBQkJkbW9PQkFHb0FxZ0NBS2dDQ3lBUVFRRnFJUUVMUVNjaEVBejRBZ3NDUUNBQklnRWdBa2NOQUVIUkFDRVFESkVEQ3dKQUlBRXRBQUJCSUVZTkFDQUJJUUVNalFFTElBRkJBV29oQVNBQUxRQXRRUUZ4UlEzSEFTQUJJUUVNakFFTElBRWlGeUFDUnczSUFVSFNBQ0VRREk4REMwSFRBQ0VRSUFFaUZDQUNSZzJPQXlBQ0lCUnJJQUFvQWdBaUFXb2hGaUFVSUFGclFRRnFJUmNEUUNBVUxRQUFJQUZCMXNLQWdBQnFMUUFBUnczTUFTQUJRUUZHRGNjQklBRkJBV29oQVNBVVFRRnFJaFFnQWtjTkFBc2dBQ0FXTmdJQURJNERDd0pBSUFFaUFTQUNSdzBBUWRVQUlSQU1qZ01MSUFFdEFBQkJDa2NOekFFZ0FVRUJhaUVCRE1jQkN3SkFJQUVpQVNBQ1J3MEFRZFlBSVJBTWpRTUxBa0FDUUNBQkxRQUFRWFpxRGdRQXpRSE5BUUhOQVFzZ0FVRUJhaUVCRE1jQkN5QUJRUUZxSVFGQnlnQWhFQXp6QWdzZ0FDQUJJZ0VnQWhDdWdJQ0FBQ0lRRGNzQklBRWhBVUhOQUNFUURQSUNDeUFBTFFBcFFTSkdEWVVEREtZQ0N3SkFJQUVpQVNBQ1J3MEFRZHNBSVJBTWlnTUxRUUFoRkVFQklSZEJBU0VXUVFBaEVBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FDQUJMUUFBUVZCcURnclVBZE1CQUFFQ0F3UUZCZ2pWQVF0QkFpRVFEQVlMUVFNaEVBd0ZDMEVFSVJBTUJBdEJCU0VRREFNTFFRWWhFQXdDQzBFSElSQU1BUXRCQ0NFUUMwRUFJUmRCQUNFV1FRQWhGQXpNQVF0QkNTRVFRUUVoRkVFQUlSZEJBQ0VXRE1zQkN3SkFJQUVpQVNBQ1J3MEFRZDBBSVJBTWlRTUxJQUV0QUFCQkxrY056QUVnQVVFQmFpRUJES1lDQ3lBQklnRWdBa2NOekFGQjN3QWhFQXlIQXdzQ1FDQUJJZ0VnQWtZTkFDQUFRWTZBZ0lBQU5nSUlJQUFnQVRZQ0JDQUJJUUZCMEFBaEVBenVBZ3RCNEFBaEVBeUdBd3RCNFFBaEVDQUJJZ0VnQWtZTmhRTWdBaUFCYXlBQUtBSUFJaFJxSVJZZ0FTQVVhMEVEYWlFWEEwQWdBUzBBQUNBVVFlTENnSUFBYWkwQUFFY056UUVnRkVFRFJnM01BU0FVUVFGcUlSUWdBVUVCYWlJQklBSkhEUUFMSUFBZ0ZqWUNBQXlGQXd0QjRnQWhFQ0FCSWdFZ0FrWU5oQU1nQWlBQmF5QUFLQUlBSWhScUlSWWdBU0FVYTBFQ2FpRVhBMEFnQVMwQUFDQVVRZWJDZ0lBQWFpMEFBRWNOekFFZ0ZFRUNSZzNPQVNBVVFRRnFJUlFnQVVFQmFpSUJJQUpIRFFBTElBQWdGallDQUF5RUF3dEI0d0FoRUNBQklnRWdBa1lOZ3dNZ0FpQUJheUFBS0FJQUloUnFJUllnQVNBVWEwRURhaUVYQTBBZ0FTMEFBQ0FVUWVuQ2dJQUFhaTBBQUVjTnl3RWdGRUVEUmczT0FTQVVRUUZxSVJRZ0FVRUJhaUlCSUFKSERRQUxJQUFnRmpZQ0FBeURBd3NDUUNBQklnRWdBa2NOQUVIbEFDRVFESU1EQ3lBQUlBRkJBV29pQVNBQ0VLaUFnSUFBSWhBTnpRRWdBU0VCUWRZQUlSQU02UUlMQWtBZ0FTSUJJQUpHRFFBRFFBSkFJQUV0QUFBaUVFRWdSZzBBQWtBQ1FBSkFJQkJCdUg5cURnc0FBYzhCendIUEFjOEJ6d0hQQWM4Qnp3RUN6d0VMSUFGQkFXb2hBVUhTQUNFUURPMENDeUFCUVFGcUlRRkIwd0FoRUF6c0Fnc2dBVUVCYWlFQlFkUUFJUkFNNndJTElBRkJBV29pQVNBQ1J3MEFDMEhrQUNFUURJSURDMEhrQUNFUURJRURDd05BQWtBZ0FTMEFBRUh3d29DQUFHb3RBQUFpRUVFQlJnMEFJQkJCZm1vT0E4OEIwQUhSQWRJQkN5QUJRUUZxSWdFZ0FrY05BQXRCNWdBaEVBeUFBd3NDUUNBQklnRWdBa1lOQUNBQlFRRnFJUUVNQXd0QjV3QWhFQXovQWdzRFFBSkFJQUV0QUFCQjhNU0FnQUJxTFFBQUloQkJBVVlOQUFKQUlCQkJmbW9PQk5JQjB3SFVBUURWQVFzZ0FTRUJRZGNBSVJBTTV3SUxJQUZCQVdvaUFTQUNSdzBBQzBIb0FDRVFEUDRDQ3dKQUlBRWlBU0FDUncwQVFla0FJUkFNL2dJTEFrQWdBUzBBQUNJUVFYWnFEaHE2QWRVQjFRRzhBZFVCMVFIVkFkVUIxUUhWQWRVQjFRSFZBZFVCMVFIVkFkVUIxUUhWQWRVQjFRSFZBY29CMVFIVkFRRFRBUXNnQVVFQmFpRUJDMEVHSVJBTTR3SUxBMEFDUUNBQkxRQUFRZkRHZ0lBQWFpMEFBRUVCUmcwQUlBRWhBUXllQWdzZ0FVRUJhaUlCSUFKSERRQUxRZW9BSVJBTSt3SUxBa0FnQVNJQklBSkdEUUFnQVVFQmFpRUJEQU1MUWVzQUlSQU0rZ0lMQWtBZ0FTSUJJQUpIRFFCQjdBQWhFQXo2QWdzZ0FVRUJhaUVCREFFTEFrQWdBU0lCSUFKSERRQkI3UUFoRUF6NUFnc2dBVUVCYWlFQkMwRUVJUkFNM2dJTEFrQWdBU0lVSUFKSERRQkI3Z0FoRUF6M0Fnc2dGQ0VCQWtBQ1FBSkFJQlF0QUFCQjhNaUFnQUJxTFFBQVFYOXFEZ2ZVQWRVQjFnRUFuQUlCQXRjQkN5QVVRUUZxSVFFTUNnc2dGRUVCYWlFQkRNMEJDMEVBSVJBZ0FFRUFOZ0ljSUFCQm01S0FnQUEyQWhBZ0FFRUhOZ0lNSUFBZ0ZFRUJhallDRkF6MkFnc0NRQU5BQWtBZ0FTMEFBRUh3eUlDQUFHb3RBQUFpRUVFRVJnMEFBa0FDUUNBUVFYOXFEZ2ZTQWRNQjFBSFpBUUFFQWRrQkN5QUJJUUZCMmdBaEVBemdBZ3NnQVVFQmFpRUJRZHdBSVJBTTN3SUxJQUZCQVdvaUFTQUNSdzBBQzBIdkFDRVFEUFlDQ3lBQlFRRnFJUUVNeXdFTEFrQWdBU0lVSUFKSERRQkI4QUFoRUF6MUFnc2dGQzBBQUVFdlJ3M1VBU0FVUVFGcUlRRU1CZ3NDUUNBQkloUWdBa2NOQUVIeEFDRVFEUFFDQ3dKQUlCUXRBQUFpQVVFdlJ3MEFJQlJCQVdvaEFVSGRBQ0VRRE5zQ0N5QUJRWFpxSWdSQkZrc04wd0ZCQVNBRWRFR0pnSUFDY1VVTjB3RU15Z0lMQWtBZ0FTSUJJQUpHRFFBZ0FVRUJhaUVCUWQ0QUlSQU0yZ0lMUWZJQUlSQU04Z0lMQWtBZ0FTSVVJQUpIRFFCQjlBQWhFQXp5QWdzZ0ZDRUJBa0FnRkMwQUFFSHd6SUNBQUdvdEFBQkJmMm9PQThrQ2xBSUExQUVMUWVFQUlSQU0yQUlMQWtBZ0FTSVVJQUpHRFFBRFFBSkFJQlF0QUFCQjhNcUFnQUJxTFFBQUlnRkJBMFlOQUFKQUlBRkJmMm9PQXNzQ0FOVUJDeUFVSVFGQjN3QWhFQXphQWdzZ0ZFRUJhaUlVSUFKSERRQUxRZk1BSVJBTThRSUxRZk1BSVJBTThBSUxBa0FnQVNJQklBSkdEUUFnQUVHUGdJQ0FBRFlDQ0NBQUlBRTJBZ1FnQVNFQlFlQUFJUkFNMXdJTFFmVUFJUkFNN3dJTEFrQWdBU0lCSUFKSERRQkI5Z0FoRUF6dkFnc2dBRUdQZ0lDQUFEWUNDQ0FBSUFFMkFnUWdBU0VCQzBFRElSQU0xQUlMQTBBZ0FTMEFBRUVnUnczREFpQUJRUUZxSWdFZ0FrY05BQXRCOXdBaEVBenNBZ3NDUUNBQklnRWdBa2NOQUVINEFDRVFET3dDQ3lBQkxRQUFRU0JIRGM0QklBRkJBV29oQVF6dkFRc2dBQ0FCSWdFZ0FoQ3NnSUNBQUNJUURjNEJJQUVoQVF5T0Fnc0NRQ0FCSWdRZ0FrY05BRUg2QUNFUURPb0NDeUFFTFFBQVFjd0FSdzNSQVNBRVFRRnFJUUZCRXlFUURNOEJDd0pBSUFFaUJDQUNSdzBBUWZzQUlSQU02UUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJXb2hFQU5BSUFRdEFBQWdBVUh3em9DQUFHb3RBQUJIRGRBQklBRkJCVVlOemdFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQit3QWhFQXpvQWdzQ1FDQUJJZ1FnQWtjTkFFSDhBQ0VRRE9nQ0N3SkFBa0FnQkMwQUFFRzlmMm9PREFEUkFkRUIwUUhSQWRFQjBRSFJBZEVCMFFIUkFRSFJBUXNnQkVFQmFpRUJRZVlBSVJBTXp3SUxJQVJCQVdvaEFVSG5BQ0VRRE00Q0N3SkFJQUVpQkNBQ1J3MEFRZjBBSVJBTTV3SUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQW1vaEVBSkFBMEFnQkMwQUFDQUJRZTNQZ0lBQWFpMEFBRWNOendFZ0FVRUNSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWYwQUlSQU01d0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJFQ0VRRE13QkN3SkFJQUVpQkNBQ1J3MEFRZjRBSVJBTTVnSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQldvaEVBSkFBMEFnQkMwQUFDQUJRZmJPZ0lBQWFpMEFBRWNOemdFZ0FVRUZSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWY0QUlSQU01Z0lMSUFCQkFEWUNBQ0FRUVFGcUlRRkJGaUVRRE1zQkN3SkFJQUVpQkNBQ1J3MEFRZjhBSVJBTTVRSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQTJvaEVBSkFBMEFnQkMwQUFDQUJRZnpPZ0lBQWFpMEFBRWNOelFFZ0FVRURSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWY4QUlSQU01UUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJCU0VRRE1vQkN3SkFJQUVpQkNBQ1J3MEFRWUFCSVJBTTVBSUxJQVF0QUFCQjJRQkhEY3NCSUFSQkFXb2hBVUVJSVJBTXlRRUxBa0FnQVNJRUlBSkhEUUJCZ1FFaEVBempBZ3NDUUFKQUlBUXRBQUJCc245cURnTUF6QUVCekFFTElBUkJBV29oQVVIckFDRVFETW9DQ3lBRVFRRnFJUUZCN0FBaEVBekpBZ3NDUUNBQklnUWdBa2NOQUVHQ0FTRVFET0lDQ3dKQUFrQWdCQzBBQUVHNGYyb09DQURMQWNzQnl3SExBY3NCeXdFQnl3RUxJQVJCQVdvaEFVSHFBQ0VRRE1rQ0N5QUVRUUZxSVFGQjdRQWhFQXpJQWdzQ1FDQUJJZ1FnQWtjTkFFR0RBU0VRRE9FQ0N5QUNJQVJySUFBb0FnQWlBV29oRUNBRUlBRnJRUUpxSVJRQ1FBTkFJQVF0QUFBZ0FVR0F6NENBQUdvdEFBQkhEY2tCSUFGQkFrWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0VEWUNBRUdEQVNFUURPRUNDMEVBSVJBZ0FFRUFOZ0lBSUJSQkFXb2hBUXpHQVFzQ1FDQUJJZ1FnQWtjTkFFR0VBU0VRRE9BQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUVJxSVJBQ1FBTkFJQVF0QUFBZ0FVR0R6NENBQUdvdEFBQkhEY2dCSUFGQkJFWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdFQVNFUURPQUNDeUFBUVFBMkFnQWdFRUVCYWlFQlFTTWhFQXpGQVFzQ1FDQUJJZ1FnQWtjTkFFR0ZBU0VRRE44Q0N3SkFBa0FnQkMwQUFFRzBmMm9PQ0FESUFjZ0J5QUhJQWNnQnlBRUJ5QUVMSUFSQkFXb2hBVUh2QUNFUURNWUNDeUFFUVFGcUlRRkI4QUFoRUF6RkFnc0NRQ0FCSWdRZ0FrY05BRUdHQVNFUURONENDeUFFTFFBQVFjVUFSdzNGQVNBRVFRRnFJUUVNZ3dJTEFrQWdBU0lFSUFKSERRQkJod0VoRUF6ZEFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVEYWlFUUFrQURRQ0FFTFFBQUlBRkJpTStBZ0FCcUxRQUFSdzNGQVNBQlFRTkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCaHdFaEVBemRBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRXRJUkFNd2dFTEFrQWdBU0lFSUFKSERRQkJpQUVoRUF6Y0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVJYWlFUUFrQURRQ0FFTFFBQUlBRkIwTStBZ0FCcUxRQUFSdzNFQVNBQlFRaEdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCaUFFaEVBemNBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRXBJUkFNd1FFTEFrQWdBU0lCSUFKSERRQkJpUUVoRUF6YkFndEJBU0VRSUFFdEFBQkIzd0JIRGNBQklBRkJBV29oQVF5QkFnc0NRQ0FCSWdRZ0FrY05BRUdLQVNFUUROb0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFGcUlSQURRQ0FFTFFBQUlBRkJqTStBZ0FCcUxRQUFSdzNCQVNBQlFRRkdEYThDSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUVlvQklSQU0yUUlMQWtBZ0FTSUVJQUpIRFFCQml3RWhFQXpaQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUNhaUVRQWtBRFFDQUVMUUFBSUFGQmpzK0FnQUJxTFFBQVJ3M0JBU0FCUVFKR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJpd0VoRUF6WkFnc2dBRUVBTmdJQUlCQkJBV29oQVVFQ0lSQU12Z0VMQWtBZ0FTSUVJQUpIRFFCQmpBRWhFQXpZQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQWtBRFFDQUVMUUFBSUFGQjhNK0FnQUJxTFFBQVJ3M0FBU0FCUVFGR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJqQUVoRUF6WUFnc2dBRUVBTmdJQUlCQkJBV29oQVVFZklSQU12UUVMQWtBZ0FTSUVJQUpIRFFCQmpRRWhFQXpYQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQWtBRFFDQUVMUUFBSUFGQjhzK0FnQUJxTFFBQVJ3Mi9BU0FCUVFGR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJqUUVoRUF6WEFnc2dBRUVBTmdJQUlCQkJBV29oQVVFSklSQU12QUVMQWtBZ0FTSUVJQUpIRFFCQmpnRWhFQXpXQWdzQ1FBSkFJQVF0QUFCQnQzOXFEZ2NBdndHL0FiOEJ2d0cvQVFHL0FRc2dCRUVCYWlFQlFmZ0FJUkFNdlFJTElBUkJBV29oQVVINUFDRVFETHdDQ3dKQUlBRWlCQ0FDUncwQVFZOEJJUkFNMVFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCV29oRUFKQUEwQWdCQzBBQUNBQlFaSFBnSUFBYWkwQUFFY052UUVnQVVFRlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWThCSVJBTTFRSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkdDRVFETG9CQ3dKQUlBRWlCQ0FDUncwQVFaQUJJUkFNMUFJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBbW9oRUFKQUEwQWdCQzBBQUNBQlFaZlBnSUFBYWkwQUFFY052QUVnQVVFQ1JnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWkFCSVJBTTFBSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkZ5RVFETGtCQ3dKQUlBRWlCQ0FDUncwQVFaRUJJUkFNMHdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCbW9oRUFKQUEwQWdCQzBBQUNBQlFaclBnSUFBYWkwQUFFY051d0VnQVVFR1JnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWkVCSVJBTTB3SUxJQUJCQURZQ0FDQVFRUUZxSVFGQkZTRVFETGdCQ3dKQUlBRWlCQ0FDUncwQVFaSUJJUkFNMGdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCV29oRUFKQUEwQWdCQzBBQUNBQlFhSFBnSUFBYWkwQUFFY051Z0VnQVVFRlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWklCSVJBTTBnSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkhpRVFETGNCQ3dKQUlBRWlCQ0FDUncwQVFaTUJJUkFNMFFJTElBUXRBQUJCekFCSERiZ0JJQVJCQVdvaEFVRUtJUkFNdGdFTEFrQWdCQ0FDUncwQVFaUUJJUkFNMEFJTEFrQUNRQ0FFTFFBQVFiOS9hZzRQQUxrQnVRRzVBYmtCdVFHNUFia0J1UUc1QWJrQnVRRzVBYmtCQWJrQkN5QUVRUUZxSVFGQi9nQWhFQXkzQWdzZ0JFRUJhaUVCUWY4QUlSQU10Z0lMQWtBZ0JDQUNSdzBBUVpVQklSQU16d0lMQWtBQ1FDQUVMUUFBUWI5L2FnNERBTGdCQWJnQkN5QUVRUUZxSVFGQi9RQWhFQXkyQWdzZ0JFRUJhaUVFUVlBQklSQU10UUlMQWtBZ0JDQUNSdzBBUVpZQklSQU16Z0lMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFXb2hFQUpBQTBBZ0JDMEFBQ0FCUWFmUGdJQUFhaTBBQUVjTnRnRWdBVUVCUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFaWUJJUkFNemdJTElBQkJBRFlDQUNBUVFRRnFJUUZCQ3lFUURMTUJDd0pBSUFRZ0FrY05BRUdYQVNFUURNMENDd0pBQWtBQ1FBSkFJQVF0QUFCQlUyb09Jd0M0QWJnQnVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCdUFHNEFiZ0J1QUc0QWJnQnVBRzRBYmdCQWJnQnVBRzRBYmdCdUFFQ3VBRzRBYmdCQTdnQkN5QUVRUUZxSVFGQit3QWhFQXkyQWdzZ0JFRUJhaUVCUWZ3QUlSQU10UUlMSUFSQkFXb2hCRUdCQVNFUURMUUNDeUFFUVFGcUlRUkJnZ0VoRUF5ekFnc0NRQ0FFSUFKSERRQkJtQUVoRUF6TUFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVFYWlFUUFrQURRQ0FFTFFBQUlBRkJxYytBZ0FCcUxRQUFSdzIwQVNBQlFRUkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCbUFFaEVBek1BZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRVpJUkFNc1FFTEFrQWdCQ0FDUncwQVFaa0JJUkFNeXdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJCV29oRUFKQUEwQWdCQzBBQUNBQlFhN1BnSUFBYWkwQUFFY05zd0VnQVVFRlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRWmtCSVJBTXl3SUxJQUJCQURZQ0FDQVFRUUZxSVFGQkJpRVFETEFCQ3dKQUlBUWdBa2NOQUVHYUFTRVFETW9DQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRRnFJUkFDUUFOQUlBUXRBQUFnQVVHMHo0Q0FBR290QUFCSERiSUJJQUZCQVVZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR2FBU0VRRE1vQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVJ3aEVBeXZBUXNDUUNBRUlBSkhEUUJCbXdFaEVBekpBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFQmFpRVFBa0FEUUNBRUxRQUFJQUZCdHMrQWdBQnFMUUFBUncyeEFTQUJRUUZHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQm13RWhFQXpKQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVuSVJBTXJnRUxBa0FnQkNBQ1J3MEFRWndCSVJBTXlBSUxBa0FDUUNBRUxRQUFRYXgvYWc0Q0FBR3hBUXNnQkVFQmFpRUVRWVlCSVJBTXJ3SUxJQVJCQVdvaEJFR0hBU0VRREs0Q0N3SkFJQVFnQWtjTkFFR2RBU0VRRE1jQ0N5QUNJQVJySUFBb0FnQWlBV29oRkNBRUlBRnJRUUZxSVJBQ1FBTkFJQVF0QUFBZ0FVRzR6NENBQUdvdEFBQkhEYThCSUFGQkFVWU5BU0FCUVFGcUlRRWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUdkQVNFUURNY0NDeUFBUVFBMkFnQWdFRUVCYWlFQlFTWWhFQXlzQVFzQ1FDQUVJQUpIRFFCQm5nRWhFQXpHQWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRUJhaUVRQWtBRFFDQUVMUUFBSUFGQnVzK0FnQUJxTFFBQVJ3MnVBU0FCUVFGR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJuZ0VoRUF6R0Fnc2dBRUVBTmdJQUlCQkJBV29oQVVFRElSQU1xd0VMQWtBZ0JDQUNSdzBBUVo4QklSQU14UUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFtb2hFQUpBQTBBZ0JDMEFBQ0FCUWUzUGdJQUFhaTBBQUVjTnJRRWdBVUVDUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFaOEJJUkFNeFFJTElBQkJBRFlDQUNBUVFRRnFJUUZCRENFUURLb0JDd0pBSUFRZ0FrY05BRUdnQVNFUURNUUNDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFOcUlSQUNRQU5BSUFRdEFBQWdBVUc4ejRDQUFHb3RBQUJIRGF3QklBRkJBMFlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHZ0FTRVFETVFDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUTBoRUF5cEFRc0NRQ0FFSUFKSERRQkJvUUVoRUF6REFnc0NRQUpBSUFRdEFBQkJ1bjlxRGdzQXJBR3NBYXdCckFHc0Fhd0JyQUdzQWF3QkFhd0JDeUFFUVFGcUlRUkJpd0VoRUF5cUFnc2dCRUVCYWlFRVFZd0JJUkFNcVFJTEFrQWdCQ0FDUncwQVFhSUJJUkFNd2dJTElBUXRBQUJCMEFCSERha0JJQVJCQVdvaEJBenBBUXNDUUNBRUlBSkhEUUJCb3dFaEVBekJBZ3NDUUFKQUlBUXRBQUJCdDM5cURnY0JxZ0dxQWFvQnFnR3FBUUNxQVFzZ0JFRUJhaUVFUVk0QklSQU1xQUlMSUFSQkFXb2hBVUVpSVJBTXBnRUxBa0FnQkNBQ1J3MEFRYVFCSVJBTXdBSUxJQUlnQkdzZ0FDZ0NBQ0lCYWlFVUlBUWdBV3RCQVdvaEVBSkFBMEFnQkMwQUFDQUJRY0RQZ0lBQWFpMEFBRWNOcUFFZ0FVRUJSZzBCSUFGQkFXb2hBU0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWFRQklSQU13QUlMSUFCQkFEWUNBQ0FRUVFGcUlRRkJIU0VRREtVQkN3SkFJQVFnQWtjTkFFR2xBU0VRREw4Q0N3SkFBa0FnQkMwQUFFR3VmMm9PQXdDb0FRR29BUXNnQkVFQmFpRUVRWkFCSVJBTXBnSUxJQVJCQVdvaEFVRUVJUkFNcEFFTEFrQWdCQ0FDUncwQVFhWUJJUkFNdmdJTEFrQUNRQUpBQWtBQ1FDQUVMUUFBUWI5L2FnNFZBS29CcWdHcUFhb0JxZ0dxQWFvQnFnR3FBYW9CQWFvQnFnRUNxZ0dxQVFPcUFhb0JCS29CQ3lBRVFRRnFJUVJCaUFFaEVBeW9BZ3NnQkVFQmFpRUVRWWtCSVJBTXB3SUxJQVJCQVdvaEJFR0tBU0VRREtZQ0N5QUVRUUZxSVFSQmp3RWhFQXlsQWdzZ0JFRUJhaUVFUVpFQklSQU1wQUlMQWtBZ0JDQUNSdzBBUWFjQklSQU12UUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkFtb2hFQUpBQTBBZ0JDMEFBQ0FCUWUzUGdJQUFhaTBBQUVjTnBRRWdBVUVDUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFhY0JJUkFNdlFJTElBQkJBRFlDQUNBUVFRRnFJUUZCRVNFUURLSUJDd0pBSUFRZ0FrY05BRUdvQVNFUURMd0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUhDejRDQUFHb3RBQUJIRGFRQklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHb0FTRVFETHdDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRU3doRUF5aEFRc0NRQ0FFSUFKSERRQkJxUUVoRUF5N0Fnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVFYWlFUUFrQURRQ0FFTFFBQUlBRkJ4YytBZ0FCcUxRQUFSdzJqQVNBQlFRUkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCcVFFaEVBeTdBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRXJJUkFNb0FFTEFrQWdCQ0FDUncwQVFhb0JJUkFNdWdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBbW9oRUFKQUEwQWdCQzBBQUNBQlFjclBnSUFBYWkwQUFFY05vZ0VnQVVFQ1JnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRYW9CSVJBTXVnSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkZDRVFESjhCQ3dKQUlBUWdBa2NOQUVHckFTRVFETGtDQ3dKQUFrQUNRQUpBSUFRdEFBQkJ2bjlxRGc4QUFRS2tBYVFCcEFHa0FhUUJwQUdrQWFRQnBBR2tBYVFCQTZRQkN5QUVRUUZxSVFSQmt3RWhFQXlpQWdzZ0JFRUJhaUVFUVpRQklSQU1vUUlMSUFSQkFXb2hCRUdWQVNFUURLQUNDeUFFUVFGcUlRUkJsZ0VoRUF5ZkFnc0NRQ0FFSUFKSERRQkJyQUVoRUF5NEFnc2dCQzBBQUVIRkFFY05ud0VnQkVFQmFpRUVET0FCQ3dKQUlBUWdBa2NOQUVHdEFTRVFETGNDQ3lBQ0lBUnJJQUFvQWdBaUFXb2hGQ0FFSUFGclFRSnFJUkFDUUFOQUlBUXRBQUFnQVVITno0Q0FBR290QUFCSERaOEJJQUZCQWtZTkFTQUJRUUZxSVFFZ0JFRUJhaUlFSUFKSERRQUxJQUFnRkRZQ0FFR3RBU0VRRExjQ0N5QUFRUUEyQWdBZ0VFRUJhaUVCUVE0aEVBeWNBUXNDUUNBRUlBSkhEUUJCcmdFaEVBeTJBZ3NnQkMwQUFFSFFBRWNOblFFZ0JFRUJhaUVCUVNVaEVBeWJBUXNDUUNBRUlBSkhEUUJCcndFaEVBeTFBZ3NnQWlBRWF5QUFLQUlBSWdGcUlSUWdCQ0FCYTBFSWFpRVFBa0FEUUNBRUxRQUFJQUZCME0rQWdBQnFMUUFBUncyZEFTQUJRUWhHRFFFZ0FVRUJhaUVCSUFSQkFXb2lCQ0FDUncwQUN5QUFJQlEyQWdCQnJ3RWhFQXkxQWdzZ0FFRUFOZ0lBSUJCQkFXb2hBVUVxSVJBTW1nRUxBa0FnQkNBQ1J3MEFRYkFCSVJBTXRBSUxBa0FDUUNBRUxRQUFRYXQvYWc0TEFKMEJuUUdkQVowQm5RR2RBWjBCblFHZEFRR2RBUXNnQkVFQmFpRUVRWm9CSVJBTW13SUxJQVJCQVdvaEJFR2JBU0VRREpvQ0N3SkFJQVFnQWtjTkFFR3hBU0VRRExNQ0N3SkFBa0FnQkMwQUFFRy9mMm9PRkFDY0Fad0JuQUdjQVp3Qm5BR2NBWndCbkFHY0Fad0JuQUdjQVp3Qm5BR2NBWndCbkFFQm5BRUxJQVJCQVdvaEJFR1pBU0VRREpvQ0N5QUVRUUZxSVFSQm5BRWhFQXlaQWdzQ1FDQUVJQUpIRFFCQnNnRWhFQXl5QWdzZ0FpQUVheUFBS0FJQUlnRnFJUlFnQkNBQmEwRURhaUVRQWtBRFFDQUVMUUFBSUFGQjJjK0FnQUJxTFFBQVJ3MmFBU0FCUVFOR0RRRWdBVUVCYWlFQklBUkJBV29pQkNBQ1J3MEFDeUFBSUJRMkFnQkJzZ0VoRUF5eUFnc2dBRUVBTmdJQUlCQkJBV29oQVVFaElSQU1sd0VMQWtBZ0JDQUNSdzBBUWJNQklSQU1zUUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkJtb2hFQUpBQTBBZ0JDMEFBQ0FCUWQzUGdJQUFhaTBBQUVjTm1RRWdBVUVHUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFiTUJJUkFNc1FJTElBQkJBRFlDQUNBUVFRRnFJUUZCR2lFUURKWUJDd0pBSUFRZ0FrY05BRUcwQVNFUURMQUNDd0pBQWtBQ1FDQUVMUUFBUWJ0L2FnNFJBSm9CbWdHYUFab0JtZ0dhQVpvQm1nR2FBUUdhQVpvQm1nR2FBWm9CQXBvQkN5QUVRUUZxSVFSQm5RRWhFQXlZQWdzZ0JFRUJhaUVFUVo0QklSQU1sd0lMSUFSQkFXb2hCRUdmQVNFUURKWUNDd0pBSUFRZ0FrY05BRUcxQVNFUURLOENDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFWcUlSQUNRQU5BSUFRdEFBQWdBVUhrejRDQUFHb3RBQUJIRFpjQklBRkJCVVlOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHMUFTRVFESzhDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRU2doRUF5VUFRc0NRQ0FFSUFKSERRQkJ0Z0VoRUF5dUFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVDYWlFUUFrQURRQ0FFTFFBQUlBRkI2cytBZ0FCcUxRQUFSdzJXQVNBQlFRSkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCdGdFaEVBeXVBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRUhJUkFNa3dFTEFrQWdCQ0FDUncwQVFiY0JJUkFNclFJTEFrQUNRQ0FFTFFBQVFidC9hZzRPQUpZQmxnR1dBWllCbGdHV0FaWUJsZ0dXQVpZQmxnR1dBUUdXQVFzZ0JFRUJhaUVFUWFFQklSQU1sQUlMSUFSQkFXb2hCRUdpQVNFUURKTUNDd0pBSUFRZ0FrY05BRUc0QVNFUURLd0NDeUFDSUFScklBQW9BZ0FpQVdvaEZDQUVJQUZyUVFKcUlSQUNRQU5BSUFRdEFBQWdBVUh0ejRDQUFHb3RBQUJIRFpRQklBRkJBa1lOQVNBQlFRRnFJUUVnQkVFQmFpSUVJQUpIRFFBTElBQWdGRFlDQUVHNEFTRVFES3dDQ3lBQVFRQTJBZ0FnRUVFQmFpRUJRUkloRUF5UkFRc0NRQ0FFSUFKSERRQkJ1UUVoRUF5ckFnc2dBaUFFYXlBQUtBSUFJZ0ZxSVJRZ0JDQUJhMEVCYWlFUUFrQURRQ0FFTFFBQUlBRkI4TStBZ0FCcUxRQUFSdzJUQVNBQlFRRkdEUUVnQVVFQmFpRUJJQVJCQVdvaUJDQUNSdzBBQ3lBQUlCUTJBZ0JCdVFFaEVBeXJBZ3NnQUVFQU5nSUFJQkJCQVdvaEFVRWdJUkFNa0FFTEFrQWdCQ0FDUncwQVFib0JJUkFNcWdJTElBSWdCR3NnQUNnQ0FDSUJhaUVVSUFRZ0FXdEJBV29oRUFKQUEwQWdCQzBBQUNBQlFmTFBnSUFBYWkwQUFFY05rZ0VnQVVFQlJnMEJJQUZCQVdvaEFTQUVRUUZxSWdRZ0FrY05BQXNnQUNBVU5nSUFRYm9CSVJBTXFnSUxJQUJCQURZQ0FDQVFRUUZxSVFGQkR5RVFESThCQ3dKQUlBUWdBa2NOQUVHN0FTRVFES2tDQ3dKQUFrQWdCQzBBQUVHM2Yyb09Cd0NTQVpJQmtnR1NBWklCQVpJQkN5QUVRUUZxSVFSQnBRRWhFQXlRQWdzZ0JFRUJhaUVFUWFZQklSQU1qd0lMQWtBZ0JDQUNSdzBBUWJ3QklSQU1xQUlMSUFJZ0JHc2dBQ2dDQUNJQmFpRVVJQVFnQVd0QkIyb2hFQUpBQTBBZ0JDMEFBQ0FCUWZUUGdJQUFhaTBBQUVjTmtBRWdBVUVIUmcwQklBRkJBV29oQVNBRVFRRnFJZ1FnQWtjTkFBc2dBQ0FVTmdJQVFid0JJUkFNcUFJTElBQkJBRFlDQUNBUVFRRnFJUUZCR3lFUURJMEJDd0pBSUFRZ0FrY05BRUc5QVNFUURLY0NDd0pBQWtBQ1FDQUVMUUFBUWI1L2FnNFNBSkVCa1FHUkFaRUJrUUdSQVpFQmtRR1JBUUdSQVpFQmtRR1JBWkVCa1FFQ2tRRUxJQVJCQVdvaEJFR2tBU0VRREk4Q0N5QUVRUUZxSVFSQnB3RWhFQXlPQWdzZ0JFRUJhaUVFUWFnQklSQU1qUUlMQWtBZ0JDQUNSdzBBUWI0QklSQU1wZ0lMSUFRdEFBQkJ6Z0JIRFkwQklBUkJBV29oQkF6UEFRc0NRQ0FFSUFKSERRQkJ2d0VoRUF5bEFnc0NRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUNBRUxRQUFRYjkvYWc0VkFBRUNBNXdCQkFVR25BR2NBWndCQndnSkNndWNBUXdORGcrY0FRc2dCRUVCYWlFQlFlZ0FJUkFNbWdJTElBUkJBV29oQVVIcEFDRVFESmtDQ3lBRVFRRnFJUUZCN2dBaEVBeVlBZ3NnQkVFQmFpRUJRZklBSVJBTWx3SUxJQVJCQVdvaEFVSHpBQ0VRREpZQ0N5QUVRUUZxSVFGQjlnQWhFQXlWQWdzZ0JFRUJhaUVCUWZjQUlSQU1sQUlMSUFSQkFXb2hBVUg2QUNFUURKTUNDeUFFUVFGcUlRUkJnd0VoRUF5U0Fnc2dCRUVCYWlFRVFZUUJJUkFNa1FJTElBUkJBV29oQkVHRkFTRVFESkFDQ3lBRVFRRnFJUVJCa2dFaEVBeVBBZ3NnQkVFQmFpRUVRWmdCSVJBTWpnSUxJQVJCQVdvaEJFR2dBU0VRREkwQ0N5QUVRUUZxSVFSQm93RWhFQXlNQWdzZ0JFRUJhaUVFUWFvQklSQU1pd0lMQWtBZ0JDQUNSZzBBSUFCQmtJQ0FnQUEyQWdnZ0FDQUVOZ0lFUWFzQklSQU1pd0lMUWNBQklSQU1vd0lMSUFBZ0JTQUNFS3FBZ0lBQUlnRU5pd0VnQlNFQkRGd0xBa0FnQmlBQ1JnMEFJQVpCQVdvaEJReU5BUXRCd2dFaEVBeWhBZ3NEUUFKQUlCQXRBQUJCZG1vT0JJd0JBQUNQQVFBTElCQkJBV29pRUNBQ1J3MEFDMEhEQVNFUURLQUNDd0pBSUFjZ0FrWU5BQ0FBUVpHQWdJQUFOZ0lJSUFBZ0J6WUNCQ0FISVFGQkFTRVFESWNDQzBIRUFTRVFESjhDQ3dKQUlBY2dBa2NOQUVIRkFTRVFESjhDQ3dKQUFrQWdCeTBBQUVGMmFnNEVBYzRCemdFQXpnRUxJQWRCQVdvaEJneU5BUXNnQjBFQmFpRUZESWtCQ3dKQUlBY2dBa2NOQUVIR0FTRVFESjRDQ3dKQUFrQWdCeTBBQUVGMmFnNFhBWThCandFQmp3R1BBWThCandHUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0dQQVk4QkFJOEJDeUFIUVFGcUlRY0xRYkFCSVJBTWhBSUxBa0FnQ0NBQ1J3MEFRY2dCSVJBTW5RSUxJQWd0QUFCQklFY05qUUVnQUVFQU93RXlJQWhCQVdvaEFVR3pBU0VRRElNQ0N5QUJJUmNDUUFOQUlCY2lCeUFDUmcwQklBY3RBQUJCVUdwQi93RnhJaEJCQ2s4TnpBRUNRQ0FBTHdFeUloUkJtVE5MRFFBZ0FDQVVRUXBzSWhRN0FUSWdFRUgvL3dOeklCUkIvdjhEY1VrTkFDQUhRUUZxSVJjZ0FDQVVJQkJxSWhBN0FUSWdFRUgvL3dOeFFlZ0hTUTBCQ3d0QkFDRVFJQUJCQURZQ0hDQUFRY0dKZ0lBQU5nSVFJQUJCRFRZQ0RDQUFJQWRCQVdvMkFoUU1uQUlMUWNjQklSQU1td0lMSUFBZ0NDQUNFSzZBZ0lBQUloQkZEY29CSUJCQkZVY05qQUVnQUVISUFUWUNIQ0FBSUFnMkFoUWdBRUhKbDRDQUFEWUNFQ0FBUVJVMkFneEJBQ0VRREpvQ0N3SkFJQWtnQWtjTkFFSE1BU0VRREpvQ0MwRUFJUlJCQVNFWFFRRWhGa0VBSVJBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBZ0NTMEFBRUZRYWc0S2xnR1ZBUUFCQWdNRUJRWUlsd0VMUVFJaEVBd0dDMEVESVJBTUJRdEJCQ0VRREFRTFFRVWhFQXdEQzBFR0lSQU1BZ3RCQnlFUURBRUxRUWdoRUF0QkFDRVhRUUFoRmtFQUlSUU1qZ0VMUVFraEVFRUJJUlJCQUNFWFFRQWhGZ3lOQVFzQ1FDQUtJQUpIRFFCQnpnRWhFQXlaQWdzZ0NpMEFBRUV1UncyT0FTQUtRUUZxSVFrTXlnRUxJQXNnQWtjTmpnRkIwQUVoRUF5WEFnc0NRQ0FMSUFKR0RRQWdBRUdPZ0lDQUFEWUNDQ0FBSUFzMkFnUkJ0d0VoRUF6K0FRdEIwUUVoRUF5V0Fnc0NRQ0FFSUFKSERRQkIwZ0VoRUF5V0Fnc2dBaUFFYXlBQUtBSUFJaEJxSVJRZ0JDQVFhMEVFYWlFTEEwQWdCQzBBQUNBUVFmelBnSUFBYWkwQUFFY05qZ0VnRUVFRVJnM3BBU0FRUVFGcUlSQWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUhTQVNFUURKVUNDeUFBSUF3Z0FoQ3NnSUNBQUNJQkRZMEJJQXdoQVF5NEFRc0NRQ0FFSUFKSERRQkIxQUVoRUF5VUFnc2dBaUFFYXlBQUtBSUFJaEJxSVJRZ0JDQVFhMEVCYWlFTUEwQWdCQzBBQUNBUVFZSFFnSUFBYWkwQUFFY05qd0VnRUVFQlJnMk9BU0FRUVFGcUlSQWdCRUVCYWlJRUlBSkhEUUFMSUFBZ0ZEWUNBRUhVQVNFUURKTUNDd0pBSUFRZ0FrY05BRUhXQVNFUURKTUNDeUFDSUFScklBQW9BZ0FpRUdvaEZDQUVJQkJyUVFKcUlRc0RRQ0FFTFFBQUlCQkJnOUNBZ0FCcUxRQUFSdzJPQVNBUVFRSkdEWkFCSUJCQkFXb2hFQ0FFUVFGcUlnUWdBa2NOQUFzZ0FDQVVOZ0lBUWRZQklSQU1rZ0lMQWtBZ0JDQUNSdzBBUWRjQklSQU1rZ0lMQWtBQ1FDQUVMUUFBUWJ0L2FnNFFBSThCandHUEFZOEJqd0dQQVk4Qmp3R1BBWThCandHUEFZOEJqd0VCandFTElBUkJBV29oQkVHN0FTRVFEUGtCQ3lBRVFRRnFJUVJCdkFFaEVBejRBUXNDUUNBRUlBSkhEUUJCMkFFaEVBeVJBZ3NnQkMwQUFFSElBRWNOakFFZ0JFRUJhaUVFRE1RQkN3SkFJQVFnQWtZTkFDQUFRWkNBZ0lBQU5nSUlJQUFnQkRZQ0JFRytBU0VRRFBjQkMwSFpBU0VRREk4Q0N3SkFJQVFnQWtjTkFFSGFBU0VRREk4Q0N5QUVMUUFBUWNnQVJnM0RBU0FBUVFFNkFDZ011UUVMSUFCQkFqb0FMeUFBSUFRZ0FoQ21nSUNBQUNJUURZMEJRY0lCSVJBTTlBRUxJQUF0QUNoQmYyb09BcmNCdVFHNEFRc0RRQUpBSUFRdEFBQkJkbW9PQkFDT0FZNEJBSTRCQ3lBRVFRRnFJZ1FnQWtjTkFBdEIzUUVoRUF5TEFnc2dBRUVBT2dBdklBQXRBQzFCQkhGRkRZUUNDeUFBUVFBNkFDOGdBRUVCT2dBMElBRWhBUXlNQVFzZ0VFRVZSZzNhQVNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCcDQ2QWdBQTJBaEFnQUVFU05nSU1RUUFoRUF5SUFnc0NRQ0FBSUJBZ0FoQzBnSUNBQUNJRURRQWdFQ0VCRElFQ0N3SkFJQVJCRlVjTkFDQUFRUU0yQWh3Z0FDQVFOZ0lVSUFCQnNKaUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBeUlBZ3NnQUVFQU5nSWNJQUFnRURZQ0ZDQUFRYWVPZ0lBQU5nSVFJQUJCRWpZQ0RFRUFJUkFNaHdJTElCQkJGVVlOMWdFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWRxTmdJQUFOZ0lRSUFCQkZEWUNERUVBSVJBTWhnSUxJQUFvQWdRaEZ5QUFRUUEyQWdRZ0VDQVJwMm9pRmlFQklBQWdGeUFRSUJZZ0ZCc2lFQkMxZ0lDQUFDSVVSUTJOQVNBQVFRYzJBaHdnQUNBUU5nSVVJQUFnRkRZQ0RFRUFJUkFNaFFJTElBQWdBQzhCTUVHQUFYSTdBVEFnQVNFQkMwRXFJUkFNNmdFTElCQkJGVVlOMFFFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVlPTWdJQUFOZ0lRSUFCQkV6WUNERUVBSVJBTWdnSUxJQkJCRlVZTnp3RWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFacVBnSUFBTmdJUUlBQkJJallDREVFQUlSQU1nUUlMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQzNnSUNBQUNJUURRQWdBVUVCYWlFQkRJMEJDeUFBUVF3MkFod2dBQ0FRTmdJTUlBQWdBVUVCYWpZQ0ZFRUFJUkFNZ0FJTElCQkJGVVlOekFFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVpxUGdJQUFOZ0lRSUFCQklqWUNERUVBSVJBTS93RUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDM2dJQ0FBQ0lRRFFBZ0FVRUJhaUVCREl3QkN5QUFRUTAyQWh3Z0FDQVFOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU0vZ0VMSUJCQkZVWU55UUVnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRY2FNZ0lBQU5nSVFJQUJCSXpZQ0RFRUFJUkFNL1FFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkM1Z0lDQUFDSVFEUUFnQVVFQmFpRUJESXNCQ3lBQVFRNDJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTS9BRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSEFsWUNBQURZQ0VDQUFRUUkyQWd4QkFDRVFEUHNCQ3lBUVFSVkdEY1VCSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhHaklDQUFEWUNFQ0FBUVNNMkFneEJBQ0VRRFBvQkN5QUFRUkEyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTStRRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDNWdJQ0FBQ0lFRFFBZ0FVRUJhaUVCRFBFQkN5QUFRUkUyQWh3Z0FDQUVOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU0rQUVMSUJCQkZVWU53UUVnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRY2FNZ0lBQU5nSVFJQUJCSXpZQ0RFRUFJUkFNOXdFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkM1Z0lDQUFDSVFEUUFnQVVFQmFpRUJESWdCQ3lBQVFSTTJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTTlnRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDNWdJQ0FBQ0lFRFFBZ0FVRUJhaUVCRE8wQkN5QUFRUlEyQWh3Z0FDQUVOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU05UUVMSUJCQkZVWU52UUVnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRWnFQZ0lBQU5nSVFJQUJCSWpZQ0RFRUFJUkFNOUFFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkMzZ0lDQUFDSVFEUUFnQVVFQmFpRUJESVlCQ3lBQVFSWTJBaHdnQUNBUU5nSU1JQUFnQVVFQmFqWUNGRUVBSVJBTTh3RUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDM2dJQ0FBQ0lFRFFBZ0FVRUJhaUVCRE9rQkN5QUFRUmMyQWh3Z0FDQUVOZ0lNSUFBZ0FVRUJhallDRkVFQUlSQU04Z0VMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhOazRDQUFEWUNFQ0FBUVF3MkFneEJBQ0VRRFBFQkMwSUJJUkVMSUJCQkFXb2hBUUpBSUFBcEF5QWlFa0wvLy8vLy8vLy8vdzlXRFFBZ0FDQVNRZ1NHSUJHRU53TWdJQUVoQVF5RUFRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFhMkpnSUFBTmdJUUlBQkJERFlDREVFQUlSQU03d0VMSUFCQkFEWUNIQ0FBSUJBMkFoUWdBRUhOazRDQUFEWUNFQ0FBUVF3MkFneEJBQ0VRRE80QkN5QUFLQUlFSVJjZ0FFRUFOZ0lFSUJBZ0VhZHFJaFloQVNBQUlCY2dFQ0FXSUJRYkloQVF0WUNBZ0FBaUZFVU5jeUFBUVFVMkFod2dBQ0FRTmdJVUlBQWdGRFlDREVFQUlSQU03UUVMSUFCQkFEWUNIQ0FBSUJBMkFoUWdBRUdxbklDQUFEWUNFQ0FBUVE4MkFneEJBQ0VRRE93QkN5QUFJQkFnQWhDMGdJQ0FBQ0lCRFFFZ0VDRUJDMEVPSVJBTTBRRUxBa0FnQVVFVlJ3MEFJQUJCQWpZQ0hDQUFJQkEyQWhRZ0FFR3dtSUNBQURZQ0VDQUFRUlUyQWd4QkFDRVFET29CQ3lBQVFRQTJBaHdnQUNBUU5nSVVJQUJCcDQ2QWdBQTJBaEFnQUVFU05nSU1RUUFoRUF6cEFRc2dBVUVCYWlFUUFrQWdBQzhCTUNJQlFZQUJjVVVOQUFKQUlBQWdFQ0FDRUx1QWdJQUFJZ0VOQUNBUUlRRU1jQXNnQVVFVlJ3MjZBU0FBUVFVMkFod2dBQ0FRTmdJVUlBQkIrWmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXpwQVFzQ1FDQUJRYUFFY1VHZ0JFY05BQ0FBTFFBdFFRSnhEUUFnQUVFQU5nSWNJQUFnRURZQ0ZDQUFRWmFUZ0lBQU5nSVFJQUJCQkRZQ0RFRUFJUkFNNlFFTElBQWdFQ0FDRUwyQWdJQUFHaUFRSVFFQ1FBSkFBa0FDUUFKQUlBQWdFQ0FDRUxPQWdJQUFEaFlDQVFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRREJBc2dBRUVCT2dBdUN5QUFJQUF2QVRCQndBQnlPd0V3SUJBaEFRdEJKaUVRRE5FQkN5QUFRU00yQWh3Z0FDQVFOZ0lVSUFCQnBaYUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBenBBUXNnQUVFQU5nSWNJQUFnRURZQ0ZDQUFRZFdMZ0lBQU5nSVFJQUJCRVRZQ0RFRUFJUkFNNkFFTElBQXRBQzFCQVhGRkRRRkJ3d0VoRUF6T0FRc0NRQ0FOSUFKR0RRQURRQUpBSUEwdEFBQkJJRVlOQUNBTklRRU14QUVMSUExQkFXb2lEU0FDUncwQUMwRWxJUkFNNXdFTFFTVWhFQXptQVFzZ0FDZ0NCQ0VFSUFCQkFEWUNCQ0FBSUFRZ0RSQ3ZnSUNBQUNJRVJRMnRBU0FBUVNZMkFod2dBQ0FFTmdJTUlBQWdEVUVCYWpZQ0ZFRUFJUkFNNVFFTElCQkJGVVlOcXdFZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWYyTmdJQUFOZ0lRSUFCQkhUWUNERUVBSVJBTTVBRUxJQUJCSnpZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBempBUXNnRUNFQlFRRWhGQUpBQWtBQ1FBSkFBa0FDUUFKQUlBQXRBQ3hCZm1vT0J3WUZCUU1CQWdBRkN5QUFJQUF2QVRCQkNISTdBVEFNQXd0QkFpRVVEQUVMUVFRaEZBc2dBRUVCT2dBc0lBQWdBQzhCTUNBVWNqc0JNQXNnRUNFQkMwRXJJUkFNeWdFTElBQkJBRFlDSENBQUlCQTJBaFFnQUVHcmtvQ0FBRFlDRUNBQVFRczJBZ3hCQUNFUURPSUJDeUFBUVFBMkFod2dBQ0FCTmdJVUlBQkI0WStBZ0FBMkFoQWdBRUVLTmdJTVFRQWhFQXpoQVFzZ0FFRUFPZ0FzSUJBaEFReTlBUXNnRUNFQlFRRWhGQUpBQWtBQ1FBSkFBa0FnQUMwQUxFRjdhZzRFQXdFQ0FBVUxJQUFnQUM4Qk1FRUljanNCTUF3REMwRUNJUlFNQVF0QkJDRVVDeUFBUVFFNkFDd2dBQ0FBTHdFd0lCUnlPd0V3Q3lBUUlRRUxRU2toRUF6RkFRc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFmQ1VnSUFBTmdJUUlBQkJBellDREVFQUlSQU0zUUVMQWtBZ0RpMEFBRUVOUncwQUlBQW9BZ1FoQVNBQVFRQTJBZ1FDUUNBQUlBRWdEaEN4Z0lDQUFDSUJEUUFnRGtFQmFpRUJESFVMSUFCQkxEWUNIQ0FBSUFFMkFnd2dBQ0FPUVFGcU5nSVVRUUFoRUF6ZEFRc2dBQzBBTFVFQmNVVU5BVUhFQVNFUURNTUJDd0pBSUE0Z0FrY05BRUV0SVJBTTNBRUxBa0FDUUFOQUFrQWdEaTBBQUVGMmFnNEVBZ0FBQXdBTElBNUJBV29pRGlBQ1J3MEFDMEV0SVJBTTNRRUxJQUFvQWdRaEFTQUFRUUEyQWdRQ1FDQUFJQUVnRGhDeGdJQ0FBQ0lCRFFBZ0RpRUJESFFMSUFCQkxEWUNIQ0FBSUE0MkFoUWdBQ0FCTmdJTVFRQWhFQXpjQVFzZ0FDZ0NCQ0VCSUFCQkFEWUNCQUpBSUFBZ0FTQU9FTEdBZ0lBQUlnRU5BQ0FPUVFGcUlRRU1jd3NnQUVFc05nSWNJQUFnQVRZQ0RDQUFJQTVCQVdvMkFoUkJBQ0VRRE5zQkN5QUFLQUlFSVFRZ0FFRUFOZ0lFSUFBZ0JDQU9FTEdBZ0lBQUlnUU5vQUVnRGlFQkRNNEJDeUFRUVN4SERRRWdBVUVCYWlFUVFRRWhBUUpBQWtBQ1FBSkFBa0FnQUMwQUxFRjdhZzRFQXdFQ0JBQUxJQkFoQVF3RUMwRUNJUUVNQVF0QkJDRUJDeUFBUVFFNkFDd2dBQ0FBTHdFd0lBRnlPd0V3SUJBaEFRd0JDeUFBSUFBdkFUQkJDSEk3QVRBZ0VDRUJDMEU1SVJBTXZ3RUxJQUJCQURvQUxDQUJJUUVMUVRRaEVBeTlBUXNnQUNBQUx3RXdRU0J5T3dFd0lBRWhBUXdDQ3lBQUtBSUVJUVFnQUVFQU5nSUVBa0FnQUNBRUlBRVFzWUNBZ0FBaUJBMEFJQUVoQVF6SEFRc2dBRUUzTmdJY0lBQWdBVFlDRkNBQUlBUTJBZ3hCQUNFUUROUUJDeUFBUVFnNkFDd2dBU0VCQzBFd0lSQU11UUVMQWtBZ0FDMEFLRUVCUmcwQUlBRWhBUXdFQ3lBQUxRQXRRUWh4UlEyVEFTQUJJUUVNQXdzZ0FDMEFNRUVnY1EyVUFVSEZBU0VRRExjQkN3SkFJQThnQWtZTkFBSkFBMEFDUUNBUExRQUFRVkJxSWdGQi93RnhRUXBKRFFBZ0R5RUJRVFVoRUF5NkFRc2dBQ2tESUNJUlFwbXo1c3lacytiTUdWWU5BU0FBSUJGQ0NuNGlFVGNESUNBUklBR3RRdjhCZ3lJU1FuK0ZWZzBCSUFBZ0VTQVNmRGNESUNBUFFRRnFJZzhnQWtjTkFBdEJPU0VRRE5FQkN5QUFLQUlFSVFJZ0FFRUFOZ0lFSUFBZ0FpQVBRUUZxSWdRUXNZQ0FnQUFpQWcyVkFTQUVJUUVNd3dFTFFUa2hFQXpQQVFzQ1FDQUFMd0V3SWdGQkNIRkZEUUFnQUMwQUtFRUJSdzBBSUFBdEFDMUJDSEZGRFpBQkN5QUFJQUZCOS9zRGNVR0FCSEk3QVRBZ0R5RUJDMEUzSVJBTXRBRUxJQUFnQUM4Qk1FRVFjanNCTUF5ckFRc2dFRUVWUmcyTEFTQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQjhJNkFnQUEyQWhBZ0FFRWNOZ0lNUVFBaEVBekxBUXNnQUVIREFEWUNIQ0FBSUFFMkFnd2dBQ0FOUVFGcU5nSVVRUUFoRUF6S0FRc0NRQ0FCTFFBQVFUcEhEUUFnQUNnQ0JDRVFJQUJCQURZQ0JBSkFJQUFnRUNBQkVLK0FnSUFBSWhBTkFDQUJRUUZxSVFFTVl3c2dBRUhEQURZQ0hDQUFJQkEyQWd3Z0FDQUJRUUZxTmdJVVFRQWhFQXpLQVFzZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUWJHUmdJQUFOZ0lRSUFCQkNqWUNERUVBSVJBTXlRRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFR2dtWUNBQURZQ0VDQUFRUjQyQWd4QkFDRVFETWdCQ3lBQVFRQTJBZ0FMSUFCQmdCSTdBU29nQUNBWFFRRnFJZ0VnQWhDb2dJQ0FBQ0lRRFFFZ0FTRUJDMEhIQUNFUURLd0JDeUFRUVJWSERZTUJJQUJCMFFBMkFod2dBQ0FCTmdJVUlBQkI0NWVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXpFQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFS2VBZ0lBQUloQU5BQ0FCSVFFTVhnc2dBRUhTQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBekRBUXNnQUVFQU5nSWNJQUFnRkRZQ0ZDQUFRY0dvZ0lBQU5nSVFJQUJCQnpZQ0RDQUFRUUEyQWdCQkFDRVFETUlCQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVFwNENBZ0FBaUVBMEFJQUVoQVF4ZEN5QUFRZE1BTmdJY0lBQWdBVFlDRkNBQUlCQTJBZ3hCQUNFUURNRUJDMEVBSVJBZ0FFRUFOZ0ljSUFBZ0FUWUNGQ0FBUVlDUmdJQUFOZ0lRSUFCQkNUWUNEQXpBQVFzZ0VFRVZSZzE5SUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUdVallDQUFEWUNFQ0FBUVNFMkFneEJBQ0VRREw4QkMwRUJJUlpCQUNFWFFRQWhGRUVCSVJBTElBQWdFRG9BS3lBQlFRRnFJUUVDUUFKQUlBQXRBQzFCRUhFTkFBSkFBa0FDUUNBQUxRQXFEZ01CQUFJRUN5QVdSUTBEREFJTElCUU5BUXdDQ3lBWFJRMEJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXJZQ0FnQUFpRUEwQUlBRWhBUXhjQ3lBQVFkZ0FOZ0ljSUFBZ0FUWUNGQ0FBSUJBMkFneEJBQ0VRREw0QkN5QUFLQUlFSVFRZ0FFRUFOZ0lFQWtBZ0FDQUVJQUVRcllDQWdBQWlCQTBBSUFFaEFReXRBUXNnQUVIWkFEWUNIQ0FBSUFFMkFoUWdBQ0FFTmdJTVFRQWhFQXk5QVFzZ0FDZ0NCQ0VFSUFCQkFEWUNCQUpBSUFBZ0JDQUJFSzJBZ0lBQUlnUU5BQ0FCSVFFTXF3RUxJQUJCMmdBMkFod2dBQ0FCTmdJVUlBQWdCRFlDREVFQUlSQU12QUVMSUFBb0FnUWhCQ0FBUVFBMkFnUUNRQ0FBSUFRZ0FSQ3RnSUNBQUNJRURRQWdBU0VCREtrQkN5QUFRZHdBTmdJY0lBQWdBVFlDRkNBQUlBUTJBZ3hCQUNFUURMc0JDd0pBSUFFdEFBQkJVR29pRUVIL0FYRkJDazhOQUNBQUlCQTZBQ29nQVVFQmFpRUJRYzhBSVJBTW9nRUxJQUFvQWdRaEJDQUFRUUEyQWdRQ1FDQUFJQVFnQVJDdGdJQ0FBQ0lFRFFBZ0FTRUJES2NCQ3lBQVFkNEFOZ0ljSUFBZ0FUWUNGQ0FBSUFRMkFneEJBQ0VRRExvQkN5QUFRUUEyQWdBZ0YwRUJhaUVCQWtBZ0FDMEFLVUVqVHcwQUlBRWhBUXhaQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCMDRtQWdBQTJBaEFnQUVFSU5nSU1RUUFoRUF5NUFRc2dBRUVBTmdJQUMwRUFJUkFnQUVFQU5nSWNJQUFnQVRZQ0ZDQUFRWkN6Z0lBQU5nSVFJQUJCQ0RZQ0RBeTNBUXNnQUVFQU5nSUFJQmRCQVdvaEFRSkFJQUF0QUNsQklVY05BQ0FCSVFFTVZnc2dBRUVBTmdJY0lBQWdBVFlDRkNBQVFadUtnSUFBTmdJUUlBQkJDRFlDREVFQUlSQU10Z0VMSUFCQkFEWUNBQ0FYUVFGcUlRRUNRQ0FBTFFBcEloQkJYV3BCQzA4TkFDQUJJUUVNVlFzQ1FDQVFRUVpMRFFCQkFTQVFkRUhLQUhGRkRRQWdBU0VCREZVTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkI5NG1BZ0FBMkFoQWdBRUVJTmdJTURMVUJDeUFRUVJWR0RYRWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFibU5nSUFBTmdJUUlBQkJHallDREVFQUlSQU10QUVMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQ25nSUNBQUNJUURRQWdBU0VCREZRTElBQkI1UUEyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTXN3RUxJQUFvQWdRaEVDQUFRUUEyQWdRQ1FDQUFJQkFnQVJDbmdJQ0FBQ0lRRFFBZ0FTRUJERTBMSUFCQjBnQTJBaHdnQUNBQk5nSVVJQUFnRURZQ0RFRUFJUkFNc2dFTElBQW9BZ1FoRUNBQVFRQTJBZ1FDUUNBQUlCQWdBUkNuZ0lDQUFDSVFEUUFnQVNFQkRFMExJQUJCMHdBMkFod2dBQ0FCTmdJVUlBQWdFRFlDREVFQUlSQU1zUUVMSUFBb0FnUWhFQ0FBUVFBMkFnUUNRQ0FBSUJBZ0FSQ25nSUNBQUNJUURRQWdBU0VCREZFTElBQkI1UUEyQWh3Z0FDQUJOZ0lVSUFBZ0VEWUNERUVBSVJBTXNBRUxJQUJCQURZQ0hDQUFJQUUyQWhRZ0FFSEdpb0NBQURZQ0VDQUFRUWMyQWd4QkFDRVFESzhCQ3lBQUtBSUVJUkFnQUVFQU5nSUVBa0FnQUNBUUlBRVFwNENBZ0FBaUVBMEFJQUVoQVF4SkN5QUFRZElBTmdJY0lBQWdBVFlDRkNBQUlCQTJBZ3hCQUNFUURLNEJDeUFBS0FJRUlSQWdBRUVBTmdJRUFrQWdBQ0FRSUFFUXA0Q0FnQUFpRUEwQUlBRWhBUXhKQ3lBQVFkTUFOZ0ljSUFBZ0FUWUNGQ0FBSUJBMkFneEJBQ0VRREswQkN5QUFLQUlFSVJBZ0FFRUFOZ0lFQWtBZ0FDQVFJQUVRcDRDQWdBQWlFQTBBSUFFaEFReE5DeUFBUWVVQU5nSWNJQUFnQVRZQ0ZDQUFJQkEyQWd4QkFDRVFES3dCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCM0lpQWdBQTJBaEFnQUVFSE5nSU1RUUFoRUF5ckFRc2dFRUUvUncwQklBRkJBV29oQVF0QkJTRVFESkFCQzBFQUlSQWdBRUVBTmdJY0lBQWdBVFlDRkNBQVFmMlNnSUFBTmdJUUlBQkJCellDREF5b0FRc2dBQ2dDQkNFUUlBQkJBRFlDQkFKQUlBQWdFQ0FCRUtlQWdJQUFJaEFOQUNBQklRRU1RZ3NnQUVIU0FEWUNIQ0FBSUFFMkFoUWdBQ0FRTmdJTVFRQWhFQXluQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQUpBSUFBZ0VDQUJFS2VBZ0lBQUloQU5BQ0FCSVFFTVFnc2dBRUhUQURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeW1BUXNnQUNnQ0JDRVFJQUJCQURZQ0JBSkFJQUFnRUNBQkVLZUFnSUFBSWhBTkFDQUJJUUVNUmdzZ0FFSGxBRFlDSENBQUlBRTJBaFFnQUNBUU5nSU1RUUFoRUF5bEFRc2dBQ2dDQkNFQklBQkJBRFlDQkFKQUlBQWdBU0FVRUtlQWdJQUFJZ0VOQUNBVUlRRU1Qd3NnQUVIU0FEWUNIQ0FBSUJRMkFoUWdBQ0FCTmdJTVFRQWhFQXlrQVFzZ0FDZ0NCQ0VCSUFCQkFEWUNCQUpBSUFBZ0FTQVVFS2VBZ0lBQUlnRU5BQ0FVSVFFTVB3c2dBRUhUQURZQ0hDQUFJQlEyQWhRZ0FDQUJOZ0lNUVFBaEVBeWpBUXNnQUNnQ0JDRUJJQUJCQURZQ0JBSkFJQUFnQVNBVUVLZUFnSUFBSWdFTkFDQVVJUUVNUXdzZ0FFSGxBRFlDSENBQUlCUTJBaFFnQUNBQk5nSU1RUUFoRUF5aUFRc2dBRUVBTmdJY0lBQWdGRFlDRkNBQVFjT1BnSUFBTmdJUUlBQkJCellDREVFQUlSQU1vUUVMSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhEajRDQUFEWUNFQ0FBUVFjMkFneEJBQ0VRREtBQkMwRUFJUkFnQUVFQU5nSWNJQUFnRkRZQ0ZDQUFRWXljZ0lBQU5nSVFJQUJCQnpZQ0RBeWZBUXNnQUVFQU5nSWNJQUFnRkRZQ0ZDQUFRWXljZ0lBQU5nSVFJQUJCQnpZQ0RFRUFJUkFNbmdFTElBQkJBRFlDSENBQUlCUTJBaFFnQUVIK2tZQ0FBRFlDRUNBQVFRYzJBZ3hCQUNFUURKMEJDeUFBUVFBMkFod2dBQ0FCTmdJVUlBQkJqcHVBZ0FBMkFoQWdBRUVHTmdJTVFRQWhFQXljQVFzZ0VFRVZSZzFYSUFCQkFEWUNIQ0FBSUFFMkFoUWdBRUhNam9DQUFEWUNFQ0FBUVNBMkFneEJBQ0VRREpzQkN5QUFRUUEyQWdBZ0VFRUJhaUVCUVNRaEVBc2dBQ0FRT2dBcElBQW9BZ1FoRUNBQVFRQTJBZ1FnQUNBUUlBRVFxNENBZ0FBaUVBMVVJQUVoQVF3K0N5QUFRUUEyQWdBTFFRQWhFQ0FBUVFBMkFod2dBQ0FFTmdJVUlBQkI4WnVBZ0FBMkFoQWdBRUVHTmdJTURKY0JDeUFCUVJWR0RWQWdBRUVBTmdJY0lBQWdCVFlDRkNBQVFmQ01nSUFBTmdJUUlBQkJHellDREVFQUlSQU1sZ0VMSUFBb0FnUWhCU0FBUVFBMkFnUWdBQ0FGSUJBUXFZQ0FnQUFpQlEwQklCQkJBV29oQlF0QnJRRWhFQXg3Q3lBQVFjRUJOZ0ljSUFBZ0JUWUNEQ0FBSUJCQkFXbzJBaFJCQUNFUURKTUJDeUFBS0FJRUlRWWdBRUVBTmdJRUlBQWdCaUFRRUttQWdJQUFJZ1lOQVNBUVFRRnFJUVlMUWE0QklSQU1lQXNnQUVIQ0FUWUNIQ0FBSUFZMkFnd2dBQ0FRUVFGcU5nSVVRUUFoRUF5UUFRc2dBRUVBTmdJY0lBQWdCellDRkNBQVFaZUxnSUFBTmdJUUlBQkJEVFlDREVFQUlSQU1qd0VMSUFCQkFEWUNIQ0FBSUFnMkFoUWdBRUhqa0lDQUFEWUNFQ0FBUVFrMkFneEJBQ0VRREk0QkN5QUFRUUEyQWh3Z0FDQUlOZ0lVSUFCQmxJMkFnQUEyQWhBZ0FFRWhOZ0lNUVFBaEVBeU5BUXRCQVNFV1FRQWhGMEVBSVJSQkFTRVFDeUFBSUJBNkFDc2dDVUVCYWlFSUFrQUNRQ0FBTFFBdFFSQnhEUUFDUUFKQUFrQWdBQzBBS2c0REFRQUNCQXNnRmtVTkF3d0NDeUFVRFFFTUFnc2dGMFVOQVFzZ0FDZ0NCQ0VRSUFCQkFEWUNCQ0FBSUJBZ0NCQ3RnSUNBQUNJUVJRMDlJQUJCeVFFMkFod2dBQ0FJTmdJVUlBQWdFRFlDREVFQUlSQU1qQUVMSUFBb0FnUWhCQ0FBUVFBMkFnUWdBQ0FFSUFnUXJZQ0FnQUFpQkVVTmRpQUFRY29CTmdJY0lBQWdDRFlDRkNBQUlBUTJBZ3hCQUNFUURJc0JDeUFBS0FJRUlRUWdBRUVBTmdJRUlBQWdCQ0FKRUsyQWdJQUFJZ1JGRFhRZ0FFSExBVFlDSENBQUlBazJBaFFnQUNBRU5nSU1RUUFoRUF5S0FRc2dBQ2dDQkNFRUlBQkJBRFlDQkNBQUlBUWdDaEN0Z0lDQUFDSUVSUTF5SUFCQnpRRTJBaHdnQUNBS05nSVVJQUFnQkRZQ0RFRUFJUkFNaVFFTEFrQWdDeTBBQUVGUWFpSVFRZjhCY1VFS1R3MEFJQUFnRURvQUtpQUxRUUZxSVFwQnRnRWhFQXh3Q3lBQUtBSUVJUVFnQUVFQU5nSUVJQUFnQkNBTEVLMkFnSUFBSWdSRkRYQWdBRUhQQVRZQ0hDQUFJQXMyQWhRZ0FDQUVOZ0lNUVFBaEVBeUlBUXNnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRWkN6Z0lBQU5nSVFJQUJCQ0RZQ0RDQUFRUUEyQWdCQkFDRVFESWNCQ3lBQlFSVkdEVDhnQUVFQU5nSWNJQUFnRERZQ0ZDQUFRY3lPZ0lBQU5nSVFJQUJCSURZQ0RFRUFJUkFNaGdFTElBQkJnUVE3QVNnZ0FDZ0NCQ0VRSUFCQ0FEY0RBQ0FBSUJBZ0RFRUJhaUlNRUt1QWdJQUFJaEJGRFRnZ0FFSFRBVFlDSENBQUlBdzJBaFFnQUNBUU5nSU1RUUFoRUF5RkFRc2dBRUVBTmdJQUMwRUFJUkFnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRZGliZ0lBQU5nSVFJQUJCQ0RZQ0RBeURBUXNnQUNnQ0JDRVFJQUJDQURjREFDQUFJQkFnQzBFQmFpSUxFS3VBZ0lBQUloQU5BVUhHQVNFUURHa0xJQUJCQWpvQUtBeFZDeUFBUWRVQk5nSWNJQUFnQ3pZQ0ZDQUFJQkEyQWd4QkFDRVFESUFCQ3lBUVFSVkdEVGNnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRYVNNZ0lBQU5nSVFJQUJCRURZQ0RFRUFJUkFNZndzZ0FDMEFORUVCUncwMElBQWdCQ0FDRUx5QWdJQUFJaEJGRFRRZ0VFRVZSdzAxSUFCQjNBRTJBaHdnQUNBRU5nSVVJQUJCMVphQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF4K0MwRUFJUkFnQUVFQU5nSWNJQUJCcjR1QWdBQTJBaEFnQUVFQ05nSU1JQUFnRkVFQmFqWUNGQXg5QzBFQUlSQU1Zd3RCQWlFUURHSUxRUTBoRUF4aEMwRVBJUkFNWUF0QkpTRVFERjhMUVJNaEVBeGVDMEVWSVJBTVhRdEJGaUVRREZ3TFFSY2hFQXhiQzBFWUlSQU1XZ3RCR1NFUURGa0xRUm9oRUF4WUMwRWJJUkFNVnd0QkhDRVFERllMUVIwaEVBeFZDMEVmSVJBTVZBdEJJU0VRREZNTFFTTWhFQXhTQzBIR0FDRVFERkVMUVM0aEVBeFFDMEV2SVJBTVR3dEJPeUVRREU0TFFUMGhFQXhOQzBISUFDRVFERXdMUWNrQUlSQU1Td3RCeXdBaEVBeEtDMEhNQUNFUURFa0xRYzRBSVJBTVNBdEIwUUFoRUF4SEMwSFZBQ0VRREVZTFFkZ0FJUkFNUlF0QjJRQWhFQXhFQzBIYkFDRVFERU1MUWVRQUlSQU1RZ3RCNVFBaEVBeEJDMEh4QUNFUURFQUxRZlFBSVJBTVB3dEJqUUVoRUF3K0MwR1hBU0VRREQwTFFha0JJUkFNUEF0QnJBRWhFQXc3QzBIQUFTRVFERG9MUWJrQklSQU1PUXRCcndFaEVBdzRDMEd4QVNFUUREY0xRYklCSVJBTU5ndEJ0QUVoRUF3MUMwRzFBU0VRRERRTFFib0JJUkFNTXd0QnZRRWhFQXd5QzBHL0FTRVFEREVMUWNFQklSQU1NQXNnQUVFQU5nSWNJQUFnQkRZQ0ZDQUFRZW1MZ0lBQU5nSVFJQUJCSHpZQ0RFRUFJUkFNU0FzZ0FFSGJBVFlDSENBQUlBUTJBaFFnQUVINmxvQ0FBRFlDRUNBQVFSVTJBZ3hCQUNFUURFY0xJQUJCK0FBMkFod2dBQ0FNTmdJVUlBQkJ5cGlBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhHQ3lBQVFkRUFOZ0ljSUFBZ0JUWUNGQ0FBUWJDWGdJQUFOZ0lRSUFCQkZUWUNERUVBSVJBTVJRc2dBRUg1QURZQ0hDQUFJQUUyQWhRZ0FDQVFOZ0lNUVFBaEVBeEVDeUFBUWZnQU5nSWNJQUFnQVRZQ0ZDQUFRY3FZZ0lBQU5nSVFJQUJCRlRZQ0RFRUFJUkFNUXdzZ0FFSGtBRFlDSENBQUlBRTJBaFFnQUVIamw0Q0FBRFlDRUNBQVFSVTJBZ3hCQUNFUURFSUxJQUJCMXdBMkFod2dBQ0FCTmdJVUlBQkJ5WmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXhCQ3lBQVFRQTJBaHdnQUNBQk5nSVVJQUJCdVkyQWdBQTJBaEFnQUVFYU5nSU1RUUFoRUF4QUN5QUFRY0lBTmdJY0lBQWdBVFlDRkNBQVFlT1lnSUFBTmdJUUlBQkJGVFlDREVFQUlSQU1Qd3NnQUVFQU5nSUVJQUFnRHlBUEVMR0FnSUFBSWdSRkRRRWdBRUU2TmdJY0lBQWdCRFlDRENBQUlBOUJBV28yQWhSQkFDRVFERDRMSUFBb0FnUWhCQ0FBUVFBMkFnUUNRQ0FBSUFRZ0FSQ3hnSUNBQUNJRVJRMEFJQUJCT3pZQ0hDQUFJQVEyQWd3Z0FDQUJRUUZxTmdJVVFRQWhFQXcrQ3lBQlFRRnFJUUVNTFFzZ0QwRUJhaUVCREMwTElBQkJBRFlDSENBQUlBODJBaFFnQUVIa2tvQ0FBRFlDRUNBQVFRUTJBZ3hCQUNFUUREc0xJQUJCTmpZQ0hDQUFJQVEyQWhRZ0FDQUNOZ0lNUVFBaEVBdzZDeUFBUVM0MkFod2dBQ0FPTmdJVUlBQWdCRFlDREVFQUlSQU1PUXNnQUVIUUFEWUNIQ0FBSUFFMkFoUWdBRUdSbUlDQUFEWUNFQ0FBUVJVMkFneEJBQ0VRRERnTElBMUJBV29oQVF3c0N5QUFRUlUyQWh3Z0FDQUJOZ0lVSUFCQmdwbUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBdzJDeUFBUVJzMkFod2dBQ0FCTmdJVUlBQkJrWmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXcxQ3lBQVFRODJBaHdnQUNBQk5nSVVJQUJCa1plQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF3MEN5QUFRUXMyQWh3Z0FDQUJOZ0lVSUFCQmtaZUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBd3pDeUFBUVJvMkFod2dBQ0FCTmdJVUlBQkJncG1BZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXd5Q3lBQVFRczJBaHdnQUNBQk5nSVVJQUJCZ3BtQWdBQTJBaEFnQUVFVk5nSU1RUUFoRUF3eEN5QUFRUW8yQWh3Z0FDQUJOZ0lVSUFCQjVKYUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBd3dDeUFBUVI0MkFod2dBQ0FCTmdJVUlBQkIrWmVBZ0FBMkFoQWdBRUVWTmdJTVFRQWhFQXd2Q3lBQVFRQTJBaHdnQUNBUU5nSVVJQUJCMm8yQWdBQTJBaEFnQUVFVU5nSU1RUUFoRUF3dUN5QUFRUVEyQWh3Z0FDQUJOZ0lVSUFCQnNKaUFnQUEyQWhBZ0FFRVZOZ0lNUVFBaEVBd3RDeUFBUVFBMkFnQWdDMEVCYWlFTEMwRzRBU0VRREJJTElBQkJBRFlDQUNBUVFRRnFJUUZCOVFBaEVBd1JDeUFCSVFFQ1FDQUFMUUFwUVFWSERRQkI0d0FoRUF3UkMwSGlBQ0VRREJBTFFRQWhFQ0FBUVFBMkFod2dBRUhra1lDQUFEWUNFQ0FBUVFjMkFnd2dBQ0FVUVFGcU5nSVVEQ2dMSUFCQkFEWUNBQ0FYUVFGcUlRRkJ3QUFoRUF3T0MwRUJJUUVMSUFBZ0FUb0FMQ0FBUVFBMkFnQWdGMEVCYWlFQkMwRW9JUkFNQ3dzZ0FTRUJDMEU0SVJBTUNRc0NRQ0FCSWc4Z0FrWU5BQU5BQWtBZ0R5MEFBRUdBdm9DQUFHb3RBQUFpQVVFQlJnMEFJQUZCQWtjTkF5QVBRUUZxSVFFTUJBc2dEMEVCYWlJUElBSkhEUUFMUVQ0aEVBd2lDMEUrSVJBTUlRc2dBRUVBT2dBc0lBOGhBUXdCQzBFTElSQU1CZ3RCT2lFUURBVUxJQUZCQVdvaEFVRXRJUkFNQkFzZ0FDQUJPZ0FzSUFCQkFEWUNBQ0FXUVFGcUlRRkJEQ0VRREFNTElBQkJBRFlDQUNBWFFRRnFJUUZCQ2lFUURBSUxJQUJCQURZQ0FBc2dBRUVBT2dBc0lBMGhBVUVKSVJBTUFBc0xRUUFoRUNBQVFRQTJBaHdnQUNBTE5nSVVJQUJCelpDQWdBQTJBaEFnQUVFSk5nSU1EQmNMUVFBaEVDQUFRUUEyQWh3Z0FDQUtOZ0lVSUFCQjZZcUFnQUEyQWhBZ0FFRUpOZ0lNREJZTFFRQWhFQ0FBUVFBMkFod2dBQ0FKTmdJVUlBQkJ0NUNBZ0FBMkFoQWdBRUVKTmdJTURCVUxRUUFoRUNBQVFRQTJBaHdnQUNBSU5nSVVJQUJCbkpHQWdBQTJBaEFnQUVFSk5nSU1EQlFMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQnpaQ0FnQUEyQWhBZ0FFRUpOZ0lNREJNTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkI2WXFBZ0FBMkFoQWdBRUVKTmdJTURCSUxRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCdDVDQWdBQTJBaEFnQUVFSk5nSU1EQkVMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQm5KR0FnQUEyQWhBZ0FFRUpOZ0lNREJBTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkJsNVdBZ0FBMkFoQWdBRUVQTmdJTURBOExRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCbDVXQWdBQTJBaEFnQUVFUE5nSU1EQTRMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQndKS0FnQUEyQWhBZ0FFRUxOZ0lNREEwTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkJsWW1BZ0FBMkFoQWdBRUVMTmdJTURBd0xRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCNFkrQWdBQTJBaEFnQUVFS05nSU1EQXNMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQis0K0FnQUEyQWhBZ0FFRUtOZ0lNREFvTFFRQWhFQ0FBUVFBMkFod2dBQ0FCTmdJVUlBQkI4Wm1BZ0FBMkFoQWdBRUVDTmdJTURBa0xRUUFoRUNBQVFRQTJBaHdnQUNBQk5nSVVJQUJCeEpTQWdBQTJBaEFnQUVFQ05nSU1EQWdMUVFBaEVDQUFRUUEyQWh3Z0FDQUJOZ0lVSUFCQjhwV0FnQUEyQWhBZ0FFRUNOZ0lNREFjTElBQkJBallDSENBQUlBRTJBaFFnQUVHY21vQ0FBRFlDRUNBQVFSWTJBZ3hCQUNFUURBWUxRUUVoRUF3RkMwSFVBQ0VRSUFFaUJDQUNSZzBFSUFOQkNHb2dBQ0FFSUFKQjJNS0FnQUJCQ2hERmdJQ0FBQ0FES0FJTUlRUWdBeWdDQ0E0REFRUUNBQXNReW9DQWdBQUFDeUFBUVFBMkFod2dBRUcxbW9DQUFEWUNFQ0FBUVJjMkFnd2dBQ0FFUVFGcU5nSVVRUUFoRUF3Q0N5QUFRUUEyQWh3Z0FDQUVOZ0lVSUFCQnlwcUFnQUEyQWhBZ0FFRUpOZ0lNUVFBaEVBd0JDd0pBSUFFaUJDQUNSdzBBUVNJaEVBd0JDeUFBUVltQWdJQUFOZ0lJSUFBZ0JEWUNCRUVoSVJBTElBTkJFR29rZ0lDQWdBQWdFQXV2QVFFQ2Z5QUJLQUlBSVFZQ1FBSkFJQUlnQTBZTkFDQUVJQVpxSVFRZ0JpQURhaUFDYXlFSElBSWdCa0YvY3lBRmFpSUdhaUVGQTBBQ1FDQUNMUUFBSUFRdEFBQkdEUUJCQWlFRURBTUxBa0FnQmcwQVFRQWhCQ0FGSVFJTUF3c2dCa0YvYWlFR0lBUkJBV29oQkNBQ1FRRnFJZ0lnQTBjTkFBc2dCeUVHSUFNaEFnc2dBRUVCTmdJQUlBRWdCallDQUNBQUlBSTJBZ1FQQ3lBQlFRQTJBZ0FnQUNBRU5nSUFJQUFnQWpZQ0JBc0tBQ0FBRU1lQWdJQUFDL0kyQVF0L0k0Q0FnSUFBUVJCcklnRWtnSUNBZ0FBQ1FFRUFLQUtnMElDQUFBMEFRUUFReTRDQWdBQkJnTlNFZ0FCcklnSkIyUUJKRFFCQkFDRURBa0JCQUNnQzROT0FnQUFpQkEwQVFRQkNmemNDN05PQWdBQkJBRUtBZ0lTQWdJREFBRGNDNU5PQWdBQkJBQ0FCUVFocVFYQnhRZGlxMWFvRmN5SUVOZ0xnMDRDQUFFRUFRUUEyQXZUVGdJQUFRUUJCQURZQ3hOT0FnQUFMUVFBZ0FqWUN6Tk9BZ0FCQkFFR0ExSVNBQURZQ3lOT0FnQUJCQUVHQTFJU0FBRFlDbU5DQWdBQkJBQ0FFTmdLczBJQ0FBRUVBUVg4MkFxalFnSUFBQTBBZ0EwSEUwSUNBQUdvZ0EwRzQwSUNBQUdvaUJEWUNBQ0FFSUFOQnNOQ0FnQUJxSWdVMkFnQWdBMEc4MElDQUFHb2dCVFlDQUNBRFFjelFnSUFBYWlBRFFjRFFnSUFBYWlJRk5nSUFJQVVnQkRZQ0FDQURRZFRRZ0lBQWFpQURRY2pRZ0lBQWFpSUVOZ0lBSUFRZ0JUWUNBQ0FEUWREUWdJQUFhaUFFTmdJQUlBTkJJR29pQTBHQUFrY05BQXRCZ05TRWdBQkJlRUdBMUlTQUFHdEJEM0ZCQUVHQTFJU0FBRUVJYWtFUGNSc2lBMm9pQkVFRWFpQUNRVWhxSWdVZ0Eyc2lBMEVCY2pZQ0FFRUFRUUFvQXZEVGdJQUFOZ0trMElDQUFFRUFJQU0yQXBUUWdJQUFRUUFnQkRZQ29OQ0FnQUJCZ05TRWdBQWdCV3BCT0RZQ0JBc0NRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBZ0FFSHNBVXNOQUFKQVFRQW9Bb2pRZ0lBQUlnWkJFQ0FBUVJOcVFYQnhJQUJCQzBrYklnSkJBM1lpQkhZaUEwRURjVVVOQUFKQUFrQWdBMEVCY1NBRWNrRUJjeUlGUVFOMElnUkJzTkNBZ0FCcUlnTWdCRUc0MElDQUFHb29BZ0FpQkNnQ0NDSUNSdzBBUVFBZ0JrRitJQVYzY1RZQ2lOQ0FnQUFNQVFzZ0F5QUNOZ0lJSUFJZ0F6WUNEQXNnQkVFSWFpRURJQVFnQlVFRGRDSUZRUU55TmdJRUlBUWdCV29pQkNBRUtBSUVRUUZ5TmdJRURBd0xJQUpCQUNnQ2tOQ0FnQUFpQjAwTkFRSkFJQU5GRFFBQ1FBSkFJQU1nQkhSQkFpQUVkQ0lEUVFBZ0EydHljU0lEUVFBZ0EydHhRWDlxSWdNZ0EwRU1ka0VRY1NJRGRpSUVRUVYyUVFoeElnVWdBM0lnQkNBRmRpSURRUUoyUVFSeElnUnlJQU1nQkhZaUEwRUJka0VDY1NJRWNpQURJQVIySWdOQkFYWkJBWEVpQkhJZ0F5QUVkbW9pQkVFRGRDSURRYkRRZ0lBQWFpSUZJQU5CdU5DQWdBQnFLQUlBSWdNb0FnZ2lBRWNOQUVFQUlBWkJmaUFFZDNFaUJqWUNpTkNBZ0FBTUFRc2dCU0FBTmdJSUlBQWdCVFlDREFzZ0F5QUNRUU55TmdJRUlBTWdCRUVEZENJRWFpQUVJQUpySWdVMkFnQWdBeUFDYWlJQUlBVkJBWEkyQWdRQ1FDQUhSUTBBSUFkQmVIRkJzTkNBZ0FCcUlRSkJBQ2dDbk5DQWdBQWhCQUpBQWtBZ0JrRUJJQWRCQTNaMElnaHhEUUJCQUNBR0lBaHlOZ0tJMElDQUFDQUNJUWdNQVFzZ0FpZ0NDQ0VJQ3lBSUlBUTJBZ3dnQWlBRU5nSUlJQVFnQWpZQ0RDQUVJQWcyQWdnTElBTkJDR29oQTBFQUlBQTJBcHpRZ0lBQVFRQWdCVFlDa05DQWdBQU1EQXRCQUNnQ2pOQ0FnQUFpQ1VVTkFTQUpRUUFnQ1d0eFFYOXFJZ01nQTBFTWRrRVFjU0lEZGlJRVFRVjJRUWh4SWdVZ0EzSWdCQ0FGZGlJRFFRSjJRUVJ4SWdSeUlBTWdCSFlpQTBFQmRrRUNjU0lFY2lBRElBUjJJZ05CQVhaQkFYRWlCSElnQXlBRWRtcEJBblJCdU5LQWdBQnFLQUlBSWdBb0FnUkJlSEVnQW1zaEJDQUFJUVVDUUFOQUFrQWdCU2dDRUNJRERRQWdCVUVVYWlnQ0FDSURSUTBDQ3lBREtBSUVRWGh4SUFKcklnVWdCQ0FGSUFSSklnVWJJUVFnQXlBQUlBVWJJUUFnQXlFRkRBQUxDeUFBS0FJWUlRb0NRQ0FBS0FJTUlnZ2dBRVlOQUNBQUtBSUlJZ05CQUNnQ21OQ0FnQUJKR2lBSUlBTTJBZ2dnQXlBSU5nSU1EQXNMQWtBZ0FFRVVhaUlGS0FJQUlnTU5BQ0FBS0FJUUlnTkZEUU1nQUVFUWFpRUZDd05BSUFVaEN5QURJZ2hCRkdvaUJTZ0NBQ0lERFFBZ0NFRVFhaUVGSUFnb0FoQWlBdzBBQ3lBTFFRQTJBZ0FNQ2d0QmZ5RUNJQUJCdjM5TERRQWdBRUVUYWlJRFFYQnhJUUpCQUNnQ2pOQ0FnQUFpQjBVTkFFRUFJUXNDUUNBQ1FZQUNTUTBBUVI4aEN5QUNRZi8vL3dkTERRQWdBMEVJZGlJRElBTkJnUDQvYWtFUWRrRUljU0lEZENJRUlBUkJnT0FmYWtFUWRrRUVjU0lFZENJRklBVkJnSUFQYWtFUWRrRUNjU0lGZEVFUGRpQURJQVJ5SUFWeWF5SURRUUYwSUFJZ0EwRVZhblpCQVhGeVFSeHFJUXNMUVFBZ0Ftc2hCQUpBQWtBQ1FBSkFJQXRCQW5SQnVOS0FnQUJxS0FJQUlnVU5BRUVBSVFOQkFDRUlEQUVMUVFBaEF5QUNRUUJCR1NBTFFRRjJheUFMUVI5R0czUWhBRUVBSVFnRFFBSkFJQVVvQWdSQmVIRWdBbXNpQmlBRVR3MEFJQVloQkNBRklRZ2dCZzBBUVFBaEJDQUZJUWdnQlNFRERBTUxJQU1nQlVFVWFpZ0NBQ0lHSUFZZ0JTQUFRUjEyUVFSeGFrRVFhaWdDQUNJRlJoc2dBeUFHR3lFRElBQkJBWFFoQUNBRkRRQUxDd0pBSUFNZ0NISU5BRUVBSVFoQkFpQUxkQ0lEUVFBZ0EydHlJQWR4SWdORkRRTWdBMEVBSUFOcmNVRi9haUlESUFOQkRIWkJFSEVpQTNZaUJVRUZka0VJY1NJQUlBTnlJQVVnQUhZaUEwRUNka0VFY1NJRmNpQURJQVYySWdOQkFYWkJBbkVpQlhJZ0F5QUZkaUlEUVFGMlFRRnhJZ1Z5SUFNZ0JYWnFRUUowUWJqU2dJQUFhaWdDQUNFREN5QURSUTBCQ3dOQUlBTW9BZ1JCZUhFZ0Ftc2lCaUFFU1NFQUFrQWdBeWdDRUNJRkRRQWdBMEVVYWlnQ0FDRUZDeUFHSUFRZ0FCc2hCQ0FESUFnZ0FCc2hDQ0FGSVFNZ0JRMEFDd3NnQ0VVTkFDQUVRUUFvQXBEUWdJQUFJQUpyVHcwQUlBZ29BaGdoQ3dKQUlBZ29BZ3dpQUNBSVJnMEFJQWdvQWdnaUEwRUFLQUtZMElDQUFFa2FJQUFnQXpZQ0NDQURJQUEyQWd3TUNRc0NRQ0FJUVJScUlnVW9BZ0FpQXcwQUlBZ29BaEFpQTBVTkF5QUlRUkJxSVFVTEEwQWdCU0VHSUFNaUFFRVVhaUlGS0FJQUlnTU5BQ0FBUVJCcUlRVWdBQ2dDRUNJRERRQUxJQVpCQURZQ0FBd0lDd0pBUVFBb0FwRFFnSUFBSWdNZ0Fra05BRUVBS0FLYzBJQ0FBQ0VFQWtBQ1FDQURJQUpySWdWQkVFa05BQ0FFSUFKcUlnQWdCVUVCY2pZQ0JFRUFJQVUyQXBEUWdJQUFRUUFnQURZQ25OQ0FnQUFnQkNBRGFpQUZOZ0lBSUFRZ0FrRURjallDQkF3QkN5QUVJQU5CQTNJMkFnUWdCQ0FEYWlJRElBTW9BZ1JCQVhJMkFnUkJBRUVBTmdLYzBJQ0FBRUVBUVFBMkFwRFFnSUFBQ3lBRVFRaHFJUU1NQ2dzQ1FFRUFLQUtVMElDQUFDSUFJQUpORFFCQkFDZ0NvTkNBZ0FBaUF5QUNhaUlFSUFBZ0Ftc2lCVUVCY2pZQ0JFRUFJQVUyQXBUUWdJQUFRUUFnQkRZQ29OQ0FnQUFnQXlBQ1FRTnlOZ0lFSUFOQkNHb2hBd3dLQ3dKQUFrQkJBQ2dDNE5PQWdBQkZEUUJCQUNnQzZOT0FnQUFoQkF3QkMwRUFRbjgzQXV6VGdJQUFRUUJDZ0lDRWdJQ0F3QUEzQXVUVGdJQUFRUUFnQVVFTWFrRndjVUhZcXRXcUJYTTJBdURUZ0lBQVFRQkJBRFlDOU5PQWdBQkJBRUVBTmdMRTA0Q0FBRUdBZ0FRaEJBdEJBQ0VEQWtBZ0JDQUNRY2NBYWlJSGFpSUdRUUFnQkdzaUMzRWlDQ0FDU3cwQVFRQkJNRFlDK05PQWdBQU1DZ3NDUUVFQUtBTEEwNENBQUNJRFJRMEFBa0JCQUNnQ3VOT0FnQUFpQkNBSWFpSUZJQVJORFFBZ0JTQURUUTBCQzBFQUlRTkJBRUV3TmdMNDA0Q0FBQXdLQzBFQUxRREUwNENBQUVFRWNRMEVBa0FDUUFKQVFRQW9BcURRZ0lBQUlnUkZEUUJCeU5PQWdBQWhBd05BQWtBZ0F5Z0NBQ0lGSUFSTERRQWdCU0FES0FJRWFpQUVTdzBEQ3lBREtBSUlJZ01OQUFzTFFRQVF5NENBZ0FBaUFFRi9SZzBGSUFnaEJnSkFRUUFvQXVUVGdJQUFJZ05CZjJvaUJDQUFjVVVOQUNBSUlBQnJJQVFnQUdwQkFDQURhM0ZxSVFZTElBWWdBazBOQlNBR1FmNy8vLzhIU3cwRkFrQkJBQ2dDd05PQWdBQWlBMFVOQUVFQUtBSzQwNENBQUNJRUlBWnFJZ1VnQkUwTkJpQUZJQU5MRFFZTElBWVF5NENBZ0FBaUF5QUFSdzBCREFjTElBWWdBR3NnQzNFaUJrSCsvLy8vQjBzTkJDQUdFTXVBZ0lBQUlnQWdBeWdDQUNBREtBSUVha1lOQXlBQUlRTUxBa0FnQTBGL1JnMEFJQUpCeUFCcUlBWk5EUUFDUUNBSElBWnJRUUFvQXVqVGdJQUFJZ1JxUVFBZ0JHdHhJZ1JCL3YvLy93ZE5EUUFnQXlFQURBY0xBa0FnQkJETGdJQ0FBRUYvUmcwQUlBUWdCbW9oQmlBRElRQU1Cd3RCQUNBR2F4RExnSUNBQUJvTUJBc2dBeUVBSUFOQmYwY05CUXdEQzBFQUlRZ01Cd3RCQUNFQURBVUxJQUJCZjBjTkFndEJBRUVBS0FMRTA0Q0FBRUVFY2pZQ3hOT0FnQUFMSUFoQi92Ly8vd2RMRFFFZ0NCRExnSUNBQUNFQVFRQVF5NENBZ0FBaEF5QUFRWDlHRFFFZ0EwRi9SZzBCSUFBZ0EwOE5BU0FESUFCcklnWWdBa0U0YWswTkFRdEJBRUVBS0FLNDA0Q0FBQ0FHYWlJRE5nSzQwNENBQUFKQUlBTkJBQ2dDdk5PQWdBQk5EUUJCQUNBRE5nSzgwNENBQUFzQ1FBSkFBa0FDUUVFQUtBS2cwSUNBQUNJRVJRMEFRY2pUZ0lBQUlRTURRQ0FBSUFNb0FnQWlCU0FES0FJRUlnaHFSZzBDSUFNb0FnZ2lBdzBBREFNTEN3SkFBa0JCQUNnQ21OQ0FnQUFpQTBVTkFDQUFJQU5QRFFFTFFRQWdBRFlDbU5DQWdBQUxRUUFoQTBFQUlBWTJBc3pUZ0lBQVFRQWdBRFlDeU5PQWdBQkJBRUYvTmdLbzBJQ0FBRUVBUVFBb0F1RFRnSUFBTmdLczBJQ0FBRUVBUVFBMkF0VFRnSUFBQTBBZ0EwSEUwSUNBQUdvZ0EwRzQwSUNBQUdvaUJEWUNBQ0FFSUFOQnNOQ0FnQUJxSWdVMkFnQWdBMEc4MElDQUFHb2dCVFlDQUNBRFFjelFnSUFBYWlBRFFjRFFnSUFBYWlJRk5nSUFJQVVnQkRZQ0FDQURRZFRRZ0lBQWFpQURRY2pRZ0lBQWFpSUVOZ0lBSUFRZ0JUWUNBQ0FEUWREUWdJQUFhaUFFTmdJQUlBTkJJR29pQTBHQUFrY05BQXNnQUVGNElBQnJRUTl4UVFBZ0FFRUlha0VQY1JzaUEyb2lCQ0FHUVVocUlnVWdBMnNpQTBFQmNqWUNCRUVBUVFBb0F2RFRnSUFBTmdLazBJQ0FBRUVBSUFNMkFwVFFnSUFBUVFBZ0JEWUNvTkNBZ0FBZ0FDQUZha0U0TmdJRURBSUxJQU10QUF4QkNIRU5BQ0FFSUFWSkRRQWdCQ0FBVHcwQUlBUkJlQ0FFYTBFUGNVRUFJQVJCQ0dwQkQzRWJJZ1ZxSWdCQkFDZ0NsTkNBZ0FBZ0Jtb2lDeUFGYXlJRlFRRnlOZ0lFSUFNZ0NDQUdhallDQkVFQVFRQW9BdkRUZ0lBQU5nS2swSUNBQUVFQUlBVTJBcFRRZ0lBQVFRQWdBRFlDb05DQWdBQWdCQ0FMYWtFNE5nSUVEQUVMQWtBZ0FFRUFLQUtZMElDQUFDSUlUdzBBUVFBZ0FEWUNtTkNBZ0FBZ0FDRUlDeUFBSUFacUlRVkJ5Tk9BZ0FBaEF3SkFBa0FDUUFKQUFrQUNRQUpBQTBBZ0F5Z0NBQ0FGUmcwQklBTW9BZ2dpQXcwQURBSUxDeUFETFFBTVFRaHhSUTBCQzBISTA0Q0FBQ0VEQTBBQ1FDQURLQUlBSWdVZ0JFc05BQ0FGSUFNb0FnUnFJZ1VnQkVzTkF3c2dBeWdDQ0NFRERBQUxDeUFESUFBMkFnQWdBeUFES0FJRUlBWnFOZ0lFSUFCQmVDQUFhMEVQY1VFQUlBQkJDR3BCRDNFYmFpSUxJQUpCQTNJMkFnUWdCVUY0SUFWclFROXhRUUFnQlVFSWFrRVBjUnRxSWdZZ0N5QUNhaUlDYXlFREFrQWdCaUFFUncwQVFRQWdBallDb05DQWdBQkJBRUVBS0FLVTBJQ0FBQ0FEYWlJRE5nS1UwSUNBQUNBQ0lBTkJBWEkyQWdRTUF3c0NRQ0FHUVFBb0FwelFnSUFBUncwQVFRQWdBallDbk5DQWdBQkJBRUVBS0FLUTBJQ0FBQ0FEYWlJRE5nS1EwSUNBQUNBQ0lBTkJBWEkyQWdRZ0FpQURhaUFETmdJQURBTUxBa0FnQmlnQ0JDSUVRUU54UVFGSERRQWdCRUY0Y1NFSEFrQUNRQ0FFUWY4QlN3MEFJQVlvQWdnaUJTQUVRUU4ySWdoQkEzUkJzTkNBZ0FCcUlnQkdHZ0pBSUFZb0Fnd2lCQ0FGUncwQVFRQkJBQ2dDaU5DQWdBQkJmaUFJZDNFMkFvalFnSUFBREFJTElBUWdBRVlhSUFRZ0JUWUNDQ0FGSUFRMkFnd01BUXNnQmlnQ0dDRUpBa0FDUUNBR0tBSU1JZ0FnQmtZTkFDQUdLQUlJSWdRZ0NFa2FJQUFnQkRZQ0NDQUVJQUEyQWd3TUFRc0NRQ0FHUVJScUlnUW9BZ0FpQlEwQUlBWkJFR29pQkNnQ0FDSUZEUUJCQUNFQURBRUxBMEFnQkNFSUlBVWlBRUVVYWlJRUtBSUFJZ1VOQUNBQVFSQnFJUVFnQUNnQ0VDSUZEUUFMSUFoQkFEWUNBQXNnQ1VVTkFBSkFBa0FnQmlBR0tBSWNJZ1ZCQW5SQnVOS0FnQUJxSWdRb0FnQkhEUUFnQkNBQU5nSUFJQUFOQVVFQVFRQW9Bb3pRZ0lBQVFYNGdCWGR4TmdLTTBJQ0FBQXdDQ3lBSlFSQkJGQ0FKS0FJUUlBWkdHMm9nQURZQ0FDQUFSUTBCQ3lBQUlBazJBaGdDUUNBR0tBSVFJZ1JGRFFBZ0FDQUVOZ0lRSUFRZ0FEWUNHQXNnQmlnQ0ZDSUVSUTBBSUFCQkZHb2dCRFlDQUNBRUlBQTJBaGdMSUFjZ0Eyb2hBeUFHSUFkcUlnWW9BZ1FoQkFzZ0JpQUVRWDV4TmdJRUlBSWdBMm9nQXpZQ0FDQUNJQU5CQVhJMkFnUUNRQ0FEUWY4QlN3MEFJQU5CZUhGQnNOQ0FnQUJxSVFRQ1FBSkFRUUFvQW9qUWdJQUFJZ1ZCQVNBRFFRTjJkQ0lEY1EwQVFRQWdCU0FEY2pZQ2lOQ0FnQUFnQkNFRERBRUxJQVFvQWdnaEF3c2dBeUFDTmdJTUlBUWdBallDQ0NBQ0lBUTJBZ3dnQWlBRE5nSUlEQU1MUVI4aEJBSkFJQU5CLy8vL0Iwc05BQ0FEUVFoMklnUWdCRUdBL2o5cVFSQjJRUWh4SWdSMElnVWdCVUdBNEI5cVFSQjJRUVJ4SWdWMElnQWdBRUdBZ0E5cVFSQjJRUUp4SWdCMFFROTJJQVFnQlhJZ0FISnJJZ1JCQVhRZ0F5QUVRUlZxZGtFQmNYSkJIR29oQkFzZ0FpQUVOZ0ljSUFKQ0FEY0NFQ0FFUVFKMFFialNnSUFBYWlFRkFrQkJBQ2dDak5DQWdBQWlBRUVCSUFSMElnaHhEUUFnQlNBQ05nSUFRUUFnQUNBSWNqWUNqTkNBZ0FBZ0FpQUZOZ0lZSUFJZ0FqWUNDQ0FDSUFJMkFnd01Bd3NnQTBFQVFSa2dCRUVCZG1zZ0JFRWZSaHQwSVFRZ0JTZ0NBQ0VBQTBBZ0FDSUZLQUlFUVhoeElBTkdEUUlnQkVFZGRpRUFJQVJCQVhRaEJDQUZJQUJCQkhGcVFSQnFJZ2dvQWdBaUFBMEFDeUFJSUFJMkFnQWdBaUFGTmdJWUlBSWdBallDRENBQ0lBSTJBZ2dNQWdzZ0FFRjRJQUJyUVE5eFFRQWdBRUVJYWtFUGNSc2lBMm9pQ3lBR1FVaHFJZ2dnQTJzaUEwRUJjallDQkNBQUlBaHFRVGcyQWdRZ0JDQUZRVGNnQld0QkQzRkJBQ0FGUVVscVFROXhHMnBCUVdvaUNDQUlJQVJCRUdwSkd5SUlRU00yQWdSQkFFRUFLQUx3MDRDQUFEWUNwTkNBZ0FCQkFDQUROZ0tVMElDQUFFRUFJQXMyQXFEUWdJQUFJQWhCRUdwQkFDa0MwTk9BZ0FBM0FnQWdDRUVBS1FMSTA0Q0FBRGNDQ0VFQUlBaEJDR28yQXREVGdJQUFRUUFnQmpZQ3pOT0FnQUJCQUNBQU5nTEkwNENBQUVFQVFRQTJBdFRUZ0lBQUlBaEJKR29oQXdOQUlBTkJCellDQUNBRFFRUnFJZ01nQlVrTkFBc2dDQ0FFUmcwRElBZ2dDQ2dDQkVGK2NUWUNCQ0FJSUFnZ0JHc2lBRFlDQUNBRUlBQkJBWEkyQWdRQ1FDQUFRZjhCU3cwQUlBQkJlSEZCc05DQWdBQnFJUU1DUUFKQVFRQW9Bb2pRZ0lBQUlnVkJBU0FBUVFOMmRDSUFjUTBBUVFBZ0JTQUFjallDaU5DQWdBQWdBeUVGREFFTElBTW9BZ2doQlFzZ0JTQUVOZ0lNSUFNZ0JEWUNDQ0FFSUFNMkFnd2dCQ0FGTmdJSURBUUxRUjhoQXdKQUlBQkIvLy8vQjBzTkFDQUFRUWgySWdNZ0EwR0EvajlxUVJCMlFRaHhJZ04wSWdVZ0JVR0E0QjlxUVJCMlFRUnhJZ1YwSWdnZ0NFR0FnQTlxUVJCMlFRSnhJZ2gwUVE5MklBTWdCWElnQ0hKcklnTkJBWFFnQUNBRFFSVnFka0VCY1hKQkhHb2hBd3NnQkNBRE5nSWNJQVJDQURjQ0VDQURRUUowUWJqU2dJQUFhaUVGQWtCQkFDZ0NqTkNBZ0FBaUNFRUJJQU4wSWdaeERRQWdCU0FFTmdJQVFRQWdDQ0FHY2pZQ2pOQ0FnQUFnQkNBRk5nSVlJQVFnQkRZQ0NDQUVJQVEyQWd3TUJBc2dBRUVBUVJrZ0EwRUJkbXNnQTBFZlJodDBJUU1nQlNnQ0FDRUlBMEFnQ0NJRktBSUVRWGh4SUFCR0RRTWdBMEVkZGlFSUlBTkJBWFFoQXlBRklBaEJCSEZxUVJCcUlnWW9BZ0FpQ0EwQUN5QUdJQVEyQWdBZ0JDQUZOZ0lZSUFRZ0JEWUNEQ0FFSUFRMkFnZ01Bd3NnQlNnQ0NDSURJQUkyQWd3Z0JTQUNOZ0lJSUFKQkFEWUNHQ0FDSUFVMkFnd2dBaUFETmdJSUN5QUxRUWhxSVFNTUJRc2dCU2dDQ0NJRElBUTJBZ3dnQlNBRU5nSUlJQVJCQURZQ0dDQUVJQVUyQWd3Z0JDQUROZ0lJQzBFQUtBS1UwSUNBQUNJRElBSk5EUUJCQUNnQ29OQ0FnQUFpQkNBQ2FpSUZJQU1nQW1zaUEwRUJjallDQkVFQUlBTTJBcFRRZ0lBQVFRQWdCVFlDb05DQWdBQWdCQ0FDUVFOeU5nSUVJQVJCQ0dvaEF3d0RDMEVBSVFOQkFFRXdOZ0w0MDRDQUFBd0NDd0pBSUF0RkRRQUNRQUpBSUFnZ0NDZ0NIQ0lGUVFKMFFialNnSUFBYWlJREtBSUFSdzBBSUFNZ0FEWUNBQ0FBRFFGQkFDQUhRWDRnQlhkeElnYzJBb3pRZ0lBQURBSUxJQXRCRUVFVUlBc29BaEFnQ0VZYmFpQUFOZ0lBSUFCRkRRRUxJQUFnQ3pZQ0dBSkFJQWdvQWhBaUEwVU5BQ0FBSUFNMkFoQWdBeUFBTmdJWUN5QUlRUlJxS0FJQUlnTkZEUUFnQUVFVWFpQUROZ0lBSUFNZ0FEWUNHQXNDUUFKQUlBUkJEMHNOQUNBSUlBUWdBbW9pQTBFRGNqWUNCQ0FJSUFOcUlnTWdBeWdDQkVFQmNqWUNCQXdCQ3lBSUlBSnFJZ0FnQkVFQmNqWUNCQ0FJSUFKQkEzSTJBZ1FnQUNBRWFpQUVOZ0lBQWtBZ0JFSC9BVXNOQUNBRVFYaHhRYkRRZ0lBQWFpRURBa0FDUUVFQUtBS0kwSUNBQUNJRlFRRWdCRUVEZG5RaUJIRU5BRUVBSUFVZ0JISTJBb2pRZ0lBQUlBTWhCQXdCQ3lBREtBSUlJUVFMSUFRZ0FEWUNEQ0FESUFBMkFnZ2dBQ0FETmdJTUlBQWdCRFlDQ0F3QkMwRWZJUU1DUUNBRVFmLy8vd2RMRFFBZ0JFRUlkaUlESUFOQmdQNC9ha0VRZGtFSWNTSURkQ0lGSUFWQmdPQWZha0VRZGtFRWNTSUZkQ0lDSUFKQmdJQVBha0VRZGtFQ2NTSUNkRUVQZGlBRElBVnlJQUp5YXlJRFFRRjBJQVFnQTBFVmFuWkJBWEZ5UVJ4cUlRTUxJQUFnQXpZQ0hDQUFRZ0EzQWhBZ0EwRUNkRUc0MG9DQUFHb2hCUUpBSUFkQkFTQURkQ0lDY1EwQUlBVWdBRFlDQUVFQUlBY2dBbkkyQW96UWdJQUFJQUFnQlRZQ0dDQUFJQUEyQWdnZ0FDQUFOZ0lNREFFTElBUkJBRUVaSUFOQkFYWnJJQU5CSDBZYmRDRURJQVVvQWdBaEFnSkFBMEFnQWlJRktBSUVRWGh4SUFSR0RRRWdBMEVkZGlFQ0lBTkJBWFFoQXlBRklBSkJCSEZxUVJCcUlnWW9BZ0FpQWcwQUN5QUdJQUEyQWdBZ0FDQUZOZ0lZSUFBZ0FEWUNEQ0FBSUFBMkFnZ01BUXNnQlNnQ0NDSURJQUEyQWd3Z0JTQUFOZ0lJSUFCQkFEWUNHQ0FBSUFVMkFnd2dBQ0FETmdJSUN5QUlRUWhxSVFNTUFRc0NRQ0FLUlEwQUFrQUNRQ0FBSUFBb0Fod2lCVUVDZEVHNDBvQ0FBR29pQXlnQ0FFY05BQ0FESUFnMkFnQWdDQTBCUVFBZ0NVRitJQVYzY1RZQ2pOQ0FnQUFNQWdzZ0NrRVFRUlFnQ2lnQ0VDQUFSaHRxSUFnMkFnQWdDRVVOQVFzZ0NDQUtOZ0lZQWtBZ0FDZ0NFQ0lEUlEwQUlBZ2dBellDRUNBRElBZzJBaGdMSUFCQkZHb29BZ0FpQTBVTkFDQUlRUlJxSUFNMkFnQWdBeUFJTmdJWUN3SkFBa0FnQkVFUFN3MEFJQUFnQkNBQ2FpSURRUU55TmdJRUlBQWdBMm9pQXlBREtBSUVRUUZ5TmdJRURBRUxJQUFnQW1vaUJTQUVRUUZ5TmdJRUlBQWdBa0VEY2pZQ0JDQUZJQVJxSUFRMkFnQUNRQ0FIUlEwQUlBZEJlSEZCc05DQWdBQnFJUUpCQUNnQ25OQ0FnQUFoQXdKQUFrQkJBU0FIUVFOMmRDSUlJQVp4RFFCQkFDQUlJQVp5TmdLSTBJQ0FBQ0FDSVFnTUFRc2dBaWdDQ0NFSUN5QUlJQU0yQWd3Z0FpQUROZ0lJSUFNZ0FqWUNEQ0FESUFnMkFnZ0xRUUFnQlRZQ25OQ0FnQUJCQUNBRU5nS1EwSUNBQUFzZ0FFRUlhaUVEQ3lBQlFSQnFKSUNBZ0lBQUlBTUxDZ0FnQUJESmdJQ0FBQXZpRFFFSGZ3SkFJQUJGRFFBZ0FFRjRhaUlCSUFCQmZHb29BZ0FpQWtGNGNTSUFhaUVEQWtBZ0FrRUJjUTBBSUFKQkEzRkZEUUVnQVNBQktBSUFJZ0pySWdGQkFDZ0NtTkNBZ0FBaUJFa05BU0FDSUFCcUlRQUNRQ0FCUVFBb0FwelFnSUFBUmcwQUFrQWdBa0gvQVVzTkFDQUJLQUlJSWdRZ0FrRURkaUlGUVFOMFFiRFFnSUFBYWlJR1Job0NRQ0FCS0FJTUlnSWdCRWNOQUVFQVFRQW9Bb2pRZ0lBQVFYNGdCWGR4TmdLSTBJQ0FBQXdEQ3lBQ0lBWkdHaUFDSUFRMkFnZ2dCQ0FDTmdJTURBSUxJQUVvQWhnaEJ3SkFBa0FnQVNnQ0RDSUdJQUZHRFFBZ0FTZ0NDQ0lDSUFSSkdpQUdJQUkyQWdnZ0FpQUdOZ0lNREFFTEFrQWdBVUVVYWlJQ0tBSUFJZ1FOQUNBQlFSQnFJZ0lvQWdBaUJBMEFRUUFoQmd3QkN3TkFJQUloQlNBRUlnWkJGR29pQWlnQ0FDSUVEUUFnQmtFUWFpRUNJQVlvQWhBaUJBMEFDeUFGUVFBMkFnQUxJQWRGRFFFQ1FBSkFJQUVnQVNnQ0hDSUVRUUowUWJqU2dJQUFhaUlDS0FJQVJ3MEFJQUlnQmpZQ0FDQUdEUUZCQUVFQUtBS00wSUNBQUVGK0lBUjNjVFlDak5DQWdBQU1Bd3NnQjBFUVFSUWdCeWdDRUNBQlJodHFJQVkyQWdBZ0JrVU5BZ3NnQmlBSE5nSVlBa0FnQVNnQ0VDSUNSUTBBSUFZZ0FqWUNFQ0FDSUFZMkFoZ0xJQUVvQWhRaUFrVU5BU0FHUVJScUlBSTJBZ0FnQWlBR05nSVlEQUVMSUFNb0FnUWlBa0VEY1VFRFJ3MEFJQU1nQWtGK2NUWUNCRUVBSUFBMkFwRFFnSUFBSUFFZ0FHb2dBRFlDQUNBQklBQkJBWEkyQWdRUEN5QUJJQU5QRFFBZ0F5Z0NCQ0lDUVFGeFJRMEFBa0FDUUNBQ1FRSnhEUUFDUUNBRFFRQW9BcURRZ0lBQVJ3MEFRUUFnQVRZQ29OQ0FnQUJCQUVFQUtBS1UwSUNBQUNBQWFpSUFOZ0tVMElDQUFDQUJJQUJCQVhJMkFnUWdBVUVBS0FLYzBJQ0FBRWNOQTBFQVFRQTJBcERRZ0lBQVFRQkJBRFlDbk5DQWdBQVBDd0pBSUFOQkFDZ0NuTkNBZ0FCSERRQkJBQ0FCTmdLYzBJQ0FBRUVBUVFBb0FwRFFnSUFBSUFCcUlnQTJBcERRZ0lBQUlBRWdBRUVCY2pZQ0JDQUJJQUJxSUFBMkFnQVBDeUFDUVhoeElBQnFJUUFDUUFKQUlBSkIvd0ZMRFFBZ0F5Z0NDQ0lFSUFKQkEzWWlCVUVEZEVHdzBJQ0FBR29pQmtZYUFrQWdBeWdDRENJQ0lBUkhEUUJCQUVFQUtBS0kwSUNBQUVGK0lBVjNjVFlDaU5DQWdBQU1BZ3NnQWlBR1Job2dBaUFFTmdJSUlBUWdBallDREF3QkN5QURLQUlZSVFjQ1FBSkFJQU1vQWd3aUJpQURSZzBBSUFNb0FnZ2lBa0VBS0FLWTBJQ0FBRWthSUFZZ0FqWUNDQ0FDSUFZMkFnd01BUXNDUUNBRFFSUnFJZ0lvQWdBaUJBMEFJQU5CRUdvaUFpZ0NBQ0lFRFFCQkFDRUdEQUVMQTBBZ0FpRUZJQVFpQmtFVWFpSUNLQUlBSWdRTkFDQUdRUkJxSVFJZ0JpZ0NFQ0lFRFFBTElBVkJBRFlDQUFzZ0IwVU5BQUpBQWtBZ0F5QURLQUljSWdSQkFuUkJ1TktBZ0FCcUlnSW9BZ0JIRFFBZ0FpQUdOZ0lBSUFZTkFVRUFRUUFvQW96UWdJQUFRWDRnQkhkeE5nS00wSUNBQUF3Q0N5QUhRUkJCRkNBSEtBSVFJQU5HRzJvZ0JqWUNBQ0FHUlEwQkN5QUdJQWMyQWhnQ1FDQURLQUlRSWdKRkRRQWdCaUFDTmdJUUlBSWdCallDR0FzZ0F5Z0NGQ0lDUlEwQUlBWkJGR29nQWpZQ0FDQUNJQVkyQWhnTElBRWdBR29nQURZQ0FDQUJJQUJCQVhJMkFnUWdBVUVBS0FLYzBJQ0FBRWNOQVVFQUlBQTJBcERRZ0lBQUR3c2dBeUFDUVg1eE5nSUVJQUVnQUdvZ0FEWUNBQ0FCSUFCQkFYSTJBZ1FMQWtBZ0FFSC9BVXNOQUNBQVFYaHhRYkRRZ0lBQWFpRUNBa0FDUUVFQUtBS0kwSUNBQUNJRVFRRWdBRUVEZG5RaUFIRU5BRUVBSUFRZ0FISTJBb2pRZ0lBQUlBSWhBQXdCQ3lBQ0tBSUlJUUFMSUFBZ0FUWUNEQ0FDSUFFMkFnZ2dBU0FDTmdJTUlBRWdBRFlDQ0E4TFFSOGhBZ0pBSUFCQi8vLy9CMHNOQUNBQVFRaDJJZ0lnQWtHQS9qOXFRUkIyUVFoeElnSjBJZ1FnQkVHQTRCOXFRUkIyUVFSeElnUjBJZ1lnQmtHQWdBOXFRUkIyUVFKeElnWjBRUTkySUFJZ0JISWdCbkpySWdKQkFYUWdBQ0FDUVJWcWRrRUJjWEpCSEdvaEFnc2dBU0FDTmdJY0lBRkNBRGNDRUNBQ1FRSjBRYmpTZ0lBQWFpRUVBa0FDUUVFQUtBS00wSUNBQUNJR1FRRWdBblFpQTNFTkFDQUVJQUUyQWdCQkFDQUdJQU55TmdLTTBJQ0FBQ0FCSUFRMkFoZ2dBU0FCTmdJSUlBRWdBVFlDREF3QkN5QUFRUUJCR1NBQ1FRRjJheUFDUVI5R0czUWhBaUFFS0FJQUlRWUNRQU5BSUFZaUJDZ0NCRUY0Y1NBQVJnMEJJQUpCSFhZaEJpQUNRUUYwSVFJZ0JDQUdRUVJ4YWtFUWFpSURLQUlBSWdZTkFBc2dBeUFCTmdJQUlBRWdCRFlDR0NBQklBRTJBZ3dnQVNBQk5nSUlEQUVMSUFRb0FnZ2lBQ0FCTmdJTUlBUWdBVFlDQ0NBQlFRQTJBaGdnQVNBRU5nSU1JQUVnQURZQ0NBdEJBRUVBS0FLbzBJQ0FBRUYvYWlJQlFYOGdBUnMyQXFqUWdJQUFDd3NFQUFBQUMwNEFBa0FnQUEwQVB3QkJFSFFQQ3dKQUlBQkIvLzhEY1EwQUlBQkJmMHdOQUFKQUlBQkJFSFpBQUNJQVFYOUhEUUJCQUVFd05nTDQwNENBQUVGL0R3c2dBRUVRZEE4TEVNcUFnSUFBQUF2eUFnSURmd0YrQWtBZ0FrVU5BQ0FBSUFFNkFBQWdBaUFBYWlJRFFYOXFJQUU2QUFBZ0FrRURTUTBBSUFBZ0FUb0FBaUFBSUFFNkFBRWdBMEY5YWlBQk9nQUFJQU5CZm1vZ0FUb0FBQ0FDUVFkSkRRQWdBQ0FCT2dBRElBTkJmR29nQVRvQUFDQUNRUWxKRFFBZ0FFRUFJQUJyUVFOeElnUnFJZ01nQVVIL0FYRkJnWUtFQ0d3aUFUWUNBQ0FESUFJZ0JHdEJmSEVpQkdvaUFrRjhhaUFCTmdJQUlBUkJDVWtOQUNBRElBRTJBZ2dnQXlBQk5nSUVJQUpCZUdvZ0FUWUNBQ0FDUVhScUlBRTJBZ0FnQkVFWlNRMEFJQU1nQVRZQ0dDQURJQUUyQWhRZ0F5QUJOZ0lRSUFNZ0FUWUNEQ0FDUVhCcUlBRTJBZ0FnQWtGc2FpQUJOZ0lBSUFKQmFHb2dBVFlDQUNBQ1FXUnFJQUUyQWdBZ0JDQURRUVJ4UVJoeUlnVnJJZ0pCSUVrTkFDQUJyVUtCZ0lDQUVINGhCaUFESUFWcUlRRURRQ0FCSUFZM0F4Z2dBU0FHTndNUUlBRWdCamNEQ0NBQklBWTNBd0FnQVVFZ2FpRUJJQUpCWUdvaUFrRWZTdzBBQ3dzZ0FBc0xqa2dCQUVHQUNBdUdTQUVBQUFBQ0FBQUFBd0FBQUFBQUFBQUFBQUFBQkFBQUFBVUFBQUFBQUFBQUFBQUFBQVlBQUFBSEFBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBU1c1MllXeHBaQ0JqYUdGeUlHbHVJSFZ5YkNCeGRXVnllUUJUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYMkp2WkhrQVEyOXVkR1Z1ZEMxTVpXNW5kR2dnYjNabGNtWnNiM2NBUTJoMWJtc2djMmw2WlNCdmRtVnlabXh2ZHdCU1pYTndiMjV6WlNCdmRtVnlabXh2ZHdCSmJuWmhiR2xrSUcxbGRHaHZaQ0JtYjNJZ1NGUlVVQzk0TG5nZ2NtVnhkV1Z6ZEFCSmJuWmhiR2xrSUcxbGRHaHZaQ0JtYjNJZ1VsUlRVQzk0TG5nZ2NtVnhkV1Z6ZEFCRmVIQmxZM1JsWkNCVFQxVlNRMFVnYldWMGFHOWtJR1p2Y2lCSlEwVXZlQzU0SUhKbGNYVmxjM1FBU1c1MllXeHBaQ0JqYUdGeUlHbHVJSFZ5YkNCbWNtRm5iV1Z1ZENCemRHRnlkQUJGZUhCbFkzUmxaQ0JrYjNRQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5emRHRjBkWE1BU1c1MllXeHBaQ0J5WlhOd2IyNXpaU0J6ZEdGMGRYTUFTVzUyWVd4cFpDQmphR0Z5WVdOMFpYSWdhVzRnWTJoMWJtc2daWGgwWlc1emFXOXVjd0JWYzJWeUlHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOXlaWE5sZEdBZ1kyRnNiR0poWTJzZ1pYSnliM0lBWUc5dVgyTm9kVzVyWDJobFlXUmxjbUFnWTJGc2JHSmhZMnNnWlhKeWIzSUFZRzl1WDIxbGMzTmhaMlZmWW1WbmFXNWdJR05oYkd4aVlXTnJJR1Z5Y205eUFHQnZibDlqYUhWdWExOWxlSFJsYm5OcGIyNWZkbUZzZFdWZ0lHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOXpkR0YwZFhOZlkyOXRjR3hsZEdWZ0lHTmhiR3hpWVdOcklHVnljbTl5QUdCdmJsOTJaWEp6YVc5dVgyTnZiWEJzWlhSbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCZ2IyNWZkWEpzWDJOdmJYQnNaWFJsWUNCallXeHNZbUZqYXlCbGNuSnZjZ0JnYjI1ZlkyaDFibXRmWTI5dGNHeGxkR1ZnSUdOaGJHeGlZV05ySUdWeWNtOXlBR0J2Ymw5b1pXRmtaWEpmZG1Gc2RXVmZZMjl0Y0d4bGRHVmdJR05oYkd4aVlXTnJJR1Z5Y205eUFHQnZibDl0WlhOellXZGxYMk52YlhCc1pYUmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmYldWMGFHOWtYMk52YlhCc1pYUmxZQ0JqWVd4c1ltRmpheUJsY25KdmNnQmdiMjVmYUdWaFpHVnlYMlpwWld4a1gyTnZiWEJzWlhSbFlDQmpZV3hzWW1GamF5Qmxjbkp2Y2dCZ2IyNWZZMmgxYm10ZlpYaDBaVzV6YVc5dVgyNWhiV1ZnSUdOaGJHeGlZV05ySUdWeWNtOXlBRlZ1Wlhod1pXTjBaV1FnWTJoaGNpQnBiaUIxY213Z2MyVnlkbVZ5QUVsdWRtRnNhV1FnYUdWaFpHVnlJSFpoYkhWbElHTm9ZWElBU1c1MllXeHBaQ0JvWldGa1pYSWdabWxsYkdRZ1kyaGhjZ0JUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYM1psY25OcGIyNEFTVzUyWVd4cFpDQnRhVzV2Y2lCMlpYSnphVzl1QUVsdWRtRnNhV1FnYldGcWIzSWdkbVZ5YzJsdmJnQkZlSEJsWTNSbFpDQnpjR0ZqWlNCaFpuUmxjaUIyWlhKemFXOXVBRVY0Y0dWamRHVmtJRU5TVEVZZ1lXWjBaWElnZG1WeWMybHZiZ0JKYm5aaGJHbGtJRWhVVkZBZ2RtVnljMmx2YmdCSmJuWmhiR2xrSUdobFlXUmxjaUIwYjJ0bGJnQlRjR0Z1SUdOaGJHeGlZV05ySUdWeWNtOXlJR2x1SUc5dVgzVnliQUJKYm5aaGJHbGtJR05vWVhKaFkzUmxjbk1nYVc0Z2RYSnNBRlZ1Wlhod1pXTjBaV1FnYzNSaGNuUWdZMmhoY2lCcGJpQjFjbXdBUkc5MVlteGxJRUFnYVc0Z2RYSnNBRVZ0Y0hSNUlFTnZiblJsYm5RdFRHVnVaM1JvQUVsdWRtRnNhV1FnWTJoaGNtRmpkR1Z5SUdsdUlFTnZiblJsYm5RdFRHVnVaM1JvQUVSMWNHeHBZMkYwWlNCRGIyNTBaVzUwTFV4bGJtZDBhQUJKYm5aaGJHbGtJR05vWVhJZ2FXNGdkWEpzSUhCaGRHZ0FRMjl1ZEdWdWRDMU1aVzVuZEdnZ1kyRnVKM1FnWW1VZ2NISmxjMlZ1ZENCM2FYUm9JRlJ5WVc1elptVnlMVVZ1WTI5a2FXNW5BRWx1ZG1Gc2FXUWdZMmhoY21GamRHVnlJR2x1SUdOb2RXNXJJSE5wZW1VQVUzQmhiaUJqWVd4c1ltRmpheUJsY25KdmNpQnBiaUJ2Ymw5b1pXRmtaWEpmZG1Gc2RXVUFVM0JoYmlCallXeHNZbUZqYXlCbGNuSnZjaUJwYmlCdmJsOWphSFZ1YTE5bGVIUmxibk5wYjI1ZmRtRnNkV1VBU1c1MllXeHBaQ0JqYUdGeVlXTjBaWElnYVc0Z1kyaDFibXNnWlhoMFpXNXphVzl1Y3lCMllXeDFaUUJOYVhOemFXNW5JR1Y0Y0dWamRHVmtJRXhHSUdGbWRHVnlJR2hsWVdSbGNpQjJZV3gxWlFCSmJuWmhiR2xrSUdCVWNtRnVjMlpsY2kxRmJtTnZaR2x1WjJBZ2FHVmhaR1Z5SUhaaGJIVmxBRWx1ZG1Gc2FXUWdZMmhoY21GamRHVnlJR2x1SUdOb2RXNXJJR1Y0ZEdWdWMybHZibk1nY1hWdmRHVWdkbUZzZFdVQVNXNTJZV3hwWkNCamFHRnlZV04wWlhJZ2FXNGdZMmgxYm1zZ1pYaDBaVzV6YVc5dWN5QnhkVzkwWldRZ2RtRnNkV1VBVUdGMWMyVmtJR0o1SUc5dVgyaGxZV1JsY25OZlkyOXRjR3hsZEdVQVNXNTJZV3hwWkNCRlQwWWdjM1JoZEdVQWIyNWZjbVZ6WlhRZ2NHRjFjMlVBYjI1ZlkyaDFibXRmYUdWaFpHVnlJSEJoZFhObEFHOXVYMjFsYzNOaFoyVmZZbVZuYVc0Z2NHRjFjMlVBYjI1ZlkyaDFibXRmWlhoMFpXNXphVzl1WDNaaGJIVmxJSEJoZFhObEFHOXVYM04wWVhSMWMxOWpiMjF3YkdWMFpTQndZWFZ6WlFCdmJsOTJaWEp6YVc5dVgyTnZiWEJzWlhSbElIQmhkWE5sQUc5dVgzVnliRjlqYjIxd2JHVjBaU0J3WVhWelpRQnZibDlqYUhWdWExOWpiMjF3YkdWMFpTQndZWFZ6WlFCdmJsOW9aV0ZrWlhKZmRtRnNkV1ZmWTI5dGNHeGxkR1VnY0dGMWMyVUFiMjVmYldWemMyRm5aVjlqYjIxd2JHVjBaU0J3WVhWelpRQnZibDl0WlhSb2IyUmZZMjl0Y0d4bGRHVWdjR0YxYzJVQWIyNWZhR1ZoWkdWeVgyWnBaV3hrWDJOdmJYQnNaWFJsSUhCaGRYTmxBRzl1WDJOb2RXNXJYMlY0ZEdWdWMybHZibDl1WVcxbElIQmhkWE5sQUZWdVpYaHdaV04wWldRZ2MzQmhZMlVnWVdaMFpYSWdjM1JoY25RZ2JHbHVaUUJUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYMk5vZFc1clgyVjRkR1Z1YzJsdmJsOXVZVzFsQUVsdWRtRnNhV1FnWTJoaGNtRmpkR1Z5SUdsdUlHTm9kVzVySUdWNGRHVnVjMmx2Ym5NZ2JtRnRaUUJRWVhWelpTQnZiaUJEVDA1T1JVTlVMMVZ3WjNKaFpHVUFVR0YxYzJVZ2IyNGdVRkpKTDFWd1ozSmhaR1VBUlhod1pXTjBaV1FnU0ZSVVVDOHlJRU52Ym01bFkzUnBiMjRnVUhKbFptRmpaUUJUY0dGdUlHTmhiR3hpWVdOcklHVnljbTl5SUdsdUlHOXVYMjFsZEdodlpBQkZlSEJsWTNSbFpDQnpjR0ZqWlNCaFpuUmxjaUJ0WlhSb2IyUUFVM0JoYmlCallXeHNZbUZqYXlCbGNuSnZjaUJwYmlCdmJsOW9aV0ZrWlhKZlptbGxiR1FBVUdGMWMyVmtBRWx1ZG1Gc2FXUWdkMjl5WkNCbGJtTnZkVzUwWlhKbFpBQkpiblpoYkdsa0lHMWxkR2h2WkNCbGJtTnZkVzUwWlhKbFpBQlZibVY0Y0dWamRHVmtJR05vWVhJZ2FXNGdkWEpzSUhOamFHVnRZUUJTWlhGMVpYTjBJR2hoY3lCcGJuWmhiR2xrSUdCVWNtRnVjMlpsY2kxRmJtTnZaR2x1WjJBQVUxZEpWRU5JWDFCU1QxaFpBRlZUUlY5UVVrOVlXUUJOUzBGRFZFbFdTVlJaQUZWT1VGSlBRMFZUVTBGQ1RFVmZSVTVVU1ZSWkFFTlBVRmtBVFU5V1JVUmZVRVZTVFVGT1JVNVVURmtBVkU5UFgwVkJVa3haQUU1UFZFbEdXUUJHUVVsTVJVUmZSRVZRUlU1RVJVNURXUUJDUVVSZlIwRlVSVmRCV1FCUVRFRlpBRkJWVkFCRFNFVkRTMDlWVkFCSFFWUkZWMEZaWDFSSlRVVlBWVlFBVWtWUlZVVlRWRjlVU1UxRlQxVlVBRTVGVkZkUFVrdGZRMDlPVGtWRFZGOVVTVTFGVDFWVUFFTlBUazVGUTFSSlQwNWZWRWxOUlU5VlZBQk1UMGRKVGw5VVNVMUZUMVZVQUU1RlZGZFBVa3RmVWtWQlJGOVVTVTFGVDFWVUFGQlBVMVFBVFVsVFJFbFNSVU5VUlVSZlVrVlJWVVZUVkFCRFRFbEZUbFJmUTB4UFUwVkVYMUpGVVZWRlUxUUFRMHhKUlU1VVgwTk1UMU5GUkY5TVQwRkVYMEpCVEVGT1EwVkVYMUpGVVZWRlUxUUFRa0ZFWDFKRlVWVkZVMVFBU0ZSVVVGOVNSVkZWUlZOVVgxTkZUbFJmVkU5ZlNGUlVVRk5mVUU5U1ZBQlNSVkJQVWxRQVNVMWZRVjlVUlVGUVQxUUFVa1ZUUlZSZlEwOU9WRVZPVkFCT1QxOURUMDVVUlU1VUFGQkJVbFJKUVV4ZlEwOU9WRVZPVkFCSVVFVmZTVTVXUVV4SlJGOURUMDVUVkVGT1ZBQklVRVZmUTBKZlVrVlRSVlFBUjBWVUFFaFFSVjlUVkZKSlExUUFRMDlPUmt4SlExUUFWRVZOVUU5U1FWSlpYMUpGUkVsU1JVTlVBRkJGVWsxQlRrVk9WRjlTUlVSSlVrVkRWQUJEVDA1T1JVTlVBRTFWVEZSSlgxTlVRVlJWVXdCSVVFVmZTVTVXUVV4SlJGOVRWRUZVVlZNQVZFOVBYMDFCVGxsZlVrVlJWVVZUVkZNQVJVRlNURmxmU0VsT1ZGTUFWVTVCVmtGSlRFRkNURVZmUms5U1gweEZSMEZNWDFKRlFWTlBUbE1BVDFCVVNVOU9Vd0JUVjBsVVEwaEpUa2RmVUZKUFZFOURUMHhUQUZaQlVrbEJUbFJmUVV4VFQxOU9SVWRQVkVsQlZFVlRBRTFWVEZSSlVFeEZYME5JVDBsRFJWTUFTVTVVUlZKT1FVeGZVMFZTVmtWU1gwVlNVazlTQUZkRlFsOVRSVkpXUlZKZlZVNUxUazlYVGw5RlVsSlBVZ0JTUVVsTVIxVk9YMFZTVWs5U0FFbEVSVTVVU1ZSWlgxQlNUMVpKUkVWU1gwRlZWRWhGVGxSSlEwRlVTVTlPWDBWU1VrOVNBRk5UVEY5RFJWSlVTVVpKUTBGVVJWOUZVbEpQVWdCSlRsWkJURWxFWDFoZlJrOVNWMEZTUkVWRVgwWlBVZ0JUUlZSZlVFRlNRVTFGVkVWU0FFZEZWRjlRUVZKQlRVVlVSVklBU0ZCRlgxVlRSVklBVTBWRlgwOVVTRVZTQUVoUVJWOURRbDlEU0ZWT1MxOUlSVUZFUlZJQVRVdERRVXhGVGtSQlVnQlRSVlJWVUFCWFJVSmZVMFZTVmtWU1gwbFRYMFJQVjA0QVZFVkJVa1JQVjA0QVNGQkZYME5NVDFORlJGOURUMDVPUlVOVVNVOU9BRWhGVlZKSlUxUkpRMTlGV0ZCSlVrRlVTVTlPQUVSSlUwTlBUazVGUTFSRlJGOVBVRVZTUVZSSlQwNEFUazlPWDBGVlZFaFBVa2xVUVZSSlZrVmZTVTVHVDFKTlFWUkpUMDRBU0ZCRlgwbE9Wa0ZNU1VSZlZrVlNVMGxQVGdCSVVFVmZRMEpmVFVWVFUwRkhSVjlDUlVkSlRnQlRTVlJGWDBsVFgwWlNUMXBGVGdCSVVFVmZTVTVXUVV4SlJGOUlSVUZFUlZKZlZFOUxSVTRBU1U1V1FVeEpSRjlVVDB0RlRnQkdUMUpDU1VSRVJVNEFSVTVJUVU1RFJWOVpUMVZTWDBOQlRFMEFTRkJGWDBsT1ZrRk1TVVJmVlZKTUFFSk1UME5MUlVSZlFsbGZVRUZTUlU1VVFVeGZRMDlPVkZKUFRBQk5TME5QVEFCQlEwd0FTRkJGWDBsT1ZFVlNUa0ZNQUZKRlVWVkZVMVJmU0VWQlJFVlNYMFpKUlV4RVUxOVVUMDlmVEVGU1IwVmZWVTVQUmtaSlEwbEJUQUJJVUVWZlQwc0FWVTVNU1U1TEFGVk9URTlEU3dCUVVra0FVa1ZVVWxsZlYwbFVTQUJJVUVWZlNVNVdRVXhKUkY5RFQwNVVSVTVVWDB4RlRrZFVTQUJJVUVWZlZVNUZXRkJGUTFSRlJGOURUMDVVUlU1VVgweEZUa2RVU0FCR1RGVlRTQUJRVWs5UVVFRlVRMGdBVFMxVFJVRlNRMGdBVlZKSlgxUlBUMTlNVDA1SEFGQlNUME5GVTFOSlRrY0FUVWxUUTBWTVRFRk9SVTlWVTE5UVJWSlRTVk5VUlU1VVgxZEJVazVKVGtjQVRVbFRRMFZNVEVGT1JVOVZVMTlYUVZKT1NVNUhBRWhRUlY5SlRsWkJURWxFWDFSU1FVNVRSa1ZTWDBWT1EwOUVTVTVIQUVWNGNHVmpkR1ZrSUVOU1RFWUFTRkJGWDBsT1ZrRk1TVVJmUTBoVlRrdGZVMGxhUlFCTlQxWkZBRU5QVGxSSlRsVkZBRWhRUlY5RFFsOVRWRUZVVlZOZlEwOU5VRXhGVkVVQVNGQkZYME5DWDBoRlFVUkZVbE5mUTA5TlVFeEZWRVVBU0ZCRlgwTkNYMVpGVWxOSlQwNWZRMDlOVUV4RlZFVUFTRkJGWDBOQ1gxVlNURjlEVDAxUVRFVlVSUUJJVUVWZlEwSmZRMGhWVGt0ZlEwOU5VRXhGVkVVQVNGQkZYME5DWDBoRlFVUkZVbDlXUVV4VlJWOURUMDFRVEVWVVJRQklVRVZmUTBKZlEwaFZUa3RmUlZoVVJVNVRTVTlPWDFaQlRGVkZYME5QVFZCTVJWUkZBRWhRUlY5RFFsOURTRlZPUzE5RldGUkZUbE5KVDA1ZlRrRk5SVjlEVDAxUVRFVlVSUUJJVUVWZlEwSmZUVVZUVTBGSFJWOURUMDFRVEVWVVJRQklVRVZmUTBKZlRVVlVTRTlFWDBOUFRWQk1SVlJGQUVoUVJWOURRbDlJUlVGRVJWSmZSa2xGVEVSZlEwOU5VRXhGVkVVQVJFVk1SVlJGQUVoUVJWOUpUbFpCVEVsRVgwVlBSbDlUVkVGVVJRQkpUbFpCVEVsRVgxTlRURjlEUlZKVVNVWkpRMEZVUlFCUVFWVlRSUUJPVDE5U1JWTlFUMDVUUlFCVlRsTlZVRkJQVWxSRlJGOU5SVVJKUVY5VVdWQkZBRWRQVGtVQVRrOVVYMEZEUTBWUVZFRkNURVVBVTBWU1ZrbERSVjlWVGtGV1FVbE1RVUpNUlFCU1FVNUhSVjlPVDFSZlUwRlVTVk5HU1VGQ1RFVUFUMUpKUjBsT1gwbFRYMVZPVWtWQlEwaEJRa3hGQUZKRlUxQlBUbE5GWDBsVFgxTlVRVXhGQUZCVlVrZEZBRTFGVWtkRkFGSkZVVlZGVTFSZlNFVkJSRVZTWDBaSlJVeEVVMTlVVDA5ZlRFRlNSMFVBVWtWUlZVVlRWRjlJUlVGRVJWSmZWRTlQWDB4QlVrZEZBRkJCV1V4UFFVUmZWRTlQWDB4QlVrZEZBRWxPVTFWR1JrbERTVVZPVkY5VFZFOVNRVWRGQUVoUVJWOVFRVlZUUlVSZlZWQkhVa0ZFUlFCSVVFVmZVRUZWVTBWRVgwZ3lYMVZRUjFKQlJFVUFVMDlWVWtORkFFRk9UazlWVGtORkFGUlNRVU5GQUVoUVJWOVZUa1ZZVUVWRFZFVkVYMU5RUVVORkFFUkZVME5TU1VKRkFGVk9VMVZDVTBOU1NVSkZBRkpGUTA5U1JBQklVRVZmU1U1V1FVeEpSRjlOUlZSSVQwUUFUazlVWDBaUFZVNUVBRkJTVDFCR1NVNUVBRlZPUWtsT1JBQlNSVUpKVGtRQVZVNUJWVlJJVDFKSldrVkVBRTFGVkVoUFJGOU9UMVJmUVV4TVQxZEZSQUJJVkZSUVgxWkZVbE5KVDA1ZlRrOVVYMU5WVUZCUFVsUkZSQUJCVEZKRlFVUlpYMUpGVUU5U1ZFVkVBRUZEUTBWUVZFVkVBRTVQVkY5SlRWQk1SVTFGVGxSRlJBQk1UMDlRWDBSRlZFVkRWRVZFQUVoUVJWOURVbDlGV0ZCRlExUkZSQUJJVUVWZlRFWmZSVmhRUlVOVVJVUUFRMUpGUVZSRlJBQkpUVjlWVTBWRUFFaFFSVjlRUVZWVFJVUUFWRWxOUlU5VlZGOVBRME5WVWtWRUFGQkJXVTFGVGxSZlVrVlJWVWxTUlVRQVVGSkZRMDlPUkVsVVNVOU9YMUpGVVZWSlVrVkVBRkJTVDFoWlgwRlZWRWhGVGxSSlEwRlVTVTlPWDFKRlVWVkpVa1ZFQUU1RlZGZFBVa3RmUVZWVVNFVk9WRWxEUVZSSlQwNWZVa1ZSVlVsU1JVUUFURVZPUjFSSVgxSkZVVlZKVWtWRUFGTlRURjlEUlZKVVNVWkpRMEZVUlY5U1JWRlZTVkpGUkFCVlVFZFNRVVJGWDFKRlVWVkpVa1ZFQUZCQlIwVmZSVmhRU1ZKRlJBQlFVa1ZEVDA1RVNWUkpUMDVmUmtGSlRFVkVBRVZZVUVWRFZFRlVTVTlPWDBaQlNVeEZSQUJTUlZaQlRFbEVRVlJKVDA1ZlJrRkpURVZFQUZOVFRGOUlRVTVFVTBoQlMwVmZSa0ZKVEVWRUFFeFBRMHRGUkFCVVVrRk9VMFpQVWsxQlZFbFBUbDlCVUZCTVNVVkVBRTVQVkY5TlQwUkpSa2xGUkFCT1QxUmZSVmhVUlU1RVJVUUFRa0ZPUkZkSlJGUklYMHhKVFVsVVgwVllRMFZGUkVWRUFGTkpWRVZmU1ZOZlQxWkZVa3hQUVVSRlJBQklSVUZFQUVWNGNHVmpkR1ZrSUVoVVZGQXZBQUJlRXdBQUpoTUFBREFRQUFEd0Z3QUFuUk1BQUJVU0FBQTVGd0FBOEJJQUFBb1FBQUIxRWdBQXJSSUFBSUlUQUFCUEZBQUFmeEFBQUtBVkFBQWpGQUFBaVJJQUFJc1VBQUJORlFBQTFCRUFBTThVQUFBUUdBQUF5UllBQU53V0FBREJFUUFBNEJjQUFMc1VBQUIwRkFBQWZCVUFBT1VVQUFBSUZ3QUFIeEFBQUdVVkFBQ2pGQUFBS0JVQUFBSVZBQUNaRlFBQUxCQUFBSXNaQUFCUER3QUExQTRBQUdvUUFBRE9FQUFBQWhjQUFJa09BQUJ1RXdBQUhCTUFBR1lVQUFCV0Z3QUF3Uk1BQU0wVEFBQnNFd0FBYUJjQUFHWVhBQUJmRndBQUloTUFBTTRQQUFCcERnQUEyQTRBQUdNV0FBRExFd0FBcWc0QUFDZ1hBQUFtRndBQXhSTUFBRjBXQUFEb0VRQUFaeE1BQUdVVEFBRHlGZ0FBY3hNQUFCMFhBQUQ1RmdBQTh4RUFBTThPQUFET0ZRQUFEQklBQUxNUkFBQ2xFUUFBWVJBQUFESVhBQUM3RXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVCQWdFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUFBQUFBQUFBQUFBQUFBQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnTUNBZ0lDQWdBQUFnSUFBZ0lBQWdJQ0FnSUNBZ0lDQWdBRUFBQUFBQUFDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0FBQUFJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FBSUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUlBQWdJQ0FnSUFBQUlDQUFJQ0FBSUNBZ0lDQWdJQ0FnSUFBd0FFQUFBQUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQUFBQUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0FDQUFJQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQnNiM05sWldWd0xXRnNhWFpsQUFBQUFBQUFBQUFBQUFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRRUJBUUVCQVFFQkFRRUJBZ0VCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFGamFIVnVhMlZrQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBUUFCQVFFQkFRQUFBUUVBQVFFQUFRRUJBUUVCQVFFQkFRQUFBQUFBQUFBQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQUFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHVmpkR2x2Ym1WdWRDMXNaVzVuZEdodmJuSnZlSGt0WTI5dWJtVmpkR2x2YmdBQUFBQUFBQUFBQUFBQUFBQUFBSEpoYm5ObVpYSXRaVzVqYjJScGJtZHdaM0poWkdVTkNnMEtEUXBUVFEwS0RRcFVWRkF2UTBVdlZGTlFMd0FBQUFBQUFBQUFBQUFBQUFFQ0FBRURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQUFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUFBQUFBQUFBQUFBQUJBZ0FCQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFRQkFRVUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFBQUFBQUFBQUFBQVFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUFBQUFBQUFBQUFBQUJBQUFDQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXdRQUFBUUVCQVFFQkFRRUJBUUVCUVFFQkFRRUJBUUVCQVFFQkFBRUFBWUhCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVBQVFBQkFBRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFBQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnQUFBQUFBQUFNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQUFBQUFBQUFBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUFBQUFBQWdBQUFBQUNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3QUFBQUFBQUFNREF3TURBd01EQXdNREF3TURBd01EQXdNREF3TURBd01EQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRTVQVlU1RFJVVkRTMDlWVkU1RlExUkZWRVZEVWtsQ1JVeFZVMGhGVkVWQlJGTkZRVkpEU0ZKSFJVTlVTVlpKVkZsTVJVNUVRVkpXUlU5VVNVWlpVRlJKVDA1VFEwaFRSVUZaVTFSQlZFTklSMFZQVWtSSlVrVkRWRTlTVkZKRFNGQkJVa0ZOUlZSRlVsVlNRMFZDVTBOU1NVSkZRVkpFVDFkT1FVTkZTVTVFVGt0RFMxVkNVME5TU1VKRlNGUlVVQzlCUkZSUUx3PT0nXG4iLCAiLy8gQHRzLWNoZWNrXG5cbid1c2Ugc3RyaWN0J1xuXG4vKiBnbG9iYWwgV2ViQXNzZW1ibHkgKi9cblxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IG5ldCA9IHJlcXVpcmUoJ25ldCcpXG5jb25zdCBodHRwID0gcmVxdWlyZSgnaHR0cCcpXG5jb25zdCB7IHBpcGVsaW5lIH0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4vY29yZS91dGlsJylcbmNvbnN0IHRpbWVycyA9IHJlcXVpcmUoJy4vdGltZXJzJylcbmNvbnN0IFJlcXVlc3QgPSByZXF1aXJlKCcuL2NvcmUvcmVxdWVzdCcpXG5jb25zdCBEaXNwYXRjaGVyQmFzZSA9IHJlcXVpcmUoJy4vZGlzcGF0Y2hlci1iYXNlJylcbmNvbnN0IHtcbiAgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBSZXNwb25zZUNvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yLFxuICBJbnZhbGlkQXJndW1lbnRFcnJvcixcbiAgUmVxdWVzdEFib3J0ZWRFcnJvcixcbiAgSGVhZGVyc1RpbWVvdXRFcnJvcixcbiAgSGVhZGVyc092ZXJmbG93RXJyb3IsXG4gIFNvY2tldEVycm9yLFxuICBJbmZvcm1hdGlvbmFsRXJyb3IsXG4gIEJvZHlUaW1lb3V0RXJyb3IsXG4gIEhUVFBQYXJzZXJFcnJvcixcbiAgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvcixcbiAgQ2xpZW50RGVzdHJveWVkRXJyb3Jcbn0gPSByZXF1aXJlKCcuL2NvcmUvZXJyb3JzJylcbmNvbnN0IGJ1aWxkQ29ubmVjdG9yID0gcmVxdWlyZSgnLi9jb3JlL2Nvbm5lY3QnKVxuY29uc3Qge1xuICBrVXJsLFxuICBrUmVzZXQsXG4gIGtTZXJ2ZXJOYW1lLFxuICBrQ2xpZW50LFxuICBrQnVzeSxcbiAga1BhcnNlcixcbiAga0Nvbm5lY3QsXG4gIGtCbG9ja2luZyxcbiAga1Jlc3VtaW5nLFxuICBrUnVubmluZyxcbiAga1BlbmRpbmcsXG4gIGtTaXplLFxuICBrV3JpdGluZyxcbiAga1F1ZXVlLFxuICBrQ29ubmVjdGVkLFxuICBrQ29ubmVjdGluZyxcbiAga05lZWREcmFpbixcbiAga05vUmVmLFxuICBrS2VlcEFsaXZlRGVmYXVsdFRpbWVvdXQsXG4gIGtIb3N0SGVhZGVyLFxuICBrUGVuZGluZ0lkeCxcbiAga1J1bm5pbmdJZHgsXG4gIGtFcnJvcixcbiAga1BpcGVsaW5pbmcsXG4gIGtTb2NrZXQsXG4gIGtLZWVwQWxpdmVUaW1lb3V0VmFsdWUsXG4gIGtNYXhIZWFkZXJzU2l6ZSxcbiAga0tlZXBBbGl2ZU1heFRpbWVvdXQsXG4gIGtLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkLFxuICBrSGVhZGVyc1RpbWVvdXQsXG4gIGtCb2R5VGltZW91dCxcbiAga1N0cmljdENvbnRlbnRMZW5ndGgsXG4gIGtDb25uZWN0b3IsXG4gIGtNYXhSZWRpcmVjdGlvbnMsXG4gIGtNYXhSZXF1ZXN0cyxcbiAga0NvdW50ZXIsXG4gIGtDbG9zZSxcbiAga0Rlc3Ryb3ksXG4gIGtEaXNwYXRjaCxcbiAga0ludGVyY2VwdG9ycyxcbiAga0xvY2FsQWRkcmVzcyxcbiAga01heFJlc3BvbnNlU2l6ZSxcbiAga0hUVFBDb25uVmVyc2lvbixcbiAgLy8gSFRUUDJcbiAga0hvc3QsXG4gIGtIVFRQMlNlc3Npb24sXG4gIGtIVFRQMlNlc3Npb25TdGF0ZSxcbiAga0hUVFAyQnVpbGRSZXF1ZXN0LFxuICBrSFRUUDJDb3B5SGVhZGVycyxcbiAga0hUVFAxQnVpbGRSZXF1ZXN0XG59ID0gcmVxdWlyZSgnLi9jb3JlL3N5bWJvbHMnKVxuXG4vKiogQHR5cGUge2ltcG9ydCgnaHR0cDInKX0gKi9cbmxldCBodHRwMlxudHJ5IHtcbiAgaHR0cDIgPSByZXF1aXJlKCdodHRwMicpXG59IGNhdGNoIHtcbiAgLy8gQHRzLWlnbm9yZVxuICBodHRwMiA9IHsgY29uc3RhbnRzOiB7fSB9XG59XG5cbmNvbnN0IHtcbiAgY29uc3RhbnRzOiB7XG4gICAgSFRUUDJfSEVBREVSX0FVVEhPUklUWSxcbiAgICBIVFRQMl9IRUFERVJfTUVUSE9ELFxuICAgIEhUVFAyX0hFQURFUl9QQVRILFxuICAgIEhUVFAyX0hFQURFUl9TQ0hFTUUsXG4gICAgSFRUUDJfSEVBREVSX0NPTlRFTlRfTEVOR1RILFxuICAgIEhUVFAyX0hFQURFUl9FWFBFQ1QsXG4gICAgSFRUUDJfSEVBREVSX1NUQVRVU1xuICB9XG59ID0gaHR0cDJcblxuLy8gRXhwZXJpbWVudGFsXG5sZXQgaDJFeHBlcmltZW50YWxXYXJuZWQgPSBmYWxzZVxuXG5jb25zdCBGYXN0QnVmZmVyID0gQnVmZmVyW1N5bWJvbC5zcGVjaWVzXVxuXG5jb25zdCBrQ2xvc2VkUmVzb2x2ZSA9IFN5bWJvbCgna0Nsb3NlZFJlc29sdmUnKVxuXG5jb25zdCBjaGFubmVscyA9IHt9XG5cbnRyeSB7XG4gIGNvbnN0IGRpYWdub3N0aWNzQ2hhbm5lbCA9IHJlcXVpcmUoJ2RpYWdub3N0aWNzX2NoYW5uZWwnKVxuICBjaGFubmVscy5zZW5kSGVhZGVycyA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6Y2xpZW50OnNlbmRIZWFkZXJzJylcbiAgY2hhbm5lbHMuYmVmb3JlQ29ubmVjdCA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6Y2xpZW50OmJlZm9yZUNvbm5lY3QnKVxuICBjaGFubmVscy5jb25uZWN0RXJyb3IgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOmNsaWVudDpjb25uZWN0RXJyb3InKVxuICBjaGFubmVscy5jb25uZWN0ZWQgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOmNsaWVudDpjb25uZWN0ZWQnKVxufSBjYXRjaCB7XG4gIGNoYW5uZWxzLnNlbmRIZWFkZXJzID0geyBoYXNTdWJzY3JpYmVyczogZmFsc2UgfVxuICBjaGFubmVscy5iZWZvcmVDb25uZWN0ID0geyBoYXNTdWJzY3JpYmVyczogZmFsc2UgfVxuICBjaGFubmVscy5jb25uZWN0RXJyb3IgPSB7IGhhc1N1YnNjcmliZXJzOiBmYWxzZSB9XG4gIGNoYW5uZWxzLmNvbm5lY3RlZCA9IHsgaGFzU3Vic2NyaWJlcnM6IGZhbHNlIH1cbn1cblxuLyoqXG4gKiBAdHlwZSB7aW1wb3J0KCcuLi90eXBlcy9jbGllbnQnKS5kZWZhdWx0fVxuICovXG5jbGFzcyBDbGllbnQgZXh0ZW5kcyBEaXNwYXRjaGVyQmFzZSB7XG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ3xVUkx9IHVybFxuICAgKiBAcGFyYW0ge2ltcG9ydCgnLi4vdHlwZXMvY2xpZW50JykuQ2xpZW50Lk9wdGlvbnN9IG9wdGlvbnNcbiAgICovXG4gIGNvbnN0cnVjdG9yICh1cmwsIHtcbiAgICBpbnRlcmNlcHRvcnMsXG4gICAgbWF4SGVhZGVyU2l6ZSxcbiAgICBoZWFkZXJzVGltZW91dCxcbiAgICBzb2NrZXRUaW1lb3V0LFxuICAgIHJlcXVlc3RUaW1lb3V0LFxuICAgIGNvbm5lY3RUaW1lb3V0LFxuICAgIGJvZHlUaW1lb3V0LFxuICAgIGlkbGVUaW1lb3V0LFxuICAgIGtlZXBBbGl2ZSxcbiAgICBrZWVwQWxpdmVUaW1lb3V0LFxuICAgIG1heEtlZXBBbGl2ZVRpbWVvdXQsXG4gICAga2VlcEFsaXZlTWF4VGltZW91dCxcbiAgICBrZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkLFxuICAgIHNvY2tldFBhdGgsXG4gICAgcGlwZWxpbmluZyxcbiAgICB0bHMsXG4gICAgc3RyaWN0Q29udGVudExlbmd0aCxcbiAgICBtYXhDYWNoZWRTZXNzaW9ucyxcbiAgICBtYXhSZWRpcmVjdGlvbnMsXG4gICAgY29ubmVjdCxcbiAgICBtYXhSZXF1ZXN0c1BlckNsaWVudCxcbiAgICBsb2NhbEFkZHJlc3MsXG4gICAgbWF4UmVzcG9uc2VTaXplLFxuICAgIGF1dG9TZWxlY3RGYW1pbHksXG4gICAgYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0LFxuICAgIC8vIGgyXG4gICAgYWxsb3dIMixcbiAgICBtYXhDb25jdXJyZW50U3RyZWFtc1xuICB9ID0ge30pIHtcbiAgICBzdXBlcigpXG5cbiAgICBpZiAoa2VlcEFsaXZlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndW5zdXBwb3J0ZWQga2VlcEFsaXZlLCB1c2UgcGlwZWxpbmluZz0wIGluc3RlYWQnKVxuICAgIH1cblxuICAgIGlmIChzb2NrZXRUaW1lb3V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndW5zdXBwb3J0ZWQgc29ja2V0VGltZW91dCwgdXNlIGhlYWRlcnNUaW1lb3V0ICYgYm9keVRpbWVvdXQgaW5zdGVhZCcpXG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3RUaW1lb3V0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndW5zdXBwb3J0ZWQgcmVxdWVzdFRpbWVvdXQsIHVzZSBoZWFkZXJzVGltZW91dCAmIGJvZHlUaW1lb3V0IGluc3RlYWQnKVxuICAgIH1cblxuICAgIGlmIChpZGxlVGltZW91dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3Vuc3VwcG9ydGVkIGlkbGVUaW1lb3V0LCB1c2Uga2VlcEFsaXZlVGltZW91dCBpbnN0ZWFkJylcbiAgICB9XG5cbiAgICBpZiAobWF4S2VlcEFsaXZlVGltZW91dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3Vuc3VwcG9ydGVkIG1heEtlZXBBbGl2ZVRpbWVvdXQsIHVzZSBrZWVwQWxpdmVNYXhUaW1lb3V0IGluc3RlYWQnKVxuICAgIH1cblxuICAgIGlmIChtYXhIZWFkZXJTaXplICE9IG51bGwgJiYgIU51bWJlci5pc0Zpbml0ZShtYXhIZWFkZXJTaXplKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG1heEhlYWRlclNpemUnKVxuICAgIH1cblxuICAgIGlmIChzb2NrZXRQYXRoICE9IG51bGwgJiYgdHlwZW9mIHNvY2tldFBhdGggIT09ICdzdHJpbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgc29ja2V0UGF0aCcpXG4gICAgfVxuXG4gICAgaWYgKGNvbm5lY3RUaW1lb3V0ICE9IG51bGwgJiYgKCFOdW1iZXIuaXNGaW5pdGUoY29ubmVjdFRpbWVvdXQpIHx8IGNvbm5lY3RUaW1lb3V0IDwgMCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjb25uZWN0VGltZW91dCcpXG4gICAgfVxuXG4gICAgaWYgKGtlZXBBbGl2ZVRpbWVvdXQgIT0gbnVsbCAmJiAoIU51bWJlci5pc0Zpbml0ZShrZWVwQWxpdmVUaW1lb3V0KSB8fCBrZWVwQWxpdmVUaW1lb3V0IDw9IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQga2VlcEFsaXZlVGltZW91dCcpXG4gICAgfVxuXG4gICAgaWYgKGtlZXBBbGl2ZU1heFRpbWVvdXQgIT0gbnVsbCAmJiAoIU51bWJlci5pc0Zpbml0ZShrZWVwQWxpdmVNYXhUaW1lb3V0KSB8fCBrZWVwQWxpdmVNYXhUaW1lb3V0IDw9IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQga2VlcEFsaXZlTWF4VGltZW91dCcpXG4gICAgfVxuXG4gICAgaWYgKGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGQgIT0gbnVsbCAmJiAhTnVtYmVyLmlzRmluaXRlKGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGQpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQga2VlcEFsaXZlVGltZW91dFRocmVzaG9sZCcpXG4gICAgfVxuXG4gICAgaWYgKGhlYWRlcnNUaW1lb3V0ICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKGhlYWRlcnNUaW1lb3V0KSB8fCBoZWFkZXJzVGltZW91dCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2hlYWRlcnNUaW1lb3V0IG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyIG9yIHplcm8nKVxuICAgIH1cblxuICAgIGlmIChib2R5VGltZW91dCAhPSBudWxsICYmICghTnVtYmVyLmlzSW50ZWdlcihib2R5VGltZW91dCkgfHwgYm9keVRpbWVvdXQgPCAwKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdib2R5VGltZW91dCBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciBvciB6ZXJvJylcbiAgICB9XG5cbiAgICBpZiAoY29ubmVjdCAhPSBudWxsICYmIHR5cGVvZiBjb25uZWN0ICE9PSAnZnVuY3Rpb24nICYmIHR5cGVvZiBjb25uZWN0ICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdjb25uZWN0IG11c3QgYmUgYSBmdW5jdGlvbiBvciBhbiBvYmplY3QnKVxuICAgIH1cblxuICAgIGlmIChtYXhSZWRpcmVjdGlvbnMgIT0gbnVsbCAmJiAoIU51bWJlci5pc0ludGVnZXIobWF4UmVkaXJlY3Rpb25zKSB8fCBtYXhSZWRpcmVjdGlvbnMgPCAwKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdtYXhSZWRpcmVjdGlvbnMgbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlcicpXG4gICAgfVxuXG4gICAgaWYgKG1heFJlcXVlc3RzUGVyQ2xpZW50ICE9IG51bGwgJiYgKCFOdW1iZXIuaXNJbnRlZ2VyKG1heFJlcXVlc3RzUGVyQ2xpZW50KSB8fCBtYXhSZXF1ZXN0c1BlckNsaWVudCA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ21heFJlcXVlc3RzUGVyQ2xpZW50IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIGlmIChsb2NhbEFkZHJlc3MgIT0gbnVsbCAmJiAodHlwZW9mIGxvY2FsQWRkcmVzcyAhPT0gJ3N0cmluZycgfHwgbmV0LmlzSVAobG9jYWxBZGRyZXNzKSA9PT0gMCkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbG9jYWxBZGRyZXNzIG11c3QgYmUgdmFsaWQgc3RyaW5nIElQIGFkZHJlc3MnKVxuICAgIH1cblxuICAgIGlmIChtYXhSZXNwb25zZVNpemUgIT0gbnVsbCAmJiAoIU51bWJlci5pc0ludGVnZXIobWF4UmVzcG9uc2VTaXplKSB8fCBtYXhSZXNwb25zZVNpemUgPCAtMSkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWF4UmVzcG9uc2VTaXplIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGF1dG9TZWxlY3RGYW1pbHlBdHRlbXB0VGltZW91dCAhPSBudWxsICYmXG4gICAgICAoIU51bWJlci5pc0ludGVnZXIoYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0KSB8fCBhdXRvU2VsZWN0RmFtaWx5QXR0ZW1wdFRpbWVvdXQgPCAtMSlcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKVxuICAgIH1cblxuICAgIC8vIGgyXG4gICAgaWYgKGFsbG93SDIgIT0gbnVsbCAmJiB0eXBlb2YgYWxsb3dIMiAhPT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2FsbG93SDIgbXVzdCBiZSBhIHZhbGlkIGJvb2xlYW4gdmFsdWUnKVxuICAgIH1cblxuICAgIGlmIChtYXhDb25jdXJyZW50U3RyZWFtcyAhPSBudWxsICYmICh0eXBlb2YgbWF4Q29uY3VycmVudFN0cmVhbXMgIT09ICdudW1iZXInIHx8IG1heENvbmN1cnJlbnRTdHJlYW1zIDwgMSkpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWF4Q29uY3VycmVudFN0cmVhbXMgbXVzdCBiZSBhIHBvc3NpdGl2ZSBpbnRlZ2VyLCBncmVhdGVyIHRoYW4gMCcpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25uZWN0ICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25uZWN0ID0gYnVpbGRDb25uZWN0b3Ioe1xuICAgICAgICAuLi50bHMsXG4gICAgICAgIG1heENhY2hlZFNlc3Npb25zLFxuICAgICAgICBhbGxvd0gyLFxuICAgICAgICBzb2NrZXRQYXRoLFxuICAgICAgICB0aW1lb3V0OiBjb25uZWN0VGltZW91dCxcbiAgICAgICAgLi4uKHV0aWwubm9kZUhhc0F1dG9TZWxlY3RGYW1pbHkgJiYgYXV0b1NlbGVjdEZhbWlseSA/IHsgYXV0b1NlbGVjdEZhbWlseSwgYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IH0gOiB1bmRlZmluZWQpLFxuICAgICAgICAuLi5jb25uZWN0XG4gICAgICB9KVxuICAgIH1cblxuICAgIHRoaXNba0ludGVyY2VwdG9yc10gPSBpbnRlcmNlcHRvcnMgJiYgaW50ZXJjZXB0b3JzLkNsaWVudCAmJiBBcnJheS5pc0FycmF5KGludGVyY2VwdG9ycy5DbGllbnQpXG4gICAgICA/IGludGVyY2VwdG9ycy5DbGllbnRcbiAgICAgIDogW2NyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IoeyBtYXhSZWRpcmVjdGlvbnMgfSldXG4gICAgdGhpc1trVXJsXSA9IHV0aWwucGFyc2VPcmlnaW4odXJsKVxuICAgIHRoaXNba0Nvbm5lY3Rvcl0gPSBjb25uZWN0XG4gICAgdGhpc1trU29ja2V0XSA9IG51bGxcbiAgICB0aGlzW2tQaXBlbGluaW5nXSA9IHBpcGVsaW5pbmcgIT0gbnVsbCA/IHBpcGVsaW5pbmcgOiAxXG4gICAgdGhpc1trTWF4SGVhZGVyc1NpemVdID0gbWF4SGVhZGVyU2l6ZSB8fCBodHRwLm1heEhlYWRlclNpemVcbiAgICB0aGlzW2tLZWVwQWxpdmVEZWZhdWx0VGltZW91dF0gPSBrZWVwQWxpdmVUaW1lb3V0ID09IG51bGwgPyA0ZTMgOiBrZWVwQWxpdmVUaW1lb3V0XG4gICAgdGhpc1trS2VlcEFsaXZlTWF4VGltZW91dF0gPSBrZWVwQWxpdmVNYXhUaW1lb3V0ID09IG51bGwgPyA2MDBlMyA6IGtlZXBBbGl2ZU1heFRpbWVvdXRcbiAgICB0aGlzW2tLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkXSA9IGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGQgPT0gbnVsbCA/IDFlMyA6IGtlZXBBbGl2ZVRpbWVvdXRUaHJlc2hvbGRcbiAgICB0aGlzW2tLZWVwQWxpdmVUaW1lb3V0VmFsdWVdID0gdGhpc1trS2VlcEFsaXZlRGVmYXVsdFRpbWVvdXRdXG4gICAgdGhpc1trU2VydmVyTmFtZV0gPSBudWxsXG4gICAgdGhpc1trTG9jYWxBZGRyZXNzXSA9IGxvY2FsQWRkcmVzcyAhPSBudWxsID8gbG9jYWxBZGRyZXNzIDogbnVsbFxuICAgIHRoaXNba1Jlc3VtaW5nXSA9IDAgLy8gMCwgaWRsZSwgMSwgc2NoZWR1bGVkLCAyIHJlc3VtaW5nXG4gICAgdGhpc1trTmVlZERyYWluXSA9IDAgLy8gMCwgaWRsZSwgMSwgc2NoZWR1bGVkLCAyIHJlc3VtaW5nXG4gICAgdGhpc1trSG9zdEhlYWRlcl0gPSBgaG9zdDogJHt0aGlzW2tVcmxdLmhvc3RuYW1lfSR7dGhpc1trVXJsXS5wb3J0ID8gYDoke3RoaXNba1VybF0ucG9ydH1gIDogJyd9XFxyXFxuYFxuICAgIHRoaXNba0JvZHlUaW1lb3V0XSA9IGJvZHlUaW1lb3V0ICE9IG51bGwgPyBib2R5VGltZW91dCA6IDMwMGUzXG4gICAgdGhpc1trSGVhZGVyc1RpbWVvdXRdID0gaGVhZGVyc1RpbWVvdXQgIT0gbnVsbCA/IGhlYWRlcnNUaW1lb3V0IDogMzAwZTNcbiAgICB0aGlzW2tTdHJpY3RDb250ZW50TGVuZ3RoXSA9IHN0cmljdENvbnRlbnRMZW5ndGggPT0gbnVsbCA/IHRydWUgOiBzdHJpY3RDb250ZW50TGVuZ3RoXG4gICAgdGhpc1trTWF4UmVkaXJlY3Rpb25zXSA9IG1heFJlZGlyZWN0aW9uc1xuICAgIHRoaXNba01heFJlcXVlc3RzXSA9IG1heFJlcXVlc3RzUGVyQ2xpZW50XG4gICAgdGhpc1trQ2xvc2VkUmVzb2x2ZV0gPSBudWxsXG4gICAgdGhpc1trTWF4UmVzcG9uc2VTaXplXSA9IG1heFJlc3BvbnNlU2l6ZSA+IC0xID8gbWF4UmVzcG9uc2VTaXplIDogLTFcbiAgICB0aGlzW2tIVFRQQ29ublZlcnNpb25dID0gJ2gxJ1xuXG4gICAgLy8gSFRUUC8yXG4gICAgdGhpc1trSFRUUDJTZXNzaW9uXSA9IG51bGxcbiAgICB0aGlzW2tIVFRQMlNlc3Npb25TdGF0ZV0gPSAhYWxsb3dIMlxuICAgICAgPyBudWxsXG4gICAgICA6IHtcbiAgICAgICAgLy8gc3RyZWFtczogbnVsbCwgLy8gRml4ZWQgcXVldWUgb2Ygc3RyZWFtcyAtIEZvciBmdXR1cmUgc3VwcG9ydCBvZiBgcHVzaGBcbiAgICAgICAgICBvcGVuU3RyZWFtczogMCwgLy8gS2VlcCB0cmFjayBvZiB0aGVtIHRvIGRlY2lkZSB3ZXRoZXIgb3Igbm90IHVucmVmIHRoZSBzZXNzaW9uXG4gICAgICAgICAgbWF4Q29uY3VycmVudFN0cmVhbXM6IG1heENvbmN1cnJlbnRTdHJlYW1zICE9IG51bGwgPyBtYXhDb25jdXJyZW50U3RyZWFtcyA6IDEwMCAvLyBNYXggcGVlckNvbmN1cnJlbnRTdHJlYW1zIGZvciBhIE5vZGUgaDIgc2VydmVyXG4gICAgICAgIH1cbiAgICB0aGlzW2tIb3N0XSA9IGAke3RoaXNba1VybF0uaG9zdG5hbWV9JHt0aGlzW2tVcmxdLnBvcnQgPyBgOiR7dGhpc1trVXJsXS5wb3J0fWAgOiAnJ31gXG5cbiAgICAvLyBrUXVldWUgaXMgYnVpbHQgdXAgb2YgMyBzZWN0aW9ucyBzZXBhcmF0ZWQgYnlcbiAgICAvLyB0aGUga1J1bm5pbmdJZHggYW5kIGtQZW5kaW5nSWR4IGluZGljZXMuXG4gICAgLy8gfCAgIGNvbXBsZXRlICAgfCAgIHJ1bm5pbmcgICB8ICAgcGVuZGluZyAgIHxcbiAgICAvLyAgICAgICAgICAgICAgICBeIGtSdW5uaW5nSWR4IF4ga1BlbmRpbmdJZHggXiBrUXVldWUubGVuZ3RoXG4gICAgLy8ga1J1bm5pbmdJZHggcG9pbnRzIHRvIHRoZSBmaXJzdCBydW5uaW5nIGVsZW1lbnQuXG4gICAgLy8ga1BlbmRpbmdJZHggcG9pbnRzIHRvIHRoZSBmaXJzdCBwZW5kaW5nIGVsZW1lbnQuXG4gICAgLy8gVGhpcyBpbXBsZW1lbnRzIGEgZmFzdCBxdWV1ZSB3aXRoIGFuIGFtb3J0aXplZFxuICAgIC8vIHRpbWUgb2YgTygxKS5cblxuICAgIHRoaXNba1F1ZXVlXSA9IFtdXG4gICAgdGhpc1trUnVubmluZ0lkeF0gPSAwXG4gICAgdGhpc1trUGVuZGluZ0lkeF0gPSAwXG4gIH1cblxuICBnZXQgcGlwZWxpbmluZyAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1BpcGVsaW5pbmddXG4gIH1cblxuICBzZXQgcGlwZWxpbmluZyAodmFsdWUpIHtcbiAgICB0aGlzW2tQaXBlbGluaW5nXSA9IHZhbHVlXG4gICAgcmVzdW1lKHRoaXMsIHRydWUpXG4gIH1cblxuICBnZXQgW2tQZW5kaW5nXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1F1ZXVlXS5sZW5ndGggLSB0aGlzW2tQZW5kaW5nSWR4XVxuICB9XG5cbiAgZ2V0IFtrUnVubmluZ10gKCkge1xuICAgIHJldHVybiB0aGlzW2tQZW5kaW5nSWR4XSAtIHRoaXNba1J1bm5pbmdJZHhdXG4gIH1cblxuICBnZXQgW2tTaXplXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1F1ZXVlXS5sZW5ndGggLSB0aGlzW2tSdW5uaW5nSWR4XVxuICB9XG5cbiAgZ2V0IFtrQ29ubmVjdGVkXSAoKSB7XG4gICAgcmV0dXJuICEhdGhpc1trU29ja2V0XSAmJiAhdGhpc1trQ29ubmVjdGluZ10gJiYgIXRoaXNba1NvY2tldF0uZGVzdHJveWVkXG4gIH1cblxuICBnZXQgW2tCdXN5XSAoKSB7XG4gICAgY29uc3Qgc29ja2V0ID0gdGhpc1trU29ja2V0XVxuICAgIHJldHVybiAoXG4gICAgICAoc29ja2V0ICYmIChzb2NrZXRba1Jlc2V0XSB8fCBzb2NrZXRba1dyaXRpbmddIHx8IHNvY2tldFtrQmxvY2tpbmddKSkgfHxcbiAgICAgICh0aGlzW2tTaXplXSA+PSAodGhpc1trUGlwZWxpbmluZ10gfHwgMSkpIHx8XG4gICAgICB0aGlzW2tQZW5kaW5nXSA+IDBcbiAgICApXG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmU6IG9ubHkgdXNlZCBmb3IgdGVzdCAqL1xuICBba0Nvbm5lY3RdIChjYikge1xuICAgIGNvbm5lY3QodGhpcylcbiAgICB0aGlzLm9uY2UoJ2Nvbm5lY3QnLCBjYilcbiAgfVxuXG4gIFtrRGlzcGF0Y2hdIChvcHRzLCBoYW5kbGVyKSB7XG4gICAgY29uc3Qgb3JpZ2luID0gb3B0cy5vcmlnaW4gfHwgdGhpc1trVXJsXS5vcmlnaW5cblxuICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzW2tIVFRQQ29ublZlcnNpb25dID09PSAnaDInXG4gICAgICA/IFJlcXVlc3Rba0hUVFAyQnVpbGRSZXF1ZXN0XShvcmlnaW4sIG9wdHMsIGhhbmRsZXIpXG4gICAgICA6IFJlcXVlc3Rba0hUVFAxQnVpbGRSZXF1ZXN0XShvcmlnaW4sIG9wdHMsIGhhbmRsZXIpXG5cbiAgICB0aGlzW2tRdWV1ZV0ucHVzaChyZXF1ZXN0KVxuICAgIGlmICh0aGlzW2tSZXN1bWluZ10pIHtcbiAgICAgIC8vIERvIG5vdGhpbmcuXG4gICAgfSBlbHNlIGlmICh1dGlsLmJvZHlMZW5ndGgocmVxdWVzdC5ib2R5KSA9PSBudWxsICYmIHV0aWwuaXNJdGVyYWJsZShyZXF1ZXN0LmJvZHkpKSB7XG4gICAgICAvLyBXYWl0IGEgdGljayBpbiBjYXNlIHN0cmVhbS9pdGVyYXRvciBpcyBlbmRlZCBpbiB0aGUgc2FtZSB0aWNrLlxuICAgICAgdGhpc1trUmVzdW1pbmddID0gMVxuICAgICAgcHJvY2Vzcy5uZXh0VGljayhyZXN1bWUsIHRoaXMpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VtZSh0aGlzLCB0cnVlKVxuICAgIH1cblxuICAgIGlmICh0aGlzW2tSZXN1bWluZ10gJiYgdGhpc1trTmVlZERyYWluXSAhPT0gMiAmJiB0aGlzW2tCdXN5XSkge1xuICAgICAgdGhpc1trTmVlZERyYWluXSA9IDJcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1trTmVlZERyYWluXSA8IDJcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICAvLyBUT0RPOiBmb3IgSDIgd2UgbmVlZCB0byBncmFjZWZ1bGx5IGZsdXNoIHRoZSByZW1haW5pbmcgZW5xdWV1ZWRcbiAgICAvLyByZXF1ZXN0IGFuZCBjbG9zZSBlYWNoIHN0cmVhbS5cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGlmICghdGhpc1trU2l6ZV0pIHtcbiAgICAgICAgcmVzb2x2ZShudWxsKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpc1trQ2xvc2VkUmVzb2x2ZV0gPSByZXNvbHZlXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIFtrRGVzdHJveV0gKGVycikge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgY29uc3QgcmVxdWVzdHMgPSB0aGlzW2tRdWV1ZV0uc3BsaWNlKHRoaXNba1BlbmRpbmdJZHhdKVxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXF1ZXN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gcmVxdWVzdHNbaV1cbiAgICAgICAgZXJyb3JSZXF1ZXN0KHRoaXMsIHJlcXVlc3QsIGVycilcbiAgICAgIH1cblxuICAgICAgY29uc3QgY2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzW2tDbG9zZWRSZXNvbHZlXSkge1xuICAgICAgICAgIC8vIFRPRE8gKGZpeCk6IFNob3VsZCB3ZSBlcnJvciBoZXJlIHdpdGggQ2xpZW50RGVzdHJveWVkRXJyb3I/XG4gICAgICAgICAgdGhpc1trQ2xvc2VkUmVzb2x2ZV0oKVxuICAgICAgICAgIHRoaXNba0Nsb3NlZFJlc29sdmVdID0gbnVsbFxuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoKVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpc1trSFRUUDJTZXNzaW9uXSAhPSBudWxsKSB7XG4gICAgICAgIHV0aWwuZGVzdHJveSh0aGlzW2tIVFRQMlNlc3Npb25dLCBlcnIpXG4gICAgICAgIHRoaXNba0hUVFAyU2Vzc2lvbl0gPSBudWxsXG4gICAgICAgIHRoaXNba0hUVFAyU2Vzc2lvblN0YXRlXSA9IG51bGxcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzW2tTb2NrZXRdKSB7XG4gICAgICAgIHF1ZXVlTWljcm90YXNrKGNhbGxiYWNrKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdXRpbC5kZXN0cm95KHRoaXNba1NvY2tldF0ub24oJ2Nsb3NlJywgY2FsbGJhY2spLCBlcnIpXG4gICAgICB9XG5cbiAgICAgIHJlc3VtZSh0aGlzKVxuICAgIH0pXG4gIH1cbn1cblxuZnVuY3Rpb24gb25IdHRwMlNlc3Npb25FcnJvciAoZXJyKSB7XG4gIGFzc2VydChlcnIuY29kZSAhPT0gJ0VSUl9UTFNfQ0VSVF9BTFROQU1FX0lOVkFMSUQnKVxuXG4gIHRoaXNba1NvY2tldF1ba0Vycm9yXSA9IGVyclxuXG4gIG9uRXJyb3IodGhpc1trQ2xpZW50XSwgZXJyKVxufVxuXG5mdW5jdGlvbiBvbkh0dHAyRnJhbWVFcnJvciAodHlwZSwgY29kZSwgaWQpIHtcbiAgY29uc3QgZXJyID0gbmV3IEluZm9ybWF0aW9uYWxFcnJvcihgSFRUUC8yOiBcImZyYW1lRXJyb3JcIiByZWNlaXZlZCAtIHR5cGUgJHt0eXBlfSwgY29kZSAke2NvZGV9YClcblxuICBpZiAoaWQgPT09IDApIHtcbiAgICB0aGlzW2tTb2NrZXRdW2tFcnJvcl0gPSBlcnJcbiAgICBvbkVycm9yKHRoaXNba0NsaWVudF0sIGVycilcbiAgfVxufVxuXG5mdW5jdGlvbiBvbkh0dHAyU2Vzc2lvbkVuZCAoKSB7XG4gIHV0aWwuZGVzdHJveSh0aGlzLCBuZXcgU29ja2V0RXJyb3IoJ290aGVyIHNpZGUgY2xvc2VkJykpXG4gIHV0aWwuZGVzdHJveSh0aGlzW2tTb2NrZXRdLCBuZXcgU29ja2V0RXJyb3IoJ290aGVyIHNpZGUgY2xvc2VkJykpXG59XG5cbmZ1bmN0aW9uIG9uSFRUUDJHb0F3YXkgKGNvZGUpIHtcbiAgY29uc3QgY2xpZW50ID0gdGhpc1trQ2xpZW50XVxuICBjb25zdCBlcnIgPSBuZXcgSW5mb3JtYXRpb25hbEVycm9yKGBIVFRQLzI6IFwiR09BV0FZXCIgZnJhbWUgcmVjZWl2ZWQgd2l0aCBjb2RlICR7Y29kZX1gKVxuICBjbGllbnRba1NvY2tldF0gPSBudWxsXG4gIGNsaWVudFtrSFRUUDJTZXNzaW9uXSA9IG51bGxcblxuICBpZiAoY2xpZW50LmRlc3Ryb3llZCkge1xuICAgIGFzc2VydCh0aGlzW2tQZW5kaW5nXSA9PT0gMClcblxuICAgIC8vIEZhaWwgZW50aXJlIHF1ZXVlLlxuICAgIGNvbnN0IHJlcXVlc3RzID0gY2xpZW50W2tRdWV1ZV0uc3BsaWNlKGNsaWVudFtrUnVubmluZ0lkeF0pXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXF1ZXN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IHJlcXVlc3RzW2ldXG4gICAgICBlcnJvclJlcXVlc3QodGhpcywgcmVxdWVzdCwgZXJyKVxuICAgIH1cbiAgfSBlbHNlIGlmIChjbGllbnRba1J1bm5pbmddID4gMCkge1xuICAgIC8vIEZhaWwgaGVhZCBvZiBwaXBlbGluZS5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cbiAgICBjbGllbnRba1F1ZXVlXVtjbGllbnRba1J1bm5pbmdJZHhdKytdID0gbnVsbFxuXG4gICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuICB9XG5cbiAgY2xpZW50W2tQZW5kaW5nSWR4XSA9IGNsaWVudFtrUnVubmluZ0lkeF1cblxuICBhc3NlcnQoY2xpZW50W2tSdW5uaW5nXSA9PT0gMClcblxuICBjbGllbnQuZW1pdCgnZGlzY29ubmVjdCcsXG4gICAgY2xpZW50W2tVcmxdLFxuICAgIFtjbGllbnRdLFxuICAgIGVyclxuICApXG5cbiAgcmVzdW1lKGNsaWVudClcbn1cblxuY29uc3QgY29uc3RhbnRzID0gcmVxdWlyZSgnLi9sbGh0dHAvY29uc3RhbnRzJylcbmNvbnN0IGNyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IgPSByZXF1aXJlKCcuL2ludGVyY2VwdG9yL3JlZGlyZWN0SW50ZXJjZXB0b3InKVxuY29uc3QgRU1QVFlfQlVGID0gQnVmZmVyLmFsbG9jKDApXG5cbmFzeW5jIGZ1bmN0aW9uIGxhenlsbGh0dHAgKCkge1xuICBjb25zdCBsbGh0dHBXYXNtRGF0YSA9IHByb2Nlc3MuZW52LkpFU1RfV09SS0VSX0lEID8gcmVxdWlyZSgnLi9sbGh0dHAvbGxodHRwLXdhc20uanMnKSA6IHVuZGVmaW5lZFxuXG4gIGxldCBtb2RcbiAgdHJ5IHtcbiAgICBtb2QgPSBhd2FpdCBXZWJBc3NlbWJseS5jb21waWxlKEJ1ZmZlci5mcm9tKHJlcXVpcmUoJy4vbGxodHRwL2xsaHR0cF9zaW1kLXdhc20uanMnKSwgJ2Jhc2U2NCcpKVxuICB9IGNhdGNoIChlKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cblxuICAgIC8vIFdlIGNvdWxkIGNoZWNrIGlmIHRoZSBlcnJvciB3YXMgY2F1c2VkIGJ5IHRoZSBzaW1kIG9wdGlvbiBub3RcbiAgICAvLyBiZWluZyBlbmFibGVkLCBidXQgdGhlIG9jY3VycmluZyBvZiB0aGlzIG90aGVyIGVycm9yXG4gICAgLy8gKiBodHRwczovL2dpdGh1Yi5jb20vZW1zY3JpcHRlbi1jb3JlL2Vtc2NyaXB0ZW4vaXNzdWVzLzExNDk1XG4gICAgLy8gZ290IG1lIHRvIHJlbW92ZSB0aGF0IGNoZWNrIHRvIGF2b2lkIGJyZWFraW5nIE5vZGUgMTIuXG4gICAgbW9kID0gYXdhaXQgV2ViQXNzZW1ibHkuY29tcGlsZShCdWZmZXIuZnJvbShsbGh0dHBXYXNtRGF0YSB8fCByZXF1aXJlKCcuL2xsaHR0cC9sbGh0dHAtd2FzbS5qcycpLCAnYmFzZTY0JykpXG4gIH1cblxuICByZXR1cm4gYXdhaXQgV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUobW9kLCB7XG4gICAgZW52OiB7XG4gICAgICAvKiBlc2xpbnQtZGlzYWJsZSBjYW1lbGNhc2UgKi9cblxuICAgICAgd2FzbV9vbl91cmw6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIHJldHVybiAwXG4gICAgICB9LFxuICAgICAgd2FzbV9vbl9zdGF0dXM6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChjdXJyZW50UGFyc2VyLnB0ciwgcClcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBhdCAtIGN1cnJlbnRCdWZmZXJQdHIgKyBjdXJyZW50QnVmZmVyUmVmLmJ5dGVPZmZzZXRcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRQYXJzZXIub25TdGF0dXMobmV3IEZhc3RCdWZmZXIoY3VycmVudEJ1ZmZlclJlZi5idWZmZXIsIHN0YXJ0LCBsZW4pKSB8fCAwXG4gICAgICB9LFxuICAgICAgd2FzbV9vbl9tZXNzYWdlX2JlZ2luOiAocCkgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY3VycmVudFBhcnNlci5wdHIsIHApXG4gICAgICAgIHJldHVybiBjdXJyZW50UGFyc2VyLm9uTWVzc2FnZUJlZ2luKCkgfHwgMFxuICAgICAgfSxcbiAgICAgIHdhc21fb25faGVhZGVyX2ZpZWxkOiAocCwgYXQsIGxlbikgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY3VycmVudFBhcnNlci5wdHIsIHApXG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gYXQgLSBjdXJyZW50QnVmZmVyUHRyICsgY3VycmVudEJ1ZmZlclJlZi5ieXRlT2Zmc2V0XG4gICAgICAgIHJldHVybiBjdXJyZW50UGFyc2VyLm9uSGVhZGVyRmllbGQobmV3IEZhc3RCdWZmZXIoY3VycmVudEJ1ZmZlclJlZi5idWZmZXIsIHN0YXJ0LCBsZW4pKSB8fCAwXG4gICAgICB9LFxuICAgICAgd2FzbV9vbl9oZWFkZXJfdmFsdWU6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChjdXJyZW50UGFyc2VyLnB0ciwgcClcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBhdCAtIGN1cnJlbnRCdWZmZXJQdHIgKyBjdXJyZW50QnVmZmVyUmVmLmJ5dGVPZmZzZXRcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRQYXJzZXIub25IZWFkZXJWYWx1ZShuZXcgRmFzdEJ1ZmZlcihjdXJyZW50QnVmZmVyUmVmLmJ1ZmZlciwgc3RhcnQsIGxlbikpIHx8IDBcbiAgICAgIH0sXG4gICAgICB3YXNtX29uX2hlYWRlcnNfY29tcGxldGU6IChwLCBzdGF0dXNDb2RlLCB1cGdyYWRlLCBzaG91bGRLZWVwQWxpdmUpID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGN1cnJlbnRQYXJzZXIucHRyLCBwKVxuICAgICAgICByZXR1cm4gY3VycmVudFBhcnNlci5vbkhlYWRlcnNDb21wbGV0ZShzdGF0dXNDb2RlLCBCb29sZWFuKHVwZ3JhZGUpLCBCb29sZWFuKHNob3VsZEtlZXBBbGl2ZSkpIHx8IDBcbiAgICAgIH0sXG4gICAgICB3YXNtX29uX2JvZHk6IChwLCBhdCwgbGVuKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChjdXJyZW50UGFyc2VyLnB0ciwgcClcbiAgICAgICAgY29uc3Qgc3RhcnQgPSBhdCAtIGN1cnJlbnRCdWZmZXJQdHIgKyBjdXJyZW50QnVmZmVyUmVmLmJ5dGVPZmZzZXRcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRQYXJzZXIub25Cb2R5KG5ldyBGYXN0QnVmZmVyKGN1cnJlbnRCdWZmZXJSZWYuYnVmZmVyLCBzdGFydCwgbGVuKSkgfHwgMFxuICAgICAgfSxcbiAgICAgIHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZTogKHApID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGN1cnJlbnRQYXJzZXIucHRyLCBwKVxuICAgICAgICByZXR1cm4gY3VycmVudFBhcnNlci5vbk1lc3NhZ2VDb21wbGV0ZSgpIHx8IDBcbiAgICAgIH1cblxuICAgICAgLyogZXNsaW50LWVuYWJsZSBjYW1lbGNhc2UgKi9cbiAgICB9XG4gIH0pXG59XG5cbmxldCBsbGh0dHBJbnN0YW5jZSA9IG51bGxcbmxldCBsbGh0dHBQcm9taXNlID0gbGF6eWxsaHR0cCgpXG5sbGh0dHBQcm9taXNlLmNhdGNoKClcblxubGV0IGN1cnJlbnRQYXJzZXIgPSBudWxsXG5sZXQgY3VycmVudEJ1ZmZlclJlZiA9IG51bGxcbmxldCBjdXJyZW50QnVmZmVyU2l6ZSA9IDBcbmxldCBjdXJyZW50QnVmZmVyUHRyID0gbnVsbFxuXG5jb25zdCBUSU1FT1VUX0hFQURFUlMgPSAxXG5jb25zdCBUSU1FT1VUX0JPRFkgPSAyXG5jb25zdCBUSU1FT1VUX0lETEUgPSAzXG5cbmNsYXNzIFBhcnNlciB7XG4gIGNvbnN0cnVjdG9yIChjbGllbnQsIHNvY2tldCwgeyBleHBvcnRzIH0pIHtcbiAgICBhc3NlcnQoTnVtYmVyLmlzRmluaXRlKGNsaWVudFtrTWF4SGVhZGVyc1NpemVdKSAmJiBjbGllbnRba01heEhlYWRlcnNTaXplXSA+IDApXG5cbiAgICB0aGlzLmxsaHR0cCA9IGV4cG9ydHNcbiAgICB0aGlzLnB0ciA9IHRoaXMubGxodHRwLmxsaHR0cF9hbGxvYyhjb25zdGFudHMuVFlQRS5SRVNQT05TRSlcbiAgICB0aGlzLmNsaWVudCA9IGNsaWVudFxuICAgIHRoaXMuc29ja2V0ID0gc29ja2V0XG4gICAgdGhpcy50aW1lb3V0ID0gbnVsbFxuICAgIHRoaXMudGltZW91dFZhbHVlID0gbnVsbFxuICAgIHRoaXMudGltZW91dFR5cGUgPSBudWxsXG4gICAgdGhpcy5zdGF0dXNDb2RlID0gbnVsbFxuICAgIHRoaXMuc3RhdHVzVGV4dCA9ICcnXG4gICAgdGhpcy51cGdyYWRlID0gZmFsc2VcbiAgICB0aGlzLmhlYWRlcnMgPSBbXVxuICAgIHRoaXMuaGVhZGVyc1NpemUgPSAwXG4gICAgdGhpcy5oZWFkZXJzTWF4U2l6ZSA9IGNsaWVudFtrTWF4SGVhZGVyc1NpemVdXG4gICAgdGhpcy5zaG91bGRLZWVwQWxpdmUgPSBmYWxzZVxuICAgIHRoaXMucGF1c2VkID0gZmFsc2VcbiAgICB0aGlzLnJlc3VtZSA9IHRoaXMucmVzdW1lLmJpbmQodGhpcylcblxuICAgIHRoaXMuYnl0ZXNSZWFkID0gMFxuXG4gICAgdGhpcy5rZWVwQWxpdmUgPSAnJ1xuICAgIHRoaXMuY29udGVudExlbmd0aCA9ICcnXG4gICAgdGhpcy5jb25uZWN0aW9uID0gJydcbiAgICB0aGlzLm1heFJlc3BvbnNlU2l6ZSA9IGNsaWVudFtrTWF4UmVzcG9uc2VTaXplXVxuICB9XG5cbiAgc2V0VGltZW91dCAodmFsdWUsIHR5cGUpIHtcbiAgICB0aGlzLnRpbWVvdXRUeXBlID0gdHlwZVxuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy50aW1lb3V0VmFsdWUpIHtcbiAgICAgIHRpbWVycy5jbGVhclRpbWVvdXQodGhpcy50aW1lb3V0KVxuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHRoaXMudGltZW91dCA9IHRpbWVycy5zZXRUaW1lb3V0KG9uUGFyc2VyVGltZW91dCwgdmFsdWUsIHRoaXMpXG4gICAgICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBvbmx5IGZvciBqZXN0XG4gICAgICAgIGlmICh0aGlzLnRpbWVvdXQudW5yZWYpIHtcbiAgICAgICAgICB0aGlzLnRpbWVvdXQudW5yZWYoKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnRpbWVvdXQgPSBudWxsXG4gICAgICB9XG4gICAgICB0aGlzLnRpbWVvdXRWYWx1ZSA9IHZhbHVlXG4gICAgfSBlbHNlIGlmICh0aGlzLnRpbWVvdXQpIHtcbiAgICAgIC8vIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBvbmx5IGZvciBqZXN0XG4gICAgICBpZiAodGhpcy50aW1lb3V0LnJlZnJlc2gpIHtcbiAgICAgICAgdGhpcy50aW1lb3V0LnJlZnJlc2goKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJlc3VtZSAoKSB7XG4gICAgaWYgKHRoaXMuc29ja2V0LmRlc3Ryb3llZCB8fCAhdGhpcy5wYXVzZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGFzc2VydCh0aGlzLnB0ciAhPSBudWxsKVxuICAgIGFzc2VydChjdXJyZW50UGFyc2VyID09IG51bGwpXG5cbiAgICB0aGlzLmxsaHR0cC5sbGh0dHBfcmVzdW1lKHRoaXMucHRyKVxuXG4gICAgYXNzZXJ0KHRoaXMudGltZW91dFR5cGUgPT09IFRJTUVPVVRfQk9EWSlcbiAgICBpZiAodGhpcy50aW1lb3V0KSB7XG4gICAgICAvLyBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogb25seSBmb3IgamVzdFxuICAgICAgaWYgKHRoaXMudGltZW91dC5yZWZyZXNoKSB7XG4gICAgICAgIHRoaXMudGltZW91dC5yZWZyZXNoKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnBhdXNlZCA9IGZhbHNlXG4gICAgdGhpcy5leGVjdXRlKHRoaXMuc29ja2V0LnJlYWQoKSB8fCBFTVBUWV9CVUYpIC8vIEZsdXNoIHBhcnNlci5cbiAgICB0aGlzLnJlYWRNb3JlKClcbiAgfVxuXG4gIHJlYWRNb3JlICgpIHtcbiAgICB3aGlsZSAoIXRoaXMucGF1c2VkICYmIHRoaXMucHRyKSB7XG4gICAgICBjb25zdCBjaHVuayA9IHRoaXMuc29ja2V0LnJlYWQoKVxuICAgICAgaWYgKGNodW5rID09PSBudWxsKSB7XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgICB0aGlzLmV4ZWN1dGUoY2h1bmspXG4gICAgfVxuICB9XG5cbiAgZXhlY3V0ZSAoZGF0YSkge1xuICAgIGFzc2VydCh0aGlzLnB0ciAhPSBudWxsKVxuICAgIGFzc2VydChjdXJyZW50UGFyc2VyID09IG51bGwpXG4gICAgYXNzZXJ0KCF0aGlzLnBhdXNlZClcblxuICAgIGNvbnN0IHsgc29ja2V0LCBsbGh0dHAgfSA9IHRoaXNcblxuICAgIGlmIChkYXRhLmxlbmd0aCA+IGN1cnJlbnRCdWZmZXJTaXplKSB7XG4gICAgICBpZiAoY3VycmVudEJ1ZmZlclB0cikge1xuICAgICAgICBsbGh0dHAuZnJlZShjdXJyZW50QnVmZmVyUHRyKVxuICAgICAgfVxuICAgICAgY3VycmVudEJ1ZmZlclNpemUgPSBNYXRoLmNlaWwoZGF0YS5sZW5ndGggLyA0MDk2KSAqIDQwOTZcbiAgICAgIGN1cnJlbnRCdWZmZXJQdHIgPSBsbGh0dHAubWFsbG9jKGN1cnJlbnRCdWZmZXJTaXplKVxuICAgIH1cblxuICAgIG5ldyBVaW50OEFycmF5KGxsaHR0cC5tZW1vcnkuYnVmZmVyLCBjdXJyZW50QnVmZmVyUHRyLCBjdXJyZW50QnVmZmVyU2l6ZSkuc2V0KGRhdGEpXG5cbiAgICAvLyBDYWxsIGBleGVjdXRlYCBvbiB0aGUgd2FzbSBwYXJzZXIuXG4gICAgLy8gV2UgcGFzcyB0aGUgYGxsaHR0cF9wYXJzZXJgIHBvaW50ZXIgYWRkcmVzcywgdGhlIHBvaW50ZXIgYWRkcmVzcyBvZiBidWZmZXIgdmlldyBkYXRhLFxuICAgIC8vIGFuZCBmaW5hbGx5IHRoZSBsZW5ndGggb2YgYnl0ZXMgdG8gcGFyc2UuXG4gICAgLy8gVGhlIHJldHVybiB2YWx1ZSBpcyBhbiBlcnJvciBjb2RlIG9yIGBjb25zdGFudHMuRVJST1IuT0tgLlxuICAgIHRyeSB7XG4gICAgICBsZXQgcmV0XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGN1cnJlbnRCdWZmZXJSZWYgPSBkYXRhXG4gICAgICAgIGN1cnJlbnRQYXJzZXIgPSB0aGlzXG4gICAgICAgIHJldCA9IGxsaHR0cC5sbGh0dHBfZXhlY3V0ZSh0aGlzLnB0ciwgY3VycmVudEJ1ZmZlclB0ciwgZGF0YS5sZW5ndGgpXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2VsZXNzLWNhdGNoICovXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgICAgICB0aHJvdyBlcnJcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIGN1cnJlbnRQYXJzZXIgPSBudWxsXG4gICAgICAgIGN1cnJlbnRCdWZmZXJSZWYgPSBudWxsXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG9mZnNldCA9IGxsaHR0cC5sbGh0dHBfZ2V0X2Vycm9yX3Bvcyh0aGlzLnB0cikgLSBjdXJyZW50QnVmZmVyUHRyXG5cbiAgICAgIGlmIChyZXQgPT09IGNvbnN0YW50cy5FUlJPUi5QQVVTRURfVVBHUkFERSkge1xuICAgICAgICB0aGlzLm9uVXBncmFkZShkYXRhLnNsaWNlKG9mZnNldCkpXG4gICAgICB9IGVsc2UgaWYgKHJldCA9PT0gY29uc3RhbnRzLkVSUk9SLlBBVVNFRCkge1xuICAgICAgICB0aGlzLnBhdXNlZCA9IHRydWVcbiAgICAgICAgc29ja2V0LnVuc2hpZnQoZGF0YS5zbGljZShvZmZzZXQpKVxuICAgICAgfSBlbHNlIGlmIChyZXQgIT09IGNvbnN0YW50cy5FUlJPUi5PSykge1xuICAgICAgICBjb25zdCBwdHIgPSBsbGh0dHAubGxodHRwX2dldF9lcnJvcl9yZWFzb24odGhpcy5wdHIpXG4gICAgICAgIGxldCBtZXNzYWdlID0gJydcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2U6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgICAgICBpZiAocHRyKSB7XG4gICAgICAgICAgY29uc3QgbGVuID0gbmV3IFVpbnQ4QXJyYXkobGxodHRwLm1lbW9yeS5idWZmZXIsIHB0cikuaW5kZXhPZigwKVxuICAgICAgICAgIG1lc3NhZ2UgPVxuICAgICAgICAgICAgJ1Jlc3BvbnNlIGRvZXMgbm90IG1hdGNoIHRoZSBIVFRQLzEuMSBwcm90b2NvbCAoJyArXG4gICAgICAgICAgICBCdWZmZXIuZnJvbShsbGh0dHAubWVtb3J5LmJ1ZmZlciwgcHRyLCBsZW4pLnRvU3RyaW5nKCkgK1xuICAgICAgICAgICAgJyknXG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEhUVFBQYXJzZXJFcnJvcihtZXNzYWdlLCBjb25zdGFudHMuRVJST1JbcmV0XSwgZGF0YS5zbGljZShvZmZzZXQpKVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgZXJyKVxuICAgIH1cbiAgfVxuXG4gIGRlc3Ryb3kgKCkge1xuICAgIGFzc2VydCh0aGlzLnB0ciAhPSBudWxsKVxuICAgIGFzc2VydChjdXJyZW50UGFyc2VyID09IG51bGwpXG5cbiAgICB0aGlzLmxsaHR0cC5sbGh0dHBfZnJlZSh0aGlzLnB0cilcbiAgICB0aGlzLnB0ciA9IG51bGxcblxuICAgIHRpbWVycy5jbGVhclRpbWVvdXQodGhpcy50aW1lb3V0KVxuICAgIHRoaXMudGltZW91dCA9IG51bGxcbiAgICB0aGlzLnRpbWVvdXRWYWx1ZSA9IG51bGxcbiAgICB0aGlzLnRpbWVvdXRUeXBlID0gbnVsbFxuXG4gICAgdGhpcy5wYXVzZWQgPSBmYWxzZVxuICB9XG5cbiAgb25TdGF0dXMgKGJ1Zikge1xuICAgIHRoaXMuc3RhdHVzVGV4dCA9IGJ1Zi50b1N0cmluZygpXG4gIH1cblxuICBvbk1lc3NhZ2VCZWdpbiAoKSB7XG4gICAgY29uc3QgeyBzb2NrZXQsIGNsaWVudCB9ID0gdGhpc1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm4gLTFcbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cbiAgICBpZiAoIXJlcXVlc3QpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cbiAgfVxuXG4gIG9uSGVhZGVyRmllbGQgKGJ1Zikge1xuICAgIGNvbnN0IGxlbiA9IHRoaXMuaGVhZGVycy5sZW5ndGhcblxuICAgIGlmICgobGVuICYgMSkgPT09IDApIHtcbiAgICAgIHRoaXMuaGVhZGVycy5wdXNoKGJ1ZilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5oZWFkZXJzW2xlbiAtIDFdID0gQnVmZmVyLmNvbmNhdChbdGhpcy5oZWFkZXJzW2xlbiAtIDFdLCBidWZdKVxuICAgIH1cblxuICAgIHRoaXMudHJhY2tIZWFkZXIoYnVmLmxlbmd0aClcbiAgfVxuXG4gIG9uSGVhZGVyVmFsdWUgKGJ1Zikge1xuICAgIGxldCBsZW4gPSB0aGlzLmhlYWRlcnMubGVuZ3RoXG5cbiAgICBpZiAoKGxlbiAmIDEpID09PSAxKSB7XG4gICAgICB0aGlzLmhlYWRlcnMucHVzaChidWYpXG4gICAgICBsZW4gKz0gMVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhlYWRlcnNbbGVuIC0gMV0gPSBCdWZmZXIuY29uY2F0KFt0aGlzLmhlYWRlcnNbbGVuIC0gMV0sIGJ1Zl0pXG4gICAgfVxuXG4gICAgY29uc3Qga2V5ID0gdGhpcy5oZWFkZXJzW2xlbiAtIDJdXG4gICAgaWYgKGtleS5sZW5ndGggPT09IDEwICYmIGtleS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09ICdrZWVwLWFsaXZlJykge1xuICAgICAgdGhpcy5rZWVwQWxpdmUgKz0gYnVmLnRvU3RyaW5nKClcbiAgICB9IGVsc2UgaWYgKGtleS5sZW5ndGggPT09IDEwICYmIGtleS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09ICdjb25uZWN0aW9uJykge1xuICAgICAgdGhpcy5jb25uZWN0aW9uICs9IGJ1Zi50b1N0cmluZygpXG4gICAgfSBlbHNlIGlmIChrZXkubGVuZ3RoID09PSAxNCAmJiBrZXkudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC1sZW5ndGgnKSB7XG4gICAgICB0aGlzLmNvbnRlbnRMZW5ndGggKz0gYnVmLnRvU3RyaW5nKClcbiAgICB9XG5cbiAgICB0aGlzLnRyYWNrSGVhZGVyKGJ1Zi5sZW5ndGgpXG4gIH1cblxuICB0cmFja0hlYWRlciAobGVuKSB7XG4gICAgdGhpcy5oZWFkZXJzU2l6ZSArPSBsZW5cbiAgICBpZiAodGhpcy5oZWFkZXJzU2l6ZSA+PSB0aGlzLmhlYWRlcnNNYXhTaXplKSB7XG4gICAgICB1dGlsLmRlc3Ryb3kodGhpcy5zb2NrZXQsIG5ldyBIZWFkZXJzT3ZlcmZsb3dFcnJvcigpKVxuICAgIH1cbiAgfVxuXG4gIG9uVXBncmFkZSAoaGVhZCkge1xuICAgIGNvbnN0IHsgdXBncmFkZSwgY2xpZW50LCBzb2NrZXQsIGhlYWRlcnMsIHN0YXR1c0NvZGUgfSA9IHRoaXNcblxuICAgIGFzc2VydCh1cGdyYWRlKVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNsaWVudFtrUXVldWVdW2NsaWVudFtrUnVubmluZ0lkeF1dXG4gICAgYXNzZXJ0KHJlcXVlc3QpXG5cbiAgICBhc3NlcnQoIXNvY2tldC5kZXN0cm95ZWQpXG4gICAgYXNzZXJ0KHNvY2tldCA9PT0gY2xpZW50W2tTb2NrZXRdKVxuICAgIGFzc2VydCghdGhpcy5wYXVzZWQpXG4gICAgYXNzZXJ0KHJlcXVlc3QudXBncmFkZSB8fCByZXF1ZXN0Lm1ldGhvZCA9PT0gJ0NPTk5FQ1QnKVxuXG4gICAgdGhpcy5zdGF0dXNDb2RlID0gbnVsbFxuICAgIHRoaXMuc3RhdHVzVGV4dCA9ICcnXG4gICAgdGhpcy5zaG91bGRLZWVwQWxpdmUgPSBudWxsXG5cbiAgICBhc3NlcnQodGhpcy5oZWFkZXJzLmxlbmd0aCAlIDIgPT09IDApXG4gICAgdGhpcy5oZWFkZXJzID0gW11cbiAgICB0aGlzLmhlYWRlcnNTaXplID0gMFxuXG4gICAgc29ja2V0LnVuc2hpZnQoaGVhZClcblxuICAgIHNvY2tldFtrUGFyc2VyXS5kZXN0cm95KClcbiAgICBzb2NrZXRba1BhcnNlcl0gPSBudWxsXG5cbiAgICBzb2NrZXRba0NsaWVudF0gPSBudWxsXG4gICAgc29ja2V0W2tFcnJvcl0gPSBudWxsXG4gICAgc29ja2V0XG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25Tb2NrZXRFcnJvcilcbiAgICAgIC5yZW1vdmVMaXN0ZW5lcigncmVhZGFibGUnLCBvblNvY2tldFJlYWRhYmxlKVxuICAgICAgLnJlbW92ZUxpc3RlbmVyKCdlbmQnLCBvblNvY2tldEVuZClcbiAgICAgIC5yZW1vdmVMaXN0ZW5lcignY2xvc2UnLCBvblNvY2tldENsb3NlKVxuXG4gICAgY2xpZW50W2tTb2NrZXRdID0gbnVsbFxuICAgIGNsaWVudFtrUXVldWVdW2NsaWVudFtrUnVubmluZ0lkeF0rK10gPSBudWxsXG4gICAgY2xpZW50LmVtaXQoJ2Rpc2Nvbm5lY3QnLCBjbGllbnRba1VybF0sIFtjbGllbnRdLCBuZXcgSW5mb3JtYXRpb25hbEVycm9yKCd1cGdyYWRlJykpXG5cbiAgICB0cnkge1xuICAgICAgcmVxdWVzdC5vblVwZ3JhZGUoc3RhdHVzQ29kZSwgaGVhZGVycywgc29ja2V0KVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgZXJyKVxuICAgIH1cblxuICAgIHJlc3VtZShjbGllbnQpXG4gIH1cblxuICBvbkhlYWRlcnNDb21wbGV0ZSAoc3RhdHVzQ29kZSwgdXBncmFkZSwgc2hvdWxkS2VlcEFsaXZlKSB7XG4gICAgY29uc3QgeyBjbGllbnQsIHNvY2tldCwgaGVhZGVycywgc3RhdHVzVGV4dCB9ID0gdGhpc1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGRpZmZpY3VsdCB0byBtYWtlIGEgdGVzdCBjYXNlIGZvciAqL1xuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm4gLTFcbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBkaWZmaWN1bHQgdG8gbWFrZSBhIHRlc3QgY2FzZSBmb3IgKi9cbiAgICBpZiAoIXJlcXVlc3QpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIGFzc2VydCghdGhpcy51cGdyYWRlKVxuICAgIGFzc2VydCh0aGlzLnN0YXR1c0NvZGUgPCAyMDApXG5cbiAgICBpZiAoc3RhdHVzQ29kZSA9PT0gMTAwKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgU29ja2V0RXJyb3IoJ2JhZCByZXNwb25zZScsIHV0aWwuZ2V0U29ja2V0SW5mbyhzb2NrZXQpKSlcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIC8qIHRoaXMgY2FuIG9ubHkgaGFwcGVuIGlmIHNlcnZlciBpcyBtaXNiZWhhdmluZyAqL1xuICAgIGlmICh1cGdyYWRlICYmICFyZXF1ZXN0LnVwZ3JhZGUpIHtcbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBTb2NrZXRFcnJvcignYmFkIHVwZ3JhZGUnLCB1dGlsLmdldFNvY2tldEluZm8oc29ja2V0KSkpXG4gICAgICByZXR1cm4gLTFcbiAgICB9XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodGhpcy50aW1lb3V0VHlwZSwgVElNRU9VVF9IRUFERVJTKVxuXG4gICAgdGhpcy5zdGF0dXNDb2RlID0gc3RhdHVzQ29kZVxuICAgIHRoaXMuc2hvdWxkS2VlcEFsaXZlID0gKFxuICAgICAgc2hvdWxkS2VlcEFsaXZlIHx8XG4gICAgICAvLyBPdmVycmlkZSBsbGh0dHAgdmFsdWUgd2hpY2ggZG9lcyBub3QgYWxsb3cga2VlcEFsaXZlIGZvciBIRUFELlxuICAgICAgKHJlcXVlc3QubWV0aG9kID09PSAnSEVBRCcgJiYgIXNvY2tldFtrUmVzZXRdICYmIHRoaXMuY29ubmVjdGlvbi50b0xvd2VyQ2FzZSgpID09PSAna2VlcC1hbGl2ZScpXG4gICAgKVxuXG4gICAgaWYgKHRoaXMuc3RhdHVzQ29kZSA+PSAyMDApIHtcbiAgICAgIGNvbnN0IGJvZHlUaW1lb3V0ID0gcmVxdWVzdC5ib2R5VGltZW91dCAhPSBudWxsXG4gICAgICAgID8gcmVxdWVzdC5ib2R5VGltZW91dFxuICAgICAgICA6IGNsaWVudFtrQm9keVRpbWVvdXRdXG4gICAgICB0aGlzLnNldFRpbWVvdXQoYm9keVRpbWVvdXQsIFRJTUVPVVRfQk9EWSlcbiAgICB9IGVsc2UgaWYgKHRoaXMudGltZW91dCkge1xuICAgICAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2U6IG9ubHkgZm9yIGplc3RcbiAgICAgIGlmICh0aGlzLnRpbWVvdXQucmVmcmVzaCkge1xuICAgICAgICB0aGlzLnRpbWVvdXQucmVmcmVzaCgpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3QubWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgIGFzc2VydChjbGllbnRba1J1bm5pbmddID09PSAxKVxuICAgICAgdGhpcy51cGdyYWRlID0gdHJ1ZVxuICAgICAgcmV0dXJuIDJcbiAgICB9XG5cbiAgICBpZiAodXBncmFkZSkge1xuICAgICAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPT09IDEpXG4gICAgICB0aGlzLnVwZ3JhZGUgPSB0cnVlXG4gICAgICByZXR1cm4gMlxuICAgIH1cblxuICAgIGFzc2VydCh0aGlzLmhlYWRlcnMubGVuZ3RoICUgMiA9PT0gMClcbiAgICB0aGlzLmhlYWRlcnMgPSBbXVxuICAgIHRoaXMuaGVhZGVyc1NpemUgPSAwXG5cbiAgICBpZiAodGhpcy5zaG91bGRLZWVwQWxpdmUgJiYgY2xpZW50W2tQaXBlbGluaW5nXSkge1xuICAgICAgY29uc3Qga2VlcEFsaXZlVGltZW91dCA9IHRoaXMua2VlcEFsaXZlID8gdXRpbC5wYXJzZUtlZXBBbGl2ZVRpbWVvdXQodGhpcy5rZWVwQWxpdmUpIDogbnVsbFxuXG4gICAgICBpZiAoa2VlcEFsaXZlVGltZW91dCAhPSBudWxsKSB7XG4gICAgICAgIGNvbnN0IHRpbWVvdXQgPSBNYXRoLm1pbihcbiAgICAgICAgICBrZWVwQWxpdmVUaW1lb3V0IC0gY2xpZW50W2tLZWVwQWxpdmVUaW1lb3V0VGhyZXNob2xkXSxcbiAgICAgICAgICBjbGllbnRba0tlZXBBbGl2ZU1heFRpbWVvdXRdXG4gICAgICAgIClcbiAgICAgICAgaWYgKHRpbWVvdXQgPD0gMCkge1xuICAgICAgICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNsaWVudFtrS2VlcEFsaXZlVGltZW91dFZhbHVlXSA9IHRpbWVvdXRcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xpZW50W2tLZWVwQWxpdmVUaW1lb3V0VmFsdWVdID0gY2xpZW50W2tLZWVwQWxpdmVEZWZhdWx0VGltZW91dF1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gU3RvcCBtb3JlIHJlcXVlc3RzIGZyb20gYmVpbmcgZGlzcGF0Y2hlZC5cbiAgICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICAgIH1cblxuICAgIGNvbnN0IHBhdXNlID0gcmVxdWVzdC5vbkhlYWRlcnMoc3RhdHVzQ29kZSwgaGVhZGVycywgdGhpcy5yZXN1bWUsIHN0YXR1c1RleHQpID09PSBmYWxzZVxuXG4gICAgaWYgKHJlcXVlc3QuYWJvcnRlZCkge1xuICAgICAgcmV0dXJuIC0xXG4gICAgfVxuXG4gICAgaWYgKHJlcXVlc3QubWV0aG9kID09PSAnSEVBRCcpIHtcbiAgICAgIHJldHVybiAxXG4gICAgfVxuXG4gICAgaWYgKHN0YXR1c0NvZGUgPCAyMDApIHtcbiAgICAgIHJldHVybiAxXG4gICAgfVxuXG4gICAgaWYgKHNvY2tldFtrQmxvY2tpbmddKSB7XG4gICAgICBzb2NrZXRba0Jsb2NraW5nXSA9IGZhbHNlXG4gICAgICByZXN1bWUoY2xpZW50KVxuICAgIH1cblxuICAgIHJldHVybiBwYXVzZSA/IGNvbnN0YW50cy5FUlJPUi5QQVVTRUQgOiAwXG4gIH1cblxuICBvbkJvZHkgKGJ1Zikge1xuICAgIGNvbnN0IHsgY2xpZW50LCBzb2NrZXQsIHN0YXR1c0NvZGUsIG1heFJlc3BvbnNlU2l6ZSB9ID0gdGhpc1xuXG4gICAgaWYgKHNvY2tldC5kZXN0cm95ZWQpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3QgPSBjbGllbnRba1F1ZXVlXVtjbGllbnRba1J1bm5pbmdJZHhdXVxuICAgIGFzc2VydChyZXF1ZXN0KVxuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHRoaXMudGltZW91dFR5cGUsIFRJTUVPVVRfQk9EWSlcbiAgICBpZiAodGhpcy50aW1lb3V0KSB7XG4gICAgICAvLyBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogb25seSBmb3IgamVzdFxuICAgICAgaWYgKHRoaXMudGltZW91dC5yZWZyZXNoKSB7XG4gICAgICAgIHRoaXMudGltZW91dC5yZWZyZXNoKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhc3NlcnQoc3RhdHVzQ29kZSA+PSAyMDApXG5cbiAgICBpZiAobWF4UmVzcG9uc2VTaXplID4gLTEgJiYgdGhpcy5ieXRlc1JlYWQgKyBidWYubGVuZ3RoID4gbWF4UmVzcG9uc2VTaXplKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgUmVzcG9uc2VFeGNlZWRlZE1heFNpemVFcnJvcigpKVxuICAgICAgcmV0dXJuIC0xXG4gICAgfVxuXG4gICAgdGhpcy5ieXRlc1JlYWQgKz0gYnVmLmxlbmd0aFxuXG4gICAgaWYgKHJlcXVlc3Qub25EYXRhKGJ1ZikgPT09IGZhbHNlKSB7XG4gICAgICByZXR1cm4gY29uc3RhbnRzLkVSUk9SLlBBVVNFRFxuICAgIH1cbiAgfVxuXG4gIG9uTWVzc2FnZUNvbXBsZXRlICgpIHtcbiAgICBjb25zdCB7IGNsaWVudCwgc29ja2V0LCBzdGF0dXNDb2RlLCB1cGdyYWRlLCBoZWFkZXJzLCBjb250ZW50TGVuZ3RoLCBieXRlc1JlYWQsIHNob3VsZEtlZXBBbGl2ZSB9ID0gdGhpc1xuXG4gICAgaWYgKHNvY2tldC5kZXN0cm95ZWQgJiYgKCFzdGF0dXNDb2RlIHx8IHNob3VsZEtlZXBBbGl2ZSkpIHtcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIGlmICh1cGdyYWRlKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XV1cbiAgICBhc3NlcnQocmVxdWVzdClcblxuICAgIGFzc2VydChzdGF0dXNDb2RlID49IDEwMClcblxuICAgIHRoaXMuc3RhdHVzQ29kZSA9IG51bGxcbiAgICB0aGlzLnN0YXR1c1RleHQgPSAnJ1xuICAgIHRoaXMuYnl0ZXNSZWFkID0gMFxuICAgIHRoaXMuY29udGVudExlbmd0aCA9ICcnXG4gICAgdGhpcy5rZWVwQWxpdmUgPSAnJ1xuICAgIHRoaXMuY29ubmVjdGlvbiA9ICcnXG5cbiAgICBhc3NlcnQodGhpcy5oZWFkZXJzLmxlbmd0aCAlIDIgPT09IDApXG4gICAgdGhpcy5oZWFkZXJzID0gW11cbiAgICB0aGlzLmhlYWRlcnNTaXplID0gMFxuXG4gICAgaWYgKHN0YXR1c0NvZGUgPCAyMDApIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBzaG91bGQgYmUgaGFuZGxlZCBieSBsbGh0dHA/ICovXG4gICAgaWYgKHJlcXVlc3QubWV0aG9kICE9PSAnSEVBRCcgJiYgY29udGVudExlbmd0aCAmJiBieXRlc1JlYWQgIT09IHBhcnNlSW50KGNvbnRlbnRMZW5ndGgsIDEwKSkge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgbmV3IFJlc3BvbnNlQ29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKSlcbiAgICAgIHJldHVybiAtMVxuICAgIH1cblxuICAgIHJlcXVlc3Qub25Db21wbGV0ZShoZWFkZXJzKVxuXG4gICAgY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XSsrXSA9IG51bGxcblxuICAgIGlmIChzb2NrZXRba1dyaXRpbmddKSB7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY2xpZW50W2tSdW5uaW5nXSwgMClcbiAgICAgIC8vIFJlc3BvbnNlIGNvbXBsZXRlZCBiZWZvcmUgcmVxdWVzdC5cbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ3Jlc2V0JykpXG4gICAgICByZXR1cm4gY29uc3RhbnRzLkVSUk9SLlBBVVNFRFxuICAgIH0gZWxzZSBpZiAoIXNob3VsZEtlZXBBbGl2ZSkge1xuICAgICAgdXRpbC5kZXN0cm95KHNvY2tldCwgbmV3IEluZm9ybWF0aW9uYWxFcnJvcigncmVzZXQnKSlcbiAgICAgIHJldHVybiBjb25zdGFudHMuRVJST1IuUEFVU0VEXG4gICAgfSBlbHNlIGlmIChzb2NrZXRba1Jlc2V0XSAmJiBjbGllbnRba1J1bm5pbmddID09PSAwKSB7XG4gICAgICAvLyBEZXN0cm95IHNvY2tldCBvbmNlIGFsbCByZXF1ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAgICAgIC8vIFRoZSByZXF1ZXN0IGF0IHRoZSB0YWlsIG9mIHRoZSBwaXBlbGluZSBpcyB0aGUgb25lXG4gICAgICAvLyB0aGF0IHJlcXVlc3RlZCByZXNldCBhbmQgbm8gZnVydGhlciByZXF1ZXN0cyBzaG91bGRcbiAgICAgIC8vIGhhdmUgYmVlbiBxdWV1ZWQgc2luY2UgdGhlbi5cbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ3Jlc2V0JykpXG4gICAgICByZXR1cm4gY29uc3RhbnRzLkVSUk9SLlBBVVNFRFxuICAgIH0gZWxzZSBpZiAoY2xpZW50W2tQaXBlbGluaW5nXSA9PT0gMSkge1xuICAgICAgLy8gV2UgbXVzdCB3YWl0IGEgZnVsbCBldmVudCBsb29wIGN5Y2xlIHRvIHJldXNlIHRoaXMgc29ja2V0IHRvIG1ha2Ugc3VyZVxuICAgICAgLy8gdGhhdCBub24tc3BlYyBjb21wbGlhbnQgc2VydmVycyBhcmUgbm90IGNsb3NpbmcgdGhlIGNvbm5lY3Rpb24gZXZlbiBpZiB0aGV5XG4gICAgICAvLyBzYWlkIHRoZXkgd29uJ3QuXG4gICAgICBzZXRJbW1lZGlhdGUocmVzdW1lLCBjbGllbnQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VtZShjbGllbnQpXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIG9uUGFyc2VyVGltZW91dCAocGFyc2VyKSB7XG4gIGNvbnN0IHsgc29ja2V0LCB0aW1lb3V0VHlwZSwgY2xpZW50IH0gPSBwYXJzZXJcblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICBpZiAodGltZW91dFR5cGUgPT09IFRJTUVPVVRfSEVBREVSUykge1xuICAgIGlmICghc29ja2V0W2tXcml0aW5nXSB8fCBzb2NrZXQud3JpdGFibGVOZWVkRHJhaW4gfHwgY2xpZW50W2tSdW5uaW5nXSA+IDEpIHtcbiAgICAgIGFzc2VydCghcGFyc2VyLnBhdXNlZCwgJ2Nhbm5vdCBiZSBwYXVzZWQgd2hpbGUgd2FpdGluZyBmb3IgaGVhZGVycycpXG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgSGVhZGVyc1RpbWVvdXRFcnJvcigpKVxuICAgIH1cbiAgfSBlbHNlIGlmICh0aW1lb3V0VHlwZSA9PT0gVElNRU9VVF9CT0RZKSB7XG4gICAgaWYgKCFwYXJzZXIucGF1c2VkKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgQm9keVRpbWVvdXRFcnJvcigpKVxuICAgIH1cbiAgfSBlbHNlIGlmICh0aW1lb3V0VHlwZSA9PT0gVElNRU9VVF9JRExFKSB7XG4gICAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPT09IDAgJiYgY2xpZW50W2tLZWVwQWxpdmVUaW1lb3V0VmFsdWVdKVxuICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ3NvY2tldCBpZGxlIHRpbWVvdXQnKSlcbiAgfVxufVxuXG5mdW5jdGlvbiBvblNvY2tldFJlYWRhYmxlICgpIHtcbiAgY29uc3QgeyBba1BhcnNlcl06IHBhcnNlciB9ID0gdGhpc1xuICBpZiAocGFyc2VyKSB7XG4gICAgcGFyc2VyLnJlYWRNb3JlKClcbiAgfVxufVxuXG5mdW5jdGlvbiBvblNvY2tldEVycm9yIChlcnIpIHtcbiAgY29uc3QgeyBba0NsaWVudF06IGNsaWVudCwgW2tQYXJzZXJdOiBwYXJzZXIgfSA9IHRoaXNcblxuICBhc3NlcnQoZXJyLmNvZGUgIT09ICdFUlJfVExTX0NFUlRfQUxUTkFNRV9JTlZBTElEJylcblxuICBpZiAoY2xpZW50W2tIVFRQQ29ublZlcnNpb25dICE9PSAnaDInKSB7XG4gICAgLy8gT24gTWFjIE9TLCB3ZSBnZXQgYW4gRUNPTk5SRVNFVCBldmVuIGlmIHRoZXJlIGlzIGEgZnVsbCBib2R5IHRvIGJlIGZvcndhcmRlZFxuICAgIC8vIHRvIHRoZSB1c2VyLlxuICAgIGlmIChlcnIuY29kZSA9PT0gJ0VDT05OUkVTRVQnICYmIHBhcnNlci5zdGF0dXNDb2RlICYmICFwYXJzZXIuc2hvdWxkS2VlcEFsaXZlKSB7XG4gICAgICAvLyBXZSB0cmVhdCBhbGwgaW5jb21pbmcgZGF0YSBzbyBmb3IgYXMgYSB2YWxpZCByZXNwb25zZS5cbiAgICAgIHBhcnNlci5vbk1lc3NhZ2VDb21wbGV0ZSgpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH1cblxuICB0aGlzW2tFcnJvcl0gPSBlcnJcblxuICBvbkVycm9yKHRoaXNba0NsaWVudF0sIGVycilcbn1cblxuZnVuY3Rpb24gb25FcnJvciAoY2xpZW50LCBlcnIpIHtcbiAgaWYgKFxuICAgIGNsaWVudFtrUnVubmluZ10gPT09IDAgJiZcbiAgICBlcnIuY29kZSAhPT0gJ1VORF9FUlJfSU5GTycgJiZcbiAgICBlcnIuY29kZSAhPT0gJ1VORF9FUlJfU09DS0VUJ1xuICApIHtcbiAgICAvLyBFcnJvciBpcyBub3QgY2F1c2VkIGJ5IHJ1bm5pbmcgcmVxdWVzdCBhbmQgbm90IGEgcmVjb3ZlcmFibGVcbiAgICAvLyBzb2NrZXQgZXJyb3IuXG5cbiAgICBhc3NlcnQoY2xpZW50W2tQZW5kaW5nSWR4XSA9PT0gY2xpZW50W2tSdW5uaW5nSWR4XSlcblxuICAgIGNvbnN0IHJlcXVlc3RzID0gY2xpZW50W2tRdWV1ZV0uc3BsaWNlKGNsaWVudFtrUnVubmluZ0lkeF0pXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXF1ZXN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgcmVxdWVzdCA9IHJlcXVlc3RzW2ldXG4gICAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBlcnIpXG4gICAgfVxuICAgIGFzc2VydChjbGllbnRba1NpemVdID09PSAwKVxuICB9XG59XG5cbmZ1bmN0aW9uIG9uU29ja2V0RW5kICgpIHtcbiAgY29uc3QgeyBba1BhcnNlcl06IHBhcnNlciwgW2tDbGllbnRdOiBjbGllbnQgfSA9IHRoaXNcblxuICBpZiAoY2xpZW50W2tIVFRQQ29ublZlcnNpb25dICE9PSAnaDInKSB7XG4gICAgaWYgKHBhcnNlci5zdGF0dXNDb2RlICYmICFwYXJzZXIuc2hvdWxkS2VlcEFsaXZlKSB7XG4gICAgICAvLyBXZSB0cmVhdCBhbGwgaW5jb21pbmcgZGF0YSBzbyBmYXIgYXMgYSB2YWxpZCByZXNwb25zZS5cbiAgICAgIHBhcnNlci5vbk1lc3NhZ2VDb21wbGV0ZSgpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH1cblxuICB1dGlsLmRlc3Ryb3kodGhpcywgbmV3IFNvY2tldEVycm9yKCdvdGhlciBzaWRlIGNsb3NlZCcsIHV0aWwuZ2V0U29ja2V0SW5mbyh0aGlzKSkpXG59XG5cbmZ1bmN0aW9uIG9uU29ja2V0Q2xvc2UgKCkge1xuICBjb25zdCB7IFtrQ2xpZW50XTogY2xpZW50LCBba1BhcnNlcl06IHBhcnNlciB9ID0gdGhpc1xuXG4gIGlmIChjbGllbnRba0hUVFBDb25uVmVyc2lvbl0gPT09ICdoMScgJiYgcGFyc2VyKSB7XG4gICAgaWYgKCF0aGlzW2tFcnJvcl0gJiYgcGFyc2VyLnN0YXR1c0NvZGUgJiYgIXBhcnNlci5zaG91bGRLZWVwQWxpdmUpIHtcbiAgICAgIC8vIFdlIHRyZWF0IGFsbCBpbmNvbWluZyBkYXRhIHNvIGZhciBhcyBhIHZhbGlkIHJlc3BvbnNlLlxuICAgICAgcGFyc2VyLm9uTWVzc2FnZUNvbXBsZXRlKClcbiAgICB9XG5cbiAgICB0aGlzW2tQYXJzZXJdLmRlc3Ryb3koKVxuICAgIHRoaXNba1BhcnNlcl0gPSBudWxsXG4gIH1cblxuICBjb25zdCBlcnIgPSB0aGlzW2tFcnJvcl0gfHwgbmV3IFNvY2tldEVycm9yKCdjbG9zZWQnLCB1dGlsLmdldFNvY2tldEluZm8odGhpcykpXG5cbiAgY2xpZW50W2tTb2NrZXRdID0gbnVsbFxuXG4gIGlmIChjbGllbnQuZGVzdHJveWVkKSB7XG4gICAgYXNzZXJ0KGNsaWVudFtrUGVuZGluZ10gPT09IDApXG5cbiAgICAvLyBGYWlsIGVudGlyZSBxdWV1ZS5cbiAgICBjb25zdCByZXF1ZXN0cyA9IGNsaWVudFtrUXVldWVdLnNwbGljZShjbGllbnRba1J1bm5pbmdJZHhdKVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcmVxdWVzdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IHJlcXVlc3QgPSByZXF1ZXN0c1tpXVxuICAgICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuICAgIH1cbiAgfSBlbHNlIGlmIChjbGllbnRba1J1bm5pbmddID4gMCAmJiBlcnIuY29kZSAhPT0gJ1VORF9FUlJfSU5GTycpIHtcbiAgICAvLyBGYWlsIGhlYWQgb2YgcGlwZWxpbmUuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNsaWVudFtrUXVldWVdW2NsaWVudFtrUnVubmluZ0lkeF1dXG4gICAgY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tSdW5uaW5nSWR4XSsrXSA9IG51bGxcblxuICAgIGVycm9yUmVxdWVzdChjbGllbnQsIHJlcXVlc3QsIGVycilcbiAgfVxuXG4gIGNsaWVudFtrUGVuZGluZ0lkeF0gPSBjbGllbnRba1J1bm5pbmdJZHhdXG5cbiAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPT09IDApXG5cbiAgY2xpZW50LmVtaXQoJ2Rpc2Nvbm5lY3QnLCBjbGllbnRba1VybF0sIFtjbGllbnRdLCBlcnIpXG5cbiAgcmVzdW1lKGNsaWVudClcbn1cblxuYXN5bmMgZnVuY3Rpb24gY29ubmVjdCAoY2xpZW50KSB7XG4gIGFzc2VydCghY2xpZW50W2tDb25uZWN0aW5nXSlcbiAgYXNzZXJ0KCFjbGllbnRba1NvY2tldF0pXG5cbiAgbGV0IHsgaG9zdCwgaG9zdG5hbWUsIHByb3RvY29sLCBwb3J0IH0gPSBjbGllbnRba1VybF1cblxuICAvLyBSZXNvbHZlIGlwdjZcbiAgaWYgKGhvc3RuYW1lWzBdID09PSAnWycpIHtcbiAgICBjb25zdCBpZHggPSBob3N0bmFtZS5pbmRleE9mKCddJylcblxuICAgIGFzc2VydChpZHggIT09IC0xKVxuICAgIGNvbnN0IGlwID0gaG9zdG5hbWUuc3Vic3RyaW5nKDEsIGlkeClcblxuICAgIGFzc2VydChuZXQuaXNJUChpcCkpXG4gICAgaG9zdG5hbWUgPSBpcFxuICB9XG5cbiAgY2xpZW50W2tDb25uZWN0aW5nXSA9IHRydWVcblxuICBpZiAoY2hhbm5lbHMuYmVmb3JlQ29ubmVjdC5oYXNTdWJzY3JpYmVycykge1xuICAgIGNoYW5uZWxzLmJlZm9yZUNvbm5lY3QucHVibGlzaCh7XG4gICAgICBjb25uZWN0UGFyYW1zOiB7XG4gICAgICAgIGhvc3QsXG4gICAgICAgIGhvc3RuYW1lLFxuICAgICAgICBwcm90b2NvbCxcbiAgICAgICAgcG9ydCxcbiAgICAgICAgc2VydmVybmFtZTogY2xpZW50W2tTZXJ2ZXJOYW1lXSxcbiAgICAgICAgbG9jYWxBZGRyZXNzOiBjbGllbnRba0xvY2FsQWRkcmVzc11cbiAgICAgIH0sXG4gICAgICBjb25uZWN0b3I6IGNsaWVudFtrQ29ubmVjdG9yXVxuICAgIH0pXG4gIH1cblxuICB0cnkge1xuICAgIGNvbnN0IHNvY2tldCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNsaWVudFtrQ29ubmVjdG9yXSh7XG4gICAgICAgIGhvc3QsXG4gICAgICAgIGhvc3RuYW1lLFxuICAgICAgICBwcm90b2NvbCxcbiAgICAgICAgcG9ydCxcbiAgICAgICAgc2VydmVybmFtZTogY2xpZW50W2tTZXJ2ZXJOYW1lXSxcbiAgICAgICAgbG9jYWxBZGRyZXNzOiBjbGllbnRba0xvY2FsQWRkcmVzc11cbiAgICAgIH0sIChlcnIsIHNvY2tldCkgPT4ge1xuICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgcmVqZWN0KGVycilcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXNvbHZlKHNvY2tldClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9KVxuXG4gICAgaWYgKGNsaWVudC5kZXN0cm95ZWQpIHtcbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQub24oJ2Vycm9yJywgKCkgPT4ge30pLCBuZXcgQ2xpZW50RGVzdHJveWVkRXJyb3IoKSlcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNsaWVudFtrQ29ubmVjdGluZ10gPSBmYWxzZVxuXG4gICAgYXNzZXJ0KHNvY2tldClcblxuICAgIGNvbnN0IGlzSDIgPSBzb2NrZXQuYWxwblByb3RvY29sID09PSAnaDInXG4gICAgaWYgKGlzSDIpIHtcbiAgICAgIGlmICghaDJFeHBlcmltZW50YWxXYXJuZWQpIHtcbiAgICAgICAgaDJFeHBlcmltZW50YWxXYXJuZWQgPSB0cnVlXG4gICAgICAgIHByb2Nlc3MuZW1pdFdhcm5pbmcoJ0gyIHN1cHBvcnQgaXMgZXhwZXJpbWVudGFsLCBleHBlY3QgdGhlbSB0byBjaGFuZ2UgYXQgYW55IHRpbWUuJywge1xuICAgICAgICAgIGNvZGU6ICdVTkRJQ0ktSDInXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNlc3Npb24gPSBodHRwMi5jb25uZWN0KGNsaWVudFtrVXJsXSwge1xuICAgICAgICBjcmVhdGVDb25uZWN0aW9uOiAoKSA9PiBzb2NrZXQsXG4gICAgICAgIHBlZXJNYXhDb25jdXJyZW50U3RyZWFtczogY2xpZW50W2tIVFRQMlNlc3Npb25TdGF0ZV0ubWF4Q29uY3VycmVudFN0cmVhbXNcbiAgICAgIH0pXG5cbiAgICAgIGNsaWVudFtrSFRUUENvbm5WZXJzaW9uXSA9ICdoMidcbiAgICAgIHNlc3Npb25ba0NsaWVudF0gPSBjbGllbnRcbiAgICAgIHNlc3Npb25ba1NvY2tldF0gPSBzb2NrZXRcbiAgICAgIHNlc3Npb24ub24oJ2Vycm9yJywgb25IdHRwMlNlc3Npb25FcnJvcilcbiAgICAgIHNlc3Npb24ub24oJ2ZyYW1lRXJyb3InLCBvbkh0dHAyRnJhbWVFcnJvcilcbiAgICAgIHNlc3Npb24ub24oJ2VuZCcsIG9uSHR0cDJTZXNzaW9uRW5kKVxuICAgICAgc2Vzc2lvbi5vbignZ29hd2F5Jywgb25IVFRQMkdvQXdheSlcbiAgICAgIHNlc3Npb24ub24oJ2Nsb3NlJywgb25Tb2NrZXRDbG9zZSlcbiAgICAgIHNlc3Npb24udW5yZWYoKVxuXG4gICAgICBjbGllbnRba0hUVFAyU2Vzc2lvbl0gPSBzZXNzaW9uXG4gICAgICBzb2NrZXRba0hUVFAyU2Vzc2lvbl0gPSBzZXNzaW9uXG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghbGxodHRwSW5zdGFuY2UpIHtcbiAgICAgICAgbGxodHRwSW5zdGFuY2UgPSBhd2FpdCBsbGh0dHBQcm9taXNlXG4gICAgICAgIGxsaHR0cFByb21pc2UgPSBudWxsXG4gICAgICB9XG5cbiAgICAgIHNvY2tldFtrTm9SZWZdID0gZmFsc2VcbiAgICAgIHNvY2tldFtrV3JpdGluZ10gPSBmYWxzZVxuICAgICAgc29ja2V0W2tSZXNldF0gPSBmYWxzZVxuICAgICAgc29ja2V0W2tCbG9ja2luZ10gPSBmYWxzZVxuICAgICAgc29ja2V0W2tQYXJzZXJdID0gbmV3IFBhcnNlcihjbGllbnQsIHNvY2tldCwgbGxodHRwSW5zdGFuY2UpXG4gICAgfVxuXG4gICAgc29ja2V0W2tDb3VudGVyXSA9IDBcbiAgICBzb2NrZXRba01heFJlcXVlc3RzXSA9IGNsaWVudFtrTWF4UmVxdWVzdHNdXG4gICAgc29ja2V0W2tDbGllbnRdID0gY2xpZW50XG4gICAgc29ja2V0W2tFcnJvcl0gPSBudWxsXG5cbiAgICBzb2NrZXRcbiAgICAgIC5vbignZXJyb3InLCBvblNvY2tldEVycm9yKVxuICAgICAgLm9uKCdyZWFkYWJsZScsIG9uU29ja2V0UmVhZGFibGUpXG4gICAgICAub24oJ2VuZCcsIG9uU29ja2V0RW5kKVxuICAgICAgLm9uKCdjbG9zZScsIG9uU29ja2V0Q2xvc2UpXG5cbiAgICBjbGllbnRba1NvY2tldF0gPSBzb2NrZXRcblxuICAgIGlmIChjaGFubmVscy5jb25uZWN0ZWQuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICAgIGNoYW5uZWxzLmNvbm5lY3RlZC5wdWJsaXNoKHtcbiAgICAgICAgY29ubmVjdFBhcmFtczoge1xuICAgICAgICAgIGhvc3QsXG4gICAgICAgICAgaG9zdG5hbWUsXG4gICAgICAgICAgcHJvdG9jb2wsXG4gICAgICAgICAgcG9ydCxcbiAgICAgICAgICBzZXJ2ZXJuYW1lOiBjbGllbnRba1NlcnZlck5hbWVdLFxuICAgICAgICAgIGxvY2FsQWRkcmVzczogY2xpZW50W2tMb2NhbEFkZHJlc3NdXG4gICAgICAgIH0sXG4gICAgICAgIGNvbm5lY3RvcjogY2xpZW50W2tDb25uZWN0b3JdLFxuICAgICAgICBzb2NrZXRcbiAgICAgIH0pXG4gICAgfVxuICAgIGNsaWVudC5lbWl0KCdjb25uZWN0JywgY2xpZW50W2tVcmxdLCBbY2xpZW50XSlcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgaWYgKGNsaWVudC5kZXN0cm95ZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNsaWVudFtrQ29ubmVjdGluZ10gPSBmYWxzZVxuXG4gICAgaWYgKGNoYW5uZWxzLmNvbm5lY3RFcnJvci5oYXNTdWJzY3JpYmVycykge1xuICAgICAgY2hhbm5lbHMuY29ubmVjdEVycm9yLnB1Ymxpc2goe1xuICAgICAgICBjb25uZWN0UGFyYW1zOiB7XG4gICAgICAgICAgaG9zdCxcbiAgICAgICAgICBob3N0bmFtZSxcbiAgICAgICAgICBwcm90b2NvbCxcbiAgICAgICAgICBwb3J0LFxuICAgICAgICAgIHNlcnZlcm5hbWU6IGNsaWVudFtrU2VydmVyTmFtZV0sXG4gICAgICAgICAgbG9jYWxBZGRyZXNzOiBjbGllbnRba0xvY2FsQWRkcmVzc11cbiAgICAgICAgfSxcbiAgICAgICAgY29ubmVjdG9yOiBjbGllbnRba0Nvbm5lY3Rvcl0sXG4gICAgICAgIGVycm9yOiBlcnJcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKGVyci5jb2RlID09PSAnRVJSX1RMU19DRVJUX0FMVE5BTUVfSU5WQUxJRCcpIHtcbiAgICAgIGFzc2VydChjbGllbnRba1J1bm5pbmddID09PSAwKVxuICAgICAgd2hpbGUgKGNsaWVudFtrUGVuZGluZ10gPiAwICYmIGNsaWVudFtrUXVldWVdW2NsaWVudFtrUGVuZGluZ0lkeF1dLnNlcnZlcm5hbWUgPT09IGNsaWVudFtrU2VydmVyTmFtZV0pIHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9IGNsaWVudFtrUXVldWVdW2NsaWVudFtrUGVuZGluZ0lkeF0rK11cbiAgICAgICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBvbkVycm9yKGNsaWVudCwgZXJyKVxuICAgIH1cblxuICAgIGNsaWVudC5lbWl0KCdjb25uZWN0aW9uRXJyb3InLCBjbGllbnRba1VybF0sIFtjbGllbnRdLCBlcnIpXG4gIH1cblxuICByZXN1bWUoY2xpZW50KVxufVxuXG5mdW5jdGlvbiBlbWl0RHJhaW4gKGNsaWVudCkge1xuICBjbGllbnRba05lZWREcmFpbl0gPSAwXG4gIGNsaWVudC5lbWl0KCdkcmFpbicsIGNsaWVudFtrVXJsXSwgW2NsaWVudF0pXG59XG5cbmZ1bmN0aW9uIHJlc3VtZSAoY2xpZW50LCBzeW5jKSB7XG4gIGlmIChjbGllbnRba1Jlc3VtaW5nXSA9PT0gMikge1xuICAgIHJldHVyblxuICB9XG5cbiAgY2xpZW50W2tSZXN1bWluZ10gPSAyXG5cbiAgX3Jlc3VtZShjbGllbnQsIHN5bmMpXG4gIGNsaWVudFtrUmVzdW1pbmddID0gMFxuXG4gIGlmIChjbGllbnRba1J1bm5pbmdJZHhdID4gMjU2KSB7XG4gICAgY2xpZW50W2tRdWV1ZV0uc3BsaWNlKDAsIGNsaWVudFtrUnVubmluZ0lkeF0pXG4gICAgY2xpZW50W2tQZW5kaW5nSWR4XSAtPSBjbGllbnRba1J1bm5pbmdJZHhdXG4gICAgY2xpZW50W2tSdW5uaW5nSWR4XSA9IDBcbiAgfVxufVxuXG5mdW5jdGlvbiBfcmVzdW1lIChjbGllbnQsIHN5bmMpIHtcbiAgd2hpbGUgKHRydWUpIHtcbiAgICBpZiAoY2xpZW50LmRlc3Ryb3llZCkge1xuICAgICAgYXNzZXJ0KGNsaWVudFtrUGVuZGluZ10gPT09IDApXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoY2xpZW50W2tDbG9zZWRSZXNvbHZlXSAmJiAhY2xpZW50W2tTaXplXSkge1xuICAgICAgY2xpZW50W2tDbG9zZWRSZXNvbHZlXSgpXG4gICAgICBjbGllbnRba0Nsb3NlZFJlc29sdmVdID0gbnVsbFxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3Qgc29ja2V0ID0gY2xpZW50W2tTb2NrZXRdXG5cbiAgICBpZiAoc29ja2V0ICYmICFzb2NrZXQuZGVzdHJveWVkICYmIHNvY2tldC5hbHBuUHJvdG9jb2wgIT09ICdoMicpIHtcbiAgICAgIGlmIChjbGllbnRba1NpemVdID09PSAwKSB7XG4gICAgICAgIGlmICghc29ja2V0W2tOb1JlZl0gJiYgc29ja2V0LnVucmVmKSB7XG4gICAgICAgICAgc29ja2V0LnVucmVmKClcbiAgICAgICAgICBzb2NrZXRba05vUmVmXSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChzb2NrZXRba05vUmVmXSAmJiBzb2NrZXQucmVmKSB7XG4gICAgICAgIHNvY2tldC5yZWYoKVxuICAgICAgICBzb2NrZXRba05vUmVmXSA9IGZhbHNlXG4gICAgICB9XG5cbiAgICAgIGlmIChjbGllbnRba1NpemVdID09PSAwKSB7XG4gICAgICAgIGlmIChzb2NrZXRba1BhcnNlcl0udGltZW91dFR5cGUgIT09IFRJTUVPVVRfSURMRSkge1xuICAgICAgICAgIHNvY2tldFtrUGFyc2VyXS5zZXRUaW1lb3V0KGNsaWVudFtrS2VlcEFsaXZlVGltZW91dFZhbHVlXSwgVElNRU9VVF9JRExFKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwICYmIHNvY2tldFtrUGFyc2VyXS5zdGF0dXNDb2RlIDwgMjAwKSB7XG4gICAgICAgIGlmIChzb2NrZXRba1BhcnNlcl0udGltZW91dFR5cGUgIT09IFRJTUVPVVRfSEVBREVSUykge1xuICAgICAgICAgIGNvbnN0IHJlcXVlc3QgPSBjbGllbnRba1F1ZXVlXVtjbGllbnRba1J1bm5pbmdJZHhdXVxuICAgICAgICAgIGNvbnN0IGhlYWRlcnNUaW1lb3V0ID0gcmVxdWVzdC5oZWFkZXJzVGltZW91dCAhPSBudWxsXG4gICAgICAgICAgICA/IHJlcXVlc3QuaGVhZGVyc1RpbWVvdXRcbiAgICAgICAgICAgIDogY2xpZW50W2tIZWFkZXJzVGltZW91dF1cbiAgICAgICAgICBzb2NrZXRba1BhcnNlcl0uc2V0VGltZW91dChoZWFkZXJzVGltZW91dCwgVElNRU9VVF9IRUFERVJTKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrQnVzeV0pIHtcbiAgICAgIGNsaWVudFtrTmVlZERyYWluXSA9IDJcbiAgICB9IGVsc2UgaWYgKGNsaWVudFtrTmVlZERyYWluXSA9PT0gMikge1xuICAgICAgaWYgKHN5bmMpIHtcbiAgICAgICAgY2xpZW50W2tOZWVkRHJhaW5dID0gMVxuICAgICAgICBwcm9jZXNzLm5leHRUaWNrKGVtaXREcmFpbiwgY2xpZW50KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZW1pdERyYWluKGNsaWVudClcbiAgICAgIH1cbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrUGVuZGluZ10gPT09IDApIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChjbGllbnRba1J1bm5pbmddID49IChjbGllbnRba1BpcGVsaW5pbmddIHx8IDEpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY2xpZW50W2tRdWV1ZV1bY2xpZW50W2tQZW5kaW5nSWR4XV1cblxuICAgIGlmIChjbGllbnRba1VybF0ucHJvdG9jb2wgPT09ICdodHRwczonICYmIGNsaWVudFtrU2VydmVyTmFtZV0gIT09IHJlcXVlc3Quc2VydmVybmFtZSkge1xuICAgICAgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjbGllbnRba1NlcnZlck5hbWVdID0gcmVxdWVzdC5zZXJ2ZXJuYW1lXG5cbiAgICAgIGlmIChzb2NrZXQgJiYgc29ja2V0LnNlcnZlcm5hbWUgIT09IHJlcXVlc3Quc2VydmVybmFtZSkge1xuICAgICAgICB1dGlsLmRlc3Ryb3koc29ja2V0LCBuZXcgSW5mb3JtYXRpb25hbEVycm9yKCdzZXJ2ZXJuYW1lIGNoYW5nZWQnKSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrQ29ubmVjdGluZ10pIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghc29ja2V0ICYmICFjbGllbnRba0hUVFAyU2Vzc2lvbl0pIHtcbiAgICAgIGNvbm5lY3QoY2xpZW50KVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKHNvY2tldC5kZXN0cm95ZWQgfHwgc29ja2V0W2tXcml0aW5nXSB8fCBzb2NrZXRba1Jlc2V0XSB8fCBzb2NrZXRba0Jsb2NraW5nXSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwICYmICFyZXF1ZXN0LmlkZW1wb3RlbnQpIHtcbiAgICAgIC8vIE5vbi1pZGVtcG90ZW50IHJlcXVlc3QgY2Fubm90IGJlIHJldHJpZWQuXG4gICAgICAvLyBFbnN1cmUgdGhhdCBubyBvdGhlciByZXF1ZXN0cyBhcmUgaW5mbGlnaHQgYW5kXG4gICAgICAvLyBjb3VsZCBjYXVzZSBmYWlsdXJlLlxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKGNsaWVudFtrUnVubmluZ10gPiAwICYmIChyZXF1ZXN0LnVwZ3JhZGUgfHwgcmVxdWVzdC5tZXRob2QgPT09ICdDT05ORUNUJykpIHtcbiAgICAgIC8vIERvbid0IGRpc3BhdGNoIGFuIHVwZ3JhZGUgdW50aWwgYWxsIHByZWNlZGluZyByZXF1ZXN0cyBoYXZlIGNvbXBsZXRlZC5cbiAgICAgIC8vIEEgbWlzYmVoYXZpbmcgc2VydmVyIG1pZ2h0IHVwZ3JhZGUgdGhlIGNvbm5lY3Rpb24gYmVmb3JlIGFsbCBwaXBlbGluZWRcbiAgICAgIC8vIHJlcXVlc3QgaGFzIGNvbXBsZXRlZC5cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChjbGllbnRba1J1bm5pbmddID4gMCAmJiB1dGlsLmJvZHlMZW5ndGgocmVxdWVzdC5ib2R5KSAhPT0gMCAmJlxuICAgICAgKHV0aWwuaXNTdHJlYW0ocmVxdWVzdC5ib2R5KSB8fCB1dGlsLmlzQXN5bmNJdGVyYWJsZShyZXF1ZXN0LmJvZHkpKSkge1xuICAgICAgLy8gUmVxdWVzdCB3aXRoIHN0cmVhbSBvciBpdGVyYXRvciBib2R5IGNhbiBlcnJvciB3aGlsZSBvdGhlciByZXF1ZXN0c1xuICAgICAgLy8gYXJlIGluZmxpZ2h0IGFuZCBpbmRpcmVjdGx5IGVycm9yIHRob3NlIGFzIHdlbGwuXG4gICAgICAvLyBFbnN1cmUgdGhpcyBkb2Vzbid0IGhhcHBlbiBieSB3YWl0aW5nIGZvciBpbmZsaWdodFxuICAgICAgLy8gdG8gY29tcGxldGUgYmVmb3JlIGRpc3BhdGNoaW5nLlxuXG4gICAgICAvLyBSZXF1ZXN0IHdpdGggc3RyZWFtIG9yIGl0ZXJhdG9yIGJvZHkgY2Fubm90IGJlIHJldHJpZWQuXG4gICAgICAvLyBFbnN1cmUgdGhhdCBubyBvdGhlciByZXF1ZXN0cyBhcmUgaW5mbGlnaHQgYW5kXG4gICAgICAvLyBjb3VsZCBjYXVzZSBmYWlsdXJlLlxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKCFyZXF1ZXN0LmFib3J0ZWQgJiYgd3JpdGUoY2xpZW50LCByZXF1ZXN0KSkge1xuICAgICAgY2xpZW50W2tQZW5kaW5nSWR4XSsrXG4gICAgfSBlbHNlIHtcbiAgICAgIGNsaWVudFtrUXVldWVdLnNwbGljZShjbGllbnRba1BlbmRpbmdJZHhdLCAxKVxuICAgIH1cbiAgfVxufVxuXG4vLyBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNzIzMCNzZWN0aW9uLTMuMy4yXG5mdW5jdGlvbiBzaG91bGRTZW5kQ29udGVudExlbmd0aCAobWV0aG9kKSB7XG4gIHJldHVybiBtZXRob2QgIT09ICdHRVQnICYmIG1ldGhvZCAhPT0gJ0hFQUQnICYmIG1ldGhvZCAhPT0gJ09QVElPTlMnICYmIG1ldGhvZCAhPT0gJ1RSQUNFJyAmJiBtZXRob2QgIT09ICdDT05ORUNUJ1xufVxuXG5mdW5jdGlvbiB3cml0ZSAoY2xpZW50LCByZXF1ZXN0KSB7XG4gIGlmIChjbGllbnRba0hUVFBDb25uVmVyc2lvbl0gPT09ICdoMicpIHtcbiAgICB3cml0ZUgyKGNsaWVudCwgY2xpZW50W2tIVFRQMlNlc3Npb25dLCByZXF1ZXN0KVxuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgeyBib2R5LCBtZXRob2QsIHBhdGgsIGhvc3QsIHVwZ3JhZGUsIGhlYWRlcnMsIGJsb2NraW5nLCByZXNldCB9ID0gcmVxdWVzdFxuXG4gIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNC4zLjFcbiAgLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi00LjMuMlxuICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMSNzZWN0aW9uLTQuMy41XG5cbiAgLy8gU2VuZGluZyBhIHBheWxvYWQgYm9keSBvbiBhIHJlcXVlc3QgdGhhdCBkb2VzIG5vdFxuICAvLyBleHBlY3QgaXQgY2FuIGNhdXNlIHVuZGVmaW5lZCBiZWhhdmlvciBvbiBzb21lXG4gIC8vIHNlcnZlcnMgYW5kIGNvcnJ1cHQgY29ubmVjdGlvbiBzdGF0ZS4gRG8gbm90XG4gIC8vIHJlLXVzZSB0aGUgY29ubmVjdGlvbiBmb3IgZnVydGhlciByZXF1ZXN0cy5cblxuICBjb25zdCBleHBlY3RzUGF5bG9hZCA9IChcbiAgICBtZXRob2QgPT09ICdQVVQnIHx8XG4gICAgbWV0aG9kID09PSAnUE9TVCcgfHxcbiAgICBtZXRob2QgPT09ICdQQVRDSCdcbiAgKVxuXG4gIGlmIChib2R5ICYmIHR5cGVvZiBib2R5LnJlYWQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAvLyBUcnkgdG8gcmVhZCBFT0YgaW4gb3JkZXIgdG8gZ2V0IGxlbmd0aC5cbiAgICBib2R5LnJlYWQoMClcbiAgfVxuXG4gIGNvbnN0IGJvZHlMZW5ndGggPSB1dGlsLmJvZHlMZW5ndGgoYm9keSlcblxuICBsZXQgY29udGVudExlbmd0aCA9IGJvZHlMZW5ndGhcblxuICBpZiAoY29udGVudExlbmd0aCA9PT0gbnVsbCkge1xuICAgIGNvbnRlbnRMZW5ndGggPSByZXF1ZXN0LmNvbnRlbnRMZW5ndGhcbiAgfVxuXG4gIGlmIChjb250ZW50TGVuZ3RoID09PSAwICYmICFleHBlY3RzUGF5bG9hZCkge1xuICAgIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMwI3NlY3Rpb24tMy4zLjJcbiAgICAvLyBBIHVzZXIgYWdlbnQgU0hPVUxEIE5PVCBzZW5kIGEgQ29udGVudC1MZW5ndGggaGVhZGVyIGZpZWxkIHdoZW5cbiAgICAvLyB0aGUgcmVxdWVzdCBtZXNzYWdlIGRvZXMgbm90IGNvbnRhaW4gYSBwYXlsb2FkIGJvZHkgYW5kIHRoZSBtZXRob2RcbiAgICAvLyBzZW1hbnRpY3MgZG8gbm90IGFudGljaXBhdGUgc3VjaCBhIGJvZHkuXG5cbiAgICBjb250ZW50TGVuZ3RoID0gbnVsbFxuICB9XG5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvaXNzdWVzLzIwNDZcbiAgLy8gQSB1c2VyIGFnZW50IG1heSBzZW5kIGEgQ29udGVudC1MZW5ndGggaGVhZGVyIHdpdGggMCB2YWx1ZSwgdGhpcyBzaG91bGQgYmUgYWxsb3dlZC5cbiAgaWYgKHNob3VsZFNlbmRDb250ZW50TGVuZ3RoKG1ldGhvZCkgJiYgY29udGVudExlbmd0aCA+IDAgJiYgcmVxdWVzdC5jb250ZW50TGVuZ3RoICE9PSBudWxsICYmIHJlcXVlc3QuY29udGVudExlbmd0aCAhPT0gY29udGVudExlbmd0aCkge1xuICAgIGlmIChjbGllbnRba1N0cmljdENvbnRlbnRMZW5ndGhdKSB7XG4gICAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBuZXcgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yKCkpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBwcm9jZXNzLmVtaXRXYXJuaW5nKG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKSlcbiAgfVxuXG4gIGNvbnN0IHNvY2tldCA9IGNsaWVudFtrU29ja2V0XVxuXG4gIHRyeSB7XG4gICAgcmVxdWVzdC5vbkNvbm5lY3QoKGVycikgPT4ge1xuICAgICAgaWYgKHJlcXVlc3QuYWJvcnRlZCB8fCByZXF1ZXN0LmNvbXBsZXRlZCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyIHx8IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKCkpXG5cbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoJ2Fib3J0ZWQnKSlcbiAgICB9KVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBlcnIpXG4gIH1cblxuICBpZiAocmVxdWVzdC5hYm9ydGVkKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBpZiAobWV0aG9kID09PSAnSEVBRCcpIHtcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vbWNvbGxpbmEvdW5kaWNpL2lzc3Vlcy8yNThcbiAgICAvLyBDbG9zZSBhZnRlciBhIEhFQUQgcmVxdWVzdCB0byBpbnRlcm9wIHdpdGggbWlzYmVoYXZpbmcgc2VydmVyc1xuICAgIC8vIHRoYXQgbWF5IHNlbmQgYSBib2R5IGluIHRoZSByZXNwb25zZS5cblxuICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICB9XG5cbiAgaWYgKHVwZ3JhZGUgfHwgbWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAvLyBPbiBDT05ORUNUIG9yIHVwZ3JhZGUsIGJsb2NrIHBpcGVsaW5lIGZyb20gZGlzcGF0Y2hpbmcgZnVydGhlclxuICAgIC8vIHJlcXVlc3RzIG9uIHRoaXMgY29ubmVjdGlvbi5cblxuICAgIHNvY2tldFtrUmVzZXRdID0gdHJ1ZVxuICB9XG5cbiAgaWYgKHJlc2V0ICE9IG51bGwpIHtcbiAgICBzb2NrZXRba1Jlc2V0XSA9IHJlc2V0XG4gIH1cblxuICBpZiAoY2xpZW50W2tNYXhSZXF1ZXN0c10gJiYgc29ja2V0W2tDb3VudGVyXSsrID49IGNsaWVudFtrTWF4UmVxdWVzdHNdKSB7XG4gICAgc29ja2V0W2tSZXNldF0gPSB0cnVlXG4gIH1cblxuICBpZiAoYmxvY2tpbmcpIHtcbiAgICBzb2NrZXRba0Jsb2NraW5nXSA9IHRydWVcbiAgfVxuXG4gIGxldCBoZWFkZXIgPSBgJHttZXRob2R9ICR7cGF0aH0gSFRUUC8xLjFcXHJcXG5gXG5cbiAgaWYgKHR5cGVvZiBob3N0ID09PSAnc3RyaW5nJykge1xuICAgIGhlYWRlciArPSBgaG9zdDogJHtob3N0fVxcclxcbmBcbiAgfSBlbHNlIHtcbiAgICBoZWFkZXIgKz0gY2xpZW50W2tIb3N0SGVhZGVyXVxuICB9XG5cbiAgaWYgKHVwZ3JhZGUpIHtcbiAgICBoZWFkZXIgKz0gYGNvbm5lY3Rpb246IHVwZ3JhZGVcXHJcXG51cGdyYWRlOiAke3VwZ3JhZGV9XFxyXFxuYFxuICB9IGVsc2UgaWYgKGNsaWVudFtrUGlwZWxpbmluZ10gJiYgIXNvY2tldFtrUmVzZXRdKSB7XG4gICAgaGVhZGVyICs9ICdjb25uZWN0aW9uOiBrZWVwLWFsaXZlXFxyXFxuJ1xuICB9IGVsc2Uge1xuICAgIGhlYWRlciArPSAnY29ubmVjdGlvbjogY2xvc2VcXHJcXG4nXG4gIH1cblxuICBpZiAoaGVhZGVycykge1xuICAgIGhlYWRlciArPSBoZWFkZXJzXG4gIH1cblxuICBpZiAoY2hhbm5lbHMuc2VuZEhlYWRlcnMuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICBjaGFubmVscy5zZW5kSGVhZGVycy5wdWJsaXNoKHsgcmVxdWVzdCwgaGVhZGVyczogaGVhZGVyLCBzb2NrZXQgfSlcbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBhc3NlcnRpb24gKi9cbiAgaWYgKCFib2R5IHx8IGJvZHlMZW5ndGggPT09IDApIHtcbiAgICBpZiAoY29udGVudExlbmd0aCA9PT0gMCkge1xuICAgICAgc29ja2V0LndyaXRlKGAke2hlYWRlcn1jb250ZW50LWxlbmd0aDogMFxcclxcblxcclxcbmAsICdsYXRpbjEnKVxuICAgIH0gZWxzZSB7XG4gICAgICBhc3NlcnQoY29udGVudExlbmd0aCA9PT0gbnVsbCwgJ25vIGJvZHkgbXVzdCBub3QgaGF2ZSBjb250ZW50IGxlbmd0aCcpXG4gICAgICBzb2NrZXQud3JpdGUoYCR7aGVhZGVyfVxcclxcbmAsICdsYXRpbjEnKVxuICAgIH1cbiAgICByZXF1ZXN0Lm9uUmVxdWVzdFNlbnQoKVxuICB9IGVsc2UgaWYgKHV0aWwuaXNCdWZmZXIoYm9keSkpIHtcbiAgICBhc3NlcnQoY29udGVudExlbmd0aCA9PT0gYm9keS5ieXRlTGVuZ3RoLCAnYnVmZmVyIGJvZHkgbXVzdCBoYXZlIGNvbnRlbnQgbGVuZ3RoJylcblxuICAgIHNvY2tldC5jb3JrKClcbiAgICBzb2NrZXQud3JpdGUoYCR7aGVhZGVyfWNvbnRlbnQtbGVuZ3RoOiAke2NvbnRlbnRMZW5ndGh9XFxyXFxuXFxyXFxuYCwgJ2xhdGluMScpXG4gICAgc29ja2V0LndyaXRlKGJvZHkpXG4gICAgc29ja2V0LnVuY29yaygpXG4gICAgcmVxdWVzdC5vbkJvZHlTZW50KGJvZHkpXG4gICAgcmVxdWVzdC5vblJlcXVlc3RTZW50KClcbiAgICBpZiAoIWV4cGVjdHNQYXlsb2FkKSB7XG4gICAgICBzb2NrZXRba1Jlc2V0XSA9IHRydWVcbiAgICB9XG4gIH0gZWxzZSBpZiAodXRpbC5pc0Jsb2JMaWtlKGJvZHkpKSB7XG4gICAgaWYgKHR5cGVvZiBib2R5LnN0cmVhbSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgd3JpdGVJdGVyYWJsZSh7IGJvZHk6IGJvZHkuc3RyZWFtKCksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHdyaXRlQmxvYih7IGJvZHksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gICAgfVxuICB9IGVsc2UgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICB3cml0ZVN0cmVhbSh7IGJvZHksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gIH0gZWxzZSBpZiAodXRpbC5pc0l0ZXJhYmxlKGJvZHkpKSB7XG4gICAgd3JpdGVJdGVyYWJsZSh7IGJvZHksIGNsaWVudCwgcmVxdWVzdCwgc29ja2V0LCBjb250ZW50TGVuZ3RoLCBoZWFkZXIsIGV4cGVjdHNQYXlsb2FkIH0pXG4gIH0gZWxzZSB7XG4gICAgYXNzZXJ0KGZhbHNlKVxuICB9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZnVuY3Rpb24gd3JpdGVIMiAoY2xpZW50LCBzZXNzaW9uLCByZXF1ZXN0KSB7XG4gIGNvbnN0IHsgYm9keSwgbWV0aG9kLCBwYXRoLCBob3N0LCB1cGdyYWRlLCBleHBlY3RDb250aW51ZSwgc2lnbmFsLCBoZWFkZXJzOiByZXFIZWFkZXJzIH0gPSByZXF1ZXN0XG5cbiAgbGV0IGhlYWRlcnNcbiAgaWYgKHR5cGVvZiByZXFIZWFkZXJzID09PSAnc3RyaW5nJykgaGVhZGVycyA9IFJlcXVlc3Rba0hUVFAyQ29weUhlYWRlcnNdKHJlcUhlYWRlcnMudHJpbSgpKVxuICBlbHNlIGhlYWRlcnMgPSByZXFIZWFkZXJzXG5cbiAgaWYgKHVwZ3JhZGUpIHtcbiAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBuZXcgRXJyb3IoJ1VwZ3JhZGUgbm90IHN1cHBvcnRlZCBmb3IgSDInKSlcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHRyeSB7XG4gICAgLy8gVE9ETyhIVFRQLzIpOiBTaG91bGQgd2UgY2FsbCBvbkNvbm5lY3QgaW1tZWRpYXRlbHkgb3Igb24gc3RyZWFtIHJlYWR5IGV2ZW50P1xuICAgIHJlcXVlc3Qub25Db25uZWN0KChlcnIpID0+IHtcbiAgICAgIGlmIChyZXF1ZXN0LmFib3J0ZWQgfHwgcmVxdWVzdC5jb21wbGV0ZWQpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGVycm9yUmVxdWVzdChjbGllbnQsIHJlcXVlc3QsIGVyciB8fCBuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpKVxuICAgIH0pXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGVycm9yUmVxdWVzdChjbGllbnQsIHJlcXVlc3QsIGVycilcbiAgfVxuXG4gIGlmIChyZXF1ZXN0LmFib3J0ZWQpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIC8qKiBAdHlwZSB7aW1wb3J0KCdub2RlOmh0dHAyJykuQ2xpZW50SHR0cDJTdHJlYW19ICovXG4gIGxldCBzdHJlYW1cbiAgY29uc3QgaDJTdGF0ZSA9IGNsaWVudFtrSFRUUDJTZXNzaW9uU3RhdGVdXG5cbiAgaGVhZGVyc1tIVFRQMl9IRUFERVJfQVVUSE9SSVRZXSA9IGhvc3QgfHwgY2xpZW50W2tIb3N0XVxuICBoZWFkZXJzW0hUVFAyX0hFQURFUl9NRVRIT0RdID0gbWV0aG9kXG5cbiAgaWYgKG1ldGhvZCA9PT0gJ0NPTk5FQ1QnKSB7XG4gICAgc2Vzc2lvbi5yZWYoKVxuICAgIC8vIHdlIGFyZSBhbHJlYWR5IGNvbm5lY3RlZCwgc3RyZWFtcyBhcmUgcGVuZGluZywgZmlyc3QgcmVxdWVzdFxuICAgIC8vIHdpbGwgY3JlYXRlIGEgbmV3IHN0cmVhbS4gV2UgdHJpZ2dlciBhIHJlcXVlc3QgdG8gY3JlYXRlIHRoZSBzdHJlYW0gYW5kIHdhaXQgdW50aWxcbiAgICAvLyBgcmVhZHlgIGV2ZW50IGlzIHRyaWdnZXJlZFxuICAgIC8vIFdlIGRpc2FibGVkIGVuZFN0cmVhbSB0byBhbGxvdyB0aGUgdXNlciB0byB3cml0ZSB0byB0aGUgc3RyZWFtXG4gICAgc3RyZWFtID0gc2Vzc2lvbi5yZXF1ZXN0KGhlYWRlcnMsIHsgZW5kU3RyZWFtOiBmYWxzZSwgc2lnbmFsIH0pXG5cbiAgICBpZiAoc3RyZWFtLmlkICYmICFzdHJlYW0ucGVuZGluZykge1xuICAgICAgcmVxdWVzdC5vblVwZ3JhZGUobnVsbCwgbnVsbCwgc3RyZWFtKVxuICAgICAgKytoMlN0YXRlLm9wZW5TdHJlYW1zXG4gICAgfSBlbHNlIHtcbiAgICAgIHN0cmVhbS5vbmNlKCdyZWFkeScsICgpID0+IHtcbiAgICAgICAgcmVxdWVzdC5vblVwZ3JhZGUobnVsbCwgbnVsbCwgc3RyZWFtKVxuICAgICAgICArK2gyU3RhdGUub3BlblN0cmVhbXNcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgc3RyZWFtLm9uY2UoJ2Nsb3NlJywgKCkgPT4ge1xuICAgICAgaDJTdGF0ZS5vcGVuU3RyZWFtcyAtPSAxXG4gICAgICAvLyBUT0RPKEhUVFAvMik6IHVucmVmIG9ubHkgaWYgY3VycmVudCBzdHJlYW1zIGNvdW50IGlzIDBcbiAgICAgIGlmIChoMlN0YXRlLm9wZW5TdHJlYW1zID09PSAwKSBzZXNzaW9uLnVucmVmKClcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3NTQwI3NlY3Rpb24tOC4zXG4gIC8vIDpwYXRoIGFuZCA6c2NoZW1lIGhlYWRlcnMgbXVzdCBiZSBvbWl0ZWQgd2hlbiBzZW5kaW5nIENPTk5FQ1RcblxuICBoZWFkZXJzW0hUVFAyX0hFQURFUl9QQVRIXSA9IHBhdGhcbiAgaGVhZGVyc1tIVFRQMl9IRUFERVJfU0NIRU1FXSA9ICdodHRwcydcblxuICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMSNzZWN0aW9uLTQuMy4xXG4gIC8vIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MjMxI3NlY3Rpb24tNC4zLjJcbiAgLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzEjc2VjdGlvbi00LjMuNVxuXG4gIC8vIFNlbmRpbmcgYSBwYXlsb2FkIGJvZHkgb24gYSByZXF1ZXN0IHRoYXQgZG9lcyBub3RcbiAgLy8gZXhwZWN0IGl0IGNhbiBjYXVzZSB1bmRlZmluZWQgYmVoYXZpb3Igb24gc29tZVxuICAvLyBzZXJ2ZXJzIGFuZCBjb3JydXB0IGNvbm5lY3Rpb24gc3RhdGUuIERvIG5vdFxuICAvLyByZS11c2UgdGhlIGNvbm5lY3Rpb24gZm9yIGZ1cnRoZXIgcmVxdWVzdHMuXG5cbiAgY29uc3QgZXhwZWN0c1BheWxvYWQgPSAoXG4gICAgbWV0aG9kID09PSAnUFVUJyB8fFxuICAgIG1ldGhvZCA9PT0gJ1BPU1QnIHx8XG4gICAgbWV0aG9kID09PSAnUEFUQ0gnXG4gIClcblxuICBpZiAoYm9keSAmJiB0eXBlb2YgYm9keS5yZWFkID09PSAnZnVuY3Rpb24nKSB7XG4gICAgLy8gVHJ5IHRvIHJlYWQgRU9GIGluIG9yZGVyIHRvIGdldCBsZW5ndGguXG4gICAgYm9keS5yZWFkKDApXG4gIH1cblxuICBsZXQgY29udGVudExlbmd0aCA9IHV0aWwuYm9keUxlbmd0aChib2R5KVxuXG4gIGlmIChjb250ZW50TGVuZ3RoID09IG51bGwpIHtcbiAgICBjb250ZW50TGVuZ3RoID0gcmVxdWVzdC5jb250ZW50TGVuZ3RoXG4gIH1cblxuICBpZiAoY29udGVudExlbmd0aCA9PT0gMCB8fCAhZXhwZWN0c1BheWxvYWQpIHtcbiAgICAvLyBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzIzMCNzZWN0aW9uLTMuMy4yXG4gICAgLy8gQSB1c2VyIGFnZW50IFNIT1VMRCBOT1Qgc2VuZCBhIENvbnRlbnQtTGVuZ3RoIGhlYWRlciBmaWVsZCB3aGVuXG4gICAgLy8gdGhlIHJlcXVlc3QgbWVzc2FnZSBkb2VzIG5vdCBjb250YWluIGEgcGF5bG9hZCBib2R5IGFuZCB0aGUgbWV0aG9kXG4gICAgLy8gc2VtYW50aWNzIGRvIG5vdCBhbnRpY2lwYXRlIHN1Y2ggYSBib2R5LlxuXG4gICAgY29udGVudExlbmd0aCA9IG51bGxcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8yMDQ2XG4gIC8vIEEgdXNlciBhZ2VudCBtYXkgc2VuZCBhIENvbnRlbnQtTGVuZ3RoIGhlYWRlciB3aXRoIDAgdmFsdWUsIHRoaXMgc2hvdWxkIGJlIGFsbG93ZWQuXG4gIGlmIChzaG91bGRTZW5kQ29udGVudExlbmd0aChtZXRob2QpICYmIGNvbnRlbnRMZW5ndGggPiAwICYmIHJlcXVlc3QuY29udGVudExlbmd0aCAhPSBudWxsICYmIHJlcXVlc3QuY29udGVudExlbmd0aCAhPT0gY29udGVudExlbmd0aCkge1xuICAgIGlmIChjbGllbnRba1N0cmljdENvbnRlbnRMZW5ndGhdKSB7XG4gICAgICBlcnJvclJlcXVlc3QoY2xpZW50LCByZXF1ZXN0LCBuZXcgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yKCkpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBwcm9jZXNzLmVtaXRXYXJuaW5nKG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKSlcbiAgfVxuXG4gIGlmIChjb250ZW50TGVuZ3RoICE9IG51bGwpIHtcbiAgICBhc3NlcnQoYm9keSwgJ25vIGJvZHkgbXVzdCBub3QgaGF2ZSBjb250ZW50IGxlbmd0aCcpXG4gICAgaGVhZGVyc1tIVFRQMl9IRUFERVJfQ09OVEVOVF9MRU5HVEhdID0gYCR7Y29udGVudExlbmd0aH1gXG4gIH1cblxuICBzZXNzaW9uLnJlZigpXG5cbiAgY29uc3Qgc2hvdWxkRW5kU3RyZWFtID0gbWV0aG9kID09PSAnR0VUJyB8fCBtZXRob2QgPT09ICdIRUFEJ1xuICBpZiAoZXhwZWN0Q29udGludWUpIHtcbiAgICBoZWFkZXJzW0hUVFAyX0hFQURFUl9FWFBFQ1RdID0gJzEwMC1jb250aW51ZSdcbiAgICBzdHJlYW0gPSBzZXNzaW9uLnJlcXVlc3QoaGVhZGVycywgeyBlbmRTdHJlYW06IHNob3VsZEVuZFN0cmVhbSwgc2lnbmFsIH0pXG5cbiAgICBzdHJlYW0ub25jZSgnY29udGludWUnLCB3cml0ZUJvZHlIMilcbiAgfSBlbHNlIHtcbiAgICBzdHJlYW0gPSBzZXNzaW9uLnJlcXVlc3QoaGVhZGVycywge1xuICAgICAgZW5kU3RyZWFtOiBzaG91bGRFbmRTdHJlYW0sXG4gICAgICBzaWduYWxcbiAgICB9KVxuICAgIHdyaXRlQm9keUgyKClcbiAgfVxuXG4gIC8vIEluY3JlbWVudCBjb3VudGVyIGFzIHdlIGhhdmUgbmV3IHNldmVyYWwgc3RyZWFtcyBvcGVuXG4gICsraDJTdGF0ZS5vcGVuU3RyZWFtc1xuXG4gIHN0cmVhbS5vbmNlKCdyZXNwb25zZScsIGhlYWRlcnMgPT4ge1xuICAgIGNvbnN0IHsgW0hUVFAyX0hFQURFUl9TVEFUVVNdOiBzdGF0dXNDb2RlLCAuLi5yZWFsSGVhZGVycyB9ID0gaGVhZGVyc1xuXG4gICAgaWYgKHJlcXVlc3Qub25IZWFkZXJzKE51bWJlcihzdGF0dXNDb2RlKSwgcmVhbEhlYWRlcnMsIHN0cmVhbS5yZXN1bWUuYmluZChzdHJlYW0pLCAnJykgPT09IGZhbHNlKSB7XG4gICAgICBzdHJlYW0ucGF1c2UoKVxuICAgIH1cbiAgfSlcblxuICBzdHJlYW0ub25jZSgnZW5kJywgKCkgPT4ge1xuICAgIHJlcXVlc3Qub25Db21wbGV0ZShbXSlcbiAgfSlcblxuICBzdHJlYW0ub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICBpZiAocmVxdWVzdC5vbkRhdGEoY2h1bmspID09PSBmYWxzZSkge1xuICAgICAgc3RyZWFtLnBhdXNlKClcbiAgICB9XG4gIH0pXG5cbiAgc3RyZWFtLm9uY2UoJ2Nsb3NlJywgKCkgPT4ge1xuICAgIGgyU3RhdGUub3BlblN0cmVhbXMgLT0gMVxuICAgIC8vIFRPRE8oSFRUUC8yKTogdW5yZWYgb25seSBpZiBjdXJyZW50IHN0cmVhbXMgY291bnQgaXMgMFxuICAgIGlmIChoMlN0YXRlLm9wZW5TdHJlYW1zID09PSAwKSB7XG4gICAgICBzZXNzaW9uLnVucmVmKClcbiAgICB9XG4gIH0pXG5cbiAgc3RyZWFtLm9uY2UoJ2Vycm9yJywgZnVuY3Rpb24gKGVycikge1xuICAgIGlmIChjbGllbnRba0hUVFAyU2Vzc2lvbl0gJiYgIWNsaWVudFtrSFRUUDJTZXNzaW9uXS5kZXN0cm95ZWQgJiYgIXRoaXMuY2xvc2VkICYmICF0aGlzLmRlc3Ryb3llZCkge1xuICAgICAgaDJTdGF0ZS5zdHJlYW1zIC09IDFcbiAgICAgIHV0aWwuZGVzdHJveShzdHJlYW0sIGVycilcbiAgICB9XG4gIH0pXG5cbiAgc3RyZWFtLm9uY2UoJ2ZyYW1lRXJyb3InLCAodHlwZSwgY29kZSkgPT4ge1xuICAgIGNvbnN0IGVyciA9IG5ldyBJbmZvcm1hdGlvbmFsRXJyb3IoYEhUVFAvMjogXCJmcmFtZUVycm9yXCIgcmVjZWl2ZWQgLSB0eXBlICR7dHlwZX0sIGNvZGUgJHtjb2RlfWApXG4gICAgZXJyb3JSZXF1ZXN0KGNsaWVudCwgcmVxdWVzdCwgZXJyKVxuXG4gICAgaWYgKGNsaWVudFtrSFRUUDJTZXNzaW9uXSAmJiAhY2xpZW50W2tIVFRQMlNlc3Npb25dLmRlc3Ryb3llZCAmJiAhdGhpcy5jbG9zZWQgJiYgIXRoaXMuZGVzdHJveWVkKSB7XG4gICAgICBoMlN0YXRlLnN0cmVhbXMgLT0gMVxuICAgICAgdXRpbC5kZXN0cm95KHN0cmVhbSwgZXJyKVxuICAgIH1cbiAgfSlcblxuICAvLyBzdHJlYW0ub24oJ2Fib3J0ZWQnLCAoKSA9PiB7XG4gIC8vICAgLy8gVE9ETyhIVFRQLzIpOiBTdXBwb3J0IGFib3J0ZWRcbiAgLy8gfSlcblxuICAvLyBzdHJlYW0ub24oJ3RpbWVvdXQnLCAoKSA9PiB7XG4gIC8vICAgLy8gVE9ETyhIVFRQLzIpOiBTdXBwb3J0IHRpbWVvdXRcbiAgLy8gfSlcblxuICAvLyBzdHJlYW0ub24oJ3B1c2gnLCBoZWFkZXJzID0+IHtcbiAgLy8gICAvLyBUT0RPKEhUVFAvMik6IFN1cHBvciBwdXNoXG4gIC8vIH0pXG5cbiAgLy8gc3RyZWFtLm9uKCd0cmFpbGVycycsIGhlYWRlcnMgPT4ge1xuICAvLyAgIC8vIFRPRE8oSFRUUC8yKTogU3VwcG9ydCB0cmFpbGVyc1xuICAvLyB9KVxuXG4gIHJldHVybiB0cnVlXG5cbiAgZnVuY3Rpb24gd3JpdGVCb2R5SDIgKCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBhc3NlcnRpb24gKi9cbiAgICBpZiAoIWJvZHkpIHtcbiAgICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG4gICAgfSBlbHNlIGlmICh1dGlsLmlzQnVmZmVyKGJvZHkpKSB7XG4gICAgICBhc3NlcnQoY29udGVudExlbmd0aCA9PT0gYm9keS5ieXRlTGVuZ3RoLCAnYnVmZmVyIGJvZHkgbXVzdCBoYXZlIGNvbnRlbnQgbGVuZ3RoJylcbiAgICAgIHN0cmVhbS5jb3JrKClcbiAgICAgIHN0cmVhbS53cml0ZShib2R5KVxuICAgICAgc3RyZWFtLnVuY29yaygpXG4gICAgICBzdHJlYW0uZW5kKClcbiAgICAgIHJlcXVlc3Qub25Cb2R5U2VudChib2R5KVxuICAgICAgcmVxdWVzdC5vblJlcXVlc3RTZW50KClcbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNCbG9iTGlrZShib2R5KSkge1xuICAgICAgaWYgKHR5cGVvZiBib2R5LnN0cmVhbSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB3cml0ZUl0ZXJhYmxlKHtcbiAgICAgICAgICBjbGllbnQsXG4gICAgICAgICAgcmVxdWVzdCxcbiAgICAgICAgICBjb250ZW50TGVuZ3RoLFxuICAgICAgICAgIGgyc3RyZWFtOiBzdHJlYW0sXG4gICAgICAgICAgZXhwZWN0c1BheWxvYWQsXG4gICAgICAgICAgYm9keTogYm9keS5zdHJlYW0oKSxcbiAgICAgICAgICBzb2NrZXQ6IGNsaWVudFtrU29ja2V0XSxcbiAgICAgICAgICBoZWFkZXI6ICcnXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3cml0ZUJsb2Ioe1xuICAgICAgICAgIGJvZHksXG4gICAgICAgICAgY2xpZW50LFxuICAgICAgICAgIHJlcXVlc3QsXG4gICAgICAgICAgY29udGVudExlbmd0aCxcbiAgICAgICAgICBleHBlY3RzUGF5bG9hZCxcbiAgICAgICAgICBoMnN0cmVhbTogc3RyZWFtLFxuICAgICAgICAgIGhlYWRlcjogJycsXG4gICAgICAgICAgc29ja2V0OiBjbGllbnRba1NvY2tldF1cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICAgIHdyaXRlU3RyZWFtKHtcbiAgICAgICAgYm9keSxcbiAgICAgICAgY2xpZW50LFxuICAgICAgICByZXF1ZXN0LFxuICAgICAgICBjb250ZW50TGVuZ3RoLFxuICAgICAgICBleHBlY3RzUGF5bG9hZCxcbiAgICAgICAgc29ja2V0OiBjbGllbnRba1NvY2tldF0sXG4gICAgICAgIGgyc3RyZWFtOiBzdHJlYW0sXG4gICAgICAgIGhlYWRlcjogJydcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmICh1dGlsLmlzSXRlcmFibGUoYm9keSkpIHtcbiAgICAgIHdyaXRlSXRlcmFibGUoe1xuICAgICAgICBib2R5LFxuICAgICAgICBjbGllbnQsXG4gICAgICAgIHJlcXVlc3QsXG4gICAgICAgIGNvbnRlbnRMZW5ndGgsXG4gICAgICAgIGV4cGVjdHNQYXlsb2FkLFxuICAgICAgICBoZWFkZXI6ICcnLFxuICAgICAgICBoMnN0cmVhbTogc3RyZWFtLFxuICAgICAgICBzb2NrZXQ6IGNsaWVudFtrU29ja2V0XVxuICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KGZhbHNlKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiB3cml0ZVN0cmVhbSAoeyBoMnN0cmVhbSwgYm9keSwgY2xpZW50LCByZXF1ZXN0LCBzb2NrZXQsIGNvbnRlbnRMZW5ndGgsIGhlYWRlciwgZXhwZWN0c1BheWxvYWQgfSkge1xuICBhc3NlcnQoY29udGVudExlbmd0aCAhPT0gMCB8fCBjbGllbnRba1J1bm5pbmddID09PSAwLCAnc3RyZWFtIGJvZHkgY2Fubm90IGJlIHBpcGVsaW5lZCcpXG5cbiAgaWYgKGNsaWVudFtrSFRUUENvbm5WZXJzaW9uXSA9PT0gJ2gyJykge1xuICAgIC8vIEZvciBIVFRQLzIsIGlzIGVub3VnaCB0byBwaXBlIHRoZSBzdHJlYW1cbiAgICBjb25zdCBwaXBlID0gcGlwZWxpbmUoXG4gICAgICBib2R5LFxuICAgICAgaDJzdHJlYW0sXG4gICAgICAoZXJyKSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICB1dGlsLmRlc3Ryb3koYm9keSwgZXJyKVxuICAgICAgICAgIHV0aWwuZGVzdHJveShoMnN0cmVhbSwgZXJyKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApXG5cbiAgICBwaXBlLm9uKCdkYXRhJywgb25QaXBlRGF0YSlcbiAgICBwaXBlLm9uY2UoJ2VuZCcsICgpID0+IHtcbiAgICAgIHBpcGUucmVtb3ZlTGlzdGVuZXIoJ2RhdGEnLCBvblBpcGVEYXRhKVxuICAgICAgdXRpbC5kZXN0cm95KHBpcGUpXG4gICAgfSlcblxuICAgIGZ1bmN0aW9uIG9uUGlwZURhdGEgKGNodW5rKSB7XG4gICAgICByZXF1ZXN0Lm9uQm9keVNlbnQoY2h1bmspXG4gICAgfVxuXG4gICAgcmV0dXJuXG4gIH1cblxuICBsZXQgZmluaXNoZWQgPSBmYWxzZVxuXG4gIGNvbnN0IHdyaXRlciA9IG5ldyBBc3luY1dyaXRlcih7IHNvY2tldCwgcmVxdWVzdCwgY29udGVudExlbmd0aCwgY2xpZW50LCBleHBlY3RzUGF5bG9hZCwgaGVhZGVyIH0pXG5cbiAgY29uc3Qgb25EYXRhID0gZnVuY3Rpb24gKGNodW5rKSB7XG4gICAgaWYgKGZpbmlzaGVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgaWYgKCF3cml0ZXIud3JpdGUoY2h1bmspICYmIHRoaXMucGF1c2UpIHtcbiAgICAgICAgdGhpcy5wYXVzZSgpXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB1dGlsLmRlc3Ryb3kodGhpcywgZXJyKVxuICAgIH1cbiAgfVxuICBjb25zdCBvbkRyYWluID0gZnVuY3Rpb24gKCkge1xuICAgIGlmIChmaW5pc2hlZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKGJvZHkucmVzdW1lKSB7XG4gICAgICBib2R5LnJlc3VtZSgpXG4gICAgfVxuICB9XG4gIGNvbnN0IG9uQWJvcnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKGZpbmlzaGVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3QgZXJyID0gbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IG9uRmluaXNoZWQoZXJyKSlcbiAgfVxuICBjb25zdCBvbkZpbmlzaGVkID0gZnVuY3Rpb24gKGVycikge1xuICAgIGlmIChmaW5pc2hlZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgZmluaXNoZWQgPSB0cnVlXG5cbiAgICBhc3NlcnQoc29ja2V0LmRlc3Ryb3llZCB8fCAoc29ja2V0W2tXcml0aW5nXSAmJiBjbGllbnRba1J1bm5pbmddIDw9IDEpKVxuXG4gICAgc29ja2V0XG4gICAgICAub2ZmKCdkcmFpbicsIG9uRHJhaW4pXG4gICAgICAub2ZmKCdlcnJvcicsIG9uRmluaXNoZWQpXG5cbiAgICBib2R5XG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2RhdGEnLCBvbkRhdGEpXG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2VuZCcsIG9uRmluaXNoZWQpXG4gICAgICAucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25GaW5pc2hlZClcbiAgICAgIC5yZW1vdmVMaXN0ZW5lcignY2xvc2UnLCBvbkFib3J0KVxuXG4gICAgaWYgKCFlcnIpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHdyaXRlci5lbmQoKVxuICAgICAgfSBjYXRjaCAoZXIpIHtcbiAgICAgICAgZXJyID0gZXJcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZXIuZGVzdHJveShlcnIpXG5cbiAgICBpZiAoZXJyICYmIChlcnIuY29kZSAhPT0gJ1VORF9FUlJfSU5GTycgfHwgZXJyLm1lc3NhZ2UgIT09ICdyZXNldCcpKSB7XG4gICAgICB1dGlsLmRlc3Ryb3koYm9keSwgZXJyKVxuICAgIH0gZWxzZSB7XG4gICAgICB1dGlsLmRlc3Ryb3koYm9keSlcbiAgICB9XG4gIH1cblxuICBib2R5XG4gICAgLm9uKCdkYXRhJywgb25EYXRhKVxuICAgIC5vbignZW5kJywgb25GaW5pc2hlZClcbiAgICAub24oJ2Vycm9yJywgb25GaW5pc2hlZClcbiAgICAub24oJ2Nsb3NlJywgb25BYm9ydClcblxuICBpZiAoYm9keS5yZXN1bWUpIHtcbiAgICBib2R5LnJlc3VtZSgpXG4gIH1cblxuICBzb2NrZXRcbiAgICAub24oJ2RyYWluJywgb25EcmFpbilcbiAgICAub24oJ2Vycm9yJywgb25GaW5pc2hlZClcbn1cblxuYXN5bmMgZnVuY3Rpb24gd3JpdGVCbG9iICh7IGgyc3RyZWFtLCBib2R5LCBjbGllbnQsIHJlcXVlc3QsIHNvY2tldCwgY29udGVudExlbmd0aCwgaGVhZGVyLCBleHBlY3RzUGF5bG9hZCB9KSB7XG4gIGFzc2VydChjb250ZW50TGVuZ3RoID09PSBib2R5LnNpemUsICdibG9iIGJvZHkgbXVzdCBoYXZlIGNvbnRlbnQgbGVuZ3RoJylcblxuICBjb25zdCBpc0gyID0gY2xpZW50W2tIVFRQQ29ublZlcnNpb25dID09PSAnaDInXG4gIHRyeSB7XG4gICAgaWYgKGNvbnRlbnRMZW5ndGggIT0gbnVsbCAmJiBjb250ZW50TGVuZ3RoICE9PSBib2R5LnNpemUpIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKVxuICAgIH1cblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5mcm9tKGF3YWl0IGJvZHkuYXJyYXlCdWZmZXIoKSlcblxuICAgIGlmIChpc0gyKSB7XG4gICAgICBoMnN0cmVhbS5jb3JrKClcbiAgICAgIGgyc3RyZWFtLndyaXRlKGJ1ZmZlcilcbiAgICAgIGgyc3RyZWFtLnVuY29yaygpXG4gICAgfSBlbHNlIHtcbiAgICAgIHNvY2tldC5jb3JrKClcbiAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9Y29udGVudC1sZW5ndGg6ICR7Y29udGVudExlbmd0aH1cXHJcXG5cXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIHNvY2tldC53cml0ZShidWZmZXIpXG4gICAgICBzb2NrZXQudW5jb3JrKClcbiAgICB9XG5cbiAgICByZXF1ZXN0Lm9uQm9keVNlbnQoYnVmZmVyKVxuICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG5cbiAgICBpZiAoIWV4cGVjdHNQYXlsb2FkKSB7XG4gICAgICBzb2NrZXRba1Jlc2V0XSA9IHRydWVcbiAgICB9XG5cbiAgICByZXN1bWUoY2xpZW50KVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICB1dGlsLmRlc3Ryb3koaXNIMiA/IGgyc3RyZWFtIDogc29ja2V0LCBlcnIpXG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gd3JpdGVJdGVyYWJsZSAoeyBoMnN0cmVhbSwgYm9keSwgY2xpZW50LCByZXF1ZXN0LCBzb2NrZXQsIGNvbnRlbnRMZW5ndGgsIGhlYWRlciwgZXhwZWN0c1BheWxvYWQgfSkge1xuICBhc3NlcnQoY29udGVudExlbmd0aCAhPT0gMCB8fCBjbGllbnRba1J1bm5pbmddID09PSAwLCAnaXRlcmF0b3IgYm9keSBjYW5ub3QgYmUgcGlwZWxpbmVkJylcblxuICBsZXQgY2FsbGJhY2sgPSBudWxsXG4gIGZ1bmN0aW9uIG9uRHJhaW4gKCkge1xuICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgY29uc3QgY2IgPSBjYWxsYmFja1xuICAgICAgY2FsbGJhY2sgPSBudWxsXG4gICAgICBjYigpXG4gICAgfVxuICB9XG5cbiAgY29uc3Qgd2FpdEZvckRyYWluID0gKCkgPT4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGFzc2VydChjYWxsYmFjayA9PT0gbnVsbClcblxuICAgIGlmIChzb2NrZXRba0Vycm9yXSkge1xuICAgICAgcmVqZWN0KHNvY2tldFtrRXJyb3JdKVxuICAgIH0gZWxzZSB7XG4gICAgICBjYWxsYmFjayA9IHJlc29sdmVcbiAgICB9XG4gIH0pXG5cbiAgaWYgKGNsaWVudFtrSFRUUENvbm5WZXJzaW9uXSA9PT0gJ2gyJykge1xuICAgIGgyc3RyZWFtXG4gICAgICAub24oJ2Nsb3NlJywgb25EcmFpbilcbiAgICAgIC5vbignZHJhaW4nLCBvbkRyYWluKVxuXG4gICAgdHJ5IHtcbiAgICAgIC8vIEl0J3MgdXAgdG8gdGhlIHVzZXIgdG8gc29tZWhvdyBhYm9ydCB0aGUgYXN5bmMgaXRlcmFibGUuXG4gICAgICBmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIGJvZHkpIHtcbiAgICAgICAgaWYgKHNvY2tldFtrRXJyb3JdKSB7XG4gICAgICAgICAgdGhyb3cgc29ja2V0W2tFcnJvcl1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlcyA9IGgyc3RyZWFtLndyaXRlKGNodW5rKVxuICAgICAgICByZXF1ZXN0Lm9uQm9keVNlbnQoY2h1bmspXG4gICAgICAgIGlmICghcmVzKSB7XG4gICAgICAgICAgYXdhaXQgd2FpdEZvckRyYWluKClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaDJzdHJlYW0uZGVzdHJveShlcnIpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHJlcXVlc3Qub25SZXF1ZXN0U2VudCgpXG4gICAgICBoMnN0cmVhbS5lbmQoKVxuICAgICAgaDJzdHJlYW1cbiAgICAgICAgLm9mZignY2xvc2UnLCBvbkRyYWluKVxuICAgICAgICAub2ZmKCdkcmFpbicsIG9uRHJhaW4pXG4gICAgfVxuXG4gICAgcmV0dXJuXG4gIH1cblxuICBzb2NrZXRcbiAgICAub24oJ2Nsb3NlJywgb25EcmFpbilcbiAgICAub24oJ2RyYWluJywgb25EcmFpbilcblxuICBjb25zdCB3cml0ZXIgPSBuZXcgQXN5bmNXcml0ZXIoeyBzb2NrZXQsIHJlcXVlc3QsIGNvbnRlbnRMZW5ndGgsIGNsaWVudCwgZXhwZWN0c1BheWxvYWQsIGhlYWRlciB9KVxuICB0cnkge1xuICAgIC8vIEl0J3MgdXAgdG8gdGhlIHVzZXIgdG8gc29tZWhvdyBhYm9ydCB0aGUgYXN5bmMgaXRlcmFibGUuXG4gICAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBib2R5KSB7XG4gICAgICBpZiAoc29ja2V0W2tFcnJvcl0pIHtcbiAgICAgICAgdGhyb3cgc29ja2V0W2tFcnJvcl1cbiAgICAgIH1cblxuICAgICAgaWYgKCF3cml0ZXIud3JpdGUoY2h1bmspKSB7XG4gICAgICAgIGF3YWl0IHdhaXRGb3JEcmFpbigpXG4gICAgICB9XG4gICAgfVxuXG4gICAgd3JpdGVyLmVuZCgpXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHdyaXRlci5kZXN0cm95KGVycilcbiAgfSBmaW5hbGx5IHtcbiAgICBzb2NrZXRcbiAgICAgIC5vZmYoJ2Nsb3NlJywgb25EcmFpbilcbiAgICAgIC5vZmYoJ2RyYWluJywgb25EcmFpbilcbiAgfVxufVxuXG5jbGFzcyBBc3luY1dyaXRlciB7XG4gIGNvbnN0cnVjdG9yICh7IHNvY2tldCwgcmVxdWVzdCwgY29udGVudExlbmd0aCwgY2xpZW50LCBleHBlY3RzUGF5bG9hZCwgaGVhZGVyIH0pIHtcbiAgICB0aGlzLnNvY2tldCA9IHNvY2tldFxuICAgIHRoaXMucmVxdWVzdCA9IHJlcXVlc3RcbiAgICB0aGlzLmNvbnRlbnRMZW5ndGggPSBjb250ZW50TGVuZ3RoXG4gICAgdGhpcy5jbGllbnQgPSBjbGllbnRcbiAgICB0aGlzLmJ5dGVzV3JpdHRlbiA9IDBcbiAgICB0aGlzLmV4cGVjdHNQYXlsb2FkID0gZXhwZWN0c1BheWxvYWRcbiAgICB0aGlzLmhlYWRlciA9IGhlYWRlclxuXG4gICAgc29ja2V0W2tXcml0aW5nXSA9IHRydWVcbiAgfVxuXG4gIHdyaXRlIChjaHVuaykge1xuICAgIGNvbnN0IHsgc29ja2V0LCByZXF1ZXN0LCBjb250ZW50TGVuZ3RoLCBjbGllbnQsIGJ5dGVzV3JpdHRlbiwgZXhwZWN0c1BheWxvYWQsIGhlYWRlciB9ID0gdGhpc1xuXG4gICAgaWYgKHNvY2tldFtrRXJyb3JdKSB7XG4gICAgICB0aHJvdyBzb2NrZXRba0Vycm9yXVxuICAgIH1cblxuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBjb25zdCBsZW4gPSBCdWZmZXIuYnl0ZUxlbmd0aChjaHVuaylcbiAgICBpZiAoIWxlbikge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICAvLyBXZSBzaG91bGQgZGVmZXIgd3JpdGluZyBjaHVua3MuXG4gICAgaWYgKGNvbnRlbnRMZW5ndGggIT09IG51bGwgJiYgYnl0ZXNXcml0dGVuICsgbGVuID4gY29udGVudExlbmd0aCkge1xuICAgICAgaWYgKGNsaWVudFtrU3RyaWN0Q29udGVudExlbmd0aF0pIHtcbiAgICAgICAgdGhyb3cgbmV3IFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcigpXG4gICAgICB9XG5cbiAgICAgIHByb2Nlc3MuZW1pdFdhcm5pbmcobmV3IFJlcXVlc3RDb250ZW50TGVuZ3RoTWlzbWF0Y2hFcnJvcigpKVxuICAgIH1cblxuICAgIHNvY2tldC5jb3JrKClcblxuICAgIGlmIChieXRlc1dyaXR0ZW4gPT09IDApIHtcbiAgICAgIGlmICghZXhwZWN0c1BheWxvYWQpIHtcbiAgICAgICAgc29ja2V0W2tSZXNldF0gPSB0cnVlXG4gICAgICB9XG5cbiAgICAgIGlmIChjb250ZW50TGVuZ3RoID09PSBudWxsKSB7XG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9dHJhbnNmZXItZW5jb2Rpbmc6IGNodW5rZWRcXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9Y29udGVudC1sZW5ndGg6ICR7Y29udGVudExlbmd0aH1cXHJcXG5cXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY29udGVudExlbmd0aCA9PT0gbnVsbCkge1xuICAgICAgc29ja2V0LndyaXRlKGBcXHJcXG4ke2xlbi50b1N0cmluZygxNil9XFxyXFxuYCwgJ2xhdGluMScpXG4gICAgfVxuXG4gICAgdGhpcy5ieXRlc1dyaXR0ZW4gKz0gbGVuXG5cbiAgICBjb25zdCByZXQgPSBzb2NrZXQud3JpdGUoY2h1bmspXG5cbiAgICBzb2NrZXQudW5jb3JrKClcblxuICAgIHJlcXVlc3Qub25Cb2R5U2VudChjaHVuaylcblxuICAgIGlmICghcmV0KSB7XG4gICAgICBpZiAoc29ja2V0W2tQYXJzZXJdLnRpbWVvdXQgJiYgc29ja2V0W2tQYXJzZXJdLnRpbWVvdXRUeXBlID09PSBUSU1FT1VUX0hFQURFUlMpIHtcbiAgICAgICAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2U6IG9ubHkgZm9yIGplc3RcbiAgICAgICAgaWYgKHNvY2tldFtrUGFyc2VyXS50aW1lb3V0LnJlZnJlc2gpIHtcbiAgICAgICAgICBzb2NrZXRba1BhcnNlcl0udGltZW91dC5yZWZyZXNoKClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGVuZCAoKSB7XG4gICAgY29uc3QgeyBzb2NrZXQsIGNvbnRlbnRMZW5ndGgsIGNsaWVudCwgYnl0ZXNXcml0dGVuLCBleHBlY3RzUGF5bG9hZCwgaGVhZGVyLCByZXF1ZXN0IH0gPSB0aGlzXG4gICAgcmVxdWVzdC5vblJlcXVlc3RTZW50KClcblxuICAgIHNvY2tldFtrV3JpdGluZ10gPSBmYWxzZVxuXG4gICAgaWYgKHNvY2tldFtrRXJyb3JdKSB7XG4gICAgICB0aHJvdyBzb2NrZXRba0Vycm9yXVxuICAgIH1cblxuICAgIGlmIChzb2NrZXQuZGVzdHJveWVkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoYnl0ZXNXcml0dGVuID09PSAwKSB7XG4gICAgICBpZiAoZXhwZWN0c1BheWxvYWQpIHtcbiAgICAgICAgLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzAjc2VjdGlvbi0zLjMuMlxuICAgICAgICAvLyBBIHVzZXIgYWdlbnQgU0hPVUxEIHNlbmQgYSBDb250ZW50LUxlbmd0aCBpbiBhIHJlcXVlc3QgbWVzc2FnZSB3aGVuXG4gICAgICAgIC8vIG5vIFRyYW5zZmVyLUVuY29kaW5nIGlzIHNlbnQgYW5kIHRoZSByZXF1ZXN0IG1ldGhvZCBkZWZpbmVzIGEgbWVhbmluZ1xuICAgICAgICAvLyBmb3IgYW4gZW5jbG9zZWQgcGF5bG9hZCBib2R5LlxuXG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9Y29udGVudC1sZW5ndGg6IDBcXHJcXG5cXHJcXG5gLCAnbGF0aW4xJylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNvY2tldC53cml0ZShgJHtoZWFkZXJ9XFxyXFxuYCwgJ2xhdGluMScpXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChjb250ZW50TGVuZ3RoID09PSBudWxsKSB7XG4gICAgICBzb2NrZXQud3JpdGUoJ1xcclxcbjBcXHJcXG5cXHJcXG4nLCAnbGF0aW4xJylcbiAgICB9XG5cbiAgICBpZiAoY29udGVudExlbmd0aCAhPT0gbnVsbCAmJiBieXRlc1dyaXR0ZW4gIT09IGNvbnRlbnRMZW5ndGgpIHtcbiAgICAgIGlmIChjbGllbnRba1N0cmljdENvbnRlbnRMZW5ndGhdKSB7XG4gICAgICAgIHRocm93IG5ldyBSZXF1ZXN0Q29udGVudExlbmd0aE1pc21hdGNoRXJyb3IoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcHJvY2Vzcy5lbWl0V2FybmluZyhuZXcgUmVxdWVzdENvbnRlbnRMZW5ndGhNaXNtYXRjaEVycm9yKCkpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHNvY2tldFtrUGFyc2VyXS50aW1lb3V0ICYmIHNvY2tldFtrUGFyc2VyXS50aW1lb3V0VHlwZSA9PT0gVElNRU9VVF9IRUFERVJTKSB7XG4gICAgICAvLyBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogb25seSBmb3IgamVzdFxuICAgICAgaWYgKHNvY2tldFtrUGFyc2VyXS50aW1lb3V0LnJlZnJlc2gpIHtcbiAgICAgICAgc29ja2V0W2tQYXJzZXJdLnRpbWVvdXQucmVmcmVzaCgpXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmVzdW1lKGNsaWVudClcbiAgfVxuXG4gIGRlc3Ryb3kgKGVycikge1xuICAgIGNvbnN0IHsgc29ja2V0LCBjbGllbnQgfSA9IHRoaXNcblxuICAgIHNvY2tldFtrV3JpdGluZ10gPSBmYWxzZVxuXG4gICAgaWYgKGVycikge1xuICAgICAgYXNzZXJ0KGNsaWVudFtrUnVubmluZ10gPD0gMSwgJ3BpcGVsaW5lIHNob3VsZCBvbmx5IGNvbnRhaW4gdGhpcyByZXF1ZXN0JylcbiAgICAgIHV0aWwuZGVzdHJveShzb2NrZXQsIGVycilcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZXJyb3JSZXF1ZXN0IChjbGllbnQsIHJlcXVlc3QsIGVycikge1xuICB0cnkge1xuICAgIHJlcXVlc3Qub25FcnJvcihlcnIpXG4gICAgYXNzZXJ0KHJlcXVlc3QuYWJvcnRlZClcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgY2xpZW50LmVtaXQoJ2Vycm9yJywgZXJyKVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gQ2xpZW50XG4iLCAiLyogZXNsaW50LWRpc2FibGUgKi9cblxuJ3VzZSBzdHJpY3QnXG5cbi8vIEV4dHJhY3RlZCBmcm9tIG5vZGUvbGliL2ludGVybmFsL2ZpeGVkX3F1ZXVlLmpzXG5cbi8vIEN1cnJlbnRseSBvcHRpbWFsIHF1ZXVlIHNpemUsIHRlc3RlZCBvbiBWOCA2LjAgLSA2LjYuIE11c3QgYmUgcG93ZXIgb2YgdHdvLlxuY29uc3Qga1NpemUgPSAyMDQ4O1xuY29uc3Qga01hc2sgPSBrU2l6ZSAtIDE7XG5cbi8vIFRoZSBGaXhlZFF1ZXVlIGlzIGltcGxlbWVudGVkIGFzIGEgc2luZ2x5LWxpbmtlZCBsaXN0IG9mIGZpeGVkLXNpemVcbi8vIGNpcmN1bGFyIGJ1ZmZlcnMuIEl0IGxvb2tzIHNvbWV0aGluZyBsaWtlIHRoaXM6XG4vL1xuLy8gIGhlYWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFpbFxuLy8gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4vLyAgICB2ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZcbi8vICstLS0tLS0tLS0tLSsgPC0tLS0tXFwgICAgICAgKy0tLS0tLS0tLS0tKyA8LS0tLS0tXFwgICAgICAgICArLS0tLS0tLS0tLS0rXG4vLyB8ICBbbnVsbF0gICB8ICAgICAgICBcXC0tLS0tIHwgICBuZXh0ICAgIHwgICAgICAgICBcXC0tLS0tLS0gfCAgIG5leHQgICAgfFxuLy8gKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICstLS0tLS0tLS0tLSsgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0rXG4vLyB8ICAgaXRlbSAgICB8IDwtLSBib3R0b20gICAgfCAgIGl0ZW0gICAgfCA8LS0gYm90dG9tICAgICAgIHwgIFtlbXB0eV0gIHxcbi8vIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgICAgfCAgW2VtcHR5XSAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICAgICB8ICBbZW1wdHldICB8XG4vLyB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgICAgIHwgIFtlbXB0eV0gIHxcbi8vIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgIGJvdHRvbSAtLT4gfCAgIGl0ZW0gICAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8XG4vLyB8ICAgIC4uLiAgICB8ICAgICAgICAgICAgICAgfCAgICAuLi4gICAgfCAgICAgICAgICAgICAgICAgIHwgICAgLi4uICAgIHxcbi8vIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHwgICAgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8XG4vLyB8ICBbZW1wdHldICB8IDwtLSB0b3AgICAgICAgfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHxcbi8vIHwgIFtlbXB0eV0gIHwgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8ICAgICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfFxuLy8gfCAgW2VtcHR5XSAgfCAgICAgICAgICAgICAgIHwgIFtlbXB0eV0gIHwgPC0tIHRvcCAgdG9wIC0tPiB8ICBbZW1wdHldICB8XG4vLyArLS0tLS0tLS0tLS0rICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLStcbi8vXG4vLyBPciwgaWYgdGhlcmUgaXMgb25seSBvbmUgY2lyY3VsYXIgYnVmZmVyLCBpdCBsb29rcyBzb21ldGhpbmdcbi8vIGxpa2UgZWl0aGVyIG9mIHRoZXNlOlxuLy9cbi8vICBoZWFkICAgdGFpbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWQgICB0YWlsXG4vLyAgICB8ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgIHxcbi8vICAgIHYgICAgIHYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdiAgICAgdlxuLy8gKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0rXG4vLyB8ICBbbnVsbF0gICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFtudWxsXSAgIHxcbi8vICstLS0tLS0tLS0tLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tK1xuLy8gfCAgW2VtcHR5XSAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgaXRlbSAgICB8XG4vLyB8ICBbZW1wdHldICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICBpdGVtICAgIHxcbi8vIHwgICBpdGVtICAgIHwgPC0tIGJvdHRvbSAgICAgICAgICAgIHRvcCAtLT4gfCAgW2VtcHR5XSAgfFxuLy8gfCAgIGl0ZW0gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBbZW1wdHldICB8XG4vLyB8ICBbZW1wdHldICB8IDwtLSB0b3AgICAgICAgICAgICBib3R0b20gLS0+IHwgICBpdGVtICAgIHxcbi8vIHwgIFtlbXB0eV0gIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIGl0ZW0gICAgfFxuLy8gKy0tLS0tLS0tLS0tKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0rXG4vL1xuLy8gQWRkaW5nIGEgdmFsdWUgbWVhbnMgbW92aW5nIGB0b3BgIGZvcndhcmQgYnkgb25lLCByZW1vdmluZyBtZWFuc1xuLy8gbW92aW5nIGBib3R0b21gIGZvcndhcmQgYnkgb25lLiBBZnRlciByZWFjaGluZyB0aGUgZW5kLCB0aGUgcXVldWVcbi8vIHdyYXBzIGFyb3VuZC5cbi8vXG4vLyBXaGVuIGB0b3AgPT09IGJvdHRvbWAgdGhlIGN1cnJlbnQgcXVldWUgaXMgZW1wdHkgYW5kIHdoZW5cbi8vIGB0b3AgKyAxID09PSBib3R0b21gIGl0J3MgZnVsbC4gVGhpcyB3YXN0ZXMgYSBzaW5nbGUgc3BhY2Ugb2Ygc3RvcmFnZVxuLy8gYnV0IGFsbG93cyBtdWNoIHF1aWNrZXIgY2hlY2tzLlxuXG5jbGFzcyBGaXhlZENpcmN1bGFyQnVmZmVyIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5ib3R0b20gPSAwO1xuICAgIHRoaXMudG9wID0gMDtcbiAgICB0aGlzLmxpc3QgPSBuZXcgQXJyYXkoa1NpemUpO1xuICAgIHRoaXMubmV4dCA9IG51bGw7XG4gIH1cblxuICBpc0VtcHR5KCkge1xuICAgIHJldHVybiB0aGlzLnRvcCA9PT0gdGhpcy5ib3R0b207XG4gIH1cblxuICBpc0Z1bGwoKSB7XG4gICAgcmV0dXJuICgodGhpcy50b3AgKyAxKSAmIGtNYXNrKSA9PT0gdGhpcy5ib3R0b207XG4gIH1cblxuICBwdXNoKGRhdGEpIHtcbiAgICB0aGlzLmxpc3RbdGhpcy50b3BdID0gZGF0YTtcbiAgICB0aGlzLnRvcCA9ICh0aGlzLnRvcCArIDEpICYga01hc2s7XG4gIH1cblxuICBzaGlmdCgpIHtcbiAgICBjb25zdCBuZXh0SXRlbSA9IHRoaXMubGlzdFt0aGlzLmJvdHRvbV07XG4gICAgaWYgKG5leHRJdGVtID09PSB1bmRlZmluZWQpXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB0aGlzLmxpc3RbdGhpcy5ib3R0b21dID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuYm90dG9tID0gKHRoaXMuYm90dG9tICsgMSkgJiBrTWFzaztcbiAgICByZXR1cm4gbmV4dEl0ZW07XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjbGFzcyBGaXhlZFF1ZXVlIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5oZWFkID0gdGhpcy50YWlsID0gbmV3IEZpeGVkQ2lyY3VsYXJCdWZmZXIoKTtcbiAgfVxuXG4gIGlzRW1wdHkoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGVhZC5pc0VtcHR5KCk7XG4gIH1cblxuICBwdXNoKGRhdGEpIHtcbiAgICBpZiAodGhpcy5oZWFkLmlzRnVsbCgpKSB7XG4gICAgICAvLyBIZWFkIGlzIGZ1bGw6IENyZWF0ZXMgYSBuZXcgcXVldWUsIHNldHMgdGhlIG9sZCBxdWV1ZSdzIGAubmV4dGAgdG8gaXQsXG4gICAgICAvLyBhbmQgc2V0cyBpdCBhcyB0aGUgbmV3IG1haW4gcXVldWUuXG4gICAgICB0aGlzLmhlYWQgPSB0aGlzLmhlYWQubmV4dCA9IG5ldyBGaXhlZENpcmN1bGFyQnVmZmVyKCk7XG4gICAgfVxuICAgIHRoaXMuaGVhZC5wdXNoKGRhdGEpO1xuICB9XG5cbiAgc2hpZnQoKSB7XG4gICAgY29uc3QgdGFpbCA9IHRoaXMudGFpbDtcbiAgICBjb25zdCBuZXh0ID0gdGFpbC5zaGlmdCgpO1xuICAgIGlmICh0YWlsLmlzRW1wdHkoKSAmJiB0YWlsLm5leHQgIT09IG51bGwpIHtcbiAgICAgIC8vIElmIHRoZXJlIGlzIGFub3RoZXIgcXVldWUsIGl0IGZvcm1zIHRoZSBuZXcgdGFpbC5cbiAgICAgIHRoaXMudGFpbCA9IHRhaWwubmV4dDtcbiAgICB9XG4gICAgcmV0dXJuIG5leHQ7XG4gIH1cbn07XG4iLCAiY29uc3QgeyBrRnJlZSwga0Nvbm5lY3RlZCwga1BlbmRpbmcsIGtRdWV1ZWQsIGtSdW5uaW5nLCBrU2l6ZSB9ID0gcmVxdWlyZSgnLi9jb3JlL3N5bWJvbHMnKVxuY29uc3Qga1Bvb2wgPSBTeW1ib2woJ3Bvb2wnKVxuXG5jbGFzcyBQb29sU3RhdHMge1xuICBjb25zdHJ1Y3RvciAocG9vbCkge1xuICAgIHRoaXNba1Bvb2xdID0gcG9vbFxuICB9XG5cbiAgZ2V0IGNvbm5lY3RlZCAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1Bvb2xdW2tDb25uZWN0ZWRdXG4gIH1cblxuICBnZXQgZnJlZSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1Bvb2xdW2tGcmVlXVxuICB9XG5cbiAgZ2V0IHBlbmRpbmcgKCkge1xuICAgIHJldHVybiB0aGlzW2tQb29sXVtrUGVuZGluZ11cbiAgfVxuXG4gIGdldCBxdWV1ZWQgKCkge1xuICAgIHJldHVybiB0aGlzW2tQb29sXVtrUXVldWVkXVxuICB9XG5cbiAgZ2V0IHJ1bm5pbmcgKCkge1xuICAgIHJldHVybiB0aGlzW2tQb29sXVtrUnVubmluZ11cbiAgfVxuXG4gIGdldCBzaXplICgpIHtcbiAgICByZXR1cm4gdGhpc1trUG9vbF1ba1NpemVdXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBQb29sU3RhdHNcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgRGlzcGF0Y2hlckJhc2UgPSByZXF1aXJlKCcuL2Rpc3BhdGNoZXItYmFzZScpXG5jb25zdCBGaXhlZFF1ZXVlID0gcmVxdWlyZSgnLi9ub2RlL2ZpeGVkLXF1ZXVlJylcbmNvbnN0IHsga0Nvbm5lY3RlZCwga1NpemUsIGtSdW5uaW5nLCBrUGVuZGluZywga1F1ZXVlZCwga0J1c3ksIGtGcmVlLCBrVXJsLCBrQ2xvc2UsIGtEZXN0cm95LCBrRGlzcGF0Y2ggfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcbmNvbnN0IFBvb2xTdGF0cyA9IHJlcXVpcmUoJy4vcG9vbC1zdGF0cycpXG5cbmNvbnN0IGtDbGllbnRzID0gU3ltYm9sKCdjbGllbnRzJylcbmNvbnN0IGtOZWVkRHJhaW4gPSBTeW1ib2woJ25lZWREcmFpbicpXG5jb25zdCBrUXVldWUgPSBTeW1ib2woJ3F1ZXVlJylcbmNvbnN0IGtDbG9zZWRSZXNvbHZlID0gU3ltYm9sKCdjbG9zZWQgcmVzb2x2ZScpXG5jb25zdCBrT25EcmFpbiA9IFN5bWJvbCgnb25EcmFpbicpXG5jb25zdCBrT25Db25uZWN0ID0gU3ltYm9sKCdvbkNvbm5lY3QnKVxuY29uc3Qga09uRGlzY29ubmVjdCA9IFN5bWJvbCgnb25EaXNjb25uZWN0JylcbmNvbnN0IGtPbkNvbm5lY3Rpb25FcnJvciA9IFN5bWJvbCgnb25Db25uZWN0aW9uRXJyb3InKVxuY29uc3Qga0dldERpc3BhdGNoZXIgPSBTeW1ib2woJ2dldCBkaXNwYXRjaGVyJylcbmNvbnN0IGtBZGRDbGllbnQgPSBTeW1ib2woJ2FkZCBjbGllbnQnKVxuY29uc3Qga1JlbW92ZUNsaWVudCA9IFN5bWJvbCgncmVtb3ZlIGNsaWVudCcpXG5jb25zdCBrU3RhdHMgPSBTeW1ib2woJ3N0YXRzJylcblxuY2xhc3MgUG9vbEJhc2UgZXh0ZW5kcyBEaXNwYXRjaGVyQmFzZSB7XG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICBzdXBlcigpXG5cbiAgICB0aGlzW2tRdWV1ZV0gPSBuZXcgRml4ZWRRdWV1ZSgpXG4gICAgdGhpc1trQ2xpZW50c10gPSBbXVxuICAgIHRoaXNba1F1ZXVlZF0gPSAwXG5cbiAgICBjb25zdCBwb29sID0gdGhpc1xuXG4gICAgdGhpc1trT25EcmFpbl0gPSBmdW5jdGlvbiBvbkRyYWluIChvcmlnaW4sIHRhcmdldHMpIHtcbiAgICAgIGNvbnN0IHF1ZXVlID0gcG9vbFtrUXVldWVdXG5cbiAgICAgIGxldCBuZWVkRHJhaW4gPSBmYWxzZVxuXG4gICAgICB3aGlsZSAoIW5lZWREcmFpbikge1xuICAgICAgICBjb25zdCBpdGVtID0gcXVldWUuc2hpZnQoKVxuICAgICAgICBpZiAoIWl0ZW0pIHtcbiAgICAgICAgICBicmVha1xuICAgICAgICB9XG4gICAgICAgIHBvb2xba1F1ZXVlZF0tLVxuICAgICAgICBuZWVkRHJhaW4gPSAhdGhpcy5kaXNwYXRjaChpdGVtLm9wdHMsIGl0ZW0uaGFuZGxlcilcbiAgICAgIH1cblxuICAgICAgdGhpc1trTmVlZERyYWluXSA9IG5lZWREcmFpblxuXG4gICAgICBpZiAoIXRoaXNba05lZWREcmFpbl0gJiYgcG9vbFtrTmVlZERyYWluXSkge1xuICAgICAgICBwb29sW2tOZWVkRHJhaW5dID0gZmFsc2VcbiAgICAgICAgcG9vbC5lbWl0KCdkcmFpbicsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdKVxuICAgICAgfVxuXG4gICAgICBpZiAocG9vbFtrQ2xvc2VkUmVzb2x2ZV0gJiYgcXVldWUuaXNFbXB0eSgpKSB7XG4gICAgICAgIFByb21pc2VcbiAgICAgICAgICAuYWxsKHBvb2xba0NsaWVudHNdLm1hcChjID0+IGMuY2xvc2UoKSkpXG4gICAgICAgICAgLnRoZW4ocG9vbFtrQ2xvc2VkUmVzb2x2ZV0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpc1trT25Db25uZWN0XSA9IChvcmlnaW4sIHRhcmdldHMpID0+IHtcbiAgICAgIHBvb2wuZW1pdCgnY29ubmVjdCcsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdKVxuICAgIH1cblxuICAgIHRoaXNba09uRGlzY29ubmVjdF0gPSAob3JpZ2luLCB0YXJnZXRzLCBlcnIpID0+IHtcbiAgICAgIHBvb2wuZW1pdCgnZGlzY29ubmVjdCcsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdLCBlcnIpXG4gICAgfVxuXG4gICAgdGhpc1trT25Db25uZWN0aW9uRXJyb3JdID0gKG9yaWdpbiwgdGFyZ2V0cywgZXJyKSA9PiB7XG4gICAgICBwb29sLmVtaXQoJ2Nvbm5lY3Rpb25FcnJvcicsIG9yaWdpbiwgW3Bvb2wsIC4uLnRhcmdldHNdLCBlcnIpXG4gICAgfVxuXG4gICAgdGhpc1trU3RhdHNdID0gbmV3IFBvb2xTdGF0cyh0aGlzKVxuICB9XG5cbiAgZ2V0IFtrQnVzeV0gKCkge1xuICAgIHJldHVybiB0aGlzW2tOZWVkRHJhaW5dXG4gIH1cblxuICBnZXQgW2tDb25uZWN0ZWRdICgpIHtcbiAgICByZXR1cm4gdGhpc1trQ2xpZW50c10uZmlsdGVyKGNsaWVudCA9PiBjbGllbnRba0Nvbm5lY3RlZF0pLmxlbmd0aFxuICB9XG5cbiAgZ2V0IFtrRnJlZV0gKCkge1xuICAgIHJldHVybiB0aGlzW2tDbGllbnRzXS5maWx0ZXIoY2xpZW50ID0+IGNsaWVudFtrQ29ubmVjdGVkXSAmJiAhY2xpZW50W2tOZWVkRHJhaW5dKS5sZW5ndGhcbiAgfVxuXG4gIGdldCBba1BlbmRpbmddICgpIHtcbiAgICBsZXQgcmV0ID0gdGhpc1trUXVldWVkXVxuICAgIGZvciAoY29uc3QgeyBba1BlbmRpbmddOiBwZW5kaW5nIH0gb2YgdGhpc1trQ2xpZW50c10pIHtcbiAgICAgIHJldCArPSBwZW5kaW5nXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGdldCBba1J1bm5pbmddICgpIHtcbiAgICBsZXQgcmV0ID0gMFxuICAgIGZvciAoY29uc3QgeyBba1J1bm5pbmddOiBydW5uaW5nIH0gb2YgdGhpc1trQ2xpZW50c10pIHtcbiAgICAgIHJldCArPSBydW5uaW5nXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGdldCBba1NpemVdICgpIHtcbiAgICBsZXQgcmV0ID0gdGhpc1trUXVldWVkXVxuICAgIGZvciAoY29uc3QgeyBba1NpemVdOiBzaXplIH0gb2YgdGhpc1trQ2xpZW50c10pIHtcbiAgICAgIHJldCArPSBzaXplXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIGdldCBzdGF0cyAoKSB7XG4gICAgcmV0dXJuIHRoaXNba1N0YXRzXVxuICB9XG5cbiAgYXN5bmMgW2tDbG9zZV0gKCkge1xuICAgIGlmICh0aGlzW2tRdWV1ZV0uaXNFbXB0eSgpKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGwodGhpc1trQ2xpZW50c10ubWFwKGMgPT4gYy5jbG9zZSgpKSlcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIHRoaXNba0Nsb3NlZFJlc29sdmVdID0gcmVzb2x2ZVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBhc3luYyBba0Rlc3Ryb3ldIChlcnIpIHtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgY29uc3QgaXRlbSA9IHRoaXNba1F1ZXVlXS5zaGlmdCgpXG4gICAgICBpZiAoIWl0ZW0pIHtcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICAgIGl0ZW0uaGFuZGxlci5vbkVycm9yKGVycilcbiAgICB9XG5cbiAgICByZXR1cm4gUHJvbWlzZS5hbGwodGhpc1trQ2xpZW50c10ubWFwKGMgPT4gYy5kZXN0cm95KGVycikpKVxuICB9XG5cbiAgW2tEaXNwYXRjaF0gKG9wdHMsIGhhbmRsZXIpIHtcbiAgICBjb25zdCBkaXNwYXRjaGVyID0gdGhpc1trR2V0RGlzcGF0Y2hlcl0oKVxuXG4gICAgaWYgKCFkaXNwYXRjaGVyKSB7XG4gICAgICB0aGlzW2tOZWVkRHJhaW5dID0gdHJ1ZVxuICAgICAgdGhpc1trUXVldWVdLnB1c2goeyBvcHRzLCBoYW5kbGVyIH0pXG4gICAgICB0aGlzW2tRdWV1ZWRdKytcbiAgICB9IGVsc2UgaWYgKCFkaXNwYXRjaGVyLmRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpKSB7XG4gICAgICBkaXNwYXRjaGVyW2tOZWVkRHJhaW5dID0gdHJ1ZVxuICAgICAgdGhpc1trTmVlZERyYWluXSA9ICF0aGlzW2tHZXREaXNwYXRjaGVyXSgpXG4gICAgfVxuXG4gICAgcmV0dXJuICF0aGlzW2tOZWVkRHJhaW5dXG4gIH1cblxuICBba0FkZENsaWVudF0gKGNsaWVudCkge1xuICAgIGNsaWVudFxuICAgICAgLm9uKCdkcmFpbicsIHRoaXNba09uRHJhaW5dKVxuICAgICAgLm9uKCdjb25uZWN0JywgdGhpc1trT25Db25uZWN0XSlcbiAgICAgIC5vbignZGlzY29ubmVjdCcsIHRoaXNba09uRGlzY29ubmVjdF0pXG4gICAgICAub24oJ2Nvbm5lY3Rpb25FcnJvcicsIHRoaXNba09uQ29ubmVjdGlvbkVycm9yXSlcblxuICAgIHRoaXNba0NsaWVudHNdLnB1c2goY2xpZW50KVxuXG4gICAgaWYgKHRoaXNba05lZWREcmFpbl0pIHtcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soKCkgPT4ge1xuICAgICAgICBpZiAodGhpc1trTmVlZERyYWluXSkge1xuICAgICAgICAgIHRoaXNba09uRHJhaW5dKGNsaWVudFtrVXJsXSwgW3RoaXMsIGNsaWVudF0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIFtrUmVtb3ZlQ2xpZW50XSAoY2xpZW50KSB7XG4gICAgY2xpZW50LmNsb3NlKCgpID0+IHtcbiAgICAgIGNvbnN0IGlkeCA9IHRoaXNba0NsaWVudHNdLmluZGV4T2YoY2xpZW50KVxuICAgICAgaWYgKGlkeCAhPT0gLTEpIHtcbiAgICAgICAgdGhpc1trQ2xpZW50c10uc3BsaWNlKGlkeCwgMSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgdGhpc1trTmVlZERyYWluXSA9IHRoaXNba0NsaWVudHNdLnNvbWUoZGlzcGF0Y2hlciA9PiAoXG4gICAgICAhZGlzcGF0Y2hlcltrTmVlZERyYWluXSAmJlxuICAgICAgZGlzcGF0Y2hlci5jbG9zZWQgIT09IHRydWUgJiZcbiAgICAgIGRpc3BhdGNoZXIuZGVzdHJveWVkICE9PSB0cnVlXG4gICAgKSlcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgUG9vbEJhc2UsXG4gIGtDbGllbnRzLFxuICBrTmVlZERyYWluLFxuICBrQWRkQ2xpZW50LFxuICBrUmVtb3ZlQ2xpZW50LFxuICBrR2V0RGlzcGF0Y2hlclxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIFBvb2xCYXNlLFxuICBrQ2xpZW50cyxcbiAga05lZWREcmFpbixcbiAga0FkZENsaWVudCxcbiAga0dldERpc3BhdGNoZXJcbn0gPSByZXF1aXJlKCcuL3Bvb2wtYmFzZScpXG5jb25zdCBDbGllbnQgPSByZXF1aXJlKCcuL2NsaWVudCcpXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yXG59ID0gcmVxdWlyZSgnLi9jb3JlL2Vycm9ycycpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBrVXJsLCBrSW50ZXJjZXB0b3JzIH0gPSByZXF1aXJlKCcuL2NvcmUvc3ltYm9scycpXG5jb25zdCBidWlsZENvbm5lY3RvciA9IHJlcXVpcmUoJy4vY29yZS9jb25uZWN0JylcblxuY29uc3Qga09wdGlvbnMgPSBTeW1ib2woJ29wdGlvbnMnKVxuY29uc3Qga0Nvbm5lY3Rpb25zID0gU3ltYm9sKCdjb25uZWN0aW9ucycpXG5jb25zdCBrRmFjdG9yeSA9IFN5bWJvbCgnZmFjdG9yeScpXG5cbmZ1bmN0aW9uIGRlZmF1bHRGYWN0b3J5IChvcmlnaW4sIG9wdHMpIHtcbiAgcmV0dXJuIG5ldyBDbGllbnQob3JpZ2luLCBvcHRzKVxufVxuXG5jbGFzcyBQb29sIGV4dGVuZHMgUG9vbEJhc2Uge1xuICBjb25zdHJ1Y3RvciAob3JpZ2luLCB7XG4gICAgY29ubmVjdGlvbnMsXG4gICAgZmFjdG9yeSA9IGRlZmF1bHRGYWN0b3J5LFxuICAgIGNvbm5lY3QsXG4gICAgY29ubmVjdFRpbWVvdXQsXG4gICAgdGxzLFxuICAgIG1heENhY2hlZFNlc3Npb25zLFxuICAgIHNvY2tldFBhdGgsXG4gICAgYXV0b1NlbGVjdEZhbWlseSxcbiAgICBhdXRvU2VsZWN0RmFtaWx5QXR0ZW1wdFRpbWVvdXQsXG4gICAgYWxsb3dIMixcbiAgICAuLi5vcHRpb25zXG4gIH0gPSB7fSkge1xuICAgIHN1cGVyKClcblxuICAgIGlmIChjb25uZWN0aW9ucyAhPSBudWxsICYmICghTnVtYmVyLmlzRmluaXRlKGNvbm5lY3Rpb25zKSB8fCBjb25uZWN0aW9ucyA8IDApKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgY29ubmVjdGlvbnMnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZmFjdG9yeSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdmYWN0b3J5IG11c3QgYmUgYSBmdW5jdGlvbi4nKVxuICAgIH1cblxuICAgIGlmIChjb25uZWN0ICE9IG51bGwgJiYgdHlwZW9mIGNvbm5lY3QgIT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIGNvbm5lY3QgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2Nvbm5lY3QgbXVzdCBiZSBhIGZ1bmN0aW9uIG9yIGFuIG9iamVjdCcpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjb25uZWN0ICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25uZWN0ID0gYnVpbGRDb25uZWN0b3Ioe1xuICAgICAgICAuLi50bHMsXG4gICAgICAgIG1heENhY2hlZFNlc3Npb25zLFxuICAgICAgICBhbGxvd0gyLFxuICAgICAgICBzb2NrZXRQYXRoLFxuICAgICAgICB0aW1lb3V0OiBjb25uZWN0VGltZW91dCxcbiAgICAgICAgLi4uKHV0aWwubm9kZUhhc0F1dG9TZWxlY3RGYW1pbHkgJiYgYXV0b1NlbGVjdEZhbWlseSA/IHsgYXV0b1NlbGVjdEZhbWlseSwgYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IH0gOiB1bmRlZmluZWQpLFxuICAgICAgICAuLi5jb25uZWN0XG4gICAgICB9KVxuICAgIH1cblxuICAgIHRoaXNba0ludGVyY2VwdG9yc10gPSBvcHRpb25zLmludGVyY2VwdG9ycyAmJiBvcHRpb25zLmludGVyY2VwdG9ycy5Qb29sICYmIEFycmF5LmlzQXJyYXkob3B0aW9ucy5pbnRlcmNlcHRvcnMuUG9vbClcbiAgICAgID8gb3B0aW9ucy5pbnRlcmNlcHRvcnMuUG9vbFxuICAgICAgOiBbXVxuICAgIHRoaXNba0Nvbm5lY3Rpb25zXSA9IGNvbm5lY3Rpb25zIHx8IG51bGxcbiAgICB0aGlzW2tVcmxdID0gdXRpbC5wYXJzZU9yaWdpbihvcmlnaW4pXG4gICAgdGhpc1trT3B0aW9uc10gPSB7IC4uLnV0aWwuZGVlcENsb25lKG9wdGlvbnMpLCBjb25uZWN0LCBhbGxvd0gyIH1cbiAgICB0aGlzW2tPcHRpb25zXS5pbnRlcmNlcHRvcnMgPSBvcHRpb25zLmludGVyY2VwdG9yc1xuICAgICAgPyB7IC4uLm9wdGlvbnMuaW50ZXJjZXB0b3JzIH1cbiAgICAgIDogdW5kZWZpbmVkXG4gICAgdGhpc1trRmFjdG9yeV0gPSBmYWN0b3J5XG5cbiAgICB0aGlzLm9uKCdjb25uZWN0aW9uRXJyb3InLCAob3JpZ2luLCB0YXJnZXRzLCBlcnJvcikgPT4ge1xuICAgICAgLy8gSWYgYSBjb25uZWN0aW9uIGVycm9yIG9jY3Vycywgd2UgcmVtb3ZlIHRoZSBjbGllbnQgZnJvbSB0aGUgcG9vbCxcbiAgICAgIC8vIGFuZCBlbWl0IGEgY29ubmVjdGlvbkVycm9yIGV2ZW50LiBUaGV5IHdpbGwgbm90IGJlIHJlLXVzZWQuXG4gICAgICAvLyBGaXhlcyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL3VuZGljaS9pc3N1ZXMvMzg5NVxuICAgICAgZm9yIChjb25zdCB0YXJnZXQgb2YgdGFyZ2V0cykge1xuICAgICAgICAvLyBEbyBub3QgdXNlIGtSZW1vdmVDbGllbnQgaGVyZSwgYXMgaXQgd2lsbCBjbG9zZSB0aGUgY2xpZW50LFxuICAgICAgICAvLyBidXQgdGhlIGNsaWVudCBjYW5ub3QgYmUgY2xvc2VkIGluIHRoaXMgc3RhdGUuXG4gICAgICAgIGNvbnN0IGlkeCA9IHRoaXNba0NsaWVudHNdLmluZGV4T2YodGFyZ2V0KVxuICAgICAgICBpZiAoaWR4ICE9PSAtMSkge1xuICAgICAgICAgIHRoaXNba0NsaWVudHNdLnNwbGljZShpZHgsIDEpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgW2tHZXREaXNwYXRjaGVyXSAoKSB7XG4gICAgbGV0IGRpc3BhdGNoZXIgPSB0aGlzW2tDbGllbnRzXS5maW5kKGRpc3BhdGNoZXIgPT4gIWRpc3BhdGNoZXJba05lZWREcmFpbl0pXG5cbiAgICBpZiAoZGlzcGF0Y2hlcikge1xuICAgICAgcmV0dXJuIGRpc3BhdGNoZXJcbiAgICB9XG5cbiAgICBpZiAoIXRoaXNba0Nvbm5lY3Rpb25zXSB8fCB0aGlzW2tDbGllbnRzXS5sZW5ndGggPCB0aGlzW2tDb25uZWN0aW9uc10pIHtcbiAgICAgIGRpc3BhdGNoZXIgPSB0aGlzW2tGYWN0b3J5XSh0aGlzW2tVcmxdLCB0aGlzW2tPcHRpb25zXSlcbiAgICAgIHRoaXNba0FkZENsaWVudF0oZGlzcGF0Y2hlcilcbiAgICB9XG5cbiAgICByZXR1cm4gZGlzcGF0Y2hlclxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gUG9vbFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIEJhbGFuY2VkUG9vbE1pc3NpbmdVcHN0cmVhbUVycm9yLFxuICBJbnZhbGlkQXJndW1lbnRFcnJvclxufSA9IHJlcXVpcmUoJy4vY29yZS9lcnJvcnMnKVxuY29uc3Qge1xuICBQb29sQmFzZSxcbiAga0NsaWVudHMsXG4gIGtOZWVkRHJhaW4sXG4gIGtBZGRDbGllbnQsXG4gIGtSZW1vdmVDbGllbnQsXG4gIGtHZXREaXNwYXRjaGVyXG59ID0gcmVxdWlyZSgnLi9wb29sLWJhc2UnKVxuY29uc3QgUG9vbCA9IHJlcXVpcmUoJy4vcG9vbCcpXG5jb25zdCB7IGtVcmwsIGtJbnRlcmNlcHRvcnMgfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcbmNvbnN0IHsgcGFyc2VPcmlnaW4gfSA9IHJlcXVpcmUoJy4vY29yZS91dGlsJylcbmNvbnN0IGtGYWN0b3J5ID0gU3ltYm9sKCdmYWN0b3J5JylcblxuY29uc3Qga09wdGlvbnMgPSBTeW1ib2woJ29wdGlvbnMnKVxuY29uc3Qga0dyZWF0ZXN0Q29tbW9uRGl2aXNvciA9IFN5bWJvbCgna0dyZWF0ZXN0Q29tbW9uRGl2aXNvcicpXG5jb25zdCBrQ3VycmVudFdlaWdodCA9IFN5bWJvbCgna0N1cnJlbnRXZWlnaHQnKVxuY29uc3Qga0luZGV4ID0gU3ltYm9sKCdrSW5kZXgnKVxuY29uc3Qga1dlaWdodCA9IFN5bWJvbCgna1dlaWdodCcpXG5jb25zdCBrTWF4V2VpZ2h0UGVyU2VydmVyID0gU3ltYm9sKCdrTWF4V2VpZ2h0UGVyU2VydmVyJylcbmNvbnN0IGtFcnJvclBlbmFsdHkgPSBTeW1ib2woJ2tFcnJvclBlbmFsdHknKVxuXG5mdW5jdGlvbiBnZXRHcmVhdGVzdENvbW1vbkRpdmlzb3IgKGEsIGIpIHtcbiAgaWYgKGIgPT09IDApIHJldHVybiBhXG4gIHJldHVybiBnZXRHcmVhdGVzdENvbW1vbkRpdmlzb3IoYiwgYSAlIGIpXG59XG5cbmZ1bmN0aW9uIGRlZmF1bHRGYWN0b3J5IChvcmlnaW4sIG9wdHMpIHtcbiAgcmV0dXJuIG5ldyBQb29sKG9yaWdpbiwgb3B0cylcbn1cblxuY2xhc3MgQmFsYW5jZWRQb29sIGV4dGVuZHMgUG9vbEJhc2Uge1xuICBjb25zdHJ1Y3RvciAodXBzdHJlYW1zID0gW10sIHsgZmFjdG9yeSA9IGRlZmF1bHRGYWN0b3J5LCAuLi5vcHRzIH0gPSB7fSkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXNba09wdGlvbnNdID0gb3B0c1xuICAgIHRoaXNba0luZGV4XSA9IC0xXG4gICAgdGhpc1trQ3VycmVudFdlaWdodF0gPSAwXG5cbiAgICB0aGlzW2tNYXhXZWlnaHRQZXJTZXJ2ZXJdID0gdGhpc1trT3B0aW9uc10ubWF4V2VpZ2h0UGVyU2VydmVyIHx8IDEwMFxuICAgIHRoaXNba0Vycm9yUGVuYWx0eV0gPSB0aGlzW2tPcHRpb25zXS5lcnJvclBlbmFsdHkgfHwgMTVcblxuICAgIGlmICghQXJyYXkuaXNBcnJheSh1cHN0cmVhbXMpKSB7XG4gICAgICB1cHN0cmVhbXMgPSBbdXBzdHJlYW1zXVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZmFjdG9yeSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdmYWN0b3J5IG11c3QgYmUgYSBmdW5jdGlvbi4nKVxuICAgIH1cblxuICAgIHRoaXNba0ludGVyY2VwdG9yc10gPSBvcHRzLmludGVyY2VwdG9ycyAmJiBvcHRzLmludGVyY2VwdG9ycy5CYWxhbmNlZFBvb2wgJiYgQXJyYXkuaXNBcnJheShvcHRzLmludGVyY2VwdG9ycy5CYWxhbmNlZFBvb2wpXG4gICAgICA/IG9wdHMuaW50ZXJjZXB0b3JzLkJhbGFuY2VkUG9vbFxuICAgICAgOiBbXVxuICAgIHRoaXNba0ZhY3RvcnldID0gZmFjdG9yeVxuXG4gICAgZm9yIChjb25zdCB1cHN0cmVhbSBvZiB1cHN0cmVhbXMpIHtcbiAgICAgIHRoaXMuYWRkVXBzdHJlYW0odXBzdHJlYW0pXG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZUJhbGFuY2VkUG9vbFN0YXRzKClcbiAgfVxuXG4gIGFkZFVwc3RyZWFtICh1cHN0cmVhbSkge1xuICAgIGNvbnN0IHVwc3RyZWFtT3JpZ2luID0gcGFyc2VPcmlnaW4odXBzdHJlYW0pLm9yaWdpblxuXG4gICAgaWYgKHRoaXNba0NsaWVudHNdLmZpbmQoKHBvb2wpID0+IChcbiAgICAgIHBvb2xba1VybF0ub3JpZ2luID09PSB1cHN0cmVhbU9yaWdpbiAmJlxuICAgICAgcG9vbC5jbG9zZWQgIT09IHRydWUgJiZcbiAgICAgIHBvb2wuZGVzdHJveWVkICE9PSB0cnVlXG4gICAgKSkpIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuICAgIGNvbnN0IHBvb2wgPSB0aGlzW2tGYWN0b3J5XSh1cHN0cmVhbU9yaWdpbiwgT2JqZWN0LmFzc2lnbih7fSwgdGhpc1trT3B0aW9uc10pKVxuXG4gICAgdGhpc1trQWRkQ2xpZW50XShwb29sKVxuICAgIHBvb2wub24oJ2Nvbm5lY3QnLCAoKSA9PiB7XG4gICAgICBwb29sW2tXZWlnaHRdID0gTWF0aC5taW4odGhpc1trTWF4V2VpZ2h0UGVyU2VydmVyXSwgcG9vbFtrV2VpZ2h0XSArIHRoaXNba0Vycm9yUGVuYWx0eV0pXG4gICAgfSlcblxuICAgIHBvb2wub24oJ2Nvbm5lY3Rpb25FcnJvcicsICgpID0+IHtcbiAgICAgIHBvb2xba1dlaWdodF0gPSBNYXRoLm1heCgxLCBwb29sW2tXZWlnaHRdIC0gdGhpc1trRXJyb3JQZW5hbHR5XSlcbiAgICAgIHRoaXMuX3VwZGF0ZUJhbGFuY2VkUG9vbFN0YXRzKClcbiAgICB9KVxuXG4gICAgcG9vbC5vbignZGlzY29ubmVjdCcsICguLi5hcmdzKSA9PiB7XG4gICAgICBjb25zdCBlcnIgPSBhcmdzWzJdXG4gICAgICBpZiAoZXJyICYmIGVyci5jb2RlID09PSAnVU5EX0VSUl9TT0NLRVQnKSB7XG4gICAgICAgIC8vIGRlY3JlYXNlIHRoZSB3ZWlnaHQgb2YgdGhlIHBvb2wuXG4gICAgICAgIHBvb2xba1dlaWdodF0gPSBNYXRoLm1heCgxLCBwb29sW2tXZWlnaHRdIC0gdGhpc1trRXJyb3JQZW5hbHR5XSlcbiAgICAgICAgdGhpcy5fdXBkYXRlQmFsYW5jZWRQb29sU3RhdHMoKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICBmb3IgKGNvbnN0IGNsaWVudCBvZiB0aGlzW2tDbGllbnRzXSkge1xuICAgICAgY2xpZW50W2tXZWlnaHRdID0gdGhpc1trTWF4V2VpZ2h0UGVyU2VydmVyXVxuICAgIH1cblxuICAgIHRoaXMuX3VwZGF0ZUJhbGFuY2VkUG9vbFN0YXRzKClcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBfdXBkYXRlQmFsYW5jZWRQb29sU3RhdHMgKCkge1xuICAgIHRoaXNba0dyZWF0ZXN0Q29tbW9uRGl2aXNvcl0gPSB0aGlzW2tDbGllbnRzXS5tYXAocCA9PiBwW2tXZWlnaHRdKS5yZWR1Y2UoZ2V0R3JlYXRlc3RDb21tb25EaXZpc29yLCAwKVxuICB9XG5cbiAgcmVtb3ZlVXBzdHJlYW0gKHVwc3RyZWFtKSB7XG4gICAgY29uc3QgdXBzdHJlYW1PcmlnaW4gPSBwYXJzZU9yaWdpbih1cHN0cmVhbSkub3JpZ2luXG5cbiAgICBjb25zdCBwb29sID0gdGhpc1trQ2xpZW50c10uZmluZCgocG9vbCkgPT4gKFxuICAgICAgcG9vbFtrVXJsXS5vcmlnaW4gPT09IHVwc3RyZWFtT3JpZ2luICYmXG4gICAgICBwb29sLmNsb3NlZCAhPT0gdHJ1ZSAmJlxuICAgICAgcG9vbC5kZXN0cm95ZWQgIT09IHRydWVcbiAgICApKVxuXG4gICAgaWYgKHBvb2wpIHtcbiAgICAgIHRoaXNba1JlbW92ZUNsaWVudF0ocG9vbClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgZ2V0IHVwc3RyZWFtcyAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0NsaWVudHNdXG4gICAgICAuZmlsdGVyKGRpc3BhdGNoZXIgPT4gZGlzcGF0Y2hlci5jbG9zZWQgIT09IHRydWUgJiYgZGlzcGF0Y2hlci5kZXN0cm95ZWQgIT09IHRydWUpXG4gICAgICAubWFwKChwKSA9PiBwW2tVcmxdLm9yaWdpbilcbiAgfVxuXG4gIFtrR2V0RGlzcGF0Y2hlcl0gKCkge1xuICAgIC8vIFdlIHZhbGlkYXRlIHRoYXQgcG9vbHMgaXMgZ3JlYXRlciB0aGFuIDAsXG4gICAgLy8gb3RoZXJ3aXNlIHdlIHdvdWxkIGhhdmUgdG8gd2FpdCB1bnRpbCBhbiB1cHN0cmVhbVxuICAgIC8vIGlzIGFkZGVkLCB3aGljaCBtaWdodCBuZXZlciBoYXBwZW4uXG4gICAgaWYgKHRoaXNba0NsaWVudHNdLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEJhbGFuY2VkUG9vbE1pc3NpbmdVcHN0cmVhbUVycm9yKClcbiAgICB9XG5cbiAgICBjb25zdCBkaXNwYXRjaGVyID0gdGhpc1trQ2xpZW50c10uZmluZChkaXNwYXRjaGVyID0+IChcbiAgICAgICFkaXNwYXRjaGVyW2tOZWVkRHJhaW5dICYmXG4gICAgICBkaXNwYXRjaGVyLmNsb3NlZCAhPT0gdHJ1ZSAmJlxuICAgICAgZGlzcGF0Y2hlci5kZXN0cm95ZWQgIT09IHRydWVcbiAgICApKVxuXG4gICAgaWYgKCFkaXNwYXRjaGVyKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBhbGxDbGllbnRzQnVzeSA9IHRoaXNba0NsaWVudHNdLm1hcChwb29sID0+IHBvb2xba05lZWREcmFpbl0pLnJlZHVjZSgoYSwgYikgPT4gYSAmJiBiLCB0cnVlKVxuXG4gICAgaWYgKGFsbENsaWVudHNCdXN5KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBsZXQgY291bnRlciA9IDBcblxuICAgIGxldCBtYXhXZWlnaHRJbmRleCA9IHRoaXNba0NsaWVudHNdLmZpbmRJbmRleChwb29sID0+ICFwb29sW2tOZWVkRHJhaW5dKVxuXG4gICAgd2hpbGUgKGNvdW50ZXIrKyA8IHRoaXNba0NsaWVudHNdLmxlbmd0aCkge1xuICAgICAgdGhpc1trSW5kZXhdID0gKHRoaXNba0luZGV4XSArIDEpICUgdGhpc1trQ2xpZW50c10ubGVuZ3RoXG4gICAgICBjb25zdCBwb29sID0gdGhpc1trQ2xpZW50c11bdGhpc1trSW5kZXhdXVxuXG4gICAgICAvLyBmaW5kIHBvb2wgaW5kZXggd2l0aCB0aGUgbGFyZ2VzdCB3ZWlnaHRcbiAgICAgIGlmIChwb29sW2tXZWlnaHRdID4gdGhpc1trQ2xpZW50c11bbWF4V2VpZ2h0SW5kZXhdW2tXZWlnaHRdICYmICFwb29sW2tOZWVkRHJhaW5dKSB7XG4gICAgICAgIG1heFdlaWdodEluZGV4ID0gdGhpc1trSW5kZXhdXG4gICAgICB9XG5cbiAgICAgIC8vIGRlY3JlYXNlIHRoZSBjdXJyZW50IHdlaWdodCBldmVyeSBgdGhpc1trQ2xpZW50c10ubGVuZ3RoYC5cbiAgICAgIGlmICh0aGlzW2tJbmRleF0gPT09IDApIHtcbiAgICAgICAgLy8gU2V0IHRoZSBjdXJyZW50IHdlaWdodCB0byB0aGUgbmV4dCBsb3dlciB3ZWlnaHQuXG4gICAgICAgIHRoaXNba0N1cnJlbnRXZWlnaHRdID0gdGhpc1trQ3VycmVudFdlaWdodF0gLSB0aGlzW2tHcmVhdGVzdENvbW1vbkRpdmlzb3JdXG5cbiAgICAgICAgaWYgKHRoaXNba0N1cnJlbnRXZWlnaHRdIDw9IDApIHtcbiAgICAgICAgICB0aGlzW2tDdXJyZW50V2VpZ2h0XSA9IHRoaXNba01heFdlaWdodFBlclNlcnZlcl1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHBvb2xba1dlaWdodF0gPj0gdGhpc1trQ3VycmVudFdlaWdodF0gJiYgKCFwb29sW2tOZWVkRHJhaW5dKSkge1xuICAgICAgICByZXR1cm4gcG9vbFxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXNba0N1cnJlbnRXZWlnaHRdID0gdGhpc1trQ2xpZW50c11bbWF4V2VpZ2h0SW5kZXhdW2tXZWlnaHRdXG4gICAgdGhpc1trSW5kZXhdID0gbWF4V2VpZ2h0SW5kZXhcbiAgICByZXR1cm4gdGhpc1trQ2xpZW50c11bbWF4V2VpZ2h0SW5kZXhdXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBCYWxhbmNlZFBvb2xcbiIsICIndXNlIHN0cmljdCdcblxuLyogaXN0YW5idWwgaWdub3JlIGZpbGU6IG9ubHkgZm9yIE5vZGUgMTIgKi9cblxuY29uc3QgeyBrQ29ubmVjdGVkLCBrU2l6ZSB9ID0gcmVxdWlyZSgnLi4vY29yZS9zeW1ib2xzJylcblxuY2xhc3MgQ29tcGF0V2Vha1JlZiB7XG4gIGNvbnN0cnVjdG9yICh2YWx1ZSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZVxuICB9XG5cbiAgZGVyZWYgKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlW2tDb25uZWN0ZWRdID09PSAwICYmIHRoaXMudmFsdWVba1NpemVdID09PSAwXG4gICAgICA/IHVuZGVmaW5lZFxuICAgICAgOiB0aGlzLnZhbHVlXG4gIH1cbn1cblxuY2xhc3MgQ29tcGF0RmluYWxpemVyIHtcbiAgY29uc3RydWN0b3IgKGZpbmFsaXplcikge1xuICAgIHRoaXMuZmluYWxpemVyID0gZmluYWxpemVyXG4gIH1cblxuICByZWdpc3RlciAoZGlzcGF0Y2hlciwga2V5KSB7XG4gICAgaWYgKGRpc3BhdGNoZXIub24pIHtcbiAgICAgIGRpc3BhdGNoZXIub24oJ2Rpc2Nvbm5lY3QnLCAoKSA9PiB7XG4gICAgICAgIGlmIChkaXNwYXRjaGVyW2tDb25uZWN0ZWRdID09PSAwICYmIGRpc3BhdGNoZXJba1NpemVdID09PSAwKSB7XG4gICAgICAgICAgdGhpcy5maW5hbGl6ZXIoa2V5KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICgpIHtcbiAgLy8gRklYTUU6IHJlbW92ZSB3b3JrYXJvdW5kIHdoZW4gdGhlIE5vZGUgYnVnIGlzIGZpeGVkXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvbm9kZS9pc3N1ZXMvNDkzNDQjaXNzdWVjb21tZW50LTE3NDE3NzYzMDhcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfVjhfQ09WRVJBR0UpIHtcbiAgICByZXR1cm4ge1xuICAgICAgV2Vha1JlZjogQ29tcGF0V2Vha1JlZixcbiAgICAgIEZpbmFsaXphdGlvblJlZ2lzdHJ5OiBDb21wYXRGaW5hbGl6ZXJcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBXZWFrUmVmOiBnbG9iYWwuV2Vha1JlZiB8fCBDb21wYXRXZWFrUmVmLFxuICAgIEZpbmFsaXphdGlvblJlZ2lzdHJ5OiBnbG9iYWwuRmluYWxpemF0aW9uUmVnaXN0cnkgfHwgQ29tcGF0RmluYWxpemVyXG4gIH1cbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gcmVxdWlyZSgnLi9jb3JlL2Vycm9ycycpXG5jb25zdCB7IGtDbGllbnRzLCBrUnVubmluZywga0Nsb3NlLCBrRGVzdHJveSwga0Rpc3BhdGNoLCBrSW50ZXJjZXB0b3JzIH0gPSByZXF1aXJlKCcuL2NvcmUvc3ltYm9scycpXG5jb25zdCBEaXNwYXRjaGVyQmFzZSA9IHJlcXVpcmUoJy4vZGlzcGF0Y2hlci1iYXNlJylcbmNvbnN0IFBvb2wgPSByZXF1aXJlKCcuL3Bvb2wnKVxuY29uc3QgQ2xpZW50ID0gcmVxdWlyZSgnLi9jbGllbnQnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4vY29yZS91dGlsJylcbmNvbnN0IGNyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IgPSByZXF1aXJlKCcuL2ludGVyY2VwdG9yL3JlZGlyZWN0SW50ZXJjZXB0b3InKVxuY29uc3QgeyBXZWFrUmVmLCBGaW5hbGl6YXRpb25SZWdpc3RyeSB9ID0gcmVxdWlyZSgnLi9jb21wYXQvZGlzcGF0Y2hlci13ZWFrcmVmJykoKVxuXG5jb25zdCBrT25Db25uZWN0ID0gU3ltYm9sKCdvbkNvbm5lY3QnKVxuY29uc3Qga09uRGlzY29ubmVjdCA9IFN5bWJvbCgnb25EaXNjb25uZWN0JylcbmNvbnN0IGtPbkNvbm5lY3Rpb25FcnJvciA9IFN5bWJvbCgnb25Db25uZWN0aW9uRXJyb3InKVxuY29uc3Qga01heFJlZGlyZWN0aW9ucyA9IFN5bWJvbCgnbWF4UmVkaXJlY3Rpb25zJylcbmNvbnN0IGtPbkRyYWluID0gU3ltYm9sKCdvbkRyYWluJylcbmNvbnN0IGtGYWN0b3J5ID0gU3ltYm9sKCdmYWN0b3J5JylcbmNvbnN0IGtGaW5hbGl6ZXIgPSBTeW1ib2woJ2ZpbmFsaXplcicpXG5jb25zdCBrT3B0aW9ucyA9IFN5bWJvbCgnb3B0aW9ucycpXG5cbmZ1bmN0aW9uIGRlZmF1bHRGYWN0b3J5IChvcmlnaW4sIG9wdHMpIHtcbiAgcmV0dXJuIG9wdHMgJiYgb3B0cy5jb25uZWN0aW9ucyA9PT0gMVxuICAgID8gbmV3IENsaWVudChvcmlnaW4sIG9wdHMpXG4gICAgOiBuZXcgUG9vbChvcmlnaW4sIG9wdHMpXG59XG5cbmNsYXNzIEFnZW50IGV4dGVuZHMgRGlzcGF0Y2hlckJhc2Uge1xuICBjb25zdHJ1Y3RvciAoeyBmYWN0b3J5ID0gZGVmYXVsdEZhY3RvcnksIG1heFJlZGlyZWN0aW9ucyA9IDAsIGNvbm5lY3QsIC4uLm9wdGlvbnMgfSA9IHt9KSB7XG4gICAgc3VwZXIoKVxuXG4gICAgaWYgKHR5cGVvZiBmYWN0b3J5ICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ZhY3RvcnkgbXVzdCBiZSBhIGZ1bmN0aW9uLicpXG4gICAgfVxuXG4gICAgaWYgKGNvbm5lY3QgIT0gbnVsbCAmJiB0eXBlb2YgY29ubmVjdCAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgY29ubmVjdCAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY29ubmVjdCBtdXN0IGJlIGEgZnVuY3Rpb24gb3IgYW4gb2JqZWN0JylcbiAgICB9XG5cbiAgICBpZiAoIU51bWJlci5pc0ludGVnZXIobWF4UmVkaXJlY3Rpb25zKSB8fCBtYXhSZWRpcmVjdGlvbnMgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ21heFJlZGlyZWN0aW9ucyBtdXN0IGJlIGEgcG9zaXRpdmUgbnVtYmVyJylcbiAgICB9XG5cbiAgICBpZiAoY29ubmVjdCAmJiB0eXBlb2YgY29ubmVjdCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29ubmVjdCA9IHsgLi4uY29ubmVjdCB9XG4gICAgfVxuXG4gICAgdGhpc1trSW50ZXJjZXB0b3JzXSA9IG9wdGlvbnMuaW50ZXJjZXB0b3JzICYmIG9wdGlvbnMuaW50ZXJjZXB0b3JzLkFnZW50ICYmIEFycmF5LmlzQXJyYXkob3B0aW9ucy5pbnRlcmNlcHRvcnMuQWdlbnQpXG4gICAgICA/IG9wdGlvbnMuaW50ZXJjZXB0b3JzLkFnZW50XG4gICAgICA6IFtjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yKHsgbWF4UmVkaXJlY3Rpb25zIH0pXVxuXG4gICAgdGhpc1trT3B0aW9uc10gPSB7IC4uLnV0aWwuZGVlcENsb25lKG9wdGlvbnMpLCBjb25uZWN0IH1cbiAgICB0aGlzW2tPcHRpb25zXS5pbnRlcmNlcHRvcnMgPSBvcHRpb25zLmludGVyY2VwdG9yc1xuICAgICAgPyB7IC4uLm9wdGlvbnMuaW50ZXJjZXB0b3JzIH1cbiAgICAgIDogdW5kZWZpbmVkXG4gICAgdGhpc1trTWF4UmVkaXJlY3Rpb25zXSA9IG1heFJlZGlyZWN0aW9uc1xuICAgIHRoaXNba0ZhY3RvcnldID0gZmFjdG9yeVxuICAgIHRoaXNba0NsaWVudHNdID0gbmV3IE1hcCgpXG4gICAgdGhpc1trRmluYWxpemVyXSA9IG5ldyBGaW5hbGl6YXRpb25SZWdpc3RyeSgvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dDogZ2MgaXMgdW5kZXRlcm1pbmlzdGljICovIGtleSA9PiB7XG4gICAgICBjb25zdCByZWYgPSB0aGlzW2tDbGllbnRzXS5nZXQoa2V5KVxuICAgICAgaWYgKHJlZiAhPT0gdW5kZWZpbmVkICYmIHJlZi5kZXJlZigpID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpc1trQ2xpZW50c10uZGVsZXRlKGtleSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgY29uc3QgYWdlbnQgPSB0aGlzXG5cbiAgICB0aGlzW2tPbkRyYWluXSA9IChvcmlnaW4sIHRhcmdldHMpID0+IHtcbiAgICAgIGFnZW50LmVtaXQoJ2RyYWluJywgb3JpZ2luLCBbYWdlbnQsIC4uLnRhcmdldHNdKVxuICAgIH1cblxuICAgIHRoaXNba09uQ29ubmVjdF0gPSAob3JpZ2luLCB0YXJnZXRzKSA9PiB7XG4gICAgICBhZ2VudC5lbWl0KCdjb25uZWN0Jywgb3JpZ2luLCBbYWdlbnQsIC4uLnRhcmdldHNdKVxuICAgIH1cblxuICAgIHRoaXNba09uRGlzY29ubmVjdF0gPSAob3JpZ2luLCB0YXJnZXRzLCBlcnIpID0+IHtcbiAgICAgIGFnZW50LmVtaXQoJ2Rpc2Nvbm5lY3QnLCBvcmlnaW4sIFthZ2VudCwgLi4udGFyZ2V0c10sIGVycilcbiAgICB9XG5cbiAgICB0aGlzW2tPbkNvbm5lY3Rpb25FcnJvcl0gPSAob3JpZ2luLCB0YXJnZXRzLCBlcnIpID0+IHtcbiAgICAgIGFnZW50LmVtaXQoJ2Nvbm5lY3Rpb25FcnJvcicsIG9yaWdpbiwgW2FnZW50LCAuLi50YXJnZXRzXSwgZXJyKVxuICAgIH1cbiAgfVxuXG4gIGdldCBba1J1bm5pbmddICgpIHtcbiAgICBsZXQgcmV0ID0gMFxuICAgIGZvciAoY29uc3QgcmVmIG9mIHRoaXNba0NsaWVudHNdLnZhbHVlcygpKSB7XG4gICAgICBjb25zdCBjbGllbnQgPSByZWYuZGVyZWYoKVxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGdjIGlzIHVuZGV0ZXJtaW5pc3RpYyAqL1xuICAgICAgaWYgKGNsaWVudCkge1xuICAgICAgICByZXQgKz0gY2xpZW50W2tSdW5uaW5nXVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmV0XG4gIH1cblxuICBba0Rpc3BhdGNoXSAob3B0cywgaGFuZGxlcikge1xuICAgIGxldCBrZXlcbiAgICBpZiAob3B0cy5vcmlnaW4gJiYgKHR5cGVvZiBvcHRzLm9yaWdpbiA9PT0gJ3N0cmluZycgfHwgb3B0cy5vcmlnaW4gaW5zdGFuY2VvZiBVUkwpKSB7XG4gICAgICBrZXkgPSBTdHJpbmcob3B0cy5vcmlnaW4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignb3B0cy5vcmlnaW4gbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcgb3IgVVJMLicpXG4gICAgfVxuXG4gICAgY29uc3QgcmVmID0gdGhpc1trQ2xpZW50c10uZ2V0KGtleSlcblxuICAgIGxldCBkaXNwYXRjaGVyID0gcmVmID8gcmVmLmRlcmVmKCkgOiBudWxsXG4gICAgaWYgKCFkaXNwYXRjaGVyKSB7XG4gICAgICBkaXNwYXRjaGVyID0gdGhpc1trRmFjdG9yeV0ob3B0cy5vcmlnaW4sIHRoaXNba09wdGlvbnNdKVxuICAgICAgICAub24oJ2RyYWluJywgdGhpc1trT25EcmFpbl0pXG4gICAgICAgIC5vbignY29ubmVjdCcsIHRoaXNba09uQ29ubmVjdF0pXG4gICAgICAgIC5vbignZGlzY29ubmVjdCcsIHRoaXNba09uRGlzY29ubmVjdF0pXG4gICAgICAgIC5vbignY29ubmVjdGlvbkVycm9yJywgdGhpc1trT25Db25uZWN0aW9uRXJyb3JdKVxuXG4gICAgICB0aGlzW2tDbGllbnRzXS5zZXQoa2V5LCBuZXcgV2Vha1JlZihkaXNwYXRjaGVyKSlcbiAgICAgIHRoaXNba0ZpbmFsaXplcl0ucmVnaXN0ZXIoZGlzcGF0Y2hlciwga2V5KVxuICAgIH1cblxuICAgIHJldHVybiBkaXNwYXRjaGVyLmRpc3BhdGNoKG9wdHMsIGhhbmRsZXIpXG4gIH1cblxuICBhc3luYyBba0Nsb3NlXSAoKSB7XG4gICAgY29uc3QgY2xvc2VQcm9taXNlcyA9IFtdXG4gICAgZm9yIChjb25zdCByZWYgb2YgdGhpc1trQ2xpZW50c10udmFsdWVzKCkpIHtcbiAgICAgIGNvbnN0IGNsaWVudCA9IHJlZi5kZXJlZigpXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZTogZ2MgaXMgdW5kZXRlcm1pbmlzdGljICovXG4gICAgICBpZiAoY2xpZW50KSB7XG4gICAgICAgIGNsb3NlUHJvbWlzZXMucHVzaChjbGllbnQuY2xvc2UoKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChjbG9zZVByb21pc2VzKVxuICB9XG5cbiAgYXN5bmMgW2tEZXN0cm95XSAoZXJyKSB7XG4gICAgY29uc3QgZGVzdHJveVByb21pc2VzID0gW11cbiAgICBmb3IgKGNvbnN0IHJlZiBvZiB0aGlzW2tDbGllbnRzXS52YWx1ZXMoKSkge1xuICAgICAgY29uc3QgY2xpZW50ID0gcmVmLmRlcmVmKClcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlOiBnYyBpcyB1bmRldGVybWluaXN0aWMgKi9cbiAgICAgIGlmIChjbGllbnQpIHtcbiAgICAgICAgZGVzdHJveVByb21pc2VzLnB1c2goY2xpZW50LmRlc3Ryb3koZXJyKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChkZXN0cm95UHJvbWlzZXMpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBBZ2VudFxuIiwgIi8vIFBvcnRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL3B1bGwvOTA3XG5cbid1c2Ugc3RyaWN0J1xuXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBSZWFkYWJsZSB9ID0gcmVxdWlyZSgnc3RyZWFtJylcbmNvbnN0IHsgUmVxdWVzdEFib3J0ZWRFcnJvciwgTm90U3VwcG9ydGVkRXJyb3IsIEludmFsaWRBcmd1bWVudEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHsgUmVhZGFibGVTdHJlYW1Gcm9tLCB0b1VTVlN0cmluZyB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxubGV0IEJsb2JcblxuY29uc3Qga0NvbnN1bWUgPSBTeW1ib2woJ2tDb25zdW1lJylcbmNvbnN0IGtSZWFkaW5nID0gU3ltYm9sKCdrUmVhZGluZycpXG5jb25zdCBrQm9keSA9IFN5bWJvbCgna0JvZHknKVxuY29uc3Qga0Fib3J0ID0gU3ltYm9sKCdhYm9ydCcpXG5jb25zdCBrQ29udGVudFR5cGUgPSBTeW1ib2woJ2tDb250ZW50VHlwZScpXG5cbmNvbnN0IG5vb3AgPSAoKSA9PiB7fVxuXG5tb2R1bGUuZXhwb3J0cyA9IGNsYXNzIEJvZHlSZWFkYWJsZSBleHRlbmRzIFJlYWRhYmxlIHtcbiAgY29uc3RydWN0b3IgKHtcbiAgICByZXN1bWUsXG4gICAgYWJvcnQsXG4gICAgY29udGVudFR5cGUgPSAnJyxcbiAgICBoaWdoV2F0ZXJNYXJrID0gNjQgKiAxMDI0IC8vIFNhbWUgYXMgbm9kZWpzIGZzIHN0cmVhbXMuXG4gIH0pIHtcbiAgICBzdXBlcih7XG4gICAgICBhdXRvRGVzdHJveTogdHJ1ZSxcbiAgICAgIHJlYWQ6IHJlc3VtZSxcbiAgICAgIGhpZ2hXYXRlck1hcmtcbiAgICB9KVxuXG4gICAgdGhpcy5fcmVhZGFibGVTdGF0ZS5kYXRhRW1pdHRlZCA9IGZhbHNlXG5cbiAgICB0aGlzW2tBYm9ydF0gPSBhYm9ydFxuICAgIHRoaXNba0NvbnN1bWVdID0gbnVsbFxuICAgIHRoaXNba0JvZHldID0gbnVsbFxuICAgIHRoaXNba0NvbnRlbnRUeXBlXSA9IGNvbnRlbnRUeXBlXG5cbiAgICAvLyBJcyBzdHJlYW0gYmVpbmcgY29uc3VtZWQgdGhyb3VnaCBSZWFkYWJsZSBBUEk/XG4gICAgLy8gVGhpcyBpcyBhbiBvcHRpbWl6YXRpb24gc28gdGhhdCB3ZSBhdm9pZCBjaGVja2luZ1xuICAgIC8vIGZvciAnZGF0YScgYW5kICdyZWFkYWJsZScgbGlzdGVuZXJzIGluIHRoZSBob3QgcGF0aFxuICAgIC8vIGluc2lkZSBwdXNoKCkuXG4gICAgdGhpc1trUmVhZGluZ10gPSBmYWxzZVxuICB9XG5cbiAgZGVzdHJveSAoZXJyKSB7XG4gICAgaWYgKHRoaXMuZGVzdHJveWVkKSB7XG4gICAgICAvLyBOb2RlIDwgMTZcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgaWYgKCFlcnIgJiYgIXRoaXMuX3JlYWRhYmxlU3RhdGUuZW5kRW1pdHRlZCkge1xuICAgICAgZXJyID0gbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIH1cblxuICAgIGlmIChlcnIpIHtcbiAgICAgIHRoaXNba0Fib3J0XSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHN1cGVyLmRlc3Ryb3koZXJyKVxuICB9XG5cbiAgZW1pdCAoZXYsIC4uLmFyZ3MpIHtcbiAgICBpZiAoZXYgPT09ICdkYXRhJykge1xuICAgICAgLy8gTm9kZSA8IDE2LjdcbiAgICAgIHRoaXMuX3JlYWRhYmxlU3RhdGUuZGF0YUVtaXR0ZWQgPSB0cnVlXG4gICAgfSBlbHNlIGlmIChldiA9PT0gJ2Vycm9yJykge1xuICAgICAgLy8gTm9kZSA8IDE2XG4gICAgICB0aGlzLl9yZWFkYWJsZVN0YXRlLmVycm9yRW1pdHRlZCA9IHRydWVcbiAgICB9XG4gICAgcmV0dXJuIHN1cGVyLmVtaXQoZXYsIC4uLmFyZ3MpXG4gIH1cblxuICBvbiAoZXYsIC4uLmFyZ3MpIHtcbiAgICBpZiAoZXYgPT09ICdkYXRhJyB8fCBldiA9PT0gJ3JlYWRhYmxlJykge1xuICAgICAgdGhpc1trUmVhZGluZ10gPSB0cnVlXG4gICAgfVxuICAgIHJldHVybiBzdXBlci5vbihldiwgLi4uYXJncylcbiAgfVxuXG4gIGFkZExpc3RlbmVyIChldiwgLi4uYXJncykge1xuICAgIHJldHVybiB0aGlzLm9uKGV2LCAuLi5hcmdzKVxuICB9XG5cbiAgb2ZmIChldiwgLi4uYXJncykge1xuICAgIGNvbnN0IHJldCA9IHN1cGVyLm9mZihldiwgLi4uYXJncylcbiAgICBpZiAoZXYgPT09ICdkYXRhJyB8fCBldiA9PT0gJ3JlYWRhYmxlJykge1xuICAgICAgdGhpc1trUmVhZGluZ10gPSAoXG4gICAgICAgIHRoaXMubGlzdGVuZXJDb3VudCgnZGF0YScpID4gMCB8fFxuICAgICAgICB0aGlzLmxpc3RlbmVyQ291bnQoJ3JlYWRhYmxlJykgPiAwXG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiByZXRcbiAgfVxuXG4gIHJlbW92ZUxpc3RlbmVyIChldiwgLi4uYXJncykge1xuICAgIHJldHVybiB0aGlzLm9mZihldiwgLi4uYXJncylcbiAgfVxuXG4gIHB1c2ggKGNodW5rKSB7XG4gICAgaWYgKHRoaXNba0NvbnN1bWVdICYmIGNodW5rICE9PSBudWxsICYmIHRoaXMucmVhZGFibGVMZW5ndGggPT09IDApIHtcbiAgICAgIGNvbnN1bWVQdXNoKHRoaXNba0NvbnN1bWVdLCBjaHVuaylcbiAgICAgIHJldHVybiB0aGlzW2tSZWFkaW5nXSA/IHN1cGVyLnB1c2goY2h1bmspIDogdHJ1ZVxuICAgIH1cbiAgICByZXR1cm4gc3VwZXIucHVzaChjaHVuaylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS10ZXh0XG4gIGFzeW5jIHRleHQgKCkge1xuICAgIHJldHVybiBjb25zdW1lKHRoaXMsICd0ZXh0JylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1qc29uXG4gIGFzeW5jIGpzb24gKCkge1xuICAgIHJldHVybiBjb25zdW1lKHRoaXMsICdqc29uJylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1ibG9iXG4gIGFzeW5jIGJsb2IgKCkge1xuICAgIHJldHVybiBjb25zdW1lKHRoaXMsICdibG9iJylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1hcnJheWJ1ZmZlclxuICBhc3luYyBhcnJheUJ1ZmZlciAoKSB7XG4gICAgcmV0dXJuIGNvbnN1bWUodGhpcywgJ2FycmF5QnVmZmVyJylcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tYm9keS1mb3JtZGF0YVxuICBhc3luYyBmb3JtRGF0YSAoKSB7XG4gICAgLy8gVE9ETzogSW1wbGVtZW50LlxuICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWRFcnJvcigpXG4gIH1cblxuICAvLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZG9tLWJvZHktYm9keXVzZWRcbiAgZ2V0IGJvZHlVc2VkICgpIHtcbiAgICByZXR1cm4gdXRpbC5pc0Rpc3R1cmJlZCh0aGlzKVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1ib2R5LWJvZHlcbiAgZ2V0IGJvZHkgKCkge1xuICAgIGlmICghdGhpc1trQm9keV0pIHtcbiAgICAgIHRoaXNba0JvZHldID0gUmVhZGFibGVTdHJlYW1Gcm9tKHRoaXMpXG4gICAgICBpZiAodGhpc1trQ29uc3VtZV0pIHtcbiAgICAgICAgLy8gVE9ETzogSXMgdGhpcyB0aGUgYmVzdCB3YXkgdG8gZm9yY2UgYSBsb2NrP1xuICAgICAgICB0aGlzW2tCb2R5XS5nZXRSZWFkZXIoKSAvLyBFbnN1cmUgc3RyZWFtIGlzIGxvY2tlZC5cbiAgICAgICAgYXNzZXJ0KHRoaXNba0JvZHldLmxvY2tlZClcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXNba0JvZHldXG4gIH1cblxuICBkdW1wIChvcHRzKSB7XG4gICAgbGV0IGxpbWl0ID0gb3B0cyAmJiBOdW1iZXIuaXNGaW5pdGUob3B0cy5saW1pdCkgPyBvcHRzLmxpbWl0IDogMjYyMTQ0XG4gICAgY29uc3Qgc2lnbmFsID0gb3B0cyAmJiBvcHRzLnNpZ25hbFxuXG4gICAgaWYgKHNpZ25hbCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgaWYgKHR5cGVvZiBzaWduYWwgIT09ICdvYmplY3QnIHx8ICEoJ2Fib3J0ZWQnIGluIHNpZ25hbCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3NpZ25hbCBtdXN0IGJlIGFuIEFib3J0U2lnbmFsJylcbiAgICAgICAgfVxuICAgICAgICB1dGlsLnRocm93SWZBYm9ydGVkKHNpZ25hbClcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmNsb3NlZCkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKVxuICAgIH1cblxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBzaWduYWxMaXN0ZW5lckNsZWFudXAgPSBzaWduYWxcbiAgICAgICAgPyB1dGlsLmFkZEFib3J0TGlzdGVuZXIoc2lnbmFsLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5kZXN0cm95KClcbiAgICAgICAgfSlcbiAgICAgICAgOiBub29wXG5cbiAgICAgIHRoaXNcbiAgICAgICAgLm9uKCdjbG9zZScsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBzaWduYWxMaXN0ZW5lckNsZWFudXAoKVxuICAgICAgICAgIGlmIChzaWduYWwgJiYgc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAgICAgICAgIHJlamVjdChzaWduYWwucmVhc29uIHx8IE9iamVjdC5hc3NpZ24obmV3IEVycm9yKCdUaGUgb3BlcmF0aW9uIHdhcyBhYm9ydGVkJyksIHsgbmFtZTogJ0Fib3J0RXJyb3InIH0pKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXNvbHZlKG51bGwpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAub24oJ2Vycm9yJywgbm9vcClcbiAgICAgICAgLm9uKCdkYXRhJywgZnVuY3Rpb24gKGNodW5rKSB7XG4gICAgICAgICAgbGltaXQgLT0gY2h1bmsubGVuZ3RoXG4gICAgICAgICAgaWYgKGxpbWl0IDw9IDApIHtcbiAgICAgICAgICAgIHRoaXMuZGVzdHJveSgpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAucmVzdW1lKClcbiAgICB9KVxuICB9XG59XG5cbi8vIGh0dHBzOi8vc3RyZWFtcy5zcGVjLndoYXR3Zy5vcmcvI3JlYWRhYmxlc3RyZWFtLWxvY2tlZFxuZnVuY3Rpb24gaXNMb2NrZWQgKHNlbGYpIHtcbiAgLy8gQ29uc3VtZSBpcyBhbiBpbXBsaWNpdCBsb2NrLlxuICByZXR1cm4gKHNlbGZba0JvZHldICYmIHNlbGZba0JvZHldLmxvY2tlZCA9PT0gdHJ1ZSkgfHwgc2VsZltrQ29uc3VtZV1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2JvZHktdW51c2FibGVcbmZ1bmN0aW9uIGlzVW51c2FibGUgKHNlbGYpIHtcbiAgcmV0dXJuIHV0aWwuaXNEaXN0dXJiZWQoc2VsZikgfHwgaXNMb2NrZWQoc2VsZilcbn1cblxuYXN5bmMgZnVuY3Rpb24gY29uc3VtZSAoc3RyZWFtLCB0eXBlKSB7XG4gIGlmIChpc1VudXNhYmxlKHN0cmVhbSkpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCd1bnVzYWJsZScpXG4gIH1cblxuICBhc3NlcnQoIXN0cmVhbVtrQ29uc3VtZV0pXG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBzdHJlYW1ba0NvbnN1bWVdID0ge1xuICAgICAgdHlwZSxcbiAgICAgIHN0cmVhbSxcbiAgICAgIHJlc29sdmUsXG4gICAgICByZWplY3QsXG4gICAgICBsZW5ndGg6IDAsXG4gICAgICBib2R5OiBbXVxuICAgIH1cblxuICAgIHN0cmVhbVxuICAgICAgLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgICAgY29uc3VtZUZpbmlzaCh0aGlzW2tDb25zdW1lXSwgZXJyKVxuICAgICAgfSlcbiAgICAgIC5vbignY2xvc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzW2tDb25zdW1lXS5ib2R5ICE9PSBudWxsKSB7XG4gICAgICAgICAgY29uc3VtZUZpbmlzaCh0aGlzW2tDb25zdW1lXSwgbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKSlcbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgIHByb2Nlc3MubmV4dFRpY2soY29uc3VtZVN0YXJ0LCBzdHJlYW1ba0NvbnN1bWVdKVxuICB9KVxufVxuXG5mdW5jdGlvbiBjb25zdW1lU3RhcnQgKGNvbnN1bWUpIHtcbiAgaWYgKGNvbnN1bWUuYm9keSA9PT0gbnVsbCkge1xuICAgIHJldHVyblxuICB9XG5cbiAgY29uc3QgeyBfcmVhZGFibGVTdGF0ZTogc3RhdGUgfSA9IGNvbnN1bWUuc3RyZWFtXG5cbiAgZm9yIChjb25zdCBjaHVuayBvZiBzdGF0ZS5idWZmZXIpIHtcbiAgICBjb25zdW1lUHVzaChjb25zdW1lLCBjaHVuaylcbiAgfVxuXG4gIGlmIChzdGF0ZS5lbmRFbWl0dGVkKSB7XG4gICAgY29uc3VtZUVuZCh0aGlzW2tDb25zdW1lXSlcbiAgfSBlbHNlIHtcbiAgICBjb25zdW1lLnN0cmVhbS5vbignZW5kJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3VtZUVuZCh0aGlzW2tDb25zdW1lXSlcbiAgICB9KVxuICB9XG5cbiAgY29uc3VtZS5zdHJlYW0ucmVzdW1lKClcblxuICB3aGlsZSAoY29uc3VtZS5zdHJlYW0ucmVhZCgpICE9IG51bGwpIHtcbiAgICAvLyBMb29wXG4gIH1cbn1cblxuZnVuY3Rpb24gY29uc3VtZUVuZCAoY29uc3VtZSkge1xuICBjb25zdCB7IHR5cGUsIGJvZHksIHJlc29sdmUsIHN0cmVhbSwgbGVuZ3RoIH0gPSBjb25zdW1lXG5cbiAgdHJ5IHtcbiAgICBpZiAodHlwZSA9PT0gJ3RleHQnKSB7XG4gICAgICByZXNvbHZlKHRvVVNWU3RyaW5nKEJ1ZmZlci5jb25jYXQoYm9keSkpKVxuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2pzb24nKSB7XG4gICAgICByZXNvbHZlKEpTT04ucGFyc2UoQnVmZmVyLmNvbmNhdChib2R5KSkpXG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnYXJyYXlCdWZmZXInKSB7XG4gICAgICBjb25zdCBkc3QgPSBuZXcgVWludDhBcnJheShsZW5ndGgpXG5cbiAgICAgIGxldCBwb3MgPSAwXG4gICAgICBmb3IgKGNvbnN0IGJ1ZiBvZiBib2R5KSB7XG4gICAgICAgIGRzdC5zZXQoYnVmLCBwb3MpXG4gICAgICAgIHBvcyArPSBidWYuYnl0ZUxlbmd0aFxuICAgICAgfVxuXG4gICAgICByZXNvbHZlKGRzdC5idWZmZXIpXG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnYmxvYicpIHtcbiAgICAgIGlmICghQmxvYikge1xuICAgICAgICBCbG9iID0gcmVxdWlyZSgnYnVmZmVyJykuQmxvYlxuICAgICAgfVxuICAgICAgcmVzb2x2ZShuZXcgQmxvYihib2R5LCB7IHR5cGU6IHN0cmVhbVtrQ29udGVudFR5cGVdIH0pKVxuICAgIH1cblxuICAgIGNvbnN1bWVGaW5pc2goY29uc3VtZSlcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgc3RyZWFtLmRlc3Ryb3koZXJyKVxuICB9XG59XG5cbmZ1bmN0aW9uIGNvbnN1bWVQdXNoIChjb25zdW1lLCBjaHVuaykge1xuICBjb25zdW1lLmxlbmd0aCArPSBjaHVuay5sZW5ndGhcbiAgY29uc3VtZS5ib2R5LnB1c2goY2h1bmspXG59XG5cbmZ1bmN0aW9uIGNvbnN1bWVGaW5pc2ggKGNvbnN1bWUsIGVycikge1xuICBpZiAoY29uc3VtZS5ib2R5ID09PSBudWxsKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAoZXJyKSB7XG4gICAgY29uc3VtZS5yZWplY3QoZXJyKVxuICB9IGVsc2Uge1xuICAgIGNvbnN1bWUucmVzb2x2ZSgpXG4gIH1cblxuICBjb25zdW1lLnR5cGUgPSBudWxsXG4gIGNvbnN1bWUuc3RyZWFtID0gbnVsbFxuICBjb25zdW1lLnJlc29sdmUgPSBudWxsXG4gIGNvbnN1bWUucmVqZWN0ID0gbnVsbFxuICBjb25zdW1lLmxlbmd0aCA9IDBcbiAgY29uc3VtZS5ib2R5ID0gbnVsbFxufVxuIiwgImNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7XG4gIFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yXG59ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyB0b1VTVlN0cmluZyB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxuYXN5bmMgZnVuY3Rpb24gZ2V0UmVzb2x2ZUVycm9yQm9keUNhbGxiYWNrICh7IGNhbGxiYWNrLCBib2R5LCBjb250ZW50VHlwZSwgc3RhdHVzQ29kZSwgc3RhdHVzTWVzc2FnZSwgaGVhZGVycyB9KSB7XG4gIGFzc2VydChib2R5KVxuXG4gIGxldCBjaHVua3MgPSBbXVxuICBsZXQgbGltaXQgPSAwXG5cbiAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBib2R5KSB7XG4gICAgY2h1bmtzLnB1c2goY2h1bmspXG4gICAgbGltaXQgKz0gY2h1bmsubGVuZ3RoXG4gICAgaWYgKGxpbWl0ID4gMTI4ICogMTAyNCkge1xuICAgICAgY2h1bmtzID0gbnVsbFxuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBpZiAoc3RhdHVzQ29kZSA9PT0gMjA0IHx8ICFjb250ZW50VHlwZSB8fCAhY2h1bmtzKSB7XG4gICAgcHJvY2Vzcy5uZXh0VGljayhjYWxsYmFjaywgbmV3IFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yKGBSZXNwb25zZSBzdGF0dXMgY29kZSAke3N0YXR1c0NvZGV9JHtzdGF0dXNNZXNzYWdlID8gYDogJHtzdGF0dXNNZXNzYWdlfWAgOiAnJ31gLCBzdGF0dXNDb2RlLCBoZWFkZXJzKSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIHRyeSB7XG4gICAgaWYgKGNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ2FwcGxpY2F0aW9uL2pzb24nKSkge1xuICAgICAgY29uc3QgcGF5bG9hZCA9IEpTT04ucGFyc2UodG9VU1ZTdHJpbmcoQnVmZmVyLmNvbmNhdChjaHVua3MpKSlcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soY2FsbGJhY2ssIG5ldyBSZXNwb25zZVN0YXR1c0NvZGVFcnJvcihgUmVzcG9uc2Ugc3RhdHVzIGNvZGUgJHtzdGF0dXNDb2RlfSR7c3RhdHVzTWVzc2FnZSA/IGA6ICR7c3RhdHVzTWVzc2FnZX1gIDogJyd9YCwgc3RhdHVzQ29kZSwgaGVhZGVycywgcGF5bG9hZCkpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoY29udGVudFR5cGUuc3RhcnRzV2l0aCgndGV4dC8nKSkge1xuICAgICAgY29uc3QgcGF5bG9hZCA9IHRvVVNWU3RyaW5nKEJ1ZmZlci5jb25jYXQoY2h1bmtzKSlcbiAgICAgIHByb2Nlc3MubmV4dFRpY2soY2FsbGJhY2ssIG5ldyBSZXNwb25zZVN0YXR1c0NvZGVFcnJvcihgUmVzcG9uc2Ugc3RhdHVzIGNvZGUgJHtzdGF0dXNDb2RlfSR7c3RhdHVzTWVzc2FnZSA/IGA6ICR7c3RhdHVzTWVzc2FnZX1gIDogJyd9YCwgc3RhdHVzQ29kZSwgaGVhZGVycywgcGF5bG9hZCkpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIFByb2Nlc3MgaW4gYSBmYWxsYmFjayBpZiBlcnJvclxuICB9XG5cbiAgcHJvY2Vzcy5uZXh0VGljayhjYWxsYmFjaywgbmV3IFJlc3BvbnNlU3RhdHVzQ29kZUVycm9yKGBSZXNwb25zZSBzdGF0dXMgY29kZSAke3N0YXR1c0NvZGV9JHtzdGF0dXNNZXNzYWdlID8gYDogJHtzdGF0dXNNZXNzYWdlfWAgOiAnJ31gLCBzdGF0dXNDb2RlLCBoZWFkZXJzKSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7IGdldFJlc29sdmVFcnJvckJvZHlDYWxsYmFjayB9XG4iLCAiY29uc3QgeyBhZGRBYm9ydExpc3RlbmVyIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBSZXF1ZXN0QWJvcnRlZEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5cbmNvbnN0IGtMaXN0ZW5lciA9IFN5bWJvbCgna0xpc3RlbmVyJylcbmNvbnN0IGtTaWduYWwgPSBTeW1ib2woJ2tTaWduYWwnKVxuXG5mdW5jdGlvbiBhYm9ydCAoc2VsZikge1xuICBpZiAoc2VsZi5hYm9ydCkge1xuICAgIHNlbGYuYWJvcnQoKVxuICB9IGVsc2Uge1xuICAgIHNlbGYub25FcnJvcihuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpKVxuICB9XG59XG5cbmZ1bmN0aW9uIGFkZFNpZ25hbCAoc2VsZiwgc2lnbmFsKSB7XG4gIHNlbGZba1NpZ25hbF0gPSBudWxsXG4gIHNlbGZba0xpc3RlbmVyXSA9IG51bGxcblxuICBpZiAoIXNpZ25hbCkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKHNpZ25hbC5hYm9ydGVkKSB7XG4gICAgYWJvcnQoc2VsZilcbiAgICByZXR1cm5cbiAgfVxuXG4gIHNlbGZba1NpZ25hbF0gPSBzaWduYWxcbiAgc2VsZltrTGlzdGVuZXJdID0gKCkgPT4ge1xuICAgIGFib3J0KHNlbGYpXG4gIH1cblxuICBhZGRBYm9ydExpc3RlbmVyKHNlbGZba1NpZ25hbF0sIHNlbGZba0xpc3RlbmVyXSlcbn1cblxuZnVuY3Rpb24gcmVtb3ZlU2lnbmFsIChzZWxmKSB7XG4gIGlmICghc2VsZltrU2lnbmFsXSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKCdyZW1vdmVFdmVudExpc3RlbmVyJyBpbiBzZWxmW2tTaWduYWxdKSB7XG4gICAgc2VsZltrU2lnbmFsXS5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIHNlbGZba0xpc3RlbmVyXSlcbiAgfSBlbHNlIHtcbiAgICBzZWxmW2tTaWduYWxdLnJlbW92ZUxpc3RlbmVyKCdhYm9ydCcsIHNlbGZba0xpc3RlbmVyXSlcbiAgfVxuXG4gIHNlbGZba1NpZ25hbF0gPSBudWxsXG4gIHNlbGZba0xpc3RlbmVyXSA9IG51bGxcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGFkZFNpZ25hbCxcbiAgcmVtb3ZlU2lnbmFsXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IFJlYWRhYmxlID0gcmVxdWlyZSgnLi9yZWFkYWJsZScpXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yLFxuICBSZXF1ZXN0QWJvcnRlZEVycm9yXG59ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7IGdldFJlc29sdmVFcnJvckJvZHlDYWxsYmFjayB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgQXN5bmNSZXNvdXJjZSB9ID0gcmVxdWlyZSgnYXN5bmNfaG9va3MnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuXG5jbGFzcyBSZXF1ZXN0SGFuZGxlciBleHRlbmRzIEFzeW5jUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvciAob3B0cywgY2FsbGJhY2spIHtcbiAgICBpZiAoIW9wdHMgfHwgdHlwZW9mIG9wdHMgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb3B0cycpXG4gICAgfVxuXG4gICAgY29uc3QgeyBzaWduYWwsIG1ldGhvZCwgb3BhcXVlLCBib2R5LCBvbkluZm8sIHJlc3BvbnNlSGVhZGVycywgdGhyb3dPbkVycm9yLCBoaWdoV2F0ZXJNYXJrIH0gPSBvcHRzXG5cbiAgICB0cnkge1xuICAgICAgaWYgKHR5cGVvZiBjYWxsYmFjayAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgY2FsbGJhY2snKVxuICAgICAgfVxuXG4gICAgICBpZiAoaGlnaFdhdGVyTWFyayAmJiAodHlwZW9mIGhpZ2hXYXRlck1hcmsgIT09ICdudW1iZXInIHx8IGhpZ2hXYXRlck1hcmsgPCAwKSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgaGlnaFdhdGVyTWFyaycpXG4gICAgICB9XG5cbiAgICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzaWduYWwgbXVzdCBiZSBhbiBFdmVudEVtaXR0ZXIgb3IgRXZlbnRUYXJnZXQnKVxuICAgICAgfVxuXG4gICAgICBpZiAobWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG1ldGhvZCcpXG4gICAgICB9XG5cbiAgICAgIGlmIChvbkluZm8gJiYgdHlwZW9mIG9uSW5mbyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb25JbmZvIGNhbGxiYWNrJylcbiAgICAgIH1cblxuICAgICAgc3VwZXIoJ1VORElDSV9SRVFVRVNUJylcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmICh1dGlsLmlzU3RyZWFtKGJvZHkpKSB7XG4gICAgICAgIHV0aWwuZGVzdHJveShib2R5Lm9uKCdlcnJvcicsIHV0aWwubm9wKSwgZXJyKVxuICAgICAgfVxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuXG4gICAgdGhpcy5yZXNwb25zZUhlYWRlcnMgPSByZXNwb25zZUhlYWRlcnMgfHwgbnVsbFxuICAgIHRoaXMub3BhcXVlID0gb3BhcXVlIHx8IG51bGxcbiAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2tcbiAgICB0aGlzLnJlcyA9IG51bGxcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuYm9keSA9IGJvZHlcbiAgICB0aGlzLnRyYWlsZXJzID0ge31cbiAgICB0aGlzLmNvbnRleHQgPSBudWxsXG4gICAgdGhpcy5vbkluZm8gPSBvbkluZm8gfHwgbnVsbFxuICAgIHRoaXMudGhyb3dPbkVycm9yID0gdGhyb3dPbkVycm9yXG4gICAgdGhpcy5oaWdoV2F0ZXJNYXJrID0gaGlnaFdhdGVyTWFya1xuXG4gICAgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICAgIGJvZHkub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKVxuICAgICAgfSlcbiAgICB9XG5cbiAgICBhZGRTaWduYWwodGhpcywgc2lnbmFsKVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCwgY29udGV4dCkge1xuICAgIGlmICghdGhpcy5jYWxsYmFjaykge1xuICAgICAgdGhyb3cgbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIH1cblxuICAgIHRoaXMuYWJvcnQgPSBhYm9ydFxuICAgIHRoaXMuY29udGV4dCA9IGNvbnRleHRcbiAgfVxuXG4gIG9uSGVhZGVycyAoc3RhdHVzQ29kZSwgcmF3SGVhZGVycywgcmVzdW1lLCBzdGF0dXNNZXNzYWdlKSB7XG4gICAgY29uc3QgeyBjYWxsYmFjaywgb3BhcXVlLCBhYm9ydCwgY29udGV4dCwgcmVzcG9uc2VIZWFkZXJzLCBoaWdoV2F0ZXJNYXJrIH0gPSB0aGlzXG5cbiAgICBjb25zdCBoZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzID09PSAncmF3JyA/IHV0aWwucGFyc2VSYXdIZWFkZXJzKHJhd0hlYWRlcnMpIDogdXRpbC5wYXJzZUhlYWRlcnMocmF3SGVhZGVycylcblxuICAgIGlmIChzdGF0dXNDb2RlIDwgMjAwKSB7XG4gICAgICBpZiAodGhpcy5vbkluZm8pIHtcbiAgICAgICAgdGhpcy5vbkluZm8oeyBzdGF0dXNDb2RlLCBoZWFkZXJzIH0pXG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBwYXJzZWRIZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzID09PSAncmF3JyA/IHV0aWwucGFyc2VIZWFkZXJzKHJhd0hlYWRlcnMpIDogaGVhZGVyc1xuICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gcGFyc2VkSGVhZGVyc1snY29udGVudC10eXBlJ11cbiAgICBjb25zdCBib2R5ID0gbmV3IFJlYWRhYmxlKHsgcmVzdW1lLCBhYm9ydCwgY29udGVudFR5cGUsIGhpZ2hXYXRlck1hcmsgfSlcblxuICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsXG4gICAgdGhpcy5yZXMgPSBib2R5XG4gICAgaWYgKGNhbGxiYWNrICE9PSBudWxsKSB7XG4gICAgICBpZiAodGhpcy50aHJvd09uRXJyb3IgJiYgc3RhdHVzQ29kZSA+PSA0MDApIHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoZ2V0UmVzb2x2ZUVycm9yQm9keUNhbGxiYWNrLCBudWxsLFxuICAgICAgICAgIHsgY2FsbGJhY2ssIGJvZHksIGNvbnRlbnRUeXBlLCBzdGF0dXNDb2RlLCBzdGF0dXNNZXNzYWdlLCBoZWFkZXJzIH1cbiAgICAgICAgKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoY2FsbGJhY2ssIG51bGwsIG51bGwsIHtcbiAgICAgICAgICBzdGF0dXNDb2RlLFxuICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgdHJhaWxlcnM6IHRoaXMudHJhaWxlcnMsXG4gICAgICAgICAgb3BhcXVlLFxuICAgICAgICAgIGJvZHksXG4gICAgICAgICAgY29udGV4dFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uRGF0YSAoY2h1bmspIHtcbiAgICBjb25zdCB7IHJlcyB9ID0gdGhpc1xuICAgIHJldHVybiByZXMucHVzaChjaHVuaylcbiAgfVxuXG4gIG9uQ29tcGxldGUgKHRyYWlsZXJzKSB7XG4gICAgY29uc3QgeyByZXMgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdXRpbC5wYXJzZUhlYWRlcnModHJhaWxlcnMsIHRoaXMudHJhaWxlcnMpXG5cbiAgICByZXMucHVzaChudWxsKVxuICB9XG5cbiAgb25FcnJvciAoZXJyKSB7XG4gICAgY29uc3QgeyByZXMsIGNhbGxiYWNrLCBib2R5LCBvcGFxdWUgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICAvLyBUT0RPOiBEb2VzIHRoaXMgbmVlZCBxdWV1ZU1pY3JvdGFzaz9cbiAgICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsXG4gICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiB7XG4gICAgICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBlcnIsIHsgb3BhcXVlIH0pXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChyZXMpIHtcbiAgICAgIHRoaXMucmVzID0gbnVsbFxuICAgICAgLy8gRW5zdXJlIGFsbCBxdWV1ZWQgaGFuZGxlcnMgYXJlIGludm9rZWQgYmVmb3JlIGRlc3Ryb3lpbmcgcmVzLlxuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICB1dGlsLmRlc3Ryb3kocmVzLCBlcnIpXG4gICAgICB9KVxuICAgIH1cblxuICAgIGlmIChib2R5KSB7XG4gICAgICB0aGlzLmJvZHkgPSBudWxsXG4gICAgICB1dGlsLmRlc3Ryb3koYm9keSwgZXJyKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiByZXF1ZXN0IChvcHRzLCBjYWxsYmFjaykge1xuICBpZiAoY2FsbGJhY2sgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICByZXF1ZXN0LmNhbGwodGhpcywgb3B0cywgKGVyciwgZGF0YSkgPT4ge1xuICAgICAgICByZXR1cm4gZXJyID8gcmVqZWN0KGVycikgOiByZXNvbHZlKGRhdGEpXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICB0cnkge1xuICAgIHRoaXMuZGlzcGF0Y2gob3B0cywgbmV3IFJlcXVlc3RIYW5kbGVyKG9wdHMsIGNhbGxiYWNrKSlcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgaWYgKHR5cGVvZiBjYWxsYmFjayAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICAgIGNvbnN0IG9wYXF1ZSA9IG9wdHMgJiYgb3B0cy5vcGFxdWVcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBjYWxsYmFjayhlcnIsIHsgb3BhcXVlIH0pKVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gcmVxdWVzdFxubW9kdWxlLmV4cG9ydHMuUmVxdWVzdEhhbmRsZXIgPSBSZXF1ZXN0SGFuZGxlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IGZpbmlzaGVkLCBQYXNzVGhyb3VnaCB9ID0gcmVxdWlyZSgnc3RyZWFtJylcbmNvbnN0IHtcbiAgSW52YWxpZEFyZ3VtZW50RXJyb3IsXG4gIEludmFsaWRSZXR1cm5WYWx1ZUVycm9yLFxuICBSZXF1ZXN0QWJvcnRlZEVycm9yXG59ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgdXRpbCA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7IGdldFJlc29sdmVFcnJvckJvZHlDYWxsYmFjayB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgQXN5bmNSZXNvdXJjZSB9ID0gcmVxdWlyZSgnYXN5bmNfaG9va3MnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuXG5jbGFzcyBTdHJlYW1IYW5kbGVyIGV4dGVuZHMgQXN5bmNSZXNvdXJjZSB7XG4gIGNvbnN0cnVjdG9yIChvcHRzLCBmYWN0b3J5LCBjYWxsYmFjaykge1xuICAgIGlmICghb3B0cyB8fCB0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBvcHRzJylcbiAgICB9XG5cbiAgICBjb25zdCB7IHNpZ25hbCwgbWV0aG9kLCBvcGFxdWUsIGJvZHksIG9uSW5mbywgcmVzcG9uc2VIZWFkZXJzLCB0aHJvd09uRXJyb3IgfSA9IG9wdHNcblxuICAgIHRyeSB7XG4gICAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjYWxsYmFjaycpXG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgZmFjdG9yeSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgZmFjdG9yeScpXG4gICAgICB9XG5cbiAgICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzaWduYWwgbXVzdCBiZSBhbiBFdmVudEVtaXR0ZXIgb3IgRXZlbnRUYXJnZXQnKVxuICAgICAgfVxuXG4gICAgICBpZiAobWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG1ldGhvZCcpXG4gICAgICB9XG5cbiAgICAgIGlmIChvbkluZm8gJiYgdHlwZW9mIG9uSW5mbyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb25JbmZvIGNhbGxiYWNrJylcbiAgICAgIH1cblxuICAgICAgc3VwZXIoJ1VORElDSV9TVFJFQU0nKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKHV0aWwuaXNTdHJlYW0oYm9keSkpIHtcbiAgICAgICAgdXRpbC5kZXN0cm95KGJvZHkub24oJ2Vycm9yJywgdXRpbC5ub3ApLCBlcnIpXG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG5cbiAgICB0aGlzLnJlc3BvbnNlSGVhZGVycyA9IHJlc3BvbnNlSGVhZGVycyB8fCBudWxsXG4gICAgdGhpcy5vcGFxdWUgPSBvcGFxdWUgfHwgbnVsbFxuICAgIHRoaXMuZmFjdG9yeSA9IGZhY3RvcnlcbiAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2tcbiAgICB0aGlzLnJlcyA9IG51bGxcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuY29udGV4dCA9IG51bGxcbiAgICB0aGlzLnRyYWlsZXJzID0gbnVsbFxuICAgIHRoaXMuYm9keSA9IGJvZHlcbiAgICB0aGlzLm9uSW5mbyA9IG9uSW5mbyB8fCBudWxsXG4gICAgdGhpcy50aHJvd09uRXJyb3IgPSB0aHJvd09uRXJyb3IgfHwgZmFsc2VcblxuICAgIGlmICh1dGlsLmlzU3RyZWFtKGJvZHkpKSB7XG4gICAgICBib2R5Lm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICAgICAgdGhpcy5vbkVycm9yKGVycilcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgYWRkU2lnbmFsKHRoaXMsIHNpZ25hbClcbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQsIGNvbnRleHQpIHtcbiAgICBpZiAoIXRoaXMuY2FsbGJhY2spIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0XG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHJlc3VtZSwgc3RhdHVzTWVzc2FnZSkge1xuICAgIGNvbnN0IHsgZmFjdG9yeSwgb3BhcXVlLCBjb250ZXh0LCBjYWxsYmFjaywgcmVzcG9uc2VIZWFkZXJzIH0gPSB0aGlzXG5cbiAgICBjb25zdCBoZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzID09PSAncmF3JyA/IHV0aWwucGFyc2VSYXdIZWFkZXJzKHJhd0hlYWRlcnMpIDogdXRpbC5wYXJzZUhlYWRlcnMocmF3SGVhZGVycylcblxuICAgIGlmIChzdGF0dXNDb2RlIDwgMjAwKSB7XG4gICAgICBpZiAodGhpcy5vbkluZm8pIHtcbiAgICAgICAgdGhpcy5vbkluZm8oeyBzdGF0dXNDb2RlLCBoZWFkZXJzIH0pXG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLmZhY3RvcnkgPSBudWxsXG5cbiAgICBsZXQgcmVzXG5cbiAgICBpZiAodGhpcy50aHJvd09uRXJyb3IgJiYgc3RhdHVzQ29kZSA+PSA0MDApIHtcbiAgICAgIGNvbnN0IHBhcnNlZEhlYWRlcnMgPSByZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZUhlYWRlcnMocmF3SGVhZGVycykgOiBoZWFkZXJzXG4gICAgICBjb25zdCBjb250ZW50VHlwZSA9IHBhcnNlZEhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddXG4gICAgICByZXMgPSBuZXcgUGFzc1Rocm91Z2goKVxuXG4gICAgICB0aGlzLmNhbGxiYWNrID0gbnVsbFxuICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoZ2V0UmVzb2x2ZUVycm9yQm9keUNhbGxiYWNrLCBudWxsLFxuICAgICAgICB7IGNhbGxiYWNrLCBib2R5OiByZXMsIGNvbnRlbnRUeXBlLCBzdGF0dXNDb2RlLCBzdGF0dXNNZXNzYWdlLCBoZWFkZXJzIH1cbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGZhY3RvcnkgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHJlcyA9IHRoaXMucnVuSW5Bc3luY1Njb3BlKGZhY3RvcnksIG51bGwsIHtcbiAgICAgICAgc3RhdHVzQ29kZSxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgb3BhcXVlLFxuICAgICAgICBjb250ZXh0XG4gICAgICB9KVxuXG4gICAgICBpZiAoXG4gICAgICAgICFyZXMgfHxcbiAgICAgICAgdHlwZW9mIHJlcy53cml0ZSAhPT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgICB0eXBlb2YgcmVzLmVuZCAhPT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgICB0eXBlb2YgcmVzLm9uICE9PSAnZnVuY3Rpb24nXG4gICAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRSZXR1cm5WYWx1ZUVycm9yKCdleHBlY3RlZCBXcml0YWJsZScpXG4gICAgICB9XG5cbiAgICAgIC8vIFRPRE86IEF2b2lkIGZpbmlzaGVkLiBJdCByZWdpc3RlcnMgYW4gdW5uZWNlc3NhcnkgYW1vdW50IG9mIGxpc3RlbmVycy5cbiAgICAgIGZpbmlzaGVkKHJlcywgeyByZWFkYWJsZTogZmFsc2UgfSwgKGVycikgPT4ge1xuICAgICAgICBjb25zdCB7IGNhbGxiYWNrLCByZXMsIG9wYXF1ZSwgdHJhaWxlcnMsIGFib3J0IH0gPSB0aGlzXG5cbiAgICAgICAgdGhpcy5yZXMgPSBudWxsXG4gICAgICAgIGlmIChlcnIgfHwgIXJlcy5yZWFkYWJsZSkge1xuICAgICAgICAgIHV0aWwuZGVzdHJveShyZXMsIGVycilcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsXG4gICAgICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBlcnIgfHwgbnVsbCwgeyBvcGFxdWUsIHRyYWlsZXJzIH0pXG5cbiAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgIGFib3J0KClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXMub24oJ2RyYWluJywgcmVzdW1lKVxuXG4gICAgdGhpcy5yZXMgPSByZXNcblxuICAgIGNvbnN0IG5lZWREcmFpbiA9IHJlcy53cml0YWJsZU5lZWREcmFpbiAhPT0gdW5kZWZpbmVkXG4gICAgICA/IHJlcy53cml0YWJsZU5lZWREcmFpblxuICAgICAgOiByZXMuX3dyaXRhYmxlU3RhdGUgJiYgcmVzLl93cml0YWJsZVN0YXRlLm5lZWREcmFpblxuXG4gICAgcmV0dXJuIG5lZWREcmFpbiAhPT0gdHJ1ZVxuICB9XG5cbiAgb25EYXRhIChjaHVuaykge1xuICAgIGNvbnN0IHsgcmVzIH0gPSB0aGlzXG5cbiAgICByZXR1cm4gcmVzID8gcmVzLndyaXRlKGNodW5rKSA6IHRydWVcbiAgfVxuXG4gIG9uQ29tcGxldGUgKHRyYWlsZXJzKSB7XG4gICAgY29uc3QgeyByZXMgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgaWYgKCFyZXMpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMudHJhaWxlcnMgPSB1dGlsLnBhcnNlSGVhZGVycyh0cmFpbGVycylcblxuICAgIHJlcy5lbmQoKVxuICB9XG5cbiAgb25FcnJvciAoZXJyKSB7XG4gICAgY29uc3QgeyByZXMsIGNhbGxiYWNrLCBvcGFxdWUsIGJvZHkgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdGhpcy5mYWN0b3J5ID0gbnVsbFxuXG4gICAgaWYgKHJlcykge1xuICAgICAgdGhpcy5yZXMgPSBudWxsXG4gICAgICB1dGlsLmRlc3Ryb3kocmVzLCBlcnIpXG4gICAgfSBlbHNlIGlmIChjYWxsYmFjaykge1xuICAgICAgdGhpcy5jYWxsYmFjayA9IG51bGxcbiAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoY2FsbGJhY2ssIG51bGwsIGVyciwgeyBvcGFxdWUgfSlcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKGJvZHkpIHtcbiAgICAgIHRoaXMuYm9keSA9IG51bGxcbiAgICAgIHV0aWwuZGVzdHJveShib2R5LCBlcnIpXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHN0cmVhbSAob3B0cywgZmFjdG9yeSwgY2FsbGJhY2spIHtcbiAgaWYgKGNhbGxiYWNrID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgc3RyZWFtLmNhbGwodGhpcywgb3B0cywgZmFjdG9yeSwgKGVyciwgZGF0YSkgPT4ge1xuICAgICAgICByZXR1cm4gZXJyID8gcmVqZWN0KGVycikgOiByZXNvbHZlKGRhdGEpXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICB0cnkge1xuICAgIHRoaXMuZGlzcGF0Y2gob3B0cywgbmV3IFN0cmVhbUhhbmRsZXIob3B0cywgZmFjdG9yeSwgY2FsbGJhY2spKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gICAgY29uc3Qgb3BhcXVlID0gb3B0cyAmJiBvcHRzLm9wYXF1ZVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKGVyciwgeyBvcGFxdWUgfSkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBzdHJlYW1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3Qge1xuICBSZWFkYWJsZSxcbiAgRHVwbGV4LFxuICBQYXNzVGhyb3VnaFxufSA9IHJlcXVpcmUoJ3N0cmVhbScpXG5jb25zdCB7XG4gIEludmFsaWRBcmd1bWVudEVycm9yLFxuICBJbnZhbGlkUmV0dXJuVmFsdWVFcnJvcixcbiAgUmVxdWVzdEFib3J0ZWRFcnJvclxufSA9IHJlcXVpcmUoJy4uL2NvcmUvZXJyb3JzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBBc3luY1Jlc291cmNlIH0gPSByZXF1aXJlKCdhc3luY19ob29rcycpXG5jb25zdCB7IGFkZFNpZ25hbCwgcmVtb3ZlU2lnbmFsIH0gPSByZXF1aXJlKCcuL2Fib3J0LXNpZ25hbCcpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuXG5jb25zdCBrUmVzdW1lID0gU3ltYm9sKCdyZXN1bWUnKVxuXG5jbGFzcyBQaXBlbGluZVJlcXVlc3QgZXh0ZW5kcyBSZWFkYWJsZSB7XG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICBzdXBlcih7IGF1dG9EZXN0cm95OiB0cnVlIH0pXG5cbiAgICB0aGlzW2tSZXN1bWVdID0gbnVsbFxuICB9XG5cbiAgX3JlYWQgKCkge1xuICAgIGNvbnN0IHsgW2tSZXN1bWVdOiByZXN1bWUgfSA9IHRoaXNcblxuICAgIGlmIChyZXN1bWUpIHtcbiAgICAgIHRoaXNba1Jlc3VtZV0gPSBudWxsXG4gICAgICByZXN1bWUoKVxuICAgIH1cbiAgfVxuXG4gIF9kZXN0cm95IChlcnIsIGNhbGxiYWNrKSB7XG4gICAgdGhpcy5fcmVhZCgpXG5cbiAgICBjYWxsYmFjayhlcnIpXG4gIH1cbn1cblxuY2xhc3MgUGlwZWxpbmVSZXNwb25zZSBleHRlbmRzIFJlYWRhYmxlIHtcbiAgY29uc3RydWN0b3IgKHJlc3VtZSkge1xuICAgIHN1cGVyKHsgYXV0b0Rlc3Ryb3k6IHRydWUgfSlcbiAgICB0aGlzW2tSZXN1bWVdID0gcmVzdW1lXG4gIH1cblxuICBfcmVhZCAoKSB7XG4gICAgdGhpc1trUmVzdW1lXSgpXG4gIH1cblxuICBfZGVzdHJveSAoZXJyLCBjYWxsYmFjaykge1xuICAgIGlmICghZXJyICYmICF0aGlzLl9yZWFkYWJsZVN0YXRlLmVuZEVtaXR0ZWQpIHtcbiAgICAgIGVyciA9IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICBjYWxsYmFjayhlcnIpXG4gIH1cbn1cblxuY2xhc3MgUGlwZWxpbmVIYW5kbGVyIGV4dGVuZHMgQXN5bmNSZXNvdXJjZSB7XG4gIGNvbnN0cnVjdG9yIChvcHRzLCBoYW5kbGVyKSB7XG4gICAgaWYgKCFvcHRzIHx8IHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgaGFuZGxlciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIGhhbmRsZXInKVxuICAgIH1cblxuICAgIGNvbnN0IHsgc2lnbmFsLCBtZXRob2QsIG9wYXF1ZSwgb25JbmZvLCByZXNwb25zZUhlYWRlcnMgfSA9IG9wdHNcblxuICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc2lnbmFsIG11c3QgYmUgYW4gRXZlbnRFbWl0dGVyIG9yIEV2ZW50VGFyZ2V0JylcbiAgICB9XG5cbiAgICBpZiAobWV0aG9kID09PSAnQ09OTkVDVCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBtZXRob2QnKVxuICAgIH1cblxuICAgIGlmIChvbkluZm8gJiYgdHlwZW9mIG9uSW5mbyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9uSW5mbyBjYWxsYmFjaycpXG4gICAgfVxuXG4gICAgc3VwZXIoJ1VORElDSV9QSVBFTElORScpXG5cbiAgICB0aGlzLm9wYXF1ZSA9IG9wYXF1ZSB8fCBudWxsXG4gICAgdGhpcy5yZXNwb25zZUhlYWRlcnMgPSByZXNwb25zZUhlYWRlcnMgfHwgbnVsbFxuICAgIHRoaXMuaGFuZGxlciA9IGhhbmRsZXJcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuY29udGV4dCA9IG51bGxcbiAgICB0aGlzLm9uSW5mbyA9IG9uSW5mbyB8fCBudWxsXG5cbiAgICB0aGlzLnJlcSA9IG5ldyBQaXBlbGluZVJlcXVlc3QoKS5vbignZXJyb3InLCB1dGlsLm5vcClcblxuICAgIHRoaXMucmV0ID0gbmV3IER1cGxleCh7XG4gICAgICByZWFkYWJsZU9iamVjdE1vZGU6IG9wdHMub2JqZWN0TW9kZSxcbiAgICAgIGF1dG9EZXN0cm95OiB0cnVlLFxuICAgICAgcmVhZDogKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGJvZHkgfSA9IHRoaXNcblxuICAgICAgICBpZiAoYm9keSAmJiBib2R5LnJlc3VtZSkge1xuICAgICAgICAgIGJvZHkucmVzdW1lKClcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHdyaXRlOiAoY2h1bmssIGVuY29kaW5nLCBjYWxsYmFjaykgPT4ge1xuICAgICAgICBjb25zdCB7IHJlcSB9ID0gdGhpc1xuXG4gICAgICAgIGlmIChyZXEucHVzaChjaHVuaywgZW5jb2RpbmcpIHx8IHJlcS5fcmVhZGFibGVTdGF0ZS5kZXN0cm95ZWQpIHtcbiAgICAgICAgICBjYWxsYmFjaygpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVxW2tSZXN1bWVdID0gY2FsbGJhY2tcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGRlc3Ryb3k6IChlcnIsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgYm9keSwgcmVxLCByZXMsIHJldCwgYWJvcnQgfSA9IHRoaXNcblxuICAgICAgICBpZiAoIWVyciAmJiAhcmV0Ll9yZWFkYWJsZVN0YXRlLmVuZEVtaXR0ZWQpIHtcbiAgICAgICAgICBlcnIgPSBuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYWJvcnQgJiYgZXJyKSB7XG4gICAgICAgICAgYWJvcnQoKVxuICAgICAgICB9XG5cbiAgICAgICAgdXRpbC5kZXN0cm95KGJvZHksIGVycilcbiAgICAgICAgdXRpbC5kZXN0cm95KHJlcSwgZXJyKVxuICAgICAgICB1dGlsLmRlc3Ryb3kocmVzLCBlcnIpXG5cbiAgICAgICAgcmVtb3ZlU2lnbmFsKHRoaXMpXG5cbiAgICAgICAgY2FsbGJhY2soZXJyKVxuICAgICAgfVxuICAgIH0pLm9uKCdwcmVmaW5pc2gnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IHJlcSB9ID0gdGhpc1xuXG4gICAgICAvLyBOb2RlIDwgMTUgZG9lcyBub3QgY2FsbCBfZmluYWwgaW4gc2FtZSB0aWNrLlxuICAgICAgcmVxLnB1c2gobnVsbClcbiAgICB9KVxuXG4gICAgdGhpcy5yZXMgPSBudWxsXG5cbiAgICBhZGRTaWduYWwodGhpcywgc2lnbmFsKVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgcmV0LCByZXMgfSA9IHRoaXNcblxuICAgIGFzc2VydCghcmVzLCAncGlwZWxpbmUgY2Fubm90IGJlIHJldHJpZWQnKVxuXG4gICAgaWYgKHJldC5kZXN0cm95ZWQpIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0XG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHJlc3VtZSkge1xuICAgIGNvbnN0IHsgb3BhcXVlLCBoYW5kbGVyLCBjb250ZXh0IH0gPSB0aGlzXG5cbiAgICBpZiAoc3RhdHVzQ29kZSA8IDIwMCkge1xuICAgICAgaWYgKHRoaXMub25JbmZvKSB7XG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSB0aGlzLnJlc3BvbnNlSGVhZGVycyA9PT0gJ3JhdycgPyB1dGlsLnBhcnNlUmF3SGVhZGVycyhyYXdIZWFkZXJzKSA6IHV0aWwucGFyc2VIZWFkZXJzKHJhd0hlYWRlcnMpXG4gICAgICAgIHRoaXMub25JbmZvKHsgc3RhdHVzQ29kZSwgaGVhZGVycyB9KVxuICAgICAgfVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpcy5yZXMgPSBuZXcgUGlwZWxpbmVSZXNwb25zZShyZXN1bWUpXG5cbiAgICBsZXQgYm9keVxuICAgIHRyeSB7XG4gICAgICB0aGlzLmhhbmRsZXIgPSBudWxsXG4gICAgICBjb25zdCBoZWFkZXJzID0gdGhpcy5yZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZVJhd0hlYWRlcnMocmF3SGVhZGVycykgOiB1dGlsLnBhcnNlSGVhZGVycyhyYXdIZWFkZXJzKVxuICAgICAgYm9keSA9IHRoaXMucnVuSW5Bc3luY1Njb3BlKGhhbmRsZXIsIG51bGwsIHtcbiAgICAgICAgc3RhdHVzQ29kZSxcbiAgICAgICAgaGVhZGVycyxcbiAgICAgICAgb3BhcXVlLFxuICAgICAgICBib2R5OiB0aGlzLnJlcyxcbiAgICAgICAgY29udGV4dFxuICAgICAgfSlcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRoaXMucmVzLm9uKCdlcnJvcicsIHV0aWwubm9wKVxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuXG4gICAgaWYgKCFib2R5IHx8IHR5cGVvZiBib2R5Lm9uICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFJldHVyblZhbHVlRXJyb3IoJ2V4cGVjdGVkIFJlYWRhYmxlJylcbiAgICB9XG5cbiAgICBib2R5XG4gICAgICAub24oJ2RhdGEnLCAoY2h1bmspID0+IHtcbiAgICAgICAgY29uc3QgeyByZXQsIGJvZHkgfSA9IHRoaXNcblxuICAgICAgICBpZiAoIXJldC5wdXNoKGNodW5rKSAmJiBib2R5LnBhdXNlKSB7XG4gICAgICAgICAgYm9keS5wYXVzZSgpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgICAgICBjb25zdCB7IHJldCB9ID0gdGhpc1xuXG4gICAgICAgIHV0aWwuZGVzdHJveShyZXQsIGVycilcbiAgICAgIH0pXG4gICAgICAub24oJ2VuZCcsICgpID0+IHtcbiAgICAgICAgY29uc3QgeyByZXQgfSA9IHRoaXNcblxuICAgICAgICByZXQucHVzaChudWxsKVxuICAgICAgfSlcbiAgICAgIC5vbignY2xvc2UnLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcmV0IH0gPSB0aGlzXG5cbiAgICAgICAgaWYgKCFyZXQuX3JlYWRhYmxlU3RhdGUuZW5kZWQpIHtcbiAgICAgICAgICB1dGlsLmRlc3Ryb3kocmV0LCBuZXcgUmVxdWVzdEFib3J0ZWRFcnJvcigpKVxuICAgICAgICB9XG4gICAgICB9KVxuXG4gICAgdGhpcy5ib2R5ID0gYm9keVxuICB9XG5cbiAgb25EYXRhIChjaHVuaykge1xuICAgIGNvbnN0IHsgcmVzIH0gPSB0aGlzXG4gICAgcmV0dXJuIHJlcy5wdXNoKGNodW5rKVxuICB9XG5cbiAgb25Db21wbGV0ZSAodHJhaWxlcnMpIHtcbiAgICBjb25zdCB7IHJlcyB9ID0gdGhpc1xuICAgIHJlcy5wdXNoKG51bGwpXG4gIH1cblxuICBvbkVycm9yIChlcnIpIHtcbiAgICBjb25zdCB7IHJldCB9ID0gdGhpc1xuICAgIHRoaXMuaGFuZGxlciA9IG51bGxcbiAgICB1dGlsLmRlc3Ryb3kocmV0LCBlcnIpXG4gIH1cbn1cblxuZnVuY3Rpb24gcGlwZWxpbmUgKG9wdHMsIGhhbmRsZXIpIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBwaXBlbGluZUhhbmRsZXIgPSBuZXcgUGlwZWxpbmVIYW5kbGVyKG9wdHMsIGhhbmRsZXIpXG4gICAgdGhpcy5kaXNwYXRjaCh7IC4uLm9wdHMsIGJvZHk6IHBpcGVsaW5lSGFuZGxlci5yZXEgfSwgcGlwZWxpbmVIYW5kbGVyKVxuICAgIHJldHVybiBwaXBlbGluZUhhbmRsZXIucmV0XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHJldHVybiBuZXcgUGFzc1Rocm91Z2goKS5kZXN0cm95KGVycilcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHBpcGVsaW5lXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IsIFJlcXVlc3RBYm9ydGVkRXJyb3IsIFNvY2tldEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5jb25zdCB7IEFzeW5jUmVzb3VyY2UgfSA9IHJlcXVpcmUoJ2FzeW5jX2hvb2tzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcblxuY2xhc3MgVXBncmFkZUhhbmRsZXIgZXh0ZW5kcyBBc3luY1Jlc291cmNlIHtcbiAgY29uc3RydWN0b3IgKG9wdHMsIGNhbGxiYWNrKSB7XG4gICAgaWYgKCFvcHRzIHx8IHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMnKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignaW52YWxpZCBjYWxsYmFjaycpXG4gICAgfVxuXG4gICAgY29uc3QgeyBzaWduYWwsIG9wYXF1ZSwgcmVzcG9uc2VIZWFkZXJzIH0gPSBvcHRzXG5cbiAgICBpZiAoc2lnbmFsICYmIHR5cGVvZiBzaWduYWwub24gIT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIHNpZ25hbC5hZGRFdmVudExpc3RlbmVyICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3NpZ25hbCBtdXN0IGJlIGFuIEV2ZW50RW1pdHRlciBvciBFdmVudFRhcmdldCcpXG4gICAgfVxuXG4gICAgc3VwZXIoJ1VORElDSV9VUEdSQURFJylcblxuICAgIHRoaXMucmVzcG9uc2VIZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzIHx8IG51bGxcbiAgICB0aGlzLm9wYXF1ZSA9IG9wYXF1ZSB8fCBudWxsXG4gICAgdGhpcy5jYWxsYmFjayA9IGNhbGxiYWNrXG4gICAgdGhpcy5hYm9ydCA9IG51bGxcbiAgICB0aGlzLmNvbnRleHQgPSBudWxsXG5cbiAgICBhZGRTaWduYWwodGhpcywgc2lnbmFsKVxuICB9XG5cbiAgb25Db25uZWN0IChhYm9ydCwgY29udGV4dCkge1xuICAgIGlmICghdGhpcy5jYWxsYmFjaykge1xuICAgICAgdGhyb3cgbmV3IFJlcXVlc3RBYm9ydGVkRXJyb3IoKVxuICAgIH1cblxuICAgIHRoaXMuYWJvcnQgPSBhYm9ydFxuICAgIHRoaXMuY29udGV4dCA9IG51bGxcbiAgfVxuXG4gIG9uSGVhZGVycyAoKSB7XG4gICAgdGhyb3cgbmV3IFNvY2tldEVycm9yKCdiYWQgdXBncmFkZScsIG51bGwpXG4gIH1cblxuICBvblVwZ3JhZGUgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHNvY2tldCkge1xuICAgIGNvbnN0IHsgY2FsbGJhY2ssIG9wYXF1ZSwgY29udGV4dCB9ID0gdGhpc1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHN0YXR1c0NvZGUsIDEwMSlcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdGhpcy5jYWxsYmFjayA9IG51bGxcbiAgICBjb25zdCBoZWFkZXJzID0gdGhpcy5yZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZVJhd0hlYWRlcnMocmF3SGVhZGVycykgOiB1dGlsLnBhcnNlSGVhZGVycyhyYXdIZWFkZXJzKVxuICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBudWxsLCB7XG4gICAgICBoZWFkZXJzLFxuICAgICAgc29ja2V0LFxuICAgICAgb3BhcXVlLFxuICAgICAgY29udGV4dFxuICAgIH0pXG4gIH1cblxuICBvbkVycm9yIChlcnIpIHtcbiAgICBjb25zdCB7IGNhbGxiYWNrLCBvcGFxdWUgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICB0aGlzLmNhbGxiYWNrID0gbnVsbFxuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICB0aGlzLnJ1bkluQXN5bmNTY29wZShjYWxsYmFjaywgbnVsbCwgZXJyLCB7IG9wYXF1ZSB9KVxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdXBncmFkZSAob3B0cywgY2FsbGJhY2spIHtcbiAgaWYgKGNhbGxiYWNrID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdXBncmFkZS5jYWxsKHRoaXMsIG9wdHMsIChlcnIsIGRhdGEpID0+IHtcbiAgICAgICAgcmV0dXJuIGVyciA/IHJlamVjdChlcnIpIDogcmVzb2x2ZShkYXRhKVxuICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgdHJ5IHtcbiAgICBjb25zdCB1cGdyYWRlSGFuZGxlciA9IG5ldyBVcGdyYWRlSGFuZGxlcihvcHRzLCBjYWxsYmFjaylcbiAgICB0aGlzLmRpc3BhdGNoKHtcbiAgICAgIC4uLm9wdHMsXG4gICAgICBtZXRob2Q6IG9wdHMubWV0aG9kIHx8ICdHRVQnLFxuICAgICAgdXBncmFkZTogb3B0cy5wcm90b2NvbCB8fCAnV2Vic29ja2V0J1xuICAgIH0sIHVwZ3JhZGVIYW5kbGVyKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gICAgY29uc3Qgb3BhcXVlID0gb3B0cyAmJiBvcHRzLm9wYXF1ZVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKGVyciwgeyBvcGFxdWUgfSkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB1cGdyYWRlXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgQXN5bmNSZXNvdXJjZSB9ID0gcmVxdWlyZSgnYXN5bmNfaG9va3MnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciwgUmVxdWVzdEFib3J0ZWRFcnJvciwgU29ja2V0RXJyb3IgfSA9IHJlcXVpcmUoJy4uL2NvcmUvZXJyb3JzJylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBhZGRTaWduYWwsIHJlbW92ZVNpZ25hbCB9ID0gcmVxdWlyZSgnLi9hYm9ydC1zaWduYWwnKVxuXG5jbGFzcyBDb25uZWN0SGFuZGxlciBleHRlbmRzIEFzeW5jUmVzb3VyY2Uge1xuICBjb25zdHJ1Y3RvciAob3B0cywgY2FsbGJhY2spIHtcbiAgICBpZiAoIW9wdHMgfHwgdHlwZW9mIG9wdHMgIT09ICdvYmplY3QnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgb3B0cycpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBjYWxsYmFjayAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIGNhbGxiYWNrJylcbiAgICB9XG5cbiAgICBjb25zdCB7IHNpZ25hbCwgb3BhcXVlLCByZXNwb25zZUhlYWRlcnMgfSA9IG9wdHNcblxuICAgIGlmIChzaWduYWwgJiYgdHlwZW9mIHNpZ25hbC5vbiAhPT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2Ygc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc2lnbmFsIG11c3QgYmUgYW4gRXZlbnRFbWl0dGVyIG9yIEV2ZW50VGFyZ2V0JylcbiAgICB9XG5cbiAgICBzdXBlcignVU5ESUNJX0NPTk5FQ1QnKVxuXG4gICAgdGhpcy5vcGFxdWUgPSBvcGFxdWUgfHwgbnVsbFxuICAgIHRoaXMucmVzcG9uc2VIZWFkZXJzID0gcmVzcG9uc2VIZWFkZXJzIHx8IG51bGxcbiAgICB0aGlzLmNhbGxiYWNrID0gY2FsbGJhY2tcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuXG4gICAgYWRkU2lnbmFsKHRoaXMsIHNpZ25hbClcbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQsIGNvbnRleHQpIHtcbiAgICBpZiAoIXRoaXMuY2FsbGJhY2spIHtcbiAgICAgIHRocm93IG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKClcbiAgICB9XG5cbiAgICB0aGlzLmFib3J0ID0gYWJvcnRcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0XG4gIH1cblxuICBvbkhlYWRlcnMgKCkge1xuICAgIHRocm93IG5ldyBTb2NrZXRFcnJvcignYmFkIGNvbm5lY3QnLCBudWxsKVxuICB9XG5cbiAgb25VcGdyYWRlIChzdGF0dXNDb2RlLCByYXdIZWFkZXJzLCBzb2NrZXQpIHtcbiAgICBjb25zdCB7IGNhbGxiYWNrLCBvcGFxdWUsIGNvbnRleHQgfSA9IHRoaXNcblxuICAgIHJlbW92ZVNpZ25hbCh0aGlzKVxuXG4gICAgdGhpcy5jYWxsYmFjayA9IG51bGxcblxuICAgIGxldCBoZWFkZXJzID0gcmF3SGVhZGVyc1xuICAgIC8vIEluZGljYXRlcyBpcyBhbiBIVFRQMlNlc3Npb25cbiAgICBpZiAoaGVhZGVycyAhPSBudWxsKSB7XG4gICAgICBoZWFkZXJzID0gdGhpcy5yZXNwb25zZUhlYWRlcnMgPT09ICdyYXcnID8gdXRpbC5wYXJzZVJhd0hlYWRlcnMocmF3SGVhZGVycykgOiB1dGlsLnBhcnNlSGVhZGVycyhyYXdIZWFkZXJzKVxuICAgIH1cblxuICAgIHRoaXMucnVuSW5Bc3luY1Njb3BlKGNhbGxiYWNrLCBudWxsLCBudWxsLCB7XG4gICAgICBzdGF0dXNDb2RlLFxuICAgICAgaGVhZGVycyxcbiAgICAgIHNvY2tldCxcbiAgICAgIG9wYXF1ZSxcbiAgICAgIGNvbnRleHRcbiAgICB9KVxuICB9XG5cbiAgb25FcnJvciAoZXJyKSB7XG4gICAgY29uc3QgeyBjYWxsYmFjaywgb3BhcXVlIH0gPSB0aGlzXG5cbiAgICByZW1vdmVTaWduYWwodGhpcylcblxuICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgdGhpcy5jYWxsYmFjayA9IG51bGxcbiAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgdGhpcy5ydW5JbkFzeW5jU2NvcGUoY2FsbGJhY2ssIG51bGwsIGVyciwgeyBvcGFxdWUgfSlcbiAgICAgIH0pXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNvbm5lY3QgKG9wdHMsIGNhbGxiYWNrKSB7XG4gIGlmIChjYWxsYmFjayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbm5lY3QuY2FsbCh0aGlzLCBvcHRzLCAoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgIHJldHVybiBlcnIgPyByZWplY3QoZXJyKSA6IHJlc29sdmUoZGF0YSlcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIHRyeSB7XG4gICAgY29uc3QgY29ubmVjdEhhbmRsZXIgPSBuZXcgQ29ubmVjdEhhbmRsZXIob3B0cywgY2FsbGJhY2spXG4gICAgdGhpcy5kaXNwYXRjaCh7IC4uLm9wdHMsIG1ldGhvZDogJ0NPTk5FQ1QnIH0sIGNvbm5lY3RIYW5kbGVyKVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBpZiAodHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gICAgY29uc3Qgb3BhcXVlID0gb3B0cyAmJiBvcHRzLm9wYXF1ZVxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGNhbGxiYWNrKGVyciwgeyBvcGFxdWUgfSkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBjb25uZWN0XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzLnJlcXVlc3QgPSByZXF1aXJlKCcuL2FwaS1yZXF1ZXN0Jylcbm1vZHVsZS5leHBvcnRzLnN0cmVhbSA9IHJlcXVpcmUoJy4vYXBpLXN0cmVhbScpXG5tb2R1bGUuZXhwb3J0cy5waXBlbGluZSA9IHJlcXVpcmUoJy4vYXBpLXBpcGVsaW5lJylcbm1vZHVsZS5leHBvcnRzLnVwZ3JhZGUgPSByZXF1aXJlKCcuL2FwaS11cGdyYWRlJylcbm1vZHVsZS5leHBvcnRzLmNvbm5lY3QgPSByZXF1aXJlKCcuL2FwaS1jb25uZWN0JylcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBVbmRpY2lFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuXG5jbGFzcyBNb2NrTm90TWF0Y2hlZEVycm9yIGV4dGVuZHMgVW5kaWNpRXJyb3Ige1xuICBjb25zdHJ1Y3RvciAobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgTW9ja05vdE1hdGNoZWRFcnJvcilcbiAgICB0aGlzLm5hbWUgPSAnTW9ja05vdE1hdGNoZWRFcnJvcidcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlIHx8ICdUaGUgcmVxdWVzdCBkb2VzIG5vdCBtYXRjaCBhbnkgcmVnaXN0ZXJlZCBtb2NrIGRpc3BhdGNoZXMnXG4gICAgdGhpcy5jb2RlID0gJ1VORF9NT0NLX0VSUl9NT0NLX05PVF9NQVRDSEVEJ1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBNb2NrTm90TWF0Y2hlZEVycm9yXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrQWdlbnQ6IFN5bWJvbCgnYWdlbnQnKSxcbiAga09wdGlvbnM6IFN5bWJvbCgnb3B0aW9ucycpLFxuICBrRmFjdG9yeTogU3ltYm9sKCdmYWN0b3J5JyksXG4gIGtEaXNwYXRjaGVzOiBTeW1ib2woJ2Rpc3BhdGNoZXMnKSxcbiAga0Rpc3BhdGNoS2V5OiBTeW1ib2woJ2Rpc3BhdGNoIGtleScpLFxuICBrRGVmYXVsdEhlYWRlcnM6IFN5bWJvbCgnZGVmYXVsdCBoZWFkZXJzJyksXG4gIGtEZWZhdWx0VHJhaWxlcnM6IFN5bWJvbCgnZGVmYXVsdCB0cmFpbGVycycpLFxuICBrQ29udGVudExlbmd0aDogU3ltYm9sKCdjb250ZW50IGxlbmd0aCcpLFxuICBrTW9ja0FnZW50OiBTeW1ib2woJ21vY2sgYWdlbnQnKSxcbiAga01vY2tBZ2VudFNldDogU3ltYm9sKCdtb2NrIGFnZW50IHNldCcpLFxuICBrTW9ja0FnZW50R2V0OiBTeW1ib2woJ21vY2sgYWdlbnQgZ2V0JyksXG4gIGtNb2NrRGlzcGF0Y2g6IFN5bWJvbCgnbW9jayBkaXNwYXRjaCcpLFxuICBrQ2xvc2U6IFN5bWJvbCgnY2xvc2UnKSxcbiAga09yaWdpbmFsQ2xvc2U6IFN5bWJvbCgnb3JpZ2luYWwgYWdlbnQgY2xvc2UnKSxcbiAga09yaWdpbjogU3ltYm9sKCdvcmlnaW4nKSxcbiAga0lzTW9ja0FjdGl2ZTogU3ltYm9sKCdpcyBtb2NrIGFjdGl2ZScpLFxuICBrTmV0Q29ubmVjdDogU3ltYm9sKCduZXQgY29ubmVjdCcpLFxuICBrR2V0TmV0Q29ubmVjdDogU3ltYm9sKCdnZXQgbmV0IGNvbm5lY3QnKSxcbiAga0Nvbm5lY3RlZDogU3ltYm9sKCdjb25uZWN0ZWQnKVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IE1vY2tOb3RNYXRjaGVkRXJyb3IgfSA9IHJlcXVpcmUoJy4vbW9jay1lcnJvcnMnKVxuY29uc3Qge1xuICBrRGlzcGF0Y2hlcyxcbiAga01vY2tBZ2VudCxcbiAga09yaWdpbmFsRGlzcGF0Y2gsXG4gIGtPcmlnaW4sXG4gIGtHZXROZXRDb25uZWN0XG59ID0gcmVxdWlyZSgnLi9tb2NrLXN5bWJvbHMnKVxuY29uc3QgeyBidWlsZFVSTCwgbm9wIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBTVEFUVVNfQ09ERVMgfSA9IHJlcXVpcmUoJ2h0dHAnKVxuY29uc3Qge1xuICB0eXBlczoge1xuICAgIGlzUHJvbWlzZVxuICB9XG59ID0gcmVxdWlyZSgndXRpbCcpXG5cbmZ1bmN0aW9uIG1hdGNoVmFsdWUgKG1hdGNoLCB2YWx1ZSkge1xuICBpZiAodHlwZW9mIG1hdGNoID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBtYXRjaCA9PT0gdmFsdWVcbiAgfVxuICBpZiAobWF0Y2ggaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICByZXR1cm4gbWF0Y2gudGVzdCh2YWx1ZSlcbiAgfVxuICBpZiAodHlwZW9mIG1hdGNoID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIG1hdGNoKHZhbHVlKSA9PT0gdHJ1ZVxuICB9XG4gIHJldHVybiBmYWxzZVxufVxuXG5mdW5jdGlvbiBsb3dlckNhc2VFbnRyaWVzIChoZWFkZXJzKSB7XG4gIHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgT2JqZWN0LmVudHJpZXMoaGVhZGVycykubWFwKChbaGVhZGVyTmFtZSwgaGVhZGVyVmFsdWVdKSA9PiB7XG4gICAgICByZXR1cm4gW2hlYWRlck5hbWUudG9Mb2NhbGVMb3dlckNhc2UoKSwgaGVhZGVyVmFsdWVdXG4gICAgfSlcbiAgKVxufVxuXG4vKipcbiAqIEBwYXJhbSB7aW1wb3J0KCcuLi8uLi9pbmRleCcpLkhlYWRlcnN8c3RyaW5nW118UmVjb3JkPHN0cmluZywgc3RyaW5nPn0gaGVhZGVyc1xuICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICovXG5mdW5jdGlvbiBnZXRIZWFkZXJCeU5hbWUgKGhlYWRlcnMsIGtleSkge1xuICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzKSkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaGVhZGVycy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgaWYgKGhlYWRlcnNbaV0udG9Mb2NhbGVMb3dlckNhc2UoKSA9PT0ga2V5LnRvTG9jYWxlTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgcmV0dXJuIGhlYWRlcnNbaSArIDFdXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9IGVsc2UgaWYgKHR5cGVvZiBoZWFkZXJzLmdldCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBoZWFkZXJzLmdldChrZXkpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGxvd2VyQ2FzZUVudHJpZXMoaGVhZGVycylba2V5LnRvTG9jYWxlTG93ZXJDYXNlKCldXG4gIH1cbn1cblxuLyoqIEBwYXJhbSB7c3RyaW5nW119IGhlYWRlcnMgKi9cbmZ1bmN0aW9uIGJ1aWxkSGVhZGVyc0Zyb21BcnJheSAoaGVhZGVycykgeyAvLyBmZXRjaCBIZWFkZXJzTGlzdFxuICBjb25zdCBjbG9uZSA9IGhlYWRlcnMuc2xpY2UoKVxuICBjb25zdCBlbnRyaWVzID0gW11cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNsb25lLmxlbmd0aDsgaW5kZXggKz0gMikge1xuICAgIGVudHJpZXMucHVzaChbY2xvbmVbaW5kZXhdLCBjbG9uZVtpbmRleCArIDFdXSlcbiAgfVxuICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKGVudHJpZXMpXG59XG5cbmZ1bmN0aW9uIG1hdGNoSGVhZGVycyAobW9ja0Rpc3BhdGNoLCBoZWFkZXJzKSB7XG4gIGlmICh0eXBlb2YgbW9ja0Rpc3BhdGNoLmhlYWRlcnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShoZWFkZXJzKSkgeyAvLyBmZXRjaCBIZWFkZXJzTGlzdFxuICAgICAgaGVhZGVycyA9IGJ1aWxkSGVhZGVyc0Zyb21BcnJheShoZWFkZXJzKVxuICAgIH1cbiAgICByZXR1cm4gbW9ja0Rpc3BhdGNoLmhlYWRlcnMoaGVhZGVycyA/IGxvd2VyQ2FzZUVudHJpZXMoaGVhZGVycykgOiB7fSlcbiAgfVxuICBpZiAodHlwZW9mIG1vY2tEaXNwYXRjaC5oZWFkZXJzID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiB0cnVlXG4gIH1cbiAgaWYgKHR5cGVvZiBoZWFkZXJzICE9PSAnb2JqZWN0JyB8fCB0eXBlb2YgbW9ja0Rpc3BhdGNoLmhlYWRlcnMgIT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBmb3IgKGNvbnN0IFttYXRjaEhlYWRlck5hbWUsIG1hdGNoSGVhZGVyVmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKG1vY2tEaXNwYXRjaC5oZWFkZXJzKSkge1xuICAgIGNvbnN0IGhlYWRlclZhbHVlID0gZ2V0SGVhZGVyQnlOYW1lKGhlYWRlcnMsIG1hdGNoSGVhZGVyTmFtZSlcblxuICAgIGlmICghbWF0Y2hWYWx1ZShtYXRjaEhlYWRlclZhbHVlLCBoZWFkZXJWYWx1ZSkpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuICByZXR1cm4gdHJ1ZVxufVxuXG5mdW5jdGlvbiBzYWZlVXJsIChwYXRoKSB7XG4gIGlmICh0eXBlb2YgcGF0aCAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gcGF0aFxuICB9XG5cbiAgY29uc3QgcGF0aFNlZ21lbnRzID0gcGF0aC5zcGxpdCgnPycpXG5cbiAgaWYgKHBhdGhTZWdtZW50cy5sZW5ndGggIT09IDIpIHtcbiAgICByZXR1cm4gcGF0aFxuICB9XG5cbiAgY29uc3QgcXAgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHBhdGhTZWdtZW50cy5wb3AoKSlcbiAgcXAuc29ydCgpXG4gIHJldHVybiBbLi4ucGF0aFNlZ21lbnRzLCBxcC50b1N0cmluZygpXS5qb2luKCc/Jylcbn1cblxuZnVuY3Rpb24gbWF0Y2hLZXkgKG1vY2tEaXNwYXRjaCwgeyBwYXRoLCBtZXRob2QsIGJvZHksIGhlYWRlcnMgfSkge1xuICBjb25zdCBwYXRoTWF0Y2ggPSBtYXRjaFZhbHVlKG1vY2tEaXNwYXRjaC5wYXRoLCBwYXRoKVxuICBjb25zdCBtZXRob2RNYXRjaCA9IG1hdGNoVmFsdWUobW9ja0Rpc3BhdGNoLm1ldGhvZCwgbWV0aG9kKVxuICBjb25zdCBib2R5TWF0Y2ggPSB0eXBlb2YgbW9ja0Rpc3BhdGNoLmJvZHkgIT09ICd1bmRlZmluZWQnID8gbWF0Y2hWYWx1ZShtb2NrRGlzcGF0Y2guYm9keSwgYm9keSkgOiB0cnVlXG4gIGNvbnN0IGhlYWRlcnNNYXRjaCA9IG1hdGNoSGVhZGVycyhtb2NrRGlzcGF0Y2gsIGhlYWRlcnMpXG4gIHJldHVybiBwYXRoTWF0Y2ggJiYgbWV0aG9kTWF0Y2ggJiYgYm9keU1hdGNoICYmIGhlYWRlcnNNYXRjaFxufVxuXG5mdW5jdGlvbiBnZXRSZXNwb25zZURhdGEgKGRhdGEpIHtcbiAgaWYgKEJ1ZmZlci5pc0J1ZmZlcihkYXRhKSkge1xuICAgIHJldHVybiBkYXRhXG4gIH0gZWxzZSBpZiAodHlwZW9mIGRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGRhdGEpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGRhdGEudG9TdHJpbmcoKVxuICB9XG59XG5cbmZ1bmN0aW9uIGdldE1vY2tEaXNwYXRjaCAobW9ja0Rpc3BhdGNoZXMsIGtleSkge1xuICBjb25zdCBiYXNlUGF0aCA9IGtleS5xdWVyeSA/IGJ1aWxkVVJMKGtleS5wYXRoLCBrZXkucXVlcnkpIDoga2V5LnBhdGhcbiAgY29uc3QgcmVzb2x2ZWRQYXRoID0gdHlwZW9mIGJhc2VQYXRoID09PSAnc3RyaW5nJyA/IHNhZmVVcmwoYmFzZVBhdGgpIDogYmFzZVBhdGhcblxuICAvLyBNYXRjaCBwYXRoXG4gIGxldCBtYXRjaGVkTW9ja0Rpc3BhdGNoZXMgPSBtb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKHsgY29uc3VtZWQgfSkgPT4gIWNvbnN1bWVkKS5maWx0ZXIoKHsgcGF0aCB9KSA9PiBtYXRjaFZhbHVlKHNhZmVVcmwocGF0aCksIHJlc29sdmVkUGF0aCkpXG4gIGlmIChtYXRjaGVkTW9ja0Rpc3BhdGNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYE1vY2sgZGlzcGF0Y2ggbm90IG1hdGNoZWQgZm9yIHBhdGggJyR7cmVzb2x2ZWRQYXRofSdgKVxuICB9XG5cbiAgLy8gTWF0Y2ggbWV0aG9kXG4gIG1hdGNoZWRNb2NrRGlzcGF0Y2hlcyA9IG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKHsgbWV0aG9kIH0pID0+IG1hdGNoVmFsdWUobWV0aG9kLCBrZXkubWV0aG9kKSlcbiAgaWYgKG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5sZW5ndGggPT09IDApIHtcbiAgICB0aHJvdyBuZXcgTW9ja05vdE1hdGNoZWRFcnJvcihgTW9jayBkaXNwYXRjaCBub3QgbWF0Y2hlZCBmb3IgbWV0aG9kICcke2tleS5tZXRob2R9J2ApXG4gIH1cblxuICAvLyBNYXRjaCBib2R5XG4gIG1hdGNoZWRNb2NrRGlzcGF0Y2hlcyA9IG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKHsgYm9keSB9KSA9PiB0eXBlb2YgYm9keSAhPT0gJ3VuZGVmaW5lZCcgPyBtYXRjaFZhbHVlKGJvZHksIGtleS5ib2R5KSA6IHRydWUpXG4gIGlmIChtYXRjaGVkTW9ja0Rpc3BhdGNoZXMubGVuZ3RoID09PSAwKSB7XG4gICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYE1vY2sgZGlzcGF0Y2ggbm90IG1hdGNoZWQgZm9yIGJvZHkgJyR7a2V5LmJvZHl9J2ApXG4gIH1cblxuICAvLyBNYXRjaCBoZWFkZXJzXG4gIG1hdGNoZWRNb2NrRGlzcGF0Y2hlcyA9IG1hdGNoZWRNb2NrRGlzcGF0Y2hlcy5maWx0ZXIoKG1vY2tEaXNwYXRjaCkgPT4gbWF0Y2hIZWFkZXJzKG1vY2tEaXNwYXRjaCwga2V5LmhlYWRlcnMpKVxuICBpZiAobWF0Y2hlZE1vY2tEaXNwYXRjaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgIHRocm93IG5ldyBNb2NrTm90TWF0Y2hlZEVycm9yKGBNb2NrIGRpc3BhdGNoIG5vdCBtYXRjaGVkIGZvciBoZWFkZXJzICcke3R5cGVvZiBrZXkuaGVhZGVycyA9PT0gJ29iamVjdCcgPyBKU09OLnN0cmluZ2lmeShrZXkuaGVhZGVycykgOiBrZXkuaGVhZGVyc30nYClcbiAgfVxuXG4gIHJldHVybiBtYXRjaGVkTW9ja0Rpc3BhdGNoZXNbMF1cbn1cblxuZnVuY3Rpb24gYWRkTW9ja0Rpc3BhdGNoIChtb2NrRGlzcGF0Y2hlcywga2V5LCBkYXRhKSB7XG4gIGNvbnN0IGJhc2VEYXRhID0geyB0aW1lc0ludm9rZWQ6IDAsIHRpbWVzOiAxLCBwZXJzaXN0OiBmYWxzZSwgY29uc3VtZWQ6IGZhbHNlIH1cbiAgY29uc3QgcmVwbHlEYXRhID0gdHlwZW9mIGRhdGEgPT09ICdmdW5jdGlvbicgPyB7IGNhbGxiYWNrOiBkYXRhIH0gOiB7IC4uLmRhdGEgfVxuICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSB7IC4uLmJhc2VEYXRhLCAuLi5rZXksIHBlbmRpbmc6IHRydWUsIGRhdGE6IHsgZXJyb3I6IG51bGwsIC4uLnJlcGx5RGF0YSB9IH1cbiAgbW9ja0Rpc3BhdGNoZXMucHVzaChuZXdNb2NrRGlzcGF0Y2gpXG4gIHJldHVybiBuZXdNb2NrRGlzcGF0Y2hcbn1cblxuZnVuY3Rpb24gZGVsZXRlTW9ja0Rpc3BhdGNoIChtb2NrRGlzcGF0Y2hlcywga2V5KSB7XG4gIGNvbnN0IGluZGV4ID0gbW9ja0Rpc3BhdGNoZXMuZmluZEluZGV4KGRpc3BhdGNoID0+IHtcbiAgICBpZiAoIWRpc3BhdGNoLmNvbnN1bWVkKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gICAgcmV0dXJuIG1hdGNoS2V5KGRpc3BhdGNoLCBrZXkpXG4gIH0pXG4gIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICBtb2NrRGlzcGF0Y2hlcy5zcGxpY2UoaW5kZXgsIDEpXG4gIH1cbn1cblxuZnVuY3Rpb24gYnVpbGRLZXkgKG9wdHMpIHtcbiAgY29uc3QgeyBwYXRoLCBtZXRob2QsIGJvZHksIGhlYWRlcnMsIHF1ZXJ5IH0gPSBvcHRzXG4gIHJldHVybiB7XG4gICAgcGF0aCxcbiAgICBtZXRob2QsXG4gICAgYm9keSxcbiAgICBoZWFkZXJzLFxuICAgIHF1ZXJ5XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVLZXlWYWx1ZXMgKGRhdGEpIHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGRhdGEpLnJlZHVjZSgoa2V5VmFsdWVQYWlycywgW2tleSwgdmFsdWVdKSA9PiBbXG4gICAgLi4ua2V5VmFsdWVQYWlycyxcbiAgICBCdWZmZXIuZnJvbShgJHtrZXl9YCksXG4gICAgQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZS5tYXAoeCA9PiBCdWZmZXIuZnJvbShgJHt4fWApKSA6IEJ1ZmZlci5mcm9tKGAke3ZhbHVlfWApXG4gIF0sIFtdKVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRUUC9TdGF0dXNcbiAqIEBwYXJhbSB7bnVtYmVyfSBzdGF0dXNDb2RlXG4gKi9cbmZ1bmN0aW9uIGdldFN0YXR1c1RleHQgKHN0YXR1c0NvZGUpIHtcbiAgcmV0dXJuIFNUQVRVU19DT0RFU1tzdGF0dXNDb2RlXSB8fCAndW5rbm93bidcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0UmVzcG9uc2UgKGJvZHkpIHtcbiAgY29uc3QgYnVmZmVycyA9IFtdXG4gIGZvciBhd2FpdCAoY29uc3QgZGF0YSBvZiBib2R5KSB7XG4gICAgYnVmZmVycy5wdXNoKGRhdGEpXG4gIH1cbiAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoYnVmZmVycykudG9TdHJpbmcoJ3V0ZjgnKVxufVxuXG4vKipcbiAqIE1vY2sgZGlzcGF0Y2ggZnVuY3Rpb24gdXNlZCB0byBzaW11bGF0ZSB1bmRpY2kgZGlzcGF0Y2hlc1xuICovXG5mdW5jdGlvbiBtb2NrRGlzcGF0Y2ggKG9wdHMsIGhhbmRsZXIpIHtcbiAgLy8gR2V0IG1vY2sgZGlzcGF0Y2ggZnJvbSBidWlsdCBrZXlcbiAgY29uc3Qga2V5ID0gYnVpbGRLZXkob3B0cylcbiAgY29uc3QgbW9ja0Rpc3BhdGNoID0gZ2V0TW9ja0Rpc3BhdGNoKHRoaXNba0Rpc3BhdGNoZXNdLCBrZXkpXG5cbiAgbW9ja0Rpc3BhdGNoLnRpbWVzSW52b2tlZCsrXG5cbiAgLy8gSGVyZSdzIHdoZXJlIHdlIHJlc29sdmUgYSBjYWxsYmFjayBpZiBhIGNhbGxiYWNrIGlzIHByZXNlbnQgZm9yIHRoZSBkaXNwYXRjaCBkYXRhLlxuICBpZiAobW9ja0Rpc3BhdGNoLmRhdGEuY2FsbGJhY2spIHtcbiAgICBtb2NrRGlzcGF0Y2guZGF0YSA9IHsgLi4ubW9ja0Rpc3BhdGNoLmRhdGEsIC4uLm1vY2tEaXNwYXRjaC5kYXRhLmNhbGxiYWNrKG9wdHMpIH1cbiAgfVxuXG4gIC8vIFBhcnNlIG1vY2tEaXNwYXRjaCBkYXRhXG4gIGNvbnN0IHsgZGF0YTogeyBzdGF0dXNDb2RlLCBkYXRhLCBoZWFkZXJzLCB0cmFpbGVycywgZXJyb3IgfSwgZGVsYXksIHBlcnNpc3QgfSA9IG1vY2tEaXNwYXRjaFxuICBjb25zdCB7IHRpbWVzSW52b2tlZCwgdGltZXMgfSA9IG1vY2tEaXNwYXRjaFxuXG4gIC8vIElmIGl0J3MgdXNlZCB1cCBhbmQgbm90IHBlcnNpc3RlbnQsIG1hcmsgYXMgY29uc3VtZWRcbiAgbW9ja0Rpc3BhdGNoLmNvbnN1bWVkID0gIXBlcnNpc3QgJiYgdGltZXNJbnZva2VkID49IHRpbWVzXG4gIG1vY2tEaXNwYXRjaC5wZW5kaW5nID0gdGltZXNJbnZva2VkIDwgdGltZXNcblxuICAvLyBJZiBzcGVjaWZpZWQsIHRyaWdnZXIgZGlzcGF0Y2ggZXJyb3JcbiAgaWYgKGVycm9yICE9PSBudWxsKSB7XG4gICAgZGVsZXRlTW9ja0Rpc3BhdGNoKHRoaXNba0Rpc3BhdGNoZXNdLCBrZXkpXG4gICAgaGFuZGxlci5vbkVycm9yKGVycm9yKVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvLyBIYW5kbGUgdGhlIHJlcXVlc3Qgd2l0aCBhIGRlbGF5IGlmIG5lY2Vzc2FyeVxuICBpZiAodHlwZW9mIGRlbGF5ID09PSAnbnVtYmVyJyAmJiBkZWxheSA+IDApIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGhhbmRsZVJlcGx5KHRoaXNba0Rpc3BhdGNoZXNdKVxuICAgIH0sIGRlbGF5KVxuICB9IGVsc2Uge1xuICAgIGhhbmRsZVJlcGx5KHRoaXNba0Rpc3BhdGNoZXNdKVxuICB9XG5cbiAgZnVuY3Rpb24gaGFuZGxlUmVwbHkgKG1vY2tEaXNwYXRjaGVzLCBfZGF0YSA9IGRhdGEpIHtcbiAgICAvLyBmZXRjaCdzIEhlYWRlcnNMaXN0IGlzIGEgMUQgc3RyaW5nIGFycmF5XG4gICAgY29uc3Qgb3B0c0hlYWRlcnMgPSBBcnJheS5pc0FycmF5KG9wdHMuaGVhZGVycylcbiAgICAgID8gYnVpbGRIZWFkZXJzRnJvbUFycmF5KG9wdHMuaGVhZGVycylcbiAgICAgIDogb3B0cy5oZWFkZXJzXG4gICAgY29uc3QgYm9keSA9IHR5cGVvZiBfZGF0YSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgPyBfZGF0YSh7IC4uLm9wdHMsIGhlYWRlcnM6IG9wdHNIZWFkZXJzIH0pXG4gICAgICA6IF9kYXRhXG5cbiAgICAvLyB1dGlsLnR5cGVzLmlzUHJvbWlzZSBpcyBsaWtlbHkgbmVlZGVkIGZvciBqZXN0LlxuICAgIGlmIChpc1Byb21pc2UoYm9keSkpIHtcbiAgICAgIC8vIElmIGhhbmRsZVJlcGx5IGlzIGFzeW5jaHJvbm91cywgdGhyb3dpbmcgYW4gZXJyb3JcbiAgICAgIC8vIGluIHRoZSBjYWxsYmFjayB3aWxsIHJlamVjdCB0aGUgcHJvbWlzZSwgcmF0aGVyIHRoYW5cbiAgICAgIC8vIHN5bmNocm9ub3VzbHkgdGhyb3cgdGhlIGVycm9yLCB3aGljaCBicmVha3Mgc29tZSB0ZXN0cy5cbiAgICAgIC8vIFJhdGhlciwgd2Ugd2FpdCBmb3IgdGhlIGNhbGxiYWNrIHRvIHJlc29sdmUgaWYgaXQgaXMgYVxuICAgICAgLy8gcHJvbWlzZSwgYW5kIHRoZW4gcmUtcnVuIGhhbmRsZVJlcGx5IHdpdGggdGhlIG5ldyBib2R5LlxuICAgICAgYm9keS50aGVuKChuZXdEYXRhKSA9PiBoYW5kbGVSZXBseShtb2NrRGlzcGF0Y2hlcywgbmV3RGF0YSkpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCByZXNwb25zZURhdGEgPSBnZXRSZXNwb25zZURhdGEoYm9keSlcbiAgICBjb25zdCByZXNwb25zZUhlYWRlcnMgPSBnZW5lcmF0ZUtleVZhbHVlcyhoZWFkZXJzKVxuICAgIGNvbnN0IHJlc3BvbnNlVHJhaWxlcnMgPSBnZW5lcmF0ZUtleVZhbHVlcyh0cmFpbGVycylcblxuICAgIGhhbmRsZXIuYWJvcnQgPSBub3BcbiAgICBoYW5kbGVyLm9uSGVhZGVycyhzdGF0dXNDb2RlLCByZXNwb25zZUhlYWRlcnMsIHJlc3VtZSwgZ2V0U3RhdHVzVGV4dChzdGF0dXNDb2RlKSlcbiAgICBoYW5kbGVyLm9uRGF0YShCdWZmZXIuZnJvbShyZXNwb25zZURhdGEpKVxuICAgIGhhbmRsZXIub25Db21wbGV0ZShyZXNwb25zZVRyYWlsZXJzKVxuICAgIGRlbGV0ZU1vY2tEaXNwYXRjaChtb2NrRGlzcGF0Y2hlcywga2V5KVxuICB9XG5cbiAgZnVuY3Rpb24gcmVzdW1lICgpIHt9XG5cbiAgcmV0dXJuIHRydWVcbn1cblxuZnVuY3Rpb24gYnVpbGRNb2NrRGlzcGF0Y2ggKCkge1xuICBjb25zdCBhZ2VudCA9IHRoaXNba01vY2tBZ2VudF1cbiAgY29uc3Qgb3JpZ2luID0gdGhpc1trT3JpZ2luXVxuICBjb25zdCBvcmlnaW5hbERpc3BhdGNoID0gdGhpc1trT3JpZ2luYWxEaXNwYXRjaF1cblxuICByZXR1cm4gZnVuY3Rpb24gZGlzcGF0Y2ggKG9wdHMsIGhhbmRsZXIpIHtcbiAgICBpZiAoYWdlbnQuaXNNb2NrQWN0aXZlKSB7XG4gICAgICB0cnkge1xuICAgICAgICBtb2NrRGlzcGF0Y2guY2FsbCh0aGlzLCBvcHRzLCBoYW5kbGVyKVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgTW9ja05vdE1hdGNoZWRFcnJvcikge1xuICAgICAgICAgIGNvbnN0IG5ldENvbm5lY3QgPSBhZ2VudFtrR2V0TmV0Q29ubmVjdF0oKVxuICAgICAgICAgIGlmIChuZXRDb25uZWN0ID09PSBmYWxzZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYCR7ZXJyb3IubWVzc2FnZX06IHN1YnNlcXVlbnQgcmVxdWVzdCB0byBvcmlnaW4gJHtvcmlnaW59IHdhcyBub3QgYWxsb3dlZCAobmV0LmNvbm5lY3QgZGlzYWJsZWQpYClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGNoZWNrTmV0Q29ubmVjdChuZXRDb25uZWN0LCBvcmlnaW4pKSB7XG4gICAgICAgICAgICBvcmlnaW5hbERpc3BhdGNoLmNhbGwodGhpcywgb3B0cywgaGFuZGxlcilcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IE1vY2tOb3RNYXRjaGVkRXJyb3IoYCR7ZXJyb3IubWVzc2FnZX06IHN1YnNlcXVlbnQgcmVxdWVzdCB0byBvcmlnaW4gJHtvcmlnaW59IHdhcyBub3QgYWxsb3dlZCAobmV0LmNvbm5lY3QgaXMgbm90IGVuYWJsZWQgZm9yIHRoaXMgb3JpZ2luKWApXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IGVycm9yXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgb3JpZ2luYWxEaXNwYXRjaC5jYWxsKHRoaXMsIG9wdHMsIGhhbmRsZXIpXG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNoZWNrTmV0Q29ubmVjdCAobmV0Q29ubmVjdCwgb3JpZ2luKSB7XG4gIGNvbnN0IHVybCA9IG5ldyBVUkwob3JpZ2luKVxuICBpZiAobmV0Q29ubmVjdCA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiB0cnVlXG4gIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShuZXRDb25uZWN0KSAmJiBuZXRDb25uZWN0LnNvbWUoKG1hdGNoZXIpID0+IG1hdGNoVmFsdWUobWF0Y2hlciwgdXJsLmhvc3QpKSkge1xuICAgIHJldHVybiB0cnVlXG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmZ1bmN0aW9uIGJ1aWxkTW9ja09wdGlvbnMgKG9wdHMpIHtcbiAgaWYgKG9wdHMpIHtcbiAgICBjb25zdCB7IGFnZW50LCAuLi5tb2NrT3B0aW9ucyB9ID0gb3B0c1xuICAgIHJldHVybiBtb2NrT3B0aW9uc1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBnZXRSZXNwb25zZURhdGEsXG4gIGdldE1vY2tEaXNwYXRjaCxcbiAgYWRkTW9ja0Rpc3BhdGNoLFxuICBkZWxldGVNb2NrRGlzcGF0Y2gsXG4gIGJ1aWxkS2V5LFxuICBnZW5lcmF0ZUtleVZhbHVlcyxcbiAgbWF0Y2hWYWx1ZSxcbiAgZ2V0UmVzcG9uc2UsXG4gIGdldFN0YXR1c1RleHQsXG4gIG1vY2tEaXNwYXRjaCxcbiAgYnVpbGRNb2NrRGlzcGF0Y2gsXG4gIGNoZWNrTmV0Q29ubmVjdCxcbiAgYnVpbGRNb2NrT3B0aW9ucyxcbiAgZ2V0SGVhZGVyQnlOYW1lXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgZ2V0UmVzcG9uc2VEYXRhLCBidWlsZEtleSwgYWRkTW9ja0Rpc3BhdGNoIH0gPSByZXF1aXJlKCcuL21vY2stdXRpbHMnKVxuY29uc3Qge1xuICBrRGlzcGF0Y2hlcyxcbiAga0Rpc3BhdGNoS2V5LFxuICBrRGVmYXVsdEhlYWRlcnMsXG4gIGtEZWZhdWx0VHJhaWxlcnMsXG4gIGtDb250ZW50TGVuZ3RoLFxuICBrTW9ja0Rpc3BhdGNoXG59ID0gcmVxdWlyZSgnLi9tb2NrLXN5bWJvbHMnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyBidWlsZFVSTCB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBzY29wZSBBUEkgZm9yIGFuIGludGVyY2VwdG9yIHJlcGx5XG4gKi9cbmNsYXNzIE1vY2tTY29wZSB7XG4gIGNvbnN0cnVjdG9yIChtb2NrRGlzcGF0Y2gpIHtcbiAgICB0aGlzW2tNb2NrRGlzcGF0Y2hdID0gbW9ja0Rpc3BhdGNoXG4gIH1cblxuICAvKipcbiAgICogRGVsYXkgYSByZXBseSBieSBhIHNldCBhbW91bnQgaW4gbXMuXG4gICAqL1xuICBkZWxheSAod2FpdEluTXMpIHtcbiAgICBpZiAodHlwZW9mIHdhaXRJbk1zICE9PSAnbnVtYmVyJyB8fCAhTnVtYmVyLmlzSW50ZWdlcih3YWl0SW5NcykgfHwgd2FpdEluTXMgPD0gMCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd3YWl0SW5NcyBtdXN0IGJlIGEgdmFsaWQgaW50ZWdlciA+IDAnKVxuICAgIH1cblxuICAgIHRoaXNba01vY2tEaXNwYXRjaF0uZGVsYXkgPSB3YWl0SW5Nc1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogRm9yIGEgZGVmaW5lZCByZXBseSwgbmV2ZXIgbWFyayBhcyBjb25zdW1lZC5cbiAgICovXG4gIHBlcnNpc3QgKCkge1xuICAgIHRoaXNba01vY2tEaXNwYXRjaF0ucGVyc2lzdCA9IHRydWVcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93IG9uZSB0byBkZWZpbmUgYSByZXBseSBmb3IgYSBzZXQgYW1vdW50IG9mIG1hdGNoaW5nIHJlcXVlc3RzLlxuICAgKi9cbiAgdGltZXMgKHJlcGVhdFRpbWVzKSB7XG4gICAgaWYgKHR5cGVvZiByZXBlYXRUaW1lcyAhPT0gJ251bWJlcicgfHwgIU51bWJlci5pc0ludGVnZXIocmVwZWF0VGltZXMpIHx8IHJlcGVhdFRpbWVzIDw9IDApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigncmVwZWF0VGltZXMgbXVzdCBiZSBhIHZhbGlkIGludGVnZXIgPiAwJylcbiAgICB9XG5cbiAgICB0aGlzW2tNb2NrRGlzcGF0Y2hdLnRpbWVzID0gcmVwZWF0VGltZXNcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbi8qKlxuICogRGVmaW5lcyBhbiBpbnRlcmNlcHRvciBmb3IgYSBNb2NrXG4gKi9cbmNsYXNzIE1vY2tJbnRlcmNlcHRvciB7XG4gIGNvbnN0cnVjdG9yIChvcHRzLCBtb2NrRGlzcGF0Y2hlcykge1xuICAgIGlmICh0eXBlb2Ygb3B0cyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignb3B0cyBtdXN0IGJlIGFuIG9iamVjdCcpXG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0cy5wYXRoID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdvcHRzLnBhdGggbXVzdCBiZSBkZWZpbmVkJylcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBvcHRzLm1ldGhvZCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIG9wdHMubWV0aG9kID0gJ0dFVCdcbiAgICB9XG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xMjQ1XG4gICAgLy8gQXMgcGVyIFJGQyAzOTg2LCBjbGllbnRzIGFyZSBub3Qgc3VwcG9zZWQgdG8gc2VuZCBVUklcbiAgICAvLyBmcmFnbWVudHMgdG8gc2VydmVycyB3aGVuIHRoZXkgcmV0cmlldmUgYSBkb2N1bWVudCxcbiAgICBpZiAodHlwZW9mIG9wdHMucGF0aCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmIChvcHRzLnF1ZXJ5KSB7XG4gICAgICAgIG9wdHMucGF0aCA9IGJ1aWxkVVJMKG9wdHMucGF0aCwgb3B0cy5xdWVyeSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE1hdGNoZXMgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvYmxvYi9tYWluL2xpYi9mZXRjaC9pbmRleC5qcyNMMTgxMVxuICAgICAgICBjb25zdCBwYXJzZWRVUkwgPSBuZXcgVVJMKG9wdHMucGF0aCwgJ2RhdGE6Ly8nKVxuICAgICAgICBvcHRzLnBhdGggPSBwYXJzZWRVUkwucGF0aG5hbWUgKyBwYXJzZWRVUkwuc2VhcmNoXG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0cy5tZXRob2QgPT09ICdzdHJpbmcnKSB7XG4gICAgICBvcHRzLm1ldGhvZCA9IG9wdHMubWV0aG9kLnRvVXBwZXJDYXNlKClcbiAgICB9XG5cbiAgICB0aGlzW2tEaXNwYXRjaEtleV0gPSBidWlsZEtleShvcHRzKVxuICAgIHRoaXNba0Rpc3BhdGNoZXNdID0gbW9ja0Rpc3BhdGNoZXNcbiAgICB0aGlzW2tEZWZhdWx0SGVhZGVyc10gPSB7fVxuICAgIHRoaXNba0RlZmF1bHRUcmFpbGVyc10gPSB7fVxuICAgIHRoaXNba0NvbnRlbnRMZW5ndGhdID0gZmFsc2VcbiAgfVxuXG4gIGNyZWF0ZU1vY2tTY29wZURpc3BhdGNoRGF0YSAoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zID0ge30pIHtcbiAgICBjb25zdCByZXNwb25zZURhdGEgPSBnZXRSZXNwb25zZURhdGEoZGF0YSlcbiAgICBjb25zdCBjb250ZW50TGVuZ3RoID0gdGhpc1trQ29udGVudExlbmd0aF0gPyB7ICdjb250ZW50LWxlbmd0aCc6IHJlc3BvbnNlRGF0YS5sZW5ndGggfSA6IHt9XG4gICAgY29uc3QgaGVhZGVycyA9IHsgLi4udGhpc1trRGVmYXVsdEhlYWRlcnNdLCAuLi5jb250ZW50TGVuZ3RoLCAuLi5yZXNwb25zZU9wdGlvbnMuaGVhZGVycyB9XG4gICAgY29uc3QgdHJhaWxlcnMgPSB7IC4uLnRoaXNba0RlZmF1bHRUcmFpbGVyc10sIC4uLnJlc3BvbnNlT3B0aW9ucy50cmFpbGVycyB9XG5cbiAgICByZXR1cm4geyBzdGF0dXNDb2RlLCBkYXRhLCBoZWFkZXJzLCB0cmFpbGVycyB9XG4gIH1cblxuICB2YWxpZGF0ZVJlcGx5UGFyYW1ldGVycyAoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zKSB7XG4gICAgaWYgKHR5cGVvZiBzdGF0dXNDb2RlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzdGF0dXNDb2RlIG11c3QgYmUgZGVmaW5lZCcpXG4gICAgfVxuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignZGF0YSBtdXN0IGJlIGRlZmluZWQnKVxuICAgIH1cbiAgICBpZiAodHlwZW9mIHJlc3BvbnNlT3B0aW9ucyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigncmVzcG9uc2VPcHRpb25zIG11c3QgYmUgYW4gb2JqZWN0JylcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTW9jayBhbiB1bmRpY2kgcmVxdWVzdCB3aXRoIGEgZGVmaW5lZCByZXBseS5cbiAgICovXG4gIHJlcGx5IChyZXBseURhdGEpIHtcbiAgICAvLyBWYWx1ZXMgb2YgcmVwbHkgYXJlbid0IGF2YWlsYWJsZSByaWdodCBub3cgYXMgdGhleVxuICAgIC8vIGNhbiBvbmx5IGJlIGF2YWlsYWJsZSB3aGVuIHRoZSByZXBseSBjYWxsYmFjayBpcyBpbnZva2VkLlxuICAgIGlmICh0eXBlb2YgcmVwbHlEYXRhID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAvLyBXZSdsbCBmaXJzdCB3cmFwIHRoZSBwcm92aWRlZCBjYWxsYmFjayBpbiBhbm90aGVyIGZ1bmN0aW9uLFxuICAgICAgLy8gdGhpcyBmdW5jdGlvbiB3aWxsIHByb3Blcmx5IHJlc29sdmUgdGhlIGRhdGEgZnJvbSB0aGUgY2FsbGJhY2tcbiAgICAgIC8vIHdoZW4gaW52b2tlZC5cbiAgICAgIGNvbnN0IHdyYXBwZWREZWZhdWx0c0NhbGxiYWNrID0gKG9wdHMpID0+IHtcbiAgICAgICAgLy8gT3VyIHJlcGx5IG9wdGlvbnMgY2FsbGJhY2sgY29udGFpbnMgdGhlIHBhcmFtZXRlciBmb3Igc3RhdHVzQ29kZSwgZGF0YSBhbmQgb3B0aW9ucy5cbiAgICAgICAgY29uc3QgcmVzb2x2ZWREYXRhID0gcmVwbHlEYXRhKG9wdHMpXG5cbiAgICAgICAgLy8gQ2hlY2sgaWYgaXQgaXMgaW4gdGhlIHJpZ2h0IGZvcm1hdFxuICAgICAgICBpZiAodHlwZW9mIHJlc29sdmVkRGF0YSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3JlcGx5IG9wdGlvbnMgY2FsbGJhY2sgbXVzdCByZXR1cm4gYW4gb2JqZWN0JylcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgc3RhdHVzQ29kZSwgZGF0YSA9ICcnLCByZXNwb25zZU9wdGlvbnMgPSB7fSB9ID0gcmVzb2x2ZWREYXRhXG4gICAgICAgIHRoaXMudmFsaWRhdGVSZXBseVBhcmFtZXRlcnMoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zKVxuICAgICAgICAvLyBTaW5jZSB0aGUgdmFsdWVzIGNhbiBiZSBvYnRhaW5lZCBpbW1lZGlhdGVseSB3ZSByZXR1cm4gdGhlbVxuICAgICAgICAvLyBmcm9tIHRoaXMgaGlnaGVyIG9yZGVyIGZ1bmN0aW9uIHRoYXQgd2lsbCBiZSByZXNvbHZlZCBsYXRlci5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi50aGlzLmNyZWF0ZU1vY2tTY29wZURpc3BhdGNoRGF0YShzdGF0dXNDb2RlLCBkYXRhLCByZXNwb25zZU9wdGlvbnMpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gQWRkIHVzdWFsIGRpc3BhdGNoIGRhdGEsIGJ1dCB0aGlzIHRpbWUgc2V0IHRoZSBkYXRhIHBhcmFtZXRlciB0byBmdW5jdGlvbiB0aGF0IHdpbGwgZXZlbnR1YWxseSBwcm92aWRlIGRhdGEuXG4gICAgICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSBhZGRNb2NrRGlzcGF0Y2godGhpc1trRGlzcGF0Y2hlc10sIHRoaXNba0Rpc3BhdGNoS2V5XSwgd3JhcHBlZERlZmF1bHRzQ2FsbGJhY2spXG4gICAgICByZXR1cm4gbmV3IE1vY2tTY29wZShuZXdNb2NrRGlzcGF0Y2gpXG4gICAgfVxuXG4gICAgLy8gV2UgY2FuIGhhdmUgZWl0aGVyIG9uZSBvciB0aHJlZSBwYXJhbWV0ZXJzLCBpZiB3ZSBnZXQgaGVyZSxcbiAgICAvLyB3ZSBzaG91bGQgaGF2ZSAxLTMgcGFyYW1ldGVycy4gU28gd2Ugc3ByZWFkIHRoZSBhcmd1bWVudHMgb2ZcbiAgICAvLyB0aGlzIGZ1bmN0aW9uIHRvIG9idGFpbiB0aGUgcGFyYW1ldGVycywgc2luY2UgcmVwbHlEYXRhIHdpbGwgYWx3YXlzXG4gICAgLy8ganVzdCBiZSB0aGUgc3RhdHVzQ29kZS5cbiAgICBjb25zdCBbc3RhdHVzQ29kZSwgZGF0YSA9ICcnLCByZXNwb25zZU9wdGlvbnMgPSB7fV0gPSBbLi4uYXJndW1lbnRzXVxuICAgIHRoaXMudmFsaWRhdGVSZXBseVBhcmFtZXRlcnMoc3RhdHVzQ29kZSwgZGF0YSwgcmVzcG9uc2VPcHRpb25zKVxuXG4gICAgLy8gU2VuZCBpbi1hbHJlYWR5IHByb3ZpZGVkIGRhdGEgbGlrZSB1c3VhbFxuICAgIGNvbnN0IGRpc3BhdGNoRGF0YSA9IHRoaXMuY3JlYXRlTW9ja1Njb3BlRGlzcGF0Y2hEYXRhKHN0YXR1c0NvZGUsIGRhdGEsIHJlc3BvbnNlT3B0aW9ucylcbiAgICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSBhZGRNb2NrRGlzcGF0Y2godGhpc1trRGlzcGF0Y2hlc10sIHRoaXNba0Rpc3BhdGNoS2V5XSwgZGlzcGF0Y2hEYXRhKVxuICAgIHJldHVybiBuZXcgTW9ja1Njb3BlKG5ld01vY2tEaXNwYXRjaClcbiAgfVxuXG4gIC8qKlxuICAgKiBNb2NrIGFuIHVuZGljaSByZXF1ZXN0IHdpdGggYSBkZWZpbmVkIGVycm9yLlxuICAgKi9cbiAgcmVwbHlXaXRoRXJyb3IgKGVycm9yKSB7XG4gICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignZXJyb3IgbXVzdCBiZSBkZWZpbmVkJylcbiAgICB9XG5cbiAgICBjb25zdCBuZXdNb2NrRGlzcGF0Y2ggPSBhZGRNb2NrRGlzcGF0Y2godGhpc1trRGlzcGF0Y2hlc10sIHRoaXNba0Rpc3BhdGNoS2V5XSwgeyBlcnJvciB9KVxuICAgIHJldHVybiBuZXcgTW9ja1Njb3BlKG5ld01vY2tEaXNwYXRjaClcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgZGVmYXVsdCByZXBseSBoZWFkZXJzIG9uIHRoZSBpbnRlcmNlcHRvciBmb3Igc3Vic2VxdWVudCByZXBsaWVzXG4gICAqL1xuICBkZWZhdWx0UmVwbHlIZWFkZXJzIChoZWFkZXJzKSB7XG4gICAgaWYgKHR5cGVvZiBoZWFkZXJzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdoZWFkZXJzIG11c3QgYmUgZGVmaW5lZCcpXG4gICAgfVxuXG4gICAgdGhpc1trRGVmYXVsdEhlYWRlcnNdID0gaGVhZGVyc1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogU2V0IGRlZmF1bHQgcmVwbHkgdHJhaWxlcnMgb24gdGhlIGludGVyY2VwdG9yIGZvciBzdWJzZXF1ZW50IHJlcGxpZXNcbiAgICovXG4gIGRlZmF1bHRSZXBseVRyYWlsZXJzICh0cmFpbGVycykge1xuICAgIGlmICh0eXBlb2YgdHJhaWxlcnMgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3RyYWlsZXJzIG11c3QgYmUgZGVmaW5lZCcpXG4gICAgfVxuXG4gICAgdGhpc1trRGVmYXVsdFRyYWlsZXJzXSA9IHRyYWlsZXJzXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgcmVwbHkgY29udGVudCBsZW5ndGggaGVhZGVyIGZvciByZXBsaWVzIG9uIHRoZSBpbnRlcmNlcHRvclxuICAgKi9cbiAgcmVwbHlDb250ZW50TGVuZ3RoICgpIHtcbiAgICB0aGlzW2tDb250ZW50TGVuZ3RoXSA9IHRydWVcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzLk1vY2tJbnRlcmNlcHRvciA9IE1vY2tJbnRlcmNlcHRvclxubW9kdWxlLmV4cG9ydHMuTW9ja1Njb3BlID0gTW9ja1Njb3BlXG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcHJvbWlzaWZ5IH0gPSByZXF1aXJlKCd1dGlsJylcbmNvbnN0IENsaWVudCA9IHJlcXVpcmUoJy4uL2NsaWVudCcpXG5jb25zdCB7IGJ1aWxkTW9ja0Rpc3BhdGNoIH0gPSByZXF1aXJlKCcuL21vY2stdXRpbHMnKVxuY29uc3Qge1xuICBrRGlzcGF0Y2hlcyxcbiAga01vY2tBZ2VudCxcbiAga0Nsb3NlLFxuICBrT3JpZ2luYWxDbG9zZSxcbiAga09yaWdpbixcbiAga09yaWdpbmFsRGlzcGF0Y2gsXG4gIGtDb25uZWN0ZWRcbn0gPSByZXF1aXJlKCcuL21vY2stc3ltYm9scycpXG5jb25zdCB7IE1vY2tJbnRlcmNlcHRvciB9ID0gcmVxdWlyZSgnLi9tb2NrLWludGVyY2VwdG9yJylcbmNvbnN0IFN5bWJvbHMgPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuXG4vKipcbiAqIE1vY2tDbGllbnQgcHJvdmlkZXMgYW4gQVBJIHRoYXQgZXh0ZW5kcyB0aGUgQ2xpZW50IHRvIGluZmx1ZW5jZSB0aGUgbW9ja0Rpc3BhdGNoZXMuXG4gKi9cbmNsYXNzIE1vY2tDbGllbnQgZXh0ZW5kcyBDbGllbnQge1xuICBjb25zdHJ1Y3RvciAob3JpZ2luLCBvcHRzKSB7XG4gICAgc3VwZXIob3JpZ2luLCBvcHRzKVxuXG4gICAgaWYgKCFvcHRzIHx8ICFvcHRzLmFnZW50IHx8IHR5cGVvZiBvcHRzLmFnZW50LmRpc3BhdGNoICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0FyZ3VtZW50IG9wdHMuYWdlbnQgbXVzdCBpbXBsZW1lbnQgQWdlbnQnKVxuICAgIH1cblxuICAgIHRoaXNba01vY2tBZ2VudF0gPSBvcHRzLmFnZW50XG4gICAgdGhpc1trT3JpZ2luXSA9IG9yaWdpblxuICAgIHRoaXNba0Rpc3BhdGNoZXNdID0gW11cbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMVxuICAgIHRoaXNba09yaWdpbmFsRGlzcGF0Y2hdID0gdGhpcy5kaXNwYXRjaFxuICAgIHRoaXNba09yaWdpbmFsQ2xvc2VdID0gdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG5cbiAgICB0aGlzLmRpc3BhdGNoID0gYnVpbGRNb2NrRGlzcGF0Y2guY2FsbCh0aGlzKVxuICAgIHRoaXMuY2xvc2UgPSB0aGlzW2tDbG9zZV1cbiAgfVxuXG4gIGdldCBbU3ltYm9scy5rQ29ubmVjdGVkXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0Nvbm5lY3RlZF1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHVwIHRoZSBiYXNlIGludGVyY2VwdG9yIGZvciBtb2NraW5nIHJlcGxpZXMgZnJvbSB1bmRpY2kuXG4gICAqL1xuICBpbnRlcmNlcHQgKG9wdHMpIHtcbiAgICByZXR1cm4gbmV3IE1vY2tJbnRlcmNlcHRvcihvcHRzLCB0aGlzW2tEaXNwYXRjaGVzXSlcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICBhd2FpdCBwcm9taXNpZnkodGhpc1trT3JpZ2luYWxDbG9zZV0pKClcbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMFxuICAgIHRoaXNba01vY2tBZ2VudF1bU3ltYm9scy5rQ2xpZW50c10uZGVsZXRlKHRoaXNba09yaWdpbl0pXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBNb2NrQ2xpZW50XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcHJvbWlzaWZ5IH0gPSByZXF1aXJlKCd1dGlsJylcbmNvbnN0IFBvb2wgPSByZXF1aXJlKCcuLi9wb29sJylcbmNvbnN0IHsgYnVpbGRNb2NrRGlzcGF0Y2ggfSA9IHJlcXVpcmUoJy4vbW9jay11dGlscycpXG5jb25zdCB7XG4gIGtEaXNwYXRjaGVzLFxuICBrTW9ja0FnZW50LFxuICBrQ2xvc2UsXG4gIGtPcmlnaW5hbENsb3NlLFxuICBrT3JpZ2luLFxuICBrT3JpZ2luYWxEaXNwYXRjaCxcbiAga0Nvbm5lY3RlZFxufSA9IHJlcXVpcmUoJy4vbW9jay1zeW1ib2xzJylcbmNvbnN0IHsgTW9ja0ludGVyY2VwdG9yIH0gPSByZXF1aXJlKCcuL21vY2staW50ZXJjZXB0b3InKVxuY29uc3QgU3ltYm9scyA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5cbi8qKlxuICogTW9ja1Bvb2wgcHJvdmlkZXMgYW4gQVBJIHRoYXQgZXh0ZW5kcyB0aGUgUG9vbCB0byBpbmZsdWVuY2UgdGhlIG1vY2tEaXNwYXRjaGVzLlxuICovXG5jbGFzcyBNb2NrUG9vbCBleHRlbmRzIFBvb2wge1xuICBjb25zdHJ1Y3RvciAob3JpZ2luLCBvcHRzKSB7XG4gICAgc3VwZXIob3JpZ2luLCBvcHRzKVxuXG4gICAgaWYgKCFvcHRzIHx8ICFvcHRzLmFnZW50IHx8IHR5cGVvZiBvcHRzLmFnZW50LmRpc3BhdGNoICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ0FyZ3VtZW50IG9wdHMuYWdlbnQgbXVzdCBpbXBsZW1lbnQgQWdlbnQnKVxuICAgIH1cblxuICAgIHRoaXNba01vY2tBZ2VudF0gPSBvcHRzLmFnZW50XG4gICAgdGhpc1trT3JpZ2luXSA9IG9yaWdpblxuICAgIHRoaXNba0Rpc3BhdGNoZXNdID0gW11cbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMVxuICAgIHRoaXNba09yaWdpbmFsRGlzcGF0Y2hdID0gdGhpcy5kaXNwYXRjaFxuICAgIHRoaXNba09yaWdpbmFsQ2xvc2VdID0gdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG5cbiAgICB0aGlzLmRpc3BhdGNoID0gYnVpbGRNb2NrRGlzcGF0Y2guY2FsbCh0aGlzKVxuICAgIHRoaXMuY2xvc2UgPSB0aGlzW2tDbG9zZV1cbiAgfVxuXG4gIGdldCBbU3ltYm9scy5rQ29ubmVjdGVkXSAoKSB7XG4gICAgcmV0dXJuIHRoaXNba0Nvbm5lY3RlZF1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHVwIHRoZSBiYXNlIGludGVyY2VwdG9yIGZvciBtb2NraW5nIHJlcGxpZXMgZnJvbSB1bmRpY2kuXG4gICAqL1xuICBpbnRlcmNlcHQgKG9wdHMpIHtcbiAgICByZXR1cm4gbmV3IE1vY2tJbnRlcmNlcHRvcihvcHRzLCB0aGlzW2tEaXNwYXRjaGVzXSlcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICBhd2FpdCBwcm9taXNpZnkodGhpc1trT3JpZ2luYWxDbG9zZV0pKClcbiAgICB0aGlzW2tDb25uZWN0ZWRdID0gMFxuICAgIHRoaXNba01vY2tBZ2VudF1bU3ltYm9scy5rQ2xpZW50c10uZGVsZXRlKHRoaXNba09yaWdpbl0pXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBNb2NrUG9vbFxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBzaW5ndWxhcnMgPSB7XG4gIHByb25vdW46ICdpdCcsXG4gIGlzOiAnaXMnLFxuICB3YXM6ICd3YXMnLFxuICB0aGlzOiAndGhpcydcbn1cblxuY29uc3QgcGx1cmFscyA9IHtcbiAgcHJvbm91bjogJ3RoZXknLFxuICBpczogJ2FyZScsXG4gIHdhczogJ3dlcmUnLFxuICB0aGlzOiAndGhlc2UnXG59XG5cbm1vZHVsZS5leHBvcnRzID0gY2xhc3MgUGx1cmFsaXplciB7XG4gIGNvbnN0cnVjdG9yIChzaW5ndWxhciwgcGx1cmFsKSB7XG4gICAgdGhpcy5zaW5ndWxhciA9IHNpbmd1bGFyXG4gICAgdGhpcy5wbHVyYWwgPSBwbHVyYWxcbiAgfVxuXG4gIHBsdXJhbGl6ZSAoY291bnQpIHtcbiAgICBjb25zdCBvbmUgPSBjb3VudCA9PT0gMVxuICAgIGNvbnN0IGtleXMgPSBvbmUgPyBzaW5ndWxhcnMgOiBwbHVyYWxzXG4gICAgY29uc3Qgbm91biA9IG9uZSA/IHRoaXMuc2luZ3VsYXIgOiB0aGlzLnBsdXJhbFxuICAgIHJldHVybiB7IC4uLmtleXMsIGNvdW50LCBub3VuIH1cbiAgfVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IFRyYW5zZm9ybSB9ID0gcmVxdWlyZSgnc3RyZWFtJylcbmNvbnN0IHsgQ29uc29sZSB9ID0gcmVxdWlyZSgnY29uc29sZScpXG5cbi8qKlxuICogR2V0cyB0aGUgb3V0cHV0IG9mIGBjb25zb2xlLnRhYmxlKFx1MjAyNilgIGFzIGEgc3RyaW5nLlxuICovXG5tb2R1bGUuZXhwb3J0cyA9IGNsYXNzIFBlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIge1xuICBjb25zdHJ1Y3RvciAoeyBkaXNhYmxlQ29sb3JzIH0gPSB7fSkge1xuICAgIHRoaXMudHJhbnNmb3JtID0gbmV3IFRyYW5zZm9ybSh7XG4gICAgICB0cmFuc2Zvcm0gKGNodW5rLCBfZW5jLCBjYikge1xuICAgICAgICBjYihudWxsLCBjaHVuaylcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgdGhpcy5sb2dnZXIgPSBuZXcgQ29uc29sZSh7XG4gICAgICBzdGRvdXQ6IHRoaXMudHJhbnNmb3JtLFxuICAgICAgaW5zcGVjdE9wdGlvbnM6IHtcbiAgICAgICAgY29sb3JzOiAhZGlzYWJsZUNvbG9ycyAmJiAhcHJvY2Vzcy5lbnYuQ0lcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgZm9ybWF0IChwZW5kaW5nSW50ZXJjZXB0b3JzKSB7XG4gICAgY29uc3Qgd2l0aFByZXR0eUhlYWRlcnMgPSBwZW5kaW5nSW50ZXJjZXB0b3JzLm1hcChcbiAgICAgICh7IG1ldGhvZCwgcGF0aCwgZGF0YTogeyBzdGF0dXNDb2RlIH0sIHBlcnNpc3QsIHRpbWVzLCB0aW1lc0ludm9rZWQsIG9yaWdpbiB9KSA9PiAoe1xuICAgICAgICBNZXRob2Q6IG1ldGhvZCxcbiAgICAgICAgT3JpZ2luOiBvcmlnaW4sXG4gICAgICAgIFBhdGg6IHBhdGgsXG4gICAgICAgICdTdGF0dXMgY29kZSc6IHN0YXR1c0NvZGUsXG4gICAgICAgIFBlcnNpc3RlbnQ6IHBlcnNpc3QgPyAnXHUyNzA1JyA6ICdcdTI3NEMnLFxuICAgICAgICBJbnZvY2F0aW9uczogdGltZXNJbnZva2VkLFxuICAgICAgICBSZW1haW5pbmc6IHBlcnNpc3QgPyBJbmZpbml0eSA6IHRpbWVzIC0gdGltZXNJbnZva2VkXG4gICAgICB9KSlcblxuICAgIHRoaXMubG9nZ2VyLnRhYmxlKHdpdGhQcmV0dHlIZWFkZXJzKVxuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybS5yZWFkKCkudG9TdHJpbmcoKVxuICB9XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga0NsaWVudHMgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCBBZ2VudCA9IHJlcXVpcmUoJy4uL2FnZW50JylcbmNvbnN0IHtcbiAga0FnZW50LFxuICBrTW9ja0FnZW50U2V0LFxuICBrTW9ja0FnZW50R2V0LFxuICBrRGlzcGF0Y2hlcyxcbiAga0lzTW9ja0FjdGl2ZSxcbiAga05ldENvbm5lY3QsXG4gIGtHZXROZXRDb25uZWN0LFxuICBrT3B0aW9ucyxcbiAga0ZhY3Rvcnlcbn0gPSByZXF1aXJlKCcuL21vY2stc3ltYm9scycpXG5jb25zdCBNb2NrQ2xpZW50ID0gcmVxdWlyZSgnLi9tb2NrLWNsaWVudCcpXG5jb25zdCBNb2NrUG9vbCA9IHJlcXVpcmUoJy4vbW9jay1wb29sJylcbmNvbnN0IHsgbWF0Y2hWYWx1ZSwgYnVpbGRNb2NrT3B0aW9ucyB9ID0gcmVxdWlyZSgnLi9tb2NrLXV0aWxzJylcbmNvbnN0IHsgSW52YWxpZEFyZ3VtZW50RXJyb3IsIFVuZGljaUVycm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL2Vycm9ycycpXG5jb25zdCBEaXNwYXRjaGVyID0gcmVxdWlyZSgnLi4vZGlzcGF0Y2hlcicpXG5jb25zdCBQbHVyYWxpemVyID0gcmVxdWlyZSgnLi9wbHVyYWxpemVyJylcbmNvbnN0IFBlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIgPSByZXF1aXJlKCcuL3BlbmRpbmctaW50ZXJjZXB0b3JzLWZvcm1hdHRlcicpXG5cbmNsYXNzIEZha2VXZWFrUmVmIHtcbiAgY29uc3RydWN0b3IgKHZhbHVlKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gIH1cblxuICBkZXJlZiAoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVcbiAgfVxufVxuXG5jbGFzcyBNb2NrQWdlbnQgZXh0ZW5kcyBEaXNwYXRjaGVyIHtcbiAgY29uc3RydWN0b3IgKG9wdHMpIHtcbiAgICBzdXBlcihvcHRzKVxuXG4gICAgdGhpc1trTmV0Q29ubmVjdF0gPSB0cnVlXG4gICAgdGhpc1trSXNNb2NrQWN0aXZlXSA9IHRydWVcblxuICAgIC8vIEluc3RhbnRpYXRlIEFnZW50IGFuZCBlbmNhcHN1bGF0ZVxuICAgIGlmICgob3B0cyAmJiBvcHRzLmFnZW50ICYmIHR5cGVvZiBvcHRzLmFnZW50LmRpc3BhdGNoICE9PSAnZnVuY3Rpb24nKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdBcmd1bWVudCBvcHRzLmFnZW50IG11c3QgaW1wbGVtZW50IEFnZW50JylcbiAgICB9XG4gICAgY29uc3QgYWdlbnQgPSBvcHRzICYmIG9wdHMuYWdlbnQgPyBvcHRzLmFnZW50IDogbmV3IEFnZW50KG9wdHMpXG4gICAgdGhpc1trQWdlbnRdID0gYWdlbnRcblxuICAgIHRoaXNba0NsaWVudHNdID0gYWdlbnRba0NsaWVudHNdXG4gICAgdGhpc1trT3B0aW9uc10gPSBidWlsZE1vY2tPcHRpb25zKG9wdHMpXG4gIH1cblxuICBnZXQgKG9yaWdpbikge1xuICAgIGxldCBkaXNwYXRjaGVyID0gdGhpc1trTW9ja0FnZW50R2V0XShvcmlnaW4pXG5cbiAgICBpZiAoIWRpc3BhdGNoZXIpIHtcbiAgICAgIGRpc3BhdGNoZXIgPSB0aGlzW2tGYWN0b3J5XShvcmlnaW4pXG4gICAgICB0aGlzW2tNb2NrQWdlbnRTZXRdKG9yaWdpbiwgZGlzcGF0Y2hlcilcbiAgICB9XG4gICAgcmV0dXJuIGRpc3BhdGNoZXJcbiAgfVxuXG4gIGRpc3BhdGNoIChvcHRzLCBoYW5kbGVyKSB7XG4gICAgLy8gQ2FsbCBNb2NrQWdlbnQuZ2V0IHRvIHBlcmZvcm0gYWRkaXRpb25hbCBzZXR1cCBiZWZvcmUgZGlzcGF0Y2hpbmcgYXMgbm9ybWFsXG4gICAgdGhpcy5nZXQob3B0cy5vcmlnaW4pXG4gICAgcmV0dXJuIHRoaXNba0FnZW50XS5kaXNwYXRjaChvcHRzLCBoYW5kbGVyKVxuICB9XG5cbiAgYXN5bmMgY2xvc2UgKCkge1xuICAgIGF3YWl0IHRoaXNba0FnZW50XS5jbG9zZSgpXG4gICAgdGhpc1trQ2xpZW50c10uY2xlYXIoKVxuICB9XG5cbiAgZGVhY3RpdmF0ZSAoKSB7XG4gICAgdGhpc1trSXNNb2NrQWN0aXZlXSA9IGZhbHNlXG4gIH1cblxuICBhY3RpdmF0ZSAoKSB7XG4gICAgdGhpc1trSXNNb2NrQWN0aXZlXSA9IHRydWVcbiAgfVxuXG4gIGVuYWJsZU5ldENvbm5lY3QgKG1hdGNoZXIpIHtcbiAgICBpZiAodHlwZW9mIG1hdGNoZXIgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiBtYXRjaGVyID09PSAnZnVuY3Rpb24nIHx8IG1hdGNoZXIgaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXNba05ldENvbm5lY3RdKSkge1xuICAgICAgICB0aGlzW2tOZXRDb25uZWN0XS5wdXNoKG1hdGNoZXIpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzW2tOZXRDb25uZWN0XSA9IFttYXRjaGVyXVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIG1hdGNoZXIgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzW2tOZXRDb25uZWN0XSA9IHRydWVcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdVbnN1cHBvcnRlZCBtYXRjaGVyLiBNdXN0IGJlIG9uZSBvZiBTdHJpbmd8RnVuY3Rpb258UmVnRXhwLicpXG4gICAgfVxuICB9XG5cbiAgZGlzYWJsZU5ldENvbm5lY3QgKCkge1xuICAgIHRoaXNba05ldENvbm5lY3RdID0gZmFsc2VcbiAgfVxuXG4gIC8vIFRoaXMgaXMgcmVxdWlyZWQgdG8gYnlwYXNzIGlzc3VlcyBjYXVzZWQgYnkgdXNpbmcgZ2xvYmFsIHN5bWJvbHMgLSBzZWU6XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xNDQ3XG4gIGdldCBpc01vY2tBY3RpdmUgKCkge1xuICAgIHJldHVybiB0aGlzW2tJc01vY2tBY3RpdmVdXG4gIH1cblxuICBba01vY2tBZ2VudFNldF0gKG9yaWdpbiwgZGlzcGF0Y2hlcikge1xuICAgIHRoaXNba0NsaWVudHNdLnNldChvcmlnaW4sIG5ldyBGYWtlV2Vha1JlZihkaXNwYXRjaGVyKSlcbiAgfVxuXG4gIFtrRmFjdG9yeV0gKG9yaWdpbikge1xuICAgIGNvbnN0IG1vY2tPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7IGFnZW50OiB0aGlzIH0sIHRoaXNba09wdGlvbnNdKVxuICAgIHJldHVybiB0aGlzW2tPcHRpb25zXSAmJiB0aGlzW2tPcHRpb25zXS5jb25uZWN0aW9ucyA9PT0gMVxuICAgICAgPyBuZXcgTW9ja0NsaWVudChvcmlnaW4sIG1vY2tPcHRpb25zKVxuICAgICAgOiBuZXcgTW9ja1Bvb2wob3JpZ2luLCBtb2NrT3B0aW9ucylcbiAgfVxuXG4gIFtrTW9ja0FnZW50R2V0XSAob3JpZ2luKSB7XG4gICAgLy8gRmlyc3QgY2hlY2sgaWYgd2UgY2FuIGltbWVkaWF0ZWx5IGZpbmQgaXRcbiAgICBjb25zdCByZWYgPSB0aGlzW2tDbGllbnRzXS5nZXQob3JpZ2luKVxuICAgIGlmIChyZWYpIHtcbiAgICAgIHJldHVybiByZWYuZGVyZWYoKVxuICAgIH1cblxuICAgIC8vIElmIHRoZSBvcmlnaW4gaXMgbm90IGEgc3RyaW5nIGNyZWF0ZSBhIGR1bW15IHBhcmVudCBwb29sIGFuZCByZXR1cm4gdG8gdXNlclxuICAgIGlmICh0eXBlb2Ygb3JpZ2luICE9PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgZGlzcGF0Y2hlciA9IHRoaXNba0ZhY3RvcnldKCdodHRwOi8vbG9jYWxob3N0Ojk5OTknKVxuICAgICAgdGhpc1trTW9ja0FnZW50U2V0XShvcmlnaW4sIGRpc3BhdGNoZXIpXG4gICAgICByZXR1cm4gZGlzcGF0Y2hlclxuICAgIH1cblxuICAgIC8vIElmIHdlIG1hdGNoLCBjcmVhdGUgYSBwb29sIGFuZCBhc3NpZ24gdGhlIHNhbWUgZGlzcGF0Y2hlc1xuICAgIGZvciAoY29uc3QgW2tleU1hdGNoZXIsIG5vbkV4cGxpY2l0UmVmXSBvZiBBcnJheS5mcm9tKHRoaXNba0NsaWVudHNdKSkge1xuICAgICAgY29uc3Qgbm9uRXhwbGljaXREaXNwYXRjaGVyID0gbm9uRXhwbGljaXRSZWYuZGVyZWYoKVxuICAgICAgaWYgKG5vbkV4cGxpY2l0RGlzcGF0Y2hlciAmJiB0eXBlb2Yga2V5TWF0Y2hlciAhPT0gJ3N0cmluZycgJiYgbWF0Y2hWYWx1ZShrZXlNYXRjaGVyLCBvcmlnaW4pKSB7XG4gICAgICAgIGNvbnN0IGRpc3BhdGNoZXIgPSB0aGlzW2tGYWN0b3J5XShvcmlnaW4pXG4gICAgICAgIHRoaXNba01vY2tBZ2VudFNldF0ob3JpZ2luLCBkaXNwYXRjaGVyKVxuICAgICAgICBkaXNwYXRjaGVyW2tEaXNwYXRjaGVzXSA9IG5vbkV4cGxpY2l0RGlzcGF0Y2hlcltrRGlzcGF0Y2hlc11cbiAgICAgICAgcmV0dXJuIGRpc3BhdGNoZXJcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBba0dldE5ldENvbm5lY3RdICgpIHtcbiAgICByZXR1cm4gdGhpc1trTmV0Q29ubmVjdF1cbiAgfVxuXG4gIHBlbmRpbmdJbnRlcmNlcHRvcnMgKCkge1xuICAgIGNvbnN0IG1vY2tBZ2VudENsaWVudHMgPSB0aGlzW2tDbGllbnRzXVxuXG4gICAgcmV0dXJuIEFycmF5LmZyb20obW9ja0FnZW50Q2xpZW50cy5lbnRyaWVzKCkpXG4gICAgICAuZmxhdE1hcCgoW29yaWdpbiwgc2NvcGVdKSA9PiBzY29wZS5kZXJlZigpW2tEaXNwYXRjaGVzXS5tYXAoZGlzcGF0Y2ggPT4gKHsgLi4uZGlzcGF0Y2gsIG9yaWdpbiB9KSkpXG4gICAgICAuZmlsdGVyKCh7IHBlbmRpbmcgfSkgPT4gcGVuZGluZylcbiAgfVxuXG4gIGFzc2VydE5vUGVuZGluZ0ludGVyY2VwdG9ycyAoeyBwZW5kaW5nSW50ZXJjZXB0b3JzRm9ybWF0dGVyID0gbmV3IFBlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIoKSB9ID0ge30pIHtcbiAgICBjb25zdCBwZW5kaW5nID0gdGhpcy5wZW5kaW5nSW50ZXJjZXB0b3JzKClcblxuICAgIGlmIChwZW5kaW5nLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3QgcGx1cmFsaXplciA9IG5ldyBQbHVyYWxpemVyKCdpbnRlcmNlcHRvcicsICdpbnRlcmNlcHRvcnMnKS5wbHVyYWxpemUocGVuZGluZy5sZW5ndGgpXG5cbiAgICB0aHJvdyBuZXcgVW5kaWNpRXJyb3IoYFxuJHtwbHVyYWxpemVyLmNvdW50fSAke3BsdXJhbGl6ZXIubm91bn0gJHtwbHVyYWxpemVyLmlzfSBwZW5kaW5nOlxuXG4ke3BlbmRpbmdJbnRlcmNlcHRvcnNGb3JtYXR0ZXIuZm9ybWF0KHBlbmRpbmcpfVxuYC50cmltKCkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBNb2NrQWdlbnRcbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBrUHJveHksIGtDbG9zZSwga0Rlc3Ryb3ksIGtJbnRlcmNlcHRvcnMgfSA9IHJlcXVpcmUoJy4vY29yZS9zeW1ib2xzJylcbmNvbnN0IHsgVVJMIH0gPSByZXF1aXJlKCd1cmwnKVxuY29uc3QgQWdlbnQgPSByZXF1aXJlKCcuL2FnZW50JylcbmNvbnN0IFBvb2wgPSByZXF1aXJlKCcuL3Bvb2wnKVxuY29uc3QgRGlzcGF0Y2hlckJhc2UgPSByZXF1aXJlKCcuL2Rpc3BhdGNoZXItYmFzZScpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yLCBSZXF1ZXN0QWJvcnRlZEVycm9yIH0gPSByZXF1aXJlKCcuL2NvcmUvZXJyb3JzJylcbmNvbnN0IGJ1aWxkQ29ubmVjdG9yID0gcmVxdWlyZSgnLi9jb3JlL2Nvbm5lY3QnKVxuXG5jb25zdCBrQWdlbnQgPSBTeW1ib2woJ3Byb3h5IGFnZW50JylcbmNvbnN0IGtDbGllbnQgPSBTeW1ib2woJ3Byb3h5IGNsaWVudCcpXG5jb25zdCBrUHJveHlIZWFkZXJzID0gU3ltYm9sKCdwcm94eSBoZWFkZXJzJylcbmNvbnN0IGtSZXF1ZXN0VGxzID0gU3ltYm9sKCdyZXF1ZXN0IHRscyBzZXR0aW5ncycpXG5jb25zdCBrUHJveHlUbHMgPSBTeW1ib2woJ3Byb3h5IHRscyBzZXR0aW5ncycpXG5jb25zdCBrQ29ubmVjdEVuZHBvaW50ID0gU3ltYm9sKCdjb25uZWN0IGVuZHBvaW50IGZ1bmN0aW9uJylcblxuZnVuY3Rpb24gZGVmYXVsdFByb3RvY29sUG9ydCAocHJvdG9jb2wpIHtcbiAgcmV0dXJuIHByb3RvY29sID09PSAnaHR0cHM6JyA/IDQ0MyA6IDgwXG59XG5cbmZ1bmN0aW9uIGJ1aWxkUHJveHlPcHRpb25zIChvcHRzKSB7XG4gIGlmICh0eXBlb2Ygb3B0cyA9PT0gJ3N0cmluZycpIHtcbiAgICBvcHRzID0geyB1cmk6IG9wdHMgfVxuICB9XG5cbiAgaWYgKCFvcHRzIHx8ICFvcHRzLnVyaSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignUHJveHkgb3B0cy51cmkgaXMgbWFuZGF0b3J5JylcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgdXJpOiBvcHRzLnVyaSxcbiAgICBwcm90b2NvbDogb3B0cy5wcm90b2NvbCB8fCAnaHR0cHMnXG4gIH1cbn1cblxuZnVuY3Rpb24gZGVmYXVsdEZhY3RvcnkgKG9yaWdpbiwgb3B0cykge1xuICByZXR1cm4gbmV3IFBvb2wob3JpZ2luLCBvcHRzKVxufVxuXG5jbGFzcyBQcm94eUFnZW50IGV4dGVuZHMgRGlzcGF0Y2hlckJhc2Uge1xuICBjb25zdHJ1Y3RvciAob3B0cykge1xuICAgIHN1cGVyKG9wdHMpXG4gICAgdGhpc1trUHJveHldID0gYnVpbGRQcm94eU9wdGlvbnMob3B0cylcbiAgICB0aGlzW2tBZ2VudF0gPSBuZXcgQWdlbnQob3B0cylcbiAgICB0aGlzW2tJbnRlcmNlcHRvcnNdID0gb3B0cy5pbnRlcmNlcHRvcnMgJiYgb3B0cy5pbnRlcmNlcHRvcnMuUHJveHlBZ2VudCAmJiBBcnJheS5pc0FycmF5KG9wdHMuaW50ZXJjZXB0b3JzLlByb3h5QWdlbnQpXG4gICAgICA/IG9wdHMuaW50ZXJjZXB0b3JzLlByb3h5QWdlbnRcbiAgICAgIDogW11cblxuICAgIGlmICh0eXBlb2Ygb3B0cyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIG9wdHMgPSB7IHVyaTogb3B0cyB9XG4gICAgfVxuXG4gICAgaWYgKCFvcHRzIHx8ICFvcHRzLnVyaSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdQcm94eSBvcHRzLnVyaSBpcyBtYW5kYXRvcnknKVxuICAgIH1cblxuICAgIGNvbnN0IHsgY2xpZW50RmFjdG9yeSA9IGRlZmF1bHRGYWN0b3J5IH0gPSBvcHRzXG5cbiAgICBpZiAodHlwZW9mIGNsaWVudEZhY3RvcnkgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignUHJveHkgb3B0cy5jbGllbnRGYWN0b3J5IG11c3QgYmUgYSBmdW5jdGlvbi4nKVxuICAgIH1cblxuICAgIHRoaXNba1JlcXVlc3RUbHNdID0gb3B0cy5yZXF1ZXN0VGxzXG4gICAgdGhpc1trUHJveHlUbHNdID0gb3B0cy5wcm94eVRsc1xuICAgIHRoaXNba1Byb3h5SGVhZGVyc10gPSBvcHRzLmhlYWRlcnMgfHwge31cblxuICAgIGNvbnN0IHJlc29sdmVkVXJsID0gbmV3IFVSTChvcHRzLnVyaSlcbiAgICBjb25zdCB7IG9yaWdpbiwgcG9ydCwgaG9zdCwgdXNlcm5hbWUsIHBhc3N3b3JkIH0gPSByZXNvbHZlZFVybFxuXG4gICAgaWYgKG9wdHMuYXV0aCAmJiBvcHRzLnRva2VuKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ29wdHMuYXV0aCBjYW5ub3QgYmUgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIG9wdHMudG9rZW4nKVxuICAgIH0gZWxzZSBpZiAob3B0cy5hdXRoKSB7XG4gICAgICAvKiBAZGVwcmVjYXRlZCBpbiBmYXZvdXIgb2Ygb3B0cy50b2tlbiAqL1xuICAgICAgdGhpc1trUHJveHlIZWFkZXJzXVsncHJveHktYXV0aG9yaXphdGlvbiddID0gYEJhc2ljICR7b3B0cy5hdXRofWBcbiAgICB9IGVsc2UgaWYgKG9wdHMudG9rZW4pIHtcbiAgICAgIHRoaXNba1Byb3h5SGVhZGVyc11bJ3Byb3h5LWF1dGhvcml6YXRpb24nXSA9IG9wdHMudG9rZW5cbiAgICB9IGVsc2UgaWYgKHVzZXJuYW1lICYmIHBhc3N3b3JkKSB7XG4gICAgICB0aGlzW2tQcm94eUhlYWRlcnNdWydwcm94eS1hdXRob3JpemF0aW9uJ10gPSBgQmFzaWMgJHtCdWZmZXIuZnJvbShgJHtkZWNvZGVVUklDb21wb25lbnQodXNlcm5hbWUpfToke2RlY29kZVVSSUNvbXBvbmVudChwYXNzd29yZCl9YCkudG9TdHJpbmcoJ2Jhc2U2NCcpfWBcbiAgICB9XG5cbiAgICBjb25zdCBjb25uZWN0ID0gYnVpbGRDb25uZWN0b3IoeyAuLi5vcHRzLnByb3h5VGxzIH0pXG4gICAgdGhpc1trQ29ubmVjdEVuZHBvaW50XSA9IGJ1aWxkQ29ubmVjdG9yKHsgLi4ub3B0cy5yZXF1ZXN0VGxzIH0pXG4gICAgdGhpc1trQ2xpZW50XSA9IGNsaWVudEZhY3RvcnkocmVzb2x2ZWRVcmwsIHsgY29ubmVjdCB9KVxuICAgIHRoaXNba0FnZW50XSA9IG5ldyBBZ2VudCh7XG4gICAgICAuLi5vcHRzLFxuICAgICAgY29ubmVjdDogYXN5bmMgKG9wdHMsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgIGxldCByZXF1ZXN0ZWRIb3N0ID0gb3B0cy5ob3N0XG4gICAgICAgIGlmICghb3B0cy5wb3J0KSB7XG4gICAgICAgICAgcmVxdWVzdGVkSG9zdCArPSBgOiR7ZGVmYXVsdFByb3RvY29sUG9ydChvcHRzLnByb3RvY29sKX1gXG4gICAgICAgIH1cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCB7IHNvY2tldCwgc3RhdHVzQ29kZSB9ID0gYXdhaXQgdGhpc1trQ2xpZW50XS5jb25uZWN0KHtcbiAgICAgICAgICAgIG9yaWdpbixcbiAgICAgICAgICAgIHBvcnQsXG4gICAgICAgICAgICBwYXRoOiByZXF1ZXN0ZWRIb3N0LFxuICAgICAgICAgICAgc2lnbmFsOiBvcHRzLnNpZ25hbCxcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgLi4udGhpc1trUHJveHlIZWFkZXJzXSxcbiAgICAgICAgICAgICAgaG9zdFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICAgaWYgKHN0YXR1c0NvZGUgIT09IDIwMCkge1xuICAgICAgICAgICAgc29ja2V0Lm9uKCdlcnJvcicsICgpID0+IHt9KS5kZXN0cm95KClcbiAgICAgICAgICAgIGNhbGxiYWNrKG5ldyBSZXF1ZXN0QWJvcnRlZEVycm9yKGBQcm94eSByZXNwb25zZSAoJHtzdGF0dXNDb2RlfSkgIT09IDIwMCB3aGVuIEhUVFAgVHVubmVsaW5nYCkpXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChvcHRzLnByb3RvY29sICE9PSAnaHR0cHM6Jykge1xuICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgc29ja2V0KVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuICAgICAgICAgIGxldCBzZXJ2ZXJuYW1lXG4gICAgICAgICAgaWYgKHRoaXNba1JlcXVlc3RUbHNdKSB7XG4gICAgICAgICAgICBzZXJ2ZXJuYW1lID0gdGhpc1trUmVxdWVzdFRsc10uc2VydmVybmFtZVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZXJ2ZXJuYW1lID0gb3B0cy5zZXJ2ZXJuYW1lXG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXNba0Nvbm5lY3RFbmRwb2ludF0oeyAuLi5vcHRzLCBzZXJ2ZXJuYW1lLCBodHRwU29ja2V0OiBzb2NrZXQgfSwgY2FsbGJhY2spXG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgIGNhbGxiYWNrKGVycilcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBkaXNwYXRjaCAob3B0cywgaGFuZGxlcikge1xuICAgIGNvbnN0IHsgaG9zdCB9ID0gbmV3IFVSTChvcHRzLm9yaWdpbilcbiAgICBjb25zdCBoZWFkZXJzID0gYnVpbGRIZWFkZXJzKG9wdHMuaGVhZGVycylcbiAgICB0aHJvd0lmUHJveHlBdXRoSXNTZW50KGhlYWRlcnMpXG4gICAgcmV0dXJuIHRoaXNba0FnZW50XS5kaXNwYXRjaChcbiAgICAgIHtcbiAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIC4uLmhlYWRlcnMsXG4gICAgICAgICAgaG9zdFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgaGFuZGxlclxuICAgIClcbiAgfVxuXG4gIGFzeW5jIFtrQ2xvc2VdICgpIHtcbiAgICBhd2FpdCB0aGlzW2tBZ2VudF0uY2xvc2UoKVxuICAgIGF3YWl0IHRoaXNba0NsaWVudF0uY2xvc2UoKVxuICB9XG5cbiAgYXN5bmMgW2tEZXN0cm95XSAoKSB7XG4gICAgYXdhaXQgdGhpc1trQWdlbnRdLmRlc3Ryb3koKVxuICAgIGF3YWl0IHRoaXNba0NsaWVudF0uZGVzdHJveSgpXG4gIH1cbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPn0gaGVhZGVyc1xuICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZz59XG4gKi9cbmZ1bmN0aW9uIGJ1aWxkSGVhZGVycyAoaGVhZGVycykge1xuICAvLyBXaGVuIHVzaW5nIHVuZGljaS5mZXRjaCwgdGhlIGhlYWRlcnMgbGlzdCBpcyBzdG9yZWRcbiAgLy8gYXMgYW4gYXJyYXkuXG4gIGlmIChBcnJheS5pc0FycmF5KGhlYWRlcnMpKSB7XG4gICAgLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fSAqL1xuICAgIGNvbnN0IGhlYWRlcnNQYWlyID0ge31cblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaGVhZGVycy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgaGVhZGVyc1BhaXJbaGVhZGVyc1tpXV0gPSBoZWFkZXJzW2kgKyAxXVxuICAgIH1cblxuICAgIHJldHVybiBoZWFkZXJzUGFpclxuICB9XG5cbiAgcmV0dXJuIGhlYWRlcnNcbn1cblxuLyoqXG4gKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIHN0cmluZz59IGhlYWRlcnNcbiAqXG4gKiBQcmV2aW91cyB2ZXJzaW9ucyBvZiBQcm94eUFnZW50IHN1Z2dlc3RzIHRoZSBQcm94eS1BdXRob3JpemF0aW9uIGluIHJlcXVlc3QgaGVhZGVyc1xuICogTmV2ZXJ0aGVsZXNzLCBpdCB3YXMgY2hhbmdlZCBhbmQgdG8gYXZvaWQgYSBzZWN1cml0eSB2dWxuZXJhYmlsaXR5IGJ5IGVuZCB1c2Vyc1xuICogdGhpcyBjaGVjayB3YXMgY3JlYXRlZC5cbiAqIEl0IHNob3VsZCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnNcbiAqL1xuZnVuY3Rpb24gdGhyb3dJZlByb3h5QXV0aElzU2VudCAoaGVhZGVycykge1xuICBjb25zdCBleGlzdFByb3h5QXV0aCA9IGhlYWRlcnMgJiYgT2JqZWN0LmtleXMoaGVhZGVycylcbiAgICAuZmluZCgoa2V5KSA9PiBrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ3Byb3h5LWF1dGhvcml6YXRpb24nKVxuICBpZiAoZXhpc3RQcm94eUF1dGgpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ1Byb3h5LUF1dGhvcml6YXRpb24gc2hvdWxkIGJlIHNlbnQgaW4gUHJveHlBZ2VudCBjb25zdHJ1Y3RvcicpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBQcm94eUFnZW50XG4iLCAiY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcblxuY29uc3QgeyBrUmV0cnlIYW5kbGVyRGVmYXVsdFJldHJ5IH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgeyBSZXF1ZXN0UmV0cnlFcnJvciB9ID0gcmVxdWlyZSgnLi4vY29yZS9lcnJvcnMnKVxuY29uc3QgeyBpc0Rpc3R1cmJlZCwgcGFyc2VIZWFkZXJzLCBwYXJzZVJhbmdlSGVhZGVyIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVSZXRyeUFmdGVySGVhZGVyIChyZXRyeUFmdGVyKSB7XG4gIGNvbnN0IGN1cnJlbnQgPSBEYXRlLm5vdygpXG4gIGNvbnN0IGRpZmYgPSBuZXcgRGF0ZShyZXRyeUFmdGVyKS5nZXRUaW1lKCkgLSBjdXJyZW50XG5cbiAgcmV0dXJuIGRpZmZcbn1cblxuY2xhc3MgUmV0cnlIYW5kbGVyIHtcbiAgY29uc3RydWN0b3IgKG9wdHMsIGhhbmRsZXJzKSB7XG4gICAgY29uc3QgeyByZXRyeU9wdGlvbnMsIC4uLmRpc3BhdGNoT3B0cyB9ID0gb3B0c1xuICAgIGNvbnN0IHtcbiAgICAgIC8vIFJldHJ5IHNjb3BlZFxuICAgICAgcmV0cnk6IHJldHJ5Rm4sXG4gICAgICBtYXhSZXRyaWVzLFxuICAgICAgbWF4VGltZW91dCxcbiAgICAgIG1pblRpbWVvdXQsXG4gICAgICB0aW1lb3V0RmFjdG9yLFxuICAgICAgLy8gUmVzcG9uc2Ugc2NvcGVkXG4gICAgICBtZXRob2RzLFxuICAgICAgZXJyb3JDb2RlcyxcbiAgICAgIHJldHJ5QWZ0ZXIsXG4gICAgICBzdGF0dXNDb2Rlc1xuICAgIH0gPSByZXRyeU9wdGlvbnMgPz8ge31cblxuICAgIHRoaXMuZGlzcGF0Y2ggPSBoYW5kbGVycy5kaXNwYXRjaFxuICAgIHRoaXMuaGFuZGxlciA9IGhhbmRsZXJzLmhhbmRsZXJcbiAgICB0aGlzLm9wdHMgPSBkaXNwYXRjaE9wdHNcbiAgICB0aGlzLmFib3J0ID0gbnVsbFxuICAgIHRoaXMuYWJvcnRlZCA9IGZhbHNlXG4gICAgdGhpcy5yZXRyeU9wdHMgPSB7XG4gICAgICByZXRyeTogcmV0cnlGbiA/PyBSZXRyeUhhbmRsZXJba1JldHJ5SGFuZGxlckRlZmF1bHRSZXRyeV0sXG4gICAgICByZXRyeUFmdGVyOiByZXRyeUFmdGVyID8/IHRydWUsXG4gICAgICBtYXhUaW1lb3V0OiBtYXhUaW1lb3V0ID8/IDMwICogMTAwMCwgLy8gMzBzLFxuICAgICAgdGltZW91dDogbWluVGltZW91dCA/PyA1MDAsIC8vIC41c1xuICAgICAgdGltZW91dEZhY3RvcjogdGltZW91dEZhY3RvciA/PyAyLFxuICAgICAgbWF4UmV0cmllczogbWF4UmV0cmllcyA/PyA1LFxuICAgICAgLy8gV2hhdCBlcnJvcnMgd2Ugc2hvdWxkIHJldHJ5XG4gICAgICBtZXRob2RzOiBtZXRob2RzID8/IFsnR0VUJywgJ0hFQUQnLCAnT1BUSU9OUycsICdQVVQnLCAnREVMRVRFJywgJ1RSQUNFJ10sXG4gICAgICAvLyBJbmRpY2F0ZXMgd2hpY2ggZXJyb3JzIHRvIHJldHJ5XG4gICAgICBzdGF0dXNDb2Rlczogc3RhdHVzQ29kZXMgPz8gWzUwMCwgNTAyLCA1MDMsIDUwNCwgNDI5XSxcbiAgICAgIC8vIExpc3Qgb2YgZXJyb3JzIHRvIHJldHJ5XG4gICAgICBlcnJvckNvZGVzOiBlcnJvckNvZGVzID8/IFtcbiAgICAgICAgJ0VDT05OUkVTRVQnLFxuICAgICAgICAnRUNPTk5SRUZVU0VEJyxcbiAgICAgICAgJ0VOT1RGT1VORCcsXG4gICAgICAgICdFTkVURE9XTicsXG4gICAgICAgICdFTkVUVU5SRUFDSCcsXG4gICAgICAgICdFSE9TVERPV04nLFxuICAgICAgICAnRUhPU1RVTlJFQUNIJyxcbiAgICAgICAgJ0VQSVBFJ1xuICAgICAgXVxuICAgIH1cblxuICAgIHRoaXMucmV0cnlDb3VudCA9IDBcbiAgICB0aGlzLnN0YXJ0ID0gMFxuICAgIHRoaXMuZW5kID0gbnVsbFxuICAgIHRoaXMuZXRhZyA9IG51bGxcbiAgICB0aGlzLnJlc3VtZSA9IG51bGxcblxuICAgIC8vIEhhbmRsZSBwb3NzaWJsZSBvbkNvbm5lY3QgZHVwbGljYXRpb25cbiAgICB0aGlzLmhhbmRsZXIub25Db25uZWN0KHJlYXNvbiA9PiB7XG4gICAgICB0aGlzLmFib3J0ZWQgPSB0cnVlXG4gICAgICBpZiAodGhpcy5hYm9ydCkge1xuICAgICAgICB0aGlzLmFib3J0KHJlYXNvbilcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVhc29uID0gcmVhc29uXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIG9uUmVxdWVzdFNlbnQgKCkge1xuICAgIGlmICh0aGlzLmhhbmRsZXIub25SZXF1ZXN0U2VudCkge1xuICAgICAgdGhpcy5oYW5kbGVyLm9uUmVxdWVzdFNlbnQoKVxuICAgIH1cbiAgfVxuXG4gIG9uVXBncmFkZSAoc3RhdHVzQ29kZSwgaGVhZGVycywgc29ja2V0KSB7XG4gICAgaWYgKHRoaXMuaGFuZGxlci5vblVwZ3JhZGUpIHtcbiAgICAgIHRoaXMuaGFuZGxlci5vblVwZ3JhZGUoc3RhdHVzQ29kZSwgaGVhZGVycywgc29ja2V0KVxuICAgIH1cbiAgfVxuXG4gIG9uQ29ubmVjdCAoYWJvcnQpIHtcbiAgICBpZiAodGhpcy5hYm9ydGVkKSB7XG4gICAgICBhYm9ydCh0aGlzLnJlYXNvbilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5hYm9ydCA9IGFib3J0XG4gICAgfVxuICB9XG5cbiAgb25Cb2R5U2VudCAoY2h1bmspIHtcbiAgICBpZiAodGhpcy5oYW5kbGVyLm9uQm9keVNlbnQpIHJldHVybiB0aGlzLmhhbmRsZXIub25Cb2R5U2VudChjaHVuaylcbiAgfVxuXG4gIHN0YXRpYyBba1JldHJ5SGFuZGxlckRlZmF1bHRSZXRyeV0gKGVyciwgeyBzdGF0ZSwgb3B0cyB9LCBjYikge1xuICAgIGNvbnN0IHsgc3RhdHVzQ29kZSwgY29kZSwgaGVhZGVycyB9ID0gZXJyXG4gICAgY29uc3QgeyBtZXRob2QsIHJldHJ5T3B0aW9ucyB9ID0gb3B0c1xuICAgIGNvbnN0IHtcbiAgICAgIG1heFJldHJpZXMsXG4gICAgICB0aW1lb3V0LFxuICAgICAgbWF4VGltZW91dCxcbiAgICAgIHRpbWVvdXRGYWN0b3IsXG4gICAgICBzdGF0dXNDb2RlcyxcbiAgICAgIGVycm9yQ29kZXMsXG4gICAgICBtZXRob2RzXG4gICAgfSA9IHJldHJ5T3B0aW9uc1xuICAgIGxldCB7IGNvdW50ZXIsIGN1cnJlbnRUaW1lb3V0IH0gPSBzdGF0ZVxuXG4gICAgY3VycmVudFRpbWVvdXQgPVxuICAgICAgY3VycmVudFRpbWVvdXQgIT0gbnVsbCAmJiBjdXJyZW50VGltZW91dCA+IDAgPyBjdXJyZW50VGltZW91dCA6IHRpbWVvdXRcblxuICAgIC8vIEFueSBjb2RlIHRoYXQgaXMgbm90IGEgVW5kaWNpJ3Mgb3JpZ2luYXRlZCBhbmQgYWxsb3dlZCB0byByZXRyeVxuICAgIGlmIChcbiAgICAgIGNvZGUgJiZcbiAgICAgIGNvZGUgIT09ICdVTkRfRVJSX1JFUV9SRVRSWScgJiZcbiAgICAgIGNvZGUgIT09ICdVTkRfRVJSX1NPQ0tFVCcgJiZcbiAgICAgICFlcnJvckNvZGVzLmluY2x1ZGVzKGNvZGUpXG4gICAgKSB7XG4gICAgICBjYihlcnIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBJZiBhIHNldCBvZiBtZXRob2QgYXJlIHByb3ZpZGVkIGFuZCB0aGUgY3VycmVudCBtZXRob2QgaXMgbm90IGluIHRoZSBsaXN0XG4gICAgaWYgKEFycmF5LmlzQXJyYXkobWV0aG9kcykgJiYgIW1ldGhvZHMuaW5jbHVkZXMobWV0aG9kKSkge1xuICAgICAgY2IoZXJyKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gSWYgYSBzZXQgb2Ygc3RhdHVzIGNvZGUgYXJlIHByb3ZpZGVkIGFuZCB0aGUgY3VycmVudCBzdGF0dXMgY29kZSBpcyBub3QgaW4gdGhlIGxpc3RcbiAgICBpZiAoXG4gICAgICBzdGF0dXNDb2RlICE9IG51bGwgJiZcbiAgICAgIEFycmF5LmlzQXJyYXkoc3RhdHVzQ29kZXMpICYmXG4gICAgICAhc3RhdHVzQ29kZXMuaW5jbHVkZXMoc3RhdHVzQ29kZSlcbiAgICApIHtcbiAgICAgIGNiKGVycilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIElmIHdlIHJlYWNoZWQgdGhlIG1heCBudW1iZXIgb2YgcmV0cmllc1xuICAgIGlmIChjb3VudGVyID4gbWF4UmV0cmllcykge1xuICAgICAgY2IoZXJyKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgbGV0IHJldHJ5QWZ0ZXJIZWFkZXIgPSBoZWFkZXJzICE9IG51bGwgJiYgaGVhZGVyc1sncmV0cnktYWZ0ZXInXVxuICAgIGlmIChyZXRyeUFmdGVySGVhZGVyKSB7XG4gICAgICByZXRyeUFmdGVySGVhZGVyID0gTnVtYmVyKHJldHJ5QWZ0ZXJIZWFkZXIpXG4gICAgICByZXRyeUFmdGVySGVhZGVyID0gaXNOYU4ocmV0cnlBZnRlckhlYWRlcilcbiAgICAgICAgPyBjYWxjdWxhdGVSZXRyeUFmdGVySGVhZGVyKHJldHJ5QWZ0ZXJIZWFkZXIpXG4gICAgICAgIDogcmV0cnlBZnRlckhlYWRlciAqIDFlMyAvLyBSZXRyeS1BZnRlciBpcyBpbiBzZWNvbmRzXG4gICAgfVxuXG4gICAgY29uc3QgcmV0cnlUaW1lb3V0ID1cbiAgICAgIHJldHJ5QWZ0ZXJIZWFkZXIgPiAwXG4gICAgICAgID8gTWF0aC5taW4ocmV0cnlBZnRlckhlYWRlciwgbWF4VGltZW91dClcbiAgICAgICAgOiBNYXRoLm1pbihjdXJyZW50VGltZW91dCAqIHRpbWVvdXRGYWN0b3IgKiogY291bnRlciwgbWF4VGltZW91dClcblxuICAgIHN0YXRlLmN1cnJlbnRUaW1lb3V0ID0gcmV0cnlUaW1lb3V0XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IGNiKG51bGwpLCByZXRyeVRpbWVvdXQpXG4gIH1cblxuICBvbkhlYWRlcnMgKHN0YXR1c0NvZGUsIHJhd0hlYWRlcnMsIHJlc3VtZSwgc3RhdHVzTWVzc2FnZSkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBwYXJzZUhlYWRlcnMocmF3SGVhZGVycylcblxuICAgIHRoaXMucmV0cnlDb3VudCArPSAxXG5cbiAgICBpZiAoc3RhdHVzQ29kZSA+PSAzMDApIHtcbiAgICAgIHRoaXMuYWJvcnQoXG4gICAgICAgIG5ldyBSZXF1ZXN0UmV0cnlFcnJvcignUmVxdWVzdCBmYWlsZWQnLCBzdGF0dXNDb2RlLCB7XG4gICAgICAgICAgaGVhZGVycyxcbiAgICAgICAgICBjb3VudDogdGhpcy5yZXRyeUNvdW50XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICAvLyBDaGVja3BvaW50IGZvciByZXN1bWUgZnJvbSB3aGVyZSB3ZSBsZWZ0IGl0XG4gICAgaWYgKHRoaXMucmVzdW1lICE9IG51bGwpIHtcbiAgICAgIHRoaXMucmVzdW1lID0gbnVsbFxuXG4gICAgICBpZiAoc3RhdHVzQ29kZSAhPT0gMjA2KSB7XG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNvbnRlbnRSYW5nZSA9IHBhcnNlUmFuZ2VIZWFkZXIoaGVhZGVyc1snY29udGVudC1yYW5nZSddKVxuICAgICAgLy8gSWYgbm8gY29udGVudCByYW5nZVxuICAgICAgaWYgKCFjb250ZW50UmFuZ2UpIHtcbiAgICAgICAgdGhpcy5hYm9ydChcbiAgICAgICAgICBuZXcgUmVxdWVzdFJldHJ5RXJyb3IoJ0NvbnRlbnQtUmFuZ2UgbWlzbWF0Y2gnLCBzdGF0dXNDb2RlLCB7XG4gICAgICAgICAgICBoZWFkZXJzLFxuICAgICAgICAgICAgY291bnQ6IHRoaXMucmV0cnlDb3VudFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG5cbiAgICAgIC8vIExldCdzIHN0YXJ0IHdpdGggYSB3ZWFrIGV0YWcgY2hlY2tcbiAgICAgIGlmICh0aGlzLmV0YWcgIT0gbnVsbCAmJiB0aGlzLmV0YWcgIT09IGhlYWRlcnMuZXRhZykge1xuICAgICAgICB0aGlzLmFib3J0KFxuICAgICAgICAgIG5ldyBSZXF1ZXN0UmV0cnlFcnJvcignRVRhZyBtaXNtYXRjaCcsIHN0YXR1c0NvZGUsIHtcbiAgICAgICAgICAgIGhlYWRlcnMsXG4gICAgICAgICAgICBjb3VudDogdGhpcy5yZXRyeUNvdW50XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgY29uc3QgeyBzdGFydCwgc2l6ZSwgZW5kID0gc2l6ZSB9ID0gY29udGVudFJhbmdlXG5cbiAgICAgIGFzc2VydCh0aGlzLnN0YXJ0ID09PSBzdGFydCwgJ2NvbnRlbnQtcmFuZ2UgbWlzbWF0Y2gnKVxuICAgICAgYXNzZXJ0KHRoaXMuZW5kID09IG51bGwgfHwgdGhpcy5lbmQgPT09IGVuZCwgJ2NvbnRlbnQtcmFuZ2UgbWlzbWF0Y2gnKVxuXG4gICAgICB0aGlzLnJlc3VtZSA9IHJlc3VtZVxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICBpZiAodGhpcy5lbmQgPT0gbnVsbCkge1xuICAgICAgaWYgKHN0YXR1c0NvZGUgPT09IDIwNikge1xuICAgICAgICAvLyBGaXJzdCB0aW1lIHdlIHJlY2VpdmUgMjA2XG4gICAgICAgIGNvbnN0IHJhbmdlID0gcGFyc2VSYW5nZUhlYWRlcihoZWFkZXJzWydjb250ZW50LXJhbmdlJ10pXG5cbiAgICAgICAgaWYgKHJhbmdlID09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uSGVhZGVycyhcbiAgICAgICAgICAgIHN0YXR1c0NvZGUsXG4gICAgICAgICAgICByYXdIZWFkZXJzLFxuICAgICAgICAgICAgcmVzdW1lLFxuICAgICAgICAgICAgc3RhdHVzTWVzc2FnZVxuICAgICAgICAgIClcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgc3RhcnQsIHNpemUsIGVuZCA9IHNpemUgfSA9IHJhbmdlXG5cbiAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgIHN0YXJ0ICE9IG51bGwgJiYgTnVtYmVyLmlzRmluaXRlKHN0YXJ0KSAmJiB0aGlzLnN0YXJ0ICE9PSBzdGFydCxcbiAgICAgICAgICAnY29udGVudC1yYW5nZSBtaXNtYXRjaCdcbiAgICAgICAgKVxuICAgICAgICBhc3NlcnQoTnVtYmVyLmlzRmluaXRlKHN0YXJ0KSlcbiAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgIGVuZCAhPSBudWxsICYmIE51bWJlci5pc0Zpbml0ZShlbmQpICYmIHRoaXMuZW5kICE9PSBlbmQsXG4gICAgICAgICAgJ2ludmFsaWQgY29udGVudC1sZW5ndGgnXG4gICAgICAgIClcblxuICAgICAgICB0aGlzLnN0YXJ0ID0gc3RhcnRcbiAgICAgICAgdGhpcy5lbmQgPSBlbmRcbiAgICAgIH1cblxuICAgICAgLy8gV2UgbWFrZSBvdXIgYmVzdCB0byBjaGVja3BvaW50IHRoZSBib2R5IGZvciBmdXJ0aGVyIHJhbmdlIGhlYWRlcnNcbiAgICAgIGlmICh0aGlzLmVuZCA9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRMZW5ndGggPSBoZWFkZXJzWydjb250ZW50LWxlbmd0aCddXG4gICAgICAgIHRoaXMuZW5kID0gY29udGVudExlbmd0aCAhPSBudWxsID8gTnVtYmVyKGNvbnRlbnRMZW5ndGgpIDogbnVsbFxuICAgICAgfVxuXG4gICAgICBhc3NlcnQoTnVtYmVyLmlzRmluaXRlKHRoaXMuc3RhcnQpKVxuICAgICAgYXNzZXJ0KFxuICAgICAgICB0aGlzLmVuZCA9PSBudWxsIHx8IE51bWJlci5pc0Zpbml0ZSh0aGlzLmVuZCksXG4gICAgICAgICdpbnZhbGlkIGNvbnRlbnQtbGVuZ3RoJ1xuICAgICAgKVxuXG4gICAgICB0aGlzLnJlc3VtZSA9IHJlc3VtZVxuICAgICAgdGhpcy5ldGFnID0gaGVhZGVycy5ldGFnICE9IG51bGwgPyBoZWFkZXJzLmV0YWcgOiBudWxsXG5cbiAgICAgIHJldHVybiB0aGlzLmhhbmRsZXIub25IZWFkZXJzKFxuICAgICAgICBzdGF0dXNDb2RlLFxuICAgICAgICByYXdIZWFkZXJzLFxuICAgICAgICByZXN1bWUsXG4gICAgICAgIHN0YXR1c01lc3NhZ2VcbiAgICAgIClcbiAgICB9XG5cbiAgICBjb25zdCBlcnIgPSBuZXcgUmVxdWVzdFJldHJ5RXJyb3IoJ1JlcXVlc3QgZmFpbGVkJywgc3RhdHVzQ29kZSwge1xuICAgICAgaGVhZGVycyxcbiAgICAgIGNvdW50OiB0aGlzLnJldHJ5Q291bnRcbiAgICB9KVxuXG4gICAgdGhpcy5hYm9ydChlcnIpXG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIG9uRGF0YSAoY2h1bmspIHtcbiAgICB0aGlzLnN0YXJ0ICs9IGNodW5rLmxlbmd0aFxuXG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkRhdGEoY2h1bmspXG4gIH1cblxuICBvbkNvbXBsZXRlIChyYXdUcmFpbGVycykge1xuICAgIHRoaXMucmV0cnlDb3VudCA9IDBcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uQ29tcGxldGUocmF3VHJhaWxlcnMpXG4gIH1cblxuICBvbkVycm9yIChlcnIpIHtcbiAgICBpZiAodGhpcy5hYm9ydGVkIHx8IGlzRGlzdHVyYmVkKHRoaXMub3B0cy5ib2R5KSkge1xuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkVycm9yKGVycilcbiAgICB9XG5cbiAgICB0aGlzLnJldHJ5T3B0cy5yZXRyeShcbiAgICAgIGVycixcbiAgICAgIHtcbiAgICAgICAgc3RhdGU6IHsgY291bnRlcjogdGhpcy5yZXRyeUNvdW50KyssIGN1cnJlbnRUaW1lb3V0OiB0aGlzLnJldHJ5QWZ0ZXIgfSxcbiAgICAgICAgb3B0czogeyByZXRyeU9wdGlvbnM6IHRoaXMucmV0cnlPcHRzLCAuLi50aGlzLm9wdHMgfVxuICAgICAgfSxcbiAgICAgIG9uUmV0cnkuYmluZCh0aGlzKVxuICAgIClcblxuICAgIGZ1bmN0aW9uIG9uUmV0cnkgKGVycikge1xuICAgICAgaWYgKGVyciAhPSBudWxsIHx8IHRoaXMuYWJvcnRlZCB8fCBpc0Rpc3R1cmJlZCh0aGlzLm9wdHMuYm9keSkpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkVycm9yKGVycilcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuc3RhcnQgIT09IDApIHtcbiAgICAgICAgdGhpcy5vcHRzID0ge1xuICAgICAgICAgIC4uLnRoaXMub3B0cyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAuLi50aGlzLm9wdHMuaGVhZGVycyxcbiAgICAgICAgICAgIHJhbmdlOiBgYnl0ZXM9JHt0aGlzLnN0YXJ0fS0ke3RoaXMuZW5kID8/ICcnfWBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5kaXNwYXRjaCh0aGlzLm9wdHMsIHRoaXMpXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5oYW5kbGVyLm9uRXJyb3IoZXJyKVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IFJldHJ5SGFuZGxlclxuIiwgIid1c2Ugc3RyaWN0J1xuXG4vLyBXZSBpbmNsdWRlIGEgdmVyc2lvbiBudW1iZXIgZm9yIHRoZSBEaXNwYXRjaGVyIEFQSS4gSW4gY2FzZSBvZiBicmVha2luZyBjaGFuZ2VzLFxuLy8gdGhpcyB2ZXJzaW9uIG51bWJlciBtdXN0IGJlIGluY3JlYXNlZCB0byBhdm9pZCBjb25mbGljdHMuXG5jb25zdCBnbG9iYWxEaXNwYXRjaGVyID0gU3ltYm9sLmZvcigndW5kaWNpLmdsb2JhbERpc3BhdGNoZXIuMScpXG5jb25zdCB7IEludmFsaWRBcmd1bWVudEVycm9yIH0gPSByZXF1aXJlKCcuL2NvcmUvZXJyb3JzJylcbmNvbnN0IEFnZW50ID0gcmVxdWlyZSgnLi9hZ2VudCcpXG5cbmlmIChnZXRHbG9iYWxEaXNwYXRjaGVyKCkgPT09IHVuZGVmaW5lZCkge1xuICBzZXRHbG9iYWxEaXNwYXRjaGVyKG5ldyBBZ2VudCgpKVxufVxuXG5mdW5jdGlvbiBzZXRHbG9iYWxEaXNwYXRjaGVyIChhZ2VudCkge1xuICBpZiAoIWFnZW50IHx8IHR5cGVvZiBhZ2VudC5kaXNwYXRjaCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignQXJndW1lbnQgYWdlbnQgbXVzdCBpbXBsZW1lbnQgQWdlbnQnKVxuICB9XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShnbG9iYWxUaGlzLCBnbG9iYWxEaXNwYXRjaGVyLCB7XG4gICAgdmFsdWU6IGFnZW50LFxuICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgIGNvbmZpZ3VyYWJsZTogZmFsc2VcbiAgfSlcbn1cblxuZnVuY3Rpb24gZ2V0R2xvYmFsRGlzcGF0Y2hlciAoKSB7XG4gIHJldHVybiBnbG9iYWxUaGlzW2dsb2JhbERpc3BhdGNoZXJdXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBzZXRHbG9iYWxEaXNwYXRjaGVyLFxuICBnZXRHbG9iYWxEaXNwYXRjaGVyXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0gY2xhc3MgRGVjb3JhdG9ySGFuZGxlciB7XG4gIGNvbnN0cnVjdG9yIChoYW5kbGVyKSB7XG4gICAgdGhpcy5oYW5kbGVyID0gaGFuZGxlclxuICB9XG5cbiAgb25Db25uZWN0ICguLi5hcmdzKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkNvbm5lY3QoLi4uYXJncylcbiAgfVxuXG4gIG9uRXJyb3IgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uRXJyb3IoLi4uYXJncylcbiAgfVxuXG4gIG9uVXBncmFkZSAoLi4uYXJncykge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZXIub25VcGdyYWRlKC4uLmFyZ3MpXG4gIH1cblxuICBvbkhlYWRlcnMgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uSGVhZGVycyguLi5hcmdzKVxuICB9XG5cbiAgb25EYXRhICguLi5hcmdzKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlci5vbkRhdGEoLi4uYXJncylcbiAgfVxuXG4gIG9uQ29tcGxldGUgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uQ29tcGxldGUoLi4uYXJncylcbiAgfVxuXG4gIG9uQm9keVNlbnQgKC4uLmFyZ3MpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVyLm9uQm9keVNlbnQoLi4uYXJncylcbiAgfVxufVxuIiwgIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9FdGhhbi1BcnJvd29vZC91bmRpY2ktZmV0Y2hcblxuJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga0hlYWRlcnNMaXN0LCBrQ29uc3RydWN0IH0gPSByZXF1aXJlKCcuLi9jb3JlL3N5bWJvbHMnKVxuY29uc3QgeyBrR3VhcmQgfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IGtFbnVtZXJhYmxlUHJvcGVydHkgfSA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7XG4gIG1ha2VJdGVyYXRvcixcbiAgaXNWYWxpZEhlYWRlck5hbWUsXG4gIGlzVmFsaWRIZWFkZXJWYWx1ZVxufSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgndXRpbCcpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi93ZWJpZGwnKVxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcblxuY29uc3Qga0hlYWRlcnNNYXAgPSBTeW1ib2woJ2hlYWRlcnMgbWFwJylcbmNvbnN0IGtIZWFkZXJzU29ydGVkTWFwID0gU3ltYm9sKCdoZWFkZXJzIG1hcCBzb3J0ZWQnKVxuXG4vKipcbiAqIEBwYXJhbSB7bnVtYmVyfSBjb2RlXG4gKi9cbmZ1bmN0aW9uIGlzSFRUUFdoaXRlU3BhY2VDaGFyQ29kZSAoY29kZSkge1xuICByZXR1cm4gY29kZSA9PT0gMHgwMGEgfHwgY29kZSA9PT0gMHgwMGQgfHwgY29kZSA9PT0gMHgwMDkgfHwgY29kZSA9PT0gMHgwMjBcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWhlYWRlci12YWx1ZS1ub3JtYWxpemVcbiAqIEBwYXJhbSB7c3RyaW5nfSBwb3RlbnRpYWxWYWx1ZVxuICovXG5mdW5jdGlvbiBoZWFkZXJWYWx1ZU5vcm1hbGl6ZSAocG90ZW50aWFsVmFsdWUpIHtcbiAgLy8gIFRvIG5vcm1hbGl6ZSBhIGJ5dGUgc2VxdWVuY2UgcG90ZW50aWFsVmFsdWUsIHJlbW92ZVxuICAvLyAgYW55IGxlYWRpbmcgYW5kIHRyYWlsaW5nIEhUVFAgd2hpdGVzcGFjZSBieXRlcyBmcm9tXG4gIC8vICBwb3RlbnRpYWxWYWx1ZS5cbiAgbGV0IGkgPSAwOyBsZXQgaiA9IHBvdGVudGlhbFZhbHVlLmxlbmd0aFxuXG4gIHdoaWxlIChqID4gaSAmJiBpc0hUVFBXaGl0ZVNwYWNlQ2hhckNvZGUocG90ZW50aWFsVmFsdWUuY2hhckNvZGVBdChqIC0gMSkpKSAtLWpcbiAgd2hpbGUgKGogPiBpICYmIGlzSFRUUFdoaXRlU3BhY2VDaGFyQ29kZShwb3RlbnRpYWxWYWx1ZS5jaGFyQ29kZUF0KGkpKSkgKytpXG5cbiAgcmV0dXJuIGkgPT09IDAgJiYgaiA9PT0gcG90ZW50aWFsVmFsdWUubGVuZ3RoID8gcG90ZW50aWFsVmFsdWUgOiBwb3RlbnRpYWxWYWx1ZS5zdWJzdHJpbmcoaSwgailcbn1cblxuZnVuY3Rpb24gZmlsbCAoaGVhZGVycywgb2JqZWN0KSB7XG4gIC8vIFRvIGZpbGwgYSBIZWFkZXJzIG9iamVjdCBoZWFkZXJzIHdpdGggYSBnaXZlbiBvYmplY3Qgb2JqZWN0LCBydW4gdGhlc2Ugc3RlcHM6XG5cbiAgLy8gMS4gSWYgb2JqZWN0IGlzIGEgc2VxdWVuY2UsIHRoZW4gZm9yIGVhY2ggaGVhZGVyIGluIG9iamVjdDpcbiAgLy8gTm90ZTogd2ViaWRsIGNvbnZlcnNpb24gdG8gYXJyYXkgaGFzIGFscmVhZHkgYmVlbiBkb25lLlxuICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QpKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvYmplY3QubGVuZ3RoOyArK2kpIHtcbiAgICAgIGNvbnN0IGhlYWRlciA9IG9iamVjdFtpXVxuICAgICAgLy8gMS4gSWYgaGVhZGVyIGRvZXMgbm90IGNvbnRhaW4gZXhhY3RseSB0d28gaXRlbXMsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAoaGVhZGVyLmxlbmd0aCAhPT0gMikge1xuICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgaGVhZGVyOiAnSGVhZGVycyBjb25zdHJ1Y3RvcicsXG4gICAgICAgICAgbWVzc2FnZTogYGV4cGVjdGVkIG5hbWUvdmFsdWUgcGFpciB0byBiZSBsZW5ndGggMiwgZm91bmQgJHtoZWFkZXIubGVuZ3RofS5gXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIEFwcGVuZCAoaGVhZGVyXHUyMDE5cyBmaXJzdCBpdGVtLCBoZWFkZXJcdTIwMTlzIHNlY29uZCBpdGVtKSB0byBoZWFkZXJzLlxuICAgICAgYXBwZW5kSGVhZGVyKGhlYWRlcnMsIGhlYWRlclswXSwgaGVhZGVyWzFdKVxuICAgIH1cbiAgfSBlbHNlIGlmICh0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJiBvYmplY3QgIT09IG51bGwpIHtcbiAgICAvLyBOb3RlOiBudWxsIHNob3VsZCB0aHJvd1xuXG4gICAgLy8gMi4gT3RoZXJ3aXNlLCBvYmplY3QgaXMgYSByZWNvcmQsIHRoZW4gZm9yIGVhY2gga2V5IFx1MjE5MiB2YWx1ZSBpbiBvYmplY3QsXG4gICAgLy8gICAgYXBwZW5kIChrZXksIHZhbHVlKSB0byBoZWFkZXJzXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdClcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyArK2kpIHtcbiAgICAgIGFwcGVuZEhlYWRlcihoZWFkZXJzLCBrZXlzW2ldLCBvYmplY3Rba2V5c1tpXV0pXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHRocm93IHdlYmlkbC5lcnJvcnMuY29udmVyc2lvbkZhaWxlZCh7XG4gICAgICBwcmVmaXg6ICdIZWFkZXJzIGNvbnN0cnVjdG9yJyxcbiAgICAgIGFyZ3VtZW50OiAnQXJndW1lbnQgMScsXG4gICAgICB0eXBlczogWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nLCAncmVjb3JkPEJ5dGVTdHJpbmcsIEJ5dGVTdHJpbmc+J11cbiAgICB9KVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1oZWFkZXJzLWFwcGVuZFxuICovXG5mdW5jdGlvbiBhcHBlbmRIZWFkZXIgKGhlYWRlcnMsIG5hbWUsIHZhbHVlKSB7XG4gIC8vIDEuIE5vcm1hbGl6ZSB2YWx1ZS5cbiAgdmFsdWUgPSBoZWFkZXJWYWx1ZU5vcm1hbGl6ZSh2YWx1ZSlcblxuICAvLyAyLiBJZiBuYW1lIGlzIG5vdCBhIGhlYWRlciBuYW1lIG9yIHZhbHVlIGlzIG5vdCBhXG4gIC8vICAgIGhlYWRlciB2YWx1ZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZShuYW1lKSkge1xuICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgIHByZWZpeDogJ0hlYWRlcnMuYXBwZW5kJyxcbiAgICAgIHZhbHVlOiBuYW1lLFxuICAgICAgdHlwZTogJ2hlYWRlciBuYW1lJ1xuICAgIH0pXG4gIH0gZWxzZSBpZiAoIWlzVmFsaWRIZWFkZXJWYWx1ZSh2YWx1ZSkpIHtcbiAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmludmFsaWRBcmd1bWVudCh7XG4gICAgICBwcmVmaXg6ICdIZWFkZXJzLmFwcGVuZCcsXG4gICAgICB2YWx1ZSxcbiAgICAgIHR5cGU6ICdoZWFkZXIgdmFsdWUnXG4gICAgfSlcbiAgfVxuXG4gIC8vIDMuIElmIGhlYWRlcnNcdTIwMTlzIGd1YXJkIGlzIFwiaW1tdXRhYmxlXCIsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gIC8vIDQuIE90aGVyd2lzZSwgaWYgaGVhZGVyc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXF1ZXN0XCIgYW5kIG5hbWUgaXMgYVxuICAvLyAgICBmb3JiaWRkZW4gaGVhZGVyIG5hbWUsIHJldHVybi5cbiAgLy8gTm90ZTogdW5kaWNpIGRvZXMgbm90IGltcGxlbWVudCBmb3JiaWRkZW4gaGVhZGVyIG5hbWVzXG4gIGlmIChoZWFkZXJzW2tHdWFyZF0gPT09ICdpbW11dGFibGUnKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignaW1tdXRhYmxlJylcbiAgfSBlbHNlIGlmIChoZWFkZXJzW2tHdWFyZF0gPT09ICdyZXF1ZXN0LW5vLWNvcnMnKSB7XG4gICAgLy8gNS4gT3RoZXJ3aXNlLCBpZiBoZWFkZXJzXHUyMDE5cyBndWFyZCBpcyBcInJlcXVlc3Qtbm8tY29yc1wiOlxuICAgIC8vIFRPRE9cbiAgfVxuXG4gIC8vIDYuIE90aGVyd2lzZSwgaWYgaGVhZGVyc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXNwb25zZVwiIGFuZCBuYW1lIGlzIGFcbiAgLy8gICAgZm9yYmlkZGVuIHJlc3BvbnNlLWhlYWRlciBuYW1lLCByZXR1cm4uXG5cbiAgLy8gNy4gQXBwZW5kIChuYW1lLCB2YWx1ZSkgdG8gaGVhZGVyc1x1MjAxOXMgaGVhZGVyIGxpc3QuXG4gIHJldHVybiBoZWFkZXJzW2tIZWFkZXJzTGlzdF0uYXBwZW5kKG5hbWUsIHZhbHVlKVxuXG4gIC8vIDguIElmIGhlYWRlcnNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdC1uby1jb3JzXCIsIHRoZW4gcmVtb3ZlXG4gIC8vICAgIHByaXZpbGVnZWQgbm8tQ09SUyByZXF1ZXN0IGhlYWRlcnMgZnJvbSBoZWFkZXJzXG59XG5cbmNsYXNzIEhlYWRlcnNMaXN0IHtcbiAgLyoqIEB0eXBlIHtbc3RyaW5nLCBzdHJpbmddW118bnVsbH0gKi9cbiAgY29va2llcyA9IG51bGxcblxuICBjb25zdHJ1Y3RvciAoaW5pdCkge1xuICAgIGlmIChpbml0IGluc3RhbmNlb2YgSGVhZGVyc0xpc3QpIHtcbiAgICAgIHRoaXNba0hlYWRlcnNNYXBdID0gbmV3IE1hcChpbml0W2tIZWFkZXJzTWFwXSlcbiAgICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gaW5pdFtrSGVhZGVyc1NvcnRlZE1hcF1cbiAgICAgIHRoaXMuY29va2llcyA9IGluaXQuY29va2llcyA9PT0gbnVsbCA/IG51bGwgOiBbLi4uaW5pdC5jb29raWVzXVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tIZWFkZXJzTWFwXSA9IG5ldyBNYXAoaW5pdClcbiAgICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNoZWFkZXItbGlzdC1jb250YWluc1xuICBjb250YWlucyAobmFtZSkge1xuICAgIC8vIEEgaGVhZGVyIGxpc3QgbGlzdCBjb250YWlucyBhIGhlYWRlciBuYW1lIG5hbWUgaWYgbGlzdFxuICAgIC8vIGNvbnRhaW5zIGEgaGVhZGVyIHdob3NlIG5hbWUgaXMgYSBieXRlLWNhc2UtaW5zZW5zaXRpdmVcbiAgICAvLyBtYXRjaCBmb3IgbmFtZS5cbiAgICBuYW1lID0gbmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc01hcF0uaGFzKG5hbWUpXG4gIH1cblxuICBjbGVhciAoKSB7XG4gICAgdGhpc1trSGVhZGVyc01hcF0uY2xlYXIoKVxuICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gbnVsbFxuICAgIHRoaXMuY29va2llcyA9IG51bGxcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWhlYWRlci1saXN0LWFwcGVuZFxuICBhcHBlbmQgKG5hbWUsIHZhbHVlKSB7XG4gICAgdGhpc1trSGVhZGVyc1NvcnRlZE1hcF0gPSBudWxsXG5cbiAgICAvLyAxLiBJZiBsaXN0IGNvbnRhaW5zIG5hbWUsIHRoZW4gc2V0IG5hbWUgdG8gdGhlIGZpcnN0IHN1Y2hcbiAgICAvLyAgICBoZWFkZXJcdTIwMTlzIG5hbWUuXG4gICAgY29uc3QgbG93ZXJjYXNlTmFtZSA9IG5hbWUudG9Mb3dlckNhc2UoKVxuICAgIGNvbnN0IGV4aXN0cyA9IHRoaXNba0hlYWRlcnNNYXBdLmdldChsb3dlcmNhc2VOYW1lKVxuXG4gICAgLy8gMi4gQXBwZW5kIChuYW1lLCB2YWx1ZSkgdG8gbGlzdC5cbiAgICBpZiAoZXhpc3RzKSB7XG4gICAgICBjb25zdCBkZWxpbWl0ZXIgPSBsb3dlcmNhc2VOYW1lID09PSAnY29va2llJyA/ICc7ICcgOiAnLCAnXG4gICAgICB0aGlzW2tIZWFkZXJzTWFwXS5zZXQobG93ZXJjYXNlTmFtZSwge1xuICAgICAgICBuYW1lOiBleGlzdHMubmFtZSxcbiAgICAgICAgdmFsdWU6IGAke2V4aXN0cy52YWx1ZX0ke2RlbGltaXRlcn0ke3ZhbHVlfWBcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXNba0hlYWRlcnNNYXBdLnNldChsb3dlcmNhc2VOYW1lLCB7IG5hbWUsIHZhbHVlIH0pXG4gICAgfVxuXG4gICAgaWYgKGxvd2VyY2FzZU5hbWUgPT09ICdzZXQtY29va2llJykge1xuICAgICAgdGhpcy5jb29raWVzID8/PSBbXVxuICAgICAgdGhpcy5jb29raWVzLnB1c2godmFsdWUpXG4gICAgfVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3Qtc2V0XG4gIHNldCAobmFtZSwgdmFsdWUpIHtcbiAgICB0aGlzW2tIZWFkZXJzU29ydGVkTWFwXSA9IG51bGxcbiAgICBjb25zdCBsb3dlcmNhc2VOYW1lID0gbmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgICBpZiAobG93ZXJjYXNlTmFtZSA9PT0gJ3NldC1jb29raWUnKSB7XG4gICAgICB0aGlzLmNvb2tpZXMgPSBbdmFsdWVdXG4gICAgfVxuXG4gICAgLy8gMS4gSWYgbGlzdCBjb250YWlucyBuYW1lLCB0aGVuIHNldCB0aGUgdmFsdWUgb2ZcbiAgICAvLyAgICB0aGUgZmlyc3Qgc3VjaCBoZWFkZXIgdG8gdmFsdWUgYW5kIHJlbW92ZSB0aGVcbiAgICAvLyAgICBvdGhlcnMuXG4gICAgLy8gMi4gT3RoZXJ3aXNlLCBhcHBlbmQgaGVhZGVyIChuYW1lLCB2YWx1ZSkgdG8gbGlzdC5cbiAgICB0aGlzW2tIZWFkZXJzTWFwXS5zZXQobG93ZXJjYXNlTmFtZSwgeyBuYW1lLCB2YWx1ZSB9KVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3QtZGVsZXRlXG4gIGRlbGV0ZSAobmFtZSkge1xuICAgIHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdID0gbnVsbFxuXG4gICAgbmFtZSA9IG5hbWUudG9Mb3dlckNhc2UoKVxuXG4gICAgaWYgKG5hbWUgPT09ICdzZXQtY29va2llJykge1xuICAgICAgdGhpcy5jb29raWVzID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXNba0hlYWRlcnNNYXBdLmRlbGV0ZShuYW1lKVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3QtZ2V0XG4gIGdldCAobmFtZSkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpc1trSGVhZGVyc01hcF0uZ2V0KG5hbWUudG9Mb3dlckNhc2UoKSlcblxuICAgIC8vIDEuIElmIGxpc3QgZG9lcyBub3QgY29udGFpbiBuYW1lLCB0aGVuIHJldHVybiBudWxsLlxuICAgIC8vIDIuIFJldHVybiB0aGUgdmFsdWVzIG9mIGFsbCBoZWFkZXJzIGluIGxpc3Qgd2hvc2UgbmFtZVxuICAgIC8vICAgIGlzIGEgYnl0ZS1jYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciBuYW1lLFxuICAgIC8vICAgIHNlcGFyYXRlZCBmcm9tIGVhY2ggb3RoZXIgYnkgMHgyQyAweDIwLCBpbiBvcmRlci5cbiAgICByZXR1cm4gdmFsdWUgPT09IHVuZGVmaW5lZCA/IG51bGwgOiB2YWx1ZS52YWx1ZVxuICB9XG5cbiAgKiBbU3ltYm9sLml0ZXJhdG9yXSAoKSB7XG4gICAgLy8gdXNlIHRoZSBsb3dlcmNhc2VkIG5hbWVcbiAgICBmb3IgKGNvbnN0IFtuYW1lLCB7IHZhbHVlIH1dIG9mIHRoaXNba0hlYWRlcnNNYXBdKSB7XG4gICAgICB5aWVsZCBbbmFtZSwgdmFsdWVdXG4gICAgfVxuICB9XG5cbiAgZ2V0IGVudHJpZXMgKCkge1xuICAgIGNvbnN0IGhlYWRlcnMgPSB7fVxuXG4gICAgaWYgKHRoaXNba0hlYWRlcnNNYXBdLnNpemUpIHtcbiAgICAgIGZvciAoY29uc3QgeyBuYW1lLCB2YWx1ZSB9IG9mIHRoaXNba0hlYWRlcnNNYXBdLnZhbHVlcygpKSB7XG4gICAgICAgIGhlYWRlcnNbbmFtZV0gPSB2YWx1ZVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBoZWFkZXJzXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2hlYWRlcnMtY2xhc3NcbmNsYXNzIEhlYWRlcnMge1xuICBjb25zdHJ1Y3RvciAoaW5pdCA9IHVuZGVmaW5lZCkge1xuICAgIGlmIChpbml0ID09PSBrQ29uc3RydWN0KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpc1trSGVhZGVyc0xpc3RdID0gbmV3IEhlYWRlcnNMaXN0KClcblxuICAgIC8vIFRoZSBuZXcgSGVhZGVycyhpbml0KSBjb25zdHJ1Y3RvciBzdGVwcyBhcmU6XG5cbiAgICAvLyAxLiBTZXQgdGhpc1x1MjAxOXMgZ3VhcmQgdG8gXCJub25lXCIuXG4gICAgdGhpc1trR3VhcmRdID0gJ25vbmUnXG5cbiAgICAvLyAyLiBJZiBpbml0IGlzIGdpdmVuLCB0aGVuIGZpbGwgdGhpcyB3aXRoIGluaXQuXG4gICAgaWYgKGluaXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaW5pdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLkhlYWRlcnNJbml0KGluaXQpXG4gICAgICBmaWxsKHRoaXMsIGluaXQpXG4gICAgfVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1oZWFkZXJzLWFwcGVuZFxuICBhcHBlbmQgKG5hbWUsIHZhbHVlKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdIZWFkZXJzLmFwcGVuZCcgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKG5hbWUpXG4gICAgdmFsdWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKHZhbHVlKVxuXG4gICAgcmV0dXJuIGFwcGVuZEhlYWRlcih0aGlzLCBuYW1lLCB2YWx1ZSlcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20taGVhZGVycy1kZWxldGVcbiAgZGVsZXRlIChuYW1lKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdIZWFkZXJzLmRlbGV0ZScgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKG5hbWUpXG5cbiAgICAvLyAxLiBJZiBuYW1lIGlzIG5vdCBhIGhlYWRlciBuYW1lLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICghaXNWYWxpZEhlYWRlck5hbWUobmFtZSkpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgICAgcHJlZml4OiAnSGVhZGVycy5kZWxldGUnLFxuICAgICAgICB2YWx1ZTogbmFtZSxcbiAgICAgICAgdHlwZTogJ2hlYWRlciBuYW1lJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBJZiB0aGlzXHUyMDE5cyBndWFyZCBpcyBcImltbXV0YWJsZVwiLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgIC8vIDMuIE90aGVyd2lzZSwgaWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXF1ZXN0XCIgYW5kIG5hbWUgaXMgYVxuICAgIC8vICAgIGZvcmJpZGRlbiBoZWFkZXIgbmFtZSwgcmV0dXJuLlxuICAgIC8vIDQuIE90aGVyd2lzZSwgaWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXF1ZXN0LW5vLWNvcnNcIiwgbmFtZVxuICAgIC8vICAgIGlzIG5vdCBhIG5vLUNPUlMtc2FmZWxpc3RlZCByZXF1ZXN0LWhlYWRlciBuYW1lLCBhbmRcbiAgICAvLyAgICBuYW1lIGlzIG5vdCBhIHByaXZpbGVnZWQgbm8tQ09SUyByZXF1ZXN0LWhlYWRlciBuYW1lLFxuICAgIC8vICAgIHJldHVybi5cbiAgICAvLyA1LiBPdGhlcndpc2UsIGlmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVzcG9uc2VcIiBhbmQgbmFtZSBpc1xuICAgIC8vICAgIGEgZm9yYmlkZGVuIHJlc3BvbnNlLWhlYWRlciBuYW1lLCByZXR1cm4uXG4gICAgLy8gTm90ZTogdW5kaWNpIGRvZXMgbm90IGltcGxlbWVudCBmb3JiaWRkZW4gaGVhZGVyIG5hbWVzXG4gICAgaWYgKHRoaXNba0d1YXJkXSA9PT0gJ2ltbXV0YWJsZScpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ltbXV0YWJsZScpXG4gICAgfSBlbHNlIGlmICh0aGlzW2tHdWFyZF0gPT09ICdyZXF1ZXN0LW5vLWNvcnMnKSB7XG4gICAgICAvLyBUT0RPXG4gICAgfVxuXG4gICAgLy8gNi4gSWYgdGhpc1x1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBuYW1lLCB0aGVuXG4gICAgLy8gICAgcmV0dXJuLlxuICAgIGlmICghdGhpc1trSGVhZGVyc0xpc3RdLmNvbnRhaW5zKG5hbWUpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyA3LiBEZWxldGUgbmFtZSBmcm9tIHRoaXNcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgIC8vIDguIElmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdC1uby1jb3JzXCIsIHRoZW4gcmVtb3ZlXG4gICAgLy8gICAgcHJpdmlsZWdlZCBuby1DT1JTIHJlcXVlc3QgaGVhZGVycyBmcm9tIHRoaXMuXG4gICAgdGhpc1trSGVhZGVyc0xpc3RdLmRlbGV0ZShuYW1lKVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1oZWFkZXJzLWdldFxuICBnZXQgKG5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0hlYWRlcnMuZ2V0JyB9KVxuXG4gICAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJ5dGVTdHJpbmcobmFtZSlcblxuICAgIC8vIDEuIElmIG5hbWUgaXMgbm90IGEgaGVhZGVyIG5hbWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZShuYW1lKSkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5pbnZhbGlkQXJndW1lbnQoe1xuICAgICAgICBwcmVmaXg6ICdIZWFkZXJzLmdldCcsXG4gICAgICAgIHZhbHVlOiBuYW1lLFxuICAgICAgICB0eXBlOiAnaGVhZGVyIG5hbWUnXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIDIuIFJldHVybiB0aGUgcmVzdWx0IG9mIGdldHRpbmcgbmFtZSBmcm9tIHRoaXNcdTIwMTlzIGhlYWRlclxuICAgIC8vICAgIGxpc3QuXG4gICAgcmV0dXJuIHRoaXNba0hlYWRlcnNMaXN0XS5nZXQobmFtZSlcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20taGVhZGVycy1oYXNcbiAgaGFzIChuYW1lKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdIZWFkZXJzLmhhcycgfSlcblxuICAgIG5hbWUgPSB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nKG5hbWUpXG5cbiAgICAvLyAxLiBJZiBuYW1lIGlzIG5vdCBhIGhlYWRlciBuYW1lLCB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgIGlmICghaXNWYWxpZEhlYWRlck5hbWUobmFtZSkpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgICAgcHJlZml4OiAnSGVhZGVycy5oYXMnLFxuICAgICAgICB2YWx1ZTogbmFtZSxcbiAgICAgICAgdHlwZTogJ2hlYWRlciBuYW1lJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyAyLiBSZXR1cm4gdHJ1ZSBpZiB0aGlzXHUyMDE5cyBoZWFkZXIgbGlzdCBjb250YWlucyBuYW1lO1xuICAgIC8vICAgIG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc0xpc3RdLmNvbnRhaW5zKG5hbWUpXG4gIH1cblxuICAvLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZG9tLWhlYWRlcnMtc2V0XG4gIHNldCAobmFtZSwgdmFsdWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAyLCB7IGhlYWRlcjogJ0hlYWRlcnMuc2V0JyB9KVxuXG4gICAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJ5dGVTdHJpbmcobmFtZSlcbiAgICB2YWx1ZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJ5dGVTdHJpbmcodmFsdWUpXG5cbiAgICAvLyAxLiBOb3JtYWxpemUgdmFsdWUuXG4gICAgdmFsdWUgPSBoZWFkZXJWYWx1ZU5vcm1hbGl6ZSh2YWx1ZSlcblxuICAgIC8vIDIuIElmIG5hbWUgaXMgbm90IGEgaGVhZGVyIG5hbWUgb3IgdmFsdWUgaXMgbm90IGFcbiAgICAvLyAgICBoZWFkZXIgdmFsdWUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZShuYW1lKSkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5pbnZhbGlkQXJndW1lbnQoe1xuICAgICAgICBwcmVmaXg6ICdIZWFkZXJzLnNldCcsXG4gICAgICAgIHZhbHVlOiBuYW1lLFxuICAgICAgICB0eXBlOiAnaGVhZGVyIG5hbWUnXG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAoIWlzVmFsaWRIZWFkZXJWYWx1ZSh2YWx1ZSkpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuaW52YWxpZEFyZ3VtZW50KHtcbiAgICAgICAgcHJlZml4OiAnSGVhZGVycy5zZXQnLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgdHlwZTogJ2hlYWRlciB2YWx1ZSdcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMy4gSWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJpbW11dGFibGVcIiwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAvLyA0LiBPdGhlcndpc2UsIGlmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdFwiIGFuZCBuYW1lIGlzIGFcbiAgICAvLyAgICBmb3JiaWRkZW4gaGVhZGVyIG5hbWUsIHJldHVybi5cbiAgICAvLyA1LiBPdGhlcndpc2UsIGlmIHRoaXNcdTIwMTlzIGd1YXJkIGlzIFwicmVxdWVzdC1uby1jb3JzXCIgYW5kXG4gICAgLy8gICAgbmFtZS92YWx1ZSBpcyBub3QgYSBuby1DT1JTLXNhZmVsaXN0ZWQgcmVxdWVzdC1oZWFkZXIsXG4gICAgLy8gICAgcmV0dXJuLlxuICAgIC8vIDYuIE90aGVyd2lzZSwgaWYgdGhpc1x1MjAxOXMgZ3VhcmQgaXMgXCJyZXNwb25zZVwiIGFuZCBuYW1lIGlzIGFcbiAgICAvLyAgICBmb3JiaWRkZW4gcmVzcG9uc2UtaGVhZGVyIG5hbWUsIHJldHVybi5cbiAgICAvLyBOb3RlOiB1bmRpY2kgZG9lcyBub3QgaW1wbGVtZW50IGZvcmJpZGRlbiBoZWFkZXIgbmFtZXNcbiAgICBpZiAodGhpc1trR3VhcmRdID09PSAnaW1tdXRhYmxlJykge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignaW1tdXRhYmxlJylcbiAgICB9IGVsc2UgaWYgKHRoaXNba0d1YXJkXSA9PT0gJ3JlcXVlc3Qtbm8tY29ycycpIHtcbiAgICAgIC8vIFRPRE9cbiAgICB9XG5cbiAgICAvLyA3LiBTZXQgKG5hbWUsIHZhbHVlKSBpbiB0aGlzXHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICAvLyA4LiBJZiB0aGlzXHUyMDE5cyBndWFyZCBpcyBcInJlcXVlc3Qtbm8tY29yc1wiLCB0aGVuIHJlbW92ZVxuICAgIC8vICAgIHByaXZpbGVnZWQgbm8tQ09SUyByZXF1ZXN0IGhlYWRlcnMgZnJvbSB0aGlzXG4gICAgdGhpc1trSGVhZGVyc0xpc3RdLnNldChuYW1lLCB2YWx1ZSlcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20taGVhZGVycy1nZXRzZXRjb29raWVcbiAgZ2V0U2V0Q29va2llICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgLy8gMS4gSWYgdGhpc1x1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBgU2V0LUNvb2tpZWAsIHRoZW4gcmV0dXJuIFx1MDBBQiBcdTAwQkIuXG4gICAgLy8gMi4gUmV0dXJuIHRoZSB2YWx1ZXMgb2YgYWxsIGhlYWRlcnMgaW4gdGhpc1x1MjAxOXMgaGVhZGVyIGxpc3Qgd2hvc2UgbmFtZSBpc1xuICAgIC8vICAgIGEgYnl0ZS1jYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciBgU2V0LUNvb2tpZWAsIGluIG9yZGVyLlxuXG4gICAgY29uc3QgbGlzdCA9IHRoaXNba0hlYWRlcnNMaXN0XS5jb29raWVzXG5cbiAgICBpZiAobGlzdCkge1xuICAgICAgcmV0dXJuIFsuLi5saXN0XVxuICAgIH1cblxuICAgIHJldHVybiBbXVxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtaGVhZGVyLWxpc3Qtc29ydC1hbmQtY29tYmluZVxuICBnZXQgW2tIZWFkZXJzU29ydGVkTWFwXSAoKSB7XG4gICAgaWYgKHRoaXNba0hlYWRlcnNMaXN0XVtrSGVhZGVyc1NvcnRlZE1hcF0pIHtcbiAgICAgIHJldHVybiB0aGlzW2tIZWFkZXJzTGlzdF1ba0hlYWRlcnNTb3J0ZWRNYXBdXG4gICAgfVxuXG4gICAgLy8gMS4gTGV0IGhlYWRlcnMgYmUgYW4gZW1wdHkgbGlzdCBvZiBoZWFkZXJzIHdpdGggdGhlIGtleSBiZWluZyB0aGUgbmFtZVxuICAgIC8vICAgIGFuZCB2YWx1ZSB0aGUgdmFsdWUuXG4gICAgY29uc3QgaGVhZGVycyA9IFtdXG5cbiAgICAvLyAyLiBMZXQgbmFtZXMgYmUgdGhlIHJlc3VsdCBvZiBjb252ZXJ0IGhlYWRlciBuYW1lcyB0byBhIHNvcnRlZC1sb3dlcmNhc2VcbiAgICAvLyAgICBzZXQgd2l0aCBhbGwgdGhlIG5hbWVzIG9mIHRoZSBoZWFkZXJzIGluIGxpc3QuXG4gICAgY29uc3QgbmFtZXMgPSBbLi4udGhpc1trSGVhZGVyc0xpc3RdXS5zb3J0KChhLCBiKSA9PiBhWzBdIDwgYlswXSA/IC0xIDogMSlcbiAgICBjb25zdCBjb29raWVzID0gdGhpc1trSGVhZGVyc0xpc3RdLmNvb2tpZXNcblxuICAgIC8vIDMuIEZvciBlYWNoIG5hbWUgb2YgbmFtZXM6XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuYW1lcy5sZW5ndGg7ICsraSkge1xuICAgICAgY29uc3QgW25hbWUsIHZhbHVlXSA9IG5hbWVzW2ldXG4gICAgICAvLyAxLiBJZiBuYW1lIGlzIGBzZXQtY29va2llYCwgdGhlbjpcbiAgICAgIGlmIChuYW1lID09PSAnc2V0LWNvb2tpZScpIHtcbiAgICAgICAgLy8gMS4gTGV0IHZhbHVlcyBiZSBhIGxpc3Qgb2YgYWxsIHZhbHVlcyBvZiBoZWFkZXJzIGluIGxpc3Qgd2hvc2UgbmFtZVxuICAgICAgICAvLyAgICBpcyBhIGJ5dGUtY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3IgbmFtZSwgaW4gb3JkZXIuXG5cbiAgICAgICAgLy8gMi4gRm9yIGVhY2ggdmFsdWUgb2YgdmFsdWVzOlxuICAgICAgICAvLyAxLiBBcHBlbmQgKG5hbWUsIHZhbHVlKSB0byBoZWFkZXJzLlxuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGNvb2tpZXMubGVuZ3RoOyArK2opIHtcbiAgICAgICAgICBoZWFkZXJzLnB1c2goW25hbWUsIGNvb2tpZXNbal1dKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyAyLiBPdGhlcndpc2U6XG5cbiAgICAgICAgLy8gMS4gTGV0IHZhbHVlIGJlIHRoZSByZXN1bHQgb2YgZ2V0dGluZyBuYW1lIGZyb20gbGlzdC5cblxuICAgICAgICAvLyAyLiBBc3NlcnQ6IHZhbHVlIGlzIG5vbi1udWxsLlxuICAgICAgICBhc3NlcnQodmFsdWUgIT09IG51bGwpXG5cbiAgICAgICAgLy8gMy4gQXBwZW5kIChuYW1lLCB2YWx1ZSkgdG8gaGVhZGVycy5cbiAgICAgICAgaGVhZGVycy5wdXNoKFtuYW1lLCB2YWx1ZV0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpc1trSGVhZGVyc0xpc3RdW2tIZWFkZXJzU29ydGVkTWFwXSA9IGhlYWRlcnNcblxuICAgIC8vIDQuIFJldHVybiBoZWFkZXJzLlxuICAgIHJldHVybiBoZWFkZXJzXG4gIH1cblxuICBrZXlzICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBIZWFkZXJzKVxuXG4gICAgaWYgKHRoaXNba0d1YXJkXSA9PT0gJ2ltbXV0YWJsZScpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpc1trSGVhZGVyc1NvcnRlZE1hcF1cbiAgICAgIHJldHVybiBtYWtlSXRlcmF0b3IoKCkgPT4gdmFsdWUsICdIZWFkZXJzJyxcbiAgICAgICAgJ2tleScpXG4gICAgfVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IFsuLi50aGlzW2tIZWFkZXJzU29ydGVkTWFwXS52YWx1ZXMoKV0sXG4gICAgICAnSGVhZGVycycsXG4gICAgICAna2V5J1xuICAgIClcbiAgfVxuXG4gIHZhbHVlcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIGlmICh0aGlzW2tHdWFyZF0gPT09ICdpbW11dGFibGUnKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdXG4gICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKCgpID0+IHZhbHVlLCAnSGVhZGVycycsXG4gICAgICAgICd2YWx1ZScpXG4gICAgfVxuXG4gICAgcmV0dXJuIG1ha2VJdGVyYXRvcihcbiAgICAgICgpID0+IFsuLi50aGlzW2tIZWFkZXJzU29ydGVkTWFwXS52YWx1ZXMoKV0sXG4gICAgICAnSGVhZGVycycsXG4gICAgICAndmFsdWUnXG4gICAgKVxuICB9XG5cbiAgZW50cmllcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgSGVhZGVycylcblxuICAgIGlmICh0aGlzW2tHdWFyZF0gPT09ICdpbW11dGFibGUnKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXNba0hlYWRlcnNTb3J0ZWRNYXBdXG4gICAgICByZXR1cm4gbWFrZUl0ZXJhdG9yKCgpID0+IHZhbHVlLCAnSGVhZGVycycsXG4gICAgICAgICdrZXkrdmFsdWUnKVxuICAgIH1cblxuICAgIHJldHVybiBtYWtlSXRlcmF0b3IoXG4gICAgICAoKSA9PiBbLi4udGhpc1trSGVhZGVyc1NvcnRlZE1hcF0udmFsdWVzKCldLFxuICAgICAgJ0hlYWRlcnMnLFxuICAgICAgJ2tleSt2YWx1ZSdcbiAgICApXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHsodmFsdWU6IHN0cmluZywga2V5OiBzdHJpbmcsIHNlbGY6IEhlYWRlcnMpID0+IHZvaWR9IGNhbGxiYWNrRm5cbiAgICogQHBhcmFtIHt1bmtub3dufSB0aGlzQXJnXG4gICAqL1xuICBmb3JFYWNoIChjYWxsYmFja0ZuLCB0aGlzQXJnID0gZ2xvYmFsVGhpcykge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEhlYWRlcnMpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnSGVhZGVycy5mb3JFYWNoJyB9KVxuXG4gICAgaWYgKHR5cGVvZiBjYWxsYmFja0ZuICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICBcIkZhaWxlZCB0byBleGVjdXRlICdmb3JFYWNoJyBvbiAnSGVhZGVycyc6IHBhcmFtZXRlciAxIGlzIG5vdCBvZiB0eXBlICdGdW5jdGlvbicuXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiB0aGlzKSB7XG4gICAgICBjYWxsYmFja0ZuLmFwcGx5KHRoaXNBcmcsIFt2YWx1ZSwga2V5LCB0aGlzXSlcbiAgICB9XG4gIH1cblxuICBbU3ltYm9sLmZvcignbm9kZWpzLnV0aWwuaW5zcGVjdC5jdXN0b20nKV0gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEhlYWRlcnMpXG5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc0xpc3RdXG4gIH1cbn1cblxuSGVhZGVycy5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXSA9IEhlYWRlcnMucHJvdG90eXBlLmVudHJpZXNcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoSGVhZGVycy5wcm90b3R5cGUsIHtcbiAgYXBwZW5kOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBkZWxldGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGdldDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgaGFzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBzZXQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGdldFNldENvb2tpZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAga2V5czoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgdmFsdWVzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBlbnRyaWVzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBmb3JFYWNoOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBbU3ltYm9sLml0ZXJhdG9yXTogeyBlbnVtZXJhYmxlOiBmYWxzZSB9LFxuICBbU3ltYm9sLnRvU3RyaW5nVGFnXToge1xuICAgIHZhbHVlOiAnSGVhZGVycycsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH0sXG4gIFt1dGlsLmluc3BlY3QuY3VzdG9tXToge1xuICAgIGVudW1lcmFibGU6IGZhbHNlXG4gIH1cbn0pXG5cbndlYmlkbC5jb252ZXJ0ZXJzLkhlYWRlcnNJbml0ID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgPT09ICdPYmplY3QnKSB7XG4gICAgaWYgKFZbU3ltYm9sLml0ZXJhdG9yXSkge1xuICAgICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nXShWKVxuICAgIH1cblxuICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVyc1sncmVjb3JkPEJ5dGVTdHJpbmcsIEJ5dGVTdHJpbmc+J10oVilcbiAgfVxuXG4gIHRocm93IHdlYmlkbC5lcnJvcnMuY29udmVyc2lvbkZhaWxlZCh7XG4gICAgcHJlZml4OiAnSGVhZGVycyBjb25zdHJ1Y3RvcicsXG4gICAgYXJndW1lbnQ6ICdBcmd1bWVudCAxJyxcbiAgICB0eXBlczogWydzZXF1ZW5jZTxzZXF1ZW5jZTxCeXRlU3RyaW5nPj4nLCAncmVjb3JkPEJ5dGVTdHJpbmcsIEJ5dGVTdHJpbmc+J11cbiAgfSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGZpbGwsXG4gIEhlYWRlcnMsXG4gIEhlYWRlcnNMaXN0XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgSGVhZGVycywgSGVhZGVyc0xpc3QsIGZpbGwgfSA9IHJlcXVpcmUoJy4vaGVhZGVycycpXG5jb25zdCB7IGV4dHJhY3RCb2R5LCBjbG9uZUJvZHksIG1peGluQm9keSB9ID0gcmVxdWlyZSgnLi9ib2R5JylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBrRW51bWVyYWJsZVByb3BlcnR5IH0gPSB1dGlsXG5jb25zdCB7XG4gIGlzVmFsaWRSZWFzb25QaHJhc2UsXG4gIGlzQ2FuY2VsbGVkLFxuICBpc0Fib3J0ZWQsXG4gIGlzQmxvYkxpa2UsXG4gIHNlcmlhbGl6ZUphdmFzY3JpcHRWYWx1ZVRvSlNPTlN0cmluZyxcbiAgaXNFcnJvckxpa2UsXG4gIGlzb21vcnBoaWNFbmNvZGVcbn0gPSByZXF1aXJlKCcuL3V0aWwnKVxuY29uc3Qge1xuICByZWRpcmVjdFN0YXR1c1NldCxcbiAgbnVsbEJvZHlTdGF0dXMsXG4gIERPTUV4Y2VwdGlvblxufSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsga1N0YXRlLCBrSGVhZGVycywga0d1YXJkLCBrUmVhbG0gfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi93ZWJpZGwnKVxuY29uc3QgeyBGb3JtRGF0YSB9ID0gcmVxdWlyZSgnLi9mb3JtZGF0YScpXG5jb25zdCB7IGdldEdsb2JhbE9yaWdpbiB9ID0gcmVxdWlyZSgnLi9nbG9iYWwnKVxuY29uc3QgeyBVUkxTZXJpYWxpemVyIH0gPSByZXF1aXJlKCcuL2RhdGFVUkwnKVxuY29uc3QgeyBrSGVhZGVyc0xpc3QsIGtDb25zdHJ1Y3QgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyB0eXBlcyB9ID0gcmVxdWlyZSgndXRpbCcpXG5cbmNvbnN0IFJlYWRhYmxlU3RyZWFtID0gZ2xvYmFsVGhpcy5SZWFkYWJsZVN0cmVhbSB8fCByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbmNvbnN0IHRleHRFbmNvZGVyID0gbmV3IFRleHRFbmNvZGVyKCd1dGYtOCcpXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXNwb25zZS1jbGFzc1xuY2xhc3MgUmVzcG9uc2Uge1xuICAvLyBDcmVhdGVzIG5ldHdvcmsgZXJyb3IgUmVzcG9uc2UuXG4gIHN0YXRpYyBlcnJvciAoKSB7XG4gICAgLy8gVE9ET1xuICAgIGNvbnN0IHJlbGV2YW50UmVhbG0gPSB7IHNldHRpbmdzT2JqZWN0OiB7fSB9XG5cbiAgICAvLyBUaGUgc3RhdGljIGVycm9yKCkgbWV0aG9kIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhXG4gICAgLy8gUmVzcG9uc2Ugb2JqZWN0LCBnaXZlbiBhIG5ldyBuZXR3b3JrIGVycm9yLCBcImltbXV0YWJsZVwiLCBhbmQgdGhpc1x1MjAxOXNcbiAgICAvLyByZWxldmFudCBSZWFsbS5cbiAgICBjb25zdCByZXNwb25zZU9iamVjdCA9IG5ldyBSZXNwb25zZSgpXG4gICAgcmVzcG9uc2VPYmplY3Rba1N0YXRlXSA9IG1ha2VOZXR3b3JrRXJyb3IoKVxuICAgIHJlc3BvbnNlT2JqZWN0W2tSZWFsbV0gPSByZWxldmFudFJlYWxtXG4gICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tIZWFkZXJzTGlzdF0gPSByZXNwb25zZU9iamVjdFtrU3RhdGVdLmhlYWRlcnNMaXN0XG4gICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tHdWFyZF0gPSAnaW1tdXRhYmxlJ1xuICAgIHJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrUmVhbG1dID0gcmVsZXZhbnRSZWFsbVxuICAgIHJldHVybiByZXNwb25zZU9iamVjdFxuICB9XG5cbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1yZXNwb25zZS1qc29uXG4gIHN0YXRpYyBqc29uIChkYXRhLCBpbml0ID0ge30pIHtcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnUmVzcG9uc2UuanNvbicgfSlcblxuICAgIGlmIChpbml0ICE9PSBudWxsKSB7XG4gICAgICBpbml0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVzcG9uc2VJbml0KGluaXQpXG4gICAgfVxuXG4gICAgLy8gMS4gTGV0IGJ5dGVzIHRoZSByZXN1bHQgb2YgcnVubmluZyBzZXJpYWxpemUgYSBKYXZhU2NyaXB0IHZhbHVlIHRvIEpTT04gYnl0ZXMgb24gZGF0YS5cbiAgICBjb25zdCBieXRlcyA9IHRleHRFbmNvZGVyLmVuY29kZShcbiAgICAgIHNlcmlhbGl6ZUphdmFzY3JpcHRWYWx1ZVRvSlNPTlN0cmluZyhkYXRhKVxuICAgIClcblxuICAgIC8vIDIuIExldCBib2R5IGJlIHRoZSByZXN1bHQgb2YgZXh0cmFjdGluZyBieXRlcy5cbiAgICBjb25zdCBib2R5ID0gZXh0cmFjdEJvZHkoYnl0ZXMpXG5cbiAgICAvLyAzLiBMZXQgcmVzcG9uc2VPYmplY3QgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIFJlc3BvbnNlIG9iamVjdCwgZ2l2ZW4gYSBuZXcgcmVzcG9uc2UsXG4gICAgLy8gICAgXCJyZXNwb25zZVwiLCBhbmQgdGhpc1x1MjAxOXMgcmVsZXZhbnQgUmVhbG0uXG4gICAgY29uc3QgcmVsZXZhbnRSZWFsbSA9IHsgc2V0dGluZ3NPYmplY3Q6IHt9IH1cbiAgICBjb25zdCByZXNwb25zZU9iamVjdCA9IG5ldyBSZXNwb25zZSgpXG4gICAgcmVzcG9uc2VPYmplY3Rba1JlYWxtXSA9IHJlbGV2YW50UmVhbG1cbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba0d1YXJkXSA9ICdyZXNwb25zZSdcbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba1JlYWxtXSA9IHJlbGV2YW50UmVhbG1cblxuICAgIC8vIDQuIFBlcmZvcm0gaW5pdGlhbGl6ZSBhIHJlc3BvbnNlIGdpdmVuIHJlc3BvbnNlT2JqZWN0LCBpbml0LCBhbmQgKGJvZHksIFwiYXBwbGljYXRpb24vanNvblwiKS5cbiAgICBpbml0aWFsaXplUmVzcG9uc2UocmVzcG9uc2VPYmplY3QsIGluaXQsIHsgYm9keTogYm9keVswXSwgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nIH0pXG5cbiAgICAvLyA1LiBSZXR1cm4gcmVzcG9uc2VPYmplY3QuXG4gICAgcmV0dXJuIHJlc3BvbnNlT2JqZWN0XG4gIH1cblxuICAvLyBDcmVhdGVzIGEgcmVkaXJlY3QgUmVzcG9uc2UgdGhhdCByZWRpcmVjdHMgdG8gdXJsIHdpdGggc3RhdHVzIHN0YXR1cy5cbiAgc3RhdGljIHJlZGlyZWN0ICh1cmwsIHN0YXR1cyA9IDMwMikge1xuICAgIGNvbnN0IHJlbGV2YW50UmVhbG0gPSB7IHNldHRpbmdzT2JqZWN0OiB7fSB9XG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnUmVzcG9uc2UucmVkaXJlY3QnIH0pXG5cbiAgICB1cmwgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcodXJsKVxuICAgIHN0YXR1cyA9IHdlYmlkbC5jb252ZXJ0ZXJzWyd1bnNpZ25lZCBzaG9ydCddKHN0YXR1cylcblxuICAgIC8vIDEuIExldCBwYXJzZWRVUkwgYmUgdGhlIHJlc3VsdCBvZiBwYXJzaW5nIHVybCB3aXRoIGN1cnJlbnQgc2V0dGluZ3NcbiAgICAvLyBvYmplY3RcdTIwMTlzIEFQSSBiYXNlIFVSTC5cbiAgICAvLyAyLiBJZiBwYXJzZWRVUkwgaXMgZmFpbHVyZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAvLyBUT0RPOiBiYXNlLVVSTD9cbiAgICBsZXQgcGFyc2VkVVJMXG4gICAgdHJ5IHtcbiAgICAgIHBhcnNlZFVSTCA9IG5ldyBVUkwodXJsLCBnZXRHbG9iYWxPcmlnaW4oKSlcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRocm93IE9iamVjdC5hc3NpZ24obmV3IFR5cGVFcnJvcignRmFpbGVkIHRvIHBhcnNlIFVSTCBmcm9tICcgKyB1cmwpLCB7XG4gICAgICAgIGNhdXNlOiBlcnJcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMy4gSWYgc3RhdHVzIGlzIG5vdCBhIHJlZGlyZWN0IHN0YXR1cywgdGhlbiB0aHJvdyBhIFJhbmdlRXJyb3IuXG4gICAgaWYgKCFyZWRpcmVjdFN0YXR1c1NldC5oYXMoc3RhdHVzKSkge1xuICAgICAgdGhyb3cgbmV3IFJhbmdlRXJyb3IoJ0ludmFsaWQgc3RhdHVzIGNvZGUgJyArIHN0YXR1cylcbiAgICB9XG5cbiAgICAvLyA0LiBMZXQgcmVzcG9uc2VPYmplY3QgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIFJlc3BvbnNlIG9iamVjdCxcbiAgICAvLyBnaXZlbiBhIG5ldyByZXNwb25zZSwgXCJpbW11dGFibGVcIiwgYW5kIHRoaXNcdTIwMTlzIHJlbGV2YW50IFJlYWxtLlxuICAgIGNvbnN0IHJlc3BvbnNlT2JqZWN0ID0gbmV3IFJlc3BvbnNlKClcbiAgICByZXNwb25zZU9iamVjdFtrUmVhbG1dID0gcmVsZXZhbnRSZWFsbVxuICAgIHJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrR3VhcmRdID0gJ2ltbXV0YWJsZSdcbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba1JlYWxtXSA9IHJlbGV2YW50UmVhbG1cblxuICAgIC8vIDUuIFNldCByZXNwb25zZU9iamVjdFx1MjAxOXMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyB0byBzdGF0dXMuXG4gICAgcmVzcG9uc2VPYmplY3Rba1N0YXRlXS5zdGF0dXMgPSBzdGF0dXNcblxuICAgIC8vIDYuIExldCB2YWx1ZSBiZSBwYXJzZWRVUkwsIHNlcmlhbGl6ZWQgYW5kIGlzb21vcnBoaWMgZW5jb2RlZC5cbiAgICBjb25zdCB2YWx1ZSA9IGlzb21vcnBoaWNFbmNvZGUoVVJMU2VyaWFsaXplcihwYXJzZWRVUkwpKVxuXG4gICAgLy8gNy4gQXBwZW5kIGBMb2NhdGlvbmAvdmFsdWUgdG8gcmVzcG9uc2VPYmplY3RcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICByZXNwb25zZU9iamVjdFtrU3RhdGVdLmhlYWRlcnNMaXN0LmFwcGVuZCgnbG9jYXRpb24nLCB2YWx1ZSlcblxuICAgIC8vIDguIFJldHVybiByZXNwb25zZU9iamVjdC5cbiAgICByZXR1cm4gcmVzcG9uc2VPYmplY3RcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNkb20tcmVzcG9uc2VcbiAgY29uc3RydWN0b3IgKGJvZHkgPSBudWxsLCBpbml0ID0ge30pIHtcbiAgICBpZiAoYm9keSAhPT0gbnVsbCkge1xuICAgICAgYm9keSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkJvZHlJbml0KGJvZHkpXG4gICAgfVxuXG4gICAgaW5pdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlc3BvbnNlSW5pdChpbml0KVxuXG4gICAgLy8gVE9ET1xuICAgIHRoaXNba1JlYWxtXSA9IHsgc2V0dGluZ3NPYmplY3Q6IHt9IH1cblxuICAgIC8vIDEuIFNldCB0aGlzXHUyMDE5cyByZXNwb25zZSB0byBhIG5ldyByZXNwb25zZS5cbiAgICB0aGlzW2tTdGF0ZV0gPSBtYWtlUmVzcG9uc2Uoe30pXG5cbiAgICAvLyAyLiBTZXQgdGhpc1x1MjAxOXMgaGVhZGVycyB0byBhIG5ldyBIZWFkZXJzIG9iamVjdCB3aXRoIHRoaXNcdTIwMTlzIHJlbGV2YW50XG4gICAgLy8gUmVhbG0sIHdob3NlIGhlYWRlciBsaXN0IGlzIHRoaXNcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdCBhbmQgZ3VhcmRcbiAgICAvLyBpcyBcInJlc3BvbnNlXCIuXG4gICAgdGhpc1trSGVhZGVyc10gPSBuZXcgSGVhZGVycyhrQ29uc3RydWN0KVxuICAgIHRoaXNba0hlYWRlcnNdW2tHdWFyZF0gPSAncmVzcG9uc2UnXG4gICAgdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XSA9IHRoaXNba1N0YXRlXS5oZWFkZXJzTGlzdFxuICAgIHRoaXNba0hlYWRlcnNdW2tSZWFsbV0gPSB0aGlzW2tSZWFsbV1cblxuICAgIC8vIDMuIExldCBib2R5V2l0aFR5cGUgYmUgbnVsbC5cbiAgICBsZXQgYm9keVdpdGhUeXBlID0gbnVsbFxuXG4gICAgLy8gNC4gSWYgYm9keSBpcyBub24tbnVsbCwgdGhlbiBzZXQgYm9keVdpdGhUeXBlIHRvIHRoZSByZXN1bHQgb2YgZXh0cmFjdGluZyBib2R5LlxuICAgIGlmIChib2R5ICE9IG51bGwpIHtcbiAgICAgIGNvbnN0IFtleHRyYWN0ZWRCb2R5LCB0eXBlXSA9IGV4dHJhY3RCb2R5KGJvZHkpXG4gICAgICBib2R5V2l0aFR5cGUgPSB7IGJvZHk6IGV4dHJhY3RlZEJvZHksIHR5cGUgfVxuICAgIH1cblxuICAgIC8vIDUuIFBlcmZvcm0gaW5pdGlhbGl6ZSBhIHJlc3BvbnNlIGdpdmVuIHRoaXMsIGluaXQsIGFuZCBib2R5V2l0aFR5cGUuXG4gICAgaW5pdGlhbGl6ZVJlc3BvbnNlKHRoaXMsIGluaXQsIGJvZHlXaXRoVHlwZSlcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIHR5cGUsIGUuZy4sIFwiY29yc1wiLlxuICBnZXQgdHlwZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICAvLyBUaGUgdHlwZSBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgdHlwZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnR5cGVcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIFVSTCwgaWYgaXQgaGFzIG9uZTsgb3RoZXJ3aXNlIHRoZSBlbXB0eSBzdHJpbmcuXG4gIGdldCB1cmwgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgY29uc3QgdXJsTGlzdCA9IHRoaXNba1N0YXRlXS51cmxMaXN0XG5cbiAgICAvLyBUaGUgdXJsIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhpc1x1MjAxOXNcbiAgICAvLyByZXNwb25zZVx1MjAxOXMgVVJMIGlzIG51bGw7IG90aGVyd2lzZSB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgVVJMLFxuICAgIC8vIHNlcmlhbGl6ZWQgd2l0aCBleGNsdWRlIGZyYWdtZW50IHNldCB0byB0cnVlLlxuICAgIGNvbnN0IHVybCA9IHVybExpc3RbdXJsTGlzdC5sZW5ndGggLSAxXSA/PyBudWxsXG5cbiAgICBpZiAodXJsID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gJydcbiAgICB9XG5cbiAgICByZXR1cm4gVVJMU2VyaWFsaXplcih1cmwsIHRydWUpXG4gIH1cblxuICAvLyBSZXR1cm5zIHdoZXRoZXIgcmVzcG9uc2Ugd2FzIG9idGFpbmVkIHRocm91Z2ggYSByZWRpcmVjdC5cbiAgZ2V0IHJlZGlyZWN0ZWQgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgLy8gVGhlIHJlZGlyZWN0ZWQgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdHJ1ZSBpZiB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgVVJMXG4gICAgLy8gbGlzdCBoYXMgbW9yZSB0aGFuIG9uZSBpdGVtOyBvdGhlcndpc2UgZmFsc2UuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS51cmxMaXN0Lmxlbmd0aCA+IDFcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cy5cbiAgZ2V0IHN0YXR1cyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICAvLyBUaGUgc3RhdHVzIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5zdGF0dXNcbiAgfVxuXG4gIC8vIFJldHVybnMgd2hldGhlciByZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIGFuIG9rIHN0YXR1cy5cbiAgZ2V0IG9rICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXNwb25zZSlcblxuICAgIC8vIFRoZSBvayBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0cnVlIGlmIHRoaXNcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgYW5cbiAgICAvLyBvayBzdGF0dXM7IG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnN0YXR1cyA+PSAyMDAgJiYgdGhpc1trU3RhdGVdLnN0YXR1cyA8PSAyOTlcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBtZXNzYWdlLlxuICBnZXQgc3RhdHVzVGV4dCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICAvLyBUaGUgc3RhdHVzVGV4dCBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyByZXNwb25zZVx1MjAxOXMgc3RhdHVzXG4gICAgLy8gbWVzc2FnZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnN0YXR1c1RleHRcbiAgfVxuXG4gIC8vIFJldHVybnMgcmVzcG9uc2VcdTIwMTlzIGhlYWRlcnMgYXMgSGVhZGVycy5cbiAgZ2V0IGhlYWRlcnMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgLy8gVGhlIGhlYWRlcnMgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgaGVhZGVycy5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc11cbiAgfVxuXG4gIGdldCBib2R5ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXNwb25zZSlcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uYm9keSA/IHRoaXNba1N0YXRlXS5ib2R5LnN0cmVhbSA6IG51bGxcbiAgfVxuXG4gIGdldCBib2R5VXNlZCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVzcG9uc2UpXG5cbiAgICByZXR1cm4gISF0aGlzW2tTdGF0ZV0uYm9keSAmJiB1dGlsLmlzRGlzdHVyYmVkKHRoaXNba1N0YXRlXS5ib2R5LnN0cmVhbSlcbiAgfVxuXG4gIC8vIFJldHVybnMgYSBjbG9uZSBvZiByZXNwb25zZS5cbiAgY2xvbmUgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlc3BvbnNlKVxuXG4gICAgLy8gMS4gSWYgdGhpcyBpcyB1bnVzYWJsZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAodGhpcy5ib2R5VXNlZCB8fCAodGhpcy5ib2R5ICYmIHRoaXMuYm9keS5sb2NrZWQpKSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogJ1Jlc3BvbnNlLmNsb25lJyxcbiAgICAgICAgbWVzc2FnZTogJ0JvZHkgaGFzIGFscmVhZHkgYmVlbiBjb25zdW1lZC4nXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIDIuIExldCBjbG9uZWRSZXNwb25zZSBiZSB0aGUgcmVzdWx0IG9mIGNsb25pbmcgdGhpc1x1MjAxOXMgcmVzcG9uc2UuXG4gICAgY29uc3QgY2xvbmVkUmVzcG9uc2UgPSBjbG9uZVJlc3BvbnNlKHRoaXNba1N0YXRlXSlcblxuICAgIC8vIDMuIFJldHVybiB0aGUgcmVzdWx0IG9mIGNyZWF0aW5nIGEgUmVzcG9uc2Ugb2JqZWN0LCBnaXZlblxuICAgIC8vIGNsb25lZFJlc3BvbnNlLCB0aGlzXHUyMDE5cyBoZWFkZXJzXHUyMDE5cyBndWFyZCwgYW5kIHRoaXNcdTIwMTlzIHJlbGV2YW50IFJlYWxtLlxuICAgIGNvbnN0IGNsb25lZFJlc3BvbnNlT2JqZWN0ID0gbmV3IFJlc3BvbnNlKClcbiAgICBjbG9uZWRSZXNwb25zZU9iamVjdFtrU3RhdGVdID0gY2xvbmVkUmVzcG9uc2VcbiAgICBjbG9uZWRSZXNwb25zZU9iamVjdFtrUmVhbG1dID0gdGhpc1trUmVhbG1dXG4gICAgY2xvbmVkUmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tIZWFkZXJzTGlzdF0gPSBjbG9uZWRSZXNwb25zZS5oZWFkZXJzTGlzdFxuICAgIGNsb25lZFJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrR3VhcmRdID0gdGhpc1trSGVhZGVyc11ba0d1YXJkXVxuICAgIGNsb25lZFJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrUmVhbG1dID0gdGhpc1trSGVhZGVyc11ba1JlYWxtXVxuXG4gICAgcmV0dXJuIGNsb25lZFJlc3BvbnNlT2JqZWN0XG4gIH1cbn1cblxubWl4aW5Cb2R5KFJlc3BvbnNlKVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhSZXNwb25zZS5wcm90b3R5cGUsIHtcbiAgdHlwZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgdXJsOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBzdGF0dXM6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9rOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICByZWRpcmVjdGVkOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBzdGF0dXNUZXh0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBoZWFkZXJzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjbG9uZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keVVzZWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdSZXNwb25zZScsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH1cbn0pXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFJlc3BvbnNlLCB7XG4gIGpzb246IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlZGlyZWN0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBlcnJvcjoga0VudW1lcmFibGVQcm9wZXJ0eVxufSlcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtcmVzcG9uc2UtY2xvbmVcbmZ1bmN0aW9uIGNsb25lUmVzcG9uc2UgKHJlc3BvbnNlKSB7XG4gIC8vIFRvIGNsb25lIGEgcmVzcG9uc2UgcmVzcG9uc2UsIHJ1biB0aGVzZSBzdGVwczpcblxuICAvLyAxLiBJZiByZXNwb25zZSBpcyBhIGZpbHRlcmVkIHJlc3BvbnNlLCB0aGVuIHJldHVybiBhIG5ldyBpZGVudGljYWxcbiAgLy8gZmlsdGVyZWQgcmVzcG9uc2Ugd2hvc2UgaW50ZXJuYWwgcmVzcG9uc2UgaXMgYSBjbG9uZSBvZiByZXNwb25zZVx1MjAxOXNcbiAgLy8gaW50ZXJuYWwgcmVzcG9uc2UuXG4gIGlmIChyZXNwb25zZS5pbnRlcm5hbFJlc3BvbnNlKSB7XG4gICAgcmV0dXJuIGZpbHRlclJlc3BvbnNlKFxuICAgICAgY2xvbmVSZXNwb25zZShyZXNwb25zZS5pbnRlcm5hbFJlc3BvbnNlKSxcbiAgICAgIHJlc3BvbnNlLnR5cGVcbiAgICApXG4gIH1cblxuICAvLyAyLiBMZXQgbmV3UmVzcG9uc2UgYmUgYSBjb3B5IG9mIHJlc3BvbnNlLCBleGNlcHQgZm9yIGl0cyBib2R5LlxuICBjb25zdCBuZXdSZXNwb25zZSA9IG1ha2VSZXNwb25zZSh7IC4uLnJlc3BvbnNlLCBib2R5OiBudWxsIH0pXG5cbiAgLy8gMy4gSWYgcmVzcG9uc2VcdTIwMTlzIGJvZHkgaXMgbm9uLW51bGwsIHRoZW4gc2V0IG5ld1Jlc3BvbnNlXHUyMDE5cyBib2R5IHRvIHRoZVxuICAvLyByZXN1bHQgb2YgY2xvbmluZyByZXNwb25zZVx1MjAxOXMgYm9keS5cbiAgaWYgKHJlc3BvbnNlLmJvZHkgIT0gbnVsbCkge1xuICAgIG5ld1Jlc3BvbnNlLmJvZHkgPSBjbG9uZUJvZHkocmVzcG9uc2UuYm9keSlcbiAgfVxuXG4gIC8vIDQuIFJldHVybiBuZXdSZXNwb25zZS5cbiAgcmV0dXJuIG5ld1Jlc3BvbnNlXG59XG5cbmZ1bmN0aW9uIG1ha2VSZXNwb25zZSAoaW5pdCkge1xuICByZXR1cm4ge1xuICAgIGFib3J0ZWQ6IGZhbHNlLFxuICAgIHJhbmdlUmVxdWVzdGVkOiBmYWxzZSxcbiAgICB0aW1pbmdBbGxvd1Bhc3NlZDogZmFsc2UsXG4gICAgcmVxdWVzdEluY2x1ZGVzQ3JlZGVudGlhbHM6IGZhbHNlLFxuICAgIHR5cGU6ICdkZWZhdWx0JyxcbiAgICBzdGF0dXM6IDIwMCxcbiAgICB0aW1pbmdJbmZvOiBudWxsLFxuICAgIGNhY2hlU3RhdGU6ICcnLFxuICAgIHN0YXR1c1RleHQ6ICcnLFxuICAgIC4uLmluaXQsXG4gICAgaGVhZGVyc0xpc3Q6IGluaXQuaGVhZGVyc0xpc3RcbiAgICAgID8gbmV3IEhlYWRlcnNMaXN0KGluaXQuaGVhZGVyc0xpc3QpXG4gICAgICA6IG5ldyBIZWFkZXJzTGlzdCgpLFxuICAgIHVybExpc3Q6IGluaXQudXJsTGlzdCA/IFsuLi5pbml0LnVybExpc3RdIDogW11cbiAgfVxufVxuXG5mdW5jdGlvbiBtYWtlTmV0d29ya0Vycm9yIChyZWFzb24pIHtcbiAgY29uc3QgaXNFcnJvciA9IGlzRXJyb3JMaWtlKHJlYXNvbilcbiAgcmV0dXJuIG1ha2VSZXNwb25zZSh7XG4gICAgdHlwZTogJ2Vycm9yJyxcbiAgICBzdGF0dXM6IDAsXG4gICAgZXJyb3I6IGlzRXJyb3JcbiAgICAgID8gcmVhc29uXG4gICAgICA6IG5ldyBFcnJvcihyZWFzb24gPyBTdHJpbmcocmVhc29uKSA6IHJlYXNvbiksXG4gICAgYWJvcnRlZDogcmVhc29uICYmIHJlYXNvbi5uYW1lID09PSAnQWJvcnRFcnJvcidcbiAgfSlcbn1cblxuZnVuY3Rpb24gbWFrZUZpbHRlcmVkUmVzcG9uc2UgKHJlc3BvbnNlLCBzdGF0ZSkge1xuICBzdGF0ZSA9IHtcbiAgICBpbnRlcm5hbFJlc3BvbnNlOiByZXNwb25zZSxcbiAgICAuLi5zdGF0ZVxuICB9XG5cbiAgcmV0dXJuIG5ldyBQcm94eShyZXNwb25zZSwge1xuICAgIGdldCAodGFyZ2V0LCBwKSB7XG4gICAgICByZXR1cm4gcCBpbiBzdGF0ZSA/IHN0YXRlW3BdIDogdGFyZ2V0W3BdXG4gICAgfSxcbiAgICBzZXQgKHRhcmdldCwgcCwgdmFsdWUpIHtcbiAgICAgIGFzc2VydCghKHAgaW4gc3RhdGUpKVxuICAgICAgdGFyZ2V0W3BdID0gdmFsdWVcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9KVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1maWx0ZXJlZC1yZXNwb25zZVxuZnVuY3Rpb24gZmlsdGVyUmVzcG9uc2UgKHJlc3BvbnNlLCB0eXBlKSB7XG4gIC8vIFNldCByZXNwb25zZSB0byB0aGUgZm9sbG93aW5nIGZpbHRlcmVkIHJlc3BvbnNlIHdpdGggcmVzcG9uc2UgYXMgaXRzXG4gIC8vIGludGVybmFsIHJlc3BvbnNlLCBkZXBlbmRpbmcgb24gcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmc6XG4gIGlmICh0eXBlID09PSAnYmFzaWMnKSB7XG4gICAgLy8gQSBiYXNpYyBmaWx0ZXJlZCByZXNwb25zZSBpcyBhIGZpbHRlcmVkIHJlc3BvbnNlIHdob3NlIHR5cGUgaXMgXCJiYXNpY1wiXG4gICAgLy8gYW5kIGhlYWRlciBsaXN0IGV4Y2x1ZGVzIGFueSBoZWFkZXJzIGluIGludGVybmFsIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdFxuICAgIC8vIHdob3NlIG5hbWUgaXMgYSBmb3JiaWRkZW4gcmVzcG9uc2UtaGVhZGVyIG5hbWUuXG5cbiAgICAvLyBOb3RlOiB1bmRpY2kgZG9lcyBub3QgaW1wbGVtZW50IGZvcmJpZGRlbiByZXNwb25zZS1oZWFkZXIgbmFtZXNcbiAgICByZXR1cm4gbWFrZUZpbHRlcmVkUmVzcG9uc2UocmVzcG9uc2UsIHtcbiAgICAgIHR5cGU6ICdiYXNpYycsXG4gICAgICBoZWFkZXJzTGlzdDogcmVzcG9uc2UuaGVhZGVyc0xpc3RcbiAgICB9KVxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdjb3JzJykge1xuICAgIC8vIEEgQ09SUyBmaWx0ZXJlZCByZXNwb25zZSBpcyBhIGZpbHRlcmVkIHJlc3BvbnNlIHdob3NlIHR5cGUgaXMgXCJjb3JzXCJcbiAgICAvLyBhbmQgaGVhZGVyIGxpc3QgZXhjbHVkZXMgYW55IGhlYWRlcnMgaW4gaW50ZXJuYWwgcmVzcG9uc2VcdTIwMTlzIGhlYWRlclxuICAgIC8vIGxpc3Qgd2hvc2UgbmFtZSBpcyBub3QgYSBDT1JTLXNhZmVsaXN0ZWQgcmVzcG9uc2UtaGVhZGVyIG5hbWUsIGdpdmVuXG4gICAgLy8gaW50ZXJuYWwgcmVzcG9uc2VcdTIwMTlzIENPUlMtZXhwb3NlZCBoZWFkZXItbmFtZSBsaXN0LlxuXG4gICAgLy8gTm90ZTogdW5kaWNpIGRvZXMgbm90IGltcGxlbWVudCBDT1JTLXNhZmVsaXN0ZWQgcmVzcG9uc2UtaGVhZGVyIG5hbWVzXG4gICAgcmV0dXJuIG1ha2VGaWx0ZXJlZFJlc3BvbnNlKHJlc3BvbnNlLCB7XG4gICAgICB0eXBlOiAnY29ycycsXG4gICAgICBoZWFkZXJzTGlzdDogcmVzcG9uc2UuaGVhZGVyc0xpc3RcbiAgICB9KVxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdvcGFxdWUnKSB7XG4gICAgLy8gQW4gb3BhcXVlIGZpbHRlcmVkIHJlc3BvbnNlIGlzIGEgZmlsdGVyZWQgcmVzcG9uc2Ugd2hvc2UgdHlwZSBpc1xuICAgIC8vIFwib3BhcXVlXCIsIFVSTCBsaXN0IGlzIHRoZSBlbXB0eSBsaXN0LCBzdGF0dXMgaXMgMCwgc3RhdHVzIG1lc3NhZ2VcbiAgICAvLyBpcyB0aGUgZW1wdHkgYnl0ZSBzZXF1ZW5jZSwgaGVhZGVyIGxpc3QgaXMgZW1wdHksIGFuZCBib2R5IGlzIG51bGwuXG5cbiAgICByZXR1cm4gbWFrZUZpbHRlcmVkUmVzcG9uc2UocmVzcG9uc2UsIHtcbiAgICAgIHR5cGU6ICdvcGFxdWUnLFxuICAgICAgdXJsTGlzdDogT2JqZWN0LmZyZWV6ZShbXSksXG4gICAgICBzdGF0dXM6IDAsXG4gICAgICBzdGF0dXNUZXh0OiAnJyxcbiAgICAgIGJvZHk6IG51bGxcbiAgICB9KVxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdvcGFxdWVyZWRpcmVjdCcpIHtcbiAgICAvLyBBbiBvcGFxdWUtcmVkaXJlY3QgZmlsdGVyZWQgcmVzcG9uc2UgaXMgYSBmaWx0ZXJlZCByZXNwb25zZSB3aG9zZSB0eXBlXG4gICAgLy8gaXMgXCJvcGFxdWVyZWRpcmVjdFwiLCBzdGF0dXMgaXMgMCwgc3RhdHVzIG1lc3NhZ2UgaXMgdGhlIGVtcHR5IGJ5dGVcbiAgICAvLyBzZXF1ZW5jZSwgaGVhZGVyIGxpc3QgaXMgZW1wdHksIGFuZCBib2R5IGlzIG51bGwuXG5cbiAgICByZXR1cm4gbWFrZUZpbHRlcmVkUmVzcG9uc2UocmVzcG9uc2UsIHtcbiAgICAgIHR5cGU6ICdvcGFxdWVyZWRpcmVjdCcsXG4gICAgICBzdGF0dXM6IDAsXG4gICAgICBzdGF0dXNUZXh0OiAnJyxcbiAgICAgIGhlYWRlcnNMaXN0OiBbXSxcbiAgICAgIGJvZHk6IG51bGxcbiAgICB9KVxuICB9IGVsc2Uge1xuICAgIGFzc2VydChmYWxzZSlcbiAgfVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jYXBwcm9wcmlhdGUtbmV0d29yay1lcnJvclxuZnVuY3Rpb24gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yIChmZXRjaFBhcmFtcywgZXJyID0gbnVsbCkge1xuICAvLyAxLiBBc3NlcnQ6IGZldGNoUGFyYW1zIGlzIGNhbmNlbGVkLlxuICBhc3NlcnQoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKVxuXG4gIC8vIDIuIFJldHVybiBhbiBhYm9ydGVkIG5ldHdvcmsgZXJyb3IgaWYgZmV0Y2hQYXJhbXMgaXMgYWJvcnRlZDtcbiAgLy8gb3RoZXJ3aXNlIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gIHJldHVybiBpc0Fib3J0ZWQoZmV0Y2hQYXJhbXMpXG4gICAgPyBtYWtlTmV0d29ya0Vycm9yKE9iamVjdC5hc3NpZ24obmV3IERPTUV4Y2VwdGlvbignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZC4nLCAnQWJvcnRFcnJvcicpLCB7IGNhdXNlOiBlcnIgfSkpXG4gICAgOiBtYWtlTmV0d29ya0Vycm9yKE9iamVjdC5hc3NpZ24obmV3IERPTUV4Y2VwdGlvbignUmVxdWVzdCB3YXMgY2FuY2VsbGVkLicpLCB7IGNhdXNlOiBlcnIgfSkpXG59XG5cbi8vIGh0dHBzOi8vd2hhdHByLm9yZy9mZXRjaC8xMzkyLmh0bWwjaW5pdGlhbGl6ZS1hLXJlc3BvbnNlXG5mdW5jdGlvbiBpbml0aWFsaXplUmVzcG9uc2UgKHJlc3BvbnNlLCBpbml0LCBib2R5KSB7XG4gIC8vIDEuIElmIGluaXRbXCJzdGF0dXNcIl0gaXMgbm90IGluIHRoZSByYW5nZSAyMDAgdG8gNTk5LCBpbmNsdXNpdmUsIHRoZW5cbiAgLy8gICAgdGhyb3cgYSBSYW5nZUVycm9yLlxuICBpZiAoaW5pdC5zdGF0dXMgIT09IG51bGwgJiYgKGluaXQuc3RhdHVzIDwgMjAwIHx8IGluaXQuc3RhdHVzID4gNTk5KSkge1xuICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdpbml0W1wic3RhdHVzXCJdIG11c3QgYmUgaW4gdGhlIHJhbmdlIG9mIDIwMCB0byA1OTksIGluY2x1c2l2ZS4nKVxuICB9XG5cbiAgLy8gMi4gSWYgaW5pdFtcInN0YXR1c1RleHRcIl0gZG9lcyBub3QgbWF0Y2ggdGhlIHJlYXNvbi1waHJhc2UgdG9rZW4gcHJvZHVjdGlvbixcbiAgLy8gICAgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgaWYgKCdzdGF0dXNUZXh0JyBpbiBpbml0ICYmIGluaXQuc3RhdHVzVGV4dCAhPSBudWxsKSB7XG4gICAgLy8gU2VlLCBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzcyMzAjc2VjdGlvbi0zLjEuMjpcbiAgICAvLyAgIHJlYXNvbi1waHJhc2UgID0gKiggSFRBQiAvIFNQIC8gVkNIQVIgLyBvYnMtdGV4dCApXG4gICAgaWYgKCFpc1ZhbGlkUmVhc29uUGhyYXNlKFN0cmluZyhpbml0LnN0YXR1c1RleHQpKSkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBzdGF0dXNUZXh0JylcbiAgICB9XG4gIH1cblxuICAvLyAzLiBTZXQgcmVzcG9uc2VcdTIwMTlzIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgdG8gaW5pdFtcInN0YXR1c1wiXS5cbiAgaWYgKCdzdGF0dXMnIGluIGluaXQgJiYgaW5pdC5zdGF0dXMgIT0gbnVsbCkge1xuICAgIHJlc3BvbnNlW2tTdGF0ZV0uc3RhdHVzID0gaW5pdC5zdGF0dXNcbiAgfVxuXG4gIC8vIDQuIFNldCByZXNwb25zZVx1MjAxOXMgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBtZXNzYWdlIHRvIGluaXRbXCJzdGF0dXNUZXh0XCJdLlxuICBpZiAoJ3N0YXR1c1RleHQnIGluIGluaXQgJiYgaW5pdC5zdGF0dXNUZXh0ICE9IG51bGwpIHtcbiAgICByZXNwb25zZVtrU3RhdGVdLnN0YXR1c1RleHQgPSBpbml0LnN0YXR1c1RleHRcbiAgfVxuXG4gIC8vIDUuIElmIGluaXRbXCJoZWFkZXJzXCJdIGV4aXN0cywgdGhlbiBmaWxsIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXJzIHdpdGggaW5pdFtcImhlYWRlcnNcIl0uXG4gIGlmICgnaGVhZGVycycgaW4gaW5pdCAmJiBpbml0LmhlYWRlcnMgIT0gbnVsbCkge1xuICAgIGZpbGwocmVzcG9uc2Vba0hlYWRlcnNdLCBpbml0LmhlYWRlcnMpXG4gIH1cblxuICAvLyA2LiBJZiBib2R5IHdhcyBnaXZlbiwgdGhlbjpcbiAgaWYgKGJvZHkpIHtcbiAgICAvLyAxLiBJZiByZXNwb25zZSdzIHN0YXR1cyBpcyBhIG51bGwgYm9keSBzdGF0dXMsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKG51bGxCb2R5U3RhdHVzLmluY2x1ZGVzKHJlc3BvbnNlLnN0YXR1cykpIHtcbiAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgaGVhZGVyOiAnUmVzcG9uc2UgY29uc3RydWN0b3InLFxuICAgICAgICBtZXNzYWdlOiAnSW52YWxpZCByZXNwb25zZSBzdGF0dXMgY29kZSAnICsgcmVzcG9uc2Uuc3RhdHVzXG4gICAgICB9KVxuICAgIH1cblxuICAgIC8vIDIuIFNldCByZXNwb25zZSdzIGJvZHkgdG8gYm9keSdzIGJvZHkuXG4gICAgcmVzcG9uc2Vba1N0YXRlXS5ib2R5ID0gYm9keS5ib2R5XG5cbiAgICAvLyAzLiBJZiBib2R5J3MgdHlwZSBpcyBub24tbnVsbCBhbmQgcmVzcG9uc2UncyBoZWFkZXIgbGlzdCBkb2VzIG5vdCBjb250YWluXG4gICAgLy8gICAgYENvbnRlbnQtVHlwZWAsIHRoZW4gYXBwZW5kIChgQ29udGVudC1UeXBlYCwgYm9keSdzIHR5cGUpIHRvIHJlc3BvbnNlJ3MgaGVhZGVyIGxpc3QuXG4gICAgaWYgKGJvZHkudHlwZSAhPSBudWxsICYmICFyZXNwb25zZVtrU3RhdGVdLmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdDb250ZW50LVR5cGUnKSkge1xuICAgICAgcmVzcG9uc2Vba1N0YXRlXS5oZWFkZXJzTGlzdC5hcHBlbmQoJ2NvbnRlbnQtdHlwZScsIGJvZHkudHlwZSlcbiAgICB9XG4gIH1cbn1cblxud2ViaWRsLmNvbnZlcnRlcnMuUmVhZGFibGVTdHJlYW0gPSB3ZWJpZGwuaW50ZXJmYWNlQ29udmVydGVyKFxuICBSZWFkYWJsZVN0cmVhbVxuKVxuXG53ZWJpZGwuY29udmVydGVycy5Gb3JtRGF0YSA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIEZvcm1EYXRhXG4pXG5cbndlYmlkbC5jb252ZXJ0ZXJzLlVSTFNlYXJjaFBhcmFtcyA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIFVSTFNlYXJjaFBhcmFtc1xuKVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jdHlwZWRlZmRlZi14bWxodHRwcmVxdWVzdGJvZHlpbml0XG53ZWJpZGwuY29udmVydGVycy5YTUxIdHRwUmVxdWVzdEJvZHlJbml0ID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHR5cGVvZiBWID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcoVilcbiAgfVxuXG4gIGlmIChpc0Jsb2JMaWtlKFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkJsb2IoViwgeyBzdHJpY3Q6IGZhbHNlIH0pXG4gIH1cblxuICBpZiAodHlwZXMuaXNBcnJheUJ1ZmZlcihWKSB8fCB0eXBlcy5pc1R5cGVkQXJyYXkoVikgfHwgdHlwZXMuaXNEYXRhVmlldyhWKSkge1xuICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5CdWZmZXJTb3VyY2UoVilcbiAgfVxuXG4gIGlmICh1dGlsLmlzRm9ybURhdGFMaWtlKFYpKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkZvcm1EYXRhKFYsIHsgc3RyaWN0OiBmYWxzZSB9KVxuICB9XG5cbiAgaWYgKFYgaW5zdGFuY2VvZiBVUkxTZWFyY2hQYXJhbXMpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuVVJMU2VhcmNoUGFyYW1zKFYpXG4gIH1cblxuICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKFYpXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNib2R5aW5pdFxud2ViaWRsLmNvbnZlcnRlcnMuQm9keUluaXQgPSBmdW5jdGlvbiAoVikge1xuICBpZiAoViBpbnN0YW5jZW9mIFJlYWRhYmxlU3RyZWFtKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlJlYWRhYmxlU3RyZWFtKFYpXG4gIH1cblxuICAvLyBOb3RlOiB0aGUgc3BlYyBkb2Vzbid0IGluY2x1ZGUgYXN5bmMgaXRlcmFibGVzLFxuICAvLyB0aGlzIGlzIGFuIHVuZGljaSBleHRlbnNpb24uXG4gIGlmIChWPy5bU3ltYm9sLmFzeW5jSXRlcmF0b3JdKSB7XG4gICAgcmV0dXJuIFZcbiAgfVxuXG4gIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5YTUxIdHRwUmVxdWVzdEJvZHlJbml0KFYpXG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzLlJlc3BvbnNlSW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAge1xuICAgIGtleTogJ3N0YXR1cycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgc2hvcnQnXSxcbiAgICBkZWZhdWx0VmFsdWU6IDIwMFxuICB9LFxuICB7XG4gICAga2V5OiAnc3RhdHVzVGV4dCcsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5CeXRlU3RyaW5nLFxuICAgIGRlZmF1bHRWYWx1ZTogJydcbiAgfSxcbiAge1xuICAgIGtleTogJ2hlYWRlcnMnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuSGVhZGVyc0luaXRcbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1ha2VOZXR3b3JrRXJyb3IsXG4gIG1ha2VSZXNwb25zZSxcbiAgbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yLFxuICBmaWx0ZXJSZXNwb25zZSxcbiAgUmVzcG9uc2UsXG4gIGNsb25lUmVzcG9uc2Vcbn1cbiIsICIvKiBnbG9iYWxzIEFib3J0Q29udHJvbGxlciAqL1xuXG4ndXNlIHN0cmljdCdcblxuY29uc3QgeyBleHRyYWN0Qm9keSwgbWl4aW5Cb2R5LCBjbG9uZUJvZHkgfSA9IHJlcXVpcmUoJy4vYm9keScpXG5jb25zdCB7IEhlYWRlcnMsIGZpbGw6IGZpbGxIZWFkZXJzLCBIZWFkZXJzTGlzdCB9ID0gcmVxdWlyZSgnLi9oZWFkZXJzJylcbmNvbnN0IHsgRmluYWxpemF0aW9uUmVnaXN0cnkgfSA9IHJlcXVpcmUoJy4uL2NvbXBhdC9kaXNwYXRjaGVyLXdlYWtyZWYnKSgpXG5jb25zdCB1dGlsID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHtcbiAgaXNWYWxpZEhUVFBUb2tlbixcbiAgc2FtZU9yaWdpbixcbiAgbm9ybWFsaXplTWV0aG9kLFxuICBtYWtlUG9saWN5Q29udGFpbmVyLFxuICBub3JtYWxpemVNZXRob2RSZWNvcmRcbn0gPSByZXF1aXJlKCcuL3V0aWwnKVxuY29uc3Qge1xuICBmb3JiaWRkZW5NZXRob2RzU2V0LFxuICBjb3JzU2FmZUxpc3RlZE1ldGhvZHNTZXQsXG4gIHJlZmVycmVyUG9saWN5LFxuICByZXF1ZXN0UmVkaXJlY3QsXG4gIHJlcXVlc3RNb2RlLFxuICByZXF1ZXN0Q3JlZGVudGlhbHMsXG4gIHJlcXVlc3RDYWNoZSxcbiAgcmVxdWVzdER1cGxleFxufSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gdXRpbFxuY29uc3QgeyBrSGVhZGVycywga1NpZ25hbCwga1N0YXRlLCBrR3VhcmQsIGtSZWFsbSB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuL3dlYmlkbCcpXG5jb25zdCB7IGdldEdsb2JhbE9yaWdpbiB9ID0gcmVxdWlyZSgnLi9nbG9iYWwnKVxuY29uc3QgeyBVUkxTZXJpYWxpemVyIH0gPSByZXF1aXJlKCcuL2RhdGFVUkwnKVxuY29uc3QgeyBrSGVhZGVyc0xpc3QsIGtDb25zdHJ1Y3QgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBnZXRNYXhMaXN0ZW5lcnMsIHNldE1heExpc3RlbmVycywgZ2V0RXZlbnRMaXN0ZW5lcnMsIGRlZmF1bHRNYXhMaXN0ZW5lcnMgfSA9IHJlcXVpcmUoJ2V2ZW50cycpXG5cbmxldCBUcmFuc2Zvcm1TdHJlYW0gPSBnbG9iYWxUaGlzLlRyYW5zZm9ybVN0cmVhbVxuXG5jb25zdCBrQWJvcnRDb250cm9sbGVyID0gU3ltYm9sKCdhYm9ydENvbnRyb2xsZXInKVxuXG5jb25zdCByZXF1ZXN0RmluYWxpemVyID0gbmV3IEZpbmFsaXphdGlvblJlZ2lzdHJ5KCh7IHNpZ25hbCwgYWJvcnQgfSkgPT4ge1xuICBzaWduYWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBhYm9ydClcbn0pXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0LWNsYXNzXG5jbGFzcyBSZXF1ZXN0IHtcbiAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2RvbS1yZXF1ZXN0XG4gIGNvbnN0cnVjdG9yIChpbnB1dCwgaW5pdCA9IHt9KSB7XG4gICAgaWYgKGlucHV0ID09PSBrQ29uc3RydWN0KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnUmVxdWVzdCBjb25zdHJ1Y3RvcicgfSlcblxuICAgIGlucHV0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluZm8oaW5wdXQpXG4gICAgaW5pdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbml0KGluaXQpXG5cbiAgICAvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS93ZWJhcHBhcGlzLmh0bWwjZW52aXJvbm1lbnQtc2V0dGluZ3Mtb2JqZWN0XG4gICAgdGhpc1trUmVhbG1dID0ge1xuICAgICAgc2V0dGluZ3NPYmplY3Q6IHtcbiAgICAgICAgYmFzZVVybDogZ2V0R2xvYmFsT3JpZ2luKCksXG4gICAgICAgIGdldCBvcmlnaW4gKCkge1xuICAgICAgICAgIHJldHVybiB0aGlzLmJhc2VVcmw/Lm9yaWdpblxuICAgICAgICB9LFxuICAgICAgICBwb2xpY3lDb250YWluZXI6IG1ha2VQb2xpY3lDb250YWluZXIoKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDEuIExldCByZXF1ZXN0IGJlIG51bGwuXG4gICAgbGV0IHJlcXVlc3QgPSBudWxsXG5cbiAgICAvLyAyLiBMZXQgZmFsbGJhY2tNb2RlIGJlIG51bGwuXG4gICAgbGV0IGZhbGxiYWNrTW9kZSA9IG51bGxcblxuICAgIC8vIDMuIExldCBiYXNlVVJMIGJlIHRoaXNcdTIwMTlzIHJlbGV2YW50IHNldHRpbmdzIG9iamVjdFx1MjAxOXMgQVBJIGJhc2UgVVJMLlxuICAgIGNvbnN0IGJhc2VVcmwgPSB0aGlzW2tSZWFsbV0uc2V0dGluZ3NPYmplY3QuYmFzZVVybFxuXG4gICAgLy8gNC4gTGV0IHNpZ25hbCBiZSBudWxsLlxuICAgIGxldCBzaWduYWwgPSBudWxsXG5cbiAgICAvLyA1LiBJZiBpbnB1dCBpcyBhIHN0cmluZywgdGhlbjpcbiAgICBpZiAodHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gMS4gTGV0IHBhcnNlZFVSTCBiZSB0aGUgcmVzdWx0IG9mIHBhcnNpbmcgaW5wdXQgd2l0aCBiYXNlVVJMLlxuICAgICAgLy8gMi4gSWYgcGFyc2VkVVJMIGlzIGZhaWx1cmUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBsZXQgcGFyc2VkVVJMXG4gICAgICB0cnkge1xuICAgICAgICBwYXJzZWRVUkwgPSBuZXcgVVJMKGlucHV0LCBiYXNlVXJsKVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ZhaWxlZCB0byBwYXJzZSBVUkwgZnJvbSAnICsgaW5wdXQsIHsgY2F1c2U6IGVyciB9KVxuICAgICAgfVxuXG4gICAgICAvLyAzLiBJZiBwYXJzZWRVUkwgaW5jbHVkZXMgY3JlZGVudGlhbHMsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAocGFyc2VkVVJMLnVzZXJuYW1lIHx8IHBhcnNlZFVSTC5wYXNzd29yZCkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgICdSZXF1ZXN0IGNhbm5vdCBiZSBjb25zdHJ1Y3RlZCBmcm9tIGEgVVJMIHRoYXQgaW5jbHVkZXMgY3JlZGVudGlhbHM6ICcgK1xuICAgICAgICAgICAgaW5wdXRcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICAvLyA0LiBTZXQgcmVxdWVzdCB0byBhIG5ldyByZXF1ZXN0IHdob3NlIFVSTCBpcyBwYXJzZWRVUkwuXG4gICAgICByZXF1ZXN0ID0gbWFrZVJlcXVlc3QoeyB1cmxMaXN0OiBbcGFyc2VkVVJMXSB9KVxuXG4gICAgICAvLyA1LiBTZXQgZmFsbGJhY2tNb2RlIHRvIFwiY29yc1wiLlxuICAgICAgZmFsbGJhY2tNb2RlID0gJ2NvcnMnXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDYuIE90aGVyd2lzZTpcblxuICAgICAgLy8gNy4gQXNzZXJ0OiBpbnB1dCBpcyBhIFJlcXVlc3Qgb2JqZWN0LlxuICAgICAgYXNzZXJ0KGlucHV0IGluc3RhbmNlb2YgUmVxdWVzdClcblxuICAgICAgLy8gOC4gU2V0IHJlcXVlc3QgdG8gaW5wdXRcdTIwMTlzIHJlcXVlc3QuXG4gICAgICByZXF1ZXN0ID0gaW5wdXRba1N0YXRlXVxuXG4gICAgICAvLyA5LiBTZXQgc2lnbmFsIHRvIGlucHV0XHUyMDE5cyBzaWduYWwuXG4gICAgICBzaWduYWwgPSBpbnB1dFtrU2lnbmFsXVxuICAgIH1cblxuICAgIC8vIDcuIExldCBvcmlnaW4gYmUgdGhpc1x1MjAxOXMgcmVsZXZhbnQgc2V0dGluZ3Mgb2JqZWN0XHUyMDE5cyBvcmlnaW4uXG4gICAgY29uc3Qgb3JpZ2luID0gdGhpc1trUmVhbG1dLnNldHRpbmdzT2JqZWN0Lm9yaWdpblxuXG4gICAgLy8gOC4gTGV0IHdpbmRvdyBiZSBcImNsaWVudFwiLlxuICAgIGxldCB3aW5kb3cgPSAnY2xpZW50J1xuXG4gICAgLy8gOS4gSWYgcmVxdWVzdFx1MjAxOXMgd2luZG93IGlzIGFuIGVudmlyb25tZW50IHNldHRpbmdzIG9iamVjdCBhbmQgaXRzIG9yaWdpblxuICAgIC8vIGlzIHNhbWUgb3JpZ2luIHdpdGggb3JpZ2luLCB0aGVuIHNldCB3aW5kb3cgdG8gcmVxdWVzdFx1MjAxOXMgd2luZG93LlxuICAgIGlmIChcbiAgICAgIHJlcXVlc3Qud2luZG93Py5jb25zdHJ1Y3Rvcj8ubmFtZSA9PT0gJ0Vudmlyb25tZW50U2V0dGluZ3NPYmplY3QnICYmXG4gICAgICBzYW1lT3JpZ2luKHJlcXVlc3Qud2luZG93LCBvcmlnaW4pXG4gICAgKSB7XG4gICAgICB3aW5kb3cgPSByZXF1ZXN0LndpbmRvd1xuICAgIH1cblxuICAgIC8vIDEwLiBJZiBpbml0W1wid2luZG93XCJdIGV4aXN0cyBhbmQgaXMgbm9uLW51bGwsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKGluaXQud2luZG93ICE9IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCd3aW5kb3cnIG9wdGlvbiAnJHt3aW5kb3d9JyBtdXN0IGJlIG51bGxgKVxuICAgIH1cblxuICAgIC8vIDExLiBJZiBpbml0W1wid2luZG93XCJdIGV4aXN0cywgdGhlbiBzZXQgd2luZG93IHRvIFwibm8td2luZG93XCIuXG4gICAgaWYgKCd3aW5kb3cnIGluIGluaXQpIHtcbiAgICAgIHdpbmRvdyA9ICduby13aW5kb3cnXG4gICAgfVxuXG4gICAgLy8gMTIuIFNldCByZXF1ZXN0IHRvIGEgbmV3IHJlcXVlc3Qgd2l0aCB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6XG4gICAgcmVxdWVzdCA9IG1ha2VSZXF1ZXN0KHtcbiAgICAgIC8vIFVSTCByZXF1ZXN0XHUyMDE5cyBVUkwuXG4gICAgICAvLyB1bmRpY2kgaW1wbGVtZW50YXRpb24gbm90ZTogdGhpcyBpcyBzZXQgYXMgdGhlIGZpcnN0IGl0ZW0gaW4gcmVxdWVzdCdzIHVybExpc3QgaW4gbWFrZVJlcXVlc3RcbiAgICAgIC8vIG1ldGhvZCByZXF1ZXN0XHUyMDE5cyBtZXRob2QuXG4gICAgICBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgLy8gaGVhZGVyIGxpc3QgQSBjb3B5IG9mIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgICAgLy8gdW5kaWNpIGltcGxlbWVudGF0aW9uIG5vdGU6IGhlYWRlcnNMaXN0IGlzIGNsb25lZCBpbiBtYWtlUmVxdWVzdFxuICAgICAgaGVhZGVyc0xpc3Q6IHJlcXVlc3QuaGVhZGVyc0xpc3QsXG4gICAgICAvLyB1bnNhZmUtcmVxdWVzdCBmbGFnIFNldC5cbiAgICAgIHVuc2FmZVJlcXVlc3Q6IHJlcXVlc3QudW5zYWZlUmVxdWVzdCxcbiAgICAgIC8vIGNsaWVudCBUaGlzXHUyMDE5cyByZWxldmFudCBzZXR0aW5ncyBvYmplY3QuXG4gICAgICBjbGllbnQ6IHRoaXNba1JlYWxtXS5zZXR0aW5nc09iamVjdCxcbiAgICAgIC8vIHdpbmRvdyB3aW5kb3cuXG4gICAgICB3aW5kb3csXG4gICAgICAvLyBwcmlvcml0eSByZXF1ZXN0XHUyMDE5cyBwcmlvcml0eS5cbiAgICAgIHByaW9yaXR5OiByZXF1ZXN0LnByaW9yaXR5LFxuICAgICAgLy8gb3JpZ2luIHJlcXVlc3RcdTIwMTlzIG9yaWdpbi4gVGhlIHByb3BhZ2F0aW9uIG9mIHRoZSBvcmlnaW4gaXMgb25seSBzaWduaWZpY2FudCBmb3IgbmF2aWdhdGlvbiByZXF1ZXN0c1xuICAgICAgLy8gYmVpbmcgaGFuZGxlZCBieSBhIHNlcnZpY2Ugd29ya2VyLiBJbiB0aGlzIHNjZW5hcmlvIGEgcmVxdWVzdCBjYW4gaGF2ZSBhbiBvcmlnaW4gdGhhdCBpcyBkaWZmZXJlbnRcbiAgICAgIC8vIGZyb20gdGhlIGN1cnJlbnQgY2xpZW50LlxuICAgICAgb3JpZ2luOiByZXF1ZXN0Lm9yaWdpbixcbiAgICAgIC8vIHJlZmVycmVyIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyLlxuICAgICAgcmVmZXJyZXI6IHJlcXVlc3QucmVmZXJyZXIsXG4gICAgICAvLyByZWZlcnJlciBwb2xpY3kgcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgcG9saWN5LlxuICAgICAgcmVmZXJyZXJQb2xpY3k6IHJlcXVlc3QucmVmZXJyZXJQb2xpY3ksXG4gICAgICAvLyBtb2RlIHJlcXVlc3RcdTIwMTlzIG1vZGUuXG4gICAgICBtb2RlOiByZXF1ZXN0Lm1vZGUsXG4gICAgICAvLyBjcmVkZW50aWFscyBtb2RlIHJlcXVlc3RcdTIwMTlzIGNyZWRlbnRpYWxzIG1vZGUuXG4gICAgICBjcmVkZW50aWFsczogcmVxdWVzdC5jcmVkZW50aWFscyxcbiAgICAgIC8vIGNhY2hlIG1vZGUgcmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZS5cbiAgICAgIGNhY2hlOiByZXF1ZXN0LmNhY2hlLFxuICAgICAgLy8gcmVkaXJlY3QgbW9kZSByZXF1ZXN0XHUyMDE5cyByZWRpcmVjdCBtb2RlLlxuICAgICAgcmVkaXJlY3Q6IHJlcXVlc3QucmVkaXJlY3QsXG4gICAgICAvLyBpbnRlZ3JpdHkgbWV0YWRhdGEgcmVxdWVzdFx1MjAxOXMgaW50ZWdyaXR5IG1ldGFkYXRhLlxuICAgICAgaW50ZWdyaXR5OiByZXF1ZXN0LmludGVncml0eSxcbiAgICAgIC8vIGtlZXBhbGl2ZSByZXF1ZXN0XHUyMDE5cyBrZWVwYWxpdmUuXG4gICAgICBrZWVwYWxpdmU6IHJlcXVlc3Qua2VlcGFsaXZlLFxuICAgICAgLy8gcmVsb2FkLW5hdmlnYXRpb24gZmxhZyByZXF1ZXN0XHUyMDE5cyByZWxvYWQtbmF2aWdhdGlvbiBmbGFnLlxuICAgICAgcmVsb2FkTmF2aWdhdGlvbjogcmVxdWVzdC5yZWxvYWROYXZpZ2F0aW9uLFxuICAgICAgLy8gaGlzdG9yeS1uYXZpZ2F0aW9uIGZsYWcgcmVxdWVzdFx1MjAxOXMgaGlzdG9yeS1uYXZpZ2F0aW9uIGZsYWcuXG4gICAgICBoaXN0b3J5TmF2aWdhdGlvbjogcmVxdWVzdC5oaXN0b3J5TmF2aWdhdGlvbixcbiAgICAgIC8vIFVSTCBsaXN0IEEgY2xvbmUgb2YgcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3QuXG4gICAgICB1cmxMaXN0OiBbLi4ucmVxdWVzdC51cmxMaXN0XVxuICAgIH0pXG5cbiAgICBjb25zdCBpbml0SGFzS2V5ID0gT2JqZWN0LmtleXMoaW5pdCkubGVuZ3RoICE9PSAwXG5cbiAgICAvLyAxMy4gSWYgaW5pdCBpcyBub3QgZW1wdHksIHRoZW46XG4gICAgaWYgKGluaXRIYXNLZXkpIHtcbiAgICAgIC8vIDEuIElmIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJuYXZpZ2F0ZVwiLCB0aGVuIHNldCBpdCB0byBcInNhbWUtb3JpZ2luXCIuXG4gICAgICBpZiAocmVxdWVzdC5tb2RlID09PSAnbmF2aWdhdGUnKSB7XG4gICAgICAgIHJlcXVlc3QubW9kZSA9ICdzYW1lLW9yaWdpbidcbiAgICAgIH1cblxuICAgICAgLy8gMi4gVW5zZXQgcmVxdWVzdFx1MjAxOXMgcmVsb2FkLW5hdmlnYXRpb24gZmxhZy5cbiAgICAgIHJlcXVlc3QucmVsb2FkTmF2aWdhdGlvbiA9IGZhbHNlXG5cbiAgICAgIC8vIDMuIFVuc2V0IHJlcXVlc3RcdTIwMTlzIGhpc3RvcnktbmF2aWdhdGlvbiBmbGFnLlxuICAgICAgcmVxdWVzdC5oaXN0b3J5TmF2aWdhdGlvbiA9IGZhbHNlXG5cbiAgICAgIC8vIDQuIFNldCByZXF1ZXN0XHUyMDE5cyBvcmlnaW4gdG8gXCJjbGllbnRcIi5cbiAgICAgIHJlcXVlc3Qub3JpZ2luID0gJ2NsaWVudCdcblxuICAgICAgLy8gNS4gU2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHRvIFwiY2xpZW50XCJcbiAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSAnY2xpZW50J1xuXG4gICAgICAvLyA2LiBTZXQgcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgcG9saWN5IHRvIHRoZSBlbXB0eSBzdHJpbmcuXG4gICAgICByZXF1ZXN0LnJlZmVycmVyUG9saWN5ID0gJydcblxuICAgICAgLy8gNy4gU2V0IHJlcXVlc3RcdTIwMTlzIFVSTCB0byByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTC5cbiAgICAgIHJlcXVlc3QudXJsID0gcmVxdWVzdC51cmxMaXN0W3JlcXVlc3QudXJsTGlzdC5sZW5ndGggLSAxXVxuXG4gICAgICAvLyA4LiBTZXQgcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3QgdG8gXHUwMEFCIHJlcXVlc3RcdTIwMTlzIFVSTCBcdTAwQkIuXG4gICAgICByZXF1ZXN0LnVybExpc3QgPSBbcmVxdWVzdC51cmxdXG4gICAgfVxuXG4gICAgLy8gMTQuIElmIGluaXRbXCJyZWZlcnJlclwiXSBleGlzdHMsIHRoZW46XG4gICAgaWYgKGluaXQucmVmZXJyZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gMS4gTGV0IHJlZmVycmVyIGJlIGluaXRbXCJyZWZlcnJlclwiXS5cbiAgICAgIGNvbnN0IHJlZmVycmVyID0gaW5pdC5yZWZlcnJlclxuXG4gICAgICAvLyAyLiBJZiByZWZlcnJlciBpcyB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyByZWZlcnJlciB0byBcIm5vLXJlZmVycmVyXCIuXG4gICAgICBpZiAocmVmZXJyZXIgPT09ICcnKSB7XG4gICAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSAnbm8tcmVmZXJyZXInXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyAxLiBMZXQgcGFyc2VkUmVmZXJyZXIgYmUgdGhlIHJlc3VsdCBvZiBwYXJzaW5nIHJlZmVycmVyIHdpdGhcbiAgICAgICAgLy8gYmFzZVVSTC5cbiAgICAgICAgLy8gMi4gSWYgcGFyc2VkUmVmZXJyZXIgaXMgZmFpbHVyZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAgICAgbGV0IHBhcnNlZFJlZmVycmVyXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgcGFyc2VkUmVmZXJyZXIgPSBuZXcgVVJMKHJlZmVycmVyLCBiYXNlVXJsKVxuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBSZWZlcnJlciBcIiR7cmVmZXJyZXJ9XCIgaXMgbm90IGEgdmFsaWQgVVJMLmAsIHsgY2F1c2U6IGVyciB9KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMy4gSWYgb25lIG9mIHRoZSBmb2xsb3dpbmcgaXMgdHJ1ZVxuICAgICAgICAvLyAtIHBhcnNlZFJlZmVycmVyXHUyMDE5cyBzY2hlbWUgaXMgXCJhYm91dFwiIGFuZCBwYXRoIGlzIHRoZSBzdHJpbmcgXCJjbGllbnRcIlxuICAgICAgICAvLyAtIHBhcnNlZFJlZmVycmVyXHUyMDE5cyBvcmlnaW4gaXMgbm90IHNhbWUgb3JpZ2luIHdpdGggb3JpZ2luXG4gICAgICAgIC8vIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHRvIFwiY2xpZW50XCIuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAocGFyc2VkUmVmZXJyZXIucHJvdG9jb2wgPT09ICdhYm91dDonICYmIHBhcnNlZFJlZmVycmVyLmhvc3RuYW1lID09PSAnY2xpZW50JykgfHxcbiAgICAgICAgICAob3JpZ2luICYmICFzYW1lT3JpZ2luKHBhcnNlZFJlZmVycmVyLCB0aGlzW2tSZWFsbV0uc2V0dGluZ3NPYmplY3QuYmFzZVVybCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSAnY2xpZW50J1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIDQuIE90aGVyd2lzZSwgc2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHRvIHBhcnNlZFJlZmVycmVyLlxuICAgICAgICAgIHJlcXVlc3QucmVmZXJyZXIgPSBwYXJzZWRSZWZlcnJlclxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gMTUuIElmIGluaXRbXCJyZWZlcnJlclBvbGljeVwiXSBleGlzdHMsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeVxuICAgIC8vIHRvIGl0LlxuICAgIGlmIChpbml0LnJlZmVycmVyUG9saWN5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlcXVlc3QucmVmZXJyZXJQb2xpY3kgPSBpbml0LnJlZmVycmVyUG9saWN5XG4gICAgfVxuXG4gICAgLy8gMTYuIExldCBtb2RlIGJlIGluaXRbXCJtb2RlXCJdIGlmIGl0IGV4aXN0cywgYW5kIGZhbGxiYWNrTW9kZSBvdGhlcndpc2UuXG4gICAgbGV0IG1vZGVcbiAgICBpZiAoaW5pdC5tb2RlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG1vZGUgPSBpbml0Lm1vZGVcbiAgICB9IGVsc2Uge1xuICAgICAgbW9kZSA9IGZhbGxiYWNrTW9kZVxuICAgIH1cblxuICAgIC8vIDE3LiBJZiBtb2RlIGlzIFwibmF2aWdhdGVcIiwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAobW9kZSA9PT0gJ25hdmlnYXRlJykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdSZXF1ZXN0IGNvbnN0cnVjdG9yJyxcbiAgICAgICAgbWVzc2FnZTogJ2ludmFsaWQgcmVxdWVzdCBtb2RlIG5hdmlnYXRlLidcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gMTguIElmIG1vZGUgaXMgbm9uLW51bGwsIHNldCByZXF1ZXN0XHUyMDE5cyBtb2RlIHRvIG1vZGUuXG4gICAgaWYgKG1vZGUgIT0gbnVsbCkge1xuICAgICAgcmVxdWVzdC5tb2RlID0gbW9kZVxuICAgIH1cblxuICAgIC8vIDE5LiBJZiBpbml0W1wiY3JlZGVudGlhbHNcIl0gZXhpc3RzLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyBjcmVkZW50aWFscyBtb2RlXG4gICAgLy8gdG8gaXQuXG4gICAgaWYgKGluaXQuY3JlZGVudGlhbHMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdC5jcmVkZW50aWFscyA9IGluaXQuY3JlZGVudGlhbHNcbiAgICB9XG5cbiAgICAvLyAxOC4gSWYgaW5pdFtcImNhY2hlXCJdIGV4aXN0cywgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSB0byBpdC5cbiAgICBpZiAoaW5pdC5jYWNoZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXF1ZXN0LmNhY2hlID0gaW5pdC5jYWNoZVxuICAgIH1cblxuICAgIC8vIDIxLiBJZiByZXF1ZXN0XHUyMDE5cyBjYWNoZSBtb2RlIGlzIFwib25seS1pZi1jYWNoZWRcIiBhbmQgcmVxdWVzdFx1MjAxOXMgbW9kZSBpc1xuICAgIC8vIG5vdCBcInNhbWUtb3JpZ2luXCIsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgaWYgKHJlcXVlc3QuY2FjaGUgPT09ICdvbmx5LWlmLWNhY2hlZCcgJiYgcmVxdWVzdC5tb2RlICE9PSAnc2FtZS1vcmlnaW4nKSB7XG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICBcIidvbmx5LWlmLWNhY2hlZCcgY2FuIGJlIHNldCBvbmx5IHdpdGggJ3NhbWUtb3JpZ2luJyBtb2RlXCJcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyAyMi4gSWYgaW5pdFtcInJlZGlyZWN0XCJdIGV4aXN0cywgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgbW9kZSB0byBpdC5cbiAgICBpZiAoaW5pdC5yZWRpcmVjdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXF1ZXN0LnJlZGlyZWN0ID0gaW5pdC5yZWRpcmVjdFxuICAgIH1cblxuICAgIC8vIDIzLiBJZiBpbml0W1wiaW50ZWdyaXR5XCJdIGV4aXN0cywgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgaW50ZWdyaXR5IG1ldGFkYXRhIHRvIGl0LlxuICAgIGlmIChpbml0LmludGVncml0eSAhPSBudWxsKSB7XG4gICAgICByZXF1ZXN0LmludGVncml0eSA9IFN0cmluZyhpbml0LmludGVncml0eSlcbiAgICB9XG5cbiAgICAvLyAyNC4gSWYgaW5pdFtcImtlZXBhbGl2ZVwiXSBleGlzdHMsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIGtlZXBhbGl2ZSB0byBpdC5cbiAgICBpZiAoaW5pdC5rZWVwYWxpdmUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVxdWVzdC5rZWVwYWxpdmUgPSBCb29sZWFuKGluaXQua2VlcGFsaXZlKVxuICAgIH1cblxuICAgIC8vIDI1LiBJZiBpbml0W1wibWV0aG9kXCJdIGV4aXN0cywgdGhlbjpcbiAgICBpZiAoaW5pdC5tZXRob2QgIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gMS4gTGV0IG1ldGhvZCBiZSBpbml0W1wibWV0aG9kXCJdLlxuICAgICAgbGV0IG1ldGhvZCA9IGluaXQubWV0aG9kXG5cbiAgICAgIC8vIDIuIElmIG1ldGhvZCBpcyBub3QgYSBtZXRob2Qgb3IgbWV0aG9kIGlzIGEgZm9yYmlkZGVuIG1ldGhvZCwgdGhlblxuICAgICAgLy8gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAoIWlzVmFsaWRIVFRQVG9rZW4obWV0aG9kKSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGAnJHttZXRob2R9JyBpcyBub3QgYSB2YWxpZCBIVFRQIG1ldGhvZC5gKVxuICAgICAgfVxuXG4gICAgICBpZiAoZm9yYmlkZGVuTWV0aG9kc1NldC5oYXMobWV0aG9kLnRvVXBwZXJDYXNlKCkpKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYCcke21ldGhvZH0nIEhUVFAgbWV0aG9kIGlzIHVuc3VwcG9ydGVkLmApXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIE5vcm1hbGl6ZSBtZXRob2QuXG4gICAgICBtZXRob2QgPSBub3JtYWxpemVNZXRob2RSZWNvcmRbbWV0aG9kXSA/PyBub3JtYWxpemVNZXRob2QobWV0aG9kKVxuXG4gICAgICAvLyA0LiBTZXQgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIHRvIG1ldGhvZC5cbiAgICAgIHJlcXVlc3QubWV0aG9kID0gbWV0aG9kXG4gICAgfVxuXG4gICAgLy8gMjYuIElmIGluaXRbXCJzaWduYWxcIl0gZXhpc3RzLCB0aGVuIHNldCBzaWduYWwgdG8gaXQuXG4gICAgaWYgKGluaXQuc2lnbmFsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNpZ25hbCA9IGluaXQuc2lnbmFsXG4gICAgfVxuXG4gICAgLy8gMjcuIFNldCB0aGlzXHUyMDE5cyByZXF1ZXN0IHRvIHJlcXVlc3QuXG4gICAgdGhpc1trU3RhdGVdID0gcmVxdWVzdFxuXG4gICAgLy8gMjguIFNldCB0aGlzXHUyMDE5cyBzaWduYWwgdG8gYSBuZXcgQWJvcnRTaWduYWwgb2JqZWN0IHdpdGggdGhpc1x1MjAxOXMgcmVsZXZhbnRcbiAgICAvLyBSZWFsbS5cbiAgICAvLyBUT0RPOiBjb3VsZCB0aGlzIGJlIHNpbXBsaWZpZWQgd2l0aCBBYm9ydFNpZ25hbC5hbnlcbiAgICAvLyAoaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNkb20tYWJvcnRzaWduYWwtYW55KVxuICAgIGNvbnN0IGFjID0gbmV3IEFib3J0Q29udHJvbGxlcigpXG4gICAgdGhpc1trU2lnbmFsXSA9IGFjLnNpZ25hbFxuICAgIHRoaXNba1NpZ25hbF1ba1JlYWxtXSA9IHRoaXNba1JlYWxtXVxuXG4gICAgLy8gMjkuIElmIHNpZ25hbCBpcyBub3QgbnVsbCwgdGhlbiBtYWtlIHRoaXNcdTIwMTlzIHNpZ25hbCBmb2xsb3cgc2lnbmFsLlxuICAgIGlmIChzaWduYWwgIT0gbnVsbCkge1xuICAgICAgaWYgKFxuICAgICAgICAhc2lnbmFsIHx8XG4gICAgICAgIHR5cGVvZiBzaWduYWwuYWJvcnRlZCAhPT0gJ2Jvb2xlYW4nIHx8XG4gICAgICAgIHR5cGVvZiBzaWduYWwuYWRkRXZlbnRMaXN0ZW5lciAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICAgXCJGYWlsZWQgdG8gY29uc3RydWN0ICdSZXF1ZXN0JzogbWVtYmVyIHNpZ25hbCBpcyBub3Qgb2YgdHlwZSBBYm9ydFNpZ25hbC5cIlxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIGlmIChzaWduYWwuYWJvcnRlZCkge1xuICAgICAgICBhYy5hYm9ydChzaWduYWwucmVhc29uKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gS2VlcCBhIHN0cm9uZyByZWYgdG8gYWMgd2hpbGUgcmVxdWVzdCBvYmplY3RcbiAgICAgICAgLy8gaXMgYWxpdmUuIFRoaXMgaXMgbmVlZGVkIHRvIHByZXZlbnQgQWJvcnRDb250cm9sbGVyXG4gICAgICAgIC8vIGZyb20gYmVpbmcgcHJlbWF0dXJlbHkgZ2FyYmFnZSBjb2xsZWN0ZWQuXG4gICAgICAgIC8vIFNlZSwgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvaXNzdWVzLzE5MjYuXG4gICAgICAgIHRoaXNba0Fib3J0Q29udHJvbGxlcl0gPSBhY1xuXG4gICAgICAgIGNvbnN0IGFjUmVmID0gbmV3IFdlYWtSZWYoYWMpXG4gICAgICAgIGNvbnN0IGFib3J0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGNvbnN0IGFjID0gYWNSZWYuZGVyZWYoKVxuICAgICAgICAgIGlmIChhYyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBhYy5hYm9ydCh0aGlzLnJlYXNvbilcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaGlyZC1wYXJ0eSBBYm9ydENvbnRyb2xsZXJzIG1heSBub3Qgd29yayB3aXRoIHRoZXNlLlxuICAgICAgICAvLyBTZWUsIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL3B1bGwvMTkxMCNpc3N1ZWNvbW1lbnQtMTQ2NDQ5NTYxOS5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAvLyBJZiB0aGUgbWF4IGFtb3VudCBvZiBsaXN0ZW5lcnMgaXMgZXF1YWwgdG8gdGhlIGRlZmF1bHQsIGluY3JlYXNlIGl0XG4gICAgICAgICAgLy8gVGhpcyBpcyBvbmx5IGF2YWlsYWJsZSBpbiBub2RlID49IHYxOS45LjBcbiAgICAgICAgICBpZiAodHlwZW9mIGdldE1heExpc3RlbmVycyA9PT0gJ2Z1bmN0aW9uJyAmJiBnZXRNYXhMaXN0ZW5lcnMoc2lnbmFsKSA9PT0gZGVmYXVsdE1heExpc3RlbmVycykge1xuICAgICAgICAgICAgc2V0TWF4TGlzdGVuZXJzKDEwMCwgc2lnbmFsKVxuICAgICAgICAgIH0gZWxzZSBpZiAoZ2V0RXZlbnRMaXN0ZW5lcnMoc2lnbmFsLCAnYWJvcnQnKS5sZW5ndGggPj0gZGVmYXVsdE1heExpc3RlbmVycykge1xuICAgICAgICAgICAgc2V0TWF4TGlzdGVuZXJzKDEwMCwgc2lnbmFsKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCB7fVxuXG4gICAgICAgIHV0aWwuYWRkQWJvcnRMaXN0ZW5lcihzaWduYWwsIGFib3J0KVxuICAgICAgICByZXF1ZXN0RmluYWxpemVyLnJlZ2lzdGVyKGFjLCB7IHNpZ25hbCwgYWJvcnQgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAzMC4gU2V0IHRoaXNcdTIwMTlzIGhlYWRlcnMgdG8gYSBuZXcgSGVhZGVycyBvYmplY3Qgd2l0aCB0aGlzXHUyMDE5cyByZWxldmFudFxuICAgIC8vIFJlYWxtLCB3aG9zZSBoZWFkZXIgbGlzdCBpcyByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBhbmQgZ3VhcmQgaXNcbiAgICAvLyBcInJlcXVlc3RcIi5cbiAgICB0aGlzW2tIZWFkZXJzXSA9IG5ldyBIZWFkZXJzKGtDb25zdHJ1Y3QpXG4gICAgdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XSA9IHJlcXVlc3QuaGVhZGVyc0xpc3RcbiAgICB0aGlzW2tIZWFkZXJzXVtrR3VhcmRdID0gJ3JlcXVlc3QnXG4gICAgdGhpc1trSGVhZGVyc11ba1JlYWxtXSA9IHRoaXNba1JlYWxtXVxuXG4gICAgLy8gMzEuIElmIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJuby1jb3JzXCIsIHRoZW46XG4gICAgaWYgKG1vZGUgPT09ICduby1jb3JzJykge1xuICAgICAgLy8gMS4gSWYgdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIGlzIG5vdCBhIENPUlMtc2FmZWxpc3RlZCBtZXRob2QsXG4gICAgICAvLyB0aGVuIHRocm93IGEgVHlwZUVycm9yLlxuICAgICAgaWYgKCFjb3JzU2FmZUxpc3RlZE1ldGhvZHNTZXQuaGFzKHJlcXVlc3QubWV0aG9kKSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgIGAnJHtyZXF1ZXN0Lm1ldGhvZH0gaXMgdW5zdXBwb3J0ZWQgaW4gbm8tY29ycyBtb2RlLmBcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICAvLyAyLiBTZXQgdGhpc1x1MjAxOXMgaGVhZGVyc1x1MjAxOXMgZ3VhcmQgdG8gXCJyZXF1ZXN0LW5vLWNvcnNcIi5cbiAgICAgIHRoaXNba0hlYWRlcnNdW2tHdWFyZF0gPSAncmVxdWVzdC1uby1jb3JzJ1xuICAgIH1cblxuICAgIC8vIDMyLiBJZiBpbml0IGlzIG5vdCBlbXB0eSwgdGhlbjpcbiAgICBpZiAoaW5pdEhhc0tleSkge1xuICAgICAgLyoqIEB0eXBlIHtIZWFkZXJzTGlzdH0gKi9cbiAgICAgIGNvbnN0IGhlYWRlcnNMaXN0ID0gdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XVxuICAgICAgLy8gMS4gTGV0IGhlYWRlcnMgYmUgYSBjb3B5IG9mIHRoaXNcdTIwMTlzIGhlYWRlcnMgYW5kIGl0cyBhc3NvY2lhdGVkIGhlYWRlclxuICAgICAgLy8gbGlzdC5cbiAgICAgIC8vIDIuIElmIGluaXRbXCJoZWFkZXJzXCJdIGV4aXN0cywgdGhlbiBzZXQgaGVhZGVycyB0byBpbml0W1wiaGVhZGVyc1wiXS5cbiAgICAgIGNvbnN0IGhlYWRlcnMgPSBpbml0LmhlYWRlcnMgIT09IHVuZGVmaW5lZCA/IGluaXQuaGVhZGVycyA6IG5ldyBIZWFkZXJzTGlzdChoZWFkZXJzTGlzdClcblxuICAgICAgLy8gMy4gRW1wdHkgdGhpc1x1MjAxOXMgaGVhZGVyc1x1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICBoZWFkZXJzTGlzdC5jbGVhcigpXG5cbiAgICAgIC8vIDQuIElmIGhlYWRlcnMgaXMgYSBIZWFkZXJzIG9iamVjdCwgdGhlbiBmb3IgZWFjaCBoZWFkZXIgaW4gaXRzIGhlYWRlclxuICAgICAgLy8gbGlzdCwgYXBwZW5kIGhlYWRlclx1MjAxOXMgbmFtZS9oZWFkZXJcdTIwMTlzIHZhbHVlIHRvIHRoaXNcdTIwMTlzIGhlYWRlcnMuXG4gICAgICBpZiAoaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnNMaXN0KSB7XG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsXSBvZiBoZWFkZXJzKSB7XG4gICAgICAgICAgaGVhZGVyc0xpc3QuYXBwZW5kKGtleSwgdmFsKVxuICAgICAgICB9XG4gICAgICAgIC8vIE5vdGU6IENvcHkgdGhlIGBzZXQtY29va2llYCBtZXRhLWRhdGEuXG4gICAgICAgIGhlYWRlcnNMaXN0LmNvb2tpZXMgPSBoZWFkZXJzLmNvb2tpZXNcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIDUuIE90aGVyd2lzZSwgZmlsbCB0aGlzXHUyMDE5cyBoZWFkZXJzIHdpdGggaGVhZGVycy5cbiAgICAgICAgZmlsbEhlYWRlcnModGhpc1trSGVhZGVyc10sIGhlYWRlcnMpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gMzMuIExldCBpbnB1dEJvZHkgYmUgaW5wdXRcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGJvZHkgaWYgaW5wdXQgaXMgYSBSZXF1ZXN0XG4gICAgLy8gb2JqZWN0OyBvdGhlcndpc2UgbnVsbC5cbiAgICBjb25zdCBpbnB1dEJvZHkgPSBpbnB1dCBpbnN0YW5jZW9mIFJlcXVlc3QgPyBpbnB1dFtrU3RhdGVdLmJvZHkgOiBudWxsXG5cbiAgICAvLyAzNC4gSWYgZWl0aGVyIGluaXRbXCJib2R5XCJdIGV4aXN0cyBhbmQgaXMgbm9uLW51bGwgb3IgaW5wdXRCb2R5IGlzXG4gICAgLy8gbm9uLW51bGwsIGFuZCByZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgYEdFVGAgb3IgYEhFQURgLCB0aGVuIHRocm93IGFcbiAgICAvLyBUeXBlRXJyb3IuXG4gICAgaWYgKFxuICAgICAgKGluaXQuYm9keSAhPSBudWxsIHx8IGlucHV0Qm9keSAhPSBudWxsKSAmJlxuICAgICAgKHJlcXVlc3QubWV0aG9kID09PSAnR0VUJyB8fCByZXF1ZXN0Lm1ldGhvZCA9PT0gJ0hFQUQnKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignUmVxdWVzdCB3aXRoIEdFVC9IRUFEIG1ldGhvZCBjYW5ub3QgaGF2ZSBib2R5LicpXG4gICAgfVxuXG4gICAgLy8gMzUuIExldCBpbml0Qm9keSBiZSBudWxsLlxuICAgIGxldCBpbml0Qm9keSA9IG51bGxcblxuICAgIC8vIDM2LiBJZiBpbml0W1wiYm9keVwiXSBleGlzdHMgYW5kIGlzIG5vbi1udWxsLCB0aGVuOlxuICAgIGlmIChpbml0LmJvZHkgIT0gbnVsbCkge1xuICAgICAgLy8gMS4gTGV0IENvbnRlbnQtVHlwZSBiZSBudWxsLlxuICAgICAgLy8gMi4gU2V0IGluaXRCb2R5IGFuZCBDb250ZW50LVR5cGUgdG8gdGhlIHJlc3VsdCBvZiBleHRyYWN0aW5nXG4gICAgICAvLyBpbml0W1wiYm9keVwiXSwgd2l0aCBrZWVwYWxpdmUgc2V0IHRvIHJlcXVlc3RcdTIwMTlzIGtlZXBhbGl2ZS5cbiAgICAgIGNvbnN0IFtleHRyYWN0ZWRCb2R5LCBjb250ZW50VHlwZV0gPSBleHRyYWN0Qm9keShcbiAgICAgICAgaW5pdC5ib2R5LFxuICAgICAgICByZXF1ZXN0LmtlZXBhbGl2ZVxuICAgICAgKVxuICAgICAgaW5pdEJvZHkgPSBleHRyYWN0ZWRCb2R5XG5cbiAgICAgIC8vIDMsIElmIENvbnRlbnQtVHlwZSBpcyBub24tbnVsbCBhbmQgdGhpc1x1MjAxOXMgaGVhZGVyc1x1MjAxOXMgaGVhZGVyIGxpc3QgZG9lc1xuICAgICAgLy8gbm90IGNvbnRhaW4gYENvbnRlbnQtVHlwZWAsIHRoZW4gYXBwZW5kIGBDb250ZW50LVR5cGVgL0NvbnRlbnQtVHlwZSB0b1xuICAgICAgLy8gdGhpc1x1MjAxOXMgaGVhZGVycy5cbiAgICAgIGlmIChjb250ZW50VHlwZSAmJiAhdGhpc1trSGVhZGVyc11ba0hlYWRlcnNMaXN0XS5jb250YWlucygnY29udGVudC10eXBlJykpIHtcbiAgICAgICAgdGhpc1trSGVhZGVyc10uYXBwZW5kKCdjb250ZW50LXR5cGUnLCBjb250ZW50VHlwZSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAzNy4gTGV0IGlucHV0T3JJbml0Qm9keSBiZSBpbml0Qm9keSBpZiBpdCBpcyBub24tbnVsbDsgb3RoZXJ3aXNlXG4gICAgLy8gaW5wdXRCb2R5LlxuICAgIGNvbnN0IGlucHV0T3JJbml0Qm9keSA9IGluaXRCb2R5ID8/IGlucHV0Qm9keVxuXG4gICAgLy8gMzguIElmIGlucHV0T3JJbml0Qm9keSBpcyBub24tbnVsbCBhbmQgaW5wdXRPckluaXRCb2R5XHUyMDE5cyBzb3VyY2UgaXNcbiAgICAvLyBudWxsLCB0aGVuOlxuICAgIGlmIChpbnB1dE9ySW5pdEJvZHkgIT0gbnVsbCAmJiBpbnB1dE9ySW5pdEJvZHkuc291cmNlID09IG51bGwpIHtcbiAgICAgIC8vIDEuIElmIGluaXRCb2R5IGlzIG5vbi1udWxsIGFuZCBpbml0W1wiZHVwbGV4XCJdIGRvZXMgbm90IGV4aXN0LFxuICAgICAgLy8gICAgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICAgIGlmIChpbml0Qm9keSAhPSBudWxsICYmIGluaXQuZHVwbGV4ID09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignUmVxdWVzdEluaXQ6IGR1cGxleCBvcHRpb24gaXMgcmVxdWlyZWQgd2hlbiBzZW5kaW5nIGEgYm9keS4nKVxuICAgICAgfVxuXG4gICAgICAvLyAyLiBJZiB0aGlzXHUyMDE5cyByZXF1ZXN0XHUyMDE5cyBtb2RlIGlzIG5laXRoZXIgXCJzYW1lLW9yaWdpblwiIG5vciBcImNvcnNcIixcbiAgICAgIC8vIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAocmVxdWVzdC5tb2RlICE9PSAnc2FtZS1vcmlnaW4nICYmIHJlcXVlc3QubW9kZSAhPT0gJ2NvcnMnKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICAgJ0lmIHJlcXVlc3QgaXMgbWFkZSBmcm9tIFJlYWRhYmxlU3RyZWFtLCBtb2RlIHNob3VsZCBiZSBcInNhbWUtb3JpZ2luXCIgb3IgXCJjb3JzXCInXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gMy4gU2V0IHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHVzZS1DT1JTLXByZWZsaWdodCBmbGFnLlxuICAgICAgcmVxdWVzdC51c2VDT1JTUHJlZmxpZ2h0RmxhZyA9IHRydWVcbiAgICB9XG5cbiAgICAvLyAzOS4gTGV0IGZpbmFsQm9keSBiZSBpbnB1dE9ySW5pdEJvZHkuXG4gICAgbGV0IGZpbmFsQm9keSA9IGlucHV0T3JJbml0Qm9keVxuXG4gICAgLy8gNDAuIElmIGluaXRCb2R5IGlzIG51bGwgYW5kIGlucHV0Qm9keSBpcyBub24tbnVsbCwgdGhlbjpcbiAgICBpZiAoaW5pdEJvZHkgPT0gbnVsbCAmJiBpbnB1dEJvZHkgIT0gbnVsbCkge1xuICAgICAgLy8gMS4gSWYgaW5wdXQgaXMgdW51c2FibGUsIHRoZW4gdGhyb3cgYSBUeXBlRXJyb3IuXG4gICAgICBpZiAodXRpbC5pc0Rpc3R1cmJlZChpbnB1dEJvZHkuc3RyZWFtKSB8fCBpbnB1dEJvZHkuc3RyZWFtLmxvY2tlZCkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgICdDYW5ub3QgY29uc3RydWN0IGEgUmVxdWVzdCB3aXRoIGEgUmVxdWVzdCBvYmplY3QgdGhhdCBoYXMgYWxyZWFkeSBiZWVuIHVzZWQuJ1xuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIFNldCBmaW5hbEJvZHkgdG8gdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIHByb3h5IGZvciBpbnB1dEJvZHkuXG4gICAgICBpZiAoIVRyYW5zZm9ybVN0cmVhbSkge1xuICAgICAgICBUcmFuc2Zvcm1TdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuVHJhbnNmb3JtU3RyZWFtXG4gICAgICB9XG5cbiAgICAgIC8vIGh0dHBzOi8vc3RyZWFtcy5zcGVjLndoYXR3Zy5vcmcvI3JlYWRhYmxlc3RyZWFtLWNyZWF0ZS1hLXByb3h5XG4gICAgICBjb25zdCBpZGVudGl0eVRyYW5zZm9ybSA9IG5ldyBUcmFuc2Zvcm1TdHJlYW0oKVxuICAgICAgaW5wdXRCb2R5LnN0cmVhbS5waXBlVGhyb3VnaChpZGVudGl0eVRyYW5zZm9ybSlcbiAgICAgIGZpbmFsQm9keSA9IHtcbiAgICAgICAgc291cmNlOiBpbnB1dEJvZHkuc291cmNlLFxuICAgICAgICBsZW5ndGg6IGlucHV0Qm9keS5sZW5ndGgsXG4gICAgICAgIHN0cmVhbTogaWRlbnRpdHlUcmFuc2Zvcm0ucmVhZGFibGVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA0MS4gU2V0IHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGJvZHkgdG8gZmluYWxCb2R5LlxuICAgIHRoaXNba1N0YXRlXS5ib2R5ID0gZmluYWxCb2R5XG4gIH1cblxuICAvLyBSZXR1cm5zIHJlcXVlc3RcdTIwMTlzIEhUVFAgbWV0aG9kLCB3aGljaCBpcyBcIkdFVFwiIGJ5IGRlZmF1bHQuXG4gIGdldCBtZXRob2QgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgbWV0aG9kIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIG1ldGhvZC5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLm1ldGhvZFxuICB9XG5cbiAgLy8gUmV0dXJucyB0aGUgVVJMIG9mIHJlcXVlc3QgYXMgYSBzdHJpbmcuXG4gIGdldCB1cmwgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgdXJsIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIFVSTCwgc2VyaWFsaXplZC5cbiAgICByZXR1cm4gVVJMU2VyaWFsaXplcih0aGlzW2tTdGF0ZV0udXJsKVxuICB9XG5cbiAgLy8gUmV0dXJucyBhIEhlYWRlcnMgb2JqZWN0IGNvbnNpc3Rpbmcgb2YgdGhlIGhlYWRlcnMgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QuXG4gIC8vIE5vdGUgdGhhdCBoZWFkZXJzIGFkZGVkIGluIHRoZSBuZXR3b3JrIGxheWVyIGJ5IHRoZSB1c2VyIGFnZW50IHdpbGwgbm90XG4gIC8vIGJlIGFjY291bnRlZCBmb3IgaW4gdGhpcyBvYmplY3QsIGUuZy4sIHRoZSBcIkhvc3RcIiBoZWFkZXIuXG4gIGdldCBoZWFkZXJzICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIGhlYWRlcnMgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgaGVhZGVycy5cbiAgICByZXR1cm4gdGhpc1trSGVhZGVyc11cbiAgfVxuXG4gIC8vIFJldHVybnMgdGhlIGtpbmQgb2YgcmVzb3VyY2UgcmVxdWVzdGVkIGJ5IHJlcXVlc3QsIGUuZy4sIFwiZG9jdW1lbnRcIlxuICAvLyBvciBcInNjcmlwdFwiLlxuICBnZXQgZGVzdGluYXRpb24gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgZGVzdGluYXRpb24gZ2V0dGVyIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgZGVzdGluYXRpb24uXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5kZXN0aW5hdGlvblxuICB9XG5cbiAgLy8gUmV0dXJucyB0aGUgcmVmZXJyZXIgb2YgcmVxdWVzdC4gSXRzIHZhbHVlIGNhbiBiZSBhIHNhbWUtb3JpZ2luIFVSTCBpZlxuICAvLyBleHBsaWNpdGx5IHNldCBpbiBpbml0LCB0aGUgZW1wdHkgc3RyaW5nIHRvIGluZGljYXRlIG5vIHJlZmVycmVyLCBhbmRcbiAgLy8gXCJhYm91dDpjbGllbnRcIiB3aGVuIGRlZmF1bHRpbmcgdG8gdGhlIGdsb2JhbFx1MjAxOXMgZGVmYXVsdC4gVGhpcyBpcyB1c2VkXG4gIC8vIGR1cmluZyBmZXRjaGluZyB0byBkZXRlcm1pbmUgdGhlIHZhbHVlIG9mIHRoZSBgUmVmZXJlcmAgaGVhZGVyIG9mIHRoZVxuICAvLyByZXF1ZXN0IGJlaW5nIG1hZGUuXG4gIGdldCByZWZlcnJlciAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIDEuIElmIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIGlzIFwibm8tcmVmZXJyZXJcIiwgdGhlbiByZXR1cm4gdGhlXG4gICAgLy8gZW1wdHkgc3RyaW5nLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0ucmVmZXJyZXIgPT09ICduby1yZWZlcnJlcicpIHtcbiAgICAgIHJldHVybiAnJ1xuICAgIH1cblxuICAgIC8vIDIuIElmIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIGlzIFwiY2xpZW50XCIsIHRoZW4gcmV0dXJuXG4gICAgLy8gXCJhYm91dDpjbGllbnRcIi5cbiAgICBpZiAodGhpc1trU3RhdGVdLnJlZmVycmVyID09PSAnY2xpZW50Jykge1xuICAgICAgcmV0dXJuICdhYm91dDpjbGllbnQnXG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyLCBzZXJpYWxpemVkLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ucmVmZXJyZXIudG9TdHJpbmcoKVxuICB9XG5cbiAgLy8gUmV0dXJucyB0aGUgcmVmZXJyZXIgcG9saWN5IGFzc29jaWF0ZWQgd2l0aCByZXF1ZXN0LlxuICAvLyBUaGlzIGlzIHVzZWQgZHVyaW5nIGZldGNoaW5nIHRvIGNvbXB1dGUgdGhlIHZhbHVlIG9mIHRoZSByZXF1ZXN0XHUyMDE5c1xuICAvLyByZWZlcnJlci5cbiAgZ2V0IHJlZmVycmVyUG9saWN5ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIHJlZmVycmVyUG9saWN5IGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnJlZmVycmVyUG9saWN5XG4gIH1cblxuICAvLyBSZXR1cm5zIHRoZSBtb2RlIGFzc29jaWF0ZWQgd2l0aCByZXF1ZXN0LCB3aGljaCBpcyBhIHN0cmluZyBpbmRpY2F0aW5nXG4gIC8vIHdoZXRoZXIgdGhlIHJlcXVlc3Qgd2lsbCB1c2UgQ09SUywgb3Igd2lsbCBiZSByZXN0cmljdGVkIHRvIHNhbWUtb3JpZ2luXG4gIC8vIFVSTHMuXG4gIGdldCBtb2RlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIG1vZGUgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgbW9kZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLm1vZGVcbiAgfVxuXG4gIC8vIFJldHVybnMgdGhlIGNyZWRlbnRpYWxzIG1vZGUgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QsXG4gIC8vIHdoaWNoIGlzIGEgc3RyaW5nIGluZGljYXRpbmcgd2hldGhlciBjcmVkZW50aWFscyB3aWxsIGJlIHNlbnQgd2l0aCB0aGVcbiAgLy8gcmVxdWVzdCBhbHdheXMsIG5ldmVyLCBvciBvbmx5IHdoZW4gc2VudCB0byBhIHNhbWUtb3JpZ2luIFVSTC5cbiAgZ2V0IGNyZWRlbnRpYWxzICgpIHtcbiAgICAvLyBUaGUgY3JlZGVudGlhbHMgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgY3JlZGVudGlhbHMgbW9kZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmNyZWRlbnRpYWxzXG4gIH1cblxuICAvLyBSZXR1cm5zIHRoZSBjYWNoZSBtb2RlIGFzc29jaWF0ZWQgd2l0aCByZXF1ZXN0LFxuICAvLyB3aGljaCBpcyBhIHN0cmluZyBpbmRpY2F0aW5nIGhvdyB0aGUgcmVxdWVzdCB3aWxsXG4gIC8vIGludGVyYWN0IHdpdGggdGhlIGJyb3dzZXJcdTIwMTlzIGNhY2hlIHdoZW4gZmV0Y2hpbmcuXG4gIGdldCBjYWNoZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIFRoZSBjYWNoZSBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyByZXF1ZXN0XHUyMDE5cyBjYWNoZSBtb2RlLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uY2FjaGVcbiAgfVxuXG4gIC8vIFJldHVybnMgdGhlIHJlZGlyZWN0IG1vZGUgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QsXG4gIC8vIHdoaWNoIGlzIGEgc3RyaW5nIGluZGljYXRpbmcgaG93IHJlZGlyZWN0cyBmb3IgdGhlXG4gIC8vIHJlcXVlc3Qgd2lsbCBiZSBoYW5kbGVkIGR1cmluZyBmZXRjaGluZy4gQSByZXF1ZXN0XG4gIC8vIHdpbGwgZm9sbG93IHJlZGlyZWN0cyBieSBkZWZhdWx0LlxuICBnZXQgcmVkaXJlY3QgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgcmVkaXJlY3QgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgbW9kZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLnJlZGlyZWN0XG4gIH1cblxuICAvLyBSZXR1cm5zIHJlcXVlc3RcdTIwMTlzIHN1YnJlc291cmNlIGludGVncml0eSBtZXRhZGF0YSwgd2hpY2ggaXMgYVxuICAvLyBjcnlwdG9ncmFwaGljIGhhc2ggb2YgdGhlIHJlc291cmNlIGJlaW5nIGZldGNoZWQuIEl0cyB2YWx1ZVxuICAvLyBjb25zaXN0cyBvZiBtdWx0aXBsZSBoYXNoZXMgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIFtTUkldXG4gIGdldCBpbnRlZ3JpdHkgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgaW50ZWdyaXR5IGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRoaXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGludGVncml0eVxuICAgIC8vIG1ldGFkYXRhLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0uaW50ZWdyaXR5XG4gIH1cblxuICAvLyBSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHJlcXVlc3QgY2FuIG91dGxpdmUgdGhlXG4gIC8vIGdsb2JhbCBpbiB3aGljaCBpdCB3YXMgY3JlYXRlZC5cbiAgZ2V0IGtlZXBhbGl2ZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIFRoZSBrZWVwYWxpdmUgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMga2VlcGFsaXZlLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ua2VlcGFsaXZlXG4gIH1cblxuICAvLyBSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHJlcXVlc3QgaXMgZm9yIGEgcmVsb2FkXG4gIC8vIG5hdmlnYXRpb24uXG4gIGdldCBpc1JlbG9hZE5hdmlnYXRpb24gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFJlcXVlc3QpXG5cbiAgICAvLyBUaGUgaXNSZWxvYWROYXZpZ2F0aW9uIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRydWUgaWYgdGhpc1x1MjAxOXNcbiAgICAvLyByZXF1ZXN0XHUyMDE5cyByZWxvYWQtbmF2aWdhdGlvbiBmbGFnIGlzIHNldDsgb3RoZXJ3aXNlIGZhbHNlLlxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0ucmVsb2FkTmF2aWdhdGlvblxuICB9XG5cbiAgLy8gUmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIG9yIG5vdCByZXF1ZXN0IGlzIGZvciBhIGhpc3RvcnlcbiAgLy8gbmF2aWdhdGlvbiAoYS5rLmEuIGJhY2stZm93YXJkIG5hdmlnYXRpb24pLlxuICBnZXQgaXNIaXN0b3J5TmF2aWdhdGlvbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUmVxdWVzdClcblxuICAgIC8vIFRoZSBpc0hpc3RvcnlOYXZpZ2F0aW9uIGdldHRlciBzdGVwcyBhcmUgdG8gcmV0dXJuIHRydWUgaWYgdGhpc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXNcbiAgICAvLyBoaXN0b3J5LW5hdmlnYXRpb24gZmxhZyBpcyBzZXQ7IG90aGVyd2lzZSBmYWxzZS5cbiAgICByZXR1cm4gdGhpc1trU3RhdGVdLmhpc3RvcnlOYXZpZ2F0aW9uXG4gIH1cblxuICAvLyBSZXR1cm5zIHRoZSBzaWduYWwgYXNzb2NpYXRlZCB3aXRoIHJlcXVlc3QsIHdoaWNoIGlzIGFuIEFib3J0U2lnbmFsXG4gIC8vIG9iamVjdCBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHJlcXVlc3QgaGFzIGJlZW4gYWJvcnRlZCwgYW5kIGl0c1xuICAvLyBhYm9ydCBldmVudCBoYW5kbGVyLlxuICBnZXQgc2lnbmFsICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gVGhlIHNpZ25hbCBnZXR0ZXIgc3RlcHMgYXJlIHRvIHJldHVybiB0aGlzXHUyMDE5cyBzaWduYWwuXG4gICAgcmV0dXJuIHRoaXNba1NpZ25hbF1cbiAgfVxuXG4gIGdldCBib2R5ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5ib2R5ID8gdGhpc1trU3RhdGVdLmJvZHkuc3RyZWFtIDogbnVsbFxuICB9XG5cbiAgZ2V0IGJvZHlVc2VkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgcmV0dXJuICEhdGhpc1trU3RhdGVdLmJvZHkgJiYgdXRpbC5pc0Rpc3R1cmJlZCh0aGlzW2tTdGF0ZV0uYm9keS5zdHJlYW0pXG4gIH1cblxuICBnZXQgZHVwbGV4ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgcmV0dXJuICdoYWxmJ1xuICB9XG5cbiAgLy8gUmV0dXJucyBhIGNsb25lIG9mIHJlcXVlc3QuXG4gIGNsb25lICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBSZXF1ZXN0KVxuXG4gICAgLy8gMS4gSWYgdGhpcyBpcyB1bnVzYWJsZSwgdGhlbiB0aHJvdyBhIFR5cGVFcnJvci5cbiAgICBpZiAodGhpcy5ib2R5VXNlZCB8fCB0aGlzLmJvZHk/LmxvY2tlZCkge1xuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigndW51c2FibGUnKVxuICAgIH1cblxuICAgIC8vIDIuIExldCBjbG9uZWRSZXF1ZXN0IGJlIHRoZSByZXN1bHQgb2YgY2xvbmluZyB0aGlzXHUyMDE5cyByZXF1ZXN0LlxuICAgIGNvbnN0IGNsb25lZFJlcXVlc3QgPSBjbG9uZVJlcXVlc3QodGhpc1trU3RhdGVdKVxuXG4gICAgLy8gMy4gTGV0IGNsb25lZFJlcXVlc3RPYmplY3QgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhIFJlcXVlc3Qgb2JqZWN0LFxuICAgIC8vIGdpdmVuIGNsb25lZFJlcXVlc3QsIHRoaXNcdTIwMTlzIGhlYWRlcnNcdTIwMTlzIGd1YXJkLCBhbmQgdGhpc1x1MjAxOXMgcmVsZXZhbnQgUmVhbG0uXG4gICAgY29uc3QgY2xvbmVkUmVxdWVzdE9iamVjdCA9IG5ldyBSZXF1ZXN0KGtDb25zdHJ1Y3QpXG4gICAgY2xvbmVkUmVxdWVzdE9iamVjdFtrU3RhdGVdID0gY2xvbmVkUmVxdWVzdFxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba1JlYWxtXSA9IHRoaXNba1JlYWxtXVxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba0hlYWRlcnNdID0gbmV3IEhlYWRlcnMoa0NvbnN0cnVjdClcbiAgICBjbG9uZWRSZXF1ZXN0T2JqZWN0W2tIZWFkZXJzXVtrSGVhZGVyc0xpc3RdID0gY2xvbmVkUmVxdWVzdC5oZWFkZXJzTGlzdFxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba0hlYWRlcnNdW2tHdWFyZF0gPSB0aGlzW2tIZWFkZXJzXVtrR3VhcmRdXG4gICAgY2xvbmVkUmVxdWVzdE9iamVjdFtrSGVhZGVyc11ba1JlYWxtXSA9IHRoaXNba0hlYWRlcnNdW2tSZWFsbV1cblxuICAgIC8vIDQuIE1ha2UgY2xvbmVkUmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsIGZvbGxvdyB0aGlzXHUyMDE5cyBzaWduYWwuXG4gICAgY29uc3QgYWMgPSBuZXcgQWJvcnRDb250cm9sbGVyKClcbiAgICBpZiAodGhpcy5zaWduYWwuYWJvcnRlZCkge1xuICAgICAgYWMuYWJvcnQodGhpcy5zaWduYWwucmVhc29uKVxuICAgIH0gZWxzZSB7XG4gICAgICB1dGlsLmFkZEFib3J0TGlzdGVuZXIoXG4gICAgICAgIHRoaXMuc2lnbmFsLFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgYWMuYWJvcnQodGhpcy5zaWduYWwucmVhc29uKVxuICAgICAgICB9XG4gICAgICApXG4gICAgfVxuICAgIGNsb25lZFJlcXVlc3RPYmplY3Rba1NpZ25hbF0gPSBhYy5zaWduYWxcblxuICAgIC8vIDQuIFJldHVybiBjbG9uZWRSZXF1ZXN0T2JqZWN0LlxuICAgIHJldHVybiBjbG9uZWRSZXF1ZXN0T2JqZWN0XG4gIH1cbn1cblxubWl4aW5Cb2R5KFJlcXVlc3QpXG5cbmZ1bmN0aW9uIG1ha2VSZXF1ZXN0IChpbml0KSB7XG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0c1xuICBjb25zdCByZXF1ZXN0ID0ge1xuICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgbG9jYWxVUkxzT25seTogZmFsc2UsXG4gICAgdW5zYWZlUmVxdWVzdDogZmFsc2UsXG4gICAgYm9keTogbnVsbCxcbiAgICBjbGllbnQ6IG51bGwsXG4gICAgcmVzZXJ2ZWRDbGllbnQ6IG51bGwsXG4gICAgcmVwbGFjZXNDbGllbnRJZDogJycsXG4gICAgd2luZG93OiAnY2xpZW50JyxcbiAgICBrZWVwYWxpdmU6IGZhbHNlLFxuICAgIHNlcnZpY2VXb3JrZXJzOiAnYWxsJyxcbiAgICBpbml0aWF0b3I6ICcnLFxuICAgIGRlc3RpbmF0aW9uOiAnJyxcbiAgICBwcmlvcml0eTogbnVsbCxcbiAgICBvcmlnaW46ICdjbGllbnQnLFxuICAgIHBvbGljeUNvbnRhaW5lcjogJ2NsaWVudCcsXG4gICAgcmVmZXJyZXI6ICdjbGllbnQnLFxuICAgIHJlZmVycmVyUG9saWN5OiAnJyxcbiAgICBtb2RlOiAnbm8tY29ycycsXG4gICAgdXNlQ09SU1ByZWZsaWdodEZsYWc6IGZhbHNlLFxuICAgIGNyZWRlbnRpYWxzOiAnc2FtZS1vcmlnaW4nLFxuICAgIHVzZUNyZWRlbnRpYWxzOiBmYWxzZSxcbiAgICBjYWNoZTogJ2RlZmF1bHQnLFxuICAgIHJlZGlyZWN0OiAnZm9sbG93JyxcbiAgICBpbnRlZ3JpdHk6ICcnLFxuICAgIGNyeXB0b0dyYXBoaWNzTm9uY2VNZXRhZGF0YTogJycsXG4gICAgcGFyc2VyTWV0YWRhdGE6ICcnLFxuICAgIHJlbG9hZE5hdmlnYXRpb246IGZhbHNlLFxuICAgIGhpc3RvcnlOYXZpZ2F0aW9uOiBmYWxzZSxcbiAgICB1c2VyQWN0aXZhdGlvbjogZmFsc2UsXG4gICAgdGFpbnRlZE9yaWdpbjogZmFsc2UsXG4gICAgcmVkaXJlY3RDb3VudDogMCxcbiAgICByZXNwb25zZVRhaW50aW5nOiAnYmFzaWMnLFxuICAgIHByZXZlbnROb0NhY2hlQ2FjaGVDb250cm9sSGVhZGVyTW9kaWZpY2F0aW9uOiBmYWxzZSxcbiAgICBkb25lOiBmYWxzZSxcbiAgICB0aW1pbmdBbGxvd0ZhaWxlZDogZmFsc2UsXG4gICAgLi4uaW5pdCxcbiAgICBoZWFkZXJzTGlzdDogaW5pdC5oZWFkZXJzTGlzdFxuICAgICAgPyBuZXcgSGVhZGVyc0xpc3QoaW5pdC5oZWFkZXJzTGlzdClcbiAgICAgIDogbmV3IEhlYWRlcnNMaXN0KClcbiAgfVxuICByZXF1ZXN0LnVybCA9IHJlcXVlc3QudXJsTGlzdFswXVxuICByZXR1cm4gcmVxdWVzdFxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1yZXF1ZXN0LWNsb25lXG5mdW5jdGlvbiBjbG9uZVJlcXVlc3QgKHJlcXVlc3QpIHtcbiAgLy8gVG8gY2xvbmUgYSByZXF1ZXN0IHJlcXVlc3QsIHJ1biB0aGVzZSBzdGVwczpcblxuICAvLyAxLiBMZXQgbmV3UmVxdWVzdCBiZSBhIGNvcHkgb2YgcmVxdWVzdCwgZXhjZXB0IGZvciBpdHMgYm9keS5cbiAgY29uc3QgbmV3UmVxdWVzdCA9IG1ha2VSZXF1ZXN0KHsgLi4ucmVxdWVzdCwgYm9keTogbnVsbCB9KVxuXG4gIC8vIDIuIElmIHJlcXVlc3RcdTIwMTlzIGJvZHkgaXMgbm9uLW51bGwsIHNldCBuZXdSZXF1ZXN0XHUyMDE5cyBib2R5IHRvIHRoZVxuICAvLyByZXN1bHQgb2YgY2xvbmluZyByZXF1ZXN0XHUyMDE5cyBib2R5LlxuICBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwpIHtcbiAgICBuZXdSZXF1ZXN0LmJvZHkgPSBjbG9uZUJvZHkocmVxdWVzdC5ib2R5KVxuICB9XG5cbiAgLy8gMy4gUmV0dXJuIG5ld1JlcXVlc3QuXG4gIHJldHVybiBuZXdSZXF1ZXN0XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFJlcXVlc3QucHJvdG90eXBlLCB7XG4gIG1ldGhvZDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgdXJsOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBoZWFkZXJzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICByZWRpcmVjdDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgY2xvbmU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHNpZ25hbDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZHVwbGV4OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBkZXN0aW5hdGlvbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYm9keVVzZWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGlzSGlzdG9yeU5hdmlnYXRpb246IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGlzUmVsb2FkTmF2aWdhdGlvbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAga2VlcGFsaXZlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBpbnRlZ3JpdHk6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGNhY2hlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjcmVkZW50aWFsczoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYXR0cmlidXRlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICByZWZlcnJlclBvbGljeToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVmZXJyZXI6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG1vZGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdSZXF1ZXN0JyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxud2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdCA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIFJlcXVlc3RcbilcblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI3JlcXVlc3RpbmZvXG53ZWJpZGwuY29udmVydGVycy5SZXF1ZXN0SW5mbyA9IGZ1bmN0aW9uIChWKSB7XG4gIGlmICh0eXBlb2YgViA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nKFYpXG4gIH1cblxuICBpZiAoViBpbnN0YW5jZW9mIFJlcXVlc3QpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdChWKVxuICB9XG5cbiAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyhWKVxufVxuXG53ZWJpZGwuY29udmVydGVycy5BYm9ydFNpZ25hbCA9IHdlYmlkbC5pbnRlcmZhY2VDb252ZXJ0ZXIoXG4gIEFib3J0U2lnbmFsXG4pXG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0aW5pdFxud2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluaXQgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBrZXk6ICdtZXRob2QnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuQnl0ZVN0cmluZ1xuICB9LFxuICB7XG4gICAga2V5OiAnaGVhZGVycycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5IZWFkZXJzSW5pdFxuICB9LFxuICB7XG4gICAga2V5OiAnYm9keScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIoXG4gICAgICB3ZWJpZGwuY29udmVydGVycy5Cb2R5SW5pdFxuICAgIClcbiAgfSxcbiAge1xuICAgIGtleTogJ3JlZmVycmVyJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZ1xuICB9LFxuICB7XG4gICAga2V5OiAncmVmZXJyZXJQb2xpY3knLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nLFxuICAgIC8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby93ZWJhcHBzZWMtcmVmZXJyZXItcG9saWN5LyNyZWZlcnJlci1wb2xpY3lcbiAgICBhbGxvd2VkVmFsdWVzOiByZWZlcnJlclBvbGljeVxuICB9LFxuICB7XG4gICAga2V5OiAnbW9kZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtcmVxdWVzdC1tb2RlXG4gICAgYWxsb3dlZFZhbHVlczogcmVxdWVzdE1vZGVcbiAgfSxcbiAge1xuICAgIGtleTogJ2NyZWRlbnRpYWxzJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyxcbiAgICAvLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jcmVxdWVzdGNyZWRlbnRpYWxzXG4gICAgYWxsb3dlZFZhbHVlczogcmVxdWVzdENyZWRlbnRpYWxzXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdjYWNoZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI3JlcXVlc3RjYWNoZVxuICAgIGFsbG93ZWRWYWx1ZXM6IHJlcXVlc3RDYWNoZVxuICB9LFxuICB7XG4gICAga2V5OiAncmVkaXJlY3QnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nLFxuICAgIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNyZXF1ZXN0cmVkaXJlY3RcbiAgICBhbGxvd2VkVmFsdWVzOiByZXF1ZXN0UmVkaXJlY3RcbiAgfSxcbiAge1xuICAgIGtleTogJ2ludGVncml0eScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmdcbiAgfSxcbiAge1xuICAgIGtleTogJ2tlZXBhbGl2ZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdzaWduYWwnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKFxuICAgICAgKHNpZ25hbCkgPT4gd2ViaWRsLmNvbnZlcnRlcnMuQWJvcnRTaWduYWwoXG4gICAgICAgIHNpZ25hbCxcbiAgICAgICAgeyBzdHJpY3Q6IGZhbHNlIH1cbiAgICAgIClcbiAgICApXG4gIH0sXG4gIHtcbiAgICBrZXk6ICd3aW5kb3cnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYW55XG4gIH0sXG4gIHtcbiAgICBrZXk6ICdkdXBsZXgnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nLFxuICAgIGFsbG93ZWRWYWx1ZXM6IHJlcXVlc3REdXBsZXhcbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7IFJlcXVlc3QsIG1ha2VSZXF1ZXN0IH1cbiIsICIvLyBodHRwczovL2dpdGh1Yi5jb20vRXRoYW4tQXJyb3dvb2QvdW5kaWNpLWZldGNoXG5cbid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIFJlc3BvbnNlLFxuICBtYWtlTmV0d29ya0Vycm9yLFxuICBtYWtlQXBwcm9wcmlhdGVOZXR3b3JrRXJyb3IsXG4gIGZpbHRlclJlc3BvbnNlLFxuICBtYWtlUmVzcG9uc2Vcbn0gPSByZXF1aXJlKCcuL3Jlc3BvbnNlJylcbmNvbnN0IHsgSGVhZGVycyB9ID0gcmVxdWlyZSgnLi9oZWFkZXJzJylcbmNvbnN0IHsgUmVxdWVzdCwgbWFrZVJlcXVlc3QgfSA9IHJlcXVpcmUoJy4vcmVxdWVzdCcpXG5jb25zdCB6bGliID0gcmVxdWlyZSgnemxpYicpXG5jb25zdCB7XG4gIGJ5dGVzTWF0Y2gsXG4gIG1ha2VQb2xpY3lDb250YWluZXIsXG4gIGNsb25lUG9saWN5Q29udGFpbmVyLFxuICByZXF1ZXN0QmFkUG9ydCxcbiAgVEFPQ2hlY2ssXG4gIGFwcGVuZFJlcXVlc3RPcmlnaW5IZWFkZXIsXG4gIHJlc3BvbnNlTG9jYXRpb25VUkwsXG4gIHJlcXVlc3RDdXJyZW50VVJMLFxuICBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0LFxuICB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwsXG4gIGNyZWF0ZU9wYXF1ZVRpbWluZ0luZm8sXG4gIGFwcGVuZEZldGNoTWV0YWRhdGEsXG4gIGNvcnNDaGVjayxcbiAgY3Jvc3NPcmlnaW5SZXNvdXJjZVBvbGljeUNoZWNrLFxuICBkZXRlcm1pbmVSZXF1ZXN0c1JlZmVycmVyLFxuICBjb2Fyc2VuZWRTaGFyZWRDdXJyZW50VGltZSxcbiAgY3JlYXRlRGVmZXJyZWRQcm9taXNlLFxuICBpc0Jsb2JMaWtlLFxuICBzYW1lT3JpZ2luLFxuICBpc0NhbmNlbGxlZCxcbiAgaXNBYm9ydGVkLFxuICBpc0Vycm9yTGlrZSxcbiAgZnVsbHlSZWFkQm9keSxcbiAgcmVhZGFibGVTdHJlYW1DbG9zZSxcbiAgaXNvbW9ycGhpY0VuY29kZSxcbiAgdXJsSXNMb2NhbCxcbiAgdXJsSXNIdHRwSHR0cHNTY2hlbWUsXG4gIHVybEhhc0h0dHBzU2NoZW1lXG59ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsga1N0YXRlLCBrSGVhZGVycywga0d1YXJkLCBrUmVhbG0gfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCBhc3NlcnQgPSByZXF1aXJlKCdhc3NlcnQnKVxuY29uc3QgeyBzYWZlbHlFeHRyYWN0Qm9keSB9ID0gcmVxdWlyZSgnLi9ib2R5JylcbmNvbnN0IHtcbiAgcmVkaXJlY3RTdGF0dXNTZXQsXG4gIG51bGxCb2R5U3RhdHVzLFxuICBzYWZlTWV0aG9kc1NldCxcbiAgcmVxdWVzdEJvZHlIZWFkZXIsXG4gIHN1YnJlc291cmNlU2V0LFxuICBET01FeGNlcHRpb25cbn0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5jb25zdCB7IGtIZWFkZXJzTGlzdCB9ID0gcmVxdWlyZSgnLi4vY29yZS9zeW1ib2xzJylcbmNvbnN0IEVFID0gcmVxdWlyZSgnZXZlbnRzJylcbmNvbnN0IHsgUmVhZGFibGUsIHBpcGVsaW5lIH0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgeyBhZGRBYm9ydExpc3RlbmVyLCBpc0Vycm9yZWQsIGlzUmVhZGFibGUsIG5vZGVNYWpvciwgbm9kZU1pbm9yIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBkYXRhVVJMUHJvY2Vzc29yLCBzZXJpYWxpemVBTWltZVR5cGUgfSA9IHJlcXVpcmUoJy4vZGF0YVVSTCcpXG5jb25zdCB7IFRyYW5zZm9ybVN0cmVhbSB9ID0gcmVxdWlyZSgnc3RyZWFtL3dlYicpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi93ZWJpZGwnKVxuY29uc3QgeyBTVEFUVVNfQ09ERVMgfSA9IHJlcXVpcmUoJ2h0dHAnKVxuY29uc3QgR0VUX09SX0hFQUQgPSBbJ0dFVCcsICdIRUFEJ11cblxuLyoqIEB0eXBlIHtpbXBvcnQoJ2J1ZmZlcicpLnJlc29sdmVPYmplY3RVUkx9ICovXG5sZXQgcmVzb2x2ZU9iamVjdFVSTFxubGV0IFJlYWRhYmxlU3RyZWFtID0gZ2xvYmFsVGhpcy5SZWFkYWJsZVN0cmVhbVxuXG5jbGFzcyBGZXRjaCBleHRlbmRzIEVFIHtcbiAgY29uc3RydWN0b3IgKGRpc3BhdGNoZXIpIHtcbiAgICBzdXBlcigpXG5cbiAgICB0aGlzLmRpc3BhdGNoZXIgPSBkaXNwYXRjaGVyXG4gICAgdGhpcy5jb25uZWN0aW9uID0gbnVsbFxuICAgIHRoaXMuZHVtcCA9IGZhbHNlXG4gICAgdGhpcy5zdGF0ZSA9ICdvbmdvaW5nJ1xuICAgIC8vIDIgdGVybWluYXRlZCBsaXN0ZW5lcnMgZ2V0IGFkZGVkIHBlciByZXF1ZXN0LFxuICAgIC8vIGJ1dCBvbmx5IDEgZ2V0cyByZW1vdmVkLiBJZiB0aGVyZSBhcmUgMjAgcmVkaXJlY3RzLFxuICAgIC8vIDIxIGxpc3RlbmVycyB3aWxsIGJlIGFkZGVkLlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL3VuZGljaS9pc3N1ZXMvMTcxMVxuICAgIC8vIFRPRE8gKGZpeCk6IEZpbmQgYW5kIGZpeCByb290IGNhdXNlIGZvciBsZWFrZWQgbGlzdGVuZXIuXG4gICAgdGhpcy5zZXRNYXhMaXN0ZW5lcnMoMjEpXG4gIH1cblxuICB0ZXJtaW5hdGUgKHJlYXNvbikge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb25nb2luZycpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHRoaXMuc3RhdGUgPSAndGVybWluYXRlZCdcbiAgICB0aGlzLmNvbm5lY3Rpb24/LmRlc3Ryb3kocmVhc29uKVxuICAgIHRoaXMuZW1pdCgndGVybWluYXRlZCcsIHJlYXNvbilcbiAgfVxuXG4gIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmZXRjaC1jb250cm9sbGVyLWFib3J0XG4gIGFib3J0IChlcnJvcikge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb25nb2luZycpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIDEuIFNldCBjb250cm9sbGVyXHUyMDE5cyBzdGF0ZSB0byBcImFib3J0ZWRcIi5cbiAgICB0aGlzLnN0YXRlID0gJ2Fib3J0ZWQnXG5cbiAgICAvLyAyLiBMZXQgZmFsbGJhY2tFcnJvciBiZSBhbiBcIkFib3J0RXJyb3JcIiBET01FeGNlcHRpb24uXG4gICAgLy8gMy4gU2V0IGVycm9yIHRvIGZhbGxiYWNrRXJyb3IgaWYgaXQgaXMgbm90IGdpdmVuLlxuICAgIGlmICghZXJyb3IpIHtcbiAgICAgIGVycm9yID0gbmV3IERPTUV4Y2VwdGlvbignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZC4nLCAnQWJvcnRFcnJvcicpXG4gICAgfVxuXG4gICAgLy8gNC4gTGV0IHNlcmlhbGl6ZWRFcnJvciBiZSBTdHJ1Y3R1cmVkU2VyaWFsaXplKGVycm9yKS5cbiAgICAvLyAgICBJZiB0aGF0IHRocmV3IGFuIGV4Y2VwdGlvbiwgY2F0Y2ggaXQsIGFuZCBsZXRcbiAgICAvLyAgICBzZXJpYWxpemVkRXJyb3IgYmUgU3RydWN0dXJlZFNlcmlhbGl6ZShmYWxsYmFja0Vycm9yKS5cblxuICAgIC8vIDUuIFNldCBjb250cm9sbGVyXHUyMDE5cyBzZXJpYWxpemVkIGFib3J0IHJlYXNvbiB0byBzZXJpYWxpemVkRXJyb3IuXG4gICAgdGhpcy5zZXJpYWxpemVkQWJvcnRSZWFzb24gPSBlcnJvclxuXG4gICAgdGhpcy5jb25uZWN0aW9uPy5kZXN0cm95KGVycm9yKVxuICAgIHRoaXMuZW1pdCgndGVybWluYXRlZCcsIGVycm9yKVxuICB9XG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmZXRjaC1tZXRob2RcbmZ1bmN0aW9uIGZldGNoIChpbnB1dCwgaW5pdCA9IHt9KSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdnbG9iYWxUaGlzLmZldGNoJyB9KVxuXG4gIC8vIDEuIExldCBwIGJlIGEgbmV3IHByb21pc2UuXG4gIGNvbnN0IHAgPSBjcmVhdGVEZWZlcnJlZFByb21pc2UoKVxuXG4gIC8vIDIuIExldCByZXF1ZXN0T2JqZWN0IGJlIHRoZSByZXN1bHQgb2YgaW52b2tpbmcgdGhlIGluaXRpYWwgdmFsdWUgb2ZcbiAgLy8gUmVxdWVzdCBhcyBjb25zdHJ1Y3RvciB3aXRoIGlucHV0IGFuZCBpbml0IGFzIGFyZ3VtZW50cy4gSWYgdGhpcyB0aHJvd3NcbiAgLy8gYW4gZXhjZXB0aW9uLCByZWplY3QgcCB3aXRoIGl0IGFuZCByZXR1cm4gcC5cbiAgbGV0IHJlcXVlc3RPYmplY3RcblxuICB0cnkge1xuICAgIHJlcXVlc3RPYmplY3QgPSBuZXcgUmVxdWVzdChpbnB1dCwgaW5pdClcbiAgfSBjYXRjaCAoZSkge1xuICAgIHAucmVqZWN0KGUpXG4gICAgcmV0dXJuIHAucHJvbWlzZVxuICB9XG5cbiAgLy8gMy4gTGV0IHJlcXVlc3QgYmUgcmVxdWVzdE9iamVjdFx1MjAxOXMgcmVxdWVzdC5cbiAgY29uc3QgcmVxdWVzdCA9IHJlcXVlc3RPYmplY3Rba1N0YXRlXVxuXG4gIC8vIDQuIElmIHJlcXVlc3RPYmplY3RcdTIwMTlzIHNpZ25hbFx1MjAxOXMgYWJvcnRlZCBmbGFnIGlzIHNldCwgdGhlbjpcbiAgaWYgKHJlcXVlc3RPYmplY3Quc2lnbmFsLmFib3J0ZWQpIHtcbiAgICAvLyAxLiBBYm9ydCB0aGUgZmV0Y2goKSBjYWxsIHdpdGggcCwgcmVxdWVzdCwgbnVsbCwgYW5kXG4gICAgLy8gICAgcmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsXHUyMDE5cyBhYm9ydCByZWFzb24uXG4gICAgYWJvcnRGZXRjaChwLCByZXF1ZXN0LCBudWxsLCByZXF1ZXN0T2JqZWN0LnNpZ25hbC5yZWFzb24pXG5cbiAgICAvLyAyLiBSZXR1cm4gcC5cbiAgICByZXR1cm4gcC5wcm9taXNlXG4gIH1cblxuICAvLyA1LiBMZXQgZ2xvYmFsT2JqZWN0IGJlIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgZ2xvYmFsIG9iamVjdC5cbiAgY29uc3QgZ2xvYmFsT2JqZWN0ID0gcmVxdWVzdC5jbGllbnQuZ2xvYmFsT2JqZWN0XG5cbiAgLy8gNi4gSWYgZ2xvYmFsT2JqZWN0IGlzIGEgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIG9iamVjdCwgdGhlbiBzZXRcbiAgLy8gcmVxdWVzdFx1MjAxOXMgc2VydmljZS13b3JrZXJzIG1vZGUgdG8gXCJub25lXCIuXG4gIGlmIChnbG9iYWxPYmplY3Q/LmNvbnN0cnVjdG9yPy5uYW1lID09PSAnU2VydmljZVdvcmtlckdsb2JhbFNjb3BlJykge1xuICAgIHJlcXVlc3Quc2VydmljZVdvcmtlcnMgPSAnbm9uZSdcbiAgfVxuXG4gIC8vIDcuIExldCByZXNwb25zZU9iamVjdCBiZSBudWxsLlxuICBsZXQgcmVzcG9uc2VPYmplY3QgPSBudWxsXG5cbiAgLy8gOC4gTGV0IHJlbGV2YW50UmVhbG0gYmUgdGhpc1x1MjAxOXMgcmVsZXZhbnQgUmVhbG0uXG4gIGNvbnN0IHJlbGV2YW50UmVhbG0gPSBudWxsXG5cbiAgLy8gOS4gTGV0IGxvY2FsbHlBYm9ydGVkIGJlIGZhbHNlLlxuICBsZXQgbG9jYWxseUFib3J0ZWQgPSBmYWxzZVxuXG4gIC8vIDEwLiBMZXQgY29udHJvbGxlciBiZSBudWxsLlxuICBsZXQgY29udHJvbGxlciA9IG51bGxcblxuICAvLyAxMS4gQWRkIHRoZSBmb2xsb3dpbmcgYWJvcnQgc3RlcHMgdG8gcmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsOlxuICBhZGRBYm9ydExpc3RlbmVyKFxuICAgIHJlcXVlc3RPYmplY3Quc2lnbmFsLFxuICAgICgpID0+IHtcbiAgICAgIC8vIDEuIFNldCBsb2NhbGx5QWJvcnRlZCB0byB0cnVlLlxuICAgICAgbG9jYWxseUFib3J0ZWQgPSB0cnVlXG5cbiAgICAgIC8vIDIuIEFzc2VydDogY29udHJvbGxlciBpcyBub24tbnVsbC5cbiAgICAgIGFzc2VydChjb250cm9sbGVyICE9IG51bGwpXG5cbiAgICAgIC8vIDMuIEFib3J0IGNvbnRyb2xsZXIgd2l0aCByZXF1ZXN0T2JqZWN0XHUyMDE5cyBzaWduYWxcdTIwMTlzIGFib3J0IHJlYXNvbi5cbiAgICAgIGNvbnRyb2xsZXIuYWJvcnQocmVxdWVzdE9iamVjdC5zaWduYWwucmVhc29uKVxuXG4gICAgICAvLyA0LiBBYm9ydCB0aGUgZmV0Y2goKSBjYWxsIHdpdGggcCwgcmVxdWVzdCwgcmVzcG9uc2VPYmplY3QsXG4gICAgICAvLyAgICBhbmQgcmVxdWVzdE9iamVjdFx1MjAxOXMgc2lnbmFsXHUyMDE5cyBhYm9ydCByZWFzb24uXG4gICAgICBhYm9ydEZldGNoKHAsIHJlcXVlc3QsIHJlc3BvbnNlT2JqZWN0LCByZXF1ZXN0T2JqZWN0LnNpZ25hbC5yZWFzb24pXG4gICAgfVxuICApXG5cbiAgLy8gMTIuIExldCBoYW5kbGVGZXRjaERvbmUgZ2l2ZW4gcmVzcG9uc2UgcmVzcG9uc2UgYmUgdG8gZmluYWxpemUgYW5kXG4gIC8vIHJlcG9ydCB0aW1pbmcgd2l0aCByZXNwb25zZSwgZ2xvYmFsT2JqZWN0LCBhbmQgXCJmZXRjaFwiLlxuICBjb25zdCBoYW5kbGVGZXRjaERvbmUgPSAocmVzcG9uc2UpID0+XG4gICAgZmluYWxpemVBbmRSZXBvcnRUaW1pbmcocmVzcG9uc2UsICdmZXRjaCcpXG5cbiAgLy8gMTMuIFNldCBjb250cm9sbGVyIHRvIHRoZSByZXN1bHQgb2YgY2FsbGluZyBmZXRjaCBnaXZlbiByZXF1ZXN0LFxuICAvLyB3aXRoIHByb2Nlc3NSZXNwb25zZUVuZE9mQm9keSBzZXQgdG8gaGFuZGxlRmV0Y2hEb25lLCBhbmQgcHJvY2Vzc1Jlc3BvbnNlXG4gIC8vIGdpdmVuIHJlc3BvbnNlIGJlaW5nIHRoZXNlIHN1YnN0ZXBzOlxuXG4gIGNvbnN0IHByb2Nlc3NSZXNwb25zZSA9IChyZXNwb25zZSkgPT4ge1xuICAgIC8vIDEuIElmIGxvY2FsbHlBYm9ydGVkIGlzIHRydWUsIHRlcm1pbmF0ZSB0aGVzZSBzdWJzdGVwcy5cbiAgICBpZiAobG9jYWxseUFib3J0ZWQpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKVxuICAgIH1cblxuICAgIC8vIDIuIElmIHJlc3BvbnNlXHUyMDE5cyBhYm9ydGVkIGZsYWcgaXMgc2V0LCB0aGVuOlxuICAgIGlmIChyZXNwb25zZS5hYm9ydGVkKSB7XG4gICAgICAvLyAxLiBMZXQgZGVzZXJpYWxpemVkRXJyb3IgYmUgdGhlIHJlc3VsdCBvZiBkZXNlcmlhbGl6ZSBhIHNlcmlhbGl6ZWRcbiAgICAgIC8vICAgIGFib3J0IHJlYXNvbiBnaXZlbiBjb250cm9sbGVyXHUyMDE5cyBzZXJpYWxpemVkIGFib3J0IHJlYXNvbiBhbmRcbiAgICAgIC8vICAgIHJlbGV2YW50UmVhbG0uXG5cbiAgICAgIC8vIDIuIEFib3J0IHRoZSBmZXRjaCgpIGNhbGwgd2l0aCBwLCByZXF1ZXN0LCByZXNwb25zZU9iamVjdCwgYW5kXG4gICAgICAvLyAgICBkZXNlcmlhbGl6ZWRFcnJvci5cblxuICAgICAgYWJvcnRGZXRjaChwLCByZXF1ZXN0LCByZXNwb25zZU9iamVjdCwgY29udHJvbGxlci5zZXJpYWxpemVkQWJvcnRSZWFzb24pXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgICB9XG5cbiAgICAvLyAzLiBJZiByZXNwb25zZSBpcyBhIG5ldHdvcmsgZXJyb3IsIHRoZW4gcmVqZWN0IHAgd2l0aCBhIFR5cGVFcnJvclxuICAgIC8vIGFuZCB0ZXJtaW5hdGUgdGhlc2Ugc3Vic3RlcHMuXG4gICAgaWYgKHJlc3BvbnNlLnR5cGUgPT09ICdlcnJvcicpIHtcbiAgICAgIHAucmVqZWN0KFxuICAgICAgICBPYmplY3QuYXNzaWduKG5ldyBUeXBlRXJyb3IoJ2ZldGNoIGZhaWxlZCcpLCB7IGNhdXNlOiByZXNwb25zZS5lcnJvciB9KVxuICAgICAgKVxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgfVxuXG4gICAgLy8gNC4gU2V0IHJlc3BvbnNlT2JqZWN0IHRvIHRoZSByZXN1bHQgb2YgY3JlYXRpbmcgYSBSZXNwb25zZSBvYmplY3QsXG4gICAgLy8gZ2l2ZW4gcmVzcG9uc2UsIFwiaW1tdXRhYmxlXCIsIGFuZCByZWxldmFudFJlYWxtLlxuICAgIHJlc3BvbnNlT2JqZWN0ID0gbmV3IFJlc3BvbnNlKClcbiAgICByZXNwb25zZU9iamVjdFtrU3RhdGVdID0gcmVzcG9uc2VcbiAgICByZXNwb25zZU9iamVjdFtrUmVhbG1dID0gcmVsZXZhbnRSZWFsbVxuICAgIHJlc3BvbnNlT2JqZWN0W2tIZWFkZXJzXVtrSGVhZGVyc0xpc3RdID0gcmVzcG9uc2UuaGVhZGVyc0xpc3RcbiAgICByZXNwb25zZU9iamVjdFtrSGVhZGVyc11ba0d1YXJkXSA9ICdpbW11dGFibGUnXG4gICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tSZWFsbV0gPSByZWxldmFudFJlYWxtXG5cbiAgICAvLyA1LiBSZXNvbHZlIHAgd2l0aCByZXNwb25zZU9iamVjdC5cbiAgICBwLnJlc29sdmUocmVzcG9uc2VPYmplY3QpXG4gIH1cblxuICBjb250cm9sbGVyID0gZmV0Y2hpbmcoe1xuICAgIHJlcXVlc3QsXG4gICAgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5OiBoYW5kbGVGZXRjaERvbmUsXG4gICAgcHJvY2Vzc1Jlc3BvbnNlLFxuICAgIGRpc3BhdGNoZXI6IGluaXQuZGlzcGF0Y2hlciA/PyBnZXRHbG9iYWxEaXNwYXRjaGVyKCkgLy8gdW5kaWNpXG4gIH0pXG5cbiAgLy8gMTQuIFJldHVybiBwLlxuICByZXR1cm4gcC5wcm9taXNlXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmaW5hbGl6ZS1hbmQtcmVwb3J0LXRpbWluZ1xuZnVuY3Rpb24gZmluYWxpemVBbmRSZXBvcnRUaW1pbmcgKHJlc3BvbnNlLCBpbml0aWF0b3JUeXBlID0gJ290aGVyJykge1xuICAvLyAxLiBJZiByZXNwb25zZSBpcyBhbiBhYm9ydGVkIG5ldHdvcmsgZXJyb3IsIHRoZW4gcmV0dXJuLlxuICBpZiAocmVzcG9uc2UudHlwZSA9PT0gJ2Vycm9yJyAmJiByZXNwb25zZS5hYm9ydGVkKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICAvLyAyLiBJZiByZXNwb25zZVx1MjAxOXMgVVJMIGxpc3QgaXMgbnVsbCBvciBlbXB0eSwgdGhlbiByZXR1cm4uXG4gIGlmICghcmVzcG9uc2UudXJsTGlzdD8ubGVuZ3RoKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICAvLyAzLiBMZXQgb3JpZ2luYWxVUkwgYmUgcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0WzBdLlxuICBjb25zdCBvcmlnaW5hbFVSTCA9IHJlc3BvbnNlLnVybExpc3RbMF1cblxuICAvLyA0LiBMZXQgdGltaW5nSW5mbyBiZSByZXNwb25zZVx1MjAxOXMgdGltaW5nIGluZm8uXG4gIGxldCB0aW1pbmdJbmZvID0gcmVzcG9uc2UudGltaW5nSW5mb1xuXG4gIC8vIDUuIExldCBjYWNoZVN0YXRlIGJlIHJlc3BvbnNlXHUyMDE5cyBjYWNoZSBzdGF0ZS5cbiAgbGV0IGNhY2hlU3RhdGUgPSByZXNwb25zZS5jYWNoZVN0YXRlXG5cbiAgLy8gNi4gSWYgb3JpZ2luYWxVUkxcdTIwMTlzIHNjaGVtZSBpcyBub3QgYW4gSFRUUChTKSBzY2hlbWUsIHRoZW4gcmV0dXJuLlxuICBpZiAoIXVybElzSHR0cEh0dHBzU2NoZW1lKG9yaWdpbmFsVVJMKSkge1xuICAgIHJldHVyblxuICB9XG5cbiAgLy8gNy4gSWYgdGltaW5nSW5mbyBpcyBudWxsLCB0aGVuIHJldHVybi5cbiAgaWYgKHRpbWluZ0luZm8gPT09IG51bGwpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIC8vIDguIElmIHJlc3BvbnNlXHUyMDE5cyB0aW1pbmcgYWxsb3cgcGFzc2VkIGZsYWcgaXMgbm90IHNldCwgdGhlbjpcbiAgaWYgKCFyZXNwb25zZS50aW1pbmdBbGxvd1Bhc3NlZCkge1xuICAgIC8vICAxLiBTZXQgdGltaW5nSW5mbyB0byBhIHRoZSByZXN1bHQgb2YgY3JlYXRpbmcgYW4gb3BhcXVlIHRpbWluZyBpbmZvIGZvciB0aW1pbmdJbmZvLlxuICAgIHRpbWluZ0luZm8gPSBjcmVhdGVPcGFxdWVUaW1pbmdJbmZvKHtcbiAgICAgIHN0YXJ0VGltZTogdGltaW5nSW5mby5zdGFydFRpbWVcbiAgICB9KVxuXG4gICAgLy8gIDIuIFNldCBjYWNoZVN0YXRlIHRvIHRoZSBlbXB0eSBzdHJpbmcuXG4gICAgY2FjaGVTdGF0ZSA9ICcnXG4gIH1cblxuICAvLyA5LiBTZXQgdGltaW5nSW5mb1x1MjAxOXMgZW5kIHRpbWUgdG8gdGhlIGNvYXJzZW5lZCBzaGFyZWQgY3VycmVudCB0aW1lXG4gIC8vIGdpdmVuIGdsb2JhbFx1MjAxOXMgcmVsZXZhbnQgc2V0dGluZ3Mgb2JqZWN0XHUyMDE5cyBjcm9zcy1vcmlnaW4gaXNvbGF0ZWRcbiAgLy8gY2FwYWJpbGl0eS5cbiAgLy8gVE9ETzogZ2l2ZW4gZ2xvYmFsXHUyMDE5cyByZWxldmFudCBzZXR0aW5ncyBvYmplY3RcdTIwMTlzIGNyb3NzLW9yaWdpbiBpc29sYXRlZFxuICAvLyBjYXBhYmlsaXR5P1xuICB0aW1pbmdJbmZvLmVuZFRpbWUgPSBjb2Fyc2VuZWRTaGFyZWRDdXJyZW50VGltZSgpXG5cbiAgLy8gMTAuIFNldCByZXNwb25zZVx1MjAxOXMgdGltaW5nIGluZm8gdG8gdGltaW5nSW5mby5cbiAgcmVzcG9uc2UudGltaW5nSW5mbyA9IHRpbWluZ0luZm9cblxuICAvLyAxMS4gTWFyayByZXNvdXJjZSB0aW1pbmcgZm9yIHRpbWluZ0luZm8sIG9yaWdpbmFsVVJMLCBpbml0aWF0b3JUeXBlLFxuICAvLyBnbG9iYWwsIGFuZCBjYWNoZVN0YXRlLlxuICBtYXJrUmVzb3VyY2VUaW1pbmcoXG4gICAgdGltaW5nSW5mbyxcbiAgICBvcmlnaW5hbFVSTCxcbiAgICBpbml0aWF0b3JUeXBlLFxuICAgIGdsb2JhbFRoaXMsXG4gICAgY2FjaGVTdGF0ZVxuICApXG59XG5cbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9yZXNvdXJjZS10aW1pbmcvI2Rmbi1tYXJrLXJlc291cmNlLXRpbWluZ1xuZnVuY3Rpb24gbWFya1Jlc291cmNlVGltaW5nICh0aW1pbmdJbmZvLCBvcmlnaW5hbFVSTCwgaW5pdGlhdG9yVHlwZSwgZ2xvYmFsVGhpcywgY2FjaGVTdGF0ZSkge1xuICBpZiAobm9kZU1ham9yID4gMTggfHwgKG5vZGVNYWpvciA9PT0gMTggJiYgbm9kZU1pbm9yID49IDIpKSB7XG4gICAgcGVyZm9ybWFuY2UubWFya1Jlc291cmNlVGltaW5nKHRpbWluZ0luZm8sIG9yaWdpbmFsVVJMLmhyZWYsIGluaXRpYXRvclR5cGUsIGdsb2JhbFRoaXMsIGNhY2hlU3RhdGUpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2Fib3J0LWZldGNoXG5mdW5jdGlvbiBhYm9ydEZldGNoIChwLCByZXF1ZXN0LCByZXNwb25zZU9iamVjdCwgZXJyb3IpIHtcbiAgLy8gTm90ZTogQWJvcnRTaWduYWwucmVhc29uIHdhcyBhZGRlZCBpbiBub2RlIHYxNy4yLjBcbiAgLy8gd2hpY2ggd291bGQgZ2l2ZSB1cyBhbiB1bmRlZmluZWQgZXJyb3IgdG8gcmVqZWN0IHdpdGguXG4gIC8vIFJlbW92ZSB0aGlzIG9uY2Ugbm9kZSB2MTYgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZC5cbiAgaWYgKCFlcnJvcikge1xuICAgIGVycm9yID0gbmV3IERPTUV4Y2VwdGlvbignVGhlIG9wZXJhdGlvbiB3YXMgYWJvcnRlZC4nLCAnQWJvcnRFcnJvcicpXG4gIH1cblxuICAvLyAxLiBSZWplY3QgcHJvbWlzZSB3aXRoIGVycm9yLlxuICBwLnJlamVjdChlcnJvcilcblxuICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vdCBudWxsIGFuZCBpcyByZWFkYWJsZSwgdGhlbiBjYW5jZWwgcmVxdWVzdFx1MjAxOXNcbiAgLy8gYm9keSB3aXRoIGVycm9yLlxuICBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwgJiYgaXNSZWFkYWJsZShyZXF1ZXN0LmJvZHk/LnN0cmVhbSkpIHtcbiAgICByZXF1ZXN0LmJvZHkuc3RyZWFtLmNhbmNlbChlcnJvcikuY2F0Y2goKGVycikgPT4ge1xuICAgICAgaWYgKGVyci5jb2RlID09PSAnRVJSX0lOVkFMSURfU1RBVEUnKSB7XG4gICAgICAgIC8vIE5vZGUgYnVnP1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH0pXG4gIH1cblxuICAvLyAzLiBJZiByZXNwb25zZU9iamVjdCBpcyBudWxsLCB0aGVuIHJldHVybi5cbiAgaWYgKHJlc3BvbnNlT2JqZWN0ID09IG51bGwpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIC8vIDQuIExldCByZXNwb25zZSBiZSByZXNwb25zZU9iamVjdFx1MjAxOXMgcmVzcG9uc2UuXG4gIGNvbnN0IHJlc3BvbnNlID0gcmVzcG9uc2VPYmplY3Rba1N0YXRlXVxuXG4gIC8vIDUuIElmIHJlc3BvbnNlXHUyMDE5cyBib2R5IGlzIG5vdCBudWxsIGFuZCBpcyByZWFkYWJsZSwgdGhlbiBlcnJvciByZXNwb25zZVx1MjAxOXNcbiAgLy8gYm9keSB3aXRoIGVycm9yLlxuICBpZiAocmVzcG9uc2UuYm9keSAhPSBudWxsICYmIGlzUmVhZGFibGUocmVzcG9uc2UuYm9keT8uc3RyZWFtKSkge1xuICAgIHJlc3BvbnNlLmJvZHkuc3RyZWFtLmNhbmNlbChlcnJvcikuY2F0Y2goKGVycikgPT4ge1xuICAgICAgaWYgKGVyci5jb2RlID09PSAnRVJSX0lOVkFMSURfU1RBVEUnKSB7XG4gICAgICAgIC8vIE5vZGUgYnVnP1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRocm93IGVyclxuICAgIH0pXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2ZldGNoaW5nXG5mdW5jdGlvbiBmZXRjaGluZyAoe1xuICByZXF1ZXN0LFxuICBwcm9jZXNzUmVxdWVzdEJvZHlDaHVua0xlbmd0aCxcbiAgcHJvY2Vzc1JlcXVlc3RFbmRPZkJvZHksXG4gIHByb2Nlc3NSZXNwb25zZSxcbiAgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5LFxuICBwcm9jZXNzUmVzcG9uc2VDb25zdW1lQm9keSxcbiAgdXNlUGFyYWxsZWxRdWV1ZSA9IGZhbHNlLFxuICBkaXNwYXRjaGVyIC8vIHVuZGljaVxufSkge1xuICAvLyAxLiBMZXQgdGFza0Rlc3RpbmF0aW9uIGJlIG51bGwuXG4gIGxldCB0YXNrRGVzdGluYXRpb24gPSBudWxsXG5cbiAgLy8gMi4gTGV0IGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5IGJlIGZhbHNlLlxuICBsZXQgY3Jvc3NPcmlnaW5Jc29sYXRlZENhcGFiaWxpdHkgPSBmYWxzZVxuXG4gIC8vIDMuIElmIHJlcXVlc3RcdTIwMTlzIGNsaWVudCBpcyBub24tbnVsbCwgdGhlbjpcbiAgaWYgKHJlcXVlc3QuY2xpZW50ICE9IG51bGwpIHtcbiAgICAvLyAxLiBTZXQgdGFza0Rlc3RpbmF0aW9uIHRvIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgZ2xvYmFsIG9iamVjdC5cbiAgICB0YXNrRGVzdGluYXRpb24gPSByZXF1ZXN0LmNsaWVudC5nbG9iYWxPYmplY3RcblxuICAgIC8vIDIuIFNldCBjcm9zc09yaWdpbklzb2xhdGVkQ2FwYWJpbGl0eSB0byByZXF1ZXN0XHUyMDE5cyBjbGllbnRcdTIwMTlzIGNyb3NzLW9yaWdpblxuICAgIC8vIGlzb2xhdGVkIGNhcGFiaWxpdHkuXG4gICAgY3Jvc3NPcmlnaW5Jc29sYXRlZENhcGFiaWxpdHkgPVxuICAgICAgcmVxdWVzdC5jbGllbnQuY3Jvc3NPcmlnaW5Jc29sYXRlZENhcGFiaWxpdHlcbiAgfVxuXG4gIC8vIDQuIElmIHVzZVBhcmFsbGVsUXVldWUgaXMgdHJ1ZSwgdGhlbiBzZXQgdGFza0Rlc3RpbmF0aW9uIHRvIHRoZSByZXN1bHQgb2ZcbiAgLy8gc3RhcnRpbmcgYSBuZXcgcGFyYWxsZWwgcXVldWUuXG4gIC8vIFRPRE9cblxuICAvLyA1LiBMZXQgdGltaW5nSW5mbyBiZSBhIG5ldyBmZXRjaCB0aW1pbmcgaW5mbyB3aG9zZSBzdGFydCB0aW1lIGFuZFxuICAvLyBwb3N0LXJlZGlyZWN0IHN0YXJ0IHRpbWUgYXJlIHRoZSBjb2Fyc2VuZWQgc2hhcmVkIGN1cnJlbnQgdGltZSBnaXZlblxuICAvLyBjcm9zc09yaWdpbklzb2xhdGVkQ2FwYWJpbGl0eS5cbiAgY29uc3QgY3VycmVuVGltZSA9IGNvYXJzZW5lZFNoYXJlZEN1cnJlbnRUaW1lKGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5KVxuICBjb25zdCB0aW1pbmdJbmZvID0gY3JlYXRlT3BhcXVlVGltaW5nSW5mbyh7XG4gICAgc3RhcnRUaW1lOiBjdXJyZW5UaW1lXG4gIH0pXG5cbiAgLy8gNi4gTGV0IGZldGNoUGFyYW1zIGJlIGEgbmV3IGZldGNoIHBhcmFtcyB3aG9zZVxuICAvLyByZXF1ZXN0IGlzIHJlcXVlc3QsXG4gIC8vIHRpbWluZyBpbmZvIGlzIHRpbWluZ0luZm8sXG4gIC8vIHByb2Nlc3MgcmVxdWVzdCBib2R5IGNodW5rIGxlbmd0aCBpcyBwcm9jZXNzUmVxdWVzdEJvZHlDaHVua0xlbmd0aCxcbiAgLy8gcHJvY2VzcyByZXF1ZXN0IGVuZC1vZi1ib2R5IGlzIHByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5LFxuICAvLyBwcm9jZXNzIHJlc3BvbnNlIGlzIHByb2Nlc3NSZXNwb25zZSxcbiAgLy8gcHJvY2VzcyByZXNwb25zZSBjb25zdW1lIGJvZHkgaXMgcHJvY2Vzc1Jlc3BvbnNlQ29uc3VtZUJvZHksXG4gIC8vIHByb2Nlc3MgcmVzcG9uc2UgZW5kLW9mLWJvZHkgaXMgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5LFxuICAvLyB0YXNrIGRlc3RpbmF0aW9uIGlzIHRhc2tEZXN0aW5hdGlvbixcbiAgLy8gYW5kIGNyb3NzLW9yaWdpbiBpc29sYXRlZCBjYXBhYmlsaXR5IGlzIGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5LlxuICBjb25zdCBmZXRjaFBhcmFtcyA9IHtcbiAgICBjb250cm9sbGVyOiBuZXcgRmV0Y2goZGlzcGF0Y2hlciksXG4gICAgcmVxdWVzdCxcbiAgICB0aW1pbmdJbmZvLFxuICAgIHByb2Nlc3NSZXF1ZXN0Qm9keUNodW5rTGVuZ3RoLFxuICAgIHByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5LFxuICAgIHByb2Nlc3NSZXNwb25zZSxcbiAgICBwcm9jZXNzUmVzcG9uc2VDb25zdW1lQm9keSxcbiAgICBwcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHksXG4gICAgdGFza0Rlc3RpbmF0aW9uLFxuICAgIGNyb3NzT3JpZ2luSXNvbGF0ZWRDYXBhYmlsaXR5XG4gIH1cblxuICAvLyA3LiBJZiByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIGEgYnl0ZSBzZXF1ZW5jZSwgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXMgYm9keSB0b1xuICAvLyAgICByZXF1ZXN0XHUyMDE5cyBib2R5IGFzIGEgYm9keS5cbiAgLy8gTk9URTogU2luY2UgZmV0Y2hpbmcgaXMgb25seSBjYWxsZWQgZnJvbSBmZXRjaCwgYm9keSBzaG91bGQgYWxyZWFkeSBiZVxuICAvLyBleHRyYWN0ZWQuXG4gIGFzc2VydCghcmVxdWVzdC5ib2R5IHx8IHJlcXVlc3QuYm9keS5zdHJlYW0pXG5cbiAgLy8gOC4gSWYgcmVxdWVzdFx1MjAxOXMgd2luZG93IGlzIFwiY2xpZW50XCIsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHdpbmRvdyB0byByZXF1ZXN0XHUyMDE5c1xuICAvLyBjbGllbnQsIGlmIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgZ2xvYmFsIG9iamVjdCBpcyBhIFdpbmRvdyBvYmplY3Q7IG90aGVyd2lzZVxuICAvLyBcIm5vLXdpbmRvd1wiLlxuICBpZiAocmVxdWVzdC53aW5kb3cgPT09ICdjbGllbnQnKSB7XG4gICAgLy8gVE9ETzogV2hhdCBpZiByZXF1ZXN0LmNsaWVudCBpcyBudWxsP1xuICAgIHJlcXVlc3Qud2luZG93ID1cbiAgICAgIHJlcXVlc3QuY2xpZW50Py5nbG9iYWxPYmplY3Q/LmNvbnN0cnVjdG9yPy5uYW1lID09PSAnV2luZG93J1xuICAgICAgICA/IHJlcXVlc3QuY2xpZW50XG4gICAgICAgIDogJ25vLXdpbmRvdydcbiAgfVxuXG4gIC8vIDkuIElmIHJlcXVlc3RcdTIwMTlzIG9yaWdpbiBpcyBcImNsaWVudFwiLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyBvcmlnaW4gdG8gcmVxdWVzdFx1MjAxOXNcbiAgLy8gY2xpZW50XHUyMDE5cyBvcmlnaW4uXG4gIGlmIChyZXF1ZXN0Lm9yaWdpbiA9PT0gJ2NsaWVudCcpIHtcbiAgICAvLyBUT0RPOiBXaGF0IGlmIHJlcXVlc3QuY2xpZW50IGlzIG51bGw/XG4gICAgcmVxdWVzdC5vcmlnaW4gPSByZXF1ZXN0LmNsaWVudD8ub3JpZ2luXG4gIH1cblxuICAvLyAxMC4gSWYgYWxsIG9mIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgdHJ1ZTpcbiAgLy8gVE9ET1xuXG4gIC8vIDExLiBJZiByZXF1ZXN0XHUyMDE5cyBwb2xpY3kgY29udGFpbmVyIGlzIFwiY2xpZW50XCIsIHRoZW46XG4gIGlmIChyZXF1ZXN0LnBvbGljeUNvbnRhaW5lciA9PT0gJ2NsaWVudCcpIHtcbiAgICAvLyAxLiBJZiByZXF1ZXN0XHUyMDE5cyBjbGllbnQgaXMgbm9uLW51bGwsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIHBvbGljeVxuICAgIC8vIGNvbnRhaW5lciB0byBhIGNsb25lIG9mIHJlcXVlc3RcdTIwMTlzIGNsaWVudFx1MjAxOXMgcG9saWN5IGNvbnRhaW5lci4gW0hUTUxdXG4gICAgaWYgKHJlcXVlc3QuY2xpZW50ICE9IG51bGwpIHtcbiAgICAgIHJlcXVlc3QucG9saWN5Q29udGFpbmVyID0gY2xvbmVQb2xpY3lDb250YWluZXIoXG4gICAgICAgIHJlcXVlc3QuY2xpZW50LnBvbGljeUNvbnRhaW5lclxuICAgICAgKVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAyLiBPdGhlcndpc2UsIHNldCByZXF1ZXN0XHUyMDE5cyBwb2xpY3kgY29udGFpbmVyIHRvIGEgbmV3IHBvbGljeVxuICAgICAgLy8gY29udGFpbmVyLlxuICAgICAgcmVxdWVzdC5wb2xpY3lDb250YWluZXIgPSBtYWtlUG9saWN5Q29udGFpbmVyKClcbiAgICB9XG4gIH1cblxuICAvLyAxMi4gSWYgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBgQWNjZXB0YCwgdGhlbjpcbiAgaWYgKCFyZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdhY2NlcHQnKSkge1xuICAgIC8vIDEuIExldCB2YWx1ZSBiZSBgKi8qYC5cbiAgICBjb25zdCB2YWx1ZSA9ICcqLyonXG5cbiAgICAvLyAyLiBBIHVzZXIgYWdlbnQgc2hvdWxkIHNldCB2YWx1ZSB0byB0aGUgZmlyc3QgbWF0Y2hpbmcgc3RhdGVtZW50LCBpZlxuICAgIC8vIGFueSwgc3dpdGNoaW5nIG9uIHJlcXVlc3RcdTIwMTlzIGRlc3RpbmF0aW9uOlxuICAgIC8vIFwiZG9jdW1lbnRcIlxuICAgIC8vIFwiZnJhbWVcIlxuICAgIC8vIFwiaWZyYW1lXCJcbiAgICAvLyBgdGV4dC9odG1sLGFwcGxpY2F0aW9uL3hodG1sK3htbCxhcHBsaWNhdGlvbi94bWw7cT0wLjksKi8qO3E9MC44YFxuICAgIC8vIFwiaW1hZ2VcIlxuICAgIC8vIGBpbWFnZS9wbmcsaW1hZ2Uvc3ZnK3htbCxpbWFnZS8qO3E9MC44LCovKjtxPTAuNWBcbiAgICAvLyBcInN0eWxlXCJcbiAgICAvLyBgdGV4dC9jc3MsKi8qO3E9MC4xYFxuICAgIC8vIFRPRE9cblxuICAgIC8vIDMuIEFwcGVuZCBgQWNjZXB0YC92YWx1ZSB0byByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnYWNjZXB0JywgdmFsdWUpXG4gIH1cblxuICAvLyAxMy4gSWYgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgZG9lcyBub3QgY29udGFpbiBgQWNjZXB0LUxhbmd1YWdlYCwgdGhlblxuICAvLyB1c2VyIGFnZW50cyBzaG91bGQgYXBwZW5kIGBBY2NlcHQtTGFuZ3VhZ2VgL2FuIGFwcHJvcHJpYXRlIHZhbHVlIHRvXG4gIC8vIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAoIXJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2FjY2VwdC1sYW5ndWFnZScpKSB7XG4gICAgcmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ2FjY2VwdC1sYW5ndWFnZScsICcqJylcbiAgfVxuXG4gIC8vIDE0LiBJZiByZXF1ZXN0XHUyMDE5cyBwcmlvcml0eSBpcyBudWxsLCB0aGVuIHVzZSByZXF1ZXN0XHUyMDE5cyBpbml0aWF0b3IgYW5kXG4gIC8vIGRlc3RpbmF0aW9uIGFwcHJvcHJpYXRlbHkgaW4gc2V0dGluZyByZXF1ZXN0XHUyMDE5cyBwcmlvcml0eSB0byBhXG4gIC8vIHVzZXItYWdlbnQtZGVmaW5lZCBvYmplY3QuXG4gIGlmIChyZXF1ZXN0LnByaW9yaXR5ID09PSBudWxsKSB7XG4gICAgLy8gVE9ET1xuICB9XG5cbiAgLy8gMTUuIElmIHJlcXVlc3QgaXMgYSBzdWJyZXNvdXJjZSByZXF1ZXN0LCB0aGVuOlxuICBpZiAoc3VicmVzb3VyY2VTZXQuaGFzKHJlcXVlc3QuZGVzdGluYXRpb24pKSB7XG4gICAgLy8gVE9ET1xuICB9XG5cbiAgLy8gMTYuIFJ1biBtYWluIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuICBtYWluRmV0Y2goZmV0Y2hQYXJhbXMpXG4gICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLnRlcm1pbmF0ZShlcnIpXG4gICAgfSlcblxuICAvLyAxNy4gUmV0dXJuIGZldGNoUGFyYW0ncyBjb250cm9sbGVyXG4gIHJldHVybiBmZXRjaFBhcmFtcy5jb250cm9sbGVyXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LW1haW4tZmV0Y2hcbmFzeW5jIGZ1bmN0aW9uIG1haW5GZXRjaCAoZmV0Y2hQYXJhbXMsIHJlY3Vyc2l2ZSA9IGZhbHNlKSB7XG4gIC8vIDEuIExldCByZXF1ZXN0IGJlIGZldGNoUGFyYW1zXHUyMDE5cyByZXF1ZXN0LlxuICBjb25zdCByZXF1ZXN0ID0gZmV0Y2hQYXJhbXMucmVxdWVzdFxuXG4gIC8vIDIuIExldCByZXNwb25zZSBiZSBudWxsLlxuICBsZXQgcmVzcG9uc2UgPSBudWxsXG5cbiAgLy8gMy4gSWYgcmVxdWVzdFx1MjAxOXMgbG9jYWwtVVJMcy1vbmx5IGZsYWcgaXMgc2V0IGFuZCByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTCBpc1xuICAvLyBub3QgbG9jYWwsIHRoZW4gc2V0IHJlc3BvbnNlIHRvIGEgbmV0d29yayBlcnJvci5cbiAgaWYgKHJlcXVlc3QubG9jYWxVUkxzT25seSAmJiAhdXJsSXNMb2NhbChyZXF1ZXN0Q3VycmVudFVSTChyZXF1ZXN0KSkpIHtcbiAgICByZXNwb25zZSA9IG1ha2VOZXR3b3JrRXJyb3IoJ2xvY2FsIFVSTHMgb25seScpXG4gIH1cblxuICAvLyA0LiBSdW4gcmVwb3J0IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IHZpb2xhdGlvbnMgZm9yIHJlcXVlc3QuXG4gIC8vIFRPRE9cblxuICAvLyA1LiBVcGdyYWRlIHJlcXVlc3QgdG8gYSBwb3RlbnRpYWxseSB0cnVzdHdvcnRoeSBVUkwsIGlmIGFwcHJvcHJpYXRlLlxuICB0cnlVcGdyYWRlUmVxdWVzdFRvQVBvdGVudGlhbGx5VHJ1c3R3b3J0aHlVUkwocmVxdWVzdClcblxuICAvLyA2LiBJZiBzaG91bGQgcmVxdWVzdCBiZSBibG9ja2VkIGR1ZSB0byBhIGJhZCBwb3J0LCBzaG91bGQgZmV0Y2hpbmcgcmVxdWVzdFxuICAvLyBiZSBibG9ja2VkIGFzIG1peGVkIGNvbnRlbnQsIG9yIHNob3VsZCByZXF1ZXN0IGJlIGJsb2NrZWQgYnkgQ29udGVudFxuICAvLyBTZWN1cml0eSBQb2xpY3kgcmV0dXJucyBibG9ja2VkLCB0aGVuIHNldCByZXNwb25zZSB0byBhIG5ldHdvcmsgZXJyb3IuXG4gIGlmIChyZXF1ZXN0QmFkUG9ydChyZXF1ZXN0KSA9PT0gJ2Jsb2NrZWQnKSB7XG4gICAgcmVzcG9uc2UgPSBtYWtlTmV0d29ya0Vycm9yKCdiYWQgcG9ydCcpXG4gIH1cbiAgLy8gVE9ETzogc2hvdWxkIGZldGNoaW5nIHJlcXVlc3QgYmUgYmxvY2tlZCBhcyBtaXhlZCBjb250ZW50P1xuICAvLyBUT0RPOiBzaG91bGQgcmVxdWVzdCBiZSBibG9ja2VkIGJ5IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5P1xuXG4gIC8vIDcuIElmIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIHBvbGljeSBpcyB0aGUgZW1wdHkgc3RyaW5nLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5c1xuICAvLyByZWZlcnJlciBwb2xpY3kgdG8gcmVxdWVzdFx1MjAxOXMgcG9saWN5IGNvbnRhaW5lclx1MjAxOXMgcmVmZXJyZXIgcG9saWN5LlxuICBpZiAocmVxdWVzdC5yZWZlcnJlclBvbGljeSA9PT0gJycpIHtcbiAgICByZXF1ZXN0LnJlZmVycmVyUG9saWN5ID0gcmVxdWVzdC5wb2xpY3lDb250YWluZXIucmVmZXJyZXJQb2xpY3lcbiAgfVxuXG4gIC8vIDguIElmIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyIGlzIG5vdCBcIm5vLXJlZmVycmVyXCIsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzXG4gIC8vIHJlZmVycmVyIHRvIHRoZSByZXN1bHQgb2YgaW52b2tpbmcgZGV0ZXJtaW5lIHJlcXVlc3RcdTIwMTlzIHJlZmVycmVyLlxuICBpZiAocmVxdWVzdC5yZWZlcnJlciAhPT0gJ25vLXJlZmVycmVyJykge1xuICAgIHJlcXVlc3QucmVmZXJyZXIgPSBkZXRlcm1pbmVSZXF1ZXN0c1JlZmVycmVyKHJlcXVlc3QpXG4gIH1cblxuICAvLyA5LiBTZXQgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIHNjaGVtZSB0byBcImh0dHBzXCIgaWYgYWxsIG9mIHRoZSBmb2xsb3dpbmdcbiAgLy8gY29uZGl0aW9ucyBhcmUgdHJ1ZTpcbiAgLy8gLSByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTFx1MjAxOXMgc2NoZW1lIGlzIFwiaHR0cFwiXG4gIC8vIC0gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIGhvc3QgaXMgYSBkb21haW5cbiAgLy8gLSBNYXRjaGluZyByZXF1ZXN0XHUyMDE5cyBjdXJyZW50IFVSTFx1MjAxOXMgaG9zdCBwZXIgS25vd24gSFNUUyBIb3N0IERvbWFpbiBOYW1lXG4gIC8vICAgTWF0Y2hpbmcgcmVzdWx0cyBpbiBlaXRoZXIgYSBzdXBlcmRvbWFpbiBtYXRjaCB3aXRoIGFuIGFzc2VydGVkXG4gIC8vICAgaW5jbHVkZVN1YkRvbWFpbnMgZGlyZWN0aXZlIG9yIGEgY29uZ3J1ZW50IG1hdGNoICh3aXRoIG9yIHdpdGhvdXQgYW5cbiAgLy8gICBhc3NlcnRlZCBpbmNsdWRlU3ViRG9tYWlucyBkaXJlY3RpdmUpLiBbSFNUU11cbiAgLy8gVE9ET1xuXG4gIC8vIDEwLiBJZiByZWN1cnNpdmUgaXMgZmFsc2UsIHRoZW4gcnVuIHRoZSByZW1haW5pbmcgc3RlcHMgaW4gcGFyYWxsZWwuXG4gIC8vIFRPRE9cblxuICAvLyAxMS4gSWYgcmVzcG9uc2UgaXMgbnVsbCwgdGhlbiBzZXQgcmVzcG9uc2UgdG8gdGhlIHJlc3VsdCBvZiBydW5uaW5nXG4gIC8vIHRoZSBzdGVwcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBmaXJzdCBtYXRjaGluZyBzdGF0ZW1lbnQ6XG4gIGlmIChyZXNwb25zZSA9PT0gbnVsbCkge1xuICAgIHJlc3BvbnNlID0gYXdhaXQgKGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGN1cnJlbnRVUkwgPSByZXF1ZXN0Q3VycmVudFVSTChyZXF1ZXN0KVxuXG4gICAgICBpZiAoXG4gICAgICAgIC8vIC0gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIG9yaWdpbiBpcyBzYW1lIG9yaWdpbiB3aXRoIHJlcXVlc3RcdTIwMTlzIG9yaWdpbixcbiAgICAgICAgLy8gICBhbmQgcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgaXMgXCJiYXNpY1wiXG4gICAgICAgIChzYW1lT3JpZ2luKGN1cnJlbnRVUkwsIHJlcXVlc3QudXJsKSAmJiByZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdiYXNpYycpIHx8XG4gICAgICAgIC8vIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBzY2hlbWUgaXMgXCJkYXRhXCJcbiAgICAgICAgKGN1cnJlbnRVUkwucHJvdG9jb2wgPT09ICdkYXRhOicpIHx8XG4gICAgICAgIC8vIC0gcmVxdWVzdFx1MjAxOXMgbW9kZSBpcyBcIm5hdmlnYXRlXCIgb3IgXCJ3ZWJzb2NrZXRcIlxuICAgICAgICAocmVxdWVzdC5tb2RlID09PSAnbmF2aWdhdGUnIHx8IHJlcXVlc3QubW9kZSA9PT0gJ3dlYnNvY2tldCcpXG4gICAgICApIHtcbiAgICAgICAgLy8gMS4gU2V0IHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nIHRvIFwiYmFzaWNcIi5cbiAgICAgICAgcmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID0gJ2Jhc2ljJ1xuXG4gICAgICAgIC8vIDIuIFJldHVybiB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgc2NoZW1lIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuICAgICAgICByZXR1cm4gYXdhaXQgc2NoZW1lRmV0Y2goZmV0Y2hQYXJhbXMpXG4gICAgICB9XG5cbiAgICAgIC8vIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJzYW1lLW9yaWdpblwiXG4gICAgICBpZiAocmVxdWVzdC5tb2RlID09PSAnc2FtZS1vcmlnaW4nKSB7XG4gICAgICAgIC8vIDEuIFJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKCdyZXF1ZXN0IG1vZGUgY2Fubm90IGJlIFwic2FtZS1vcmlnaW5cIicpXG4gICAgICB9XG5cbiAgICAgIC8vIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJuby1jb3JzXCJcbiAgICAgIGlmIChyZXF1ZXN0Lm1vZGUgPT09ICduby1jb3JzJykge1xuICAgICAgICAvLyAxLiBJZiByZXF1ZXN0XHUyMDE5cyByZWRpcmVjdCBtb2RlIGlzIG5vdCBcImZvbGxvd1wiLCB0aGVuIHJldHVybiBhIG5ldHdvcmtcbiAgICAgICAgLy8gZXJyb3IuXG4gICAgICAgIGlmIChyZXF1ZXN0LnJlZGlyZWN0ICE9PSAnZm9sbG93Jykge1xuICAgICAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKFxuICAgICAgICAgICAgJ3JlZGlyZWN0IG1vZGUgY2Fubm90IGJlIFwiZm9sbG93XCIgZm9yIFwibm8tY29yc1wiIHJlcXVlc3QnXG4gICAgICAgICAgKVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMi4gU2V0IHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nIHRvIFwib3BhcXVlXCIuXG4gICAgICAgIHJlcXVlc3QucmVzcG9uc2VUYWludGluZyA9ICdvcGFxdWUnXG5cbiAgICAgICAgLy8gMy4gUmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZyBzY2hlbWUgZmV0Y2ggZ2l2ZW4gZmV0Y2hQYXJhbXMuXG4gICAgICAgIHJldHVybiBhd2FpdCBzY2hlbWVGZXRjaChmZXRjaFBhcmFtcylcbiAgICAgIH1cblxuICAgICAgLy8gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIHNjaGVtZSBpcyBub3QgYW4gSFRUUChTKSBzY2hlbWVcbiAgICAgIGlmICghdXJsSXNIdHRwSHR0cHNTY2hlbWUocmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCkpKSB7XG4gICAgICAgIC8vIFJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKCdVUkwgc2NoZW1lIG11c3QgYmUgYSBIVFRQKFMpIHNjaGVtZScpXG4gICAgICB9XG5cbiAgICAgIC8vIC0gcmVxdWVzdFx1MjAxOXMgdXNlLUNPUlMtcHJlZmxpZ2h0IGZsYWcgaXMgc2V0XG4gICAgICAvLyAtIHJlcXVlc3RcdTIwMTlzIHVuc2FmZS1yZXF1ZXN0IGZsYWcgaXMgc2V0IGFuZCBlaXRoZXIgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIGlzXG4gICAgICAvLyAgIG5vdCBhIENPUlMtc2FmZWxpc3RlZCBtZXRob2Qgb3IgQ09SUy11bnNhZmUgcmVxdWVzdC1oZWFkZXIgbmFtZXMgd2l0aFxuICAgICAgLy8gICByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBpcyBub3QgZW1wdHlcbiAgICAgIC8vICAgIDEuIFNldCByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyB0byBcImNvcnNcIi5cbiAgICAgIC8vICAgIDIuIExldCBjb3JzV2l0aFByZWZsaWdodFJlc3BvbnNlIGJlIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQIGZldGNoXG4gICAgICAvLyAgICBnaXZlbiBmZXRjaFBhcmFtcyBhbmQgdHJ1ZS5cbiAgICAgIC8vICAgIDMuIElmIGNvcnNXaXRoUHJlZmxpZ2h0UmVzcG9uc2UgaXMgYSBuZXR3b3JrIGVycm9yLCB0aGVuIGNsZWFyIGNhY2hlXG4gICAgICAvLyAgICBlbnRyaWVzIHVzaW5nIHJlcXVlc3QuXG4gICAgICAvLyAgICA0LiBSZXR1cm4gY29yc1dpdGhQcmVmbGlnaHRSZXNwb25zZS5cbiAgICAgIC8vIFRPRE9cblxuICAgICAgLy8gT3RoZXJ3aXNlXG4gICAgICAvLyAgICAxLiBTZXQgcmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgdG8gXCJjb3JzXCIuXG4gICAgICByZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPSAnY29ycydcblxuICAgICAgLy8gICAgMi4gUmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuICAgICAgcmV0dXJuIGF3YWl0IGh0dHBGZXRjaChmZXRjaFBhcmFtcylcbiAgICB9KSgpXG4gIH1cblxuICAvLyAxMi4gSWYgcmVjdXJzaXZlIGlzIHRydWUsIHRoZW4gcmV0dXJuIHJlc3BvbnNlLlxuICBpZiAocmVjdXJzaXZlKSB7XG4gICAgcmV0dXJuIHJlc3BvbnNlXG4gIH1cblxuICAvLyAxMy4gSWYgcmVzcG9uc2UgaXMgbm90IGEgbmV0d29yayBlcnJvciBhbmQgcmVzcG9uc2UgaXMgbm90IGEgZmlsdGVyZWRcbiAgLy8gcmVzcG9uc2UsIHRoZW46XG4gIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDAgJiYgIXJlc3BvbnNlLmludGVybmFsUmVzcG9uc2UpIHtcbiAgICAvLyBJZiByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBpcyBcImNvcnNcIiwgdGhlbjpcbiAgICBpZiAocmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnY29ycycpIHtcbiAgICAgIC8vIDEuIExldCBoZWFkZXJOYW1lcyBiZSB0aGUgcmVzdWx0IG9mIGV4dHJhY3RpbmcgaGVhZGVyIGxpc3QgdmFsdWVzXG4gICAgICAvLyBnaXZlbiBgQWNjZXNzLUNvbnRyb2wtRXhwb3NlLUhlYWRlcnNgIGFuZCByZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICAvLyBUT0RPXG4gICAgICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyBjcmVkZW50aWFscyBtb2RlIGlzIG5vdCBcImluY2x1ZGVcIiBhbmQgaGVhZGVyTmFtZXNcbiAgICAgIC8vIGNvbnRhaW5zIGAqYCwgdGhlbiBzZXQgcmVzcG9uc2VcdTIwMTlzIENPUlMtZXhwb3NlZCBoZWFkZXItbmFtZSBsaXN0IHRvXG4gICAgICAvLyBhbGwgdW5pcXVlIGhlYWRlciBuYW1lcyBpbiByZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICAvLyBUT0RPXG4gICAgICAvLyAzLiBPdGhlcndpc2UsIGlmIGhlYWRlck5hbWVzIGlzIG5vdCBudWxsIG9yIGZhaWx1cmUsIHRoZW4gc2V0XG4gICAgICAvLyByZXNwb25zZVx1MjAxOXMgQ09SUy1leHBvc2VkIGhlYWRlci1uYW1lIGxpc3QgdG8gaGVhZGVyTmFtZXMuXG4gICAgICAvLyBUT0RPXG4gICAgfVxuXG4gICAgLy8gU2V0IHJlc3BvbnNlIHRvIHRoZSBmb2xsb3dpbmcgZmlsdGVyZWQgcmVzcG9uc2Ugd2l0aCByZXNwb25zZSBhcyBpdHNcbiAgICAvLyBpbnRlcm5hbCByZXNwb25zZSwgZGVwZW5kaW5nIG9uIHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nOlxuICAgIGlmIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdiYXNpYycpIHtcbiAgICAgIHJlc3BvbnNlID0gZmlsdGVyUmVzcG9uc2UocmVzcG9uc2UsICdiYXNpYycpXG4gICAgfSBlbHNlIGlmIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdjb3JzJykge1xuICAgICAgcmVzcG9uc2UgPSBmaWx0ZXJSZXNwb25zZShyZXNwb25zZSwgJ2NvcnMnKVxuICAgIH0gZWxzZSBpZiAocmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnb3BhcXVlJykge1xuICAgICAgcmVzcG9uc2UgPSBmaWx0ZXJSZXNwb25zZShyZXNwb25zZSwgJ29wYXF1ZScpXG4gICAgfSBlbHNlIHtcbiAgICAgIGFzc2VydChmYWxzZSlcbiAgICB9XG4gIH1cblxuICAvLyAxNC4gTGV0IGludGVybmFsUmVzcG9uc2UgYmUgcmVzcG9uc2UsIGlmIHJlc3BvbnNlIGlzIGEgbmV0d29yayBlcnJvcixcbiAgLy8gYW5kIHJlc3BvbnNlXHUyMDE5cyBpbnRlcm5hbCByZXNwb25zZSBvdGhlcndpc2UuXG4gIGxldCBpbnRlcm5hbFJlc3BvbnNlID1cbiAgICByZXNwb25zZS5zdGF0dXMgPT09IDAgPyByZXNwb25zZSA6IHJlc3BvbnNlLmludGVybmFsUmVzcG9uc2VcblxuICAvLyAxNS4gSWYgaW50ZXJuYWxSZXNwb25zZVx1MjAxOXMgVVJMIGxpc3QgaXMgZW1wdHksIHRoZW4gc2V0IGl0IHRvIGEgY2xvbmUgb2ZcbiAgLy8gcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3QuXG4gIGlmIChpbnRlcm5hbFJlc3BvbnNlLnVybExpc3QubGVuZ3RoID09PSAwKSB7XG4gICAgaW50ZXJuYWxSZXNwb25zZS51cmxMaXN0LnB1c2goLi4ucmVxdWVzdC51cmxMaXN0KVxuICB9XG5cbiAgLy8gMTYuIElmIHJlcXVlc3RcdTIwMTlzIHRpbWluZyBhbGxvdyBmYWlsZWQgZmxhZyBpcyB1bnNldCwgdGhlbiBzZXRcbiAgLy8gaW50ZXJuYWxSZXNwb25zZVx1MjAxOXMgdGltaW5nIGFsbG93IHBhc3NlZCBmbGFnLlxuICBpZiAoIXJlcXVlc3QudGltaW5nQWxsb3dGYWlsZWQpIHtcbiAgICByZXNwb25zZS50aW1pbmdBbGxvd1Bhc3NlZCA9IHRydWVcbiAgfVxuXG4gIC8vIDE3LiBJZiByZXNwb25zZSBpcyBub3QgYSBuZXR3b3JrIGVycm9yIGFuZCBhbnkgb2YgdGhlIGZvbGxvd2luZyByZXR1cm5zXG4gIC8vIGJsb2NrZWRcbiAgLy8gLSBzaG91bGQgaW50ZXJuYWxSZXNwb25zZSB0byByZXF1ZXN0IGJlIGJsb2NrZWQgYXMgbWl4ZWQgY29udGVudFxuICAvLyAtIHNob3VsZCBpbnRlcm5hbFJlc3BvbnNlIHRvIHJlcXVlc3QgYmUgYmxvY2tlZCBieSBDb250ZW50IFNlY3VyaXR5IFBvbGljeVxuICAvLyAtIHNob3VsZCBpbnRlcm5hbFJlc3BvbnNlIHRvIHJlcXVlc3QgYmUgYmxvY2tlZCBkdWUgdG8gaXRzIE1JTUUgdHlwZVxuICAvLyAtIHNob3VsZCBpbnRlcm5hbFJlc3BvbnNlIHRvIHJlcXVlc3QgYmUgYmxvY2tlZCBkdWUgdG8gbm9zbmlmZlxuICAvLyBUT0RPXG5cbiAgLy8gMTguIElmIHJlc3BvbnNlXHUyMDE5cyB0eXBlIGlzIFwib3BhcXVlXCIsIGludGVybmFsUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyAyMDYsXG4gIC8vIGludGVybmFsUmVzcG9uc2VcdTIwMTlzIHJhbmdlLXJlcXVlc3RlZCBmbGFnIGlzIHNldCwgYW5kIHJlcXVlc3RcdTIwMTlzIGhlYWRlclxuICAvLyBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYFJhbmdlYCwgdGhlbiBzZXQgcmVzcG9uc2UgYW5kIGludGVybmFsUmVzcG9uc2VcbiAgLy8gdG8gYSBuZXR3b3JrIGVycm9yLlxuICBpZiAoXG4gICAgcmVzcG9uc2UudHlwZSA9PT0gJ29wYXF1ZScgJiZcbiAgICBpbnRlcm5hbFJlc3BvbnNlLnN0YXR1cyA9PT0gMjA2ICYmXG4gICAgaW50ZXJuYWxSZXNwb25zZS5yYW5nZVJlcXVlc3RlZCAmJlxuICAgICFyZXF1ZXN0LmhlYWRlcnMuY29udGFpbnMoJ3JhbmdlJylcbiAgKSB7XG4gICAgcmVzcG9uc2UgPSBpbnRlcm5hbFJlc3BvbnNlID0gbWFrZU5ldHdvcmtFcnJvcigpXG4gIH1cblxuICAvLyAxOS4gSWYgcmVzcG9uc2UgaXMgbm90IGEgbmV0d29yayBlcnJvciBhbmQgZWl0aGVyIHJlcXVlc3RcdTIwMTlzIG1ldGhvZCBpc1xuICAvLyBgSEVBRGAgb3IgYENPTk5FQ1RgLCBvciBpbnRlcm5hbFJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgYSBudWxsIGJvZHkgc3RhdHVzLFxuICAvLyBzZXQgaW50ZXJuYWxSZXNwb25zZVx1MjAxOXMgYm9keSB0byBudWxsIGFuZCBkaXNyZWdhcmQgYW55IGVucXVldWluZyB0b3dhcmRcbiAgLy8gaXQgKGlmIGFueSkuXG4gIGlmIChcbiAgICByZXNwb25zZS5zdGF0dXMgIT09IDAgJiZcbiAgICAocmVxdWVzdC5tZXRob2QgPT09ICdIRUFEJyB8fFxuICAgICAgcmVxdWVzdC5tZXRob2QgPT09ICdDT05ORUNUJyB8fFxuICAgICAgbnVsbEJvZHlTdGF0dXMuaW5jbHVkZXMoaW50ZXJuYWxSZXNwb25zZS5zdGF0dXMpKVxuICApIHtcbiAgICBpbnRlcm5hbFJlc3BvbnNlLmJvZHkgPSBudWxsXG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5kdW1wID0gdHJ1ZVxuICB9XG5cbiAgLy8gMjAuIElmIHJlcXVlc3RcdTIwMTlzIGludGVncml0eSBtZXRhZGF0YSBpcyBub3QgdGhlIGVtcHR5IHN0cmluZywgdGhlbjpcbiAgaWYgKHJlcXVlc3QuaW50ZWdyaXR5KSB7XG4gICAgLy8gMS4gTGV0IHByb2Nlc3NCb2R5RXJyb3IgYmUgdGhpcyBzdGVwOiBydW4gZmV0Y2ggZmluYWxlIGdpdmVuIGZldGNoUGFyYW1zXG4gICAgLy8gYW5kIGEgbmV0d29yayBlcnJvci5cbiAgICBjb25zdCBwcm9jZXNzQm9keUVycm9yID0gKHJlYXNvbikgPT5cbiAgICAgIGZldGNoRmluYWxlKGZldGNoUGFyYW1zLCBtYWtlTmV0d29ya0Vycm9yKHJlYXNvbikpXG5cbiAgICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBpcyBcIm9wYXF1ZVwiLCBvciByZXNwb25zZVx1MjAxOXMgYm9keSBpcyBudWxsLFxuICAgIC8vIHRoZW4gcnVuIHByb2Nlc3NCb2R5RXJyb3IgYW5kIGFib3J0IHRoZXNlIHN0ZXBzLlxuICAgIGlmIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdvcGFxdWUnIHx8IHJlc3BvbnNlLmJvZHkgPT0gbnVsbCkge1xuICAgICAgcHJvY2Vzc0JvZHlFcnJvcihyZXNwb25zZS5lcnJvcilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIDMuIExldCBwcm9jZXNzQm9keSBnaXZlbiBieXRlcyBiZSB0aGVzZSBzdGVwczpcbiAgICBjb25zdCBwcm9jZXNzQm9keSA9IChieXRlcykgPT4ge1xuICAgICAgLy8gMS4gSWYgYnl0ZXMgZG8gbm90IG1hdGNoIHJlcXVlc3RcdTIwMTlzIGludGVncml0eSBtZXRhZGF0YSxcbiAgICAgIC8vIHRoZW4gcnVuIHByb2Nlc3NCb2R5RXJyb3IgYW5kIGFib3J0IHRoZXNlIHN0ZXBzLiBbU1JJXVxuICAgICAgaWYgKCFieXRlc01hdGNoKGJ5dGVzLCByZXF1ZXN0LmludGVncml0eSkpIHtcbiAgICAgICAgcHJvY2Vzc0JvZHlFcnJvcignaW50ZWdyaXR5IG1pc21hdGNoJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIFNldCByZXNwb25zZVx1MjAxOXMgYm9keSB0byBieXRlcyBhcyBhIGJvZHkuXG4gICAgICByZXNwb25zZS5ib2R5ID0gc2FmZWx5RXh0cmFjdEJvZHkoYnl0ZXMpWzBdXG5cbiAgICAgIC8vIDMuIFJ1biBmZXRjaCBmaW5hbGUgZ2l2ZW4gZmV0Y2hQYXJhbXMgYW5kIHJlc3BvbnNlLlxuICAgICAgZmV0Y2hGaW5hbGUoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKVxuICAgIH1cblxuICAgIC8vIDQuIEZ1bGx5IHJlYWQgcmVzcG9uc2VcdTIwMTlzIGJvZHkgZ2l2ZW4gcHJvY2Vzc0JvZHkgYW5kIHByb2Nlc3NCb2R5RXJyb3IuXG4gICAgYXdhaXQgZnVsbHlSZWFkQm9keShyZXNwb25zZS5ib2R5LCBwcm9jZXNzQm9keSwgcHJvY2Vzc0JvZHlFcnJvcilcbiAgfSBlbHNlIHtcbiAgICAvLyAyMS4gT3RoZXJ3aXNlLCBydW4gZmV0Y2ggZmluYWxlIGdpdmVuIGZldGNoUGFyYW1zIGFuZCByZXNwb25zZS5cbiAgICBmZXRjaEZpbmFsZShmZXRjaFBhcmFtcywgcmVzcG9uc2UpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtc2NoZW1lLWZldGNoXG4vLyBnaXZlbiBhIGZldGNoIHBhcmFtcyBmZXRjaFBhcmFtc1xuZnVuY3Rpb24gc2NoZW1lRmV0Y2ggKGZldGNoUGFyYW1zKSB7XG4gIC8vIE5vdGU6IHNpbmNlIHRoZSBjb25uZWN0aW9uIGlzIGRlc3Ryb3llZCBvbiByZWRpcmVjdCwgd2hpY2ggc2V0cyBmZXRjaFBhcmFtcyB0byBhXG4gIC8vIGNhbmNlbGxlZCBzdGF0ZSwgd2UgZG8gbm90IHdhbnQgdGhpcyBjb25kaXRpb24gdG8gdHJpZ2dlciAqdW5sZXNzKiB0aGVyZSBoYXZlIGJlZW5cbiAgLy8gbm8gcmVkaXJlY3RzLiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZGVqcy91bmRpY2kvaXNzdWVzLzE3NzZcbiAgLy8gMS4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gcmV0dXJuIHRoZSBhcHByb3ByaWF0ZSBuZXR3b3JrIGVycm9yIGZvciBmZXRjaFBhcmFtcy5cbiAgaWYgKGlzQ2FuY2VsbGVkKGZldGNoUGFyYW1zKSAmJiBmZXRjaFBhcmFtcy5yZXF1ZXN0LnJlZGlyZWN0Q291bnQgPT09IDApIHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VBcHByb3ByaWF0ZU5ldHdvcmtFcnJvcihmZXRjaFBhcmFtcykpXG4gIH1cblxuICAvLyAyLiBMZXQgcmVxdWVzdCBiZSBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdC5cbiAgY29uc3QgeyByZXF1ZXN0IH0gPSBmZXRjaFBhcmFtc1xuXG4gIGNvbnN0IHsgcHJvdG9jb2w6IHNjaGVtZSB9ID0gcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdClcblxuICAvLyAzLiBTd2l0Y2ggb24gcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIHNjaGVtZSBhbmQgcnVuIHRoZSBhc3NvY2lhdGVkIHN0ZXBzOlxuICBzd2l0Y2ggKHNjaGVtZSkge1xuICAgIGNhc2UgJ2Fib3V0Oic6IHtcbiAgICAgIC8vIElmIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMXHUyMDE5cyBwYXRoIGlzIHRoZSBzdHJpbmcgXCJibGFua1wiLCB0aGVuIHJldHVybiBhIG5ldyByZXNwb25zZVxuICAgICAgLy8gd2hvc2Ugc3RhdHVzIG1lc3NhZ2UgaXMgYE9LYCwgaGVhZGVyIGxpc3QgaXMgXHUwMEFCIChgQ29udGVudC1UeXBlYCwgYHRleHQvaHRtbDtjaGFyc2V0PXV0Zi04YCkgXHUwMEJCLFxuICAgICAgLy8gYW5kIGJvZHkgaXMgdGhlIGVtcHR5IGJ5dGUgc2VxdWVuY2UgYXMgYSBib2R5LlxuXG4gICAgICAvLyBPdGhlcndpc2UsIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoJ2Fib3V0IHNjaGVtZSBpcyBub3Qgc3VwcG9ydGVkJykpXG4gICAgfVxuICAgIGNhc2UgJ2Jsb2I6Jzoge1xuICAgICAgaWYgKCFyZXNvbHZlT2JqZWN0VVJMKSB7XG4gICAgICAgIHJlc29sdmVPYmplY3RVUkwgPSByZXF1aXJlKCdidWZmZXInKS5yZXNvbHZlT2JqZWN0VVJMXG4gICAgICB9XG5cbiAgICAgIC8vIDEuIExldCBibG9iVVJMRW50cnkgYmUgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIGJsb2IgVVJMIGVudHJ5LlxuICAgICAgY29uc3QgYmxvYlVSTEVudHJ5ID0gcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdClcblxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3dlYi1wbGF0Zm9ybS10ZXN0cy93cHQvYmxvYi83YjBlYmFjY2M2MmI1NjZhMTk2NTM5NmU1YmU3YmIyYmMwNmY4NDFmL0ZpbGVBUEkvdXJsL3Jlc291cmNlcy9mZXRjaC10ZXN0cy5qcyNMNTItTDU2XG4gICAgICAvLyBCdWZmZXIucmVzb2x2ZU9iamVjdFVSTCBkb2VzIG5vdCBpZ25vcmUgVVJMIHF1ZXJpZXMuXG4gICAgICBpZiAoYmxvYlVSTEVudHJ5LnNlYXJjaC5sZW5ndGggIT09IDApIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdOZXR3b3JrRXJyb3Igd2hlbiBhdHRlbXB0aW5nIHRvIGZldGNoIHJlc291cmNlLicpKVxuICAgICAgfVxuXG4gICAgICBjb25zdCBibG9iVVJMRW50cnlPYmplY3QgPSByZXNvbHZlT2JqZWN0VVJMKGJsb2JVUkxFbnRyeS50b1N0cmluZygpKVxuXG4gICAgICAvLyAyLiBJZiByZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgbm90IGBHRVRgLCBibG9iVVJMRW50cnkgaXMgbnVsbCwgb3IgYmxvYlVSTEVudHJ5XHUyMDE5c1xuICAgICAgLy8gICAgb2JqZWN0IGlzIG5vdCBhIEJsb2Igb2JqZWN0LCB0aGVuIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICBpZiAocmVxdWVzdC5tZXRob2QgIT09ICdHRVQnIHx8ICFpc0Jsb2JMaWtlKGJsb2JVUkxFbnRyeU9iamVjdCkpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdpbnZhbGlkIG1ldGhvZCcpKVxuICAgICAgfVxuXG4gICAgICAvLyAzLiBMZXQgYm9keVdpdGhUeXBlIGJlIHRoZSByZXN1bHQgb2Ygc2FmZWx5IGV4dHJhY3RpbmcgYmxvYlVSTEVudHJ5XHUyMDE5cyBvYmplY3QuXG4gICAgICBjb25zdCBib2R5V2l0aFR5cGUgPSBzYWZlbHlFeHRyYWN0Qm9keShibG9iVVJMRW50cnlPYmplY3QpXG5cbiAgICAgIC8vIDQuIExldCBib2R5IGJlIGJvZHlXaXRoVHlwZVx1MjAxOXMgYm9keS5cbiAgICAgIGNvbnN0IGJvZHkgPSBib2R5V2l0aFR5cGVbMF1cblxuICAgICAgLy8gNS4gTGV0IGxlbmd0aCBiZSBib2R5XHUyMDE5cyBsZW5ndGgsIHNlcmlhbGl6ZWQgYW5kIGlzb21vcnBoaWMgZW5jb2RlZC5cbiAgICAgIGNvbnN0IGxlbmd0aCA9IGlzb21vcnBoaWNFbmNvZGUoYCR7Ym9keS5sZW5ndGh9YClcblxuICAgICAgLy8gNi4gTGV0IHR5cGUgYmUgYm9keVdpdGhUeXBlXHUyMDE5cyB0eXBlIGlmIGl0IGlzIG5vbi1udWxsOyBvdGhlcndpc2UgdGhlIGVtcHR5IGJ5dGUgc2VxdWVuY2UuXG4gICAgICBjb25zdCB0eXBlID0gYm9keVdpdGhUeXBlWzFdID8/ICcnXG5cbiAgICAgIC8vIDcuIFJldHVybiBhIG5ldyByZXNwb25zZSB3aG9zZSBzdGF0dXMgbWVzc2FnZSBpcyBgT0tgLCBoZWFkZXIgbGlzdCBpc1xuICAgICAgLy8gICAgXHUwMEFCIChgQ29udGVudC1MZW5ndGhgLCBsZW5ndGgpLCAoYENvbnRlbnQtVHlwZWAsIHR5cGUpIFx1MDBCQiwgYW5kIGJvZHkgaXMgYm9keS5cbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gbWFrZVJlc3BvbnNlKHtcbiAgICAgICAgc3RhdHVzVGV4dDogJ09LJyxcbiAgICAgICAgaGVhZGVyc0xpc3Q6IFtcbiAgICAgICAgICBbJ2NvbnRlbnQtbGVuZ3RoJywgeyBuYW1lOiAnQ29udGVudC1MZW5ndGgnLCB2YWx1ZTogbGVuZ3RoIH1dLFxuICAgICAgICAgIFsnY29udGVudC10eXBlJywgeyBuYW1lOiAnQ29udGVudC1UeXBlJywgdmFsdWU6IHR5cGUgfV1cbiAgICAgICAgXVxuICAgICAgfSlcblxuICAgICAgcmVzcG9uc2UuYm9keSA9IGJvZHlcblxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXNwb25zZSlcbiAgICB9XG4gICAgY2FzZSAnZGF0YTonOiB7XG4gICAgICAvLyAxLiBMZXQgZGF0YVVSTFN0cnVjdCBiZSB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgdGhlXG4gICAgICAvLyAgICBkYXRhOiBVUkwgcHJvY2Vzc29yIG9uIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMLlxuICAgICAgY29uc3QgY3VycmVudFVSTCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG4gICAgICBjb25zdCBkYXRhVVJMU3RydWN0ID0gZGF0YVVSTFByb2Nlc3NvcihjdXJyZW50VVJMKVxuXG4gICAgICAvLyAyLiBJZiBkYXRhVVJMU3RydWN0IGlzIGZhaWx1cmUsIHRoZW4gcmV0dXJuIGFcbiAgICAgIC8vICAgIG5ldHdvcmsgZXJyb3IuXG4gICAgICBpZiAoZGF0YVVSTFN0cnVjdCA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcignZmFpbGVkIHRvIGZldGNoIHRoZSBkYXRhIFVSTCcpKVxuICAgICAgfVxuXG4gICAgICAvLyAzLiBMZXQgbWltZVR5cGUgYmUgZGF0YVVSTFN0cnVjdFx1MjAxOXMgTUlNRSB0eXBlLCBzZXJpYWxpemVkLlxuICAgICAgY29uc3QgbWltZVR5cGUgPSBzZXJpYWxpemVBTWltZVR5cGUoZGF0YVVSTFN0cnVjdC5taW1lVHlwZSlcblxuICAgICAgLy8gNC4gUmV0dXJuIGEgcmVzcG9uc2Ugd2hvc2Ugc3RhdHVzIG1lc3NhZ2UgaXMgYE9LYCxcbiAgICAgIC8vICAgIGhlYWRlciBsaXN0IGlzIFx1MDBBQiAoYENvbnRlbnQtVHlwZWAsIG1pbWVUeXBlKSBcdTAwQkIsXG4gICAgICAvLyAgICBhbmQgYm9keSBpcyBkYXRhVVJMU3RydWN0XHUyMDE5cyBib2R5IGFzIGEgYm9keS5cbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZVJlc3BvbnNlKHtcbiAgICAgICAgc3RhdHVzVGV4dDogJ09LJyxcbiAgICAgICAgaGVhZGVyc0xpc3Q6IFtcbiAgICAgICAgICBbJ2NvbnRlbnQtdHlwZScsIHsgbmFtZTogJ0NvbnRlbnQtVHlwZScsIHZhbHVlOiBtaW1lVHlwZSB9XVxuICAgICAgICBdLFxuICAgICAgICBib2R5OiBzYWZlbHlFeHRyYWN0Qm9keShkYXRhVVJMU3RydWN0LmJvZHkpWzBdXG4gICAgICB9KSlcbiAgICB9XG4gICAgY2FzZSAnZmlsZTonOiB7XG4gICAgICAvLyBGb3Igbm93LCB1bmZvcnR1bmF0ZSBhcyBpdCBpcywgZmlsZSBVUkxzIGFyZSBsZWZ0IGFzIGFuIGV4ZXJjaXNlIGZvciB0aGUgcmVhZGVyLlxuICAgICAgLy8gV2hlbiBpbiBkb3VidCwgcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcignbm90IGltcGxlbWVudGVkLi4uIHlldC4uLicpKVxuICAgIH1cbiAgICBjYXNlICdodHRwOic6XG4gICAgY2FzZSAnaHR0cHM6Jzoge1xuICAgICAgLy8gUmV0dXJuIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQIGZldGNoIGdpdmVuIGZldGNoUGFyYW1zLlxuXG4gICAgICByZXR1cm4gaHR0cEZldGNoKGZldGNoUGFyYW1zKVxuICAgICAgICAuY2F0Y2goKGVycikgPT4gbWFrZU5ldHdvcmtFcnJvcihlcnIpKVxuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoJ3Vua25vd24gc2NoZW1lJykpXG4gICAgfVxuICB9XG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmaW5hbGl6ZS1yZXNwb25zZVxuZnVuY3Rpb24gZmluYWxpemVSZXNwb25zZSAoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKSB7XG4gIC8vIDEuIFNldCBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgZG9uZSBmbGFnLlxuICBmZXRjaFBhcmFtcy5yZXF1ZXN0LmRvbmUgPSB0cnVlXG5cbiAgLy8gMiwgSWYgZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVzcG9uc2UgZG9uZSBpcyBub3QgbnVsbCwgdGhlbiBxdWV1ZSBhIGZldGNoXG4gIC8vIHRhc2sgdG8gcnVuIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlc3BvbnNlIGRvbmUgZ2l2ZW4gcmVzcG9uc2UsIHdpdGhcbiAgLy8gZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gIGlmIChmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2VEb25lICE9IG51bGwpIHtcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2VEb25lKHJlc3BvbnNlKSlcbiAgfVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jZmV0Y2gtZmluYWxlXG5mdW5jdGlvbiBmZXRjaEZpbmFsZSAoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKSB7XG4gIC8vIDEuIElmIHJlc3BvbnNlIGlzIGEgbmV0d29yayBlcnJvciwgdGhlbjpcbiAgaWYgKHJlc3BvbnNlLnR5cGUgPT09ICdlcnJvcicpIHtcbiAgICAvLyAxLiBTZXQgcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0IHRvIFx1MDBBQiBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdFx1MjAxOXMgVVJMIGxpc3RbMF0gXHUwMEJCLlxuICAgIHJlc3BvbnNlLnVybExpc3QgPSBbZmV0Y2hQYXJhbXMucmVxdWVzdC51cmxMaXN0WzBdXVxuXG4gICAgLy8gMi4gU2V0IHJlc3BvbnNlXHUyMDE5cyB0aW1pbmcgaW5mbyB0byB0aGUgcmVzdWx0IG9mIGNyZWF0aW5nIGFuIG9wYXF1ZSB0aW1pbmdcbiAgICAvLyBpbmZvIGZvciBmZXRjaFBhcmFtc1x1MjAxOXMgdGltaW5nIGluZm8uXG4gICAgcmVzcG9uc2UudGltaW5nSW5mbyA9IGNyZWF0ZU9wYXF1ZVRpbWluZ0luZm8oe1xuICAgICAgc3RhcnRUaW1lOiBmZXRjaFBhcmFtcy50aW1pbmdJbmZvLnN0YXJ0VGltZVxuICAgIH0pXG4gIH1cblxuICAvLyAyLiBMZXQgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5IGJlIHRoZSBmb2xsb3dpbmcgc3RlcHM6XG4gIGNvbnN0IHByb2Nlc3NSZXNwb25zZUVuZE9mQm9keSA9ICgpID0+IHtcbiAgICAvLyAxLiBTZXQgZmV0Y2hQYXJhbXNcdTIwMTlzIHJlcXVlc3RcdTIwMTlzIGRvbmUgZmxhZy5cbiAgICBmZXRjaFBhcmFtcy5yZXF1ZXN0LmRvbmUgPSB0cnVlXG5cbiAgICAvLyBJZiBmZXRjaFBhcmFtc1x1MjAxOXMgcHJvY2VzcyByZXNwb25zZSBlbmQtb2YtYm9keSBpcyBub3QgbnVsbCxcbiAgICAvLyB0aGVuIHF1ZXVlIGEgZmV0Y2ggdGFzayB0byBydW4gZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVzcG9uc2VcbiAgICAvLyBlbmQtb2YtYm9keSBnaXZlbiByZXNwb25zZSB3aXRoIGZldGNoUGFyYW1zXHUyMDE5cyB0YXNrIGRlc3RpbmF0aW9uLlxuICAgIGlmIChmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHkgIT0gbnVsbCkge1xuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4gZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5KHJlc3BvbnNlKSlcbiAgICB9XG4gIH1cblxuICAvLyAzLiBJZiBmZXRjaFBhcmFtc1x1MjAxOXMgcHJvY2VzcyByZXNwb25zZSBpcyBub24tbnVsbCwgdGhlbiBxdWV1ZSBhIGZldGNoIHRhc2tcbiAgLy8gdG8gcnVuIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlc3BvbnNlIGdpdmVuIHJlc3BvbnNlLCB3aXRoIGZldGNoUGFyYW1zXHUyMDE5c1xuICAvLyB0YXNrIGRlc3RpbmF0aW9uLlxuICBpZiAoZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlICE9IG51bGwpIHtcbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiBmZXRjaFBhcmFtcy5wcm9jZXNzUmVzcG9uc2UocmVzcG9uc2UpKVxuICB9XG5cbiAgLy8gNC4gSWYgcmVzcG9uc2VcdTIwMTlzIGJvZHkgaXMgbnVsbCwgdGhlbiBydW4gcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5LlxuICBpZiAocmVzcG9uc2UuYm9keSA9PSBudWxsKSB7XG4gICAgcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5KClcbiAgfSBlbHNlIHtcbiAgLy8gNS4gT3RoZXJ3aXNlOlxuXG4gICAgLy8gMS4gTGV0IHRyYW5zZm9ybVN0cmVhbSBiZSBhIG5ldyBhIFRyYW5zZm9ybVN0cmVhbS5cblxuICAgIC8vIDIuIExldCBpZGVudGl0eVRyYW5zZm9ybUFsZ29yaXRobSBiZSBhbiBhbGdvcml0aG0gd2hpY2gsIGdpdmVuIGNodW5rLFxuICAgIC8vIGVucXVldWVzIGNodW5rIGluIHRyYW5zZm9ybVN0cmVhbS5cbiAgICBjb25zdCBpZGVudGl0eVRyYW5zZm9ybUFsZ29yaXRobSA9IChjaHVuaywgY29udHJvbGxlcikgPT4ge1xuICAgICAgY29udHJvbGxlci5lbnF1ZXVlKGNodW5rKVxuICAgIH1cblxuICAgIC8vIDMuIFNldCB1cCB0cmFuc2Zvcm1TdHJlYW0gd2l0aCB0cmFuc2Zvcm1BbGdvcml0aG0gc2V0IHRvIGlkZW50aXR5VHJhbnNmb3JtQWxnb3JpdGhtXG4gICAgLy8gYW5kIGZsdXNoQWxnb3JpdGhtIHNldCB0byBwcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHkuXG4gICAgY29uc3QgdHJhbnNmb3JtU3RyZWFtID0gbmV3IFRyYW5zZm9ybVN0cmVhbSh7XG4gICAgICBzdGFydCAoKSB7fSxcbiAgICAgIHRyYW5zZm9ybTogaWRlbnRpdHlUcmFuc2Zvcm1BbGdvcml0aG0sXG4gICAgICBmbHVzaDogcHJvY2Vzc1Jlc3BvbnNlRW5kT2ZCb2R5XG4gICAgfSwge1xuICAgICAgc2l6ZSAoKSB7XG4gICAgICAgIHJldHVybiAxXG4gICAgICB9XG4gICAgfSwge1xuICAgICAgc2l6ZSAoKSB7XG4gICAgICAgIHJldHVybiAxXG4gICAgICB9XG4gICAgfSlcblxuICAgIC8vIDQuIFNldCByZXNwb25zZVx1MjAxOXMgYm9keSB0byB0aGUgcmVzdWx0IG9mIHBpcGluZyByZXNwb25zZVx1MjAxOXMgYm9keSB0aHJvdWdoIHRyYW5zZm9ybVN0cmVhbS5cbiAgICByZXNwb25zZS5ib2R5ID0geyBzdHJlYW06IHJlc3BvbnNlLmJvZHkuc3RyZWFtLnBpcGVUaHJvdWdoKHRyYW5zZm9ybVN0cmVhbSkgfVxuICB9XG5cbiAgLy8gNi4gSWYgZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVzcG9uc2UgY29uc3VtZSBib2R5IGlzIG5vbi1udWxsLCB0aGVuOlxuICBpZiAoZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlQ29uc3VtZUJvZHkgIT0gbnVsbCkge1xuICAgIC8vIDEuIExldCBwcm9jZXNzQm9keSBnaXZlbiBudWxsT3JCeXRlcyBiZSB0aGlzIHN0ZXA6IHJ1biBmZXRjaFBhcmFtc1x1MjAxOXNcbiAgICAvLyBwcm9jZXNzIHJlc3BvbnNlIGNvbnN1bWUgYm9keSBnaXZlbiByZXNwb25zZSBhbmQgbnVsbE9yQnl0ZXMuXG4gICAgY29uc3QgcHJvY2Vzc0JvZHkgPSAobnVsbE9yQnl0ZXMpID0+IGZldGNoUGFyYW1zLnByb2Nlc3NSZXNwb25zZUNvbnN1bWVCb2R5KHJlc3BvbnNlLCBudWxsT3JCeXRlcylcblxuICAgIC8vIDIuIExldCBwcm9jZXNzQm9keUVycm9yIGJlIHRoaXMgc3RlcDogcnVuIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzXG4gICAgLy8gcmVzcG9uc2UgY29uc3VtZSBib2R5IGdpdmVuIHJlc3BvbnNlIGFuZCBmYWlsdXJlLlxuICAgIGNvbnN0IHByb2Nlc3NCb2R5RXJyb3IgPSAoZmFpbHVyZSkgPT4gZmV0Y2hQYXJhbXMucHJvY2Vzc1Jlc3BvbnNlQ29uc3VtZUJvZHkocmVzcG9uc2UsIGZhaWx1cmUpXG5cbiAgICAvLyAzLiBJZiByZXNwb25zZVx1MjAxOXMgYm9keSBpcyBudWxsLCB0aGVuIHF1ZXVlIGEgZmV0Y2ggdGFzayB0byBydW4gcHJvY2Vzc0JvZHlcbiAgICAvLyBnaXZlbiBudWxsLCB3aXRoIGZldGNoUGFyYW1zXHUyMDE5cyB0YXNrIGRlc3RpbmF0aW9uLlxuICAgIGlmIChyZXNwb25zZS5ib2R5ID09IG51bGwpIHtcbiAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHByb2Nlc3NCb2R5KG51bGwpKVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyA0LiBPdGhlcndpc2UsIGZ1bGx5IHJlYWQgcmVzcG9uc2VcdTIwMTlzIGJvZHkgZ2l2ZW4gcHJvY2Vzc0JvZHksIHByb2Nlc3NCb2R5RXJyb3IsXG4gICAgICAvLyBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gICAgICByZXR1cm4gZnVsbHlSZWFkQm9keShyZXNwb25zZS5ib2R5LCBwcm9jZXNzQm9keSwgcHJvY2Vzc0JvZHlFcnJvcilcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2h0dHAtZmV0Y2hcbmFzeW5jIGZ1bmN0aW9uIGh0dHBGZXRjaCAoZmV0Y2hQYXJhbXMpIHtcbiAgLy8gMS4gTGV0IHJlcXVlc3QgYmUgZmV0Y2hQYXJhbXNcdTIwMTlzIHJlcXVlc3QuXG4gIGNvbnN0IHJlcXVlc3QgPSBmZXRjaFBhcmFtcy5yZXF1ZXN0XG5cbiAgLy8gMi4gTGV0IHJlc3BvbnNlIGJlIG51bGwuXG4gIGxldCByZXNwb25zZSA9IG51bGxcblxuICAvLyAzLiBMZXQgYWN0dWFsUmVzcG9uc2UgYmUgbnVsbC5cbiAgbGV0IGFjdHVhbFJlc3BvbnNlID0gbnVsbFxuXG4gIC8vIDQuIExldCB0aW1pbmdJbmZvIGJlIGZldGNoUGFyYW1zXHUyMDE5cyB0aW1pbmcgaW5mby5cbiAgY29uc3QgdGltaW5nSW5mbyA9IGZldGNoUGFyYW1zLnRpbWluZ0luZm9cblxuICAvLyA1LiBJZiByZXF1ZXN0XHUyMDE5cyBzZXJ2aWNlLXdvcmtlcnMgbW9kZSBpcyBcImFsbFwiLCB0aGVuOlxuICBpZiAocmVxdWVzdC5zZXJ2aWNlV29ya2VycyA9PT0gJ2FsbCcpIHtcbiAgICAvLyBUT0RPXG4gIH1cblxuICAvLyA2LiBJZiByZXNwb25zZSBpcyBudWxsLCB0aGVuOlxuICBpZiAocmVzcG9uc2UgPT09IG51bGwpIHtcbiAgICAvLyAxLiBJZiBtYWtlQ09SU1ByZWZsaWdodCBpcyB0cnVlIGFuZCBvbmUgb2YgdGhlc2UgY29uZGl0aW9ucyBpcyB0cnVlOlxuICAgIC8vIFRPRE9cblxuICAgIC8vIDIuIElmIHJlcXVlc3RcdTIwMTlzIHJlZGlyZWN0IG1vZGUgaXMgXCJmb2xsb3dcIiwgdGhlbiBzZXQgcmVxdWVzdFx1MjAxOXNcbiAgICAvLyBzZXJ2aWNlLXdvcmtlcnMgbW9kZSB0byBcIm5vbmVcIi5cbiAgICBpZiAocmVxdWVzdC5yZWRpcmVjdCA9PT0gJ2ZvbGxvdycpIHtcbiAgICAgIHJlcXVlc3Quc2VydmljZVdvcmtlcnMgPSAnbm9uZSdcbiAgICB9XG5cbiAgICAvLyAzLiBTZXQgcmVzcG9uc2UgYW5kIGFjdHVhbFJlc3BvbnNlIHRvIHRoZSByZXN1bHQgb2YgcnVubmluZ1xuICAgIC8vIEhUVFAtbmV0d29yay1vci1jYWNoZSBmZXRjaCBnaXZlbiBmZXRjaFBhcmFtcy5cbiAgICBhY3R1YWxSZXNwb25zZSA9IHJlc3BvbnNlID0gYXdhaXQgaHR0cE5ldHdvcmtPckNhY2hlRmV0Y2goZmV0Y2hQYXJhbXMpXG5cbiAgICAvLyA0LiBJZiByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBpcyBcImNvcnNcIiBhbmQgYSBDT1JTIGNoZWNrXG4gICAgLy8gZm9yIHJlcXVlc3QgYW5kIHJlc3BvbnNlIHJldHVybnMgZmFpbHVyZSwgdGhlbiByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuICAgIGlmIChcbiAgICAgIHJlcXVlc3QucmVzcG9uc2VUYWludGluZyA9PT0gJ2NvcnMnICYmXG4gICAgICBjb3JzQ2hlY2socmVxdWVzdCwgcmVzcG9uc2UpID09PSAnZmFpbHVyZSdcbiAgICApIHtcbiAgICAgIHJldHVybiBtYWtlTmV0d29ya0Vycm9yKCdjb3JzIGZhaWx1cmUnKVxuICAgIH1cblxuICAgIC8vIDUuIElmIHRoZSBUQU8gY2hlY2sgZm9yIHJlcXVlc3QgYW5kIHJlc3BvbnNlIHJldHVybnMgZmFpbHVyZSwgdGhlbiBzZXRcbiAgICAvLyByZXF1ZXN0XHUyMDE5cyB0aW1pbmcgYWxsb3cgZmFpbGVkIGZsYWcuXG4gICAgaWYgKFRBT0NoZWNrKHJlcXVlc3QsIHJlc3BvbnNlKSA9PT0gJ2ZhaWx1cmUnKSB7XG4gICAgICByZXF1ZXN0LnRpbWluZ0FsbG93RmFpbGVkID0gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIC8vIDcuIElmIGVpdGhlciByZXF1ZXN0XHUyMDE5cyByZXNwb25zZSB0YWludGluZyBvciByZXNwb25zZVx1MjAxOXMgdHlwZVxuICAvLyBpcyBcIm9wYXF1ZVwiLCBhbmQgdGhlIGNyb3NzLW9yaWdpbiByZXNvdXJjZSBwb2xpY3kgY2hlY2sgd2l0aFxuICAvLyByZXF1ZXN0XHUyMDE5cyBvcmlnaW4sIHJlcXVlc3RcdTIwMTlzIGNsaWVudCwgcmVxdWVzdFx1MjAxOXMgZGVzdGluYXRpb24sXG4gIC8vIGFuZCBhY3R1YWxSZXNwb25zZSByZXR1cm5zIGJsb2NrZWQsIHRoZW4gcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgaWYgKFxuICAgIChyZXF1ZXN0LnJlc3BvbnNlVGFpbnRpbmcgPT09ICdvcGFxdWUnIHx8IHJlc3BvbnNlLnR5cGUgPT09ICdvcGFxdWUnKSAmJlxuICAgIGNyb3NzT3JpZ2luUmVzb3VyY2VQb2xpY3lDaGVjayhcbiAgICAgIHJlcXVlc3Qub3JpZ2luLFxuICAgICAgcmVxdWVzdC5jbGllbnQsXG4gICAgICByZXF1ZXN0LmRlc3RpbmF0aW9uLFxuICAgICAgYWN0dWFsUmVzcG9uc2VcbiAgICApID09PSAnYmxvY2tlZCdcbiAgKSB7XG4gICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoJ2Jsb2NrZWQnKVxuICB9XG5cbiAgLy8gOC4gSWYgYWN0dWFsUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyBhIHJlZGlyZWN0IHN0YXR1cywgdGhlbjpcbiAgaWYgKHJlZGlyZWN0U3RhdHVzU2V0LmhhcyhhY3R1YWxSZXNwb25zZS5zdGF0dXMpKSB7XG4gICAgLy8gMS4gSWYgYWN0dWFsUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyBub3QgMzAzLCByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vdCBudWxsLFxuICAgIC8vIGFuZCB0aGUgY29ubmVjdGlvbiB1c2VzIEhUVFAvMiwgdGhlbiB1c2VyIGFnZW50cyBtYXksIGFuZCBhcmUgZXZlblxuICAgIC8vIGVuY291cmFnZWQgdG8sIHRyYW5zbWl0IGFuIFJTVF9TVFJFQU0gZnJhbWUuXG4gICAgLy8gU2VlLCBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL2ZldGNoL2lzc3Vlcy8xMjg4XG4gICAgaWYgKHJlcXVlc3QucmVkaXJlY3QgIT09ICdtYW51YWwnKSB7XG4gICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbm5lY3Rpb24uZGVzdHJveSgpXG4gICAgfVxuXG4gICAgLy8gMi4gU3dpdGNoIG9uIHJlcXVlc3RcdTIwMTlzIHJlZGlyZWN0IG1vZGU6XG4gICAgaWYgKHJlcXVlc3QucmVkaXJlY3QgPT09ICdlcnJvcicpIHtcbiAgICAgIC8vIFNldCByZXNwb25zZSB0byBhIG5ldHdvcmsgZXJyb3IuXG4gICAgICByZXNwb25zZSA9IG1ha2VOZXR3b3JrRXJyb3IoJ3VuZXhwZWN0ZWQgcmVkaXJlY3QnKVxuICAgIH0gZWxzZSBpZiAocmVxdWVzdC5yZWRpcmVjdCA9PT0gJ21hbnVhbCcpIHtcbiAgICAgIC8vIFNldCByZXNwb25zZSB0byBhbiBvcGFxdWUtcmVkaXJlY3QgZmlsdGVyZWQgcmVzcG9uc2Ugd2hvc2UgaW50ZXJuYWxcbiAgICAgIC8vIHJlc3BvbnNlIGlzIGFjdHVhbFJlc3BvbnNlLlxuICAgICAgLy8gTk9URShzcGVjKTogT24gdGhlIHdlYiB0aGlzIHdvdWxkIHJldHVybiBhbiBgb3BhcXVlcmVkaXJlY3RgIHJlc3BvbnNlLFxuICAgICAgLy8gYnV0IHRoYXQgZG9lc24ndCBtYWtlIHNlbnNlIHNlcnZlciBzaWRlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8xMTkzLlxuICAgICAgcmVzcG9uc2UgPSBhY3R1YWxSZXNwb25zZVxuICAgIH0gZWxzZSBpZiAocmVxdWVzdC5yZWRpcmVjdCA9PT0gJ2ZvbGxvdycpIHtcbiAgICAgIC8vIFNldCByZXNwb25zZSB0byB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgSFRUUC1yZWRpcmVjdCBmZXRjaCBnaXZlblxuICAgICAgLy8gZmV0Y2hQYXJhbXMgYW5kIHJlc3BvbnNlLlxuICAgICAgcmVzcG9uc2UgPSBhd2FpdCBodHRwUmVkaXJlY3RGZXRjaChmZXRjaFBhcmFtcywgcmVzcG9uc2UpXG4gICAgfSBlbHNlIHtcbiAgICAgIGFzc2VydChmYWxzZSlcbiAgICB9XG4gIH1cblxuICAvLyA5LiBTZXQgcmVzcG9uc2VcdTIwMTlzIHRpbWluZyBpbmZvIHRvIHRpbWluZ0luZm8uXG4gIHJlc3BvbnNlLnRpbWluZ0luZm8gPSB0aW1pbmdJbmZvXG5cbiAgLy8gMTAuIFJldHVybiByZXNwb25zZS5cbiAgcmV0dXJuIHJlc3BvbnNlXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNodHRwLXJlZGlyZWN0LWZldGNoXG5mdW5jdGlvbiBodHRwUmVkaXJlY3RGZXRjaCAoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKSB7XG4gIC8vIDEuIExldCByZXF1ZXN0IGJlIGZldGNoUGFyYW1zXHUyMDE5cyByZXF1ZXN0LlxuICBjb25zdCByZXF1ZXN0ID0gZmV0Y2hQYXJhbXMucmVxdWVzdFxuXG4gIC8vIDIuIExldCBhY3R1YWxSZXNwb25zZSBiZSByZXNwb25zZSwgaWYgcmVzcG9uc2UgaXMgbm90IGEgZmlsdGVyZWQgcmVzcG9uc2UsXG4gIC8vIGFuZCByZXNwb25zZVx1MjAxOXMgaW50ZXJuYWwgcmVzcG9uc2Ugb3RoZXJ3aXNlLlxuICBjb25zdCBhY3R1YWxSZXNwb25zZSA9IHJlc3BvbnNlLmludGVybmFsUmVzcG9uc2VcbiAgICA/IHJlc3BvbnNlLmludGVybmFsUmVzcG9uc2VcbiAgICA6IHJlc3BvbnNlXG5cbiAgLy8gMy4gTGV0IGxvY2F0aW9uVVJMIGJlIGFjdHVhbFJlc3BvbnNlXHUyMDE5cyBsb2NhdGlvbiBVUkwgZ2l2ZW4gcmVxdWVzdFx1MjAxOXMgY3VycmVudFxuICAvLyBVUkxcdTIwMTlzIGZyYWdtZW50LlxuICBsZXQgbG9jYXRpb25VUkxcblxuICB0cnkge1xuICAgIGxvY2F0aW9uVVJMID0gcmVzcG9uc2VMb2NhdGlvblVSTChcbiAgICAgIGFjdHVhbFJlc3BvbnNlLFxuICAgICAgcmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCkuaGFzaFxuICAgIClcblxuICAgIC8vIDQuIElmIGxvY2F0aW9uVVJMIGlzIG51bGwsIHRoZW4gcmV0dXJuIHJlc3BvbnNlLlxuICAgIGlmIChsb2NhdGlvblVSTCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gcmVzcG9uc2VcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIDUuIElmIGxvY2F0aW9uVVJMIGlzIGZhaWx1cmUsIHRoZW4gcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoZXJyKSlcbiAgfVxuXG4gIC8vIDYuIElmIGxvY2F0aW9uVVJMXHUyMDE5cyBzY2hlbWUgaXMgbm90IGFuIEhUVFAoUykgc2NoZW1lLCB0aGVuIHJldHVybiBhIG5ldHdvcmtcbiAgLy8gZXJyb3IuXG4gIGlmICghdXJsSXNIdHRwSHR0cHNTY2hlbWUobG9jYXRpb25VUkwpKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdVUkwgc2NoZW1lIG11c3QgYmUgYSBIVFRQKFMpIHNjaGVtZScpKVxuICB9XG5cbiAgLy8gNy4gSWYgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgY291bnQgaXMgMjAsIHRoZW4gcmV0dXJuIGEgbmV0d29yayBlcnJvci5cbiAgaWYgKHJlcXVlc3QucmVkaXJlY3RDb3VudCA9PT0gMjApIHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG1ha2VOZXR3b3JrRXJyb3IoJ3JlZGlyZWN0IGNvdW50IGV4Y2VlZGVkJykpXG4gIH1cblxuICAvLyA4LiBJbmNyZWFzZSByZXF1ZXN0XHUyMDE5cyByZWRpcmVjdCBjb3VudCBieSAxLlxuICByZXF1ZXN0LnJlZGlyZWN0Q291bnQgKz0gMVxuXG4gIC8vIDkuIElmIHJlcXVlc3RcdTIwMTlzIG1vZGUgaXMgXCJjb3JzXCIsIGxvY2F0aW9uVVJMIGluY2x1ZGVzIGNyZWRlbnRpYWxzLCBhbmRcbiAgLy8gcmVxdWVzdFx1MjAxOXMgb3JpZ2luIGlzIG5vdCBzYW1lIG9yaWdpbiB3aXRoIGxvY2F0aW9uVVJMXHUyMDE5cyBvcmlnaW4sIHRoZW4gcmV0dXJuXG4gIC8vICBhIG5ldHdvcmsgZXJyb3IuXG4gIGlmIChcbiAgICByZXF1ZXN0Lm1vZGUgPT09ICdjb3JzJyAmJlxuICAgIChsb2NhdGlvblVSTC51c2VybmFtZSB8fCBsb2NhdGlvblVSTC5wYXNzd29yZCkgJiZcbiAgICAhc2FtZU9yaWdpbihyZXF1ZXN0LCBsb2NhdGlvblVSTClcbiAgKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShtYWtlTmV0d29ya0Vycm9yKCdjcm9zcyBvcmlnaW4gbm90IGFsbG93ZWQgZm9yIHJlcXVlc3QgbW9kZSBcImNvcnNcIicpKVxuICB9XG5cbiAgLy8gMTAuIElmIHJlcXVlc3RcdTIwMTlzIHJlc3BvbnNlIHRhaW50aW5nIGlzIFwiY29yc1wiIGFuZCBsb2NhdGlvblVSTCBpbmNsdWRlc1xuICAvLyBjcmVkZW50aWFscywgdGhlbiByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuICBpZiAoXG4gICAgcmVxdWVzdC5yZXNwb25zZVRhaW50aW5nID09PSAnY29ycycgJiZcbiAgICAobG9jYXRpb25VUkwudXNlcm5hbWUgfHwgbG9jYXRpb25VUkwucGFzc3dvcmQpXG4gICkge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcihcbiAgICAgICdVUkwgY2Fubm90IGNvbnRhaW4gY3JlZGVudGlhbHMgZm9yIHJlcXVlc3QgbW9kZSBcImNvcnNcIidcbiAgICApKVxuICB9XG5cbiAgLy8gMTEuIElmIGFjdHVhbFJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgbm90IDMwMywgcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBub24tbnVsbCxcbiAgLy8gYW5kIHJlcXVlc3RcdTIwMTlzIGJvZHlcdTIwMTlzIHNvdXJjZSBpcyBudWxsLCB0aGVuIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gIGlmIChcbiAgICBhY3R1YWxSZXNwb25zZS5zdGF0dXMgIT09IDMwMyAmJlxuICAgIHJlcXVlc3QuYm9keSAhPSBudWxsICYmXG4gICAgcmVxdWVzdC5ib2R5LnNvdXJjZSA9PSBudWxsXG4gICkge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobWFrZU5ldHdvcmtFcnJvcigpKVxuICB9XG5cbiAgLy8gMTIuIElmIG9uZSBvZiB0aGUgZm9sbG93aW5nIGlzIHRydWVcbiAgLy8gLSBhY3R1YWxSZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIDMwMSBvciAzMDIgYW5kIHJlcXVlc3RcdTIwMTlzIG1ldGhvZCBpcyBgUE9TVGBcbiAgLy8gLSBhY3R1YWxSZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIDMwMyBhbmQgcmVxdWVzdFx1MjAxOXMgbWV0aG9kIGlzIG5vdCBgR0VUYCBvciBgSEVBRGBcbiAgaWYgKFxuICAgIChbMzAxLCAzMDJdLmluY2x1ZGVzKGFjdHVhbFJlc3BvbnNlLnN0YXR1cykgJiYgcmVxdWVzdC5tZXRob2QgPT09ICdQT1NUJykgfHxcbiAgICAoYWN0dWFsUmVzcG9uc2Uuc3RhdHVzID09PSAzMDMgJiZcbiAgICAgICFHRVRfT1JfSEVBRC5pbmNsdWRlcyhyZXF1ZXN0Lm1ldGhvZCkpXG4gICkge1xuICAgIC8vIHRoZW46XG4gICAgLy8gMS4gU2V0IHJlcXVlc3RcdTIwMTlzIG1ldGhvZCB0byBgR0VUYCBhbmQgcmVxdWVzdFx1MjAxOXMgYm9keSB0byBudWxsLlxuICAgIHJlcXVlc3QubWV0aG9kID0gJ0dFVCdcbiAgICByZXF1ZXN0LmJvZHkgPSBudWxsXG5cbiAgICAvLyAyLiBGb3IgZWFjaCBoZWFkZXJOYW1lIG9mIHJlcXVlc3QtYm9keS1oZWFkZXIgbmFtZSwgZGVsZXRlIGhlYWRlck5hbWUgZnJvbVxuICAgIC8vIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgIGZvciAoY29uc3QgaGVhZGVyTmFtZSBvZiByZXF1ZXN0Qm9keUhlYWRlcikge1xuICAgICAgcmVxdWVzdC5oZWFkZXJzTGlzdC5kZWxldGUoaGVhZGVyTmFtZSlcbiAgICB9XG4gIH1cblxuICAvLyAxMy4gSWYgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIG9yaWdpbiBpcyBub3Qgc2FtZSBvcmlnaW4gd2l0aCBsb2NhdGlvblVSTFx1MjAxOXNcbiAgLy8gICAgIG9yaWdpbiwgdGhlbiBmb3IgZWFjaCBoZWFkZXJOYW1lIG9mIENPUlMgbm9uLXdpbGRjYXJkIHJlcXVlc3QtaGVhZGVyIG5hbWUsXG4gIC8vICAgICBkZWxldGUgaGVhZGVyTmFtZSBmcm9tIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAoIXNhbWVPcmlnaW4ocmVxdWVzdEN1cnJlbnRVUkwocmVxdWVzdCksIGxvY2F0aW9uVVJMKSkge1xuICAgIC8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNjb3JzLW5vbi13aWxkY2FyZC1yZXF1ZXN0LWhlYWRlci1uYW1lXG4gICAgcmVxdWVzdC5oZWFkZXJzTGlzdC5kZWxldGUoJ2F1dGhvcml6YXRpb24nKVxuXG4gICAgLy8gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2F1dGhlbnRpY2F0aW9uLWVudHJpZXNcbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmRlbGV0ZSgncHJveHktYXV0aG9yaXphdGlvbicsIHRydWUpXG5cbiAgICAvLyBcIkNvb2tpZVwiIGFuZCBcIkhvc3RcIiBhcmUgZm9yYmlkZGVuIHJlcXVlc3QtaGVhZGVycywgd2hpY2ggdW5kaWNpIGRvZXNuJ3QgaW1wbGVtZW50LlxuICAgIHJlcXVlc3QuaGVhZGVyc0xpc3QuZGVsZXRlKCdjb29raWUnKVxuICAgIHJlcXVlc3QuaGVhZGVyc0xpc3QuZGVsZXRlKCdob3N0JylcbiAgfVxuXG4gIC8vIDE0LiBJZiByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vbi1udWxsLCB0aGVuIHNldCByZXF1ZXN0XHUyMDE5cyBib2R5IHRvIHRoZSBmaXJzdCByZXR1cm5cbiAgLy8gdmFsdWUgb2Ygc2FmZWx5IGV4dHJhY3RpbmcgcmVxdWVzdFx1MjAxOXMgYm9keVx1MjAxOXMgc291cmNlLlxuICBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwpIHtcbiAgICBhc3NlcnQocmVxdWVzdC5ib2R5LnNvdXJjZSAhPSBudWxsKVxuICAgIHJlcXVlc3QuYm9keSA9IHNhZmVseUV4dHJhY3RCb2R5KHJlcXVlc3QuYm9keS5zb3VyY2UpWzBdXG4gIH1cblxuICAvLyAxNS4gTGV0IHRpbWluZ0luZm8gYmUgZmV0Y2hQYXJhbXNcdTIwMTlzIHRpbWluZyBpbmZvLlxuICBjb25zdCB0aW1pbmdJbmZvID0gZmV0Y2hQYXJhbXMudGltaW5nSW5mb1xuXG4gIC8vIDE2LiBTZXQgdGltaW5nSW5mb1x1MjAxOXMgcmVkaXJlY3QgZW5kIHRpbWUgYW5kIHBvc3QtcmVkaXJlY3Qgc3RhcnQgdGltZSB0byB0aGVcbiAgLy8gY29hcnNlbmVkIHNoYXJlZCBjdXJyZW50IHRpbWUgZ2l2ZW4gZmV0Y2hQYXJhbXNcdTIwMTlzIGNyb3NzLW9yaWdpbiBpc29sYXRlZFxuICAvLyBjYXBhYmlsaXR5LlxuICB0aW1pbmdJbmZvLnJlZGlyZWN0RW5kVGltZSA9IHRpbWluZ0luZm8ucG9zdFJlZGlyZWN0U3RhcnRUaW1lID1cbiAgICBjb2Fyc2VuZWRTaGFyZWRDdXJyZW50VGltZShmZXRjaFBhcmFtcy5jcm9zc09yaWdpbklzb2xhdGVkQ2FwYWJpbGl0eSlcblxuICAvLyAxNy4gSWYgdGltaW5nSW5mb1x1MjAxOXMgcmVkaXJlY3Qgc3RhcnQgdGltZSBpcyAwLCB0aGVuIHNldCB0aW1pbmdJbmZvXHUyMDE5c1xuICAvLyAgcmVkaXJlY3Qgc3RhcnQgdGltZSB0byB0aW1pbmdJbmZvXHUyMDE5cyBzdGFydCB0aW1lLlxuICBpZiAodGltaW5nSW5mby5yZWRpcmVjdFN0YXJ0VGltZSA9PT0gMCkge1xuICAgIHRpbWluZ0luZm8ucmVkaXJlY3RTdGFydFRpbWUgPSB0aW1pbmdJbmZvLnN0YXJ0VGltZVxuICB9XG5cbiAgLy8gMTguIEFwcGVuZCBsb2NhdGlvblVSTCB0byByZXF1ZXN0XHUyMDE5cyBVUkwgbGlzdC5cbiAgcmVxdWVzdC51cmxMaXN0LnB1c2gobG9jYXRpb25VUkwpXG5cbiAgLy8gMTkuIEludm9rZSBzZXQgcmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgcG9saWN5IG9uIHJlZGlyZWN0IG9uIHJlcXVlc3QgYW5kXG4gIC8vIGFjdHVhbFJlc3BvbnNlLlxuICBzZXRSZXF1ZXN0UmVmZXJyZXJQb2xpY3lPblJlZGlyZWN0KHJlcXVlc3QsIGFjdHVhbFJlc3BvbnNlKVxuXG4gIC8vIDIwLiBSZXR1cm4gdGhlIHJlc3VsdCBvZiBydW5uaW5nIG1haW4gZmV0Y2ggZ2l2ZW4gZmV0Y2hQYXJhbXMgYW5kIHRydWUuXG4gIHJldHVybiBtYWluRmV0Y2goZmV0Y2hQYXJhbXMsIHRydWUpXG59XG5cbi8vIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNodHRwLW5ldHdvcmstb3ItY2FjaGUtZmV0Y2hcbmFzeW5jIGZ1bmN0aW9uIGh0dHBOZXR3b3JrT3JDYWNoZUZldGNoIChcbiAgZmV0Y2hQYXJhbXMsXG4gIGlzQXV0aGVudGljYXRpb25GZXRjaCA9IGZhbHNlLFxuICBpc05ld0Nvbm5lY3Rpb25GZXRjaCA9IGZhbHNlXG4pIHtcbiAgLy8gMS4gTGV0IHJlcXVlc3QgYmUgZmV0Y2hQYXJhbXNcdTIwMTlzIHJlcXVlc3QuXG4gIGNvbnN0IHJlcXVlc3QgPSBmZXRjaFBhcmFtcy5yZXF1ZXN0XG5cbiAgLy8gMi4gTGV0IGh0dHBGZXRjaFBhcmFtcyBiZSBudWxsLlxuICBsZXQgaHR0cEZldGNoUGFyYW1zID0gbnVsbFxuXG4gIC8vIDMuIExldCBodHRwUmVxdWVzdCBiZSBudWxsLlxuICBsZXQgaHR0cFJlcXVlc3QgPSBudWxsXG5cbiAgLy8gNC4gTGV0IHJlc3BvbnNlIGJlIG51bGwuXG4gIGxldCByZXNwb25zZSA9IG51bGxcblxuICAvLyA1LiBMZXQgc3RvcmVkUmVzcG9uc2UgYmUgbnVsbC5cbiAgLy8gVE9ETzogY2FjaGVcblxuICAvLyA2LiBMZXQgaHR0cENhY2hlIGJlIG51bGwuXG4gIGNvbnN0IGh0dHBDYWNoZSA9IG51bGxcblxuICAvLyA3LiBMZXQgdGhlIHJldmFsaWRhdGluZ0ZsYWcgYmUgdW5zZXQuXG4gIGNvbnN0IHJldmFsaWRhdGluZ0ZsYWcgPSBmYWxzZVxuXG4gIC8vIDguIFJ1biB0aGVzZSBzdGVwcywgYnV0IGFib3J0IHdoZW4gdGhlIG9uZ29pbmcgZmV0Y2ggaXMgdGVybWluYXRlZDpcblxuICAvLyAgICAxLiBJZiByZXF1ZXN0XHUyMDE5cyB3aW5kb3cgaXMgXCJuby13aW5kb3dcIiBhbmQgcmVxdWVzdFx1MjAxOXMgcmVkaXJlY3QgbW9kZSBpc1xuICAvLyAgICBcImVycm9yXCIsIHRoZW4gc2V0IGh0dHBGZXRjaFBhcmFtcyB0byBmZXRjaFBhcmFtcyBhbmQgaHR0cFJlcXVlc3QgdG9cbiAgLy8gICAgcmVxdWVzdC5cbiAgaWYgKHJlcXVlc3Qud2luZG93ID09PSAnbm8td2luZG93JyAmJiByZXF1ZXN0LnJlZGlyZWN0ID09PSAnZXJyb3InKSB7XG4gICAgaHR0cEZldGNoUGFyYW1zID0gZmV0Y2hQYXJhbXNcbiAgICBodHRwUmVxdWVzdCA9IHJlcXVlc3RcbiAgfSBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2U6XG5cbiAgICAvLyAxLiBTZXQgaHR0cFJlcXVlc3QgdG8gYSBjbG9uZSBvZiByZXF1ZXN0LlxuICAgIGh0dHBSZXF1ZXN0ID0gbWFrZVJlcXVlc3QocmVxdWVzdClcblxuICAgIC8vIDIuIFNldCBodHRwRmV0Y2hQYXJhbXMgdG8gYSBjb3B5IG9mIGZldGNoUGFyYW1zLlxuICAgIGh0dHBGZXRjaFBhcmFtcyA9IHsgLi4uZmV0Y2hQYXJhbXMgfVxuXG4gICAgLy8gMy4gU2V0IGh0dHBGZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdCB0byBodHRwUmVxdWVzdC5cbiAgICBodHRwRmV0Y2hQYXJhbXMucmVxdWVzdCA9IGh0dHBSZXF1ZXN0XG4gIH1cblxuICAvLyAgICAzLiBMZXQgaW5jbHVkZUNyZWRlbnRpYWxzIGJlIHRydWUgaWYgb25lIG9mXG4gIGNvbnN0IGluY2x1ZGVDcmVkZW50aWFscyA9XG4gICAgcmVxdWVzdC5jcmVkZW50aWFscyA9PT0gJ2luY2x1ZGUnIHx8XG4gICAgKHJlcXVlc3QuY3JlZGVudGlhbHMgPT09ICdzYW1lLW9yaWdpbicgJiZcbiAgICAgIHJlcXVlc3QucmVzcG9uc2VUYWludGluZyA9PT0gJ2Jhc2ljJylcblxuICAvLyAgICA0LiBMZXQgY29udGVudExlbmd0aCBiZSBodHRwUmVxdWVzdFx1MjAxOXMgYm9keVx1MjAxOXMgbGVuZ3RoLCBpZiBodHRwUmVxdWVzdFx1MjAxOXNcbiAgLy8gICAgYm9keSBpcyBub24tbnVsbDsgb3RoZXJ3aXNlIG51bGwuXG4gIGNvbnN0IGNvbnRlbnRMZW5ndGggPSBodHRwUmVxdWVzdC5ib2R5ID8gaHR0cFJlcXVlc3QuYm9keS5sZW5ndGggOiBudWxsXG5cbiAgLy8gICAgNS4gTGV0IGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSBiZSBudWxsLlxuICBsZXQgY29udGVudExlbmd0aEhlYWRlclZhbHVlID0gbnVsbFxuXG4gIC8vICAgIDYuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG51bGwgYW5kIGh0dHBSZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgYFBPU1RgIG9yXG4gIC8vICAgIGBQVVRgLCB0aGVuIHNldCBjb250ZW50TGVuZ3RoSGVhZGVyVmFsdWUgdG8gYDBgLlxuICBpZiAoXG4gICAgaHR0cFJlcXVlc3QuYm9keSA9PSBudWxsICYmXG4gICAgWydQT1NUJywgJ1BVVCddLmluY2x1ZGVzKGh0dHBSZXF1ZXN0Lm1ldGhvZClcbiAgKSB7XG4gICAgY29udGVudExlbmd0aEhlYWRlclZhbHVlID0gJzAnXG4gIH1cblxuICAvLyAgICA3LiBJZiBjb250ZW50TGVuZ3RoIGlzIG5vbi1udWxsLCB0aGVuIHNldCBjb250ZW50TGVuZ3RoSGVhZGVyVmFsdWUgdG9cbiAgLy8gICAgY29udGVudExlbmd0aCwgc2VyaWFsaXplZCBhbmQgaXNvbW9ycGhpYyBlbmNvZGVkLlxuICBpZiAoY29udGVudExlbmd0aCAhPSBudWxsKSB7XG4gICAgY29udGVudExlbmd0aEhlYWRlclZhbHVlID0gaXNvbW9ycGhpY0VuY29kZShgJHtjb250ZW50TGVuZ3RofWApXG4gIH1cblxuICAvLyAgICA4LiBJZiBjb250ZW50TGVuZ3RoSGVhZGVyVmFsdWUgaXMgbm9uLW51bGwsIHRoZW4gYXBwZW5kXG4gIC8vICAgIGBDb250ZW50LUxlbmd0aGAvY29udGVudExlbmd0aEhlYWRlclZhbHVlIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXJcbiAgLy8gICAgbGlzdC5cbiAgaWYgKGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSAhPSBudWxsKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdjb250ZW50LWxlbmd0aCcsIGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSlcbiAgfVxuXG4gIC8vICAgIDkuIElmIGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSBpcyBub24tbnVsbCwgdGhlbiBhcHBlbmQgKGBDb250ZW50LUxlbmd0aGAsXG4gIC8vICAgIGNvbnRlbnRMZW5ndGhIZWFkZXJWYWx1ZSkgdG8gaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuXG4gIC8vICAgIDEwLiBJZiBjb250ZW50TGVuZ3RoIGlzIG5vbi1udWxsIGFuZCBodHRwUmVxdWVzdFx1MjAxOXMga2VlcGFsaXZlIGlzIHRydWUsXG4gIC8vICAgIHRoZW46XG4gIGlmIChjb250ZW50TGVuZ3RoICE9IG51bGwgJiYgaHR0cFJlcXVlc3Qua2VlcGFsaXZlKSB7XG4gICAgLy8gTk9URToga2VlcGFsaXZlIGlzIGEgbm9vcCBvdXRzaWRlIG9mIGJyb3dzZXIgY29udGV4dC5cbiAgfVxuXG4gIC8vICAgIDExLiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIgaXMgYSBVUkwsIHRoZW4gYXBwZW5kXG4gIC8vICAgIGBSZWZlcmVyYC9odHRwUmVxdWVzdFx1MjAxOXMgcmVmZXJyZXIsIHNlcmlhbGl6ZWQgYW5kIGlzb21vcnBoaWMgZW5jb2RlZCxcbiAgLy8gICAgIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgaWYgKGh0dHBSZXF1ZXN0LnJlZmVycmVyIGluc3RhbmNlb2YgVVJMKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdyZWZlcmVyJywgaXNvbW9ycGhpY0VuY29kZShodHRwUmVxdWVzdC5yZWZlcnJlci5ocmVmKSlcbiAgfVxuXG4gIC8vICAgIDEyLiBBcHBlbmQgYSByZXF1ZXN0IGBPcmlnaW5gIGhlYWRlciBmb3IgaHR0cFJlcXVlc3QuXG4gIGFwcGVuZFJlcXVlc3RPcmlnaW5IZWFkZXIoaHR0cFJlcXVlc3QpXG5cbiAgLy8gICAgMTMuIEFwcGVuZCB0aGUgRmV0Y2ggbWV0YWRhdGEgaGVhZGVycyBmb3IgaHR0cFJlcXVlc3QuIFtGRVRDSC1NRVRBREFUQV1cbiAgYXBwZW5kRmV0Y2hNZXRhZGF0YShodHRwUmVxdWVzdClcblxuICAvLyAgICAxNC4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYFVzZXItQWdlbnRgLCB0aGVuXG4gIC8vICAgIHVzZXIgYWdlbnRzIHNob3VsZCBhcHBlbmQgYFVzZXItQWdlbnRgL2RlZmF1bHQgYFVzZXItQWdlbnRgIHZhbHVlIHRvXG4gIC8vICAgIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgaWYgKCFodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygndXNlci1hZ2VudCcpKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCd1c2VyLWFnZW50JywgdHlwZW9mIGVzYnVpbGREZXRlY3Rpb24gPT09ICd1bmRlZmluZWQnID8gJ3VuZGljaScgOiAnbm9kZScpXG4gIH1cblxuICAvLyAgICAxNS4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgaXMgXCJkZWZhdWx0XCIgYW5kIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXJcbiAgLy8gICAgbGlzdCBjb250YWlucyBgSWYtTW9kaWZpZWQtU2luY2VgLCBgSWYtTm9uZS1NYXRjaGAsXG4gIC8vICAgIGBJZi1Vbm1vZGlmaWVkLVNpbmNlYCwgYElmLU1hdGNoYCwgb3IgYElmLVJhbmdlYCwgdGhlbiBzZXRcbiAgLy8gICAgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgdG8gXCJuby1zdG9yZVwiLlxuICBpZiAoXG4gICAgaHR0cFJlcXVlc3QuY2FjaGUgPT09ICdkZWZhdWx0JyAmJlxuICAgIChodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygnaWYtbW9kaWZpZWQtc2luY2UnKSB8fFxuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2lmLW5vbmUtbWF0Y2gnKSB8fFxuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2lmLXVubW9kaWZpZWQtc2luY2UnKSB8fFxuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2lmLW1hdGNoJykgfHxcbiAgICAgIGh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdpZi1yYW5nZScpKVxuICApIHtcbiAgICBodHRwUmVxdWVzdC5jYWNoZSA9ICduby1zdG9yZSdcbiAgfVxuXG4gIC8vICAgIDE2LiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpcyBcIm5vLWNhY2hlXCIsIGh0dHBSZXF1ZXN0XHUyMDE5cyBwcmV2ZW50XG4gIC8vICAgIG5vLWNhY2hlIGNhY2hlLWNvbnRyb2wgaGVhZGVyIG1vZGlmaWNhdGlvbiBmbGFnIGlzIHVuc2V0LCBhbmRcbiAgLy8gICAgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYENhY2hlLUNvbnRyb2xgLCB0aGVuIGFwcGVuZFxuICAvLyAgICBgQ2FjaGUtQ29udHJvbGAvYG1heC1hZ2U9MGAgdG8gaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICBpZiAoXG4gICAgaHR0cFJlcXVlc3QuY2FjaGUgPT09ICduby1jYWNoZScgJiZcbiAgICAhaHR0cFJlcXVlc3QucHJldmVudE5vQ2FjaGVDYWNoZUNvbnRyb2xIZWFkZXJNb2RpZmljYXRpb24gJiZcbiAgICAhaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ2NhY2hlLWNvbnRyb2wnKVxuICApIHtcbiAgICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ2NhY2hlLWNvbnRyb2wnLCAnbWF4LWFnZT0wJylcbiAgfVxuXG4gIC8vICAgIDE3LiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpcyBcIm5vLXN0b3JlXCIgb3IgXCJyZWxvYWRcIiwgdGhlbjpcbiAgaWYgKGh0dHBSZXF1ZXN0LmNhY2hlID09PSAnbm8tc3RvcmUnIHx8IGh0dHBSZXF1ZXN0LmNhY2hlID09PSAncmVsb2FkJykge1xuICAgIC8vIDEuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBkb2VzIG5vdCBjb250YWluIGBQcmFnbWFgLCB0aGVuIGFwcGVuZFxuICAgIC8vIGBQcmFnbWFgL2Buby1jYWNoZWAgdG8gaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAgIGlmICghaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuY29udGFpbnMoJ3ByYWdtYScpKSB7XG4gICAgICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ3ByYWdtYScsICduby1jYWNoZScpXG4gICAgfVxuXG4gICAgLy8gMi4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGRvZXMgbm90IGNvbnRhaW4gYENhY2hlLUNvbnRyb2xgLFxuICAgIC8vIHRoZW4gYXBwZW5kIGBDYWNoZS1Db250cm9sYC9gbm8tY2FjaGVgIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgICBpZiAoIWh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdjYWNoZS1jb250cm9sJykpIHtcbiAgICAgIGh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnY2FjaGUtY29udHJvbCcsICduby1jYWNoZScpXG4gICAgfVxuICB9XG5cbiAgLy8gICAgMTguIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBjb250YWlucyBgUmFuZ2VgLCB0aGVuIGFwcGVuZFxuICAvLyAgICBgQWNjZXB0LUVuY29kaW5nYC9gaWRlbnRpdHlgIHRvIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cbiAgaWYgKGh0dHBSZXF1ZXN0LmhlYWRlcnNMaXN0LmNvbnRhaW5zKCdyYW5nZScpKSB7XG4gICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdhY2NlcHQtZW5jb2RpbmcnLCAnaWRlbnRpdHknKVxuICB9XG5cbiAgLy8gICAgMTkuIE1vZGlmeSBodHRwUmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgcGVyIEhUVFAuIERvIG5vdCBhcHBlbmQgYSBnaXZlblxuICAvLyAgICBoZWFkZXIgaWYgaHR0cFJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0IGNvbnRhaW5zIHRoYXQgaGVhZGVyXHUyMDE5cyBuYW1lLlxuICAvLyAgICBUT0RPOiBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL2ZldGNoL2lzc3Vlcy8xMjg1I2lzc3VlY29tbWVudC04OTY1NjAxMjlcbiAgaWYgKCFodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygnYWNjZXB0LWVuY29kaW5nJykpIHtcbiAgICBpZiAodXJsSGFzSHR0cHNTY2hlbWUocmVxdWVzdEN1cnJlbnRVUkwoaHR0cFJlcXVlc3QpKSkge1xuICAgICAgaHR0cFJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdhY2NlcHQtZW5jb2RpbmcnLCAnYnIsIGd6aXAsIGRlZmxhdGUnKVxuICAgIH0gZWxzZSB7XG4gICAgICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ2FjY2VwdC1lbmNvZGluZycsICdnemlwLCBkZWZsYXRlJylcbiAgICB9XG4gIH1cblxuICBodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5kZWxldGUoJ2hvc3QnKVxuXG4gIC8vICAgIDIwLiBJZiBpbmNsdWRlQ3JlZGVudGlhbHMgaXMgdHJ1ZSwgdGhlbjpcbiAgaWYgKGluY2x1ZGVDcmVkZW50aWFscykge1xuICAgIC8vIDEuIElmIHRoZSB1c2VyIGFnZW50IGlzIG5vdCBjb25maWd1cmVkIHRvIGJsb2NrIGNvb2tpZXMgZm9yIGh0dHBSZXF1ZXN0XG4gICAgLy8gKHNlZSBzZWN0aW9uIDcgb2YgW0NPT0tJRVNdKSwgdGhlbjpcbiAgICAvLyBUT0RPOiBjcmVkZW50aWFsc1xuICAgIC8vIDIuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBkb2VzIG5vdCBjb250YWluIGBBdXRob3JpemF0aW9uYCwgdGhlbjpcbiAgICAvLyBUT0RPOiBjcmVkZW50aWFsc1xuICB9XG5cbiAgLy8gICAgMjEuIElmIHRoZXJlXHUyMDE5cyBhIHByb3h5LWF1dGhlbnRpY2F0aW9uIGVudHJ5LCB1c2UgaXQgYXMgYXBwcm9wcmlhdGUuXG4gIC8vICAgIFRPRE86IHByb3h5LWF1dGhlbnRpY2F0aW9uXG5cbiAgLy8gICAgMjIuIFNldCBodHRwQ2FjaGUgdG8gdGhlIHJlc3VsdCBvZiBkZXRlcm1pbmluZyB0aGUgSFRUUCBjYWNoZVxuICAvLyAgICBwYXJ0aXRpb24sIGdpdmVuIGh0dHBSZXF1ZXN0LlxuICAvLyAgICBUT0RPOiBjYWNoZVxuXG4gIC8vICAgIDIzLiBJZiBodHRwQ2FjaGUgaXMgbnVsbCwgdGhlbiBzZXQgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgdG9cbiAgLy8gICAgXCJuby1zdG9yZVwiLlxuICBpZiAoaHR0cENhY2hlID09IG51bGwpIHtcbiAgICBodHRwUmVxdWVzdC5jYWNoZSA9ICduby1zdG9yZSdcbiAgfVxuXG4gIC8vICAgIDI0LiBJZiBodHRwUmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpcyBuZWl0aGVyIFwibm8tc3RvcmVcIiBub3IgXCJyZWxvYWRcIixcbiAgLy8gICAgdGhlbjpcbiAgaWYgKGh0dHBSZXF1ZXN0Lm1vZGUgIT09ICduby1zdG9yZScgJiYgaHR0cFJlcXVlc3QubW9kZSAhPT0gJ3JlbG9hZCcpIHtcbiAgICAvLyBUT0RPOiBjYWNoZVxuICB9XG5cbiAgLy8gOS4gSWYgYWJvcnRlZCwgdGhlbiByZXR1cm4gdGhlIGFwcHJvcHJpYXRlIG5ldHdvcmsgZXJyb3IgZm9yIGZldGNoUGFyYW1zLlxuICAvLyBUT0RPXG5cbiAgLy8gMTAuIElmIHJlc3BvbnNlIGlzIG51bGwsIHRoZW46XG4gIGlmIChyZXNwb25zZSA9PSBudWxsKSB7XG4gICAgLy8gMS4gSWYgaHR0cFJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgaXMgXCJvbmx5LWlmLWNhY2hlZFwiLCB0aGVuIHJldHVybiBhXG4gICAgLy8gbmV0d29yayBlcnJvci5cbiAgICBpZiAoaHR0cFJlcXVlc3QubW9kZSA9PT0gJ29ubHktaWYtY2FjaGVkJykge1xuICAgICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoJ29ubHkgaWYgY2FjaGVkJylcbiAgICB9XG5cbiAgICAvLyAyLiBMZXQgZm9yd2FyZFJlc3BvbnNlIGJlIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQLW5ldHdvcmsgZmV0Y2hcbiAgICAvLyBnaXZlbiBodHRwRmV0Y2hQYXJhbXMsIGluY2x1ZGVDcmVkZW50aWFscywgYW5kIGlzTmV3Q29ubmVjdGlvbkZldGNoLlxuICAgIGNvbnN0IGZvcndhcmRSZXNwb25zZSA9IGF3YWl0IGh0dHBOZXR3b3JrRmV0Y2goXG4gICAgICBodHRwRmV0Y2hQYXJhbXMsXG4gICAgICBpbmNsdWRlQ3JlZGVudGlhbHMsXG4gICAgICBpc05ld0Nvbm5lY3Rpb25GZXRjaFxuICAgIClcblxuICAgIC8vIDMuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBtZXRob2QgaXMgdW5zYWZlIGFuZCBmb3J3YXJkUmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpc1xuICAgIC8vIGluIHRoZSByYW5nZSAyMDAgdG8gMzk5LCBpbmNsdXNpdmUsIGludmFsaWRhdGUgYXBwcm9wcmlhdGUgc3RvcmVkXG4gICAgLy8gcmVzcG9uc2VzIGluIGh0dHBDYWNoZSwgYXMgcGVyIHRoZSBcIkludmFsaWRhdGlvblwiIGNoYXB0ZXIgb2YgSFRUUFxuICAgIC8vIENhY2hpbmcsIGFuZCBzZXQgc3RvcmVkUmVzcG9uc2UgdG8gbnVsbC4gW0hUVFAtQ0FDSElOR11cbiAgICBpZiAoXG4gICAgICAhc2FmZU1ldGhvZHNTZXQuaGFzKGh0dHBSZXF1ZXN0Lm1ldGhvZCkgJiZcbiAgICAgIGZvcndhcmRSZXNwb25zZS5zdGF0dXMgPj0gMjAwICYmXG4gICAgICBmb3J3YXJkUmVzcG9uc2Uuc3RhdHVzIDw9IDM5OVxuICAgICkge1xuICAgICAgLy8gVE9ETzogY2FjaGVcbiAgICB9XG5cbiAgICAvLyA0LiBJZiB0aGUgcmV2YWxpZGF0aW5nRmxhZyBpcyBzZXQgYW5kIGZvcndhcmRSZXNwb25zZVx1MjAxOXMgc3RhdHVzIGlzIDMwNCxcbiAgICAvLyB0aGVuOlxuICAgIGlmIChyZXZhbGlkYXRpbmdGbGFnICYmIGZvcndhcmRSZXNwb25zZS5zdGF0dXMgPT09IDMwNCkge1xuICAgICAgLy8gVE9ETzogY2FjaGVcbiAgICB9XG5cbiAgICAvLyA1LiBJZiByZXNwb25zZSBpcyBudWxsLCB0aGVuOlxuICAgIGlmIChyZXNwb25zZSA9PSBudWxsKSB7XG4gICAgICAvLyAxLiBTZXQgcmVzcG9uc2UgdG8gZm9yd2FyZFJlc3BvbnNlLlxuICAgICAgcmVzcG9uc2UgPSBmb3J3YXJkUmVzcG9uc2VcblxuICAgICAgLy8gMi4gU3RvcmUgaHR0cFJlcXVlc3QgYW5kIGZvcndhcmRSZXNwb25zZSBpbiBodHRwQ2FjaGUsIGFzIHBlciB0aGVcbiAgICAgIC8vIFwiU3RvcmluZyBSZXNwb25zZXMgaW4gQ2FjaGVzXCIgY2hhcHRlciBvZiBIVFRQIENhY2hpbmcuIFtIVFRQLUNBQ0hJTkddXG4gICAgICAvLyBUT0RPOiBjYWNoZVxuICAgIH1cbiAgfVxuXG4gIC8vIDExLiBTZXQgcmVzcG9uc2VcdTIwMTlzIFVSTCBsaXN0IHRvIGEgY2xvbmUgb2YgaHR0cFJlcXVlc3RcdTIwMTlzIFVSTCBsaXN0LlxuICByZXNwb25zZS51cmxMaXN0ID0gWy4uLmh0dHBSZXF1ZXN0LnVybExpc3RdXG5cbiAgLy8gMTIuIElmIGh0dHBSZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdCBjb250YWlucyBgUmFuZ2VgLCB0aGVuIHNldCByZXNwb25zZVx1MjAxOXNcbiAgLy8gcmFuZ2UtcmVxdWVzdGVkIGZsYWcuXG4gIGlmIChodHRwUmVxdWVzdC5oZWFkZXJzTGlzdC5jb250YWlucygncmFuZ2UnKSkge1xuICAgIHJlc3BvbnNlLnJhbmdlUmVxdWVzdGVkID0gdHJ1ZVxuICB9XG5cbiAgLy8gMTMuIFNldCByZXNwb25zZVx1MjAxOXMgcmVxdWVzdC1pbmNsdWRlcy1jcmVkZW50aWFscyB0byBpbmNsdWRlQ3JlZGVudGlhbHMuXG4gIHJlc3BvbnNlLnJlcXVlc3RJbmNsdWRlc0NyZWRlbnRpYWxzID0gaW5jbHVkZUNyZWRlbnRpYWxzXG5cbiAgLy8gMTQuIElmIHJlc3BvbnNlXHUyMDE5cyBzdGF0dXMgaXMgNDAxLCBodHRwUmVxdWVzdFx1MjAxOXMgcmVzcG9uc2UgdGFpbnRpbmcgaXMgbm90XG4gIC8vIFwiY29yc1wiLCBpbmNsdWRlQ3JlZGVudGlhbHMgaXMgdHJ1ZSwgYW5kIHJlcXVlc3RcdTIwMTlzIHdpbmRvdyBpcyBhbiBlbnZpcm9ubWVudFxuICAvLyBzZXR0aW5ncyBvYmplY3QsIHRoZW46XG4gIC8vIFRPRE9cblxuICAvLyAxNS4gSWYgcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyA0MDcsIHRoZW46XG4gIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDQwNykge1xuICAgIC8vIDEuIElmIHJlcXVlc3RcdTIwMTlzIHdpbmRvdyBpcyBcIm5vLXdpbmRvd1wiLCB0aGVuIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG4gICAgaWYgKHJlcXVlc3Qud2luZG93ID09PSAnbm8td2luZG93Jykge1xuICAgICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoKVxuICAgIH1cblxuICAgIC8vIDIuID8/P1xuXG4gICAgLy8gMy4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gcmV0dXJuIHRoZSBhcHByb3ByaWF0ZSBuZXR3b3JrIGVycm9yIGZvciBmZXRjaFBhcmFtcy5cbiAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICByZXR1cm4gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yKGZldGNoUGFyYW1zKVxuICAgIH1cblxuICAgIC8vIDQuIFByb21wdCB0aGUgZW5kIHVzZXIgYXMgYXBwcm9wcmlhdGUgaW4gcmVxdWVzdFx1MjAxOXMgd2luZG93IGFuZCBzdG9yZVxuICAgIC8vIHRoZSByZXN1bHQgYXMgYSBwcm94eS1hdXRoZW50aWNhdGlvbiBlbnRyeS4gW0hUVFAtQVVUSF1cbiAgICAvLyBUT0RPOiBJbnZva2Ugc29tZSBraW5kIG9mIGNhbGxiYWNrP1xuXG4gICAgLy8gNS4gU2V0IHJlc3BvbnNlIHRvIHRoZSByZXN1bHQgb2YgcnVubmluZyBIVFRQLW5ldHdvcmstb3ItY2FjaGUgZmV0Y2ggZ2l2ZW5cbiAgICAvLyBmZXRjaFBhcmFtcy5cbiAgICAvLyBUT0RPXG4gICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoJ3Byb3h5IGF1dGhlbnRpY2F0aW9uIHJlcXVpcmVkJylcbiAgfVxuXG4gIC8vIDE2LiBJZiBhbGwgb2YgdGhlIGZvbGxvd2luZyBhcmUgdHJ1ZVxuICBpZiAoXG4gICAgLy8gcmVzcG9uc2VcdTIwMTlzIHN0YXR1cyBpcyA0MjFcbiAgICByZXNwb25zZS5zdGF0dXMgPT09IDQyMSAmJlxuICAgIC8vIGlzTmV3Q29ubmVjdGlvbkZldGNoIGlzIGZhbHNlXG4gICAgIWlzTmV3Q29ubmVjdGlvbkZldGNoICYmXG4gICAgLy8gcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBudWxsLCBvciByZXF1ZXN0XHUyMDE5cyBib2R5IGlzIG5vbi1udWxsIGFuZCByZXF1ZXN0XHUyMDE5cyBib2R5XHUyMDE5cyBzb3VyY2UgaXMgbm9uLW51bGxcbiAgICAocmVxdWVzdC5ib2R5ID09IG51bGwgfHwgcmVxdWVzdC5ib2R5LnNvdXJjZSAhPSBudWxsKVxuICApIHtcbiAgICAvLyB0aGVuOlxuXG4gICAgLy8gMS4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gcmV0dXJuIHRoZSBhcHByb3ByaWF0ZSBuZXR3b3JrIGVycm9yIGZvciBmZXRjaFBhcmFtcy5cbiAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICByZXR1cm4gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yKGZldGNoUGFyYW1zKVxuICAgIH1cblxuICAgIC8vIDIuIFNldCByZXNwb25zZSB0byB0aGUgcmVzdWx0IG9mIHJ1bm5pbmcgSFRUUC1uZXR3b3JrLW9yLWNhY2hlXG4gICAgLy8gZmV0Y2ggZ2l2ZW4gZmV0Y2hQYXJhbXMsIGlzQXV0aGVudGljYXRpb25GZXRjaCwgYW5kIHRydWUuXG5cbiAgICAvLyBUT0RPIChzcGVjKTogVGhlIHNwZWMgZG9lc24ndCBzcGVjaWZ5IHRoaXMgYnV0IHdlIG5lZWQgdG8gY2FuY2VsXG4gICAgLy8gdGhlIGFjdGl2ZSByZXNwb25zZSBiZWZvcmUgd2UgY2FuIHN0YXJ0IGEgbmV3IG9uZS5cbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vd2hhdHdnL2ZldGNoL2lzc3Vlcy8xMjkzXG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb25uZWN0aW9uLmRlc3Ryb3koKVxuXG4gICAgcmVzcG9uc2UgPSBhd2FpdCBodHRwTmV0d29ya09yQ2FjaGVGZXRjaChcbiAgICAgIGZldGNoUGFyYW1zLFxuICAgICAgaXNBdXRoZW50aWNhdGlvbkZldGNoLFxuICAgICAgdHJ1ZVxuICAgIClcbiAgfVxuXG4gIC8vIDE3LiBJZiBpc0F1dGhlbnRpY2F0aW9uRmV0Y2ggaXMgdHJ1ZSwgdGhlbiBjcmVhdGUgYW4gYXV0aGVudGljYXRpb24gZW50cnlcbiAgaWYgKGlzQXV0aGVudGljYXRpb25GZXRjaCkge1xuICAgIC8vIFRPRE9cbiAgfVxuXG4gIC8vIDE4LiBSZXR1cm4gcmVzcG9uc2UuXG4gIHJldHVybiByZXNwb25zZVxufVxuXG4vLyBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jaHR0cC1uZXR3b3JrLWZldGNoXG5hc3luYyBmdW5jdGlvbiBodHRwTmV0d29ya0ZldGNoIChcbiAgZmV0Y2hQYXJhbXMsXG4gIGluY2x1ZGVDcmVkZW50aWFscyA9IGZhbHNlLFxuICBmb3JjZU5ld0Nvbm5lY3Rpb24gPSBmYWxzZVxuKSB7XG4gIGFzc2VydCghZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb25uZWN0aW9uIHx8IGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29ubmVjdGlvbi5kZXN0cm95ZWQpXG5cbiAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb25uZWN0aW9uID0ge1xuICAgIGFib3J0OiBudWxsLFxuICAgIGRlc3Ryb3llZDogZmFsc2UsXG4gICAgZGVzdHJveSAoZXJyKSB7XG4gICAgICBpZiAoIXRoaXMuZGVzdHJveWVkKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkID0gdHJ1ZVxuICAgICAgICB0aGlzLmFib3J0Py4oZXJyID8/IG5ldyBET01FeGNlcHRpb24oJ1RoZSBvcGVyYXRpb24gd2FzIGFib3J0ZWQuJywgJ0Fib3J0RXJyb3InKSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyAxLiBMZXQgcmVxdWVzdCBiZSBmZXRjaFBhcmFtc1x1MjAxOXMgcmVxdWVzdC5cbiAgY29uc3QgcmVxdWVzdCA9IGZldGNoUGFyYW1zLnJlcXVlc3RcblxuICAvLyAyLiBMZXQgcmVzcG9uc2UgYmUgbnVsbC5cbiAgbGV0IHJlc3BvbnNlID0gbnVsbFxuXG4gIC8vIDMuIExldCB0aW1pbmdJbmZvIGJlIGZldGNoUGFyYW1zXHUyMDE5cyB0aW1pbmcgaW5mby5cbiAgY29uc3QgdGltaW5nSW5mbyA9IGZldGNoUGFyYW1zLnRpbWluZ0luZm9cblxuICAvLyA0LiBMZXQgaHR0cENhY2hlIGJlIHRoZSByZXN1bHQgb2YgZGV0ZXJtaW5pbmcgdGhlIEhUVFAgY2FjaGUgcGFydGl0aW9uLFxuICAvLyBnaXZlbiByZXF1ZXN0LlxuICAvLyBUT0RPOiBjYWNoZVxuICBjb25zdCBodHRwQ2FjaGUgPSBudWxsXG5cbiAgLy8gNS4gSWYgaHR0cENhY2hlIGlzIG51bGwsIHRoZW4gc2V0IHJlcXVlc3RcdTIwMTlzIGNhY2hlIG1vZGUgdG8gXCJuby1zdG9yZVwiLlxuICBpZiAoaHR0cENhY2hlID09IG51bGwpIHtcbiAgICByZXF1ZXN0LmNhY2hlID0gJ25vLXN0b3JlJ1xuICB9XG5cbiAgLy8gNi4gTGV0IG5ldHdvcmtQYXJ0aXRpb25LZXkgYmUgdGhlIHJlc3VsdCBvZiBkZXRlcm1pbmluZyB0aGUgbmV0d29ya1xuICAvLyBwYXJ0aXRpb24ga2V5IGdpdmVuIHJlcXVlc3QuXG4gIC8vIFRPRE9cblxuICAvLyA3LiBMZXQgbmV3Q29ubmVjdGlvbiBiZSBcInllc1wiIGlmIGZvcmNlTmV3Q29ubmVjdGlvbiBpcyB0cnVlOyBvdGhlcndpc2VcbiAgLy8gXCJub1wiLlxuICBjb25zdCBuZXdDb25uZWN0aW9uID0gZm9yY2VOZXdDb25uZWN0aW9uID8gJ3llcycgOiAnbm8nIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tdW51c2VkLXZhcnNcblxuICAvLyA4LiBTd2l0Y2ggb24gcmVxdWVzdFx1MjAxOXMgbW9kZTpcbiAgaWYgKHJlcXVlc3QubW9kZSA9PT0gJ3dlYnNvY2tldCcpIHtcbiAgICAvLyBMZXQgY29ubmVjdGlvbiBiZSB0aGUgcmVzdWx0IG9mIG9idGFpbmluZyBhIFdlYlNvY2tldCBjb25uZWN0aW9uLFxuICAgIC8vIGdpdmVuIHJlcXVlc3RcdTIwMTlzIGN1cnJlbnQgVVJMLlxuICAgIC8vIFRPRE9cbiAgfSBlbHNlIHtcbiAgICAvLyBMZXQgY29ubmVjdGlvbiBiZSB0aGUgcmVzdWx0IG9mIG9idGFpbmluZyBhIGNvbm5lY3Rpb24sIGdpdmVuXG4gICAgLy8gbmV0d29ya1BhcnRpdGlvbktleSwgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkxcdTIwMTlzIG9yaWdpbixcbiAgICAvLyBpbmNsdWRlQ3JlZGVudGlhbHMsIGFuZCBmb3JjZU5ld0Nvbm5lY3Rpb24uXG4gICAgLy8gVE9ET1xuICB9XG5cbiAgLy8gOS4gUnVuIHRoZXNlIHN0ZXBzLCBidXQgYWJvcnQgd2hlbiB0aGUgb25nb2luZyBmZXRjaCBpcyB0ZXJtaW5hdGVkOlxuXG4gIC8vICAgIDEuIElmIGNvbm5lY3Rpb24gaXMgZmFpbHVyZSwgdGhlbiByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuXG4gIC8vICAgIDIuIFNldCB0aW1pbmdJbmZvXHUyMDE5cyBmaW5hbCBjb25uZWN0aW9uIHRpbWluZyBpbmZvIHRvIHRoZSByZXN1bHQgb2ZcbiAgLy8gICAgY2FsbGluZyBjbGFtcCBhbmQgY29hcnNlbiBjb25uZWN0aW9uIHRpbWluZyBpbmZvIHdpdGggY29ubmVjdGlvblx1MjAxOXNcbiAgLy8gICAgdGltaW5nIGluZm8sIHRpbWluZ0luZm9cdTIwMTlzIHBvc3QtcmVkaXJlY3Qgc3RhcnQgdGltZSwgYW5kIGZldGNoUGFyYW1zXHUyMDE5c1xuICAvLyAgICBjcm9zcy1vcmlnaW4gaXNvbGF0ZWQgY2FwYWJpbGl0eS5cblxuICAvLyAgICAzLiBJZiBjb25uZWN0aW9uIGlzIG5vdCBhbiBIVFRQLzIgY29ubmVjdGlvbiwgcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBub24tbnVsbCxcbiAgLy8gICAgYW5kIHJlcXVlc3RcdTIwMTlzIGJvZHlcdTIwMTlzIHNvdXJjZSBpcyBudWxsLCB0aGVuIGFwcGVuZCAoYFRyYW5zZmVyLUVuY29kaW5nYCxcbiAgLy8gICAgYGNodW5rZWRgKSB0byByZXF1ZXN0XHUyMDE5cyBoZWFkZXIgbGlzdC5cblxuICAvLyAgICA0LiBTZXQgdGltaW5nSW5mb1x1MjAxOXMgZmluYWwgbmV0d29yay1yZXF1ZXN0IHN0YXJ0IHRpbWUgdG8gdGhlIGNvYXJzZW5lZFxuICAvLyAgICBzaGFyZWQgY3VycmVudCB0aW1lIGdpdmVuIGZldGNoUGFyYW1zXHUyMDE5cyBjcm9zcy1vcmlnaW4gaXNvbGF0ZWRcbiAgLy8gICAgY2FwYWJpbGl0eS5cblxuICAvLyAgICA1LiBTZXQgcmVzcG9uc2UgdG8gdGhlIHJlc3VsdCBvZiBtYWtpbmcgYW4gSFRUUCByZXF1ZXN0IG92ZXIgY29ubmVjdGlvblxuICAvLyAgICB1c2luZyByZXF1ZXN0IHdpdGggdGhlIGZvbGxvd2luZyBjYXZlYXRzOlxuXG4gIC8vICAgICAgICAtIEZvbGxvdyB0aGUgcmVsZXZhbnQgcmVxdWlyZW1lbnRzIGZyb20gSFRUUC4gW0hUVFBdIFtIVFRQLVNFTUFOVElDU11cbiAgLy8gICAgICAgIFtIVFRQLUNPTkRdIFtIVFRQLUNBQ0hJTkddIFtIVFRQLUFVVEhdXG5cbiAgLy8gICAgICAgIC0gSWYgcmVxdWVzdFx1MjAxOXMgYm9keSBpcyBub24tbnVsbCwgYW5kIHJlcXVlc3RcdTIwMTlzIGJvZHlcdTIwMTlzIHNvdXJjZSBpcyBudWxsLFxuICAvLyAgICAgICAgdGhlbiB0aGUgdXNlciBhZ2VudCBtYXkgaGF2ZSBhIGJ1ZmZlciBvZiB1cCB0byA2NCBraWJpYnl0ZXMgYW5kIHN0b3JlXG4gIC8vICAgICAgICBhIHBhcnQgb2YgcmVxdWVzdFx1MjAxOXMgYm9keSBpbiB0aGF0IGJ1ZmZlci4gSWYgdGhlIHVzZXIgYWdlbnQgcmVhZHMgZnJvbVxuICAvLyAgICAgICAgcmVxdWVzdFx1MjAxOXMgYm9keSBiZXlvbmQgdGhhdCBidWZmZXJcdTIwMTlzIHNpemUgYW5kIHRoZSB1c2VyIGFnZW50IG5lZWRzIHRvXG4gIC8vICAgICAgICByZXNlbmQgcmVxdWVzdCwgdGhlbiBpbnN0ZWFkIHJldHVybiBhIG5ldHdvcmsgZXJyb3IuXG5cbiAgLy8gICAgICAgIC0gU2V0IHRpbWluZ0luZm9cdTIwMTlzIGZpbmFsIG5ldHdvcmstcmVzcG9uc2Ugc3RhcnQgdGltZSB0byB0aGUgY29hcnNlbmVkXG4gIC8vICAgICAgICBzaGFyZWQgY3VycmVudCB0aW1lIGdpdmVuIGZldGNoUGFyYW1zXHUyMDE5cyBjcm9zcy1vcmlnaW4gaXNvbGF0ZWQgY2FwYWJpbGl0eSxcbiAgLy8gICAgICAgIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSB1c2VyIGFnZW50XHUyMDE5cyBIVFRQIHBhcnNlciByZWNlaXZlcyB0aGUgZmlyc3QgYnl0ZVxuICAvLyAgICAgICAgb2YgdGhlIHJlc3BvbnNlIChlLmcuLCBmcmFtZSBoZWFkZXIgYnl0ZXMgZm9yIEhUVFAvMiBvciByZXNwb25zZSBzdGF0dXNcbiAgLy8gICAgICAgIGxpbmUgZm9yIEhUVFAvMS54KS5cblxuICAvLyAgICAgICAgLSBXYWl0IHVudGlsIGFsbCB0aGUgaGVhZGVycyBhcmUgdHJhbnNtaXR0ZWQuXG5cbiAgLy8gICAgICAgIC0gQW55IHJlc3BvbnNlcyB3aG9zZSBzdGF0dXMgaXMgaW4gdGhlIHJhbmdlIDEwMCB0byAxOTksIGluY2x1c2l2ZSxcbiAgLy8gICAgICAgIGFuZCBpcyBub3QgMTAxLCBhcmUgdG8gYmUgaWdub3JlZCwgZXhjZXB0IGZvciB0aGUgcHVycG9zZXMgb2Ygc2V0dGluZ1xuICAvLyAgICAgICAgdGltaW5nSW5mb1x1MjAxOXMgZmluYWwgbmV0d29yay1yZXNwb25zZSBzdGFydCB0aW1lIGFib3ZlLlxuXG4gIC8vICAgIC0gSWYgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QgY29udGFpbnMgYFRyYW5zZmVyLUVuY29kaW5nYC9gY2h1bmtlZGAgYW5kXG4gIC8vICAgIHJlc3BvbnNlIGlzIHRyYW5zZmVycmVkIHZpYSBIVFRQLzEuMCBvciBvbGRlciwgdGhlbiByZXR1cm4gYSBuZXR3b3JrXG4gIC8vICAgIGVycm9yLlxuXG4gIC8vICAgIC0gSWYgdGhlIEhUVFAgcmVxdWVzdCByZXN1bHRzIGluIGEgVExTIGNsaWVudCBjZXJ0aWZpY2F0ZSBkaWFsb2csIHRoZW46XG5cbiAgLy8gICAgICAgIDEuIElmIHJlcXVlc3RcdTIwMTlzIHdpbmRvdyBpcyBhbiBlbnZpcm9ubWVudCBzZXR0aW5ncyBvYmplY3QsIG1ha2UgdGhlXG4gIC8vICAgICAgICBkaWFsb2cgYXZhaWxhYmxlIGluIHJlcXVlc3RcdTIwMTlzIHdpbmRvdy5cblxuICAvLyAgICAgICAgMi4gT3RoZXJ3aXNlLCByZXR1cm4gYSBuZXR3b3JrIGVycm9yLlxuXG4gIC8vIFRvIHRyYW5zbWl0IHJlcXVlc3RcdTIwMTlzIGJvZHkgYm9keSwgcnVuIHRoZXNlIHN0ZXBzOlxuICBsZXQgcmVxdWVzdEJvZHkgPSBudWxsXG4gIC8vIDEuIElmIGJvZHkgaXMgbnVsbCBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVxdWVzdCBlbmQtb2YtYm9keSBpc1xuICAvLyBub24tbnVsbCwgdGhlbiBxdWV1ZSBhIGZldGNoIHRhc2sgZ2l2ZW4gZmV0Y2hQYXJhbXNcdTIwMTlzIHByb2Nlc3MgcmVxdWVzdFxuICAvLyBlbmQtb2YtYm9keSBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gIGlmIChyZXF1ZXN0LmJvZHkgPT0gbnVsbCAmJiBmZXRjaFBhcmFtcy5wcm9jZXNzUmVxdWVzdEVuZE9mQm9keSkge1xuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IGZldGNoUGFyYW1zLnByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5KCkpXG4gIH0gZWxzZSBpZiAocmVxdWVzdC5ib2R5ICE9IG51bGwpIHtcbiAgICAvLyAyLiBPdGhlcndpc2UsIGlmIGJvZHkgaXMgbm9uLW51bGw6XG5cbiAgICAvLyAgICAxLiBMZXQgcHJvY2Vzc0JvZHlDaHVuayBnaXZlbiBieXRlcyBiZSB0aGVzZSBzdGVwczpcbiAgICBjb25zdCBwcm9jZXNzQm9keUNodW5rID0gYXN5bmMgZnVuY3Rpb24gKiAoYnl0ZXMpIHtcbiAgICAgIC8vIDEuIElmIHRoZSBvbmdvaW5nIGZldGNoIGlzIHRlcm1pbmF0ZWQsIHRoZW4gYWJvcnQgdGhlc2Ugc3RlcHMuXG4gICAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAyLiBSdW4gdGhpcyBzdGVwIGluIHBhcmFsbGVsOiB0cmFuc21pdCBieXRlcy5cbiAgICAgIHlpZWxkIGJ5dGVzXG5cbiAgICAgIC8vIDMuIElmIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlcXVlc3QgYm9keSBpcyBub24tbnVsbCwgdGhlbiBydW5cbiAgICAgIC8vIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlcXVlc3QgYm9keSBnaXZlbiBieXRlc1x1MjAxOXMgbGVuZ3RoLlxuICAgICAgZmV0Y2hQYXJhbXMucHJvY2Vzc1JlcXVlc3RCb2R5Q2h1bmtMZW5ndGg/LihieXRlcy5ieXRlTGVuZ3RoKVxuICAgIH1cblxuICAgIC8vIDIuIExldCBwcm9jZXNzRW5kT2ZCb2R5IGJlIHRoZXNlIHN0ZXBzOlxuICAgIGNvbnN0IHByb2Nlc3NFbmRPZkJvZHkgPSAoKSA9PiB7XG4gICAgICAvLyAxLiBJZiBmZXRjaFBhcmFtcyBpcyBjYW5jZWxlZCwgdGhlbiBhYm9ydCB0aGVzZSBzdGVwcy5cbiAgICAgIGlmIChpc0NhbmNlbGxlZChmZXRjaFBhcmFtcykpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDIuIElmIGZldGNoUGFyYW1zXHUyMDE5cyBwcm9jZXNzIHJlcXVlc3QgZW5kLW9mLWJvZHkgaXMgbm9uLW51bGwsXG4gICAgICAvLyB0aGVuIHJ1biBmZXRjaFBhcmFtc1x1MjAxOXMgcHJvY2VzcyByZXF1ZXN0IGVuZC1vZi1ib2R5LlxuICAgICAgaWYgKGZldGNoUGFyYW1zLnByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5KSB7XG4gICAgICAgIGZldGNoUGFyYW1zLnByb2Nlc3NSZXF1ZXN0RW5kT2ZCb2R5KClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAzLiBMZXQgcHJvY2Vzc0JvZHlFcnJvciBnaXZlbiBlIGJlIHRoZXNlIHN0ZXBzOlxuICAgIGNvbnN0IHByb2Nlc3NCb2R5RXJyb3IgPSAoZSkgPT4ge1xuICAgICAgLy8gMS4gSWYgZmV0Y2hQYXJhbXMgaXMgY2FuY2VsZWQsIHRoZW4gYWJvcnQgdGhlc2Ugc3RlcHMuXG4gICAgICBpZiAoaXNDYW5jZWxsZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAyLiBJZiBlIGlzIGFuIFwiQWJvcnRFcnJvclwiIERPTUV4Y2VwdGlvbiwgdGhlbiBhYm9ydCBmZXRjaFBhcmFtc1x1MjAxOXMgY29udHJvbGxlci5cbiAgICAgIGlmIChlLm5hbWUgPT09ICdBYm9ydEVycm9yJykge1xuICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmFib3J0KClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIudGVybWluYXRlKGUpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNC4gSW5jcmVtZW50YWxseSByZWFkIHJlcXVlc3RcdTIwMTlzIGJvZHkgZ2l2ZW4gcHJvY2Vzc0JvZHlDaHVuaywgcHJvY2Vzc0VuZE9mQm9keSxcbiAgICAvLyBwcm9jZXNzQm9keUVycm9yLCBhbmQgZmV0Y2hQYXJhbXNcdTIwMTlzIHRhc2sgZGVzdGluYXRpb24uXG4gICAgcmVxdWVzdEJvZHkgPSAoYXN5bmMgZnVuY3Rpb24gKiAoKSB7XG4gICAgICB0cnkge1xuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGJ5dGVzIG9mIHJlcXVlc3QuYm9keS5zdHJlYW0pIHtcbiAgICAgICAgICB5aWVsZCAqIHByb2Nlc3NCb2R5Q2h1bmsoYnl0ZXMpXG4gICAgICAgIH1cbiAgICAgICAgcHJvY2Vzc0VuZE9mQm9keSgpXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgcHJvY2Vzc0JvZHlFcnJvcihlcnIpXG4gICAgICB9XG4gICAgfSkoKVxuICB9XG5cbiAgdHJ5IHtcbiAgICAvLyBzb2NrZXQgaXMgb25seSBwcm92aWRlZCBmb3Igd2Vic29ja2V0c1xuICAgIGNvbnN0IHsgYm9keSwgc3RhdHVzLCBzdGF0dXNUZXh0LCBoZWFkZXJzTGlzdCwgc29ja2V0IH0gPSBhd2FpdCBkaXNwYXRjaCh7IGJvZHk6IHJlcXVlc3RCb2R5IH0pXG5cbiAgICBpZiAoc29ja2V0KSB7XG4gICAgICByZXNwb25zZSA9IG1ha2VSZXNwb25zZSh7IHN0YXR1cywgc3RhdHVzVGV4dCwgaGVhZGVyc0xpc3QsIHNvY2tldCB9KVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpdGVyYXRvciA9IGJvZHlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdKClcbiAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIubmV4dCA9ICgpID0+IGl0ZXJhdG9yLm5leHQoKVxuXG4gICAgICByZXNwb25zZSA9IG1ha2VSZXNwb25zZSh7IHN0YXR1cywgc3RhdHVzVGV4dCwgaGVhZGVyc0xpc3QgfSlcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIDEwLiBJZiBhYm9ydGVkLCB0aGVuOlxuICAgIGlmIChlcnIubmFtZSA9PT0gJ0Fib3J0RXJyb3InKSB7XG4gICAgICAvLyAxLiBJZiBjb25uZWN0aW9uIHVzZXMgSFRUUC8yLCB0aGVuIHRyYW5zbWl0IGFuIFJTVF9TVFJFQU0gZnJhbWUuXG4gICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbm5lY3Rpb24uZGVzdHJveSgpXG5cbiAgICAgIC8vIDIuIFJldHVybiB0aGUgYXBwcm9wcmlhdGUgbmV0d29yayBlcnJvciBmb3IgZmV0Y2hQYXJhbXMuXG4gICAgICByZXR1cm4gbWFrZUFwcHJvcHJpYXRlTmV0d29ya0Vycm9yKGZldGNoUGFyYW1zLCBlcnIpXG4gICAgfVxuXG4gICAgcmV0dXJuIG1ha2VOZXR3b3JrRXJyb3IoZXJyKVxuICB9XG5cbiAgLy8gMTEuIExldCBwdWxsQWxnb3JpdGhtIGJlIGFuIGFjdGlvbiB0aGF0IHJlc3VtZXMgdGhlIG9uZ29pbmcgZmV0Y2hcbiAgLy8gaWYgaXQgaXMgc3VzcGVuZGVkLlxuICBjb25zdCBwdWxsQWxnb3JpdGhtID0gKCkgPT4ge1xuICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIucmVzdW1lKClcbiAgfVxuXG4gIC8vIDEyLiBMZXQgY2FuY2VsQWxnb3JpdGhtIGJlIGFuIGFsZ29yaXRobSB0aGF0IGFib3J0cyBmZXRjaFBhcmFtc1x1MjAxOXNcbiAgLy8gY29udHJvbGxlciB3aXRoIHJlYXNvbiwgZ2l2ZW4gcmVhc29uLlxuICBjb25zdCBjYW5jZWxBbGdvcml0aG0gPSAocmVhc29uKSA9PiB7XG4gICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5hYm9ydChyZWFzb24pXG4gIH1cblxuICAvLyAxMy4gTGV0IGhpZ2hXYXRlck1hcmsgYmUgYSBub24tbmVnYXRpdmUsIG5vbi1OYU4gbnVtYmVyLCBjaG9zZW4gYnlcbiAgLy8gdGhlIHVzZXIgYWdlbnQuXG4gIC8vIFRPRE9cblxuICAvLyAxNC4gTGV0IHNpemVBbGdvcml0aG0gYmUgYW4gYWxnb3JpdGhtIHRoYXQgYWNjZXB0cyBhIGNodW5rIG9iamVjdFxuICAvLyBhbmQgcmV0dXJucyBhIG5vbi1uZWdhdGl2ZSwgbm9uLU5hTiwgbm9uLWluZmluaXRlIG51bWJlciwgY2hvc2VuIGJ5IHRoZSB1c2VyIGFnZW50LlxuICAvLyBUT0RPXG5cbiAgLy8gMTUuIExldCBzdHJlYW0gYmUgYSBuZXcgUmVhZGFibGVTdHJlYW0uXG4gIC8vIDE2LiBTZXQgdXAgc3RyZWFtIHdpdGggcHVsbEFsZ29yaXRobSBzZXQgdG8gcHVsbEFsZ29yaXRobSxcbiAgLy8gY2FuY2VsQWxnb3JpdGhtIHNldCB0byBjYW5jZWxBbGdvcml0aG0sIGhpZ2hXYXRlck1hcmsgc2V0IHRvXG4gIC8vIGhpZ2hXYXRlck1hcmssIGFuZCBzaXplQWxnb3JpdGhtIHNldCB0byBzaXplQWxnb3JpdGhtLlxuICBpZiAoIVJlYWRhYmxlU3RyZWFtKSB7XG4gICAgUmVhZGFibGVTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0vd2ViJykuUmVhZGFibGVTdHJlYW1cbiAgfVxuXG4gIGNvbnN0IHN0cmVhbSA9IG5ldyBSZWFkYWJsZVN0cmVhbShcbiAgICB7XG4gICAgICBhc3luYyBzdGFydCAoY29udHJvbGxlcikge1xuICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2xsZXIgPSBjb250cm9sbGVyXG4gICAgICB9LFxuICAgICAgYXN5bmMgcHVsbCAoY29udHJvbGxlcikge1xuICAgICAgICBhd2FpdCBwdWxsQWxnb3JpdGhtKGNvbnRyb2xsZXIpXG4gICAgICB9LFxuICAgICAgYXN5bmMgY2FuY2VsIChyZWFzb24pIHtcbiAgICAgICAgYXdhaXQgY2FuY2VsQWxnb3JpdGhtKHJlYXNvbilcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIGhpZ2hXYXRlck1hcms6IDAsXG4gICAgICBzaXplICgpIHtcbiAgICAgICAgcmV0dXJuIDFcbiAgICAgIH1cbiAgICB9XG4gIClcblxuICAvLyAxNy4gUnVuIHRoZXNlIHN0ZXBzLCBidXQgYWJvcnQgd2hlbiB0aGUgb25nb2luZyBmZXRjaCBpcyB0ZXJtaW5hdGVkOlxuXG4gIC8vICAgIDEuIFNldCByZXNwb25zZVx1MjAxOXMgYm9keSB0byBhIG5ldyBib2R5IHdob3NlIHN0cmVhbSBpcyBzdHJlYW0uXG4gIHJlc3BvbnNlLmJvZHkgPSB7IHN0cmVhbSB9XG5cbiAgLy8gICAgMi4gSWYgcmVzcG9uc2UgaXMgbm90IGEgbmV0d29yayBlcnJvciBhbmQgcmVxdWVzdFx1MjAxOXMgY2FjaGUgbW9kZSBpc1xuICAvLyAgICBub3QgXCJuby1zdG9yZVwiLCB0aGVuIHVwZGF0ZSByZXNwb25zZSBpbiBodHRwQ2FjaGUgZm9yIHJlcXVlc3QuXG4gIC8vICAgIFRPRE9cblxuICAvLyAgICAzLiBJZiBpbmNsdWRlQ3JlZGVudGlhbHMgaXMgdHJ1ZSBhbmQgdGhlIHVzZXIgYWdlbnQgaXMgbm90IGNvbmZpZ3VyZWRcbiAgLy8gICAgdG8gYmxvY2sgY29va2llcyBmb3IgcmVxdWVzdCAoc2VlIHNlY3Rpb24gNyBvZiBbQ09PS0lFU10pLCB0aGVuIHJ1biB0aGVcbiAgLy8gICAgXCJzZXQtY29va2llLXN0cmluZ1wiIHBhcnNpbmcgYWxnb3JpdGhtIChzZWUgc2VjdGlvbiA1LjIgb2YgW0NPT0tJRVNdKSBvblxuICAvLyAgICB0aGUgdmFsdWUgb2YgZWFjaCBoZWFkZXIgd2hvc2UgbmFtZSBpcyBhIGJ5dGUtY2FzZS1pbnNlbnNpdGl2ZSBtYXRjaCBmb3JcbiAgLy8gICAgYFNldC1Db29raWVgIGluIHJlc3BvbnNlXHUyMDE5cyBoZWFkZXIgbGlzdCwgaWYgYW55LCBhbmQgcmVxdWVzdFx1MjAxOXMgY3VycmVudCBVUkwuXG4gIC8vICAgIFRPRE9cblxuICAvLyAxOC4gSWYgYWJvcnRlZCwgdGhlbjpcbiAgLy8gVE9ET1xuXG4gIC8vIDE5LiBSdW4gdGhlc2Ugc3RlcHMgaW4gcGFyYWxsZWw6XG5cbiAgLy8gICAgMS4gUnVuIHRoZXNlIHN0ZXBzLCBidXQgYWJvcnQgd2hlbiBmZXRjaFBhcmFtcyBpcyBjYW5jZWxlZDpcbiAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5vbigndGVybWluYXRlZCcsIG9uQWJvcnRlZClcbiAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5yZXN1bWUgPSBhc3luYyAoKSA9PiB7XG4gICAgLy8gMS4gV2hpbGUgdHJ1ZVxuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAvLyAxLTMuIFNlZSBvbkRhdGEuLi5cblxuICAgICAgLy8gNC4gU2V0IGJ5dGVzIHRvIHRoZSByZXN1bHQgb2YgaGFuZGxpbmcgY29udGVudCBjb2RpbmdzIGdpdmVuXG4gICAgICAvLyBjb2RpbmdzIGFuZCBieXRlcy5cbiAgICAgIGxldCBieXRlc1xuICAgICAgbGV0IGlzRmFpbHVyZVxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5uZXh0KClcblxuICAgICAgICBpZiAoaXNBYm9ydGVkKGZldGNoUGFyYW1zKSkge1xuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cblxuICAgICAgICBieXRlcyA9IGRvbmUgPyB1bmRlZmluZWQgOiB2YWx1ZVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGlmIChmZXRjaFBhcmFtcy5jb250cm9sbGVyLmVuZGVkICYmICF0aW1pbmdJbmZvLmVuY29kZWRCb2R5U2l6ZSkge1xuICAgICAgICAgIC8vIHpsaWIgZG9lc24ndCBsaWtlIGVtcHR5IHN0cmVhbXMuXG4gICAgICAgICAgYnl0ZXMgPSB1bmRlZmluZWRcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBieXRlcyA9IGVyclxuXG4gICAgICAgICAgLy8gZXJyIG1heSBiZSBwcm9wYWdhdGVkIGZyb20gdGhlIHJlc3VsdCBvZiBjYWxsaW5nIHJlYWRhYmxlc3RyZWFtLmNhbmNlbCxcbiAgICAgICAgICAvLyB3aGljaCBtaWdodCBub3QgYmUgYW4gZXJyb3IuIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2lzc3Vlcy8yMDA5XG4gICAgICAgICAgaXNGYWlsdXJlID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChieXRlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIDIuIE90aGVyd2lzZSwgaWYgdGhlIGJ5dGVzIHRyYW5zbWlzc2lvbiBmb3IgcmVzcG9uc2VcdTIwMTlzIG1lc3NhZ2VcbiAgICAgICAgLy8gYm9keSBpcyBkb25lIG5vcm1hbGx5IGFuZCBzdHJlYW0gaXMgcmVhZGFibGUsIHRoZW4gY2xvc2VcbiAgICAgICAgLy8gc3RyZWFtLCBmaW5hbGl6ZSByZXNwb25zZSBmb3IgZmV0Y2hQYXJhbXMgYW5kIHJlc3BvbnNlLCBhbmRcbiAgICAgICAgLy8gYWJvcnQgdGhlc2UgaW4tcGFyYWxsZWwgc3RlcHMuXG4gICAgICAgIHJlYWRhYmxlU3RyZWFtQ2xvc2UoZmV0Y2hQYXJhbXMuY29udHJvbGxlci5jb250cm9sbGVyKVxuXG4gICAgICAgIGZpbmFsaXplUmVzcG9uc2UoZmV0Y2hQYXJhbXMsIHJlc3BvbnNlKVxuXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyA1LiBJbmNyZWFzZSB0aW1pbmdJbmZvXHUyMDE5cyBkZWNvZGVkIGJvZHkgc2l6ZSBieSBieXRlc1x1MjAxOXMgbGVuZ3RoLlxuICAgICAgdGltaW5nSW5mby5kZWNvZGVkQm9keVNpemUgKz0gYnl0ZXM/LmJ5dGVMZW5ndGggPz8gMFxuXG4gICAgICAvLyA2LiBJZiBieXRlcyBpcyBmYWlsdXJlLCB0aGVuIHRlcm1pbmF0ZSBmZXRjaFBhcmFtc1x1MjAxOXMgY29udHJvbGxlci5cbiAgICAgIGlmIChpc0ZhaWx1cmUpIHtcbiAgICAgICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci50ZXJtaW5hdGUoYnl0ZXMpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyA3LiBFbnF1ZXVlIGEgVWludDhBcnJheSB3cmFwcGluZyBhbiBBcnJheUJ1ZmZlciBjb250YWluaW5nIGJ5dGVzXG4gICAgICAvLyBpbnRvIHN0cmVhbS5cbiAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29udHJvbGxlci5lbnF1ZXVlKG5ldyBVaW50OEFycmF5KGJ5dGVzKSlcblxuICAgICAgLy8gOC4gSWYgc3RyZWFtIGlzIGVycm9yZWQsIHRoZW4gdGVybWluYXRlIHRoZSBvbmdvaW5nIGZldGNoLlxuICAgICAgaWYgKGlzRXJyb3JlZChzdHJlYW0pKSB7XG4gICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIudGVybWluYXRlKClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDkuIElmIHN0cmVhbSBkb2Vzblx1MjAxOXQgbmVlZCBtb3JlIGRhdGEgYXNrIHRoZSB1c2VyIGFnZW50IHRvIHN1c3BlbmRcbiAgICAgIC8vIHRoZSBvbmdvaW5nIGZldGNoLlxuICAgICAgaWYgKCFmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2xsZXIuZGVzaXJlZFNpemUpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gICAgMi4gSWYgYWJvcnRlZCwgdGhlbjpcbiAgZnVuY3Rpb24gb25BYm9ydGVkIChyZWFzb24pIHtcbiAgICAvLyAyLiBJZiBmZXRjaFBhcmFtcyBpcyBhYm9ydGVkLCB0aGVuOlxuICAgIGlmIChpc0Fib3J0ZWQoZmV0Y2hQYXJhbXMpKSB7XG4gICAgICAvLyAxLiBTZXQgcmVzcG9uc2VcdTIwMTlzIGFib3J0ZWQgZmxhZy5cbiAgICAgIHJlc3BvbnNlLmFib3J0ZWQgPSB0cnVlXG5cbiAgICAgIC8vIDIuIElmIHN0cmVhbSBpcyByZWFkYWJsZSwgdGhlbiBlcnJvciBzdHJlYW0gd2l0aCB0aGUgcmVzdWx0IG9mXG4gICAgICAvLyAgICBkZXNlcmlhbGl6ZSBhIHNlcmlhbGl6ZWQgYWJvcnQgcmVhc29uIGdpdmVuIGZldGNoUGFyYW1zXHUyMDE5c1xuICAgICAgLy8gICAgY29udHJvbGxlclx1MjAxOXMgc2VyaWFsaXplZCBhYm9ydCByZWFzb24gYW5kIGFuXG4gICAgICAvLyAgICBpbXBsZW1lbnRhdGlvbi1kZWZpbmVkIHJlYWxtLlxuICAgICAgaWYgKGlzUmVhZGFibGUoc3RyZWFtKSkge1xuICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmNvbnRyb2xsZXIuZXJyb3IoXG4gICAgICAgICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci5zZXJpYWxpemVkQWJvcnRSZWFzb25cbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAzLiBPdGhlcndpc2UsIGlmIHN0cmVhbSBpcyByZWFkYWJsZSwgZXJyb3Igc3RyZWFtIHdpdGggYSBUeXBlRXJyb3IuXG4gICAgICBpZiAoaXNSZWFkYWJsZShzdHJlYW0pKSB7XG4gICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29udHJvbGxlci5lcnJvcihuZXcgVHlwZUVycm9yKCd0ZXJtaW5hdGVkJywge1xuICAgICAgICAgIGNhdXNlOiBpc0Vycm9yTGlrZShyZWFzb24pID8gcmVhc29uIDogdW5kZWZpbmVkXG4gICAgICAgIH0pKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDQuIElmIGNvbm5lY3Rpb24gdXNlcyBIVFRQLzIsIHRoZW4gdHJhbnNtaXQgYW4gUlNUX1NUUkVBTSBmcmFtZS5cbiAgICAvLyA1LiBPdGhlcndpc2UsIHRoZSB1c2VyIGFnZW50IHNob3VsZCBjbG9zZSBjb25uZWN0aW9uIHVubGVzcyBpdCB3b3VsZCBiZSBiYWQgZm9yIHBlcmZvcm1hbmNlIHRvIGRvIHNvLlxuICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuY29ubmVjdGlvbi5kZXN0cm95KClcbiAgfVxuXG4gIC8vIDIwLiBSZXR1cm4gcmVzcG9uc2UuXG4gIHJldHVybiByZXNwb25zZVxuXG4gIGFzeW5jIGZ1bmN0aW9uIGRpc3BhdGNoICh7IGJvZHkgfSkge1xuICAgIGNvbnN0IHVybCA9IHJlcXVlc3RDdXJyZW50VVJMKHJlcXVlc3QpXG4gICAgLyoqIEB0eXBlIHtpbXBvcnQoJy4uLy4uJykuQWdlbnR9ICovXG4gICAgY29uc3QgYWdlbnQgPSBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmRpc3BhdGNoZXJcblxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiBhZ2VudC5kaXNwYXRjaChcbiAgICAgIHtcbiAgICAgICAgcGF0aDogdXJsLnBhdGhuYW1lICsgdXJsLnNlYXJjaCxcbiAgICAgICAgb3JpZ2luOiB1cmwub3JpZ2luLFxuICAgICAgICBtZXRob2Q6IHJlcXVlc3QubWV0aG9kLFxuICAgICAgICBib2R5OiBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmRpc3BhdGNoZXIuaXNNb2NrQWN0aXZlID8gcmVxdWVzdC5ib2R5ICYmIChyZXF1ZXN0LmJvZHkuc291cmNlIHx8IHJlcXVlc3QuYm9keS5zdHJlYW0pIDogYm9keSxcbiAgICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXJzTGlzdC5lbnRyaWVzLFxuICAgICAgICBtYXhSZWRpcmVjdGlvbnM6IDAsXG4gICAgICAgIHVwZ3JhZGU6IHJlcXVlc3QubW9kZSA9PT0gJ3dlYnNvY2tldCcgPyAnd2Vic29ja2V0JyA6IHVuZGVmaW5lZFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgYm9keTogbnVsbCxcbiAgICAgICAgYWJvcnQ6IG51bGwsXG5cbiAgICAgICAgb25Db25uZWN0IChhYm9ydCkge1xuICAgICAgICAgIC8vIFRPRE8gKGZpeCk6IERvIHdlIG5lZWQgY29ubmVjdGlvbiBoZXJlP1xuICAgICAgICAgIGNvbnN0IHsgY29ubmVjdGlvbiB9ID0gZmV0Y2hQYXJhbXMuY29udHJvbGxlclxuXG4gICAgICAgICAgaWYgKGNvbm5lY3Rpb24uZGVzdHJveWVkKSB7XG4gICAgICAgICAgICBhYm9ydChuZXcgRE9NRXhjZXB0aW9uKCdUaGUgb3BlcmF0aW9uIHdhcyBhYm9ydGVkLicsICdBYm9ydEVycm9yJykpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIub24oJ3Rlcm1pbmF0ZWQnLCBhYm9ydClcbiAgICAgICAgICAgIHRoaXMuYWJvcnQgPSBjb25uZWN0aW9uLmFib3J0ID0gYWJvcnRcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG5cbiAgICAgICAgb25IZWFkZXJzIChzdGF0dXMsIGhlYWRlcnNMaXN0LCByZXN1bWUsIHN0YXR1c1RleHQpIHtcbiAgICAgICAgICBpZiAoc3RhdHVzIDwgMjAwKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsZXQgY29kaW5ncyA9IFtdXG4gICAgICAgICAgbGV0IGxvY2F0aW9uID0gJydcblxuICAgICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSGVhZGVycygpXG5cbiAgICAgICAgICAvLyBGb3IgSDIsIHRoZSBoZWFkZXJzIGFyZSBhIHBsYWluIEpTIG9iamVjdFxuICAgICAgICAgIC8vIFdlIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlbSBhbmQgaXRlcmF0ZSBhY2NvcmRpbmdseVxuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGhlYWRlcnNMaXN0KSkge1xuICAgICAgICAgICAgZm9yIChsZXQgbiA9IDA7IG4gPCBoZWFkZXJzTGlzdC5sZW5ndGg7IG4gKz0gMikge1xuICAgICAgICAgICAgICBjb25zdCBrZXkgPSBoZWFkZXJzTGlzdFtuICsgMF0udG9TdHJpbmcoJ2xhdGluMScpXG4gICAgICAgICAgICAgIGNvbnN0IHZhbCA9IGhlYWRlcnNMaXN0W24gKyAxXS50b1N0cmluZygnbGF0aW4xJylcbiAgICAgICAgICAgICAgaWYgKGtleS50b0xvd2VyQ2FzZSgpID09PSAnY29udGVudC1lbmNvZGluZycpIHtcbiAgICAgICAgICAgICAgICAvLyBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNzIzMSNzZWN0aW9uLTMuMS4yLjFcbiAgICAgICAgICAgICAgICAvLyBcIkFsbCBjb250ZW50LWNvZGluZyB2YWx1ZXMgYXJlIGNhc2UtaW5zZW5zaXRpdmUuLi5cIlxuICAgICAgICAgICAgICAgIGNvZGluZ3MgPSB2YWwudG9Mb3dlckNhc2UoKS5zcGxpdCgnLCcpLm1hcCgoeCkgPT4geC50cmltKCkpXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoa2V5LnRvTG93ZXJDYXNlKCkgPT09ICdsb2NhdGlvbicpIHtcbiAgICAgICAgICAgICAgICBsb2NhdGlvbiA9IHZhbFxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaGVhZGVyc1trSGVhZGVyc0xpc3RdLmFwcGVuZChrZXksIHZhbClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGhlYWRlcnNMaXN0KVxuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgICAgICAgICBjb25zdCB2YWwgPSBoZWFkZXJzTGlzdFtrZXldXG4gICAgICAgICAgICAgIGlmIChrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2NvbnRlbnQtZW5jb2RpbmcnKSB7XG4gICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly93d3cucmZjLWVkaXRvci5vcmcvcmZjL3JmYzcyMzEjc2VjdGlvbi0zLjEuMi4xXG4gICAgICAgICAgICAgICAgLy8gXCJBbGwgY29udGVudC1jb2RpbmcgdmFsdWVzIGFyZSBjYXNlLWluc2Vuc2l0aXZlLi4uXCJcbiAgICAgICAgICAgICAgICBjb2RpbmdzID0gdmFsLnRvTG93ZXJDYXNlKCkuc3BsaXQoJywnKS5tYXAoKHgpID0+IHgudHJpbSgpKS5yZXZlcnNlKClcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkudG9Mb3dlckNhc2UoKSA9PT0gJ2xvY2F0aW9uJykge1xuICAgICAgICAgICAgICAgIGxvY2F0aW9uID0gdmFsXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBoZWFkZXJzW2tIZWFkZXJzTGlzdF0uYXBwZW5kKGtleSwgdmFsKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuYm9keSA9IG5ldyBSZWFkYWJsZSh7IHJlYWQ6IHJlc3VtZSB9KVxuXG4gICAgICAgICAgY29uc3QgZGVjb2RlcnMgPSBbXVxuXG4gICAgICAgICAgY29uc3Qgd2lsbEZvbGxvdyA9IHJlcXVlc3QucmVkaXJlY3QgPT09ICdmb2xsb3cnICYmXG4gICAgICAgICAgICBsb2NhdGlvbiAmJlxuICAgICAgICAgICAgcmVkaXJlY3RTdGF0dXNTZXQuaGFzKHN0YXR1cylcblxuICAgICAgICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvSGVhZGVycy9Db250ZW50LUVuY29kaW5nXG4gICAgICAgICAgaWYgKHJlcXVlc3QubWV0aG9kICE9PSAnSEVBRCcgJiYgcmVxdWVzdC5tZXRob2QgIT09ICdDT05ORUNUJyAmJiAhbnVsbEJvZHlTdGF0dXMuaW5jbHVkZXMoc3RhdHVzKSAmJiAhd2lsbEZvbGxvdykge1xuICAgICAgICAgICAgZm9yIChjb25zdCBjb2Rpbmcgb2YgY29kaW5ncykge1xuICAgICAgICAgICAgICAvLyBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjOTExMi5odG1sI3NlY3Rpb24tNy4yXG4gICAgICAgICAgICAgIGlmIChjb2RpbmcgPT09ICd4LWd6aXAnIHx8IGNvZGluZyA9PT0gJ2d6aXAnKSB7XG4gICAgICAgICAgICAgICAgZGVjb2RlcnMucHVzaCh6bGliLmNyZWF0ZUd1bnppcCh7XG4gICAgICAgICAgICAgICAgICAvLyBCZSBsZXNzIHN0cmljdCB3aGVuIGRlY29kaW5nIGNvbXByZXNzZWQgcmVzcG9uc2VzLCBzaW5jZSBzb21ldGltZXNcbiAgICAgICAgICAgICAgICAgIC8vIHNlcnZlcnMgc2VuZCBzbGlnaHRseSBpbnZhbGlkIHJlc3BvbnNlcyB0aGF0IGFyZSBzdGlsbCBhY2NlcHRlZFxuICAgICAgICAgICAgICAgICAgLy8gYnkgY29tbW9uIGJyb3dzZXJzLlxuICAgICAgICAgICAgICAgICAgLy8gQWx3YXlzIHVzaW5nIFpfU1lOQ19GTFVTSCBpcyB3aGF0IGNVUkwgZG9lcy5cbiAgICAgICAgICAgICAgICAgIGZsdXNoOiB6bGliLmNvbnN0YW50cy5aX1NZTkNfRkxVU0gsXG4gICAgICAgICAgICAgICAgICBmaW5pc2hGbHVzaDogemxpYi5jb25zdGFudHMuWl9TWU5DX0ZMVVNIXG4gICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoY29kaW5nID09PSAnZGVmbGF0ZScpIHtcbiAgICAgICAgICAgICAgICBkZWNvZGVycy5wdXNoKHpsaWIuY3JlYXRlSW5mbGF0ZSgpKVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNvZGluZyA9PT0gJ2JyJykge1xuICAgICAgICAgICAgICAgIGRlY29kZXJzLnB1c2goemxpYi5jcmVhdGVCcm90bGlEZWNvbXByZXNzKCkpXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZGVjb2RlcnMubGVuZ3RoID0gMFxuICAgICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICAgIHN0YXR1cyxcbiAgICAgICAgICAgIHN0YXR1c1RleHQsXG4gICAgICAgICAgICBoZWFkZXJzTGlzdDogaGVhZGVyc1trSGVhZGVyc0xpc3RdLFxuICAgICAgICAgICAgYm9keTogZGVjb2RlcnMubGVuZ3RoXG4gICAgICAgICAgICAgID8gcGlwZWxpbmUodGhpcy5ib2R5LCAuLi5kZWNvZGVycywgKCkgPT4geyB9KVxuICAgICAgICAgICAgICA6IHRoaXMuYm9keS5vbignZXJyb3InLCAoKSA9PiB7fSlcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgfSxcblxuICAgICAgICBvbkRhdGEgKGNodW5rKSB7XG4gICAgICAgICAgaWYgKGZldGNoUGFyYW1zLmNvbnRyb2xsZXIuZHVtcCkge1xuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gMS4gSWYgb25lIG9yIG1vcmUgYnl0ZXMgaGF2ZSBiZWVuIHRyYW5zbWl0dGVkIGZyb20gcmVzcG9uc2VcdTIwMTlzXG4gICAgICAgICAgLy8gbWVzc2FnZSBib2R5LCB0aGVuOlxuXG4gICAgICAgICAgLy8gIDEuIExldCBieXRlcyBiZSB0aGUgdHJhbnNtaXR0ZWQgYnl0ZXMuXG4gICAgICAgICAgY29uc3QgYnl0ZXMgPSBjaHVua1xuXG4gICAgICAgICAgLy8gIDIuIExldCBjb2RpbmdzIGJlIHRoZSByZXN1bHQgb2YgZXh0cmFjdGluZyBoZWFkZXIgbGlzdCB2YWx1ZXNcbiAgICAgICAgICAvLyAgZ2l2ZW4gYENvbnRlbnQtRW5jb2RpbmdgIGFuZCByZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gICAgICAgICAgLy8gIFNlZSBwdWxsQWxnb3JpdGhtLlxuXG4gICAgICAgICAgLy8gIDMuIEluY3JlYXNlIHRpbWluZ0luZm9cdTIwMTlzIGVuY29kZWQgYm9keSBzaXplIGJ5IGJ5dGVzXHUyMDE5cyBsZW5ndGguXG4gICAgICAgICAgdGltaW5nSW5mby5lbmNvZGVkQm9keVNpemUgKz0gYnl0ZXMuYnl0ZUxlbmd0aFxuXG4gICAgICAgICAgLy8gIDQuIFNlZSBwdWxsQWxnb3JpdGhtLi4uXG5cbiAgICAgICAgICByZXR1cm4gdGhpcy5ib2R5LnB1c2goYnl0ZXMpXG4gICAgICAgIH0sXG5cbiAgICAgICAgb25Db21wbGV0ZSAoKSB7XG4gICAgICAgICAgaWYgKHRoaXMuYWJvcnQpIHtcbiAgICAgICAgICAgIGZldGNoUGFyYW1zLmNvbnRyb2xsZXIub2ZmKCd0ZXJtaW5hdGVkJywgdGhpcy5hYm9ydClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLmVuZGVkID0gdHJ1ZVxuXG4gICAgICAgICAgdGhpcy5ib2R5LnB1c2gobnVsbClcbiAgICAgICAgfSxcblxuICAgICAgICBvbkVycm9yIChlcnJvcikge1xuICAgICAgICAgIGlmICh0aGlzLmFib3J0KSB7XG4gICAgICAgICAgICBmZXRjaFBhcmFtcy5jb250cm9sbGVyLm9mZigndGVybWluYXRlZCcsIHRoaXMuYWJvcnQpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5ib2R5Py5kZXN0cm95KGVycm9yKVxuXG4gICAgICAgICAgZmV0Y2hQYXJhbXMuY29udHJvbGxlci50ZXJtaW5hdGUoZXJyb3IpXG5cbiAgICAgICAgICByZWplY3QoZXJyb3IpXG4gICAgICAgIH0sXG5cbiAgICAgICAgb25VcGdyYWRlIChzdGF0dXMsIGhlYWRlcnNMaXN0LCBzb2NrZXQpIHtcbiAgICAgICAgICBpZiAoc3RhdHVzICE9PSAxMDEpIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSGVhZGVycygpXG5cbiAgICAgICAgICBmb3IgKGxldCBuID0gMDsgbiA8IGhlYWRlcnNMaXN0Lmxlbmd0aDsgbiArPSAyKSB7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBoZWFkZXJzTGlzdFtuICsgMF0udG9TdHJpbmcoJ2xhdGluMScpXG4gICAgICAgICAgICBjb25zdCB2YWwgPSBoZWFkZXJzTGlzdFtuICsgMV0udG9TdHJpbmcoJ2xhdGluMScpXG5cbiAgICAgICAgICAgIGhlYWRlcnNba0hlYWRlcnNMaXN0XS5hcHBlbmQoa2V5LCB2YWwpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgICBzdGF0dXMsXG4gICAgICAgICAgICBzdGF0dXNUZXh0OiBTVEFUVVNfQ09ERVNbc3RhdHVzXSxcbiAgICAgICAgICAgIGhlYWRlcnNMaXN0OiBoZWFkZXJzW2tIZWFkZXJzTGlzdF0sXG4gICAgICAgICAgICBzb2NrZXRcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuICAgICkpXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGZldGNoLFxuICBGZXRjaCxcbiAgZmV0Y2hpbmcsXG4gIGZpbmFsaXplQW5kUmVwb3J0VGltaW5nXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrU3RhdGU6IFN5bWJvbCgnRmlsZVJlYWRlciBzdGF0ZScpLFxuICBrUmVzdWx0OiBTeW1ib2woJ0ZpbGVSZWFkZXIgcmVzdWx0JyksXG4gIGtFcnJvcjogU3ltYm9sKCdGaWxlUmVhZGVyIGVycm9yJyksXG4gIGtMYXN0UHJvZ3Jlc3NFdmVudEZpcmVkOiBTeW1ib2woJ0ZpbGVSZWFkZXIgbGFzdCBwcm9ncmVzcyBldmVudCBmaXJlZCB0aW1lc3RhbXAnKSxcbiAga0V2ZW50czogU3ltYm9sKCdGaWxlUmVhZGVyIGV2ZW50cycpLFxuICBrQWJvcnRlZDogU3ltYm9sKCdGaWxlUmVhZGVyIGFib3J0ZWQnKVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcblxuY29uc3Qga1N0YXRlID0gU3ltYm9sKCdQcm9ncmVzc0V2ZW50IHN0YXRlJylcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8veGhyLnNwZWMud2hhdHdnLm9yZy8jcHJvZ3Jlc3NldmVudFxuICovXG5jbGFzcyBQcm9ncmVzc0V2ZW50IGV4dGVuZHMgRXZlbnQge1xuICBjb25zdHJ1Y3RvciAodHlwZSwgZXZlbnRJbml0RGljdCA9IHt9KSB7XG4gICAgdHlwZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyh0eXBlKVxuICAgIGV2ZW50SW5pdERpY3QgPSB3ZWJpZGwuY29udmVydGVycy5Qcm9ncmVzc0V2ZW50SW5pdChldmVudEluaXREaWN0ID8/IHt9KVxuXG4gICAgc3VwZXIodHlwZSwgZXZlbnRJbml0RGljdClcblxuICAgIHRoaXNba1N0YXRlXSA9IHtcbiAgICAgIGxlbmd0aENvbXB1dGFibGU6IGV2ZW50SW5pdERpY3QubGVuZ3RoQ29tcHV0YWJsZSxcbiAgICAgIGxvYWRlZDogZXZlbnRJbml0RGljdC5sb2FkZWQsXG4gICAgICB0b3RhbDogZXZlbnRJbml0RGljdC50b3RhbFxuICAgIH1cbiAgfVxuXG4gIGdldCBsZW5ndGhDb21wdXRhYmxlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBQcm9ncmVzc0V2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5sZW5ndGhDb21wdXRhYmxlXG4gIH1cblxuICBnZXQgbG9hZGVkICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBQcm9ncmVzc0V2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXNba1N0YXRlXS5sb2FkZWRcbiAgfVxuXG4gIGdldCB0b3RhbCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgUHJvZ3Jlc3NFdmVudClcblxuICAgIHJldHVybiB0aGlzW2tTdGF0ZV0udG90YWxcbiAgfVxufVxuXG53ZWJpZGwuY29udmVydGVycy5Qcm9ncmVzc0V2ZW50SW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAge1xuICAgIGtleTogJ2xlbmd0aENvbXB1dGFibGUnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYm9vbGVhbixcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdsb2FkZWQnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ3Vuc2lnbmVkIGxvbmcgbG9uZyddLFxuICAgIGRlZmF1bHRWYWx1ZTogMFxuICB9LFxuICB7XG4gICAga2V5OiAndG90YWwnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ3Vuc2lnbmVkIGxvbmcgbG9uZyddLFxuICAgIGRlZmF1bHRWYWx1ZTogMFxuICB9LFxuICB7XG4gICAga2V5OiAnYnViYmxlcycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfSxcbiAge1xuICAgIGtleTogJ2NhbmNlbGFibGUnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYm9vbGVhbixcbiAgICBkZWZhdWx0VmFsdWU6IGZhbHNlXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdjb21wb3NlZCcsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIFByb2dyZXNzRXZlbnRcbn1cbiIsICIndXNlIHN0cmljdCdcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLyNjb25jZXB0LWVuY29kaW5nLWdldFxuICogQHBhcmFtIHtzdHJpbmd8dW5kZWZpbmVkfSBsYWJlbFxuICovXG5mdW5jdGlvbiBnZXRFbmNvZGluZyAobGFiZWwpIHtcbiAgaWYgKCFsYWJlbCkge1xuICAgIHJldHVybiAnZmFpbHVyZSdcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSBhbnkgbGVhZGluZyBhbmQgdHJhaWxpbmcgQVNDSUkgd2hpdGVzcGFjZSBmcm9tIGxhYmVsLlxuICAvLyAyLiBJZiBsYWJlbCBpcyBhbiBBU0NJSSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvciBhbnkgb2YgdGhlXG4gIC8vICAgIGxhYmVscyBsaXN0ZWQgaW4gdGhlIHRhYmxlIGJlbG93LCB0aGVuIHJldHVybiB0aGVcbiAgLy8gICAgY29ycmVzcG9uZGluZyBlbmNvZGluZzsgb3RoZXJ3aXNlIHJldHVybiBmYWlsdXJlLlxuICBzd2l0Y2ggKGxhYmVsLnRyaW0oKS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgY2FzZSAndW5pY29kZS0xLTEtdXRmLTgnOlxuICAgIGNhc2UgJ3VuaWNvZGUxMXV0ZjgnOlxuICAgIGNhc2UgJ3VuaWNvZGUyMHV0ZjgnOlxuICAgIGNhc2UgJ3V0Zi04JzpcbiAgICBjYXNlICd1dGY4JzpcbiAgICBjYXNlICd4LXVuaWNvZGUyMHV0ZjgnOlxuICAgICAgcmV0dXJuICdVVEYtOCdcbiAgICBjYXNlICc4NjYnOlxuICAgIGNhc2UgJ2NwODY2JzpcbiAgICBjYXNlICdjc2libTg2Nic6XG4gICAgY2FzZSAnaWJtODY2JzpcbiAgICAgIHJldHVybiAnSUJNODY2J1xuICAgIGNhc2UgJ2NzaXNvbGF0aW4yJzpcbiAgICBjYXNlICdpc28tODg1OS0yJzpcbiAgICBjYXNlICdpc28taXItMTAxJzpcbiAgICBjYXNlICdpc284ODU5LTInOlxuICAgIGNhc2UgJ2lzbzg4NTkyJzpcbiAgICBjYXNlICdpc29fODg1OS0yJzpcbiAgICBjYXNlICdpc29fODg1OS0yOjE5ODcnOlxuICAgIGNhc2UgJ2wyJzpcbiAgICBjYXNlICdsYXRpbjInOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0yJ1xuICAgIGNhc2UgJ2NzaXNvbGF0aW4zJzpcbiAgICBjYXNlICdpc28tODg1OS0zJzpcbiAgICBjYXNlICdpc28taXItMTA5JzpcbiAgICBjYXNlICdpc284ODU5LTMnOlxuICAgIGNhc2UgJ2lzbzg4NTkzJzpcbiAgICBjYXNlICdpc29fODg1OS0zJzpcbiAgICBjYXNlICdpc29fODg1OS0zOjE5ODgnOlxuICAgIGNhc2UgJ2wzJzpcbiAgICBjYXNlICdsYXRpbjMnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0zJ1xuICAgIGNhc2UgJ2NzaXNvbGF0aW40JzpcbiAgICBjYXNlICdpc28tODg1OS00JzpcbiAgICBjYXNlICdpc28taXItMTEwJzpcbiAgICBjYXNlICdpc284ODU5LTQnOlxuICAgIGNhc2UgJ2lzbzg4NTk0JzpcbiAgICBjYXNlICdpc29fODg1OS00JzpcbiAgICBjYXNlICdpc29fODg1OS00OjE5ODgnOlxuICAgIGNhc2UgJ2w0JzpcbiAgICBjYXNlICdsYXRpbjQnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS00J1xuICAgIGNhc2UgJ2NzaXNvbGF0aW5jeXJpbGxpYyc6XG4gICAgY2FzZSAnY3lyaWxsaWMnOlxuICAgIGNhc2UgJ2lzby04ODU5LTUnOlxuICAgIGNhc2UgJ2lzby1pci0xNDQnOlxuICAgIGNhc2UgJ2lzbzg4NTktNSc6XG4gICAgY2FzZSAnaXNvODg1OTUnOlxuICAgIGNhc2UgJ2lzb184ODU5LTUnOlxuICAgIGNhc2UgJ2lzb184ODU5LTU6MTk4OCc6XG4gICAgICByZXR1cm4gJ0lTTy04ODU5LTUnXG4gICAgY2FzZSAnYXJhYmljJzpcbiAgICBjYXNlICdhc21vLTcwOCc6XG4gICAgY2FzZSAnY3Npc284ODU5NmUnOlxuICAgIGNhc2UgJ2NzaXNvODg1OTZpJzpcbiAgICBjYXNlICdjc2lzb2xhdGluYXJhYmljJzpcbiAgICBjYXNlICdlY21hLTExNCc6XG4gICAgY2FzZSAnaXNvLTg4NTktNic6XG4gICAgY2FzZSAnaXNvLTg4NTktNi1lJzpcbiAgICBjYXNlICdpc28tODg1OS02LWknOlxuICAgIGNhc2UgJ2lzby1pci0xMjcnOlxuICAgIGNhc2UgJ2lzbzg4NTktNic6XG4gICAgY2FzZSAnaXNvODg1OTYnOlxuICAgIGNhc2UgJ2lzb184ODU5LTYnOlxuICAgIGNhc2UgJ2lzb184ODU5LTY6MTk4Nyc6XG4gICAgICByZXR1cm4gJ0lTTy04ODU5LTYnXG4gICAgY2FzZSAnY3Npc29sYXRpbmdyZWVrJzpcbiAgICBjYXNlICdlY21hLTExOCc6XG4gICAgY2FzZSAnZWxvdF85MjgnOlxuICAgIGNhc2UgJ2dyZWVrJzpcbiAgICBjYXNlICdncmVlazgnOlxuICAgIGNhc2UgJ2lzby04ODU5LTcnOlxuICAgIGNhc2UgJ2lzby1pci0xMjYnOlxuICAgIGNhc2UgJ2lzbzg4NTktNyc6XG4gICAgY2FzZSAnaXNvODg1OTcnOlxuICAgIGNhc2UgJ2lzb184ODU5LTcnOlxuICAgIGNhc2UgJ2lzb184ODU5LTc6MTk4Nyc6XG4gICAgY2FzZSAnc3VuX2V1X2dyZWVrJzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktNydcbiAgICBjYXNlICdjc2lzbzg4NTk4ZSc6XG4gICAgY2FzZSAnY3Npc29sYXRpbmhlYnJldyc6XG4gICAgY2FzZSAnaGVicmV3JzpcbiAgICBjYXNlICdpc28tODg1OS04JzpcbiAgICBjYXNlICdpc28tODg1OS04LWUnOlxuICAgIGNhc2UgJ2lzby1pci0xMzgnOlxuICAgIGNhc2UgJ2lzbzg4NTktOCc6XG4gICAgY2FzZSAnaXNvODg1OTgnOlxuICAgIGNhc2UgJ2lzb184ODU5LTgnOlxuICAgIGNhc2UgJ2lzb184ODU5LTg6MTk4OCc6XG4gICAgY2FzZSAndmlzdWFsJzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktOCdcbiAgICBjYXNlICdjc2lzbzg4NTk4aSc6XG4gICAgY2FzZSAnaXNvLTg4NTktOC1pJzpcbiAgICBjYXNlICdsb2dpY2FsJzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktOC1JJ1xuICAgIGNhc2UgJ2NzaXNvbGF0aW42JzpcbiAgICBjYXNlICdpc28tODg1OS0xMCc6XG4gICAgY2FzZSAnaXNvLWlyLTE1Nyc6XG4gICAgY2FzZSAnaXNvODg1OS0xMCc6XG4gICAgY2FzZSAnaXNvODg1OTEwJzpcbiAgICBjYXNlICdsNic6XG4gICAgY2FzZSAnbGF0aW42JzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktMTAnXG4gICAgY2FzZSAnaXNvLTg4NTktMTMnOlxuICAgIGNhc2UgJ2lzbzg4NTktMTMnOlxuICAgIGNhc2UgJ2lzbzg4NTkxMyc6XG4gICAgICByZXR1cm4gJ0lTTy04ODU5LTEzJ1xuICAgIGNhc2UgJ2lzby04ODU5LTE0JzpcbiAgICBjYXNlICdpc284ODU5LTE0JzpcbiAgICBjYXNlICdpc284ODU5MTQnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0xNCdcbiAgICBjYXNlICdjc2lzb2xhdGluOSc6XG4gICAgY2FzZSAnaXNvLTg4NTktMTUnOlxuICAgIGNhc2UgJ2lzbzg4NTktMTUnOlxuICAgIGNhc2UgJ2lzbzg4NTkxNSc6XG4gICAgY2FzZSAnaXNvXzg4NTktMTUnOlxuICAgIGNhc2UgJ2w5JzpcbiAgICAgIHJldHVybiAnSVNPLTg4NTktMTUnXG4gICAgY2FzZSAnaXNvLTg4NTktMTYnOlxuICAgICAgcmV0dXJuICdJU08tODg1OS0xNidcbiAgICBjYXNlICdjc2tvaThyJzpcbiAgICBjYXNlICdrb2knOlxuICAgIGNhc2UgJ2tvaTgnOlxuICAgIGNhc2UgJ2tvaTgtcic6XG4gICAgY2FzZSAna29pOF9yJzpcbiAgICAgIHJldHVybiAnS09JOC1SJ1xuICAgIGNhc2UgJ2tvaTgtcnUnOlxuICAgIGNhc2UgJ2tvaTgtdSc6XG4gICAgICByZXR1cm4gJ0tPSTgtVSdcbiAgICBjYXNlICdjc21hY2ludG9zaCc6XG4gICAgY2FzZSAnbWFjJzpcbiAgICBjYXNlICdtYWNpbnRvc2gnOlxuICAgIGNhc2UgJ3gtbWFjLXJvbWFuJzpcbiAgICAgIHJldHVybiAnbWFjaW50b3NoJ1xuICAgIGNhc2UgJ2lzby04ODU5LTExJzpcbiAgICBjYXNlICdpc284ODU5LTExJzpcbiAgICBjYXNlICdpc284ODU5MTEnOlxuICAgIGNhc2UgJ3Rpcy02MjAnOlxuICAgIGNhc2UgJ3dpbmRvd3MtODc0JzpcbiAgICAgIHJldHVybiAnd2luZG93cy04NzQnXG4gICAgY2FzZSAnY3AxMjUwJzpcbiAgICBjYXNlICd3aW5kb3dzLTEyNTAnOlxuICAgIGNhc2UgJ3gtY3AxMjUwJzpcbiAgICAgIHJldHVybiAnd2luZG93cy0xMjUwJ1xuICAgIGNhc2UgJ2NwMTI1MSc6XG4gICAgY2FzZSAnd2luZG93cy0xMjUxJzpcbiAgICBjYXNlICd4LWNwMTI1MSc6XG4gICAgICByZXR1cm4gJ3dpbmRvd3MtMTI1MSdcbiAgICBjYXNlICdhbnNpX3gzLjQtMTk2OCc6XG4gICAgY2FzZSAnYXNjaWknOlxuICAgIGNhc2UgJ2NwMTI1Mic6XG4gICAgY2FzZSAnY3A4MTknOlxuICAgIGNhc2UgJ2NzaXNvbGF0aW4xJzpcbiAgICBjYXNlICdpYm04MTknOlxuICAgIGNhc2UgJ2lzby04ODU5LTEnOlxuICAgIGNhc2UgJ2lzby1pci0xMDAnOlxuICAgIGNhc2UgJ2lzbzg4NTktMSc6XG4gICAgY2FzZSAnaXNvODg1OTEnOlxuICAgIGNhc2UgJ2lzb184ODU5LTEnOlxuICAgIGNhc2UgJ2lzb184ODU5LTE6MTk4Nyc6XG4gICAgY2FzZSAnbDEnOlxuICAgIGNhc2UgJ2xhdGluMSc6XG4gICAgY2FzZSAndXMtYXNjaWknOlxuICAgIGNhc2UgJ3dpbmRvd3MtMTI1Mic6XG4gICAgY2FzZSAneC1jcDEyNTInOlxuICAgICAgcmV0dXJuICd3aW5kb3dzLTEyNTInXG4gICAgY2FzZSAnY3AxMjUzJzpcbiAgICBjYXNlICd3aW5kb3dzLTEyNTMnOlxuICAgIGNhc2UgJ3gtY3AxMjUzJzpcbiAgICAgIHJldHVybiAnd2luZG93cy0xMjUzJ1xuICAgIGNhc2UgJ2NwMTI1NCc6XG4gICAgY2FzZSAnY3Npc29sYXRpbjUnOlxuICAgIGNhc2UgJ2lzby04ODU5LTknOlxuICAgIGNhc2UgJ2lzby1pci0xNDgnOlxuICAgIGNhc2UgJ2lzbzg4NTktOSc6XG4gICAgY2FzZSAnaXNvODg1OTknOlxuICAgIGNhc2UgJ2lzb184ODU5LTknOlxuICAgIGNhc2UgJ2lzb184ODU5LTk6MTk4OSc6XG4gICAgY2FzZSAnbDUnOlxuICAgIGNhc2UgJ2xhdGluNSc6XG4gICAgY2FzZSAnd2luZG93cy0xMjU0JzpcbiAgICBjYXNlICd4LWNwMTI1NCc6XG4gICAgICByZXR1cm4gJ3dpbmRvd3MtMTI1NCdcbiAgICBjYXNlICdjcDEyNTUnOlxuICAgIGNhc2UgJ3dpbmRvd3MtMTI1NSc6XG4gICAgY2FzZSAneC1jcDEyNTUnOlxuICAgICAgcmV0dXJuICd3aW5kb3dzLTEyNTUnXG4gICAgY2FzZSAnY3AxMjU2JzpcbiAgICBjYXNlICd3aW5kb3dzLTEyNTYnOlxuICAgIGNhc2UgJ3gtY3AxMjU2JzpcbiAgICAgIHJldHVybiAnd2luZG93cy0xMjU2J1xuICAgIGNhc2UgJ2NwMTI1Nyc6XG4gICAgY2FzZSAnd2luZG93cy0xMjU3JzpcbiAgICBjYXNlICd4LWNwMTI1Nyc6XG4gICAgICByZXR1cm4gJ3dpbmRvd3MtMTI1NydcbiAgICBjYXNlICdjcDEyNTgnOlxuICAgIGNhc2UgJ3dpbmRvd3MtMTI1OCc6XG4gICAgY2FzZSAneC1jcDEyNTgnOlxuICAgICAgcmV0dXJuICd3aW5kb3dzLTEyNTgnXG4gICAgY2FzZSAneC1tYWMtY3lyaWxsaWMnOlxuICAgIGNhc2UgJ3gtbWFjLXVrcmFpbmlhbic6XG4gICAgICByZXR1cm4gJ3gtbWFjLWN5cmlsbGljJ1xuICAgIGNhc2UgJ2NoaW5lc2UnOlxuICAgIGNhc2UgJ2NzZ2IyMzEyJzpcbiAgICBjYXNlICdjc2lzbzU4Z2IyMzEyODAnOlxuICAgIGNhc2UgJ2diMjMxMic6XG4gICAgY2FzZSAnZ2JfMjMxMic6XG4gICAgY2FzZSAnZ2JfMjMxMi04MCc6XG4gICAgY2FzZSAnZ2JrJzpcbiAgICBjYXNlICdpc28taXItNTgnOlxuICAgIGNhc2UgJ3gtZ2JrJzpcbiAgICAgIHJldHVybiAnR0JLJ1xuICAgIGNhc2UgJ2diMTgwMzAnOlxuICAgICAgcmV0dXJuICdnYjE4MDMwJ1xuICAgIGNhc2UgJ2JpZzUnOlxuICAgIGNhc2UgJ2JpZzUtaGtzY3MnOlxuICAgIGNhc2UgJ2NuLWJpZzUnOlxuICAgIGNhc2UgJ2NzYmlnNSc6XG4gICAgY2FzZSAneC14LWJpZzUnOlxuICAgICAgcmV0dXJuICdCaWc1J1xuICAgIGNhc2UgJ2NzZXVjcGtkZm10amFwYW5lc2UnOlxuICAgIGNhc2UgJ2V1Yy1qcCc6XG4gICAgY2FzZSAneC1ldWMtanAnOlxuICAgICAgcmV0dXJuICdFVUMtSlAnXG4gICAgY2FzZSAnY3Npc28yMDIyanAnOlxuICAgIGNhc2UgJ2lzby0yMDIyLWpwJzpcbiAgICAgIHJldHVybiAnSVNPLTIwMjItSlAnXG4gICAgY2FzZSAnY3NzaGlmdGppcyc6XG4gICAgY2FzZSAnbXM5MzInOlxuICAgIGNhc2UgJ21zX2thbmppJzpcbiAgICBjYXNlICdzaGlmdC1qaXMnOlxuICAgIGNhc2UgJ3NoaWZ0X2ppcyc6XG4gICAgY2FzZSAnc2ppcyc6XG4gICAgY2FzZSAnd2luZG93cy0zMWonOlxuICAgIGNhc2UgJ3gtc2ppcyc6XG4gICAgICByZXR1cm4gJ1NoaWZ0X0pJUydcbiAgICBjYXNlICdjc2V1Y2tyJzpcbiAgICBjYXNlICdjc2tzYzU2MDExOTg3JzpcbiAgICBjYXNlICdldWMta3InOlxuICAgIGNhc2UgJ2lzby1pci0xNDknOlxuICAgIGNhc2UgJ2tvcmVhbic6XG4gICAgY2FzZSAna3NfY181NjAxLTE5ODcnOlxuICAgIGNhc2UgJ2tzX2NfNTYwMS0xOTg5JzpcbiAgICBjYXNlICdrc2M1NjAxJzpcbiAgICBjYXNlICdrc2NfNTYwMSc6XG4gICAgY2FzZSAnd2luZG93cy05NDknOlxuICAgICAgcmV0dXJuICdFVUMtS1InXG4gICAgY2FzZSAnY3Npc28yMDIya3InOlxuICAgIGNhc2UgJ2h6LWdiLTIzMTInOlxuICAgIGNhc2UgJ2lzby0yMDIyLWNuJzpcbiAgICBjYXNlICdpc28tMjAyMi1jbi1leHQnOlxuICAgIGNhc2UgJ2lzby0yMDIyLWtyJzpcbiAgICBjYXNlICdyZXBsYWNlbWVudCc6XG4gICAgICByZXR1cm4gJ3JlcGxhY2VtZW50J1xuICAgIGNhc2UgJ3VuaWNvZGVmZmZlJzpcbiAgICBjYXNlICd1dGYtMTZiZSc6XG4gICAgICByZXR1cm4gJ1VURi0xNkJFJ1xuICAgIGNhc2UgJ2NzdW5pY29kZSc6XG4gICAgY2FzZSAnaXNvLTEwNjQ2LXVjcy0yJzpcbiAgICBjYXNlICd1Y3MtMic6XG4gICAgY2FzZSAndW5pY29kZSc6XG4gICAgY2FzZSAndW5pY29kZWZlZmYnOlxuICAgIGNhc2UgJ3V0Zi0xNic6XG4gICAgY2FzZSAndXRmLTE2bGUnOlxuICAgICAgcmV0dXJuICdVVEYtMTZMRSdcbiAgICBjYXNlICd4LXVzZXItZGVmaW5lZCc6XG4gICAgICByZXR1cm4gJ3gtdXNlci1kZWZpbmVkJ1xuICAgIGRlZmF1bHQ6IHJldHVybiAnZmFpbHVyZSdcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgZ2V0RW5jb2Rpbmdcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3Qge1xuICBrU3RhdGUsXG4gIGtFcnJvcixcbiAga1Jlc3VsdCxcbiAga0Fib3J0ZWQsXG4gIGtMYXN0UHJvZ3Jlc3NFdmVudEZpcmVkXG59ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgUHJvZ3Jlc3NFdmVudCB9ID0gcmVxdWlyZSgnLi9wcm9ncmVzc2V2ZW50JylcbmNvbnN0IHsgZ2V0RW5jb2RpbmcgfSA9IHJlcXVpcmUoJy4vZW5jb2RpbmcnKVxuY29uc3QgeyBET01FeGNlcHRpb24gfSA9IHJlcXVpcmUoJy4uL2ZldGNoL2NvbnN0YW50cycpXG5jb25zdCB7IHNlcmlhbGl6ZUFNaW1lVHlwZSwgcGFyc2VNSU1FVHlwZSB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvZGF0YVVSTCcpXG5jb25zdCB7IHR5cGVzIH0gPSByZXF1aXJlKCd1dGlsJylcbmNvbnN0IHsgU3RyaW5nRGVjb2RlciB9ID0gcmVxdWlyZSgnc3RyaW5nX2RlY29kZXInKVxuY29uc3QgeyBidG9hIH0gPSByZXF1aXJlKCdidWZmZXInKVxuXG4vKiogQHR5cGUge1Byb3BlcnR5RGVzY3JpcHRvcn0gKi9cbmNvbnN0IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMgPSB7XG4gIGVudW1lcmFibGU6IHRydWUsXG4gIHdyaXRhYmxlOiBmYWxzZSxcbiAgY29uZmlndXJhYmxlOiBmYWxzZVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL0ZpbGVBUEkvI3JlYWRPcGVyYXRpb25cbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ZpbGVyZWFkZXInKS5GaWxlUmVhZGVyfSBmclxuICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAqIEBwYXJhbSB7c3RyaW5nfSB0eXBlXG4gKiBAcGFyYW0ge3N0cmluZz99IGVuY29kaW5nTmFtZVxuICovXG5mdW5jdGlvbiByZWFkT3BlcmF0aW9uIChmciwgYmxvYiwgdHlwZSwgZW5jb2RpbmdOYW1lKSB7XG4gIC8vIDEuIElmIGZyXHUyMDE5cyBzdGF0ZSBpcyBcImxvYWRpbmdcIiwgdGhyb3cgYW4gSW52YWxpZFN0YXRlRXJyb3JcbiAgLy8gICAgRE9NRXhjZXB0aW9uLlxuICBpZiAoZnJba1N0YXRlXSA9PT0gJ2xvYWRpbmcnKSB7XG4gICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignSW52YWxpZCBzdGF0ZScsICdJbnZhbGlkU3RhdGVFcnJvcicpXG4gIH1cblxuICAvLyAyLiBTZXQgZnJcdTIwMTlzIHN0YXRlIHRvIFwibG9hZGluZ1wiLlxuICBmcltrU3RhdGVdID0gJ2xvYWRpbmcnXG5cbiAgLy8gMy4gU2V0IGZyXHUyMDE5cyByZXN1bHQgdG8gbnVsbC5cbiAgZnJba1Jlc3VsdF0gPSBudWxsXG5cbiAgLy8gNC4gU2V0IGZyXHUyMDE5cyBlcnJvciB0byBudWxsLlxuICBmcltrRXJyb3JdID0gbnVsbFxuXG4gIC8vIDUuIExldCBzdHJlYW0gYmUgdGhlIHJlc3VsdCBvZiBjYWxsaW5nIGdldCBzdHJlYW0gb24gYmxvYi5cbiAgLyoqIEB0eXBlIHtpbXBvcnQoJ3N0cmVhbS93ZWInKS5SZWFkYWJsZVN0cmVhbX0gKi9cbiAgY29uc3Qgc3RyZWFtID0gYmxvYi5zdHJlYW0oKVxuXG4gIC8vIDYuIExldCByZWFkZXIgYmUgdGhlIHJlc3VsdCBvZiBnZXR0aW5nIGEgcmVhZGVyIGZyb20gc3RyZWFtLlxuICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcblxuICAvLyA3LiBMZXQgYnl0ZXMgYmUgYW4gZW1wdHkgYnl0ZSBzZXF1ZW5jZS5cbiAgLyoqIEB0eXBlIHtVaW50OEFycmF5W119ICovXG4gIGNvbnN0IGJ5dGVzID0gW11cblxuICAvLyA4LiBMZXQgY2h1bmtQcm9taXNlIGJlIHRoZSByZXN1bHQgb2YgcmVhZGluZyBhIGNodW5rIGZyb21cbiAgLy8gICAgc3RyZWFtIHdpdGggcmVhZGVyLlxuICBsZXQgY2h1bmtQcm9taXNlID0gcmVhZGVyLnJlYWQoKVxuXG4gIC8vIDkuIExldCBpc0ZpcnN0Q2h1bmsgYmUgdHJ1ZS5cbiAgbGV0IGlzRmlyc3RDaHVuayA9IHRydWVcblxuICAvLyAxMC4gSW4gcGFyYWxsZWwsIHdoaWxlIHRydWU6XG4gIC8vIE5vdGU6IFwiSW4gcGFyYWxsZWxcIiBqdXN0IG1lYW5zIG5vbi1ibG9ja2luZ1xuICAvLyBOb3RlIDI6IHJlYWRPcGVyYXRpb24gaXRzZWxmIGNhbm5vdCBiZSBhc3luYyBhcyBkb3VibGVcbiAgLy8gcmVhZGluZyB0aGUgYm9keSB3b3VsZCB0aGVuIHJlamVjdCB0aGUgcHJvbWlzZSwgaW5zdGVhZFxuICAvLyBvZiB0aHJvd2luZyBhbiBlcnJvci5cbiAgOyhhc3luYyAoKSA9PiB7XG4gICAgd2hpbGUgKCFmcltrQWJvcnRlZF0pIHtcbiAgICAgIC8vIDEuIFdhaXQgZm9yIGNodW5rUHJvbWlzZSB0byBiZSBmdWxmaWxsZWQgb3IgcmVqZWN0ZWQuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGRvbmUsIHZhbHVlIH0gPSBhd2FpdCBjaHVua1Byb21pc2VcblxuICAgICAgICAvLyAyLiBJZiBjaHVua1Byb21pc2UgaXMgZnVsZmlsbGVkLCBhbmQgaXNGaXJzdENodW5rIGlzXG4gICAgICAgIC8vICAgIHRydWUsIHF1ZXVlIGEgdGFzayB0byBmaXJlIGEgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkXG4gICAgICAgIC8vICAgIGxvYWRzdGFydCBhdCBmci5cbiAgICAgICAgaWYgKGlzRmlyc3RDaHVuayAmJiAhZnJba0Fib3J0ZWRdKSB7XG4gICAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdsb2Fkc3RhcnQnLCBmcilcbiAgICAgICAgICB9KVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMy4gU2V0IGlzRmlyc3RDaHVuayB0byBmYWxzZS5cbiAgICAgICAgaXNGaXJzdENodW5rID0gZmFsc2VcblxuICAgICAgICAvLyA0LiBJZiBjaHVua1Byb21pc2UgaXMgZnVsZmlsbGVkIHdpdGggYW4gb2JqZWN0IHdob3NlXG4gICAgICAgIC8vICAgIGRvbmUgcHJvcGVydHkgaXMgZmFsc2UgYW5kIHdob3NlIHZhbHVlIHByb3BlcnR5IGlzXG4gICAgICAgIC8vICAgIGEgVWludDhBcnJheSBvYmplY3QsIHJ1biB0aGVzZSBzdGVwczpcbiAgICAgICAgaWYgKCFkb25lICYmIHR5cGVzLmlzVWludDhBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAvLyAxLiBMZXQgYnMgYmUgdGhlIGJ5dGUgc2VxdWVuY2UgcmVwcmVzZW50ZWQgYnkgdGhlXG4gICAgICAgICAgLy8gICAgVWludDhBcnJheSBvYmplY3QuXG5cbiAgICAgICAgICAvLyAyLiBBcHBlbmQgYnMgdG8gYnl0ZXMuXG4gICAgICAgICAgYnl0ZXMucHVzaCh2YWx1ZSlcblxuICAgICAgICAgIC8vIDMuIElmIHJvdWdobHkgNTBtcyBoYXZlIHBhc3NlZCBzaW5jZSB0aGVzZSBzdGVwc1xuICAgICAgICAgIC8vICAgIHdlcmUgbGFzdCBpbnZva2VkLCBxdWV1ZSBhIHRhc2sgdG8gZmlyZSBhXG4gICAgICAgICAgLy8gICAgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkIHByb2dyZXNzIGF0IGZyLlxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgZnJba0xhc3RQcm9ncmVzc0V2ZW50RmlyZWRdID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgRGF0ZS5ub3coKSAtIGZyW2tMYXN0UHJvZ3Jlc3NFdmVudEZpcmVkXSA+PSA1MFxuICAgICAgICAgICAgKSAmJlxuICAgICAgICAgICAgIWZyW2tBYm9ydGVkXVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZnJba0xhc3RQcm9ncmVzc0V2ZW50RmlyZWRdID0gRGF0ZS5ub3coKVxuICAgICAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgICAgICBmaXJlQVByb2dyZXNzRXZlbnQoJ3Byb2dyZXNzJywgZnIpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuIFNldCBjaHVua1Byb21pc2UgdG8gdGhlIHJlc3VsdCBvZiByZWFkaW5nIGFcbiAgICAgICAgICAvLyAgICBjaHVuayBmcm9tIHN0cmVhbSB3aXRoIHJlYWRlci5cbiAgICAgICAgICBjaHVua1Byb21pc2UgPSByZWFkZXIucmVhZCgpXG4gICAgICAgIH0gZWxzZSBpZiAoZG9uZSkge1xuICAgICAgICAgIC8vIDUuIE90aGVyd2lzZSwgaWYgY2h1bmtQcm9taXNlIGlzIGZ1bGZpbGxlZCB3aXRoIGFuXG4gICAgICAgICAgLy8gICAgb2JqZWN0IHdob3NlIGRvbmUgcHJvcGVydHkgaXMgdHJ1ZSwgcXVldWUgYSB0YXNrXG4gICAgICAgICAgLy8gICAgdG8gcnVuIHRoZSBmb2xsb3dpbmcgc3RlcHMgYW5kIGFib3J0IHRoaXMgYWxnb3JpdGhtOlxuICAgICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgICAgIC8vIDEuIFNldCBmclx1MjAxOXMgc3RhdGUgdG8gXCJkb25lXCIuXG4gICAgICAgICAgICBmcltrU3RhdGVdID0gJ2RvbmUnXG5cbiAgICAgICAgICAgIC8vIDIuIExldCByZXN1bHQgYmUgdGhlIHJlc3VsdCBvZiBwYWNrYWdlIGRhdGEgZ2l2ZW5cbiAgICAgICAgICAgIC8vICAgIGJ5dGVzLCB0eXBlLCBibG9iXHUyMDE5cyB0eXBlLCBhbmQgZW5jb2RpbmdOYW1lLlxuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gcGFja2FnZURhdGEoYnl0ZXMsIHR5cGUsIGJsb2IudHlwZSwgZW5jb2RpbmdOYW1lKVxuXG4gICAgICAgICAgICAgIC8vIDQuIEVsc2U6XG5cbiAgICAgICAgICAgICAgaWYgKGZyW2tBYm9ydGVkXSkge1xuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLy8gMS4gU2V0IGZyXHUyMDE5cyByZXN1bHQgdG8gcmVzdWx0LlxuICAgICAgICAgICAgICBmcltrUmVzdWx0XSA9IHJlc3VsdFxuXG4gICAgICAgICAgICAgIC8vIDIuIEZpcmUgYSBwcm9ncmVzcyBldmVudCBjYWxsZWQgbG9hZCBhdCB0aGUgZnIuXG4gICAgICAgICAgICAgIGZpcmVBUHJvZ3Jlc3NFdmVudCgnbG9hZCcsIGZyKVxuICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgLy8gMy4gSWYgcGFja2FnZSBkYXRhIHRocmV3IGFuIGV4Y2VwdGlvbiBlcnJvcjpcblxuICAgICAgICAgICAgICAvLyAxLiBTZXQgZnJcdTIwMTlzIGVycm9yIHRvIGVycm9yLlxuICAgICAgICAgICAgICBmcltrRXJyb3JdID0gZXJyb3JcblxuICAgICAgICAgICAgICAvLyAyLiBGaXJlIGEgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkIGVycm9yIGF0IGZyLlxuICAgICAgICAgICAgICBmaXJlQVByb2dyZXNzRXZlbnQoJ2Vycm9yJywgZnIpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIDUuIElmIGZyXHUyMDE5cyBzdGF0ZSBpcyBub3QgXCJsb2FkaW5nXCIsIGZpcmUgYSBwcm9ncmVzc1xuICAgICAgICAgICAgLy8gICAgZXZlbnQgY2FsbGVkIGxvYWRlbmQgYXQgdGhlIGZyLlxuICAgICAgICAgICAgaWYgKGZyW2tTdGF0ZV0gIT09ICdsb2FkaW5nJykge1xuICAgICAgICAgICAgICBmaXJlQVByb2dyZXNzRXZlbnQoJ2xvYWRlbmQnLCBmcilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgaWYgKGZyW2tBYm9ydGVkXSkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgLy8gNi4gT3RoZXJ3aXNlLCBpZiBjaHVua1Byb21pc2UgaXMgcmVqZWN0ZWQgd2l0aCBhblxuICAgICAgICAvLyAgICBlcnJvciBlcnJvciwgcXVldWUgYSB0YXNrIHRvIHJ1biB0aGUgZm9sbG93aW5nXG4gICAgICAgIC8vICAgIHN0ZXBzIGFuZCBhYm9ydCB0aGlzIGFsZ29yaXRobTpcbiAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgIC8vIDEuIFNldCBmclx1MjAxOXMgc3RhdGUgdG8gXCJkb25lXCIuXG4gICAgICAgICAgZnJba1N0YXRlXSA9ICdkb25lJ1xuXG4gICAgICAgICAgLy8gMi4gU2V0IGZyXHUyMDE5cyBlcnJvciB0byBlcnJvci5cbiAgICAgICAgICBmcltrRXJyb3JdID0gZXJyb3JcblxuICAgICAgICAgIC8vIDMuIEZpcmUgYSBwcm9ncmVzcyBldmVudCBjYWxsZWQgZXJyb3IgYXQgZnIuXG4gICAgICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdlcnJvcicsIGZyKVxuXG4gICAgICAgICAgLy8gNC4gSWYgZnJcdTIwMTlzIHN0YXRlIGlzIG5vdCBcImxvYWRpbmdcIiwgZmlyZSBhIHByb2dyZXNzXG4gICAgICAgICAgLy8gICAgZXZlbnQgY2FsbGVkIGxvYWRlbmQgYXQgZnIuXG4gICAgICAgICAgaWYgKGZyW2tTdGF0ZV0gIT09ICdsb2FkaW5nJykge1xuICAgICAgICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdsb2FkZW5kJywgZnIpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgfVxuICB9KSgpXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZmlyZS1hLXByb2dyZXNzLWV2ZW50XG4gKiBAc2VlIGh0dHBzOi8vZG9tLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC1ldmVudC1maXJlXG4gKiBAcGFyYW0ge3N0cmluZ30gZSBUaGUgbmFtZSBvZiB0aGUgZXZlbnRcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ZpbGVyZWFkZXInKS5GaWxlUmVhZGVyfSByZWFkZXJcbiAqL1xuZnVuY3Rpb24gZmlyZUFQcm9ncmVzc0V2ZW50IChlLCByZWFkZXIpIHtcbiAgLy8gVGhlIHByb2dyZXNzIGV2ZW50IGUgZG9lcyBub3QgYnViYmxlLiBlLmJ1YmJsZXMgbXVzdCBiZSBmYWxzZVxuICAvLyBUaGUgcHJvZ3Jlc3MgZXZlbnQgZSBpcyBOT1QgY2FuY2VsYWJsZS4gZS5jYW5jZWxhYmxlIG11c3QgYmUgZmFsc2VcbiAgY29uc3QgZXZlbnQgPSBuZXcgUHJvZ3Jlc3NFdmVudChlLCB7XG4gICAgYnViYmxlczogZmFsc2UsXG4gICAgY2FuY2VsYWJsZTogZmFsc2VcbiAgfSlcblxuICByZWFkZXIuZGlzcGF0Y2hFdmVudChldmVudClcbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNibG9iLXBhY2thZ2UtZGF0YVxuICogQHBhcmFtIHtVaW50OEFycmF5W119IGJ5dGVzXG4gKiBAcGFyYW0ge3N0cmluZ30gdHlwZVxuICogQHBhcmFtIHtzdHJpbmc/fSBtaW1lVHlwZVxuICogQHBhcmFtIHtzdHJpbmc/fSBlbmNvZGluZ05hbWVcbiAqL1xuZnVuY3Rpb24gcGFja2FnZURhdGEgKGJ5dGVzLCB0eXBlLCBtaW1lVHlwZSwgZW5jb2RpbmdOYW1lKSB7XG4gIC8vIDEuIEEgQmxvYiBoYXMgYW4gYXNzb2NpYXRlZCBwYWNrYWdlIGRhdGEgYWxnb3JpdGhtLCBnaXZlblxuICAvLyAgICBieXRlcywgYSB0eXBlLCBhIG9wdGlvbmFsIG1pbWVUeXBlLCBhbmQgYSBvcHRpb25hbFxuICAvLyAgICBlbmNvZGluZ05hbWUsIHdoaWNoIHN3aXRjaGVzIG9uIHR5cGUgYW5kIHJ1bnMgdGhlXG4gIC8vICAgIGFzc29jaWF0ZWQgc3RlcHM6XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSAnRGF0YVVSTCc6IHtcbiAgICAgIC8vIDEuIFJldHVybiBieXRlcyBhcyBhIERhdGFVUkwgW1JGQzIzOTddIHN1YmplY3QgdG9cbiAgICAgIC8vICAgIHRoZSBjb25zaWRlcmF0aW9ucyBiZWxvdzpcbiAgICAgIC8vICAqIFVzZSBtaW1lVHlwZSBhcyBwYXJ0IG9mIHRoZSBEYXRhIFVSTCBpZiBpdCBpc1xuICAgICAgLy8gICAgYXZhaWxhYmxlIGluIGtlZXBpbmcgd2l0aCB0aGUgRGF0YSBVUkxcbiAgICAgIC8vICAgIHNwZWNpZmljYXRpb24gW1JGQzIzOTddLlxuICAgICAgLy8gICogSWYgbWltZVR5cGUgaXMgbm90IGF2YWlsYWJsZSByZXR1cm4gYSBEYXRhIFVSTFxuICAgICAgLy8gICAgd2l0aG91dCBhIG1lZGlhLXR5cGUuIFtSRkMyMzk3XS5cblxuICAgICAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmMyMzk3I3NlY3Rpb24tM1xuICAgICAgLy8gZGF0YXVybCAgICA6PSBcImRhdGE6XCIgWyBtZWRpYXR5cGUgXSBbIFwiO2Jhc2U2NFwiIF0gXCIsXCIgZGF0YVxuICAgICAgLy8gbWVkaWF0eXBlICA6PSBbIHR5cGUgXCIvXCIgc3VidHlwZSBdICooIFwiO1wiIHBhcmFtZXRlciApXG4gICAgICAvLyBkYXRhICAgICAgIDo9ICp1cmxjaGFyXG4gICAgICAvLyBwYXJhbWV0ZXIgIDo9IGF0dHJpYnV0ZSBcIj1cIiB2YWx1ZVxuICAgICAgbGV0IGRhdGFVUkwgPSAnZGF0YTonXG5cbiAgICAgIGNvbnN0IHBhcnNlZCA9IHBhcnNlTUlNRVR5cGUobWltZVR5cGUgfHwgJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScpXG5cbiAgICAgIGlmIChwYXJzZWQgIT09ICdmYWlsdXJlJykge1xuICAgICAgICBkYXRhVVJMICs9IHNlcmlhbGl6ZUFNaW1lVHlwZShwYXJzZWQpXG4gICAgICB9XG5cbiAgICAgIGRhdGFVUkwgKz0gJztiYXNlNjQsJ1xuXG4gICAgICBjb25zdCBkZWNvZGVyID0gbmV3IFN0cmluZ0RlY29kZXIoJ2xhdGluMScpXG5cbiAgICAgIGZvciAoY29uc3QgY2h1bmsgb2YgYnl0ZXMpIHtcbiAgICAgICAgZGF0YVVSTCArPSBidG9hKGRlY29kZXIud3JpdGUoY2h1bmspKVxuICAgICAgfVxuXG4gICAgICBkYXRhVVJMICs9IGJ0b2EoZGVjb2Rlci5lbmQoKSlcblxuICAgICAgcmV0dXJuIGRhdGFVUkxcbiAgICB9XG4gICAgY2FzZSAnVGV4dCc6IHtcbiAgICAgIC8vIDEuIExldCBlbmNvZGluZyBiZSBmYWlsdXJlXG4gICAgICBsZXQgZW5jb2RpbmcgPSAnZmFpbHVyZSdcblxuICAgICAgLy8gMi4gSWYgdGhlIGVuY29kaW5nTmFtZSBpcyBwcmVzZW50LCBzZXQgZW5jb2RpbmcgdG8gdGhlXG4gICAgICAvLyAgICByZXN1bHQgb2YgZ2V0dGluZyBhbiBlbmNvZGluZyBmcm9tIGVuY29kaW5nTmFtZS5cbiAgICAgIGlmIChlbmNvZGluZ05hbWUpIHtcbiAgICAgICAgZW5jb2RpbmcgPSBnZXRFbmNvZGluZyhlbmNvZGluZ05hbWUpXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIElmIGVuY29kaW5nIGlzIGZhaWx1cmUsIGFuZCBtaW1lVHlwZSBpcyBwcmVzZW50OlxuICAgICAgaWYgKGVuY29kaW5nID09PSAnZmFpbHVyZScgJiYgbWltZVR5cGUpIHtcbiAgICAgICAgLy8gMS4gTGV0IHR5cGUgYmUgdGhlIHJlc3VsdCBvZiBwYXJzZSBhIE1JTUUgdHlwZVxuICAgICAgICAvLyAgICBnaXZlbiBtaW1lVHlwZS5cbiAgICAgICAgY29uc3QgdHlwZSA9IHBhcnNlTUlNRVR5cGUobWltZVR5cGUpXG5cbiAgICAgICAgLy8gMi4gSWYgdHlwZSBpcyBub3QgZmFpbHVyZSwgc2V0IGVuY29kaW5nIHRvIHRoZSByZXN1bHRcbiAgICAgICAgLy8gICAgb2YgZ2V0dGluZyBhbiBlbmNvZGluZyBmcm9tIHR5cGVcdTIwMTlzIHBhcmFtZXRlcnNbXCJjaGFyc2V0XCJdLlxuICAgICAgICBpZiAodHlwZSAhPT0gJ2ZhaWx1cmUnKSB7XG4gICAgICAgICAgZW5jb2RpbmcgPSBnZXRFbmNvZGluZyh0eXBlLnBhcmFtZXRlcnMuZ2V0KCdjaGFyc2V0JykpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gNC4gSWYgZW5jb2RpbmcgaXMgZmFpbHVyZSwgdGhlbiBzZXQgZW5jb2RpbmcgdG8gVVRGLTguXG4gICAgICBpZiAoZW5jb2RpbmcgPT09ICdmYWlsdXJlJykge1xuICAgICAgICBlbmNvZGluZyA9ICdVVEYtOCdcbiAgICAgIH1cblxuICAgICAgLy8gNS4gRGVjb2RlIGJ5dGVzIHVzaW5nIGZhbGxiYWNrIGVuY29kaW5nIGVuY29kaW5nLCBhbmRcbiAgICAgIC8vICAgIHJldHVybiB0aGUgcmVzdWx0LlxuICAgICAgcmV0dXJuIGRlY29kZShieXRlcywgZW5jb2RpbmcpXG4gICAgfVxuICAgIGNhc2UgJ0FycmF5QnVmZmVyJzoge1xuICAgICAgLy8gUmV0dXJuIGEgbmV3IEFycmF5QnVmZmVyIHdob3NlIGNvbnRlbnRzIGFyZSBieXRlcy5cbiAgICAgIGNvbnN0IHNlcXVlbmNlID0gY29tYmluZUJ5dGVTZXF1ZW5jZXMoYnl0ZXMpXG5cbiAgICAgIHJldHVybiBzZXF1ZW5jZS5idWZmZXJcbiAgICB9XG4gICAgY2FzZSAnQmluYXJ5U3RyaW5nJzoge1xuICAgICAgLy8gUmV0dXJuIGJ5dGVzIGFzIGEgYmluYXJ5IHN0cmluZywgaW4gd2hpY2ggZXZlcnkgYnl0ZVxuICAgICAgLy8gIGlzIHJlcHJlc2VudGVkIGJ5IGEgY29kZSB1bml0IG9mIGVxdWFsIHZhbHVlIFswLi4yNTVdLlxuICAgICAgbGV0IGJpbmFyeVN0cmluZyA9ICcnXG5cbiAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgU3RyaW5nRGVjb2RlcignbGF0aW4xJylcblxuICAgICAgZm9yIChjb25zdCBjaHVuayBvZiBieXRlcykge1xuICAgICAgICBiaW5hcnlTdHJpbmcgKz0gZGVjb2Rlci53cml0ZShjaHVuaylcbiAgICAgIH1cblxuICAgICAgYmluYXJ5U3RyaW5nICs9IGRlY29kZXIuZW5kKClcblxuICAgICAgcmV0dXJuIGJpbmFyeVN0cmluZ1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9lbmNvZGluZy5zcGVjLndoYXR3Zy5vcmcvI2RlY29kZVxuICogQHBhcmFtIHtVaW50OEFycmF5W119IGlvUXVldWVcbiAqIEBwYXJhbSB7c3RyaW5nfSBlbmNvZGluZ1xuICovXG5mdW5jdGlvbiBkZWNvZGUgKGlvUXVldWUsIGVuY29kaW5nKSB7XG4gIGNvbnN0IGJ5dGVzID0gY29tYmluZUJ5dGVTZXF1ZW5jZXMoaW9RdWV1ZSlcblxuICAvLyAxLiBMZXQgQk9NRW5jb2RpbmcgYmUgdGhlIHJlc3VsdCBvZiBCT00gc25pZmZpbmcgaW9RdWV1ZS5cbiAgY29uc3QgQk9NRW5jb2RpbmcgPSBCT01TbmlmZmluZyhieXRlcylcblxuICBsZXQgc2xpY2UgPSAwXG5cbiAgLy8gMi4gSWYgQk9NRW5jb2RpbmcgaXMgbm9uLW51bGw6XG4gIGlmIChCT01FbmNvZGluZyAhPT0gbnVsbCkge1xuICAgIC8vIDEuIFNldCBlbmNvZGluZyB0byBCT01FbmNvZGluZy5cbiAgICBlbmNvZGluZyA9IEJPTUVuY29kaW5nXG5cbiAgICAvLyAyLiBSZWFkIHRocmVlIGJ5dGVzIGZyb20gaW9RdWV1ZSwgaWYgQk9NRW5jb2RpbmcgaXNcbiAgICAvLyAgICBVVEYtODsgb3RoZXJ3aXNlIHJlYWQgdHdvIGJ5dGVzLlxuICAgIC8vICAgIChEbyBub3RoaW5nIHdpdGggdGhvc2UgYnl0ZXMuKVxuICAgIHNsaWNlID0gQk9NRW5jb2RpbmcgPT09ICdVVEYtOCcgPyAzIDogMlxuICB9XG5cbiAgLy8gMy4gUHJvY2VzcyBhIHF1ZXVlIHdpdGggYW4gaW5zdGFuY2Ugb2YgZW5jb2RpbmdcdTIwMTlzXG4gIC8vICAgIGRlY29kZXIsIGlvUXVldWUsIG91dHB1dCwgYW5kIFwicmVwbGFjZW1lbnRcIi5cblxuICAvLyA0LiBSZXR1cm4gb3V0cHV0LlxuXG4gIGNvbnN0IHNsaWNlZCA9IGJ5dGVzLnNsaWNlKHNsaWNlKVxuICByZXR1cm4gbmV3IFRleHREZWNvZGVyKGVuY29kaW5nKS5kZWNvZGUoc2xpY2VkKVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9lbmNvZGluZy5zcGVjLndoYXR3Zy5vcmcvI2JvbS1zbmlmZlxuICogQHBhcmFtIHtVaW50OEFycmF5fSBpb1F1ZXVlXG4gKi9cbmZ1bmN0aW9uIEJPTVNuaWZmaW5nIChpb1F1ZXVlKSB7XG4gIC8vIDEuIExldCBCT00gYmUgdGhlIHJlc3VsdCBvZiBwZWVraW5nIDMgYnl0ZXMgZnJvbSBpb1F1ZXVlLFxuICAvLyAgICBjb252ZXJ0ZWQgdG8gYSBieXRlIHNlcXVlbmNlLlxuICBjb25zdCBbYSwgYiwgY10gPSBpb1F1ZXVlXG5cbiAgLy8gMi4gRm9yIGVhY2ggb2YgdGhlIHJvd3MgaW4gdGhlIHRhYmxlIGJlbG93LCBzdGFydGluZyB3aXRoXG4gIC8vICAgIHRoZSBmaXJzdCBvbmUgYW5kIGdvaW5nIGRvd24sIGlmIEJPTSBzdGFydHMgd2l0aCB0aGVcbiAgLy8gICAgYnl0ZXMgZ2l2ZW4gaW4gdGhlIGZpcnN0IGNvbHVtbiwgdGhlbiByZXR1cm4gdGhlXG4gIC8vICAgIGVuY29kaW5nIGdpdmVuIGluIHRoZSBjZWxsIGluIHRoZSBzZWNvbmQgY29sdW1uIG9mIHRoYXRcbiAgLy8gICAgcm93LiBPdGhlcndpc2UsIHJldHVybiBudWxsLlxuICBpZiAoYSA9PT0gMHhFRiAmJiBiID09PSAweEJCICYmIGMgPT09IDB4QkYpIHtcbiAgICByZXR1cm4gJ1VURi04J1xuICB9IGVsc2UgaWYgKGEgPT09IDB4RkUgJiYgYiA9PT0gMHhGRikge1xuICAgIHJldHVybiAnVVRGLTE2QkUnXG4gIH0gZWxzZSBpZiAoYSA9PT0gMHhGRiAmJiBiID09PSAweEZFKSB7XG4gICAgcmV0dXJuICdVVEYtMTZMRSdcbiAgfVxuXG4gIHJldHVybiBudWxsXG59XG5cbi8qKlxuICogQHBhcmFtIHtVaW50OEFycmF5W119IHNlcXVlbmNlc1xuICovXG5mdW5jdGlvbiBjb21iaW5lQnl0ZVNlcXVlbmNlcyAoc2VxdWVuY2VzKSB7XG4gIGNvbnN0IHNpemUgPSBzZXF1ZW5jZXMucmVkdWNlKChhLCBiKSA9PiB7XG4gICAgcmV0dXJuIGEgKyBiLmJ5dGVMZW5ndGhcbiAgfSwgMClcblxuICBsZXQgb2Zmc2V0ID0gMFxuXG4gIHJldHVybiBzZXF1ZW5jZXMucmVkdWNlKChhLCBiKSA9PiB7XG4gICAgYS5zZXQoYiwgb2Zmc2V0KVxuICAgIG9mZnNldCArPSBiLmJ5dGVMZW5ndGhcbiAgICByZXR1cm4gYVxuICB9LCBuZXcgVWludDhBcnJheShzaXplKSlcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIHJlYWRPcGVyYXRpb24sXG4gIGZpcmVBUHJvZ3Jlc3NFdmVudFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7XG4gIHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIHJlYWRPcGVyYXRpb24sXG4gIGZpcmVBUHJvZ3Jlc3NFdmVudFxufSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7XG4gIGtTdGF0ZSxcbiAga0Vycm9yLFxuICBrUmVzdWx0LFxuICBrRXZlbnRzLFxuICBrQWJvcnRlZFxufSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcblxuY2xhc3MgRmlsZVJlYWRlciBleHRlbmRzIEV2ZW50VGFyZ2V0IHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXNba1N0YXRlXSA9ICdlbXB0eSdcbiAgICB0aGlzW2tSZXN1bHRdID0gbnVsbFxuICAgIHRoaXNba0Vycm9yXSA9IG51bGxcbiAgICB0aGlzW2tFdmVudHNdID0ge1xuICAgICAgbG9hZGVuZDogbnVsbCxcbiAgICAgIGVycm9yOiBudWxsLFxuICAgICAgYWJvcnQ6IG51bGwsXG4gICAgICBsb2FkOiBudWxsLFxuICAgICAgcHJvZ3Jlc3M6IG51bGwsXG4gICAgICBsb2Fkc3RhcnQ6IG51bGxcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZGZuLXJlYWRBc0FycmF5QnVmZmVyXG4gICAqIEBwYXJhbSB7aW1wb3J0KCdidWZmZXInKS5CbG9ifSBibG9iXG4gICAqL1xuICByZWFkQXNBcnJheUJ1ZmZlciAoYmxvYikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnRmlsZVJlYWRlci5yZWFkQXNBcnJheUJ1ZmZlcicgfSlcblxuICAgIGJsb2IgPSB3ZWJpZGwuY29udmVydGVycy5CbG9iKGJsb2IsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gICAgLy8gVGhlIHJlYWRBc0FycmF5QnVmZmVyKGJsb2IpIG1ldGhvZCwgd2hlbiBpbnZva2VkLFxuICAgIC8vIG11c3QgaW5pdGlhdGUgYSByZWFkIG9wZXJhdGlvbiBmb3IgYmxvYiB3aXRoIEFycmF5QnVmZmVyLlxuICAgIHJlYWRPcGVyYXRpb24odGhpcywgYmxvYiwgJ0FycmF5QnVmZmVyJylcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNyZWFkQXNCaW5hcnlTdHJpbmdcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAgICovXG4gIHJlYWRBc0JpbmFyeVN0cmluZyAoYmxvYikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnRmlsZVJlYWRlci5yZWFkQXNCaW5hcnlTdHJpbmcnIH0pXG5cbiAgICBibG9iID0gd2ViaWRsLmNvbnZlcnRlcnMuQmxvYihibG9iLCB7IHN0cmljdDogZmFsc2UgfSlcblxuICAgIC8vIFRoZSByZWFkQXNCaW5hcnlTdHJpbmcoYmxvYikgbWV0aG9kLCB3aGVuIGludm9rZWQsXG4gICAgLy8gbXVzdCBpbml0aWF0ZSBhIHJlYWQgb3BlcmF0aW9uIGZvciBibG9iIHdpdGggQmluYXJ5U3RyaW5nLlxuICAgIHJlYWRPcGVyYXRpb24odGhpcywgYmxvYiwgJ0JpbmFyeVN0cmluZycpXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jcmVhZEFzRGF0YVRleHRcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAgICogQHBhcmFtIHtzdHJpbmc/fSBlbmNvZGluZ1xuICAgKi9cbiAgcmVhZEFzVGV4dCAoYmxvYiwgZW5jb2RpbmcgPSB1bmRlZmluZWQpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0ZpbGVSZWFkZXIucmVhZEFzVGV4dCcgfSlcblxuICAgIGJsb2IgPSB3ZWJpZGwuY29udmVydGVycy5CbG9iKGJsb2IsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gICAgaWYgKGVuY29kaW5nICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGVuY29kaW5nID0gd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKGVuY29kaW5nKVxuICAgIH1cblxuICAgIC8vIFRoZSByZWFkQXNUZXh0KGJsb2IsIGVuY29kaW5nKSBtZXRob2QsIHdoZW4gaW52b2tlZCxcbiAgICAvLyBtdXN0IGluaXRpYXRlIGEgcmVhZCBvcGVyYXRpb24gZm9yIGJsb2Igd2l0aCBUZXh0IGFuZCBlbmNvZGluZy5cbiAgICByZWFkT3BlcmF0aW9uKHRoaXMsIGJsb2IsICdUZXh0JywgZW5jb2RpbmcpXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZGZuLXJlYWRBc0RhdGFVUkxcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2J1ZmZlcicpLkJsb2J9IGJsb2JcbiAgICovXG4gIHJlYWRBc0RhdGFVUkwgKGJsb2IpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0ZpbGVSZWFkZXIucmVhZEFzRGF0YVVSTCcgfSlcblxuICAgIGJsb2IgPSB3ZWJpZGwuY29udmVydGVycy5CbG9iKGJsb2IsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gICAgLy8gVGhlIHJlYWRBc0RhdGFVUkwoYmxvYikgbWV0aG9kLCB3aGVuIGludm9rZWQsIG11c3RcbiAgICAvLyBpbml0aWF0ZSBhIHJlYWQgb3BlcmF0aW9uIGZvciBibG9iIHdpdGggRGF0YVVSTC5cbiAgICByZWFkT3BlcmF0aW9uKHRoaXMsIGJsb2IsICdEYXRhVVJMJylcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNkZm4tYWJvcnRcbiAgICovXG4gIGFib3J0ICgpIHtcbiAgICAvLyAxLiBJZiB0aGlzJ3Mgc3RhdGUgaXMgXCJlbXB0eVwiIG9yIGlmIHRoaXMncyBzdGF0ZSBpc1xuICAgIC8vICAgIFwiZG9uZVwiIHNldCB0aGlzJ3MgcmVzdWx0IHRvIG51bGwgYW5kIHRlcm1pbmF0ZVxuICAgIC8vICAgIHRoaXMgYWxnb3JpdGhtLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0gPT09ICdlbXB0eScgfHwgdGhpc1trU3RhdGVdID09PSAnZG9uZScpIHtcbiAgICAgIHRoaXNba1Jlc3VsdF0gPSBudWxsXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyAyLiBJZiB0aGlzJ3Mgc3RhdGUgaXMgXCJsb2FkaW5nXCIgc2V0IHRoaXMncyBzdGF0ZSB0b1xuICAgIC8vICAgIFwiZG9uZVwiIGFuZCBzZXQgdGhpcydzIHJlc3VsdCB0byBudWxsLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0gPT09ICdsb2FkaW5nJykge1xuICAgICAgdGhpc1trU3RhdGVdID0gJ2RvbmUnXG4gICAgICB0aGlzW2tSZXN1bHRdID0gbnVsbFxuICAgIH1cblxuICAgIC8vIDMuIElmIHRoZXJlIGFyZSBhbnkgdGFza3MgZnJvbSB0aGlzIG9uIHRoZSBmaWxlIHJlYWRpbmdcbiAgICAvLyAgICB0YXNrIHNvdXJjZSBpbiBhbiBhZmZpbGlhdGVkIHRhc2sgcXVldWUsIHRoZW4gcmVtb3ZlXG4gICAgLy8gICAgdGhvc2UgdGFza3MgZnJvbSB0aGF0IHRhc2sgcXVldWUuXG4gICAgdGhpc1trQWJvcnRlZF0gPSB0cnVlXG5cbiAgICAvLyA0LiBUZXJtaW5hdGUgdGhlIGFsZ29yaXRobSBmb3IgdGhlIHJlYWQgbWV0aG9kIGJlaW5nIHByb2Nlc3NlZC5cbiAgICAvLyBUT0RPXG5cbiAgICAvLyA1LiBGaXJlIGEgcHJvZ3Jlc3MgZXZlbnQgY2FsbGVkIGFib3J0IGF0IHRoaXMuXG4gICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdhYm9ydCcsIHRoaXMpXG5cbiAgICAvLyA2LiBJZiB0aGlzJ3Mgc3RhdGUgaXMgbm90IFwibG9hZGluZ1wiLCBmaXJlIGEgcHJvZ3Jlc3NcbiAgICAvLyAgICBldmVudCBjYWxsZWQgbG9hZGVuZCBhdCB0aGlzLlxuICAgIGlmICh0aGlzW2tTdGF0ZV0gIT09ICdsb2FkaW5nJykge1xuICAgICAgZmlyZUFQcm9ncmVzc0V2ZW50KCdsb2FkZW5kJywgdGhpcylcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZG9tLWZpbGVyZWFkZXItcmVhZHlzdGF0ZVxuICAgKi9cbiAgZ2V0IHJlYWR5U3RhdGUgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICBzd2l0Y2ggKHRoaXNba1N0YXRlXSkge1xuICAgICAgY2FzZSAnZW1wdHknOiByZXR1cm4gdGhpcy5FTVBUWVxuICAgICAgY2FzZSAnbG9hZGluZyc6IHJldHVybiB0aGlzLkxPQURJTkdcbiAgICAgIGNhc2UgJ2RvbmUnOiByZXR1cm4gdGhpcy5ET05FXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL0ZpbGVBUEkvI2RvbS1maWxlcmVhZGVyLXJlc3VsdFxuICAgKi9cbiAgZ2V0IHJlc3VsdCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIC8vIFRoZSByZXN1bHQgYXR0cmlidXRlXHUyMDE5cyBnZXR0ZXIsIHdoZW4gaW52b2tlZCwgbXVzdCByZXR1cm5cbiAgICAvLyB0aGlzJ3MgcmVzdWx0LlxuICAgIHJldHVybiB0aGlzW2tSZXN1bHRdXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZG9tLWZpbGVyZWFkZXItZXJyb3JcbiAgICovXG4gIGdldCBlcnJvciAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIC8vIFRoZSBlcnJvciBhdHRyaWJ1dGVcdTIwMTlzIGdldHRlciwgd2hlbiBpbnZva2VkLCBtdXN0IHJldHVyblxuICAgIC8vIHRoaXMncyBlcnJvci5cbiAgICByZXR1cm4gdGhpc1trRXJyb3JdXG4gIH1cblxuICBnZXQgb25sb2FkZW5kICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgcmV0dXJuIHRoaXNba0V2ZW50c10ubG9hZGVuZFxuICB9XG5cbiAgc2V0IG9ubG9hZGVuZCAoZm4pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgaWYgKHRoaXNba0V2ZW50c10ubG9hZGVuZCkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkZW5kJywgdGhpc1trRXZlbnRzXS5sb2FkZW5kKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXNba0V2ZW50c10ubG9hZGVuZCA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWRlbmQnLCBmbilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpc1trRXZlbnRzXS5sb2FkZW5kID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBvbmVycm9yICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgcmV0dXJuIHRoaXNba0V2ZW50c10uZXJyb3JcbiAgfVxuXG4gIHNldCBvbmVycm9yIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICBpZiAodGhpc1trRXZlbnRzXS5lcnJvcikge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdlcnJvcicsIHRoaXNba0V2ZW50c10uZXJyb3IpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpc1trRXZlbnRzXS5lcnJvciA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXNba0V2ZW50c10uZXJyb3IgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgZ2V0IG9ubG9hZHN0YXJ0ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgcmV0dXJuIHRoaXNba0V2ZW50c10ubG9hZHN0YXJ0XG4gIH1cblxuICBzZXQgb25sb2Fkc3RhcnQgKGZuKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIGlmICh0aGlzW2tFdmVudHNdLmxvYWRzdGFydCkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2Fkc3RhcnQnLCB0aGlzW2tFdmVudHNdLmxvYWRzdGFydClcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmxvYWRzdGFydCA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWRzdGFydCcsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmxvYWRzdGFydCA9IG51bGxcbiAgICB9XG4gIH1cblxuICBnZXQgb25wcm9ncmVzcyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIHJldHVybiB0aGlzW2tFdmVudHNdLnByb2dyZXNzXG4gIH1cblxuICBzZXQgb25wcm9ncmVzcyAoZm4pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBGaWxlUmVhZGVyKVxuXG4gICAgaWYgKHRoaXNba0V2ZW50c10ucHJvZ3Jlc3MpIHtcbiAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcigncHJvZ3Jlc3MnLCB0aGlzW2tFdmVudHNdLnByb2dyZXNzKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXNba0V2ZW50c10ucHJvZ3Jlc3MgPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdwcm9ncmVzcycsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tFdmVudHNdLnByb2dyZXNzID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBvbmxvYWQgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICByZXR1cm4gdGhpc1trRXZlbnRzXS5sb2FkXG4gIH1cblxuICBzZXQgb25sb2FkIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICBpZiAodGhpc1trRXZlbnRzXS5sb2FkKSB7XG4gICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2xvYWQnLCB0aGlzW2tFdmVudHNdLmxvYWQpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpc1trRXZlbnRzXS5sb2FkID0gZm5cbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmxvYWQgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgZ2V0IG9uYWJvcnQgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEZpbGVSZWFkZXIpXG5cbiAgICByZXR1cm4gdGhpc1trRXZlbnRzXS5hYm9ydFxuICB9XG5cbiAgc2V0IG9uYWJvcnQgKGZuKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRmlsZVJlYWRlcilcblxuICAgIGlmICh0aGlzW2tFdmVudHNdLmFib3J0KSB7XG4gICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Fib3J0JywgdGhpc1trRXZlbnRzXS5hYm9ydClcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzW2tFdmVudHNdLmFib3J0ID0gZm5cbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCBmbilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpc1trRXZlbnRzXS5hYm9ydCA9IG51bGxcbiAgICB9XG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL0ZpbGVBUEkvI2RvbS1maWxlcmVhZGVyLWVtcHR5XG5GaWxlUmVhZGVyLkVNUFRZID0gRmlsZVJlYWRlci5wcm90b3R5cGUuRU1QVFkgPSAwXG4vLyBodHRwczovL3czYy5naXRodWIuaW8vRmlsZUFQSS8jZG9tLWZpbGVyZWFkZXItbG9hZGluZ1xuRmlsZVJlYWRlci5MT0FESU5HID0gRmlsZVJlYWRlci5wcm90b3R5cGUuTE9BRElORyA9IDFcbi8vIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9GaWxlQVBJLyNkb20tZmlsZXJlYWRlci1kb25lXG5GaWxlUmVhZGVyLkRPTkUgPSBGaWxlUmVhZGVyLnByb3RvdHlwZS5ET05FID0gMlxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhGaWxlUmVhZGVyLnByb3RvdHlwZSwge1xuICBFTVBUWTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgTE9BRElORzogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgRE9ORTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgcmVhZEFzQXJyYXlCdWZmZXI6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlYWRBc0JpbmFyeVN0cmluZzoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVhZEFzVGV4dDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVhZEFzRGF0YVVSTDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYWJvcnQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlYWR5U3RhdGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHJlc3VsdDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZXJyb3I6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ubG9hZHN0YXJ0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBvbnByb2dyZXNzOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBvbmxvYWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9uYWJvcnQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9uZXJyb3I6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ubG9hZGVuZDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0ZpbGVSZWFkZXInLFxuICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoRmlsZVJlYWRlciwge1xuICBFTVBUWTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgTE9BRElORzogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgRE9ORTogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9yc1xufSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIEZpbGVSZWFkZXJcbn1cbiIsICIndXNlIHN0cmljdCdcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGtDb25zdHJ1Y3Q6IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpLmtDb25zdHJ1Y3Rcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0JylcbmNvbnN0IHsgVVJMU2VyaWFsaXplciB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvZGF0YVVSTCcpXG5jb25zdCB7IGlzVmFsaWRIZWFkZXJOYW1lIH0gPSByZXF1aXJlKCcuLi9mZXRjaC91dGlsJylcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vdXJsLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC11cmwtZXF1YWxzXG4gKiBAcGFyYW0ge1VSTH0gQVxuICogQHBhcmFtIHtVUkx9IEJcbiAqIEBwYXJhbSB7Ym9vbGVhbiB8IHVuZGVmaW5lZH0gZXhjbHVkZUZyYWdtZW50XG4gKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAqL1xuZnVuY3Rpb24gdXJsRXF1YWxzIChBLCBCLCBleGNsdWRlRnJhZ21lbnQgPSBmYWxzZSkge1xuICBjb25zdCBzZXJpYWxpemVkQSA9IFVSTFNlcmlhbGl6ZXIoQSwgZXhjbHVkZUZyYWdtZW50KVxuXG4gIGNvbnN0IHNlcmlhbGl6ZWRCID0gVVJMU2VyaWFsaXplcihCLCBleGNsdWRlRnJhZ21lbnQpXG5cbiAgcmV0dXJuIHNlcmlhbGl6ZWRBID09PSBzZXJpYWxpemVkQlxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2Nocm9taXVtL2Nocm9taXVtL2Jsb2IvNjk0ZDIwZDEzNGNiNTUzZDhkODllNTUwMGI5MTQ4MDEyYjFiYTI5OS9jb250ZW50L2Jyb3dzZXIvY2FjaGVfc3RvcmFnZS9jYWNoZV9zdG9yYWdlX2NhY2hlLmNjI0wyNjAtTDI2MlxuICogQHBhcmFtIHtzdHJpbmd9IGhlYWRlclxuICovXG5mdW5jdGlvbiBmaWVsZFZhbHVlcyAoaGVhZGVyKSB7XG4gIGFzc2VydChoZWFkZXIgIT09IG51bGwpXG5cbiAgY29uc3QgdmFsdWVzID0gW11cblxuICBmb3IgKGxldCB2YWx1ZSBvZiBoZWFkZXIuc3BsaXQoJywnKSkge1xuICAgIHZhbHVlID0gdmFsdWUudHJpbSgpXG5cbiAgICBpZiAoIXZhbHVlLmxlbmd0aCkge1xuICAgICAgY29udGludWVcbiAgICB9IGVsc2UgaWYgKCFpc1ZhbGlkSGVhZGVyTmFtZSh2YWx1ZSkpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgdmFsdWVzLnB1c2godmFsdWUpXG4gIH1cblxuICByZXR1cm4gdmFsdWVzXG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICB1cmxFcXVhbHMsXG4gIGZpZWxkVmFsdWVzXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga0NvbnN0cnVjdCB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgdXJsRXF1YWxzLCBmaWVsZFZhbHVlczogZ2V0RmllbGRWYWx1ZXMgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IGtFbnVtZXJhYmxlUHJvcGVydHksIGlzRGlzdHVyYmVkIH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuY29uc3QgeyBrSGVhZGVyc0xpc3QgfSA9IHJlcXVpcmUoJy4uL2NvcmUvc3ltYm9scycpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsgUmVzcG9uc2UsIGNsb25lUmVzcG9uc2UgfSA9IHJlcXVpcmUoJy4uL2ZldGNoL3Jlc3BvbnNlJylcbmNvbnN0IHsgUmVxdWVzdCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvcmVxdWVzdCcpXG5jb25zdCB7IGtTdGF0ZSwga0hlYWRlcnMsIGtHdWFyZCwga1JlYWxtIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9zeW1ib2xzJylcbmNvbnN0IHsgZmV0Y2hpbmcgfSA9IHJlcXVpcmUoJy4uL2ZldGNoL2luZGV4JylcbmNvbnN0IHsgdXJsSXNIdHRwSHR0cHNTY2hlbWUsIGNyZWF0ZURlZmVycmVkUHJvbWlzZSwgcmVhZEFsbEJ5dGVzIH0gPSByZXF1aXJlKCcuLi9mZXRjaC91dGlsJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5cbi8qKlxuICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZGZuLWNhY2hlLWJhdGNoLW9wZXJhdGlvblxuICogQHR5cGVkZWYge09iamVjdH0gQ2FjaGVCYXRjaE9wZXJhdGlvblxuICogQHByb3BlcnR5IHsnZGVsZXRlJyB8ICdwdXQnfSB0eXBlXG4gKiBAcHJvcGVydHkge2FueX0gcmVxdWVzdFxuICogQHByb3BlcnR5IHthbnl9IHJlc3BvbnNlXG4gKiBAcHJvcGVydHkge2ltcG9ydCgnLi4vLi4vdHlwZXMvY2FjaGUnKS5DYWNoZVF1ZXJ5T3B0aW9uc30gb3B0aW9uc1xuICovXG5cbi8qKlxuICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZGZuLXJlcXVlc3QtcmVzcG9uc2UtbGlzdFxuICogQHR5cGVkZWYge1thbnksIGFueV1bXX0gcmVxdWVzdFJlc3BvbnNlTGlzdFxuICovXG5cbmNsYXNzIENhY2hlIHtcbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2Rmbi1yZWxldmFudC1yZXF1ZXN0LXJlc3BvbnNlLWxpc3RcbiAgICogQHR5cGUge3JlcXVlc3RSZXNwb25zZUxpc3R9XG4gICAqL1xuICAjcmVsZXZhbnRSZXF1ZXN0UmVzcG9uc2VMaXN0XG5cbiAgY29uc3RydWN0b3IgKCkge1xuICAgIGlmIChhcmd1bWVudHNbMF0gIT09IGtDb25zdHJ1Y3QpIHtcbiAgICAgIHdlYmlkbC5pbGxlZ2FsQ29uc3RydWN0b3IoKVxuICAgIH1cblxuICAgIHRoaXMuI3JlbGV2YW50UmVxdWVzdFJlc3BvbnNlTGlzdCA9IGFyZ3VtZW50c1sxXVxuICB9XG5cbiAgYXN5bmMgbWF0Y2ggKHJlcXVlc3QsIG9wdGlvbnMgPSB7fSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlKVxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdDYWNoZS5tYXRjaCcgfSlcblxuICAgIHJlcXVlc3QgPSB3ZWJpZGwuY29udmVydGVycy5SZXF1ZXN0SW5mbyhyZXF1ZXN0KVxuICAgIG9wdGlvbnMgPSB3ZWJpZGwuY29udmVydGVycy5DYWNoZVF1ZXJ5T3B0aW9ucyhvcHRpb25zKVxuXG4gICAgY29uc3QgcCA9IGF3YWl0IHRoaXMubWF0Y2hBbGwocmVxdWVzdCwgb3B0aW9ucylcblxuICAgIGlmIChwLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgcmV0dXJuIHBbMF1cbiAgfVxuXG4gIGFzeW5jIG1hdGNoQWxsIChyZXF1ZXN0ID0gdW5kZWZpbmVkLCBvcHRpb25zID0ge30pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZSlcblxuICAgIGlmIChyZXF1ZXN0ICE9PSB1bmRlZmluZWQpIHJlcXVlc3QgPSB3ZWJpZGwuY29udmVydGVycy5SZXF1ZXN0SW5mbyhyZXF1ZXN0KVxuICAgIG9wdGlvbnMgPSB3ZWJpZGwuY29udmVydGVycy5DYWNoZVF1ZXJ5T3B0aW9ucyhvcHRpb25zKVxuXG4gICAgLy8gMS5cbiAgICBsZXQgciA9IG51bGxcblxuICAgIC8vIDIuXG4gICAgaWYgKHJlcXVlc3QgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHJlcXVlc3QgaW5zdGFuY2VvZiBSZXF1ZXN0KSB7XG4gICAgICAgIC8vIDIuMS4xXG4gICAgICAgIHIgPSByZXF1ZXN0W2tTdGF0ZV1cblxuICAgICAgICAvLyAyLjEuMlxuICAgICAgICBpZiAoci5tZXRob2QgIT09ICdHRVQnICYmICFvcHRpb25zLmlnbm9yZU1ldGhvZCkge1xuICAgICAgICAgIHJldHVybiBbXVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiByZXF1ZXN0ID09PSAnc3RyaW5nJykge1xuICAgICAgICAvLyAyLjIuMVxuICAgICAgICByID0gbmV3IFJlcXVlc3QocmVxdWVzdClba1N0YXRlXVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDUuXG4gICAgLy8gNS4xXG4gICAgY29uc3QgcmVzcG9uc2VzID0gW11cblxuICAgIC8vIDUuMlxuICAgIGlmIChyZXF1ZXN0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIDUuMi4xXG4gICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiB0aGlzLiNyZWxldmFudFJlcXVlc3RSZXNwb25zZUxpc3QpIHtcbiAgICAgICAgcmVzcG9uc2VzLnB1c2gocmVxdWVzdFJlc3BvbnNlWzFdKVxuICAgICAgfVxuICAgIH0gZWxzZSB7IC8vIDUuM1xuICAgICAgLy8gNS4zLjFcbiAgICAgIGNvbnN0IHJlcXVlc3RSZXNwb25zZXMgPSB0aGlzLiNxdWVyeUNhY2hlKHIsIG9wdGlvbnMpXG5cbiAgICAgIC8vIDUuMy4yXG4gICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiByZXF1ZXN0UmVzcG9uc2VzKSB7XG4gICAgICAgIHJlc3BvbnNlcy5wdXNoKHJlcXVlc3RSZXNwb25zZVsxXSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA1LjRcbiAgICAvLyBXZSBkb24ndCBpbXBsZW1lbnQgQ09ScyBzbyB3ZSBkb24ndCBuZWVkIHRvIGxvb3Agb3ZlciB0aGUgcmVzcG9uc2VzLCB5YXkhXG5cbiAgICAvLyA1LjUuMVxuICAgIGNvbnN0IHJlc3BvbnNlTGlzdCA9IFtdXG5cbiAgICAvLyA1LjUuMlxuICAgIGZvciAoY29uc3QgcmVzcG9uc2Ugb2YgcmVzcG9uc2VzKSB7XG4gICAgICAvLyA1LjUuMi4xXG4gICAgICBjb25zdCByZXNwb25zZU9iamVjdCA9IG5ldyBSZXNwb25zZShyZXNwb25zZS5ib2R5Py5zb3VyY2UgPz8gbnVsbClcbiAgICAgIGNvbnN0IGJvZHkgPSByZXNwb25zZU9iamVjdFtrU3RhdGVdLmJvZHlcbiAgICAgIHJlc3BvbnNlT2JqZWN0W2tTdGF0ZV0gPSByZXNwb25zZVxuICAgICAgcmVzcG9uc2VPYmplY3Rba1N0YXRlXS5ib2R5ID0gYm9keVxuICAgICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tIZWFkZXJzTGlzdF0gPSByZXNwb25zZS5oZWFkZXJzTGlzdFxuICAgICAgcmVzcG9uc2VPYmplY3Rba0hlYWRlcnNdW2tHdWFyZF0gPSAnaW1tdXRhYmxlJ1xuXG4gICAgICByZXNwb25zZUxpc3QucHVzaChyZXNwb25zZU9iamVjdClcbiAgICB9XG5cbiAgICAvLyA2LlxuICAgIHJldHVybiBPYmplY3QuZnJlZXplKHJlc3BvbnNlTGlzdClcbiAgfVxuXG4gIGFzeW5jIGFkZCAocmVxdWVzdCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlKVxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdDYWNoZS5hZGQnIH0pXG5cbiAgICByZXF1ZXN0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluZm8ocmVxdWVzdClcblxuICAgIC8vIDEuXG4gICAgY29uc3QgcmVxdWVzdHMgPSBbcmVxdWVzdF1cblxuICAgIC8vIDIuXG4gICAgY29uc3QgcmVzcG9uc2VBcnJheVByb21pc2UgPSB0aGlzLmFkZEFsbChyZXF1ZXN0cylcblxuICAgIC8vIDMuXG4gICAgcmV0dXJuIGF3YWl0IHJlc3BvbnNlQXJyYXlQcm9taXNlXG4gIH1cblxuICBhc3luYyBhZGRBbGwgKHJlcXVlc3RzKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2FjaGUpXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0NhY2hlLmFkZEFsbCcgfSlcblxuICAgIHJlcXVlc3RzID0gd2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPFJlcXVlc3RJbmZvPiddKHJlcXVlc3RzKVxuXG4gICAgLy8gMS5cbiAgICBjb25zdCByZXNwb25zZVByb21pc2VzID0gW11cblxuICAgIC8vIDIuXG4gICAgY29uc3QgcmVxdWVzdExpc3QgPSBbXVxuXG4gICAgLy8gMy5cbiAgICBmb3IgKGNvbnN0IHJlcXVlc3Qgb2YgcmVxdWVzdHMpIHtcbiAgICAgIGlmICh0eXBlb2YgcmVxdWVzdCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgLy8gMy4xXG4gICAgICBjb25zdCByID0gcmVxdWVzdFtrU3RhdGVdXG5cbiAgICAgIC8vIDMuMlxuICAgICAgaWYgKCF1cmxJc0h0dHBIdHRwc1NjaGVtZShyLnVybCkgfHwgci5tZXRob2QgIT09ICdHRVQnKSB7XG4gICAgICAgIHRocm93IHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICBoZWFkZXI6ICdDYWNoZS5hZGRBbGwnLFxuICAgICAgICAgIG1lc3NhZ2U6ICdFeHBlY3RlZCBodHRwL3Mgc2NoZW1lIHdoZW4gbWV0aG9kIGlzIG5vdCBHRVQuJ1xuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDQuXG4gICAgLyoqIEB0eXBlIHtSZXR1cm5UeXBlPHR5cGVvZiBmZXRjaGluZz5bXX0gKi9cbiAgICBjb25zdCBmZXRjaENvbnRyb2xsZXJzID0gW11cblxuICAgIC8vIDUuXG4gICAgZm9yIChjb25zdCByZXF1ZXN0IG9mIHJlcXVlc3RzKSB7XG4gICAgICAvLyA1LjFcbiAgICAgIGNvbnN0IHIgPSBuZXcgUmVxdWVzdChyZXF1ZXN0KVtrU3RhdGVdXG5cbiAgICAgIC8vIDUuMlxuICAgICAgaWYgKCF1cmxJc0h0dHBIdHRwc1NjaGVtZShyLnVybCkpIHtcbiAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLmFkZEFsbCcsXG4gICAgICAgICAgbWVzc2FnZTogJ0V4cGVjdGVkIGh0dHAvcyBzY2hlbWUuJ1xuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICAvLyA1LjRcbiAgICAgIHIuaW5pdGlhdG9yID0gJ2ZldGNoJ1xuICAgICAgci5kZXN0aW5hdGlvbiA9ICdzdWJyZXNvdXJjZSdcblxuICAgICAgLy8gNS41XG4gICAgICByZXF1ZXN0TGlzdC5wdXNoKHIpXG5cbiAgICAgIC8vIDUuNlxuICAgICAgY29uc3QgcmVzcG9uc2VQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgICAgLy8gNS43XG4gICAgICBmZXRjaENvbnRyb2xsZXJzLnB1c2goZmV0Y2hpbmcoe1xuICAgICAgICByZXF1ZXN0OiByLFxuICAgICAgICBkaXNwYXRjaGVyOiBnZXRHbG9iYWxEaXNwYXRjaGVyKCksXG4gICAgICAgIHByb2Nlc3NSZXNwb25zZSAocmVzcG9uc2UpIHtcbiAgICAgICAgICAvLyAxLlxuICAgICAgICAgIGlmIChyZXNwb25zZS50eXBlID09PSAnZXJyb3InIHx8IHJlc3BvbnNlLnN0YXR1cyA9PT0gMjA2IHx8IHJlc3BvbnNlLnN0YXR1cyA8IDIwMCB8fCByZXNwb25zZS5zdGF0dXMgPiAyOTkpIHtcbiAgICAgICAgICAgIHJlc3BvbnNlUHJvbWlzZS5yZWplY3Qod2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgICBoZWFkZXI6ICdDYWNoZS5hZGRBbGwnLFxuICAgICAgICAgICAgICBtZXNzYWdlOiAnUmVjZWl2ZWQgYW4gaW52YWxpZCBzdGF0dXMgY29kZSBvciB0aGUgcmVxdWVzdCBmYWlsZWQuJ1xuICAgICAgICAgICAgfSkpXG4gICAgICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5oZWFkZXJzTGlzdC5jb250YWlucygndmFyeScpKSB7IC8vIDIuXG4gICAgICAgICAgICAvLyAyLjFcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkVmFsdWVzID0gZ2V0RmllbGRWYWx1ZXMocmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCd2YXJ5JykpXG5cbiAgICAgICAgICAgIC8vIDIuMlxuICAgICAgICAgICAgZm9yIChjb25zdCBmaWVsZFZhbHVlIG9mIGZpZWxkVmFsdWVzKSB7XG4gICAgICAgICAgICAgIC8vIDIuMi4xXG4gICAgICAgICAgICAgIGlmIChmaWVsZFZhbHVlID09PSAnKicpIHtcbiAgICAgICAgICAgICAgICByZXNwb25zZVByb21pc2UucmVqZWN0KHdlYmlkbC5lcnJvcnMuZXhjZXB0aW9uKHtcbiAgICAgICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLmFkZEFsbCcsXG4gICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnaW52YWxpZCB2YXJ5IGZpZWxkIHZhbHVlJ1xuICAgICAgICAgICAgICAgIH0pKVxuXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBjb250cm9sbGVyIG9mIGZldGNoQ29udHJvbGxlcnMpIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRyb2xsZXIuYWJvcnQoKVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBwcm9jZXNzUmVzcG9uc2VFbmRPZkJvZHkgKHJlc3BvbnNlKSB7XG4gICAgICAgICAgLy8gMS5cbiAgICAgICAgICBpZiAocmVzcG9uc2UuYWJvcnRlZCkge1xuICAgICAgICAgICAgcmVzcG9uc2VQcm9taXNlLnJlamVjdChuZXcgRE9NRXhjZXB0aW9uKCdhYm9ydGVkJywgJ0Fib3J0RXJyb3InKSlcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDIuXG4gICAgICAgICAgcmVzcG9uc2VQcm9taXNlLnJlc29sdmUocmVzcG9uc2UpXG4gICAgICAgIH1cbiAgICAgIH0pKVxuXG4gICAgICAvLyA1LjhcbiAgICAgIHJlc3BvbnNlUHJvbWlzZXMucHVzaChyZXNwb25zZVByb21pc2UucHJvbWlzZSlcbiAgICB9XG5cbiAgICAvLyA2LlxuICAgIGNvbnN0IHAgPSBQcm9taXNlLmFsbChyZXNwb25zZVByb21pc2VzKVxuXG4gICAgLy8gNy5cbiAgICBjb25zdCByZXNwb25zZXMgPSBhd2FpdCBwXG5cbiAgICAvLyA3LjFcbiAgICBjb25zdCBvcGVyYXRpb25zID0gW11cblxuICAgIC8vIDcuMlxuICAgIGxldCBpbmRleCA9IDBcblxuICAgIC8vIDcuM1xuICAgIGZvciAoY29uc3QgcmVzcG9uc2Ugb2YgcmVzcG9uc2VzKSB7XG4gICAgICAvLyA3LjMuMVxuICAgICAgLyoqIEB0eXBlIHtDYWNoZUJhdGNoT3BlcmF0aW9ufSAqL1xuICAgICAgY29uc3Qgb3BlcmF0aW9uID0ge1xuICAgICAgICB0eXBlOiAncHV0JywgLy8gNy4zLjJcbiAgICAgICAgcmVxdWVzdDogcmVxdWVzdExpc3RbaW5kZXhdLCAvLyA3LjMuM1xuICAgICAgICByZXNwb25zZSAvLyA3LjMuNFxuICAgICAgfVxuXG4gICAgICBvcGVyYXRpb25zLnB1c2gob3BlcmF0aW9uKSAvLyA3LjMuNVxuXG4gICAgICBpbmRleCsrIC8vIDcuMy42XG4gICAgfVxuXG4gICAgLy8gNy41XG4gICAgY29uc3QgY2FjaGVKb2JQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDcuNi4xXG4gICAgbGV0IGVycm9yRGF0YSA9IG51bGxcblxuICAgIC8vIDcuNi4yXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuI2JhdGNoQ2FjaGVPcGVyYXRpb25zKG9wZXJhdGlvbnMpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgZXJyb3JEYXRhID0gZVxuICAgIH1cblxuICAgIC8vIDcuNi4zXG4gICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgLy8gNy42LjMuMVxuICAgICAgaWYgKGVycm9yRGF0YSA9PT0gbnVsbCkge1xuICAgICAgICBjYWNoZUpvYlByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyA3LjYuMy4yXG4gICAgICAgIGNhY2hlSm9iUHJvbWlzZS5yZWplY3QoZXJyb3JEYXRhKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICAvLyA3LjdcbiAgICByZXR1cm4gY2FjaGVKb2JQcm9taXNlLnByb21pc2VcbiAgfVxuXG4gIGFzeW5jIHB1dCAocmVxdWVzdCwgcmVzcG9uc2UpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDIsIHsgaGVhZGVyOiAnQ2FjaGUucHV0JyB9KVxuXG4gICAgcmVxdWVzdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvKHJlcXVlc3QpXG4gICAgcmVzcG9uc2UgPSB3ZWJpZGwuY29udmVydGVycy5SZXNwb25zZShyZXNwb25zZSlcblxuICAgIC8vIDEuXG4gICAgbGV0IGlubmVyUmVxdWVzdCA9IG51bGxcblxuICAgIC8vIDIuXG4gICAgaWYgKHJlcXVlc3QgaW5zdGFuY2VvZiBSZXF1ZXN0KSB7XG4gICAgICBpbm5lclJlcXVlc3QgPSByZXF1ZXN0W2tTdGF0ZV1cbiAgICB9IGVsc2UgeyAvLyAzLlxuICAgICAgaW5uZXJSZXF1ZXN0ID0gbmV3IFJlcXVlc3QocmVxdWVzdClba1N0YXRlXVxuICAgIH1cblxuICAgIC8vIDQuXG4gICAgaWYgKCF1cmxJc0h0dHBIdHRwc1NjaGVtZShpbm5lclJlcXVlc3QudXJsKSB8fCBpbm5lclJlcXVlc3QubWV0aG9kICE9PSAnR0VUJykge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdDYWNoZS5wdXQnLFxuICAgICAgICBtZXNzYWdlOiAnRXhwZWN0ZWQgYW4gaHR0cC9zIHNjaGVtZSB3aGVuIG1ldGhvZCBpcyBub3QgR0VUJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyA1LlxuICAgIGNvbnN0IGlubmVyUmVzcG9uc2UgPSByZXNwb25zZVtrU3RhdGVdXG5cbiAgICAvLyA2LlxuICAgIGlmIChpbm5lclJlc3BvbnNlLnN0YXR1cyA9PT0gMjA2KSB7XG4gICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgIGhlYWRlcjogJ0NhY2hlLnB1dCcsXG4gICAgICAgIG1lc3NhZ2U6ICdHb3QgMjA2IHN0YXR1cydcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gNy5cbiAgICBpZiAoaW5uZXJSZXNwb25zZS5oZWFkZXJzTGlzdC5jb250YWlucygndmFyeScpKSB7XG4gICAgICAvLyA3LjEuXG4gICAgICBjb25zdCBmaWVsZFZhbHVlcyA9IGdldEZpZWxkVmFsdWVzKGlubmVyUmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCd2YXJ5JykpXG5cbiAgICAgIC8vIDcuMi5cbiAgICAgIGZvciAoY29uc3QgZmllbGRWYWx1ZSBvZiBmaWVsZFZhbHVlcykge1xuICAgICAgICAvLyA3LjIuMVxuICAgICAgICBpZiAoZmllbGRWYWx1ZSA9PT0gJyonKSB7XG4gICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgaGVhZGVyOiAnQ2FjaGUucHV0JyxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdHb3QgKiB2YXJ5IGZpZWxkIHZhbHVlJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA4LlxuICAgIGlmIChpbm5lclJlc3BvbnNlLmJvZHkgJiYgKGlzRGlzdHVyYmVkKGlubmVyUmVzcG9uc2UuYm9keS5zdHJlYW0pIHx8IGlubmVyUmVzcG9uc2UuYm9keS5zdHJlYW0ubG9ja2VkKSkge1xuICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICBoZWFkZXI6ICdDYWNoZS5wdXQnLFxuICAgICAgICBtZXNzYWdlOiAnUmVzcG9uc2UgYm9keSBpcyBsb2NrZWQgb3IgZGlzdHVyYmVkJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICAvLyA5LlxuICAgIGNvbnN0IGNsb25lZFJlc3BvbnNlID0gY2xvbmVSZXNwb25zZShpbm5lclJlc3BvbnNlKVxuXG4gICAgLy8gMTAuXG4gICAgY29uc3QgYm9keVJlYWRQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDExLlxuICAgIGlmIChpbm5lclJlc3BvbnNlLmJvZHkgIT0gbnVsbCkge1xuICAgICAgLy8gMTEuMVxuICAgICAgY29uc3Qgc3RyZWFtID0gaW5uZXJSZXNwb25zZS5ib2R5LnN0cmVhbVxuXG4gICAgICAvLyAxMS4yXG4gICAgICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcblxuICAgICAgLy8gMTEuM1xuICAgICAgcmVhZEFsbEJ5dGVzKHJlYWRlcikudGhlbihib2R5UmVhZFByb21pc2UucmVzb2x2ZSwgYm9keVJlYWRQcm9taXNlLnJlamVjdClcbiAgICB9IGVsc2Uge1xuICAgICAgYm9keVJlYWRQcm9taXNlLnJlc29sdmUodW5kZWZpbmVkKVxuICAgIH1cblxuICAgIC8vIDEyLlxuICAgIC8qKiBAdHlwZSB7Q2FjaGVCYXRjaE9wZXJhdGlvbltdfSAqL1xuICAgIGNvbnN0IG9wZXJhdGlvbnMgPSBbXVxuXG4gICAgLy8gMTMuXG4gICAgLyoqIEB0eXBlIHtDYWNoZUJhdGNoT3BlcmF0aW9ufSAqL1xuICAgIGNvbnN0IG9wZXJhdGlvbiA9IHtcbiAgICAgIHR5cGU6ICdwdXQnLCAvLyAxNC5cbiAgICAgIHJlcXVlc3Q6IGlubmVyUmVxdWVzdCwgLy8gMTUuXG4gICAgICByZXNwb25zZTogY2xvbmVkUmVzcG9uc2UgLy8gMTYuXG4gICAgfVxuXG4gICAgLy8gMTcuXG4gICAgb3BlcmF0aW9ucy5wdXNoKG9wZXJhdGlvbilcblxuICAgIC8vIDE5LlxuICAgIGNvbnN0IGJ5dGVzID0gYXdhaXQgYm9keVJlYWRQcm9taXNlLnByb21pc2VcblxuICAgIGlmIChjbG9uZWRSZXNwb25zZS5ib2R5ICE9IG51bGwpIHtcbiAgICAgIGNsb25lZFJlc3BvbnNlLmJvZHkuc291cmNlID0gYnl0ZXNcbiAgICB9XG5cbiAgICAvLyAxOS4xXG4gICAgY29uc3QgY2FjaGVKb2JQcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDE5LjIuMVxuICAgIGxldCBlcnJvckRhdGEgPSBudWxsXG5cbiAgICAvLyAxOS4yLjJcbiAgICB0cnkge1xuICAgICAgdGhpcy4jYmF0Y2hDYWNoZU9wZXJhdGlvbnMob3BlcmF0aW9ucylcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBlcnJvckRhdGEgPSBlXG4gICAgfVxuXG4gICAgLy8gMTkuMi4zXG4gICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgLy8gMTkuMi4zLjFcbiAgICAgIGlmIChlcnJvckRhdGEgPT09IG51bGwpIHtcbiAgICAgICAgY2FjaGVKb2JQcm9taXNlLnJlc29sdmUoKVxuICAgICAgfSBlbHNlIHsgLy8gMTkuMi4zLjJcbiAgICAgICAgY2FjaGVKb2JQcm9taXNlLnJlamVjdChlcnJvckRhdGEpXG4gICAgICB9XG4gICAgfSlcblxuICAgIHJldHVybiBjYWNoZUpvYlByb21pc2UucHJvbWlzZVxuICB9XG5cbiAgYXN5bmMgZGVsZXRlIChyZXF1ZXN0LCBvcHRpb25zID0ge30pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2FjaGUuZGVsZXRlJyB9KVxuXG4gICAgcmVxdWVzdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvKHJlcXVlc3QpXG4gICAgb3B0aW9ucyA9IHdlYmlkbC5jb252ZXJ0ZXJzLkNhY2hlUXVlcnlPcHRpb25zKG9wdGlvbnMpXG5cbiAgICAvKipcbiAgICAgKiBAdHlwZSB7UmVxdWVzdH1cbiAgICAgKi9cbiAgICBsZXQgciA9IG51bGxcblxuICAgIGlmIChyZXF1ZXN0IGluc3RhbmNlb2YgUmVxdWVzdCkge1xuICAgICAgciA9IHJlcXVlc3Rba1N0YXRlXVxuXG4gICAgICBpZiAoci5tZXRob2QgIT09ICdHRVQnICYmICFvcHRpb25zLmlnbm9yZU1ldGhvZCkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0KHR5cGVvZiByZXF1ZXN0ID09PSAnc3RyaW5nJylcblxuICAgICAgciA9IG5ldyBSZXF1ZXN0KHJlcXVlc3QpW2tTdGF0ZV1cbiAgICB9XG5cbiAgICAvKiogQHR5cGUge0NhY2hlQmF0Y2hPcGVyYXRpb25bXX0gKi9cbiAgICBjb25zdCBvcGVyYXRpb25zID0gW11cblxuICAgIC8qKiBAdHlwZSB7Q2FjaGVCYXRjaE9wZXJhdGlvbn0gKi9cbiAgICBjb25zdCBvcGVyYXRpb24gPSB7XG4gICAgICB0eXBlOiAnZGVsZXRlJyxcbiAgICAgIHJlcXVlc3Q6IHIsXG4gICAgICBvcHRpb25zXG4gICAgfVxuXG4gICAgb3BlcmF0aW9ucy5wdXNoKG9wZXJhdGlvbilcblxuICAgIGNvbnN0IGNhY2hlSm9iUHJvbWlzZSA9IGNyZWF0ZURlZmVycmVkUHJvbWlzZSgpXG5cbiAgICBsZXQgZXJyb3JEYXRhID0gbnVsbFxuICAgIGxldCByZXF1ZXN0UmVzcG9uc2VzXG5cbiAgICB0cnkge1xuICAgICAgcmVxdWVzdFJlc3BvbnNlcyA9IHRoaXMuI2JhdGNoQ2FjaGVPcGVyYXRpb25zKG9wZXJhdGlvbnMpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgZXJyb3JEYXRhID0gZVxuICAgIH1cblxuICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgIGlmIChlcnJvckRhdGEgPT09IG51bGwpIHtcbiAgICAgICAgY2FjaGVKb2JQcm9taXNlLnJlc29sdmUoISFyZXF1ZXN0UmVzcG9uc2VzPy5sZW5ndGgpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjYWNoZUpvYlByb21pc2UucmVqZWN0KGVycm9yRGF0YSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgcmV0dXJuIGNhY2hlSm9iUHJvbWlzZS5wcm9taXNlXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZG9tLWNhY2hlLWtleXNcbiAgICogQHBhcmFtIHthbnl9IHJlcXVlc3RcbiAgICogQHBhcmFtIHtpbXBvcnQoJy4uLy4uL3R5cGVzL2NhY2hlJykuQ2FjaGVRdWVyeU9wdGlvbnN9IG9wdGlvbnNcbiAgICogQHJldHVybnMge3JlYWRvbmx5IFJlcXVlc3RbXX1cbiAgICovXG4gIGFzeW5jIGtleXMgKHJlcXVlc3QgPSB1bmRlZmluZWQsIG9wdGlvbnMgPSB7fSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlKVxuXG4gICAgaWYgKHJlcXVlc3QgIT09IHVuZGVmaW5lZCkgcmVxdWVzdCA9IHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvKHJlcXVlc3QpXG4gICAgb3B0aW9ucyA9IHdlYmlkbC5jb252ZXJ0ZXJzLkNhY2hlUXVlcnlPcHRpb25zKG9wdGlvbnMpXG5cbiAgICAvLyAxLlxuICAgIGxldCByID0gbnVsbFxuXG4gICAgLy8gMi5cbiAgICBpZiAocmVxdWVzdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyAyLjFcbiAgICAgIGlmIChyZXF1ZXN0IGluc3RhbmNlb2YgUmVxdWVzdCkge1xuICAgICAgICAvLyAyLjEuMVxuICAgICAgICByID0gcmVxdWVzdFtrU3RhdGVdXG5cbiAgICAgICAgLy8gMi4xLjJcbiAgICAgICAgaWYgKHIubWV0aG9kICE9PSAnR0VUJyAmJiAhb3B0aW9ucy5pZ25vcmVNZXRob2QpIHtcbiAgICAgICAgICByZXR1cm4gW11cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVxdWVzdCA9PT0gJ3N0cmluZycpIHsgLy8gMi4yXG4gICAgICAgIHIgPSBuZXcgUmVxdWVzdChyZXF1ZXN0KVtrU3RhdGVdXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNC5cbiAgICBjb25zdCBwcm9taXNlID0gY3JlYXRlRGVmZXJyZWRQcm9taXNlKClcblxuICAgIC8vIDUuXG4gICAgLy8gNS4xXG4gICAgY29uc3QgcmVxdWVzdHMgPSBbXVxuXG4gICAgLy8gNS4yXG4gICAgaWYgKHJlcXVlc3QgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gNS4yLjFcbiAgICAgIGZvciAoY29uc3QgcmVxdWVzdFJlc3BvbnNlIG9mIHRoaXMuI3JlbGV2YW50UmVxdWVzdFJlc3BvbnNlTGlzdCkge1xuICAgICAgICAvLyA1LjIuMS4xXG4gICAgICAgIHJlcXVlc3RzLnB1c2gocmVxdWVzdFJlc3BvbnNlWzBdKVxuICAgICAgfVxuICAgIH0gZWxzZSB7IC8vIDUuM1xuICAgICAgLy8gNS4zLjFcbiAgICAgIGNvbnN0IHJlcXVlc3RSZXNwb25zZXMgPSB0aGlzLiNxdWVyeUNhY2hlKHIsIG9wdGlvbnMpXG5cbiAgICAgIC8vIDUuMy4yXG4gICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiByZXF1ZXN0UmVzcG9uc2VzKSB7XG4gICAgICAgIC8vIDUuMy4yLjFcbiAgICAgICAgcmVxdWVzdHMucHVzaChyZXF1ZXN0UmVzcG9uc2VbMF0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gNS40XG4gICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgLy8gNS40LjFcbiAgICAgIGNvbnN0IHJlcXVlc3RMaXN0ID0gW11cblxuICAgICAgLy8gNS40LjJcbiAgICAgIGZvciAoY29uc3QgcmVxdWVzdCBvZiByZXF1ZXN0cykge1xuICAgICAgICBjb25zdCByZXF1ZXN0T2JqZWN0ID0gbmV3IFJlcXVlc3QoJ2h0dHBzOi8vYScpXG4gICAgICAgIHJlcXVlc3RPYmplY3Rba1N0YXRlXSA9IHJlcXVlc3RcbiAgICAgICAgcmVxdWVzdE9iamVjdFtrSGVhZGVyc11ba0hlYWRlcnNMaXN0XSA9IHJlcXVlc3QuaGVhZGVyc0xpc3RcbiAgICAgICAgcmVxdWVzdE9iamVjdFtrSGVhZGVyc11ba0d1YXJkXSA9ICdpbW11dGFibGUnXG4gICAgICAgIHJlcXVlc3RPYmplY3Rba1JlYWxtXSA9IHJlcXVlc3QuY2xpZW50XG5cbiAgICAgICAgLy8gNS40LjIuMVxuICAgICAgICByZXF1ZXN0TGlzdC5wdXNoKHJlcXVlc3RPYmplY3QpXG4gICAgICB9XG5cbiAgICAgIC8vIDUuNC4zXG4gICAgICBwcm9taXNlLnJlc29sdmUoT2JqZWN0LmZyZWV6ZShyZXF1ZXN0TGlzdCkpXG4gICAgfSlcblxuICAgIHJldHVybiBwcm9taXNlLnByb21pc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNiYXRjaC1jYWNoZS1vcGVyYXRpb25zLWFsZ29yaXRobVxuICAgKiBAcGFyYW0ge0NhY2hlQmF0Y2hPcGVyYXRpb25bXX0gb3BlcmF0aW9uc1xuICAgKiBAcmV0dXJucyB7cmVxdWVzdFJlc3BvbnNlTGlzdH1cbiAgICovXG4gICNiYXRjaENhY2hlT3BlcmF0aW9ucyAob3BlcmF0aW9ucykge1xuICAgIC8vIDEuXG4gICAgY29uc3QgY2FjaGUgPSB0aGlzLiNyZWxldmFudFJlcXVlc3RSZXNwb25zZUxpc3RcblxuICAgIC8vIDIuXG4gICAgY29uc3QgYmFja3VwQ2FjaGUgPSBbLi4uY2FjaGVdXG5cbiAgICAvLyAzLlxuICAgIGNvbnN0IGFkZGVkSXRlbXMgPSBbXVxuXG4gICAgLy8gNC4xXG4gICAgY29uc3QgcmVzdWx0TGlzdCA9IFtdXG5cbiAgICB0cnkge1xuICAgICAgLy8gNC4yXG4gICAgICBmb3IgKGNvbnN0IG9wZXJhdGlvbiBvZiBvcGVyYXRpb25zKSB7XG4gICAgICAgIC8vIDQuMi4xXG4gICAgICAgIGlmIChvcGVyYXRpb24udHlwZSAhPT0gJ2RlbGV0ZScgJiYgb3BlcmF0aW9uLnR5cGUgIT09ICdwdXQnKSB7XG4gICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgaGVhZGVyOiAnQ2FjaGUuI2JhdGNoQ2FjaGVPcGVyYXRpb25zJyxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdvcGVyYXRpb24gdHlwZSBkb2VzIG5vdCBtYXRjaCBcImRlbGV0ZVwiIG9yIFwicHV0XCInXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDQuMi4yXG4gICAgICAgIGlmIChvcGVyYXRpb24udHlwZSA9PT0gJ2RlbGV0ZScgJiYgb3BlcmF0aW9uLnJlc3BvbnNlICE9IG51bGwpIHtcbiAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICBoZWFkZXI6ICdDYWNoZS4jYmF0Y2hDYWNoZU9wZXJhdGlvbnMnLFxuICAgICAgICAgICAgbWVzc2FnZTogJ2RlbGV0ZSBvcGVyYXRpb24gc2hvdWxkIG5vdCBoYXZlIGFuIGFzc29jaWF0ZWQgcmVzcG9uc2UnXG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDQuMi4zXG4gICAgICAgIGlmICh0aGlzLiNxdWVyeUNhY2hlKG9wZXJhdGlvbi5yZXF1ZXN0LCBvcGVyYXRpb24ub3B0aW9ucywgYWRkZWRJdGVtcykubGVuZ3RoKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignPz8/JywgJ0ludmFsaWRTdGF0ZUVycm9yJylcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDQuMi40XG4gICAgICAgIGxldCByZXF1ZXN0UmVzcG9uc2VzXG5cbiAgICAgICAgLy8gNC4yLjVcbiAgICAgICAgaWYgKG9wZXJhdGlvbi50eXBlID09PSAnZGVsZXRlJykge1xuICAgICAgICAgIC8vIDQuMi41LjFcbiAgICAgICAgICByZXF1ZXN0UmVzcG9uc2VzID0gdGhpcy4jcXVlcnlDYWNoZShvcGVyYXRpb24ucmVxdWVzdCwgb3BlcmF0aW9uLm9wdGlvbnMpXG5cbiAgICAgICAgICAvLyBUT0RPOiB0aGUgc3BlYyBpcyB3cm9uZywgdGhpcyBpcyBuZWVkZWQgdG8gcGFzcyBXUFRzXG4gICAgICAgICAgaWYgKHJlcXVlc3RSZXNwb25zZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gW11cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyA0LjIuNS4yXG4gICAgICAgICAgZm9yIChjb25zdCByZXF1ZXN0UmVzcG9uc2Ugb2YgcmVxdWVzdFJlc3BvbnNlcykge1xuICAgICAgICAgICAgY29uc3QgaWR4ID0gY2FjaGUuaW5kZXhPZihyZXF1ZXN0UmVzcG9uc2UpXG4gICAgICAgICAgICBhc3NlcnQoaWR4ICE9PSAtMSlcblxuICAgICAgICAgICAgLy8gNC4yLjUuMi4xXG4gICAgICAgICAgICBjYWNoZS5zcGxpY2UoaWR4LCAxKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChvcGVyYXRpb24udHlwZSA9PT0gJ3B1dCcpIHsgLy8gNC4yLjZcbiAgICAgICAgICAvLyA0LjIuNi4xXG4gICAgICAgICAgaWYgKG9wZXJhdGlvbi5yZXNwb25zZSA9PSBudWxsKSB7XG4gICAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLiNiYXRjaENhY2hlT3BlcmF0aW9ucycsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdwdXQgb3BlcmF0aW9uIHNob3VsZCBoYXZlIGFuIGFzc29jaWF0ZWQgcmVzcG9uc2UnXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuMi42LjJcbiAgICAgICAgICBjb25zdCByID0gb3BlcmF0aW9uLnJlcXVlc3RcblxuICAgICAgICAgIC8vIDQuMi42LjNcbiAgICAgICAgICBpZiAoIXVybElzSHR0cEh0dHBzU2NoZW1lKHIudXJsKSkge1xuICAgICAgICAgICAgdGhyb3cgd2ViaWRsLmVycm9ycy5leGNlcHRpb24oe1xuICAgICAgICAgICAgICBoZWFkZXI6ICdDYWNoZS4jYmF0Y2hDYWNoZU9wZXJhdGlvbnMnLFxuICAgICAgICAgICAgICBtZXNzYWdlOiAnZXhwZWN0ZWQgaHR0cCBvciBodHRwcyBzY2hlbWUnXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuMi42LjRcbiAgICAgICAgICBpZiAoci5tZXRob2QgIT09ICdHRVQnKSB7XG4gICAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLiNiYXRjaENhY2hlT3BlcmF0aW9ucycsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdub3QgZ2V0IG1ldGhvZCdcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gNC4yLjYuNVxuICAgICAgICAgIGlmIChvcGVyYXRpb24ub3B0aW9ucyAhPSBudWxsKSB7XG4gICAgICAgICAgICB0aHJvdyB3ZWJpZGwuZXJyb3JzLmV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIGhlYWRlcjogJ0NhY2hlLiNiYXRjaENhY2hlT3BlcmF0aW9ucycsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdvcHRpb25zIG11c3Qgbm90IGJlIGRlZmluZWQnXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIDQuMi42LjZcbiAgICAgICAgICByZXF1ZXN0UmVzcG9uc2VzID0gdGhpcy4jcXVlcnlDYWNoZShvcGVyYXRpb24ucmVxdWVzdClcblxuICAgICAgICAgIC8vIDQuMi42LjdcbiAgICAgICAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiByZXF1ZXN0UmVzcG9uc2VzKSB7XG4gICAgICAgICAgICBjb25zdCBpZHggPSBjYWNoZS5pbmRleE9mKHJlcXVlc3RSZXNwb25zZSlcbiAgICAgICAgICAgIGFzc2VydChpZHggIT09IC0xKVxuXG4gICAgICAgICAgICAvLyA0LjIuNi43LjFcbiAgICAgICAgICAgIGNhY2hlLnNwbGljZShpZHgsIDEpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gNC4yLjYuOFxuICAgICAgICAgIGNhY2hlLnB1c2goW29wZXJhdGlvbi5yZXF1ZXN0LCBvcGVyYXRpb24ucmVzcG9uc2VdKVxuXG4gICAgICAgICAgLy8gNC4yLjYuMTBcbiAgICAgICAgICBhZGRlZEl0ZW1zLnB1c2goW29wZXJhdGlvbi5yZXF1ZXN0LCBvcGVyYXRpb24ucmVzcG9uc2VdKVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gNC4yLjdcbiAgICAgICAgcmVzdWx0TGlzdC5wdXNoKFtvcGVyYXRpb24ucmVxdWVzdCwgb3BlcmF0aW9uLnJlc3BvbnNlXSlcbiAgICAgIH1cblxuICAgICAgLy8gNC4zXG4gICAgICByZXR1cm4gcmVzdWx0TGlzdFxuICAgIH0gY2F0Y2ggKGUpIHsgLy8gNS5cbiAgICAgIC8vIDUuMVxuICAgICAgdGhpcy4jcmVsZXZhbnRSZXF1ZXN0UmVzcG9uc2VMaXN0Lmxlbmd0aCA9IDBcblxuICAgICAgLy8gNS4yXG4gICAgICB0aGlzLiNyZWxldmFudFJlcXVlc3RSZXNwb25zZUxpc3QgPSBiYWNrdXBDYWNoZVxuXG4gICAgICAvLyA1LjNcbiAgICAgIHRocm93IGVcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jcXVlcnktY2FjaGVcbiAgICogQHBhcmFtIHthbnl9IHJlcXVlc3RRdWVyeVxuICAgKiBAcGFyYW0ge2ltcG9ydCgnLi4vLi4vdHlwZXMvY2FjaGUnKS5DYWNoZVF1ZXJ5T3B0aW9uc30gb3B0aW9uc1xuICAgKiBAcGFyYW0ge3JlcXVlc3RSZXNwb25zZUxpc3R9IHRhcmdldFN0b3JhZ2VcbiAgICogQHJldHVybnMge3JlcXVlc3RSZXNwb25zZUxpc3R9XG4gICAqL1xuICAjcXVlcnlDYWNoZSAocmVxdWVzdFF1ZXJ5LCBvcHRpb25zLCB0YXJnZXRTdG9yYWdlKSB7XG4gICAgLyoqIEB0eXBlIHtyZXF1ZXN0UmVzcG9uc2VMaXN0fSAqL1xuICAgIGNvbnN0IHJlc3VsdExpc3QgPSBbXVxuXG4gICAgY29uc3Qgc3RvcmFnZSA9IHRhcmdldFN0b3JhZ2UgPz8gdGhpcy4jcmVsZXZhbnRSZXF1ZXN0UmVzcG9uc2VMaXN0XG5cbiAgICBmb3IgKGNvbnN0IHJlcXVlc3RSZXNwb25zZSBvZiBzdG9yYWdlKSB7XG4gICAgICBjb25zdCBbY2FjaGVkUmVxdWVzdCwgY2FjaGVkUmVzcG9uc2VdID0gcmVxdWVzdFJlc3BvbnNlXG4gICAgICBpZiAodGhpcy4jcmVxdWVzdE1hdGNoZXNDYWNoZWRJdGVtKHJlcXVlc3RRdWVyeSwgY2FjaGVkUmVxdWVzdCwgY2FjaGVkUmVzcG9uc2UsIG9wdGlvbnMpKSB7XG4gICAgICAgIHJlc3VsdExpc3QucHVzaChyZXF1ZXN0UmVzcG9uc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdExpc3RcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNyZXF1ZXN0LW1hdGNoZXMtY2FjaGVkLWl0ZW0tYWxnb3JpdGhtXG4gICAqIEBwYXJhbSB7YW55fSByZXF1ZXN0UXVlcnlcbiAgICogQHBhcmFtIHthbnl9IHJlcXVlc3RcbiAgICogQHBhcmFtIHthbnkgfCBudWxsfSByZXNwb25zZVxuICAgKiBAcGFyYW0ge2ltcG9ydCgnLi4vLi4vdHlwZXMvY2FjaGUnKS5DYWNoZVF1ZXJ5T3B0aW9ucyB8IHVuZGVmaW5lZH0gb3B0aW9uc1xuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gICNyZXF1ZXN0TWF0Y2hlc0NhY2hlZEl0ZW0gKHJlcXVlc3RRdWVyeSwgcmVxdWVzdCwgcmVzcG9uc2UgPSBudWxsLCBvcHRpb25zKSB7XG4gICAgLy8gaWYgKG9wdGlvbnM/Lmlnbm9yZU1ldGhvZCA9PT0gZmFsc2UgJiYgcmVxdWVzdC5tZXRob2QgPT09ICdHRVQnKSB7XG4gICAgLy8gICByZXR1cm4gZmFsc2VcbiAgICAvLyB9XG5cbiAgICBjb25zdCBxdWVyeVVSTCA9IG5ldyBVUkwocmVxdWVzdFF1ZXJ5LnVybClcblxuICAgIGNvbnN0IGNhY2hlZFVSTCA9IG5ldyBVUkwocmVxdWVzdC51cmwpXG5cbiAgICBpZiAob3B0aW9ucz8uaWdub3JlU2VhcmNoKSB7XG4gICAgICBjYWNoZWRVUkwuc2VhcmNoID0gJydcblxuICAgICAgcXVlcnlVUkwuc2VhcmNoID0gJydcbiAgICB9XG5cbiAgICBpZiAoIXVybEVxdWFscyhxdWVyeVVSTCwgY2FjaGVkVVJMLCB0cnVlKSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgcmVzcG9uc2UgPT0gbnVsbCB8fFxuICAgICAgb3B0aW9ucz8uaWdub3JlVmFyeSB8fFxuICAgICAgIXJlc3BvbnNlLmhlYWRlcnNMaXN0LmNvbnRhaW5zKCd2YXJ5JylcbiAgICApIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRWYWx1ZXMgPSBnZXRGaWVsZFZhbHVlcyhyZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ3ZhcnknKSlcblxuICAgIGZvciAoY29uc3QgZmllbGRWYWx1ZSBvZiBmaWVsZFZhbHVlcykge1xuICAgICAgaWYgKGZpZWxkVmFsdWUgPT09ICcqJykge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVxdWVzdFZhbHVlID0gcmVxdWVzdC5oZWFkZXJzTGlzdC5nZXQoZmllbGRWYWx1ZSlcbiAgICAgIGNvbnN0IHF1ZXJ5VmFsdWUgPSByZXF1ZXN0UXVlcnkuaGVhZGVyc0xpc3QuZ2V0KGZpZWxkVmFsdWUpXG5cbiAgICAgIC8vIElmIG9uZSBoYXMgdGhlIGhlYWRlciBhbmQgdGhlIG90aGVyIGRvZXNuJ3QsIG9yIG9uZSBoYXNcbiAgICAgIC8vIGEgZGlmZmVyZW50IHZhbHVlIHRoYW4gdGhlIG90aGVyLCByZXR1cm4gZmFsc2VcbiAgICAgIGlmIChyZXF1ZXN0VmFsdWUgIT09IHF1ZXJ5VmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWVcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhDYWNoZS5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0NhY2hlJyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSxcbiAgbWF0Y2g6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG1hdGNoQWxsOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBhZGQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGFkZEFsbDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcHV0OiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBkZWxldGU6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGtleXM6IGtFbnVtZXJhYmxlUHJvcGVydHlcbn0pXG5cbmNvbnN0IGNhY2hlUXVlcnlPcHRpb25Db252ZXJ0ZXJzID0gW1xuICB7XG4gICAga2V5OiAnaWdub3JlU2VhcmNoJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnaWdub3JlTWV0aG9kJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnaWdub3JlVmFyeScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfVxuXVxuXG53ZWJpZGwuY29udmVydGVycy5DYWNoZVF1ZXJ5T3B0aW9ucyA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKGNhY2hlUXVlcnlPcHRpb25Db252ZXJ0ZXJzKVxuXG53ZWJpZGwuY29udmVydGVycy5NdWx0aUNhY2hlUXVlcnlPcHRpb25zID0gd2ViaWRsLmRpY3Rpb25hcnlDb252ZXJ0ZXIoW1xuICAuLi5jYWNoZVF1ZXJ5T3B0aW9uQ29udmVydGVycyxcbiAge1xuICAgIGtleTogJ2NhY2hlTmFtZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmdcbiAgfVxuXSlcblxud2ViaWRsLmNvbnZlcnRlcnMuUmVzcG9uc2UgPSB3ZWJpZGwuaW50ZXJmYWNlQ29udmVydGVyKFJlc3BvbnNlKVxuXG53ZWJpZGwuY29udmVydGVyc1snc2VxdWVuY2U8UmVxdWVzdEluZm8+J10gPSB3ZWJpZGwuc2VxdWVuY2VDb252ZXJ0ZXIoXG4gIHdlYmlkbC5jb252ZXJ0ZXJzLlJlcXVlc3RJbmZvXG4pXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBDYWNoZVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IGtDb25zdHJ1Y3QgfSA9IHJlcXVpcmUoJy4vc3ltYm9scycpXG5jb25zdCB7IENhY2hlIH0gPSByZXF1aXJlKCcuL2NhY2hlJylcbmNvbnN0IHsgd2ViaWRsIH0gPSByZXF1aXJlKCcuLi9mZXRjaC93ZWJpZGwnKVxuY29uc3QgeyBrRW51bWVyYWJsZVByb3BlcnR5IH0gPSByZXF1aXJlKCcuLi9jb3JlL3V0aWwnKVxuXG5jbGFzcyBDYWNoZVN0b3JhZ2Uge1xuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZGZuLXJlbGV2YW50LW5hbWUtdG8tY2FjaGUtbWFwXG4gICAqIEB0eXBlIHtNYXA8c3RyaW5nLCBpbXBvcnQoJy4vY2FjaGUnKS5yZXF1ZXN0UmVzcG9uc2VMaXN0fVxuICAgKi9cbiAgI2NhY2hlcyA9IG5ldyBNYXAoKVxuXG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICBpZiAoYXJndW1lbnRzWzBdICE9PSBrQ29uc3RydWN0KSB7XG4gICAgICB3ZWJpZGwuaWxsZWdhbENvbnN0cnVjdG9yKClcbiAgICB9XG4gIH1cblxuICBhc3luYyBtYXRjaCAocmVxdWVzdCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2FjaGVTdG9yYWdlKVxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdDYWNoZVN0b3JhZ2UubWF0Y2gnIH0pXG5cbiAgICByZXF1ZXN0ID0gd2ViaWRsLmNvbnZlcnRlcnMuUmVxdWVzdEluZm8ocmVxdWVzdClcbiAgICBvcHRpb25zID0gd2ViaWRsLmNvbnZlcnRlcnMuTXVsdGlDYWNoZVF1ZXJ5T3B0aW9ucyhvcHRpb25zKVxuXG4gICAgLy8gMS5cbiAgICBpZiAob3B0aW9ucy5jYWNoZU5hbWUgIT0gbnVsbCkge1xuICAgICAgLy8gMS4xLjEuMVxuICAgICAgaWYgKHRoaXMuI2NhY2hlcy5oYXMob3B0aW9ucy5jYWNoZU5hbWUpKSB7XG4gICAgICAgIC8vIDEuMS4xLjEuMVxuICAgICAgICBjb25zdCBjYWNoZUxpc3QgPSB0aGlzLiNjYWNoZXMuZ2V0KG9wdGlvbnMuY2FjaGVOYW1lKVxuICAgICAgICBjb25zdCBjYWNoZSA9IG5ldyBDYWNoZShrQ29uc3RydWN0LCBjYWNoZUxpc3QpXG5cbiAgICAgICAgcmV0dXJuIGF3YWl0IGNhY2hlLm1hdGNoKHJlcXVlc3QsIG9wdGlvbnMpXG4gICAgICB9XG4gICAgfSBlbHNlIHsgLy8gMi5cbiAgICAgIC8vIDIuMlxuICAgICAgZm9yIChjb25zdCBjYWNoZUxpc3Qgb2YgdGhpcy4jY2FjaGVzLnZhbHVlcygpKSB7XG4gICAgICAgIGNvbnN0IGNhY2hlID0gbmV3IENhY2hlKGtDb25zdHJ1Y3QsIGNhY2hlTGlzdClcblxuICAgICAgICAvLyAyLjIuMS4yXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2FjaGUubWF0Y2gocmVxdWVzdCwgb3B0aW9ucylcblxuICAgICAgICBpZiAocmVzcG9uc2UgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiByZXNwb25zZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2NhY2hlLXN0b3JhZ2UtaGFzXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjYWNoZU5hbWVcbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBhc3luYyBoYXMgKGNhY2hlTmFtZSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlU3RvcmFnZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2FjaGVTdG9yYWdlLmhhcycgfSlcblxuICAgIGNhY2hlTmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyhjYWNoZU5hbWUpXG5cbiAgICAvLyAyLjEuMVxuICAgIC8vIDIuMlxuICAgIHJldHVybiB0aGlzLiNjYWNoZXMuaGFzKGNhY2hlTmFtZSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNkb20tY2FjaGVzdG9yYWdlLW9wZW5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGNhY2hlTmFtZVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxDYWNoZT59XG4gICAqL1xuICBhc3luYyBvcGVuIChjYWNoZU5hbWUpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBDYWNoZVN0b3JhZ2UpXG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0NhY2hlU3RvcmFnZS5vcGVuJyB9KVxuXG4gICAgY2FjaGVOYW1lID0gd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKGNhY2hlTmFtZSlcblxuICAgIC8vIDIuMVxuICAgIGlmICh0aGlzLiNjYWNoZXMuaGFzKGNhY2hlTmFtZSkpIHtcbiAgICAgIC8vIGF3YWl0IGNhY2hlcy5vcGVuKCd2MScpICE9PSBhd2FpdCBjYWNoZXMub3BlbigndjEnKVxuXG4gICAgICAvLyAyLjEuMVxuICAgICAgY29uc3QgY2FjaGUgPSB0aGlzLiNjYWNoZXMuZ2V0KGNhY2hlTmFtZSlcblxuICAgICAgLy8gMi4xLjEuMVxuICAgICAgcmV0dXJuIG5ldyBDYWNoZShrQ29uc3RydWN0LCBjYWNoZSlcbiAgICB9XG5cbiAgICAvLyAyLjJcbiAgICBjb25zdCBjYWNoZSA9IFtdXG5cbiAgICAvLyAyLjNcbiAgICB0aGlzLiNjYWNoZXMuc2V0KGNhY2hlTmFtZSwgY2FjaGUpXG5cbiAgICAvLyAyLjRcbiAgICByZXR1cm4gbmV3IENhY2hlKGtDb25zdHJ1Y3QsIGNhY2hlKVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2NhY2hlLXN0b3JhZ2UtZGVsZXRlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjYWNoZU5hbWVcbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBhc3luYyBkZWxldGUgKGNhY2hlTmFtZSkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlU3RvcmFnZSlcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2FjaGVTdG9yYWdlLmRlbGV0ZScgfSlcblxuICAgIGNhY2hlTmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyhjYWNoZU5hbWUpXG5cbiAgICByZXR1cm4gdGhpcy4jY2FjaGVzLmRlbGV0ZShjYWNoZU5hbWUpXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jY2FjaGUtc3RvcmFnZS1rZXlzXG4gICAqIEByZXR1cm5zIHtzdHJpbmdbXX1cbiAgICovXG4gIGFzeW5jIGtleXMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENhY2hlU3RvcmFnZSlcblxuICAgIC8vIDIuMVxuICAgIGNvbnN0IGtleXMgPSB0aGlzLiNjYWNoZXMua2V5cygpXG5cbiAgICAvLyAyLjJcbiAgICByZXR1cm4gWy4uLmtleXNdXG4gIH1cbn1cblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQ2FjaGVTdG9yYWdlLnByb3RvdHlwZSwge1xuICBbU3ltYm9sLnRvU3RyaW5nVGFnXToge1xuICAgIHZhbHVlOiAnQ2FjaGVTdG9yYWdlJyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSxcbiAgbWF0Y2g6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGhhczoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgb3Blbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZGVsZXRlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBrZXlzOiBrRW51bWVyYWJsZVByb3BlcnR5XG59KVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQ2FjaGVTdG9yYWdlXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8vIGh0dHBzOi8vd2ljZy5naXRodWIuaW8vY29va2llLXN0b3JlLyNjb29raWUtbWF4aW11bS1hdHRyaWJ1dGUtdmFsdWUtc2l6ZVxuY29uc3QgbWF4QXR0cmlidXRlVmFsdWVTaXplID0gMTAyNFxuXG4vLyBodHRwczovL3dpY2cuZ2l0aHViLmlvL2Nvb2tpZS1zdG9yZS8jY29va2llLW1heGltdW0tbmFtZS12YWx1ZS1wYWlyLXNpemVcbmNvbnN0IG1heE5hbWVWYWx1ZVBhaXJTaXplID0gNDA5NlxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWF4QXR0cmlidXRlVmFsdWVTaXplLFxuICBtYXhOYW1lVmFsdWVQYWlyU2l6ZVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICogQHJldHVybnMge2Jvb2xlYW59XG4gKi9cbmZ1bmN0aW9uIGlzQ1RMRXhjbHVkaW5nSHRhYiAodmFsdWUpIHtcbiAgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgZm9yIChjb25zdCBjaGFyIG9mIHZhbHVlKSB7XG4gICAgY29uc3QgY29kZSA9IGNoYXIuY2hhckNvZGVBdCgwKVxuXG4gICAgaWYgKFxuICAgICAgKGNvZGUgPj0gMHgwMCB8fCBjb2RlIDw9IDB4MDgpIHx8XG4gICAgICAoY29kZSA+PSAweDBBIHx8IGNvZGUgPD0gMHgxRikgfHxcbiAgICAgIGNvZGUgPT09IDB4N0ZcbiAgICApIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiBDSEFSICAgICAgICAgICA9IDxhbnkgVVMtQVNDSUkgY2hhcmFjdGVyIChvY3RldHMgMCAtIDEyNyk+XG4gdG9rZW4gICAgICAgICAgPSAxKjxhbnkgQ0hBUiBleGNlcHQgQ1RMcyBvciBzZXBhcmF0b3JzPlxuIHNlcGFyYXRvcnMgICAgID0gXCIoXCIgfCBcIilcIiB8IFwiPFwiIHwgXCI+XCIgfCBcIkBcIlxuICAgICAgICAgICAgICAgIHwgXCIsXCIgfCBcIjtcIiB8IFwiOlwiIHwgXCJcXFwiIHwgPFwiPlxuICAgICAgICAgICAgICAgIHwgXCIvXCIgfCBcIltcIiB8IFwiXVwiIHwgXCI/XCIgfCBcIj1cIlxuICAgICAgICAgICAgICAgIHwgXCJ7XCIgfCBcIn1cIiB8IFNQIHwgSFRcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlQ29va2llTmFtZSAobmFtZSkge1xuICBmb3IgKGNvbnN0IGNoYXIgb2YgbmFtZSkge1xuICAgIGNvbnN0IGNvZGUgPSBjaGFyLmNoYXJDb2RlQXQoMClcblxuICAgIGlmIChcbiAgICAgIChjb2RlIDw9IDB4MjAgfHwgY29kZSA+IDB4N0YpIHx8XG4gICAgICBjaGFyID09PSAnKCcgfHxcbiAgICAgIGNoYXIgPT09ICcpJyB8fFxuICAgICAgY2hhciA9PT0gJz4nIHx8XG4gICAgICBjaGFyID09PSAnPCcgfHxcbiAgICAgIGNoYXIgPT09ICdAJyB8fFxuICAgICAgY2hhciA9PT0gJywnIHx8XG4gICAgICBjaGFyID09PSAnOycgfHxcbiAgICAgIGNoYXIgPT09ICc6JyB8fFxuICAgICAgY2hhciA9PT0gJ1xcXFwnIHx8XG4gICAgICBjaGFyID09PSAnXCInIHx8XG4gICAgICBjaGFyID09PSAnLycgfHxcbiAgICAgIGNoYXIgPT09ICdbJyB8fFxuICAgICAgY2hhciA9PT0gJ10nIHx8XG4gICAgICBjaGFyID09PSAnPycgfHxcbiAgICAgIGNoYXIgPT09ICc9JyB8fFxuICAgICAgY2hhciA9PT0gJ3snIHx8XG4gICAgICBjaGFyID09PSAnfSdcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBjb29raWUgbmFtZScpXG4gICAgfVxuICB9XG59XG5cbi8qKlxuIGNvb2tpZS12YWx1ZSAgICAgID0gKmNvb2tpZS1vY3RldCAvICggRFFVT1RFICpjb29raWUtb2N0ZXQgRFFVT1RFIClcbiBjb29raWUtb2N0ZXQgICAgICA9ICV4MjEgLyAleDIzLTJCIC8gJXgyRC0zQSAvICV4M0MtNUIgLyAleDVELTdFXG4gICAgICAgICAgICAgICAgICAgICAgIDsgVVMtQVNDSUkgY2hhcmFjdGVycyBleGNsdWRpbmcgQ1RMcyxcbiAgICAgICAgICAgICAgICAgICAgICAgOyB3aGl0ZXNwYWNlIERRVU9URSwgY29tbWEsIHNlbWljb2xvbixcbiAgICAgICAgICAgICAgICAgICAgICAgOyBhbmQgYmFja3NsYXNoXG4gKiBAcGFyYW0ge3N0cmluZ30gdmFsdWVcbiAqL1xuZnVuY3Rpb24gdmFsaWRhdGVDb29raWVWYWx1ZSAodmFsdWUpIHtcbiAgZm9yIChjb25zdCBjaGFyIG9mIHZhbHVlKSB7XG4gICAgY29uc3QgY29kZSA9IGNoYXIuY2hhckNvZGVBdCgwKVxuXG4gICAgaWYgKFxuICAgICAgY29kZSA8IDB4MjEgfHwgLy8gZXhjbHVkZSBDVExzICgwLTMxKVxuICAgICAgY29kZSA9PT0gMHgyMiB8fFxuICAgICAgY29kZSA9PT0gMHgyQyB8fFxuICAgICAgY29kZSA9PT0gMHgzQiB8fFxuICAgICAgY29kZSA9PT0gMHg1QyB8fFxuICAgICAgY29kZSA+IDB4N0UgLy8gbm9uLWFzY2lpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgaGVhZGVyIHZhbHVlJylcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBwYXRoLXZhbHVlICAgICAgICA9IDxhbnkgQ0hBUiBleGNlcHQgQ1RMcyBvciBcIjtcIj5cbiAqIEBwYXJhbSB7c3RyaW5nfSBwYXRoXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlQ29va2llUGF0aCAocGF0aCkge1xuICBmb3IgKGNvbnN0IGNoYXIgb2YgcGF0aCkge1xuICAgIGNvbnN0IGNvZGUgPSBjaGFyLmNoYXJDb2RlQXQoMClcblxuICAgIGlmIChjb2RlIDwgMHgyMSB8fCBjaGFyID09PSAnOycpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBjb29raWUgcGF0aCcpXG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogSSBoYXZlIG5vIGlkZWEgd2h5IHRoZXNlIHZhbHVlcyBhcmVuJ3QgYWxsb3dlZCB0byBiZSBob25lc3QsXG4gKiBidXQgRGVubyB0ZXN0cyB0aGVzZS4gLSBLaGFmcmFcbiAqIEBwYXJhbSB7c3RyaW5nfSBkb21haW5cbiAqL1xuZnVuY3Rpb24gdmFsaWRhdGVDb29raWVEb21haW4gKGRvbWFpbikge1xuICBpZiAoXG4gICAgZG9tYWluLnN0YXJ0c1dpdGgoJy0nKSB8fFxuICAgIGRvbWFpbi5lbmRzV2l0aCgnLicpIHx8XG4gICAgZG9tYWluLmVuZHNXaXRoKCctJylcbiAgKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGNvb2tpZSBkb21haW4nKVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNzIzMSNzZWN0aW9uLTcuMS4xLjFcbiAqIEBwYXJhbSB7bnVtYmVyfERhdGV9IGRhdGVcbiAgSU1GLWZpeGRhdGUgID0gZGF5LW5hbWUgXCIsXCIgU1AgZGF0ZTEgU1AgdGltZS1vZi1kYXkgU1AgR01UXG4gIDsgZml4ZWQgbGVuZ3RoL3pvbmUvY2FwaXRhbGl6YXRpb24gc3Vic2V0IG9mIHRoZSBmb3JtYXRcbiAgOyBzZWUgU2VjdGlvbiAzLjMgb2YgW1JGQzUzMjJdXG5cbiAgZGF5LW5hbWUgICAgID0gJXg0RC42Ri42RSA7IFwiTW9uXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1NC43NS42NSA7IFwiVHVlXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1Ny42NS42NCA7IFwiV2VkXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1NC42OC43NSA7IFwiVGh1XCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg0Ni43Mi42OSA7IFwiRnJpXCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1My42MS43NCA7IFwiU2F0XCIsIGNhc2Utc2Vuc2l0aXZlXG4gICAgICAgICAgICAgIC8gJXg1My43NS42RSA7IFwiU3VuXCIsIGNhc2Utc2Vuc2l0aXZlXG4gIGRhdGUxICAgICAgICA9IGRheSBTUCBtb250aCBTUCB5ZWFyXG4gICAgICAgICAgICAgICAgICA7IGUuZy4sIDAyIEp1biAxOTgyXG5cbiAgZGF5ICAgICAgICAgID0gMkRJR0lUXG4gIG1vbnRoICAgICAgICA9ICV4NEEuNjEuNkUgOyBcIkphblwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDYuNjUuNjIgOyBcIkZlYlwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEQuNjEuNzIgOyBcIk1hclwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDEuNzAuNzIgOyBcIkFwclwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEQuNjEuNzkgOyBcIk1heVwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEEuNzUuNkUgOyBcIkp1blwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEEuNzUuNkMgOyBcIkp1bFwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDEuNzUuNjcgOyBcIkF1Z1wiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NTMuNjUuNzAgOyBcIlNlcFwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEYuNjMuNzQgOyBcIk9jdFwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NEUuNkYuNzYgOyBcIk5vdlwiLCBjYXNlLXNlbnNpdGl2ZVxuICAgICAgICAgICAgICAvICV4NDQuNjUuNjMgOyBcIkRlY1wiLCBjYXNlLXNlbnNpdGl2ZVxuICB5ZWFyICAgICAgICAgPSA0RElHSVRcblxuICBHTVQgICAgICAgICAgPSAleDQ3LjRELjU0IDsgXCJHTVRcIiwgY2FzZS1zZW5zaXRpdmVcblxuICB0aW1lLW9mLWRheSAgPSBob3VyIFwiOlwiIG1pbnV0ZSBcIjpcIiBzZWNvbmRcbiAgICAgICAgICAgICAgOyAwMDowMDowMCAtIDIzOjU5OjYwIChsZWFwIHNlY29uZClcblxuICBob3VyICAgICAgICAgPSAyRElHSVRcbiAgbWludXRlICAgICAgID0gMkRJR0lUXG4gIHNlY29uZCAgICAgICA9IDJESUdJVFxuICovXG5mdW5jdGlvbiB0b0lNRkRhdGUgKGRhdGUpIHtcbiAgaWYgKHR5cGVvZiBkYXRlID09PSAnbnVtYmVyJykge1xuICAgIGRhdGUgPSBuZXcgRGF0ZShkYXRlKVxuICB9XG5cbiAgY29uc3QgZGF5cyA9IFtcbiAgICAnU3VuJywgJ01vbicsICdUdWUnLCAnV2VkJyxcbiAgICAnVGh1JywgJ0ZyaScsICdTYXQnXG4gIF1cblxuICBjb25zdCBtb250aHMgPSBbXG4gICAgJ0phbicsICdGZWInLCAnTWFyJywgJ0FwcicsICdNYXknLCAnSnVuJyxcbiAgICAnSnVsJywgJ0F1ZycsICdTZXAnLCAnT2N0JywgJ05vdicsICdEZWMnXG4gIF1cblxuICBjb25zdCBkYXlOYW1lID0gZGF5c1tkYXRlLmdldFVUQ0RheSgpXVxuICBjb25zdCBkYXkgPSBkYXRlLmdldFVUQ0RhdGUoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJylcbiAgY29uc3QgbW9udGggPSBtb250aHNbZGF0ZS5nZXRVVENNb250aCgpXVxuICBjb25zdCB5ZWFyID0gZGF0ZS5nZXRVVENGdWxsWWVhcigpXG4gIGNvbnN0IGhvdXIgPSBkYXRlLmdldFVUQ0hvdXJzKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpXG4gIGNvbnN0IG1pbnV0ZSA9IGRhdGUuZ2V0VVRDTWludXRlcygpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKVxuICBjb25zdCBzZWNvbmQgPSBkYXRlLmdldFVUQ1NlY29uZHMoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJylcblxuICByZXR1cm4gYCR7ZGF5TmFtZX0sICR7ZGF5fSAke21vbnRofSAke3llYXJ9ICR7aG91cn06JHttaW51dGV9OiR7c2Vjb25kfSBHTVRgXG59XG5cbi8qKlxuIG1heC1hZ2UtYXYgICAgICAgID0gXCJNYXgtQWdlPVwiIG5vbi16ZXJvLWRpZ2l0ICpESUdJVFxuICAgICAgICAgICAgICAgICAgICAgICA7IEluIHByYWN0aWNlLCBib3RoIGV4cGlyZXMtYXYgYW5kIG1heC1hZ2UtYXZcbiAgICAgICAgICAgICAgICAgICAgICAgOyBhcmUgbGltaXRlZCB0byBkYXRlcyByZXByZXNlbnRhYmxlIGJ5IHRoZVxuICAgICAgICAgICAgICAgICAgICAgICA7IHVzZXIgYWdlbnQuXG4gKiBAcGFyYW0ge251bWJlcn0gbWF4QWdlXG4gKi9cbmZ1bmN0aW9uIHZhbGlkYXRlQ29va2llTWF4QWdlIChtYXhBZ2UpIHtcbiAgaWYgKG1heEFnZSA8IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgY29va2llIG1heC1hZ2UnKVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9yZmMvcmZjNjI2NSNzZWN0aW9uLTQuMS4xXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi9pbmRleCcpLkNvb2tpZX0gY29va2llXG4gKi9cbmZ1bmN0aW9uIHN0cmluZ2lmeSAoY29va2llKSB7XG4gIGlmIChjb29raWUubmFtZS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgdmFsaWRhdGVDb29raWVOYW1lKGNvb2tpZS5uYW1lKVxuICB2YWxpZGF0ZUNvb2tpZVZhbHVlKGNvb2tpZS52YWx1ZSlcblxuICBjb25zdCBvdXQgPSBbYCR7Y29va2llLm5hbWV9PSR7Y29va2llLnZhbHVlfWBdXG5cbiAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtY29va2llLXByZWZpeGVzLTAwI3NlY3Rpb24tMy4xXG4gIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvZHJhZnQtaWV0Zi1odHRwYmlzLWNvb2tpZS1wcmVmaXhlcy0wMCNzZWN0aW9uLTMuMlxuICBpZiAoY29va2llLm5hbWUuc3RhcnRzV2l0aCgnX19TZWN1cmUtJykpIHtcbiAgICBjb29raWUuc2VjdXJlID0gdHJ1ZVxuICB9XG5cbiAgaWYgKGNvb2tpZS5uYW1lLnN0YXJ0c1dpdGgoJ19fSG9zdC0nKSkge1xuICAgIGNvb2tpZS5zZWN1cmUgPSB0cnVlXG4gICAgY29va2llLmRvbWFpbiA9IG51bGxcbiAgICBjb29raWUucGF0aCA9ICcvJ1xuICB9XG5cbiAgaWYgKGNvb2tpZS5zZWN1cmUpIHtcbiAgICBvdXQucHVzaCgnU2VjdXJlJylcbiAgfVxuXG4gIGlmIChjb29raWUuaHR0cE9ubHkpIHtcbiAgICBvdXQucHVzaCgnSHR0cE9ubHknKVxuICB9XG5cbiAgaWYgKHR5cGVvZiBjb29raWUubWF4QWdlID09PSAnbnVtYmVyJykge1xuICAgIHZhbGlkYXRlQ29va2llTWF4QWdlKGNvb2tpZS5tYXhBZ2UpXG4gICAgb3V0LnB1c2goYE1heC1BZ2U9JHtjb29raWUubWF4QWdlfWApXG4gIH1cblxuICBpZiAoY29va2llLmRvbWFpbikge1xuICAgIHZhbGlkYXRlQ29va2llRG9tYWluKGNvb2tpZS5kb21haW4pXG4gICAgb3V0LnB1c2goYERvbWFpbj0ke2Nvb2tpZS5kb21haW59YClcbiAgfVxuXG4gIGlmIChjb29raWUucGF0aCkge1xuICAgIHZhbGlkYXRlQ29va2llUGF0aChjb29raWUucGF0aClcbiAgICBvdXQucHVzaChgUGF0aD0ke2Nvb2tpZS5wYXRofWApXG4gIH1cblxuICBpZiAoY29va2llLmV4cGlyZXMgJiYgY29va2llLmV4cGlyZXMudG9TdHJpbmcoKSAhPT0gJ0ludmFsaWQgRGF0ZScpIHtcbiAgICBvdXQucHVzaChgRXhwaXJlcz0ke3RvSU1GRGF0ZShjb29raWUuZXhwaXJlcyl9YClcbiAgfVxuXG4gIGlmIChjb29raWUuc2FtZVNpdGUpIHtcbiAgICBvdXQucHVzaChgU2FtZVNpdGU9JHtjb29raWUuc2FtZVNpdGV9YClcbiAgfVxuXG4gIGZvciAoY29uc3QgcGFydCBvZiBjb29raWUudW5wYXJzZWQpIHtcbiAgICBpZiAoIXBhcnQuaW5jbHVkZXMoJz0nKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHVucGFyc2VkJylcbiAgICB9XG5cbiAgICBjb25zdCBba2V5LCAuLi52YWx1ZV0gPSBwYXJ0LnNwbGl0KCc9JylcblxuICAgIG91dC5wdXNoKGAke2tleS50cmltKCl9PSR7dmFsdWUuam9pbignPScpfWApXG4gIH1cblxuICByZXR1cm4gb3V0LmpvaW4oJzsgJylcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGlzQ1RMRXhjbHVkaW5nSHRhYixcbiAgdmFsaWRhdGVDb29raWVOYW1lLFxuICB2YWxpZGF0ZUNvb2tpZVBhdGgsXG4gIHZhbGlkYXRlQ29va2llVmFsdWUsXG4gIHRvSU1GRGF0ZSxcbiAgc3RyaW5naWZ5XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgbWF4TmFtZVZhbHVlUGFpclNpemUsIG1heEF0dHJpYnV0ZVZhbHVlU2l6ZSB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKVxuY29uc3QgeyBpc0NUTEV4Y2x1ZGluZ0h0YWIgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0IH0gPSByZXF1aXJlKCcuLi9mZXRjaC9kYXRhVVJMJylcbmNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpXG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFBhcnNlcyB0aGUgZmllbGQtdmFsdWUgYXR0cmlidXRlcyBvZiBhIHNldC1jb29raWUgaGVhZGVyIHN0cmluZy5cbiAqIEBzZWUgaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtcmZjNjI2NWJpcyNzZWN0aW9uLTUuNFxuICogQHBhcmFtIHtzdHJpbmd9IGhlYWRlclxuICogQHJldHVybnMgaWYgdGhlIGhlYWRlciBpcyBpbnZhbGlkLCBudWxsIHdpbGwgYmUgcmV0dXJuZWRcbiAqL1xuZnVuY3Rpb24gcGFyc2VTZXRDb29raWUgKGhlYWRlcikge1xuICAvLyAxLiBJZiB0aGUgc2V0LWNvb2tpZS1zdHJpbmcgY29udGFpbnMgYSAleDAwLTA4IC8gJXgwQS0xRiAvICV4N0ZcbiAgLy8gICAgY2hhcmFjdGVyIChDVEwgY2hhcmFjdGVycyBleGNsdWRpbmcgSFRBQik6IEFib3J0IHRoZXNlIHN0ZXBzIGFuZFxuICAvLyAgICBpZ25vcmUgdGhlIHNldC1jb29raWUtc3RyaW5nIGVudGlyZWx5LlxuICBpZiAoaXNDVExFeGNsdWRpbmdIdGFiKGhlYWRlcikpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgbGV0IG5hbWVWYWx1ZVBhaXIgPSAnJ1xuICBsZXQgdW5wYXJzZWRBdHRyaWJ1dGVzID0gJydcbiAgbGV0IG5hbWUgPSAnJ1xuICBsZXQgdmFsdWUgPSAnJ1xuXG4gIC8vIDIuIElmIHRoZSBzZXQtY29va2llLXN0cmluZyBjb250YWlucyBhICV4M0IgKFwiO1wiKSBjaGFyYWN0ZXI6XG4gIGlmIChoZWFkZXIuaW5jbHVkZXMoJzsnKSkge1xuICAgIC8vIDEuIFRoZSBuYW1lLXZhbHVlLXBhaXIgc3RyaW5nIGNvbnNpc3RzIG9mIHRoZSBjaGFyYWN0ZXJzIHVwIHRvLFxuICAgIC8vICAgIGJ1dCBub3QgaW5jbHVkaW5nLCB0aGUgZmlyc3QgJXgzQiAoXCI7XCIpLCBhbmQgdGhlIHVucGFyc2VkLVxuICAgIC8vICAgIGF0dHJpYnV0ZXMgY29uc2lzdCBvZiB0aGUgcmVtYWluZGVyIG9mIHRoZSBzZXQtY29va2llLXN0cmluZ1xuICAgIC8vICAgIChpbmNsdWRpbmcgdGhlICV4M0IgKFwiO1wiKSBpbiBxdWVzdGlvbikuXG4gICAgY29uc3QgcG9zaXRpb24gPSB7IHBvc2l0aW9uOiAwIH1cblxuICAgIG5hbWVWYWx1ZVBhaXIgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdCgnOycsIGhlYWRlciwgcG9zaXRpb24pXG4gICAgdW5wYXJzZWRBdHRyaWJ1dGVzID0gaGVhZGVyLnNsaWNlKHBvc2l0aW9uLnBvc2l0aW9uKVxuICB9IGVsc2Uge1xuICAgIC8vIE90aGVyd2lzZTpcblxuICAgIC8vIDEuIFRoZSBuYW1lLXZhbHVlLXBhaXIgc3RyaW5nIGNvbnNpc3RzIG9mIGFsbCB0aGUgY2hhcmFjdGVyc1xuICAgIC8vICAgIGNvbnRhaW5lZCBpbiB0aGUgc2V0LWNvb2tpZS1zdHJpbmcsIGFuZCB0aGUgdW5wYXJzZWQtXG4gICAgLy8gICAgYXR0cmlidXRlcyBpcyB0aGUgZW1wdHkgc3RyaW5nLlxuICAgIG5hbWVWYWx1ZVBhaXIgPSBoZWFkZXJcbiAgfVxuXG4gIC8vIDMuIElmIHRoZSBuYW1lLXZhbHVlLXBhaXIgc3RyaW5nIGxhY2tzIGEgJXgzRCAoXCI9XCIpIGNoYXJhY3RlciwgdGhlblxuICAvLyAgICB0aGUgbmFtZSBzdHJpbmcgaXMgZW1wdHksIGFuZCB0aGUgdmFsdWUgc3RyaW5nIGlzIHRoZSB2YWx1ZSBvZlxuICAvLyAgICBuYW1lLXZhbHVlLXBhaXIuXG4gIGlmICghbmFtZVZhbHVlUGFpci5pbmNsdWRlcygnPScpKSB7XG4gICAgdmFsdWUgPSBuYW1lVmFsdWVQYWlyXG4gIH0gZWxzZSB7XG4gICAgLy8gICAgT3RoZXJ3aXNlLCB0aGUgbmFtZSBzdHJpbmcgY29uc2lzdHMgb2YgdGhlIGNoYXJhY3RlcnMgdXAgdG8sIGJ1dFxuICAgIC8vICAgIG5vdCBpbmNsdWRpbmcsIHRoZSBmaXJzdCAleDNEIChcIj1cIikgY2hhcmFjdGVyLCBhbmQgdGhlIChwb3NzaWJseVxuICAgIC8vICAgIGVtcHR5KSB2YWx1ZSBzdHJpbmcgY29uc2lzdHMgb2YgdGhlIGNoYXJhY3RlcnMgYWZ0ZXIgdGhlIGZpcnN0XG4gICAgLy8gICAgJXgzRCAoXCI9XCIpIGNoYXJhY3Rlci5cbiAgICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuICAgIG5hbWUgPSBjb2xsZWN0QVNlcXVlbmNlT2ZDb2RlUG9pbnRzRmFzdChcbiAgICAgICc9JyxcbiAgICAgIG5hbWVWYWx1ZVBhaXIsXG4gICAgICBwb3NpdGlvblxuICAgIClcbiAgICB2YWx1ZSA9IG5hbWVWYWx1ZVBhaXIuc2xpY2UocG9zaXRpb24ucG9zaXRpb24gKyAxKVxuICB9XG5cbiAgLy8gNC4gUmVtb3ZlIGFueSBsZWFkaW5nIG9yIHRyYWlsaW5nIFdTUCBjaGFyYWN0ZXJzIGZyb20gdGhlIG5hbWVcbiAgLy8gICAgc3RyaW5nIGFuZCB0aGUgdmFsdWUgc3RyaW5nLlxuICBuYW1lID0gbmFtZS50cmltKClcbiAgdmFsdWUgPSB2YWx1ZS50cmltKClcblxuICAvLyA1LiBJZiB0aGUgc3VtIG9mIHRoZSBsZW5ndGhzIG9mIHRoZSBuYW1lIHN0cmluZyBhbmQgdGhlIHZhbHVlIHN0cmluZ1xuICAvLyAgICBpcyBtb3JlIHRoYW4gNDA5NiBvY3RldHMsIGFib3J0IHRoZXNlIHN0ZXBzIGFuZCBpZ25vcmUgdGhlIHNldC1cbiAgLy8gICAgY29va2llLXN0cmluZyBlbnRpcmVseS5cbiAgaWYgKG5hbWUubGVuZ3RoICsgdmFsdWUubGVuZ3RoID4gbWF4TmFtZVZhbHVlUGFpclNpemUpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgLy8gNi4gVGhlIGNvb2tpZS1uYW1lIGlzIHRoZSBuYW1lIHN0cmluZywgYW5kIHRoZSBjb29raWUtdmFsdWUgaXMgdGhlXG4gIC8vICAgIHZhbHVlIHN0cmluZy5cbiAgcmV0dXJuIHtcbiAgICBuYW1lLCB2YWx1ZSwgLi4ucGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzKVxuICB9XG59XG5cbi8qKlxuICogUGFyc2VzIHRoZSByZW1haW5pbmcgYXR0cmlidXRlcyBvZiBhIHNldC1jb29raWUgaGVhZGVyXG4gKiBAc2VlIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvZHJhZnQtaWV0Zi1odHRwYmlzLXJmYzYyNjViaXMjc2VjdGlvbi01LjRcbiAqIEBwYXJhbSB7c3RyaW5nfSB1bnBhcnNlZEF0dHJpYnV0ZXNcbiAqIEBwYXJhbSB7W09iamVjdC48c3RyaW5nLCB1bmtub3duPl09e319IGNvb2tpZUF0dHJpYnV0ZUxpc3RcbiAqL1xuZnVuY3Rpb24gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXMgKHVucGFyc2VkQXR0cmlidXRlcywgY29va2llQXR0cmlidXRlTGlzdCA9IHt9KSB7XG4gIC8vIDEuIElmIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzIHN0cmluZyBpcyBlbXB0eSwgc2tpcCB0aGUgcmVzdCBvZlxuICAvLyAgICB0aGVzZSBzdGVwcy5cbiAgaWYgKHVucGFyc2VkQXR0cmlidXRlcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gY29va2llQXR0cmlidXRlTGlzdFxuICB9XG5cbiAgLy8gMi4gRGlzY2FyZCB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzICh3aGljaFxuICAvLyAgICB3aWxsIGJlIGEgJXgzQiAoXCI7XCIpIGNoYXJhY3RlcikuXG4gIGFzc2VydCh1bnBhcnNlZEF0dHJpYnV0ZXNbMF0gPT09ICc7JylcbiAgdW5wYXJzZWRBdHRyaWJ1dGVzID0gdW5wYXJzZWRBdHRyaWJ1dGVzLnNsaWNlKDEpXG5cbiAgbGV0IGNvb2tpZUF2ID0gJydcblxuICAvLyAzLiBJZiB0aGUgcmVtYWluaW5nIHVucGFyc2VkLWF0dHJpYnV0ZXMgY29udGFpbnMgYSAleDNCIChcIjtcIilcbiAgLy8gICAgY2hhcmFjdGVyOlxuICBpZiAodW5wYXJzZWRBdHRyaWJ1dGVzLmluY2x1ZGVzKCc7JykpIHtcbiAgICAvLyAxLiBDb25zdW1lIHRoZSBjaGFyYWN0ZXJzIG9mIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzIHVwIHRvLCBidXRcbiAgICAvLyAgICBub3QgaW5jbHVkaW5nLCB0aGUgZmlyc3QgJXgzQiAoXCI7XCIpIGNoYXJhY3Rlci5cbiAgICBjb29raWVBdiA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0KFxuICAgICAgJzsnLFxuICAgICAgdW5wYXJzZWRBdHRyaWJ1dGVzLFxuICAgICAgeyBwb3NpdGlvbjogMCB9XG4gICAgKVxuICAgIHVucGFyc2VkQXR0cmlidXRlcyA9IHVucGFyc2VkQXR0cmlidXRlcy5zbGljZShjb29raWVBdi5sZW5ndGgpXG4gIH0gZWxzZSB7XG4gICAgLy8gT3RoZXJ3aXNlOlxuXG4gICAgLy8gMS4gQ29uc3VtZSB0aGUgcmVtYWluZGVyIG9mIHRoZSB1bnBhcnNlZC1hdHRyaWJ1dGVzLlxuICAgIGNvb2tpZUF2ID0gdW5wYXJzZWRBdHRyaWJ1dGVzXG4gICAgdW5wYXJzZWRBdHRyaWJ1dGVzID0gJydcbiAgfVxuXG4gIC8vIExldCB0aGUgY29va2llLWF2IHN0cmluZyBiZSB0aGUgY2hhcmFjdGVycyBjb25zdW1lZCBpbiB0aGlzIHN0ZXAuXG5cbiAgbGV0IGF0dHJpYnV0ZU5hbWUgPSAnJ1xuICBsZXQgYXR0cmlidXRlVmFsdWUgPSAnJ1xuXG4gIC8vIDQuIElmIHRoZSBjb29raWUtYXYgc3RyaW5nIGNvbnRhaW5zIGEgJXgzRCAoXCI9XCIpIGNoYXJhY3RlcjpcbiAgaWYgKGNvb2tpZUF2LmluY2x1ZGVzKCc9JykpIHtcbiAgICAvLyAxLiBUaGUgKHBvc3NpYmx5IGVtcHR5KSBhdHRyaWJ1dGUtbmFtZSBzdHJpbmcgY29uc2lzdHMgb2YgdGhlXG4gICAgLy8gICAgY2hhcmFjdGVycyB1cCB0bywgYnV0IG5vdCBpbmNsdWRpbmcsIHRoZSBmaXJzdCAleDNEIChcIj1cIilcbiAgICAvLyAgICBjaGFyYWN0ZXIsIGFuZCB0aGUgKHBvc3NpYmx5IGVtcHR5KSBhdHRyaWJ1dGUtdmFsdWUgc3RyaW5nXG4gICAgLy8gICAgY29uc2lzdHMgb2YgdGhlIGNoYXJhY3RlcnMgYWZ0ZXIgdGhlIGZpcnN0ICV4M0QgKFwiPVwiKVxuICAgIC8vICAgIGNoYXJhY3Rlci5cbiAgICBjb25zdCBwb3NpdGlvbiA9IHsgcG9zaXRpb246IDAgfVxuXG4gICAgYXR0cmlidXRlTmFtZSA9IGNvbGxlY3RBU2VxdWVuY2VPZkNvZGVQb2ludHNGYXN0KFxuICAgICAgJz0nLFxuICAgICAgY29va2llQXYsXG4gICAgICBwb3NpdGlvblxuICAgIClcbiAgICBhdHRyaWJ1dGVWYWx1ZSA9IGNvb2tpZUF2LnNsaWNlKHBvc2l0aW9uLnBvc2l0aW9uICsgMSlcbiAgfSBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2U6XG5cbiAgICAvLyAxLiBUaGUgYXR0cmlidXRlLW5hbWUgc3RyaW5nIGNvbnNpc3RzIG9mIHRoZSBlbnRpcmUgY29va2llLWF2XG4gICAgLy8gICAgc3RyaW5nLCBhbmQgdGhlIGF0dHJpYnV0ZS12YWx1ZSBzdHJpbmcgaXMgZW1wdHkuXG4gICAgYXR0cmlidXRlTmFtZSA9IGNvb2tpZUF2XG4gIH1cblxuICAvLyA1LiBSZW1vdmUgYW55IGxlYWRpbmcgb3IgdHJhaWxpbmcgV1NQIGNoYXJhY3RlcnMgZnJvbSB0aGUgYXR0cmlidXRlLVxuICAvLyAgICBuYW1lIHN0cmluZyBhbmQgdGhlIGF0dHJpYnV0ZS12YWx1ZSBzdHJpbmcuXG4gIGF0dHJpYnV0ZU5hbWUgPSBhdHRyaWJ1dGVOYW1lLnRyaW0oKVxuICBhdHRyaWJ1dGVWYWx1ZSA9IGF0dHJpYnV0ZVZhbHVlLnRyaW0oKVxuXG4gIC8vIDYuIElmIHRoZSBhdHRyaWJ1dGUtdmFsdWUgaXMgbG9uZ2VyIHRoYW4gMTAyNCBvY3RldHMsIGlnbm9yZSB0aGVcbiAgLy8gICAgY29va2llLWF2IHN0cmluZyBhbmQgcmV0dXJuIHRvIFN0ZXAgMSBvZiB0aGlzIGFsZ29yaXRobS5cbiAgaWYgKGF0dHJpYnV0ZVZhbHVlLmxlbmd0aCA+IG1heEF0dHJpYnV0ZVZhbHVlU2l6ZSkge1xuICAgIHJldHVybiBwYXJzZVVucGFyc2VkQXR0cmlidXRlcyh1bnBhcnNlZEF0dHJpYnV0ZXMsIGNvb2tpZUF0dHJpYnV0ZUxpc3QpXG4gIH1cblxuICAvLyA3LiBQcm9jZXNzIHRoZSBhdHRyaWJ1dGUtbmFtZSBhbmQgYXR0cmlidXRlLXZhbHVlIGFjY29yZGluZyB0byB0aGVcbiAgLy8gICAgcmVxdWlyZW1lbnRzIGluIHRoZSBmb2xsb3dpbmcgc3Vic2VjdGlvbnMuICAoTm90aWNlIHRoYXRcbiAgLy8gICAgYXR0cmlidXRlcyB3aXRoIHVucmVjb2duaXplZCBhdHRyaWJ1dGUtbmFtZXMgYXJlIGlnbm9yZWQuKVxuICBjb25zdCBhdHRyaWJ1dGVOYW1lTG93ZXJjYXNlID0gYXR0cmlidXRlTmFtZS50b0xvd2VyQ2FzZSgpXG5cbiAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtcmZjNjI2NWJpcyNzZWN0aW9uLTUuNC4xXG4gIC8vIElmIHRoZSBhdHRyaWJ1dGUtbmFtZSBjYXNlLWluc2Vuc2l0aXZlbHkgbWF0Y2hlcyB0aGUgc3RyaW5nXG4gIC8vIFwiRXhwaXJlc1wiLCB0aGUgdXNlciBhZ2VudCBNVVNUIHByb2Nlc3MgdGhlIGNvb2tpZS1hdiBhcyBmb2xsb3dzLlxuICBpZiAoYXR0cmlidXRlTmFtZUxvd2VyY2FzZSA9PT0gJ2V4cGlyZXMnKSB7XG4gICAgLy8gMS4gTGV0IHRoZSBleHBpcnktdGltZSBiZSB0aGUgcmVzdWx0IG9mIHBhcnNpbmcgdGhlIGF0dHJpYnV0ZS12YWx1ZVxuICAgIC8vICAgIGFzIGNvb2tpZS1kYXRlIChzZWUgU2VjdGlvbiA1LjEuMSkuXG4gICAgY29uc3QgZXhwaXJ5VGltZSA9IG5ldyBEYXRlKGF0dHJpYnV0ZVZhbHVlKVxuXG4gICAgLy8gMi4gSWYgdGhlIGF0dHJpYnV0ZS12YWx1ZSBmYWlsZWQgdG8gcGFyc2UgYXMgYSBjb29raWUgZGF0ZSwgaWdub3JlXG4gICAgLy8gICAgdGhlIGNvb2tpZS1hdi5cblxuICAgIGNvb2tpZUF0dHJpYnV0ZUxpc3QuZXhwaXJlcyA9IGV4cGlyeVRpbWVcbiAgfSBlbHNlIGlmIChhdHRyaWJ1dGVOYW1lTG93ZXJjYXNlID09PSAnbWF4LWFnZScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjJcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZyBcIk1heC1cbiAgICAvLyBBZ2VcIiwgdGhlIHVzZXIgYWdlbnQgTVVTVCBwcm9jZXNzIHRoZSBjb29raWUtYXYgYXMgZm9sbG93cy5cblxuICAgIC8vIDEuIElmIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIGF0dHJpYnV0ZS12YWx1ZSBpcyBub3QgYSBESUdJVCBvciBhXG4gICAgLy8gICAgXCItXCIgY2hhcmFjdGVyLCBpZ25vcmUgdGhlIGNvb2tpZS1hdi5cbiAgICBjb25zdCBjaGFyQ29kZSA9IGF0dHJpYnV0ZVZhbHVlLmNoYXJDb2RlQXQoMClcblxuICAgIGlmICgoY2hhckNvZGUgPCA0OCB8fCBjaGFyQ29kZSA+IDU3KSAmJiBhdHRyaWJ1dGVWYWx1ZVswXSAhPT0gJy0nKSB7XG4gICAgICByZXR1cm4gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzLCBjb29raWVBdHRyaWJ1dGVMaXN0KVxuICAgIH1cblxuICAgIC8vIDIuIElmIHRoZSByZW1haW5kZXIgb2YgYXR0cmlidXRlLXZhbHVlIGNvbnRhaW5zIGEgbm9uLURJR0lUXG4gICAgLy8gICAgY2hhcmFjdGVyLCBpZ25vcmUgdGhlIGNvb2tpZS1hdi5cbiAgICBpZiAoIS9eXFxkKyQvLnRlc3QoYXR0cmlidXRlVmFsdWUpKSB7XG4gICAgICByZXR1cm4gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzLCBjb29raWVBdHRyaWJ1dGVMaXN0KVxuICAgIH1cblxuICAgIC8vIDMuIExldCBkZWx0YS1zZWNvbmRzIGJlIHRoZSBhdHRyaWJ1dGUtdmFsdWUgY29udmVydGVkIHRvIGFuIGludGVnZXIuXG4gICAgY29uc3QgZGVsdGFTZWNvbmRzID0gTnVtYmVyKGF0dHJpYnV0ZVZhbHVlKVxuXG4gICAgLy8gNC4gTGV0IGNvb2tpZS1hZ2UtbGltaXQgYmUgdGhlIG1heGltdW0gYWdlIG9mIHRoZSBjb29raWUgKHdoaWNoXG4gICAgLy8gICAgU0hPVUxEIGJlIDQwMCBkYXlzIG9yIGxlc3MsIHNlZSBTZWN0aW9uIDQuMS4yLjIpLlxuXG4gICAgLy8gNS4gU2V0IGRlbHRhLXNlY29uZHMgdG8gdGhlIHNtYWxsZXIgb2YgaXRzIHByZXNlbnQgdmFsdWUgYW5kIGNvb2tpZS1cbiAgICAvLyAgICBhZ2UtbGltaXQuXG4gICAgLy8gZGVsdGFTZWNvbmRzID0gTWF0aC5taW4oZGVsdGFTZWNvbmRzICogMTAwMCwgbWF4RXhwaXJlc01zKVxuXG4gICAgLy8gNi4gSWYgZGVsdGEtc2Vjb25kcyBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gemVybyAoMCksIGxldCBleHBpcnktXG4gICAgLy8gICAgdGltZSBiZSB0aGUgZWFybGllc3QgcmVwcmVzZW50YWJsZSBkYXRlIGFuZCB0aW1lLiAgT3RoZXJ3aXNlLCBsZXRcbiAgICAvLyAgICB0aGUgZXhwaXJ5LXRpbWUgYmUgdGhlIGN1cnJlbnQgZGF0ZSBhbmQgdGltZSBwbHVzIGRlbHRhLXNlY29uZHNcbiAgICAvLyAgICBzZWNvbmRzLlxuICAgIC8vIGNvbnN0IGV4cGlyeVRpbWUgPSBkZWx0YVNlY29uZHMgPD0gMCA/IERhdGUubm93KCkgOiBEYXRlLm5vdygpICsgZGVsdGFTZWNvbmRzXG5cbiAgICAvLyA3LiBBcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtYXR0cmlidXRlLWxpc3Qgd2l0aCBhblxuICAgIC8vICAgIGF0dHJpYnV0ZS1uYW1lIG9mIE1heC1BZ2UgYW5kIGFuIGF0dHJpYnV0ZS12YWx1ZSBvZiBleHBpcnktdGltZS5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0Lm1heEFnZSA9IGRlbHRhU2Vjb25kc1xuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdkb21haW4nKSB7XG4gICAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9kcmFmdC1pZXRmLWh0dHBiaXMtcmZjNjI2NWJpcyNzZWN0aW9uLTUuNC4zXG4gICAgLy8gSWYgdGhlIGF0dHJpYnV0ZS1uYW1lIGNhc2UtaW5zZW5zaXRpdmVseSBtYXRjaGVzIHRoZSBzdHJpbmcgXCJEb21haW5cIixcbiAgICAvLyB0aGUgdXNlciBhZ2VudCBNVVNUIHByb2Nlc3MgdGhlIGNvb2tpZS1hdiBhcyBmb2xsb3dzLlxuXG4gICAgLy8gMS4gTGV0IGNvb2tpZS1kb21haW4gYmUgdGhlIGF0dHJpYnV0ZS12YWx1ZS5cbiAgICBsZXQgY29va2llRG9tYWluID0gYXR0cmlidXRlVmFsdWVcblxuICAgIC8vIDIuIElmIGNvb2tpZS1kb21haW4gc3RhcnRzIHdpdGggJXgyRSAoXCIuXCIpLCBsZXQgY29va2llLWRvbWFpbiBiZVxuICAgIC8vICAgIGNvb2tpZS1kb21haW4gd2l0aG91dCBpdHMgbGVhZGluZyAleDJFIChcIi5cIikuXG4gICAgaWYgKGNvb2tpZURvbWFpblswXSA9PT0gJy4nKSB7XG4gICAgICBjb29raWVEb21haW4gPSBjb29raWVEb21haW4uc2xpY2UoMSlcbiAgICB9XG5cbiAgICAvLyAzLiBDb252ZXJ0IHRoZSBjb29raWUtZG9tYWluIHRvIGxvd2VyIGNhc2UuXG4gICAgY29va2llRG9tYWluID0gY29va2llRG9tYWluLnRvTG93ZXJDYXNlKClcblxuICAgIC8vIDQuIEFwcGVuZCBhbiBhdHRyaWJ1dGUgdG8gdGhlIGNvb2tpZS1hdHRyaWJ1dGUtbGlzdCB3aXRoIGFuXG4gICAgLy8gICAgYXR0cmlidXRlLW5hbWUgb2YgRG9tYWluIGFuZCBhbiBhdHRyaWJ1dGUtdmFsdWUgb2YgY29va2llLWRvbWFpbi5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0LmRvbWFpbiA9IGNvb2tpZURvbWFpblxuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdwYXRoJykge1xuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvZHJhZnQtaWV0Zi1odHRwYmlzLXJmYzYyNjViaXMjc2VjdGlvbi01LjQuNFxuICAgIC8vIElmIHRoZSBhdHRyaWJ1dGUtbmFtZSBjYXNlLWluc2Vuc2l0aXZlbHkgbWF0Y2hlcyB0aGUgc3RyaW5nIFwiUGF0aFwiLFxuICAgIC8vIHRoZSB1c2VyIGFnZW50IE1VU1QgcHJvY2VzcyB0aGUgY29va2llLWF2IGFzIGZvbGxvd3MuXG5cbiAgICAvLyAxLiBJZiB0aGUgYXR0cmlidXRlLXZhbHVlIGlzIGVtcHR5IG9yIGlmIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlXG4gICAgLy8gICAgYXR0cmlidXRlLXZhbHVlIGlzIG5vdCAleDJGIChcIi9cIik6XG4gICAgbGV0IGNvb2tpZVBhdGggPSAnJ1xuICAgIGlmIChhdHRyaWJ1dGVWYWx1ZS5sZW5ndGggPT09IDAgfHwgYXR0cmlidXRlVmFsdWVbMF0gIT09ICcvJykge1xuICAgICAgLy8gMS4gTGV0IGNvb2tpZS1wYXRoIGJlIHRoZSBkZWZhdWx0LXBhdGguXG4gICAgICBjb29raWVQYXRoID0gJy8nXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIE90aGVyd2lzZTpcblxuICAgICAgLy8gMS4gTGV0IGNvb2tpZS1wYXRoIGJlIHRoZSBhdHRyaWJ1dGUtdmFsdWUuXG4gICAgICBjb29raWVQYXRoID0gYXR0cmlidXRlVmFsdWVcbiAgICB9XG5cbiAgICAvLyAyLiBBcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtYXR0cmlidXRlLWxpc3Qgd2l0aCBhblxuICAgIC8vICAgIGF0dHJpYnV0ZS1uYW1lIG9mIFBhdGggYW5kIGFuIGF0dHJpYnV0ZS12YWx1ZSBvZiBjb29raWUtcGF0aC5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0LnBhdGggPSBjb29raWVQYXRoXG4gIH0gZWxzZSBpZiAoYXR0cmlidXRlTmFtZUxvd2VyY2FzZSA9PT0gJ3NlY3VyZScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjVcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZyBcIlNlY3VyZVwiLFxuICAgIC8vIHRoZSB1c2VyIGFnZW50IE1VU1QgYXBwZW5kIGFuIGF0dHJpYnV0ZSB0byB0aGUgY29va2llLWF0dHJpYnV0ZS1saXN0XG4gICAgLy8gd2l0aCBhbiBhdHRyaWJ1dGUtbmFtZSBvZiBTZWN1cmUgYW5kIGFuIGVtcHR5IGF0dHJpYnV0ZS12YWx1ZS5cblxuICAgIGNvb2tpZUF0dHJpYnV0ZUxpc3Quc2VjdXJlID0gdHJ1ZVxuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdodHRwb25seScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjZcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZ1xuICAgIC8vIFwiSHR0cE9ubHlcIiwgdGhlIHVzZXIgYWdlbnQgTVVTVCBhcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtXG4gICAgLy8gYXR0cmlidXRlLWxpc3Qgd2l0aCBhbiBhdHRyaWJ1dGUtbmFtZSBvZiBIdHRwT25seSBhbmQgYW4gZW1wdHlcbiAgICAvLyBhdHRyaWJ1dGUtdmFsdWUuXG5cbiAgICBjb29raWVBdHRyaWJ1dGVMaXN0Lmh0dHBPbmx5ID0gdHJ1ZVxuICB9IGVsc2UgaWYgKGF0dHJpYnV0ZU5hbWVMb3dlcmNhc2UgPT09ICdzYW1lc2l0ZScpIHtcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL2RyYWZ0LWlldGYtaHR0cGJpcy1yZmM2MjY1YmlzI3NlY3Rpb24tNS40LjdcbiAgICAvLyBJZiB0aGUgYXR0cmlidXRlLW5hbWUgY2FzZS1pbnNlbnNpdGl2ZWx5IG1hdGNoZXMgdGhlIHN0cmluZ1xuICAgIC8vIFwiU2FtZVNpdGVcIiwgdGhlIHVzZXIgYWdlbnQgTVVTVCBwcm9jZXNzIHRoZSBjb29raWUtYXYgYXMgZm9sbG93czpcblxuICAgIC8vIDEuIExldCBlbmZvcmNlbWVudCBiZSBcIkRlZmF1bHRcIi5cbiAgICBsZXQgZW5mb3JjZW1lbnQgPSAnRGVmYXVsdCdcblxuICAgIGNvbnN0IGF0dHJpYnV0ZVZhbHVlTG93ZXJjYXNlID0gYXR0cmlidXRlVmFsdWUudG9Mb3dlckNhc2UoKVxuICAgIC8vIDIuIElmIGNvb2tpZS1hdidzIGF0dHJpYnV0ZS12YWx1ZSBpcyBhIGNhc2UtaW5zZW5zaXRpdmUgbWF0Y2ggZm9yXG4gICAgLy8gICAgXCJOb25lXCIsIHNldCBlbmZvcmNlbWVudCB0byBcIk5vbmVcIi5cbiAgICBpZiAoYXR0cmlidXRlVmFsdWVMb3dlcmNhc2UuaW5jbHVkZXMoJ25vbmUnKSkge1xuICAgICAgZW5mb3JjZW1lbnQgPSAnTm9uZSdcbiAgICB9XG5cbiAgICAvLyAzLiBJZiBjb29raWUtYXYncyBhdHRyaWJ1dGUtdmFsdWUgaXMgYSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvclxuICAgIC8vICAgIFwiU3RyaWN0XCIsIHNldCBlbmZvcmNlbWVudCB0byBcIlN0cmljdFwiLlxuICAgIGlmIChhdHRyaWJ1dGVWYWx1ZUxvd2VyY2FzZS5pbmNsdWRlcygnc3RyaWN0JykpIHtcbiAgICAgIGVuZm9yY2VtZW50ID0gJ1N0cmljdCdcbiAgICB9XG5cbiAgICAvLyA0LiBJZiBjb29raWUtYXYncyBhdHRyaWJ1dGUtdmFsdWUgaXMgYSBjYXNlLWluc2Vuc2l0aXZlIG1hdGNoIGZvclxuICAgIC8vICAgIFwiTGF4XCIsIHNldCBlbmZvcmNlbWVudCB0byBcIkxheFwiLlxuICAgIGlmIChhdHRyaWJ1dGVWYWx1ZUxvd2VyY2FzZS5pbmNsdWRlcygnbGF4JykpIHtcbiAgICAgIGVuZm9yY2VtZW50ID0gJ0xheCdcbiAgICB9XG5cbiAgICAvLyA1LiBBcHBlbmQgYW4gYXR0cmlidXRlIHRvIHRoZSBjb29raWUtYXR0cmlidXRlLWxpc3Qgd2l0aCBhblxuICAgIC8vICAgIGF0dHJpYnV0ZS1uYW1lIG9mIFwiU2FtZVNpdGVcIiBhbmQgYW4gYXR0cmlidXRlLXZhbHVlIG9mXG4gICAgLy8gICAgZW5mb3JjZW1lbnQuXG4gICAgY29va2llQXR0cmlidXRlTGlzdC5zYW1lU2l0ZSA9IGVuZm9yY2VtZW50XG4gIH0gZWxzZSB7XG4gICAgY29va2llQXR0cmlidXRlTGlzdC51bnBhcnNlZCA/Pz0gW11cblxuICAgIGNvb2tpZUF0dHJpYnV0ZUxpc3QudW5wYXJzZWQucHVzaChgJHthdHRyaWJ1dGVOYW1lfT0ke2F0dHJpYnV0ZVZhbHVlfWApXG4gIH1cblxuICAvLyA4LiBSZXR1cm4gdG8gU3RlcCAxIG9mIHRoaXMgYWxnb3JpdGhtLlxuICByZXR1cm4gcGFyc2VVbnBhcnNlZEF0dHJpYnV0ZXModW5wYXJzZWRBdHRyaWJ1dGVzLCBjb29raWVBdHRyaWJ1dGVMaXN0KVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgcGFyc2VTZXRDb29raWUsXG4gIHBhcnNlVW5wYXJzZWRBdHRyaWJ1dGVzXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsgcGFyc2VTZXRDb29raWUgfSA9IHJlcXVpcmUoJy4vcGFyc2UnKVxuY29uc3QgeyBzdHJpbmdpZnkgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsgSGVhZGVycyB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvaGVhZGVycycpXG5cbi8qKlxuICogQHR5cGVkZWYge09iamVjdH0gQ29va2llXG4gKiBAcHJvcGVydHkge3N0cmluZ30gbmFtZVxuICogQHByb3BlcnR5IHtzdHJpbmd9IHZhbHVlXG4gKiBAcHJvcGVydHkge0RhdGV8bnVtYmVyfHVuZGVmaW5lZH0gZXhwaXJlc1xuICogQHByb3BlcnR5IHtudW1iZXJ8dW5kZWZpbmVkfSBtYXhBZ2VcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfHVuZGVmaW5lZH0gZG9tYWluXG4gKiBAcHJvcGVydHkge3N0cmluZ3x1bmRlZmluZWR9IHBhdGhcbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbnx1bmRlZmluZWR9IHNlY3VyZVxuICogQHByb3BlcnR5IHtib29sZWFufHVuZGVmaW5lZH0gaHR0cE9ubHlcbiAqIEBwcm9wZXJ0eSB7J1N0cmljdCd8J0xheCd8J05vbmUnfSBzYW1lU2l0ZVxuICogQHByb3BlcnR5IHtzdHJpbmdbXX0gdW5wYXJzZWRcbiAqL1xuXG4vKipcbiAqIEBwYXJhbSB7SGVhZGVyc30gaGVhZGVyc1xuICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZz59XG4gKi9cbmZ1bmN0aW9uIGdldENvb2tpZXMgKGhlYWRlcnMpIHtcbiAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ2dldENvb2tpZXMnIH0pXG5cbiAgd2ViaWRsLmJyYW5kQ2hlY2soaGVhZGVycywgSGVhZGVycywgeyBzdHJpY3Q6IGZhbHNlIH0pXG5cbiAgY29uc3QgY29va2llID0gaGVhZGVycy5nZXQoJ2Nvb2tpZScpXG4gIGNvbnN0IG91dCA9IHt9XG5cbiAgaWYgKCFjb29raWUpIHtcbiAgICByZXR1cm4gb3V0XG4gIH1cblxuICBmb3IgKGNvbnN0IHBpZWNlIG9mIGNvb2tpZS5zcGxpdCgnOycpKSB7XG4gICAgY29uc3QgW25hbWUsIC4uLnZhbHVlXSA9IHBpZWNlLnNwbGl0KCc9JylcblxuICAgIG91dFtuYW1lLnRyaW0oKV0gPSB2YWx1ZS5qb2luKCc9JylcbiAgfVxuXG4gIHJldHVybiBvdXRcbn1cblxuLyoqXG4gKiBAcGFyYW0ge0hlYWRlcnN9IGhlYWRlcnNcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gKiBAcGFyYW0ge3sgcGF0aD86IHN0cmluZywgZG9tYWluPzogc3RyaW5nIH18dW5kZWZpbmVkfSBhdHRyaWJ1dGVzXG4gKiBAcmV0dXJucyB7dm9pZH1cbiAqL1xuZnVuY3Rpb24gZGVsZXRlQ29va2llIChoZWFkZXJzLCBuYW1lLCBhdHRyaWJ1dGVzKSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdkZWxldGVDb29raWUnIH0pXG5cbiAgd2ViaWRsLmJyYW5kQ2hlY2soaGVhZGVycywgSGVhZGVycywgeyBzdHJpY3Q6IGZhbHNlIH0pXG5cbiAgbmFtZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyhuYW1lKVxuICBhdHRyaWJ1dGVzID0gd2ViaWRsLmNvbnZlcnRlcnMuRGVsZXRlQ29va2llQXR0cmlidXRlcyhhdHRyaWJ1dGVzKVxuXG4gIC8vIE1hdGNoZXMgYmVoYXZpb3Igb2ZcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2Rlbm9sYW5kL2Rlbm9fc3RkL2Jsb2IvNjM4MjdiMTYzMzBiODI0ODlhMDQ2MTQwMjdjMzNiNzkwNGUwOGJlNS9odHRwL2Nvb2tpZS50cyNMMjc4XG4gIHNldENvb2tpZShoZWFkZXJzLCB7XG4gICAgbmFtZSxcbiAgICB2YWx1ZTogJycsXG4gICAgZXhwaXJlczogbmV3IERhdGUoMCksXG4gICAgLi4uYXR0cmlidXRlc1xuICB9KVxufVxuXG4vKipcbiAqIEBwYXJhbSB7SGVhZGVyc30gaGVhZGVyc1xuICogQHJldHVybnMge0Nvb2tpZVtdfVxuICovXG5mdW5jdGlvbiBnZXRTZXRDb29raWVzIChoZWFkZXJzKSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdnZXRTZXRDb29raWVzJyB9KVxuXG4gIHdlYmlkbC5icmFuZENoZWNrKGhlYWRlcnMsIEhlYWRlcnMsIHsgc3RyaWN0OiBmYWxzZSB9KVxuXG4gIGNvbnN0IGNvb2tpZXMgPSBoZWFkZXJzLmdldFNldENvb2tpZSgpXG5cbiAgaWYgKCFjb29raWVzKSB7XG4gICAgcmV0dXJuIFtdXG4gIH1cblxuICByZXR1cm4gY29va2llcy5tYXAoKHBhaXIpID0+IHBhcnNlU2V0Q29va2llKHBhaXIpKVxufVxuXG4vKipcbiAqIEBwYXJhbSB7SGVhZGVyc30gaGVhZGVyc1xuICogQHBhcmFtIHtDb29raWV9IGNvb2tpZVxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmZ1bmN0aW9uIHNldENvb2tpZSAoaGVhZGVycywgY29va2llKSB7XG4gIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMiwgeyBoZWFkZXI6ICdzZXRDb29raWUnIH0pXG5cbiAgd2ViaWRsLmJyYW5kQ2hlY2soaGVhZGVycywgSGVhZGVycywgeyBzdHJpY3Q6IGZhbHNlIH0pXG5cbiAgY29va2llID0gd2ViaWRsLmNvbnZlcnRlcnMuQ29va2llKGNvb2tpZSlcblxuICBjb25zdCBzdHIgPSBzdHJpbmdpZnkoY29va2llKVxuXG4gIGlmIChzdHIpIHtcbiAgICBoZWFkZXJzLmFwcGVuZCgnU2V0LUNvb2tpZScsIHN0cmluZ2lmeShjb29raWUpKVxuICB9XG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzLkRlbGV0ZUNvb2tpZUF0dHJpYnV0ZXMgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5udWxsYWJsZUNvbnZlcnRlcih3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcpLFxuICAgIGtleTogJ3BhdGgnLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIod2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nKSxcbiAgICBrZXk6ICdkb21haW4nLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9XG5dKVxuXG53ZWJpZGwuY29udmVydGVycy5Db29raWUgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyxcbiAgICBrZXk6ICduYW1lJ1xuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAga2V5OiAndmFsdWUnXG4gIH0sXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5udWxsYWJsZUNvbnZlcnRlcigodmFsdWUpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgbG9uZyBsb25nJ10odmFsdWUpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBuZXcgRGF0ZSh2YWx1ZSlcbiAgICB9KSxcbiAgICBrZXk6ICdleHBpcmVzJyxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzWydsb25nIGxvbmcnXSksXG4gICAga2V5OiAnbWF4QWdlJyxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyksXG4gICAga2V5OiAnZG9tYWluJyxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyksXG4gICAga2V5OiAncGF0aCcsXG4gICAgZGVmYXVsdFZhbHVlOiBudWxsXG4gIH0sXG4gIHtcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5udWxsYWJsZUNvbnZlcnRlcih3ZWJpZGwuY29udmVydGVycy5ib29sZWFuKSxcbiAgICBrZXk6ICdzZWN1cmUnLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIod2ViaWRsLmNvbnZlcnRlcnMuYm9vbGVhbiksXG4gICAga2V5OiAnaHR0cE9ubHknLFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcsXG4gICAga2V5OiAnc2FtZVNpdGUnLFxuICAgIGFsbG93ZWRWYWx1ZXM6IFsnU3RyaWN0JywgJ0xheCcsICdOb25lJ11cbiAgfSxcbiAge1xuICAgIGNvbnZlcnRlcjogd2ViaWRsLnNlcXVlbmNlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyksXG4gICAga2V5OiAndW5wYXJzZWQnLFxuICAgIGRlZmF1bHRWYWx1ZTogW11cbiAgfVxuXSlcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGdldENvb2tpZXMsXG4gIGRlbGV0ZUNvb2tpZSxcbiAgZ2V0U2V0Q29va2llcyxcbiAgc2V0Q29va2llXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbi8vIFRoaXMgaXMgYSBHbG9iYWxseSBVbmlxdWUgSWRlbnRpZmllciB1bmlxdWUgdXNlZFxuLy8gdG8gdmFsaWRhdGUgdGhhdCB0aGUgZW5kcG9pbnQgYWNjZXB0cyB3ZWJzb2NrZXRcbi8vIGNvbm5lY3Rpb25zLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmM2NDU1Lmh0bWwjc2VjdGlvbi0xLjNcbmNvbnN0IHVpZCA9ICcyNThFQUZBNS1FOTE0LTQ3REEtOTVDQS1DNUFCMERDODVCMTEnXG5cbi8qKiBAdHlwZSB7UHJvcGVydHlEZXNjcmlwdG9yfSAqL1xuY29uc3Qgc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyA9IHtcbiAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgd3JpdGFibGU6IGZhbHNlLFxuICBjb25maWd1cmFibGU6IGZhbHNlXG59XG5cbmNvbnN0IHN0YXRlcyA9IHtcbiAgQ09OTkVDVElORzogMCxcbiAgT1BFTjogMSxcbiAgQ0xPU0lORzogMixcbiAgQ0xPU0VEOiAzXG59XG5cbmNvbnN0IG9wY29kZXMgPSB7XG4gIENPTlRJTlVBVElPTjogMHgwLFxuICBURVhUOiAweDEsXG4gIEJJTkFSWTogMHgyLFxuICBDTE9TRTogMHg4LFxuICBQSU5HOiAweDksXG4gIFBPTkc6IDB4QVxufVxuXG5jb25zdCBtYXhVbnNpZ25lZDE2Qml0ID0gMiAqKiAxNiAtIDEgLy8gNjU1MzVcblxuY29uc3QgcGFyc2VyU3RhdGVzID0ge1xuICBJTkZPOiAwLFxuICBQQVlMT0FETEVOR1RIXzE2OiAyLFxuICBQQVlMT0FETEVOR1RIXzY0OiAzLFxuICBSRUFEX0RBVEE6IDRcbn1cblxuY29uc3QgZW1wdHlCdWZmZXIgPSBCdWZmZXIuYWxsb2NVbnNhZmUoMClcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHVpZCxcbiAgc3RhdGljUHJvcGVydHlEZXNjcmlwdG9ycyxcbiAgc3RhdGVzLFxuICBvcGNvZGVzLFxuICBtYXhVbnNpZ25lZDE2Qml0LFxuICBwYXJzZXJTdGF0ZXMsXG4gIGVtcHR5QnVmZmVyXG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBrV2ViU29ja2V0VVJMOiBTeW1ib2woJ3VybCcpLFxuICBrUmVhZHlTdGF0ZTogU3ltYm9sKCdyZWFkeSBzdGF0ZScpLFxuICBrQ29udHJvbGxlcjogU3ltYm9sKCdjb250cm9sbGVyJyksXG4gIGtSZXNwb25zZTogU3ltYm9sKCdyZXNwb25zZScpLFxuICBrQmluYXJ5VHlwZTogU3ltYm9sKCdiaW5hcnkgdHlwZScpLFxuICBrU2VudENsb3NlOiBTeW1ib2woJ3NlbnQgY2xvc2UnKSxcbiAga1JlY2VpdmVkQ2xvc2U6IFN5bWJvbCgncmVjZWl2ZWQgY2xvc2UnKSxcbiAga0J5dGVQYXJzZXI6IFN5bWJvbCgnYnl0ZSBwYXJzZXInKVxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsga0VudW1lcmFibGVQcm9wZXJ0eSB9ID0gcmVxdWlyZSgnLi4vY29yZS91dGlsJylcbmNvbnN0IHsgTWVzc2FnZVBvcnQgfSA9IHJlcXVpcmUoJ3dvcmtlcl90aHJlYWRzJylcblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2NvbW1zLmh0bWwjbWVzc2FnZWV2ZW50XG4gKi9cbmNsYXNzIE1lc3NhZ2VFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgI2V2ZW50SW5pdFxuXG4gIGNvbnN0cnVjdG9yICh0eXBlLCBldmVudEluaXREaWN0ID0ge30pIHtcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnTWVzc2FnZUV2ZW50IGNvbnN0cnVjdG9yJyB9KVxuXG4gICAgdHlwZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyh0eXBlKVxuICAgIGV2ZW50SW5pdERpY3QgPSB3ZWJpZGwuY29udmVydGVycy5NZXNzYWdlRXZlbnRJbml0KGV2ZW50SW5pdERpY3QpXG5cbiAgICBzdXBlcih0eXBlLCBldmVudEluaXREaWN0KVxuXG4gICAgdGhpcy4jZXZlbnRJbml0ID0gZXZlbnRJbml0RGljdFxuICB9XG5cbiAgZ2V0IGRhdGEgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIE1lc3NhZ2VFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQuZGF0YVxuICB9XG5cbiAgZ2V0IG9yaWdpbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5vcmlnaW5cbiAgfVxuXG4gIGdldCBsYXN0RXZlbnRJZCAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5sYXN0RXZlbnRJZFxuICB9XG5cbiAgZ2V0IHNvdXJjZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5zb3VyY2VcbiAgfVxuXG4gIGdldCBwb3J0cyAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgTWVzc2FnZUV2ZW50KVxuXG4gICAgaWYgKCFPYmplY3QuaXNGcm96ZW4odGhpcy4jZXZlbnRJbml0LnBvcnRzKSkge1xuICAgICAgT2JqZWN0LmZyZWV6ZSh0aGlzLiNldmVudEluaXQucG9ydHMpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5wb3J0c1xuICB9XG5cbiAgaW5pdE1lc3NhZ2VFdmVudCAoXG4gICAgdHlwZSxcbiAgICBidWJibGVzID0gZmFsc2UsXG4gICAgY2FuY2VsYWJsZSA9IGZhbHNlLFxuICAgIGRhdGEgPSBudWxsLFxuICAgIG9yaWdpbiA9ICcnLFxuICAgIGxhc3RFdmVudElkID0gJycsXG4gICAgc291cmNlID0gbnVsbCxcbiAgICBwb3J0cyA9IFtdXG4gICkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIE1lc3NhZ2VFdmVudClcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdNZXNzYWdlRXZlbnQuaW5pdE1lc3NhZ2VFdmVudCcgfSlcblxuICAgIHJldHVybiBuZXcgTWVzc2FnZUV2ZW50KHR5cGUsIHtcbiAgICAgIGJ1YmJsZXMsIGNhbmNlbGFibGUsIGRhdGEsIG9yaWdpbiwgbGFzdEV2ZW50SWQsIHNvdXJjZSwgcG9ydHNcbiAgICB9KVxuICB9XG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyN0aGUtY2xvc2VldmVudC1pbnRlcmZhY2VcbiAqL1xuY2xhc3MgQ2xvc2VFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgI2V2ZW50SW5pdFxuXG4gIGNvbnN0cnVjdG9yICh0eXBlLCBldmVudEluaXREaWN0ID0ge30pIHtcbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnQ2xvc2VFdmVudCBjb25zdHJ1Y3RvcicgfSlcblxuICAgIHR5cGUgPSB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcodHlwZSlcbiAgICBldmVudEluaXREaWN0ID0gd2ViaWRsLmNvbnZlcnRlcnMuQ2xvc2VFdmVudEluaXQoZXZlbnRJbml0RGljdClcblxuICAgIHN1cGVyKHR5cGUsIGV2ZW50SW5pdERpY3QpXG5cbiAgICB0aGlzLiNldmVudEluaXQgPSBldmVudEluaXREaWN0XG4gIH1cblxuICBnZXQgd2FzQ2xlYW4gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIENsb3NlRXZlbnQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRJbml0Lndhc0NsZWFuXG4gIH1cblxuICBnZXQgY29kZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2xvc2VFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQuY29kZVxuICB9XG5cbiAgZ2V0IHJlYXNvbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgQ2xvc2VFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQucmVhc29uXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvd2ViYXBwYXBpcy5odG1sI3RoZS1lcnJvcmV2ZW50LWludGVyZmFjZVxuY2xhc3MgRXJyb3JFdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgI2V2ZW50SW5pdFxuXG4gIGNvbnN0cnVjdG9yICh0eXBlLCBldmVudEluaXREaWN0KSB7XG4gICAgd2ViaWRsLmFyZ3VtZW50TGVuZ3RoQ2hlY2soYXJndW1lbnRzLCAxLCB7IGhlYWRlcjogJ0Vycm9yRXZlbnQgY29uc3RydWN0b3InIH0pXG5cbiAgICBzdXBlcih0eXBlLCBldmVudEluaXREaWN0KVxuXG4gICAgdHlwZSA9IHdlYmlkbC5jb252ZXJ0ZXJzLkRPTVN0cmluZyh0eXBlKVxuICAgIGV2ZW50SW5pdERpY3QgPSB3ZWJpZGwuY29udmVydGVycy5FcnJvckV2ZW50SW5pdChldmVudEluaXREaWN0ID8/IHt9KVxuXG4gICAgdGhpcy4jZXZlbnRJbml0ID0gZXZlbnRJbml0RGljdFxuICB9XG5cbiAgZ2V0IG1lc3NhZ2UgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEVycm9yRXZlbnQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRJbml0Lm1lc3NhZ2VcbiAgfVxuXG4gIGdldCBmaWxlbmFtZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgRXJyb3JFdmVudClcblxuICAgIHJldHVybiB0aGlzLiNldmVudEluaXQuZmlsZW5hbWVcbiAgfVxuXG4gIGdldCBsaW5lbm8gKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIEVycm9yRXZlbnQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRJbml0LmxpbmVub1xuICB9XG5cbiAgZ2V0IGNvbG5vICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBFcnJvckV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5jb2xub1xuICB9XG5cbiAgZ2V0IGVycm9yICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBFcnJvckV2ZW50KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50SW5pdC5lcnJvclxuICB9XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKE1lc3NhZ2VFdmVudC5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ01lc3NhZ2VFdmVudCcsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH0sXG4gIGRhdGE6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9yaWdpbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgbGFzdEV2ZW50SWQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIHNvdXJjZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcG9ydHM6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIGluaXRNZXNzYWdlRXZlbnQ6IGtFbnVtZXJhYmxlUHJvcGVydHlcbn0pXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKENsb3NlRXZlbnQucHJvdG90eXBlLCB7XG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdDbG9zZUV2ZW50JyxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSxcbiAgcmVhc29uOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjb2RlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICB3YXNDbGVhbjoga0VudW1lcmFibGVQcm9wZXJ0eVxufSlcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoRXJyb3JFdmVudC5wcm90b3R5cGUsIHtcbiAgW1N5bWJvbC50b1N0cmluZ1RhZ106IHtcbiAgICB2YWx1ZTogJ0Vycm9yRXZlbnQnLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICB9LFxuICBtZXNzYWdlOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBmaWxlbmFtZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgbGluZW5vOiBrRW51bWVyYWJsZVByb3BlcnR5LFxuICBjb2xubzoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZXJyb3I6IGtFbnVtZXJhYmxlUHJvcGVydHlcbn0pXG5cbndlYmlkbC5jb252ZXJ0ZXJzLk1lc3NhZ2VQb3J0ID0gd2ViaWRsLmludGVyZmFjZUNvbnZlcnRlcihNZXNzYWdlUG9ydClcblxud2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPE1lc3NhZ2VQb3J0PiddID0gd2ViaWRsLnNlcXVlbmNlQ29udmVydGVyKFxuICB3ZWJpZGwuY29udmVydGVycy5NZXNzYWdlUG9ydFxuKVxuXG5jb25zdCBldmVudEluaXQgPSBbXG4gIHtcbiAgICBrZXk6ICdidWJibGVzJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnY2FuY2VsYWJsZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ib29sZWFuLFxuICAgIGRlZmF1bHRWYWx1ZTogZmFsc2VcbiAgfSxcbiAge1xuICAgIGtleTogJ2NvbXBvc2VkJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9XG5dXG5cbndlYmlkbC5jb252ZXJ0ZXJzLk1lc3NhZ2VFdmVudEluaXQgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIC4uLmV2ZW50SW5pdCxcbiAge1xuICAgIGtleTogJ2RhdGEnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuYW55LFxuICAgIGRlZmF1bHRWYWx1ZTogbnVsbFxuICB9LFxuICB7XG4gICAga2V5OiAnb3JpZ2luJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLlVTVlN0cmluZyxcbiAgICBkZWZhdWx0VmFsdWU6ICcnXG4gIH0sXG4gIHtcbiAgICBrZXk6ICdsYXN0RXZlbnRJZCcsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgZGVmYXVsdFZhbHVlOiAnJ1xuICB9LFxuICB7XG4gICAga2V5OiAnc291cmNlJyxcbiAgICAvLyBOb2RlIGRvZXNuJ3QgaW1wbGVtZW50IFdpbmRvd1Byb3h5IG9yIFNlcnZpY2VXb3JrZXIsIHNvIHRoZSBvbmx5XG4gICAgLy8gdmFsaWQgdmFsdWUgZm9yIHNvdXJjZSBpcyBhIE1lc3NhZ2VQb3J0LlxuICAgIGNvbnZlcnRlcjogd2ViaWRsLm51bGxhYmxlQ29udmVydGVyKHdlYmlkbC5jb252ZXJ0ZXJzLk1lc3NhZ2VQb3J0KSxcbiAgICBkZWZhdWx0VmFsdWU6IG51bGxcbiAgfSxcbiAge1xuICAgIGtleTogJ3BvcnRzJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxNZXNzYWdlUG9ydD4nXSxcbiAgICBnZXQgZGVmYXVsdFZhbHVlICgpIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cbiAgfVxuXSlcblxud2ViaWRsLmNvbnZlcnRlcnMuQ2xvc2VFdmVudEluaXQgPSB3ZWJpZGwuZGljdGlvbmFyeUNvbnZlcnRlcihbXG4gIC4uLmV2ZW50SW5pdCxcbiAge1xuICAgIGtleTogJ3dhc0NsZWFuJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmJvb2xlYW4sXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZVxuICB9LFxuICB7XG4gICAga2V5OiAnY29kZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgc2hvcnQnXSxcbiAgICBkZWZhdWx0VmFsdWU6IDBcbiAgfSxcbiAge1xuICAgIGtleTogJ3JlYXNvbicsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcsXG4gICAgZGVmYXVsdFZhbHVlOiAnJ1xuICB9XG5dKVxuXG53ZWJpZGwuY29udmVydGVycy5FcnJvckV2ZW50SW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAgLi4uZXZlbnRJbml0LFxuICB7XG4gICAga2V5OiAnbWVzc2FnZScsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcsXG4gICAgZGVmYXVsdFZhbHVlOiAnJ1xuICB9LFxuICB7XG4gICAga2V5OiAnZmlsZW5hbWUnLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnMuVVNWU3RyaW5nLFxuICAgIGRlZmF1bHRWYWx1ZTogJydcbiAgfSxcbiAge1xuICAgIGtleTogJ2xpbmVubycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgbG9uZyddLFxuICAgIGRlZmF1bHRWYWx1ZTogMFxuICB9LFxuICB7XG4gICAga2V5OiAnY29sbm8nLFxuICAgIGNvbnZlcnRlcjogd2ViaWRsLmNvbnZlcnRlcnNbJ3Vuc2lnbmVkIGxvbmcnXSxcbiAgICBkZWZhdWx0VmFsdWU6IDBcbiAgfSxcbiAge1xuICAgIGtleTogJ2Vycm9yJyxcbiAgICBjb252ZXJ0ZXI6IHdlYmlkbC5jb252ZXJ0ZXJzLmFueVxuICB9XG5dKVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgTWVzc2FnZUV2ZW50LFxuICBDbG9zZUV2ZW50LFxuICBFcnJvckV2ZW50XG59XG4iLCAiJ3VzZSBzdHJpY3QnXG5cbmNvbnN0IHsga1JlYWR5U3RhdGUsIGtDb250cm9sbGVyLCBrUmVzcG9uc2UsIGtCaW5hcnlUeXBlLCBrV2ViU29ja2V0VVJMIH0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBzdGF0ZXMsIG9wY29kZXMgfSA9IHJlcXVpcmUoJy4vY29uc3RhbnRzJylcbmNvbnN0IHsgTWVzc2FnZUV2ZW50LCBFcnJvckV2ZW50IH0gPSByZXF1aXJlKCcuL2V2ZW50cycpXG5cbi8qIGdsb2JhbHMgQmxvYiAqL1xuXG4vKipcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL3dlYnNvY2tldCcpLldlYlNvY2tldH0gd3NcbiAqL1xuZnVuY3Rpb24gaXNFc3RhYmxpc2hlZCAod3MpIHtcbiAgLy8gSWYgdGhlIHNlcnZlcidzIHJlc3BvbnNlIGlzIHZhbGlkYXRlZCBhcyBwcm92aWRlZCBmb3IgYWJvdmUsIGl0IGlzXG4gIC8vIHNhaWQgdGhhdCBfVGhlIFdlYlNvY2tldCBDb25uZWN0aW9uIGlzIEVzdGFibGlzaGVkXyBhbmQgdGhhdCB0aGVcbiAgLy8gV2ViU29ja2V0IENvbm5lY3Rpb24gaXMgaW4gdGhlIE9QRU4gc3RhdGUuXG4gIHJldHVybiB3c1trUmVhZHlTdGF0ZV0gPT09IHN0YXRlcy5PUEVOXG59XG5cbi8qKlxuICogQHBhcmFtIHtpbXBvcnQoJy4vd2Vic29ja2V0JykuV2ViU29ja2V0fSB3c1xuICovXG5mdW5jdGlvbiBpc0Nsb3NpbmcgKHdzKSB7XG4gIC8vIFVwb24gZWl0aGVyIHNlbmRpbmcgb3IgcmVjZWl2aW5nIGEgQ2xvc2UgY29udHJvbCBmcmFtZSwgaXQgaXMgc2FpZFxuICAvLyB0aGF0IF9UaGUgV2ViU29ja2V0IENsb3NpbmcgSGFuZHNoYWtlIGlzIFN0YXJ0ZWRfIGFuZCB0aGF0IHRoZVxuICAvLyBXZWJTb2NrZXQgY29ubmVjdGlvbiBpcyBpbiB0aGUgQ0xPU0lORyBzdGF0ZS5cbiAgcmV0dXJuIHdzW2tSZWFkeVN0YXRlXSA9PT0gc3RhdGVzLkNMT1NJTkdcbn1cblxuLyoqXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi93ZWJzb2NrZXQnKS5XZWJTb2NrZXR9IHdzXG4gKi9cbmZ1bmN0aW9uIGlzQ2xvc2VkICh3cykge1xuICByZXR1cm4gd3Nba1JlYWR5U3RhdGVdID09PSBzdGF0ZXMuQ0xPU0VEXG59XG5cbi8qKlxuICogQHNlZSBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtZXZlbnQtZmlyZVxuICogQHBhcmFtIHtzdHJpbmd9IGVcbiAqIEBwYXJhbSB7RXZlbnRUYXJnZXR9IHRhcmdldFxuICogQHBhcmFtIHtFdmVudEluaXQgfCB1bmRlZmluZWR9IGV2ZW50SW5pdERpY3RcbiAqL1xuZnVuY3Rpb24gZmlyZUV2ZW50IChlLCB0YXJnZXQsIGV2ZW50Q29uc3RydWN0b3IgPSBFdmVudCwgZXZlbnRJbml0RGljdCkge1xuICAvLyAxLiBJZiBldmVudENvbnN0cnVjdG9yIGlzIG5vdCBnaXZlbiwgdGhlbiBsZXQgZXZlbnRDb25zdHJ1Y3RvciBiZSBFdmVudC5cblxuICAvLyAyLiBMZXQgZXZlbnQgYmUgdGhlIHJlc3VsdCBvZiBjcmVhdGluZyBhbiBldmVudCBnaXZlbiBldmVudENvbnN0cnVjdG9yLFxuICAvLyAgICBpbiB0aGUgcmVsZXZhbnQgcmVhbG0gb2YgdGFyZ2V0LlxuICAvLyAzLiBJbml0aWFsaXplIGV2ZW50XHUyMDE5cyB0eXBlIGF0dHJpYnV0ZSB0byBlLlxuICBjb25zdCBldmVudCA9IG5ldyBldmVudENvbnN0cnVjdG9yKGUsIGV2ZW50SW5pdERpY3QpIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbmV3LWNhcFxuXG4gIC8vIDQuIEluaXRpYWxpemUgYW55IG90aGVyIElETCBhdHRyaWJ1dGVzIG9mIGV2ZW50IGFzIGRlc2NyaWJlZCBpbiB0aGVcbiAgLy8gICAgaW52b2NhdGlvbiBvZiB0aGlzIGFsZ29yaXRobS5cblxuICAvLyA1LiBSZXR1cm4gdGhlIHJlc3VsdCBvZiBkaXNwYXRjaGluZyBldmVudCBhdCB0YXJnZXQsIHdpdGggbGVnYWN5IHRhcmdldFxuICAvLyAgICBvdmVycmlkZSBmbGFnIHNldCBpZiBzZXQuXG4gIHRhcmdldC5kaXNwYXRjaEV2ZW50KGV2ZW50KVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZmVlZGJhY2stZnJvbS10aGUtcHJvdG9jb2xcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL3dlYnNvY2tldCcpLldlYlNvY2tldH0gd3NcbiAqIEBwYXJhbSB7bnVtYmVyfSB0eXBlIE9wY29kZVxuICogQHBhcmFtIHtCdWZmZXJ9IGRhdGEgYXBwbGljYXRpb24gZGF0YVxuICovXG5mdW5jdGlvbiB3ZWJzb2NrZXRNZXNzYWdlUmVjZWl2ZWQgKHdzLCB0eXBlLCBkYXRhKSB7XG4gIC8vIDEuIElmIHJlYWR5IHN0YXRlIGlzIG5vdCBPUEVOICgxKSwgdGhlbiByZXR1cm4uXG4gIGlmICh3c1trUmVhZHlTdGF0ZV0gIT09IHN0YXRlcy5PUEVOKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICAvLyAyLiBMZXQgZGF0YUZvckV2ZW50IGJlIGRldGVybWluZWQgYnkgc3dpdGNoaW5nIG9uIHR5cGUgYW5kIGJpbmFyeSB0eXBlOlxuICBsZXQgZGF0YUZvckV2ZW50XG5cbiAgaWYgKHR5cGUgPT09IG9wY29kZXMuVEVYVCkge1xuICAgIC8vIC0+IHR5cGUgaW5kaWNhdGVzIHRoYXQgdGhlIGRhdGEgaXMgVGV4dFxuICAgIC8vICAgICAgYSBuZXcgRE9NU3RyaW5nIGNvbnRhaW5pbmcgZGF0YVxuICAgIHRyeSB7XG4gICAgICBkYXRhRm9yRXZlbnQgPSBuZXcgVGV4dERlY29kZXIoJ3V0Zi04JywgeyBmYXRhbDogdHJ1ZSB9KS5kZWNvZGUoZGF0YSlcbiAgICB9IGNhdGNoIHtcbiAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnUmVjZWl2ZWQgaW52YWxpZCBVVEYtOCBpbiB0ZXh0IGZyYW1lLicpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gb3Bjb2Rlcy5CSU5BUlkpIHtcbiAgICBpZiAod3Nba0JpbmFyeVR5cGVdID09PSAnYmxvYicpIHtcbiAgICAgIC8vIC0+IHR5cGUgaW5kaWNhdGVzIHRoYXQgdGhlIGRhdGEgaXMgQmluYXJ5IGFuZCBiaW5hcnkgdHlwZSBpcyBcImJsb2JcIlxuICAgICAgLy8gICAgICBhIG5ldyBCbG9iIG9iamVjdCwgY3JlYXRlZCBpbiB0aGUgcmVsZXZhbnQgUmVhbG0gb2YgdGhlIFdlYlNvY2tldFxuICAgICAgLy8gICAgICBvYmplY3QsIHRoYXQgcmVwcmVzZW50cyBkYXRhIGFzIGl0cyByYXcgZGF0YVxuICAgICAgZGF0YUZvckV2ZW50ID0gbmV3IEJsb2IoW2RhdGFdKVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyAtPiB0eXBlIGluZGljYXRlcyB0aGF0IHRoZSBkYXRhIGlzIEJpbmFyeSBhbmQgYmluYXJ5IHR5cGUgaXMgXCJhcnJheWJ1ZmZlclwiXG4gICAgICAvLyAgICAgIGEgbmV3IEFycmF5QnVmZmVyIG9iamVjdCwgY3JlYXRlZCBpbiB0aGUgcmVsZXZhbnQgUmVhbG0gb2YgdGhlXG4gICAgICAvLyAgICAgIFdlYlNvY2tldCBvYmplY3QsIHdob3NlIGNvbnRlbnRzIGFyZSBkYXRhXG4gICAgICBkYXRhRm9yRXZlbnQgPSBuZXcgVWludDhBcnJheShkYXRhKS5idWZmZXJcbiAgICB9XG4gIH1cblxuICAvLyAzLiBGaXJlIGFuIGV2ZW50IG5hbWVkIG1lc3NhZ2UgYXQgdGhlIFdlYlNvY2tldCBvYmplY3QsIHVzaW5nIE1lc3NhZ2VFdmVudCxcbiAgLy8gICAgd2l0aCB0aGUgb3JpZ2luIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0byB0aGUgc2VyaWFsaXphdGlvbiBvZiB0aGUgV2ViU29ja2V0XG4gIC8vICAgIG9iamVjdFx1MjAxOXMgdXJsJ3Mgb3JpZ2luLCBhbmQgdGhlIGRhdGEgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIGRhdGFGb3JFdmVudC5cbiAgZmlyZUV2ZW50KCdtZXNzYWdlJywgd3MsIE1lc3NhZ2VFdmVudCwge1xuICAgIG9yaWdpbjogd3Nba1dlYlNvY2tldFVSTF0ub3JpZ2luLFxuICAgIGRhdGE6IGRhdGFGb3JFdmVudFxuICB9KVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM2NDU1XG4gKiBAc2VlIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjMjYxNlxuICogQHNlZSBodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD0zOTg0MDdcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcm90b2NvbFxuICovXG5mdW5jdGlvbiBpc1ZhbGlkU3VicHJvdG9jb2wgKHByb3RvY29sKSB7XG4gIC8vIElmIHByZXNlbnQsIHRoaXMgdmFsdWUgaW5kaWNhdGVzIG9uZVxuICAvLyBvciBtb3JlIGNvbW1hLXNlcGFyYXRlZCBzdWJwcm90b2NvbCB0aGUgY2xpZW50IHdpc2hlcyB0byBzcGVhayxcbiAgLy8gb3JkZXJlZCBieSBwcmVmZXJlbmNlLiAgVGhlIGVsZW1lbnRzIHRoYXQgY29tcHJpc2UgdGhpcyB2YWx1ZVxuICAvLyBNVVNUIGJlIG5vbi1lbXB0eSBzdHJpbmdzIHdpdGggY2hhcmFjdGVycyBpbiB0aGUgcmFuZ2UgVSswMDIxIHRvXG4gIC8vIFUrMDA3RSBub3QgaW5jbHVkaW5nIHNlcGFyYXRvciBjaGFyYWN0ZXJzIGFzIGRlZmluZWQgaW5cbiAgLy8gW1JGQzI2MTZdIGFuZCBNVVNUIGFsbCBiZSB1bmlxdWUgc3RyaW5ncy5cbiAgaWYgKHByb3RvY29sLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgZm9yIChjb25zdCBjaGFyIG9mIHByb3RvY29sKSB7XG4gICAgY29uc3QgY29kZSA9IGNoYXIuY2hhckNvZGVBdCgwKVxuXG4gICAgaWYgKFxuICAgICAgY29kZSA8IDB4MjEgfHxcbiAgICAgIGNvZGUgPiAweDdFIHx8XG4gICAgICBjaGFyID09PSAnKCcgfHxcbiAgICAgIGNoYXIgPT09ICcpJyB8fFxuICAgICAgY2hhciA9PT0gJzwnIHx8XG4gICAgICBjaGFyID09PSAnPicgfHxcbiAgICAgIGNoYXIgPT09ICdAJyB8fFxuICAgICAgY2hhciA9PT0gJywnIHx8XG4gICAgICBjaGFyID09PSAnOycgfHxcbiAgICAgIGNoYXIgPT09ICc6JyB8fFxuICAgICAgY2hhciA9PT0gJ1xcXFwnIHx8XG4gICAgICBjaGFyID09PSAnXCInIHx8XG4gICAgICBjaGFyID09PSAnLycgfHxcbiAgICAgIGNoYXIgPT09ICdbJyB8fFxuICAgICAgY2hhciA9PT0gJ10nIHx8XG4gICAgICBjaGFyID09PSAnPycgfHxcbiAgICAgIGNoYXIgPT09ICc9JyB8fFxuICAgICAgY2hhciA9PT0gJ3snIHx8XG4gICAgICBjaGFyID09PSAnfScgfHxcbiAgICAgIGNvZGUgPT09IDMyIHx8IC8vIFNQXG4gICAgICBjb2RlID09PSA5IC8vIEhUXG4gICAgKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM2NDU1I3NlY3Rpb24tNy00XG4gKiBAcGFyYW0ge251bWJlcn0gY29kZVxuICovXG5mdW5jdGlvbiBpc1ZhbGlkU3RhdHVzQ29kZSAoY29kZSkge1xuICBpZiAoY29kZSA+PSAxMDAwICYmIGNvZGUgPCAxMDE1KSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGNvZGUgIT09IDEwMDQgJiYgLy8gcmVzZXJ2ZWRcbiAgICAgIGNvZGUgIT09IDEwMDUgJiYgLy8gXCJNVVNUIE5PVCBiZSBzZXQgYXMgYSBzdGF0dXMgY29kZVwiXG4gICAgICBjb2RlICE9PSAxMDA2IC8vIFwiTVVTVCBOT1QgYmUgc2V0IGFzIGEgc3RhdHVzIGNvZGVcIlxuICAgIClcbiAgfVxuXG4gIHJldHVybiBjb2RlID49IDMwMDAgJiYgY29kZSA8PSA0OTk5XG59XG5cbi8qKlxuICogQHBhcmFtIHtpbXBvcnQoJy4vd2Vic29ja2V0JykuV2ViU29ja2V0fSB3c1xuICogQHBhcmFtIHtzdHJpbmd8dW5kZWZpbmVkfSByZWFzb25cbiAqL1xuZnVuY3Rpb24gZmFpbFdlYnNvY2tldENvbm5lY3Rpb24gKHdzLCByZWFzb24pIHtcbiAgY29uc3QgeyBba0NvbnRyb2xsZXJdOiBjb250cm9sbGVyLCBba1Jlc3BvbnNlXTogcmVzcG9uc2UgfSA9IHdzXG5cbiAgY29udHJvbGxlci5hYm9ydCgpXG5cbiAgaWYgKHJlc3BvbnNlPy5zb2NrZXQgJiYgIXJlc3BvbnNlLnNvY2tldC5kZXN0cm95ZWQpIHtcbiAgICByZXNwb25zZS5zb2NrZXQuZGVzdHJveSgpXG4gIH1cblxuICBpZiAocmVhc29uKSB7XG4gICAgZmlyZUV2ZW50KCdlcnJvcicsIHdzLCBFcnJvckV2ZW50LCB7XG4gICAgICBlcnJvcjogbmV3IEVycm9yKHJlYXNvbilcbiAgICB9KVxuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBpc0VzdGFibGlzaGVkLFxuICBpc0Nsb3NpbmcsXG4gIGlzQ2xvc2VkLFxuICBmaXJlRXZlbnQsXG4gIGlzVmFsaWRTdWJwcm90b2NvbCxcbiAgaXNWYWxpZFN0YXR1c0NvZGUsXG4gIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uLFxuICB3ZWJzb2NrZXRNZXNzYWdlUmVjZWl2ZWRcbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgZGlhZ25vc3RpY3NDaGFubmVsID0gcmVxdWlyZSgnZGlhZ25vc3RpY3NfY2hhbm5lbCcpXG5jb25zdCB7IHVpZCwgc3RhdGVzIH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5jb25zdCB7XG4gIGtSZWFkeVN0YXRlLFxuICBrU2VudENsb3NlLFxuICBrQnl0ZVBhcnNlcixcbiAga1JlY2VpdmVkQ2xvc2Vcbn0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBmaXJlRXZlbnQsIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uIH0gPSByZXF1aXJlKCcuL3V0aWwnKVxuY29uc3QgeyBDbG9zZUV2ZW50IH0gPSByZXF1aXJlKCcuL2V2ZW50cycpXG5jb25zdCB7IG1ha2VSZXF1ZXN0IH0gPSByZXF1aXJlKCcuLi9mZXRjaC9yZXF1ZXN0JylcbmNvbnN0IHsgZmV0Y2hpbmcgfSA9IHJlcXVpcmUoJy4uL2ZldGNoL2luZGV4JylcbmNvbnN0IHsgSGVhZGVycyB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvaGVhZGVycycpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5jb25zdCB7IGtIZWFkZXJzTGlzdCB9ID0gcmVxdWlyZSgnLi4vY29yZS9zeW1ib2xzJylcblxuY29uc3QgY2hhbm5lbHMgPSB7fVxuY2hhbm5lbHMub3BlbiA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6d2Vic29ja2V0Om9wZW4nKVxuY2hhbm5lbHMuY2xvc2UgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOndlYnNvY2tldDpjbG9zZScpXG5jaGFubmVscy5zb2NrZXRFcnJvciA9IGRpYWdub3N0aWNzQ2hhbm5lbC5jaGFubmVsKCd1bmRpY2k6d2Vic29ja2V0OnNvY2tldF9lcnJvcicpXG5cbi8qKiBAdHlwZSB7aW1wb3J0KCdjcnlwdG8nKX0gKi9cbmxldCBjcnlwdG9cbnRyeSB7XG4gIGNyeXB0byA9IHJlcXVpcmUoJ2NyeXB0bycpXG59IGNhdGNoIHtcblxufVxuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jY29uY2VwdC13ZWJzb2NrZXQtZXN0YWJsaXNoXG4gKiBAcGFyYW0ge1VSTH0gdXJsXG4gKiBAcGFyYW0ge3N0cmluZ3xzdHJpbmdbXX0gcHJvdG9jb2xzXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi93ZWJzb2NrZXQnKS5XZWJTb2NrZXR9IHdzXG4gKiBAcGFyYW0geyhyZXNwb25zZTogYW55KSA9PiB2b2lkfSBvbkVzdGFibGlzaFxuICogQHBhcmFtIHtQYXJ0aWFsPGltcG9ydCgnLi4vLi4vdHlwZXMvd2Vic29ja2V0JykuV2ViU29ja2V0SW5pdD59IG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gZXN0YWJsaXNoV2ViU29ja2V0Q29ubmVjdGlvbiAodXJsLCBwcm90b2NvbHMsIHdzLCBvbkVzdGFibGlzaCwgb3B0aW9ucykge1xuICAvLyAxLiBMZXQgcmVxdWVzdFVSTCBiZSBhIGNvcHkgb2YgdXJsLCB3aXRoIGl0cyBzY2hlbWUgc2V0IHRvIFwiaHR0cFwiLCBpZiB1cmxcdTIwMTlzXG4gIC8vICAgIHNjaGVtZSBpcyBcIndzXCIsIGFuZCB0byBcImh0dHBzXCIgb3RoZXJ3aXNlLlxuICBjb25zdCByZXF1ZXN0VVJMID0gdXJsXG5cbiAgcmVxdWVzdFVSTC5wcm90b2NvbCA9IHVybC5wcm90b2NvbCA9PT0gJ3dzOicgPyAnaHR0cDonIDogJ2h0dHBzOidcblxuICAvLyAyLiBMZXQgcmVxdWVzdCBiZSBhIG5ldyByZXF1ZXN0LCB3aG9zZSBVUkwgaXMgcmVxdWVzdFVSTCwgY2xpZW50IGlzIGNsaWVudCxcbiAgLy8gICAgc2VydmljZS13b3JrZXJzIG1vZGUgaXMgXCJub25lXCIsIHJlZmVycmVyIGlzIFwibm8tcmVmZXJyZXJcIiwgbW9kZSBpc1xuICAvLyAgICBcIndlYnNvY2tldFwiLCBjcmVkZW50aWFscyBtb2RlIGlzIFwiaW5jbHVkZVwiLCBjYWNoZSBtb2RlIGlzIFwibm8tc3RvcmVcIiAsXG4gIC8vICAgIGFuZCByZWRpcmVjdCBtb2RlIGlzIFwiZXJyb3JcIi5cbiAgY29uc3QgcmVxdWVzdCA9IG1ha2VSZXF1ZXN0KHtcbiAgICB1cmxMaXN0OiBbcmVxdWVzdFVSTF0sXG4gICAgc2VydmljZVdvcmtlcnM6ICdub25lJyxcbiAgICByZWZlcnJlcjogJ25vLXJlZmVycmVyJyxcbiAgICBtb2RlOiAnd2Vic29ja2V0JyxcbiAgICBjcmVkZW50aWFsczogJ2luY2x1ZGUnLFxuICAgIGNhY2hlOiAnbm8tc3RvcmUnLFxuICAgIHJlZGlyZWN0OiAnZXJyb3InXG4gIH0pXG5cbiAgLy8gTm90ZTogdW5kaWNpIGV4dGVuc2lvbiwgYWxsb3cgc2V0dGluZyBjdXN0b20gaGVhZGVycy5cbiAgaWYgKG9wdGlvbnMuaGVhZGVycykge1xuICAgIGNvbnN0IGhlYWRlcnNMaXN0ID0gbmV3IEhlYWRlcnMob3B0aW9ucy5oZWFkZXJzKVtrSGVhZGVyc0xpc3RdXG5cbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0ID0gaGVhZGVyc0xpc3RcbiAgfVxuXG4gIC8vIDMuIEFwcGVuZCAoYFVwZ3JhZGVgLCBgd2Vic29ja2V0YCkgdG8gcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gIC8vIDQuIEFwcGVuZCAoYENvbm5lY3Rpb25gLCBgVXBncmFkZWApIHRvIHJlcXVlc3RcdTIwMTlzIGhlYWRlciBsaXN0LlxuICAvLyBOb3RlOiBib3RoIG9mIHRoZXNlIGFyZSBoYW5kbGVkIGJ5IHVuZGljaSBjdXJyZW50bHkuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ub2RlanMvdW5kaWNpL2Jsb2IvNjhjMjY5YzQxNDRjNDQ2ZjNmMTIyMDk1MTMzOGRhZWY0YTZiNWVjNC9saWIvY2xpZW50LmpzI0wxMzk3XG5cbiAgLy8gNS4gTGV0IGtleVZhbHVlIGJlIGEgbm9uY2UgY29uc2lzdGluZyBvZiBhIHJhbmRvbWx5IHNlbGVjdGVkXG4gIC8vICAgIDE2LWJ5dGUgdmFsdWUgdGhhdCBoYXMgYmVlbiBmb3JnaXZpbmctYmFzZTY0LWVuY29kZWQgYW5kXG4gIC8vICAgIGlzb21vcnBoaWMgZW5jb2RlZC5cbiAgY29uc3Qga2V5VmFsdWUgPSBjcnlwdG8ucmFuZG9tQnl0ZXMoMTYpLnRvU3RyaW5nKCdiYXNlNjQnKVxuXG4gIC8vIDYuIEFwcGVuZCAoYFNlYy1XZWJTb2NrZXQtS2V5YCwga2V5VmFsdWUpIHRvIHJlcXVlc3RcdTIwMTlzXG4gIC8vICAgIGhlYWRlciBsaXN0LlxuICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnc2VjLXdlYnNvY2tldC1rZXknLCBrZXlWYWx1ZSlcblxuICAvLyA3LiBBcHBlbmQgKGBTZWMtV2ViU29ja2V0LVZlcnNpb25gLCBgMTNgKSB0byByZXF1ZXN0XHUyMDE5c1xuICAvLyAgICBoZWFkZXIgbGlzdC5cbiAgcmVxdWVzdC5oZWFkZXJzTGlzdC5hcHBlbmQoJ3NlYy13ZWJzb2NrZXQtdmVyc2lvbicsICcxMycpXG5cbiAgLy8gOC4gRm9yIGVhY2ggcHJvdG9jb2wgaW4gcHJvdG9jb2xzLCBjb21iaW5lXG4gIC8vICAgIChgU2VjLVdlYlNvY2tldC1Qcm90b2NvbGAsIHByb3RvY29sKSBpbiByZXF1ZXN0XHUyMDE5cyBoZWFkZXJcbiAgLy8gICAgbGlzdC5cbiAgZm9yIChjb25zdCBwcm90b2NvbCBvZiBwcm90b2NvbHMpIHtcbiAgICByZXF1ZXN0LmhlYWRlcnNMaXN0LmFwcGVuZCgnc2VjLXdlYnNvY2tldC1wcm90b2NvbCcsIHByb3RvY29sKVxuICB9XG5cbiAgLy8gOS4gTGV0IHBlcm1lc3NhZ2VEZWZsYXRlIGJlIGEgdXNlci1hZ2VudCBkZWZpbmVkXG4gIC8vICAgIFwicGVybWVzc2FnZS1kZWZsYXRlXCIgZXh0ZW5zaW9uIGhlYWRlciB2YWx1ZS5cbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL21vemlsbGEvZ2Vja28tZGV2L2Jsb2IvY2U3ODIzNGY1ZTY1M2E1ZDM5MTY4MTNmZjk5MGYwNTM1MTAyMjdiYy9uZXR3ZXJrL3Byb3RvY29sL3dlYnNvY2tldC9XZWJTb2NrZXRDaGFubmVsLmNwcCNMMjY3M1xuICAvLyBUT0RPOiBlbmFibGUgb25jZSBwZXJtZXNzYWdlLWRlZmxhdGUgaXMgc3VwcG9ydGVkXG4gIGNvbnN0IHBlcm1lc3NhZ2VEZWZsYXRlID0gJycgLy8gJ3Blcm1lc3NhZ2UtZGVmbGF0ZTsgMTUnXG5cbiAgLy8gMTAuIEFwcGVuZCAoYFNlYy1XZWJTb2NrZXQtRXh0ZW5zaW9uc2AsIHBlcm1lc3NhZ2VEZWZsYXRlKSB0b1xuICAvLyAgICAgcmVxdWVzdFx1MjAxOXMgaGVhZGVyIGxpc3QuXG4gIC8vIHJlcXVlc3QuaGVhZGVyc0xpc3QuYXBwZW5kKCdzZWMtd2Vic29ja2V0LWV4dGVuc2lvbnMnLCBwZXJtZXNzYWdlRGVmbGF0ZSlcblxuICAvLyAxMS4gRmV0Y2ggcmVxdWVzdCB3aXRoIHVzZVBhcmFsbGVsUXVldWUgc2V0IHRvIHRydWUsIGFuZFxuICAvLyAgICAgcHJvY2Vzc1Jlc3BvbnNlIGdpdmVuIHJlc3BvbnNlIGJlaW5nIHRoZXNlIHN0ZXBzOlxuICBjb25zdCBjb250cm9sbGVyID0gZmV0Y2hpbmcoe1xuICAgIHJlcXVlc3QsXG4gICAgdXNlUGFyYWxsZWxRdWV1ZTogdHJ1ZSxcbiAgICBkaXNwYXRjaGVyOiBvcHRpb25zLmRpc3BhdGNoZXIgPz8gZ2V0R2xvYmFsRGlzcGF0Y2hlcigpLFxuICAgIHByb2Nlc3NSZXNwb25zZSAocmVzcG9uc2UpIHtcbiAgICAgIC8vIDEuIElmIHJlc3BvbnNlIGlzIGEgbmV0d29yayBlcnJvciBvciBpdHMgc3RhdHVzIGlzIG5vdCAxMDEsXG4gICAgICAvLyAgICBmYWlsIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi5cbiAgICAgIGlmIChyZXNwb25zZS50eXBlID09PSAnZXJyb3InIHx8IHJlc3BvbnNlLnN0YXR1cyAhPT0gMTAxKSB7XG4gICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnUmVjZWl2ZWQgbmV0d29yayBlcnJvciBvciBub24tMTAxIHN0YXR1cyBjb2RlLicpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAyLiBJZiBwcm90b2NvbHMgaXMgbm90IHRoZSBlbXB0eSBsaXN0IGFuZCBleHRyYWN0aW5nIGhlYWRlclxuICAgICAgLy8gICAgbGlzdCB2YWx1ZXMgZ2l2ZW4gYFNlYy1XZWJTb2NrZXQtUHJvdG9jb2xgIGFuZCByZXNwb25zZVx1MjAxOXNcbiAgICAgIC8vICAgIGhlYWRlciBsaXN0IHJlc3VsdHMgaW4gbnVsbCwgZmFpbHVyZSwgb3IgdGhlIGVtcHR5IGJ5dGVcbiAgICAgIC8vICAgIHNlcXVlbmNlLCB0aGVuIGZhaWwgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuICAgICAgaWYgKHByb3RvY29scy5sZW5ndGggIT09IDAgJiYgIXJlc3BvbnNlLmhlYWRlcnNMaXN0LmdldCgnU2VjLVdlYlNvY2tldC1Qcm90b2NvbCcpKSB7XG4gICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnU2VydmVyIGRpZCBub3QgcmVzcG9uZCB3aXRoIHNlbnQgcHJvdG9jb2xzLicpXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICAvLyAzLiBGb2xsb3cgdGhlIHJlcXVpcmVtZW50cyBzdGF0ZWQgc3RlcCAyIHRvIHN0ZXAgNiwgaW5jbHVzaXZlLFxuICAgICAgLy8gICAgb2YgdGhlIGxhc3Qgc2V0IG9mIHN0ZXBzIGluIHNlY3Rpb24gNC4xIG9mIFRoZSBXZWJTb2NrZXRcbiAgICAgIC8vICAgIFByb3RvY29sIHRvIHZhbGlkYXRlIHJlc3BvbnNlLiBUaGlzIGVpdGhlciByZXN1bHRzIGluIGZhaWxcbiAgICAgIC8vICAgIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBvciB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gaXNcbiAgICAgIC8vICAgIGVzdGFibGlzaGVkLlxuXG4gICAgICAvLyAyLiBJZiB0aGUgcmVzcG9uc2UgbGFja3MgYW4gfFVwZ3JhZGV8IGhlYWRlciBmaWVsZCBvciB0aGUgfFVwZ3JhZGV8XG4gICAgICAvLyAgICBoZWFkZXIgZmllbGQgY29udGFpbnMgYSB2YWx1ZSB0aGF0IGlzIG5vdCBhbiBBU0NJSSBjYXNlLVxuICAgICAgLy8gICAgaW5zZW5zaXRpdmUgbWF0Y2ggZm9yIHRoZSB2YWx1ZSBcIndlYnNvY2tldFwiLCB0aGUgY2xpZW50IE1VU1RcbiAgICAgIC8vICAgIF9GYWlsIHRoZSBXZWJTb2NrZXQgQ29ubmVjdGlvbl8uXG4gICAgICBpZiAocmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdVcGdyYWRlJyk/LnRvTG93ZXJDYXNlKCkgIT09ICd3ZWJzb2NrZXQnKSB7XG4gICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHdzLCAnU2VydmVyIGRpZCBub3Qgc2V0IFVwZ3JhZGUgaGVhZGVyIHRvIFwid2Vic29ja2V0XCIuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDMuIElmIHRoZSByZXNwb25zZSBsYWNrcyBhIHxDb25uZWN0aW9ufCBoZWFkZXIgZmllbGQgb3IgdGhlXG4gICAgICAvLyAgICB8Q29ubmVjdGlvbnwgaGVhZGVyIGZpZWxkIGRvZXNuJ3QgY29udGFpbiBhIHRva2VuIHRoYXQgaXMgYW5cbiAgICAgIC8vICAgIEFTQ0lJIGNhc2UtaW5zZW5zaXRpdmUgbWF0Y2ggZm9yIHRoZSB2YWx1ZSBcIlVwZ3JhZGVcIiwgdGhlIGNsaWVudFxuICAgICAgLy8gICAgTVVTVCBfRmFpbCB0aGUgV2ViU29ja2V0IENvbm5lY3Rpb25fLlxuICAgICAgaWYgKHJlc3BvbnNlLmhlYWRlcnNMaXN0LmdldCgnQ29ubmVjdGlvbicpPy50b0xvd2VyQ2FzZSgpICE9PSAndXBncmFkZScpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdTZXJ2ZXIgZGlkIG5vdCBzZXQgQ29ubmVjdGlvbiBoZWFkZXIgdG8gXCJ1cGdyYWRlXCIuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDQuIElmIHRoZSByZXNwb25zZSBsYWNrcyBhIHxTZWMtV2ViU29ja2V0LUFjY2VwdHwgaGVhZGVyIGZpZWxkIG9yXG4gICAgICAvLyAgICB0aGUgfFNlYy1XZWJTb2NrZXQtQWNjZXB0fCBjb250YWlucyBhIHZhbHVlIG90aGVyIHRoYW4gdGhlXG4gICAgICAvLyAgICBiYXNlNjQtZW5jb2RlZCBTSEEtMSBvZiB0aGUgY29uY2F0ZW5hdGlvbiBvZiB0aGUgfFNlYy1XZWJTb2NrZXQtXG4gICAgICAvLyAgICBLZXl8IChhcyBhIHN0cmluZywgbm90IGJhc2U2NC1kZWNvZGVkKSB3aXRoIHRoZSBzdHJpbmcgXCIyNThFQUZBNS1cbiAgICAgIC8vICAgIEU5MTQtNDdEQS05NUNBLUM1QUIwREM4NUIxMVwiIGJ1dCBpZ25vcmluZyBhbnkgbGVhZGluZyBhbmRcbiAgICAgIC8vICAgIHRyYWlsaW5nIHdoaXRlc3BhY2UsIHRoZSBjbGllbnQgTVVTVCBfRmFpbCB0aGUgV2ViU29ja2V0XG4gICAgICAvLyAgICBDb25uZWN0aW9uXy5cbiAgICAgIGNvbnN0IHNlY1dTQWNjZXB0ID0gcmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdTZWMtV2ViU29ja2V0LUFjY2VwdCcpXG4gICAgICBjb25zdCBkaWdlc3QgPSBjcnlwdG8uY3JlYXRlSGFzaCgnc2hhMScpLnVwZGF0ZShrZXlWYWx1ZSArIHVpZCkuZGlnZXN0KCdiYXNlNjQnKVxuICAgICAgaWYgKHNlY1dTQWNjZXB0ICE9PSBkaWdlc3QpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdJbmNvcnJlY3QgaGFzaCByZWNlaXZlZCBpbiBTZWMtV2ViU29ja2V0LUFjY2VwdCBoZWFkZXIuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDUuIElmIHRoZSByZXNwb25zZSBpbmNsdWRlcyBhIHxTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnN8IGhlYWRlclxuICAgICAgLy8gICAgZmllbGQgYW5kIHRoaXMgaGVhZGVyIGZpZWxkIGluZGljYXRlcyB0aGUgdXNlIG9mIGFuIGV4dGVuc2lvblxuICAgICAgLy8gICAgdGhhdCB3YXMgbm90IHByZXNlbnQgaW4gdGhlIGNsaWVudCdzIGhhbmRzaGFrZSAodGhlIHNlcnZlciBoYXNcbiAgICAgIC8vICAgIGluZGljYXRlZCBhbiBleHRlbnNpb24gbm90IHJlcXVlc3RlZCBieSB0aGUgY2xpZW50KSwgdGhlIGNsaWVudFxuICAgICAgLy8gICAgTVVTVCBfRmFpbCB0aGUgV2ViU29ja2V0IENvbm5lY3Rpb25fLiAgKFRoZSBwYXJzaW5nIG9mIHRoaXNcbiAgICAgIC8vICAgIGhlYWRlciBmaWVsZCB0byBkZXRlcm1pbmUgd2hpY2ggZXh0ZW5zaW9ucyBhcmUgcmVxdWVzdGVkIGlzXG4gICAgICAvLyAgICBkaXNjdXNzZWQgaW4gU2VjdGlvbiA5LjEuKVxuICAgICAgY29uc3Qgc2VjRXh0ZW5zaW9uID0gcmVzcG9uc2UuaGVhZGVyc0xpc3QuZ2V0KCdTZWMtV2ViU29ja2V0LUV4dGVuc2lvbnMnKVxuXG4gICAgICBpZiAoc2VjRXh0ZW5zaW9uICE9PSBudWxsICYmIHNlY0V4dGVuc2lvbiAhPT0gcGVybWVzc2FnZURlZmxhdGUpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdSZWNlaXZlZCBkaWZmZXJlbnQgcGVybWVzc2FnZS1kZWZsYXRlIHRoYW4gdGhlIG9uZSBzZXQuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIDYuIElmIHRoZSByZXNwb25zZSBpbmNsdWRlcyBhIHxTZWMtV2ViU29ja2V0LVByb3RvY29sfCBoZWFkZXIgZmllbGRcbiAgICAgIC8vICAgIGFuZCB0aGlzIGhlYWRlciBmaWVsZCBpbmRpY2F0ZXMgdGhlIHVzZSBvZiBhIHN1YnByb3RvY29sIHRoYXQgd2FzXG4gICAgICAvLyAgICBub3QgcHJlc2VudCBpbiB0aGUgY2xpZW50J3MgaGFuZHNoYWtlICh0aGUgc2VydmVyIGhhcyBpbmRpY2F0ZWQgYVxuICAgICAgLy8gICAgc3VicHJvdG9jb2wgbm90IHJlcXVlc3RlZCBieSB0aGUgY2xpZW50KSwgdGhlIGNsaWVudCBNVVNUIF9GYWlsXG4gICAgICAvLyAgICB0aGUgV2ViU29ja2V0IENvbm5lY3Rpb25fLlxuICAgICAgY29uc3Qgc2VjUHJvdG9jb2wgPSByZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ1NlYy1XZWJTb2NrZXQtUHJvdG9jb2wnKVxuXG4gICAgICBpZiAoc2VjUHJvdG9jb2wgIT09IG51bGwgJiYgc2VjUHJvdG9jb2wgIT09IHJlcXVlc3QuaGVhZGVyc0xpc3QuZ2V0KCdTZWMtV2ViU29ja2V0LVByb3RvY29sJykpIHtcbiAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24od3MsICdQcm90b2NvbCB3YXMgbm90IHNldCBpbiB0aGUgb3BlbmluZyBoYW5kc2hha2UuJylcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHJlc3BvbnNlLnNvY2tldC5vbignZGF0YScsIG9uU29ja2V0RGF0YSlcbiAgICAgIHJlc3BvbnNlLnNvY2tldC5vbignY2xvc2UnLCBvblNvY2tldENsb3NlKVxuICAgICAgcmVzcG9uc2Uuc29ja2V0Lm9uKCdlcnJvcicsIG9uU29ja2V0RXJyb3IpXG5cbiAgICAgIGlmIChjaGFubmVscy5vcGVuLmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICAgIGNoYW5uZWxzLm9wZW4ucHVibGlzaCh7XG4gICAgICAgICAgYWRkcmVzczogcmVzcG9uc2Uuc29ja2V0LmFkZHJlc3MoKSxcbiAgICAgICAgICBwcm90b2NvbDogc2VjUHJvdG9jb2wsXG4gICAgICAgICAgZXh0ZW5zaW9uczogc2VjRXh0ZW5zaW9uXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIG9uRXN0YWJsaXNoKHJlc3BvbnNlKVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gY29udHJvbGxlclxufVxuXG4vKipcbiAqIEBwYXJhbSB7QnVmZmVyfSBjaHVua1xuICovXG5mdW5jdGlvbiBvblNvY2tldERhdGEgKGNodW5rKSB7XG4gIGlmICghdGhpcy53c1trQnl0ZVBhcnNlcl0ud3JpdGUoY2h1bmspKSB7XG4gICAgdGhpcy5wYXVzZSgpXG4gIH1cbn1cblxuLyoqXG4gKiBAc2VlIGh0dHBzOi8vd2Vic29ja2V0cy5zcGVjLndoYXR3Zy5vcmcvI2ZlZWRiYWNrLWZyb20tdGhlLXByb3RvY29sXG4gKiBAc2VlIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTcuMS40XG4gKi9cbmZ1bmN0aW9uIG9uU29ja2V0Q2xvc2UgKCkge1xuICBjb25zdCB7IHdzIH0gPSB0aGlzXG5cbiAgLy8gSWYgdGhlIFRDUCBjb25uZWN0aW9uIHdhcyBjbG9zZWQgYWZ0ZXIgdGhlXG4gIC8vIFdlYlNvY2tldCBjbG9zaW5nIGhhbmRzaGFrZSB3YXMgY29tcGxldGVkLCB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb25cbiAgLy8gaXMgc2FpZCB0byBoYXZlIGJlZW4gY2xvc2VkIF9jbGVhbmx5Xy5cbiAgY29uc3Qgd2FzQ2xlYW4gPSB3c1trU2VudENsb3NlXSAmJiB3c1trUmVjZWl2ZWRDbG9zZV1cblxuICBsZXQgY29kZSA9IDEwMDVcbiAgbGV0IHJlYXNvbiA9ICcnXG5cbiAgY29uc3QgcmVzdWx0ID0gd3Nba0J5dGVQYXJzZXJdLmNsb3NpbmdJbmZvXG5cbiAgaWYgKHJlc3VsdCkge1xuICAgIGNvZGUgPSByZXN1bHQuY29kZSA/PyAxMDA1XG4gICAgcmVhc29uID0gcmVzdWx0LnJlYXNvblxuICB9IGVsc2UgaWYgKCF3c1trU2VudENsb3NlXSkge1xuICAgIC8vIElmIF9UaGUgV2ViU29ja2V0XG4gICAgLy8gQ29ubmVjdGlvbiBpcyBDbG9zZWRfIGFuZCBubyBDbG9zZSBjb250cm9sIGZyYW1lIHdhcyByZWNlaXZlZCBieSB0aGVcbiAgICAvLyBlbmRwb2ludCAoc3VjaCBhcyBjb3VsZCBvY2N1ciBpZiB0aGUgdW5kZXJseWluZyB0cmFuc3BvcnQgY29ubmVjdGlvblxuICAgIC8vIGlzIGxvc3QpLCBfVGhlIFdlYlNvY2tldCBDb25uZWN0aW9uIENsb3NlIENvZGVfIGlzIGNvbnNpZGVyZWQgdG8gYmVcbiAgICAvLyAxMDA2LlxuICAgIGNvZGUgPSAxMDA2XG4gIH1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIHJlYWR5IHN0YXRlIHRvIENMT1NFRCAoMykuXG4gIHdzW2tSZWFkeVN0YXRlXSA9IHN0YXRlcy5DTE9TRURcblxuICAvLyAyLiBJZiB0aGUgdXNlciBhZ2VudCB3YXMgcmVxdWlyZWQgdG8gZmFpbCB0aGUgV2ViU29ja2V0XG4gIC8vICAgIGNvbm5lY3Rpb24sIG9yIGlmIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiB3YXMgY2xvc2VkXG4gIC8vICAgIGFmdGVyIGJlaW5nIGZsYWdnZWQgYXMgZnVsbCwgZmlyZSBhbiBldmVudCBuYW1lZCBlcnJvclxuICAvLyAgICBhdCB0aGUgV2ViU29ja2V0IG9iamVjdC5cbiAgLy8gVE9ET1xuXG4gIC8vIDMuIEZpcmUgYW4gZXZlbnQgbmFtZWQgY2xvc2UgYXQgdGhlIFdlYlNvY2tldCBvYmplY3QsXG4gIC8vICAgIHVzaW5nIENsb3NlRXZlbnQsIHdpdGggdGhlIHdhc0NsZWFuIGF0dHJpYnV0ZVxuICAvLyAgICBpbml0aWFsaXplZCB0byB0cnVlIGlmIHRoZSBjb25uZWN0aW9uIGNsb3NlZCBjbGVhbmx5XG4gIC8vICAgIGFuZCBmYWxzZSBvdGhlcndpc2UsIHRoZSBjb2RlIGF0dHJpYnV0ZSBpbml0aWFsaXplZCB0b1xuICAvLyAgICB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gY2xvc2UgY29kZSwgYW5kIHRoZSByZWFzb25cbiAgLy8gICAgYXR0cmlidXRlIGluaXRpYWxpemVkIHRvIHRoZSByZXN1bHQgb2YgYXBwbHlpbmcgVVRGLThcbiAgLy8gICAgZGVjb2RlIHdpdGhvdXQgQk9NIHRvIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBjbG9zZVxuICAvLyAgICByZWFzb24uXG4gIGZpcmVFdmVudCgnY2xvc2UnLCB3cywgQ2xvc2VFdmVudCwge1xuICAgIHdhc0NsZWFuLCBjb2RlLCByZWFzb25cbiAgfSlcblxuICBpZiAoY2hhbm5lbHMuY2xvc2UuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICBjaGFubmVscy5jbG9zZS5wdWJsaXNoKHtcbiAgICAgIHdlYnNvY2tldDogd3MsXG4gICAgICBjb2RlLFxuICAgICAgcmVhc29uXG4gICAgfSlcbiAgfVxufVxuXG5mdW5jdGlvbiBvblNvY2tldEVycm9yIChlcnJvcikge1xuICBjb25zdCB7IHdzIH0gPSB0aGlzXG5cbiAgd3Nba1JlYWR5U3RhdGVdID0gc3RhdGVzLkNMT1NJTkdcblxuICBpZiAoY2hhbm5lbHMuc29ja2V0RXJyb3IuaGFzU3Vic2NyaWJlcnMpIHtcbiAgICBjaGFubmVscy5zb2NrZXRFcnJvci5wdWJsaXNoKGVycm9yKVxuICB9XG5cbiAgdGhpcy5kZXN0cm95KClcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGVzdGFibGlzaFdlYlNvY2tldENvbm5lY3Rpb25cbn1cbiIsICIndXNlIHN0cmljdCdcblxuY29uc3QgeyBtYXhVbnNpZ25lZDE2Qml0IH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5cbi8qKiBAdHlwZSB7aW1wb3J0KCdjcnlwdG8nKX0gKi9cbmxldCBjcnlwdG9cbnRyeSB7XG4gIGNyeXB0byA9IHJlcXVpcmUoJ2NyeXB0bycpXG59IGNhdGNoIHtcblxufVxuXG5jbGFzcyBXZWJzb2NrZXRGcmFtZVNlbmQge1xuICAvKipcbiAgICogQHBhcmFtIHtCdWZmZXJ8dW5kZWZpbmVkfSBkYXRhXG4gICAqL1xuICBjb25zdHJ1Y3RvciAoZGF0YSkge1xuICAgIHRoaXMuZnJhbWVEYXRhID0gZGF0YVxuICAgIHRoaXMubWFza0tleSA9IGNyeXB0by5yYW5kb21CeXRlcyg0KVxuICB9XG5cbiAgY3JlYXRlRnJhbWUgKG9wY29kZSkge1xuICAgIGNvbnN0IGJvZHlMZW5ndGggPSB0aGlzLmZyYW1lRGF0YT8uYnl0ZUxlbmd0aCA/PyAwXG5cbiAgICAvKiogQHR5cGUge251bWJlcn0gKi9cbiAgICBsZXQgcGF5bG9hZExlbmd0aCA9IGJvZHlMZW5ndGggLy8gMC0xMjVcbiAgICBsZXQgb2Zmc2V0ID0gNlxuXG4gICAgaWYgKGJvZHlMZW5ndGggPiBtYXhVbnNpZ25lZDE2Qml0KSB7XG4gICAgICBvZmZzZXQgKz0gOCAvLyBwYXlsb2FkIGxlbmd0aCBpcyBuZXh0IDggYnl0ZXNcbiAgICAgIHBheWxvYWRMZW5ndGggPSAxMjdcbiAgICB9IGVsc2UgaWYgKGJvZHlMZW5ndGggPiAxMjUpIHtcbiAgICAgIG9mZnNldCArPSAyIC8vIHBheWxvYWQgbGVuZ3RoIGlzIG5leHQgMiBieXRlc1xuICAgICAgcGF5bG9hZExlbmd0aCA9IDEyNlxuICAgIH1cblxuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5hbGxvY1Vuc2FmZShib2R5TGVuZ3RoICsgb2Zmc2V0KVxuXG4gICAgLy8gQ2xlYXIgZmlyc3QgMiBieXRlcywgZXZlcnl0aGluZyBlbHNlIGlzIG92ZXJ3cml0dGVuXG4gICAgYnVmZmVyWzBdID0gYnVmZmVyWzFdID0gMFxuICAgIGJ1ZmZlclswXSB8PSAweDgwIC8vIEZJTlxuICAgIGJ1ZmZlclswXSA9IChidWZmZXJbMF0gJiAweEYwKSArIG9wY29kZSAvLyBvcGNvZGVcblxuICAgIC8qISB3cy4gTUlUIExpY2Vuc2UuIEVpbmFyIE90dG8gU3Rhbmd2aWsgPGVpbmFyb3NAZ21haWwuY29tPiAqL1xuICAgIGJ1ZmZlcltvZmZzZXQgLSA0XSA9IHRoaXMubWFza0tleVswXVxuICAgIGJ1ZmZlcltvZmZzZXQgLSAzXSA9IHRoaXMubWFza0tleVsxXVxuICAgIGJ1ZmZlcltvZmZzZXQgLSAyXSA9IHRoaXMubWFza0tleVsyXVxuICAgIGJ1ZmZlcltvZmZzZXQgLSAxXSA9IHRoaXMubWFza0tleVszXVxuXG4gICAgYnVmZmVyWzFdID0gcGF5bG9hZExlbmd0aFxuXG4gICAgaWYgKHBheWxvYWRMZW5ndGggPT09IDEyNikge1xuICAgICAgYnVmZmVyLndyaXRlVUludDE2QkUoYm9keUxlbmd0aCwgMilcbiAgICB9IGVsc2UgaWYgKHBheWxvYWRMZW5ndGggPT09IDEyNykge1xuICAgICAgLy8gQ2xlYXIgZXh0ZW5kZWQgcGF5bG9hZCBsZW5ndGhcbiAgICAgIGJ1ZmZlclsyXSA9IGJ1ZmZlclszXSA9IDBcbiAgICAgIGJ1ZmZlci53cml0ZVVJbnRCRShib2R5TGVuZ3RoLCA0LCA2KVxuICAgIH1cblxuICAgIGJ1ZmZlclsxXSB8PSAweDgwIC8vIE1BU0tcblxuICAgIC8vIG1hc2sgYm9keVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYm9keUxlbmd0aDsgaSsrKSB7XG4gICAgICBidWZmZXJbb2Zmc2V0ICsgaV0gPSB0aGlzLmZyYW1lRGF0YVtpXSBeIHRoaXMubWFza0tleVtpICUgNF1cbiAgICB9XG5cbiAgICByZXR1cm4gYnVmZmVyXG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIFdlYnNvY2tldEZyYW1lU2VuZFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IFdyaXRhYmxlIH0gPSByZXF1aXJlKCdzdHJlYW0nKVxuY29uc3QgZGlhZ25vc3RpY3NDaGFubmVsID0gcmVxdWlyZSgnZGlhZ25vc3RpY3NfY2hhbm5lbCcpXG5jb25zdCB7IHBhcnNlclN0YXRlcywgb3Bjb2Rlcywgc3RhdGVzLCBlbXB0eUJ1ZmZlciB9ID0gcmVxdWlyZSgnLi9jb25zdGFudHMnKVxuY29uc3QgeyBrUmVhZHlTdGF0ZSwga1NlbnRDbG9zZSwga1Jlc3BvbnNlLCBrUmVjZWl2ZWRDbG9zZSB9ID0gcmVxdWlyZSgnLi9zeW1ib2xzJylcbmNvbnN0IHsgaXNWYWxpZFN0YXR1c0NvZGUsIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uLCB3ZWJzb2NrZXRNZXNzYWdlUmVjZWl2ZWQgfSA9IHJlcXVpcmUoJy4vdXRpbCcpXG5jb25zdCB7IFdlYnNvY2tldEZyYW1lU2VuZCB9ID0gcmVxdWlyZSgnLi9mcmFtZScpXG5cbi8vIFRoaXMgY29kZSB3YXMgaW5mbHVlbmNlZCBieSB3cyByZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4vLyBDb3B5cmlnaHQgKGMpIDIwMTEgRWluYXIgT3R0byBTdGFuZ3ZpayA8ZWluYXJvc0BnbWFpbC5jb20+XG4vLyBDb3B5cmlnaHQgKGMpIDIwMTMgQXJub3V0IEthemVtaWVyIGFuZCBjb250cmlidXRvcnNcbi8vIENvcHlyaWdodCAoYykgMjAxNiBMdWlnaSBQaW5jYSBhbmQgY29udHJpYnV0b3JzXG5cbmNvbnN0IGNoYW5uZWxzID0ge31cbmNoYW5uZWxzLnBpbmcgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOndlYnNvY2tldDpwaW5nJylcbmNoYW5uZWxzLnBvbmcgPSBkaWFnbm9zdGljc0NoYW5uZWwuY2hhbm5lbCgndW5kaWNpOndlYnNvY2tldDpwb25nJylcblxuY2xhc3MgQnl0ZVBhcnNlciBleHRlbmRzIFdyaXRhYmxlIHtcbiAgI2J1ZmZlcnMgPSBbXVxuICAjYnl0ZU9mZnNldCA9IDBcblxuICAjc3RhdGUgPSBwYXJzZXJTdGF0ZXMuSU5GT1xuXG4gICNpbmZvID0ge31cbiAgI2ZyYWdtZW50cyA9IFtdXG5cbiAgY29uc3RydWN0b3IgKHdzKSB7XG4gICAgc3VwZXIoKVxuXG4gICAgdGhpcy53cyA9IHdzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtCdWZmZXJ9IGNodW5rXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gY2FsbGJhY2tcbiAgICovXG4gIF93cml0ZSAoY2h1bmssIF8sIGNhbGxiYWNrKSB7XG4gICAgdGhpcy4jYnVmZmVycy5wdXNoKGNodW5rKVxuICAgIHRoaXMuI2J5dGVPZmZzZXQgKz0gY2h1bmsubGVuZ3RoXG5cbiAgICB0aGlzLnJ1bihjYWxsYmFjaylcbiAgfVxuXG4gIC8qKlxuICAgKiBSdW5zIHdoZW5ldmVyIGEgbmV3IGNodW5rIGlzIHJlY2VpdmVkLlxuICAgKiBDYWxsYmFjayBpcyBjYWxsZWQgd2hlbmV2ZXIgdGhlcmUgYXJlIG5vIG1vcmUgY2h1bmtzIGJ1ZmZlcmluZyxcbiAgICogb3Igbm90IGVub3VnaCBieXRlcyBhcmUgYnVmZmVyZWQgdG8gcGFyc2UuXG4gICAqL1xuICBydW4gKGNhbGxiYWNrKSB7XG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIGlmICh0aGlzLiNzdGF0ZSA9PT0gcGFyc2VyU3RhdGVzLklORk8pIHtcbiAgICAgICAgLy8gSWYgdGhlcmUgYXJlbid0IGVub3VnaCBieXRlcyB0byBwYXJzZSB0aGUgcGF5bG9hZCBsZW5ndGgsIGV0Yy5cbiAgICAgICAgaWYgKHRoaXMuI2J5dGVPZmZzZXQgPCAyKSB7XG4gICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKClcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGJ1ZmZlciA9IHRoaXMuY29uc3VtZSgyKVxuXG4gICAgICAgIHRoaXMuI2luZm8uZmluID0gKGJ1ZmZlclswXSAmIDB4ODApICE9PSAwXG4gICAgICAgIHRoaXMuI2luZm8ub3Bjb2RlID0gYnVmZmVyWzBdICYgMHgwRlxuXG4gICAgICAgIC8vIElmIHdlIHJlY2VpdmUgYSBmcmFnbWVudGVkIG1lc3NhZ2UsIHdlIHVzZSB0aGUgdHlwZSBvZiB0aGUgZmlyc3RcbiAgICAgICAgLy8gZnJhbWUgdG8gcGFyc2UgdGhlIGZ1bGwgbWVzc2FnZSBhcyBiaW5hcnkvdGV4dCwgd2hlbiBpdCdzIHRlcm1pbmF0ZWRcbiAgICAgICAgdGhpcy4jaW5mby5vcmlnaW5hbE9wY29kZSA/Pz0gdGhpcy4jaW5mby5vcGNvZGVcblxuICAgICAgICB0aGlzLiNpbmZvLmZyYWdtZW50ZWQgPSAhdGhpcy4jaW5mby5maW4gJiYgdGhpcy4jaW5mby5vcGNvZGUgIT09IG9wY29kZXMuQ09OVElOVUFUSU9OXG5cbiAgICAgICAgaWYgKHRoaXMuI2luZm8uZnJhZ21lbnRlZCAmJiB0aGlzLiNpbmZvLm9wY29kZSAhPT0gb3Bjb2Rlcy5CSU5BUlkgJiYgdGhpcy4jaW5mby5vcGNvZGUgIT09IG9wY29kZXMuVEVYVCkge1xuICAgICAgICAgIC8vIE9ubHkgdGV4dCBhbmQgYmluYXJ5IGZyYW1lcyBjYW4gYmUgZnJhZ21lbnRlZFxuICAgICAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHRoaXMud3MsICdJbnZhbGlkIGZyYW1lIHR5cGUgd2FzIGZyYWdtZW50ZWQuJylcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBheWxvYWRMZW5ndGggPSBidWZmZXJbMV0gJiAweDdGXG5cbiAgICAgICAgaWYgKHBheWxvYWRMZW5ndGggPD0gMTI1KSB7XG4gICAgICAgICAgdGhpcy4jaW5mby5wYXlsb2FkTGVuZ3RoID0gcGF5bG9hZExlbmd0aFxuICAgICAgICAgIHRoaXMuI3N0YXRlID0gcGFyc2VyU3RhdGVzLlJFQURfREFUQVxuICAgICAgICB9IGVsc2UgaWYgKHBheWxvYWRMZW5ndGggPT09IDEyNikge1xuICAgICAgICAgIHRoaXMuI3N0YXRlID0gcGFyc2VyU3RhdGVzLlBBWUxPQURMRU5HVEhfMTZcbiAgICAgICAgfSBlbHNlIGlmIChwYXlsb2FkTGVuZ3RoID09PSAxMjcpIHtcbiAgICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5QQVlMT0FETEVOR1RIXzY0XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy4jaW5mby5mcmFnbWVudGVkICYmIHBheWxvYWRMZW5ndGggPiAxMjUpIHtcbiAgICAgICAgICAvLyBBIGZyYWdtZW50ZWQgZnJhbWUgY2FuJ3QgYmUgZnJhZ21lbnRlZCBpdHNlbGZcbiAgICAgICAgICBmYWlsV2Vic29ja2V0Q29ubmVjdGlvbih0aGlzLndzLCAnRnJhZ21lbnRlZCBmcmFtZSBleGNlZWRlZCAxMjUgYnl0ZXMuJylcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAodGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuUElORyB8fFxuICAgICAgICAgICAgdGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuUE9ORyB8fFxuICAgICAgICAgICAgdGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuQ0xPU0UpICYmXG4gICAgICAgICAgcGF5bG9hZExlbmd0aCA+IDEyNVxuICAgICAgICApIHtcbiAgICAgICAgICAvLyBDb250cm9sIGZyYW1lcyBjYW4gaGF2ZSBhIHBheWxvYWQgbGVuZ3RoIG9mIDEyNSBieXRlcyBNQVhcbiAgICAgICAgICBmYWlsV2Vic29ja2V0Q29ubmVjdGlvbih0aGlzLndzLCAnUGF5bG9hZCBsZW5ndGggZm9yIGNvbnRyb2wgZnJhbWUgZXhjZWVkZWQgMTI1IGJ5dGVzLicpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuQ0xPU0UpIHtcbiAgICAgICAgICBpZiAocGF5bG9hZExlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24odGhpcy53cywgJ1JlY2VpdmVkIGNsb3NlIGZyYW1lIHdpdGggYSAxLWJ5dGUgYm9keS4nKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuY29uc3VtZShwYXlsb2FkTGVuZ3RoKVxuXG4gICAgICAgICAgdGhpcy4jaW5mby5jbG9zZUluZm8gPSB0aGlzLnBhcnNlQ2xvc2VCb2R5KGZhbHNlLCBib2R5KVxuXG4gICAgICAgICAgaWYgKCF0aGlzLndzW2tTZW50Q2xvc2VdKSB7XG4gICAgICAgICAgICAvLyBJZiBhbiBlbmRwb2ludCByZWNlaXZlcyBhIENsb3NlIGZyYW1lIGFuZCBkaWQgbm90IHByZXZpb3VzbHkgc2VuZCBhXG4gICAgICAgICAgICAvLyBDbG9zZSBmcmFtZSwgdGhlIGVuZHBvaW50IE1VU1Qgc2VuZCBhIENsb3NlIGZyYW1lIGluIHJlc3BvbnNlLiAgKFdoZW5cbiAgICAgICAgICAgIC8vIHNlbmRpbmcgYSBDbG9zZSBmcmFtZSBpbiByZXNwb25zZSwgdGhlIGVuZHBvaW50IHR5cGljYWxseSBlY2hvcyB0aGVcbiAgICAgICAgICAgIC8vIHN0YXR1cyBjb2RlIGl0IHJlY2VpdmVkLilcbiAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBCdWZmZXIuYWxsb2NVbnNhZmUoMilcbiAgICAgICAgICAgIGJvZHkud3JpdGVVSW50MTZCRSh0aGlzLiNpbmZvLmNsb3NlSW5mby5jb2RlLCAwKVxuICAgICAgICAgICAgY29uc3QgY2xvc2VGcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQoYm9keSlcblxuICAgICAgICAgICAgdGhpcy53c1trUmVzcG9uc2VdLnNvY2tldC53cml0ZShcbiAgICAgICAgICAgICAgY2xvc2VGcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLkNMT1NFKSxcbiAgICAgICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghZXJyKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLndzW2tTZW50Q2xvc2VdID0gdHJ1ZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIFVwb24gZWl0aGVyIHNlbmRpbmcgb3IgcmVjZWl2aW5nIGEgQ2xvc2UgY29udHJvbCBmcmFtZSwgaXQgaXMgc2FpZFxuICAgICAgICAgIC8vIHRoYXQgX1RoZSBXZWJTb2NrZXQgQ2xvc2luZyBIYW5kc2hha2UgaXMgU3RhcnRlZF8gYW5kIHRoYXQgdGhlXG4gICAgICAgICAgLy8gV2ViU29ja2V0IGNvbm5lY3Rpb24gaXMgaW4gdGhlIENMT1NJTkcgc3RhdGUuXG4gICAgICAgICAgdGhpcy53c1trUmVhZHlTdGF0ZV0gPSBzdGF0ZXMuQ0xPU0lOR1xuICAgICAgICAgIHRoaXMud3Nba1JlY2VpdmVkQ2xvc2VdID0gdHJ1ZVxuXG4gICAgICAgICAgdGhpcy5lbmQoKVxuXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuUElORykge1xuICAgICAgICAgIC8vIFVwb24gcmVjZWlwdCBvZiBhIFBpbmcgZnJhbWUsIGFuIGVuZHBvaW50IE1VU1Qgc2VuZCBhIFBvbmcgZnJhbWUgaW5cbiAgICAgICAgICAvLyByZXNwb25zZSwgdW5sZXNzIGl0IGFscmVhZHkgcmVjZWl2ZWQgYSBDbG9zZSBmcmFtZS5cbiAgICAgICAgICAvLyBBIFBvbmcgZnJhbWUgc2VudCBpbiByZXNwb25zZSB0byBhIFBpbmcgZnJhbWUgbXVzdCBoYXZlIGlkZW50aWNhbFxuICAgICAgICAgIC8vIFwiQXBwbGljYXRpb24gZGF0YVwiXG5cbiAgICAgICAgICBjb25zdCBib2R5ID0gdGhpcy5jb25zdW1lKHBheWxvYWRMZW5ndGgpXG5cbiAgICAgICAgICBpZiAoIXRoaXMud3Nba1JlY2VpdmVkQ2xvc2VdKSB7XG4gICAgICAgICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQoYm9keSlcblxuICAgICAgICAgICAgdGhpcy53c1trUmVzcG9uc2VdLnNvY2tldC53cml0ZShmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLlBPTkcpKVxuXG4gICAgICAgICAgICBpZiAoY2hhbm5lbHMucGluZy5oYXNTdWJzY3JpYmVycykge1xuICAgICAgICAgICAgICBjaGFubmVscy5waW5nLnB1Ymxpc2goe1xuICAgICAgICAgICAgICAgIHBheWxvYWQ6IGJvZHlcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5JTkZPXG5cbiAgICAgICAgICBpZiAodGhpcy4jYnl0ZU9mZnNldCA+IDApIHtcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNhbGxiYWNrKClcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLiNpbmZvLm9wY29kZSA9PT0gb3Bjb2Rlcy5QT05HKSB7XG4gICAgICAgICAgLy8gQSBQb25nIGZyYW1lIE1BWSBiZSBzZW50IHVuc29saWNpdGVkLiAgVGhpcyBzZXJ2ZXMgYXMgYVxuICAgICAgICAgIC8vIHVuaWRpcmVjdGlvbmFsIGhlYXJ0YmVhdC4gIEEgcmVzcG9uc2UgdG8gYW4gdW5zb2xpY2l0ZWQgUG9uZyBmcmFtZSBpc1xuICAgICAgICAgIC8vIG5vdCBleHBlY3RlZC5cblxuICAgICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLmNvbnN1bWUocGF5bG9hZExlbmd0aClcblxuICAgICAgICAgIGlmIChjaGFubmVscy5wb25nLmhhc1N1YnNjcmliZXJzKSB7XG4gICAgICAgICAgICBjaGFubmVscy5wb25nLnB1Ymxpc2goe1xuICAgICAgICAgICAgICBwYXlsb2FkOiBib2R5XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLiNieXRlT2Zmc2V0ID4gMCkge1xuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY2FsbGJhY2soKVxuICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuI3N0YXRlID09PSBwYXJzZXJTdGF0ZXMuUEFZTE9BRExFTkdUSF8xNikge1xuICAgICAgICBpZiAodGhpcy4jYnl0ZU9mZnNldCA8IDIpIHtcbiAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYnVmZmVyID0gdGhpcy5jb25zdW1lKDIpXG5cbiAgICAgICAgdGhpcy4jaW5mby5wYXlsb2FkTGVuZ3RoID0gYnVmZmVyLnJlYWRVSW50MTZCRSgwKVxuICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5SRUFEX0RBVEFcbiAgICAgIH0gZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IHBhcnNlclN0YXRlcy5QQVlMT0FETEVOR1RIXzY0KSB7XG4gICAgICAgIGlmICh0aGlzLiNieXRlT2Zmc2V0IDwgOCkge1xuICAgICAgICAgIHJldHVybiBjYWxsYmFjaygpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBidWZmZXIgPSB0aGlzLmNvbnN1bWUoOClcbiAgICAgICAgY29uc3QgdXBwZXIgPSBidWZmZXIucmVhZFVJbnQzMkJFKDApXG5cbiAgICAgICAgLy8gMl4zMSBpcyB0aGUgbWF4aW5pbXVtIGJ5dGVzIGFuIGFycmF5YnVmZmVyIGNhbiBjb250YWluXG4gICAgICAgIC8vIG9uIDMyLWJpdCBzeXN0ZW1zLiBBbHRob3VnaCwgb24gNjQtYml0IHN5c3RlbXMsIHRoaXMgaXNcbiAgICAgICAgLy8gMl41My0xIGJ5dGVzLlxuICAgICAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9FcnJvcnMvSW52YWxpZF9hcnJheV9sZW5ndGhcbiAgICAgICAgLy8gaHR0cHM6Ly9zb3VyY2UuY2hyb21pdW0ub3JnL2Nocm9taXVtL2Nocm9taXVtL3NyYy8rL21haW46djgvc3JjL2NvbW1vbi9nbG9iYWxzLmg7ZHJjPTE5NDYyMTJhYzAxMDA2NjhmMTRlYjllMjg0M2JkZDg0NmU1MTBhMWU7YnB2PTE7YnB0PTE7bD0xMjc1XG4gICAgICAgIC8vIGh0dHBzOi8vc291cmNlLmNocm9taXVtLm9yZy9jaHJvbWl1bS9jaHJvbWl1bS9zcmMvKy9tYWluOnY4L3NyYy9vYmplY3RzL2pzLWFycmF5LWJ1ZmZlci5oO2w9MzQ7ZHJjPTE5NDYyMTJhYzAxMDA2NjhmMTRlYjllMjg0M2JkZDg0NmU1MTBhMWVcbiAgICAgICAgaWYgKHVwcGVyID4gMiAqKiAzMSAtIDEpIHtcbiAgICAgICAgICBmYWlsV2Vic29ja2V0Q29ubmVjdGlvbih0aGlzLndzLCAnUmVjZWl2ZWQgcGF5bG9hZCBsZW5ndGggPiAyXjMxIGJ5dGVzLicpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBsb3dlciA9IGJ1ZmZlci5yZWFkVUludDMyQkUoNClcblxuICAgICAgICB0aGlzLiNpbmZvLnBheWxvYWRMZW5ndGggPSAodXBwZXIgPDwgOCkgKyBsb3dlclxuICAgICAgICB0aGlzLiNzdGF0ZSA9IHBhcnNlclN0YXRlcy5SRUFEX0RBVEFcbiAgICAgIH0gZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IHBhcnNlclN0YXRlcy5SRUFEX0RBVEEpIHtcbiAgICAgICAgaWYgKHRoaXMuI2J5dGVPZmZzZXQgPCB0aGlzLiNpbmZvLnBheWxvYWRMZW5ndGgpIHtcbiAgICAgICAgICAvLyBJZiB0aGVyZSBpcyBzdGlsbCBtb3JlIGRhdGEgaW4gdGhpcyBjaHVuayB0aGF0IG5lZWRzIHRvIGJlIHJlYWRcbiAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKVxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuI2J5dGVPZmZzZXQgPj0gdGhpcy4jaW5mby5wYXlsb2FkTGVuZ3RoKSB7XG4gICAgICAgICAgLy8gSWYgdGhlIHNlcnZlciBzZW50IG11bHRpcGxlIGZyYW1lcyBpbiBhIHNpbmdsZSBjaHVua1xuXG4gICAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuY29uc3VtZSh0aGlzLiNpbmZvLnBheWxvYWRMZW5ndGgpXG5cbiAgICAgICAgICB0aGlzLiNmcmFnbWVudHMucHVzaChib2R5KVxuXG4gICAgICAgICAgLy8gSWYgdGhlIGZyYW1lIGlzIHVuZnJhZ21lbnRlZCwgb3IgYSBmcmFnbWVudGVkIGZyYW1lIHdhcyB0ZXJtaW5hdGVkLFxuICAgICAgICAgIC8vIGEgbWVzc2FnZSB3YXMgcmVjZWl2ZWRcbiAgICAgICAgICBpZiAoIXRoaXMuI2luZm8uZnJhZ21lbnRlZCB8fCAodGhpcy4jaW5mby5maW4gJiYgdGhpcy4jaW5mby5vcGNvZGUgPT09IG9wY29kZXMuQ09OVElOVUFUSU9OKSkge1xuICAgICAgICAgICAgY29uc3QgZnVsbE1lc3NhZ2UgPSBCdWZmZXIuY29uY2F0KHRoaXMuI2ZyYWdtZW50cylcblxuICAgICAgICAgICAgd2Vic29ja2V0TWVzc2FnZVJlY2VpdmVkKHRoaXMud3MsIHRoaXMuI2luZm8ub3JpZ2luYWxPcGNvZGUsIGZ1bGxNZXNzYWdlKVxuXG4gICAgICAgICAgICB0aGlzLiNpbmZvID0ge31cbiAgICAgICAgICAgIHRoaXMuI2ZyYWdtZW50cy5sZW5ndGggPSAwXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy4jc3RhdGUgPSBwYXJzZXJTdGF0ZXMuSU5GT1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLiNieXRlT2Zmc2V0ID4gMCkge1xuICAgICAgICBjb250aW51ZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2FsbGJhY2soKVxuICAgICAgICBicmVha1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlIG4gYnl0ZXMgZnJvbSB0aGUgYnVmZmVyZWQgQnVmZmVyc1xuICAgKiBAcGFyYW0ge251bWJlcn0gblxuICAgKiBAcmV0dXJucyB7QnVmZmVyfG51bGx9XG4gICAqL1xuICBjb25zdW1lIChuKSB7XG4gICAgaWYgKG4gPiB0aGlzLiNieXRlT2Zmc2V0KSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH0gZWxzZSBpZiAobiA9PT0gMCkge1xuICAgICAgcmV0dXJuIGVtcHR5QnVmZmVyXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuI2J1ZmZlcnNbMF0ubGVuZ3RoID09PSBuKSB7XG4gICAgICB0aGlzLiNieXRlT2Zmc2V0IC09IHRoaXMuI2J1ZmZlcnNbMF0ubGVuZ3RoXG4gICAgICByZXR1cm4gdGhpcy4jYnVmZmVycy5zaGlmdCgpXG4gICAgfVxuXG4gICAgY29uc3QgYnVmZmVyID0gQnVmZmVyLmFsbG9jVW5zYWZlKG4pXG4gICAgbGV0IG9mZnNldCA9IDBcblxuICAgIHdoaWxlIChvZmZzZXQgIT09IG4pIHtcbiAgICAgIGNvbnN0IG5leHQgPSB0aGlzLiNidWZmZXJzWzBdXG4gICAgICBjb25zdCB7IGxlbmd0aCB9ID0gbmV4dFxuXG4gICAgICBpZiAobGVuZ3RoICsgb2Zmc2V0ID09PSBuKSB7XG4gICAgICAgIGJ1ZmZlci5zZXQodGhpcy4jYnVmZmVycy5zaGlmdCgpLCBvZmZzZXQpXG4gICAgICAgIGJyZWFrXG4gICAgICB9IGVsc2UgaWYgKGxlbmd0aCArIG9mZnNldCA+IG4pIHtcbiAgICAgICAgYnVmZmVyLnNldChuZXh0LnN1YmFycmF5KDAsIG4gLSBvZmZzZXQpLCBvZmZzZXQpXG4gICAgICAgIHRoaXMuI2J1ZmZlcnNbMF0gPSBuZXh0LnN1YmFycmF5KG4gLSBvZmZzZXQpXG4gICAgICAgIGJyZWFrXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBidWZmZXIuc2V0KHRoaXMuI2J1ZmZlcnMuc2hpZnQoKSwgb2Zmc2V0KVxuICAgICAgICBvZmZzZXQgKz0gbmV4dC5sZW5ndGhcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLiNieXRlT2Zmc2V0IC09IG5cblxuICAgIHJldHVybiBidWZmZXJcbiAgfVxuXG4gIHBhcnNlQ2xvc2VCb2R5IChvbmx5Q29kZSwgZGF0YSkge1xuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTcuMS41XG4gICAgLyoqIEB0eXBlIHtudW1iZXJ8dW5kZWZpbmVkfSAqL1xuICAgIGxldCBjb2RlXG5cbiAgICBpZiAoZGF0YS5sZW5ndGggPj0gMikge1xuICAgICAgLy8gX1RoZSBXZWJTb2NrZXQgQ29ubmVjdGlvbiBDbG9zZSBDb2RlXyBpc1xuICAgICAgLy8gZGVmaW5lZCBhcyB0aGUgc3RhdHVzIGNvZGUgKFNlY3Rpb24gNy40KSBjb250YWluZWQgaW4gdGhlIGZpcnN0IENsb3NlXG4gICAgICAvLyBjb250cm9sIGZyYW1lIHJlY2VpdmVkIGJ5IHRoZSBhcHBsaWNhdGlvblxuICAgICAgY29kZSA9IGRhdGEucmVhZFVJbnQxNkJFKDApXG4gICAgfVxuXG4gICAgaWYgKG9ubHlDb2RlKSB7XG4gICAgICBpZiAoIWlzVmFsaWRTdGF0dXNDb2RlKGNvZGUpKSB7XG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7IGNvZGUgfVxuICAgIH1cblxuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTcuMS42XG4gICAgLyoqIEB0eXBlIHtCdWZmZXJ9ICovXG4gICAgbGV0IHJlYXNvbiA9IGRhdGEuc3ViYXJyYXkoMilcblxuICAgIC8vIFJlbW92ZSBCT01cbiAgICBpZiAocmVhc29uWzBdID09PSAweEVGICYmIHJlYXNvblsxXSA9PT0gMHhCQiAmJiByZWFzb25bMl0gPT09IDB4QkYpIHtcbiAgICAgIHJlYXNvbiA9IHJlYXNvbi5zdWJhcnJheSgzKVxuICAgIH1cblxuICAgIGlmIChjb2RlICE9PSB1bmRlZmluZWQgJiYgIWlzVmFsaWRTdGF0dXNDb2RlKGNvZGUpKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICAvLyBUT0RPOiBvcHRpbWl6ZSB0aGlzXG4gICAgICByZWFzb24gPSBuZXcgVGV4dERlY29kZXIoJ3V0Zi04JywgeyBmYXRhbDogdHJ1ZSB9KS5kZWNvZGUocmVhc29uKVxuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG5cbiAgICByZXR1cm4geyBjb2RlLCByZWFzb24gfVxuICB9XG5cbiAgZ2V0IGNsb3NpbmdJbmZvICgpIHtcbiAgICByZXR1cm4gdGhpcy4jaW5mby5jbG9zZUluZm9cbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgQnl0ZVBhcnNlclxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCB7IHdlYmlkbCB9ID0gcmVxdWlyZSgnLi4vZmV0Y2gvd2ViaWRsJylcbmNvbnN0IHsgRE9NRXhjZXB0aW9uIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9jb25zdGFudHMnKVxuY29uc3QgeyBVUkxTZXJpYWxpemVyIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9kYXRhVVJMJylcbmNvbnN0IHsgZ2V0R2xvYmFsT3JpZ2luIH0gPSByZXF1aXJlKCcuLi9mZXRjaC9nbG9iYWwnKVxuY29uc3QgeyBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLCBzdGF0ZXMsIG9wY29kZXMsIGVtcHR5QnVmZmVyIH0gPSByZXF1aXJlKCcuL2NvbnN0YW50cycpXG5jb25zdCB7XG4gIGtXZWJTb2NrZXRVUkwsXG4gIGtSZWFkeVN0YXRlLFxuICBrQ29udHJvbGxlcixcbiAga0JpbmFyeVR5cGUsXG4gIGtSZXNwb25zZSxcbiAga1NlbnRDbG9zZSxcbiAga0J5dGVQYXJzZXJcbn0gPSByZXF1aXJlKCcuL3N5bWJvbHMnKVxuY29uc3QgeyBpc0VzdGFibGlzaGVkLCBpc0Nsb3NpbmcsIGlzVmFsaWRTdWJwcm90b2NvbCwgZmFpbFdlYnNvY2tldENvbm5lY3Rpb24sIGZpcmVFdmVudCB9ID0gcmVxdWlyZSgnLi91dGlsJylcbmNvbnN0IHsgZXN0YWJsaXNoV2ViU29ja2V0Q29ubmVjdGlvbiB9ID0gcmVxdWlyZSgnLi9jb25uZWN0aW9uJylcbmNvbnN0IHsgV2Vic29ja2V0RnJhbWVTZW5kIH0gPSByZXF1aXJlKCcuL2ZyYW1lJylcbmNvbnN0IHsgQnl0ZVBhcnNlciB9ID0gcmVxdWlyZSgnLi9yZWNlaXZlcicpXG5jb25zdCB7IGtFbnVtZXJhYmxlUHJvcGVydHksIGlzQmxvYkxpa2UgfSA9IHJlcXVpcmUoJy4uL2NvcmUvdXRpbCcpXG5jb25zdCB7IGdldEdsb2JhbERpc3BhdGNoZXIgfSA9IHJlcXVpcmUoJy4uL2dsb2JhbCcpXG5jb25zdCB7IHR5cGVzIH0gPSByZXF1aXJlKCd1dGlsJylcblxubGV0IGV4cGVyaW1lbnRhbFdhcm5lZCA9IGZhbHNlXG5cbi8vIGh0dHBzOi8vd2Vic29ja2V0cy5zcGVjLndoYXR3Zy5vcmcvI2ludGVyZmFjZS1kZWZpbml0aW9uXG5jbGFzcyBXZWJTb2NrZXQgZXh0ZW5kcyBFdmVudFRhcmdldCB7XG4gICNldmVudHMgPSB7XG4gICAgb3BlbjogbnVsbCxcbiAgICBlcnJvcjogbnVsbCxcbiAgICBjbG9zZTogbnVsbCxcbiAgICBtZXNzYWdlOiBudWxsXG4gIH1cblxuICAjYnVmZmVyZWRBbW91bnQgPSAwXG4gICNwcm90b2NvbCA9ICcnXG4gICNleHRlbnNpb25zID0gJydcblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybFxuICAgKiBAcGFyYW0ge3N0cmluZ3xzdHJpbmdbXX0gcHJvdG9jb2xzXG4gICAqL1xuICBjb25zdHJ1Y3RvciAodXJsLCBwcm90b2NvbHMgPSBbXSkge1xuICAgIHN1cGVyKClcblxuICAgIHdlYmlkbC5hcmd1bWVudExlbmd0aENoZWNrKGFyZ3VtZW50cywgMSwgeyBoZWFkZXI6ICdXZWJTb2NrZXQgY29uc3RydWN0b3InIH0pXG5cbiAgICBpZiAoIWV4cGVyaW1lbnRhbFdhcm5lZCkge1xuICAgICAgZXhwZXJpbWVudGFsV2FybmVkID0gdHJ1ZVxuICAgICAgcHJvY2Vzcy5lbWl0V2FybmluZygnV2ViU29ja2V0cyBhcmUgZXhwZXJpbWVudGFsLCBleHBlY3QgdGhlbSB0byBjaGFuZ2UgYXQgYW55IHRpbWUuJywge1xuICAgICAgICBjb2RlOiAnVU5ESUNJLVdTJ1xuICAgICAgfSlcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zID0gd2ViaWRsLmNvbnZlcnRlcnNbJ0RPTVN0cmluZyBvciBzZXF1ZW5jZTxET01TdHJpbmc+IG9yIFdlYlNvY2tldEluaXQnXShwcm90b2NvbHMpXG5cbiAgICB1cmwgPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcodXJsKVxuICAgIHByb3RvY29scyA9IG9wdGlvbnMucHJvdG9jb2xzXG5cbiAgICAvLyAxLiBMZXQgYmFzZVVSTCBiZSB0aGlzJ3MgcmVsZXZhbnQgc2V0dGluZ3Mgb2JqZWN0J3MgQVBJIGJhc2UgVVJMLlxuICAgIGNvbnN0IGJhc2VVUkwgPSBnZXRHbG9iYWxPcmlnaW4oKVxuXG4gICAgLy8gMS4gTGV0IHVybFJlY29yZCBiZSB0aGUgcmVzdWx0IG9mIGFwcGx5aW5nIHRoZSBVUkwgcGFyc2VyIHRvIHVybCB3aXRoIGJhc2VVUkwuXG4gICAgbGV0IHVybFJlY29yZFxuXG4gICAgdHJ5IHtcbiAgICAgIHVybFJlY29yZCA9IG5ldyBVUkwodXJsLCBiYXNlVVJMKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8vIDMuIElmIHVybFJlY29yZCBpcyBmYWlsdXJlLCB0aGVuIHRocm93IGEgXCJTeW50YXhFcnJvclwiIERPTUV4Y2VwdGlvbi5cbiAgICAgIHRocm93IG5ldyBET01FeGNlcHRpb24oZSwgJ1N5bnRheEVycm9yJylcbiAgICB9XG5cbiAgICAvLyA0LiBJZiB1cmxSZWNvcmRcdTIwMTlzIHNjaGVtZSBpcyBcImh0dHBcIiwgdGhlbiBzZXQgdXJsUmVjb3JkXHUyMDE5cyBzY2hlbWUgdG8gXCJ3c1wiLlxuICAgIGlmICh1cmxSZWNvcmQucHJvdG9jb2wgPT09ICdodHRwOicpIHtcbiAgICAgIHVybFJlY29yZC5wcm90b2NvbCA9ICd3czonXG4gICAgfSBlbHNlIGlmICh1cmxSZWNvcmQucHJvdG9jb2wgPT09ICdodHRwczonKSB7XG4gICAgICAvLyA1LiBPdGhlcndpc2UsIGlmIHVybFJlY29yZFx1MjAxOXMgc2NoZW1lIGlzIFwiaHR0cHNcIiwgc2V0IHVybFJlY29yZFx1MjAxOXMgc2NoZW1lIHRvIFwid3NzXCIuXG4gICAgICB1cmxSZWNvcmQucHJvdG9jb2wgPSAnd3NzOidcbiAgICB9XG5cbiAgICAvLyA2LiBJZiB1cmxSZWNvcmRcdTIwMTlzIHNjaGVtZSBpcyBub3QgXCJ3c1wiIG9yIFwid3NzXCIsIHRoZW4gdGhyb3cgYSBcIlN5bnRheEVycm9yXCIgRE9NRXhjZXB0aW9uLlxuICAgIGlmICh1cmxSZWNvcmQucHJvdG9jb2wgIT09ICd3czonICYmIHVybFJlY29yZC5wcm90b2NvbCAhPT0gJ3dzczonKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKFxuICAgICAgICBgRXhwZWN0ZWQgYSB3czogb3Igd3NzOiBwcm90b2NvbCwgZ290ICR7dXJsUmVjb3JkLnByb3RvY29sfWAsXG4gICAgICAgICdTeW50YXhFcnJvcidcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyA3LiBJZiB1cmxSZWNvcmRcdTIwMTlzIGZyYWdtZW50IGlzIG5vbi1udWxsLCB0aGVuIHRocm93IGEgXCJTeW50YXhFcnJvclwiXG4gICAgLy8gICAgRE9NRXhjZXB0aW9uLlxuICAgIGlmICh1cmxSZWNvcmQuaGFzaCB8fCB1cmxSZWNvcmQuaHJlZi5lbmRzV2l0aCgnIycpKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKCdHb3QgZnJhZ21lbnQnLCAnU3ludGF4RXJyb3InKVxuICAgIH1cblxuICAgIC8vIDguIElmIHByb3RvY29scyBpcyBhIHN0cmluZywgc2V0IHByb3RvY29scyB0byBhIHNlcXVlbmNlIGNvbnNpc3RpbmdcbiAgICAvLyAgICBvZiBqdXN0IHRoYXQgc3RyaW5nLlxuICAgIGlmICh0eXBlb2YgcHJvdG9jb2xzID09PSAnc3RyaW5nJykge1xuICAgICAgcHJvdG9jb2xzID0gW3Byb3RvY29sc11cbiAgICB9XG5cbiAgICAvLyA5LiBJZiBhbnkgb2YgdGhlIHZhbHVlcyBpbiBwcm90b2NvbHMgb2NjdXIgbW9yZSB0aGFuIG9uY2Ugb3Igb3RoZXJ3aXNlXG4gICAgLy8gICAgZmFpbCB0byBtYXRjaCB0aGUgcmVxdWlyZW1lbnRzIGZvciBlbGVtZW50cyB0aGF0IGNvbXByaXNlIHRoZSB2YWx1ZVxuICAgIC8vICAgIG9mIGBTZWMtV2ViU29ja2V0LVByb3RvY29sYCBmaWVsZHMgYXMgZGVmaW5lZCBieSBUaGUgV2ViU29ja2V0XG4gICAgLy8gICAgcHJvdG9jb2wsIHRoZW4gdGhyb3cgYSBcIlN5bnRheEVycm9yXCIgRE9NRXhjZXB0aW9uLlxuICAgIGlmIChwcm90b2NvbHMubGVuZ3RoICE9PSBuZXcgU2V0KHByb3RvY29scy5tYXAocCA9PiBwLnRvTG93ZXJDYXNlKCkpKS5zaXplKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKCdJbnZhbGlkIFNlYy1XZWJTb2NrZXQtUHJvdG9jb2wgdmFsdWUnLCAnU3ludGF4RXJyb3InKVxuICAgIH1cblxuICAgIGlmIChwcm90b2NvbHMubGVuZ3RoID4gMCAmJiAhcHJvdG9jb2xzLmV2ZXJ5KHAgPT4gaXNWYWxpZFN1YnByb3RvY29sKHApKSkge1xuICAgICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignSW52YWxpZCBTZWMtV2ViU29ja2V0LVByb3RvY29sIHZhbHVlJywgJ1N5bnRheEVycm9yJylcbiAgICB9XG5cbiAgICAvLyAxMC4gU2V0IHRoaXMncyB1cmwgdG8gdXJsUmVjb3JkLlxuICAgIHRoaXNba1dlYlNvY2tldFVSTF0gPSBuZXcgVVJMKHVybFJlY29yZC5ocmVmKVxuXG4gICAgLy8gMTEuIExldCBjbGllbnQgYmUgdGhpcydzIHJlbGV2YW50IHNldHRpbmdzIG9iamVjdC5cblxuICAgIC8vIDEyLiBSdW4gdGhpcyBzdGVwIGluIHBhcmFsbGVsOlxuXG4gICAgLy8gICAgMS4gRXN0YWJsaXNoIGEgV2ViU29ja2V0IGNvbm5lY3Rpb24gZ2l2ZW4gdXJsUmVjb3JkLCBwcm90b2NvbHMsXG4gICAgLy8gICAgICAgYW5kIGNsaWVudC5cbiAgICB0aGlzW2tDb250cm9sbGVyXSA9IGVzdGFibGlzaFdlYlNvY2tldENvbm5lY3Rpb24oXG4gICAgICB1cmxSZWNvcmQsXG4gICAgICBwcm90b2NvbHMsXG4gICAgICB0aGlzLFxuICAgICAgKHJlc3BvbnNlKSA9PiB0aGlzLiNvbkNvbm5lY3Rpb25Fc3RhYmxpc2hlZChyZXNwb25zZSksXG4gICAgICBvcHRpb25zXG4gICAgKVxuXG4gICAgLy8gRWFjaCBXZWJTb2NrZXQgb2JqZWN0IGhhcyBhbiBhc3NvY2lhdGVkIHJlYWR5IHN0YXRlLCB3aGljaCBpcyBhXG4gICAgLy8gbnVtYmVyIHJlcHJlc2VudGluZyB0aGUgc3RhdGUgb2YgdGhlIGNvbm5lY3Rpb24uIEluaXRpYWxseSBpdCBtdXN0XG4gICAgLy8gYmUgQ09OTkVDVElORyAoMCkuXG4gICAgdGhpc1trUmVhZHlTdGF0ZV0gPSBXZWJTb2NrZXQuQ09OTkVDVElOR1xuXG4gICAgLy8gVGhlIGV4dGVuc2lvbnMgYXR0cmlidXRlIG11c3QgaW5pdGlhbGx5IHJldHVybiB0aGUgZW1wdHkgc3RyaW5nLlxuXG4gICAgLy8gVGhlIHByb3RvY29sIGF0dHJpYnV0ZSBtdXN0IGluaXRpYWxseSByZXR1cm4gdGhlIGVtcHR5IHN0cmluZy5cblxuICAgIC8vIEVhY2ggV2ViU29ja2V0IG9iamVjdCBoYXMgYW4gYXNzb2NpYXRlZCBiaW5hcnkgdHlwZSwgd2hpY2ggaXMgYVxuICAgIC8vIEJpbmFyeVR5cGUuIEluaXRpYWxseSBpdCBtdXN0IGJlIFwiYmxvYlwiLlxuICAgIHRoaXNba0JpbmFyeVR5cGVdID0gJ2Jsb2InXG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyNkb20td2Vic29ja2V0LWNsb3NlXG4gICAqIEBwYXJhbSB7bnVtYmVyfHVuZGVmaW5lZH0gY29kZVxuICAgKiBAcGFyYW0ge3N0cmluZ3x1bmRlZmluZWR9IHJlYXNvblxuICAgKi9cbiAgY2xvc2UgKGNvZGUgPSB1bmRlZmluZWQsIHJlYXNvbiA9IHVuZGVmaW5lZCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIGlmIChjb2RlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvZGUgPSB3ZWJpZGwuY29udmVydGVyc1sndW5zaWduZWQgc2hvcnQnXShjb2RlLCB7IGNsYW1wOiB0cnVlIH0pXG4gICAgfVxuXG4gICAgaWYgKHJlYXNvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZWFzb24gPSB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcocmVhc29uKVxuICAgIH1cblxuICAgIC8vIDEuIElmIGNvZGUgaXMgcHJlc2VudCwgYnV0IGlzIG5laXRoZXIgYW4gaW50ZWdlciBlcXVhbCB0byAxMDAwIG5vciBhblxuICAgIC8vICAgIGludGVnZXIgaW4gdGhlIHJhbmdlIDMwMDAgdG8gNDk5OSwgaW5jbHVzaXZlLCB0aHJvdyBhblxuICAgIC8vICAgIFwiSW52YWxpZEFjY2Vzc0Vycm9yXCIgRE9NRXhjZXB0aW9uLlxuICAgIGlmIChjb2RlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmIChjb2RlICE9PSAxMDAwICYmIChjb2RlIDwgMzAwMCB8fCBjb2RlID4gNDk5OSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IERPTUV4Y2VwdGlvbignaW52YWxpZCBjb2RlJywgJ0ludmFsaWRBY2Nlc3NFcnJvcicpXG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHJlYXNvbkJ5dGVMZW5ndGggPSAwXG5cbiAgICAvLyAyLiBJZiByZWFzb24gaXMgcHJlc2VudCwgdGhlbiBydW4gdGhlc2Ugc3Vic3RlcHM6XG4gICAgaWYgKHJlYXNvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyAxLiBMZXQgcmVhc29uQnl0ZXMgYmUgdGhlIHJlc3VsdCBvZiBlbmNvZGluZyByZWFzb24uXG4gICAgICAvLyAyLiBJZiByZWFzb25CeXRlcyBpcyBsb25nZXIgdGhhbiAxMjMgYnl0ZXMsIHRoZW4gdGhyb3cgYVxuICAgICAgLy8gICAgXCJTeW50YXhFcnJvclwiIERPTUV4Y2VwdGlvbi5cbiAgICAgIHJlYXNvbkJ5dGVMZW5ndGggPSBCdWZmZXIuYnl0ZUxlbmd0aChyZWFzb24pXG5cbiAgICAgIGlmIChyZWFzb25CeXRlTGVuZ3RoID4gMTIzKSB7XG4gICAgICAgIHRocm93IG5ldyBET01FeGNlcHRpb24oXG4gICAgICAgICAgYFJlYXNvbiBtdXN0IGJlIGxlc3MgdGhhbiAxMjMgYnl0ZXM7IHJlY2VpdmVkICR7cmVhc29uQnl0ZUxlbmd0aH1gLFxuICAgICAgICAgICdTeW50YXhFcnJvcidcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDMuIFJ1biB0aGUgZmlyc3QgbWF0Y2hpbmcgc3RlcHMgZnJvbSB0aGUgZm9sbG93aW5nIGxpc3Q6XG4gICAgaWYgKHRoaXNba1JlYWR5U3RhdGVdID09PSBXZWJTb2NrZXQuQ0xPU0lORyB8fCB0aGlzW2tSZWFkeVN0YXRlXSA9PT0gV2ViU29ja2V0LkNMT1NFRCkge1xuICAgICAgLy8gSWYgdGhpcydzIHJlYWR5IHN0YXRlIGlzIENMT1NJTkcgKDIpIG9yIENMT1NFRCAoMylcbiAgICAgIC8vIERvIG5vdGhpbmcuXG4gICAgfSBlbHNlIGlmICghaXNFc3RhYmxpc2hlZCh0aGlzKSkge1xuICAgICAgLy8gSWYgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uIGlzIG5vdCB5ZXQgZXN0YWJsaXNoZWRcbiAgICAgIC8vIEZhaWwgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uIGFuZCBzZXQgdGhpcydzIHJlYWR5IHN0YXRlXG4gICAgICAvLyB0byBDTE9TSU5HICgyKS5cbiAgICAgIGZhaWxXZWJzb2NrZXRDb25uZWN0aW9uKHRoaXMsICdDb25uZWN0aW9uIHdhcyBjbG9zZWQgYmVmb3JlIGl0IHdhcyBlc3RhYmxpc2hlZC4nKVxuICAgICAgdGhpc1trUmVhZHlTdGF0ZV0gPSBXZWJTb2NrZXQuQ0xPU0lOR1xuICAgIH0gZWxzZSBpZiAoIWlzQ2xvc2luZyh0aGlzKSkge1xuICAgICAgLy8gSWYgdGhlIFdlYlNvY2tldCBjbG9zaW5nIGhhbmRzaGFrZSBoYXMgbm90IHlldCBiZWVuIHN0YXJ0ZWRcbiAgICAgIC8vIFN0YXJ0IHRoZSBXZWJTb2NrZXQgY2xvc2luZyBoYW5kc2hha2UgYW5kIHNldCB0aGlzJ3MgcmVhZHlcbiAgICAgIC8vIHN0YXRlIHRvIENMT1NJTkcgKDIpLlxuICAgICAgLy8gLSBJZiBuZWl0aGVyIGNvZGUgbm9yIHJlYXNvbiBpcyBwcmVzZW50LCB0aGUgV2ViU29ja2V0IENsb3NlXG4gICAgICAvLyAgIG1lc3NhZ2UgbXVzdCBub3QgaGF2ZSBhIGJvZHkuXG4gICAgICAvLyAtIElmIGNvZGUgaXMgcHJlc2VudCwgdGhlbiB0aGUgc3RhdHVzIGNvZGUgdG8gdXNlIGluIHRoZVxuICAgICAgLy8gICBXZWJTb2NrZXQgQ2xvc2UgbWVzc2FnZSBtdXN0IGJlIHRoZSBpbnRlZ2VyIGdpdmVuIGJ5IGNvZGUuXG4gICAgICAvLyAtIElmIHJlYXNvbiBpcyBhbHNvIHByZXNlbnQsIHRoZW4gcmVhc29uQnl0ZXMgbXVzdCBiZVxuICAgICAgLy8gICBwcm92aWRlZCBpbiB0aGUgQ2xvc2UgbWVzc2FnZSBhZnRlciB0aGUgc3RhdHVzIGNvZGUuXG5cbiAgICAgIGNvbnN0IGZyYW1lID0gbmV3IFdlYnNvY2tldEZyYW1lU2VuZCgpXG5cbiAgICAgIC8vIElmIG5laXRoZXIgY29kZSBub3IgcmVhc29uIGlzIHByZXNlbnQsIHRoZSBXZWJTb2NrZXQgQ2xvc2VcbiAgICAgIC8vIG1lc3NhZ2UgbXVzdCBub3QgaGF2ZSBhIGJvZHkuXG5cbiAgICAgIC8vIElmIGNvZGUgaXMgcHJlc2VudCwgdGhlbiB0aGUgc3RhdHVzIGNvZGUgdG8gdXNlIGluIHRoZVxuICAgICAgLy8gV2ViU29ja2V0IENsb3NlIG1lc3NhZ2UgbXVzdCBiZSB0aGUgaW50ZWdlciBnaXZlbiBieSBjb2RlLlxuICAgICAgaWYgKGNvZGUgIT09IHVuZGVmaW5lZCAmJiByZWFzb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBmcmFtZS5mcmFtZURhdGEgPSBCdWZmZXIuYWxsb2NVbnNhZmUoMilcbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhLndyaXRlVUludDE2QkUoY29kZSwgMClcbiAgICAgIH0gZWxzZSBpZiAoY29kZSAhPT0gdW5kZWZpbmVkICYmIHJlYXNvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIC8vIElmIHJlYXNvbiBpcyBhbHNvIHByZXNlbnQsIHRoZW4gcmVhc29uQnl0ZXMgbXVzdCBiZVxuICAgICAgICAvLyBwcm92aWRlZCBpbiB0aGUgQ2xvc2UgbWVzc2FnZSBhZnRlciB0aGUgc3RhdHVzIGNvZGUuXG4gICAgICAgIGZyYW1lLmZyYW1lRGF0YSA9IEJ1ZmZlci5hbGxvY1Vuc2FmZSgyICsgcmVhc29uQnl0ZUxlbmd0aClcbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhLndyaXRlVUludDE2QkUoY29kZSwgMClcbiAgICAgICAgLy8gdGhlIGJvZHkgTUFZIGNvbnRhaW4gVVRGLTgtZW5jb2RlZCBkYXRhIHdpdGggdmFsdWUgL3JlYXNvbi9cbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhLndyaXRlKHJlYXNvbiwgMiwgJ3V0Zi04JylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZyYW1lLmZyYW1lRGF0YSA9IGVtcHR5QnVmZmVyXG4gICAgICB9XG5cbiAgICAgIC8qKiBAdHlwZSB7aW1wb3J0KCdzdHJlYW0nKS5EdXBsZXh9ICovXG4gICAgICBjb25zdCBzb2NrZXQgPSB0aGlzW2tSZXNwb25zZV0uc29ja2V0XG5cbiAgICAgIHNvY2tldC53cml0ZShmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLkNMT1NFKSwgKGVycikgPT4ge1xuICAgICAgICBpZiAoIWVycikge1xuICAgICAgICAgIHRoaXNba1NlbnRDbG9zZV0gPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIC8vIFVwb24gZWl0aGVyIHNlbmRpbmcgb3IgcmVjZWl2aW5nIGEgQ2xvc2UgY29udHJvbCBmcmFtZSwgaXQgaXMgc2FpZFxuICAgICAgLy8gdGhhdCBfVGhlIFdlYlNvY2tldCBDbG9zaW5nIEhhbmRzaGFrZSBpcyBTdGFydGVkXyBhbmQgdGhhdCB0aGVcbiAgICAgIC8vIFdlYlNvY2tldCBjb25uZWN0aW9uIGlzIGluIHRoZSBDTE9TSU5HIHN0YXRlLlxuICAgICAgdGhpc1trUmVhZHlTdGF0ZV0gPSBzdGF0ZXMuQ0xPU0lOR1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBPdGhlcndpc2VcbiAgICAgIC8vIFNldCB0aGlzJ3MgcmVhZHkgc3RhdGUgdG8gQ0xPU0lORyAoMikuXG4gICAgICB0aGlzW2tSZWFkeVN0YXRlXSA9IFdlYlNvY2tldC5DTE9TSU5HXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZG9tLXdlYnNvY2tldC1zZW5kXG4gICAqIEBwYXJhbSB7Tm9kZUpTLlR5cGVkQXJyYXl8QXJyYXlCdWZmZXJ8QmxvYnxzdHJpbmd9IGRhdGFcbiAgICovXG4gIHNlbmQgKGRhdGEpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICB3ZWJpZGwuYXJndW1lbnRMZW5ndGhDaGVjayhhcmd1bWVudHMsIDEsIHsgaGVhZGVyOiAnV2ViU29ja2V0LnNlbmQnIH0pXG5cbiAgICBkYXRhID0gd2ViaWRsLmNvbnZlcnRlcnMuV2ViU29ja2V0U2VuZERhdGEoZGF0YSlcblxuICAgIC8vIDEuIElmIHRoaXMncyByZWFkeSBzdGF0ZSBpcyBDT05ORUNUSU5HLCB0aGVuIHRocm93IGFuXG4gICAgLy8gICAgXCJJbnZhbGlkU3RhdGVFcnJvclwiIERPTUV4Y2VwdGlvbi5cbiAgICBpZiAodGhpc1trUmVhZHlTdGF0ZV0gPT09IFdlYlNvY2tldC5DT05ORUNUSU5HKSB7XG4gICAgICB0aHJvdyBuZXcgRE9NRXhjZXB0aW9uKCdTZW50IGJlZm9yZSBjb25uZWN0ZWQuJywgJ0ludmFsaWRTdGF0ZUVycm9yJylcbiAgICB9XG5cbiAgICAvLyAyLiBSdW4gdGhlIGFwcHJvcHJpYXRlIHNldCBvZiBzdGVwcyBmcm9tIHRoZSBmb2xsb3dpbmcgbGlzdDpcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzY0NTUjc2VjdGlvbi02LjFcbiAgICAvLyBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3JmYzY0NTUjc2VjdGlvbi01LjJcblxuICAgIGlmICghaXNFc3RhYmxpc2hlZCh0aGlzKSB8fCBpc0Nsb3NpbmcodGhpcykpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8qKiBAdHlwZSB7aW1wb3J0KCdzdHJlYW0nKS5EdXBsZXh9ICovXG4gICAgY29uc3Qgc29ja2V0ID0gdGhpc1trUmVzcG9uc2VdLnNvY2tldFxuXG4gICAgLy8gSWYgZGF0YSBpcyBhIHN0cmluZ1xuICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIC8vIElmIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBpcyBlc3RhYmxpc2hlZCBhbmQgdGhlIFdlYlNvY2tldFxuICAgICAgLy8gY2xvc2luZyBoYW5kc2hha2UgaGFzIG5vdCB5ZXQgc3RhcnRlZCwgdGhlbiB0aGUgdXNlciBhZ2VudFxuICAgICAgLy8gbXVzdCBzZW5kIGEgV2ViU29ja2V0IE1lc3NhZ2UgY29tcHJpc2VkIG9mIHRoZSBkYXRhIGFyZ3VtZW50XG4gICAgICAvLyB1c2luZyBhIHRleHQgZnJhbWUgb3Bjb2RlOyBpZiB0aGUgZGF0YSBjYW5ub3QgYmUgc2VudCwgZS5nLlxuICAgICAgLy8gYmVjYXVzZSBpdCB3b3VsZCBuZWVkIHRvIGJlIGJ1ZmZlcmVkIGJ1dCB0aGUgYnVmZmVyIGlzIGZ1bGwsXG4gICAgICAvLyB0aGUgdXNlciBhZ2VudCBtdXN0IGZsYWcgdGhlIFdlYlNvY2tldCBhcyBmdWxsIGFuZCB0aGVuIGNsb3NlXG4gICAgICAvLyB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24uIEFueSBpbnZvY2F0aW9uIG9mIHRoaXMgbWV0aG9kIHdpdGggYVxuICAgICAgLy8gc3RyaW5nIGFyZ3VtZW50IHRoYXQgZG9lcyBub3QgdGhyb3cgYW4gZXhjZXB0aW9uIG11c3QgaW5jcmVhc2VcbiAgICAgIC8vIHRoZSBidWZmZXJlZEFtb3VudCBhdHRyaWJ1dGUgYnkgdGhlIG51bWJlciBvZiBieXRlcyBuZWVkZWQgdG9cbiAgICAgIC8vIGV4cHJlc3MgdGhlIGFyZ3VtZW50IGFzIFVURi04LlxuXG4gICAgICBjb25zdCB2YWx1ZSA9IEJ1ZmZlci5mcm9tKGRhdGEpXG4gICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQodmFsdWUpXG4gICAgICBjb25zdCBidWZmZXIgPSBmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLlRFWFQpXG5cbiAgICAgIHRoaXMuI2J1ZmZlcmVkQW1vdW50ICs9IHZhbHVlLmJ5dGVMZW5ndGhcbiAgICAgIHNvY2tldC53cml0ZShidWZmZXIsICgpID0+IHtcbiAgICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgLT0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgfSlcbiAgICB9IGVsc2UgaWYgKHR5cGVzLmlzQXJyYXlCdWZmZXIoZGF0YSkpIHtcbiAgICAgIC8vIElmIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiBpcyBlc3RhYmxpc2hlZCwgYW5kIHRoZSBXZWJTb2NrZXRcbiAgICAgIC8vIGNsb3NpbmcgaGFuZHNoYWtlIGhhcyBub3QgeWV0IHN0YXJ0ZWQsIHRoZW4gdGhlIHVzZXIgYWdlbnQgbXVzdFxuICAgICAgLy8gc2VuZCBhIFdlYlNvY2tldCBNZXNzYWdlIGNvbXByaXNlZCBvZiBkYXRhIHVzaW5nIGEgYmluYXJ5IGZyYW1lXG4gICAgICAvLyBvcGNvZGU7IGlmIHRoZSBkYXRhIGNhbm5vdCBiZSBzZW50LCBlLmcuIGJlY2F1c2UgaXQgd291bGQgbmVlZFxuICAgICAgLy8gdG8gYmUgYnVmZmVyZWQgYnV0IHRoZSBidWZmZXIgaXMgZnVsbCwgdGhlIHVzZXIgYWdlbnQgbXVzdCBmbGFnXG4gICAgICAvLyB0aGUgV2ViU29ja2V0IGFzIGZ1bGwgYW5kIHRoZW4gY2xvc2UgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuICAgICAgLy8gVGhlIGRhdGEgdG8gYmUgc2VudCBpcyB0aGUgZGF0YSBzdG9yZWQgaW4gdGhlIGJ1ZmZlciBkZXNjcmliZWRcbiAgICAgIC8vIGJ5IHRoZSBBcnJheUJ1ZmZlciBvYmplY3QuIEFueSBpbnZvY2F0aW9uIG9mIHRoaXMgbWV0aG9kIHdpdGggYW5cbiAgICAgIC8vIEFycmF5QnVmZmVyIGFyZ3VtZW50IHRoYXQgZG9lcyBub3QgdGhyb3cgYW4gZXhjZXB0aW9uIG11c3RcbiAgICAgIC8vIGluY3JlYXNlIHRoZSBidWZmZXJlZEFtb3VudCBhdHRyaWJ1dGUgYnkgdGhlIGxlbmd0aCBvZiB0aGVcbiAgICAgIC8vIEFycmF5QnVmZmVyIGluIGJ5dGVzLlxuXG4gICAgICBjb25zdCB2YWx1ZSA9IEJ1ZmZlci5mcm9tKGRhdGEpXG4gICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQodmFsdWUpXG4gICAgICBjb25zdCBidWZmZXIgPSBmcmFtZS5jcmVhdGVGcmFtZShvcGNvZGVzLkJJTkFSWSlcblxuICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgKz0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgc29ja2V0LndyaXRlKGJ1ZmZlciwgKCkgPT4ge1xuICAgICAgICB0aGlzLiNidWZmZXJlZEFtb3VudCAtPSB2YWx1ZS5ieXRlTGVuZ3RoXG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAoQXJyYXlCdWZmZXIuaXNWaWV3KGRhdGEpKSB7XG4gICAgICAvLyBJZiB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gaXMgZXN0YWJsaXNoZWQsIGFuZCB0aGUgV2ViU29ja2V0XG4gICAgICAvLyBjbG9zaW5nIGhhbmRzaGFrZSBoYXMgbm90IHlldCBzdGFydGVkLCB0aGVuIHRoZSB1c2VyIGFnZW50IG11c3RcbiAgICAgIC8vIHNlbmQgYSBXZWJTb2NrZXQgTWVzc2FnZSBjb21wcmlzZWQgb2YgZGF0YSB1c2luZyBhIGJpbmFyeSBmcmFtZVxuICAgICAgLy8gb3Bjb2RlOyBpZiB0aGUgZGF0YSBjYW5ub3QgYmUgc2VudCwgZS5nLiBiZWNhdXNlIGl0IHdvdWxkIG5lZWQgdG9cbiAgICAgIC8vIGJlIGJ1ZmZlcmVkIGJ1dCB0aGUgYnVmZmVyIGlzIGZ1bGwsIHRoZSB1c2VyIGFnZW50IG11c3QgZmxhZyB0aGVcbiAgICAgIC8vIFdlYlNvY2tldCBhcyBmdWxsIGFuZCB0aGVuIGNsb3NlIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi4gVGhlXG4gICAgICAvLyBkYXRhIHRvIGJlIHNlbnQgaXMgdGhlIGRhdGEgc3RvcmVkIGluIHRoZSBzZWN0aW9uIG9mIHRoZSBidWZmZXJcbiAgICAgIC8vIGRlc2NyaWJlZCBieSB0aGUgQXJyYXlCdWZmZXIgb2JqZWN0IHRoYXQgZGF0YSByZWZlcmVuY2VzLiBBbnlcbiAgICAgIC8vIGludm9jYXRpb24gb2YgdGhpcyBtZXRob2Qgd2l0aCB0aGlzIGtpbmQgb2YgYXJndW1lbnQgdGhhdCBkb2VzXG4gICAgICAvLyBub3QgdGhyb3cgYW4gZXhjZXB0aW9uIG11c3QgaW5jcmVhc2UgdGhlIGJ1ZmZlcmVkQW1vdW50IGF0dHJpYnV0ZVxuICAgICAgLy8gYnkgdGhlIGxlbmd0aCBvZiBkYXRhXHUyMDE5cyBidWZmZXIgaW4gYnl0ZXMuXG5cbiAgICAgIGNvbnN0IGFiID0gQnVmZmVyLmZyb20oZGF0YSwgZGF0YS5ieXRlT2Zmc2V0LCBkYXRhLmJ5dGVMZW5ndGgpXG5cbiAgICAgIGNvbnN0IGZyYW1lID0gbmV3IFdlYnNvY2tldEZyYW1lU2VuZChhYilcbiAgICAgIGNvbnN0IGJ1ZmZlciA9IGZyYW1lLmNyZWF0ZUZyYW1lKG9wY29kZXMuQklOQVJZKVxuXG4gICAgICB0aGlzLiNidWZmZXJlZEFtb3VudCArPSBhYi5ieXRlTGVuZ3RoXG4gICAgICBzb2NrZXQud3JpdGUoYnVmZmVyLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuI2J1ZmZlcmVkQW1vdW50IC09IGFiLmJ5dGVMZW5ndGhcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmIChpc0Jsb2JMaWtlKGRhdGEpKSB7XG4gICAgICAvLyBJZiB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gaXMgZXN0YWJsaXNoZWQsIGFuZCB0aGUgV2ViU29ja2V0XG4gICAgICAvLyBjbG9zaW5nIGhhbmRzaGFrZSBoYXMgbm90IHlldCBzdGFydGVkLCB0aGVuIHRoZSB1c2VyIGFnZW50IG11c3RcbiAgICAgIC8vIHNlbmQgYSBXZWJTb2NrZXQgTWVzc2FnZSBjb21wcmlzZWQgb2YgZGF0YSB1c2luZyBhIGJpbmFyeSBmcmFtZVxuICAgICAgLy8gb3Bjb2RlOyBpZiB0aGUgZGF0YSBjYW5ub3QgYmUgc2VudCwgZS5nLiBiZWNhdXNlIGl0IHdvdWxkIG5lZWQgdG9cbiAgICAgIC8vIGJlIGJ1ZmZlcmVkIGJ1dCB0aGUgYnVmZmVyIGlzIGZ1bGwsIHRoZSB1c2VyIGFnZW50IG11c3QgZmxhZyB0aGVcbiAgICAgIC8vIFdlYlNvY2tldCBhcyBmdWxsIGFuZCB0aGVuIGNsb3NlIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi4gVGhlIGRhdGFcbiAgICAgIC8vIHRvIGJlIHNlbnQgaXMgdGhlIHJhdyBkYXRhIHJlcHJlc2VudGVkIGJ5IHRoZSBCbG9iIG9iamVjdC4gQW55XG4gICAgICAvLyBpbnZvY2F0aW9uIG9mIHRoaXMgbWV0aG9kIHdpdGggYSBCbG9iIGFyZ3VtZW50IHRoYXQgZG9lcyBub3QgdGhyb3dcbiAgICAgIC8vIGFuIGV4Y2VwdGlvbiBtdXN0IGluY3JlYXNlIHRoZSBidWZmZXJlZEFtb3VudCBhdHRyaWJ1dGUgYnkgdGhlIHNpemVcbiAgICAgIC8vIG9mIHRoZSBCbG9iIG9iamVjdFx1MjAxOXMgcmF3IGRhdGEsIGluIGJ5dGVzLlxuXG4gICAgICBjb25zdCBmcmFtZSA9IG5ldyBXZWJzb2NrZXRGcmFtZVNlbmQoKVxuXG4gICAgICBkYXRhLmFycmF5QnVmZmVyKCkudGhlbigoYWIpID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBCdWZmZXIuZnJvbShhYilcbiAgICAgICAgZnJhbWUuZnJhbWVEYXRhID0gdmFsdWVcbiAgICAgICAgY29uc3QgYnVmZmVyID0gZnJhbWUuY3JlYXRlRnJhbWUob3Bjb2Rlcy5CSU5BUlkpXG5cbiAgICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgKz0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgICBzb2NrZXQud3JpdGUoYnVmZmVyLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy4jYnVmZmVyZWRBbW91bnQgLT0gdmFsdWUuYnl0ZUxlbmd0aFxuICAgICAgICB9KVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBnZXQgcmVhZHlTdGF0ZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgLy8gVGhlIHJlYWR5U3RhdGUgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpcydzIHJlYWR5IHN0YXRlLlxuICAgIHJldHVybiB0aGlzW2tSZWFkeVN0YXRlXVxuICB9XG5cbiAgZ2V0IGJ1ZmZlcmVkQW1vdW50ICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICByZXR1cm4gdGhpcy4jYnVmZmVyZWRBbW91bnRcbiAgfVxuXG4gIGdldCB1cmwgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIC8vIFRoZSB1cmwgZ2V0dGVyIHN0ZXBzIGFyZSB0byByZXR1cm4gdGhpcydzIHVybCwgc2VyaWFsaXplZC5cbiAgICByZXR1cm4gVVJMU2VyaWFsaXplcih0aGlzW2tXZWJTb2NrZXRVUkxdKVxuICB9XG5cbiAgZ2V0IGV4dGVuc2lvbnMgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIHJldHVybiB0aGlzLiNleHRlbnNpb25zXG4gIH1cblxuICBnZXQgcHJvdG9jb2wgKCkge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIHJldHVybiB0aGlzLiNwcm90b2NvbFxuICB9XG5cbiAgZ2V0IG9ub3BlbiAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50cy5vcGVuXG4gIH1cblxuICBzZXQgb25vcGVuIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIGlmICh0aGlzLiNldmVudHMub3Blbikge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdvcGVuJywgdGhpcy4jZXZlbnRzLm9wZW4pXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy4jZXZlbnRzLm9wZW4gPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdvcGVuJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5vcGVuID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBvbmVycm9yICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICByZXR1cm4gdGhpcy4jZXZlbnRzLmVycm9yXG4gIH1cblxuICBzZXQgb25lcnJvciAoZm4pIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICBpZiAodGhpcy4jZXZlbnRzLmVycm9yKSB7XG4gICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgdGhpcy4jZXZlbnRzLmVycm9yKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5lcnJvciA9IGZuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5lcnJvciA9IG51bGxcbiAgICB9XG4gIH1cblxuICBnZXQgb25jbG9zZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50cy5jbG9zZVxuICB9XG5cbiAgc2V0IG9uY2xvc2UgKGZuKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgaWYgKHRoaXMuI2V2ZW50cy5jbG9zZSkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdjbG9zZScsIHRoaXMuI2V2ZW50cy5jbG9zZSlcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aGlzLiNldmVudHMuY2xvc2UgPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjbG9zZScsIGZuKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLiNldmVudHMuY2xvc2UgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgZ2V0IG9ubWVzc2FnZSAoKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgcmV0dXJuIHRoaXMuI2V2ZW50cy5tZXNzYWdlXG4gIH1cblxuICBzZXQgb25tZXNzYWdlIChmbikge1xuICAgIHdlYmlkbC5icmFuZENoZWNrKHRoaXMsIFdlYlNvY2tldClcblxuICAgIGlmICh0aGlzLiNldmVudHMubWVzc2FnZSkge1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgdGhpcy4jZXZlbnRzLm1lc3NhZ2UpXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy4jZXZlbnRzLm1lc3NhZ2UgPSBmblxuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZm4pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI2V2ZW50cy5tZXNzYWdlID0gbnVsbFxuICAgIH1cbiAgfVxuXG4gIGdldCBiaW5hcnlUeXBlICgpIHtcbiAgICB3ZWJpZGwuYnJhbmRDaGVjayh0aGlzLCBXZWJTb2NrZXQpXG5cbiAgICByZXR1cm4gdGhpc1trQmluYXJ5VHlwZV1cbiAgfVxuXG4gIHNldCBiaW5hcnlUeXBlICh0eXBlKSB7XG4gICAgd2ViaWRsLmJyYW5kQ2hlY2sodGhpcywgV2ViU29ja2V0KVxuXG4gICAgaWYgKHR5cGUgIT09ICdibG9iJyAmJiB0eXBlICE9PSAnYXJyYXlidWZmZXInKSB7XG4gICAgICB0aGlzW2tCaW5hcnlUeXBlXSA9ICdibG9iJ1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzW2tCaW5hcnlUeXBlXSA9IHR5cGVcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHNlZSBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyNmZWVkYmFjay1mcm9tLXRoZS1wcm90b2NvbFxuICAgKi9cbiAgI29uQ29ubmVjdGlvbkVzdGFibGlzaGVkIChyZXNwb25zZSkge1xuICAgIC8vIHByb2Nlc3NSZXNwb25zZSBpcyBjYWxsZWQgd2hlbiB0aGUgXCJyZXNwb25zZVx1MjAxOXMgaGVhZGVyIGxpc3QgaGFzIGJlZW4gcmVjZWl2ZWQgYW5kIGluaXRpYWxpemVkLlwiXG4gICAgLy8gb25jZSB0aGlzIGhhcHBlbnMsIHRoZSBjb25uZWN0aW9uIGlzIG9wZW5cbiAgICB0aGlzW2tSZXNwb25zZV0gPSByZXNwb25zZVxuXG4gICAgY29uc3QgcGFyc2VyID0gbmV3IEJ5dGVQYXJzZXIodGhpcylcbiAgICBwYXJzZXIub24oJ2RyYWluJywgZnVuY3Rpb24gb25QYXJzZXJEcmFpbiAoKSB7XG4gICAgICB0aGlzLndzW2tSZXNwb25zZV0uc29ja2V0LnJlc3VtZSgpXG4gICAgfSlcblxuICAgIHJlc3BvbnNlLnNvY2tldC53cyA9IHRoaXNcbiAgICB0aGlzW2tCeXRlUGFyc2VyXSA9IHBhcnNlclxuXG4gICAgLy8gMS4gQ2hhbmdlIHRoZSByZWFkeSBzdGF0ZSB0byBPUEVOICgxKS5cbiAgICB0aGlzW2tSZWFkeVN0YXRlXSA9IHN0YXRlcy5PUEVOXG5cbiAgICAvLyAyLiBDaGFuZ2UgdGhlIGV4dGVuc2lvbnMgYXR0cmlidXRlXHUyMDE5cyB2YWx1ZSB0byB0aGUgZXh0ZW5zaW9ucyBpbiB1c2UsIGlmXG4gICAgLy8gICAgaXQgaXMgbm90IHRoZSBudWxsIHZhbHVlLlxuICAgIC8vIGh0dHBzOi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2h0bWwvcmZjNjQ1NSNzZWN0aW9uLTkuMVxuICAgIGNvbnN0IGV4dGVuc2lvbnMgPSByZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ3NlYy13ZWJzb2NrZXQtZXh0ZW5zaW9ucycpXG5cbiAgICBpZiAoZXh0ZW5zaW9ucyAhPT0gbnVsbCkge1xuICAgICAgdGhpcy4jZXh0ZW5zaW9ucyA9IGV4dGVuc2lvbnNcbiAgICB9XG5cbiAgICAvLyAzLiBDaGFuZ2UgdGhlIHByb3RvY29sIGF0dHJpYnV0ZVx1MjAxOXMgdmFsdWUgdG8gdGhlIHN1YnByb3RvY29sIGluIHVzZSwgaWZcbiAgICAvLyAgICBpdCBpcyBub3QgdGhlIG51bGwgdmFsdWUuXG4gICAgLy8gaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM2NDU1I3NlY3Rpb24tMS45XG4gICAgY29uc3QgcHJvdG9jb2wgPSByZXNwb25zZS5oZWFkZXJzTGlzdC5nZXQoJ3NlYy13ZWJzb2NrZXQtcHJvdG9jb2wnKVxuXG4gICAgaWYgKHByb3RvY29sICE9PSBudWxsKSB7XG4gICAgICB0aGlzLiNwcm90b2NvbCA9IHByb3RvY29sXG4gICAgfVxuXG4gICAgLy8gNC4gRmlyZSBhbiBldmVudCBuYW1lZCBvcGVuIGF0IHRoZSBXZWJTb2NrZXQgb2JqZWN0LlxuICAgIGZpcmVFdmVudCgnb3BlbicsIHRoaXMpXG4gIH1cbn1cblxuLy8gaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZG9tLXdlYnNvY2tldC1jb25uZWN0aW5nXG5XZWJTb2NrZXQuQ09OTkVDVElORyA9IFdlYlNvY2tldC5wcm90b3R5cGUuQ09OTkVDVElORyA9IHN0YXRlcy5DT05ORUNUSU5HXG4vLyBodHRwczovL3dlYnNvY2tldHMuc3BlYy53aGF0d2cub3JnLyNkb20td2Vic29ja2V0LW9wZW5cbldlYlNvY2tldC5PUEVOID0gV2ViU29ja2V0LnByb3RvdHlwZS5PUEVOID0gc3RhdGVzLk9QRU5cbi8vIGh0dHBzOi8vd2Vic29ja2V0cy5zcGVjLndoYXR3Zy5vcmcvI2RvbS13ZWJzb2NrZXQtY2xvc2luZ1xuV2ViU29ja2V0LkNMT1NJTkcgPSBXZWJTb2NrZXQucHJvdG90eXBlLkNMT1NJTkcgPSBzdGF0ZXMuQ0xPU0lOR1xuLy8gaHR0cHM6Ly93ZWJzb2NrZXRzLnNwZWMud2hhdHdnLm9yZy8jZG9tLXdlYnNvY2tldC1jbG9zZWRcbldlYlNvY2tldC5DTE9TRUQgPSBXZWJTb2NrZXQucHJvdG90eXBlLkNMT1NFRCA9IHN0YXRlcy5DTE9TRURcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoV2ViU29ja2V0LnByb3RvdHlwZSwge1xuICBDT05ORUNUSU5HOiBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLFxuICBPUEVOOiBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLFxuICBDTE9TSU5HOiBzdGF0aWNQcm9wZXJ0eURlc2NyaXB0b3JzLFxuICBDTE9TRUQ6IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIHVybDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcmVhZHlTdGF0ZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYnVmZmVyZWRBbW91bnQ6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ub3Blbjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgb25lcnJvcjoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgb25jbG9zZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgY2xvc2U6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIG9ubWVzc2FnZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgYmluYXJ5VHlwZToga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgc2VuZDoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgZXh0ZW5zaW9uczoga0VudW1lcmFibGVQcm9wZXJ0eSxcbiAgcHJvdG9jb2w6IGtFbnVtZXJhYmxlUHJvcGVydHksXG4gIFtTeW1ib2wudG9TdHJpbmdUYWddOiB7XG4gICAgdmFsdWU6ICdXZWJTb2NrZXQnLFxuICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfVxufSlcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoV2ViU29ja2V0LCB7XG4gIENPTk5FQ1RJTkc6IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIE9QRU46IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIENMT1NJTkc6IHN0YXRpY1Byb3BlcnR5RGVzY3JpcHRvcnMsXG4gIENMT1NFRDogc3RhdGljUHJvcGVydHlEZXNjcmlwdG9yc1xufSlcblxud2ViaWRsLmNvbnZlcnRlcnNbJ3NlcXVlbmNlPERPTVN0cmluZz4nXSA9IHdlYmlkbC5zZXF1ZW5jZUNvbnZlcnRlcihcbiAgd2ViaWRsLmNvbnZlcnRlcnMuRE9NU3RyaW5nXG4pXG5cbndlYmlkbC5jb252ZXJ0ZXJzWydET01TdHJpbmcgb3Igc2VxdWVuY2U8RE9NU3RyaW5nPiddID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgPT09ICdPYmplY3QnICYmIFN5bWJvbC5pdGVyYXRvciBpbiBWKSB7XG4gICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzWydzZXF1ZW5jZTxET01TdHJpbmc+J10oVilcbiAgfVxuXG4gIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5ET01TdHJpbmcoVilcbn1cblxuLy8gVGhpcyBpbXBsZW1lbnRzIHRoZSBwcm9wc2FsIG1hZGUgaW4gaHR0cHM6Ly9naXRodWIuY29tL3doYXR3Zy93ZWJzb2NrZXRzL2lzc3Vlcy80Mlxud2ViaWRsLmNvbnZlcnRlcnMuV2ViU29ja2V0SW5pdCA9IHdlYmlkbC5kaWN0aW9uYXJ5Q29udmVydGVyKFtcbiAge1xuICAgIGtleTogJ3Byb3RvY29scycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwuY29udmVydGVyc1snRE9NU3RyaW5nIG9yIHNlcXVlbmNlPERPTVN0cmluZz4nXSxcbiAgICBnZXQgZGVmYXVsdFZhbHVlICgpIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cbiAgfSxcbiAge1xuICAgIGtleTogJ2Rpc3BhdGNoZXInLFxuICAgIGNvbnZlcnRlcjogKFYpID0+IFYsXG4gICAgZ2V0IGRlZmF1bHRWYWx1ZSAoKSB7XG4gICAgICByZXR1cm4gZ2V0R2xvYmFsRGlzcGF0Y2hlcigpXG4gICAgfVxuICB9LFxuICB7XG4gICAga2V5OiAnaGVhZGVycycsXG4gICAgY29udmVydGVyOiB3ZWJpZGwubnVsbGFibGVDb252ZXJ0ZXIod2ViaWRsLmNvbnZlcnRlcnMuSGVhZGVyc0luaXQpXG4gIH1cbl0pXG5cbndlYmlkbC5jb252ZXJ0ZXJzWydET01TdHJpbmcgb3Igc2VxdWVuY2U8RE9NU3RyaW5nPiBvciBXZWJTb2NrZXRJbml0J10gPSBmdW5jdGlvbiAoVikge1xuICBpZiAod2ViaWRsLnV0aWwuVHlwZShWKSA9PT0gJ09iamVjdCcgJiYgIShTeW1ib2wuaXRlcmF0b3IgaW4gVikpIHtcbiAgICByZXR1cm4gd2ViaWRsLmNvbnZlcnRlcnMuV2ViU29ja2V0SW5pdChWKVxuICB9XG5cbiAgcmV0dXJuIHsgcHJvdG9jb2xzOiB3ZWJpZGwuY29udmVydGVyc1snRE9NU3RyaW5nIG9yIHNlcXVlbmNlPERPTVN0cmluZz4nXShWKSB9XG59XG5cbndlYmlkbC5jb252ZXJ0ZXJzLldlYlNvY2tldFNlbmREYXRhID0gZnVuY3Rpb24gKFYpIHtcbiAgaWYgKHdlYmlkbC51dGlsLlR5cGUoVikgPT09ICdPYmplY3QnKSB7XG4gICAgaWYgKGlzQmxvYkxpa2UoVikpIHtcbiAgICAgIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5CbG9iKFYsIHsgc3RyaWN0OiBmYWxzZSB9KVxuICAgIH1cblxuICAgIGlmIChBcnJheUJ1ZmZlci5pc1ZpZXcoVikgfHwgdHlwZXMuaXNBbnlBcnJheUJ1ZmZlcihWKSkge1xuICAgICAgcmV0dXJuIHdlYmlkbC5jb252ZXJ0ZXJzLkJ1ZmZlclNvdXJjZShWKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB3ZWJpZGwuY29udmVydGVycy5VU1ZTdHJpbmcoVilcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIFdlYlNvY2tldFxufVxuIiwgIid1c2Ugc3RyaWN0J1xuXG5jb25zdCBDbGllbnQgPSByZXF1aXJlKCcuL2xpYi9jbGllbnQnKVxuY29uc3QgRGlzcGF0Y2hlciA9IHJlcXVpcmUoJy4vbGliL2Rpc3BhdGNoZXInKVxuY29uc3QgZXJyb3JzID0gcmVxdWlyZSgnLi9saWIvY29yZS9lcnJvcnMnKVxuY29uc3QgUG9vbCA9IHJlcXVpcmUoJy4vbGliL3Bvb2wnKVxuY29uc3QgQmFsYW5jZWRQb29sID0gcmVxdWlyZSgnLi9saWIvYmFsYW5jZWQtcG9vbCcpXG5jb25zdCBBZ2VudCA9IHJlcXVpcmUoJy4vbGliL2FnZW50JylcbmNvbnN0IHV0aWwgPSByZXF1aXJlKCcuL2xpYi9jb3JlL3V0aWwnKVxuY29uc3QgeyBJbnZhbGlkQXJndW1lbnRFcnJvciB9ID0gZXJyb3JzXG5jb25zdCBhcGkgPSByZXF1aXJlKCcuL2xpYi9hcGknKVxuY29uc3QgYnVpbGRDb25uZWN0b3IgPSByZXF1aXJlKCcuL2xpYi9jb3JlL2Nvbm5lY3QnKVxuY29uc3QgTW9ja0NsaWVudCA9IHJlcXVpcmUoJy4vbGliL21vY2svbW9jay1jbGllbnQnKVxuY29uc3QgTW9ja0FnZW50ID0gcmVxdWlyZSgnLi9saWIvbW9jay9tb2NrLWFnZW50JylcbmNvbnN0IE1vY2tQb29sID0gcmVxdWlyZSgnLi9saWIvbW9jay9tb2NrLXBvb2wnKVxuY29uc3QgbW9ja0Vycm9ycyA9IHJlcXVpcmUoJy4vbGliL21vY2svbW9jay1lcnJvcnMnKVxuY29uc3QgUHJveHlBZ2VudCA9IHJlcXVpcmUoJy4vbGliL3Byb3h5LWFnZW50JylcbmNvbnN0IFJldHJ5SGFuZGxlciA9IHJlcXVpcmUoJy4vbGliL2hhbmRsZXIvUmV0cnlIYW5kbGVyJylcbmNvbnN0IHsgZ2V0R2xvYmFsRGlzcGF0Y2hlciwgc2V0R2xvYmFsRGlzcGF0Y2hlciB9ID0gcmVxdWlyZSgnLi9saWIvZ2xvYmFsJylcbmNvbnN0IERlY29yYXRvckhhbmRsZXIgPSByZXF1aXJlKCcuL2xpYi9oYW5kbGVyL0RlY29yYXRvckhhbmRsZXInKVxuY29uc3QgUmVkaXJlY3RIYW5kbGVyID0gcmVxdWlyZSgnLi9saWIvaGFuZGxlci9SZWRpcmVjdEhhbmRsZXInKVxuY29uc3QgY3JlYXRlUmVkaXJlY3RJbnRlcmNlcHRvciA9IHJlcXVpcmUoJy4vbGliL2ludGVyY2VwdG9yL3JlZGlyZWN0SW50ZXJjZXB0b3InKVxuXG5sZXQgaGFzQ3J5cHRvXG50cnkge1xuICByZXF1aXJlKCdjcnlwdG8nKVxuICBoYXNDcnlwdG8gPSB0cnVlXG59IGNhdGNoIHtcbiAgaGFzQ3J5cHRvID0gZmFsc2Vcbn1cblxuT2JqZWN0LmFzc2lnbihEaXNwYXRjaGVyLnByb3RvdHlwZSwgYXBpKVxuXG5tb2R1bGUuZXhwb3J0cy5EaXNwYXRjaGVyID0gRGlzcGF0Y2hlclxubW9kdWxlLmV4cG9ydHMuQ2xpZW50ID0gQ2xpZW50XG5tb2R1bGUuZXhwb3J0cy5Qb29sID0gUG9vbFxubW9kdWxlLmV4cG9ydHMuQmFsYW5jZWRQb29sID0gQmFsYW5jZWRQb29sXG5tb2R1bGUuZXhwb3J0cy5BZ2VudCA9IEFnZW50XG5tb2R1bGUuZXhwb3J0cy5Qcm94eUFnZW50ID0gUHJveHlBZ2VudFxubW9kdWxlLmV4cG9ydHMuUmV0cnlIYW5kbGVyID0gUmV0cnlIYW5kbGVyXG5cbm1vZHVsZS5leHBvcnRzLkRlY29yYXRvckhhbmRsZXIgPSBEZWNvcmF0b3JIYW5kbGVyXG5tb2R1bGUuZXhwb3J0cy5SZWRpcmVjdEhhbmRsZXIgPSBSZWRpcmVjdEhhbmRsZXJcbm1vZHVsZS5leHBvcnRzLmNyZWF0ZVJlZGlyZWN0SW50ZXJjZXB0b3IgPSBjcmVhdGVSZWRpcmVjdEludGVyY2VwdG9yXG5cbm1vZHVsZS5leHBvcnRzLmJ1aWxkQ29ubmVjdG9yID0gYnVpbGRDb25uZWN0b3Jcbm1vZHVsZS5leHBvcnRzLmVycm9ycyA9IGVycm9yc1xuXG5mdW5jdGlvbiBtYWtlRGlzcGF0Y2hlciAoZm4pIHtcbiAgcmV0dXJuICh1cmwsIG9wdHMsIGhhbmRsZXIpID0+IHtcbiAgICBpZiAodHlwZW9mIG9wdHMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGhhbmRsZXIgPSBvcHRzXG4gICAgICBvcHRzID0gbnVsbFxuICAgIH1cblxuICAgIGlmICghdXJsIHx8ICh0eXBlb2YgdXJsICE9PSAnc3RyaW5nJyAmJiB0eXBlb2YgdXJsICE9PSAnb2JqZWN0JyAmJiAhKHVybCBpbnN0YW5jZW9mIFVSTCkpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ludmFsaWQgdXJsJylcbiAgICB9XG5cbiAgICBpZiAob3B0cyAhPSBudWxsICYmIHR5cGVvZiBvcHRzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMnKVxuICAgIH1cblxuICAgIGlmIChvcHRzICYmIG9wdHMucGF0aCAhPSBudWxsKSB7XG4gICAgICBpZiAodHlwZW9mIG9wdHMucGF0aCAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbnZhbGlkIG9wdHMucGF0aCcpXG4gICAgICB9XG5cbiAgICAgIGxldCBwYXRoID0gb3B0cy5wYXRoXG4gICAgICBpZiAoIW9wdHMucGF0aC5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgICAgcGF0aCA9IGAvJHtwYXRofWBcbiAgICAgIH1cblxuICAgICAgdXJsID0gbmV3IFVSTCh1dGlsLnBhcnNlT3JpZ2luKHVybCkub3JpZ2luICsgcGF0aClcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCFvcHRzKSB7XG4gICAgICAgIG9wdHMgPSB0eXBlb2YgdXJsID09PSAnb2JqZWN0JyA/IHVybCA6IHt9XG4gICAgICB9XG5cbiAgICAgIHVybCA9IHV0aWwucGFyc2VVUkwodXJsKVxuICAgIH1cblxuICAgIGNvbnN0IHsgYWdlbnQsIGRpc3BhdGNoZXIgPSBnZXRHbG9iYWxEaXNwYXRjaGVyKCkgfSA9IG9wdHNcblxuICAgIGlmIChhZ2VudCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd1bnN1cHBvcnRlZCBvcHRzLmFnZW50LiBEaWQgeW91IG1lYW4gb3B0cy5jbGllbnQ/JylcbiAgICB9XG5cbiAgICByZXR1cm4gZm4uY2FsbChkaXNwYXRjaGVyLCB7XG4gICAgICAuLi5vcHRzLFxuICAgICAgb3JpZ2luOiB1cmwub3JpZ2luLFxuICAgICAgcGF0aDogdXJsLnNlYXJjaCA/IGAke3VybC5wYXRobmFtZX0ke3VybC5zZWFyY2h9YCA6IHVybC5wYXRobmFtZSxcbiAgICAgIG1ldGhvZDogb3B0cy5tZXRob2QgfHwgKG9wdHMuYm9keSA/ICdQVVQnIDogJ0dFVCcpXG4gICAgfSwgaGFuZGxlcilcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cy5zZXRHbG9iYWxEaXNwYXRjaGVyID0gc2V0R2xvYmFsRGlzcGF0Y2hlclxubW9kdWxlLmV4cG9ydHMuZ2V0R2xvYmFsRGlzcGF0Y2hlciA9IGdldEdsb2JhbERpc3BhdGNoZXJcblxuaWYgKHV0aWwubm9kZU1ham9yID4gMTYgfHwgKHV0aWwubm9kZU1ham9yID09PSAxNiAmJiB1dGlsLm5vZGVNaW5vciA+PSA4KSkge1xuICBsZXQgZmV0Y2hJbXBsID0gbnVsbFxuICBtb2R1bGUuZXhwb3J0cy5mZXRjaCA9IGFzeW5jIGZ1bmN0aW9uIGZldGNoIChyZXNvdXJjZSkge1xuICAgIGlmICghZmV0Y2hJbXBsKSB7XG4gICAgICBmZXRjaEltcGwgPSByZXF1aXJlKCcuL2xpYi9mZXRjaCcpLmZldGNoXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBmZXRjaEltcGwoLi4uYXJndW1lbnRzKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKHR5cGVvZiBlcnIgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKGVyciwgdGhpcylcbiAgICAgIH1cblxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG4gIG1vZHVsZS5leHBvcnRzLkhlYWRlcnMgPSByZXF1aXJlKCcuL2xpYi9mZXRjaC9oZWFkZXJzJykuSGVhZGVyc1xuICBtb2R1bGUuZXhwb3J0cy5SZXNwb25zZSA9IHJlcXVpcmUoJy4vbGliL2ZldGNoL3Jlc3BvbnNlJykuUmVzcG9uc2VcbiAgbW9kdWxlLmV4cG9ydHMuUmVxdWVzdCA9IHJlcXVpcmUoJy4vbGliL2ZldGNoL3JlcXVlc3QnKS5SZXF1ZXN0XG4gIG1vZHVsZS5leHBvcnRzLkZvcm1EYXRhID0gcmVxdWlyZSgnLi9saWIvZmV0Y2gvZm9ybWRhdGEnKS5Gb3JtRGF0YVxuICBtb2R1bGUuZXhwb3J0cy5GaWxlID0gcmVxdWlyZSgnLi9saWIvZmV0Y2gvZmlsZScpLkZpbGVcbiAgbW9kdWxlLmV4cG9ydHMuRmlsZVJlYWRlciA9IHJlcXVpcmUoJy4vbGliL2ZpbGVhcGkvZmlsZXJlYWRlcicpLkZpbGVSZWFkZXJcblxuICBjb25zdCB7IHNldEdsb2JhbE9yaWdpbiwgZ2V0R2xvYmFsT3JpZ2luIH0gPSByZXF1aXJlKCcuL2xpYi9mZXRjaC9nbG9iYWwnKVxuXG4gIG1vZHVsZS5leHBvcnRzLnNldEdsb2JhbE9yaWdpbiA9IHNldEdsb2JhbE9yaWdpblxuICBtb2R1bGUuZXhwb3J0cy5nZXRHbG9iYWxPcmlnaW4gPSBnZXRHbG9iYWxPcmlnaW5cblxuICBjb25zdCB7IENhY2hlU3RvcmFnZSB9ID0gcmVxdWlyZSgnLi9saWIvY2FjaGUvY2FjaGVzdG9yYWdlJylcbiAgY29uc3QgeyBrQ29uc3RydWN0IH0gPSByZXF1aXJlKCcuL2xpYi9jYWNoZS9zeW1ib2xzJylcblxuICAvLyBDYWNoZSAmIENhY2hlU3RvcmFnZSBhcmUgdGlnaHRseSBjb3VwbGVkIHdpdGggZmV0Y2guIEV2ZW4gaWYgaXQgbWF5IHJ1blxuICAvLyBpbiBhbiBvbGRlciB2ZXJzaW9uIG9mIE5vZGUsIGl0IGRvZXNuJ3QgaGF2ZSBhbnkgdXNlIHdpdGhvdXQgZmV0Y2guXG4gIG1vZHVsZS5leHBvcnRzLmNhY2hlcyA9IG5ldyBDYWNoZVN0b3JhZ2Uoa0NvbnN0cnVjdClcbn1cblxuaWYgKHV0aWwubm9kZU1ham9yID49IDE2KSB7XG4gIGNvbnN0IHsgZGVsZXRlQ29va2llLCBnZXRDb29raWVzLCBnZXRTZXRDb29raWVzLCBzZXRDb29raWUgfSA9IHJlcXVpcmUoJy4vbGliL2Nvb2tpZXMnKVxuXG4gIG1vZHVsZS5leHBvcnRzLmRlbGV0ZUNvb2tpZSA9IGRlbGV0ZUNvb2tpZVxuICBtb2R1bGUuZXhwb3J0cy5nZXRDb29raWVzID0gZ2V0Q29va2llc1xuICBtb2R1bGUuZXhwb3J0cy5nZXRTZXRDb29raWVzID0gZ2V0U2V0Q29va2llc1xuICBtb2R1bGUuZXhwb3J0cy5zZXRDb29raWUgPSBzZXRDb29raWVcblxuICBjb25zdCB7IHBhcnNlTUlNRVR5cGUsIHNlcmlhbGl6ZUFNaW1lVHlwZSB9ID0gcmVxdWlyZSgnLi9saWIvZmV0Y2gvZGF0YVVSTCcpXG5cbiAgbW9kdWxlLmV4cG9ydHMucGFyc2VNSU1FVHlwZSA9IHBhcnNlTUlNRVR5cGVcbiAgbW9kdWxlLmV4cG9ydHMuc2VyaWFsaXplQU1pbWVUeXBlID0gc2VyaWFsaXplQU1pbWVUeXBlXG59XG5cbmlmICh1dGlsLm5vZGVNYWpvciA+PSAxOCAmJiBoYXNDcnlwdG8pIHtcbiAgY29uc3QgeyBXZWJTb2NrZXQgfSA9IHJlcXVpcmUoJy4vbGliL3dlYnNvY2tldC93ZWJzb2NrZXQnKVxuXG4gIG1vZHVsZS5leHBvcnRzLldlYlNvY2tldCA9IFdlYlNvY2tldFxufVxuXG5tb2R1bGUuZXhwb3J0cy5yZXF1ZXN0ID0gbWFrZURpc3BhdGNoZXIoYXBpLnJlcXVlc3QpXG5tb2R1bGUuZXhwb3J0cy5zdHJlYW0gPSBtYWtlRGlzcGF0Y2hlcihhcGkuc3RyZWFtKVxubW9kdWxlLmV4cG9ydHMucGlwZWxpbmUgPSBtYWtlRGlzcGF0Y2hlcihhcGkucGlwZWxpbmUpXG5tb2R1bGUuZXhwb3J0cy5jb25uZWN0ID0gbWFrZURpc3BhdGNoZXIoYXBpLmNvbm5lY3QpXG5tb2R1bGUuZXhwb3J0cy51cGdyYWRlID0gbWFrZURpc3BhdGNoZXIoYXBpLnVwZ3JhZGUpXG5cbm1vZHVsZS5leHBvcnRzLk1vY2tDbGllbnQgPSBNb2NrQ2xpZW50XG5tb2R1bGUuZXhwb3J0cy5Nb2NrUG9vbCA9IE1vY2tQb29sXG5tb2R1bGUuZXhwb3J0cy5Nb2NrQWdlbnQgPSBNb2NrQWdlbnRcbm1vZHVsZS5leHBvcnRzLm1vY2tFcnJvcnMgPSBtb2NrRXJyb3JzXG4iLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCBudWxsLCAiKGZ1bmN0aW9uIChnbG9iYWwsIGZhY3RvcnkpIHtcbiAgICB0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgPyBmYWN0b3J5KGV4cG9ydHMpIDpcbiAgICB0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQgPyBkZWZpbmUoWydleHBvcnRzJ10sIGZhY3RvcnkpIDpcbiAgICAoZmFjdG9yeSgoZ2xvYmFsLmFzeW5jID0ge30pKSk7XG59KHRoaXMsIChmdW5jdGlvbiAoZXhwb3J0cykgeyAndXNlIHN0cmljdCc7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgY29udGludWF0aW9uIGZ1bmN0aW9uIHdpdGggc29tZSBhcmd1bWVudHMgYWxyZWFkeSBhcHBsaWVkLlxuICAgICAqXG4gICAgICogVXNlZnVsIGFzIGEgc2hvcnRoYW5kIHdoZW4gY29tYmluZWQgd2l0aCBvdGhlciBjb250cm9sIGZsb3cgZnVuY3Rpb25zLiBBbnlcbiAgICAgKiBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSByZXR1cm5lZCBmdW5jdGlvbiBhcmUgYWRkZWQgdG8gdGhlIGFyZ3VtZW50c1xuICAgICAqIG9yaWdpbmFsbHkgcGFzc2VkIHRvIGFwcGx5LlxuICAgICAqXG4gICAgICogQG5hbWUgYXBwbHlcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGZuIC0gVGhlIGZ1bmN0aW9uIHlvdSB3YW50IHRvIGV2ZW50dWFsbHkgYXBwbHkgYWxsXG4gICAgICogYXJndW1lbnRzIHRvLiBJbnZva2VzIHdpdGggKGFyZ3VtZW50cy4uLikuXG4gICAgICogQHBhcmFtIHsuLi4qfSBhcmd1bWVudHMuLi4gLSBBbnkgbnVtYmVyIG9mIGFyZ3VtZW50cyB0byBhdXRvbWF0aWNhbGx5IGFwcGx5XG4gICAgICogd2hlbiB0aGUgY29udGludWF0aW9uIGlzIGNhbGxlZC5cbiAgICAgKiBAcmV0dXJucyB7RnVuY3Rpb259IHRoZSBwYXJ0aWFsbHktYXBwbGllZCBmdW5jdGlvblxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyB1c2luZyBhcHBseVxuICAgICAqIGFzeW5jLnBhcmFsbGVsKFtcbiAgICAgKiAgICAgYXN5bmMuYXBwbHkoZnMud3JpdGVGaWxlLCAndGVzdGZpbGUxJywgJ3Rlc3QxJyksXG4gICAgICogICAgIGFzeW5jLmFwcGx5KGZzLndyaXRlRmlsZSwgJ3Rlc3RmaWxlMicsICd0ZXN0MicpXG4gICAgICogXSk7XG4gICAgICpcbiAgICAgKlxuICAgICAqIC8vIHRoZSBzYW1lIHByb2Nlc3Mgd2l0aG91dCB1c2luZyBhcHBseVxuICAgICAqIGFzeW5jLnBhcmFsbGVsKFtcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIGZzLndyaXRlRmlsZSgndGVzdGZpbGUxJywgJ3Rlc3QxJywgY2FsbGJhY2spO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgZnMud3JpdGVGaWxlKCd0ZXN0ZmlsZTInLCAndGVzdDInLCBjYWxsYmFjayk7XG4gICAgICogICAgIH1cbiAgICAgKiBdKTtcbiAgICAgKlxuICAgICAqIC8vIEl0J3MgcG9zc2libGUgdG8gcGFzcyBhbnkgbnVtYmVyIG9mIGFkZGl0aW9uYWwgYXJndW1lbnRzIHdoZW4gY2FsbGluZyB0aGVcbiAgICAgKiAvLyBjb250aW51YXRpb246XG4gICAgICpcbiAgICAgKiBub2RlPiB2YXIgZm4gPSBhc3luYy5hcHBseShzeXMucHV0cywgJ29uZScpO1xuICAgICAqIG5vZGU+IGZuKCd0d28nLCAndGhyZWUnKTtcbiAgICAgKiBvbmVcbiAgICAgKiB0d29cbiAgICAgKiB0aHJlZVxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGFwcGx5KGZuLCAuLi5hcmdzKSB7XG4gICAgICAgIHJldHVybiAoLi4uY2FsbEFyZ3MpID0+IGZuKC4uLmFyZ3MsLi4uY2FsbEFyZ3MpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGluaXRpYWxQYXJhbXMgKGZuKSB7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJncy8qLCBjYWxsYmFjayovKSB7XG4gICAgICAgICAgICB2YXIgY2FsbGJhY2sgPSBhcmdzLnBvcCgpO1xuICAgICAgICAgICAgcmV0dXJuIGZuLmNhbGwodGhpcywgYXJncywgY2FsbGJhY2spO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG5cbiAgICB2YXIgaGFzUXVldWVNaWNyb3Rhc2sgPSB0eXBlb2YgcXVldWVNaWNyb3Rhc2sgPT09ICdmdW5jdGlvbicgJiYgcXVldWVNaWNyb3Rhc2s7XG4gICAgdmFyIGhhc1NldEltbWVkaWF0ZSA9IHR5cGVvZiBzZXRJbW1lZGlhdGUgPT09ICdmdW5jdGlvbicgJiYgc2V0SW1tZWRpYXRlO1xuICAgIHZhciBoYXNOZXh0VGljayA9IHR5cGVvZiBwcm9jZXNzID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgcHJvY2Vzcy5uZXh0VGljayA9PT0gJ2Z1bmN0aW9uJztcblxuICAgIGZ1bmN0aW9uIGZhbGxiYWNrKGZuKSB7XG4gICAgICAgIHNldFRpbWVvdXQoZm4sIDApO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHdyYXAoZGVmZXIpIHtcbiAgICAgICAgcmV0dXJuIChmbiwgLi4uYXJncykgPT4gZGVmZXIoKCkgPT4gZm4oLi4uYXJncykpO1xuICAgIH1cblxuICAgIHZhciBfZGVmZXI7XG5cbiAgICBpZiAoaGFzUXVldWVNaWNyb3Rhc2spIHtcbiAgICAgICAgX2RlZmVyID0gcXVldWVNaWNyb3Rhc2s7XG4gICAgfSBlbHNlIGlmIChoYXNTZXRJbW1lZGlhdGUpIHtcbiAgICAgICAgX2RlZmVyID0gc2V0SW1tZWRpYXRlO1xuICAgIH0gZWxzZSBpZiAoaGFzTmV4dFRpY2spIHtcbiAgICAgICAgX2RlZmVyID0gcHJvY2Vzcy5uZXh0VGljaztcbiAgICB9IGVsc2Uge1xuICAgICAgICBfZGVmZXIgPSBmYWxsYmFjaztcbiAgICB9XG5cbiAgICB2YXIgc2V0SW1tZWRpYXRlJDEgPSB3cmFwKF9kZWZlcik7XG5cbiAgICAvKipcbiAgICAgKiBUYWtlIGEgc3luYyBmdW5jdGlvbiBhbmQgbWFrZSBpdCBhc3luYywgcGFzc2luZyBpdHMgcmV0dXJuIHZhbHVlIHRvIGFcbiAgICAgKiBjYWxsYmFjay4gVGhpcyBpcyB1c2VmdWwgZm9yIHBsdWdnaW5nIHN5bmMgZnVuY3Rpb25zIGludG8gYSB3YXRlcmZhbGwsXG4gICAgICogc2VyaWVzLCBvciBvdGhlciBhc3luYyBmdW5jdGlvbnMuIEFueSBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBnZW5lcmF0ZWRcbiAgICAgKiBmdW5jdGlvbiB3aWxsIGJlIHBhc3NlZCB0byB0aGUgd3JhcHBlZCBmdW5jdGlvbiAoZXhjZXB0IGZvciB0aGUgZmluYWxcbiAgICAgKiBjYWxsYmFjayBhcmd1bWVudCkuIEVycm9ycyB0aHJvd24gd2lsbCBiZSBwYXNzZWQgdG8gdGhlIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogSWYgdGhlIGZ1bmN0aW9uIHBhc3NlZCB0byBgYXN5bmNpZnlgIHJldHVybnMgYSBQcm9taXNlLCB0aGF0IHByb21pc2VzJ3NcbiAgICAgKiByZXNvbHZlZC9yZWplY3RlZCBzdGF0ZSB3aWxsIGJlIHVzZWQgdG8gY2FsbCB0aGUgY2FsbGJhY2ssIHJhdGhlciB0aGFuIHNpbXBseVxuICAgICAqIHRoZSBzeW5jaHJvbm91cyByZXR1cm4gdmFsdWUuXG4gICAgICpcbiAgICAgKiBUaGlzIGFsc28gbWVhbnMgeW91IGNhbiBhc3luY2lmeSBFUzIwMTcgYGFzeW5jYCBmdW5jdGlvbnMuXG4gICAgICpcbiAgICAgKiBAbmFtZSBhc3luY2lmeVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOlV0aWxzXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBhbGlhcyB3cmFwU3luY1xuICAgICAqIEBjYXRlZ29yeSBVdGlsXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gZnVuYyAtIFRoZSBzeW5jaHJvbm91cyBmdW5jdGlvbiwgb3IgUHJvbWlzZS1yZXR1cm5pbmdcbiAgICAgKiBmdW5jdGlvbiB0byBjb252ZXJ0IHRvIGFuIHtAbGluayBBc3luY0Z1bmN0aW9ufS5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gQW4gYXN5bmNocm9ub3VzIHdyYXBwZXIgb2YgdGhlIGBmdW5jYC4gVG8gYmVcbiAgICAgKiBpbnZva2VkIHdpdGggYChhcmdzLi4uLCBjYWxsYmFjaylgLlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBwYXNzaW5nIGEgcmVndWxhciBzeW5jaHJvbm91cyBmdW5jdGlvblxuICAgICAqIGFzeW5jLndhdGVyZmFsbChbXG4gICAgICogICAgIGFzeW5jLmFwcGx5KGZzLnJlYWRGaWxlLCBmaWxlbmFtZSwgXCJ1dGY4XCIpLFxuICAgICAqICAgICBhc3luYy5hc3luY2lmeShKU09OLnBhcnNlKSxcbiAgICAgKiAgICAgZnVuY3Rpb24gKGRhdGEsIG5leHQpIHtcbiAgICAgKiAgICAgICAgIC8vIGRhdGEgaXMgdGhlIHJlc3VsdCBvZiBwYXJzaW5nIHRoZSB0ZXh0LlxuICAgICAqICAgICAgICAgLy8gSWYgdGhlcmUgd2FzIGEgcGFyc2luZyBlcnJvciwgaXQgd291bGQgaGF2ZSBiZWVuIGNhdWdodC5cbiAgICAgKiAgICAgfVxuICAgICAqIF0sIGNhbGxiYWNrKTtcbiAgICAgKlxuICAgICAqIC8vIHBhc3NpbmcgYSBmdW5jdGlvbiByZXR1cm5pbmcgYSBwcm9taXNlXG4gICAgICogYXN5bmMud2F0ZXJmYWxsKFtcbiAgICAgKiAgICAgYXN5bmMuYXBwbHkoZnMucmVhZEZpbGUsIGZpbGVuYW1lLCBcInV0ZjhcIiksXG4gICAgICogICAgIGFzeW5jLmFzeW5jaWZ5KGZ1bmN0aW9uIChjb250ZW50cykge1xuICAgICAqICAgICAgICAgcmV0dXJuIGRiLm1vZGVsLmNyZWF0ZShjb250ZW50cyk7XG4gICAgICogICAgIH0pLFxuICAgICAqICAgICBmdW5jdGlvbiAobW9kZWwsIG5leHQpIHtcbiAgICAgKiAgICAgICAgIC8vIGBtb2RlbGAgaXMgdGhlIGluc3RhbnRpYXRlZCBtb2RlbCBvYmplY3QuXG4gICAgICogICAgICAgICAvLyBJZiB0aGVyZSB3YXMgYW4gZXJyb3IsIHRoaXMgZnVuY3Rpb24gd291bGQgYmUgc2tpcHBlZC5cbiAgICAgKiAgICAgfVxuICAgICAqIF0sIGNhbGxiYWNrKTtcbiAgICAgKlxuICAgICAqIC8vIGVzMjAxNyBleGFtcGxlLCB0aG91Z2ggYGFzeW5jaWZ5YCBpcyBub3QgbmVlZGVkIGlmIHlvdXIgSlMgZW52aXJvbm1lbnRcbiAgICAgKiAvLyBzdXBwb3J0cyBhc3luYyBmdW5jdGlvbnMgb3V0IG9mIHRoZSBib3hcbiAgICAgKiB2YXIgcSA9IGFzeW5jLnF1ZXVlKGFzeW5jLmFzeW5jaWZ5KGFzeW5jIGZ1bmN0aW9uKGZpbGUpIHtcbiAgICAgKiAgICAgdmFyIGludGVybWVkaWF0ZVN0ZXAgPSBhd2FpdCBwcm9jZXNzRmlsZShmaWxlKTtcbiAgICAgKiAgICAgcmV0dXJuIGF3YWl0IHNvbWVQcm9taXNlKGludGVybWVkaWF0ZVN0ZXApXG4gICAgICogfSkpO1xuICAgICAqXG4gICAgICogcS5wdXNoKGZpbGVzKTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBhc3luY2lmeShmdW5jKSB7XG4gICAgICAgIGlmIChpc0FzeW5jKGZ1bmMpKSB7XG4gICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gKC4uLmFyZ3MvKiwgY2FsbGJhY2sqLykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gYXJncy5wb3AoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwcm9taXNlID0gZnVuYy5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlUHJvbWlzZShwcm9taXNlLCBjYWxsYmFjaylcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpbml0aWFsUGFyYW1zKGZ1bmN0aW9uIChhcmdzLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgdmFyIHJlc3VsdDtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gZnVuYy5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBpZiByZXN1bHQgaXMgUHJvbWlzZSBvYmplY3RcbiAgICAgICAgICAgIGlmIChyZXN1bHQgJiYgdHlwZW9mIHJlc3VsdC50aGVuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZVByb21pc2UocmVzdWx0LCBjYWxsYmFjaylcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgcmVzdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaGFuZGxlUHJvbWlzZShwcm9taXNlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gcHJvbWlzZS50aGVuKHZhbHVlID0+IHtcbiAgICAgICAgICAgIGludm9rZUNhbGxiYWNrKGNhbGxiYWNrLCBudWxsLCB2YWx1ZSk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICBpbnZva2VDYWxsYmFjayhjYWxsYmFjaywgZXJyICYmIGVyci5tZXNzYWdlID8gZXJyIDogbmV3IEVycm9yKGVycikpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpbnZva2VDYWxsYmFjayhjYWxsYmFjaywgZXJyb3IsIHZhbHVlKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjYWxsYmFjayhlcnJvciwgdmFsdWUpO1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKGUgPT4geyB0aHJvdyBlIH0sIGVycik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc0FzeW5jKGZuKSB7XG4gICAgICAgIHJldHVybiBmbltTeW1ib2wudG9TdHJpbmdUYWddID09PSAnQXN5bmNGdW5jdGlvbic7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gaXNBc3luY0dlbmVyYXRvcihmbikge1xuICAgICAgICByZXR1cm4gZm5bU3ltYm9sLnRvU3RyaW5nVGFnXSA9PT0gJ0FzeW5jR2VuZXJhdG9yJztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc0FzeW5jSXRlcmFibGUob2JqKSB7XG4gICAgICAgIHJldHVybiB0eXBlb2Ygb2JqW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9PT0gJ2Z1bmN0aW9uJztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiB3cmFwQXN5bmMoYXN5bmNGbikge1xuICAgICAgICBpZiAodHlwZW9mIGFzeW5jRm4gIT09ICdmdW5jdGlvbicpIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgYSBmdW5jdGlvbicpXG4gICAgICAgIHJldHVybiBpc0FzeW5jKGFzeW5jRm4pID8gYXN5bmNpZnkoYXN5bmNGbikgOiBhc3luY0ZuO1xuICAgIH1cblxuICAgIC8vIGNvbmRpdGlvbmFsbHkgcHJvbWlzaWZ5IGEgZnVuY3Rpb24uXG4gICAgLy8gb25seSByZXR1cm4gYSBwcm9taXNlIGlmIGEgY2FsbGJhY2sgaXMgb21pdHRlZFxuICAgIGZ1bmN0aW9uIGF3YWl0aWZ5IChhc3luY0ZuLCBhcml0eSA9IGFzeW5jRm4ubGVuZ3RoKSB7XG4gICAgICAgIGlmICghYXJpdHkpIHRocm93IG5ldyBFcnJvcignYXJpdHkgaXMgdW5kZWZpbmVkJylcbiAgICAgICAgZnVuY3Rpb24gYXdhaXRhYmxlICguLi5hcmdzKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGFyZ3NbYXJpdHkgLSAxXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBhc3luY0ZuLmFwcGx5KHRoaXMsIGFyZ3MpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgYXJnc1thcml0eSAtIDFdID0gKGVyciwgLi4uY2JBcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiByZWplY3QoZXJyKVxuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGNiQXJncy5sZW5ndGggPiAxID8gY2JBcmdzIDogY2JBcmdzWzBdKTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGFzeW5jRm4uYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgICB9KVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGF3YWl0YWJsZVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGFwcGx5RWFjaCAoZWFjaGZuKSB7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiBhcHBseUVhY2goZm5zLCAuLi5jYWxsQXJncykge1xuICAgICAgICAgICAgY29uc3QgZ28gPSBhd2FpdGlmeShmdW5jdGlvbiAoY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICB2YXIgdGhhdCA9IHRoaXM7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGVhY2hmbihmbnMsIChmbiwgY2IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgd3JhcEFzeW5jKGZuKS5hcHBseSh0aGF0LCBjYWxsQXJncy5jb25jYXQoY2IpKTtcbiAgICAgICAgICAgICAgICB9LCBjYWxsYmFjayk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiBnbztcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfYXN5bmNNYXAoZWFjaGZuLCBhcnIsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICBhcnIgPSBhcnIgfHwgW107XG4gICAgICAgIHZhciByZXN1bHRzID0gW107XG4gICAgICAgIHZhciBjb3VudGVyID0gMDtcbiAgICAgICAgdmFyIF9pdGVyYXRlZSA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG5cbiAgICAgICAgcmV0dXJuIGVhY2hmbihhcnIsICh2YWx1ZSwgXywgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICB2YXIgaW5kZXggPSBjb3VudGVyKys7XG4gICAgICAgICAgICBfaXRlcmF0ZWUodmFsdWUsIChlcnIsIHYpID0+IHtcbiAgICAgICAgICAgICAgICByZXN1bHRzW2luZGV4XSA9IHY7XG4gICAgICAgICAgICAgICAgaXRlckNiKGVycik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICAgIGNhbGxiYWNrKGVyciwgcmVzdWx0cyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGlzQXJyYXlMaWtlKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZSAmJlxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlLmxlbmd0aCA9PT0gJ251bWJlcicgJiZcbiAgICAgICAgICAgIHZhbHVlLmxlbmd0aCA+PSAwICYmXG4gICAgICAgICAgICB2YWx1ZS5sZW5ndGggJSAxID09PSAwO1xuICAgIH1cblxuICAgIC8vIEEgdGVtcG9yYXJ5IHZhbHVlIHVzZWQgdG8gaWRlbnRpZnkgaWYgdGhlIGxvb3Agc2hvdWxkIGJlIGJyb2tlbi5cbiAgICAvLyBTZWUgIzEwNjQsICMxMjkzXG4gICAgY29uc3QgYnJlYWtMb29wID0ge307XG5cbiAgICBmdW5jdGlvbiBvbmNlKGZuKSB7XG4gICAgICAgIGZ1bmN0aW9uIHdyYXBwZXIgKC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChmbiA9PT0gbnVsbCkgcmV0dXJuO1xuICAgICAgICAgICAgdmFyIGNhbGxGbiA9IGZuO1xuICAgICAgICAgICAgZm4gPSBudWxsO1xuICAgICAgICAgICAgY2FsbEZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24od3JhcHBlciwgZm4pO1xuICAgICAgICByZXR1cm4gd3JhcHBlclxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldEl0ZXJhdG9yIChjb2xsKSB7XG4gICAgICAgIHJldHVybiBjb2xsW1N5bWJvbC5pdGVyYXRvcl0gJiYgY29sbFtTeW1ib2wuaXRlcmF0b3JdKCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY3JlYXRlQXJyYXlJdGVyYXRvcihjb2xsKSB7XG4gICAgICAgIHZhciBpID0gLTE7XG4gICAgICAgIHZhciBsZW4gPSBjb2xsLmxlbmd0aDtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIG5leHQoKSB7XG4gICAgICAgICAgICByZXR1cm4gKytpIDwgbGVuID8ge3ZhbHVlOiBjb2xsW2ldLCBrZXk6IGl9IDogbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNyZWF0ZUVTMjAxNUl0ZXJhdG9yKGl0ZXJhdG9yKSB7XG4gICAgICAgIHZhciBpID0gLTE7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgICAgICAgdmFyIGl0ZW0gPSBpdGVyYXRvci5uZXh0KCk7XG4gICAgICAgICAgICBpZiAoaXRlbS5kb25lKVxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgaSsrO1xuICAgICAgICAgICAgcmV0dXJuIHt2YWx1ZTogaXRlbS52YWx1ZSwga2V5OiBpfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNyZWF0ZU9iamVjdEl0ZXJhdG9yKG9iaikge1xuICAgICAgICB2YXIgb2tleXMgPSBvYmogPyBPYmplY3Qua2V5cyhvYmopIDogW107XG4gICAgICAgIHZhciBpID0gLTE7XG4gICAgICAgIHZhciBsZW4gPSBva2V5cy5sZW5ndGg7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgICAgICAgdmFyIGtleSA9IG9rZXlzWysraV07XG4gICAgICAgICAgICBpZiAoa2V5ID09PSAnX19wcm90b19fJykge1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gaSA8IGxlbiA/IHt2YWx1ZTogb2JqW2tleV0sIGtleX0gOiBudWxsO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNyZWF0ZUl0ZXJhdG9yKGNvbGwpIHtcbiAgICAgICAgaWYgKGlzQXJyYXlMaWtlKGNvbGwpKSB7XG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlQXJyYXlJdGVyYXRvcihjb2xsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciBpdGVyYXRvciA9IGdldEl0ZXJhdG9yKGNvbGwpO1xuICAgICAgICByZXR1cm4gaXRlcmF0b3IgPyBjcmVhdGVFUzIwMTVJdGVyYXRvcihpdGVyYXRvcikgOiBjcmVhdGVPYmplY3RJdGVyYXRvcihjb2xsKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBvbmx5T25jZShmbikge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChmbiA9PT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKFwiQ2FsbGJhY2sgd2FzIGFscmVhZHkgY2FsbGVkLlwiKTtcbiAgICAgICAgICAgIHZhciBjYWxsRm4gPSBmbjtcbiAgICAgICAgICAgIGZuID0gbnVsbDtcbiAgICAgICAgICAgIGNhbGxGbi5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvLyBmb3IgYXN5bmMgZ2VuZXJhdG9yc1xuICAgIGZ1bmN0aW9uIGFzeW5jRWFjaE9mTGltaXQoZ2VuZXJhdG9yLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGxldCBkb25lID0gZmFsc2U7XG4gICAgICAgIGxldCBjYW5jZWxlZCA9IGZhbHNlO1xuICAgICAgICBsZXQgYXdhaXRpbmcgPSBmYWxzZTtcbiAgICAgICAgbGV0IHJ1bm5pbmcgPSAwO1xuICAgICAgICBsZXQgaWR4ID0gMDtcblxuICAgICAgICBmdW5jdGlvbiByZXBsZW5pc2goKSB7XG4gICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdyZXBsZW5pc2gnKVxuICAgICAgICAgICAgaWYgKHJ1bm5pbmcgPj0gbGltaXQgfHwgYXdhaXRpbmcgfHwgZG9uZSkgcmV0dXJuXG4gICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdyZXBsZW5pc2ggYXdhaXRpbmcnKVxuICAgICAgICAgICAgYXdhaXRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgZ2VuZXJhdG9yLm5leHQoKS50aGVuKCh7dmFsdWUsIGRvbmU6IGl0ZXJEb25lfSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vY29uc29sZS5sb2coJ2dvdCB2YWx1ZScsIHZhbHVlKVxuICAgICAgICAgICAgICAgIGlmIChjYW5jZWxlZCB8fCBkb25lKSByZXR1cm5cbiAgICAgICAgICAgICAgICBhd2FpdGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGlmIChpdGVyRG9uZSkge1xuICAgICAgICAgICAgICAgICAgICBkb25lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJ1bm5pbmcgPD0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9jb25zb2xlLmxvZygnZG9uZSBuZXh0Q2InKVxuICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBydW5uaW5nKys7XG4gICAgICAgICAgICAgICAgaXRlcmF0ZWUodmFsdWUsIGlkeCwgaXRlcmF0ZWVDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgaWR4Kys7XG4gICAgICAgICAgICAgICAgcmVwbGVuaXNoKCk7XG4gICAgICAgICAgICB9KS5jYXRjaChoYW5kbGVFcnJvcik7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBpdGVyYXRlZUNhbGxiYWNrKGVyciwgcmVzdWx0KSB7XG4gICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdpdGVyYXRlZUNhbGxiYWNrJylcbiAgICAgICAgICAgIHJ1bm5pbmcgLT0gMTtcbiAgICAgICAgICAgIGlmIChjYW5jZWxlZCkgcmV0dXJuXG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gaGFuZGxlRXJyb3IoZXJyKVxuXG4gICAgICAgICAgICBpZiAoZXJyID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGNhbmNlbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHJlc3VsdCA9PT0gYnJlYWtMb29wIHx8IChkb25lICYmIHJ1bm5pbmcgPD0gMCkpIHtcbiAgICAgICAgICAgICAgICBkb25lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAvL2NvbnNvbGUubG9nKCdkb25lIGl0ZXJDYicpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG51bGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVwbGVuaXNoKCk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBoYW5kbGVFcnJvcihlcnIpIHtcbiAgICAgICAgICAgIGlmIChjYW5jZWxlZCkgcmV0dXJuXG4gICAgICAgICAgICBhd2FpdGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICBjYWxsYmFjayhlcnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVwbGVuaXNoKCk7XG4gICAgfVxuXG4gICAgdmFyIGVhY2hPZkxpbWl0ID0gKGxpbWl0KSA9PiB7XG4gICAgICAgIHJldHVybiAob2JqLCBpdGVyYXRlZSwgY2FsbGJhY2spID0+IHtcbiAgICAgICAgICAgIGNhbGxiYWNrID0gb25jZShjYWxsYmFjayk7XG4gICAgICAgICAgICBpZiAobGltaXQgPD0gMCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdjb25jdXJyZW5jeSBsaW1pdCBjYW5ub3QgYmUgbGVzcyB0aGFuIDEnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFvYmopIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXNBc3luY0dlbmVyYXRvcihvYmopKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFzeW5jRWFjaE9mTGltaXQob2JqLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzQXN5bmNJdGVyYWJsZShvYmopKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFzeW5jRWFjaE9mTGltaXQob2JqW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFyIG5leHRFbGVtID0gY3JlYXRlSXRlcmF0b3Iob2JqKTtcbiAgICAgICAgICAgIHZhciBkb25lID0gZmFsc2U7XG4gICAgICAgICAgICB2YXIgY2FuY2VsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHZhciBydW5uaW5nID0gMDtcbiAgICAgICAgICAgIHZhciBsb29waW5nID0gZmFsc2U7XG5cbiAgICAgICAgICAgIGZ1bmN0aW9uIGl0ZXJhdGVlQ2FsbGJhY2soZXJyLCB2YWx1ZSkge1xuICAgICAgICAgICAgICAgIGlmIChjYW5jZWxlZCkgcmV0dXJuXG4gICAgICAgICAgICAgICAgcnVubmluZyAtPSAxO1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGVyciA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodmFsdWUgPT09IGJyZWFrTG9vcCB8fCAoZG9uZSAmJiBydW5uaW5nIDw9IDApKSB7XG4gICAgICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKCFsb29waW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlcGxlbmlzaCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZnVuY3Rpb24gcmVwbGVuaXNoICgpIHtcbiAgICAgICAgICAgICAgICBsb29waW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB3aGlsZSAocnVubmluZyA8IGxpbWl0ICYmICFkb25lKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhciBlbGVtID0gbmV4dEVsZW0oKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVsZW0gPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJ1bm5pbmcgPD0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJ1bm5pbmcgKz0gMTtcbiAgICAgICAgICAgICAgICAgICAgaXRlcmF0ZWUoZWxlbS52YWx1ZSwgZWxlbS5rZXksIG9ubHlPbmNlKGl0ZXJhdGVlQ2FsbGJhY2spKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbG9vcGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXBsZW5pc2goKTtcbiAgICAgICAgfTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2BlYWNoT2ZgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaE9mfSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGFcbiAgICAgKiB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZWFjaE9mTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5lYWNoT2Zde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5lYWNoT2Z9XG4gICAgICogQGFsaWFzIGZvckVhY2hPZkxpbWl0XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2hcbiAgICAgKiBpdGVtIGluIGBjb2xsYC4gVGhlIGBrZXlgIGlzIHRoZSBpdGVtJ3Mga2V5LCBvciBpbmRleCBpbiB0aGUgY2FzZSBvZiBhblxuICAgICAqIGFycmF5LlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBJbnZva2VkIHdpdGggKGVycikuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZWFjaE9mTGltaXQkMShjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBlYWNoT2ZMaW1pdChsaW1pdCkoY29sbCwgd3JhcEFzeW5jKGl0ZXJhdGVlKSwgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIHZhciBlYWNoT2ZMaW1pdCQyID0gYXdhaXRpZnkoZWFjaE9mTGltaXQkMSwgNCk7XG5cbiAgICAvLyBlYWNoT2YgaW1wbGVtZW50YXRpb24gb3B0aW1pemVkIGZvciBhcnJheS1saWtlc1xuICAgIGZ1bmN0aW9uIGVhY2hPZkFycmF5TGlrZShjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIGluZGV4ID0gMCxcbiAgICAgICAgICAgIGNvbXBsZXRlZCA9IDAsXG4gICAgICAgICAgICB7bGVuZ3RofSA9IGNvbGwsXG4gICAgICAgICAgICBjYW5jZWxlZCA9IGZhbHNlO1xuICAgICAgICBpZiAobGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBjYWxsYmFjayhudWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGl0ZXJhdG9yQ2FsbGJhY2soZXJyLCB2YWx1ZSkge1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICBjYW5jZWxlZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2FuY2VsZWQgPT09IHRydWUpIHJldHVyblxuICAgICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgICAgIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCgrK2NvbXBsZXRlZCA9PT0gbGVuZ3RoKSB8fCB2YWx1ZSA9PT0gYnJlYWtMb29wKSB7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgIGl0ZXJhdGVlKGNvbGxbaW5kZXhdLCBpbmRleCwgb25seU9uY2UoaXRlcmF0b3JDYWxsYmFjaykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gYSBnZW5lcmljIHZlcnNpb24gb2YgZWFjaE9mIHdoaWNoIGNhbiBoYW5kbGUgYXJyYXksIG9iamVjdCwgYW5kIGl0ZXJhdG9yIGNhc2VzLlxuICAgIGZ1bmN0aW9uIGVhY2hPZkdlbmVyaWMgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gZWFjaE9mTGltaXQkMihjb2xsLCBJbmZpbml0eSwgaXRlcmF0ZWUsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMaWtlIFtgZWFjaGBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5lYWNofSwgZXhjZXB0IHRoYXQgaXQgcGFzc2VzIHRoZSBrZXkgKG9yIGluZGV4KSBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50XG4gICAgICogdG8gdGhlIGl0ZXJhdGVlLlxuICAgICAqXG4gICAgICogQG5hbWUgZWFjaE9mXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGFsaWFzIGZvckVhY2hPZlxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHNlZSBbYXN5bmMuZWFjaF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmVhY2h9XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaFxuICAgICAqIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBga2V5YCBpcyB0aGUgaXRlbSdzIGtleSwgb3IgaW5kZXggaW4gdGhlIGNhc2Ugb2YgYW4gYXJyYXkuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBrZXksIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZGV2Lmpzb24gaXMgYSBmaWxlIGNvbnRhaW5pbmcgYSB2YWxpZCBqc29uIG9iamVjdCBjb25maWcgZm9yIGRldiBlbnZpcm9ubWVudFxuICAgICAqIC8vIGRldi5qc29uIGlzIGEgZmlsZSBjb250YWluaW5nIGEgdmFsaWQganNvbiBvYmplY3QgY29uZmlnIGZvciB0ZXN0IGVudmlyb25tZW50XG4gICAgICogLy8gcHJvZC5qc29uIGlzIGEgZmlsZSBjb250YWluaW5nIGEgdmFsaWQganNvbiBvYmplY3QgY29uZmlnIGZvciBwcm9kIGVudmlyb25tZW50XG4gICAgICogLy8gaW52YWxpZC5qc29uIGlzIGEgZmlsZSB3aXRoIGEgbWFsZm9ybWVkIGpzb24gb2JqZWN0XG4gICAgICpcbiAgICAgKiBsZXQgY29uZmlncyA9IHt9OyAvL2dsb2JhbCB2YXJpYWJsZVxuICAgICAqIGxldCB2YWxpZENvbmZpZ0ZpbGVNYXAgPSB7ZGV2OiAnZGV2Lmpzb24nLCB0ZXN0OiAndGVzdC5qc29uJywgcHJvZDogJ3Byb2QuanNvbid9O1xuICAgICAqIGxldCBpbnZhbGlkQ29uZmlnRmlsZU1hcCA9IHtkZXY6ICdkZXYuanNvbicsIHRlc3Q6ICd0ZXN0Lmpzb24nLCBpbnZhbGlkOiAnaW52YWxpZC5qc29uJ307XG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCByZWFkcyBhIGpzb24gZmlsZSBhbmQgcGFyc2VzIHRoZSBjb250ZW50cyBhcyBqc29uIG9iamVjdFxuICAgICAqIGZ1bmN0aW9uIHBhcnNlRmlsZShmaWxlLCBrZXksIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZzLnJlYWRGaWxlKGZpbGUsIFwidXRmOFwiLCBmdW5jdGlvbihlcnIsIGRhdGEpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxiYWNrKGVycik7XG4gICAgICogICAgICAgICB0cnkge1xuICAgICAqICAgICAgICAgICAgIGNvbmZpZ3Nba2V5XSA9IEpTT04ucGFyc2UoZGF0YSk7XG4gICAgICogICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICogICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGUpO1xuICAgICAqICAgICAgICAgfVxuICAgICAqICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMuZm9yRWFjaE9mKHZhbGlkQ29uZmlnRmlsZU1hcCwgcGFyc2VGaWxlLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICogICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgKiAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGNvbmZpZ3MpO1xuICAgICAqICAgICAgICAgLy8gY29uZmlncyBpcyBub3cgYSBtYXAgb2YgSlNPTiBkYXRhLCBlLmcuXG4gICAgICogICAgICAgICAvLyB7IGRldjogLy9wYXJzZWQgZGV2Lmpzb24sIHRlc3Q6IC8vcGFyc2VkIHRlc3QuanNvbiwgcHJvZDogLy9wYXJzZWQgcHJvZC5qc29ufVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL0Vycm9yIGhhbmRpbmdcbiAgICAgKiBhc3luYy5mb3JFYWNoT2YoaW52YWxpZENvbmZpZ0ZpbGVNYXAsIHBhcnNlRmlsZSwgZnVuY3Rpb24gKGVycikge1xuICAgICAqICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICogICAgICAgICAvLyBKU09OIHBhcnNlIGVycm9yIGV4Y2VwdGlvblxuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coY29uZmlncyk7XG4gICAgICogICAgIH1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZm9yRWFjaE9mKHZhbGlkQ29uZmlnRmlsZU1hcCwgcGFyc2VGaWxlKVxuICAgICAqIC50aGVuKCAoKSA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGNvbmZpZ3MpO1xuICAgICAqICAgICAvLyBjb25maWdzIGlzIG5vdyBhIG1hcCBvZiBKU09OIGRhdGEsIGUuZy5cbiAgICAgKiAgICAgLy8geyBkZXY6IC8vcGFyc2VkIGRldi5qc29uLCB0ZXN0OiAvL3BhcnNlZCB0ZXN0Lmpzb24sIHByb2Q6IC8vcGFyc2VkIHByb2QuanNvbn1cbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy9FcnJvciBoYW5kaW5nXG4gICAgICogYXN5bmMuZm9yRWFjaE9mKGludmFsaWRDb25maWdGaWxlTWFwLCBwYXJzZUZpbGUpXG4gICAgICogLnRoZW4oICgpID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coY29uZmlncyk7XG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgKiAgICAgLy8gSlNPTiBwYXJzZSBlcnJvciBleGNlcHRpb25cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmZvckVhY2hPZih2YWxpZENvbmZpZ0ZpbGVNYXAsIHBhcnNlRmlsZSk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhjb25maWdzKTtcbiAgICAgKiAgICAgICAgIC8vIGNvbmZpZ3MgaXMgbm93IGEgbWFwIG9mIEpTT04gZGF0YSwgZS5nLlxuICAgICAqICAgICAgICAgLy8geyBkZXY6IC8vcGFyc2VkIGRldi5qc29uLCB0ZXN0OiAvL3BhcnNlZCB0ZXN0Lmpzb24sIHByb2Q6IC8vcGFyc2VkIHByb2QuanNvbn1cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy9FcnJvciBoYW5kaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmZvckVhY2hPZihpbnZhbGlkQ29uZmlnRmlsZU1hcCwgcGFyc2VGaWxlKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGNvbmZpZ3MpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBKU09OIHBhcnNlIGVycm9yIGV4Y2VwdGlvblxuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gZWFjaE9mKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgZWFjaE9mSW1wbGVtZW50YXRpb24gPSBpc0FycmF5TGlrZShjb2xsKSA/IGVhY2hPZkFycmF5TGlrZSA6IGVhY2hPZkdlbmVyaWM7XG4gICAgICAgIHJldHVybiBlYWNoT2ZJbXBsZW1lbnRhdGlvbihjb2xsLCB3cmFwQXN5bmMoaXRlcmF0ZWUpLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgdmFyIGVhY2hPZiQxID0gYXdhaXRpZnkoZWFjaE9mLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFByb2R1Y2VzIGEgbmV3IGNvbGxlY3Rpb24gb2YgdmFsdWVzIGJ5IG1hcHBpbmcgZWFjaCB2YWx1ZSBpbiBgY29sbGAgdGhyb3VnaFxuICAgICAqIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uLiBUaGUgYGl0ZXJhdGVlYCBpcyBjYWxsZWQgd2l0aCBhbiBpdGVtIGZyb20gYGNvbGxgXG4gICAgICogYW5kIGEgY2FsbGJhY2sgZm9yIHdoZW4gaXQgaGFzIGZpbmlzaGVkIHByb2Nlc3NpbmcuIEVhY2ggb2YgdGhlc2UgY2FsbGJhY2tzXG4gICAgICogdGFrZXMgMiBhcmd1bWVudHM6IGFuIGBlcnJvcmAsIGFuZCB0aGUgdHJhbnNmb3JtZWQgaXRlbSBmcm9tIGBjb2xsYC4gSWZcbiAgICAgKiBgaXRlcmF0ZWVgIHBhc3NlcyBhbiBlcnJvciB0byBpdHMgY2FsbGJhY2ssIHRoZSBtYWluIGBjYWxsYmFja2AgKGZvciB0aGVcbiAgICAgKiBgbWFwYCBmdW5jdGlvbikgaXMgaW1tZWRpYXRlbHkgY2FsbGVkIHdpdGggdGhlIGVycm9yLlxuICAgICAqXG4gICAgICogTm90ZSwgdGhhdCBzaW5jZSB0aGlzIGZ1bmN0aW9uIGFwcGxpZXMgdGhlIGBpdGVyYXRlZWAgdG8gZWFjaCBpdGVtIGluXG4gICAgICogcGFyYWxsZWwsIHRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyB3aWxsIGNvbXBsZXRlXG4gICAgICogaW4gb3JkZXIuIEhvd2V2ZXIsIHRoZSByZXN1bHRzIGFycmF5IHdpbGwgYmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlXG4gICAgICogb3JpZ2luYWwgYGNvbGxgLlxuICAgICAqXG4gICAgICogSWYgYG1hcGAgaXMgcGFzc2VkIGFuIE9iamVjdCwgdGhlIHJlc3VsdHMgd2lsbCBiZSBhbiBBcnJheS4gIFRoZSByZXN1bHRzXG4gICAgICogd2lsbCByb3VnaGx5IGJlIGluIHRoZSBvcmRlciBvZiB0aGUgb3JpZ2luYWwgT2JqZWN0cycga2V5cyAoYnV0IHRoaXMgY2FuXG4gICAgICogdmFyeSBhY3Jvc3MgSmF2YVNjcmlwdCBlbmdpbmVzKS5cbiAgICAgKlxuICAgICAqIEBuYW1lIG1hcFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIGl0ZW0uXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHRzIGlzIGFuIEFycmF5IG9mIHRoZVxuICAgICAqIHRyYW5zZm9ybWVkIGl0ZW1zIGZyb20gdGhlIGBjb2xsYC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBmaWxlMS50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMTAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTIudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDIwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIGZpbGUzLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAzMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlNC50eHQgZG9lcyBub3QgZXhpc3RcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVMaXN0ID0gWydmaWxlMS50eHQnLCdmaWxlMi50eHQnLCdmaWxlMy50eHQnXTtcbiAgICAgKiBjb25zdCB3aXRoTWlzc2luZ0ZpbGVMaXN0ID0gWydmaWxlMS50eHQnLCdmaWxlMi50eHQnLCdmaWxlNC50eHQnXTtcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IHJldHVybnMgdGhlIGZpbGUgc2l6ZSBpbiBieXRlc1xuICAgICAqIGZ1bmN0aW9uIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy5zdGF0KGZpbGUsIGZ1bmN0aW9uKGVyciwgc3RhdCkge1xuICAgICAqICAgICAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAqICAgICAgICAgfVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgc3RhdC5zaXplKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMubWFwKGZpbGVMaXN0LCBnZXRGaWxlU2l6ZUluQnl0ZXMsIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIG5vdyBhbiBhcnJheSBvZiB0aGUgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIFsgMTAwMCwgMjAwMCwgMzAwMF1cbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5tYXAod2l0aE1pc3NpbmdGaWxlTGlzdCwgZ2V0RmlsZVNpemVJbkJ5dGVzLCBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5tYXAoZmlsZUxpc3QsIGdldEZpbGVTaXplSW5CeXRlcylcbiAgICAgKiAudGhlbiggcmVzdWx0cyA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAvLyByZXN1bHRzIGlzIG5vdyBhbiBhcnJheSBvZiB0aGUgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgLy8gWyAxMDAwLCAyMDAwLCAzMDAwXVxuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5tYXAod2l0aE1pc3NpbmdGaWxlTGlzdCwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMubWFwKGZpbGVMaXN0LCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIG5vdyBhbiBhcnJheSBvZiB0aGUgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIFsgMTAwMCwgMjAwMCwgMzAwMF1cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLm1hcCh3aXRoTWlzc2luZ0ZpbGVMaXN0LCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBtYXAgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2FzeW5jTWFwKGVhY2hPZiQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBtYXAkMSA9IGF3YWl0aWZ5KG1hcCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBBcHBsaWVzIHRoZSBwcm92aWRlZCBhcmd1bWVudHMgdG8gZWFjaCBmdW5jdGlvbiBpbiB0aGUgYXJyYXksIGNhbGxpbmdcbiAgICAgKiBgY2FsbGJhY2tgIGFmdGVyIGFsbCBmdW5jdGlvbnMgaGF2ZSBjb21wbGV0ZWQuIElmIHlvdSBvbmx5IHByb3ZpZGUgdGhlIGZpcnN0XG4gICAgICogYXJndW1lbnQsIGBmbnNgLCB0aGVuIGl0IHdpbGwgcmV0dXJuIGEgZnVuY3Rpb24gd2hpY2ggbGV0cyB5b3UgcGFzcyBpbiB0aGVcbiAgICAgKiBhcmd1bWVudHMgYXMgaWYgaXQgd2VyZSBhIHNpbmdsZSBmdW5jdGlvbiBjYWxsLiBJZiBtb3JlIGFyZ3VtZW50cyBhcmVcbiAgICAgKiBwcm92aWRlZCwgYGNhbGxiYWNrYCBpcyByZXF1aXJlZCB3aGlsZSBgYXJnc2AgaXMgc3RpbGwgb3B0aW9uYWwuIFRoZSByZXN1bHRzXG4gICAgICogZm9yIGVhY2ggb2YgdGhlIGFwcGxpZWQgYXN5bmMgZnVuY3Rpb25zIGFyZSBwYXNzZWQgdG8gdGhlIGZpbmFsIGNhbGxiYWNrXG4gICAgICogYXMgYW4gYXJyYXkuXG4gICAgICpcbiAgICAgKiBAbmFtZSBhcHBseUVhY2hcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gZm5zIC0gQSBjb2xsZWN0aW9uIG9mIHtAbGluayBBc3luY0Z1bmN0aW9ufXNcbiAgICAgKiB0byBhbGwgY2FsbCB3aXRoIHRoZSBzYW1lIGFyZ3VtZW50c1xuICAgICAqIEBwYXJhbSB7Li4uKn0gW2FyZ3NdIC0gYW55IG51bWJlciBvZiBzZXBhcmF0ZSBhcmd1bWVudHMgdG8gcGFzcyB0byB0aGVcbiAgICAgKiBmdW5jdGlvbi5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gdGhlIGZpbmFsIGFyZ3VtZW50IHNob3VsZCBiZSB0aGUgY2FsbGJhY2ssXG4gICAgICogY2FsbGVkIHdoZW4gYWxsIGZ1bmN0aW9ucyBoYXZlIGNvbXBsZXRlZCBwcm9jZXNzaW5nLlxuICAgICAqIEByZXR1cm5zIHtBc3luY0Z1bmN0aW9ufSAtIFJldHVybnMgYSBmdW5jdGlvbiB0aGF0IHRha2VzIG5vIGFyZ3Mgb3RoZXIgdGhhblxuICAgICAqIGFuIG9wdGlvbmFsIGNhbGxiYWNrLCB0aGF0IGlzIHRoZSByZXN1bHQgb2YgYXBwbHlpbmcgdGhlIGBhcmdzYCB0byBlYWNoXG4gICAgICogb2YgdGhlIGZ1bmN0aW9ucy5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogY29uc3QgYXBwbGllZEZuID0gYXN5bmMuYXBwbHlFYWNoKFtlbmFibGVTZWFyY2gsIHVwZGF0ZVNjaGVtYV0sICdidWNrZXQnKVxuICAgICAqXG4gICAgICogYXBwbGllZEZuKChlcnIsIHJlc3VsdHMpID0+IHtcbiAgICAgKiAgICAgLy8gcmVzdWx0c1swXSBpcyB0aGUgcmVzdWx0cyBmb3IgYGVuYWJsZVNlYXJjaGBcbiAgICAgKiAgICAgLy8gcmVzdWx0c1sxXSBpcyB0aGUgcmVzdWx0cyBmb3IgYHVwZGF0ZVNjaGVtYWBcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIHBhcnRpYWwgYXBwbGljYXRpb24gZXhhbXBsZTpcbiAgICAgKiBhc3luYy5lYWNoKFxuICAgICAqICAgICBidWNrZXRzLFxuICAgICAqICAgICBhc3luYyAoYnVja2V0KSA9PiBhc3luYy5hcHBseUVhY2goW2VuYWJsZVNlYXJjaCwgdXBkYXRlU2NoZW1hXSwgYnVja2V0KSgpLFxuICAgICAqICAgICBjYWxsYmFja1xuICAgICAqICk7XG4gICAgICovXG4gICAgdmFyIGFwcGx5RWFjaCQxID0gYXBwbHlFYWNoKG1hcCQxKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgZWFjaE9mYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmVhY2hPZn0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZWFjaE9mU2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZWFjaE9mXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaE9mfVxuICAgICAqIEBhbGlhcyBmb3JFYWNoT2ZTZXJpZXNcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBrZXksIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGwgYGl0ZXJhdGVlYFxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBlYWNoT2ZTZXJpZXMoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBlYWNoT2ZMaW1pdCQyKGNvbGwsIDEsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGVhY2hPZlNlcmllcyQxID0gYXdhaXRpZnkoZWFjaE9mU2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgbWFwYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgbWFwU2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMubWFwXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfVxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIGl0ZW0uXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHRzIGlzIGFuIGFycmF5IG9mIHRoZVxuICAgICAqIHRyYW5zZm9ybWVkIGl0ZW1zIGZyb20gdGhlIGBjb2xsYC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIG1hcFNlcmllcyAoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBfYXN5bmNNYXAoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIG1hcFNlcmllcyQxID0gYXdhaXRpZnkobWFwU2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgYXBwbHlFYWNoYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LmFwcGx5RWFjaH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgYXBwbHlFYWNoU2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuYXBwbHlFYWNoXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuYXBwbHlFYWNofVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBmbnMgLSBBIGNvbGxlY3Rpb24gb2Yge0BsaW5rIEFzeW5jRnVuY3Rpb259cyB0byBhbGxcbiAgICAgKiBjYWxsIHdpdGggdGhlIHNhbWUgYXJndW1lbnRzXG4gICAgICogQHBhcmFtIHsuLi4qfSBbYXJnc10gLSBhbnkgbnVtYmVyIG9mIHNlcGFyYXRlIGFyZ3VtZW50cyB0byBwYXNzIHRvIHRoZVxuICAgICAqIGZ1bmN0aW9uLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSB0aGUgZmluYWwgYXJndW1lbnQgc2hvdWxkIGJlIHRoZSBjYWxsYmFjayxcbiAgICAgKiBjYWxsZWQgd2hlbiBhbGwgZnVuY3Rpb25zIGhhdmUgY29tcGxldGVkIHByb2Nlc3NpbmcuXG4gICAgICogQHJldHVybnMge0FzeW5jRnVuY3Rpb259IC0gQSBmdW5jdGlvbiwgdGhhdCB3aGVuIGNhbGxlZCwgaXMgdGhlIHJlc3VsdCBvZlxuICAgICAqIGFwcGxpbmcgdGhlIGBhcmdzYCB0byB0aGUgbGlzdCBvZiBmdW5jdGlvbnMuICBJdCB0YWtlcyBubyBhcmdzLCBvdGhlciB0aGFuXG4gICAgICogYSBjYWxsYmFjay5cbiAgICAgKi9cbiAgICB2YXIgYXBwbHlFYWNoU2VyaWVzID0gYXBwbHlFYWNoKG1hcFNlcmllcyQxKTtcblxuICAgIGNvbnN0IFBST01JU0VfU1lNQk9MID0gU3ltYm9sKCdwcm9taXNlQ2FsbGJhY2snKTtcblxuICAgIGZ1bmN0aW9uIHByb21pc2VDYWxsYmFjayAoKSB7XG4gICAgICAgIGxldCByZXNvbHZlLCByZWplY3Q7XG4gICAgICAgIGZ1bmN0aW9uIGNhbGxiYWNrIChlcnIsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiByZWplY3QoZXJyKVxuICAgICAgICAgICAgcmVzb2x2ZShhcmdzLmxlbmd0aCA+IDEgPyBhcmdzIDogYXJnc1swXSk7XG4gICAgICAgIH1cblxuICAgICAgICBjYWxsYmFja1tQUk9NSVNFX1NZTUJPTF0gPSBuZXcgUHJvbWlzZSgocmVzLCByZWopID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUgPSByZXMsXG4gICAgICAgICAgICByZWplY3QgPSByZWo7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBjYWxsYmFja1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERldGVybWluZXMgdGhlIGJlc3Qgb3JkZXIgZm9yIHJ1bm5pbmcgdGhlIHtAbGluayBBc3luY0Z1bmN0aW9ufXMgaW4gYHRhc2tzYCwgYmFzZWQgb25cbiAgICAgKiB0aGVpciByZXF1aXJlbWVudHMuIEVhY2ggZnVuY3Rpb24gY2FuIG9wdGlvbmFsbHkgZGVwZW5kIG9uIG90aGVyIGZ1bmN0aW9uc1xuICAgICAqIGJlaW5nIGNvbXBsZXRlZCBmaXJzdCwgYW5kIGVhY2ggZnVuY3Rpb24gaXMgcnVuIGFzIHNvb24gYXMgaXRzIHJlcXVpcmVtZW50c1xuICAgICAqIGFyZSBzYXRpc2ZpZWQuXG4gICAgICpcbiAgICAgKiBJZiBhbnkgb2YgdGhlIHtAbGluayBBc3luY0Z1bmN0aW9ufXMgcGFzcyBhbiBlcnJvciB0byB0aGVpciBjYWxsYmFjaywgdGhlIGBhdXRvYCBzZXF1ZW5jZVxuICAgICAqIHdpbGwgc3RvcC4gRnVydGhlciB0YXNrcyB3aWxsIG5vdCBleGVjdXRlIChzbyBhbnkgb3RoZXIgZnVuY3Rpb25zIGRlcGVuZGluZ1xuICAgICAqIG9uIGl0IHdpbGwgbm90IHJ1biksIGFuZCB0aGUgbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZVxuICAgICAqIGVycm9yLlxuICAgICAqXG4gICAgICoge0BsaW5rIEFzeW5jRnVuY3Rpb259cyBhbHNvIHJlY2VpdmUgYW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHJlc3VsdHMgb2YgZnVuY3Rpb25zIHdoaWNoXG4gICAgICogaGF2ZSBjb21wbGV0ZWQgc28gZmFyIGFzIHRoZSBmaXJzdCBhcmd1bWVudCwgaWYgdGhleSBoYXZlIGRlcGVuZGVuY2llcy4gSWYgYVxuICAgICAqIHRhc2sgZnVuY3Rpb24gaGFzIG5vIGRlcGVuZGVuY2llcywgaXQgd2lsbCBvbmx5IGJlIHBhc3NlZCBhIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogQG5hbWUgYXV0b1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gdGFza3MgLSBBbiBvYmplY3QuIEVhY2ggb2YgaXRzIHByb3BlcnRpZXMgaXMgZWl0aGVyIGFcbiAgICAgKiBmdW5jdGlvbiBvciBhbiBhcnJheSBvZiByZXF1aXJlbWVudHMsIHdpdGggdGhlIHtAbGluayBBc3luY0Z1bmN0aW9ufSBpdHNlbGYgdGhlIGxhc3QgaXRlbVxuICAgICAqIGluIHRoZSBhcnJheS4gVGhlIG9iamVjdCdzIGtleSBvZiBhIHByb3BlcnR5IHNlcnZlcyBhcyB0aGUgbmFtZSBvZiB0aGUgdGFza1xuICAgICAqIGRlZmluZWQgYnkgdGhhdCBwcm9wZXJ0eSwgaS5lLiBjYW4gYmUgdXNlZCB3aGVuIHNwZWNpZnlpbmcgcmVxdWlyZW1lbnRzIGZvclxuICAgICAqIG90aGVyIHRhc2tzLiBUaGUgZnVuY3Rpb24gcmVjZWl2ZXMgb25lIG9yIHR3byBhcmd1bWVudHM6XG4gICAgICogKiBhIGByZXN1bHRzYCBvYmplY3QsIGNvbnRhaW5pbmcgdGhlIHJlc3VsdHMgb2YgdGhlIHByZXZpb3VzbHkgZXhlY3V0ZWRcbiAgICAgKiAgIGZ1bmN0aW9ucywgb25seSBwYXNzZWQgaWYgdGhlIHRhc2sgaGFzIGFueSBkZXBlbmRlbmNpZXMsXG4gICAgICogKiBhIGBjYWxsYmFjayhlcnIsIHJlc3VsdClgIGZ1bmN0aW9uLCB3aGljaCBtdXN0IGJlIGNhbGxlZCB3aGVuIGZpbmlzaGVkLFxuICAgICAqICAgcGFzc2luZyBhbiBgZXJyb3JgICh3aGljaCBjYW4gYmUgYG51bGxgKSBhbmQgdGhlIHJlc3VsdCBvZiB0aGUgZnVuY3Rpb24nc1xuICAgICAqICAgZXhlY3V0aW9uLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBbY29uY3VycmVuY3k9SW5maW5pdHldIC0gQW4gb3B0aW9uYWwgYGludGVnZXJgIGZvclxuICAgICAqIGRldGVybWluaW5nIHRoZSBtYXhpbXVtIG51bWJlciBvZiB0YXNrcyB0aGF0IGNhbiBiZSBydW4gaW4gcGFyYWxsZWwuIEJ5XG4gICAgICogZGVmYXVsdCwgYXMgbWFueSBhcyBwb3NzaWJsZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsXG4gICAgICogdGhlIHRhc2tzIGhhdmUgYmVlbiBjb21wbGV0ZWQuIEl0IHJlY2VpdmVzIHRoZSBgZXJyYCBhcmd1bWVudCBpZiBhbnkgYHRhc2tzYFxuICAgICAqIHBhc3MgYW4gZXJyb3IgdG8gdGhlaXIgY2FsbGJhY2suIFJlc3VsdHMgYXJlIGFsd2F5cyByZXR1cm5lZDsgaG93ZXZlciwgaWYgYW5cbiAgICAgKiBlcnJvciBvY2N1cnMsIG5vIGZ1cnRoZXIgYHRhc2tzYCB3aWxsIGJlIHBlcmZvcm1lZCwgYW5kIHRoZSByZXN1bHRzIG9iamVjdFxuICAgICAqIHdpbGwgb25seSBjb250YWluIHBhcnRpYWwgcmVzdWx0cy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIGEgY2FsbGJhY2sgaXMgbm90IHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvL1VzaW5nIENhbGxiYWNrc1xuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICBnZXRfZGF0YTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIGFzeW5jIGNvZGUgdG8gZ2V0IHNvbWUgZGF0YVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5Jyk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIG1ha2VfZm9sZGVyOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gYXN5bmMgY29kZSB0byBjcmVhdGUgYSBkaXJlY3RvcnkgdG8gc3RvcmUgYSBmaWxlIGluXG4gICAgICogICAgICAgICAvLyB0aGlzIGlzIHJ1biBhdCB0aGUgc2FtZSB0aW1lIGFzIGdldHRpbmcgdGhlIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdmb2xkZXInKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgd3JpdGVfZmlsZTogWydnZXRfZGF0YScsICdtYWtlX2ZvbGRlcicsIGZ1bmN0aW9uKHJlc3VsdHMsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBvbmNlIHRoZXJlIGlzIHNvbWUgZGF0YSBhbmQgdGhlIGRpcmVjdG9yeSBleGlzdHMsXG4gICAgICogICAgICAgICAvLyB3cml0ZSB0aGUgZGF0YSB0byBhIGZpbGUgaW4gdGhlIGRpcmVjdG9yeVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2ZpbGVuYW1lJyk7XG4gICAgICogICAgIH1dLFxuICAgICAqICAgICBlbWFpbF9saW5rOiBbJ3dyaXRlX2ZpbGUnLCBmdW5jdGlvbihyZXN1bHRzLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gb25jZSB0aGUgZmlsZSBpcyB3cml0dGVuIGxldCdzIGVtYWlsIGEgbGluayB0byBpdC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgeydmaWxlJzpyZXN1bHRzLndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1dXG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKCdlcnIgPSAnLCBlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdyZXN1bHRzID0gJywgcmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgPSB7XG4gICAgICogICAgIC8vICAgICBnZXRfZGF0YTogWydkYXRhJywgJ2NvbnZlcnRlZCB0byBhcnJheSddXG4gICAgICogICAgIC8vICAgICBtYWtlX2ZvbGRlcjsgJ2ZvbGRlcicsXG4gICAgICogICAgIC8vICAgICB3cml0ZV9maWxlOiAnZmlsZW5hbWUnXG4gICAgICogICAgIC8vICAgICBlbWFpbF9saW5rOiB7IGZpbGU6ICdmaWxlbmFtZScsIGVtYWlsOiAndXNlckBleGFtcGxlLmNvbScgfVxuICAgICAqICAgICAvLyB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuYXV0byh7XG4gICAgICogICAgIGdldF9kYXRhOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coJ2luIGdldF9kYXRhJyk7XG4gICAgICogICAgICAgICAvLyBhc3luYyBjb2RlIHRvIGdldCBzb21lIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdkYXRhJywgJ2NvbnZlcnRlZCB0byBhcnJheScpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBtYWtlX2ZvbGRlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKCdpbiBtYWtlX2ZvbGRlcicpO1xuICAgICAqICAgICAgICAgLy8gYXN5bmMgY29kZSB0byBjcmVhdGUgYSBkaXJlY3RvcnkgdG8gc3RvcmUgYSBmaWxlIGluXG4gICAgICogICAgICAgICAvLyB0aGlzIGlzIHJ1biBhdCB0aGUgc2FtZSB0aW1lIGFzIGdldHRpbmcgdGhlIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdmb2xkZXInKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgd3JpdGVfZmlsZTogWydnZXRfZGF0YScsICdtYWtlX2ZvbGRlcicsIGZ1bmN0aW9uKHJlc3VsdHMsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBvbmNlIHRoZXJlIGlzIHNvbWUgZGF0YSBhbmQgdGhlIGRpcmVjdG9yeSBleGlzdHMsXG4gICAgICogICAgICAgICAvLyB3cml0ZSB0aGUgZGF0YSB0byBhIGZpbGUgaW4gdGhlIGRpcmVjdG9yeVxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2ZpbGVuYW1lJyk7XG4gICAgICogICAgIH1dLFxuICAgICAqICAgICBlbWFpbF9saW5rOiBbJ3dyaXRlX2ZpbGUnLCBmdW5jdGlvbihyZXN1bHRzLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gb25jZSB0aGUgZmlsZSBpcyB3cml0dGVuIGxldCdzIGVtYWlsIGEgbGluayB0byBpdC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgeydmaWxlJzpyZXN1bHRzLndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1dXG4gICAgICogfSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ3Jlc3VsdHMgPSAnLCByZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyA9IHtcbiAgICAgKiAgICAgLy8gICAgIGdldF9kYXRhOiBbJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5J11cbiAgICAgKiAgICAgLy8gICAgIG1ha2VfZm9sZGVyOyAnZm9sZGVyJyxcbiAgICAgKiAgICAgLy8gICAgIHdyaXRlX2ZpbGU6ICdmaWxlbmFtZSdcbiAgICAgKiAgICAgLy8gICAgIGVtYWlsX2xpbms6IHsgZmlsZTogJ2ZpbGVuYW1lJywgZW1haWw6ICd1c2VyQGV4YW1wbGUuY29tJyB9XG4gICAgICogICAgIC8vIH1cbiAgICAgKiB9KS5jYXRjaChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZXJyID0gJywgZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLmF1dG8oe1xuICAgICAqICAgICAgICAgICAgIGdldF9kYXRhOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgICAgICAgICAvLyBhc3luYyBjb2RlIHRvIGdldCBzb21lIGRhdGFcbiAgICAgKiAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5Jyk7XG4gICAgICogICAgICAgICAgICAgfSxcbiAgICAgKiAgICAgICAgICAgICBtYWtlX2ZvbGRlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgLy8gYXN5bmMgY29kZSB0byBjcmVhdGUgYSBkaXJlY3RvcnkgdG8gc3RvcmUgYSBmaWxlIGluXG4gICAgICogICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgcnVuIGF0IHRoZSBzYW1lIHRpbWUgYXMgZ2V0dGluZyB0aGUgZGF0YVxuICAgICAqICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnZm9sZGVyJyk7XG4gICAgICogICAgICAgICAgICAgfSxcbiAgICAgKiAgICAgICAgICAgICB3cml0ZV9maWxlOiBbJ2dldF9kYXRhJywgJ21ha2VfZm9sZGVyJywgZnVuY3Rpb24ocmVzdWx0cywgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgLy8gb25jZSB0aGVyZSBpcyBzb21lIGRhdGEgYW5kIHRoZSBkaXJlY3RvcnkgZXhpc3RzLFxuICAgICAqICAgICAgICAgICAgICAgICAvLyB3cml0ZSB0aGUgZGF0YSB0byBhIGZpbGUgaW4gdGhlIGRpcmVjdG9yeVxuICAgICAqICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnZmlsZW5hbWUnKTtcbiAgICAgKiAgICAgICAgICAgICB9XSxcbiAgICAgKiAgICAgICAgICAgICBlbWFpbF9saW5rOiBbJ3dyaXRlX2ZpbGUnLCBmdW5jdGlvbihyZXN1bHRzLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgICAgICAgICAvLyBvbmNlIHRoZSBmaWxlIGlzIHdyaXR0ZW4gbGV0J3MgZW1haWwgYSBsaW5rIHRvIGl0Li4uXG4gICAgICogICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIHsnZmlsZSc6cmVzdWx0cy53cml0ZV9maWxlLCAnZW1haWwnOid1c2VyQGV4YW1wbGUuY29tJ30pO1xuICAgICAqICAgICAgICAgICAgIH1dXG4gICAgICogICAgICAgICB9KTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKCdyZXN1bHRzID0gJywgcmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzID0ge1xuICAgICAqICAgICAgICAgLy8gICAgIGdldF9kYXRhOiBbJ2RhdGEnLCAnY29udmVydGVkIHRvIGFycmF5J11cbiAgICAgKiAgICAgICAgIC8vICAgICBtYWtlX2ZvbGRlcjsgJ2ZvbGRlcicsXG4gICAgICogICAgICAgICAvLyAgICAgd3JpdGVfZmlsZTogJ2ZpbGVuYW1lJ1xuICAgICAqICAgICAgICAgLy8gICAgIGVtYWlsX2xpbms6IHsgZmlsZTogJ2ZpbGVuYW1lJywgZW1haWw6ICd1c2VyQGV4YW1wbGUuY29tJyB9XG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGF1dG8odGFza3MsIGNvbmN1cnJlbmN5LCBjYWxsYmFjaykge1xuICAgICAgICBpZiAodHlwZW9mIGNvbmN1cnJlbmN5ICE9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgLy8gY29uY3VycmVuY3kgaXMgb3B0aW9uYWwsIHNoaWZ0IHRoZSBhcmdzLlxuICAgICAgICAgICAgY2FsbGJhY2sgPSBjb25jdXJyZW5jeTtcbiAgICAgICAgICAgIGNvbmN1cnJlbmN5ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjYWxsYmFjayA9IG9uY2UoY2FsbGJhY2sgfHwgcHJvbWlzZUNhbGxiYWNrKCkpO1xuICAgICAgICB2YXIgbnVtVGFza3MgPSBPYmplY3Qua2V5cyh0YXNrcykubGVuZ3RoO1xuICAgICAgICBpZiAoIW51bVRhc2tzKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFjb25jdXJyZW5jeSkge1xuICAgICAgICAgICAgY29uY3VycmVuY3kgPSBudW1UYXNrcztcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciByZXN1bHRzID0ge307XG4gICAgICAgIHZhciBydW5uaW5nVGFza3MgPSAwO1xuICAgICAgICB2YXIgY2FuY2VsZWQgPSBmYWxzZTtcbiAgICAgICAgdmFyIGhhc0Vycm9yID0gZmFsc2U7XG5cbiAgICAgICAgdmFyIGxpc3RlbmVycyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cbiAgICAgICAgdmFyIHJlYWR5VGFza3MgPSBbXTtcblxuICAgICAgICAvLyBmb3IgY3ljbGUgZGV0ZWN0aW9uOlxuICAgICAgICB2YXIgcmVhZHlUb0NoZWNrID0gW107IC8vIHRhc2tzIHRoYXQgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgcmVhY2hhYmxlXG4gICAgICAgIC8vIHdpdGhvdXQgdGhlIHBvc3NpYmlsaXR5IG9mIHJldHVybmluZyB0byBhbiBhbmNlc3RvciB0YXNrXG4gICAgICAgIHZhciB1bmNoZWNrZWREZXBlbmRlbmNpZXMgPSB7fTtcblxuICAgICAgICBPYmplY3Qua2V5cyh0YXNrcykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgdmFyIHRhc2sgPSB0YXNrc1trZXldO1xuICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhc2spKSB7XG4gICAgICAgICAgICAgICAgLy8gbm8gZGVwZW5kZW5jaWVzXG4gICAgICAgICAgICAgICAgZW5xdWV1ZVRhc2soa2V5LCBbdGFza10pO1xuICAgICAgICAgICAgICAgIHJlYWR5VG9DaGVjay5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgZGVwZW5kZW5jaWVzID0gdGFzay5zbGljZSgwLCB0YXNrLmxlbmd0aCAtIDEpO1xuICAgICAgICAgICAgdmFyIHJlbWFpbmluZ0RlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcy5sZW5ndGg7XG4gICAgICAgICAgICBpZiAocmVtYWluaW5nRGVwZW5kZW5jaWVzID09PSAwKSB7XG4gICAgICAgICAgICAgICAgZW5xdWV1ZVRhc2soa2V5LCB0YXNrKTtcbiAgICAgICAgICAgICAgICByZWFkeVRvQ2hlY2sucHVzaChrZXkpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVuY2hlY2tlZERlcGVuZGVuY2llc1trZXldID0gcmVtYWluaW5nRGVwZW5kZW5jaWVzO1xuXG4gICAgICAgICAgICBkZXBlbmRlbmNpZXMuZm9yRWFjaChkZXBlbmRlbmN5TmFtZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF0YXNrc1tkZXBlbmRlbmN5TmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdhc3luYy5hdXRvIHRhc2sgYCcgKyBrZXkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgJ2AgaGFzIGEgbm9uLWV4aXN0ZW50IGRlcGVuZGVuY3kgYCcgK1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jeU5hbWUgKyAnYCBpbiAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llcy5qb2luKCcsICcpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYWRkTGlzdGVuZXIoZGVwZW5kZW5jeU5hbWUsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVtYWluaW5nRGVwZW5kZW5jaWVzLS07XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZW1haW5pbmdEZXBlbmRlbmNpZXMgPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVucXVldWVUYXNrKGtleSwgdGFzayk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBjaGVja0ZvckRlYWRsb2NrcygpO1xuICAgICAgICBwcm9jZXNzUXVldWUoKTtcblxuICAgICAgICBmdW5jdGlvbiBlbnF1ZXVlVGFzayhrZXksIHRhc2spIHtcbiAgICAgICAgICAgIHJlYWR5VGFza3MucHVzaCgoKSA9PiBydW5UYXNrKGtleSwgdGFzaykpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gcHJvY2Vzc1F1ZXVlKCkge1xuICAgICAgICAgICAgaWYgKGNhbmNlbGVkKSByZXR1cm5cbiAgICAgICAgICAgIGlmIChyZWFkeVRhc2tzLmxlbmd0aCA9PT0gMCAmJiBydW5uaW5nVGFza3MgPT09IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwgcmVzdWx0cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB3aGlsZShyZWFkeVRhc2tzLmxlbmd0aCAmJiBydW5uaW5nVGFza3MgPCBjb25jdXJyZW5jeSkge1xuICAgICAgICAgICAgICAgIHZhciBydW4gPSByZWFkeVRhc2tzLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgcnVuKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGFkZExpc3RlbmVyKHRhc2tOYW1lLCBmbikge1xuICAgICAgICAgICAgdmFyIHRhc2tMaXN0ZW5lcnMgPSBsaXN0ZW5lcnNbdGFza05hbWVdO1xuICAgICAgICAgICAgaWYgKCF0YXNrTGlzdGVuZXJzKSB7XG4gICAgICAgICAgICAgICAgdGFza0xpc3RlbmVycyA9IGxpc3RlbmVyc1t0YXNrTmFtZV0gPSBbXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGFza0xpc3RlbmVycy5wdXNoKGZuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIHRhc2tDb21wbGV0ZSh0YXNrTmFtZSkge1xuICAgICAgICAgICAgdmFyIHRhc2tMaXN0ZW5lcnMgPSBsaXN0ZW5lcnNbdGFza05hbWVdIHx8IFtdO1xuICAgICAgICAgICAgdGFza0xpc3RlbmVycy5mb3JFYWNoKGZuID0+IGZuKCkpO1xuICAgICAgICAgICAgcHJvY2Vzc1F1ZXVlKCk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIGZ1bmN0aW9uIHJ1blRhc2soa2V5LCB0YXNrKSB7XG4gICAgICAgICAgICBpZiAoaGFzRXJyb3IpIHJldHVybjtcblxuICAgICAgICAgICAgdmFyIHRhc2tDYWxsYmFjayA9IG9ubHlPbmNlKChlcnIsIC4uLnJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIHJ1bm5pbmdUYXNrcy0tO1xuICAgICAgICAgICAgICAgIGlmIChlcnIgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgICAgICAgICBbcmVzdWx0XSA9IHJlc3VsdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgICAgICAgICB2YXIgc2FmZVJlc3VsdHMgPSB7fTtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXMocmVzdWx0cykuZm9yRWFjaChya2V5ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNhZmVSZXN1bHRzW3JrZXldID0gcmVzdWx0c1tya2V5XTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIHNhZmVSZXN1bHRzW2tleV0gPSByZXN1bHQ7XG4gICAgICAgICAgICAgICAgICAgIGhhc0Vycm9yID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgbGlzdGVuZXJzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNhbmNlbGVkKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2soZXJyLCBzYWZlUmVzdWx0cyk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0c1trZXldID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgICAgICB0YXNrQ29tcGxldGUoa2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcnVubmluZ1Rhc2tzKys7XG4gICAgICAgICAgICB2YXIgdGFza0ZuID0gd3JhcEFzeW5jKHRhc2tbdGFzay5sZW5ndGggLSAxXSk7XG4gICAgICAgICAgICBpZiAodGFzay5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgdGFza0ZuKHJlc3VsdHMsIHRhc2tDYWxsYmFjayk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRhc2tGbih0YXNrQ2FsbGJhY2spO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gY2hlY2tGb3JEZWFkbG9ja3MoKSB7XG4gICAgICAgICAgICAvLyBLYWhuJ3MgYWxnb3JpdGhtXG4gICAgICAgICAgICAvLyBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Ub3BvbG9naWNhbF9zb3J0aW5nI0thaG4uMjdzX2FsZ29yaXRobVxuICAgICAgICAgICAgLy8gaHR0cDovL2Nvbm5hbGxlLmJsb2dzcG90LmNvbS8yMDEzLzEwL3RvcG9sb2dpY2FsLXNvcnRpbmdrYWhuLWFsZ29yaXRobS5odG1sXG4gICAgICAgICAgICB2YXIgY3VycmVudFRhc2s7XG4gICAgICAgICAgICB2YXIgY291bnRlciA9IDA7XG4gICAgICAgICAgICB3aGlsZSAocmVhZHlUb0NoZWNrLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRUYXNrID0gcmVhZHlUb0NoZWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgIGNvdW50ZXIrKztcbiAgICAgICAgICAgICAgICBnZXREZXBlbmRlbnRzKGN1cnJlbnRUYXNrKS5mb3JFYWNoKGRlcGVuZGVudCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICgtLXVuY2hlY2tlZERlcGVuZGVuY2llc1tkZXBlbmRlbnRdID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZWFkeVRvQ2hlY2sucHVzaChkZXBlbmRlbnQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChjb3VudGVyICE9PSBudW1UYXNrcykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAgICAgJ2FzeW5jLmF1dG8gY2Fubm90IGV4ZWN1dGUgdGFza3MgZHVlIHRvIGEgcmVjdXJzaXZlIGRlcGVuZGVuY3knXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGdldERlcGVuZGVudHModGFza05hbWUpIHtcbiAgICAgICAgICAgIHZhciByZXN1bHQgPSBbXTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHRhc2tzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGFzayA9IHRhc2tzW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGFzaykgJiYgdGFzay5pbmRleE9mKHRhc2tOYW1lKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNhbGxiYWNrW1BST01JU0VfU1lNQk9MXVxuICAgIH1cblxuICAgIHZhciBGTl9BUkdTID0gL14oPzphc3luY1xccyspPyg/OmZ1bmN0aW9uKT9cXHMqXFx3KlxccypcXChcXHMqKFteKV0rKVxccypcXCkoPzpcXHMqeykvO1xuICAgIHZhciBBUlJPV19GTl9BUkdTID0gL14oPzphc3luY1xccyspP1xcKD9cXHMqKFteKT1dKylcXHMqXFwpPyg/Olxccyo9PikvO1xuICAgIHZhciBGTl9BUkdfU1BMSVQgPSAvLC87XG4gICAgdmFyIEZOX0FSRyA9IC8oPS4rKT8oXFxzKikkLztcblxuICAgIGZ1bmN0aW9uIHN0cmlwQ29tbWVudHMoc3RyaW5nKSB7XG4gICAgICAgIGxldCBzdHJpcHBlZCA9ICcnO1xuICAgICAgICBsZXQgaW5kZXggPSAwO1xuICAgICAgICBsZXQgZW5kQmxvY2tDb21tZW50ID0gc3RyaW5nLmluZGV4T2YoJyovJyk7XG4gICAgICAgIHdoaWxlIChpbmRleCA8IHN0cmluZy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmIChzdHJpbmdbaW5kZXhdID09PSAnLycgJiYgc3RyaW5nW2luZGV4KzFdID09PSAnLycpIHtcbiAgICAgICAgICAgICAgICAvLyBpbmxpbmUgY29tbWVudFxuICAgICAgICAgICAgICAgIGxldCBlbmRJbmRleCA9IHN0cmluZy5pbmRleE9mKCdcXG4nLCBpbmRleCk7XG4gICAgICAgICAgICAgICAgaW5kZXggPSAoZW5kSW5kZXggPT09IC0xKSA/IHN0cmluZy5sZW5ndGggOiBlbmRJbmRleDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoKGVuZEJsb2NrQ29tbWVudCAhPT0gLTEpICYmIChzdHJpbmdbaW5kZXhdID09PSAnLycpICYmIChzdHJpbmdbaW5kZXgrMV0gPT09ICcqJykpIHtcbiAgICAgICAgICAgICAgICAvLyBibG9jayBjb21tZW50XG4gICAgICAgICAgICAgICAgbGV0IGVuZEluZGV4ID0gc3RyaW5nLmluZGV4T2YoJyovJywgaW5kZXgpO1xuICAgICAgICAgICAgICAgIGlmIChlbmRJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgaW5kZXggPSBlbmRJbmRleCArIDI7XG4gICAgICAgICAgICAgICAgICAgIGVuZEJsb2NrQ29tbWVudCA9IHN0cmluZy5pbmRleE9mKCcqLycsIGluZGV4KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzdHJpcHBlZCArPSBzdHJpbmdbaW5kZXhdO1xuICAgICAgICAgICAgICAgICAgICBpbmRleCsrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc3RyaXBwZWQgKz0gc3RyaW5nW2luZGV4XTtcbiAgICAgICAgICAgICAgICBpbmRleCsrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzdHJpcHBlZDtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJzZVBhcmFtcyhmdW5jKSB7XG4gICAgICAgIGNvbnN0IHNyYyA9IHN0cmlwQ29tbWVudHMoZnVuYy50b1N0cmluZygpKTtcbiAgICAgICAgbGV0IG1hdGNoID0gc3JjLm1hdGNoKEZOX0FSR1MpO1xuICAgICAgICBpZiAoIW1hdGNoKSB7XG4gICAgICAgICAgICBtYXRjaCA9IHNyYy5tYXRjaChBUlJPV19GTl9BUkdTKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW1hdGNoKSB0aHJvdyBuZXcgRXJyb3IoJ2NvdWxkIG5vdCBwYXJzZSBhcmdzIGluIGF1dG9JbmplY3RcXG5Tb3VyY2U6XFxuJyArIHNyYylcbiAgICAgICAgbGV0IFssIGFyZ3NdID0gbWF0Y2g7XG4gICAgICAgIHJldHVybiBhcmdzXG4gICAgICAgICAgICAucmVwbGFjZSgvXFxzL2csICcnKVxuICAgICAgICAgICAgLnNwbGl0KEZOX0FSR19TUExJVClcbiAgICAgICAgICAgIC5tYXAoKGFyZykgPT4gYXJnLnJlcGxhY2UoRk5fQVJHLCAnJykudHJpbSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIGRlcGVuZGVuY3ktaW5qZWN0ZWQgdmVyc2lvbiBvZiB0aGUgW2FzeW5jLmF1dG9de0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5hdXRvfSBmdW5jdGlvbi4gRGVwZW5kZW50XG4gICAgICogdGFza3MgYXJlIHNwZWNpZmllZCBhcyBwYXJhbWV0ZXJzIHRvIHRoZSBmdW5jdGlvbiwgYWZ0ZXIgdGhlIHVzdWFsIGNhbGxiYWNrXG4gICAgICogcGFyYW1ldGVyLCB3aXRoIHRoZSBwYXJhbWV0ZXIgbmFtZXMgbWF0Y2hpbmcgdGhlIG5hbWVzIG9mIHRoZSB0YXNrcyBpdFxuICAgICAqIGRlcGVuZHMgb24uIFRoaXMgY2FuIHByb3ZpZGUgZXZlbiBtb3JlIHJlYWRhYmxlIHRhc2sgZ3JhcGhzIHdoaWNoIGNhbiBiZVxuICAgICAqIGVhc2llciB0byBtYWludGFpbi5cbiAgICAgKlxuICAgICAqIElmIGEgZmluYWwgY2FsbGJhY2sgaXMgc3BlY2lmaWVkLCB0aGUgdGFzayByZXN1bHRzIGFyZSBzaW1pbGFybHkgaW5qZWN0ZWQsXG4gICAgICogc3BlY2lmaWVkIGFzIG5hbWVkIHBhcmFtZXRlcnMgYWZ0ZXIgdGhlIGluaXRpYWwgZXJyb3IgcGFyYW1ldGVyLlxuICAgICAqXG4gICAgICogVGhlIGF1dG9JbmplY3QgZnVuY3Rpb24gaXMgcHVyZWx5IHN5bnRhY3RpYyBzdWdhciBhbmQgaXRzIHNlbWFudGljcyBhcmVcbiAgICAgKiBvdGhlcndpc2UgZXF1aXZhbGVudCB0byBbYXN5bmMuYXV0b117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LmF1dG99LlxuICAgICAqXG4gICAgICogQG5hbWUgYXV0b0luamVjdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmF1dG9de0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5hdXRvfVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge09iamVjdH0gdGFza3MgLSBBbiBvYmplY3QsIGVhY2ggb2Ygd2hvc2UgcHJvcGVydGllcyBpcyBhbiB7QGxpbmsgQXN5bmNGdW5jdGlvbn0gb2ZcbiAgICAgKiB0aGUgZm9ybSAnZnVuYyhbZGVwZW5kZW5jaWVzLi4uXSwgY2FsbGJhY2spLiBUaGUgb2JqZWN0J3Mga2V5IG9mIGEgcHJvcGVydHlcbiAgICAgKiBzZXJ2ZXMgYXMgdGhlIG5hbWUgb2YgdGhlIHRhc2sgZGVmaW5lZCBieSB0aGF0IHByb3BlcnR5LCBpLmUuIGNhbiBiZSB1c2VkXG4gICAgICogd2hlbiBzcGVjaWZ5aW5nIHJlcXVpcmVtZW50cyBmb3Igb3RoZXIgdGFza3MuXG4gICAgICogKiBUaGUgYGNhbGxiYWNrYCBwYXJhbWV0ZXIgaXMgYSBgY2FsbGJhY2soZXJyLCByZXN1bHQpYCB3aGljaCBtdXN0IGJlIGNhbGxlZFxuICAgICAqICAgd2hlbiBmaW5pc2hlZCwgcGFzc2luZyBhbiBgZXJyb3JgICh3aGljaCBjYW4gYmUgYG51bGxgKSBhbmQgdGhlIHJlc3VsdCBvZlxuICAgICAqICAgdGhlIGZ1bmN0aW9uJ3MgZXhlY3V0aW9uLiBUaGUgcmVtYWluaW5nIHBhcmFtZXRlcnMgbmFtZSBvdGhlciB0YXNrcyBvblxuICAgICAqICAgd2hpY2ggdGhlIHRhc2sgaXMgZGVwZW5kZW50LCBhbmQgdGhlIHJlc3VsdHMgZnJvbSB0aG9zZSB0YXNrcyBhcmUgdGhlXG4gICAgICogICBhcmd1bWVudHMgb2YgdGhvc2UgcGFyYW1ldGVycy5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsXG4gICAgICogdGhlIHRhc2tzIGhhdmUgYmVlbiBjb21wbGV0ZWQuIEl0IHJlY2VpdmVzIHRoZSBgZXJyYCBhcmd1bWVudCBpZiBhbnkgYHRhc2tzYFxuICAgICAqIHBhc3MgYW4gZXJyb3IgdG8gdGhlaXIgY2FsbGJhY2ssIGFuZCBhIGByZXN1bHRzYCBvYmplY3Qgd2l0aCBhbnkgY29tcGxldGVkXG4gICAgICogdGFzayByZXN1bHRzLCBzaW1pbGFyIHRvIGBhdXRvYC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gIFRoZSBleGFtcGxlIGZyb20gYGF1dG9gIGNhbiBiZSByZXdyaXR0ZW4gYXMgZm9sbG93czpcbiAgICAgKiBhc3luYy5hdXRvSW5qZWN0KHtcbiAgICAgKiAgICAgZ2V0X2RhdGE6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBhc3luYyBjb2RlIHRvIGdldCBzb21lIGRhdGFcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdkYXRhJywgJ2NvbnZlcnRlZCB0byBhcnJheScpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBtYWtlX2ZvbGRlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIGFzeW5jIGNvZGUgdG8gY3JlYXRlIGEgZGlyZWN0b3J5IHRvIHN0b3JlIGEgZmlsZSBpblxuICAgICAqICAgICAgICAgLy8gdGhpcyBpcyBydW4gYXQgdGhlIHNhbWUgdGltZSBhcyBnZXR0aW5nIHRoZSBkYXRhXG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnZm9sZGVyJyk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIHdyaXRlX2ZpbGU6IGZ1bmN0aW9uKGdldF9kYXRhLCBtYWtlX2ZvbGRlciwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIG9uY2UgdGhlcmUgaXMgc29tZSBkYXRhIGFuZCB0aGUgZGlyZWN0b3J5IGV4aXN0cyxcbiAgICAgKiAgICAgICAgIC8vIHdyaXRlIHRoZSBkYXRhIHRvIGEgZmlsZSBpbiB0aGUgZGlyZWN0b3J5XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnZmlsZW5hbWUnKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZW1haWxfbGluazogZnVuY3Rpb24od3JpdGVfZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIG9uY2UgdGhlIGZpbGUgaXMgd3JpdHRlbiBsZXQncyBlbWFpbCBhIGxpbmsgdG8gaXQuLi5cbiAgICAgKiAgICAgICAgIC8vIHdyaXRlX2ZpbGUgY29udGFpbnMgdGhlIGZpbGVuYW1lIHJldHVybmVkIGJ5IHdyaXRlX2ZpbGUuXG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCB7J2ZpbGUnOndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1cbiAgICAgKiB9LCBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ2VyciA9ICcsIGVycik7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdlbWFpbF9saW5rID0gJywgcmVzdWx0cy5lbWFpbF9saW5rKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIElmIHlvdSBhcmUgdXNpbmcgYSBKUyBtaW5pZmllciB0aGF0IG1hbmdsZXMgcGFyYW1ldGVyIG5hbWVzLCBgYXV0b0luamVjdGBcbiAgICAgKiAvLyB3aWxsIG5vdCB3b3JrIHdpdGggcGxhaW4gZnVuY3Rpb25zLCBzaW5jZSB0aGUgcGFyYW1ldGVyIG5hbWVzIHdpbGwgYmVcbiAgICAgKiAvLyBjb2xsYXBzZWQgdG8gYSBzaW5nbGUgbGV0dGVyIGlkZW50aWZpZXIuICBUbyB3b3JrIGFyb3VuZCB0aGlzLCB5b3UgY2FuXG4gICAgICogLy8gZXhwbGljaXRseSBzcGVjaWZ5IHRoZSBuYW1lcyBvZiB0aGUgcGFyYW1ldGVycyB5b3VyIHRhc2sgZnVuY3Rpb24gbmVlZHNcbiAgICAgKiAvLyBpbiBhbiBhcnJheSwgc2ltaWxhciB0byBBbmd1bGFyLmpzIGRlcGVuZGVuY3kgaW5qZWN0aW9uLlxuICAgICAqXG4gICAgICogLy8gVGhpcyBzdGlsbCBoYXMgYW4gYWR2YW50YWdlIG92ZXIgcGxhaW4gYGF1dG9gLCBzaW5jZSB0aGUgcmVzdWx0cyBhIHRhc2tcbiAgICAgKiAvLyBkZXBlbmRzIG9uIGFyZSBzdGlsbCBzcHJlYWQgaW50byBhcmd1bWVudHMuXG4gICAgICogYXN5bmMuYXV0b0luamVjdCh7XG4gICAgICogICAgIC8vLi4uXG4gICAgICogICAgIHdyaXRlX2ZpbGU6IFsnZ2V0X2RhdGEnLCAnbWFrZV9mb2xkZXInLCBmdW5jdGlvbihnZXRfZGF0YSwgbWFrZV9mb2xkZXIsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnZmlsZW5hbWUnKTtcbiAgICAgKiAgICAgfV0sXG4gICAgICogICAgIGVtYWlsX2xpbms6IFsnd3JpdGVfZmlsZScsIGZ1bmN0aW9uKHdyaXRlX2ZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCB7J2ZpbGUnOndyaXRlX2ZpbGUsICdlbWFpbCc6J3VzZXJAZXhhbXBsZS5jb20nfSk7XG4gICAgICogICAgIH1dXG4gICAgICogICAgIC8vLi4uXG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdlcnIgPSAnLCBlcnIpO1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZW1haWxfbGluayA9ICcsIHJlc3VsdHMuZW1haWxfbGluayk7XG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gYXV0b0luamVjdCh0YXNrcywgY2FsbGJhY2spIHtcbiAgICAgICAgdmFyIG5ld1Rhc2tzID0ge307XG5cbiAgICAgICAgT2JqZWN0LmtleXModGFza3MpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIHZhciB0YXNrRm4gPSB0YXNrc1trZXldO1xuICAgICAgICAgICAgdmFyIHBhcmFtcztcbiAgICAgICAgICAgIHZhciBmbklzQXN5bmMgPSBpc0FzeW5jKHRhc2tGbik7XG4gICAgICAgICAgICB2YXIgaGFzTm9EZXBzID1cbiAgICAgICAgICAgICAgICAoIWZuSXNBc3luYyAmJiB0YXNrRm4ubGVuZ3RoID09PSAxKSB8fFxuICAgICAgICAgICAgICAgIChmbklzQXN5bmMgJiYgdGFza0ZuLmxlbmd0aCA9PT0gMCk7XG5cbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhc2tGbikpIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBbLi4udGFza0ZuXTtcbiAgICAgICAgICAgICAgICB0YXNrRm4gPSBwYXJhbXMucG9wKCk7XG5cbiAgICAgICAgICAgICAgICBuZXdUYXNrc1trZXldID0gcGFyYW1zLmNvbmNhdChwYXJhbXMubGVuZ3RoID4gMCA/IG5ld1Rhc2sgOiB0YXNrRm4pO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChoYXNOb0RlcHMpIHtcbiAgICAgICAgICAgICAgICAvLyBubyBkZXBlbmRlbmNpZXMsIHVzZSB0aGUgZnVuY3Rpb24gYXMtaXNcbiAgICAgICAgICAgICAgICBuZXdUYXNrc1trZXldID0gdGFza0ZuO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJzZVBhcmFtcyh0YXNrRm4pO1xuICAgICAgICAgICAgICAgIGlmICgodGFza0ZuLmxlbmd0aCA9PT0gMCAmJiAhZm5Jc0FzeW5jKSAmJiBwYXJhbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImF1dG9JbmplY3QgdGFzayBmdW5jdGlvbnMgcmVxdWlyZSBleHBsaWNpdCBwYXJhbWV0ZXJzLlwiKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyByZW1vdmUgY2FsbGJhY2sgcGFyYW1cbiAgICAgICAgICAgICAgICBpZiAoIWZuSXNBc3luYykgcGFyYW1zLnBvcCgpO1xuXG4gICAgICAgICAgICAgICAgbmV3VGFza3Nba2V5XSA9IHBhcmFtcy5jb25jYXQobmV3VGFzayk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZ1bmN0aW9uIG5ld1Rhc2socmVzdWx0cywgdGFza0NiKSB7XG4gICAgICAgICAgICAgICAgdmFyIG5ld0FyZ3MgPSBwYXJhbXMubWFwKG5hbWUgPT4gcmVzdWx0c1tuYW1lXSk7XG4gICAgICAgICAgICAgICAgbmV3QXJncy5wdXNoKHRhc2tDYik7XG4gICAgICAgICAgICAgICAgd3JhcEFzeW5jKHRhc2tGbikoLi4ubmV3QXJncyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBhdXRvKG5ld1Rhc2tzLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlIGRvdWJseSBsaW5rZWQgbGlzdCAoaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvRG91Ymx5X2xpbmtlZF9saXN0KSBpbXBsZW1lbnRhdGlvblxuICAgIC8vIHVzZWQgZm9yIHF1ZXVlcy4gVGhpcyBpbXBsZW1lbnRhdGlvbiBhc3N1bWVzIHRoYXQgdGhlIG5vZGUgcHJvdmlkZWQgYnkgdGhlIHVzZXIgY2FuIGJlIG1vZGlmaWVkXG4gICAgLy8gdG8gYWRqdXN0IHRoZSBuZXh0IGFuZCBsYXN0IHByb3BlcnRpZXMuIFdlIGltcGxlbWVudCBvbmx5IHRoZSBtaW5pbWFsIGZ1bmN0aW9uYWxpdHlcbiAgICAvLyBmb3IgcXVldWUgc3VwcG9ydC5cbiAgICBjbGFzcyBETEwge1xuICAgICAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgICAgIHRoaXMuaGVhZCA9IHRoaXMudGFpbCA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmxlbmd0aCA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICByZW1vdmVMaW5rKG5vZGUpIHtcbiAgICAgICAgICAgIGlmIChub2RlLnByZXYpIG5vZGUucHJldi5uZXh0ID0gbm9kZS5uZXh0O1xuICAgICAgICAgICAgZWxzZSB0aGlzLmhlYWQgPSBub2RlLm5leHQ7XG4gICAgICAgICAgICBpZiAobm9kZS5uZXh0KSBub2RlLm5leHQucHJldiA9IG5vZGUucHJldjtcbiAgICAgICAgICAgIGVsc2UgdGhpcy50YWlsID0gbm9kZS5wcmV2O1xuXG4gICAgICAgICAgICBub2RlLnByZXYgPSBub2RlLm5leHQgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5sZW5ndGggLT0gMTtcbiAgICAgICAgICAgIHJldHVybiBub2RlO1xuICAgICAgICB9XG5cbiAgICAgICAgZW1wdHkgKCkge1xuICAgICAgICAgICAgd2hpbGUodGhpcy5oZWFkKSB0aGlzLnNoaWZ0KCk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfVxuXG4gICAgICAgIGluc2VydEFmdGVyKG5vZGUsIG5ld05vZGUpIHtcbiAgICAgICAgICAgIG5ld05vZGUucHJldiA9IG5vZGU7XG4gICAgICAgICAgICBuZXdOb2RlLm5leHQgPSBub2RlLm5leHQ7XG4gICAgICAgICAgICBpZiAobm9kZS5uZXh0KSBub2RlLm5leHQucHJldiA9IG5ld05vZGU7XG4gICAgICAgICAgICBlbHNlIHRoaXMudGFpbCA9IG5ld05vZGU7XG4gICAgICAgICAgICBub2RlLm5leHQgPSBuZXdOb2RlO1xuICAgICAgICAgICAgdGhpcy5sZW5ndGggKz0gMTtcbiAgICAgICAgfVxuXG4gICAgICAgIGluc2VydEJlZm9yZShub2RlLCBuZXdOb2RlKSB7XG4gICAgICAgICAgICBuZXdOb2RlLnByZXYgPSBub2RlLnByZXY7XG4gICAgICAgICAgICBuZXdOb2RlLm5leHQgPSBub2RlO1xuICAgICAgICAgICAgaWYgKG5vZGUucHJldikgbm9kZS5wcmV2Lm5leHQgPSBuZXdOb2RlO1xuICAgICAgICAgICAgZWxzZSB0aGlzLmhlYWQgPSBuZXdOb2RlO1xuICAgICAgICAgICAgbm9kZS5wcmV2ID0gbmV3Tm9kZTtcbiAgICAgICAgICAgIHRoaXMubGVuZ3RoICs9IDE7XG4gICAgICAgIH1cblxuICAgICAgICB1bnNoaWZ0KG5vZGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmhlYWQpIHRoaXMuaW5zZXJ0QmVmb3JlKHRoaXMuaGVhZCwgbm9kZSk7XG4gICAgICAgICAgICBlbHNlIHNldEluaXRpYWwodGhpcywgbm9kZSk7XG4gICAgICAgIH1cblxuICAgICAgICBwdXNoKG5vZGUpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRhaWwpIHRoaXMuaW5zZXJ0QWZ0ZXIodGhpcy50YWlsLCBub2RlKTtcbiAgICAgICAgICAgIGVsc2Ugc2V0SW5pdGlhbCh0aGlzLCBub2RlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNoaWZ0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGVhZCAmJiB0aGlzLnJlbW92ZUxpbmsodGhpcy5oZWFkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHBvcCgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnRhaWwgJiYgdGhpcy5yZW1vdmVMaW5rKHRoaXMudGFpbCk7XG4gICAgICAgIH1cblxuICAgICAgICB0b0FycmF5KCkge1xuICAgICAgICAgICAgcmV0dXJuIFsuLi50aGlzXVxuICAgICAgICB9XG5cbiAgICAgICAgKltTeW1ib2wuaXRlcmF0b3JdICgpIHtcbiAgICAgICAgICAgIHZhciBjdXIgPSB0aGlzLmhlYWQ7XG4gICAgICAgICAgICB3aGlsZSAoY3VyKSB7XG4gICAgICAgICAgICAgICAgeWllbGQgY3VyLmRhdGE7XG4gICAgICAgICAgICAgICAgY3VyID0gY3VyLm5leHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZW1vdmUgKHRlc3RGbikge1xuICAgICAgICAgICAgdmFyIGN1cnIgPSB0aGlzLmhlYWQ7XG4gICAgICAgICAgICB3aGlsZShjdXJyKSB7XG4gICAgICAgICAgICAgICAgdmFyIHtuZXh0fSA9IGN1cnI7XG4gICAgICAgICAgICAgICAgaWYgKHRlc3RGbihjdXJyKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZUxpbmsoY3Vycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGN1cnIgPSBuZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBzZXRJbml0aWFsKGRsbCwgbm9kZSkge1xuICAgICAgICBkbGwubGVuZ3RoID0gMTtcbiAgICAgICAgZGxsLmhlYWQgPSBkbGwudGFpbCA9IG5vZGU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcXVldWUod29ya2VyLCBjb25jdXJyZW5jeSwgcGF5bG9hZCkge1xuICAgICAgICBpZiAoY29uY3VycmVuY3kgPT0gbnVsbCkge1xuICAgICAgICAgICAgY29uY3VycmVuY3kgPSAxO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYoY29uY3VycmVuY3kgPT09IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKCdDb25jdXJyZW5jeSBtdXN0IG5vdCBiZSB6ZXJvJyk7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgX3dvcmtlciA9IHdyYXBBc3luYyh3b3JrZXIpO1xuICAgICAgICB2YXIgbnVtUnVubmluZyA9IDA7XG4gICAgICAgIHZhciB3b3JrZXJzTGlzdCA9IFtdO1xuICAgICAgICBjb25zdCBldmVudHMgPSB7XG4gICAgICAgICAgICBlcnJvcjogW10sXG4gICAgICAgICAgICBkcmFpbjogW10sXG4gICAgICAgICAgICBzYXR1cmF0ZWQ6IFtdLFxuICAgICAgICAgICAgdW5zYXR1cmF0ZWQ6IFtdLFxuICAgICAgICAgICAgZW1wdHk6IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgZnVuY3Rpb24gb24gKGV2ZW50LCBoYW5kbGVyKSB7XG4gICAgICAgICAgICBldmVudHNbZXZlbnRdLnB1c2goaGFuZGxlcik7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBvbmNlIChldmVudCwgaGFuZGxlcikge1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlQW5kUmVtb3ZlID0gKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICBvZmYoZXZlbnQsIGhhbmRsZUFuZFJlbW92ZSk7XG4gICAgICAgICAgICAgICAgaGFuZGxlciguLi5hcmdzKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBldmVudHNbZXZlbnRdLnB1c2goaGFuZGxlQW5kUmVtb3ZlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIG9mZiAoZXZlbnQsIGhhbmRsZXIpIHtcbiAgICAgICAgICAgIGlmICghZXZlbnQpIHJldHVybiBPYmplY3Qua2V5cyhldmVudHMpLmZvckVhY2goZXYgPT4gZXZlbnRzW2V2XSA9IFtdKVxuICAgICAgICAgICAgaWYgKCFoYW5kbGVyKSByZXR1cm4gZXZlbnRzW2V2ZW50XSA9IFtdXG4gICAgICAgICAgICBldmVudHNbZXZlbnRdID0gZXZlbnRzW2V2ZW50XS5maWx0ZXIoZXYgPT4gZXYgIT09IGhhbmRsZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gdHJpZ2dlciAoZXZlbnQsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGV2ZW50c1tldmVudF0uZm9yRWFjaChoYW5kbGVyID0+IGhhbmRsZXIoLi4uYXJncykpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIHByb2Nlc3NpbmdTY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgICAgZnVuY3Rpb24gX2luc2VydChkYXRhLCBpbnNlcnRBdEZyb250LCByZWplY3RPbkVycm9yLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgaWYgKGNhbGxiYWNrICE9IG51bGwgJiYgdHlwZW9mIGNhbGxiYWNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd0YXNrIGNhbGxiYWNrIG11c3QgYmUgYSBmdW5jdGlvbicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcS5zdGFydGVkID0gdHJ1ZTtcblxuICAgICAgICAgICAgdmFyIHJlcywgcmVqO1xuICAgICAgICAgICAgZnVuY3Rpb24gcHJvbWlzZUNhbGxiYWNrIChlcnIsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgICAgICAvLyB3ZSBkb24ndCBjYXJlIGFib3V0IHRoZSBlcnJvciwgbGV0IHRoZSBnbG9iYWwgZXJyb3IgaGFuZGxlclxuICAgICAgICAgICAgICAgIC8vIGRlYWwgd2l0aCBpdFxuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiByZWplY3RPbkVycm9yID8gcmVqKGVycikgOiByZXMoKVxuICAgICAgICAgICAgICAgIGlmIChhcmdzLmxlbmd0aCA8PSAxKSByZXR1cm4gcmVzKGFyZ3NbMF0pXG4gICAgICAgICAgICAgICAgcmVzKGFyZ3MpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgaXRlbSA9IHEuX2NyZWF0ZVRhc2tJdGVtKFxuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgcmVqZWN0T25FcnJvciA/IHByb21pc2VDYWxsYmFjayA6XG4gICAgICAgICAgICAgICAgICAgIChjYWxsYmFjayB8fCBwcm9taXNlQ2FsbGJhY2spXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBpZiAoaW5zZXJ0QXRGcm9udCkge1xuICAgICAgICAgICAgICAgIHEuX3Rhc2tzLnVuc2hpZnQoaXRlbSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHEuX3Rhc2tzLnB1c2goaXRlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghcHJvY2Vzc2luZ1NjaGVkdWxlZCkge1xuICAgICAgICAgICAgICAgIHByb2Nlc3NpbmdTY2hlZHVsZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc2luZ1NjaGVkdWxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBxLnByb2Nlc3MoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHJlamVjdE9uRXJyb3IgfHwgIWNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVzID0gcmVzb2x2ZTtcbiAgICAgICAgICAgICAgICAgICAgcmVqID0gcmVqZWN0O1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBfY3JlYXRlQ0IodGFza3MpIHtcbiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbiAoZXJyLCAuLi5hcmdzKSB7XG4gICAgICAgICAgICAgICAgbnVtUnVubmluZyAtPSAxO1xuXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSB0YXNrcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHRhc2sgPSB0YXNrc1tpXTtcblxuICAgICAgICAgICAgICAgICAgICB2YXIgaW5kZXggPSB3b3JrZXJzTGlzdC5pbmRleE9mKHRhc2spO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtlcnNMaXN0LnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaW5kZXggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3b3JrZXJzTGlzdC5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdGFzay5jYWxsYmFjayhlcnIsIC4uLmFyZ3MpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnIgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcignZXJyb3InLCBlcnIsIHRhc2suZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAobnVtUnVubmluZyA8PSAocS5jb25jdXJyZW5jeSAtIHEuYnVmZmVyKSApIHtcbiAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcigndW5zYXR1cmF0ZWQnKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAocS5pZGxlKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcignZHJhaW4nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcS5wcm9jZXNzKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gX21heWJlRHJhaW4oZGF0YSkge1xuICAgICAgICAgICAgaWYgKGRhdGEubGVuZ3RoID09PSAwICYmIHEuaWRsZSgpKSB7XG4gICAgICAgICAgICAgICAgLy8gY2FsbCBkcmFpbiBpbW1lZGlhdGVseSBpZiB0aGVyZSBhcmUgbm8gdGFza3NcbiAgICAgICAgICAgICAgICBzZXRJbW1lZGlhdGUkMSgoKSA9PiB0cmlnZ2VyKCdkcmFpbicpKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBldmVudE1ldGhvZCA9IChuYW1lKSA9PiAoaGFuZGxlcikgPT4ge1xuICAgICAgICAgICAgaWYgKCFoYW5kbGVyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgb25jZShuYW1lLCAoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gcmVqZWN0KGVycilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBvZmYobmFtZSk7XG4gICAgICAgICAgICBvbihuYW1lLCBoYW5kbGVyKTtcblxuICAgICAgICB9O1xuXG4gICAgICAgIHZhciBpc1Byb2Nlc3NpbmcgPSBmYWxzZTtcbiAgICAgICAgdmFyIHEgPSB7XG4gICAgICAgICAgICBfdGFza3M6IG5ldyBETEwoKSxcbiAgICAgICAgICAgIF9jcmVhdGVUYXNrSXRlbSAoZGF0YSwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgICAgICAgICBjYWxsYmFja1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKltTeW1ib2wuaXRlcmF0b3JdICgpIHtcbiAgICAgICAgICAgICAgICB5aWVsZCogcS5fdGFza3NbU3ltYm9sLml0ZXJhdG9yXSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNvbmN1cnJlbmN5LFxuICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgIGJ1ZmZlcjogY29uY3VycmVuY3kgLyA0LFxuICAgICAgICAgICAgc3RhcnRlZDogZmFsc2UsXG4gICAgICAgICAgICBwYXVzZWQ6IGZhbHNlLFxuICAgICAgICAgICAgcHVzaCAoZGF0YSwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoX21heWJlRHJhaW4oZGF0YSkpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5tYXAoZGF0dW0gPT4gX2luc2VydChkYXR1bSwgZmFsc2UsIGZhbHNlLCBjYWxsYmFjaykpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBfaW5zZXJ0KGRhdGEsIGZhbHNlLCBmYWxzZSwgY2FsbGJhY2spO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHB1c2hBc3luYyAoZGF0YSwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoX21heWJlRHJhaW4oZGF0YSkpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZGF0YS5tYXAoZGF0dW0gPT4gX2luc2VydChkYXR1bSwgZmFsc2UsIHRydWUsIGNhbGxiYWNrKSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9pbnNlcnQoZGF0YSwgZmFsc2UsIHRydWUsIGNhbGxiYWNrKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBraWxsICgpIHtcbiAgICAgICAgICAgICAgICBvZmYoKTtcbiAgICAgICAgICAgICAgICBxLl90YXNrcy5lbXB0eSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHVuc2hpZnQgKGRhdGEsIGNhbGxiYWNrKSB7XG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKF9tYXliZURyYWluKGRhdGEpKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRhdGEubWFwKGRhdHVtID0+IF9pbnNlcnQoZGF0dW0sIHRydWUsIGZhbHNlLCBjYWxsYmFjaykpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBfaW5zZXJ0KGRhdGEsIHRydWUsIGZhbHNlLCBjYWxsYmFjayk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdW5zaGlmdEFzeW5jIChkYXRhLCBjYWxsYmFjaykge1xuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChfbWF5YmVEcmFpbihkYXRhKSkgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBkYXRhLm1hcChkYXR1bSA9PiBfaW5zZXJ0KGRhdHVtLCB0cnVlLCB0cnVlLCBjYWxsYmFjaykpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBfaW5zZXJ0KGRhdGEsIHRydWUsIHRydWUsIGNhbGxiYWNrKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZW1vdmUgKHRlc3RGbikge1xuICAgICAgICAgICAgICAgIHEuX3Rhc2tzLnJlbW92ZSh0ZXN0Rm4pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHByb2Nlc3MgKCkge1xuICAgICAgICAgICAgICAgIC8vIEF2b2lkIHRyeWluZyB0byBzdGFydCB0b28gbWFueSBwcm9jZXNzaW5nIG9wZXJhdGlvbnMuIFRoaXMgY2FuIG9jY3VyXG4gICAgICAgICAgICAgICAgLy8gd2hlbiBjYWxsYmFja3MgcmVzb2x2ZSBzeW5jaHJvbm91c2x5ICgjMTI2NykuXG4gICAgICAgICAgICAgICAgaWYgKGlzUHJvY2Vzc2luZykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlzUHJvY2Vzc2luZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgd2hpbGUoIXEucGF1c2VkICYmIG51bVJ1bm5pbmcgPCBxLmNvbmN1cnJlbmN5ICYmIHEuX3Rhc2tzLmxlbmd0aCl7XG4gICAgICAgICAgICAgICAgICAgIHZhciB0YXNrcyA9IFtdLCBkYXRhID0gW107XG4gICAgICAgICAgICAgICAgICAgIHZhciBsID0gcS5fdGFza3MubGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBpZiAocS5wYXlsb2FkKSBsID0gTWF0aC5taW4obCwgcS5wYXlsb2FkKTtcbiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBub2RlID0gcS5fdGFza3Muc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhc2tzLnB1c2gobm9kZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3b3JrZXJzTGlzdC5wdXNoKG5vZGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS5wdXNoKG5vZGUuZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBudW1SdW5uaW5nICs9IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHEuX3Rhc2tzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJpZ2dlcignZW1wdHknKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmIChudW1SdW5uaW5nID09PSBxLmNvbmN1cnJlbmN5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmlnZ2VyKCdzYXR1cmF0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHZhciBjYiA9IG9ubHlPbmNlKF9jcmVhdGVDQih0YXNrcykpO1xuICAgICAgICAgICAgICAgICAgICBfd29ya2VyKGRhdGEsIGNiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaXNQcm9jZXNzaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbGVuZ3RoICgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcS5fdGFza3MubGVuZ3RoO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJ1bm5pbmcgKCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudW1SdW5uaW5nO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHdvcmtlcnNMaXN0ICgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gd29ya2Vyc0xpc3Q7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaWRsZSgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcS5fdGFza3MubGVuZ3RoICsgbnVtUnVubmluZyA9PT0gMDtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYXVzZSAoKSB7XG4gICAgICAgICAgICAgICAgcS5wYXVzZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlc3VtZSAoKSB7XG4gICAgICAgICAgICAgICAgaWYgKHEucGF1c2VkID09PSBmYWxzZSkgeyByZXR1cm47IH1cbiAgICAgICAgICAgICAgICBxLnBhdXNlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKHEucHJvY2Vzcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIC8vIGRlZmluZSB0aGVzZSBhcyBmaXhlZCBwcm9wZXJ0aWVzLCBzbyBwZW9wbGUgZ2V0IHVzZWZ1bCBlcnJvcnMgd2hlbiB1cGRhdGluZ1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhxLCB7XG4gICAgICAgICAgICBzYXR1cmF0ZWQ6IHtcbiAgICAgICAgICAgICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgdmFsdWU6IGV2ZW50TWV0aG9kKCdzYXR1cmF0ZWQnKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHVuc2F0dXJhdGVkOiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgndW5zYXR1cmF0ZWQnKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVtcHR5OiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgnZW1wdHknKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRyYWluOiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgnZHJhaW4nKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVycm9yOiB7XG4gICAgICAgICAgICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBldmVudE1ldGhvZCgnZXJyb3InKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBxO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBgY2FyZ29gIG9iamVjdCB3aXRoIHRoZSBzcGVjaWZpZWQgcGF5bG9hZC4gVGFza3MgYWRkZWQgdG8gdGhlXG4gICAgICogY2FyZ28gd2lsbCBiZSBwcm9jZXNzZWQgYWx0b2dldGhlciAodXAgdG8gdGhlIGBwYXlsb2FkYCBsaW1pdCkuIElmIHRoZVxuICAgICAqIGB3b3JrZXJgIGlzIGluIHByb2dyZXNzLCB0aGUgdGFzayBpcyBxdWV1ZWQgdW50aWwgaXQgYmVjb21lcyBhdmFpbGFibGUuIE9uY2VcbiAgICAgKiB0aGUgYHdvcmtlcmAgaGFzIGNvbXBsZXRlZCBzb21lIHRhc2tzLCBlYWNoIGNhbGxiYWNrIG9mIHRob3NlIHRhc2tzIGlzXG4gICAgICogY2FsbGVkLiBDaGVjayBvdXQgW3RoZXNlXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tLzZiYmQzNmY0Y2Y1YjM1YTBmMTFhOTZkY2QyZTk3NzExZmZjMmZiMzcvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzODJmNjI2MjYzMzA2MzY2NjIzMDJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzOTM3MzQ2NjJkMzMzMzM5Mzc2MzM2MzQ2NDYzMzgzNTM4MmU2NzY5NjYpIFthbmltYXRpb25zXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Y0ODEwZTAwZTFjNWY1ZjhhZGRiZTNlOWY0OTA2NGZkNWQxMDI2OTkvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzMTJmMzgzNDYzMzkzMjMwMzYzNjJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzODMxMzQ2NjJkMzk2NDMzNjQzMDMyMzQzMTMzNjI2NjY0MmU2NzY5NjYpXG4gICAgICogZm9yIGhvdyBgY2FyZ29gIGFuZCBgcXVldWVgIHdvcmsuXG4gICAgICpcbiAgICAgKiBXaGlsZSBbYHF1ZXVlYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnF1ZXVlfSBwYXNzZXMgb25seSBvbmUgdGFzayB0byBvbmUgb2YgYSBncm91cCBvZiB3b3JrZXJzXG4gICAgICogYXQgYSB0aW1lLCBjYXJnbyBwYXNzZXMgYW4gYXJyYXkgb2YgdGFza3MgdG8gYSBzaW5nbGUgd29ya2VyLCByZXBlYXRpbmdcbiAgICAgKiB3aGVuIHRoZSB3b3JrZXIgaXMgZmluaXNoZWQuXG4gICAgICpcbiAgICAgKiBAbmFtZSBjYXJnb1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnF1ZXVlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucXVldWV9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIGZvciBwcm9jZXNzaW5nIGFuIGFycmF5XG4gICAgICogb2YgcXVldWVkIHRhc2tzLiBJbnZva2VkIHdpdGggYCh0YXNrcywgY2FsbGJhY2spYC5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gW3BheWxvYWQ9SW5maW5pdHldIC0gQW4gb3B0aW9uYWwgYGludGVnZXJgIGZvciBkZXRlcm1pbmluZ1xuICAgICAqIGhvdyBtYW55IHRhc2tzIHNob3VsZCBiZSBwcm9jZXNzZWQgcGVyIHJvdW5kOyBpZiBvbWl0dGVkLCB0aGUgZGVmYXVsdCBpc1xuICAgICAqIHVubGltaXRlZC5cbiAgICAgKiBAcmV0dXJucyB7bW9kdWxlOkNvbnRyb2xGbG93LlF1ZXVlT2JqZWN0fSBBIGNhcmdvIG9iamVjdCB0byBtYW5hZ2UgdGhlIHRhc2tzLiBDYWxsYmFja3MgY2FuXG4gICAgICogYXR0YWNoZWQgYXMgY2VydGFpbiBwcm9wZXJ0aWVzIHRvIGxpc3RlbiBmb3Igc3BlY2lmaWMgZXZlbnRzIGR1cmluZyB0aGVcbiAgICAgKiBsaWZlY3ljbGUgb2YgdGhlIGNhcmdvIGFuZCBpbm5lciBxdWV1ZS5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gY3JlYXRlIGEgY2FyZ28gb2JqZWN0IHdpdGggcGF5bG9hZCAyXG4gICAgICogdmFyIGNhcmdvID0gYXN5bmMuY2FyZ28oZnVuY3Rpb24odGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZvciAodmFyIGk9MDsgaTx0YXNrcy5sZW5ndGg7IGkrKykge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coJ2hlbGxvICcgKyB0YXNrc1tpXS5uYW1lKTtcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYWxsYmFjaygpO1xuICAgICAqIH0sIDIpO1xuICAgICAqXG4gICAgICogLy8gYWRkIHNvbWUgaXRlbXNcbiAgICAgKiBjYXJnby5wdXNoKHtuYW1lOiAnZm9vJ30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBmb28nKTtcbiAgICAgKiB9KTtcbiAgICAgKiBjYXJnby5wdXNoKHtuYW1lOiAnYmFyJ30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBiYXInKTtcbiAgICAgKiB9KTtcbiAgICAgKiBhd2FpdCBjYXJnby5wdXNoKHtuYW1lOiAnYmF6J30pO1xuICAgICAqIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGJheicpO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIGNhcmdvKHdvcmtlciwgcGF5bG9hZCkge1xuICAgICAgICByZXR1cm4gcXVldWUod29ya2VyLCAxLCBwYXlsb2FkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgYGNhcmdvUXVldWVgIG9iamVjdCB3aXRoIHRoZSBzcGVjaWZpZWQgcGF5bG9hZC4gVGFza3MgYWRkZWQgdG8gdGhlXG4gICAgICogY2FyZ29RdWV1ZSB3aWxsIGJlIHByb2Nlc3NlZCB0b2dldGhlciAodXAgdG8gdGhlIGBwYXlsb2FkYCBsaW1pdCkgaW4gYGNvbmN1cnJlbmN5YCBwYXJhbGxlbCB3b3JrZXJzLlxuICAgICAqIElmIHRoZSBhbGwgYHdvcmtlcnNgIGFyZSBpbiBwcm9ncmVzcywgdGhlIHRhc2sgaXMgcXVldWVkIHVudGlsIG9uZSBiZWNvbWVzIGF2YWlsYWJsZS4gT25jZVxuICAgICAqIGEgYHdvcmtlcmAgaGFzIGNvbXBsZXRlZCBzb21lIHRhc2tzLCBlYWNoIGNhbGxiYWNrIG9mIHRob3NlIHRhc2tzIGlzXG4gICAgICogY2FsbGVkLiBDaGVjayBvdXQgW3RoZXNlXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tLzZiYmQzNmY0Y2Y1YjM1YTBmMTFhOTZkY2QyZTk3NzExZmZjMmZiMzcvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzODJmNjI2MjYzMzA2MzY2NjIzMDJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzOTM3MzQ2NjJkMzMzMzM5Mzc2MzM2MzQ2NDYzMzgzNTM4MmU2NzY5NjYpIFthbmltYXRpb25zXShodHRwczovL2NhbW8uZ2l0aHVidXNlcmNvbnRlbnQuY29tL2Y0ODEwZTAwZTFjNWY1ZjhhZGRiZTNlOWY0OTA2NGZkNWQxMDI2OTkvNjg3NDc0NzA3MzNhMmYyZjY2MmU2MzZjNmY3NTY0MmU2NzY5NzQ2ODc1NjIyZTYzNmY2ZDJmNjE3MzczNjU3NDczMmYzMTM2MzczNjM4MzczMTJmMzYzODMxMzAzMTJmMzgzNDYzMzkzMjMwMzYzNjJkMzU2NjMyMzkyZDMxMzE2NTMyMmQzODMxMzQ2NjJkMzk2NDMzNjQzMDMyMzQzMTMzNjI2NjY0MmU2NzY5NjYpXG4gICAgICogZm9yIGhvdyBgY2FyZ29gIGFuZCBgcXVldWVgIHdvcmsuXG4gICAgICpcbiAgICAgKiBXaGlsZSBbYHF1ZXVlYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnF1ZXVlfSBwYXNzZXMgb25seSBvbmUgdGFzayB0byBvbmUgb2YgYSBncm91cCBvZiB3b3JrZXJzXG4gICAgICogYXQgYSB0aW1lLCBhbmQgW2BjYXJnb2Bde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5jYXJnb30gcGFzc2VzIGFuIGFycmF5IG9mIHRhc2tzIHRvIGEgc2luZ2xlIHdvcmtlcixcbiAgICAgKiB0aGUgY2FyZ29RdWV1ZSBwYXNzZXMgYW4gYXJyYXkgb2YgdGFza3MgdG8gbXVsdGlwbGUgcGFyYWxsZWwgd29ya2Vycy5cbiAgICAgKlxuICAgICAqIEBuYW1lIGNhcmdvUXVldWVcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5xdWV1ZV17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnF1ZXVlfVxuICAgICAqIEBzZWUgW2FzeW5jLmNhcmdvXXtAbGluayBtb2R1bGU6Q29udHJvbEZMb3cuY2FyZ299XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIGZvciBwcm9jZXNzaW5nIGFuIGFycmF5XG4gICAgICogb2YgcXVldWVkIHRhc2tzLiBJbnZva2VkIHdpdGggYCh0YXNrcywgY2FsbGJhY2spYC5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gW2NvbmN1cnJlbmN5PTFdIC0gQW4gYGludGVnZXJgIGZvciBkZXRlcm1pbmluZyBob3cgbWFueVxuICAgICAqIGB3b3JrZXJgIGZ1bmN0aW9ucyBzaG91bGQgYmUgcnVuIGluIHBhcmFsbGVsLiAgSWYgb21pdHRlZCwgdGhlIGNvbmN1cnJlbmN5XG4gICAgICogZGVmYXVsdHMgdG8gYDFgLiAgSWYgdGhlIGNvbmN1cnJlbmN5IGlzIGAwYCwgYW4gZXJyb3IgaXMgdGhyb3duLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBbcGF5bG9hZD1JbmZpbml0eV0gLSBBbiBvcHRpb25hbCBgaW50ZWdlcmAgZm9yIGRldGVybWluaW5nXG4gICAgICogaG93IG1hbnkgdGFza3Mgc2hvdWxkIGJlIHByb2Nlc3NlZCBwZXIgcm91bmQ7IGlmIG9taXR0ZWQsIHRoZSBkZWZhdWx0IGlzXG4gICAgICogdW5saW1pdGVkLlxuICAgICAqIEByZXR1cm5zIHttb2R1bGU6Q29udHJvbEZsb3cuUXVldWVPYmplY3R9IEEgY2FyZ29RdWV1ZSBvYmplY3QgdG8gbWFuYWdlIHRoZSB0YXNrcy4gQ2FsbGJhY2tzIGNhblxuICAgICAqIGF0dGFjaGVkIGFzIGNlcnRhaW4gcHJvcGVydGllcyB0byBsaXN0ZW4gZm9yIHNwZWNpZmljIGV2ZW50cyBkdXJpbmcgdGhlXG4gICAgICogbGlmZWN5Y2xlIG9mIHRoZSBjYXJnb1F1ZXVlIGFuZCBpbm5lciBxdWV1ZS5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gY3JlYXRlIGEgY2FyZ29RdWV1ZSBvYmplY3Qgd2l0aCBwYXlsb2FkIDIgYW5kIGNvbmN1cnJlbmN5IDJcbiAgICAgKiB2YXIgY2FyZ29RdWV1ZSA9IGFzeW5jLmNhcmdvUXVldWUoZnVuY3Rpb24odGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZvciAodmFyIGk9MDsgaTx0YXNrcy5sZW5ndGg7IGkrKykge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coJ2hlbGxvICcgKyB0YXNrc1tpXS5uYW1lKTtcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYWxsYmFjaygpO1xuICAgICAqIH0sIDIsIDIpO1xuICAgICAqXG4gICAgICogLy8gYWRkIHNvbWUgaXRlbXNcbiAgICAgKiBjYXJnb1F1ZXVlLnB1c2goe25hbWU6ICdmb28nfSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGZvbycpO1xuICAgICAqIH0pO1xuICAgICAqIGNhcmdvUXVldWUucHVzaCh7bmFtZTogJ2Jhcid9LCBmdW5jdGlvbihlcnIpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ2ZpbmlzaGVkIHByb2Nlc3NpbmcgYmFyJyk7XG4gICAgICogfSk7XG4gICAgICogY2FyZ29RdWV1ZS5wdXNoKHtuYW1lOiAnYmF6J30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBiYXonKTtcbiAgICAgKiB9KTtcbiAgICAgKiBjYXJnb1F1ZXVlLnB1c2goe25hbWU6ICdib28nfSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGJvbycpO1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIGNhcmdvJDEod29ya2VyLCBjb25jdXJyZW5jeSwgcGF5bG9hZCkge1xuICAgICAgICByZXR1cm4gcXVldWUod29ya2VyLCBjb25jdXJyZW5jeSwgcGF5bG9hZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVkdWNlcyBgY29sbGAgaW50byBhIHNpbmdsZSB2YWx1ZSB1c2luZyBhbiBhc3luYyBgaXRlcmF0ZWVgIHRvIHJldHVybiBlYWNoXG4gICAgICogc3VjY2Vzc2l2ZSBzdGVwLiBgbWVtb2AgaXMgdGhlIGluaXRpYWwgc3RhdGUgb2YgdGhlIHJlZHVjdGlvbi4gVGhpcyBmdW5jdGlvblxuICAgICAqIG9ubHkgb3BlcmF0ZXMgaW4gc2VyaWVzLlxuICAgICAqXG4gICAgICogRm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMsIGl0IG1heSBtYWtlIHNlbnNlIHRvIHNwbGl0IGEgY2FsbCB0byB0aGlzIGZ1bmN0aW9uXG4gICAgICogaW50byBhIHBhcmFsbGVsIG1hcCwgYW5kIHRoZW4gdXNlIHRoZSBub3JtYWwgYEFycmF5LnByb3RvdHlwZS5yZWR1Y2VgIG9uIHRoZVxuICAgICAqIHJlc3VsdHMuIFRoaXMgZnVuY3Rpb24gaXMgZm9yIHNpdHVhdGlvbnMgd2hlcmUgZWFjaCBzdGVwIGluIHRoZSByZWR1Y3Rpb25cbiAgICAgKiBuZWVkcyB0byBiZSBhc3luYzsgaWYgeW91IGNhbiBnZXQgdGhlIGRhdGEgYmVmb3JlIHJlZHVjaW5nIGl0LCB0aGVuIGl0J3NcbiAgICAgKiBwcm9iYWJseSBhIGdvb2QgaWRlYSB0byBkbyBzby5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJlZHVjZVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBhbGlhcyBpbmplY3RcbiAgICAgKiBAYWxpYXMgZm9sZGxcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7Kn0gbWVtbyAtIFRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSByZWR1Y3Rpb24uXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gYXBwbGllZCB0byBlYWNoIGl0ZW0gaW4gdGhlXG4gICAgICogYXJyYXkgdG8gcHJvZHVjZSB0aGUgbmV4dCBzdGVwIGluIHRoZSByZWR1Y3Rpb24uXG4gICAgICogVGhlIGBpdGVyYXRlZWAgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIG5leHQgc3RhdGUgb2YgdGhlIHJlZHVjdGlvbi5cbiAgICAgKiBJZiB0aGUgaXRlcmF0ZWUgY29tcGxldGVzIHdpdGggYW4gZXJyb3IsIHRoZSByZWR1Y3Rpb24gaXMgc3RvcHBlZCBhbmQgdGhlXG4gICAgICogbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZSBlcnJvci5cbiAgICAgKiBJbnZva2VkIHdpdGggKG1lbW8sIGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCBpcyB0aGUgcmVkdWNlZCB2YWx1ZS4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZmlsZTEudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDEwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIGZpbGUyLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAyMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlMy50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMzAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTQudHh0IGRvZXMgbm90IGV4aXN0XG4gICAgICpcbiAgICAgKiBjb25zdCBmaWxlTGlzdCA9IFsnZmlsZTEudHh0JywnZmlsZTIudHh0JywnZmlsZTMudHh0J107XG4gICAgICogY29uc3Qgd2l0aE1pc3NpbmdGaWxlTGlzdCA9IFsnZmlsZTEudHh0JywnZmlsZTIudHh0JywnZmlsZTMudHh0JywgJ2ZpbGU0LnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgY29tcHV0ZXMgdGhlIGZpbGUgc2l6ZSBpbiBieXRlc1xuICAgICAqIC8vIGZpbGUgc2l6ZSBpcyBhZGRlZCB0byB0aGUgbWVtb2l6ZWQgdmFsdWUsIHRoZW4gcmV0dXJuZWRcbiAgICAgKiBmdW5jdGlvbiBnZXRGaWxlU2l6ZUluQnl0ZXMobWVtbywgZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgZnMuc3RhdChmaWxlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsIG1lbW8gKyBzdGF0LnNpemUpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5yZWR1Y2UoZmlsZUxpc3QsIDAsIGdldEZpbGVTaXplSW5CeXRlcywgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyA2MDAwXG4gICAgICogICAgICAgICAvLyB3aGljaCBpcyB0aGUgc3VtIG9mIHRoZSBmaWxlIHNpemVzIG9mIHRoZSB0aHJlZSBmaWxlc1xuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jLnJlZHVjZSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCAwLCBnZXRGaWxlU2l6ZUluQnl0ZXMsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5yZWR1Y2UoZmlsZUxpc3QsIDAsIGdldEZpbGVTaXplSW5CeXRlcylcbiAgICAgKiAudGhlbiggcmVzdWx0ID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgLy8gNjAwMFxuICAgICAqICAgICAvLyB3aGljaCBpcyB0aGUgc3VtIG9mIHRoZSBmaWxlIHNpemVzIG9mIHRoZSB0aHJlZSBmaWxlc1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5yZWR1Y2Uod2l0aE1pc3NpbmdGaWxlTGlzdCwgMCwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMucmVkdWNlKGZpbGVMaXN0LCAwLCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIDYwMDBcbiAgICAgKiAgICAgICAgIC8vIHdoaWNoIGlzIHRoZSBzdW0gb2YgdGhlIGZpbGUgc2l6ZXMgb2YgdGhlIHRocmVlIGZpbGVzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLnJlZHVjZSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCAwLCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAgICAgLy8gWyBFcnJvcjogRU5PRU5UOiBubyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IF1cbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlZHVjZShjb2xsLCBtZW1vLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIF9pdGVyYXRlZSA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG4gICAgICAgIHJldHVybiBlYWNoT2ZTZXJpZXMkMShjb2xsLCAoeCwgaSwgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICBfaXRlcmF0ZWUobWVtbywgeCwgKGVyciwgdikgPT4ge1xuICAgICAgICAgICAgICAgIG1lbW8gPSB2O1xuICAgICAgICAgICAgICAgIGl0ZXJDYihlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVyciA9PiBjYWxsYmFjayhlcnIsIG1lbW8pKTtcbiAgICB9XG4gICAgdmFyIHJlZHVjZSQxID0gYXdhaXRpZnkocmVkdWNlLCA0KTtcblxuICAgIC8qKlxuICAgICAqIFZlcnNpb24gb2YgdGhlIGNvbXBvc2UgZnVuY3Rpb24gdGhhdCBpcyBtb3JlIG5hdHVyYWwgdG8gcmVhZC4gRWFjaCBmdW5jdGlvblxuICAgICAqIGNvbnN1bWVzIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHByZXZpb3VzIGZ1bmN0aW9uLiBJdCBpcyB0aGUgZXF1aXZhbGVudCBvZlxuICAgICAqIFtjb21wb3NlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuY29tcG9zZX0gd2l0aCB0aGUgYXJndW1lbnRzIHJldmVyc2VkLlxuICAgICAqXG4gICAgICogRWFjaCBmdW5jdGlvbiBpcyBleGVjdXRlZCB3aXRoIHRoZSBgdGhpc2AgYmluZGluZyBvZiB0aGUgY29tcG9zZWQgZnVuY3Rpb24uXG4gICAgICpcbiAgICAgKiBAbmFtZSBzZXFcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5jb21wb3NlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuY29tcG9zZX1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHsuLi5Bc3luY0Z1bmN0aW9ufSBmdW5jdGlvbnMgLSB0aGUgYXN5bmNocm9ub3VzIGZ1bmN0aW9ucyB0byBjb21wb3NlXG4gICAgICogQHJldHVybnMge0Z1bmN0aW9ufSBhIGZ1bmN0aW9uIHRoYXQgY29tcG9zZXMgdGhlIGBmdW5jdGlvbnNgIGluIG9yZGVyXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIFJlcXVpcmVzIGxvZGFzaCAob3IgdW5kZXJzY29yZSksIGV4cHJlc3MzIGFuZCBkcmVzZW5kZSdzIG9ybTIuXG4gICAgICogLy8gUGFydCBvZiBhbiBhcHAsIHRoYXQgZmV0Y2hlcyBjYXRzIG9mIHRoZSBsb2dnZWQgdXNlci5cbiAgICAgKiAvLyBUaGlzIGV4YW1wbGUgdXNlcyBgc2VxYCBmdW5jdGlvbiB0byBhdm9pZCBvdmVybmVzdGluZyBhbmQgZXJyb3JcbiAgICAgKiAvLyBoYW5kbGluZyBjbHV0dGVyLlxuICAgICAqIGFwcC5nZXQoJy9jYXRzJywgZnVuY3Rpb24ocmVxdWVzdCwgcmVzcG9uc2UpIHtcbiAgICAgKiAgICAgdmFyIFVzZXIgPSByZXF1ZXN0Lm1vZGVscy5Vc2VyO1xuICAgICAqICAgICBhc3luYy5zZXEoXG4gICAgICogICAgICAgICBVc2VyLmdldC5iaW5kKFVzZXIpLCAgLy8gJ1VzZXIuZ2V0JyBoYXMgc2lnbmF0dXJlIChpZCwgY2FsbGJhY2soZXJyLCBkYXRhKSlcbiAgICAgKiAgICAgICAgIGZ1bmN0aW9uKHVzZXIsIGZuKSB7XG4gICAgICogICAgICAgICAgICAgdXNlci5nZXRDYXRzKGZuKTsgICAgICAvLyAnZ2V0Q2F0cycgaGFzIHNpZ25hdHVyZSAoY2FsbGJhY2soZXJyLCBkYXRhKSlcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgKShyZXEuc2Vzc2lvbi51c2VyX2lkLCBmdW5jdGlvbiAoZXJyLCBjYXRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgICAqICAgICAgICAgICAgIHJlc3BvbnNlLmpzb24oeyBzdGF0dXM6ICdlcnJvcicsIG1lc3NhZ2U6IGVyci5tZXNzYWdlIH0pO1xuICAgICAqICAgICAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgICAgICByZXNwb25zZS5qc29uKHsgc3RhdHVzOiAnb2snLCBtZXNzYWdlOiAnQ2F0cyBmb3VuZCcsIGRhdGE6IGNhdHMgfSk7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH0pO1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHNlcSguLi5mdW5jdGlvbnMpIHtcbiAgICAgICAgdmFyIF9mdW5jdGlvbnMgPSBmdW5jdGlvbnMubWFwKHdyYXBBc3luYyk7XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJncykge1xuICAgICAgICAgICAgdmFyIHRoYXQgPSB0aGlzO1xuXG4gICAgICAgICAgICB2YXIgY2IgPSBhcmdzW2FyZ3MubGVuZ3RoIC0gMV07XG4gICAgICAgICAgICBpZiAodHlwZW9mIGNiID09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBhcmdzLnBvcCgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBjYiA9IHByb21pc2VDYWxsYmFjaygpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZWR1Y2UkMShfZnVuY3Rpb25zLCBhcmdzLCAobmV3YXJncywgZm4sIGl0ZXJDYikgPT4ge1xuICAgICAgICAgICAgICAgIGZuLmFwcGx5KHRoYXQsIG5ld2FyZ3MuY29uY2F0KChlcnIsIC4uLm5leHRhcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZXJDYihlcnIsIG5leHRhcmdzKTtcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKGVyciwgcmVzdWx0cykgPT4gY2IoZXJyLCAuLi5yZXN1bHRzKSk7XG5cbiAgICAgICAgICAgIHJldHVybiBjYltQUk9NSVNFX1NZTUJPTF1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgZnVuY3Rpb24gd2hpY2ggaXMgYSBjb21wb3NpdGlvbiBvZiB0aGUgcGFzc2VkIGFzeW5jaHJvbm91c1xuICAgICAqIGZ1bmN0aW9ucy4gRWFjaCBmdW5jdGlvbiBjb25zdW1lcyB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBmdW5jdGlvbiB0aGF0XG4gICAgICogZm9sbG93cy4gQ29tcG9zaW5nIGZ1bmN0aW9ucyBgZigpYCwgYGcoKWAsIGFuZCBgaCgpYCB3b3VsZCBwcm9kdWNlIHRoZSByZXN1bHRcbiAgICAgKiBvZiBgZihnKGgoKSkpYCwgb25seSB0aGlzIHZlcnNpb24gdXNlcyBjYWxsYmFja3MgdG8gb2J0YWluIHRoZSByZXR1cm4gdmFsdWVzLlxuICAgICAqXG4gICAgICogSWYgdGhlIGxhc3QgYXJndW1lbnQgdG8gdGhlIGNvbXBvc2VkIGZ1bmN0aW9uIGlzIG5vdCBhIGZ1bmN0aW9uLCBhIHByb21pc2VcbiAgICAgKiBpcyByZXR1cm5lZCB3aGVuIHlvdSBjYWxsIGl0LlxuICAgICAqXG4gICAgICogRWFjaCBmdW5jdGlvbiBpcyBleGVjdXRlZCB3aXRoIHRoZSBgdGhpc2AgYmluZGluZyBvZiB0aGUgY29tcG9zZWQgZnVuY3Rpb24uXG4gICAgICpcbiAgICAgKiBAbmFtZSBjb21wb3NlXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7Li4uQXN5bmNGdW5jdGlvbn0gZnVuY3Rpb25zIC0gdGhlIGFzeW5jaHJvbm91cyBmdW5jdGlvbnMgdG8gY29tcG9zZVxuICAgICAqIEByZXR1cm5zIHtGdW5jdGlvbn0gYW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgaXMgdGhlIGNvbXBvc2VkXG4gICAgICogYXN5bmNocm9ub3VzIGBmdW5jdGlvbnNgXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGZ1bmN0aW9uIGFkZDEobiwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBuICsgMSk7XG4gICAgICogICAgIH0sIDEwKTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiBmdW5jdGlvbiBtdWwzKG4sIGNhbGxiYWNrKSB7XG4gICAgICogICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgbiAqIDMpO1xuICAgICAqICAgICB9LCAxMCk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogdmFyIGFkZDFtdWwzID0gYXN5bmMuY29tcG9zZShtdWwzLCBhZGQxKTtcbiAgICAgKiBhZGQxbXVsMyg0LCBmdW5jdGlvbiAoZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgMTVcbiAgICAgKiB9KTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBjb21wb3NlKC4uLmFyZ3MpIHtcbiAgICAgICAgcmV0dXJuIHNlcSguLi5hcmdzLnJldmVyc2UoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2BtYXBgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIG1hcExpbWl0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMubWFwXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfVxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIHRoZSB0cmFuc2Zvcm1lZCBpdGVtLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCB3aGVuIGFsbCBgaXRlcmF0ZWVgXG4gICAgICogZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0cyBpcyBhbiBhcnJheSBvZiB0aGVcbiAgICAgKiB0cmFuc2Zvcm1lZCBpdGVtcyBmcm9tIHRoZSBgY29sbGAuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHRzKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBtYXBMaW1pdCAoY29sbCwgbGltaXQsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2FzeW5jTWFwKGVhY2hPZkxpbWl0KGxpbWl0KSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgbWFwTGltaXQkMSA9IGF3YWl0aWZ5KG1hcExpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgY29uY2F0YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmNvbmNhdH0gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBjb25jYXRMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmNvbmNhdF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmNvbmNhdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBhbGlhcyBmbGF0TWFwTGltaXRcbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYCxcbiAgICAgKiB3aGljaCBzaG91bGQgdXNlIGFuIGFycmF5IGFzIGl0cyByZXN1bHQuIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHRzIGlzIGFuIGFycmF5XG4gICAgICogY29udGFpbmluZyB0aGUgY29uY2F0ZW5hdGVkIHJlc3VsdHMgb2YgdGhlIGBpdGVyYXRlZWAgZnVuY3Rpb24uIEludm9rZWQgd2l0aFxuICAgICAqIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIEEgUHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICovXG4gICAgZnVuY3Rpb24gY29uY2F0TGltaXQoY29sbCwgbGltaXQsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgX2l0ZXJhdGVlID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgcmV0dXJuIG1hcExpbWl0JDEoY29sbCwgbGltaXQsICh2YWwsIGl0ZXJDYikgPT4ge1xuICAgICAgICAgICAgX2l0ZXJhdGVlKHZhbCwgKGVyciwgLi4uYXJncykgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBpdGVyQ2IoZXJyKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gaXRlckNiKGVyciwgYXJncyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgKGVyciwgbWFwUmVzdWx0cykgPT4ge1xuICAgICAgICAgICAgdmFyIHJlc3VsdCA9IFtdO1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtYXBSZXN1bHRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKG1hcFJlc3VsdHNbaV0pIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LmNvbmNhdCguLi5tYXBSZXN1bHRzW2ldKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIsIHJlc3VsdCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICB2YXIgY29uY2F0TGltaXQkMSA9IGF3YWl0aWZ5KGNvbmNhdExpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIEFwcGxpZXMgYGl0ZXJhdGVlYCB0byBlYWNoIGl0ZW0gaW4gYGNvbGxgLCBjb25jYXRlbmF0aW5nIHRoZSByZXN1bHRzLiBSZXR1cm5zXG4gICAgICogdGhlIGNvbmNhdGVuYXRlZCBsaXN0LiBUaGUgYGl0ZXJhdGVlYHMgYXJlIGNhbGxlZCBpbiBwYXJhbGxlbCwgYW5kIHRoZVxuICAgICAqIHJlc3VsdHMgYXJlIGNvbmNhdGVuYXRlZCBhcyB0aGV5IHJldHVybi4gVGhlIHJlc3VsdHMgYXJyYXkgd2lsbCBiZSByZXR1cm5lZCBpblxuICAgICAqIHRoZSBvcmlnaW5hbCBvcmRlciBvZiBgY29sbGAgcGFzc2VkIHRvIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uLlxuICAgICAqXG4gICAgICogQG5hbWUgY29uY2F0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAYWxpYXMgZmxhdE1hcFxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpbiBgY29sbGAsXG4gICAgICogd2hpY2ggc2hvdWxkIHVzZSBhbiBhcnJheSBhcyBpdHMgcmVzdWx0LiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0cyBpcyBhbiBhcnJheVxuICAgICAqIGNvbnRhaW5pbmcgdGhlIGNvbmNhdGVuYXRlZCByZXN1bHRzIG9mIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uLiBJbnZva2VkIHdpdGhcbiAgICAgKiAoZXJyLCByZXN1bHRzKS5cbiAgICAgKiBAcmV0dXJucyBBIFByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBkaXIxIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTEudHh0LCBmaWxlMi50eHRcbiAgICAgKiAvLyBkaXIyIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTMudHh0LCBmaWxlNC50eHRcbiAgICAgKiAvLyBkaXIzIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTUudHh0XG4gICAgICogLy8gZGlyNCBkb2VzIG5vdCBleGlzdFxuICAgICAqXG4gICAgICogbGV0IGRpcmVjdG9yeUxpc3QgPSBbJ2RpcjEnLCdkaXIyJywnZGlyMyddO1xuICAgICAqIGxldCB3aXRoTWlzc2luZ0RpcmVjdG9yeUxpc3QgPSBbJ2RpcjEnLCdkaXIyJywnZGlyMycsICdkaXI0J107XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5jb25jYXQoZGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpciwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgaWYgKGVycikge1xuICAgICAqICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAvLyBbICdmaWxlMS50eHQnLCAnZmlsZTIudHh0JywgJ2ZpbGUzLnR4dCcsICdmaWxlNC50eHQnLCBmaWxlNS50eHQgXVxuICAgICAqICAgIH1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMuY29uY2F0KHdpdGhNaXNzaW5nRGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpciwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgaWYgKGVycikge1xuICAgICAqICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICAgICAvLyBzaW5jZSBkaXI0IGRvZXMgbm90IGV4aXN0XG4gICAgICogICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5jb25jYXQoZGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpcilcbiAgICAgKiAudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIFsgJ2ZpbGUxLnR4dCcsICdmaWxlMi50eHQnLCAnZmlsZTMudHh0JywgJ2ZpbGU0LnR4dCcsIGZpbGU1LnR4dCBdXG4gICAgICogfSkuY2F0Y2goZXJyID0+IHtcbiAgICAgKiAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jLmNvbmNhdCh3aXRoTWlzc2luZ0RpcmVjdG9yeUxpc3QsIGZzLnJlYWRkaXIpXG4gICAgICogLnRoZW4ocmVzdWx0cyA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIC8vIHNpbmNlIGRpcjQgZG9lcyBub3QgZXhpc3RcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5jb25jYXQoZGlyZWN0b3J5TGlzdCwgZnMucmVhZGRpcik7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgICAgIC8vIFsgJ2ZpbGUxLnR4dCcsICdmaWxlMi50eHQnLCAnZmlsZTMudHh0JywgJ2ZpbGU0LnR4dCcsIGZpbGU1LnR4dCBdXG4gICAgICogICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5jb25jYXQod2l0aE1pc3NpbmdEaXJlY3RvcnlMaXN0LCBmcy5yZWFkZGlyKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICAgICAgLy8gc2luY2UgZGlyNCBkb2VzIG5vdCBleGlzdFxuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gY29uY2F0KGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gY29uY2F0TGltaXQkMShjb2xsLCBJbmZpbml0eSwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgY29uY2F0JDEgPSBhd2FpdGlmeShjb25jYXQsIDMpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2Bjb25jYXRgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuY29uY2F0fSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBjb25jYXRTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5jb25jYXRde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5jb25jYXR9XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAYWxpYXMgZmxhdE1hcFNlcmllc1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpbiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGFuIGFycmF5IGFuIGFycmF5IG9mIHJlc3VsdHMuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIFJlc3VsdHMgaXMgYW4gYXJyYXlcbiAgICAgKiBjb250YWluaW5nIHRoZSBjb25jYXRlbmF0ZWQgcmVzdWx0cyBvZiB0aGUgYGl0ZXJhdGVlYCBmdW5jdGlvbi4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMgQSBQcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBjb25jYXRTZXJpZXMoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBjb25jYXRMaW1pdCQxKGNvbGwsIDEsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGNvbmNhdFNlcmllcyQxID0gYXdhaXRpZnkoY29uY2F0U2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBmdW5jdGlvbiB0aGF0IHdoZW4gY2FsbGVkLCBjYWxscy1iYWNrIHdpdGggdGhlIHZhbHVlcyBwcm92aWRlZC5cbiAgICAgKiBVc2VmdWwgYXMgdGhlIGZpcnN0IGZ1bmN0aW9uIGluIGEgW2B3YXRlcmZhbGxgXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cud2F0ZXJmYWxsfSwgb3IgZm9yIHBsdWdnaW5nIHZhbHVlcyBpbiB0b1xuICAgICAqIFtgYXV0b2Bde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5hdXRvfS5cbiAgICAgKlxuICAgICAqIEBuYW1lIGNvbnN0YW50XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0gey4uLip9IGFyZ3VtZW50cy4uLiAtIEFueSBudW1iZXIgb2YgYXJndW1lbnRzIHRvIGF1dG9tYXRpY2FsbHkgaW52b2tlXG4gICAgICogY2FsbGJhY2sgd2l0aC5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gUmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgd2hlbiBpbnZva2VkLCBhdXRvbWF0aWNhbGx5XG4gICAgICogaW52b2tlcyB0aGUgY2FsbGJhY2sgd2l0aCB0aGUgcHJldmlvdXMgZ2l2ZW4gYXJndW1lbnRzLlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBhc3luYy53YXRlcmZhbGwoW1xuICAgICAqICAgICBhc3luYy5jb25zdGFudCg0MiksXG4gICAgICogICAgIGZ1bmN0aW9uICh2YWx1ZSwgbmV4dCkge1xuICAgICAqICAgICAgICAgLy8gdmFsdWUgPT09IDQyXG4gICAgICogICAgIH0sXG4gICAgICogICAgIC8vLi4uXG4gICAgICogXSwgY2FsbGJhY2spO1xuICAgICAqXG4gICAgICogYXN5bmMud2F0ZXJmYWxsKFtcbiAgICAgKiAgICAgYXN5bmMuY29uc3RhbnQoZmlsZW5hbWUsIFwidXRmOFwiKSxcbiAgICAgKiAgICAgZnMucmVhZEZpbGUsXG4gICAgICogICAgIGZ1bmN0aW9uIChmaWxlRGF0YSwgbmV4dCkge1xuICAgICAqICAgICAgICAgLy8uLi5cbiAgICAgKiAgICAgfVxuICAgICAqICAgICAvLy4uLlxuICAgICAqIF0sIGNhbGxiYWNrKTtcbiAgICAgKlxuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICBob3N0bmFtZTogYXN5bmMuY29uc3RhbnQoXCJodHRwczovL3NlcnZlci5uZXQvXCIpLFxuICAgICAqICAgICBwb3J0OiBmaW5kRnJlZVBvcnQsXG4gICAgICogICAgIGxhdW5jaFNlcnZlcjogW1wiaG9zdG5hbWVcIiwgXCJwb3J0XCIsIGZ1bmN0aW9uIChvcHRpb25zLCBjYikge1xuICAgICAqICAgICAgICAgc3RhcnRTZXJ2ZXIob3B0aW9ucywgY2IpO1xuICAgICAqICAgICB9XSxcbiAgICAgKiAgICAgLy8uLi5cbiAgICAgKiB9LCBjYWxsYmFjayk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gY29uc3RhbnQoLi4uYXJncykge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKC4uLmlnbm9yZWRBcmdzLyosIGNhbGxiYWNrKi8pIHtcbiAgICAgICAgICAgIHZhciBjYWxsYmFjayA9IGlnbm9yZWRBcmdzLnBvcCgpO1xuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG51bGwsIC4uLmFyZ3MpO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIF9jcmVhdGVUZXN0ZXIoY2hlY2ssIGdldFJlc3VsdCkge1xuICAgICAgICByZXR1cm4gKGVhY2hmbiwgYXJyLCBfaXRlcmF0ZWUsIGNiKSA9PiB7XG4gICAgICAgICAgICB2YXIgdGVzdFBhc3NlZCA9IGZhbHNlO1xuICAgICAgICAgICAgdmFyIHRlc3RSZXN1bHQ7XG4gICAgICAgICAgICBjb25zdCBpdGVyYXRlZSA9IHdyYXBBc3luYyhfaXRlcmF0ZWUpO1xuICAgICAgICAgICAgZWFjaGZuKGFyciwgKHZhbHVlLCBfLCBjYWxsYmFjaykgPT4ge1xuICAgICAgICAgICAgICAgIGl0ZXJhdGVlKHZhbHVlLCAoZXJyLCByZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVyciB8fCBlcnIgPT09IGZhbHNlKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoY2hlY2socmVzdWx0KSAmJiAhdGVzdFJlc3VsdCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UmVzdWx0ID0gZ2V0UmVzdWx0KHRydWUsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhudWxsLCBicmVha0xvb3ApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LCBlcnIgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYihlcnIpO1xuICAgICAgICAgICAgICAgIGNiKG51bGwsIHRlc3RQYXNzZWQgPyB0ZXN0UmVzdWx0IDogZ2V0UmVzdWx0KGZhbHNlKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmaXJzdCB2YWx1ZSBpbiBgY29sbGAgdGhhdCBwYXNzZXMgYW4gYXN5bmMgdHJ1dGggdGVzdC4gVGhlXG4gICAgICogYGl0ZXJhdGVlYCBpcyBhcHBsaWVkIGluIHBhcmFsbGVsLCBtZWFuaW5nIHRoZSBmaXJzdCBpdGVyYXRlZSB0byByZXR1cm5cbiAgICAgKiBgdHJ1ZWAgd2lsbCBmaXJlIHRoZSBkZXRlY3QgYGNhbGxiYWNrYCB3aXRoIHRoYXQgcmVzdWx0LiBUaGF0IG1lYW5zIHRoZVxuICAgICAqIHJlc3VsdCBtaWdodCBub3QgYmUgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIG9yaWdpbmFsIGBjb2xsYCAoaW4gdGVybXMgb2Ygb3JkZXIpXG4gICAgICogdGhhdCBwYXNzZXMgdGhlIHRlc3QuXG5cbiAgICAgKiBJZiBvcmRlciB3aXRoaW4gdGhlIG9yaWdpbmFsIGBjb2xsYCBpcyBpbXBvcnRhbnQsIHRoZW4gbG9vayBhdFxuICAgICAqIFtgZGV0ZWN0U2VyaWVzYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmRldGVjdFNlcmllc30uXG4gICAgICpcbiAgICAgKiBAbmFtZSBkZXRlY3RcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAYWxpYXMgZmluZFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uc1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgbXVzdCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiB2YWx1ZSBhcyBpdHMgcmVzdWx0LlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhcyBzb29uIGFzIGFueVxuICAgICAqIGl0ZXJhdGVlIHJldHVybnMgYHRydWVgLCBvciBhZnRlciBhbGwgdGhlIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuXG4gICAgICogUmVzdWx0IHdpbGwgYmUgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIGFycmF5IHRoYXQgcGFzc2VzIHRoZSB0cnV0aCB0ZXN0XG4gICAgICogKGl0ZXJhdGVlKSBvciB0aGUgdmFsdWUgYHVuZGVmaW5lZGAgaWYgbm9uZSBwYXNzZWQuIEludm9rZWQgd2l0aFxuICAgICAqIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IGNoZWNrcyBpZiBhIGZpbGUgZXhpc3RzXG4gICAgICogZnVuY3Rpb24gZmlsZUV4aXN0cyhmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgIGZzLmFjY2VzcyhmaWxlLCBmcy5jb25zdGFudHMuRl9PSywgKGVycikgPT4ge1xuICAgICAqICAgICAgICBjYWxsYmFjayhudWxsLCAhZXJyKTtcbiAgICAgKiAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiBhc3luYy5kZXRlY3QoWydmaWxlMy50eHQnLCdmaWxlMi50eHQnLCdkaXIxL2ZpbGUxLnR4dCddLCBmaWxlRXhpc3RzLFxuICAgICAqICAgIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgIC8vIGRpcjEvZmlsZTEudHh0XG4gICAgICogICAgICAgIC8vIHJlc3VsdCBub3cgZXF1YWxzIHRoZSBmaXJzdCBmaWxlIGluIHRoZSBsaXN0IHRoYXQgZXhpc3RzXG4gICAgICogICAgfVxuICAgICAqKTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZGV0ZWN0KFsnZmlsZTMudHh0JywnZmlsZTIudHh0JywnZGlyMS9maWxlMS50eHQnXSwgZmlsZUV4aXN0cylcbiAgICAgKiAudGhlbihyZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyBkaXIxL2ZpbGUxLnR4dFxuICAgICAqICAgICAvLyByZXN1bHQgbm93IGVxdWFscyB0aGUgZmlyc3QgZmlsZSBpbiB0aGUgbGlzdCB0aGF0IGV4aXN0c1xuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy5kZXRlY3QoWydmaWxlMy50eHQnLCdmaWxlMi50eHQnLCdkaXIxL2ZpbGUxLnR4dCddLCBmaWxlRXhpc3RzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyBkaXIxL2ZpbGUxLnR4dFxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgdGhlIGZpbGUgaW4gdGhlIGxpc3QgdGhhdCBleGlzdHNcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gZGV0ZWN0KGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3Rlcihib29sID0+IGJvb2wsIChyZXMsIGl0ZW0pID0+IGl0ZW0pKGVhY2hPZiQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBkZXRlY3QkMSA9IGF3YWl0aWZ5KGRldGVjdCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGRldGVjdGBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5kZXRlY3R9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBkZXRlY3RMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmRldGVjdF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmRldGVjdH1cbiAgICAgKiBAYWxpYXMgZmluZExpbWl0XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25zXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgbXVzdCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiB2YWx1ZSBhcyBpdHMgcmVzdWx0LlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhcyBzb29uIGFzIGFueVxuICAgICAqIGl0ZXJhdGVlIHJldHVybnMgYHRydWVgLCBvciBhZnRlciBhbGwgdGhlIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuXG4gICAgICogUmVzdWx0IHdpbGwgYmUgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIGFycmF5IHRoYXQgcGFzc2VzIHRoZSB0cnV0aCB0ZXN0XG4gICAgICogKGl0ZXJhdGVlKSBvciB0aGUgdmFsdWUgYHVuZGVmaW5lZGAgaWYgbm9uZSBwYXNzZWQuIEludm9rZWQgd2l0aFxuICAgICAqIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZGV0ZWN0TGltaXQoY29sbCwgbGltaXQsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3Rlcihib29sID0+IGJvb2wsIChyZXMsIGl0ZW0pID0+IGl0ZW0pKGVhY2hPZkxpbWl0KGxpbWl0KSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgZGV0ZWN0TGltaXQkMSA9IGF3YWl0aWZ5KGRldGVjdExpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzYW1lIGFzIFtgZGV0ZWN0YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmRldGVjdH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZGV0ZWN0U2VyaWVzXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZGV0ZWN0XXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZGV0ZWN0fVxuICAgICAqIEBhbGlhcyBmaW5kU2VyaWVzXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25zXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBpdGVyYXRlZSBtdXN0IGNvbXBsZXRlIHdpdGggYSBib29sZWFuIHZhbHVlIGFzIGl0cyByZXN1bHQuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFzIHNvb24gYXMgYW55XG4gICAgICogaXRlcmF0ZWUgcmV0dXJucyBgdHJ1ZWAsIG9yIGFmdGVyIGFsbCB0aGUgYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgYXJyYXkgdGhhdCBwYXNzZXMgdGhlIHRydXRoIHRlc3RcbiAgICAgKiAoaXRlcmF0ZWUpIG9yIHRoZSB2YWx1ZSBgdW5kZWZpbmVkYCBpZiBub25lIHBhc3NlZC4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBkZXRlY3RTZXJpZXMoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBfY3JlYXRlVGVzdGVyKGJvb2wgPT4gYm9vbCwgKHJlcywgaXRlbSkgPT4gaXRlbSkoZWFjaE9mTGltaXQoMSksIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICB2YXIgZGV0ZWN0U2VyaWVzJDEgPSBhd2FpdGlmeShkZXRlY3RTZXJpZXMsIDMpO1xuXG4gICAgZnVuY3Rpb24gY29uc29sZUZ1bmMobmFtZSkge1xuICAgICAgICByZXR1cm4gKGZuLCAuLi5hcmdzKSA9PiB3cmFwQXN5bmMoZm4pKC4uLmFyZ3MsIChlcnIsIC4uLnJlc3VsdEFyZ3MpID0+IHtcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICBpZiAodHlwZW9mIGNvbnNvbGUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgICAgICAgICAgIGlmIChjb25zb2xlLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGNvbnNvbGVbbmFtZV0pIHsgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0QXJncy5mb3JFYWNoKHggPT4gY29uc29sZVtuYW1lXSh4KSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgdGhlIHJlc3VsdCBvZiBhbiBbYGFzeW5jYCBmdW5jdGlvbl17QGxpbmsgQXN5bmNGdW5jdGlvbn0gdG8gdGhlXG4gICAgICogYGNvbnNvbGVgIHVzaW5nIGBjb25zb2xlLmRpcmAgdG8gZGlzcGxheSB0aGUgcHJvcGVydGllcyBvZiB0aGUgcmVzdWx0aW5nIG9iamVjdC5cbiAgICAgKiBPbmx5IHdvcmtzIGluIE5vZGUuanMgb3IgaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IGBjb25zb2xlLmRpcmAgYW5kXG4gICAgICogYGNvbnNvbGUuZXJyb3JgIChzdWNoIGFzIEZGIGFuZCBDaHJvbWUpLlxuICAgICAqIElmIG11bHRpcGxlIGFyZ3VtZW50cyBhcmUgcmV0dXJuZWQgZnJvbSB0aGUgYXN5bmMgZnVuY3Rpb24sXG4gICAgICogYGNvbnNvbGUuZGlyYCBpcyBjYWxsZWQgb24gZWFjaCBhcmd1bWVudCBpbiBvcmRlci5cbiAgICAgKlxuICAgICAqIEBuYW1lIGRpclxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOlV0aWxzXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBVdGlsXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBmdW5jdGlvbiAtIFRoZSBmdW5jdGlvbiB5b3Ugd2FudCB0byBldmVudHVhbGx5IGFwcGx5XG4gICAgICogYWxsIGFyZ3VtZW50cyB0by5cbiAgICAgKiBAcGFyYW0gey4uLip9IGFyZ3VtZW50cy4uLiAtIEFueSBudW1iZXIgb2YgYXJndW1lbnRzIHRvIGFwcGx5IHRvIHRoZSBmdW5jdGlvbi5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gaW4gYSBtb2R1bGVcbiAgICAgKiB2YXIgaGVsbG8gPSBmdW5jdGlvbihuYW1lLCBjYWxsYmFjaykge1xuICAgICAqICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwge2hlbGxvOiBuYW1lfSk7XG4gICAgICogICAgIH0sIDEwMDApO1xuICAgICAqIH07XG4gICAgICpcbiAgICAgKiAvLyBpbiB0aGUgbm9kZSByZXBsXG4gICAgICogbm9kZT4gYXN5bmMuZGlyKGhlbGxvLCAnd29ybGQnKTtcbiAgICAgKiB7aGVsbG86ICd3b3JsZCd9XG4gICAgICovXG4gICAgdmFyIGRpciA9IGNvbnNvbGVGdW5jKCdkaXInKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBwb3N0LWNoZWNrIHZlcnNpb24gb2YgW2B3aGlsc3RgXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cud2hpbHN0fS4gVG8gcmVmbGVjdCB0aGUgZGlmZmVyZW5jZSBpblxuICAgICAqIHRoZSBvcmRlciBvZiBvcGVyYXRpb25zLCB0aGUgYXJndW1lbnRzIGB0ZXN0YCBhbmQgYGl0ZXJhdGVlYCBhcmUgc3dpdGNoZWQuXG4gICAgICpcbiAgICAgKiBgZG9XaGlsc3RgIGlzIHRvIGB3aGlsc3RgIGFzIGBkbyB3aGlsZWAgaXMgdG8gYHdoaWxlYCBpbiBwbGFpbiBKYXZhU2NyaXB0LlxuICAgICAqXG4gICAgICogQG5hbWUgZG9XaGlsc3RcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy53aGlsc3Rde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy53aGlsc3R9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHdoaWNoIGlzIGNhbGxlZCBlYWNoIHRpbWUgYHRlc3RgXG4gICAgICogcGFzc2VzLiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IHRlc3QgLSBhc3luY2hyb25vdXMgdHJ1dGggdGVzdCB0byBwZXJmb3JtIGFmdGVyIGVhY2hcbiAgICAgKiBleGVjdXRpb24gb2YgYGl0ZXJhdGVlYC4gSW52b2tlZCB3aXRoICguLi5hcmdzLCBjYWxsYmFjayksIHdoZXJlIGAuLi5hcmdzYCBhcmUgdGhlXG4gICAgICogbm9uLWVycm9yIGFyZ3MgZnJvbSB0aGUgcHJldmlvdXMgY2FsbGJhY2sgb2YgYGl0ZXJhdGVlYC5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgdGhlIHRlc3RcbiAgICAgKiBmdW5jdGlvbiBoYXMgZmFpbGVkIGFuZCByZXBlYXRlZCBleGVjdXRpb24gb2YgYGl0ZXJhdGVlYCBoYXMgc3RvcHBlZC5cbiAgICAgKiBgY2FsbGJhY2tgIHdpbGwgYmUgcGFzc2VkIGFuIGVycm9yIGFuZCBhbnkgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgZmluYWxcbiAgICAgKiBgaXRlcmF0ZWVgJ3MgY2FsbGJhY2suIEludm9rZWQgd2l0aCAoZXJyLCBbcmVzdWx0c10pO1xuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGRvV2hpbHN0KGl0ZXJhdGVlLCB0ZXN0LCBjYWxsYmFjaykge1xuICAgICAgICBjYWxsYmFjayA9IG9ubHlPbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIF9mbiA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG4gICAgICAgIHZhciBfdGVzdCA9IHdyYXBBc3luYyh0ZXN0KTtcbiAgICAgICAgdmFyIHJlc3VsdHM7XG5cbiAgICAgICAgZnVuY3Rpb24gbmV4dChlcnIsIC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIHJlc3VsdHMgPSBhcmdzO1xuICAgICAgICAgICAgX3Rlc3QoLi4uYXJncywgY2hlY2spO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gY2hlY2soZXJyLCB0cnV0aCkge1xuICAgICAgICAgICAgaWYgKGVycikgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICBpZiAoZXJyID09PSBmYWxzZSkgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKCF0cnV0aCkgcmV0dXJuIGNhbGxiYWNrKG51bGwsIC4uLnJlc3VsdHMpO1xuICAgICAgICAgICAgX2ZuKG5leHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNoZWNrKG51bGwsIHRydWUpO1xuICAgIH1cblxuICAgIHZhciBkb1doaWxzdCQxID0gYXdhaXRpZnkoZG9XaGlsc3QsIDMpO1xuXG4gICAgLyoqXG4gICAgICogTGlrZSBbJ2RvV2hpbHN0J117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LmRvV2hpbHN0fSwgZXhjZXB0IHRoZSBgdGVzdGAgaXMgaW52ZXJ0ZWQuIE5vdGUgdGhlXG4gICAgICogYXJndW1lbnQgb3JkZXJpbmcgZGlmZmVycyBmcm9tIGB1bnRpbGAuXG4gICAgICpcbiAgICAgKiBAbmFtZSBkb1VudGlsXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZG9XaGlsc3Rde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5kb1doaWxzdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHdoaWNoIGlzIGNhbGxlZCBlYWNoIHRpbWVcbiAgICAgKiBgdGVzdGAgZmFpbHMuIEludm9rZWQgd2l0aCAoY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gdGVzdCAtIGFzeW5jaHJvbm91cyB0cnV0aCB0ZXN0IHRvIHBlcmZvcm0gYWZ0ZXIgZWFjaFxuICAgICAqIGV4ZWN1dGlvbiBvZiBgaXRlcmF0ZWVgLiBJbnZva2VkIHdpdGggKC4uLmFyZ3MsIGNhbGxiYWNrKSwgd2hlcmUgYC4uLmFyZ3NgIGFyZSB0aGVcbiAgICAgKiBub24tZXJyb3IgYXJncyBmcm9tIHRoZSBwcmV2aW91cyBjYWxsYmFjayBvZiBgaXRlcmF0ZWVgXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIHRoZSB0ZXN0XG4gICAgICogZnVuY3Rpb24gaGFzIHBhc3NlZCBhbmQgcmVwZWF0ZWQgZXhlY3V0aW9uIG9mIGBpdGVyYXRlZWAgaGFzIHN0b3BwZWQuIGBjYWxsYmFja2BcbiAgICAgKiB3aWxsIGJlIHBhc3NlZCBhbiBlcnJvciBhbmQgYW55IGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIGZpbmFsIGBpdGVyYXRlZWAnc1xuICAgICAqIGNhbGxiYWNrLiBJbnZva2VkIHdpdGggKGVyciwgW3Jlc3VsdHNdKTtcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBkb1VudGlsKGl0ZXJhdGVlLCB0ZXN0LCBjYWxsYmFjaykge1xuICAgICAgICBjb25zdCBfdGVzdCA9IHdyYXBBc3luYyh0ZXN0KTtcbiAgICAgICAgcmV0dXJuIGRvV2hpbHN0JDEoaXRlcmF0ZWUsICguLi5hcmdzKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjYiA9IGFyZ3MucG9wKCk7XG4gICAgICAgICAgICBfdGVzdCguLi5hcmdzLCAoZXJyLCB0cnV0aCkgPT4gY2IgKGVyciwgIXRydXRoKSk7XG4gICAgICAgIH0sIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfd2l0aG91dEluZGV4KGl0ZXJhdGVlKSB7XG4gICAgICAgIHJldHVybiAodmFsdWUsIGluZGV4LCBjYWxsYmFjaykgPT4gaXRlcmF0ZWUodmFsdWUsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBcHBsaWVzIHRoZSBmdW5jdGlvbiBgaXRlcmF0ZWVgIHRvIGVhY2ggaXRlbSBpbiBgY29sbGAsIGluIHBhcmFsbGVsLlxuICAgICAqIFRoZSBgaXRlcmF0ZWVgIGlzIGNhbGxlZCB3aXRoIGFuIGl0ZW0gZnJvbSB0aGUgbGlzdCwgYW5kIGEgY2FsbGJhY2sgZm9yIHdoZW5cbiAgICAgKiBpdCBoYXMgZmluaXNoZWQuIElmIHRoZSBgaXRlcmF0ZWVgIHBhc3NlcyBhbiBlcnJvciB0byBpdHMgYGNhbGxiYWNrYCwgdGhlXG4gICAgICogbWFpbiBgY2FsbGJhY2tgIChmb3IgdGhlIGBlYWNoYCBmdW5jdGlvbikgaXMgaW1tZWRpYXRlbHkgY2FsbGVkIHdpdGggdGhlXG4gICAgICogZXJyb3IuXG4gICAgICpcbiAgICAgKiBOb3RlLCB0aGF0IHNpbmNlIHRoaXMgZnVuY3Rpb24gYXBwbGllcyBgaXRlcmF0ZWVgIHRvIGVhY2ggaXRlbSBpbiBwYXJhbGxlbCxcbiAgICAgKiB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGUgaXRlcmF0ZWUgZnVuY3Rpb25zIHdpbGwgY29tcGxldGUgaW4gb3JkZXIuXG4gICAgICpcbiAgICAgKiBAbmFtZSBlYWNoXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGFsaWFzIGZvckVhY2hcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0b1xuICAgICAqIGVhY2ggaXRlbSBpbiBgY29sbGAuIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIFRoZSBhcnJheSBpbmRleCBpcyBub3QgcGFzc2VkIHRvIHRoZSBpdGVyYXRlZS5cbiAgICAgKiBJZiB5b3UgbmVlZCB0aGUgaW5kZXgsIHVzZSBgZWFjaE9mYC5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZGlyMSBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUxLnR4dCwgZmlsZTIudHh0XG4gICAgICogLy8gZGlyMiBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUzLnR4dCwgZmlsZTQudHh0XG4gICAgICogLy8gZGlyMyBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGU1LnR4dFxuICAgICAqIC8vIGRpcjQgZG9lcyBub3QgZXhpc3RcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVMaXN0ID0gWyAnZGlyMS9maWxlMi50eHQnLCAnZGlyMi9maWxlMy50eHQnLCAnZGlyL2ZpbGU1LnR4dCddO1xuICAgICAqIGNvbnN0IHdpdGhNaXNzaW5nRmlsZUxpc3QgPSBbJ2RpcjEvZmlsZTEudHh0JywgJ2RpcjQvZmlsZTIudHh0J107XG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBkZWxldGVzIGEgZmlsZVxuICAgICAqIGNvbnN0IGRlbGV0ZUZpbGUgPSBmdW5jdGlvbihmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy51bmxpbmsoZmlsZSwgY2FsbGJhY2spO1xuICAgICAqIH07XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5lYWNoKGZpbGVMaXN0LCBkZWxldGVGaWxlLCBmdW5jdGlvbihlcnIpIHtcbiAgICAgKiAgICAgaWYoIGVyciApIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZygnQWxsIGZpbGVzIGhhdmUgYmVlbiBkZWxldGVkIHN1Y2Nlc3NmdWxseScpO1xuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jLmVhY2god2l0aE1pc3NpbmdGaWxlTGlzdCwgZGVsZXRlRmlsZSwgZnVuY3Rpb24oZXJyKXtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgLy8gWyBFcnJvcjogRU5PRU5UOiBubyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IF1cbiAgICAgKiAgICAgLy8gc2luY2UgZGlyNC9maWxlMi50eHQgZG9lcyBub3QgZXhpc3RcbiAgICAgKiAgICAgLy8gZGlyMS9maWxlMS50eHQgY291bGQgaGF2ZSBiZWVuIGRlbGV0ZWRcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZWFjaChmaWxlTGlzdCwgZGVsZXRlRmlsZSlcbiAgICAgKiAudGhlbiggKCkgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnQWxsIGZpbGVzIGhhdmUgYmVlbiBkZWxldGVkIHN1Y2Nlc3NmdWxseScpO1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgSGFuZGxpbmdcbiAgICAgKiBhc3luYy5lYWNoKGZpbGVMaXN0LCBkZWxldGVGaWxlKVxuICAgICAqIC50aGVuKCAoKSA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdBbGwgZmlsZXMgaGF2ZSBiZWVuIGRlbGV0ZWQgc3VjY2Vzc2Z1bGx5Jyk7XG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIC8vIHNpbmNlIGRpcjQvZmlsZTIudHh0IGRvZXMgbm90IGV4aXN0XG4gICAgICogICAgIC8vIGRpcjEvZmlsZTEudHh0IGNvdWxkIGhhdmUgYmVlbiBkZWxldGVkXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGF3YWl0IGFzeW5jLmVhY2goZmlsZXMsIGRlbGV0ZUZpbGUpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBIYW5kbGluZ1xuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGF3YWl0IGFzeW5jLmVhY2god2l0aE1pc3NpbmdGaWxlTGlzdCwgZGVsZXRlRmlsZSk7XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgICAgICAvLyBzaW5jZSBkaXI0L2ZpbGUyLnR4dCBkb2VzIG5vdCBleGlzdFxuICAgICAqICAgICAgICAgLy8gZGlyMS9maWxlMS50eHQgY291bGQgaGF2ZSBiZWVuIGRlbGV0ZWRcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGVhY2hMaW1pdChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIGVhY2hPZiQxKGNvbGwsIF93aXRob3V0SW5kZXgod3JhcEFzeW5jKGl0ZXJhdGVlKSksIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICB2YXIgZWFjaCA9IGF3YWl0aWZ5KGVhY2hMaW1pdCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGVhY2hgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaH0gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBlYWNoTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5lYWNoXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaH1cbiAgICAgKiBAYWxpYXMgZm9yRWFjaExpbWl0XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgYXJyYXkgaW5kZXggaXMgbm90IHBhc3NlZCB0byB0aGUgaXRlcmF0ZWUuXG4gICAgICogSWYgeW91IG5lZWQgdGhlIGluZGV4LCB1c2UgYGVhY2hPZkxpbWl0YC5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBlYWNoTGltaXQkMShjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBlYWNoT2ZMaW1pdChsaW1pdCkoY29sbCwgX3dpdGhvdXRJbmRleCh3cmFwQXN5bmMoaXRlcmF0ZWUpKSwgY2FsbGJhY2spO1xuICAgIH1cbiAgICB2YXIgZWFjaExpbWl0JDIgPSBhd2FpdGlmeShlYWNoTGltaXQkMSwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGVhY2hgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZWFjaH0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogTm90ZSwgdGhhdCB1bmxpa2UgW2BlYWNoYF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmVhY2h9LCB0aGlzIGZ1bmN0aW9uIGFwcGxpZXMgaXRlcmF0ZWUgdG8gZWFjaCBpdGVtXG4gICAgICogaW4gc2VyaWVzIGFuZCB0aGVyZWZvcmUgdGhlIGl0ZXJhdGVlIGZ1bmN0aW9ucyB3aWxsIGNvbXBsZXRlIGluIG9yZGVyLlxuXG4gICAgICogQG5hbWUgZWFjaFNlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmVhY2hde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5lYWNofVxuICAgICAqIEBhbGlhcyBmb3JFYWNoU2VyaWVzXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaFxuICAgICAqIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBhcnJheSBpbmRleCBpcyBub3QgcGFzc2VkIHRvIHRoZSBpdGVyYXRlZS5cbiAgICAgKiBJZiB5b3UgbmVlZCB0aGUgaW5kZXgsIHVzZSBgZWFjaE9mU2VyaWVzYC5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGxcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG9taXR0ZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBlYWNoU2VyaWVzKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gZWFjaExpbWl0JDIoY29sbCwgMSwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgZWFjaFNlcmllcyQxID0gYXdhaXRpZnkoZWFjaFNlcmllcywgMyk7XG5cbiAgICAvKipcbiAgICAgKiBXcmFwIGFuIGFzeW5jIGZ1bmN0aW9uIGFuZCBlbnN1cmUgaXQgY2FsbHMgaXRzIGNhbGxiYWNrIG9uIGEgbGF0ZXIgdGljayBvZlxuICAgICAqIHRoZSBldmVudCBsb29wLiAgSWYgdGhlIGZ1bmN0aW9uIGFscmVhZHkgY2FsbHMgaXRzIGNhbGxiYWNrIG9uIGEgbmV4dCB0aWNrLFxuICAgICAqIG5vIGV4dHJhIGRlZmVycmFsIGlzIGFkZGVkLiBUaGlzIGlzIHVzZWZ1bCBmb3IgcHJldmVudGluZyBzdGFjayBvdmVyZmxvd3NcbiAgICAgKiAoYFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkYCkgYW5kIGdlbmVyYWxseSBrZWVwaW5nXG4gICAgICogW1phbGdvXShodHRwOi8vYmxvZy5penMubWUvcG9zdC81OTE0Mjc0MjE0My9kZXNpZ25pbmctYXBpcy1mb3ItYXN5bmNocm9ueSlcbiAgICAgKiBjb250YWluZWQuIEVTMjAxNyBgYXN5bmNgIGZ1bmN0aW9ucyBhcmUgcmV0dXJuZWQgYXMtaXMgLS0gdGhleSBhcmUgaW1tdW5lXG4gICAgICogdG8gWmFsZ28ncyBjb3JydXB0aW5nIGluZmx1ZW5jZXMsIGFzIHRoZXkgYWx3YXlzIHJlc29sdmUgb24gYSBsYXRlciB0aWNrLlxuICAgICAqXG4gICAgICogQG5hbWUgZW5zdXJlQXN5bmNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gZm4gLSBhbiBhc3luYyBmdW5jdGlvbiwgb25lIHRoYXQgZXhwZWN0cyBhIG5vZGUtc3R5bGVcbiAgICAgKiBjYWxsYmFjayBhcyBpdHMgbGFzdCBhcmd1bWVudC5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gUmV0dXJucyBhIHdyYXBwZWQgZnVuY3Rpb24gd2l0aCB0aGUgZXhhY3Qgc2FtZSBjYWxsXG4gICAgICogc2lnbmF0dXJlIGFzIHRoZSBmdW5jdGlvbiBwYXNzZWQgaW4uXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGZ1bmN0aW9uIHNvbWV0aW1lc0FzeW5jKGFyZywgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgaWYgKGNhY2hlW2FyZ10pIHtcbiAgICAgKiAgICAgICAgIHJldHVybiBjYWxsYmFjayhudWxsLCBjYWNoZVthcmddKTsgLy8gdGhpcyB3b3VsZCBiZSBzeW5jaHJvbm91cyEhXG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBkb1NvbWVJTyhhcmcsIGNhbGxiYWNrKTsgLy8gdGhpcyBJTyB3b3VsZCBiZSBhc3luY2hyb25vdXNcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIHRoaXMgaGFzIGEgcmlzayBvZiBzdGFjayBvdmVyZmxvd3MgaWYgbWFueSByZXN1bHRzIGFyZSBjYWNoZWQgaW4gYSByb3dcbiAgICAgKiBhc3luYy5tYXBTZXJpZXMoYXJncywgc29tZXRpbWVzQXN5bmMsIGRvbmUpO1xuICAgICAqXG4gICAgICogLy8gdGhpcyB3aWxsIGRlZmVyIHNvbWV0aW1lc0FzeW5jJ3MgY2FsbGJhY2sgaWYgbmVjZXNzYXJ5LFxuICAgICAqIC8vIHByZXZlbnRpbmcgc3RhY2sgb3ZlcmZsb3dzXG4gICAgICogYXN5bmMubWFwU2VyaWVzKGFyZ3MsIGFzeW5jLmVuc3VyZUFzeW5jKHNvbWV0aW1lc0FzeW5jKSwgZG9uZSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gZW5zdXJlQXN5bmMoZm4pIHtcbiAgICAgICAgaWYgKGlzQXN5bmMoZm4pKSByZXR1cm4gZm47XG4gICAgICAgIHJldHVybiBmdW5jdGlvbiAoLi4uYXJncy8qLCBjYWxsYmFjayovKSB7XG4gICAgICAgICAgICB2YXIgY2FsbGJhY2sgPSBhcmdzLnBvcCgpO1xuICAgICAgICAgICAgdmFyIHN5bmMgPSB0cnVlO1xuICAgICAgICAgICAgYXJncy5wdXNoKCguLi5pbm5lckFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoc3luYykge1xuICAgICAgICAgICAgICAgICAgICBzZXRJbW1lZGlhdGUkMSgoKSA9PiBjYWxsYmFjayguLi5pbm5lckFyZ3MpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayguLi5pbm5lckFyZ3MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZm4uYXBwbHkodGhpcywgYXJncyk7XG4gICAgICAgICAgICBzeW5jID0gZmFsc2U7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBgdHJ1ZWAgaWYgZXZlcnkgZWxlbWVudCBpbiBgY29sbGAgc2F0aXNmaWVzIGFuIGFzeW5jIHRlc3QuIElmIGFueVxuICAgICAqIGl0ZXJhdGVlIGNhbGwgcmV0dXJucyBgZmFsc2VgLCB0aGUgbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZC5cbiAgICAgKlxuICAgICAqIEBuYW1lIGV2ZXJ5XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGFsaWFzIGFsbFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtXG4gICAgICogaW4gdGhlIGNvbGxlY3Rpb24gaW4gcGFyYWxsZWwuXG4gICAgICogVGhlIGl0ZXJhdGVlIG11c3QgY29tcGxldGUgd2l0aCBhIGJvb2xlYW4gcmVzdWx0IHZhbHVlLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gUmVzdWx0IHdpbGwgYmUgZWl0aGVyIGB0cnVlYCBvciBgZmFsc2VgXG4gICAgICogZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jIHRlc3RzLiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBwcm92aWRlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBkaXIxIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTEudHh0LCBmaWxlMi50eHRcbiAgICAgKiAvLyBkaXIyIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTMudHh0LCBmaWxlNC50eHRcbiAgICAgKiAvLyBkaXIzIGlzIGEgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgZmlsZTUudHh0XG4gICAgICogLy8gZGlyNCBkb2VzIG5vdCBleGlzdFxuICAgICAqXG4gICAgICogY29uc3QgZmlsZUxpc3QgPSBbJ2RpcjEvZmlsZTEudHh0JywnZGlyMi9maWxlMy50eHQnLCdkaXIzL2ZpbGU1LnR4dCddO1xuICAgICAqIGNvbnN0IHdpdGhNaXNzaW5nRmlsZUxpc3QgPSBbJ2ZpbGUxLnR4dCcsJ2ZpbGUyLnR4dCcsJ2ZpbGU0LnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIGEgZmlsZSBleGlzdHNcbiAgICAgKiBmdW5jdGlvbiBmaWxlRXhpc3RzKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgZnMuYWNjZXNzKGZpbGUsIGZzLmNvbnN0YW50cy5GX09LLCAoZXJyKSA9PiB7XG4gICAgICogICAgICAgIGNhbGxiYWNrKG51bGwsICFlcnIpO1xuICAgICAqICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGNhbGxiYWNrc1xuICAgICAqIGFzeW5jLmV2ZXJ5KGZpbGVMaXN0LCBmaWxlRXhpc3RzLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB0cnVlXG4gICAgICogICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiBhc3luYy5ldmVyeSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCBmaWxlRXhpc3RzLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyBmYWxzZVxuICAgICAqICAgICAvLyByZXN1bHQgaXMgZmFsc2Ugc2luY2UgTk9UIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLmV2ZXJ5KGZpbGVMaXN0LCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB0cnVlXG4gICAgICogICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiBhc3luYy5ldmVyeSh3aXRoTWlzc2luZ0ZpbGVMaXN0LCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyBmYWxzZVxuICAgICAqICAgICAvLyByZXN1bHQgaXMgZmFsc2Ugc2luY2UgTk9UIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy5ldmVyeShmaWxlTGlzdCwgZmlsZUV4aXN0cyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gdHJ1ZVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIHRydWUgc2luY2UgZXZlcnkgZmlsZSBleGlzdHNcbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmV2ZXJ5KHdpdGhNaXNzaW5nRmlsZUxpc3QsIGZpbGVFeGlzdHMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIGZhbHNlXG4gICAgICogICAgICAgICAvLyByZXN1bHQgaXMgZmFsc2Ugc2luY2UgTk9UIGV2ZXJ5IGZpbGUgZXhpc3RzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGV2ZXJ5KGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3Rlcihib29sID0+ICFib29sLCByZXMgPT4gIXJlcykoZWFjaE9mJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGV2ZXJ5JDEgPSBhd2FpdGlmeShldmVyeSwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGV2ZXJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmV2ZXJ5fSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIGV2ZXJ5TGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5ldmVyeV17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmV2ZXJ5fVxuICAgICAqIEBhbGlhcyBhbGxMaW1pdFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyB0cnV0aCB0ZXN0IHRvIGFwcGx5IHRvIGVhY2ggaXRlbVxuICAgICAqIGluIHRoZSBjb2xsZWN0aW9uIGluIHBhcmFsbGVsLlxuICAgICAqIFRoZSBpdGVyYXRlZSBtdXN0IGNvbXBsZXRlIHdpdGggYSBib29sZWFuIHJlc3VsdCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCB3aWxsIGJlIGVpdGhlciBgdHJ1ZWAgb3IgYGZhbHNlYFxuICAgICAqIGRlcGVuZGluZyBvbiB0aGUgdmFsdWVzIG9mIHRoZSBhc3luYyB0ZXN0cy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBldmVyeUxpbWl0KGNvbGwsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoYm9vbCA9PiAhYm9vbCwgcmVzID0+ICFyZXMpKGVhY2hPZkxpbWl0KGxpbWl0KSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgZXZlcnlMaW1pdCQxID0gYXdhaXRpZnkoZXZlcnlMaW1pdCwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGV2ZXJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmV2ZXJ5fSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBldmVyeVNlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmV2ZXJ5XXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZXZlcnl9XG4gICAgICogQGFsaWFzIGFsbFNlcmllc1xuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtXG4gICAgICogaW4gdGhlIGNvbGxlY3Rpb24gaW4gc2VyaWVzLlxuICAgICAqIFRoZSBpdGVyYXRlZSBtdXN0IGNvbXBsZXRlIHdpdGggYSBib29sZWFuIHJlc3VsdCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCB3aWxsIGJlIGVpdGhlciBgdHJ1ZWAgb3IgYGZhbHNlYFxuICAgICAqIGRlcGVuZGluZyBvbiB0aGUgdmFsdWVzIG9mIHRoZSBhc3luYyB0ZXN0cy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdCkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBldmVyeVNlcmllcyhjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoYm9vbCA9PiAhYm9vbCwgcmVzID0+ICFyZXMpKGVhY2hPZlNlcmllcyQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBldmVyeVNlcmllcyQxID0gYXdhaXRpZnkoZXZlcnlTZXJpZXMsIDMpO1xuXG4gICAgZnVuY3Rpb24gZmlsdGVyQXJyYXkoZWFjaGZuLCBhcnIsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgdHJ1dGhWYWx1ZXMgPSBuZXcgQXJyYXkoYXJyLmxlbmd0aCk7XG4gICAgICAgIGVhY2hmbihhcnIsICh4LCBpbmRleCwgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICBpdGVyYXRlZSh4LCAoZXJyLCB2KSA9PiB7XG4gICAgICAgICAgICAgICAgdHJ1dGhWYWx1ZXNbaW5kZXhdID0gISF2O1xuICAgICAgICAgICAgICAgIGl0ZXJDYihlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgICAgICAgIHZhciByZXN1bHRzID0gW107XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGlmICh0cnV0aFZhbHVlc1tpXSkgcmVzdWx0cy5wdXNoKGFycltpXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYWxsYmFjayhudWxsLCByZXN1bHRzKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZmlsdGVyR2VuZXJpYyhlYWNoZm4sIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgcmVzdWx0cyA9IFtdO1xuICAgICAgICBlYWNoZm4oY29sbCwgKHgsIGluZGV4LCBpdGVyQ2IpID0+IHtcbiAgICAgICAgICAgIGl0ZXJhdGVlKHgsIChlcnIsIHYpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gaXRlckNiKGVycik7XG4gICAgICAgICAgICAgICAgaWYgKHYpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0cy5wdXNoKHtpbmRleCwgdmFsdWU6IHh9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaXRlckNiKGVycik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgZXJyID0+IHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgcmVzdWx0c1xuICAgICAgICAgICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLmluZGV4IC0gYi5pbmRleClcbiAgICAgICAgICAgICAgICAubWFwKHYgPT4gdi52YWx1ZSkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBfZmlsdGVyKGVhY2hmbiwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHZhciBmaWx0ZXIgPSBpc0FycmF5TGlrZShjb2xsKSA/IGZpbHRlckFycmF5IDogZmlsdGVyR2VuZXJpYztcbiAgICAgICAgcmV0dXJuIGZpbHRlcihlYWNoZm4sIGNvbGwsIHdyYXBBc3luYyhpdGVyYXRlZSksIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgbmV3IGFycmF5IG9mIGFsbCB0aGUgdmFsdWVzIGluIGBjb2xsYCB3aGljaCBwYXNzIGFuIGFzeW5jIHRydXRoXG4gICAgICogdGVzdC4gVGhpcyBvcGVyYXRpb24gaXMgcGVyZm9ybWVkIGluIHBhcmFsbGVsLCBidXQgdGhlIHJlc3VsdHMgYXJyYXkgd2lsbCBiZVxuICAgICAqIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBvcmlnaW5hbC5cbiAgICAgKlxuICAgICAqIEBuYW1lIGZpbHRlclxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBhbGlhcyBzZWxlY3RcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGl0ZXJhdGVlIC0gQSB0cnV0aCB0ZXN0IHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpbiBgY29sbGAuXG4gICAgICogVGhlIGBpdGVyYXRlZWAgaXMgcGFzc2VkIGEgYGNhbGxiYWNrKGVyciwgdHJ1dGhWYWx1ZSlgLCB3aGljaCBtdXN0IGJlIGNhbGxlZFxuICAgICAqIHdpdGggYSBib29sZWFuIGFyZ3VtZW50IG9uY2UgaXQgaGFzIGNvbXBsZXRlZC4gSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gZGlyMSBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUxLnR4dCwgZmlsZTIudHh0XG4gICAgICogLy8gZGlyMiBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGUzLnR4dCwgZmlsZTQudHh0XG4gICAgICogLy8gZGlyMyBpcyBhIGRpcmVjdG9yeSB0aGF0IGNvbnRhaW5zIGZpbGU1LnR4dFxuICAgICAqXG4gICAgICogY29uc3QgZmlsZXMgPSBbJ2RpcjEvZmlsZTEudHh0JywnZGlyMi9maWxlMy50eHQnLCdkaXIzL2ZpbGU2LnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIGEgZmlsZSBleGlzdHNcbiAgICAgKiBmdW5jdGlvbiBmaWxlRXhpc3RzKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgZnMuYWNjZXNzKGZpbGUsIGZzLmNvbnN0YW50cy5GX09LLCAoZXJyKSA9PiB7XG4gICAgICogICAgICAgIGNhbGxiYWNrKG51bGwsICFlcnIpO1xuICAgICAqICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGNhbGxiYWNrc1xuICAgICAqIGFzeW5jLmZpbHRlcihmaWxlcywgZmlsZUV4aXN0cywgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgaWYoZXJyKSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgIC8vIFsgJ2RpcjEvZmlsZTEudHh0JywgJ2RpcjIvZmlsZTMudHh0JyBdXG4gICAgICogICAgICAgIC8vIHJlc3VsdHMgaXMgbm93IGFuIGFycmF5IG9mIHRoZSBleGlzdGluZyBmaWxlc1xuICAgICAqICAgIH1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuZmlsdGVyKGZpbGVzLCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKHJlc3VsdHMgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gWyAnZGlyMS9maWxlMS50eHQnLCAnZGlyMi9maWxlMy50eHQnIF1cbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBub3cgYW4gYXJyYXkgb2YgdGhlIGV4aXN0aW5nIGZpbGVzXG4gICAgICogfSkuY2F0Y2goZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5maWx0ZXIoZmlsZXMsIGZpbGVFeGlzdHMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyBbICdkaXIxL2ZpbGUxLnR4dCcsICdkaXIyL2ZpbGUzLnR4dCcgXVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgYW4gYXJyYXkgb2YgdGhlIGV4aXN0aW5nIGZpbGVzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGZpbHRlciAoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBfZmlsdGVyKGVhY2hPZiQxLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBmaWx0ZXIkMSA9IGF3YWl0aWZ5KGZpbHRlciwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYGZpbHRlcmBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5maWx0ZXJ9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBmaWx0ZXJMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmZpbHRlcl17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmZpbHRlcn1cbiAgICAgKiBAYWxpYXMgc2VsZWN0TGltaXRcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW4gYGNvbGxgLlxuICAgICAqIFRoZSBgaXRlcmF0ZWVgIGlzIHBhc3NlZCBhIGBjYWxsYmFjayhlcnIsIHRydXRoVmFsdWUpYCwgd2hpY2ggbXVzdCBiZSBjYWxsZWRcbiAgICAgKiB3aXRoIGEgYm9vbGVhbiBhcmd1bWVudCBvbmNlIGl0IGhhcyBjb21wbGV0ZWQuIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZmlsdGVyTGltaXQgKGNvbGwsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9maWx0ZXIoZWFjaE9mTGltaXQobGltaXQpLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBmaWx0ZXJMaW1pdCQxID0gYXdhaXRpZnkoZmlsdGVyTGltaXQsIDQpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2BmaWx0ZXJgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZmlsdGVyfSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBmaWx0ZXJTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5maWx0ZXJde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5maWx0ZXJ9XG4gICAgICogQGFsaWFzIHNlbGVjdFNlcmllc1xuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgYGl0ZXJhdGVlYCBpcyBwYXNzZWQgYSBgY2FsbGJhY2soZXJyLCB0cnV0aFZhbHVlKWAsIHdoaWNoIG11c3QgYmUgY2FsbGVkXG4gICAgICogd2l0aCBhIGJvb2xlYW4gYXJndW1lbnQgb25jZSBpdCBoYXMgY29tcGxldGVkLiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHRzKVxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gZmlsdGVyU2VyaWVzIChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9maWx0ZXIoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIGZpbHRlclNlcmllcyQxID0gYXdhaXRpZnkoZmlsdGVyU2VyaWVzLCAzKTtcblxuICAgIC8qKlxuICAgICAqIENhbGxzIHRoZSBhc3luY2hyb25vdXMgZnVuY3Rpb24gYGZuYCB3aXRoIGEgY2FsbGJhY2sgcGFyYW1ldGVyIHRoYXQgYWxsb3dzIGl0XG4gICAgICogdG8gY2FsbCBpdHNlbGYgYWdhaW4sIGluIHNlcmllcywgaW5kZWZpbml0ZWx5LlxuXG4gICAgICogSWYgYW4gZXJyb3IgaXMgcGFzc2VkIHRvIHRoZSBjYWxsYmFjayB0aGVuIGBlcnJiYWNrYCBpcyBjYWxsZWQgd2l0aCB0aGVcbiAgICAgKiBlcnJvciwgYW5kIGV4ZWN1dGlvbiBzdG9wcywgb3RoZXJ3aXNlIGl0IHdpbGwgbmV2ZXIgYmUgY2FsbGVkLlxuICAgICAqXG4gICAgICogQG5hbWUgZm9yZXZlclxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGZuIC0gYW4gYXN5bmMgZnVuY3Rpb24gdG8gY2FsbCByZXBlYXRlZGx5LlxuICAgICAqIEludm9rZWQgd2l0aCAobmV4dCkuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2VycmJhY2tdIC0gd2hlbiBgZm5gIHBhc3NlcyBhbiBlcnJvciB0byBpdCdzIGNhbGxiYWNrLFxuICAgICAqIHRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQsIGFuZCBleGVjdXRpb24gc3RvcHMuIEludm9rZWQgd2l0aCAoZXJyKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlIHRoYXQgcmVqZWN0cyBpZiBhbiBlcnJvciBvY2N1cnMgYW5kIGFuIGVycmJhY2tcbiAgICAgKiBpcyBub3QgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGFzeW5jLmZvcmV2ZXIoXG4gICAgICogICAgIGZ1bmN0aW9uKG5leHQpIHtcbiAgICAgKiAgICAgICAgIC8vIG5leHQgaXMgc3VpdGFibGUgZm9yIHBhc3NpbmcgdG8gdGhpbmdzIHRoYXQgbmVlZCBhIGNhbGxiYWNrKGVyciBbLCB3aGF0ZXZlcl0pO1xuICAgICAqICAgICAgICAgLy8gaXQgd2lsbCByZXN1bHQgaW4gdGhpcyBmdW5jdGlvbiBiZWluZyBjYWxsZWQgYWdhaW4uXG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICAgICAgLy8gaWYgbmV4dCBpcyBjYWxsZWQgd2l0aCBhIHZhbHVlIGluIGl0cyBmaXJzdCBwYXJhbWV0ZXIsIGl0IHdpbGwgYXBwZWFyXG4gICAgICogICAgICAgICAvLyBpbiBoZXJlIGFzICdlcnInLCBhbmQgZXhlY3V0aW9uIHdpbGwgc3RvcC5cbiAgICAgKiAgICAgfVxuICAgICAqICk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gZm9yZXZlcihmbiwgZXJyYmFjaykge1xuICAgICAgICB2YXIgZG9uZSA9IG9ubHlPbmNlKGVycmJhY2spO1xuICAgICAgICB2YXIgdGFzayA9IHdyYXBBc3luYyhlbnN1cmVBc3luYyhmbikpO1xuXG4gICAgICAgIGZ1bmN0aW9uIG5leHQoZXJyKSB7XG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gZG9uZShlcnIpO1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIHRhc2sobmV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5leHQoKTtcbiAgICB9XG4gICAgdmFyIGZvcmV2ZXIkMSA9IGF3YWl0aWZ5KGZvcmV2ZXIsIDIpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2Bncm91cEJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmdyb3VwQnl9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgZ3JvdXBCeUxpbWl0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMuZ3JvdXBCeV17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmdyb3VwQnl9XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGltaXQgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggaXRlbSBpblxuICAgICAqIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggYSBga2V5YCB0byBncm91cCB0aGUgdmFsdWUgdW5kZXIuXG4gICAgICogSW52b2tlZCB3aXRoICh2YWx1ZSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCB3aGVuIGFsbCBgaXRlcmF0ZWVgXG4gICAgICogZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0IGlzIGFuIGBPYmplY3RgIHdob3Nlc1xuICAgICAqIHByb3BlcnRpZXMgYXJlIGFycmF5cyBvZiB2YWx1ZXMgd2hpY2ggcmV0dXJuZWQgdGhlIGNvcnJlc3BvbmRpbmcga2V5LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGdyb3VwQnlMaW1pdChjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHZhciBfaXRlcmF0ZWUgPSB3cmFwQXN5bmMoaXRlcmF0ZWUpO1xuICAgICAgICByZXR1cm4gbWFwTGltaXQkMShjb2xsLCBsaW1pdCwgKHZhbCwgaXRlckNiKSA9PiB7XG4gICAgICAgICAgICBfaXRlcmF0ZWUodmFsLCAoZXJyLCBrZXkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gaXRlckNiKGVycik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0ZXJDYihlcnIsIHtrZXksIHZhbH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIChlcnIsIG1hcFJlc3VsdHMpID0+IHtcbiAgICAgICAgICAgIHZhciByZXN1bHQgPSB7fTtcbiAgICAgICAgICAgIC8vIGZyb20gTUROLCBoYW5kbGUgb2JqZWN0IGhhdmluZyBhbiBgaGFzT3duUHJvcGVydHlgIHByb3BcbiAgICAgICAgICAgIHZhciB7aGFzT3duUHJvcGVydHl9ID0gT2JqZWN0LnByb3RvdHlwZTtcblxuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBtYXBSZXN1bHRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKG1hcFJlc3VsdHNbaV0pIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHtrZXl9ID0gbWFwUmVzdWx0c1tpXTtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHt2YWx9ID0gbWFwUmVzdWx0c1tpXTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChyZXN1bHQsIGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdFtrZXldLnB1c2godmFsKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdFtrZXldID0gW3ZhbF07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIsIHJlc3VsdCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHZhciBncm91cEJ5TGltaXQkMSA9IGF3YWl0aWZ5KGdyb3VwQnlMaW1pdCwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgbmV3IG9iamVjdCwgd2hlcmUgZWFjaCB2YWx1ZSBjb3JyZXNwb25kcyB0byBhbiBhcnJheSBvZiBpdGVtcywgZnJvbVxuICAgICAqIGBjb2xsYCwgdGhhdCByZXR1cm5lZCB0aGUgY29ycmVzcG9uZGluZyBrZXkuIFRoYXQgaXMsIHRoZSBrZXlzIG9mIHRoZSBvYmplY3RcbiAgICAgKiBjb3JyZXNwb25kIHRvIHRoZSB2YWx1ZXMgcGFzc2VkIHRvIHRoZSBgaXRlcmF0ZWVgIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogTm90ZTogU2luY2UgdGhpcyBmdW5jdGlvbiBhcHBsaWVzIHRoZSBgaXRlcmF0ZWVgIHRvIGVhY2ggaXRlbSBpbiBwYXJhbGxlbCxcbiAgICAgKiB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGUgYGl0ZXJhdGVlYCBmdW5jdGlvbnMgd2lsbCBjb21wbGV0ZSBpbiBvcmRlci5cbiAgICAgKiBIb3dldmVyLCB0aGUgdmFsdWVzIGZvciBlYWNoIGtleSBpbiB0aGUgYHJlc3VsdGAgd2lsbCBiZSBpbiB0aGUgc2FtZSBvcmRlciBhc1xuICAgICAqIHRoZSBvcmlnaW5hbCBgY29sbGAuIEZvciBPYmplY3RzLCB0aGUgdmFsdWVzIHdpbGwgcm91Z2hseSBiZSBpbiB0aGUgb3JkZXIgb2ZcbiAgICAgKiB0aGUgb3JpZ2luYWwgT2JqZWN0cycga2V5cyAoYnV0IHRoaXMgY2FuIHZhcnkgYWNyb3NzIEphdmFTY3JpcHQgZW5naW5lcykuXG4gICAgICpcbiAgICAgKiBAbmFtZSBncm91cEJ5XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgZnVuY3Rpb24gdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluXG4gICAgICogYGNvbGxgLlxuICAgICAqIFRoZSBpdGVyYXRlZSBzaG91bGQgY29tcGxldGUgd2l0aCBhIGBrZXlgIHRvIGdyb3VwIHRoZSB2YWx1ZSB1bmRlci5cbiAgICAgKiBJbnZva2VkIHdpdGggKHZhbHVlLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBSZXN1bHQgaXMgYW4gYE9iamVjdGAgd2hvc2VzXG4gICAgICogcHJvcGVydGllcyBhcmUgYXJyYXlzIG9mIHZhbHVlcyB3aGljaCByZXR1cm5lZCB0aGUgY29ycmVzcG9uZGluZyBrZXkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKiAvLyBkaXI0IGRvZXMgbm90IGV4aXN0XG4gICAgICpcbiAgICAgKiBjb25zdCBmaWxlcyA9IFsnZGlyMS9maWxlMS50eHQnLCdkaXIyJywnZGlyNCddXG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBkZXRlY3RzIGZpbGUgdHlwZSBhcyBub25lLCBmaWxlLCBvciBkaXJlY3RvcnlcbiAgICAgKiBmdW5jdGlvbiBkZXRlY3RGaWxlKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZzLnN0YXQoZmlsZSwgZnVuY3Rpb24oZXJyLCBzdGF0KSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG51bGwsICdub25lJyk7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBzdGF0LmlzRGlyZWN0b3J5KCkgPyAnZGlyZWN0b3J5JyA6ICdmaWxlJyk7XG4gICAgICogICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMuZ3JvdXBCeShmaWxlcywgZGV0ZWN0RmlsZSwgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgaWYoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqXHQgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHtcbiAgICAgKiAgICAgICAgIC8vICAgICBmaWxlOiBbICdkaXIxL2ZpbGUxLnR4dCcgXSxcbiAgICAgKiAgICAgICAgIC8vICAgICBub25lOiBbICdkaXI0JyBdLFxuICAgICAqICAgICAgICAgLy8gICAgIGRpcmVjdG9yeTogWyAnZGlyMiddXG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgICAgICAvLyByZXN1bHQgaXMgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGZpbGVzIGdyb3VwZWQgYnkgdHlwZVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLmdyb3VwQnkoZmlsZXMsIGRldGVjdEZpbGUpXG4gICAgICogLnRoZW4oIHJlc3VsdCA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgIC8vIHtcbiAgICAgKiAgICAgLy8gICAgIGZpbGU6IFsgJ2RpcjEvZmlsZTEudHh0JyBdLFxuICAgICAqICAgICAvLyAgICAgbm9uZTogWyAnZGlyNCcgXSxcbiAgICAgKiAgICAgLy8gICAgIGRpcmVjdG9yeTogWyAnZGlyMiddXG4gICAgICogICAgIC8vIH1cbiAgICAgKiAgICAgLy8gcmVzdWx0IGlzIG9iamVjdCBjb250YWluaW5nIHRoZSBmaWxlcyBncm91cGVkIGJ5IHR5cGVcbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLmdyb3VwQnkoZmlsZXMsIGRldGVjdEZpbGUpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHtcbiAgICAgKiAgICAgICAgIC8vICAgICBmaWxlOiBbICdkaXIxL2ZpbGUxLnR4dCcgXSxcbiAgICAgKiAgICAgICAgIC8vICAgICBub25lOiBbICdkaXI0JyBdLFxuICAgICAqICAgICAgICAgLy8gICAgIGRpcmVjdG9yeTogWyAnZGlyMiddXG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgICAgICAvLyByZXN1bHQgaXMgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGZpbGVzIGdyb3VwZWQgYnkgdHlwZVxuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBncm91cEJ5IChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIGdyb3VwQnlMaW1pdCQxKGNvbGwsIEluZmluaXR5LCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2Bncm91cEJ5YF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmdyb3VwQnl9IGJ1dCBydW5zIG9ubHkgYSBzaW5nbGUgYXN5bmMgb3BlcmF0aW9uIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIGdyb3VwQnlTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5ncm91cEJ5XXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZ3JvdXBCeX1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYGtleWAgdG8gZ3JvdXAgdGhlIHZhbHVlIHVuZGVyLlxuICAgICAqIEludm9rZWQgd2l0aCAodmFsdWUsIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgd2hlbiBhbGwgYGl0ZXJhdGVlYFxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLCBvciBhbiBlcnJvciBvY2N1cnMuIFJlc3VsdCBpcyBhbiBgT2JqZWN0YCB3aG9zZVxuICAgICAqIHByb3BlcnRpZXMgYXJlIGFycmF5cyBvZiB2YWx1ZXMgd2hpY2ggcmV0dXJuZWQgdGhlIGNvcnJlc3BvbmRpbmcga2V5LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGdyb3VwQnlTZXJpZXMgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gZ3JvdXBCeUxpbWl0JDEoY29sbCwgMSwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgdGhlIHJlc3VsdCBvZiBhbiBgYXN5bmNgIGZ1bmN0aW9uIHRvIHRoZSBgY29uc29sZWAuIE9ubHkgd29ya3MgaW5cbiAgICAgKiBOb2RlLmpzIG9yIGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCBgY29uc29sZS5sb2dgIGFuZCBgY29uc29sZS5lcnJvcmAgKHN1Y2hcbiAgICAgKiBhcyBGRiBhbmQgQ2hyb21lKS4gSWYgbXVsdGlwbGUgYXJndW1lbnRzIGFyZSByZXR1cm5lZCBmcm9tIHRoZSBhc3luY1xuICAgICAqIGZ1bmN0aW9uLCBgY29uc29sZS5sb2dgIGlzIGNhbGxlZCBvbiBlYWNoIGFyZ3VtZW50IGluIG9yZGVyLlxuICAgICAqXG4gICAgICogQG5hbWUgbG9nXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGZ1bmN0aW9uIC0gVGhlIGZ1bmN0aW9uIHlvdSB3YW50IHRvIGV2ZW50dWFsbHkgYXBwbHlcbiAgICAgKiBhbGwgYXJndW1lbnRzIHRvLlxuICAgICAqIEBwYXJhbSB7Li4uKn0gYXJndW1lbnRzLi4uIC0gQW55IG51bWJlciBvZiBhcmd1bWVudHMgdG8gYXBwbHkgdG8gdGhlIGZ1bmN0aW9uLlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBpbiBhIG1vZHVsZVxuICAgICAqIHZhciBoZWxsbyA9IGZ1bmN0aW9uKG5hbWUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnaGVsbG8gJyArIG5hbWUpO1xuICAgICAqICAgICB9LCAxMDAwKTtcbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogLy8gaW4gdGhlIG5vZGUgcmVwbFxuICAgICAqIG5vZGU+IGFzeW5jLmxvZyhoZWxsbywgJ3dvcmxkJyk7XG4gICAgICogJ2hlbGxvIHdvcmxkJ1xuICAgICAqL1xuICAgIHZhciBsb2cgPSBjb25zb2xlRnVuYygnbG9nJyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYG1hcFZhbHVlc2Bde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXBWYWx1ZXN9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBtYXBWYWx1ZXNMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLm1hcFZhbHVlc117QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcFZhbHVlc31cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmogLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQSBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIHZhbHVlIGFuZCBrZXlcbiAgICAgKiBpbiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIHRoZSB0cmFuc2Zvcm1lZCB2YWx1ZSBhcyBpdHMgcmVzdWx0LlxuICAgICAqIEludm9rZWQgd2l0aCAodmFsdWUsIGtleSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCB3aGVuIGFsbCBgaXRlcmF0ZWVgXG4gICAgICogZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gYHJlc3VsdGAgaXMgYSBuZXcgb2JqZWN0IGNvbnNpc3RpbmdcbiAgICAgKiBvZiBlYWNoIGtleSBmcm9tIGBvYmpgLCB3aXRoIGVhY2ggdHJhbnNmb3JtZWQgdmFsdWUgb24gdGhlIHJpZ2h0LWhhbmQgc2lkZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBtYXBWYWx1ZXNMaW1pdChvYmosIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgdmFyIG5ld09iaiA9IHt9O1xuICAgICAgICB2YXIgX2l0ZXJhdGVlID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgcmV0dXJuIGVhY2hPZkxpbWl0KGxpbWl0KShvYmosICh2YWwsIGtleSwgbmV4dCkgPT4ge1xuICAgICAgICAgICAgX2l0ZXJhdGVlKHZhbCwga2V5LCAoZXJyLCByZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gbmV4dChlcnIpO1xuICAgICAgICAgICAgICAgIG5ld09ialtrZXldID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgIG5leHQoZXJyKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LCBlcnIgPT4gY2FsbGJhY2soZXJyLCBuZXdPYmopKTtcbiAgICB9XG5cbiAgICB2YXIgbWFwVmFsdWVzTGltaXQkMSA9IGF3YWl0aWZ5KG1hcFZhbHVlc0xpbWl0LCA0KTtcblxuICAgIC8qKlxuICAgICAqIEEgcmVsYXRpdmUgb2YgW2BtYXBgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfSwgZGVzaWduZWQgZm9yIHVzZSB3aXRoIG9iamVjdHMuXG4gICAgICpcbiAgICAgKiBQcm9kdWNlcyBhIG5ldyBPYmplY3QgYnkgbWFwcGluZyBlYWNoIHZhbHVlIG9mIGBvYmpgIHRocm91Z2ggdGhlIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbi4gVGhlIGBpdGVyYXRlZWAgaXMgY2FsbGVkIGVhY2ggYHZhbHVlYCBhbmQgYGtleWAgZnJvbSBgb2JqYCBhbmQgYVxuICAgICAqIGNhbGxiYWNrIGZvciB3aGVuIGl0IGhhcyBmaW5pc2hlZCBwcm9jZXNzaW5nLiBFYWNoIG9mIHRoZXNlIGNhbGxiYWNrcyB0YWtlc1xuICAgICAqIHR3byBhcmd1bWVudHM6IGFuIGBlcnJvcmAsIGFuZCB0aGUgdHJhbnNmb3JtZWQgaXRlbSBmcm9tIGBvYmpgLiBJZiBgaXRlcmF0ZWVgXG4gICAgICogcGFzc2VzIGFuIGVycm9yIHRvIGl0cyBjYWxsYmFjaywgdGhlIG1haW4gYGNhbGxiYWNrYCAoZm9yIHRoZSBgbWFwVmFsdWVzYFxuICAgICAqIGZ1bmN0aW9uKSBpcyBpbW1lZGlhdGVseSBjYWxsZWQgd2l0aCB0aGUgZXJyb3IuXG4gICAgICpcbiAgICAgKiBOb3RlLCB0aGUgb3JkZXIgb2YgdGhlIGtleXMgaW4gdGhlIHJlc3VsdCBpcyBub3QgZ3VhcmFudGVlZC4gIFRoZSBrZXlzIHdpbGxcbiAgICAgKiBiZSByb3VnaGx5IGluIHRoZSBvcmRlciB0aGV5IGNvbXBsZXRlLCAoYnV0IHRoaXMgaXMgdmVyeSBlbmdpbmUtc3BlY2lmaWMpXG4gICAgICpcbiAgICAgKiBAbmFtZSBtYXBWYWx1ZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmogLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggdmFsdWUgYW5kIGtleVxuICAgICAqIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIHZhbHVlIGFzIGl0cyByZXN1bHQuXG4gICAgICogSW52b2tlZCB3aXRoICh2YWx1ZSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBgcmVzdWx0YCBpcyBhIG5ldyBvYmplY3QgY29uc2lzdGluZ1xuICAgICAqIG9mIGVhY2gga2V5IGZyb20gYG9iamAsIHdpdGggZWFjaCB0cmFuc2Zvcm1lZCB2YWx1ZSBvbiB0aGUgcmlnaHQtaGFuZCBzaWRlLlxuICAgICAqIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBmaWxlMS50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMTAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTIudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDIwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIGZpbGUzLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAzMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlNC50eHQgZG9lcyBub3QgZXhpc3RcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVNYXAgPSB7XG4gICAgICogICAgIGYxOiAnZmlsZTEudHh0JyxcbiAgICAgKiAgICAgZjI6ICdmaWxlMi50eHQnLFxuICAgICAqICAgICBmMzogJ2ZpbGUzLnR4dCdcbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogY29uc3Qgd2l0aE1pc3NpbmdGaWxlTWFwID0ge1xuICAgICAqICAgICBmMTogJ2ZpbGUxLnR4dCcsXG4gICAgICogICAgIGYyOiAnZmlsZTIudHh0JyxcbiAgICAgKiAgICAgZjM6ICdmaWxlNC50eHQnXG4gICAgICogfTtcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IHJldHVybnMgdGhlIGZpbGUgc2l6ZSBpbiBieXRlc1xuICAgICAqIGZ1bmN0aW9uIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBrZXksIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGZzLnN0YXQoZmlsZSwgZnVuY3Rpb24oZXJyLCBzdGF0KSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBzdGF0LnNpemUpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5tYXBWYWx1ZXMoZmlsZU1hcCwgZ2V0RmlsZVNpemVJbkJ5dGVzLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHJlc3VsdCBpcyBub3cgYSBtYXAgb2YgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIHtcbiAgICAgKiAgICAgICAgIC8vICAgICBmMTogMTAwMCxcbiAgICAgKiAgICAgICAgIC8vICAgICBmMjogMjAwMCxcbiAgICAgKiAgICAgICAgIC8vICAgICBmMzogMzAwMFxuICAgICAqICAgICAgICAgLy8gfVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBoYW5kbGluZ1xuICAgICAqIGFzeW5jLm1hcFZhbHVlcyh3aXRoTWlzc2luZ0ZpbGVNYXAsIGdldEZpbGVTaXplSW5CeXRlcywgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgaWYgKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLm1hcFZhbHVlcyhmaWxlTWFwLCBnZXRGaWxlU2l6ZUluQnl0ZXMpXG4gICAgICogLnRoZW4oIHJlc3VsdCA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgIC8vIHJlc3VsdCBpcyBub3cgYSBtYXAgb2YgZmlsZSBzaXplIGluIGJ5dGVzIGZvciBlYWNoIGZpbGUsIGUuZy5cbiAgICAgKiAgICAgLy8ge1xuICAgICAqICAgICAvLyAgICAgZjE6IDEwMDAsXG4gICAgICogICAgIC8vICAgICBmMjogMjAwMCxcbiAgICAgKiAgICAgLy8gICAgIGYzOiAzMDAwXG4gICAgICogICAgIC8vIH1cbiAgICAgKiB9KS5jYXRjaCAoZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMubWFwVmFsdWVzKHdpdGhNaXNzaW5nRmlsZU1hcCwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqIH0pLmNhdGNoIChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMubWFwVmFsdWVzKGZpbGVNYXAsIGdldEZpbGVTaXplSW5CeXRlcyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIG5vdyBhIG1hcCBvZiBmaWxlIHNpemUgaW4gYnl0ZXMgZm9yIGVhY2ggZmlsZSwgZS5nLlxuICAgICAqICAgICAgICAgLy8ge1xuICAgICAqICAgICAgICAgLy8gICAgIGYxOiAxMDAwLFxuICAgICAqICAgICAgICAgLy8gICAgIGYyOiAyMDAwLFxuICAgICAqICAgICAgICAgLy8gICAgIGYzOiAzMDAwXG4gICAgICogICAgICAgICAvLyB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIEVycm9yIEhhbmRsaW5nXG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IGFzeW5jLm1hcFZhbHVlcyh3aXRoTWlzc2luZ0ZpbGVNYXAsIGdldEZpbGVTaXplSW5CeXRlcyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgICAgICAvLyBbIEVycm9yOiBFTk9FTlQ6IG5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkgXVxuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gbWFwVmFsdWVzKG9iaiwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBtYXBWYWx1ZXNMaW1pdCQxKG9iaiwgSW5maW5pdHksIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYG1hcFZhbHVlc2Bde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXBWYWx1ZXN9IGJ1dCBydW5zIG9ubHkgYSBzaW5nbGUgYXN5bmMgb3BlcmF0aW9uIGF0IGEgdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIG1hcFZhbHVlc1Nlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLm1hcFZhbHVlc117QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcFZhbHVlc31cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvYmogLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIHRvIGFwcGx5IHRvIGVhY2ggdmFsdWUgYW5kIGtleVxuICAgICAqIGluIGBjb2xsYC5cbiAgICAgKiBUaGUgaXRlcmF0ZWUgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIHRyYW5zZm9ybWVkIHZhbHVlIGFzIGl0cyByZXN1bHQuXG4gICAgICogSW52b2tlZCB3aXRoICh2YWx1ZSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gYWxsIGBpdGVyYXRlZWBcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZCwgb3IgYW4gZXJyb3Igb2NjdXJzLiBgcmVzdWx0YCBpcyBhIG5ldyBvYmplY3QgY29uc2lzdGluZ1xuICAgICAqIG9mIGVhY2gga2V5IGZyb20gYG9iamAsIHdpdGggZWFjaCB0cmFuc2Zvcm1lZCB2YWx1ZSBvbiB0aGUgcmlnaHQtaGFuZCBzaWRlLlxuICAgICAqIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIG1hcFZhbHVlc1NlcmllcyhvYmosIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gbWFwVmFsdWVzTGltaXQkMShvYmosIDEsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWNoZXMgdGhlIHJlc3VsdHMgb2YgYW4gYXN5bmMgZnVuY3Rpb24uIFdoZW4gY3JlYXRpbmcgYSBoYXNoIHRvIHN0b3JlXG4gICAgICogZnVuY3Rpb24gcmVzdWx0cyBhZ2FpbnN0LCB0aGUgY2FsbGJhY2sgaXMgb21pdHRlZCBmcm9tIHRoZSBoYXNoIGFuZCBhblxuICAgICAqIG9wdGlvbmFsIGhhc2ggZnVuY3Rpb24gY2FuIGJlIHVzZWQuXG4gICAgICpcbiAgICAgKiAqKk5vdGU6IGlmIHRoZSBhc3luYyBmdW5jdGlvbiBlcnJzLCB0aGUgcmVzdWx0IHdpbGwgbm90IGJlIGNhY2hlZCBhbmRcbiAgICAgKiBzdWJzZXF1ZW50IGNhbGxzIHdpbGwgY2FsbCB0aGUgd3JhcHBlZCBmdW5jdGlvbi4qKlxuICAgICAqXG4gICAgICogSWYgbm8gaGFzaCBmdW5jdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBmaXJzdCBhcmd1bWVudCBpcyB1c2VkIGFzIGEgaGFzaCBrZXksXG4gICAgICogd2hpY2ggbWF5IHdvcmsgcmVhc29uYWJseSBpZiBpdCBpcyBhIHN0cmluZyBvciBhIGRhdGEgdHlwZSB0aGF0IGNvbnZlcnRzIHRvIGFcbiAgICAgKiBkaXN0aW5jdCBzdHJpbmcuIE5vdGUgdGhhdCBvYmplY3RzIGFuZCBhcnJheXMgd2lsbCBub3QgYmVoYXZlIHJlYXNvbmFibHkuXG4gICAgICogTmVpdGhlciB3aWxsIGNhc2VzIHdoZXJlIHRoZSBvdGhlciBhcmd1bWVudHMgYXJlIHNpZ25pZmljYW50LiBJbiBzdWNoIGNhc2VzLFxuICAgICAqIHNwZWNpZnkgeW91ciBvd24gaGFzaCBmdW5jdGlvbi5cbiAgICAgKlxuICAgICAqIFRoZSBjYWNoZSBvZiByZXN1bHRzIGlzIGV4cG9zZWQgYXMgdGhlIGBtZW1vYCBwcm9wZXJ0eSBvZiB0aGUgZnVuY3Rpb25cbiAgICAgKiByZXR1cm5lZCBieSBgbWVtb2l6ZWAuXG4gICAgICpcbiAgICAgKiBAbmFtZSBtZW1vaXplXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGZuIC0gVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIHByb3h5IGFuZCBjYWNoZSByZXN1bHRzIGZyb20uXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gaGFzaGVyIC0gQW4gb3B0aW9uYWwgZnVuY3Rpb24gZm9yIGdlbmVyYXRpbmcgYSBjdXN0b20gaGFzaFxuICAgICAqIGZvciBzdG9yaW5nIHJlc3VsdHMuIEl0IGhhcyBhbGwgdGhlIGFyZ3VtZW50cyBhcHBsaWVkIHRvIGl0IGFwYXJ0IGZyb20gdGhlXG4gICAgICogY2FsbGJhY2ssIGFuZCBtdXN0IGJlIHN5bmNocm9ub3VzLlxuICAgICAqIEByZXR1cm5zIHtBc3luY0Z1bmN0aW9ufSBhIG1lbW9pemVkIHZlcnNpb24gb2YgYGZuYFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiB2YXIgc2xvd19mbiA9IGZ1bmN0aW9uKG5hbWUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIC8vIGRvIHNvbWV0aGluZ1xuICAgICAqICAgICBjYWxsYmFjayhudWxsLCByZXN1bHQpO1xuICAgICAqIH07XG4gICAgICogdmFyIGZuID0gYXN5bmMubWVtb2l6ZShzbG93X2ZuKTtcbiAgICAgKlxuICAgICAqIC8vIGZuIGNhbiBub3cgYmUgdXNlZCBhcyBpZiBpdCB3ZXJlIHNsb3dfZm5cbiAgICAgKiBmbignc29tZSBuYW1lJywgZnVuY3Rpb24oKSB7XG4gICAgICogICAgIC8vIGNhbGxiYWNrXG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gbWVtb2l6ZShmbiwgaGFzaGVyID0gdiA9PiB2KSB7XG4gICAgICAgIHZhciBtZW1vID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdmFyIHF1ZXVlcyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgICAgIHZhciBfZm4gPSB3cmFwQXN5bmMoZm4pO1xuICAgICAgICB2YXIgbWVtb2l6ZWQgPSBpbml0aWFsUGFyYW1zKChhcmdzLCBjYWxsYmFjaykgPT4ge1xuICAgICAgICAgICAgdmFyIGtleSA9IGhhc2hlciguLi5hcmdzKTtcbiAgICAgICAgICAgIGlmIChrZXkgaW4gbWVtbykge1xuICAgICAgICAgICAgICAgIHNldEltbWVkaWF0ZSQxKCgpID0+IGNhbGxiYWNrKG51bGwsIC4uLm1lbW9ba2V5XSkpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkgaW4gcXVldWVzKSB7XG4gICAgICAgICAgICAgICAgcXVldWVzW2tleV0ucHVzaChjYWxsYmFjayk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHF1ZXVlc1trZXldID0gW2NhbGxiYWNrXTtcbiAgICAgICAgICAgICAgICBfZm4oLi4uYXJncywgKGVyciwgLi4ucmVzdWx0QXJncykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyAjMTQ2NSBkb24ndCBtZW1vaXplIGlmIGFuIGVycm9yIG9jY3VycmVkXG4gICAgICAgICAgICAgICAgICAgIGlmICghZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtZW1vW2tleV0gPSByZXN1bHRBcmdzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHZhciBxID0gcXVldWVzW2tleV07XG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBxdWV1ZXNba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSBxLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcVtpXShlcnIsIC4uLnJlc3VsdEFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBtZW1vaXplZC5tZW1vID0gbWVtbztcbiAgICAgICAgbWVtb2l6ZWQudW5tZW1vaXplZCA9IGZuO1xuICAgICAgICByZXR1cm4gbWVtb2l6ZWQ7XG4gICAgfVxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGZpbGUgKi9cblxuICAgIC8qKlxuICAgICAqIENhbGxzIGBjYWxsYmFja2Agb24gYSBsYXRlciBsb29wIGFyb3VuZCB0aGUgZXZlbnQgbG9vcC4gSW4gTm9kZS5qcyB0aGlzIGp1c3RcbiAgICAgKiBjYWxscyBgcHJvY2Vzcy5uZXh0VGlja2AuICBJbiB0aGUgYnJvd3NlciBpdCB3aWxsIHVzZSBgc2V0SW1tZWRpYXRlYCBpZlxuICAgICAqIGF2YWlsYWJsZSwgb3RoZXJ3aXNlIGBzZXRUaW1lb3V0KGNhbGxiYWNrLCAwKWAsIHdoaWNoIG1lYW5zIG90aGVyIGhpZ2hlclxuICAgICAqIHByaW9yaXR5IGV2ZW50cyBtYXkgcHJlY2VkZSB0aGUgZXhlY3V0aW9uIG9mIGBjYWxsYmFja2AuXG4gICAgICpcbiAgICAgKiBUaGlzIGlzIHVzZWQgaW50ZXJuYWxseSBmb3IgYnJvd3Nlci1jb21wYXRpYmlsaXR5IHB1cnBvc2VzLlxuICAgICAqXG4gICAgICogQG5hbWUgbmV4dFRpY2tcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5zZXRJbW1lZGlhdGVde0BsaW5rIG1vZHVsZTpVdGlscy5zZXRJbW1lZGlhdGV9XG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFjayAtIFRoZSBmdW5jdGlvbiB0byBjYWxsIG9uIGEgbGF0ZXIgbG9vcCBhcm91bmRcbiAgICAgKiB0aGUgZXZlbnQgbG9vcC4gSW52b2tlZCB3aXRoIChhcmdzLi4uKS5cbiAgICAgKiBAcGFyYW0gey4uLip9IGFyZ3MuLi4gLSBhbnkgbnVtYmVyIG9mIGFkZGl0aW9uYWwgYXJndW1lbnRzIHRvIHBhc3MgdG8gdGhlXG4gICAgICogY2FsbGJhY2sgb24gdGhlIG5leHQgdGljay5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogdmFyIGNhbGxfb3JkZXIgPSBbXTtcbiAgICAgKiBhc3luYy5uZXh0VGljayhmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgY2FsbF9vcmRlci5wdXNoKCd0d28nKTtcbiAgICAgKiAgICAgLy8gY2FsbF9vcmRlciBub3cgZXF1YWxzIFsnb25lJywndHdvJ11cbiAgICAgKiB9KTtcbiAgICAgKiBjYWxsX29yZGVyLnB1c2goJ29uZScpO1xuICAgICAqXG4gICAgICogYXN5bmMuc2V0SW1tZWRpYXRlKGZ1bmN0aW9uIChhLCBiLCBjKSB7XG4gICAgICogICAgIC8vIGEsIGIsIGFuZCBjIGVxdWFsIDEsIDIsIGFuZCAzXG4gICAgICogfSwgMSwgMiwgMyk7XG4gICAgICovXG4gICAgdmFyIF9kZWZlciQxO1xuXG4gICAgaWYgKGhhc05leHRUaWNrKSB7XG4gICAgICAgIF9kZWZlciQxID0gcHJvY2Vzcy5uZXh0VGljaztcbiAgICB9IGVsc2UgaWYgKGhhc1NldEltbWVkaWF0ZSkge1xuICAgICAgICBfZGVmZXIkMSA9IHNldEltbWVkaWF0ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBfZGVmZXIkMSA9IGZhbGxiYWNrO1xuICAgIH1cblxuICAgIHZhciBuZXh0VGljayA9IHdyYXAoX2RlZmVyJDEpO1xuXG4gICAgdmFyIHBhcmFsbGVsID0gYXdhaXRpZnkoKGVhY2hmbiwgdGFza3MsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgIHZhciByZXN1bHRzID0gaXNBcnJheUxpa2UodGFza3MpID8gW10gOiB7fTtcblxuICAgICAgICBlYWNoZm4odGFza3MsICh0YXNrLCBrZXksIHRhc2tDYikgPT4ge1xuICAgICAgICAgICAgd3JhcEFzeW5jKHRhc2spKChlcnIsIC4uLnJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgICAgICAgICBbcmVzdWx0XSA9IHJlc3VsdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzdWx0c1trZXldID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgIHRhc2tDYihlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGVyciA9PiBjYWxsYmFjayhlcnIsIHJlc3VsdHMpKTtcbiAgICB9LCAzKTtcblxuICAgIC8qKlxuICAgICAqIFJ1biB0aGUgYHRhc2tzYCBjb2xsZWN0aW9uIG9mIGZ1bmN0aW9ucyBpbiBwYXJhbGxlbCwgd2l0aG91dCB3YWl0aW5nIHVudGlsXG4gICAgICogdGhlIHByZXZpb3VzIGZ1bmN0aW9uIGhhcyBjb21wbGV0ZWQuIElmIGFueSBvZiB0aGUgZnVuY3Rpb25zIHBhc3MgYW4gZXJyb3IgdG9cbiAgICAgKiBpdHMgY2FsbGJhY2ssIHRoZSBtYWluIGBjYWxsYmFja2AgaXMgaW1tZWRpYXRlbHkgY2FsbGVkIHdpdGggdGhlIHZhbHVlIG9mIHRoZVxuICAgICAqIGVycm9yLiBPbmNlIHRoZSBgdGFza3NgIGhhdmUgY29tcGxldGVkLCB0aGUgcmVzdWx0cyBhcmUgcGFzc2VkIHRvIHRoZSBmaW5hbFxuICAgICAqIGBjYWxsYmFja2AgYXMgYW4gYXJyYXkuXG4gICAgICpcbiAgICAgKiAqKk5vdGU6KiogYHBhcmFsbGVsYCBpcyBhYm91dCBraWNraW5nLW9mZiBJL08gdGFza3MgaW4gcGFyYWxsZWwsIG5vdCBhYm91dFxuICAgICAqIHBhcmFsbGVsIGV4ZWN1dGlvbiBvZiBjb2RlLiAgSWYgeW91ciB0YXNrcyBkbyBub3QgdXNlIGFueSB0aW1lcnMgb3IgcGVyZm9ybVxuICAgICAqIGFueSBJL08sIHRoZXkgd2lsbCBhY3R1YWxseSBiZSBleGVjdXRlZCBpbiBzZXJpZXMuICBBbnkgc3luY2hyb25vdXMgc2V0dXBcbiAgICAgKiBzZWN0aW9ucyBmb3IgZWFjaCB0YXNrIHdpbGwgaGFwcGVuIG9uZSBhZnRlciB0aGUgb3RoZXIuICBKYXZhU2NyaXB0IHJlbWFpbnNcbiAgICAgKiBzaW5nbGUtdGhyZWFkZWQuXG4gICAgICpcbiAgICAgKiAqKkhpbnQ6KiogVXNlIFtgcmVmbGVjdGBde0BsaW5rIG1vZHVsZTpVdGlscy5yZWZsZWN0fSB0byBjb250aW51ZSB0aGVcbiAgICAgKiBleGVjdXRpb24gb2Ygb3RoZXIgdGFza3Mgd2hlbiBhIHRhc2sgZmFpbHMuXG4gICAgICpcbiAgICAgKiBJdCBpcyBhbHNvIHBvc3NpYmxlIHRvIHVzZSBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheS4gRWFjaCBwcm9wZXJ0eSB3aWxsXG4gICAgICogYmUgcnVuIGFzIGEgZnVuY3Rpb24gYW5kIHRoZSByZXN1bHRzIHdpbGwgYmUgcGFzc2VkIHRvIHRoZSBmaW5hbCBgY2FsbGJhY2tgXG4gICAgICogYXMgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXkuIFRoaXMgY2FuIGJlIGEgbW9yZSByZWFkYWJsZSB3YXkgb2YgaGFuZGxpbmdcbiAgICAgKiByZXN1bHRzIGZyb20ge0BsaW5rIGFzeW5jLnBhcmFsbGVsfS5cbiAgICAgKlxuICAgICAqIEBuYW1lIHBhcmFsbGVsXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IHRhc2tzIC0gQSBjb2xsZWN0aW9uIG9mXG4gICAgICogW2FzeW5jIGZ1bmN0aW9uc117QGxpbmsgQXN5bmNGdW5jdGlvbn0gdG8gcnVuLlxuICAgICAqIEVhY2ggYXN5bmMgZnVuY3Rpb24gY2FuIGNvbXBsZXRlIHdpdGggYW55IG51bWJlciBvZiBvcHRpb25hbCBgcmVzdWx0YCB2YWx1ZXMuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEFuIG9wdGlvbmFsIGNhbGxiYWNrIHRvIHJ1biBvbmNlIGFsbCB0aGVcbiAgICAgKiBmdW5jdGlvbnMgaGF2ZSBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5LiBUaGlzIGZ1bmN0aW9uIGdldHMgYSByZXN1bHRzIGFycmF5XG4gICAgICogKG9yIG9iamVjdCkgY29udGFpbmluZyBhbGwgdGhlIHJlc3VsdCBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSB0YXNrIGNhbGxiYWNrcy5cbiAgICAgKiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBub3QgcGFzc2VkXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy9Vc2luZyBDYWxsYmFja3NcbiAgICAgKiBhc3luYy5wYXJhbGxlbChbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICd0d28nKTtcbiAgICAgKiAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgIH1cbiAgICAgKiBdLCBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG8gWydvbmUnLCd0d28nXSBldmVuIHRob3VnaFxuICAgICAqICAgICAvLyB0aGUgc2Vjb25kIGZ1bmN0aW9uIGhhZCBhIHNob3J0ZXIgdGltZW91dC5cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIGFuIGV4YW1wbGUgdXNpbmcgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXlcbiAgICAgKiBhc3luYy5wYXJhbGxlbCh7XG4gICAgICogICAgIG9uZTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMSk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICB0d286IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIDIpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0bzogeyBvbmU6IDEsIHR3bzogMiB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMucGFyYWxsZWwoW1xuICAgICAqICAgICBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJyk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAndHdvJyk7XG4gICAgICogICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICB9XG4gICAgICogXSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG8gWydvbmUnLCd0d28nXSBldmVuIHRob3VnaFxuICAgICAqICAgICAvLyB0aGUgc2Vjb25kIGZ1bmN0aW9uIGhhZCBhIHNob3J0ZXIgdGltZW91dC5cbiAgICAgKiB9KS5jYXRjaChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGFzeW5jLnBhcmFsbGVsKHtcbiAgICAgKiAgICAgb25lOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAxKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIHR3bzogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMik7XG4gICAgICogICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICB9XG4gICAgICogfSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG86IHsgb25lOiAxLCB0d286IDIgfVxuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5wYXJhbGxlbChbXG4gICAgICogICAgICAgICAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgICAgICAgICB9LFxuICAgICAqICAgICAgICAgICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAndHdvJyk7XG4gICAgICogICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgICAgICAgICAgfVxuICAgICAqICAgICAgICAgXSk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG8gWydvbmUnLCd0d28nXSBldmVuIHRob3VnaFxuICAgICAqICAgICAgICAgLy8gdGhlIHNlY29uZCBmdW5jdGlvbiBoYWQgYSBzaG9ydGVyIHRpbWVvdXQuXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIGFuIGV4YW1wbGUgdXNpbmcgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXlcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLnBhcmFsbGVsKHtcbiAgICAgKiAgICAgICAgICAgICBvbmU6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAxKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgICAgICAgICB9LFxuICAgICAqICAgICAgICAgICAgdHdvOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMik7XG4gICAgICogICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgICAgICAgICB9XG4gICAgICogICAgICAgICB9KTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0bzogeyBvbmU6IDEsIHR3bzogMiB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHBhcmFsbGVsJDEodGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiBwYXJhbGxlbChlYWNoT2YkMSwgdGFza3MsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHBhcmFsbGVsYF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnBhcmFsbGVsfSBidXQgcnVucyBhIG1heGltdW0gb2YgYGxpbWl0YCBhc3luYyBvcGVyYXRpb25zIGF0IGFcbiAgICAgKiB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgcGFyYWxsZWxMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnBhcmFsbGVsXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucGFyYWxsZWx9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IHRhc2tzIC0gQSBjb2xsZWN0aW9uIG9mXG4gICAgICogW2FzeW5jIGZ1bmN0aW9uc117QGxpbmsgQXN5bmNGdW5jdGlvbn0gdG8gcnVuLlxuICAgICAqIEVhY2ggYXN5bmMgZnVuY3Rpb24gY2FuIGNvbXBsZXRlIHdpdGggYW55IG51bWJlciBvZiBvcHRpb25hbCBgcmVzdWx0YCB2YWx1ZXMuXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBbiBvcHRpb25hbCBjYWxsYmFjayB0byBydW4gb25jZSBhbGwgdGhlXG4gICAgICogZnVuY3Rpb25zIGhhdmUgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS4gVGhpcyBmdW5jdGlvbiBnZXRzIGEgcmVzdWx0cyBhcnJheVxuICAgICAqIChvciBvYmplY3QpIGNvbnRhaW5pbmcgYWxsIHRoZSByZXN1bHQgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgdGFzayBjYWxsYmFja3MuXG4gICAgICogSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIGEgY2FsbGJhY2sgaXMgbm90IHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHBhcmFsbGVsTGltaXQodGFza3MsIGxpbWl0LCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gcGFyYWxsZWwoZWFjaE9mTGltaXQobGltaXQpLCB0YXNrcywgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEEgcXVldWUgb2YgdGFza3MgZm9yIHRoZSB3b3JrZXIgZnVuY3Rpb24gdG8gY29tcGxldGUuXG4gICAgICogQHR5cGVkZWYge0l0ZXJhYmxlfSBRdWV1ZU9iamVjdFxuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAcHJvcGVydHkge0Z1bmN0aW9ufSBsZW5ndGggLSBhIGZ1bmN0aW9uIHJldHVybmluZyB0aGUgbnVtYmVyIG9mIGl0ZW1zXG4gICAgICogd2FpdGluZyB0byBiZSBwcm9jZXNzZWQuIEludm9rZSB3aXRoIGBxdWV1ZS5sZW5ndGgoKWAuXG4gICAgICogQHByb3BlcnR5IHtib29sZWFufSBzdGFydGVkIC0gYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgYW55XG4gICAgICogaXRlbXMgaGF2ZSBiZWVuIHB1c2hlZCBhbmQgcHJvY2Vzc2VkIGJ5IHRoZSBxdWV1ZS5cbiAgICAgKiBAcHJvcGVydHkge0Z1bmN0aW9ufSBydW5uaW5nIC0gYSBmdW5jdGlvbiByZXR1cm5pbmcgdGhlIG51bWJlciBvZiBpdGVtc1xuICAgICAqIGN1cnJlbnRseSBiZWluZyBwcm9jZXNzZWQuIEludm9rZSB3aXRoIGBxdWV1ZS5ydW5uaW5nKClgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHdvcmtlcnNMaXN0IC0gYSBmdW5jdGlvbiByZXR1cm5pbmcgdGhlIGFycmF5IG9mIGl0ZW1zXG4gICAgICogY3VycmVudGx5IGJlaW5nIHByb2Nlc3NlZC4gSW52b2tlIHdpdGggYHF1ZXVlLndvcmtlcnNMaXN0KClgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGlkbGUgLSBhIGZ1bmN0aW9uIHJldHVybmluZyBmYWxzZSBpZiB0aGVyZSBhcmUgaXRlbXNcbiAgICAgKiB3YWl0aW5nIG9yIGJlaW5nIHByb2Nlc3NlZCwgb3IgdHJ1ZSBpZiBub3QuIEludm9rZSB3aXRoIGBxdWV1ZS5pZGxlKClgLlxuICAgICAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBjb25jdXJyZW5jeSAtIGFuIGludGVnZXIgZm9yIGRldGVybWluaW5nIGhvdyBtYW55IGB3b3JrZXJgXG4gICAgICogZnVuY3Rpb25zIHNob3VsZCBiZSBydW4gaW4gcGFyYWxsZWwuIFRoaXMgcHJvcGVydHkgY2FuIGJlIGNoYW5nZWQgYWZ0ZXIgYVxuICAgICAqIGBxdWV1ZWAgaXMgY3JlYXRlZCB0byBhbHRlciB0aGUgY29uY3VycmVuY3kgb24tdGhlLWZseS5cbiAgICAgKiBAcHJvcGVydHkge251bWJlcn0gcGF5bG9hZCAtIGFuIGludGVnZXIgdGhhdCBzcGVjaWZpZXMgaG93IG1hbnkgaXRlbXMgYXJlXG4gICAgICogcGFzc2VkIHRvIHRoZSB3b3JrZXIgZnVuY3Rpb24gYXQgYSB0aW1lLiBvbmx5IGFwcGxpZXMgaWYgdGhpcyBpcyBhXG4gICAgICogW2NhcmdvXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cuY2FyZ299IG9iamVjdFxuICAgICAqIEBwcm9wZXJ0eSB7QXN5bmNGdW5jdGlvbn0gcHVzaCAtIGFkZCBhIG5ldyB0YXNrIHRvIHRoZSBgcXVldWVgLiBDYWxscyBgY2FsbGJhY2tgXG4gICAgICogb25jZSB0aGUgYHdvcmtlcmAgaGFzIGZpbmlzaGVkIHByb2Nlc3NpbmcgdGhlIHRhc2suIEluc3RlYWQgb2YgYSBzaW5nbGUgdGFzayxcbiAgICAgKiBhIGB0YXNrc2AgYXJyYXkgY2FuIGJlIHN1Ym1pdHRlZC4gVGhlIHJlc3BlY3RpdmUgY2FsbGJhY2sgaXMgdXNlZCBmb3IgZXZlcnlcbiAgICAgKiB0YXNrIGluIHRoZSBsaXN0LiBJbnZva2Ugd2l0aCBgcXVldWUucHVzaCh0YXNrLCBbY2FsbGJhY2tdKWAsXG4gICAgICogQHByb3BlcnR5IHtBc3luY0Z1bmN0aW9ufSB1bnNoaWZ0IC0gYWRkIGEgbmV3IHRhc2sgdG8gdGhlIGZyb250IG9mIHRoZSBgcXVldWVgLlxuICAgICAqIEludm9rZSB3aXRoIGBxdWV1ZS51bnNoaWZ0KHRhc2ssIFtjYWxsYmFja10pYC5cbiAgICAgKiBAcHJvcGVydHkge0FzeW5jRnVuY3Rpb259IHB1c2hBc3luYyAtIHRoZSBzYW1lIGFzIGBxLnB1c2hgLCBleGNlcHQgdGhpcyByZXR1cm5zXG4gICAgICogYSBwcm9taXNlIHRoYXQgcmVqZWN0cyBpZiBhbiBlcnJvciBvY2N1cnMuXG4gICAgICogQHByb3BlcnR5IHtBc3luY0Z1bmN0aW9ufSB1bnNoaWZ0QXN5bmMgLSB0aGUgc2FtZSBhcyBgcS51bnNoaWZ0YCwgZXhjZXB0IHRoaXMgcmV0dXJuc1xuICAgICAqIGEgcHJvbWlzZSB0aGF0IHJlamVjdHMgaWYgYW4gZXJyb3Igb2NjdXJzLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHJlbW92ZSAtIHJlbW92ZSBpdGVtcyBmcm9tIHRoZSBxdWV1ZSB0aGF0IG1hdGNoIGEgdGVzdFxuICAgICAqIGZ1bmN0aW9uLiAgVGhlIHRlc3QgZnVuY3Rpb24gd2lsbCBiZSBwYXNzZWQgYW4gb2JqZWN0IHdpdGggYSBgZGF0YWAgcHJvcGVydHksXG4gICAgICogYW5kIGEgYHByaW9yaXR5YCBwcm9wZXJ0eSwgaWYgdGhpcyBpcyBhXG4gICAgICogW3ByaW9yaXR5UXVldWVde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5wcmlvcml0eVF1ZXVlfSBvYmplY3QuXG4gICAgICogSW52b2tlZCB3aXRoIGBxdWV1ZS5yZW1vdmUodGVzdEZuKWAsIHdoZXJlIGB0ZXN0Rm5gIGlzIG9mIHRoZSBmb3JtXG4gICAgICogYGZ1bmN0aW9uICh7ZGF0YSwgcHJpb3JpdHl9KSB7fWAgYW5kIHJldHVybnMgYSBCb29sZWFuLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHNhdHVyYXRlZCAtIGEgZnVuY3Rpb24gdGhhdCBzZXRzIGEgY2FsbGJhY2sgdGhhdCBpc1xuICAgICAqIGNhbGxlZCB3aGVuIHRoZSBudW1iZXIgb2YgcnVubmluZyB3b3JrZXJzIGhpdHMgdGhlIGBjb25jdXJyZW5jeWAgbGltaXQsIGFuZFxuICAgICAqIGZ1cnRoZXIgdGFza3Mgd2lsbCBiZSBxdWV1ZWQuICBJZiB0aGUgY2FsbGJhY2sgaXMgb21pdHRlZCwgYHEuc2F0dXJhdGVkKClgXG4gICAgICogcmV0dXJucyBhIHByb21pc2UgZm9yIHRoZSBuZXh0IG9jY3VycmVuY2UuXG4gICAgICogQHByb3BlcnR5IHtGdW5jdGlvbn0gdW5zYXR1cmF0ZWQgLSBhIGZ1bmN0aW9uIHRoYXQgc2V0cyBhIGNhbGxiYWNrIHRoYXQgaXNcbiAgICAgKiBjYWxsZWQgd2hlbiB0aGUgbnVtYmVyIG9mIHJ1bm5pbmcgd29ya2VycyBpcyBsZXNzIHRoYW4gdGhlIGBjb25jdXJyZW5jeWAgJlxuICAgICAqIGBidWZmZXJgIGxpbWl0cywgYW5kIGZ1cnRoZXIgdGFza3Mgd2lsbCBub3QgYmUgcXVldWVkLiBJZiB0aGUgY2FsbGJhY2sgaXNcbiAgICAgKiBvbWl0dGVkLCBgcS51bnNhdHVyYXRlZCgpYCByZXR1cm5zIGEgcHJvbWlzZSBmb3IgdGhlIG5leHQgb2NjdXJyZW5jZS5cbiAgICAgKiBAcHJvcGVydHkge251bWJlcn0gYnVmZmVyIC0gQSBtaW5pbXVtIHRocmVzaG9sZCBidWZmZXIgaW4gb3JkZXIgdG8gc2F5IHRoYXRcbiAgICAgKiB0aGUgYHF1ZXVlYCBpcyBgdW5zYXR1cmF0ZWRgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGVtcHR5IC0gYSBmdW5jdGlvbiB0aGF0IHNldHMgYSBjYWxsYmFjayB0aGF0IGlzIGNhbGxlZFxuICAgICAqIHdoZW4gdGhlIGxhc3QgaXRlbSBmcm9tIHRoZSBgcXVldWVgIGlzIGdpdmVuIHRvIGEgYHdvcmtlcmAuIElmIHRoZSBjYWxsYmFja1xuICAgICAqIGlzIG9taXR0ZWQsIGBxLmVtcHR5KClgIHJldHVybnMgYSBwcm9taXNlIGZvciB0aGUgbmV4dCBvY2N1cnJlbmNlLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGRyYWluIC0gYSBmdW5jdGlvbiB0aGF0IHNldHMgYSBjYWxsYmFjayB0aGF0IGlzIGNhbGxlZFxuICAgICAqIHdoZW4gdGhlIGxhc3QgaXRlbSBmcm9tIHRoZSBgcXVldWVgIGhhcyByZXR1cm5lZCBmcm9tIHRoZSBgd29ya2VyYC4gSWYgdGhlXG4gICAgICogY2FsbGJhY2sgaXMgb21pdHRlZCwgYHEuZHJhaW4oKWAgcmV0dXJucyBhIHByb21pc2UgZm9yIHRoZSBuZXh0IG9jY3VycmVuY2UuXG4gICAgICogQHByb3BlcnR5IHtGdW5jdGlvbn0gZXJyb3IgLSBhIGZ1bmN0aW9uIHRoYXQgc2V0cyBhIGNhbGxiYWNrIHRoYXQgaXMgY2FsbGVkXG4gICAgICogd2hlbiBhIHRhc2sgZXJyb3JzLiBIYXMgdGhlIHNpZ25hdHVyZSBgZnVuY3Rpb24oZXJyb3IsIHRhc2spYC4gSWYgdGhlXG4gICAgICogY2FsbGJhY2sgaXMgb21pdHRlZCwgYGVycm9yKClgIHJldHVybnMgYSBwcm9taXNlIHRoYXQgcmVqZWN0cyBvbiB0aGUgbmV4dFxuICAgICAqIGVycm9yLlxuICAgICAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGF1c2VkIC0gYSBib29sZWFuIGZvciBkZXRlcm1pbmluZyB3aGV0aGVyIHRoZSBxdWV1ZSBpc1xuICAgICAqIGluIGEgcGF1c2VkIHN0YXRlLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IHBhdXNlIC0gYSBmdW5jdGlvbiB0aGF0IHBhdXNlcyB0aGUgcHJvY2Vzc2luZyBvZiB0YXNrc1xuICAgICAqIHVudGlsIGByZXN1bWUoKWAgaXMgY2FsbGVkLiBJbnZva2Ugd2l0aCBgcXVldWUucGF1c2UoKWAuXG4gICAgICogQHByb3BlcnR5IHtGdW5jdGlvbn0gcmVzdW1lIC0gYSBmdW5jdGlvbiB0aGF0IHJlc3VtZXMgdGhlIHByb2Nlc3Npbmcgb2ZcbiAgICAgKiBxdWV1ZWQgdGFza3Mgd2hlbiB0aGUgcXVldWUgaXMgcGF1c2VkLiBJbnZva2Ugd2l0aCBgcXVldWUucmVzdW1lKClgLlxuICAgICAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGtpbGwgLSBhIGZ1bmN0aW9uIHRoYXQgcmVtb3ZlcyB0aGUgYGRyYWluYCBjYWxsYmFjayBhbmRcbiAgICAgKiBlbXB0aWVzIHJlbWFpbmluZyB0YXNrcyBmcm9tIHRoZSBxdWV1ZSBmb3JjaW5nIGl0IHRvIGdvIGlkbGUuIE5vIG1vcmUgdGFza3NcbiAgICAgKiBzaG91bGQgYmUgcHVzaGVkIHRvIHRoZSBxdWV1ZSBhZnRlciBjYWxsaW5nIHRoaXMgZnVuY3Rpb24uIEludm9rZSB3aXRoIGBxdWV1ZS5raWxsKClgLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBjb25zdCBxID0gYXN5bmMucXVldWUod29ya2VyLCAyKVxuICAgICAqIHEucHVzaChpdGVtMSlcbiAgICAgKiBxLnB1c2goaXRlbTIpXG4gICAgICogcS5wdXNoKGl0ZW0zKVxuICAgICAqIC8vIHF1ZXVlcyBhcmUgaXRlcmFibGUsIHNwcmVhZCBpbnRvIGFuIGFycmF5IHRvIGluc3BlY3RcbiAgICAgKiBjb25zdCBpdGVtcyA9IFsuLi5xXSAvLyBbaXRlbTEsIGl0ZW0yLCBpdGVtM11cbiAgICAgKiAvLyBvciB1c2UgZm9yIG9mXG4gICAgICogZm9yIChsZXQgaXRlbSBvZiBxKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGl0ZW0pXG4gICAgICogfVxuICAgICAqXG4gICAgICogcS5kcmFpbigoKSA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdhbGwgZG9uZScpXG4gICAgICogfSlcbiAgICAgKiAvLyBvclxuICAgICAqIGF3YWl0IHEuZHJhaW4oKVxuICAgICAqL1xuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIGBxdWV1ZWAgb2JqZWN0IHdpdGggdGhlIHNwZWNpZmllZCBgY29uY3VycmVuY3lgLiBUYXNrcyBhZGRlZCB0byB0aGVcbiAgICAgKiBgcXVldWVgIGFyZSBwcm9jZXNzZWQgaW4gcGFyYWxsZWwgKHVwIHRvIHRoZSBgY29uY3VycmVuY3lgIGxpbWl0KS4gSWYgYWxsXG4gICAgICogYHdvcmtlcmBzIGFyZSBpbiBwcm9ncmVzcywgdGhlIHRhc2sgaXMgcXVldWVkIHVudGlsIG9uZSBiZWNvbWVzIGF2YWlsYWJsZS5cbiAgICAgKiBPbmNlIGEgYHdvcmtlcmAgY29tcGxldGVzIGEgYHRhc2tgLCB0aGF0IGB0YXNrYCdzIGNhbGxiYWNrIGlzIGNhbGxlZC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHF1ZXVlXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmMgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgYSBxdWV1ZWQgdGFzay5cbiAgICAgKiBJZiB5b3Ugd2FudCB0byBoYW5kbGUgZXJyb3JzIGZyb20gYW4gaW5kaXZpZHVhbCB0YXNrLCBwYXNzIGEgY2FsbGJhY2sgdG9cbiAgICAgKiBgcS5wdXNoKClgLiBJbnZva2VkIHdpdGggKHRhc2ssIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge251bWJlcn0gW2NvbmN1cnJlbmN5PTFdIC0gQW4gYGludGVnZXJgIGZvciBkZXRlcm1pbmluZyBob3cgbWFueVxuICAgICAqIGB3b3JrZXJgIGZ1bmN0aW9ucyBzaG91bGQgYmUgcnVuIGluIHBhcmFsbGVsLiAgSWYgb21pdHRlZCwgdGhlIGNvbmN1cnJlbmN5XG4gICAgICogZGVmYXVsdHMgdG8gYDFgLiAgSWYgdGhlIGNvbmN1cnJlbmN5IGlzIGAwYCwgYW4gZXJyb3IgaXMgdGhyb3duLlxuICAgICAqIEByZXR1cm5zIHttb2R1bGU6Q29udHJvbEZsb3cuUXVldWVPYmplY3R9IEEgcXVldWUgb2JqZWN0IHRvIG1hbmFnZSB0aGUgdGFza3MuIENhbGxiYWNrcyBjYW4gYmVcbiAgICAgKiBhdHRhY2hlZCBhcyBjZXJ0YWluIHByb3BlcnRpZXMgdG8gbGlzdGVuIGZvciBzcGVjaWZpYyBldmVudHMgZHVyaW5nIHRoZVxuICAgICAqIGxpZmVjeWNsZSBvZiB0aGUgcXVldWUuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGNyZWF0ZSBhIHF1ZXVlIG9iamVjdCB3aXRoIGNvbmN1cnJlbmN5IDJcbiAgICAgKiB2YXIgcSA9IGFzeW5jLnF1ZXVlKGZ1bmN0aW9uKHRhc2ssIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdoZWxsbyAnICsgdGFzay5uYW1lKTtcbiAgICAgKiAgICAgY2FsbGJhY2soKTtcbiAgICAgKiB9LCAyKTtcbiAgICAgKlxuICAgICAqIC8vIGFzc2lnbiBhIGNhbGxiYWNrXG4gICAgICogcS5kcmFpbihmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coJ2FsbCBpdGVtcyBoYXZlIGJlZW4gcHJvY2Vzc2VkJyk7XG4gICAgICogfSk7XG4gICAgICogLy8gb3IgYXdhaXQgdGhlIGVuZFxuICAgICAqIGF3YWl0IHEuZHJhaW4oKVxuICAgICAqXG4gICAgICogLy8gYXNzaWduIGFuIGVycm9yIGNhbGxiYWNrXG4gICAgICogcS5lcnJvcihmdW5jdGlvbihlcnIsIHRhc2spIHtcbiAgICAgKiAgICAgY29uc29sZS5lcnJvcigndGFzayBleHBlcmllbmNlZCBhbiBlcnJvcicpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYWRkIHNvbWUgaXRlbXMgdG8gdGhlIHF1ZXVlXG4gICAgICogcS5wdXNoKHtuYW1lOiAnZm9vJ30sIGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBmb28nKTtcbiAgICAgKiB9KTtcbiAgICAgKiAvLyBjYWxsYmFjayBpcyBvcHRpb25hbFxuICAgICAqIHEucHVzaCh7bmFtZTogJ2Jhcid9KTtcbiAgICAgKlxuICAgICAqIC8vIGFkZCBzb21lIGl0ZW1zIHRvIHRoZSBxdWV1ZSAoYmF0Y2gtd2lzZSlcbiAgICAgKiBxLnB1c2goW3tuYW1lOiAnYmF6J30se25hbWU6ICdiYXknfSx7bmFtZTogJ2JheCd9XSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKCdmaW5pc2hlZCBwcm9jZXNzaW5nIGl0ZW0nKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIGFkZCBzb21lIGl0ZW1zIHRvIHRoZSBmcm9udCBvZiB0aGUgcXVldWVcbiAgICAgKiBxLnVuc2hpZnQoe25hbWU6ICdiYXInfSwgZnVuY3Rpb24gKGVycikge1xuICAgICAqICAgICBjb25zb2xlLmxvZygnZmluaXNoZWQgcHJvY2Vzc2luZyBiYXInKTtcbiAgICAgKiB9KTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBxdWV1ZSQxICh3b3JrZXIsIGNvbmN1cnJlbmN5KSB7XG4gICAgICAgIHZhciBfd29ya2VyID0gd3JhcEFzeW5jKHdvcmtlcik7XG4gICAgICAgIHJldHVybiBxdWV1ZSgoaXRlbXMsIGNiKSA9PiB7XG4gICAgICAgICAgICBfd29ya2VyKGl0ZW1zWzBdLCBjYik7XG4gICAgICAgIH0sIGNvbmN1cnJlbmN5LCAxKTtcbiAgICB9XG5cbiAgICAvLyBCaW5hcnkgbWluLWhlYXAgaW1wbGVtZW50YXRpb24gdXNlZCBmb3IgcHJpb3JpdHkgcXVldWUuXG4gICAgLy8gSW1wbGVtZW50YXRpb24gaXMgc3RhYmxlLCBpLmUuIHB1c2ggdGltZSBpcyBjb25zaWRlcmVkIGZvciBlcXVhbCBwcmlvcml0aWVzXG4gICAgY2xhc3MgSGVhcCB7XG4gICAgICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICAgICAgdGhpcy5oZWFwID0gW107XG4gICAgICAgICAgICB0aGlzLnB1c2hDb3VudCA9IE51bWJlci5NSU5fU0FGRV9JTlRFR0VSO1xuICAgICAgICB9XG5cbiAgICAgICAgZ2V0IGxlbmd0aCgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmhlYXAubGVuZ3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgZW1wdHkgKCkge1xuICAgICAgICAgICAgdGhpcy5oZWFwID0gW107XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfVxuXG4gICAgICAgIHBlcmNVcChpbmRleCkge1xuICAgICAgICAgICAgbGV0IHA7XG5cbiAgICAgICAgICAgIHdoaWxlIChpbmRleCA+IDAgJiYgc21hbGxlcih0aGlzLmhlYXBbaW5kZXhdLCB0aGlzLmhlYXBbcD1wYXJlbnQoaW5kZXgpXSkpIHtcbiAgICAgICAgICAgICAgICBsZXQgdCA9IHRoaXMuaGVhcFtpbmRleF07XG4gICAgICAgICAgICAgICAgdGhpcy5oZWFwW2luZGV4XSA9IHRoaXMuaGVhcFtwXTtcbiAgICAgICAgICAgICAgICB0aGlzLmhlYXBbcF0gPSB0O1xuXG4gICAgICAgICAgICAgICAgaW5kZXggPSBwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcGVyY0Rvd24oaW5kZXgpIHtcbiAgICAgICAgICAgIGxldCBsO1xuXG4gICAgICAgICAgICB3aGlsZSAoKGw9bGVmdENoaShpbmRleCkpIDwgdGhpcy5oZWFwLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGlmIChsKzEgPCB0aGlzLmhlYXAubGVuZ3RoICYmIHNtYWxsZXIodGhpcy5oZWFwW2wrMV0sIHRoaXMuaGVhcFtsXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgbCA9IGwrMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc21hbGxlcih0aGlzLmhlYXBbaW5kZXhdLCB0aGlzLmhlYXBbbF0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxldCB0ID0gdGhpcy5oZWFwW2luZGV4XTtcbiAgICAgICAgICAgICAgICB0aGlzLmhlYXBbaW5kZXhdID0gdGhpcy5oZWFwW2xdO1xuICAgICAgICAgICAgICAgIHRoaXMuaGVhcFtsXSA9IHQ7XG5cbiAgICAgICAgICAgICAgICBpbmRleCA9IGw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwdXNoKG5vZGUpIHtcbiAgICAgICAgICAgIG5vZGUucHVzaENvdW50ID0gKyt0aGlzLnB1c2hDb3VudDtcbiAgICAgICAgICAgIHRoaXMuaGVhcC5wdXNoKG5vZGUpO1xuICAgICAgICAgICAgdGhpcy5wZXJjVXAodGhpcy5oZWFwLmxlbmd0aC0xKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVuc2hpZnQobm9kZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGVhcC5wdXNoKG5vZGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2hpZnQoKSB7XG4gICAgICAgICAgICBsZXQgW3RvcF0gPSB0aGlzLmhlYXA7XG5cbiAgICAgICAgICAgIHRoaXMuaGVhcFswXSA9IHRoaXMuaGVhcFt0aGlzLmhlYXAubGVuZ3RoLTFdO1xuICAgICAgICAgICAgdGhpcy5oZWFwLnBvcCgpO1xuICAgICAgICAgICAgdGhpcy5wZXJjRG93bigwKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRvcDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvQXJyYXkoKSB7XG4gICAgICAgICAgICByZXR1cm4gWy4uLnRoaXNdO1xuICAgICAgICB9XG5cbiAgICAgICAgKltTeW1ib2wuaXRlcmF0b3JdICgpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5oZWFwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgeWllbGQgdGhpcy5oZWFwW2ldLmRhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZW1vdmUgKHRlc3RGbikge1xuICAgICAgICAgICAgbGV0IGogPSAwO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmhlYXAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoIXRlc3RGbih0aGlzLmhlYXBbaV0pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGVhcFtqXSA9IHRoaXMuaGVhcFtpXTtcbiAgICAgICAgICAgICAgICAgICAgaisrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5oZWFwLnNwbGljZShqKTtcblxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IHBhcmVudCh0aGlzLmhlYXAubGVuZ3RoLTEpOyBpID49IDA7IGktLSkge1xuICAgICAgICAgICAgICAgIHRoaXMucGVyY0Rvd24oaSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gbGVmdENoaShpKSB7XG4gICAgICAgIHJldHVybiAoaTw8MSkrMTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJlbnQoaSkge1xuICAgICAgICByZXR1cm4gKChpKzEpPj4xKS0xO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHNtYWxsZXIoeCwgeSkge1xuICAgICAgICBpZiAoeC5wcmlvcml0eSAhPT0geS5wcmlvcml0eSkge1xuICAgICAgICAgICAgcmV0dXJuIHgucHJpb3JpdHkgPCB5LnByaW9yaXR5O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHgucHVzaENvdW50IDwgeS5wdXNoQ291bnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYXN5bmMucXVldWVde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5xdWV1ZX0gb25seSB0YXNrcyBhcmUgYXNzaWduZWQgYSBwcmlvcml0eSBhbmRcbiAgICAgKiBjb21wbGV0ZWQgaW4gYXNjZW5kaW5nIHByaW9yaXR5IG9yZGVyLlxuICAgICAqXG4gICAgICogQG5hbWUgcHJpb3JpdHlRdWV1ZVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnF1ZXVlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucXVldWV9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gd29ya2VyIC0gQW4gYXN5bmMgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcgYSBxdWV1ZWQgdGFzay5cbiAgICAgKiBJZiB5b3Ugd2FudCB0byBoYW5kbGUgZXJyb3JzIGZyb20gYW4gaW5kaXZpZHVhbCB0YXNrLCBwYXNzIGEgY2FsbGJhY2sgdG9cbiAgICAgKiBgcS5wdXNoKClgLlxuICAgICAqIEludm9rZWQgd2l0aCAodGFzaywgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBjb25jdXJyZW5jeSAtIEFuIGBpbnRlZ2VyYCBmb3IgZGV0ZXJtaW5pbmcgaG93IG1hbnkgYHdvcmtlcmBcbiAgICAgKiBmdW5jdGlvbnMgc2hvdWxkIGJlIHJ1biBpbiBwYXJhbGxlbC4gIElmIG9taXR0ZWQsIHRoZSBjb25jdXJyZW5jeSBkZWZhdWx0cyB0b1xuICAgICAqIGAxYC4gIElmIHRoZSBjb25jdXJyZW5jeSBpcyBgMGAsIGFuIGVycm9yIGlzIHRocm93bi5cbiAgICAgKiBAcmV0dXJucyB7bW9kdWxlOkNvbnRyb2xGbG93LlF1ZXVlT2JqZWN0fSBBIHByaW9yaXR5UXVldWUgb2JqZWN0IHRvIG1hbmFnZSB0aGUgdGFza3MuIFRoZXJlIGFyZSB0aHJlZVxuICAgICAqIGRpZmZlcmVuY2VzIGJldHdlZW4gYHF1ZXVlYCBhbmQgYHByaW9yaXR5UXVldWVgIG9iamVjdHM6XG4gICAgICogKiBgcHVzaCh0YXNrLCBwcmlvcml0eSwgW2NhbGxiYWNrXSlgIC0gYHByaW9yaXR5YCBzaG91bGQgYmUgYSBudW1iZXIuIElmIGFuXG4gICAgICogICBhcnJheSBvZiBgdGFza3NgIGlzIGdpdmVuLCBhbGwgdGFza3Mgd2lsbCBiZSBhc3NpZ25lZCB0aGUgc2FtZSBwcmlvcml0eS5cbiAgICAgKiAqIGBwdXNoQXN5bmModGFzaywgcHJpb3JpdHksIFtjYWxsYmFja10pYCAtIHRoZSBzYW1lIGFzIGBwcmlvcml0eVF1ZXVlLnB1c2hgLFxuICAgICAqICAgZXhjZXB0IHRoaXMgcmV0dXJucyBhIHByb21pc2UgdGhhdCByZWplY3RzIGlmIGFuIGVycm9yIG9jY3Vycy5cbiAgICAgKiAqIFRoZSBgdW5zaGlmdGAgYW5kIGB1bnNoaWZ0QXN5bmNgIG1ldGhvZHMgd2VyZSByZW1vdmVkLlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHByaW9yaXR5UXVldWUod29ya2VyLCBjb25jdXJyZW5jeSkge1xuICAgICAgICAvLyBTdGFydCB3aXRoIGEgbm9ybWFsIHF1ZXVlXG4gICAgICAgIHZhciBxID0gcXVldWUkMSh3b3JrZXIsIGNvbmN1cnJlbmN5KTtcblxuICAgICAgICB2YXIge1xuICAgICAgICAgICAgcHVzaCxcbiAgICAgICAgICAgIHB1c2hBc3luY1xuICAgICAgICB9ID0gcTtcblxuICAgICAgICBxLl90YXNrcyA9IG5ldyBIZWFwKCk7XG4gICAgICAgIHEuX2NyZWF0ZVRhc2tJdGVtID0gKHtkYXRhLCBwcmlvcml0eX0sIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgICAgcHJpb3JpdHksXG4gICAgICAgICAgICAgICAgY2FsbGJhY2tcbiAgICAgICAgICAgIH07XG4gICAgICAgIH07XG5cbiAgICAgICAgZnVuY3Rpb24gY3JlYXRlRGF0YUl0ZW1zKHRhc2tzLCBwcmlvcml0eSkge1xuICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhc2tzKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7ZGF0YTogdGFza3MsIHByaW9yaXR5fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0YXNrcy5tYXAoZGF0YSA9PiB7IHJldHVybiB7ZGF0YSwgcHJpb3JpdHl9OyB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE92ZXJyaWRlIHB1c2ggdG8gYWNjZXB0IHNlY29uZCBwYXJhbWV0ZXIgcmVwcmVzZW50aW5nIHByaW9yaXR5XG4gICAgICAgIHEucHVzaCA9IGZ1bmN0aW9uKGRhdGEsIHByaW9yaXR5ID0gMCwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgIHJldHVybiBwdXNoKGNyZWF0ZURhdGFJdGVtcyhkYXRhLCBwcmlvcml0eSksIGNhbGxiYWNrKTtcbiAgICAgICAgfTtcblxuICAgICAgICBxLnB1c2hBc3luYyA9IGZ1bmN0aW9uKGRhdGEsIHByaW9yaXR5ID0gMCwgY2FsbGJhY2spIHtcbiAgICAgICAgICAgIHJldHVybiBwdXNoQXN5bmMoY3JlYXRlRGF0YUl0ZW1zKGRhdGEsIHByaW9yaXR5KSwgY2FsbGJhY2spO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIFJlbW92ZSB1bnNoaWZ0IGZ1bmN0aW9uc1xuICAgICAgICBkZWxldGUgcS51bnNoaWZ0O1xuICAgICAgICBkZWxldGUgcS51bnNoaWZ0QXN5bmM7XG5cbiAgICAgICAgcmV0dXJuIHE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUnVucyB0aGUgYHRhc2tzYCBhcnJheSBvZiBmdW5jdGlvbnMgaW4gcGFyYWxsZWwsIHdpdGhvdXQgd2FpdGluZyB1bnRpbCB0aGVcbiAgICAgKiBwcmV2aW91cyBmdW5jdGlvbiBoYXMgY29tcGxldGVkLiBPbmNlIGFueSBvZiB0aGUgYHRhc2tzYCBjb21wbGV0ZSBvciBwYXNzIGFuXG4gICAgICogZXJyb3IgdG8gaXRzIGNhbGxiYWNrLCB0aGUgbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZC4gSXQnc1xuICAgICAqIGVxdWl2YWxlbnQgdG8gYFByb21pc2UucmFjZSgpYC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJhY2VcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheX0gdGFza3MgLSBBbiBhcnJheSBjb250YWluaW5nIFthc3luYyBmdW5jdGlvbnNde0BsaW5rIEFzeW5jRnVuY3Rpb259XG4gICAgICogdG8gcnVuLiBFYWNoIGZ1bmN0aW9uIGNhbiBjb21wbGV0ZSB3aXRoIGFuIG9wdGlvbmFsIGByZXN1bHRgIHZhbHVlLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrIC0gQSBjYWxsYmFjayB0byBydW4gb25jZSBhbnkgb2YgdGhlIGZ1bmN0aW9ucyBoYXZlXG4gICAgICogY29tcGxldGVkLiBUaGlzIGZ1bmN0aW9uIGdldHMgYW4gZXJyb3Igb3IgcmVzdWx0IGZyb20gdGhlIGZpcnN0IGZ1bmN0aW9uIHRoYXRcbiAgICAgKiBjb21wbGV0ZWQuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIGEgY2FsbGJhY2sgaXMgb21pdHRlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBhc3luYy5yYWNlKFtcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ29uZScpO1xuICAgICAqICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0sXG4gICAgICogLy8gbWFpbiBjYWxsYmFja1xuICAgICAqIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIC8vIHRoZSByZXN1bHQgd2lsbCBiZSBlcXVhbCB0byAndHdvJyBhcyBpdCBmaW5pc2hlcyBlYXJsaWVyXG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gcmFjZSh0YXNrcywgY2FsbGJhY2spIHtcbiAgICAgICAgY2FsbGJhY2sgPSBvbmNlKGNhbGxiYWNrKTtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhc2tzKSkgcmV0dXJuIGNhbGxiYWNrKG5ldyBUeXBlRXJyb3IoJ0ZpcnN0IGFyZ3VtZW50IHRvIHJhY2UgbXVzdCBiZSBhbiBhcnJheSBvZiBmdW5jdGlvbnMnKSk7XG4gICAgICAgIGlmICghdGFza3MubGVuZ3RoKSByZXR1cm4gY2FsbGJhY2soKTtcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIGwgPSB0YXNrcy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgICAgICAgIHdyYXBBc3luYyh0YXNrc1tpXSkoY2FsbGJhY2spO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdmFyIHJhY2UkMSA9IGF3YWl0aWZ5KHJhY2UsIDIpO1xuXG4gICAgLyoqXG4gICAgICogU2FtZSBhcyBbYHJlZHVjZWBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5yZWR1Y2V9LCBvbmx5IG9wZXJhdGVzIG9uIGBhcnJheWAgaW4gcmV2ZXJzZSBvcmRlci5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJlZHVjZVJpZ2h0XG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29sbGVjdGlvbnNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMucmVkdWNlXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMucmVkdWNlfVxuICAgICAqIEBhbGlhcyBmb2xkclxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheX0gYXJyYXkgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7Kn0gbWVtbyAtIFRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSByZWR1Y3Rpb24uXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEEgZnVuY3Rpb24gYXBwbGllZCB0byBlYWNoIGl0ZW0gaW4gdGhlXG4gICAgICogYXJyYXkgdG8gcHJvZHVjZSB0aGUgbmV4dCBzdGVwIGluIHRoZSByZWR1Y3Rpb24uXG4gICAgICogVGhlIGBpdGVyYXRlZWAgc2hvdWxkIGNvbXBsZXRlIHdpdGggdGhlIG5leHQgc3RhdGUgb2YgdGhlIHJlZHVjdGlvbi5cbiAgICAgKiBJZiB0aGUgaXRlcmF0ZWUgY29tcGxldGVzIHdpdGggYW4gZXJyb3IsIHRoZSByZWR1Y3Rpb24gaXMgc3RvcHBlZCBhbmQgdGhlXG4gICAgICogbWFpbiBgY2FsbGJhY2tgIGlzIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZSBlcnJvci5cbiAgICAgKiBJbnZva2VkIHdpdGggKG1lbW8sIGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQuIFJlc3VsdCBpcyB0aGUgcmVkdWNlZCB2YWx1ZS4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwYXNzZWRcbiAgICAgKi9cbiAgICBmdW5jdGlvbiByZWR1Y2VSaWdodCAoYXJyYXksIG1lbW8sIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgcmV2ZXJzZWQgPSBbLi4uYXJyYXldLnJldmVyc2UoKTtcbiAgICAgICAgcmV0dXJuIHJlZHVjZSQxKHJldmVyc2VkLCBtZW1vLCBpdGVyYXRlZSwgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdyYXBzIHRoZSBhc3luYyBmdW5jdGlvbiBpbiBhbm90aGVyIGZ1bmN0aW9uIHRoYXQgYWx3YXlzIGNvbXBsZXRlcyB3aXRoIGFcbiAgICAgKiByZXN1bHQgb2JqZWN0LCBldmVuIHdoZW4gaXQgZXJyb3JzLlxuICAgICAqXG4gICAgICogVGhlIHJlc3VsdCBvYmplY3QgaGFzIGVpdGhlciB0aGUgcHJvcGVydHkgYGVycm9yYCBvciBgdmFsdWVgLlxuICAgICAqXG4gICAgICogQG5hbWUgcmVmbGVjdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOlV0aWxzXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBVdGlsXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBmbiAtIFRoZSBhc3luYyBmdW5jdGlvbiB5b3Ugd2FudCB0byB3cmFwXG4gICAgICogQHJldHVybnMge0Z1bmN0aW9ufSAtIEEgZnVuY3Rpb24gdGhhdCBhbHdheXMgcGFzc2VzIG51bGwgdG8gaXQncyBjYWxsYmFjayBhc1xuICAgICAqIHRoZSBlcnJvci4gVGhlIHNlY29uZCBhcmd1bWVudCB0byB0aGUgY2FsbGJhY2sgd2lsbCBiZSBhbiBgb2JqZWN0YCB3aXRoXG4gICAgICogZWl0aGVyIGFuIGBlcnJvcmAgb3IgYSBgdmFsdWVgIHByb3BlcnR5LlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBhc3luYy5wYXJhbGxlbChbXG4gICAgICogICAgIGFzeW5jLnJlZmxlY3QoZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIGRvIHNvbWUgc3R1ZmYgLi4uXG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJyk7XG4gICAgICogICAgIH0pLFxuICAgICAqICAgICBhc3luYy5yZWZsZWN0KGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBkbyBzb21lIG1vcmUgc3R1ZmYgYnV0IGVycm9yIC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2soJ2JhZCBzdHVmZiBoYXBwZW5lZCcpO1xuICAgICAqICAgICB9KSxcbiAgICAgKiAgICAgYXN5bmMucmVmbGVjdChmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gZG8gc29tZSBtb3JlIHN0dWZmIC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICB9KVxuICAgICAqIF0sXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgLy8gdmFsdWVzXG4gICAgICogICAgIC8vIHJlc3VsdHNbMF0udmFsdWUgPSAnb25lJ1xuICAgICAqICAgICAvLyByZXN1bHRzWzFdLmVycm9yID0gJ2JhZCBzdHVmZiBoYXBwZW5lZCdcbiAgICAgKiAgICAgLy8gcmVzdWx0c1syXS52YWx1ZSA9ICd0d28nXG4gICAgICogfSk7XG4gICAgICovXG4gICAgZnVuY3Rpb24gcmVmbGVjdChmbikge1xuICAgICAgICB2YXIgX2ZuID0gd3JhcEFzeW5jKGZuKTtcbiAgICAgICAgcmV0dXJuIGluaXRpYWxQYXJhbXMoZnVuY3Rpb24gcmVmbGVjdE9uKGFyZ3MsIHJlZmxlY3RDYWxsYmFjaykge1xuICAgICAgICAgICAgYXJncy5wdXNoKChlcnJvciwgLi4uY2JBcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHJldFZhbCA9IHt9O1xuICAgICAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICByZXRWYWwuZXJyb3IgPSBlcnJvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNiQXJncy5sZW5ndGggPiAwKXtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHZhbHVlID0gY2JBcmdzO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2JBcmdzLmxlbmd0aCA8PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdID0gY2JBcmdzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldFZhbC52YWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZWZsZWN0Q2FsbGJhY2sobnVsbCwgcmV0VmFsKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICByZXR1cm4gX2ZuLmFwcGx5KHRoaXMsIGFyZ3MpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBIGhlbHBlciBmdW5jdGlvbiB0aGF0IHdyYXBzIGFuIGFycmF5IG9yIGFuIG9iamVjdCBvZiBmdW5jdGlvbnMgd2l0aCBgcmVmbGVjdGAuXG4gICAgICpcbiAgICAgKiBAbmFtZSByZWZsZWN0QWxsXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6VXRpbHNcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMucmVmbGVjdF17QGxpbmsgbW9kdWxlOlV0aWxzLnJlZmxlY3R9XG4gICAgICogQGNhdGVnb3J5IFV0aWxcbiAgICAgKiBAcGFyYW0ge0FycmF5fE9iamVjdHxJdGVyYWJsZX0gdGFza3MgLSBUaGUgY29sbGVjdGlvbiBvZlxuICAgICAqIFthc3luYyBmdW5jdGlvbnNde0BsaW5rIEFzeW5jRnVuY3Rpb259IHRvIHdyYXAgaW4gYGFzeW5jLnJlZmxlY3RgLlxuICAgICAqIEByZXR1cm5zIHtBcnJheX0gUmV0dXJucyBhbiBhcnJheSBvZiBhc3luYyBmdW5jdGlvbnMsIGVhY2ggd3JhcHBlZCBpblxuICAgICAqIGBhc3luYy5yZWZsZWN0YFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiBsZXQgdGFza3MgPSBbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAvLyBkbyBzb21lIG1vcmUgc3R1ZmYgYnV0IGVycm9yIC4uLlxuICAgICAqICAgICAgICAgY2FsbGJhY2sobmV3IEVycm9yKCdiYWQgc3R1ZmYgaGFwcGVuZWQnKSk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICd0d28nKTtcbiAgICAgKiAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgIH1cbiAgICAgKiBdO1xuICAgICAqXG4gICAgICogYXN5bmMucGFyYWxsZWwoYXN5bmMucmVmbGVjdEFsbCh0YXNrcyksXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgLy8gdmFsdWVzXG4gICAgICogICAgIC8vIHJlc3VsdHNbMF0udmFsdWUgPSAnb25lJ1xuICAgICAqICAgICAvLyByZXN1bHRzWzFdLmVycm9yID0gRXJyb3IoJ2JhZCBzdHVmZiBoYXBwZW5lZCcpXG4gICAgICogICAgIC8vIHJlc3VsdHNbMl0udmFsdWUgPSAndHdvJ1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGxldCB0YXNrcyA9IHtcbiAgICAgKiAgICAgb25lOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJyk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICB0d286IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjaygndHdvJyk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIHRocmVlOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAndGhyZWUnKTtcbiAgICAgKiAgICAgICAgIH0sIDEwMCk7XG4gICAgICogICAgIH1cbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogYXN5bmMucGFyYWxsZWwoYXN5bmMucmVmbGVjdEFsbCh0YXNrcyksXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgLy8gdmFsdWVzXG4gICAgICogICAgIC8vIHJlc3VsdHMub25lLnZhbHVlID0gJ29uZSdcbiAgICAgKiAgICAgLy8gcmVzdWx0cy50d28uZXJyb3IgPSAndHdvJ1xuICAgICAqICAgICAvLyByZXN1bHRzLnRocmVlLnZhbHVlID0gJ3RocmVlJ1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlZmxlY3RBbGwodGFza3MpIHtcbiAgICAgICAgdmFyIHJlc3VsdHM7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhc2tzKSkge1xuICAgICAgICAgICAgcmVzdWx0cyA9IHRhc2tzLm1hcChyZWZsZWN0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdHMgPSB7fTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHRhc2tzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgcmVzdWx0c1trZXldID0gcmVmbGVjdC5jYWxsKHRoaXMsIHRhc2tzW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcmVqZWN0KGVhY2hmbiwgYXJyLCBfaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNvbnN0IGl0ZXJhdGVlID0gd3JhcEFzeW5jKF9pdGVyYXRlZSk7XG4gICAgICAgIHJldHVybiBfZmlsdGVyKGVhY2hmbiwgYXJyLCAodmFsdWUsIGNiKSA9PiB7XG4gICAgICAgICAgICBpdGVyYXRlZSh2YWx1ZSwgKGVyciwgdikgPT4ge1xuICAgICAgICAgICAgICAgIGNiKGVyciwgIXYpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgb3Bwb3NpdGUgb2YgW2BmaWx0ZXJgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuZmlsdGVyfS4gUmVtb3ZlcyB2YWx1ZXMgdGhhdCBwYXNzIGFuIGBhc3luY2AgdHJ1dGggdGVzdC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHJlamVjdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLmZpbHRlcl17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLmZpbHRlcn1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiB2YWx1ZSBhcyBpdHMgYHJlc3VsdGAuXG4gICAgICogSW52b2tlZCB3aXRoIChpdGVtLCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLiBJbnZva2VkIHdpdGggKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKlxuICAgICAqIGNvbnN0IGZpbGVMaXN0ID0gWydkaXIxL2ZpbGUxLnR4dCcsJ2RpcjIvZmlsZTMudHh0JywnZGlyMy9maWxlNi50eHQnXTtcbiAgICAgKlxuICAgICAqIC8vIGFzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IGNoZWNrcyBpZiBhIGZpbGUgZXhpc3RzXG4gICAgICogZnVuY3Rpb24gZmlsZUV4aXN0cyhmaWxlLCBjYWxsYmFjaykge1xuICAgICAqICAgIGZzLmFjY2VzcyhmaWxlLCBmcy5jb25zdGFudHMuRl9PSywgKGVycikgPT4ge1xuICAgICAqICAgICAgICBjYWxsYmFjayhudWxsLCAhZXJyKTtcbiAgICAgKiAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy5yZWplY3QoZmlsZUxpc3QsIGZpbGVFeGlzdHMsIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgIC8vIFsgJ2RpcjMvZmlsZTYudHh0JyBdXG4gICAgICogICAgLy8gcmVzdWx0cyBub3cgZXF1YWxzIGFuIGFycmF5IG9mIHRoZSBub24tZXhpc3RpbmcgZmlsZXNcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMucmVqZWN0KGZpbGVMaXN0LCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIFsgJ2RpcjMvZmlsZTYudHh0JyBdXG4gICAgICogICAgIC8vIHJlc3VsdHMgbm93IGVxdWFscyBhbiBhcnJheSBvZiB0aGUgbm9uLWV4aXN0aW5nIGZpbGVzXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMucmVqZWN0KGZpbGVMaXN0LCBmaWxlRXhpc3RzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgLy8gWyAnZGlyMy9maWxlNi50eHQnIF1cbiAgICAgKiAgICAgICAgIC8vIHJlc3VsdHMgbm93IGVxdWFscyBhbiBhcnJheSBvZiB0aGUgbm9uLWV4aXN0aW5nIGZpbGVzXG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlamVjdCQxIChjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlYWNoT2YkMSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgcmVqZWN0JDIgPSBhd2FpdGlmeShyZWplY3QkMSwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHJlamVjdGBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5yZWplY3R9IGJ1dCBydW5zIGEgbWF4aW11bSBvZiBgbGltaXRgIGFzeW5jIG9wZXJhdGlvbnMgYXQgYVxuICAgICAqIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSByZWplY3RMaW1pdFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnJlamVjdF17QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLnJlamVjdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluXG4gICAgICogYGNvbGxgLlxuICAgICAqIFRoZSBzaG91bGQgY29tcGxldGUgd2l0aCBhIGJvb2xlYW4gdmFsdWUgYXMgaXRzIGByZXN1bHRgLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlamVjdExpbWl0IChjb2xsLCBsaW1pdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZWFjaE9mTGltaXQobGltaXQpLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciByZWplY3RMaW1pdCQxID0gYXdhaXRpZnkocmVqZWN0TGltaXQsIDQpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNhbWUgYXMgW2ByZWplY3RgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMucmVqZWN0fSBidXQgcnVucyBvbmx5IGEgc2luZ2xlIGFzeW5jIG9wZXJhdGlvbiBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSByZWplY3RTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5yZWplY3Rde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5yZWplY3R9XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIHRydXRoIHRlc3QgdG8gYXBwbHkgdG8gZWFjaCBpdGVtIGluXG4gICAgICogYGNvbGxgLlxuICAgICAqIFRoZSBzaG91bGQgY29tcGxldGUgd2l0aCBhIGJvb2xlYW4gdmFsdWUgYXMgaXRzIGByZXN1bHRgLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IFtjYWxsYmFja10gLSBBIGNhbGxiYWNrIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBhbGwgdGhlXG4gICAgICogYGl0ZXJhdGVlYCBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJlamVjdFNlcmllcyAoY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIHJlamVjdFNlcmllcyQxID0gYXdhaXRpZnkocmVqZWN0U2VyaWVzLCAzKTtcblxuICAgIGZ1bmN0aW9uIGNvbnN0YW50JDEodmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEF0dGVtcHRzIHRvIGdldCBhIHN1Y2Nlc3NmdWwgcmVzcG9uc2UgZnJvbSBgdGFza2Agbm8gbW9yZSB0aGFuIGB0aW1lc2AgdGltZXNcbiAgICAgKiBiZWZvcmUgcmV0dXJuaW5nIGFuIGVycm9yLiBJZiB0aGUgdGFzayBpcyBzdWNjZXNzZnVsLCB0aGUgYGNhbGxiYWNrYCB3aWxsIGJlXG4gICAgICogcGFzc2VkIHRoZSByZXN1bHQgb2YgdGhlIHN1Y2Nlc3NmdWwgdGFzay4gSWYgYWxsIGF0dGVtcHRzIGZhaWwsIHRoZSBjYWxsYmFja1xuICAgICAqIHdpbGwgYmUgcGFzc2VkIHRoZSBlcnJvciBhbmQgcmVzdWx0IChpZiBhbnkpIG9mIHRoZSBmaW5hbCBhdHRlbXB0LlxuICAgICAqXG4gICAgICogQG5hbWUgcmV0cnlcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHNlZSBbYXN5bmMucmV0cnlhYmxlXXtAbGluayBtb2R1bGU6Q29udHJvbEZsb3cucmV0cnlhYmxlfVxuICAgICAqIEBwYXJhbSB7T2JqZWN0fG51bWJlcn0gW29wdHMgPSB7dGltZXM6IDUsIGludGVydmFsOiAwfXwgNV0gLSBDYW4gYmUgZWl0aGVyIGFuXG4gICAgICogb2JqZWN0IHdpdGggYHRpbWVzYCBhbmQgYGludGVydmFsYCBvciBhIG51bWJlci5cbiAgICAgKiAqIGB0aW1lc2AgLSBUaGUgbnVtYmVyIG9mIGF0dGVtcHRzIHRvIG1ha2UgYmVmb3JlIGdpdmluZyB1cC4gIFRoZSBkZWZhdWx0XG4gICAgICogICBpcyBgNWAuXG4gICAgICogKiBgaW50ZXJ2YWxgIC0gVGhlIHRpbWUgdG8gd2FpdCBiZXR3ZWVuIHJldHJpZXMsIGluIG1pbGxpc2Vjb25kcy4gIFRoZVxuICAgICAqICAgZGVmYXVsdCBpcyBgMGAuIFRoZSBpbnRlcnZhbCBtYXkgYWxzbyBiZSBzcGVjaWZpZWQgYXMgYSBmdW5jdGlvbiBvZiB0aGVcbiAgICAgKiAgIHJldHJ5IGNvdW50IChzZWUgZXhhbXBsZSkuXG4gICAgICogKiBgZXJyb3JGaWx0ZXJgIC0gQW4gb3B0aW9uYWwgc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBpcyBpbnZva2VkIG9uXG4gICAgICogICBlcnJvbmVvdXMgcmVzdWx0LiBJZiBpdCByZXR1cm5zIGB0cnVlYCB0aGUgcmV0cnkgYXR0ZW1wdHMgd2lsbCBjb250aW51ZTtcbiAgICAgKiAgIGlmIHRoZSBmdW5jdGlvbiByZXR1cm5zIGBmYWxzZWAgdGhlIHJldHJ5IGZsb3cgaXMgYWJvcnRlZCB3aXRoIHRoZSBjdXJyZW50XG4gICAgICogICBhdHRlbXB0J3MgZXJyb3IgYW5kIHJlc3VsdCBiZWluZyByZXR1cm5lZCB0byB0aGUgZmluYWwgY2FsbGJhY2suXG4gICAgICogICBJbnZva2VkIHdpdGggKGVycikuXG4gICAgICogKiBJZiBgb3B0c2AgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgc3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgdGltZXMgdG8gcmV0cnksXG4gICAgICogICB3aXRoIHRoZSBkZWZhdWx0IGludGVydmFsIG9mIGAwYC5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IHRhc2sgLSBBbiBhc3luYyBmdW5jdGlvbiB0byByZXRyeS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gdGhlXG4gICAgICogdGFzayBoYXMgc3VjY2VlZGVkLCBvciBhZnRlciB0aGUgZmluYWwgZmFpbGVkIGF0dGVtcHQuIEl0IHJlY2VpdmVzIHRoZSBgZXJyYFxuICAgICAqIGFuZCBgcmVzdWx0YCBhcmd1bWVudHMgb2YgdGhlIGxhc3QgYXR0ZW1wdCBhdCBjb21wbGV0aW5nIHRoZSBgdGFza2AuIEludm9rZWRcbiAgICAgKiB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UgaWYgbm8gY2FsbGJhY2sgcHJvdmlkZWRcbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBUaGUgYHJldHJ5YCBmdW5jdGlvbiBjYW4gYmUgdXNlZCBhcyBhIHN0YW5kLWFsb25lIGNvbnRyb2wgZmxvdyBieSBwYXNzaW5nXG4gICAgICogLy8gYSBjYWxsYmFjaywgYXMgc2hvd24gYmVsb3c6XG4gICAgICpcbiAgICAgKiAvLyB0cnkgY2FsbGluZyBhcGlNZXRob2QgMyB0aW1lc1xuICAgICAqIGFzeW5jLnJldHJ5KDMsIGFwaU1ldGhvZCwgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gZG8gc29tZXRoaW5nIHdpdGggdGhlIHJlc3VsdFxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gdHJ5IGNhbGxpbmcgYXBpTWV0aG9kIDMgdGltZXMsIHdhaXRpbmcgMjAwIG1zIGJldHdlZW4gZWFjaCByZXRyeVxuICAgICAqIGFzeW5jLnJldHJ5KHt0aW1lczogMywgaW50ZXJ2YWw6IDIwMH0sIGFwaU1ldGhvZCwgZnVuY3Rpb24oZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gZG8gc29tZXRoaW5nIHdpdGggdGhlIHJlc3VsdFxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gdHJ5IGNhbGxpbmcgYXBpTWV0aG9kIDEwIHRpbWVzIHdpdGggZXhwb25lbnRpYWwgYmFja29mZlxuICAgICAqIC8vIChpLmUuIGludGVydmFscyBvZiAxMDAsIDIwMCwgNDAwLCA4MDAsIDE2MDAsIC4uLiBtaWxsaXNlY29uZHMpXG4gICAgICogYXN5bmMucmV0cnkoe1xuICAgICAqICAgdGltZXM6IDEwLFxuICAgICAqICAgaW50ZXJ2YWw6IGZ1bmN0aW9uKHJldHJ5Q291bnQpIHtcbiAgICAgKiAgICAgcmV0dXJuIDUwICogTWF0aC5wb3coMiwgcmV0cnlDb3VudCk7XG4gICAgICogICB9XG4gICAgICogfSwgYXBpTWV0aG9kLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICAvLyBkbyBzb21ldGhpbmcgd2l0aCB0aGUgcmVzdWx0XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyB0cnkgY2FsbGluZyBhcGlNZXRob2QgdGhlIGRlZmF1bHQgNSB0aW1lcyBubyBkZWxheSBiZXR3ZWVuIGVhY2ggcmV0cnlcbiAgICAgKiBhc3luYy5yZXRyeShhcGlNZXRob2QsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIC8vIGRvIHNvbWV0aGluZyB3aXRoIHRoZSByZXN1bHRcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIHRyeSBjYWxsaW5nIGFwaU1ldGhvZCBvbmx5IHdoZW4gZXJyb3IgY29uZGl0aW9uIHNhdGlzZmllcywgYWxsIG90aGVyXG4gICAgICogLy8gZXJyb3JzIHdpbGwgYWJvcnQgdGhlIHJldHJ5IGNvbnRyb2wgZmxvdyBhbmQgcmV0dXJuIHRvIGZpbmFsIGNhbGxiYWNrXG4gICAgICogYXN5bmMucmV0cnkoe1xuICAgICAqICAgZXJyb3JGaWx0ZXI6IGZ1bmN0aW9uKGVycikge1xuICAgICAqICAgICByZXR1cm4gZXJyLm1lc3NhZ2UgPT09ICdUZW1wb3JhcnkgZXJyb3InOyAvLyBvbmx5IHJldHJ5IG9uIGEgc3BlY2lmaWMgZXJyb3JcbiAgICAgKiAgIH1cbiAgICAgKiB9LCBhcGlNZXRob2QsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIC8vIGRvIHNvbWV0aGluZyB3aXRoIHRoZSByZXN1bHRcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIHRvIHJldHJ5IGluZGl2aWR1YWwgbWV0aG9kcyB0aGF0IGFyZSBub3QgYXMgcmVsaWFibGUgd2l0aGluIG90aGVyXG4gICAgICogLy8gY29udHJvbCBmbG93IGZ1bmN0aW9ucywgdXNlIHRoZSBgcmV0cnlhYmxlYCB3cmFwcGVyOlxuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICB1c2VyczogYXBpLmdldFVzZXJzLmJpbmQoYXBpKSxcbiAgICAgKiAgICAgcGF5bWVudHM6IGFzeW5jLnJldHJ5YWJsZSgzLCBhcGkuZ2V0UGF5bWVudHMuYmluZChhcGkpKVxuICAgICAqIH0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICAvLyBkbyBzb21ldGhpbmcgd2l0aCB0aGUgcmVzdWx0c1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICovXG4gICAgY29uc3QgREVGQVVMVF9USU1FUyA9IDU7XG4gICAgY29uc3QgREVGQVVMVF9JTlRFUlZBTCA9IDA7XG5cbiAgICBmdW5jdGlvbiByZXRyeShvcHRzLCB0YXNrLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgIHRpbWVzOiBERUZBVUxUX1RJTUVTLFxuICAgICAgICAgICAgaW50ZXJ2YWxGdW5jOiBjb25zdGFudCQxKERFRkFVTFRfSU5URVJWQUwpXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPCAzICYmIHR5cGVvZiBvcHRzID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWxsYmFjayA9IHRhc2sgfHwgcHJvbWlzZUNhbGxiYWNrKCk7XG4gICAgICAgICAgICB0YXNrID0gb3B0cztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlVGltZXMob3B0aW9ucywgb3B0cyk7XG4gICAgICAgICAgICBjYWxsYmFjayA9IGNhbGxiYWNrIHx8IHByb21pc2VDYWxsYmFjaygpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiB0YXNrICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIGFyZ3VtZW50cyBmb3IgYXN5bmMucmV0cnlcIik7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgX3Rhc2sgPSB3cmFwQXN5bmModGFzayk7XG5cbiAgICAgICAgdmFyIGF0dGVtcHQgPSAxO1xuICAgICAgICBmdW5jdGlvbiByZXRyeUF0dGVtcHQoKSB7XG4gICAgICAgICAgICBfdGFzaygoZXJyLCAuLi5hcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVyblxuICAgICAgICAgICAgICAgIGlmIChlcnIgJiYgYXR0ZW1wdCsrIDwgb3B0aW9ucy50aW1lcyAmJlxuICAgICAgICAgICAgICAgICAgICAodHlwZW9mIG9wdGlvbnMuZXJyb3JGaWx0ZXIgIT0gJ2Z1bmN0aW9uJyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lcnJvckZpbHRlcihlcnIpKSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHJldHJ5QXR0ZW1wdCwgb3B0aW9ucy5pbnRlcnZhbEZ1bmMoYXR0ZW1wdCAtIDEpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhlcnIsIC4uLmFyZ3MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0cnlBdHRlbXB0KCk7XG4gICAgICAgIHJldHVybiBjYWxsYmFja1tQUk9NSVNFX1NZTUJPTF1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBwYXJzZVRpbWVzKGFjYywgdCkge1xuICAgICAgICBpZiAodHlwZW9mIHQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBhY2MudGltZXMgPSArdC50aW1lcyB8fCBERUZBVUxUX1RJTUVTO1xuXG4gICAgICAgICAgICBhY2MuaW50ZXJ2YWxGdW5jID0gdHlwZW9mIHQuaW50ZXJ2YWwgPT09ICdmdW5jdGlvbicgP1xuICAgICAgICAgICAgICAgIHQuaW50ZXJ2YWwgOlxuICAgICAgICAgICAgICAgIGNvbnN0YW50JDEoK3QuaW50ZXJ2YWwgfHwgREVGQVVMVF9JTlRFUlZBTCk7XG5cbiAgICAgICAgICAgIGFjYy5lcnJvckZpbHRlciA9IHQuZXJyb3JGaWx0ZXI7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHQgPT09ICdudW1iZXInIHx8IHR5cGVvZiB0ID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgYWNjLnRpbWVzID0gK3QgfHwgREVGQVVMVF9USU1FUztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgYXJndW1lbnRzIGZvciBhc3luYy5yZXRyeVwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEEgY2xvc2UgcmVsYXRpdmUgb2YgW2ByZXRyeWBde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5yZXRyeX0uICBUaGlzIG1ldGhvZFxuICAgICAqIHdyYXBzIGEgdGFzayBhbmQgbWFrZXMgaXQgcmV0cnlhYmxlLCByYXRoZXIgdGhhbiBpbW1lZGlhdGVseSBjYWxsaW5nIGl0XG4gICAgICogd2l0aCByZXRyaWVzLlxuICAgICAqXG4gICAgICogQG5hbWUgcmV0cnlhYmxlXG4gICAgICogQHN0YXRpY1xuICAgICAqIEBtZW1iZXJPZiBtb2R1bGU6Q29udHJvbEZsb3dcbiAgICAgKiBAbWV0aG9kXG4gICAgICogQHNlZSBbYXN5bmMucmV0cnlde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy5yZXRyeX1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtPYmplY3R8bnVtYmVyfSBbb3B0cyA9IHt0aW1lczogNSwgaW50ZXJ2YWw6IDB9fCA1XSAtIG9wdGlvbmFsXG4gICAgICogb3B0aW9ucywgZXhhY3RseSB0aGUgc2FtZSBhcyBmcm9tIGByZXRyeWAsIGV4Y2VwdCBmb3IgYSBgb3B0cy5hcml0eWAgdGhhdFxuICAgICAqIGlzIHRoZSBhcml0eSBvZiB0aGUgYHRhc2tgIGZ1bmN0aW9uLCBkZWZhdWx0aW5nIHRvIGB0YXNrLmxlbmd0aGBcbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IHRhc2sgLSB0aGUgYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRvIHdyYXAuXG4gICAgICogVGhpcyBmdW5jdGlvbiB3aWxsIGJlIHBhc3NlZCBhbnkgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgcmV0dXJuZWQgd3JhcHBlci5cbiAgICAgKiBJbnZva2VkIHdpdGggKC4uLmFyZ3MsIGNhbGxiYWNrKS5cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gVGhlIHdyYXBwZWQgZnVuY3Rpb24sIHdoaWNoIHdoZW4gaW52b2tlZCwgd2lsbFxuICAgICAqIHJldHJ5IG9uIGFuIGVycm9yLCBiYXNlZCBvbiB0aGUgcGFyYW1ldGVycyBzcGVjaWZpZWQgaW4gYG9wdHNgLlxuICAgICAqIFRoaXMgZnVuY3Rpb24gd2lsbCBhY2NlcHQgdGhlIHNhbWUgcGFyYW1ldGVycyBhcyBgdGFza2AuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGFzeW5jLmF1dG8oe1xuICAgICAqICAgICBkZXAxOiBhc3luYy5yZXRyeWFibGUoMywgZ2V0RnJvbUZsYWt5U2VydmljZSksXG4gICAgICogICAgIHByb2Nlc3M6IFtcImRlcDFcIiwgYXN5bmMucmV0cnlhYmxlKDMsIGZ1bmN0aW9uIChyZXN1bHRzLCBjYikge1xuICAgICAqICAgICAgICAgbWF5YmVQcm9jZXNzRGF0YShyZXN1bHRzLmRlcDEsIGNiKTtcbiAgICAgKiAgICAgfSldXG4gICAgICogfSwgY2FsbGJhY2spO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHJldHJ5YWJsZSAob3B0cywgdGFzaykge1xuICAgICAgICBpZiAoIXRhc2spIHtcbiAgICAgICAgICAgIHRhc2sgPSBvcHRzO1xuICAgICAgICAgICAgb3B0cyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGFyaXR5ID0gKG9wdHMgJiYgb3B0cy5hcml0eSkgfHwgdGFzay5sZW5ndGg7XG4gICAgICAgIGlmIChpc0FzeW5jKHRhc2spKSB7XG4gICAgICAgICAgICBhcml0eSArPSAxO1xuICAgICAgICB9XG4gICAgICAgIHZhciBfdGFzayA9IHdyYXBBc3luYyh0YXNrKTtcbiAgICAgICAgcmV0dXJuIGluaXRpYWxQYXJhbXMoKGFyZ3MsIGNhbGxiYWNrKSA9PiB7XG4gICAgICAgICAgICBpZiAoYXJncy5sZW5ndGggPCBhcml0eSAtIDEgfHwgY2FsbGJhY2sgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGFyZ3MucHVzaChjYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2sgPSBwcm9taXNlQ2FsbGJhY2soKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZ1bmN0aW9uIHRhc2tGbihjYikge1xuICAgICAgICAgICAgICAgIF90YXNrKC4uLmFyZ3MsIGNiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdHMpIHJldHJ5KG9wdHMsIHRhc2tGbiwgY2FsbGJhY2spO1xuICAgICAgICAgICAgZWxzZSByZXRyeSh0YXNrRm4sIGNhbGxiYWNrKTtcblxuICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrW1BST01JU0VfU1lNQk9MXVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSdW4gdGhlIGZ1bmN0aW9ucyBpbiB0aGUgYHRhc2tzYCBjb2xsZWN0aW9uIGluIHNlcmllcywgZWFjaCBvbmUgcnVubmluZyBvbmNlXG4gICAgICogdGhlIHByZXZpb3VzIGZ1bmN0aW9uIGhhcyBjb21wbGV0ZWQuIElmIGFueSBmdW5jdGlvbnMgaW4gdGhlIHNlcmllcyBwYXNzIGFuXG4gICAgICogZXJyb3IgdG8gaXRzIGNhbGxiYWNrLCBubyBtb3JlIGZ1bmN0aW9ucyBhcmUgcnVuLCBhbmQgYGNhbGxiYWNrYCBpc1xuICAgICAqIGltbWVkaWF0ZWx5IGNhbGxlZCB3aXRoIHRoZSB2YWx1ZSBvZiB0aGUgZXJyb3IuIE90aGVyd2lzZSwgYGNhbGxiYWNrYFxuICAgICAqIHJlY2VpdmVzIGFuIGFycmF5IG9mIHJlc3VsdHMgd2hlbiBgdGFza3NgIGhhdmUgY29tcGxldGVkLlxuICAgICAqXG4gICAgICogSXQgaXMgYWxzbyBwb3NzaWJsZSB0byB1c2UgYW4gb2JqZWN0IGluc3RlYWQgb2YgYW4gYXJyYXkuIEVhY2ggcHJvcGVydHkgd2lsbFxuICAgICAqIGJlIHJ1biBhcyBhIGZ1bmN0aW9uLCBhbmQgdGhlIHJlc3VsdHMgd2lsbCBiZSBwYXNzZWQgdG8gdGhlIGZpbmFsIGBjYWxsYmFja2BcbiAgICAgKiBhcyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheS4gVGhpcyBjYW4gYmUgYSBtb3JlIHJlYWRhYmxlIHdheSBvZiBoYW5kbGluZ1xuICAgICAqICByZXN1bHRzIGZyb20ge0BsaW5rIGFzeW5jLnNlcmllc30uXG4gICAgICpcbiAgICAgKiAqKk5vdGUqKiB0aGF0IHdoaWxlIG1hbnkgaW1wbGVtZW50YXRpb25zIHByZXNlcnZlIHRoZSBvcmRlciBvZiBvYmplY3RcbiAgICAgKiBwcm9wZXJ0aWVzLCB0aGUgW0VDTUFTY3JpcHQgTGFuZ3VhZ2UgU3BlY2lmaWNhdGlvbl0oaHR0cDovL3d3dy5lY21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzUuMS8jc2VjLTguNilcbiAgICAgKiBleHBsaWNpdGx5IHN0YXRlcyB0aGF0XG4gICAgICpcbiAgICAgKiA+IFRoZSBtZWNoYW5pY3MgYW5kIG9yZGVyIG9mIGVudW1lcmF0aW5nIHRoZSBwcm9wZXJ0aWVzIGlzIG5vdCBzcGVjaWZpZWQuXG4gICAgICpcbiAgICAgKiBTbyBpZiB5b3UgcmVseSBvbiB0aGUgb3JkZXIgaW4gd2hpY2ggeW91ciBzZXJpZXMgb2YgZnVuY3Rpb25zIGFyZSBleGVjdXRlZCxcbiAgICAgKiBhbmQgd2FudCB0aGlzIHRvIHdvcmsgb24gYWxsIHBsYXRmb3JtcywgY29uc2lkZXIgdXNpbmcgYW4gYXJyYXkuXG4gICAgICpcbiAgICAgKiBAbmFtZSBzZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gdGFza3MgLSBBIGNvbGxlY3Rpb24gY29udGFpbmluZ1xuICAgICAqIFthc3luYyBmdW5jdGlvbnNde0BsaW5rIEFzeW5jRnVuY3Rpb259IHRvIHJ1biBpbiBzZXJpZXMuXG4gICAgICogRWFjaCBmdW5jdGlvbiBjYW4gY29tcGxldGUgd2l0aCBhbnkgbnVtYmVyIG9mIG9wdGlvbmFsIGByZXN1bHRgIHZhbHVlcy5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgdG8gcnVuIG9uY2UgYWxsIHRoZVxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGNvbXBsZXRlZC4gVGhpcyBmdW5jdGlvbiBnZXRzIGEgcmVzdWx0cyBhcnJheSAob3Igb2JqZWN0KVxuICAgICAqIGNvbnRhaW5pbmcgYWxsIHRoZSByZXN1bHQgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgYHRhc2tgIGNhbGxiYWNrcy4gSW52b2tlZFxuICAgICAqIHdpdGggKGVyciwgcmVzdWx0KS5cbiAgICAgKiBAcmV0dXJuIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvL1VzaW5nIENhbGxiYWNrc1xuICAgICAqIGFzeW5jLnNlcmllcyhbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIGRvIHNvbWUgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIHRoZW4gZG8gYW5vdGhlciBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0byBbJ29uZScsJ3R3byddXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBhbiBleGFtcGxlIHVzaW5nIG9iamVjdHMgaW5zdGVhZCBvZiBhcnJheXNcbiAgICAgKiBhc3luYy5zZXJpZXMoe1xuICAgICAqICAgICBvbmU6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIGRvIHNvbWUgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIDEpO1xuICAgICAqICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgdHdvOiBmdW5jdGlvbihjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAvLyB0aGVuIGRvIGFub3RoZXIgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsIDIpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH0sIGZ1bmN0aW9uKGVyciwgcmVzdWx0cykge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiAgICAgLy8gcmVzdWx0cyBpcyBlcXVhbCB0bzogeyBvbmU6IDEsIHR3bzogMiB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuc2VyaWVzKFtcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ29uZScpO1xuICAgICAqICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0pLnRoZW4ocmVzdWx0cyA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAvLyByZXN1bHRzIGlzIGVxdWFsIHRvIFsnb25lJywndHdvJ11cbiAgICAgKiB9KS5jYXRjaChlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGFzeW5jLnNlcmllcyh7XG4gICAgICogICAgIG9uZTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgLy8gZG8gc29tZSBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMSk7XG4gICAgICogICAgICAgICB9LCAyMDApO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICB0d286IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAqICAgICAgICAgICAgIC8vIHRoZW4gZG8gYW5vdGhlciBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMik7XG4gICAgICogICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICB9XG4gICAgICogfSkudGhlbihyZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgZXF1YWwgdG86IHsgb25lOiAxLCB0d286IDIgfVxuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvL1VzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogYXN5bmMgKCkgPT4ge1xuICAgICAqICAgICB0cnkge1xuICAgICAqICAgICAgICAgbGV0IHJlc3VsdHMgPSBhd2FpdCBhc3luYy5zZXJpZXMoW1xuICAgICAqICAgICAgICAgICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICAvLyBkbyBzb21lIGFzeW5jIHRhc2tcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKG51bGwsICdvbmUnKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMjAwKTtcbiAgICAgKiAgICAgICAgICAgICB9LFxuICAgICAqICAgICAgICAgICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICogICAgICAgICAgICAgICAgICAgICAvLyB0aGVuIGRvIGFub3RoZXIgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgJ3R3bycpO1xuICAgICAqICAgICAgICAgICAgICAgICB9LCAxMDApO1xuICAgICAqICAgICAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIF0pO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIGVxdWFsIHRvIFsnb25lJywndHdvJ11cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gYW4gZXhhbXBsZSB1c2luZyBhbiBvYmplY3QgaW5zdGVhZCBvZiBhbiBhcnJheVxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMucGFyYWxsZWwoe1xuICAgICAqICAgICAgICAgICAgIG9uZTogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIC8vIGRvIHNvbWUgYXN5bmMgdGFza1xuICAgICAqICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2sobnVsbCwgMSk7XG4gICAgICogICAgICAgICAgICAgICAgIH0sIDIwMCk7XG4gICAgICogICAgICAgICAgICAgfSxcbiAgICAgKiAgICAgICAgICAgIHR3bzogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgIC8vIHRoZW4gZG8gYW5vdGhlciBhc3luYyB0YXNrXG4gICAgICogICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCAyKTtcbiAgICAgKiAgICAgICAgICAgICAgICAgfSwgMTAwKTtcbiAgICAgKiAgICAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIH0pO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAvLyByZXN1bHRzIGlzIGVxdWFsIHRvOiB7IG9uZTogMSwgdHdvOiAyIH1cbiAgICAgKiAgICAgfVxuICAgICAqICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICB9XG4gICAgICogfVxuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gc2VyaWVzKHRhc2tzLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gcGFyYWxsZWwoZWFjaE9mU2VyaWVzJDEsIHRhc2tzLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBgdHJ1ZWAgaWYgYXQgbGVhc3Qgb25lIGVsZW1lbnQgaW4gdGhlIGBjb2xsYCBzYXRpc2ZpZXMgYW4gYXN5bmMgdGVzdC5cbiAgICAgKiBJZiBhbnkgaXRlcmF0ZWUgY2FsbCByZXR1cm5zIGB0cnVlYCwgdGhlIG1haW4gYGNhbGxiYWNrYCBpcyBpbW1lZGlhdGVseVxuICAgICAqIGNhbGxlZC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHNvbWVcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAYWxpYXMgYW55XG4gICAgICogQGNhdGVnb3J5IENvbGxlY3Rpb25cbiAgICAgKiBAcGFyYW0ge0FycmF5fEl0ZXJhYmxlfEFzeW5jSXRlcmFibGV8T2JqZWN0fSBjb2xsIC0gQSBjb2xsZWN0aW9uIHRvIGl0ZXJhdGUgb3Zlci5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW1cbiAgICAgKiBpbiB0aGUgY29sbGVjdGlvbnMgaW4gcGFyYWxsZWwuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiBgcmVzdWx0YCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYXMgc29vbiBhcyBhbnlcbiAgICAgKiBpdGVyYXRlZSByZXR1cm5zIGB0cnVlYCwgb3IgYWZ0ZXIgYWxsIHRoZSBpdGVyYXRlZSBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSBlaXRoZXIgYHRydWVgIG9yIGBmYWxzZWAgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jXG4gICAgICogdGVzdHMuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGRpcjEgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMS50eHQsIGZpbGUyLnR4dFxuICAgICAqIC8vIGRpcjIgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlMy50eHQsIGZpbGU0LnR4dFxuICAgICAqIC8vIGRpcjMgaXMgYSBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBmaWxlNS50eHRcbiAgICAgKiAvLyBkaXI0IGRvZXMgbm90IGV4aXN0XG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBjaGVja3MgaWYgYSBmaWxlIGV4aXN0c1xuICAgICAqIGZ1bmN0aW9uIGZpbGVFeGlzdHMoZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICBmcy5hY2Nlc3MoZmlsZSwgZnMuY29uc3RhbnRzLkZfT0ssIChlcnIpID0+IHtcbiAgICAgKiAgICAgICAgY2FsbGJhY2sobnVsbCwgIWVycik7XG4gICAgICogICAgfSk7XG4gICAgICogfVxuICAgICAqXG4gICAgICogLy8gVXNpbmcgY2FsbGJhY2tzXG4gICAgICogYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyMy9maWxlNS50eHQnXSwgZmlsZUV4aXN0cyxcbiAgICAgKiAgICBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAvLyB0cnVlXG4gICAgICogICAgICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIHNvbWUgZmlsZSBpbiB0aGUgbGlzdCBleGlzdHNcbiAgICAgKiAgICB9XG4gICAgICopO1xuICAgICAqXG4gICAgICogYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyNC9taXNzaW5nLnR4dCddLCBmaWxlRXhpc3RzLFxuICAgICAqICAgIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgIC8vIGZhbHNlXG4gICAgICogICAgICAgIC8vIHJlc3VsdCBpcyBmYWxzZSBzaW5jZSBub25lIG9mIHRoZSBmaWxlcyBleGlzdHNcbiAgICAgKiAgICB9XG4gICAgICopO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy5zb21lKFsnZGlyMS9taXNzaW5nLnR4dCcsJ2RpcjIvbWlzc2luZy50eHQnLCdkaXIzL2ZpbGU1LnR4dCddLCBmaWxlRXhpc3RzKVxuICAgICAqIC50aGVuKCByZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB0cnVlXG4gICAgICogICAgIC8vIHJlc3VsdCBpcyB0cnVlIHNpbmNlIHNvbWUgZmlsZSBpbiB0aGUgbGlzdCBleGlzdHNcbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIGFzeW5jLnNvbWUoWydkaXIxL21pc3NpbmcudHh0JywnZGlyMi9taXNzaW5nLnR4dCcsJ2RpcjQvbWlzc2luZy50eHQnXSwgZmlsZUV4aXN0cylcbiAgICAgKiAudGhlbiggcmVzdWx0ID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgLy8gZmFsc2VcbiAgICAgKiAgICAgLy8gcmVzdWx0IGlzIGZhbHNlIHNpbmNlIG5vbmUgb2YgdGhlIGZpbGVzIGV4aXN0c1xuICAgICAqIH0pLmNhdGNoKCBlcnIgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgYXN5bmMvYXdhaXRcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyMy9maWxlNS50eHQnXSwgZmlsZUV4aXN0cyk7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gdHJ1ZVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIHRydWUgc2luY2Ugc29tZSBmaWxlIGluIHRoZSBsaXN0IGV4aXN0c1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgYXN5bmMuc29tZShbJ2RpcjEvbWlzc2luZy50eHQnLCdkaXIyL21pc3NpbmcudHh0JywnZGlyNC9taXNzaW5nLnR4dCddLCBmaWxlRXhpc3RzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyBmYWxzZVxuICAgICAqICAgICAgICAgLy8gcmVzdWx0IGlzIGZhbHNlIHNpbmNlIG5vbmUgb2YgdGhlIGZpbGVzIGV4aXN0c1xuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBzb21lKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gX2NyZWF0ZVRlc3RlcihCb29sZWFuLCByZXMgPT4gcmVzKShlYWNoT2YkMSwgY29sbCwgaXRlcmF0ZWUsIGNhbGxiYWNrKVxuICAgIH1cbiAgICB2YXIgc29tZSQxID0gYXdhaXRpZnkoc29tZSwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHNvbWVgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuc29tZX0gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXG4gICAgICpcbiAgICAgKiBAbmFtZSBzb21lTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5zb21lXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuc29tZX1cbiAgICAgKiBAYWxpYXMgYW55TGltaXRcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBsaW1pdCAtIFRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgdHJ1dGggdGVzdCB0byBhcHBseSB0byBlYWNoIGl0ZW1cbiAgICAgKiBpbiB0aGUgY29sbGVjdGlvbnMgaW4gcGFyYWxsZWwuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiBgcmVzdWx0YCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYXMgc29vbiBhcyBhbnlcbiAgICAgKiBpdGVyYXRlZSByZXR1cm5zIGB0cnVlYCwgb3IgYWZ0ZXIgYWxsIHRoZSBpdGVyYXRlZSBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSBlaXRoZXIgYHRydWVgIG9yIGBmYWxzZWAgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jXG4gICAgICogdGVzdHMuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gc29tZUxpbWl0KGNvbGwsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoQm9vbGVhbiwgcmVzID0+IHJlcykoZWFjaE9mTGltaXQobGltaXQpLCBjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuICAgIHZhciBzb21lTGltaXQkMSA9IGF3YWl0aWZ5KHNvbWVMaW1pdCwgNCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbYHNvbWVgXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMuc29tZX0gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgc29tZVNlcmllc1xuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLnNvbWVde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5zb21lfVxuICAgICAqIEBhbGlhcyBhbnlTZXJpZXNcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyB0cnV0aCB0ZXN0IHRvIGFwcGx5IHRvIGVhY2ggaXRlbVxuICAgICAqIGluIHRoZSBjb2xsZWN0aW9ucyBpbiBzZXJpZXMuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgYm9vbGVhbiBgcmVzdWx0YCB2YWx1ZS5cbiAgICAgKiBJbnZva2VkIHdpdGggKGl0ZW0sIGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYXMgc29vbiBhcyBhbnlcbiAgICAgKiBpdGVyYXRlZSByZXR1cm5zIGB0cnVlYCwgb3IgYWZ0ZXIgYWxsIHRoZSBpdGVyYXRlZSBmdW5jdGlvbnMgaGF2ZSBmaW5pc2hlZC5cbiAgICAgKiBSZXN1bHQgd2lsbCBiZSBlaXRoZXIgYHRydWVgIG9yIGBmYWxzZWAgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMgb2YgdGhlIGFzeW5jXG4gICAgICogdGVzdHMuIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gc29tZVNlcmllcyhjb2xsLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIF9jcmVhdGVUZXN0ZXIoQm9vbGVhbiwgcmVzID0+IHJlcykoZWFjaE9mU2VyaWVzJDEsIGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG4gICAgdmFyIHNvbWVTZXJpZXMkMSA9IGF3YWl0aWZ5KHNvbWVTZXJpZXMsIDMpO1xuXG4gICAgLyoqXG4gICAgICogU29ydHMgYSBsaXN0IGJ5IHRoZSByZXN1bHRzIG9mIHJ1bm5pbmcgZWFjaCBgY29sbGAgdmFsdWUgdGhyb3VnaCBhbiBhc3luY1xuICAgICAqIGBpdGVyYXRlZWAuXG4gICAgICpcbiAgICAgKiBAbmFtZSBzb3J0QnlcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb2xsZWN0aW9uc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29sbGVjdGlvblxuICAgICAqIEBwYXJhbSB7QXJyYXl8SXRlcmFibGV8QXN5bmNJdGVyYWJsZXxPYmplY3R9IGNvbGwgLSBBIGNvbGxlY3Rpb24gdG8gaXRlcmF0ZSBvdmVyLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBbiBhc3luYyBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGl0ZW0gaW5cbiAgICAgKiBgY29sbGAuXG4gICAgICogVGhlIGl0ZXJhdGVlIHNob3VsZCBjb21wbGV0ZSB3aXRoIGEgdmFsdWUgdG8gdXNlIGFzIHRoZSBzb3J0IGNyaXRlcmlhIGFzXG4gICAgICogaXRzIGByZXN1bHRgLlxuICAgICAqIEludm9rZWQgd2l0aCAoaXRlbSwgY2FsbGJhY2spLlxuICAgICAqIEBwYXJhbSB7RnVuY3Rpb259IGNhbGxiYWNrIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZVxuICAgICAqIGBpdGVyYXRlZWAgZnVuY3Rpb25zIGhhdmUgZmluaXNoZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gUmVzdWx0cyBpcyB0aGUgaXRlbXNcbiAgICAgKiBmcm9tIHRoZSBvcmlnaW5hbCBgY29sbGAgc29ydGVkIGJ5IHRoZSB2YWx1ZXMgcmV0dXJuZWQgYnkgdGhlIGBpdGVyYXRlZWBcbiAgICAgKiBjYWxscy4gSW52b2tlZCB3aXRoIChlcnIsIHJlc3VsdHMpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiAvLyBiaWdmaWxlLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAyNTExMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqIC8vIG1lZGl1bWZpbGUudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDExMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBzbWFsbGZpbGUudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDEyMSBieXRlcyBpbiBzaXplXG4gICAgICpcbiAgICAgKiAvLyBhc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZSBmaWxlIHNpemUgaW4gYnl0ZXNcbiAgICAgKiBmdW5jdGlvbiBnZXRGaWxlU2l6ZUluQnl0ZXMoZmlsZSwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgZnMuc3RhdChmaWxlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsIHN0YXQuc2l6ZSk7XG4gICAgICogICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGNhbGxiYWNrc1xuICAgICAqIGFzeW5jLnNvcnRCeShbJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCcsJ2JpZ2ZpbGUudHh0J10sIGdldEZpbGVTaXplSW5CeXRlcyxcbiAgICAgKiAgICAgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgICAgIC8vIGZpbGUgc2l6ZSAoYXNjZW5kaW5nIGJ5IGRlZmF1bHQpLCBlLmcuXG4gICAgICogICAgICAgICAgICAgLy8gWyAnc21hbGxmaWxlLnR4dCcsICdtZWRpdW1maWxlLnR4dCcsICdiaWdmaWxlLnR4dCddXG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH1cbiAgICAgKiApO1xuICAgICAqXG4gICAgICogLy8gQnkgbW9kaWZ5aW5nIHRoZSBjYWxsYmFjayBwYXJhbWV0ZXIgdGhlXG4gICAgICogLy8gc29ydGluZyBvcmRlciBjYW4gYmUgaW5mbHVlbmNlZDpcbiAgICAgKlxuICAgICAqIC8vIGFzY2VuZGluZyBvcmRlclxuICAgICAqIGFzeW5jLnNvcnRCeShbJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCcsJ2JpZ2ZpbGUudHh0J10sIGZ1bmN0aW9uKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBmdW5jdGlvbihnZXRGaWxlU2l6ZUVyciwgZmlsZVNpemUpIHtcbiAgICAgKiAgICAgICAgIGlmIChnZXRGaWxlU2l6ZUVycikgcmV0dXJuIGNhbGxiYWNrKGdldEZpbGVTaXplRXJyKTtcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsIGZpbGVTaXplKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgICAgIC8vIGZpbGUgc2l6ZSAoYXNjZW5kaW5nIGJ5IGRlZmF1bHQpLCBlLmcuXG4gICAgICogICAgICAgICAgICAgLy8gWyAnc21hbGxmaWxlLnR4dCcsICdtZWRpdW1maWxlLnR4dCcsICdiaWdmaWxlLnR4dCddXG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH1cbiAgICAgKiApO1xuICAgICAqXG4gICAgICogLy8gZGVzY2VuZGluZyBvcmRlclxuICAgICAqIGFzeW5jLnNvcnRCeShbJ2JpZ2ZpbGUudHh0JywnbWVkaXVtZmlsZS50eHQnLCdzbWFsbGZpbGUudHh0J10sIGZ1bmN0aW9uKGZpbGUsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGdldEZpbGVTaXplSW5CeXRlcyhmaWxlLCBmdW5jdGlvbihnZXRGaWxlU2l6ZUVyciwgZmlsZVNpemUpIHtcbiAgICAgKiAgICAgICAgIGlmIChnZXRGaWxlU2l6ZUVycikge1xuICAgICAqICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhnZXRGaWxlU2l6ZUVycik7XG4gICAgICogICAgICAgICB9XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCBmaWxlU2l6ZSAqIC0xKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCByZXN1bHRzKSB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgICAgIC8vIGZpbGUgc2l6ZSAoYXNjZW5kaW5nIGJ5IGRlZmF1bHQpLCBlLmcuXG4gICAgICogICAgICAgICAgICAgLy8gWyAnYmlnZmlsZS50eHQnLCAnbWVkaXVtZmlsZS50eHQnLCAnc21hbGxmaWxlLnR4dCddXG4gICAgICogICAgICAgICB9XG4gICAgICogICAgIH1cbiAgICAgKiApO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgaGFuZGxpbmdcbiAgICAgKiBhc3luYy5zb3J0QnkoWydtZWRpdW1maWxlLnR4dCcsJ3NtYWxsZmlsZS50eHQnLCdtaXNzaW5nZmlsZS50eHQnXSwgZ2V0RmlsZVNpemVJbkJ5dGVzLFxuICAgICAqICAgICBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAqICAgICAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgICAgICB9IGVsc2Uge1xuICAgICAqICAgICAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgfVxuICAgICAqICAgICB9XG4gICAgICogKTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIFByb21pc2VzXG4gICAgICogYXN5bmMuc29ydEJ5KFsnbWVkaXVtZmlsZS50eHQnLCdzbWFsbGZpbGUudHh0JywnYmlnZmlsZS50eHQnXSwgZ2V0RmlsZVNpemVJbkJ5dGVzKVxuICAgICAqIC50aGVuKCByZXN1bHRzID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIC8vIHJlc3VsdHMgaXMgbm93IHRoZSBvcmlnaW5hbCBhcnJheSBvZiBmaWxlcyBzb3J0ZWQgYnlcbiAgICAgKiAgICAgLy8gZmlsZSBzaXplIChhc2NlbmRpbmcgYnkgZGVmYXVsdCksIGUuZy5cbiAgICAgKiAgICAgLy8gWyAnc21hbGxmaWxlLnR4dCcsICdtZWRpdW1maWxlLnR4dCcsICdiaWdmaWxlLnR4dCddXG4gICAgICogfSkuY2F0Y2goIGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBFcnJvciBoYW5kbGluZ1xuICAgICAqIGFzeW5jLnNvcnRCeShbJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCcsJ21pc3NpbmdmaWxlLnR4dCddLCBnZXRGaWxlU2l6ZUluQnl0ZXMpXG4gICAgICogLnRoZW4oIHJlc3VsdHMgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHRzKTtcbiAgICAgKiB9KS5jYXRjaCggZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgLy8gWyBFcnJvcjogRU5PRU5UOiBubyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5IF1cbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogKGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHRzID0gYXdhaXQgYXN5bmMuc29ydEJ5KFsnYmlnZmlsZS50eHQnLCdtZWRpdW1maWxlLnR4dCcsJ3NtYWxsZmlsZS50eHQnXSwgZ2V0RmlsZVNpemVJbkJ5dGVzKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdHMpO1xuICAgICAqICAgICAgICAgLy8gcmVzdWx0cyBpcyBub3cgdGhlIG9yaWdpbmFsIGFycmF5IG9mIGZpbGVzIHNvcnRlZCBieVxuICAgICAqICAgICAgICAgLy8gZmlsZSBzaXplIChhc2NlbmRpbmcgYnkgZGVmYXVsdCksIGUuZy5cbiAgICAgKiAgICAgICAgIC8vIFsgJ3NtYWxsZmlsZS50eHQnLCAnbWVkaXVtZmlsZS50eHQnLCAnYmlnZmlsZS50eHQnXVxuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9KSgpO1xuICAgICAqXG4gICAgICogLy8gRXJyb3IgaGFuZGxpbmdcbiAgICAgKiBhc3luYyAoKSA9PiB7XG4gICAgICogICAgIHRyeSB7XG4gICAgICogICAgICAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IGFzeW5jLnNvcnRCeShbJ21pc3NpbmdmaWxlLnR4dCcsJ21lZGl1bWZpbGUudHh0Jywnc21hbGxmaWxlLnR4dCddLCBnZXRGaWxlU2l6ZUluQnl0ZXMpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0cyk7XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgICAgIC8vIFsgRXJyb3I6IEVOT0VOVDogbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSBdXG4gICAgICogICAgIH1cbiAgICAgKiB9XG4gICAgICpcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBzb3J0QnkgKGNvbGwsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICB2YXIgX2l0ZXJhdGVlID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgcmV0dXJuIG1hcCQxKGNvbGwsICh4LCBpdGVyQ2IpID0+IHtcbiAgICAgICAgICAgIF9pdGVyYXRlZSh4LCAoZXJyLCBjcml0ZXJpYSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBpdGVyQ2IoZXJyKTtcbiAgICAgICAgICAgICAgICBpdGVyQ2IoZXJyLCB7dmFsdWU6IHgsIGNyaXRlcmlhfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgKGVyciwgcmVzdWx0cykgPT4ge1xuICAgICAgICAgICAgaWYgKGVycikgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICBjYWxsYmFjayhudWxsLCByZXN1bHRzLnNvcnQoY29tcGFyYXRvcikubWFwKHYgPT4gdi52YWx1ZSkpO1xuICAgICAgICB9KTtcblxuICAgICAgICBmdW5jdGlvbiBjb21wYXJhdG9yKGxlZnQsIHJpZ2h0KSB7XG4gICAgICAgICAgICB2YXIgYSA9IGxlZnQuY3JpdGVyaWEsIGIgPSByaWdodC5jcml0ZXJpYTtcbiAgICAgICAgICAgIHJldHVybiBhIDwgYiA/IC0xIDogYSA+IGIgPyAxIDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICB2YXIgc29ydEJ5JDEgPSBhd2FpdGlmeShzb3J0QnksIDMpO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyBhIHRpbWUgbGltaXQgb24gYW4gYXN5bmNocm9ub3VzIGZ1bmN0aW9uLiBJZiB0aGUgZnVuY3Rpb24gZG9lcyBub3QgY2FsbFxuICAgICAqIGl0cyBjYWxsYmFjayB3aXRoaW4gdGhlIHNwZWNpZmllZCBtaWxsaXNlY29uZHMsIGl0IHdpbGwgYmUgY2FsbGVkIHdpdGggYVxuICAgICAqIHRpbWVvdXQgZXJyb3IuIFRoZSBjb2RlIHByb3BlcnR5IGZvciB0aGUgZXJyb3Igb2JqZWN0IHdpbGwgYmUgYCdFVElNRURPVVQnYC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRpbWVvdXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gYXN5bmNGbiAtIFRoZSBhc3luYyBmdW5jdGlvbiB0byBsaW1pdCBpbiB0aW1lLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBtaWxsaXNlY29uZHMgLSBUaGUgc3BlY2lmaWVkIHRpbWUgbGltaXQuXG4gICAgICogQHBhcmFtIHsqfSBbaW5mb10gLSBBbnkgdmFyaWFibGUgeW91IHdhbnQgYXR0YWNoZWQgKGBzdHJpbmdgLCBgb2JqZWN0YCwgZXRjKVxuICAgICAqIHRvIHRpbWVvdXQgRXJyb3IgZm9yIG1vcmUgaW5mb3JtYXRpb24uLlxuICAgICAqIEByZXR1cm5zIHtBc3luY0Z1bmN0aW9ufSBSZXR1cm5zIGEgd3JhcHBlZCBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHdpdGggYW55XG4gICAgICogb2YgdGhlIGNvbnRyb2wgZmxvdyBmdW5jdGlvbnMuXG4gICAgICogSW52b2tlIHRoaXMgZnVuY3Rpb24gd2l0aCB0aGUgc2FtZSBwYXJhbWV0ZXJzIGFzIHlvdSB3b3VsZCBgYXN5bmNGdW5jYC5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogZnVuY3Rpb24gbXlGdW5jdGlvbihmb28sIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGRvQXN5bmNUYXNrKGZvbywgZnVuY3Rpb24oZXJyLCBkYXRhKSB7XG4gICAgICogICAgICAgICAvLyBoYW5kbGUgZXJyb3JzXG4gICAgICogICAgICAgICBpZiAoZXJyKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKlxuICAgICAqICAgICAgICAgLy8gZG8gc29tZSBzdHVmZiAuLi5cbiAgICAgKlxuICAgICAqICAgICAgICAgLy8gcmV0dXJuIHByb2Nlc3NlZCBkYXRhXG4gICAgICogICAgICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwgZGF0YSk7XG4gICAgICogICAgIH0pO1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIHZhciB3cmFwcGVkID0gYXN5bmMudGltZW91dChteUZ1bmN0aW9uLCAxMDAwKTtcbiAgICAgKlxuICAgICAqIC8vIGNhbGwgYHdyYXBwZWRgIGFzIHlvdSB3b3VsZCBgbXlGdW5jdGlvbmBcbiAgICAgKiB3cmFwcGVkKHsgYmFyOiAnYmFyJyB9LCBmdW5jdGlvbihlcnIsIGRhdGEpIHtcbiAgICAgKiAgICAgLy8gaWYgYG15RnVuY3Rpb25gIHRha2VzIDwgMTAwMCBtcyB0byBleGVjdXRlLCBgZXJyYFxuICAgICAqICAgICAvLyBhbmQgYGRhdGFgIHdpbGwgaGF2ZSB0aGVpciBleHBlY3RlZCB2YWx1ZXNcbiAgICAgKlxuICAgICAqICAgICAvLyBlbHNlIGBlcnJgIHdpbGwgYmUgYW4gRXJyb3Igd2l0aCB0aGUgY29kZSAnRVRJTUVET1VUJ1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRpbWVvdXQoYXN5bmNGbiwgbWlsbGlzZWNvbmRzLCBpbmZvKSB7XG4gICAgICAgIHZhciBmbiA9IHdyYXBBc3luYyhhc3luY0ZuKTtcblxuICAgICAgICByZXR1cm4gaW5pdGlhbFBhcmFtcygoYXJncywgY2FsbGJhY2spID0+IHtcbiAgICAgICAgICAgIHZhciB0aW1lZE91dCA9IGZhbHNlO1xuICAgICAgICAgICAgdmFyIHRpbWVyO1xuXG4gICAgICAgICAgICBmdW5jdGlvbiB0aW1lb3V0Q2FsbGJhY2soKSB7XG4gICAgICAgICAgICAgICAgdmFyIG5hbWUgPSBhc3luY0ZuLm5hbWUgfHwgJ2Fub255bW91cyc7XG4gICAgICAgICAgICAgICAgdmFyIGVycm9yICA9IG5ldyBFcnJvcignQ2FsbGJhY2sgZnVuY3Rpb24gXCInICsgbmFtZSArICdcIiB0aW1lZCBvdXQuJyk7XG4gICAgICAgICAgICAgICAgZXJyb3IuY29kZSA9ICdFVElNRURPVVQnO1xuICAgICAgICAgICAgICAgIGlmIChpbmZvKSB7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yLmluZm8gPSBpbmZvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aW1lZE91dCA9IHRydWU7XG4gICAgICAgICAgICAgICAgY2FsbGJhY2soZXJyb3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhcmdzLnB1c2goKC4uLmNiQXJncykgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGltZWRPdXQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2soLi4uY2JBcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gc2V0dXAgdGltZXIgYW5kIGNhbGwgb3JpZ2luYWwgZnVuY3Rpb25cbiAgICAgICAgICAgIHRpbWVyID0gc2V0VGltZW91dCh0aW1lb3V0Q2FsbGJhY2ssIG1pbGxpc2Vjb25kcyk7XG4gICAgICAgICAgICBmbiguLi5hcmdzKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcmFuZ2Uoc2l6ZSkge1xuICAgICAgICB2YXIgcmVzdWx0ID0gQXJyYXkoc2l6ZSk7XG4gICAgICAgIHdoaWxlIChzaXplLS0pIHtcbiAgICAgICAgICAgIHJlc3VsdFtzaXplXSA9IHNpemU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbdGltZXNde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy50aW1lc30gYnV0IHJ1bnMgYSBtYXhpbXVtIG9mIGBsaW1pdGAgYXN5bmMgb3BlcmF0aW9ucyBhdCBhXG4gICAgICogdGltZS5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRpbWVzTGltaXRcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy50aW1lc117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnRpbWVzfVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gY291bnQgLSBUaGUgbnVtYmVyIG9mIHRpbWVzIHRvIHJ1biB0aGUgZnVuY3Rpb24uXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IC0gVGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbCBgbmAgdGltZXMuXG4gICAgICogSW52b2tlZCB3aXRoIHRoZSBpdGVyYXRpb24gaW5kZXggYW5kIGEgY2FsbGJhY2s6IChuLCBuZXh0KS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFjayAtIHNlZSBbYXN5bmMubWFwXXtAbGluayBtb2R1bGU6Q29sbGVjdGlvbnMubWFwfS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBubyBjYWxsYmFjayBpcyBwcm92aWRlZFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRpbWVzTGltaXQoY291bnQsIGxpbWl0LCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgdmFyIF9pdGVyYXRlZSA9IHdyYXBBc3luYyhpdGVyYXRlZSk7XG4gICAgICAgIHJldHVybiBtYXBMaW1pdCQxKHJhbmdlKGNvdW50KSwgbGltaXQsIF9pdGVyYXRlZSwgY2FsbGJhY2spO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGxzIHRoZSBgaXRlcmF0ZWVgIGZ1bmN0aW9uIGBuYCB0aW1lcywgYW5kIGFjY3VtdWxhdGVzIHJlc3VsdHMgaW4gdGhlIHNhbWVcbiAgICAgKiBtYW5uZXIgeW91IHdvdWxkIHVzZSB3aXRoIFttYXBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXB9LlxuICAgICAqXG4gICAgICogQG5hbWUgdGltZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5tYXBde0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXB9XG4gICAgICogQGNhdGVnb3J5IENvbnRyb2wgRmxvd1xuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBuIC0gVGhlIG51bWJlciBvZiB0aW1lcyB0byBydW4gdGhlIGZ1bmN0aW9uLlxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBUaGUgYXN5bmMgZnVuY3Rpb24gdG8gY2FsbCBgbmAgdGltZXMuXG4gICAgICogSW52b2tlZCB3aXRoIHRoZSBpdGVyYXRpb24gaW5kZXggYW5kIGEgY2FsbGJhY2s6IChuLCBuZXh0KS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBjYWxsYmFjayAtIHNlZSB7QGxpbmsgbW9kdWxlOkNvbGxlY3Rpb25zLm1hcH0uXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcHJvdmlkZWRcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqXG4gICAgICogLy8gUHJldGVuZCB0aGlzIGlzIHNvbWUgY29tcGxpY2F0ZWQgYXN5bmMgZmFjdG9yeVxuICAgICAqIHZhciBjcmVhdGVVc2VyID0gZnVuY3Rpb24oaWQsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIGNhbGxiYWNrKG51bGwsIHtcbiAgICAgKiAgICAgICAgIGlkOiAndXNlcicgKyBpZFxuICAgICAqICAgICB9KTtcbiAgICAgKiB9O1xuICAgICAqXG4gICAgICogLy8gZ2VuZXJhdGUgNSB1c2Vyc1xuICAgICAqIGFzeW5jLnRpbWVzKDUsIGZ1bmN0aW9uKG4sIG5leHQpIHtcbiAgICAgKiAgICAgY3JlYXRlVXNlcihuLCBmdW5jdGlvbihlcnIsIHVzZXIpIHtcbiAgICAgKiAgICAgICAgIG5leHQoZXJyLCB1c2VyKTtcbiAgICAgKiAgICAgfSk7XG4gICAgICogfSwgZnVuY3Rpb24oZXJyLCB1c2Vycykge1xuICAgICAqICAgICAvLyB3ZSBzaG91bGQgbm93IGhhdmUgNSB1c2Vyc1xuICAgICAqIH0pO1xuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRpbWVzIChuLCBpdGVyYXRlZSwgY2FsbGJhY2spIHtcbiAgICAgICAgcmV0dXJuIHRpbWVzTGltaXQobiwgSW5maW5pdHksIGl0ZXJhdGVlLCBjYWxsYmFjaylcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2FtZSBhcyBbdGltZXNde0BsaW5rIG1vZHVsZTpDb250cm9sRmxvdy50aW1lc30gYnV0IHJ1bnMgb25seSBhIHNpbmdsZSBhc3luYyBvcGVyYXRpb24gYXQgYSB0aW1lLlxuICAgICAqXG4gICAgICogQG5hbWUgdGltZXNTZXJpZXNcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy50aW1lc117QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LnRpbWVzfVxuICAgICAqIEBjYXRlZ29yeSBDb250cm9sIEZsb3dcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbiAtIFRoZSBudW1iZXIgb2YgdGltZXMgdG8gcnVuIHRoZSBmdW5jdGlvbi5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gVGhlIGFzeW5jIGZ1bmN0aW9uIHRvIGNhbGwgYG5gIHRpbWVzLlxuICAgICAqIEludm9rZWQgd2l0aCB0aGUgaXRlcmF0aW9uIGluZGV4IGFuZCBhIGNhbGxiYWNrOiAobiwgbmV4dCkuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gY2FsbGJhY2sgLSBzZWUge0BsaW5rIG1vZHVsZTpDb2xsZWN0aW9ucy5tYXB9LlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHByb3ZpZGVkXG4gICAgICovXG4gICAgZnVuY3Rpb24gdGltZXNTZXJpZXMgKG4sIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICByZXR1cm4gdGltZXNMaW1pdChuLCAxLCBpdGVyYXRlZSwgY2FsbGJhY2spXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQSByZWxhdGl2ZSBvZiBgcmVkdWNlYC4gIFRha2VzIGFuIE9iamVjdCBvciBBcnJheSwgYW5kIGl0ZXJhdGVzIG92ZXIgZWFjaFxuICAgICAqIGVsZW1lbnQgaW4gcGFyYWxsZWwsIGVhY2ggc3RlcCBwb3RlbnRpYWxseSBtdXRhdGluZyBhbiBgYWNjdW11bGF0b3JgIHZhbHVlLlxuICAgICAqIFRoZSB0eXBlIG9mIHRoZSBhY2N1bXVsYXRvciBkZWZhdWx0cyB0byB0aGUgdHlwZSBvZiBjb2xsZWN0aW9uIHBhc3NlZCBpbi5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRyYW5zZm9ybVxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbGxlY3Rpb25zXG4gICAgICogQG1ldGhvZFxuICAgICAqIEBjYXRlZ29yeSBDb2xsZWN0aW9uXG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gY29sbCAtIEEgY29sbGVjdGlvbiB0byBpdGVyYXRlIG92ZXIuXG4gICAgICogQHBhcmFtIHsqfSBbYWNjdW11bGF0b3JdIC0gVGhlIGluaXRpYWwgc3RhdGUgb2YgdGhlIHRyYW5zZm9ybS4gIElmIG9taXR0ZWQsXG4gICAgICogaXQgd2lsbCBkZWZhdWx0IHRvIGFuIGVtcHR5IE9iamVjdCBvciBBcnJheSwgZGVwZW5kaW5nIG9uIHRoZSB0eXBlIG9mIGBjb2xsYFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gaXRlcmF0ZWUgLSBBIGZ1bmN0aW9uIGFwcGxpZWQgdG8gZWFjaCBpdGVtIGluIHRoZVxuICAgICAqIGNvbGxlY3Rpb24gdGhhdCBwb3RlbnRpYWxseSBtb2RpZmllcyB0aGUgYWNjdW11bGF0b3IuXG4gICAgICogSW52b2tlZCB3aXRoIChhY2N1bXVsYXRvciwgaXRlbSwga2V5LCBjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIGFsbCB0aGVcbiAgICAgKiBgaXRlcmF0ZWVgIGZ1bmN0aW9ucyBoYXZlIGZpbmlzaGVkLiBSZXN1bHQgaXMgdGhlIHRyYW5zZm9ybWVkIGFjY3VtdWxhdG9yLlxuICAgICAqIEludm9rZWQgd2l0aCAoZXJyLCByZXN1bHQpLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIHByb3ZpZGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGZpbGUxLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAxMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlMi50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMjAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTMudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDMwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqXG4gICAgICogLy8gaGVscGVyIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBodW1hbi1yZWFkYWJsZSBzaXplIGZvcm1hdCBmcm9tIGJ5dGVzXG4gICAgICogZnVuY3Rpb24gZm9ybWF0Qnl0ZXMoYnl0ZXMsIGRlY2ltYWxzID0gMikge1xuICAgICAqICAgLy8gaW1wbGVtZW50YXRpb24gbm90IGluY2x1ZGVkIGZvciBicmV2aXR5XG4gICAgICogICByZXR1cm4gaHVtYW5SZWFkYmxlRmlsZXNpemU7XG4gICAgICogfVxuICAgICAqXG4gICAgICogY29uc3QgZmlsZUxpc3QgPSBbJ2ZpbGUxLnR4dCcsJ2ZpbGUyLnR4dCcsJ2ZpbGUzLnR4dCddO1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgZmlsZSBzaXplLCB0cmFuc2Zvcm1lZCB0byBodW1hbi1yZWFkYWJsZSBmb3JtYXRcbiAgICAgKiAvLyBlLmcuIDEwMjQgYnl0ZXMgPSAxS0IsIDEyMzQgYnl0ZXMgPSAxLjIxIEtCLCAxMDQ4NTc2IGJ5dGVzID0gMU1CLCBldGMuXG4gICAgICogZnVuY3Rpb24gdHJhbnNmb3JtRmlsZVNpemUoYWNjLCB2YWx1ZSwga2V5LCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy5zdGF0KHZhbHVlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGFjY1trZXldID0gZm9ybWF0Qnl0ZXMoc3RhdC5zaXplKTtcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy50cmFuc2Zvcm0oZmlsZUxpc3QsIHRyYW5zZm9ybUZpbGVTaXplLCBmdW5jdGlvbihlcnIsIHJlc3VsdCkge1xuICAgICAqICAgICBpZihlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH0gZWxzZSB7XG4gICAgICogICAgICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAgICAgLy8gWyAnMTAwMCBCeXRlcycsICcxLjk1IEtCJywgJzIuOTMgS0InIF1cbiAgICAgKiAgICAgfVxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICogLy8gVXNpbmcgUHJvbWlzZXNcbiAgICAgKiBhc3luYy50cmFuc2Zvcm0oZmlsZUxpc3QsIHRyYW5zZm9ybUZpbGVTaXplKVxuICAgICAqIC50aGVuKHJlc3VsdCA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgIC8vIFsgJzEwMDAgQnl0ZXMnLCAnMS45NSBLQicsICcyLjkzIEtCJyBdXG4gICAgICogfSkuY2F0Y2goZXJyID0+IHtcbiAgICAgKiAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiB9KTtcbiAgICAgKlxuICAgICAqIC8vIFVzaW5nIGFzeW5jL2F3YWl0XG4gICAgICogKGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy50cmFuc2Zvcm0oZmlsZUxpc3QsIHRyYW5zZm9ybUZpbGVTaXplKTtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyBbICcxMDAwIEJ5dGVzJywgJzEuOTUgS0InLCAnMi45MyBLQicgXVxuICAgICAqICAgICB9XG4gICAgICogICAgIGNhdGNoIChlcnIpIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogICAgIH1cbiAgICAgKiB9KSgpO1xuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIC8vIGZpbGUxLnR4dCBpcyBhIGZpbGUgdGhhdCBpcyAxMDAwIGJ5dGVzIGluIHNpemVcbiAgICAgKiAvLyBmaWxlMi50eHQgaXMgYSBmaWxlIHRoYXQgaXMgMjAwMCBieXRlcyBpbiBzaXplXG4gICAgICogLy8gZmlsZTMudHh0IGlzIGEgZmlsZSB0aGF0IGlzIDMwMDAgYnl0ZXMgaW4gc2l6ZVxuICAgICAqXG4gICAgICogLy8gaGVscGVyIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBodW1hbi1yZWFkYWJsZSBzaXplIGZvcm1hdCBmcm9tIGJ5dGVzXG4gICAgICogZnVuY3Rpb24gZm9ybWF0Qnl0ZXMoYnl0ZXMsIGRlY2ltYWxzID0gMikge1xuICAgICAqICAgLy8gaW1wbGVtZW50YXRpb24gbm90IGluY2x1ZGVkIGZvciBicmV2aXR5XG4gICAgICogICByZXR1cm4gaHVtYW5SZWFkYmxlRmlsZXNpemU7XG4gICAgICogfVxuICAgICAqXG4gICAgICogY29uc3QgZmlsZU1hcCA9IHsgZjE6ICdmaWxlMS50eHQnLCBmMjogJ2ZpbGUyLnR4dCcsIGYzOiAnZmlsZTMudHh0JyB9O1xuICAgICAqXG4gICAgICogLy8gYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUgZmlsZSBzaXplLCB0cmFuc2Zvcm1lZCB0byBodW1hbi1yZWFkYWJsZSBmb3JtYXRcbiAgICAgKiAvLyBlLmcuIDEwMjQgYnl0ZXMgPSAxS0IsIDEyMzQgYnl0ZXMgPSAxLjIxIEtCLCAxMDQ4NTc2IGJ5dGVzID0gMU1CLCBldGMuXG4gICAgICogZnVuY3Rpb24gdHJhbnNmb3JtRmlsZVNpemUoYWNjLCB2YWx1ZSwga2V5LCBjYWxsYmFjaykge1xuICAgICAqICAgICBmcy5zdGF0KHZhbHVlLCBmdW5jdGlvbihlcnIsIHN0YXQpIHtcbiAgICAgKiAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgKiAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgKiAgICAgICAgIH1cbiAgICAgKiAgICAgICAgIGFjY1trZXldID0gZm9ybWF0Qnl0ZXMoc3RhdC5zaXplKTtcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwpO1xuICAgICAqICAgICB9KTtcbiAgICAgKiB9XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBjYWxsYmFja3NcbiAgICAgKiBhc3luYy50cmFuc2Zvcm0oZmlsZU1hcCwgdHJhbnNmb3JtRmlsZVNpemUsIGZ1bmN0aW9uKGVyciwgcmVzdWx0KSB7XG4gICAgICogICAgIGlmKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfSBlbHNlIHtcbiAgICAgKiAgICAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgICogICAgICAgICAvLyB7IGYxOiAnMTAwMCBCeXRlcycsIGYyOiAnMS45NSBLQicsIGYzOiAnMi45MyBLQicgfVxuICAgICAqICAgICB9XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBQcm9taXNlc1xuICAgICAqIGFzeW5jLnRyYW5zZm9ybShmaWxlTWFwLCB0cmFuc2Zvcm1GaWxlU2l6ZSlcbiAgICAgKiAudGhlbihyZXN1bHQgPT4ge1xuICAgICAqICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAqICAgICAvLyB7IGYxOiAnMTAwMCBCeXRlcycsIGYyOiAnMS45NSBLQicsIGYzOiAnMi45MyBLQicgfVxuICAgICAqIH0pLmNhdGNoKGVyciA9PiB7XG4gICAgICogICAgIGNvbnNvbGUubG9nKGVycik7XG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBVc2luZyBhc3luYy9hd2FpdFxuICAgICAqIGFzeW5jICgpID0+IHtcbiAgICAgKiAgICAgdHJ5IHtcbiAgICAgKiAgICAgICAgIGxldCByZXN1bHQgPSBhd2FpdCBhc3luYy50cmFuc2Zvcm0oZmlsZU1hcCwgdHJhbnNmb3JtRmlsZVNpemUpO1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2cocmVzdWx0KTtcbiAgICAgKiAgICAgICAgIC8vIHsgZjE6ICcxMDAwIEJ5dGVzJywgZjI6ICcxLjk1IEtCJywgZjM6ICcyLjkzIEtCJyB9XG4gICAgICogICAgIH1cbiAgICAgKiAgICAgY2F0Y2ggKGVycikge1xuICAgICAqICAgICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgKiAgICAgfVxuICAgICAqIH1cbiAgICAgKlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHRyYW5zZm9ybSAoY29sbCwgYWNjdW11bGF0b3IsIGl0ZXJhdGVlLCBjYWxsYmFjaykge1xuICAgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA8PSAzICYmIHR5cGVvZiBhY2N1bXVsYXRvciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgY2FsbGJhY2sgPSBpdGVyYXRlZTtcbiAgICAgICAgICAgIGl0ZXJhdGVlID0gYWNjdW11bGF0b3I7XG4gICAgICAgICAgICBhY2N1bXVsYXRvciA9IEFycmF5LmlzQXJyYXkoY29sbCkgPyBbXSA6IHt9O1xuICAgICAgICB9XG4gICAgICAgIGNhbGxiYWNrID0gb25jZShjYWxsYmFjayB8fCBwcm9taXNlQ2FsbGJhY2soKSk7XG4gICAgICAgIHZhciBfaXRlcmF0ZWUgPSB3cmFwQXN5bmMoaXRlcmF0ZWUpO1xuXG4gICAgICAgIGVhY2hPZiQxKGNvbGwsICh2LCBrLCBjYikgPT4ge1xuICAgICAgICAgICAgX2l0ZXJhdGVlKGFjY3VtdWxhdG9yLCB2LCBrLCBjYik7XG4gICAgICAgIH0sIGVyciA9PiBjYWxsYmFjayhlcnIsIGFjY3VtdWxhdG9yKSk7XG4gICAgICAgIHJldHVybiBjYWxsYmFja1tQUk9NSVNFX1NZTUJPTF1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJdCBydW5zIGVhY2ggdGFzayBpbiBzZXJpZXMgYnV0IHN0b3BzIHdoZW5ldmVyIGFueSBvZiB0aGUgZnVuY3Rpb25zIHdlcmVcbiAgICAgKiBzdWNjZXNzZnVsLiBJZiBvbmUgb2YgdGhlIHRhc2tzIHdlcmUgc3VjY2Vzc2Z1bCwgdGhlIGBjYWxsYmFja2Agd2lsbCBiZVxuICAgICAqIHBhc3NlZCB0aGUgcmVzdWx0IG9mIHRoZSBzdWNjZXNzZnVsIHRhc2suIElmIGFsbCB0YXNrcyBmYWlsLCB0aGUgY2FsbGJhY2tcbiAgICAgKiB3aWxsIGJlIHBhc3NlZCB0aGUgZXJyb3IgYW5kIHJlc3VsdCAoaWYgYW55KSBvZiB0aGUgZmluYWwgYXR0ZW1wdC5cbiAgICAgKlxuICAgICAqIEBuYW1lIHRyeUVhY2hcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheXxJdGVyYWJsZXxBc3luY0l0ZXJhYmxlfE9iamVjdH0gdGFza3MgLSBBIGNvbGxlY3Rpb24gY29udGFpbmluZyBmdW5jdGlvbnMgdG9cbiAgICAgKiBydW4sIGVhY2ggZnVuY3Rpb24gaXMgcGFzc2VkIGEgYGNhbGxiYWNrKGVyciwgcmVzdWx0KWAgaXQgbXVzdCBjYWxsIG9uXG4gICAgICogY29tcGxldGlvbiB3aXRoIGFuIGVycm9yIGBlcnJgICh3aGljaCBjYW4gYmUgYG51bGxgKSBhbmQgYW4gb3B0aW9uYWwgYHJlc3VsdGBcbiAgICAgKiB2YWx1ZS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIHdoZW4gb25lXG4gICAgICogb2YgdGhlIHRhc2tzIGhhcyBzdWNjZWVkZWQsIG9yIGFsbCBoYXZlIGZhaWxlZC4gSXQgcmVjZWl2ZXMgdGhlIGBlcnJgIGFuZFxuICAgICAqIGByZXN1bHRgIGFyZ3VtZW50cyBvZiB0aGUgbGFzdCBhdHRlbXB0IGF0IGNvbXBsZXRpbmcgdGhlIGB0YXNrYC4gSW52b2tlZCB3aXRoXG4gICAgICogKGVyciwgcmVzdWx0cykuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgbm8gY2FsbGJhY2sgaXMgcGFzc2VkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBhc3luYy50cnlFYWNoKFtcbiAgICAgKiAgICAgZnVuY3Rpb24gZ2V0RGF0YUZyb21GaXJzdFdlYnNpdGUoY2FsbGJhY2spIHtcbiAgICAgKiAgICAgICAgIC8vIFRyeSBnZXR0aW5nIHRoZSBkYXRhIGZyb20gdGhlIGZpcnN0IHdlYnNpdGVcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKGVyciwgZGF0YSk7XG4gICAgICogICAgIH0sXG4gICAgICogICAgIGZ1bmN0aW9uIGdldERhdGFGcm9tU2Vjb25kV2Vic2l0ZShjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gRmlyc3Qgd2Vic2l0ZSBmYWlsZWQsXG4gICAgICogICAgICAgICAvLyBUcnkgZ2V0dGluZyB0aGUgZGF0YSBmcm9tIHRoZSBiYWNrdXAgd2Vic2l0ZVxuICAgICAqICAgICAgICAgY2FsbGJhY2soZXJyLCBkYXRhKTtcbiAgICAgKiAgICAgfVxuICAgICAqIF0sXG4gICAgICogLy8gb3B0aW9uYWwgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbihlcnIsIHJlc3VsdHMpIHtcbiAgICAgKiAgICAgTm93IGRvIHNvbWV0aGluZyB3aXRoIHRoZSBkYXRhLlxuICAgICAqIH0pO1xuICAgICAqXG4gICAgICovXG4gICAgZnVuY3Rpb24gdHJ5RWFjaCh0YXNrcywgY2FsbGJhY2spIHtcbiAgICAgICAgdmFyIGVycm9yID0gbnVsbDtcbiAgICAgICAgdmFyIHJlc3VsdDtcbiAgICAgICAgcmV0dXJuIGVhY2hTZXJpZXMkMSh0YXNrcywgKHRhc2ssIHRhc2tDYikgPT4ge1xuICAgICAgICAgICAgd3JhcEFzeW5jKHRhc2spKChlcnIsIC4uLmFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXJyID09PSBmYWxzZSkgcmV0dXJuIHRhc2tDYihlcnIpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGFyZ3MubGVuZ3RoIDwgMikge1xuICAgICAgICAgICAgICAgICAgICBbcmVzdWx0XSA9IGFyZ3M7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gYXJncztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZXJyb3IgPSBlcnI7XG4gICAgICAgICAgICAgICAgdGFza0NiKGVyciA/IG51bGwgOiB7fSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSwgKCkgPT4gY2FsbGJhY2soZXJyb3IsIHJlc3VsdCkpO1xuICAgIH1cblxuICAgIHZhciB0cnlFYWNoJDEgPSBhd2FpdGlmeSh0cnlFYWNoKTtcblxuICAgIC8qKlxuICAgICAqIFVuZG9lcyBhIFttZW1vaXplXXtAbGluayBtb2R1bGU6VXRpbHMubWVtb2l6ZX1kIGZ1bmN0aW9uLCByZXZlcnRpbmcgaXQgdG8gdGhlIG9yaWdpbmFsLFxuICAgICAqIHVubWVtb2l6ZWQgZm9ybS4gSGFuZHkgZm9yIHRlc3RpbmcuXG4gICAgICpcbiAgICAgKiBAbmFtZSB1bm1lbW9pemVcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpVdGlsc1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAc2VlIFthc3luYy5tZW1vaXplXXtAbGluayBtb2R1bGU6VXRpbHMubWVtb2l6ZX1cbiAgICAgKiBAY2F0ZWdvcnkgVXRpbFxuICAgICAqIEBwYXJhbSB7QXN5bmNGdW5jdGlvbn0gZm4gLSB0aGUgbWVtb2l6ZWQgZnVuY3Rpb25cbiAgICAgKiBAcmV0dXJucyB7QXN5bmNGdW5jdGlvbn0gYSBmdW5jdGlvbiB0aGF0IGNhbGxzIHRoZSBvcmlnaW5hbCB1bm1lbW9pemVkIGZ1bmN0aW9uXG4gICAgICovXG4gICAgZnVuY3Rpb24gdW5tZW1vaXplKGZuKSB7XG4gICAgICAgIHJldHVybiAoLi4uYXJncykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChmbi51bm1lbW9pemVkIHx8IGZuKSguLi5hcmdzKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXBlYXRlZGx5IGNhbGwgYGl0ZXJhdGVlYCwgd2hpbGUgYHRlc3RgIHJldHVybnMgYHRydWVgLiBDYWxscyBgY2FsbGJhY2tgIHdoZW5cbiAgICAgKiBzdG9wcGVkLCBvciBhbiBlcnJvciBvY2N1cnMuXG4gICAgICpcbiAgICAgKiBAbmFtZSB3aGlsc3RcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSB0ZXN0IC0gYXN5bmNocm9ub3VzIHRydXRoIHRlc3QgdG8gcGVyZm9ybSBiZWZvcmUgZWFjaFxuICAgICAqIGV4ZWN1dGlvbiBvZiBgaXRlcmF0ZWVgLiBJbnZva2VkIHdpdGggKCkuXG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSBpdGVyYXRlZSAtIEFuIGFzeW5jIGZ1bmN0aW9uIHdoaWNoIGlzIGNhbGxlZCBlYWNoIHRpbWVcbiAgICAgKiBgdGVzdGAgcGFzc2VzLiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQSBjYWxsYmFjayB3aGljaCBpcyBjYWxsZWQgYWZ0ZXIgdGhlIHRlc3RcbiAgICAgKiBmdW5jdGlvbiBoYXMgZmFpbGVkIGFuZCByZXBlYXRlZCBleGVjdXRpb24gb2YgYGl0ZXJhdGVlYCBoYXMgc3RvcHBlZC4gYGNhbGxiYWNrYFxuICAgICAqIHdpbGwgYmUgcGFzc2VkIGFuIGVycm9yIGFuZCBhbnkgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgZmluYWwgYGl0ZXJhdGVlYCdzXG4gICAgICogY2FsbGJhY2suIEludm9rZWQgd2l0aCAoZXJyLCBbcmVzdWx0c10pO1xuICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UsIGlmIG5vIGNhbGxiYWNrIGlzIHBhc3NlZFxuICAgICAqIEBleGFtcGxlXG4gICAgICpcbiAgICAgKiB2YXIgY291bnQgPSAwO1xuICAgICAqIGFzeW5jLndoaWxzdChcbiAgICAgKiAgICAgZnVuY3Rpb24gdGVzdChjYikgeyBjYihudWxsLCBjb3VudCA8IDUpOyB9LFxuICAgICAqICAgICBmdW5jdGlvbiBpdGVyKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjb3VudCsrO1xuICAgICAqICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgKiAgICAgICAgICAgICBjYWxsYmFjayhudWxsLCBjb3VudCk7XG4gICAgICogICAgICAgICB9LCAxMDAwKTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgICAgZnVuY3Rpb24gKGVyciwgbikge1xuICAgICAqICAgICAgICAgLy8gNSBzZWNvbmRzIGhhdmUgcGFzc2VkLCBuID0gNVxuICAgICAqICAgICB9XG4gICAgICogKTtcbiAgICAgKi9cbiAgICBmdW5jdGlvbiB3aGlsc3QodGVzdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNhbGxiYWNrID0gb25seU9uY2UoY2FsbGJhY2spO1xuICAgICAgICB2YXIgX2ZuID0gd3JhcEFzeW5jKGl0ZXJhdGVlKTtcbiAgICAgICAgdmFyIF90ZXN0ID0gd3JhcEFzeW5jKHRlc3QpO1xuICAgICAgICB2YXIgcmVzdWx0cyA9IFtdO1xuXG4gICAgICAgIGZ1bmN0aW9uIG5leHQoZXJyLCAuLi5yZXN0KSB7XG4gICAgICAgICAgICBpZiAoZXJyKSByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgICAgICAgIHJlc3VsdHMgPSByZXN0O1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIF90ZXN0KGNoZWNrKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGNoZWNrKGVyciwgdHJ1dGgpIHtcbiAgICAgICAgICAgIGlmIChlcnIpIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVybjtcbiAgICAgICAgICAgIGlmICghdHJ1dGgpIHJldHVybiBjYWxsYmFjayhudWxsLCAuLi5yZXN1bHRzKTtcbiAgICAgICAgICAgIF9mbihuZXh0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBfdGVzdChjaGVjayk7XG4gICAgfVxuICAgIHZhciB3aGlsc3QkMSA9IGF3YWl0aWZ5KHdoaWxzdCwgMyk7XG5cbiAgICAvKipcbiAgICAgKiBSZXBlYXRlZGx5IGNhbGwgYGl0ZXJhdGVlYCB1bnRpbCBgdGVzdGAgcmV0dXJucyBgdHJ1ZWAuIENhbGxzIGBjYWxsYmFja2Agd2hlblxuICAgICAqIHN0b3BwZWQsIG9yIGFuIGVycm9yIG9jY3Vycy4gYGNhbGxiYWNrYCB3aWxsIGJlIHBhc3NlZCBhbiBlcnJvciBhbmQgYW55XG4gICAgICogYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgZmluYWwgYGl0ZXJhdGVlYCdzIGNhbGxiYWNrLlxuICAgICAqXG4gICAgICogVGhlIGludmVyc2Ugb2YgW3doaWxzdF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LndoaWxzdH0uXG4gICAgICpcbiAgICAgKiBAbmFtZSB1bnRpbFxuICAgICAqIEBzdGF0aWNcbiAgICAgKiBAbWVtYmVyT2YgbW9kdWxlOkNvbnRyb2xGbG93XG4gICAgICogQG1ldGhvZFxuICAgICAqIEBzZWUgW2FzeW5jLndoaWxzdF17QGxpbmsgbW9kdWxlOkNvbnRyb2xGbG93LndoaWxzdH1cbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBc3luY0Z1bmN0aW9ufSB0ZXN0IC0gYXN5bmNocm9ub3VzIHRydXRoIHRlc3QgdG8gcGVyZm9ybSBiZWZvcmUgZWFjaFxuICAgICAqIGV4ZWN1dGlvbiBvZiBgaXRlcmF0ZWVgLiBJbnZva2VkIHdpdGggKGNhbGxiYWNrKS5cbiAgICAgKiBAcGFyYW0ge0FzeW5jRnVuY3Rpb259IGl0ZXJhdGVlIC0gQW4gYXN5bmMgZnVuY3Rpb24gd2hpY2ggaXMgY2FsbGVkIGVhY2ggdGltZVxuICAgICAqIGB0ZXN0YCBmYWlscy4gSW52b2tlZCB3aXRoIChjYWxsYmFjaykuXG4gICAgICogQHBhcmFtIHtGdW5jdGlvbn0gW2NhbGxiYWNrXSAtIEEgY2FsbGJhY2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIHRoZSB0ZXN0XG4gICAgICogZnVuY3Rpb24gaGFzIHBhc3NlZCBhbmQgcmVwZWF0ZWQgZXhlY3V0aW9uIG9mIGBpdGVyYXRlZWAgaGFzIHN0b3BwZWQuIGBjYWxsYmFja2BcbiAgICAgKiB3aWxsIGJlIHBhc3NlZCBhbiBlcnJvciBhbmQgYW55IGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIGZpbmFsIGBpdGVyYXRlZWAnc1xuICAgICAqIGNhbGxiYWNrLiBJbnZva2VkIHdpdGggKGVyciwgW3Jlc3VsdHNdKTtcbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gYSBwcm9taXNlLCBpZiBhIGNhbGxiYWNrIGlzIG5vdCBwYXNzZWRcbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogY29uc3QgcmVzdWx0cyA9IFtdXG4gICAgICogbGV0IGZpbmlzaGVkID0gZmFsc2VcbiAgICAgKiBhc3luYy51bnRpbChmdW5jdGlvbiB0ZXN0KGNiKSB7XG4gICAgICogICAgIGNiKG51bGwsIGZpbmlzaGVkKVxuICAgICAqIH0sIGZ1bmN0aW9uIGl0ZXIobmV4dCkge1xuICAgICAqICAgICBmZXRjaFBhZ2UodXJsLCAoZXJyLCBib2R5KSA9PiB7XG4gICAgICogICAgICAgICBpZiAoZXJyKSByZXR1cm4gbmV4dChlcnIpXG4gICAgICogICAgICAgICByZXN1bHRzID0gcmVzdWx0cy5jb25jYXQoYm9keS5vYmplY3RzKVxuICAgICAqICAgICAgICAgZmluaXNoZWQgPSAhIWJvZHkubmV4dFxuICAgICAqICAgICAgICAgbmV4dChlcnIpXG4gICAgICogICAgIH0pXG4gICAgICogfSwgZnVuY3Rpb24gZG9uZSAoZXJyKSB7XG4gICAgICogICAgIC8vIGFsbCBwYWdlcyBoYXZlIGJlZW4gZmV0Y2hlZFxuICAgICAqIH0pXG4gICAgICovXG4gICAgZnVuY3Rpb24gdW50aWwodGVzdCwgaXRlcmF0ZWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNvbnN0IF90ZXN0ID0gd3JhcEFzeW5jKHRlc3QpO1xuICAgICAgICByZXR1cm4gd2hpbHN0JDEoKGNiKSA9PiBfdGVzdCgoZXJyLCB0cnV0aCkgPT4gY2IgKGVyciwgIXRydXRoKSksIGl0ZXJhdGVlLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUnVucyB0aGUgYHRhc2tzYCBhcnJheSBvZiBmdW5jdGlvbnMgaW4gc2VyaWVzLCBlYWNoIHBhc3NpbmcgdGhlaXIgcmVzdWx0cyB0b1xuICAgICAqIHRoZSBuZXh0IGluIHRoZSBhcnJheS4gSG93ZXZlciwgaWYgYW55IG9mIHRoZSBgdGFza3NgIHBhc3MgYW4gZXJyb3IgdG8gdGhlaXJcbiAgICAgKiBvd24gY2FsbGJhY2ssIHRoZSBuZXh0IGZ1bmN0aW9uIGlzIG5vdCBleGVjdXRlZCwgYW5kIHRoZSBtYWluIGBjYWxsYmFja2AgaXNcbiAgICAgKiBpbW1lZGlhdGVseSBjYWxsZWQgd2l0aCB0aGUgZXJyb3IuXG4gICAgICpcbiAgICAgKiBAbmFtZSB3YXRlcmZhbGxcbiAgICAgKiBAc3RhdGljXG4gICAgICogQG1lbWJlck9mIG1vZHVsZTpDb250cm9sRmxvd1xuICAgICAqIEBtZXRob2RcbiAgICAgKiBAY2F0ZWdvcnkgQ29udHJvbCBGbG93XG4gICAgICogQHBhcmFtIHtBcnJheX0gdGFza3MgLSBBbiBhcnJheSBvZiBbYXN5bmMgZnVuY3Rpb25zXXtAbGluayBBc3luY0Z1bmN0aW9ufVxuICAgICAqIHRvIHJ1bi5cbiAgICAgKiBFYWNoIGZ1bmN0aW9uIHNob3VsZCBjb21wbGV0ZSB3aXRoIGFueSBudW1iZXIgb2YgYHJlc3VsdGAgdmFsdWVzLlxuICAgICAqIFRoZSBgcmVzdWx0YCB2YWx1ZXMgd2lsbCBiZSBwYXNzZWQgYXMgYXJndW1lbnRzLCBpbiBvcmRlciwgdG8gdGhlIG5leHQgdGFzay5cbiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBbY2FsbGJhY2tdIC0gQW4gb3B0aW9uYWwgY2FsbGJhY2sgdG8gcnVuIG9uY2UgYWxsIHRoZVxuICAgICAqIGZ1bmN0aW9ucyBoYXZlIGNvbXBsZXRlZC4gVGhpcyB3aWxsIGJlIHBhc3NlZCB0aGUgcmVzdWx0cyBvZiB0aGUgbGFzdCB0YXNrJ3NcbiAgICAgKiBjYWxsYmFjay4gSW52b2tlZCB3aXRoIChlcnIsIFtyZXN1bHRzXSkuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IGEgcHJvbWlzZSwgaWYgYSBjYWxsYmFjayBpcyBvbWl0dGVkXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqIGFzeW5jLndhdGVyZmFsbChbXG4gICAgICogICAgIGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgICAgICBjYWxsYmFjayhudWxsLCAnb25lJywgJ3R3bycpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihhcmcxLCBhcmcyLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gYXJnMSBub3cgZXF1YWxzICdvbmUnIGFuZCBhcmcyIG5vdyBlcXVhbHMgJ3R3bydcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICd0aHJlZScpO1xuICAgICAqICAgICB9LFxuICAgICAqICAgICBmdW5jdGlvbihhcmcxLCBjYWxsYmFjaykge1xuICAgICAqICAgICAgICAgLy8gYXJnMSBub3cgZXF1YWxzICd0aHJlZSdcbiAgICAgKiAgICAgICAgIGNhbGxiYWNrKG51bGwsICdkb25lJyk7XG4gICAgICogICAgIH1cbiAgICAgKiBdLCBmdW5jdGlvbiAoZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgJ2RvbmUnXG4gICAgICogfSk7XG4gICAgICpcbiAgICAgKiAvLyBPciwgd2l0aCBuYW1lZCBmdW5jdGlvbnM6XG4gICAgICogYXN5bmMud2F0ZXJmYWxsKFtcbiAgICAgKiAgICAgbXlGaXJzdEZ1bmN0aW9uLFxuICAgICAqICAgICBteVNlY29uZEZ1bmN0aW9uLFxuICAgICAqICAgICBteUxhc3RGdW5jdGlvbixcbiAgICAgKiBdLCBmdW5jdGlvbiAoZXJyLCByZXN1bHQpIHtcbiAgICAgKiAgICAgLy8gcmVzdWx0IG5vdyBlcXVhbHMgJ2RvbmUnXG4gICAgICogfSk7XG4gICAgICogZnVuY3Rpb24gbXlGaXJzdEZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gICAgICogICAgIGNhbGxiYWNrKG51bGwsICdvbmUnLCAndHdvJyk7XG4gICAgICogfVxuICAgICAqIGZ1bmN0aW9uIG15U2Vjb25kRnVuY3Rpb24oYXJnMSwgYXJnMiwgY2FsbGJhY2spIHtcbiAgICAgKiAgICAgLy8gYXJnMSBub3cgZXF1YWxzICdvbmUnIGFuZCBhcmcyIG5vdyBlcXVhbHMgJ3R3bydcbiAgICAgKiAgICAgY2FsbGJhY2sobnVsbCwgJ3RocmVlJyk7XG4gICAgICogfVxuICAgICAqIGZ1bmN0aW9uIG15TGFzdEZ1bmN0aW9uKGFyZzEsIGNhbGxiYWNrKSB7XG4gICAgICogICAgIC8vIGFyZzEgbm93IGVxdWFscyAndGhyZWUnXG4gICAgICogICAgIGNhbGxiYWNrKG51bGwsICdkb25lJyk7XG4gICAgICogfVxuICAgICAqL1xuICAgIGZ1bmN0aW9uIHdhdGVyZmFsbCAodGFza3MsIGNhbGxiYWNrKSB7XG4gICAgICAgIGNhbGxiYWNrID0gb25jZShjYWxsYmFjayk7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh0YXNrcykpIHJldHVybiBjYWxsYmFjayhuZXcgRXJyb3IoJ0ZpcnN0IGFyZ3VtZW50IHRvIHdhdGVyZmFsbCBtdXN0IGJlIGFuIGFycmF5IG9mIGZ1bmN0aW9ucycpKTtcbiAgICAgICAgaWYgKCF0YXNrcy5sZW5ndGgpIHJldHVybiBjYWxsYmFjaygpO1xuICAgICAgICB2YXIgdGFza0luZGV4ID0gMDtcblxuICAgICAgICBmdW5jdGlvbiBuZXh0VGFzayhhcmdzKSB7XG4gICAgICAgICAgICB2YXIgdGFzayA9IHdyYXBBc3luYyh0YXNrc1t0YXNrSW5kZXgrK10pO1xuICAgICAgICAgICAgdGFzayguLi5hcmdzLCBvbmx5T25jZShuZXh0KSk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBuZXh0KGVyciwgLi4uYXJncykge1xuICAgICAgICAgICAgaWYgKGVyciA9PT0gZmFsc2UpIHJldHVyblxuICAgICAgICAgICAgaWYgKGVyciB8fCB0YXNrSW5kZXggPT09IHRhc2tzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIsIC4uLmFyZ3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbmV4dFRhc2soYXJncyk7XG4gICAgICAgIH1cblxuICAgICAgICBuZXh0VGFzayhbXSk7XG4gICAgfVxuXG4gICAgdmFyIHdhdGVyZmFsbCQxID0gYXdhaXRpZnkod2F0ZXJmYWxsKTtcblxuICAgIC8qKlxuICAgICAqIEFuIFwiYXN5bmMgZnVuY3Rpb25cIiBpbiB0aGUgY29udGV4dCBvZiBBc3luYyBpcyBhbiBhc3luY2hyb25vdXMgZnVuY3Rpb24gd2l0aFxuICAgICAqIGEgdmFyaWFibGUgbnVtYmVyIG9mIHBhcmFtZXRlcnMsIHdpdGggdGhlIGZpbmFsIHBhcmFtZXRlciBiZWluZyBhIGNhbGxiYWNrLlxuICAgICAqIChgZnVuY3Rpb24gKGFyZzEsIGFyZzIsIC4uLiwgY2FsbGJhY2spIHt9YClcbiAgICAgKiBUaGUgZmluYWwgY2FsbGJhY2sgaXMgb2YgdGhlIGZvcm0gYGNhbGxiYWNrKGVyciwgcmVzdWx0cy4uLilgLCB3aGljaCBtdXN0IGJlXG4gICAgICogY2FsbGVkIG9uY2UgdGhlIGZ1bmN0aW9uIGlzIGNvbXBsZXRlZC4gIFRoZSBjYWxsYmFjayBzaG91bGQgYmUgY2FsbGVkIHdpdGggYVxuICAgICAqIEVycm9yIGFzIGl0cyBmaXJzdCBhcmd1bWVudCB0byBzaWduYWwgdGhhdCBhbiBlcnJvciBvY2N1cnJlZC5cbiAgICAgKiBPdGhlcndpc2UsIGlmIG5vIGVycm9yIG9jY3VycmVkLCBpdCBzaG91bGQgYmUgY2FsbGVkIHdpdGggYG51bGxgIGFzIHRoZSBmaXJzdFxuICAgICAqIGFyZ3VtZW50LCBhbmQgYW55IGFkZGl0aW9uYWwgYHJlc3VsdGAgYXJndW1lbnRzIHRoYXQgbWF5IGFwcGx5LCB0byBzaWduYWxcbiAgICAgKiBzdWNjZXNzZnVsIGNvbXBsZXRpb24uXG4gICAgICogVGhlIGNhbGxiYWNrIG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSwgaWRlYWxseSBvbiBhIGxhdGVyIHRpY2sgb2YgdGhlXG4gICAgICogSmF2YVNjcmlwdCBldmVudCBsb29wLlxuICAgICAqXG4gICAgICogVGhpcyB0eXBlIG9mIGZ1bmN0aW9uIGlzIGFsc28gcmVmZXJyZWQgdG8gYXMgYSBcIk5vZGUtc3R5bGUgYXN5bmMgZnVuY3Rpb25cIixcbiAgICAgKiBvciBhIFwiY29udGludWF0aW9uIHBhc3Npbmctc3R5bGUgZnVuY3Rpb25cIiAoQ1BTKS4gTW9zdCBvZiB0aGUgbWV0aG9kcyBvZiB0aGlzXG4gICAgICogbGlicmFyeSBhcmUgdGhlbXNlbHZlcyBDUFMvTm9kZS1zdHlsZSBhc3luYyBmdW5jdGlvbnMsIG9yIGZ1bmN0aW9ucyB0aGF0XG4gICAgICogcmV0dXJuIENQUy9Ob2RlLXN0eWxlIGFzeW5jIGZ1bmN0aW9ucy5cbiAgICAgKlxuICAgICAqIFdoZXJldmVyIHdlIGFjY2VwdCBhIE5vZGUtc3R5bGUgYXN5bmMgZnVuY3Rpb24sIHdlIGFsc28gZGlyZWN0bHkgYWNjZXB0IGFuXG4gICAgICogW0VTMjAxNyBgYXN5bmNgIGZ1bmN0aW9uXXtAbGluayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9TdGF0ZW1lbnRzL2FzeW5jX2Z1bmN0aW9ufS5cbiAgICAgKiBJbiB0aGlzIGNhc2UsIHRoZSBgYXN5bmNgIGZ1bmN0aW9uIHdpbGwgbm90IGJlIHBhc3NlZCBhIGZpbmFsIGNhbGxiYWNrXG4gICAgICogYXJndW1lbnQsIGFuZCBhbnkgdGhyb3duIGVycm9yIHdpbGwgYmUgdXNlZCBhcyB0aGUgYGVycmAgYXJndW1lbnQgb2YgdGhlXG4gICAgICogaW1wbGljaXQgY2FsbGJhY2ssIGFuZCB0aGUgcmV0dXJuIHZhbHVlIHdpbGwgYmUgdXNlZCBhcyB0aGUgYHJlc3VsdGAgdmFsdWUuXG4gICAgICogKGkuZS4gYSBgcmVqZWN0ZWRgIG9mIHRoZSByZXR1cm5lZCBQcm9taXNlIGJlY29tZXMgdGhlIGBlcnJgIGNhbGxiYWNrXG4gICAgICogYXJndW1lbnQsIGFuZCBhIGByZXNvbHZlZGAgdmFsdWUgYmVjb21lcyB0aGUgYHJlc3VsdGAuKVxuICAgICAqXG4gICAgICogTm90ZSwgZHVlIHRvIEphdmFTY3JpcHQgbGltaXRhdGlvbnMsIHdlIGNhbiBvbmx5IGRldGVjdCBuYXRpdmUgYGFzeW5jYFxuICAgICAqIGZ1bmN0aW9ucyBhbmQgbm90IHRyYW5zcGlsaWVkIGltcGxlbWVudGF0aW9ucy5cbiAgICAgKiBZb3VyIGVudmlyb25tZW50IG11c3QgaGF2ZSBgYXN5bmNgL2Bhd2FpdGAgc3VwcG9ydCBmb3IgdGhpcyB0byB3b3JrLlxuICAgICAqIChlLmcuIE5vZGUgPiB2Ny42LCBvciBhIHJlY2VudCB2ZXJzaW9uIG9mIGEgbW9kZXJuIGJyb3dzZXIpLlxuICAgICAqIElmIHlvdSBhcmUgdXNpbmcgYGFzeW5jYCBmdW5jdGlvbnMgdGhyb3VnaCBhIHRyYW5zcGlsZXIgKGUuZy4gQmFiZWwpLCB5b3VcbiAgICAgKiBtdXN0IHN0aWxsIHdyYXAgdGhlIGZ1bmN0aW9uIHdpdGggW2FzeW5jaWZ5XXtAbGluayBtb2R1bGU6VXRpbHMuYXN5bmNpZnl9LFxuICAgICAqIGJlY2F1c2UgdGhlIGBhc3luYyBmdW5jdGlvbmAgd2lsbCBiZSBjb21waWxlZCB0byBhbiBvcmRpbmFyeSBmdW5jdGlvbiB0aGF0XG4gICAgICogcmV0dXJucyBhIHByb21pc2UuXG4gICAgICpcbiAgICAgKiBAdHlwZWRlZiB7RnVuY3Rpb259IEFzeW5jRnVuY3Rpb25cbiAgICAgKiBAc3RhdGljXG4gICAgICovXG5cbiAgICB2YXIgaW5kZXggPSB7XG4gICAgICAgIGFwcGx5LFxuICAgICAgICBhcHBseUVhY2g6IGFwcGx5RWFjaCQxLFxuICAgICAgICBhcHBseUVhY2hTZXJpZXMsXG4gICAgICAgIGFzeW5jaWZ5LFxuICAgICAgICBhdXRvLFxuICAgICAgICBhdXRvSW5qZWN0LFxuICAgICAgICBjYXJnbyxcbiAgICAgICAgY2FyZ29RdWV1ZTogY2FyZ28kMSxcbiAgICAgICAgY29tcG9zZSxcbiAgICAgICAgY29uY2F0OiBjb25jYXQkMSxcbiAgICAgICAgY29uY2F0TGltaXQ6IGNvbmNhdExpbWl0JDEsXG4gICAgICAgIGNvbmNhdFNlcmllczogY29uY2F0U2VyaWVzJDEsXG4gICAgICAgIGNvbnN0YW50LFxuICAgICAgICBkZXRlY3Q6IGRldGVjdCQxLFxuICAgICAgICBkZXRlY3RMaW1pdDogZGV0ZWN0TGltaXQkMSxcbiAgICAgICAgZGV0ZWN0U2VyaWVzOiBkZXRlY3RTZXJpZXMkMSxcbiAgICAgICAgZGlyLFxuICAgICAgICBkb1VudGlsLFxuICAgICAgICBkb1doaWxzdDogZG9XaGlsc3QkMSxcbiAgICAgICAgZWFjaCxcbiAgICAgICAgZWFjaExpbWl0OiBlYWNoTGltaXQkMixcbiAgICAgICAgZWFjaE9mOiBlYWNoT2YkMSxcbiAgICAgICAgZWFjaE9mTGltaXQ6IGVhY2hPZkxpbWl0JDIsXG4gICAgICAgIGVhY2hPZlNlcmllczogZWFjaE9mU2VyaWVzJDEsXG4gICAgICAgIGVhY2hTZXJpZXM6IGVhY2hTZXJpZXMkMSxcbiAgICAgICAgZW5zdXJlQXN5bmMsXG4gICAgICAgIGV2ZXJ5OiBldmVyeSQxLFxuICAgICAgICBldmVyeUxpbWl0OiBldmVyeUxpbWl0JDEsXG4gICAgICAgIGV2ZXJ5U2VyaWVzOiBldmVyeVNlcmllcyQxLFxuICAgICAgICBmaWx0ZXI6IGZpbHRlciQxLFxuICAgICAgICBmaWx0ZXJMaW1pdDogZmlsdGVyTGltaXQkMSxcbiAgICAgICAgZmlsdGVyU2VyaWVzOiBmaWx0ZXJTZXJpZXMkMSxcbiAgICAgICAgZm9yZXZlcjogZm9yZXZlciQxLFxuICAgICAgICBncm91cEJ5LFxuICAgICAgICBncm91cEJ5TGltaXQ6IGdyb3VwQnlMaW1pdCQxLFxuICAgICAgICBncm91cEJ5U2VyaWVzLFxuICAgICAgICBsb2csXG4gICAgICAgIG1hcDogbWFwJDEsXG4gICAgICAgIG1hcExpbWl0OiBtYXBMaW1pdCQxLFxuICAgICAgICBtYXBTZXJpZXM6IG1hcFNlcmllcyQxLFxuICAgICAgICBtYXBWYWx1ZXMsXG4gICAgICAgIG1hcFZhbHVlc0xpbWl0OiBtYXBWYWx1ZXNMaW1pdCQxLFxuICAgICAgICBtYXBWYWx1ZXNTZXJpZXMsXG4gICAgICAgIG1lbW9pemUsXG4gICAgICAgIG5leHRUaWNrLFxuICAgICAgICBwYXJhbGxlbDogcGFyYWxsZWwkMSxcbiAgICAgICAgcGFyYWxsZWxMaW1pdCxcbiAgICAgICAgcHJpb3JpdHlRdWV1ZSxcbiAgICAgICAgcXVldWU6IHF1ZXVlJDEsXG4gICAgICAgIHJhY2U6IHJhY2UkMSxcbiAgICAgICAgcmVkdWNlOiByZWR1Y2UkMSxcbiAgICAgICAgcmVkdWNlUmlnaHQsXG4gICAgICAgIHJlZmxlY3QsXG4gICAgICAgIHJlZmxlY3RBbGwsXG4gICAgICAgIHJlamVjdDogcmVqZWN0JDIsXG4gICAgICAgIHJlamVjdExpbWl0OiByZWplY3RMaW1pdCQxLFxuICAgICAgICByZWplY3RTZXJpZXM6IHJlamVjdFNlcmllcyQxLFxuICAgICAgICByZXRyeSxcbiAgICAgICAgcmV0cnlhYmxlLFxuICAgICAgICBzZXEsXG4gICAgICAgIHNlcmllcyxcbiAgICAgICAgc2V0SW1tZWRpYXRlOiBzZXRJbW1lZGlhdGUkMSxcbiAgICAgICAgc29tZTogc29tZSQxLFxuICAgICAgICBzb21lTGltaXQ6IHNvbWVMaW1pdCQxLFxuICAgICAgICBzb21lU2VyaWVzOiBzb21lU2VyaWVzJDEsXG4gICAgICAgIHNvcnRCeTogc29ydEJ5JDEsXG4gICAgICAgIHRpbWVvdXQsXG4gICAgICAgIHRpbWVzLFxuICAgICAgICB0aW1lc0xpbWl0LFxuICAgICAgICB0aW1lc1NlcmllcyxcbiAgICAgICAgdHJhbnNmb3JtLFxuICAgICAgICB0cnlFYWNoOiB0cnlFYWNoJDEsXG4gICAgICAgIHVubWVtb2l6ZSxcbiAgICAgICAgdW50aWwsXG4gICAgICAgIHdhdGVyZmFsbDogd2F0ZXJmYWxsJDEsXG4gICAgICAgIHdoaWxzdDogd2hpbHN0JDEsXG5cbiAgICAgICAgLy8gYWxpYXNlc1xuICAgICAgICBhbGw6IGV2ZXJ5JDEsXG4gICAgICAgIGFsbExpbWl0OiBldmVyeUxpbWl0JDEsXG4gICAgICAgIGFsbFNlcmllczogZXZlcnlTZXJpZXMkMSxcbiAgICAgICAgYW55OiBzb21lJDEsXG4gICAgICAgIGFueUxpbWl0OiBzb21lTGltaXQkMSxcbiAgICAgICAgYW55U2VyaWVzOiBzb21lU2VyaWVzJDEsXG4gICAgICAgIGZpbmQ6IGRldGVjdCQxLFxuICAgICAgICBmaW5kTGltaXQ6IGRldGVjdExpbWl0JDEsXG4gICAgICAgIGZpbmRTZXJpZXM6IGRldGVjdFNlcmllcyQxLFxuICAgICAgICBmbGF0TWFwOiBjb25jYXQkMSxcbiAgICAgICAgZmxhdE1hcExpbWl0OiBjb25jYXRMaW1pdCQxLFxuICAgICAgICBmbGF0TWFwU2VyaWVzOiBjb25jYXRTZXJpZXMkMSxcbiAgICAgICAgZm9yRWFjaDogZWFjaCxcbiAgICAgICAgZm9yRWFjaFNlcmllczogZWFjaFNlcmllcyQxLFxuICAgICAgICBmb3JFYWNoTGltaXQ6IGVhY2hMaW1pdCQyLFxuICAgICAgICBmb3JFYWNoT2Y6IGVhY2hPZiQxLFxuICAgICAgICBmb3JFYWNoT2ZTZXJpZXM6IGVhY2hPZlNlcmllcyQxLFxuICAgICAgICBmb3JFYWNoT2ZMaW1pdDogZWFjaE9mTGltaXQkMixcbiAgICAgICAgaW5qZWN0OiByZWR1Y2UkMSxcbiAgICAgICAgZm9sZGw6IHJlZHVjZSQxLFxuICAgICAgICBmb2xkcjogcmVkdWNlUmlnaHQsXG4gICAgICAgIHNlbGVjdDogZmlsdGVyJDEsXG4gICAgICAgIHNlbGVjdExpbWl0OiBmaWx0ZXJMaW1pdCQxLFxuICAgICAgICBzZWxlY3RTZXJpZXM6IGZpbHRlclNlcmllcyQxLFxuICAgICAgICB3cmFwU3luYzogYXN5bmNpZnksXG4gICAgICAgIGR1cmluZzogd2hpbHN0JDEsXG4gICAgICAgIGRvRHVyaW5nOiBkb1doaWxzdCQxXG4gICAgfTtcblxuICAgIGV4cG9ydHMuZGVmYXVsdCA9IGluZGV4O1xuICAgIGV4cG9ydHMuYXBwbHkgPSBhcHBseTtcbiAgICBleHBvcnRzLmFwcGx5RWFjaCA9IGFwcGx5RWFjaCQxO1xuICAgIGV4cG9ydHMuYXBwbHlFYWNoU2VyaWVzID0gYXBwbHlFYWNoU2VyaWVzO1xuICAgIGV4cG9ydHMuYXN5bmNpZnkgPSBhc3luY2lmeTtcbiAgICBleHBvcnRzLmF1dG8gPSBhdXRvO1xuICAgIGV4cG9ydHMuYXV0b0luamVjdCA9IGF1dG9JbmplY3Q7XG4gICAgZXhwb3J0cy5jYXJnbyA9IGNhcmdvO1xuICAgIGV4cG9ydHMuY2FyZ29RdWV1ZSA9IGNhcmdvJDE7XG4gICAgZXhwb3J0cy5jb21wb3NlID0gY29tcG9zZTtcbiAgICBleHBvcnRzLmNvbmNhdCA9IGNvbmNhdCQxO1xuICAgIGV4cG9ydHMuY29uY2F0TGltaXQgPSBjb25jYXRMaW1pdCQxO1xuICAgIGV4cG9ydHMuY29uY2F0U2VyaWVzID0gY29uY2F0U2VyaWVzJDE7XG4gICAgZXhwb3J0cy5jb25zdGFudCA9IGNvbnN0YW50O1xuICAgIGV4cG9ydHMuZGV0ZWN0ID0gZGV0ZWN0JDE7XG4gICAgZXhwb3J0cy5kZXRlY3RMaW1pdCA9IGRldGVjdExpbWl0JDE7XG4gICAgZXhwb3J0cy5kZXRlY3RTZXJpZXMgPSBkZXRlY3RTZXJpZXMkMTtcbiAgICBleHBvcnRzLmRpciA9IGRpcjtcbiAgICBleHBvcnRzLmRvVW50aWwgPSBkb1VudGlsO1xuICAgIGV4cG9ydHMuZG9XaGlsc3QgPSBkb1doaWxzdCQxO1xuICAgIGV4cG9ydHMuZWFjaCA9IGVhY2g7XG4gICAgZXhwb3J0cy5lYWNoTGltaXQgPSBlYWNoTGltaXQkMjtcbiAgICBleHBvcnRzLmVhY2hPZiA9IGVhY2hPZiQxO1xuICAgIGV4cG9ydHMuZWFjaE9mTGltaXQgPSBlYWNoT2ZMaW1pdCQyO1xuICAgIGV4cG9ydHMuZWFjaE9mU2VyaWVzID0gZWFjaE9mU2VyaWVzJDE7XG4gICAgZXhwb3J0cy5lYWNoU2VyaWVzID0gZWFjaFNlcmllcyQxO1xuICAgIGV4cG9ydHMuZW5zdXJlQXN5bmMgPSBlbnN1cmVBc3luYztcbiAgICBleHBvcnRzLmV2ZXJ5ID0gZXZlcnkkMTtcbiAgICBleHBvcnRzLmV2ZXJ5TGltaXQgPSBldmVyeUxpbWl0JDE7XG4gICAgZXhwb3J0cy5ldmVyeVNlcmllcyA9IGV2ZXJ5U2VyaWVzJDE7XG4gICAgZXhwb3J0cy5maWx0ZXIgPSBmaWx0ZXIkMTtcbiAgICBleHBvcnRzLmZpbHRlckxpbWl0ID0gZmlsdGVyTGltaXQkMTtcbiAgICBleHBvcnRzLmZpbHRlclNlcmllcyA9IGZpbHRlclNlcmllcyQxO1xuICAgIGV4cG9ydHMuZm9yZXZlciA9IGZvcmV2ZXIkMTtcbiAgICBleHBvcnRzLmdyb3VwQnkgPSBncm91cEJ5O1xuICAgIGV4cG9ydHMuZ3JvdXBCeUxpbWl0ID0gZ3JvdXBCeUxpbWl0JDE7XG4gICAgZXhwb3J0cy5ncm91cEJ5U2VyaWVzID0gZ3JvdXBCeVNlcmllcztcbiAgICBleHBvcnRzLmxvZyA9IGxvZztcbiAgICBleHBvcnRzLm1hcCA9IG1hcCQxO1xuICAgIGV4cG9ydHMubWFwTGltaXQgPSBtYXBMaW1pdCQxO1xuICAgIGV4cG9ydHMubWFwU2VyaWVzID0gbWFwU2VyaWVzJDE7XG4gICAgZXhwb3J0cy5tYXBWYWx1ZXMgPSBtYXBWYWx1ZXM7XG4gICAgZXhwb3J0cy5tYXBWYWx1ZXNMaW1pdCA9IG1hcFZhbHVlc0xpbWl0JDE7XG4gICAgZXhwb3J0cy5tYXBWYWx1ZXNTZXJpZXMgPSBtYXBWYWx1ZXNTZXJpZXM7XG4gICAgZXhwb3J0cy5tZW1vaXplID0gbWVtb2l6ZTtcbiAgICBleHBvcnRzLm5leHRUaWNrID0gbmV4dFRpY2s7XG4gICAgZXhwb3J0cy5wYXJhbGxlbCA9IHBhcmFsbGVsJDE7XG4gICAgZXhwb3J0cy5wYXJhbGxlbExpbWl0ID0gcGFyYWxsZWxMaW1pdDtcbiAgICBleHBvcnRzLnByaW9yaXR5UXVldWUgPSBwcmlvcml0eVF1ZXVlO1xuICAgIGV4cG9ydHMucXVldWUgPSBxdWV1ZSQxO1xuICAgIGV4cG9ydHMucmFjZSA9IHJhY2UkMTtcbiAgICBleHBvcnRzLnJlZHVjZSA9IHJlZHVjZSQxO1xuICAgIGV4cG9ydHMucmVkdWNlUmlnaHQgPSByZWR1Y2VSaWdodDtcbiAgICBleHBvcnRzLnJlZmxlY3QgPSByZWZsZWN0O1xuICAgIGV4cG9ydHMucmVmbGVjdEFsbCA9IHJlZmxlY3RBbGw7XG4gICAgZXhwb3J0cy5yZWplY3QgPSByZWplY3QkMjtcbiAgICBleHBvcnRzLnJlamVjdExpbWl0ID0gcmVqZWN0TGltaXQkMTtcbiAgICBleHBvcnRzLnJlamVjdFNlcmllcyA9IHJlamVjdFNlcmllcyQxO1xuICAgIGV4cG9ydHMucmV0cnkgPSByZXRyeTtcbiAgICBleHBvcnRzLnJldHJ5YWJsZSA9IHJldHJ5YWJsZTtcbiAgICBleHBvcnRzLnNlcSA9IHNlcTtcbiAgICBleHBvcnRzLnNlcmllcyA9IHNlcmllcztcbiAgICBleHBvcnRzLnNldEltbWVkaWF0ZSA9IHNldEltbWVkaWF0ZSQxO1xuICAgIGV4cG9ydHMuc29tZSA9IHNvbWUkMTtcbiAgICBleHBvcnRzLnNvbWVMaW1pdCA9IHNvbWVMaW1pdCQxO1xuICAgIGV4cG9ydHMuc29tZVNlcmllcyA9IHNvbWVTZXJpZXMkMTtcbiAgICBleHBvcnRzLnNvcnRCeSA9IHNvcnRCeSQxO1xuICAgIGV4cG9ydHMudGltZW91dCA9IHRpbWVvdXQ7XG4gICAgZXhwb3J0cy50aW1lcyA9IHRpbWVzO1xuICAgIGV4cG9ydHMudGltZXNMaW1pdCA9IHRpbWVzTGltaXQ7XG4gICAgZXhwb3J0cy50aW1lc1NlcmllcyA9IHRpbWVzU2VyaWVzO1xuICAgIGV4cG9ydHMudHJhbnNmb3JtID0gdHJhbnNmb3JtO1xuICAgIGV4cG9ydHMudHJ5RWFjaCA9IHRyeUVhY2gkMTtcbiAgICBleHBvcnRzLnVubWVtb2l6ZSA9IHVubWVtb2l6ZTtcbiAgICBleHBvcnRzLnVudGlsID0gdW50aWw7XG4gICAgZXhwb3J0cy53YXRlcmZhbGwgPSB3YXRlcmZhbGwkMTtcbiAgICBleHBvcnRzLndoaWxzdCA9IHdoaWxzdCQxO1xuICAgIGV4cG9ydHMuYWxsID0gZXZlcnkkMTtcbiAgICBleHBvcnRzLmFsbExpbWl0ID0gZXZlcnlMaW1pdCQxO1xuICAgIGV4cG9ydHMuYWxsU2VyaWVzID0gZXZlcnlTZXJpZXMkMTtcbiAgICBleHBvcnRzLmFueSA9IHNvbWUkMTtcbiAgICBleHBvcnRzLmFueUxpbWl0ID0gc29tZUxpbWl0JDE7XG4gICAgZXhwb3J0cy5hbnlTZXJpZXMgPSBzb21lU2VyaWVzJDE7XG4gICAgZXhwb3J0cy5maW5kID0gZGV0ZWN0JDE7XG4gICAgZXhwb3J0cy5maW5kTGltaXQgPSBkZXRlY3RMaW1pdCQxO1xuICAgIGV4cG9ydHMuZmluZFNlcmllcyA9IGRldGVjdFNlcmllcyQxO1xuICAgIGV4cG9ydHMuZmxhdE1hcCA9IGNvbmNhdCQxO1xuICAgIGV4cG9ydHMuZmxhdE1hcExpbWl0ID0gY29uY2F0TGltaXQkMTtcbiAgICBleHBvcnRzLmZsYXRNYXBTZXJpZXMgPSBjb25jYXRTZXJpZXMkMTtcbiAgICBleHBvcnRzLmZvckVhY2ggPSBlYWNoO1xuICAgIGV4cG9ydHMuZm9yRWFjaFNlcmllcyA9IGVhY2hTZXJpZXMkMTtcbiAgICBleHBvcnRzLmZvckVhY2hMaW1pdCA9IGVhY2hMaW1pdCQyO1xuICAgIGV4cG9ydHMuZm9yRWFjaE9mID0gZWFjaE9mJDE7XG4gICAgZXhwb3J0cy5mb3JFYWNoT2ZTZXJpZXMgPSBlYWNoT2ZTZXJpZXMkMTtcbiAgICBleHBvcnRzLmZvckVhY2hPZkxpbWl0ID0gZWFjaE9mTGltaXQkMjtcbiAgICBleHBvcnRzLmluamVjdCA9IHJlZHVjZSQxO1xuICAgIGV4cG9ydHMuZm9sZGwgPSByZWR1Y2UkMTtcbiAgICBleHBvcnRzLmZvbGRyID0gcmVkdWNlUmlnaHQ7XG4gICAgZXhwb3J0cy5zZWxlY3QgPSBmaWx0ZXIkMTtcbiAgICBleHBvcnRzLnNlbGVjdExpbWl0ID0gZmlsdGVyTGltaXQkMTtcbiAgICBleHBvcnRzLnNlbGVjdFNlcmllcyA9IGZpbHRlclNlcmllcyQxO1xuICAgIGV4cG9ydHMud3JhcFN5bmMgPSBhc3luY2lmeTtcbiAgICBleHBvcnRzLmR1cmluZyA9IHdoaWxzdCQxO1xuICAgIGV4cG9ydHMuZG9EdXJpbmcgPSBkb1doaWxzdCQxO1xuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcblxufSkpKTtcbiIsICJjb25zdCB7IGhhc093blByb3BlcnR5IH0gPSBPYmplY3QucHJvdG90eXBlXG5cbmNvbnN0IGVvbCA9IHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJyAmJlxuICBwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInID8gJ1xcclxcbicgOiAnXFxuJ1xuXG5jb25zdCBlbmNvZGUgPSAob2JqLCBvcHQpID0+IHtcbiAgY29uc3QgY2hpbGRyZW4gPSBbXVxuICBsZXQgb3V0ID0gJydcblxuICBpZiAodHlwZW9mIG9wdCA9PT0gJ3N0cmluZycpIHtcbiAgICBvcHQgPSB7XG4gICAgICBzZWN0aW9uOiBvcHQsXG4gICAgICB3aGl0ZXNwYWNlOiBmYWxzZSxcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgb3B0ID0gb3B0IHx8IE9iamVjdC5jcmVhdGUobnVsbClcbiAgICBvcHQud2hpdGVzcGFjZSA9IG9wdC53aGl0ZXNwYWNlID09PSB0cnVlXG4gIH1cblxuICBjb25zdCBzZXBhcmF0b3IgPSBvcHQud2hpdGVzcGFjZSA/ICcgPSAnIDogJz0nXG5cbiAgZm9yIChjb25zdCBrIG9mIE9iamVjdC5rZXlzKG9iaikpIHtcbiAgICBjb25zdCB2YWwgPSBvYmpba11cbiAgICBpZiAodmFsICYmIEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHZhbClcbiAgICAgICAgb3V0ICs9IHNhZmUoayArICdbXScpICsgc2VwYXJhdG9yICsgc2FmZShpdGVtKSArICdcXG4nXG4gICAgfSBlbHNlIGlmICh2YWwgJiYgdHlwZW9mIHZhbCA9PT0gJ29iamVjdCcpXG4gICAgICBjaGlsZHJlbi5wdXNoKGspXG4gICAgZWxzZVxuICAgICAgb3V0ICs9IHNhZmUoaykgKyBzZXBhcmF0b3IgKyBzYWZlKHZhbCkgKyBlb2xcbiAgfVxuXG4gIGlmIChvcHQuc2VjdGlvbiAmJiBvdXQubGVuZ3RoKVxuICAgIG91dCA9ICdbJyArIHNhZmUob3B0LnNlY3Rpb24pICsgJ10nICsgZW9sICsgb3V0XG5cbiAgZm9yIChjb25zdCBrIG9mIGNoaWxkcmVuKSB7XG4gICAgY29uc3QgbmsgPSBkb3RTcGxpdChrKS5qb2luKCdcXFxcLicpXG4gICAgY29uc3Qgc2VjdGlvbiA9IChvcHQuc2VjdGlvbiA/IG9wdC5zZWN0aW9uICsgJy4nIDogJycpICsgbmtcbiAgICBjb25zdCB7IHdoaXRlc3BhY2UgfSA9IG9wdFxuICAgIGNvbnN0IGNoaWxkID0gZW5jb2RlKG9ialtrXSwge1xuICAgICAgc2VjdGlvbixcbiAgICAgIHdoaXRlc3BhY2UsXG4gICAgfSlcbiAgICBpZiAob3V0Lmxlbmd0aCAmJiBjaGlsZC5sZW5ndGgpXG4gICAgICBvdXQgKz0gZW9sXG5cbiAgICBvdXQgKz0gY2hpbGRcbiAgfVxuXG4gIHJldHVybiBvdXRcbn1cblxuY29uc3QgZG90U3BsaXQgPSBzdHIgPT5cbiAgc3RyLnJlcGxhY2UoL1xcMS9nLCAnXFx1MDAwMkxJVEVSQUxcXFxcMUxJVEVSQUxcXHUwMDAyJylcbiAgICAucmVwbGFjZSgvXFxcXFxcLi9nLCAnXFx1MDAwMScpXG4gICAgLnNwbGl0KC9cXC4vKVxuICAgIC5tYXAocGFydCA9PlxuICAgICAgcGFydC5yZXBsYWNlKC9cXDEvZywgJ1xcXFwuJylcbiAgICAgICAgLnJlcGxhY2UoL1xcMkxJVEVSQUxcXFxcMUxJVEVSQUxcXDIvZywgJ1xcdTAwMDEnKSlcblxuY29uc3QgZGVjb2RlID0gc3RyID0+IHtcbiAgY29uc3Qgb3V0ID0gT2JqZWN0LmNyZWF0ZShudWxsKVxuICBsZXQgcCA9IG91dFxuICBsZXQgc2VjdGlvbiA9IG51bGxcbiAgLy8gICAgICAgICAgc2VjdGlvbiAgICAgfGtleSAgICAgID0gdmFsdWVcbiAgY29uc3QgcmUgPSAvXlxcWyhbXlxcXV0qKVxcXSR8XihbXj1dKykoPSguKikpPyQvaVxuICBjb25zdCBsaW5lcyA9IHN0ci5zcGxpdCgvW1xcclxcbl0rL2cpXG5cbiAgZm9yIChjb25zdCBsaW5lIG9mIGxpbmVzKSB7XG4gICAgaWYgKCFsaW5lIHx8IGxpbmUubWF0Y2goL15cXHMqWzsjXS8pKVxuICAgICAgY29udGludWVcbiAgICBjb25zdCBtYXRjaCA9IGxpbmUubWF0Y2gocmUpXG4gICAgaWYgKCFtYXRjaClcbiAgICAgIGNvbnRpbnVlXG4gICAgaWYgKG1hdGNoWzFdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNlY3Rpb24gPSB1bnNhZmUobWF0Y2hbMV0pXG4gICAgICBpZiAoc2VjdGlvbiA9PT0gJ19fcHJvdG9fXycpIHtcbiAgICAgICAgLy8gbm90IGFsbG93ZWRcbiAgICAgICAgLy8ga2VlcCBwYXJzaW5nIHRoZSBzZWN0aW9uLCBidXQgZG9uJ3QgYXR0YWNoIGl0LlxuICAgICAgICBwID0gT2JqZWN0LmNyZWF0ZShudWxsKVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgcCA9IG91dFtzZWN0aW9uXSA9IG91dFtzZWN0aW9uXSB8fCBPYmplY3QuY3JlYXRlKG51bGwpXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCBrZXlSYXcgPSB1bnNhZmUobWF0Y2hbMl0pXG4gICAgY29uc3QgaXNBcnJheSA9IGtleVJhdy5sZW5ndGggPiAyICYmIGtleVJhdy5zbGljZSgtMikgPT09ICdbXSdcbiAgICBjb25zdCBrZXkgPSBpc0FycmF5ID8ga2V5UmF3LnNsaWNlKDAsIC0yKSA6IGtleVJhd1xuICAgIGlmIChrZXkgPT09ICdfX3Byb3RvX18nKVxuICAgICAgY29udGludWVcbiAgICBjb25zdCB2YWx1ZVJhdyA9IG1hdGNoWzNdID8gdW5zYWZlKG1hdGNoWzRdKSA6IHRydWVcbiAgICBjb25zdCB2YWx1ZSA9IHZhbHVlUmF3ID09PSAndHJ1ZScgfHxcbiAgICAgIHZhbHVlUmF3ID09PSAnZmFsc2UnIHx8XG4gICAgICB2YWx1ZVJhdyA9PT0gJ251bGwnID8gSlNPTi5wYXJzZSh2YWx1ZVJhdylcbiAgICAgIDogdmFsdWVSYXdcblxuICAgIC8vIENvbnZlcnQga2V5cyB3aXRoICdbXScgc3VmZml4IHRvIGFuIGFycmF5XG4gICAgaWYgKGlzQXJyYXkpIHtcbiAgICAgIGlmICghaGFzT3duUHJvcGVydHkuY2FsbChwLCBrZXkpKVxuICAgICAgICBwW2tleV0gPSBbXVxuICAgICAgZWxzZSBpZiAoIUFycmF5LmlzQXJyYXkocFtrZXldKSlcbiAgICAgICAgcFtrZXldID0gW3Bba2V5XV1cbiAgICB9XG5cbiAgICAvLyBzYWZlZ3VhcmQgYWdhaW5zdCByZXNldHRpbmcgYSBwcmV2aW91c2x5IGRlZmluZWRcbiAgICAvLyBhcnJheSBieSBhY2NpZGVudGFsbHkgZm9yZ2V0dGluZyB0aGUgYnJhY2tldHNcbiAgICBpZiAoQXJyYXkuaXNBcnJheShwW2tleV0pKVxuICAgICAgcFtrZXldLnB1c2godmFsdWUpXG4gICAgZWxzZVxuICAgICAgcFtrZXldID0gdmFsdWVcbiAgfVxuXG4gIC8vIHthOnt5OjF9LFwiYS5iXCI6e3g6Mn19IC0tPiB7YTp7eToxLGI6e3g6Mn19fVxuICAvLyB1c2UgYSBmaWx0ZXIgdG8gcmV0dXJuIHRoZSBrZXlzIHRoYXQgaGF2ZSB0byBiZSBkZWxldGVkLlxuICBjb25zdCByZW1vdmUgPSBbXVxuICBmb3IgKGNvbnN0IGsgb2YgT2JqZWN0LmtleXMob3V0KSkge1xuICAgIGlmICghaGFzT3duUHJvcGVydHkuY2FsbChvdXQsIGspIHx8XG4gICAgICAgIHR5cGVvZiBvdXRba10gIT09ICdvYmplY3QnIHx8XG4gICAgICAgIEFycmF5LmlzQXJyYXkob3V0W2tdKSlcbiAgICAgIGNvbnRpbnVlXG5cbiAgICAvLyBzZWUgaWYgdGhlIHBhcmVudCBzZWN0aW9uIGlzIGFsc28gYW4gb2JqZWN0LlxuICAgIC8vIGlmIHNvLCBhZGQgaXQgdG8gdGhhdCwgYW5kIG1hcmsgdGhpcyBvbmUgZm9yIGRlbGV0aW9uXG4gICAgY29uc3QgcGFydHMgPSBkb3RTcGxpdChrKVxuICAgIGxldCBwID0gb3V0XG4gICAgY29uc3QgbCA9IHBhcnRzLnBvcCgpXG4gICAgY29uc3QgbmwgPSBsLnJlcGxhY2UoL1xcXFxcXC4vZywgJy4nKVxuICAgIGZvciAoY29uc3QgcGFydCBvZiBwYXJ0cykge1xuICAgICAgaWYgKHBhcnQgPT09ICdfX3Byb3RvX18nKVxuICAgICAgICBjb250aW51ZVxuICAgICAgaWYgKCFoYXNPd25Qcm9wZXJ0eS5jYWxsKHAsIHBhcnQpIHx8IHR5cGVvZiBwW3BhcnRdICE9PSAnb2JqZWN0JylcbiAgICAgICAgcFtwYXJ0XSA9IE9iamVjdC5jcmVhdGUobnVsbClcbiAgICAgIHAgPSBwW3BhcnRdXG4gICAgfVxuICAgIGlmIChwID09PSBvdXQgJiYgbmwgPT09IGwpXG4gICAgICBjb250aW51ZVxuXG4gICAgcFtubF0gPSBvdXRba11cbiAgICByZW1vdmUucHVzaChrKVxuICB9XG4gIGZvciAoY29uc3QgZGVsIG9mIHJlbW92ZSlcbiAgICBkZWxldGUgb3V0W2RlbF1cblxuICByZXR1cm4gb3V0XG59XG5cbmNvbnN0IGlzUXVvdGVkID0gdmFsID0+XG4gICh2YWwuY2hhckF0KDApID09PSAnXCInICYmIHZhbC5zbGljZSgtMSkgPT09ICdcIicpIHx8XG4gICAgKHZhbC5jaGFyQXQoMCkgPT09IFwiJ1wiICYmIHZhbC5zbGljZSgtMSkgPT09IFwiJ1wiKVxuXG5jb25zdCBzYWZlID0gdmFsID0+XG4gICh0eXBlb2YgdmFsICE9PSAnc3RyaW5nJyB8fFxuICAgIHZhbC5tYXRjaCgvWz1cXHJcXG5dLykgfHxcbiAgICB2YWwubWF0Y2goL15cXFsvKSB8fFxuICAgICh2YWwubGVuZ3RoID4gMSAmJlxuICAgICBpc1F1b3RlZCh2YWwpKSB8fFxuICAgIHZhbCAhPT0gdmFsLnRyaW0oKSlcbiAgICA/IEpTT04uc3RyaW5naWZ5KHZhbClcbiAgICA6IHZhbC5yZXBsYWNlKC87L2csICdcXFxcOycpLnJlcGxhY2UoLyMvZywgJ1xcXFwjJylcblxuY29uc3QgdW5zYWZlID0gKHZhbCwgZG9VbmVzYykgPT4ge1xuICB2YWwgPSAodmFsIHx8ICcnKS50cmltKClcbiAgaWYgKGlzUXVvdGVkKHZhbCkpIHtcbiAgICAvLyByZW1vdmUgdGhlIHNpbmdsZSBxdW90ZXMgYmVmb3JlIGNhbGxpbmcgSlNPTi5wYXJzZVxuICAgIGlmICh2YWwuY2hhckF0KDApID09PSBcIidcIilcbiAgICAgIHZhbCA9IHZhbC5zdWJzdHIoMSwgdmFsLmxlbmd0aCAtIDIpXG5cbiAgICB0cnkge1xuICAgICAgdmFsID0gSlNPTi5wYXJzZSh2YWwpXG4gICAgfSBjYXRjaCAoXykge31cbiAgfSBlbHNlIHtcbiAgICAvLyB3YWxrIHRoZSB2YWwgdG8gZmluZCB0aGUgZmlyc3Qgbm90LWVzY2FwZWQgOyBjaGFyYWN0ZXJcbiAgICBsZXQgZXNjID0gZmFsc2VcbiAgICBsZXQgdW5lc2MgPSAnJ1xuICAgIGZvciAobGV0IGkgPSAwLCBsID0gdmFsLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgY29uc3QgYyA9IHZhbC5jaGFyQXQoaSlcbiAgICAgIGlmIChlc2MpIHtcbiAgICAgICAgaWYgKCdcXFxcOyMnLmluZGV4T2YoYykgIT09IC0xKVxuICAgICAgICAgIHVuZXNjICs9IGNcbiAgICAgICAgZWxzZVxuICAgICAgICAgIHVuZXNjICs9ICdcXFxcJyArIGNcblxuICAgICAgICBlc2MgPSBmYWxzZVxuICAgICAgfSBlbHNlIGlmICgnOyMnLmluZGV4T2YoYykgIT09IC0xKVxuICAgICAgICBicmVha1xuICAgICAgZWxzZSBpZiAoYyA9PT0gJ1xcXFwnKVxuICAgICAgICBlc2MgPSB0cnVlXG4gICAgICBlbHNlXG4gICAgICAgIHVuZXNjICs9IGNcbiAgICB9XG4gICAgaWYgKGVzYylcbiAgICAgIHVuZXNjICs9ICdcXFxcJ1xuXG4gICAgcmV0dXJuIHVuZXNjLnRyaW0oKVxuICB9XG4gIHJldHVybiB2YWxcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIHBhcnNlOiBkZWNvZGUsXG4gIGRlY29kZSxcbiAgc3RyaW5naWZ5OiBlbmNvZGUsXG4gIGVuY29kZSxcbiAgc2FmZSxcbiAgdW5zYWZlLFxufVxuIiwgIi8qXG4gKiBmb3JtYXRzLmpzOiBEZWZhdWx0IGZvcm1hdHMgc3VwcG9ydGVkIGJ5IG5jb25mXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGluaSA9IHJlcXVpcmUoJ2luaScpO1xuXG52YXIgZm9ybWF0cyA9IGV4cG9ydHM7XG5cbi8vXG4vLyAjIyMgQGpzb25cbi8vIFN0YW5kYXJkIEpTT04gZm9ybWF0IHdoaWNoIHByZXR0eSBwcmludHMgYC5zdHJpbmdpZnkoKWAuXG4vL1xuZm9ybWF0cy5qc29uID0ge1xuICBzdHJpbmdpZnk6IGZ1bmN0aW9uIChvYmosIHJlcGxhY2VyLCBzcGFjaW5nKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG9iaiwgcmVwbGFjZXIgfHwgbnVsbCwgc3BhY2luZyB8fCAyKVxuICB9LFxuICBwYXJzZTogSlNPTi5wYXJzZVxufTtcblxuLy9cbi8vICMjIyBAaW5pXG4vLyBTdGFuZGFyZCBJTkkgZm9ybWF0IHN1cHBsaWVkIGZyb20gdGhlIGBpbmlgIG1vZHVsZVxuLy8gaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9JTklfZmlsZVxuLy9cbmZvcm1hdHMuaW5pID0gaW5pO1xuIiwgIi8qXG4gKiBtZW1vcnkuanM6IFNpbXBsZSBtZW1vcnkgc3RvcmFnZSBlbmdpbmUgZm9yIG5jb25mIGNvbmZpZ3VyYXRpb24ocylcbiAqXG4gKiAoQykgMjAxMSwgQ2hhcmxpZSBSb2JiaW5zIGFuZCB0aGUgQ29udHJpYnV0b3JzLlxuICpcbiAqL1xuXG52YXIgY29tbW9uID0gcmVxdWlyZSgnLi4vY29tbW9uJyk7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gTWVtb3J5IChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGlzIGluc3RhbmNlXG4vLyBDb25zdHJ1Y3RvciBmdW5jdGlvbiBmb3IgdGhlIE1lbW9yeSBuY29uZiBzdG9yZSB3aGljaCBtYWludGFpbnNcbi8vIGEgbmVzdGVkIGpzb24gc3RydWN0dXJlIGJhc2VkIG9uIGtleSBkZWxpbWl0ZXJzIGA6YC5cbi8vXG4vLyBlLmcuIGBteTpuZXN0ZWQ6a2V5YCA9PT4gYHsgbXk6IHsgbmVzdGVkOiB7IGtleTogfSB9IH1gXG4vL1xudmFyIE1lbW9yeSA9IGV4cG9ydHMuTWVtb3J5ID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgb3B0aW9ucyAgICAgICA9IG9wdGlvbnMgfHwge307XG4gIHRoaXMudHlwZSAgICAgPSAnbWVtb3J5JztcbiAgdGhpcy5zdG9yZSAgICA9IHt9O1xuICB0aGlzLm10aW1lcyAgID0ge307XG4gIHRoaXMucmVhZE9ubHkgPSBmYWxzZTtcbiAgdGhpcy5sb2FkRnJvbSA9IG9wdGlvbnMubG9hZEZyb20gfHwgbnVsbDtcbiAgdGhpcy5sb2dpY2FsU2VwYXJhdG9yID0gb3B0aW9ucy5sb2dpY2FsU2VwYXJhdG9yIHx8ICc6JztcbiAgdGhpcy5wYXJzZVZhbHVlcyA9IG9wdGlvbnMucGFyc2VWYWx1ZXMgfHwgZmFsc2U7XG5cbiAgaWYgKHRoaXMubG9hZEZyb20pIHtcbiAgICB0aGlzLnN0b3JlID0gY29tbW9uLmxvYWRGaWxlc1N5bmModGhpcy5sb2FkRnJvbSk7XG4gIH1cbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gZ2V0IChrZXkpXG4vLyAjIyMjIEBrZXkge3N0cmluZ30gS2V5IHRvIHJldHJpZXZlIGZvciB0aGlzIGluc3RhbmNlLlxuLy8gUmV0cmlldmVzIHRoZSB2YWx1ZSBmb3IgdGhlIHNwZWNpZmllZCBrZXkgKGlmIGFueSkuXG4vL1xuTWVtb3J5LnByb3RvdHlwZS5nZXQgPSBmdW5jdGlvbiAoa2V5KSB7XG4gIHZhciB0YXJnZXQgPSB0aGlzLnN0b3JlLFxuICAgICAgcGF0aCAgID0gY29tbW9uLnBhdGgoa2V5LCB0aGlzLmxvZ2ljYWxTZXBhcmF0b3IpO1xuXG4gIC8vXG4gIC8vIFNjb3BlIGludG8gdGhlIG9iamVjdCB0byBnZXQgdGhlIGFwcHJvcHJpYXRlIG5lc3RlZCBjb250ZXh0XG4gIC8vXG4gIHdoaWxlIChwYXRoLmxlbmd0aCA+IDApIHtcbiAgICBrZXkgPSBwYXRoLnNoaWZ0KCk7XG4gICAgaWYgKHRhcmdldCAmJiB0eXBlb2YgdGFyZ2V0ICE9PSAnc3RyaW5nJyAmJiBPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbCh0YXJnZXQsIGtleSkpIHtcbiAgICAgIHRhcmdldCA9IHRhcmdldFtrZXldO1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4gdGFyZ2V0O1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBzZXQgKGtleSwgdmFsdWUpXG4vLyAjIyMjIEBrZXkge3N0cmluZ30gS2V5IHRvIHNldCBpbiB0aGlzIGluc3RhbmNlXG4vLyAjIyMjIEB2YWx1ZSB7bGl0ZXJhbHxPYmplY3R9IFZhbHVlIGZvciB0aGUgc3BlY2lmaWVkIGtleVxuLy8gU2V0cyB0aGUgYHZhbHVlYCBmb3IgdGhlIHNwZWNpZmllZCBga2V5YCBpbiB0aGlzIGluc3RhbmNlLlxuLy9cbk1lbW9yeS5wcm90b3R5cGUuc2V0ID0gZnVuY3Rpb24gKGtleSwgdmFsdWUpIHtcbiAgaWYgKHRoaXMucmVhZE9ubHkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICB2YXIgdGFyZ2V0ID0gdGhpcy5zdG9yZSxcbiAgICAgIHBhdGggICA9IGNvbW1vbi5wYXRoKGtleSwgdGhpcy5sb2dpY2FsU2VwYXJhdG9yKTtcblxuICBpZiAocGF0aC5sZW5ndGggPT09IDApIHtcbiAgICAvL1xuICAgIC8vIFJvb3QgbXVzdCBiZSBhbiBvYmplY3RcbiAgICAvL1xuICAgIGlmICghdmFsdWUgfHwgdHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgIHRoaXMuc3RvcmUgPSB2YWx1ZTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8vXG4gIC8vIFVwZGF0ZSB0aGUgYG10aW1lYCAobW9kaWZpZWQgdGltZSkgb2YgdGhlIGtleVxuICAvL1xuICB0aGlzLm10aW1lc1trZXldID0gRGF0ZS5ub3coKTtcblxuICAvL1xuICAvLyBTY29wZSBpbnRvIHRoZSBvYmplY3QgdG8gZ2V0IHRoZSBhcHByb3ByaWF0ZSBuZXN0ZWQgY29udGV4dFxuICAvL1xuICB3aGlsZSAocGF0aC5sZW5ndGggPiAxKSB7XG4gICAga2V5ID0gcGF0aC5zaGlmdCgpO1xuICAgIGlmICghdGFyZ2V0W2tleV0gfHwgdHlwZW9mIHRhcmdldFtrZXldICE9PSAnb2JqZWN0JyB8fCAhT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwodGFyZ2V0LCBrZXkpKSB7XG4gICAgICB0YXJnZXRba2V5XSA9IHt9O1xuICAgIH1cblxuICAgIHRhcmdldCA9IHRhcmdldFtrZXldO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBzcGVjaWZpZWQgdmFsdWUgaW4gdGhlIG5lc3RlZCBKU09OIHN0cnVjdHVyZVxuICBrZXkgPSBwYXRoLnNoaWZ0KCk7XG4gIGlmICh0aGlzLnBhcnNlVmFsdWVzKSB7XG4gICAgdmFsdWUgPSBjb21tb24ucGFyc2VWYWx1ZXMuY2FsbChjb21tb24sIHZhbHVlKTtcbiAgfVxuICB0YXJnZXRba2V5XSA9IHZhbHVlO1xuICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gY2xlYXIgKGtleSlcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gcmVtb3ZlIGZyb20gdGhpcyBpbnN0YW5jZVxuLy8gUmVtb3ZlcyB0aGUgdmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQgYGtleWAgZnJvbSB0aGlzIGluc3RhbmNlLlxuLy9cbk1lbW9yeS5wcm90b3R5cGUuY2xlYXIgPSBmdW5jdGlvbiAoa2V5KSB7XG4gIGlmICh0aGlzLnJlYWRPbmx5KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgdmFyIHRhcmdldCA9IHRoaXMuc3RvcmUsXG4gICAgICB2YWx1ZSAgPSB0YXJnZXQsXG4gICAgICBwYXRoICAgPSBjb21tb24ucGF0aChrZXksIHRoaXMubG9naWNhbFNlcGFyYXRvcik7XG5cbiAgLy9cbiAgLy8gUmVtb3ZlIHRoZSBrZXkgZnJvbSB0aGUgc2V0IG9mIGBtdGltZXNgIChtb2RpZmllZCB0aW1lcylcbiAgLy9cbiAgZGVsZXRlIHRoaXMubXRpbWVzW2tleV07XG5cbiAgLy9cbiAgLy8gU2NvcGUgaW50byB0aGUgb2JqZWN0IHRvIGdldCB0aGUgYXBwcm9wcmlhdGUgbmVzdGVkIGNvbnRleHRcbiAgLy9cbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBwYXRoLmxlbmd0aCAtIDE7IGkrKykge1xuICAgIGtleSA9IHBhdGhbaV07XG4gICAgdmFsdWUgPSB0YXJnZXRba2V5XTtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnZnVuY3Rpb24nICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgdGFyZ2V0ID0gdmFsdWU7XG4gIH1cblxuICAvLyBEZWxldGUgdGhlIGtleSBmcm9tIHRoZSBuZXN0ZWQgSlNPTiBzdHJ1Y3R1cmVcbiAga2V5ID0gcGF0aFtpXTtcbiAgZGVsZXRlIHRhcmdldFtrZXldO1xuICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbWVyZ2UgKGtleSwgdmFsdWUpXG4vLyAjIyMjIEBrZXkge3N0cmluZ30gS2V5IHRvIG1lcmdlIHRoZSB2YWx1ZSBpbnRvXG4vLyAjIyMjIEB2YWx1ZSB7bGl0ZXJhbHxPYmplY3R9IFZhbHVlIHRvIG1lcmdlIGludG8gdGhlIGtleVxuLy8gTWVyZ2VzIHRoZSBwcm9wZXJ0aWVzIGluIGB2YWx1ZWAgaW50byB0aGUgZXhpc3Rpbmcgb2JqZWN0IHZhbHVlXG4vLyBhdCBga2V5YC4gSWYgdGhlIGV4aXN0aW5nIHZhbHVlIGBrZXlgIGlzIG5vdCBhbiBPYmplY3QsIGl0IHdpbGwgYmVcbi8vIGNvbXBsZXRlbHkgb3ZlcndyaXR0ZW4uXG4vL1xuTWVtb3J5LnByb3RvdHlwZS5tZXJnZSA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gIGlmICh0aGlzLnJlYWRPbmx5KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy9cbiAgLy8gSWYgdGhlIGtleSBpcyBub3QgYW4gYE9iamVjdGAgb3IgaXMgYW4gYEFycmF5YCxcbiAgLy8gdGhlbiBzaW1wbHkgc2V0IGl0LiBNZXJnaW5nIGlzIGZvciBPYmplY3RzLlxuICAvL1xuICBpZiAodHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0JyB8fCBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgIHJldHVybiB0aGlzLnNldChrZXksIHZhbHVlKTtcbiAgfVxuXG4gIHZhciBzZWxmICAgID0gdGhpcyxcbiAgICAgIHRhcmdldCAgPSB0aGlzLnN0b3JlLFxuICAgICAgcGF0aCAgICA9IGNvbW1vbi5wYXRoKGtleSwgdGhpcy5sb2dpY2FsU2VwYXJhdG9yKSxcbiAgICAgIGZ1bGxLZXkgPSBrZXk7XG5cbiAgLy9cbiAgLy8gVXBkYXRlIHRoZSBgbXRpbWVgIChtb2RpZmllZCB0aW1lKSBvZiB0aGUga2V5XG4gIC8vXG4gIHRoaXMubXRpbWVzW2tleV0gPSBEYXRlLm5vdygpO1xuXG4gIC8vXG4gIC8vIFNjb3BlIGludG8gdGhlIG9iamVjdCB0byBnZXQgdGhlIGFwcHJvcHJpYXRlIG5lc3RlZCBjb250ZXh0XG4gIC8vXG4gIHdoaWxlIChwYXRoLmxlbmd0aCA+IDEpIHtcbiAgICBrZXkgPSBwYXRoLnNoaWZ0KCk7XG4gICAgaWYgKCF0YXJnZXRba2V5XSkge1xuICAgICAgdGFyZ2V0W2tleV0gPSB7fTtcbiAgICB9XG5cbiAgICB0YXJnZXQgPSB0YXJnZXRba2V5XTtcbiAgfVxuXG4gIC8vIFNldCB0aGUgc3BlY2lmaWVkIHZhbHVlIGluIHRoZSBuZXN0ZWQgSlNPTiBzdHJ1Y3R1cmVcbiAga2V5ID0gcGF0aC5zaGlmdCgpO1xuXG4gIC8vXG4gIC8vIElmIHRoZSBjdXJyZW50IHZhbHVlIGF0IHRoZSBrZXkgdGFyZ2V0IGlzIG5vdCBhbiBgT2JqZWN0YCxcbiAgLy8gb3IgaXMgYW4gYEFycmF5YCB0aGVuIHNpbXBseSBvdmVycmlkZSBpdCBiZWNhdXNlIHRoZSBuZXcgdmFsdWVcbiAgLy8gaXMgYW4gT2JqZWN0LlxuICAvL1xuICBpZiAodHlwZW9mIHRhcmdldFtrZXldICE9PSAnb2JqZWN0JyB8fCBBcnJheS5pc0FycmF5KHRhcmdldFtrZXldKSkge1xuICAgIHRhcmdldFtrZXldID0gdmFsdWU7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmtleXModmFsdWUpLmV2ZXJ5KGZ1bmN0aW9uIChuZXN0ZWQpIHtcbiAgICByZXR1cm4gc2VsZi5tZXJnZShjb21tb24ua2V5ZWQoc2VsZi5sb2dpY2FsU2VwYXJhdG9yLCBmdWxsS2V5LCBuZXN0ZWQpLCB2YWx1ZVtuZXN0ZWRdKTtcbiAgfSk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHJlc2V0IChjYWxsYmFjaylcbi8vIENsZWFycyBhbGwga2V5cyBhc3NvY2lhdGVkIHdpdGggdGhpcyBpbnN0YW5jZS5cbi8vXG5NZW1vcnkucHJvdG90eXBlLnJlc2V0ID0gZnVuY3Rpb24gKCkge1xuICBpZiAodGhpcy5yZWFkT25seSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHRoaXMubXRpbWVzID0ge307XG4gIHRoaXMuc3RvcmUgID0ge307XG4gIHJldHVybiB0cnVlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luY1xuLy8gUmV0dXJucyB0aGUgc3RvcmUgbWFuYWdlZCBieSB0aGlzIGluc3RhbmNlXG4vL1xuTWVtb3J5LnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIHRoaXMuc3RvcmUgfHwge307XG59O1xuIiwgIi8qXG4gKiB1dGlscy5qczogVXRpbGl0eSBmdW5jdGlvbnMgZm9yIHRoZSBuY29uZiBtb2R1bGUuXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGZzID0gcmVxdWlyZSgnZnMnKSxcbiAgICBhc3luYyA9IHJlcXVpcmUoJ2FzeW5jJyksXG4gICAgZm9ybWF0cyA9IHJlcXVpcmUoJy4vZm9ybWF0cycpLFxuICAgIE1lbW9yeSA9IHJlcXVpcmUoJy4vc3RvcmVzL21lbW9yeScpLk1lbW9yeTtcblxudmFyIGNvbW1vbiA9IGV4cG9ydHM7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gcGF0aCAoa2V5KVxuLy8gIyMjIyBAa2V5IHtzdHJpbmd9IFRoZSAnOicgZGVsaW1pdGVkIGtleSB0byBzcGxpdFxuLy8gUmV0dXJucyBhIGZ1bGx5LXF1YWxpZmllZCBwYXRoIHRvIGEgbmVzdGVkIG5jb25mIGtleS5cbi8vIElmIGdpdmVuIG51bGwgb3IgdW5kZWZpbmVkIGl0IHNob3VsZCByZXR1cm4gYW4gZW1wdHkgcGF0aC5cbi8vICcnIHNob3VsZCBzdGlsbCBiZSByZXNwZWN0ZWQgYXMgYSBwYXRoLlxuLy9cbmNvbW1vbi5wYXRoID0gZnVuY3Rpb24gKGtleSwgc2VwYXJhdG9yKSB7XG4gIHNlcGFyYXRvciA9IHNlcGFyYXRvciB8fCAnOic7XG4gIHJldHVybiBrZXkgPT0gbnVsbCA/IFtdIDoga2V5LnNwbGl0KHNlcGFyYXRvcik7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGtleSAoYXJndW1lbnRzKVxuLy8gUmV0dXJucyBhIGA6YCBqb2luZWQgc3RyaW5nIGZyb20gdGhlIGBhcmd1bWVudHNgLlxuLy9cbmNvbW1vbi5rZXkgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpLmpvaW4oJzonKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24ga2V5IChhcmd1bWVudHMpXG4vLyBSZXR1cm5zIGEgam9pbmVkIHN0cmluZyBmcm9tIHRoZSBgYXJndW1lbnRzYCxcbi8vIGZpcnN0IGFyZ3VtZW50IGlzIHRoZSBqb2luIGRlbGltaXRlci5cbi8vXG5jb21tb24ua2V5ZWQgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsIDEpLmpvaW4oYXJndW1lbnRzWzBdKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbG9hZEZpbGVzIChmaWxlcywgY2FsbGJhY2spXG4vLyAjIyMjIEBmaWxlcyB7T2JqZWN0fEFycmF5fSBMaXN0IG9mIGZpbGVzIChvciBzZXR0aW5ncyBvYmplY3QpIHRvIGxvYWQuXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259IENvbnRpbnVhdGlvbiB0byByZXNwb25kIHRvIHdoZW4gY29tcGxldGUuXG4vLyBMb2FkcyBhbGwgdGhlIGRhdGEgaW4gdGhlIHNwZWNpZmllZCBgZmlsZXNgLlxuLy9cbmNvbW1vbi5sb2FkRmlsZXMgPSBmdW5jdGlvbiAoZmlsZXMsIGNhbGxiYWNrKSB7XG4gIGlmICghZmlsZXMpIHtcbiAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwge30pO1xuICB9XG5cbiAgdmFyIG9wdGlvbnMgPSBBcnJheS5pc0FycmF5KGZpbGVzKSA/IHsgZmlsZXM6IGZpbGVzIH0gOiBmaWxlcztcblxuICAvL1xuICAvLyBTZXQgdGhlIGRlZmF1bHQgSlNPTiBmb3JtYXQgaWYgbm90IGFscmVhZHlcbiAgLy8gc3BlY2lmaWVkXG4gIC8vXG4gIG9wdGlvbnMuZm9ybWF0ID0gb3B0aW9ucy5mb3JtYXQgfHwgZm9ybWF0cy5qc29uO1xuXG4gIGZ1bmN0aW9uIHBhcnNlRmlsZSAoZmlsZSwgbmV4dCkge1xuICAgIGZzLnJlYWRGaWxlKGZpbGUsIGZ1bmN0aW9uIChlcnIsIGRhdGEpIHtcbiAgICAgIHJldHVybiAhZXJyXG4gICAgICAgID8gbmV4dChudWxsLCBvcHRpb25zLmZvcm1hdC5wYXJzZShkYXRhLnRvU3RyaW5nKCkpKVxuICAgICAgICA6IG5leHQoZXJyKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jLm1hcChvcHRpb25zLmZpbGVzLCBwYXJzZUZpbGUsIGZ1bmN0aW9uIChlcnIsIG9ianMpIHtcbiAgICByZXR1cm4gZXJyID8gY2FsbGJhY2soZXJyKSA6IGNhbGxiYWNrKG51bGwsIGNvbW1vbi5tZXJnZShvYmpzKSk7XG4gIH0pO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkRmlsZXNTeW5jIChmaWxlcylcbi8vICMjIyMgQGZpbGVzIHtPYmplY3R8QXJyYXl9IExpc3Qgb2YgZmlsZXMgKG9yIHNldHRpbmdzIG9iamVjdCkgdG8gbG9hZC5cbi8vIExvYWRzIGFsbCB0aGUgZGF0YSBpbiB0aGUgc3BlY2lmaWVkIGBmaWxlc2Agc3luY2hyb25vdXNseS5cbi8vXG5jb21tb24ubG9hZEZpbGVzU3luYyA9IGZ1bmN0aW9uIChmaWxlcykge1xuICBpZiAoIWZpbGVzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLy9cbiAgLy8gU2V0IHRoZSBkZWZhdWx0IEpTT04gZm9ybWF0IGlmIG5vdCBhbHJlYWR5XG4gIC8vIHNwZWNpZmllZFxuICAvL1xuICB2YXIgb3B0aW9ucyA9IEFycmF5LmlzQXJyYXkoZmlsZXMpID8geyBmaWxlczogZmlsZXMgfSA6IGZpbGVzO1xuICBvcHRpb25zLmZvcm1hdCA9IG9wdGlvbnMuZm9ybWF0IHx8IGZvcm1hdHMuanNvbjtcblxuICByZXR1cm4gY29tbW9uLm1lcmdlKG9wdGlvbnMuZmlsZXMubWFwKGZ1bmN0aW9uIChmaWxlKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuZm9ybWF0LnBhcnNlKGZzLnJlYWRGaWxlU3luYyhmaWxlLCAndXRmOCcpKTtcbiAgfSkpO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBtZXJnZSAob2Jqcylcbi8vICMjIyMgQG9ianMge0FycmF5fSBBcnJheSBvZiBvYmplY3QgbGl0ZXJhbHMgdG8gbWVyZ2Vcbi8vIE1lcmdlcyB0aGUgc3BlY2lmaWVkIGBvYmpzYCB1c2luZyBhIHRlbXBvcmFyeSBpbnN0YW5jZVxuLy8gb2YgYHN0b3Jlcy5NZW1vcnlgLlxuLy9cbmNvbW1vbi5tZXJnZSA9IGZ1bmN0aW9uIChvYmpzKSB7XG4gIHZhciBzdG9yZSA9IG5ldyBNZW1vcnkoKTtcblxuICBvYmpzLmZvckVhY2goZnVuY3Rpb24gKG9iaikge1xuICAgIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICBzdG9yZS5tZXJnZShrZXksIG9ialtrZXldKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmV0dXJuIHN0b3JlLnN0b3JlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBjYXBpdGFsaXplIChzdHIpXG4vLyAjIyMjIEBzdHIge3N0cmluZ30gU3RyaW5nIHRvIGNhcGl0YWxpemVcbi8vIENhcGl0YWxpemVzIHRoZSBzcGVjaWZpZWQgYHN0cmAuXG4vL1xuY29tbW9uLmNhcGl0YWxpemUgPSBmdW5jdGlvbiAoc3RyKSB7XG4gIHJldHVybiBzdHIgJiYgc3RyWzBdLnRvVXBwZXJDYXNlKCkgKyBzdHIuc2xpY2UoMSk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHBhcnNlVmFsdWVzIChhbnkpXG4vLyAjIyMjIEBhbnkge3N0cmluZ30gU3RyaW5nIHRvIHBhcnNlIGFzIG5hdGl2ZSBkYXRhLXR5cGUgb3IgcmV0dXJuIGFzIGlzXG4vLyB0cnkgdG8gcGFyc2UgYGFueWAgYXMgYSBuYXRpdmUgZGF0YS10eXBlXG4vL1xuY29tbW9uLnBhcnNlVmFsdWVzID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gIHZhciB2YWwgPSB2YWx1ZTtcbiAgXG4gIHRyeSB7XG4gICAgdmFsID0gSlNPTi5wYXJzZSh2YWx1ZSk7XG4gIH0gY2F0Y2ggKGlnbm9yZSkge1xuICAgIC8vIENoZWNrIGZvciBhbnkgb3RoZXIgd2VsbC1rbm93biBzdHJpbmdzIHRoYXQgc2hvdWxkIGJlIFwicGFyc2VkXCJcbiAgICBpZiAodmFsdWUgPT09ICd1bmRlZmluZWQnKXtcbiAgICAgIHZhbCA9IHZvaWQgMDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdmFsO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiB0cmFuc2Zvcm0obWFwLCBmbilcbi8vICMjIyMgQG1hcCB7b2JqZWN0fSBPYmplY3Qgb2Yga2V5L3ZhbHVlIHBhaXJzIHRvIGFwcGx5IGBmbmAgdG9cbi8vICMjIyMgQGZuIHtmdW5jdGlvbn0gVHJhbnNmb3JtYXRpb24gZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gZXZlcnkga2V5L3ZhbHVlIHBhaXJcbi8vIHRyYW5zZm9ybSBhIHNldCBvZiBrZXkvdmFsdWUgcGFpcnMgYW5kIHJldHVybiB0aGUgdHJhbnNmb3JtZWQgcmVzdWx0XG5jb21tb24udHJhbnNmb3JtID0gZnVuY3Rpb24obWFwLCBmbikge1xuICB2YXIgcGFpcnMgPSBPYmplY3Qua2V5cyhtYXApLm1hcChmdW5jdGlvbihrZXkpIHtcbiAgICB2YXIgb2JqID0geyBrZXk6IGtleSwgdmFsdWU6IG1hcFtrZXldfTtcbiAgICB2YXIgcmVzdWx0ID0gZm4uY2FsbChudWxsLCBvYmopO1xuXG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0gZWxzZSBpZiAocmVzdWx0LmtleSkge1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICB2YXIgZXJyb3IgPSBuZXcgRXJyb3IoJ1RyYW5zZm9ybSBmdW5jdGlvbiBwYXNzZWQgdG8gc3RvcmUgcmV0dXJuZWQgYW4gaW52YWxpZCBmb3JtYXQ6ICcgKyBKU09OLnN0cmluZ2lmeShyZXN1bHQpKTtcbiAgICBlcnJvci5uYW1lID0gJ1J1bnRpbWVFcnJvcic7XG4gICAgdGhyb3cgZXJyb3I7XG4gIH0pO1xuXG5cbiAgcmV0dXJuIHBhaXJzXG4gICAgLmZpbHRlcihmdW5jdGlvbihwYWlyKSB7XG4gICAgICByZXR1cm4gcGFpciAhPT0gbnVsbDtcbiAgICB9KVxuICAgIC5yZWR1Y2UoZnVuY3Rpb24oYWNjdW11bGF0b3IsIHBhaXIpIHtcbiAgICAgIGFjY3VtdWxhdG9yW3BhaXIua2V5XSA9IHBhaXIudmFsdWU7XG4gICAgICByZXR1cm4gYWNjdW11bGF0b3I7XG4gICAgfSwge30pO1xufVxuIiwgIi8qXG4gKiBwcm92aWRlci5qczogQWJzdHJhY3Rpb24gcHJvdmlkaW5nIGFuIGludGVyZmFjZSBpbnRvIHBsdWdnYWJsZSBjb25maWd1cmF0aW9uIHN0b3JhZ2UuXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGFzeW5jID0gcmVxdWlyZSgnYXN5bmMnKSxcbiAgICBjb21tb24gPSByZXF1aXJlKCcuL2NvbW1vbicpO1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIFByb3ZpZGVyIChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGlzIGluc3RhbmNlLlxuLy8gQ29uc3RydWN0b3IgZnVuY3Rpb24gZm9yIHRoZSBQcm92aWRlciBvYmplY3QgcmVzcG9uc2libGVcbi8vIGZvciBleHBvc2luZyB0aGUgcGx1Z2dhYmxlIHN0b3JhZ2UgZmVhdHVyZXMgb2YgYG5jb25mYC5cbi8vXG52YXIgUHJvdmlkZXIgPSBleHBvcnRzLlByb3ZpZGVyID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgLy9cbiAgLy8gU2V0dXAgZGVmYXVsdCBvcHRpb25zIGZvciB3b3JraW5nIHdpdGggYHN0b3Jlc2AsXG4gIC8vIGBvdmVycmlkZXNgLCBgcHJvY2Vzcy5lbnZgIGFuZCBgcHJvY2Vzcy5hcmd2YC5cbiAgLy9cbiAgb3B0aW9ucyAgICAgICA9IG9wdGlvbnMgfHwge307XG4gIHRoaXMuc3RvcmVzICA9IHt9O1xuICB0aGlzLnNvdXJjZXMgPSBbXTtcbiAgdGhpcy5pbml0KG9wdGlvbnMpO1xufTtcblxuLy9cbi8vIERlZmluZSB3cmFwcGVyIGZ1bmN0aW9ucyBmb3IgdXNpbmcgYmFzaWMgc3RvcmVzXG4vLyBpbiB0aGlzIGluc3RhbmNlXG4vL1xuXG5bJ2FyZ3YnLCAnZW52J10uZm9yRWFjaChmdW5jdGlvbiAodHlwZSkge1xuICBQcm92aWRlci5wcm90b3R5cGVbdHlwZV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGFyZ3MgPSBbdHlwZV0uY29uY2F0KEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cykpO1xuICAgIHJldHVybiB0aGlzLmFkZC5hcHBseSh0aGlzLCBhcmdzKTtcbiAgfTtcbn0pO1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGZpbGUgKGtleSwgb3B0aW9ucylcbi8vICMjIyMgQGtleSB7c3RyaW5nfE9iamVjdH0gRnVsbHkgcXVhbGlmaWVkIG9wdGlvbnMsIG5hbWUgb2YgZmlsZSBzdG9yZSwgb3IgcGF0aC5cbi8vICMjIyMgQHBhdGgge3N0cmluZ3xPYmplY3R9ICoqT3B0aW9uYWwqKiBGdWxsIHF1YWxpZmllZCBvcHRpb25zLCBvciBwYXRoLlxuLy8gQWRkcyBhIG5ldyBgRmlsZWAgc3RvcmUgdG8gdGhpcyBpbnN0YW5jZS4gQWNjZXB0cyB0aGUgZm9sbG93aW5nIG9wdGlvbnNcbi8vXG4vLyAgICBuY29uZi5maWxlKHsgZmlsZTogJy5qaXRzdWNvbmYnLCBkaXI6IHByb2Nlc3MuZW52LkhPTUUsIHNlYXJjaDogdHJ1ZSB9KTtcbi8vICAgIG5jb25mLmZpbGUoJ3BhdGgvdG8vY29uZmlnL2ZpbGUnKTtcbi8vICAgIG5jb25mLmZpbGUoJ3VzZXJjb25maWcnLCAncGF0aC90by9jb25maWcvZmlsZScpO1xuLy8gICAgbmNvbmYuZmlsZSgndXNlcmNvbmZpZycsIHsgZmlsZTogJy5qaXRzdWNvbmYnLCBzZWFyY2g6IHRydWUgfSk7XG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLmZpbGUgPSBmdW5jdGlvbiAoa2V5LCBvcHRpb25zKSB7XG4gIGlmIChhcmd1bWVudHMubGVuZ3RoID09IDEpIHtcbiAgICBvcHRpb25zID0gdHlwZW9mIGtleSA9PT0gJ3N0cmluZycgPyB7IGZpbGU6IGtleSB9IDoga2V5O1xuICAgIGtleSA9ICdmaWxlJztcbiAgfVxuICBlbHNlIHtcbiAgICBvcHRpb25zID0gdHlwZW9mIG9wdGlvbnMgPT09ICdzdHJpbmcnXG4gICAgICA/IHsgZmlsZTogb3B0aW9ucyB9XG4gICAgICA6IG9wdGlvbnM7XG4gIH1cblxuICBvcHRpb25zLnR5cGUgPSAnZmlsZSc7XG4gIHJldHVybiB0aGlzLmFkZChrZXksIG9wdGlvbnMpO1xufTtcblxuLy9cbi8vIERlZmluZSB3cmFwcGVyIGZ1bmN0aW9ucyBmb3IgdXNpbmdcbi8vIG92ZXJyaWRlcyBhbmQgZGVmYXVsdHNcbi8vXG5bJ2RlZmF1bHRzJywgJ292ZXJyaWRlcyddLmZvckVhY2goZnVuY3Rpb24gKHR5cGUpIHtcbiAgUHJvdmlkZXIucHJvdG90eXBlW3R5cGVdID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgICBpZiAoIW9wdGlvbnMudHlwZSkge1xuICAgICAgb3B0aW9ucy50eXBlID0gJ2xpdGVyYWwnO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmFkZCh0eXBlLCBvcHRpb25zKTtcbiAgfTtcbn0pO1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHVzZSAobmFtZSwgb3B0aW9ucylcbi8vICMjIyMgQHR5cGUge3N0cmluZ30gVHlwZSBvZiB0aGUgbmNvbmYgc3RvcmUgdG8gdXNlLlxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGUgc3RvcmUgaW5zdGFuY2UuXG4vLyBBZGRzIChvciByZXBsYWNlcykgYSBuZXcgc3RvcmUgd2l0aCB0aGUgc3BlY2lmaWVkIGBuYW1lYFxuLy8gYW5kIGBvcHRpb25zYC4gSWYgYG9wdGlvbnMudHlwZWAgaXMgbm90IHNldCwgdGhlbiBgbmFtZWBcbi8vIHdpbGwgYmUgdXNlZCBpbnN0ZWFkOlxuLy9cbi8vICAgIHByb3ZpZGVyLnVzZSgnZmlsZScpO1xuLy8gICAgcHJvdmlkZXIudXNlKCdmaWxlJywgeyB0eXBlOiAnZmlsZScsIGZpbGVuYW1lOiAnL3BhdGgvdG8vdXNlcmNvbmYnIH0pXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLnVzZSA9IGZ1bmN0aW9uIChuYW1lLCBvcHRpb25zKSB7XG4gIG9wdGlvbnMgID0gb3B0aW9ucyAgICAgIHx8IHt9O1xuXG4gIGZ1bmN0aW9uIHNhbWVPcHRpb25zIChzdG9yZSkge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhvcHRpb25zKS5ldmVyeShmdW5jdGlvbiAoa2V5KSB7XG4gICAgICByZXR1cm4gb3B0aW9uc1trZXldID09PSBzdG9yZVtrZXldO1xuICAgIH0pO1xuICB9XG5cbiAgdmFyIHN0b3JlID0gdGhpcy5zdG9yZXNbbmFtZV0sXG4gICAgICB1cGRhdGUgPSBzdG9yZSAmJiAhc2FtZU9wdGlvbnMoc3RvcmUpO1xuXG4gIGlmICghc3RvcmUgfHwgdXBkYXRlKSB7XG4gICAgaWYgKHVwZGF0ZSkge1xuICAgICAgdGhpcy5yZW1vdmUobmFtZSk7XG4gICAgfVxuXG4gICAgdGhpcy5hZGQobmFtZSwgb3B0aW9ucyk7XG4gIH1cblxuICByZXR1cm4gdGhpcztcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gYWRkIChuYW1lLCBvcHRpb25zKVxuLy8gIyMjIyBAbmFtZSB7c3RyaW5nfSBOYW1lIG9mIHRoZSBzdG9yZSB0byBhZGQgdG8gdGhpcyBpbnN0YW5jZVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGUgc3RvcmUgdG8gY3JlYXRlXG4vLyBBZGRzIGEgbmV3IHN0b3JlIHdpdGggdGhlIHNwZWNpZmllZCBgbmFtZWAgYW5kIGBvcHRpb25zYC4gSWYgYG9wdGlvbnMudHlwZWBcbi8vIGlzIG5vdCBzZXQsIHRoZW4gYG5hbWVgIHdpbGwgYmUgdXNlZCBpbnN0ZWFkOlxuLy9cbi8vICAgIHByb3ZpZGVyLmFkZCgnbWVtb3J5Jyk7XG4vLyAgICBwcm92aWRlci5hZGQoJ3VzZXJjb25mJywgeyB0eXBlOiAnZmlsZScsIGZpbGVuYW1lOiAnL3BhdGgvdG8vdXNlcmNvbmYnIH0pXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLmFkZCA9IGZ1bmN0aW9uIChuYW1lLCBvcHRpb25zLCB1c2FnZSkge1xuICBvcHRpb25zICA9IG9wdGlvbnMgICAgICB8fCB7fTtcbiAgdmFyIHR5cGUgPSBvcHRpb25zLnR5cGUgfHwgbmFtZTtcblxuICBpZiAoIXJlcXVpcmUoJy4uL25jb25mJylbY29tbW9uLmNhcGl0YWxpemUodHlwZSldKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgYWRkIHN0b3JlIHdpdGggdW5rbm93biB0eXBlOiAnICsgdHlwZSk7XG4gIH1cblxuICB0aGlzLnN0b3Jlc1tuYW1lXSA9IHRoaXMuY3JlYXRlKHR5cGUsIG9wdGlvbnMsIHVzYWdlKTtcblxuICBpZiAodGhpcy5zdG9yZXNbbmFtZV0ubG9hZFN5bmMpIHtcbiAgICB0aGlzLnN0b3Jlc1tuYW1lXS5sb2FkU3luYygpO1xuICB9XG5cbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHJlbW92ZSAobmFtZSlcbi8vICMjIyMgQG5hbWUge3N0cmluZ30gTmFtZSBvZiB0aGUgc3RvcmUgdG8gcmVtb3ZlIGZyb20gdGhpcyBpbnN0YW5jZVxuLy8gUmVtb3ZlcyBhIHN0b3JlIHdpdGggdGhlIHNwZWNpZmllZCBgbmFtZWAgZnJvbSB0aGlzIGluc3RhbmNlLiBVc2Vyc1xuLy8gYXJlIGFsbG93ZWQgdG8gcGFzcyBpbiBhIHR5cGUgYXJndW1lbnQgKGUuZy4gYG1lbW9yeWApIGFzIG5hbWUgaWZcbi8vIHRoaXMgd2FzIHVzZWQgaW4gdGhlIGNhbGwgdG8gYC5hZGQoKWAuXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLnJlbW92ZSA9IGZ1bmN0aW9uIChuYW1lKSB7XG4gIGRlbGV0ZSB0aGlzLnN0b3Jlc1tuYW1lXTtcbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGNyZWF0ZSAodHlwZSwgb3B0aW9ucylcbi8vICMjIyMgQHR5cGUge3N0cmluZ30gVHlwZSBvZiB0aGUgbmNvbmYgc3RvcmUgdG8gdXNlLlxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGUgc3RvcmUgaW5zdGFuY2UuXG4vLyBDcmVhdGVzIGEgc3RvcmUgb2YgdGhlIHNwZWNpZmllZCBgdHlwZWAgdXNpbmcgdGhlXG4vLyBzcGVjaWZpZWQgYG9wdGlvbnNgLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5jcmVhdGUgPSBmdW5jdGlvbiAodHlwZSwgb3B0aW9ucywgdXNhZ2UpIHtcbiAgcmV0dXJuIG5ldyAocmVxdWlyZSgnLi4vbmNvbmYnKVtjb21tb24uY2FwaXRhbGl6ZSh0eXBlLnRvTG93ZXJDYXNlKCkpXSkob3B0aW9ucywgdXNhZ2UpO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBpbml0IChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIHRvIGluaXRpYWxpemUgdGhpcyBpbnN0YW5jZSB3aXRoLlxuLy8gSW5pdGlhbGl6ZXMgdGhpcyBpbnN0YW5jZSB3aXRoIGFkZGl0aW9uYWwgYHN0b3Jlc2Agb3IgYHNvdXJjZXNgIGluIHRoZVxuLy8gYG9wdGlvbnNgIHN1cHBsaWVkLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5pbml0ID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgdmFyIHNlbGYgPSB0aGlzO1xuXG4gIC8vXG4gIC8vIEFkZCBhbnkgc3RvcmVzIHBhc3NlZCBpbiB0aHJvdWdoIHRoZSBvcHRpb25zXG4gIC8vIHRvIHRoaXMgaW5zdGFuY2UuXG4gIC8vXG4gIGlmIChvcHRpb25zLnR5cGUpIHtcbiAgICB0aGlzLmFkZChvcHRpb25zLnR5cGUsIG9wdGlvbnMpO1xuICB9XG4gIGVsc2UgaWYgKG9wdGlvbnMuc3RvcmUpIHtcbiAgICB0aGlzLmFkZChvcHRpb25zLnN0b3JlLm5hbWUgfHwgb3B0aW9ucy5zdG9yZS50eXBlLCBvcHRpb25zLnN0b3JlKTtcbiAgfVxuICBlbHNlIGlmIChvcHRpb25zLnN0b3Jlcykge1xuICAgIE9iamVjdC5rZXlzKG9wdGlvbnMuc3RvcmVzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgICB2YXIgc3RvcmUgPSBvcHRpb25zLnN0b3Jlc1tuYW1lXTtcbiAgICAgIHNlbGYuYWRkKHN0b3JlLm5hbWUgfHwgbmFtZSB8fCBzdG9yZS50eXBlLCBzdG9yZSk7XG4gICAgfSk7XG4gIH1cblxuICAvL1xuICAvLyBBZGQgYW55IHJlYWQtb25seSBzb3VyY2VzIHRvIHRoaXMgaW5zdGFuY2VcbiAgLy9cbiAgaWYgKG9wdGlvbnMuc291cmNlKSB7XG4gICAgdGhpcy5zb3VyY2VzLnB1c2godGhpcy5jcmVhdGUob3B0aW9ucy5zb3VyY2UudHlwZSB8fCBvcHRpb25zLnNvdXJjZS5uYW1lLCBvcHRpb25zLnNvdXJjZSkpO1xuICB9XG4gIGVsc2UgaWYgKG9wdGlvbnMuc291cmNlcykge1xuICAgIE9iamVjdC5rZXlzKG9wdGlvbnMuc291cmNlcykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdmFyIHNvdXJjZSA9IG9wdGlvbnMuc291cmNlc1tuYW1lXTtcbiAgICAgIHNlbGYuc291cmNlcy5wdXNoKHNlbGYuY3JlYXRlKHNvdXJjZS50eXBlIHx8IHNvdXJjZS5uYW1lIHx8IG5hbWUsIHNvdXJjZSkpO1xuICAgIH0pO1xuICB9XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGdldCAoa2V5LCBjYWxsYmFjaylcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gcmV0cmlldmUgZm9yIHRoaXMgaW5zdGFuY2UuXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gUmV0cmlldmVzIHRoZSB2YWx1ZSBmb3IgdGhlIHNwZWNpZmllZCBrZXkgKGlmIGFueSkuXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uIChrZXksIGNhbGxiYWNrKSB7XG4gIGlmICh0eXBlb2Yga2V5ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgLy8gQWxsb3cgYSAqIGtleSBjYWxsIHRvIGJlIG1hZGVcbiAgICBjYWxsYmFjayA9IGtleTtcbiAgICBrZXkgPSBudWxsO1xuICB9XG5cbiAgLy9cbiAgLy8gSWYgdGhlcmUgaXMgbm8gY2FsbGJhY2sgd2UgY2FuIHNob3J0LWNpcmN1aXQgaW50byB0aGUgZGVmYXVsdFxuICAvLyBsb2dpYyBmb3IgdHJhdmVyc2luZyBzdG9yZXMuXG4gIC8vXG4gIGlmICghY2FsbGJhY2spIHtcbiAgICByZXR1cm4gdGhpcy5fZXhlY3V0ZSgnZ2V0JywgMSwga2V5LCBjYWxsYmFjayk7XG4gIH1cblxuICAvL1xuICAvLyBPdGhlcndpc2UgdGhlIGFzeW5jaHJvbm91cywgaGllcmFyY2hpY2FsIGBnZXRgIGlzXG4gIC8vIHNsaWdodGx5IG1vcmUgY29tcGxpY2F0ZWQgYmVjYXVzZSB3ZSBkbyBub3QgbmVlZCB0byB0cmF2ZXJzZVxuICAvLyB0aGUgZW50aXJlIHNldCBvZiBzdG9yZXMsIGJ1dCB1cCB1bnRpbCB0aGVyZSBpcyBhIGRlZmluZWQgdmFsdWUuXG4gIC8vXG4gIHZhciBjdXJyZW50ID0gMCxcbiAgICAgIG5hbWVzID0gT2JqZWN0LmtleXModGhpcy5zdG9yZXMpLFxuICAgICAgc2VsZiA9IHRoaXMsXG4gICAgICByZXNwb25zZSxcbiAgICAgIG1lcmdlT2JqcyA9IFtdO1xuXG4gIGFzeW5jLndoaWxzdChmdW5jdGlvbiAoY2IpIHtcbiAgICBjYihudWxsLCB0eXBlb2YgcmVzcG9uc2UgPT09ICd1bmRlZmluZWQnICYmIGN1cnJlbnQgPCBuYW1lcy5sZW5ndGgpO1xuICB9LCBmdW5jdGlvbiAobmV4dCkge1xuICAgIHZhciBzdG9yZSA9IHNlbGYuc3RvcmVzW25hbWVzW2N1cnJlbnRdXTtcbiAgICBjdXJyZW50Kys7XG5cbiAgICBpZiAoc3RvcmUuZ2V0Lmxlbmd0aCA+PSAyKSB7XG4gICAgICByZXR1cm4gc3RvcmUuZ2V0KGtleSwgZnVuY3Rpb24gKGVyciwgdmFsdWUpIHtcbiAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgIHJldHVybiBuZXh0KGVycik7XG4gICAgICAgIH1cblxuICAgICAgICByZXNwb25zZSA9IHZhbHVlO1xuXG4gICAgICAgIC8vIE1lcmdlIG9iamVjdHMgaWYgbmVjZXNzYXJ5XG4gICAgICAgIGlmIChyZXNwb25zZSAmJiB0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHJlc3BvbnNlKSkge1xuICAgICAgICAgIG1lcmdlT2Jqcy5wdXNoKHJlc3BvbnNlKTtcbiAgICAgICAgICByZXNwb25zZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIG5leHQoKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJlc3BvbnNlID0gc3RvcmUuZ2V0KGtleSk7XG5cbiAgICAvLyBNZXJnZSBvYmplY3RzIGlmIG5lY2Vzc2FyeVxuICAgIGlmIChyZXNwb25zZSAmJiB0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHJlc3BvbnNlKSkge1xuICAgICAgbWVyZ2VPYmpzLnB1c2gocmVzcG9uc2UpO1xuICAgICAgcmVzcG9uc2UgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgbmV4dCgpO1xuICB9LCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgaWYgKCFlcnIgJiYgbWVyZ2VPYmpzLmxlbmd0aCkge1xuICAgICAgcmVzcG9uc2UgPSBjb21tb24ubWVyZ2UobWVyZ2VPYmpzLnJldmVyc2UoKSk7XG4gICAgfVxuICAgIHJldHVybiBlcnIgPyBjYWxsYmFjayhlcnIpIDogY2FsbGJhY2sobnVsbCwgcmVzcG9uc2UpO1xuICB9KTtcbn07XG5cblxuLy9cbi8vICMjIyBmdW5jdGlvbiBhbnkgKGtleXMsIGNhbGxiYWNrKVxuLy8gIyMjIyBAa2V5cyB7YXJyYXl8c3RyaW5nLi4ufSBBcnJheSBvZiBrZXlzIHRvIHF1ZXJ5LCBvciBhIHZhcmlhYmxlIGxpc3Qgb2Ygc3RyaW5nc1xuLy8gIyMjIyBAY2FsbGJhY2sge2Z1bmN0aW9ufSAqKk9wdGlvbmFsKiogQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlbiBjb21wbGV0ZS5cbi8vIFJldHJpZXZlcyB0aGUgZmlyc3QgdHJ1dGh5IHZhbHVlIChpZiBhbnkpIGZvciB0aGUgc3BlY2lmaWVkIGxpc3Qgb2Yga2V5cy5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUuYW55ID0gZnVuY3Rpb24gKGtleXMsIGNhbGxiYWNrKSB7XG5cbiAgaWYgKCFBcnJheS5pc0FycmF5KGtleXMpKSB7XG4gICAga2V5cyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cyk7XG4gICAgaWYgKGtleXMubGVuZ3RoID4gMCAmJiB0eXBlb2Yga2V5c1trZXlzLmxlbmd0aCAtIDFdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjYWxsYmFjayA9IGtleXMucG9wKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNhbGxiYWNrID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvL1xuICAvLyBJZiB0aGVyZSBpcyBubyBjYWxsYmFjaywgdXNlIHRoZSBzaG9ydC1jaXJjdWl0ZWQgXCJnZXRcIlxuICAvLyBvbiBlYWNoIGtleSBpbiB0dXJuLlxuICAvL1xuICBpZiAoIWNhbGxiYWNrKSB7XG4gICAgdmFyIHZhbDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyArK2kpIHtcbiAgICAgIHZhbCA9IHRoaXMuX2V4ZWN1dGUoJ2dldCcsIDEsIGtleXNbaV0sIGNhbGxiYWNrKTtcbiAgICAgIGlmICh2YWwpIHtcbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB2YXIga2V5SW5kZXggPSAwLFxuICAgICAgcmVzdWx0LFxuICAgICAgc2VsZiA9IHRoaXM7XG4gIFxuICBhc3luYy53aGlsc3QoZnVuY3Rpb24oY2IpIHtcbiAgICBjYihudWxsLCAhcmVzdWx0ICYmIGtleUluZGV4IDwga2V5cy5sZW5ndGgpO1xuICB9LCBmdW5jdGlvbihuZXh0KSB7XG4gICAgdmFyIGtleSA9IGtleXNba2V5SW5kZXhdO1xuICAgIGtleUluZGV4Kys7XG5cbiAgICBzZWxmLmdldChrZXksIGZ1bmN0aW9uKGVyciwgdikge1xuICAgICAgaWYgKGVycikge1xuICAgICAgICBuZXh0KGVycik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSB2O1xuICAgICAgICBuZXh0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIGZ1bmN0aW9uKGVycikge1xuICAgIHJldHVybiBlcnIgPyBjYWxsYmFjayhlcnIpIDogY2FsbGJhY2sobnVsbCwgcmVzdWx0KTtcbiAgfSk7XG59O1xuXG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2V0IChrZXksIHZhbHVlLCBjYWxsYmFjaylcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gc2V0IGluIHRoaXMgaW5zdGFuY2Vcbi8vICMjIyMgQHZhbHVlIHtsaXRlcmFsfE9iamVjdH0gVmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQga2V5XG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gU2V0cyB0aGUgYHZhbHVlYCBmb3IgdGhlIHNwZWNpZmllZCBga2V5YCBpbiB0aGlzIGluc3RhbmNlLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5zZXQgPSBmdW5jdGlvbiAoa2V5LCB2YWx1ZSwgY2FsbGJhY2spIHtcbiAgcmV0dXJuIHRoaXMuX2V4ZWN1dGUoJ3NldCcsIDIsIGtleSwgdmFsdWUsIGNhbGxiYWNrKTtcbn07XG5cblxuLy9cbi8vICMjIyBmdW5jdGlvbiByZXF1aXJlZCAoa2V5cylcbi8vICMjIyMgQGtleXMge2FycmF5fSBMaXN0IG9mIGtleXNcbi8vIFRocm93cyBhbiBlcnJvciBpZiBhbnkgb2YgYGtleXNgIGhhcyBubyB2YWx1ZSwgb3RoZXJ3aXNlIHJldHVybnMgYHRydWVgXG5Qcm92aWRlci5wcm90b3R5cGUucmVxdWlyZWQgPSBmdW5jdGlvbiAoa2V5cykge1xuICBpZiAoIUFycmF5LmlzQXJyYXkoa2V5cykpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0luY29ycmVjdCBwYXJhbWV0ZXIsIGFycmF5IGV4cGVjdGVkJyk7XG4gIH1cblxuICB2YXIgbWlzc2luZyA9IFtdO1xuICBrZXlzLmZvckVhY2goZnVuY3Rpb24oa2V5KSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLmdldChrZXkpID09PSAndW5kZWZpbmVkJykge1xuICAgICAgbWlzc2luZy5wdXNoKGtleSk7XG4gICAgfVxuICB9LCB0aGlzKTtcblxuICBpZiAobWlzc2luZy5sZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcmVxdWlyZWQga2V5czogJyArIG1pc3Npbmcuam9pbignLCAnKSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiByZXNldCAoY2FsbGJhY2spXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gQ2xlYXJzIGFsbCBrZXlzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGluc3RhbmNlLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5yZXNldCA9IGZ1bmN0aW9uIChjYWxsYmFjaykge1xuICByZXR1cm4gdGhpcy5fZXhlY3V0ZSgncmVzZXQnLCAwLCBjYWxsYmFjayk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGNsZWFyIChrZXksIGNhbGxiYWNrKVxuLy8gIyMjIyBAa2V5IHtzdHJpbmd9IEtleSB0byByZW1vdmUgZnJvbSB0aGlzIGluc3RhbmNlXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gUmVtb3ZlcyB0aGUgdmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQgYGtleWAgZnJvbSB0aGlzIGluc3RhbmNlLlxuLy9cblByb3ZpZGVyLnByb3RvdHlwZS5jbGVhciA9IGZ1bmN0aW9uIChrZXksIGNhbGxiYWNrKSB7XG4gIHJldHVybiB0aGlzLl9leGVjdXRlKCdjbGVhcicsIDEsIGtleSwgY2FsbGJhY2spO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBtZXJnZSAoW2tleSxdIHZhbHVlIFssIGNhbGxiYWNrXSlcbi8vICMjIyMgQGtleSB7c3RyaW5nfSBLZXkgdG8gbWVyZ2UgdGhlIHZhbHVlIGludG9cbi8vICMjIyMgQHZhbHVlIHtsaXRlcmFsfE9iamVjdH0gVmFsdWUgdG8gbWVyZ2UgaW50byB0aGUga2V5XG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqT3B0aW9uYWwqKiBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gTWVyZ2VzIHRoZSBwcm9wZXJ0aWVzIGluIGB2YWx1ZWAgaW50byB0aGUgZXhpc3Rpbmcgb2JqZWN0IHZhbHVlIGF0IGBrZXlgLlxuLy9cbi8vIDEuIElmIHRoZSBleGlzdGluZyB2YWx1ZSBga2V5YCBpcyBub3QgYW4gT2JqZWN0LCBpdCB3aWxsIGJlIGNvbXBsZXRlbHkgb3ZlcndyaXR0ZW4uXG4vLyAyLiBJZiBga2V5YCBpcyBub3Qgc3VwcGxpZWQsIHRoZW4gdGhlIGB2YWx1ZWAgd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgcm9vdC5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUubWVyZ2UgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzZWxmID0gdGhpcyxcbiAgICAgIGFyZ3MgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpLFxuICAgICAgY2FsbGJhY2sgPSB0eXBlb2YgYXJnc1thcmdzLmxlbmd0aCAtIDFdID09PSAnZnVuY3Rpb24nICYmIGFyZ3MucG9wKCksXG4gICAgICB2YWx1ZSA9IGFyZ3MucG9wKCksXG4gICAgICBrZXkgPSBhcmdzLnBvcCgpO1xuXG4gIGZ1bmN0aW9uIG1lcmdlUHJvcGVydHkgKHByb3AsIG5leHQpIHtcbiAgICByZXR1cm4gc2VsZi5fZXhlY3V0ZSgnbWVyZ2UnLCAyLCBwcm9wLCB2YWx1ZVtwcm9wXSwgbmV4dCk7XG4gIH1cblxuICBpZiAoIWtleSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSB8fCB0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm4gb25FcnJvcihuZXcgRXJyb3IoJ0Nhbm5vdCBtZXJnZSBub24tT2JqZWN0IGludG8gdG9wLWxldmVsLicpLCBjYWxsYmFjayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGFzeW5jLmZvckVhY2goT2JqZWN0LmtleXModmFsdWUpLCBtZXJnZVByb3BlcnR5LCBjYWxsYmFjayB8fCBmdW5jdGlvbiAoKSB7IH0pXG4gIH1cblxuICByZXR1cm4gdGhpcy5fZXhlY3V0ZSgnbWVyZ2UnLCAyLCBrZXksIHZhbHVlLCBjYWxsYmFjayk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIGxvYWQgKGNhbGxiYWNrKVxuLy8gIyMjIyBAY2FsbGJhY2sge2Z1bmN0aW9ufSBDb250aW51YXRpb24gdG8gcmVzcG9uZCB0byB3aGVuIGNvbXBsZXRlLlxuLy8gUmVzcG9uZHMgd2l0aCBhbiBPYmplY3QgcmVwcmVzZW50aW5nIGFsbCBrZXlzIGFzc29jaWF0ZWQgaW4gdGhpcyBpbnN0YW5jZS5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUubG9hZCA9IGZ1bmN0aW9uIChjYWxsYmFjaykge1xuICB2YXIgc2VsZiA9IHRoaXM7XG5cbiAgZnVuY3Rpb24gZ2V0U3RvcmVzICgpIHtcbiAgICB2YXIgc3RvcmVzID0gT2JqZWN0LmtleXMoc2VsZi5zdG9yZXMpO1xuICAgIHN0b3Jlcy5yZXZlcnNlKCk7XG4gICAgcmV0dXJuIHN0b3Jlcy5tYXAoZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHJldHVybiBzZWxmLnN0b3Jlc1tuYW1lXTtcbiAgICB9KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGxvYWRTdG9yZVN5bmMoc3RvcmUpIHtcbiAgICBpZiAoIXN0b3JlLmxvYWRTeW5jKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ25jb25mIHN0b3JlICcgKyBzdG9yZS50eXBlICsgJyBoYXMgbm8gbG9hZFN5bmMoKSBtZXRob2QnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RvcmUubG9hZFN5bmMoKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGxvYWRTdG9yZShzdG9yZSwgbmV4dCkge1xuICAgIGlmICghc3RvcmUubG9hZCAmJiAhc3RvcmUubG9hZFN5bmMpIHtcbiAgICAgIHJldHVybiBuZXh0KG5ldyBFcnJvcignbmNvbmYgc3RvcmUgJyArIHN0b3JlLnR5cGUgKyAnIGhhcyBubyBsb2FkKCkgbWV0aG9kJykpO1xuICAgIH1cblxuICAgIHJldHVybiBzdG9yZS5sb2FkU3luY1xuICAgICAgPyBuZXh0KG51bGwsIHN0b3JlLmxvYWRTeW5jKCkpXG4gICAgICA6IHN0b3JlLmxvYWQobmV4dCk7XG4gIH1cblxuICBmdW5jdGlvbiBsb2FkQmF0Y2ggKHRhcmdldHMsIGRvbmUpIHtcbiAgICBpZiAoIWRvbmUpIHtcbiAgICAgIHJldHVybiBjb21tb24ubWVyZ2UodGFyZ2V0cy5tYXAobG9hZFN0b3JlU3luYykpO1xuICAgIH1cblxuICAgIGFzeW5jLm1hcCh0YXJnZXRzLCBsb2FkU3RvcmUsIGZ1bmN0aW9uIChlcnIsIG9ianMpIHtcbiAgICAgIHJldHVybiBlcnIgPyBkb25lKGVycikgOiBkb25lKG51bGwsIGNvbW1vbi5tZXJnZShvYmpzKSk7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiBtZXJnZVNvdXJjZXMgKGRhdGEpIHtcbiAgICAvL1xuICAgIC8vIElmIGBkYXRhYCB3YXMgcmV0dXJuZWQgdGhlbiBtZXJnZSBpdCBpbnRvXG4gICAgLy8gdGhlIHN5c3RlbSBzdG9yZS5cbiAgICAvL1xuICAgIGlmIChkYXRhICYmIHR5cGVvZiBkYXRhID09PSAnb2JqZWN0Jykge1xuICAgICAgc2VsZi51c2UoJ3NvdXJjZXMnLCB7XG4gICAgICAgIHR5cGU6ICdsaXRlcmFsJyxcbiAgICAgICAgc3RvcmU6IGRhdGFcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGxvYWRTb3VyY2VzICgpIHtcbiAgICB2YXIgc291cmNlSGllcmFyY2h5ID0gc2VsZi5zb3VyY2VzLnNwbGljZSgwKTtcbiAgICBzb3VyY2VIaWVyYXJjaHkucmV2ZXJzZSgpO1xuXG4gICAgLy9cbiAgICAvLyBJZiB3ZSBkb24ndCBoYXZlIGEgY2FsbGJhY2sgYW5kIHRoZSBjdXJyZW50XG4gICAgLy8gc3RvcmUgaXMgY2FwYWJsZSBvZiBsb2FkaW5nIHN5bmNocm9ub3VzbHlcbiAgICAvLyB0aGVuIGRvIHNvLlxuICAgIC8vXG4gICAgaWYgKCFjYWxsYmFjaykge1xuICAgICAgbWVyZ2VTb3VyY2VzKGxvYWRCYXRjaChzb3VyY2VIaWVyYXJjaHkpKTtcbiAgICAgIHJldHVybiBsb2FkQmF0Y2goZ2V0U3RvcmVzKCkpO1xuICAgIH1cblxuICAgIGxvYWRCYXRjaChzb3VyY2VIaWVyYXJjaHksIGZ1bmN0aW9uIChlcnIsIGRhdGEpIHtcbiAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICB9XG5cbiAgICAgIG1lcmdlU291cmNlcyhkYXRhKTtcbiAgICAgIHJldHVybiBsb2FkQmF0Y2goZ2V0U3RvcmVzKCksIGNhbGxiYWNrKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBzZWxmLnNvdXJjZXMubGVuZ3RoXG4gICAgPyBsb2FkU291cmNlcygpXG4gICAgOiBsb2FkQmF0Y2goZ2V0U3RvcmVzKCksIGNhbGxiYWNrKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2F2ZSAoY2FsbGJhY2spXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259ICoqb3B0aW9uYWwqKiAgQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlblxuLy8gY29tcGxldGUuXG4vLyBJbnN0cnVjdHMgZWFjaCBwcm92aWRlciB0byBzYXZlLiAgSWYgYSBjYWxsYmFjayBpcyBwcm92aWRlZCwgd2Ugd2lsbCBhdHRlbXB0XG4vLyBhc3luY2hyb25vdXMgc2F2ZXMgb24gdGhlIHByb3ZpZGVycywgZmFsbGluZyBiYWNrIHRvIHN5bmNocm9ub3VzIHNhdmVzIGlmXG4vLyB0aGlzIGlzbid0IHBvc3NpYmxlLiAgSWYgYSBwcm92aWRlciBkb2VzIG5vdCBrbm93IGhvdyB0byBzYXZlLCBpdCB3aWxsIGJlXG4vLyBpZ25vcmVkLiAgUmV0dXJucyBhbiBvYmplY3QgY29uc2lzdGluZyBvZiBhbGwgb2YgdGhlIGRhdGEgd2hpY2ggd2FzXG4vLyBhY3R1YWxseSBzYXZlZC5cbi8vXG5Qcm92aWRlci5wcm90b3R5cGUuc2F2ZSA9IGZ1bmN0aW9uICh2YWx1ZSwgY2FsbGJhY2spIHtcbiAgaWYgKCFjYWxsYmFjayAmJiB0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICBjYWxsYmFjayA9IHZhbHVlO1xuICAgIHZhbHVlID0gbnVsbDtcbiAgfVxuXG4gIHZhciBzZWxmID0gdGhpcyxcbiAgICAgIG5hbWVzID0gT2JqZWN0LmtleXModGhpcy5zdG9yZXMpO1xuXG4gIGZ1bmN0aW9uIHNhdmVTdG9yZVN5bmMobWVtbywgbmFtZSkge1xuICAgIHZhciBzdG9yZSA9IHNlbGYuc3RvcmVzW25hbWVdO1xuXG4gICAgLy9cbiAgICAvLyBJZiB0aGUgYHN0b3JlYCBkb2Vzbid0IGhhdmUgYSBgc2F2ZVN5bmNgIG1ldGhvZCxcbiAgICAvLyBqdXN0IGlnbm9yZSBpdCBhbmQgY29udGludWUuXG4gICAgLy9cbiAgICBpZiAoc3RvcmUuc2F2ZVN5bmMpIHtcbiAgICAgIHZhciByZXQgPSBzdG9yZS5zYXZlU3luYygpO1xuICAgICAgaWYgKHR5cGVvZiByZXQgPT0gJ29iamVjdCcgJiYgcmV0ICE9PSBudWxsKSB7XG4gICAgICAgIG1lbW8ucHVzaChyZXQpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWVtbztcbiAgfVxuXG4gIGZ1bmN0aW9uIHNhdmVTdG9yZShtZW1vLCBuYW1lLCBuZXh0KSB7XG4gICAgdmFyIHN0b3JlID0gc2VsZi5zdG9yZXNbbmFtZV07XG5cbiAgICAvL1xuICAgIC8vIElmIHRoZSBgc3RvcmVgIGRvZXNuJ3QgaGF2ZSBhIGBzYXZlYCBvciBzYXZlU3luY2BcbiAgICAvLyBtZXRob2QocyksIGp1c3QgaWdub3JlIGl0IGFuZCBjb250aW51ZS5cbiAgICAvL1xuXG4gICAgaWYgKHN0b3JlLnNhdmUpIHtcbiAgICAgIHJldHVybiBzdG9yZS5zYXZlKHZhbHVlLCBmdW5jdGlvbiAoZXJyLCBkYXRhKSB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICByZXR1cm4gbmV4dChlcnIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBkYXRhID09ICdvYmplY3QnICYmIGRhdGEgIT09IG51bGwpIHtcbiAgICAgICAgICBtZW1vLnB1c2goZGF0YSk7XG4gICAgICAgIH1cblxuICAgICAgICBuZXh0KG51bGwsIG1lbW8pO1xuICAgICAgfSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKHN0b3JlLnNhdmVTeW5jKSB7XG4gICAgICBtZW1vLnB1c2goc3RvcmUuc2F2ZVN5bmMoKSk7XG4gICAgfVxuXG4gICAgbmV4dChudWxsLCBtZW1vKTtcbiAgfVxuXG4gIC8vXG4gIC8vIElmIHdlIGRvbid0IGhhdmUgYSBjYWxsYmFjayBhbmQgdGhlIGN1cnJlbnRcbiAgLy8gc3RvcmUgaXMgY2FwYWJsZSBvZiBzYXZpbmcgc3luY2hyb25vdXNseVxuICAvLyB0aGVuIGRvIHNvLlxuICAvL1xuICBpZiAoIWNhbGxiYWNrKSB7XG4gICAgcmV0dXJuIGNvbW1vbi5tZXJnZShuYW1lcy5yZWR1Y2Uoc2F2ZVN0b3JlU3luYywgW10pKTtcbiAgfVxuXG4gIGFzeW5jLnJlZHVjZShuYW1lcywgW10sIHNhdmVTdG9yZSwgZnVuY3Rpb24gKGVyciwgb2Jqcykge1xuICAgIHJldHVybiBlcnIgPyBjYWxsYmFjayhlcnIpIDogY2FsbGJhY2sobnVsbCwgY29tbW9uLm1lcmdlKG9ianMpKTtcbiAgfSk7XG59O1xuXG4vL1xuLy8gIyMjIEBwcml2YXRlIGZ1bmN0aW9uIF9leGVjdXRlIChhY3Rpb24sIHN5bmNMZW5ndGgsIFthcmd1bWVudHNdKVxuLy8gIyMjIyBAYWN0aW9uIHtzdHJpbmd9IEFjdGlvbiB0byBleGVjdXRlIG9uIGB0aGlzLnN0b3JlYC5cbi8vICMjIyMgQHN5bmNMZW5ndGgge251bWJlcn0gRnVuY3Rpb24gbGVuZ3RoIG9mIHRoZSBzeW5jIHZlcnNpb24uXG4vLyAjIyMjIEBhcmd1bWVudHMge0FycmF5fSBBcmd1bWVudHMgYXJyYXkgdG8gYXBwbHkgdG8gdGhlIGFjdGlvblxuLy8gRXhlY3V0ZXMgdGhlIHNwZWNpZmllZCBgYWN0aW9uYCBvbiBhbGwgc3RvcmVzIGZvciB0aGlzIGluc3RhbmNlLCBlbnN1cmluZyBhIGNhbGxiYWNrIHN1cHBsaWVkXG4vLyB0byBhIHN5bmNocm9ub3VzIHN0b3JlIGZ1bmN0aW9uIGlzIHN0aWxsIGludm9rZWQuXG4vL1xuUHJvdmlkZXIucHJvdG90eXBlLl9leGVjdXRlID0gZnVuY3Rpb24gKGFjdGlvbiwgc3luY0xlbmd0aCAvKiBbYXJndW1lbnRzXSAqLykge1xuICB2YXIgYXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMiksXG4gICAgICBjYWxsYmFjayA9IHR5cGVvZiBhcmdzW2FyZ3MubGVuZ3RoIC0gMV0gPT09ICdmdW5jdGlvbicgJiYgYXJncy5wb3AoKSxcbiAgICAgIGRlc3RydWN0aXZlID0gWydzZXQnLCAnY2xlYXInLCAnbWVyZ2UnLCAncmVzZXQnXS5pbmRleE9mKGFjdGlvbikgIT09IC0xLFxuICAgICAgc2VsZiA9IHRoaXMsXG4gICAgICByZXNwb25zZSxcbiAgICAgIG1lcmdlT2JqcyA9IFtdLFxuICAgICAga2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuc3RvcmVzKTtcblxuXG4gIGZ1bmN0aW9uIHJ1bkFjdGlvbiAobmFtZSwgbmV4dCkge1xuICAgIHZhciBzdG9yZSA9IHNlbGYuc3RvcmVzW25hbWVdO1xuXG4gICAgaWYgKGRlc3RydWN0aXZlICYmIHN0b3JlLnJlYWRPbmx5KSB7XG4gICAgICByZXR1cm4gbmV4dCgpO1xuICAgIH1cblxuICAgIHJldHVybiBzdG9yZVthY3Rpb25dLmxlbmd0aCA+IHN5bmNMZW5ndGhcbiAgICAgID8gc3RvcmVbYWN0aW9uXS5hcHBseShzdG9yZSwgYXJncy5jb25jYXQobmV4dCkpXG4gICAgICA6IG5leHQobnVsbCwgc3RvcmVbYWN0aW9uXS5hcHBseShzdG9yZSwgYXJncykpO1xuICB9XG5cbiAgaWYgKGNhbGxiYWNrKSB7XG4gICAgcmV0dXJuIGFzeW5jLmZvckVhY2goa2V5cywgcnVuQWN0aW9uLCBmdW5jdGlvbiAoZXJyKSB7XG4gICAgICByZXR1cm4gZXJyID8gY2FsbGJhY2soZXJyKSA6IGNhbGxiYWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBrZXlzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdmFyIHN0b3JlID0gc2VsZi5zdG9yZXNbbmFtZV07XG5cbiAgICAgIGlmIChkZXN0cnVjdGl2ZSAmJiBzdG9yZS5yZWFkT25seSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHJlc3BvbnNlID0gc3RvcmVbYWN0aW9uXS5hcHBseShzdG9yZSwgYXJncyk7XG5cbiAgICAgIC8vIE1lcmdlIG9iamVjdHMgaWYgbmVjZXNzYXJ5XG4gICAgICBpZiAocmVzcG9uc2UgJiYgYWN0aW9uID09PSAnZ2V0JyAmJiB0eXBlb2YgcmVzcG9uc2UgPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KHJlc3BvbnNlKSkge1xuICAgICAgICBtZXJnZU9ianMucHVzaChyZXNwb25zZSk7XG4gICAgICAgIHJlc3BvbnNlID0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH1cbiAgfSk7XG5cbiAgaWYgKG1lcmdlT2Jqcy5sZW5ndGgpIHtcbiAgICByZXNwb25zZSA9IGNvbW1vbi5tZXJnZShtZXJnZU9ianMucmV2ZXJzZSgpKTtcbiAgfVxuXG4gIHJldHVybiByZXNwb25zZTtcbn1cblxuLy9cbi8vIFRocm93IHRoZSBgZXJyYCBpZiBhIGNhbGxiYWNrIGlzIG5vdCBzdXBwbGllZFxuLy9cbmZ1bmN0aW9uIG9uRXJyb3IoZXJyLCBjYWxsYmFjaykge1xuICBpZiAoY2FsbGJhY2spIHtcbiAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgfVxuXG4gIHRocm93IGVycjtcbn1cbiIsICJ7XG4gIFwibmFtZVwiOiBcIm5jb25mXCIsXG4gIFwiZGVzY3JpcHRpb25cIjogXCJIaWVyYXJjaGljYWwgbm9kZS5qcyBjb25maWd1cmF0aW9uIHdpdGggZmlsZXMsIGVudmlyb25tZW50IHZhcmlhYmxlcywgY29tbWFuZC1saW5lIGFyZ3VtZW50cywgYW5kIGF0b21pYyBvYmplY3QgbWVyZ2luZy5cIixcbiAgXCJ2ZXJzaW9uXCI6IFwiMC4xMy4wXCIsXG4gIFwiYXV0aG9yXCI6IFwiQ2hhcmxpZSBSb2JiaW5zIDxjaGFybGllLnJvYmJpbnNAZ21haWwuY29tPlwiLFxuICBcImNvbnRyaWJ1dG9yc1wiOiBbXG4gICAgXCJNYXR0IEhhbWFubiA8bWF0dGhldy5oYW1hbm5AZ21haWwuY29tPlwiLFxuICAgIFwiTWFjaWVqIE1hXHUwMTQyZWNraSA8bWVAbW1hbGVja2kuY29tPlwiLFxuICAgIFwiSmFycmV0dCBDcnVnZXIgPGpjcnVnenpAZ21haWwuY29tPlwiLFxuICAgIFwiQWRyaWVuIEJlY2NoaXNcIlxuICBdLFxuICBcInJlcG9zaXRvcnlcIjoge1xuICAgIFwidHlwZVwiOiBcImdpdFwiLFxuICAgIFwidXJsXCI6IFwiaHR0cDovL2dpdGh1Yi5jb20vZmxhdGlyb24vbmNvbmYuZ2l0XCJcbiAgfSxcbiAgXCJrZXl3b3Jkc1wiOiBbXG4gICAgXCJjb25maWd1cmF0aW9uXCIsXG4gICAgXCJrZXkgdmFsdWUgc3RvcmVcIixcbiAgICBcInBsdWdhYmJsZVwiXG4gIF0sXG4gIFwiZGVwZW5kZW5jaWVzXCI6IHtcbiAgICBcImFzeW5jXCI6IFwiXjMuMC4wXCIsXG4gICAgXCJpbmlcIjogXCJeMi4wLjBcIixcbiAgICBcInNlY3VyZS1rZXlzXCI6IFwiXjEuMC4wXCIsXG4gICAgXCJ5YXJnc1wiOiBcIl4xNi4xLjFcIlxuICB9LFxuICBcImRldkRlcGVuZGVuY2llc1wiOiB7XG4gICAgXCJAcmVsZWFzZS1pdC9jb252ZW50aW9uYWwtY2hhbmdlbG9nXCI6IFwiXjcuMC4yXCIsXG4gICAgXCJjb3ZlcmFsbHNcIjogXCJeMy4xLjBcIixcbiAgICBcImVzbGludFwiOiBcIl43LjAuMFwiLFxuICAgIFwibmNvbmYteWFtbFwiOiBcIl4xLjAuMlwiLFxuICAgIFwibnljXCI6IFwiXjE1LjEuMFwiLFxuICAgIFwicmVsZWFzZS1pdFwiOiBcIl4xNi4yLjFcIixcbiAgICBcInZvd3NcIjogXCJeMC44LjNcIlxuICB9LFxuICBcIm1haW5cIjogXCIuL2xpYi9uY29uZlwiLFxuICBcInNjcmlwdHNcIjoge1xuICAgIFwidGVzdFwiOiBcInZvd3MgdGVzdC8qLXRlc3QuanMgdGVzdC8qKi8qLXRlc3QuanMgLS1zcGVjXCIsXG4gICAgXCJjb3ZlclwiOiBcIm55YyAtLXJlcG9ydGVyPWxjb3YgbnBtIHRlc3RcIixcbiAgICBcImNvdmVyYWxsc1wiOiBcImNhdCBjb3ZlcmFnZS9sY292LmluZm8gfCBjb3ZlcmFsbHNcIixcbiAgICBcImxpbnRcIjogXCJlc2xpbnQgLlwiLFxuICAgIFwicmVsZWFzZVwiOiBcInJlbGVhc2UtaXRcIlxuICB9LFxuICBcImVuZ2luZXNcIjoge1xuICAgIFwibm9kZVwiOiBcIj49IDAuNC4wXCJcbiAgfSxcbiAgXCJsaWNlbnNlXCI6IFwiTUlUXCJcbn1cbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBmcyA9IHJlcXVpcmUoJ2ZzJyk7XG52YXIgdXRpbCA9IHJlcXVpcmUoJ3V0aWwnKTtcbnZhciBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuXG5sZXQgc2hpbTtcbmNsYXNzIFkxOE4ge1xuICAgIGNvbnN0cnVjdG9yKG9wdHMpIHtcbiAgICAgICAgLy8gY29uZmlndXJhYmxlIG9wdGlvbnMuXG4gICAgICAgIG9wdHMgPSBvcHRzIHx8IHt9O1xuICAgICAgICB0aGlzLmRpcmVjdG9yeSA9IG9wdHMuZGlyZWN0b3J5IHx8ICcuL2xvY2FsZXMnO1xuICAgICAgICB0aGlzLnVwZGF0ZUZpbGVzID0gdHlwZW9mIG9wdHMudXBkYXRlRmlsZXMgPT09ICdib29sZWFuJyA/IG9wdHMudXBkYXRlRmlsZXMgOiB0cnVlO1xuICAgICAgICB0aGlzLmxvY2FsZSA9IG9wdHMubG9jYWxlIHx8ICdlbic7XG4gICAgICAgIHRoaXMuZmFsbGJhY2tUb0xhbmd1YWdlID0gdHlwZW9mIG9wdHMuZmFsbGJhY2tUb0xhbmd1YWdlID09PSAnYm9vbGVhbicgPyBvcHRzLmZhbGxiYWNrVG9MYW5ndWFnZSA6IHRydWU7XG4gICAgICAgIC8vIGludGVybmFsIHN0dWZmLlxuICAgICAgICB0aGlzLmNhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdGhpcy53cml0ZVF1ZXVlID0gW107XG4gICAgfVxuICAgIF9fKC4uLmFyZ3MpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBhcmd1bWVudHNbMF0gIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fdGFnZ2VkTGl0ZXJhbChhcmd1bWVudHNbMF0sIC4uLmFyZ3VtZW50cyk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc3RyID0gYXJncy5zaGlmdCgpO1xuICAgICAgICBsZXQgY2IgPSBmdW5jdGlvbiAoKSB7IH07IC8vIHN0YXJ0IHdpdGggbm9vcC5cbiAgICAgICAgaWYgKHR5cGVvZiBhcmdzW2FyZ3MubGVuZ3RoIC0gMV0gPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICBjYiA9IGFyZ3MucG9wKCk7XG4gICAgICAgIGNiID0gY2IgfHwgZnVuY3Rpb24gKCkgeyB9OyAvLyBub29wLlxuICAgICAgICBpZiAoIXRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdKVxuICAgICAgICAgICAgdGhpcy5fcmVhZExvY2FsZUZpbGUoKTtcbiAgICAgICAgLy8gd2UndmUgb2JzZXJ2ZWQgYSBuZXcgc3RyaW5nLCB1cGRhdGUgdGhlIGxhbmd1YWdlIGZpbGUuXG4gICAgICAgIGlmICghdGhpcy5jYWNoZVt0aGlzLmxvY2FsZV1bc3RyXSAmJiB0aGlzLnVwZGF0ZUZpbGVzKSB7XG4gICAgICAgICAgICB0aGlzLmNhY2hlW3RoaXMubG9jYWxlXVtzdHJdID0gc3RyO1xuICAgICAgICAgICAgLy8gaW5jbHVkZSB0aGUgY3VycmVudCBkaXJlY3RvcnkgYW5kIGxvY2FsZSxcbiAgICAgICAgICAgIC8vIHNpbmNlIHRoZXNlIHZhbHVlcyBjb3VsZCBjaGFuZ2UgYmVmb3JlIHRoZVxuICAgICAgICAgICAgLy8gd3JpdGUgaXMgcGVyZm9ybWVkLlxuICAgICAgICAgICAgdGhpcy5fZW5xdWV1ZVdyaXRlKHtcbiAgICAgICAgICAgICAgICBkaXJlY3Rvcnk6IHRoaXMuZGlyZWN0b3J5LFxuICAgICAgICAgICAgICAgIGxvY2FsZTogdGhpcy5sb2NhbGUsXG4gICAgICAgICAgICAgICAgY2JcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY2IoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2hpbS5mb3JtYXQuYXBwbHkoc2hpbS5mb3JtYXQsIFt0aGlzLmNhY2hlW3RoaXMubG9jYWxlXVtzdHJdIHx8IHN0cl0uY29uY2F0KGFyZ3MpKTtcbiAgICB9XG4gICAgX19uKCkge1xuICAgICAgICBjb25zdCBhcmdzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtcbiAgICAgICAgY29uc3Qgc2luZ3VsYXIgPSBhcmdzLnNoaWZ0KCk7XG4gICAgICAgIGNvbnN0IHBsdXJhbCA9IGFyZ3Muc2hpZnQoKTtcbiAgICAgICAgY29uc3QgcXVhbnRpdHkgPSBhcmdzLnNoaWZ0KCk7XG4gICAgICAgIGxldCBjYiA9IGZ1bmN0aW9uICgpIHsgfTsgLy8gc3RhcnQgd2l0aCBub29wLlxuICAgICAgICBpZiAodHlwZW9mIGFyZ3NbYXJncy5sZW5ndGggLSAxXSA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIGNiID0gYXJncy5wb3AoKTtcbiAgICAgICAgaWYgKCF0aGlzLmNhY2hlW3RoaXMubG9jYWxlXSlcbiAgICAgICAgICAgIHRoaXMuX3JlYWRMb2NhbGVGaWxlKCk7XG4gICAgICAgIGxldCBzdHIgPSBxdWFudGl0eSA9PT0gMSA/IHNpbmd1bGFyIDogcGx1cmFsO1xuICAgICAgICBpZiAodGhpcy5jYWNoZVt0aGlzLmxvY2FsZV1bc2luZ3VsYXJdKSB7XG4gICAgICAgICAgICBjb25zdCBlbnRyeSA9IHRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdW3Npbmd1bGFyXTtcbiAgICAgICAgICAgIHN0ciA9IGVudHJ5W3F1YW50aXR5ID09PSAxID8gJ29uZScgOiAnb3RoZXInXTtcbiAgICAgICAgfVxuICAgICAgICAvLyB3ZSd2ZSBvYnNlcnZlZCBhIG5ldyBzdHJpbmcsIHVwZGF0ZSB0aGUgbGFuZ3VhZ2UgZmlsZS5cbiAgICAgICAgaWYgKCF0aGlzLmNhY2hlW3RoaXMubG9jYWxlXVtzaW5ndWxhcl0gJiYgdGhpcy51cGRhdGVGaWxlcykge1xuICAgICAgICAgICAgdGhpcy5jYWNoZVt0aGlzLmxvY2FsZV1bc2luZ3VsYXJdID0ge1xuICAgICAgICAgICAgICAgIG9uZTogc2luZ3VsYXIsXG4gICAgICAgICAgICAgICAgb3RoZXI6IHBsdXJhbFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vIGluY2x1ZGUgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFuZCBsb2NhbGUsXG4gICAgICAgICAgICAvLyBzaW5jZSB0aGVzZSB2YWx1ZXMgY291bGQgY2hhbmdlIGJlZm9yZSB0aGVcbiAgICAgICAgICAgIC8vIHdyaXRlIGlzIHBlcmZvcm1lZC5cbiAgICAgICAgICAgIHRoaXMuX2VucXVldWVXcml0ZSh7XG4gICAgICAgICAgICAgICAgZGlyZWN0b3J5OiB0aGlzLmRpcmVjdG9yeSxcbiAgICAgICAgICAgICAgICBsb2NhbGU6IHRoaXMubG9jYWxlLFxuICAgICAgICAgICAgICAgIGNiXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNiKCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gaWYgYSAlZCBwbGFjZWhvbGRlciBpcyBwcm92aWRlZCwgYWRkIHF1YW50aXR5XG4gICAgICAgIC8vIHRvIHRoZSBhcmd1bWVudHMgZXhwYW5kZWQgYnkgdXRpbC5mb3JtYXQuXG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IFtzdHJdO1xuICAgICAgICBpZiAofnN0ci5pbmRleE9mKCclZCcpKVxuICAgICAgICAgICAgdmFsdWVzLnB1c2gocXVhbnRpdHkpO1xuICAgICAgICByZXR1cm4gc2hpbS5mb3JtYXQuYXBwbHkoc2hpbS5mb3JtYXQsIHZhbHVlcy5jb25jYXQoYXJncykpO1xuICAgIH1cbiAgICBzZXRMb2NhbGUobG9jYWxlKSB7XG4gICAgICAgIHRoaXMubG9jYWxlID0gbG9jYWxlO1xuICAgIH1cbiAgICBnZXRMb2NhbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvY2FsZTtcbiAgICB9XG4gICAgdXBkYXRlTG9jYWxlKG9iaikge1xuICAgICAgICBpZiAoIXRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdKVxuICAgICAgICAgICAgdGhpcy5fcmVhZExvY2FsZUZpbGUoKTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FjaGVbdGhpcy5sb2NhbGVdW2tleV0gPSBvYmpba2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBfdGFnZ2VkTGl0ZXJhbChwYXJ0cywgLi4uYXJncykge1xuICAgICAgICBsZXQgc3RyID0gJyc7XG4gICAgICAgIHBhcnRzLmZvckVhY2goZnVuY3Rpb24gKHBhcnQsIGkpIHtcbiAgICAgICAgICAgIGNvbnN0IGFyZyA9IGFyZ3NbaSArIDFdO1xuICAgICAgICAgICAgc3RyICs9IHBhcnQ7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGFyZyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgICBzdHIgKz0gJyVzJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzLl9fLmFwcGx5KHRoaXMsIFtzdHJdLmNvbmNhdChbXS5zbGljZS5jYWxsKGFyZ3MsIDEpKSk7XG4gICAgfVxuICAgIF9lbnF1ZXVlV3JpdGUod29yaykge1xuICAgICAgICB0aGlzLndyaXRlUXVldWUucHVzaCh3b3JrKTtcbiAgICAgICAgaWYgKHRoaXMud3JpdGVRdWV1ZS5sZW5ndGggPT09IDEpXG4gICAgICAgICAgICB0aGlzLl9wcm9jZXNzV3JpdGVRdWV1ZSgpO1xuICAgIH1cbiAgICBfcHJvY2Vzc1dyaXRlUXVldWUoKSB7XG4gICAgICAgIGNvbnN0IF90aGlzID0gdGhpcztcbiAgICAgICAgY29uc3Qgd29yayA9IHRoaXMud3JpdGVRdWV1ZVswXTtcbiAgICAgICAgLy8gZGVzdHJ1Y3R1cmUgdGhlIGVucXVldWVkIHdvcmsuXG4gICAgICAgIGNvbnN0IGRpcmVjdG9yeSA9IHdvcmsuZGlyZWN0b3J5O1xuICAgICAgICBjb25zdCBsb2NhbGUgPSB3b3JrLmxvY2FsZTtcbiAgICAgICAgY29uc3QgY2IgPSB3b3JrLmNiO1xuICAgICAgICBjb25zdCBsYW5ndWFnZUZpbGUgPSB0aGlzLl9yZXNvbHZlTG9jYWxlRmlsZShkaXJlY3RvcnksIGxvY2FsZSk7XG4gICAgICAgIGNvbnN0IHNlcmlhbGl6ZWRMb2NhbGUgPSBKU09OLnN0cmluZ2lmeSh0aGlzLmNhY2hlW2xvY2FsZV0sIG51bGwsIDIpO1xuICAgICAgICBzaGltLmZzLndyaXRlRmlsZShsYW5ndWFnZUZpbGUsIHNlcmlhbGl6ZWRMb2NhbGUsICd1dGYtOCcsIGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgICAgICAgIF90aGlzLndyaXRlUXVldWUuc2hpZnQoKTtcbiAgICAgICAgICAgIGlmIChfdGhpcy53cml0ZVF1ZXVlLmxlbmd0aCA+IDApXG4gICAgICAgICAgICAgICAgX3RoaXMuX3Byb2Nlc3NXcml0ZVF1ZXVlKCk7XG4gICAgICAgICAgICBjYihlcnIpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgX3JlYWRMb2NhbGVGaWxlKCkge1xuICAgICAgICBsZXQgbG9jYWxlTG9va3VwID0ge307XG4gICAgICAgIGNvbnN0IGxhbmd1YWdlRmlsZSA9IHRoaXMuX3Jlc29sdmVMb2NhbGVGaWxlKHRoaXMuZGlyZWN0b3J5LCB0aGlzLmxvY2FsZSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBXaGVuIHVzaW5nIGEgYnVuZGxlciBzdWNoIGFzIHdlYnBhY2ssIHJlYWRGaWxlU3luYyBtYXkgbm90IGJlIGRlZmluZWQ6XG4gICAgICAgICAgICBpZiAoc2hpbS5mcy5yZWFkRmlsZVN5bmMpIHtcbiAgICAgICAgICAgICAgICBsb2NhbGVMb29rdXAgPSBKU09OLnBhcnNlKHNoaW0uZnMucmVhZEZpbGVTeW5jKGxhbmd1YWdlRmlsZSwgJ3V0Zi04JykpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikge1xuICAgICAgICAgICAgICAgIGVyci5tZXNzYWdlID0gJ3N5bnRheCBlcnJvciBpbiAnICsgbGFuZ3VhZ2VGaWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGVyci5jb2RlID09PSAnRU5PRU5UJylcbiAgICAgICAgICAgICAgICBsb2NhbGVMb29rdXAgPSB7fTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jYWNoZVt0aGlzLmxvY2FsZV0gPSBsb2NhbGVMb29rdXA7XG4gICAgfVxuICAgIF9yZXNvbHZlTG9jYWxlRmlsZShkaXJlY3RvcnksIGxvY2FsZSkge1xuICAgICAgICBsZXQgZmlsZSA9IHNoaW0ucmVzb2x2ZShkaXJlY3RvcnksICcuLycsIGxvY2FsZSArICcuanNvbicpO1xuICAgICAgICBpZiAodGhpcy5mYWxsYmFja1RvTGFuZ3VhZ2UgJiYgIXRoaXMuX2ZpbGVFeGlzdHNTeW5jKGZpbGUpICYmIH5sb2NhbGUubGFzdEluZGV4T2YoJ18nKSkge1xuICAgICAgICAgICAgLy8gYXR0ZW1wdCBmYWxsYmFjayB0byBsYW5ndWFnZSBvbmx5XG4gICAgICAgICAgICBjb25zdCBsYW5ndWFnZUZpbGUgPSBzaGltLnJlc29sdmUoZGlyZWN0b3J5LCAnLi8nLCBsb2NhbGUuc3BsaXQoJ18nKVswXSArICcuanNvbicpO1xuICAgICAgICAgICAgaWYgKHRoaXMuX2ZpbGVFeGlzdHNTeW5jKGxhbmd1YWdlRmlsZSkpXG4gICAgICAgICAgICAgICAgZmlsZSA9IGxhbmd1YWdlRmlsZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmlsZTtcbiAgICB9XG4gICAgX2ZpbGVFeGlzdHNTeW5jKGZpbGUpIHtcbiAgICAgICAgcmV0dXJuIHNoaW0uZXhpc3RzKGZpbGUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHkxOG4kMShvcHRzLCBfc2hpbSkge1xuICAgIHNoaW0gPSBfc2hpbTtcbiAgICBjb25zdCB5MThuID0gbmV3IFkxOE4ob3B0cyk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgX186IHkxOG4uX18uYmluZCh5MThuKSxcbiAgICAgICAgX19uOiB5MThuLl9fbi5iaW5kKHkxOG4pLFxuICAgICAgICBzZXRMb2NhbGU6IHkxOG4uc2V0TG9jYWxlLmJpbmQoeTE4biksXG4gICAgICAgIGdldExvY2FsZTogeTE4bi5nZXRMb2NhbGUuYmluZCh5MThuKSxcbiAgICAgICAgdXBkYXRlTG9jYWxlOiB5MThuLnVwZGF0ZUxvY2FsZS5iaW5kKHkxOG4pLFxuICAgICAgICBsb2NhbGU6IHkxOG4ubG9jYWxlXG4gICAgfTtcbn1cblxudmFyIG5vZGVQbGF0Zm9ybVNoaW0gPSB7XG4gICAgZnM6IHtcbiAgICAgICAgcmVhZEZpbGVTeW5jOiBmcy5yZWFkRmlsZVN5bmMsXG4gICAgICAgIHdyaXRlRmlsZTogZnMud3JpdGVGaWxlXG4gICAgfSxcbiAgICBmb3JtYXQ6IHV0aWwuZm9ybWF0LFxuICAgIHJlc29sdmU6IHBhdGgucmVzb2x2ZSxcbiAgICBleGlzdHM6IChmaWxlKSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gZnMuc3RhdFN5bmMoZmlsZSkuaXNGaWxlKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuY29uc3QgeTE4biA9IChvcHRzKSA9PiB7XG4gICAgcmV0dXJuIHkxOG4kMShvcHRzLCBub2RlUGxhdGZvcm1TaGltKTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0geTE4bjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlsID0gcmVxdWlyZSgndXRpbCcpO1xudmFyIGZzID0gcmVxdWlyZSgnZnMnKTtcbnZhciBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuXG5mdW5jdGlvbiBjYW1lbENhc2Uoc3RyKSB7XG4gICAgY29uc3QgaXNDYW1lbENhc2UgPSBzdHIgIT09IHN0ci50b0xvd2VyQ2FzZSgpICYmIHN0ciAhPT0gc3RyLnRvVXBwZXJDYXNlKCk7XG4gICAgaWYgKCFpc0NhbWVsQ2FzZSkge1xuICAgICAgICBzdHIgPSBzdHIudG9Mb3dlckNhc2UoKTtcbiAgICB9XG4gICAgaWYgKHN0ci5pbmRleE9mKCctJykgPT09IC0xICYmIHN0ci5pbmRleE9mKCdfJykgPT09IC0xKSB7XG4gICAgICAgIHJldHVybiBzdHI7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBsZXQgY2FtZWxjYXNlID0gJyc7XG4gICAgICAgIGxldCBuZXh0Q2hyVXBwZXIgPSBmYWxzZTtcbiAgICAgICAgY29uc3QgbGVhZGluZ0h5cGhlbnMgPSBzdHIubWF0Y2goL14tKy8pO1xuICAgICAgICBmb3IgKGxldCBpID0gbGVhZGluZ0h5cGhlbnMgPyBsZWFkaW5nSHlwaGVuc1swXS5sZW5ndGggOiAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBsZXQgY2hyID0gc3RyLmNoYXJBdChpKTtcbiAgICAgICAgICAgIGlmIChuZXh0Q2hyVXBwZXIpIHtcbiAgICAgICAgICAgICAgICBuZXh0Q2hyVXBwZXIgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBjaHIgPSBjaHIudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpICE9PSAwICYmIChjaHIgPT09ICctJyB8fCBjaHIgPT09ICdfJykpIHtcbiAgICAgICAgICAgICAgICBuZXh0Q2hyVXBwZXIgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY2hyICE9PSAnLScgJiYgY2hyICE9PSAnXycpIHtcbiAgICAgICAgICAgICAgICBjYW1lbGNhc2UgKz0gY2hyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjYW1lbGNhc2U7XG4gICAgfVxufVxuZnVuY3Rpb24gZGVjYW1lbGl6ZShzdHIsIGpvaW5TdHJpbmcpIHtcbiAgICBjb25zdCBsb3dlcmNhc2UgPSBzdHIudG9Mb3dlckNhc2UoKTtcbiAgICBqb2luU3RyaW5nID0gam9pblN0cmluZyB8fCAnLSc7XG4gICAgbGV0IG5vdENhbWVsY2FzZSA9ICcnO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGNockxvd2VyID0gbG93ZXJjYXNlLmNoYXJBdChpKTtcbiAgICAgICAgY29uc3QgY2hyU3RyaW5nID0gc3RyLmNoYXJBdChpKTtcbiAgICAgICAgaWYgKGNockxvd2VyICE9PSBjaHJTdHJpbmcgJiYgaSA+IDApIHtcbiAgICAgICAgICAgIG5vdENhbWVsY2FzZSArPSBgJHtqb2luU3RyaW5nfSR7bG93ZXJjYXNlLmNoYXJBdChpKX1gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbm90Q2FtZWxjYXNlICs9IGNoclN0cmluZztcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbm90Q2FtZWxjYXNlO1xufVxuZnVuY3Rpb24gbG9va3NMaWtlTnVtYmVyKHgpIHtcbiAgICBpZiAoeCA9PT0gbnVsbCB8fCB4ID09PSB1bmRlZmluZWQpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBpZiAodHlwZW9mIHggPT09ICdudW1iZXInKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoL14weFswLTlhLWZdKyQvaS50ZXN0KHgpKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoL14wW14uXS8udGVzdCh4KSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiAvXlstXT8oPzpcXGQrKD86XFwuXFxkKik/fFxcLlxcZCspKGVbLStdP1xcZCspPyQvLnRlc3QoeCk7XG59XG5cbmZ1bmN0aW9uIHRva2VuaXplQXJnU3RyaW5nKGFyZ1N0cmluZykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGFyZ1N0cmluZykpIHtcbiAgICAgICAgcmV0dXJuIGFyZ1N0cmluZy5tYXAoZSA9PiB0eXBlb2YgZSAhPT0gJ3N0cmluZycgPyBlICsgJycgOiBlKTtcbiAgICB9XG4gICAgYXJnU3RyaW5nID0gYXJnU3RyaW5nLnRyaW0oKTtcbiAgICBsZXQgaSA9IDA7XG4gICAgbGV0IHByZXZDID0gbnVsbDtcbiAgICBsZXQgYyA9IG51bGw7XG4gICAgbGV0IG9wZW5pbmcgPSBudWxsO1xuICAgIGNvbnN0IGFyZ3MgPSBbXTtcbiAgICBmb3IgKGxldCBpaSA9IDA7IGlpIDwgYXJnU3RyaW5nLmxlbmd0aDsgaWkrKykge1xuICAgICAgICBwcmV2QyA9IGM7XG4gICAgICAgIGMgPSBhcmdTdHJpbmcuY2hhckF0KGlpKTtcbiAgICAgICAgaWYgKGMgPT09ICcgJyAmJiAhb3BlbmluZykge1xuICAgICAgICAgICAgaWYgKCEocHJldkMgPT09ICcgJykpIHtcbiAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYyA9PT0gb3BlbmluZykge1xuICAgICAgICAgICAgb3BlbmluZyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoKGMgPT09IFwiJ1wiIHx8IGMgPT09ICdcIicpICYmICFvcGVuaW5nKSB7XG4gICAgICAgICAgICBvcGVuaW5nID0gYztcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWFyZ3NbaV0pXG4gICAgICAgICAgICBhcmdzW2ldID0gJyc7XG4gICAgICAgIGFyZ3NbaV0gKz0gYztcbiAgICB9XG4gICAgcmV0dXJuIGFyZ3M7XG59XG5cbnZhciBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleTtcbihmdW5jdGlvbiAoRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXkpIHtcbiAgICBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleVtcIkJPT0xFQU5cIl0gPSBcImJvb2xlYW5cIjtcbiAgICBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleVtcIlNUUklOR1wiXSA9IFwic3RyaW5nXCI7XG4gICAgRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXlbXCJOVU1CRVJcIl0gPSBcIm51bWJlclwiO1xuICAgIERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5W1wiQVJSQVlcIl0gPSBcImFycmF5XCI7XG59KShEZWZhdWx0VmFsdWVzRm9yVHlwZUtleSB8fCAoRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXkgPSB7fSkpO1xuXG5sZXQgbWl4aW47XG5jbGFzcyBZYXJnc1BhcnNlciB7XG4gICAgY29uc3RydWN0b3IoX21peGluKSB7XG4gICAgICAgIG1peGluID0gX21peGluO1xuICAgIH1cbiAgICBwYXJzZShhcmdzSW5wdXQsIG9wdGlvbnMpIHtcbiAgICAgICAgY29uc3Qgb3B0cyA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAgICAgYWxpYXM6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGFycmF5OiB1bmRlZmluZWQsXG4gICAgICAgICAgICBib29sZWFuOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBjb25maWc6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNvbmZpZ09iamVjdHM6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNvbmZpZ3VyYXRpb246IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNvZXJjZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgY291bnQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGRlZmF1bHQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGVudlByZWZpeDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgbmFyZzogdW5kZWZpbmVkLFxuICAgICAgICAgICAgbm9ybWFsaXplOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBzdHJpbmc6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIG51bWJlcjogdW5kZWZpbmVkLFxuICAgICAgICAgICAgX186IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGtleTogdW5kZWZpbmVkXG4gICAgICAgIH0sIG9wdGlvbnMpO1xuICAgICAgICBjb25zdCBhcmdzID0gdG9rZW5pemVBcmdTdHJpbmcoYXJnc0lucHV0KTtcbiAgICAgICAgY29uc3QgYWxpYXNlcyA9IGNvbWJpbmVBbGlhc2VzKE9iamVjdC5hc3NpZ24oT2JqZWN0LmNyZWF0ZShudWxsKSwgb3B0cy5hbGlhcykpO1xuICAgICAgICBjb25zdCBjb25maWd1cmF0aW9uID0gT2JqZWN0LmFzc2lnbih7XG4gICAgICAgICAgICAnYm9vbGVhbi1uZWdhdGlvbic6IHRydWUsXG4gICAgICAgICAgICAnY2FtZWwtY2FzZS1leHBhbnNpb24nOiB0cnVlLFxuICAgICAgICAgICAgJ2NvbWJpbmUtYXJyYXlzJzogZmFsc2UsXG4gICAgICAgICAgICAnZG90LW5vdGF0aW9uJzogdHJ1ZSxcbiAgICAgICAgICAgICdkdXBsaWNhdGUtYXJndW1lbnRzLWFycmF5JzogdHJ1ZSxcbiAgICAgICAgICAgICdmbGF0dGVuLWR1cGxpY2F0ZS1hcnJheXMnOiB0cnVlLFxuICAgICAgICAgICAgJ2dyZWVkeS1hcnJheXMnOiB0cnVlLFxuICAgICAgICAgICAgJ2hhbHQtYXQtbm9uLW9wdGlvbic6IGZhbHNlLFxuICAgICAgICAgICAgJ25hcmdzLWVhdHMtb3B0aW9ucyc6IGZhbHNlLFxuICAgICAgICAgICAgJ25lZ2F0aW9uLXByZWZpeCc6ICduby0nLFxuICAgICAgICAgICAgJ3BhcnNlLW51bWJlcnMnOiB0cnVlLFxuICAgICAgICAgICAgJ3BhcnNlLXBvc2l0aW9uYWwtbnVtYmVycyc6IHRydWUsXG4gICAgICAgICAgICAncG9wdWxhdGUtLSc6IGZhbHNlLFxuICAgICAgICAgICAgJ3NldC1wbGFjZWhvbGRlci1rZXknOiBmYWxzZSxcbiAgICAgICAgICAgICdzaG9ydC1vcHRpb24tZ3JvdXBzJzogdHJ1ZSxcbiAgICAgICAgICAgICdzdHJpcC1hbGlhc2VkJzogZmFsc2UsXG4gICAgICAgICAgICAnc3RyaXAtZGFzaGVkJzogZmFsc2UsXG4gICAgICAgICAgICAndW5rbm93bi1vcHRpb25zLWFzLWFyZ3MnOiBmYWxzZVxuICAgICAgICB9LCBvcHRzLmNvbmZpZ3VyYXRpb24pO1xuICAgICAgICBjb25zdCBkZWZhdWx0cyA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmNyZWF0ZShudWxsKSwgb3B0cy5kZWZhdWx0KTtcbiAgICAgICAgY29uc3QgY29uZmlnT2JqZWN0cyA9IG9wdHMuY29uZmlnT2JqZWN0cyB8fCBbXTtcbiAgICAgICAgY29uc3QgZW52UHJlZml4ID0gb3B0cy5lbnZQcmVmaXg7XG4gICAgICAgIGNvbnN0IG5vdEZsYWdzT3B0aW9uID0gY29uZmlndXJhdGlvblsncG9wdWxhdGUtLSddO1xuICAgICAgICBjb25zdCBub3RGbGFnc0FyZ3YgPSBub3RGbGFnc09wdGlvbiA/ICctLScgOiAnXyc7XG4gICAgICAgIGNvbnN0IG5ld0FsaWFzZXMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgICAgICBjb25zdCBkZWZhdWx0ZWQgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuICAgICAgICBjb25zdCBfXyA9IG9wdHMuX18gfHwgbWl4aW4uZm9ybWF0O1xuICAgICAgICBjb25zdCBmbGFncyA9IHtcbiAgICAgICAgICAgIGFsaWFzZXM6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgICAgICAgICBhcnJheXM6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgICAgICAgICBib29sczogT2JqZWN0LmNyZWF0ZShudWxsKSxcbiAgICAgICAgICAgIHN0cmluZ3M6IE9iamVjdC5jcmVhdGUobnVsbCksXG4gICAgICAgICAgICBudW1iZXJzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgY291bnRzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgbm9ybWFsaXplOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgY29uZmlnczogT2JqZWN0LmNyZWF0ZShudWxsKSxcbiAgICAgICAgICAgIG5hcmdzOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAgY29lcmNpb25zOiBPYmplY3QuY3JlYXRlKG51bGwpLFxuICAgICAgICAgICAga2V5czogW11cbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgbmVnYXRpdmUgPSAvXi0oWzAtOV0rKFxcLlswLTldKyk/fFxcLlswLTldKykkLztcbiAgICAgICAgY29uc3QgbmVnYXRlZEJvb2xlYW4gPSBuZXcgUmVnRXhwKCdeLS0nICsgY29uZmlndXJhdGlvblsnbmVnYXRpb24tcHJlZml4J10gKyAnKC4rKScpO1xuICAgICAgICBbXS5jb25jYXQob3B0cy5hcnJheSB8fCBbXSkuZmlsdGVyKEJvb2xlYW4pLmZvckVhY2goZnVuY3Rpb24gKG9wdCkge1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gdHlwZW9mIG9wdCA9PT0gJ29iamVjdCcgPyBvcHQua2V5IDogb3B0O1xuICAgICAgICAgICAgY29uc3QgYXNzaWdubWVudCA9IE9iamVjdC5rZXlzKG9wdCkubWFwKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhcnJheUZsYWdLZXlzID0ge1xuICAgICAgICAgICAgICAgICAgICBib29sZWFuOiAnYm9vbHMnLFxuICAgICAgICAgICAgICAgICAgICBzdHJpbmc6ICdzdHJpbmdzJyxcbiAgICAgICAgICAgICAgICAgICAgbnVtYmVyOiAnbnVtYmVycydcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHJldHVybiBhcnJheUZsYWdLZXlzW2tleV07XG4gICAgICAgICAgICB9KS5maWx0ZXIoQm9vbGVhbikucG9wKCk7XG4gICAgICAgICAgICBpZiAoYXNzaWdubWVudCkge1xuICAgICAgICAgICAgICAgIGZsYWdzW2Fzc2lnbm1lbnRdW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmxhZ3MuYXJyYXlzW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgIH0pO1xuICAgICAgICBbXS5jb25jYXQob3B0cy5ib29sZWFuIHx8IFtdKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBmbGFncy5ib29sc1trZXldID0gdHJ1ZTtcbiAgICAgICAgICAgIGZsYWdzLmtleXMucHVzaChrZXkpO1xuICAgICAgICB9KTtcbiAgICAgICAgW10uY29uY2F0KG9wdHMuc3RyaW5nIHx8IFtdKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBmbGFncy5zdHJpbmdzW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgIH0pO1xuICAgICAgICBbXS5jb25jYXQob3B0cy5udW1iZXIgfHwgW10pLmZpbHRlcihCb29sZWFuKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgIGZsYWdzLm51bWJlcnNba2V5XSA9IHRydWU7XG4gICAgICAgICAgICBmbGFncy5rZXlzLnB1c2goa2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIFtdLmNvbmNhdChvcHRzLmNvdW50IHx8IFtdKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBmbGFncy5jb3VudHNba2V5XSA9IHRydWU7XG4gICAgICAgICAgICBmbGFncy5rZXlzLnB1c2goa2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIFtdLmNvbmNhdChvcHRzLm5vcm1hbGl6ZSB8fCBbXSkuZmlsdGVyKEJvb2xlYW4pLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgZmxhZ3Mubm9ybWFsaXplW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodHlwZW9mIG9wdHMubmFyZyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKG9wdHMubmFyZykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MubmFyZ3Nba2V5XSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICBmbGFncy5rZXlzLnB1c2goa2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIG9wdHMuY29lcmNlID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMob3B0cy5jb2VyY2UpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MuY29lcmNpb25zW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3Mua2V5cy5wdXNoKGtleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBvcHRzLmNvbmZpZyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9wdHMuY29uZmlnKSB8fCB0eXBlb2Ygb3B0cy5jb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgW10uY29uY2F0KG9wdHMuY29uZmlnKS5maWx0ZXIoQm9vbGVhbikuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIGZsYWdzLmNvbmZpZ3Nba2V5XSA9IHRydWU7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0eXBlb2Ygb3B0cy5jb25maWcgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMob3B0cy5jb25maWcpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgfHwgdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGFncy5jb25maWdzW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGV4dGVuZEFsaWFzZXMob3B0cy5rZXksIGFsaWFzZXMsIG9wdHMuZGVmYXVsdCwgZmxhZ3MuYXJyYXlzKTtcbiAgICAgICAgT2JqZWN0LmtleXMoZGVmYXVsdHMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgKGZsYWdzLmFsaWFzZXNba2V5XSB8fCBbXSkuZm9yRWFjaChmdW5jdGlvbiAoYWxpYXMpIHtcbiAgICAgICAgICAgICAgICBkZWZhdWx0c1thbGlhc10gPSBkZWZhdWx0c1trZXldO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBsZXQgZXJyb3IgPSBudWxsO1xuICAgICAgICBjaGVja0NvbmZpZ3VyYXRpb24oKTtcbiAgICAgICAgbGV0IG5vdEZsYWdzID0gW107XG4gICAgICAgIGNvbnN0IGFyZ3YgPSBPYmplY3QuYXNzaWduKE9iamVjdC5jcmVhdGUobnVsbCksIHsgXzogW10gfSk7XG4gICAgICAgIGNvbnN0IGFyZ3ZSZXR1cm4gPSB7fTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBhcmcgPSBhcmdzW2ldO1xuICAgICAgICAgICAgY29uc3QgdHJ1bmNhdGVkQXJnID0gYXJnLnJlcGxhY2UoL14tezMsfS8sICctLS0nKTtcbiAgICAgICAgICAgIGxldCBicm9rZW47XG4gICAgICAgICAgICBsZXQga2V5O1xuICAgICAgICAgICAgbGV0IGxldHRlcnM7XG4gICAgICAgICAgICBsZXQgbTtcbiAgICAgICAgICAgIGxldCBuZXh0O1xuICAgICAgICAgICAgbGV0IHZhbHVlO1xuICAgICAgICAgICAgaWYgKGFyZyAhPT0gJy0tJyAmJiBpc1Vua25vd25PcHRpb25Bc0FyZyhhcmcpKSB7XG4gICAgICAgICAgICAgICAgcHVzaFBvc2l0aW9uYWwoYXJnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHRydW5jYXRlZEFyZy5tYXRjaCgvLS0tKyg9fCQpLykpIHtcbiAgICAgICAgICAgICAgICBwdXNoUG9zaXRpb25hbChhcmcpO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYXJnLm1hdGNoKC9eLS0uKz0vKSB8fCAoIWNvbmZpZ3VyYXRpb25bJ3Nob3J0LW9wdGlvbi1ncm91cHMnXSAmJiBhcmcubWF0Y2goL14tLis9LykpKSB7XG4gICAgICAgICAgICAgICAgbSA9IGFyZy5tYXRjaCgvXi0tPyhbXj1dKyk9KFtcXHNcXFNdKikkLyk7XG4gICAgICAgICAgICAgICAgaWYgKG0gIT09IG51bGwgJiYgQXJyYXkuaXNBcnJheShtKSAmJiBtLmxlbmd0aCA+PSAzKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMobVsxXSwgZmxhZ3MuYXJyYXlzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGVhdEFycmF5KGksIG1bMV0sIGFyZ3MsIG1bMl0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhtWzFdLCBmbGFncy5uYXJncykgIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpID0gZWF0TmFyZ3MoaSwgbVsxXSwgYXJncywgbVsyXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobVsxXSwgbVsyXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2gobmVnYXRlZEJvb2xlYW4pICYmIGNvbmZpZ3VyYXRpb25bJ2Jvb2xlYW4tbmVnYXRpb24nXSkge1xuICAgICAgICAgICAgICAgIG0gPSBhcmcubWF0Y2gobmVnYXRlZEJvb2xlYW4pO1xuICAgICAgICAgICAgICAgIGlmIChtICE9PSBudWxsICYmIEFycmF5LmlzQXJyYXkobSkgJiYgbS5sZW5ndGggPj0gMikge1xuICAgICAgICAgICAgICAgICAgICBrZXkgPSBtWzFdO1xuICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpID8gW2ZhbHNlXSA6IGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2goL14tLS4rLykgfHwgKCFjb25maWd1cmF0aW9uWydzaG9ydC1vcHRpb24tZ3JvdXBzJ10gJiYgYXJnLm1hdGNoKC9eLVteLV0rLykpKSB7XG4gICAgICAgICAgICAgICAgbSA9IGFyZy5tYXRjaCgvXi0tPyguKykvKTtcbiAgICAgICAgICAgICAgICBpZiAobSAhPT0gbnVsbCAmJiBBcnJheS5pc0FycmF5KG0pICYmIG0ubGVuZ3RoID49IDIpIHtcbiAgICAgICAgICAgICAgICAgICAga2V5ID0gbVsxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmFycmF5cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlYXRBcnJheShpLCBrZXksIGFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5hcmdzKSAhPT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlYXROYXJncyhpLCBrZXksIGFyZ3MpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV4dCA9IGFyZ3NbaSArIDFdO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5leHQgIT09IHVuZGVmaW5lZCAmJiAoIW5leHQubWF0Y2goL14tLykgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXh0Lm1hdGNoKG5lZ2F0aXZlKSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgvXih0cnVlfGZhbHNlKSQvLnRlc3QobmV4dCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBkZWZhdWx0VmFsdWUoa2V5KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2goL14tLlxcLi4rPS8pKSB7XG4gICAgICAgICAgICAgICAgbSA9IGFyZy5tYXRjaCgvXi0oW149XSspPShbXFxzXFxTXSopJC8pO1xuICAgICAgICAgICAgICAgIGlmIChtICE9PSBudWxsICYmIEFycmF5LmlzQXJyYXkobSkgJiYgbS5sZW5ndGggPj0gMykge1xuICAgICAgICAgICAgICAgICAgICBzZXRBcmcobVsxXSwgbVsyXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYXJnLm1hdGNoKC9eLS5cXC4uKy8pICYmICFhcmcubWF0Y2gobmVnYXRpdmUpKSB7XG4gICAgICAgICAgICAgICAgbmV4dCA9IGFyZ3NbaSArIDFdO1xuICAgICAgICAgICAgICAgIG0gPSBhcmcubWF0Y2goL14tKC5cXC4uKykvKTtcbiAgICAgICAgICAgICAgICBpZiAobSAhPT0gbnVsbCAmJiBBcnJheS5pc0FycmF5KG0pICYmIG0ubGVuZ3RoID49IDIpIHtcbiAgICAgICAgICAgICAgICAgICAga2V5ID0gbVsxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG5leHQgIT09IHVuZGVmaW5lZCAmJiAhbmV4dC5tYXRjaCgvXi0vKSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmJvb2xzKSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhrZXksIG5leHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaSsrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgZGVmYXVsdFZhbHVlKGtleSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYXJnLm1hdGNoKC9eLVteLV0rLykgJiYgIWFyZy5tYXRjaChuZWdhdGl2ZSkpIHtcbiAgICAgICAgICAgICAgICBsZXR0ZXJzID0gYXJnLnNsaWNlKDEsIC0xKS5zcGxpdCgnJyk7XG4gICAgICAgICAgICAgICAgYnJva2VuID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBsZXR0ZXJzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSBhcmcuc2xpY2UoaiArIDIpO1xuICAgICAgICAgICAgICAgICAgICBpZiAobGV0dGVyc1tqICsgMV0gJiYgbGV0dGVyc1tqICsgMV0gPT09ICc9Jykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBhcmcuc2xpY2UoaiArIDMpO1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5ID0gbGV0dGVyc1tqXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaSA9IGVhdEFycmF5KGksIGtleSwgYXJncywgdmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MubmFyZ3MpICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBlYXROYXJncyhpLCBrZXksIGFyZ3MsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhrZXksIHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGJyb2tlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAobmV4dCA9PT0gJy0nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobGV0dGVyc1tqXSwgbmV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoL1tBLVphLXpdLy50ZXN0KGxldHRlcnNbal0pICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAvXi0/XFxkKyhcXC5cXGQqKT8oZS0/XFxkKyk/JC8udGVzdChuZXh0KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tBbGxBbGlhc2VzKG5leHQsIGZsYWdzLmJvb2xzKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhsZXR0ZXJzW2pdLCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyb2tlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAobGV0dGVyc1tqICsgMV0gJiYgbGV0dGVyc1tqICsgMV0ubWF0Y2goL1xcVy8pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobGV0dGVyc1tqXSwgbmV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBicm9rZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcobGV0dGVyc1tqXSwgZGVmYXVsdFZhbHVlKGxldHRlcnNbal0pKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBrZXkgPSBhcmcuc2xpY2UoLTEpWzBdO1xuICAgICAgICAgICAgICAgIGlmICghYnJva2VuICYmIGtleSAhPT0gJy0nKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpID0gZWF0QXJyYXkoaSwga2V5LCBhcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5uYXJncykgIT09IGZhbHNlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpID0gZWF0TmFyZ3MoaSwga2V5LCBhcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5leHQgPSBhcmdzW2kgKyAxXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuZXh0ICE9PSB1bmRlZmluZWQgJiYgKCEvXigtfC0tKVteLV0vLnRlc3QobmV4dCkgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXh0Lm1hdGNoKG5lZ2F0aXZlKSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgvXih0cnVlfGZhbHNlKSQvLnRlc3QobmV4dCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBuZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKys7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCBkZWZhdWx0VmFsdWUoa2V5KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChhcmcubWF0Y2goL14tWzAtOV0kLykgJiZcbiAgICAgICAgICAgICAgICBhcmcubWF0Y2gobmVnYXRpdmUpICYmXG4gICAgICAgICAgICAgICAgY2hlY2tBbGxBbGlhc2VzKGFyZy5zbGljZSgxKSwgZmxhZ3MuYm9vbHMpKSB7XG4gICAgICAgICAgICAgICAga2V5ID0gYXJnLnNsaWNlKDEpO1xuICAgICAgICAgICAgICAgIHNldEFyZyhrZXksIGRlZmF1bHRWYWx1ZShrZXkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGFyZyA9PT0gJy0tJykge1xuICAgICAgICAgICAgICAgIG5vdEZsYWdzID0gYXJncy5zbGljZShpICsgMSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChjb25maWd1cmF0aW9uWydoYWx0LWF0LW5vbi1vcHRpb24nXSkge1xuICAgICAgICAgICAgICAgIG5vdEZsYWdzID0gYXJncy5zbGljZShpKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHB1c2hQb3NpdGlvbmFsKGFyZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYXBwbHlFbnZWYXJzKGFyZ3YsIHRydWUpO1xuICAgICAgICBhcHBseUVudlZhcnMoYXJndiwgZmFsc2UpO1xuICAgICAgICBzZXRDb25maWcoYXJndik7XG4gICAgICAgIHNldENvbmZpZ09iamVjdHMoKTtcbiAgICAgICAgYXBwbHlEZWZhdWx0c0FuZEFsaWFzZXMoYXJndiwgZmxhZ3MuYWxpYXNlcywgZGVmYXVsdHMsIHRydWUpO1xuICAgICAgICBhcHBseUNvZXJjaW9ucyhhcmd2KTtcbiAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ3NldC1wbGFjZWhvbGRlci1rZXknXSlcbiAgICAgICAgICAgIHNldFBsYWNlaG9sZGVyS2V5cyhhcmd2KTtcbiAgICAgICAgT2JqZWN0LmtleXMoZmxhZ3MuY291bnRzKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgIGlmICghaGFzS2V5KGFyZ3YsIGtleS5zcGxpdCgnLicpKSlcbiAgICAgICAgICAgICAgICBzZXRBcmcoa2V5LCAwKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChub3RGbGFnc09wdGlvbiAmJiBub3RGbGFncy5sZW5ndGgpXG4gICAgICAgICAgICBhcmd2W25vdEZsYWdzQXJndl0gPSBbXTtcbiAgICAgICAgbm90RmxhZ3MuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICBhcmd2W25vdEZsYWdzQXJndl0ucHVzaChrZXkpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ2NhbWVsLWNhc2UtZXhwYW5zaW9uJ10gJiYgY29uZmlndXJhdGlvblsnc3RyaXAtZGFzaGVkJ10pIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFyZ3YpLmZpbHRlcihrZXkgPT4ga2V5ICE9PSAnLS0nICYmIGtleS5pbmNsdWRlcygnLScpKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgZGVsZXRlIGFyZ3Zba2V5XTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25maWd1cmF0aW9uWydzdHJpcC1hbGlhc2VkJ10pIHtcbiAgICAgICAgICAgIFtdLmNvbmNhdCguLi5PYmplY3Qua2V5cyhhbGlhc2VzKS5tYXAoayA9PiBhbGlhc2VzW2tdKSkuZm9yRWFjaChhbGlhcyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ2NhbWVsLWNhc2UtZXhwYW5zaW9uJ10gJiYgYWxpYXMuaW5jbHVkZXMoJy0nKSkge1xuICAgICAgICAgICAgICAgICAgICBkZWxldGUgYXJndlthbGlhcy5zcGxpdCgnLicpLm1hcChwcm9wID0+IGNhbWVsQ2FzZShwcm9wKSkuam9pbignLicpXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGVsZXRlIGFyZ3ZbYWxpYXNdO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gcHVzaFBvc2l0aW9uYWwoYXJnKSB7XG4gICAgICAgICAgICBjb25zdCBtYXliZUNvZXJjZWROdW1iZXIgPSBtYXliZUNvZXJjZU51bWJlcignXycsIGFyZyk7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG1heWJlQ29lcmNlZE51bWJlciA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIG1heWJlQ29lcmNlZE51bWJlciA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICBhcmd2Ll8ucHVzaChtYXliZUNvZXJjZWROdW1iZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGVhdE5hcmdzKGksIGtleSwgYXJncywgYXJnQWZ0ZXJFcXVhbFNpZ24pIHtcbiAgICAgICAgICAgIGxldCBpaTtcbiAgICAgICAgICAgIGxldCB0b0VhdCA9IGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5hcmdzKTtcbiAgICAgICAgICAgIHRvRWF0ID0gdHlwZW9mIHRvRWF0ICE9PSAnbnVtYmVyJyB8fCBpc05hTih0b0VhdCkgPyAxIDogdG9FYXQ7XG4gICAgICAgICAgICBpZiAodG9FYXQgPT09IDApIHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzVW5kZWZpbmVkKGFyZ0FmdGVyRXF1YWxTaWduKSkge1xuICAgICAgICAgICAgICAgICAgICBlcnJvciA9IEVycm9yKF9fKCdBcmd1bWVudCB1bmV4cGVjdGVkIGZvcjogJXMnLCBrZXkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgZGVmYXVsdFZhbHVlKGtleSkpO1xuICAgICAgICAgICAgICAgIHJldHVybiBpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IGF2YWlsYWJsZSA9IGlzVW5kZWZpbmVkKGFyZ0FmdGVyRXF1YWxTaWduKSA/IDAgOiAxO1xuICAgICAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb25bJ25hcmdzLWVhdHMtb3B0aW9ucyddKSB7XG4gICAgICAgICAgICAgICAgaWYgKGFyZ3MubGVuZ3RoIC0gKGkgKyAxKSArIGF2YWlsYWJsZSA8IHRvRWF0KSB7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ05vdCBlbm91Z2ggYXJndW1lbnRzIGZvbGxvd2luZzogJXMnLCBrZXkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYXZhaWxhYmxlID0gdG9FYXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBmb3IgKGlpID0gaSArIDE7IGlpIDwgYXJncy5sZW5ndGg7IGlpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFhcmdzW2lpXS5tYXRjaCgvXi1bXjAtOV0vKSB8fCBhcmdzW2lpXS5tYXRjaChuZWdhdGl2ZSkgfHwgaXNVbmtub3duT3B0aW9uQXNBcmcoYXJnc1tpaV0pKVxuICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlKys7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoYXZhaWxhYmxlIDwgdG9FYXQpXG4gICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ05vdCBlbm91Z2ggYXJndW1lbnRzIGZvbGxvd2luZzogJXMnLCBrZXkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxldCBjb25zdW1lZCA9IE1hdGgubWluKGF2YWlsYWJsZSwgdG9FYXQpO1xuICAgICAgICAgICAgaWYgKCFpc1VuZGVmaW5lZChhcmdBZnRlckVxdWFsU2lnbikgJiYgY29uc3VtZWQgPiAwKSB7XG4gICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgYXJnQWZ0ZXJFcXVhbFNpZ24pO1xuICAgICAgICAgICAgICAgIGNvbnN1bWVkLS07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGlpID0gaSArIDE7IGlpIDwgKGNvbnN1bWVkICsgaSArIDEpOyBpaSsrKSB7XG4gICAgICAgICAgICAgICAgc2V0QXJnKGtleSwgYXJnc1tpaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIChpICsgY29uc3VtZWQpO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGVhdEFycmF5KGksIGtleSwgYXJncywgYXJnQWZ0ZXJFcXVhbFNpZ24pIHtcbiAgICAgICAgICAgIGxldCBhcmdzVG9TZXQgPSBbXTtcbiAgICAgICAgICAgIGxldCBuZXh0ID0gYXJnQWZ0ZXJFcXVhbFNpZ24gfHwgYXJnc1tpICsgMV07XG4gICAgICAgICAgICBjb25zdCBuYXJnc0NvdW50ID0gY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MubmFyZ3MpO1xuICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmJvb2xzKSAmJiAhKC9eKHRydWV8ZmFsc2UpJC8udGVzdChuZXh0KSkpIHtcbiAgICAgICAgICAgICAgICBhcmdzVG9TZXQucHVzaCh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzVW5kZWZpbmVkKG5leHQpIHx8XG4gICAgICAgICAgICAgICAgKGlzVW5kZWZpbmVkKGFyZ0FmdGVyRXF1YWxTaWduKSAmJiAvXi0vLnRlc3QobmV4dCkgJiYgIW5lZ2F0aXZlLnRlc3QobmV4dCkgJiYgIWlzVW5rbm93bk9wdGlvbkFzQXJnKG5leHQpKSkge1xuICAgICAgICAgICAgICAgIGlmIChkZWZhdWx0c1trZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVmVmFsID0gZGVmYXVsdHNba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgYXJnc1RvU2V0ID0gQXJyYXkuaXNBcnJheShkZWZWYWwpID8gZGVmVmFsIDogW2RlZlZhbF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc1VuZGVmaW5lZChhcmdBZnRlckVxdWFsU2lnbikpIHtcbiAgICAgICAgICAgICAgICAgICAgYXJnc1RvU2V0LnB1c2gocHJvY2Vzc1ZhbHVlKGtleSwgYXJnQWZ0ZXJFcXVhbFNpZ24pKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaWkgPSBpICsgMTsgaWkgPCBhcmdzLmxlbmd0aDsgaWkrKykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoKCFjb25maWd1cmF0aW9uWydncmVlZHktYXJyYXlzJ10gJiYgYXJnc1RvU2V0Lmxlbmd0aCA+IDApIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAobmFyZ3NDb3VudCAmJiB0eXBlb2YgbmFyZ3NDb3VudCA9PT0gJ251bWJlcicgJiYgYXJnc1RvU2V0Lmxlbmd0aCA+PSBuYXJnc0NvdW50KSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBuZXh0ID0gYXJnc1tpaV07XG4gICAgICAgICAgICAgICAgICAgIGlmICgvXi0vLnRlc3QobmV4dCkgJiYgIW5lZ2F0aXZlLnRlc3QobmV4dCkgJiYgIWlzVW5rbm93bk9wdGlvbkFzQXJnKG5leHQpKVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGkgPSBpaTtcbiAgICAgICAgICAgICAgICAgICAgYXJnc1RvU2V0LnB1c2gocHJvY2Vzc1ZhbHVlKGtleSwgbmV4dCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0eXBlb2YgbmFyZ3NDb3VudCA9PT0gJ251bWJlcicgJiYgKChuYXJnc0NvdW50ICYmIGFyZ3NUb1NldC5sZW5ndGggPCBuYXJnc0NvdW50KSB8fFxuICAgICAgICAgICAgICAgIChpc05hTihuYXJnc0NvdW50KSAmJiBhcmdzVG9TZXQubGVuZ3RoID09PSAwKSkpIHtcbiAgICAgICAgICAgICAgICBlcnJvciA9IEVycm9yKF9fKCdOb3QgZW5vdWdoIGFyZ3VtZW50cyBmb2xsb3dpbmc6ICVzJywga2V5KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXRBcmcoa2V5LCBhcmdzVG9TZXQpO1xuICAgICAgICAgICAgcmV0dXJuIGk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gc2V0QXJnKGtleSwgdmFsKSB7XG4gICAgICAgICAgICBpZiAoLy0vLnRlc3Qoa2V5KSAmJiBjb25maWd1cmF0aW9uWydjYW1lbC1jYXNlLWV4cGFuc2lvbiddKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYWxpYXMgPSBrZXkuc3BsaXQoJy4nKS5tYXAoZnVuY3Rpb24gKHByb3ApIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbWVsQ2FzZShwcm9wKTtcbiAgICAgICAgICAgICAgICB9KS5qb2luKCcuJyk7XG4gICAgICAgICAgICAgICAgYWRkTmV3QWxpYXMoa2V5LCBhbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHByb2Nlc3NWYWx1ZShrZXksIHZhbCk7XG4gICAgICAgICAgICBjb25zdCBzcGxpdEtleSA9IGtleS5zcGxpdCgnLicpO1xuICAgICAgICAgICAgc2V0S2V5KGFyZ3YsIHNwbGl0S2V5LCB2YWx1ZSk7XG4gICAgICAgICAgICBpZiAoZmxhZ3MuYWxpYXNlc1trZXldKSB7XG4gICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qga2V5UHJvcGVydGllcyA9IHguc3BsaXQoJy4nKTtcbiAgICAgICAgICAgICAgICAgICAgc2V0S2V5KGFyZ3YsIGtleVByb3BlcnRpZXMsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzcGxpdEtleS5sZW5ndGggPiAxICYmIGNvbmZpZ3VyYXRpb25bJ2RvdC1ub3RhdGlvbiddKSB7XG4gICAgICAgICAgICAgICAgKGZsYWdzLmFsaWFzZXNbc3BsaXRLZXlbMF1dIHx8IFtdKS5mb3JFYWNoKGZ1bmN0aW9uICh4KSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBrZXlQcm9wZXJ0aWVzID0geC5zcGxpdCgnLicpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhID0gW10uY29uY2F0KHNwbGl0S2V5KTtcbiAgICAgICAgICAgICAgICAgICAgYS5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgICBrZXlQcm9wZXJ0aWVzID0ga2V5UHJvcGVydGllcy5jb25jYXQoYSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghKGZsYWdzLmFsaWFzZXNba2V5XSB8fCBbXSkuaW5jbHVkZXMoa2V5UHJvcGVydGllcy5qb2luKCcuJykpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRLZXkoYXJndiwga2V5UHJvcGVydGllcywgdmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3Mubm9ybWFsaXplKSAmJiAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYXJyYXlzKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGtleXMgPSBba2V5XS5jb25jYXQoZmxhZ3MuYWxpYXNlc1trZXldIHx8IFtdKTtcbiAgICAgICAgICAgICAgICBrZXlzLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoYXJndlJldHVybiwga2V5LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgZ2V0KCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0KHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IG1peGluLm5vcm1hbGl6ZSh2YWx1ZSkgOiB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gYWRkTmV3QWxpYXMoa2V5LCBhbGlhcykge1xuICAgICAgICAgICAgaWYgKCEoZmxhZ3MuYWxpYXNlc1trZXldICYmIGZsYWdzLmFsaWFzZXNba2V5XS5sZW5ndGgpKSB7XG4gICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldID0gW2FsaWFzXTtcbiAgICAgICAgICAgICAgICBuZXdBbGlhc2VzW2FsaWFzXSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIShmbGFncy5hbGlhc2VzW2FsaWFzXSAmJiBmbGFncy5hbGlhc2VzW2FsaWFzXS5sZW5ndGgpKSB7XG4gICAgICAgICAgICAgICAgYWRkTmV3QWxpYXMoYWxpYXMsIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gcHJvY2Vzc1ZhbHVlKGtleSwgdmFsKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgICAgICAgICAodmFsWzBdID09PSBcIidcIiB8fCB2YWxbMF0gPT09ICdcIicpICYmXG4gICAgICAgICAgICAgICAgdmFsW3ZhbC5sZW5ndGggLSAxXSA9PT0gdmFsWzBdKSB7XG4gICAgICAgICAgICAgICAgdmFsID0gdmFsLnN1YnN0cmluZygxLCB2YWwubGVuZ3RoIC0gMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpIHx8IGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykpIHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpXG4gICAgICAgICAgICAgICAgICAgIHZhbCA9IHZhbCA9PT0gJ3RydWUnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IHZhbHVlID0gQXJyYXkuaXNBcnJheSh2YWwpXG4gICAgICAgICAgICAgICAgPyB2YWwubWFwKGZ1bmN0aW9uICh2KSB7IHJldHVybiBtYXliZUNvZXJjZU51bWJlcihrZXksIHYpOyB9KVxuICAgICAgICAgICAgICAgIDogbWF5YmVDb2VyY2VOdW1iZXIoa2V5LCB2YWwpO1xuICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykgJiYgKGlzVW5kZWZpbmVkKHZhbHVlKSB8fCB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IGluY3JlbWVudCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5vcm1hbGl6ZSkgJiYgY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYXJyYXlzKSkge1xuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0gdmFsLm1hcCgodmFsKSA9PiB7IHJldHVybiBtaXhpbi5ub3JtYWxpemUodmFsKTsgfSk7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IG1peGluLm5vcm1hbGl6ZSh2YWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIG1heWJlQ29lcmNlTnVtYmVyKGtleSwgdmFsdWUpIHtcbiAgICAgICAgICAgIGlmICghY29uZmlndXJhdGlvblsncGFyc2UtcG9zaXRpb25hbC1udW1iZXJzJ10gJiYga2V5ID09PSAnXycpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICAgICAgaWYgKCFjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5zdHJpbmdzKSAmJiAhY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNob3VsZENvZXJjZU51bWJlciA9IGxvb2tzTGlrZU51bWJlcih2YWx1ZSkgJiYgY29uZmlndXJhdGlvblsncGFyc2UtbnVtYmVycyddICYmIChOdW1iZXIuaXNTYWZlSW50ZWdlcihNYXRoLmZsb29yKHBhcnNlRmxvYXQoYCR7dmFsdWV9YCkpKSk7XG4gICAgICAgICAgICAgICAgaWYgKHNob3VsZENvZXJjZU51bWJlciB8fCAoIWlzVW5kZWZpbmVkKHZhbHVlKSAmJiBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5udW1iZXJzKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBOdW1iZXIodmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRDb25maWcoYXJndikge1xuICAgICAgICAgICAgY29uc3QgY29uZmlnTG9va3VwID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgICAgIGFwcGx5RGVmYXVsdHNBbmRBbGlhc2VzKGNvbmZpZ0xvb2t1cCwgZmxhZ3MuYWxpYXNlcywgZGVmYXVsdHMpO1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoZmxhZ3MuY29uZmlncykuZm9yRWFjaChmdW5jdGlvbiAoY29uZmlnS2V5KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29uZmlnUGF0aCA9IGFyZ3ZbY29uZmlnS2V5XSB8fCBjb25maWdMb29rdXBbY29uZmlnS2V5XTtcbiAgICAgICAgICAgICAgICBpZiAoY29uZmlnUGF0aCkge1xuICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGNvbmZpZyA9IG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXNvbHZlZENvbmZpZ1BhdGggPSBtaXhpbi5yZXNvbHZlKG1peGluLmN3ZCgpLCBjb25maWdQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc29sdmVDb25maWcgPSBmbGFncy5jb25maWdzW2NvbmZpZ0tleV07XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlc29sdmVDb25maWcgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maWcgPSByZXNvbHZlQ29uZmlnKHJlc29sdmVkQ29uZmlnUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZyA9IGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb25maWcgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGNvbmZpZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZyA9IG1peGluLnJlcXVpcmUocmVzb2x2ZWRDb25maWdQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHNldENvbmZpZ09iamVjdChjb25maWcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV4Lm5hbWUgPT09ICdQZXJtaXNzaW9uRGVuaWVkJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYXJndltjb25maWdLZXldKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ0ludmFsaWQgSlNPTiBjb25maWcgZmlsZTogJXMnLCBjb25maWdQYXRoKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRDb25maWdPYmplY3QoY29uZmlnLCBwcmV2KSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhjb25maWcpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gY29uZmlnW2tleV07XG4gICAgICAgICAgICAgICAgY29uc3QgZnVsbEtleSA9IHByZXYgPyBwcmV2ICsgJy4nICsga2V5IDoga2V5O1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICE9PSBudWxsICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSAmJiBjb25maWd1cmF0aW9uWydkb3Qtbm90YXRpb24nXSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRDb25maWdPYmplY3QodmFsdWUsIGZ1bGxLZXkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFoYXNLZXkoYXJndiwgZnVsbEtleS5zcGxpdCgnLicpKSB8fCAoY2hlY2tBbGxBbGlhc2VzKGZ1bGxLZXksIGZsYWdzLmFycmF5cykgJiYgY29uZmlndXJhdGlvblsnY29tYmluZS1hcnJheXMnXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldEFyZyhmdWxsS2V5LCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRDb25maWdPYmplY3RzKCkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBjb25maWdPYmplY3RzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIGNvbmZpZ09iamVjdHMuZm9yRWFjaChmdW5jdGlvbiAoY29uZmlnT2JqZWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIHNldENvbmZpZ09iamVjdChjb25maWdPYmplY3QpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGFwcGx5RW52VmFycyhhcmd2LCBjb25maWdPbmx5KSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGVudlByZWZpeCA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgcHJlZml4ID0gdHlwZW9mIGVudlByZWZpeCA9PT0gJ3N0cmluZycgPyBlbnZQcmVmaXggOiAnJztcbiAgICAgICAgICAgIGNvbnN0IGVudiA9IG1peGluLmVudigpO1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoZW52KS5mb3JFYWNoKGZ1bmN0aW9uIChlbnZWYXIpIHtcbiAgICAgICAgICAgICAgICBpZiAocHJlZml4ID09PSAnJyB8fCBlbnZWYXIubGFzdEluZGV4T2YocHJlZml4LCAwKSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXlzID0gZW52VmFyLnNwbGl0KCdfXycpLm1hcChmdW5jdGlvbiAoa2V5LCBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleSA9IGtleS5zdWJzdHJpbmcocHJlZml4Lmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FtZWxDYXNlKGtleSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBpZiAoKChjb25maWdPbmx5ICYmIGZsYWdzLmNvbmZpZ3Nba2V5cy5qb2luKCcuJyldKSB8fCAhY29uZmlnT25seSkgJiYgIWhhc0tleShhcmd2LCBrZXlzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V0QXJnKGtleXMuam9pbignLicpLCBlbnZbZW52VmFyXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBhcHBseUNvZXJjaW9ucyhhcmd2KSB7XG4gICAgICAgICAgICBsZXQgY29lcmNlO1xuICAgICAgICAgICAgY29uc3QgYXBwbGllZCA9IG5ldyBTZXQoKTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGFyZ3YpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgIGlmICghYXBwbGllZC5oYXMoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICBjb2VyY2UgPSBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5jb2VyY2lvbnMpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGNvZXJjZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IG1heWJlQ29lcmNlTnVtYmVyKGtleSwgY29lcmNlKGFyZ3Zba2V5XSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChbXS5jb25jYXQoZmxhZ3MuYWxpYXNlc1trZXldIHx8IFtdLCBrZXkpKS5mb3JFYWNoKGFsaSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpZWQuYWRkKGFsaSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3ZbYWxpXSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gZXJyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gc2V0UGxhY2Vob2xkZXJLZXlzKGFyZ3YpIHtcbiAgICAgICAgICAgIGZsYWdzLmtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKH5rZXkuaW5kZXhPZignLicpKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBhcmd2W2tleV0gPT09ICd1bmRlZmluZWQnKVxuICAgICAgICAgICAgICAgICAgICBhcmd2W2tleV0gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiBhcmd2O1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGFwcGx5RGVmYXVsdHNBbmRBbGlhc2VzKG9iaiwgYWxpYXNlcywgZGVmYXVsdHMsIGNhbkxvZyA9IGZhbHNlKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhkZWZhdWx0cykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgaWYgKCFoYXNLZXkob2JqLCBrZXkuc3BsaXQoJy4nKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0S2V5KG9iaiwga2V5LnNwbGl0KCcuJyksIGRlZmF1bHRzW2tleV0pO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2FuTG9nKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdGVkW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAoYWxpYXNlc1trZXldIHx8IFtdKS5mb3JFYWNoKGZ1bmN0aW9uICh4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzS2V5KG9iaiwgeC5zcGxpdCgnLicpKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRLZXkob2JqLCB4LnNwbGl0KCcuJyksIGRlZmF1bHRzW2tleV0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBoYXNLZXkob2JqLCBrZXlzKSB7XG4gICAgICAgICAgICBsZXQgbyA9IG9iajtcbiAgICAgICAgICAgIGlmICghY29uZmlndXJhdGlvblsnZG90LW5vdGF0aW9uJ10pXG4gICAgICAgICAgICAgICAga2V5cyA9IFtrZXlzLmpvaW4oJy4nKV07XG4gICAgICAgICAgICBrZXlzLnNsaWNlKDAsIC0xKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICAgICAgICBvID0gKG9ba2V5XSB8fCB7fSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IGtleXNba2V5cy5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgbyAhPT0gJ29iamVjdCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHJldHVybiBrZXkgaW4gbztcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBzZXRLZXkob2JqLCBrZXlzLCB2YWx1ZSkge1xuICAgICAgICAgICAgbGV0IG8gPSBvYmo7XG4gICAgICAgICAgICBpZiAoIWNvbmZpZ3VyYXRpb25bJ2RvdC1ub3RhdGlvbiddKVxuICAgICAgICAgICAgICAgIGtleXMgPSBba2V5cy5qb2luKCcuJyldO1xuICAgICAgICAgICAga2V5cy5zbGljZSgwLCAtMSkuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgICAgICAgICAga2V5ID0gc2FuaXRpemVLZXkoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG8gPT09ICdvYmplY3QnICYmIG9ba2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIG9ba2V5XSA9IHt9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG9ba2V5XSAhPT0gJ29iamVjdCcgfHwgQXJyYXkuaXNBcnJheShvW2tleV0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9ba2V5XSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ba2V5XS5wdXNoKHt9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9ba2V5XSA9IFtvW2tleV0sIHt9XTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBvID0gb1trZXldW29ba2V5XS5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG8gPSBvW2tleV07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBrZXkgPSBzYW5pdGl6ZUtleShrZXlzW2tleXMubGVuZ3RoIC0gMV0pO1xuICAgICAgICAgICAgY29uc3QgaXNUeXBlQXJyYXkgPSBjaGVja0FsbEFsaWFzZXMoa2V5cy5qb2luKCcuJyksIGZsYWdzLmFycmF5cyk7XG4gICAgICAgICAgICBjb25zdCBpc1ZhbHVlQXJyYXkgPSBBcnJheS5pc0FycmF5KHZhbHVlKTtcbiAgICAgICAgICAgIGxldCBkdXBsaWNhdGUgPSBjb25maWd1cmF0aW9uWydkdXBsaWNhdGUtYXJndW1lbnRzLWFycmF5J107XG4gICAgICAgICAgICBpZiAoIWR1cGxpY2F0ZSAmJiBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5uYXJncykpIHtcbiAgICAgICAgICAgICAgICBkdXBsaWNhdGUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGlmICgoIWlzVW5kZWZpbmVkKG9ba2V5XSkgJiYgZmxhZ3MubmFyZ3Nba2V5XSA9PT0gMSkgfHwgKEFycmF5LmlzQXJyYXkob1trZXldKSAmJiBvW2tleV0ubGVuZ3RoID09PSBmbGFncy5uYXJnc1trZXldKSkge1xuICAgICAgICAgICAgICAgICAgICBvW2tleV0gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHZhbHVlID09PSBpbmNyZW1lbnQoKSkge1xuICAgICAgICAgICAgICAgIG9ba2V5XSA9IGluY3JlbWVudChvW2tleV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoQXJyYXkuaXNBcnJheShvW2tleV0pKSB7XG4gICAgICAgICAgICAgICAgaWYgKGR1cGxpY2F0ZSAmJiBpc1R5cGVBcnJheSAmJiBpc1ZhbHVlQXJyYXkpIHtcbiAgICAgICAgICAgICAgICAgICAgb1trZXldID0gY29uZmlndXJhdGlvblsnZmxhdHRlbi1kdXBsaWNhdGUtYXJyYXlzJ10gPyBvW2tleV0uY29uY2F0KHZhbHVlKSA6IChBcnJheS5pc0FycmF5KG9ba2V5XVswXSkgPyBvW2tleV0gOiBbb1trZXldXSkuY29uY2F0KFt2YWx1ZV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmICghZHVwbGljYXRlICYmIEJvb2xlYW4oaXNUeXBlQXJyYXkpID09PSBCb29sZWFuKGlzVmFsdWVBcnJheSkpIHtcbiAgICAgICAgICAgICAgICAgICAgb1trZXldID0gdmFsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvW2tleV0gPSBvW2tleV0uY29uY2F0KFt2YWx1ZV0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG9ba2V5XSA9PT0gdW5kZWZpbmVkICYmIGlzVHlwZUFycmF5KSB7XG4gICAgICAgICAgICAgICAgb1trZXldID0gaXNWYWx1ZUFycmF5ID8gdmFsdWUgOiBbdmFsdWVdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZHVwbGljYXRlICYmICEob1trZXldID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICBjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5jb3VudHMpIHx8XG4gICAgICAgICAgICAgICAgY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpKSkge1xuICAgICAgICAgICAgICAgIG9ba2V5XSA9IFtvW2tleV0sIHZhbHVlXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG9ba2V5XSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGV4dGVuZEFsaWFzZXMoLi4uYXJncykge1xuICAgICAgICAgICAgYXJncy5mb3JFYWNoKGZ1bmN0aW9uIChvYmopIHtcbiAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhvYmogfHwge30pLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmxhZ3MuYWxpYXNlc1trZXldKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICBmbGFncy5hbGlhc2VzW2tleV0gPSBbXS5jb25jYXQoYWxpYXNlc1trZXldIHx8IFtdKTtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldLmNvbmNhdChrZXkpLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvLS8udGVzdCh4KSAmJiBjb25maWd1cmF0aW9uWydjYW1lbC1jYXNlLWV4cGFuc2lvbiddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYyA9IGNhbWVsQ2FzZSh4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYyAhPT0ga2V5ICYmIGZsYWdzLmFsaWFzZXNba2V5XS5pbmRleE9mKGMpID09PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGFncy5hbGlhc2VzW2tleV0ucHVzaChjKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3QWxpYXNlc1tjXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1trZXldLmNvbmNhdChrZXkpLmZvckVhY2goZnVuY3Rpb24gKHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh4Lmxlbmd0aCA+IDEgJiYgL1tBLVpdLy50ZXN0KHgpICYmIGNvbmZpZ3VyYXRpb25bJ2NhbWVsLWNhc2UtZXhwYW5zaW9uJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjID0gZGVjYW1lbGl6ZSh4LCAnLScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjICE9PSBrZXkgJiYgZmxhZ3MuYWxpYXNlc1trZXldLmluZGV4T2YoYykgPT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzLmFsaWFzZXNba2V5XS5wdXNoKGMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdBbGlhc2VzW2NdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBmbGFncy5hbGlhc2VzW2tleV0uZm9yRWFjaChmdW5jdGlvbiAoeCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxhZ3MuYWxpYXNlc1t4XSA9IFtrZXldLmNvbmNhdChmbGFncy5hbGlhc2VzW2tleV0uZmlsdGVyKGZ1bmN0aW9uICh5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHggIT09IHk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZykge1xuICAgICAgICAgICAgY29uc3QgdG9DaGVjayA9IFtdLmNvbmNhdChmbGFncy5hbGlhc2VzW2tleV0gfHwgW10sIGtleSk7XG4gICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoZmxhZyk7XG4gICAgICAgICAgICBjb25zdCBzZXRBbGlhcyA9IHRvQ2hlY2suZmluZChrZXkgPT4ga2V5cy5pbmNsdWRlcyhrZXkpKTtcbiAgICAgICAgICAgIHJldHVybiBzZXRBbGlhcyA/IGZsYWdbc2V0QWxpYXNdIDogZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gaGFzQW55RmxhZyhrZXkpIHtcbiAgICAgICAgICAgIGNvbnN0IGZsYWdzS2V5cyA9IE9iamVjdC5rZXlzKGZsYWdzKTtcbiAgICAgICAgICAgIGNvbnN0IHRvQ2hlY2sgPSBbXS5jb25jYXQoZmxhZ3NLZXlzLm1hcChrID0+IGZsYWdzW2tdKSk7XG4gICAgICAgICAgICByZXR1cm4gdG9DaGVjay5zb21lKGZ1bmN0aW9uIChmbGFnKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoZmxhZykgPyBmbGFnLmluY2x1ZGVzKGtleSkgOiBmbGFnW2tleV07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBoYXNGbGFnc01hdGNoaW5nKGFyZywgLi4ucGF0dGVybnMpIHtcbiAgICAgICAgICAgIGNvbnN0IHRvQ2hlY2sgPSBbXS5jb25jYXQoLi4ucGF0dGVybnMpO1xuICAgICAgICAgICAgcmV0dXJuIHRvQ2hlY2suc29tZShmdW5jdGlvbiAocGF0dGVybikge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gYXJnLm1hdGNoKHBhdHRlcm4pO1xuICAgICAgICAgICAgICAgIHJldHVybiBtYXRjaCAmJiBoYXNBbnlGbGFnKG1hdGNoWzFdKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGhhc0FsbFNob3J0RmxhZ3MoYXJnKSB7XG4gICAgICAgICAgICBpZiAoYXJnLm1hdGNoKG5lZ2F0aXZlKSB8fCAhYXJnLm1hdGNoKC9eLVteLV0rLykpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsZXQgaGFzQWxsRmxhZ3MgPSB0cnVlO1xuICAgICAgICAgICAgbGV0IG5leHQ7XG4gICAgICAgICAgICBjb25zdCBsZXR0ZXJzID0gYXJnLnNsaWNlKDEpLnNwbGl0KCcnKTtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgbGV0dGVycy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgIG5leHQgPSBhcmcuc2xpY2UoaiArIDIpO1xuICAgICAgICAgICAgICAgIGlmICghaGFzQW55RmxhZyhsZXR0ZXJzW2pdKSkge1xuICAgICAgICAgICAgICAgICAgICBoYXNBbGxGbGFncyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKChsZXR0ZXJzW2ogKyAxXSAmJiBsZXR0ZXJzW2ogKyAxXSA9PT0gJz0nKSB8fFxuICAgICAgICAgICAgICAgICAgICBuZXh0ID09PSAnLScgfHxcbiAgICAgICAgICAgICAgICAgICAgKC9bQS1aYS16XS8udGVzdChsZXR0ZXJzW2pdKSAmJiAvXi0/XFxkKyhcXC5cXGQqKT8oZS0/XFxkKyk/JC8udGVzdChuZXh0KSkgfHxcbiAgICAgICAgICAgICAgICAgICAgKGxldHRlcnNbaiArIDFdICYmIGxldHRlcnNbaiArIDFdLm1hdGNoKC9cXFcvKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGhhc0FsbEZsYWdzO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGlzVW5rbm93bk9wdGlvbkFzQXJnKGFyZykge1xuICAgICAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb25bJ3Vua25vd24tb3B0aW9ucy1hcy1hcmdzJ10gJiYgaXNVbmtub3duT3B0aW9uKGFyZyk7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gaXNVbmtub3duT3B0aW9uKGFyZykge1xuICAgICAgICAgICAgYXJnID0gYXJnLnJlcGxhY2UoL14tezMsfS8sICctLScpO1xuICAgICAgICAgICAgaWYgKGFyZy5tYXRjaChuZWdhdGl2ZSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGFzQWxsU2hvcnRGbGFncyhhcmcpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgZmxhZ1dpdGhFcXVhbHMgPSAvXi0rKFtePV0rPyk9W1xcc1xcU10qJC87XG4gICAgICAgICAgICBjb25zdCBub3JtYWxGbGFnID0gL14tKyhbXj1dKz8pJC87XG4gICAgICAgICAgICBjb25zdCBmbGFnRW5kaW5nSW5IeXBoZW4gPSAvXi0rKFtePV0rPyktJC87XG4gICAgICAgICAgICBjb25zdCBmbGFnRW5kaW5nSW5EaWdpdHMgPSAvXi0rKFtePV0rP1xcZCspJC87XG4gICAgICAgICAgICBjb25zdCBmbGFnRW5kaW5nSW5Ob25Xb3JkQ2hhcmFjdGVycyA9IC9eLSsoW149XSs/KVxcVysuKiQvO1xuICAgICAgICAgICAgcmV0dXJuICFoYXNGbGFnc01hdGNoaW5nKGFyZywgZmxhZ1dpdGhFcXVhbHMsIG5lZ2F0ZWRCb29sZWFuLCBub3JtYWxGbGFnLCBmbGFnRW5kaW5nSW5IeXBoZW4sIGZsYWdFbmRpbmdJbkRpZ2l0cywgZmxhZ0VuZGluZ0luTm9uV29yZENoYXJhY3RlcnMpO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGRlZmF1bHRWYWx1ZShrZXkpIHtcbiAgICAgICAgICAgIGlmICghY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3MuYm9vbHMpICYmXG4gICAgICAgICAgICAgICAgIWNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLmNvdW50cykgJiZcbiAgICAgICAgICAgICAgICBgJHtrZXl9YCBpbiBkZWZhdWx0cykge1xuICAgICAgICAgICAgICAgIHJldHVybiBkZWZhdWx0c1trZXldO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRGb3JUeXBlKGd1ZXNzVHlwZShrZXkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBkZWZhdWx0Rm9yVHlwZSh0eXBlKSB7XG4gICAgICAgICAgICBjb25zdCBkZWYgPSB7XG4gICAgICAgICAgICAgICAgW0RlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LkJPT0xFQU5dOiB0cnVlLFxuICAgICAgICAgICAgICAgIFtEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5TVFJJTkddOiAnJyxcbiAgICAgICAgICAgICAgICBbRGVmYXVsdFZhbHVlc0ZvclR5cGVLZXkuTlVNQkVSXTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIFtEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5BUlJBWV06IFtdXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmV0dXJuIGRlZlt0eXBlXTtcbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBndWVzc1R5cGUoa2V5KSB7XG4gICAgICAgICAgICBsZXQgdHlwZSA9IERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LkJPT0xFQU47XG4gICAgICAgICAgICBpZiAoY2hlY2tBbGxBbGlhc2VzKGtleSwgZmxhZ3Muc3RyaW5ncykpXG4gICAgICAgICAgICAgICAgdHlwZSA9IERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LlNUUklORztcbiAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm51bWJlcnMpKVxuICAgICAgICAgICAgICAgIHR5cGUgPSBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5OVU1CRVI7XG4gICAgICAgICAgICBlbHNlIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5ib29scykpXG4gICAgICAgICAgICAgICAgdHlwZSA9IERlZmF1bHRWYWx1ZXNGb3JUeXBlS2V5LkJPT0xFQU47XG4gICAgICAgICAgICBlbHNlIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKVxuICAgICAgICAgICAgICAgIHR5cGUgPSBEZWZhdWx0VmFsdWVzRm9yVHlwZUtleS5BUlJBWTtcbiAgICAgICAgICAgIHJldHVybiB0eXBlO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGlzVW5kZWZpbmVkKG51bSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bSA9PT0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGNoZWNrQ29uZmlndXJhdGlvbigpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGZsYWdzLmNvdW50cykuZmluZChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjaGVja0FsbEFsaWFzZXMoa2V5LCBmbGFncy5hcnJheXMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yID0gRXJyb3IoX18oJ0ludmFsaWQgY29uZmlndXJhdGlvbjogJXMsIG9wdHMuY291bnQgZXhjbHVkZXMgb3B0cy5hcnJheS4nLCBrZXkpKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrQWxsQWxpYXNlcyhrZXksIGZsYWdzLm5hcmdzKSkge1xuICAgICAgICAgICAgICAgICAgICBlcnJvciA9IEVycm9yKF9fKCdJbnZhbGlkIGNvbmZpZ3VyYXRpb246ICVzLCBvcHRzLmNvdW50IGV4Y2x1ZGVzIG9wdHMubmFyZy4nLCBrZXkpKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBhbGlhc2VzOiBPYmplY3QuYXNzaWduKHt9LCBmbGFncy5hbGlhc2VzKSxcbiAgICAgICAgICAgIGFyZ3Y6IE9iamVjdC5hc3NpZ24oYXJndlJldHVybiwgYXJndiksXG4gICAgICAgICAgICBjb25maWd1cmF0aW9uOiBjb25maWd1cmF0aW9uLFxuICAgICAgICAgICAgZGVmYXVsdGVkOiBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0ZWQpLFxuICAgICAgICAgICAgZXJyb3I6IGVycm9yLFxuICAgICAgICAgICAgbmV3QWxpYXNlczogT2JqZWN0LmFzc2lnbih7fSwgbmV3QWxpYXNlcylcbiAgICAgICAgfTtcbiAgICB9XG59XG5mdW5jdGlvbiBjb21iaW5lQWxpYXNlcyhhbGlhc2VzKSB7XG4gICAgY29uc3QgYWxpYXNBcnJheXMgPSBbXTtcbiAgICBjb25zdCBjb21iaW5lZCA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgbGV0IGNoYW5nZSA9IHRydWU7XG4gICAgT2JqZWN0LmtleXMoYWxpYXNlcykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgICAgIGFsaWFzQXJyYXlzLnB1c2goW10uY29uY2F0KGFsaWFzZXNba2V5XSwga2V5KSk7XG4gICAgfSk7XG4gICAgd2hpbGUgKGNoYW5nZSkge1xuICAgICAgICBjaGFuZ2UgPSBmYWxzZTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhbGlhc0FycmF5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgaWkgPSBpICsgMTsgaWkgPCBhbGlhc0FycmF5cy5sZW5ndGg7IGlpKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnRlcnNlY3QgPSBhbGlhc0FycmF5c1tpXS5maWx0ZXIoZnVuY3Rpb24gKHYpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFsaWFzQXJyYXlzW2lpXS5pbmRleE9mKHYpICE9PSAtMTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAoaW50ZXJzZWN0Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBhbGlhc0FycmF5c1tpXSA9IGFsaWFzQXJyYXlzW2ldLmNvbmNhdChhbGlhc0FycmF5c1tpaV0pO1xuICAgICAgICAgICAgICAgICAgICBhbGlhc0FycmF5cy5zcGxpY2UoaWksIDEpO1xuICAgICAgICAgICAgICAgICAgICBjaGFuZ2UgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgYWxpYXNBcnJheXMuZm9yRWFjaChmdW5jdGlvbiAoYWxpYXNBcnJheSkge1xuICAgICAgICBhbGlhc0FycmF5ID0gYWxpYXNBcnJheS5maWx0ZXIoZnVuY3Rpb24gKHYsIGksIHNlbGYpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxmLmluZGV4T2YodikgPT09IGk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBsYXN0QWxpYXMgPSBhbGlhc0FycmF5LnBvcCgpO1xuICAgICAgICBpZiAobGFzdEFsaWFzICE9PSB1bmRlZmluZWQgJiYgdHlwZW9mIGxhc3RBbGlhcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIGNvbWJpbmVkW2xhc3RBbGlhc10gPSBhbGlhc0FycmF5O1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbWJpbmVkO1xufVxuZnVuY3Rpb24gaW5jcmVtZW50KG9yaWcpIHtcbiAgICByZXR1cm4gb3JpZyAhPT0gdW5kZWZpbmVkID8gb3JpZyArIDEgOiAxO1xufVxuZnVuY3Rpb24gc2FuaXRpemVLZXkoa2V5KSB7XG4gICAgaWYgKGtleSA9PT0gJ19fcHJvdG9fXycpXG4gICAgICAgIHJldHVybiAnX19fcHJvdG9fX18nO1xuICAgIHJldHVybiBrZXk7XG59XG5cbmNvbnN0IG1pbk5vZGVWZXJzaW9uID0gKHByb2Nlc3MgJiYgcHJvY2Vzcy5lbnYgJiYgcHJvY2Vzcy5lbnYuWUFSR1NfTUlOX05PREVfVkVSU0lPTilcbiAgICA/IE51bWJlcihwcm9jZXNzLmVudi5ZQVJHU19NSU5fTk9ERV9WRVJTSU9OKVxuICAgIDogMTA7XG5pZiAocHJvY2VzcyAmJiBwcm9jZXNzLnZlcnNpb24pIHtcbiAgICBjb25zdCBtYWpvciA9IE51bWJlcihwcm9jZXNzLnZlcnNpb24ubWF0Y2goL3YoW14uXSspLylbMV0pO1xuICAgIGlmIChtYWpvciA8IG1pbk5vZGVWZXJzaW9uKSB7XG4gICAgICAgIHRocm93IEVycm9yKGB5YXJncyBwYXJzZXIgc3VwcG9ydHMgYSBtaW5pbXVtIE5vZGUuanMgdmVyc2lvbiBvZiAke21pbk5vZGVWZXJzaW9ufS4gUmVhZCBvdXIgdmVyc2lvbiBzdXBwb3J0IHBvbGljeTogaHR0cHM6Ly9naXRodWIuY29tL3lhcmdzL3lhcmdzLXBhcnNlciNzdXBwb3J0ZWQtbm9kZWpzLXZlcnNpb25zYCk7XG4gICAgfVxufVxuY29uc3QgZW52ID0gcHJvY2VzcyA/IHByb2Nlc3MuZW52IDoge307XG5jb25zdCBwYXJzZXIgPSBuZXcgWWFyZ3NQYXJzZXIoe1xuICAgIGN3ZDogcHJvY2Vzcy5jd2QsXG4gICAgZW52OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBlbnY7XG4gICAgfSxcbiAgICBmb3JtYXQ6IHV0aWwuZm9ybWF0LFxuICAgIG5vcm1hbGl6ZTogcGF0aC5ub3JtYWxpemUsXG4gICAgcmVzb2x2ZTogcGF0aC5yZXNvbHZlLFxuICAgIHJlcXVpcmU6IChwYXRoKSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgcmVxdWlyZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIHJldHVybiByZXF1aXJlKHBhdGgpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHBhdGgubWF0Y2goL1xcLmpzb24kLykpIHtcbiAgICAgICAgICAgIHJldHVybiBmcy5yZWFkRmlsZVN5bmMocGF0aCwgJ3V0ZjgnKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdvbmx5IC5qc29uIGNvbmZpZyBmaWxlcyBhcmUgc3VwcG9ydGVkIGluIEVTTScpO1xuICAgICAgICB9XG4gICAgfVxufSk7XG5jb25zdCB5YXJnc1BhcnNlciA9IGZ1bmN0aW9uIFBhcnNlcihhcmdzLCBvcHRzKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gcGFyc2VyLnBhcnNlKGFyZ3Muc2xpY2UoKSwgb3B0cyk7XG4gICAgcmV0dXJuIHJlc3VsdC5hcmd2O1xufTtcbnlhcmdzUGFyc2VyLmRldGFpbGVkID0gZnVuY3Rpb24gKGFyZ3MsIG9wdHMpIHtcbiAgICByZXR1cm4gcGFyc2VyLnBhcnNlKGFyZ3Muc2xpY2UoKSwgb3B0cyk7XG59O1xueWFyZ3NQYXJzZXIuY2FtZWxDYXNlID0gY2FtZWxDYXNlO1xueWFyZ3NQYXJzZXIuZGVjYW1lbGl6ZSA9IGRlY2FtZWxpemU7XG55YXJnc1BhcnNlci5sb29rc0xpa2VOdW1iZXIgPSBsb29rc0xpa2VOdW1iZXI7XG5cbm1vZHVsZS5leHBvcnRzID0geWFyZ3NQYXJzZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5tb2R1bGUuZXhwb3J0cyA9ICh7b25seUZpcnN0ID0gZmFsc2V9ID0ge30pID0+IHtcblx0Y29uc3QgcGF0dGVybiA9IFtcblx0XHQnW1xcXFx1MDAxQlxcXFx1MDA5Ql1bW1xcXFxdKCkjOz9dKig/Oig/Oig/Oig/OjtbLWEtekEtWlxcXFxkXFxcXC8jJi46PT8lQH5fXSspKnxbYS16QS1aXFxcXGRdKyg/OjtbLWEtekEtWlxcXFxkXFxcXC8jJi46PT8lQH5fXSopKik/XFxcXHUwMDA3KScsXG5cdFx0Jyg/Oig/OlxcXFxkezEsNH0oPzo7XFxcXGR7MCw0fSkqKT9bXFxcXGRBLVBSLVRaY2YtbnRxcnk9Pjx+XSkpJ1xuXHRdLmpvaW4oJ3wnKTtcblxuXHRyZXR1cm4gbmV3IFJlZ0V4cChwYXR0ZXJuLCBvbmx5Rmlyc3QgPyB1bmRlZmluZWQgOiAnZycpO1xufTtcbiIsICIndXNlIHN0cmljdCc7XG5jb25zdCBhbnNpUmVnZXggPSByZXF1aXJlKCdhbnNpLXJlZ2V4Jyk7XG5cbm1vZHVsZS5leHBvcnRzID0gc3RyaW5nID0+IHR5cGVvZiBzdHJpbmcgPT09ICdzdHJpbmcnID8gc3RyaW5nLnJlcGxhY2UoYW5zaVJlZ2V4KCksICcnKSA6IHN0cmluZztcbiIsICIvKiBlc2xpbnQtZGlzYWJsZSB5b2RhICovXG4ndXNlIHN0cmljdCc7XG5cbmNvbnN0IGlzRnVsbHdpZHRoQ29kZVBvaW50ID0gY29kZVBvaW50ID0+IHtcblx0aWYgKE51bWJlci5pc05hTihjb2RlUG9pbnQpKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0Ly8gQ29kZSBwb2ludHMgYXJlIGRlcml2ZWQgZnJvbTpcblx0Ly8gaHR0cDovL3d3dy51bml4Lm9yZy9QdWJsaWMvVU5JREFUQS9FYXN0QXNpYW5XaWR0aC50eHRcblx0aWYgKFxuXHRcdGNvZGVQb2ludCA+PSAweDExMDAgJiYgKFxuXHRcdFx0Y29kZVBvaW50IDw9IDB4MTE1RiB8fCAvLyBIYW5ndWwgSmFtb1xuXHRcdFx0Y29kZVBvaW50ID09PSAweDIzMjkgfHwgLy8gTEVGVC1QT0lOVElORyBBTkdMRSBCUkFDS0VUXG5cdFx0XHRjb2RlUG9pbnQgPT09IDB4MjMyQSB8fCAvLyBSSUdIVC1QT0lOVElORyBBTkdMRSBCUkFDS0VUXG5cdFx0XHQvLyBDSksgUmFkaWNhbHMgU3VwcGxlbWVudCAuLiBFbmNsb3NlZCBDSksgTGV0dGVycyBhbmQgTW9udGhzXG5cdFx0XHQoMHgyRTgwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHgzMjQ3ICYmIGNvZGVQb2ludCAhPT0gMHgzMDNGKSB8fFxuXHRcdFx0Ly8gRW5jbG9zZWQgQ0pLIExldHRlcnMgYW5kIE1vbnRocyAuLiBDSksgVW5pZmllZCBJZGVvZ3JhcGhzIEV4dGVuc2lvbiBBXG5cdFx0XHQoMHgzMjUwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHg0REJGKSB8fFxuXHRcdFx0Ly8gQ0pLIFVuaWZpZWQgSWRlb2dyYXBocyAuLiBZaSBSYWRpY2Fsc1xuXHRcdFx0KDB4NEUwMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4QTRDNikgfHxcblx0XHRcdC8vIEhhbmd1bCBKYW1vIEV4dGVuZGVkLUFcblx0XHRcdCgweEE5NjAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweEE5N0MpIHx8XG5cdFx0XHQvLyBIYW5ndWwgU3lsbGFibGVzXG5cdFx0XHQoMHhBQzAwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHhEN0EzKSB8fFxuXHRcdFx0Ly8gQ0pLIENvbXBhdGliaWxpdHkgSWRlb2dyYXBoc1xuXHRcdFx0KDB4RjkwMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4RkFGRikgfHxcblx0XHRcdC8vIFZlcnRpY2FsIEZvcm1zXG5cdFx0XHQoMHhGRTEwIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHhGRTE5KSB8fFxuXHRcdFx0Ly8gQ0pLIENvbXBhdGliaWxpdHkgRm9ybXMgLi4gU21hbGwgRm9ybSBWYXJpYW50c1xuXHRcdFx0KDB4RkUzMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4RkU2QikgfHxcblx0XHRcdC8vIEhhbGZ3aWR0aCBhbmQgRnVsbHdpZHRoIEZvcm1zXG5cdFx0XHQoMHhGRjAxIDw9IGNvZGVQb2ludCAmJiBjb2RlUG9pbnQgPD0gMHhGRjYwKSB8fFxuXHRcdFx0KDB4RkZFMCA8PSBjb2RlUG9pbnQgJiYgY29kZVBvaW50IDw9IDB4RkZFNikgfHxcblx0XHRcdC8vIEthbmEgU3VwcGxlbWVudFxuXHRcdFx0KDB4MUIwMDAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweDFCMDAxKSB8fFxuXHRcdFx0Ly8gRW5jbG9zZWQgSWRlb2dyYXBoaWMgU3VwcGxlbWVudFxuXHRcdFx0KDB4MUYyMDAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweDFGMjUxKSB8fFxuXHRcdFx0Ly8gQ0pLIFVuaWZpZWQgSWRlb2dyYXBocyBFeHRlbnNpb24gQiAuLiBUZXJ0aWFyeSBJZGVvZ3JhcGhpYyBQbGFuZVxuXHRcdFx0KDB4MjAwMDAgPD0gY29kZVBvaW50ICYmIGNvZGVQb2ludCA8PSAweDNGRkZEKVxuXHRcdClcblx0KSB7XG5cdFx0cmV0dXJuIHRydWU7XG5cdH1cblxuXHRyZXR1cm4gZmFsc2U7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGlzRnVsbHdpZHRoQ29kZVBvaW50O1xubW9kdWxlLmV4cG9ydHMuZGVmYXVsdCA9IGlzRnVsbHdpZHRoQ29kZVBvaW50O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uICgpIHtcbiAgLy8gaHR0cHM6Ly9tdGhzLmJlL2Vtb2ppXG4gIHJldHVybiAvXFx1RDgzQ1xcdURGRjRcXHVEQjQwXFx1REM2N1xcdURCNDBcXHVEQzYyKD86XFx1REI0MFxcdURDNjVcXHVEQjQwXFx1REM2RVxcdURCNDBcXHVEQzY3fFxcdURCNDBcXHVEQzczXFx1REI0MFxcdURDNjNcXHVEQjQwXFx1REM3NHxcXHVEQjQwXFx1REM3N1xcdURCNDBcXHVEQzZDXFx1REI0MFxcdURDNzMpXFx1REI0MFxcdURDN0Z8XFx1RDgzRFxcdURDNjgoPzpcXHVEODNDXFx1REZGQ1xcdTIwMEQoPzpcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNEXFx1REM2OFxcdUQ4M0NcXHVERkZCfFxcdUQ4M0NbXFx1REYzRVxcdURGNzNcXHVERjkzXFx1REZBNFxcdURGQThcXHVERkVCXFx1REZFRF18XFx1RDgzRFtcXHVEQ0JCXFx1RENCQ1xcdUREMjdcXHVERDJDXFx1REU4MFxcdURFOTJdfFxcdUQ4M0VbXFx1RERBRi1cXHVEREIzXFx1RERCQ1xcdUREQkRdKXxcXHVEODNDXFx1REZGRlxcdTIwMEQoPzpcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNEXFx1REM2OCg/OlxcdUQ4M0NbXFx1REZGQi1cXHVERkZFXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZFXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkRdKXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1RDgzQ1xcdURGRkRcXHUyMDBEKD86XFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjgoPzpcXHVEODNDW1xcdURGRkJcXHVERkZDXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdTIwMEQoPzpcXHUyNzY0XFx1RkUwRlxcdTIwMEQoPzpcXHVEODNEXFx1REM4QlxcdTIwMEQpP1xcdUQ4M0RcXHVEQzY4fCg/OlxcdUQ4M0RbXFx1REM2OFxcdURDNjldKVxcdTIwMEQoPzpcXHVEODNEXFx1REM2NlxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2N1xcdTIwMEQoPzpcXHVEODNEW1xcdURDNjZcXHVEQzY3XSkpfFxcdUQ4M0RcXHVEQzY2XFx1MjAwRFxcdUQ4M0RcXHVEQzY2fFxcdUQ4M0RcXHVEQzY3XFx1MjAwRCg/OlxcdUQ4M0RbXFx1REM2NlxcdURDNjddKXwoPzpcXHVEODNEW1xcdURDNjhcXHVEQzY5XSlcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY2XFx1REM2N10pfFtcXHUyNjk1XFx1MjY5NlxcdTI3MDhdXFx1RkUwRnxcXHVEODNEW1xcdURDNjZcXHVEQzY3XXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8KD86XFx1RDgzQ1xcdURGRkJcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkZcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkVcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkRcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkNcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF0pXFx1RkUwRnxcXHVEODNDXFx1REZGQlxcdTIwMEQoPzpcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKXwoPzpcXHVEODNFXFx1REREMVxcdUQ4M0NcXHVERkZCXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxfFxcdUQ4M0RcXHVEQzY5XFx1RDgzQ1xcdURGRkNcXHUyMDBEXFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjkpXFx1RDgzQ1xcdURGRkJ8XFx1RDgzRVxcdURERDEoPzpcXHVEODNDXFx1REZGRlxcdTIwMERcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNFXFx1REREMSg/OlxcdUQ4M0NbXFx1REZGQi1cXHVERkZGXSl8XFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxKXwoPzpcXHVEODNFXFx1REREMVxcdUQ4M0NcXHVERkZFXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxfFxcdUQ4M0RcXHVEQzY5XFx1RDgzQ1xcdURGRkZcXHUyMDBEXFx1RDgzRVxcdUREMURcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY4XFx1REM2OV0pKSg/OlxcdUQ4M0NbXFx1REZGQi1cXHVERkZFXSl8KD86XFx1RDgzRVxcdURERDFcXHVEODNDXFx1REZGQ1xcdTIwMERcXHVEODNFXFx1REQxRFxcdTIwMERcXHVEODNFXFx1REREMXxcXHVEODNEXFx1REM2OVxcdUQ4M0NcXHVERkZEXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY5KSg/OlxcdUQ4M0NbXFx1REZGQlxcdURGRkNdKXxcXHVEODNEXFx1REM2OSg/OlxcdUQ4M0NcXHVERkZFXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkRcXHVERkZGXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZDXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZCXFx1REZGRC1cXHVERkZGXSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZCXFx1MjAwRCg/OlxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0RcXHVEQzY4KD86XFx1RDgzQ1tcXHVERkZDLVxcdURGRkZdKXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1RDgzQ1xcdURGRkRcXHUyMDBEKD86XFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjgoPzpcXHVEODNDW1xcdURGRkJcXHVERkZDXFx1REZGRVxcdURGRkZdKXxcXHVEODNDW1xcdURGM0VcXHVERjczXFx1REY5M1xcdURGQTRcXHVERkE4XFx1REZFQlxcdURGRURdfFxcdUQ4M0RbXFx1RENCQlxcdURDQkNcXHVERDI3XFx1REQyQ1xcdURFODBcXHVERTkyXXxcXHVEODNFW1xcdUREQUYtXFx1RERCM1xcdUREQkNcXHVEREJEXSl8XFx1MjAwRCg/OlxcdTI3NjRcXHVGRTBGXFx1MjAwRCg/OlxcdUQ4M0RcXHVEQzhCXFx1MjAwRCg/OlxcdUQ4M0RbXFx1REM2OFxcdURDNjldKXxcXHVEODNEW1xcdURDNjhcXHVEQzY5XSl8XFx1RDgzQ1tcXHVERjNFXFx1REY3M1xcdURGOTNcXHVERkE0XFx1REZBOFxcdURGRUJcXHVERkVEXXxcXHVEODNEW1xcdURDQkJcXHVEQ0JDXFx1REQyN1xcdUREMkNcXHVERTgwXFx1REU5Ml18XFx1RDgzRVtcXHVEREFGLVxcdUREQjNcXHVEREJDXFx1RERCRF0pfFxcdUQ4M0NcXHVERkZGXFx1MjAwRCg/OlxcdUQ4M0NbXFx1REYzRVxcdURGNzNcXHVERjkzXFx1REZBNFxcdURGQThcXHVERkVCXFx1REZFRF18XFx1RDgzRFtcXHVEQ0JCXFx1RENCQ1xcdUREMjdcXHVERDJDXFx1REU4MFxcdURFOTJdfFxcdUQ4M0VbXFx1RERBRi1cXHVEREIzXFx1RERCQ1xcdUREQkRdKSl8XFx1RDgzRFxcdURDNjlcXHUyMDBEXFx1RDgzRFxcdURDNjlcXHUyMDBEKD86XFx1RDgzRFxcdURDNjZcXHUyMDBEXFx1RDgzRFxcdURDNjZ8XFx1RDgzRFxcdURDNjdcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY2XFx1REM2N10pKXwoPzpcXHVEODNFXFx1REREMVxcdUQ4M0NcXHVERkZEXFx1MjAwRFxcdUQ4M0VcXHVERDFEXFx1MjAwRFxcdUQ4M0VcXHVEREQxfFxcdUQ4M0RcXHVEQzY5XFx1RDgzQ1xcdURGRkVcXHUyMDBEXFx1RDgzRVxcdUREMURcXHUyMDBEXFx1RDgzRFxcdURDNjkpKD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkRdKXxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2NlxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2OVxcdTIwMEQoPzpcXHVEODNEW1xcdURDNjZcXHVEQzY3XSl8KD86XFx1RDgzRFxcdURDNDFcXHVGRTBGXFx1MjAwRFxcdUQ4M0RcXHVEREU4fFxcdUQ4M0RcXHVEQzY5KD86XFx1RDgzQ1xcdURGRkZcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkVcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkNcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkJcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1RDgzQ1xcdURGRkRcXHUyMDBEW1xcdTI2OTVcXHUyNjk2XFx1MjcwOF18XFx1MjAwRFtcXHUyNjk1XFx1MjY5NlxcdTI3MDhdKXwoPzooPzpcXHUyNkY5fFxcdUQ4M0NbXFx1REZDQlxcdURGQ0NdfFxcdUQ4M0RcXHVERDc1KVxcdUZFMEZ8XFx1RDgzRFxcdURDNkZ8XFx1RDgzRVtcXHVERDNDXFx1RERERVxcdUREREZdKVxcdTIwMERbXFx1MjY0MFxcdTI2NDJdfCg/OlxcdTI2Rjl8XFx1RDgzQ1tcXHVERkNCXFx1REZDQ118XFx1RDgzRFxcdURENzUpKD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKVxcdTIwMERbXFx1MjY0MFxcdTI2NDJdfCg/OlxcdUQ4M0NbXFx1REZDM1xcdURGQzRcXHVERkNBXXxcXHVEODNEW1xcdURDNkVcXHVEQzcxXFx1REM3M1xcdURDNzdcXHVEQzgxXFx1REM4MlxcdURDODZcXHVEQzg3XFx1REU0NS1cXHVERTQ3XFx1REU0QlxcdURFNERcXHVERTRFXFx1REVBM1xcdURFQjQtXFx1REVCNl18XFx1RDgzRVtcXHVERDI2XFx1REQzNy1cXHVERDM5XFx1REQzRFxcdUREM0VcXHVEREI4XFx1RERCOVxcdUREQ0QtXFx1RERDRlxcdURERDYtXFx1RERERF0pKD86KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKVxcdTIwMERbXFx1MjY0MFxcdTI2NDJdfFxcdTIwMERbXFx1MjY0MFxcdTI2NDJdKXxcXHVEODNDXFx1REZGNFxcdTIwMERcXHUyNjIwKVxcdUZFMEZ8XFx1RDgzRFxcdURDNjlcXHUyMDBEXFx1RDgzRFxcdURDNjdcXHUyMDBEKD86XFx1RDgzRFtcXHVEQzY2XFx1REM2N10pfFxcdUQ4M0NcXHVERkYzXFx1RkUwRlxcdTIwMERcXHVEODNDXFx1REYwOHxcXHVEODNEXFx1REMxNVxcdTIwMERcXHVEODNFXFx1RERCQXxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2NnxcXHVEODNEXFx1REM2OVxcdTIwMERcXHVEODNEXFx1REM2N3xcXHVEODNDXFx1RERGRFxcdUQ4M0NcXHVEREYwfFxcdUQ4M0NcXHVEREY0XFx1RDgzQ1xcdURERjJ8XFx1RDgzQ1xcdURERjZcXHVEODNDXFx1RERFNnxbI1xcKjAtOV1cXHVGRTBGXFx1MjBFM3xcXHVEODNDXFx1RERFNyg/OlxcdUQ4M0NbXFx1RERFNlxcdURERTdcXHVEREU5LVxcdURERUZcXHVEREYxLVxcdURERjRcXHVEREY2LVxcdURERjlcXHVEREZCXFx1RERGQ1xcdURERkVcXHVEREZGXSl8XFx1RDgzQ1xcdURERjkoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFOVxcdURERUItXFx1RERFRFxcdURERUYtXFx1RERGNFxcdURERjdcXHVEREY5XFx1RERGQlxcdURERkNcXHVEREZGXSl8XFx1RDgzQ1xcdURERUEoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFQVxcdURERUNcXHVEREVEXFx1RERGNy1cXHVEREZBXSl8XFx1RDgzRVxcdURERDEoPzpcXHVEODNDW1xcdURGRkItXFx1REZGRl0pfFxcdUQ4M0NcXHVEREY3KD86XFx1RDgzQ1tcXHVEREVBXFx1RERGNFxcdURERjhcXHVEREZBXFx1RERGQ10pfFxcdUQ4M0RcXHVEQzY5KD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKXxcXHVEODNDXFx1RERGMig/OlxcdUQ4M0NbXFx1RERFNlxcdURERTgtXFx1RERFRFxcdURERjAtXFx1RERGRl0pfFxcdUQ4M0NcXHVEREU2KD86XFx1RDgzQ1tcXHVEREU4LVxcdURERUNcXHVEREVFXFx1RERGMVxcdURERjJcXHVEREY0XFx1RERGNi1cXHVEREZBXFx1RERGQ1xcdURERkRcXHVEREZGXSl8XFx1RDgzQ1xcdURERjAoPzpcXHVEODNDW1xcdURERUFcXHVEREVDLVxcdURERUVcXHVEREYyXFx1RERGM1xcdURERjVcXHVEREY3XFx1RERGQ1xcdURERkVcXHVEREZGXSl8XFx1RDgzQ1xcdURERUQoPzpcXHVEODNDW1xcdURERjBcXHVEREYyXFx1RERGM1xcdURERjdcXHVEREY5XFx1RERGQV0pfFxcdUQ4M0NcXHVEREU5KD86XFx1RDgzQ1tcXHVEREVBXFx1RERFQ1xcdURERUZcXHVEREYwXFx1RERGMlxcdURERjRcXHVEREZGXSl8XFx1RDgzQ1xcdURERkUoPzpcXHVEODNDW1xcdURERUFcXHVEREY5XSl8XFx1RDgzQ1xcdURERUMoPzpcXHVEODNDW1xcdURERTZcXHVEREU3XFx1RERFOS1cXHVEREVFXFx1RERGMS1cXHVEREYzXFx1RERGNS1cXHVEREZBXFx1RERGQ1xcdURERkVdKXxcXHVEODNDXFx1RERGOCg/OlxcdUQ4M0NbXFx1RERFNi1cXHVEREVBXFx1RERFQy1cXHVEREY0XFx1RERGNy1cXHVEREY5XFx1RERGQlxcdURERkQtXFx1RERGRl0pfFxcdUQ4M0NcXHVEREVCKD86XFx1RDgzQ1tcXHVEREVFLVxcdURERjBcXHVEREYyXFx1RERGNFxcdURERjddKXxcXHVEODNDXFx1RERGNSg/OlxcdUQ4M0NbXFx1RERFNlxcdURERUEtXFx1RERFRFxcdURERjAtXFx1RERGM1xcdURERjctXFx1RERGOVxcdURERkNcXHVEREZFXSl8XFx1RDgzQ1xcdURERkIoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFQVxcdURERUNcXHVEREVFXFx1RERGM1xcdURERkFdKXxcXHVEODNDXFx1RERGMyg/OlxcdUQ4M0NbXFx1RERFNlxcdURERThcXHVEREVBLVxcdURERUNcXHVEREVFXFx1RERGMVxcdURERjRcXHVEREY1XFx1RERGN1xcdURERkFcXHVEREZGXSl8XFx1RDgzQ1xcdURERTgoPzpcXHVEODNDW1xcdURERTZcXHVEREU4XFx1RERFOVxcdURERUItXFx1RERFRVxcdURERjAtXFx1RERGNVxcdURERjdcXHVEREZBLVxcdURERkZdKXxcXHVEODNDXFx1RERGMSg/OlxcdUQ4M0NbXFx1RERFNi1cXHVEREU4XFx1RERFRVxcdURERjBcXHVEREY3LVxcdURERkJcXHVEREZFXSl8XFx1RDgzQ1xcdURERkYoPzpcXHVEODNDW1xcdURERTZcXHVEREYyXFx1RERGQ10pfFxcdUQ4M0NcXHVEREZDKD86XFx1RDgzQ1tcXHVEREVCXFx1RERGOF0pfFxcdUQ4M0NcXHVEREZBKD86XFx1RDgzQ1tcXHVEREU2XFx1RERFQ1xcdURERjJcXHVEREYzXFx1RERGOFxcdURERkVcXHVEREZGXSl8XFx1RDgzQ1xcdURERUUoPzpcXHVEODNDW1xcdURERTgtXFx1RERFQVxcdURERjEtXFx1RERGNFxcdURERjYtXFx1RERGOV0pfFxcdUQ4M0NcXHVEREVGKD86XFx1RDgzQ1tcXHVEREVBXFx1RERGMlxcdURERjRcXHVEREY1XSl8KD86XFx1RDgzQ1tcXHVERkMzXFx1REZDNFxcdURGQ0FdfFxcdUQ4M0RbXFx1REM2RVxcdURDNzFcXHVEQzczXFx1REM3N1xcdURDODFcXHVEQzgyXFx1REM4NlxcdURDODdcXHVERTQ1LVxcdURFNDdcXHVERTRCXFx1REU0RFxcdURFNEVcXHVERUEzXFx1REVCNC1cXHVERUI2XXxcXHVEODNFW1xcdUREMjZcXHVERDM3LVxcdUREMzlcXHVERDNEXFx1REQzRVxcdUREQjhcXHVEREI5XFx1RERDRC1cXHVERENGXFx1RERENi1cXHVEREREXSkoPzpcXHVEODNDW1xcdURGRkItXFx1REZGRl0pfCg/OlxcdTI2Rjl8XFx1RDgzQ1tcXHVERkNCXFx1REZDQ118XFx1RDgzRFxcdURENzUpKD86XFx1RDgzQ1tcXHVERkZCLVxcdURGRkZdKXwoPzpbXFx1MjYxRFxcdTI3MEEtXFx1MjcwRF18XFx1RDgzQ1tcXHVERjg1XFx1REZDMlxcdURGQzddfFxcdUQ4M0RbXFx1REM0MlxcdURDNDNcXHVEQzQ2LVxcdURDNTBcXHVEQzY2XFx1REM2N1xcdURDNkItXFx1REM2RFxcdURDNzBcXHVEQzcyXFx1REM3NC1cXHVEQzc2XFx1REM3OFxcdURDN0NcXHVEQzgzXFx1REM4NVxcdURDQUFcXHVERDc0XFx1REQ3QVxcdUREOTBcXHVERDk1XFx1REQ5NlxcdURFNENcXHVERTRGXFx1REVDMFxcdURFQ0NdfFxcdUQ4M0VbXFx1REQwRlxcdUREMTgtXFx1REQxQ1xcdUREMUVcXHVERDFGXFx1REQzMC1cXHVERDM2XFx1RERCNVxcdUREQjZcXHVEREJCXFx1REREMi1cXHVEREQ1XSkoPzpcXHVEODNDW1xcdURGRkItXFx1REZGRl0pfCg/OltcXHUyMzFBXFx1MjMxQlxcdTIzRTktXFx1MjNFQ1xcdTIzRjBcXHUyM0YzXFx1MjVGRFxcdTI1RkVcXHUyNjE0XFx1MjYxNVxcdTI2NDgtXFx1MjY1M1xcdTI2N0ZcXHUyNjkzXFx1MjZBMVxcdTI2QUFcXHUyNkFCXFx1MjZCRFxcdTI2QkVcXHUyNkM0XFx1MjZDNVxcdTI2Q0VcXHUyNkQ0XFx1MjZFQVxcdTI2RjJcXHUyNkYzXFx1MjZGNVxcdTI2RkFcXHUyNkZEXFx1MjcwNVxcdTI3MEFcXHUyNzBCXFx1MjcyOFxcdTI3NENcXHUyNzRFXFx1Mjc1My1cXHUyNzU1XFx1Mjc1N1xcdTI3OTUtXFx1Mjc5N1xcdTI3QjBcXHUyN0JGXFx1MkIxQlxcdTJCMUNcXHUyQjUwXFx1MkI1NV18XFx1RDgzQ1tcXHVEQzA0XFx1RENDRlxcdUREOEVcXHVERDkxLVxcdUREOUFcXHVEREU2LVxcdURERkZcXHVERTAxXFx1REUxQVxcdURFMkZcXHVERTMyLVxcdURFMzZcXHVERTM4LVxcdURFM0FcXHVERTUwXFx1REU1MVxcdURGMDAtXFx1REYyMFxcdURGMkQtXFx1REYzNVxcdURGMzctXFx1REY3Q1xcdURGN0UtXFx1REY5M1xcdURGQTAtXFx1REZDQVxcdURGQ0YtXFx1REZEM1xcdURGRTAtXFx1REZGMFxcdURGRjRcXHVERkY4LVxcdURGRkZdfFxcdUQ4M0RbXFx1REMwMC1cXHVEQzNFXFx1REM0MFxcdURDNDItXFx1RENGQ1xcdURDRkYtXFx1REQzRFxcdURENEItXFx1REQ0RVxcdURENTAtXFx1REQ2N1xcdUREN0FcXHVERDk1XFx1REQ5NlxcdUREQTRcXHVEREZCLVxcdURFNEZcXHVERTgwLVxcdURFQzVcXHVERUNDXFx1REVEMC1cXHVERUQyXFx1REVENVxcdURFRUJcXHVERUVDXFx1REVGNC1cXHVERUZBXFx1REZFMC1cXHVERkVCXXxcXHVEODNFW1xcdUREMEQtXFx1REQzQVxcdUREM0MtXFx1REQ0NVxcdURENDctXFx1REQ3MVxcdURENzMtXFx1REQ3NlxcdUREN0EtXFx1RERBMlxcdUREQTUtXFx1RERBQVxcdUREQUUtXFx1RERDQVxcdUREQ0QtXFx1RERGRlxcdURFNzAtXFx1REU3M1xcdURFNzgtXFx1REU3QVxcdURFODAtXFx1REU4MlxcdURFOTAtXFx1REU5NV0pfCg/OlsjXFwqMC05XFx4QTlcXHhBRVxcdTIwM0NcXHUyMDQ5XFx1MjEyMlxcdTIxMzlcXHUyMTk0LVxcdTIxOTlcXHUyMUE5XFx1MjFBQVxcdTIzMUFcXHUyMzFCXFx1MjMyOFxcdTIzQ0ZcXHUyM0U5LVxcdTIzRjNcXHUyM0Y4LVxcdTIzRkFcXHUyNEMyXFx1MjVBQVxcdTI1QUJcXHUyNUI2XFx1MjVDMFxcdTI1RkItXFx1MjVGRVxcdTI2MDAtXFx1MjYwNFxcdTI2MEVcXHUyNjExXFx1MjYxNFxcdTI2MTVcXHUyNjE4XFx1MjYxRFxcdTI2MjBcXHUyNjIyXFx1MjYyM1xcdTI2MjZcXHUyNjJBXFx1MjYyRVxcdTI2MkZcXHUyNjM4LVxcdTI2M0FcXHUyNjQwXFx1MjY0MlxcdTI2NDgtXFx1MjY1M1xcdTI2NUZcXHUyNjYwXFx1MjY2M1xcdTI2NjVcXHUyNjY2XFx1MjY2OFxcdTI2N0JcXHUyNjdFXFx1MjY3RlxcdTI2OTItXFx1MjY5N1xcdTI2OTlcXHUyNjlCXFx1MjY5Q1xcdTI2QTBcXHUyNkExXFx1MjZBQVxcdTI2QUJcXHUyNkIwXFx1MjZCMVxcdTI2QkRcXHUyNkJFXFx1MjZDNFxcdTI2QzVcXHUyNkM4XFx1MjZDRVxcdTI2Q0ZcXHUyNkQxXFx1MjZEM1xcdTI2RDRcXHUyNkU5XFx1MjZFQVxcdTI2RjAtXFx1MjZGNVxcdTI2RjctXFx1MjZGQVxcdTI2RkRcXHUyNzAyXFx1MjcwNVxcdTI3MDgtXFx1MjcwRFxcdTI3MEZcXHUyNzEyXFx1MjcxNFxcdTI3MTZcXHUyNzFEXFx1MjcyMVxcdTI3MjhcXHUyNzMzXFx1MjczNFxcdTI3NDRcXHUyNzQ3XFx1Mjc0Q1xcdTI3NEVcXHUyNzUzLVxcdTI3NTVcXHUyNzU3XFx1Mjc2M1xcdTI3NjRcXHUyNzk1LVxcdTI3OTdcXHUyN0ExXFx1MjdCMFxcdTI3QkZcXHUyOTM0XFx1MjkzNVxcdTJCMDUtXFx1MkIwN1xcdTJCMUJcXHUyQjFDXFx1MkI1MFxcdTJCNTVcXHUzMDMwXFx1MzAzRFxcdTMyOTdcXHUzMjk5XXxcXHVEODNDW1xcdURDMDRcXHVEQ0NGXFx1REQ3MFxcdURENzFcXHVERDdFXFx1REQ3RlxcdUREOEVcXHVERDkxLVxcdUREOUFcXHVEREU2LVxcdURERkZcXHVERTAxXFx1REUwMlxcdURFMUFcXHVERTJGXFx1REUzMi1cXHVERTNBXFx1REU1MFxcdURFNTFcXHVERjAwLVxcdURGMjFcXHVERjI0LVxcdURGOTNcXHVERjk2XFx1REY5N1xcdURGOTktXFx1REY5QlxcdURGOUUtXFx1REZGMFxcdURGRjMtXFx1REZGNVxcdURGRjctXFx1REZGRl18XFx1RDgzRFtcXHVEQzAwLVxcdURDRkRcXHVEQ0ZGLVxcdUREM0RcXHVERDQ5LVxcdURENEVcXHVERDUwLVxcdURENjdcXHVERDZGXFx1REQ3MFxcdURENzMtXFx1REQ3QVxcdUREODdcXHVERDhBLVxcdUREOERcXHVERDkwXFx1REQ5NVxcdUREOTZcXHVEREE0XFx1RERBNVxcdUREQThcXHVEREIxXFx1RERCMlxcdUREQkNcXHVEREMyLVxcdUREQzRcXHVEREQxLVxcdURERDNcXHVERERDLVxcdUREREVcXHVEREUxXFx1RERFM1xcdURERThcXHVEREVGXFx1RERGM1xcdURERkEtXFx1REU0RlxcdURFODAtXFx1REVDNVxcdURFQ0ItXFx1REVEMlxcdURFRDVcXHVERUUwLVxcdURFRTVcXHVERUU5XFx1REVFQlxcdURFRUNcXHVERUYwXFx1REVGMy1cXHVERUZBXFx1REZFMC1cXHVERkVCXXxcXHVEODNFW1xcdUREMEQtXFx1REQzQVxcdUREM0MtXFx1REQ0NVxcdURENDctXFx1REQ3MVxcdURENzMtXFx1REQ3NlxcdUREN0EtXFx1RERBMlxcdUREQTUtXFx1RERBQVxcdUREQUUtXFx1RERDQVxcdUREQ0QtXFx1RERGRlxcdURFNzAtXFx1REU3M1xcdURFNzgtXFx1REU3QVxcdURFODAtXFx1REU4MlxcdURFOTAtXFx1REU5NV0pXFx1RkUwRnwoPzpbXFx1MjYxRFxcdTI2RjlcXHUyNzBBLVxcdTI3MERdfFxcdUQ4M0NbXFx1REY4NVxcdURGQzItXFx1REZDNFxcdURGQzdcXHVERkNBLVxcdURGQ0NdfFxcdUQ4M0RbXFx1REM0MlxcdURDNDNcXHVEQzQ2LVxcdURDNTBcXHVEQzY2LVxcdURDNzhcXHVEQzdDXFx1REM4MS1cXHVEQzgzXFx1REM4NS1cXHVEQzg3XFx1REM4RlxcdURDOTFcXHVEQ0FBXFx1REQ3NFxcdURENzVcXHVERDdBXFx1REQ5MFxcdUREOTVcXHVERDk2XFx1REU0NS1cXHVERTQ3XFx1REU0Qi1cXHVERTRGXFx1REVBM1xcdURFQjQtXFx1REVCNlxcdURFQzBcXHVERUNDXXxcXHVEODNFW1xcdUREMEZcXHVERDE4LVxcdUREMUZcXHVERDI2XFx1REQzMC1cXHVERDM5XFx1REQzQy1cXHVERDNFXFx1RERCNVxcdUREQjZcXHVEREI4XFx1RERCOVxcdUREQkJcXHVERENELVxcdUREQ0ZcXHVEREQxLVxcdURERERdKS9nO1xufTtcbiIsICIndXNlIHN0cmljdCc7XG5jb25zdCBzdHJpcEFuc2kgPSByZXF1aXJlKCdzdHJpcC1hbnNpJyk7XG5jb25zdCBpc0Z1bGx3aWR0aENvZGVQb2ludCA9IHJlcXVpcmUoJ2lzLWZ1bGx3aWR0aC1jb2RlLXBvaW50Jyk7XG5jb25zdCBlbW9qaVJlZ2V4ID0gcmVxdWlyZSgnZW1vamktcmVnZXgnKTtcblxuY29uc3Qgc3RyaW5nV2lkdGggPSBzdHJpbmcgPT4ge1xuXHRpZiAodHlwZW9mIHN0cmluZyAhPT0gJ3N0cmluZycgfHwgc3RyaW5nLmxlbmd0aCA9PT0gMCkge1xuXHRcdHJldHVybiAwO1xuXHR9XG5cblx0c3RyaW5nID0gc3RyaXBBbnNpKHN0cmluZyk7XG5cblx0aWYgKHN0cmluZy5sZW5ndGggPT09IDApIHtcblx0XHRyZXR1cm4gMDtcblx0fVxuXG5cdHN0cmluZyA9IHN0cmluZy5yZXBsYWNlKGVtb2ppUmVnZXgoKSwgJyAgJyk7XG5cblx0bGV0IHdpZHRoID0gMDtcblxuXHRmb3IgKGxldCBpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGkrKykge1xuXHRcdGNvbnN0IGNvZGUgPSBzdHJpbmcuY29kZVBvaW50QXQoaSk7XG5cblx0XHQvLyBJZ25vcmUgY29udHJvbCBjaGFyYWN0ZXJzXG5cdFx0aWYgKGNvZGUgPD0gMHgxRiB8fCAoY29kZSA+PSAweDdGICYmIGNvZGUgPD0gMHg5RikpIHtcblx0XHRcdGNvbnRpbnVlO1xuXHRcdH1cblxuXHRcdC8vIElnbm9yZSBjb21iaW5pbmcgY2hhcmFjdGVyc1xuXHRcdGlmIChjb2RlID49IDB4MzAwICYmIGNvZGUgPD0gMHgzNkYpIHtcblx0XHRcdGNvbnRpbnVlO1xuXHRcdH1cblxuXHRcdC8vIFN1cnJvZ2F0ZXNcblx0XHRpZiAoY29kZSA+IDB4RkZGRikge1xuXHRcdFx0aSsrO1xuXHRcdH1cblxuXHRcdHdpZHRoICs9IGlzRnVsbHdpZHRoQ29kZVBvaW50KGNvZGUpID8gMiA6IDE7XG5cdH1cblxuXHRyZXR1cm4gd2lkdGg7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHN0cmluZ1dpZHRoO1xuLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvblxubW9kdWxlLmV4cG9ydHMuZGVmYXVsdCA9IHN0cmluZ1dpZHRoO1xuIiwgIid1c2Ugc3RyaWN0J1xyXG5cclxubW9kdWxlLmV4cG9ydHMgPSB7XHJcblx0XCJhbGljZWJsdWVcIjogWzI0MCwgMjQ4LCAyNTVdLFxyXG5cdFwiYW50aXF1ZXdoaXRlXCI6IFsyNTAsIDIzNSwgMjE1XSxcclxuXHRcImFxdWFcIjogWzAsIDI1NSwgMjU1XSxcclxuXHRcImFxdWFtYXJpbmVcIjogWzEyNywgMjU1LCAyMTJdLFxyXG5cdFwiYXp1cmVcIjogWzI0MCwgMjU1LCAyNTVdLFxyXG5cdFwiYmVpZ2VcIjogWzI0NSwgMjQ1LCAyMjBdLFxyXG5cdFwiYmlzcXVlXCI6IFsyNTUsIDIyOCwgMTk2XSxcclxuXHRcImJsYWNrXCI6IFswLCAwLCAwXSxcclxuXHRcImJsYW5jaGVkYWxtb25kXCI6IFsyNTUsIDIzNSwgMjA1XSxcclxuXHRcImJsdWVcIjogWzAsIDAsIDI1NV0sXHJcblx0XCJibHVldmlvbGV0XCI6IFsxMzgsIDQzLCAyMjZdLFxyXG5cdFwiYnJvd25cIjogWzE2NSwgNDIsIDQyXSxcclxuXHRcImJ1cmx5d29vZFwiOiBbMjIyLCAxODQsIDEzNV0sXHJcblx0XCJjYWRldGJsdWVcIjogWzk1LCAxNTgsIDE2MF0sXHJcblx0XCJjaGFydHJldXNlXCI6IFsxMjcsIDI1NSwgMF0sXHJcblx0XCJjaG9jb2xhdGVcIjogWzIxMCwgMTA1LCAzMF0sXHJcblx0XCJjb3JhbFwiOiBbMjU1LCAxMjcsIDgwXSxcclxuXHRcImNvcm5mbG93ZXJibHVlXCI6IFsxMDAsIDE0OSwgMjM3XSxcclxuXHRcImNvcm5zaWxrXCI6IFsyNTUsIDI0OCwgMjIwXSxcclxuXHRcImNyaW1zb25cIjogWzIyMCwgMjAsIDYwXSxcclxuXHRcImN5YW5cIjogWzAsIDI1NSwgMjU1XSxcclxuXHRcImRhcmtibHVlXCI6IFswLCAwLCAxMzldLFxyXG5cdFwiZGFya2N5YW5cIjogWzAsIDEzOSwgMTM5XSxcclxuXHRcImRhcmtnb2xkZW5yb2RcIjogWzE4NCwgMTM0LCAxMV0sXHJcblx0XCJkYXJrZ3JheVwiOiBbMTY5LCAxNjksIDE2OV0sXHJcblx0XCJkYXJrZ3JlZW5cIjogWzAsIDEwMCwgMF0sXHJcblx0XCJkYXJrZ3JleVwiOiBbMTY5LCAxNjksIDE2OV0sXHJcblx0XCJkYXJra2hha2lcIjogWzE4OSwgMTgzLCAxMDddLFxyXG5cdFwiZGFya21hZ2VudGFcIjogWzEzOSwgMCwgMTM5XSxcclxuXHRcImRhcmtvbGl2ZWdyZWVuXCI6IFs4NSwgMTA3LCA0N10sXHJcblx0XCJkYXJrb3JhbmdlXCI6IFsyNTUsIDE0MCwgMF0sXHJcblx0XCJkYXJrb3JjaGlkXCI6IFsxNTMsIDUwLCAyMDRdLFxyXG5cdFwiZGFya3JlZFwiOiBbMTM5LCAwLCAwXSxcclxuXHRcImRhcmtzYWxtb25cIjogWzIzMywgMTUwLCAxMjJdLFxyXG5cdFwiZGFya3NlYWdyZWVuXCI6IFsxNDMsIDE4OCwgMTQzXSxcclxuXHRcImRhcmtzbGF0ZWJsdWVcIjogWzcyLCA2MSwgMTM5XSxcclxuXHRcImRhcmtzbGF0ZWdyYXlcIjogWzQ3LCA3OSwgNzldLFxyXG5cdFwiZGFya3NsYXRlZ3JleVwiOiBbNDcsIDc5LCA3OV0sXHJcblx0XCJkYXJrdHVycXVvaXNlXCI6IFswLCAyMDYsIDIwOV0sXHJcblx0XCJkYXJrdmlvbGV0XCI6IFsxNDgsIDAsIDIxMV0sXHJcblx0XCJkZWVwcGlua1wiOiBbMjU1LCAyMCwgMTQ3XSxcclxuXHRcImRlZXBza3libHVlXCI6IFswLCAxOTEsIDI1NV0sXHJcblx0XCJkaW1ncmF5XCI6IFsxMDUsIDEwNSwgMTA1XSxcclxuXHRcImRpbWdyZXlcIjogWzEwNSwgMTA1LCAxMDVdLFxyXG5cdFwiZG9kZ2VyYmx1ZVwiOiBbMzAsIDE0NCwgMjU1XSxcclxuXHRcImZpcmVicmlja1wiOiBbMTc4LCAzNCwgMzRdLFxyXG5cdFwiZmxvcmFsd2hpdGVcIjogWzI1NSwgMjUwLCAyNDBdLFxyXG5cdFwiZm9yZXN0Z3JlZW5cIjogWzM0LCAxMzksIDM0XSxcclxuXHRcImZ1Y2hzaWFcIjogWzI1NSwgMCwgMjU1XSxcclxuXHRcImdhaW5zYm9yb1wiOiBbMjIwLCAyMjAsIDIyMF0sXHJcblx0XCJnaG9zdHdoaXRlXCI6IFsyNDgsIDI0OCwgMjU1XSxcclxuXHRcImdvbGRcIjogWzI1NSwgMjE1LCAwXSxcclxuXHRcImdvbGRlbnJvZFwiOiBbMjE4LCAxNjUsIDMyXSxcclxuXHRcImdyYXlcIjogWzEyOCwgMTI4LCAxMjhdLFxyXG5cdFwiZ3JlZW5cIjogWzAsIDEyOCwgMF0sXHJcblx0XCJncmVlbnllbGxvd1wiOiBbMTczLCAyNTUsIDQ3XSxcclxuXHRcImdyZXlcIjogWzEyOCwgMTI4LCAxMjhdLFxyXG5cdFwiaG9uZXlkZXdcIjogWzI0MCwgMjU1LCAyNDBdLFxyXG5cdFwiaG90cGlua1wiOiBbMjU1LCAxMDUsIDE4MF0sXHJcblx0XCJpbmRpYW5yZWRcIjogWzIwNSwgOTIsIDkyXSxcclxuXHRcImluZGlnb1wiOiBbNzUsIDAsIDEzMF0sXHJcblx0XCJpdm9yeVwiOiBbMjU1LCAyNTUsIDI0MF0sXHJcblx0XCJraGFraVwiOiBbMjQwLCAyMzAsIDE0MF0sXHJcblx0XCJsYXZlbmRlclwiOiBbMjMwLCAyMzAsIDI1MF0sXHJcblx0XCJsYXZlbmRlcmJsdXNoXCI6IFsyNTUsIDI0MCwgMjQ1XSxcclxuXHRcImxhd25ncmVlblwiOiBbMTI0LCAyNTIsIDBdLFxyXG5cdFwibGVtb25jaGlmZm9uXCI6IFsyNTUsIDI1MCwgMjA1XSxcclxuXHRcImxpZ2h0Ymx1ZVwiOiBbMTczLCAyMTYsIDIzMF0sXHJcblx0XCJsaWdodGNvcmFsXCI6IFsyNDAsIDEyOCwgMTI4XSxcclxuXHRcImxpZ2h0Y3lhblwiOiBbMjI0LCAyNTUsIDI1NV0sXHJcblx0XCJsaWdodGdvbGRlbnJvZHllbGxvd1wiOiBbMjUwLCAyNTAsIDIxMF0sXHJcblx0XCJsaWdodGdyYXlcIjogWzIxMSwgMjExLCAyMTFdLFxyXG5cdFwibGlnaHRncmVlblwiOiBbMTQ0LCAyMzgsIDE0NF0sXHJcblx0XCJsaWdodGdyZXlcIjogWzIxMSwgMjExLCAyMTFdLFxyXG5cdFwibGlnaHRwaW5rXCI6IFsyNTUsIDE4MiwgMTkzXSxcclxuXHRcImxpZ2h0c2FsbW9uXCI6IFsyNTUsIDE2MCwgMTIyXSxcclxuXHRcImxpZ2h0c2VhZ3JlZW5cIjogWzMyLCAxNzgsIDE3MF0sXHJcblx0XCJsaWdodHNreWJsdWVcIjogWzEzNSwgMjA2LCAyNTBdLFxyXG5cdFwibGlnaHRzbGF0ZWdyYXlcIjogWzExOSwgMTM2LCAxNTNdLFxyXG5cdFwibGlnaHRzbGF0ZWdyZXlcIjogWzExOSwgMTM2LCAxNTNdLFxyXG5cdFwibGlnaHRzdGVlbGJsdWVcIjogWzE3NiwgMTk2LCAyMjJdLFxyXG5cdFwibGlnaHR5ZWxsb3dcIjogWzI1NSwgMjU1LCAyMjRdLFxyXG5cdFwibGltZVwiOiBbMCwgMjU1LCAwXSxcclxuXHRcImxpbWVncmVlblwiOiBbNTAsIDIwNSwgNTBdLFxyXG5cdFwibGluZW5cIjogWzI1MCwgMjQwLCAyMzBdLFxyXG5cdFwibWFnZW50YVwiOiBbMjU1LCAwLCAyNTVdLFxyXG5cdFwibWFyb29uXCI6IFsxMjgsIDAsIDBdLFxyXG5cdFwibWVkaXVtYXF1YW1hcmluZVwiOiBbMTAyLCAyMDUsIDE3MF0sXHJcblx0XCJtZWRpdW1ibHVlXCI6IFswLCAwLCAyMDVdLFxyXG5cdFwibWVkaXVtb3JjaGlkXCI6IFsxODYsIDg1LCAyMTFdLFxyXG5cdFwibWVkaXVtcHVycGxlXCI6IFsxNDcsIDExMiwgMjE5XSxcclxuXHRcIm1lZGl1bXNlYWdyZWVuXCI6IFs2MCwgMTc5LCAxMTNdLFxyXG5cdFwibWVkaXVtc2xhdGVibHVlXCI6IFsxMjMsIDEwNCwgMjM4XSxcclxuXHRcIm1lZGl1bXNwcmluZ2dyZWVuXCI6IFswLCAyNTAsIDE1NF0sXHJcblx0XCJtZWRpdW10dXJxdW9pc2VcIjogWzcyLCAyMDksIDIwNF0sXHJcblx0XCJtZWRpdW12aW9sZXRyZWRcIjogWzE5OSwgMjEsIDEzM10sXHJcblx0XCJtaWRuaWdodGJsdWVcIjogWzI1LCAyNSwgMTEyXSxcclxuXHRcIm1pbnRjcmVhbVwiOiBbMjQ1LCAyNTUsIDI1MF0sXHJcblx0XCJtaXN0eXJvc2VcIjogWzI1NSwgMjI4LCAyMjVdLFxyXG5cdFwibW9jY2FzaW5cIjogWzI1NSwgMjI4LCAxODFdLFxyXG5cdFwibmF2YWpvd2hpdGVcIjogWzI1NSwgMjIyLCAxNzNdLFxyXG5cdFwibmF2eVwiOiBbMCwgMCwgMTI4XSxcclxuXHRcIm9sZGxhY2VcIjogWzI1MywgMjQ1LCAyMzBdLFxyXG5cdFwib2xpdmVcIjogWzEyOCwgMTI4LCAwXSxcclxuXHRcIm9saXZlZHJhYlwiOiBbMTA3LCAxNDIsIDM1XSxcclxuXHRcIm9yYW5nZVwiOiBbMjU1LCAxNjUsIDBdLFxyXG5cdFwib3JhbmdlcmVkXCI6IFsyNTUsIDY5LCAwXSxcclxuXHRcIm9yY2hpZFwiOiBbMjE4LCAxMTIsIDIxNF0sXHJcblx0XCJwYWxlZ29sZGVucm9kXCI6IFsyMzgsIDIzMiwgMTcwXSxcclxuXHRcInBhbGVncmVlblwiOiBbMTUyLCAyNTEsIDE1Ml0sXHJcblx0XCJwYWxldHVycXVvaXNlXCI6IFsxNzUsIDIzOCwgMjM4XSxcclxuXHRcInBhbGV2aW9sZXRyZWRcIjogWzIxOSwgMTEyLCAxNDddLFxyXG5cdFwicGFwYXlhd2hpcFwiOiBbMjU1LCAyMzksIDIxM10sXHJcblx0XCJwZWFjaHB1ZmZcIjogWzI1NSwgMjE4LCAxODVdLFxyXG5cdFwicGVydVwiOiBbMjA1LCAxMzMsIDYzXSxcclxuXHRcInBpbmtcIjogWzI1NSwgMTkyLCAyMDNdLFxyXG5cdFwicGx1bVwiOiBbMjIxLCAxNjAsIDIyMV0sXHJcblx0XCJwb3dkZXJibHVlXCI6IFsxNzYsIDIyNCwgMjMwXSxcclxuXHRcInB1cnBsZVwiOiBbMTI4LCAwLCAxMjhdLFxyXG5cdFwicmViZWNjYXB1cnBsZVwiOiBbMTAyLCA1MSwgMTUzXSxcclxuXHRcInJlZFwiOiBbMjU1LCAwLCAwXSxcclxuXHRcInJvc3licm93blwiOiBbMTg4LCAxNDMsIDE0M10sXHJcblx0XCJyb3lhbGJsdWVcIjogWzY1LCAxMDUsIDIyNV0sXHJcblx0XCJzYWRkbGVicm93blwiOiBbMTM5LCA2OSwgMTldLFxyXG5cdFwic2FsbW9uXCI6IFsyNTAsIDEyOCwgMTE0XSxcclxuXHRcInNhbmR5YnJvd25cIjogWzI0NCwgMTY0LCA5Nl0sXHJcblx0XCJzZWFncmVlblwiOiBbNDYsIDEzOSwgODddLFxyXG5cdFwic2Vhc2hlbGxcIjogWzI1NSwgMjQ1LCAyMzhdLFxyXG5cdFwic2llbm5hXCI6IFsxNjAsIDgyLCA0NV0sXHJcblx0XCJzaWx2ZXJcIjogWzE5MiwgMTkyLCAxOTJdLFxyXG5cdFwic2t5Ymx1ZVwiOiBbMTM1LCAyMDYsIDIzNV0sXHJcblx0XCJzbGF0ZWJsdWVcIjogWzEwNiwgOTAsIDIwNV0sXHJcblx0XCJzbGF0ZWdyYXlcIjogWzExMiwgMTI4LCAxNDRdLFxyXG5cdFwic2xhdGVncmV5XCI6IFsxMTIsIDEyOCwgMTQ0XSxcclxuXHRcInNub3dcIjogWzI1NSwgMjUwLCAyNTBdLFxyXG5cdFwic3ByaW5nZ3JlZW5cIjogWzAsIDI1NSwgMTI3XSxcclxuXHRcInN0ZWVsYmx1ZVwiOiBbNzAsIDEzMCwgMTgwXSxcclxuXHRcInRhblwiOiBbMjEwLCAxODAsIDE0MF0sXHJcblx0XCJ0ZWFsXCI6IFswLCAxMjgsIDEyOF0sXHJcblx0XCJ0aGlzdGxlXCI6IFsyMTYsIDE5MSwgMjE2XSxcclxuXHRcInRvbWF0b1wiOiBbMjU1LCA5OSwgNzFdLFxyXG5cdFwidHVycXVvaXNlXCI6IFs2NCwgMjI0LCAyMDhdLFxyXG5cdFwidmlvbGV0XCI6IFsyMzgsIDEzMCwgMjM4XSxcclxuXHRcIndoZWF0XCI6IFsyNDUsIDIyMiwgMTc5XSxcclxuXHRcIndoaXRlXCI6IFsyNTUsIDI1NSwgMjU1XSxcclxuXHRcIndoaXRlc21va2VcIjogWzI0NSwgMjQ1LCAyNDVdLFxyXG5cdFwieWVsbG93XCI6IFsyNTUsIDI1NSwgMF0sXHJcblx0XCJ5ZWxsb3dncmVlblwiOiBbMTU0LCAyMDUsIDUwXVxyXG59O1xyXG4iLCAiLyogTUlUIGxpY2Vuc2UgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW1peGVkLW9wZXJhdG9ycyAqL1xuY29uc3QgY3NzS2V5d29yZHMgPSByZXF1aXJlKCdjb2xvci1uYW1lJyk7XG5cbi8vIE5PVEU6IGNvbnZlcnNpb25zIHNob3VsZCBvbmx5IHJldHVybiBwcmltaXRpdmUgdmFsdWVzIChpLmUuIGFycmF5cywgb3Jcbi8vICAgICAgIHZhbHVlcyB0aGF0IGdpdmUgY29ycmVjdCBgdHlwZW9mYCByZXN1bHRzKS5cbi8vICAgICAgIGRvIG5vdCB1c2UgYm94IHZhbHVlcyB0eXBlcyAoaS5lLiBOdW1iZXIoKSwgU3RyaW5nKCksIGV0Yy4pXG5cbmNvbnN0IHJldmVyc2VLZXl3b3JkcyA9IHt9O1xuZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoY3NzS2V5d29yZHMpKSB7XG5cdHJldmVyc2VLZXl3b3Jkc1tjc3NLZXl3b3Jkc1trZXldXSA9IGtleTtcbn1cblxuY29uc3QgY29udmVydCA9IHtcblx0cmdiOiB7Y2hhbm5lbHM6IDMsIGxhYmVsczogJ3JnYid9LFxuXHRoc2w6IHtjaGFubmVsczogMywgbGFiZWxzOiAnaHNsJ30sXG5cdGhzdjoge2NoYW5uZWxzOiAzLCBsYWJlbHM6ICdoc3YnfSxcblx0aHdiOiB7Y2hhbm5lbHM6IDMsIGxhYmVsczogJ2h3Yid9LFxuXHRjbXlrOiB7Y2hhbm5lbHM6IDQsIGxhYmVsczogJ2NteWsnfSxcblx0eHl6OiB7Y2hhbm5lbHM6IDMsIGxhYmVsczogJ3h5eid9LFxuXHRsYWI6IHtjaGFubmVsczogMywgbGFiZWxzOiAnbGFiJ30sXG5cdGxjaDoge2NoYW5uZWxzOiAzLCBsYWJlbHM6ICdsY2gnfSxcblx0aGV4OiB7Y2hhbm5lbHM6IDEsIGxhYmVsczogWydoZXgnXX0sXG5cdGtleXdvcmQ6IHtjaGFubmVsczogMSwgbGFiZWxzOiBbJ2tleXdvcmQnXX0sXG5cdGFuc2kxNjoge2NoYW5uZWxzOiAxLCBsYWJlbHM6IFsnYW5zaTE2J119LFxuXHRhbnNpMjU2OiB7Y2hhbm5lbHM6IDEsIGxhYmVsczogWydhbnNpMjU2J119LFxuXHRoY2c6IHtjaGFubmVsczogMywgbGFiZWxzOiBbJ2gnLCAnYycsICdnJ119LFxuXHRhcHBsZToge2NoYW5uZWxzOiAzLCBsYWJlbHM6IFsncjE2JywgJ2cxNicsICdiMTYnXX0sXG5cdGdyYXk6IHtjaGFubmVsczogMSwgbGFiZWxzOiBbJ2dyYXknXX1cbn07XG5cbm1vZHVsZS5leHBvcnRzID0gY29udmVydDtcblxuLy8gSGlkZSAuY2hhbm5lbHMgYW5kIC5sYWJlbHMgcHJvcGVydGllc1xuZm9yIChjb25zdCBtb2RlbCBvZiBPYmplY3Qua2V5cyhjb252ZXJ0KSkge1xuXHRpZiAoISgnY2hhbm5lbHMnIGluIGNvbnZlcnRbbW9kZWxdKSkge1xuXHRcdHRocm93IG5ldyBFcnJvcignbWlzc2luZyBjaGFubmVscyBwcm9wZXJ0eTogJyArIG1vZGVsKTtcblx0fVxuXG5cdGlmICghKCdsYWJlbHMnIGluIGNvbnZlcnRbbW9kZWxdKSkge1xuXHRcdHRocm93IG5ldyBFcnJvcignbWlzc2luZyBjaGFubmVsIGxhYmVscyBwcm9wZXJ0eTogJyArIG1vZGVsKTtcblx0fVxuXG5cdGlmIChjb252ZXJ0W21vZGVsXS5sYWJlbHMubGVuZ3RoICE9PSBjb252ZXJ0W21vZGVsXS5jaGFubmVscykge1xuXHRcdHRocm93IG5ldyBFcnJvcignY2hhbm5lbCBhbmQgbGFiZWwgY291bnRzIG1pc21hdGNoOiAnICsgbW9kZWwpO1xuXHR9XG5cblx0Y29uc3Qge2NoYW5uZWxzLCBsYWJlbHN9ID0gY29udmVydFttb2RlbF07XG5cdGRlbGV0ZSBjb252ZXJ0W21vZGVsXS5jaGFubmVscztcblx0ZGVsZXRlIGNvbnZlcnRbbW9kZWxdLmxhYmVscztcblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGNvbnZlcnRbbW9kZWxdLCAnY2hhbm5lbHMnLCB7dmFsdWU6IGNoYW5uZWxzfSk7XG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShjb252ZXJ0W21vZGVsXSwgJ2xhYmVscycsIHt2YWx1ZTogbGFiZWxzfSk7XG59XG5cbmNvbnZlcnQucmdiLmhzbCA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0Y29uc3QgciA9IHJnYlswXSAvIDI1NTtcblx0Y29uc3QgZyA9IHJnYlsxXSAvIDI1NTtcblx0Y29uc3QgYiA9IHJnYlsyXSAvIDI1NTtcblx0Y29uc3QgbWluID0gTWF0aC5taW4ociwgZywgYik7XG5cdGNvbnN0IG1heCA9IE1hdGgubWF4KHIsIGcsIGIpO1xuXHRjb25zdCBkZWx0YSA9IG1heCAtIG1pbjtcblx0bGV0IGg7XG5cdGxldCBzO1xuXG5cdGlmIChtYXggPT09IG1pbikge1xuXHRcdGggPSAwO1xuXHR9IGVsc2UgaWYgKHIgPT09IG1heCkge1xuXHRcdGggPSAoZyAtIGIpIC8gZGVsdGE7XG5cdH0gZWxzZSBpZiAoZyA9PT0gbWF4KSB7XG5cdFx0aCA9IDIgKyAoYiAtIHIpIC8gZGVsdGE7XG5cdH0gZWxzZSBpZiAoYiA9PT0gbWF4KSB7XG5cdFx0aCA9IDQgKyAociAtIGcpIC8gZGVsdGE7XG5cdH1cblxuXHRoID0gTWF0aC5taW4oaCAqIDYwLCAzNjApO1xuXG5cdGlmIChoIDwgMCkge1xuXHRcdGggKz0gMzYwO1xuXHR9XG5cblx0Y29uc3QgbCA9IChtaW4gKyBtYXgpIC8gMjtcblxuXHRpZiAobWF4ID09PSBtaW4pIHtcblx0XHRzID0gMDtcblx0fSBlbHNlIGlmIChsIDw9IDAuNSkge1xuXHRcdHMgPSBkZWx0YSAvIChtYXggKyBtaW4pO1xuXHR9IGVsc2Uge1xuXHRcdHMgPSBkZWx0YSAvICgyIC0gbWF4IC0gbWluKTtcblx0fVxuXG5cdHJldHVybiBbaCwgcyAqIDEwMCwgbCAqIDEwMF07XG59O1xuXG5jb252ZXJ0LnJnYi5oc3YgPSBmdW5jdGlvbiAocmdiKSB7XG5cdGxldCByZGlmO1xuXHRsZXQgZ2RpZjtcblx0bGV0IGJkaWY7XG5cdGxldCBoO1xuXHRsZXQgcztcblxuXHRjb25zdCByID0gcmdiWzBdIC8gMjU1O1xuXHRjb25zdCBnID0gcmdiWzFdIC8gMjU1O1xuXHRjb25zdCBiID0gcmdiWzJdIC8gMjU1O1xuXHRjb25zdCB2ID0gTWF0aC5tYXgociwgZywgYik7XG5cdGNvbnN0IGRpZmYgPSB2IC0gTWF0aC5taW4ociwgZywgYik7XG5cdGNvbnN0IGRpZmZjID0gZnVuY3Rpb24gKGMpIHtcblx0XHRyZXR1cm4gKHYgLSBjKSAvIDYgLyBkaWZmICsgMSAvIDI7XG5cdH07XG5cblx0aWYgKGRpZmYgPT09IDApIHtcblx0XHRoID0gMDtcblx0XHRzID0gMDtcblx0fSBlbHNlIHtcblx0XHRzID0gZGlmZiAvIHY7XG5cdFx0cmRpZiA9IGRpZmZjKHIpO1xuXHRcdGdkaWYgPSBkaWZmYyhnKTtcblx0XHRiZGlmID0gZGlmZmMoYik7XG5cblx0XHRpZiAociA9PT0gdikge1xuXHRcdFx0aCA9IGJkaWYgLSBnZGlmO1xuXHRcdH0gZWxzZSBpZiAoZyA9PT0gdikge1xuXHRcdFx0aCA9ICgxIC8gMykgKyByZGlmIC0gYmRpZjtcblx0XHR9IGVsc2UgaWYgKGIgPT09IHYpIHtcblx0XHRcdGggPSAoMiAvIDMpICsgZ2RpZiAtIHJkaWY7XG5cdFx0fVxuXG5cdFx0aWYgKGggPCAwKSB7XG5cdFx0XHRoICs9IDE7XG5cdFx0fSBlbHNlIGlmIChoID4gMSkge1xuXHRcdFx0aCAtPSAxO1xuXHRcdH1cblx0fVxuXG5cdHJldHVybiBbXG5cdFx0aCAqIDM2MCxcblx0XHRzICogMTAwLFxuXHRcdHYgKiAxMDBcblx0XTtcbn07XG5cbmNvbnZlcnQucmdiLmh3YiA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0Y29uc3QgciA9IHJnYlswXTtcblx0Y29uc3QgZyA9IHJnYlsxXTtcblx0bGV0IGIgPSByZ2JbMl07XG5cdGNvbnN0IGggPSBjb252ZXJ0LnJnYi5oc2wocmdiKVswXTtcblx0Y29uc3QgdyA9IDEgLyAyNTUgKiBNYXRoLm1pbihyLCBNYXRoLm1pbihnLCBiKSk7XG5cblx0YiA9IDEgLSAxIC8gMjU1ICogTWF0aC5tYXgociwgTWF0aC5tYXgoZywgYikpO1xuXG5cdHJldHVybiBbaCwgdyAqIDEwMCwgYiAqIDEwMF07XG59O1xuXG5jb252ZXJ0LnJnYi5jbXlrID0gZnVuY3Rpb24gKHJnYikge1xuXHRjb25zdCByID0gcmdiWzBdIC8gMjU1O1xuXHRjb25zdCBnID0gcmdiWzFdIC8gMjU1O1xuXHRjb25zdCBiID0gcmdiWzJdIC8gMjU1O1xuXG5cdGNvbnN0IGsgPSBNYXRoLm1pbigxIC0gciwgMSAtIGcsIDEgLSBiKTtcblx0Y29uc3QgYyA9ICgxIC0gciAtIGspIC8gKDEgLSBrKSB8fCAwO1xuXHRjb25zdCBtID0gKDEgLSBnIC0gaykgLyAoMSAtIGspIHx8IDA7XG5cdGNvbnN0IHkgPSAoMSAtIGIgLSBrKSAvICgxIC0gaykgfHwgMDtcblxuXHRyZXR1cm4gW2MgKiAxMDAsIG0gKiAxMDAsIHkgKiAxMDAsIGsgKiAxMDBdO1xufTtcblxuZnVuY3Rpb24gY29tcGFyYXRpdmVEaXN0YW5jZSh4LCB5KSB7XG5cdC8qXG5cdFx0U2VlIGh0dHBzOi8vZW4ubS53aWtpcGVkaWEub3JnL3dpa2kvRXVjbGlkZWFuX2Rpc3RhbmNlI1NxdWFyZWRfRXVjbGlkZWFuX2Rpc3RhbmNlXG5cdCovXG5cdHJldHVybiAoXG5cdFx0KCh4WzBdIC0geVswXSkgKiogMikgK1xuXHRcdCgoeFsxXSAtIHlbMV0pICoqIDIpICtcblx0XHQoKHhbMl0gLSB5WzJdKSAqKiAyKVxuXHQpO1xufVxuXG5jb252ZXJ0LnJnYi5rZXl3b3JkID0gZnVuY3Rpb24gKHJnYikge1xuXHRjb25zdCByZXZlcnNlZCA9IHJldmVyc2VLZXl3b3Jkc1tyZ2JdO1xuXHRpZiAocmV2ZXJzZWQpIHtcblx0XHRyZXR1cm4gcmV2ZXJzZWQ7XG5cdH1cblxuXHRsZXQgY3VycmVudENsb3Nlc3REaXN0YW5jZSA9IEluZmluaXR5O1xuXHRsZXQgY3VycmVudENsb3Nlc3RLZXl3b3JkO1xuXG5cdGZvciAoY29uc3Qga2V5d29yZCBvZiBPYmplY3Qua2V5cyhjc3NLZXl3b3JkcykpIHtcblx0XHRjb25zdCB2YWx1ZSA9IGNzc0tleXdvcmRzW2tleXdvcmRdO1xuXG5cdFx0Ly8gQ29tcHV0ZSBjb21wYXJhdGl2ZSBkaXN0YW5jZVxuXHRcdGNvbnN0IGRpc3RhbmNlID0gY29tcGFyYXRpdmVEaXN0YW5jZShyZ2IsIHZhbHVlKTtcblxuXHRcdC8vIENoZWNrIGlmIGl0cyBsZXNzLCBpZiBzbyBzZXQgYXMgY2xvc2VzdFxuXHRcdGlmIChkaXN0YW5jZSA8IGN1cnJlbnRDbG9zZXN0RGlzdGFuY2UpIHtcblx0XHRcdGN1cnJlbnRDbG9zZXN0RGlzdGFuY2UgPSBkaXN0YW5jZTtcblx0XHRcdGN1cnJlbnRDbG9zZXN0S2V5d29yZCA9IGtleXdvcmQ7XG5cdFx0fVxuXHR9XG5cblx0cmV0dXJuIGN1cnJlbnRDbG9zZXN0S2V5d29yZDtcbn07XG5cbmNvbnZlcnQua2V5d29yZC5yZ2IgPSBmdW5jdGlvbiAoa2V5d29yZCkge1xuXHRyZXR1cm4gY3NzS2V5d29yZHNba2V5d29yZF07XG59O1xuXG5jb252ZXJ0LnJnYi54eXogPSBmdW5jdGlvbiAocmdiKSB7XG5cdGxldCByID0gcmdiWzBdIC8gMjU1O1xuXHRsZXQgZyA9IHJnYlsxXSAvIDI1NTtcblx0bGV0IGIgPSByZ2JbMl0gLyAyNTU7XG5cblx0Ly8gQXNzdW1lIHNSR0Jcblx0ciA9IHIgPiAwLjA0MDQ1ID8gKCgociArIDAuMDU1KSAvIDEuMDU1KSAqKiAyLjQpIDogKHIgLyAxMi45Mik7XG5cdGcgPSBnID4gMC4wNDA0NSA/ICgoKGcgKyAwLjA1NSkgLyAxLjA1NSkgKiogMi40KSA6IChnIC8gMTIuOTIpO1xuXHRiID0gYiA+IDAuMDQwNDUgPyAoKChiICsgMC4wNTUpIC8gMS4wNTUpICoqIDIuNCkgOiAoYiAvIDEyLjkyKTtcblxuXHRjb25zdCB4ID0gKHIgKiAwLjQxMjQpICsgKGcgKiAwLjM1NzYpICsgKGIgKiAwLjE4MDUpO1xuXHRjb25zdCB5ID0gKHIgKiAwLjIxMjYpICsgKGcgKiAwLjcxNTIpICsgKGIgKiAwLjA3MjIpO1xuXHRjb25zdCB6ID0gKHIgKiAwLjAxOTMpICsgKGcgKiAwLjExOTIpICsgKGIgKiAwLjk1MDUpO1xuXG5cdHJldHVybiBbeCAqIDEwMCwgeSAqIDEwMCwgeiAqIDEwMF07XG59O1xuXG5jb252ZXJ0LnJnYi5sYWIgPSBmdW5jdGlvbiAocmdiKSB7XG5cdGNvbnN0IHh5eiA9IGNvbnZlcnQucmdiLnh5eihyZ2IpO1xuXHRsZXQgeCA9IHh5elswXTtcblx0bGV0IHkgPSB4eXpbMV07XG5cdGxldCB6ID0geHl6WzJdO1xuXG5cdHggLz0gOTUuMDQ3O1xuXHR5IC89IDEwMDtcblx0eiAvPSAxMDguODgzO1xuXG5cdHggPSB4ID4gMC4wMDg4NTYgPyAoeCAqKiAoMSAvIDMpKSA6ICg3Ljc4NyAqIHgpICsgKDE2IC8gMTE2KTtcblx0eSA9IHkgPiAwLjAwODg1NiA/ICh5ICoqICgxIC8gMykpIDogKDcuNzg3ICogeSkgKyAoMTYgLyAxMTYpO1xuXHR6ID0geiA+IDAuMDA4ODU2ID8gKHogKiogKDEgLyAzKSkgOiAoNy43ODcgKiB6KSArICgxNiAvIDExNik7XG5cblx0Y29uc3QgbCA9ICgxMTYgKiB5KSAtIDE2O1xuXHRjb25zdCBhID0gNTAwICogKHggLSB5KTtcblx0Y29uc3QgYiA9IDIwMCAqICh5IC0geik7XG5cblx0cmV0dXJuIFtsLCBhLCBiXTtcbn07XG5cbmNvbnZlcnQuaHNsLnJnYiA9IGZ1bmN0aW9uIChoc2wpIHtcblx0Y29uc3QgaCA9IGhzbFswXSAvIDM2MDtcblx0Y29uc3QgcyA9IGhzbFsxXSAvIDEwMDtcblx0Y29uc3QgbCA9IGhzbFsyXSAvIDEwMDtcblx0bGV0IHQyO1xuXHRsZXQgdDM7XG5cdGxldCB2YWw7XG5cblx0aWYgKHMgPT09IDApIHtcblx0XHR2YWwgPSBsICogMjU1O1xuXHRcdHJldHVybiBbdmFsLCB2YWwsIHZhbF07XG5cdH1cblxuXHRpZiAobCA8IDAuNSkge1xuXHRcdHQyID0gbCAqICgxICsgcyk7XG5cdH0gZWxzZSB7XG5cdFx0dDIgPSBsICsgcyAtIGwgKiBzO1xuXHR9XG5cblx0Y29uc3QgdDEgPSAyICogbCAtIHQyO1xuXG5cdGNvbnN0IHJnYiA9IFswLCAwLCAwXTtcblx0Zm9yIChsZXQgaSA9IDA7IGkgPCAzOyBpKyspIHtcblx0XHR0MyA9IGggKyAxIC8gMyAqIC0oaSAtIDEpO1xuXHRcdGlmICh0MyA8IDApIHtcblx0XHRcdHQzKys7XG5cdFx0fVxuXG5cdFx0aWYgKHQzID4gMSkge1xuXHRcdFx0dDMtLTtcblx0XHR9XG5cblx0XHRpZiAoNiAqIHQzIDwgMSkge1xuXHRcdFx0dmFsID0gdDEgKyAodDIgLSB0MSkgKiA2ICogdDM7XG5cdFx0fSBlbHNlIGlmICgyICogdDMgPCAxKSB7XG5cdFx0XHR2YWwgPSB0Mjtcblx0XHR9IGVsc2UgaWYgKDMgKiB0MyA8IDIpIHtcblx0XHRcdHZhbCA9IHQxICsgKHQyIC0gdDEpICogKDIgLyAzIC0gdDMpICogNjtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dmFsID0gdDE7XG5cdFx0fVxuXG5cdFx0cmdiW2ldID0gdmFsICogMjU1O1xuXHR9XG5cblx0cmV0dXJuIHJnYjtcbn07XG5cbmNvbnZlcnQuaHNsLmhzdiA9IGZ1bmN0aW9uIChoc2wpIHtcblx0Y29uc3QgaCA9IGhzbFswXTtcblx0bGV0IHMgPSBoc2xbMV0gLyAxMDA7XG5cdGxldCBsID0gaHNsWzJdIC8gMTAwO1xuXHRsZXQgc21pbiA9IHM7XG5cdGNvbnN0IGxtaW4gPSBNYXRoLm1heChsLCAwLjAxKTtcblxuXHRsICo9IDI7XG5cdHMgKj0gKGwgPD0gMSkgPyBsIDogMiAtIGw7XG5cdHNtaW4gKj0gbG1pbiA8PSAxID8gbG1pbiA6IDIgLSBsbWluO1xuXHRjb25zdCB2ID0gKGwgKyBzKSAvIDI7XG5cdGNvbnN0IHN2ID0gbCA9PT0gMCA/ICgyICogc21pbikgLyAobG1pbiArIHNtaW4pIDogKDIgKiBzKSAvIChsICsgcyk7XG5cblx0cmV0dXJuIFtoLCBzdiAqIDEwMCwgdiAqIDEwMF07XG59O1xuXG5jb252ZXJ0Lmhzdi5yZ2IgPSBmdW5jdGlvbiAoaHN2KSB7XG5cdGNvbnN0IGggPSBoc3ZbMF0gLyA2MDtcblx0Y29uc3QgcyA9IGhzdlsxXSAvIDEwMDtcblx0bGV0IHYgPSBoc3ZbMl0gLyAxMDA7XG5cdGNvbnN0IGhpID0gTWF0aC5mbG9vcihoKSAlIDY7XG5cblx0Y29uc3QgZiA9IGggLSBNYXRoLmZsb29yKGgpO1xuXHRjb25zdCBwID0gMjU1ICogdiAqICgxIC0gcyk7XG5cdGNvbnN0IHEgPSAyNTUgKiB2ICogKDEgLSAocyAqIGYpKTtcblx0Y29uc3QgdCA9IDI1NSAqIHYgKiAoMSAtIChzICogKDEgLSBmKSkpO1xuXHR2ICo9IDI1NTtcblxuXHRzd2l0Y2ggKGhpKSB7XG5cdFx0Y2FzZSAwOlxuXHRcdFx0cmV0dXJuIFt2LCB0LCBwXTtcblx0XHRjYXNlIDE6XG5cdFx0XHRyZXR1cm4gW3EsIHYsIHBdO1xuXHRcdGNhc2UgMjpcblx0XHRcdHJldHVybiBbcCwgdiwgdF07XG5cdFx0Y2FzZSAzOlxuXHRcdFx0cmV0dXJuIFtwLCBxLCB2XTtcblx0XHRjYXNlIDQ6XG5cdFx0XHRyZXR1cm4gW3QsIHAsIHZdO1xuXHRcdGNhc2UgNTpcblx0XHRcdHJldHVybiBbdiwgcCwgcV07XG5cdH1cbn07XG5cbmNvbnZlcnQuaHN2LmhzbCA9IGZ1bmN0aW9uIChoc3YpIHtcblx0Y29uc3QgaCA9IGhzdlswXTtcblx0Y29uc3QgcyA9IGhzdlsxXSAvIDEwMDtcblx0Y29uc3QgdiA9IGhzdlsyXSAvIDEwMDtcblx0Y29uc3Qgdm1pbiA9IE1hdGgubWF4KHYsIDAuMDEpO1xuXHRsZXQgc2w7XG5cdGxldCBsO1xuXG5cdGwgPSAoMiAtIHMpICogdjtcblx0Y29uc3QgbG1pbiA9ICgyIC0gcykgKiB2bWluO1xuXHRzbCA9IHMgKiB2bWluO1xuXHRzbCAvPSAobG1pbiA8PSAxKSA/IGxtaW4gOiAyIC0gbG1pbjtcblx0c2wgPSBzbCB8fCAwO1xuXHRsIC89IDI7XG5cblx0cmV0dXJuIFtoLCBzbCAqIDEwMCwgbCAqIDEwMF07XG59O1xuXG4vLyBodHRwOi8vZGV2LnczLm9yZy9jc3N3Zy9jc3MtY29sb3IvI2h3Yi10by1yZ2JcbmNvbnZlcnQuaHdiLnJnYiA9IGZ1bmN0aW9uIChod2IpIHtcblx0Y29uc3QgaCA9IGh3YlswXSAvIDM2MDtcblx0bGV0IHdoID0gaHdiWzFdIC8gMTAwO1xuXHRsZXQgYmwgPSBod2JbMl0gLyAxMDA7XG5cdGNvbnN0IHJhdGlvID0gd2ggKyBibDtcblx0bGV0IGY7XG5cblx0Ly8gV2ggKyBibCBjYW50IGJlID4gMVxuXHRpZiAocmF0aW8gPiAxKSB7XG5cdFx0d2ggLz0gcmF0aW87XG5cdFx0YmwgLz0gcmF0aW87XG5cdH1cblxuXHRjb25zdCBpID0gTWF0aC5mbG9vcig2ICogaCk7XG5cdGNvbnN0IHYgPSAxIC0gYmw7XG5cdGYgPSA2ICogaCAtIGk7XG5cblx0aWYgKChpICYgMHgwMSkgIT09IDApIHtcblx0XHRmID0gMSAtIGY7XG5cdH1cblxuXHRjb25zdCBuID0gd2ggKyBmICogKHYgLSB3aCk7IC8vIExpbmVhciBpbnRlcnBvbGF0aW9uXG5cblx0bGV0IHI7XG5cdGxldCBnO1xuXHRsZXQgYjtcblx0LyogZXNsaW50LWRpc2FibGUgbWF4LXN0YXRlbWVudHMtcGVyLWxpbmUsbm8tbXVsdGktc3BhY2VzICovXG5cdHN3aXRjaCAoaSkge1xuXHRcdGRlZmF1bHQ6XG5cdFx0Y2FzZSA2OlxuXHRcdGNhc2UgMDogciA9IHY7ICBnID0gbjsgIGIgPSB3aDsgYnJlYWs7XG5cdFx0Y2FzZSAxOiByID0gbjsgIGcgPSB2OyAgYiA9IHdoOyBicmVhaztcblx0XHRjYXNlIDI6IHIgPSB3aDsgZyA9IHY7ICBiID0gbjsgYnJlYWs7XG5cdFx0Y2FzZSAzOiByID0gd2g7IGcgPSBuOyAgYiA9IHY7IGJyZWFrO1xuXHRcdGNhc2UgNDogciA9IG47ICBnID0gd2g7IGIgPSB2OyBicmVhaztcblx0XHRjYXNlIDU6IHIgPSB2OyAgZyA9IHdoOyBiID0gbjsgYnJlYWs7XG5cdH1cblx0LyogZXNsaW50LWVuYWJsZSBtYXgtc3RhdGVtZW50cy1wZXItbGluZSxuby1tdWx0aS1zcGFjZXMgKi9cblxuXHRyZXR1cm4gW3IgKiAyNTUsIGcgKiAyNTUsIGIgKiAyNTVdO1xufTtcblxuY29udmVydC5jbXlrLnJnYiA9IGZ1bmN0aW9uIChjbXlrKSB7XG5cdGNvbnN0IGMgPSBjbXlrWzBdIC8gMTAwO1xuXHRjb25zdCBtID0gY215a1sxXSAvIDEwMDtcblx0Y29uc3QgeSA9IGNteWtbMl0gLyAxMDA7XG5cdGNvbnN0IGsgPSBjbXlrWzNdIC8gMTAwO1xuXG5cdGNvbnN0IHIgPSAxIC0gTWF0aC5taW4oMSwgYyAqICgxIC0gaykgKyBrKTtcblx0Y29uc3QgZyA9IDEgLSBNYXRoLm1pbigxLCBtICogKDEgLSBrKSArIGspO1xuXHRjb25zdCBiID0gMSAtIE1hdGgubWluKDEsIHkgKiAoMSAtIGspICsgayk7XG5cblx0cmV0dXJuIFtyICogMjU1LCBnICogMjU1LCBiICogMjU1XTtcbn07XG5cbmNvbnZlcnQueHl6LnJnYiA9IGZ1bmN0aW9uICh4eXopIHtcblx0Y29uc3QgeCA9IHh5elswXSAvIDEwMDtcblx0Y29uc3QgeSA9IHh5elsxXSAvIDEwMDtcblx0Y29uc3QgeiA9IHh5elsyXSAvIDEwMDtcblx0bGV0IHI7XG5cdGxldCBnO1xuXHRsZXQgYjtcblxuXHRyID0gKHggKiAzLjI0MDYpICsgKHkgKiAtMS41MzcyKSArICh6ICogLTAuNDk4Nik7XG5cdGcgPSAoeCAqIC0wLjk2ODkpICsgKHkgKiAxLjg3NTgpICsgKHogKiAwLjA0MTUpO1xuXHRiID0gKHggKiAwLjA1NTcpICsgKHkgKiAtMC4yMDQwKSArICh6ICogMS4wNTcwKTtcblxuXHQvLyBBc3N1bWUgc1JHQlxuXHRyID0gciA+IDAuMDAzMTMwOFxuXHRcdD8gKCgxLjA1NSAqIChyICoqICgxLjAgLyAyLjQpKSkgLSAwLjA1NSlcblx0XHQ6IHIgKiAxMi45MjtcblxuXHRnID0gZyA+IDAuMDAzMTMwOFxuXHRcdD8gKCgxLjA1NSAqIChnICoqICgxLjAgLyAyLjQpKSkgLSAwLjA1NSlcblx0XHQ6IGcgKiAxMi45MjtcblxuXHRiID0gYiA+IDAuMDAzMTMwOFxuXHRcdD8gKCgxLjA1NSAqIChiICoqICgxLjAgLyAyLjQpKSkgLSAwLjA1NSlcblx0XHQ6IGIgKiAxMi45MjtcblxuXHRyID0gTWF0aC5taW4oTWF0aC5tYXgoMCwgciksIDEpO1xuXHRnID0gTWF0aC5taW4oTWF0aC5tYXgoMCwgZyksIDEpO1xuXHRiID0gTWF0aC5taW4oTWF0aC5tYXgoMCwgYiksIDEpO1xuXG5cdHJldHVybiBbciAqIDI1NSwgZyAqIDI1NSwgYiAqIDI1NV07XG59O1xuXG5jb252ZXJ0Lnh5ei5sYWIgPSBmdW5jdGlvbiAoeHl6KSB7XG5cdGxldCB4ID0geHl6WzBdO1xuXHRsZXQgeSA9IHh5elsxXTtcblx0bGV0IHogPSB4eXpbMl07XG5cblx0eCAvPSA5NS4wNDc7XG5cdHkgLz0gMTAwO1xuXHR6IC89IDEwOC44ODM7XG5cblx0eCA9IHggPiAwLjAwODg1NiA/ICh4ICoqICgxIC8gMykpIDogKDcuNzg3ICogeCkgKyAoMTYgLyAxMTYpO1xuXHR5ID0geSA+IDAuMDA4ODU2ID8gKHkgKiogKDEgLyAzKSkgOiAoNy43ODcgKiB5KSArICgxNiAvIDExNik7XG5cdHogPSB6ID4gMC4wMDg4NTYgPyAoeiAqKiAoMSAvIDMpKSA6ICg3Ljc4NyAqIHopICsgKDE2IC8gMTE2KTtcblxuXHRjb25zdCBsID0gKDExNiAqIHkpIC0gMTY7XG5cdGNvbnN0IGEgPSA1MDAgKiAoeCAtIHkpO1xuXHRjb25zdCBiID0gMjAwICogKHkgLSB6KTtcblxuXHRyZXR1cm4gW2wsIGEsIGJdO1xufTtcblxuY29udmVydC5sYWIueHl6ID0gZnVuY3Rpb24gKGxhYikge1xuXHRjb25zdCBsID0gbGFiWzBdO1xuXHRjb25zdCBhID0gbGFiWzFdO1xuXHRjb25zdCBiID0gbGFiWzJdO1xuXHRsZXQgeDtcblx0bGV0IHk7XG5cdGxldCB6O1xuXG5cdHkgPSAobCArIDE2KSAvIDExNjtcblx0eCA9IGEgLyA1MDAgKyB5O1xuXHR6ID0geSAtIGIgLyAyMDA7XG5cblx0Y29uc3QgeTIgPSB5ICoqIDM7XG5cdGNvbnN0IHgyID0geCAqKiAzO1xuXHRjb25zdCB6MiA9IHogKiogMztcblx0eSA9IHkyID4gMC4wMDg4NTYgPyB5MiA6ICh5IC0gMTYgLyAxMTYpIC8gNy43ODc7XG5cdHggPSB4MiA+IDAuMDA4ODU2ID8geDIgOiAoeCAtIDE2IC8gMTE2KSAvIDcuNzg3O1xuXHR6ID0gejIgPiAwLjAwODg1NiA/IHoyIDogKHogLSAxNiAvIDExNikgLyA3Ljc4NztcblxuXHR4ICo9IDk1LjA0Nztcblx0eSAqPSAxMDA7XG5cdHogKj0gMTA4Ljg4MztcblxuXHRyZXR1cm4gW3gsIHksIHpdO1xufTtcblxuY29udmVydC5sYWIubGNoID0gZnVuY3Rpb24gKGxhYikge1xuXHRjb25zdCBsID0gbGFiWzBdO1xuXHRjb25zdCBhID0gbGFiWzFdO1xuXHRjb25zdCBiID0gbGFiWzJdO1xuXHRsZXQgaDtcblxuXHRjb25zdCBociA9IE1hdGguYXRhbjIoYiwgYSk7XG5cdGggPSBociAqIDM2MCAvIDIgLyBNYXRoLlBJO1xuXG5cdGlmIChoIDwgMCkge1xuXHRcdGggKz0gMzYwO1xuXHR9XG5cblx0Y29uc3QgYyA9IE1hdGguc3FydChhICogYSArIGIgKiBiKTtcblxuXHRyZXR1cm4gW2wsIGMsIGhdO1xufTtcblxuY29udmVydC5sY2gubGFiID0gZnVuY3Rpb24gKGxjaCkge1xuXHRjb25zdCBsID0gbGNoWzBdO1xuXHRjb25zdCBjID0gbGNoWzFdO1xuXHRjb25zdCBoID0gbGNoWzJdO1xuXG5cdGNvbnN0IGhyID0gaCAvIDM2MCAqIDIgKiBNYXRoLlBJO1xuXHRjb25zdCBhID0gYyAqIE1hdGguY29zKGhyKTtcblx0Y29uc3QgYiA9IGMgKiBNYXRoLnNpbihocik7XG5cblx0cmV0dXJuIFtsLCBhLCBiXTtcbn07XG5cbmNvbnZlcnQucmdiLmFuc2kxNiA9IGZ1bmN0aW9uIChhcmdzLCBzYXR1cmF0aW9uID0gbnVsbCkge1xuXHRjb25zdCBbciwgZywgYl0gPSBhcmdzO1xuXHRsZXQgdmFsdWUgPSBzYXR1cmF0aW9uID09PSBudWxsID8gY29udmVydC5yZ2IuaHN2KGFyZ3MpWzJdIDogc2F0dXJhdGlvbjsgLy8gSHN2IC0+IGFuc2kxNiBvcHRpbWl6YXRpb25cblxuXHR2YWx1ZSA9IE1hdGgucm91bmQodmFsdWUgLyA1MCk7XG5cblx0aWYgKHZhbHVlID09PSAwKSB7XG5cdFx0cmV0dXJuIDMwO1xuXHR9XG5cblx0bGV0IGFuc2kgPSAzMFxuXHRcdCsgKChNYXRoLnJvdW5kKGIgLyAyNTUpIDw8IDIpXG5cdFx0fCAoTWF0aC5yb3VuZChnIC8gMjU1KSA8PCAxKVxuXHRcdHwgTWF0aC5yb3VuZChyIC8gMjU1KSk7XG5cblx0aWYgKHZhbHVlID09PSAyKSB7XG5cdFx0YW5zaSArPSA2MDtcblx0fVxuXG5cdHJldHVybiBhbnNpO1xufTtcblxuY29udmVydC5oc3YuYW5zaTE2ID0gZnVuY3Rpb24gKGFyZ3MpIHtcblx0Ly8gT3B0aW1pemF0aW9uIGhlcmU7IHdlIGFscmVhZHkga25vdyB0aGUgdmFsdWUgYW5kIGRvbid0IG5lZWQgdG8gZ2V0XG5cdC8vIGl0IGNvbnZlcnRlZCBmb3IgdXMuXG5cdHJldHVybiBjb252ZXJ0LnJnYi5hbnNpMTYoY29udmVydC5oc3YucmdiKGFyZ3MpLCBhcmdzWzJdKTtcbn07XG5cbmNvbnZlcnQucmdiLmFuc2kyNTYgPSBmdW5jdGlvbiAoYXJncykge1xuXHRjb25zdCByID0gYXJnc1swXTtcblx0Y29uc3QgZyA9IGFyZ3NbMV07XG5cdGNvbnN0IGIgPSBhcmdzWzJdO1xuXG5cdC8vIFdlIHVzZSB0aGUgZXh0ZW5kZWQgZ3JleXNjYWxlIHBhbGV0dGUgaGVyZSwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mXG5cdC8vIGJsYWNrIGFuZCB3aGl0ZS4gbm9ybWFsIHBhbGV0dGUgb25seSBoYXMgNCBncmV5c2NhbGUgc2hhZGVzLlxuXHRpZiAociA9PT0gZyAmJiBnID09PSBiKSB7XG5cdFx0aWYgKHIgPCA4KSB7XG5cdFx0XHRyZXR1cm4gMTY7XG5cdFx0fVxuXG5cdFx0aWYgKHIgPiAyNDgpIHtcblx0XHRcdHJldHVybiAyMzE7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIE1hdGgucm91bmQoKChyIC0gOCkgLyAyNDcpICogMjQpICsgMjMyO1xuXHR9XG5cblx0Y29uc3QgYW5zaSA9IDE2XG5cdFx0KyAoMzYgKiBNYXRoLnJvdW5kKHIgLyAyNTUgKiA1KSlcblx0XHQrICg2ICogTWF0aC5yb3VuZChnIC8gMjU1ICogNSkpXG5cdFx0KyBNYXRoLnJvdW5kKGIgLyAyNTUgKiA1KTtcblxuXHRyZXR1cm4gYW5zaTtcbn07XG5cbmNvbnZlcnQuYW5zaTE2LnJnYiA9IGZ1bmN0aW9uIChhcmdzKSB7XG5cdGxldCBjb2xvciA9IGFyZ3MgJSAxMDtcblxuXHQvLyBIYW5kbGUgZ3JleXNjYWxlXG5cdGlmIChjb2xvciA9PT0gMCB8fCBjb2xvciA9PT0gNykge1xuXHRcdGlmIChhcmdzID4gNTApIHtcblx0XHRcdGNvbG9yICs9IDMuNTtcblx0XHR9XG5cblx0XHRjb2xvciA9IGNvbG9yIC8gMTAuNSAqIDI1NTtcblxuXHRcdHJldHVybiBbY29sb3IsIGNvbG9yLCBjb2xvcl07XG5cdH1cblxuXHRjb25zdCBtdWx0ID0gKH5+KGFyZ3MgPiA1MCkgKyAxKSAqIDAuNTtcblx0Y29uc3QgciA9ICgoY29sb3IgJiAxKSAqIG11bHQpICogMjU1O1xuXHRjb25zdCBnID0gKCgoY29sb3IgPj4gMSkgJiAxKSAqIG11bHQpICogMjU1O1xuXHRjb25zdCBiID0gKCgoY29sb3IgPj4gMikgJiAxKSAqIG11bHQpICogMjU1O1xuXG5cdHJldHVybiBbciwgZywgYl07XG59O1xuXG5jb252ZXJ0LmFuc2kyNTYucmdiID0gZnVuY3Rpb24gKGFyZ3MpIHtcblx0Ly8gSGFuZGxlIGdyZXlzY2FsZVxuXHRpZiAoYXJncyA+PSAyMzIpIHtcblx0XHRjb25zdCBjID0gKGFyZ3MgLSAyMzIpICogMTAgKyA4O1xuXHRcdHJldHVybiBbYywgYywgY107XG5cdH1cblxuXHRhcmdzIC09IDE2O1xuXG5cdGxldCByZW07XG5cdGNvbnN0IHIgPSBNYXRoLmZsb29yKGFyZ3MgLyAzNikgLyA1ICogMjU1O1xuXHRjb25zdCBnID0gTWF0aC5mbG9vcigocmVtID0gYXJncyAlIDM2KSAvIDYpIC8gNSAqIDI1NTtcblx0Y29uc3QgYiA9IChyZW0gJSA2KSAvIDUgKiAyNTU7XG5cblx0cmV0dXJuIFtyLCBnLCBiXTtcbn07XG5cbmNvbnZlcnQucmdiLmhleCA9IGZ1bmN0aW9uIChhcmdzKSB7XG5cdGNvbnN0IGludGVnZXIgPSAoKE1hdGgucm91bmQoYXJnc1swXSkgJiAweEZGKSA8PCAxNilcblx0XHQrICgoTWF0aC5yb3VuZChhcmdzWzFdKSAmIDB4RkYpIDw8IDgpXG5cdFx0KyAoTWF0aC5yb3VuZChhcmdzWzJdKSAmIDB4RkYpO1xuXG5cdGNvbnN0IHN0cmluZyA9IGludGVnZXIudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7XG5cdHJldHVybiAnMDAwMDAwJy5zdWJzdHJpbmcoc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7XG59O1xuXG5jb252ZXJ0LmhleC5yZ2IgPSBmdW5jdGlvbiAoYXJncykge1xuXHRjb25zdCBtYXRjaCA9IGFyZ3MudG9TdHJpbmcoMTYpLm1hdGNoKC9bYS1mMC05XXs2fXxbYS1mMC05XXszfS9pKTtcblx0aWYgKCFtYXRjaCkge1xuXHRcdHJldHVybiBbMCwgMCwgMF07XG5cdH1cblxuXHRsZXQgY29sb3JTdHJpbmcgPSBtYXRjaFswXTtcblxuXHRpZiAobWF0Y2hbMF0ubGVuZ3RoID09PSAzKSB7XG5cdFx0Y29sb3JTdHJpbmcgPSBjb2xvclN0cmluZy5zcGxpdCgnJykubWFwKGNoYXIgPT4ge1xuXHRcdFx0cmV0dXJuIGNoYXIgKyBjaGFyO1xuXHRcdH0pLmpvaW4oJycpO1xuXHR9XG5cblx0Y29uc3QgaW50ZWdlciA9IHBhcnNlSW50KGNvbG9yU3RyaW5nLCAxNik7XG5cdGNvbnN0IHIgPSAoaW50ZWdlciA+PiAxNikgJiAweEZGO1xuXHRjb25zdCBnID0gKGludGVnZXIgPj4gOCkgJiAweEZGO1xuXHRjb25zdCBiID0gaW50ZWdlciAmIDB4RkY7XG5cblx0cmV0dXJuIFtyLCBnLCBiXTtcbn07XG5cbmNvbnZlcnQucmdiLmhjZyA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0Y29uc3QgciA9IHJnYlswXSAvIDI1NTtcblx0Y29uc3QgZyA9IHJnYlsxXSAvIDI1NTtcblx0Y29uc3QgYiA9IHJnYlsyXSAvIDI1NTtcblx0Y29uc3QgbWF4ID0gTWF0aC5tYXgoTWF0aC5tYXgociwgZyksIGIpO1xuXHRjb25zdCBtaW4gPSBNYXRoLm1pbihNYXRoLm1pbihyLCBnKSwgYik7XG5cdGNvbnN0IGNocm9tYSA9IChtYXggLSBtaW4pO1xuXHRsZXQgZ3JheXNjYWxlO1xuXHRsZXQgaHVlO1xuXG5cdGlmIChjaHJvbWEgPCAxKSB7XG5cdFx0Z3JheXNjYWxlID0gbWluIC8gKDEgLSBjaHJvbWEpO1xuXHR9IGVsc2Uge1xuXHRcdGdyYXlzY2FsZSA9IDA7XG5cdH1cblxuXHRpZiAoY2hyb21hIDw9IDApIHtcblx0XHRodWUgPSAwO1xuXHR9IGVsc2Vcblx0aWYgKG1heCA9PT0gcikge1xuXHRcdGh1ZSA9ICgoZyAtIGIpIC8gY2hyb21hKSAlIDY7XG5cdH0gZWxzZVxuXHRpZiAobWF4ID09PSBnKSB7XG5cdFx0aHVlID0gMiArIChiIC0gcikgLyBjaHJvbWE7XG5cdH0gZWxzZSB7XG5cdFx0aHVlID0gNCArIChyIC0gZykgLyBjaHJvbWE7XG5cdH1cblxuXHRodWUgLz0gNjtcblx0aHVlICU9IDE7XG5cblx0cmV0dXJuIFtodWUgKiAzNjAsIGNocm9tYSAqIDEwMCwgZ3JheXNjYWxlICogMTAwXTtcbn07XG5cbmNvbnZlcnQuaHNsLmhjZyA9IGZ1bmN0aW9uIChoc2wpIHtcblx0Y29uc3QgcyA9IGhzbFsxXSAvIDEwMDtcblx0Y29uc3QgbCA9IGhzbFsyXSAvIDEwMDtcblxuXHRjb25zdCBjID0gbCA8IDAuNSA/ICgyLjAgKiBzICogbCkgOiAoMi4wICogcyAqICgxLjAgLSBsKSk7XG5cblx0bGV0IGYgPSAwO1xuXHRpZiAoYyA8IDEuMCkge1xuXHRcdGYgPSAobCAtIDAuNSAqIGMpIC8gKDEuMCAtIGMpO1xuXHR9XG5cblx0cmV0dXJuIFtoc2xbMF0sIGMgKiAxMDAsIGYgKiAxMDBdO1xufTtcblxuY29udmVydC5oc3YuaGNnID0gZnVuY3Rpb24gKGhzdikge1xuXHRjb25zdCBzID0gaHN2WzFdIC8gMTAwO1xuXHRjb25zdCB2ID0gaHN2WzJdIC8gMTAwO1xuXG5cdGNvbnN0IGMgPSBzICogdjtcblx0bGV0IGYgPSAwO1xuXG5cdGlmIChjIDwgMS4wKSB7XG5cdFx0ZiA9ICh2IC0gYykgLyAoMSAtIGMpO1xuXHR9XG5cblx0cmV0dXJuIFtoc3ZbMF0sIGMgKiAxMDAsIGYgKiAxMDBdO1xufTtcblxuY29udmVydC5oY2cucmdiID0gZnVuY3Rpb24gKGhjZykge1xuXHRjb25zdCBoID0gaGNnWzBdIC8gMzYwO1xuXHRjb25zdCBjID0gaGNnWzFdIC8gMTAwO1xuXHRjb25zdCBnID0gaGNnWzJdIC8gMTAwO1xuXG5cdGlmIChjID09PSAwLjApIHtcblx0XHRyZXR1cm4gW2cgKiAyNTUsIGcgKiAyNTUsIGcgKiAyNTVdO1xuXHR9XG5cblx0Y29uc3QgcHVyZSA9IFswLCAwLCAwXTtcblx0Y29uc3QgaGkgPSAoaCAlIDEpICogNjtcblx0Y29uc3QgdiA9IGhpICUgMTtcblx0Y29uc3QgdyA9IDEgLSB2O1xuXHRsZXQgbWcgPSAwO1xuXG5cdC8qIGVzbGludC1kaXNhYmxlIG1heC1zdGF0ZW1lbnRzLXBlci1saW5lICovXG5cdHN3aXRjaCAoTWF0aC5mbG9vcihoaSkpIHtcblx0XHRjYXNlIDA6XG5cdFx0XHRwdXJlWzBdID0gMTsgcHVyZVsxXSA9IHY7IHB1cmVbMl0gPSAwOyBicmVhaztcblx0XHRjYXNlIDE6XG5cdFx0XHRwdXJlWzBdID0gdzsgcHVyZVsxXSA9IDE7IHB1cmVbMl0gPSAwOyBicmVhaztcblx0XHRjYXNlIDI6XG5cdFx0XHRwdXJlWzBdID0gMDsgcHVyZVsxXSA9IDE7IHB1cmVbMl0gPSB2OyBicmVhaztcblx0XHRjYXNlIDM6XG5cdFx0XHRwdXJlWzBdID0gMDsgcHVyZVsxXSA9IHc7IHB1cmVbMl0gPSAxOyBicmVhaztcblx0XHRjYXNlIDQ6XG5cdFx0XHRwdXJlWzBdID0gdjsgcHVyZVsxXSA9IDA7IHB1cmVbMl0gPSAxOyBicmVhaztcblx0XHRkZWZhdWx0OlxuXHRcdFx0cHVyZVswXSA9IDE7IHB1cmVbMV0gPSAwOyBwdXJlWzJdID0gdztcblx0fVxuXHQvKiBlc2xpbnQtZW5hYmxlIG1heC1zdGF0ZW1lbnRzLXBlci1saW5lICovXG5cblx0bWcgPSAoMS4wIC0gYykgKiBnO1xuXG5cdHJldHVybiBbXG5cdFx0KGMgKiBwdXJlWzBdICsgbWcpICogMjU1LFxuXHRcdChjICogcHVyZVsxXSArIG1nKSAqIDI1NSxcblx0XHQoYyAqIHB1cmVbMl0gKyBtZykgKiAyNTVcblx0XTtcbn07XG5cbmNvbnZlcnQuaGNnLmhzdiA9IGZ1bmN0aW9uIChoY2cpIHtcblx0Y29uc3QgYyA9IGhjZ1sxXSAvIDEwMDtcblx0Y29uc3QgZyA9IGhjZ1syXSAvIDEwMDtcblxuXHRjb25zdCB2ID0gYyArIGcgKiAoMS4wIC0gYyk7XG5cdGxldCBmID0gMDtcblxuXHRpZiAodiA+IDAuMCkge1xuXHRcdGYgPSBjIC8gdjtcblx0fVxuXG5cdHJldHVybiBbaGNnWzBdLCBmICogMTAwLCB2ICogMTAwXTtcbn07XG5cbmNvbnZlcnQuaGNnLmhzbCA9IGZ1bmN0aW9uIChoY2cpIHtcblx0Y29uc3QgYyA9IGhjZ1sxXSAvIDEwMDtcblx0Y29uc3QgZyA9IGhjZ1syXSAvIDEwMDtcblxuXHRjb25zdCBsID0gZyAqICgxLjAgLSBjKSArIDAuNSAqIGM7XG5cdGxldCBzID0gMDtcblxuXHRpZiAobCA+IDAuMCAmJiBsIDwgMC41KSB7XG5cdFx0cyA9IGMgLyAoMiAqIGwpO1xuXHR9IGVsc2Vcblx0aWYgKGwgPj0gMC41ICYmIGwgPCAxLjApIHtcblx0XHRzID0gYyAvICgyICogKDEgLSBsKSk7XG5cdH1cblxuXHRyZXR1cm4gW2hjZ1swXSwgcyAqIDEwMCwgbCAqIDEwMF07XG59O1xuXG5jb252ZXJ0LmhjZy5od2IgPSBmdW5jdGlvbiAoaGNnKSB7XG5cdGNvbnN0IGMgPSBoY2dbMV0gLyAxMDA7XG5cdGNvbnN0IGcgPSBoY2dbMl0gLyAxMDA7XG5cdGNvbnN0IHYgPSBjICsgZyAqICgxLjAgLSBjKTtcblx0cmV0dXJuIFtoY2dbMF0sICh2IC0gYykgKiAxMDAsICgxIC0gdikgKiAxMDBdO1xufTtcblxuY29udmVydC5od2IuaGNnID0gZnVuY3Rpb24gKGh3Yikge1xuXHRjb25zdCB3ID0gaHdiWzFdIC8gMTAwO1xuXHRjb25zdCBiID0gaHdiWzJdIC8gMTAwO1xuXHRjb25zdCB2ID0gMSAtIGI7XG5cdGNvbnN0IGMgPSB2IC0gdztcblx0bGV0IGcgPSAwO1xuXG5cdGlmIChjIDwgMSkge1xuXHRcdGcgPSAodiAtIGMpIC8gKDEgLSBjKTtcblx0fVxuXG5cdHJldHVybiBbaHdiWzBdLCBjICogMTAwLCBnICogMTAwXTtcbn07XG5cbmNvbnZlcnQuYXBwbGUucmdiID0gZnVuY3Rpb24gKGFwcGxlKSB7XG5cdHJldHVybiBbKGFwcGxlWzBdIC8gNjU1MzUpICogMjU1LCAoYXBwbGVbMV0gLyA2NTUzNSkgKiAyNTUsIChhcHBsZVsyXSAvIDY1NTM1KSAqIDI1NV07XG59O1xuXG5jb252ZXJ0LnJnYi5hcHBsZSA9IGZ1bmN0aW9uIChyZ2IpIHtcblx0cmV0dXJuIFsocmdiWzBdIC8gMjU1KSAqIDY1NTM1LCAocmdiWzFdIC8gMjU1KSAqIDY1NTM1LCAocmdiWzJdIC8gMjU1KSAqIDY1NTM1XTtcbn07XG5cbmNvbnZlcnQuZ3JheS5yZ2IgPSBmdW5jdGlvbiAoYXJncykge1xuXHRyZXR1cm4gW2FyZ3NbMF0gLyAxMDAgKiAyNTUsIGFyZ3NbMF0gLyAxMDAgKiAyNTUsIGFyZ3NbMF0gLyAxMDAgKiAyNTVdO1xufTtcblxuY29udmVydC5ncmF5LmhzbCA9IGZ1bmN0aW9uIChhcmdzKSB7XG5cdHJldHVybiBbMCwgMCwgYXJnc1swXV07XG59O1xuXG5jb252ZXJ0LmdyYXkuaHN2ID0gY29udmVydC5ncmF5LmhzbDtcblxuY29udmVydC5ncmF5Lmh3YiA9IGZ1bmN0aW9uIChncmF5KSB7XG5cdHJldHVybiBbMCwgMTAwLCBncmF5WzBdXTtcbn07XG5cbmNvbnZlcnQuZ3JheS5jbXlrID0gZnVuY3Rpb24gKGdyYXkpIHtcblx0cmV0dXJuIFswLCAwLCAwLCBncmF5WzBdXTtcbn07XG5cbmNvbnZlcnQuZ3JheS5sYWIgPSBmdW5jdGlvbiAoZ3JheSkge1xuXHRyZXR1cm4gW2dyYXlbMF0sIDAsIDBdO1xufTtcblxuY29udmVydC5ncmF5LmhleCA9IGZ1bmN0aW9uIChncmF5KSB7XG5cdGNvbnN0IHZhbCA9IE1hdGgucm91bmQoZ3JheVswXSAvIDEwMCAqIDI1NSkgJiAweEZGO1xuXHRjb25zdCBpbnRlZ2VyID0gKHZhbCA8PCAxNikgKyAodmFsIDw8IDgpICsgdmFsO1xuXG5cdGNvbnN0IHN0cmluZyA9IGludGVnZXIudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7XG5cdHJldHVybiAnMDAwMDAwJy5zdWJzdHJpbmcoc3RyaW5nLmxlbmd0aCkgKyBzdHJpbmc7XG59O1xuXG5jb252ZXJ0LnJnYi5ncmF5ID0gZnVuY3Rpb24gKHJnYikge1xuXHRjb25zdCB2YWwgPSAocmdiWzBdICsgcmdiWzFdICsgcmdiWzJdKSAvIDM7XG5cdHJldHVybiBbdmFsIC8gMjU1ICogMTAwXTtcbn07XG4iLCAiY29uc3QgY29udmVyc2lvbnMgPSByZXF1aXJlKCcuL2NvbnZlcnNpb25zJyk7XG5cbi8qXG5cdFRoaXMgZnVuY3Rpb24gcm91dGVzIGEgbW9kZWwgdG8gYWxsIG90aGVyIG1vZGVscy5cblxuXHRhbGwgZnVuY3Rpb25zIHRoYXQgYXJlIHJvdXRlZCBoYXZlIGEgcHJvcGVydHkgYC5jb252ZXJzaW9uYCBhdHRhY2hlZFxuXHR0byB0aGUgcmV0dXJuZWQgc3ludGhldGljIGZ1bmN0aW9uLiBUaGlzIHByb3BlcnR5IGlzIGFuIGFycmF5XG5cdG9mIHN0cmluZ3MsIGVhY2ggd2l0aCB0aGUgc3RlcHMgaW4gYmV0d2VlbiB0aGUgJ2Zyb20nIGFuZCAndG8nXG5cdGNvbG9yIG1vZGVscyAoaW5jbHVzaXZlKS5cblxuXHRjb252ZXJzaW9ucyB0aGF0IGFyZSBub3QgcG9zc2libGUgc2ltcGx5IGFyZSBub3QgaW5jbHVkZWQuXG4qL1xuXG5mdW5jdGlvbiBidWlsZEdyYXBoKCkge1xuXHRjb25zdCBncmFwaCA9IHt9O1xuXHQvLyBodHRwczovL2pzcGVyZi5jb20vb2JqZWN0LWtleXMtdnMtZm9yLWluLXdpdGgtY2xvc3VyZS8zXG5cdGNvbnN0IG1vZGVscyA9IE9iamVjdC5rZXlzKGNvbnZlcnNpb25zKTtcblxuXHRmb3IgKGxldCBsZW4gPSBtb2RlbHMubGVuZ3RoLCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG5cdFx0Z3JhcGhbbW9kZWxzW2ldXSA9IHtcblx0XHRcdC8vIGh0dHA6Ly9qc3BlcmYuY29tLzEtdnMtaW5maW5pdHlcblx0XHRcdC8vIG1pY3JvLW9wdCwgYnV0IHRoaXMgaXMgc2ltcGxlLlxuXHRcdFx0ZGlzdGFuY2U6IC0xLFxuXHRcdFx0cGFyZW50OiBudWxsXG5cdFx0fTtcblx0fVxuXG5cdHJldHVybiBncmFwaDtcbn1cblxuLy8gaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQnJlYWR0aC1maXJzdF9zZWFyY2hcbmZ1bmN0aW9uIGRlcml2ZUJGUyhmcm9tTW9kZWwpIHtcblx0Y29uc3QgZ3JhcGggPSBidWlsZEdyYXBoKCk7XG5cdGNvbnN0IHF1ZXVlID0gW2Zyb21Nb2RlbF07IC8vIFVuc2hpZnQgLT4gcXVldWUgLT4gcG9wXG5cblx0Z3JhcGhbZnJvbU1vZGVsXS5kaXN0YW5jZSA9IDA7XG5cblx0d2hpbGUgKHF1ZXVlLmxlbmd0aCkge1xuXHRcdGNvbnN0IGN1cnJlbnQgPSBxdWV1ZS5wb3AoKTtcblx0XHRjb25zdCBhZGphY2VudHMgPSBPYmplY3Qua2V5cyhjb252ZXJzaW9uc1tjdXJyZW50XSk7XG5cblx0XHRmb3IgKGxldCBsZW4gPSBhZGphY2VudHMubGVuZ3RoLCBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG5cdFx0XHRjb25zdCBhZGphY2VudCA9IGFkamFjZW50c1tpXTtcblx0XHRcdGNvbnN0IG5vZGUgPSBncmFwaFthZGphY2VudF07XG5cblx0XHRcdGlmIChub2RlLmRpc3RhbmNlID09PSAtMSkge1xuXHRcdFx0XHRub2RlLmRpc3RhbmNlID0gZ3JhcGhbY3VycmVudF0uZGlzdGFuY2UgKyAxO1xuXHRcdFx0XHRub2RlLnBhcmVudCA9IGN1cnJlbnQ7XG5cdFx0XHRcdHF1ZXVlLnVuc2hpZnQoYWRqYWNlbnQpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHJldHVybiBncmFwaDtcbn1cblxuZnVuY3Rpb24gbGluayhmcm9tLCB0bykge1xuXHRyZXR1cm4gZnVuY3Rpb24gKGFyZ3MpIHtcblx0XHRyZXR1cm4gdG8oZnJvbShhcmdzKSk7XG5cdH07XG59XG5cbmZ1bmN0aW9uIHdyYXBDb252ZXJzaW9uKHRvTW9kZWwsIGdyYXBoKSB7XG5cdGNvbnN0IHBhdGggPSBbZ3JhcGhbdG9Nb2RlbF0ucGFyZW50LCB0b01vZGVsXTtcblx0bGV0IGZuID0gY29udmVyc2lvbnNbZ3JhcGhbdG9Nb2RlbF0ucGFyZW50XVt0b01vZGVsXTtcblxuXHRsZXQgY3VyID0gZ3JhcGhbdG9Nb2RlbF0ucGFyZW50O1xuXHR3aGlsZSAoZ3JhcGhbY3VyXS5wYXJlbnQpIHtcblx0XHRwYXRoLnVuc2hpZnQoZ3JhcGhbY3VyXS5wYXJlbnQpO1xuXHRcdGZuID0gbGluayhjb252ZXJzaW9uc1tncmFwaFtjdXJdLnBhcmVudF1bY3VyXSwgZm4pO1xuXHRcdGN1ciA9IGdyYXBoW2N1cl0ucGFyZW50O1xuXHR9XG5cblx0Zm4uY29udmVyc2lvbiA9IHBhdGg7XG5cdHJldHVybiBmbjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZnJvbU1vZGVsKSB7XG5cdGNvbnN0IGdyYXBoID0gZGVyaXZlQkZTKGZyb21Nb2RlbCk7XG5cdGNvbnN0IGNvbnZlcnNpb24gPSB7fTtcblxuXHRjb25zdCBtb2RlbHMgPSBPYmplY3Qua2V5cyhncmFwaCk7XG5cdGZvciAobGV0IGxlbiA9IG1vZGVscy5sZW5ndGgsIGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcblx0XHRjb25zdCB0b01vZGVsID0gbW9kZWxzW2ldO1xuXHRcdGNvbnN0IG5vZGUgPSBncmFwaFt0b01vZGVsXTtcblxuXHRcdGlmIChub2RlLnBhcmVudCA9PT0gbnVsbCkge1xuXHRcdFx0Ly8gTm8gcG9zc2libGUgY29udmVyc2lvbiwgb3IgdGhpcyBub2RlIGlzIHRoZSBzb3VyY2UgbW9kZWwuXG5cdFx0XHRjb250aW51ZTtcblx0XHR9XG5cblx0XHRjb252ZXJzaW9uW3RvTW9kZWxdID0gd3JhcENvbnZlcnNpb24odG9Nb2RlbCwgZ3JhcGgpO1xuXHR9XG5cblx0cmV0dXJuIGNvbnZlcnNpb247XG59O1xuXG4iLCAiY29uc3QgY29udmVyc2lvbnMgPSByZXF1aXJlKCcuL2NvbnZlcnNpb25zJyk7XG5jb25zdCByb3V0ZSA9IHJlcXVpcmUoJy4vcm91dGUnKTtcblxuY29uc3QgY29udmVydCA9IHt9O1xuXG5jb25zdCBtb2RlbHMgPSBPYmplY3Qua2V5cyhjb252ZXJzaW9ucyk7XG5cbmZ1bmN0aW9uIHdyYXBSYXcoZm4pIHtcblx0Y29uc3Qgd3JhcHBlZEZuID0gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcblx0XHRjb25zdCBhcmcwID0gYXJnc1swXTtcblx0XHRpZiAoYXJnMCA9PT0gdW5kZWZpbmVkIHx8IGFyZzAgPT09IG51bGwpIHtcblx0XHRcdHJldHVybiBhcmcwO1xuXHRcdH1cblxuXHRcdGlmIChhcmcwLmxlbmd0aCA+IDEpIHtcblx0XHRcdGFyZ3MgPSBhcmcwO1xuXHRcdH1cblxuXHRcdHJldHVybiBmbihhcmdzKTtcblx0fTtcblxuXHQvLyBQcmVzZXJ2ZSAuY29udmVyc2lvbiBwcm9wZXJ0eSBpZiB0aGVyZSBpcyBvbmVcblx0aWYgKCdjb252ZXJzaW9uJyBpbiBmbikge1xuXHRcdHdyYXBwZWRGbi5jb252ZXJzaW9uID0gZm4uY29udmVyc2lvbjtcblx0fVxuXG5cdHJldHVybiB3cmFwcGVkRm47XG59XG5cbmZ1bmN0aW9uIHdyYXBSb3VuZGVkKGZuKSB7XG5cdGNvbnN0IHdyYXBwZWRGbiA9IGZ1bmN0aW9uICguLi5hcmdzKSB7XG5cdFx0Y29uc3QgYXJnMCA9IGFyZ3NbMF07XG5cblx0XHRpZiAoYXJnMCA9PT0gdW5kZWZpbmVkIHx8IGFyZzAgPT09IG51bGwpIHtcblx0XHRcdHJldHVybiBhcmcwO1xuXHRcdH1cblxuXHRcdGlmIChhcmcwLmxlbmd0aCA+IDEpIHtcblx0XHRcdGFyZ3MgPSBhcmcwO1xuXHRcdH1cblxuXHRcdGNvbnN0IHJlc3VsdCA9IGZuKGFyZ3MpO1xuXG5cdFx0Ly8gV2UncmUgYXNzdW1pbmcgdGhlIHJlc3VsdCBpcyBhbiBhcnJheSBoZXJlLlxuXHRcdC8vIHNlZSBub3RpY2UgaW4gY29udmVyc2lvbnMuanM7IGRvbid0IHVzZSBib3ggdHlwZXNcblx0XHQvLyBpbiBjb252ZXJzaW9uIGZ1bmN0aW9ucy5cblx0XHRpZiAodHlwZW9mIHJlc3VsdCA9PT0gJ29iamVjdCcpIHtcblx0XHRcdGZvciAobGV0IGxlbiA9IHJlc3VsdC5sZW5ndGgsIGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcblx0XHRcdFx0cmVzdWx0W2ldID0gTWF0aC5yb3VuZChyZXN1bHRbaV0pO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHJldHVybiByZXN1bHQ7XG5cdH07XG5cblx0Ly8gUHJlc2VydmUgLmNvbnZlcnNpb24gcHJvcGVydHkgaWYgdGhlcmUgaXMgb25lXG5cdGlmICgnY29udmVyc2lvbicgaW4gZm4pIHtcblx0XHR3cmFwcGVkRm4uY29udmVyc2lvbiA9IGZuLmNvbnZlcnNpb247XG5cdH1cblxuXHRyZXR1cm4gd3JhcHBlZEZuO1xufVxuXG5tb2RlbHMuZm9yRWFjaChmcm9tTW9kZWwgPT4ge1xuXHRjb252ZXJ0W2Zyb21Nb2RlbF0gPSB7fTtcblxuXHRPYmplY3QuZGVmaW5lUHJvcGVydHkoY29udmVydFtmcm9tTW9kZWxdLCAnY2hhbm5lbHMnLCB7dmFsdWU6IGNvbnZlcnNpb25zW2Zyb21Nb2RlbF0uY2hhbm5lbHN9KTtcblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGNvbnZlcnRbZnJvbU1vZGVsXSwgJ2xhYmVscycsIHt2YWx1ZTogY29udmVyc2lvbnNbZnJvbU1vZGVsXS5sYWJlbHN9KTtcblxuXHRjb25zdCByb3V0ZXMgPSByb3V0ZShmcm9tTW9kZWwpO1xuXHRjb25zdCByb3V0ZU1vZGVscyA9IE9iamVjdC5rZXlzKHJvdXRlcyk7XG5cblx0cm91dGVNb2RlbHMuZm9yRWFjaCh0b01vZGVsID0+IHtcblx0XHRjb25zdCBmbiA9IHJvdXRlc1t0b01vZGVsXTtcblxuXHRcdGNvbnZlcnRbZnJvbU1vZGVsXVt0b01vZGVsXSA9IHdyYXBSb3VuZGVkKGZuKTtcblx0XHRjb252ZXJ0W2Zyb21Nb2RlbF1bdG9Nb2RlbF0ucmF3ID0gd3JhcFJhdyhmbik7XG5cdH0pO1xufSk7XG5cbm1vZHVsZS5leHBvcnRzID0gY29udmVydDtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IHdyYXBBbnNpMTYgPSAoZm4sIG9mZnNldCkgPT4gKC4uLmFyZ3MpID0+IHtcblx0Y29uc3QgY29kZSA9IGZuKC4uLmFyZ3MpO1xuXHRyZXR1cm4gYFxcdTAwMUJbJHtjb2RlICsgb2Zmc2V0fW1gO1xufTtcblxuY29uc3Qgd3JhcEFuc2kyNTYgPSAoZm4sIG9mZnNldCkgPT4gKC4uLmFyZ3MpID0+IHtcblx0Y29uc3QgY29kZSA9IGZuKC4uLmFyZ3MpO1xuXHRyZXR1cm4gYFxcdTAwMUJbJHszOCArIG9mZnNldH07NTske2NvZGV9bWA7XG59O1xuXG5jb25zdCB3cmFwQW5zaTE2bSA9IChmbiwgb2Zmc2V0KSA9PiAoLi4uYXJncykgPT4ge1xuXHRjb25zdCByZ2IgPSBmbiguLi5hcmdzKTtcblx0cmV0dXJuIGBcXHUwMDFCWyR7MzggKyBvZmZzZXR9OzI7JHtyZ2JbMF19OyR7cmdiWzFdfTske3JnYlsyXX1tYDtcbn07XG5cbmNvbnN0IGFuc2kyYW5zaSA9IG4gPT4gbjtcbmNvbnN0IHJnYjJyZ2IgPSAociwgZywgYikgPT4gW3IsIGcsIGJdO1xuXG5jb25zdCBzZXRMYXp5UHJvcGVydHkgPSAob2JqZWN0LCBwcm9wZXJ0eSwgZ2V0KSA9PiB7XG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmplY3QsIHByb3BlcnR5LCB7XG5cdFx0Z2V0OiAoKSA9PiB7XG5cdFx0XHRjb25zdCB2YWx1ZSA9IGdldCgpO1xuXG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqZWN0LCBwcm9wZXJ0eSwge1xuXHRcdFx0XHR2YWx1ZSxcblx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRcdFx0Y29uZmlndXJhYmxlOiB0cnVlXG5cdFx0XHR9KTtcblxuXHRcdFx0cmV0dXJuIHZhbHVlO1xuXHRcdH0sXG5cdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRjb25maWd1cmFibGU6IHRydWVcblx0fSk7XG59O1xuXG4vKiogQHR5cGUge3R5cGVvZiBpbXBvcnQoJ2NvbG9yLWNvbnZlcnQnKX0gKi9cbmxldCBjb2xvckNvbnZlcnQ7XG5jb25zdCBtYWtlRHluYW1pY1N0eWxlcyA9ICh3cmFwLCB0YXJnZXRTcGFjZSwgaWRlbnRpdHksIGlzQmFja2dyb3VuZCkgPT4ge1xuXHRpZiAoY29sb3JDb252ZXJ0ID09PSB1bmRlZmluZWQpIHtcblx0XHRjb2xvckNvbnZlcnQgPSByZXF1aXJlKCdjb2xvci1jb252ZXJ0Jyk7XG5cdH1cblxuXHRjb25zdCBvZmZzZXQgPSBpc0JhY2tncm91bmQgPyAxMCA6IDA7XG5cdGNvbnN0IHN0eWxlcyA9IHt9O1xuXG5cdGZvciAoY29uc3QgW3NvdXJjZVNwYWNlLCBzdWl0ZV0gb2YgT2JqZWN0LmVudHJpZXMoY29sb3JDb252ZXJ0KSkge1xuXHRcdGNvbnN0IG5hbWUgPSBzb3VyY2VTcGFjZSA9PT0gJ2Fuc2kxNicgPyAnYW5zaScgOiBzb3VyY2VTcGFjZTtcblx0XHRpZiAoc291cmNlU3BhY2UgPT09IHRhcmdldFNwYWNlKSB7XG5cdFx0XHRzdHlsZXNbbmFtZV0gPSB3cmFwKGlkZW50aXR5LCBvZmZzZXQpO1xuXHRcdH0gZWxzZSBpZiAodHlwZW9mIHN1aXRlID09PSAnb2JqZWN0Jykge1xuXHRcdFx0c3R5bGVzW25hbWVdID0gd3JhcChzdWl0ZVt0YXJnZXRTcGFjZV0sIG9mZnNldCk7XG5cdFx0fVxuXHR9XG5cblx0cmV0dXJuIHN0eWxlcztcbn07XG5cbmZ1bmN0aW9uIGFzc2VtYmxlU3R5bGVzKCkge1xuXHRjb25zdCBjb2RlcyA9IG5ldyBNYXAoKTtcblx0Y29uc3Qgc3R5bGVzID0ge1xuXHRcdG1vZGlmaWVyOiB7XG5cdFx0XHRyZXNldDogWzAsIDBdLFxuXHRcdFx0Ly8gMjEgaXNuJ3Qgd2lkZWx5IHN1cHBvcnRlZCBhbmQgMjIgZG9lcyB0aGUgc2FtZSB0aGluZ1xuXHRcdFx0Ym9sZDogWzEsIDIyXSxcblx0XHRcdGRpbTogWzIsIDIyXSxcblx0XHRcdGl0YWxpYzogWzMsIDIzXSxcblx0XHRcdHVuZGVybGluZTogWzQsIDI0XSxcblx0XHRcdGludmVyc2U6IFs3LCAyN10sXG5cdFx0XHRoaWRkZW46IFs4LCAyOF0sXG5cdFx0XHRzdHJpa2V0aHJvdWdoOiBbOSwgMjldXG5cdFx0fSxcblx0XHRjb2xvcjoge1xuXHRcdFx0YmxhY2s6IFszMCwgMzldLFxuXHRcdFx0cmVkOiBbMzEsIDM5XSxcblx0XHRcdGdyZWVuOiBbMzIsIDM5XSxcblx0XHRcdHllbGxvdzogWzMzLCAzOV0sXG5cdFx0XHRibHVlOiBbMzQsIDM5XSxcblx0XHRcdG1hZ2VudGE6IFszNSwgMzldLFxuXHRcdFx0Y3lhbjogWzM2LCAzOV0sXG5cdFx0XHR3aGl0ZTogWzM3LCAzOV0sXG5cblx0XHRcdC8vIEJyaWdodCBjb2xvclxuXHRcdFx0YmxhY2tCcmlnaHQ6IFs5MCwgMzldLFxuXHRcdFx0cmVkQnJpZ2h0OiBbOTEsIDM5XSxcblx0XHRcdGdyZWVuQnJpZ2h0OiBbOTIsIDM5XSxcblx0XHRcdHllbGxvd0JyaWdodDogWzkzLCAzOV0sXG5cdFx0XHRibHVlQnJpZ2h0OiBbOTQsIDM5XSxcblx0XHRcdG1hZ2VudGFCcmlnaHQ6IFs5NSwgMzldLFxuXHRcdFx0Y3lhbkJyaWdodDogWzk2LCAzOV0sXG5cdFx0XHR3aGl0ZUJyaWdodDogWzk3LCAzOV1cblx0XHR9LFxuXHRcdGJnQ29sb3I6IHtcblx0XHRcdGJnQmxhY2s6IFs0MCwgNDldLFxuXHRcdFx0YmdSZWQ6IFs0MSwgNDldLFxuXHRcdFx0YmdHcmVlbjogWzQyLCA0OV0sXG5cdFx0XHRiZ1llbGxvdzogWzQzLCA0OV0sXG5cdFx0XHRiZ0JsdWU6IFs0NCwgNDldLFxuXHRcdFx0YmdNYWdlbnRhOiBbNDUsIDQ5XSxcblx0XHRcdGJnQ3lhbjogWzQ2LCA0OV0sXG5cdFx0XHRiZ1doaXRlOiBbNDcsIDQ5XSxcblxuXHRcdFx0Ly8gQnJpZ2h0IGNvbG9yXG5cdFx0XHRiZ0JsYWNrQnJpZ2h0OiBbMTAwLCA0OV0sXG5cdFx0XHRiZ1JlZEJyaWdodDogWzEwMSwgNDldLFxuXHRcdFx0YmdHcmVlbkJyaWdodDogWzEwMiwgNDldLFxuXHRcdFx0YmdZZWxsb3dCcmlnaHQ6IFsxMDMsIDQ5XSxcblx0XHRcdGJnQmx1ZUJyaWdodDogWzEwNCwgNDldLFxuXHRcdFx0YmdNYWdlbnRhQnJpZ2h0OiBbMTA1LCA0OV0sXG5cdFx0XHRiZ0N5YW5CcmlnaHQ6IFsxMDYsIDQ5XSxcblx0XHRcdGJnV2hpdGVCcmlnaHQ6IFsxMDcsIDQ5XVxuXHRcdH1cblx0fTtcblxuXHQvLyBBbGlhcyBicmlnaHQgYmxhY2sgYXMgZ3JheSAoYW5kIGdyZXkpXG5cdHN0eWxlcy5jb2xvci5ncmF5ID0gc3R5bGVzLmNvbG9yLmJsYWNrQnJpZ2h0O1xuXHRzdHlsZXMuYmdDb2xvci5iZ0dyYXkgPSBzdHlsZXMuYmdDb2xvci5iZ0JsYWNrQnJpZ2h0O1xuXHRzdHlsZXMuY29sb3IuZ3JleSA9IHN0eWxlcy5jb2xvci5ibGFja0JyaWdodDtcblx0c3R5bGVzLmJnQ29sb3IuYmdHcmV5ID0gc3R5bGVzLmJnQ29sb3IuYmdCbGFja0JyaWdodDtcblxuXHRmb3IgKGNvbnN0IFtncm91cE5hbWUsIGdyb3VwXSBvZiBPYmplY3QuZW50cmllcyhzdHlsZXMpKSB7XG5cdFx0Zm9yIChjb25zdCBbc3R5bGVOYW1lLCBzdHlsZV0gb2YgT2JqZWN0LmVudHJpZXMoZ3JvdXApKSB7XG5cdFx0XHRzdHlsZXNbc3R5bGVOYW1lXSA9IHtcblx0XHRcdFx0b3BlbjogYFxcdTAwMUJbJHtzdHlsZVswXX1tYCxcblx0XHRcdFx0Y2xvc2U6IGBcXHUwMDFCWyR7c3R5bGVbMV19bWBcblx0XHRcdH07XG5cblx0XHRcdGdyb3VwW3N0eWxlTmFtZV0gPSBzdHlsZXNbc3R5bGVOYW1lXTtcblxuXHRcdFx0Y29kZXMuc2V0KHN0eWxlWzBdLCBzdHlsZVsxXSk7XG5cdFx0fVxuXG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHN0eWxlcywgZ3JvdXBOYW1lLCB7XG5cdFx0XHR2YWx1ZTogZ3JvdXAsXG5cdFx0XHRlbnVtZXJhYmxlOiBmYWxzZVxuXHRcdH0pO1xuXHR9XG5cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHN0eWxlcywgJ2NvZGVzJywge1xuXHRcdHZhbHVlOiBjb2Rlcyxcblx0XHRlbnVtZXJhYmxlOiBmYWxzZVxuXHR9KTtcblxuXHRzdHlsZXMuY29sb3IuY2xvc2UgPSAnXFx1MDAxQlszOW0nO1xuXHRzdHlsZXMuYmdDb2xvci5jbG9zZSA9ICdcXHUwMDFCWzQ5bSc7XG5cblx0c2V0TGF6eVByb3BlcnR5KHN0eWxlcy5jb2xvciwgJ2Fuc2knLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTE2LCAnYW5zaTE2JywgYW5zaTJhbnNpLCBmYWxzZSkpO1xuXHRzZXRMYXp5UHJvcGVydHkoc3R5bGVzLmNvbG9yLCAnYW5zaTI1NicsICgpID0+IG1ha2VEeW5hbWljU3R5bGVzKHdyYXBBbnNpMjU2LCAnYW5zaTI1NicsIGFuc2kyYW5zaSwgZmFsc2UpKTtcblx0c2V0TGF6eVByb3BlcnR5KHN0eWxlcy5jb2xvciwgJ2Fuc2kxNm0nLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTE2bSwgJ3JnYicsIHJnYjJyZ2IsIGZhbHNlKSk7XG5cdHNldExhenlQcm9wZXJ0eShzdHlsZXMuYmdDb2xvciwgJ2Fuc2knLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTE2LCAnYW5zaTE2JywgYW5zaTJhbnNpLCB0cnVlKSk7XG5cdHNldExhenlQcm9wZXJ0eShzdHlsZXMuYmdDb2xvciwgJ2Fuc2kyNTYnLCAoKSA9PiBtYWtlRHluYW1pY1N0eWxlcyh3cmFwQW5zaTI1NiwgJ2Fuc2kyNTYnLCBhbnNpMmFuc2ksIHRydWUpKTtcblx0c2V0TGF6eVByb3BlcnR5KHN0eWxlcy5iZ0NvbG9yLCAnYW5zaTE2bScsICgpID0+IG1ha2VEeW5hbWljU3R5bGVzKHdyYXBBbnNpMTZtLCAncmdiJywgcmdiMnJnYiwgdHJ1ZSkpO1xuXG5cdHJldHVybiBzdHlsZXM7XG59XG5cbi8vIE1ha2UgdGhlIGV4cG9ydCBpbW11dGFibGVcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsICdleHBvcnRzJywge1xuXHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRnZXQ6IGFzc2VtYmxlU3R5bGVzXG59KTtcbiIsICIndXNlIHN0cmljdCc7XG5jb25zdCBzdHJpbmdXaWR0aCA9IHJlcXVpcmUoJ3N0cmluZy13aWR0aCcpO1xuY29uc3Qgc3RyaXBBbnNpID0gcmVxdWlyZSgnc3RyaXAtYW5zaScpO1xuY29uc3QgYW5zaVN0eWxlcyA9IHJlcXVpcmUoJ2Fuc2ktc3R5bGVzJyk7XG5cbmNvbnN0IEVTQ0FQRVMgPSBuZXcgU2V0KFtcblx0J1xcdTAwMUInLFxuXHQnXFx1MDA5Qidcbl0pO1xuXG5jb25zdCBFTkRfQ09ERSA9IDM5O1xuXG5jb25zdCBBTlNJX0VTQ0FQRV9CRUxMID0gJ1xcdTAwMDcnO1xuY29uc3QgQU5TSV9DU0kgPSAnWyc7XG5jb25zdCBBTlNJX09TQyA9ICddJztcbmNvbnN0IEFOU0lfU0dSX1RFUk1JTkFUT1IgPSAnbSc7XG5jb25zdCBBTlNJX0VTQ0FQRV9MSU5LID0gYCR7QU5TSV9PU0N9ODs7YDtcblxuY29uc3Qgd3JhcEFuc2kgPSBjb2RlID0+IGAke0VTQ0FQRVMudmFsdWVzKCkubmV4dCgpLnZhbHVlfSR7QU5TSV9DU0l9JHtjb2RlfSR7QU5TSV9TR1JfVEVSTUlOQVRPUn1gO1xuY29uc3Qgd3JhcEFuc2lIeXBlcmxpbmsgPSB1cmkgPT4gYCR7RVNDQVBFUy52YWx1ZXMoKS5uZXh0KCkudmFsdWV9JHtBTlNJX0VTQ0FQRV9MSU5LfSR7dXJpfSR7QU5TSV9FU0NBUEVfQkVMTH1gO1xuXG4vLyBDYWxjdWxhdGUgdGhlIGxlbmd0aCBvZiB3b3JkcyBzcGxpdCBvbiAnICcsIGlnbm9yaW5nXG4vLyB0aGUgZXh0cmEgY2hhcmFjdGVycyBhZGRlZCBieSBhbnNpIGVzY2FwZSBjb2Rlc1xuY29uc3Qgd29yZExlbmd0aHMgPSBzdHJpbmcgPT4gc3RyaW5nLnNwbGl0KCcgJykubWFwKGNoYXJhY3RlciA9PiBzdHJpbmdXaWR0aChjaGFyYWN0ZXIpKTtcblxuLy8gV3JhcCBhIGxvbmcgd29yZCBhY3Jvc3MgbXVsdGlwbGUgcm93c1xuLy8gQW5zaSBlc2NhcGUgY29kZXMgZG8gbm90IGNvdW50IHRvd2FyZHMgbGVuZ3RoXG5jb25zdCB3cmFwV29yZCA9IChyb3dzLCB3b3JkLCBjb2x1bW5zKSA9PiB7XG5cdGNvbnN0IGNoYXJhY3RlcnMgPSBbLi4ud29yZF07XG5cblx0bGV0IGlzSW5zaWRlRXNjYXBlID0gZmFsc2U7XG5cdGxldCBpc0luc2lkZUxpbmtFc2NhcGUgPSBmYWxzZTtcblx0bGV0IHZpc2libGUgPSBzdHJpbmdXaWR0aChzdHJpcEFuc2kocm93c1tyb3dzLmxlbmd0aCAtIDFdKSk7XG5cblx0Zm9yIChjb25zdCBbaW5kZXgsIGNoYXJhY3Rlcl0gb2YgY2hhcmFjdGVycy5lbnRyaWVzKCkpIHtcblx0XHRjb25zdCBjaGFyYWN0ZXJMZW5ndGggPSBzdHJpbmdXaWR0aChjaGFyYWN0ZXIpO1xuXG5cdFx0aWYgKHZpc2libGUgKyBjaGFyYWN0ZXJMZW5ndGggPD0gY29sdW1ucykge1xuXHRcdFx0cm93c1tyb3dzLmxlbmd0aCAtIDFdICs9IGNoYXJhY3Rlcjtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cm93cy5wdXNoKGNoYXJhY3Rlcik7XG5cdFx0XHR2aXNpYmxlID0gMDtcblx0XHR9XG5cblx0XHRpZiAoRVNDQVBFUy5oYXMoY2hhcmFjdGVyKSkge1xuXHRcdFx0aXNJbnNpZGVFc2NhcGUgPSB0cnVlO1xuXHRcdFx0aXNJbnNpZGVMaW5rRXNjYXBlID0gY2hhcmFjdGVycy5zbGljZShpbmRleCArIDEpLmpvaW4oJycpLnN0YXJ0c1dpdGgoQU5TSV9FU0NBUEVfTElOSyk7XG5cdFx0fVxuXG5cdFx0aWYgKGlzSW5zaWRlRXNjYXBlKSB7XG5cdFx0XHRpZiAoaXNJbnNpZGVMaW5rRXNjYXBlKSB7XG5cdFx0XHRcdGlmIChjaGFyYWN0ZXIgPT09IEFOU0lfRVNDQVBFX0JFTEwpIHtcblx0XHRcdFx0XHRpc0luc2lkZUVzY2FwZSA9IGZhbHNlO1xuXHRcdFx0XHRcdGlzSW5zaWRlTGlua0VzY2FwZSA9IGZhbHNlO1xuXHRcdFx0XHR9XG5cdFx0XHR9IGVsc2UgaWYgKGNoYXJhY3RlciA9PT0gQU5TSV9TR1JfVEVSTUlOQVRPUikge1xuXHRcdFx0XHRpc0luc2lkZUVzY2FwZSA9IGZhbHNlO1xuXHRcdFx0fVxuXG5cdFx0XHRjb250aW51ZTtcblx0XHR9XG5cblx0XHR2aXNpYmxlICs9IGNoYXJhY3Rlckxlbmd0aDtcblxuXHRcdGlmICh2aXNpYmxlID09PSBjb2x1bW5zICYmIGluZGV4IDwgY2hhcmFjdGVycy5sZW5ndGggLSAxKSB7XG5cdFx0XHRyb3dzLnB1c2goJycpO1xuXHRcdFx0dmlzaWJsZSA9IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gSXQncyBwb3NzaWJsZSB0aGF0IHRoZSBsYXN0IHJvdyB3ZSBjb3B5IG92ZXIgaXMgb25seVxuXHQvLyBhbnNpIGVzY2FwZSBjaGFyYWN0ZXJzLCBoYW5kbGUgdGhpcyBlZGdlLWNhc2Vcblx0aWYgKCF2aXNpYmxlICYmIHJvd3Nbcm93cy5sZW5ndGggLSAxXS5sZW5ndGggPiAwICYmIHJvd3MubGVuZ3RoID4gMSkge1xuXHRcdHJvd3Nbcm93cy5sZW5ndGggLSAyXSArPSByb3dzLnBvcCgpO1xuXHR9XG59O1xuXG4vLyBUcmltcyBzcGFjZXMgZnJvbSBhIHN0cmluZyBpZ25vcmluZyBpbnZpc2libGUgc2VxdWVuY2VzXG5jb25zdCBzdHJpbmdWaXNpYmxlVHJpbVNwYWNlc1JpZ2h0ID0gc3RyaW5nID0+IHtcblx0Y29uc3Qgd29yZHMgPSBzdHJpbmcuc3BsaXQoJyAnKTtcblx0bGV0IGxhc3QgPSB3b3Jkcy5sZW5ndGg7XG5cblx0d2hpbGUgKGxhc3QgPiAwKSB7XG5cdFx0aWYgKHN0cmluZ1dpZHRoKHdvcmRzW2xhc3QgLSAxXSkgPiAwKSB7XG5cdFx0XHRicmVhaztcblx0XHR9XG5cblx0XHRsYXN0LS07XG5cdH1cblxuXHRpZiAobGFzdCA9PT0gd29yZHMubGVuZ3RoKSB7XG5cdFx0cmV0dXJuIHN0cmluZztcblx0fVxuXG5cdHJldHVybiB3b3Jkcy5zbGljZSgwLCBsYXN0KS5qb2luKCcgJykgKyB3b3Jkcy5zbGljZShsYXN0KS5qb2luKCcnKTtcbn07XG5cbi8vIFRoZSB3cmFwLWFuc2kgbW9kdWxlIGNhbiBiZSBpbnZva2VkIGluIGVpdGhlciAnaGFyZCcgb3IgJ3NvZnQnIHdyYXAgbW9kZVxuLy9cbi8vICdoYXJkJyB3aWxsIG5ldmVyIGFsbG93IGEgc3RyaW5nIHRvIHRha2UgdXAgbW9yZSB0aGFuIGNvbHVtbnMgY2hhcmFjdGVyc1xuLy9cbi8vICdzb2Z0JyBhbGxvd3MgbG9uZyB3b3JkcyB0byBleHBhbmQgcGFzdCB0aGUgY29sdW1uIGxlbmd0aFxuY29uc3QgZXhlYyA9IChzdHJpbmcsIGNvbHVtbnMsIG9wdGlvbnMgPSB7fSkgPT4ge1xuXHRpZiAob3B0aW9ucy50cmltICE9PSBmYWxzZSAmJiBzdHJpbmcudHJpbSgpID09PSAnJykge1xuXHRcdHJldHVybiAnJztcblx0fVxuXG5cdGxldCByZXR1cm5WYWx1ZSA9ICcnO1xuXHRsZXQgZXNjYXBlQ29kZTtcblx0bGV0IGVzY2FwZVVybDtcblxuXHRjb25zdCBsZW5ndGhzID0gd29yZExlbmd0aHMoc3RyaW5nKTtcblx0bGV0IHJvd3MgPSBbJyddO1xuXG5cdGZvciAoY29uc3QgW2luZGV4LCB3b3JkXSBvZiBzdHJpbmcuc3BsaXQoJyAnKS5lbnRyaWVzKCkpIHtcblx0XHRpZiAob3B0aW9ucy50cmltICE9PSBmYWxzZSkge1xuXHRcdFx0cm93c1tyb3dzLmxlbmd0aCAtIDFdID0gcm93c1tyb3dzLmxlbmd0aCAtIDFdLnRyaW1TdGFydCgpO1xuXHRcdH1cblxuXHRcdGxldCByb3dMZW5ndGggPSBzdHJpbmdXaWR0aChyb3dzW3Jvd3MubGVuZ3RoIC0gMV0pO1xuXG5cdFx0aWYgKGluZGV4ICE9PSAwKSB7XG5cdFx0XHRpZiAocm93TGVuZ3RoID49IGNvbHVtbnMgJiYgKG9wdGlvbnMud29yZFdyYXAgPT09IGZhbHNlIHx8IG9wdGlvbnMudHJpbSA9PT0gZmFsc2UpKSB7XG5cdFx0XHRcdC8vIElmIHdlIHN0YXJ0IHdpdGggYSBuZXcgd29yZCBidXQgdGhlIGN1cnJlbnQgcm93IGxlbmd0aCBlcXVhbHMgdGhlIGxlbmd0aCBvZiB0aGUgY29sdW1ucywgYWRkIGEgbmV3IHJvd1xuXHRcdFx0XHRyb3dzLnB1c2goJycpO1xuXHRcdFx0XHRyb3dMZW5ndGggPSAwO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAocm93TGVuZ3RoID4gMCB8fCBvcHRpb25zLnRyaW0gPT09IGZhbHNlKSB7XG5cdFx0XHRcdHJvd3Nbcm93cy5sZW5ndGggLSAxXSArPSAnICc7XG5cdFx0XHRcdHJvd0xlbmd0aCsrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEluICdoYXJkJyB3cmFwIG1vZGUsIHRoZSBsZW5ndGggb2YgYSBsaW5lIGlzIG5ldmVyIGFsbG93ZWQgdG8gZXh0ZW5kIHBhc3QgJ2NvbHVtbnMnXG5cdFx0aWYgKG9wdGlvbnMuaGFyZCAmJiBsZW5ndGhzW2luZGV4XSA+IGNvbHVtbnMpIHtcblx0XHRcdGNvbnN0IHJlbWFpbmluZ0NvbHVtbnMgPSAoY29sdW1ucyAtIHJvd0xlbmd0aCk7XG5cdFx0XHRjb25zdCBicmVha3NTdGFydGluZ1RoaXNMaW5lID0gMSArIE1hdGguZmxvb3IoKGxlbmd0aHNbaW5kZXhdIC0gcmVtYWluaW5nQ29sdW1ucyAtIDEpIC8gY29sdW1ucyk7XG5cdFx0XHRjb25zdCBicmVha3NTdGFydGluZ05leHRMaW5lID0gTWF0aC5mbG9vcigobGVuZ3Roc1tpbmRleF0gLSAxKSAvIGNvbHVtbnMpO1xuXHRcdFx0aWYgKGJyZWFrc1N0YXJ0aW5nTmV4dExpbmUgPCBicmVha3NTdGFydGluZ1RoaXNMaW5lKSB7XG5cdFx0XHRcdHJvd3MucHVzaCgnJyk7XG5cdFx0XHR9XG5cblx0XHRcdHdyYXBXb3JkKHJvd3MsIHdvcmQsIGNvbHVtbnMpO1xuXHRcdFx0Y29udGludWU7XG5cdFx0fVxuXG5cdFx0aWYgKHJvd0xlbmd0aCArIGxlbmd0aHNbaW5kZXhdID4gY29sdW1ucyAmJiByb3dMZW5ndGggPiAwICYmIGxlbmd0aHNbaW5kZXhdID4gMCkge1xuXHRcdFx0aWYgKG9wdGlvbnMud29yZFdyYXAgPT09IGZhbHNlICYmIHJvd0xlbmd0aCA8IGNvbHVtbnMpIHtcblx0XHRcdFx0d3JhcFdvcmQocm93cywgd29yZCwgY29sdW1ucyk7XG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXG5cdFx0XHRyb3dzLnB1c2goJycpO1xuXHRcdH1cblxuXHRcdGlmIChyb3dMZW5ndGggKyBsZW5ndGhzW2luZGV4XSA+IGNvbHVtbnMgJiYgb3B0aW9ucy53b3JkV3JhcCA9PT0gZmFsc2UpIHtcblx0XHRcdHdyYXBXb3JkKHJvd3MsIHdvcmQsIGNvbHVtbnMpO1xuXHRcdFx0Y29udGludWU7XG5cdFx0fVxuXG5cdFx0cm93c1tyb3dzLmxlbmd0aCAtIDFdICs9IHdvcmQ7XG5cdH1cblxuXHRpZiAob3B0aW9ucy50cmltICE9PSBmYWxzZSkge1xuXHRcdHJvd3MgPSByb3dzLm1hcChzdHJpbmdWaXNpYmxlVHJpbVNwYWNlc1JpZ2h0KTtcblx0fVxuXG5cdGNvbnN0IHByZSA9IFsuLi5yb3dzLmpvaW4oJ1xcbicpXTtcblxuXHRmb3IgKGNvbnN0IFtpbmRleCwgY2hhcmFjdGVyXSBvZiBwcmUuZW50cmllcygpKSB7XG5cdFx0cmV0dXJuVmFsdWUgKz0gY2hhcmFjdGVyO1xuXG5cdFx0aWYgKEVTQ0FQRVMuaGFzKGNoYXJhY3RlcikpIHtcblx0XHRcdGNvbnN0IHtncm91cHN9ID0gbmV3IFJlZ0V4cChgKD86XFxcXCR7QU5TSV9DU0l9KD88Y29kZT5cXFxcZCspbXxcXFxcJHtBTlNJX0VTQ0FQRV9MSU5LfSg/PHVyaT4uKikke0FOU0lfRVNDQVBFX0JFTEx9KWApLmV4ZWMocHJlLnNsaWNlKGluZGV4KS5qb2luKCcnKSkgfHwge2dyb3Vwczoge319O1xuXHRcdFx0aWYgKGdyb3Vwcy5jb2RlICE9PSB1bmRlZmluZWQpIHtcblx0XHRcdFx0Y29uc3QgY29kZSA9IE51bWJlci5wYXJzZUZsb2F0KGdyb3Vwcy5jb2RlKTtcblx0XHRcdFx0ZXNjYXBlQ29kZSA9IGNvZGUgPT09IEVORF9DT0RFID8gdW5kZWZpbmVkIDogY29kZTtcblx0XHRcdH0gZWxzZSBpZiAoZ3JvdXBzLnVyaSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdGVzY2FwZVVybCA9IGdyb3Vwcy51cmkubGVuZ3RoID09PSAwID8gdW5kZWZpbmVkIDogZ3JvdXBzLnVyaTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRjb25zdCBjb2RlID0gYW5zaVN0eWxlcy5jb2Rlcy5nZXQoTnVtYmVyKGVzY2FwZUNvZGUpKTtcblxuXHRcdGlmIChwcmVbaW5kZXggKyAxXSA9PT0gJ1xcbicpIHtcblx0XHRcdGlmIChlc2NhcGVVcmwpIHtcblx0XHRcdFx0cmV0dXJuVmFsdWUgKz0gd3JhcEFuc2lIeXBlcmxpbmsoJycpO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAoZXNjYXBlQ29kZSAmJiBjb2RlKSB7XG5cdFx0XHRcdHJldHVyblZhbHVlICs9IHdyYXBBbnNpKGNvZGUpO1xuXHRcdFx0fVxuXHRcdH0gZWxzZSBpZiAoY2hhcmFjdGVyID09PSAnXFxuJykge1xuXHRcdFx0aWYgKGVzY2FwZUNvZGUgJiYgY29kZSkge1xuXHRcdFx0XHRyZXR1cm5WYWx1ZSArPSB3cmFwQW5zaShlc2NhcGVDb2RlKTtcblx0XHRcdH1cblxuXHRcdFx0aWYgKGVzY2FwZVVybCkge1xuXHRcdFx0XHRyZXR1cm5WYWx1ZSArPSB3cmFwQW5zaUh5cGVybGluayhlc2NhcGVVcmwpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHJldHVybiByZXR1cm5WYWx1ZTtcbn07XG5cbi8vIEZvciBlYWNoIG5ld2xpbmUsIGludm9rZSB0aGUgbWV0aG9kIHNlcGFyYXRlbHlcbm1vZHVsZS5leHBvcnRzID0gKHN0cmluZywgY29sdW1ucywgb3B0aW9ucykgPT4ge1xuXHRyZXR1cm4gU3RyaW5nKHN0cmluZylcblx0XHQubm9ybWFsaXplKClcblx0XHQucmVwbGFjZSgvXFxyXFxuL2csICdcXG4nKVxuXHRcdC5zcGxpdCgnXFxuJylcblx0XHQubWFwKGxpbmUgPT4gZXhlYyhsaW5lLCBjb2x1bW5zLCBvcHRpb25zKSlcblx0XHQuam9pbignXFxuJyk7XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgYWxpZ24gPSB7XG4gICAgcmlnaHQ6IGFsaWduUmlnaHQsXG4gICAgY2VudGVyOiBhbGlnbkNlbnRlclxufTtcbmNvbnN0IHRvcCA9IDA7XG5jb25zdCByaWdodCA9IDE7XG5jb25zdCBib3R0b20gPSAyO1xuY29uc3QgbGVmdCA9IDM7XG5jbGFzcyBVSSB7XG4gICAgY29uc3RydWN0b3Iob3B0cykge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHRoaXMud2lkdGggPSBvcHRzLndpZHRoO1xuICAgICAgICB0aGlzLndyYXAgPSAoX2EgPSBvcHRzLndyYXApICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRydWU7XG4gICAgICAgIHRoaXMucm93cyA9IFtdO1xuICAgIH1cbiAgICBzcGFuKC4uLmFyZ3MpIHtcbiAgICAgICAgY29uc3QgY29scyA9IHRoaXMuZGl2KC4uLmFyZ3MpO1xuICAgICAgICBjb2xzLnNwYW4gPSB0cnVlO1xuICAgIH1cbiAgICByZXNldE91dHB1dCgpIHtcbiAgICAgICAgdGhpcy5yb3dzID0gW107XG4gICAgfVxuICAgIGRpdiguLi5hcmdzKSB7XG4gICAgICAgIGlmIChhcmdzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5kaXYoJycpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLndyYXAgJiYgdGhpcy5zaG91bGRBcHBseUxheW91dERTTCguLi5hcmdzKSAmJiB0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFwcGx5TGF5b3V0RFNMKGFyZ3NbMF0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNvbHMgPSBhcmdzLm1hcChhcmcgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBhcmcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29sRnJvbVN0cmluZyhhcmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGFyZztcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucm93cy5wdXNoKGNvbHMpO1xuICAgICAgICByZXR1cm4gY29scztcbiAgICB9XG4gICAgc2hvdWxkQXBwbHlMYXlvdXREU0woLi4uYXJncykge1xuICAgICAgICByZXR1cm4gYXJncy5sZW5ndGggPT09IDEgJiYgdHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnICYmXG4gICAgICAgICAgICAvW1xcdFxcbl0vLnRlc3QoYXJnc1swXSk7XG4gICAgfVxuICAgIGFwcGx5TGF5b3V0RFNMKHN0cikge1xuICAgICAgICBjb25zdCByb3dzID0gc3RyLnNwbGl0KCdcXG4nKS5tYXAocm93ID0+IHJvdy5zcGxpdCgnXFx0JykpO1xuICAgICAgICBsZXQgbGVmdENvbHVtbldpZHRoID0gMDtcbiAgICAgICAgLy8gc2ltcGxlIGhldXJpc3RpYyBmb3IgbGF5b3V0LCBtYWtlIHN1cmUgdGhlXG4gICAgICAgIC8vIHNlY29uZCBjb2x1bW4gbGluZXMgdXAgYWxvbmcgdGhlIGxlZnQtaGFuZC5cbiAgICAgICAgLy8gZG9uJ3QgYWxsb3cgdGhlIGZpcnN0IGNvbHVtbiB0byB0YWtlIHVwIG1vcmVcbiAgICAgICAgLy8gdGhhbiA1MCUgb2YgdGhlIHNjcmVlbi5cbiAgICAgICAgcm93cy5mb3JFYWNoKGNvbHVtbnMgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbHVtbnMubGVuZ3RoID4gMSAmJiBtaXhpbi5zdHJpbmdXaWR0aChjb2x1bW5zWzBdKSA+IGxlZnRDb2x1bW5XaWR0aCkge1xuICAgICAgICAgICAgICAgIGxlZnRDb2x1bW5XaWR0aCA9IE1hdGgubWluKE1hdGguZmxvb3IodGhpcy53aWR0aCAqIDAuNSksIG1peGluLnN0cmluZ1dpZHRoKGNvbHVtbnNbMF0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIC8vIGdlbmVyYXRlIGEgdGFibGU6XG4gICAgICAgIC8vICByZXBsYWNpbmcgJyAnIHdpdGggcGFkZGluZyBjYWxjdWxhdGlvbnMuXG4gICAgICAgIC8vICB1c2luZyB0aGUgYWxnb3JpdGhtaWNhbGx5IGdlbmVyYXRlZCB3aWR0aC5cbiAgICAgICAgcm93cy5mb3JFYWNoKGNvbHVtbnMgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXYoLi4uY29sdW1ucy5tYXAoKHIsIGkpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiByLnRyaW0oKSxcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdGhpcy5tZWFzdXJlUGFkZGluZyhyKSxcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IChpID09PSAwICYmIGNvbHVtbnMubGVuZ3RoID4gMSkgPyBsZWZ0Q29sdW1uV2lkdGggOiB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMucm93c1t0aGlzLnJvd3MubGVuZ3RoIC0gMV07XG4gICAgfVxuICAgIGNvbEZyb21TdHJpbmcodGV4dCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdGV4dCxcbiAgICAgICAgICAgIHBhZGRpbmc6IHRoaXMubWVhc3VyZVBhZGRpbmcodGV4dClcbiAgICAgICAgfTtcbiAgICB9XG4gICAgbWVhc3VyZVBhZGRpbmcoc3RyKSB7XG4gICAgICAgIC8vIG1lYXN1cmUgcGFkZGluZyB3aXRob3V0IGFuc2kgZXNjYXBlIGNvZGVzXG4gICAgICAgIGNvbnN0IG5vQW5zaSA9IG1peGluLnN0cmlwQW5zaShzdHIpO1xuICAgICAgICByZXR1cm4gWzAsIG5vQW5zaS5tYXRjaCgvXFxzKiQvKVswXS5sZW5ndGgsIDAsIG5vQW5zaS5tYXRjaCgvXlxccyovKVswXS5sZW5ndGhdO1xuICAgIH1cbiAgICB0b1N0cmluZygpIHtcbiAgICAgICAgY29uc3QgbGluZXMgPSBbXTtcbiAgICAgICAgdGhpcy5yb3dzLmZvckVhY2gocm93ID0+IHtcbiAgICAgICAgICAgIHRoaXMucm93VG9TdHJpbmcocm93LCBsaW5lcyk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBkb24ndCBkaXNwbGF5IGFueSBsaW5lcyB3aXRoIHRoZVxuICAgICAgICAvLyBoaWRkZW4gZmxhZyBzZXQuXG4gICAgICAgIHJldHVybiBsaW5lc1xuICAgICAgICAgICAgLmZpbHRlcihsaW5lID0+ICFsaW5lLmhpZGRlbilcbiAgICAgICAgICAgIC5tYXAobGluZSA9PiBsaW5lLnRleHQpXG4gICAgICAgICAgICAuam9pbignXFxuJyk7XG4gICAgfVxuICAgIHJvd1RvU3RyaW5nKHJvdywgbGluZXMpIHtcbiAgICAgICAgdGhpcy5yYXN0ZXJpemUocm93KS5mb3JFYWNoKChycm93LCByKSA9PiB7XG4gICAgICAgICAgICBsZXQgc3RyID0gJyc7XG4gICAgICAgICAgICBycm93LmZvckVhY2goKGNvbCwgYykgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgd2lkdGggfSA9IHJvd1tjXTsgLy8gdGhlIHdpZHRoIHdpdGggcGFkZGluZy5cbiAgICAgICAgICAgICAgICBjb25zdCB3cmFwV2lkdGggPSB0aGlzLm5lZ2F0ZVBhZGRpbmcocm93W2NdKTsgLy8gdGhlIHdpZHRoIHdpdGhvdXQgcGFkZGluZy5cbiAgICAgICAgICAgICAgICBsZXQgdHMgPSBjb2w7IC8vIHRlbXBvcmFyeSBzdHJpbmcgdXNlZCBkdXJpbmcgYWxpZ25tZW50L3BhZGRpbmcuXG4gICAgICAgICAgICAgICAgaWYgKHdyYXBXaWR0aCA+IG1peGluLnN0cmluZ1dpZHRoKGNvbCkpIHtcbiAgICAgICAgICAgICAgICAgICAgdHMgKz0gJyAnLnJlcGVhdCh3cmFwV2lkdGggLSBtaXhpbi5zdHJpbmdXaWR0aChjb2wpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gYWxpZ24gdGhlIHN0cmluZyB3aXRoaW4gaXRzIGNvbHVtbi5cbiAgICAgICAgICAgICAgICBpZiAocm93W2NdLmFsaWduICYmIHJvd1tjXS5hbGlnbiAhPT0gJ2xlZnQnICYmIHRoaXMud3JhcCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmbiA9IGFsaWduW3Jvd1tjXS5hbGlnbl07XG4gICAgICAgICAgICAgICAgICAgIHRzID0gZm4odHMsIHdyYXBXaWR0aCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChtaXhpbi5zdHJpbmdXaWR0aCh0cykgPCB3cmFwV2lkdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRzICs9ICcgJy5yZXBlYXQoKHdpZHRoIHx8IDApIC0gbWl4aW4uc3RyaW5nV2lkdGgodHMpIC0gMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gYXBwbHkgYm9yZGVyIGFuZCBwYWRkaW5nIHRvIHN0cmluZy5cbiAgICAgICAgICAgICAgICBjb25zdCBwYWRkaW5nID0gcm93W2NdLnBhZGRpbmcgfHwgWzAsIDAsIDAsIDBdO1xuICAgICAgICAgICAgICAgIGlmIChwYWRkaW5nW2xlZnRdKSB7XG4gICAgICAgICAgICAgICAgICAgIHN0ciArPSAnICcucmVwZWF0KHBhZGRpbmdbbGVmdF0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzdHIgKz0gYWRkQm9yZGVyKHJvd1tjXSwgdHMsICd8ICcpO1xuICAgICAgICAgICAgICAgIHN0ciArPSB0cztcbiAgICAgICAgICAgICAgICBzdHIgKz0gYWRkQm9yZGVyKHJvd1tjXSwgdHMsICcgfCcpO1xuICAgICAgICAgICAgICAgIGlmIChwYWRkaW5nW3JpZ2h0XSkge1xuICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJyAnLnJlcGVhdChwYWRkaW5nW3JpZ2h0XSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGlmIHByaW9yIHJvdyBpcyBzcGFuLCB0cnkgdG8gcmVuZGVyIHRoZVxuICAgICAgICAgICAgICAgIC8vIGN1cnJlbnQgcm93IG9uIHRoZSBwcmlvciBsaW5lLlxuICAgICAgICAgICAgICAgIGlmIChyID09PSAwICYmIGxpbmVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgc3RyID0gdGhpcy5yZW5kZXJJbmxpbmUoc3RyLCBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyByZW1vdmUgdHJhaWxpbmcgd2hpdGVzcGFjZS5cbiAgICAgICAgICAgIGxpbmVzLnB1c2goe1xuICAgICAgICAgICAgICAgIHRleHQ6IHN0ci5yZXBsYWNlKC8gKyQvLCAnJyksXG4gICAgICAgICAgICAgICAgc3Bhbjogcm93LnNwYW5cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGxpbmVzO1xuICAgIH1cbiAgICAvLyBpZiB0aGUgZnVsbCAnc291cmNlJyBjYW4gcmVuZGVyIGluXG4gICAgLy8gdGhlIHRhcmdldCBsaW5lLCBkbyBzby5cbiAgICByZW5kZXJJbmxpbmUoc291cmNlLCBwcmV2aW91c0xpbmUpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBzb3VyY2UubWF0Y2goL14gKi8pO1xuICAgICAgICBjb25zdCBsZWFkaW5nV2hpdGVzcGFjZSA9IG1hdGNoID8gbWF0Y2hbMF0ubGVuZ3RoIDogMDtcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gcHJldmlvdXNMaW5lLnRleHQ7XG4gICAgICAgIGNvbnN0IHRhcmdldFRleHRXaWR0aCA9IG1peGluLnN0cmluZ1dpZHRoKHRhcmdldC50cmltUmlnaHQoKSk7XG4gICAgICAgIGlmICghcHJldmlvdXNMaW5lLnNwYW4pIHtcbiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7XG4gICAgICAgIH1cbiAgICAgICAgLy8gaWYgd2UncmUgbm90IGFwcGx5aW5nIHdyYXBwaW5nIGxvZ2ljLFxuICAgICAgICAvLyBqdXN0IGFsd2F5cyBhcHBlbmQgdG8gdGhlIHNwYW4uXG4gICAgICAgIGlmICghdGhpcy53cmFwKSB7XG4gICAgICAgICAgICBwcmV2aW91c0xpbmUuaGlkZGVuID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXQgKyBzb3VyY2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxlYWRpbmdXaGl0ZXNwYWNlIDwgdGFyZ2V0VGV4dFdpZHRoKSB7XG4gICAgICAgICAgICByZXR1cm4gc291cmNlO1xuICAgICAgICB9XG4gICAgICAgIHByZXZpb3VzTGluZS5oaWRkZW4gPSB0cnVlO1xuICAgICAgICByZXR1cm4gdGFyZ2V0LnRyaW1SaWdodCgpICsgJyAnLnJlcGVhdChsZWFkaW5nV2hpdGVzcGFjZSAtIHRhcmdldFRleHRXaWR0aCkgKyBzb3VyY2UudHJpbUxlZnQoKTtcbiAgICB9XG4gICAgcmFzdGVyaXplKHJvdykge1xuICAgICAgICBjb25zdCBycm93cyA9IFtdO1xuICAgICAgICBjb25zdCB3aWR0aHMgPSB0aGlzLmNvbHVtbldpZHRocyhyb3cpO1xuICAgICAgICBsZXQgd3JhcHBlZDtcbiAgICAgICAgLy8gd29yZCB3cmFwIGFsbCBjb2x1bW5zLCBhbmQgY3JlYXRlXG4gICAgICAgIC8vIGEgZGF0YS1zdHJ1Y3R1cmUgdGhhdCBpcyBlYXN5IHRvIHJhc3Rlcml6ZS5cbiAgICAgICAgcm93LmZvckVhY2goKGNvbCwgYykgPT4ge1xuICAgICAgICAgICAgLy8gbGVhdmUgcm9vbSBmb3IgbGVmdCBhbmQgcmlnaHQgcGFkZGluZy5cbiAgICAgICAgICAgIGNvbC53aWR0aCA9IHdpZHRoc1tjXTtcbiAgICAgICAgICAgIGlmICh0aGlzLndyYXApIHtcbiAgICAgICAgICAgICAgICB3cmFwcGVkID0gbWl4aW4ud3JhcChjb2wudGV4dCwgdGhpcy5uZWdhdGVQYWRkaW5nKGNvbCksIHsgaGFyZDogdHJ1ZSB9KS5zcGxpdCgnXFxuJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB3cmFwcGVkID0gY29sLnRleHQuc3BsaXQoJ1xcbicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNvbC5ib3JkZXIpIHtcbiAgICAgICAgICAgICAgICB3cmFwcGVkLnVuc2hpZnQoJy4nICsgJy0nLnJlcGVhdCh0aGlzLm5lZ2F0ZVBhZGRpbmcoY29sKSArIDIpICsgJy4nKTtcbiAgICAgICAgICAgICAgICB3cmFwcGVkLnB1c2goXCInXCIgKyAnLScucmVwZWF0KHRoaXMubmVnYXRlUGFkZGluZyhjb2wpICsgMikgKyBcIidcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBhZGQgdG9wIGFuZCBib3R0b20gcGFkZGluZy5cbiAgICAgICAgICAgIGlmIChjb2wucGFkZGluZykge1xuICAgICAgICAgICAgICAgIHdyYXBwZWQudW5zaGlmdCguLi5uZXcgQXJyYXkoY29sLnBhZGRpbmdbdG9wXSB8fCAwKS5maWxsKCcnKSk7XG4gICAgICAgICAgICAgICAgd3JhcHBlZC5wdXNoKC4uLm5ldyBBcnJheShjb2wucGFkZGluZ1tib3R0b21dIHx8IDApLmZpbGwoJycpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHdyYXBwZWQuZm9yRWFjaCgoc3RyLCByKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFycm93c1tyXSkge1xuICAgICAgICAgICAgICAgICAgICBycm93cy5wdXNoKFtdKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgcnJvdyA9IHJyb3dzW3JdO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYzsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChycm93W2ldID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJyb3cucHVzaCgnJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcnJvdy5wdXNoKHN0cik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBycm93cztcbiAgICB9XG4gICAgbmVnYXRlUGFkZGluZyhjb2wpIHtcbiAgICAgICAgbGV0IHdyYXBXaWR0aCA9IGNvbC53aWR0aCB8fCAwO1xuICAgICAgICBpZiAoY29sLnBhZGRpbmcpIHtcbiAgICAgICAgICAgIHdyYXBXaWR0aCAtPSAoY29sLnBhZGRpbmdbbGVmdF0gfHwgMCkgKyAoY29sLnBhZGRpbmdbcmlnaHRdIHx8IDApO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb2wuYm9yZGVyKSB7XG4gICAgICAgICAgICB3cmFwV2lkdGggLT0gNDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gd3JhcFdpZHRoO1xuICAgIH1cbiAgICBjb2x1bW5XaWR0aHMocm93KSB7XG4gICAgICAgIGlmICghdGhpcy53cmFwKSB7XG4gICAgICAgICAgICByZXR1cm4gcm93Lm1hcChjb2wgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBjb2wud2lkdGggfHwgbWl4aW4uc3RyaW5nV2lkdGgoY29sLnRleHQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IHVuc2V0ID0gcm93Lmxlbmd0aDtcbiAgICAgICAgbGV0IHJlbWFpbmluZ1dpZHRoID0gdGhpcy53aWR0aDtcbiAgICAgICAgLy8gY29sdW1uIHdpZHRocyBjYW4gYmUgc2V0IGluIGNvbmZpZy5cbiAgICAgICAgY29uc3Qgd2lkdGhzID0gcm93Lm1hcChjb2wgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbC53aWR0aCkge1xuICAgICAgICAgICAgICAgIHVuc2V0LS07XG4gICAgICAgICAgICAgICAgcmVtYWluaW5nV2lkdGggLT0gY29sLndpZHRoO1xuICAgICAgICAgICAgICAgIHJldHVybiBjb2wud2lkdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gYW55IHVuc2V0IHdpZHRocyBzaG91bGQgYmUgY2FsY3VsYXRlZC5cbiAgICAgICAgY29uc3QgdW5zZXRXaWR0aCA9IHVuc2V0ID8gTWF0aC5mbG9vcihyZW1haW5pbmdXaWR0aCAvIHVuc2V0KSA6IDA7XG4gICAgICAgIHJldHVybiB3aWR0aHMubWFwKCh3LCBpKSA9PiB7XG4gICAgICAgICAgICBpZiAodyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIE1hdGgubWF4KHVuc2V0V2lkdGgsIF9taW5XaWR0aChyb3dbaV0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB3O1xuICAgICAgICB9KTtcbiAgICB9XG59XG5mdW5jdGlvbiBhZGRCb3JkZXIoY29sLCB0cywgc3R5bGUpIHtcbiAgICBpZiAoY29sLmJvcmRlcikge1xuICAgICAgICBpZiAoL1suJ10tK1suJ10vLnRlc3QodHMpKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRzLnRyaW0oKS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyAgJztcbiAgICB9XG4gICAgcmV0dXJuICcnO1xufVxuLy8gY2FsY3VsYXRlcyB0aGUgbWluaW11bSB3aWR0aCBvZlxuLy8gYSBjb2x1bW4sIGJhc2VkIG9uIHBhZGRpbmcgcHJlZmVyZW5jZXMuXG5mdW5jdGlvbiBfbWluV2lkdGgoY29sKSB7XG4gICAgY29uc3QgcGFkZGluZyA9IGNvbC5wYWRkaW5nIHx8IFtdO1xuICAgIGNvbnN0IG1pbldpZHRoID0gMSArIChwYWRkaW5nW2xlZnRdIHx8IDApICsgKHBhZGRpbmdbcmlnaHRdIHx8IDApO1xuICAgIGlmIChjb2wuYm9yZGVyKSB7XG4gICAgICAgIHJldHVybiBtaW5XaWR0aCArIDQ7XG4gICAgfVxuICAgIHJldHVybiBtaW5XaWR0aDtcbn1cbmZ1bmN0aW9uIGdldFdpbmRvd1dpZHRoKCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBkZXBlbmRzIG9uIHRlcm1pbmFsICovXG4gICAgaWYgKHR5cGVvZiBwcm9jZXNzID09PSAnb2JqZWN0JyAmJiBwcm9jZXNzLnN0ZG91dCAmJiBwcm9jZXNzLnN0ZG91dC5jb2x1bW5zKSB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzLnN0ZG91dC5jb2x1bW5zO1xuICAgIH1cbiAgICByZXR1cm4gODA7XG59XG5mdW5jdGlvbiBhbGlnblJpZ2h0KHN0ciwgd2lkdGgpIHtcbiAgICBzdHIgPSBzdHIudHJpbSgpO1xuICAgIGNvbnN0IHN0cldpZHRoID0gbWl4aW4uc3RyaW5nV2lkdGgoc3RyKTtcbiAgICBpZiAoc3RyV2lkdGggPCB3aWR0aCkge1xuICAgICAgICByZXR1cm4gJyAnLnJlcGVhdCh3aWR0aCAtIHN0cldpZHRoKSArIHN0cjtcbiAgICB9XG4gICAgcmV0dXJuIHN0cjtcbn1cbmZ1bmN0aW9uIGFsaWduQ2VudGVyKHN0ciwgd2lkdGgpIHtcbiAgICBzdHIgPSBzdHIudHJpbSgpO1xuICAgIGNvbnN0IHN0cldpZHRoID0gbWl4aW4uc3RyaW5nV2lkdGgoc3RyKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmIChzdHJXaWR0aCA+PSB3aWR0aCkge1xuICAgICAgICByZXR1cm4gc3RyO1xuICAgIH1cbiAgICByZXR1cm4gJyAnLnJlcGVhdCgod2lkdGggLSBzdHJXaWR0aCkgPj4gMSkgKyBzdHI7XG59XG5sZXQgbWl4aW47XG5mdW5jdGlvbiBjbGl1aShvcHRzLCBfbWl4aW4pIHtcbiAgICBtaXhpbiA9IF9taXhpbjtcbiAgICByZXR1cm4gbmV3IFVJKHtcbiAgICAgICAgd2lkdGg6IChvcHRzID09PSBudWxsIHx8IG9wdHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9wdHMud2lkdGgpIHx8IGdldFdpbmRvd1dpZHRoKCksXG4gICAgICAgIHdyYXA6IG9wdHMgPT09IG51bGwgfHwgb3B0cyA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3B0cy53cmFwXG4gICAgfSk7XG59XG5cbi8vIEJvb3RzdHJhcCBjbGl1aSB3aXRoIENvbW1vbkpTIGRlcGVuZGVuY2llczpcbmNvbnN0IHN0cmluZ1dpZHRoID0gcmVxdWlyZSgnc3RyaW5nLXdpZHRoJyk7XG5jb25zdCBzdHJpcEFuc2kgPSByZXF1aXJlKCdzdHJpcC1hbnNpJyk7XG5jb25zdCB3cmFwID0gcmVxdWlyZSgnd3JhcC1hbnNpJyk7XG5mdW5jdGlvbiB1aShvcHRzKSB7XG4gICAgcmV0dXJuIGNsaXVpKG9wdHMsIHtcbiAgICAgICAgc3RyaW5nV2lkdGgsXG4gICAgICAgIHN0cmlwQW5zaSxcbiAgICAgICAgd3JhcFxuICAgIH0pO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHVpO1xuIiwgImNvbnN0IHsgZGlybmFtZSwgcmVzb2x2ZSB9ID0gcmVxdWlyZSgncGF0aCcpO1xuY29uc3QgeyByZWFkZGlyU3luYywgc3RhdFN5bmMgfSA9IHJlcXVpcmUoJ2ZzJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHN0YXJ0LCBjYWxsYmFjaykge1xuXHRsZXQgZGlyID0gcmVzb2x2ZSgnLicsIHN0YXJ0KTtcblx0bGV0IHRtcCwgc3RhdHMgPSBzdGF0U3luYyhkaXIpO1xuXG5cdGlmICghc3RhdHMuaXNEaXJlY3RvcnkoKSkge1xuXHRcdGRpciA9IGRpcm5hbWUoZGlyKTtcblx0fVxuXG5cdHdoaWxlICh0cnVlKSB7XG5cdFx0dG1wID0gY2FsbGJhY2soZGlyLCByZWFkZGlyU3luYyhkaXIpKTtcblx0XHRpZiAodG1wKSByZXR1cm4gcmVzb2x2ZShkaXIsIHRtcCk7XG5cdFx0ZGlyID0gZGlybmFtZSh0bXAgPSBkaXIpO1xuXHRcdGlmICh0bXAgPT09IGRpcikgYnJlYWs7XG5cdH1cbn1cbiIsIG51bGwsICIndXNlIHN0cmljdCc7XG5cbnZhciBmcyA9IHJlcXVpcmUoJ2ZzJyksXG4gIGpvaW4gPSByZXF1aXJlKCdwYXRoJykuam9pbixcbiAgcmVzb2x2ZSA9IHJlcXVpcmUoJ3BhdGgnKS5yZXNvbHZlLFxuICBkaXJuYW1lID0gcmVxdWlyZSgncGF0aCcpLmRpcm5hbWUsXG4gIGRlZmF1bHRPcHRpb25zID0ge1xuICAgIGV4dGVuc2lvbnM6IFsnanMnLCAnanNvbicsICdjb2ZmZWUnXSxcbiAgICByZWN1cnNlOiB0cnVlLFxuICAgIHJlbmFtZTogZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHJldHVybiBuYW1lO1xuICAgIH0sXG4gICAgdmlzaXQ6IGZ1bmN0aW9uIChvYmopIHtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfVxuICB9O1xuXG5mdW5jdGlvbiBjaGVja0ZpbGVJbmNsdXNpb24ocGF0aCwgZmlsZW5hbWUsIG9wdGlvbnMpIHtcbiAgcmV0dXJuIChcbiAgICAvLyB2ZXJpZnkgZmlsZSBoYXMgdmFsaWQgZXh0ZW5zaW9uXG4gICAgKG5ldyBSZWdFeHAoJ1xcXFwuKCcgKyBvcHRpb25zLmV4dGVuc2lvbnMuam9pbignfCcpICsgJykkJywgJ2knKS50ZXN0KGZpbGVuYW1lKSkgJiZcblxuICAgIC8vIGlmIG9wdGlvbnMuaW5jbHVkZSBpcyBhIFJlZ0V4cCwgZXZhbHVhdGUgaXQgYW5kIG1ha2Ugc3VyZSB0aGUgcGF0aCBwYXNzZXNcbiAgICAhKG9wdGlvbnMuaW5jbHVkZSAmJiBvcHRpb25zLmluY2x1ZGUgaW5zdGFuY2VvZiBSZWdFeHAgJiYgIW9wdGlvbnMuaW5jbHVkZS50ZXN0KHBhdGgpKSAmJlxuXG4gICAgLy8gaWYgb3B0aW9ucy5pbmNsdWRlIGlzIGEgZnVuY3Rpb24sIGV2YWx1YXRlIGl0IGFuZCBtYWtlIHN1cmUgdGhlIHBhdGggcGFzc2VzXG4gICAgIShvcHRpb25zLmluY2x1ZGUgJiYgdHlwZW9mIG9wdGlvbnMuaW5jbHVkZSA9PT0gJ2Z1bmN0aW9uJyAmJiAhb3B0aW9ucy5pbmNsdWRlKHBhdGgsIGZpbGVuYW1lKSkgJiZcblxuICAgIC8vIGlmIG9wdGlvbnMuZXhjbHVkZSBpcyBhIFJlZ0V4cCwgZXZhbHVhdGUgaXQgYW5kIG1ha2Ugc3VyZSB0aGUgcGF0aCBkb2Vzbid0IHBhc3NcbiAgICAhKG9wdGlvbnMuZXhjbHVkZSAmJiBvcHRpb25zLmV4Y2x1ZGUgaW5zdGFuY2VvZiBSZWdFeHAgJiYgb3B0aW9ucy5leGNsdWRlLnRlc3QocGF0aCkpICYmXG5cbiAgICAvLyBpZiBvcHRpb25zLmV4Y2x1ZGUgaXMgYSBmdW5jdGlvbiwgZXZhbHVhdGUgaXQgYW5kIG1ha2Ugc3VyZSB0aGUgcGF0aCBkb2Vzbid0IHBhc3NcbiAgICAhKG9wdGlvbnMuZXhjbHVkZSAmJiB0eXBlb2Ygb3B0aW9ucy5leGNsdWRlID09PSAnZnVuY3Rpb24nICYmIG9wdGlvbnMuZXhjbHVkZShwYXRoLCBmaWxlbmFtZSkpXG4gICk7XG59XG5cbmZ1bmN0aW9uIHJlcXVpcmVEaXJlY3RvcnkobSwgcGF0aCwgb3B0aW9ucykge1xuICB2YXIgcmV0dmFsID0ge307XG5cbiAgLy8gcGF0aCBpcyBvcHRpb25hbFxuICBpZiAocGF0aCAmJiAhb3B0aW9ucyAmJiB0eXBlb2YgcGF0aCAhPT0gJ3N0cmluZycpIHtcbiAgICBvcHRpb25zID0gcGF0aDtcbiAgICBwYXRoID0gbnVsbDtcbiAgfVxuXG4gIC8vIGRlZmF1bHQgb3B0aW9uc1xuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgZm9yICh2YXIgcHJvcCBpbiBkZWZhdWx0T3B0aW9ucykge1xuICAgIGlmICh0eXBlb2Ygb3B0aW9uc1twcm9wXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIG9wdGlvbnNbcHJvcF0gPSBkZWZhdWx0T3B0aW9uc1twcm9wXTtcbiAgICB9XG4gIH1cblxuICAvLyBpZiBubyBwYXRoIHdhcyBwYXNzZWQgaW4sIGFzc3VtZSB0aGUgZXF1aXZlbGFudCBvZiBfX2Rpcm5hbWUgZnJvbSBjYWxsZXJcbiAgLy8gb3RoZXJ3aXNlLCByZXNvbHZlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGVxdWl2YWxlbnQgb2YgX19kaXJuYW1lXG4gIHBhdGggPSAhcGF0aCA/IGRpcm5hbWUobS5maWxlbmFtZSkgOiByZXNvbHZlKGRpcm5hbWUobS5maWxlbmFtZSksIHBhdGgpO1xuXG4gIC8vIGdldCB0aGUgcGF0aCBvZiBlYWNoIGZpbGUgaW4gc3BlY2lmaWVkIGRpcmVjdG9yeSwgYXBwZW5kIHRvIGN1cnJlbnQgdHJlZSBub2RlLCByZWN1cnNlXG4gIGZzLnJlYWRkaXJTeW5jKHBhdGgpLmZvckVhY2goZnVuY3Rpb24gKGZpbGVuYW1lKSB7XG4gICAgdmFyIGpvaW5lZCA9IGpvaW4ocGF0aCwgZmlsZW5hbWUpLFxuICAgICAgZmlsZXMsXG4gICAgICBrZXksXG4gICAgICBvYmo7XG5cbiAgICBpZiAoZnMuc3RhdFN5bmMoam9pbmVkKS5pc0RpcmVjdG9yeSgpICYmIG9wdGlvbnMucmVjdXJzZSkge1xuICAgICAgLy8gdGhpcyBub2RlIGlzIGEgZGlyZWN0b3J5OyByZWN1cnNlXG4gICAgICBmaWxlcyA9IHJlcXVpcmVEaXJlY3RvcnkobSwgam9pbmVkLCBvcHRpb25zKTtcbiAgICAgIC8vIGV4Y2x1ZGUgZW1wdHkgZGlyZWN0b3JpZXNcbiAgICAgIGlmIChPYmplY3Qua2V5cyhmaWxlcykubGVuZ3RoKSB7XG4gICAgICAgIHJldHZhbFtvcHRpb25zLnJlbmFtZShmaWxlbmFtZSwgam9pbmVkLCBmaWxlbmFtZSldID0gZmlsZXM7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChqb2luZWQgIT09IG0uZmlsZW5hbWUgJiYgY2hlY2tGaWxlSW5jbHVzaW9uKGpvaW5lZCwgZmlsZW5hbWUsIG9wdGlvbnMpKSB7XG4gICAgICAgIC8vIGhhc2ggbm9kZSBrZXkgc2hvdWxkbid0IGluY2x1ZGUgZmlsZSBleHRlbnNpb25cbiAgICAgICAga2V5ID0gZmlsZW5hbWUuc3Vic3RyaW5nKDAsIGZpbGVuYW1lLmxhc3RJbmRleE9mKCcuJykpO1xuICAgICAgICBvYmogPSBtLnJlcXVpcmUoam9pbmVkKTtcbiAgICAgICAgcmV0dmFsW29wdGlvbnMucmVuYW1lKGtleSwgam9pbmVkLCBmaWxlbmFtZSldID0gb3B0aW9ucy52aXNpdChvYmosIGpvaW5lZCwgZmlsZW5hbWUpIHx8IG9iajtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiByZXR2YWw7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZURpcmVjdG9yeTtcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHRzID0gZGVmYXVsdE9wdGlvbnM7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0Jyk7XG5cbmNsYXNzIFlFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcihtc2cpIHtcbiAgICAgICAgc3VwZXIobXNnIHx8ICd5YXJncyBlcnJvcicpO1xuICAgICAgICB0aGlzLm5hbWUgPSAnWUVycm9yJztcbiAgICAgICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcywgWUVycm9yKTtcbiAgICB9XG59XG5cbmxldCBwcmV2aW91c2x5VmlzaXRlZENvbmZpZ3MgPSBbXTtcbmxldCBzaGltO1xuZnVuY3Rpb24gYXBwbHlFeHRlbmRzKGNvbmZpZywgY3dkLCBtZXJnZUV4dGVuZHMsIF9zaGltKSB7XG4gICAgc2hpbSA9IF9zaGltO1xuICAgIGxldCBkZWZhdWx0Q29uZmlnID0ge307XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsICdleHRlbmRzJykpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBjb25maWcuZXh0ZW5kcyAhPT0gJ3N0cmluZycpXG4gICAgICAgICAgICByZXR1cm4gZGVmYXVsdENvbmZpZztcbiAgICAgICAgY29uc3QgaXNQYXRoID0gL1xcLmpzb258XFwuLipyYyQvLnRlc3QoY29uZmlnLmV4dGVuZHMpO1xuICAgICAgICBsZXQgcGF0aFRvRGVmYXVsdCA9IG51bGw7XG4gICAgICAgIGlmICghaXNQYXRoKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHBhdGhUb0RlZmF1bHQgPSByZXF1aXJlLnJlc29sdmUoY29uZmlnLmV4dGVuZHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKF9lcnIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29uZmlnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcGF0aFRvRGVmYXVsdCA9IGdldFBhdGhUb0RlZmF1bHRDb25maWcoY3dkLCBjb25maWcuZXh0ZW5kcyk7XG4gICAgICAgIH1cbiAgICAgICAgY2hlY2tGb3JDaXJjdWxhckV4dGVuZHMocGF0aFRvRGVmYXVsdCk7XG4gICAgICAgIHByZXZpb3VzbHlWaXNpdGVkQ29uZmlncy5wdXNoKHBhdGhUb0RlZmF1bHQpO1xuICAgICAgICBkZWZhdWx0Q29uZmlnID0gaXNQYXRoXG4gICAgICAgICAgICA/IEpTT04ucGFyc2Uoc2hpbS5yZWFkRmlsZVN5bmMocGF0aFRvRGVmYXVsdCwgJ3V0ZjgnKSlcbiAgICAgICAgICAgIDogcmVxdWlyZShjb25maWcuZXh0ZW5kcyk7XG4gICAgICAgIGRlbGV0ZSBjb25maWcuZXh0ZW5kcztcbiAgICAgICAgZGVmYXVsdENvbmZpZyA9IGFwcGx5RXh0ZW5kcyhkZWZhdWx0Q29uZmlnLCBzaGltLnBhdGguZGlybmFtZShwYXRoVG9EZWZhdWx0KSwgbWVyZ2VFeHRlbmRzLCBzaGltKTtcbiAgICB9XG4gICAgcHJldmlvdXNseVZpc2l0ZWRDb25maWdzID0gW107XG4gICAgcmV0dXJuIG1lcmdlRXh0ZW5kc1xuICAgICAgICA/IG1lcmdlRGVlcChkZWZhdWx0Q29uZmlnLCBjb25maWcpXG4gICAgICAgIDogT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdENvbmZpZywgY29uZmlnKTtcbn1cbmZ1bmN0aW9uIGNoZWNrRm9yQ2lyY3VsYXJFeHRlbmRzKGNmZ1BhdGgpIHtcbiAgICBpZiAocHJldmlvdXNseVZpc2l0ZWRDb25maWdzLmluZGV4T2YoY2ZnUGF0aCkgPiAtMSkge1xuICAgICAgICB0aHJvdyBuZXcgWUVycm9yKGBDaXJjdWxhciBleHRlbmRlZCBjb25maWd1cmF0aW9uczogJyR7Y2ZnUGF0aH0nLmApO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdldFBhdGhUb0RlZmF1bHRDb25maWcoY3dkLCBwYXRoVG9FeHRlbmQpIHtcbiAgICByZXR1cm4gc2hpbS5wYXRoLnJlc29sdmUoY3dkLCBwYXRoVG9FeHRlbmQpO1xufVxuZnVuY3Rpb24gbWVyZ2VEZWVwKGNvbmZpZzEsIGNvbmZpZzIpIHtcbiAgICBjb25zdCB0YXJnZXQgPSB7fTtcbiAgICBmdW5jdGlvbiBpc09iamVjdChvYmopIHtcbiAgICAgICAgcmV0dXJuIG9iaiAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShvYmopO1xuICAgIH1cbiAgICBPYmplY3QuYXNzaWduKHRhcmdldCwgY29uZmlnMSk7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoY29uZmlnMikpIHtcbiAgICAgICAgaWYgKGlzT2JqZWN0KGNvbmZpZzJba2V5XSkgJiYgaXNPYmplY3QodGFyZ2V0W2tleV0pKSB7XG4gICAgICAgICAgICB0YXJnZXRba2V5XSA9IG1lcmdlRGVlcChjb25maWcxW2tleV0sIGNvbmZpZzJba2V5XSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0YXJnZXRba2V5XSA9IGNvbmZpZzJba2V5XTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGFyZ2V0O1xufVxuXG5mdW5jdGlvbiBwYXJzZUNvbW1hbmQoY21kKSB7XG4gICAgY29uc3QgZXh0cmFTcGFjZXNTdHJpcHBlZENvbW1hbmQgPSBjbWQucmVwbGFjZSgvXFxzezIsfS9nLCAnICcpO1xuICAgIGNvbnN0IHNwbGl0Q29tbWFuZCA9IGV4dHJhU3BhY2VzU3RyaXBwZWRDb21tYW5kLnNwbGl0KC9cXHMrKD8hW15bXSpdfFtePF0qPikvKTtcbiAgICBjb25zdCBicmVnZXggPSAvXFwuKltcXF1bPD5dL2c7XG4gICAgY29uc3QgZmlyc3RDb21tYW5kID0gc3BsaXRDb21tYW5kLnNoaWZ0KCk7XG4gICAgaWYgKCFmaXJzdENvbW1hbmQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gY29tbWFuZCBmb3VuZCBpbjogJHtjbWR9YCk7XG4gICAgY29uc3QgcGFyc2VkQ29tbWFuZCA9IHtcbiAgICAgICAgY21kOiBmaXJzdENvbW1hbmQucmVwbGFjZShicmVnZXgsICcnKSxcbiAgICAgICAgZGVtYW5kZWQ6IFtdLFxuICAgICAgICBvcHRpb25hbDogW10sXG4gICAgfTtcbiAgICBzcGxpdENvbW1hbmQuZm9yRWFjaCgoY21kLCBpKSA9PiB7XG4gICAgICAgIGxldCB2YXJpYWRpYyA9IGZhbHNlO1xuICAgICAgICBjbWQgPSBjbWQucmVwbGFjZSgvXFxzL2csICcnKTtcbiAgICAgICAgaWYgKC9cXC4rW1xcXT5dLy50ZXN0KGNtZCkgJiYgaSA9PT0gc3BsaXRDb21tYW5kLmxlbmd0aCAtIDEpXG4gICAgICAgICAgICB2YXJpYWRpYyA9IHRydWU7XG4gICAgICAgIGlmICgvXlxcWy8udGVzdChjbWQpKSB7XG4gICAgICAgICAgICBwYXJzZWRDb21tYW5kLm9wdGlvbmFsLnB1c2goe1xuICAgICAgICAgICAgICAgIGNtZDogY21kLnJlcGxhY2UoYnJlZ2V4LCAnJykuc3BsaXQoJ3wnKSxcbiAgICAgICAgICAgICAgICB2YXJpYWRpYyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VkQ29tbWFuZC5kZW1hbmRlZC5wdXNoKHtcbiAgICAgICAgICAgICAgICBjbWQ6IGNtZC5yZXBsYWNlKGJyZWdleCwgJycpLnNwbGl0KCd8JyksXG4gICAgICAgICAgICAgICAgdmFyaWFkaWMsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBwYXJzZWRDb21tYW5kO1xufVxuXG5jb25zdCBwb3NpdGlvbk5hbWUgPSBbJ2ZpcnN0JywgJ3NlY29uZCcsICd0aGlyZCcsICdmb3VydGgnLCAnZmlmdGgnLCAnc2l4dGgnXTtcbmZ1bmN0aW9uIGFyZ3NlcnQoYXJnMSwgYXJnMiwgYXJnMykge1xuICAgIGZ1bmN0aW9uIHBhcnNlQXJncygpIHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBhcmcxID09PSAnb2JqZWN0J1xuICAgICAgICAgICAgPyBbeyBkZW1hbmRlZDogW10sIG9wdGlvbmFsOiBbXSB9LCBhcmcxLCBhcmcyXVxuICAgICAgICAgICAgOiBbXG4gICAgICAgICAgICAgICAgcGFyc2VDb21tYW5kKGBjbWQgJHthcmcxfWApLFxuICAgICAgICAgICAgICAgIGFyZzIsXG4gICAgICAgICAgICAgICAgYXJnMyxcbiAgICAgICAgICAgIF07XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIGxldCBwb3NpdGlvbiA9IDA7XG4gICAgICAgIGNvbnN0IFtwYXJzZWQsIGNhbGxlckFyZ3VtZW50cywgX2xlbmd0aF0gPSBwYXJzZUFyZ3MoKTtcbiAgICAgICAgY29uc3QgYXJncyA9IFtdLnNsaWNlLmNhbGwoY2FsbGVyQXJndW1lbnRzKTtcbiAgICAgICAgd2hpbGUgKGFyZ3MubGVuZ3RoICYmIGFyZ3NbYXJncy5sZW5ndGggLSAxXSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgYXJncy5wb3AoKTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gX2xlbmd0aCB8fCBhcmdzLmxlbmd0aDtcbiAgICAgICAgaWYgKGxlbmd0aCA8IHBhcnNlZC5kZW1hbmRlZC5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBZRXJyb3IoYE5vdCBlbm91Z2ggYXJndW1lbnRzIHByb3ZpZGVkLiBFeHBlY3RlZCAke3BhcnNlZC5kZW1hbmRlZC5sZW5ndGh9IGJ1dCByZWNlaXZlZCAke2FyZ3MubGVuZ3RofS5gKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB0b3RhbENvbW1hbmRzID0gcGFyc2VkLmRlbWFuZGVkLmxlbmd0aCArIHBhcnNlZC5vcHRpb25hbC5sZW5ndGg7XG4gICAgICAgIGlmIChsZW5ndGggPiB0b3RhbENvbW1hbmRzKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgWUVycm9yKGBUb28gbWFueSBhcmd1bWVudHMgcHJvdmlkZWQuIEV4cGVjdGVkIG1heCAke3RvdGFsQ29tbWFuZHN9IGJ1dCByZWNlaXZlZCAke2xlbmd0aH0uYCk7XG4gICAgICAgIH1cbiAgICAgICAgcGFyc2VkLmRlbWFuZGVkLmZvckVhY2goZGVtYW5kZWQgPT4ge1xuICAgICAgICAgICAgY29uc3QgYXJnID0gYXJncy5zaGlmdCgpO1xuICAgICAgICAgICAgY29uc3Qgb2JzZXJ2ZWRUeXBlID0gZ3Vlc3NUeXBlKGFyZyk7XG4gICAgICAgICAgICBjb25zdCBtYXRjaGluZ1R5cGVzID0gZGVtYW5kZWQuY21kLmZpbHRlcih0eXBlID0+IHR5cGUgPT09IG9ic2VydmVkVHlwZSB8fCB0eXBlID09PSAnKicpO1xuICAgICAgICAgICAgaWYgKG1hdGNoaW5nVHlwZXMubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgICAgIGFyZ3VtZW50VHlwZUVycm9yKG9ic2VydmVkVHlwZSwgZGVtYW5kZWQuY21kLCBwb3NpdGlvbik7XG4gICAgICAgICAgICBwb3NpdGlvbiArPSAxO1xuICAgICAgICB9KTtcbiAgICAgICAgcGFyc2VkLm9wdGlvbmFsLmZvckVhY2gob3B0aW9uYWwgPT4ge1xuICAgICAgICAgICAgaWYgKGFyZ3MubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IGFyZyA9IGFyZ3Muc2hpZnQoKTtcbiAgICAgICAgICAgIGNvbnN0IG9ic2VydmVkVHlwZSA9IGd1ZXNzVHlwZShhcmcpO1xuICAgICAgICAgICAgY29uc3QgbWF0Y2hpbmdUeXBlcyA9IG9wdGlvbmFsLmNtZC5maWx0ZXIodHlwZSA9PiB0eXBlID09PSBvYnNlcnZlZFR5cGUgfHwgdHlwZSA9PT0gJyonKTtcbiAgICAgICAgICAgIGlmIChtYXRjaGluZ1R5cGVzLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgICAgICBhcmd1bWVudFR5cGVFcnJvcihvYnNlcnZlZFR5cGUsIG9wdGlvbmFsLmNtZCwgcG9zaXRpb24pO1xuICAgICAgICAgICAgcG9zaXRpb24gKz0gMTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc29sZS53YXJuKGVyci5zdGFjayk7XG4gICAgfVxufVxuZnVuY3Rpb24gZ3Vlc3NUeXBlKGFyZykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGFyZykpIHtcbiAgICAgICAgcmV0dXJuICdhcnJheSc7XG4gICAgfVxuICAgIGVsc2UgaWYgKGFyZyA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gJ251bGwnO1xuICAgIH1cbiAgICByZXR1cm4gdHlwZW9mIGFyZztcbn1cbmZ1bmN0aW9uIGFyZ3VtZW50VHlwZUVycm9yKG9ic2VydmVkVHlwZSwgYWxsb3dlZFR5cGVzLCBwb3NpdGlvbikge1xuICAgIHRocm93IG5ldyBZRXJyb3IoYEludmFsaWQgJHtwb3NpdGlvbk5hbWVbcG9zaXRpb25dIHx8ICdtYW55aXRoJ30gYXJndW1lbnQuIEV4cGVjdGVkICR7YWxsb3dlZFR5cGVzLmpvaW4oJyBvciAnKX0gYnV0IHJlY2VpdmVkICR7b2JzZXJ2ZWRUeXBlfS5gKTtcbn1cblxuZnVuY3Rpb24gaXNQcm9taXNlKG1heWJlUHJvbWlzZSkge1xuICAgIHJldHVybiAoISFtYXliZVByb21pc2UgJiZcbiAgICAgICAgISFtYXliZVByb21pc2UudGhlbiAmJlxuICAgICAgICB0eXBlb2YgbWF5YmVQcm9taXNlLnRoZW4gPT09ICdmdW5jdGlvbicpO1xufVxuXG5mdW5jdGlvbiBhc3NlcnROb3RTdHJpY3RFcXVhbChhY3R1YWwsIGV4cGVjdGVkLCBzaGltLCBtZXNzYWdlKSB7XG4gICAgc2hpbS5hc3NlcnQubm90U3RyaWN0RXF1YWwoYWN0dWFsLCBleHBlY3RlZCwgbWVzc2FnZSk7XG59XG5mdW5jdGlvbiBhc3NlcnRTaW5nbGVLZXkoYWN0dWFsLCBzaGltKSB7XG4gICAgc2hpbS5hc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGFjdHVhbCwgJ3N0cmluZycpO1xufVxuZnVuY3Rpb24gb2JqZWN0S2V5cyhvYmplY3QpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXMob2JqZWN0KTtcbn1cblxuZnVuY3Rpb24gb2JqRmlsdGVyKG9yaWdpbmFsID0ge30sIGZpbHRlciA9ICgpID0+IHRydWUpIHtcbiAgICBjb25zdCBvYmogPSB7fTtcbiAgICBvYmplY3RLZXlzKG9yaWdpbmFsKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgIGlmIChmaWx0ZXIoa2V5LCBvcmlnaW5hbFtrZXldKSkge1xuICAgICAgICAgICAgb2JqW2tleV0gPSBvcmlnaW5hbFtrZXldO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIG9iajtcbn1cblxuZnVuY3Rpb24gZ2xvYmFsTWlkZGxld2FyZUZhY3RvcnkoZ2xvYmFsTWlkZGxld2FyZSwgY29udGV4dCkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoY2FsbGJhY2ssIGFwcGx5QmVmb3JlVmFsaWRhdGlvbiA9IGZhbHNlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxmdW5jdGlvbj4gW2Jvb2xlYW5dJywgW2NhbGxiYWNrLCBhcHBseUJlZm9yZVZhbGlkYXRpb25dLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2FsbGJhY2spKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhbGxiYWNrLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjYWxsYmFja1tpXSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBFcnJvcignbWlkZGxld2FyZSBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FsbGJhY2tbaV0uYXBwbHlCZWZvcmVWYWxpZGF0aW9uID0gYXBwbHlCZWZvcmVWYWxpZGF0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZ2xvYmFsTWlkZGxld2FyZSwgY2FsbGJhY2spO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgY2FsbGJhY2suYXBwbHlCZWZvcmVWYWxpZGF0aW9uID0gYXBwbHlCZWZvcmVWYWxpZGF0aW9uO1xuICAgICAgICAgICAgZ2xvYmFsTWlkZGxld2FyZS5wdXNoKGNhbGxiYWNrKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udGV4dDtcbiAgICB9O1xufVxuZnVuY3Rpb24gY29tbWFuZE1pZGRsZXdhcmVGYWN0b3J5KGNvbW1hbmRNaWRkbGV3YXJlKSB7XG4gICAgaWYgKCFjb21tYW5kTWlkZGxld2FyZSlcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIHJldHVybiBjb21tYW5kTWlkZGxld2FyZS5tYXAobWlkZGxld2FyZSA9PiB7XG4gICAgICAgIG1pZGRsZXdhcmUuYXBwbHlCZWZvcmVWYWxpZGF0aW9uID0gZmFsc2U7XG4gICAgICAgIHJldHVybiBtaWRkbGV3YXJlO1xuICAgIH0pO1xufVxuZnVuY3Rpb24gYXBwbHlNaWRkbGV3YXJlKGFyZ3YsIHlhcmdzLCBtaWRkbGV3YXJlcywgYmVmb3JlVmFsaWRhdGlvbikge1xuICAgIGNvbnN0IGJlZm9yZVZhbGlkYXRpb25FcnJvciA9IG5ldyBFcnJvcignbWlkZGxld2FyZSBjYW5ub3QgcmV0dXJuIGEgcHJvbWlzZSB3aGVuIGFwcGx5QmVmb3JlVmFsaWRhdGlvbiBpcyB0cnVlJyk7XG4gICAgcmV0dXJuIG1pZGRsZXdhcmVzLnJlZHVjZSgoYWNjLCBtaWRkbGV3YXJlKSA9PiB7XG4gICAgICAgIGlmIChtaWRkbGV3YXJlLmFwcGx5QmVmb3JlVmFsaWRhdGlvbiAhPT0gYmVmb3JlVmFsaWRhdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNQcm9taXNlKGFjYykpIHtcbiAgICAgICAgICAgIHJldHVybiBhY2NcbiAgICAgICAgICAgICAgICAudGhlbihpbml0aWFsT2JqID0+IFByb21pc2UuYWxsKFtcbiAgICAgICAgICAgICAgICBpbml0aWFsT2JqLFxuICAgICAgICAgICAgICAgIG1pZGRsZXdhcmUoaW5pdGlhbE9iaiwgeWFyZ3MpLFxuICAgICAgICAgICAgXSkpXG4gICAgICAgICAgICAgICAgLnRoZW4oKFtpbml0aWFsT2JqLCBtaWRkbGV3YXJlT2JqXSkgPT4gT2JqZWN0LmFzc2lnbihpbml0aWFsT2JqLCBtaWRkbGV3YXJlT2JqKSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBtaWRkbGV3YXJlKGFjYywgeWFyZ3MpO1xuICAgICAgICAgICAgaWYgKGJlZm9yZVZhbGlkYXRpb24gJiYgaXNQcm9taXNlKHJlc3VsdCkpXG4gICAgICAgICAgICAgICAgdGhyb3cgYmVmb3JlVmFsaWRhdGlvbkVycm9yO1xuICAgICAgICAgICAgcmV0dXJuIGlzUHJvbWlzZShyZXN1bHQpXG4gICAgICAgICAgICAgICAgPyByZXN1bHQudGhlbihtaWRkbGV3YXJlT2JqID0+IE9iamVjdC5hc3NpZ24oYWNjLCBtaWRkbGV3YXJlT2JqKSlcbiAgICAgICAgICAgICAgICA6IE9iamVjdC5hc3NpZ24oYWNjLCByZXN1bHQpO1xuICAgICAgICB9XG4gICAgfSwgYXJndik7XG59XG5cbmZ1bmN0aW9uIGdldFByb2Nlc3NBcmd2QmluSW5kZXgoKSB7XG4gICAgaWYgKGlzQnVuZGxlZEVsZWN0cm9uQXBwKCkpXG4gICAgICAgIHJldHVybiAwO1xuICAgIHJldHVybiAxO1xufVxuZnVuY3Rpb24gaXNCdW5kbGVkRWxlY3Ryb25BcHAoKSB7XG4gICAgcmV0dXJuIGlzRWxlY3Ryb25BcHAoKSAmJiAhcHJvY2Vzcy5kZWZhdWx0QXBwO1xufVxuZnVuY3Rpb24gaXNFbGVjdHJvbkFwcCgpIHtcbiAgICByZXR1cm4gISFwcm9jZXNzLnZlcnNpb25zLmVsZWN0cm9uO1xufVxuZnVuY3Rpb24gaGlkZUJpbihhcmd2KSB7XG4gICAgcmV0dXJuIGFyZ3Yuc2xpY2UoZ2V0UHJvY2Vzc0FyZ3ZCaW5JbmRleCgpICsgMSk7XG59XG5mdW5jdGlvbiBnZXRQcm9jZXNzQXJndkJpbigpIHtcbiAgICByZXR1cm4gcHJvY2Vzcy5hcmd2W2dldFByb2Nlc3NBcmd2QmluSW5kZXgoKV07XG59XG5cbnZhciBwcm9jZXNzQXJndiA9IC8qI19fUFVSRV9fKi9PYmplY3QuZnJlZXplKHtcbiAgX19wcm90b19fOiBudWxsLFxuICBoaWRlQmluOiBoaWRlQmluLFxuICBnZXRQcm9jZXNzQXJndkJpbjogZ2V0UHJvY2Vzc0FyZ3ZCaW5cbn0pO1xuXG5mdW5jdGlvbiB3aGljaE1vZHVsZShleHBvcnRlZCkge1xuICAgIGlmICh0eXBlb2YgcmVxdWlyZSA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGZvciAobGV0IGkgPSAwLCBmaWxlcyA9IE9iamVjdC5rZXlzKHJlcXVpcmUuY2FjaGUpLCBtb2Q7IGkgPCBmaWxlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBtb2QgPSByZXF1aXJlLmNhY2hlW2ZpbGVzW2ldXTtcbiAgICAgICAgaWYgKG1vZC5leHBvcnRzID09PSBleHBvcnRlZClcbiAgICAgICAgICAgIHJldHVybiBtb2Q7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufVxuXG5jb25zdCBERUZBVUxUX01BUktFUiA9IC8oXlxcKil8KF5cXCQwKS87XG5mdW5jdGlvbiBjb21tYW5kKHlhcmdzLCB1c2FnZSwgdmFsaWRhdGlvbiwgZ2xvYmFsTWlkZGxld2FyZSA9IFtdLCBzaGltKSB7XG4gICAgY29uc3Qgc2VsZiA9IHt9O1xuICAgIGxldCBoYW5kbGVycyA9IHt9O1xuICAgIGxldCBhbGlhc01hcCA9IHt9O1xuICAgIGxldCBkZWZhdWx0Q29tbWFuZDtcbiAgICBzZWxmLmFkZEhhbmRsZXIgPSBmdW5jdGlvbiBhZGRIYW5kbGVyKGNtZCwgZGVzY3JpcHRpb24sIGJ1aWxkZXIsIGhhbmRsZXIsIGNvbW1hbmRNaWRkbGV3YXJlLCBkZXByZWNhdGVkKSB7XG4gICAgICAgIGxldCBhbGlhc2VzID0gW107XG4gICAgICAgIGNvbnN0IG1pZGRsZXdhcmVzID0gY29tbWFuZE1pZGRsZXdhcmVGYWN0b3J5KGNvbW1hbmRNaWRkbGV3YXJlKTtcbiAgICAgICAgaGFuZGxlciA9IGhhbmRsZXIgfHwgKCgpID0+IHsgfSk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNtZCkpIHtcbiAgICAgICAgICAgIGlmIChpc0NvbW1hbmRBbmRBbGlhc2VzKGNtZCkpIHtcbiAgICAgICAgICAgICAgICBbY21kLCAuLi5hbGlhc2VzXSA9IGNtZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgY29tbWFuZCBvZiBjbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5hZGRIYW5kbGVyKGNvbW1hbmQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChpc0NvbW1hbmRIYW5kbGVyRGVmaW5pdGlvbihjbWQpKSB7XG4gICAgICAgICAgICBsZXQgY29tbWFuZCA9IEFycmF5LmlzQXJyYXkoY21kLmNvbW1hbmQpIHx8IHR5cGVvZiBjbWQuY29tbWFuZCA9PT0gJ3N0cmluZydcbiAgICAgICAgICAgICAgICA/IGNtZC5jb21tYW5kXG4gICAgICAgICAgICAgICAgOiBtb2R1bGVOYW1lKGNtZCk7XG4gICAgICAgICAgICBpZiAoY21kLmFsaWFzZXMpXG4gICAgICAgICAgICAgICAgY29tbWFuZCA9IFtdLmNvbmNhdChjb21tYW5kKS5jb25jYXQoY21kLmFsaWFzZXMpO1xuICAgICAgICAgICAgc2VsZi5hZGRIYW5kbGVyKGNvbW1hbmQsIGV4dHJhY3REZXNjKGNtZCksIGNtZC5idWlsZGVyLCBjbWQuaGFuZGxlciwgY21kLm1pZGRsZXdhcmVzLCBjbWQuZGVwcmVjYXRlZCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNDb21tYW5kQnVpbGRlckRlZmluaXRpb24oYnVpbGRlcikpIHtcbiAgICAgICAgICAgIHNlbGYuYWRkSGFuZGxlcihbY21kXS5jb25jYXQoYWxpYXNlcyksIGRlc2NyaXB0aW9uLCBidWlsZGVyLmJ1aWxkZXIsIGJ1aWxkZXIuaGFuZGxlciwgYnVpbGRlci5taWRkbGV3YXJlcywgYnVpbGRlci5kZXByZWNhdGVkKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGNtZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZENvbW1hbmQgPSBwYXJzZUNvbW1hbmQoY21kKTtcbiAgICAgICAgICAgIGFsaWFzZXMgPSBhbGlhc2VzLm1hcChhbGlhcyA9PiBwYXJzZUNvbW1hbmQoYWxpYXMpLmNtZCk7XG4gICAgICAgICAgICBsZXQgaXNEZWZhdWx0ID0gZmFsc2U7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWRBbGlhc2VzID0gW3BhcnNlZENvbW1hbmQuY21kXS5jb25jYXQoYWxpYXNlcykuZmlsdGVyKGMgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChERUZBVUxUX01BUktFUi50ZXN0KGMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlzRGVmYXVsdCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChwYXJzZWRBbGlhc2VzLmxlbmd0aCA9PT0gMCAmJiBpc0RlZmF1bHQpXG4gICAgICAgICAgICAgICAgcGFyc2VkQWxpYXNlcy5wdXNoKCckMCcpO1xuICAgICAgICAgICAgaWYgKGlzRGVmYXVsdCkge1xuICAgICAgICAgICAgICAgIHBhcnNlZENvbW1hbmQuY21kID0gcGFyc2VkQWxpYXNlc1swXTtcbiAgICAgICAgICAgICAgICBhbGlhc2VzID0gcGFyc2VkQWxpYXNlcy5zbGljZSgxKTtcbiAgICAgICAgICAgICAgICBjbWQgPSBjbWQucmVwbGFjZShERUZBVUxUX01BUktFUiwgcGFyc2VkQ29tbWFuZC5jbWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYWxpYXNlcy5mb3JFYWNoKGFsaWFzID0+IHtcbiAgICAgICAgICAgICAgICBhbGlhc01hcFthbGlhc10gPSBwYXJzZWRDb21tYW5kLmNtZDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKGRlc2NyaXB0aW9uICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHVzYWdlLmNvbW1hbmQoY21kLCBkZXNjcmlwdGlvbiwgaXNEZWZhdWx0LCBhbGlhc2VzLCBkZXByZWNhdGVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhhbmRsZXJzW3BhcnNlZENvbW1hbmQuY21kXSA9IHtcbiAgICAgICAgICAgICAgICBvcmlnaW5hbDogY21kLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIGhhbmRsZXIsXG4gICAgICAgICAgICAgICAgYnVpbGRlcjogYnVpbGRlciB8fCB7fSxcbiAgICAgICAgICAgICAgICBtaWRkbGV3YXJlcyxcbiAgICAgICAgICAgICAgICBkZXByZWNhdGVkLFxuICAgICAgICAgICAgICAgIGRlbWFuZGVkOiBwYXJzZWRDb21tYW5kLmRlbWFuZGVkLFxuICAgICAgICAgICAgICAgIG9wdGlvbmFsOiBwYXJzZWRDb21tYW5kLm9wdGlvbmFsLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGlmIChpc0RlZmF1bHQpXG4gICAgICAgICAgICAgICAgZGVmYXVsdENvbW1hbmQgPSBoYW5kbGVyc1twYXJzZWRDb21tYW5kLmNtZF07XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNlbGYuYWRkRGlyZWN0b3J5ID0gZnVuY3Rpb24gYWRkRGlyZWN0b3J5KGRpciwgY29udGV4dCwgcmVxLCBjYWxsZXJGaWxlLCBvcHRzKSB7XG4gICAgICAgIG9wdHMgPSBvcHRzIHx8IHt9O1xuICAgICAgICBpZiAodHlwZW9mIG9wdHMucmVjdXJzZSAhPT0gJ2Jvb2xlYW4nKVxuICAgICAgICAgICAgb3B0cy5yZWN1cnNlID0gZmFsc2U7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShvcHRzLmV4dGVuc2lvbnMpKVxuICAgICAgICAgICAgb3B0cy5leHRlbnNpb25zID0gWydqcyddO1xuICAgICAgICBjb25zdCBwYXJlbnRWaXNpdCA9IHR5cGVvZiBvcHRzLnZpc2l0ID09PSAnZnVuY3Rpb24nID8gb3B0cy52aXNpdCA6IChvKSA9PiBvO1xuICAgICAgICBvcHRzLnZpc2l0ID0gZnVuY3Rpb24gdmlzaXQob2JqLCBqb2luZWQsIGZpbGVuYW1lKSB7XG4gICAgICAgICAgICBjb25zdCB2aXNpdGVkID0gcGFyZW50VmlzaXQob2JqLCBqb2luZWQsIGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmICh2aXNpdGVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKH5jb250ZXh0LmZpbGVzLmluZGV4T2Yoam9pbmVkKSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZpc2l0ZWQ7XG4gICAgICAgICAgICAgICAgY29udGV4dC5maWxlcy5wdXNoKGpvaW5lZCk7XG4gICAgICAgICAgICAgICAgc2VsZi5hZGRIYW5kbGVyKHZpc2l0ZWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHZpc2l0ZWQ7XG4gICAgICAgIH07XG4gICAgICAgIHNoaW0ucmVxdWlyZURpcmVjdG9yeSh7IHJlcXVpcmU6IHJlcSwgZmlsZW5hbWU6IGNhbGxlckZpbGUgfSwgZGlyLCBvcHRzKTtcbiAgICB9O1xuICAgIGZ1bmN0aW9uIG1vZHVsZU5hbWUob2JqKSB7XG4gICAgICAgIGNvbnN0IG1vZCA9IHdoaWNoTW9kdWxlKG9iaik7XG4gICAgICAgIGlmICghbW9kKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBjb21tYW5kIG5hbWUgZ2l2ZW4gZm9yIG1vZHVsZTogJHtzaGltLmluc3BlY3Qob2JqKX1gKTtcbiAgICAgICAgcmV0dXJuIGNvbW1hbmRGcm9tRmlsZW5hbWUobW9kLmZpbGVuYW1lKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY29tbWFuZEZyb21GaWxlbmFtZShmaWxlbmFtZSkge1xuICAgICAgICByZXR1cm4gc2hpbS5wYXRoLmJhc2VuYW1lKGZpbGVuYW1lLCBzaGltLnBhdGguZXh0bmFtZShmaWxlbmFtZSkpO1xuICAgIH1cbiAgICBmdW5jdGlvbiBleHRyYWN0RGVzYyh7IGRlc2NyaWJlLCBkZXNjcmlwdGlvbiwgZGVzYywgfSkge1xuICAgICAgICBmb3IgKGNvbnN0IHRlc3Qgb2YgW2Rlc2NyaWJlLCBkZXNjcmlwdGlvbiwgZGVzY10pIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdGVzdCA9PT0gJ3N0cmluZycgfHwgdGVzdCA9PT0gZmFsc2UpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRlc3Q7XG4gICAgICAgICAgICBhc3NlcnROb3RTdHJpY3RFcXVhbCh0ZXN0LCB0cnVlLCBzaGltKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHNlbGYuZ2V0Q29tbWFuZHMgPSAoKSA9PiBPYmplY3Qua2V5cyhoYW5kbGVycykuY29uY2F0KE9iamVjdC5rZXlzKGFsaWFzTWFwKSk7XG4gICAgc2VsZi5nZXRDb21tYW5kSGFuZGxlcnMgPSAoKSA9PiBoYW5kbGVycztcbiAgICBzZWxmLmhhc0RlZmF1bHRDb21tYW5kID0gKCkgPT4gISFkZWZhdWx0Q29tbWFuZDtcbiAgICBzZWxmLnJ1bkNvbW1hbmQgPSBmdW5jdGlvbiBydW5Db21tYW5kKGNvbW1hbmQsIHlhcmdzLCBwYXJzZWQsIGNvbW1hbmRJbmRleCkge1xuICAgICAgICBsZXQgYWxpYXNlcyA9IHBhcnNlZC5hbGlhc2VzO1xuICAgICAgICBjb25zdCBjb21tYW5kSGFuZGxlciA9IGhhbmRsZXJzW2NvbW1hbmRdIHx8IGhhbmRsZXJzW2FsaWFzTWFwW2NvbW1hbmRdXSB8fCBkZWZhdWx0Q29tbWFuZDtcbiAgICAgICAgY29uc3QgY3VycmVudENvbnRleHQgPSB5YXJncy5nZXRDb250ZXh0KCk7XG4gICAgICAgIGxldCBudW1GaWxlcyA9IGN1cnJlbnRDb250ZXh0LmZpbGVzLmxlbmd0aDtcbiAgICAgICAgY29uc3QgcGFyZW50Q29tbWFuZHMgPSBjdXJyZW50Q29udGV4dC5jb21tYW5kcy5zbGljZSgpO1xuICAgICAgICBsZXQgaW5uZXJBcmd2ID0gcGFyc2VkLmFyZ3Y7XG4gICAgICAgIGxldCBwb3NpdGlvbmFsTWFwID0ge307XG4gICAgICAgIGlmIChjb21tYW5kKSB7XG4gICAgICAgICAgICBjdXJyZW50Q29udGV4dC5jb21tYW5kcy5wdXNoKGNvbW1hbmQpO1xuICAgICAgICAgICAgY3VycmVudENvbnRleHQuZnVsbENvbW1hbmRzLnB1c2goY29tbWFuZEhhbmRsZXIub3JpZ2luYWwpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJ1aWxkZXIgPSBjb21tYW5kSGFuZGxlci5idWlsZGVyO1xuICAgICAgICBpZiAoaXNDb21tYW5kQnVpbGRlckNhbGxiYWNrKGJ1aWxkZXIpKSB7XG4gICAgICAgICAgICBjb25zdCBidWlsZGVyT3V0cHV0ID0gYnVpbGRlcih5YXJncy5yZXNldChwYXJzZWQuYWxpYXNlcykpO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJZYXJncyA9IGlzWWFyZ3NJbnN0YW5jZShidWlsZGVyT3V0cHV0KSA/IGJ1aWxkZXJPdXRwdXQgOiB5YXJncztcbiAgICAgICAgICAgIGlmIChzaG91bGRVcGRhdGVVc2FnZShpbm5lcllhcmdzKSkge1xuICAgICAgICAgICAgICAgIGlubmVyWWFyZ3NcbiAgICAgICAgICAgICAgICAgICAgLmdldFVzYWdlSW5zdGFuY2UoKVxuICAgICAgICAgICAgICAgICAgICAudXNhZ2UodXNhZ2VGcm9tUGFyZW50Q29tbWFuZHNDb21tYW5kSGFuZGxlcihwYXJlbnRDb21tYW5kcywgY29tbWFuZEhhbmRsZXIpLCBjb21tYW5kSGFuZGxlci5kZXNjcmlwdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbm5lckFyZ3YgPSBpbm5lcllhcmdzLl9wYXJzZUFyZ3MobnVsbCwgbnVsbCwgdHJ1ZSwgY29tbWFuZEluZGV4KTtcbiAgICAgICAgICAgIGFsaWFzZXMgPSBpbm5lcllhcmdzLnBhcnNlZC5hbGlhc2VzO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGlzQ29tbWFuZEJ1aWxkZXJPcHRpb25EZWZpbml0aW9ucyhidWlsZGVyKSkge1xuICAgICAgICAgICAgY29uc3QgaW5uZXJZYXJncyA9IHlhcmdzLnJlc2V0KHBhcnNlZC5hbGlhc2VzKTtcbiAgICAgICAgICAgIGlmIChzaG91bGRVcGRhdGVVc2FnZShpbm5lcllhcmdzKSkge1xuICAgICAgICAgICAgICAgIGlubmVyWWFyZ3NcbiAgICAgICAgICAgICAgICAgICAgLmdldFVzYWdlSW5zdGFuY2UoKVxuICAgICAgICAgICAgICAgICAgICAudXNhZ2UodXNhZ2VGcm9tUGFyZW50Q29tbWFuZHNDb21tYW5kSGFuZGxlcihwYXJlbnRDb21tYW5kcywgY29tbWFuZEhhbmRsZXIpLCBjb21tYW5kSGFuZGxlci5kZXNjcmlwdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhjb21tYW5kSGFuZGxlci5idWlsZGVyKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgaW5uZXJZYXJncy5vcHRpb24oa2V5LCBidWlsZGVyW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpbm5lckFyZ3YgPSBpbm5lcllhcmdzLl9wYXJzZUFyZ3MobnVsbCwgbnVsbCwgdHJ1ZSwgY29tbWFuZEluZGV4KTtcbiAgICAgICAgICAgIGFsaWFzZXMgPSBpbm5lcllhcmdzLnBhcnNlZC5hbGlhc2VzO1xuICAgICAgICB9XG4gICAgICAgIGlmICgheWFyZ3MuX2hhc091dHB1dCgpKSB7XG4gICAgICAgICAgICBwb3NpdGlvbmFsTWFwID0gcG9wdWxhdGVQb3NpdGlvbmFscyhjb21tYW5kSGFuZGxlciwgaW5uZXJBcmd2LCBjdXJyZW50Q29udGV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWlkZGxld2FyZXMgPSBnbG9iYWxNaWRkbGV3YXJlXG4gICAgICAgICAgICAuc2xpY2UoMClcbiAgICAgICAgICAgIC5jb25jYXQoY29tbWFuZEhhbmRsZXIubWlkZGxld2FyZXMpO1xuICAgICAgICBhcHBseU1pZGRsZXdhcmUoaW5uZXJBcmd2LCB5YXJncywgbWlkZGxld2FyZXMsIHRydWUpO1xuICAgICAgICBpZiAoIXlhcmdzLl9oYXNPdXRwdXQoKSkge1xuICAgICAgICAgICAgeWFyZ3MuX3J1blZhbGlkYXRpb24oaW5uZXJBcmd2LCBhbGlhc2VzLCBwb3NpdGlvbmFsTWFwLCB5YXJncy5wYXJzZWQuZXJyb3IsICFjb21tYW5kKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29tbWFuZEhhbmRsZXIuaGFuZGxlciAmJiAheWFyZ3MuX2hhc091dHB1dCgpKSB7XG4gICAgICAgICAgICB5YXJncy5fc2V0SGFzT3V0cHV0KCk7XG4gICAgICAgICAgICBjb25zdCBwb3B1bGF0ZURvdWJsZURhc2ggPSAhIXlhcmdzLmdldE9wdGlvbnMoKS5jb25maWd1cmF0aW9uWydwb3B1bGF0ZS0tJ107XG4gICAgICAgICAgICB5YXJncy5fcG9zdFByb2Nlc3MoaW5uZXJBcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gpO1xuICAgICAgICAgICAgaW5uZXJBcmd2ID0gYXBwbHlNaWRkbGV3YXJlKGlubmVyQXJndiwgeWFyZ3MsIG1pZGRsZXdhcmVzLCBmYWxzZSk7XG4gICAgICAgICAgICBsZXQgaGFuZGxlclJlc3VsdDtcbiAgICAgICAgICAgIGlmIChpc1Byb21pc2UoaW5uZXJBcmd2KSkge1xuICAgICAgICAgICAgICAgIGhhbmRsZXJSZXN1bHQgPSBpbm5lckFyZ3YudGhlbihhcmd2ID0+IGNvbW1hbmRIYW5kbGVyLmhhbmRsZXIoYXJndikpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlclJlc3VsdCA9IGNvbW1hbmRIYW5kbGVyLmhhbmRsZXIoaW5uZXJBcmd2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZXJGaW5pc2hDb21tYW5kID0geWFyZ3MuZ2V0SGFuZGxlckZpbmlzaENvbW1hbmQoKTtcbiAgICAgICAgICAgIGlmIChpc1Byb21pc2UoaGFuZGxlclJlc3VsdCkpIHtcbiAgICAgICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuY2FjaGVIZWxwTWVzc2FnZSgpO1xuICAgICAgICAgICAgICAgIGhhbmRsZXJSZXN1bHRcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4odmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaGFuZGxlckZpbmlzaENvbW1hbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXJGaW5pc2hDb21tYW5kKHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuZmFpbChudWxsLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuY2xlYXJDYWNoZWRIZWxwTWVzc2FnZSgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKGhhbmRsZXJGaW5pc2hDb21tYW5kKSB7XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZXJGaW5pc2hDb21tYW5kKGhhbmRsZXJSZXN1bHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoY29tbWFuZCkge1xuICAgICAgICAgICAgY3VycmVudENvbnRleHQuY29tbWFuZHMucG9wKCk7XG4gICAgICAgICAgICBjdXJyZW50Q29udGV4dC5mdWxsQ29tbWFuZHMucG9wKCk7XG4gICAgICAgIH1cbiAgICAgICAgbnVtRmlsZXMgPSBjdXJyZW50Q29udGV4dC5maWxlcy5sZW5ndGggLSBudW1GaWxlcztcbiAgICAgICAgaWYgKG51bUZpbGVzID4gMClcbiAgICAgICAgICAgIGN1cnJlbnRDb250ZXh0LmZpbGVzLnNwbGljZShudW1GaWxlcyAqIC0xLCBudW1GaWxlcyk7XG4gICAgICAgIHJldHVybiBpbm5lckFyZ3Y7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBzaG91bGRVcGRhdGVVc2FnZSh5YXJncykge1xuICAgICAgICByZXR1cm4gKCF5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuZ2V0VXNhZ2VEaXNhYmxlZCgpICYmXG4gICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkuZ2V0VXNhZ2UoKS5sZW5ndGggPT09IDApO1xuICAgIH1cbiAgICBmdW5jdGlvbiB1c2FnZUZyb21QYXJlbnRDb21tYW5kc0NvbW1hbmRIYW5kbGVyKHBhcmVudENvbW1hbmRzLCBjb21tYW5kSGFuZGxlcikge1xuICAgICAgICBjb25zdCBjID0gREVGQVVMVF9NQVJLRVIudGVzdChjb21tYW5kSGFuZGxlci5vcmlnaW5hbClcbiAgICAgICAgICAgID8gY29tbWFuZEhhbmRsZXIub3JpZ2luYWwucmVwbGFjZShERUZBVUxUX01BUktFUiwgJycpLnRyaW0oKVxuICAgICAgICAgICAgOiBjb21tYW5kSGFuZGxlci5vcmlnaW5hbDtcbiAgICAgICAgY29uc3QgcGMgPSBwYXJlbnRDb21tYW5kcy5maWx0ZXIoYyA9PiB7XG4gICAgICAgICAgICByZXR1cm4gIURFRkFVTFRfTUFSS0VSLnRlc3QoYyk7XG4gICAgICAgIH0pO1xuICAgICAgICBwYy5wdXNoKGMpO1xuICAgICAgICByZXR1cm4gYCQwICR7cGMuam9pbignICcpfWA7XG4gICAgfVxuICAgIHNlbGYucnVuRGVmYXVsdEJ1aWxkZXJPbiA9IGZ1bmN0aW9uICh5YXJncykge1xuICAgICAgICBhc3NlcnROb3RTdHJpY3RFcXVhbChkZWZhdWx0Q29tbWFuZCwgdW5kZWZpbmVkLCBzaGltKTtcbiAgICAgICAgaWYgKHNob3VsZFVwZGF0ZVVzYWdlKHlhcmdzKSkge1xuICAgICAgICAgICAgY29uc3QgY29tbWFuZFN0cmluZyA9IERFRkFVTFRfTUFSS0VSLnRlc3QoZGVmYXVsdENvbW1hbmQub3JpZ2luYWwpXG4gICAgICAgICAgICAgICAgPyBkZWZhdWx0Q29tbWFuZC5vcmlnaW5hbFxuICAgICAgICAgICAgICAgIDogZGVmYXVsdENvbW1hbmQub3JpZ2luYWwucmVwbGFjZSgvXlteW1xcXTw+XSovLCAnJDAgJyk7XG4gICAgICAgICAgICB5YXJncy5nZXRVc2FnZUluc3RhbmNlKCkudXNhZ2UoY29tbWFuZFN0cmluZywgZGVmYXVsdENvbW1hbmQuZGVzY3JpcHRpb24pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJ1aWxkZXIgPSBkZWZhdWx0Q29tbWFuZC5idWlsZGVyO1xuICAgICAgICBpZiAoaXNDb21tYW5kQnVpbGRlckNhbGxiYWNrKGJ1aWxkZXIpKSB7XG4gICAgICAgICAgICBidWlsZGVyKHlhcmdzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICghaXNDb21tYW5kQnVpbGRlckRlZmluaXRpb24oYnVpbGRlcikpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGJ1aWxkZXIpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICB5YXJncy5vcHRpb24oa2V5LCBidWlsZGVyW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGZ1bmN0aW9uIHBvcHVsYXRlUG9zaXRpb25hbHMoY29tbWFuZEhhbmRsZXIsIGFyZ3YsIGNvbnRleHQpIHtcbiAgICAgICAgYXJndi5fID0gYXJndi5fLnNsaWNlKGNvbnRleHQuY29tbWFuZHMubGVuZ3RoKTtcbiAgICAgICAgY29uc3QgZGVtYW5kZWQgPSBjb21tYW5kSGFuZGxlci5kZW1hbmRlZC5zbGljZSgwKTtcbiAgICAgICAgY29uc3Qgb3B0aW9uYWwgPSBjb21tYW5kSGFuZGxlci5vcHRpb25hbC5zbGljZSgwKTtcbiAgICAgICAgY29uc3QgcG9zaXRpb25hbE1hcCA9IHt9O1xuICAgICAgICB2YWxpZGF0aW9uLnBvc2l0aW9uYWxDb3VudChkZW1hbmRlZC5sZW5ndGgsIGFyZ3YuXy5sZW5ndGgpO1xuICAgICAgICB3aGlsZSAoZGVtYW5kZWQubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBkZW1hbmQgPSBkZW1hbmRlZC5zaGlmdCgpO1xuICAgICAgICAgICAgcG9wdWxhdGVQb3NpdGlvbmFsKGRlbWFuZCwgYXJndiwgcG9zaXRpb25hbE1hcCk7XG4gICAgICAgIH1cbiAgICAgICAgd2hpbGUgKG9wdGlvbmFsLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgbWF5YmUgPSBvcHRpb25hbC5zaGlmdCgpO1xuICAgICAgICAgICAgcG9wdWxhdGVQb3NpdGlvbmFsKG1heWJlLCBhcmd2LCBwb3NpdGlvbmFsTWFwKTtcbiAgICAgICAgfVxuICAgICAgICBhcmd2Ll8gPSBjb250ZXh0LmNvbW1hbmRzLmNvbmNhdChhcmd2Ll8ubWFwKGEgPT4gJycgKyBhKSk7XG4gICAgICAgIHBvc3RQcm9jZXNzUG9zaXRpb25hbHMoYXJndiwgcG9zaXRpb25hbE1hcCwgc2VsZi5jbWRUb1BhcnNlT3B0aW9ucyhjb21tYW5kSGFuZGxlci5vcmlnaW5hbCkpO1xuICAgICAgICByZXR1cm4gcG9zaXRpb25hbE1hcDtcbiAgICB9XG4gICAgZnVuY3Rpb24gcG9wdWxhdGVQb3NpdGlvbmFsKHBvc2l0aW9uYWwsIGFyZ3YsIHBvc2l0aW9uYWxNYXApIHtcbiAgICAgICAgY29uc3QgY21kID0gcG9zaXRpb25hbC5jbWRbMF07XG4gICAgICAgIGlmIChwb3NpdGlvbmFsLnZhcmlhZGljKSB7XG4gICAgICAgICAgICBwb3NpdGlvbmFsTWFwW2NtZF0gPSBhcmd2Ll8uc3BsaWNlKDApLm1hcChTdHJpbmcpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGFyZ3YuXy5sZW5ndGgpXG4gICAgICAgICAgICAgICAgcG9zaXRpb25hbE1hcFtjbWRdID0gW1N0cmluZyhhcmd2Ll8uc2hpZnQoKSldO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIHBvc3RQcm9jZXNzUG9zaXRpb25hbHMoYXJndiwgcG9zaXRpb25hbE1hcCwgcGFyc2VPcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCB5YXJncy5nZXRPcHRpb25zKCkpO1xuICAgICAgICBvcHRpb25zLmRlZmF1bHQgPSBPYmplY3QuYXNzaWduKHBhcnNlT3B0aW9ucy5kZWZhdWx0LCBvcHRpb25zLmRlZmF1bHQpO1xuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhwYXJzZU9wdGlvbnMuYWxpYXMpKSB7XG4gICAgICAgICAgICBvcHRpb25zLmFsaWFzW2tleV0gPSAob3B0aW9ucy5hbGlhc1trZXldIHx8IFtdKS5jb25jYXQocGFyc2VPcHRpb25zLmFsaWFzW2tleV0pO1xuICAgICAgICB9XG4gICAgICAgIG9wdGlvbnMuYXJyYXkgPSBvcHRpb25zLmFycmF5LmNvbmNhdChwYXJzZU9wdGlvbnMuYXJyYXkpO1xuICAgICAgICBvcHRpb25zLmNvbmZpZyA9IHt9O1xuICAgICAgICBjb25zdCB1bnBhcnNlZCA9IFtdO1xuICAgICAgICBPYmplY3Qua2V5cyhwb3NpdGlvbmFsTWFwKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBwb3NpdGlvbmFsTWFwW2tleV0ubWFwKHZhbHVlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5jb25maWd1cmF0aW9uWyd1bmtub3duLW9wdGlvbnMtYXMtYXJncyddKVxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmtleVtrZXldID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB1bnBhcnNlZC5wdXNoKGAtLSR7a2V5fWApO1xuICAgICAgICAgICAgICAgIHVucGFyc2VkLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXVucGFyc2VkLmxlbmd0aClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgY29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucy5jb25maWd1cmF0aW9uLCB7XG4gICAgICAgICAgICAncG9wdWxhdGUtLSc6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBwYXJzZWQgPSBzaGltLlBhcnNlci5kZXRhaWxlZCh1bnBhcnNlZCwgT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucywge1xuICAgICAgICAgICAgY29uZmlndXJhdGlvbjogY29uZmlnLFxuICAgICAgICB9KSk7XG4gICAgICAgIGlmIChwYXJzZWQuZXJyb3IpIHtcbiAgICAgICAgICAgIHlhcmdzLmdldFVzYWdlSW5zdGFuY2UoKS5mYWlsKHBhcnNlZC5lcnJvci5tZXNzYWdlLCBwYXJzZWQuZXJyb3IpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgcG9zaXRpb25hbEtleXMgPSBPYmplY3Qua2V5cyhwb3NpdGlvbmFsTWFwKTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHBvc2l0aW9uYWxNYXApLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbmFsS2V5cy5wdXNoKC4uLnBhcnNlZC5hbGlhc2VzW2tleV0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhwYXJzZWQuYXJndikuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChwb3NpdGlvbmFsS2V5cy5pbmRleE9mKGtleSkgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghcG9zaXRpb25hbE1hcFtrZXldKVxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb25hbE1hcFtrZXldID0gcGFyc2VkLmFyZ3Zba2V5XTtcbiAgICAgICAgICAgICAgICAgICAgYXJndltrZXldID0gcGFyc2VkLmFyZ3Zba2V5XTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWxmLmNtZFRvUGFyc2VPcHRpb25zID0gZnVuY3Rpb24gKGNtZFN0cmluZykge1xuICAgICAgICBjb25zdCBwYXJzZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICBhcnJheTogW10sXG4gICAgICAgICAgICBkZWZhdWx0OiB7fSxcbiAgICAgICAgICAgIGFsaWFzOiB7fSxcbiAgICAgICAgICAgIGRlbWFuZDoge30sXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IHBhcnNlQ29tbWFuZChjbWRTdHJpbmcpO1xuICAgICAgICBwYXJzZWQuZGVtYW5kZWQuZm9yRWFjaChkID0+IHtcbiAgICAgICAgICAgIGNvbnN0IFtjbWQsIC4uLmFsaWFzZXNdID0gZC5jbWQ7XG4gICAgICAgICAgICBpZiAoZC52YXJpYWRpYykge1xuICAgICAgICAgICAgICAgIHBhcnNlT3B0aW9ucy5hcnJheS5wdXNoKGNtZCk7XG4gICAgICAgICAgICAgICAgcGFyc2VPcHRpb25zLmRlZmF1bHRbY21kXSA9IFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VPcHRpb25zLmFsaWFzW2NtZF0gPSBhbGlhc2VzO1xuICAgICAgICAgICAgcGFyc2VPcHRpb25zLmRlbWFuZFtjbWRdID0gdHJ1ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHBhcnNlZC5vcHRpb25hbC5mb3JFYWNoKG8gPT4ge1xuICAgICAgICAgICAgY29uc3QgW2NtZCwgLi4uYWxpYXNlc10gPSBvLmNtZDtcbiAgICAgICAgICAgIGlmIChvLnZhcmlhZGljKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VPcHRpb25zLmFycmF5LnB1c2goY21kKTtcbiAgICAgICAgICAgICAgICBwYXJzZU9wdGlvbnMuZGVmYXVsdFtjbWRdID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXJzZU9wdGlvbnMuYWxpYXNbY21kXSA9IGFsaWFzZXM7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcGFyc2VPcHRpb25zO1xuICAgIH07XG4gICAgc2VsZi5yZXNldCA9ICgpID0+IHtcbiAgICAgICAgaGFuZGxlcnMgPSB7fTtcbiAgICAgICAgYWxpYXNNYXAgPSB7fTtcbiAgICAgICAgZGVmYXVsdENvbW1hbmQgPSB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgY29uc3QgZnJvemVucyA9IFtdO1xuICAgIHNlbGYuZnJlZXplID0gKCkgPT4ge1xuICAgICAgICBmcm96ZW5zLnB1c2goe1xuICAgICAgICAgICAgaGFuZGxlcnMsXG4gICAgICAgICAgICBhbGlhc01hcCxcbiAgICAgICAgICAgIGRlZmF1bHRDb21tYW5kLFxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHNlbGYudW5mcmVlemUgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGZyb3plbiA9IGZyb3plbnMucG9wKCk7XG4gICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKGZyb3plbiwgdW5kZWZpbmVkLCBzaGltKTtcbiAgICAgICAgKHsgaGFuZGxlcnMsIGFsaWFzTWFwLCBkZWZhdWx0Q29tbWFuZCB9ID0gZnJvemVuKTtcbiAgICB9O1xuICAgIHJldHVybiBzZWxmO1xufVxuZnVuY3Rpb24gaXNDb21tYW5kQnVpbGRlckRlZmluaXRpb24oYnVpbGRlcikge1xuICAgIHJldHVybiAodHlwZW9mIGJ1aWxkZXIgPT09ICdvYmplY3QnICYmXG4gICAgICAgICEhYnVpbGRlci5idWlsZGVyICYmXG4gICAgICAgIHR5cGVvZiBidWlsZGVyLmhhbmRsZXIgPT09ICdmdW5jdGlvbicpO1xufVxuZnVuY3Rpb24gaXNDb21tYW5kQW5kQWxpYXNlcyhjbWQpIHtcbiAgICBpZiAoY21kLmV2ZXJ5KGMgPT4gdHlwZW9mIGMgPT09ICdzdHJpbmcnKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG5mdW5jdGlvbiBpc0NvbW1hbmRCdWlsZGVyQ2FsbGJhY2soYnVpbGRlcikge1xuICAgIHJldHVybiB0eXBlb2YgYnVpbGRlciA9PT0gJ2Z1bmN0aW9uJztcbn1cbmZ1bmN0aW9uIGlzQ29tbWFuZEJ1aWxkZXJPcHRpb25EZWZpbml0aW9ucyhidWlsZGVyKSB7XG4gICAgcmV0dXJuIHR5cGVvZiBidWlsZGVyID09PSAnb2JqZWN0Jztcbn1cbmZ1bmN0aW9uIGlzQ29tbWFuZEhhbmRsZXJEZWZpbml0aW9uKGNtZCkge1xuICAgIHJldHVybiB0eXBlb2YgY21kID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShjbWQpO1xufVxuXG5mdW5jdGlvbiBzZXRCbG9ja2luZyhibG9ja2luZykge1xuICAgIGlmICh0eXBlb2YgcHJvY2VzcyA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgIHJldHVybjtcbiAgICBbcHJvY2Vzcy5zdGRvdXQsIHByb2Nlc3Muc3RkZXJyXS5mb3JFYWNoKF9zdHJlYW0gPT4ge1xuICAgICAgICBjb25zdCBzdHJlYW0gPSBfc3RyZWFtO1xuICAgICAgICBpZiAoc3RyZWFtLl9oYW5kbGUgJiZcbiAgICAgICAgICAgIHN0cmVhbS5pc1RUWSAmJlxuICAgICAgICAgICAgdHlwZW9mIHN0cmVhbS5faGFuZGxlLnNldEJsb2NraW5nID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBzdHJlYW0uX2hhbmRsZS5zZXRCbG9ja2luZyhibG9ja2luZyk7XG4gICAgICAgIH1cbiAgICB9KTtcbn1cblxuZnVuY3Rpb24gdXNhZ2UoeWFyZ3MsIHkxOG4sIHNoaW0pIHtcbiAgICBjb25zdCBfXyA9IHkxOG4uX187XG4gICAgY29uc3Qgc2VsZiA9IHt9O1xuICAgIGNvbnN0IGZhaWxzID0gW107XG4gICAgc2VsZi5mYWlsRm4gPSBmdW5jdGlvbiBmYWlsRm4oZikge1xuICAgICAgICBmYWlscy5wdXNoKGYpO1xuICAgIH07XG4gICAgbGV0IGZhaWxNZXNzYWdlID0gbnVsbDtcbiAgICBsZXQgc2hvd0hlbHBPbkZhaWwgPSB0cnVlO1xuICAgIHNlbGYuc2hvd0hlbHBPbkZhaWwgPSBmdW5jdGlvbiBzaG93SGVscE9uRmFpbEZuKGFyZzEgPSB0cnVlLCBhcmcyKSB7XG4gICAgICAgIGZ1bmN0aW9uIHBhcnNlRnVuY3Rpb25BcmdzKCkge1xuICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiBhcmcxID09PSAnc3RyaW5nJyA/IFt0cnVlLCBhcmcxXSA6IFthcmcxLCBhcmcyXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBbZW5hYmxlZCwgbWVzc2FnZV0gPSBwYXJzZUZ1bmN0aW9uQXJncygpO1xuICAgICAgICBmYWlsTWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgICAgIHNob3dIZWxwT25GYWlsID0gZW5hYmxlZDtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBsZXQgZmFpbHVyZU91dHB1dCA9IGZhbHNlO1xuICAgIHNlbGYuZmFpbCA9IGZ1bmN0aW9uIGZhaWwobXNnLCBlcnIpIHtcbiAgICAgICAgY29uc3QgbG9nZ2VyID0geWFyZ3MuX2dldExvZ2dlckluc3RhbmNlKCk7XG4gICAgICAgIGlmIChmYWlscy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSBmYWlscy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICAgICAgICAgIGZhaWxzW2ldKG1zZywgZXJyLCBzZWxmKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmICh5YXJncy5nZXRFeGl0UHJvY2VzcygpKVxuICAgICAgICAgICAgICAgIHNldEJsb2NraW5nKHRydWUpO1xuICAgICAgICAgICAgaWYgKCFmYWlsdXJlT3V0cHV0KSB7XG4gICAgICAgICAgICAgICAgZmFpbHVyZU91dHB1dCA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKHNob3dIZWxwT25GYWlsKSB7XG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLnNob3dIZWxwKCdlcnJvcicpO1xuICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG1zZyB8fCBlcnIpXG4gICAgICAgICAgICAgICAgICAgIGxvZ2dlci5lcnJvcihtc2cgfHwgZXJyKTtcbiAgICAgICAgICAgICAgICBpZiAoZmFpbE1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1zZyB8fCBlcnIpXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoJycpO1xuICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoZmFpbE1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVyciA9IGVyciB8fCBuZXcgWUVycm9yKG1zZyk7XG4gICAgICAgICAgICBpZiAoeWFyZ3MuZ2V0RXhpdFByb2Nlc3MoKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB5YXJncy5leGl0KDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoeWFyZ3MuX2hhc1BhcnNlQ2FsbGJhY2soKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB5YXJncy5leGl0KDEsIGVycik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGxldCB1c2FnZXMgPSBbXTtcbiAgICBsZXQgdXNhZ2VEaXNhYmxlZCA9IGZhbHNlO1xuICAgIHNlbGYudXNhZ2UgPSAobXNnLCBkZXNjcmlwdGlvbikgPT4ge1xuICAgICAgICBpZiAobXNnID09PSBudWxsKSB7XG4gICAgICAgICAgICB1c2FnZURpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHVzYWdlcyA9IFtdO1xuICAgICAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgICAgIH1cbiAgICAgICAgdXNhZ2VEaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgICB1c2FnZXMucHVzaChbbXNnLCBkZXNjcmlwdGlvbiB8fCAnJ10pO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0VXNhZ2UgPSAoKSA9PiB7XG4gICAgICAgIHJldHVybiB1c2FnZXM7XG4gICAgfTtcbiAgICBzZWxmLmdldFVzYWdlRGlzYWJsZWQgPSAoKSA9PiB7XG4gICAgICAgIHJldHVybiB1c2FnZURpc2FibGVkO1xuICAgIH07XG4gICAgc2VsZi5nZXRQb3NpdGlvbmFsR3JvdXBOYW1lID0gKCkgPT4ge1xuICAgICAgICByZXR1cm4gX18oJ1Bvc2l0aW9uYWxzOicpO1xuICAgIH07XG4gICAgbGV0IGV4YW1wbGVzID0gW107XG4gICAgc2VsZi5leGFtcGxlID0gKGNtZCwgZGVzY3JpcHRpb24pID0+IHtcbiAgICAgICAgZXhhbXBsZXMucHVzaChbY21kLCBkZXNjcmlwdGlvbiB8fCAnJ10pO1xuICAgIH07XG4gICAgbGV0IGNvbW1hbmRzID0gW107XG4gICAgc2VsZi5jb21tYW5kID0gZnVuY3Rpb24gY29tbWFuZChjbWQsIGRlc2NyaXB0aW9uLCBpc0RlZmF1bHQsIGFsaWFzZXMsIGRlcHJlY2F0ZWQgPSBmYWxzZSkge1xuICAgICAgICBpZiAoaXNEZWZhdWx0KSB7XG4gICAgICAgICAgICBjb21tYW5kcyA9IGNvbW1hbmRzLm1hcChjbWRBcnJheSA9PiB7XG4gICAgICAgICAgICAgICAgY21kQXJyYXlbMl0gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICByZXR1cm4gY21kQXJyYXk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBjb21tYW5kcy5wdXNoKFtjbWQsIGRlc2NyaXB0aW9uIHx8ICcnLCBpc0RlZmF1bHQsIGFsaWFzZXMsIGRlcHJlY2F0ZWRdKTtcbiAgICB9O1xuICAgIHNlbGYuZ2V0Q29tbWFuZHMgPSAoKSA9PiBjb21tYW5kcztcbiAgICBsZXQgZGVzY3JpcHRpb25zID0ge307XG4gICAgc2VsZi5kZXNjcmliZSA9IGZ1bmN0aW9uIGRlc2NyaWJlKGtleU9yS2V5cywgZGVzYykge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShrZXlPcktleXMpKSB7XG4gICAgICAgICAgICBrZXlPcktleXMuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlc2NyaWJlKGssIGRlc2MpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodHlwZW9mIGtleU9yS2V5cyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGtleU9yS2V5cykuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlc2NyaWJlKGssIGtleU9yS2V5c1trXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uc1trZXlPcktleXNdID0gZGVzYztcbiAgICAgICAgfVxuICAgIH07XG4gICAgc2VsZi5nZXREZXNjcmlwdGlvbnMgPSAoKSA9PiBkZXNjcmlwdGlvbnM7XG4gICAgbGV0IGVwaWxvZ3MgPSBbXTtcbiAgICBzZWxmLmVwaWxvZyA9IG1zZyA9PiB7XG4gICAgICAgIGVwaWxvZ3MucHVzaChtc2cpO1xuICAgIH07XG4gICAgbGV0IHdyYXBTZXQgPSBmYWxzZTtcbiAgICBsZXQgd3JhcDtcbiAgICBzZWxmLndyYXAgPSBjb2xzID0+IHtcbiAgICAgICAgd3JhcFNldCA9IHRydWU7XG4gICAgICAgIHdyYXAgPSBjb2xzO1xuICAgIH07XG4gICAgZnVuY3Rpb24gZ2V0V3JhcCgpIHtcbiAgICAgICAgaWYgKCF3cmFwU2V0KSB7XG4gICAgICAgICAgICB3cmFwID0gd2luZG93V2lkdGgoKTtcbiAgICAgICAgICAgIHdyYXBTZXQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB3cmFwO1xuICAgIH1cbiAgICBjb25zdCBkZWZlclkxOG5Mb29rdXBQcmVmaXggPSAnX195YXJnc1N0cmluZ19fOic7XG4gICAgc2VsZi5kZWZlclkxOG5Mb29rdXAgPSBzdHIgPT4gZGVmZXJZMThuTG9va3VwUHJlZml4ICsgc3RyO1xuICAgIHNlbGYuaGVscCA9IGZ1bmN0aW9uIGhlbHAoKSB7XG4gICAgICAgIGlmIChjYWNoZWRIZWxwTWVzc2FnZSlcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRIZWxwTWVzc2FnZTtcbiAgICAgICAgbm9ybWFsaXplQWxpYXNlcygpO1xuICAgICAgICBjb25zdCBiYXNlJDAgPSB5YXJncy5jdXN0b21TY3JpcHROYW1lXG4gICAgICAgICAgICA/IHlhcmdzLiQwXG4gICAgICAgICAgICA6IHNoaW0ucGF0aC5iYXNlbmFtZSh5YXJncy4kMCk7XG4gICAgICAgIGNvbnN0IGRlbWFuZGVkT3B0aW9ucyA9IHlhcmdzLmdldERlbWFuZGVkT3B0aW9ucygpO1xuICAgICAgICBjb25zdCBkZW1hbmRlZENvbW1hbmRzID0geWFyZ3MuZ2V0RGVtYW5kZWRDb21tYW5kcygpO1xuICAgICAgICBjb25zdCBkZXByZWNhdGVkT3B0aW9ucyA9IHlhcmdzLmdldERlcHJlY2F0ZWRPcHRpb25zKCk7XG4gICAgICAgIGNvbnN0IGdyb3VwcyA9IHlhcmdzLmdldEdyb3VwcygpO1xuICAgICAgICBjb25zdCBvcHRpb25zID0geWFyZ3MuZ2V0T3B0aW9ucygpO1xuICAgICAgICBsZXQga2V5cyA9IFtdO1xuICAgICAgICBrZXlzID0ga2V5cy5jb25jYXQoT2JqZWN0LmtleXMoZGVzY3JpcHRpb25zKSk7XG4gICAgICAgIGtleXMgPSBrZXlzLmNvbmNhdChPYmplY3Qua2V5cyhkZW1hbmRlZE9wdGlvbnMpKTtcbiAgICAgICAga2V5cyA9IGtleXMuY29uY2F0KE9iamVjdC5rZXlzKGRlbWFuZGVkQ29tbWFuZHMpKTtcbiAgICAgICAga2V5cyA9IGtleXMuY29uY2F0KE9iamVjdC5rZXlzKG9wdGlvbnMuZGVmYXVsdCkpO1xuICAgICAgICBrZXlzID0ga2V5cy5maWx0ZXIoZmlsdGVySGlkZGVuT3B0aW9ucyk7XG4gICAgICAgIGtleXMgPSBPYmplY3Qua2V5cyhrZXlzLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgICAgIGlmIChrZXkgIT09ICdfJylcbiAgICAgICAgICAgICAgICBhY2Nba2V5XSA9IHRydWU7XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSkpO1xuICAgICAgICBjb25zdCB0aGVXcmFwID0gZ2V0V3JhcCgpO1xuICAgICAgICBjb25zdCB1aSA9IHNoaW0uY2xpdWkoe1xuICAgICAgICAgICAgd2lkdGg6IHRoZVdyYXAsXG4gICAgICAgICAgICB3cmFwOiAhIXRoZVdyYXAsXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXVzYWdlRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGlmICh1c2FnZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgdXNhZ2VzLmZvckVhY2godXNhZ2UgPT4ge1xuICAgICAgICAgICAgICAgICAgICB1aS5kaXYoYCR7dXNhZ2VbMF0ucmVwbGFjZSgvXFwkMC9nLCBiYXNlJDApfWApO1xuICAgICAgICAgICAgICAgICAgICBpZiAodXNhZ2VbMV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVpLmRpdih7IHRleHQ6IGAke3VzYWdlWzFdfWAsIHBhZGRpbmc6IFsxLCAwLCAwLCAwXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHVpLmRpdigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY29tbWFuZHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgbGV0IHUgPSBudWxsO1xuICAgICAgICAgICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8pIHtcbiAgICAgICAgICAgICAgICAgICAgdSA9IGAke2Jhc2UkMH0gPCR7X18oJ2NvbW1hbmQnKX0+XFxuYDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHUgPSBgJHtiYXNlJDB9IFske19fKCdjb21tYW5kJyl9XVxcbmA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHVpLmRpdihgJHt1fWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChjb21tYW5kcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHVpLmRpdihfXygnQ29tbWFuZHM6JykpO1xuICAgICAgICAgICAgY29uc3QgY29udGV4dCA9IHlhcmdzLmdldENvbnRleHQoKTtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudENvbW1hbmRzID0gY29udGV4dC5jb21tYW5kcy5sZW5ndGhcbiAgICAgICAgICAgICAgICA/IGAke2NvbnRleHQuY29tbWFuZHMuam9pbignICcpfSBgXG4gICAgICAgICAgICAgICAgOiAnJztcbiAgICAgICAgICAgIGlmICh5YXJncy5nZXRQYXJzZXJDb25maWd1cmF0aW9uKClbJ3NvcnQtY29tbWFuZHMnXSA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgICAgIGNvbW1hbmRzID0gY29tbWFuZHMuc29ydCgoYSwgYikgPT4gYVswXS5sb2NhbGVDb21wYXJlKGJbMF0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbW1hbmRzLmZvckVhY2goY29tbWFuZCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29tbWFuZFN0cmluZyA9IGAke2Jhc2UkMH0gJHtwYXJlbnRDb21tYW5kc30ke2NvbW1hbmRbMF0ucmVwbGFjZSgvXlxcJDAgPy8sICcnKX1gO1xuICAgICAgICAgICAgICAgIHVpLnNwYW4oe1xuICAgICAgICAgICAgICAgICAgICB0ZXh0OiBjb21tYW5kU3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMiwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBtYXhXaWR0aChjb21tYW5kcywgdGhlV3JhcCwgYCR7YmFzZSQwfSR7cGFyZW50Q29tbWFuZHN9YCkgKyA0LFxuICAgICAgICAgICAgICAgIH0sIHsgdGV4dDogY29tbWFuZFsxXSB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCBoaW50cyA9IFtdO1xuICAgICAgICAgICAgICAgIGlmIChjb21tYW5kWzJdKVxuICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnZGVmYXVsdCcpfV1gKTtcbiAgICAgICAgICAgICAgICBpZiAoY29tbWFuZFszXSAmJiBjb21tYW5kWzNdLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnYWxpYXNlczonKX0gJHtjb21tYW5kWzNdLmpvaW4oJywgJyl9XWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoY29tbWFuZFs0XSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGNvbW1hbmRbNF0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnZGVwcmVjYXRlZDogJXMnLCBjb21tYW5kWzRdKX1dYCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoaW50cy5wdXNoKGBbJHtfXygnZGVwcmVjYXRlZCcpfV1gKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoaGludHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHVpLmRpdih7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBoaW50cy5qb2luKCcgJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMCwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbjogJ3JpZ2h0JyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB1aS5kaXYoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHVpLmRpdigpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFsaWFzS2V5cyA9IChPYmplY3Qua2V5cyhvcHRpb25zLmFsaWFzKSB8fCBbXSkuY29uY2F0KE9iamVjdC5rZXlzKHlhcmdzLnBhcnNlZC5uZXdBbGlhc2VzKSB8fCBbXSk7XG4gICAgICAgIGtleXMgPSBrZXlzLmZpbHRlcihrZXkgPT4gIXlhcmdzLnBhcnNlZC5uZXdBbGlhc2VzW2tleV0gJiZcbiAgICAgICAgICAgIGFsaWFzS2V5cy5ldmVyeShhbGlhcyA9PiAob3B0aW9ucy5hbGlhc1thbGlhc10gfHwgW10pLmluZGV4T2Yoa2V5KSA9PT0gLTEpKTtcbiAgICAgICAgY29uc3QgZGVmYXVsdEdyb3VwID0gX18oJ09wdGlvbnM6Jyk7XG4gICAgICAgIGlmICghZ3JvdXBzW2RlZmF1bHRHcm91cF0pXG4gICAgICAgICAgICBncm91cHNbZGVmYXVsdEdyb3VwXSA9IFtdO1xuICAgICAgICBhZGRVbmdyb3VwZWRLZXlzKGtleXMsIG9wdGlvbnMuYWxpYXMsIGdyb3VwcywgZGVmYXVsdEdyb3VwKTtcbiAgICAgICAgY29uc3QgaXNMb25nU3dpdGNoID0gKHN3KSA9PiAvXi0tLy50ZXN0KGdldFRleHQoc3cpKTtcbiAgICAgICAgY29uc3QgZGlzcGxheWVkR3JvdXBzID0gT2JqZWN0LmtleXMoZ3JvdXBzKVxuICAgICAgICAgICAgLmZpbHRlcihncm91cE5hbWUgPT4gZ3JvdXBzW2dyb3VwTmFtZV0ubGVuZ3RoID4gMClcbiAgICAgICAgICAgIC5tYXAoZ3JvdXBOYW1lID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRLZXlzID0gZ3JvdXBzW2dyb3VwTmFtZV1cbiAgICAgICAgICAgICAgICAuZmlsdGVyKGZpbHRlckhpZGRlbk9wdGlvbnMpXG4gICAgICAgICAgICAgICAgLm1hcChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh+YWxpYXNLZXlzLmluZGV4T2Yoa2V5KSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGtleTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMCwgYWxpYXNLZXk7IChhbGlhc0tleSA9IGFsaWFzS2V5c1tpXSkgIT09IHVuZGVmaW5lZDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh+KG9wdGlvbnMuYWxpYXNbYWxpYXNLZXldIHx8IFtdKS5pbmRleE9mKGtleSkpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWxpYXNLZXk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBrZXk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiB7IGdyb3VwTmFtZSwgbm9ybWFsaXplZEtleXMgfTtcbiAgICAgICAgfSlcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgbm9ybWFsaXplZEtleXMgfSkgPT4gbm9ybWFsaXplZEtleXMubGVuZ3RoID4gMClcbiAgICAgICAgICAgIC5tYXAoKHsgZ3JvdXBOYW1lLCBub3JtYWxpemVkS2V5cyB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzd2l0Y2hlcyA9IG5vcm1hbGl6ZWRLZXlzLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgICAgICAgICBhY2Nba2V5XSA9IFtrZXldXG4gICAgICAgICAgICAgICAgICAgIC5jb25jYXQob3B0aW9ucy5hbGlhc1trZXldIHx8IFtdKVxuICAgICAgICAgICAgICAgICAgICAubWFwKHN3ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGdyb3VwTmFtZSA9PT0gc2VsZi5nZXRQb3NpdGlvbmFsR3JvdXBOYW1lKCkpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3c7XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgoL15bMC05XSQvLnRlc3Qoc3cpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyB+b3B0aW9ucy5ib29sZWFuLmluZGV4T2Yoa2V5KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICctJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICctLSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHN3Lmxlbmd0aCA+IDFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAnLS0nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy0nKSArIHN3KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIC5zb3J0KChzdzEsIHN3MikgPT4gaXNMb25nU3dpdGNoKHN3MSkgPT09IGlzTG9uZ1N3aXRjaChzdzIpXG4gICAgICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgICAgICA6IGlzTG9uZ1N3aXRjaChzdzEpXG4gICAgICAgICAgICAgICAgICAgICAgICA/IDFcbiAgICAgICAgICAgICAgICAgICAgICAgIDogLTEpXG4gICAgICAgICAgICAgICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgICB9LCB7fSk7XG4gICAgICAgICAgICByZXR1cm4geyBncm91cE5hbWUsIG5vcm1hbGl6ZWRLZXlzLCBzd2l0Y2hlcyB9O1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3Qgc2hvcnRTd2l0Y2hlc1VzZWQgPSBkaXNwbGF5ZWRHcm91cHNcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgZ3JvdXBOYW1lIH0pID0+IGdyb3VwTmFtZSAhPT0gc2VsZi5nZXRQb3NpdGlvbmFsR3JvdXBOYW1lKCkpXG4gICAgICAgICAgICAuc29tZSgoeyBub3JtYWxpemVkS2V5cywgc3dpdGNoZXMgfSkgPT4gIW5vcm1hbGl6ZWRLZXlzLmV2ZXJ5KGtleSA9PiBpc0xvbmdTd2l0Y2goc3dpdGNoZXNba2V5XSkpKTtcbiAgICAgICAgaWYgKHNob3J0U3dpdGNoZXNVc2VkKSB7XG4gICAgICAgICAgICBkaXNwbGF5ZWRHcm91cHNcbiAgICAgICAgICAgICAgICAuZmlsdGVyKCh7IGdyb3VwTmFtZSB9KSA9PiBncm91cE5hbWUgIT09IHNlbGYuZ2V0UG9zaXRpb25hbEdyb3VwTmFtZSgpKVxuICAgICAgICAgICAgICAgIC5mb3JFYWNoKCh7IG5vcm1hbGl6ZWRLZXlzLCBzd2l0Y2hlcyB9KSA9PiB7XG4gICAgICAgICAgICAgICAgbm9ybWFsaXplZEtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNMb25nU3dpdGNoKHN3aXRjaGVzW2tleV0pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2hlc1trZXldID0gYWRkSW5kZW50YXRpb24oc3dpdGNoZXNba2V5XSwgJy14LCAnLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGRpc3BsYXllZEdyb3Vwcy5mb3JFYWNoKCh7IGdyb3VwTmFtZSwgbm9ybWFsaXplZEtleXMsIHN3aXRjaGVzIH0pID0+IHtcbiAgICAgICAgICAgIHVpLmRpdihncm91cE5hbWUpO1xuICAgICAgICAgICAgbm9ybWFsaXplZEtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGtzd2l0Y2ggPSBzd2l0Y2hlc1trZXldO1xuICAgICAgICAgICAgICAgIGxldCBkZXNjID0gZGVzY3JpcHRpb25zW2tleV0gfHwgJyc7XG4gICAgICAgICAgICAgICAgbGV0IHR5cGUgPSBudWxsO1xuICAgICAgICAgICAgICAgIGlmICh+ZGVzYy5sYXN0SW5kZXhPZihkZWZlclkxOG5Mb29rdXBQcmVmaXgpKVxuICAgICAgICAgICAgICAgICAgICBkZXNjID0gX18oZGVzYy5zdWJzdHJpbmcoZGVmZXJZMThuTG9va3VwUHJlZml4Lmxlbmd0aCkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ib29sZWFuLmluZGV4T2Yoa2V5KSlcbiAgICAgICAgICAgICAgICAgICAgdHlwZSA9IGBbJHtfXygnYm9vbGVhbicpfV1gO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5jb3VudC5pbmRleE9mKGtleSkpXG4gICAgICAgICAgICAgICAgICAgIHR5cGUgPSBgWyR7X18oJ2NvdW50Jyl9XWA7XG4gICAgICAgICAgICAgICAgaWYgKH5vcHRpb25zLnN0cmluZy5pbmRleE9mKGtleSkpXG4gICAgICAgICAgICAgICAgICAgIHR5cGUgPSBgWyR7X18oJ3N0cmluZycpfV1gO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ub3JtYWxpemUuaW5kZXhPZihrZXkpKVxuICAgICAgICAgICAgICAgICAgICB0eXBlID0gYFske19fKCdzdHJpbmcnKX1dYDtcbiAgICAgICAgICAgICAgICBpZiAofm9wdGlvbnMuYXJyYXkuaW5kZXhPZihrZXkpKVxuICAgICAgICAgICAgICAgICAgICB0eXBlID0gYFske19fKCdhcnJheScpfV1gO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5udW1iZXIuaW5kZXhPZihrZXkpKVxuICAgICAgICAgICAgICAgICAgICB0eXBlID0gYFske19fKCdudW1iZXInKX1dYDtcbiAgICAgICAgICAgICAgICBjb25zdCBkZXByZWNhdGVkRXh0cmEgPSAoZGVwcmVjYXRlZCkgPT4gdHlwZW9mIGRlcHJlY2F0ZWQgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICAgICAgICAgID8gYFske19fKCdkZXByZWNhdGVkOiAlcycsIGRlcHJlY2F0ZWQpfV1gXG4gICAgICAgICAgICAgICAgICAgIDogYFske19fKCdkZXByZWNhdGVkJyl9XWA7XG4gICAgICAgICAgICAgICAgY29uc3QgZXh0cmEgPSBbXG4gICAgICAgICAgICAgICAgICAgIGtleSBpbiBkZXByZWNhdGVkT3B0aW9uc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBkZXByZWNhdGVkRXh0cmEoZGVwcmVjYXRlZE9wdGlvbnNba2V5XSlcbiAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgICAgICAgICAga2V5IGluIGRlbWFuZGVkT3B0aW9ucyA/IGBbJHtfXygncmVxdWlyZWQnKX1dYCA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuY2hvaWNlcyAmJiBvcHRpb25zLmNob2ljZXNba2V5XVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBgWyR7X18oJ2Nob2ljZXM6Jyl9ICR7c2VsZi5zdHJpbmdpZmllZFZhbHVlcyhvcHRpb25zLmNob2ljZXNba2V5XSl9XWBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdFN0cmluZyhvcHRpb25zLmRlZmF1bHRba2V5XSwgb3B0aW9ucy5kZWZhdWx0RGVzY3JpcHRpb25ba2V5XSksXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgICAgICAgICAgIC5qb2luKCcgJyk7XG4gICAgICAgICAgICAgICAgdWkuc3Bhbih7XG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IGdldFRleHQoa3N3aXRjaCksXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IFswLCAyLCAwLCAyICsgZ2V0SW5kZW50YXRpb24oa3N3aXRjaCldLFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWF4V2lkdGgoc3dpdGNoZXMsIHRoZVdyYXApICsgNCxcbiAgICAgICAgICAgICAgICB9LCBkZXNjKTtcbiAgICAgICAgICAgICAgICBpZiAoZXh0cmEpXG4gICAgICAgICAgICAgICAgICAgIHVpLmRpdih7IHRleHQ6IGV4dHJhLCBwYWRkaW5nOiBbMCwgMCwgMCwgMl0sIGFsaWduOiAncmlnaHQnIH0pO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdWkuZGl2KCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHVpLmRpdigpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGV4YW1wbGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdWkuZGl2KF9fKCdFeGFtcGxlczonKSk7XG4gICAgICAgICAgICBleGFtcGxlcy5mb3JFYWNoKGV4YW1wbGUgPT4ge1xuICAgICAgICAgICAgICAgIGV4YW1wbGVbMF0gPSBleGFtcGxlWzBdLnJlcGxhY2UoL1xcJDAvZywgYmFzZSQwKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZXhhbXBsZXMuZm9yRWFjaChleGFtcGxlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXhhbXBsZVsxXSA9PT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgdWkuZGl2KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IGV4YW1wbGVbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMiwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdWkuZGl2KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IGV4YW1wbGVbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBbMCwgMiwgMCwgMl0sXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogbWF4V2lkdGgoZXhhbXBsZXMsIHRoZVdyYXApICsgNCxcbiAgICAgICAgICAgICAgICAgICAgfSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogZXhhbXBsZVsxXSxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB1aS5kaXYoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXBpbG9ncy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBlID0gZXBpbG9nc1xuICAgICAgICAgICAgICAgIC5tYXAoZXBpbG9nID0+IGVwaWxvZy5yZXBsYWNlKC9cXCQwL2csIGJhc2UkMCkpXG4gICAgICAgICAgICAgICAgLmpvaW4oJ1xcbicpO1xuICAgICAgICAgICAgdWkuZGl2KGAke2V9XFxuYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVpLnRvU3RyaW5nKCkucmVwbGFjZSgvXFxzKiQvLCAnJyk7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBtYXhXaWR0aCh0YWJsZSwgdGhlV3JhcCwgbW9kaWZpZXIpIHtcbiAgICAgICAgbGV0IHdpZHRoID0gMDtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRhYmxlKSkge1xuICAgICAgICAgICAgdGFibGUgPSBPYmplY3QudmFsdWVzKHRhYmxlKS5tYXAodiA9PiBbdl0pO1xuICAgICAgICB9XG4gICAgICAgIHRhYmxlLmZvckVhY2godiA9PiB7XG4gICAgICAgICAgICB3aWR0aCA9IE1hdGgubWF4KHNoaW0uc3RyaW5nV2lkdGgobW9kaWZpZXIgPyBgJHttb2RpZmllcn0gJHtnZXRUZXh0KHZbMF0pfWAgOiBnZXRUZXh0KHZbMF0pKSArIGdldEluZGVudGF0aW9uKHZbMF0pLCB3aWR0aCk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhlV3JhcClcbiAgICAgICAgICAgIHdpZHRoID0gTWF0aC5taW4od2lkdGgsIHBhcnNlSW50KCh0aGVXcmFwICogMC41KS50b1N0cmluZygpLCAxMCkpO1xuICAgICAgICByZXR1cm4gd2lkdGg7XG4gICAgfVxuICAgIGZ1bmN0aW9uIG5vcm1hbGl6ZUFsaWFzZXMoKSB7XG4gICAgICAgIGNvbnN0IGRlbWFuZGVkT3B0aW9ucyA9IHlhcmdzLmdldERlbWFuZGVkT3B0aW9ucygpO1xuICAgICAgICBjb25zdCBvcHRpb25zID0geWFyZ3MuZ2V0T3B0aW9ucygpO1xuICAgICAgICAoT2JqZWN0LmtleXMob3B0aW9ucy5hbGlhcykgfHwgW10pLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIG9wdGlvbnMuYWxpYXNba2V5XS5mb3JFYWNoKGFsaWFzID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZGVzY3JpcHRpb25zW2FsaWFzXSlcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5kZXNjcmliZShrZXksIGRlc2NyaXB0aW9uc1thbGlhc10pO1xuICAgICAgICAgICAgICAgIGlmIChhbGlhcyBpbiBkZW1hbmRlZE9wdGlvbnMpXG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLmRlbWFuZE9wdGlvbihrZXksIGRlbWFuZGVkT3B0aW9uc1thbGlhc10pO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ib29sZWFuLmluZGV4T2YoYWxpYXMpKVxuICAgICAgICAgICAgICAgICAgICB5YXJncy5ib29sZWFuKGtleSk7XG4gICAgICAgICAgICAgICAgaWYgKH5vcHRpb25zLmNvdW50LmluZGV4T2YoYWxpYXMpKVxuICAgICAgICAgICAgICAgICAgICB5YXJncy5jb3VudChrZXkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5zdHJpbmcuaW5kZXhPZihhbGlhcykpXG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLnN0cmluZyhrZXkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5ub3JtYWxpemUuaW5kZXhPZihhbGlhcykpXG4gICAgICAgICAgICAgICAgICAgIHlhcmdzLm5vcm1hbGl6ZShrZXkpO1xuICAgICAgICAgICAgICAgIGlmICh+b3B0aW9ucy5hcnJheS5pbmRleE9mKGFsaWFzKSlcbiAgICAgICAgICAgICAgICAgICAgeWFyZ3MuYXJyYXkoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAofm9wdGlvbnMubnVtYmVyLmluZGV4T2YoYWxpYXMpKVxuICAgICAgICAgICAgICAgICAgICB5YXJncy5udW1iZXIoa2V5KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgbGV0IGNhY2hlZEhlbHBNZXNzYWdlO1xuICAgIHNlbGYuY2FjaGVIZWxwTWVzc2FnZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY2FjaGVkSGVscE1lc3NhZ2UgPSB0aGlzLmhlbHAoKTtcbiAgICB9O1xuICAgIHNlbGYuY2xlYXJDYWNoZWRIZWxwTWVzc2FnZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY2FjaGVkSGVscE1lc3NhZ2UgPSB1bmRlZmluZWQ7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBhZGRVbmdyb3VwZWRLZXlzKGtleXMsIGFsaWFzZXMsIGdyb3VwcywgZGVmYXVsdEdyb3VwKSB7XG4gICAgICAgIGxldCBncm91cGVkS2V5cyA9IFtdO1xuICAgICAgICBsZXQgdG9DaGVjayA9IG51bGw7XG4gICAgICAgIE9iamVjdC5rZXlzKGdyb3VwcykuZm9yRWFjaChncm91cCA9PiB7XG4gICAgICAgICAgICBncm91cGVkS2V5cyA9IGdyb3VwZWRLZXlzLmNvbmNhdChncm91cHNbZ3JvdXBdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgdG9DaGVjayA9IFtrZXldLmNvbmNhdChhbGlhc2VzW2tleV0pO1xuICAgICAgICAgICAgaWYgKCF0b0NoZWNrLnNvbWUoayA9PiBncm91cGVkS2V5cy5pbmRleE9mKGspICE9PSAtMSkpIHtcbiAgICAgICAgICAgICAgICBncm91cHNbZGVmYXVsdEdyb3VwXS5wdXNoKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gZ3JvdXBlZEtleXM7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGZpbHRlckhpZGRlbk9wdGlvbnMoa2V5KSB7XG4gICAgICAgIHJldHVybiAoeWFyZ3MuZ2V0T3B0aW9ucygpLmhpZGRlbk9wdGlvbnMuaW5kZXhPZihrZXkpIDwgMCB8fFxuICAgICAgICAgICAgeWFyZ3MucGFyc2VkLmFyZ3ZbeWFyZ3MuZ2V0T3B0aW9ucygpLnNob3dIaWRkZW5PcHRdKTtcbiAgICB9XG4gICAgc2VsZi5zaG93SGVscCA9IChsZXZlbCkgPT4ge1xuICAgICAgICBjb25zdCBsb2dnZXIgPSB5YXJncy5fZ2V0TG9nZ2VySW5zdGFuY2UoKTtcbiAgICAgICAgaWYgKCFsZXZlbClcbiAgICAgICAgICAgIGxldmVsID0gJ2Vycm9yJztcbiAgICAgICAgY29uc3QgZW1pdCA9IHR5cGVvZiBsZXZlbCA9PT0gJ2Z1bmN0aW9uJyA/IGxldmVsIDogbG9nZ2VyW2xldmVsXTtcbiAgICAgICAgZW1pdChzZWxmLmhlbHAoKSk7XG4gICAgfTtcbiAgICBzZWxmLmZ1bmN0aW9uRGVzY3JpcHRpb24gPSBmbiA9PiB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gZm4ubmFtZVxuICAgICAgICAgICAgPyBzaGltLlBhcnNlci5kZWNhbWVsaXplKGZuLm5hbWUsICctJylcbiAgICAgICAgICAgIDogX18oJ2dlbmVyYXRlZC12YWx1ZScpO1xuICAgICAgICByZXR1cm4gWycoJywgZGVzY3JpcHRpb24sICcpJ10uam9pbignJyk7XG4gICAgfTtcbiAgICBzZWxmLnN0cmluZ2lmaWVkVmFsdWVzID0gZnVuY3Rpb24gc3RyaW5naWZpZWRWYWx1ZXModmFsdWVzLCBzZXBhcmF0b3IpIHtcbiAgICAgICAgbGV0IHN0cmluZyA9ICcnO1xuICAgICAgICBjb25zdCBzZXAgPSBzZXBhcmF0b3IgfHwgJywgJztcbiAgICAgICAgY29uc3QgYXJyYXkgPSBbXS5jb25jYXQodmFsdWVzKTtcbiAgICAgICAgaWYgKCF2YWx1ZXMgfHwgIWFycmF5Lmxlbmd0aClcbiAgICAgICAgICAgIHJldHVybiBzdHJpbmc7XG4gICAgICAgIGFycmF5LmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICAgICAgaWYgKHN0cmluZy5sZW5ndGgpXG4gICAgICAgICAgICAgICAgc3RyaW5nICs9IHNlcDtcbiAgICAgICAgICAgIHN0cmluZyArPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gc3RyaW5nO1xuICAgIH07XG4gICAgZnVuY3Rpb24gZGVmYXVsdFN0cmluZyh2YWx1ZSwgZGVmYXVsdERlc2NyaXB0aW9uKSB7XG4gICAgICAgIGxldCBzdHJpbmcgPSBgWyR7X18oJ2RlZmF1bHQ6Jyl9IGA7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkICYmICFkZWZhdWx0RGVzY3JpcHRpb24pXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgaWYgKGRlZmF1bHREZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgc3RyaW5nICs9IGRlZmF1bHREZXNjcmlwdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHN3aXRjaCAodHlwZW9mIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgICAgICAgICAgICAgc3RyaW5nICs9IGBcIiR7dmFsdWV9XCJgO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdvYmplY3QnOlxuICAgICAgICAgICAgICAgICAgICBzdHJpbmcgKz0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBzdHJpbmcgKz0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGAke3N0cmluZ31dYDtcbiAgICB9XG4gICAgZnVuY3Rpb24gd2luZG93V2lkdGgoKSB7XG4gICAgICAgIGNvbnN0IG1heFdpZHRoID0gODA7XG4gICAgICAgIGlmIChzaGltLnByb2Nlc3Muc3RkQ29sdW1ucykge1xuICAgICAgICAgICAgcmV0dXJuIE1hdGgubWluKG1heFdpZHRoLCBzaGltLnByb2Nlc3Muc3RkQ29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbWF4V2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbGV0IHZlcnNpb24gPSBudWxsO1xuICAgIHNlbGYudmVyc2lvbiA9IHZlciA9PiB7XG4gICAgICAgIHZlcnNpb24gPSB2ZXI7XG4gICAgfTtcbiAgICBzZWxmLnNob3dWZXJzaW9uID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBsb2dnZXIgPSB5YXJncy5fZ2V0TG9nZ2VySW5zdGFuY2UoKTtcbiAgICAgICAgbG9nZ2VyLmxvZyh2ZXJzaW9uKTtcbiAgICB9O1xuICAgIHNlbGYucmVzZXQgPSBmdW5jdGlvbiByZXNldChsb2NhbExvb2t1cCkge1xuICAgICAgICBmYWlsTWVzc2FnZSA9IG51bGw7XG4gICAgICAgIGZhaWx1cmVPdXRwdXQgPSBmYWxzZTtcbiAgICAgICAgdXNhZ2VzID0gW107XG4gICAgICAgIHVzYWdlRGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgZXBpbG9ncyA9IFtdO1xuICAgICAgICBleGFtcGxlcyA9IFtdO1xuICAgICAgICBjb21tYW5kcyA9IFtdO1xuICAgICAgICBkZXNjcmlwdGlvbnMgPSBvYmpGaWx0ZXIoZGVzY3JpcHRpb25zLCBrID0+ICFsb2NhbExvb2t1cFtrXSk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgY29uc3QgZnJvemVucyA9IFtdO1xuICAgIHNlbGYuZnJlZXplID0gZnVuY3Rpb24gZnJlZXplKCkge1xuICAgICAgICBmcm96ZW5zLnB1c2goe1xuICAgICAgICAgICAgZmFpbE1lc3NhZ2UsXG4gICAgICAgICAgICBmYWlsdXJlT3V0cHV0LFxuICAgICAgICAgICAgdXNhZ2VzLFxuICAgICAgICAgICAgdXNhZ2VEaXNhYmxlZCxcbiAgICAgICAgICAgIGVwaWxvZ3MsXG4gICAgICAgICAgICBleGFtcGxlcyxcbiAgICAgICAgICAgIGNvbW1hbmRzLFxuICAgICAgICAgICAgZGVzY3JpcHRpb25zLFxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHNlbGYudW5mcmVlemUgPSBmdW5jdGlvbiB1bmZyZWV6ZSgpIHtcbiAgICAgICAgY29uc3QgZnJvemVuID0gZnJvemVucy5wb3AoKTtcbiAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwoZnJvemVuLCB1bmRlZmluZWQsIHNoaW0pO1xuICAgICAgICAoe1xuICAgICAgICAgICAgZmFpbE1lc3NhZ2UsXG4gICAgICAgICAgICBmYWlsdXJlT3V0cHV0LFxuICAgICAgICAgICAgdXNhZ2VzLFxuICAgICAgICAgICAgdXNhZ2VEaXNhYmxlZCxcbiAgICAgICAgICAgIGVwaWxvZ3MsXG4gICAgICAgICAgICBleGFtcGxlcyxcbiAgICAgICAgICAgIGNvbW1hbmRzLFxuICAgICAgICAgICAgZGVzY3JpcHRpb25zLFxuICAgICAgICB9ID0gZnJvemVuKTtcbiAgICB9O1xuICAgIHJldHVybiBzZWxmO1xufVxuZnVuY3Rpb24gaXNJbmRlbnRlZFRleHQodGV4dCkge1xuICAgIHJldHVybiB0eXBlb2YgdGV4dCA9PT0gJ29iamVjdCc7XG59XG5mdW5jdGlvbiBhZGRJbmRlbnRhdGlvbih0ZXh0LCBpbmRlbnQpIHtcbiAgICByZXR1cm4gaXNJbmRlbnRlZFRleHQodGV4dClcbiAgICAgICAgPyB7IHRleHQ6IHRleHQudGV4dCwgaW5kZW50YXRpb246IHRleHQuaW5kZW50YXRpb24gKyBpbmRlbnQgfVxuICAgICAgICA6IHsgdGV4dCwgaW5kZW50YXRpb246IGluZGVudCB9O1xufVxuZnVuY3Rpb24gZ2V0SW5kZW50YXRpb24odGV4dCkge1xuICAgIHJldHVybiBpc0luZGVudGVkVGV4dCh0ZXh0KSA/IHRleHQuaW5kZW50YXRpb24gOiAwO1xufVxuZnVuY3Rpb24gZ2V0VGV4dCh0ZXh0KSB7XG4gICAgcmV0dXJuIGlzSW5kZW50ZWRUZXh0KHRleHQpID8gdGV4dC50ZXh0IDogdGV4dDtcbn1cblxuY29uc3QgY29tcGxldGlvblNoVGVtcGxhdGUgPSBgIyMjLWJlZ2luLXt7YXBwX25hbWV9fS1jb21wbGV0aW9ucy0jIyNcbiNcbiMgeWFyZ3MgY29tbWFuZCBjb21wbGV0aW9uIHNjcmlwdFxuI1xuIyBJbnN0YWxsYXRpb246IHt7YXBwX3BhdGh9fSB7e2NvbXBsZXRpb25fY29tbWFuZH19ID4+IH4vLmJhc2hyY1xuIyAgICBvciB7e2FwcF9wYXRofX0ge3tjb21wbGV0aW9uX2NvbW1hbmR9fSA+PiB+Ly5iYXNoX3Byb2ZpbGUgb24gT1NYLlxuI1xuX3lhcmdzX2NvbXBsZXRpb25zKClcbntcbiAgICBsb2NhbCBjdXJfd29yZCBhcmdzIHR5cGVfbGlzdFxuXG4gICAgY3VyX3dvcmQ9XCJcXCR7Q09NUF9XT1JEU1tDT01QX0NXT1JEXX1cIlxuICAgIGFyZ3M9KFwiXFwke0NPTVBfV09SRFNbQF19XCIpXG5cbiAgICAjIGFzayB5YXJncyB0byBnZW5lcmF0ZSBjb21wbGV0aW9ucy5cbiAgICB0eXBlX2xpc3Q9JCh7e2FwcF9wYXRofX0gLS1nZXQteWFyZ3MtY29tcGxldGlvbnMgXCJcXCR7YXJnc1tAXX1cIilcblxuICAgIENPTVBSRVBMWT0oICQoY29tcGdlbiAtVyBcIlxcJHt0eXBlX2xpc3R9XCIgLS0gXFwke2N1cl93b3JkfSkgKVxuXG4gICAgIyBpZiBubyBtYXRjaCB3YXMgZm91bmQsIGZhbGwgYmFjayB0byBmaWxlbmFtZSBjb21wbGV0aW9uXG4gICAgaWYgWyBcXCR7I0NPTVBSRVBMWVtAXX0gLWVxIDAgXTsgdGhlblxuICAgICAgQ09NUFJFUExZPSgpXG4gICAgZmlcblxuICAgIHJldHVybiAwXG59XG5jb21wbGV0ZSAtbyBkZWZhdWx0IC1GIF95YXJnc19jb21wbGV0aW9ucyB7e2FwcF9uYW1lfX1cbiMjIy1lbmQte3thcHBfbmFtZX19LWNvbXBsZXRpb25zLSMjI1xuYDtcbmNvbnN0IGNvbXBsZXRpb25ac2hUZW1wbGF0ZSA9IGAjIyMtYmVnaW4te3thcHBfbmFtZX19LWNvbXBsZXRpb25zLSMjI1xuI1xuIyB5YXJncyBjb21tYW5kIGNvbXBsZXRpb24gc2NyaXB0XG4jXG4jIEluc3RhbGxhdGlvbjoge3thcHBfcGF0aH19IHt7Y29tcGxldGlvbl9jb21tYW5kfX0gPj4gfi8uenNocmNcbiMgICAgb3Ige3thcHBfcGF0aH19IHt7Y29tcGxldGlvbl9jb21tYW5kfX0gPj4gfi8uenNoX3Byb2ZpbGUgb24gT1NYLlxuI1xuX3t7YXBwX25hbWV9fV95YXJnc19jb21wbGV0aW9ucygpXG57XG4gIGxvY2FsIHJlcGx5XG4gIGxvY2FsIHNpPSRJRlNcbiAgSUZTPSQnXFxuJyByZXBseT0oJChDT01QX0NXT1JEPVwiJCgoQ1VSUkVOVC0xKSlcIiBDT01QX0xJTkU9XCIkQlVGRkVSXCIgQ09NUF9QT0lOVD1cIiRDVVJTT1JcIiB7e2FwcF9wYXRofX0gLS1nZXQteWFyZ3MtY29tcGxldGlvbnMgXCJcXCR7d29yZHNbQF19XCIpKVxuICBJRlM9JHNpXG4gIF9kZXNjcmliZSAndmFsdWVzJyByZXBseVxufVxuY29tcGRlZiBfe3thcHBfbmFtZX19X3lhcmdzX2NvbXBsZXRpb25zIHt7YXBwX25hbWV9fVxuIyMjLWVuZC17e2FwcF9uYW1lfX0tY29tcGxldGlvbnMtIyMjXG5gO1xuXG5mdW5jdGlvbiBjb21wbGV0aW9uKHlhcmdzLCB1c2FnZSwgY29tbWFuZCwgc2hpbSkge1xuICAgIGNvbnN0IHNlbGYgPSB7XG4gICAgICAgIGNvbXBsZXRpb25LZXk6ICdnZXQteWFyZ3MtY29tcGxldGlvbnMnLFxuICAgIH07XG4gICAgbGV0IGFsaWFzZXM7XG4gICAgc2VsZi5zZXRQYXJzZWQgPSBmdW5jdGlvbiBzZXRQYXJzZWQocGFyc2VkKSB7XG4gICAgICAgIGFsaWFzZXMgPSBwYXJzZWQuYWxpYXNlcztcbiAgICB9O1xuICAgIGNvbnN0IHpzaFNoZWxsID0gKHNoaW0uZ2V0RW52KCdTSEVMTCcpICYmIHNoaW0uZ2V0RW52KCdTSEVMTCcpLmluZGV4T2YoJ3pzaCcpICE9PSAtMSkgfHxcbiAgICAgICAgKHNoaW0uZ2V0RW52KCdaU0hfTkFNRScpICYmIHNoaW0uZ2V0RW52KCdaU0hfTkFNRScpLmluZGV4T2YoJ3pzaCcpICE9PSAtMSk7XG4gICAgc2VsZi5nZXRDb21wbGV0aW9uID0gZnVuY3Rpb24gZ2V0Q29tcGxldGlvbihhcmdzLCBkb25lKSB7XG4gICAgICAgIGNvbnN0IGNvbXBsZXRpb25zID0gW107XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSBhcmdzLmxlbmd0aCA/IGFyZ3NbYXJncy5sZW5ndGggLSAxXSA6ICcnO1xuICAgICAgICBjb25zdCBhcmd2ID0geWFyZ3MucGFyc2UoYXJncywgdHJ1ZSk7XG4gICAgICAgIGNvbnN0IHBhcmVudENvbW1hbmRzID0geWFyZ3MuZ2V0Q29udGV4dCgpLmNvbW1hbmRzO1xuICAgICAgICBmdW5jdGlvbiBydW5Db21wbGV0aW9uRnVuY3Rpb24oYXJndikge1xuICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwoY29tcGxldGlvbkZ1bmN0aW9uLCBudWxsLCBzaGltKTtcbiAgICAgICAgICAgIGlmIChpc1N5bmNDb21wbGV0aW9uRnVuY3Rpb24oY29tcGxldGlvbkZ1bmN0aW9uKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGNvbXBsZXRpb25GdW5jdGlvbihjdXJyZW50LCBhcmd2KTtcbiAgICAgICAgICAgICAgICBpZiAoaXNQcm9taXNlKHJlc3VsdCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4obGlzdCA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzaGltLnByb2Nlc3MubmV4dFRpY2soKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUobGlzdCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaChlcnIgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2hpbS5wcm9jZXNzLm5leHRUaWNrKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBkb25lKHJlc3VsdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY29tcGxldGlvbkZ1bmN0aW9uKGN1cnJlbnQsIGFyZ3YsIGNvbXBsZXRpb25zID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZG9uZShjb21wbGV0aW9ucyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbXBsZXRpb25GdW5jdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGlzUHJvbWlzZShhcmd2KVxuICAgICAgICAgICAgICAgID8gYXJndi50aGVuKHJ1bkNvbXBsZXRpb25GdW5jdGlvbilcbiAgICAgICAgICAgICAgICA6IHJ1bkNvbXBsZXRpb25GdW5jdGlvbihhcmd2KTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBoYW5kbGVycyA9IGNvbW1hbmQuZ2V0Q29tbWFuZEhhbmRsZXJzKCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBpaSA9IGFyZ3MubGVuZ3RoOyBpIDwgaWk7ICsraSkge1xuICAgICAgICAgICAgaWYgKGhhbmRsZXJzW2FyZ3NbaV1dICYmIGhhbmRsZXJzW2FyZ3NbaV1dLmJ1aWxkZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBidWlsZGVyID0gaGFuZGxlcnNbYXJnc1tpXV0uYnVpbGRlcjtcbiAgICAgICAgICAgICAgICBpZiAoaXNDb21tYW5kQnVpbGRlckNhbGxiYWNrKGJ1aWxkZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHkgPSB5YXJncy5yZXNldCgpO1xuICAgICAgICAgICAgICAgICAgICBidWlsZGVyKHkpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4geS5hcmd2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWN1cnJlbnQubWF0Y2goL14tLykgJiZcbiAgICAgICAgICAgIHBhcmVudENvbW1hbmRzW3BhcmVudENvbW1hbmRzLmxlbmd0aCAtIDFdICE9PSBjdXJyZW50KSB7XG4gICAgICAgICAgICB1c2FnZS5nZXRDb21tYW5kcygpLmZvckVhY2godXNhZ2VDb21tYW5kID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb21tYW5kTmFtZSA9IHBhcnNlQ29tbWFuZCh1c2FnZUNvbW1hbmRbMF0pLmNtZDtcbiAgICAgICAgICAgICAgICBpZiAoYXJncy5pbmRleE9mKGNvbW1hbmROYW1lKSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF6c2hTaGVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGlvbnMucHVzaChjb21tYW5kTmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkZXNjID0gdXNhZ2VDb21tYW5kWzFdIHx8ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29tcGxldGlvbnMucHVzaChjb21tYW5kTmFtZS5yZXBsYWNlKC86L2csICdcXFxcOicpICsgJzonICsgZGVzYyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY3VycmVudC5tYXRjaCgvXi0vKSB8fCAoY3VycmVudCA9PT0gJycgJiYgY29tcGxldGlvbnMubGVuZ3RoID09PSAwKSkge1xuICAgICAgICAgICAgY29uc3QgZGVzY3MgPSB1c2FnZS5nZXREZXNjcmlwdGlvbnMoKTtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB5YXJncy5nZXRPcHRpb25zKCk7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhvcHRpb25zLmtleSkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5lZ2FibGUgPSAhIW9wdGlvbnMuY29uZmlndXJhdGlvblsnYm9vbGVhbi1uZWdhdGlvbiddICYmXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuYm9vbGVhbi5pbmNsdWRlcyhrZXkpO1xuICAgICAgICAgICAgICAgIGxldCBrZXlBbmRBbGlhc2VzID0gW2tleV0uY29uY2F0KGFsaWFzZXNba2V5XSB8fCBbXSk7XG4gICAgICAgICAgICAgICAgaWYgKG5lZ2FibGUpXG4gICAgICAgICAgICAgICAgICAgIGtleUFuZEFsaWFzZXMgPSBrZXlBbmRBbGlhc2VzLmNvbmNhdChrZXlBbmRBbGlhc2VzLm1hcChrZXkgPT4gYG5vLSR7a2V5fWApKTtcbiAgICAgICAgICAgICAgICBmdW5jdGlvbiBjb21wbGV0ZU9wdGlvbktleShrZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgbm90SW5BcmdzID0ga2V5QW5kQWxpYXNlcy5ldmVyeSh2YWwgPT4gYXJncy5pbmRleE9mKGAtLSR7dmFsfWApID09PSAtMSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChub3RJbkFyZ3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0c0J5VHdvRGFzaGVzID0gKHMpID0+IC9eLS0vLnRlc3Qocyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1Nob3J0T3B0aW9uID0gKHMpID0+IC9eW14wLTldJC8udGVzdChzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRhc2hlcyA9ICFzdGFydHNCeVR3b0Rhc2hlcyhjdXJyZW50KSAmJiBpc1Nob3J0T3B0aW9uKGtleSkgPyAnLScgOiAnLS0nO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF6c2hTaGVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRpb25zLnB1c2goZGFzaGVzICsga2V5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRlc2MgPSBkZXNjc1trZXldIHx8ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBsZXRpb25zLnB1c2goZGFzaGVzICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCR7a2V5LnJlcGxhY2UoLzovZywgJ1xcXFw6Jyl9OiR7ZGVzYy5yZXBsYWNlKCdfX3lhcmdzU3RyaW5nX186JywgJycpfWApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbXBsZXRlT3B0aW9uS2V5KGtleSk7XG4gICAgICAgICAgICAgICAgaWYgKG5lZ2FibGUgJiYgISFvcHRpb25zLmRlZmF1bHRba2V5XSlcbiAgICAgICAgICAgICAgICAgICAgY29tcGxldGVPcHRpb25LZXkoYG5vLSR7a2V5fWApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZG9uZShjb21wbGV0aW9ucyk7XG4gICAgfTtcbiAgICBzZWxmLmdlbmVyYXRlQ29tcGxldGlvblNjcmlwdCA9IGZ1bmN0aW9uIGdlbmVyYXRlQ29tcGxldGlvblNjcmlwdCgkMCwgY21kKSB7XG4gICAgICAgIGxldCBzY3JpcHQgPSB6c2hTaGVsbFxuICAgICAgICAgICAgPyBjb21wbGV0aW9uWnNoVGVtcGxhdGVcbiAgICAgICAgICAgIDogY29tcGxldGlvblNoVGVtcGxhdGU7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBzaGltLnBhdGguYmFzZW5hbWUoJDApO1xuICAgICAgICBpZiAoJDAubWF0Y2goL1xcLmpzJC8pKVxuICAgICAgICAgICAgJDAgPSBgLi8keyQwfWA7XG4gICAgICAgIHNjcmlwdCA9IHNjcmlwdC5yZXBsYWNlKC97e2FwcF9uYW1lfX0vZywgbmFtZSk7XG4gICAgICAgIHNjcmlwdCA9IHNjcmlwdC5yZXBsYWNlKC97e2NvbXBsZXRpb25fY29tbWFuZH19L2csIGNtZCk7XG4gICAgICAgIHJldHVybiBzY3JpcHQucmVwbGFjZSgve3thcHBfcGF0aH19L2csICQwKTtcbiAgICB9O1xuICAgIGxldCBjb21wbGV0aW9uRnVuY3Rpb24gPSBudWxsO1xuICAgIHNlbGYucmVnaXN0ZXJGdW5jdGlvbiA9IGZuID0+IHtcbiAgICAgICAgY29tcGxldGlvbkZ1bmN0aW9uID0gZm47XG4gICAgfTtcbiAgICByZXR1cm4gc2VsZjtcbn1cbmZ1bmN0aW9uIGlzU3luY0NvbXBsZXRpb25GdW5jdGlvbihjb21wbGV0aW9uRnVuY3Rpb24pIHtcbiAgICByZXR1cm4gY29tcGxldGlvbkZ1bmN0aW9uLmxlbmd0aCA8IDM7XG59XG5cbmZ1bmN0aW9uIGxldmVuc2h0ZWluKGEsIGIpIHtcbiAgICBpZiAoYS5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiBiLmxlbmd0aDtcbiAgICBpZiAoYi5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiBhLmxlbmd0aDtcbiAgICBjb25zdCBtYXRyaXggPSBbXTtcbiAgICBsZXQgaTtcbiAgICBmb3IgKGkgPSAwOyBpIDw9IGIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbWF0cml4W2ldID0gW2ldO1xuICAgIH1cbiAgICBsZXQgajtcbiAgICBmb3IgKGogPSAwOyBqIDw9IGEubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgbWF0cml4WzBdW2pdID0gajtcbiAgICB9XG4gICAgZm9yIChpID0gMTsgaSA8PSBiLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGZvciAoaiA9IDE7IGogPD0gYS5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgaWYgKGIuY2hhckF0KGkgLSAxKSA9PT0gYS5jaGFyQXQoaiAtIDEpKSB7XG4gICAgICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gbWF0cml4W2kgLSAxXVtqIC0gMV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBNYXRoLm1pbihtYXRyaXhbaSAtIDFdW2ogLSAxXSArIDEsIE1hdGgubWluKG1hdHJpeFtpXVtqIC0gMV0gKyAxLCBtYXRyaXhbaSAtIDFdW2pdICsgMSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXhbYi5sZW5ndGhdW2EubGVuZ3RoXTtcbn1cblxuY29uc3Qgc3BlY2lhbEtleXMgPSBbJyQwJywgJy0tJywgJ18nXTtcbmZ1bmN0aW9uIHZhbGlkYXRpb24oeWFyZ3MsIHVzYWdlLCB5MThuLCBzaGltKSB7XG4gICAgY29uc3QgX18gPSB5MThuLl9fO1xuICAgIGNvbnN0IF9fbiA9IHkxOG4uX19uO1xuICAgIGNvbnN0IHNlbGYgPSB7fTtcbiAgICBzZWxmLm5vbk9wdGlvbkNvdW50ID0gZnVuY3Rpb24gbm9uT3B0aW9uQ291bnQoYXJndikge1xuICAgICAgICBjb25zdCBkZW1hbmRlZENvbW1hbmRzID0geWFyZ3MuZ2V0RGVtYW5kZWRDb21tYW5kcygpO1xuICAgICAgICBjb25zdCBwb3NpdGlvbmFsQ291bnQgPSBhcmd2Ll8ubGVuZ3RoICsgKGFyZ3ZbJy0tJ10gPyBhcmd2WyctLSddLmxlbmd0aCA6IDApO1xuICAgICAgICBjb25zdCBfcyA9IHBvc2l0aW9uYWxDb3VudCAtIHlhcmdzLmdldENvbnRleHQoKS5jb21tYW5kcy5sZW5ndGg7XG4gICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8gJiZcbiAgICAgICAgICAgIChfcyA8IGRlbWFuZGVkQ29tbWFuZHMuXy5taW4gfHwgX3MgPiBkZW1hbmRlZENvbW1hbmRzLl8ubWF4KSkge1xuICAgICAgICAgICAgaWYgKF9zIDwgZGVtYW5kZWRDb21tYW5kcy5fLm1pbikge1xuICAgICAgICAgICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8ubWluTXNnICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdXNhZ2UuZmFpbChkZW1hbmRlZENvbW1hbmRzLl8ubWluTXNnXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGRlbWFuZGVkQ29tbWFuZHMuXy5taW5Nc2dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgvXFwkMC9nLCBfcy50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKC9cXCQxLywgZGVtYW5kZWRDb21tYW5kcy5fLm1pbi50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHVzYWdlLmZhaWwoX19uKCdOb3QgZW5vdWdoIG5vbi1vcHRpb24gYXJndW1lbnRzOiBnb3QgJXMsIG5lZWQgYXQgbGVhc3QgJXMnLCAnTm90IGVub3VnaCBub24tb3B0aW9uIGFyZ3VtZW50czogZ290ICVzLCBuZWVkIGF0IGxlYXN0ICVzJywgX3MsIF9zLnRvU3RyaW5nKCksIGRlbWFuZGVkQ29tbWFuZHMuXy5taW4udG9TdHJpbmcoKSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKF9zID4gZGVtYW5kZWRDb21tYW5kcy5fLm1heCkge1xuICAgICAgICAgICAgICAgIGlmIChkZW1hbmRlZENvbW1hbmRzLl8ubWF4TXNnICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdXNhZ2UuZmFpbChkZW1hbmRlZENvbW1hbmRzLl8ubWF4TXNnXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGRlbWFuZGVkQ29tbWFuZHMuXy5tYXhNc2dcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgvXFwkMC9nLCBfcy50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKC9cXCQxLywgZGVtYW5kZWRDb21tYW5kcy5fLm1heC50b1N0cmluZygpKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHVzYWdlLmZhaWwoX19uKCdUb28gbWFueSBub24tb3B0aW9uIGFyZ3VtZW50czogZ290ICVzLCBtYXhpbXVtIG9mICVzJywgJ1RvbyBtYW55IG5vbi1vcHRpb24gYXJndW1lbnRzOiBnb3QgJXMsIG1heGltdW0gb2YgJXMnLCBfcywgX3MudG9TdHJpbmcoKSwgZGVtYW5kZWRDb21tYW5kcy5fLm1heC50b1N0cmluZygpKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLnBvc2l0aW9uYWxDb3VudCA9IGZ1bmN0aW9uIHBvc2l0aW9uYWxDb3VudChyZXF1aXJlZCwgb2JzZXJ2ZWQpIHtcbiAgICAgICAgaWYgKG9ic2VydmVkIDwgcmVxdWlyZWQpIHtcbiAgICAgICAgICAgIHVzYWdlLmZhaWwoX19uKCdOb3QgZW5vdWdoIG5vbi1vcHRpb24gYXJndW1lbnRzOiBnb3QgJXMsIG5lZWQgYXQgbGVhc3QgJXMnLCAnTm90IGVub3VnaCBub24tb3B0aW9uIGFyZ3VtZW50czogZ290ICVzLCBuZWVkIGF0IGxlYXN0ICVzJywgb2JzZXJ2ZWQsIG9ic2VydmVkICsgJycsIHJlcXVpcmVkICsgJycpKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgc2VsZi5yZXF1aXJlZEFyZ3VtZW50cyA9IGZ1bmN0aW9uIHJlcXVpcmVkQXJndW1lbnRzKGFyZ3YpIHtcbiAgICAgICAgY29uc3QgZGVtYW5kZWRPcHRpb25zID0geWFyZ3MuZ2V0RGVtYW5kZWRPcHRpb25zKCk7XG4gICAgICAgIGxldCBtaXNzaW5nID0gbnVsbDtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoZGVtYW5kZWRPcHRpb25zKSkge1xuICAgICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYXJndiwga2V5KSB8fFxuICAgICAgICAgICAgICAgIHR5cGVvZiBhcmd2W2tleV0gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgICAgbWlzc2luZyA9IG1pc3NpbmcgfHwge307XG4gICAgICAgICAgICAgICAgbWlzc2luZ1trZXldID0gZGVtYW5kZWRPcHRpb25zW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1pc3NpbmcpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbU1zZ3MgPSBbXTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG1pc3NpbmcpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gbWlzc2luZ1trZXldO1xuICAgICAgICAgICAgICAgIGlmIChtc2cgJiYgY3VzdG9tTXNncy5pbmRleE9mKG1zZykgPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGN1c3RvbU1zZ3MucHVzaChtc2cpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbU1zZyA9IGN1c3RvbU1zZ3MubGVuZ3RoID8gYFxcbiR7Y3VzdG9tTXNncy5qb2luKCdcXG4nKX1gIDogJyc7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKF9fbignTWlzc2luZyByZXF1aXJlZCBhcmd1bWVudDogJXMnLCAnTWlzc2luZyByZXF1aXJlZCBhcmd1bWVudHM6ICVzJywgT2JqZWN0LmtleXMobWlzc2luZykubGVuZ3RoLCBPYmplY3Qua2V5cyhtaXNzaW5nKS5qb2luKCcsICcpICsgY3VzdG9tTXNnKSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNlbGYudW5rbm93bkFyZ3VtZW50cyA9IGZ1bmN0aW9uIHVua25vd25Bcmd1bWVudHMoYXJndiwgYWxpYXNlcywgcG9zaXRpb25hbE1hcCwgaXNEZWZhdWx0Q29tbWFuZCwgY2hlY2tQb3NpdGlvbmFscyA9IHRydWUpIHtcbiAgICAgICAgY29uc3QgY29tbWFuZEtleXMgPSB5YXJncy5nZXRDb21tYW5kSW5zdGFuY2UoKS5nZXRDb21tYW5kcygpO1xuICAgICAgICBjb25zdCB1bmtub3duID0gW107XG4gICAgICAgIGNvbnN0IGN1cnJlbnRDb250ZXh0ID0geWFyZ3MuZ2V0Q29udGV4dCgpO1xuICAgICAgICBPYmplY3Qua2V5cyhhcmd2KS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBpZiAoc3BlY2lhbEtleXMuaW5kZXhPZihrZXkpID09PSAtMSAmJlxuICAgICAgICAgICAgICAgICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocG9zaXRpb25hbE1hcCwga2V5KSAmJlxuICAgICAgICAgICAgICAgICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoeWFyZ3MuX2dldFBhcnNlQ29udGV4dCgpLCBrZXkpICYmXG4gICAgICAgICAgICAgICAgIXNlbGYuaXNWYWxpZEFuZFNvbWVBbGlhc0lzTm90TmV3KGtleSwgYWxpYXNlcykpIHtcbiAgICAgICAgICAgICAgICB1bmtub3duLnB1c2goa2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChjaGVja1Bvc2l0aW9uYWxzICYmXG4gICAgICAgICAgICAoY3VycmVudENvbnRleHQuY29tbWFuZHMubGVuZ3RoID4gMCB8fFxuICAgICAgICAgICAgICAgIGNvbW1hbmRLZXlzLmxlbmd0aCA+IDAgfHxcbiAgICAgICAgICAgICAgICBpc0RlZmF1bHRDb21tYW5kKSkge1xuICAgICAgICAgICAgYXJndi5fLnNsaWNlKGN1cnJlbnRDb250ZXh0LmNvbW1hbmRzLmxlbmd0aCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjb21tYW5kS2V5cy5pbmRleE9mKCcnICsga2V5KSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdW5rbm93bi5wdXNoKCcnICsga2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodW5rbm93bi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKF9fbignVW5rbm93biBhcmd1bWVudDogJXMnLCAnVW5rbm93biBhcmd1bWVudHM6ICVzJywgdW5rbm93bi5sZW5ndGgsIHVua25vd24uam9pbignLCAnKSkpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLnVua25vd25Db21tYW5kcyA9IGZ1bmN0aW9uIHVua25vd25Db21tYW5kcyhhcmd2KSB7XG4gICAgICAgIGNvbnN0IGNvbW1hbmRLZXlzID0geWFyZ3MuZ2V0Q29tbWFuZEluc3RhbmNlKCkuZ2V0Q29tbWFuZHMoKTtcbiAgICAgICAgY29uc3QgdW5rbm93biA9IFtdO1xuICAgICAgICBjb25zdCBjdXJyZW50Q29udGV4dCA9IHlhcmdzLmdldENvbnRleHQoKTtcbiAgICAgICAgaWYgKGN1cnJlbnRDb250ZXh0LmNvbW1hbmRzLmxlbmd0aCA+IDAgfHwgY29tbWFuZEtleXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgYXJndi5fLnNsaWNlKGN1cnJlbnRDb250ZXh0LmNvbW1hbmRzLmxlbmd0aCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjb21tYW5kS2V5cy5pbmRleE9mKCcnICsga2V5KSA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdW5rbm93bi5wdXNoKCcnICsga2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodW5rbm93bi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKF9fbignVW5rbm93biBjb21tYW5kOiAlcycsICdVbmtub3duIGNvbW1hbmRzOiAlcycsIHVua25vd24ubGVuZ3RoLCB1bmtub3duLmpvaW4oJywgJykpKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLmlzVmFsaWRBbmRTb21lQWxpYXNJc05vdE5ldyA9IGZ1bmN0aW9uIGlzVmFsaWRBbmRTb21lQWxpYXNJc05vdE5ldyhrZXksIGFsaWFzZXMpIHtcbiAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYWxpYXNlcywga2V5KSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5ld0FsaWFzZXMgPSB5YXJncy5wYXJzZWQubmV3QWxpYXNlcztcbiAgICAgICAgZm9yIChjb25zdCBhIG9mIFtrZXksIC4uLmFsaWFzZXNba2V5XV0pIHtcbiAgICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG5ld0FsaWFzZXMsIGEpIHx8XG4gICAgICAgICAgICAgICAgIW5ld0FsaWFzZXNba2V5XSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9O1xuICAgIHNlbGYubGltaXRlZENob2ljZXMgPSBmdW5jdGlvbiBsaW1pdGVkQ2hvaWNlcyhhcmd2KSB7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB5YXJncy5nZXRPcHRpb25zKCk7XG4gICAgICAgIGNvbnN0IGludmFsaWQgPSB7fTtcbiAgICAgICAgaWYgKCFPYmplY3Qua2V5cyhvcHRpb25zLmNob2ljZXMpLmxlbmd0aClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgT2JqZWN0LmtleXMoYXJndikuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKHNwZWNpYWxLZXlzLmluZGV4T2Yoa2V5KSA9PT0gLTEgJiZcbiAgICAgICAgICAgICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob3B0aW9ucy5jaG9pY2VzLCBrZXkpKSB7XG4gICAgICAgICAgICAgICAgW10uY29uY2F0KGFyZ3Zba2V5XSkuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmNob2ljZXNba2V5XS5pbmRleE9mKHZhbHVlKSA9PT0gLTEgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGludmFsaWRba2V5XSA9IChpbnZhbGlkW2tleV0gfHwgW10pLmNvbmNhdCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGludmFsaWRLZXlzID0gT2JqZWN0LmtleXMoaW52YWxpZCk7XG4gICAgICAgIGlmICghaW52YWxpZEtleXMubGVuZ3RoKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBsZXQgbXNnID0gX18oJ0ludmFsaWQgdmFsdWVzOicpO1xuICAgICAgICBpbnZhbGlkS2V5cy5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBtc2cgKz0gYFxcbiAgJHtfXygnQXJndW1lbnQ6ICVzLCBHaXZlbjogJXMsIENob2ljZXM6ICVzJywga2V5LCB1c2FnZS5zdHJpbmdpZmllZFZhbHVlcyhpbnZhbGlkW2tleV0pLCB1c2FnZS5zdHJpbmdpZmllZFZhbHVlcyhvcHRpb25zLmNob2ljZXNba2V5XSkpfWA7XG4gICAgICAgIH0pO1xuICAgICAgICB1c2FnZS5mYWlsKG1zZyk7XG4gICAgfTtcbiAgICBsZXQgY2hlY2tzID0gW107XG4gICAgc2VsZi5jaGVjayA9IGZ1bmN0aW9uIGNoZWNrKGYsIGdsb2JhbCkge1xuICAgICAgICBjaGVja3MucHVzaCh7XG4gICAgICAgICAgICBmdW5jOiBmLFxuICAgICAgICAgICAgZ2xvYmFsLFxuICAgICAgICB9KTtcbiAgICB9O1xuICAgIHNlbGYuY3VzdG9tQ2hlY2tzID0gZnVuY3Rpb24gY3VzdG9tQ2hlY2tzKGFyZ3YsIGFsaWFzZXMpIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGY7IChmID0gY2hlY2tzW2ldKSAhPT0gdW5kZWZpbmVkOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGZ1bmMgPSBmLmZ1bmM7XG4gICAgICAgICAgICBsZXQgcmVzdWx0ID0gbnVsbDtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gZnVuYyhhcmd2LCBhbGlhc2VzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICB1c2FnZS5mYWlsKGVyci5tZXNzYWdlID8gZXJyLm1lc3NhZ2UgOiBlcnIsIGVycik7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICAgICAgICAgIHVzYWdlLmZhaWwoX18oJ0FyZ3VtZW50IGNoZWNrIGZhaWxlZDogJXMnLCBmdW5jLnRvU3RyaW5nKCkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdzdHJpbmcnIHx8IHJlc3VsdCBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICAgICAgdXNhZ2UuZmFpbChyZXN1bHQudG9TdHJpbmcoKSwgcmVzdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG4gICAgbGV0IGltcGxpZWQgPSB7fTtcbiAgICBzZWxmLmltcGxpZXMgPSBmdW5jdGlvbiBpbXBsaWVzKGtleSwgdmFsdWUpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZ3xvYmplY3Q+IFthcnJheXxudW1iZXJ8c3RyaW5nXScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoa2V5KS5mb3JFYWNoKGsgPT4ge1xuICAgICAgICAgICAgICAgIHNlbGYuaW1wbGllcyhrLCBrZXlba10pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB5YXJncy5nbG9iYWwoa2V5KTtcbiAgICAgICAgICAgIGlmICghaW1wbGllZFtrZXldKSB7XG4gICAgICAgICAgICAgICAgaW1wbGllZFtrZXldID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5mb3JFYWNoKGkgPT4gc2VsZi5pbXBsaWVzKGtleSwgaSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwodmFsdWUsIHVuZGVmaW5lZCwgc2hpbSk7XG4gICAgICAgICAgICAgICAgaW1wbGllZFtrZXldLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLmdldEltcGxpZWQgPSBmdW5jdGlvbiBnZXRJbXBsaWVkKCkge1xuICAgICAgICByZXR1cm4gaW1wbGllZDtcbiAgICB9O1xuICAgIGZ1bmN0aW9uIGtleUV4aXN0cyhhcmd2LCB2YWwpIHtcbiAgICAgICAgY29uc3QgbnVtID0gTnVtYmVyKHZhbCk7XG4gICAgICAgIHZhbCA9IGlzTmFOKG51bSkgPyB2YWwgOiBudW07XG4gICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgdmFsID0gYXJndi5fLmxlbmd0aCA+PSB2YWw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodmFsLm1hdGNoKC9eLS1uby0uKy8pKSB7XG4gICAgICAgICAgICB2YWwgPSB2YWwubWF0Y2goL14tLW5vLSguKykvKVsxXTtcbiAgICAgICAgICAgIHZhbCA9ICFhcmd2W3ZhbF07XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB2YWwgPSBhcmd2W3ZhbF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG4gICAgc2VsZi5pbXBsaWNhdGlvbnMgPSBmdW5jdGlvbiBpbXBsaWNhdGlvbnMoYXJndikge1xuICAgICAgICBjb25zdCBpbXBseUZhaWwgPSBbXTtcbiAgICAgICAgT2JqZWN0LmtleXMoaW1wbGllZCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb3JpZ0tleSA9IGtleTtcbiAgICAgICAgICAgIChpbXBsaWVkW2tleV0gfHwgW10pLmZvckVhY2godmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIGxldCBrZXkgPSBvcmlnS2V5O1xuICAgICAgICAgICAgICAgIGNvbnN0IG9yaWdWYWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgIGtleSA9IGtleUV4aXN0cyhhcmd2LCBrZXkpO1xuICAgICAgICAgICAgICAgIHZhbHVlID0ga2V5RXhpc3RzKGFyZ3YsIHZhbHVlKTtcbiAgICAgICAgICAgICAgICBpZiAoa2V5ICYmICF2YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICBpbXBseUZhaWwucHVzaChgICR7b3JpZ0tleX0gLT4gJHtvcmlnVmFsdWV9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoaW1wbHlGYWlsLmxlbmd0aCkge1xuICAgICAgICAgICAgbGV0IG1zZyA9IGAke19fKCdJbXBsaWNhdGlvbnMgZmFpbGVkOicpfVxcbmA7XG4gICAgICAgICAgICBpbXBseUZhaWwuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgbXNnICs9IHZhbHVlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB1c2FnZS5mYWlsKG1zZyk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGxldCBjb25mbGljdGluZyA9IHt9O1xuICAgIHNlbGYuY29uZmxpY3RzID0gZnVuY3Rpb24gY29uZmxpY3RzKGtleSwgdmFsdWUpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZ3xvYmplY3Q+IFthcnJheXxzdHJpbmddJywgW2tleSwgdmFsdWVdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHR5cGVvZiBrZXkgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhrZXkpLmZvckVhY2goayA9PiB7XG4gICAgICAgICAgICAgICAgc2VsZi5jb25mbGljdHMoaywga2V5W2tdKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgeWFyZ3MuZ2xvYmFsKGtleSk7XG4gICAgICAgICAgICBpZiAoIWNvbmZsaWN0aW5nW2tleV0pIHtcbiAgICAgICAgICAgICAgICBjb25mbGljdGluZ1trZXldID0gW107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5mb3JFYWNoKGkgPT4gc2VsZi5jb25mbGljdHMoa2V5LCBpKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25mbGljdGluZ1trZXldLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBzZWxmLmdldENvbmZsaWN0aW5nID0gKCkgPT4gY29uZmxpY3Rpbmc7XG4gICAgc2VsZi5jb25mbGljdGluZyA9IGZ1bmN0aW9uIGNvbmZsaWN0aW5nRm4oYXJndikge1xuICAgICAgICBPYmplY3Qua2V5cyhhcmd2KS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICBpZiAoY29uZmxpY3Rpbmdba2V5XSkge1xuICAgICAgICAgICAgICAgIGNvbmZsaWN0aW5nW2tleV0uZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAmJiBhcmd2W2tleV0gIT09IHVuZGVmaW5lZCAmJiBhcmd2W3ZhbHVlXSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB1c2FnZS5mYWlsKF9fKCdBcmd1bWVudHMgJXMgYW5kICVzIGFyZSBtdXR1YWxseSBleGNsdXNpdmUnLCBrZXksIHZhbHVlKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICBzZWxmLnJlY29tbWVuZENvbW1hbmRzID0gZnVuY3Rpb24gcmVjb21tZW5kQ29tbWFuZHMoY21kLCBwb3RlbnRpYWxDb21tYW5kcykge1xuICAgICAgICBjb25zdCB0aHJlc2hvbGQgPSAzO1xuICAgICAgICBwb3RlbnRpYWxDb21tYW5kcyA9IHBvdGVudGlhbENvbW1hbmRzLnNvcnQoKGEsIGIpID0+IGIubGVuZ3RoIC0gYS5sZW5ndGgpO1xuICAgICAgICBsZXQgcmVjb21tZW5kZWQgPSBudWxsO1xuICAgICAgICBsZXQgYmVzdERpc3RhbmNlID0gSW5maW5pdHk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBjYW5kaWRhdGU7IChjYW5kaWRhdGUgPSBwb3RlbnRpYWxDb21tYW5kc1tpXSkgIT09IHVuZGVmaW5lZDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBkID0gbGV2ZW5zaHRlaW4oY21kLCBjYW5kaWRhdGUpO1xuICAgICAgICAgICAgaWYgKGQgPD0gdGhyZXNob2xkICYmIGQgPCBiZXN0RGlzdGFuY2UpIHtcbiAgICAgICAgICAgICAgICBiZXN0RGlzdGFuY2UgPSBkO1xuICAgICAgICAgICAgICAgIHJlY29tbWVuZGVkID0gY2FuZGlkYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChyZWNvbW1lbmRlZClcbiAgICAgICAgICAgIHVzYWdlLmZhaWwoX18oJ0RpZCB5b3UgbWVhbiAlcz8nLCByZWNvbW1lbmRlZCkpO1xuICAgIH07XG4gICAgc2VsZi5yZXNldCA9IGZ1bmN0aW9uIHJlc2V0KGxvY2FsTG9va3VwKSB7XG4gICAgICAgIGltcGxpZWQgPSBvYmpGaWx0ZXIoaW1wbGllZCwgayA9PiAhbG9jYWxMb29rdXBba10pO1xuICAgICAgICBjb25mbGljdGluZyA9IG9iakZpbHRlcihjb25mbGljdGluZywgayA9PiAhbG9jYWxMb29rdXBba10pO1xuICAgICAgICBjaGVja3MgPSBjaGVja3MuZmlsdGVyKGMgPT4gYy5nbG9iYWwpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGNvbnN0IGZyb3plbnMgPSBbXTtcbiAgICBzZWxmLmZyZWV6ZSA9IGZ1bmN0aW9uIGZyZWV6ZSgpIHtcbiAgICAgICAgZnJvemVucy5wdXNoKHtcbiAgICAgICAgICAgIGltcGxpZWQsXG4gICAgICAgICAgICBjaGVja3MsXG4gICAgICAgICAgICBjb25mbGljdGluZyxcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICBzZWxmLnVuZnJlZXplID0gZnVuY3Rpb24gdW5mcmVlemUoKSB7XG4gICAgICAgIGNvbnN0IGZyb3plbiA9IGZyb3plbnMucG9wKCk7XG4gICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKGZyb3plbiwgdW5kZWZpbmVkLCBzaGltKTtcbiAgICAgICAgKHsgaW1wbGllZCwgY2hlY2tzLCBjb25mbGljdGluZyB9ID0gZnJvemVuKTtcbiAgICB9O1xuICAgIHJldHVybiBzZWxmO1xufVxuXG5sZXQgc2hpbSQxO1xuZnVuY3Rpb24gWWFyZ3NXaXRoU2hpbShfc2hpbSkge1xuICAgIHNoaW0kMSA9IF9zaGltO1xuICAgIHJldHVybiBZYXJncztcbn1cbmZ1bmN0aW9uIFlhcmdzKHByb2Nlc3NBcmdzID0gW10sIGN3ZCA9IHNoaW0kMS5wcm9jZXNzLmN3ZCgpLCBwYXJlbnRSZXF1aXJlKSB7XG4gICAgY29uc3Qgc2VsZiA9IHt9O1xuICAgIGxldCBjb21tYW5kJDE7XG4gICAgbGV0IGNvbXBsZXRpb24kMSA9IG51bGw7XG4gICAgbGV0IGdyb3VwcyA9IHt9O1xuICAgIGNvbnN0IGdsb2JhbE1pZGRsZXdhcmUgPSBbXTtcbiAgICBsZXQgb3V0cHV0ID0gJyc7XG4gICAgY29uc3QgcHJlc2VydmVkR3JvdXBzID0ge307XG4gICAgbGV0IHVzYWdlJDE7XG4gICAgbGV0IHZhbGlkYXRpb24kMTtcbiAgICBsZXQgaGFuZGxlckZpbmlzaENvbW1hbmQgPSBudWxsO1xuICAgIGNvbnN0IHkxOG4gPSBzaGltJDEueTE4bjtcbiAgICBzZWxmLm1pZGRsZXdhcmUgPSBnbG9iYWxNaWRkbGV3YXJlRmFjdG9yeShnbG9iYWxNaWRkbGV3YXJlLCBzZWxmKTtcbiAgICBzZWxmLnNjcmlwdE5hbWUgPSBmdW5jdGlvbiAoc2NyaXB0TmFtZSkge1xuICAgICAgICBzZWxmLmN1c3RvbVNjcmlwdE5hbWUgPSB0cnVlO1xuICAgICAgICBzZWxmLiQwID0gc2NyaXB0TmFtZTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBsZXQgZGVmYXVsdCQwO1xuICAgIGlmICgvXFxiKG5vZGV8aW9qc3xlbGVjdHJvbikoXFwuZXhlKT8kLy50ZXN0KHNoaW0kMS5wcm9jZXNzLmFyZ3YoKVswXSkpIHtcbiAgICAgICAgZGVmYXVsdCQwID0gc2hpbSQxLnByb2Nlc3MuYXJndigpLnNsaWNlKDEsIDIpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgZGVmYXVsdCQwID0gc2hpbSQxLnByb2Nlc3MuYXJndigpLnNsaWNlKDAsIDEpO1xuICAgIH1cbiAgICBzZWxmLiQwID0gZGVmYXVsdCQwXG4gICAgICAgIC5tYXAoeCA9PiB7XG4gICAgICAgIGNvbnN0IGIgPSByZWJhc2UoY3dkLCB4KTtcbiAgICAgICAgcmV0dXJuIHgubWF0Y2goL14oXFwvfChbYS16QS1aXTopP1xcXFwpLykgJiYgYi5sZW5ndGggPCB4Lmxlbmd0aCA/IGIgOiB4O1xuICAgIH0pXG4gICAgICAgIC5qb2luKCcgJylcbiAgICAgICAgLnRyaW0oKTtcbiAgICBpZiAoc2hpbSQxLmdldEVudignXycpICYmIHNoaW0kMS5nZXRQcm9jZXNzQXJndkJpbigpID09PSBzaGltJDEuZ2V0RW52KCdfJykpIHtcbiAgICAgICAgc2VsZi4kMCA9IHNoaW0kMVxuICAgICAgICAgICAgLmdldEVudignXycpXG4gICAgICAgICAgICAucmVwbGFjZShgJHtzaGltJDEucGF0aC5kaXJuYW1lKHNoaW0kMS5wcm9jZXNzLmV4ZWNQYXRoKCkpfS9gLCAnJyk7XG4gICAgfVxuICAgIGNvbnN0IGNvbnRleHQgPSB7IHJlc2V0czogLTEsIGNvbW1hbmRzOiBbXSwgZnVsbENvbW1hbmRzOiBbXSwgZmlsZXM6IFtdIH07XG4gICAgc2VsZi5nZXRDb250ZXh0ID0gKCkgPT4gY29udGV4dDtcbiAgICBsZXQgaGFzT3V0cHV0ID0gZmFsc2U7XG4gICAgbGV0IGV4aXRFcnJvciA9IG51bGw7XG4gICAgc2VsZi5leGl0ID0gKGNvZGUsIGVycikgPT4ge1xuICAgICAgICBoYXNPdXRwdXQgPSB0cnVlO1xuICAgICAgICBleGl0RXJyb3IgPSBlcnI7XG4gICAgICAgIGlmIChleGl0UHJvY2VzcylcbiAgICAgICAgICAgIHNoaW0kMS5wcm9jZXNzLmV4aXQoY29kZSk7XG4gICAgfTtcbiAgICBsZXQgY29tcGxldGlvbkNvbW1hbmQgPSBudWxsO1xuICAgIHNlbGYuY29tcGxldGlvbiA9IGZ1bmN0aW9uIChjbWQsIGRlc2MsIGZuKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmddIFtzdHJpbmd8Ym9vbGVhbnxmdW5jdGlvbl0gW2Z1bmN0aW9uXScsIFtjbWQsIGRlc2MsIGZuXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzYyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgZm4gPSBkZXNjO1xuICAgICAgICAgICAgZGVzYyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBjb21wbGV0aW9uQ29tbWFuZCA9IGNtZCB8fCBjb21wbGV0aW9uQ29tbWFuZCB8fCAnY29tcGxldGlvbic7XG4gICAgICAgIGlmICghZGVzYyAmJiBkZXNjICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgZGVzYyA9ICdnZW5lcmF0ZSBjb21wbGV0aW9uIHNjcmlwdCc7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZi5jb21tYW5kKGNvbXBsZXRpb25Db21tYW5kLCBkZXNjKTtcbiAgICAgICAgaWYgKGZuKVxuICAgICAgICAgICAgY29tcGxldGlvbiQxLnJlZ2lzdGVyRnVuY3Rpb24oZm4pO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGxldCBvcHRpb25zO1xuICAgIHNlbGYucmVzZXRPcHRpb25zID0gc2VsZi5yZXNldCA9IGZ1bmN0aW9uIHJlc2V0T3B0aW9ucyhhbGlhc2VzID0ge30pIHtcbiAgICAgICAgY29udGV4dC5yZXNldHMrKztcbiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gICAgICAgIGNvbnN0IHRtcE9wdGlvbnMgPSB7fTtcbiAgICAgICAgdG1wT3B0aW9ucy5sb2NhbCA9IG9wdGlvbnMubG9jYWwgPyBvcHRpb25zLmxvY2FsIDogW107XG4gICAgICAgIHRtcE9wdGlvbnMuY29uZmlnT2JqZWN0cyA9IG9wdGlvbnMuY29uZmlnT2JqZWN0c1xuICAgICAgICAgICAgPyBvcHRpb25zLmNvbmZpZ09iamVjdHNcbiAgICAgICAgICAgIDogW107XG4gICAgICAgIGNvbnN0IGxvY2FsTG9va3VwID0ge307XG4gICAgICAgIHRtcE9wdGlvbnMubG9jYWwuZm9yRWFjaChsID0+IHtcbiAgICAgICAgICAgIGxvY2FsTG9va3VwW2xdID0gdHJ1ZTtcbiAgICAgICAgICAgIChhbGlhc2VzW2xdIHx8IFtdKS5mb3JFYWNoKGEgPT4ge1xuICAgICAgICAgICAgICAgIGxvY2FsTG9va3VwW2FdID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihwcmVzZXJ2ZWRHcm91cHMsIE9iamVjdC5rZXlzKGdyb3VwcykucmVkdWNlKChhY2MsIGdyb3VwTmFtZSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qga2V5cyA9IGdyb3Vwc1tncm91cE5hbWVdLmZpbHRlcihrZXkgPT4gIShrZXkgaW4gbG9jYWxMb29rdXApKTtcbiAgICAgICAgICAgIGlmIChrZXlzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBhY2NbZ3JvdXBOYW1lXSA9IGtleXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSkpO1xuICAgICAgICBncm91cHMgPSB7fTtcbiAgICAgICAgY29uc3QgYXJyYXlPcHRpb25zID0gW1xuICAgICAgICAgICAgJ2FycmF5JyxcbiAgICAgICAgICAgICdib29sZWFuJyxcbiAgICAgICAgICAgICdzdHJpbmcnLFxuICAgICAgICAgICAgJ3NraXBWYWxpZGF0aW9uJyxcbiAgICAgICAgICAgICdjb3VudCcsXG4gICAgICAgICAgICAnbm9ybWFsaXplJyxcbiAgICAgICAgICAgICdudW1iZXInLFxuICAgICAgICAgICAgJ2hpZGRlbk9wdGlvbnMnLFxuICAgICAgICBdO1xuICAgICAgICBjb25zdCBvYmplY3RPcHRpb25zID0gW1xuICAgICAgICAgICAgJ25hcmcnLFxuICAgICAgICAgICAgJ2tleScsXG4gICAgICAgICAgICAnYWxpYXMnLFxuICAgICAgICAgICAgJ2RlZmF1bHQnLFxuICAgICAgICAgICAgJ2RlZmF1bHREZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAnY29uZmlnJyxcbiAgICAgICAgICAgICdjaG9pY2VzJyxcbiAgICAgICAgICAgICdkZW1hbmRlZE9wdGlvbnMnLFxuICAgICAgICAgICAgJ2RlbWFuZGVkQ29tbWFuZHMnLFxuICAgICAgICAgICAgJ2NvZXJjZScsXG4gICAgICAgICAgICAnZGVwcmVjYXRlZE9wdGlvbnMnLFxuICAgICAgICBdO1xuICAgICAgICBhcnJheU9wdGlvbnMuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgIHRtcE9wdGlvbnNba10gPSAob3B0aW9uc1trXSB8fCBbXSkuZmlsdGVyKChrKSA9PiAhbG9jYWxMb29rdXBba10pO1xuICAgICAgICB9KTtcbiAgICAgICAgb2JqZWN0T3B0aW9ucy5mb3JFYWNoKChrKSA9PiB7XG4gICAgICAgICAgICB0bXBPcHRpb25zW2tdID0gb2JqRmlsdGVyKG9wdGlvbnNba10sIGsgPT4gIWxvY2FsTG9va3VwW2tdKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRtcE9wdGlvbnMuZW52UHJlZml4ID0gb3B0aW9ucy5lbnZQcmVmaXg7XG4gICAgICAgIG9wdGlvbnMgPSB0bXBPcHRpb25zO1xuICAgICAgICB1c2FnZSQxID0gdXNhZ2UkMSA/IHVzYWdlJDEucmVzZXQobG9jYWxMb29rdXApIDogdXNhZ2Uoc2VsZiwgeTE4biwgc2hpbSQxKTtcbiAgICAgICAgdmFsaWRhdGlvbiQxID0gdmFsaWRhdGlvbiQxXG4gICAgICAgICAgICA/IHZhbGlkYXRpb24kMS5yZXNldChsb2NhbExvb2t1cClcbiAgICAgICAgICAgIDogdmFsaWRhdGlvbihzZWxmLCB1c2FnZSQxLCB5MThuLCBzaGltJDEpO1xuICAgICAgICBjb21tYW5kJDEgPSBjb21tYW5kJDFcbiAgICAgICAgICAgID8gY29tbWFuZCQxLnJlc2V0KClcbiAgICAgICAgICAgIDogY29tbWFuZChzZWxmLCB1c2FnZSQxLCB2YWxpZGF0aW9uJDEsIGdsb2JhbE1pZGRsZXdhcmUsIHNoaW0kMSk7XG4gICAgICAgIGlmICghY29tcGxldGlvbiQxKVxuICAgICAgICAgICAgY29tcGxldGlvbiQxID0gY29tcGxldGlvbihzZWxmLCB1c2FnZSQxLCBjb21tYW5kJDEsIHNoaW0kMSk7XG4gICAgICAgIGNvbXBsZXRpb25Db21tYW5kID0gbnVsbDtcbiAgICAgICAgb3V0cHV0ID0gJyc7XG4gICAgICAgIGV4aXRFcnJvciA9IG51bGw7XG4gICAgICAgIGhhc091dHB1dCA9IGZhbHNlO1xuICAgICAgICBzZWxmLnBhcnNlZCA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYucmVzZXRPcHRpb25zKCk7XG4gICAgY29uc3QgZnJvemVucyA9IFtdO1xuICAgIGZ1bmN0aW9uIGZyZWV6ZSgpIHtcbiAgICAgICAgZnJvemVucy5wdXNoKHtcbiAgICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgICBjb25maWdPYmplY3RzOiBvcHRpb25zLmNvbmZpZ09iamVjdHMuc2xpY2UoMCksXG4gICAgICAgICAgICBleGl0UHJvY2VzcyxcbiAgICAgICAgICAgIGdyb3VwcyxcbiAgICAgICAgICAgIHN0cmljdCxcbiAgICAgICAgICAgIHN0cmljdENvbW1hbmRzLFxuICAgICAgICAgICAgc3RyaWN0T3B0aW9ucyxcbiAgICAgICAgICAgIGNvbXBsZXRpb25Db21tYW5kLFxuICAgICAgICAgICAgb3V0cHV0LFxuICAgICAgICAgICAgZXhpdEVycm9yLFxuICAgICAgICAgICAgaGFzT3V0cHV0LFxuICAgICAgICAgICAgcGFyc2VkOiBzZWxmLnBhcnNlZCxcbiAgICAgICAgICAgIHBhcnNlRm4sXG4gICAgICAgICAgICBwYXJzZUNvbnRleHQsXG4gICAgICAgICAgICBoYW5kbGVyRmluaXNoQ29tbWFuZCxcbiAgICAgICAgfSk7XG4gICAgICAgIHVzYWdlJDEuZnJlZXplKCk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5mcmVlemUoKTtcbiAgICAgICAgY29tbWFuZCQxLmZyZWV6ZSgpO1xuICAgIH1cbiAgICBmdW5jdGlvbiB1bmZyZWV6ZSgpIHtcbiAgICAgICAgY29uc3QgZnJvemVuID0gZnJvemVucy5wb3AoKTtcbiAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwoZnJvemVuLCB1bmRlZmluZWQsIHNoaW0kMSk7XG4gICAgICAgIGxldCBjb25maWdPYmplY3RzO1xuICAgICAgICAoe1xuICAgICAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgICAgIGNvbmZpZ09iamVjdHMsXG4gICAgICAgICAgICBleGl0UHJvY2VzcyxcbiAgICAgICAgICAgIGdyb3VwcyxcbiAgICAgICAgICAgIG91dHB1dCxcbiAgICAgICAgICAgIGV4aXRFcnJvcixcbiAgICAgICAgICAgIGhhc091dHB1dCxcbiAgICAgICAgICAgIHBhcnNlZDogc2VsZi5wYXJzZWQsXG4gICAgICAgICAgICBzdHJpY3QsXG4gICAgICAgICAgICBzdHJpY3RDb21tYW5kcyxcbiAgICAgICAgICAgIHN0cmljdE9wdGlvbnMsXG4gICAgICAgICAgICBjb21wbGV0aW9uQ29tbWFuZCxcbiAgICAgICAgICAgIHBhcnNlRm4sXG4gICAgICAgICAgICBwYXJzZUNvbnRleHQsXG4gICAgICAgICAgICBoYW5kbGVyRmluaXNoQ29tbWFuZCxcbiAgICAgICAgfSA9IGZyb3plbik7XG4gICAgICAgIG9wdGlvbnMuY29uZmlnT2JqZWN0cyA9IGNvbmZpZ09iamVjdHM7XG4gICAgICAgIHVzYWdlJDEudW5mcmVlemUoKTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLnVuZnJlZXplKCk7XG4gICAgICAgIGNvbW1hbmQkMS51bmZyZWV6ZSgpO1xuICAgIH1cbiAgICBzZWxmLmJvb2xlYW4gPSBmdW5jdGlvbiAoa2V5cykge1xuICAgICAgICBhcmdzZXJ0KCc8YXJyYXl8c3RyaW5nPicsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5KCdib29sZWFuJywga2V5cyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5hcnJheSA9IGZ1bmN0aW9uIChrZXlzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxzdHJpbmc+JywgW2tleXNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50QXJyYXkoJ2FycmF5Jywga2V5cyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5udW1iZXIgPSBmdW5jdGlvbiAoa2V5cykge1xuICAgICAgICBhcmdzZXJ0KCc8YXJyYXl8c3RyaW5nPicsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5KCdudW1iZXInLCBrZXlzKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLm5vcm1hbGl6ZSA9IGZ1bmN0aW9uIChrZXlzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxzdHJpbmc+JywgW2tleXNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50QXJyYXkoJ25vcm1hbGl6ZScsIGtleXMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuY291bnQgPSBmdW5jdGlvbiAoa2V5cykge1xuICAgICAgICBhcmdzZXJ0KCc8YXJyYXl8c3RyaW5nPicsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5KCdjb3VudCcsIGtleXMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuc3RyaW5nID0gZnVuY3Rpb24gKGtleXMpIHtcbiAgICAgICAgYXJnc2VydCgnPGFycmF5fHN0cmluZz4nLCBba2V5c10sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBwb3B1bGF0ZVBhcnNlckhpbnRBcnJheSgnc3RyaW5nJywga2V5cyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5yZXF1aXJlc0FyZyA9IGZ1bmN0aW9uIChrZXlzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheXxzdHJpbmd8b2JqZWN0PiBbbnVtYmVyXScsIFtrZXlzXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2Yga2V5cyA9PT0gJ3N0cmluZycgJiYgb3B0aW9ucy5uYXJnW2tleXNdKSB7XG4gICAgICAgICAgICByZXR1cm4gc2VsZjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZWxmLnJlcXVpcmVzQXJnLCAnbmFyZycsIGtleXMsIE5hTik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLnNraXBWYWxpZGF0aW9uID0gZnVuY3Rpb24gKGtleXMpIHtcbiAgICAgICAgYXJnc2VydCgnPGFycmF5fHN0cmluZz4nLCBba2V5c10sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBwb3B1bGF0ZVBhcnNlckhpbnRBcnJheSgnc2tpcFZhbGlkYXRpb24nLCBrZXlzKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBwb3B1bGF0ZVBhcnNlckhpbnRBcnJheSh0eXBlLCBrZXlzKSB7XG4gICAgICAgIGtleXMgPSBbXS5jb25jYXQoa2V5cyk7XG4gICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAga2V5ID0gc2FuaXRpemVLZXkoa2V5KTtcbiAgICAgICAgICAgIG9wdGlvbnNbdHlwZV0ucHVzaChrZXkpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgc2VsZi5uYXJncyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8b2JqZWN0fGFycmF5PiBbbnVtYmVyXScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZWxmLm5hcmdzLCAnbmFyZycsIGtleSwgdmFsdWUpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuY2hvaWNlcyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbc3RyaW5nfGFycmF5XScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5RGljdGlvbmFyeShzZWxmLmNob2ljZXMsICdjaG9pY2VzJywga2V5LCB2YWx1ZSk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5hbGlhcyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbc3RyaW5nfGFycmF5XScsIFtrZXksIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludEFycmF5RGljdGlvbmFyeShzZWxmLmFsaWFzLCAnYWxpYXMnLCBrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmRlZmF1bHQgPSBzZWxmLmRlZmF1bHRzID0gZnVuY3Rpb24gKGtleSwgdmFsdWUsIGRlZmF1bHREZXNjcmlwdGlvbikge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0fHN0cmluZ3xhcnJheT4gWypdIFtzdHJpbmddJywgW2tleSwgdmFsdWUsIGRlZmF1bHREZXNjcmlwdGlvbl0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBpZiAoZGVmYXVsdERlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICBhc3NlcnRTaW5nbGVLZXkoa2V5LCBzaGltJDEpO1xuICAgICAgICAgICAgb3B0aW9ucy5kZWZhdWx0RGVzY3JpcHRpb25ba2V5XSA9IGRlZmF1bHREZXNjcmlwdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBhc3NlcnRTaW5nbGVLZXkoa2V5LCBzaGltJDEpO1xuICAgICAgICAgICAgaWYgKCFvcHRpb25zLmRlZmF1bHREZXNjcmlwdGlvbltrZXldKVxuICAgICAgICAgICAgICAgIG9wdGlvbnMuZGVmYXVsdERlc2NyaXB0aW9uW2tleV0gPSB1c2FnZSQxLmZ1bmN0aW9uRGVzY3JpcHRpb24odmFsdWUpO1xuICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5jYWxsKCk7XG4gICAgICAgIH1cbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50U2luZ2xlVmFsdWVEaWN0aW9uYXJ5KHNlbGYuZGVmYXVsdCwgJ2RlZmF1bHQnLCBrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmRlc2NyaWJlID0gZnVuY3Rpb24gKGtleSwgZGVzYykge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0fHN0cmluZ3xhcnJheT4gW3N0cmluZ10nLCBba2V5LCBkZXNjXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHNldEtleShrZXksIHRydWUpO1xuICAgICAgICB1c2FnZSQxLmRlc2NyaWJlKGtleSwgZGVzYyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgZnVuY3Rpb24gc2V0S2V5KGtleSwgc2V0KSB7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZXRLZXksICdrZXknLCBrZXksIHNldCk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH1cbiAgICBmdW5jdGlvbiBkZW1hbmRPcHRpb24oa2V5cywgbXNnKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbc3RyaW5nXScsIFtrZXlzLCBtc2ddLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcG9wdWxhdGVQYXJzZXJIaW50U2luZ2xlVmFsdWVEaWN0aW9uYXJ5KHNlbGYuZGVtYW5kT3B0aW9uLCAnZGVtYW5kZWRPcHRpb25zJywga2V5cywgbXNnKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfVxuICAgIHNlbGYuZGVtYW5kT3B0aW9uID0gZGVtYW5kT3B0aW9uO1xuICAgIHNlbGYuY29lcmNlID0gZnVuY3Rpb24gKGtleXMsIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxvYmplY3R8c3RyaW5nfGFycmF5PiBbZnVuY3Rpb25dJywgW2tleXMsIHZhbHVlXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludFNpbmdsZVZhbHVlRGljdGlvbmFyeShzZWxmLmNvZXJjZSwgJ2NvZXJjZScsIGtleXMsIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBwb3B1bGF0ZVBhcnNlckhpbnRTaW5nbGVWYWx1ZURpY3Rpb25hcnkoYnVpbGRlciwgdHlwZSwga2V5LCB2YWx1ZSkge1xuICAgICAgICBwb3B1bGF0ZVBhcnNlckhpbnREaWN0aW9uYXJ5KGJ1aWxkZXIsIHR5cGUsIGtleSwgdmFsdWUsICh0eXBlLCBrZXksIHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBvcHRpb25zW3R5cGVdW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIHBvcHVsYXRlUGFyc2VySGludEFycmF5RGljdGlvbmFyeShidWlsZGVyLCB0eXBlLCBrZXksIHZhbHVlKSB7XG4gICAgICAgIHBvcHVsYXRlUGFyc2VySGludERpY3Rpb25hcnkoYnVpbGRlciwgdHlwZSwga2V5LCB2YWx1ZSwgKHR5cGUsIGtleSwgdmFsdWUpID0+IHtcbiAgICAgICAgICAgIG9wdGlvbnNbdHlwZV1ba2V5XSA9IChvcHRpb25zW3R5cGVdW2tleV0gfHwgW10pLmNvbmNhdCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBmdW5jdGlvbiBwb3B1bGF0ZVBhcnNlckhpbnREaWN0aW9uYXJ5KGJ1aWxkZXIsIHR5cGUsIGtleSwgdmFsdWUsIHNpbmdsZUtleUhhbmRsZXIpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoa2V5KSkge1xuICAgICAgICAgICAga2V5LmZvckVhY2goayA9PiB7XG4gICAgICAgICAgICAgICAgYnVpbGRlcihrLCB2YWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICgoKGtleSkgPT4gdHlwZW9mIGtleSA9PT0gJ29iamVjdCcpKGtleSkpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgayBvZiBvYmplY3RLZXlzKGtleSkpIHtcbiAgICAgICAgICAgICAgICBidWlsZGVyKGssIGtleVtrXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzaW5nbGVLZXlIYW5kbGVyKHR5cGUsIHNhbml0aXplS2V5KGtleSksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBzYW5pdGl6ZUtleShrZXkpIHtcbiAgICAgICAgaWYgKGtleSA9PT0gJ19fcHJvdG9fXycpXG4gICAgICAgICAgICByZXR1cm4gJ19fX3Byb3RvX19fJztcbiAgICAgICAgcmV0dXJuIGtleTtcbiAgICB9XG4gICAgZnVuY3Rpb24gZGVsZXRlRnJvbVBhcnNlckhpbnRPYmplY3Qob3B0aW9uS2V5KSB7XG4gICAgICAgIG9iamVjdEtleXMob3B0aW9ucykuZm9yRWFjaCgoaGludEtleSkgPT4ge1xuICAgICAgICAgICAgaWYgKCgoa2V5KSA9PiBrZXkgPT09ICdjb25maWdPYmplY3RzJykoaGludEtleSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgaGludCA9IG9wdGlvbnNbaGludEtleV07XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShoaW50KSkge1xuICAgICAgICAgICAgICAgIGlmICh+aGludC5pbmRleE9mKG9wdGlvbktleSkpXG4gICAgICAgICAgICAgICAgICAgIGhpbnQuc3BsaWNlKGhpbnQuaW5kZXhPZihvcHRpb25LZXkpLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKHR5cGVvZiBoaW50ID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgIGRlbGV0ZSBoaW50W29wdGlvbktleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBkZWxldGUgdXNhZ2UkMS5nZXREZXNjcmlwdGlvbnMoKVtvcHRpb25LZXldO1xuICAgIH1cbiAgICBzZWxmLmNvbmZpZyA9IGZ1bmN0aW9uIGNvbmZpZyhrZXkgPSAnY29uZmlnJywgbXNnLCBwYXJzZUZuKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tvYmplY3R8c3RyaW5nXSBbc3RyaW5nfGZ1bmN0aW9uXSBbZnVuY3Rpb25dJywgW2tleSwgbXNnLCBwYXJzZUZuXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShrZXkpKSB7XG4gICAgICAgICAgICBrZXkgPSBhcHBseUV4dGVuZHMoa2V5LCBjd2QsIHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbigpWydkZWVwLW1lcmdlLWNvbmZpZyddIHx8IGZhbHNlLCBzaGltJDEpO1xuICAgICAgICAgICAgb3B0aW9ucy5jb25maWdPYmplY3RzID0gKG9wdGlvbnMuY29uZmlnT2JqZWN0cyB8fCBbXSkuY29uY2F0KGtleSk7XG4gICAgICAgICAgICByZXR1cm4gc2VsZjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIG1zZyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcGFyc2VGbiA9IG1zZztcbiAgICAgICAgICAgIG1zZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBzZWxmLmRlc2NyaWJlKGtleSwgbXNnIHx8IHVzYWdlJDEuZGVmZXJZMThuTG9va3VwKCdQYXRoIHRvIEpTT04gY29uZmlnIGZpbGUnKSk7XG4gICAgICAgIChBcnJheS5pc0FycmF5KGtleSkgPyBrZXkgOiBba2V5XSkuZm9yRWFjaChrID0+IHtcbiAgICAgICAgICAgIG9wdGlvbnMuY29uZmlnW2tdID0gcGFyc2VGbiB8fCB0cnVlO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmV4YW1wbGUgPSBmdW5jdGlvbiAoY21kLCBkZXNjcmlwdGlvbikge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfGFycmF5PiBbc3RyaW5nXScsIFtjbWQsIGRlc2NyaXB0aW9uXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNtZCkpIHtcbiAgICAgICAgICAgIGNtZC5mb3JFYWNoKGV4YW1wbGVQYXJhbXMgPT4gc2VsZi5leGFtcGxlKC4uLmV4YW1wbGVQYXJhbXMpKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHVzYWdlJDEuZXhhbXBsZShjbWQsIGRlc2NyaXB0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuY29tbWFuZCA9IGZ1bmN0aW9uIChjbWQsIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyLCBtaWRkbGV3YXJlcywgZGVwcmVjYXRlZCkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfGFycmF5fG9iamVjdD4gW3N0cmluZ3xib29sZWFuXSBbZnVuY3Rpb258b2JqZWN0XSBbZnVuY3Rpb25dIFthcnJheV0gW2Jvb2xlYW58c3RyaW5nXScsIFtjbWQsIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyLCBtaWRkbGV3YXJlcywgZGVwcmVjYXRlZF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBjb21tYW5kJDEuYWRkSGFuZGxlcihjbWQsIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyLCBtaWRkbGV3YXJlcywgZGVwcmVjYXRlZCk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5jb21tYW5kRGlyID0gZnVuY3Rpb24gKGRpciwgb3B0cykge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nPiBbb2JqZWN0XScsIFtkaXIsIG9wdHNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgY29uc3QgcmVxID0gcGFyZW50UmVxdWlyZSB8fCBzaGltJDEucmVxdWlyZTtcbiAgICAgICAgY29tbWFuZCQxLmFkZERpcmVjdG9yeShkaXIsIHNlbGYuZ2V0Q29udGV4dCgpLCByZXEsIHNoaW0kMS5nZXRDYWxsZXJGaWxlKCksIG9wdHMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZGVtYW5kID0gc2VsZi5yZXF1aXJlZCA9IHNlbGYucmVxdWlyZSA9IGZ1bmN0aW9uIGRlbWFuZChrZXlzLCBtYXgsIG1zZykge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShtYXgpKSB7XG4gICAgICAgICAgICBtYXguZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKG1zZywgdHJ1ZSwgc2hpbSQxKTtcbiAgICAgICAgICAgICAgICBkZW1hbmRPcHRpb24oa2V5LCBtc2cpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBtYXggPSBJbmZpbml0eTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgbWF4ICE9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgbXNnID0gbWF4O1xuICAgICAgICAgICAgbWF4ID0gSW5maW5pdHk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBrZXlzID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwobXNnLCB0cnVlLCBzaGltJDEpO1xuICAgICAgICAgICAgc2VsZi5kZW1hbmRDb21tYW5kKGtleXMsIG1heCwgbXNnLCBtc2cpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoa2V5cykpIHtcbiAgICAgICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgICAgIGFzc2VydE5vdFN0cmljdEVxdWFsKG1zZywgdHJ1ZSwgc2hpbSQxKTtcbiAgICAgICAgICAgICAgICBkZW1hbmRPcHRpb24oa2V5LCBtc2cpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIG1zZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBkZW1hbmRPcHRpb24oa2V5cywgbXNnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKG1zZyA9PT0gdHJ1ZSB8fCB0eXBlb2YgbXNnID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICAgIGRlbWFuZE9wdGlvbihrZXlzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZGVtYW5kQ29tbWFuZCA9IGZ1bmN0aW9uIGRlbWFuZENvbW1hbmQobWluID0gMSwgbWF4LCBtaW5Nc2csIG1heE1zZykge1xuICAgICAgICBhcmdzZXJ0KCdbbnVtYmVyXSBbbnVtYmVyfHN0cmluZ10gW3N0cmluZ3xudWxsfHVuZGVmaW5lZF0gW3N0cmluZ3xudWxsfHVuZGVmaW5lZF0nLCBbbWluLCBtYXgsIG1pbk1zZywgbWF4TXNnXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICh0eXBlb2YgbWF4ICE9PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgbWluTXNnID0gbWF4O1xuICAgICAgICAgICAgbWF4ID0gSW5maW5pdHk7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZi5nbG9iYWwoJ18nLCBmYWxzZSk7XG4gICAgICAgIG9wdGlvbnMuZGVtYW5kZWRDb21tYW5kcy5fID0ge1xuICAgICAgICAgICAgbWluLFxuICAgICAgICAgICAgbWF4LFxuICAgICAgICAgICAgbWluTXNnLFxuICAgICAgICAgICAgbWF4TXNnLFxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0RGVtYW5kZWRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgICBhcmdzZXJ0KFtdLCAwKTtcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZGVtYW5kZWRPcHRpb25zO1xuICAgIH07XG4gICAgc2VsZi5nZXREZW1hbmRlZENvbW1hbmRzID0gKCkgPT4ge1xuICAgICAgICBhcmdzZXJ0KFtdLCAwKTtcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuZGVtYW5kZWRDb21tYW5kcztcbiAgICB9O1xuICAgIHNlbGYuZGVwcmVjYXRlT3B0aW9uID0gZnVuY3Rpb24gZGVwcmVjYXRlT3B0aW9uKG9wdGlvbiwgbWVzc2FnZSkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nPiBbc3RyaW5nfGJvb2xlYW5dJywgW29wdGlvbiwgbWVzc2FnZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBvcHRpb25zLmRlcHJlY2F0ZWRPcHRpb25zW29wdGlvbl0gPSBtZXNzYWdlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0RGVwcmVjYXRlZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICAgIGFyZ3NlcnQoW10sIDApO1xuICAgICAgICByZXR1cm4gb3B0aW9ucy5kZXByZWNhdGVkT3B0aW9ucztcbiAgICB9O1xuICAgIHNlbGYuaW1wbGllcyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8b2JqZWN0PiBbbnVtYmVyfHN0cmluZ3xhcnJheV0nLCBba2V5LCB2YWx1ZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICB2YWxpZGF0aW9uJDEuaW1wbGllcyhrZXksIHZhbHVlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmNvbmZsaWN0cyA9IGZ1bmN0aW9uIChrZXkxLCBrZXkyKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8b2JqZWN0PiBbc3RyaW5nfGFycmF5XScsIFtrZXkxLCBrZXkyXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5jb25mbGljdHMoa2V5MSwga2V5Mik7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi51c2FnZSA9IGZ1bmN0aW9uIChtc2csIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmd8bnVsbHx1bmRlZmluZWQ+IFtzdHJpbmd8Ym9vbGVhbl0gW2Z1bmN0aW9ufG9iamVjdF0gW2Z1bmN0aW9uXScsIFttc2csIGRlc2NyaXB0aW9uLCBidWlsZGVyLCBoYW5kbGVyXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmIChkZXNjcmlwdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBhc3NlcnROb3RTdHJpY3RFcXVhbChtc2csIG51bGwsIHNoaW0kMSk7XG4gICAgICAgICAgICBpZiAoKG1zZyB8fCAnJykubWF0Y2goL15cXCQwKCB8JCkvKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLmNvbW1hbmQobXNnLCBkZXNjcmlwdGlvbiwgYnVpbGRlciwgaGFuZGxlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgWUVycm9yKCcudXNhZ2UoKSBkZXNjcmlwdGlvbiBtdXN0IHN0YXJ0IHdpdGggJDAgaWYgYmVpbmcgdXNlZCBhcyBhbGlhcyBmb3IgLmNvbW1hbmQoKScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdXNhZ2UkMS51c2FnZShtc2cpO1xuICAgICAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHNlbGYuZXBpbG9ndWUgPSBzZWxmLmVwaWxvZyA9IGZ1bmN0aW9uIChtc2cpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZz4nLCBbbXNnXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHVzYWdlJDEuZXBpbG9nKG1zZyk7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5mYWlsID0gZnVuY3Rpb24gKGYpIHtcbiAgICAgICAgYXJnc2VydCgnPGZ1bmN0aW9uPicsIFtmXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHVzYWdlJDEuZmFpbEZuKGYpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYub25GaW5pc2hDb21tYW5kID0gZnVuY3Rpb24gKGYpIHtcbiAgICAgICAgYXJnc2VydCgnPGZ1bmN0aW9uPicsIFtmXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGhhbmRsZXJGaW5pc2hDb21tYW5kID0gZjtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdldEhhbmRsZXJGaW5pc2hDb21tYW5kID0gKCkgPT4gaGFuZGxlckZpbmlzaENvbW1hbmQ7XG4gICAgc2VsZi5jaGVjayA9IGZ1bmN0aW9uIChmLCBfZ2xvYmFsKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxmdW5jdGlvbj4gW2Jvb2xlYW5dJywgW2YsIF9nbG9iYWxdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLmNoZWNrKGYsIF9nbG9iYWwgIT09IGZhbHNlKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdsb2JhbCA9IGZ1bmN0aW9uIGdsb2JhbChnbG9iYWxzLCBnbG9iYWwpIHtcbiAgICAgICAgYXJnc2VydCgnPHN0cmluZ3xhcnJheT4gW2Jvb2xlYW5dJywgW2dsb2JhbHMsIGdsb2JhbF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBnbG9iYWxzID0gW10uY29uY2F0KGdsb2JhbHMpO1xuICAgICAgICBpZiAoZ2xvYmFsICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgb3B0aW9ucy5sb2NhbCA9IG9wdGlvbnMubG9jYWwuZmlsdGVyKGwgPT4gZ2xvYmFscy5pbmRleE9mKGwpID09PSAtMSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBnbG9iYWxzLmZvckVhY2goZyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMubG9jYWwuaW5kZXhPZihnKSA9PT0gLTEpXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMubG9jYWwucHVzaChnKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5wa2dDb25mID0gZnVuY3Rpb24gcGtnQ29uZihrZXksIHJvb3RQYXRoKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmc+IFtzdHJpbmddJywgW2tleSwgcm9vdFBhdGhdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgbGV0IGNvbmYgPSBudWxsO1xuICAgICAgICBjb25zdCBvYmogPSBwa2dVcChyb290UGF0aCB8fCBjd2QpO1xuICAgICAgICBpZiAob2JqW2tleV0gJiYgdHlwZW9mIG9ialtrZXldID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgY29uZiA9IGFwcGx5RXh0ZW5kcyhvYmpba2V5XSwgcm9vdFBhdGggfHwgY3dkLCBzZWxmLmdldFBhcnNlckNvbmZpZ3VyYXRpb24oKVsnZGVlcC1tZXJnZS1jb25maWcnXSB8fCBmYWxzZSwgc2hpbSQxKTtcbiAgICAgICAgICAgIG9wdGlvbnMuY29uZmlnT2JqZWN0cyA9IChvcHRpb25zLmNvbmZpZ09iamVjdHMgfHwgW10pLmNvbmNhdChjb25mKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGNvbnN0IHBrZ3MgPSB7fTtcbiAgICBmdW5jdGlvbiBwa2dVcChyb290UGF0aCkge1xuICAgICAgICBjb25zdCBucGF0aCA9IHJvb3RQYXRoIHx8ICcqJztcbiAgICAgICAgaWYgKHBrZ3NbbnBhdGhdKVxuICAgICAgICAgICAgcmV0dXJuIHBrZ3NbbnBhdGhdO1xuICAgICAgICBsZXQgb2JqID0ge307XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBsZXQgc3RhcnREaXIgPSByb290UGF0aCB8fCBzaGltJDEubWFpbkZpbGVuYW1lO1xuICAgICAgICAgICAgaWYgKCFyb290UGF0aCAmJiBzaGltJDEucGF0aC5leHRuYW1lKHN0YXJ0RGlyKSkge1xuICAgICAgICAgICAgICAgIHN0YXJ0RGlyID0gc2hpbSQxLnBhdGguZGlybmFtZShzdGFydERpcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBwa2dKc29uUGF0aCA9IHNoaW0kMS5maW5kVXAoc3RhcnREaXIsIChkaXIsIG5hbWVzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG5hbWVzLmluY2x1ZGVzKCdwYWNrYWdlLmpzb24nKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3BhY2thZ2UuanNvbic7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgYXNzZXJ0Tm90U3RyaWN0RXF1YWwocGtnSnNvblBhdGgsIHVuZGVmaW5lZCwgc2hpbSQxKTtcbiAgICAgICAgICAgIG9iaiA9IEpTT04ucGFyc2Uoc2hpbSQxLnJlYWRGaWxlU3luYyhwa2dKc29uUGF0aCwgJ3V0ZjgnKSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKF9ub29wKSB7IH1cbiAgICAgICAgcGtnc1tucGF0aF0gPSBvYmogfHwge307XG4gICAgICAgIHJldHVybiBwa2dzW25wYXRoXTtcbiAgICB9XG4gICAgbGV0IHBhcnNlRm4gPSBudWxsO1xuICAgIGxldCBwYXJzZUNvbnRleHQgPSBudWxsO1xuICAgIHNlbGYucGFyc2UgPSBmdW5jdGlvbiBwYXJzZShhcmdzLCBzaG9ydENpcmN1aXQsIF9wYXJzZUZuKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmd8YXJyYXldIFtmdW5jdGlvbnxib29sZWFufG9iamVjdF0gW2Z1bmN0aW9uXScsIFthcmdzLCBzaG9ydENpcmN1aXQsIF9wYXJzZUZuXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGZyZWV6ZSgpO1xuICAgICAgICBpZiAodHlwZW9mIGFyZ3MgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjb25zdCBhcmd2ID0gc2VsZi5fcGFyc2VBcmdzKHByb2Nlc3NBcmdzKTtcbiAgICAgICAgICAgIGNvbnN0IHRtcFBhcnNlZCA9IHNlbGYucGFyc2VkO1xuICAgICAgICAgICAgdW5mcmVlemUoKTtcbiAgICAgICAgICAgIHNlbGYucGFyc2VkID0gdG1wUGFyc2VkO1xuICAgICAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBzaG9ydENpcmN1aXQgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBwYXJzZUNvbnRleHQgPSBzaG9ydENpcmN1aXQ7XG4gICAgICAgICAgICBzaG9ydENpcmN1aXQgPSBfcGFyc2VGbjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHNob3J0Q2lyY3VpdCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcGFyc2VGbiA9IHNob3J0Q2lyY3VpdDtcbiAgICAgICAgICAgIHNob3J0Q2lyY3VpdCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghc2hvcnRDaXJjdWl0KVxuICAgICAgICAgICAgcHJvY2Vzc0FyZ3MgPSBhcmdzO1xuICAgICAgICBpZiAocGFyc2VGbilcbiAgICAgICAgICAgIGV4aXRQcm9jZXNzID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IHNlbGYuX3BhcnNlQXJncyhhcmdzLCAhIXNob3J0Q2lyY3VpdCk7XG4gICAgICAgIGNvbXBsZXRpb24kMS5zZXRQYXJzZWQoc2VsZi5wYXJzZWQpO1xuICAgICAgICBpZiAocGFyc2VGbilcbiAgICAgICAgICAgIHBhcnNlRm4oZXhpdEVycm9yLCBwYXJzZWQsIG91dHB1dCk7XG4gICAgICAgIHVuZnJlZXplKCk7XG4gICAgICAgIHJldHVybiBwYXJzZWQ7XG4gICAgfTtcbiAgICBzZWxmLl9nZXRQYXJzZUNvbnRleHQgPSAoKSA9PiBwYXJzZUNvbnRleHQgfHwge307XG4gICAgc2VsZi5faGFzUGFyc2VDYWxsYmFjayA9ICgpID0+ICEhcGFyc2VGbjtcbiAgICBzZWxmLm9wdGlvbiA9IHNlbGYub3B0aW9ucyA9IGZ1bmN0aW9uIG9wdGlvbihrZXksIG9wdCkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfG9iamVjdD4gW29iamVjdF0nLCBba2V5LCBvcHRdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHR5cGVvZiBrZXkgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhrZXkpLmZvckVhY2goayA9PiB7XG4gICAgICAgICAgICAgICAgc2VsZi5vcHRpb25zKGssIGtleVtrXSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygb3B0ICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgIG9wdCA9IHt9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb3B0aW9ucy5rZXlba2V5XSA9IHRydWU7XG4gICAgICAgICAgICBpZiAob3B0LmFsaWFzKVxuICAgICAgICAgICAgICAgIHNlbGYuYWxpYXMoa2V5LCBvcHQuYWxpYXMpO1xuICAgICAgICAgICAgY29uc3QgZGVwcmVjYXRlID0gb3B0LmRlcHJlY2F0ZSB8fCBvcHQuZGVwcmVjYXRlZDtcbiAgICAgICAgICAgIGlmIChkZXByZWNhdGUpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlcHJlY2F0ZU9wdGlvbihrZXksIGRlcHJlY2F0ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBkZW1hbmQgPSBvcHQuZGVtYW5kIHx8IG9wdC5yZXF1aXJlZCB8fCBvcHQucmVxdWlyZTtcbiAgICAgICAgICAgIGlmIChkZW1hbmQpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmRlbWFuZChrZXksIGRlbWFuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmRlbWFuZE9wdGlvbikge1xuICAgICAgICAgICAgICAgIHNlbGYuZGVtYW5kT3B0aW9uKGtleSwgdHlwZW9mIG9wdC5kZW1hbmRPcHRpb24gPT09ICdzdHJpbmcnID8gb3B0LmRlbWFuZE9wdGlvbiA6IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvbmZsaWN0cykge1xuICAgICAgICAgICAgICAgIHNlbGYuY29uZmxpY3RzKGtleSwgb3B0LmNvbmZsaWN0cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoJ2RlZmF1bHQnIGluIG9wdCkge1xuICAgICAgICAgICAgICAgIHNlbGYuZGVmYXVsdChrZXksIG9wdC5kZWZhdWx0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChvcHQuaW1wbGllcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5pbXBsaWVzKGtleSwgb3B0LmltcGxpZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdC5uYXJncyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5uYXJncyhrZXksIG9wdC5uYXJncyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvbmZpZykge1xuICAgICAgICAgICAgICAgIHNlbGYuY29uZmlnKGtleSwgb3B0LmNvbmZpZ1BhcnNlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0Lm5vcm1hbGl6ZSkge1xuICAgICAgICAgICAgICAgIHNlbGYubm9ybWFsaXplKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNob2ljZXMpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmNob2ljZXMoa2V5LCBvcHQuY2hvaWNlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvZXJjZSkge1xuICAgICAgICAgICAgICAgIHNlbGYuY29lcmNlKGtleSwgb3B0LmNvZXJjZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0Lmdyb3VwKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5ncm91cChrZXksIG9wdC5ncm91cCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmJvb2xlYW4gfHwgb3B0LnR5cGUgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgICAgIHNlbGYuYm9vbGVhbihrZXkpO1xuICAgICAgICAgICAgICAgIGlmIChvcHQuYWxpYXMpXG4gICAgICAgICAgICAgICAgICAgIHNlbGYuYm9vbGVhbihvcHQuYWxpYXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdC5hcnJheSB8fCBvcHQudHlwZSA9PT0gJ2FycmF5Jykge1xuICAgICAgICAgICAgICAgIHNlbGYuYXJyYXkoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAob3B0LmFsaWFzKVxuICAgICAgICAgICAgICAgICAgICBzZWxmLmFycmF5KG9wdC5hbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0Lm51bWJlciB8fCBvcHQudHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICBzZWxmLm51bWJlcihrZXkpO1xuICAgICAgICAgICAgICAgIGlmIChvcHQuYWxpYXMpXG4gICAgICAgICAgICAgICAgICAgIHNlbGYubnVtYmVyKG9wdC5hbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LnN0cmluZyB8fCBvcHQudHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBzZWxmLnN0cmluZyhrZXkpO1xuICAgICAgICAgICAgICAgIGlmIChvcHQuYWxpYXMpXG4gICAgICAgICAgICAgICAgICAgIHNlbGYuc3RyaW5nKG9wdC5hbGlhcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LmNvdW50IHx8IG9wdC50eXBlID09PSAnY291bnQnKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5jb3VudChrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBvcHQuZ2xvYmFsID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgICAgICBzZWxmLmdsb2JhbChrZXksIG9wdC5nbG9iYWwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG9wdC5kZWZhdWx0RGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLmRlZmF1bHREZXNjcmlwdGlvbltrZXldID0gb3B0LmRlZmF1bHREZXNjcmlwdGlvbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChvcHQuc2tpcFZhbGlkYXRpb24pIHtcbiAgICAgICAgICAgICAgICBzZWxmLnNraXBWYWxpZGF0aW9uKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBkZXNjID0gb3B0LmRlc2NyaWJlIHx8IG9wdC5kZXNjcmlwdGlvbiB8fCBvcHQuZGVzYztcbiAgICAgICAgICAgIHNlbGYuZGVzY3JpYmUoa2V5LCBkZXNjKTtcbiAgICAgICAgICAgIGlmIChvcHQuaGlkZGVuKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5oaWRlKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAob3B0LnJlcXVpcmVzQXJnKSB7XG4gICAgICAgICAgICAgICAgc2VsZi5yZXF1aXJlc0FyZyhrZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5nZXRPcHRpb25zID0gKCkgPT4gb3B0aW9ucztcbiAgICBzZWxmLnBvc2l0aW9uYWwgPSBmdW5jdGlvbiAoa2V5LCBvcHRzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmc+IDxvYmplY3Q+JywgW2tleSwgb3B0c10sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBpZiAoY29udGV4dC5yZXNldHMgPT09IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBZRXJyb3IoXCIucG9zaXRpb25hbCgpIGNhbiBvbmx5IGJlIGNhbGxlZCBpbiBhIGNvbW1hbmQncyBidWlsZGVyIGZ1bmN0aW9uXCIpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHN1cHBvcnRlZE9wdHMgPSBbXG4gICAgICAgICAgICAnZGVmYXVsdCcsXG4gICAgICAgICAgICAnZGVmYXVsdERlc2NyaXB0aW9uJyxcbiAgICAgICAgICAgICdpbXBsaWVzJyxcbiAgICAgICAgICAgICdub3JtYWxpemUnLFxuICAgICAgICAgICAgJ2Nob2ljZXMnLFxuICAgICAgICAgICAgJ2NvbmZsaWN0cycsXG4gICAgICAgICAgICAnY29lcmNlJyxcbiAgICAgICAgICAgICd0eXBlJyxcbiAgICAgICAgICAgICdkZXNjcmliZScsXG4gICAgICAgICAgICAnZGVzYycsXG4gICAgICAgICAgICAnZGVzY3JpcHRpb24nLFxuICAgICAgICAgICAgJ2FsaWFzJyxcbiAgICAgICAgXTtcbiAgICAgICAgb3B0cyA9IG9iakZpbHRlcihvcHRzLCAoaywgdikgPT4ge1xuICAgICAgICAgICAgbGV0IGFjY2VwdCA9IHN1cHBvcnRlZE9wdHMuaW5kZXhPZihrKSAhPT0gLTE7XG4gICAgICAgICAgICBpZiAoayA9PT0gJ3R5cGUnICYmIFsnc3RyaW5nJywgJ251bWJlcicsICdib29sZWFuJ10uaW5kZXhPZih2KSA9PT0gLTEpXG4gICAgICAgICAgICAgICAgYWNjZXB0ID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gYWNjZXB0O1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgZnVsbENvbW1hbmQgPSBjb250ZXh0LmZ1bGxDb21tYW5kc1tjb250ZXh0LmZ1bGxDb21tYW5kcy5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgcGFyc2VPcHRpb25zID0gZnVsbENvbW1hbmRcbiAgICAgICAgICAgID8gY29tbWFuZCQxLmNtZFRvUGFyc2VPcHRpb25zKGZ1bGxDb21tYW5kKVxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgYXJyYXk6IFtdLFxuICAgICAgICAgICAgICAgIGFsaWFzOiB7fSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0OiB7fSxcbiAgICAgICAgICAgICAgICBkZW1hbmQ6IHt9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgb2JqZWN0S2V5cyhwYXJzZU9wdGlvbnMpLmZvckVhY2gocGsgPT4ge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VPcHRpb24gPSBwYXJzZU9wdGlvbnNbcGtdO1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocGFyc2VPcHRpb24pKSB7XG4gICAgICAgICAgICAgICAgaWYgKHBhcnNlT3B0aW9uLmluZGV4T2Yoa2V5KSAhPT0gLTEpXG4gICAgICAgICAgICAgICAgICAgIG9wdHNbcGtdID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChwYXJzZU9wdGlvbltrZXldICYmICEocGsgaW4gb3B0cykpXG4gICAgICAgICAgICAgICAgICAgIG9wdHNbcGtdID0gcGFyc2VPcHRpb25ba2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHNlbGYuZ3JvdXAoa2V5LCB1c2FnZSQxLmdldFBvc2l0aW9uYWxHcm91cE5hbWUoKSk7XG4gICAgICAgIHJldHVybiBzZWxmLm9wdGlvbihrZXksIG9wdHMpO1xuICAgIH07XG4gICAgc2VsZi5ncm91cCA9IGZ1bmN0aW9uIGdyb3VwKG9wdHMsIGdyb3VwTmFtZSkge1xuICAgICAgICBhcmdzZXJ0KCc8c3RyaW5nfGFycmF5PiA8c3RyaW5nPicsIFtvcHRzLCBncm91cE5hbWVdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgY29uc3QgZXhpc3RpbmcgPSBwcmVzZXJ2ZWRHcm91cHNbZ3JvdXBOYW1lXSB8fCBncm91cHNbZ3JvdXBOYW1lXTtcbiAgICAgICAgaWYgKHByZXNlcnZlZEdyb3Vwc1tncm91cE5hbWVdKSB7XG4gICAgICAgICAgICBkZWxldGUgcHJlc2VydmVkR3JvdXBzW2dyb3VwTmFtZV07XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2VlbiA9IHt9O1xuICAgICAgICBncm91cHNbZ3JvdXBOYW1lXSA9IChleGlzdGluZyB8fCBbXSkuY29uY2F0KG9wdHMpLmZpbHRlcihrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKHNlZW5ba2V5XSlcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gKHNlZW5ba2V5XSA9IHRydWUpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdldEdyb3VwcyA9ICgpID0+IE9iamVjdC5hc3NpZ24oe30sIGdyb3VwcywgcHJlc2VydmVkR3JvdXBzKTtcbiAgICBzZWxmLmVudiA9IGZ1bmN0aW9uIChwcmVmaXgpIHtcbiAgICAgICAgYXJnc2VydCgnW3N0cmluZ3xib29sZWFuXScsIFtwcmVmaXhdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHByZWZpeCA9PT0gZmFsc2UpXG4gICAgICAgICAgICBkZWxldGUgb3B0aW9ucy5lbnZQcmVmaXg7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIG9wdGlvbnMuZW52UHJlZml4ID0gcHJlZml4IHx8ICcnO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYud3JhcCA9IGZ1bmN0aW9uIChjb2xzKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxudW1iZXJ8bnVsbHx1bmRlZmluZWQ+JywgW2NvbHNdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgdXNhZ2UkMS53cmFwKGNvbHMpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGxldCBzdHJpY3QgPSBmYWxzZTtcbiAgICBzZWxmLnN0cmljdCA9IGZ1bmN0aW9uIChlbmFibGVkKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFuXScsIFtlbmFibGVkXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHN0cmljdCA9IGVuYWJsZWQgIT09IGZhbHNlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0U3RyaWN0ID0gKCkgPT4gc3RyaWN0O1xuICAgIGxldCBzdHJpY3RDb21tYW5kcyA9IGZhbHNlO1xuICAgIHNlbGYuc3RyaWN0Q29tbWFuZHMgPSBmdW5jdGlvbiAoZW5hYmxlZCkge1xuICAgICAgICBhcmdzZXJ0KCdbYm9vbGVhbl0nLCBbZW5hYmxlZF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBzdHJpY3RDb21tYW5kcyA9IGVuYWJsZWQgIT09IGZhbHNlO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0U3RyaWN0Q29tbWFuZHMgPSAoKSA9PiBzdHJpY3RDb21tYW5kcztcbiAgICBsZXQgc3RyaWN0T3B0aW9ucyA9IGZhbHNlO1xuICAgIHNlbGYuc3RyaWN0T3B0aW9ucyA9IGZ1bmN0aW9uIChlbmFibGVkKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFuXScsIFtlbmFibGVkXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIHN0cmljdE9wdGlvbnMgPSBlbmFibGVkICE9PSBmYWxzZTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBzZWxmLmdldFN0cmljdE9wdGlvbnMgPSAoKSA9PiBzdHJpY3RPcHRpb25zO1xuICAgIGxldCBwYXJzZXJDb25maWcgPSB7fTtcbiAgICBzZWxmLnBhcnNlckNvbmZpZ3VyYXRpb24gPSBmdW5jdGlvbiBwYXJzZXJDb25maWd1cmF0aW9uKGNvbmZpZykge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0PicsIFtjb25maWddLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcGFyc2VyQ29uZmlnID0gY29uZmlnO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbiA9ICgpID0+IHBhcnNlckNvbmZpZztcbiAgICBzZWxmLnNob3dIZWxwID0gZnVuY3Rpb24gKGxldmVsKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmd8ZnVuY3Rpb25dJywgW2xldmVsXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmICghc2VsZi5wYXJzZWQpXG4gICAgICAgICAgICBzZWxmLl9wYXJzZUFyZ3MocHJvY2Vzc0FyZ3MpO1xuICAgICAgICBpZiAoY29tbWFuZCQxLmhhc0RlZmF1bHRDb21tYW5kKCkpIHtcbiAgICAgICAgICAgIGNvbnRleHQucmVzZXRzKys7XG4gICAgICAgICAgICBjb21tYW5kJDEucnVuRGVmYXVsdEJ1aWxkZXJPbihzZWxmKTtcbiAgICAgICAgfVxuICAgICAgICB1c2FnZSQxLnNob3dIZWxwKGxldmVsKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBsZXQgdmVyc2lvbk9wdCA9IG51bGw7XG4gICAgc2VsZi52ZXJzaW9uID0gZnVuY3Rpb24gdmVyc2lvbihvcHQsIG1zZywgdmVyKSB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRWZXJzaW9uT3B0ID0gJ3ZlcnNpb24nO1xuICAgICAgICBhcmdzZXJ0KCdbYm9vbGVhbnxzdHJpbmddIFtzdHJpbmddIFtzdHJpbmddJywgW29wdCwgbXNnLCB2ZXJdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHZlcnNpb25PcHQpIHtcbiAgICAgICAgICAgIGRlbGV0ZUZyb21QYXJzZXJIaW50T2JqZWN0KHZlcnNpb25PcHQpO1xuICAgICAgICAgICAgdXNhZ2UkMS52ZXJzaW9uKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB2ZXJzaW9uT3B0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdmVyID0gZ3Vlc3NWZXJzaW9uKCk7XG4gICAgICAgICAgICBvcHQgPSBkZWZhdWx0VmVyc2lvbk9wdDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBpZiAob3B0ID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmVyID0gb3B0O1xuICAgICAgICAgICAgb3B0ID0gZGVmYXVsdFZlcnNpb25PcHQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICAgICAgdmVyID0gbXNnO1xuICAgICAgICAgICAgbXNnID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHZlcnNpb25PcHQgPSB0eXBlb2Ygb3B0ID09PSAnc3RyaW5nJyA/IG9wdCA6IGRlZmF1bHRWZXJzaW9uT3B0O1xuICAgICAgICBtc2cgPSBtc2cgfHwgdXNhZ2UkMS5kZWZlclkxOG5Mb29rdXAoJ1Nob3cgdmVyc2lvbiBudW1iZXInKTtcbiAgICAgICAgdXNhZ2UkMS52ZXJzaW9uKHZlciB8fCB1bmRlZmluZWQpO1xuICAgICAgICBzZWxmLmJvb2xlYW4odmVyc2lvbk9wdCk7XG4gICAgICAgIHNlbGYuZGVzY3JpYmUodmVyc2lvbk9wdCwgbXNnKTtcbiAgICAgICAgcmV0dXJuIHNlbGY7XG4gICAgfTtcbiAgICBmdW5jdGlvbiBndWVzc1ZlcnNpb24oKSB7XG4gICAgICAgIGNvbnN0IG9iaiA9IHBrZ1VwKCk7XG4gICAgICAgIHJldHVybiBvYmoudmVyc2lvbiB8fCAndW5rbm93bic7XG4gICAgfVxuICAgIGxldCBoZWxwT3B0ID0gbnVsbDtcbiAgICBzZWxmLmFkZEhlbHBPcHQgPSBzZWxmLmhlbHAgPSBmdW5jdGlvbiBhZGRIZWxwT3B0KG9wdCwgbXNnKSB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRIZWxwT3B0ID0gJ2hlbHAnO1xuICAgICAgICBhcmdzZXJ0KCdbc3RyaW5nfGJvb2xlYW5dIFtzdHJpbmddJywgW29wdCwgbXNnXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGlmIChoZWxwT3B0KSB7XG4gICAgICAgICAgICBkZWxldGVGcm9tUGFyc2VySGludE9iamVjdChoZWxwT3B0KTtcbiAgICAgICAgICAgIGhlbHBPcHQgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBpZiAob3B0ID09PSBmYWxzZSlcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VsZjtcbiAgICAgICAgfVxuICAgICAgICBoZWxwT3B0ID0gdHlwZW9mIG9wdCA9PT0gJ3N0cmluZycgPyBvcHQgOiBkZWZhdWx0SGVscE9wdDtcbiAgICAgICAgc2VsZi5ib29sZWFuKGhlbHBPcHQpO1xuICAgICAgICBzZWxmLmRlc2NyaWJlKGhlbHBPcHQsIG1zZyB8fCB1c2FnZSQxLmRlZmVyWTE4bkxvb2t1cCgnU2hvdyBoZWxwJykpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGNvbnN0IGRlZmF1bHRTaG93SGlkZGVuT3B0ID0gJ3Nob3ctaGlkZGVuJztcbiAgICBvcHRpb25zLnNob3dIaWRkZW5PcHQgPSBkZWZhdWx0U2hvd0hpZGRlbk9wdDtcbiAgICBzZWxmLmFkZFNob3dIaWRkZW5PcHQgPSBzZWxmLnNob3dIaWRkZW4gPSBmdW5jdGlvbiBhZGRTaG93SGlkZGVuT3B0KG9wdCwgbXNnKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmd8Ym9vbGVhbl0gW3N0cmluZ10nLCBbb3B0LCBtc2ddLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIGlmIChvcHQgPT09IGZhbHNlKVxuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNob3dIaWRkZW5PcHQgPSB0eXBlb2Ygb3B0ID09PSAnc3RyaW5nJyA/IG9wdCA6IGRlZmF1bHRTaG93SGlkZGVuT3B0O1xuICAgICAgICBzZWxmLmJvb2xlYW4oc2hvd0hpZGRlbk9wdCk7XG4gICAgICAgIHNlbGYuZGVzY3JpYmUoc2hvd0hpZGRlbk9wdCwgbXNnIHx8IHVzYWdlJDEuZGVmZXJZMThuTG9va3VwKCdTaG93IGhpZGRlbiBvcHRpb25zJykpO1xuICAgICAgICBvcHRpb25zLnNob3dIaWRkZW5PcHQgPSBzaG93SGlkZGVuT3B0O1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuaGlkZSA9IGZ1bmN0aW9uIGhpZGUoa2V5KSB7XG4gICAgICAgIGFyZ3NlcnQoJzxzdHJpbmc+JywgW2tleV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBvcHRpb25zLmhpZGRlbk9wdGlvbnMucHVzaChrZXkpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuc2hvd0hlbHBPbkZhaWwgPSBmdW5jdGlvbiBzaG93SGVscE9uRmFpbChlbmFibGVkLCBtZXNzYWdlKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFufHN0cmluZ10gW3N0cmluZ10nLCBbZW5hYmxlZCwgbWVzc2FnZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICB1c2FnZSQxLnNob3dIZWxwT25GYWlsKGVuYWJsZWQsIG1lc3NhZ2UpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIGxldCBleGl0UHJvY2VzcyA9IHRydWU7XG4gICAgc2VsZi5leGl0UHJvY2VzcyA9IGZ1bmN0aW9uIChlbmFibGVkID0gdHJ1ZSkge1xuICAgICAgICBhcmdzZXJ0KCdbYm9vbGVhbl0nLCBbZW5hYmxlZF0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBleGl0UHJvY2VzcyA9IGVuYWJsZWQ7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5nZXRFeGl0UHJvY2VzcyA9ICgpID0+IGV4aXRQcm9jZXNzO1xuICAgIHNlbGYuc2hvd0NvbXBsZXRpb25TY3JpcHQgPSBmdW5jdGlvbiAoJDAsIGNtZCkge1xuICAgICAgICBhcmdzZXJ0KCdbc3RyaW5nXSBbc3RyaW5nXScsIFskMCwgY21kXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgICQwID0gJDAgfHwgc2VsZi4kMDtcbiAgICAgICAgX2xvZ2dlci5sb2coY29tcGxldGlvbiQxLmdlbmVyYXRlQ29tcGxldGlvblNjcmlwdCgkMCwgY21kIHx8IGNvbXBsZXRpb25Db21tYW5kIHx8ICdjb21wbGV0aW9uJykpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0Q29tcGxldGlvbiA9IGZ1bmN0aW9uIChhcmdzLCBkb25lKSB7XG4gICAgICAgIGFyZ3NlcnQoJzxhcnJheT4gPGZ1bmN0aW9uPicsIFthcmdzLCBkb25lXSwgYXJndW1lbnRzLmxlbmd0aCk7XG4gICAgICAgIGNvbXBsZXRpb24kMS5nZXRDb21wbGV0aW9uKGFyZ3MsIGRvbmUpO1xuICAgIH07XG4gICAgc2VsZi5sb2NhbGUgPSBmdW5jdGlvbiAobG9jYWxlKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tzdHJpbmddJywgW2xvY2FsZV0sIGFyZ3VtZW50cy5sZW5ndGgpO1xuICAgICAgICBpZiAoIWxvY2FsZSkge1xuICAgICAgICAgICAgZ3Vlc3NMb2NhbGUoKTtcbiAgICAgICAgICAgIHJldHVybiB5MThuLmdldExvY2FsZSgpO1xuICAgICAgICB9XG4gICAgICAgIGRldGVjdExvY2FsZSA9IGZhbHNlO1xuICAgICAgICB5MThuLnNldExvY2FsZShsb2NhbGUpO1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYudXBkYXRlU3RyaW5ncyA9IHNlbGYudXBkYXRlTG9jYWxlID0gZnVuY3Rpb24gKG9iaikge1xuICAgICAgICBhcmdzZXJ0KCc8b2JqZWN0PicsIFtvYmpdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgZGV0ZWN0TG9jYWxlID0gZmFsc2U7XG4gICAgICAgIHkxOG4udXBkYXRlTG9jYWxlKG9iaik7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgbGV0IGRldGVjdExvY2FsZSA9IHRydWU7XG4gICAgc2VsZi5kZXRlY3RMb2NhbGUgPSBmdW5jdGlvbiAoZGV0ZWN0KSB7XG4gICAgICAgIGFyZ3NlcnQoJzxib29sZWFuPicsIFtkZXRlY3RdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgZGV0ZWN0TG9jYWxlID0gZGV0ZWN0O1xuICAgICAgICByZXR1cm4gc2VsZjtcbiAgICB9O1xuICAgIHNlbGYuZ2V0RGV0ZWN0TG9jYWxlID0gKCkgPT4gZGV0ZWN0TG9jYWxlO1xuICAgIGNvbnN0IF9sb2dnZXIgPSB7XG4gICAgICAgIGxvZyguLi5hcmdzKSB7XG4gICAgICAgICAgICBpZiAoIXNlbGYuX2hhc1BhcnNlQ2FsbGJhY2soKSlcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyguLi5hcmdzKTtcbiAgICAgICAgICAgIGhhc091dHB1dCA9IHRydWU7XG4gICAgICAgICAgICBpZiAob3V0cHV0Lmxlbmd0aClcbiAgICAgICAgICAgICAgICBvdXRwdXQgKz0gJ1xcbic7XG4gICAgICAgICAgICBvdXRwdXQgKz0gYXJncy5qb2luKCcgJyk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yKC4uLmFyZ3MpIHtcbiAgICAgICAgICAgIGlmICghc2VsZi5faGFzUGFyc2VDYWxsYmFjaygpKVxuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoLi4uYXJncyk7XG4gICAgICAgICAgICBoYXNPdXRwdXQgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKG91dHB1dC5sZW5ndGgpXG4gICAgICAgICAgICAgICAgb3V0cHV0ICs9ICdcXG4nO1xuICAgICAgICAgICAgb3V0cHV0ICs9IGFyZ3Muam9pbignICcpO1xuICAgICAgICB9LFxuICAgIH07XG4gICAgc2VsZi5fZ2V0TG9nZ2VySW5zdGFuY2UgPSAoKSA9PiBfbG9nZ2VyO1xuICAgIHNlbGYuX2hhc091dHB1dCA9ICgpID0+IGhhc091dHB1dDtcbiAgICBzZWxmLl9zZXRIYXNPdXRwdXQgPSAoKSA9PiB7XG4gICAgICAgIGhhc091dHB1dCA9IHRydWU7XG4gICAgfTtcbiAgICBsZXQgcmVjb21tZW5kQ29tbWFuZHM7XG4gICAgc2VsZi5yZWNvbW1lbmRDb21tYW5kcyA9IGZ1bmN0aW9uIChyZWNvbW1lbmQgPSB0cnVlKSB7XG4gICAgICAgIGFyZ3NlcnQoJ1tib29sZWFuXScsIFtyZWNvbW1lbmRdLCBhcmd1bWVudHMubGVuZ3RoKTtcbiAgICAgICAgcmVjb21tZW5kQ29tbWFuZHMgPSByZWNvbW1lbmQ7XG4gICAgICAgIHJldHVybiBzZWxmO1xuICAgIH07XG4gICAgc2VsZi5nZXRVc2FnZUluc3RhbmNlID0gKCkgPT4gdXNhZ2UkMTtcbiAgICBzZWxmLmdldFZhbGlkYXRpb25JbnN0YW5jZSA9ICgpID0+IHZhbGlkYXRpb24kMTtcbiAgICBzZWxmLmdldENvbW1hbmRJbnN0YW5jZSA9ICgpID0+IGNvbW1hbmQkMTtcbiAgICBzZWxmLnRlcm1pbmFsV2lkdGggPSAoKSA9PiB7XG4gICAgICAgIGFyZ3NlcnQoW10sIDApO1xuICAgICAgICByZXR1cm4gc2hpbSQxLnByb2Nlc3Muc3RkQ29sdW1ucztcbiAgICB9O1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzZWxmLCAnYXJndicsIHtcbiAgICAgICAgZ2V0OiAoKSA9PiBzZWxmLl9wYXJzZUFyZ3MocHJvY2Vzc0FyZ3MpLFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIH0pO1xuICAgIHNlbGYuX3BhcnNlQXJncyA9IGZ1bmN0aW9uIHBhcnNlQXJncyhhcmdzLCBzaG9ydENpcmN1aXQsIF9jYWxsZWRGcm9tQ29tbWFuZCwgY29tbWFuZEluZGV4KSB7XG4gICAgICAgIGxldCBza2lwVmFsaWRhdGlvbiA9ICEhX2NhbGxlZEZyb21Db21tYW5kO1xuICAgICAgICBhcmdzID0gYXJncyB8fCBwcm9jZXNzQXJncztcbiAgICAgICAgb3B0aW9ucy5fXyA9IHkxOG4uX187XG4gICAgICAgIG9wdGlvbnMuY29uZmlndXJhdGlvbiA9IHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbigpO1xuICAgICAgICBjb25zdCBwb3B1bGF0ZURvdWJsZURhc2ggPSAhIW9wdGlvbnMuY29uZmlndXJhdGlvblsncG9wdWxhdGUtLSddO1xuICAgICAgICBjb25zdCBjb25maWcgPSBPYmplY3QuYXNzaWduKHt9LCBvcHRpb25zLmNvbmZpZ3VyYXRpb24sIHtcbiAgICAgICAgICAgICdwb3B1bGF0ZS0tJzogdHJ1ZSxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IHNoaW0kMS5QYXJzZXIuZGV0YWlsZWQoYXJncywgT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucywge1xuICAgICAgICAgICAgY29uZmlndXJhdGlvbjogT2JqZWN0LmFzc2lnbih7ICdwYXJzZS1wb3NpdGlvbmFsLW51bWJlcnMnOiBmYWxzZSB9LCBjb25maWcpLFxuICAgICAgICB9KSk7XG4gICAgICAgIGxldCBhcmd2ID0gcGFyc2VkLmFyZ3Y7XG4gICAgICAgIGlmIChwYXJzZUNvbnRleHQpXG4gICAgICAgICAgICBhcmd2ID0gT2JqZWN0LmFzc2lnbih7fSwgYXJndiwgcGFyc2VDb250ZXh0KTtcbiAgICAgICAgY29uc3QgYWxpYXNlcyA9IHBhcnNlZC5hbGlhc2VzO1xuICAgICAgICBhcmd2LiQwID0gc2VsZi4kMDtcbiAgICAgICAgc2VsZi5wYXJzZWQgPSBwYXJzZWQ7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBndWVzc0xvY2FsZSgpO1xuICAgICAgICAgICAgaWYgKHNob3J0Q2lyY3VpdCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9wb3N0UHJvY2Vzcyhhcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gsIF9jYWxsZWRGcm9tQ29tbWFuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGVscE9wdCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlbHBDbWRzID0gW2hlbHBPcHRdXG4gICAgICAgICAgICAgICAgICAgIC5jb25jYXQoYWxpYXNlc1toZWxwT3B0XSB8fCBbXSlcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihrID0+IGsubGVuZ3RoID4gMSk7XG4gICAgICAgICAgICAgICAgaWYgKH5oZWxwQ21kcy5pbmRleE9mKCcnICsgYXJndi5fW2FyZ3YuXy5sZW5ndGggLSAxXSkpIHtcbiAgICAgICAgICAgICAgICAgICAgYXJndi5fLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICBhcmd2W2hlbHBPcHRdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVyS2V5cyA9IGNvbW1hbmQkMS5nZXRDb21tYW5kcygpO1xuICAgICAgICAgICAgY29uc3QgcmVxdWVzdENvbXBsZXRpb25zID0gY29tcGxldGlvbiQxLmNvbXBsZXRpb25LZXkgaW4gYXJndjtcbiAgICAgICAgICAgIGNvbnN0IHNraXBSZWNvbW1lbmRhdGlvbiA9IGFyZ3ZbaGVscE9wdF0gfHwgcmVxdWVzdENvbXBsZXRpb25zO1xuICAgICAgICAgICAgY29uc3Qgc2tpcERlZmF1bHRDb21tYW5kID0gc2tpcFJlY29tbWVuZGF0aW9uICYmXG4gICAgICAgICAgICAgICAgKGhhbmRsZXJLZXlzLmxlbmd0aCA+IDEgfHwgaGFuZGxlcktleXNbMF0gIT09ICckMCcpO1xuICAgICAgICAgICAgaWYgKGFyZ3YuXy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBpZiAoaGFuZGxlcktleXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBmaXJzdFVua25vd25Db21tYW5kO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gY29tbWFuZEluZGV4IHx8IDAsIGNtZDsgYXJndi5fW2ldICE9PSB1bmRlZmluZWQ7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY21kID0gU3RyaW5nKGFyZ3YuX1tpXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAofmhhbmRsZXJLZXlzLmluZGV4T2YoY21kKSAmJiBjbWQgIT09IGNvbXBsZXRpb25Db21tYW5kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5uZXJBcmd2ID0gY29tbWFuZCQxLnJ1bkNvbW1hbmQoY21kLCBzZWxmLCBwYXJzZWQsIGkgKyAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcG9zdFByb2Nlc3MoaW5uZXJBcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoIWZpcnN0VW5rbm93bkNvbW1hbmQgJiYgY21kICE9PSBjb21wbGV0aW9uQ29tbWFuZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0VW5rbm93bkNvbW1hbmQgPSBjbWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbW1hbmQkMS5oYXNEZWZhdWx0Q29tbWFuZCgpICYmICFza2lwRGVmYXVsdENvbW1hbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlubmVyQXJndiA9IGNvbW1hbmQkMS5ydW5Db21tYW5kKG51bGwsIHNlbGYsIHBhcnNlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fcG9zdFByb2Nlc3MoaW5uZXJBcmd2LCBwb3B1bGF0ZURvdWJsZURhc2gpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZWNvbW1lbmRDb21tYW5kcyAmJiBmaXJzdFVua25vd25Db21tYW5kICYmICFza2lwUmVjb21tZW5kYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRpb24kMS5yZWNvbW1lbmRDb21tYW5kcyhmaXJzdFVua25vd25Db21tYW5kLCBoYW5kbGVyS2V5cyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNvbXBsZXRpb25Db21tYW5kICYmXG4gICAgICAgICAgICAgICAgICAgIH5hcmd2Ll8uaW5kZXhPZihjb21wbGV0aW9uQ29tbWFuZCkgJiZcbiAgICAgICAgICAgICAgICAgICAgIXJlcXVlc3RDb21wbGV0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXhpdFByb2Nlc3MpXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRCbG9ja2luZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZi5zaG93Q29tcGxldGlvblNjcmlwdCgpO1xuICAgICAgICAgICAgICAgICAgICBzZWxmLmV4aXQoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoY29tbWFuZCQxLmhhc0RlZmF1bHRDb21tYW5kKCkgJiYgIXNraXBEZWZhdWx0Q29tbWFuZCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGlubmVyQXJndiA9IGNvbW1hbmQkMS5ydW5Db21tYW5kKG51bGwsIHNlbGYsIHBhcnNlZCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3Bvc3RQcm9jZXNzKGlubmVyQXJndiwgcG9wdWxhdGVEb3VibGVEYXNoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChyZXF1ZXN0Q29tcGxldGlvbnMpIHtcbiAgICAgICAgICAgICAgICBpZiAoZXhpdFByb2Nlc3MpXG4gICAgICAgICAgICAgICAgICAgIHNldEJsb2NraW5nKHRydWUpO1xuICAgICAgICAgICAgICAgIGFyZ3MgPSBbXS5jb25jYXQoYXJncyk7XG4gICAgICAgICAgICAgICAgY29uc3QgY29tcGxldGlvbkFyZ3MgPSBhcmdzLnNsaWNlKGFyZ3MuaW5kZXhPZihgLS0ke2NvbXBsZXRpb24kMS5jb21wbGV0aW9uS2V5fWApICsgMSk7XG4gICAgICAgICAgICAgICAgY29tcGxldGlvbiQxLmdldENvbXBsZXRpb24oY29tcGxldGlvbkFyZ3MsIGNvbXBsZXRpb25zID0+IHtcbiAgICAgICAgICAgICAgICAgICAgKGNvbXBsZXRpb25zIHx8IFtdKS5mb3JFYWNoKGNvbXBsZXRpb24gPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgX2xvZ2dlci5sb2coY29tcGxldGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBzZWxmLmV4aXQoMCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3Bvc3RQcm9jZXNzKGFyZ3YsICFwb3B1bGF0ZURvdWJsZURhc2gsIF9jYWxsZWRGcm9tQ29tbWFuZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWhhc091dHB1dCkge1xuICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKGFyZ3YpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGtleSA9PT0gaGVscE9wdCAmJiBhcmd2W2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChleGl0UHJvY2VzcylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRCbG9ja2luZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNraXBWYWxpZGF0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2hvd0hlbHAoJ2xvZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5leGl0KDApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtleSA9PT0gdmVyc2lvbk9wdCAmJiBhcmd2W2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChleGl0UHJvY2VzcylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRCbG9ja2luZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNraXBWYWxpZGF0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzYWdlJDEuc2hvd1ZlcnNpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZXhpdCgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFza2lwVmFsaWRhdGlvbiAmJiBvcHRpb25zLnNraXBWYWxpZGF0aW9uLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBza2lwVmFsaWRhdGlvbiA9IE9iamVjdC5rZXlzKGFyZ3YpLnNvbWUoa2V5ID0+IG9wdGlvbnMuc2tpcFZhbGlkYXRpb24uaW5kZXhPZihrZXkpID49IDAgJiYgYXJndltrZXldID09PSB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghc2tpcFZhbGlkYXRpb24pIHtcbiAgICAgICAgICAgICAgICBpZiAocGFyc2VkLmVycm9yKVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgWUVycm9yKHBhcnNlZC5lcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICBpZiAoIXJlcXVlc3RDb21wbGV0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICBzZWxmLl9ydW5WYWxpZGF0aW9uKGFyZ3YsIGFsaWFzZXMsIHt9LCBwYXJzZWQuZXJyb3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBpZiAoZXJyIGluc3RhbmNlb2YgWUVycm9yKVxuICAgICAgICAgICAgICAgIHVzYWdlJDEuZmFpbChlcnIubWVzc2FnZSwgZXJyKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICB0aHJvdyBlcnI7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNlbGYuX3Bvc3RQcm9jZXNzKGFyZ3YsIHBvcHVsYXRlRG91YmxlRGFzaCwgX2NhbGxlZEZyb21Db21tYW5kKTtcbiAgICB9O1xuICAgIHNlbGYuX3Bvc3RQcm9jZXNzID0gZnVuY3Rpb24gKGFyZ3YsIHBvcHVsYXRlRG91YmxlRGFzaCwgY2FsbGVkRnJvbUNvbW1hbmQgPSBmYWxzZSkge1xuICAgICAgICBpZiAoaXNQcm9taXNlKGFyZ3YpKVxuICAgICAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgICAgIGlmIChjYWxsZWRGcm9tQ29tbWFuZClcbiAgICAgICAgICAgIHJldHVybiBhcmd2O1xuICAgICAgICBpZiAoIXBvcHVsYXRlRG91YmxlRGFzaCkge1xuICAgICAgICAgICAgYXJndiA9IHNlbGYuX2NvcHlEb3VibGVEYXNoKGFyZ3YpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHBhcnNlUG9zaXRpb25hbE51bWJlcnMgPSBzZWxmLmdldFBhcnNlckNvbmZpZ3VyYXRpb24oKVsncGFyc2UtcG9zaXRpb25hbC1udW1iZXJzJ10gfHxcbiAgICAgICAgICAgIHNlbGYuZ2V0UGFyc2VyQ29uZmlndXJhdGlvbigpWydwYXJzZS1wb3NpdGlvbmFsLW51bWJlcnMnXSA9PT0gdW5kZWZpbmVkO1xuICAgICAgICBpZiAocGFyc2VQb3NpdGlvbmFsTnVtYmVycykge1xuICAgICAgICAgICAgYXJndiA9IHNlbGYuX3BhcnNlUG9zaXRpb25hbE51bWJlcnMoYXJndik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgfTtcbiAgICBzZWxmLl9jb3B5RG91YmxlRGFzaCA9IGZ1bmN0aW9uIChhcmd2KSB7XG4gICAgICAgIGlmICghYXJndi5fIHx8ICFhcmd2WyctLSddKVxuICAgICAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgICAgIGFyZ3YuXy5wdXNoLmFwcGx5KGFyZ3YuXywgYXJndlsnLS0nXSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBkZWxldGUgYXJndlsnLS0nXTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoX2VycikgeyB9XG4gICAgICAgIHJldHVybiBhcmd2O1xuICAgIH07XG4gICAgc2VsZi5fcGFyc2VQb3NpdGlvbmFsTnVtYmVycyA9IGZ1bmN0aW9uIChhcmd2KSB7XG4gICAgICAgIGNvbnN0IGFyZ3MgPSBhcmd2WyctLSddID8gYXJndlsnLS0nXSA6IGFyZ3YuXztcbiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGFyZzsgKGFyZyA9IGFyZ3NbaV0pICE9PSB1bmRlZmluZWQ7IGkrKykge1xuICAgICAgICAgICAgaWYgKHNoaW0kMS5QYXJzZXIubG9va3NMaWtlTnVtYmVyKGFyZykgJiZcbiAgICAgICAgICAgICAgICBOdW1iZXIuaXNTYWZlSW50ZWdlcihNYXRoLmZsb29yKHBhcnNlRmxvYXQoYCR7YXJnfWApKSkpIHtcbiAgICAgICAgICAgICAgICBhcmdzW2ldID0gTnVtYmVyKGFyZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFyZ3Y7XG4gICAgfTtcbiAgICBzZWxmLl9ydW5WYWxpZGF0aW9uID0gZnVuY3Rpb24gcnVuVmFsaWRhdGlvbihhcmd2LCBhbGlhc2VzLCBwb3NpdGlvbmFsTWFwLCBwYXJzZUVycm9ycywgaXNEZWZhdWx0Q29tbWFuZCA9IGZhbHNlKSB7XG4gICAgICAgIGlmIChwYXJzZUVycm9ycylcbiAgICAgICAgICAgIHRocm93IG5ldyBZRXJyb3IocGFyc2VFcnJvcnMubWVzc2FnZSk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5ub25PcHRpb25Db3VudChhcmd2KTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLnJlcXVpcmVkQXJndW1lbnRzKGFyZ3YpO1xuICAgICAgICBsZXQgZmFpbGVkU3RyaWN0Q29tbWFuZHMgPSBmYWxzZTtcbiAgICAgICAgaWYgKHN0cmljdENvbW1hbmRzKSB7XG4gICAgICAgICAgICBmYWlsZWRTdHJpY3RDb21tYW5kcyA9IHZhbGlkYXRpb24kMS51bmtub3duQ29tbWFuZHMoYXJndik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0cmljdCAmJiAhZmFpbGVkU3RyaWN0Q29tbWFuZHMpIHtcbiAgICAgICAgICAgIHZhbGlkYXRpb24kMS51bmtub3duQXJndW1lbnRzKGFyZ3YsIGFsaWFzZXMsIHBvc2l0aW9uYWxNYXAsIGlzRGVmYXVsdENvbW1hbmQpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHN0cmljdE9wdGlvbnMpIHtcbiAgICAgICAgICAgIHZhbGlkYXRpb24kMS51bmtub3duQXJndW1lbnRzKGFyZ3YsIGFsaWFzZXMsIHt9LCBmYWxzZSwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIHZhbGlkYXRpb24kMS5jdXN0b21DaGVja3MoYXJndiwgYWxpYXNlcyk7XG4gICAgICAgIHZhbGlkYXRpb24kMS5saW1pdGVkQ2hvaWNlcyhhcmd2KTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLmltcGxpY2F0aW9ucyhhcmd2KTtcbiAgICAgICAgdmFsaWRhdGlvbiQxLmNvbmZsaWN0aW5nKGFyZ3YpO1xuICAgIH07XG4gICAgZnVuY3Rpb24gZ3Vlc3NMb2NhbGUoKSB7XG4gICAgICAgIGlmICghZGV0ZWN0TG9jYWxlKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCBsb2NhbGUgPSBzaGltJDEuZ2V0RW52KCdMQ19BTEwnKSB8fFxuICAgICAgICAgICAgc2hpbSQxLmdldEVudignTENfTUVTU0FHRVMnKSB8fFxuICAgICAgICAgICAgc2hpbSQxLmdldEVudignTEFORycpIHx8XG4gICAgICAgICAgICBzaGltJDEuZ2V0RW52KCdMQU5HVUFHRScpIHx8XG4gICAgICAgICAgICAnZW5fVVMnO1xuICAgICAgICBzZWxmLmxvY2FsZShsb2NhbGUucmVwbGFjZSgvWy46XS4qLywgJycpKTtcbiAgICB9XG4gICAgc2VsZi5oZWxwKCk7XG4gICAgc2VsZi52ZXJzaW9uKCk7XG4gICAgcmV0dXJuIHNlbGY7XG59XG5jb25zdCByZWJhc2UgPSAoYmFzZSwgZGlyKSA9PiBzaGltJDEucGF0aC5yZWxhdGl2ZShiYXNlLCBkaXIpO1xuZnVuY3Rpb24gaXNZYXJnc0luc3RhbmNlKHkpIHtcbiAgICByZXR1cm4gISF5ICYmIHR5cGVvZiB5Ll9wYXJzZUFyZ3MgPT09ICdmdW5jdGlvbic7XG59XG5cbnZhciBfYSwgX2I7XG5jb25zdCB7IHJlYWRGaWxlU3luYyB9ID0gcmVxdWlyZSgnZnMnKTtcbmNvbnN0IHsgaW5zcGVjdCB9ID0gcmVxdWlyZSgndXRpbCcpO1xuY29uc3QgeyByZXNvbHZlIH0gPSByZXF1aXJlKCdwYXRoJyk7XG5jb25zdCB5MThuID0gcmVxdWlyZSgneTE4bicpO1xuY29uc3QgUGFyc2VyID0gcmVxdWlyZSgneWFyZ3MtcGFyc2VyJyk7XG52YXIgY2pzUGxhdGZvcm1TaGltID0ge1xuICAgIGFzc2VydDoge1xuICAgICAgICBub3RTdHJpY3RFcXVhbDogYXNzZXJ0Lm5vdFN0cmljdEVxdWFsLFxuICAgICAgICBzdHJpY3RFcXVhbDogYXNzZXJ0LnN0cmljdEVxdWFsLFxuICAgIH0sXG4gICAgY2xpdWk6IHJlcXVpcmUoJ2NsaXVpJyksXG4gICAgZmluZFVwOiByZXF1aXJlKCdlc2NhbGFkZS9zeW5jJyksXG4gICAgZ2V0RW52OiAoa2V5KSA9PiB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzLmVudltrZXldO1xuICAgIH0sXG4gICAgZ2V0Q2FsbGVyRmlsZTogcmVxdWlyZSgnZ2V0LWNhbGxlci1maWxlJyksXG4gICAgZ2V0UHJvY2Vzc0FyZ3ZCaW46IGdldFByb2Nlc3NBcmd2QmluLFxuICAgIGluc3BlY3QsXG4gICAgbWFpbkZpbGVuYW1lOiAoX2IgPSAoX2EgPSByZXF1aXJlID09PSBudWxsIHx8IHJlcXVpcmUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHJlcXVpcmUubWFpbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZpbGVuYW1lKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBwcm9jZXNzLmN3ZCgpLFxuICAgIFBhcnNlcixcbiAgICBwYXRoOiByZXF1aXJlKCdwYXRoJyksXG4gICAgcHJvY2Vzczoge1xuICAgICAgICBhcmd2OiAoKSA9PiBwcm9jZXNzLmFyZ3YsXG4gICAgICAgIGN3ZDogcHJvY2Vzcy5jd2QsXG4gICAgICAgIGV4ZWNQYXRoOiAoKSA9PiBwcm9jZXNzLmV4ZWNQYXRoLFxuICAgICAgICBleGl0OiAoY29kZSkgPT4ge1xuICAgICAgICAgICAgcHJvY2Vzcy5leGl0KGNvZGUpO1xuICAgICAgICB9LFxuICAgICAgICBuZXh0VGljazogcHJvY2Vzcy5uZXh0VGljayxcbiAgICAgICAgc3RkQ29sdW1uczogdHlwZW9mIHByb2Nlc3Muc3Rkb3V0LmNvbHVtbnMgIT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICA/IHByb2Nlc3Muc3Rkb3V0LmNvbHVtbnNcbiAgICAgICAgICAgIDogbnVsbCxcbiAgICB9LFxuICAgIHJlYWRGaWxlU3luYyxcbiAgICByZXF1aXJlOiByZXF1aXJlLFxuICAgIHJlcXVpcmVEaXJlY3Rvcnk6IHJlcXVpcmUoJ3JlcXVpcmUtZGlyZWN0b3J5JyksXG4gICAgc3RyaW5nV2lkdGg6IHJlcXVpcmUoJ3N0cmluZy13aWR0aCcpLFxuICAgIHkxOG46IHkxOG4oe1xuICAgICAgICBkaXJlY3Rvcnk6IHJlc29sdmUoX19kaXJuYW1lLCAnLi4vbG9jYWxlcycpLFxuICAgICAgICB1cGRhdGVGaWxlczogZmFsc2UsXG4gICAgfSksXG59O1xuXG5jb25zdCBtaW5Ob2RlVmVyc2lvbiA9IHByb2Nlc3MgJiYgcHJvY2Vzcy5lbnYgJiYgcHJvY2Vzcy5lbnYuWUFSR1NfTUlOX05PREVfVkVSU0lPTlxuICAgID8gTnVtYmVyKHByb2Nlc3MuZW52LllBUkdTX01JTl9OT0RFX1ZFUlNJT04pXG4gICAgOiAxMDtcbmlmIChwcm9jZXNzICYmIHByb2Nlc3MudmVyc2lvbikge1xuICAgIGNvbnN0IG1ham9yID0gTnVtYmVyKHByb2Nlc3MudmVyc2lvbi5tYXRjaCgvdihbXi5dKykvKVsxXSk7XG4gICAgaWYgKG1ham9yIDwgbWluTm9kZVZlcnNpb24pIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYHlhcmdzIHN1cHBvcnRzIGEgbWluaW11bSBOb2RlLmpzIHZlcnNpb24gb2YgJHttaW5Ob2RlVmVyc2lvbn0uIFJlYWQgb3VyIHZlcnNpb24gc3VwcG9ydCBwb2xpY3k6IGh0dHBzOi8vZ2l0aHViLmNvbS95YXJncy95YXJncyNzdXBwb3J0ZWQtbm9kZWpzLXZlcnNpb25zYCk7XG4gICAgfVxufVxuY29uc3QgUGFyc2VyJDEgPSByZXF1aXJlKCd5YXJncy1wYXJzZXInKTtcbmNvbnN0IFlhcmdzJDEgPSBZYXJnc1dpdGhTaGltKGNqc1BsYXRmb3JtU2hpbSk7XG52YXIgY2pzID0ge1xuICAgIGFwcGx5RXh0ZW5kcyxcbiAgICBjanNQbGF0Zm9ybVNoaW0sXG4gICAgWWFyZ3M6IFlhcmdzJDEsXG4gICAgYXJnc2VydCxcbiAgICBnbG9iYWxNaWRkbGV3YXJlRmFjdG9yeSxcbiAgICBpc1Byb21pc2UsXG4gICAgb2JqRmlsdGVyLFxuICAgIHBhcnNlQ29tbWFuZCxcbiAgICBQYXJzZXI6IFBhcnNlciQxLFxuICAgIHByb2Nlc3NBcmd2LFxuICAgIHJlYmFzZSxcbiAgICBZRXJyb3IsXG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGNqcztcbiIsICIndXNlIHN0cmljdCc7XG4vLyBjbGFzc2ljIHNpbmdsZXRvbiB5YXJncyBBUEksIHRvIHVzZSB5YXJnc1xuLy8gd2l0aG91dCBydW5uaW5nIGFzIGEgc2luZ2xldG9uIGRvOlxuLy8gcmVxdWlyZSgneWFyZ3MveWFyZ3MnKShwcm9jZXNzLmFyZ3Yuc2xpY2UoMikpXG5jb25zdCB7WWFyZ3MsIHByb2Nlc3NBcmd2fSA9IHJlcXVpcmUoJy4vYnVpbGQvaW5kZXguY2pzJyk7XG5cbkFyZ3YocHJvY2Vzc0FyZ3YuaGlkZUJpbihwcm9jZXNzLmFyZ3YpKTtcblxubW9kdWxlLmV4cG9ydHMgPSBBcmd2O1xuXG5mdW5jdGlvbiBBcmd2KHByb2Nlc3NBcmdzLCBjd2QpIHtcbiAgY29uc3QgYXJndiA9IFlhcmdzKHByb2Nlc3NBcmdzLCBjd2QsIHJlcXVpcmUpO1xuICBzaW5nbGV0b25pZnkoYXJndik7XG4gIHJldHVybiBhcmd2O1xufVxuXG4vKiAgSGFjayBhbiBpbnN0YW5jZSBvZiBBcmd2IHdpdGggcHJvY2Vzcy5hcmd2IGludG8gQXJndlxuICAgIHNvIHBlb3BsZSBjYW4gZG9cbiAgICByZXF1aXJlKCd5YXJncycpKFsnLS1iZWVibGU9MScsJy16Jywneml6emxlJ10pLmFyZ3ZcbiAgICB0byBwYXJzZSBhIGxpc3Qgb2YgYXJncyBhbmRcbiAgICByZXF1aXJlKCd5YXJncycpLmFyZ3ZcbiAgICB0byBnZXQgYSBwYXJzZWQgdmVyc2lvbiBvZiBwcm9jZXNzLmFyZ3YuXG4qL1xuZnVuY3Rpb24gc2luZ2xldG9uaWZ5KGluc3QpIHtcbiAgT2JqZWN0LmtleXMoaW5zdCkuZm9yRWFjaChrZXkgPT4ge1xuICAgIGlmIChrZXkgPT09ICdhcmd2Jykge1xuICAgICAgQXJndi5fX2RlZmluZUdldHRlcl9fKGtleSwgaW5zdC5fX2xvb2t1cEdldHRlcl9fKGtleSkpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGluc3Rba2V5XSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgQXJndltrZXldID0gaW5zdFtrZXldLmJpbmQoaW5zdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIEFyZ3YuX19kZWZpbmVHZXR0ZXJfXygnJDAnLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiBpbnN0LiQwO1xuICAgICAgfSk7XG4gICAgICBBcmd2Ll9fZGVmaW5lR2V0dGVyX18oJ3BhcnNlZCcsICgpID0+IHtcbiAgICAgICAgcmV0dXJuIGluc3QucGFyc2VkO1xuICAgICAgfSk7XG4gICAgfVxuICB9KTtcbn1cbiIsICIvKlxuICogYXJndi5qczogU2ltcGxlIG1lbW9yeS1iYXNlZCBzdG9yZSBmb3IgY29tbWFuZC1saW5lIGFyZ3VtZW50cy5cbiAqXG4gKiAoQykgMjAxMSwgQ2hhcmxpZSBSb2JiaW5zIGFuZCB0aGUgQ29udHJpYnV0b3JzLlxuICpcbiAqL1xuXG52YXIgdXRpbCA9IHJlcXVpcmUoJ3V0aWwnKSxcbiAgICBjb21tb24gPSByZXF1aXJlKCcuLi9jb21tb24nKSxcbiAgICBNZW1vcnkgPSByZXF1aXJlKCcuL21lbW9yeScpLk1lbW9yeTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBBcmd2IChvcHRpb25zKVxuLy8gIyMjIyBAb3B0aW9ucyB7T2JqZWN0fSBPcHRpb25zIGZvciB0aGlzIGluc3RhbmNlLlxuLy8gQ29uc3RydWN0b3IgZnVuY3Rpb24gZm9yIHRoZSBBcmd2IG5jb25mIHN0b3JlLCBhIHNpbXBsZSBhYnN0cmFjdGlvblxuLy8gYXJvdW5kIHRoZSBNZW1vcnkgc3RvcmUgdGhhdCBjYW4gcmVhZCBjb21tYW5kLWxpbmUgYXJndW1lbnRzLlxuLy9cbnZhciBBcmd2ID0gZXhwb3J0cy5Bcmd2ID0gZnVuY3Rpb24gKG9wdGlvbnMsIHVzYWdlKSB7XG4gIE1lbW9yeS5jYWxsKHRoaXMsIG9wdGlvbnMpO1xuXG4gIG9wdGlvbnMgICAgICAgID0gb3B0aW9ucyB8fCB7fTtcbiAgdGhpcy50eXBlICAgICA9ICdhcmd2JztcbiAgdGhpcy5yZWFkT25seSA9IHRydWU7XG4gIHRoaXMub3B0aW9ucyAgPSBvcHRpb25zO1xuICB0aGlzLnVzYWdlICAgID0gdXNhZ2U7XG4gIGlmKHR5cGVvZiBvcHRpb25zLnBhcnNlVmFsdWVzID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHRoaXMucGFyc2VWYWx1ZXMgPSBvcHRpb25zLnBhcnNlVmFsdWVzO1xuICAgICAgZGVsZXRlIG9wdGlvbnMucGFyc2VWYWx1ZXM7XG4gIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhcnNlVmFsdWVzID0gZmFsc2U7XG4gIH1cbiAgaWYgKHR5cGVvZiBvcHRpb25zLnRyYW5zZm9ybSA9PT0gJ2Z1bmN0aW9uJylcdTAwQTB7XG4gICAgICB0aGlzLnRyYW5zZm9ybSA9IG9wdGlvbnMudHJhbnNmb3JtO1xuICAgICAgZGVsZXRlIG9wdGlvbnMudHJhbnNmb3JtO1xuICB9IGVsc2Uge1xuICAgICAgdGhpcy50cmFuc2Zvcm0gPSBmYWxzZTtcbiAgfVxuICBpZiAodHlwZW9mIG9wdGlvbnMuc2VwYXJhdG9yID09PSAnc3RyaW5nJyB8fCBvcHRpb25zLnNlcGFyYXRvciBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuICAgIHRoaXMuc2VwYXJhdG9yID0gb3B0aW9ucy5zZXBhcmF0b3I7XG4gICAgZGVsZXRlIG9wdGlvbnMuc2VwYXJhdG9yO1xuICB9IGVsc2Uge1xuICAgIHRoaXMuc2VwYXJhdG9yID0gJyc7XG4gIH1cbn07XG5cbi8vIEluaGVyaXQgZnJvbSB0aGUgTWVtb3J5IHN0b3JlXG51dGlsLmluaGVyaXRzKEFyZ3YsIE1lbW9yeSk7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbG9hZFN5bmMgKClcbi8vIExvYWRzIHRoZSBkYXRhIHBhc3NlZCBpbiBmcm9tIGBwcm9jZXNzLmFyZ3ZgIGludG8gdGhpcyBpbnN0YW5jZS5cbi8vXG5Bcmd2LnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgdGhpcy5sb2FkQXJndigpO1xuICByZXR1cm4gdGhpcy5zdG9yZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gbG9hZEFyZ3YgKClcbi8vIExvYWRzIHRoZSBkYXRhIHBhc3NlZCBpbiBmcm9tIHRoZSBjb21tYW5kLWxpbmUgYXJndW1lbnRzXG4vLyBpbnRvIHRoaXMgaW5zdGFuY2UuXG4vL1xuQXJndi5wcm90b3R5cGUubG9hZEFyZ3YgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzZWxmID0gdGhpcyxcbiAgICAgIHlhcmdzLCBhcmd2O1xuXG4gIHlhcmdzID0gaXNZYXJncyh0aGlzLm9wdGlvbnMpID9cbiAgICB0aGlzLm9wdGlvbnMgOlxuICAgIHR5cGVvZiB0aGlzLm9wdGlvbnMgPT09ICdvYmplY3QnID9cbiAgICAgIHJlcXVpcmUoJ3lhcmdzJykocHJvY2Vzcy5hcmd2LnNsaWNlKDIpKS5vcHRpb25zKHRoaXMub3B0aW9ucykgOlxuICAgICAgcmVxdWlyZSgneWFyZ3MnKShwcm9jZXNzLmFyZ3Yuc2xpY2UoMikpO1xuXG4gIGlmICh0eXBlb2YgdGhpcy51c2FnZSA9PT0gJ3N0cmluZycpIHsgeWFyZ3MudXNhZ2UodGhpcy51c2FnZSkgfVxuXG4gIGFyZ3YgPSB5YXJncy5hcmd2XG5cbiAgaWYgKCFhcmd2KSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKHRoaXMudHJhbnNmb3JtKSB7XG4gICAgYXJndiA9IGNvbW1vbi50cmFuc2Zvcm0oYXJndiwgdGhpcy50cmFuc2Zvcm0pO1xuICB9XG5cbiAgdGhpcy5yZWFkT25seSA9IGZhbHNlO1xuICBPYmplY3Qua2V5cyhhcmd2KS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICB2YXIgdmFsID0gYXJndltrZXldO1xuXG4gICAgaWYgKHR5cGVvZiB2YWwgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBpZiAoc2VsZi5wYXJzZVZhbHVlcykge1xuICAgICAgICB2YWwgPSBjb21tb24ucGFyc2VWYWx1ZXModmFsKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHNlbGYuc2VwYXJhdG9yKSB7XG4gICAgICAgIHNlbGYuc2V0KGNvbW1vbi5rZXkuYXBwbHkoY29tbW9uLCBrZXkuc3BsaXQoc2VsZi5zZXBhcmF0b3IpKSwgdmFsKTtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICBzZWxmLnNldChrZXksIHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9KTtcblxuICB0aGlzLnNob3dIZWxwID0geWFyZ3Muc2hvd0hlbHBcbiAgdGhpcy5oZWxwICAgICA9IHlhcmdzLmhlbHBcblxuICB0aGlzLnJlYWRPbmx5ID0gdHJ1ZTtcbiAgcmV0dXJuIHRoaXMuc3RvcmU7XG59O1xuXG5mdW5jdGlvbiBpc1lhcmdzKG9iaikge1xuICByZXR1cm4gKHR5cGVvZiBvYmogPT09ICdmdW5jdGlvbicgfHwgdHlwZW9mIG9iaiA9PT0gJ29iamVjdCcpICYmICgnYXJndicgaW4gb2JqKTtcbn1cbiIsICIvKlxuICogZW52LmpzOiBTaW1wbGUgbWVtb3J5LWJhc2VkIHN0b3JlIGZvciBlbnZpcm9ubWVudCB2YXJpYWJsZXNcbiAqXG4gKiAoQykgMjAxMSwgQ2hhcmxpZSBSb2JiaW5zIGFuZCB0aGUgQ29udHJpYnV0b3JzLlxuICpcbiAqL1xuXG52YXIgdXRpbCA9IHJlcXVpcmUoJ3V0aWwnKSxcbiAgICBjb21tb24gPSByZXF1aXJlKCcuLi9jb21tb24nKSxcbiAgICBNZW1vcnkgPSByZXF1aXJlKCcuL21lbW9yeScpLk1lbW9yeTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBFbnYgKG9wdGlvbnMpXG4vLyAjIyMjIEBvcHRpb25zIHtPYmplY3R9IE9wdGlvbnMgZm9yIHRoaXMgaW5zdGFuY2UuXG4vLyBDb25zdHJ1Y3RvciBmdW5jdGlvbiBmb3IgdGhlIEVudiBuY29uZiBzdG9yZSwgYSBzaW1wbGUgYWJzdHJhY3Rpb25cbi8vIGFyb3VuZCB0aGUgTWVtb3J5IHN0b3JlIHRoYXQgY2FuIHJlYWQgcHJvY2VzcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4vL1xudmFyIEVudiA9IGV4cG9ydHMuRW52ID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgTWVtb3J5LmNhbGwodGhpcywgb3B0aW9ucyk7XG5cbiAgb3B0aW9ucyAgICAgICAgPSBvcHRpb25zIHx8IHt9O1xuICB0aGlzLnR5cGUgICAgICA9ICdlbnYnO1xuICB0aGlzLnJlYWRPbmx5ICA9IG9wdGlvbnMucmVhZE9ubHkgIT09IHVuZGVmaW5lZCA/IG9wdGlvbnMucmVhZE9ubHkgOiB0cnVlO1xuICB0aGlzLndoaXRlbGlzdCA9IG9wdGlvbnMud2hpdGVsaXN0IHx8IFtdO1xuICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnMuc2VwYXJhdG9yIHx8ICcnO1xuICB0aGlzLmxvd2VyQ2FzZSA9IG9wdGlvbnMubG93ZXJDYXNlIHx8IGZhbHNlO1xuICB0aGlzLnBhcnNlVmFsdWVzID0gb3B0aW9ucy5wYXJzZVZhbHVlcyB8fCBmYWxzZTtcbiAgdGhpcy50cmFuc2Zvcm0gPSBvcHRpb25zLnRyYW5zZm9ybSB8fCBmYWxzZTtcblxuICBpZiAoKHt9KS50b1N0cmluZy5jYWxsKG9wdGlvbnMubWF0Y2gpID09PSAnW29iamVjdCBSZWdFeHBdJ1xuICAgICAgJiYgdHlwZW9mIG9wdGlvbnMgIT09ICdzdHJpbmcnKSB7XG4gICAgdGhpcy5tYXRjaCA9IG9wdGlvbnMubWF0Y2g7XG4gIH1cblxuICBpZiAob3B0aW9ucyBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgdGhpcy53aGl0ZWxpc3QgPSBvcHRpb25zO1xuICB9XG4gIGlmICh0eXBlb2Yob3B0aW9ucykgPT09ICdzdHJpbmcnIHx8IG9wdGlvbnMgaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICB0aGlzLnNlcGFyYXRvciA9IG9wdGlvbnM7XG4gIH1cbn07XG5cbi8vIEluaGVyaXQgZnJvbSB0aGUgTWVtb3J5IHN0b3JlXG51dGlsLmluaGVyaXRzKEVudiwgTWVtb3J5KTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luYyAoKVxuLy8gTG9hZHMgdGhlIGRhdGEgcGFzc2VkIGluIGZyb20gYHByb2Nlc3MuZW52YCBpbnRvIHRoaXMgaW5zdGFuY2UuXG4vL1xuRW52LnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgdGhpcy5sb2FkRW52KCk7XG4gIHJldHVybiB0aGlzLnN0b3JlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkRW52ICgpXG4vLyBMb2FkcyB0aGUgZGF0YSBwYXNzZWQgaW4gZnJvbSBgcHJvY2Vzcy5lbnZgIGludG8gdGhpcyBpbnN0YW5jZS5cbi8vXG5FbnYucHJvdG90eXBlLmxvYWRFbnYgPSBmdW5jdGlvbiAoKSB7XG4gIHZhciBzZWxmID0gdGhpcztcblxuICB2YXIgZW52ID0gcHJvY2Vzcy5lbnY7XG5cbiAgaWYgKHRoaXMucHJlZml4KSB7XG4gICAgZW52ID0ge307XG4gICAgT2JqZWN0LmtleXMocHJvY2Vzcy5lbnYpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgaWYgKGtleS5pbmRleE9mKHNlbGYucHJlZml4KSA9PT0gMCkge1xuICAgICAgICBlbnZba2V5LnJlcGxhY2Uoc2VsZi5wcmVmaXgsICcnKV0gPSBwcm9jZXNzLmVudltrZXldO1xuICAgICAgfSBcbiAgICB9KTtcbiAgfVxuXG4gIGlmICh0aGlzLmxvd2VyQ2FzZSkge1xuICAgIGVudiA9IHt9O1xuICAgIE9iamVjdC5rZXlzKHByb2Nlc3MuZW52KS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIGVudltrZXkudG9Mb3dlckNhc2UoKV0gPSBwcm9jZXNzLmVudltrZXldO1xuICAgIH0pO1xuICB9XG5cbiAgaWYgKHRoaXMudHJhbnNmb3JtKSB7XG4gICAgZW52ID0gY29tbW9uLnRyYW5zZm9ybShlbnYsIHRoaXMudHJhbnNmb3JtKTtcbiAgfVxuXG4gIHRoaXMucmVhZE9ubHkgPSBmYWxzZTtcbiAgT2JqZWN0LmtleXMoZW52KS5maWx0ZXIoZnVuY3Rpb24gKGtleSkge1xuICAgIGlmIChzZWxmLm1hdGNoICYmIHNlbGYud2hpdGVsaXN0Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGtleS5tYXRjaChzZWxmLm1hdGNoKSB8fCBzZWxmLndoaXRlbGlzdC5pbmRleE9mKGtleSkgIT09IC0xXG4gICAgfVxuICAgIGVsc2UgaWYgKHNlbGYubWF0Y2gpIHtcbiAgICAgIHJldHVybiBrZXkubWF0Y2goc2VsZi5tYXRjaCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgcmV0dXJuICFzZWxmLndoaXRlbGlzdC5sZW5ndGggfHwgc2VsZi53aGl0ZWxpc3QuaW5kZXhPZihrZXkpICE9PSAtMVxuICAgIH1cbiAgfSkuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgXG4gICAgdmFyIHZhbCA9IGVudltrZXldO1xuXG4gICAgaWYgKHNlbGYucGFyc2VWYWx1ZXMpIHtcbiAgICAgIHZhbCA9IGNvbW1vbi5wYXJzZVZhbHVlcyh2YWwpO1xuICAgIH1cblxuICAgIGlmIChzZWxmLnNlcGFyYXRvcikge1xuICAgICAgc2VsZi5zZXQoY29tbW9uLmtleS5hcHBseShjb21tb24sIGtleS5zcGxpdChzZWxmLnNlcGFyYXRvcikpLCB2YWwpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHNlbGYuc2V0KGtleSwgdmFsKTtcbiAgICB9XG4gIH0pO1xuXG4gIHRoaXMucmVhZE9ubHkgPSB0cnVlO1xuICByZXR1cm4gdGhpcy5zdG9yZTtcbn07XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgY3J5cHRvID0gcmVxdWlyZSgnY3J5cHRvJyk7XG5cbnZhciBqc29uID0ge1xuICBzdHJpbmdpZnk6IGZ1bmN0aW9uIChvYmosIHJlcGxhY2VyLCBzcGFjaW5nKSB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG9iaiwgcmVwbGFjZXIgfHwgbnVsbCwgc3BhY2luZyB8fCAyKVxuICB9LFxuICBwYXJzZTogSlNPTi5wYXJzZVxufTtcblxubW9kdWxlLmV4cG9ydHMgPSBTZWN1cmU7XG4vKipcbiAqIEBjb25zdHJ1Y3RvclxuICogU2ltcGxlIE9iamVjdCB1c2VkIHRvIHNlcmlhbGl6ZSBhbmQgZGVzZXJpYWxpemVcbiAqL1xuZnVuY3Rpb24gU2VjdXJlKG9wdHMpIHtcbiAgb3B0cyA9IG9wdHMgfHwge307XG4gIHRoaXMuc2VjcmV0ID0gdHlwZW9mIG9wdHMgIT09ICdzdHJpbmcnXG4gICAgPyBvcHRzLnNlY3JldFxuICAgIDogb3B0cztcblxuICB0aGlzLmZvcm1hdCA9IG9wdHMuZm9ybWF0IHx8IGpzb247XG4gIHRoaXMuYWxnID0gb3B0cy5hbGcgfHwgJ2Flcy0yNTYtY3RyJztcblxuICBpZiAoIXRoaXMuc2VjcmV0KSB0aHJvdyBuZXcgRXJyb3IoJ1NlY3JldCBpcyBhIHJlcXVpcmVkIG9wdGlvbicpO1xufVxuXG5TZWN1cmUucHJvdG90eXBlLmVuY3J5cHQgPSBmdW5jdGlvbiBlbmNyeXB0KGRhdGEsIGNhbGxiYWNrKSB7XG4gIHZhciBzZWxmID0gdGhpcztcblxuICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkucmVkdWNlKGZ1bmN0aW9uIChhY2MsIGtleSkge1xuICAgIHZhciB2YWx1ZSA9IHNlbGYuZm9ybWF0LnN0cmluZ2lmeShkYXRhW2tleV0pO1xuICAgIGFjY1trZXldID0ge1xuICAgICAgYWxnOiBzZWxmLmFsZyxcbiAgICAgIHZhbHVlOiBjaXBoZXJDb252ZXJ0KHZhbHVlLCB7XG4gICAgICAgIGFsZzogc2VsZi5hbGcsXG4gICAgICAgIHNlY3JldDogc2VsZi5zZWNyZXQsXG4gICAgICAgIGVuY3M6IHsgaW5wdXQ6ICd1dGY4Jywgb3V0cHV0OiAnaGV4JyB9XG4gICAgICB9KVxuICAgIH07XG5cbiAgICByZXR1cm4gYWNjO1xuICB9LCB7fSk7XG5cbiB9O1xuXG5TZWN1cmUucHJvdG90eXBlLmRlY3J5cHQgPSBmdW5jdGlvbiBkZWNyeXB0KGRhdGEsIGNhbGxiYWNrKSB7XG4gIHZhciBzZWxmID0gdGhpcztcblxuICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkucmVkdWNlKGZ1bmN0aW9uIChhY2MsIGtleSkge1xuICAgIHZhciBkZWNyeXB0ZWQgPSBjaXBoZXJDb252ZXJ0KGRhdGFba2V5XS52YWx1ZSwge1xuICAgICAgYWxnOiBkYXRhW2tleV0uYWxnIHx8IHNlbGYuYWxnLFxuICAgICAgc2VjcmV0OiBzZWxmLnNlY3JldCxcbiAgICAgIGVuY3M6IHsgaW5wdXQ6ICdoZXgnLCBvdXRwdXQ6ICd1dGY4JyB9XG4gICAgfSk7XG5cbiAgICBhY2Nba2V5XSA9IHNlbGYuZm9ybWF0LnBhcnNlKGRlY3J5cHRlZCk7XG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30pO1xuXG4gfTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBjaXBoZXJDb252ZXJ0IChjb250ZW50cywgb3B0cylcbi8vIFJldHVybnMgdGhlIHJlc3VsdCBvZiB0aGUgY2lwaGVyIG9wZXJhdGlvblxuLy8gb24gdGhlIGNvbnRlbnRzIGNvbnRlbnRzLlxuLy9cbmZ1bmN0aW9uIGNpcGhlckNvbnZlcnQoY29udGVudHMsIG9wdHMpIHtcbiAgdmFyIGVuY3MgPSBvcHRzLmVuY3M7XG4gIHZhciBjaXBoZXIgPSBjcnlwdG8uY3JlYXRlQ2lwaGVyKG9wdHMuYWxnLCBvcHRzLnNlY3JldCk7XG4gIHJldHVybiBjaXBoZXIudXBkYXRlKGNvbnRlbnRzLCBlbmNzLmlucHV0LCBlbmNzLm91dHB1dClcbiAgICArIGNpcGhlci5maW5hbChlbmNzLm91dHB1dCk7XG59XG4iLCAiLypcbiAqIGZpbGUuanM6IFNpbXBsZSBmaWxlIHN0b3JhZ2UgZW5naW5lIGZvciBuY29uZiBmaWxlc1xuICpcbiAqIChDKSAyMDExLCBDaGFybGllIFJvYmJpbnMgYW5kIHRoZSBDb250cmlidXRvcnMuXG4gKlxuICovXG5cbnZhciBmcyA9IHJlcXVpcmUoJ2ZzJyksXG4gICAgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKSxcbiAgICB1dGlsID0gcmVxdWlyZSgndXRpbCcpLFxuICAgIFNlY3VyZSA9IHJlcXVpcmUoJ3NlY3VyZS1rZXlzJyksXG4gICAgZm9ybWF0cyA9IHJlcXVpcmUoJy4uL2Zvcm1hdHMnKSxcbiAgICBNZW1vcnkgPSByZXF1aXJlKCcuL21lbW9yeScpLk1lbW9yeTtcblxudmFyIGV4aXN0cyA9IGZzLmV4aXN0cyB8fCBwYXRoLmV4aXN0cyxcbiAgICBleGlzdHNTeW5jID0gZnMuZXhpc3RzU3luYyB8fCBwYXRoLmV4aXN0c1N5bmM7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gRmlsZSAob3B0aW9ucylcbi8vICMjIyMgQG9wdGlvbnMge09iamVjdH0gT3B0aW9ucyBmb3IgdGhpcyBpbnN0YW5jZVxuLy8gQ29uc3RydWN0b3IgZnVuY3Rpb24gZm9yIHRoZSBGaWxlIG5jb25mIHN0b3JlLCBhIHNpbXBsZSBhYnN0cmFjdGlvblxuLy8gYXJvdW5kIHRoZSBNZW1vcnkgc3RvcmUgdGhhdCBjYW4gcGVyc2lzdCBjb25maWd1cmF0aW9uIHRvIGRpc2suXG4vL1xudmFyIEZpbGUgPSBleHBvcnRzLkZpbGUgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAoIW9wdGlvbnMgfHwgIW9wdGlvbnMuZmlsZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignTWlzc2luZyByZXF1aXJlZCBvcHRpb24gYGZpbGVgJyk7XG4gIH1cblxuICBNZW1vcnkuY2FsbCh0aGlzLCBvcHRpb25zKTtcblxuICB0aGlzLnR5cGUgICAgPSAnZmlsZSc7XG4gIHRoaXMuZmlsZSAgICA9IG9wdGlvbnMuZmlsZTtcbiAgdGhpcy5kaXIgICAgID0gb3B0aW9ucy5kaXIgICAgfHwgcHJvY2Vzcy5jd2QoKTtcbiAgdGhpcy5mb3JtYXQgID0gb3B0aW9ucy5mb3JtYXQgfHwgZm9ybWF0cy5qc29uO1xuICB0aGlzLnNlY3VyZSAgPSBvcHRpb25zLnNlY3VyZTtcbiAgdGhpcy5zcGFjaW5nID0gb3B0aW9ucy5qc29uX3NwYWNpbmdcbiAgICB8fCBvcHRpb25zLnNwYWNpbmdcbiAgICB8fCAyO1xuXG4gIGlmICh0aGlzLnNlY3VyZSkge1xuICAgIHRoaXMuc2VjdXJlID0gQnVmZmVyLmlzQnVmZmVyKHRoaXMuc2VjdXJlKSB8fCB0eXBlb2YgdGhpcy5zZWN1cmUgPT09ICdzdHJpbmcnXG4gICAgICA/IHsgc2VjcmV0OiB0aGlzLnNlY3VyZS50b1N0cmluZygpIH1cbiAgICAgIDogdGhpcy5zZWN1cmU7XG5cbiAgICB0aGlzLnNlY3VyZS5hbGcgPSB0aGlzLnNlY3VyZS5hbGcgfHwgJ2Flcy0yNTYtY3RyJztcbiAgICBpZiAodGhpcy5zZWN1cmUuc2VjcmV0UGF0aCkge1xuICAgICAgdGhpcy5zZWN1cmUuc2VjcmV0ID0gZnMucmVhZEZpbGVTeW5jKHRoaXMuc2VjdXJlLnNlY3JldFBhdGgsICd1dGY4Jyk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnNlY3VyZS5zZWNyZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2VjdXJlLnNlY3JldCBvcHRpb24gaXMgcmVxdWlyZWQnKTtcbiAgICB9XG5cbiAgICB0aGlzLmtleXMgPSBuZXcgU2VjdXJlKHtcbiAgICAgIHNlY3JldDogdGhpcy5zZWN1cmUuc2VjcmV0LFxuICAgICAgYWxnOiB0aGlzLnNlY3VyZS5hbGcsXG4gICAgICBmb3JtYXQ6IHRoaXMuZm9ybWF0XG4gICAgfSk7XG4gIH1cblxuICBpZiAob3B0aW9ucy5zZWFyY2gpIHtcbiAgICB0aGlzLnNlYXJjaCh0aGlzLmRpcik7XG4gIH1cbn07XG5cbi8vIEluaGVyaXQgZnJvbSB0aGUgTWVtb3J5IHN0b3JlXG51dGlsLmluaGVyaXRzKEZpbGUsIE1lbW9yeSk7XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2F2ZSAodmFsdWUsIGNhbGxiYWNrKVxuLy8gIyMjIyBAdmFsdWUge09iamVjdH0gX0lnbm9yZWRfIExlZnQgaGVyZSBmb3IgY29uc2lzdGVuY3lcbi8vICMjIyMgQGNhbGxiYWNrIHtmdW5jdGlvbn0gQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlbiBjb21wbGV0ZS5cbi8vIFNhdmVzIHRoZSBjdXJyZW50IGNvbmZpZ3VyYXRpb24gb2JqZWN0IHRvIGRpc2sgYXQgYHRoaXMuZmlsZWBcbi8vIHVzaW5nIHRoZSBmb3JtYXQgc3BlY2lmaWVkIGJ5IGB0aGlzLmZvcm1hdGAuXG4vL1xuRmlsZS5wcm90b3R5cGUuc2F2ZSA9IGZ1bmN0aW9uICh2YWx1ZSwgY2FsbGJhY2spIHtcbiAgdGhpcy5zYXZlVG9GaWxlKHRoaXMuZmlsZSwgdmFsdWUsIGNhbGxiYWNrKTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2F2ZVRvRmlsZSAocGF0aCwgdmFsdWUsIGNhbGxiYWNrKVxuLy8gIyMjIyBAcGF0aCB7c3RyaW5nfSBUaGUgcGF0aCB0byB0aGUgZmlsZSB3aGVyZSB3ZSBzYXZlIHRoZSBjb25maWd1cmF0aW9uIHRvICBcbi8vICMjIyMgQGZvcm1hdCB7T2JqZWN0fSBPcHRpb25hbCBmb3JtYXR0ZXIsIGRlZmF1bHQgYmVoaW5nIHRoZSBvbmUgb2YgdGhlIHN0b3JlXG4vLyAjIyMjIEBjYWxsYmFjayB7ZnVuY3Rpb259IENvbnRpbnVhdGlvbiB0byByZXNwb25kIHRvIHdoZW4gY29tcGxldGUuXG4vLyBTYXZlcyB0aGUgY3VycmVudCBjb25maWd1cmF0aW9uIG9iamVjdCB0byBkaXNrIGF0IGB0aGlzLmZpbGVgXG4vLyB1c2luZyB0aGUgZm9ybWF0IHNwZWNpZmllZCBieSBgdGhpcy5mb3JtYXRgLlxuLy9cbkZpbGUucHJvdG90eXBlLnNhdmVUb0ZpbGUgPSBmdW5jdGlvbiAocGF0aCwgZm9ybWF0LCBjYWxsYmFjaykge1xuICBpZiAoIWNhbGxiYWNrKSB7XG4gICAgY2FsbGJhY2sgPSBmb3JtYXQ7XG4gICAgZm9ybWF0ID0gdGhpcy5mb3JtYXQ7XG4gIH1cblxuICBmcy53cml0ZUZpbGUocGF0aCwgdGhpcy5zdHJpbmdpZnkoZm9ybWF0KSwgY2FsbGJhY2spO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBzYXZlU3luYyAodmFsdWUsIGNhbGxiYWNrKVxuLy8gU2F2ZXMgdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbiBvYmplY3QgdG8gZGlzayBhdCBgdGhpcy5maWxlYFxuLy8gdXNpbmcgdGhlIGZvcm1hdCBzcGVjaWZpZWQgYnkgYHRoaXMuZm9ybWF0YCBzeW5jaHJvbm91c2x5LlxuLy9cbkZpbGUucHJvdG90eXBlLnNhdmVTeW5jID0gZnVuY3Rpb24gKCkge1xuICBmcy53cml0ZUZpbGVTeW5jKHRoaXMuZmlsZSwgdGhpcy5zdHJpbmdpZnkoKSk7XG4gIHJldHVybiB0aGlzLnN0b3JlO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkIChjYWxsYmFjaylcbi8vICMjIyMgQGNhbGxiYWNrIHtmdW5jdGlvbn0gQ29udGludWF0aW9uIHRvIHJlc3BvbmQgdG8gd2hlbiBjb21wbGV0ZS5cbi8vIFJlc3BvbmRzIHdpdGggYW4gT2JqZWN0IHJlcHJlc2VudGluZyBhbGwga2V5cyBhc3NvY2lhdGVkIGluIHRoaXMgaW5zdGFuY2UuXG4vL1xuRmlsZS5wcm90b3R5cGUubG9hZCA9IGZ1bmN0aW9uIChjYWxsYmFjaykge1xuICB2YXIgc2VsZiA9IHRoaXM7XG5cbiAgZXhpc3RzKHNlbGYuZmlsZSwgZnVuY3Rpb24gKGV4aXN0cykge1xuICAgIGlmICghZXhpc3RzKSB7XG4gICAgICByZXR1cm4gY2FsbGJhY2sobnVsbCwge30pO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gRWxzZSwgdGhlIHBhdGggZXhpc3RzLCByZWFkIGl0IGZyb20gZGlza1xuICAgIC8vXG4gICAgZnMucmVhZEZpbGUoc2VsZi5maWxlLCBmdW5jdGlvbiAoZXJyLCBkYXRhKSB7XG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgfVxuXG4gICAgICB0cnkge1xuICAgICAgICAvLyBEZWFscyB3aXRoIHN0cmluZyB0aGF0IGluY2x1ZGUgQk9NXG4gICAgICAgIHZhciBzdHJpbmdEYXRhID0gZGF0YS50b1N0cmluZygpO1xuICAgICAgICBpZiAoc3RyaW5nRGF0YS5jaGFyQXQoMCkgPT09ICdcXHVGRUZGJykge1xuICAgICAgICAgIHN0cmluZ0RhdGEgPSBzdHJpbmdEYXRhLnN1YnN0cigxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGYuc3RvcmUgPSBzZWxmLnBhcnNlKHN0cmluZ0RhdGEpO1xuICAgICAgfVxuICAgICAgY2F0Y2ggKGV4KSB7XG4gICAgICAgIHJldHVybiBjYWxsYmFjayhuZXcgRXJyb3IoXCJFcnJvciBwYXJzaW5nIHlvdXIgY29uZmlndXJhdGlvbiBmaWxlOiBbXCIgKyBzZWxmLmZpbGUgKyAnXTogJyArIGV4Lm1lc3NhZ2UpKTtcbiAgICAgIH1cblxuICAgICAgY2FsbGJhY2sobnVsbCwgc2VsZi5zdG9yZSk7XG4gICAgfSk7XG4gIH0pO1xufTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luYyAoY2FsbGJhY2spXG4vLyBBdHRlbXB0cyB0byBsb2FkIHRoZSBkYXRhIHN0b3JlZCBpbiBgdGhpcy5maWxlYCBzeW5jaHJvbm91c2x5XG4vLyBhbmQgcmVzcG9uZHMgYXBwcm9wcmlhdGVseS5cbi8vXG5GaWxlLnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgaWYgKCFleGlzdHNTeW5jKHRoaXMuZmlsZSkpIHtcbiAgICB0aGlzLnN0b3JlID0ge307XG4gICAgcmV0dXJuIHRoaXMuc3RvcmU7XG4gIH1cblxuICAvL1xuICAvLyBFbHNlLCB0aGUgcGF0aCBleGlzdHMsIHJlYWQgaXQgZnJvbSBkaXNrXG4gIC8vXG4gIHRyeSB7XG4gICAgLy8gRGVhbHMgd2l0aCBmaWxlIHRoYXQgaW5jbHVkZSBCT01cbiAgICB2YXIgZmlsZURhdGEgPSBmcy5yZWFkRmlsZVN5bmModGhpcy5maWxlLCAndXRmOCcpO1xuICAgIGlmIChmaWxlRGF0YS5jaGFyQXQoMCkgPT09ICdcXHVGRUZGJykge1xuICAgICAgZmlsZURhdGEgPSBmaWxlRGF0YS5zdWJzdHIoMSk7XG4gICAgfVxuXG4gICAgdGhpcy5zdG9yZSA9IHRoaXMucGFyc2UoZmlsZURhdGEpO1xuICB9XG4gIGNhdGNoIChleCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIkVycm9yIHBhcnNpbmcgeW91ciBjb25maWd1cmF0aW9uIGZpbGU6IFtcIiArIHRoaXMuZmlsZSArICddOiAnICsgZXgubWVzc2FnZSk7XG4gIH1cblxuICByZXR1cm4gdGhpcy5zdG9yZTtcbn07XG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc3RyaW5naWZ5ICgpXG4vLyBSZXR1cm5zIGFuIGVuY3J5cHRlZCB2ZXJzaW9uIG9mIHRoZSBjb250ZW50cyBJSUZcbi8vIGB0aGlzLnNlY3VyZWAgaXMgZW5hYmxlZFxuLy9cbkZpbGUucHJvdG90eXBlLnN0cmluZ2lmeSA9IGZ1bmN0aW9uIChmb3JtYXQpIHtcbiAgdmFyIGRhdGEgPSB0aGlzLnN0b3JlO1xuICBpZiAoIWZvcm1hdCkge1xuICAgICAgZm9ybWF0ID0gdGhpcy5mb3JtYXRcbiAgfVxuXG4gIGlmICh0aGlzLnNlY3VyZSkge1xuICAgIGRhdGEgPSB0aGlzLmtleXMuZW5jcnlwdChkYXRhKTtcbiAgfVxuXG4gIHJldHVybiBmb3JtYXQuc3RyaW5naWZ5KGRhdGEsIG51bGwsIHRoaXMuc3BhY2luZyk7XG59O1xuXG4vL1xuLy8gIyMjIGZ1bmN0aW9uIHBhcnNlIChjb250ZW50cylcbi8vIFJldHVybnMgYSBkZWNyeXB0ZWQgdmVyc2lvbiBvZiB0aGUgY29udGVudHMgSUZGXG4vLyBgdGhpcy5zZWN1cmVgIGlzIGVuYWJsZWQuXG4vL1xuRmlsZS5wcm90b3R5cGUucGFyc2UgPSBmdW5jdGlvbiAoY29udGVudHMpIHtcbiAgdmFyIHBhcnNlZCA9IHRoaXMuZm9ybWF0LnBhcnNlKGNvbnRlbnRzKTtcblxuICBpZiAoIXRoaXMuc2VjdXJlKSB7XG4gICAgcmV0dXJuIHBhcnNlZDtcbiAgfVxuXG4gIHJldHVybiB0aGlzLmtleXMuZGVjcnlwdChwYXJzZWQpO1xuXG59O1xuXG5cbi8vXG4vLyAjIyMgZnVuY3Rpb24gc2VhcmNoIChiYXNlKVxuLy8gIyMjIyBAYmFzZSB7c3RyaW5nfSBCYXNlIGRpcmVjdG9yeSAob3IgZmlsZSkgdG8gYmVnaW4gc2VhcmNoaW5nIGZvciB0aGUgdGFyZ2V0IGZpbGUuXG4vLyBBdHRlbXB0cyB0byBmaW5kIGB0aGlzLmZpbGVgIGJ5IGl0ZXJhdGl2ZWx5IHNlYXJjaGluZyB1cCB0aGVcbi8vIGRpcmVjdG9yeSBzdHJ1Y3R1cmVcbi8vXG5GaWxlLnByb3RvdHlwZS5zZWFyY2ggPSBmdW5jdGlvbiAoYmFzZSkge1xuICB2YXIgbG9va2luZyA9IHRydWUsXG4gICAgICBmdWxscGF0aCxcbiAgICAgIHByZXZpb3VzLFxuICAgICAgc3RhdHM7XG5cbiAgYmFzZSA9IGJhc2UgfHwgcHJvY2Vzcy5jd2QoKTtcblxuICBpZiAodGhpcy5maWxlWzBdID09PSAnLycpIHtcbiAgICAvL1xuICAgIC8vIElmIGZpbGVuYW1lIGZvciB0aGlzIGluc3RhbmNlIGlzIGEgZnVsbHkgcXVhbGlmaWVkIHBhdGhcbiAgICAvLyAoaS5lLiBpdCBzdGFydHMgd2l0aCBhIGAnLydgKSB0aGVuIGNoZWNrIGlmIGl0IGV4aXN0c1xuICAgIC8vXG4gICAgdHJ5IHtcbiAgICAgIHN0YXRzID0gZnMuc3RhdFN5bmMoZnMucmVhbHBhdGhTeW5jKHRoaXMuZmlsZSkpO1xuICAgICAgaWYgKHN0YXRzLmlzRmlsZSgpKSB7XG4gICAgICAgIGZ1bGxwYXRoID0gdGhpcy5maWxlO1xuICAgICAgICBsb29raW5nID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIGNhdGNoIChleCkge1xuICAgICAgLy9cbiAgICAgIC8vIElnbm9yZSBlcnJvcnNcbiAgICAgIC8vXG4gICAgfVxuICB9XG5cbiAgaWYgKGxvb2tpbmcgJiYgYmFzZSkge1xuICAgIC8vXG4gICAgLy8gQXR0ZW1wdCB0byBzdGF0IHRoZSByZWFscGF0aCBsb2NhdGVkIGF0IGBiYXNlYFxuICAgIC8vIGlmIHRoZSBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QgdGhlbiByZXR1cm4gZmFsc2UuXG4gICAgLy9cbiAgICB0cnkge1xuICAgICAgdmFyIHN0YXQgPSBmcy5zdGF0U3luYyhmcy5yZWFscGF0aFN5bmMoYmFzZSkpO1xuICAgICAgbG9va2luZyA9IHN0YXQuaXNEaXJlY3RvcnkoKTtcbiAgICB9XG4gICAgY2F0Y2ggKGV4KSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgd2hpbGUgKGxvb2tpbmcpIHtcbiAgICAvL1xuICAgIC8vIEl0ZXJhdGl2ZWx5IGxvb2sgdXAgdGhlIGRpcmVjdG9yeSBzdHJ1Y3R1cmUgZnJvbSBgYmFzZWBcbiAgICAvL1xuICAgIHRyeSB7XG4gICAgICBzdGF0cyA9IGZzLnN0YXRTeW5jKGZzLnJlYWxwYXRoU3luYyhmdWxscGF0aCA9IHBhdGguam9pbihiYXNlLCB0aGlzLmZpbGUpKSk7XG4gICAgICBsb29raW5nID0gc3RhdHMuaXNEaXJlY3RvcnkoKTtcbiAgICB9XG4gICAgY2F0Y2ggKGV4KSB7XG4gICAgICBwcmV2aW91cyA9IGJhc2U7XG4gICAgICBiYXNlID0gcGF0aC5kaXJuYW1lKGJhc2UpO1xuXG4gICAgICBpZiAocHJldmlvdXMgPT09IGJhc2UpIHtcbiAgICAgICAgLy9cbiAgICAgICAgLy8gSWYgd2UndmUgcmVhY2hlZCB0aGUgdG9wIG9mIHRoZSBkaXJlY3Rvcnkgc3RydWN0dXJlIHRoZW4gc2ltcGx5IHVzZVxuICAgICAgICAvLyB0aGUgZGVmYXVsdCBmaWxlIHBhdGguXG4gICAgICAgIC8vXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgc3RhdHMgPSBmcy5zdGF0U3luYyhmcy5yZWFscGF0aFN5bmMoZnVsbHBhdGggPSBwYXRoLmpvaW4odGhpcy5kaXIsIHRoaXMuZmlsZSkpKTtcbiAgICAgICAgICBpZiAoc3RhdHMuaXNEaXJlY3RvcnkoKSkge1xuICAgICAgICAgICAgZnVsbHBhdGggPSB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgIC8vXG4gICAgICAgICAgLy8gSWdub3JlIGVycm9yc1xuICAgICAgICAgIC8vXG4gICAgICAgIH1cblxuICAgICAgICBsb29raW5nID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9cbiAgLy8gU2V0IHRoZSBmaWxlIGZvciB0aGlzIGluc3RhbmNlIHRvIHRoZSBmdWxscGF0aFxuICAvLyB0aGF0IHdlIGhhdmUgZm91bmQgZHVyaW5nIHRoZSBzZWFyY2guIEluIHRoZSBldmVudCB0aGF0XG4gIC8vIHRoZSBzZWFyY2ggd2FzIHVuc3VjY2Vzc2Z1bCB1c2UgdGhlIG9yaWdpbmFsIHZhbHVlIGZvciBgdGhpcy5maWxlYC5cbiAgLy9cbiAgdGhpcy5maWxlID0gZnVsbHBhdGggfHwgdGhpcy5maWxlO1xuXG4gIHJldHVybiBmdWxscGF0aDtcbn07XG4iLCAiLypcbiAqIGxpdGVyYWwuanM6IFNpbXBsZSBsaXRlcmFsIE9iamVjdCBzdG9yZSBmb3IgbmNvbmYuXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIHV0aWwgPSByZXF1aXJlKCd1dGlsJyksXG4gICAgTWVtb3J5ID0gcmVxdWlyZSgnLi9tZW1vcnknKS5NZW1vcnlcblxudmFyIExpdGVyYWwgPSBleHBvcnRzLkxpdGVyYWwgPSBmdW5jdGlvbiBMaXRlcmFsIChvcHRpb25zKSB7XG4gIE1lbW9yeS5jYWxsKHRoaXMsIG9wdGlvbnMpO1xuXG4gIG9wdGlvbnMgICAgICAgPSBvcHRpb25zIHx8IHt9XG4gIHRoaXMudHlwZSAgICAgPSAnbGl0ZXJhbCc7XG4gIHRoaXMucmVhZE9ubHkgPSB0cnVlO1xuICB0aGlzLnN0b3JlICAgID0gb3B0aW9ucy5zdG9yZSB8fCBvcHRpb25zO1xufTtcblxuLy8gSW5oZXJpdCBmcm9tIE1lbW9yeSBzdG9yZS5cbnV0aWwuaW5oZXJpdHMoTGl0ZXJhbCwgTWVtb3J5KTtcblxuLy9cbi8vICMjIyBmdW5jdGlvbiBsb2FkU3luYyAoY2FsbGJhY2spXG4vLyBSZXR1cm5zIHRoZSBkYXRhIHN0b3JlZCBpbiBgdGhpcy5zdG9yZWAgc3luY2hyb25vdXNseS5cbi8vXG5MaXRlcmFsLnByb3RvdHlwZS5sb2FkU3luYyA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIHRoaXMuc3RvcmU7XG59OyIsICIvKlxuICogbmNvbmYuanM6IFRvcC1sZXZlbCBpbmNsdWRlIGZvciB0aGUgbmNvbmYgbW9kdWxlXG4gKlxuICogKEMpIDIwMTEsIENoYXJsaWUgUm9iYmlucyBhbmQgdGhlIENvbnRyaWJ1dG9ycy5cbiAqXG4gKi9cblxudmFyIGNvbW1vbiA9IHJlcXVpcmUoJy4vbmNvbmYvY29tbW9uJyksXG4gICAgUHJvdmlkZXIgPSByZXF1aXJlKCcuL25jb25mL3Byb3ZpZGVyJykuUHJvdmlkZXI7XG5cbi8vXG4vLyBgbmNvbmZgIGlzIGJ5IGRlZmF1bHQgYW4gaW5zdGFuY2Ugb2YgYG5jb25mLlByb3ZpZGVyYC5cbi8vXG52YXIgbmNvbmYgPSBtb2R1bGUuZXhwb3J0cyA9IG5ldyBQcm92aWRlcigpO1xuXG4vL1xuLy8gRXhwb3NlIHRoZSB2ZXJzaW9uIGZyb20gdGhlIHBhY2thZ2UuanNvblxuLy9cbm5jb25mLnZlcnNpb24gPSByZXF1aXJlKCcuLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuXG4vL1xuLy8gU2V0dXAgYWxsIHN0b3JlcyBhcyBsYXp5LWxvYWRlZCBnZXR0ZXJzLlxuLy9cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0FyZ3YnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHJlcXVpcmUoJy4vbmNvbmYvc3RvcmVzL2FyZ3YnKS5Bcmd2O1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0VudicsIGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gcmVxdWlyZSgnLi9uY29uZi9zdG9yZXMvZW52JykuRW52O1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0ZpbGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHJlcXVpcmUoJy4vbmNvbmYvc3RvcmVzL2ZpbGUnKS5GaWxlO1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ0xpdGVyYWwnLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHJlcXVpcmUoJy4vbmNvbmYvc3RvcmVzL2xpdGVyYWwnKS5MaXRlcmFsO1xufSk7XG5cbm5jb25mLl9fZGVmaW5lR2V0dGVyX18oJ01lbW9yeScsIGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gcmVxdWlyZSgnLi9uY29uZi9zdG9yZXMvbWVtb3J5JykuTWVtb3J5O1xufSk7XG5cbi8vXG4vLyBFeHBvc2UgdGhlIHZhcmlvdXMgY29tcG9uZW50cyBpbmNsdWRlZCB3aXRoIG5jb25mXG4vL1xubmNvbmYua2V5ICAgICAgICAgICA9IGNvbW1vbi5rZXk7XG5uY29uZi5wYXRoICAgICAgICAgID0gY29tbW9uLnBhdGg7XG5uY29uZi5sb2FkRmlsZXMgICAgID0gY29tbW9uLmxvYWRGaWxlcztcbm5jb25mLmxvYWRGaWxlc1N5bmMgPSBjb21tb24ubG9hZEZpbGVzU3luYztcbm5jb25mLmZvcm1hdHMgICAgICAgPSByZXF1aXJlKCcuL25jb25mL2Zvcm1hdHMnKTtcbm5jb25mLlByb3ZpZGVyICAgICAgPSBQcm92aWRlcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IEFMSUFTID0gU3ltYm9sLmZvcigneWFtbC5hbGlhcycpO1xuY29uc3QgRE9DID0gU3ltYm9sLmZvcigneWFtbC5kb2N1bWVudCcpO1xuY29uc3QgTUFQID0gU3ltYm9sLmZvcigneWFtbC5tYXAnKTtcbmNvbnN0IFBBSVIgPSBTeW1ib2wuZm9yKCd5YW1sLnBhaXInKTtcbmNvbnN0IFNDQUxBUiA9IFN5bWJvbC5mb3IoJ3lhbWwuc2NhbGFyJyk7XG5jb25zdCBTRVEgPSBTeW1ib2wuZm9yKCd5YW1sLnNlcScpO1xuY29uc3QgTk9ERV9UWVBFID0gU3ltYm9sLmZvcigneWFtbC5ub2RlLnR5cGUnKTtcbmNvbnN0IGlzQWxpYXMgPSAobm9kZSkgPT4gISFub2RlICYmIHR5cGVvZiBub2RlID09PSAnb2JqZWN0JyAmJiBub2RlW05PREVfVFlQRV0gPT09IEFMSUFTO1xuY29uc3QgaXNEb2N1bWVudCA9IChub2RlKSA9PiAhIW5vZGUgJiYgdHlwZW9mIG5vZGUgPT09ICdvYmplY3QnICYmIG5vZGVbTk9ERV9UWVBFXSA9PT0gRE9DO1xuY29uc3QgaXNNYXAgPSAobm9kZSkgPT4gISFub2RlICYmIHR5cGVvZiBub2RlID09PSAnb2JqZWN0JyAmJiBub2RlW05PREVfVFlQRV0gPT09IE1BUDtcbmNvbnN0IGlzUGFpciA9IChub2RlKSA9PiAhIW5vZGUgJiYgdHlwZW9mIG5vZGUgPT09ICdvYmplY3QnICYmIG5vZGVbTk9ERV9UWVBFXSA9PT0gUEFJUjtcbmNvbnN0IGlzU2NhbGFyID0gKG5vZGUpID0+ICEhbm9kZSAmJiB0eXBlb2Ygbm9kZSA9PT0gJ29iamVjdCcgJiYgbm9kZVtOT0RFX1RZUEVdID09PSBTQ0FMQVI7XG5jb25zdCBpc1NlcSA9IChub2RlKSA9PiAhIW5vZGUgJiYgdHlwZW9mIG5vZGUgPT09ICdvYmplY3QnICYmIG5vZGVbTk9ERV9UWVBFXSA9PT0gU0VRO1xuZnVuY3Rpb24gaXNDb2xsZWN0aW9uKG5vZGUpIHtcbiAgICBpZiAobm9kZSAmJiB0eXBlb2Ygbm9kZSA9PT0gJ29iamVjdCcpXG4gICAgICAgIHN3aXRjaCAobm9kZVtOT0RFX1RZUEVdKSB7XG4gICAgICAgICAgICBjYXNlIE1BUDpcbiAgICAgICAgICAgIGNhc2UgU0VROlxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZnVuY3Rpb24gaXNOb2RlKG5vZGUpIHtcbiAgICBpZiAobm9kZSAmJiB0eXBlb2Ygbm9kZSA9PT0gJ29iamVjdCcpXG4gICAgICAgIHN3aXRjaCAobm9kZVtOT0RFX1RZUEVdKSB7XG4gICAgICAgICAgICBjYXNlIEFMSUFTOlxuICAgICAgICAgICAgY2FzZSBNQVA6XG4gICAgICAgICAgICBjYXNlIFNDQUxBUjpcbiAgICAgICAgICAgIGNhc2UgU0VROlxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuY29uc3QgaGFzQW5jaG9yID0gKG5vZGUpID0+IChpc1NjYWxhcihub2RlKSB8fCBpc0NvbGxlY3Rpb24obm9kZSkpICYmICEhbm9kZS5hbmNob3I7XG5cbmV4cG9ydHMuQUxJQVMgPSBBTElBUztcbmV4cG9ydHMuRE9DID0gRE9DO1xuZXhwb3J0cy5NQVAgPSBNQVA7XG5leHBvcnRzLk5PREVfVFlQRSA9IE5PREVfVFlQRTtcbmV4cG9ydHMuUEFJUiA9IFBBSVI7XG5leHBvcnRzLlNDQUxBUiA9IFNDQUxBUjtcbmV4cG9ydHMuU0VRID0gU0VRO1xuZXhwb3J0cy5oYXNBbmNob3IgPSBoYXNBbmNob3I7XG5leHBvcnRzLmlzQWxpYXMgPSBpc0FsaWFzO1xuZXhwb3J0cy5pc0NvbGxlY3Rpb24gPSBpc0NvbGxlY3Rpb247XG5leHBvcnRzLmlzRG9jdW1lbnQgPSBpc0RvY3VtZW50O1xuZXhwb3J0cy5pc01hcCA9IGlzTWFwO1xuZXhwb3J0cy5pc05vZGUgPSBpc05vZGU7XG5leHBvcnRzLmlzUGFpciA9IGlzUGFpcjtcbmV4cG9ydHMuaXNTY2FsYXIgPSBpc1NjYWxhcjtcbmV4cG9ydHMuaXNTZXEgPSBpc1NlcTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vbm9kZXMvaWRlbnRpdHkuanMnKTtcblxuY29uc3QgQlJFQUsgPSBTeW1ib2woJ2JyZWFrIHZpc2l0Jyk7XG5jb25zdCBTS0lQID0gU3ltYm9sKCdza2lwIGNoaWxkcmVuJyk7XG5jb25zdCBSRU1PVkUgPSBTeW1ib2woJ3JlbW92ZSBub2RlJyk7XG4vKipcbiAqIEFwcGx5IGEgdmlzaXRvciB0byBhbiBBU1Qgbm9kZSBvciBkb2N1bWVudC5cbiAqXG4gKiBXYWxrcyB0aHJvdWdoIHRoZSB0cmVlIChkZXB0aC1maXJzdCkgc3RhcnRpbmcgZnJvbSBgbm9kZWAsIGNhbGxpbmcgYVxuICogYHZpc2l0b3JgIGZ1bmN0aW9uIHdpdGggdGhyZWUgYXJndW1lbnRzOlxuICogICAtIGBrZXlgOiBGb3Igc2VxdWVuY2UgdmFsdWVzIGFuZCBtYXAgYFBhaXJgLCB0aGUgbm9kZSdzIGluZGV4IGluIHRoZVxuICogICAgIGNvbGxlY3Rpb24uIFdpdGhpbiBhIGBQYWlyYCwgYCdrZXknYCBvciBgJ3ZhbHVlJ2AsIGNvcnJlc3BvbmRpbmdseS5cbiAqICAgICBgbnVsbGAgZm9yIHRoZSByb290IG5vZGUuXG4gKiAgIC0gYG5vZGVgOiBUaGUgY3VycmVudCBub2RlLlxuICogICAtIGBwYXRoYDogVGhlIGFuY2VzdHJ5IG9mIHRoZSBjdXJyZW50IG5vZGUuXG4gKlxuICogVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgdmlzaXRvciBtYXkgYmUgdXNlZCB0byBjb250cm9sIHRoZSB0cmF2ZXJzYWw6XG4gKiAgIC0gYHVuZGVmaW5lZGAgKGRlZmF1bHQpOiBEbyBub3RoaW5nIGFuZCBjb250aW51ZVxuICogICAtIGB2aXNpdC5TS0lQYDogRG8gbm90IHZpc2l0IHRoZSBjaGlsZHJlbiBvZiB0aGlzIG5vZGUsIGNvbnRpbnVlIHdpdGggbmV4dFxuICogICAgIHNpYmxpbmdcbiAqICAgLSBgdmlzaXQuQlJFQUtgOiBUZXJtaW5hdGUgdHJhdmVyc2FsIGNvbXBsZXRlbHlcbiAqICAgLSBgdmlzaXQuUkVNT1ZFYDogUmVtb3ZlIHRoZSBjdXJyZW50IG5vZGUsIHRoZW4gY29udGludWUgd2l0aCB0aGUgbmV4dCBvbmVcbiAqICAgLSBgTm9kZWA6IFJlcGxhY2UgdGhlIGN1cnJlbnQgbm9kZSwgdGhlbiBjb250aW51ZSBieSB2aXNpdGluZyBpdFxuICogICAtIGBudW1iZXJgOiBXaGlsZSBpdGVyYXRpbmcgdGhlIGl0ZW1zIG9mIGEgc2VxdWVuY2Ugb3IgbWFwLCBzZXQgdGhlIGluZGV4XG4gKiAgICAgb2YgdGhlIG5leHQgc3RlcC4gVGhpcyBpcyB1c2VmdWwgZXNwZWNpYWxseSBpZiB0aGUgaW5kZXggb2YgdGhlIGN1cnJlbnRcbiAqICAgICBub2RlIGhhcyBjaGFuZ2VkLlxuICpcbiAqIElmIGB2aXNpdG9yYCBpcyBhIHNpbmdsZSBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQgd2l0aCBhbGwgdmFsdWVzXG4gKiBlbmNvdW50ZXJlZCBpbiB0aGUgdHJlZSwgaW5jbHVkaW5nIGUuZy4gYG51bGxgIHZhbHVlcy4gQWx0ZXJuYXRpdmVseSxcbiAqIHNlcGFyYXRlIHZpc2l0b3IgZnVuY3Rpb25zIG1heSBiZSBkZWZpbmVkIGZvciBlYWNoIGBNYXBgLCBgUGFpcmAsIGBTZXFgLFxuICogYEFsaWFzYCBhbmQgYFNjYWxhcmAgbm9kZS4gVG8gZGVmaW5lIHRoZSBzYW1lIHZpc2l0b3IgZnVuY3Rpb24gZm9yIG1vcmUgdGhhblxuICogb25lIG5vZGUgdHlwZSwgdXNlIHRoZSBgQ29sbGVjdGlvbmAgKG1hcCBhbmQgc2VxKSwgYFZhbHVlYCAobWFwLCBzZXEgJiBzY2FsYXIpXG4gKiBhbmQgYE5vZGVgIChhbGlhcywgbWFwLCBzZXEgJiBzY2FsYXIpIHRhcmdldHMuIE9mIGFsbCB0aGVzZSwgb25seSB0aGUgbW9zdFxuICogc3BlY2lmaWMgZGVmaW5lZCBvbmUgd2lsbCBiZSB1c2VkIGZvciBlYWNoIG5vZGUuXG4gKi9cbmZ1bmN0aW9uIHZpc2l0KG5vZGUsIHZpc2l0b3IpIHtcbiAgICBjb25zdCB2aXNpdG9yXyA9IGluaXRWaXNpdG9yKHZpc2l0b3IpO1xuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KG5vZGUpKSB7XG4gICAgICAgIGNvbnN0IGNkID0gdmlzaXRfKG51bGwsIG5vZGUuY29udGVudHMsIHZpc2l0b3JfLCBPYmplY3QuZnJlZXplKFtub2RlXSkpO1xuICAgICAgICBpZiAoY2QgPT09IFJFTU9WRSlcbiAgICAgICAgICAgIG5vZGUuY29udGVudHMgPSBudWxsO1xuICAgIH1cbiAgICBlbHNlXG4gICAgICAgIHZpc2l0XyhudWxsLCBub2RlLCB2aXNpdG9yXywgT2JqZWN0LmZyZWV6ZShbXSkpO1xufVxuLy8gV2l0aG91dCB0aGUgYGFzIHN5bWJvbGAgY2FzdHMsIFRTIGRlY2xhcmVzIHRoZXNlIGluIHRoZSBgdmlzaXRgXG4vLyBuYW1lc3BhY2UgdXNpbmcgYHZhcmAsIGJ1dCB0aGVuIGNvbXBsYWlucyBhYm91dCB0aGF0IGJlY2F1c2Vcbi8vIGB1bmlxdWUgc3ltYm9sYCBtdXN0IGJlIGBjb25zdGAuXG4vKiogVGVybWluYXRlIHZpc2l0IHRyYXZlcnNhbCBjb21wbGV0ZWx5ICovXG52aXNpdC5CUkVBSyA9IEJSRUFLO1xuLyoqIERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhlIGN1cnJlbnQgbm9kZSAqL1xudmlzaXQuU0tJUCA9IFNLSVA7XG4vKiogUmVtb3ZlIHRoZSBjdXJyZW50IG5vZGUgKi9cbnZpc2l0LlJFTU9WRSA9IFJFTU9WRTtcbmZ1bmN0aW9uIHZpc2l0XyhrZXksIG5vZGUsIHZpc2l0b3IsIHBhdGgpIHtcbiAgICBjb25zdCBjdHJsID0gY2FsbFZpc2l0b3Ioa2V5LCBub2RlLCB2aXNpdG9yLCBwYXRoKTtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGN0cmwpIHx8IGlkZW50aXR5LmlzUGFpcihjdHJsKSkge1xuICAgICAgICByZXBsYWNlTm9kZShrZXksIHBhdGgsIGN0cmwpO1xuICAgICAgICByZXR1cm4gdmlzaXRfKGtleSwgY3RybCwgdmlzaXRvciwgcGF0aCk7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgY3RybCAhPT0gJ3N5bWJvbCcpIHtcbiAgICAgICAgaWYgKGlkZW50aXR5LmlzQ29sbGVjdGlvbihub2RlKSkge1xuICAgICAgICAgICAgcGF0aCA9IE9iamVjdC5mcmVlemUocGF0aC5jb25jYXQobm9kZSkpO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBub2RlLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2kgPSB2aXNpdF8oaSwgbm9kZS5pdGVtc1tpXSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjaSA9PT0gJ251bWJlcicpXG4gICAgICAgICAgICAgICAgICAgIGkgPSBjaSAtIDE7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2kgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gQlJFQUs7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2kgPT09IFJFTU9WRSkge1xuICAgICAgICAgICAgICAgICAgICBub2RlLml0ZW1zLnNwbGljZShpLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgaSAtPSAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChpZGVudGl0eS5pc1BhaXIobm9kZSkpIHtcbiAgICAgICAgICAgIHBhdGggPSBPYmplY3QuZnJlZXplKHBhdGguY29uY2F0KG5vZGUpKTtcbiAgICAgICAgICAgIGNvbnN0IGNrID0gdmlzaXRfKCdrZXknLCBub2RlLmtleSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICBpZiAoY2sgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgIHJldHVybiBCUkVBSztcbiAgICAgICAgICAgIGVsc2UgaWYgKGNrID09PSBSRU1PVkUpXG4gICAgICAgICAgICAgICAgbm9kZS5rZXkgPSBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3YgPSB2aXNpdF8oJ3ZhbHVlJywgbm9kZS52YWx1ZSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICBpZiAoY3YgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgIHJldHVybiBCUkVBSztcbiAgICAgICAgICAgIGVsc2UgaWYgKGN2ID09PSBSRU1PVkUpXG4gICAgICAgICAgICAgICAgbm9kZS52YWx1ZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGN0cmw7XG59XG4vKipcbiAqIEFwcGx5IGFuIGFzeW5jIHZpc2l0b3IgdG8gYW4gQVNUIG5vZGUgb3IgZG9jdW1lbnQuXG4gKlxuICogV2Fsa3MgdGhyb3VnaCB0aGUgdHJlZSAoZGVwdGgtZmlyc3QpIHN0YXJ0aW5nIGZyb20gYG5vZGVgLCBjYWxsaW5nIGFcbiAqIGB2aXNpdG9yYCBmdW5jdGlvbiB3aXRoIHRocmVlIGFyZ3VtZW50czpcbiAqICAgLSBga2V5YDogRm9yIHNlcXVlbmNlIHZhbHVlcyBhbmQgbWFwIGBQYWlyYCwgdGhlIG5vZGUncyBpbmRleCBpbiB0aGVcbiAqICAgICBjb2xsZWN0aW9uLiBXaXRoaW4gYSBgUGFpcmAsIGAna2V5J2Agb3IgYCd2YWx1ZSdgLCBjb3JyZXNwb25kaW5nbHkuXG4gKiAgICAgYG51bGxgIGZvciB0aGUgcm9vdCBub2RlLlxuICogICAtIGBub2RlYDogVGhlIGN1cnJlbnQgbm9kZS5cbiAqICAgLSBgcGF0aGA6IFRoZSBhbmNlc3RyeSBvZiB0aGUgY3VycmVudCBub2RlLlxuICpcbiAqIFRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHZpc2l0b3IgbWF5IGJlIHVzZWQgdG8gY29udHJvbCB0aGUgdHJhdmVyc2FsOlxuICogICAtIGBQcm9taXNlYDogTXVzdCByZXNvbHZlIHRvIG9uZSBvZiB0aGUgZm9sbG93aW5nIHZhbHVlc1xuICogICAtIGB1bmRlZmluZWRgIChkZWZhdWx0KTogRG8gbm90aGluZyBhbmQgY29udGludWVcbiAqICAgLSBgdmlzaXQuU0tJUGA6IERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhpcyBub2RlLCBjb250aW51ZSB3aXRoIG5leHRcbiAqICAgICBzaWJsaW5nXG4gKiAgIC0gYHZpc2l0LkJSRUFLYDogVGVybWluYXRlIHRyYXZlcnNhbCBjb21wbGV0ZWx5XG4gKiAgIC0gYHZpc2l0LlJFTU9WRWA6IFJlbW92ZSB0aGUgY3VycmVudCBub2RlLCB0aGVuIGNvbnRpbnVlIHdpdGggdGhlIG5leHQgb25lXG4gKiAgIC0gYE5vZGVgOiBSZXBsYWNlIHRoZSBjdXJyZW50IG5vZGUsIHRoZW4gY29udGludWUgYnkgdmlzaXRpbmcgaXRcbiAqICAgLSBgbnVtYmVyYDogV2hpbGUgaXRlcmF0aW5nIHRoZSBpdGVtcyBvZiBhIHNlcXVlbmNlIG9yIG1hcCwgc2V0IHRoZSBpbmRleFxuICogICAgIG9mIHRoZSBuZXh0IHN0ZXAuIFRoaXMgaXMgdXNlZnVsIGVzcGVjaWFsbHkgaWYgdGhlIGluZGV4IG9mIHRoZSBjdXJyZW50XG4gKiAgICAgbm9kZSBoYXMgY2hhbmdlZC5cbiAqXG4gKiBJZiBgdmlzaXRvcmAgaXMgYSBzaW5nbGUgZnVuY3Rpb24sIGl0IHdpbGwgYmUgY2FsbGVkIHdpdGggYWxsIHZhbHVlc1xuICogZW5jb3VudGVyZWQgaW4gdGhlIHRyZWUsIGluY2x1ZGluZyBlLmcuIGBudWxsYCB2YWx1ZXMuIEFsdGVybmF0aXZlbHksXG4gKiBzZXBhcmF0ZSB2aXNpdG9yIGZ1bmN0aW9ucyBtYXkgYmUgZGVmaW5lZCBmb3IgZWFjaCBgTWFwYCwgYFBhaXJgLCBgU2VxYCxcbiAqIGBBbGlhc2AgYW5kIGBTY2FsYXJgIG5vZGUuIFRvIGRlZmluZSB0aGUgc2FtZSB2aXNpdG9yIGZ1bmN0aW9uIGZvciBtb3JlIHRoYW5cbiAqIG9uZSBub2RlIHR5cGUsIHVzZSB0aGUgYENvbGxlY3Rpb25gIChtYXAgYW5kIHNlcSksIGBWYWx1ZWAgKG1hcCwgc2VxICYgc2NhbGFyKVxuICogYW5kIGBOb2RlYCAoYWxpYXMsIG1hcCwgc2VxICYgc2NhbGFyKSB0YXJnZXRzLiBPZiBhbGwgdGhlc2UsIG9ubHkgdGhlIG1vc3RcbiAqIHNwZWNpZmljIGRlZmluZWQgb25lIHdpbGwgYmUgdXNlZCBmb3IgZWFjaCBub2RlLlxuICovXG5hc3luYyBmdW5jdGlvbiB2aXNpdEFzeW5jKG5vZGUsIHZpc2l0b3IpIHtcbiAgICBjb25zdCB2aXNpdG9yXyA9IGluaXRWaXNpdG9yKHZpc2l0b3IpO1xuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KG5vZGUpKSB7XG4gICAgICAgIGNvbnN0IGNkID0gYXdhaXQgdmlzaXRBc3luY18obnVsbCwgbm9kZS5jb250ZW50cywgdmlzaXRvcl8sIE9iamVjdC5mcmVlemUoW25vZGVdKSk7XG4gICAgICAgIGlmIChjZCA9PT0gUkVNT1ZFKVxuICAgICAgICAgICAgbm9kZS5jb250ZW50cyA9IG51bGw7XG4gICAgfVxuICAgIGVsc2VcbiAgICAgICAgYXdhaXQgdmlzaXRBc3luY18obnVsbCwgbm9kZSwgdmlzaXRvcl8sIE9iamVjdC5mcmVlemUoW10pKTtcbn1cbi8vIFdpdGhvdXQgdGhlIGBhcyBzeW1ib2xgIGNhc3RzLCBUUyBkZWNsYXJlcyB0aGVzZSBpbiB0aGUgYHZpc2l0YFxuLy8gbmFtZXNwYWNlIHVzaW5nIGB2YXJgLCBidXQgdGhlbiBjb21wbGFpbnMgYWJvdXQgdGhhdCBiZWNhdXNlXG4vLyBgdW5pcXVlIHN5bWJvbGAgbXVzdCBiZSBgY29uc3RgLlxuLyoqIFRlcm1pbmF0ZSB2aXNpdCB0cmF2ZXJzYWwgY29tcGxldGVseSAqL1xudmlzaXRBc3luYy5CUkVBSyA9IEJSRUFLO1xuLyoqIERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhlIGN1cnJlbnQgbm9kZSAqL1xudmlzaXRBc3luYy5TS0lQID0gU0tJUDtcbi8qKiBSZW1vdmUgdGhlIGN1cnJlbnQgbm9kZSAqL1xudmlzaXRBc3luYy5SRU1PVkUgPSBSRU1PVkU7XG5hc3luYyBmdW5jdGlvbiB2aXNpdEFzeW5jXyhrZXksIG5vZGUsIHZpc2l0b3IsIHBhdGgpIHtcbiAgICBjb25zdCBjdHJsID0gYXdhaXQgY2FsbFZpc2l0b3Ioa2V5LCBub2RlLCB2aXNpdG9yLCBwYXRoKTtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGN0cmwpIHx8IGlkZW50aXR5LmlzUGFpcihjdHJsKSkge1xuICAgICAgICByZXBsYWNlTm9kZShrZXksIHBhdGgsIGN0cmwpO1xuICAgICAgICByZXR1cm4gdmlzaXRBc3luY18oa2V5LCBjdHJsLCB2aXNpdG9yLCBwYXRoKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBjdHJsICE9PSAnc3ltYm9sJykge1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKSB7XG4gICAgICAgICAgICBwYXRoID0gT2JqZWN0LmZyZWV6ZShwYXRoLmNvbmNhdChub2RlKSk7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vZGUuaXRlbXMubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjaSA9IGF3YWl0IHZpc2l0QXN5bmNfKGksIG5vZGUuaXRlbXNbaV0sIHZpc2l0b3IsIHBhdGgpO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2kgPT09ICdudW1iZXInKVxuICAgICAgICAgICAgICAgICAgICBpID0gY2kgLSAxO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBCUkVBSylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEJSRUFLO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBSRU1PVkUpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5pdGVtcy5zcGxpY2UoaSwgMSk7XG4gICAgICAgICAgICAgICAgICAgIGkgLT0gMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKG5vZGUpKSB7XG4gICAgICAgICAgICBwYXRoID0gT2JqZWN0LmZyZWV6ZShwYXRoLmNvbmNhdChub2RlKSk7XG4gICAgICAgICAgICBjb25zdCBjayA9IGF3YWl0IHZpc2l0QXN5bmNfKCdrZXknLCBub2RlLmtleSwgdmlzaXRvciwgcGF0aCk7XG4gICAgICAgICAgICBpZiAoY2sgPT09IEJSRUFLKVxuICAgICAgICAgICAgICAgIHJldHVybiBCUkVBSztcbiAgICAgICAgICAgIGVsc2UgaWYgKGNrID09PSBSRU1PVkUpXG4gICAgICAgICAgICAgICAgbm9kZS5rZXkgPSBudWxsO1xuICAgICAgICAgICAgY29uc3QgY3YgPSBhd2FpdCB2aXNpdEFzeW5jXygndmFsdWUnLCBub2RlLnZhbHVlLCB2aXNpdG9yLCBwYXRoKTtcbiAgICAgICAgICAgIGlmIChjdiA9PT0gQlJFQUspXG4gICAgICAgICAgICAgICAgcmV0dXJuIEJSRUFLO1xuICAgICAgICAgICAgZWxzZSBpZiAoY3YgPT09IFJFTU9WRSlcbiAgICAgICAgICAgICAgICBub2RlLnZhbHVlID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gY3RybDtcbn1cbmZ1bmN0aW9uIGluaXRWaXNpdG9yKHZpc2l0b3IpIHtcbiAgICBpZiAodHlwZW9mIHZpc2l0b3IgPT09ICdvYmplY3QnICYmXG4gICAgICAgICh2aXNpdG9yLkNvbGxlY3Rpb24gfHwgdmlzaXRvci5Ob2RlIHx8IHZpc2l0b3IuVmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICAgIEFsaWFzOiB2aXNpdG9yLk5vZGUsXG4gICAgICAgICAgICBNYXA6IHZpc2l0b3IuTm9kZSxcbiAgICAgICAgICAgIFNjYWxhcjogdmlzaXRvci5Ob2RlLFxuICAgICAgICAgICAgU2VxOiB2aXNpdG9yLk5vZGVcbiAgICAgICAgfSwgdmlzaXRvci5WYWx1ZSAmJiB7XG4gICAgICAgICAgICBNYXA6IHZpc2l0b3IuVmFsdWUsXG4gICAgICAgICAgICBTY2FsYXI6IHZpc2l0b3IuVmFsdWUsXG4gICAgICAgICAgICBTZXE6IHZpc2l0b3IuVmFsdWVcbiAgICAgICAgfSwgdmlzaXRvci5Db2xsZWN0aW9uICYmIHtcbiAgICAgICAgICAgIE1hcDogdmlzaXRvci5Db2xsZWN0aW9uLFxuICAgICAgICAgICAgU2VxOiB2aXNpdG9yLkNvbGxlY3Rpb25cbiAgICAgICAgfSwgdmlzaXRvcik7XG4gICAgfVxuICAgIHJldHVybiB2aXNpdG9yO1xufVxuZnVuY3Rpb24gY2FsbFZpc2l0b3Ioa2V5LCBub2RlLCB2aXNpdG9yLCBwYXRoKSB7XG4gICAgaWYgKHR5cGVvZiB2aXNpdG9yID09PSAnZnVuY3Rpb24nKVxuICAgICAgICByZXR1cm4gdmlzaXRvcihrZXksIG5vZGUsIHBhdGgpO1xuICAgIGlmIChpZGVudGl0eS5pc01hcChub2RlKSlcbiAgICAgICAgcmV0dXJuIHZpc2l0b3IuTWFwPy4oa2V5LCBub2RlLCBwYXRoKTtcbiAgICBpZiAoaWRlbnRpdHkuaXNTZXEobm9kZSkpXG4gICAgICAgIHJldHVybiB2aXNpdG9yLlNlcT8uKGtleSwgbm9kZSwgcGF0aCk7XG4gICAgaWYgKGlkZW50aXR5LmlzUGFpcihub2RlKSlcbiAgICAgICAgcmV0dXJuIHZpc2l0b3IuUGFpcj8uKGtleSwgbm9kZSwgcGF0aCk7XG4gICAgaWYgKGlkZW50aXR5LmlzU2NhbGFyKG5vZGUpKVxuICAgICAgICByZXR1cm4gdmlzaXRvci5TY2FsYXI/LihrZXksIG5vZGUsIHBhdGgpO1xuICAgIGlmIChpZGVudGl0eS5pc0FsaWFzKG5vZGUpKVxuICAgICAgICByZXR1cm4gdmlzaXRvci5BbGlhcz8uKGtleSwgbm9kZSwgcGF0aCk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbmZ1bmN0aW9uIHJlcGxhY2VOb2RlKGtleSwgcGF0aCwgbm9kZSkge1xuICAgIGNvbnN0IHBhcmVudCA9IHBhdGhbcGF0aC5sZW5ndGggLSAxXTtcbiAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHBhcmVudCkpIHtcbiAgICAgICAgcGFyZW50Lml0ZW1zW2tleV0gPSBub2RlO1xuICAgIH1cbiAgICBlbHNlIGlmIChpZGVudGl0eS5pc1BhaXIocGFyZW50KSkge1xuICAgICAgICBpZiAoa2V5ID09PSAna2V5JylcbiAgICAgICAgICAgIHBhcmVudC5rZXkgPSBub2RlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBwYXJlbnQudmFsdWUgPSBub2RlO1xuICAgIH1cbiAgICBlbHNlIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KHBhcmVudCkpIHtcbiAgICAgICAgcGFyZW50LmNvbnRlbnRzID0gbm9kZTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IHB0ID0gaWRlbnRpdHkuaXNBbGlhcyhwYXJlbnQpID8gJ2FsaWFzJyA6ICdzY2FsYXInO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCByZXBsYWNlIG5vZGUgd2l0aCAke3B0fSBwYXJlbnRgKTtcbiAgICB9XG59XG5cbmV4cG9ydHMudmlzaXQgPSB2aXNpdDtcbmV4cG9ydHMudmlzaXRBc3luYyA9IHZpc2l0QXN5bmM7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIHZpc2l0ID0gcmVxdWlyZSgnLi4vdmlzaXQuanMnKTtcblxuY29uc3QgZXNjYXBlQ2hhcnMgPSB7XG4gICAgJyEnOiAnJTIxJyxcbiAgICAnLCc6ICclMkMnLFxuICAgICdbJzogJyU1QicsXG4gICAgJ10nOiAnJTVEJyxcbiAgICAneyc6ICclN0InLFxuICAgICd9JzogJyU3RCdcbn07XG5jb25zdCBlc2NhcGVUYWdOYW1lID0gKHRuKSA9PiB0bi5yZXBsYWNlKC9bISxbXFxde31dL2csIGNoID0+IGVzY2FwZUNoYXJzW2NoXSk7XG5jbGFzcyBEaXJlY3RpdmVzIHtcbiAgICBjb25zdHJ1Y3Rvcih5YW1sLCB0YWdzKSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUaGUgZGlyZWN0aXZlcy1lbmQvZG9jLXN0YXJ0IG1hcmtlciBgLS0tYC4gSWYgYG51bGxgLCBhIG1hcmtlciBtYXkgc3RpbGwgYmVcbiAgICAgICAgICogaW5jbHVkZWQgaW4gdGhlIGRvY3VtZW50J3Mgc3RyaW5naWZpZWQgcmVwcmVzZW50YXRpb24uXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmRvY1N0YXJ0ID0gbnVsbDtcbiAgICAgICAgLyoqIFRoZSBkb2MtZW5kIG1hcmtlciBgLi4uYC4gICovXG4gICAgICAgIHRoaXMuZG9jRW5kID0gZmFsc2U7XG4gICAgICAgIHRoaXMueWFtbCA9IE9iamVjdC5hc3NpZ24oe30sIERpcmVjdGl2ZXMuZGVmYXVsdFlhbWwsIHlhbWwpO1xuICAgICAgICB0aGlzLnRhZ3MgPSBPYmplY3QuYXNzaWduKHt9LCBEaXJlY3RpdmVzLmRlZmF1bHRUYWdzLCB0YWdzKTtcbiAgICB9XG4gICAgY2xvbmUoKSB7XG4gICAgICAgIGNvbnN0IGNvcHkgPSBuZXcgRGlyZWN0aXZlcyh0aGlzLnlhbWwsIHRoaXMudGFncyk7XG4gICAgICAgIGNvcHkuZG9jU3RhcnQgPSB0aGlzLmRvY1N0YXJ0O1xuICAgICAgICByZXR1cm4gY29weTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogRHVyaW5nIHBhcnNpbmcsIGdldCBhIERpcmVjdGl2ZXMgaW5zdGFuY2UgZm9yIHRoZSBjdXJyZW50IGRvY3VtZW50IGFuZFxuICAgICAqIHVwZGF0ZSB0aGUgc3RyZWFtIHN0YXRlIGFjY29yZGluZyB0byB0aGUgY3VycmVudCB2ZXJzaW9uJ3Mgc3BlYy5cbiAgICAgKi9cbiAgICBhdERvY3VtZW50KCkge1xuICAgICAgICBjb25zdCByZXMgPSBuZXcgRGlyZWN0aXZlcyh0aGlzLnlhbWwsIHRoaXMudGFncyk7XG4gICAgICAgIHN3aXRjaCAodGhpcy55YW1sLnZlcnNpb24pIHtcbiAgICAgICAgICAgIGNhc2UgJzEuMSc6XG4gICAgICAgICAgICAgICAgdGhpcy5hdE5leHREb2N1bWVudCA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICcxLjInOlxuICAgICAgICAgICAgICAgIHRoaXMuYXROZXh0RG9jdW1lbnQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLnlhbWwgPSB7XG4gICAgICAgICAgICAgICAgICAgIGV4cGxpY2l0OiBEaXJlY3RpdmVzLmRlZmF1bHRZYW1sLmV4cGxpY2l0LFxuICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uOiAnMS4yJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgdGhpcy50YWdzID0gT2JqZWN0LmFzc2lnbih7fSwgRGlyZWN0aXZlcy5kZWZhdWx0VGFncyk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG4gICAgLyoqXG4gICAgICogQHBhcmFtIG9uRXJyb3IgLSBNYXkgYmUgY2FsbGVkIGV2ZW4gaWYgdGhlIGFjdGlvbiB3YXMgc3VjY2Vzc2Z1bFxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBvbiBzdWNjZXNzXG4gICAgICovXG4gICAgYWRkKGxpbmUsIG9uRXJyb3IpIHtcbiAgICAgICAgaWYgKHRoaXMuYXROZXh0RG9jdW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMueWFtbCA9IHsgZXhwbGljaXQ6IERpcmVjdGl2ZXMuZGVmYXVsdFlhbWwuZXhwbGljaXQsIHZlcnNpb246ICcxLjEnIH07XG4gICAgICAgICAgICB0aGlzLnRhZ3MgPSBPYmplY3QuYXNzaWduKHt9LCBEaXJlY3RpdmVzLmRlZmF1bHRUYWdzKTtcbiAgICAgICAgICAgIHRoaXMuYXROZXh0RG9jdW1lbnQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwYXJ0cyA9IGxpbmUudHJpbSgpLnNwbGl0KC9bIFxcdF0rLyk7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBwYXJ0cy5zaGlmdCgpO1xuICAgICAgICBzd2l0Y2ggKG5hbWUpIHtcbiAgICAgICAgICAgIGNhc2UgJyVUQUcnOiB7XG4gICAgICAgICAgICAgICAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMikge1xuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKDAsICclVEFHIGRpcmVjdGl2ZSBzaG91bGQgY29udGFpbiBleGFjdGx5IHR3byBwYXJ0cycpO1xuICAgICAgICAgICAgICAgICAgICBpZiAocGFydHMubGVuZ3RoIDwgMilcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgW2hhbmRsZSwgcHJlZml4XSA9IHBhcnRzO1xuICAgICAgICAgICAgICAgIHRoaXMudGFnc1toYW5kbGVdID0gcHJlZml4O1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnJVlBTUwnOiB7XG4gICAgICAgICAgICAgICAgdGhpcy55YW1sLmV4cGxpY2l0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpZiAocGFydHMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoMCwgJyVZQU1MIGRpcmVjdGl2ZSBzaG91bGQgY29udGFpbiBleGFjdGx5IG9uZSBwYXJ0Jyk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgW3ZlcnNpb25dID0gcGFydHM7XG4gICAgICAgICAgICAgICAgaWYgKHZlcnNpb24gPT09ICcxLjEnIHx8IHZlcnNpb24gPT09ICcxLjInKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMueWFtbC52ZXJzaW9uID0gdmVyc2lvbjtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1ZhbGlkID0gL15cXGQrXFwuXFxkKyQvLnRlc3QodmVyc2lvbik7XG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoNiwgYFVuc3VwcG9ydGVkIFlBTUwgdmVyc2lvbiAke3ZlcnNpb259YCwgaXNWYWxpZCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIG9uRXJyb3IoMCwgYFVua25vd24gZGlyZWN0aXZlICR7bmFtZX1gLCB0cnVlKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVzb2x2ZXMgYSB0YWcsIG1hdGNoaW5nIGhhbmRsZXMgdG8gdGhvc2UgZGVmaW5lZCBpbiAlVEFHIGRpcmVjdGl2ZXMuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBSZXNvbHZlZCB0YWcsIHdoaWNoIG1heSBhbHNvIGJlIHRoZSBub24tc3BlY2lmaWMgdGFnIGAnISdgIG9yIGFcbiAgICAgKiAgIGAnIWxvY2FsJ2AgdGFnLCBvciBgbnVsbGAgaWYgdW5yZXNvbHZhYmxlLlxuICAgICAqL1xuICAgIHRhZ05hbWUoc291cmNlLCBvbkVycm9yKSB7XG4gICAgICAgIGlmIChzb3VyY2UgPT09ICchJylcbiAgICAgICAgICAgIHJldHVybiAnISc7IC8vIG5vbi1zcGVjaWZpYyB0YWdcbiAgICAgICAgaWYgKHNvdXJjZVswXSAhPT0gJyEnKSB7XG4gICAgICAgICAgICBvbkVycm9yKGBOb3QgYSB2YWxpZCB0YWc6ICR7c291cmNlfWApO1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHNvdXJjZVsxXSA9PT0gJzwnKSB7XG4gICAgICAgICAgICBjb25zdCB2ZXJiYXRpbSA9IHNvdXJjZS5zbGljZSgyLCAtMSk7XG4gICAgICAgICAgICBpZiAodmVyYmF0aW0gPT09ICchJyB8fCB2ZXJiYXRpbSA9PT0gJyEhJykge1xuICAgICAgICAgICAgICAgIG9uRXJyb3IoYFZlcmJhdGltIHRhZ3MgYXJlbid0IHJlc29sdmVkLCBzbyAke3NvdXJjZX0gaXMgaW52YWxpZC5gKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzb3VyY2Vbc291cmNlLmxlbmd0aCAtIDFdICE9PSAnPicpXG4gICAgICAgICAgICAgICAgb25FcnJvcignVmVyYmF0aW0gdGFncyBtdXN0IGVuZCB3aXRoIGEgPicpO1xuICAgICAgICAgICAgcmV0dXJuIHZlcmJhdGltO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IFssIGhhbmRsZSwgc3VmZml4XSA9IHNvdXJjZS5tYXRjaCgvXiguKiEpKFteIV0qKSQvcyk7XG4gICAgICAgIGlmICghc3VmZml4KVxuICAgICAgICAgICAgb25FcnJvcihgVGhlICR7c291cmNlfSB0YWcgaGFzIG5vIHN1ZmZpeGApO1xuICAgICAgICBjb25zdCBwcmVmaXggPSB0aGlzLnRhZ3NbaGFuZGxlXTtcbiAgICAgICAgaWYgKHByZWZpeCkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJlZml4ICsgZGVjb2RlVVJJQ29tcG9uZW50KHN1ZmZpeCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBvbkVycm9yKFN0cmluZyhlcnJvcikpO1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChoYW5kbGUgPT09ICchJylcbiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7IC8vIGxvY2FsIHRhZ1xuICAgICAgICBvbkVycm9yKGBDb3VsZCBub3QgcmVzb2x2ZSB0YWc6ICR7c291cmNlfWApO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogR2l2ZW4gYSBmdWxseSByZXNvbHZlZCB0YWcsIHJldHVybnMgaXRzIHByaW50YWJsZSBzdHJpbmcgZm9ybSxcbiAgICAgKiB0YWtpbmcgaW50byBhY2NvdW50IGN1cnJlbnQgdGFnIHByZWZpeGVzIGFuZCBkZWZhdWx0cy5cbiAgICAgKi9cbiAgICB0YWdTdHJpbmcodGFnKSB7XG4gICAgICAgIGZvciAoY29uc3QgW2hhbmRsZSwgcHJlZml4XSBvZiBPYmplY3QuZW50cmllcyh0aGlzLnRhZ3MpKSB7XG4gICAgICAgICAgICBpZiAodGFnLnN0YXJ0c1dpdGgocHJlZml4KSlcbiAgICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlICsgZXNjYXBlVGFnTmFtZSh0YWcuc3Vic3RyaW5nKHByZWZpeC5sZW5ndGgpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGFnWzBdID09PSAnIScgPyB0YWcgOiBgITwke3RhZ30+YDtcbiAgICB9XG4gICAgdG9TdHJpbmcoZG9jKSB7XG4gICAgICAgIGNvbnN0IGxpbmVzID0gdGhpcy55YW1sLmV4cGxpY2l0XG4gICAgICAgICAgICA/IFtgJVlBTUwgJHt0aGlzLnlhbWwudmVyc2lvbiB8fCAnMS4yJ31gXVxuICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgY29uc3QgdGFnRW50cmllcyA9IE9iamVjdC5lbnRyaWVzKHRoaXMudGFncyk7XG4gICAgICAgIGxldCB0YWdOYW1lcztcbiAgICAgICAgaWYgKGRvYyAmJiB0YWdFbnRyaWVzLmxlbmd0aCA+IDAgJiYgaWRlbnRpdHkuaXNOb2RlKGRvYy5jb250ZW50cykpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhZ3MgPSB7fTtcbiAgICAgICAgICAgIHZpc2l0LnZpc2l0KGRvYy5jb250ZW50cywgKF9rZXksIG5vZGUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKG5vZGUpICYmIG5vZGUudGFnKVxuICAgICAgICAgICAgICAgICAgICB0YWdzW25vZGUudGFnXSA9IHRydWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRhZ05hbWVzID0gT2JqZWN0LmtleXModGFncyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgdGFnTmFtZXMgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCBbaGFuZGxlLCBwcmVmaXhdIG9mIHRhZ0VudHJpZXMpIHtcbiAgICAgICAgICAgIGlmIChoYW5kbGUgPT09ICchIScgJiYgcHJlZml4ID09PSAndGFnOnlhbWwub3JnLDIwMDI6JylcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGlmICghZG9jIHx8IHRhZ05hbWVzLnNvbWUodG4gPT4gdG4uc3RhcnRzV2l0aChwcmVmaXgpKSlcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKGAlVEFHICR7aGFuZGxlfSAke3ByZWZpeH1gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbGluZXMuam9pbignXFxuJyk7XG4gICAgfVxufVxuRGlyZWN0aXZlcy5kZWZhdWx0WWFtbCA9IHsgZXhwbGljaXQ6IGZhbHNlLCB2ZXJzaW9uOiAnMS4yJyB9O1xuRGlyZWN0aXZlcy5kZWZhdWx0VGFncyA9IHsgJyEhJzogJ3RhZzp5YW1sLm9yZywyMDAyOicgfTtcblxuZXhwb3J0cy5EaXJlY3RpdmVzID0gRGlyZWN0aXZlcztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgdmlzaXQgPSByZXF1aXJlKCcuLi92aXNpdC5qcycpO1xuXG4vKipcbiAqIFZlcmlmeSB0aGF0IHRoZSBpbnB1dCBzdHJpbmcgaXMgYSB2YWxpZCBhbmNob3IuXG4gKlxuICogV2lsbCB0aHJvdyBvbiBlcnJvcnMuXG4gKi9cbmZ1bmN0aW9uIGFuY2hvcklzVmFsaWQoYW5jaG9yKSB7XG4gICAgaWYgKC9bXFx4MDAtXFx4MTlcXHMsW1xcXXt9XS8udGVzdChhbmNob3IpKSB7XG4gICAgICAgIGNvbnN0IHNhID0gSlNPTi5zdHJpbmdpZnkoYW5jaG9yKTtcbiAgICAgICAgY29uc3QgbXNnID0gYEFuY2hvciBtdXN0IG5vdCBjb250YWluIHdoaXRlc3BhY2Ugb3IgY29udHJvbCBjaGFyYWN0ZXJzOiAke3NhfWA7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbn1cbmZ1bmN0aW9uIGFuY2hvck5hbWVzKHJvb3QpIHtcbiAgICBjb25zdCBhbmNob3JzID0gbmV3IFNldCgpO1xuICAgIHZpc2l0LnZpc2l0KHJvb3QsIHtcbiAgICAgICAgVmFsdWUoX2tleSwgbm9kZSkge1xuICAgICAgICAgICAgaWYgKG5vZGUuYW5jaG9yKVxuICAgICAgICAgICAgICAgIGFuY2hvcnMuYWRkKG5vZGUuYW5jaG9yKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBhbmNob3JzO1xufVxuLyoqIEZpbmQgYSBuZXcgYW5jaG9yIG5hbWUgd2l0aCB0aGUgZ2l2ZW4gYHByZWZpeGAgYW5kIGEgb25lLWluZGV4ZWQgc3VmZml4LiAqL1xuZnVuY3Rpb24gZmluZE5ld0FuY2hvcihwcmVmaXgsIGV4Y2x1ZGUpIHtcbiAgICBmb3IgKGxldCBpID0gMTsgdHJ1ZTsgKytpKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBgJHtwcmVmaXh9JHtpfWA7XG4gICAgICAgIGlmICghZXhjbHVkZS5oYXMobmFtZSkpXG4gICAgICAgICAgICByZXR1cm4gbmFtZTtcbiAgICB9XG59XG5mdW5jdGlvbiBjcmVhdGVOb2RlQW5jaG9ycyhkb2MsIHByZWZpeCkge1xuICAgIGNvbnN0IGFsaWFzT2JqZWN0cyA9IFtdO1xuICAgIGNvbnN0IHNvdXJjZU9iamVjdHMgPSBuZXcgTWFwKCk7XG4gICAgbGV0IHByZXZBbmNob3JzID0gbnVsbDtcbiAgICByZXR1cm4ge1xuICAgICAgICBvbkFuY2hvcjogKHNvdXJjZSkgPT4ge1xuICAgICAgICAgICAgYWxpYXNPYmplY3RzLnB1c2goc291cmNlKTtcbiAgICAgICAgICAgIHByZXZBbmNob3JzID8/IChwcmV2QW5jaG9ycyA9IGFuY2hvck5hbWVzKGRvYykpO1xuICAgICAgICAgICAgY29uc3QgYW5jaG9yID0gZmluZE5ld0FuY2hvcihwcmVmaXgsIHByZXZBbmNob3JzKTtcbiAgICAgICAgICAgIHByZXZBbmNob3JzLmFkZChhbmNob3IpO1xuICAgICAgICAgICAgcmV0dXJuIGFuY2hvcjtcbiAgICAgICAgfSxcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFdpdGggY2lyY3VsYXIgcmVmZXJlbmNlcywgdGhlIHNvdXJjZSBub2RlIGlzIG9ubHkgcmVzb2x2ZWQgYWZ0ZXIgYWxsXG4gICAgICAgICAqIG9mIGl0cyBjaGlsZCBub2RlcyBhcmUuIFRoaXMgaXMgd2h5IGFuY2hvcnMgYXJlIHNldCBvbmx5IGFmdGVyIGFsbCBvZlxuICAgICAgICAgKiB0aGUgbm9kZXMgaGF2ZSBiZWVuIGNyZWF0ZWQuXG4gICAgICAgICAqL1xuICAgICAgICBzZXRBbmNob3JzOiAoKSA9PiB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHNvdXJjZSBvZiBhbGlhc09iamVjdHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZWYgPSBzb3VyY2VPYmplY3RzLmdldChzb3VyY2UpO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcmVmID09PSAnb2JqZWN0JyAmJlxuICAgICAgICAgICAgICAgICAgICByZWYuYW5jaG9yICYmXG4gICAgICAgICAgICAgICAgICAgIChpZGVudGl0eS5pc1NjYWxhcihyZWYubm9kZSkgfHwgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHJlZi5ub2RlKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVmLm5vZGUuYW5jaG9yID0gcmVmLmFuY2hvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKCdGYWlsZWQgdG8gcmVzb2x2ZSByZXBlYXRlZCBvYmplY3QgKHRoaXMgc2hvdWxkIG5vdCBoYXBwZW4pJyk7XG4gICAgICAgICAgICAgICAgICAgIGVycm9yLnNvdXJjZSA9IHNvdXJjZTtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBzb3VyY2VPYmplY3RzXG4gICAgfTtcbn1cblxuZXhwb3J0cy5hbmNob3JJc1ZhbGlkID0gYW5jaG9ySXNWYWxpZDtcbmV4cG9ydHMuYW5jaG9yTmFtZXMgPSBhbmNob3JOYW1lcztcbmV4cG9ydHMuY3JlYXRlTm9kZUFuY2hvcnMgPSBjcmVhdGVOb2RlQW5jaG9ycztcbmV4cG9ydHMuZmluZE5ld0FuY2hvciA9IGZpbmROZXdBbmNob3I7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG4vKipcbiAqIEFwcGxpZXMgdGhlIEpTT04ucGFyc2UgcmV2aXZlciBhbGdvcml0aG0gYXMgZGVmaW5lZCBpbiB0aGUgRUNNQS0yNjIgc3BlYyxcbiAqIGluIHNlY3Rpb24gMjQuNS4xLjEgXCJSdW50aW1lIFNlbWFudGljczogSW50ZXJuYWxpemVKU09OUHJvcGVydHlcIiBvZiB0aGVcbiAqIDIwMjEgZWRpdGlvbjogaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1qc29uLnBhcnNlXG4gKlxuICogSW5jbHVkZXMgZXh0ZW5zaW9ucyBmb3IgaGFuZGxpbmcgTWFwIGFuZCBTZXQgb2JqZWN0cy5cbiAqL1xuZnVuY3Rpb24gYXBwbHlSZXZpdmVyKHJldml2ZXIsIG9iaiwga2V5LCB2YWwpIHtcbiAgICBpZiAodmFsICYmIHR5cGVvZiB2YWwgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB2YWwubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB2MCA9IHZhbFtpXTtcbiAgICAgICAgICAgICAgICBjb25zdCB2MSA9IGFwcGx5UmV2aXZlcihyZXZpdmVyLCB2YWwsIFN0cmluZyhpKSwgdjApO1xuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tYXJyYXktZGVsZXRlXG4gICAgICAgICAgICAgICAgaWYgKHYxID09PSB1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB2YWxbaV07XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodjEgIT09IHYwKVxuICAgICAgICAgICAgICAgICAgICB2YWxbaV0gPSB2MTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh2YWwgaW5zdGFuY2VvZiBNYXApIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgayBvZiBBcnJheS5mcm9tKHZhbC5rZXlzKCkpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdjAgPSB2YWwuZ2V0KGspO1xuICAgICAgICAgICAgICAgIGNvbnN0IHYxID0gYXBwbHlSZXZpdmVyKHJldml2ZXIsIHZhbCwgaywgdjApO1xuICAgICAgICAgICAgICAgIGlmICh2MSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgICAgICB2YWwuZGVsZXRlKGspO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHYxICE9PSB2MClcbiAgICAgICAgICAgICAgICAgICAgdmFsLnNldChrLCB2MSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodmFsIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHYwIG9mIEFycmF5LmZyb20odmFsKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHYxID0gYXBwbHlSZXZpdmVyKHJldml2ZXIsIHZhbCwgdjAsIHYwKTtcbiAgICAgICAgICAgICAgICBpZiAodjEgPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAgICAgdmFsLmRlbGV0ZSh2MCk7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodjEgIT09IHYwKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbC5kZWxldGUodjApO1xuICAgICAgICAgICAgICAgICAgICB2YWwuYWRkKHYxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrLCB2MF0gb2YgT2JqZWN0LmVudHJpZXModmFsKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHYxID0gYXBwbHlSZXZpdmVyKHJldml2ZXIsIHZhbCwgaywgdjApO1xuICAgICAgICAgICAgICAgIGlmICh2MSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgICAgICBkZWxldGUgdmFsW2tdO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHYxICE9PSB2MClcbiAgICAgICAgICAgICAgICAgICAgdmFsW2tdID0gdjE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJldml2ZXIuY2FsbChvYmosIGtleSwgdmFsKTtcbn1cblxuZXhwb3J0cy5hcHBseVJldml2ZXIgPSBhcHBseVJldml2ZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5LmpzJyk7XG5cbi8qKlxuICogUmVjdXJzaXZlbHkgY29udmVydCBhbnkgbm9kZSBvciBpdHMgY29udGVudHMgdG8gbmF0aXZlIEphdmFTY3JpcHRcbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgaW5wdXQgdmFsdWVcbiAqIEBwYXJhbSBhcmcgLSBJZiBgdmFsdWVgIGRlZmluZXMgYSBgdG9KU09OKClgIG1ldGhvZCwgdXNlIHRoaXNcbiAqICAgYXMgaXRzIGZpcnN0IGFyZ3VtZW50XG4gKiBAcGFyYW0gY3R4IC0gQ29udmVyc2lvbiBjb250ZXh0LCBvcmlnaW5hbGx5IHNldCBpbiBEb2N1bWVudCN0b0pTKCkuIElmXG4gKiAgIGB7IGtlZXA6IHRydWUgfWAgaXMgbm90IHNldCwgb3V0cHV0IHNob3VsZCBiZSBzdWl0YWJsZSBmb3IgSlNPTlxuICogICBzdHJpbmdpZmljYXRpb24uXG4gKi9cbmZ1bmN0aW9uIHRvSlModmFsdWUsIGFyZywgY3R4KSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtcmV0dXJuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKVxuICAgICAgICByZXR1cm4gdmFsdWUubWFwKCh2LCBpKSA9PiB0b0pTKHYsIFN0cmluZyhpKSwgY3R4KSk7XG4gICAgaWYgKHZhbHVlICYmIHR5cGVvZiB2YWx1ZS50b0pTT04gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtY2FsbFxuICAgICAgICBpZiAoIWN0eCB8fCAhaWRlbnRpdHkuaGFzQW5jaG9yKHZhbHVlKSlcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS50b0pTT04oYXJnLCBjdHgpO1xuICAgICAgICBjb25zdCBkYXRhID0geyBhbGlhc0NvdW50OiAwLCBjb3VudDogMSwgcmVzOiB1bmRlZmluZWQgfTtcbiAgICAgICAgY3R4LmFuY2hvcnMuc2V0KHZhbHVlLCBkYXRhKTtcbiAgICAgICAgY3R4Lm9uQ3JlYXRlID0gcmVzID0+IHtcbiAgICAgICAgICAgIGRhdGEucmVzID0gcmVzO1xuICAgICAgICAgICAgZGVsZXRlIGN0eC5vbkNyZWF0ZTtcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgcmVzID0gdmFsdWUudG9KU09OKGFyZywgY3R4KTtcbiAgICAgICAgaWYgKGN0eC5vbkNyZWF0ZSlcbiAgICAgICAgICAgIGN0eC5vbkNyZWF0ZShyZXMpO1xuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnYmlnaW50JyAmJiAhY3R4Py5rZWVwKVxuICAgICAgICByZXR1cm4gTnVtYmVyKHZhbHVlKTtcbiAgICByZXR1cm4gdmFsdWU7XG59XG5cbmV4cG9ydHMudG9KUyA9IHRvSlM7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgYXBwbHlSZXZpdmVyID0gcmVxdWlyZSgnLi4vZG9jL2FwcGx5UmV2aXZlci5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eS5qcycpO1xudmFyIHRvSlMgPSByZXF1aXJlKCcuL3RvSlMuanMnKTtcblxuY2xhc3MgTm9kZUJhc2Uge1xuICAgIGNvbnN0cnVjdG9yKHR5cGUpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIGlkZW50aXR5Lk5PREVfVFlQRSwgeyB2YWx1ZTogdHlwZSB9KTtcbiAgICB9XG4gICAgLyoqIENyZWF0ZSBhIGNvcHkgb2YgdGhpcyBub2RlLiAgKi9cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgY29uc3QgY29weSA9IE9iamVjdC5jcmVhdGUoT2JqZWN0LmdldFByb3RvdHlwZU9mKHRoaXMpLCBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyh0aGlzKSk7XG4gICAgICAgIGlmICh0aGlzLnJhbmdlKVxuICAgICAgICAgICAgY29weS5yYW5nZSA9IHRoaXMucmFuZ2Uuc2xpY2UoKTtcbiAgICAgICAgcmV0dXJuIGNvcHk7XG4gICAgfVxuICAgIC8qKiBBIHBsYWluIEphdmFTY3JpcHQgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBub2RlLiAqL1xuICAgIHRvSlMoZG9jLCB7IG1hcEFzTWFwLCBtYXhBbGlhc0NvdW50LCBvbkFuY2hvciwgcmV2aXZlciB9ID0ge30pIHtcbiAgICAgICAgaWYgKCFpZGVudGl0eS5pc0RvY3VtZW50KGRvYykpXG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdBIGRvY3VtZW50IGFyZ3VtZW50IGlzIHJlcXVpcmVkJyk7XG4gICAgICAgIGNvbnN0IGN0eCA9IHtcbiAgICAgICAgICAgIGFuY2hvcnM6IG5ldyBNYXAoKSxcbiAgICAgICAgICAgIGRvYyxcbiAgICAgICAgICAgIGtlZXA6IHRydWUsXG4gICAgICAgICAgICBtYXBBc01hcDogbWFwQXNNYXAgPT09IHRydWUsXG4gICAgICAgICAgICBtYXBLZXlXYXJuZWQ6IGZhbHNlLFxuICAgICAgICAgICAgbWF4QWxpYXNDb3VudDogdHlwZW9mIG1heEFsaWFzQ291bnQgPT09ICdudW1iZXInID8gbWF4QWxpYXNDb3VudCA6IDEwMFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCByZXMgPSB0b0pTLnRvSlModGhpcywgJycsIGN0eCk7XG4gICAgICAgIGlmICh0eXBlb2Ygb25BbmNob3IgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHsgY291bnQsIHJlcyB9IG9mIGN0eC5hbmNob3JzLnZhbHVlcygpKVxuICAgICAgICAgICAgICAgIG9uQW5jaG9yKHJlcywgY291bnQpO1xuICAgICAgICByZXR1cm4gdHlwZW9mIHJldml2ZXIgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgID8gYXBwbHlSZXZpdmVyLmFwcGx5UmV2aXZlcihyZXZpdmVyLCB7ICcnOiByZXMgfSwgJycsIHJlcylcbiAgICAgICAgICAgIDogcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0cy5Ob2RlQmFzZSA9IE5vZGVCYXNlO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGFuY2hvcnMgPSByZXF1aXJlKCcuLi9kb2MvYW5jaG9ycy5qcycpO1xudmFyIHZpc2l0ID0gcmVxdWlyZSgnLi4vdmlzaXQuanMnKTtcbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vaWRlbnRpdHkuanMnKTtcbnZhciBOb2RlID0gcmVxdWlyZSgnLi9Ob2RlLmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4vdG9KUy5qcycpO1xuXG5jbGFzcyBBbGlhcyBleHRlbmRzIE5vZGUuTm9kZUJhc2Uge1xuICAgIGNvbnN0cnVjdG9yKHNvdXJjZSkge1xuICAgICAgICBzdXBlcihpZGVudGl0eS5BTElBUyk7XG4gICAgICAgIHRoaXMuc291cmNlID0gc291cmNlO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ3RhZycsIHtcbiAgICAgICAgICAgIHNldCgpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FsaWFzIG5vZGVzIGNhbm5vdCBoYXZlIHRhZ3MnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJlc29sdmUgdGhlIHZhbHVlIG9mIHRoaXMgYWxpYXMgd2l0aGluIGBkb2NgLCBmaW5kaW5nIHRoZSBsYXN0XG4gICAgICogaW5zdGFuY2Ugb2YgdGhlIGBzb3VyY2VgIGFuY2hvciBiZWZvcmUgdGhpcyBub2RlLlxuICAgICAqL1xuICAgIHJlc29sdmUoZG9jLCBjdHgpIHtcbiAgICAgICAgbGV0IG5vZGVzO1xuICAgICAgICBpZiAoY3R4Py5hbGlhc1Jlc29sdmVDYWNoZSkge1xuICAgICAgICAgICAgbm9kZXMgPSBjdHguYWxpYXNSZXNvbHZlQ2FjaGU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBub2RlcyA9IFtdO1xuICAgICAgICAgICAgdmlzaXQudmlzaXQoZG9jLCB7XG4gICAgICAgICAgICAgICAgTm9kZTogKF9rZXksIG5vZGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzQWxpYXMobm9kZSkgfHwgaWRlbnRpdHkuaGFzQW5jaG9yKG5vZGUpKVxuICAgICAgICAgICAgICAgICAgICAgICAgbm9kZXMucHVzaChub2RlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChjdHgpXG4gICAgICAgICAgICAgICAgY3R4LmFsaWFzUmVzb2x2ZUNhY2hlID0gbm9kZXM7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGZvdW5kID0gdW5kZWZpbmVkO1xuICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2Ygbm9kZXMpIHtcbiAgICAgICAgICAgIGlmIChub2RlID09PSB0aGlzKVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgaWYgKG5vZGUuYW5jaG9yID09PSB0aGlzLnNvdXJjZSlcbiAgICAgICAgICAgICAgICBmb3VuZCA9IG5vZGU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZvdW5kO1xuICAgIH1cbiAgICB0b0pTT04oX2FyZywgY3R4KSB7XG4gICAgICAgIGlmICghY3R4KVxuICAgICAgICAgICAgcmV0dXJuIHsgc291cmNlOiB0aGlzLnNvdXJjZSB9O1xuICAgICAgICBjb25zdCB7IGFuY2hvcnMsIGRvYywgbWF4QWxpYXNDb3VudCB9ID0gY3R4O1xuICAgICAgICBjb25zdCBzb3VyY2UgPSB0aGlzLnJlc29sdmUoZG9jLCBjdHgpO1xuICAgICAgICBpZiAoIXNvdXJjZSkge1xuICAgICAgICAgICAgY29uc3QgbXNnID0gYFVucmVzb2x2ZWQgYWxpYXMgKHRoZSBhbmNob3IgbXVzdCBiZSBzZXQgYmVmb3JlIHRoZSBhbGlhcyk6ICR7dGhpcy5zb3VyY2V9YDtcbiAgICAgICAgICAgIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihtc2cpO1xuICAgICAgICB9XG4gICAgICAgIGxldCBkYXRhID0gYW5jaG9ycy5nZXQoc291cmNlKTtcbiAgICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgICAgICAvLyBSZXNvbHZlIGFuY2hvcnMgZm9yIE5vZGUucHJvdG90eXBlLnRvSlMoKVxuICAgICAgICAgICAgdG9KUy50b0pTKHNvdXJjZSwgbnVsbCwgY3R4KTtcbiAgICAgICAgICAgIGRhdGEgPSBhbmNob3JzLmdldChzb3VyY2UpO1xuICAgICAgICB9XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgICBpZiAoIWRhdGEgfHwgZGF0YS5yZXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgY29uc3QgbXNnID0gJ1RoaXMgc2hvdWxkIG5vdCBoYXBwZW46IEFsaWFzIGFuY2hvciB3YXMgbm90IHJlc29sdmVkPyc7XG4gICAgICAgICAgICB0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IobXNnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWF4QWxpYXNDb3VudCA+PSAwKSB7XG4gICAgICAgICAgICBkYXRhLmNvdW50ICs9IDE7XG4gICAgICAgICAgICBpZiAoZGF0YS5hbGlhc0NvdW50ID09PSAwKVxuICAgICAgICAgICAgICAgIGRhdGEuYWxpYXNDb3VudCA9IGdldEFsaWFzQ291bnQoZG9jLCBzb3VyY2UsIGFuY2hvcnMpO1xuICAgICAgICAgICAgaWYgKGRhdGEuY291bnQgKiBkYXRhLmFsaWFzQ291bnQgPiBtYXhBbGlhc0NvdW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gJ0V4Y2Vzc2l2ZSBhbGlhcyBjb3VudCBpbmRpY2F0ZXMgYSByZXNvdXJjZSBleGhhdXN0aW9uIGF0dGFjayc7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKG1zZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRhdGEucmVzO1xuICAgIH1cbiAgICB0b1N0cmluZyhjdHgsIF9vbkNvbW1lbnQsIF9vbkNob21wS2VlcCkge1xuICAgICAgICBjb25zdCBzcmMgPSBgKiR7dGhpcy5zb3VyY2V9YDtcbiAgICAgICAgaWYgKGN0eCkge1xuICAgICAgICAgICAgYW5jaG9ycy5hbmNob3JJc1ZhbGlkKHRoaXMuc291cmNlKTtcbiAgICAgICAgICAgIGlmIChjdHgub3B0aW9ucy52ZXJpZnlBbGlhc09yZGVyICYmICFjdHguYW5jaG9ycy5oYXModGhpcy5zb3VyY2UpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbXNnID0gYFVucmVzb2x2ZWQgYWxpYXMgKHRoZSBhbmNob3IgbXVzdCBiZSBzZXQgYmVmb3JlIHRoZSBhbGlhcyk6ICR7dGhpcy5zb3VyY2V9YDtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobXNnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjdHguaW1wbGljaXRLZXkpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke3NyY30gYDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3JjO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGdldEFsaWFzQ291bnQoZG9jLCBub2RlLCBhbmNob3JzKSB7XG4gICAgaWYgKGlkZW50aXR5LmlzQWxpYXMobm9kZSkpIHtcbiAgICAgICAgY29uc3Qgc291cmNlID0gbm9kZS5yZXNvbHZlKGRvYyk7XG4gICAgICAgIGNvbnN0IGFuY2hvciA9IGFuY2hvcnMgJiYgc291cmNlICYmIGFuY2hvcnMuZ2V0KHNvdXJjZSk7XG4gICAgICAgIHJldHVybiBhbmNob3IgPyBhbmNob3IuY291bnQgKiBhbmNob3IuYWxpYXNDb3VudCA6IDA7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlkZW50aXR5LmlzQ29sbGVjdGlvbihub2RlKSkge1xuICAgICAgICBsZXQgY291bnQgPSAwO1xuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygbm9kZS5pdGVtcykge1xuICAgICAgICAgICAgY29uc3QgYyA9IGdldEFsaWFzQ291bnQoZG9jLCBpdGVtLCBhbmNob3JzKTtcbiAgICAgICAgICAgIGlmIChjID4gY291bnQpXG4gICAgICAgICAgICAgICAgY291bnQgPSBjO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb3VudDtcbiAgICB9XG4gICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKG5vZGUpKSB7XG4gICAgICAgIGNvbnN0IGtjID0gZ2V0QWxpYXNDb3VudChkb2MsIG5vZGUua2V5LCBhbmNob3JzKTtcbiAgICAgICAgY29uc3QgdmMgPSBnZXRBbGlhc0NvdW50KGRvYywgbm9kZS52YWx1ZSwgYW5jaG9ycyk7XG4gICAgICAgIHJldHVybiBNYXRoLm1heChrYywgdmMpO1xuICAgIH1cbiAgICByZXR1cm4gMTtcbn1cblxuZXhwb3J0cy5BbGlhcyA9IEFsaWFzO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eS5qcycpO1xudmFyIE5vZGUgPSByZXF1aXJlKCcuL05vZGUuanMnKTtcbnZhciB0b0pTID0gcmVxdWlyZSgnLi90b0pTLmpzJyk7XG5cbmNvbnN0IGlzU2NhbGFyVmFsdWUgPSAodmFsdWUpID0+ICF2YWx1ZSB8fCAodHlwZW9mIHZhbHVlICE9PSAnZnVuY3Rpb24nICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpO1xuY2xhc3MgU2NhbGFyIGV4dGVuZHMgTm9kZS5Ob2RlQmFzZSB7XG4gICAgY29uc3RydWN0b3IodmFsdWUpIHtcbiAgICAgICAgc3VwZXIoaWRlbnRpdHkuU0NBTEFSKTtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIH1cbiAgICB0b0pTT04oYXJnLCBjdHgpIHtcbiAgICAgICAgcmV0dXJuIGN0eD8ua2VlcCA/IHRoaXMudmFsdWUgOiB0b0pTLnRvSlModGhpcy52YWx1ZSwgYXJnLCBjdHgpO1xuICAgIH1cbiAgICB0b1N0cmluZygpIHtcbiAgICAgICAgcmV0dXJuIFN0cmluZyh0aGlzLnZhbHVlKTtcbiAgICB9XG59XG5TY2FsYXIuQkxPQ0tfRk9MREVEID0gJ0JMT0NLX0ZPTERFRCc7XG5TY2FsYXIuQkxPQ0tfTElURVJBTCA9ICdCTE9DS19MSVRFUkFMJztcblNjYWxhci5QTEFJTiA9ICdQTEFJTic7XG5TY2FsYXIuUVVPVEVfRE9VQkxFID0gJ1FVT1RFX0RPVUJMRSc7XG5TY2FsYXIuUVVPVEVfU0lOR0xFID0gJ1FVT1RFX1NJTkdMRSc7XG5cbmV4cG9ydHMuU2NhbGFyID0gU2NhbGFyO1xuZXhwb3J0cy5pc1NjYWxhclZhbHVlID0gaXNTY2FsYXJWYWx1ZTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBBbGlhcyA9IHJlcXVpcmUoJy4uL25vZGVzL0FsaWFzLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4uL25vZGVzL1NjYWxhci5qcycpO1xuXG5jb25zdCBkZWZhdWx0VGFnUHJlZml4ID0gJ3RhZzp5YW1sLm9yZywyMDAyOic7XG5mdW5jdGlvbiBmaW5kVGFnT2JqZWN0KHZhbHVlLCB0YWdOYW1lLCB0YWdzKSB7XG4gICAgaWYgKHRhZ05hbWUpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSB0YWdzLmZpbHRlcih0ID0+IHQudGFnID09PSB0YWdOYW1lKTtcbiAgICAgICAgY29uc3QgdGFnT2JqID0gbWF0Y2guZmluZCh0ID0+ICF0LmZvcm1hdCkgPz8gbWF0Y2hbMF07XG4gICAgICAgIGlmICghdGFnT2JqKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUYWcgJHt0YWdOYW1lfSBub3QgZm91bmRgKTtcbiAgICAgICAgcmV0dXJuIHRhZ09iajtcbiAgICB9XG4gICAgcmV0dXJuIHRhZ3MuZmluZCh0ID0+IHQuaWRlbnRpZnk/Lih2YWx1ZSkgJiYgIXQuZm9ybWF0KTtcbn1cbmZ1bmN0aW9uIGNyZWF0ZU5vZGUodmFsdWUsIHRhZ05hbWUsIGN0eCkge1xuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KHZhbHVlKSlcbiAgICAgICAgdmFsdWUgPSB2YWx1ZS5jb250ZW50cztcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKHZhbHVlKSlcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIGlmIChpZGVudGl0eS5pc1BhaXIodmFsdWUpKSB7XG4gICAgICAgIGNvbnN0IG1hcCA9IGN0eC5zY2hlbWFbaWRlbnRpdHkuTUFQXS5jcmVhdGVOb2RlPy4oY3R4LnNjaGVtYSwgbnVsbCwgY3R4KTtcbiAgICAgICAgbWFwLml0ZW1zLnB1c2godmFsdWUpO1xuICAgICAgICByZXR1cm4gbWFwO1xuICAgIH1cbiAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBTdHJpbmcgfHxcbiAgICAgICAgdmFsdWUgaW5zdGFuY2VvZiBOdW1iZXIgfHxcbiAgICAgICAgdmFsdWUgaW5zdGFuY2VvZiBCb29sZWFuIHx8XG4gICAgICAgICh0eXBlb2YgQmlnSW50ICE9PSAndW5kZWZpbmVkJyAmJiB2YWx1ZSBpbnN0YW5jZW9mIEJpZ0ludCkgLy8gbm90IHN1cHBvcnRlZCBldmVyeXdoZXJlXG4gICAgKSB7XG4gICAgICAgIC8vIGh0dHBzOi8vdGMzOS5lcy9lY21hMjYyLyNzZWMtc2VyaWFsaXplanNvbnByb3BlcnR5XG4gICAgICAgIHZhbHVlID0gdmFsdWUudmFsdWVPZigpO1xuICAgIH1cbiAgICBjb25zdCB7IGFsaWFzRHVwbGljYXRlT2JqZWN0cywgb25BbmNob3IsIG9uVGFnT2JqLCBzY2hlbWEsIHNvdXJjZU9iamVjdHMgfSA9IGN0eDtcbiAgICAvLyBEZXRlY3QgZHVwbGljYXRlIHJlZmVyZW5jZXMgdG8gdGhlIHNhbWUgb2JqZWN0ICYgdXNlIEFsaWFzIG5vZGVzIGZvciBhbGxcbiAgICAvLyBhZnRlciBmaXJzdC4gVGhlIGByZWZgIHdyYXBwZXIgYWxsb3dzIGZvciBjaXJjdWxhciByZWZlcmVuY2VzIHRvIHJlc29sdmUuXG4gICAgbGV0IHJlZiA9IHVuZGVmaW5lZDtcbiAgICBpZiAoYWxpYXNEdXBsaWNhdGVPYmplY3RzICYmIHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmVmID0gc291cmNlT2JqZWN0cy5nZXQodmFsdWUpO1xuICAgICAgICBpZiAocmVmKSB7XG4gICAgICAgICAgICByZWYuYW5jaG9yID8/IChyZWYuYW5jaG9yID0gb25BbmNob3IodmFsdWUpKTtcbiAgICAgICAgICAgIHJldHVybiBuZXcgQWxpYXMuQWxpYXMocmVmLmFuY2hvcik7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZWYgPSB7IGFuY2hvcjogbnVsbCwgbm9kZTogbnVsbCB9O1xuICAgICAgICAgICAgc291cmNlT2JqZWN0cy5zZXQodmFsdWUsIHJlZik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKHRhZ05hbWU/LnN0YXJ0c1dpdGgoJyEhJykpXG4gICAgICAgIHRhZ05hbWUgPSBkZWZhdWx0VGFnUHJlZml4ICsgdGFnTmFtZS5zbGljZSgyKTtcbiAgICBsZXQgdGFnT2JqID0gZmluZFRhZ09iamVjdCh2YWx1ZSwgdGFnTmFtZSwgc2NoZW1hLnRhZ3MpO1xuICAgIGlmICghdGFnT2JqKSB7XG4gICAgICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUudG9KU09OID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1jYWxsXG4gICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLnRvSlNPTigpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdmFsdWUgfHwgdHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgY29uc3Qgbm9kZSA9IG5ldyBTY2FsYXIuU2NhbGFyKHZhbHVlKTtcbiAgICAgICAgICAgIGlmIChyZWYpXG4gICAgICAgICAgICAgICAgcmVmLm5vZGUgPSBub2RlO1xuICAgICAgICAgICAgcmV0dXJuIG5vZGU7XG4gICAgICAgIH1cbiAgICAgICAgdGFnT2JqID1cbiAgICAgICAgICAgIHZhbHVlIGluc3RhbmNlb2YgTWFwXG4gICAgICAgICAgICAgICAgPyBzY2hlbWFbaWRlbnRpdHkuTUFQXVxuICAgICAgICAgICAgICAgIDogU3ltYm9sLml0ZXJhdG9yIGluIE9iamVjdCh2YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgPyBzY2hlbWFbaWRlbnRpdHkuU0VRXVxuICAgICAgICAgICAgICAgICAgICA6IHNjaGVtYVtpZGVudGl0eS5NQVBdO1xuICAgIH1cbiAgICBpZiAob25UYWdPYmopIHtcbiAgICAgICAgb25UYWdPYmoodGFnT2JqKTtcbiAgICAgICAgZGVsZXRlIGN0eC5vblRhZ09iajtcbiAgICB9XG4gICAgY29uc3Qgbm9kZSA9IHRhZ09iaj8uY3JlYXRlTm9kZVxuICAgICAgICA/IHRhZ09iai5jcmVhdGVOb2RlKGN0eC5zY2hlbWEsIHZhbHVlLCBjdHgpXG4gICAgICAgIDogdHlwZW9mIHRhZ09iaj8ubm9kZUNsYXNzPy5mcm9tID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgICA/IHRhZ09iai5ub2RlQ2xhc3MuZnJvbShjdHguc2NoZW1hLCB2YWx1ZSwgY3R4KVxuICAgICAgICAgICAgOiBuZXcgU2NhbGFyLlNjYWxhcih2YWx1ZSk7XG4gICAgaWYgKHRhZ05hbWUpXG4gICAgICAgIG5vZGUudGFnID0gdGFnTmFtZTtcbiAgICBlbHNlIGlmICghdGFnT2JqLmRlZmF1bHQpXG4gICAgICAgIG5vZGUudGFnID0gdGFnT2JqLnRhZztcbiAgICBpZiAocmVmKVxuICAgICAgICByZWYubm9kZSA9IG5vZGU7XG4gICAgcmV0dXJuIG5vZGU7XG59XG5cbmV4cG9ydHMuY3JlYXRlTm9kZSA9IGNyZWF0ZU5vZGU7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgY3JlYXRlTm9kZSA9IHJlcXVpcmUoJy4uL2RvYy9jcmVhdGVOb2RlLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5LmpzJyk7XG52YXIgTm9kZSA9IHJlcXVpcmUoJy4vTm9kZS5qcycpO1xuXG5mdW5jdGlvbiBjb2xsZWN0aW9uRnJvbVBhdGgoc2NoZW1hLCBwYXRoLCB2YWx1ZSkge1xuICAgIGxldCB2ID0gdmFsdWU7XG4gICAgZm9yIChsZXQgaSA9IHBhdGgubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgY29uc3QgayA9IHBhdGhbaV07XG4gICAgICAgIGlmICh0eXBlb2YgayA9PT0gJ251bWJlcicgJiYgTnVtYmVyLmlzSW50ZWdlcihrKSAmJiBrID49IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGEgPSBbXTtcbiAgICAgICAgICAgIGFba10gPSB2O1xuICAgICAgICAgICAgdiA9IGE7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB2ID0gbmV3IE1hcChbW2ssIHZdXSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNyZWF0ZU5vZGUuY3JlYXRlTm9kZSh2LCB1bmRlZmluZWQsIHtcbiAgICAgICAgYWxpYXNEdXBsaWNhdGVPYmplY3RzOiBmYWxzZSxcbiAgICAgICAga2VlcFVuZGVmaW5lZDogZmFsc2UsXG4gICAgICAgIG9uQW5jaG9yOiAoKSA9PiB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgc2hvdWxkIG5vdCBoYXBwZW4sIHBsZWFzZSByZXBvcnQgYSBidWcuJyk7XG4gICAgICAgIH0sXG4gICAgICAgIHNjaGVtYSxcbiAgICAgICAgc291cmNlT2JqZWN0czogbmV3IE1hcCgpXG4gICAgfSk7XG59XG4vLyBUeXBlIGd1YXJkIGlzIGludGVudGlvbmFsbHkgYSBsaXR0bGUgd3Jvbmcgc28gYXMgdG8gYmUgbW9yZSB1c2VmdWwsXG4vLyBhcyBpdCBkb2VzIG5vdCBjb3ZlciB1bnR5cGFibGUgZW1wdHkgbm9uLXN0cmluZyBpdGVyYWJsZXMgKGUuZy4gW10pLlxuY29uc3QgaXNFbXB0eVBhdGggPSAocGF0aCkgPT4gcGF0aCA9PSBudWxsIHx8XG4gICAgKHR5cGVvZiBwYXRoID09PSAnb2JqZWN0JyAmJiAhIXBhdGhbU3ltYm9sLml0ZXJhdG9yXSgpLm5leHQoKS5kb25lKTtcbmNsYXNzIENvbGxlY3Rpb24gZXh0ZW5kcyBOb2RlLk5vZGVCYXNlIHtcbiAgICBjb25zdHJ1Y3Rvcih0eXBlLCBzY2hlbWEpIHtcbiAgICAgICAgc3VwZXIodHlwZSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnc2NoZW1hJywge1xuICAgICAgICAgICAgdmFsdWU6IHNjaGVtYSxcbiAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICAgICAgd3JpdGFibGU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIGNvcHkgb2YgdGhpcyBjb2xsZWN0aW9uLlxuICAgICAqXG4gICAgICogQHBhcmFtIHNjaGVtYSAtIElmIGRlZmluZWQsIG92ZXJ3cml0ZXMgdGhlIG9yaWdpbmFsJ3Mgc2NoZW1hXG4gICAgICovXG4gICAgY2xvbmUoc2NoZW1hKSB7XG4gICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzKSwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModGhpcykpO1xuICAgICAgICBpZiAoc2NoZW1hKVxuICAgICAgICAgICAgY29weS5zY2hlbWEgPSBzY2hlbWE7XG4gICAgICAgIGNvcHkuaXRlbXMgPSBjb3B5Lml0ZW1zLm1hcChpdCA9PiBpZGVudGl0eS5pc05vZGUoaXQpIHx8IGlkZW50aXR5LmlzUGFpcihpdCkgPyBpdC5jbG9uZShzY2hlbWEpIDogaXQpO1xuICAgICAgICBpZiAodGhpcy5yYW5nZSlcbiAgICAgICAgICAgIGNvcHkucmFuZ2UgPSB0aGlzLnJhbmdlLnNsaWNlKCk7XG4gICAgICAgIHJldHVybiBjb3B5O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBZGRzIGEgdmFsdWUgdG8gdGhlIGNvbGxlY3Rpb24uIEZvciBgISFtYXBgIGFuZCBgISFvbWFwYCB0aGUgdmFsdWUgbXVzdFxuICAgICAqIGJlIGEgUGFpciBpbnN0YW5jZSBvciBhIGB7IGtleSwgdmFsdWUgfWAgb2JqZWN0LCB3aGljaCBtYXkgbm90IGhhdmUgYSBrZXlcbiAgICAgKiB0aGF0IGFscmVhZHkgZXhpc3RzIGluIHRoZSBtYXAuXG4gICAgICovXG4gICAgYWRkSW4ocGF0aCwgdmFsdWUpIHtcbiAgICAgICAgaWYgKGlzRW1wdHlQYXRoKHBhdGgpKVxuICAgICAgICAgICAgdGhpcy5hZGQodmFsdWUpO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldChrZXksIHRydWUpO1xuICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzQ29sbGVjdGlvbihub2RlKSlcbiAgICAgICAgICAgICAgICBub2RlLmFkZEluKHJlc3QsIHZhbHVlKTtcbiAgICAgICAgICAgIGVsc2UgaWYgKG5vZGUgPT09IHVuZGVmaW5lZCAmJiB0aGlzLnNjaGVtYSlcbiAgICAgICAgICAgICAgICB0aGlzLnNldChrZXksIGNvbGxlY3Rpb25Gcm9tUGF0aCh0aGlzLnNjaGVtYSwgcmVzdCwgdmFsdWUpKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIFlBTUwgY29sbGVjdGlvbiBhdCAke2tleX0uIFJlbWFpbmluZyBwYXRoOiAke3Jlc3R9YCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGNvbGxlY3Rpb24uXG4gICAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBpdGVtIHdhcyBmb3VuZCBhbmQgcmVtb3ZlZC5cbiAgICAgKi9cbiAgICBkZWxldGVJbihwYXRoKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgaWYgKHJlc3QubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVsZXRlKGtleSk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldChrZXksIHRydWUpO1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKVxuICAgICAgICAgICAgcmV0dXJuIG5vZGUuZGVsZXRlSW4ocmVzdCk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgWUFNTCBjb2xsZWN0aW9uIGF0ICR7a2V5fS4gUmVtYWluaW5nIHBhdGg6ICR7cmVzdH1gKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBpdGVtIGF0IGBrZXlgLCBvciBgdW5kZWZpbmVkYCBpZiBub3QgZm91bmQuIEJ5IGRlZmF1bHQgdW53cmFwc1xuICAgICAqIHNjYWxhciB2YWx1ZXMgZnJvbSB0aGVpciBzdXJyb3VuZGluZyBub2RlOyB0byBkaXNhYmxlIHNldCBga2VlcFNjYWxhcmAgdG9cbiAgICAgKiBgdHJ1ZWAgKGNvbGxlY3Rpb25zIGFyZSBhbHdheXMgcmV0dXJuZWQgaW50YWN0KS5cbiAgICAgKi9cbiAgICBnZXRJbihwYXRoLCBrZWVwU2NhbGFyKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuZ2V0KGtleSwgdHJ1ZSk7XG4gICAgICAgIGlmIChyZXN0Lmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIHJldHVybiAha2VlcFNjYWxhciAmJiBpZGVudGl0eS5pc1NjYWxhcihub2RlKSA/IG5vZGUudmFsdWUgOiBub2RlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpID8gbm9kZS5nZXRJbihyZXN0LCBrZWVwU2NhbGFyKSA6IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgaGFzQWxsTnVsbFZhbHVlcyhhbGxvd1NjYWxhcikge1xuICAgICAgICByZXR1cm4gdGhpcy5pdGVtcy5ldmVyeShub2RlID0+IHtcbiAgICAgICAgICAgIGlmICghaWRlbnRpdHkuaXNQYWlyKG5vZGUpKVxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IG4gPSBub2RlLnZhbHVlO1xuICAgICAgICAgICAgcmV0dXJuIChuID09IG51bGwgfHxcbiAgICAgICAgICAgICAgICAoYWxsb3dTY2FsYXIgJiZcbiAgICAgICAgICAgICAgICAgICAgaWRlbnRpdHkuaXNTY2FsYXIobikgJiZcbiAgICAgICAgICAgICAgICAgICAgbi52YWx1ZSA9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgICAgICFuLmNvbW1lbnRCZWZvcmUgJiZcbiAgICAgICAgICAgICAgICAgICAgIW4uY29tbWVudCAmJlxuICAgICAgICAgICAgICAgICAgICAhbi50YWcpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGUgY29sbGVjdGlvbiBpbmNsdWRlcyBhIHZhbHVlIHdpdGggdGhlIGtleSBga2V5YC5cbiAgICAgKi9cbiAgICBoYXNJbihwYXRoKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0gcGF0aDtcbiAgICAgICAgaWYgKHJlc3QubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGFzKGtleSk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldChrZXksIHRydWUpO1xuICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpID8gbm9kZS5oYXNJbihyZXN0KSA6IGZhbHNlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBjb2xsZWN0aW9uLiBGb3IgYCEhc2V0YCwgYHZhbHVlYCBuZWVkcyB0byBiZSBhXG4gICAgICogYm9vbGVhbiB0byBhZGQvcmVtb3ZlIHRoZSBpdGVtIGZyb20gdGhlIHNldC5cbiAgICAgKi9cbiAgICBzZXRJbihwYXRoLCB2YWx1ZSkge1xuICAgICAgICBjb25zdCBba2V5LCAuLi5yZXN0XSA9IHBhdGg7XG4gICAgICAgIGlmIChyZXN0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBub2RlID0gdGhpcy5nZXQoa2V5LCB0cnVlKTtcbiAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc0NvbGxlY3Rpb24obm9kZSkpXG4gICAgICAgICAgICAgICAgbm9kZS5zZXRJbihyZXN0LCB2YWx1ZSk7XG4gICAgICAgICAgICBlbHNlIGlmIChub2RlID09PSB1bmRlZmluZWQgJiYgdGhpcy5zY2hlbWEpXG4gICAgICAgICAgICAgICAgdGhpcy5zZXQoa2V5LCBjb2xsZWN0aW9uRnJvbVBhdGgodGhpcy5zY2hlbWEsIHJlc3QsIHZhbHVlKSk7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBZQU1MIGNvbGxlY3Rpb24gYXQgJHtrZXl9LiBSZW1haW5pbmcgcGF0aDogJHtyZXN0fWApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnRzLkNvbGxlY3Rpb24gPSBDb2xsZWN0aW9uO1xuZXhwb3J0cy5jb2xsZWN0aW9uRnJvbVBhdGggPSBjb2xsZWN0aW9uRnJvbVBhdGg7XG5leHBvcnRzLmlzRW1wdHlQYXRoID0gaXNFbXB0eVBhdGg7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG4vKipcbiAqIFN0cmluZ2lmaWVzIGEgY29tbWVudC5cbiAqXG4gKiBFbXB0eSBjb21tZW50IGxpbmVzIGFyZSBsZWZ0IGVtcHR5LFxuICogbGluZXMgY29uc2lzdGluZyBvZiBhIHNpbmdsZSBzcGFjZSBhcmUgcmVwbGFjZWQgYnkgYCNgLFxuICogYW5kIGFsbCBvdGhlciBsaW5lcyBhcmUgcHJlZml4ZWQgd2l0aCBhIGAjYC5cbiAqL1xuY29uc3Qgc3RyaW5naWZ5Q29tbWVudCA9IChzdHIpID0+IHN0ci5yZXBsYWNlKC9eKD8hJCkoPzogJCk/L2dtLCAnIycpO1xuZnVuY3Rpb24gaW5kZW50Q29tbWVudChjb21tZW50LCBpbmRlbnQpIHtcbiAgICBpZiAoL15cXG4rJC8udGVzdChjb21tZW50KSlcbiAgICAgICAgcmV0dXJuIGNvbW1lbnQuc3Vic3RyaW5nKDEpO1xuICAgIHJldHVybiBpbmRlbnQgPyBjb21tZW50LnJlcGxhY2UoL14oPyEgKiQpL2dtLCBpbmRlbnQpIDogY29tbWVudDtcbn1cbmNvbnN0IGxpbmVDb21tZW50ID0gKHN0ciwgaW5kZW50LCBjb21tZW50KSA9PiBzdHIuZW5kc1dpdGgoJ1xcbicpXG4gICAgPyBpbmRlbnRDb21tZW50KGNvbW1lbnQsIGluZGVudClcbiAgICA6IGNvbW1lbnQuaW5jbHVkZXMoJ1xcbicpXG4gICAgICAgID8gJ1xcbicgKyBpbmRlbnRDb21tZW50KGNvbW1lbnQsIGluZGVudClcbiAgICAgICAgOiAoc3RyLmVuZHNXaXRoKCcgJykgPyAnJyA6ICcgJykgKyBjb21tZW50O1xuXG5leHBvcnRzLmluZGVudENvbW1lbnQgPSBpbmRlbnRDb21tZW50O1xuZXhwb3J0cy5saW5lQ29tbWVudCA9IGxpbmVDb21tZW50O1xuZXhwb3J0cy5zdHJpbmdpZnlDb21tZW50ID0gc3RyaW5naWZ5Q29tbWVudDtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNvbnN0IEZPTERfRkxPVyA9ICdmbG93JztcbmNvbnN0IEZPTERfQkxPQ0sgPSAnYmxvY2snO1xuY29uc3QgRk9MRF9RVU9URUQgPSAncXVvdGVkJztcbi8qKlxuICogVHJpZXMgdG8ga2VlcCBpbnB1dCBhdCB1cCB0byBgbGluZVdpZHRoYCBjaGFyYWN0ZXJzLCBzcGxpdHRpbmcgb25seSBvbiBzcGFjZXNcbiAqIG5vdCBmb2xsb3dlZCBieSBuZXdsaW5lcyBvciBzcGFjZXMgdW5sZXNzIGBtb2RlYCBpcyBgJ3F1b3RlZCdgLiBMaW5lcyBhcmVcbiAqIHRlcm1pbmF0ZWQgd2l0aCBgXFxuYCBhbmQgc3RhcnRlZCB3aXRoIGBpbmRlbnRgLlxuICovXG5mdW5jdGlvbiBmb2xkRmxvd0xpbmVzKHRleHQsIGluZGVudCwgbW9kZSA9ICdmbG93JywgeyBpbmRlbnRBdFN0YXJ0LCBsaW5lV2lkdGggPSA4MCwgbWluQ29udGVudFdpZHRoID0gMjAsIG9uRm9sZCwgb25PdmVyZmxvdyB9ID0ge30pIHtcbiAgICBpZiAoIWxpbmVXaWR0aCB8fCBsaW5lV2lkdGggPCAwKVxuICAgICAgICByZXR1cm4gdGV4dDtcbiAgICBpZiAobGluZVdpZHRoIDwgbWluQ29udGVudFdpZHRoKVxuICAgICAgICBtaW5Db250ZW50V2lkdGggPSAwO1xuICAgIGNvbnN0IGVuZFN0ZXAgPSBNYXRoLm1heCgxICsgbWluQ29udGVudFdpZHRoLCAxICsgbGluZVdpZHRoIC0gaW5kZW50Lmxlbmd0aCk7XG4gICAgaWYgKHRleHQubGVuZ3RoIDw9IGVuZFN0ZXApXG4gICAgICAgIHJldHVybiB0ZXh0O1xuICAgIGNvbnN0IGZvbGRzID0gW107XG4gICAgY29uc3QgZXNjYXBlZEZvbGRzID0ge307XG4gICAgbGV0IGVuZCA9IGxpbmVXaWR0aCAtIGluZGVudC5sZW5ndGg7XG4gICAgaWYgKHR5cGVvZiBpbmRlbnRBdFN0YXJ0ID09PSAnbnVtYmVyJykge1xuICAgICAgICBpZiAoaW5kZW50QXRTdGFydCA+IGxpbmVXaWR0aCAtIE1hdGgubWF4KDIsIG1pbkNvbnRlbnRXaWR0aCkpXG4gICAgICAgICAgICBmb2xkcy5wdXNoKDApO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBlbmQgPSBsaW5lV2lkdGggLSBpbmRlbnRBdFN0YXJ0O1xuICAgIH1cbiAgICBsZXQgc3BsaXQgPSB1bmRlZmluZWQ7XG4gICAgbGV0IHByZXYgPSB1bmRlZmluZWQ7XG4gICAgbGV0IG92ZXJmbG93ID0gZmFsc2U7XG4gICAgbGV0IGkgPSAtMTtcbiAgICBsZXQgZXNjU3RhcnQgPSAtMTtcbiAgICBsZXQgZXNjRW5kID0gLTE7XG4gICAgaWYgKG1vZGUgPT09IEZPTERfQkxPQ0spIHtcbiAgICAgICAgaSA9IGNvbnN1bWVNb3JlSW5kZW50ZWRMaW5lcyh0ZXh0LCBpLCBpbmRlbnQubGVuZ3RoKTtcbiAgICAgICAgaWYgKGkgIT09IC0xKVxuICAgICAgICAgICAgZW5kID0gaSArIGVuZFN0ZXA7XG4gICAgfVxuICAgIGZvciAobGV0IGNoOyAoY2ggPSB0ZXh0WyhpICs9IDEpXSk7KSB7XG4gICAgICAgIGlmIChtb2RlID09PSBGT0xEX1FVT1RFRCAmJiBjaCA9PT0gJ1xcXFwnKSB7XG4gICAgICAgICAgICBlc2NTdGFydCA9IGk7XG4gICAgICAgICAgICBzd2l0Y2ggKHRleHRbaSArIDFdKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAneCc6XG4gICAgICAgICAgICAgICAgICAgIGkgKz0gMztcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAndSc6XG4gICAgICAgICAgICAgICAgICAgIGkgKz0gNTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnVSc6XG4gICAgICAgICAgICAgICAgICAgIGkgKz0gOTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgaSArPSAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZXNjRW5kID0gaTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2ggPT09ICdcXG4nKSB7XG4gICAgICAgICAgICBpZiAobW9kZSA9PT0gRk9MRF9CTE9DSylcbiAgICAgICAgICAgICAgICBpID0gY29uc3VtZU1vcmVJbmRlbnRlZExpbmVzKHRleHQsIGksIGluZGVudC5sZW5ndGgpO1xuICAgICAgICAgICAgZW5kID0gaSArIGluZGVudC5sZW5ndGggKyBlbmRTdGVwO1xuICAgICAgICAgICAgc3BsaXQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoY2ggPT09ICcgJyAmJlxuICAgICAgICAgICAgICAgIHByZXYgJiZcbiAgICAgICAgICAgICAgICBwcmV2ICE9PSAnICcgJiZcbiAgICAgICAgICAgICAgICBwcmV2ICE9PSAnXFxuJyAmJlxuICAgICAgICAgICAgICAgIHByZXYgIT09ICdcXHQnKSB7XG4gICAgICAgICAgICAgICAgLy8gc3BhY2Ugc3Vycm91bmRlZCBieSBub24tc3BhY2UgY2FuIGJlIHJlcGxhY2VkIHdpdGggbmV3bGluZSArIGluZGVudFxuICAgICAgICAgICAgICAgIGNvbnN0IG5leHQgPSB0ZXh0W2kgKyAxXTtcbiAgICAgICAgICAgICAgICBpZiAobmV4dCAmJiBuZXh0ICE9PSAnICcgJiYgbmV4dCAhPT0gJ1xcbicgJiYgbmV4dCAhPT0gJ1xcdCcpXG4gICAgICAgICAgICAgICAgICAgIHNwbGl0ID0gaTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpID49IGVuZCkge1xuICAgICAgICAgICAgICAgIGlmIChzcGxpdCkge1xuICAgICAgICAgICAgICAgICAgICBmb2xkcy5wdXNoKHNwbGl0KTtcbiAgICAgICAgICAgICAgICAgICAgZW5kID0gc3BsaXQgKyBlbmRTdGVwO1xuICAgICAgICAgICAgICAgICAgICBzcGxpdCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAobW9kZSA9PT0gRk9MRF9RVU9URUQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gd2hpdGUtc3BhY2UgY29sbGVjdGVkIGF0IGVuZCBtYXkgc3RyZXRjaCBwYXN0IGxpbmVXaWR0aFxuICAgICAgICAgICAgICAgICAgICB3aGlsZSAocHJldiA9PT0gJyAnIHx8IHByZXYgPT09ICdcXHQnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwcmV2ID0gY2g7XG4gICAgICAgICAgICAgICAgICAgICAgICBjaCA9IHRleHRbKGkgKz0gMSldO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3cgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIEFjY291bnQgZm9yIG5ld2xpbmUgZXNjYXBlLCBidXQgZG9uJ3QgYnJlYWsgcHJlY2VkaW5nIGVzY2FwZVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBqID0gaSA+IGVzY0VuZCArIDEgPyBpIC0gMiA6IGVzY1N0YXJ0IC0gMTtcbiAgICAgICAgICAgICAgICAgICAgLy8gQmFpbCBvdXQgaWYgbGluZVdpZHRoICYgbWluQ29udGVudFdpZHRoIGFyZSBzaG9ydGVyIHRoYW4gYW4gZXNjYXBlIHN0cmluZ1xuICAgICAgICAgICAgICAgICAgICBpZiAoZXNjYXBlZEZvbGRzW2pdKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRleHQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbGRzLnB1c2goaik7XG4gICAgICAgICAgICAgICAgICAgIGVzY2FwZWRGb2xkc1tqXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGVuZCA9IGogKyBlbmRTdGVwO1xuICAgICAgICAgICAgICAgICAgICBzcGxpdCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcHJldiA9IGNoO1xuICAgIH1cbiAgICBpZiAob3ZlcmZsb3cgJiYgb25PdmVyZmxvdylcbiAgICAgICAgb25PdmVyZmxvdygpO1xuICAgIGlmIChmb2xkcy5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiB0ZXh0O1xuICAgIGlmIChvbkZvbGQpXG4gICAgICAgIG9uRm9sZCgpO1xuICAgIGxldCByZXMgPSB0ZXh0LnNsaWNlKDAsIGZvbGRzWzBdKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZvbGRzLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGZvbGQgPSBmb2xkc1tpXTtcbiAgICAgICAgY29uc3QgZW5kID0gZm9sZHNbaSArIDFdIHx8IHRleHQubGVuZ3RoO1xuICAgICAgICBpZiAoZm9sZCA9PT0gMClcbiAgICAgICAgICAgIHJlcyA9IGBcXG4ke2luZGVudH0ke3RleHQuc2xpY2UoMCwgZW5kKX1gO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmIChtb2RlID09PSBGT0xEX1FVT1RFRCAmJiBlc2NhcGVkRm9sZHNbZm9sZF0pXG4gICAgICAgICAgICAgICAgcmVzICs9IGAke3RleHRbZm9sZF19XFxcXGA7XG4gICAgICAgICAgICByZXMgKz0gYFxcbiR7aW5kZW50fSR7dGV4dC5zbGljZShmb2xkICsgMSwgZW5kKX1gO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG59XG4vKipcbiAqIFByZXN1bWVzIGBpICsgMWAgaXMgYXQgdGhlIHN0YXJ0IG9mIGEgbGluZVxuICogQHJldHVybnMgaW5kZXggb2YgbGFzdCBuZXdsaW5lIGluIG1vcmUtaW5kZW50ZWQgYmxvY2tcbiAqL1xuZnVuY3Rpb24gY29uc3VtZU1vcmVJbmRlbnRlZExpbmVzKHRleHQsIGksIGluZGVudCkge1xuICAgIGxldCBlbmQgPSBpO1xuICAgIGxldCBzdGFydCA9IGkgKyAxO1xuICAgIGxldCBjaCA9IHRleHRbc3RhcnRdO1xuICAgIHdoaWxlIChjaCA9PT0gJyAnIHx8IGNoID09PSAnXFx0Jykge1xuICAgICAgICBpZiAoaSA8IHN0YXJ0ICsgaW5kZW50KSB7XG4gICAgICAgICAgICBjaCA9IHRleHRbKytpXTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgICBjaCA9IHRleHRbKytpXTtcbiAgICAgICAgICAgIH0gd2hpbGUgKGNoICYmIGNoICE9PSAnXFxuJyk7XG4gICAgICAgICAgICBlbmQgPSBpO1xuICAgICAgICAgICAgc3RhcnQgPSBpICsgMTtcbiAgICAgICAgICAgIGNoID0gdGV4dFtzdGFydF07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGVuZDtcbn1cblxuZXhwb3J0cy5GT0xEX0JMT0NLID0gRk9MRF9CTE9DSztcbmV4cG9ydHMuRk9MRF9GTE9XID0gRk9MRF9GTE9XO1xuZXhwb3J0cy5GT0xEX1FVT1RFRCA9IEZPTERfUVVPVEVEO1xuZXhwb3J0cy5mb2xkRmxvd0xpbmVzID0gZm9sZEZsb3dMaW5lcztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciBmb2xkRmxvd0xpbmVzID0gcmVxdWlyZSgnLi9mb2xkRmxvd0xpbmVzLmpzJyk7XG5cbmNvbnN0IGdldEZvbGRPcHRpb25zID0gKGN0eCwgaXNCbG9jaykgPT4gKHtcbiAgICBpbmRlbnRBdFN0YXJ0OiBpc0Jsb2NrID8gY3R4LmluZGVudC5sZW5ndGggOiBjdHguaW5kZW50QXRTdGFydCxcbiAgICBsaW5lV2lkdGg6IGN0eC5vcHRpb25zLmxpbmVXaWR0aCxcbiAgICBtaW5Db250ZW50V2lkdGg6IGN0eC5vcHRpb25zLm1pbkNvbnRlbnRXaWR0aFxufSk7XG4vLyBBbHNvIGNoZWNrcyBmb3IgbGluZXMgc3RhcnRpbmcgd2l0aCAlLCBhcyBwYXJzaW5nIHRoZSBvdXRwdXQgYXMgWUFNTCAxLjEgd2lsbFxuLy8gcHJlc3VtZSB0aGF0J3Mgc3RhcnRpbmcgYSBuZXcgZG9jdW1lbnQuXG5jb25zdCBjb250YWluc0RvY3VtZW50TWFya2VyID0gKHN0cikgPT4gL14oJXwtLS18XFwuXFwuXFwuKS9tLnRlc3Qoc3RyKTtcbmZ1bmN0aW9uIGxpbmVMZW5ndGhPdmVyTGltaXQoc3RyLCBsaW5lV2lkdGgsIGluZGVudExlbmd0aCkge1xuICAgIGlmICghbGluZVdpZHRoIHx8IGxpbmVXaWR0aCA8IDApXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBjb25zdCBsaW1pdCA9IGxpbmVXaWR0aCAtIGluZGVudExlbmd0aDtcbiAgICBjb25zdCBzdHJMZW4gPSBzdHIubGVuZ3RoO1xuICAgIGlmIChzdHJMZW4gPD0gbGltaXQpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICBmb3IgKGxldCBpID0gMCwgc3RhcnQgPSAwOyBpIDwgc3RyTGVuOyArK2kpIHtcbiAgICAgICAgaWYgKHN0cltpXSA9PT0gJ1xcbicpIHtcbiAgICAgICAgICAgIGlmIChpIC0gc3RhcnQgPiBsaW1pdClcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIHN0YXJ0ID0gaSArIDE7XG4gICAgICAgICAgICBpZiAoc3RyTGVuIC0gc3RhcnQgPD0gbGltaXQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xufVxuZnVuY3Rpb24gZG91YmxlUXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpIHtcbiAgICBjb25zdCBqc29uID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgIGlmIChjdHgub3B0aW9ucy5kb3VibGVRdW90ZWRBc0pTT04pXG4gICAgICAgIHJldHVybiBqc29uO1xuICAgIGNvbnN0IHsgaW1wbGljaXRLZXkgfSA9IGN0eDtcbiAgICBjb25zdCBtaW5NdWx0aUxpbmVMZW5ndGggPSBjdHgub3B0aW9ucy5kb3VibGVRdW90ZWRNaW5NdWx0aUxpbmVMZW5ndGg7XG4gICAgY29uc3QgaW5kZW50ID0gY3R4LmluZGVudCB8fCAoY29udGFpbnNEb2N1bWVudE1hcmtlcih2YWx1ZSkgPyAnICAnIDogJycpO1xuICAgIGxldCBzdHIgPSAnJztcbiAgICBsZXQgc3RhcnQgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwLCBjaCA9IGpzb25baV07IGNoOyBjaCA9IGpzb25bKytpXSkge1xuICAgICAgICBpZiAoY2ggPT09ICcgJyAmJiBqc29uW2kgKyAxXSA9PT0gJ1xcXFwnICYmIGpzb25baSArIDJdID09PSAnbicpIHtcbiAgICAgICAgICAgIC8vIHNwYWNlIGJlZm9yZSBuZXdsaW5lIG5lZWRzIHRvIGJlIGVzY2FwZWQgdG8gbm90IGJlIGZvbGRlZFxuICAgICAgICAgICAgc3RyICs9IGpzb24uc2xpY2Uoc3RhcnQsIGkpICsgJ1xcXFwgJztcbiAgICAgICAgICAgIGkgKz0gMTtcbiAgICAgICAgICAgIHN0YXJ0ID0gaTtcbiAgICAgICAgICAgIGNoID0gJ1xcXFwnO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjaCA9PT0gJ1xcXFwnKVxuICAgICAgICAgICAgc3dpdGNoIChqc29uW2kgKyAxXSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ3UnOlxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0ganNvbi5zbGljZShzdGFydCwgaSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjb2RlID0ganNvbi5zdWJzdHIoaSArIDIsIDQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChjb2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnMDAwMCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXDAnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICcwMDA3JzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9ICdcXFxcYSc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAwMGInOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcXFx2JztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnMDAxYic6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXGUnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICcwMDg1JzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9ICdcXFxcTic7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAwYTAnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcXFxfJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnMjAyOCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXEwnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICcyMDI5JzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9ICdcXFxcUCc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb2RlLnN1YnN0cigwLCAyKSA9PT0gJzAwJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSAnXFxcXHgnICsgY29kZS5zdWJzdHIoMik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSBqc29uLnN1YnN0cihpLCA2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGkgKz0gNTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0ID0gaSArIDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnbic6XG4gICAgICAgICAgICAgICAgICAgIGlmIChpbXBsaWNpdEtleSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAganNvbltpICsgMl0gPT09ICdcIicgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGpzb24ubGVuZ3RoIDwgbWluTXVsdGlMaW5lTGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpICs9IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBmb2xkaW5nIHdpbGwgZWF0IGZpcnN0IG5ld2xpbmVcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0ciArPSBqc29uLnNsaWNlKHN0YXJ0LCBpKSArICdcXG5cXG4nO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGpzb25baSArIDJdID09PSAnXFxcXCcgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqc29uW2kgKyAzXSA9PT0gJ24nICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganNvbltpICsgNF0gIT09ICdcIicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcbic7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgc3RyICs9IGluZGVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNwYWNlIGFmdGVyIG5ld2xpbmUgbmVlZHMgdG8gYmUgZXNjYXBlZCB0byBub3QgYmUgZm9sZGVkXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoanNvbltpICsgMl0gPT09ICcgJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIgKz0gJ1xcXFwnO1xuICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQgPSBpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBpICs9IDE7XG4gICAgICAgICAgICB9XG4gICAgfVxuICAgIHN0ciA9IHN0YXJ0ID8gc3RyICsganNvbi5zbGljZShzdGFydCkgOiBqc29uO1xuICAgIHJldHVybiBpbXBsaWNpdEtleVxuICAgICAgICA/IHN0clxuICAgICAgICA6IGZvbGRGbG93TGluZXMuZm9sZEZsb3dMaW5lcyhzdHIsIGluZGVudCwgZm9sZEZsb3dMaW5lcy5GT0xEX1FVT1RFRCwgZ2V0Rm9sZE9wdGlvbnMoY3R4LCBmYWxzZSkpO1xufVxuZnVuY3Rpb24gc2luZ2xlUXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpIHtcbiAgICBpZiAoY3R4Lm9wdGlvbnMuc2luZ2xlUXVvdGUgPT09IGZhbHNlIHx8XG4gICAgICAgIChjdHguaW1wbGljaXRLZXkgJiYgdmFsdWUuaW5jbHVkZXMoJ1xcbicpKSB8fFxuICAgICAgICAvWyBcXHRdXFxufFxcblsgXFx0XS8udGVzdCh2YWx1ZSkgLy8gc2luZ2xlIHF1b3RlZCBzdHJpbmcgY2FuJ3QgaGF2ZSBsZWFkaW5nIG9yIHRyYWlsaW5nIHdoaXRlc3BhY2UgYXJvdW5kIG5ld2xpbmVcbiAgICApXG4gICAgICAgIHJldHVybiBkb3VibGVRdW90ZWRTdHJpbmcodmFsdWUsIGN0eCk7XG4gICAgY29uc3QgaW5kZW50ID0gY3R4LmluZGVudCB8fCAoY29udGFpbnNEb2N1bWVudE1hcmtlcih2YWx1ZSkgPyAnICAnIDogJycpO1xuICAgIGNvbnN0IHJlcyA9IFwiJ1wiICsgdmFsdWUucmVwbGFjZSgvJy9nLCBcIicnXCIpLnJlcGxhY2UoL1xcbisvZywgYCQmXFxuJHtpbmRlbnR9YCkgKyBcIidcIjtcbiAgICByZXR1cm4gY3R4LmltcGxpY2l0S2V5XG4gICAgICAgID8gcmVzXG4gICAgICAgIDogZm9sZEZsb3dMaW5lcy5mb2xkRmxvd0xpbmVzKHJlcywgaW5kZW50LCBmb2xkRmxvd0xpbmVzLkZPTERfRkxPVywgZ2V0Rm9sZE9wdGlvbnMoY3R4LCBmYWxzZSkpO1xufVxuZnVuY3Rpb24gcXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpIHtcbiAgICBjb25zdCB7IHNpbmdsZVF1b3RlIH0gPSBjdHgub3B0aW9ucztcbiAgICBsZXQgcXM7XG4gICAgaWYgKHNpbmdsZVF1b3RlID09PSBmYWxzZSlcbiAgICAgICAgcXMgPSBkb3VibGVRdW90ZWRTdHJpbmc7XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IGhhc0RvdWJsZSA9IHZhbHVlLmluY2x1ZGVzKCdcIicpO1xuICAgICAgICBjb25zdCBoYXNTaW5nbGUgPSB2YWx1ZS5pbmNsdWRlcyhcIidcIik7XG4gICAgICAgIGlmIChoYXNEb3VibGUgJiYgIWhhc1NpbmdsZSlcbiAgICAgICAgICAgIHFzID0gc2luZ2xlUXVvdGVkU3RyaW5nO1xuICAgICAgICBlbHNlIGlmIChoYXNTaW5nbGUgJiYgIWhhc0RvdWJsZSlcbiAgICAgICAgICAgIHFzID0gZG91YmxlUXVvdGVkU3RyaW5nO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBxcyA9IHNpbmdsZVF1b3RlID8gc2luZ2xlUXVvdGVkU3RyaW5nIDogZG91YmxlUXVvdGVkU3RyaW5nO1xuICAgIH1cbiAgICByZXR1cm4gcXModmFsdWUsIGN0eCk7XG59XG4vLyBUaGUgbmVnYXRpdmUgbG9va2JlaGluZCBhdm9pZHMgYSBwb2x5bm9taWFsIHNlYXJjaCxcbi8vIGJ1dCBpc24ndCBzdXBwb3J0ZWQgeWV0IG9uIFNhZmFyaTogaHR0cHM6Ly9jYW5pdXNlLmNvbS9qcy1yZWdleHAtbG9va2JlaGluZFxubGV0IGJsb2NrRW5kTmV3bGluZXM7XG50cnkge1xuICAgIGJsb2NrRW5kTmV3bGluZXMgPSBuZXcgUmVnRXhwKCcoXnwoPzwhXFxuKSlcXG4rKD8hXFxufCQpJywgJ2cnKTtcbn1cbmNhdGNoIHtcbiAgICBibG9ja0VuZE5ld2xpbmVzID0gL1xcbisoPyFcXG58JCkvZztcbn1cbmZ1bmN0aW9uIGJsb2NrU3RyaW5nKHsgY29tbWVudCwgdHlwZSwgdmFsdWUgfSwgY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKSB7XG4gICAgY29uc3QgeyBibG9ja1F1b3RlLCBjb21tZW50U3RyaW5nLCBsaW5lV2lkdGggfSA9IGN0eC5vcHRpb25zO1xuICAgIC8vIDEuIEJsb2NrIGNhbid0IGVuZCBpbiB3aGl0ZXNwYWNlIHVubGVzcyB0aGUgbGFzdCBsaW5lIGlzIG5vbi1lbXB0eS5cbiAgICAvLyAyLiBTdHJpbmdzIGNvbnNpc3Rpbmcgb2Ygb25seSB3aGl0ZXNwYWNlIGFyZSBiZXN0IHJlbmRlcmVkIGV4cGxpY2l0bHkuXG4gICAgaWYgKCFibG9ja1F1b3RlIHx8IC9cXG5bXFx0IF0rJC8udGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIHF1b3RlZFN0cmluZyh2YWx1ZSwgY3R4KTtcbiAgICB9XG4gICAgY29uc3QgaW5kZW50ID0gY3R4LmluZGVudCB8fFxuICAgICAgICAoY3R4LmZvcmNlQmxvY2tJbmRlbnQgfHwgY29udGFpbnNEb2N1bWVudE1hcmtlcih2YWx1ZSkgPyAnICAnIDogJycpO1xuICAgIGNvbnN0IGxpdGVyYWwgPSBibG9ja1F1b3RlID09PSAnbGl0ZXJhbCdcbiAgICAgICAgPyB0cnVlXG4gICAgICAgIDogYmxvY2tRdW90ZSA9PT0gJ2ZvbGRlZCcgfHwgdHlwZSA9PT0gU2NhbGFyLlNjYWxhci5CTE9DS19GT0xERURcbiAgICAgICAgICAgID8gZmFsc2VcbiAgICAgICAgICAgIDogdHlwZSA9PT0gU2NhbGFyLlNjYWxhci5CTE9DS19MSVRFUkFMXG4gICAgICAgICAgICAgICAgPyB0cnVlXG4gICAgICAgICAgICAgICAgOiAhbGluZUxlbmd0aE92ZXJMaW1pdCh2YWx1ZSwgbGluZVdpZHRoLCBpbmRlbnQubGVuZ3RoKTtcbiAgICBpZiAoIXZhbHVlKVxuICAgICAgICByZXR1cm4gbGl0ZXJhbCA/ICd8XFxuJyA6ICc+XFxuJztcbiAgICAvLyBkZXRlcm1pbmUgY2hvbXBpbmcgZnJvbSB3aGl0ZXNwYWNlIGF0IHZhbHVlIGVuZFxuICAgIGxldCBjaG9tcDtcbiAgICBsZXQgZW5kU3RhcnQ7XG4gICAgZm9yIChlbmRTdGFydCA9IHZhbHVlLmxlbmd0aDsgZW5kU3RhcnQgPiAwOyAtLWVuZFN0YXJ0KSB7XG4gICAgICAgIGNvbnN0IGNoID0gdmFsdWVbZW5kU3RhcnQgLSAxXTtcbiAgICAgICAgaWYgKGNoICE9PSAnXFxuJyAmJiBjaCAhPT0gJ1xcdCcgJiYgY2ggIT09ICcgJylcbiAgICAgICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBsZXQgZW5kID0gdmFsdWUuc3Vic3RyaW5nKGVuZFN0YXJ0KTtcbiAgICBjb25zdCBlbmRObFBvcyA9IGVuZC5pbmRleE9mKCdcXG4nKTtcbiAgICBpZiAoZW5kTmxQb3MgPT09IC0xKSB7XG4gICAgICAgIGNob21wID0gJy0nOyAvLyBzdHJpcFxuICAgIH1cbiAgICBlbHNlIGlmICh2YWx1ZSA9PT0gZW5kIHx8IGVuZE5sUG9zICE9PSBlbmQubGVuZ3RoIC0gMSkge1xuICAgICAgICBjaG9tcCA9ICcrJzsgLy8ga2VlcFxuICAgICAgICBpZiAob25DaG9tcEtlZXApXG4gICAgICAgICAgICBvbkNob21wS2VlcCgpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY2hvbXAgPSAnJzsgLy8gY2xpcFxuICAgIH1cbiAgICBpZiAoZW5kKSB7XG4gICAgICAgIHZhbHVlID0gdmFsdWUuc2xpY2UoMCwgLWVuZC5sZW5ndGgpO1xuICAgICAgICBpZiAoZW5kW2VuZC5sZW5ndGggLSAxXSA9PT0gJ1xcbicpXG4gICAgICAgICAgICBlbmQgPSBlbmQuc2xpY2UoMCwgLTEpO1xuICAgICAgICBlbmQgPSBlbmQucmVwbGFjZShibG9ja0VuZE5ld2xpbmVzLCBgJCYke2luZGVudH1gKTtcbiAgICB9XG4gICAgLy8gZGV0ZXJtaW5lIGluZGVudCBpbmRpY2F0b3IgZnJvbSB3aGl0ZXNwYWNlIGF0IHZhbHVlIHN0YXJ0XG4gICAgbGV0IHN0YXJ0V2l0aFNwYWNlID0gZmFsc2U7XG4gICAgbGV0IHN0YXJ0RW5kO1xuICAgIGxldCBzdGFydE5sUG9zID0gLTE7XG4gICAgZm9yIChzdGFydEVuZCA9IDA7IHN0YXJ0RW5kIDwgdmFsdWUubGVuZ3RoOyArK3N0YXJ0RW5kKSB7XG4gICAgICAgIGNvbnN0IGNoID0gdmFsdWVbc3RhcnRFbmRdO1xuICAgICAgICBpZiAoY2ggPT09ICcgJylcbiAgICAgICAgICAgIHN0YXJ0V2l0aFNwYWNlID0gdHJ1ZTtcbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICdcXG4nKVxuICAgICAgICAgICAgc3RhcnRObFBvcyA9IHN0YXJ0RW5kO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG4gICAgbGV0IHN0YXJ0ID0gdmFsdWUuc3Vic3RyaW5nKDAsIHN0YXJ0TmxQb3MgPCBzdGFydEVuZCA/IHN0YXJ0TmxQb3MgKyAxIDogc3RhcnRFbmQpO1xuICAgIGlmIChzdGFydCkge1xuICAgICAgICB2YWx1ZSA9IHZhbHVlLnN1YnN0cmluZyhzdGFydC5sZW5ndGgpO1xuICAgICAgICBzdGFydCA9IHN0YXJ0LnJlcGxhY2UoL1xcbisvZywgYCQmJHtpbmRlbnR9YCk7XG4gICAgfVxuICAgIGNvbnN0IGluZGVudFNpemUgPSBpbmRlbnQgPyAnMicgOiAnMSc7IC8vIHJvb3QgaXMgYXQgLTFcbiAgICAvLyBMZWFkaW5nIHwgb3IgPiBpcyBhZGRlZCBsYXRlclxuICAgIGxldCBoZWFkZXIgPSAoc3RhcnRXaXRoU3BhY2UgPyBpbmRlbnRTaXplIDogJycpICsgY2hvbXA7XG4gICAgaWYgKGNvbW1lbnQpIHtcbiAgICAgICAgaGVhZGVyICs9ICcgJyArIGNvbW1lbnRTdHJpbmcoY29tbWVudC5yZXBsYWNlKC8gP1tcXHJcXG5dKy9nLCAnICcpKTtcbiAgICAgICAgaWYgKG9uQ29tbWVudClcbiAgICAgICAgICAgIG9uQ29tbWVudCgpO1xuICAgIH1cbiAgICBpZiAoIWxpdGVyYWwpIHtcbiAgICAgICAgY29uc3QgZm9sZGVkVmFsdWUgPSB2YWx1ZVxuICAgICAgICAgICAgLnJlcGxhY2UoL1xcbisvZywgJ1xcbiQmJylcbiAgICAgICAgICAgIC5yZXBsYWNlKC8oPzpefFxcbikoW1xcdCBdLiopKD86KFtcXG5cXHQgXSopXFxuKD8hW1xcblxcdCBdKSk/L2csICckMSQyJykgLy8gbW9yZS1pbmRlbnRlZCBsaW5lcyBhcmVuJ3QgZm9sZGVkXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICAgICBeIG1vcmUtaW5kLiBeIGVtcHR5ICAgICBeIGNhcHR1cmUgbmV4dCBlbXB0eSBsaW5lcyBvbmx5IGF0IGVuZCBvZiBpbmRlbnRcbiAgICAgICAgICAgIC5yZXBsYWNlKC9cXG4rL2csIGAkJiR7aW5kZW50fWApO1xuICAgICAgICBsZXQgbGl0ZXJhbEZhbGxiYWNrID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IGZvbGRPcHRpb25zID0gZ2V0Rm9sZE9wdGlvbnMoY3R4LCB0cnVlKTtcbiAgICAgICAgaWYgKGJsb2NrUXVvdGUgIT09ICdmb2xkZWQnICYmIHR5cGUgIT09IFNjYWxhci5TY2FsYXIuQkxPQ0tfRk9MREVEKSB7XG4gICAgICAgICAgICBmb2xkT3B0aW9ucy5vbk92ZXJmbG93ID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGxpdGVyYWxGYWxsYmFjayA9IHRydWU7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJvZHkgPSBmb2xkRmxvd0xpbmVzLmZvbGRGbG93TGluZXMoYCR7c3RhcnR9JHtmb2xkZWRWYWx1ZX0ke2VuZH1gLCBpbmRlbnQsIGZvbGRGbG93TGluZXMuRk9MRF9CTE9DSywgZm9sZE9wdGlvbnMpO1xuICAgICAgICBpZiAoIWxpdGVyYWxGYWxsYmFjaylcbiAgICAgICAgICAgIHJldHVybiBgPiR7aGVhZGVyfVxcbiR7aW5kZW50fSR7Ym9keX1gO1xuICAgIH1cbiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1xcbisvZywgYCQmJHtpbmRlbnR9YCk7XG4gICAgcmV0dXJuIGB8JHtoZWFkZXJ9XFxuJHtpbmRlbnR9JHtzdGFydH0ke3ZhbHVlfSR7ZW5kfWA7XG59XG5mdW5jdGlvbiBwbGFpblN0cmluZyhpdGVtLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApIHtcbiAgICBjb25zdCB7IHR5cGUsIHZhbHVlIH0gPSBpdGVtO1xuICAgIGNvbnN0IHsgYWN0dWFsU3RyaW5nLCBpbXBsaWNpdEtleSwgaW5kZW50LCBpbmRlbnRTdGVwLCBpbkZsb3cgfSA9IGN0eDtcbiAgICBpZiAoKGltcGxpY2l0S2V5ICYmIHZhbHVlLmluY2x1ZGVzKCdcXG4nKSkgfHxcbiAgICAgICAgKGluRmxvdyAmJiAvW1tcXF17fSxdLy50ZXN0KHZhbHVlKSkpIHtcbiAgICAgICAgcmV0dXJuIHF1b3RlZFN0cmluZyh2YWx1ZSwgY3R4KTtcbiAgICB9XG4gICAgaWYgKC9eW1xcblxcdCAsW1xcXXt9IyYqIXw+J1wiJUBgXXxeWz8tXSR8Xls/LV1bIFxcdF18W1xcbjpdWyBcXHRdfFsgXFx0XVxcbnxbXFxuXFx0IF0jfFtcXG5cXHQgOl0kLy50ZXN0KHZhbHVlKSkge1xuICAgICAgICAvLyBub3QgYWxsb3dlZDpcbiAgICAgICAgLy8gLSAnLScgb3IgJz8nXG4gICAgICAgIC8vIC0gc3RhcnQgd2l0aCBhbiBpbmRpY2F0b3IgY2hhcmFjdGVyIChleGNlcHQgWz86LV0pIG9yIC9bPy1dIC9cbiAgICAgICAgLy8gLSAnXFxuICcsICc6ICcgb3IgJyBcXG4nIGFueXdoZXJlXG4gICAgICAgIC8vIC0gJyMnIG5vdCBwcmVjZWRlZCBieSBhIG5vbi1zcGFjZSBjaGFyXG4gICAgICAgIC8vIC0gZW5kIHdpdGggJyAnIG9yICc6J1xuICAgICAgICByZXR1cm4gaW1wbGljaXRLZXkgfHwgaW5GbG93IHx8ICF2YWx1ZS5pbmNsdWRlcygnXFxuJylcbiAgICAgICAgICAgID8gcXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpXG4gICAgICAgICAgICA6IGJsb2NrU3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxuICAgIGlmICghaW1wbGljaXRLZXkgJiZcbiAgICAgICAgIWluRmxvdyAmJlxuICAgICAgICB0eXBlICE9PSBTY2FsYXIuU2NhbGFyLlBMQUlOICYmXG4gICAgICAgIHZhbHVlLmluY2x1ZGVzKCdcXG4nKSkge1xuICAgICAgICAvLyBXaGVyZSBhbGxvd2VkICYgdHlwZSBub3Qgc2V0IGV4cGxpY2l0bHksIHByZWZlciBibG9jayBzdHlsZSBmb3IgbXVsdGlsaW5lIHN0cmluZ3NcbiAgICAgICAgcmV0dXJuIGJsb2NrU3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxuICAgIGlmIChjb250YWluc0RvY3VtZW50TWFya2VyKHZhbHVlKSkge1xuICAgICAgICBpZiAoaW5kZW50ID09PSAnJykge1xuICAgICAgICAgICAgY3R4LmZvcmNlQmxvY2tJbmRlbnQgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIGJsb2NrU3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaW1wbGljaXRLZXkgJiYgaW5kZW50ID09PSBpbmRlbnRTdGVwKSB7XG4gICAgICAgICAgICByZXR1cm4gcXVvdGVkU3RyaW5nKHZhbHVlLCBjdHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IHN0ciA9IHZhbHVlLnJlcGxhY2UoL1xcbisvZywgYCQmXFxuJHtpbmRlbnR9YCk7XG4gICAgLy8gVmVyaWZ5IHRoYXQgb3V0cHV0IHdpbGwgYmUgcGFyc2VkIGFzIGEgc3RyaW5nLCBhcyBlLmcuIHBsYWluIG51bWJlcnMgYW5kXG4gICAgLy8gYm9vbGVhbnMgZ2V0IHBhcnNlZCB3aXRoIHRob3NlIHR5cGVzIGluIHYxLjIgKGUuZy4gJzQyJywgJ3RydWUnICYgJzAuOWUtMycpLFxuICAgIC8vIGFuZCBvdGhlcnMgaW4gdjEuMS5cbiAgICBpZiAoYWN0dWFsU3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHRlc3QgPSAodGFnKSA9PiB0YWcuZGVmYXVsdCAmJiB0YWcudGFnICE9PSAndGFnOnlhbWwub3JnLDIwMDI6c3RyJyAmJiB0YWcudGVzdD8udGVzdChzdHIpO1xuICAgICAgICBjb25zdCB7IGNvbXBhdCwgdGFncyB9ID0gY3R4LmRvYy5zY2hlbWE7XG4gICAgICAgIGlmICh0YWdzLnNvbWUodGVzdCkgfHwgY29tcGF0Py5zb21lKHRlc3QpKVxuICAgICAgICAgICAgcmV0dXJuIHF1b3RlZFN0cmluZyh2YWx1ZSwgY3R4KTtcbiAgICB9XG4gICAgcmV0dXJuIGltcGxpY2l0S2V5XG4gICAgICAgID8gc3RyXG4gICAgICAgIDogZm9sZEZsb3dMaW5lcy5mb2xkRmxvd0xpbmVzKHN0ciwgaW5kZW50LCBmb2xkRmxvd0xpbmVzLkZPTERfRkxPVywgZ2V0Rm9sZE9wdGlvbnMoY3R4LCBmYWxzZSkpO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5U3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgIGNvbnN0IHsgaW1wbGljaXRLZXksIGluRmxvdyB9ID0gY3R4O1xuICAgIGNvbnN0IHNzID0gdHlwZW9mIGl0ZW0udmFsdWUgPT09ICdzdHJpbmcnXG4gICAgICAgID8gaXRlbVxuICAgICAgICA6IE9iamVjdC5hc3NpZ24oe30sIGl0ZW0sIHsgdmFsdWU6IFN0cmluZyhpdGVtLnZhbHVlKSB9KTtcbiAgICBsZXQgeyB0eXBlIH0gPSBpdGVtO1xuICAgIGlmICh0eXBlICE9PSBTY2FsYXIuU2NhbGFyLlFVT1RFX0RPVUJMRSkge1xuICAgICAgICAvLyBmb3JjZSBkb3VibGUgcXVvdGVzIG9uIGNvbnRyb2wgY2hhcmFjdGVycyAmIHVucGFpcmVkIHN1cnJvZ2F0ZXNcbiAgICAgICAgaWYgKC9bXFx4MDAtXFx4MDhcXHgwYi1cXHgxZlxceDdmLVxceDlmXFx1e0Q4MDB9LVxcdXtERkZGfV0vdS50ZXN0KHNzLnZhbHVlKSlcbiAgICAgICAgICAgIHR5cGUgPSBTY2FsYXIuU2NhbGFyLlFVT1RFX0RPVUJMRTtcbiAgICB9XG4gICAgY29uc3QgX3N0cmluZ2lmeSA9IChfdHlwZSkgPT4ge1xuICAgICAgICBzd2l0Y2ggKF90eXBlKSB7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuQkxPQ0tfRk9MREVEOlxuICAgICAgICAgICAgY2FzZSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUw6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGltcGxpY2l0S2V5IHx8IGluRmxvd1xuICAgICAgICAgICAgICAgICAgICA/IHF1b3RlZFN0cmluZyhzcy52YWx1ZSwgY3R4KSAvLyBibG9ja3MgYXJlIG5vdCB2YWxpZCBpbnNpZGUgZmxvdyBjb250YWluZXJzXG4gICAgICAgICAgICAgICAgICAgIDogYmxvY2tTdHJpbmcoc3MsIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuUVVPVEVfRE9VQkxFOlxuICAgICAgICAgICAgICAgIHJldHVybiBkb3VibGVRdW90ZWRTdHJpbmcoc3MudmFsdWUsIGN0eCk7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuUVVPVEVfU0lOR0xFOlxuICAgICAgICAgICAgICAgIHJldHVybiBzaW5nbGVRdW90ZWRTdHJpbmcoc3MudmFsdWUsIGN0eCk7XG4gICAgICAgICAgICBjYXNlIFNjYWxhci5TY2FsYXIuUExBSU46XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYWluU3RyaW5nKHNzLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH07XG4gICAgbGV0IHJlcyA9IF9zdHJpbmdpZnkodHlwZSk7XG4gICAgaWYgKHJlcyA9PT0gbnVsbCkge1xuICAgICAgICBjb25zdCB7IGRlZmF1bHRLZXlUeXBlLCBkZWZhdWx0U3RyaW5nVHlwZSB9ID0gY3R4Lm9wdGlvbnM7XG4gICAgICAgIGNvbnN0IHQgPSAoaW1wbGljaXRLZXkgJiYgZGVmYXVsdEtleVR5cGUpIHx8IGRlZmF1bHRTdHJpbmdUeXBlO1xuICAgICAgICByZXMgPSBfc3RyaW5naWZ5KHQpO1xuICAgICAgICBpZiAocmVzID09PSBudWxsKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBkZWZhdWx0IHN0cmluZyB0eXBlICR7dH1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbn1cblxuZXhwb3J0cy5zdHJpbmdpZnlTdHJpbmcgPSBzdHJpbmdpZnlTdHJpbmc7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgYW5jaG9ycyA9IHJlcXVpcmUoJy4uL2RvYy9hbmNob3JzLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIHN0cmluZ2lmeUNvbW1lbnQgPSByZXF1aXJlKCcuL3N0cmluZ2lmeUNvbW1lbnQuanMnKTtcbnZhciBzdHJpbmdpZnlTdHJpbmcgPSByZXF1aXJlKCcuL3N0cmluZ2lmeVN0cmluZy5qcycpO1xuXG5mdW5jdGlvbiBjcmVhdGVTdHJpbmdpZnlDb250ZXh0KGRvYywgb3B0aW9ucykge1xuICAgIGNvbnN0IG9wdCA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICBibG9ja1F1b3RlOiB0cnVlLFxuICAgICAgICBjb21tZW50U3RyaW5nOiBzdHJpbmdpZnlDb21tZW50LnN0cmluZ2lmeUNvbW1lbnQsXG4gICAgICAgIGRlZmF1bHRLZXlUeXBlOiBudWxsLFxuICAgICAgICBkZWZhdWx0U3RyaW5nVHlwZTogJ1BMQUlOJyxcbiAgICAgICAgZGlyZWN0aXZlczogbnVsbCxcbiAgICAgICAgZG91YmxlUXVvdGVkQXNKU09OOiBmYWxzZSxcbiAgICAgICAgZG91YmxlUXVvdGVkTWluTXVsdGlMaW5lTGVuZ3RoOiA0MCxcbiAgICAgICAgZmFsc2VTdHI6ICdmYWxzZScsXG4gICAgICAgIGZsb3dDb2xsZWN0aW9uUGFkZGluZzogdHJ1ZSxcbiAgICAgICAgaW5kZW50U2VxOiB0cnVlLFxuICAgICAgICBsaW5lV2lkdGg6IDgwLFxuICAgICAgICBtaW5Db250ZW50V2lkdGg6IDIwLFxuICAgICAgICBudWxsU3RyOiAnbnVsbCcsXG4gICAgICAgIHNpbXBsZUtleXM6IGZhbHNlLFxuICAgICAgICBzaW5nbGVRdW90ZTogbnVsbCxcbiAgICAgICAgdHJ1ZVN0cjogJ3RydWUnLFxuICAgICAgICB2ZXJpZnlBbGlhc09yZGVyOiB0cnVlXG4gICAgfSwgZG9jLnNjaGVtYS50b1N0cmluZ09wdGlvbnMsIG9wdGlvbnMpO1xuICAgIGxldCBpbkZsb3c7XG4gICAgc3dpdGNoIChvcHQuY29sbGVjdGlvblN0eWxlKSB7XG4gICAgICAgIGNhc2UgJ2Jsb2NrJzpcbiAgICAgICAgICAgIGluRmxvdyA9IGZhbHNlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2Zsb3cnOlxuICAgICAgICAgICAgaW5GbG93ID0gdHJ1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgaW5GbG93ID0gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgYW5jaG9yczogbmV3IFNldCgpLFxuICAgICAgICBkb2MsXG4gICAgICAgIGZsb3dDb2xsZWN0aW9uUGFkZGluZzogb3B0LmZsb3dDb2xsZWN0aW9uUGFkZGluZyA/ICcgJyA6ICcnLFxuICAgICAgICBpbmRlbnQ6ICcnLFxuICAgICAgICBpbmRlbnRTdGVwOiB0eXBlb2Ygb3B0LmluZGVudCA9PT0gJ251bWJlcicgPyAnICcucmVwZWF0KG9wdC5pbmRlbnQpIDogJyAgJyxcbiAgICAgICAgaW5GbG93LFxuICAgICAgICBvcHRpb25zOiBvcHRcbiAgICB9O1xufVxuZnVuY3Rpb24gZ2V0VGFnT2JqZWN0KHRhZ3MsIGl0ZW0pIHtcbiAgICBpZiAoaXRlbS50YWcpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSB0YWdzLmZpbHRlcih0ID0+IHQudGFnID09PSBpdGVtLnRhZyk7XG4gICAgICAgIGlmIChtYXRjaC5sZW5ndGggPiAwKVxuICAgICAgICAgICAgcmV0dXJuIG1hdGNoLmZpbmQodCA9PiB0LmZvcm1hdCA9PT0gaXRlbS5mb3JtYXQpID8/IG1hdGNoWzBdO1xuICAgIH1cbiAgICBsZXQgdGFnT2JqID0gdW5kZWZpbmVkO1xuICAgIGxldCBvYmo7XG4gICAgaWYgKGlkZW50aXR5LmlzU2NhbGFyKGl0ZW0pKSB7XG4gICAgICAgIG9iaiA9IGl0ZW0udmFsdWU7XG4gICAgICAgIGxldCBtYXRjaCA9IHRhZ3MuZmlsdGVyKHQgPT4gdC5pZGVudGlmeT8uKG9iaikpO1xuICAgICAgICBpZiAobWF0Y2gubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgY29uc3QgdGVzdE1hdGNoID0gbWF0Y2guZmlsdGVyKHQgPT4gdC50ZXN0KTtcbiAgICAgICAgICAgIGlmICh0ZXN0TWF0Y2gubGVuZ3RoID4gMClcbiAgICAgICAgICAgICAgICBtYXRjaCA9IHRlc3RNYXRjaDtcbiAgICAgICAgfVxuICAgICAgICB0YWdPYmogPVxuICAgICAgICAgICAgbWF0Y2guZmluZCh0ID0+IHQuZm9ybWF0ID09PSBpdGVtLmZvcm1hdCkgPz8gbWF0Y2guZmluZCh0ID0+ICF0LmZvcm1hdCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBvYmogPSBpdGVtO1xuICAgICAgICB0YWdPYmogPSB0YWdzLmZpbmQodCA9PiB0Lm5vZGVDbGFzcyAmJiBvYmogaW5zdGFuY2VvZiB0Lm5vZGVDbGFzcyk7XG4gICAgfVxuICAgIGlmICghdGFnT2JqKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBvYmo/LmNvbnN0cnVjdG9yPy5uYW1lID8/IChvYmogPT09IG51bGwgPyAnbnVsbCcgOiB0eXBlb2Ygb2JqKTtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUYWcgbm90IHJlc29sdmVkIGZvciAke25hbWV9IHZhbHVlYCk7XG4gICAgfVxuICAgIHJldHVybiB0YWdPYmo7XG59XG4vLyBuZWVkcyB0byBiZSBjYWxsZWQgYmVmb3JlIHZhbHVlIHN0cmluZ2lmaWVyIHRvIGFsbG93IGZvciBjaXJjdWxhciBhbmNob3IgcmVmc1xuZnVuY3Rpb24gc3RyaW5naWZ5UHJvcHMobm9kZSwgdGFnT2JqLCB7IGFuY2hvcnM6IGFuY2hvcnMkMSwgZG9jIH0pIHtcbiAgICBpZiAoIWRvYy5kaXJlY3RpdmVzKVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgY29uc3QgcHJvcHMgPSBbXTtcbiAgICBjb25zdCBhbmNob3IgPSAoaWRlbnRpdHkuaXNTY2FsYXIobm9kZSkgfHwgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKSAmJiBub2RlLmFuY2hvcjtcbiAgICBpZiAoYW5jaG9yICYmIGFuY2hvcnMuYW5jaG9ySXNWYWxpZChhbmNob3IpKSB7XG4gICAgICAgIGFuY2hvcnMkMS5hZGQoYW5jaG9yKTtcbiAgICAgICAgcHJvcHMucHVzaChgJiR7YW5jaG9yfWApO1xuICAgIH1cbiAgICBjb25zdCB0YWcgPSBub2RlLnRhZyA/PyAodGFnT2JqLmRlZmF1bHQgPyBudWxsIDogdGFnT2JqLnRhZyk7XG4gICAgaWYgKHRhZylcbiAgICAgICAgcHJvcHMucHVzaChkb2MuZGlyZWN0aXZlcy50YWdTdHJpbmcodGFnKSk7XG4gICAgcmV0dXJuIHByb3BzLmpvaW4oJyAnKTtcbn1cbmZ1bmN0aW9uIHN0cmluZ2lmeShpdGVtLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApIHtcbiAgICBpZiAoaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKVxuICAgICAgICByZXR1cm4gaXRlbS50b1N0cmluZyhjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApO1xuICAgIGlmIChpZGVudGl0eS5pc0FsaWFzKGl0ZW0pKSB7XG4gICAgICAgIGlmIChjdHguZG9jLmRpcmVjdGl2ZXMpXG4gICAgICAgICAgICByZXR1cm4gaXRlbS50b1N0cmluZyhjdHgpO1xuICAgICAgICBpZiAoY3R4LnJlc29sdmVkQWxpYXNlcz8uaGFzKGl0ZW0pKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBDYW5ub3Qgc3RyaW5naWZ5IGNpcmN1bGFyIHN0cnVjdHVyZSB3aXRob3V0IGFsaWFzIG5vZGVzYCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoY3R4LnJlc29sdmVkQWxpYXNlcylcbiAgICAgICAgICAgICAgICBjdHgucmVzb2x2ZWRBbGlhc2VzLmFkZChpdGVtKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBjdHgucmVzb2x2ZWRBbGlhc2VzID0gbmV3IFNldChbaXRlbV0pO1xuICAgICAgICAgICAgaXRlbSA9IGl0ZW0ucmVzb2x2ZShjdHguZG9jKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBsZXQgdGFnT2JqID0gdW5kZWZpbmVkO1xuICAgIGNvbnN0IG5vZGUgPSBpZGVudGl0eS5pc05vZGUoaXRlbSlcbiAgICAgICAgPyBpdGVtXG4gICAgICAgIDogY3R4LmRvYy5jcmVhdGVOb2RlKGl0ZW0sIHsgb25UYWdPYmo6IG8gPT4gKHRhZ09iaiA9IG8pIH0pO1xuICAgIHRhZ09iaiA/PyAodGFnT2JqID0gZ2V0VGFnT2JqZWN0KGN0eC5kb2Muc2NoZW1hLnRhZ3MsIG5vZGUpKTtcbiAgICBjb25zdCBwcm9wcyA9IHN0cmluZ2lmeVByb3BzKG5vZGUsIHRhZ09iaiwgY3R4KTtcbiAgICBpZiAocHJvcHMubGVuZ3RoID4gMClcbiAgICAgICAgY3R4LmluZGVudEF0U3RhcnQgPSAoY3R4LmluZGVudEF0U3RhcnQgPz8gMCkgKyBwcm9wcy5sZW5ndGggKyAxO1xuICAgIGNvbnN0IHN0ciA9IHR5cGVvZiB0YWdPYmouc3RyaW5naWZ5ID09PSAnZnVuY3Rpb24nXG4gICAgICAgID8gdGFnT2JqLnN0cmluZ2lmeShub2RlLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApXG4gICAgICAgIDogaWRlbnRpdHkuaXNTY2FsYXIobm9kZSlcbiAgICAgICAgICAgID8gc3RyaW5naWZ5U3RyaW5nLnN0cmluZ2lmeVN0cmluZyhub2RlLCBjdHgsIG9uQ29tbWVudCwgb25DaG9tcEtlZXApXG4gICAgICAgICAgICA6IG5vZGUudG9TdHJpbmcoY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKTtcbiAgICBpZiAoIXByb3BzKVxuICAgICAgICByZXR1cm4gc3RyO1xuICAgIHJldHVybiBpZGVudGl0eS5pc1NjYWxhcihub2RlKSB8fCBzdHJbMF0gPT09ICd7JyB8fCBzdHJbMF0gPT09ICdbJ1xuICAgICAgICA/IGAke3Byb3BzfSAke3N0cn1gXG4gICAgICAgIDogYCR7cHJvcHN9XFxuJHtjdHguaW5kZW50fSR7c3RyfWA7XG59XG5cbmV4cG9ydHMuY3JlYXRlU3RyaW5naWZ5Q29udGV4dCA9IGNyZWF0ZVN0cmluZ2lmeUNvbnRleHQ7XG5leHBvcnRzLnN0cmluZ2lmeSA9IHN0cmluZ2lmeTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgc3RyaW5naWZ5ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnkuanMnKTtcbnZhciBzdHJpbmdpZnlDb21tZW50ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnlDb21tZW50LmpzJyk7XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeVBhaXIoeyBrZXksIHZhbHVlIH0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgIGNvbnN0IHsgYWxsTnVsbFZhbHVlcywgZG9jLCBpbmRlbnQsIGluZGVudFN0ZXAsIG9wdGlvbnM6IHsgY29tbWVudFN0cmluZywgaW5kZW50U2VxLCBzaW1wbGVLZXlzIH0gfSA9IGN0eDtcbiAgICBsZXQga2V5Q29tbWVudCA9IChpZGVudGl0eS5pc05vZGUoa2V5KSAmJiBrZXkuY29tbWVudCkgfHwgbnVsbDtcbiAgICBpZiAoc2ltcGxlS2V5cykge1xuICAgICAgICBpZiAoa2V5Q29tbWVudCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdXaXRoIHNpbXBsZSBrZXlzLCBrZXkgbm9kZXMgY2Fubm90IGhhdmUgY29tbWVudHMnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKGtleSkgfHwgKCFpZGVudGl0eS5pc05vZGUoa2V5KSAmJiB0eXBlb2Yga2V5ID09PSAnb2JqZWN0JykpIHtcbiAgICAgICAgICAgIGNvbnN0IG1zZyA9ICdXaXRoIHNpbXBsZSBrZXlzLCBjb2xsZWN0aW9uIGNhbm5vdCBiZSB1c2VkIGFzIGEga2V5IHZhbHVlJztcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGxldCBleHBsaWNpdEtleSA9ICFzaW1wbGVLZXlzICYmXG4gICAgICAgICgha2V5IHx8XG4gICAgICAgICAgICAoa2V5Q29tbWVudCAmJiB2YWx1ZSA9PSBudWxsICYmICFjdHguaW5GbG93KSB8fFxuICAgICAgICAgICAgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKGtleSkgfHxcbiAgICAgICAgICAgIChpZGVudGl0eS5pc1NjYWxhcihrZXkpXG4gICAgICAgICAgICAgICAgPyBrZXkudHlwZSA9PT0gU2NhbGFyLlNjYWxhci5CTE9DS19GT0xERUQgfHwga2V5LnR5cGUgPT09IFNjYWxhci5TY2FsYXIuQkxPQ0tfTElURVJBTFxuICAgICAgICAgICAgICAgIDogdHlwZW9mIGtleSA9PT0gJ29iamVjdCcpKTtcbiAgICBjdHggPSBPYmplY3QuYXNzaWduKHt9LCBjdHgsIHtcbiAgICAgICAgYWxsTnVsbFZhbHVlczogZmFsc2UsXG4gICAgICAgIGltcGxpY2l0S2V5OiAhZXhwbGljaXRLZXkgJiYgKHNpbXBsZUtleXMgfHwgIWFsbE51bGxWYWx1ZXMpLFxuICAgICAgICBpbmRlbnQ6IGluZGVudCArIGluZGVudFN0ZXBcbiAgICB9KTtcbiAgICBsZXQga2V5Q29tbWVudERvbmUgPSBmYWxzZTtcbiAgICBsZXQgY2hvbXBLZWVwID0gZmFsc2U7XG4gICAgbGV0IHN0ciA9IHN0cmluZ2lmeS5zdHJpbmdpZnkoa2V5LCBjdHgsICgpID0+IChrZXlDb21tZW50RG9uZSA9IHRydWUpLCAoKSA9PiAoY2hvbXBLZWVwID0gdHJ1ZSkpO1xuICAgIGlmICghZXhwbGljaXRLZXkgJiYgIWN0eC5pbkZsb3cgJiYgc3RyLmxlbmd0aCA+IDEwMjQpIHtcbiAgICAgICAgaWYgKHNpbXBsZUtleXMpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1dpdGggc2ltcGxlIGtleXMsIHNpbmdsZSBsaW5lIHNjYWxhciBtdXN0IG5vdCBzcGFuIG1vcmUgdGhhbiAxMDI0IGNoYXJhY3RlcnMnKTtcbiAgICAgICAgZXhwbGljaXRLZXkgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoY3R4LmluRmxvdykge1xuICAgICAgICBpZiAoYWxsTnVsbFZhbHVlcyB8fCB2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgICAgICBpZiAoa2V5Q29tbWVudERvbmUgJiYgb25Db21tZW50KVxuICAgICAgICAgICAgICAgIG9uQ29tbWVudCgpO1xuICAgICAgICAgICAgcmV0dXJuIHN0ciA9PT0gJycgPyAnPycgOiBleHBsaWNpdEtleSA/IGA/ICR7c3RyfWAgOiBzdHI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAoKGFsbE51bGxWYWx1ZXMgJiYgIXNpbXBsZUtleXMpIHx8ICh2YWx1ZSA9PSBudWxsICYmIGV4cGxpY2l0S2V5KSkge1xuICAgICAgICBzdHIgPSBgPyAke3N0cn1gO1xuICAgICAgICBpZiAoa2V5Q29tbWVudCAmJiAha2V5Q29tbWVudERvbmUpIHtcbiAgICAgICAgICAgIHN0ciArPSBzdHJpbmdpZnlDb21tZW50LmxpbmVDb21tZW50KHN0ciwgY3R4LmluZGVudCwgY29tbWVudFN0cmluZyhrZXlDb21tZW50KSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoY2hvbXBLZWVwICYmIG9uQ2hvbXBLZWVwKVxuICAgICAgICAgICAgb25DaG9tcEtlZXAoKTtcbiAgICAgICAgcmV0dXJuIHN0cjtcbiAgICB9XG4gICAgaWYgKGtleUNvbW1lbnREb25lKVxuICAgICAgICBrZXlDb21tZW50ID0gbnVsbDtcbiAgICBpZiAoZXhwbGljaXRLZXkpIHtcbiAgICAgICAgaWYgKGtleUNvbW1lbnQpXG4gICAgICAgICAgICBzdHIgKz0gc3RyaW5naWZ5Q29tbWVudC5saW5lQ29tbWVudChzdHIsIGN0eC5pbmRlbnQsIGNvbW1lbnRTdHJpbmcoa2V5Q29tbWVudCkpO1xuICAgICAgICBzdHIgPSBgPyAke3N0cn1cXG4ke2luZGVudH06YDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHN0ciA9IGAke3N0cn06YDtcbiAgICAgICAgaWYgKGtleUNvbW1lbnQpXG4gICAgICAgICAgICBzdHIgKz0gc3RyaW5naWZ5Q29tbWVudC5saW5lQ29tbWVudChzdHIsIGN0eC5pbmRlbnQsIGNvbW1lbnRTdHJpbmcoa2V5Q29tbWVudCkpO1xuICAgIH1cbiAgICBsZXQgdnNiLCB2Y2IsIHZhbHVlQ29tbWVudDtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKHZhbHVlKSkge1xuICAgICAgICB2c2IgPSAhIXZhbHVlLnNwYWNlQmVmb3JlO1xuICAgICAgICB2Y2IgPSB2YWx1ZS5jb21tZW50QmVmb3JlO1xuICAgICAgICB2YWx1ZUNvbW1lbnQgPSB2YWx1ZS5jb21tZW50O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdnNiID0gZmFsc2U7XG4gICAgICAgIHZjYiA9IG51bGw7XG4gICAgICAgIHZhbHVlQ29tbWVudCA9IG51bGw7XG4gICAgICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKVxuICAgICAgICAgICAgdmFsdWUgPSBkb2MuY3JlYXRlTm9kZSh2YWx1ZSk7XG4gICAgfVxuICAgIGN0eC5pbXBsaWNpdEtleSA9IGZhbHNlO1xuICAgIGlmICghZXhwbGljaXRLZXkgJiYgIWtleUNvbW1lbnQgJiYgaWRlbnRpdHkuaXNTY2FsYXIodmFsdWUpKVxuICAgICAgICBjdHguaW5kZW50QXRTdGFydCA9IHN0ci5sZW5ndGggKyAxO1xuICAgIGNob21wS2VlcCA9IGZhbHNlO1xuICAgIGlmICghaW5kZW50U2VxICYmXG4gICAgICAgIGluZGVudFN0ZXAubGVuZ3RoID49IDIgJiZcbiAgICAgICAgIWN0eC5pbkZsb3cgJiZcbiAgICAgICAgIWV4cGxpY2l0S2V5ICYmXG4gICAgICAgIGlkZW50aXR5LmlzU2VxKHZhbHVlKSAmJlxuICAgICAgICAhdmFsdWUuZmxvdyAmJlxuICAgICAgICAhdmFsdWUudGFnICYmXG4gICAgICAgICF2YWx1ZS5hbmNob3IpIHtcbiAgICAgICAgLy8gSWYgaW5kZW50U2VxID09PSBmYWxzZSwgY29uc2lkZXIgJy0gJyBhcyBwYXJ0IG9mIGluZGVudGF0aW9uIHdoZXJlIHBvc3NpYmxlXG4gICAgICAgIGN0eC5pbmRlbnQgPSBjdHguaW5kZW50LnN1YnN0cmluZygyKTtcbiAgICB9XG4gICAgbGV0IHZhbHVlQ29tbWVudERvbmUgPSBmYWxzZTtcbiAgICBjb25zdCB2YWx1ZVN0ciA9IHN0cmluZ2lmeS5zdHJpbmdpZnkodmFsdWUsIGN0eCwgKCkgPT4gKHZhbHVlQ29tbWVudERvbmUgPSB0cnVlKSwgKCkgPT4gKGNob21wS2VlcCA9IHRydWUpKTtcbiAgICBsZXQgd3MgPSAnICc7XG4gICAgaWYgKGtleUNvbW1lbnQgfHwgdnNiIHx8IHZjYikge1xuICAgICAgICB3cyA9IHZzYiA/ICdcXG4nIDogJyc7XG4gICAgICAgIGlmICh2Y2IpIHtcbiAgICAgICAgICAgIGNvbnN0IGNzID0gY29tbWVudFN0cmluZyh2Y2IpO1xuICAgICAgICAgICAgd3MgKz0gYFxcbiR7c3RyaW5naWZ5Q29tbWVudC5pbmRlbnRDb21tZW50KGNzLCBjdHguaW5kZW50KX1gO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWx1ZVN0ciA9PT0gJycgJiYgIWN0eC5pbkZsb3cpIHtcbiAgICAgICAgICAgIGlmICh3cyA9PT0gJ1xcbicpXG4gICAgICAgICAgICAgICAgd3MgPSAnXFxuXFxuJztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHdzICs9IGBcXG4ke2N0eC5pbmRlbnR9YDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmICghZXhwbGljaXRLZXkgJiYgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHZhbHVlKSkge1xuICAgICAgICBjb25zdCB2czAgPSB2YWx1ZVN0clswXTtcbiAgICAgICAgY29uc3QgbmwwID0gdmFsdWVTdHIuaW5kZXhPZignXFxuJyk7XG4gICAgICAgIGNvbnN0IGhhc05ld2xpbmUgPSBubDAgIT09IC0xO1xuICAgICAgICBjb25zdCBmbG93ID0gY3R4LmluRmxvdyA/PyB2YWx1ZS5mbG93ID8/IHZhbHVlLml0ZW1zLmxlbmd0aCA9PT0gMDtcbiAgICAgICAgaWYgKGhhc05ld2xpbmUgfHwgIWZsb3cpIHtcbiAgICAgICAgICAgIGxldCBoYXNQcm9wc0xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmIChoYXNOZXdsaW5lICYmICh2czAgPT09ICcmJyB8fCB2czAgPT09ICchJykpIHtcbiAgICAgICAgICAgICAgICBsZXQgc3AwID0gdmFsdWVTdHIuaW5kZXhPZignICcpO1xuICAgICAgICAgICAgICAgIGlmICh2czAgPT09ICcmJyAmJlxuICAgICAgICAgICAgICAgICAgICBzcDAgIT09IC0xICYmXG4gICAgICAgICAgICAgICAgICAgIHNwMCA8IG5sMCAmJlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZVN0cltzcDAgKyAxXSA9PT0gJyEnKSB7XG4gICAgICAgICAgICAgICAgICAgIHNwMCA9IHZhbHVlU3RyLmluZGV4T2YoJyAnLCBzcDAgKyAxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHNwMCA9PT0gLTEgfHwgbmwwIDwgc3AwKVxuICAgICAgICAgICAgICAgICAgICBoYXNQcm9wc0xpbmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFoYXNQcm9wc0xpbmUpXG4gICAgICAgICAgICAgICAgd3MgPSBgXFxuJHtjdHguaW5kZW50fWA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAodmFsdWVTdHIgPT09ICcnIHx8IHZhbHVlU3RyWzBdID09PSAnXFxuJykge1xuICAgICAgICB3cyA9ICcnO1xuICAgIH1cbiAgICBzdHIgKz0gd3MgKyB2YWx1ZVN0cjtcbiAgICBpZiAoY3R4LmluRmxvdykge1xuICAgICAgICBpZiAodmFsdWVDb21tZW50RG9uZSAmJiBvbkNvbW1lbnQpXG4gICAgICAgICAgICBvbkNvbW1lbnQoKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodmFsdWVDb21tZW50ICYmICF2YWx1ZUNvbW1lbnREb25lKSB7XG4gICAgICAgIHN0ciArPSBzdHJpbmdpZnlDb21tZW50LmxpbmVDb21tZW50KHN0ciwgY3R4LmluZGVudCwgY29tbWVudFN0cmluZyh2YWx1ZUNvbW1lbnQpKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoY2hvbXBLZWVwICYmIG9uQ2hvbXBLZWVwKSB7XG4gICAgICAgIG9uQ2hvbXBLZWVwKCk7XG4gICAgfVxuICAgIHJldHVybiBzdHI7XG59XG5cbmV4cG9ydHMuc3RyaW5naWZ5UGFpciA9IHN0cmluZ2lmeVBhaXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbm9kZV9wcm9jZXNzID0gcmVxdWlyZSgncHJvY2VzcycpO1xuXG5mdW5jdGlvbiBkZWJ1Zyhsb2dMZXZlbCwgLi4ubWVzc2FnZXMpIHtcbiAgICBpZiAobG9nTGV2ZWwgPT09ICdkZWJ1ZycpXG4gICAgICAgIGNvbnNvbGUubG9nKC4uLm1lc3NhZ2VzKTtcbn1cbmZ1bmN0aW9uIHdhcm4obG9nTGV2ZWwsIHdhcm5pbmcpIHtcbiAgICBpZiAobG9nTGV2ZWwgPT09ICdkZWJ1ZycgfHwgbG9nTGV2ZWwgPT09ICd3YXJuJykge1xuICAgICAgICBpZiAodHlwZW9mIG5vZGVfcHJvY2Vzcy5lbWl0V2FybmluZyA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIG5vZGVfcHJvY2Vzcy5lbWl0V2FybmluZyh3YXJuaW5nKTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgY29uc29sZS53YXJuKHdhcm5pbmcpO1xuICAgIH1cbn1cblxuZXhwb3J0cy5kZWJ1ZyA9IGRlYnVnO1xuZXhwb3J0cy53YXJuID0gd2FybjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbi8vIElmIHRoZSB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYSBtZXJnZSBrZXkgaXMgYSBzaW5nbGUgbWFwcGluZyBub2RlLCBlYWNoIG9mXG4vLyBpdHMga2V5L3ZhbHVlIHBhaXJzIGlzIGluc2VydGVkIGludG8gdGhlIGN1cnJlbnQgbWFwcGluZywgdW5sZXNzIHRoZSBrZXlcbi8vIGFscmVhZHkgZXhpc3RzIGluIGl0LiBJZiB0aGUgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIHRoZSBtZXJnZSBrZXkgaXMgYVxuLy8gc2VxdWVuY2UsIHRoZW4gdGhpcyBzZXF1ZW5jZSBpcyBleHBlY3RlZCB0byBjb250YWluIG1hcHBpbmcgbm9kZXMgYW5kIGVhY2hcbi8vIG9mIHRoZXNlIG5vZGVzIGlzIG1lcmdlZCBpbiB0dXJuIGFjY29yZGluZyB0byBpdHMgb3JkZXIgaW4gdGhlIHNlcXVlbmNlLlxuLy8gS2V5cyBpbiBtYXBwaW5nIG5vZGVzIGVhcmxpZXIgaW4gdGhlIHNlcXVlbmNlIG92ZXJyaWRlIGtleXMgc3BlY2lmaWVkIGluXG4vLyBsYXRlciBtYXBwaW5nIG5vZGVzLiAtLSBodHRwOi8veWFtbC5vcmcvdHlwZS9tZXJnZS5odG1sXG5jb25zdCBNRVJHRV9LRVkgPSAnPDwnO1xuY29uc3QgbWVyZ2UgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHZhbHVlID09PSBNRVJHRV9LRVkgfHxcbiAgICAgICAgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N5bWJvbCcgJiYgdmFsdWUuZGVzY3JpcHRpb24gPT09IE1FUkdFX0tFWSksXG4gICAgZGVmYXVsdDogJ2tleScsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6bWVyZ2UnLFxuICAgIHRlc3Q6IC9ePDwkLyxcbiAgICByZXNvbHZlOiAoKSA9PiBPYmplY3QuYXNzaWduKG5ldyBTY2FsYXIuU2NhbGFyKFN5bWJvbChNRVJHRV9LRVkpKSwge1xuICAgICAgICBhZGRUb0pTTWFwOiBhZGRNZXJnZVRvSlNNYXBcbiAgICB9KSxcbiAgICBzdHJpbmdpZnk6ICgpID0+IE1FUkdFX0tFWVxufTtcbmNvbnN0IGlzTWVyZ2VLZXkgPSAoY3R4LCBrZXkpID0+IChtZXJnZS5pZGVudGlmeShrZXkpIHx8XG4gICAgKGlkZW50aXR5LmlzU2NhbGFyKGtleSkgJiZcbiAgICAgICAgKCFrZXkudHlwZSB8fCBrZXkudHlwZSA9PT0gU2NhbGFyLlNjYWxhci5QTEFJTikgJiZcbiAgICAgICAgbWVyZ2UuaWRlbnRpZnkoa2V5LnZhbHVlKSkpICYmXG4gICAgY3R4Py5kb2Muc2NoZW1hLnRhZ3Muc29tZSh0YWcgPT4gdGFnLnRhZyA9PT0gbWVyZ2UudGFnICYmIHRhZy5kZWZhdWx0KTtcbmZ1bmN0aW9uIGFkZE1lcmdlVG9KU01hcChjdHgsIG1hcCwgdmFsdWUpIHtcbiAgICB2YWx1ZSA9IGN0eCAmJiBpZGVudGl0eS5pc0FsaWFzKHZhbHVlKSA/IHZhbHVlLnJlc29sdmUoY3R4LmRvYykgOiB2YWx1ZTtcbiAgICBpZiAoaWRlbnRpdHkuaXNTZXEodmFsdWUpKVxuICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIHZhbHVlLml0ZW1zKVxuICAgICAgICAgICAgbWVyZ2VWYWx1ZShjdHgsIG1hcCwgaXQpO1xuICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKVxuICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIHZhbHVlKVxuICAgICAgICAgICAgbWVyZ2VWYWx1ZShjdHgsIG1hcCwgaXQpO1xuICAgIGVsc2VcbiAgICAgICAgbWVyZ2VWYWx1ZShjdHgsIG1hcCwgdmFsdWUpO1xufVxuZnVuY3Rpb24gbWVyZ2VWYWx1ZShjdHgsIG1hcCwgdmFsdWUpIHtcbiAgICBjb25zdCBzb3VyY2UgPSBjdHggJiYgaWRlbnRpdHkuaXNBbGlhcyh2YWx1ZSkgPyB2YWx1ZS5yZXNvbHZlKGN0eC5kb2MpIDogdmFsdWU7XG4gICAgaWYgKCFpZGVudGl0eS5pc01hcChzb3VyY2UpKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ01lcmdlIHNvdXJjZXMgbXVzdCBiZSBtYXBzIG9yIG1hcCBhbGlhc2VzJyk7XG4gICAgY29uc3Qgc3JjTWFwID0gc291cmNlLnRvSlNPTihudWxsLCBjdHgsIE1hcCk7XG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2Ygc3JjTWFwKSB7XG4gICAgICAgIGlmIChtYXAgaW5zdGFuY2VvZiBNYXApIHtcbiAgICAgICAgICAgIGlmICghbWFwLmhhcyhrZXkpKVxuICAgICAgICAgICAgICAgIG1hcC5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAobWFwIGluc3RhbmNlb2YgU2V0KSB7XG4gICAgICAgICAgICBtYXAuYWRkKGtleSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChtYXAsIGtleSkpIHtcbiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtYXAsIGtleSwge1xuICAgICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWFwO1xufVxuXG5leHBvcnRzLmFkZE1lcmdlVG9KU01hcCA9IGFkZE1lcmdlVG9KU01hcDtcbmV4cG9ydHMuaXNNZXJnZUtleSA9IGlzTWVyZ2VLZXk7XG5leHBvcnRzLm1lcmdlID0gbWVyZ2U7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbG9nID0gcmVxdWlyZSgnLi4vbG9nLmpzJyk7XG52YXIgbWVyZ2UgPSByZXF1aXJlKCcuLi9zY2hlbWEveWFtbC0xLjEvbWVyZ2UuanMnKTtcbnZhciBzdHJpbmdpZnkgPSByZXF1aXJlKCcuLi9zdHJpbmdpZnkvc3RyaW5naWZ5LmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL2lkZW50aXR5LmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4vdG9KUy5qcycpO1xuXG5mdW5jdGlvbiBhZGRQYWlyVG9KU01hcChjdHgsIG1hcCwgeyBrZXksIHZhbHVlIH0pIHtcbiAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGtleSkgJiYga2V5LmFkZFRvSlNNYXApXG4gICAgICAgIGtleS5hZGRUb0pTTWFwKGN0eCwgbWFwLCB2YWx1ZSk7XG4gICAgLy8gVE9ETzogU2hvdWxkIGRyb3AgdGhpcyBzcGVjaWFsIGNhc2UgZm9yIGJhcmUgPDwgaGFuZGxpbmdcbiAgICBlbHNlIGlmIChtZXJnZS5pc01lcmdlS2V5KGN0eCwga2V5KSlcbiAgICAgICAgbWVyZ2UuYWRkTWVyZ2VUb0pTTWFwKGN0eCwgbWFwLCB2YWx1ZSk7XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IGpzS2V5ID0gdG9KUy50b0pTKGtleSwgJycsIGN0eCk7XG4gICAgICAgIGlmIChtYXAgaW5zdGFuY2VvZiBNYXApIHtcbiAgICAgICAgICAgIG1hcC5zZXQoanNLZXksIHRvSlMudG9KUyh2YWx1ZSwganNLZXksIGN0eCkpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKG1hcCBpbnN0YW5jZW9mIFNldCkge1xuICAgICAgICAgICAgbWFwLmFkZChqc0tleSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBzdHJpbmdLZXkgPSBzdHJpbmdpZnlLZXkoa2V5LCBqc0tleSwgY3R4KTtcbiAgICAgICAgICAgIGNvbnN0IGpzVmFsdWUgPSB0b0pTLnRvSlModmFsdWUsIHN0cmluZ0tleSwgY3R4KTtcbiAgICAgICAgICAgIGlmIChzdHJpbmdLZXkgaW4gbWFwKVxuICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtYXAsIHN0cmluZ0tleSwge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZToganNWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIG1hcFtzdHJpbmdLZXldID0ganNWYWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWFwO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5S2V5KGtleSwganNLZXksIGN0eCkge1xuICAgIGlmIChqc0tleSA9PT0gbnVsbClcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tYmFzZS10by1zdHJpbmdcbiAgICBpZiAodHlwZW9mIGpzS2V5ICE9PSAnb2JqZWN0JylcbiAgICAgICAgcmV0dXJuIFN0cmluZyhqc0tleSk7XG4gICAgaWYgKGlkZW50aXR5LmlzTm9kZShrZXkpICYmIGN0eD8uZG9jKSB7XG4gICAgICAgIGNvbnN0IHN0ckN0eCA9IHN0cmluZ2lmeS5jcmVhdGVTdHJpbmdpZnlDb250ZXh0KGN0eC5kb2MsIHt9KTtcbiAgICAgICAgc3RyQ3R4LmFuY2hvcnMgPSBuZXcgU2V0KCk7XG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBjdHguYW5jaG9ycy5rZXlzKCkpXG4gICAgICAgICAgICBzdHJDdHguYW5jaG9ycy5hZGQobm9kZS5hbmNob3IpO1xuICAgICAgICBzdHJDdHguaW5GbG93ID0gdHJ1ZTtcbiAgICAgICAgc3RyQ3R4LmluU3RyaW5naWZ5S2V5ID0gdHJ1ZTtcbiAgICAgICAgY29uc3Qgc3RyS2V5ID0ga2V5LnRvU3RyaW5nKHN0ckN0eCk7XG4gICAgICAgIGlmICghY3R4Lm1hcEtleVdhcm5lZCkge1xuICAgICAgICAgICAgbGV0IGpzb25TdHIgPSBKU09OLnN0cmluZ2lmeShzdHJLZXkpO1xuICAgICAgICAgICAgaWYgKGpzb25TdHIubGVuZ3RoID4gNDApXG4gICAgICAgICAgICAgICAganNvblN0ciA9IGpzb25TdHIuc3Vic3RyaW5nKDAsIDM2KSArICcuLi5cIic7XG4gICAgICAgICAgICBsb2cud2FybihjdHguZG9jLm9wdGlvbnMubG9nTGV2ZWwsIGBLZXlzIHdpdGggY29sbGVjdGlvbiB2YWx1ZXMgd2lsbCBiZSBzdHJpbmdpZmllZCBkdWUgdG8gSlMgT2JqZWN0IHJlc3RyaWN0aW9uczogJHtqc29uU3RyfS4gU2V0IG1hcEFzTWFwOiB0cnVlIHRvIHVzZSBvYmplY3Qga2V5cy5gKTtcbiAgICAgICAgICAgIGN0eC5tYXBLZXlXYXJuZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzdHJLZXk7XG4gICAgfVxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShqc0tleSk7XG59XG5cbmV4cG9ydHMuYWRkUGFpclRvSlNNYXAgPSBhZGRQYWlyVG9KU01hcDtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBjcmVhdGVOb2RlID0gcmVxdWlyZSgnLi4vZG9jL2NyZWF0ZU5vZGUuanMnKTtcbnZhciBzdHJpbmdpZnlQYWlyID0gcmVxdWlyZSgnLi4vc3RyaW5naWZ5L3N0cmluZ2lmeVBhaXIuanMnKTtcbnZhciBhZGRQYWlyVG9KU01hcCA9IHJlcXVpcmUoJy4vYWRkUGFpclRvSlNNYXAuanMnKTtcbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vaWRlbnRpdHkuanMnKTtcblxuZnVuY3Rpb24gY3JlYXRlUGFpcihrZXksIHZhbHVlLCBjdHgpIHtcbiAgICBjb25zdCBrID0gY3JlYXRlTm9kZS5jcmVhdGVOb2RlKGtleSwgdW5kZWZpbmVkLCBjdHgpO1xuICAgIGNvbnN0IHYgPSBjcmVhdGVOb2RlLmNyZWF0ZU5vZGUodmFsdWUsIHVuZGVmaW5lZCwgY3R4KTtcbiAgICByZXR1cm4gbmV3IFBhaXIoaywgdik7XG59XG5jbGFzcyBQYWlyIHtcbiAgICBjb25zdHJ1Y3RvcihrZXksIHZhbHVlID0gbnVsbCkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgaWRlbnRpdHkuTk9ERV9UWVBFLCB7IHZhbHVlOiBpZGVudGl0eS5QQUlSIH0pO1xuICAgICAgICB0aGlzLmtleSA9IGtleTtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIH1cbiAgICBjbG9uZShzY2hlbWEpIHtcbiAgICAgICAgbGV0IHsga2V5LCB2YWx1ZSB9ID0gdGhpcztcbiAgICAgICAgaWYgKGlkZW50aXR5LmlzTm9kZShrZXkpKVxuICAgICAgICAgICAga2V5ID0ga2V5LmNsb25lKHNjaGVtYSk7XG4gICAgICAgIGlmIChpZGVudGl0eS5pc05vZGUodmFsdWUpKVxuICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5jbG9uZShzY2hlbWEpO1xuICAgICAgICByZXR1cm4gbmV3IFBhaXIoa2V5LCB2YWx1ZSk7XG4gICAgfVxuICAgIHRvSlNPTihfLCBjdHgpIHtcbiAgICAgICAgY29uc3QgcGFpciA9IGN0eD8ubWFwQXNNYXAgPyBuZXcgTWFwKCkgOiB7fTtcbiAgICAgICAgcmV0dXJuIGFkZFBhaXJUb0pTTWFwLmFkZFBhaXJUb0pTTWFwKGN0eCwgcGFpciwgdGhpcyk7XG4gICAgfVxuICAgIHRvU3RyaW5nKGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICByZXR1cm4gY3R4Py5kb2NcbiAgICAgICAgICAgID8gc3RyaW5naWZ5UGFpci5zdHJpbmdpZnlQYWlyKHRoaXMsIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcClcbiAgICAgICAgICAgIDogSlNPTi5zdHJpbmdpZnkodGhpcyk7XG4gICAgfVxufVxuXG5leHBvcnRzLlBhaXIgPSBQYWlyO1xuZXhwb3J0cy5jcmVhdGVQYWlyID0gY3JlYXRlUGFpcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgc3RyaW5naWZ5ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnkuanMnKTtcbnZhciBzdHJpbmdpZnlDb21tZW50ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnlDb21tZW50LmpzJyk7XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeUNvbGxlY3Rpb24oY29sbGVjdGlvbiwgY3R4LCBvcHRpb25zKSB7XG4gICAgY29uc3QgZmxvdyA9IGN0eC5pbkZsb3cgPz8gY29sbGVjdGlvbi5mbG93O1xuICAgIGNvbnN0IHN0cmluZ2lmeSA9IGZsb3cgPyBzdHJpbmdpZnlGbG93Q29sbGVjdGlvbiA6IHN0cmluZ2lmeUJsb2NrQ29sbGVjdGlvbjtcbiAgICByZXR1cm4gc3RyaW5naWZ5KGNvbGxlY3Rpb24sIGN0eCwgb3B0aW9ucyk7XG59XG5mdW5jdGlvbiBzdHJpbmdpZnlCbG9ja0NvbGxlY3Rpb24oeyBjb21tZW50LCBpdGVtcyB9LCBjdHgsIHsgYmxvY2tJdGVtUHJlZml4LCBmbG93Q2hhcnMsIGl0ZW1JbmRlbnQsIG9uQ2hvbXBLZWVwLCBvbkNvbW1lbnQgfSkge1xuICAgIGNvbnN0IHsgaW5kZW50LCBvcHRpb25zOiB7IGNvbW1lbnRTdHJpbmcgfSB9ID0gY3R4O1xuICAgIGNvbnN0IGl0ZW1DdHggPSBPYmplY3QuYXNzaWduKHt9LCBjdHgsIHsgaW5kZW50OiBpdGVtSW5kZW50LCB0eXBlOiBudWxsIH0pO1xuICAgIGxldCBjaG9tcEtlZXAgPSBmYWxzZTsgLy8gZmxhZyBmb3IgdGhlIHByZWNlZGluZyBub2RlJ3Mgc3RhdHVzXG4gICAgY29uc3QgbGluZXMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBpdGVtc1tpXTtcbiAgICAgICAgbGV0IGNvbW1lbnQgPSBudWxsO1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGl0ZW0pKSB7XG4gICAgICAgICAgICBpZiAoIWNob21wS2VlcCAmJiBpdGVtLnNwYWNlQmVmb3JlKVxuICAgICAgICAgICAgICAgIGxpbmVzLnB1c2goJycpO1xuICAgICAgICAgICAgYWRkQ29tbWVudEJlZm9yZShjdHgsIGxpbmVzLCBpdGVtLmNvbW1lbnRCZWZvcmUsIGNob21wS2VlcCk7XG4gICAgICAgICAgICBpZiAoaXRlbS5jb21tZW50KVxuICAgICAgICAgICAgICAgIGNvbW1lbnQgPSBpdGVtLmNvbW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKSB7XG4gICAgICAgICAgICBjb25zdCBpayA9IGlkZW50aXR5LmlzTm9kZShpdGVtLmtleSkgPyBpdGVtLmtleSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoaWspIHtcbiAgICAgICAgICAgICAgICBpZiAoIWNob21wS2VlcCAmJiBpay5zcGFjZUJlZm9yZSlcbiAgICAgICAgICAgICAgICAgICAgbGluZXMucHVzaCgnJyk7XG4gICAgICAgICAgICAgICAgYWRkQ29tbWVudEJlZm9yZShjdHgsIGxpbmVzLCBpay5jb21tZW50QmVmb3JlLCBjaG9tcEtlZXApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNob21wS2VlcCA9IGZhbHNlO1xuICAgICAgICBsZXQgc3RyID0gc3RyaW5naWZ5LnN0cmluZ2lmeShpdGVtLCBpdGVtQ3R4LCAoKSA9PiAoY29tbWVudCA9IG51bGwpLCAoKSA9PiAoY2hvbXBLZWVwID0gdHJ1ZSkpO1xuICAgICAgICBpZiAoY29tbWVudClcbiAgICAgICAgICAgIHN0ciArPSBzdHJpbmdpZnlDb21tZW50LmxpbmVDb21tZW50KHN0ciwgaXRlbUluZGVudCwgY29tbWVudFN0cmluZyhjb21tZW50KSk7XG4gICAgICAgIGlmIChjaG9tcEtlZXAgJiYgY29tbWVudClcbiAgICAgICAgICAgIGNob21wS2VlcCA9IGZhbHNlO1xuICAgICAgICBsaW5lcy5wdXNoKGJsb2NrSXRlbVByZWZpeCArIHN0cik7XG4gICAgfVxuICAgIGxldCBzdHI7XG4gICAgaWYgKGxpbmVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBzdHIgPSBmbG93Q2hhcnMuc3RhcnQgKyBmbG93Q2hhcnMuZW5kO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgc3RyID0gbGluZXNbMF07XG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgbGluZXMubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgICAgIGNvbnN0IGxpbmUgPSBsaW5lc1tpXTtcbiAgICAgICAgICAgIHN0ciArPSBsaW5lID8gYFxcbiR7aW5kZW50fSR7bGluZX1gIDogJ1xcbic7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNvbW1lbnQpIHtcbiAgICAgICAgc3RyICs9ICdcXG4nICsgc3RyaW5naWZ5Q29tbWVudC5pbmRlbnRDb21tZW50KGNvbW1lbnRTdHJpbmcoY29tbWVudCksIGluZGVudCk7XG4gICAgICAgIGlmIChvbkNvbW1lbnQpXG4gICAgICAgICAgICBvbkNvbW1lbnQoKTtcbiAgICB9XG4gICAgZWxzZSBpZiAoY2hvbXBLZWVwICYmIG9uQ2hvbXBLZWVwKVxuICAgICAgICBvbkNob21wS2VlcCgpO1xuICAgIHJldHVybiBzdHI7XG59XG5mdW5jdGlvbiBzdHJpbmdpZnlGbG93Q29sbGVjdGlvbih7IGl0ZW1zIH0sIGN0eCwgeyBmbG93Q2hhcnMsIGl0ZW1JbmRlbnQgfSkge1xuICAgIGNvbnN0IHsgaW5kZW50LCBpbmRlbnRTdGVwLCBmbG93Q29sbGVjdGlvblBhZGRpbmc6IGZjUGFkZGluZywgb3B0aW9uczogeyBjb21tZW50U3RyaW5nIH0gfSA9IGN0eDtcbiAgICBpdGVtSW5kZW50ICs9IGluZGVudFN0ZXA7XG4gICAgY29uc3QgaXRlbUN0eCA9IE9iamVjdC5hc3NpZ24oe30sIGN0eCwge1xuICAgICAgICBpbmRlbnQ6IGl0ZW1JbmRlbnQsXG4gICAgICAgIGluRmxvdzogdHJ1ZSxcbiAgICAgICAgdHlwZTogbnVsbFxuICAgIH0pO1xuICAgIGxldCByZXFOZXdsaW5lID0gZmFsc2U7XG4gICAgbGV0IGxpbmVzQXRWYWx1ZSA9IDA7XG4gICAgY29uc3QgbGluZXMgPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBpdGVtc1tpXTtcbiAgICAgICAgbGV0IGNvbW1lbnQgPSBudWxsO1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGl0ZW0pKSB7XG4gICAgICAgICAgICBpZiAoaXRlbS5zcGFjZUJlZm9yZSlcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcnKTtcbiAgICAgICAgICAgIGFkZENvbW1lbnRCZWZvcmUoY3R4LCBsaW5lcywgaXRlbS5jb21tZW50QmVmb3JlLCBmYWxzZSk7XG4gICAgICAgICAgICBpZiAoaXRlbS5jb21tZW50KVxuICAgICAgICAgICAgICAgIGNvbW1lbnQgPSBpdGVtLmNvbW1lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKSB7XG4gICAgICAgICAgICBjb25zdCBpayA9IGlkZW50aXR5LmlzTm9kZShpdGVtLmtleSkgPyBpdGVtLmtleSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoaWspIHtcbiAgICAgICAgICAgICAgICBpZiAoaWsuc3BhY2VCZWZvcmUpXG4gICAgICAgICAgICAgICAgICAgIGxpbmVzLnB1c2goJycpO1xuICAgICAgICAgICAgICAgIGFkZENvbW1lbnRCZWZvcmUoY3R4LCBsaW5lcywgaWsuY29tbWVudEJlZm9yZSwgZmFsc2UpO1xuICAgICAgICAgICAgICAgIGlmIChpay5jb21tZW50KVxuICAgICAgICAgICAgICAgICAgICByZXFOZXdsaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGl2ID0gaWRlbnRpdHkuaXNOb2RlKGl0ZW0udmFsdWUpID8gaXRlbS52YWx1ZSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoaXYpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXYuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgY29tbWVudCA9IGl2LmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgaWYgKGl2LmNvbW1lbnRCZWZvcmUpXG4gICAgICAgICAgICAgICAgICAgIHJlcU5ld2xpbmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaXRlbS52YWx1ZSA9PSBudWxsICYmIGlrPy5jb21tZW50KSB7XG4gICAgICAgICAgICAgICAgY29tbWVudCA9IGlrLmNvbW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbW1lbnQpXG4gICAgICAgICAgICByZXFOZXdsaW5lID0gdHJ1ZTtcbiAgICAgICAgbGV0IHN0ciA9IHN0cmluZ2lmeS5zdHJpbmdpZnkoaXRlbSwgaXRlbUN0eCwgKCkgPT4gKGNvbW1lbnQgPSBudWxsKSk7XG4gICAgICAgIGlmIChpIDwgaXRlbXMubGVuZ3RoIC0gMSlcbiAgICAgICAgICAgIHN0ciArPSAnLCc7XG4gICAgICAgIGlmIChjb21tZW50KVxuICAgICAgICAgICAgc3RyICs9IHN0cmluZ2lmeUNvbW1lbnQubGluZUNvbW1lbnQoc3RyLCBpdGVtSW5kZW50LCBjb21tZW50U3RyaW5nKGNvbW1lbnQpKTtcbiAgICAgICAgaWYgKCFyZXFOZXdsaW5lICYmIChsaW5lcy5sZW5ndGggPiBsaW5lc0F0VmFsdWUgfHwgc3RyLmluY2x1ZGVzKCdcXG4nKSkpXG4gICAgICAgICAgICByZXFOZXdsaW5lID0gdHJ1ZTtcbiAgICAgICAgbGluZXMucHVzaChzdHIpO1xuICAgICAgICBsaW5lc0F0VmFsdWUgPSBsaW5lcy5sZW5ndGg7XG4gICAgfVxuICAgIGNvbnN0IHsgc3RhcnQsIGVuZCB9ID0gZmxvd0NoYXJzO1xuICAgIGlmIChsaW5lcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIHN0YXJ0ICsgZW5kO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgaWYgKCFyZXFOZXdsaW5lKSB7XG4gICAgICAgICAgICBjb25zdCBsZW4gPSBsaW5lcy5yZWR1Y2UoKHN1bSwgbGluZSkgPT4gc3VtICsgbGluZS5sZW5ndGggKyAyLCAyKTtcbiAgICAgICAgICAgIHJlcU5ld2xpbmUgPSBjdHgub3B0aW9ucy5saW5lV2lkdGggPiAwICYmIGxlbiA+IGN0eC5vcHRpb25zLmxpbmVXaWR0aDtcbiAgICAgICAgfVxuICAgICAgICBpZiAocmVxTmV3bGluZSkge1xuICAgICAgICAgICAgbGV0IHN0ciA9IHN0YXJ0O1xuICAgICAgICAgICAgZm9yIChjb25zdCBsaW5lIG9mIGxpbmVzKVxuICAgICAgICAgICAgICAgIHN0ciArPSBsaW5lID8gYFxcbiR7aW5kZW50U3RlcH0ke2luZGVudH0ke2xpbmV9YCA6ICdcXG4nO1xuICAgICAgICAgICAgcmV0dXJuIGAke3N0cn1cXG4ke2luZGVudH0ke2VuZH1gO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGAke3N0YXJ0fSR7ZmNQYWRkaW5nfSR7bGluZXMuam9pbignICcpfSR7ZmNQYWRkaW5nfSR7ZW5kfWA7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiBhZGRDb21tZW50QmVmb3JlKHsgaW5kZW50LCBvcHRpb25zOiB7IGNvbW1lbnRTdHJpbmcgfSB9LCBsaW5lcywgY29tbWVudCwgY2hvbXBLZWVwKSB7XG4gICAgaWYgKGNvbW1lbnQgJiYgY2hvbXBLZWVwKVxuICAgICAgICBjb21tZW50ID0gY29tbWVudC5yZXBsYWNlKC9eXFxuKy8sICcnKTtcbiAgICBpZiAoY29tbWVudCkge1xuICAgICAgICBjb25zdCBpYyA9IHN0cmluZ2lmeUNvbW1lbnQuaW5kZW50Q29tbWVudChjb21tZW50U3RyaW5nKGNvbW1lbnQpLCBpbmRlbnQpO1xuICAgICAgICBsaW5lcy5wdXNoKGljLnRyaW1TdGFydCgpKTsgLy8gQXZvaWQgZG91YmxlIGluZGVudCBvbiBmaXJzdCBsaW5lXG4gICAgfVxufVxuXG5leHBvcnRzLnN0cmluZ2lmeUNvbGxlY3Rpb24gPSBzdHJpbmdpZnlDb2xsZWN0aW9uO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHN0cmluZ2lmeUNvbGxlY3Rpb24gPSByZXF1aXJlKCcuLi9zdHJpbmdpZnkvc3RyaW5naWZ5Q29sbGVjdGlvbi5qcycpO1xudmFyIGFkZFBhaXJUb0pTTWFwID0gcmVxdWlyZSgnLi9hZGRQYWlyVG9KU01hcC5qcycpO1xudmFyIENvbGxlY3Rpb24gPSByZXF1aXJlKCcuL0NvbGxlY3Rpb24uanMnKTtcbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4vaWRlbnRpdHkuanMnKTtcbnZhciBQYWlyID0gcmVxdWlyZSgnLi9QYWlyLmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi9TY2FsYXIuanMnKTtcblxuZnVuY3Rpb24gZmluZFBhaXIoaXRlbXMsIGtleSkge1xuICAgIGNvbnN0IGsgPSBpZGVudGl0eS5pc1NjYWxhcihrZXkpID8ga2V5LnZhbHVlIDoga2V5O1xuICAgIGZvciAoY29uc3QgaXQgb2YgaXRlbXMpIHtcbiAgICAgICAgaWYgKGlkZW50aXR5LmlzUGFpcihpdCkpIHtcbiAgICAgICAgICAgIGlmIChpdC5rZXkgPT09IGtleSB8fCBpdC5rZXkgPT09IGspXG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0O1xuICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzU2NhbGFyKGl0LmtleSkgJiYgaXQua2V5LnZhbHVlID09PSBrKVxuICAgICAgICAgICAgICAgIHJldHVybiBpdDtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xufVxuY2xhc3MgWUFNTE1hcCBleHRlbmRzIENvbGxlY3Rpb24uQ29sbGVjdGlvbiB7XG4gICAgc3RhdGljIGdldCB0YWdOYW1lKCkge1xuICAgICAgICByZXR1cm4gJ3RhZzp5YW1sLm9yZywyMDAyOm1hcCc7XG4gICAgfVxuICAgIGNvbnN0cnVjdG9yKHNjaGVtYSkge1xuICAgICAgICBzdXBlcihpZGVudGl0eS5NQVAsIHNjaGVtYSk7XG4gICAgICAgIHRoaXMuaXRlbXMgPSBbXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQSBnZW5lcmljIGNvbGxlY3Rpb24gcGFyc2luZyBtZXRob2QgdGhhdCBjYW4gYmUgZXh0ZW5kZWRcbiAgICAgKiB0byBvdGhlciBub2RlIGNsYXNzZXMgdGhhdCBpbmhlcml0IGZyb20gWUFNTE1hcFxuICAgICAqL1xuICAgIHN0YXRpYyBmcm9tKHNjaGVtYSwgb2JqLCBjdHgpIHtcbiAgICAgICAgY29uc3QgeyBrZWVwVW5kZWZpbmVkLCByZXBsYWNlciB9ID0gY3R4O1xuICAgICAgICBjb25zdCBtYXAgPSBuZXcgdGhpcyhzY2hlbWEpO1xuICAgICAgICBjb25zdCBhZGQgPSAoa2V5LCB2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHJlcGxhY2VyLmNhbGwob2JqLCBrZXksIHZhbHVlKTtcbiAgICAgICAgICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocmVwbGFjZXIpICYmICFyZXBsYWNlci5pbmNsdWRlcyhrZXkpKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkIHx8IGtlZXBVbmRlZmluZWQpXG4gICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goUGFpci5jcmVhdGVQYWlyKGtleSwgdmFsdWUsIGN0eCkpO1xuICAgICAgICB9O1xuICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgTWFwKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBvYmopXG4gICAgICAgICAgICAgICAgYWRkKGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKG9iaiAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMob2JqKSlcbiAgICAgICAgICAgICAgICBhZGQoa2V5LCBvYmpba2V5XSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiBzY2hlbWEuc29ydE1hcEVudHJpZXMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIG1hcC5pdGVtcy5zb3J0KHNjaGVtYS5zb3J0TWFwRW50cmllcyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG1hcDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQWRkcyBhIHZhbHVlIHRvIHRoZSBjb2xsZWN0aW9uLlxuICAgICAqXG4gICAgICogQHBhcmFtIG92ZXJ3cml0ZSAtIElmIG5vdCBzZXQgYHRydWVgLCB1c2luZyBhIGtleSB0aGF0IGlzIGFscmVhZHkgaW4gdGhlXG4gICAgICogICBjb2xsZWN0aW9uIHdpbGwgdGhyb3cuIE90aGVyd2lzZSwgb3ZlcndyaXRlcyB0aGUgcHJldmlvdXMgdmFsdWUuXG4gICAgICovXG4gICAgYWRkKHBhaXIsIG92ZXJ3cml0ZSkge1xuICAgICAgICBsZXQgX3BhaXI7XG4gICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIocGFpcikpXG4gICAgICAgICAgICBfcGFpciA9IHBhaXI7XG4gICAgICAgIGVsc2UgaWYgKCFwYWlyIHx8IHR5cGVvZiBwYWlyICE9PSAnb2JqZWN0JyB8fCAhKCdrZXknIGluIHBhaXIpKSB7XG4gICAgICAgICAgICAvLyBJbiBUeXBlU2NyaXB0LCB0aGlzIG5ldmVyIGhhcHBlbnMuXG4gICAgICAgICAgICBfcGFpciA9IG5ldyBQYWlyLlBhaXIocGFpciwgcGFpcj8udmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIF9wYWlyID0gbmV3IFBhaXIuUGFpcihwYWlyLmtleSwgcGFpci52YWx1ZSk7XG4gICAgICAgIGNvbnN0IHByZXYgPSBmaW5kUGFpcih0aGlzLml0ZW1zLCBfcGFpci5rZXkpO1xuICAgICAgICBjb25zdCBzb3J0RW50cmllcyA9IHRoaXMuc2NoZW1hPy5zb3J0TWFwRW50cmllcztcbiAgICAgICAgaWYgKHByZXYpIHtcbiAgICAgICAgICAgIGlmICghb3ZlcndyaXRlKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgS2V5ICR7X3BhaXIua2V5fSBhbHJlYWR5IHNldGApO1xuICAgICAgICAgICAgLy8gRm9yIHNjYWxhcnMsIGtlZXAgdGhlIG9sZCBub2RlICYgaXRzIGNvbW1lbnRzIGFuZCBhbmNob3JzXG4gICAgICAgICAgICBpZiAoaWRlbnRpdHkuaXNTY2FsYXIocHJldi52YWx1ZSkgJiYgU2NhbGFyLmlzU2NhbGFyVmFsdWUoX3BhaXIudmFsdWUpKVxuICAgICAgICAgICAgICAgIHByZXYudmFsdWUudmFsdWUgPSBfcGFpci52YWx1ZTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBwcmV2LnZhbHVlID0gX3BhaXIudmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoc29ydEVudHJpZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGkgPSB0aGlzLml0ZW1zLmZpbmRJbmRleChpdGVtID0+IHNvcnRFbnRyaWVzKF9wYWlyLCBpdGVtKSA8IDApO1xuICAgICAgICAgICAgaWYgKGkgPT09IC0xKVxuICAgICAgICAgICAgICAgIHRoaXMuaXRlbXMucHVzaChfcGFpcik7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtcy5zcGxpY2UoaSwgMCwgX3BhaXIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pdGVtcy5wdXNoKF9wYWlyKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBkZWxldGUoa2V5KSB7XG4gICAgICAgIGNvbnN0IGl0ID0gZmluZFBhaXIodGhpcy5pdGVtcywga2V5KTtcbiAgICAgICAgaWYgKCFpdClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgZGVsID0gdGhpcy5pdGVtcy5zcGxpY2UodGhpcy5pdGVtcy5pbmRleE9mKGl0KSwgMSk7XG4gICAgICAgIHJldHVybiBkZWwubGVuZ3RoID4gMDtcbiAgICB9XG4gICAgZ2V0KGtleSwga2VlcFNjYWxhcikge1xuICAgICAgICBjb25zdCBpdCA9IGZpbmRQYWlyKHRoaXMuaXRlbXMsIGtleSk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSBpdD8udmFsdWU7XG4gICAgICAgIHJldHVybiAoIWtlZXBTY2FsYXIgJiYgaWRlbnRpdHkuaXNTY2FsYXIobm9kZSkgPyBub2RlLnZhbHVlIDogbm9kZSkgPz8gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBoYXMoa2V5KSB7XG4gICAgICAgIHJldHVybiAhIWZpbmRQYWlyKHRoaXMuaXRlbXMsIGtleSk7XG4gICAgfVxuICAgIHNldChrZXksIHZhbHVlKSB7XG4gICAgICAgIHRoaXMuYWRkKG5ldyBQYWlyLlBhaXIoa2V5LCB2YWx1ZSksIHRydWUpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gY3R4IC0gQ29udmVyc2lvbiBjb250ZXh0LCBvcmlnaW5hbGx5IHNldCBpbiBEb2N1bWVudCN0b0pTKClcbiAgICAgKiBAcGFyYW0ge0NsYXNzfSBUeXBlIC0gSWYgc2V0LCBmb3JjZXMgdGhlIHJldHVybmVkIGNvbGxlY3Rpb24gdHlwZVxuICAgICAqIEByZXR1cm5zIEluc3RhbmNlIG9mIFR5cGUsIE1hcCwgb3IgT2JqZWN0XG4gICAgICovXG4gICAgdG9KU09OKF8sIGN0eCwgVHlwZSkge1xuICAgICAgICBjb25zdCBtYXAgPSBUeXBlID8gbmV3IFR5cGUoKSA6IGN0eD8ubWFwQXNNYXAgPyBuZXcgTWFwKCkgOiB7fTtcbiAgICAgICAgaWYgKGN0eD8ub25DcmVhdGUpXG4gICAgICAgICAgICBjdHgub25DcmVhdGUobWFwKTtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHRoaXMuaXRlbXMpXG4gICAgICAgICAgICBhZGRQYWlyVG9KU01hcC5hZGRQYWlyVG9KU01hcChjdHgsIG1hcCwgaXRlbSk7XG4gICAgICAgIHJldHVybiBtYXA7XG4gICAgfVxuICAgIHRvU3RyaW5nKGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICBpZiAoIWN0eClcbiAgICAgICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzKTtcbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHRoaXMuaXRlbXMpIHtcbiAgICAgICAgICAgIGlmICghaWRlbnRpdHkuaXNQYWlyKGl0ZW0pKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTWFwIGl0ZW1zIG11c3QgYWxsIGJlIHBhaXJzOyBmb3VuZCAke0pTT04uc3RyaW5naWZ5KGl0ZW0pfSBpbnN0ZWFkYCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFjdHguYWxsTnVsbFZhbHVlcyAmJiB0aGlzLmhhc0FsbE51bGxWYWx1ZXMoZmFsc2UpKVxuICAgICAgICAgICAgY3R4ID0gT2JqZWN0LmFzc2lnbih7fSwgY3R4LCB7IGFsbE51bGxWYWx1ZXM6IHRydWUgfSk7XG4gICAgICAgIHJldHVybiBzdHJpbmdpZnlDb2xsZWN0aW9uLnN0cmluZ2lmeUNvbGxlY3Rpb24odGhpcywgY3R4LCB7XG4gICAgICAgICAgICBibG9ja0l0ZW1QcmVmaXg6ICcnLFxuICAgICAgICAgICAgZmxvd0NoYXJzOiB7IHN0YXJ0OiAneycsIGVuZDogJ30nIH0sXG4gICAgICAgICAgICBpdGVtSW5kZW50OiBjdHguaW5kZW50IHx8ICcnLFxuICAgICAgICAgICAgb25DaG9tcEtlZXAsXG4gICAgICAgICAgICBvbkNvbW1lbnRcbiAgICAgICAgfSk7XG4gICAgfVxufVxuXG5leHBvcnRzLllBTUxNYXAgPSBZQU1MTWFwO1xuZXhwb3J0cy5maW5kUGFpciA9IGZpbmRQYWlyO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBZQU1MTWFwID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvWUFNTE1hcC5qcycpO1xuXG5jb25zdCBtYXAgPSB7XG4gICAgY29sbGVjdGlvbjogJ21hcCcsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICBub2RlQ2xhc3M6IFlBTUxNYXAuWUFNTE1hcCxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjptYXAnLFxuICAgIHJlc29sdmUobWFwLCBvbkVycm9yKSB7XG4gICAgICAgIGlmICghaWRlbnRpdHkuaXNNYXAobWFwKSlcbiAgICAgICAgICAgIG9uRXJyb3IoJ0V4cGVjdGVkIGEgbWFwcGluZyBmb3IgdGhpcyB0YWcnKTtcbiAgICAgICAgcmV0dXJuIG1hcDtcbiAgICB9LFxuICAgIGNyZWF0ZU5vZGU6IChzY2hlbWEsIG9iaiwgY3R4KSA9PiBZQU1MTWFwLllBTUxNYXAuZnJvbShzY2hlbWEsIG9iaiwgY3R4KVxufTtcblxuZXhwb3J0cy5tYXAgPSBtYXA7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgY3JlYXRlTm9kZSA9IHJlcXVpcmUoJy4uL2RvYy9jcmVhdGVOb2RlLmpzJyk7XG52YXIgc3RyaW5naWZ5Q29sbGVjdGlvbiA9IHJlcXVpcmUoJy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlDb2xsZWN0aW9uLmpzJyk7XG52YXIgQ29sbGVjdGlvbiA9IHJlcXVpcmUoJy4vQ29sbGVjdGlvbi5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi9pZGVudGl0eS5qcycpO1xudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4vU2NhbGFyLmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4vdG9KUy5qcycpO1xuXG5jbGFzcyBZQU1MU2VxIGV4dGVuZHMgQ29sbGVjdGlvbi5Db2xsZWN0aW9uIHtcbiAgICBzdGF0aWMgZ2V0IHRhZ05hbWUoKSB7XG4gICAgICAgIHJldHVybiAndGFnOnlhbWwub3JnLDIwMDI6c2VxJztcbiAgICB9XG4gICAgY29uc3RydWN0b3Ioc2NoZW1hKSB7XG4gICAgICAgIHN1cGVyKGlkZW50aXR5LlNFUSwgc2NoZW1hKTtcbiAgICAgICAgdGhpcy5pdGVtcyA9IFtdO1xuICAgIH1cbiAgICBhZGQodmFsdWUpIHtcbiAgICAgICAgdGhpcy5pdGVtcy5wdXNoKHZhbHVlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGNvbGxlY3Rpb24uXG4gICAgICpcbiAgICAgKiBga2V5YCBtdXN0IGNvbnRhaW4gYSByZXByZXNlbnRhdGlvbiBvZiBhbiBpbnRlZ2VyIGZvciB0aGlzIHRvIHN1Y2NlZWQuXG4gICAgICogSXQgbWF5IGJlIHdyYXBwZWQgaW4gYSBgU2NhbGFyYC5cbiAgICAgKlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgaXRlbSB3YXMgZm91bmQgYW5kIHJlbW92ZWQuXG4gICAgICovXG4gICAgZGVsZXRlKGtleSkge1xuICAgICAgICBjb25zdCBpZHggPSBhc0l0ZW1JbmRleChrZXkpO1xuICAgICAgICBpZiAodHlwZW9mIGlkeCAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IGRlbCA9IHRoaXMuaXRlbXMuc3BsaWNlKGlkeCwgMSk7XG4gICAgICAgIHJldHVybiBkZWwubGVuZ3RoID4gMDtcbiAgICB9XG4gICAgZ2V0KGtleSwga2VlcFNjYWxhcikge1xuICAgICAgICBjb25zdCBpZHggPSBhc0l0ZW1JbmRleChrZXkpO1xuICAgICAgICBpZiAodHlwZW9mIGlkeCAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBpdCA9IHRoaXMuaXRlbXNbaWR4XTtcbiAgICAgICAgcmV0dXJuICFrZWVwU2NhbGFyICYmIGlkZW50aXR5LmlzU2NhbGFyKGl0KSA/IGl0LnZhbHVlIDogaXQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGUgY29sbGVjdGlvbiBpbmNsdWRlcyBhIHZhbHVlIHdpdGggdGhlIGtleSBga2V5YC5cbiAgICAgKlxuICAgICAqIGBrZXlgIG11c3QgY29udGFpbiBhIHJlcHJlc2VudGF0aW9uIG9mIGFuIGludGVnZXIgZm9yIHRoaXMgdG8gc3VjY2VlZC5cbiAgICAgKiBJdCBtYXkgYmUgd3JhcHBlZCBpbiBhIGBTY2FsYXJgLlxuICAgICAqL1xuICAgIGhhcyhrZXkpIHtcbiAgICAgICAgY29uc3QgaWR4ID0gYXNJdGVtSW5kZXgoa2V5KTtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBpZHggPT09ICdudW1iZXInICYmIGlkeCA8IHRoaXMuaXRlbXMubGVuZ3RoO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBjb2xsZWN0aW9uLiBGb3IgYCEhc2V0YCwgYHZhbHVlYCBuZWVkcyB0byBiZSBhXG4gICAgICogYm9vbGVhbiB0byBhZGQvcmVtb3ZlIHRoZSBpdGVtIGZyb20gdGhlIHNldC5cbiAgICAgKlxuICAgICAqIElmIGBrZXlgIGRvZXMgbm90IGNvbnRhaW4gYSByZXByZXNlbnRhdGlvbiBvZiBhbiBpbnRlZ2VyLCB0aGlzIHdpbGwgdGhyb3cuXG4gICAgICogSXQgbWF5IGJlIHdyYXBwZWQgaW4gYSBgU2NhbGFyYC5cbiAgICAgKi9cbiAgICBzZXQoa2V5LCB2YWx1ZSkge1xuICAgICAgICBjb25zdCBpZHggPSBhc0l0ZW1JbmRleChrZXkpO1xuICAgICAgICBpZiAodHlwZW9mIGlkeCAhPT0gJ251bWJlcicpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIGEgdmFsaWQgaW5kZXgsIG5vdCAke2tleX0uYCk7XG4gICAgICAgIGNvbnN0IHByZXYgPSB0aGlzLml0ZW1zW2lkeF07XG4gICAgICAgIGlmIChpZGVudGl0eS5pc1NjYWxhcihwcmV2KSAmJiBTY2FsYXIuaXNTY2FsYXJWYWx1ZSh2YWx1ZSkpXG4gICAgICAgICAgICBwcmV2LnZhbHVlID0gdmFsdWU7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRoaXMuaXRlbXNbaWR4XSA9IHZhbHVlO1xuICAgIH1cbiAgICB0b0pTT04oXywgY3R4KSB7XG4gICAgICAgIGNvbnN0IHNlcSA9IFtdO1xuICAgICAgICBpZiAoY3R4Py5vbkNyZWF0ZSlcbiAgICAgICAgICAgIGN0eC5vbkNyZWF0ZShzZXEpO1xuICAgICAgICBsZXQgaSA9IDA7XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0aGlzLml0ZW1zKVxuICAgICAgICAgICAgc2VxLnB1c2godG9KUy50b0pTKGl0ZW0sIFN0cmluZyhpKyspLCBjdHgpKTtcbiAgICAgICAgcmV0dXJuIHNlcTtcbiAgICB9XG4gICAgdG9TdHJpbmcoY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKSB7XG4gICAgICAgIGlmICghY3R4KVxuICAgICAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMpO1xuICAgICAgICByZXR1cm4gc3RyaW5naWZ5Q29sbGVjdGlvbi5zdHJpbmdpZnlDb2xsZWN0aW9uKHRoaXMsIGN0eCwge1xuICAgICAgICAgICAgYmxvY2tJdGVtUHJlZml4OiAnLSAnLFxuICAgICAgICAgICAgZmxvd0NoYXJzOiB7IHN0YXJ0OiAnWycsIGVuZDogJ10nIH0sXG4gICAgICAgICAgICBpdGVtSW5kZW50OiAoY3R4LmluZGVudCB8fCAnJykgKyAnICAnLFxuICAgICAgICAgICAgb25DaG9tcEtlZXAsXG4gICAgICAgICAgICBvbkNvbW1lbnRcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBmcm9tKHNjaGVtYSwgb2JqLCBjdHgpIHtcbiAgICAgICAgY29uc3QgeyByZXBsYWNlciB9ID0gY3R4O1xuICAgICAgICBjb25zdCBzZXEgPSBuZXcgdGhpcyhzY2hlbWEpO1xuICAgICAgICBpZiAob2JqICYmIFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3Qob2JqKSkge1xuICAgICAgICAgICAgbGV0IGkgPSAwO1xuICAgICAgICAgICAgZm9yIChsZXQgaXQgb2Ygb2JqKSB7XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiByZXBsYWNlciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXkgPSBvYmogaW5zdGFuY2VvZiBTZXQgPyBpdCA6IFN0cmluZyhpKyspO1xuICAgICAgICAgICAgICAgICAgICBpdCA9IHJlcGxhY2VyLmNhbGwob2JqLCBrZXksIGl0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc2VxLml0ZW1zLnB1c2goY3JlYXRlTm9kZS5jcmVhdGVOb2RlKGl0LCB1bmRlZmluZWQsIGN0eCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzZXE7XG4gICAgfVxufVxuZnVuY3Rpb24gYXNJdGVtSW5kZXgoa2V5KSB7XG4gICAgbGV0IGlkeCA9IGlkZW50aXR5LmlzU2NhbGFyKGtleSkgPyBrZXkudmFsdWUgOiBrZXk7XG4gICAgaWYgKGlkeCAmJiB0eXBlb2YgaWR4ID09PSAnc3RyaW5nJylcbiAgICAgICAgaWR4ID0gTnVtYmVyKGlkeCk7XG4gICAgcmV0dXJuIHR5cGVvZiBpZHggPT09ICdudW1iZXInICYmIE51bWJlci5pc0ludGVnZXIoaWR4KSAmJiBpZHggPj0gMFxuICAgICAgICA/IGlkeFxuICAgICAgICA6IG51bGw7XG59XG5cbmV4cG9ydHMuWUFNTFNlcSA9IFlBTUxTZXE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFlBTUxTZXEgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9ZQU1MU2VxLmpzJyk7XG5cbmNvbnN0IHNlcSA9IHtcbiAgICBjb2xsZWN0aW9uOiAnc2VxJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIG5vZGVDbGFzczogWUFNTFNlcS5ZQU1MU2VxLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOnNlcScsXG4gICAgcmVzb2x2ZShzZXEsIG9uRXJyb3IpIHtcbiAgICAgICAgaWYgKCFpZGVudGl0eS5pc1NlcShzZXEpKVxuICAgICAgICAgICAgb25FcnJvcignRXhwZWN0ZWQgYSBzZXF1ZW5jZSBmb3IgdGhpcyB0YWcnKTtcbiAgICAgICAgcmV0dXJuIHNlcTtcbiAgICB9LFxuICAgIGNyZWF0ZU5vZGU6IChzY2hlbWEsIG9iaiwgY3R4KSA9PiBZQU1MU2VxLllBTUxTZXEuZnJvbShzY2hlbWEsIG9iaiwgY3R4KVxufTtcblxuZXhwb3J0cy5zZXEgPSBzZXE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgc3RyaW5naWZ5U3RyaW5nID0gcmVxdWlyZSgnLi4vLi4vc3RyaW5naWZ5L3N0cmluZ2lmeVN0cmluZy5qcycpO1xuXG5jb25zdCBzdHJpbmcgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpzdHInLFxuICAgIHJlc29sdmU6IHN0ciA9PiBzdHIsXG4gICAgc3RyaW5naWZ5KGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICBjdHggPSBPYmplY3QuYXNzaWduKHsgYWN0dWFsU3RyaW5nOiB0cnVlIH0sIGN0eCk7XG4gICAgICAgIHJldHVybiBzdHJpbmdpZnlTdHJpbmcuc3RyaW5naWZ5U3RyaW5nKGl0ZW0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxufTtcblxuZXhwb3J0cy5zdHJpbmcgPSBzdHJpbmc7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbmNvbnN0IG51bGxUYWcgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHZhbHVlID09IG51bGwsXG4gICAgY3JlYXRlTm9kZTogKCkgPT4gbmV3IFNjYWxhci5TY2FsYXIobnVsbCksXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpudWxsJyxcbiAgICB0ZXN0OiAvXig/On58W05uXXVsbHxOVUxMKT8kLyxcbiAgICByZXNvbHZlOiAoKSA9PiBuZXcgU2NhbGFyLlNjYWxhcihudWxsKSxcbiAgICBzdHJpbmdpZnk6ICh7IHNvdXJjZSB9LCBjdHgpID0+IHR5cGVvZiBzb3VyY2UgPT09ICdzdHJpbmcnICYmIG51bGxUYWcudGVzdC50ZXN0KHNvdXJjZSlcbiAgICAgICAgPyBzb3VyY2VcbiAgICAgICAgOiBjdHgub3B0aW9ucy5udWxsU3RyXG59O1xuXG5leHBvcnRzLm51bGxUYWcgPSBudWxsVGFnO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1NjYWxhci5qcycpO1xuXG5jb25zdCBib29sVGFnID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmJvb2wnLFxuICAgIHRlc3Q6IC9eKD86W1R0XXJ1ZXxUUlVFfFtGZl1hbHNlfEZBTFNFKSQvLFxuICAgIHJlc29sdmU6IHN0ciA9PiBuZXcgU2NhbGFyLlNjYWxhcihzdHJbMF0gPT09ICd0JyB8fCBzdHJbMF0gPT09ICdUJyksXG4gICAgc3RyaW5naWZ5KHsgc291cmNlLCB2YWx1ZSB9LCBjdHgpIHtcbiAgICAgICAgaWYgKHNvdXJjZSAmJiBib29sVGFnLnRlc3QudGVzdChzb3VyY2UpKSB7XG4gICAgICAgICAgICBjb25zdCBzdiA9IHNvdXJjZVswXSA9PT0gJ3QnIHx8IHNvdXJjZVswXSA9PT0gJ1QnO1xuICAgICAgICAgICAgaWYgKHZhbHVlID09PSBzdilcbiAgICAgICAgICAgICAgICByZXR1cm4gc291cmNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZSA/IGN0eC5vcHRpb25zLnRydWVTdHIgOiBjdHgub3B0aW9ucy5mYWxzZVN0cjtcbiAgICB9XG59O1xuXG5leHBvcnRzLmJvb2xUYWcgPSBib29sVGFnO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuZnVuY3Rpb24gc3RyaW5naWZ5TnVtYmVyKHsgZm9ybWF0LCBtaW5GcmFjdGlvbkRpZ2l0cywgdGFnLCB2YWx1ZSB9KSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcpXG4gICAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpO1xuICAgIGNvbnN0IG51bSA9IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgPyB2YWx1ZSA6IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKCFpc0Zpbml0ZShudW0pKVxuICAgICAgICByZXR1cm4gaXNOYU4obnVtKSA/ICcubmFuJyA6IG51bSA8IDAgPyAnLS5pbmYnIDogJy5pbmYnO1xuICAgIGxldCBuID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgIGlmICghZm9ybWF0ICYmXG4gICAgICAgIG1pbkZyYWN0aW9uRGlnaXRzICYmXG4gICAgICAgICghdGFnIHx8IHRhZyA9PT0gJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JykgJiZcbiAgICAgICAgL15cXGQvLnRlc3QobikpIHtcbiAgICAgICAgbGV0IGkgPSBuLmluZGV4T2YoJy4nKTtcbiAgICAgICAgaWYgKGkgPCAwKSB7XG4gICAgICAgICAgICBpID0gbi5sZW5ndGg7XG4gICAgICAgICAgICBuICs9ICcuJztcbiAgICAgICAgfVxuICAgICAgICBsZXQgZCA9IG1pbkZyYWN0aW9uRGlnaXRzIC0gKG4ubGVuZ3RoIC0gaSAtIDEpO1xuICAgICAgICB3aGlsZSAoZC0tID4gMClcbiAgICAgICAgICAgIG4gKz0gJzAnO1xuICAgIH1cbiAgICByZXR1cm4gbjtcbn1cblxuZXhwb3J0cy5zdHJpbmdpZnlOdW1iZXIgPSBzdHJpbmdpZnlOdW1iZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgc3RyaW5naWZ5TnVtYmVyID0gcmVxdWlyZSgnLi4vLi4vc3RyaW5naWZ5L3N0cmluZ2lmeU51bWJlci5qcycpO1xuXG5jb25zdCBmbG9hdE5hTiA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JyxcbiAgICB0ZXN0OiAvXig/OlstK10/XFwuKD86aW5mfEluZnxJTkYpfFxcLm5hbnxcXC5OYU58XFwuTkFOKSQvLFxuICAgIHJlc29sdmU6IHN0ciA9PiBzdHIuc2xpY2UoLTMpLnRvTG93ZXJDYXNlKCkgPT09ICduYW4nXG4gICAgICAgID8gTmFOXG4gICAgICAgIDogc3RyWzBdID09PSAnLSdcbiAgICAgICAgICAgID8gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZXG4gICAgICAgICAgICA6IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxcbiAgICBzdHJpbmdpZnk6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXJcbn07XG5jb25zdCBmbG9hdEV4cCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JyxcbiAgICBmb3JtYXQ6ICdFWFAnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpcXC5bMC05XSt8WzAtOV0rKD86XFwuWzAtOV0qKT8pW2VFXVstK10/WzAtOV0rJC8sXG4gICAgcmVzb2x2ZTogc3RyID0+IHBhcnNlRmxvYXQoc3RyKSxcbiAgICBzdHJpbmdpZnkobm9kZSkge1xuICAgICAgICBjb25zdCBudW0gPSBOdW1iZXIobm9kZS52YWx1ZSk7XG4gICAgICAgIHJldHVybiBpc0Zpbml0ZShudW0pID8gbnVtLnRvRXhwb25lbnRpYWwoKSA6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG4gICAgfVxufTtcbmNvbnN0IGZsb2F0ID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6ZmxvYXQnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpcXC5bMC05XSt8WzAtOV0rXFwuWzAtOV0qKSQvLFxuICAgIHJlc29sdmUoc3RyKSB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgU2NhbGFyLlNjYWxhcihwYXJzZUZsb2F0KHN0cikpO1xuICAgICAgICBjb25zdCBkb3QgPSBzdHIuaW5kZXhPZignLicpO1xuICAgICAgICBpZiAoZG90ICE9PSAtMSAmJiBzdHJbc3RyLmxlbmd0aCAtIDFdID09PSAnMCcpXG4gICAgICAgICAgICBub2RlLm1pbkZyYWN0aW9uRGlnaXRzID0gc3RyLmxlbmd0aCAtIGRvdCAtIDE7XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH0sXG4gICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlOdW1iZXIuc3RyaW5naWZ5TnVtYmVyXG59O1xuXG5leHBvcnRzLmZsb2F0ID0gZmxvYXQ7XG5leHBvcnRzLmZsb2F0RXhwID0gZmxvYXRFeHA7XG5leHBvcnRzLmZsb2F0TmFOID0gZmxvYXROYU47XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgc3RyaW5naWZ5TnVtYmVyID0gcmVxdWlyZSgnLi4vLi4vc3RyaW5naWZ5L3N0cmluZ2lmeU51bWJlci5qcycpO1xuXG5jb25zdCBpbnRJZGVudGlmeSA9ICh2YWx1ZSkgPT4gdHlwZW9mIHZhbHVlID09PSAnYmlnaW50JyB8fCBOdW1iZXIuaXNJbnRlZ2VyKHZhbHVlKTtcbmNvbnN0IGludFJlc29sdmUgPSAoc3RyLCBvZmZzZXQsIHJhZGl4LCB7IGludEFzQmlnSW50IH0pID0+IChpbnRBc0JpZ0ludCA/IEJpZ0ludChzdHIpIDogcGFyc2VJbnQoc3RyLnN1YnN0cmluZyhvZmZzZXQpLCByYWRpeCkpO1xuZnVuY3Rpb24gaW50U3RyaW5naWZ5KG5vZGUsIHJhZGl4LCBwcmVmaXgpIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBub2RlO1xuICAgIGlmIChpbnRJZGVudGlmeSh2YWx1ZSkgJiYgdmFsdWUgPj0gMClcbiAgICAgICAgcmV0dXJuIHByZWZpeCArIHZhbHVlLnRvU3RyaW5nKHJhZGl4KTtcbiAgICByZXR1cm4gc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlcihub2RlKTtcbn1cbmNvbnN0IGludE9jdCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gaW50SWRlbnRpZnkodmFsdWUpICYmIHZhbHVlID49IDAsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjppbnQnLFxuICAgIGZvcm1hdDogJ09DVCcsXG4gICAgdGVzdDogL14wb1swLTddKyQvLFxuICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCBvcHQpID0+IGludFJlc29sdmUoc3RyLCAyLCA4LCBvcHQpLFxuICAgIHN0cmluZ2lmeTogbm9kZSA9PiBpbnRTdHJpbmdpZnkobm9kZSwgOCwgJzBvJylcbn07XG5jb25zdCBpbnQgPSB7XG4gICAgaWRlbnRpZnk6IGludElkZW50aWZ5LFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICB0ZXN0OiAvXlstK10/WzAtOV0rJC8sXG4gICAgcmVzb2x2ZTogKHN0ciwgX29uRXJyb3IsIG9wdCkgPT4gaW50UmVzb2x2ZShzdHIsIDAsIDEwLCBvcHQpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlclxufTtcbmNvbnN0IGludEhleCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gaW50SWRlbnRpZnkodmFsdWUpICYmIHZhbHVlID49IDAsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjppbnQnLFxuICAgIGZvcm1hdDogJ0hFWCcsXG4gICAgdGVzdDogL14weFswLTlhLWZBLUZdKyQvLFxuICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCBvcHQpID0+IGludFJlc29sdmUoc3RyLCAyLCAxNiwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDE2LCAnMHgnKVxufTtcblxuZXhwb3J0cy5pbnQgPSBpbnQ7XG5leHBvcnRzLmludEhleCA9IGludEhleDtcbmV4cG9ydHMuaW50T2N0ID0gaW50T2N0O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIG1hcCA9IHJlcXVpcmUoJy4uL2NvbW1vbi9tYXAuanMnKTtcbnZhciBfbnVsbCA9IHJlcXVpcmUoJy4uL2NvbW1vbi9udWxsLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi4vY29tbW9uL3NlcS5qcycpO1xudmFyIHN0cmluZyA9IHJlcXVpcmUoJy4uL2NvbW1vbi9zdHJpbmcuanMnKTtcbnZhciBib29sID0gcmVxdWlyZSgnLi9ib29sLmpzJyk7XG52YXIgZmxvYXQgPSByZXF1aXJlKCcuL2Zsb2F0LmpzJyk7XG52YXIgaW50ID0gcmVxdWlyZSgnLi9pbnQuanMnKTtcblxuY29uc3Qgc2NoZW1hID0gW1xuICAgIG1hcC5tYXAsXG4gICAgc2VxLnNlcSxcbiAgICBzdHJpbmcuc3RyaW5nLFxuICAgIF9udWxsLm51bGxUYWcsXG4gICAgYm9vbC5ib29sVGFnLFxuICAgIGludC5pbnRPY3QsXG4gICAgaW50LmludCxcbiAgICBpbnQuaW50SGV4LFxuICAgIGZsb2F0LmZsb2F0TmFOLFxuICAgIGZsb2F0LmZsb2F0RXhwLFxuICAgIGZsb2F0LmZsb2F0XG5dO1xuXG5leHBvcnRzLnNjaGVtYSA9IHNjaGVtYTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciBtYXAgPSByZXF1aXJlKCcuLi9jb21tb24vbWFwLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi4vY29tbW9uL3NlcS5qcycpO1xuXG5mdW5jdGlvbiBpbnRJZGVudGlmeSh2YWx1ZSkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnIHx8IE51bWJlci5pc0ludGVnZXIodmFsdWUpO1xufVxuY29uc3Qgc3RyaW5naWZ5SlNPTiA9ICh7IHZhbHVlIH0pID0+IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbmNvbnN0IGpzb25TY2FsYXJzID0gW1xuICAgIHtcbiAgICAgICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycsXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOnN0cicsXG4gICAgICAgIHJlc29sdmU6IHN0ciA9PiBzdHIsXG4gICAgICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5SlNPTlxuICAgIH0sXG4gICAge1xuICAgICAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgPT0gbnVsbCxcbiAgICAgICAgY3JlYXRlTm9kZTogKCkgPT4gbmV3IFNjYWxhci5TY2FsYXIobnVsbCksXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOm51bGwnLFxuICAgICAgICB0ZXN0OiAvXm51bGwkLyxcbiAgICAgICAgcmVzb2x2ZTogKCkgPT4gbnVsbCxcbiAgICAgICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlKU09OXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJyxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6Ym9vbCcsXG4gICAgICAgIHRlc3Q6IC9edHJ1ZSR8XmZhbHNlJC8sXG4gICAgICAgIHJlc29sdmU6IHN0ciA9PiBzdHIgPT09ICd0cnVlJyxcbiAgICAgICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlKU09OXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlkZW50aWZ5OiBpbnRJZGVudGlmeSxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICAgICAgdGVzdDogL14tPyg/OjB8WzEtOV1bMC05XSopJC8sXG4gICAgICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCB7IGludEFzQmlnSW50IH0pID0+IGludEFzQmlnSW50ID8gQmlnSW50KHN0cikgOiBwYXJzZUludChzdHIsIDEwKSxcbiAgICAgICAgc3RyaW5naWZ5OiAoeyB2YWx1ZSB9KSA9PiBpbnRJZGVudGlmeSh2YWx1ZSkgPyB2YWx1ZS50b1N0cmluZygpIDogSlNPTi5zdHJpbmdpZnkodmFsdWUpXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInLFxuICAgICAgICBkZWZhdWx0OiB0cnVlLFxuICAgICAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCcsXG4gICAgICAgIHRlc3Q6IC9eLT8oPzowfFsxLTldWzAtOV0qKSg/OlxcLlswLTldKik/KD86W2VFXVstK10/WzAtOV0rKT8kLyxcbiAgICAgICAgcmVzb2x2ZTogc3RyID0+IHBhcnNlRmxvYXQoc3RyKSxcbiAgICAgICAgc3RyaW5naWZ5OiBzdHJpbmdpZnlKU09OXG4gICAgfVxuXTtcbmNvbnN0IGpzb25FcnJvciA9IHtcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJycsXG4gICAgdGVzdDogL14vLFxuICAgIHJlc29sdmUoc3RyLCBvbkVycm9yKSB7XG4gICAgICAgIG9uRXJyb3IoYFVucmVzb2x2ZWQgcGxhaW4gc2NhbGFyICR7SlNPTi5zdHJpbmdpZnkoc3RyKX1gKTtcbiAgICAgICAgcmV0dXJuIHN0cjtcbiAgICB9XG59O1xuY29uc3Qgc2NoZW1hID0gW21hcC5tYXAsIHNlcS5zZXFdLmNvbmNhdChqc29uU2NhbGFycywganNvbkVycm9yKTtcblxuZXhwb3J0cy5zY2hlbWEgPSBzY2hlbWE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbm9kZV9idWZmZXIgPSByZXF1aXJlKCdidWZmZXInKTtcbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciBzdHJpbmdpZnlTdHJpbmcgPSByZXF1aXJlKCcuLi8uLi9zdHJpbmdpZnkvc3RyaW5naWZ5U3RyaW5nLmpzJyk7XG5cbmNvbnN0IGJpbmFyeSA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgaW5zdGFuY2VvZiBVaW50OEFycmF5LCAvLyBCdWZmZXIgaW5oZXJpdHMgZnJvbSBVaW50OEFycmF5XG4gICAgZGVmYXVsdDogZmFsc2UsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5JyxcbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGEgQnVmZmVyIGluIG5vZGUgYW5kIGFuIFVpbnQ4QXJyYXkgaW4gYnJvd3NlcnNcbiAgICAgKlxuICAgICAqIFRvIHVzZSB0aGUgcmVzdWx0aW5nIGJ1ZmZlciBhcyBhbiBpbWFnZSwgeW91J2xsIHdhbnQgdG8gZG8gc29tZXRoaW5nIGxpa2U6XG4gICAgICpcbiAgICAgKiAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYnVmZmVyXSwgeyB0eXBlOiAnaW1hZ2UvanBlZycgfSlcbiAgICAgKiAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNwaG90bycpLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYilcbiAgICAgKi9cbiAgICByZXNvbHZlKHNyYywgb25FcnJvcikge1xuICAgICAgICBpZiAodHlwZW9mIG5vZGVfYnVmZmVyLkJ1ZmZlciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcmV0dXJuIG5vZGVfYnVmZmVyLkJ1ZmZlci5mcm9tKHNyYywgJ2Jhc2U2NCcpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHR5cGVvZiBhdG9iID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAvLyBPbiBJRSAxMSwgYXRvYigpIGNhbid0IGhhbmRsZSBuZXdsaW5lc1xuICAgICAgICAgICAgY29uc3Qgc3RyID0gYXRvYihzcmMucmVwbGFjZSgvW1xcblxccl0vZywgJycpKTtcbiAgICAgICAgICAgIGNvbnN0IGJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KHN0ci5sZW5ndGgpO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyArK2kpXG4gICAgICAgICAgICAgICAgYnVmZmVyW2ldID0gc3RyLmNoYXJDb2RlQXQoaSk7XG4gICAgICAgICAgICByZXR1cm4gYnVmZmVyO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgb25FcnJvcignVGhpcyBlbnZpcm9ubWVudCBkb2VzIG5vdCBzdXBwb3J0IHJlYWRpbmcgYmluYXJ5IHRhZ3M7IGVpdGhlciBCdWZmZXIgb3IgYXRvYiBpcyByZXF1aXJlZCcpO1xuICAgICAgICAgICAgcmV0dXJuIHNyYztcbiAgICAgICAgfVxuICAgIH0sXG4gICAgc3RyaW5naWZ5KHsgY29tbWVudCwgdHlwZSwgdmFsdWUgfSwgY3R4LCBvbkNvbW1lbnQsIG9uQ2hvbXBLZWVwKSB7XG4gICAgICAgIGlmICghdmFsdWUpXG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIGNvbnN0IGJ1ZiA9IHZhbHVlOyAvLyBjaGVja2VkIGVhcmxpZXIgYnkgYmluYXJ5LmlkZW50aWZ5KClcbiAgICAgICAgbGV0IHN0cjtcbiAgICAgICAgaWYgKHR5cGVvZiBub2RlX2J1ZmZlci5CdWZmZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHN0ciA9XG4gICAgICAgICAgICAgICAgYnVmIGluc3RhbmNlb2Ygbm9kZV9idWZmZXIuQnVmZmVyXG4gICAgICAgICAgICAgICAgICAgID8gYnVmLnRvU3RyaW5nKCdiYXNlNjQnKVxuICAgICAgICAgICAgICAgICAgICA6IG5vZGVfYnVmZmVyLkJ1ZmZlci5mcm9tKGJ1Zi5idWZmZXIpLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgYnRvYSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgbGV0IHMgPSAnJztcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnVmLmxlbmd0aDsgKytpKVxuICAgICAgICAgICAgICAgIHMgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShidWZbaV0pO1xuICAgICAgICAgICAgc3RyID0gYnRvYShzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBlbnZpcm9ubWVudCBkb2VzIG5vdCBzdXBwb3J0IHdyaXRpbmcgYmluYXJ5IHRhZ3M7IGVpdGhlciBCdWZmZXIgb3IgYnRvYSBpcyByZXF1aXJlZCcpO1xuICAgICAgICB9XG4gICAgICAgIHR5cGUgPz8gKHR5cGUgPSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUwpO1xuICAgICAgICBpZiAodHlwZSAhPT0gU2NhbGFyLlNjYWxhci5RVU9URV9ET1VCTEUpIHtcbiAgICAgICAgICAgIGNvbnN0IGxpbmVXaWR0aCA9IE1hdGgubWF4KGN0eC5vcHRpb25zLmxpbmVXaWR0aCAtIGN0eC5pbmRlbnQubGVuZ3RoLCBjdHgub3B0aW9ucy5taW5Db250ZW50V2lkdGgpO1xuICAgICAgICAgICAgY29uc3QgbiA9IE1hdGguY2VpbChzdHIubGVuZ3RoIC8gbGluZVdpZHRoKTtcbiAgICAgICAgICAgIGNvbnN0IGxpbmVzID0gbmV3IEFycmF5KG4pO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDAsIG8gPSAwOyBpIDwgbjsgKytpLCBvICs9IGxpbmVXaWR0aCkge1xuICAgICAgICAgICAgICAgIGxpbmVzW2ldID0gc3RyLnN1YnN0cihvLCBsaW5lV2lkdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3RyID0gbGluZXMuam9pbih0eXBlID09PSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUwgPyAnXFxuJyA6ICcgJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHN0cmluZ2lmeVN0cmluZy5zdHJpbmdpZnlTdHJpbmcoeyBjb21tZW50LCB0eXBlLCB2YWx1ZTogc3RyIH0sIGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgfVxufTtcblxuZXhwb3J0cy5iaW5hcnkgPSBiaW5hcnk7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFBhaXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgWUFNTFNlcSA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1lBTUxTZXEuanMnKTtcblxuZnVuY3Rpb24gcmVzb2x2ZVBhaXJzKHNlcSwgb25FcnJvcikge1xuICAgIGlmIChpZGVudGl0eS5pc1NlcShzZXEpKSB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2VxLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICBsZXQgaXRlbSA9IHNlcS5pdGVtc1tpXTtcbiAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIoaXRlbSkpXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICBlbHNlIGlmIChpZGVudGl0eS5pc01hcChpdGVtKSkge1xuICAgICAgICAgICAgICAgIGlmIChpdGVtLml0ZW1zLmxlbmd0aCA+IDEpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IoJ0VhY2ggcGFpciBtdXN0IGhhdmUgaXRzIG93biBzZXF1ZW5jZSBpbmRpY2F0b3InKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYWlyID0gaXRlbS5pdGVtc1swXSB8fCBuZXcgUGFpci5QYWlyKG5ldyBTY2FsYXIuU2NhbGFyKG51bGwpKTtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS5jb21tZW50QmVmb3JlKVxuICAgICAgICAgICAgICAgICAgICBwYWlyLmtleS5jb21tZW50QmVmb3JlID0gcGFpci5rZXkuY29tbWVudEJlZm9yZVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBgJHtpdGVtLmNvbW1lbnRCZWZvcmV9XFxuJHtwYWlyLmtleS5jb21tZW50QmVmb3JlfWBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogaXRlbS5jb21tZW50QmVmb3JlO1xuICAgICAgICAgICAgICAgIGlmIChpdGVtLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY24gPSBwYWlyLnZhbHVlID8/IHBhaXIua2V5O1xuICAgICAgICAgICAgICAgICAgICBjbi5jb21tZW50ID0gY24uY29tbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBgJHtpdGVtLmNvbW1lbnR9XFxuJHtjbi5jb21tZW50fWBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogaXRlbS5jb21tZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpdGVtID0gcGFpcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNlcS5pdGVtc1tpXSA9IGlkZW50aXR5LmlzUGFpcihpdGVtKSA/IGl0ZW0gOiBuZXcgUGFpci5QYWlyKGl0ZW0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGVsc2VcbiAgICAgICAgb25FcnJvcignRXhwZWN0ZWQgYSBzZXF1ZW5jZSBmb3IgdGhpcyB0YWcnKTtcbiAgICByZXR1cm4gc2VxO1xufVxuZnVuY3Rpb24gY3JlYXRlUGFpcnMoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSB7XG4gICAgY29uc3QgeyByZXBsYWNlciB9ID0gY3R4O1xuICAgIGNvbnN0IHBhaXJzID0gbmV3IFlBTUxTZXEuWUFNTFNlcShzY2hlbWEpO1xuICAgIHBhaXJzLnRhZyA9ICd0YWc6eWFtbC5vcmcsMjAwMjpwYWlycyc7XG4gICAgbGV0IGkgPSAwO1xuICAgIGlmIChpdGVyYWJsZSAmJiBTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGl0ZXJhYmxlKSlcbiAgICAgICAgZm9yIChsZXQgaXQgb2YgaXRlcmFibGUpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdmdW5jdGlvbicpXG4gICAgICAgICAgICAgICAgaXQgPSByZXBsYWNlci5jYWxsKGl0ZXJhYmxlLCBTdHJpbmcoaSsrKSwgaXQpO1xuICAgICAgICAgICAgbGV0IGtleSwgdmFsdWU7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdCkpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXQubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgICAgICAgICAgIGtleSA9IGl0WzBdO1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGl0WzFdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkIFtrZXksIHZhbHVlXSB0dXBsZTogJHtpdH1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGl0ICYmIGl0IGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICAgICAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGl0KTtcbiAgICAgICAgICAgICAgICBpZiAoa2V5cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAga2V5ID0ga2V5c1swXTtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBpdFtrZXldO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgdHVwbGUgd2l0aCBvbmUga2V5LCBub3QgJHtrZXlzLmxlbmd0aH0ga2V5c2ApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGtleSA9IGl0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFpcnMuaXRlbXMucHVzaChQYWlyLmNyZWF0ZVBhaXIoa2V5LCB2YWx1ZSwgY3R4KSk7XG4gICAgICAgIH1cbiAgICByZXR1cm4gcGFpcnM7XG59XG5jb25zdCBwYWlycyA9IHtcbiAgICBjb2xsZWN0aW9uOiAnc2VxJyxcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpwYWlycycsXG4gICAgcmVzb2x2ZTogcmVzb2x2ZVBhaXJzLFxuICAgIGNyZWF0ZU5vZGU6IGNyZWF0ZVBhaXJzXG59O1xuXG5leHBvcnRzLmNyZWF0ZVBhaXJzID0gY3JlYXRlUGFpcnM7XG5leHBvcnRzLnBhaXJzID0gcGFpcnM7XG5leHBvcnRzLnJlc29sdmVQYWlycyA9IHJlc29sdmVQYWlycztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL3RvSlMuanMnKTtcbnZhciBZQU1MTWFwID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvWUFNTE1hcC5qcycpO1xudmFyIFlBTUxTZXEgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9ZQU1MU2VxLmpzJyk7XG52YXIgcGFpcnMgPSByZXF1aXJlKCcuL3BhaXJzLmpzJyk7XG5cbmNsYXNzIFlBTUxPTWFwIGV4dGVuZHMgWUFNTFNlcS5ZQU1MU2VxIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5hZGQgPSBZQU1MTWFwLllBTUxNYXAucHJvdG90eXBlLmFkZC5iaW5kKHRoaXMpO1xuICAgICAgICB0aGlzLmRlbGV0ZSA9IFlBTUxNYXAuWUFNTE1hcC5wcm90b3R5cGUuZGVsZXRlLmJpbmQodGhpcyk7XG4gICAgICAgIHRoaXMuZ2V0ID0gWUFNTE1hcC5ZQU1MTWFwLnByb3RvdHlwZS5nZXQuYmluZCh0aGlzKTtcbiAgICAgICAgdGhpcy5oYXMgPSBZQU1MTWFwLllBTUxNYXAucHJvdG90eXBlLmhhcy5iaW5kKHRoaXMpO1xuICAgICAgICB0aGlzLnNldCA9IFlBTUxNYXAuWUFNTE1hcC5wcm90b3R5cGUuc2V0LmJpbmQodGhpcyk7XG4gICAgICAgIHRoaXMudGFnID0gWUFNTE9NYXAudGFnO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJZiBgY3R4YCBpcyBnaXZlbiwgdGhlIHJldHVybiB0eXBlIGlzIGFjdHVhbGx5IGBNYXA8dW5rbm93biwgdW5rbm93bj5gLFxuICAgICAqIGJ1dCBUeXBlU2NyaXB0IHdvbid0IGFsbG93IHdpZGVuaW5nIHRoZSBzaWduYXR1cmUgb2YgYSBjaGlsZCBtZXRob2QuXG4gICAgICovXG4gICAgdG9KU09OKF8sIGN0eCkge1xuICAgICAgICBpZiAoIWN0eClcbiAgICAgICAgICAgIHJldHVybiBzdXBlci50b0pTT04oXyk7XG4gICAgICAgIGNvbnN0IG1hcCA9IG5ldyBNYXAoKTtcbiAgICAgICAgaWYgKGN0eD8ub25DcmVhdGUpXG4gICAgICAgICAgICBjdHgub25DcmVhdGUobWFwKTtcbiAgICAgICAgZm9yIChjb25zdCBwYWlyIG9mIHRoaXMuaXRlbXMpIHtcbiAgICAgICAgICAgIGxldCBrZXksIHZhbHVlO1xuICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzUGFpcihwYWlyKSkge1xuICAgICAgICAgICAgICAgIGtleSA9IHRvSlMudG9KUyhwYWlyLmtleSwgJycsIGN0eCk7XG4gICAgICAgICAgICAgICAgdmFsdWUgPSB0b0pTLnRvSlMocGFpci52YWx1ZSwga2V5LCBjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAga2V5ID0gdG9KUy50b0pTKHBhaXIsICcnLCBjdHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG1hcC5oYXMoa2V5KSlcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ09yZGVyZWQgbWFwcyBtdXN0IG5vdCBpbmNsdWRlIGR1cGxpY2F0ZSBrZXlzJyk7XG4gICAgICAgICAgICBtYXAuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBtYXA7XG4gICAgfVxuICAgIHN0YXRpYyBmcm9tKHNjaGVtYSwgaXRlcmFibGUsIGN0eCkge1xuICAgICAgICBjb25zdCBwYWlycyQxID0gcGFpcnMuY3JlYXRlUGFpcnMoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KTtcbiAgICAgICAgY29uc3Qgb21hcCA9IG5ldyB0aGlzKCk7XG4gICAgICAgIG9tYXAuaXRlbXMgPSBwYWlycyQxLml0ZW1zO1xuICAgICAgICByZXR1cm4gb21hcDtcbiAgICB9XG59XG5ZQU1MT01hcC50YWcgPSAndGFnOnlhbWwub3JnLDIwMDI6b21hcCc7XG5jb25zdCBvbWFwID0ge1xuICAgIGNvbGxlY3Rpb246ICdzZXEnLFxuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB2YWx1ZSBpbnN0YW5jZW9mIE1hcCxcbiAgICBub2RlQ2xhc3M6IFlBTUxPTWFwLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOm9tYXAnLFxuICAgIHJlc29sdmUoc2VxLCBvbkVycm9yKSB7XG4gICAgICAgIGNvbnN0IHBhaXJzJDEgPSBwYWlycy5yZXNvbHZlUGFpcnMoc2VxLCBvbkVycm9yKTtcbiAgICAgICAgY29uc3Qgc2VlbktleXMgPSBbXTtcbiAgICAgICAgZm9yIChjb25zdCB7IGtleSB9IG9mIHBhaXJzJDEuaXRlbXMpIHtcbiAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc1NjYWxhcihrZXkpKSB7XG4gICAgICAgICAgICAgICAgaWYgKHNlZW5LZXlzLmluY2x1ZGVzKGtleS52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihgT3JkZXJlZCBtYXBzIG11c3Qgbm90IGluY2x1ZGUgZHVwbGljYXRlIGtleXM6ICR7a2V5LnZhbHVlfWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc2VlbktleXMucHVzaChrZXkudmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgWUFNTE9NYXAoKSwgcGFpcnMkMSk7XG4gICAgfSxcbiAgICBjcmVhdGVOb2RlOiAoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSA9PiBZQU1MT01hcC5mcm9tKHNjaGVtYSwgaXRlcmFibGUsIGN0eClcbn07XG5cbmV4cG9ydHMuWUFNTE9NYXAgPSBZQU1MT01hcDtcbmV4cG9ydHMub21hcCA9IG9tYXA7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbmZ1bmN0aW9uIGJvb2xTdHJpbmdpZnkoeyB2YWx1ZSwgc291cmNlIH0sIGN0eCkge1xuICAgIGNvbnN0IGJvb2xPYmogPSB2YWx1ZSA/IHRydWVUYWcgOiBmYWxzZVRhZztcbiAgICBpZiAoc291cmNlICYmIGJvb2xPYmoudGVzdC50ZXN0KHNvdXJjZSkpXG4gICAgICAgIHJldHVybiBzb3VyY2U7XG4gICAgcmV0dXJuIHZhbHVlID8gY3R4Lm9wdGlvbnMudHJ1ZVN0ciA6IGN0eC5vcHRpb25zLmZhbHNlU3RyO1xufVxuY29uc3QgdHJ1ZVRhZyA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgPT09IHRydWUsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpib29sJyxcbiAgICB0ZXN0OiAvXig/Oll8eXxbWXldZXN8WUVTfFtUdF1ydWV8VFJVRXxbT29dbnxPTikkLyxcbiAgICByZXNvbHZlOiAoKSA9PiBuZXcgU2NhbGFyLlNjYWxhcih0cnVlKSxcbiAgICBzdHJpbmdpZnk6IGJvb2xTdHJpbmdpZnlcbn07XG5jb25zdCBmYWxzZVRhZyA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdmFsdWUgPT09IGZhbHNlLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6Ym9vbCcsXG4gICAgdGVzdDogL14oPzpOfG58W05uXW98Tk98W0ZmXWFsc2V8RkFMU0V8W09vXWZmfE9GRikkLyxcbiAgICByZXNvbHZlOiAoKSA9PiBuZXcgU2NhbGFyLlNjYWxhcihmYWxzZSksXG4gICAgc3RyaW5naWZ5OiBib29sU3RyaW5naWZ5XG59O1xuXG5leHBvcnRzLmZhbHNlVGFnID0gZmFsc2VUYWc7XG5leHBvcnRzLnRydWVUYWcgPSB0cnVlVGFnO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1NjYWxhci5qcycpO1xudmFyIHN0cmluZ2lmeU51bWJlciA9IHJlcXVpcmUoJy4uLy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMnKTtcblxuY29uc3QgZmxvYXROYU4gPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCcsXG4gICAgdGVzdDogL14oPzpbLStdP1xcLig/OmluZnxJbmZ8SU5GKXxcXC5uYW58XFwuTmFOfFxcLk5BTikkLyxcbiAgICByZXNvbHZlOiAoc3RyKSA9PiBzdHIuc2xpY2UoLTMpLnRvTG93ZXJDYXNlKCkgPT09ICduYW4nXG4gICAgICAgID8gTmFOXG4gICAgICAgIDogc3RyWzBdID09PSAnLSdcbiAgICAgICAgICAgID8gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZXG4gICAgICAgICAgICA6IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxcbiAgICBzdHJpbmdpZnk6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXJcbn07XG5jb25zdCBmbG9hdEV4cCA9IHtcbiAgICBpZGVudGlmeTogdmFsdWUgPT4gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmZsb2F0JyxcbiAgICBmb3JtYXQ6ICdFWFAnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpbMC05XVswLTlfXSopPyg/OlxcLlswLTlfXSopP1tlRV1bLStdP1swLTldKyQvLFxuICAgIHJlc29sdmU6IChzdHIpID0+IHBhcnNlRmxvYXQoc3RyLnJlcGxhY2UoL18vZywgJycpKSxcbiAgICBzdHJpbmdpZnkobm9kZSkge1xuICAgICAgICBjb25zdCBudW0gPSBOdW1iZXIobm9kZS52YWx1ZSk7XG4gICAgICAgIHJldHVybiBpc0Zpbml0ZShudW0pID8gbnVtLnRvRXhwb25lbnRpYWwoKSA6IHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG4gICAgfVxufTtcbmNvbnN0IGZsb2F0ID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6ZmxvYXQnLFxuICAgIHRlc3Q6IC9eWy0rXT8oPzpbMC05XVswLTlfXSopP1xcLlswLTlfXSokLyxcbiAgICByZXNvbHZlKHN0cikge1xuICAgICAgICBjb25zdCBub2RlID0gbmV3IFNjYWxhci5TY2FsYXIocGFyc2VGbG9hdChzdHIucmVwbGFjZSgvXy9nLCAnJykpKTtcbiAgICAgICAgY29uc3QgZG90ID0gc3RyLmluZGV4T2YoJy4nKTtcbiAgICAgICAgaWYgKGRvdCAhPT0gLTEpIHtcbiAgICAgICAgICAgIGNvbnN0IGYgPSBzdHIuc3Vic3RyaW5nKGRvdCArIDEpLnJlcGxhY2UoL18vZywgJycpO1xuICAgICAgICAgICAgaWYgKGZbZi5sZW5ndGggLSAxXSA9PT0gJzAnKVxuICAgICAgICAgICAgICAgIG5vZGUubWluRnJhY3Rpb25EaWdpdHMgPSBmLmxlbmd0aDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9LFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlclxufTtcblxuZXhwb3J0cy5mbG9hdCA9IGZsb2F0O1xuZXhwb3J0cy5mbG9hdEV4cCA9IGZsb2F0RXhwO1xuZXhwb3J0cy5mbG9hdE5hTiA9IGZsb2F0TmFOO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHN0cmluZ2lmeU51bWJlciA9IHJlcXVpcmUoJy4uLy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMnKTtcblxuY29uc3QgaW50SWRlbnRpZnkgPSAodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ2JpZ2ludCcgfHwgTnVtYmVyLmlzSW50ZWdlcih2YWx1ZSk7XG5mdW5jdGlvbiBpbnRSZXNvbHZlKHN0ciwgb2Zmc2V0LCByYWRpeCwgeyBpbnRBc0JpZ0ludCB9KSB7XG4gICAgY29uc3Qgc2lnbiA9IHN0clswXTtcbiAgICBpZiAoc2lnbiA9PT0gJy0nIHx8IHNpZ24gPT09ICcrJylcbiAgICAgICAgb2Zmc2V0ICs9IDE7XG4gICAgc3RyID0gc3RyLnN1YnN0cmluZyhvZmZzZXQpLnJlcGxhY2UoL18vZywgJycpO1xuICAgIGlmIChpbnRBc0JpZ0ludCkge1xuICAgICAgICBzd2l0Y2ggKHJhZGl4KSB7XG4gICAgICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgICAgICAgc3RyID0gYDBiJHtzdHJ9YDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgODpcbiAgICAgICAgICAgICAgICBzdHIgPSBgMG8ke3N0cn1gO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAxNjpcbiAgICAgICAgICAgICAgICBzdHIgPSBgMHgke3N0cn1gO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG4gPSBCaWdJbnQoc3RyKTtcbiAgICAgICAgcmV0dXJuIHNpZ24gPT09ICctJyA/IEJpZ0ludCgtMSkgKiBuIDogbjtcbiAgICB9XG4gICAgY29uc3QgbiA9IHBhcnNlSW50KHN0ciwgcmFkaXgpO1xuICAgIHJldHVybiBzaWduID09PSAnLScgPyAtMSAqIG4gOiBuO1xufVxuZnVuY3Rpb24gaW50U3RyaW5naWZ5KG5vZGUsIHJhZGl4LCBwcmVmaXgpIHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBub2RlO1xuICAgIGlmIChpbnRJZGVudGlmeSh2YWx1ZSkpIHtcbiAgICAgICAgY29uc3Qgc3RyID0gdmFsdWUudG9TdHJpbmcocmFkaXgpO1xuICAgICAgICByZXR1cm4gdmFsdWUgPCAwID8gJy0nICsgcHJlZml4ICsgc3RyLnN1YnN0cigxKSA6IHByZWZpeCArIHN0cjtcbiAgICB9XG4gICAgcmV0dXJuIHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG59XG5jb25zdCBpbnRCaW4gPSB7XG4gICAgaWRlbnRpZnk6IGludElkZW50aWZ5LFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICBmb3JtYXQ6ICdCSU4nLFxuICAgIHRlc3Q6IC9eWy0rXT8wYlswLTFfXSskLyxcbiAgICByZXNvbHZlOiAoc3RyLCBfb25FcnJvciwgb3B0KSA9PiBpbnRSZXNvbHZlKHN0ciwgMiwgMiwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDIsICcwYicpXG59O1xuY29uc3QgaW50T2N0ID0ge1xuICAgIGlkZW50aWZ5OiBpbnRJZGVudGlmeSxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOmludCcsXG4gICAgZm9ybWF0OiAnT0NUJyxcbiAgICB0ZXN0OiAvXlstK10/MFswLTdfXSskLyxcbiAgICByZXNvbHZlOiAoc3RyLCBfb25FcnJvciwgb3B0KSA9PiBpbnRSZXNvbHZlKHN0ciwgMSwgOCwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDgsICcwJylcbn07XG5jb25zdCBpbnQgPSB7XG4gICAgaWRlbnRpZnk6IGludElkZW50aWZ5LFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICB0ZXN0OiAvXlstK10/WzAtOV1bMC05X10qJC8sXG4gICAgcmVzb2x2ZTogKHN0ciwgX29uRXJyb3IsIG9wdCkgPT4gaW50UmVzb2x2ZShzdHIsIDAsIDEwLCBvcHQpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5TnVtYmVyLnN0cmluZ2lmeU51bWJlclxufTtcbmNvbnN0IGludEhleCA9IHtcbiAgICBpZGVudGlmeTogaW50SWRlbnRpZnksXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjppbnQnLFxuICAgIGZvcm1hdDogJ0hFWCcsXG4gICAgdGVzdDogL15bLStdPzB4WzAtOWEtZkEtRl9dKyQvLFxuICAgIHJlc29sdmU6IChzdHIsIF9vbkVycm9yLCBvcHQpID0+IGludFJlc29sdmUoc3RyLCAyLCAxNiwgb3B0KSxcbiAgICBzdHJpbmdpZnk6IG5vZGUgPT4gaW50U3RyaW5naWZ5KG5vZGUsIDE2LCAnMHgnKVxufTtcblxuZXhwb3J0cy5pbnQgPSBpbnQ7XG5leHBvcnRzLmludEJpbiA9IGludEJpbjtcbmV4cG9ydHMuaW50SGV4ID0gaW50SGV4O1xuZXhwb3J0cy5pbnRPY3QgPSBpbnRPY3Q7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFBhaXIgPSByZXF1aXJlKCcuLi8uLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4uLy4uL25vZGVzL1lBTUxNYXAuanMnKTtcblxuY2xhc3MgWUFNTFNldCBleHRlbmRzIFlBTUxNYXAuWUFNTE1hcCB7XG4gICAgY29uc3RydWN0b3Ioc2NoZW1hKSB7XG4gICAgICAgIHN1cGVyKHNjaGVtYSk7XG4gICAgICAgIHRoaXMudGFnID0gWUFNTFNldC50YWc7XG4gICAgfVxuICAgIGFkZChrZXkpIHtcbiAgICAgICAgbGV0IHBhaXI7XG4gICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIoa2V5KSlcbiAgICAgICAgICAgIHBhaXIgPSBrZXk7XG4gICAgICAgIGVsc2UgaWYgKGtleSAmJlxuICAgICAgICAgICAgdHlwZW9mIGtleSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgICAgICdrZXknIGluIGtleSAmJlxuICAgICAgICAgICAgJ3ZhbHVlJyBpbiBrZXkgJiZcbiAgICAgICAgICAgIGtleS52YWx1ZSA9PT0gbnVsbClcbiAgICAgICAgICAgIHBhaXIgPSBuZXcgUGFpci5QYWlyKGtleS5rZXksIG51bGwpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBwYWlyID0gbmV3IFBhaXIuUGFpcihrZXksIG51bGwpO1xuICAgICAgICBjb25zdCBwcmV2ID0gWUFNTE1hcC5maW5kUGFpcih0aGlzLml0ZW1zLCBwYWlyLmtleSk7XG4gICAgICAgIGlmICghcHJldilcbiAgICAgICAgICAgIHRoaXMuaXRlbXMucHVzaChwYWlyKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSWYgYGtlZXBQYWlyYCBpcyBgdHJ1ZWAsIHJldHVybnMgdGhlIFBhaXIgbWF0Y2hpbmcgYGtleWAuXG4gICAgICogT3RoZXJ3aXNlLCByZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGF0IFBhaXIncyBrZXkuXG4gICAgICovXG4gICAgZ2V0KGtleSwga2VlcFBhaXIpIHtcbiAgICAgICAgY29uc3QgcGFpciA9IFlBTUxNYXAuZmluZFBhaXIodGhpcy5pdGVtcywga2V5KTtcbiAgICAgICAgcmV0dXJuICFrZWVwUGFpciAmJiBpZGVudGl0eS5pc1BhaXIocGFpcilcbiAgICAgICAgICAgID8gaWRlbnRpdHkuaXNTY2FsYXIocGFpci5rZXkpXG4gICAgICAgICAgICAgICAgPyBwYWlyLmtleS52YWx1ZVxuICAgICAgICAgICAgICAgIDogcGFpci5rZXlcbiAgICAgICAgICAgIDogcGFpcjtcbiAgICB9XG4gICAgc2V0KGtleSwgdmFsdWUpIHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ2Jvb2xlYW4nKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBib29sZWFuIHZhbHVlIGZvciBzZXQoa2V5LCB2YWx1ZSkgaW4gYSBZQU1MIHNldCwgbm90ICR7dHlwZW9mIHZhbHVlfWApO1xuICAgICAgICBjb25zdCBwcmV2ID0gWUFNTE1hcC5maW5kUGFpcih0aGlzLml0ZW1zLCBrZXkpO1xuICAgICAgICBpZiAocHJldiAmJiAhdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuaXRlbXMuc3BsaWNlKHRoaXMuaXRlbXMuaW5kZXhPZihwcmV2KSwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoIXByZXYgJiYgdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuaXRlbXMucHVzaChuZXcgUGFpci5QYWlyKGtleSkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRvSlNPTihfLCBjdHgpIHtcbiAgICAgICAgcmV0dXJuIHN1cGVyLnRvSlNPTihfLCBjdHgsIFNldCk7XG4gICAgfVxuICAgIHRvU3RyaW5nKGN0eCwgb25Db21tZW50LCBvbkNob21wS2VlcCkge1xuICAgICAgICBpZiAoIWN0eClcbiAgICAgICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzKTtcbiAgICAgICAgaWYgKHRoaXMuaGFzQWxsTnVsbFZhbHVlcyh0cnVlKSlcbiAgICAgICAgICAgIHJldHVybiBzdXBlci50b1N0cmluZyhPYmplY3QuYXNzaWduKHt9LCBjdHgsIHsgYWxsTnVsbFZhbHVlczogdHJ1ZSB9KSwgb25Db21tZW50LCBvbkNob21wS2VlcCk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignU2V0IGl0ZW1zIG11c3QgYWxsIGhhdmUgbnVsbCB2YWx1ZXMnKTtcbiAgICB9XG4gICAgc3RhdGljIGZyb20oc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSB7XG4gICAgICAgIGNvbnN0IHsgcmVwbGFjZXIgfSA9IGN0eDtcbiAgICAgICAgY29uc3Qgc2V0ID0gbmV3IHRoaXMoc2NoZW1hKTtcbiAgICAgICAgaWYgKGl0ZXJhYmxlICYmIFN5bWJvbC5pdGVyYXRvciBpbiBPYmplY3QoaXRlcmFibGUpKVxuICAgICAgICAgICAgZm9yIChsZXQgdmFsdWUgb2YgaXRlcmFibGUpIHtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAnZnVuY3Rpb24nKVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHJlcGxhY2VyLmNhbGwoaXRlcmFibGUsIHZhbHVlLCB2YWx1ZSk7XG4gICAgICAgICAgICAgICAgc2V0Lml0ZW1zLnB1c2goUGFpci5jcmVhdGVQYWlyKHZhbHVlLCBudWxsLCBjdHgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHNldDtcbiAgICB9XG59XG5ZQU1MU2V0LnRhZyA9ICd0YWc6eWFtbC5vcmcsMjAwMjpzZXQnO1xuY29uc3Qgc2V0ID0ge1xuICAgIGNvbGxlY3Rpb246ICdtYXAnLFxuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB2YWx1ZSBpbnN0YW5jZW9mIFNldCxcbiAgICBub2RlQ2xhc3M6IFlBTUxTZXQsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6c2V0JyxcbiAgICBjcmVhdGVOb2RlOiAoc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSA9PiBZQU1MU2V0LmZyb20oc2NoZW1hLCBpdGVyYWJsZSwgY3R4KSxcbiAgICByZXNvbHZlKG1hcCwgb25FcnJvcikge1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNNYXAobWFwKSkge1xuICAgICAgICAgICAgaWYgKG1hcC5oYXNBbGxOdWxsVmFsdWVzKHRydWUpKVxuICAgICAgICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBZQU1MU2V0KCksIG1hcCk7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgb25FcnJvcignU2V0IGl0ZW1zIG11c3QgYWxsIGhhdmUgbnVsbCB2YWx1ZXMnKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlXG4gICAgICAgICAgICBvbkVycm9yKCdFeHBlY3RlZCBhIG1hcHBpbmcgZm9yIHRoaXMgdGFnJyk7XG4gICAgICAgIHJldHVybiBtYXA7XG4gICAgfVxufTtcblxuZXhwb3J0cy5ZQU1MU2V0ID0gWUFNTFNldDtcbmV4cG9ydHMuc2V0ID0gc2V0O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHN0cmluZ2lmeU51bWJlciA9IHJlcXVpcmUoJy4uLy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlOdW1iZXIuanMnKTtcblxuLyoqIEludGVybmFsIHR5cGVzIGhhbmRsZSBiaWdpbnQgYXMgbnVtYmVyLCBiZWNhdXNlIFRTIGNhbid0IGZpZ3VyZSBpdCBvdXQuICovXG5mdW5jdGlvbiBwYXJzZVNleGFnZXNpbWFsKHN0ciwgYXNCaWdJbnQpIHtcbiAgICBjb25zdCBzaWduID0gc3RyWzBdO1xuICAgIGNvbnN0IHBhcnRzID0gc2lnbiA9PT0gJy0nIHx8IHNpZ24gPT09ICcrJyA/IHN0ci5zdWJzdHJpbmcoMSkgOiBzdHI7XG4gICAgY29uc3QgbnVtID0gKG4pID0+IGFzQmlnSW50ID8gQmlnSW50KG4pIDogTnVtYmVyKG4pO1xuICAgIGNvbnN0IHJlcyA9IHBhcnRzXG4gICAgICAgIC5yZXBsYWNlKC9fL2csICcnKVxuICAgICAgICAuc3BsaXQoJzonKVxuICAgICAgICAucmVkdWNlKChyZXMsIHApID0+IHJlcyAqIG51bSg2MCkgKyBudW0ocCksIG51bSgwKSk7XG4gICAgcmV0dXJuIChzaWduID09PSAnLScgPyBudW0oLTEpICogcmVzIDogcmVzKTtcbn1cbi8qKlxuICogaGhoaDptbTpzcy5zc3NcbiAqXG4gKiBJbnRlcm5hbCB0eXBlcyBoYW5kbGUgYmlnaW50IGFzIG51bWJlciwgYmVjYXVzZSBUUyBjYW4ndCBmaWd1cmUgaXQgb3V0LlxuICovXG5mdW5jdGlvbiBzdHJpbmdpZnlTZXhhZ2VzaW1hbChub2RlKSB7XG4gICAgbGV0IHsgdmFsdWUgfSA9IG5vZGU7XG4gICAgbGV0IG51bSA9IChuKSA9PiBuO1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnKVxuICAgICAgICBudW0gPSBuID0+IEJpZ0ludChuKTtcbiAgICBlbHNlIGlmIChpc05hTih2YWx1ZSkgfHwgIWlzRmluaXRlKHZhbHVlKSlcbiAgICAgICAgcmV0dXJuIHN0cmluZ2lmeU51bWJlci5zdHJpbmdpZnlOdW1iZXIobm9kZSk7XG4gICAgbGV0IHNpZ24gPSAnJztcbiAgICBpZiAodmFsdWUgPCAwKSB7XG4gICAgICAgIHNpZ24gPSAnLSc7XG4gICAgICAgIHZhbHVlICo9IG51bSgtMSk7XG4gICAgfVxuICAgIGNvbnN0IF82MCA9IG51bSg2MCk7XG4gICAgY29uc3QgcGFydHMgPSBbdmFsdWUgJSBfNjBdOyAvLyBzZWNvbmRzLCBpbmNsdWRpbmcgbXNcbiAgICBpZiAodmFsdWUgPCA2MCkge1xuICAgICAgICBwYXJ0cy51bnNoaWZ0KDApOyAvLyBhdCBsZWFzdCBvbmUgOiBpcyByZXF1aXJlZFxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgdmFsdWUgPSAodmFsdWUgLSBwYXJ0c1swXSkgLyBfNjA7XG4gICAgICAgIHBhcnRzLnVuc2hpZnQodmFsdWUgJSBfNjApOyAvLyBtaW51dGVzXG4gICAgICAgIGlmICh2YWx1ZSA+PSA2MCkge1xuICAgICAgICAgICAgdmFsdWUgPSAodmFsdWUgLSBwYXJ0c1swXSkgLyBfNjA7XG4gICAgICAgICAgICBwYXJ0cy51bnNoaWZ0KHZhbHVlKTsgLy8gaG91cnNcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gKHNpZ24gK1xuICAgICAgICBwYXJ0c1xuICAgICAgICAgICAgLm1hcChuID0+IFN0cmluZyhuKS5wYWRTdGFydCgyLCAnMCcpKVxuICAgICAgICAgICAgLmpvaW4oJzonKVxuICAgICAgICAgICAgLnJlcGxhY2UoLzAwMDAwMFxcZCokLywgJycpIC8vICUgNjAgbWF5IGludHJvZHVjZSBlcnJvclxuICAgICk7XG59XG5jb25zdCBpbnRUaW1lID0ge1xuICAgIGlkZW50aWZ5OiB2YWx1ZSA9PiB0eXBlb2YgdmFsdWUgPT09ICdiaWdpbnQnIHx8IE51bWJlci5pc0ludGVnZXIodmFsdWUpLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgdGFnOiAndGFnOnlhbWwub3JnLDIwMDI6aW50JyxcbiAgICBmb3JtYXQ6ICdUSU1FJyxcbiAgICB0ZXN0OiAvXlstK10/WzAtOV1bMC05X10qKD86OlswLTVdP1swLTldKSskLyxcbiAgICByZXNvbHZlOiAoc3RyLCBfb25FcnJvciwgeyBpbnRBc0JpZ0ludCB9KSA9PiBwYXJzZVNleGFnZXNpbWFsKHN0ciwgaW50QXNCaWdJbnQpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5U2V4YWdlc2ltYWxcbn07XG5jb25zdCBmbG9hdFRpbWUgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB0YWc6ICd0YWc6eWFtbC5vcmcsMjAwMjpmbG9hdCcsXG4gICAgZm9ybWF0OiAnVElNRScsXG4gICAgdGVzdDogL15bLStdP1swLTldWzAtOV9dKig/OjpbMC01XT9bMC05XSkrXFwuWzAtOV9dKiQvLFxuICAgIHJlc29sdmU6IHN0ciA9PiBwYXJzZVNleGFnZXNpbWFsKHN0ciwgZmFsc2UpLFxuICAgIHN0cmluZ2lmeTogc3RyaW5naWZ5U2V4YWdlc2ltYWxcbn07XG5jb25zdCB0aW1lc3RhbXAgPSB7XG4gICAgaWRlbnRpZnk6IHZhbHVlID0+IHZhbHVlIGluc3RhbmNlb2YgRGF0ZSxcbiAgICBkZWZhdWx0OiB0cnVlLFxuICAgIHRhZzogJ3RhZzp5YW1sLm9yZywyMDAyOnRpbWVzdGFtcCcsXG4gICAgLy8gSWYgdGhlIHRpbWUgem9uZSBpcyBvbWl0dGVkLCB0aGUgdGltZXN0YW1wIGlzIGFzc3VtZWQgdG8gYmUgc3BlY2lmaWVkIGluIFVUQy4gVGhlIHRpbWUgcGFydFxuICAgIC8vIG1heSBiZSBvbWl0dGVkIGFsdG9nZXRoZXIsIHJlc3VsdGluZyBpbiBhIGRhdGUgZm9ybWF0LiBJbiBzdWNoIGEgY2FzZSwgdGhlIHRpbWUgcGFydCBpc1xuICAgIC8vIGFzc3VtZWQgdG8gYmUgMDA6MDA6MDBaIChzdGFydCBvZiBkYXksIFVUQykuXG4gICAgdGVzdDogUmVnRXhwKCdeKFswLTldezR9KS0oWzAtOV17MSwyfSktKFswLTldezEsMn0pJyArIC8vIFlZWVktTW0tRGRcbiAgICAgICAgJyg/OicgKyAvLyB0aW1lIGlzIG9wdGlvbmFsXG4gICAgICAgICcoPzp0fFR8WyBcXFxcdF0rKScgKyAvLyB0IHwgVCB8IHdoaXRlc3BhY2VcbiAgICAgICAgJyhbMC05XXsxLDJ9KTooWzAtOV17MSwyfSk6KFswLTldezEsMn0oXFxcXC5bMC05XSspPyknICsgLy8gSGg6TW06U3MoLnNzKT9cbiAgICAgICAgJyg/OlsgXFxcXHRdKihafFstK11bMDEyXT9bMC05XSg/OjpbMC05XXsyfSk/KSk/JyArIC8vIFogfCArNSB8IC0wMzozMFxuICAgICAgICAnKT8kJyksXG4gICAgcmVzb2x2ZShzdHIpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBzdHIubWF0Y2godGltZXN0YW1wLnRlc3QpO1xuICAgICAgICBpZiAoIW1hdGNoKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCchIXRpbWVzdGFtcCBleHBlY3RzIGEgZGF0ZSwgc3RhcnRpbmcgd2l0aCB5eXl5LW1tLWRkJyk7XG4gICAgICAgIGNvbnN0IFssIHllYXIsIG1vbnRoLCBkYXksIGhvdXIsIG1pbnV0ZSwgc2Vjb25kXSA9IG1hdGNoLm1hcChOdW1iZXIpO1xuICAgICAgICBjb25zdCBtaWxsaXNlYyA9IG1hdGNoWzddID8gTnVtYmVyKChtYXRjaFs3XSArICcwMCcpLnN1YnN0cigxLCAzKSkgOiAwO1xuICAgICAgICBsZXQgZGF0ZSA9IERhdGUuVVRDKHllYXIsIG1vbnRoIC0gMSwgZGF5LCBob3VyIHx8IDAsIG1pbnV0ZSB8fCAwLCBzZWNvbmQgfHwgMCwgbWlsbGlzZWMpO1xuICAgICAgICBjb25zdCB0eiA9IG1hdGNoWzhdO1xuICAgICAgICBpZiAodHogJiYgdHogIT09ICdaJykge1xuICAgICAgICAgICAgbGV0IGQgPSBwYXJzZVNleGFnZXNpbWFsKHR6LCBmYWxzZSk7XG4gICAgICAgICAgICBpZiAoTWF0aC5hYnMoZCkgPCAzMClcbiAgICAgICAgICAgICAgICBkICo9IDYwO1xuICAgICAgICAgICAgZGF0ZSAtPSA2MDAwMCAqIGQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUpO1xuICAgIH0sXG4gICAgc3RyaW5naWZ5OiAoeyB2YWx1ZSB9KSA9PiB2YWx1ZT8udG9JU09TdHJpbmcoKS5yZXBsYWNlKC8oVDAwOjAwOjAwKT9cXC4wMDBaJC8sICcnKSA/PyAnJ1xufTtcblxuZXhwb3J0cy5mbG9hdFRpbWUgPSBmbG9hdFRpbWU7XG5leHBvcnRzLmludFRpbWUgPSBpbnRUaW1lO1xuZXhwb3J0cy50aW1lc3RhbXAgPSB0aW1lc3RhbXA7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbWFwID0gcmVxdWlyZSgnLi4vY29tbW9uL21hcC5qcycpO1xudmFyIF9udWxsID0gcmVxdWlyZSgnLi4vY29tbW9uL251bGwuanMnKTtcbnZhciBzZXEgPSByZXF1aXJlKCcuLi9jb21tb24vc2VxLmpzJyk7XG52YXIgc3RyaW5nID0gcmVxdWlyZSgnLi4vY29tbW9uL3N0cmluZy5qcycpO1xudmFyIGJpbmFyeSA9IHJlcXVpcmUoJy4vYmluYXJ5LmpzJyk7XG52YXIgYm9vbCA9IHJlcXVpcmUoJy4vYm9vbC5qcycpO1xudmFyIGZsb2F0ID0gcmVxdWlyZSgnLi9mbG9hdC5qcycpO1xudmFyIGludCA9IHJlcXVpcmUoJy4vaW50LmpzJyk7XG52YXIgbWVyZ2UgPSByZXF1aXJlKCcuL21lcmdlLmpzJyk7XG52YXIgb21hcCA9IHJlcXVpcmUoJy4vb21hcC5qcycpO1xudmFyIHBhaXJzID0gcmVxdWlyZSgnLi9wYWlycy5qcycpO1xudmFyIHNldCA9IHJlcXVpcmUoJy4vc2V0LmpzJyk7XG52YXIgdGltZXN0YW1wID0gcmVxdWlyZSgnLi90aW1lc3RhbXAuanMnKTtcblxuY29uc3Qgc2NoZW1hID0gW1xuICAgIG1hcC5tYXAsXG4gICAgc2VxLnNlcSxcbiAgICBzdHJpbmcuc3RyaW5nLFxuICAgIF9udWxsLm51bGxUYWcsXG4gICAgYm9vbC50cnVlVGFnLFxuICAgIGJvb2wuZmFsc2VUYWcsXG4gICAgaW50LmludEJpbixcbiAgICBpbnQuaW50T2N0LFxuICAgIGludC5pbnQsXG4gICAgaW50LmludEhleCxcbiAgICBmbG9hdC5mbG9hdE5hTixcbiAgICBmbG9hdC5mbG9hdEV4cCxcbiAgICBmbG9hdC5mbG9hdCxcbiAgICBiaW5hcnkuYmluYXJ5LFxuICAgIG1lcmdlLm1lcmdlLFxuICAgIG9tYXAub21hcCxcbiAgICBwYWlycy5wYWlycyxcbiAgICBzZXQuc2V0LFxuICAgIHRpbWVzdGFtcC5pbnRUaW1lLFxuICAgIHRpbWVzdGFtcC5mbG9hdFRpbWUsXG4gICAgdGltZXN0YW1wLnRpbWVzdGFtcFxuXTtcblxuZXhwb3J0cy5zY2hlbWEgPSBzY2hlbWE7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbWFwID0gcmVxdWlyZSgnLi9jb21tb24vbWFwLmpzJyk7XG52YXIgX251bGwgPSByZXF1aXJlKCcuL2NvbW1vbi9udWxsLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi9jb21tb24vc2VxLmpzJyk7XG52YXIgc3RyaW5nID0gcmVxdWlyZSgnLi9jb21tb24vc3RyaW5nLmpzJyk7XG52YXIgYm9vbCA9IHJlcXVpcmUoJy4vY29yZS9ib29sLmpzJyk7XG52YXIgZmxvYXQgPSByZXF1aXJlKCcuL2NvcmUvZmxvYXQuanMnKTtcbnZhciBpbnQgPSByZXF1aXJlKCcuL2NvcmUvaW50LmpzJyk7XG52YXIgc2NoZW1hID0gcmVxdWlyZSgnLi9jb3JlL3NjaGVtYS5qcycpO1xudmFyIHNjaGVtYSQxID0gcmVxdWlyZSgnLi9qc29uL3NjaGVtYS5qcycpO1xudmFyIGJpbmFyeSA9IHJlcXVpcmUoJy4veWFtbC0xLjEvYmluYXJ5LmpzJyk7XG52YXIgbWVyZ2UgPSByZXF1aXJlKCcuL3lhbWwtMS4xL21lcmdlLmpzJyk7XG52YXIgb21hcCA9IHJlcXVpcmUoJy4veWFtbC0xLjEvb21hcC5qcycpO1xudmFyIHBhaXJzID0gcmVxdWlyZSgnLi95YW1sLTEuMS9wYWlycy5qcycpO1xudmFyIHNjaGVtYSQyID0gcmVxdWlyZSgnLi95YW1sLTEuMS9zY2hlbWEuanMnKTtcbnZhciBzZXQgPSByZXF1aXJlKCcuL3lhbWwtMS4xL3NldC5qcycpO1xudmFyIHRpbWVzdGFtcCA9IHJlcXVpcmUoJy4veWFtbC0xLjEvdGltZXN0YW1wLmpzJyk7XG5cbmNvbnN0IHNjaGVtYXMgPSBuZXcgTWFwKFtcbiAgICBbJ2NvcmUnLCBzY2hlbWEuc2NoZW1hXSxcbiAgICBbJ2ZhaWxzYWZlJywgW21hcC5tYXAsIHNlcS5zZXEsIHN0cmluZy5zdHJpbmddXSxcbiAgICBbJ2pzb24nLCBzY2hlbWEkMS5zY2hlbWFdLFxuICAgIFsneWFtbDExJywgc2NoZW1hJDIuc2NoZW1hXSxcbiAgICBbJ3lhbWwtMS4xJywgc2NoZW1hJDIuc2NoZW1hXVxuXSk7XG5jb25zdCB0YWdzQnlOYW1lID0ge1xuICAgIGJpbmFyeTogYmluYXJ5LmJpbmFyeSxcbiAgICBib29sOiBib29sLmJvb2xUYWcsXG4gICAgZmxvYXQ6IGZsb2F0LmZsb2F0LFxuICAgIGZsb2F0RXhwOiBmbG9hdC5mbG9hdEV4cCxcbiAgICBmbG9hdE5hTjogZmxvYXQuZmxvYXROYU4sXG4gICAgZmxvYXRUaW1lOiB0aW1lc3RhbXAuZmxvYXRUaW1lLFxuICAgIGludDogaW50LmludCxcbiAgICBpbnRIZXg6IGludC5pbnRIZXgsXG4gICAgaW50T2N0OiBpbnQuaW50T2N0LFxuICAgIGludFRpbWU6IHRpbWVzdGFtcC5pbnRUaW1lLFxuICAgIG1hcDogbWFwLm1hcCxcbiAgICBtZXJnZTogbWVyZ2UubWVyZ2UsXG4gICAgbnVsbDogX251bGwubnVsbFRhZyxcbiAgICBvbWFwOiBvbWFwLm9tYXAsXG4gICAgcGFpcnM6IHBhaXJzLnBhaXJzLFxuICAgIHNlcTogc2VxLnNlcSxcbiAgICBzZXQ6IHNldC5zZXQsXG4gICAgdGltZXN0YW1wOiB0aW1lc3RhbXAudGltZXN0YW1wXG59O1xuY29uc3QgY29yZUtub3duVGFncyA9IHtcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5JzogYmluYXJ5LmJpbmFyeSxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6bWVyZ2UnOiBtZXJnZS5tZXJnZSxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6b21hcCc6IG9tYXAub21hcCxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6cGFpcnMnOiBwYWlycy5wYWlycyxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6c2V0Jzogc2V0LnNldCxcbiAgICAndGFnOnlhbWwub3JnLDIwMDI6dGltZXN0YW1wJzogdGltZXN0YW1wLnRpbWVzdGFtcFxufTtcbmZ1bmN0aW9uIGdldFRhZ3MoY3VzdG9tVGFncywgc2NoZW1hTmFtZSwgYWRkTWVyZ2VUYWcpIHtcbiAgICBjb25zdCBzY2hlbWFUYWdzID0gc2NoZW1hcy5nZXQoc2NoZW1hTmFtZSk7XG4gICAgaWYgKHNjaGVtYVRhZ3MgJiYgIWN1c3RvbVRhZ3MpIHtcbiAgICAgICAgcmV0dXJuIGFkZE1lcmdlVGFnICYmICFzY2hlbWFUYWdzLmluY2x1ZGVzKG1lcmdlLm1lcmdlKVxuICAgICAgICAgICAgPyBzY2hlbWFUYWdzLmNvbmNhdChtZXJnZS5tZXJnZSlcbiAgICAgICAgICAgIDogc2NoZW1hVGFncy5zbGljZSgpO1xuICAgIH1cbiAgICBsZXQgdGFncyA9IHNjaGVtYVRhZ3M7XG4gICAgaWYgKCF0YWdzKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGN1c3RvbVRhZ3MpKVxuICAgICAgICAgICAgdGFncyA9IFtdO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGtleXMgPSBBcnJheS5mcm9tKHNjaGVtYXMua2V5cygpKVxuICAgICAgICAgICAgICAgIC5maWx0ZXIoa2V5ID0+IGtleSAhPT0gJ3lhbWwxMScpXG4gICAgICAgICAgICAgICAgLm1hcChrZXkgPT4gSlNPTi5zdHJpbmdpZnkoa2V5KSlcbiAgICAgICAgICAgICAgICAuam9pbignLCAnKTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBzY2hlbWEgXCIke3NjaGVtYU5hbWV9XCI7IHVzZSBvbmUgb2YgJHtrZXlzfSBvciBkZWZpbmUgY3VzdG9tVGFncyBhcnJheWApO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChBcnJheS5pc0FycmF5KGN1c3RvbVRhZ3MpKSB7XG4gICAgICAgIGZvciAoY29uc3QgdGFnIG9mIGN1c3RvbVRhZ3MpXG4gICAgICAgICAgICB0YWdzID0gdGFncy5jb25jYXQodGFnKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodHlwZW9mIGN1c3RvbVRhZ3MgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGFncyA9IGN1c3RvbVRhZ3ModGFncy5zbGljZSgpKTtcbiAgICB9XG4gICAgaWYgKGFkZE1lcmdlVGFnKVxuICAgICAgICB0YWdzID0gdGFncy5jb25jYXQobWVyZ2UubWVyZ2UpO1xuICAgIHJldHVybiB0YWdzLnJlZHVjZSgodGFncywgdGFnKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhZ09iaiA9IHR5cGVvZiB0YWcgPT09ICdzdHJpbmcnID8gdGFnc0J5TmFtZVt0YWddIDogdGFnO1xuICAgICAgICBpZiAoIXRhZ09iaikge1xuICAgICAgICAgICAgY29uc3QgdGFnTmFtZSA9IEpTT04uc3RyaW5naWZ5KHRhZyk7XG4gICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModGFnc0J5TmFtZSlcbiAgICAgICAgICAgICAgICAubWFwKGtleSA9PiBKU09OLnN0cmluZ2lmeShrZXkpKVxuICAgICAgICAgICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGN1c3RvbSB0YWcgJHt0YWdOYW1lfTsgdXNlIG9uZSBvZiAke2tleXN9YCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0YWdzLmluY2x1ZGVzKHRhZ09iaikpXG4gICAgICAgICAgICB0YWdzLnB1c2godGFnT2JqKTtcbiAgICAgICAgcmV0dXJuIHRhZ3M7XG4gICAgfSwgW10pO1xufVxuXG5leHBvcnRzLmNvcmVLbm93blRhZ3MgPSBjb3JlS25vd25UYWdzO1xuZXhwb3J0cy5nZXRUYWdzID0gZ2V0VGFncztcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgbWFwID0gcmVxdWlyZSgnLi9jb21tb24vbWFwLmpzJyk7XG52YXIgc2VxID0gcmVxdWlyZSgnLi9jb21tb24vc2VxLmpzJyk7XG52YXIgc3RyaW5nID0gcmVxdWlyZSgnLi9jb21tb24vc3RyaW5nLmpzJyk7XG52YXIgdGFncyA9IHJlcXVpcmUoJy4vdGFncy5qcycpO1xuXG5jb25zdCBzb3J0TWFwRW50cmllc0J5S2V5ID0gKGEsIGIpID0+IGEua2V5IDwgYi5rZXkgPyAtMSA6IGEua2V5ID4gYi5rZXkgPyAxIDogMDtcbmNsYXNzIFNjaGVtYSB7XG4gICAgY29uc3RydWN0b3IoeyBjb21wYXQsIGN1c3RvbVRhZ3MsIG1lcmdlLCByZXNvbHZlS25vd25UYWdzLCBzY2hlbWEsIHNvcnRNYXBFbnRyaWVzLCB0b1N0cmluZ0RlZmF1bHRzIH0pIHtcbiAgICAgICAgdGhpcy5jb21wYXQgPSBBcnJheS5pc0FycmF5KGNvbXBhdClcbiAgICAgICAgICAgID8gdGFncy5nZXRUYWdzKGNvbXBhdCwgJ2NvbXBhdCcpXG4gICAgICAgICAgICA6IGNvbXBhdFxuICAgICAgICAgICAgICAgID8gdGFncy5nZXRUYWdzKG51bGwsIGNvbXBhdClcbiAgICAgICAgICAgICAgICA6IG51bGw7XG4gICAgICAgIHRoaXMubmFtZSA9ICh0eXBlb2Ygc2NoZW1hID09PSAnc3RyaW5nJyAmJiBzY2hlbWEpIHx8ICdjb3JlJztcbiAgICAgICAgdGhpcy5rbm93blRhZ3MgPSByZXNvbHZlS25vd25UYWdzID8gdGFncy5jb3JlS25vd25UYWdzIDoge307XG4gICAgICAgIHRoaXMudGFncyA9IHRhZ3MuZ2V0VGFncyhjdXN0b21UYWdzLCB0aGlzLm5hbWUsIG1lcmdlKTtcbiAgICAgICAgdGhpcy50b1N0cmluZ09wdGlvbnMgPSB0b1N0cmluZ0RlZmF1bHRzID8/IG51bGw7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBpZGVudGl0eS5NQVAsIHsgdmFsdWU6IG1hcC5tYXAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBpZGVudGl0eS5TQ0FMQVIsIHsgdmFsdWU6IHN0cmluZy5zdHJpbmcgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBpZGVudGl0eS5TRVEsIHsgdmFsdWU6IHNlcS5zZXEgfSk7XG4gICAgICAgIC8vIFVzZWQgYnkgY3JlYXRlTWFwKClcbiAgICAgICAgdGhpcy5zb3J0TWFwRW50cmllcyA9XG4gICAgICAgICAgICB0eXBlb2Ygc29ydE1hcEVudHJpZXMgPT09ICdmdW5jdGlvbidcbiAgICAgICAgICAgICAgICA/IHNvcnRNYXBFbnRyaWVzXG4gICAgICAgICAgICAgICAgOiBzb3J0TWFwRW50cmllcyA9PT0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICA/IHNvcnRNYXBFbnRyaWVzQnlLZXlcbiAgICAgICAgICAgICAgICAgICAgOiBudWxsO1xuICAgIH1cbiAgICBjbG9uZSgpIHtcbiAgICAgICAgY29uc3QgY29weSA9IE9iamVjdC5jcmVhdGUoU2NoZW1hLnByb3RvdHlwZSwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnModGhpcykpO1xuICAgICAgICBjb3B5LnRhZ3MgPSB0aGlzLnRhZ3Muc2xpY2UoKTtcbiAgICAgICAgcmV0dXJuIGNvcHk7XG4gICAgfVxufVxuXG5leHBvcnRzLlNjaGVtYSA9IFNjaGVtYTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgc3RyaW5naWZ5ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnkuanMnKTtcbnZhciBzdHJpbmdpZnlDb21tZW50ID0gcmVxdWlyZSgnLi9zdHJpbmdpZnlDb21tZW50LmpzJyk7XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeURvY3VtZW50KGRvYywgb3B0aW9ucykge1xuICAgIGNvbnN0IGxpbmVzID0gW107XG4gICAgbGV0IGhhc0RpcmVjdGl2ZXMgPSBvcHRpb25zLmRpcmVjdGl2ZXMgPT09IHRydWU7XG4gICAgaWYgKG9wdGlvbnMuZGlyZWN0aXZlcyAhPT0gZmFsc2UgJiYgZG9jLmRpcmVjdGl2ZXMpIHtcbiAgICAgICAgY29uc3QgZGlyID0gZG9jLmRpcmVjdGl2ZXMudG9TdHJpbmcoZG9jKTtcbiAgICAgICAgaWYgKGRpcikge1xuICAgICAgICAgICAgbGluZXMucHVzaChkaXIpO1xuICAgICAgICAgICAgaGFzRGlyZWN0aXZlcyA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQpXG4gICAgICAgICAgICBoYXNEaXJlY3RpdmVzID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKGhhc0RpcmVjdGl2ZXMpXG4gICAgICAgIGxpbmVzLnB1c2goJy0tLScpO1xuICAgIGNvbnN0IGN0eCA9IHN0cmluZ2lmeS5jcmVhdGVTdHJpbmdpZnlDb250ZXh0KGRvYywgb3B0aW9ucyk7XG4gICAgY29uc3QgeyBjb21tZW50U3RyaW5nIH0gPSBjdHgub3B0aW9ucztcbiAgICBpZiAoZG9jLmNvbW1lbnRCZWZvcmUpIHtcbiAgICAgICAgaWYgKGxpbmVzLmxlbmd0aCAhPT0gMSlcbiAgICAgICAgICAgIGxpbmVzLnVuc2hpZnQoJycpO1xuICAgICAgICBjb25zdCBjcyA9IGNvbW1lbnRTdHJpbmcoZG9jLmNvbW1lbnRCZWZvcmUpO1xuICAgICAgICBsaW5lcy51bnNoaWZ0KHN0cmluZ2lmeUNvbW1lbnQuaW5kZW50Q29tbWVudChjcywgJycpKTtcbiAgICB9XG4gICAgbGV0IGNob21wS2VlcCA9IGZhbHNlO1xuICAgIGxldCBjb250ZW50Q29tbWVudCA9IG51bGw7XG4gICAgaWYgKGRvYy5jb250ZW50cykge1xuICAgICAgICBpZiAoaWRlbnRpdHkuaXNOb2RlKGRvYy5jb250ZW50cykpIHtcbiAgICAgICAgICAgIGlmIChkb2MuY29udGVudHMuc3BhY2VCZWZvcmUgJiYgaGFzRGlyZWN0aXZlcylcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcnKTtcbiAgICAgICAgICAgIGlmIChkb2MuY29udGVudHMuY29tbWVudEJlZm9yZSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNzID0gY29tbWVudFN0cmluZyhkb2MuY29udGVudHMuY29tbWVudEJlZm9yZSk7XG4gICAgICAgICAgICAgICAgbGluZXMucHVzaChzdHJpbmdpZnlDb21tZW50LmluZGVudENvbW1lbnQoY3MsICcnKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyB0b3AtbGV2ZWwgYmxvY2sgc2NhbGFycyBuZWVkIHRvIGJlIGluZGVudGVkIGlmIGZvbGxvd2VkIGJ5IGEgY29tbWVudFxuICAgICAgICAgICAgY3R4LmZvcmNlQmxvY2tJbmRlbnQgPSAhIWRvYy5jb21tZW50O1xuICAgICAgICAgICAgY29udGVudENvbW1lbnQgPSBkb2MuY29udGVudHMuY29tbWVudDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvbkNob21wS2VlcCA9IGNvbnRlbnRDb21tZW50ID8gdW5kZWZpbmVkIDogKCkgPT4gKGNob21wS2VlcCA9IHRydWUpO1xuICAgICAgICBsZXQgYm9keSA9IHN0cmluZ2lmeS5zdHJpbmdpZnkoZG9jLmNvbnRlbnRzLCBjdHgsICgpID0+IChjb250ZW50Q29tbWVudCA9IG51bGwpLCBvbkNob21wS2VlcCk7XG4gICAgICAgIGlmIChjb250ZW50Q29tbWVudClcbiAgICAgICAgICAgIGJvZHkgKz0gc3RyaW5naWZ5Q29tbWVudC5saW5lQ29tbWVudChib2R5LCAnJywgY29tbWVudFN0cmluZyhjb250ZW50Q29tbWVudCkpO1xuICAgICAgICBpZiAoKGJvZHlbMF0gPT09ICd8JyB8fCBib2R5WzBdID09PSAnPicpICYmXG4gICAgICAgICAgICBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXSA9PT0gJy0tLScpIHtcbiAgICAgICAgICAgIC8vIFRvcC1sZXZlbCBibG9jayBzY2FsYXJzIHdpdGggYSBwcmVjZWRpbmcgZG9jIG1hcmtlciBvdWdodCB0byB1c2UgdGhlXG4gICAgICAgICAgICAvLyBzYW1lIGxpbmUgZm9yIHRoZWlyIGhlYWRlci5cbiAgICAgICAgICAgIGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdID0gYC0tLSAke2JvZHl9YDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlXG4gICAgICAgICAgICBsaW5lcy5wdXNoKGJvZHkpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgbGluZXMucHVzaChzdHJpbmdpZnkuc3RyaW5naWZ5KGRvYy5jb250ZW50cywgY3R4KSk7XG4gICAgfVxuICAgIGlmIChkb2MuZGlyZWN0aXZlcz8uZG9jRW5kKSB7XG4gICAgICAgIGlmIChkb2MuY29tbWVudCkge1xuICAgICAgICAgICAgY29uc3QgY3MgPSBjb21tZW50U3RyaW5nKGRvYy5jb21tZW50KTtcbiAgICAgICAgICAgIGlmIChjcy5pbmNsdWRlcygnXFxuJykpIHtcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcuLi4nKTtcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKHN0cmluZ2lmeUNvbW1lbnQuaW5kZW50Q29tbWVudChjcywgJycpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGxpbmVzLnB1c2goYC4uLiAke2NzfWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGluZXMucHVzaCgnLi4uJyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGxldCBkYyA9IGRvYy5jb21tZW50O1xuICAgICAgICBpZiAoZGMgJiYgY2hvbXBLZWVwKVxuICAgICAgICAgICAgZGMgPSBkYy5yZXBsYWNlKC9eXFxuKy8sICcnKTtcbiAgICAgICAgaWYgKGRjKSB7XG4gICAgICAgICAgICBpZiAoKCFjaG9tcEtlZXAgfHwgY29udGVudENvbW1lbnQpICYmIGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdICE9PSAnJylcbiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCcnKTtcbiAgICAgICAgICAgIGxpbmVzLnB1c2goc3RyaW5naWZ5Q29tbWVudC5pbmRlbnRDb21tZW50KGNvbW1lbnRTdHJpbmcoZGMpLCAnJykpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBsaW5lcy5qb2luKCdcXG4nKSArICdcXG4nO1xufVxuXG5leHBvcnRzLnN0cmluZ2lmeURvY3VtZW50ID0gc3RyaW5naWZ5RG9jdW1lbnQ7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgQWxpYXMgPSByZXF1aXJlKCcuLi9ub2Rlcy9BbGlhcy5qcycpO1xudmFyIENvbGxlY3Rpb24gPSByZXF1aXJlKCcuLi9ub2Rlcy9Db2xsZWN0aW9uLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xudmFyIFBhaXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgdG9KUyA9IHJlcXVpcmUoJy4uL25vZGVzL3RvSlMuanMnKTtcbnZhciBTY2hlbWEgPSByZXF1aXJlKCcuLi9zY2hlbWEvU2NoZW1hLmpzJyk7XG52YXIgc3RyaW5naWZ5RG9jdW1lbnQgPSByZXF1aXJlKCcuLi9zdHJpbmdpZnkvc3RyaW5naWZ5RG9jdW1lbnQuanMnKTtcbnZhciBhbmNob3JzID0gcmVxdWlyZSgnLi9hbmNob3JzLmpzJyk7XG52YXIgYXBwbHlSZXZpdmVyID0gcmVxdWlyZSgnLi9hcHBseVJldml2ZXIuanMnKTtcbnZhciBjcmVhdGVOb2RlID0gcmVxdWlyZSgnLi9jcmVhdGVOb2RlLmpzJyk7XG52YXIgZGlyZWN0aXZlcyA9IHJlcXVpcmUoJy4vZGlyZWN0aXZlcy5qcycpO1xuXG5jbGFzcyBEb2N1bWVudCB7XG4gICAgY29uc3RydWN0b3IodmFsdWUsIHJlcGxhY2VyLCBvcHRpb25zKSB7XG4gICAgICAgIC8qKiBBIGNvbW1lbnQgYmVmb3JlIHRoaXMgRG9jdW1lbnQgKi9cbiAgICAgICAgdGhpcy5jb21tZW50QmVmb3JlID0gbnVsbDtcbiAgICAgICAgLyoqIEEgY29tbWVudCBpbW1lZGlhdGVseSBhZnRlciB0aGlzIERvY3VtZW50ICovXG4gICAgICAgIHRoaXMuY29tbWVudCA9IG51bGw7XG4gICAgICAgIC8qKiBFcnJvcnMgZW5jb3VudGVyZWQgZHVyaW5nIHBhcnNpbmcuICovXG4gICAgICAgIHRoaXMuZXJyb3JzID0gW107XG4gICAgICAgIC8qKiBXYXJuaW5ncyBlbmNvdW50ZXJlZCBkdXJpbmcgcGFyc2luZy4gKi9cbiAgICAgICAgdGhpcy53YXJuaW5ncyA9IFtdO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgaWRlbnRpdHkuTk9ERV9UWVBFLCB7IHZhbHVlOiBpZGVudGl0eS5ET0MgfSk7XG4gICAgICAgIGxldCBfcmVwbGFjZXIgPSBudWxsO1xuICAgICAgICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAnZnVuY3Rpb24nIHx8IEFycmF5LmlzQXJyYXkocmVwbGFjZXIpKSB7XG4gICAgICAgICAgICBfcmVwbGFjZXIgPSByZXBsYWNlcjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChvcHRpb25zID09PSB1bmRlZmluZWQgJiYgcmVwbGFjZXIpIHtcbiAgICAgICAgICAgIG9wdGlvbnMgPSByZXBsYWNlcjtcbiAgICAgICAgICAgIHJlcGxhY2VyID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9wdCA9IE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAgICAgaW50QXNCaWdJbnQ6IGZhbHNlLFxuICAgICAgICAgICAga2VlcFNvdXJjZVRva2VuczogZmFsc2UsXG4gICAgICAgICAgICBsb2dMZXZlbDogJ3dhcm4nLFxuICAgICAgICAgICAgcHJldHR5RXJyb3JzOiB0cnVlLFxuICAgICAgICAgICAgc3RyaWN0OiB0cnVlLFxuICAgICAgICAgICAgc3RyaW5nS2V5czogZmFsc2UsXG4gICAgICAgICAgICB1bmlxdWVLZXlzOiB0cnVlLFxuICAgICAgICAgICAgdmVyc2lvbjogJzEuMidcbiAgICAgICAgfSwgb3B0aW9ucyk7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdDtcbiAgICAgICAgbGV0IHsgdmVyc2lvbiB9ID0gb3B0O1xuICAgICAgICBpZiAob3B0aW9ucz8uX2RpcmVjdGl2ZXMpIHtcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlcyA9IG9wdGlvbnMuX2RpcmVjdGl2ZXMuYXREb2N1bWVudCgpO1xuICAgICAgICAgICAgaWYgKHRoaXMuZGlyZWN0aXZlcy55YW1sLmV4cGxpY2l0KVxuICAgICAgICAgICAgICAgIHZlcnNpb24gPSB0aGlzLmRpcmVjdGl2ZXMueWFtbC52ZXJzaW9uO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlcyA9IG5ldyBkaXJlY3RpdmVzLkRpcmVjdGl2ZXMoeyB2ZXJzaW9uIH0pO1xuICAgICAgICB0aGlzLnNldFNjaGVtYSh2ZXJzaW9uLCBvcHRpb25zKTtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBXZSBjYW4ndCByZWFsbHkga25vdyB0aGF0IHRoaXMgbWF0Y2hlcyBDb250ZW50cy5cbiAgICAgICAgdGhpcy5jb250ZW50cyA9XG4gICAgICAgICAgICB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gbnVsbCA6IHRoaXMuY3JlYXRlTm9kZSh2YWx1ZSwgX3JlcGxhY2VyLCBvcHRpb25zKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGEgZGVlcCBjb3B5IG9mIHRoaXMgRG9jdW1lbnQgYW5kIGl0cyBjb250ZW50cy5cbiAgICAgKlxuICAgICAqIEN1c3RvbSBOb2RlIHZhbHVlcyB0aGF0IGluaGVyaXQgZnJvbSBgT2JqZWN0YCBzdGlsbCByZWZlciB0byB0aGVpciBvcmlnaW5hbCBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgY2xvbmUoKSB7XG4gICAgICAgIGNvbnN0IGNvcHkgPSBPYmplY3QuY3JlYXRlKERvY3VtZW50LnByb3RvdHlwZSwge1xuICAgICAgICAgICAgW2lkZW50aXR5Lk5PREVfVFlQRV06IHsgdmFsdWU6IGlkZW50aXR5LkRPQyB9XG4gICAgICAgIH0pO1xuICAgICAgICBjb3B5LmNvbW1lbnRCZWZvcmUgPSB0aGlzLmNvbW1lbnRCZWZvcmU7XG4gICAgICAgIGNvcHkuY29tbWVudCA9IHRoaXMuY29tbWVudDtcbiAgICAgICAgY29weS5lcnJvcnMgPSB0aGlzLmVycm9ycy5zbGljZSgpO1xuICAgICAgICBjb3B5Lndhcm5pbmdzID0gdGhpcy53YXJuaW5ncy5zbGljZSgpO1xuICAgICAgICBjb3B5Lm9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLm9wdGlvbnMpO1xuICAgICAgICBpZiAodGhpcy5kaXJlY3RpdmVzKVxuICAgICAgICAgICAgY29weS5kaXJlY3RpdmVzID0gdGhpcy5kaXJlY3RpdmVzLmNsb25lKCk7XG4gICAgICAgIGNvcHkuc2NoZW1hID0gdGhpcy5zY2hlbWEuY2xvbmUoKTtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBXZSBjYW4ndCByZWFsbHkga25vdyB0aGF0IHRoaXMgbWF0Y2hlcyBDb250ZW50cy5cbiAgICAgICAgY29weS5jb250ZW50cyA9IGlkZW50aXR5LmlzTm9kZSh0aGlzLmNvbnRlbnRzKVxuICAgICAgICAgICAgPyB0aGlzLmNvbnRlbnRzLmNsb25lKGNvcHkuc2NoZW1hKVxuICAgICAgICAgICAgOiB0aGlzLmNvbnRlbnRzO1xuICAgICAgICBpZiAodGhpcy5yYW5nZSlcbiAgICAgICAgICAgIGNvcHkucmFuZ2UgPSB0aGlzLnJhbmdlLnNsaWNlKCk7XG4gICAgICAgIHJldHVybiBjb3B5O1xuICAgIH1cbiAgICAvKiogQWRkcyBhIHZhbHVlIHRvIHRoZSBkb2N1bWVudC4gKi9cbiAgICBhZGQodmFsdWUpIHtcbiAgICAgICAgaWYgKGFzc2VydENvbGxlY3Rpb24odGhpcy5jb250ZW50cykpXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRzLmFkZCh2YWx1ZSk7XG4gICAgfVxuICAgIC8qKiBBZGRzIGEgdmFsdWUgdG8gdGhlIGRvY3VtZW50LiAqL1xuICAgIGFkZEluKHBhdGgsIHZhbHVlKSB7XG4gICAgICAgIGlmIChhc3NlcnRDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpKVxuICAgICAgICAgICAgdGhpcy5jb250ZW50cy5hZGRJbihwYXRoLCB2YWx1ZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG5ldyBgQWxpYXNgIG5vZGUsIGVuc3VyaW5nIHRoYXQgdGhlIHRhcmdldCBgbm9kZWAgaGFzIHRoZSByZXF1aXJlZCBhbmNob3IuXG4gICAgICpcbiAgICAgKiBJZiBgbm9kZWAgYWxyZWFkeSBoYXMgYW4gYW5jaG9yLCBgbmFtZWAgaXMgaWdub3JlZC5cbiAgICAgKiBPdGhlcndpc2UsIHRoZSBgbm9kZS5hbmNob3JgIHZhbHVlIHdpbGwgYmUgc2V0IHRvIGBuYW1lYCxcbiAgICAgKiBvciBpZiBhbiBhbmNob3Igd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBwcmVzZW50IGluIHRoZSBkb2N1bWVudCxcbiAgICAgKiBgbmFtZWAgd2lsbCBiZSB1c2VkIGFzIGEgcHJlZml4IGZvciBhIG5ldyB1bmlxdWUgYW5jaG9yLlxuICAgICAqIElmIGBuYW1lYCBpcyB1bmRlZmluZWQsIHRoZSBnZW5lcmF0ZWQgYW5jaG9yIHdpbGwgdXNlICdhJyBhcyBhIHByZWZpeC5cbiAgICAgKi9cbiAgICBjcmVhdGVBbGlhcyhub2RlLCBuYW1lKSB7XG4gICAgICAgIGlmICghbm9kZS5hbmNob3IpIHtcbiAgICAgICAgICAgIGNvbnN0IHByZXYgPSBhbmNob3JzLmFuY2hvck5hbWVzKHRoaXMpO1xuICAgICAgICAgICAgbm9kZS5hbmNob3IgPVxuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLW51bGxpc2gtY29hbGVzY2luZ1xuICAgICAgICAgICAgICAgICFuYW1lIHx8IHByZXYuaGFzKG5hbWUpID8gYW5jaG9ycy5maW5kTmV3QW5jaG9yKG5hbWUgfHwgJ2EnLCBwcmV2KSA6IG5hbWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG5ldyBBbGlhcy5BbGlhcyhub2RlLmFuY2hvcik7XG4gICAgfVxuICAgIGNyZWF0ZU5vZGUodmFsdWUsIHJlcGxhY2VyLCBvcHRpb25zKSB7XG4gICAgICAgIGxldCBfcmVwbGFjZXIgPSB1bmRlZmluZWQ7XG4gICAgICAgIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHZhbHVlID0gcmVwbGFjZXIuY2FsbCh7ICcnOiB2YWx1ZSB9LCAnJywgdmFsdWUpO1xuICAgICAgICAgICAgX3JlcGxhY2VyID0gcmVwbGFjZXI7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoQXJyYXkuaXNBcnJheShyZXBsYWNlcikpIHtcbiAgICAgICAgICAgIGNvbnN0IGtleVRvU3RyID0gKHYpID0+IHR5cGVvZiB2ID09PSAnbnVtYmVyJyB8fCB2IGluc3RhbmNlb2YgU3RyaW5nIHx8IHYgaW5zdGFuY2VvZiBOdW1iZXI7XG4gICAgICAgICAgICBjb25zdCBhc1N0ciA9IHJlcGxhY2VyLmZpbHRlcihrZXlUb1N0cikubWFwKFN0cmluZyk7XG4gICAgICAgICAgICBpZiAoYXNTdHIubGVuZ3RoID4gMClcbiAgICAgICAgICAgICAgICByZXBsYWNlciA9IHJlcGxhY2VyLmNvbmNhdChhc1N0cik7XG4gICAgICAgICAgICBfcmVwbGFjZXIgPSByZXBsYWNlcjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChvcHRpb25zID09PSB1bmRlZmluZWQgJiYgcmVwbGFjZXIpIHtcbiAgICAgICAgICAgIG9wdGlvbnMgPSByZXBsYWNlcjtcbiAgICAgICAgICAgIHJlcGxhY2VyID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHsgYWxpYXNEdXBsaWNhdGVPYmplY3RzLCBhbmNob3JQcmVmaXgsIGZsb3csIGtlZXBVbmRlZmluZWQsIG9uVGFnT2JqLCB0YWcgfSA9IG9wdGlvbnMgPz8ge307XG4gICAgICAgIGNvbnN0IHsgb25BbmNob3IsIHNldEFuY2hvcnMsIHNvdXJjZU9iamVjdHMgfSA9IGFuY2hvcnMuY3JlYXRlTm9kZUFuY2hvcnModGhpcywgXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLW51bGxpc2gtY29hbGVzY2luZ1xuICAgICAgICBhbmNob3JQcmVmaXggfHwgJ2EnKTtcbiAgICAgICAgY29uc3QgY3R4ID0ge1xuICAgICAgICAgICAgYWxpYXNEdXBsaWNhdGVPYmplY3RzOiBhbGlhc0R1cGxpY2F0ZU9iamVjdHMgPz8gdHJ1ZSxcbiAgICAgICAgICAgIGtlZXBVbmRlZmluZWQ6IGtlZXBVbmRlZmluZWQgPz8gZmFsc2UsXG4gICAgICAgICAgICBvbkFuY2hvcixcbiAgICAgICAgICAgIG9uVGFnT2JqLFxuICAgICAgICAgICAgcmVwbGFjZXI6IF9yZXBsYWNlcixcbiAgICAgICAgICAgIHNjaGVtYTogdGhpcy5zY2hlbWEsXG4gICAgICAgICAgICBzb3VyY2VPYmplY3RzXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG5vZGUgPSBjcmVhdGVOb2RlLmNyZWF0ZU5vZGUodmFsdWUsIHRhZywgY3R4KTtcbiAgICAgICAgaWYgKGZsb3cgJiYgaWRlbnRpdHkuaXNDb2xsZWN0aW9uKG5vZGUpKVxuICAgICAgICAgICAgbm9kZS5mbG93ID0gdHJ1ZTtcbiAgICAgICAgc2V0QW5jaG9ycygpO1xuICAgICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ29udmVydCBhIGtleSBhbmQgYSB2YWx1ZSBpbnRvIGEgYFBhaXJgIHVzaW5nIHRoZSBjdXJyZW50IHNjaGVtYSxcbiAgICAgKiByZWN1cnNpdmVseSB3cmFwcGluZyBhbGwgdmFsdWVzIGFzIGBTY2FsYXJgIG9yIGBDb2xsZWN0aW9uYCBub2Rlcy5cbiAgICAgKi9cbiAgICBjcmVhdGVQYWlyKGtleSwgdmFsdWUsIG9wdGlvbnMgPSB7fSkge1xuICAgICAgICBjb25zdCBrID0gdGhpcy5jcmVhdGVOb2RlKGtleSwgbnVsbCwgb3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHYgPSB0aGlzLmNyZWF0ZU5vZGUodmFsdWUsIG51bGwsIG9wdGlvbnMpO1xuICAgICAgICByZXR1cm4gbmV3IFBhaXIuUGFpcihrLCB2KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGRvY3VtZW50LlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgaXRlbSB3YXMgZm91bmQgYW5kIHJlbW92ZWQuXG4gICAgICovXG4gICAgZGVsZXRlKGtleSkge1xuICAgICAgICByZXR1cm4gYXNzZXJ0Q29sbGVjdGlvbih0aGlzLmNvbnRlbnRzKSA/IHRoaXMuY29udGVudHMuZGVsZXRlKGtleSkgOiBmYWxzZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVtb3ZlcyBhIHZhbHVlIGZyb20gdGhlIGRvY3VtZW50LlxuICAgICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgaXRlbSB3YXMgZm91bmQgYW5kIHJlbW92ZWQuXG4gICAgICovXG4gICAgZGVsZXRlSW4ocGF0aCkge1xuICAgICAgICBpZiAoQ29sbGVjdGlvbi5pc0VtcHR5UGF0aChwYXRoKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udGVudHMgPT0gbnVsbClcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFByZXN1bWVkIGltcG9zc2libGUgaWYgU3RyaWN0IGV4dGVuZHMgZmFsc2VcbiAgICAgICAgICAgIHRoaXMuY29udGVudHMgPSBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFzc2VydENvbGxlY3Rpb24odGhpcy5jb250ZW50cylcbiAgICAgICAgICAgID8gdGhpcy5jb250ZW50cy5kZWxldGVJbihwYXRoKVxuICAgICAgICAgICAgOiBmYWxzZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBpdGVtIGF0IGBrZXlgLCBvciBgdW5kZWZpbmVkYCBpZiBub3QgZm91bmQuIEJ5IGRlZmF1bHQgdW53cmFwc1xuICAgICAqIHNjYWxhciB2YWx1ZXMgZnJvbSB0aGVpciBzdXJyb3VuZGluZyBub2RlOyB0byBkaXNhYmxlIHNldCBga2VlcFNjYWxhcmAgdG9cbiAgICAgKiBgdHJ1ZWAgKGNvbGxlY3Rpb25zIGFyZSBhbHdheXMgcmV0dXJuZWQgaW50YWN0KS5cbiAgICAgKi9cbiAgICBnZXQoa2V5LCBrZWVwU2NhbGFyKSB7XG4gICAgICAgIHJldHVybiBpZGVudGl0eS5pc0NvbGxlY3Rpb24odGhpcy5jb250ZW50cylcbiAgICAgICAgICAgID8gdGhpcy5jb250ZW50cy5nZXQoa2V5LCBrZWVwU2NhbGFyKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgaXRlbSBhdCBgcGF0aGAsIG9yIGB1bmRlZmluZWRgIGlmIG5vdCBmb3VuZC4gQnkgZGVmYXVsdCB1bndyYXBzXG4gICAgICogc2NhbGFyIHZhbHVlcyBmcm9tIHRoZWlyIHN1cnJvdW5kaW5nIG5vZGU7IHRvIGRpc2FibGUgc2V0IGBrZWVwU2NhbGFyYCB0b1xuICAgICAqIGB0cnVlYCAoY29sbGVjdGlvbnMgYXJlIGFsd2F5cyByZXR1cm5lZCBpbnRhY3QpLlxuICAgICAqL1xuICAgIGdldEluKHBhdGgsIGtlZXBTY2FsYXIpIHtcbiAgICAgICAgaWYgKENvbGxlY3Rpb24uaXNFbXB0eVBhdGgocGF0aCkpXG4gICAgICAgICAgICByZXR1cm4gIWtlZXBTY2FsYXIgJiYgaWRlbnRpdHkuaXNTY2FsYXIodGhpcy5jb250ZW50cylcbiAgICAgICAgICAgICAgICA/IHRoaXMuY29udGVudHMudmFsdWVcbiAgICAgICAgICAgICAgICA6IHRoaXMuY29udGVudHM7XG4gICAgICAgIHJldHVybiBpZGVudGl0eS5pc0NvbGxlY3Rpb24odGhpcy5jb250ZW50cylcbiAgICAgICAgICAgID8gdGhpcy5jb250ZW50cy5nZXRJbihwYXRoLCBrZWVwU2NhbGFyKVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGUgZG9jdW1lbnQgaW5jbHVkZXMgYSB2YWx1ZSB3aXRoIHRoZSBrZXkgYGtleWAuXG4gICAgICovXG4gICAgaGFzKGtleSkge1xuICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpID8gdGhpcy5jb250ZW50cy5oYXMoa2V5KSA6IGZhbHNlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGhlIGRvY3VtZW50IGluY2x1ZGVzIGEgdmFsdWUgYXQgYHBhdGhgLlxuICAgICAqL1xuICAgIGhhc0luKHBhdGgpIHtcbiAgICAgICAgaWYgKENvbGxlY3Rpb24uaXNFbXB0eVBhdGgocGF0aCkpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50cyAhPT0gdW5kZWZpbmVkO1xuICAgICAgICByZXR1cm4gaWRlbnRpdHkuaXNDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpID8gdGhpcy5jb250ZW50cy5oYXNJbihwYXRoKSA6IGZhbHNlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBkb2N1bWVudC4gRm9yIGAhIXNldGAsIGB2YWx1ZWAgbmVlZHMgdG8gYmUgYVxuICAgICAqIGJvb2xlYW4gdG8gYWRkL3JlbW92ZSB0aGUgaXRlbSBmcm9tIHRoZSBzZXQuXG4gICAgICovXG4gICAgc2V0KGtleSwgdmFsdWUpIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudHMgPT0gbnVsbCkge1xuICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBXZSBjYW4ndCByZWFsbHkga25vdyB0aGF0IHRoaXMgbWF0Y2hlcyBDb250ZW50cy5cbiAgICAgICAgICAgIHRoaXMuY29udGVudHMgPSBDb2xsZWN0aW9uLmNvbGxlY3Rpb25Gcm9tUGF0aCh0aGlzLnNjaGVtYSwgW2tleV0sIHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChhc3NlcnRDb2xsZWN0aW9uKHRoaXMuY29udGVudHMpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRzLnNldChrZXksIHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXRzIGEgdmFsdWUgaW4gdGhpcyBkb2N1bWVudC4gRm9yIGAhIXNldGAsIGB2YWx1ZWAgbmVlZHMgdG8gYmUgYVxuICAgICAqIGJvb2xlYW4gdG8gYWRkL3JlbW92ZSB0aGUgaXRlbSBmcm9tIHRoZSBzZXQuXG4gICAgICovXG4gICAgc2V0SW4ocGF0aCwgdmFsdWUpIHtcbiAgICAgICAgaWYgKENvbGxlY3Rpb24uaXNFbXB0eVBhdGgocGF0aCkpIHtcbiAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgV2UgY2FuJ3QgcmVhbGx5IGtub3cgdGhhdCB0aGlzIG1hdGNoZXMgQ29udGVudHMuXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRzID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodGhpcy5jb250ZW50cyA9PSBudWxsKSB7XG4gICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFdlIGNhbid0IHJlYWxseSBrbm93IHRoYXQgdGhpcyBtYXRjaGVzIENvbnRlbnRzLlxuICAgICAgICAgICAgdGhpcy5jb250ZW50cyA9IENvbGxlY3Rpb24uY29sbGVjdGlvbkZyb21QYXRoKHRoaXMuc2NoZW1hLCBBcnJheS5mcm9tKHBhdGgpLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYXNzZXJ0Q29sbGVjdGlvbih0aGlzLmNvbnRlbnRzKSkge1xuICAgICAgICAgICAgdGhpcy5jb250ZW50cy5zZXRJbihwYXRoLCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBZQU1MIHZlcnNpb24gYW5kIHNjaGVtYSB1c2VkIGJ5IHRoZSBkb2N1bWVudC5cbiAgICAgKiBBIGBudWxsYCB2ZXJzaW9uIGRpc2FibGVzIHN1cHBvcnQgZm9yIGRpcmVjdGl2ZXMsIGV4cGxpY2l0IHRhZ3MsIGFuY2hvcnMsIGFuZCBhbGlhc2VzLlxuICAgICAqIEl0IGFsc28gcmVxdWlyZXMgdGhlIGBzY2hlbWFgIG9wdGlvbiB0byBiZSBnaXZlbiBhcyBhIGBTY2hlbWFgIGluc3RhbmNlIHZhbHVlLlxuICAgICAqXG4gICAgICogT3ZlcnJpZGVzIGFsbCBwcmV2aW91c2x5IHNldCBzY2hlbWEgb3B0aW9ucy5cbiAgICAgKi9cbiAgICBzZXRTY2hlbWEodmVyc2lvbiwgb3B0aW9ucyA9IHt9KSB7XG4gICAgICAgIGlmICh0eXBlb2YgdmVyc2lvbiA9PT0gJ251bWJlcicpXG4gICAgICAgICAgICB2ZXJzaW9uID0gU3RyaW5nKHZlcnNpb24pO1xuICAgICAgICBsZXQgb3B0O1xuICAgICAgICBzd2l0Y2ggKHZlcnNpb24pIHtcbiAgICAgICAgICAgIGNhc2UgJzEuMSc6XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGlyZWN0aXZlcylcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVzLnlhbWwudmVyc2lvbiA9ICcxLjEnO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVzID0gbmV3IGRpcmVjdGl2ZXMuRGlyZWN0aXZlcyh7IHZlcnNpb246ICcxLjEnIH0pO1xuICAgICAgICAgICAgICAgIG9wdCA9IHsgcmVzb2x2ZUtub3duVGFnczogZmFsc2UsIHNjaGVtYTogJ3lhbWwtMS4xJyB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnMS4yJzpcbiAgICAgICAgICAgIGNhc2UgJ25leHQnOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRpcmVjdGl2ZXMpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlcy55YW1sLnZlcnNpb24gPSB2ZXJzaW9uO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVzID0gbmV3IGRpcmVjdGl2ZXMuRGlyZWN0aXZlcyh7IHZlcnNpb24gfSk7XG4gICAgICAgICAgICAgICAgb3B0ID0geyByZXNvbHZlS25vd25UYWdzOiB0cnVlLCBzY2hlbWE6ICdjb3JlJyB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBudWxsOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRpcmVjdGl2ZXMpXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmRpcmVjdGl2ZXM7XG4gICAgICAgICAgICAgICAgb3B0ID0gbnVsbDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdiA9IEpTT04uc3RyaW5naWZ5KHZlcnNpb24pO1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgJzEuMScsICcxLjInIG9yIG51bGwgYXMgZmlyc3QgYXJndW1lbnQsIGJ1dCBmb3VuZDogJHtzdn1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBOb3QgdXNpbmcgYGluc3RhbmNlb2YgU2NoZW1hYCB0byBhbGxvdyBmb3IgZHVjayB0eXBpbmdcbiAgICAgICAgaWYgKG9wdGlvbnMuc2NoZW1hIGluc3RhbmNlb2YgT2JqZWN0KVxuICAgICAgICAgICAgdGhpcy5zY2hlbWEgPSBvcHRpb25zLnNjaGVtYTtcbiAgICAgICAgZWxzZSBpZiAob3B0KVxuICAgICAgICAgICAgdGhpcy5zY2hlbWEgPSBuZXcgU2NoZW1hLlNjaGVtYShPYmplY3QuYXNzaWduKG9wdCwgb3B0aW9ucykpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFdpdGggYSBudWxsIFlBTUwgdmVyc2lvbiwgdGhlIHsgc2NoZW1hOiBTY2hlbWEgfSBvcHRpb24gaXMgcmVxdWlyZWRgKTtcbiAgICB9XG4gICAgLy8ganNvbiAmIGpzb25BcmcgYXJlIG9ubHkgdXNlZCBmcm9tIHRvSlNPTigpXG4gICAgdG9KUyh7IGpzb24sIGpzb25BcmcsIG1hcEFzTWFwLCBtYXhBbGlhc0NvdW50LCBvbkFuY2hvciwgcmV2aXZlciB9ID0ge30pIHtcbiAgICAgICAgY29uc3QgY3R4ID0ge1xuICAgICAgICAgICAgYW5jaG9yczogbmV3IE1hcCgpLFxuICAgICAgICAgICAgZG9jOiB0aGlzLFxuICAgICAgICAgICAga2VlcDogIWpzb24sXG4gICAgICAgICAgICBtYXBBc01hcDogbWFwQXNNYXAgPT09IHRydWUsXG4gICAgICAgICAgICBtYXBLZXlXYXJuZWQ6IGZhbHNlLFxuICAgICAgICAgICAgbWF4QWxpYXNDb3VudDogdHlwZW9mIG1heEFsaWFzQ291bnQgPT09ICdudW1iZXInID8gbWF4QWxpYXNDb3VudCA6IDEwMFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCByZXMgPSB0b0pTLnRvSlModGhpcy5jb250ZW50cywganNvbkFyZyA/PyAnJywgY3R4KTtcbiAgICAgICAgaWYgKHR5cGVvZiBvbkFuY2hvciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgICAgIGZvciAoY29uc3QgeyBjb3VudCwgcmVzIH0gb2YgY3R4LmFuY2hvcnMudmFsdWVzKCkpXG4gICAgICAgICAgICAgICAgb25BbmNob3IocmVzLCBjb3VudCk7XG4gICAgICAgIHJldHVybiB0eXBlb2YgcmV2aXZlciA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyBhcHBseVJldml2ZXIuYXBwbHlSZXZpdmVyKHJldml2ZXIsIHsgJyc6IHJlcyB9LCAnJywgcmVzKVxuICAgICAgICAgICAgOiByZXM7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEEgSlNPTiByZXByZXNlbnRhdGlvbiBvZiB0aGUgZG9jdW1lbnQgYGNvbnRlbnRzYC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBqc29uQXJnIFVzZWQgYnkgYEpTT04uc3RyaW5naWZ5YCB0byBpbmRpY2F0ZSB0aGUgYXJyYXkgaW5kZXggb3JcbiAgICAgKiAgIHByb3BlcnR5IG5hbWUuXG4gICAgICovXG4gICAgdG9KU09OKGpzb25BcmcsIG9uQW5jaG9yKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRvSlMoeyBqc29uOiB0cnVlLCBqc29uQXJnLCBtYXBBc01hcDogZmFsc2UsIG9uQW5jaG9yIH0pO1xuICAgIH1cbiAgICAvKiogQSBZQU1MIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkb2N1bWVudC4gKi9cbiAgICB0b1N0cmluZyhvcHRpb25zID0ge30pIHtcbiAgICAgICAgaWYgKHRoaXMuZXJyb3JzLmxlbmd0aCA+IDApXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RvY3VtZW50IHdpdGggZXJyb3JzIGNhbm5vdCBiZSBzdHJpbmdpZmllZCcpO1xuICAgICAgICBpZiAoJ2luZGVudCcgaW4gb3B0aW9ucyAmJlxuICAgICAgICAgICAgKCFOdW1iZXIuaXNJbnRlZ2VyKG9wdGlvbnMuaW5kZW50KSB8fCBOdW1iZXIob3B0aW9ucy5pbmRlbnQpIDw9IDApKSB7XG4gICAgICAgICAgICBjb25zdCBzID0gSlNPTi5zdHJpbmdpZnkob3B0aW9ucy5pbmRlbnQpO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBcImluZGVudFwiIG9wdGlvbiBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlciwgbm90ICR7c31gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3RyaW5naWZ5RG9jdW1lbnQuc3RyaW5naWZ5RG9jdW1lbnQodGhpcywgb3B0aW9ucyk7XG4gICAgfVxufVxuZnVuY3Rpb24gYXNzZXJ0Q29sbGVjdGlvbihjb250ZW50cykge1xuICAgIGlmIChpZGVudGl0eS5pc0NvbGxlY3Rpb24oY29udGVudHMpKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4cGVjdGVkIGEgWUFNTCBjb2xsZWN0aW9uIGFzIGRvY3VtZW50IGNvbnRlbnRzJyk7XG59XG5cbmV4cG9ydHMuRG9jdW1lbnQgPSBEb2N1bWVudDtcbiIsICIndXNlIHN0cmljdCc7XG5cbmNsYXNzIFlBTUxFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBjb25zdHJ1Y3RvcihuYW1lLCBwb3MsIGNvZGUsIG1lc3NhZ2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgdGhpcy5jb2RlID0gY29kZTtcbiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTtcbiAgICAgICAgdGhpcy5wb3MgPSBwb3M7XG4gICAgfVxufVxuY2xhc3MgWUFNTFBhcnNlRXJyb3IgZXh0ZW5kcyBZQU1MRXJyb3Ige1xuICAgIGNvbnN0cnVjdG9yKHBvcywgY29kZSwgbWVzc2FnZSkge1xuICAgICAgICBzdXBlcignWUFNTFBhcnNlRXJyb3InLCBwb3MsIGNvZGUsIG1lc3NhZ2UpO1xuICAgIH1cbn1cbmNsYXNzIFlBTUxXYXJuaW5nIGV4dGVuZHMgWUFNTEVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcihwb3MsIGNvZGUsIG1lc3NhZ2UpIHtcbiAgICAgICAgc3VwZXIoJ1lBTUxXYXJuaW5nJywgcG9zLCBjb2RlLCBtZXNzYWdlKTtcbiAgICB9XG59XG5jb25zdCBwcmV0dGlmeUVycm9yID0gKHNyYywgbGMpID0+IChlcnJvcikgPT4ge1xuICAgIGlmIChlcnJvci5wb3NbMF0gPT09IC0xKVxuICAgICAgICByZXR1cm47XG4gICAgZXJyb3IubGluZVBvcyA9IGVycm9yLnBvcy5tYXAocG9zID0+IGxjLmxpbmVQb3MocG9zKSk7XG4gICAgY29uc3QgeyBsaW5lLCBjb2wgfSA9IGVycm9yLmxpbmVQb3NbMF07XG4gICAgZXJyb3IubWVzc2FnZSArPSBgIGF0IGxpbmUgJHtsaW5lfSwgY29sdW1uICR7Y29sfWA7XG4gICAgbGV0IGNpID0gY29sIC0gMTtcbiAgICBsZXQgbGluZVN0ciA9IHNyY1xuICAgICAgICAuc3Vic3RyaW5nKGxjLmxpbmVTdGFydHNbbGluZSAtIDFdLCBsYy5saW5lU3RhcnRzW2xpbmVdKVxuICAgICAgICAucmVwbGFjZSgvW1xcblxccl0rJC8sICcnKTtcbiAgICAvLyBUcmltIHRvIG1heCA4MCBjaGFycywga2VlcGluZyBjb2wgcG9zaXRpb24gbmVhciB0aGUgbWlkZGxlXG4gICAgaWYgKGNpID49IDYwICYmIGxpbmVTdHIubGVuZ3RoID4gODApIHtcbiAgICAgICAgY29uc3QgdHJpbVN0YXJ0ID0gTWF0aC5taW4oY2kgLSAzOSwgbGluZVN0ci5sZW5ndGggLSA3OSk7XG4gICAgICAgIGxpbmVTdHIgPSAnXHUyMDI2JyArIGxpbmVTdHIuc3Vic3RyaW5nKHRyaW1TdGFydCk7XG4gICAgICAgIGNpIC09IHRyaW1TdGFydCAtIDE7XG4gICAgfVxuICAgIGlmIChsaW5lU3RyLmxlbmd0aCA+IDgwKVxuICAgICAgICBsaW5lU3RyID0gbGluZVN0ci5zdWJzdHJpbmcoMCwgNzkpICsgJ1x1MjAyNic7XG4gICAgLy8gSW5jbHVkZSBwcmV2aW91cyBsaW5lIGluIGNvbnRleHQgaWYgcG9pbnRpbmcgYXQgbGluZSBzdGFydFxuICAgIGlmIChsaW5lID4gMSAmJiAvXiAqJC8udGVzdChsaW5lU3RyLnN1YnN0cmluZygwLCBjaSkpKSB7XG4gICAgICAgIC8vIFJlZ2V4cCB3b24ndCBtYXRjaCBpZiBzdGFydCBpcyB0cmltbWVkXG4gICAgICAgIGxldCBwcmV2ID0gc3JjLnN1YnN0cmluZyhsYy5saW5lU3RhcnRzW2xpbmUgLSAyXSwgbGMubGluZVN0YXJ0c1tsaW5lIC0gMV0pO1xuICAgICAgICBpZiAocHJldi5sZW5ndGggPiA4MClcbiAgICAgICAgICAgIHByZXYgPSBwcmV2LnN1YnN0cmluZygwLCA3OSkgKyAnXHUyMDI2XFxuJztcbiAgICAgICAgbGluZVN0ciA9IHByZXYgKyBsaW5lU3RyO1xuICAgIH1cbiAgICBpZiAoL1teIF0vLnRlc3QobGluZVN0cikpIHtcbiAgICAgICAgbGV0IGNvdW50ID0gMTtcbiAgICAgICAgY29uc3QgZW5kID0gZXJyb3IubGluZVBvc1sxXTtcbiAgICAgICAgaWYgKGVuZCAmJiBlbmQubGluZSA9PT0gbGluZSAmJiBlbmQuY29sID4gY29sKSB7XG4gICAgICAgICAgICBjb3VudCA9IE1hdGgubWF4KDEsIE1hdGgubWluKGVuZC5jb2wgLSBjb2wsIDgwIC0gY2kpKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwb2ludGVyID0gJyAnLnJlcGVhdChjaSkgKyAnXicucmVwZWF0KGNvdW50KTtcbiAgICAgICAgZXJyb3IubWVzc2FnZSArPSBgOlxcblxcbiR7bGluZVN0cn1cXG4ke3BvaW50ZXJ9XFxuYDtcbiAgICB9XG59O1xuXG5leHBvcnRzLllBTUxFcnJvciA9IFlBTUxFcnJvcjtcbmV4cG9ydHMuWUFNTFBhcnNlRXJyb3IgPSBZQU1MUGFyc2VFcnJvcjtcbmV4cG9ydHMuWUFNTFdhcm5pbmcgPSBZQU1MV2FybmluZztcbmV4cG9ydHMucHJldHRpZnlFcnJvciA9IHByZXR0aWZ5RXJyb3I7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5mdW5jdGlvbiByZXNvbHZlUHJvcHModG9rZW5zLCB7IGZsb3csIGluZGljYXRvciwgbmV4dCwgb2Zmc2V0LCBvbkVycm9yLCBwYXJlbnRJbmRlbnQsIHN0YXJ0T25OZXdsaW5lIH0pIHtcbiAgICBsZXQgc3BhY2VCZWZvcmUgPSBmYWxzZTtcbiAgICBsZXQgYXROZXdsaW5lID0gc3RhcnRPbk5ld2xpbmU7XG4gICAgbGV0IGhhc1NwYWNlID0gc3RhcnRPbk5ld2xpbmU7XG4gICAgbGV0IGNvbW1lbnQgPSAnJztcbiAgICBsZXQgY29tbWVudFNlcCA9ICcnO1xuICAgIGxldCBoYXNOZXdsaW5lID0gZmFsc2U7XG4gICAgbGV0IHJlcVNwYWNlID0gZmFsc2U7XG4gICAgbGV0IHRhYiA9IG51bGw7XG4gICAgbGV0IGFuY2hvciA9IG51bGw7XG4gICAgbGV0IHRhZyA9IG51bGw7XG4gICAgbGV0IG5ld2xpbmVBZnRlclByb3AgPSBudWxsO1xuICAgIGxldCBjb21tYSA9IG51bGw7XG4gICAgbGV0IGZvdW5kID0gbnVsbDtcbiAgICBsZXQgc3RhcnQgPSBudWxsO1xuICAgIGZvciAoY29uc3QgdG9rZW4gb2YgdG9rZW5zKSB7XG4gICAgICAgIGlmIChyZXFTcGFjZSkge1xuICAgICAgICAgICAgaWYgKHRva2VuLnR5cGUgIT09ICdzcGFjZScgJiZcbiAgICAgICAgICAgICAgICB0b2tlbi50eXBlICE9PSAnbmV3bGluZScgJiZcbiAgICAgICAgICAgICAgICB0b2tlbi50eXBlICE9PSAnY29tbWEnKVxuICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4ub2Zmc2V0LCAnTUlTU0lOR19DSEFSJywgJ1RhZ3MgYW5kIGFuY2hvcnMgbXVzdCBiZSBzZXBhcmF0ZWQgZnJvbSB0aGUgbmV4dCB0b2tlbiBieSB3aGl0ZSBzcGFjZScpO1xuICAgICAgICAgICAgcmVxU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGFiKSB7XG4gICAgICAgICAgICBpZiAoYXROZXdsaW5lICYmIHRva2VuLnR5cGUgIT09ICdjb21tZW50JyAmJiB0b2tlbi50eXBlICE9PSAnbmV3bGluZScpIHtcbiAgICAgICAgICAgICAgICBvbkVycm9yKHRhYiwgJ1RBQl9BU19JTkRFTlQnLCAnVGFicyBhcmUgbm90IGFsbG93ZWQgYXMgaW5kZW50YXRpb24nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRhYiA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgc3dpdGNoICh0b2tlbi50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgLy8gQXQgdGhlIGRvYyBsZXZlbCwgdGFicyBhdCBsaW5lIHN0YXJ0IG1heSBiZSBwYXJzZWRcbiAgICAgICAgICAgICAgICAvLyBhcyBsZWFkaW5nIHdoaXRlIHNwYWNlIHJhdGhlciB0aGFuIGluZGVudGF0aW9uLlxuICAgICAgICAgICAgICAgIC8vIEluIGEgZmxvdyBjb2xsZWN0aW9uLCBvbmx5IHRoZSBwYXJzZXIgaGFuZGxlcyBpbmRlbnQuXG4gICAgICAgICAgICAgICAgaWYgKCFmbG93ICYmXG4gICAgICAgICAgICAgICAgICAgIChpbmRpY2F0b3IgIT09ICdkb2Mtc3RhcnQnIHx8IG5leHQ/LnR5cGUgIT09ICdmbG93LWNvbGxlY3Rpb24nKSAmJlxuICAgICAgICAgICAgICAgICAgICB0b2tlbi5zb3VyY2UuaW5jbHVkZXMoJ1xcdCcpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRhYiA9IHRva2VuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoYXNTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdjb21tZW50Jzoge1xuICAgICAgICAgICAgICAgIGlmICghaGFzU3BhY2UpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdNSVNTSU5HX0NIQVInLCAnQ29tbWVudHMgbXVzdCBiZSBzZXBhcmF0ZWQgZnJvbSBvdGhlciB0b2tlbnMgYnkgd2hpdGUgc3BhY2UgY2hhcmFjdGVycycpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNiID0gdG9rZW4uc291cmNlLnN1YnN0cmluZygxKSB8fCAnICc7XG4gICAgICAgICAgICAgICAgaWYgKCFjb21tZW50KVxuICAgICAgICAgICAgICAgICAgICBjb21tZW50ID0gY2I7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICBjb21tZW50ICs9IGNvbW1lbnRTZXAgKyBjYjtcbiAgICAgICAgICAgICAgICBjb21tZW50U2VwID0gJyc7XG4gICAgICAgICAgICAgICAgYXROZXdsaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICBpZiAoYXROZXdsaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjb21tZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgY29tbWVudCArPSB0b2tlbi5zb3VyY2U7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCFmb3VuZCB8fCBpbmRpY2F0b3IgIT09ICdzZXEtaXRlbS1pbmQnKVxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhY2VCZWZvcmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGNvbW1lbnRTZXAgKz0gdG9rZW4uc291cmNlO1xuICAgICAgICAgICAgICAgIGF0TmV3bGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgaGFzTmV3bGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKGFuY2hvciB8fCB0YWcpXG4gICAgICAgICAgICAgICAgICAgIG5ld2xpbmVBZnRlclByb3AgPSB0b2tlbjtcbiAgICAgICAgICAgICAgICBoYXNTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdhbmNob3InOlxuICAgICAgICAgICAgICAgIGlmIChhbmNob3IpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdNVUxUSVBMRV9BTkNIT1JTJywgJ0Egbm9kZSBjYW4gaGF2ZSBhdCBtb3N0IG9uZSBhbmNob3InKTtcbiAgICAgICAgICAgICAgICBpZiAodG9rZW4uc291cmNlLmVuZHNXaXRoKCc6JykpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4ub2Zmc2V0ICsgdG9rZW4uc291cmNlLmxlbmd0aCAtIDEsICdCQURfQUxJQVMnLCAnQW5jaG9yIGVuZGluZyBpbiA6IGlzIGFtYmlndW91cycsIHRydWUpO1xuICAgICAgICAgICAgICAgIGFuY2hvciA9IHRva2VuO1xuICAgICAgICAgICAgICAgIHN0YXJ0ID8/IChzdGFydCA9IHRva2VuLm9mZnNldCk7XG4gICAgICAgICAgICAgICAgYXROZXdsaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICByZXFTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICd0YWcnOiB7XG4gICAgICAgICAgICAgICAgaWYgKHRhZylcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ01VTFRJUExFX1RBR1MnLCAnQSBub2RlIGNhbiBoYXZlIGF0IG1vc3Qgb25lIHRhZycpO1xuICAgICAgICAgICAgICAgIHRhZyA9IHRva2VuO1xuICAgICAgICAgICAgICAgIHN0YXJ0ID8/IChzdGFydCA9IHRva2VuLm9mZnNldCk7XG4gICAgICAgICAgICAgICAgYXROZXdsaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICByZXFTcGFjZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlIGluZGljYXRvcjpcbiAgICAgICAgICAgICAgICAvLyBDb3VsZCBoZXJlIGhhbmRsZSBwcmVjZWRpbmcgY29tbWVudHMgZGlmZmVyZW50bHlcbiAgICAgICAgICAgICAgICBpZiAoYW5jaG9yIHx8IHRhZylcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ0JBRF9QUk9QX09SREVSJywgYEFuY2hvcnMgYW5kIHRhZ3MgbXVzdCBiZSBhZnRlciB0aGUgJHt0b2tlbi5zb3VyY2V9IGluZGljYXRvcmApO1xuICAgICAgICAgICAgICAgIGlmIChmb3VuZClcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ1VORVhQRUNURURfVE9LRU4nLCBgVW5leHBlY3RlZCAke3Rva2VuLnNvdXJjZX0gaW4gJHtmbG93ID8/ICdjb2xsZWN0aW9uJ31gKTtcbiAgICAgICAgICAgICAgICBmb3VuZCA9IHRva2VuO1xuICAgICAgICAgICAgICAgIGF0TmV3bGluZSA9XG4gICAgICAgICAgICAgICAgICAgIGluZGljYXRvciA9PT0gJ3NlcS1pdGVtLWluZCcgfHwgaW5kaWNhdG9yID09PSAnZXhwbGljaXQta2V5LWluZCc7XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1hJzpcbiAgICAgICAgICAgICAgICBpZiAoZmxvdykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoY29tbWEpXG4gICAgICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICwgaW4gJHtmbG93fWApO1xuICAgICAgICAgICAgICAgICAgICBjb21tYSA9IHRva2VuO1xuICAgICAgICAgICAgICAgICAgICBhdE5ld2xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gZWxzZSBmYWxsdGhyb3VnaFxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICR7dG9rZW4udHlwZX0gdG9rZW5gKTtcbiAgICAgICAgICAgICAgICBhdE5ld2xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBoYXNTcGFjZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGxhc3QgPSB0b2tlbnNbdG9rZW5zLmxlbmd0aCAtIDFdO1xuICAgIGNvbnN0IGVuZCA9IGxhc3QgPyBsYXN0Lm9mZnNldCArIGxhc3Quc291cmNlLmxlbmd0aCA6IG9mZnNldDtcbiAgICBpZiAocmVxU3BhY2UgJiZcbiAgICAgICAgbmV4dCAmJlxuICAgICAgICBuZXh0LnR5cGUgIT09ICdzcGFjZScgJiZcbiAgICAgICAgbmV4dC50eXBlICE9PSAnbmV3bGluZScgJiZcbiAgICAgICAgbmV4dC50eXBlICE9PSAnY29tbWEnICYmXG4gICAgICAgIChuZXh0LnR5cGUgIT09ICdzY2FsYXInIHx8IG5leHQuc291cmNlICE9PSAnJykpIHtcbiAgICAgICAgb25FcnJvcihuZXh0Lm9mZnNldCwgJ01JU1NJTkdfQ0hBUicsICdUYWdzIGFuZCBhbmNob3JzIG11c3QgYmUgc2VwYXJhdGVkIGZyb20gdGhlIG5leHQgdG9rZW4gYnkgd2hpdGUgc3BhY2UnKTtcbiAgICB9XG4gICAgaWYgKHRhYiAmJlxuICAgICAgICAoKGF0TmV3bGluZSAmJiB0YWIuaW5kZW50IDw9IHBhcmVudEluZGVudCkgfHxcbiAgICAgICAgICAgIG5leHQ/LnR5cGUgPT09ICdibG9jay1tYXAnIHx8XG4gICAgICAgICAgICBuZXh0Py50eXBlID09PSAnYmxvY2stc2VxJykpXG4gICAgICAgIG9uRXJyb3IodGFiLCAnVEFCX0FTX0lOREVOVCcsICdUYWJzIGFyZSBub3QgYWxsb3dlZCBhcyBpbmRlbnRhdGlvbicpO1xuICAgIHJldHVybiB7XG4gICAgICAgIGNvbW1hLFxuICAgICAgICBmb3VuZCxcbiAgICAgICAgc3BhY2VCZWZvcmUsXG4gICAgICAgIGNvbW1lbnQsXG4gICAgICAgIGhhc05ld2xpbmUsXG4gICAgICAgIGFuY2hvcixcbiAgICAgICAgdGFnLFxuICAgICAgICBuZXdsaW5lQWZ0ZXJQcm9wLFxuICAgICAgICBlbmQsXG4gICAgICAgIHN0YXJ0OiBzdGFydCA/PyBlbmRcbiAgICB9O1xufVxuXG5leHBvcnRzLnJlc29sdmVQcm9wcyA9IHJlc29sdmVQcm9wcztcbiIsICIndXNlIHN0cmljdCc7XG5cbmZ1bmN0aW9uIGNvbnRhaW5zTmV3bGluZShrZXkpIHtcbiAgICBpZiAoIWtleSlcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgc3dpdGNoIChrZXkudHlwZSkge1xuICAgICAgICBjYXNlICdhbGlhcyc6XG4gICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgY2FzZSAnc2luZ2xlLXF1b3RlZC1zY2FsYXInOlxuICAgICAgICAgICAgaWYgKGtleS5zb3VyY2UuaW5jbHVkZXMoJ1xcbicpKVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgaWYgKGtleS5lbmQpXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBzdCBvZiBrZXkuZW5kKVxuICAgICAgICAgICAgICAgICAgICBpZiAoc3QudHlwZSA9PT0gJ25ld2xpbmUnKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNhc2UgJ2Zsb3ctY29sbGVjdGlvbic6XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIGtleS5pdGVtcykge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgc3Qgb2YgaXQuc3RhcnQpXG4gICAgICAgICAgICAgICAgICAgIGlmIChzdC50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpZiAoaXQuc2VwKVxuICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdC50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRhaW5zTmV3bGluZShpdC5rZXkpIHx8IGNvbnRhaW5zTmV3bGluZShpdC52YWx1ZSkpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxufVxuXG5leHBvcnRzLmNvbnRhaW5zTmV3bGluZSA9IGNvbnRhaW5zTmV3bGluZTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciB1dGlsQ29udGFpbnNOZXdsaW5lID0gcmVxdWlyZSgnLi91dGlsLWNvbnRhaW5zLW5ld2xpbmUuanMnKTtcblxuZnVuY3Rpb24gZmxvd0luZGVudENoZWNrKGluZGVudCwgZmMsIG9uRXJyb3IpIHtcbiAgICBpZiAoZmM/LnR5cGUgPT09ICdmbG93LWNvbGxlY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IGVuZCA9IGZjLmVuZFswXTtcbiAgICAgICAgaWYgKGVuZC5pbmRlbnQgPT09IGluZGVudCAmJlxuICAgICAgICAgICAgKGVuZC5zb3VyY2UgPT09ICddJyB8fCBlbmQuc291cmNlID09PSAnfScpICYmXG4gICAgICAgICAgICB1dGlsQ29udGFpbnNOZXdsaW5lLmNvbnRhaW5zTmV3bGluZShmYykpIHtcbiAgICAgICAgICAgIGNvbnN0IG1zZyA9ICdGbG93IGVuZCBpbmRpY2F0b3Igc2hvdWxkIGJlIG1vcmUgaW5kZW50ZWQgdGhhbiBwYXJlbnQnO1xuICAgICAgICAgICAgb25FcnJvcihlbmQsICdCQURfSU5ERU5UJywgbXNnLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0cy5mbG93SW5kZW50Q2hlY2sgPSBmbG93SW5kZW50Q2hlY2s7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuLi9ub2Rlcy9pZGVudGl0eS5qcycpO1xuXG5mdW5jdGlvbiBtYXBJbmNsdWRlcyhjdHgsIGl0ZW1zLCBzZWFyY2gpIHtcbiAgICBjb25zdCB7IHVuaXF1ZUtleXMgfSA9IGN0eC5vcHRpb25zO1xuICAgIGlmICh1bmlxdWVLZXlzID09PSBmYWxzZSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IGlzRXF1YWwgPSB0eXBlb2YgdW5pcXVlS2V5cyA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICA/IHVuaXF1ZUtleXNcbiAgICAgICAgOiAoYSwgYikgPT4gYSA9PT0gYiB8fCAoaWRlbnRpdHkuaXNTY2FsYXIoYSkgJiYgaWRlbnRpdHkuaXNTY2FsYXIoYikgJiYgYS52YWx1ZSA9PT0gYi52YWx1ZSk7XG4gICAgcmV0dXJuIGl0ZW1zLnNvbWUocGFpciA9PiBpc0VxdWFsKHBhaXIua2V5LCBzZWFyY2gpKTtcbn1cblxuZXhwb3J0cy5tYXBJbmNsdWRlcyA9IG1hcEluY2x1ZGVzO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIFBhaXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9QYWlyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4uL25vZGVzL1lBTUxNYXAuanMnKTtcbnZhciByZXNvbHZlUHJvcHMgPSByZXF1aXJlKCcuL3Jlc29sdmUtcHJvcHMuanMnKTtcbnZhciB1dGlsQ29udGFpbnNOZXdsaW5lID0gcmVxdWlyZSgnLi91dGlsLWNvbnRhaW5zLW5ld2xpbmUuanMnKTtcbnZhciB1dGlsRmxvd0luZGVudENoZWNrID0gcmVxdWlyZSgnLi91dGlsLWZsb3ctaW5kZW50LWNoZWNrLmpzJyk7XG52YXIgdXRpbE1hcEluY2x1ZGVzID0gcmVxdWlyZSgnLi91dGlsLW1hcC1pbmNsdWRlcy5qcycpO1xuXG5jb25zdCBzdGFydENvbE1zZyA9ICdBbGwgbWFwcGluZyBpdGVtcyBtdXN0IHN0YXJ0IGF0IHRoZSBzYW1lIGNvbHVtbic7XG5mdW5jdGlvbiByZXNvbHZlQmxvY2tNYXAoeyBjb21wb3NlTm9kZSwgY29tcG9zZUVtcHR5Tm9kZSB9LCBjdHgsIGJtLCBvbkVycm9yLCB0YWcpIHtcbiAgICBjb25zdCBOb2RlQ2xhc3MgPSB0YWc/Lm5vZGVDbGFzcyA/PyBZQU1MTWFwLllBTUxNYXA7XG4gICAgY29uc3QgbWFwID0gbmV3IE5vZGVDbGFzcyhjdHguc2NoZW1hKTtcbiAgICBpZiAoY3R4LmF0Um9vdClcbiAgICAgICAgY3R4LmF0Um9vdCA9IGZhbHNlO1xuICAgIGxldCBvZmZzZXQgPSBibS5vZmZzZXQ7XG4gICAgbGV0IGNvbW1lbnRFbmQgPSBudWxsO1xuICAgIGZvciAoY29uc3QgY29sbEl0ZW0gb2YgYm0uaXRlbXMpIHtcbiAgICAgICAgY29uc3QgeyBzdGFydCwga2V5LCBzZXAsIHZhbHVlIH0gPSBjb2xsSXRlbTtcbiAgICAgICAgLy8ga2V5IHByb3BlcnRpZXNcbiAgICAgICAgY29uc3Qga2V5UHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHN0YXJ0LCB7XG4gICAgICAgICAgICBpbmRpY2F0b3I6ICdleHBsaWNpdC1rZXktaW5kJyxcbiAgICAgICAgICAgIG5leHQ6IGtleSA/PyBzZXA/LlswXSxcbiAgICAgICAgICAgIG9mZnNldCxcbiAgICAgICAgICAgIG9uRXJyb3IsXG4gICAgICAgICAgICBwYXJlbnRJbmRlbnQ6IGJtLmluZGVudCxcbiAgICAgICAgICAgIHN0YXJ0T25OZXdsaW5lOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBpbXBsaWNpdEtleSA9ICFrZXlQcm9wcy5mb3VuZDtcbiAgICAgICAgaWYgKGltcGxpY2l0S2V5KSB7XG4gICAgICAgICAgICBpZiAoa2V5KSB7XG4gICAgICAgICAgICAgICAgaWYgKGtleS50eXBlID09PSAnYmxvY2stc2VxJylcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihvZmZzZXQsICdCTE9DS19BU19JTVBMSUNJVF9LRVknLCAnQSBibG9jayBzZXF1ZW5jZSBtYXkgbm90IGJlIHVzZWQgYXMgYW4gaW1wbGljaXQgbWFwIGtleScpO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKCdpbmRlbnQnIGluIGtleSAmJiBrZXkuaW5kZW50ICE9PSBibS5pbmRlbnQpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0LCAnQkFEX0lOREVOVCcsIHN0YXJ0Q29sTXNnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICgha2V5UHJvcHMuYW5jaG9yICYmICFrZXlQcm9wcy50YWcgJiYgIXNlcCkge1xuICAgICAgICAgICAgICAgIGNvbW1lbnRFbmQgPSBrZXlQcm9wcy5lbmQ7XG4gICAgICAgICAgICAgICAgaWYgKGtleVByb3BzLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1hcC5jb21tZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLmNvbW1lbnQgKz0gJ1xcbicgKyBrZXlQcm9wcy5jb21tZW50O1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAuY29tbWVudCA9IGtleVByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGtleVByb3BzLm5ld2xpbmVBZnRlclByb3AgfHwgdXRpbENvbnRhaW5zTmV3bGluZS5jb250YWluc05ld2xpbmUoa2V5KSkge1xuICAgICAgICAgICAgICAgIG9uRXJyb3Ioa2V5ID8/IHN0YXJ0W3N0YXJ0Lmxlbmd0aCAtIDFdLCAnTVVMVElMSU5FX0lNUExJQ0lUX0tFWScsICdJbXBsaWNpdCBrZXlzIG5lZWQgdG8gYmUgb24gYSBzaW5nbGUgbGluZScpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGtleVByb3BzLmZvdW5kPy5pbmRlbnQgIT09IGJtLmluZGVudCkge1xuICAgICAgICAgICAgb25FcnJvcihvZmZzZXQsICdCQURfSU5ERU5UJywgc3RhcnRDb2xNc2cpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGtleSB2YWx1ZVxuICAgICAgICBjdHguYXRLZXkgPSB0cnVlO1xuICAgICAgICBjb25zdCBrZXlTdGFydCA9IGtleVByb3BzLmVuZDtcbiAgICAgICAgY29uc3Qga2V5Tm9kZSA9IGtleVxuICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIGtleSwga2V5UHJvcHMsIG9uRXJyb3IpXG4gICAgICAgICAgICA6IGNvbXBvc2VFbXB0eU5vZGUoY3R4LCBrZXlTdGFydCwgc3RhcnQsIG51bGwsIGtleVByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgaWYgKGN0eC5zY2hlbWEuY29tcGF0KVxuICAgICAgICAgICAgdXRpbEZsb3dJbmRlbnRDaGVjay5mbG93SW5kZW50Q2hlY2soYm0uaW5kZW50LCBrZXksIG9uRXJyb3IpO1xuICAgICAgICBjdHguYXRLZXkgPSBmYWxzZTtcbiAgICAgICAgaWYgKHV0aWxNYXBJbmNsdWRlcy5tYXBJbmNsdWRlcyhjdHgsIG1hcC5pdGVtcywga2V5Tm9kZSkpXG4gICAgICAgICAgICBvbkVycm9yKGtleVN0YXJ0LCAnRFVQTElDQVRFX0tFWScsICdNYXAga2V5cyBtdXN0IGJlIHVuaXF1ZScpO1xuICAgICAgICAvLyB2YWx1ZSBwcm9wZXJ0aWVzXG4gICAgICAgIGNvbnN0IHZhbHVlUHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHNlcCA/PyBbXSwge1xuICAgICAgICAgICAgaW5kaWNhdG9yOiAnbWFwLXZhbHVlLWluZCcsXG4gICAgICAgICAgICBuZXh0OiB2YWx1ZSxcbiAgICAgICAgICAgIG9mZnNldDoga2V5Tm9kZS5yYW5nZVsyXSxcbiAgICAgICAgICAgIG9uRXJyb3IsXG4gICAgICAgICAgICBwYXJlbnRJbmRlbnQ6IGJtLmluZGVudCxcbiAgICAgICAgICAgIHN0YXJ0T25OZXdsaW5lOiAha2V5IHx8IGtleS50eXBlID09PSAnYmxvY2stc2NhbGFyJ1xuICAgICAgICB9KTtcbiAgICAgICAgb2Zmc2V0ID0gdmFsdWVQcm9wcy5lbmQ7XG4gICAgICAgIGlmICh2YWx1ZVByb3BzLmZvdW5kKSB7XG4gICAgICAgICAgICBpZiAoaW1wbGljaXRLZXkpIHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWU/LnR5cGUgPT09ICdibG9jay1tYXAnICYmICF2YWx1ZVByb3BzLmhhc05ld2xpbmUpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0LCAnQkxPQ0tfQVNfSU1QTElDSVRfS0VZJywgJ05lc3RlZCBtYXBwaW5ncyBhcmUgbm90IGFsbG93ZWQgaW4gY29tcGFjdCBtYXBwaW5ncycpO1xuICAgICAgICAgICAgICAgIGlmIChjdHgub3B0aW9ucy5zdHJpY3QgJiZcbiAgICAgICAgICAgICAgICAgICAga2V5UHJvcHMuc3RhcnQgPCB2YWx1ZVByb3BzLmZvdW5kLm9mZnNldCAtIDEwMjQpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Ioa2V5Tm9kZS5yYW5nZSwgJ0tFWV9PVkVSXzEwMjRfQ0hBUlMnLCAnVGhlIDogaW5kaWNhdG9yIG11c3QgYmUgYXQgbW9zdCAxMDI0IGNoYXJzIGFmdGVyIHRoZSBzdGFydCBvZiBhbiBpbXBsaWNpdCBibG9jayBtYXBwaW5nIGtleScpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gdmFsdWUgdmFsdWVcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHZhbHVlXG4gICAgICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIHZhbHVlLCB2YWx1ZVByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIG9mZnNldCwgc2VwLCBudWxsLCB2YWx1ZVByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlmIChjdHguc2NoZW1hLmNvbXBhdClcbiAgICAgICAgICAgICAgICB1dGlsRmxvd0luZGVudENoZWNrLmZsb3dJbmRlbnRDaGVjayhibS5pbmRlbnQsIHZhbHVlLCBvbkVycm9yKTtcbiAgICAgICAgICAgIG9mZnNldCA9IHZhbHVlTm9kZS5yYW5nZVsyXTtcbiAgICAgICAgICAgIGNvbnN0IHBhaXIgPSBuZXcgUGFpci5QYWlyKGtleU5vZGUsIHZhbHVlTm9kZSk7XG4gICAgICAgICAgICBpZiAoY3R4Lm9wdGlvbnMua2VlcFNvdXJjZVRva2VucylcbiAgICAgICAgICAgICAgICBwYWlyLnNyY1Rva2VuID0gY29sbEl0ZW07XG4gICAgICAgICAgICBtYXAuaXRlbXMucHVzaChwYWlyKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIGtleSB3aXRoIG5vIHZhbHVlXG4gICAgICAgICAgICBpZiAoaW1wbGljaXRLZXkpXG4gICAgICAgICAgICAgICAgb25FcnJvcihrZXlOb2RlLnJhbmdlLCAnTUlTU0lOR19DSEFSJywgJ0ltcGxpY2l0IG1hcCBrZXlzIG5lZWQgdG8gYmUgZm9sbG93ZWQgYnkgbWFwIHZhbHVlcycpO1xuICAgICAgICAgICAgaWYgKHZhbHVlUHJvcHMuY29tbWVudCkge1xuICAgICAgICAgICAgICAgIGlmIChrZXlOb2RlLmNvbW1lbnQpXG4gICAgICAgICAgICAgICAgICAgIGtleU5vZGUuY29tbWVudCArPSAnXFxuJyArIHZhbHVlUHJvcHMuY29tbWVudDtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGtleU5vZGUuY29tbWVudCA9IHZhbHVlUHJvcHMuY29tbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHBhaXIgPSBuZXcgUGFpci5QYWlyKGtleU5vZGUpO1xuICAgICAgICAgICAgaWYgKGN0eC5vcHRpb25zLmtlZXBTb3VyY2VUb2tlbnMpXG4gICAgICAgICAgICAgICAgcGFpci5zcmNUb2tlbiA9IGNvbGxJdGVtO1xuICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2gocGFpcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNvbW1lbnRFbmQgJiYgY29tbWVudEVuZCA8IG9mZnNldClcbiAgICAgICAgb25FcnJvcihjb21tZW50RW5kLCAnSU1QT1NTSUJMRScsICdNYXAgY29tbWVudCB3aXRoIHRyYWlsaW5nIGNvbnRlbnQnKTtcbiAgICBtYXAucmFuZ2UgPSBbYm0ub2Zmc2V0LCBvZmZzZXQsIGNvbW1lbnRFbmQgPz8gb2Zmc2V0XTtcbiAgICByZXR1cm4gbWFwO1xufVxuXG5leHBvcnRzLnJlc29sdmVCbG9ja01hcCA9IHJlc29sdmVCbG9ja01hcDtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBZQU1MU2VxID0gcmVxdWlyZSgnLi4vbm9kZXMvWUFNTFNlcS5qcycpO1xudmFyIHJlc29sdmVQcm9wcyA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1wcm9wcy5qcycpO1xudmFyIHV0aWxGbG93SW5kZW50Q2hlY2sgPSByZXF1aXJlKCcuL3V0aWwtZmxvdy1pbmRlbnQtY2hlY2suanMnKTtcblxuZnVuY3Rpb24gcmVzb2x2ZUJsb2NrU2VxKHsgY29tcG9zZU5vZGUsIGNvbXBvc2VFbXB0eU5vZGUgfSwgY3R4LCBicywgb25FcnJvciwgdGFnKSB7XG4gICAgY29uc3QgTm9kZUNsYXNzID0gdGFnPy5ub2RlQ2xhc3MgPz8gWUFNTFNlcS5ZQU1MU2VxO1xuICAgIGNvbnN0IHNlcSA9IG5ldyBOb2RlQ2xhc3MoY3R4LnNjaGVtYSk7XG4gICAgaWYgKGN0eC5hdFJvb3QpXG4gICAgICAgIGN0eC5hdFJvb3QgPSBmYWxzZTtcbiAgICBpZiAoY3R4LmF0S2V5KVxuICAgICAgICBjdHguYXRLZXkgPSBmYWxzZTtcbiAgICBsZXQgb2Zmc2V0ID0gYnMub2Zmc2V0O1xuICAgIGxldCBjb21tZW50RW5kID0gbnVsbDtcbiAgICBmb3IgKGNvbnN0IHsgc3RhcnQsIHZhbHVlIH0gb2YgYnMuaXRlbXMpIHtcbiAgICAgICAgY29uc3QgcHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHN0YXJ0LCB7XG4gICAgICAgICAgICBpbmRpY2F0b3I6ICdzZXEtaXRlbS1pbmQnLFxuICAgICAgICAgICAgbmV4dDogdmFsdWUsXG4gICAgICAgICAgICBvZmZzZXQsXG4gICAgICAgICAgICBvbkVycm9yLFxuICAgICAgICAgICAgcGFyZW50SW5kZW50OiBicy5pbmRlbnQsXG4gICAgICAgICAgICBzdGFydE9uTmV3bGluZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCFwcm9wcy5mb3VuZCkge1xuICAgICAgICAgICAgaWYgKHByb3BzLmFuY2hvciB8fCBwcm9wcy50YWcgfHwgdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUudHlwZSA9PT0gJ2Jsb2NrLXNlcScpXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IocHJvcHMuZW5kLCAnQkFEX0lOREVOVCcsICdBbGwgc2VxdWVuY2UgaXRlbXMgbXVzdCBzdGFydCBhdCB0aGUgc2FtZSBjb2x1bW4nKTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0LCAnTUlTU0lOR19DSEFSJywgJ1NlcXVlbmNlIGl0ZW0gd2l0aG91dCAtIGluZGljYXRvcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29tbWVudEVuZCA9IHByb3BzLmVuZDtcbiAgICAgICAgICAgICAgICBpZiAocHJvcHMuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgc2VxLmNvbW1lbnQgPSBwcm9wcy5jb21tZW50O1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG5vZGUgPSB2YWx1ZVxuICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIHZhbHVlLCBwcm9wcywgb25FcnJvcilcbiAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIHByb3BzLmVuZCwgc3RhcnQsIG51bGwsIHByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgaWYgKGN0eC5zY2hlbWEuY29tcGF0KVxuICAgICAgICAgICAgdXRpbEZsb3dJbmRlbnRDaGVjay5mbG93SW5kZW50Q2hlY2soYnMuaW5kZW50LCB2YWx1ZSwgb25FcnJvcik7XG4gICAgICAgIG9mZnNldCA9IG5vZGUucmFuZ2VbMl07XG4gICAgICAgIHNlcS5pdGVtcy5wdXNoKG5vZGUpO1xuICAgIH1cbiAgICBzZXEucmFuZ2UgPSBbYnMub2Zmc2V0LCBvZmZzZXQsIGNvbW1lbnRFbmQgPz8gb2Zmc2V0XTtcbiAgICByZXR1cm4gc2VxO1xufVxuXG5leHBvcnRzLnJlc29sdmVCbG9ja1NlcSA9IHJlc29sdmVCbG9ja1NlcTtcbiIsICIndXNlIHN0cmljdCc7XG5cbmZ1bmN0aW9uIHJlc29sdmVFbmQoZW5kLCBvZmZzZXQsIHJlcVNwYWNlLCBvbkVycm9yKSB7XG4gICAgbGV0IGNvbW1lbnQgPSAnJztcbiAgICBpZiAoZW5kKSB7XG4gICAgICAgIGxldCBoYXNTcGFjZSA9IGZhbHNlO1xuICAgICAgICBsZXQgc2VwID0gJyc7XG4gICAgICAgIGZvciAoY29uc3QgdG9rZW4gb2YgZW5kKSB7XG4gICAgICAgICAgICBjb25zdCB7IHNvdXJjZSwgdHlwZSB9ID0gdG9rZW47XG4gICAgICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgICAgIGhhc1NwYWNlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcVNwYWNlICYmICFoYXNTcGFjZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdNSVNTSU5HX0NIQVInLCAnQ29tbWVudHMgbXVzdCBiZSBzZXBhcmF0ZWQgZnJvbSBvdGhlciB0b2tlbnMgYnkgd2hpdGUgc3BhY2UgY2hhcmFjdGVycycpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYiA9IHNvdXJjZS5zdWJzdHJpbmcoMSkgfHwgJyAnO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWNvbW1lbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICBjb21tZW50ID0gY2I7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbW1lbnQgKz0gc2VwICsgY2I7XG4gICAgICAgICAgICAgICAgICAgIHNlcCA9ICcnO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgICAgIGlmIChjb21tZW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VwICs9IHNvdXJjZTtcbiAgICAgICAgICAgICAgICAgICAgaGFzU3BhY2UgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICR7dHlwZX0gYXQgbm9kZSBlbmRgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG9mZnNldCArPSBzb3VyY2UubGVuZ3RoO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IGNvbW1lbnQsIG9mZnNldCB9O1xufVxuXG5leHBvcnRzLnJlc29sdmVFbmQgPSByZXNvbHZlRW5kO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBQYWlyID0gcmVxdWlyZSgnLi4vbm9kZXMvUGFpci5qcycpO1xudmFyIFlBTUxNYXAgPSByZXF1aXJlKCcuLi9ub2Rlcy9ZQU1MTWFwLmpzJyk7XG52YXIgWUFNTFNlcSA9IHJlcXVpcmUoJy4uL25vZGVzL1lBTUxTZXEuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xudmFyIHJlc29sdmVQcm9wcyA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1wcm9wcy5qcycpO1xudmFyIHV0aWxDb250YWluc05ld2xpbmUgPSByZXF1aXJlKCcuL3V0aWwtY29udGFpbnMtbmV3bGluZS5qcycpO1xudmFyIHV0aWxNYXBJbmNsdWRlcyA9IHJlcXVpcmUoJy4vdXRpbC1tYXAtaW5jbHVkZXMuanMnKTtcblxuY29uc3QgYmxvY2tNc2cgPSAnQmxvY2sgY29sbGVjdGlvbnMgYXJlIG5vdCBhbGxvd2VkIHdpdGhpbiBmbG93IGNvbGxlY3Rpb25zJztcbmNvbnN0IGlzQmxvY2sgPSAodG9rZW4pID0+IHRva2VuICYmICh0b2tlbi50eXBlID09PSAnYmxvY2stbWFwJyB8fCB0b2tlbi50eXBlID09PSAnYmxvY2stc2VxJyk7XG5mdW5jdGlvbiByZXNvbHZlRmxvd0NvbGxlY3Rpb24oeyBjb21wb3NlTm9kZSwgY29tcG9zZUVtcHR5Tm9kZSB9LCBjdHgsIGZjLCBvbkVycm9yLCB0YWcpIHtcbiAgICBjb25zdCBpc01hcCA9IGZjLnN0YXJ0LnNvdXJjZSA9PT0gJ3snO1xuICAgIGNvbnN0IGZjTmFtZSA9IGlzTWFwID8gJ2Zsb3cgbWFwJyA6ICdmbG93IHNlcXVlbmNlJztcbiAgICBjb25zdCBOb2RlQ2xhc3MgPSAodGFnPy5ub2RlQ2xhc3MgPz8gKGlzTWFwID8gWUFNTE1hcC5ZQU1MTWFwIDogWUFNTFNlcS5ZQU1MU2VxKSk7XG4gICAgY29uc3QgY29sbCA9IG5ldyBOb2RlQ2xhc3MoY3R4LnNjaGVtYSk7XG4gICAgY29sbC5mbG93ID0gdHJ1ZTtcbiAgICBjb25zdCBhdFJvb3QgPSBjdHguYXRSb290O1xuICAgIGlmIChhdFJvb3QpXG4gICAgICAgIGN0eC5hdFJvb3QgPSBmYWxzZTtcbiAgICBpZiAoY3R4LmF0S2V5KVxuICAgICAgICBjdHguYXRLZXkgPSBmYWxzZTtcbiAgICBsZXQgb2Zmc2V0ID0gZmMub2Zmc2V0ICsgZmMuc3RhcnQuc291cmNlLmxlbmd0aDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZjLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGNvbGxJdGVtID0gZmMuaXRlbXNbaV07XG4gICAgICAgIGNvbnN0IHsgc3RhcnQsIGtleSwgc2VwLCB2YWx1ZSB9ID0gY29sbEl0ZW07XG4gICAgICAgIGNvbnN0IHByb3BzID0gcmVzb2x2ZVByb3BzLnJlc29sdmVQcm9wcyhzdGFydCwge1xuICAgICAgICAgICAgZmxvdzogZmNOYW1lLFxuICAgICAgICAgICAgaW5kaWNhdG9yOiAnZXhwbGljaXQta2V5LWluZCcsXG4gICAgICAgICAgICBuZXh0OiBrZXkgPz8gc2VwPy5bMF0sXG4gICAgICAgICAgICBvZmZzZXQsXG4gICAgICAgICAgICBvbkVycm9yLFxuICAgICAgICAgICAgcGFyZW50SW5kZW50OiBmYy5pbmRlbnQsXG4gICAgICAgICAgICBzdGFydE9uTmV3bGluZTogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghcHJvcHMuZm91bmQpIHtcbiAgICAgICAgICAgIGlmICghcHJvcHMuYW5jaG9yICYmICFwcm9wcy50YWcgJiYgIXNlcCAmJiAhdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAoaSA9PT0gMCAmJiBwcm9wcy5jb21tYSlcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihwcm9wcy5jb21tYSwgJ1VORVhQRUNURURfVE9LRU4nLCBgVW5leHBlY3RlZCAsIGluICR7ZmNOYW1lfWApO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGkgPCBmYy5pdGVtcy5sZW5ndGggLSAxKVxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHByb3BzLnN0YXJ0LCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkIGVtcHR5IGl0ZW0gaW4gJHtmY05hbWV9YCk7XG4gICAgICAgICAgICAgICAgaWYgKHByb3BzLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbGwuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbGwuY29tbWVudCArPSAnXFxuJyArIHByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbGwuY29tbWVudCA9IHByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG9mZnNldCA9IHByb3BzLmVuZDtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghaXNNYXAgJiYgY3R4Lm9wdGlvbnMuc3RyaWN0ICYmIHV0aWxDb250YWluc05ld2xpbmUuY29udGFpbnNOZXdsaW5lKGtleSkpXG4gICAgICAgICAgICAgICAgb25FcnJvcihrZXksIC8vIGNoZWNrZWQgYnkgY29udGFpbnNOZXdsaW5lKClcbiAgICAgICAgICAgICAgICAnTVVMVElMSU5FX0lNUExJQ0lUX0tFWScsICdJbXBsaWNpdCBrZXlzIG9mIGZsb3cgc2VxdWVuY2UgcGFpcnMgbmVlZCB0byBiZSBvbiBhIHNpbmdsZSBsaW5lJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGkgPT09IDApIHtcbiAgICAgICAgICAgIGlmIChwcm9wcy5jb21tYSlcbiAgICAgICAgICAgICAgICBvbkVycm9yKHByb3BzLmNvbW1hLCAnVU5FWFBFQ1RFRF9UT0tFTicsIGBVbmV4cGVjdGVkICwgaW4gJHtmY05hbWV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXByb3BzLmNvbW1hKVxuICAgICAgICAgICAgICAgIG9uRXJyb3IocHJvcHMuc3RhcnQsICdNSVNTSU5HX0NIQVInLCBgTWlzc2luZyAsIGJldHdlZW4gJHtmY05hbWV9IGl0ZW1zYCk7XG4gICAgICAgICAgICBpZiAocHJvcHMuY29tbWVudCkge1xuICAgICAgICAgICAgICAgIGxldCBwcmV2SXRlbUNvbW1lbnQgPSAnJztcbiAgICAgICAgICAgICAgICBsb29wOiBmb3IgKGNvbnN0IHN0IG9mIHN0YXJ0KSB7XG4gICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoc3QudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tbWEnOlxuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldkl0ZW1Db21tZW50ID0gc3Quc291cmNlLnN1YnN0cmluZygxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhayBsb29wO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhayBsb29wO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwcmV2SXRlbUNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHByZXYgPSBjb2xsLml0ZW1zW2NvbGwuaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgICAgICAgICAgICAgICAgIGlmIChpZGVudGl0eS5pc1BhaXIocHJldikpXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmV2ID0gcHJldi52YWx1ZSA/PyBwcmV2LmtleTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHByZXYuY29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIHByZXYuY29tbWVudCArPSAnXFxuJyArIHByZXZJdGVtQ29tbWVudDtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgcHJldi5jb21tZW50ID0gcHJldkl0ZW1Db21tZW50O1xuICAgICAgICAgICAgICAgICAgICBwcm9wcy5jb21tZW50ID0gcHJvcHMuY29tbWVudC5zdWJzdHJpbmcocHJldkl0ZW1Db21tZW50Lmxlbmd0aCArIDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzTWFwICYmICFzZXAgJiYgIXByb3BzLmZvdW5kKSB7XG4gICAgICAgICAgICAvLyBpdGVtIGlzIGEgdmFsdWUgaW4gYSBzZXFcbiAgICAgICAgICAgIC8vIFx1MjE5MiBrZXkgJiBzZXAgYXJlIGVtcHR5LCBzdGFydCBkb2VzIG5vdCBpbmNsdWRlID8gb3IgOlxuICAgICAgICAgICAgY29uc3QgdmFsdWVOb2RlID0gdmFsdWVcbiAgICAgICAgICAgICAgICA/IGNvbXBvc2VOb2RlKGN0eCwgdmFsdWUsIHByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIHByb3BzLmVuZCwgc2VwLCBudWxsLCBwcm9wcywgb25FcnJvcik7XG4gICAgICAgICAgICBjb2xsLml0ZW1zLnB1c2godmFsdWVOb2RlKTtcbiAgICAgICAgICAgIG9mZnNldCA9IHZhbHVlTm9kZS5yYW5nZVsyXTtcbiAgICAgICAgICAgIGlmIChpc0Jsb2NrKHZhbHVlKSlcbiAgICAgICAgICAgICAgICBvbkVycm9yKHZhbHVlTm9kZS5yYW5nZSwgJ0JMT0NLX0lOX0ZMT1cnLCBibG9ja01zZyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyBpdGVtIGlzIGEga2V5K3ZhbHVlIHBhaXJcbiAgICAgICAgICAgIC8vIGtleSB2YWx1ZVxuICAgICAgICAgICAgY3R4LmF0S2V5ID0gdHJ1ZTtcbiAgICAgICAgICAgIGNvbnN0IGtleVN0YXJ0ID0gcHJvcHMuZW5kO1xuICAgICAgICAgICAgY29uc3Qga2V5Tm9kZSA9IGtleVxuICAgICAgICAgICAgICAgID8gY29tcG9zZU5vZGUoY3R4LCBrZXksIHByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogY29tcG9zZUVtcHR5Tm9kZShjdHgsIGtleVN0YXJ0LCBzdGFydCwgbnVsbCwgcHJvcHMsIG9uRXJyb3IpO1xuICAgICAgICAgICAgaWYgKGlzQmxvY2soa2V5KSlcbiAgICAgICAgICAgICAgICBvbkVycm9yKGtleU5vZGUucmFuZ2UsICdCTE9DS19JTl9GTE9XJywgYmxvY2tNc2cpO1xuICAgICAgICAgICAgY3R4LmF0S2V5ID0gZmFsc2U7XG4gICAgICAgICAgICAvLyB2YWx1ZSBwcm9wZXJ0aWVzXG4gICAgICAgICAgICBjb25zdCB2YWx1ZVByb3BzID0gcmVzb2x2ZVByb3BzLnJlc29sdmVQcm9wcyhzZXAgPz8gW10sIHtcbiAgICAgICAgICAgICAgICBmbG93OiBmY05hbWUsXG4gICAgICAgICAgICAgICAgaW5kaWNhdG9yOiAnbWFwLXZhbHVlLWluZCcsXG4gICAgICAgICAgICAgICAgbmV4dDogdmFsdWUsXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiBrZXlOb2RlLnJhbmdlWzJdLFxuICAgICAgICAgICAgICAgIG9uRXJyb3IsXG4gICAgICAgICAgICAgICAgcGFyZW50SW5kZW50OiBmYy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgc3RhcnRPbk5ld2xpbmU6IGZhbHNlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmICh2YWx1ZVByb3BzLmZvdW5kKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc01hcCAmJiAhcHJvcHMuZm91bmQgJiYgY3R4Lm9wdGlvbnMuc3RyaWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzZXApXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIHNlcCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdCA9PT0gdmFsdWVQcm9wcy5mb3VuZClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0LnR5cGUgPT09ICduZXdsaW5lJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHN0LCAnTVVMVElMSU5FX0lNUExJQ0lUX0tFWScsICdJbXBsaWNpdCBrZXlzIG9mIGZsb3cgc2VxdWVuY2UgcGFpcnMgbmVlZCB0byBiZSBvbiBhIHNpbmdsZSBsaW5lJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb3BzLnN0YXJ0IDwgdmFsdWVQcm9wcy5mb3VuZC5vZmZzZXQgLSAxMDI0KVxuICAgICAgICAgICAgICAgICAgICAgICAgb25FcnJvcih2YWx1ZVByb3BzLmZvdW5kLCAnS0VZX09WRVJfMTAyNF9DSEFSUycsICdUaGUgOiBpbmRpY2F0b3IgbXVzdCBiZSBhdCBtb3N0IDEwMjQgY2hhcnMgYWZ0ZXIgdGhlIHN0YXJ0IG9mIGFuIGltcGxpY2l0IGZsb3cgc2VxdWVuY2Uga2V5Jyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgICAgICBpZiAoJ3NvdXJjZScgaW4gdmFsdWUgJiYgdmFsdWUuc291cmNlICYmIHZhbHVlLnNvdXJjZVswXSA9PT0gJzonKVxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHZhbHVlLCAnTUlTU0lOR19DSEFSJywgYE1pc3Npbmcgc3BhY2UgYWZ0ZXIgOiBpbiAke2ZjTmFtZX1gKTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3IodmFsdWVQcm9wcy5zdGFydCwgJ01JU1NJTkdfQ0hBUicsIGBNaXNzaW5nICwgb3IgOiBiZXR3ZWVuICR7ZmNOYW1lfSBpdGVtc2ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gdmFsdWUgdmFsdWVcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlTm9kZSA9IHZhbHVlXG4gICAgICAgICAgICAgICAgPyBjb21wb3NlTm9kZShjdHgsIHZhbHVlLCB2YWx1ZVByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgIDogdmFsdWVQcm9wcy5mb3VuZFxuICAgICAgICAgICAgICAgICAgICA/IGNvbXBvc2VFbXB0eU5vZGUoY3R4LCB2YWx1ZVByb3BzLmVuZCwgc2VwLCBudWxsLCB2YWx1ZVByb3BzLCBvbkVycm9yKVxuICAgICAgICAgICAgICAgICAgICA6IG51bGw7XG4gICAgICAgICAgICBpZiAodmFsdWVOb2RlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzQmxvY2sodmFsdWUpKVxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yKHZhbHVlTm9kZS5yYW5nZSwgJ0JMT0NLX0lOX0ZMT1cnLCBibG9ja01zZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh2YWx1ZVByb3BzLmNvbW1lbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAoa2V5Tm9kZS5jb21tZW50KVxuICAgICAgICAgICAgICAgICAgICBrZXlOb2RlLmNvbW1lbnQgKz0gJ1xcbicgKyB2YWx1ZVByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICBrZXlOb2RlLmNvbW1lbnQgPSB2YWx1ZVByb3BzLmNvbW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBwYWlyID0gbmV3IFBhaXIuUGFpcihrZXlOb2RlLCB2YWx1ZU5vZGUpO1xuICAgICAgICAgICAgaWYgKGN0eC5vcHRpb25zLmtlZXBTb3VyY2VUb2tlbnMpXG4gICAgICAgICAgICAgICAgcGFpci5zcmNUb2tlbiA9IGNvbGxJdGVtO1xuICAgICAgICAgICAgaWYgKGlzTWFwKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFwID0gY29sbDtcbiAgICAgICAgICAgICAgICBpZiAodXRpbE1hcEluY2x1ZGVzLm1hcEluY2x1ZGVzKGN0eCwgbWFwLml0ZW1zLCBrZXlOb2RlKSlcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcihrZXlTdGFydCwgJ0RVUExJQ0FURV9LRVknLCAnTWFwIGtleXMgbXVzdCBiZSB1bmlxdWUnKTtcbiAgICAgICAgICAgICAgICBtYXAuaXRlbXMucHVzaChwYWlyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcCA9IG5ldyBZQU1MTWFwLllBTUxNYXAoY3R4LnNjaGVtYSk7XG4gICAgICAgICAgICAgICAgbWFwLmZsb3cgPSB0cnVlO1xuICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHBhaXIpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuZFJhbmdlID0gKHZhbHVlTm9kZSA/PyBrZXlOb2RlKS5yYW5nZTtcbiAgICAgICAgICAgICAgICBtYXAucmFuZ2UgPSBba2V5Tm9kZS5yYW5nZVswXSwgZW5kUmFuZ2VbMV0sIGVuZFJhbmdlWzJdXTtcbiAgICAgICAgICAgICAgICBjb2xsLml0ZW1zLnB1c2gobWFwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG9mZnNldCA9IHZhbHVlTm9kZSA/IHZhbHVlTm9kZS5yYW5nZVsyXSA6IHZhbHVlUHJvcHMuZW5kO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGV4cGVjdGVkRW5kID0gaXNNYXAgPyAnfScgOiAnXSc7XG4gICAgY29uc3QgW2NlLCAuLi5lZV0gPSBmYy5lbmQ7XG4gICAgbGV0IGNlUG9zID0gb2Zmc2V0O1xuICAgIGlmIChjZSAmJiBjZS5zb3VyY2UgPT09IGV4cGVjdGVkRW5kKVxuICAgICAgICBjZVBvcyA9IGNlLm9mZnNldCArIGNlLnNvdXJjZS5sZW5ndGg7XG4gICAgZWxzZSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBmY05hbWVbMF0udG9VcHBlckNhc2UoKSArIGZjTmFtZS5zdWJzdHJpbmcoMSk7XG4gICAgICAgIGNvbnN0IG1zZyA9IGF0Um9vdFxuICAgICAgICAgICAgPyBgJHtuYW1lfSBtdXN0IGVuZCB3aXRoIGEgJHtleHBlY3RlZEVuZH1gXG4gICAgICAgICAgICA6IGAke25hbWV9IGluIGJsb2NrIGNvbGxlY3Rpb24gbXVzdCBiZSBzdWZmaWNpZW50bHkgaW5kZW50ZWQgYW5kIGVuZCB3aXRoIGEgJHtleHBlY3RlZEVuZH1gO1xuICAgICAgICBvbkVycm9yKG9mZnNldCwgYXRSb290ID8gJ01JU1NJTkdfQ0hBUicgOiAnQkFEX0lOREVOVCcsIG1zZyk7XG4gICAgICAgIGlmIChjZSAmJiBjZS5zb3VyY2UubGVuZ3RoICE9PSAxKVxuICAgICAgICAgICAgZWUudW5zaGlmdChjZSk7XG4gICAgfVxuICAgIGlmIChlZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IGVuZCA9IHJlc29sdmVFbmQucmVzb2x2ZUVuZChlZSwgY2VQb3MsIGN0eC5vcHRpb25zLnN0cmljdCwgb25FcnJvcik7XG4gICAgICAgIGlmIChlbmQuY29tbWVudCkge1xuICAgICAgICAgICAgaWYgKGNvbGwuY29tbWVudClcbiAgICAgICAgICAgICAgICBjb2xsLmNvbW1lbnQgKz0gJ1xcbicgKyBlbmQuY29tbWVudDtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBjb2xsLmNvbW1lbnQgPSBlbmQuY29tbWVudDtcbiAgICAgICAgfVxuICAgICAgICBjb2xsLnJhbmdlID0gW2ZjLm9mZnNldCwgY2VQb3MsIGVuZC5vZmZzZXRdO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29sbC5yYW5nZSA9IFtmYy5vZmZzZXQsIGNlUG9zLCBjZVBvc107XG4gICAgfVxuICAgIHJldHVybiBjb2xsO1xufVxuXG5leHBvcnRzLnJlc29sdmVGbG93Q29sbGVjdGlvbiA9IHJlc29sdmVGbG93Q29sbGVjdGlvbjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4uL25vZGVzL1lBTUxNYXAuanMnKTtcbnZhciBZQU1MU2VxID0gcmVxdWlyZSgnLi4vbm9kZXMvWUFNTFNlcS5qcycpO1xudmFyIHJlc29sdmVCbG9ja01hcCA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1ibG9jay1tYXAuanMnKTtcbnZhciByZXNvbHZlQmxvY2tTZXEgPSByZXF1aXJlKCcuL3Jlc29sdmUtYmxvY2stc2VxLmpzJyk7XG52YXIgcmVzb2x2ZUZsb3dDb2xsZWN0aW9uID0gcmVxdWlyZSgnLi9yZXNvbHZlLWZsb3ctY29sbGVjdGlvbi5qcycpO1xuXG5mdW5jdGlvbiByZXNvbHZlQ29sbGVjdGlvbihDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnTmFtZSwgdGFnKSB7XG4gICAgY29uc3QgY29sbCA9IHRva2VuLnR5cGUgPT09ICdibG9jay1tYXAnXG4gICAgICAgID8gcmVzb2x2ZUJsb2NrTWFwLnJlc29sdmVCbG9ja01hcChDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnKVxuICAgICAgICA6IHRva2VuLnR5cGUgPT09ICdibG9jay1zZXEnXG4gICAgICAgICAgICA/IHJlc29sdmVCbG9ja1NlcS5yZXNvbHZlQmxvY2tTZXEoQ04sIGN0eCwgdG9rZW4sIG9uRXJyb3IsIHRhZylcbiAgICAgICAgICAgIDogcmVzb2x2ZUZsb3dDb2xsZWN0aW9uLnJlc29sdmVGbG93Q29sbGVjdGlvbihDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnKTtcbiAgICBjb25zdCBDb2xsID0gY29sbC5jb25zdHJ1Y3RvcjtcbiAgICAvLyBJZiB3ZSBnb3QgYSB0YWdOYW1lIG1hdGNoaW5nIHRoZSBjbGFzcywgb3IgdGhlIHRhZyBuYW1lIGlzICchJyxcbiAgICAvLyB0aGVuIHVzZSB0aGUgdGFnTmFtZSBmcm9tIHRoZSBub2RlIGNsYXNzIHVzZWQgdG8gY3JlYXRlIGl0LlxuICAgIGlmICh0YWdOYW1lID09PSAnIScgfHwgdGFnTmFtZSA9PT0gQ29sbC50YWdOYW1lKSB7XG4gICAgICAgIGNvbGwudGFnID0gQ29sbC50YWdOYW1lO1xuICAgICAgICByZXR1cm4gY29sbDtcbiAgICB9XG4gICAgaWYgKHRhZ05hbWUpXG4gICAgICAgIGNvbGwudGFnID0gdGFnTmFtZTtcbiAgICByZXR1cm4gY29sbDtcbn1cbmZ1bmN0aW9uIGNvbXBvc2VDb2xsZWN0aW9uKENOLCBjdHgsIHRva2VuLCBwcm9wcywgb25FcnJvcikge1xuICAgIGNvbnN0IHRhZ1Rva2VuID0gcHJvcHMudGFnO1xuICAgIGNvbnN0IHRhZ05hbWUgPSAhdGFnVG9rZW5cbiAgICAgICAgPyBudWxsXG4gICAgICAgIDogY3R4LmRpcmVjdGl2ZXMudGFnTmFtZSh0YWdUb2tlbi5zb3VyY2UsIG1zZyA9PiBvbkVycm9yKHRhZ1Rva2VuLCAnVEFHX1JFU09MVkVfRkFJTEVEJywgbXNnKSk7XG4gICAgaWYgKHRva2VuLnR5cGUgPT09ICdibG9jay1zZXEnKSB7XG4gICAgICAgIGNvbnN0IHsgYW5jaG9yLCBuZXdsaW5lQWZ0ZXJQcm9wOiBubCB9ID0gcHJvcHM7XG4gICAgICAgIGNvbnN0IGxhc3RQcm9wID0gYW5jaG9yICYmIHRhZ1Rva2VuXG4gICAgICAgICAgICA/IGFuY2hvci5vZmZzZXQgPiB0YWdUb2tlbi5vZmZzZXRcbiAgICAgICAgICAgICAgICA/IGFuY2hvclxuICAgICAgICAgICAgICAgIDogdGFnVG9rZW5cbiAgICAgICAgICAgIDogKGFuY2hvciA/PyB0YWdUb2tlbik7XG4gICAgICAgIGlmIChsYXN0UHJvcCAmJiAoIW5sIHx8IG5sLm9mZnNldCA8IGxhc3RQcm9wLm9mZnNldCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnTWlzc2luZyBuZXdsaW5lIGFmdGVyIGJsb2NrIHNlcXVlbmNlIHByb3BzJztcbiAgICAgICAgICAgIG9uRXJyb3IobGFzdFByb3AsICdNSVNTSU5HX0NIQVInLCBtZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBleHBUeXBlID0gdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLW1hcCdcbiAgICAgICAgPyAnbWFwJ1xuICAgICAgICA6IHRva2VuLnR5cGUgPT09ICdibG9jay1zZXEnXG4gICAgICAgICAgICA/ICdzZXEnXG4gICAgICAgICAgICA6IHRva2VuLnN0YXJ0LnNvdXJjZSA9PT0gJ3snXG4gICAgICAgICAgICAgICAgPyAnbWFwJ1xuICAgICAgICAgICAgICAgIDogJ3NlcSc7XG4gICAgLy8gc2hvcnRjdXQ6IGNoZWNrIGlmIGl0J3MgYSBnZW5lcmljIFlBTUxNYXAgb3IgWUFNTFNlcVxuICAgIC8vIGJlZm9yZSBqdW1waW5nIGludG8gdGhlIGN1c3RvbSB0YWcgbG9naWMuXG4gICAgaWYgKCF0YWdUb2tlbiB8fFxuICAgICAgICAhdGFnTmFtZSB8fFxuICAgICAgICB0YWdOYW1lID09PSAnIScgfHxcbiAgICAgICAgKHRhZ05hbWUgPT09IFlBTUxNYXAuWUFNTE1hcC50YWdOYW1lICYmIGV4cFR5cGUgPT09ICdtYXAnKSB8fFxuICAgICAgICAodGFnTmFtZSA9PT0gWUFNTFNlcS5ZQU1MU2VxLnRhZ05hbWUgJiYgZXhwVHlwZSA9PT0gJ3NlcScpKSB7XG4gICAgICAgIHJldHVybiByZXNvbHZlQ29sbGVjdGlvbihDTiwgY3R4LCB0b2tlbiwgb25FcnJvciwgdGFnTmFtZSk7XG4gICAgfVxuICAgIGxldCB0YWcgPSBjdHguc2NoZW1hLnRhZ3MuZmluZCh0ID0+IHQudGFnID09PSB0YWdOYW1lICYmIHQuY29sbGVjdGlvbiA9PT0gZXhwVHlwZSk7XG4gICAgaWYgKCF0YWcpIHtcbiAgICAgICAgY29uc3Qga3QgPSBjdHguc2NoZW1hLmtub3duVGFnc1t0YWdOYW1lXTtcbiAgICAgICAgaWYgKGt0ICYmIGt0LmNvbGxlY3Rpb24gPT09IGV4cFR5cGUpIHtcbiAgICAgICAgICAgIGN0eC5zY2hlbWEudGFncy5wdXNoKE9iamVjdC5hc3NpZ24oe30sIGt0LCB7IGRlZmF1bHQ6IGZhbHNlIH0pKTtcbiAgICAgICAgICAgIHRhZyA9IGt0O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGt0KSB7XG4gICAgICAgICAgICAgICAgb25FcnJvcih0YWdUb2tlbiwgJ0JBRF9DT0xMRUNUSU9OX1RZUEUnLCBgJHtrdC50YWd9IHVzZWQgZm9yICR7ZXhwVHlwZX0gY29sbGVjdGlvbiwgYnV0IGV4cGVjdHMgJHtrdC5jb2xsZWN0aW9uID8/ICdzY2FsYXInfWAsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgb25FcnJvcih0YWdUb2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIGBVbnJlc29sdmVkIHRhZzogJHt0YWdOYW1lfWAsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc29sdmVDb2xsZWN0aW9uKENOLCBjdHgsIHRva2VuLCBvbkVycm9yLCB0YWdOYW1lKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBjb2xsID0gcmVzb2x2ZUNvbGxlY3Rpb24oQ04sIGN0eCwgdG9rZW4sIG9uRXJyb3IsIHRhZ05hbWUsIHRhZyk7XG4gICAgY29uc3QgcmVzID0gdGFnLnJlc29sdmU/Lihjb2xsLCBtc2cgPT4gb25FcnJvcih0YWdUb2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIG1zZyksIGN0eC5vcHRpb25zKSA/PyBjb2xsO1xuICAgIGNvbnN0IG5vZGUgPSBpZGVudGl0eS5pc05vZGUocmVzKVxuICAgICAgICA/IHJlc1xuICAgICAgICA6IG5ldyBTY2FsYXIuU2NhbGFyKHJlcyk7XG4gICAgbm9kZS5yYW5nZSA9IGNvbGwucmFuZ2U7XG4gICAgbm9kZS50YWcgPSB0YWdOYW1lO1xuICAgIGlmICh0YWc/LmZvcm1hdClcbiAgICAgICAgbm9kZS5mb3JtYXQgPSB0YWcuZm9ybWF0O1xuICAgIHJldHVybiBub2RlO1xufVxuXG5leHBvcnRzLmNvbXBvc2VDb2xsZWN0aW9uID0gY29tcG9zZUNvbGxlY3Rpb247XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG5cbmZ1bmN0aW9uIHJlc29sdmVCbG9ja1NjYWxhcihjdHgsIHNjYWxhciwgb25FcnJvcikge1xuICAgIGNvbnN0IHN0YXJ0ID0gc2NhbGFyLm9mZnNldDtcbiAgICBjb25zdCBoZWFkZXIgPSBwYXJzZUJsb2NrU2NhbGFySGVhZGVyKHNjYWxhciwgY3R4Lm9wdGlvbnMuc3RyaWN0LCBvbkVycm9yKTtcbiAgICBpZiAoIWhlYWRlcilcbiAgICAgICAgcmV0dXJuIHsgdmFsdWU6ICcnLCB0eXBlOiBudWxsLCBjb21tZW50OiAnJywgcmFuZ2U6IFtzdGFydCwgc3RhcnQsIHN0YXJ0XSB9O1xuICAgIGNvbnN0IHR5cGUgPSBoZWFkZXIubW9kZSA9PT0gJz4nID8gU2NhbGFyLlNjYWxhci5CTE9DS19GT0xERUQgOiBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUw7XG4gICAgY29uc3QgbGluZXMgPSBzY2FsYXIuc291cmNlID8gc3BsaXRMaW5lcyhzY2FsYXIuc291cmNlKSA6IFtdO1xuICAgIC8vIGRldGVybWluZSB0aGUgZW5kIG9mIGNvbnRlbnQgJiBzdGFydCBvZiBjaG9tcGluZ1xuICAgIGxldCBjaG9tcFN0YXJ0ID0gbGluZXMubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSBsaW5lcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gbGluZXNbaV1bMV07XG4gICAgICAgIGlmIChjb250ZW50ID09PSAnJyB8fCBjb250ZW50ID09PSAnXFxyJylcbiAgICAgICAgICAgIGNob21wU3RhcnQgPSBpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG4gICAgLy8gc2hvcnRjdXQgZm9yIGVtcHR5IGNvbnRlbnRzXG4gICAgaWYgKGNob21wU3RhcnQgPT09IDApIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBoZWFkZXIuY2hvbXAgPT09ICcrJyAmJiBsaW5lcy5sZW5ndGggPiAwXG4gICAgICAgICAgICA/ICdcXG4nLnJlcGVhdChNYXRoLm1heCgxLCBsaW5lcy5sZW5ndGggLSAxKSlcbiAgICAgICAgICAgIDogJyc7XG4gICAgICAgIGxldCBlbmQgPSBzdGFydCArIGhlYWRlci5sZW5ndGg7XG4gICAgICAgIGlmIChzY2FsYXIuc291cmNlKVxuICAgICAgICAgICAgZW5kICs9IHNjYWxhci5zb3VyY2UubGVuZ3RoO1xuICAgICAgICByZXR1cm4geyB2YWx1ZSwgdHlwZSwgY29tbWVudDogaGVhZGVyLmNvbW1lbnQsIHJhbmdlOiBbc3RhcnQsIGVuZCwgZW5kXSB9O1xuICAgIH1cbiAgICAvLyBmaW5kIHRoZSBpbmRlbnRhdGlvbiBsZXZlbCB0byB0cmltIGZyb20gc3RhcnRcbiAgICBsZXQgdHJpbUluZGVudCA9IHNjYWxhci5pbmRlbnQgKyBoZWFkZXIuaW5kZW50O1xuICAgIGxldCBvZmZzZXQgPSBzY2FsYXIub2Zmc2V0ICsgaGVhZGVyLmxlbmd0aDtcbiAgICBsZXQgY29udGVudFN0YXJ0ID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNob21wU3RhcnQ7ICsraSkge1xuICAgICAgICBjb25zdCBbaW5kZW50LCBjb250ZW50XSA9IGxpbmVzW2ldO1xuICAgICAgICBpZiAoY29udGVudCA9PT0gJycgfHwgY29udGVudCA9PT0gJ1xccicpIHtcbiAgICAgICAgICAgIGlmIChoZWFkZXIuaW5kZW50ID09PSAwICYmIGluZGVudC5sZW5ndGggPiB0cmltSW5kZW50KVxuICAgICAgICAgICAgICAgIHRyaW1JbmRlbnQgPSBpbmRlbnQubGVuZ3RoO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGluZGVudC5sZW5ndGggPCB0cmltSW5kZW50KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9ICdCbG9jayBzY2FsYXJzIHdpdGggbW9yZS1pbmRlbnRlZCBsZWFkaW5nIGVtcHR5IGxpbmVzIG11c3QgdXNlIGFuIGV4cGxpY2l0IGluZGVudGF0aW9uIGluZGljYXRvcic7XG4gICAgICAgICAgICAgICAgb25FcnJvcihvZmZzZXQgKyBpbmRlbnQubGVuZ3RoLCAnTUlTU0lOR19DSEFSJywgbWVzc2FnZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGVhZGVyLmluZGVudCA9PT0gMClcbiAgICAgICAgICAgICAgICB0cmltSW5kZW50ID0gaW5kZW50Lmxlbmd0aDtcbiAgICAgICAgICAgIGNvbnRlbnRTdGFydCA9IGk7XG4gICAgICAgICAgICBpZiAodHJpbUluZGVudCA9PT0gMCAmJiAhY3R4LmF0Um9vdCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnQmxvY2sgc2NhbGFyIHZhbHVlcyBpbiBjb2xsZWN0aW9ucyBtdXN0IGJlIGluZGVudGVkJztcbiAgICAgICAgICAgICAgICBvbkVycm9yKG9mZnNldCwgJ0JBRF9JTkRFTlQnLCBtZXNzYWdlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIG9mZnNldCArPSBpbmRlbnQubGVuZ3RoICsgY29udGVudC5sZW5ndGggKyAxO1xuICAgIH1cbiAgICAvLyBpbmNsdWRlIHRyYWlsaW5nIG1vcmUtaW5kZW50ZWQgZW1wdHkgbGluZXMgaW4gY29udGVudFxuICAgIGZvciAobGV0IGkgPSBsaW5lcy5sZW5ndGggLSAxOyBpID49IGNob21wU3RhcnQ7IC0taSkge1xuICAgICAgICBpZiAobGluZXNbaV1bMF0ubGVuZ3RoID4gdHJpbUluZGVudClcbiAgICAgICAgICAgIGNob21wU3RhcnQgPSBpICsgMTtcbiAgICB9XG4gICAgbGV0IHZhbHVlID0gJyc7XG4gICAgbGV0IHNlcCA9ICcnO1xuICAgIGxldCBwcmV2TW9yZUluZGVudGVkID0gZmFsc2U7XG4gICAgLy8gbGVhZGluZyB3aGl0ZXNwYWNlIGlzIGtlcHQgaW50YWN0XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb250ZW50U3RhcnQ7ICsraSlcbiAgICAgICAgdmFsdWUgKz0gbGluZXNbaV1bMF0uc2xpY2UodHJpbUluZGVudCkgKyAnXFxuJztcbiAgICBmb3IgKGxldCBpID0gY29udGVudFN0YXJ0OyBpIDwgY2hvbXBTdGFydDsgKytpKSB7XG4gICAgICAgIGxldCBbaW5kZW50LCBjb250ZW50XSA9IGxpbmVzW2ldO1xuICAgICAgICBvZmZzZXQgKz0gaW5kZW50Lmxlbmd0aCArIGNvbnRlbnQubGVuZ3RoICsgMTtcbiAgICAgICAgY29uc3QgY3JsZiA9IGNvbnRlbnRbY29udGVudC5sZW5ndGggLSAxXSA9PT0gJ1xccic7XG4gICAgICAgIGlmIChjcmxmKVxuICAgICAgICAgICAgY29udGVudCA9IGNvbnRlbnQuc2xpY2UoMCwgLTEpO1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgYWxyZWFkeSBjYXVnaHQgaW4gbGV4ZXIgKi9cbiAgICAgICAgaWYgKGNvbnRlbnQgJiYgaW5kZW50Lmxlbmd0aCA8IHRyaW1JbmRlbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHNyYyA9IGhlYWRlci5pbmRlbnRcbiAgICAgICAgICAgICAgICA/ICdleHBsaWNpdCBpbmRlbnRhdGlvbiBpbmRpY2F0b3InXG4gICAgICAgICAgICAgICAgOiAnZmlyc3QgbGluZSc7XG4gICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYEJsb2NrIHNjYWxhciBsaW5lcyBtdXN0IG5vdCBiZSBsZXNzIGluZGVudGVkIHRoYW4gdGhlaXIgJHtzcmN9YDtcbiAgICAgICAgICAgIG9uRXJyb3Iob2Zmc2V0IC0gY29udGVudC5sZW5ndGggLSAoY3JsZiA/IDIgOiAxKSwgJ0JBRF9JTkRFTlQnLCBtZXNzYWdlKTtcbiAgICAgICAgICAgIGluZGVudCA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlID09PSBTY2FsYXIuU2NhbGFyLkJMT0NLX0xJVEVSQUwpIHtcbiAgICAgICAgICAgIHZhbHVlICs9IHNlcCArIGluZGVudC5zbGljZSh0cmltSW5kZW50KSArIGNvbnRlbnQ7XG4gICAgICAgICAgICBzZXAgPSAnXFxuJztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChpbmRlbnQubGVuZ3RoID4gdHJpbUluZGVudCB8fCBjb250ZW50WzBdID09PSAnXFx0Jykge1xuICAgICAgICAgICAgLy8gbW9yZS1pbmRlbnRlZCBjb250ZW50IHdpdGhpbiBhIGZvbGRlZCBibG9ja1xuICAgICAgICAgICAgaWYgKHNlcCA9PT0gJyAnKVxuICAgICAgICAgICAgICAgIHNlcCA9ICdcXG4nO1xuICAgICAgICAgICAgZWxzZSBpZiAoIXByZXZNb3JlSW5kZW50ZWQgJiYgc2VwID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICBzZXAgPSAnXFxuXFxuJztcbiAgICAgICAgICAgIHZhbHVlICs9IHNlcCArIGluZGVudC5zbGljZSh0cmltSW5kZW50KSArIGNvbnRlbnQ7XG4gICAgICAgICAgICBzZXAgPSAnXFxuJztcbiAgICAgICAgICAgIHByZXZNb3JlSW5kZW50ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGNvbnRlbnQgPT09ICcnKSB7XG4gICAgICAgICAgICAvLyBlbXB0eSBsaW5lXG4gICAgICAgICAgICBpZiAoc2VwID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICB2YWx1ZSArPSAnXFxuJztcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBzZXAgPSAnXFxuJztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHZhbHVlICs9IHNlcCArIGNvbnRlbnQ7XG4gICAgICAgICAgICBzZXAgPSAnICc7XG4gICAgICAgICAgICBwcmV2TW9yZUluZGVudGVkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3dpdGNoIChoZWFkZXIuY2hvbXApIHtcbiAgICAgICAgY2FzZSAnLSc6XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnKyc6XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gY2hvbXBTdGFydDsgaSA8IGxpbmVzLmxlbmd0aDsgKytpKVxuICAgICAgICAgICAgICAgIHZhbHVlICs9ICdcXG4nICsgbGluZXNbaV1bMF0uc2xpY2UodHJpbUluZGVudCk7XG4gICAgICAgICAgICBpZiAodmFsdWVbdmFsdWUubGVuZ3RoIC0gMV0gIT09ICdcXG4nKVxuICAgICAgICAgICAgICAgIHZhbHVlICs9ICdcXG4nO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICB2YWx1ZSArPSAnXFxuJztcbiAgICB9XG4gICAgY29uc3QgZW5kID0gc3RhcnQgKyBoZWFkZXIubGVuZ3RoICsgc2NhbGFyLnNvdXJjZS5sZW5ndGg7XG4gICAgcmV0dXJuIHsgdmFsdWUsIHR5cGUsIGNvbW1lbnQ6IGhlYWRlci5jb21tZW50LCByYW5nZTogW3N0YXJ0LCBlbmQsIGVuZF0gfTtcbn1cbmZ1bmN0aW9uIHBhcnNlQmxvY2tTY2FsYXJIZWFkZXIoeyBvZmZzZXQsIHByb3BzIH0sIHN0cmljdCwgb25FcnJvcikge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiBzaG91bGQgbm90IGhhcHBlbiAqL1xuICAgIGlmIChwcm9wc1swXS50eXBlICE9PSAnYmxvY2stc2NhbGFyLWhlYWRlcicpIHtcbiAgICAgICAgb25FcnJvcihwcm9wc1swXSwgJ0lNUE9TU0lCTEUnLCAnQmxvY2sgc2NhbGFyIGhlYWRlciBub3QgZm91bmQnKTtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHsgc291cmNlIH0gPSBwcm9wc1swXTtcbiAgICBjb25zdCBtb2RlID0gc291cmNlWzBdO1xuICAgIGxldCBpbmRlbnQgPSAwO1xuICAgIGxldCBjaG9tcCA9ICcnO1xuICAgIGxldCBlcnJvciA9IC0xO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDwgc291cmNlLmxlbmd0aDsgKytpKSB7XG4gICAgICAgIGNvbnN0IGNoID0gc291cmNlW2ldO1xuICAgICAgICBpZiAoIWNob21wICYmIChjaCA9PT0gJy0nIHx8IGNoID09PSAnKycpKVxuICAgICAgICAgICAgY2hvbXAgPSBjaDtcbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBuID0gTnVtYmVyKGNoKTtcbiAgICAgICAgICAgIGlmICghaW5kZW50ICYmIG4pXG4gICAgICAgICAgICAgICAgaW5kZW50ID0gbjtcbiAgICAgICAgICAgIGVsc2UgaWYgKGVycm9yID09PSAtMSlcbiAgICAgICAgICAgICAgICBlcnJvciA9IG9mZnNldCArIGk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGVycm9yICE9PSAtMSlcbiAgICAgICAgb25FcnJvcihlcnJvciwgJ1VORVhQRUNURURfVE9LRU4nLCBgQmxvY2sgc2NhbGFyIGhlYWRlciBpbmNsdWRlcyBleHRyYSBjaGFyYWN0ZXJzOiAke3NvdXJjZX1gKTtcbiAgICBsZXQgaGFzU3BhY2UgPSBmYWxzZTtcbiAgICBsZXQgY29tbWVudCA9ICcnO1xuICAgIGxldCBsZW5ndGggPSBzb3VyY2UubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDwgcHJvcHMubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgY29uc3QgdG9rZW4gPSBwcm9wc1tpXTtcbiAgICAgICAgc3dpdGNoICh0b2tlbi50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgaGFzU3BhY2UgPSB0cnVlO1xuICAgICAgICAgICAgLy8gZmFsbHRocm91Z2hcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIGxlbmd0aCArPSB0b2tlbi5zb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgaWYgKHN0cmljdCAmJiAhaGFzU3BhY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9ICdDb21tZW50cyBtdXN0IGJlIHNlcGFyYXRlZCBmcm9tIG90aGVyIHRva2VucyBieSB3aGl0ZSBzcGFjZSBjaGFyYWN0ZXJzJztcbiAgICAgICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ01JU1NJTkdfQ0hBUicsIG1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsZW5ndGggKz0gdG9rZW4uc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgICAgICBjb21tZW50ID0gdG9rZW4uc291cmNlLnN1YnN0cmluZygxKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Vycm9yJzpcbiAgICAgICAgICAgICAgICBvbkVycm9yKHRva2VuLCAnVU5FWFBFQ1RFRF9UT0tFTicsIHRva2VuLm1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIGxlbmd0aCArPSB0b2tlbi5zb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgc2hvdWxkIG5vdCBoYXBwZW4gKi9cbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYFVuZXhwZWN0ZWQgdG9rZW4gaW4gYmxvY2sgc2NhbGFyIGhlYWRlcjogJHt0b2tlbi50eXBlfWA7XG4gICAgICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ1VORVhQRUNURURfVE9LRU4nLCBtZXNzYWdlKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0cyA9IHRva2VuLnNvdXJjZTtcbiAgICAgICAgICAgICAgICBpZiAodHMgJiYgdHlwZW9mIHRzID09PSAnc3RyaW5nJylcbiAgICAgICAgICAgICAgICAgICAgbGVuZ3RoICs9IHRzLmxlbmd0aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4geyBtb2RlLCBpbmRlbnQsIGNob21wLCBjb21tZW50LCBsZW5ndGggfTtcbn1cbi8qKiBAcmV0dXJucyBBcnJheSBvZiBsaW5lcyBzcGxpdCB1cCBhcyBgW2luZGVudCwgY29udGVudF1gICovXG5mdW5jdGlvbiBzcGxpdExpbmVzKHNvdXJjZSkge1xuICAgIGNvbnN0IHNwbGl0ID0gc291cmNlLnNwbGl0KC9cXG4oICopLyk7XG4gICAgY29uc3QgZmlyc3QgPSBzcGxpdFswXTtcbiAgICBjb25zdCBtID0gZmlyc3QubWF0Y2goL14oICopLyk7XG4gICAgY29uc3QgbGluZTAgPSBtPy5bMV1cbiAgICAgICAgPyBbbVsxXSwgZmlyc3Quc2xpY2UobVsxXS5sZW5ndGgpXVxuICAgICAgICA6IFsnJywgZmlyc3RdO1xuICAgIGNvbnN0IGxpbmVzID0gW2xpbmUwXTtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IHNwbGl0Lmxlbmd0aDsgaSArPSAyKVxuICAgICAgICBsaW5lcy5wdXNoKFtzcGxpdFtpXSwgc3BsaXRbaSArIDFdXSk7XG4gICAgcmV0dXJuIGxpbmVzO1xufVxuXG5leHBvcnRzLnJlc29sdmVCbG9ja1NjYWxhciA9IHJlc29sdmVCbG9ja1NjYWxhcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBTY2FsYXIgPSByZXF1aXJlKCcuLi9ub2Rlcy9TY2FsYXIuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xuXG5mdW5jdGlvbiByZXNvbHZlRmxvd1NjYWxhcihzY2FsYXIsIHN0cmljdCwgb25FcnJvcikge1xuICAgIGNvbnN0IHsgb2Zmc2V0LCB0eXBlLCBzb3VyY2UsIGVuZCB9ID0gc2NhbGFyO1xuICAgIGxldCBfdHlwZTtcbiAgICBsZXQgdmFsdWU7XG4gICAgY29uc3QgX29uRXJyb3IgPSAocmVsLCBjb2RlLCBtc2cpID0+IG9uRXJyb3Iob2Zmc2V0ICsgcmVsLCBjb2RlLCBtc2cpO1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICAgICAgX3R5cGUgPSBTY2FsYXIuU2NhbGFyLlBMQUlOO1xuICAgICAgICAgICAgdmFsdWUgPSBwbGFpblZhbHVlKHNvdXJjZSwgX29uRXJyb3IpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIF90eXBlID0gU2NhbGFyLlNjYWxhci5RVU9URV9TSU5HTEU7XG4gICAgICAgICAgICB2YWx1ZSA9IHNpbmdsZVF1b3RlZFZhbHVlKHNvdXJjZSwgX29uRXJyb3IpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIF90eXBlID0gU2NhbGFyLlNjYWxhci5RVU9URV9ET1VCTEU7XG4gICAgICAgICAgICB2YWx1ZSA9IGRvdWJsZVF1b3RlZFZhbHVlKHNvdXJjZSwgX29uRXJyb3IpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBvbkVycm9yKHNjYWxhciwgJ1VORVhQRUNURURfVE9LRU4nLCBgRXhwZWN0ZWQgYSBmbG93IHNjYWxhciB2YWx1ZSwgYnV0IGZvdW5kOiAke3R5cGV9YCk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgICAgICB0eXBlOiBudWxsLFxuICAgICAgICAgICAgICAgIGNvbW1lbnQ6ICcnLFxuICAgICAgICAgICAgICAgIHJhbmdlOiBbb2Zmc2V0LCBvZmZzZXQgKyBzb3VyY2UubGVuZ3RoLCBvZmZzZXQgKyBzb3VyY2UubGVuZ3RoXVxuICAgICAgICAgICAgfTtcbiAgICB9XG4gICAgY29uc3QgdmFsdWVFbmQgPSBvZmZzZXQgKyBzb3VyY2UubGVuZ3RoO1xuICAgIGNvbnN0IHJlID0gcmVzb2x2ZUVuZC5yZXNvbHZlRW5kKGVuZCwgdmFsdWVFbmQsIHN0cmljdCwgb25FcnJvcik7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdmFsdWUsXG4gICAgICAgIHR5cGU6IF90eXBlLFxuICAgICAgICBjb21tZW50OiByZS5jb21tZW50LFxuICAgICAgICByYW5nZTogW29mZnNldCwgdmFsdWVFbmQsIHJlLm9mZnNldF1cbiAgICB9O1xufVxuZnVuY3Rpb24gcGxhaW5WYWx1ZShzb3VyY2UsIG9uRXJyb3IpIHtcbiAgICBsZXQgYmFkQ2hhciA9ICcnO1xuICAgIHN3aXRjaCAoc291cmNlWzBdKSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGNhc2UgJ1xcdCc6XG4gICAgICAgICAgICBiYWRDaGFyID0gJ2EgdGFiIGNoYXJhY3Rlcic7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnLCc6XG4gICAgICAgICAgICBiYWRDaGFyID0gJ2Zsb3cgaW5kaWNhdG9yIGNoYXJhY3RlciAsJztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICclJzpcbiAgICAgICAgICAgIGJhZENoYXIgPSAnZGlyZWN0aXZlIGluZGljYXRvciBjaGFyYWN0ZXIgJSc7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnfCc6XG4gICAgICAgIGNhc2UgJz4nOiB7XG4gICAgICAgICAgICBiYWRDaGFyID0gYGJsb2NrIHNjYWxhciBpbmRpY2F0b3IgJHtzb3VyY2VbMF19YDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ0AnOlxuICAgICAgICBjYXNlICdgJzoge1xuICAgICAgICAgICAgYmFkQ2hhciA9IGByZXNlcnZlZCBjaGFyYWN0ZXIgJHtzb3VyY2VbMF19YDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlmIChiYWRDaGFyKVxuICAgICAgICBvbkVycm9yKDAsICdCQURfU0NBTEFSX1NUQVJUJywgYFBsYWluIHZhbHVlIGNhbm5vdCBzdGFydCB3aXRoICR7YmFkQ2hhcn1gKTtcbiAgICByZXR1cm4gZm9sZExpbmVzKHNvdXJjZSk7XG59XG5mdW5jdGlvbiBzaW5nbGVRdW90ZWRWYWx1ZShzb3VyY2UsIG9uRXJyb3IpIHtcbiAgICBpZiAoc291cmNlW3NvdXJjZS5sZW5ndGggLSAxXSAhPT0gXCInXCIgfHwgc291cmNlLmxlbmd0aCA9PT0gMSlcbiAgICAgICAgb25FcnJvcihzb3VyY2UubGVuZ3RoLCAnTUlTU0lOR19DSEFSJywgXCJNaXNzaW5nIGNsb3NpbmcgJ3F1b3RlXCIpO1xuICAgIHJldHVybiBmb2xkTGluZXMoc291cmNlLnNsaWNlKDEsIC0xKSkucmVwbGFjZSgvJycvZywgXCInXCIpO1xufVxuZnVuY3Rpb24gZm9sZExpbmVzKHNvdXJjZSkge1xuICAgIC8qKlxuICAgICAqIFRoZSBuZWdhdGl2ZSBsb29rYmVoaW5kIGhlcmUgYW5kIGluIHRoZSBgcmVgIFJlZ0V4cCBpcyB0b1xuICAgICAqIHByZXZlbnQgY2F1c2luZyBhIHBvbHlub21pYWwgc2VhcmNoIHRpbWUgaW4gY2VydGFpbiBjYXNlcy5cbiAgICAgKlxuICAgICAqIFRoZSB0cnktY2F0Y2ggaXMgZm9yIFNhZmFyaSwgd2hpY2ggZG9lc24ndCBzdXBwb3J0IHRoaXMgeWV0OlxuICAgICAqIGh0dHBzOi8vY2FuaXVzZS5jb20vanMtcmVnZXhwLWxvb2tiZWhpbmRcbiAgICAgKi9cbiAgICBsZXQgZmlyc3QsIGxpbmU7XG4gICAgdHJ5IHtcbiAgICAgICAgZmlyc3QgPSBuZXcgUmVnRXhwKCcoLio/KSg/PCFbIFxcdF0pWyBcXHRdKlxccj9cXG4nLCAnc3knKTtcbiAgICAgICAgbGluZSA9IG5ldyBSZWdFeHAoJ1sgXFx0XSooLio/KSg/Oig/PCFbIFxcdF0pWyBcXHRdKik/XFxyP1xcbicsICdzeScpO1xuICAgIH1cbiAgICBjYXRjaCB7XG4gICAgICAgIGZpcnN0ID0gLyguKj8pWyBcXHRdKlxccj9cXG4vc3k7XG4gICAgICAgIGxpbmUgPSAvWyBcXHRdKiguKj8pWyBcXHRdKlxccj9cXG4vc3k7XG4gICAgfVxuICAgIGxldCBtYXRjaCA9IGZpcnN0LmV4ZWMoc291cmNlKTtcbiAgICBpZiAoIW1hdGNoKVxuICAgICAgICByZXR1cm4gc291cmNlO1xuICAgIGxldCByZXMgPSBtYXRjaFsxXTtcbiAgICBsZXQgc2VwID0gJyAnO1xuICAgIGxldCBwb3MgPSBmaXJzdC5sYXN0SW5kZXg7XG4gICAgbGluZS5sYXN0SW5kZXggPSBwb3M7XG4gICAgd2hpbGUgKChtYXRjaCA9IGxpbmUuZXhlYyhzb3VyY2UpKSkge1xuICAgICAgICBpZiAobWF0Y2hbMV0gPT09ICcnKSB7XG4gICAgICAgICAgICBpZiAoc2VwID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICByZXMgKz0gc2VwO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHNlcCA9ICdcXG4nO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmVzICs9IHNlcCArIG1hdGNoWzFdO1xuICAgICAgICAgICAgc2VwID0gJyAnO1xuICAgICAgICB9XG4gICAgICAgIHBvcyA9IGxpbmUubGFzdEluZGV4O1xuICAgIH1cbiAgICBjb25zdCBsYXN0ID0gL1sgXFx0XSooLiopL3N5O1xuICAgIGxhc3QubGFzdEluZGV4ID0gcG9zO1xuICAgIG1hdGNoID0gbGFzdC5leGVjKHNvdXJjZSk7XG4gICAgcmV0dXJuIHJlcyArIHNlcCArIChtYXRjaD8uWzFdID8/ICcnKTtcbn1cbmZ1bmN0aW9uIGRvdWJsZVF1b3RlZFZhbHVlKHNvdXJjZSwgb25FcnJvcikge1xuICAgIGxldCByZXMgPSAnJztcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IHNvdXJjZS5sZW5ndGggLSAxOyArK2kpIHtcbiAgICAgICAgY29uc3QgY2ggPSBzb3VyY2VbaV07XG4gICAgICAgIGlmIChjaCA9PT0gJ1xccicgJiYgc291cmNlW2kgKyAxXSA9PT0gJ1xcbicpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgaWYgKGNoID09PSAnXFxuJykge1xuICAgICAgICAgICAgY29uc3QgeyBmb2xkLCBvZmZzZXQgfSA9IGZvbGROZXdsaW5lKHNvdXJjZSwgaSk7XG4gICAgICAgICAgICByZXMgKz0gZm9sZDtcbiAgICAgICAgICAgIGkgPSBvZmZzZXQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICdcXFxcJykge1xuICAgICAgICAgICAgbGV0IG5leHQgPSBzb3VyY2VbKytpXTtcbiAgICAgICAgICAgIGNvbnN0IGNjID0gZXNjYXBlQ29kZXNbbmV4dF07XG4gICAgICAgICAgICBpZiAoY2MpXG4gICAgICAgICAgICAgICAgcmVzICs9IGNjO1xuICAgICAgICAgICAgZWxzZSBpZiAobmV4dCA9PT0gJ1xcbicpIHtcbiAgICAgICAgICAgICAgICAvLyBza2lwIGVzY2FwZWQgbmV3bGluZXMsIGJ1dCBzdGlsbCB0cmltIHRoZSBmb2xsb3dpbmcgbGluZVxuICAgICAgICAgICAgICAgIG5leHQgPSBzb3VyY2VbaSArIDFdO1xuICAgICAgICAgICAgICAgIHdoaWxlIChuZXh0ID09PSAnICcgfHwgbmV4dCA9PT0gJ1xcdCcpXG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSBzb3VyY2VbKytpICsgMV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChuZXh0ID09PSAnXFxyJyAmJiBzb3VyY2VbaSArIDFdID09PSAnXFxuJykge1xuICAgICAgICAgICAgICAgIC8vIHNraXAgZXNjYXBlZCBDUkxGIG5ld2xpbmVzLCBidXQgc3RpbGwgdHJpbSB0aGUgZm9sbG93aW5nIGxpbmVcbiAgICAgICAgICAgICAgICBuZXh0ID0gc291cmNlWysraSArIDFdO1xuICAgICAgICAgICAgICAgIHdoaWxlIChuZXh0ID09PSAnICcgfHwgbmV4dCA9PT0gJ1xcdCcpXG4gICAgICAgICAgICAgICAgICAgIG5leHQgPSBzb3VyY2VbKytpICsgMV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChuZXh0ID09PSAneCcgfHwgbmV4dCA9PT0gJ3UnIHx8IG5leHQgPT09ICdVJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlbmd0aCA9IHsgeDogMiwgdTogNCwgVTogOCB9W25leHRdO1xuICAgICAgICAgICAgICAgIHJlcyArPSBwYXJzZUNoYXJDb2RlKHNvdXJjZSwgaSArIDEsIGxlbmd0aCwgb25FcnJvcik7XG4gICAgICAgICAgICAgICAgaSArPSBsZW5ndGg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCByYXcgPSBzb3VyY2Uuc3Vic3RyKGkgLSAxLCAyKTtcbiAgICAgICAgICAgICAgICBvbkVycm9yKGkgLSAxLCAnQkFEX0RRX0VTQ0FQRScsIGBJbnZhbGlkIGVzY2FwZSBzZXF1ZW5jZSAke3Jhd31gKTtcbiAgICAgICAgICAgICAgICByZXMgKz0gcmF3O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnKSB7XG4gICAgICAgICAgICAvLyB0cmltIHRyYWlsaW5nIHdoaXRlc3BhY2VcbiAgICAgICAgICAgIGNvbnN0IHdzU3RhcnQgPSBpO1xuICAgICAgICAgICAgbGV0IG5leHQgPSBzb3VyY2VbaSArIDFdO1xuICAgICAgICAgICAgd2hpbGUgKG5leHQgPT09ICcgJyB8fCBuZXh0ID09PSAnXFx0JylcbiAgICAgICAgICAgICAgICBuZXh0ID0gc291cmNlWysraSArIDFdO1xuICAgICAgICAgICAgaWYgKG5leHQgIT09ICdcXG4nICYmICEobmV4dCA9PT0gJ1xccicgJiYgc291cmNlW2kgKyAyXSA9PT0gJ1xcbicpKVxuICAgICAgICAgICAgICAgIHJlcyArPSBpID4gd3NTdGFydCA/IHNvdXJjZS5zbGljZSh3c1N0YXJ0LCBpICsgMSkgOiBjaDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJlcyArPSBjaDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoc291cmNlW3NvdXJjZS5sZW5ndGggLSAxXSAhPT0gJ1wiJyB8fCBzb3VyY2UubGVuZ3RoID09PSAxKVxuICAgICAgICBvbkVycm9yKHNvdXJjZS5sZW5ndGgsICdNSVNTSU5HX0NIQVInLCAnTWlzc2luZyBjbG9zaW5nIFwicXVvdGUnKTtcbiAgICByZXR1cm4gcmVzO1xufVxuLyoqXG4gKiBGb2xkIGEgc2luZ2xlIG5ld2xpbmUgaW50byBhIHNwYWNlLCBtdWx0aXBsZSBuZXdsaW5lcyB0byBOIC0gMSBuZXdsaW5lcy5cbiAqIFByZXN1bWVzIGBzb3VyY2Vbb2Zmc2V0XSA9PT0gJ1xcbidgXG4gKi9cbmZ1bmN0aW9uIGZvbGROZXdsaW5lKHNvdXJjZSwgb2Zmc2V0KSB7XG4gICAgbGV0IGZvbGQgPSAnJztcbiAgICBsZXQgY2ggPSBzb3VyY2Vbb2Zmc2V0ICsgMV07XG4gICAgd2hpbGUgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnIHx8IGNoID09PSAnXFxuJyB8fCBjaCA9PT0gJ1xccicpIHtcbiAgICAgICAgaWYgKGNoID09PSAnXFxyJyAmJiBzb3VyY2Vbb2Zmc2V0ICsgMl0gIT09ICdcXG4nKVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGlmIChjaCA9PT0gJ1xcbicpXG4gICAgICAgICAgICBmb2xkICs9ICdcXG4nO1xuICAgICAgICBvZmZzZXQgKz0gMTtcbiAgICAgICAgY2ggPSBzb3VyY2Vbb2Zmc2V0ICsgMV07XG4gICAgfVxuICAgIGlmICghZm9sZClcbiAgICAgICAgZm9sZCA9ICcgJztcbiAgICByZXR1cm4geyBmb2xkLCBvZmZzZXQgfTtcbn1cbmNvbnN0IGVzY2FwZUNvZGVzID0ge1xuICAgICcwJzogJ1xcMCcsIC8vIG51bGwgY2hhcmFjdGVyXG4gICAgYTogJ1xceDA3JywgLy8gYmVsbCBjaGFyYWN0ZXJcbiAgICBiOiAnXFxiJywgLy8gYmFja3NwYWNlXG4gICAgZTogJ1xceDFiJywgLy8gZXNjYXBlIGNoYXJhY3RlclxuICAgIGY6ICdcXGYnLCAvLyBmb3JtIGZlZWRcbiAgICBuOiAnXFxuJywgLy8gbGluZSBmZWVkXG4gICAgcjogJ1xccicsIC8vIGNhcnJpYWdlIHJldHVyblxuICAgIHQ6ICdcXHQnLCAvLyBob3Jpem9udGFsIHRhYlxuICAgIHY6ICdcXHYnLCAvLyB2ZXJ0aWNhbCB0YWJcbiAgICBOOiAnXFx1MDA4NScsIC8vIFVuaWNvZGUgbmV4dCBsaW5lXG4gICAgXzogJ1xcdTAwYTAnLCAvLyBVbmljb2RlIG5vbi1icmVha2luZyBzcGFjZVxuICAgIEw6ICdcXHUyMDI4JywgLy8gVW5pY29kZSBsaW5lIHNlcGFyYXRvclxuICAgIFA6ICdcXHUyMDI5JywgLy8gVW5pY29kZSBwYXJhZ3JhcGggc2VwYXJhdG9yXG4gICAgJyAnOiAnICcsXG4gICAgJ1wiJzogJ1wiJyxcbiAgICAnLyc6ICcvJyxcbiAgICAnXFxcXCc6ICdcXFxcJyxcbiAgICAnXFx0JzogJ1xcdCdcbn07XG5mdW5jdGlvbiBwYXJzZUNoYXJDb2RlKHNvdXJjZSwgb2Zmc2V0LCBsZW5ndGgsIG9uRXJyb3IpIHtcbiAgICBjb25zdCBjYyA9IHNvdXJjZS5zdWJzdHIob2Zmc2V0LCBsZW5ndGgpO1xuICAgIGNvbnN0IG9rID0gY2MubGVuZ3RoID09PSBsZW5ndGggJiYgL15bMC05YS1mQS1GXSskLy50ZXN0KGNjKTtcbiAgICBjb25zdCBjb2RlID0gb2sgPyBwYXJzZUludChjYywgMTYpIDogTmFOO1xuICAgIGlmIChpc05hTihjb2RlKSkge1xuICAgICAgICBjb25zdCByYXcgPSBzb3VyY2Uuc3Vic3RyKG9mZnNldCAtIDIsIGxlbmd0aCArIDIpO1xuICAgICAgICBvbkVycm9yKG9mZnNldCAtIDIsICdCQURfRFFfRVNDQVBFJywgYEludmFsaWQgZXNjYXBlIHNlcXVlbmNlICR7cmF3fWApO1xuICAgICAgICByZXR1cm4gcmF3O1xuICAgIH1cbiAgICByZXR1cm4gU3RyaW5nLmZyb21Db2RlUG9pbnQoY29kZSk7XG59XG5cbmV4cG9ydHMucmVzb2x2ZUZsb3dTY2FsYXIgPSByZXNvbHZlRmxvd1NjYWxhcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBpZGVudGl0eSA9IHJlcXVpcmUoJy4uL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgU2NhbGFyID0gcmVxdWlyZSgnLi4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgcmVzb2x2ZUJsb2NrU2NhbGFyID0gcmVxdWlyZSgnLi9yZXNvbHZlLWJsb2NrLXNjYWxhci5qcycpO1xudmFyIHJlc29sdmVGbG93U2NhbGFyID0gcmVxdWlyZSgnLi9yZXNvbHZlLWZsb3ctc2NhbGFyLmpzJyk7XG5cbmZ1bmN0aW9uIGNvbXBvc2VTY2FsYXIoY3R4LCB0b2tlbiwgdGFnVG9rZW4sIG9uRXJyb3IpIHtcbiAgICBjb25zdCB7IHZhbHVlLCB0eXBlLCBjb21tZW50LCByYW5nZSB9ID0gdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLXNjYWxhcidcbiAgICAgICAgPyByZXNvbHZlQmxvY2tTY2FsYXIucmVzb2x2ZUJsb2NrU2NhbGFyKGN0eCwgdG9rZW4sIG9uRXJyb3IpXG4gICAgICAgIDogcmVzb2x2ZUZsb3dTY2FsYXIucmVzb2x2ZUZsb3dTY2FsYXIodG9rZW4sIGN0eC5vcHRpb25zLnN0cmljdCwgb25FcnJvcik7XG4gICAgY29uc3QgdGFnTmFtZSA9IHRhZ1Rva2VuXG4gICAgICAgID8gY3R4LmRpcmVjdGl2ZXMudGFnTmFtZSh0YWdUb2tlbi5zb3VyY2UsIG1zZyA9PiBvbkVycm9yKHRhZ1Rva2VuLCAnVEFHX1JFU09MVkVfRkFJTEVEJywgbXNnKSlcbiAgICAgICAgOiBudWxsO1xuICAgIGxldCB0YWc7XG4gICAgaWYgKGN0eC5vcHRpb25zLnN0cmluZ0tleXMgJiYgY3R4LmF0S2V5KSB7XG4gICAgICAgIHRhZyA9IGN0eC5zY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTtcbiAgICB9XG4gICAgZWxzZSBpZiAodGFnTmFtZSlcbiAgICAgICAgdGFnID0gZmluZFNjYWxhclRhZ0J5TmFtZShjdHguc2NoZW1hLCB2YWx1ZSwgdGFnTmFtZSwgdGFnVG9rZW4sIG9uRXJyb3IpO1xuICAgIGVsc2UgaWYgKHRva2VuLnR5cGUgPT09ICdzY2FsYXInKVxuICAgICAgICB0YWcgPSBmaW5kU2NhbGFyVGFnQnlUZXN0KGN0eCwgdmFsdWUsIHRva2VuLCBvbkVycm9yKTtcbiAgICBlbHNlXG4gICAgICAgIHRhZyA9IGN0eC5zY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTtcbiAgICBsZXQgc2NhbGFyO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlcyA9IHRhZy5yZXNvbHZlKHZhbHVlLCBtc2cgPT4gb25FcnJvcih0YWdUb2tlbiA/PyB0b2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIG1zZyksIGN0eC5vcHRpb25zKTtcbiAgICAgICAgc2NhbGFyID0gaWRlbnRpdHkuaXNTY2FsYXIocmVzKSA/IHJlcyA6IG5ldyBTY2FsYXIuU2NhbGFyKHJlcyk7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zdCBtc2cgPSBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcik7XG4gICAgICAgIG9uRXJyb3IodGFnVG9rZW4gPz8gdG9rZW4sICdUQUdfUkVTT0xWRV9GQUlMRUQnLCBtc2cpO1xuICAgICAgICBzY2FsYXIgPSBuZXcgU2NhbGFyLlNjYWxhcih2YWx1ZSk7XG4gICAgfVxuICAgIHNjYWxhci5yYW5nZSA9IHJhbmdlO1xuICAgIHNjYWxhci5zb3VyY2UgPSB2YWx1ZTtcbiAgICBpZiAodHlwZSlcbiAgICAgICAgc2NhbGFyLnR5cGUgPSB0eXBlO1xuICAgIGlmICh0YWdOYW1lKVxuICAgICAgICBzY2FsYXIudGFnID0gdGFnTmFtZTtcbiAgICBpZiAodGFnLmZvcm1hdClcbiAgICAgICAgc2NhbGFyLmZvcm1hdCA9IHRhZy5mb3JtYXQ7XG4gICAgaWYgKGNvbW1lbnQpXG4gICAgICAgIHNjYWxhci5jb21tZW50ID0gY29tbWVudDtcbiAgICByZXR1cm4gc2NhbGFyO1xufVxuZnVuY3Rpb24gZmluZFNjYWxhclRhZ0J5TmFtZShzY2hlbWEsIHZhbHVlLCB0YWdOYW1lLCB0YWdUb2tlbiwgb25FcnJvcikge1xuICAgIGlmICh0YWdOYW1lID09PSAnIScpXG4gICAgICAgIHJldHVybiBzY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTsgLy8gbm9uLXNwZWNpZmljIHRhZ1xuICAgIGNvbnN0IG1hdGNoV2l0aFRlc3QgPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRhZyBvZiBzY2hlbWEudGFncykge1xuICAgICAgICBpZiAoIXRhZy5jb2xsZWN0aW9uICYmIHRhZy50YWcgPT09IHRhZ05hbWUpIHtcbiAgICAgICAgICAgIGlmICh0YWcuZGVmYXVsdCAmJiB0YWcudGVzdClcbiAgICAgICAgICAgICAgICBtYXRjaFdpdGhUZXN0LnB1c2godGFnKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFnO1xuICAgICAgICB9XG4gICAgfVxuICAgIGZvciAoY29uc3QgdGFnIG9mIG1hdGNoV2l0aFRlc3QpXG4gICAgICAgIGlmICh0YWcudGVzdD8udGVzdCh2YWx1ZSkpXG4gICAgICAgICAgICByZXR1cm4gdGFnO1xuICAgIGNvbnN0IGt0ID0gc2NoZW1hLmtub3duVGFnc1t0YWdOYW1lXTtcbiAgICBpZiAoa3QgJiYgIWt0LmNvbGxlY3Rpb24pIHtcbiAgICAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIGtub3duIHRhZyBpcyBhdmFpbGFibGUgZm9yIHN0cmluZ2lmeWluZyxcbiAgICAgICAgLy8gYnV0IGRvZXMgbm90IGdldCB1c2VkIGJ5IGRlZmF1bHQuXG4gICAgICAgIHNjaGVtYS50YWdzLnB1c2goT2JqZWN0LmFzc2lnbih7fSwga3QsIHsgZGVmYXVsdDogZmFsc2UsIHRlc3Q6IHVuZGVmaW5lZCB9KSk7XG4gICAgICAgIHJldHVybiBrdDtcbiAgICB9XG4gICAgb25FcnJvcih0YWdUb2tlbiwgJ1RBR19SRVNPTFZFX0ZBSUxFRCcsIGBVbnJlc29sdmVkIHRhZzogJHt0YWdOYW1lfWAsIHRhZ05hbWUgIT09ICd0YWc6eWFtbC5vcmcsMjAwMjpzdHInKTtcbiAgICByZXR1cm4gc2NoZW1hW2lkZW50aXR5LlNDQUxBUl07XG59XG5mdW5jdGlvbiBmaW5kU2NhbGFyVGFnQnlUZXN0KHsgYXRLZXksIGRpcmVjdGl2ZXMsIHNjaGVtYSB9LCB2YWx1ZSwgdG9rZW4sIG9uRXJyb3IpIHtcbiAgICBjb25zdCB0YWcgPSBzY2hlbWEudGFncy5maW5kKHRhZyA9PiAodGFnLmRlZmF1bHQgPT09IHRydWUgfHwgKGF0S2V5ICYmIHRhZy5kZWZhdWx0ID09PSAna2V5JykpICYmXG4gICAgICAgIHRhZy50ZXN0Py50ZXN0KHZhbHVlKSkgfHwgc2NoZW1hW2lkZW50aXR5LlNDQUxBUl07XG4gICAgaWYgKHNjaGVtYS5jb21wYXQpIHtcbiAgICAgICAgY29uc3QgY29tcGF0ID0gc2NoZW1hLmNvbXBhdC5maW5kKHRhZyA9PiB0YWcuZGVmYXVsdCAmJiB0YWcudGVzdD8udGVzdCh2YWx1ZSkpID8/XG4gICAgICAgICAgICBzY2hlbWFbaWRlbnRpdHkuU0NBTEFSXTtcbiAgICAgICAgaWYgKHRhZy50YWcgIT09IGNvbXBhdC50YWcpIHtcbiAgICAgICAgICAgIGNvbnN0IHRzID0gZGlyZWN0aXZlcy50YWdTdHJpbmcodGFnLnRhZyk7XG4gICAgICAgICAgICBjb25zdCBjcyA9IGRpcmVjdGl2ZXMudGFnU3RyaW5nKGNvbXBhdC50YWcpO1xuICAgICAgICAgICAgY29uc3QgbXNnID0gYFZhbHVlIG1heSBiZSBwYXJzZWQgYXMgZWl0aGVyICR7dHN9IG9yICR7Y3N9YDtcbiAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdUQUdfUkVTT0xWRV9GQUlMRUQnLCBtc2csIHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0YWc7XG59XG5cbmV4cG9ydHMuY29tcG9zZVNjYWxhciA9IGNvbXBvc2VTY2FsYXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG5mdW5jdGlvbiBlbXB0eVNjYWxhclBvc2l0aW9uKG9mZnNldCwgYmVmb3JlLCBwb3MpIHtcbiAgICBpZiAoYmVmb3JlKSB7XG4gICAgICAgIHBvcyA/PyAocG9zID0gYmVmb3JlLmxlbmd0aCk7XG4gICAgICAgIGZvciAobGV0IGkgPSBwb3MgLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICAgICAgbGV0IHN0ID0gYmVmb3JlW2ldO1xuICAgICAgICAgICAgc3dpdGNoIChzdC50eXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQgLT0gc3Quc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUZWNobmljYWxseSwgYW4gZW1wdHkgc2NhbGFyIGlzIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBsYXN0IG5vbi1lbXB0eVxuICAgICAgICAgICAgLy8gbm9kZSwgYnV0IGl0J3MgbW9yZSB1c2VmdWwgdG8gcGxhY2UgaXQgYWZ0ZXIgYW55IHdoaXRlc3BhY2UuXG4gICAgICAgICAgICBzdCA9IGJlZm9yZVsrK2ldO1xuICAgICAgICAgICAgd2hpbGUgKHN0Py50eXBlID09PSAnc3BhY2UnKSB7XG4gICAgICAgICAgICAgICAgb2Zmc2V0ICs9IHN0LnNvdXJjZS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgc3QgPSBiZWZvcmVbKytpXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBvZmZzZXQ7XG59XG5cbmV4cG9ydHMuZW1wdHlTY2FsYXJQb3NpdGlvbiA9IGVtcHR5U2NhbGFyUG9zaXRpb247XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgQWxpYXMgPSByZXF1aXJlKCcuLi9ub2Rlcy9BbGlhcy5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBjb21wb3NlQ29sbGVjdGlvbiA9IHJlcXVpcmUoJy4vY29tcG9zZS1jb2xsZWN0aW9uLmpzJyk7XG52YXIgY29tcG9zZVNjYWxhciA9IHJlcXVpcmUoJy4vY29tcG9zZS1zY2FsYXIuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xudmFyIHV0aWxFbXB0eVNjYWxhclBvc2l0aW9uID0gcmVxdWlyZSgnLi91dGlsLWVtcHR5LXNjYWxhci1wb3NpdGlvbi5qcycpO1xuXG5jb25zdCBDTiA9IHsgY29tcG9zZU5vZGUsIGNvbXBvc2VFbXB0eU5vZGUgfTtcbmZ1bmN0aW9uIGNvbXBvc2VOb2RlKGN0eCwgdG9rZW4sIHByb3BzLCBvbkVycm9yKSB7XG4gICAgY29uc3QgYXRLZXkgPSBjdHguYXRLZXk7XG4gICAgY29uc3QgeyBzcGFjZUJlZm9yZSwgY29tbWVudCwgYW5jaG9yLCB0YWcgfSA9IHByb3BzO1xuICAgIGxldCBub2RlO1xuICAgIGxldCBpc1NyY1Rva2VuID0gdHJ1ZTtcbiAgICBzd2l0Y2ggKHRva2VuLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnYWxpYXMnOlxuICAgICAgICAgICAgbm9kZSA9IGNvbXBvc2VBbGlhcyhjdHgsIHRva2VuLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlmIChhbmNob3IgfHwgdGFnKVxuICAgICAgICAgICAgICAgIG9uRXJyb3IodG9rZW4sICdBTElBU19QUk9QUycsICdBbiBhbGlhcyBub2RlIG11c3Qgbm90IHNwZWNpZnkgYW55IHByb3BlcnRpZXMnKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICBjYXNlICdzaW5nbGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgY2FzZSAnYmxvY2stc2NhbGFyJzpcbiAgICAgICAgICAgIG5vZGUgPSBjb21wb3NlU2NhbGFyLmNvbXBvc2VTY2FsYXIoY3R4LCB0b2tlbiwgdGFnLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlmIChhbmNob3IpXG4gICAgICAgICAgICAgICAgbm9kZS5hbmNob3IgPSBhbmNob3Iuc291cmNlLnN1YnN0cmluZygxKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdibG9jay1tYXAnOlxuICAgICAgICBjYXNlICdibG9jay1zZXEnOlxuICAgICAgICBjYXNlICdmbG93LWNvbGxlY3Rpb24nOlxuICAgICAgICAgICAgbm9kZSA9IGNvbXBvc2VDb2xsZWN0aW9uLmNvbXBvc2VDb2xsZWN0aW9uKENOLCBjdHgsIHRva2VuLCBwcm9wcywgb25FcnJvcik7XG4gICAgICAgICAgICBpZiAoYW5jaG9yKVxuICAgICAgICAgICAgICAgIG5vZGUuYW5jaG9yID0gYW5jaG9yLnNvdXJjZS5zdWJzdHJpbmcoMSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IHRva2VuLnR5cGUgPT09ICdlcnJvcidcbiAgICAgICAgICAgICAgICA/IHRva2VuLm1lc3NhZ2VcbiAgICAgICAgICAgICAgICA6IGBVbnN1cHBvcnRlZCB0b2tlbiAodHlwZTogJHt0b2tlbi50eXBlfSlgO1xuICAgICAgICAgICAgb25FcnJvcih0b2tlbiwgJ1VORVhQRUNURURfVE9LRU4nLCBtZXNzYWdlKTtcbiAgICAgICAgICAgIG5vZGUgPSBjb21wb3NlRW1wdHlOb2RlKGN0eCwgdG9rZW4ub2Zmc2V0LCB1bmRlZmluZWQsIG51bGwsIHByb3BzLCBvbkVycm9yKTtcbiAgICAgICAgICAgIGlzU3JjVG9rZW4gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoYW5jaG9yICYmIG5vZGUuYW5jaG9yID09PSAnJylcbiAgICAgICAgb25FcnJvcihhbmNob3IsICdCQURfQUxJQVMnLCAnQW5jaG9yIGNhbm5vdCBiZSBhbiBlbXB0eSBzdHJpbmcnKTtcbiAgICBpZiAoYXRLZXkgJiZcbiAgICAgICAgY3R4Lm9wdGlvbnMuc3RyaW5nS2V5cyAmJlxuICAgICAgICAoIWlkZW50aXR5LmlzU2NhbGFyKG5vZGUpIHx8XG4gICAgICAgICAgICB0eXBlb2Ygbm9kZS52YWx1ZSAhPT0gJ3N0cmluZycgfHxcbiAgICAgICAgICAgIChub2RlLnRhZyAmJiBub2RlLnRhZyAhPT0gJ3RhZzp5YW1sLm9yZywyMDAyOnN0cicpKSkge1xuICAgICAgICBjb25zdCBtc2cgPSAnV2l0aCBzdHJpbmdLZXlzLCBhbGwga2V5cyBtdXN0IGJlIHN0cmluZ3MnO1xuICAgICAgICBvbkVycm9yKHRhZyA/PyB0b2tlbiwgJ05PTl9TVFJJTkdfS0VZJywgbXNnKTtcbiAgICB9XG4gICAgaWYgKHNwYWNlQmVmb3JlKVxuICAgICAgICBub2RlLnNwYWNlQmVmb3JlID0gdHJ1ZTtcbiAgICBpZiAoY29tbWVudCkge1xuICAgICAgICBpZiAodG9rZW4udHlwZSA9PT0gJ3NjYWxhcicgJiYgdG9rZW4uc291cmNlID09PSAnJylcbiAgICAgICAgICAgIG5vZGUuY29tbWVudCA9IGNvbW1lbnQ7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIG5vZGUuY29tbWVudEJlZm9yZSA9IGNvbW1lbnQ7XG4gICAgfVxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgVHlwZSBjaGVja2luZyBtaXNzZXMgbWVhbmluZyBvZiBpc1NyY1Rva2VuXG4gICAgaWYgKGN0eC5vcHRpb25zLmtlZXBTb3VyY2VUb2tlbnMgJiYgaXNTcmNUb2tlbilcbiAgICAgICAgbm9kZS5zcmNUb2tlbiA9IHRva2VuO1xuICAgIHJldHVybiBub2RlO1xufVxuZnVuY3Rpb24gY29tcG9zZUVtcHR5Tm9kZShjdHgsIG9mZnNldCwgYmVmb3JlLCBwb3MsIHsgc3BhY2VCZWZvcmUsIGNvbW1lbnQsIGFuY2hvciwgdGFnLCBlbmQgfSwgb25FcnJvcikge1xuICAgIGNvbnN0IHRva2VuID0ge1xuICAgICAgICB0eXBlOiAnc2NhbGFyJyxcbiAgICAgICAgb2Zmc2V0OiB1dGlsRW1wdHlTY2FsYXJQb3NpdGlvbi5lbXB0eVNjYWxhclBvc2l0aW9uKG9mZnNldCwgYmVmb3JlLCBwb3MpLFxuICAgICAgICBpbmRlbnQ6IC0xLFxuICAgICAgICBzb3VyY2U6ICcnXG4gICAgfTtcbiAgICBjb25zdCBub2RlID0gY29tcG9zZVNjYWxhci5jb21wb3NlU2NhbGFyKGN0eCwgdG9rZW4sIHRhZywgb25FcnJvcik7XG4gICAgaWYgKGFuY2hvcikge1xuICAgICAgICBub2RlLmFuY2hvciA9IGFuY2hvci5zb3VyY2Uuc3Vic3RyaW5nKDEpO1xuICAgICAgICBpZiAobm9kZS5hbmNob3IgPT09ICcnKVxuICAgICAgICAgICAgb25FcnJvcihhbmNob3IsICdCQURfQUxJQVMnLCAnQW5jaG9yIGNhbm5vdCBiZSBhbiBlbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgaWYgKHNwYWNlQmVmb3JlKVxuICAgICAgICBub2RlLnNwYWNlQmVmb3JlID0gdHJ1ZTtcbiAgICBpZiAoY29tbWVudCkge1xuICAgICAgICBub2RlLmNvbW1lbnQgPSBjb21tZW50O1xuICAgICAgICBub2RlLnJhbmdlWzJdID0gZW5kO1xuICAgIH1cbiAgICByZXR1cm4gbm9kZTtcbn1cbmZ1bmN0aW9uIGNvbXBvc2VBbGlhcyh7IG9wdGlvbnMgfSwgeyBvZmZzZXQsIHNvdXJjZSwgZW5kIH0sIG9uRXJyb3IpIHtcbiAgICBjb25zdCBhbGlhcyA9IG5ldyBBbGlhcy5BbGlhcyhzb3VyY2Uuc3Vic3RyaW5nKDEpKTtcbiAgICBpZiAoYWxpYXMuc291cmNlID09PSAnJylcbiAgICAgICAgb25FcnJvcihvZmZzZXQsICdCQURfQUxJQVMnLCAnQWxpYXMgY2Fubm90IGJlIGFuIGVtcHR5IHN0cmluZycpO1xuICAgIGlmIChhbGlhcy5zb3VyY2UuZW5kc1dpdGgoJzonKSlcbiAgICAgICAgb25FcnJvcihvZmZzZXQgKyBzb3VyY2UubGVuZ3RoIC0gMSwgJ0JBRF9BTElBUycsICdBbGlhcyBlbmRpbmcgaW4gOiBpcyBhbWJpZ3VvdXMnLCB0cnVlKTtcbiAgICBjb25zdCB2YWx1ZUVuZCA9IG9mZnNldCArIHNvdXJjZS5sZW5ndGg7XG4gICAgY29uc3QgcmUgPSByZXNvbHZlRW5kLnJlc29sdmVFbmQoZW5kLCB2YWx1ZUVuZCwgb3B0aW9ucy5zdHJpY3QsIG9uRXJyb3IpO1xuICAgIGFsaWFzLnJhbmdlID0gW29mZnNldCwgdmFsdWVFbmQsIHJlLm9mZnNldF07XG4gICAgaWYgKHJlLmNvbW1lbnQpXG4gICAgICAgIGFsaWFzLmNvbW1lbnQgPSByZS5jb21tZW50O1xuICAgIHJldHVybiBhbGlhcztcbn1cblxuZXhwb3J0cy5jb21wb3NlRW1wdHlOb2RlID0gY29tcG9zZUVtcHR5Tm9kZTtcbmV4cG9ydHMuY29tcG9zZU5vZGUgPSBjb21wb3NlTm9kZTtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBEb2N1bWVudCA9IHJlcXVpcmUoJy4uL2RvYy9Eb2N1bWVudC5qcycpO1xudmFyIGNvbXBvc2VOb2RlID0gcmVxdWlyZSgnLi9jb21wb3NlLW5vZGUuanMnKTtcbnZhciByZXNvbHZlRW5kID0gcmVxdWlyZSgnLi9yZXNvbHZlLWVuZC5qcycpO1xudmFyIHJlc29sdmVQcm9wcyA9IHJlcXVpcmUoJy4vcmVzb2x2ZS1wcm9wcy5qcycpO1xuXG5mdW5jdGlvbiBjb21wb3NlRG9jKG9wdGlvbnMsIGRpcmVjdGl2ZXMsIHsgb2Zmc2V0LCBzdGFydCwgdmFsdWUsIGVuZCB9LCBvbkVycm9yKSB7XG4gICAgY29uc3Qgb3B0cyA9IE9iamVjdC5hc3NpZ24oeyBfZGlyZWN0aXZlczogZGlyZWN0aXZlcyB9LCBvcHRpb25zKTtcbiAgICBjb25zdCBkb2MgPSBuZXcgRG9jdW1lbnQuRG9jdW1lbnQodW5kZWZpbmVkLCBvcHRzKTtcbiAgICBjb25zdCBjdHggPSB7XG4gICAgICAgIGF0S2V5OiBmYWxzZSxcbiAgICAgICAgYXRSb290OiB0cnVlLFxuICAgICAgICBkaXJlY3RpdmVzOiBkb2MuZGlyZWN0aXZlcyxcbiAgICAgICAgb3B0aW9uczogZG9jLm9wdGlvbnMsXG4gICAgICAgIHNjaGVtYTogZG9jLnNjaGVtYVxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSByZXNvbHZlUHJvcHMucmVzb2x2ZVByb3BzKHN0YXJ0LCB7XG4gICAgICAgIGluZGljYXRvcjogJ2RvYy1zdGFydCcsXG4gICAgICAgIG5leHQ6IHZhbHVlID8/IGVuZD8uWzBdLFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIG9uRXJyb3IsXG4gICAgICAgIHBhcmVudEluZGVudDogMCxcbiAgICAgICAgc3RhcnRPbk5ld2xpbmU6IHRydWVcbiAgICB9KTtcbiAgICBpZiAocHJvcHMuZm91bmQpIHtcbiAgICAgICAgZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQgPSB0cnVlO1xuICAgICAgICBpZiAodmFsdWUgJiZcbiAgICAgICAgICAgICh2YWx1ZS50eXBlID09PSAnYmxvY2stbWFwJyB8fCB2YWx1ZS50eXBlID09PSAnYmxvY2stc2VxJykgJiZcbiAgICAgICAgICAgICFwcm9wcy5oYXNOZXdsaW5lKVxuICAgICAgICAgICAgb25FcnJvcihwcm9wcy5lbmQsICdNSVNTSU5HX0NIQVInLCAnQmxvY2sgY29sbGVjdGlvbiBjYW5ub3Qgc3RhcnQgb24gc2FtZSBsaW5lIHdpdGggZGlyZWN0aXZlcy1lbmQgbWFya2VyJyk7XG4gICAgfVxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgSWYgQ29udGVudHMgaXMgc2V0LCBsZXQncyB0cnVzdCB0aGUgdXNlclxuICAgIGRvYy5jb250ZW50cyA9IHZhbHVlXG4gICAgICAgID8gY29tcG9zZU5vZGUuY29tcG9zZU5vZGUoY3R4LCB2YWx1ZSwgcHJvcHMsIG9uRXJyb3IpXG4gICAgICAgIDogY29tcG9zZU5vZGUuY29tcG9zZUVtcHR5Tm9kZShjdHgsIHByb3BzLmVuZCwgc3RhcnQsIG51bGwsIHByb3BzLCBvbkVycm9yKTtcbiAgICBjb25zdCBjb250ZW50RW5kID0gZG9jLmNvbnRlbnRzLnJhbmdlWzJdO1xuICAgIGNvbnN0IHJlID0gcmVzb2x2ZUVuZC5yZXNvbHZlRW5kKGVuZCwgY29udGVudEVuZCwgZmFsc2UsIG9uRXJyb3IpO1xuICAgIGlmIChyZS5jb21tZW50KVxuICAgICAgICBkb2MuY29tbWVudCA9IHJlLmNvbW1lbnQ7XG4gICAgZG9jLnJhbmdlID0gW29mZnNldCwgY29udGVudEVuZCwgcmUub2Zmc2V0XTtcbiAgICByZXR1cm4gZG9jO1xufVxuXG5leHBvcnRzLmNvbXBvc2VEb2MgPSBjb21wb3NlRG9jO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIG5vZGVfcHJvY2VzcyA9IHJlcXVpcmUoJ3Byb2Nlc3MnKTtcbnZhciBkaXJlY3RpdmVzID0gcmVxdWlyZSgnLi4vZG9jL2RpcmVjdGl2ZXMuanMnKTtcbnZhciBEb2N1bWVudCA9IHJlcXVpcmUoJy4uL2RvYy9Eb2N1bWVudC5qcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4uL2Vycm9ycy5qcycpO1xudmFyIGlkZW50aXR5ID0gcmVxdWlyZSgnLi4vbm9kZXMvaWRlbnRpdHkuanMnKTtcbnZhciBjb21wb3NlRG9jID0gcmVxdWlyZSgnLi9jb21wb3NlLWRvYy5qcycpO1xudmFyIHJlc29sdmVFbmQgPSByZXF1aXJlKCcuL3Jlc29sdmUtZW5kLmpzJyk7XG5cbmZ1bmN0aW9uIGdldEVycm9yUG9zKHNyYykge1xuICAgIGlmICh0eXBlb2Ygc3JjID09PSAnbnVtYmVyJylcbiAgICAgICAgcmV0dXJuIFtzcmMsIHNyYyArIDFdO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHNyYykpXG4gICAgICAgIHJldHVybiBzcmMubGVuZ3RoID09PSAyID8gc3JjIDogW3NyY1swXSwgc3JjWzFdXTtcbiAgICBjb25zdCB7IG9mZnNldCwgc291cmNlIH0gPSBzcmM7XG4gICAgcmV0dXJuIFtvZmZzZXQsIG9mZnNldCArICh0eXBlb2Ygc291cmNlID09PSAnc3RyaW5nJyA/IHNvdXJjZS5sZW5ndGggOiAxKV07XG59XG5mdW5jdGlvbiBwYXJzZVByZWx1ZGUocHJlbHVkZSkge1xuICAgIGxldCBjb21tZW50ID0gJyc7XG4gICAgbGV0IGF0Q29tbWVudCA9IGZhbHNlO1xuICAgIGxldCBhZnRlckVtcHR5TGluZSA9IGZhbHNlO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJlbHVkZS5sZW5ndGg7ICsraSkge1xuICAgICAgICBjb25zdCBzb3VyY2UgPSBwcmVsdWRlW2ldO1xuICAgICAgICBzd2l0Y2ggKHNvdXJjZVswXSkge1xuICAgICAgICAgICAgY2FzZSAnIyc6XG4gICAgICAgICAgICAgICAgY29tbWVudCArPVxuICAgICAgICAgICAgICAgICAgICAoY29tbWVudCA9PT0gJycgPyAnJyA6IGFmdGVyRW1wdHlMaW5lID8gJ1xcblxcbicgOiAnXFxuJykgK1xuICAgICAgICAgICAgICAgICAgICAgICAgKHNvdXJjZS5zdWJzdHJpbmcoMSkgfHwgJyAnKTtcbiAgICAgICAgICAgICAgICBhdENvbW1lbnQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGFmdGVyRW1wdHlMaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICclJzpcbiAgICAgICAgICAgICAgICBpZiAocHJlbHVkZVtpICsgMV0/LlswXSAhPT0gJyMnKVxuICAgICAgICAgICAgICAgICAgICBpICs9IDE7XG4gICAgICAgICAgICAgICAgYXRDb21tZW50ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIC8vIFRoaXMgbWF5IGJlIHdyb25nIGFmdGVyIGRvYy1lbmQsIGJ1dCBpbiB0aGF0IGNhc2UgaXQgZG9lc24ndCBtYXR0ZXJcbiAgICAgICAgICAgICAgICBpZiAoIWF0Q29tbWVudClcbiAgICAgICAgICAgICAgICAgICAgYWZ0ZXJFbXB0eUxpbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGF0Q29tbWVudCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IGNvbW1lbnQsIGFmdGVyRW1wdHlMaW5lIH07XG59XG4vKipcbiAqIENvbXBvc2UgYSBzdHJlYW0gb2YgQ1NUIG5vZGVzIGludG8gYSBzdHJlYW0gb2YgWUFNTCBEb2N1bWVudHMuXG4gKlxuICogYGBgdHNcbiAqIGltcG9ydCB7IENvbXBvc2VyLCBQYXJzZXIgfSBmcm9tICd5YW1sJ1xuICpcbiAqIGNvbnN0IHNyYzogc3RyaW5nID0gLi4uXG4gKiBjb25zdCB0b2tlbnMgPSBuZXcgUGFyc2VyKCkucGFyc2Uoc3JjKVxuICogY29uc3QgZG9jcyA9IG5ldyBDb21wb3NlcigpLmNvbXBvc2UodG9rZW5zKVxuICogYGBgXG4gKi9cbmNsYXNzIENvbXBvc2VyIHtcbiAgICBjb25zdHJ1Y3RvcihvcHRpb25zID0ge30pIHtcbiAgICAgICAgdGhpcy5kb2MgPSBudWxsO1xuICAgICAgICB0aGlzLmF0RGlyZWN0aXZlcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLnByZWx1ZGUgPSBbXTtcbiAgICAgICAgdGhpcy5lcnJvcnMgPSBbXTtcbiAgICAgICAgdGhpcy53YXJuaW5ncyA9IFtdO1xuICAgICAgICB0aGlzLm9uRXJyb3IgPSAoc291cmNlLCBjb2RlLCBtZXNzYWdlLCB3YXJuaW5nKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwb3MgPSBnZXRFcnJvclBvcyhzb3VyY2UpO1xuICAgICAgICAgICAgaWYgKHdhcm5pbmcpXG4gICAgICAgICAgICAgICAgdGhpcy53YXJuaW5ncy5wdXNoKG5ldyBlcnJvcnMuWUFNTFdhcm5pbmcocG9zLCBjb2RlLCBtZXNzYWdlKSk7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhpcy5lcnJvcnMucHVzaChuZXcgZXJyb3JzLllBTUxQYXJzZUVycm9yKHBvcywgY29kZSwgbWVzc2FnZSkpO1xuICAgICAgICB9O1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1udWxsaXNoLWNvYWxlc2NpbmdcbiAgICAgICAgdGhpcy5kaXJlY3RpdmVzID0gbmV3IGRpcmVjdGl2ZXMuRGlyZWN0aXZlcyh7IHZlcnNpb246IG9wdGlvbnMudmVyc2lvbiB8fCAnMS4yJyB9KTtcbiAgICAgICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcbiAgICB9XG4gICAgZGVjb3JhdGUoZG9jLCBhZnRlckRvYykge1xuICAgICAgICBjb25zdCB7IGNvbW1lbnQsIGFmdGVyRW1wdHlMaW5lIH0gPSBwYXJzZVByZWx1ZGUodGhpcy5wcmVsdWRlKTtcbiAgICAgICAgLy9jb25zb2xlLmxvZyh7IGRjOiBkb2MuY29tbWVudCwgcHJlbHVkZSwgY29tbWVudCB9KVxuICAgICAgICBpZiAoY29tbWVudCkge1xuICAgICAgICAgICAgY29uc3QgZGMgPSBkb2MuY29udGVudHM7XG4gICAgICAgICAgICBpZiAoYWZ0ZXJEb2MpIHtcbiAgICAgICAgICAgICAgICBkb2MuY29tbWVudCA9IGRvYy5jb21tZW50ID8gYCR7ZG9jLmNvbW1lbnR9XFxuJHtjb21tZW50fWAgOiBjb21tZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYWZ0ZXJFbXB0eUxpbmUgfHwgZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQgfHwgIWRjKSB7XG4gICAgICAgICAgICAgICAgZG9jLmNvbW1lbnRCZWZvcmUgPSBjb21tZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaWRlbnRpdHkuaXNDb2xsZWN0aW9uKGRjKSAmJiAhZGMuZmxvdyAmJiBkYy5pdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgbGV0IGl0ID0gZGMuaXRlbXNbMF07XG4gICAgICAgICAgICAgICAgaWYgKGlkZW50aXR5LmlzUGFpcihpdCkpXG4gICAgICAgICAgICAgICAgICAgIGl0ID0gaXQua2V5O1xuICAgICAgICAgICAgICAgIGNvbnN0IGNiID0gaXQuY29tbWVudEJlZm9yZTtcbiAgICAgICAgICAgICAgICBpdC5jb21tZW50QmVmb3JlID0gY2IgPyBgJHtjb21tZW50fVxcbiR7Y2J9YCA6IGNvbW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjYiA9IGRjLmNvbW1lbnRCZWZvcmU7XG4gICAgICAgICAgICAgICAgZGMuY29tbWVudEJlZm9yZSA9IGNiID8gYCR7Y29tbWVudH1cXG4ke2NifWAgOiBjb21tZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChhZnRlckRvYykge1xuICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZG9jLmVycm9ycywgdGhpcy5lcnJvcnMpO1xuICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZG9jLndhcm5pbmdzLCB0aGlzLndhcm5pbmdzKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGRvYy5lcnJvcnMgPSB0aGlzLmVycm9ycztcbiAgICAgICAgICAgIGRvYy53YXJuaW5ncyA9IHRoaXMud2FybmluZ3M7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wcmVsdWRlID0gW107XG4gICAgICAgIHRoaXMuZXJyb3JzID0gW107XG4gICAgICAgIHRoaXMud2FybmluZ3MgPSBbXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ3VycmVudCBzdHJlYW0gc3RhdHVzIGluZm9ybWF0aW9uLlxuICAgICAqXG4gICAgICogTW9zdGx5IHVzZWZ1bCBhdCB0aGUgZW5kIG9mIGlucHV0IGZvciBhbiBlbXB0eSBzdHJlYW0uXG4gICAgICovXG4gICAgc3RyZWFtSW5mbygpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNvbW1lbnQ6IHBhcnNlUHJlbHVkZSh0aGlzLnByZWx1ZGUpLmNvbW1lbnQsXG4gICAgICAgICAgICBkaXJlY3RpdmVzOiB0aGlzLmRpcmVjdGl2ZXMsXG4gICAgICAgICAgICBlcnJvcnM6IHRoaXMuZXJyb3JzLFxuICAgICAgICAgICAgd2FybmluZ3M6IHRoaXMud2FybmluZ3NcbiAgICAgICAgfTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ29tcG9zZSB0b2tlbnMgaW50byBkb2N1bWVudHMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZm9yY2VEb2MgLSBJZiB0aGUgc3RyZWFtIGNvbnRhaW5zIG5vIGRvY3VtZW50LCBzdGlsbCBlbWl0IGEgZmluYWwgZG9jdW1lbnQgaW5jbHVkaW5nIGFueSBjb21tZW50cyBhbmQgZGlyZWN0aXZlcyB0aGF0IHdvdWxkIGJlIGFwcGxpZWQgdG8gYSBzdWJzZXF1ZW50IGRvY3VtZW50LlxuICAgICAqIEBwYXJhbSBlbmRPZmZzZXQgLSBTaG91bGQgYmUgc2V0IGlmIGBmb3JjZURvY2AgaXMgYWxzbyBzZXQsIHRvIHNldCB0aGUgZG9jdW1lbnQgcmFuZ2UgZW5kIGFuZCB0byBpbmRpY2F0ZSBlcnJvcnMgY29ycmVjdGx5LlxuICAgICAqL1xuICAgICpjb21wb3NlKHRva2VucywgZm9yY2VEb2MgPSBmYWxzZSwgZW5kT2Zmc2V0ID0gLTEpIHtcbiAgICAgICAgZm9yIChjb25zdCB0b2tlbiBvZiB0b2tlbnMpXG4gICAgICAgICAgICB5aWVsZCogdGhpcy5uZXh0KHRva2VuKTtcbiAgICAgICAgeWllbGQqIHRoaXMuZW5kKGZvcmNlRG9jLCBlbmRPZmZzZXQpO1xuICAgIH1cbiAgICAvKiogQWR2YW5jZSB0aGUgY29tcG9zZXIgYnkgb25lIENTVCB0b2tlbi4gKi9cbiAgICAqbmV4dCh0b2tlbikge1xuICAgICAgICBpZiAobm9kZV9wcm9jZXNzLmVudi5MT0dfU1RSRUFNKVxuICAgICAgICAgICAgY29uc29sZS5kaXIodG9rZW4sIHsgZGVwdGg6IG51bGwgfSk7XG4gICAgICAgIHN3aXRjaCAodG9rZW4udHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnZGlyZWN0aXZlJzpcbiAgICAgICAgICAgICAgICB0aGlzLmRpcmVjdGl2ZXMuYWRkKHRva2VuLnNvdXJjZSwgKG9mZnNldCwgbWVzc2FnZSwgd2FybmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwb3MgPSBnZXRFcnJvclBvcyh0b2tlbik7XG4gICAgICAgICAgICAgICAgICAgIHBvc1swXSArPSBvZmZzZXQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcihwb3MsICdCQURfRElSRUNUSVZFJywgbWVzc2FnZSwgd2FybmluZyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5wcmVsdWRlLnB1c2godG9rZW4uc291cmNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmF0RGlyZWN0aXZlcyA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdkb2N1bWVudCc6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkb2MgPSBjb21wb3NlRG9jLmNvbXBvc2VEb2ModGhpcy5vcHRpb25zLCB0aGlzLmRpcmVjdGl2ZXMsIHRva2VuLCB0aGlzLm9uRXJyb3IpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmF0RGlyZWN0aXZlcyAmJiAhZG9jLmRpcmVjdGl2ZXMuZG9jU3RhcnQpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25FcnJvcih0b2tlbiwgJ01JU1NJTkdfQ0hBUicsICdNaXNzaW5nIGRpcmVjdGl2ZXMtZW5kL2RvYy1zdGFydCBpbmRpY2F0b3IgbGluZScpO1xuICAgICAgICAgICAgICAgIHRoaXMuZGVjb3JhdGUoZG9jLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZG9jKVxuICAgICAgICAgICAgICAgICAgICB5aWVsZCB0aGlzLmRvYztcbiAgICAgICAgICAgICAgICB0aGlzLmRvYyA9IGRvYztcbiAgICAgICAgICAgICAgICB0aGlzLmF0RGlyZWN0aXZlcyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnYnl0ZS1vcmRlci1tYXJrJzpcbiAgICAgICAgICAgIGNhc2UgJ3NwYWNlJzpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5wcmVsdWRlLnB1c2godG9rZW4uc291cmNlKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Vycm9yJzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1zZyA9IHRva2VuLnNvdXJjZVxuICAgICAgICAgICAgICAgICAgICA/IGAke3Rva2VuLm1lc3NhZ2V9OiAke0pTT04uc3RyaW5naWZ5KHRva2VuLnNvdXJjZSl9YFxuICAgICAgICAgICAgICAgICAgICA6IHRva2VuLm1lc3NhZ2U7XG4gICAgICAgICAgICAgICAgY29uc3QgZXJyb3IgPSBuZXcgZXJyb3JzLllBTUxQYXJzZUVycm9yKGdldEVycm9yUG9zKHRva2VuKSwgJ1VORVhQRUNURURfVE9LRU4nLCBtc2cpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmF0RGlyZWN0aXZlcyB8fCAhdGhpcy5kb2MpXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JzLnB1c2goZXJyb3IpO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kb2MuZXJyb3JzLnB1c2goZXJyb3IpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnZG9jLWVuZCc6IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuZG9jKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG1zZyA9ICdVbmV4cGVjdGVkIGRvYy1lbmQgd2l0aG91dCBwcmVjZWRpbmcgZG9jdW1lbnQnO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9ycy5wdXNoKG5ldyBlcnJvcnMuWUFNTFBhcnNlRXJyb3IoZ2V0RXJyb3JQb3ModG9rZW4pLCAnVU5FWFBFQ1RFRF9UT0tFTicsIG1zZykpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5kb2MuZGlyZWN0aXZlcy5kb2NFbmQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IHJlc29sdmVFbmQucmVzb2x2ZUVuZCh0b2tlbi5lbmQsIHRva2VuLm9mZnNldCArIHRva2VuLnNvdXJjZS5sZW5ndGgsIHRoaXMuZG9jLm9wdGlvbnMuc3RyaWN0LCB0aGlzLm9uRXJyb3IpO1xuICAgICAgICAgICAgICAgIHRoaXMuZGVjb3JhdGUodGhpcy5kb2MsIHRydWUpO1xuICAgICAgICAgICAgICAgIGlmIChlbmQuY29tbWVudCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkYyA9IHRoaXMuZG9jLmNvbW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZG9jLmNvbW1lbnQgPSBkYyA/IGAke2RjfVxcbiR7ZW5kLmNvbW1lbnR9YCA6IGVuZC5jb21tZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmRvYy5yYW5nZVsyXSA9IGVuZC5vZmZzZXQ7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JzLnB1c2gobmV3IGVycm9ycy5ZQU1MUGFyc2VFcnJvcihnZXRFcnJvclBvcyh0b2tlbiksICdVTkVYUEVDVEVEX1RPS0VOJywgYFVuc3VwcG9ydGVkIHRva2VuICR7dG9rZW4udHlwZX1gKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2FsbCBhdCBlbmQgb2YgaW5wdXQgdG8geWllbGQgYW55IHJlbWFpbmluZyBkb2N1bWVudC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBmb3JjZURvYyAtIElmIHRoZSBzdHJlYW0gY29udGFpbnMgbm8gZG9jdW1lbnQsIHN0aWxsIGVtaXQgYSBmaW5hbCBkb2N1bWVudCBpbmNsdWRpbmcgYW55IGNvbW1lbnRzIGFuZCBkaXJlY3RpdmVzIHRoYXQgd291bGQgYmUgYXBwbGllZCB0byBhIHN1YnNlcXVlbnQgZG9jdW1lbnQuXG4gICAgICogQHBhcmFtIGVuZE9mZnNldCAtIFNob3VsZCBiZSBzZXQgaWYgYGZvcmNlRG9jYCBpcyBhbHNvIHNldCwgdG8gc2V0IHRoZSBkb2N1bWVudCByYW5nZSBlbmQgYW5kIHRvIGluZGljYXRlIGVycm9ycyBjb3JyZWN0bHkuXG4gICAgICovXG4gICAgKmVuZChmb3JjZURvYyA9IGZhbHNlLCBlbmRPZmZzZXQgPSAtMSkge1xuICAgICAgICBpZiAodGhpcy5kb2MpIHtcbiAgICAgICAgICAgIHRoaXMuZGVjb3JhdGUodGhpcy5kb2MsIHRydWUpO1xuICAgICAgICAgICAgeWllbGQgdGhpcy5kb2M7XG4gICAgICAgICAgICB0aGlzLmRvYyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZm9yY2VEb2MpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdHMgPSBPYmplY3QuYXNzaWduKHsgX2RpcmVjdGl2ZXM6IHRoaXMuZGlyZWN0aXZlcyB9LCB0aGlzLm9wdGlvbnMpO1xuICAgICAgICAgICAgY29uc3QgZG9jID0gbmV3IERvY3VtZW50LkRvY3VtZW50KHVuZGVmaW5lZCwgb3B0cyk7XG4gICAgICAgICAgICBpZiAodGhpcy5hdERpcmVjdGl2ZXMpXG4gICAgICAgICAgICAgICAgdGhpcy5vbkVycm9yKGVuZE9mZnNldCwgJ01JU1NJTkdfQ0hBUicsICdNaXNzaW5nIGRpcmVjdGl2ZXMtZW5kIGluZGljYXRvciBsaW5lJyk7XG4gICAgICAgICAgICBkb2MucmFuZ2UgPSBbMCwgZW5kT2Zmc2V0LCBlbmRPZmZzZXRdO1xuICAgICAgICAgICAgdGhpcy5kZWNvcmF0ZShkb2MsIGZhbHNlKTtcbiAgICAgICAgICAgIHlpZWxkIGRvYztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0cy5Db21wb3NlciA9IENvbXBvc2VyO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIHJlc29sdmVCbG9ja1NjYWxhciA9IHJlcXVpcmUoJy4uL2NvbXBvc2UvcmVzb2x2ZS1ibG9jay1zY2FsYXIuanMnKTtcbnZhciByZXNvbHZlRmxvd1NjYWxhciA9IHJlcXVpcmUoJy4uL2NvbXBvc2UvcmVzb2x2ZS1mbG93LXNjYWxhci5qcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4uL2Vycm9ycy5qcycpO1xudmFyIHN0cmluZ2lmeVN0cmluZyA9IHJlcXVpcmUoJy4uL3N0cmluZ2lmeS9zdHJpbmdpZnlTdHJpbmcuanMnKTtcblxuZnVuY3Rpb24gcmVzb2x2ZUFzU2NhbGFyKHRva2VuLCBzdHJpY3QgPSB0cnVlLCBvbkVycm9yKSB7XG4gICAgaWYgKHRva2VuKSB7XG4gICAgICAgIGNvbnN0IF9vbkVycm9yID0gKHBvcywgY29kZSwgbWVzc2FnZSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdHlwZW9mIHBvcyA9PT0gJ251bWJlcicgPyBwb3MgOiBBcnJheS5pc0FycmF5KHBvcykgPyBwb3NbMF0gOiBwb3Mub2Zmc2V0O1xuICAgICAgICAgICAgaWYgKG9uRXJyb3IpXG4gICAgICAgICAgICAgICAgb25FcnJvcihvZmZzZXQsIGNvZGUsIG1lc3NhZ2UpO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBlcnJvcnMuWUFNTFBhcnNlRXJyb3IoW29mZnNldCwgb2Zmc2V0ICsgMV0sIGNvZGUsIG1lc3NhZ2UpO1xuICAgICAgICB9O1xuICAgICAgICBzd2l0Y2ggKHRva2VuLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdzaW5nbGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc29sdmVGbG93U2NhbGFyLnJlc29sdmVGbG93U2NhbGFyKHRva2VuLCBzdHJpY3QsIF9vbkVycm9yKTtcbiAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc29sdmVCbG9ja1NjYWxhci5yZXNvbHZlQmxvY2tTY2FsYXIoeyBvcHRpb25zOiB7IHN0cmljdCB9IH0sIHRva2VuLCBfb25FcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59XG4vKipcbiAqIENyZWF0ZSBhIG5ldyBzY2FsYXIgdG9rZW4gd2l0aCBgdmFsdWVgXG4gKlxuICogVmFsdWVzIHRoYXQgcmVwcmVzZW50IGFuIGFjdHVhbCBzdHJpbmcgYnV0IG1heSBiZSBwYXJzZWQgYXMgYSBkaWZmZXJlbnQgdHlwZSBzaG91bGQgdXNlIGEgYHR5cGVgIG90aGVyIHRoYW4gYCdQTEFJTidgLFxuICogYXMgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBzdXBwb3J0IGFueSBzY2hlbWEgb3BlcmF0aW9ucyBhbmQgd29uJ3QgY2hlY2sgZm9yIHN1Y2ggY29uZmxpY3RzLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSBUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB2YWx1ZSwgd2hpY2ggd2lsbCBoYXZlIGl0cyBjb250ZW50IHByb3Blcmx5IGluZGVudGVkLlxuICogQHBhcmFtIGNvbnRleHQuZW5kIENvbW1lbnRzIGFuZCB3aGl0ZXNwYWNlIGFmdGVyIHRoZSBlbmQgb2YgdGhlIHZhbHVlLCBvciBhZnRlciB0aGUgYmxvY2sgc2NhbGFyIGhlYWRlci4gSWYgdW5kZWZpbmVkLCBhIG5ld2xpbmUgd2lsbCBiZSBhZGRlZC5cbiAqIEBwYXJhbSBjb250ZXh0LmltcGxpY2l0S2V5IEJlaW5nIHdpdGhpbiBhbiBpbXBsaWNpdCBrZXkgbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0LmluZGVudCBUaGUgaW5kZW50IGxldmVsIG9mIHRoZSB0b2tlbi5cbiAqIEBwYXJhbSBjb250ZXh0LmluRmxvdyBJcyB0aGlzIHNjYWxhciB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24/IFRoaXMgbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0Lm9mZnNldCBUaGUgb2Zmc2V0IHBvc2l0aW9uIG9mIHRoZSB0b2tlbi5cbiAqIEBwYXJhbSBjb250ZXh0LnR5cGUgVGhlIHByZWZlcnJlZCB0eXBlIG9mIHRoZSBzY2FsYXIgdG9rZW4uIElmIHVuZGVmaW5lZCwgdGhlIHByZXZpb3VzIHR5cGUgb2YgdGhlIGB0b2tlbmAgd2lsbCBiZSB1c2VkLCBkZWZhdWx0aW5nIHRvIGAnUExBSU4nYC5cbiAqL1xuZnVuY3Rpb24gY3JlYXRlU2NhbGFyVG9rZW4odmFsdWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCB7IGltcGxpY2l0S2V5ID0gZmFsc2UsIGluZGVudCwgaW5GbG93ID0gZmFsc2UsIG9mZnNldCA9IC0xLCB0eXBlID0gJ1BMQUlOJyB9ID0gY29udGV4dDtcbiAgICBjb25zdCBzb3VyY2UgPSBzdHJpbmdpZnlTdHJpbmcuc3RyaW5naWZ5U3RyaW5nKHsgdHlwZSwgdmFsdWUgfSwge1xuICAgICAgICBpbXBsaWNpdEtleSxcbiAgICAgICAgaW5kZW50OiBpbmRlbnQgPiAwID8gJyAnLnJlcGVhdChpbmRlbnQpIDogJycsXG4gICAgICAgIGluRmxvdyxcbiAgICAgICAgb3B0aW9uczogeyBibG9ja1F1b3RlOiB0cnVlLCBsaW5lV2lkdGg6IC0xIH1cbiAgICB9KTtcbiAgICBjb25zdCBlbmQgPSBjb250ZXh0LmVuZCA/PyBbXG4gICAgICAgIHsgdHlwZTogJ25ld2xpbmUnLCBvZmZzZXQ6IC0xLCBpbmRlbnQsIHNvdXJjZTogJ1xcbicgfVxuICAgIF07XG4gICAgc3dpdGNoIChzb3VyY2VbMF0pIHtcbiAgICAgICAgY2FzZSAnfCc6XG4gICAgICAgIGNhc2UgJz4nOiB7XG4gICAgICAgICAgICBjb25zdCBoZSA9IHNvdXJjZS5pbmRleE9mKCdcXG4nKTtcbiAgICAgICAgICAgIGNvbnN0IGhlYWQgPSBzb3VyY2Uuc3Vic3RyaW5nKDAsIGhlKTtcbiAgICAgICAgICAgIGNvbnN0IGJvZHkgPSBzb3VyY2Uuc3Vic3RyaW5nKGhlICsgMSkgKyAnXFxuJztcbiAgICAgICAgICAgIGNvbnN0IHByb3BzID0gW1xuICAgICAgICAgICAgICAgIHsgdHlwZTogJ2Jsb2NrLXNjYWxhci1oZWFkZXInLCBvZmZzZXQsIGluZGVudCwgc291cmNlOiBoZWFkIH1cbiAgICAgICAgICAgIF07XG4gICAgICAgICAgICBpZiAoIWFkZEVuZHRvQmxvY2tQcm9wcyhwcm9wcywgZW5kKSlcbiAgICAgICAgICAgICAgICBwcm9wcy5wdXNoKHsgdHlwZTogJ25ld2xpbmUnLCBvZmZzZXQ6IC0xLCBpbmRlbnQsIHNvdXJjZTogJ1xcbicgfSk7XG4gICAgICAgICAgICByZXR1cm4geyB0eXBlOiAnYmxvY2stc2NhbGFyJywgb2Zmc2V0LCBpbmRlbnQsIHByb3BzLCBzb3VyY2U6IGJvZHkgfTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdcIic6XG4gICAgICAgICAgICByZXR1cm4geyB0eXBlOiAnZG91YmxlLXF1b3RlZC1zY2FsYXInLCBvZmZzZXQsIGluZGVudCwgc291cmNlLCBlbmQgfTtcbiAgICAgICAgY2FzZSBcIidcIjpcbiAgICAgICAgICAgIHJldHVybiB7IHR5cGU6ICdzaW5nbGUtcXVvdGVkLXNjYWxhcicsIG9mZnNldCwgaW5kZW50LCBzb3VyY2UsIGVuZCB9O1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHsgdHlwZTogJ3NjYWxhcicsIG9mZnNldCwgaW5kZW50LCBzb3VyY2UsIGVuZCB9O1xuICAgIH1cbn1cbi8qKlxuICogU2V0IHRoZSB2YWx1ZSBvZiBgdG9rZW5gIHRvIHRoZSBnaXZlbiBzdHJpbmcgYHZhbHVlYCwgb3ZlcndyaXRpbmcgYW55IHByZXZpb3VzIGNvbnRlbnRzIGFuZCB0eXBlIHRoYXQgaXQgbWF5IGhhdmUuXG4gKlxuICogQmVzdCBlZmZvcnRzIGFyZSBtYWRlIHRvIHJldGFpbiBhbnkgY29tbWVudHMgcHJldmlvdXNseSBhc3NvY2lhdGVkIHdpdGggdGhlIGB0b2tlbmAsXG4gKiB0aG91Z2ggYWxsIGNvbnRlbnRzIHdpdGhpbiBhIGNvbGxlY3Rpb24ncyBgaXRlbXNgIHdpbGwgYmUgb3ZlcndyaXR0ZW4uXG4gKlxuICogVmFsdWVzIHRoYXQgcmVwcmVzZW50IGFuIGFjdHVhbCBzdHJpbmcgYnV0IG1heSBiZSBwYXJzZWQgYXMgYSBkaWZmZXJlbnQgdHlwZSBzaG91bGQgdXNlIGEgYHR5cGVgIG90aGVyIHRoYW4gYCdQTEFJTidgLFxuICogYXMgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBzdXBwb3J0IGFueSBzY2hlbWEgb3BlcmF0aW9ucyBhbmQgd29uJ3QgY2hlY2sgZm9yIHN1Y2ggY29uZmxpY3RzLlxuICpcbiAqIEBwYXJhbSB0b2tlbiBBbnkgdG9rZW4uIElmIGl0IGRvZXMgbm90IGluY2x1ZGUgYW4gYGluZGVudGAgdmFsdWUsIHRoZSB2YWx1ZSB3aWxsIGJlIHN0cmluZ2lmaWVkIGFzIGlmIGl0IHdlcmUgYW4gaW1wbGljaXQga2V5LlxuICogQHBhcmFtIHZhbHVlIFRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHZhbHVlLCB3aGljaCB3aWxsIGhhdmUgaXRzIGNvbnRlbnQgcHJvcGVybHkgaW5kZW50ZWQuXG4gKiBAcGFyYW0gY29udGV4dC5hZnRlcktleSBJbiBtb3N0IGNhc2VzLCB2YWx1ZXMgYWZ0ZXIgYSBrZXkgc2hvdWxkIGhhdmUgYW4gYWRkaXRpb25hbCBsZXZlbCBvZiBpbmRlbnRhdGlvbi5cbiAqIEBwYXJhbSBjb250ZXh0LmltcGxpY2l0S2V5IEJlaW5nIHdpdGhpbiBhbiBpbXBsaWNpdCBrZXkgbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0LmluRmxvdyBCZWluZyB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24gbWF5IGFmZmVjdCB0aGUgcmVzb2x2ZWQgdHlwZSBvZiB0aGUgdG9rZW4ncyB2YWx1ZS5cbiAqIEBwYXJhbSBjb250ZXh0LnR5cGUgVGhlIHByZWZlcnJlZCB0eXBlIG9mIHRoZSBzY2FsYXIgdG9rZW4uIElmIHVuZGVmaW5lZCwgdGhlIHByZXZpb3VzIHR5cGUgb2YgdGhlIGB0b2tlbmAgd2lsbCBiZSB1c2VkLCBkZWZhdWx0aW5nIHRvIGAnUExBSU4nYC5cbiAqL1xuZnVuY3Rpb24gc2V0U2NhbGFyVmFsdWUodG9rZW4sIHZhbHVlLCBjb250ZXh0ID0ge30pIHtcbiAgICBsZXQgeyBhZnRlcktleSA9IGZhbHNlLCBpbXBsaWNpdEtleSA9IGZhbHNlLCBpbkZsb3cgPSBmYWxzZSwgdHlwZSB9ID0gY29udGV4dDtcbiAgICBsZXQgaW5kZW50ID0gJ2luZGVudCcgaW4gdG9rZW4gPyB0b2tlbi5pbmRlbnQgOiBudWxsO1xuICAgIGlmIChhZnRlcktleSAmJiB0eXBlb2YgaW5kZW50ID09PSAnbnVtYmVyJylcbiAgICAgICAgaW5kZW50ICs9IDI7XG4gICAgaWYgKCF0eXBlKVxuICAgICAgICBzd2l0Y2ggKHRva2VuLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICB0eXBlID0gJ1FVT1RFX1NJTkdMRSc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgdHlwZSA9ICdRVU9URV9ET1VCTEUnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnYmxvY2stc2NhbGFyJzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlYWRlciA9IHRva2VuLnByb3BzWzBdO1xuICAgICAgICAgICAgICAgIGlmIChoZWFkZXIudHlwZSAhPT0gJ2Jsb2NrLXNjYWxhci1oZWFkZXInKVxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYmxvY2sgc2NhbGFyIGhlYWRlcicpO1xuICAgICAgICAgICAgICAgIHR5cGUgPSBoZWFkZXIuc291cmNlWzBdID09PSAnPicgPyAnQkxPQ0tfRk9MREVEJyA6ICdCTE9DS19MSVRFUkFMJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdHlwZSA9ICdQTEFJTic7XG4gICAgICAgIH1cbiAgICBjb25zdCBzb3VyY2UgPSBzdHJpbmdpZnlTdHJpbmcuc3RyaW5naWZ5U3RyaW5nKHsgdHlwZSwgdmFsdWUgfSwge1xuICAgICAgICBpbXBsaWNpdEtleTogaW1wbGljaXRLZXkgfHwgaW5kZW50ID09PSBudWxsLFxuICAgICAgICBpbmRlbnQ6IGluZGVudCAhPT0gbnVsbCAmJiBpbmRlbnQgPiAwID8gJyAnLnJlcGVhdChpbmRlbnQpIDogJycsXG4gICAgICAgIGluRmxvdyxcbiAgICAgICAgb3B0aW9uczogeyBibG9ja1F1b3RlOiB0cnVlLCBsaW5lV2lkdGg6IC0xIH1cbiAgICB9KTtcbiAgICBzd2l0Y2ggKHNvdXJjZVswXSkge1xuICAgICAgICBjYXNlICd8JzpcbiAgICAgICAgY2FzZSAnPic6XG4gICAgICAgICAgICBzZXRCbG9ja1NjYWxhclZhbHVlKHRva2VuLCBzb3VyY2UpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ1wiJzpcbiAgICAgICAgICAgIHNldEZsb3dTY2FsYXJWYWx1ZSh0b2tlbiwgc291cmNlLCAnZG91YmxlLXF1b3RlZC1zY2FsYXInKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiJ1wiOlxuICAgICAgICAgICAgc2V0Rmxvd1NjYWxhclZhbHVlKHRva2VuLCBzb3VyY2UsICdzaW5nbGUtcXVvdGVkLXNjYWxhcicpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBzZXRGbG93U2NhbGFyVmFsdWUodG9rZW4sIHNvdXJjZSwgJ3NjYWxhcicpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHNldEJsb2NrU2NhbGFyVmFsdWUodG9rZW4sIHNvdXJjZSkge1xuICAgIGNvbnN0IGhlID0gc291cmNlLmluZGV4T2YoJ1xcbicpO1xuICAgIGNvbnN0IGhlYWQgPSBzb3VyY2Uuc3Vic3RyaW5nKDAsIGhlKTtcbiAgICBjb25zdCBib2R5ID0gc291cmNlLnN1YnN0cmluZyhoZSArIDEpICsgJ1xcbic7XG4gICAgaWYgKHRva2VuLnR5cGUgPT09ICdibG9jay1zY2FsYXInKSB7XG4gICAgICAgIGNvbnN0IGhlYWRlciA9IHRva2VuLnByb3BzWzBdO1xuICAgICAgICBpZiAoaGVhZGVyLnR5cGUgIT09ICdibG9jay1zY2FsYXItaGVhZGVyJylcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBibG9jayBzY2FsYXIgaGVhZGVyJyk7XG4gICAgICAgIGhlYWRlci5zb3VyY2UgPSBoZWFkO1xuICAgICAgICB0b2tlbi5zb3VyY2UgPSBib2R5O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgeyBvZmZzZXQgfSA9IHRva2VuO1xuICAgICAgICBjb25zdCBpbmRlbnQgPSAnaW5kZW50JyBpbiB0b2tlbiA/IHRva2VuLmluZGVudCA6IC0xO1xuICAgICAgICBjb25zdCBwcm9wcyA9IFtcbiAgICAgICAgICAgIHsgdHlwZTogJ2Jsb2NrLXNjYWxhci1oZWFkZXInLCBvZmZzZXQsIGluZGVudCwgc291cmNlOiBoZWFkIH1cbiAgICAgICAgXTtcbiAgICAgICAgaWYgKCFhZGRFbmR0b0Jsb2NrUHJvcHMocHJvcHMsICdlbmQnIGluIHRva2VuID8gdG9rZW4uZW5kIDogdW5kZWZpbmVkKSlcbiAgICAgICAgICAgIHByb3BzLnB1c2goeyB0eXBlOiAnbmV3bGluZScsIG9mZnNldDogLTEsIGluZGVudCwgc291cmNlOiAnXFxuJyB9KTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXModG9rZW4pKVxuICAgICAgICAgICAgaWYgKGtleSAhPT0gJ3R5cGUnICYmIGtleSAhPT0gJ29mZnNldCcpXG4gICAgICAgICAgICAgICAgZGVsZXRlIHRva2VuW2tleV07XG4gICAgICAgIE9iamVjdC5hc3NpZ24odG9rZW4sIHsgdHlwZTogJ2Jsb2NrLXNjYWxhcicsIGluZGVudCwgcHJvcHMsIHNvdXJjZTogYm9keSB9KTtcbiAgICB9XG59XG4vKiogQHJldHVybnMgYHRydWVgIGlmIGxhc3QgdG9rZW4gaXMgYSBuZXdsaW5lICovXG5mdW5jdGlvbiBhZGRFbmR0b0Jsb2NrUHJvcHMocHJvcHMsIGVuZCkge1xuICAgIGlmIChlbmQpXG4gICAgICAgIGZvciAoY29uc3Qgc3Qgb2YgZW5kKVxuICAgICAgICAgICAgc3dpdGNoIChzdC50eXBlKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgICAgICAgICBwcm9wcy5wdXNoKHN0KTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgICAgIHByb3BzLnB1c2goc3QpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59XG5mdW5jdGlvbiBzZXRGbG93U2NhbGFyVmFsdWUodG9rZW4sIHNvdXJjZSwgdHlwZSkge1xuICAgIHN3aXRjaCAodG9rZW4udHlwZSkge1xuICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIHRva2VuLnR5cGUgPSB0eXBlO1xuICAgICAgICAgICAgdG9rZW4uc291cmNlID0gc291cmNlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6IHtcbiAgICAgICAgICAgIGNvbnN0IGVuZCA9IHRva2VuLnByb3BzLnNsaWNlKDEpO1xuICAgICAgICAgICAgbGV0IG9hID0gc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgIGlmICh0b2tlbi5wcm9wc1swXS50eXBlID09PSAnYmxvY2stc2NhbGFyLWhlYWRlcicpXG4gICAgICAgICAgICAgICAgb2EgLT0gdG9rZW4ucHJvcHNbMF0uc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgIGZvciAoY29uc3QgdG9rIG9mIGVuZClcbiAgICAgICAgICAgICAgICB0b2sub2Zmc2V0ICs9IG9hO1xuICAgICAgICAgICAgZGVsZXRlIHRva2VuLnByb3BzO1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0b2tlbiwgeyB0eXBlLCBzb3VyY2UsIGVuZCB9KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ2Jsb2NrLW1hcCc6XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXNlcSc6IHtcbiAgICAgICAgICAgIGNvbnN0IG9mZnNldCA9IHRva2VuLm9mZnNldCArIHNvdXJjZS5sZW5ndGg7XG4gICAgICAgICAgICBjb25zdCBubCA9IHsgdHlwZTogJ25ld2xpbmUnLCBvZmZzZXQsIGluZGVudDogdG9rZW4uaW5kZW50LCBzb3VyY2U6ICdcXG4nIH07XG4gICAgICAgICAgICBkZWxldGUgdG9rZW4uaXRlbXM7XG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKHRva2VuLCB7IHR5cGUsIHNvdXJjZSwgZW5kOiBbbmxdIH0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgY29uc3QgaW5kZW50ID0gJ2luZGVudCcgaW4gdG9rZW4gPyB0b2tlbi5pbmRlbnQgOiAtMTtcbiAgICAgICAgICAgIGNvbnN0IGVuZCA9ICdlbmQnIGluIHRva2VuICYmIEFycmF5LmlzQXJyYXkodG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgID8gdG9rZW4uZW5kLmZpbHRlcihzdCA9PiBzdC50eXBlID09PSAnc3BhY2UnIHx8XG4gICAgICAgICAgICAgICAgICAgIHN0LnR5cGUgPT09ICdjb21tZW50JyB8fFxuICAgICAgICAgICAgICAgICAgICBzdC50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHRva2VuKSlcbiAgICAgICAgICAgICAgICBpZiAoa2V5ICE9PSAndHlwZScgJiYga2V5ICE9PSAnb2Zmc2V0JylcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHRva2VuW2tleV07XG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKHRva2VuLCB7IHR5cGUsIGluZGVudCwgc291cmNlLCBlbmQgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydHMuY3JlYXRlU2NhbGFyVG9rZW4gPSBjcmVhdGVTY2FsYXJUb2tlbjtcbmV4cG9ydHMucmVzb2x2ZUFzU2NhbGFyID0gcmVzb2x2ZUFzU2NhbGFyO1xuZXhwb3J0cy5zZXRTY2FsYXJWYWx1ZSA9IHNldFNjYWxhclZhbHVlO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBTdHJpbmdpZnkgYSBDU1QgZG9jdW1lbnQsIHRva2VuLCBvciBjb2xsZWN0aW9uIGl0ZW1cbiAqXG4gKiBGYWlyIHdhcm5pbmc6IFRoaXMgYXBwbGllcyBubyB2YWxpZGF0aW9uIHdoYXRzb2V2ZXIsIGFuZFxuICogc2ltcGx5IGNvbmNhdGVuYXRlcyB0aGUgc291cmNlcyBpbiB0aGVpciBsb2dpY2FsIG9yZGVyLlxuICovXG5jb25zdCBzdHJpbmdpZnkgPSAoY3N0KSA9PiAndHlwZScgaW4gY3N0ID8gc3RyaW5naWZ5VG9rZW4oY3N0KSA6IHN0cmluZ2lmeUl0ZW0oY3N0KTtcbmZ1bmN0aW9uIHN0cmluZ2lmeVRva2VuKHRva2VuKSB7XG4gICAgc3dpdGNoICh0b2tlbi50eXBlKSB7XG4gICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSAnJztcbiAgICAgICAgICAgIGZvciAoY29uc3QgdG9rIG9mIHRva2VuLnByb3BzKVxuICAgICAgICAgICAgICAgIHJlcyArPSBzdHJpbmdpZnlUb2tlbih0b2spO1xuICAgICAgICAgICAgcmV0dXJuIHJlcyArIHRva2VuLnNvdXJjZTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdibG9jay1tYXAnOlxuICAgICAgICBjYXNlICdibG9jay1zZXEnOiB7XG4gICAgICAgICAgICBsZXQgcmVzID0gJyc7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdG9rZW4uaXRlbXMpXG4gICAgICAgICAgICAgICAgcmVzICs9IHN0cmluZ2lmeUl0ZW0oaXRlbSk7XG4gICAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ2Zsb3ctY29sbGVjdGlvbic6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSB0b2tlbi5zdGFydC5zb3VyY2U7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdG9rZW4uaXRlbXMpXG4gICAgICAgICAgICAgICAgcmVzICs9IHN0cmluZ2lmeUl0ZW0oaXRlbSk7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIHRva2VuLmVuZClcbiAgICAgICAgICAgICAgICByZXMgKz0gc3Quc291cmNlO1xuICAgICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdkb2N1bWVudCc6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSBzdHJpbmdpZnlJdGVtKHRva2VuKTtcbiAgICAgICAgICAgIGlmICh0b2tlbi5lbmQpXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBzdCBvZiB0b2tlbi5lbmQpXG4gICAgICAgICAgICAgICAgICAgIHJlcyArPSBzdC5zb3VyY2U7XG4gICAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgIGxldCByZXMgPSB0b2tlbi5zb3VyY2U7XG4gICAgICAgICAgICBpZiAoJ2VuZCcgaW4gdG9rZW4gJiYgdG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgc3Qgb2YgdG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgICAgICByZXMgKz0gc3Quc291cmNlO1xuICAgICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIHN0cmluZ2lmeUl0ZW0oeyBzdGFydCwga2V5LCBzZXAsIHZhbHVlIH0pIHtcbiAgICBsZXQgcmVzID0gJyc7XG4gICAgZm9yIChjb25zdCBzdCBvZiBzdGFydClcbiAgICAgICAgcmVzICs9IHN0LnNvdXJjZTtcbiAgICBpZiAoa2V5KVxuICAgICAgICByZXMgKz0gc3RyaW5naWZ5VG9rZW4oa2V5KTtcbiAgICBpZiAoc2VwKVxuICAgICAgICBmb3IgKGNvbnN0IHN0IG9mIHNlcClcbiAgICAgICAgICAgIHJlcyArPSBzdC5zb3VyY2U7XG4gICAgaWYgKHZhbHVlKVxuICAgICAgICByZXMgKz0gc3RyaW5naWZ5VG9rZW4odmFsdWUpO1xuICAgIHJldHVybiByZXM7XG59XG5cbmV4cG9ydHMuc3RyaW5naWZ5ID0gc3RyaW5naWZ5O1xuIiwgIid1c2Ugc3RyaWN0JztcblxuY29uc3QgQlJFQUsgPSBTeW1ib2woJ2JyZWFrIHZpc2l0Jyk7XG5jb25zdCBTS0lQID0gU3ltYm9sKCdza2lwIGNoaWxkcmVuJyk7XG5jb25zdCBSRU1PVkUgPSBTeW1ib2woJ3JlbW92ZSBpdGVtJyk7XG4vKipcbiAqIEFwcGx5IGEgdmlzaXRvciB0byBhIENTVCBkb2N1bWVudCBvciBpdGVtLlxuICpcbiAqIFdhbGtzIHRocm91Z2ggdGhlIHRyZWUgKGRlcHRoLWZpcnN0KSBzdGFydGluZyBmcm9tIHRoZSByb290LCBjYWxsaW5nIGFcbiAqIGB2aXNpdG9yYCBmdW5jdGlvbiB3aXRoIHR3byBhcmd1bWVudHMgd2hlbiBlbnRlcmluZyBlYWNoIGl0ZW06XG4gKiAgIC0gYGl0ZW1gOiBUaGUgY3VycmVudCBpdGVtLCB3aGljaCBpbmNsdWRlZCB0aGUgZm9sbG93aW5nIG1lbWJlcnM6XG4gKiAgICAgLSBgc3RhcnQ6IFNvdXJjZVRva2VuW11gIFx1MjAxMyBTb3VyY2UgdG9rZW5zIGJlZm9yZSB0aGUga2V5IG9yIHZhbHVlLFxuICogICAgICAgcG9zc2libHkgaW5jbHVkaW5nIGl0cyBhbmNob3Igb3IgdGFnLlxuICogICAgIC0gYGtleT86IFRva2VuIHwgbnVsbGAgXHUyMDEzIFNldCBmb3IgcGFpciB2YWx1ZXMuIE1heSB0aGVuIGJlIGBudWxsYCwgaWZcbiAqICAgICAgIHRoZSBrZXkgYmVmb3JlIHRoZSBgOmAgc2VwYXJhdG9yIGlzIGVtcHR5LlxuICogICAgIC0gYHNlcD86IFNvdXJjZVRva2VuW11gIFx1MjAxMyBTb3VyY2UgdG9rZW5zIGJldHdlZW4gdGhlIGtleSBhbmQgdGhlIHZhbHVlLFxuICogICAgICAgd2hpY2ggc2hvdWxkIGluY2x1ZGUgdGhlIGA6YCBtYXAgdmFsdWUgaW5kaWNhdG9yIGlmIGB2YWx1ZWAgaXMgc2V0LlxuICogICAgIC0gYHZhbHVlPzogVG9rZW5gIFx1MjAxMyBUaGUgdmFsdWUgb2YgYSBzZXF1ZW5jZSBpdGVtLCBvciBvZiBhIG1hcCBwYWlyLlxuICogICAtIGBwYXRoYDogVGhlIHN0ZXBzIGZyb20gdGhlIHJvb3QgdG8gdGhlIGN1cnJlbnQgbm9kZSwgYXMgYW4gYXJyYXkgb2ZcbiAqICAgICBgWydrZXknIHwgJ3ZhbHVlJywgbnVtYmVyXWAgdHVwbGVzLlxuICpcbiAqIFRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIHZpc2l0b3IgbWF5IGJlIHVzZWQgdG8gY29udHJvbCB0aGUgdHJhdmVyc2FsOlxuICogICAtIGB1bmRlZmluZWRgIChkZWZhdWx0KTogRG8gbm90aGluZyBhbmQgY29udGludWVcbiAqICAgLSBgdmlzaXQuU0tJUGA6IERvIG5vdCB2aXNpdCB0aGUgY2hpbGRyZW4gb2YgdGhpcyB0b2tlbiwgY29udGludWUgd2l0aFxuICogICAgICBuZXh0IHNpYmxpbmdcbiAqICAgLSBgdmlzaXQuQlJFQUtgOiBUZXJtaW5hdGUgdHJhdmVyc2FsIGNvbXBsZXRlbHlcbiAqICAgLSBgdmlzaXQuUkVNT1ZFYDogUmVtb3ZlIHRoZSBjdXJyZW50IGl0ZW0sIHRoZW4gY29udGludWUgd2l0aCB0aGUgbmV4dCBvbmVcbiAqICAgLSBgbnVtYmVyYDogU2V0IHRoZSBpbmRleCBvZiB0aGUgbmV4dCBzdGVwLiBUaGlzIGlzIHVzZWZ1bCBlc3BlY2lhbGx5IGlmXG4gKiAgICAgdGhlIGluZGV4IG9mIHRoZSBjdXJyZW50IHRva2VuIGhhcyBjaGFuZ2VkLlxuICogICAtIGBmdW5jdGlvbmA6IERlZmluZSB0aGUgbmV4dCB2aXNpdG9yIGZvciB0aGlzIGl0ZW0uIEFmdGVyIHRoZSBvcmlnaW5hbFxuICogICAgIHZpc2l0b3IgaXMgY2FsbGVkIG9uIGl0ZW0gZW50cnksIG5leHQgdmlzaXRvcnMgYXJlIGNhbGxlZCBhZnRlciBoYW5kbGluZ1xuICogICAgIGEgbm9uLWVtcHR5IGBrZXlgIGFuZCB3aGVuIGV4aXRpbmcgdGhlIGl0ZW0uXG4gKi9cbmZ1bmN0aW9uIHZpc2l0KGNzdCwgdmlzaXRvcikge1xuICAgIGlmICgndHlwZScgaW4gY3N0ICYmIGNzdC50eXBlID09PSAnZG9jdW1lbnQnKVxuICAgICAgICBjc3QgPSB7IHN0YXJ0OiBjc3Quc3RhcnQsIHZhbHVlOiBjc3QudmFsdWUgfTtcbiAgICBfdmlzaXQoT2JqZWN0LmZyZWV6ZShbXSksIGNzdCwgdmlzaXRvcik7XG59XG4vLyBXaXRob3V0IHRoZSBgYXMgc3ltYm9sYCBjYXN0cywgVFMgZGVjbGFyZXMgdGhlc2UgaW4gdGhlIGB2aXNpdGBcbi8vIG5hbWVzcGFjZSB1c2luZyBgdmFyYCwgYnV0IHRoZW4gY29tcGxhaW5zIGFib3V0IHRoYXQgYmVjYXVzZVxuLy8gYHVuaXF1ZSBzeW1ib2xgIG11c3QgYmUgYGNvbnN0YC5cbi8qKiBUZXJtaW5hdGUgdmlzaXQgdHJhdmVyc2FsIGNvbXBsZXRlbHkgKi9cbnZpc2l0LkJSRUFLID0gQlJFQUs7XG4vKiogRG8gbm90IHZpc2l0IHRoZSBjaGlsZHJlbiBvZiB0aGUgY3VycmVudCBpdGVtICovXG52aXNpdC5TS0lQID0gU0tJUDtcbi8qKiBSZW1vdmUgdGhlIGN1cnJlbnQgaXRlbSAqL1xudmlzaXQuUkVNT1ZFID0gUkVNT1ZFO1xuLyoqIEZpbmQgdGhlIGl0ZW0gYXQgYHBhdGhgIGZyb20gYGNzdGAgYXMgdGhlIHJvb3QgKi9cbnZpc2l0Lml0ZW1BdFBhdGggPSAoY3N0LCBwYXRoKSA9PiB7XG4gICAgbGV0IGl0ZW0gPSBjc3Q7XG4gICAgZm9yIChjb25zdCBbZmllbGQsIGluZGV4XSBvZiBwYXRoKSB7XG4gICAgICAgIGNvbnN0IHRvayA9IGl0ZW0/LltmaWVsZF07XG4gICAgICAgIGlmICh0b2sgJiYgJ2l0ZW1zJyBpbiB0b2spIHtcbiAgICAgICAgICAgIGl0ZW0gPSB0b2suaXRlbXNbaW5kZXhdO1xuICAgICAgICB9XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiBpdGVtO1xufTtcbi8qKlxuICogR2V0IHRoZSBpbW1lZGlhdGUgcGFyZW50IGNvbGxlY3Rpb24gb2YgdGhlIGl0ZW0gYXQgYHBhdGhgIGZyb20gYGNzdGAgYXMgdGhlIHJvb3QuXG4gKlxuICogVGhyb3dzIGFuIGVycm9yIGlmIHRoZSBjb2xsZWN0aW9uIGlzIG5vdCBmb3VuZCwgd2hpY2ggc2hvdWxkIG5ldmVyIGhhcHBlbiBpZiB0aGUgaXRlbSBpdHNlbGYgZXhpc3RzLlxuICovXG52aXNpdC5wYXJlbnRDb2xsZWN0aW9uID0gKGNzdCwgcGF0aCkgPT4ge1xuICAgIGNvbnN0IHBhcmVudCA9IHZpc2l0Lml0ZW1BdFBhdGgoY3N0LCBwYXRoLnNsaWNlKDAsIC0xKSk7XG4gICAgY29uc3QgZmllbGQgPSBwYXRoW3BhdGgubGVuZ3RoIC0gMV1bMF07XG4gICAgY29uc3QgY29sbCA9IHBhcmVudD8uW2ZpZWxkXTtcbiAgICBpZiAoY29sbCAmJiAnaXRlbXMnIGluIGNvbGwpXG4gICAgICAgIHJldHVybiBjb2xsO1xuICAgIHRocm93IG5ldyBFcnJvcignUGFyZW50IGNvbGxlY3Rpb24gbm90IGZvdW5kJyk7XG59O1xuZnVuY3Rpb24gX3Zpc2l0KHBhdGgsIGl0ZW0sIHZpc2l0b3IpIHtcbiAgICBsZXQgY3RybCA9IHZpc2l0b3IoaXRlbSwgcGF0aCk7XG4gICAgaWYgKHR5cGVvZiBjdHJsID09PSAnc3ltYm9sJylcbiAgICAgICAgcmV0dXJuIGN0cmw7XG4gICAgZm9yIChjb25zdCBmaWVsZCBvZiBbJ2tleScsICd2YWx1ZSddKSB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gaXRlbVtmaWVsZF07XG4gICAgICAgIGlmICh0b2tlbiAmJiAnaXRlbXMnIGluIHRva2VuKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRva2VuLml0ZW1zLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2kgPSBfdmlzaXQoT2JqZWN0LmZyZWV6ZShwYXRoLmNvbmNhdChbW2ZpZWxkLCBpXV0pKSwgdG9rZW4uaXRlbXNbaV0sIHZpc2l0b3IpO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY2kgPT09ICdudW1iZXInKVxuICAgICAgICAgICAgICAgICAgICBpID0gY2kgLSAxO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBCUkVBSylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEJSRUFLO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNpID09PSBSRU1PVkUpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9rZW4uaXRlbXMuc3BsaWNlKGksIDEpO1xuICAgICAgICAgICAgICAgICAgICBpIC09IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBjdHJsID09PSAnZnVuY3Rpb24nICYmIGZpZWxkID09PSAna2V5JylcbiAgICAgICAgICAgICAgICBjdHJsID0gY3RybChpdGVtLCBwYXRoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHlwZW9mIGN0cmwgPT09ICdmdW5jdGlvbicgPyBjdHJsKGl0ZW0sIHBhdGgpIDogY3RybDtcbn1cblxuZXhwb3J0cy52aXNpdCA9IHZpc2l0O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGNzdFNjYWxhciA9IHJlcXVpcmUoJy4vY3N0LXNjYWxhci5qcycpO1xudmFyIGNzdFN0cmluZ2lmeSA9IHJlcXVpcmUoJy4vY3N0LXN0cmluZ2lmeS5qcycpO1xudmFyIGNzdFZpc2l0ID0gcmVxdWlyZSgnLi9jc3QtdmlzaXQuanMnKTtcblxuLyoqIFRoZSBieXRlIG9yZGVyIG1hcmsgKi9cbmNvbnN0IEJPTSA9ICdcXHV7RkVGRn0nO1xuLyoqIFN0YXJ0IG9mIGRvYy1tb2RlICovXG5jb25zdCBET0NVTUVOVCA9ICdcXHgwMic7IC8vIEMwOiBTdGFydCBvZiBUZXh0XG4vKiogVW5leHBlY3RlZCBlbmQgb2YgZmxvdy1tb2RlICovXG5jb25zdCBGTE9XX0VORCA9ICdcXHgxOCc7IC8vIEMwOiBDYW5jZWxcbi8qKiBOZXh0IHRva2VuIGlzIGEgc2NhbGFyIHZhbHVlICovXG5jb25zdCBTQ0FMQVIgPSAnXFx4MWYnOyAvLyBDMDogVW5pdCBTZXBhcmF0b3Jcbi8qKiBAcmV0dXJucyBgdHJ1ZWAgaWYgYHRva2VuYCBpcyBhIGZsb3cgb3IgYmxvY2sgY29sbGVjdGlvbiAqL1xuY29uc3QgaXNDb2xsZWN0aW9uID0gKHRva2VuKSA9PiAhIXRva2VuICYmICdpdGVtcycgaW4gdG9rZW47XG4vKiogQHJldHVybnMgYHRydWVgIGlmIGB0b2tlbmAgaXMgYSBmbG93IG9yIGJsb2NrIHNjYWxhcjsgbm90IGFuIGFsaWFzICovXG5jb25zdCBpc1NjYWxhciA9ICh0b2tlbikgPT4gISF0b2tlbiAmJlxuICAgICh0b2tlbi50eXBlID09PSAnc2NhbGFyJyB8fFxuICAgICAgICB0b2tlbi50eXBlID09PSAnc2luZ2xlLXF1b3RlZC1zY2FsYXInIHx8XG4gICAgICAgIHRva2VuLnR5cGUgPT09ICdkb3VibGUtcXVvdGVkLXNjYWxhcicgfHxcbiAgICAgICAgdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLXNjYWxhcicpO1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbi8qKiBHZXQgYSBwcmludGFibGUgcmVwcmVzZW50YXRpb24gb2YgYSBsZXhlciB0b2tlbiAqL1xuZnVuY3Rpb24gcHJldHR5VG9rZW4odG9rZW4pIHtcbiAgICBzd2l0Y2ggKHRva2VuKSB7XG4gICAgICAgIGNhc2UgQk9NOlxuICAgICAgICAgICAgcmV0dXJuICc8Qk9NPic7XG4gICAgICAgIGNhc2UgRE9DVU1FTlQ6XG4gICAgICAgICAgICByZXR1cm4gJzxET0M+JztcbiAgICAgICAgY2FzZSBGTE9XX0VORDpcbiAgICAgICAgICAgIHJldHVybiAnPEZMT1dfRU5EPic7XG4gICAgICAgIGNhc2UgU0NBTEFSOlxuICAgICAgICAgICAgcmV0dXJuICc8U0NBTEFSPic7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkodG9rZW4pO1xuICAgIH1cbn1cbi8qKiBJZGVudGlmeSB0aGUgdHlwZSBvZiBhIGxleGVyIHRva2VuLiBNYXkgcmV0dXJuIGBudWxsYCBmb3IgdW5rbm93biB0b2tlbnMuICovXG5mdW5jdGlvbiB0b2tlblR5cGUoc291cmNlKSB7XG4gICAgc3dpdGNoIChzb3VyY2UpIHtcbiAgICAgICAgY2FzZSBCT006XG4gICAgICAgICAgICByZXR1cm4gJ2J5dGUtb3JkZXItbWFyayc7XG4gICAgICAgIGNhc2UgRE9DVU1FTlQ6XG4gICAgICAgICAgICByZXR1cm4gJ2RvYy1tb2RlJztcbiAgICAgICAgY2FzZSBGTE9XX0VORDpcbiAgICAgICAgICAgIHJldHVybiAnZmxvdy1lcnJvci1lbmQnO1xuICAgICAgICBjYXNlIFNDQUxBUjpcbiAgICAgICAgICAgIHJldHVybiAnc2NhbGFyJztcbiAgICAgICAgY2FzZSAnLS0tJzpcbiAgICAgICAgICAgIHJldHVybiAnZG9jLXN0YXJ0JztcbiAgICAgICAgY2FzZSAnLi4uJzpcbiAgICAgICAgICAgIHJldHVybiAnZG9jLWVuZCc7XG4gICAgICAgIGNhc2UgJyc6XG4gICAgICAgIGNhc2UgJ1xcbic6XG4gICAgICAgIGNhc2UgJ1xcclxcbic6XG4gICAgICAgICAgICByZXR1cm4gJ25ld2xpbmUnO1xuICAgICAgICBjYXNlICctJzpcbiAgICAgICAgICAgIHJldHVybiAnc2VxLWl0ZW0taW5kJztcbiAgICAgICAgY2FzZSAnPyc6XG4gICAgICAgICAgICByZXR1cm4gJ2V4cGxpY2l0LWtleS1pbmQnO1xuICAgICAgICBjYXNlICc6JzpcbiAgICAgICAgICAgIHJldHVybiAnbWFwLXZhbHVlLWluZCc7XG4gICAgICAgIGNhc2UgJ3snOlxuICAgICAgICAgICAgcmV0dXJuICdmbG93LW1hcC1zdGFydCc7XG4gICAgICAgIGNhc2UgJ30nOlxuICAgICAgICAgICAgcmV0dXJuICdmbG93LW1hcC1lbmQnO1xuICAgICAgICBjYXNlICdbJzpcbiAgICAgICAgICAgIHJldHVybiAnZmxvdy1zZXEtc3RhcnQnO1xuICAgICAgICBjYXNlICddJzpcbiAgICAgICAgICAgIHJldHVybiAnZmxvdy1zZXEtZW5kJztcbiAgICAgICAgY2FzZSAnLCc6XG4gICAgICAgICAgICByZXR1cm4gJ2NvbW1hJztcbiAgICB9XG4gICAgc3dpdGNoIChzb3VyY2VbMF0pIHtcbiAgICAgICAgY2FzZSAnICc6XG4gICAgICAgIGNhc2UgJ1xcdCc6XG4gICAgICAgICAgICByZXR1cm4gJ3NwYWNlJztcbiAgICAgICAgY2FzZSAnIyc6XG4gICAgICAgICAgICByZXR1cm4gJ2NvbW1lbnQnO1xuICAgICAgICBjYXNlICclJzpcbiAgICAgICAgICAgIHJldHVybiAnZGlyZWN0aXZlLWxpbmUnO1xuICAgICAgICBjYXNlICcqJzpcbiAgICAgICAgICAgIHJldHVybiAnYWxpYXMnO1xuICAgICAgICBjYXNlICcmJzpcbiAgICAgICAgICAgIHJldHVybiAnYW5jaG9yJztcbiAgICAgICAgY2FzZSAnISc6XG4gICAgICAgICAgICByZXR1cm4gJ3RhZyc7XG4gICAgICAgIGNhc2UgXCInXCI6XG4gICAgICAgICAgICByZXR1cm4gJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJztcbiAgICAgICAgY2FzZSAnXCInOlxuICAgICAgICAgICAgcmV0dXJuICdkb3VibGUtcXVvdGVkLXNjYWxhcic7XG4gICAgICAgIGNhc2UgJ3wnOlxuICAgICAgICBjYXNlICc+JzpcbiAgICAgICAgICAgIHJldHVybiAnYmxvY2stc2NhbGFyLWhlYWRlcic7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xufVxuXG5leHBvcnRzLmNyZWF0ZVNjYWxhclRva2VuID0gY3N0U2NhbGFyLmNyZWF0ZVNjYWxhclRva2VuO1xuZXhwb3J0cy5yZXNvbHZlQXNTY2FsYXIgPSBjc3RTY2FsYXIucmVzb2x2ZUFzU2NhbGFyO1xuZXhwb3J0cy5zZXRTY2FsYXJWYWx1ZSA9IGNzdFNjYWxhci5zZXRTY2FsYXJWYWx1ZTtcbmV4cG9ydHMuc3RyaW5naWZ5ID0gY3N0U3RyaW5naWZ5LnN0cmluZ2lmeTtcbmV4cG9ydHMudmlzaXQgPSBjc3RWaXNpdC52aXNpdDtcbmV4cG9ydHMuQk9NID0gQk9NO1xuZXhwb3J0cy5ET0NVTUVOVCA9IERPQ1VNRU5UO1xuZXhwb3J0cy5GTE9XX0VORCA9IEZMT1dfRU5EO1xuZXhwb3J0cy5TQ0FMQVIgPSBTQ0FMQVI7XG5leHBvcnRzLmlzQ29sbGVjdGlvbiA9IGlzQ29sbGVjdGlvbjtcbmV4cG9ydHMuaXNTY2FsYXIgPSBpc1NjYWxhcjtcbmV4cG9ydHMucHJldHR5VG9rZW4gPSBwcmV0dHlUb2tlbjtcbmV4cG9ydHMudG9rZW5UeXBlID0gdG9rZW5UeXBlO1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGNzdCA9IHJlcXVpcmUoJy4vY3N0LmpzJyk7XG5cbi8qXG5TVEFSVCAtPiBzdHJlYW1cblxuc3RyZWFtXG4gIGRpcmVjdGl2ZSAtPiBsaW5lLWVuZCAtPiBzdHJlYW1cbiAgaW5kZW50ICsgbGluZS1lbmQgLT4gc3RyZWFtXG4gIFtlbHNlXSAtPiBsaW5lLXN0YXJ0XG5cbmxpbmUtZW5kXG4gIGNvbW1lbnQgLT4gbGluZS1lbmRcbiAgbmV3bGluZSAtPiAuXG4gIGlucHV0LWVuZCAtPiBFTkRcblxubGluZS1zdGFydFxuICBkb2Mtc3RhcnQgLT4gZG9jXG4gIGRvYy1lbmQgLT4gc3RyZWFtXG4gIFtlbHNlXSAtPiBpbmRlbnQgLT4gYmxvY2stc3RhcnRcblxuYmxvY2stc3RhcnRcbiAgc2VxLWl0ZW0tc3RhcnQgLT4gYmxvY2stc3RhcnRcbiAgZXhwbGljaXQta2V5LXN0YXJ0IC0+IGJsb2NrLXN0YXJ0XG4gIG1hcC12YWx1ZS1zdGFydCAtPiBibG9jay1zdGFydFxuICBbZWxzZV0gLT4gZG9jXG5cbmRvY1xuICBsaW5lLWVuZCAtPiBsaW5lLXN0YXJ0XG4gIHNwYWNlcyAtPiBkb2NcbiAgYW5jaG9yIC0+IGRvY1xuICB0YWcgLT4gZG9jXG4gIGZsb3ctc3RhcnQgLT4gZmxvdyAtPiBkb2NcbiAgZmxvdy1lbmQgLT4gZXJyb3IgLT4gZG9jXG4gIHNlcS1pdGVtLXN0YXJ0IC0+IGVycm9yIC0+IGRvY1xuICBleHBsaWNpdC1rZXktc3RhcnQgLT4gZXJyb3IgLT4gZG9jXG4gIG1hcC12YWx1ZS1zdGFydCAtPiBkb2NcbiAgYWxpYXMgLT4gZG9jXG4gIHF1b3RlLXN0YXJ0IC0+IHF1b3RlZC1zY2FsYXIgLT4gZG9jXG4gIGJsb2NrLXNjYWxhci1oZWFkZXIgLT4gbGluZS1lbmQgLT4gYmxvY2stc2NhbGFyKG1pbikgLT4gbGluZS1zdGFydFxuICBbZWxzZV0gLT4gcGxhaW4tc2NhbGFyKGZhbHNlLCBtaW4pIC0+IGRvY1xuXG5mbG93XG4gIGxpbmUtZW5kIC0+IGZsb3dcbiAgc3BhY2VzIC0+IGZsb3dcbiAgYW5jaG9yIC0+IGZsb3dcbiAgdGFnIC0+IGZsb3dcbiAgZmxvdy1zdGFydCAtPiBmbG93IC0+IGZsb3dcbiAgZmxvdy1lbmQgLT4gLlxuICBzZXEtaXRlbS1zdGFydCAtPiBlcnJvciAtPiBmbG93XG4gIGV4cGxpY2l0LWtleS1zdGFydCAtPiBmbG93XG4gIG1hcC12YWx1ZS1zdGFydCAtPiBmbG93XG4gIGFsaWFzIC0+IGZsb3dcbiAgcXVvdGUtc3RhcnQgLT4gcXVvdGVkLXNjYWxhciAtPiBmbG93XG4gIGNvbW1hIC0+IGZsb3dcbiAgW2Vsc2VdIC0+IHBsYWluLXNjYWxhcih0cnVlLCAwKSAtPiBmbG93XG5cbnF1b3RlZC1zY2FsYXJcbiAgcXVvdGUtZW5kIC0+IC5cbiAgW2Vsc2VdIC0+IHF1b3RlZC1zY2FsYXJcblxuYmxvY2stc2NhbGFyKG1pbilcbiAgbmV3bGluZSArIHBlZWsoaW5kZW50IDwgbWluKSAtPiAuXG4gIFtlbHNlXSAtPiBibG9jay1zY2FsYXIobWluKVxuXG5wbGFpbi1zY2FsYXIoaXMtZmxvdywgbWluKVxuICBzY2FsYXItZW5kKGlzLWZsb3cpIC0+IC5cbiAgcGVlayhuZXdsaW5lICsgKGluZGVudCA8IG1pbikpIC0+IC5cbiAgW2Vsc2VdIC0+IHBsYWluLXNjYWxhcihtaW4pXG4qL1xuZnVuY3Rpb24gaXNFbXB0eShjaCkge1xuICAgIHN3aXRjaCAoY2gpIHtcbiAgICAgICAgY2FzZSB1bmRlZmluZWQ6XG4gICAgICAgIGNhc2UgJyAnOlxuICAgICAgICBjYXNlICdcXG4nOlxuICAgICAgICBjYXNlICdcXHInOlxuICAgICAgICBjYXNlICdcXHQnOlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuY29uc3QgaGV4RGlnaXRzID0gbmV3IFNldCgnMDEyMzQ1Njc4OUFCQ0RFRmFiY2RlZicpO1xuY29uc3QgdGFnQ2hhcnMgPSBuZXcgU2V0KFwiMDEyMzQ1Njc4OUFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXotIzsvPzpAJj0rJF8uIX4qJygpXCIpO1xuY29uc3QgZmxvd0luZGljYXRvckNoYXJzID0gbmV3IFNldCgnLFtde30nKTtcbmNvbnN0IGludmFsaWRBbmNob3JDaGFycyA9IG5ldyBTZXQoJyAsW117fVxcblxcclxcdCcpO1xuY29uc3QgaXNOb3RBbmNob3JDaGFyID0gKGNoKSA9PiAhY2ggfHwgaW52YWxpZEFuY2hvckNoYXJzLmhhcyhjaCk7XG4vKipcbiAqIFNwbGl0cyBhbiBpbnB1dCBzdHJpbmcgaW50byBsZXhpY2FsIHRva2VucywgaS5lLiBzbWFsbGVyIHN0cmluZ3MgdGhhdCBhcmVcbiAqIGVhc2lseSBpZGVudGlmaWFibGUgYnkgYHRva2Vucy50b2tlblR5cGUoKWAuXG4gKlxuICogTGV4aW5nIHN0YXJ0cyBhbHdheXMgaW4gYSBcInN0cmVhbVwiIGNvbnRleHQuIEluY29tcGxldGUgaW5wdXQgbWF5IGJlIGJ1ZmZlcmVkXG4gKiB1bnRpbCBhIGNvbXBsZXRlIHRva2VuIGNhbiBiZSBlbWl0dGVkLlxuICpcbiAqIEluIGFkZGl0aW9uIHRvIHNsaWNlcyBvZiB0aGUgb3JpZ2luYWwgaW5wdXQsIHRoZSBmb2xsb3dpbmcgY29udHJvbCBjaGFyYWN0ZXJzXG4gKiBtYXkgYWxzbyBiZSBlbWl0dGVkOlxuICpcbiAqIC0gYFxceDAyYCAoU3RhcnQgb2YgVGV4dCk6IEEgZG9jdW1lbnQgc3RhcnRzIHdpdGggdGhlIG5leHQgdG9rZW5cbiAqIC0gYFxceDE4YCAoQ2FuY2VsKTogVW5leHBlY3RlZCBlbmQgb2YgZmxvdy1tb2RlIChpbmRpY2F0ZXMgYW4gZXJyb3IpXG4gKiAtIGBcXHgxZmAgKFVuaXQgU2VwYXJhdG9yKTogTmV4dCB0b2tlbiBpcyBhIHNjYWxhciB2YWx1ZVxuICogLSBgXFx1e0ZFRkZ9YCAoQnl0ZSBvcmRlciBtYXJrKTogRW1pdHRlZCBzZXBhcmF0ZWx5IG91dHNpZGUgZG9jdW1lbnRzXG4gKi9cbmNsYXNzIExleGVyIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgYnVmZmVyIG1hcmtzIHRoZSBlbmQgb2ZcbiAgICAgICAgICogYWxsIGlucHV0XG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmF0RW5kID0gZmFsc2U7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFeHBsaWNpdCBpbmRlbnQgc2V0IGluIGJsb2NrIHNjYWxhciBoZWFkZXIsIGFzIGFuIG9mZnNldCBmcm9tIHRoZSBjdXJyZW50XG4gICAgICAgICAqIG1pbmltdW0gaW5kZW50LCBzbyBlLmcuIHNldCB0byAxIGZyb20gYSBoZWFkZXIgYHwyK2AuIFNldCB0byAtMSBpZiBub3RcbiAgICAgICAgICogZXhwbGljaXRseSBzZXQuXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmJsb2NrU2NhbGFySW5kZW50ID0gLTE7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBCbG9jayBzY2FsYXJzIHRoYXQgaW5jbHVkZSBhICsgKGtlZXApIGNob21waW5nIGluZGljYXRvciBpbiB0aGVpciBoZWFkZXJcbiAgICAgICAgICogaW5jbHVkZSB0cmFpbGluZyBlbXB0eSBsaW5lcywgd2hpY2ggYXJlIG90aGVyd2lzZSBleGNsdWRlZCBmcm9tIHRoZVxuICAgICAgICAgKiBzY2FsYXIncyBjb250ZW50cy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuYmxvY2tTY2FsYXJLZWVwID0gZmFsc2U7XG4gICAgICAgIC8qKiBDdXJyZW50IGlucHV0ICovXG4gICAgICAgIHRoaXMuYnVmZmVyID0gJyc7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBGbGFnIG5vdGluZyB3aGV0aGVyIHRoZSBtYXAgdmFsdWUgaW5kaWNhdG9yIDogY2FuIGltbWVkaWF0ZWx5IGZvbGxvdyB0aGlzXG4gICAgICAgICAqIG5vZGUgd2l0aGluIGEgZmxvdyBjb250ZXh0LlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5mbG93S2V5ID0gZmFsc2U7XG4gICAgICAgIC8qKiBDb3VudCBvZiBzdXJyb3VuZGluZyBmbG93IGNvbGxlY3Rpb24gbGV2ZWxzLiAqL1xuICAgICAgICB0aGlzLmZsb3dMZXZlbCA9IDA7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBNaW5pbXVtIGxldmVsIG9mIGluZGVudGF0aW9uIHJlcXVpcmVkIGZvciBuZXh0IGxpbmVzIHRvIGJlIHBhcnNlZCBhcyBhXG4gICAgICAgICAqIHBhcnQgb2YgdGhlIGN1cnJlbnQgc2NhbGFyIHZhbHVlLlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5pbmRlbnROZXh0ID0gMDtcbiAgICAgICAgLyoqIEluZGVudGF0aW9uIGxldmVsIG9mIHRoZSBjdXJyZW50IGxpbmUuICovXG4gICAgICAgIHRoaXMuaW5kZW50VmFsdWUgPSAwO1xuICAgICAgICAvKiogUG9zaXRpb24gb2YgdGhlIG5leHQgXFxuIGNoYXJhY3Rlci4gKi9cbiAgICAgICAgdGhpcy5saW5lRW5kUG9zID0gbnVsbDtcbiAgICAgICAgLyoqIFN0b3JlcyB0aGUgc3RhdGUgb2YgdGhlIGxleGVyIGlmIHJlYWNoaW5nIHRoZSBlbmQgb2YgaW5jcG9tcGxldGUgaW5wdXQgKi9cbiAgICAgICAgdGhpcy5uZXh0ID0gbnVsbDtcbiAgICAgICAgLyoqIEEgcG9pbnRlciB0byBgYnVmZmVyYDsgdGhlIGN1cnJlbnQgcG9zaXRpb24gb2YgdGhlIGxleGVyLiAqL1xuICAgICAgICB0aGlzLnBvcyA9IDA7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdlbmVyYXRlIFlBTUwgdG9rZW5zIGZyb20gdGhlIGBzb3VyY2VgIHN0cmluZy4gSWYgYGluY29tcGxldGVgLFxuICAgICAqIGEgcGFydCBvZiB0aGUgbGFzdCBsaW5lIG1heSBiZSBsZWZ0IGFzIGEgYnVmZmVyIGZvciB0aGUgbmV4dCBjYWxsLlxuICAgICAqXG4gICAgICogQHJldHVybnMgQSBnZW5lcmF0b3Igb2YgbGV4aWNhbCB0b2tlbnNcbiAgICAgKi9cbiAgICAqbGV4KHNvdXJjZSwgaW5jb21wbGV0ZSA9IGZhbHNlKSB7XG4gICAgICAgIGlmIChzb3VyY2UpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2Ygc291cmNlICE9PSAnc3RyaW5nJylcbiAgICAgICAgICAgICAgICB0aHJvdyBUeXBlRXJyb3IoJ3NvdXJjZSBpcyBub3QgYSBzdHJpbmcnKTtcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyID0gdGhpcy5idWZmZXIgPyB0aGlzLmJ1ZmZlciArIHNvdXJjZSA6IHNvdXJjZTtcbiAgICAgICAgICAgIHRoaXMubGluZUVuZFBvcyA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hdEVuZCA9ICFpbmNvbXBsZXRlO1xuICAgICAgICBsZXQgbmV4dCA9IHRoaXMubmV4dCA/PyAnc3RyZWFtJztcbiAgICAgICAgd2hpbGUgKG5leHQgJiYgKGluY29tcGxldGUgfHwgdGhpcy5oYXNDaGFycygxKSkpXG4gICAgICAgICAgICBuZXh0ID0geWllbGQqIHRoaXMucGFyc2VOZXh0KG5leHQpO1xuICAgIH1cbiAgICBhdExpbmVFbmQoKSB7XG4gICAgICAgIGxldCBpID0gdGhpcy5wb3M7XG4gICAgICAgIGxldCBjaCA9IHRoaXMuYnVmZmVyW2ldO1xuICAgICAgICB3aGlsZSAoY2ggPT09ICcgJyB8fCBjaCA9PT0gJ1xcdCcpXG4gICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgIGlmICghY2ggfHwgY2ggPT09ICcjJyB8fCBjaCA9PT0gJ1xcbicpXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgaWYgKGNoID09PSAnXFxyJylcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlcltpICsgMV0gPT09ICdcXG4nO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNoYXJBdChuKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1ZmZlclt0aGlzLnBvcyArIG5dO1xuICAgIH1cbiAgICBjb250aW51ZVNjYWxhcihvZmZzZXQpIHtcbiAgICAgICAgbGV0IGNoID0gdGhpcy5idWZmZXJbb2Zmc2V0XTtcbiAgICAgICAgaWYgKHRoaXMuaW5kZW50TmV4dCA+IDApIHtcbiAgICAgICAgICAgIGxldCBpbmRlbnQgPSAwO1xuICAgICAgICAgICAgd2hpbGUgKGNoID09PSAnICcpXG4gICAgICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclsrK2luZGVudCArIG9mZnNldF07XG4gICAgICAgICAgICBpZiAoY2ggPT09ICdcXHInKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuYnVmZmVyW2luZGVudCArIG9mZnNldCArIDFdO1xuICAgICAgICAgICAgICAgIGlmIChuZXh0ID09PSAnXFxuJyB8fCAoIW5leHQgJiYgIXRoaXMuYXRFbmQpKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2Zmc2V0ICsgaW5kZW50ICsgMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBjaCA9PT0gJ1xcbicgfHwgaW5kZW50ID49IHRoaXMuaW5kZW50TmV4dCB8fCAoIWNoICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgICAgID8gb2Zmc2V0ICsgaW5kZW50XG4gICAgICAgICAgICAgICAgOiAtMTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2ggPT09ICctJyB8fCBjaCA9PT0gJy4nKSB7XG4gICAgICAgICAgICBjb25zdCBkdCA9IHRoaXMuYnVmZmVyLnN1YnN0cihvZmZzZXQsIDMpO1xuICAgICAgICAgICAgaWYgKChkdCA9PT0gJy0tLScgfHwgZHQgPT09ICcuLi4nKSAmJiBpc0VtcHR5KHRoaXMuYnVmZmVyW29mZnNldCArIDNdKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9mZnNldDtcbiAgICB9XG4gICAgZ2V0TGluZSgpIHtcbiAgICAgICAgbGV0IGVuZCA9IHRoaXMubGluZUVuZFBvcztcbiAgICAgICAgaWYgKHR5cGVvZiBlbmQgIT09ICdudW1iZXInIHx8IChlbmQgIT09IC0xICYmIGVuZCA8IHRoaXMucG9zKSkge1xuICAgICAgICAgICAgZW5kID0gdGhpcy5idWZmZXIuaW5kZXhPZignXFxuJywgdGhpcy5wb3MpO1xuICAgICAgICAgICAgdGhpcy5saW5lRW5kUG9zID0gZW5kO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmQgPT09IC0xKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXRFbmQgPyB0aGlzLmJ1ZmZlci5zdWJzdHJpbmcodGhpcy5wb3MpIDogbnVsbDtcbiAgICAgICAgaWYgKHRoaXMuYnVmZmVyW2VuZCAtIDFdID09PSAnXFxyJylcbiAgICAgICAgICAgIGVuZCAtPSAxO1xuICAgICAgICByZXR1cm4gdGhpcy5idWZmZXIuc3Vic3RyaW5nKHRoaXMucG9zLCBlbmQpO1xuICAgIH1cbiAgICBoYXNDaGFycyhuKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBvcyArIG4gPD0gdGhpcy5idWZmZXIubGVuZ3RoO1xuICAgIH1cbiAgICBzZXROZXh0KHN0YXRlKSB7XG4gICAgICAgIHRoaXMuYnVmZmVyID0gdGhpcy5idWZmZXIuc3Vic3RyaW5nKHRoaXMucG9zKTtcbiAgICAgICAgdGhpcy5wb3MgPSAwO1xuICAgICAgICB0aGlzLmxpbmVFbmRQb3MgPSBudWxsO1xuICAgICAgICB0aGlzLm5leHQgPSBzdGF0ZTtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHBlZWsobikge1xuICAgICAgICByZXR1cm4gdGhpcy5idWZmZXIuc3Vic3RyKHRoaXMucG9zLCBuKTtcbiAgICB9XG4gICAgKnBhcnNlTmV4dChuZXh0KSB7XG4gICAgICAgIHN3aXRjaCAobmV4dCkge1xuICAgICAgICAgICAgY2FzZSAnc3RyZWFtJzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VTdHJlYW0oKTtcbiAgICAgICAgICAgIGNhc2UgJ2xpbmUtc3RhcnQnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgICAgICAgICAgY2FzZSAnYmxvY2stc3RhcnQnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUJsb2NrU3RhcnQoKTtcbiAgICAgICAgICAgIGNhc2UgJ2RvYyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlRG9jdW1lbnQoKTtcbiAgICAgICAgICAgIGNhc2UgJ2Zsb3cnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUZsb3dDb2xsZWN0aW9uKCk7XG4gICAgICAgICAgICBjYXNlICdxdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VRdW90ZWRTY2FsYXIoKTtcbiAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlQmxvY2tTY2FsYXIoKTtcbiAgICAgICAgICAgIGNhc2UgJ3BsYWluLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlUGxhaW5TY2FsYXIoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqcGFyc2VTdHJlYW0oKSB7XG4gICAgICAgIGxldCBsaW5lID0gdGhpcy5nZXRMaW5lKCk7XG4gICAgICAgIGlmIChsaW5lID09PSBudWxsKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnc3RyZWFtJyk7XG4gICAgICAgIGlmIChsaW5lWzBdID09PSBjc3QuQk9NKSB7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICBsaW5lID0gbGluZS5zdWJzdHJpbmcoMSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxpbmVbMF0gPT09ICclJykge1xuICAgICAgICAgICAgbGV0IGRpckVuZCA9IGxpbmUubGVuZ3RoO1xuICAgICAgICAgICAgbGV0IGNzID0gbGluZS5pbmRleE9mKCcjJyk7XG4gICAgICAgICAgICB3aGlsZSAoY3MgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2ggPSBsaW5lW2NzIC0gMV07XG4gICAgICAgICAgICAgICAgaWYgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpckVuZCA9IGNzIC0gMTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjcyA9IGxpbmUuaW5kZXhPZignIycsIGNzICsgMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjaCA9IGxpbmVbZGlyRW5kIC0gMV07XG4gICAgICAgICAgICAgICAgaWYgKGNoID09PSAnICcgfHwgY2ggPT09ICdcXHQnKVxuICAgICAgICAgICAgICAgICAgICBkaXJFbmQgLT0gMTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgbiA9ICh5aWVsZCogdGhpcy5wdXNoQ291bnQoZGlyRW5kKSkgKyAoeWllbGQqIHRoaXMucHVzaFNwYWNlcyh0cnVlKSk7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQobGluZS5sZW5ndGggLSBuKTsgLy8gcG9zc2libGUgY29tbWVudFxuICAgICAgICAgICAgdGhpcy5wdXNoTmV3bGluZSgpO1xuICAgICAgICAgICAgcmV0dXJuICdzdHJlYW0nO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmF0TGluZUVuZCgpKSB7XG4gICAgICAgICAgICBjb25zdCBzcCA9IHlpZWxkKiB0aGlzLnB1c2hTcGFjZXModHJ1ZSk7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQobGluZS5sZW5ndGggLSBzcCk7XG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoTmV3bGluZSgpO1xuICAgICAgICAgICAgcmV0dXJuICdzdHJlYW0nO1xuICAgICAgICB9XG4gICAgICAgIHlpZWxkIGNzdC5ET0NVTUVOVDtcbiAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlTGluZVN0YXJ0KCk7XG4gICAgfVxuICAgICpwYXJzZUxpbmVTdGFydCgpIHtcbiAgICAgICAgY29uc3QgY2ggPSB0aGlzLmNoYXJBdCgwKTtcbiAgICAgICAgaWYgKCFjaCAmJiAhdGhpcy5hdEVuZClcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnNldE5leHQoJ2xpbmUtc3RhcnQnKTtcbiAgICAgICAgaWYgKGNoID09PSAnLScgfHwgY2ggPT09ICcuJykge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmF0RW5kICYmICF0aGlzLmhhc0NoYXJzKDQpKVxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldE5leHQoJ2xpbmUtc3RhcnQnKTtcbiAgICAgICAgICAgIGNvbnN0IHMgPSB0aGlzLnBlZWsoMyk7XG4gICAgICAgICAgICBpZiAoKHMgPT09ICctLS0nIHx8IHMgPT09ICcuLi4nKSAmJiBpc0VtcHR5KHRoaXMuY2hhckF0KDMpKSkge1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudFZhbHVlID0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSAwO1xuICAgICAgICAgICAgICAgIHJldHVybiBzID09PSAnLS0tJyA/ICdkb2MnIDogJ3N0cmVhbSc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pbmRlbnRWYWx1ZSA9IHlpZWxkKiB0aGlzLnB1c2hTcGFjZXMoZmFsc2UpO1xuICAgICAgICBpZiAodGhpcy5pbmRlbnROZXh0ID4gdGhpcy5pbmRlbnRWYWx1ZSAmJiAhaXNFbXB0eSh0aGlzLmNoYXJBdCgxKSkpXG4gICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSB0aGlzLmluZGVudFZhbHVlO1xuICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VCbG9ja1N0YXJ0KCk7XG4gICAgfVxuICAgICpwYXJzZUJsb2NrU3RhcnQoKSB7XG4gICAgICAgIGNvbnN0IFtjaDAsIGNoMV0gPSB0aGlzLnBlZWsoMik7XG4gICAgICAgIGlmICghY2gxICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnYmxvY2stc3RhcnQnKTtcbiAgICAgICAgaWYgKChjaDAgPT09ICctJyB8fCBjaDAgPT09ICc/JyB8fCBjaDAgPT09ICc6JykgJiYgaXNFbXB0eShjaDEpKSB7XG4gICAgICAgICAgICBjb25zdCBuID0gKHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKSkgKyAoeWllbGQqIHRoaXMucHVzaFNwYWNlcyh0cnVlKSk7XG4gICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSB0aGlzLmluZGVudFZhbHVlICsgMTtcbiAgICAgICAgICAgIHRoaXMuaW5kZW50VmFsdWUgKz0gbjtcbiAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUJsb2NrU3RhcnQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJ2RvYyc7XG4gICAgfVxuICAgICpwYXJzZURvY3VtZW50KCkge1xuICAgICAgICB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICBjb25zdCBsaW5lID0gdGhpcy5nZXRMaW5lKCk7XG4gICAgICAgIGlmIChsaW5lID09PSBudWxsKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnZG9jJyk7XG4gICAgICAgIGxldCBuID0geWllbGQqIHRoaXMucHVzaEluZGljYXRvcnMoKTtcbiAgICAgICAgc3dpdGNoIChsaW5lW25dKSB7XG4gICAgICAgICAgICBjYXNlICcjJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQobGluZS5sZW5ndGggLSBuKTtcbiAgICAgICAgICAgIC8vIGZhbGx0aHJvdWdoXG4gICAgICAgICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoTmV3bGluZSgpO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgICAgICAgICAgY2FzZSAneyc6XG4gICAgICAgICAgICBjYXNlICdbJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbG93S2V5ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5mbG93TGV2ZWwgPSAxO1xuICAgICAgICAgICAgICAgIHJldHVybiAnZmxvdyc7XG4gICAgICAgICAgICBjYXNlICd9JzpcbiAgICAgICAgICAgIGNhc2UgJ10nOlxuICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgYW4gZXJyb3JcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuICdkb2MnO1xuICAgICAgICAgICAgY2FzZSAnKic6XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucHVzaFVudGlsKGlzTm90QW5jaG9yQ2hhcik7XG4gICAgICAgICAgICAgICAgcmV0dXJuICdkb2MnO1xuICAgICAgICAgICAgY2FzZSAnXCInOlxuICAgICAgICAgICAgY2FzZSBcIidcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucGFyc2VRdW90ZWRTY2FsYXIoKTtcbiAgICAgICAgICAgIGNhc2UgJ3wnOlxuICAgICAgICAgICAgY2FzZSAnPic6XG4gICAgICAgICAgICAgICAgbiArPSB5aWVsZCogdGhpcy5wYXJzZUJsb2NrU2NhbGFySGVhZGVyKCk7XG4gICAgICAgICAgICAgICAgbiArPSB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudChsaW5lLmxlbmd0aCAtIG4pO1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hOZXdsaW5lKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlQmxvY2tTY2FsYXIoKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnBhcnNlUGxhaW5TY2FsYXIoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqcGFyc2VGbG93Q29sbGVjdGlvbigpIHtcbiAgICAgICAgbGV0IG5sLCBzcDtcbiAgICAgICAgbGV0IGluZGVudCA9IC0xO1xuICAgICAgICBkbyB7XG4gICAgICAgICAgICBubCA9IHlpZWxkKiB0aGlzLnB1c2hOZXdsaW5lKCk7XG4gICAgICAgICAgICBpZiAobmwgPiAwKSB7XG4gICAgICAgICAgICAgICAgc3AgPSB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKGZhbHNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudFZhbHVlID0gaW5kZW50ID0gc3A7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBzcCA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcCArPSB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICB9IHdoaWxlIChubCArIHNwID4gMCk7XG4gICAgICAgIGNvbnN0IGxpbmUgPSB0aGlzLmdldExpbmUoKTtcbiAgICAgICAgaWYgKGxpbmUgPT09IG51bGwpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXROZXh0KCdmbG93Jyk7XG4gICAgICAgIGlmICgoaW5kZW50ICE9PSAtMSAmJiBpbmRlbnQgPCB0aGlzLmluZGVudE5leHQgJiYgbGluZVswXSAhPT0gJyMnKSB8fFxuICAgICAgICAgICAgKGluZGVudCA9PT0gMCAmJlxuICAgICAgICAgICAgICAgIChsaW5lLnN0YXJ0c1dpdGgoJy0tLScpIHx8IGxpbmUuc3RhcnRzV2l0aCgnLi4uJykpICYmXG4gICAgICAgICAgICAgICAgaXNFbXB0eShsaW5lWzNdKSkpIHtcbiAgICAgICAgICAgIC8vIEFsbG93aW5nIGZvciB0aGUgdGVybWluYWwgXSBvciB9IGF0IHRoZSBzYW1lIChyYXRoZXIgdGhhbiBncmVhdGVyKVxuICAgICAgICAgICAgLy8gaW5kZW50IGxldmVsIGFzIHRoZSBpbml0aWFsIFsgb3IgeyBpcyB0ZWNobmljYWxseSBpbnZhbGlkLCBidXRcbiAgICAgICAgICAgIC8vIGZhaWxpbmcgaGVyZSB3b3VsZCBiZSBzdXJwcmlzaW5nIHRvIHVzZXJzLlxuICAgICAgICAgICAgY29uc3QgYXRGbG93RW5kTWFya2VyID0gaW5kZW50ID09PSB0aGlzLmluZGVudE5leHQgLSAxICYmXG4gICAgICAgICAgICAgICAgdGhpcy5mbG93TGV2ZWwgPT09IDEgJiZcbiAgICAgICAgICAgICAgICAobGluZVswXSA9PT0gJ10nIHx8IGxpbmVbMF0gPT09ICd9Jyk7XG4gICAgICAgICAgICBpZiAoIWF0Rmxvd0VuZE1hcmtlcikge1xuICAgICAgICAgICAgICAgIC8vIHRoaXMgaXMgYW4gZXJyb3JcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dMZXZlbCA9IDA7XG4gICAgICAgICAgICAgICAgeWllbGQgY3N0LkZMT1dfRU5EO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxldCBuID0gMDtcbiAgICAgICAgd2hpbGUgKGxpbmVbbl0gPT09ICcsJykge1xuICAgICAgICAgICAgbiArPSB5aWVsZCogdGhpcy5wdXNoQ291bnQoMSk7XG4gICAgICAgICAgICBuICs9IHlpZWxkKiB0aGlzLnB1c2hTcGFjZXModHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBuICs9IHlpZWxkKiB0aGlzLnB1c2hJbmRpY2F0b3JzKCk7XG4gICAgICAgIHN3aXRjaCAobGluZVtuXSkge1xuICAgICAgICAgICAgY2FzZSB1bmRlZmluZWQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdmbG93JztcbiAgICAgICAgICAgIGNhc2UgJyMnOlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudChsaW5lLmxlbmd0aCAtIG4pO1xuICAgICAgICAgICAgICAgIHJldHVybiAnZmxvdyc7XG4gICAgICAgICAgICBjYXNlICd7JzpcbiAgICAgICAgICAgIGNhc2UgJ1snOlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dMZXZlbCArPSAxO1xuICAgICAgICAgICAgICAgIHJldHVybiAnZmxvdyc7XG4gICAgICAgICAgICBjYXNlICd9JzpcbiAgICAgICAgICAgIGNhc2UgJ10nOlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKTtcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuZmxvd0xldmVsIC09IDE7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmxvd0xldmVsID8gJ2Zsb3cnIDogJ2RvYyc7XG4gICAgICAgICAgICBjYXNlICcqJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoVW50aWwoaXNOb3RBbmNob3JDaGFyKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2Zsb3cnO1xuICAgICAgICAgICAgY2FzZSAnXCInOlxuICAgICAgICAgICAgY2FzZSBcIidcIjpcbiAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZVF1b3RlZFNjYWxhcigpO1xuICAgICAgICAgICAgY2FzZSAnOic6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXh0ID0gdGhpcy5jaGFyQXQoMSk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZmxvd0tleSB8fCBpc0VtcHR5KG5leHQpIHx8IG5leHQgPT09ICcsJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucHVzaENvdW50KDEpO1xuICAgICAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ2Zsb3cnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIGZhbGx0aHJvdWdoXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRoaXMuZmxvd0tleSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZVBsYWluU2NhbGFyKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgKnBhcnNlUXVvdGVkU2NhbGFyKCkge1xuICAgICAgICBjb25zdCBxdW90ZSA9IHRoaXMuY2hhckF0KDApO1xuICAgICAgICBsZXQgZW5kID0gdGhpcy5idWZmZXIuaW5kZXhPZihxdW90ZSwgdGhpcy5wb3MgKyAxKTtcbiAgICAgICAgaWYgKHF1b3RlID09PSBcIidcIikge1xuICAgICAgICAgICAgd2hpbGUgKGVuZCAhPT0gLTEgJiYgdGhpcy5idWZmZXJbZW5kICsgMV0gPT09IFwiJ1wiKVxuICAgICAgICAgICAgICAgIGVuZCA9IHRoaXMuYnVmZmVyLmluZGV4T2YoXCInXCIsIGVuZCArIDIpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gZG91YmxlLXF1b3RlXG4gICAgICAgICAgICB3aGlsZSAoZW5kICE9PSAtMSkge1xuICAgICAgICAgICAgICAgIGxldCBuID0gMDtcbiAgICAgICAgICAgICAgICB3aGlsZSAodGhpcy5idWZmZXJbZW5kIC0gMSAtIG5dID09PSAnXFxcXCcpXG4gICAgICAgICAgICAgICAgICAgIG4gKz0gMTtcbiAgICAgICAgICAgICAgICBpZiAobiAlIDIgPT09IDApXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGVuZCA9IHRoaXMuYnVmZmVyLmluZGV4T2YoJ1wiJywgZW5kICsgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gT25seSBsb29raW5nIGZvciBuZXdsaW5lcyB3aXRoaW4gdGhlIHF1b3Rlc1xuICAgICAgICBjb25zdCBxYiA9IHRoaXMuYnVmZmVyLnN1YnN0cmluZygwLCBlbmQpO1xuICAgICAgICBsZXQgbmwgPSBxYi5pbmRleE9mKCdcXG4nLCB0aGlzLnBvcyk7XG4gICAgICAgIGlmIChubCAhPT0gLTEpIHtcbiAgICAgICAgICAgIHdoaWxlIChubCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjcyA9IHRoaXMuY29udGludWVTY2FsYXIobmwgKyAxKTtcbiAgICAgICAgICAgICAgICBpZiAoY3MgPT09IC0xKVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBubCA9IHFiLmluZGV4T2YoJ1xcbicsIGNzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChubCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAvLyB0aGlzIGlzIGFuIGVycm9yIGNhdXNlZCBieSBhbiB1bmV4cGVjdGVkIHVuaW5kZW50XG4gICAgICAgICAgICAgICAgZW5kID0gbmwgLSAocWJbbmwgLSAxXSA9PT0gJ1xccicgPyAyIDogMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGVuZCA9PT0gLTEpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5hdEVuZClcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zZXROZXh0KCdxdW90ZWQtc2NhbGFyJyk7XG4gICAgICAgICAgICBlbmQgPSB0aGlzLmJ1ZmZlci5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgeWllbGQqIHRoaXMucHVzaFRvSW5kZXgoZW5kICsgMSwgZmFsc2UpO1xuICAgICAgICByZXR1cm4gdGhpcy5mbG93TGV2ZWwgPyAnZmxvdycgOiAnZG9jJztcbiAgICB9XG4gICAgKnBhcnNlQmxvY2tTY2FsYXJIZWFkZXIoKSB7XG4gICAgICAgIHRoaXMuYmxvY2tTY2FsYXJJbmRlbnQgPSAtMTtcbiAgICAgICAgdGhpcy5ibG9ja1NjYWxhcktlZXAgPSBmYWxzZTtcbiAgICAgICAgbGV0IGkgPSB0aGlzLnBvcztcbiAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgIGNvbnN0IGNoID0gdGhpcy5idWZmZXJbKytpXTtcbiAgICAgICAgICAgIGlmIChjaCA9PT0gJysnKVxuICAgICAgICAgICAgICAgIHRoaXMuYmxvY2tTY2FsYXJLZWVwID0gdHJ1ZTtcbiAgICAgICAgICAgIGVsc2UgaWYgKGNoID4gJzAnICYmIGNoIDw9ICc5JylcbiAgICAgICAgICAgICAgICB0aGlzLmJsb2NrU2NhbGFySW5kZW50ID0gTnVtYmVyKGNoKSAtIDE7XG4gICAgICAgICAgICBlbHNlIGlmIChjaCAhPT0gJy0nKVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wdXNoVW50aWwoY2ggPT4gaXNFbXB0eShjaCkgfHwgY2ggPT09ICcjJyk7XG4gICAgfVxuICAgICpwYXJzZUJsb2NrU2NhbGFyKCkge1xuICAgICAgICBsZXQgbmwgPSB0aGlzLnBvcyAtIDE7IC8vIG1heSBiZSAtMSBpZiB0aGlzLnBvcyA9PT0gMFxuICAgICAgICBsZXQgaW5kZW50ID0gMDtcbiAgICAgICAgbGV0IGNoO1xuICAgICAgICBsb29wOiBmb3IgKGxldCBpID0gdGhpcy5wb3M7IChjaCA9IHRoaXMuYnVmZmVyW2ldKTsgKytpKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGNoKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnICc6XG4gICAgICAgICAgICAgICAgICAgIGluZGVudCArPSAxO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdcXG4nOlxuICAgICAgICAgICAgICAgICAgICBubCA9IGk7XG4gICAgICAgICAgICAgICAgICAgIGluZGVudCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ1xccic6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuYnVmZmVyW2kgKyAxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFuZXh0ICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgnYmxvY2stc2NhbGFyJyk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChuZXh0ID09PSAnXFxuJylcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH0gLy8gZmFsbHRocm91Z2hcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBicmVhayBsb29wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghY2ggJiYgIXRoaXMuYXRFbmQpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXROZXh0KCdibG9jay1zY2FsYXInKTtcbiAgICAgICAgaWYgKGluZGVudCA+PSB0aGlzLmluZGVudE5leHQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmJsb2NrU2NhbGFySW5kZW50ID09PSAtMSlcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPSBpbmRlbnQ7XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudE5leHQgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmJsb2NrU2NhbGFySW5kZW50ICsgKHRoaXMuaW5kZW50TmV4dCA9PT0gMCA/IDEgOiB0aGlzLmluZGVudE5leHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZG8ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNzID0gdGhpcy5jb250aW51ZVNjYWxhcihubCArIDEpO1xuICAgICAgICAgICAgICAgIGlmIChjcyA9PT0gLTEpXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIG5sID0gdGhpcy5idWZmZXIuaW5kZXhPZignXFxuJywgY3MpO1xuICAgICAgICAgICAgfSB3aGlsZSAobmwgIT09IC0xKTtcbiAgICAgICAgICAgIGlmIChubCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuYXRFbmQpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNldE5leHQoJ2Jsb2NrLXNjYWxhcicpO1xuICAgICAgICAgICAgICAgIG5sID0gdGhpcy5idWZmZXIubGVuZ3RoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIFRyYWlsaW5nIGluc3VmZmljaWVudGx5IGluZGVudGVkIHRhYnMgYXJlIGludmFsaWQuXG4gICAgICAgIC8vIFRvIGNhdGNoIHRoYXQgZHVyaW5nIHBhcnNpbmcsIHdlIGluY2x1ZGUgdGhlbSBpbiB0aGUgYmxvY2sgc2NhbGFyIHZhbHVlLlxuICAgICAgICBsZXQgaSA9IG5sICsgMTtcbiAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlcltpXTtcbiAgICAgICAgd2hpbGUgKGNoID09PSAnICcpXG4gICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgIGlmIChjaCA9PT0gJ1xcdCcpIHtcbiAgICAgICAgICAgIHdoaWxlIChjaCA9PT0gJ1xcdCcgfHwgY2ggPT09ICcgJyB8fCBjaCA9PT0gJ1xccicgfHwgY2ggPT09ICdcXG4nKVxuICAgICAgICAgICAgICAgIGNoID0gdGhpcy5idWZmZXJbKytpXTtcbiAgICAgICAgICAgIG5sID0gaSAtIDE7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoIXRoaXMuYmxvY2tTY2FsYXJLZWVwKSB7XG4gICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgICAgbGV0IGkgPSBubCAtIDE7XG4gICAgICAgICAgICAgICAgbGV0IGNoID0gdGhpcy5idWZmZXJbaV07XG4gICAgICAgICAgICAgICAgaWYgKGNoID09PSAnXFxyJylcbiAgICAgICAgICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclstLWldO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhc3RDaGFyID0gaTsgLy8gRHJvcCB0aGUgbGluZSBpZiBsYXN0IGNoYXIgbm90IG1vcmUgaW5kZW50ZWRcbiAgICAgICAgICAgICAgICB3aGlsZSAoY2ggPT09ICcgJylcbiAgICAgICAgICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclstLWldO1xuICAgICAgICAgICAgICAgIGlmIChjaCA9PT0gJ1xcbicgJiYgaSA+PSB0aGlzLnBvcyAmJiBpICsgMSArIGluZGVudCA+IGxhc3RDaGFyKVxuICAgICAgICAgICAgICAgICAgICBubCA9IGk7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH0gd2hpbGUgKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHlpZWxkIGNzdC5TQ0FMQVI7XG4gICAgICAgIHlpZWxkKiB0aGlzLnB1c2hUb0luZGV4KG5sICsgMSwgdHJ1ZSk7XG4gICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wYXJzZUxpbmVTdGFydCgpO1xuICAgIH1cbiAgICAqcGFyc2VQbGFpblNjYWxhcigpIHtcbiAgICAgICAgY29uc3QgaW5GbG93ID0gdGhpcy5mbG93TGV2ZWwgPiAwO1xuICAgICAgICBsZXQgZW5kID0gdGhpcy5wb3MgLSAxO1xuICAgICAgICBsZXQgaSA9IHRoaXMucG9zIC0gMTtcbiAgICAgICAgbGV0IGNoO1xuICAgICAgICB3aGlsZSAoKGNoID0gdGhpcy5idWZmZXJbKytpXSkpIHtcbiAgICAgICAgICAgIGlmIChjaCA9PT0gJzonKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuYnVmZmVyW2kgKyAxXTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFbXB0eShuZXh0KSB8fCAoaW5GbG93ICYmIGZsb3dJbmRpY2F0b3JDaGFycy5oYXMobmV4dCkpKVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBlbmQgPSBpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoaXNFbXB0eShjaCkpIHtcbiAgICAgICAgICAgICAgICBsZXQgbmV4dCA9IHRoaXMuYnVmZmVyW2kgKyAxXTtcbiAgICAgICAgICAgICAgICBpZiAoY2ggPT09ICdcXHInKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChuZXh0ID09PSAnXFxuJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2ggPSAnXFxuJztcbiAgICAgICAgICAgICAgICAgICAgICAgIG5leHQgPSB0aGlzLmJ1ZmZlcltpICsgMV07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgZW5kID0gaTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG5leHQgPT09ICcjJyB8fCAoaW5GbG93ICYmIGZsb3dJbmRpY2F0b3JDaGFycy5oYXMobmV4dCkpKVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBpZiAoY2ggPT09ICdcXG4nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNzID0gdGhpcy5jb250aW51ZVNjYWxhcihpICsgMSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjcyA9PT0gLTEpXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgaSA9IE1hdGgubWF4KGksIGNzIC0gMik7IC8vIHRvIGFkdmFuY2UsIGJ1dCBzdGlsbCBhY2NvdW50IGZvciAnICMnXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKGluRmxvdyAmJiBmbG93SW5kaWNhdG9yQ2hhcnMuaGFzKGNoKSlcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZW5kID0gaTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIWNoICYmICF0aGlzLmF0RW5kKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0TmV4dCgncGxhaW4tc2NhbGFyJyk7XG4gICAgICAgIHlpZWxkIGNzdC5TQ0FMQVI7XG4gICAgICAgIHlpZWxkKiB0aGlzLnB1c2hUb0luZGV4KGVuZCArIDEsIHRydWUpO1xuICAgICAgICByZXR1cm4gaW5GbG93ID8gJ2Zsb3cnIDogJ2RvYyc7XG4gICAgfVxuICAgICpwdXNoQ291bnQobikge1xuICAgICAgICBpZiAobiA+IDApIHtcbiAgICAgICAgICAgIHlpZWxkIHRoaXMuYnVmZmVyLnN1YnN0cih0aGlzLnBvcywgbik7XG4gICAgICAgICAgICB0aGlzLnBvcyArPSBuO1xuICAgICAgICAgICAgcmV0dXJuIG47XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgICpwdXNoVG9JbmRleChpLCBhbGxvd0VtcHR5KSB7XG4gICAgICAgIGNvbnN0IHMgPSB0aGlzLmJ1ZmZlci5zbGljZSh0aGlzLnBvcywgaSk7XG4gICAgICAgIGlmIChzKSB7XG4gICAgICAgICAgICB5aWVsZCBzO1xuICAgICAgICAgICAgdGhpcy5wb3MgKz0gcy5sZW5ndGg7XG4gICAgICAgICAgICByZXR1cm4gcy5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoYWxsb3dFbXB0eSlcbiAgICAgICAgICAgIHlpZWxkICcnO1xuICAgICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgKnB1c2hJbmRpY2F0b3JzKCkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMuY2hhckF0KDApKSB7XG4gICAgICAgICAgICBjYXNlICchJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gKCh5aWVsZCogdGhpcy5wdXNoVGFnKCkpICtcbiAgICAgICAgICAgICAgICAgICAgKHlpZWxkKiB0aGlzLnB1c2hTcGFjZXModHJ1ZSkpICtcbiAgICAgICAgICAgICAgICAgICAgKHlpZWxkKiB0aGlzLnB1c2hJbmRpY2F0b3JzKCkpKTtcbiAgICAgICAgICAgIGNhc2UgJyYnOlxuICAgICAgICAgICAgICAgIHJldHVybiAoKHlpZWxkKiB0aGlzLnB1c2hVbnRpbChpc05vdEFuY2hvckNoYXIpKSArXG4gICAgICAgICAgICAgICAgICAgICh5aWVsZCogdGhpcy5wdXNoU3BhY2VzKHRydWUpKSArXG4gICAgICAgICAgICAgICAgICAgICh5aWVsZCogdGhpcy5wdXNoSW5kaWNhdG9ycygpKSk7XG4gICAgICAgICAgICBjYXNlICctJzogLy8gdGhpcyBpcyBhbiBlcnJvclxuICAgICAgICAgICAgY2FzZSAnPyc6IC8vIHRoaXMgaXMgYW4gZXJyb3Igb3V0c2lkZSBmbG93IGNvbGxlY3Rpb25zXG4gICAgICAgICAgICBjYXNlICc6Jzoge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluRmxvdyA9IHRoaXMuZmxvd0xldmVsID4gMDtcbiAgICAgICAgICAgICAgICBjb25zdCBjaDEgPSB0aGlzLmNoYXJBdCgxKTtcbiAgICAgICAgICAgICAgICBpZiAoaXNFbXB0eShjaDEpIHx8IChpbkZsb3cgJiYgZmxvd0luZGljYXRvckNoYXJzLmhhcyhjaDEpKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWluRmxvdylcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5kZW50TmV4dCA9IHRoaXMuaW5kZW50VmFsdWUgKyAxO1xuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh0aGlzLmZsb3dLZXkpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZsb3dLZXkgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgoeWllbGQqIHRoaXMucHVzaENvdW50KDEpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAoeWllbGQqIHRoaXMucHVzaFNwYWNlcyh0cnVlKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgKHlpZWxkKiB0aGlzLnB1c2hJbmRpY2F0b3JzKCkpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgICpwdXNoVGFnKCkge1xuICAgICAgICBpZiAodGhpcy5jaGFyQXQoMSkgPT09ICc8Jykge1xuICAgICAgICAgICAgbGV0IGkgPSB0aGlzLnBvcyArIDI7XG4gICAgICAgICAgICBsZXQgY2ggPSB0aGlzLmJ1ZmZlcltpXTtcbiAgICAgICAgICAgIHdoaWxlICghaXNFbXB0eShjaCkgJiYgY2ggIT09ICc+JylcbiAgICAgICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucHVzaFRvSW5kZXgoY2ggPT09ICc+JyA/IGkgKyAxIDogaSwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbGV0IGkgPSB0aGlzLnBvcyArIDE7XG4gICAgICAgICAgICBsZXQgY2ggPSB0aGlzLmJ1ZmZlcltpXTtcbiAgICAgICAgICAgIHdoaWxlIChjaCkge1xuICAgICAgICAgICAgICAgIGlmICh0YWdDaGFycy5oYXMoY2gpKVxuICAgICAgICAgICAgICAgICAgICBjaCA9IHRoaXMuYnVmZmVyWysraV07XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2ggPT09ICclJyAmJlxuICAgICAgICAgICAgICAgICAgICBoZXhEaWdpdHMuaGFzKHRoaXMuYnVmZmVyW2kgKyAxXSkgJiZcbiAgICAgICAgICAgICAgICAgICAgaGV4RGlnaXRzLmhhcyh0aGlzLmJ1ZmZlcltpICsgMl0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGNoID0gdGhpcy5idWZmZXJbKGkgKz0gMyldO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnB1c2hUb0luZGV4KGksIGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqcHVzaE5ld2xpbmUoKSB7XG4gICAgICAgIGNvbnN0IGNoID0gdGhpcy5idWZmZXJbdGhpcy5wb3NdO1xuICAgICAgICBpZiAoY2ggPT09ICdcXG4nKVxuICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnB1c2hDb3VudCgxKTtcbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICdcXHInICYmIHRoaXMuY2hhckF0KDEpID09PSAnXFxuJylcbiAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5wdXNoQ291bnQoMik7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICAqcHVzaFNwYWNlcyhhbGxvd1RhYnMpIHtcbiAgICAgICAgbGV0IGkgPSB0aGlzLnBvcyAtIDE7XG4gICAgICAgIGxldCBjaDtcbiAgICAgICAgZG8ge1xuICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclsrK2ldO1xuICAgICAgICB9IHdoaWxlIChjaCA9PT0gJyAnIHx8IChhbGxvd1RhYnMgJiYgY2ggPT09ICdcXHQnKSk7XG4gICAgICAgIGNvbnN0IG4gPSBpIC0gdGhpcy5wb3M7XG4gICAgICAgIGlmIChuID4gMCkge1xuICAgICAgICAgICAgeWllbGQgdGhpcy5idWZmZXIuc3Vic3RyKHRoaXMucG9zLCBuKTtcbiAgICAgICAgICAgIHRoaXMucG9zID0gaTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbjtcbiAgICB9XG4gICAgKnB1c2hVbnRpbCh0ZXN0KSB7XG4gICAgICAgIGxldCBpID0gdGhpcy5wb3M7XG4gICAgICAgIGxldCBjaCA9IHRoaXMuYnVmZmVyW2ldO1xuICAgICAgICB3aGlsZSAoIXRlc3QoY2gpKVxuICAgICAgICAgICAgY2ggPSB0aGlzLmJ1ZmZlclsrK2ldO1xuICAgICAgICByZXR1cm4geWllbGQqIHRoaXMucHVzaFRvSW5kZXgoaSwgZmFsc2UpO1xuICAgIH1cbn1cblxuZXhwb3J0cy5MZXhlciA9IExleGVyO1xuIiwgIid1c2Ugc3RyaWN0JztcblxuLyoqXG4gKiBUcmFja3MgbmV3bGluZXMgZHVyaW5nIHBhcnNpbmcgaW4gb3JkZXIgdG8gcHJvdmlkZSBhbiBlZmZpY2llbnQgQVBJIGZvclxuICogZGV0ZXJtaW5pbmcgdGhlIG9uZS1pbmRleGVkIGB7IGxpbmUsIGNvbCB9YCBwb3NpdGlvbiBmb3IgYW55IG9mZnNldFxuICogd2l0aGluIHRoZSBpbnB1dC5cbiAqL1xuY2xhc3MgTGluZUNvdW50ZXIge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmxpbmVTdGFydHMgPSBbXTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFNob3VsZCBiZSBjYWxsZWQgaW4gYXNjZW5kaW5nIG9yZGVyLiBPdGhlcndpc2UsIGNhbGxcbiAgICAgICAgICogYGxpbmVDb3VudGVyLmxpbmVTdGFydHMuc29ydCgpYCBiZWZvcmUgY2FsbGluZyBgbGluZVBvcygpYC5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuYWRkTmV3TGluZSA9IChvZmZzZXQpID0+IHRoaXMubGluZVN0YXJ0cy5wdXNoKG9mZnNldCk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBQZXJmb3JtcyBhIGJpbmFyeSBzZWFyY2ggYW5kIHJldHVybnMgdGhlIDEtaW5kZXhlZCB7IGxpbmUsIGNvbCB9XG4gICAgICAgICAqIHBvc2l0aW9uIG9mIGBvZmZzZXRgLiBJZiBgbGluZSA9PT0gMGAsIGBhZGROZXdMaW5lYCBoYXMgbmV2ZXIgYmVlblxuICAgICAgICAgKiBjYWxsZWQgb3IgYG9mZnNldGAgaXMgYmVmb3JlIHRoZSBmaXJzdCBrbm93biBuZXdsaW5lLlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5saW5lUG9zID0gKG9mZnNldCkgPT4ge1xuICAgICAgICAgICAgbGV0IGxvdyA9IDA7XG4gICAgICAgICAgICBsZXQgaGlnaCA9IHRoaXMubGluZVN0YXJ0cy5sZW5ndGg7XG4gICAgICAgICAgICB3aGlsZSAobG93IDwgaGlnaCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1pZCA9IChsb3cgKyBoaWdoKSA+PiAxOyAvLyBNYXRoLmZsb29yKChsb3cgKyBoaWdoKSAvIDIpXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubGluZVN0YXJ0c1ttaWRdIDwgb2Zmc2V0KVxuICAgICAgICAgICAgICAgICAgICBsb3cgPSBtaWQgKyAxO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgaGlnaCA9IG1pZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmxpbmVTdGFydHNbbG93XSA9PT0gb2Zmc2V0KVxuICAgICAgICAgICAgICAgIHJldHVybiB7IGxpbmU6IGxvdyArIDEsIGNvbDogMSB9O1xuICAgICAgICAgICAgaWYgKGxvdyA9PT0gMClcbiAgICAgICAgICAgICAgICByZXR1cm4geyBsaW5lOiAwLCBjb2w6IG9mZnNldCB9O1xuICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSB0aGlzLmxpbmVTdGFydHNbbG93IC0gMV07XG4gICAgICAgICAgICByZXR1cm4geyBsaW5lOiBsb3csIGNvbDogb2Zmc2V0IC0gc3RhcnQgKyAxIH07XG4gICAgICAgIH07XG4gICAgfVxufVxuXG5leHBvcnRzLkxpbmVDb3VudGVyID0gTGluZUNvdW50ZXI7XG4iLCAiJ3VzZSBzdHJpY3QnO1xuXG52YXIgbm9kZV9wcm9jZXNzID0gcmVxdWlyZSgncHJvY2VzcycpO1xudmFyIGNzdCA9IHJlcXVpcmUoJy4vY3N0LmpzJyk7XG52YXIgbGV4ZXIgPSByZXF1aXJlKCcuL2xleGVyLmpzJyk7XG5cbmZ1bmN0aW9uIGluY2x1ZGVzVG9rZW4obGlzdCwgdHlwZSkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7ICsraSlcbiAgICAgICAgaWYgKGxpc3RbaV0udHlwZSA9PT0gdHlwZSlcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgIHJldHVybiBmYWxzZTtcbn1cbmZ1bmN0aW9uIGZpbmROb25FbXB0eUluZGV4KGxpc3QpIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgc3dpdGNoIChsaXN0W2ldLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NwYWNlJzpcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiAtMTtcbn1cbmZ1bmN0aW9uIGlzRmxvd1Rva2VuKHRva2VuKSB7XG4gICAgc3dpdGNoICh0b2tlbj8udHlwZSkge1xuICAgICAgICBjYXNlICdhbGlhcyc6XG4gICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgY2FzZSAnZG91YmxlLXF1b3RlZC1zY2FsYXInOlxuICAgICAgICBjYXNlICdmbG93LWNvbGxlY3Rpb24nOlxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2V0UHJldlByb3BzKHBhcmVudCkge1xuICAgIHN3aXRjaCAocGFyZW50LnR5cGUpIHtcbiAgICAgICAgY2FzZSAnZG9jdW1lbnQnOlxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudC5zdGFydDtcbiAgICAgICAgY2FzZSAnYmxvY2stbWFwJzoge1xuICAgICAgICAgICAgY29uc3QgaXQgPSBwYXJlbnQuaXRlbXNbcGFyZW50Lml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgcmV0dXJuIGl0LnNlcCA/PyBpdC5zdGFydDtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdibG9jay1zZXEnOlxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudC5pdGVtc1twYXJlbnQuaXRlbXMubGVuZ3RoIC0gMV0uc3RhcnQ7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgfVxufVxuLyoqIE5vdGU6IE1heSBtb2RpZnkgaW5wdXQgYXJyYXkgKi9cbmZ1bmN0aW9uIGdldEZpcnN0S2V5U3RhcnRQcm9wcyhwcmV2KSB7XG4gICAgaWYgKHByZXYubGVuZ3RoID09PSAwKVxuICAgICAgICByZXR1cm4gW107XG4gICAgbGV0IGkgPSBwcmV2Lmxlbmd0aDtcbiAgICBsb29wOiB3aGlsZSAoLS1pID49IDApIHtcbiAgICAgICAgc3dpdGNoIChwcmV2W2ldLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1zdGFydCc6XG4gICAgICAgICAgICBjYXNlICdleHBsaWNpdC1rZXktaW5kJzpcbiAgICAgICAgICAgIGNhc2UgJ21hcC12YWx1ZS1pbmQnOlxuICAgICAgICAgICAgY2FzZSAnc2VxLWl0ZW0taW5kJzpcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIGJyZWFrIGxvb3A7XG4gICAgICAgIH1cbiAgICB9XG4gICAgd2hpbGUgKHByZXZbKytpXT8udHlwZSA9PT0gJ3NwYWNlJykge1xuICAgICAgICAvKiBsb29wICovXG4gICAgfVxuICAgIHJldHVybiBwcmV2LnNwbGljZShpLCBwcmV2Lmxlbmd0aCk7XG59XG5mdW5jdGlvbiBmaXhGbG93U2VxSXRlbXMoZmMpIHtcbiAgICBpZiAoZmMuc3RhcnQudHlwZSA9PT0gJ2Zsb3ctc2VxLXN0YXJ0Jykge1xuICAgICAgICBmb3IgKGNvbnN0IGl0IG9mIGZjLml0ZW1zKSB7XG4gICAgICAgICAgICBpZiAoaXQuc2VwICYmXG4gICAgICAgICAgICAgICAgIWl0LnZhbHVlICYmXG4gICAgICAgICAgICAgICAgIWluY2x1ZGVzVG9rZW4oaXQuc3RhcnQsICdleHBsaWNpdC1rZXktaW5kJykgJiZcbiAgICAgICAgICAgICAgICAhaW5jbHVkZXNUb2tlbihpdC5zZXAsICdtYXAtdmFsdWUtaW5kJykpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXQua2V5KVxuICAgICAgICAgICAgICAgICAgICBpdC52YWx1ZSA9IGl0LmtleTtcbiAgICAgICAgICAgICAgICBkZWxldGUgaXQua2V5O1xuICAgICAgICAgICAgICAgIGlmIChpc0Zsb3dUb2tlbihpdC52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlLmVuZClcbiAgICAgICAgICAgICAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KGl0LnZhbHVlLmVuZCwgaXQuc2VwKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgaXQudmFsdWUuZW5kID0gaXQuc2VwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KGl0LnN0YXJ0LCBpdC5zZXApO1xuICAgICAgICAgICAgICAgIGRlbGV0ZSBpdC5zZXA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIEEgWUFNTCBjb25jcmV0ZSBzeW50YXggdHJlZSAoQ1NUKSBwYXJzZXJcbiAqXG4gKiBgYGB0c1xuICogY29uc3Qgc3JjOiBzdHJpbmcgPSAuLi5cbiAqIGZvciAoY29uc3QgdG9rZW4gb2YgbmV3IFBhcnNlcigpLnBhcnNlKHNyYykpIHtcbiAqICAgLy8gdG9rZW46IFRva2VuXG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBUbyB1c2UgdGhlIHBhcnNlciB3aXRoIGEgdXNlci1wcm92aWRlZCBsZXhlcjpcbiAqXG4gKiBgYGB0c1xuICogZnVuY3Rpb24qIHBhcnNlKHNvdXJjZTogc3RyaW5nLCBsZXhlcjogTGV4ZXIpIHtcbiAqICAgY29uc3QgcGFyc2VyID0gbmV3IFBhcnNlcigpXG4gKiAgIGZvciAoY29uc3QgbGV4ZW1lIG9mIGxleGVyLmxleChzb3VyY2UpKVxuICogICAgIHlpZWxkKiBwYXJzZXIubmV4dChsZXhlbWUpXG4gKiAgIHlpZWxkKiBwYXJzZXIuZW5kKClcbiAqIH1cbiAqXG4gKiBjb25zdCBzcmM6IHN0cmluZyA9IC4uLlxuICogY29uc3QgbGV4ZXIgPSBuZXcgTGV4ZXIoKVxuICogZm9yIChjb25zdCB0b2tlbiBvZiBwYXJzZShzcmMsIGxleGVyKSkge1xuICogICAvLyB0b2tlbjogVG9rZW5cbiAqIH1cbiAqIGBgYFxuICovXG5jbGFzcyBQYXJzZXIge1xuICAgIC8qKlxuICAgICAqIEBwYXJhbSBvbk5ld0xpbmUgLSBJZiBkZWZpbmVkLCBjYWxsZWQgc2VwYXJhdGVseSB3aXRoIHRoZSBzdGFydCBwb3NpdGlvbiBvZlxuICAgICAqICAgZWFjaCBuZXcgbGluZSAoaW4gYHBhcnNlKClgLCBpbmNsdWRpbmcgdGhlIHN0YXJ0IG9mIGlucHV0KS5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3Rvcihvbk5ld0xpbmUpIHtcbiAgICAgICAgLyoqIElmIHRydWUsIHNwYWNlIGFuZCBzZXF1ZW5jZSBpbmRpY2F0b3JzIGNvdW50IGFzIGluZGVudGF0aW9uICovXG4gICAgICAgIHRoaXMuYXROZXdMaW5lID0gdHJ1ZTtcbiAgICAgICAgLyoqIElmIHRydWUsIG5leHQgdG9rZW4gaXMgYSBzY2FsYXIgdmFsdWUgKi9cbiAgICAgICAgdGhpcy5hdFNjYWxhciA9IGZhbHNlO1xuICAgICAgICAvKiogQ3VycmVudCBpbmRlbnRhdGlvbiBsZXZlbCAqL1xuICAgICAgICB0aGlzLmluZGVudCA9IDA7XG4gICAgICAgIC8qKiBDdXJyZW50IG9mZnNldCBzaW5jZSB0aGUgc3RhcnQgb2YgcGFyc2luZyAqL1xuICAgICAgICB0aGlzLm9mZnNldCA9IDA7XG4gICAgICAgIC8qKiBPbiB0aGUgc2FtZSBsaW5lIHdpdGggYSBibG9jayBtYXAga2V5ICovXG4gICAgICAgIHRoaXMub25LZXlMaW5lID0gZmFsc2U7XG4gICAgICAgIC8qKiBUb3AgaW5kaWNhdGVzIHRoZSBub2RlIHRoYXQncyBjdXJyZW50bHkgYmVpbmcgYnVpbHQgKi9cbiAgICAgICAgdGhpcy5zdGFjayA9IFtdO1xuICAgICAgICAvKiogVGhlIHNvdXJjZSBvZiB0aGUgY3VycmVudCB0b2tlbiwgc2V0IGluIHBhcnNlKCkgKi9cbiAgICAgICAgdGhpcy5zb3VyY2UgPSAnJztcbiAgICAgICAgLyoqIFRoZSB0eXBlIG9mIHRoZSBjdXJyZW50IHRva2VuLCBzZXQgaW4gcGFyc2UoKSAqL1xuICAgICAgICB0aGlzLnR5cGUgPSAnJztcbiAgICAgICAgLy8gTXVzdCBiZSBkZWZpbmVkIGFmdGVyIGBuZXh0KClgXG4gICAgICAgIHRoaXMubGV4ZXIgPSBuZXcgbGV4ZXIuTGV4ZXIoKTtcbiAgICAgICAgdGhpcy5vbk5ld0xpbmUgPSBvbk5ld0xpbmU7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFBhcnNlIGBzb3VyY2VgIGFzIGEgWUFNTCBzdHJlYW0uXG4gICAgICogSWYgYGluY29tcGxldGVgLCBhIHBhcnQgb2YgdGhlIGxhc3QgbGluZSBtYXkgYmUgbGVmdCBhcyBhIGJ1ZmZlciBmb3IgdGhlIG5leHQgY2FsbC5cbiAgICAgKlxuICAgICAqIEVycm9ycyBhcmUgbm90IHRocm93biwgYnV0IHlpZWxkZWQgYXMgYHsgdHlwZTogJ2Vycm9yJywgbWVzc2FnZSB9YCB0b2tlbnMuXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBBIGdlbmVyYXRvciBvZiB0b2tlbnMgcmVwcmVzZW50aW5nIGVhY2ggZGlyZWN0aXZlLCBkb2N1bWVudCwgYW5kIG90aGVyIHN0cnVjdHVyZS5cbiAgICAgKi9cbiAgICAqcGFyc2Uoc291cmNlLCBpbmNvbXBsZXRlID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lICYmIHRoaXMub2Zmc2V0ID09PSAwKVxuICAgICAgICAgICAgdGhpcy5vbk5ld0xpbmUoMCk7XG4gICAgICAgIGZvciAoY29uc3QgbGV4ZW1lIG9mIHRoaXMubGV4ZXIubGV4KHNvdXJjZSwgaW5jb21wbGV0ZSkpXG4gICAgICAgICAgICB5aWVsZCogdGhpcy5uZXh0KGxleGVtZSk7XG4gICAgICAgIGlmICghaW5jb21wbGV0ZSlcbiAgICAgICAgICAgIHlpZWxkKiB0aGlzLmVuZCgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBZHZhbmNlIHRoZSBwYXJzZXIgYnkgdGhlIGBzb3VyY2VgIG9mIG9uZSBsZXhpY2FsIHRva2VuLlxuICAgICAqL1xuICAgICpuZXh0KHNvdXJjZSkge1xuICAgICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcbiAgICAgICAgaWYgKG5vZGVfcHJvY2Vzcy5lbnYuTE9HX1RPS0VOUylcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCd8JywgY3N0LnByZXR0eVRva2VuKHNvdXJjZSkpO1xuICAgICAgICBpZiAodGhpcy5hdFNjYWxhcikge1xuICAgICAgICAgICAgdGhpcy5hdFNjYWxhciA9IGZhbHNlO1xuICAgICAgICAgICAgeWllbGQqIHRoaXMuc3RlcCgpO1xuICAgICAgICAgICAgdGhpcy5vZmZzZXQgKz0gc291cmNlLmxlbmd0aDtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB0eXBlID0gY3N0LnRva2VuVHlwZShzb3VyY2UpO1xuICAgICAgICBpZiAoIXR5cGUpIHtcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgTm90IGEgWUFNTCB0b2tlbjogJHtzb3VyY2V9YDtcbiAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCh7IHR5cGU6ICdlcnJvcicsIG9mZnNldDogdGhpcy5vZmZzZXQsIG1lc3NhZ2UsIHNvdXJjZSB9KTtcbiAgICAgICAgICAgIHRoaXMub2Zmc2V0ICs9IHNvdXJjZS5sZW5ndGg7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAodHlwZSA9PT0gJ3NjYWxhcicpIHtcbiAgICAgICAgICAgIHRoaXMuYXROZXdMaW5lID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmF0U2NhbGFyID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMudHlwZSA9ICdzY2FsYXInO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICAgICAgICAgIHlpZWxkKiB0aGlzLnN0ZXAoKTtcbiAgICAgICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmF0TmV3TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5kZW50ID0gMDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lKVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbk5ld0xpbmUodGhpcy5vZmZzZXQgKyBzb3VyY2UubGVuZ3RoKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5hdE5ld0xpbmUgJiYgc291cmNlWzBdID09PSAnICcpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluZGVudCArPSBzb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdleHBsaWNpdC1rZXktaW5kJzpcbiAgICAgICAgICAgICAgICBjYXNlICdtYXAtdmFsdWUtaW5kJzpcbiAgICAgICAgICAgICAgICBjYXNlICdzZXEtaXRlbS1pbmQnOlxuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5hdE5ld0xpbmUpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluZGVudCArPSBzb3VyY2UubGVuZ3RoO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdkb2MtbW9kZSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZmxvdy1lcnJvci1lbmQnOlxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdE5ld0xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMub2Zmc2V0ICs9IHNvdXJjZS5sZW5ndGg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqIENhbGwgYXQgZW5kIG9mIGlucHV0IHRvIHB1c2ggb3V0IGFueSByZW1haW5pbmcgY29uc3RydWN0aW9ucyAqL1xuICAgICplbmQoKSB7XG4gICAgICAgIHdoaWxlICh0aGlzLnN0YWNrLmxlbmd0aCA+IDApXG4gICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICB9XG4gICAgZ2V0IHNvdXJjZVRva2VuKCkge1xuICAgICAgICBjb25zdCBzdCA9IHtcbiAgICAgICAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICBpbmRlbnQ6IHRoaXMuaW5kZW50LFxuICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZVxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gc3Q7XG4gICAgfVxuICAgICpzdGVwKCkge1xuICAgICAgICBjb25zdCB0b3AgPSB0aGlzLnBlZWsoMSk7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdkb2MtZW5kJyAmJiAoIXRvcCB8fCB0b3AudHlwZSAhPT0gJ2RvYy1lbmQnKSkge1xuICAgICAgICAgICAgd2hpbGUgKHRoaXMuc3RhY2subGVuZ3RoID4gMClcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgICAgIHRoaXMuc3RhY2sucHVzaCh7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2RvYy1lbmQnLFxuICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0b3ApXG4gICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMuc3RyZWFtKCk7XG4gICAgICAgIHN3aXRjaCAodG9wLnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2RvY3VtZW50JzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMuZG9jdW1lbnQodG9wKTtcbiAgICAgICAgICAgIGNhc2UgJ2FsaWFzJzpcbiAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdzaW5nbGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLnNjYWxhcih0b3ApO1xuICAgICAgICAgICAgY2FzZSAnYmxvY2stc2NhbGFyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4geWllbGQqIHRoaXMuYmxvY2tTY2FsYXIodG9wKTtcbiAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLW1hcCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLmJsb2NrTWFwKHRvcCk7XG4gICAgICAgICAgICBjYXNlICdibG9jay1zZXEnOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5ibG9ja1NlcXVlbmNlKHRvcCk7XG4gICAgICAgICAgICBjYXNlICdmbG93LWNvbGxlY3Rpb24nOlxuICAgICAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5mbG93Q29sbGVjdGlvbih0b3ApO1xuICAgICAgICAgICAgY2FzZSAnZG9jLWVuZCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHlpZWxkKiB0aGlzLmRvY3VtZW50RW5kKHRvcCk7XG4gICAgICAgIH1cbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgc2hvdWxkIG5vdCBoYXBwZW4gKi9cbiAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgfVxuICAgIHBlZWsobikge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aCAtIG5dO1xuICAgIH1cbiAgICAqcG9wKGVycm9yKSB7XG4gICAgICAgIGNvbnN0IHRva2VuID0gZXJyb3IgPz8gdGhpcy5zdGFjay5wb3AoKTtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmIHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgIGlmICghdG9rZW4pIHtcbiAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSAnVHJpZWQgdG8gcG9wIGFuIGVtcHR5IHN0YWNrJztcbiAgICAgICAgICAgIHlpZWxkIHsgdHlwZTogJ2Vycm9yJywgb2Zmc2V0OiB0aGlzLm9mZnNldCwgc291cmNlOiAnJywgbWVzc2FnZSB9O1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHRoaXMuc3RhY2subGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB5aWVsZCB0b2tlbjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHRvcCA9IHRoaXMucGVlaygxKTtcbiAgICAgICAgICAgIGlmICh0b2tlbi50eXBlID09PSAnYmxvY2stc2NhbGFyJykge1xuICAgICAgICAgICAgICAgIC8vIEJsb2NrIHNjYWxhcnMgdXNlIHRoZWlyIHBhcmVudCByYXRoZXIgdGhhbiBoZWFkZXIgaW5kZW50XG4gICAgICAgICAgICAgICAgdG9rZW4uaW5kZW50ID0gJ2luZGVudCcgaW4gdG9wID8gdG9wLmluZGVudCA6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0b2tlbi50eXBlID09PSAnZmxvdy1jb2xsZWN0aW9uJyAmJiB0b3AudHlwZSA9PT0gJ2RvY3VtZW50Jykge1xuICAgICAgICAgICAgICAgIC8vIElnbm9yZSBhbGwgaW5kZW50IGZvciB0b3AtbGV2ZWwgZmxvdyBjb2xsZWN0aW9uc1xuICAgICAgICAgICAgICAgIHRva2VuLmluZGVudCA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodG9rZW4udHlwZSA9PT0gJ2Zsb3ctY29sbGVjdGlvbicpXG4gICAgICAgICAgICAgICAgZml4Rmxvd1NlcUl0ZW1zKHRva2VuKTtcbiAgICAgICAgICAgIHN3aXRjaCAodG9wLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdkb2N1bWVudCc6XG4gICAgICAgICAgICAgICAgICAgIHRvcC52YWx1ZSA9IHRva2VuO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdibG9jay1zY2FsYXInOlxuICAgICAgICAgICAgICAgICAgICB0b3AucHJvcHMucHVzaCh0b2tlbik7IC8vIGVycm9yXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2Jsb2NrLW1hcCc6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXQgPSB0b3AuaXRlbXNbdG9wLml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFtdLCBrZXk6IHRva2VuLCBzZXA6IFtdIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbktleUxpbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXQudmFsdWUgPSB0b2tlbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oaXQsIHsga2V5OiB0b2tlbiwgc2VwOiBbXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gIWl0LmV4cGxpY2l0S2V5O1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXNlICdibG9jay1zZXEnOiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ID0gdG9wLml0ZW1zW3RvcC5pdGVtcy5sZW5ndGggLSAxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wLml0ZW1zLnB1c2goeyBzdGFydDogW10sIHZhbHVlOiB0b2tlbiB9KTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgaXQudmFsdWUgPSB0b2tlbjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgJ2Zsb3ctY29sbGVjdGlvbic6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXQgPSB0b3AuaXRlbXNbdG9wLml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWl0IHx8IGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wLml0ZW1zLnB1c2goeyBzdGFydDogW10sIGtleTogdG9rZW4sIHNlcDogW10gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnZhbHVlID0gdG9rZW47XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oaXQsIHsga2V5OiB0b2tlbiwgc2VwOiBbXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCBzaG91bGQgbm90IGhhcHBlbiAqL1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AodG9rZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCh0b3AudHlwZSA9PT0gJ2RvY3VtZW50JyB8fFxuICAgICAgICAgICAgICAgIHRvcC50eXBlID09PSAnYmxvY2stbWFwJyB8fFxuICAgICAgICAgICAgICAgIHRvcC50eXBlID09PSAnYmxvY2stc2VxJykgJiZcbiAgICAgICAgICAgICAgICAodG9rZW4udHlwZSA9PT0gJ2Jsb2NrLW1hcCcgfHwgdG9rZW4udHlwZSA9PT0gJ2Jsb2NrLXNlcScpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IHRva2VuLml0ZW1zW3Rva2VuLml0ZW1zLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgIGlmIChsYXN0ICYmXG4gICAgICAgICAgICAgICAgICAgICFsYXN0LnNlcCAmJlxuICAgICAgICAgICAgICAgICAgICAhbGFzdC52YWx1ZSAmJlxuICAgICAgICAgICAgICAgICAgICBsYXN0LnN0YXJ0Lmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgZmluZE5vbkVtcHR5SW5kZXgobGFzdC5zdGFydCkgPT09IC0xICYmXG4gICAgICAgICAgICAgICAgICAgICh0b2tlbi5pbmRlbnQgPT09IDAgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Quc3RhcnQuZXZlcnkoc3QgPT4gc3QudHlwZSAhPT0gJ2NvbW1lbnQnIHx8IHN0LmluZGVudCA8IHRva2VuLmluZGVudCkpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0b3AudHlwZSA9PT0gJ2RvY3VtZW50JylcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcC5lbmQgPSBsYXN0LnN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3AuaXRlbXMucHVzaCh7IHN0YXJ0OiBsYXN0LnN0YXJ0IH0pO1xuICAgICAgICAgICAgICAgICAgICB0b2tlbi5pdGVtcy5zcGxpY2UoLTEsIDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAqc3RyZWFtKCkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnZGlyZWN0aXZlLWxpbmUnOlxuICAgICAgICAgICAgICAgIHlpZWxkIHsgdHlwZTogJ2RpcmVjdGl2ZScsIG9mZnNldDogdGhpcy5vZmZzZXQsIHNvdXJjZTogdGhpcy5zb3VyY2UgfTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdieXRlLW9yZGVyLW1hcmsnOlxuICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICB5aWVsZCB0aGlzLnNvdXJjZVRva2VuO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1tb2RlJzpcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1zdGFydCc6IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkb2MgPSB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdkb2N1bWVudCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiBbXVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gJ2RvYy1zdGFydCcpXG4gICAgICAgICAgICAgICAgICAgIGRvYy5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhY2sucHVzaChkb2MpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB5aWVsZCB7XG4gICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgIG1lc3NhZ2U6IGBVbmV4cGVjdGVkICR7dGhpcy50eXBlfSB0b2tlbiBpbiBZQU1MIHN0cmVhbWAsXG4gICAgICAgICAgICBzb3VyY2U6IHRoaXMuc291cmNlXG4gICAgICAgIH07XG4gICAgfVxuICAgICpkb2N1bWVudChkb2MpIHtcbiAgICAgICAgaWYgKGRvYy52YWx1ZSlcbiAgICAgICAgICAgIHJldHVybiB5aWVsZCogdGhpcy5saW5lRW5kKGRvYyk7XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdkb2Mtc3RhcnQnOiB7XG4gICAgICAgICAgICAgICAgaWYgKGZpbmROb25FbXB0eUluZGV4KGRvYy5zdGFydCkgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5zdGVwKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgZG9jLnN0YXJ0LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnYW5jaG9yJzpcbiAgICAgICAgICAgIGNhc2UgJ3RhZyc6XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIGRvYy5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBidiA9IHRoaXMuc3RhcnRCbG9ja1ZhbHVlKGRvYyk7XG4gICAgICAgIGlmIChidilcbiAgICAgICAgICAgIHRoaXMuc3RhY2sucHVzaChidik7XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgeWllbGQge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBgVW5leHBlY3RlZCAke3RoaXMudHlwZX0gdG9rZW4gaW4gWUFNTCBkb2N1bWVudGAsXG4gICAgICAgICAgICAgICAgc291cmNlOiB0aGlzLnNvdXJjZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqc2NhbGFyKHNjYWxhcikge1xuICAgICAgICBpZiAodGhpcy50eXBlID09PSAnbWFwLXZhbHVlLWluZCcpIHtcbiAgICAgICAgICAgIGNvbnN0IHByZXYgPSBnZXRQcmV2UHJvcHModGhpcy5wZWVrKDIpKTtcbiAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gZ2V0Rmlyc3RLZXlTdGFydFByb3BzKHByZXYpO1xuICAgICAgICAgICAgbGV0IHNlcDtcbiAgICAgICAgICAgIGlmIChzY2FsYXIuZW5kKSB7XG4gICAgICAgICAgICAgICAgc2VwID0gc2NhbGFyLmVuZDtcbiAgICAgICAgICAgICAgICBzZXAucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICBkZWxldGUgc2NhbGFyLmVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBzZXAgPSBbdGhpcy5zb3VyY2VUb2tlbl07XG4gICAgICAgICAgICBjb25zdCBtYXAgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgb2Zmc2V0OiBzY2FsYXIub2Zmc2V0LFxuICAgICAgICAgICAgICAgIGluZGVudDogc2NhbGFyLmluZGVudCxcbiAgICAgICAgICAgICAgICBpdGVtczogW3sgc3RhcnQsIGtleTogc2NhbGFyLCBzZXAgfV1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoIC0gMV0gPSBtYXA7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgeWllbGQqIHRoaXMubGluZUVuZChzY2FsYXIpO1xuICAgIH1cbiAgICAqYmxvY2tTY2FsYXIoc2NhbGFyKSB7XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICAgIGNhc2UgJ25ld2xpbmUnOlxuICAgICAgICAgICAgICAgIHNjYWxhci5wcm9wcy5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICAgICAgc2NhbGFyLnNvdXJjZSA9IHRoaXMuc291cmNlO1xuICAgICAgICAgICAgICAgIC8vIGJsb2NrLXNjYWxhciBzb3VyY2UgaW5jbHVkZXMgdHJhaWxpbmcgbmV3bGluZVxuICAgICAgICAgICAgICAgIHRoaXMuYXROZXdMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmluZGVudCA9IDA7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBubCA9IHRoaXMuc291cmNlLmluZGV4T2YoJ1xcbicpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKG5sICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uTmV3TGluZSh0aGlzLm9mZnNldCArIG5sKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5sID0gdGhpcy5zb3VyY2UuaW5kZXhPZignXFxuJywgbmwpICsgMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0IHNob3VsZCBub3QgaGFwcGVuICovXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnN0ZXAoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqYmxvY2tNYXAobWFwKSB7XG4gICAgICAgIGNvbnN0IGl0ID0gbWFwLml0ZW1zW21hcC5pdGVtcy5sZW5ndGggLSAxXTtcbiAgICAgICAgLy8gaXQuc2VwIGlzIHRydWUtaXNoIGlmIHBhaXIgYWxyZWFkeSBoYXMga2V5IG9yIDogc2VwYXJhdG9yXG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGlmIChpdC52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmQgPSAnZW5kJyBpbiBpdC52YWx1ZSA/IGl0LnZhbHVlLmVuZCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IEFycmF5LmlzQXJyYXkoZW5kKSA/IGVuZFtlbmQubGVuZ3RoIC0gMV0gOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIGlmIChsYXN0Py50eXBlID09PSAnY29tbWVudCcpXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmQ/LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuYXRJbmRlbnRlZENvbW1lbnQoaXQuc3RhcnQsIG1hcC5pbmRlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2ID0gbWFwLml0ZW1zW21hcC5pdGVtcy5sZW5ndGggLSAyXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IHByZXY/LnZhbHVlPy5lbmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShlbmQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZW5kLCBpdC5zdGFydCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpdC5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaW5kZW50ID49IG1hcC5pbmRlbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGF0TWFwSW5kZW50ID0gIXRoaXMub25LZXlMaW5lICYmIHRoaXMuaW5kZW50ID09PSBtYXAuaW5kZW50O1xuICAgICAgICAgICAgY29uc3QgYXROZXh0SXRlbSA9IGF0TWFwSW5kZW50ICYmXG4gICAgICAgICAgICAgICAgKGl0LnNlcCB8fCBpdC5leHBsaWNpdEtleSkgJiZcbiAgICAgICAgICAgICAgICB0aGlzLnR5cGUgIT09ICdzZXEtaXRlbS1pbmQnO1xuICAgICAgICAgICAgLy8gRm9yIGVtcHR5IG5vZGVzLCBhc3NpZ24gbmV3bGluZS1zZXBhcmF0ZWQgbm90IGluZGVudGVkIGVtcHR5IHRva2VucyB0byBmb2xsb3dpbmcgbm9kZVxuICAgICAgICAgICAgbGV0IHN0YXJ0ID0gW107XG4gICAgICAgICAgICBpZiAoYXROZXh0SXRlbSAmJiBpdC5zZXAgJiYgIWl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmwgPSBbXTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0LnNlcC5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdCA9IGl0LnNlcFtpXTtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChzdC50eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBubC5wdXNoKGkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnc3BhY2UnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0LmluZGVudCA+IG1hcC5pbmRlbnQpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5sLmxlbmd0aCA9IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5sLmxlbmd0aCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKG5sLmxlbmd0aCA+PSAyKVxuICAgICAgICAgICAgICAgICAgICBzdGFydCA9IGl0LnNlcC5zcGxpY2UobmxbMV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdhbmNob3InOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3RhZyc6XG4gICAgICAgICAgICAgICAgICAgIGlmIChhdE5leHRJdGVtIHx8IGl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goeyBzdGFydCB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpdC5zZXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgY2FzZSAnZXhwbGljaXQta2V5LWluZCc6XG4gICAgICAgICAgICAgICAgICAgIGlmICghaXQuc2VwICYmICFpdC5leHBsaWNpdEtleSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LmV4cGxpY2l0S2V5ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChhdE5leHRJdGVtIHx8IGl0LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goeyBzdGFydCwgZXhwbGljaXRLZXk6IHRydWUgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdibG9jay1tYXAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtczogW3sgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSwgZXhwbGljaXRLZXk6IHRydWUgfV1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNhc2UgJ21hcC12YWx1ZS1pbmQnOlxuICAgICAgICAgICAgICAgICAgICBpZiAoaXQuZXhwbGljaXRLZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluY2x1ZGVzVG9rZW4oaXQuc3RhcnQsICduZXdsaW5lJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihpdCwgeyBrZXk6IG51bGwsIHNlcDogW3RoaXMuc291cmNlVG9rZW5dIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBnZXRGaXJzdEtleVN0YXJ0UHJvcHMoaXQuc3RhcnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBbeyBzdGFydCwga2V5OiBudWxsLCBzZXA6IFt0aGlzLnNvdXJjZVRva2VuXSB9XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpdC52YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQ6IFtdLCBrZXk6IG51bGwsIHNlcDogW3RoaXMuc291cmNlVG9rZW5dIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaW5jbHVkZXNUb2tlbihpdC5zZXAsICdtYXAtdmFsdWUtaW5kJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stbWFwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0LCBrZXk6IG51bGwsIHNlcDogW3RoaXMuc291cmNlVG9rZW5dIH1dXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpc0Zsb3dUb2tlbihpdC5rZXkpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIWluY2x1ZGVzVG9rZW4oaXQuc2VwLCAnbmV3bGluZScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBnZXRGaXJzdEtleVN0YXJ0UHJvcHMoaXQuc3RhcnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9IGl0LmtleTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzZXAgPSBpdC5zZXA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VwLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciB0eXBlIGd1YXJkIGlzIHdyb25nIGhlcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgaXQua2V5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdHlwZSBndWFyZCBpcyB3cm9uZyBoZXJlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGl0LnNlcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stbWFwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0LCBrZXksIHNlcCB9XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoc3RhcnQubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE5vdCBhY3R1YWxseSBhdCBuZXh0IGl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdC5zZXAgPSBpdC5zZXAuY29uY2F0KHN0YXJ0LCB0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpdC5zZXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGl0LCB7IGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpdC52YWx1ZSB8fCBhdE5leHRJdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwLml0ZW1zLnB1c2goeyBzdGFydCwga2V5OiBudWxsLCBzZXA6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGluY2x1ZGVzVG9rZW4oaXQuc2VwLCAnbWFwLXZhbHVlLWluZCcpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFjay5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGVudDogdGhpcy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBbeyBzdGFydDogW10sIGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNhc2UgJ2FsaWFzJzpcbiAgICAgICAgICAgICAgICBjYXNlICdzY2FsYXInOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICBjYXNlICdkb3VibGUtcXVvdGVkLXNjYWxhcic6IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZnMgPSB0aGlzLmZsb3dTY2FsYXIodGhpcy50eXBlKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGF0TmV4dEl0ZW0gfHwgaXQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQsIGtleTogZnMsIHNlcDogW10gfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goZnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihpdCwgeyBrZXk6IGZzLCBzZXA6IFtdIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vbktleUxpbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBidiA9IHRoaXMuc3RhcnRCbG9ja1ZhbHVlKG1hcCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChidikge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGJ2LnR5cGUgPT09ICdibG9jay1zZXEnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpdC5leHBsaWNpdEtleSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdC5zZXAgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIWluY2x1ZGVzVG9rZW4oaXQuc2VwLCAnbmV3bGluZScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdVbmV4cGVjdGVkIGJsb2NrLXNlcS1pbmQgb24gc2FtZSBsaW5lIHdpdGgga2V5JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChhdE1hcEluZGVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcC5pdGVtcy5wdXNoKHsgc3RhcnQgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goYnYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICB5aWVsZCogdGhpcy5zdGVwKCk7XG4gICAgfVxuICAgICpibG9ja1NlcXVlbmNlKHNlcSkge1xuICAgICAgICBjb25zdCBpdCA9IHNlcS5pdGVtc1tzZXEuaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZW5kID0gJ2VuZCcgaW4gaXQudmFsdWUgPyBpdC52YWx1ZS5lbmQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxhc3QgPSBBcnJheS5pc0FycmF5KGVuZCkgPyBlbmRbZW5kLmxlbmd0aCAtIDFdIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICBpZiAobGFzdD8udHlwZSA9PT0gJ2NvbW1lbnQnKVxuICAgICAgICAgICAgICAgICAgICAgICAgZW5kPy5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXEuaXRlbXMucHVzaCh7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICBjYXNlICdjb21tZW50JzpcbiAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUpXG4gICAgICAgICAgICAgICAgICAgIHNlcS5pdGVtcy5wdXNoKHsgc3RhcnQ6IFt0aGlzLnNvdXJjZVRva2VuXSB9KTtcbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuYXRJbmRlbnRlZENvbW1lbnQoaXQuc3RhcnQsIHNlcS5pbmRlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmV2ID0gc2VxLml0ZW1zW3NlcS5pdGVtcy5sZW5ndGggLSAyXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IHByZXY/LnZhbHVlPy5lbmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShlbmQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnB1c2guYXBwbHkoZW5kLCBpdC5zdGFydCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VxLml0ZW1zLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpdC5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdhbmNob3InOlxuICAgICAgICAgICAgY2FzZSAndGFnJzpcbiAgICAgICAgICAgICAgICBpZiAoaXQudmFsdWUgfHwgdGhpcy5pbmRlbnQgPD0gc2VxLmluZGVudClcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjYXNlICdzZXEtaXRlbS1pbmQnOlxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmluZGVudCAhPT0gc2VxLmluZGVudClcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgaWYgKGl0LnZhbHVlIHx8IGluY2x1ZGVzVG9rZW4oaXQuc3RhcnQsICdzZXEtaXRlbS1pbmQnKSlcbiAgICAgICAgICAgICAgICAgICAgc2VxLml0ZW1zLnB1c2goeyBzdGFydDogW3RoaXMuc291cmNlVG9rZW5dIH0pO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgaXQuc3RhcnQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaW5kZW50ID4gc2VxLmluZGVudCkge1xuICAgICAgICAgICAgY29uc3QgYnYgPSB0aGlzLnN0YXJ0QmxvY2tWYWx1ZShzZXEpO1xuICAgICAgICAgICAgaWYgKGJ2KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGFjay5wdXNoKGJ2KTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgIHlpZWxkKiB0aGlzLnN0ZXAoKTtcbiAgICB9XG4gICAgKmZsb3dDb2xsZWN0aW9uKGZjKSB7XG4gICAgICAgIGNvbnN0IGl0ID0gZmMuaXRlbXNbZmMuaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdmbG93LWVycm9yLWVuZCcpIHtcbiAgICAgICAgICAgIGxldCB0b3A7XG4gICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgICAgICAgICAgdG9wID0gdGhpcy5wZWVrKDEpO1xuICAgICAgICAgICAgfSB3aGlsZSAodG9wICYmIHRvcC50eXBlID09PSAnZmxvdy1jb2xsZWN0aW9uJyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoZmMuZW5kLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgICAgICAgICAgICBjYXNlICdjb21tYSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZXhwbGljaXQta2V5LWluZCc6XG4gICAgICAgICAgICAgICAgICAgIGlmICghaXQgfHwgaXQuc2VwKVxuICAgICAgICAgICAgICAgICAgICAgICAgZmMuaXRlbXMucHVzaCh7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnN0YXJ0LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICBjYXNlICdtYXAtdmFsdWUtaW5kJzpcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFpdCB8fCBpdC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGZjLml0ZW1zLnB1c2goeyBzdGFydDogW10sIGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGl0LCB7IGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICBjYXNlICdzcGFjZSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnY29tbWVudCc6XG4gICAgICAgICAgICAgICAgY2FzZSAnbmV3bGluZSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnYW5jaG9yJzpcbiAgICAgICAgICAgICAgICBjYXNlICd0YWcnOlxuICAgICAgICAgICAgICAgICAgICBpZiAoIWl0IHx8IGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgZmMuaXRlbXMucHVzaCh7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0LnNlcClcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0LnNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBpdC5zdGFydC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgY2FzZSAnYWxpYXMnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3NjYWxhcic6XG4gICAgICAgICAgICAgICAgY2FzZSAnc2luZ2xlLXF1b3RlZC1zY2FsYXInOlxuICAgICAgICAgICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzoge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmcyA9IHRoaXMuZmxvd1NjYWxhcih0aGlzLnR5cGUpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWl0IHx8IGl0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgZmMuaXRlbXMucHVzaCh7IHN0YXJ0OiBbXSwga2V5OiBmcywgc2VwOiBbXSB9KTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoaXQuc2VwKVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFjay5wdXNoKGZzKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihpdCwgeyBrZXk6IGZzLCBzZXA6IFtdIH0pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhc2UgJ2Zsb3ctbWFwLWVuZCc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZmxvdy1zZXEtZW5kJzpcbiAgICAgICAgICAgICAgICAgICAgZmMuZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGJ2ID0gdGhpcy5zdGFydEJsb2NrVmFsdWUoZmMpO1xuICAgICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2Ugc2hvdWxkIG5vdCBoYXBwZW4gKi9cbiAgICAgICAgICAgIGlmIChidilcbiAgICAgICAgICAgICAgICB0aGlzLnN0YWNrLnB1c2goYnYpO1xuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMuc3RlcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5wZWVrKDIpO1xuICAgICAgICAgICAgaWYgKHBhcmVudC50eXBlID09PSAnYmxvY2stbWFwJyAmJlxuICAgICAgICAgICAgICAgICgodGhpcy50eXBlID09PSAnbWFwLXZhbHVlLWluZCcgJiYgcGFyZW50LmluZGVudCA9PT0gZmMuaW5kZW50KSB8fFxuICAgICAgICAgICAgICAgICAgICAodGhpcy50eXBlID09PSAnbmV3bGluZScgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFwYXJlbnQuaXRlbXNbcGFyZW50Lml0ZW1zLmxlbmd0aCAtIDFdLnNlcCkpKSB7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMucG9wKCk7XG4gICAgICAgICAgICAgICAgeWllbGQqIHRoaXMuc3RlcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAodGhpcy50eXBlID09PSAnbWFwLXZhbHVlLWluZCcgJiZcbiAgICAgICAgICAgICAgICBwYXJlbnQudHlwZSAhPT0gJ2Zsb3ctY29sbGVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBwcmV2ID0gZ2V0UHJldlByb3BzKHBhcmVudCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBnZXRGaXJzdEtleVN0YXJ0UHJvcHMocHJldik7XG4gICAgICAgICAgICAgICAgZml4Rmxvd1NlcUl0ZW1zKGZjKTtcbiAgICAgICAgICAgICAgICBjb25zdCBzZXAgPSBmYy5lbmQuc3BsaWNlKDEsIGZjLmVuZC5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIHNlcC5wdXNoKHRoaXMuc291cmNlVG9rZW4pO1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcCA9IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogZmMub2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICBpbmRlbnQ6IGZjLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0LCBrZXk6IGZjLCBzZXAgfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIHRoaXMub25LZXlMaW5lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoIC0gMV0gPSBtYXA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5saW5lRW5kKGZjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmbG93U2NhbGFyKHR5cGUpIHtcbiAgICAgICAgaWYgKHRoaXMub25OZXdMaW5lKSB7XG4gICAgICAgICAgICBsZXQgbmwgPSB0aGlzLnNvdXJjZS5pbmRleE9mKCdcXG4nKSArIDE7XG4gICAgICAgICAgICB3aGlsZSAobmwgIT09IDApIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uTmV3TGluZSh0aGlzLm9mZnNldCArIG5sKTtcbiAgICAgICAgICAgICAgICBubCA9IHRoaXMuc291cmNlLmluZGV4T2YoJ1xcbicsIG5sKSArIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxuICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgIHNvdXJjZTogdGhpcy5zb3VyY2VcbiAgICAgICAgfTtcbiAgICB9XG4gICAgc3RhcnRCbG9ja1ZhbHVlKHBhcmVudCkge1xuICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnYWxpYXMnOlxuICAgICAgICAgICAgY2FzZSAnc2NhbGFyJzpcbiAgICAgICAgICAgIGNhc2UgJ3NpbmdsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgIGNhc2UgJ2RvdWJsZS1xdW90ZWQtc2NhbGFyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5mbG93U2NhbGFyKHRoaXMudHlwZSk7XG4gICAgICAgICAgICBjYXNlICdibG9jay1zY2FsYXItaGVhZGVyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stc2NhbGFyJyxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFt0aGlzLnNvdXJjZVRva2VuXSxcbiAgICAgICAgICAgICAgICAgICAgc291cmNlOiAnJ1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjYXNlICdmbG93LW1hcC1zdGFydCc6XG4gICAgICAgICAgICBjYXNlICdmbG93LXNlcS1zdGFydCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Zsb3ctY29sbGVjdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgIGluZGVudDogdGhpcy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgICAgIHN0YXJ0OiB0aGlzLnNvdXJjZVRva2VuLFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogW10sXG4gICAgICAgICAgICAgICAgICAgIGVuZDogW11cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgY2FzZSAnc2VxLWl0ZW0taW5kJzpcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnYmxvY2stc2VxJyxcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgICAgICAgICAgaW5kZW50OiB0aGlzLmluZGVudCxcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFt7IHN0YXJ0OiBbdGhpcy5zb3VyY2VUb2tlbl0gfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgY2FzZSAnZXhwbGljaXQta2V5LWluZCc6IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJldiA9IGdldFByZXZQcm9wcyhwYXJlbnQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gZ2V0Rmlyc3RLZXlTdGFydFByb3BzKHByZXYpO1xuICAgICAgICAgICAgICAgIHN0YXJ0LnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogJ2Jsb2NrLW1hcCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXG4gICAgICAgICAgICAgICAgICAgIGluZGVudDogdGhpcy5pbmRlbnQsXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBbeyBzdGFydCwgZXhwbGljaXRLZXk6IHRydWUgfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnbWFwLXZhbHVlLWluZCc6IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJldiA9IGdldFByZXZQcm9wcyhwYXJlbnQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gZ2V0Rmlyc3RLZXlTdGFydFByb3BzKHByZXYpO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6ICdibG9jay1tYXAnLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICBpbmRlbnQ6IHRoaXMuaW5kZW50LFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogW3sgc3RhcnQsIGtleTogbnVsbCwgc2VwOiBbdGhpcy5zb3VyY2VUb2tlbl0gfV1cbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBhdEluZGVudGVkQ29tbWVudChzdGFydCwgaW5kZW50KSB7XG4gICAgICAgIGlmICh0aGlzLnR5cGUgIT09ICdjb21tZW50JylcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMuaW5kZW50IDw9IGluZGVudClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgcmV0dXJuIHN0YXJ0LmV2ZXJ5KHN0ID0+IHN0LnR5cGUgPT09ICduZXdsaW5lJyB8fCBzdC50eXBlID09PSAnc3BhY2UnKTtcbiAgICB9XG4gICAgKmRvY3VtZW50RW5kKGRvY0VuZCkge1xuICAgICAgICBpZiAodGhpcy50eXBlICE9PSAnZG9jLW1vZGUnKSB7XG4gICAgICAgICAgICBpZiAoZG9jRW5kLmVuZClcbiAgICAgICAgICAgICAgICBkb2NFbmQuZW5kLnB1c2godGhpcy5zb3VyY2VUb2tlbik7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgZG9jRW5kLmVuZCA9IFt0aGlzLnNvdXJjZVRva2VuXTtcbiAgICAgICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICduZXdsaW5lJylcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqbGluZUVuZCh0b2tlbikge1xuICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnY29tbWEnOlxuICAgICAgICAgICAgY2FzZSAnZG9jLXN0YXJ0JzpcbiAgICAgICAgICAgIGNhc2UgJ2RvYy1lbmQnOlxuICAgICAgICAgICAgY2FzZSAnZmxvdy1zZXEtZW5kJzpcbiAgICAgICAgICAgIGNhc2UgJ2Zsb3ctbWFwLWVuZCc6XG4gICAgICAgICAgICBjYXNlICdtYXAtdmFsdWUtaW5kJzpcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5wb3AoKTtcbiAgICAgICAgICAgICAgICB5aWVsZCogdGhpcy5zdGVwKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICduZXdsaW5lJzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uS2V5TGluZSA9IGZhbHNlO1xuICAgICAgICAgICAgLy8gZmFsbHRocm91Z2hcbiAgICAgICAgICAgIGNhc2UgJ3NwYWNlJzpcbiAgICAgICAgICAgIGNhc2UgJ2NvbW1lbnQnOlxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAvLyBhbGwgb3RoZXIgdmFsdWVzIGFyZSBlcnJvcnNcbiAgICAgICAgICAgICAgICBpZiAodG9rZW4uZW5kKVxuICAgICAgICAgICAgICAgICAgICB0b2tlbi5lbmQucHVzaCh0aGlzLnNvdXJjZVRva2VuKTtcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIHRva2VuLmVuZCA9IFt0aGlzLnNvdXJjZVRva2VuXTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50eXBlID09PSAnbmV3bGluZScpXG4gICAgICAgICAgICAgICAgICAgIHlpZWxkKiB0aGlzLnBvcCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnRzLlBhcnNlciA9IFBhcnNlcjtcbiIsICIndXNlIHN0cmljdCc7XG5cbnZhciBjb21wb3NlciA9IHJlcXVpcmUoJy4vY29tcG9zZS9jb21wb3Nlci5qcycpO1xudmFyIERvY3VtZW50ID0gcmVxdWlyZSgnLi9kb2MvRG9jdW1lbnQuanMnKTtcbnZhciBlcnJvcnMgPSByZXF1aXJlKCcuL2Vycm9ycy5qcycpO1xudmFyIGxvZyA9IHJlcXVpcmUoJy4vbG9nLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgbGluZUNvdW50ZXIgPSByZXF1aXJlKCcuL3BhcnNlL2xpbmUtY291bnRlci5qcycpO1xudmFyIHBhcnNlciA9IHJlcXVpcmUoJy4vcGFyc2UvcGFyc2VyLmpzJyk7XG5cbmZ1bmN0aW9uIHBhcnNlT3B0aW9ucyhvcHRpb25zKSB7XG4gICAgY29uc3QgcHJldHR5RXJyb3JzID0gb3B0aW9ucy5wcmV0dHlFcnJvcnMgIT09IGZhbHNlO1xuICAgIGNvbnN0IGxpbmVDb3VudGVyJDEgPSBvcHRpb25zLmxpbmVDb3VudGVyIHx8IChwcmV0dHlFcnJvcnMgJiYgbmV3IGxpbmVDb3VudGVyLkxpbmVDb3VudGVyKCkpIHx8IG51bGw7XG4gICAgcmV0dXJuIHsgbGluZUNvdW50ZXI6IGxpbmVDb3VudGVyJDEsIHByZXR0eUVycm9ycyB9O1xufVxuLyoqXG4gKiBQYXJzZSB0aGUgaW5wdXQgYXMgYSBzdHJlYW0gb2YgWUFNTCBkb2N1bWVudHMuXG4gKlxuICogRG9jdW1lbnRzIHNob3VsZCBiZSBzZXBhcmF0ZWQgZnJvbSBlYWNoIG90aGVyIGJ5IGAuLi5gIG9yIGAtLS1gIG1hcmtlciBsaW5lcy5cbiAqXG4gKiBAcmV0dXJucyBJZiBhbiBlbXB0eSBgZG9jc2AgYXJyYXkgaXMgcmV0dXJuZWQsIGl0IHdpbGwgYmUgb2YgdHlwZVxuICogICBFbXB0eVN0cmVhbSBhbmQgY29udGFpbiBhZGRpdGlvbmFsIHN0cmVhbSBpbmZvcm1hdGlvbi4gSW5cbiAqICAgVHlwZVNjcmlwdCwgeW91IHNob3VsZCB1c2UgYCdlbXB0eScgaW4gZG9jc2AgYXMgYSB0eXBlIGd1YXJkIGZvciBpdC5cbiAqL1xuZnVuY3Rpb24gcGFyc2VBbGxEb2N1bWVudHMoc291cmNlLCBvcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7IGxpbmVDb3VudGVyLCBwcmV0dHlFcnJvcnMgfSA9IHBhcnNlT3B0aW9ucyhvcHRpb25zKTtcbiAgICBjb25zdCBwYXJzZXIkMSA9IG5ldyBwYXJzZXIuUGFyc2VyKGxpbmVDb3VudGVyPy5hZGROZXdMaW5lKTtcbiAgICBjb25zdCBjb21wb3NlciQxID0gbmV3IGNvbXBvc2VyLkNvbXBvc2VyKG9wdGlvbnMpO1xuICAgIGNvbnN0IGRvY3MgPSBBcnJheS5mcm9tKGNvbXBvc2VyJDEuY29tcG9zZShwYXJzZXIkMS5wYXJzZShzb3VyY2UpKSk7XG4gICAgaWYgKHByZXR0eUVycm9ycyAmJiBsaW5lQ291bnRlcilcbiAgICAgICAgZm9yIChjb25zdCBkb2Mgb2YgZG9jcykge1xuICAgICAgICAgICAgZG9jLmVycm9ycy5mb3JFYWNoKGVycm9ycy5wcmV0dGlmeUVycm9yKHNvdXJjZSwgbGluZUNvdW50ZXIpKTtcbiAgICAgICAgICAgIGRvYy53YXJuaW5ncy5mb3JFYWNoKGVycm9ycy5wcmV0dGlmeUVycm9yKHNvdXJjZSwgbGluZUNvdW50ZXIpKTtcbiAgICAgICAgfVxuICAgIGlmIChkb2NzLmxlbmd0aCA+IDApXG4gICAgICAgIHJldHVybiBkb2NzO1xuICAgIHJldHVybiBPYmplY3QuYXNzaWduKFtdLCB7IGVtcHR5OiB0cnVlIH0sIGNvbXBvc2VyJDEuc3RyZWFtSW5mbygpKTtcbn1cbi8qKiBQYXJzZSBhbiBpbnB1dCBzdHJpbmcgaW50byBhIHNpbmdsZSBZQU1MLkRvY3VtZW50ICovXG5mdW5jdGlvbiBwYXJzZURvY3VtZW50KHNvdXJjZSwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgeyBsaW5lQ291bnRlciwgcHJldHR5RXJyb3JzIH0gPSBwYXJzZU9wdGlvbnMob3B0aW9ucyk7XG4gICAgY29uc3QgcGFyc2VyJDEgPSBuZXcgcGFyc2VyLlBhcnNlcihsaW5lQ291bnRlcj8uYWRkTmV3TGluZSk7XG4gICAgY29uc3QgY29tcG9zZXIkMSA9IG5ldyBjb21wb3Nlci5Db21wb3NlcihvcHRpb25zKTtcbiAgICAvLyBgZG9jYCBpcyBhbHdheXMgc2V0IGJ5IGNvbXBvc2UuZW5kKHRydWUpIGF0IHRoZSB2ZXJ5IGxhdGVzdFxuICAgIGxldCBkb2MgPSBudWxsO1xuICAgIGZvciAoY29uc3QgX2RvYyBvZiBjb21wb3NlciQxLmNvbXBvc2UocGFyc2VyJDEucGFyc2Uoc291cmNlKSwgdHJ1ZSwgc291cmNlLmxlbmd0aCkpIHtcbiAgICAgICAgaWYgKCFkb2MpXG4gICAgICAgICAgICBkb2MgPSBfZG9jO1xuICAgICAgICBlbHNlIGlmIChkb2Mub3B0aW9ucy5sb2dMZXZlbCAhPT0gJ3NpbGVudCcpIHtcbiAgICAgICAgICAgIGRvYy5lcnJvcnMucHVzaChuZXcgZXJyb3JzLllBTUxQYXJzZUVycm9yKF9kb2MucmFuZ2Uuc2xpY2UoMCwgMiksICdNVUxUSVBMRV9ET0NTJywgJ1NvdXJjZSBjb250YWlucyBtdWx0aXBsZSBkb2N1bWVudHM7IHBsZWFzZSB1c2UgWUFNTC5wYXJzZUFsbERvY3VtZW50cygpJykpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKHByZXR0eUVycm9ycyAmJiBsaW5lQ291bnRlcikge1xuICAgICAgICBkb2MuZXJyb3JzLmZvckVhY2goZXJyb3JzLnByZXR0aWZ5RXJyb3Ioc291cmNlLCBsaW5lQ291bnRlcikpO1xuICAgICAgICBkb2Mud2FybmluZ3MuZm9yRWFjaChlcnJvcnMucHJldHRpZnlFcnJvcihzb3VyY2UsIGxpbmVDb3VudGVyKSk7XG4gICAgfVxuICAgIHJldHVybiBkb2M7XG59XG5mdW5jdGlvbiBwYXJzZShzcmMsIHJldml2ZXIsIG9wdGlvbnMpIHtcbiAgICBsZXQgX3Jldml2ZXIgPSB1bmRlZmluZWQ7XG4gICAgaWYgKHR5cGVvZiByZXZpdmVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIF9yZXZpdmVyID0gcmV2aXZlcjtcbiAgICB9XG4gICAgZWxzZSBpZiAob3B0aW9ucyA9PT0gdW5kZWZpbmVkICYmIHJldml2ZXIgJiYgdHlwZW9mIHJldml2ZXIgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIG9wdGlvbnMgPSByZXZpdmVyO1xuICAgIH1cbiAgICBjb25zdCBkb2MgPSBwYXJzZURvY3VtZW50KHNyYywgb3B0aW9ucyk7XG4gICAgaWYgKCFkb2MpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGRvYy53YXJuaW5ncy5mb3JFYWNoKHdhcm5pbmcgPT4gbG9nLndhcm4oZG9jLm9wdGlvbnMubG9nTGV2ZWwsIHdhcm5pbmcpKTtcbiAgICBpZiAoZG9jLmVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGlmIChkb2Mub3B0aW9ucy5sb2dMZXZlbCAhPT0gJ3NpbGVudCcpXG4gICAgICAgICAgICB0aHJvdyBkb2MuZXJyb3JzWzBdO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBkb2MuZXJyb3JzID0gW107XG4gICAgfVxuICAgIHJldHVybiBkb2MudG9KUyhPYmplY3QuYXNzaWduKHsgcmV2aXZlcjogX3Jldml2ZXIgfSwgb3B0aW9ucykpO1xufVxuZnVuY3Rpb24gc3RyaW5naWZ5KHZhbHVlLCByZXBsYWNlciwgb3B0aW9ucykge1xuICAgIGxldCBfcmVwbGFjZXIgPSBudWxsO1xuICAgIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdmdW5jdGlvbicgfHwgQXJyYXkuaXNBcnJheShyZXBsYWNlcikpIHtcbiAgICAgICAgX3JlcGxhY2VyID0gcmVwbGFjZXI7XG4gICAgfVxuICAgIGVsc2UgaWYgKG9wdGlvbnMgPT09IHVuZGVmaW5lZCAmJiByZXBsYWNlcikge1xuICAgICAgICBvcHRpb25zID0gcmVwbGFjZXI7XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb3B0aW9ucyA9PT0gJ3N0cmluZycpXG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zLmxlbmd0aDtcbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdudW1iZXInKSB7XG4gICAgICAgIGNvbnN0IGluZGVudCA9IE1hdGgucm91bmQob3B0aW9ucyk7XG4gICAgICAgIG9wdGlvbnMgPSBpbmRlbnQgPCAxID8gdW5kZWZpbmVkIDogaW5kZW50ID4gOCA/IHsgaW5kZW50OiA4IH0gOiB7IGluZGVudCB9O1xuICAgIH1cbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCB7IGtlZXBVbmRlZmluZWQgfSA9IG9wdGlvbnMgPz8gcmVwbGFjZXIgPz8ge307XG4gICAgICAgIGlmICgha2VlcFVuZGVmaW5lZClcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGlmIChpZGVudGl0eS5pc0RvY3VtZW50KHZhbHVlKSAmJiAhX3JlcGxhY2VyKVxuICAgICAgICByZXR1cm4gdmFsdWUudG9TdHJpbmcob3B0aW9ucyk7XG4gICAgcmV0dXJuIG5ldyBEb2N1bWVudC5Eb2N1bWVudCh2YWx1ZSwgX3JlcGxhY2VyLCBvcHRpb25zKS50b1N0cmluZyhvcHRpb25zKTtcbn1cblxuZXhwb3J0cy5wYXJzZSA9IHBhcnNlO1xuZXhwb3J0cy5wYXJzZUFsbERvY3VtZW50cyA9IHBhcnNlQWxsRG9jdW1lbnRzO1xuZXhwb3J0cy5wYXJzZURvY3VtZW50ID0gcGFyc2VEb2N1bWVudDtcbmV4cG9ydHMuc3RyaW5naWZ5ID0gc3RyaW5naWZ5O1xuIiwgIid1c2Ugc3RyaWN0JztcblxudmFyIGNvbXBvc2VyID0gcmVxdWlyZSgnLi9jb21wb3NlL2NvbXBvc2VyLmpzJyk7XG52YXIgRG9jdW1lbnQgPSByZXF1aXJlKCcuL2RvYy9Eb2N1bWVudC5qcycpO1xudmFyIFNjaGVtYSA9IHJlcXVpcmUoJy4vc2NoZW1hL1NjaGVtYS5qcycpO1xudmFyIGVycm9ycyA9IHJlcXVpcmUoJy4vZXJyb3JzLmpzJyk7XG52YXIgQWxpYXMgPSByZXF1aXJlKCcuL25vZGVzL0FsaWFzLmpzJyk7XG52YXIgaWRlbnRpdHkgPSByZXF1aXJlKCcuL25vZGVzL2lkZW50aXR5LmpzJyk7XG52YXIgUGFpciA9IHJlcXVpcmUoJy4vbm9kZXMvUGFpci5qcycpO1xudmFyIFNjYWxhciA9IHJlcXVpcmUoJy4vbm9kZXMvU2NhbGFyLmpzJyk7XG52YXIgWUFNTE1hcCA9IHJlcXVpcmUoJy4vbm9kZXMvWUFNTE1hcC5qcycpO1xudmFyIFlBTUxTZXEgPSByZXF1aXJlKCcuL25vZGVzL1lBTUxTZXEuanMnKTtcbnZhciBjc3QgPSByZXF1aXJlKCcuL3BhcnNlL2NzdC5qcycpO1xudmFyIGxleGVyID0gcmVxdWlyZSgnLi9wYXJzZS9sZXhlci5qcycpO1xudmFyIGxpbmVDb3VudGVyID0gcmVxdWlyZSgnLi9wYXJzZS9saW5lLWNvdW50ZXIuanMnKTtcbnZhciBwYXJzZXIgPSByZXF1aXJlKCcuL3BhcnNlL3BhcnNlci5qcycpO1xudmFyIHB1YmxpY0FwaSA9IHJlcXVpcmUoJy4vcHVibGljLWFwaS5qcycpO1xudmFyIHZpc2l0ID0gcmVxdWlyZSgnLi92aXNpdC5qcycpO1xuXG5cblxuZXhwb3J0cy5Db21wb3NlciA9IGNvbXBvc2VyLkNvbXBvc2VyO1xuZXhwb3J0cy5Eb2N1bWVudCA9IERvY3VtZW50LkRvY3VtZW50O1xuZXhwb3J0cy5TY2hlbWEgPSBTY2hlbWEuU2NoZW1hO1xuZXhwb3J0cy5ZQU1MRXJyb3IgPSBlcnJvcnMuWUFNTEVycm9yO1xuZXhwb3J0cy5ZQU1MUGFyc2VFcnJvciA9IGVycm9ycy5ZQU1MUGFyc2VFcnJvcjtcbmV4cG9ydHMuWUFNTFdhcm5pbmcgPSBlcnJvcnMuWUFNTFdhcm5pbmc7XG5leHBvcnRzLkFsaWFzID0gQWxpYXMuQWxpYXM7XG5leHBvcnRzLmlzQWxpYXMgPSBpZGVudGl0eS5pc0FsaWFzO1xuZXhwb3J0cy5pc0NvbGxlY3Rpb24gPSBpZGVudGl0eS5pc0NvbGxlY3Rpb247XG5leHBvcnRzLmlzRG9jdW1lbnQgPSBpZGVudGl0eS5pc0RvY3VtZW50O1xuZXhwb3J0cy5pc01hcCA9IGlkZW50aXR5LmlzTWFwO1xuZXhwb3J0cy5pc05vZGUgPSBpZGVudGl0eS5pc05vZGU7XG5leHBvcnRzLmlzUGFpciA9IGlkZW50aXR5LmlzUGFpcjtcbmV4cG9ydHMuaXNTY2FsYXIgPSBpZGVudGl0eS5pc1NjYWxhcjtcbmV4cG9ydHMuaXNTZXEgPSBpZGVudGl0eS5pc1NlcTtcbmV4cG9ydHMuUGFpciA9IFBhaXIuUGFpcjtcbmV4cG9ydHMuU2NhbGFyID0gU2NhbGFyLlNjYWxhcjtcbmV4cG9ydHMuWUFNTE1hcCA9IFlBTUxNYXAuWUFNTE1hcDtcbmV4cG9ydHMuWUFNTFNlcSA9IFlBTUxTZXEuWUFNTFNlcTtcbmV4cG9ydHMuQ1NUID0gY3N0O1xuZXhwb3J0cy5MZXhlciA9IGxleGVyLkxleGVyO1xuZXhwb3J0cy5MaW5lQ291bnRlciA9IGxpbmVDb3VudGVyLkxpbmVDb3VudGVyO1xuZXhwb3J0cy5QYXJzZXIgPSBwYXJzZXIuUGFyc2VyO1xuZXhwb3J0cy5wYXJzZSA9IHB1YmxpY0FwaS5wYXJzZTtcbmV4cG9ydHMucGFyc2VBbGxEb2N1bWVudHMgPSBwdWJsaWNBcGkucGFyc2VBbGxEb2N1bWVudHM7XG5leHBvcnRzLnBhcnNlRG9jdW1lbnQgPSBwdWJsaWNBcGkucGFyc2VEb2N1bWVudDtcbmV4cG9ydHMuc3RyaW5naWZ5ID0gcHVibGljQXBpLnN0cmluZ2lmeTtcbmV4cG9ydHMudmlzaXQgPSB2aXNpdC52aXNpdDtcbmV4cG9ydHMudmlzaXRBc3luYyA9IHZpc2l0LnZpc2l0QXN5bmM7XG4iLCAiKGZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHJvb3QsIGZhY3RvcnkpIHtcblx0aWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgPT09ICdvYmplY3QnKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wiZmVhdGhlclwiXSA9IGZhY3RvcnkoKTtcblx0ZWxzZVxuXHRcdHJvb3RbXCJmZWF0aGVyXCJdID0gZmFjdG9yeSgpO1xufSkodHlwZW9mIHNlbGYgIT09ICd1bmRlZmluZWQnID8gc2VsZiA6IHRoaXMsIGZ1bmN0aW9uKCkge1xucmV0dXJuICIsICIgXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuXG4gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXG4gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuIFx0XHR9XG4gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbiBcdFx0XHRpOiBtb2R1bGVJZCxcbiBcdFx0XHRsOiBmYWxzZSxcbiBcdFx0XHRleHBvcnRzOiB7fVxuIFx0XHR9O1xuXG4gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcblxuIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4gXHR9XG5cblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHtcbiBcdFx0XHRcdGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gXHRcdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuIFx0XHRcdFx0Z2V0OiBnZXR0ZXJcbiBcdFx0XHR9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yID0gZnVuY3Rpb24oZXhwb3J0cykge1xuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcblxuXG4gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbiBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IDApO1xuIiwgIi8qIVxuICBDb3B5cmlnaHQgKGMpIDIwMTYgSmVkIFdhdHNvbi5cbiAgTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlIChNSVQpLCBzZWVcbiAgaHR0cDovL2plZHdhdHNvbi5naXRodWIuaW8vY2xhc3NuYW1lc1xuKi9cbi8qIGdsb2JhbCBkZWZpbmUgKi9cblxuKGZ1bmN0aW9uICgpIHtcblx0J3VzZSBzdHJpY3QnO1xuXG5cdHZhciBjbGFzc05hbWVzID0gKGZ1bmN0aW9uICgpIHtcblx0XHQvLyBkb24ndCBpbmhlcml0IGZyb20gT2JqZWN0IHNvIHdlIGNhbiBza2lwIGhhc093blByb3BlcnR5IGNoZWNrIGxhdGVyXG5cdFx0Ly8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNTUxODMyOC9jcmVhdGluZy1qcy1vYmplY3Qtd2l0aC1vYmplY3QtY3JlYXRlbnVsbCNhbnN3ZXItMjEwNzkyMzJcblx0XHRmdW5jdGlvbiBTdG9yYWdlT2JqZWN0KCkge31cblx0XHRTdG9yYWdlT2JqZWN0LnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG5cblx0XHRmdW5jdGlvbiBfcGFyc2VBcnJheSAocmVzdWx0U2V0LCBhcnJheSkge1xuXHRcdFx0dmFyIGxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuXHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuXHRcdFx0XHRfcGFyc2UocmVzdWx0U2V0LCBhcnJheVtpXSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dmFyIGhhc093biA9IHt9Lmhhc093blByb3BlcnR5O1xuXG5cdFx0ZnVuY3Rpb24gX3BhcnNlTnVtYmVyIChyZXN1bHRTZXQsIG51bSkge1xuXHRcdFx0cmVzdWx0U2V0W251bV0gPSB0cnVlO1xuXHRcdH1cblxuXHRcdGZ1bmN0aW9uIF9wYXJzZU9iamVjdCAocmVzdWx0U2V0LCBvYmplY3QpIHtcblx0XHRcdGZvciAodmFyIGsgaW4gb2JqZWN0KSB7XG5cdFx0XHRcdGlmIChoYXNPd24uY2FsbChvYmplY3QsIGspKSB7XG5cdFx0XHRcdFx0Ly8gc2V0IHZhbHVlIHRvIGZhbHNlIGluc3RlYWQgb2YgZGVsZXRpbmcgaXQgdG8gYXZvaWQgY2hhbmdpbmcgb2JqZWN0IHN0cnVjdHVyZVxuXHRcdFx0XHRcdC8vIGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTIvMTEvd3JpdGluZy1mYXN0LW1lbW9yeS1lZmZpY2llbnQtamF2YXNjcmlwdC8jZGUtcmVmZXJlbmNpbmctbWlzY29uY2VwdGlvbnNcblx0XHRcdFx0XHRyZXN1bHRTZXRba10gPSAhIW9iamVjdFtrXTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHZhciBTUEFDRSA9IC9cXHMrLztcblx0XHRmdW5jdGlvbiBfcGFyc2VTdHJpbmcgKHJlc3VsdFNldCwgc3RyKSB7XG5cdFx0XHR2YXIgYXJyYXkgPSBzdHIuc3BsaXQoU1BBQ0UpO1xuXHRcdFx0dmFyIGxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcblxuXHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuXHRcdFx0XHRyZXN1bHRTZXRbYXJyYXlbaV1dID0gdHJ1ZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRmdW5jdGlvbiBfcGFyc2UgKHJlc3VsdFNldCwgYXJnKSB7XG5cdFx0XHRpZiAoIWFyZykgcmV0dXJuO1xuXHRcdFx0dmFyIGFyZ1R5cGUgPSB0eXBlb2YgYXJnO1xuXG5cdFx0XHQvLyAnZm9vIGJhcidcblx0XHRcdGlmIChhcmdUeXBlID09PSAnc3RyaW5nJykge1xuXHRcdFx0XHRfcGFyc2VTdHJpbmcocmVzdWx0U2V0LCBhcmcpO1xuXG5cdFx0XHQvLyBbJ2ZvbycsICdiYXInLCAuLi5dXG5cdFx0XHR9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoYXJnKSkge1xuXHRcdFx0XHRfcGFyc2VBcnJheShyZXN1bHRTZXQsIGFyZyk7XG5cblx0XHRcdC8vIHsgJ2Zvbyc6IHRydWUsIC4uLiB9XG5cdFx0XHR9IGVsc2UgaWYgKGFyZ1R5cGUgPT09ICdvYmplY3QnKSB7XG5cdFx0XHRcdF9wYXJzZU9iamVjdChyZXN1bHRTZXQsIGFyZyk7XG5cblx0XHRcdC8vICcxMzAnXG5cdFx0XHR9IGVsc2UgaWYgKGFyZ1R5cGUgPT09ICdudW1iZXInKSB7XG5cdFx0XHRcdF9wYXJzZU51bWJlcihyZXN1bHRTZXQsIGFyZyk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0ZnVuY3Rpb24gX2NsYXNzTmFtZXMgKCkge1xuXHRcdFx0Ly8gZG9uJ3QgbGVhayBhcmd1bWVudHNcblx0XHRcdC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9wZXRrYWFudG9ub3YvYmx1ZWJpcmQvd2lraS9PcHRpbWl6YXRpb24ta2lsbGVycyMzMi1sZWFraW5nLWFyZ3VtZW50c1xuXHRcdFx0dmFyIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGg7XG5cdFx0XHR2YXIgYXJncyA9IEFycmF5KGxlbik7XG5cdFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG5cdFx0XHRcdGFyZ3NbaV0gPSBhcmd1bWVudHNbaV07XG5cdFx0XHR9XG5cblx0XHRcdHZhciBjbGFzc1NldCA9IG5ldyBTdG9yYWdlT2JqZWN0KCk7XG5cdFx0XHRfcGFyc2VBcnJheShjbGFzc1NldCwgYXJncyk7XG5cblx0XHRcdHZhciBsaXN0ID0gW107XG5cblx0XHRcdGZvciAodmFyIGsgaW4gY2xhc3NTZXQpIHtcblx0XHRcdFx0aWYgKGNsYXNzU2V0W2tdKSB7XG5cdFx0XHRcdFx0bGlzdC5wdXNoKGspXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIGxpc3Quam9pbignICcpO1xuXHRcdH1cblxuXHRcdHJldHVybiBfY2xhc3NOYW1lcztcblx0fSkoKTtcblxuXHRpZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcblx0XHRtb2R1bGUuZXhwb3J0cyA9IGNsYXNzTmFtZXM7XG5cdH0gZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgZGVmaW5lLmFtZCA9PT0gJ29iamVjdCcgJiYgZGVmaW5lLmFtZCkge1xuXHRcdC8vIHJlZ2lzdGVyIGFzICdjbGFzc25hbWVzJywgY29uc2lzdGVudCB3aXRoIG5wbSBwYWNrYWdlIG5hbWVcblx0XHRkZWZpbmUoJ2NsYXNzbmFtZXMnLCBbXSwgZnVuY3Rpb24gKCkge1xuXHRcdFx0cmV0dXJuIGNsYXNzTmFtZXM7XG5cdFx0fSk7XG5cdH0gZWxzZSB7XG5cdFx0d2luZG93LmNsYXNzTmFtZXMgPSBjbGFzc05hbWVzO1xuXHR9XG59KCkpO1xuIiwgInJlcXVpcmUoJy4uLy4uL21vZHVsZXMvZXMuc3RyaW5nLml0ZXJhdG9yJyk7XG5yZXF1aXJlKCcuLi8uLi9tb2R1bGVzL2VzLmFycmF5LmZyb20nKTtcbnZhciBwYXRoID0gcmVxdWlyZSgnLi4vLi4vaW50ZXJuYWxzL3BhdGgnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBwYXRoLkFycmF5LmZyb207XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgaWYgKHR5cGVvZiBpdCAhPSAnZnVuY3Rpb24nKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKFN0cmluZyhpdCkgKyAnIGlzIG5vdCBhIGZ1bmN0aW9uJyk7XG4gIH0gcmV0dXJuIGl0O1xufTtcbiIsICJ2YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtb2JqZWN0Jyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmICghaXNPYmplY3QoaXQpKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKFN0cmluZyhpdCkgKyAnIGlzIG5vdCBhbiBvYmplY3QnKTtcbiAgfSByZXR1cm4gaXQ7XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciBiaW5kID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2JpbmQtY29udGV4dCcpO1xudmFyIHRvT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLW9iamVjdCcpO1xudmFyIGNhbGxXaXRoU2FmZUl0ZXJhdGlvbkNsb3NpbmcgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY2FsbC13aXRoLXNhZmUtaXRlcmF0aW9uLWNsb3NpbmcnKTtcbnZhciBpc0FycmF5SXRlcmF0b3JNZXRob2QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtYXJyYXktaXRlcmF0b3ItbWV0aG9kJyk7XG52YXIgdG9MZW5ndGggPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8tbGVuZ3RoJyk7XG52YXIgY3JlYXRlUHJvcGVydHkgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY3JlYXRlLXByb3BlcnR5Jyk7XG52YXIgZ2V0SXRlcmF0b3JNZXRob2QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2V0LWl0ZXJhdG9yLW1ldGhvZCcpO1xuXG4vLyBgQXJyYXkuZnJvbWAgbWV0aG9kXG4vLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1hcnJheS5mcm9tXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGZyb20oYXJyYXlMaWtlIC8qICwgbWFwZm4gPSB1bmRlZmluZWQsIHRoaXNBcmcgPSB1bmRlZmluZWQgKi8pIHtcbiAgdmFyIE8gPSB0b09iamVjdChhcnJheUxpa2UpO1xuICB2YXIgQyA9IHR5cGVvZiB0aGlzID09ICdmdW5jdGlvbicgPyB0aGlzIDogQXJyYXk7XG4gIHZhciBhcmd1bWVudHNMZW5ndGggPSBhcmd1bWVudHMubGVuZ3RoO1xuICB2YXIgbWFwZm4gPSBhcmd1bWVudHNMZW5ndGggPiAxID8gYXJndW1lbnRzWzFdIDogdW5kZWZpbmVkO1xuICB2YXIgbWFwcGluZyA9IG1hcGZuICE9PSB1bmRlZmluZWQ7XG4gIHZhciBpbmRleCA9IDA7XG4gIHZhciBpdGVyYXRvck1ldGhvZCA9IGdldEl0ZXJhdG9yTWV0aG9kKE8pO1xuICB2YXIgbGVuZ3RoLCByZXN1bHQsIHN0ZXAsIGl0ZXJhdG9yO1xuICBpZiAobWFwcGluZykgbWFwZm4gPSBiaW5kKG1hcGZuLCBhcmd1bWVudHNMZW5ndGggPiAyID8gYXJndW1lbnRzWzJdIDogdW5kZWZpbmVkLCAyKTtcbiAgLy8gaWYgdGhlIHRhcmdldCBpcyBub3QgaXRlcmFibGUgb3IgaXQncyBhbiBhcnJheSB3aXRoIHRoZSBkZWZhdWx0IGl0ZXJhdG9yIC0gdXNlIGEgc2ltcGxlIGNhc2VcbiAgaWYgKGl0ZXJhdG9yTWV0aG9kICE9IHVuZGVmaW5lZCAmJiAhKEMgPT0gQXJyYXkgJiYgaXNBcnJheUl0ZXJhdG9yTWV0aG9kKGl0ZXJhdG9yTWV0aG9kKSkpIHtcbiAgICBpdGVyYXRvciA9IGl0ZXJhdG9yTWV0aG9kLmNhbGwoTyk7XG4gICAgcmVzdWx0ID0gbmV3IEMoKTtcbiAgICBmb3IgKDshKHN0ZXAgPSBpdGVyYXRvci5uZXh0KCkpLmRvbmU7IGluZGV4KyspIHtcbiAgICAgIGNyZWF0ZVByb3BlcnR5KHJlc3VsdCwgaW5kZXgsIG1hcHBpbmdcbiAgICAgICAgPyBjYWxsV2l0aFNhZmVJdGVyYXRpb25DbG9zaW5nKGl0ZXJhdG9yLCBtYXBmbiwgW3N0ZXAudmFsdWUsIGluZGV4XSwgdHJ1ZSlcbiAgICAgICAgOiBzdGVwLnZhbHVlXG4gICAgICApO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBsZW5ndGggPSB0b0xlbmd0aChPLmxlbmd0aCk7XG4gICAgcmVzdWx0ID0gbmV3IEMobGVuZ3RoKTtcbiAgICBmb3IgKDtsZW5ndGggPiBpbmRleDsgaW5kZXgrKykge1xuICAgICAgY3JlYXRlUHJvcGVydHkocmVzdWx0LCBpbmRleCwgbWFwcGluZyA/IG1hcGZuKE9baW5kZXhdLCBpbmRleCkgOiBPW2luZGV4XSk7XG4gICAgfVxuICB9XG4gIHJlc3VsdC5sZW5ndGggPSBpbmRleDtcbiAgcmV0dXJuIHJlc3VsdDtcbn07XG4iLCAidmFyIHRvSW5kZXhlZE9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1pbmRleGVkLW9iamVjdCcpO1xudmFyIHRvTGVuZ3RoID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLWxlbmd0aCcpO1xudmFyIHRvQWJzb2x1dGVJbmRleCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1hYnNvbHV0ZS1pbmRleCcpO1xuXG4vLyBgQXJyYXkucHJvdG90eXBlLnsgaW5kZXhPZiwgaW5jbHVkZXMgfWAgbWV0aG9kcyBpbXBsZW1lbnRhdGlvblxuLy8gZmFsc2UgLT4gQXJyYXkjaW5kZXhPZlxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtYXJyYXkucHJvdG90eXBlLmluZGV4b2Zcbi8vIHRydWUgIC0+IEFycmF5I2luY2x1ZGVzXG4vLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1hcnJheS5wcm90b3R5cGUuaW5jbHVkZXNcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKElTX0lOQ0xVREVTKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoJHRoaXMsIGVsLCBmcm9tSW5kZXgpIHtcbiAgICB2YXIgTyA9IHRvSW5kZXhlZE9iamVjdCgkdGhpcyk7XG4gICAgdmFyIGxlbmd0aCA9IHRvTGVuZ3RoKE8ubGVuZ3RoKTtcbiAgICB2YXIgaW5kZXggPSB0b0Fic29sdXRlSW5kZXgoZnJvbUluZGV4LCBsZW5ndGgpO1xuICAgIHZhciB2YWx1ZTtcbiAgICAvLyBBcnJheSNpbmNsdWRlcyB1c2VzIFNhbWVWYWx1ZVplcm8gZXF1YWxpdHkgYWxnb3JpdGhtXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZVxuICAgIGlmIChJU19JTkNMVURFUyAmJiBlbCAhPSBlbCkgd2hpbGUgKGxlbmd0aCA+IGluZGV4KSB7XG4gICAgICB2YWx1ZSA9IE9baW5kZXgrK107XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlXG4gICAgICBpZiAodmFsdWUgIT0gdmFsdWUpIHJldHVybiB0cnVlO1xuICAgIC8vIEFycmF5I2luZGV4T2YgaWdub3JlcyBob2xlcywgQXJyYXkjaW5jbHVkZXMgLSBub3RcbiAgICB9IGVsc2UgZm9yICg7bGVuZ3RoID4gaW5kZXg7IGluZGV4KyspIGlmIChJU19JTkNMVURFUyB8fCBpbmRleCBpbiBPKSB7XG4gICAgICBpZiAoT1tpbmRleF0gPT09IGVsKSByZXR1cm4gSVNfSU5DTFVERVMgfHwgaW5kZXggfHwgMDtcbiAgICB9IHJldHVybiAhSVNfSU5DTFVERVMgJiYgLTE7XG4gIH07XG59O1xuIiwgInZhciBhRnVuY3Rpb24gPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYS1mdW5jdGlvbicpO1xuXG4vLyBvcHRpb25hbCAvIHNpbXBsZSBjb250ZXh0IGJpbmRpbmdcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGZuLCB0aGF0LCBsZW5ndGgpIHtcbiAgYUZ1bmN0aW9uKGZuKTtcbiAgaWYgKHRoYXQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZuO1xuICBzd2l0Y2ggKGxlbmd0aCkge1xuICAgIGNhc2UgMDogcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQpO1xuICAgIH07XG4gICAgY2FzZSAxOiByZXR1cm4gZnVuY3Rpb24gKGEpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEpO1xuICAgIH07XG4gICAgY2FzZSAyOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIpO1xuICAgIH07XG4gICAgY2FzZSAzOiByZXR1cm4gZnVuY3Rpb24gKGEsIGIsIGMpIHtcbiAgICAgIHJldHVybiBmbi5jYWxsKHRoYXQsIGEsIGIsIGMpO1xuICAgIH07XG4gIH1cbiAgcmV0dXJuIGZ1bmN0aW9uICgvKiAuLi5hcmdzICovKSB7XG4gICAgcmV0dXJuIGZuLmFwcGx5KHRoYXQsIGFyZ3VtZW50cyk7XG4gIH07XG59O1xuIiwgInZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9hbi1vYmplY3QnKTtcblxuLy8gY2FsbCBzb21ldGhpbmcgb24gaXRlcmF0b3Igc3RlcCB3aXRoIHNhZmUgY2xvc2luZyBvbiBlcnJvclxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXRlcmF0b3IsIGZuLCB2YWx1ZSwgRU5UUklFUykge1xuICB0cnkge1xuICAgIHJldHVybiBFTlRSSUVTID8gZm4oYW5PYmplY3QodmFsdWUpWzBdLCB2YWx1ZVsxXSkgOiBmbih2YWx1ZSk7XG4gIC8vIDcuNC42IEl0ZXJhdG9yQ2xvc2UoaXRlcmF0b3IsIGNvbXBsZXRpb24pXG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgdmFyIHJldHVybk1ldGhvZCA9IGl0ZXJhdG9yWydyZXR1cm4nXTtcbiAgICBpZiAocmV0dXJuTWV0aG9kICE9PSB1bmRlZmluZWQpIGFuT2JqZWN0KHJldHVybk1ldGhvZC5jYWxsKGl0ZXJhdG9yKSk7XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cbn07XG4iLCAidmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xuXG52YXIgSVRFUkFUT1IgPSB3ZWxsS25vd25TeW1ib2woJ2l0ZXJhdG9yJyk7XG52YXIgU0FGRV9DTE9TSU5HID0gZmFsc2U7XG5cbnRyeSB7XG4gIHZhciBjYWxsZWQgPSAwO1xuICB2YXIgaXRlcmF0b3JXaXRoUmV0dXJuID0ge1xuICAgIG5leHQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB7IGRvbmU6ICEhY2FsbGVkKysgfTtcbiAgICB9LFxuICAgICdyZXR1cm4nOiBmdW5jdGlvbiAoKSB7XG4gICAgICBTQUZFX0NMT1NJTkcgPSB0cnVlO1xuICAgIH1cbiAgfTtcbiAgaXRlcmF0b3JXaXRoUmV0dXJuW0lURVJBVE9SXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXRocm93LWxpdGVyYWxcbiAgQXJyYXkuZnJvbShpdGVyYXRvcldpdGhSZXR1cm4sIGZ1bmN0aW9uICgpIHsgdGhyb3cgMjsgfSk7XG59IGNhdGNoIChlcnJvcikgeyAvKiBlbXB0eSAqLyB9XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGV4ZWMsIFNLSVBfQ0xPU0lORykge1xuICBpZiAoIVNLSVBfQ0xPU0lORyAmJiAhU0FGRV9DTE9TSU5HKSByZXR1cm4gZmFsc2U7XG4gIHZhciBJVEVSQVRJT05fU1VQUE9SVCA9IGZhbHNlO1xuICB0cnkge1xuICAgIHZhciBvYmplY3QgPSB7fTtcbiAgICBvYmplY3RbSVRFUkFUT1JdID0gZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmV4dDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiB7IGRvbmU6IElURVJBVElPTl9TVVBQT1JUID0gdHJ1ZSB9O1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH07XG4gICAgZXhlYyhvYmplY3QpO1xuICB9IGNhdGNoIChlcnJvcikgeyAvKiBlbXB0eSAqLyB9XG4gIHJldHVybiBJVEVSQVRJT05fU1VQUE9SVDtcbn07XG4iLCAidmFyIHRvU3RyaW5nID0ge30udG9TdHJpbmc7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiB0b1N0cmluZy5jYWxsKGl0KS5zbGljZSg4LCAtMSk7XG59O1xuIiwgInZhciBjbGFzc29mUmF3ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NsYXNzb2YtcmF3Jyk7XG52YXIgd2VsbEtub3duU3ltYm9sID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3dlbGwta25vd24tc3ltYm9sJyk7XG5cbnZhciBUT19TVFJJTkdfVEFHID0gd2VsbEtub3duU3ltYm9sKCd0b1N0cmluZ1RhZycpO1xuLy8gRVMzIHdyb25nIGhlcmVcbnZhciBDT1JSRUNUX0FSR1VNRU5UUyA9IGNsYXNzb2ZSYXcoZnVuY3Rpb24gKCkgeyByZXR1cm4gYXJndW1lbnRzOyB9KCkpID09ICdBcmd1bWVudHMnO1xuXG4vLyBmYWxsYmFjayBmb3IgSUUxMSBTY3JpcHQgQWNjZXNzIERlbmllZCBlcnJvclxudmFyIHRyeUdldCA9IGZ1bmN0aW9uIChpdCwga2V5KSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGl0W2tleV07XG4gIH0gY2F0Y2ggKGVycm9yKSB7IC8qIGVtcHR5ICovIH1cbn07XG5cbi8vIGdldHRpbmcgdGFnIGZyb20gRVM2KyBgT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZ2Bcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIHZhciBPLCB0YWcsIHJlc3VsdDtcbiAgcmV0dXJuIGl0ID09PSB1bmRlZmluZWQgPyAnVW5kZWZpbmVkJyA6IGl0ID09PSBudWxsID8gJ051bGwnXG4gICAgLy8gQEB0b1N0cmluZ1RhZyBjYXNlXG4gICAgOiB0eXBlb2YgKHRhZyA9IHRyeUdldChPID0gT2JqZWN0KGl0KSwgVE9fU1RSSU5HX1RBRykpID09ICdzdHJpbmcnID8gdGFnXG4gICAgLy8gYnVpbHRpblRhZyBjYXNlXG4gICAgOiBDT1JSRUNUX0FSR1VNRU5UUyA/IGNsYXNzb2ZSYXcoTylcbiAgICAvLyBFUzMgYXJndW1lbnRzIGZhbGxiYWNrXG4gICAgOiAocmVzdWx0ID0gY2xhc3NvZlJhdyhPKSkgPT0gJ09iamVjdCcgJiYgdHlwZW9mIE8uY2FsbGVlID09ICdmdW5jdGlvbicgPyAnQXJndW1lbnRzJyA6IHJlc3VsdDtcbn07XG4iLCAidmFyIGhhcyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oYXMnKTtcbnZhciBvd25LZXlzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL293bi1rZXlzJyk7XG52YXIgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yTW9kdWxlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL29iamVjdC1nZXQtb3duLXByb3BlcnR5LWRlc2NyaXB0b3InKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHRhcmdldCwgc291cmNlKSB7XG4gIHZhciBrZXlzID0gb3duS2V5cyhzb3VyY2UpO1xuICB2YXIgZGVmaW5lUHJvcGVydHkgPSBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mO1xuICB2YXIgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yTW9kdWxlLmY7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuICAgIGlmICghaGFzKHRhcmdldCwga2V5KSkgZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIGdldE93blByb3BlcnR5RGVzY3JpcHRvcihzb3VyY2UsIGtleSkpO1xuICB9XG59O1xuIiwgInZhciBmYWlscyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9mYWlscycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9ICFmYWlscyhmdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIEYoKSB7IC8qIGVtcHR5ICovIH1cbiAgRi5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBudWxsO1xuICByZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKG5ldyBGKCkpICE9PSBGLnByb3RvdHlwZTtcbn0pO1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciBJdGVyYXRvclByb3RvdHlwZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pdGVyYXRvcnMtY29yZScpLkl0ZXJhdG9yUHJvdG90eXBlO1xudmFyIGNyZWF0ZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtY3JlYXRlJyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG52YXIgc2V0VG9TdHJpbmdUYWcgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2V0LXRvLXN0cmluZy10YWcnKTtcbnZhciBJdGVyYXRvcnMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXRlcmF0b3JzJyk7XG5cbnZhciByZXR1cm5UaGlzID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoSXRlcmF0b3JDb25zdHJ1Y3RvciwgTkFNRSwgbmV4dCkge1xuICB2YXIgVE9fU1RSSU5HX1RBRyA9IE5BTUUgKyAnIEl0ZXJhdG9yJztcbiAgSXRlcmF0b3JDb25zdHJ1Y3Rvci5wcm90b3R5cGUgPSBjcmVhdGUoSXRlcmF0b3JQcm90b3R5cGUsIHsgbmV4dDogY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yKDEsIG5leHQpIH0pO1xuICBzZXRUb1N0cmluZ1RhZyhJdGVyYXRvckNvbnN0cnVjdG9yLCBUT19TVFJJTkdfVEFHLCBmYWxzZSwgdHJ1ZSk7XG4gIEl0ZXJhdG9yc1tUT19TVFJJTkdfVEFHXSA9IHJldHVyblRoaXM7XG4gIHJldHVybiBJdGVyYXRvckNvbnN0cnVjdG9yO1xufTtcbiIsICJtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChiaXRtYXAsIHZhbHVlKSB7XG4gIHJldHVybiB7XG4gICAgZW51bWVyYWJsZTogIShiaXRtYXAgJiAxKSxcbiAgICBjb25maWd1cmFibGU6ICEoYml0bWFwICYgMiksXG4gICAgd3JpdGFibGU6ICEoYml0bWFwICYgNCksXG4gICAgdmFsdWU6IHZhbHVlXG4gIH07XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciB0b1ByaW1pdGl2ZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1wcmltaXRpdmUnKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKG9iamVjdCwga2V5LCB2YWx1ZSkge1xuICB2YXIgcHJvcGVydHlLZXkgPSB0b1ByaW1pdGl2ZShrZXkpO1xuICBpZiAocHJvcGVydHlLZXkgaW4gb2JqZWN0KSBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mKG9iamVjdCwgcHJvcGVydHlLZXksIGNyZWF0ZVByb3BlcnR5RGVzY3JpcHRvcigwLCB2YWx1ZSkpO1xuICBlbHNlIG9iamVjdFtwcm9wZXJ0eUtleV0gPSB2YWx1ZTtcbn07XG4iLCAiJ3VzZSBzdHJpY3QnO1xudmFyICQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZXhwb3J0Jyk7XG52YXIgY3JlYXRlSXRlcmF0b3JDb25zdHJ1Y3RvciA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jcmVhdGUtaXRlcmF0b3ItY29uc3RydWN0b3InKTtcbnZhciBnZXRQcm90b3R5cGVPZiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZ2V0LXByb3RvdHlwZS1vZicpO1xudmFyIHNldFByb3RvdHlwZU9mID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL29iamVjdC1zZXQtcHJvdG90eXBlLW9mJyk7XG52YXIgc2V0VG9TdHJpbmdUYWcgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2V0LXRvLXN0cmluZy10YWcnKTtcbnZhciBoaWRlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGUnKTtcbnZhciByZWRlZmluZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9yZWRlZmluZScpO1xudmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xudmFyIElTX1BVUkUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtcHVyZScpO1xudmFyIEl0ZXJhdG9ycyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pdGVyYXRvcnMnKTtcbnZhciBJdGVyYXRvcnNDb3JlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2l0ZXJhdG9ycy1jb3JlJyk7XG5cbnZhciBJdGVyYXRvclByb3RvdHlwZSA9IEl0ZXJhdG9yc0NvcmUuSXRlcmF0b3JQcm90b3R5cGU7XG52YXIgQlVHR1lfU0FGQVJJX0lURVJBVE9SUyA9IEl0ZXJhdG9yc0NvcmUuQlVHR1lfU0FGQVJJX0lURVJBVE9SUztcbnZhciBJVEVSQVRPUiA9IHdlbGxLbm93blN5bWJvbCgnaXRlcmF0b3InKTtcbnZhciBLRVlTID0gJ2tleXMnO1xudmFyIFZBTFVFUyA9ICd2YWx1ZXMnO1xudmFyIEVOVFJJRVMgPSAnZW50cmllcyc7XG5cbnZhciByZXR1cm5UaGlzID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoSXRlcmFibGUsIE5BTUUsIEl0ZXJhdG9yQ29uc3RydWN0b3IsIG5leHQsIERFRkFVTFQsIElTX1NFVCwgRk9SQ0VEKSB7XG4gIGNyZWF0ZUl0ZXJhdG9yQ29uc3RydWN0b3IoSXRlcmF0b3JDb25zdHJ1Y3RvciwgTkFNRSwgbmV4dCk7XG5cbiAgdmFyIGdldEl0ZXJhdGlvbk1ldGhvZCA9IGZ1bmN0aW9uIChLSU5EKSB7XG4gICAgaWYgKEtJTkQgPT09IERFRkFVTFQgJiYgZGVmYXVsdEl0ZXJhdG9yKSByZXR1cm4gZGVmYXVsdEl0ZXJhdG9yO1xuICAgIGlmICghQlVHR1lfU0FGQVJJX0lURVJBVE9SUyAmJiBLSU5EIGluIEl0ZXJhYmxlUHJvdG90eXBlKSByZXR1cm4gSXRlcmFibGVQcm90b3R5cGVbS0lORF07XG4gICAgc3dpdGNoIChLSU5EKSB7XG4gICAgICBjYXNlIEtFWVM6IHJldHVybiBmdW5jdGlvbiBrZXlzKCkgeyByZXR1cm4gbmV3IEl0ZXJhdG9yQ29uc3RydWN0b3IodGhpcywgS0lORCk7IH07XG4gICAgICBjYXNlIFZBTFVFUzogcmV0dXJuIGZ1bmN0aW9uIHZhbHVlcygpIHsgcmV0dXJuIG5ldyBJdGVyYXRvckNvbnN0cnVjdG9yKHRoaXMsIEtJTkQpOyB9O1xuICAgICAgY2FzZSBFTlRSSUVTOiByZXR1cm4gZnVuY3Rpb24gZW50cmllcygpIHsgcmV0dXJuIG5ldyBJdGVyYXRvckNvbnN0cnVjdG9yKHRoaXMsIEtJTkQpOyB9O1xuICAgIH0gcmV0dXJuIGZ1bmN0aW9uICgpIHsgcmV0dXJuIG5ldyBJdGVyYXRvckNvbnN0cnVjdG9yKHRoaXMpOyB9O1xuICB9O1xuXG4gIHZhciBUT19TVFJJTkdfVEFHID0gTkFNRSArICcgSXRlcmF0b3InO1xuICB2YXIgSU5DT1JSRUNUX1ZBTFVFU19OQU1FID0gZmFsc2U7XG4gIHZhciBJdGVyYWJsZVByb3RvdHlwZSA9IEl0ZXJhYmxlLnByb3RvdHlwZTtcbiAgdmFyIG5hdGl2ZUl0ZXJhdG9yID0gSXRlcmFibGVQcm90b3R5cGVbSVRFUkFUT1JdXG4gICAgfHwgSXRlcmFibGVQcm90b3R5cGVbJ0BAaXRlcmF0b3InXVxuICAgIHx8IERFRkFVTFQgJiYgSXRlcmFibGVQcm90b3R5cGVbREVGQVVMVF07XG4gIHZhciBkZWZhdWx0SXRlcmF0b3IgPSAhQlVHR1lfU0FGQVJJX0lURVJBVE9SUyAmJiBuYXRpdmVJdGVyYXRvciB8fCBnZXRJdGVyYXRpb25NZXRob2QoREVGQVVMVCk7XG4gIHZhciBhbnlOYXRpdmVJdGVyYXRvciA9IE5BTUUgPT0gJ0FycmF5JyA/IEl0ZXJhYmxlUHJvdG90eXBlLmVudHJpZXMgfHwgbmF0aXZlSXRlcmF0b3IgOiBuYXRpdmVJdGVyYXRvcjtcbiAgdmFyIEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSwgbWV0aG9kcywgS0VZO1xuXG4gIC8vIGZpeCBuYXRpdmVcbiAgaWYgKGFueU5hdGl2ZUl0ZXJhdG9yKSB7XG4gICAgQ3VycmVudEl0ZXJhdG9yUHJvdG90eXBlID0gZ2V0UHJvdG90eXBlT2YoYW55TmF0aXZlSXRlcmF0b3IuY2FsbChuZXcgSXRlcmFibGUoKSkpO1xuICAgIGlmIChJdGVyYXRvclByb3RvdHlwZSAhPT0gT2JqZWN0LnByb3RvdHlwZSAmJiBDdXJyZW50SXRlcmF0b3JQcm90b3R5cGUubmV4dCkge1xuICAgICAgaWYgKCFJU19QVVJFICYmIGdldFByb3RvdHlwZU9mKEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSkgIT09IEl0ZXJhdG9yUHJvdG90eXBlKSB7XG4gICAgICAgIGlmIChzZXRQcm90b3R5cGVPZikge1xuICAgICAgICAgIHNldFByb3RvdHlwZU9mKEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSwgSXRlcmF0b3JQcm90b3R5cGUpO1xuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBDdXJyZW50SXRlcmF0b3JQcm90b3R5cGVbSVRFUkFUT1JdICE9ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICBoaWRlKEN1cnJlbnRJdGVyYXRvclByb3RvdHlwZSwgSVRFUkFUT1IsIHJldHVyblRoaXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBTZXQgQEB0b1N0cmluZ1RhZyB0byBuYXRpdmUgaXRlcmF0b3JzXG4gICAgICBzZXRUb1N0cmluZ1RhZyhDdXJyZW50SXRlcmF0b3JQcm90b3R5cGUsIFRPX1NUUklOR19UQUcsIHRydWUsIHRydWUpO1xuICAgICAgaWYgKElTX1BVUkUpIEl0ZXJhdG9yc1tUT19TVFJJTkdfVEFHXSA9IHJldHVyblRoaXM7XG4gICAgfVxuICB9XG5cbiAgLy8gZml4IEFycmF5I3t2YWx1ZXMsIEBAaXRlcmF0b3J9Lm5hbWUgaW4gVjggLyBGRlxuICBpZiAoREVGQVVMVCA9PSBWQUxVRVMgJiYgbmF0aXZlSXRlcmF0b3IgJiYgbmF0aXZlSXRlcmF0b3IubmFtZSAhPT0gVkFMVUVTKSB7XG4gICAgSU5DT1JSRUNUX1ZBTFVFU19OQU1FID0gdHJ1ZTtcbiAgICBkZWZhdWx0SXRlcmF0b3IgPSBmdW5jdGlvbiB2YWx1ZXMoKSB7IHJldHVybiBuYXRpdmVJdGVyYXRvci5jYWxsKHRoaXMpOyB9O1xuICB9XG5cbiAgLy8gZGVmaW5lIGl0ZXJhdG9yXG4gIGlmICgoIUlTX1BVUkUgfHwgRk9SQ0VEKSAmJiBJdGVyYWJsZVByb3RvdHlwZVtJVEVSQVRPUl0gIT09IGRlZmF1bHRJdGVyYXRvcikge1xuICAgIGhpZGUoSXRlcmFibGVQcm90b3R5cGUsIElURVJBVE9SLCBkZWZhdWx0SXRlcmF0b3IpO1xuICB9XG4gIEl0ZXJhdG9yc1tOQU1FXSA9IGRlZmF1bHRJdGVyYXRvcjtcblxuICAvLyBleHBvcnQgYWRkaXRpb25hbCBtZXRob2RzXG4gIGlmIChERUZBVUxUKSB7XG4gICAgbWV0aG9kcyA9IHtcbiAgICAgIHZhbHVlczogZ2V0SXRlcmF0aW9uTWV0aG9kKFZBTFVFUyksXG4gICAgICBrZXlzOiBJU19TRVQgPyBkZWZhdWx0SXRlcmF0b3IgOiBnZXRJdGVyYXRpb25NZXRob2QoS0VZUyksXG4gICAgICBlbnRyaWVzOiBnZXRJdGVyYXRpb25NZXRob2QoRU5UUklFUylcbiAgICB9O1xuICAgIGlmIChGT1JDRUQpIGZvciAoS0VZIGluIG1ldGhvZHMpIHtcbiAgICAgIGlmIChCVUdHWV9TQUZBUklfSVRFUkFUT1JTIHx8IElOQ09SUkVDVF9WQUxVRVNfTkFNRSB8fCAhKEtFWSBpbiBJdGVyYWJsZVByb3RvdHlwZSkpIHtcbiAgICAgICAgcmVkZWZpbmUoSXRlcmFibGVQcm90b3R5cGUsIEtFWSwgbWV0aG9kc1tLRVldKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgJCh7IHRhcmdldDogTkFNRSwgcHJvdG86IHRydWUsIGZvcmNlZDogQlVHR1lfU0FGQVJJX0lURVJBVE9SUyB8fCBJTkNPUlJFQ1RfVkFMVUVTX05BTUUgfSwgbWV0aG9kcyk7XG4gIH1cblxuICByZXR1cm4gbWV0aG9kcztcbn07XG4iLCAidmFyIGZhaWxzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2ZhaWxzJyk7XG5cbi8vIFRoYW5rJ3MgSUU4IGZvciBoaXMgZnVubnkgZGVmaW5lUHJvcGVydHlcbm1vZHVsZS5leHBvcnRzID0gIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgJ2EnLCB7IGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfSB9KS5hICE9IDc7XG59KTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2lzLW9iamVjdCcpO1xuXG52YXIgZG9jdW1lbnQgPSBnbG9iYWwuZG9jdW1lbnQ7XG4vLyB0eXBlb2YgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCBpcyAnb2JqZWN0JyBpbiBvbGQgSUVcbnZhciBleGlzdCA9IGlzT2JqZWN0KGRvY3VtZW50KSAmJiBpc09iamVjdChkb2N1bWVudC5jcmVhdGVFbGVtZW50KTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIGV4aXN0ID8gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChpdCkgOiB7fTtcbn07XG4iLCAiLy8gSUU4LSBkb24ndCBlbnVtIGJ1ZyBrZXlzXG5tb2R1bGUuZXhwb3J0cyA9IFtcbiAgJ2NvbnN0cnVjdG9yJyxcbiAgJ2hhc093blByb3BlcnR5JyxcbiAgJ2lzUHJvdG90eXBlT2YnLFxuICAncHJvcGVydHlJc0VudW1lcmFibGUnLFxuICAndG9Mb2NhbGVTdHJpbmcnLFxuICAndG9TdHJpbmcnLFxuICAndmFsdWVPZidcbl07XG4iLCAidmFyIGdsb2JhbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9nbG9iYWwnKTtcbnZhciBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktZGVzY3JpcHRvcicpLmY7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRlJyk7XG52YXIgcmVkZWZpbmUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvcmVkZWZpbmUnKTtcbnZhciBzZXRHbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2V0LWdsb2JhbCcpO1xudmFyIGNvcHlDb25zdHJ1Y3RvclByb3BlcnRpZXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY29weS1jb25zdHJ1Y3Rvci1wcm9wZXJ0aWVzJyk7XG52YXIgaXNGb3JjZWQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtZm9yY2VkJyk7XG5cbi8qXG4gIG9wdGlvbnMudGFyZ2V0ICAgICAgLSBuYW1lIG9mIHRoZSB0YXJnZXQgb2JqZWN0XG4gIG9wdGlvbnMuZ2xvYmFsICAgICAgLSB0YXJnZXQgaXMgdGhlIGdsb2JhbCBvYmplY3RcbiAgb3B0aW9ucy5zdGF0ICAgICAgICAtIGV4cG9ydCBhcyBzdGF0aWMgbWV0aG9kcyBvZiB0YXJnZXRcbiAgb3B0aW9ucy5wcm90byAgICAgICAtIGV4cG9ydCBhcyBwcm90b3R5cGUgbWV0aG9kcyBvZiB0YXJnZXRcbiAgb3B0aW9ucy5yZWFsICAgICAgICAtIHJlYWwgcHJvdG90eXBlIG1ldGhvZCBmb3IgdGhlIGBwdXJlYCB2ZXJzaW9uXG4gIG9wdGlvbnMuZm9yY2VkICAgICAgLSBleHBvcnQgZXZlbiBpZiB0aGUgbmF0aXZlIGZlYXR1cmUgaXMgYXZhaWxhYmxlXG4gIG9wdGlvbnMuYmluZCAgICAgICAgLSBiaW5kIG1ldGhvZHMgdG8gdGhlIHRhcmdldCwgcmVxdWlyZWQgZm9yIHRoZSBgcHVyZWAgdmVyc2lvblxuICBvcHRpb25zLndyYXAgICAgICAgIC0gd3JhcCBjb25zdHJ1Y3RvcnMgdG8gcHJldmVudGluZyBnbG9iYWwgcG9sbHV0aW9uLCByZXF1aXJlZCBmb3IgdGhlIGBwdXJlYCB2ZXJzaW9uXG4gIG9wdGlvbnMudW5zYWZlICAgICAgLSB1c2UgdGhlIHNpbXBsZSBhc3NpZ25tZW50IG9mIHByb3BlcnR5IGluc3RlYWQgb2YgZGVsZXRlICsgZGVmaW5lUHJvcGVydHlcbiAgb3B0aW9ucy5zaGFtICAgICAgICAtIGFkZCBhIGZsYWcgdG8gbm90IGNvbXBsZXRlbHkgZnVsbCBwb2x5ZmlsbHNcbiAgb3B0aW9ucy5lbnVtZXJhYmxlICAtIGV4cG9ydCBhcyBlbnVtZXJhYmxlIHByb3BlcnR5XG4gIG9wdGlvbnMubm9UYXJnZXRHZXQgLSBwcmV2ZW50IGNhbGxpbmcgYSBnZXR0ZXIgb24gdGFyZ2V0XG4qL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob3B0aW9ucywgc291cmNlKSB7XG4gIHZhciBUQVJHRVQgPSBvcHRpb25zLnRhcmdldDtcbiAgdmFyIEdMT0JBTCA9IG9wdGlvbnMuZ2xvYmFsO1xuICB2YXIgU1RBVElDID0gb3B0aW9ucy5zdGF0O1xuICB2YXIgRk9SQ0VELCB0YXJnZXQsIGtleSwgdGFyZ2V0UHJvcGVydHksIHNvdXJjZVByb3BlcnR5LCBkZXNjcmlwdG9yO1xuICBpZiAoR0xPQkFMKSB7XG4gICAgdGFyZ2V0ID0gZ2xvYmFsO1xuICB9IGVsc2UgaWYgKFNUQVRJQykge1xuICAgIHRhcmdldCA9IGdsb2JhbFtUQVJHRVRdIHx8IHNldEdsb2JhbChUQVJHRVQsIHt9KTtcbiAgfSBlbHNlIHtcbiAgICB0YXJnZXQgPSAoZ2xvYmFsW1RBUkdFVF0gfHwge30pLnByb3RvdHlwZTtcbiAgfVxuICBpZiAodGFyZ2V0KSBmb3IgKGtleSBpbiBzb3VyY2UpIHtcbiAgICBzb3VyY2VQcm9wZXJ0eSA9IHNvdXJjZVtrZXldO1xuICAgIGlmIChvcHRpb25zLm5vVGFyZ2V0R2V0KSB7XG4gICAgICBkZXNjcmlwdG9yID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KTtcbiAgICAgIHRhcmdldFByb3BlcnR5ID0gZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLnZhbHVlO1xuICAgIH0gZWxzZSB0YXJnZXRQcm9wZXJ0eSA9IHRhcmdldFtrZXldO1xuICAgIEZPUkNFRCA9IGlzRm9yY2VkKEdMT0JBTCA/IGtleSA6IFRBUkdFVCArIChTVEFUSUMgPyAnLicgOiAnIycpICsga2V5LCBvcHRpb25zLmZvcmNlZCk7XG4gICAgLy8gY29udGFpbmVkIGluIHRhcmdldFxuICAgIGlmICghRk9SQ0VEICYmIHRhcmdldFByb3BlcnR5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICh0eXBlb2Ygc291cmNlUHJvcGVydHkgPT09IHR5cGVvZiB0YXJnZXRQcm9wZXJ0eSkgY29udGludWU7XG4gICAgICBjb3B5Q29uc3RydWN0b3JQcm9wZXJ0aWVzKHNvdXJjZVByb3BlcnR5LCB0YXJnZXRQcm9wZXJ0eSk7XG4gICAgfVxuICAgIC8vIGFkZCBhIGZsYWcgdG8gbm90IGNvbXBsZXRlbHkgZnVsbCBwb2x5ZmlsbHNcbiAgICBpZiAob3B0aW9ucy5zaGFtIHx8ICh0YXJnZXRQcm9wZXJ0eSAmJiB0YXJnZXRQcm9wZXJ0eS5zaGFtKSkge1xuICAgICAgaGlkZShzb3VyY2VQcm9wZXJ0eSwgJ3NoYW0nLCB0cnVlKTtcbiAgICB9XG4gICAgLy8gZXh0ZW5kIGdsb2JhbFxuICAgIHJlZGVmaW5lKHRhcmdldCwga2V5LCBzb3VyY2VQcm9wZXJ0eSwgb3B0aW9ucyk7XG4gIH1cbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoZXhlYykge1xuICB0cnkge1xuICAgIHJldHVybiAhIWV4ZWMoKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufTtcbiIsICJ2YXIgc2hhcmVkID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3NoYXJlZCcpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IHNoYXJlZCgnbmF0aXZlLWZ1bmN0aW9uLXRvLXN0cmluZycsIEZ1bmN0aW9uLnRvU3RyaW5nKTtcbiIsICJ2YXIgY2xhc3NvZiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jbGFzc29mJyk7XG52YXIgSXRlcmF0b3JzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2l0ZXJhdG9ycycpO1xudmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xuXG52YXIgSVRFUkFUT1IgPSB3ZWxsS25vd25TeW1ib2woJ2l0ZXJhdG9yJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGl0KSB7XG4gIGlmIChpdCAhPSB1bmRlZmluZWQpIHJldHVybiBpdFtJVEVSQVRPUl1cbiAgICB8fCBpdFsnQEBpdGVyYXRvciddXG4gICAgfHwgSXRlcmF0b3JzW2NsYXNzb2YoaXQpXTtcbn07XG4iLCAidmFyIE8gPSAnb2JqZWN0JztcbnZhciBjaGVjayA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXQgJiYgaXQuTWF0aCA9PSBNYXRoICYmIGl0O1xufTtcblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3psb2lyb2NrL2NvcmUtanMvaXNzdWVzLzg2I2lzc3VlY29tbWVudC0xMTU3NTkwMjhcbm1vZHVsZS5leHBvcnRzID1cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG4gIGNoZWNrKHR5cGVvZiBnbG9iYWxUaGlzID09IE8gJiYgZ2xvYmFsVGhpcykgfHxcbiAgY2hlY2sodHlwZW9mIHdpbmRvdyA9PSBPICYmIHdpbmRvdykgfHxcbiAgY2hlY2sodHlwZW9mIHNlbGYgPT0gTyAmJiBzZWxmKSB8fFxuICBjaGVjayh0eXBlb2YgZ2xvYmFsID09IE8gJiYgZ2xvYmFsKSB8fFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LWZ1bmNcbiAgRnVuY3Rpb24oJ3JldHVybiB0aGlzJykoKTtcbiIsICJ2YXIgaGFzT3duUHJvcGVydHkgPSB7fS5oYXNPd25Qcm9wZXJ0eTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIGtleSkge1xuICByZXR1cm4gaGFzT3duUHJvcGVydHkuY2FsbChpdCwga2V5KTtcbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSB7fTtcbiIsICJ2YXIgREVTQ1JJUFRPUlMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZGVzY3JpcHRvcnMnKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG5cbm1vZHVsZS5leHBvcnRzID0gREVTQ1JJUFRPUlMgPyBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIHJldHVybiBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mKG9iamVjdCwga2V5LCBjcmVhdGVQcm9wZXJ0eURlc2NyaXB0b3IoMSwgdmFsdWUpKTtcbn0gOiBmdW5jdGlvbiAob2JqZWN0LCBrZXksIHZhbHVlKSB7XG4gIG9iamVjdFtrZXldID0gdmFsdWU7XG4gIHJldHVybiBvYmplY3Q7XG59O1xuIiwgInZhciBnbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2xvYmFsJyk7XG5cbnZhciBkb2N1bWVudCA9IGdsb2JhbC5kb2N1bWVudDtcblxubW9kdWxlLmV4cG9ydHMgPSBkb2N1bWVudCAmJiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4iLCAidmFyIERFU0NSSVBUT1JTID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2Rlc2NyaXB0b3JzJyk7XG52YXIgZmFpbHMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZmFpbHMnKTtcbnZhciBjcmVhdGVFbGVtZW50ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2RvY3VtZW50LWNyZWF0ZS1lbGVtZW50Jyk7XG5cbi8vIFRoYW5rJ3MgSUU4IGZvciBoaXMgZnVubnkgZGVmaW5lUHJvcGVydHlcbm1vZHVsZS5leHBvcnRzID0gIURFU0NSSVBUT1JTICYmICFmYWlscyhmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoY3JlYXRlRWxlbWVudCgnZGl2JyksICdhJywge1xuICAgIGdldDogZnVuY3Rpb24gKCkgeyByZXR1cm4gNzsgfVxuICB9KS5hICE9IDc7XG59KTtcbiIsICIvLyBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIGFuZCBub24tZW51bWVyYWJsZSBvbGQgVjggc3RyaW5nc1xudmFyIGZhaWxzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2ZhaWxzJyk7XG52YXIgY2xhc3NvZiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jbGFzc29mLXJhdycpO1xuXG52YXIgc3BsaXQgPSAnJy5zcGxpdDtcblxubW9kdWxlLmV4cG9ydHMgPSBmYWlscyhmdW5jdGlvbiAoKSB7XG4gIC8vIHRocm93cyBhbiBlcnJvciBpbiByaGlubywgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9tb3ppbGxhL3JoaW5vL2lzc3Vlcy8zNDZcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGluc1xuICByZXR1cm4gIU9iamVjdCgneicpLnByb3BlcnR5SXNFbnVtZXJhYmxlKDApO1xufSkgPyBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIGNsYXNzb2YoaXQpID09ICdTdHJpbmcnID8gc3BsaXQuY2FsbChpdCwgJycpIDogT2JqZWN0KGl0KTtcbn0gOiBPYmplY3Q7XG4iLCAidmFyIE5BVElWRV9XRUFLX01BUCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9uYXRpdmUtd2Vhay1tYXAnKTtcbnZhciBnbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2xvYmFsJyk7XG52YXIgaXNPYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaXMtb2JqZWN0Jyk7XG52YXIgaGlkZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRlJyk7XG52YXIgb2JqZWN0SGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIHNoYXJlZEtleSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQta2V5Jyk7XG52YXIgaGlkZGVuS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRkZW4ta2V5cycpO1xuXG52YXIgV2Vha01hcCA9IGdsb2JhbC5XZWFrTWFwO1xudmFyIHNldCwgZ2V0LCBoYXM7XG5cbnZhciBlbmZvcmNlID0gZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBoYXMoaXQpID8gZ2V0KGl0KSA6IHNldChpdCwge30pO1xufTtcblxudmFyIGdldHRlckZvciA9IGZ1bmN0aW9uIChUWVBFKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoaXQpIHtcbiAgICB2YXIgc3RhdGU7XG4gICAgaWYgKCFpc09iamVjdChpdCkgfHwgKHN0YXRlID0gZ2V0KGl0KSkudHlwZSAhPT0gVFlQRSkge1xuICAgICAgdGhyb3cgVHlwZUVycm9yKCdJbmNvbXBhdGlibGUgcmVjZWl2ZXIsICcgKyBUWVBFICsgJyByZXF1aXJlZCcpO1xuICAgIH0gcmV0dXJuIHN0YXRlO1xuICB9O1xufTtcblxuaWYgKE5BVElWRV9XRUFLX01BUCkge1xuICB2YXIgc3RvcmUgPSBuZXcgV2Vha01hcCgpO1xuICB2YXIgd21nZXQgPSBzdG9yZS5nZXQ7XG4gIHZhciB3bWhhcyA9IHN0b3JlLmhhcztcbiAgdmFyIHdtc2V0ID0gc3RvcmUuc2V0O1xuICBzZXQgPSBmdW5jdGlvbiAoaXQsIG1ldGFkYXRhKSB7XG4gICAgd21zZXQuY2FsbChzdG9yZSwgaXQsIG1ldGFkYXRhKTtcbiAgICByZXR1cm4gbWV0YWRhdGE7XG4gIH07XG4gIGdldCA9IGZ1bmN0aW9uIChpdCkge1xuICAgIHJldHVybiB3bWdldC5jYWxsKHN0b3JlLCBpdCkgfHwge307XG4gIH07XG4gIGhhcyA9IGZ1bmN0aW9uIChpdCkge1xuICAgIHJldHVybiB3bWhhcy5jYWxsKHN0b3JlLCBpdCk7XG4gIH07XG59IGVsc2Uge1xuICB2YXIgU1RBVEUgPSBzaGFyZWRLZXkoJ3N0YXRlJyk7XG4gIGhpZGRlbktleXNbU1RBVEVdID0gdHJ1ZTtcbiAgc2V0ID0gZnVuY3Rpb24gKGl0LCBtZXRhZGF0YSkge1xuICAgIGhpZGUoaXQsIFNUQVRFLCBtZXRhZGF0YSk7XG4gICAgcmV0dXJuIG1ldGFkYXRhO1xuICB9O1xuICBnZXQgPSBmdW5jdGlvbiAoaXQpIHtcbiAgICByZXR1cm4gb2JqZWN0SGFzKGl0LCBTVEFURSkgPyBpdFtTVEFURV0gOiB7fTtcbiAgfTtcbiAgaGFzID0gZnVuY3Rpb24gKGl0KSB7XG4gICAgcmV0dXJuIG9iamVjdEhhcyhpdCwgU1RBVEUpO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgc2V0OiBzZXQsXG4gIGdldDogZ2V0LFxuICBoYXM6IGhhcyxcbiAgZW5mb3JjZTogZW5mb3JjZSxcbiAgZ2V0dGVyRm9yOiBnZXR0ZXJGb3Jcbn07XG4iLCAidmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xudmFyIEl0ZXJhdG9ycyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pdGVyYXRvcnMnKTtcblxudmFyIElURVJBVE9SID0gd2VsbEtub3duU3ltYm9sKCdpdGVyYXRvcicpO1xudmFyIEFycmF5UHJvdG90eXBlID0gQXJyYXkucHJvdG90eXBlO1xuXG4vLyBjaGVjayBvbiBkZWZhdWx0IEFycmF5IGl0ZXJhdG9yXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICByZXR1cm4gaXQgIT09IHVuZGVmaW5lZCAmJiAoSXRlcmF0b3JzLkFycmF5ID09PSBpdCB8fCBBcnJheVByb3RvdHlwZVtJVEVSQVRPUl0gPT09IGl0KTtcbn07XG4iLCAidmFyIGZhaWxzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2ZhaWxzJyk7XG5cbnZhciByZXBsYWNlbWVudCA9IC8jfFxcLnByb3RvdHlwZVxcLi87XG5cbnZhciBpc0ZvcmNlZCA9IGZ1bmN0aW9uIChmZWF0dXJlLCBkZXRlY3Rpb24pIHtcbiAgdmFyIHZhbHVlID0gZGF0YVtub3JtYWxpemUoZmVhdHVyZSldO1xuICByZXR1cm4gdmFsdWUgPT0gUE9MWUZJTEwgPyB0cnVlXG4gICAgOiB2YWx1ZSA9PSBOQVRJVkUgPyBmYWxzZVxuICAgIDogdHlwZW9mIGRldGVjdGlvbiA9PSAnZnVuY3Rpb24nID8gZmFpbHMoZGV0ZWN0aW9uKVxuICAgIDogISFkZXRlY3Rpb247XG59O1xuXG52YXIgbm9ybWFsaXplID0gaXNGb3JjZWQubm9ybWFsaXplID0gZnVuY3Rpb24gKHN0cmluZykge1xuICByZXR1cm4gU3RyaW5nKHN0cmluZykucmVwbGFjZShyZXBsYWNlbWVudCwgJy4nKS50b0xvd2VyQ2FzZSgpO1xufTtcblxudmFyIGRhdGEgPSBpc0ZvcmNlZC5kYXRhID0ge307XG52YXIgTkFUSVZFID0gaXNGb3JjZWQuTkFUSVZFID0gJ04nO1xudmFyIFBPTFlGSUxMID0gaXNGb3JjZWQuUE9MWUZJTEwgPSAnUCc7XG5cbm1vZHVsZS5leHBvcnRzID0gaXNGb3JjZWQ7XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIHR5cGVvZiBpdCA9PT0gJ29iamVjdCcgPyBpdCAhPT0gbnVsbCA6IHR5cGVvZiBpdCA9PT0gJ2Z1bmN0aW9uJztcbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSBmYWxzZTtcbiIsICIndXNlIHN0cmljdCc7XG52YXIgZ2V0UHJvdG90eXBlT2YgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1wcm90b3R5cGUtb2YnKTtcbnZhciBoaWRlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGUnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaGFzJyk7XG52YXIgd2VsbEtub3duU3ltYm9sID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3dlbGwta25vd24tc3ltYm9sJyk7XG52YXIgSVNfUFVSRSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pcy1wdXJlJyk7XG5cbnZhciBJVEVSQVRPUiA9IHdlbGxLbm93blN5bWJvbCgnaXRlcmF0b3InKTtcbnZhciBCVUdHWV9TQUZBUklfSVRFUkFUT1JTID0gZmFsc2U7XG5cbnZhciByZXR1cm5UaGlzID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfTtcblxuLy8gYCVJdGVyYXRvclByb3RvdHlwZSVgIG9iamVjdFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtJWl0ZXJhdG9ycHJvdG90eXBlJS1vYmplY3RcbnZhciBJdGVyYXRvclByb3RvdHlwZSwgUHJvdG90eXBlT2ZBcnJheUl0ZXJhdG9yUHJvdG90eXBlLCBhcnJheUl0ZXJhdG9yO1xuXG5pZiAoW10ua2V5cykge1xuICBhcnJheUl0ZXJhdG9yID0gW10ua2V5cygpO1xuICAvLyBTYWZhcmkgOCBoYXMgYnVnZ3kgaXRlcmF0b3JzIHcvbyBgbmV4dGBcbiAgaWYgKCEoJ25leHQnIGluIGFycmF5SXRlcmF0b3IpKSBCVUdHWV9TQUZBUklfSVRFUkFUT1JTID0gdHJ1ZTtcbiAgZWxzZSB7XG4gICAgUHJvdG90eXBlT2ZBcnJheUl0ZXJhdG9yUHJvdG90eXBlID0gZ2V0UHJvdG90eXBlT2YoZ2V0UHJvdG90eXBlT2YoYXJyYXlJdGVyYXRvcikpO1xuICAgIGlmIChQcm90b3R5cGVPZkFycmF5SXRlcmF0b3JQcm90b3R5cGUgIT09IE9iamVjdC5wcm90b3R5cGUpIEl0ZXJhdG9yUHJvdG90eXBlID0gUHJvdG90eXBlT2ZBcnJheUl0ZXJhdG9yUHJvdG90eXBlO1xuICB9XG59XG5cbmlmIChJdGVyYXRvclByb3RvdHlwZSA9PSB1bmRlZmluZWQpIEl0ZXJhdG9yUHJvdG90eXBlID0ge307XG5cbi8vIDI1LjEuMi4xLjEgJUl0ZXJhdG9yUHJvdG90eXBlJVtAQGl0ZXJhdG9yXSgpXG5pZiAoIUlTX1BVUkUgJiYgIWhhcyhJdGVyYXRvclByb3RvdHlwZSwgSVRFUkFUT1IpKSBoaWRlKEl0ZXJhdG9yUHJvdG90eXBlLCBJVEVSQVRPUiwgcmV0dXJuVGhpcyk7XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBJdGVyYXRvclByb3RvdHlwZTogSXRlcmF0b3JQcm90b3R5cGUsXG4gIEJVR0dZX1NBRkFSSV9JVEVSQVRPUlM6IEJVR0dZX1NBRkFSSV9JVEVSQVRPUlNcbn07XG4iLCAibW9kdWxlLmV4cG9ydHMgPSB7fTtcbiIsICJ2YXIgZmFpbHMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZmFpbHMnKTtcblxubW9kdWxlLmV4cG9ydHMgPSAhIU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgJiYgIWZhaWxzKGZ1bmN0aW9uICgpIHtcbiAgLy8gQ2hyb21lIDM4IFN5bWJvbCBoYXMgaW5jb3JyZWN0IHRvU3RyaW5nIGNvbnZlcnNpb25cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG4gIHJldHVybiAhU3RyaW5nKFN5bWJvbCgpKTtcbn0pO1xuIiwgInZhciBnbG9iYWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZ2xvYmFsJyk7XG52YXIgbmF0aXZlRnVuY3Rpb25Ub1N0cmluZyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9mdW5jdGlvbi10by1zdHJpbmcnKTtcblxudmFyIFdlYWtNYXAgPSBnbG9iYWwuV2Vha01hcDtcblxubW9kdWxlLmV4cG9ydHMgPSB0eXBlb2YgV2Vha01hcCA9PT0gJ2Z1bmN0aW9uJyAmJiAvbmF0aXZlIGNvZGUvLnRlc3QobmF0aXZlRnVuY3Rpb25Ub1N0cmluZy5jYWxsKFdlYWtNYXApKTtcbiIsICJ2YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYW4tb2JqZWN0Jyk7XG52YXIgZGVmaW5lUHJvcGVydGllcyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnRpZXMnKTtcbnZhciBlbnVtQnVnS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9lbnVtLWJ1Zy1rZXlzJyk7XG52YXIgaGlkZGVuS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oaWRkZW4ta2V5cycpO1xudmFyIGh0bWwgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaHRtbCcpO1xudmFyIGRvY3VtZW50Q3JlYXRlRWxlbWVudCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kb2N1bWVudC1jcmVhdGUtZWxlbWVudCcpO1xudmFyIHNoYXJlZEtleSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQta2V5Jyk7XG52YXIgSUVfUFJPVE8gPSBzaGFyZWRLZXkoJ0lFX1BST1RPJyk7XG5cbnZhciBQUk9UT1RZUEUgPSAncHJvdG90eXBlJztcbnZhciBFbXB0eSA9IGZ1bmN0aW9uICgpIHsgLyogZW1wdHkgKi8gfTtcblxuLy8gQ3JlYXRlIG9iamVjdCB3aXRoIGZha2UgYG51bGxgIHByb3RvdHlwZTogdXNlIGlmcmFtZSBPYmplY3Qgd2l0aCBjbGVhcmVkIHByb3RvdHlwZVxudmFyIGNyZWF0ZURpY3QgPSBmdW5jdGlvbiAoKSB7XG4gIC8vIFRocmFzaCwgd2FzdGUgYW5kIHNvZG9teTogSUUgR0MgYnVnXG4gIHZhciBpZnJhbWUgPSBkb2N1bWVudENyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpO1xuICB2YXIgbGVuZ3RoID0gZW51bUJ1Z0tleXMubGVuZ3RoO1xuICB2YXIgbHQgPSAnPCc7XG4gIHZhciBzY3JpcHQgPSAnc2NyaXB0JztcbiAgdmFyIGd0ID0gJz4nO1xuICB2YXIganMgPSAnamF2YScgKyBzY3JpcHQgKyAnOic7XG4gIHZhciBpZnJhbWVEb2N1bWVudDtcbiAgaWZyYW1lLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gIGh0bWwuYXBwZW5kQ2hpbGQoaWZyYW1lKTtcbiAgaWZyYW1lLnNyYyA9IFN0cmluZyhqcyk7XG4gIGlmcmFtZURvY3VtZW50ID0gaWZyYW1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7XG4gIGlmcmFtZURvY3VtZW50Lm9wZW4oKTtcbiAgaWZyYW1lRG9jdW1lbnQud3JpdGUobHQgKyBzY3JpcHQgKyBndCArICdkb2N1bWVudC5GPU9iamVjdCcgKyBsdCArICcvJyArIHNjcmlwdCArIGd0KTtcbiAgaWZyYW1lRG9jdW1lbnQuY2xvc2UoKTtcbiAgY3JlYXRlRGljdCA9IGlmcmFtZURvY3VtZW50LkY7XG4gIHdoaWxlIChsZW5ndGgtLSkgZGVsZXRlIGNyZWF0ZURpY3RbUFJPVE9UWVBFXVtlbnVtQnVnS2V5c1tsZW5ndGhdXTtcbiAgcmV0dXJuIGNyZWF0ZURpY3QoKTtcbn07XG5cbi8vIDE5LjEuMi4yIC8gMTUuMi4zLjUgT2JqZWN0LmNyZWF0ZShPIFssIFByb3BlcnRpZXNdKVxubW9kdWxlLmV4cG9ydHMgPSBPYmplY3QuY3JlYXRlIHx8IGZ1bmN0aW9uIGNyZWF0ZShPLCBQcm9wZXJ0aWVzKSB7XG4gIHZhciByZXN1bHQ7XG4gIGlmIChPICE9PSBudWxsKSB7XG4gICAgRW1wdHlbUFJPVE9UWVBFXSA9IGFuT2JqZWN0KE8pO1xuICAgIHJlc3VsdCA9IG5ldyBFbXB0eSgpO1xuICAgIEVtcHR5W1BST1RPVFlQRV0gPSBudWxsO1xuICAgIC8vIGFkZCBcIl9fcHJvdG9fX1wiIGZvciBPYmplY3QuZ2V0UHJvdG90eXBlT2YgcG9seWZpbGxcbiAgICByZXN1bHRbSUVfUFJPVE9dID0gTztcbiAgfSBlbHNlIHJlc3VsdCA9IGNyZWF0ZURpY3QoKTtcbiAgcmV0dXJuIFByb3BlcnRpZXMgPT09IHVuZGVmaW5lZCA/IHJlc3VsdCA6IGRlZmluZVByb3BlcnRpZXMocmVzdWx0LCBQcm9wZXJ0aWVzKTtcbn07XG5cbmhpZGRlbktleXNbSUVfUFJPVE9dID0gdHJ1ZTtcbiIsICJ2YXIgREVTQ1JJUFRPUlMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvZGVzY3JpcHRvcnMnKTtcbnZhciBkZWZpbmVQcm9wZXJ0eU1vZHVsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3QtZGVmaW5lLXByb3BlcnR5Jyk7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYW4tb2JqZWN0Jyk7XG52YXIgb2JqZWN0S2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3Qta2V5cycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IERFU0NSSVBUT1JTID8gT2JqZWN0LmRlZmluZVByb3BlcnRpZXMgOiBmdW5jdGlvbiBkZWZpbmVQcm9wZXJ0aWVzKE8sIFByb3BlcnRpZXMpIHtcbiAgYW5PYmplY3QoTyk7XG4gIHZhciBrZXlzID0gb2JqZWN0S2V5cyhQcm9wZXJ0aWVzKTtcbiAgdmFyIGxlbmd0aCA9IGtleXMubGVuZ3RoO1xuICB2YXIgaSA9IDA7XG4gIHZhciBrZXk7XG4gIHdoaWxlIChsZW5ndGggPiBpKSBkZWZpbmVQcm9wZXJ0eU1vZHVsZS5mKE8sIGtleSA9IGtleXNbaSsrXSwgUHJvcGVydGllc1trZXldKTtcbiAgcmV0dXJuIE87XG59O1xuIiwgInZhciBERVNDUklQVE9SUyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kZXNjcmlwdG9ycycpO1xudmFyIElFOF9ET01fREVGSU5FID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2llOC1kb20tZGVmaW5lJyk7XG52YXIgYW5PYmplY3QgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYW4tb2JqZWN0Jyk7XG52YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8tcHJpbWl0aXZlJyk7XG5cbnZhciBuYXRpdmVEZWZpbmVQcm9wZXJ0eSA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTtcblxuZXhwb3J0cy5mID0gREVTQ1JJUFRPUlMgPyBuYXRpdmVEZWZpbmVQcm9wZXJ0eSA6IGZ1bmN0aW9uIGRlZmluZVByb3BlcnR5KE8sIFAsIEF0dHJpYnV0ZXMpIHtcbiAgYW5PYmplY3QoTyk7XG4gIFAgPSB0b1ByaW1pdGl2ZShQLCB0cnVlKTtcbiAgYW5PYmplY3QoQXR0cmlidXRlcyk7XG4gIGlmIChJRThfRE9NX0RFRklORSkgdHJ5IHtcbiAgICByZXR1cm4gbmF0aXZlRGVmaW5lUHJvcGVydHkoTywgUCwgQXR0cmlidXRlcyk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7IC8qIGVtcHR5ICovIH1cbiAgaWYgKCdnZXQnIGluIEF0dHJpYnV0ZXMgfHwgJ3NldCcgaW4gQXR0cmlidXRlcykgdGhyb3cgVHlwZUVycm9yKCdBY2Nlc3NvcnMgbm90IHN1cHBvcnRlZCcpO1xuICBpZiAoJ3ZhbHVlJyBpbiBBdHRyaWJ1dGVzKSBPW1BdID0gQXR0cmlidXRlcy52YWx1ZTtcbiAgcmV0dXJuIE87XG59O1xuIiwgInZhciBERVNDUklQVE9SUyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kZXNjcmlwdG9ycycpO1xudmFyIHByb3BlcnR5SXNFbnVtZXJhYmxlTW9kdWxlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL29iamVjdC1wcm9wZXJ0eS1pcy1lbnVtZXJhYmxlJyk7XG52YXIgY3JlYXRlUHJvcGVydHlEZXNjcmlwdG9yID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2NyZWF0ZS1wcm9wZXJ0eS1kZXNjcmlwdG9yJyk7XG52YXIgdG9JbmRleGVkT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLWluZGV4ZWQtb2JqZWN0Jyk7XG52YXIgdG9QcmltaXRpdmUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8tcHJpbWl0aXZlJyk7XG52YXIgaGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIElFOF9ET01fREVGSU5FID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2llOC1kb20tZGVmaW5lJyk7XG5cbnZhciBuYXRpdmVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO1xuXG5leHBvcnRzLmYgPSBERVNDUklQVE9SUyA/IG5hdGl2ZUdldE93blByb3BlcnR5RGVzY3JpcHRvciA6IGZ1bmN0aW9uIGdldE93blByb3BlcnR5RGVzY3JpcHRvcihPLCBQKSB7XG4gIE8gPSB0b0luZGV4ZWRPYmplY3QoTyk7XG4gIFAgPSB0b1ByaW1pdGl2ZShQLCB0cnVlKTtcbiAgaWYgKElFOF9ET01fREVGSU5FKSB0cnkge1xuICAgIHJldHVybiBuYXRpdmVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoTywgUCk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7IC8qIGVtcHR5ICovIH1cbiAgaWYgKGhhcyhPLCBQKSkgcmV0dXJuIGNyZWF0ZVByb3BlcnR5RGVzY3JpcHRvcighcHJvcGVydHlJc0VudW1lcmFibGVNb2R1bGUuZi5jYWxsKE8sIFApLCBPW1BdKTtcbn07XG4iLCAiLy8gMTkuMS4yLjcgLyAxNS4yLjMuNCBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhPKVxudmFyIGludGVybmFsT2JqZWN0S2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9vYmplY3Qta2V5cy1pbnRlcm5hbCcpO1xudmFyIGVudW1CdWdLZXlzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2VudW0tYnVnLWtleXMnKTtcblxudmFyIGhpZGRlbktleXMgPSBlbnVtQnVnS2V5cy5jb25jYXQoJ2xlbmd0aCcsICdwcm90b3R5cGUnKTtcblxuZXhwb3J0cy5mID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMgfHwgZnVuY3Rpb24gZ2V0T3duUHJvcGVydHlOYW1lcyhPKSB7XG4gIHJldHVybiBpbnRlcm5hbE9iamVjdEtleXMoTywgaGlkZGVuS2V5cyk7XG59O1xuIiwgImV4cG9ydHMuZiA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM7XG4iLCAidmFyIGhhcyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9oYXMnKTtcbnZhciB0b09iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1vYmplY3QnKTtcbnZhciBzaGFyZWRLZXkgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2hhcmVkLWtleScpO1xudmFyIENPUlJFQ1RfUFJPVE9UWVBFX0dFVFRFUiA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9jb3JyZWN0LXByb3RvdHlwZS1nZXR0ZXInKTtcblxudmFyIElFX1BST1RPID0gc2hhcmVkS2V5KCdJRV9QUk9UTycpO1xudmFyIE9iamVjdFByb3RvdHlwZSA9IE9iamVjdC5wcm90b3R5cGU7XG5cbi8vIDE5LjEuMi45IC8gMTUuMi4zLjIgT2JqZWN0LmdldFByb3RvdHlwZU9mKE8pXG5tb2R1bGUuZXhwb3J0cyA9IENPUlJFQ1RfUFJPVE9UWVBFX0dFVFRFUiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIChPKSB7XG4gIE8gPSB0b09iamVjdChPKTtcbiAgaWYgKGhhcyhPLCBJRV9QUk9UTykpIHJldHVybiBPW0lFX1BST1RPXTtcbiAgaWYgKHR5cGVvZiBPLmNvbnN0cnVjdG9yID09ICdmdW5jdGlvbicgJiYgTyBpbnN0YW5jZW9mIE8uY29uc3RydWN0b3IpIHtcbiAgICByZXR1cm4gTy5jb25zdHJ1Y3Rvci5wcm90b3R5cGU7XG4gIH0gcmV0dXJuIE8gaW5zdGFuY2VvZiBPYmplY3QgPyBPYmplY3RQcm90b3R5cGUgOiBudWxsO1xufTtcbiIsICJ2YXIgaGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIHRvSW5kZXhlZE9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1pbmRleGVkLW9iamVjdCcpO1xudmFyIGFycmF5SW5jbHVkZXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvYXJyYXktaW5jbHVkZXMnKTtcbnZhciBoaWRkZW5LZXlzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGRlbi1rZXlzJyk7XG5cbnZhciBhcnJheUluZGV4T2YgPSBhcnJheUluY2x1ZGVzKGZhbHNlKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAob2JqZWN0LCBuYW1lcykge1xuICB2YXIgTyA9IHRvSW5kZXhlZE9iamVjdChvYmplY3QpO1xuICB2YXIgaSA9IDA7XG4gIHZhciByZXN1bHQgPSBbXTtcbiAgdmFyIGtleTtcbiAgZm9yIChrZXkgaW4gTykgIWhhcyhoaWRkZW5LZXlzLCBrZXkpICYmIGhhcyhPLCBrZXkpICYmIHJlc3VsdC5wdXNoKGtleSk7XG4gIC8vIERvbid0IGVudW0gYnVnICYgaGlkZGVuIGtleXNcbiAgd2hpbGUgKG5hbWVzLmxlbmd0aCA+IGkpIGlmIChoYXMoTywga2V5ID0gbmFtZXNbaSsrXSkpIHtcbiAgICB+YXJyYXlJbmRleE9mKHJlc3VsdCwga2V5KSB8fCByZXN1bHQucHVzaChrZXkpO1xuICB9XG4gIHJldHVybiByZXN1bHQ7XG59O1xuIiwgInZhciBpbnRlcm5hbE9iamVjdEtleXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWtleXMtaW50ZXJuYWwnKTtcbnZhciBlbnVtQnVnS2V5cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9lbnVtLWJ1Zy1rZXlzJyk7XG5cbi8vIDE5LjEuMi4xNCAvIDE1LjIuMy4xNCBPYmplY3Qua2V5cyhPKVxubW9kdWxlLmV4cG9ydHMgPSBPYmplY3Qua2V5cyB8fCBmdW5jdGlvbiBrZXlzKE8pIHtcbiAgcmV0dXJuIGludGVybmFsT2JqZWN0S2V5cyhPLCBlbnVtQnVnS2V5cyk7XG59O1xuIiwgIid1c2Ugc3RyaWN0JztcbnZhciBuYXRpdmVQcm9wZXJ0eUlzRW51bWVyYWJsZSA9IHt9LnByb3BlcnR5SXNFbnVtZXJhYmxlO1xudmFyIGdldE93blByb3BlcnR5RGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7XG5cbi8vIE5hc2hvcm4gfiBKREs4IGJ1Z1xudmFyIE5BU0hPUk5fQlVHID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yICYmICFuYXRpdmVQcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHsgMTogMiB9LCAxKTtcblxuZXhwb3J0cy5mID0gTkFTSE9STl9CVUcgPyBmdW5jdGlvbiBwcm9wZXJ0eUlzRW51bWVyYWJsZShWKSB7XG4gIHZhciBkZXNjcmlwdG9yID0gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRoaXMsIFYpO1xuICByZXR1cm4gISFkZXNjcmlwdG9yICYmIGRlc2NyaXB0b3IuZW51bWVyYWJsZTtcbn0gOiBuYXRpdmVQcm9wZXJ0eUlzRW51bWVyYWJsZTtcbiIsICJ2YXIgdmFsaWRhdGVTZXRQcm90b3R5cGVPZkFyZ3VtZW50cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy92YWxpZGF0ZS1zZXQtcHJvdG90eXBlLW9mLWFyZ3VtZW50cycpO1xuXG4vLyBXb3JrcyB3aXRoIF9fcHJvdG9fXyBvbmx5LiBPbGQgdjggY2FuJ3Qgd29yayB3aXRoIG51bGwgcHJvdG8gb2JqZWN0cy5cbi8qIGVzbGludC1kaXNhYmxlIG5vLXByb3RvICovXG5tb2R1bGUuZXhwb3J0cyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCAoJ19fcHJvdG9fXycgaW4ge30gPyBmdW5jdGlvbiAoKSB7XG4gIHZhciBjb3JyZWN0U2V0dGVyID0gZmFsc2U7XG4gIHZhciB0ZXN0ID0ge307XG4gIHZhciBzZXR0ZXI7XG4gIHRyeSB7XG4gICAgc2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihPYmplY3QucHJvdG90eXBlLCAnX19wcm90b19fJykuc2V0O1xuICAgIHNldHRlci5jYWxsKHRlc3QsIFtdKTtcbiAgICBjb3JyZWN0U2V0dGVyID0gdGVzdCBpbnN0YW5jZW9mIEFycmF5O1xuICB9IGNhdGNoIChlcnJvcikgeyAvKiBlbXB0eSAqLyB9XG4gIHJldHVybiBmdW5jdGlvbiBzZXRQcm90b3R5cGVPZihPLCBwcm90bykge1xuICAgIHZhbGlkYXRlU2V0UHJvdG90eXBlT2ZBcmd1bWVudHMoTywgcHJvdG8pO1xuICAgIGlmIChjb3JyZWN0U2V0dGVyKSBzZXR0ZXIuY2FsbChPLCBwcm90byk7XG4gICAgZWxzZSBPLl9fcHJvdG9fXyA9IHByb3RvO1xuICAgIHJldHVybiBPO1xuICB9O1xufSgpIDogdW5kZWZpbmVkKTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIGdldE93blByb3BlcnR5TmFtZXNNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktbmFtZXMnKTtcbnZhciBnZXRPd25Qcm9wZXJ0eVN5bWJvbHNNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWdldC1vd24tcHJvcGVydHktc3ltYm9scycpO1xudmFyIGFuT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2FuLW9iamVjdCcpO1xuXG52YXIgUmVmbGVjdCA9IGdsb2JhbC5SZWZsZWN0O1xuXG4vLyBhbGwgb2JqZWN0IGtleXMsIGluY2x1ZGVzIG5vbi1lbnVtZXJhYmxlIGFuZCBzeW1ib2xzXG5tb2R1bGUuZXhwb3J0cyA9IFJlZmxlY3QgJiYgUmVmbGVjdC5vd25LZXlzIHx8IGZ1bmN0aW9uIG93bktleXMoaXQpIHtcbiAgdmFyIGtleXMgPSBnZXRPd25Qcm9wZXJ0eU5hbWVzTW9kdWxlLmYoYW5PYmplY3QoaXQpKTtcbiAgdmFyIGdldE93blByb3BlcnR5U3ltYm9scyA9IGdldE93blByb3BlcnR5U3ltYm9sc01vZHVsZS5mO1xuICByZXR1cm4gZ2V0T3duUHJvcGVydHlTeW1ib2xzID8ga2V5cy5jb25jYXQoZ2V0T3duUHJvcGVydHlTeW1ib2xzKGl0KSkgOiBrZXlzO1xufTtcbiIsICJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9nbG9iYWwnKTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIHNoYXJlZCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQnKTtcbnZhciBoaWRlID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hpZGUnKTtcbnZhciBoYXMgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaGFzJyk7XG52YXIgc2V0R2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3NldC1nbG9iYWwnKTtcbnZhciBuYXRpdmVGdW5jdGlvblRvU3RyaW5nID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2Z1bmN0aW9uLXRvLXN0cmluZycpO1xudmFyIEludGVybmFsU3RhdGVNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaW50ZXJuYWwtc3RhdGUnKTtcblxudmFyIGdldEludGVybmFsU3RhdGUgPSBJbnRlcm5hbFN0YXRlTW9kdWxlLmdldDtcbnZhciBlbmZvcmNlSW50ZXJuYWxTdGF0ZSA9IEludGVybmFsU3RhdGVNb2R1bGUuZW5mb3JjZTtcbnZhciBURU1QTEFURSA9IFN0cmluZyhuYXRpdmVGdW5jdGlvblRvU3RyaW5nKS5zcGxpdCgndG9TdHJpbmcnKTtcblxuc2hhcmVkKCdpbnNwZWN0U291cmNlJywgZnVuY3Rpb24gKGl0KSB7XG4gIHJldHVybiBuYXRpdmVGdW5jdGlvblRvU3RyaW5nLmNhbGwoaXQpO1xufSk7XG5cbihtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChPLCBrZXksIHZhbHVlLCBvcHRpb25zKSB7XG4gIHZhciB1bnNhZmUgPSBvcHRpb25zID8gISFvcHRpb25zLnVuc2FmZSA6IGZhbHNlO1xuICB2YXIgc2ltcGxlID0gb3B0aW9ucyA/ICEhb3B0aW9ucy5lbnVtZXJhYmxlIDogZmFsc2U7XG4gIHZhciBub1RhcmdldEdldCA9IG9wdGlvbnMgPyAhIW9wdGlvbnMubm9UYXJnZXRHZXQgOiBmYWxzZTtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAnZnVuY3Rpb24nKSB7XG4gICAgaWYgKHR5cGVvZiBrZXkgPT0gJ3N0cmluZycgJiYgIWhhcyh2YWx1ZSwgJ25hbWUnKSkgaGlkZSh2YWx1ZSwgJ25hbWUnLCBrZXkpO1xuICAgIGVuZm9yY2VJbnRlcm5hbFN0YXRlKHZhbHVlKS5zb3VyY2UgPSBURU1QTEFURS5qb2luKHR5cGVvZiBrZXkgPT0gJ3N0cmluZycgPyBrZXkgOiAnJyk7XG4gIH1cbiAgaWYgKE8gPT09IGdsb2JhbCkge1xuICAgIGlmIChzaW1wbGUpIE9ba2V5XSA9IHZhbHVlO1xuICAgIGVsc2Ugc2V0R2xvYmFsKGtleSwgdmFsdWUpO1xuICAgIHJldHVybjtcbiAgfSBlbHNlIGlmICghdW5zYWZlKSB7XG4gICAgZGVsZXRlIE9ba2V5XTtcbiAgfSBlbHNlIGlmICghbm9UYXJnZXRHZXQgJiYgT1trZXldKSB7XG4gICAgc2ltcGxlID0gdHJ1ZTtcbiAgfVxuICBpZiAoc2ltcGxlKSBPW2tleV0gPSB2YWx1ZTtcbiAgZWxzZSBoaWRlKE8sIGtleSwgdmFsdWUpO1xuLy8gYWRkIGZha2UgRnVuY3Rpb24jdG9TdHJpbmcgZm9yIGNvcnJlY3Qgd29yayB3cmFwcGVkIG1ldGhvZHMgLyBjb25zdHJ1Y3RvcnMgd2l0aCBtZXRob2RzIGxpa2UgTG9EYXNoIGlzTmF0aXZlXG59KShGdW5jdGlvbi5wcm90b3R5cGUsICd0b1N0cmluZycsIGZ1bmN0aW9uIHRvU3RyaW5nKCkge1xuICByZXR1cm4gdHlwZW9mIHRoaXMgPT0gJ2Z1bmN0aW9uJyAmJiBnZXRJbnRlcm5hbFN0YXRlKHRoaXMpLnNvdXJjZSB8fCBuYXRpdmVGdW5jdGlvblRvU3RyaW5nLmNhbGwodGhpcyk7XG59KTtcbiIsICIvLyBgUmVxdWlyZU9iamVjdENvZXJjaWJsZWAgYWJzdHJhY3Qgb3BlcmF0aW9uXG4vLyBodHRwczovL3RjMzkuZ2l0aHViLmlvL2VjbWEyNjIvI3NlYy1yZXF1aXJlb2JqZWN0Y29lcmNpYmxlXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChpdCkge1xuICBpZiAoaXQgPT0gdW5kZWZpbmVkKSB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjYWxsIG1ldGhvZCBvbiBcIiArIGl0KTtcbiAgcmV0dXJuIGl0O1xufTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIGhpZGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaGlkZScpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChrZXksIHZhbHVlKSB7XG4gIHRyeSB7XG4gICAgaGlkZShnbG9iYWwsIGtleSwgdmFsdWUpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGdsb2JhbFtrZXldID0gdmFsdWU7XG4gIH0gcmV0dXJuIHZhbHVlO1xufTtcbiIsICJ2YXIgZGVmaW5lUHJvcGVydHkgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvb2JqZWN0LWRlZmluZS1wcm9wZXJ0eScpLmY7XG52YXIgaGFzID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2hhcycpO1xudmFyIHdlbGxLbm93blN5bWJvbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy93ZWxsLWtub3duLXN5bWJvbCcpO1xuXG52YXIgVE9fU1RSSU5HX1RBRyA9IHdlbGxLbm93blN5bWJvbCgndG9TdHJpbmdUYWcnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFRBRywgU1RBVElDKSB7XG4gIGlmIChpdCAmJiAhaGFzKGl0ID0gU1RBVElDID8gaXQgOiBpdC5wcm90b3R5cGUsIFRPX1NUUklOR19UQUcpKSB7XG4gICAgZGVmaW5lUHJvcGVydHkoaXQsIFRPX1NUUklOR19UQUcsIHsgY29uZmlndXJhYmxlOiB0cnVlLCB2YWx1ZTogVEFHIH0pO1xuICB9XG59O1xuIiwgInZhciBzaGFyZWQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvc2hhcmVkJyk7XG52YXIgdWlkID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3VpZCcpO1xuXG52YXIga2V5cyA9IHNoYXJlZCgna2V5cycpO1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChrZXkpIHtcbiAgcmV0dXJuIGtleXNba2V5XSB8fCAoa2V5c1trZXldID0gdWlkKGtleSkpO1xufTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIHNldEdsb2JhbCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zZXQtZ2xvYmFsJyk7XG52YXIgSVNfUFVSRSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pcy1wdXJlJyk7XG5cbnZhciBTSEFSRUQgPSAnX19jb3JlLWpzX3NoYXJlZF9fJztcbnZhciBzdG9yZSA9IGdsb2JhbFtTSEFSRURdIHx8IHNldEdsb2JhbChTSEFSRUQsIHt9KTtcblxuKG1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSwgdmFsdWUpIHtcbiAgcmV0dXJuIHN0b3JlW2tleV0gfHwgKHN0b3JlW2tleV0gPSB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiB7fSk7XG59KSgndmVyc2lvbnMnLCBbXSkucHVzaCh7XG4gIHZlcnNpb246ICczLjEuMycsXG4gIG1vZGU6IElTX1BVUkUgPyAncHVyZScgOiAnZ2xvYmFsJyxcbiAgY29weXJpZ2h0OiAnwqkgMjAxOSBEZW5pcyBQdXNoa2FyZXYgKHpsb2lyb2NrLnJ1KSdcbn0pO1xuIiwgInZhciB0b0ludGVnZXIgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdG8taW50ZWdlcicpO1xudmFyIHJlcXVpcmVPYmplY3RDb2VyY2libGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvcmVxdWlyZS1vYmplY3QtY29lcmNpYmxlJyk7XG5cbi8vIENPTlZFUlRfVE9fU1RSSU5HOiB0cnVlICAtPiBTdHJpbmcjYXRcbi8vIENPTlZFUlRfVE9fU1RSSU5HOiBmYWxzZSAtPiBTdHJpbmcjY29kZVBvaW50QXRcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKHRoYXQsIHBvcywgQ09OVkVSVF9UT19TVFJJTkcpIHtcbiAgdmFyIFMgPSBTdHJpbmcocmVxdWlyZU9iamVjdENvZXJjaWJsZSh0aGF0KSk7XG4gIHZhciBwb3NpdGlvbiA9IHRvSW50ZWdlcihwb3MpO1xuICB2YXIgc2l6ZSA9IFMubGVuZ3RoO1xuICB2YXIgZmlyc3QsIHNlY29uZDtcbiAgaWYgKHBvc2l0aW9uIDwgMCB8fCBwb3NpdGlvbiA+PSBzaXplKSByZXR1cm4gQ09OVkVSVF9UT19TVFJJTkcgPyAnJyA6IHVuZGVmaW5lZDtcbiAgZmlyc3QgPSBTLmNoYXJDb2RlQXQocG9zaXRpb24pO1xuICByZXR1cm4gZmlyc3QgPCAweEQ4MDAgfHwgZmlyc3QgPiAweERCRkYgfHwgcG9zaXRpb24gKyAxID09PSBzaXplXG4gICAgfHwgKHNlY29uZCA9IFMuY2hhckNvZGVBdChwb3NpdGlvbiArIDEpKSA8IDB4REMwMCB8fCBzZWNvbmQgPiAweERGRkZcbiAgICAgID8gQ09OVkVSVF9UT19TVFJJTkcgPyBTLmNoYXJBdChwb3NpdGlvbikgOiBmaXJzdFxuICAgICAgOiBDT05WRVJUX1RPX1NUUklORyA/IFMuc2xpY2UocG9zaXRpb24sIHBvc2l0aW9uICsgMikgOiAoZmlyc3QgLSAweEQ4MDAgPDwgMTApICsgKHNlY29uZCAtIDB4REMwMCkgKyAweDEwMDAwO1xufTtcbiIsICJ2YXIgdG9JbnRlZ2VyID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3RvLWludGVnZXInKTtcblxudmFyIG1heCA9IE1hdGgubWF4O1xudmFyIG1pbiA9IE1hdGgubWluO1xuXG4vLyBIZWxwZXIgZm9yIGEgcG9wdWxhciByZXBlYXRpbmcgY2FzZSBvZiB0aGUgc3BlYzpcbi8vIExldCBpbnRlZ2VyIGJlID8gVG9JbnRlZ2VyKGluZGV4KS5cbi8vIElmIGludGVnZXIgPCAwLCBsZXQgcmVzdWx0IGJlIG1heCgobGVuZ3RoICsgaW50ZWdlciksIDApOyBlbHNlIGxldCByZXN1bHQgYmUgbWluKGxlbmd0aCwgbGVuZ3RoKS5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGluZGV4LCBsZW5ndGgpIHtcbiAgdmFyIGludGVnZXIgPSB0b0ludGVnZXIoaW5kZXgpO1xuICByZXR1cm4gaW50ZWdlciA8IDAgPyBtYXgoaW50ZWdlciArIGxlbmd0aCwgMCkgOiBtaW4oaW50ZWdlciwgbGVuZ3RoKTtcbn07XG4iLCAiLy8gdG9PYmplY3Qgd2l0aCBmYWxsYmFjayBmb3Igbm9uLWFycmF5LWxpa2UgRVMzIHN0cmluZ3NcbnZhciBJbmRleGVkT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2luZGV4ZWQtb2JqZWN0Jyk7XG52YXIgcmVxdWlyZU9iamVjdENvZXJjaWJsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9yZXF1aXJlLW9iamVjdC1jb2VyY2libGUnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQpIHtcbiAgcmV0dXJuIEluZGV4ZWRPYmplY3QocmVxdWlyZU9iamVjdENvZXJjaWJsZShpdCkpO1xufTtcbiIsICJ2YXIgY2VpbCA9IE1hdGguY2VpbDtcbnZhciBmbG9vciA9IE1hdGguZmxvb3I7XG5cbi8vIGBUb0ludGVnZXJgIGFic3RyYWN0IG9wZXJhdGlvblxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtdG9pbnRlZ2VyXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChhcmd1bWVudCkge1xuICByZXR1cm4gaXNOYU4oYXJndW1lbnQgPSArYXJndW1lbnQpID8gMCA6IChhcmd1bWVudCA+IDAgPyBmbG9vciA6IGNlaWwpKGFyZ3VtZW50KTtcbn07XG4iLCAidmFyIHRvSW50ZWdlciA9IHJlcXVpcmUoJy4uL2ludGVybmFscy90by1pbnRlZ2VyJyk7XG5cbnZhciBtaW4gPSBNYXRoLm1pbjtcblxuLy8gYFRvTGVuZ3RoYCBhYnN0cmFjdCBvcGVyYXRpb25cbi8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLXRvbGVuZ3RoXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChhcmd1bWVudCkge1xuICByZXR1cm4gYXJndW1lbnQgPiAwID8gbWluKHRvSW50ZWdlcihhcmd1bWVudCksIDB4MUZGRkZGRkZGRkZGRkYpIDogMDsgLy8gMiAqKiA1MyAtIDEgPT0gOTAwNzE5OTI1NDc0MDk5MVxufTtcbiIsICJ2YXIgcmVxdWlyZU9iamVjdENvZXJjaWJsZSA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9yZXF1aXJlLW9iamVjdC1jb2VyY2libGUnKTtcblxuLy8gYFRvT2JqZWN0YCBhYnN0cmFjdCBvcGVyYXRpb25cbi8vIGh0dHBzOi8vdGMzOS5naXRodWIuaW8vZWNtYTI2Mi8jc2VjLXRvb2JqZWN0XG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChhcmd1bWVudCkge1xuICByZXR1cm4gT2JqZWN0KHJlcXVpcmVPYmplY3RDb2VyY2libGUoYXJndW1lbnQpKTtcbn07XG4iLCAidmFyIGlzT2JqZWN0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2lzLW9iamVjdCcpO1xuXG4vLyA3LjEuMSBUb1ByaW1pdGl2ZShpbnB1dCBbLCBQcmVmZXJyZWRUeXBlXSlcbi8vIGluc3RlYWQgb2YgdGhlIEVTNiBzcGVjIHZlcnNpb24sIHdlIGRpZG4ndCBpbXBsZW1lbnQgQEB0b1ByaW1pdGl2ZSBjYXNlXG4vLyBhbmQgdGhlIHNlY29uZCBhcmd1bWVudCAtIGZsYWcgLSBwcmVmZXJyZWQgdHlwZSBpcyBhIHN0cmluZ1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoaXQsIFMpIHtcbiAgaWYgKCFpc09iamVjdChpdCkpIHJldHVybiBpdDtcbiAgdmFyIGZuLCB2YWw7XG4gIGlmIChTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICBpZiAodHlwZW9mIChmbiA9IGl0LnZhbHVlT2YpID09ICdmdW5jdGlvbicgJiYgIWlzT2JqZWN0KHZhbCA9IGZuLmNhbGwoaXQpKSkgcmV0dXJuIHZhbDtcbiAgaWYgKCFTICYmIHR5cGVvZiAoZm4gPSBpdC50b1N0cmluZykgPT0gJ2Z1bmN0aW9uJyAmJiAhaXNPYmplY3QodmFsID0gZm4uY2FsbChpdCkpKSByZXR1cm4gdmFsO1xuICB0aHJvdyBUeXBlRXJyb3IoXCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWVcIik7XG59O1xuIiwgInZhciBpZCA9IDA7XG52YXIgcG9zdGZpeCA9IE1hdGgucmFuZG9tKCk7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gKGtleSkge1xuICByZXR1cm4gJ1N5bWJvbCgnLmNvbmNhdChrZXkgPT09IHVuZGVmaW5lZCA/ICcnIDoga2V5LCAnKV8nLCAoKytpZCArIHBvc3RmaXgpLnRvU3RyaW5nKDM2KSk7XG59O1xuIiwgInZhciBpc09iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9pcy1vYmplY3QnKTtcbnZhciBhbk9iamVjdCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9hbi1vYmplY3QnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAoTywgcHJvdG8pIHtcbiAgYW5PYmplY3QoTyk7XG4gIGlmICghaXNPYmplY3QocHJvdG8pICYmIHByb3RvICE9PSBudWxsKSB7XG4gICAgdGhyb3cgVHlwZUVycm9yKFwiQ2FuJ3Qgc2V0IFwiICsgU3RyaW5nKHByb3RvKSArICcgYXMgYSBwcm90b3R5cGUnKTtcbiAgfVxufTtcbiIsICJ2YXIgZ2xvYmFsID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2dsb2JhbCcpO1xudmFyIHNoYXJlZCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9zaGFyZWQnKTtcbnZhciB1aWQgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvdWlkJyk7XG52YXIgTkFUSVZFX1NZTUJPTCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9uYXRpdmUtc3ltYm9sJyk7XG5cbnZhciBTeW1ib2wgPSBnbG9iYWwuU3ltYm9sO1xudmFyIHN0b3JlID0gc2hhcmVkKCd3a3MnKTtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAobmFtZSkge1xuICByZXR1cm4gc3RvcmVbbmFtZV0gfHwgKHN0b3JlW25hbWVdID0gTkFUSVZFX1NZTUJPTCAmJiBTeW1ib2xbbmFtZV1cbiAgICB8fCAoTkFUSVZFX1NZTUJPTCA/IFN5bWJvbCA6IHVpZCkoJ1N5bWJvbC4nICsgbmFtZSkpO1xufTtcbiIsICJ2YXIgJCA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9leHBvcnQnKTtcbnZhciBmcm9tID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL2FycmF5LWZyb20nKTtcbnZhciBjaGVja0NvcnJlY3RuZXNzT2ZJdGVyYXRpb24gPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvY2hlY2stY29ycmVjdG5lc3Mtb2YtaXRlcmF0aW9uJyk7XG5cbnZhciBJTkNPUlJFQ1RfSVRFUkFUSU9OID0gIWNoZWNrQ29ycmVjdG5lc3NPZkl0ZXJhdGlvbihmdW5jdGlvbiAoaXRlcmFibGUpIHtcbiAgQXJyYXkuZnJvbShpdGVyYWJsZSk7XG59KTtcblxuLy8gYEFycmF5LmZyb21gIG1ldGhvZFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtYXJyYXkuZnJvbVxuJCh7IHRhcmdldDogJ0FycmF5Jywgc3RhdDogdHJ1ZSwgZm9yY2VkOiBJTkNPUlJFQ1RfSVRFUkFUSU9OIH0sIHtcbiAgZnJvbTogZnJvbVxufSk7XG4iLCAiJ3VzZSBzdHJpY3QnO1xudmFyIGNvZGVQb2ludEF0ID0gcmVxdWlyZSgnLi4vaW50ZXJuYWxzL3N0cmluZy1hdCcpO1xudmFyIEludGVybmFsU3RhdGVNb2R1bGUgPSByZXF1aXJlKCcuLi9pbnRlcm5hbHMvaW50ZXJuYWwtc3RhdGUnKTtcbnZhciBkZWZpbmVJdGVyYXRvciA9IHJlcXVpcmUoJy4uL2ludGVybmFscy9kZWZpbmUtaXRlcmF0b3InKTtcblxudmFyIFNUUklOR19JVEVSQVRPUiA9ICdTdHJpbmcgSXRlcmF0b3InO1xudmFyIHNldEludGVybmFsU3RhdGUgPSBJbnRlcm5hbFN0YXRlTW9kdWxlLnNldDtcbnZhciBnZXRJbnRlcm5hbFN0YXRlID0gSW50ZXJuYWxTdGF0ZU1vZHVsZS5nZXR0ZXJGb3IoU1RSSU5HX0lURVJBVE9SKTtcblxuLy8gYFN0cmluZy5wcm90b3R5cGVbQEBpdGVyYXRvcl1gIG1ldGhvZFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtc3RyaW5nLnByb3RvdHlwZS1AQGl0ZXJhdG9yXG5kZWZpbmVJdGVyYXRvcihTdHJpbmcsICdTdHJpbmcnLCBmdW5jdGlvbiAoaXRlcmF0ZWQpIHtcbiAgc2V0SW50ZXJuYWxTdGF0ZSh0aGlzLCB7XG4gICAgdHlwZTogU1RSSU5HX0lURVJBVE9SLFxuICAgIHN0cmluZzogU3RyaW5nKGl0ZXJhdGVkKSxcbiAgICBpbmRleDogMFxuICB9KTtcbi8vIGAlU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUlLm5leHRgIG1ldGhvZFxuLy8gaHR0cHM6Ly90YzM5LmdpdGh1Yi5pby9lY21hMjYyLyNzZWMtJXN0cmluZ2l0ZXJhdG9ycHJvdG90eXBlJS5uZXh0XG59LCBmdW5jdGlvbiBuZXh0KCkge1xuICB2YXIgc3RhdGUgPSBnZXRJbnRlcm5hbFN0YXRlKHRoaXMpO1xuICB2YXIgc3RyaW5nID0gc3RhdGUuc3RyaW5nO1xuICB2YXIgaW5kZXggPSBzdGF0ZS5pbmRleDtcbiAgdmFyIHBvaW50O1xuICBpZiAoaW5kZXggPj0gc3RyaW5nLmxlbmd0aCkgcmV0dXJuIHsgdmFsdWU6IHVuZGVmaW5lZCwgZG9uZTogdHJ1ZSB9O1xuICBwb2ludCA9IGNvZGVQb2ludEF0KHN0cmluZywgaW5kZXgsIHRydWUpO1xuICBzdGF0ZS5pbmRleCArPSBwb2ludC5sZW5ndGg7XG4gIHJldHVybiB7IHZhbHVlOiBwb2ludCwgZG9uZTogZmFsc2UgfTtcbn0pO1xuIiwgInZhciBnO1xyXG5cclxuLy8gVGhpcyB3b3JrcyBpbiBub24tc3RyaWN0IG1vZGVcclxuZyA9IChmdW5jdGlvbigpIHtcclxuXHRyZXR1cm4gdGhpcztcclxufSkoKTtcclxuXHJcbnRyeSB7XHJcblx0Ly8gVGhpcyB3b3JrcyBpZiBldmFsIGlzIGFsbG93ZWQgKHNlZSBDU1ApXHJcblx0ZyA9IGcgfHwgRnVuY3Rpb24oXCJyZXR1cm4gdGhpc1wiKSgpIHx8ICgxLCBldmFsKShcInRoaXNcIik7XHJcbn0gY2F0Y2ggKGUpIHtcclxuXHQvLyBUaGlzIHdvcmtzIGlmIHRoZSB3aW5kb3cgcmVmZXJlbmNlIGlzIGF2YWlsYWJsZVxyXG5cdGlmICh0eXBlb2Ygd2luZG93ID09PSBcIm9iamVjdFwiKSBnID0gd2luZG93O1xyXG59XHJcblxyXG4vLyBnIGNhbiBzdGlsbCBiZSB1bmRlZmluZWQsIGJ1dCBub3RoaW5nIHRvIGRvIGFib3V0IGl0Li4uXHJcbi8vIFdlIHJldHVybiB1bmRlZmluZWQsIGluc3RlYWQgb2Ygbm90aGluZyBoZXJlLCBzbyBpdCdzXHJcbi8vIGVhc2llciB0byBoYW5kbGUgdGhpcyBjYXNlLiBpZighZ2xvYmFsKSB7IC4uLn1cclxuXHJcbm1vZHVsZS5leHBvcnRzID0gZztcclxuIiwgImltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMvZGVkdXBlJztcblxuaW1wb3J0IERFRkFVTFRfQVRUUlMgZnJvbSAnLi9kZWZhdWx0LWF0dHJzLmpzb24nO1xuXG5jbGFzcyBJY29uIHtcbiAgY29uc3RydWN0b3IobmFtZSwgY29udGVudHMsIHRhZ3MgPSBbXSkge1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5jb250ZW50cyA9IGNvbnRlbnRzO1xuICAgIHRoaXMudGFncyA9IHRhZ3M7XG4gICAgdGhpcy5hdHRycyA9IHtcbiAgICAgIC4uLkRFRkFVTFRfQVRUUlMsXG4gICAgICAuLi57IGNsYXNzOiBgZmVhdGhlciBmZWF0aGVyLSR7bmFtZX1gIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gU1ZHIHN0cmluZy5cbiAgICogQHBhcmFtIHtPYmplY3R9IGF0dHJzXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICB0b1N2ZyhhdHRycyA9IHt9KSB7XG4gICAgY29uc3QgY29tYmluZWRBdHRycyA9IHtcbiAgICAgIC4uLnRoaXMuYXR0cnMsXG4gICAgICAuLi5hdHRycyxcbiAgICAgIC4uLnsgY2xhc3M6IGNsYXNzbmFtZXModGhpcy5hdHRycy5jbGFzcywgYXR0cnMuY2xhc3MpIH0sXG4gICAgfTtcblxuICAgIHJldHVybiBgPHN2ZyAke2F0dHJzVG9TdHJpbmcoY29tYmluZWRBdHRycyl9PiR7dGhpcy5jb250ZW50c308L3N2Zz5gO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW4gYEljb25gLlxuICAgKlxuICAgKiBBZGRlZCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gSWYgb2xkIGNvZGUgZXhwZWN0cyBgZmVhdGhlci5pY29ucy48bmFtZT5gXG4gICAqIHRvIGJlIGEgc3RyaW5nLCBgdG9TdHJpbmcoKWAgd2lsbCBnZXQgaW1wbGljaXRseSBjYWxsZWQuXG4gICAqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9XG4gICAqL1xuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50cztcbiAgfVxufVxuXG4vKipcbiAqIENvbnZlcnQgYXR0cmlidXRlcyBvYmplY3QgdG8gc3RyaW5nIG9mIEhUTUwgYXR0cmlidXRlcy5cbiAqIEBwYXJhbSB7T2JqZWN0fSBhdHRyc1xuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gYXR0cnNUb1N0cmluZyhhdHRycykge1xuICByZXR1cm4gT2JqZWN0LmtleXMoYXR0cnMpXG4gICAgLm1hcChrZXkgPT4gYCR7a2V5fT1cIiR7YXR0cnNba2V5XX1cImApXG4gICAgLmpvaW4oJyAnKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgSWNvbjtcbiIsICJpbXBvcnQgSWNvbiBmcm9tICcuL2ljb24nO1xuaW1wb3J0IGljb25zIGZyb20gJy4uL2Rpc3QvaWNvbnMuanNvbic7XG5pbXBvcnQgdGFncyBmcm9tICcuL3RhZ3MuanNvbic7XG5cbmV4cG9ydCBkZWZhdWx0IE9iamVjdC5rZXlzKGljb25zKVxuICAubWFwKGtleSA9PiBuZXcgSWNvbihrZXksIGljb25zW2tleV0sIHRhZ3Nba2V5XSkpXG4gIC5yZWR1Y2UoKG9iamVjdCwgaWNvbikgPT4ge1xuICAgIG9iamVjdFtpY29uLm5hbWVdID0gaWNvbjtcbiAgICByZXR1cm4gb2JqZWN0O1xuICB9LCB7fSk7XG4iLCAiaW1wb3J0IGljb25zIGZyb20gJy4vaWNvbnMnO1xuaW1wb3J0IHRvU3ZnIGZyb20gJy4vdG8tc3ZnJztcbmltcG9ydCByZXBsYWNlIGZyb20gJy4vcmVwbGFjZSc7XG5cbm1vZHVsZS5leHBvcnRzID0geyBpY29ucywgdG9TdmcsIHJlcGxhY2UgfTtcbiIsICIvKiBlc2xpbnQtZW52IGJyb3dzZXIgKi9cbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMvZGVkdXBlJztcblxuaW1wb3J0IGljb25zIGZyb20gJy4vaWNvbnMnO1xuXG4vKipcbiAqIFJlcGxhY2UgYWxsIEhUTUwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYGRhdGEtZmVhdGhlcmAgYXR0cmlidXRlIHdpdGggU1ZHIG1hcmt1cFxuICogY29ycmVzcG9uZGluZyB0byB0aGUgZWxlbWVudCdzIGBkYXRhLWZlYXRoZXJgIGF0dHJpYnV0ZSB2YWx1ZS5cbiAqIEBwYXJhbSB7T2JqZWN0fSBhdHRyc1xuICovXG5mdW5jdGlvbiByZXBsYWNlKGF0dHJzID0ge30pIHtcbiAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2BmZWF0aGVyLnJlcGxhY2UoKWAgb25seSB3b3JrcyBpbiBhIGJyb3dzZXIgZW52aXJvbm1lbnQuJyk7XG4gIH1cblxuICBjb25zdCBlbGVtZW50c1RvUmVwbGFjZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLWZlYXRoZXJdJyk7XG5cbiAgQXJyYXkuZnJvbShlbGVtZW50c1RvUmVwbGFjZSkuZm9yRWFjaChlbGVtZW50ID0+XG4gICAgcmVwbGFjZUVsZW1lbnQoZWxlbWVudCwgYXR0cnMpLFxuICApO1xufVxuXG4vKipcbiAqIFJlcGxhY2UgYSBzaW5nbGUgSFRNTCBlbGVtZW50IHdpdGggU1ZHIG1hcmt1cFxuICogY29ycmVzcG9uZGluZyB0byB0aGUgZWxlbWVudCdzIGBkYXRhLWZlYXRoZXJgIGF0dHJpYnV0ZSB2YWx1ZS5cbiAqIEBwYXJhbSB7SFRNTEVsZW1lbnR9IGVsZW1lbnRcbiAqIEBwYXJhbSB7T2JqZWN0fSBhdHRyc1xuICovXG5mdW5jdGlvbiByZXBsYWNlRWxlbWVudChlbGVtZW50LCBhdHRycyA9IHt9KSB7XG4gIGNvbnN0IGVsZW1lbnRBdHRycyA9IGdldEF0dHJzKGVsZW1lbnQpO1xuICBjb25zdCBuYW1lID0gZWxlbWVudEF0dHJzWydkYXRhLWZlYXRoZXInXTtcbiAgZGVsZXRlIGVsZW1lbnRBdHRyc1snZGF0YS1mZWF0aGVyJ107XG5cbiAgaWYgKGljb25zW25hbWVdID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zb2xlLndhcm4oYGZlYXRoZXI6ICcke25hbWV9JyBpcyBub3QgYSB2YWxpZCBpY29uYCk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3Qgc3ZnU3RyaW5nID0gaWNvbnNbbmFtZV0udG9Tdmcoe1xuICAgIC4uLmF0dHJzLFxuICAgIC4uLmVsZW1lbnRBdHRycyxcbiAgICAuLi57IGNsYXNzOiBjbGFzc25hbWVzKGF0dHJzLmNsYXNzLCBlbGVtZW50QXR0cnMuY2xhc3MpIH0sXG4gIH0pO1xuICBjb25zdCBzdmdEb2N1bWVudCA9IG5ldyBET01QYXJzZXIoKS5wYXJzZUZyb21TdHJpbmcoXG4gICAgc3ZnU3RyaW5nLFxuICAgICdpbWFnZS9zdmcreG1sJyxcbiAgKTtcbiAgY29uc3Qgc3ZnRWxlbWVudCA9IHN2Z0RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3N2ZycpO1xuXG4gIGVsZW1lbnQucGFyZW50Tm9kZS5yZXBsYWNlQ2hpbGQoc3ZnRWxlbWVudCwgZWxlbWVudCk7XG59XG5cbi8qKlxuICogR2V0IHRoZSBhdHRyaWJ1dGVzIG9mIGFuIEhUTUwgZWxlbWVudC5cbiAqIEBwYXJhbSB7SFRNTEVsZW1lbnR9IGVsZW1lbnRcbiAqIEByZXR1cm5zIHtPYmplY3R9XG4gKi9cbmZ1bmN0aW9uIGdldEF0dHJzKGVsZW1lbnQpIHtcbiAgcmV0dXJuIEFycmF5LmZyb20oZWxlbWVudC5hdHRyaWJ1dGVzKS5yZWR1Y2UoKGF0dHJzLCBhdHRyKSA9PiB7XG4gICAgYXR0cnNbYXR0ci5uYW1lXSA9IGF0dHIudmFsdWU7XG4gICAgcmV0dXJuIGF0dHJzO1xuICB9LCB7fSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHJlcGxhY2U7XG4iLCAiaW1wb3J0IGljb25zIGZyb20gJy4vaWNvbnMnO1xuXG4vKipcbiAqIENyZWF0ZSBhbiBTVkcgc3RyaW5nLlxuICogQGRlcHJlY2F0ZWRcbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lXG4gKiBAcGFyYW0ge09iamVjdH0gYXR0cnNcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmZ1bmN0aW9uIHRvU3ZnKG5hbWUsIGF0dHJzID0ge30pIHtcbiAgY29uc29sZS53YXJuKFxuICAgICdmZWF0aGVyLnRvU3ZnKCkgaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSBmZWF0aGVyLmljb25zW25hbWVdLnRvU3ZnKCkgaW5zdGVhZC4nLFxuICApO1xuXG4gIGlmICghbmFtZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignVGhlIHJlcXVpcmVkIGBrZXlgIChpY29uIG5hbWUpIHBhcmFtZXRlciBpcyBtaXNzaW5nLicpO1xuICB9XG5cbiAgaWYgKCFpY29uc1tuYW1lXSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBObyBpY29uIG1hdGNoaW5nICcke25hbWV9Jy4gU2VlIHRoZSBjb21wbGV0ZSBsaXN0IG9mIGljb25zIGF0IGh0dHBzOi8vZmVhdGhlcmljb25zLmNvbWAsXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBpY29uc1tuYW1lXS50b1N2ZyhhdHRycyk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHRvU3ZnO1xuIiwgIjsoZnVuY3Rpb24gKHNheCkge1xuICAvLyB3cmFwcGVyIGZvciBub24tbm9kZSBlbnZzXG4gIHNheC5wYXJzZXIgPSBmdW5jdGlvbiAoc3RyaWN0LCBvcHQpIHtcbiAgICByZXR1cm4gbmV3IFNBWFBhcnNlcihzdHJpY3QsIG9wdClcbiAgfVxuICBzYXguU0FYUGFyc2VyID0gU0FYUGFyc2VyXG4gIHNheC5TQVhTdHJlYW0gPSBTQVhTdHJlYW1cbiAgc2F4LmNyZWF0ZVN0cmVhbSA9IGNyZWF0ZVN0cmVhbVxuXG4gIC8vIFdoZW4gd2UgcGFzcyB0aGUgTUFYX0JVRkZFUl9MRU5HVEggcG9zaXRpb24sIHN0YXJ0IGNoZWNraW5nIGZvciBidWZmZXIgb3ZlcnJ1bnMuXG4gIC8vIFdoZW4gd2UgY2hlY2ssIHNjaGVkdWxlIHRoZSBuZXh0IGNoZWNrIGZvciBNQVhfQlVGRkVSX0xFTkdUSCAtIChtYXgoYnVmZmVyIGxlbmd0aHMpKSxcbiAgLy8gc2luY2UgdGhhdCdzIHRoZSBlYXJsaWVzdCB0aGF0IGEgYnVmZmVyIG92ZXJydW4gY291bGQgb2NjdXIuICBUaGlzIHdheSwgY2hlY2tzIGFyZVxuICAvLyBhcyByYXJlIGFzIHJlcXVpcmVkLCBidXQgYXMgb2Z0ZW4gYXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSBuZXZlciBjcm9zc2luZyB0aGlzIGJvdW5kLlxuICAvLyBGdXJ0aGVybW9yZSwgYnVmZmVycyBhcmUgb25seSB0ZXN0ZWQgYXQgbW9zdCBvbmNlIHBlciB3cml0ZSgpLCBzbyBwYXNzaW5nIGEgdmVyeVxuICAvLyBsYXJnZSBzdHJpbmcgaW50byB3cml0ZSgpIG1pZ2h0IGhhdmUgdW5kZXNpcmFibGUgZWZmZWN0cywgYnV0IHRoaXMgaXMgbWFuYWdlYWJsZSBieVxuICAvLyB0aGUgY2FsbGVyLCBzbyBpdCBpcyBhc3N1bWVkIHRvIGJlIHNhZmUuICBUaHVzLCBhIGNhbGwgdG8gd3JpdGUoKSBtYXksIGluIHRoZSBleHRyZW1lXG4gIC8vIGVkZ2UgY2FzZSwgcmVzdWx0IGluIGNyZWF0aW5nIGF0IG1vc3Qgb25lIGNvbXBsZXRlIGNvcHkgb2YgdGhlIHN0cmluZyBwYXNzZWQgaW4uXG4gIC8vIFNldCB0byBJbmZpbml0eSB0byBoYXZlIHVubGltaXRlZCBidWZmZXJzLlxuICBzYXguTUFYX0JVRkZFUl9MRU5HVEggPSA2NCAqIDEwMjRcblxuICB2YXIgYnVmZmVycyA9IFtcbiAgICAnY29tbWVudCcsXG4gICAgJ3NnbWxEZWNsJyxcbiAgICAndGV4dE5vZGUnLFxuICAgICd0YWdOYW1lJyxcbiAgICAnZG9jdHlwZScsXG4gICAgJ3Byb2NJbnN0TmFtZScsXG4gICAgJ3Byb2NJbnN0Qm9keScsXG4gICAgJ2VudGl0eScsXG4gICAgJ2F0dHJpYk5hbWUnLFxuICAgICdhdHRyaWJWYWx1ZScsXG4gICAgJ2NkYXRhJyxcbiAgICAnc2NyaXB0JyxcbiAgXVxuXG4gIHNheC5FVkVOVFMgPSBbXG4gICAgJ3RleHQnLFxuICAgICdwcm9jZXNzaW5naW5zdHJ1Y3Rpb24nLFxuICAgICdzZ21sZGVjbGFyYXRpb24nLFxuICAgICdkb2N0eXBlJyxcbiAgICAnY29tbWVudCcsXG4gICAgJ29wZW50YWdzdGFydCcsXG4gICAgJ2F0dHJpYnV0ZScsXG4gICAgJ29wZW50YWcnLFxuICAgICdjbG9zZXRhZycsXG4gICAgJ29wZW5jZGF0YScsXG4gICAgJ2NkYXRhJyxcbiAgICAnY2xvc2VjZGF0YScsXG4gICAgJ2Vycm9yJyxcbiAgICAnZW5kJyxcbiAgICAncmVhZHknLFxuICAgICdzY3JpcHQnLFxuICAgICdvcGVubmFtZXNwYWNlJyxcbiAgICAnY2xvc2VuYW1lc3BhY2UnLFxuICBdXG5cbiAgZnVuY3Rpb24gU0FYUGFyc2VyKHN0cmljdCwgb3B0KSB7XG4gICAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIFNBWFBhcnNlcikpIHtcbiAgICAgIHJldHVybiBuZXcgU0FYUGFyc2VyKHN0cmljdCwgb3B0KVxuICAgIH1cblxuICAgIHZhciBwYXJzZXIgPSB0aGlzXG4gICAgY2xlYXJCdWZmZXJzKHBhcnNlcilcbiAgICBwYXJzZXIucSA9IHBhcnNlci5jID0gJydcbiAgICBwYXJzZXIuYnVmZmVyQ2hlY2tQb3NpdGlvbiA9IHNheC5NQVhfQlVGRkVSX0xFTkdUSFxuICAgIHBhcnNlci5vcHQgPSBvcHQgfHwge31cbiAgICBwYXJzZXIub3B0Lmxvd2VyY2FzZSA9IHBhcnNlci5vcHQubG93ZXJjYXNlIHx8IHBhcnNlci5vcHQubG93ZXJjYXNldGFnc1xuICAgIHBhcnNlci5sb29zZUNhc2UgPSBwYXJzZXIub3B0Lmxvd2VyY2FzZSA/ICd0b0xvd2VyQ2FzZScgOiAndG9VcHBlckNhc2UnXG4gICAgcGFyc2VyLnRhZ3MgPSBbXVxuICAgIHBhcnNlci5jbG9zZWQgPSBwYXJzZXIuY2xvc2VkUm9vdCA9IHBhcnNlci5zYXdSb290ID0gZmFsc2VcbiAgICBwYXJzZXIudGFnID0gcGFyc2VyLmVycm9yID0gbnVsbFxuICAgIHBhcnNlci5zdHJpY3QgPSAhIXN0cmljdFxuICAgIHBhcnNlci5ub3NjcmlwdCA9ICEhKHN0cmljdCB8fCBwYXJzZXIub3B0Lm5vc2NyaXB0KVxuICAgIHBhcnNlci5zdGF0ZSA9IFMuQkVHSU5cbiAgICBwYXJzZXIuc3RyaWN0RW50aXRpZXMgPSBwYXJzZXIub3B0LnN0cmljdEVudGl0aWVzXG4gICAgcGFyc2VyLkVOVElUSUVTID1cbiAgICAgIHBhcnNlci5zdHJpY3RFbnRpdGllcyA/XG4gICAgICAgIE9iamVjdC5jcmVhdGUoc2F4LlhNTF9FTlRJVElFUylcbiAgICAgIDogT2JqZWN0LmNyZWF0ZShzYXguRU5USVRJRVMpXG4gICAgcGFyc2VyLmF0dHJpYkxpc3QgPSBbXVxuXG4gICAgLy8gbmFtZXNwYWNlcyBmb3JtIGEgcHJvdG90eXBlIGNoYWluLlxuICAgIC8vIGl0IGFsd2F5cyBwb2ludHMgYXQgdGhlIGN1cnJlbnQgdGFnLFxuICAgIC8vIHdoaWNoIHByb3RvcyB0byBpdHMgcGFyZW50IHRhZy5cbiAgICBpZiAocGFyc2VyLm9wdC54bWxucykge1xuICAgICAgcGFyc2VyLm5zID0gT2JqZWN0LmNyZWF0ZShyb290TlMpXG4gICAgfVxuXG4gICAgLy8gZGlzYWxsb3cgdW5xdW90ZWQgYXR0cmlidXRlIHZhbHVlcyBpZiBub3Qgb3RoZXJ3aXNlIGNvbmZpZ3VyZWRcbiAgICAvLyBhbmQgc3RyaWN0IG1vZGUgaXMgdHJ1ZVxuICAgIGlmIChwYXJzZXIub3B0LnVucXVvdGVkQXR0cmlidXRlVmFsdWVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHBhcnNlci5vcHQudW5xdW90ZWRBdHRyaWJ1dGVWYWx1ZXMgPSAhc3RyaWN0XG4gICAgfVxuXG4gICAgLy8gbW9zdGx5IGp1c3QgZm9yIGVycm9yIHJlcG9ydGluZ1xuICAgIHBhcnNlci50cmFja1Bvc2l0aW9uID0gcGFyc2VyLm9wdC5wb3NpdGlvbiAhPT0gZmFsc2VcbiAgICBpZiAocGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgIHBhcnNlci5wb3NpdGlvbiA9IHBhcnNlci5saW5lID0gcGFyc2VyLmNvbHVtbiA9IDBcbiAgICB9XG4gICAgZW1pdChwYXJzZXIsICdvbnJlYWR5JylcbiAgfVxuXG4gIGlmICghT2JqZWN0LmNyZWF0ZSkge1xuICAgIE9iamVjdC5jcmVhdGUgPSBmdW5jdGlvbiAobykge1xuICAgICAgZnVuY3Rpb24gRigpIHt9XG4gICAgICBGLnByb3RvdHlwZSA9IG9cbiAgICAgIHZhciBuZXdmID0gbmV3IEYoKVxuICAgICAgcmV0dXJuIG5ld2ZcbiAgICB9XG4gIH1cblxuICBpZiAoIU9iamVjdC5rZXlzKSB7XG4gICAgT2JqZWN0LmtleXMgPSBmdW5jdGlvbiAobykge1xuICAgICAgdmFyIGEgPSBbXVxuICAgICAgZm9yICh2YXIgaSBpbiBvKSBpZiAoby5oYXNPd25Qcm9wZXJ0eShpKSkgYS5wdXNoKGkpXG4gICAgICByZXR1cm4gYVxuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNoZWNrQnVmZmVyTGVuZ3RoKHBhcnNlcikge1xuICAgIHZhciBtYXhBbGxvd2VkID0gTWF0aC5tYXgoc2F4Lk1BWF9CVUZGRVJfTEVOR1RILCAxMClcbiAgICB2YXIgbWF4QWN0dWFsID0gMFxuICAgIGZvciAodmFyIGkgPSAwLCBsID0gYnVmZmVycy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIHZhciBsZW4gPSBwYXJzZXJbYnVmZmVyc1tpXV0ubGVuZ3RoXG4gICAgICBpZiAobGVuID4gbWF4QWxsb3dlZCkge1xuICAgICAgICAvLyBUZXh0L2NkYXRhIG5vZGVzIGNhbiBnZXQgYmlnLCBhbmQgc2luY2UgdGhleSdyZSBidWZmZXJlZCxcbiAgICAgICAgLy8gd2UgY2FuIGdldCBoZXJlIHVuZGVyIG5vcm1hbCBjb25kaXRpb25zLlxuICAgICAgICAvLyBBdm9pZCBpc3N1ZXMgYnkgZW1pdHRpbmcgdGhlIHRleHQgbm9kZSBub3csXG4gICAgICAgIC8vIHNvIGF0IGxlYXN0IGl0IHdvbid0IGdldCBhbnkgYmlnZ2VyLlxuICAgICAgICBzd2l0Y2ggKGJ1ZmZlcnNbaV0pIHtcbiAgICAgICAgICBjYXNlICd0ZXh0Tm9kZSc6XG4gICAgICAgICAgICBjbG9zZVRleHQocGFyc2VyKVxuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGNhc2UgJ2NkYXRhJzpcbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2RhdGEnLCBwYXJzZXIuY2RhdGEpXG4gICAgICAgICAgICBwYXJzZXIuY2RhdGEgPSAnJ1xuICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgIGNhc2UgJ3NjcmlwdCc6XG4gICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbnNjcmlwdCcsIHBhcnNlci5zY3JpcHQpXG4gICAgICAgICAgICBwYXJzZXIuc2NyaXB0ID0gJydcbiAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgZXJyb3IocGFyc2VyLCAnTWF4IGJ1ZmZlciBsZW5ndGggZXhjZWVkZWQ6ICcgKyBidWZmZXJzW2ldKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBtYXhBY3R1YWwgPSBNYXRoLm1heChtYXhBY3R1YWwsIGxlbilcbiAgICB9XG4gICAgLy8gc2NoZWR1bGUgdGhlIG5leHQgY2hlY2sgZm9yIHRoZSBlYXJsaWVzdCBwb3NzaWJsZSBidWZmZXIgb3ZlcnJ1bi5cbiAgICB2YXIgbSA9IHNheC5NQVhfQlVGRkVSX0xFTkdUSCAtIG1heEFjdHVhbFxuICAgIHBhcnNlci5idWZmZXJDaGVja1Bvc2l0aW9uID0gbSArIHBhcnNlci5wb3NpdGlvblxuICB9XG5cbiAgZnVuY3Rpb24gY2xlYXJCdWZmZXJzKHBhcnNlcikge1xuICAgIGZvciAodmFyIGkgPSAwLCBsID0gYnVmZmVycy5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICAgIHBhcnNlcltidWZmZXJzW2ldXSA9ICcnXG4gICAgfVxuICB9XG5cbiAgZnVuY3Rpb24gZmx1c2hCdWZmZXJzKHBhcnNlcikge1xuICAgIGNsb3NlVGV4dChwYXJzZXIpXG4gICAgaWYgKHBhcnNlci5jZGF0YSAhPT0gJycpIHtcbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2RhdGEnLCBwYXJzZXIuY2RhdGEpXG4gICAgICBwYXJzZXIuY2RhdGEgPSAnJ1xuICAgIH1cbiAgICBpZiAocGFyc2VyLnNjcmlwdCAhPT0gJycpIHtcbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uc2NyaXB0JywgcGFyc2VyLnNjcmlwdClcbiAgICAgIHBhcnNlci5zY3JpcHQgPSAnJ1xuICAgIH1cbiAgfVxuXG4gIFNBWFBhcnNlci5wcm90b3R5cGUgPSB7XG4gICAgZW5kOiBmdW5jdGlvbiAoKSB7XG4gICAgICBlbmQodGhpcylcbiAgICB9LFxuICAgIHdyaXRlOiB3cml0ZSxcbiAgICByZXN1bWU6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSBudWxsXG4gICAgICByZXR1cm4gdGhpc1xuICAgIH0sXG4gICAgY2xvc2U6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB0aGlzLndyaXRlKG51bGwpXG4gICAgfSxcbiAgICBmbHVzaDogZnVuY3Rpb24gKCkge1xuICAgICAgZmx1c2hCdWZmZXJzKHRoaXMpXG4gICAgfSxcbiAgfVxuXG4gIHZhciBTdHJlYW1cbiAgdHJ5IHtcbiAgICBTdHJlYW0gPSByZXF1aXJlKCdzdHJlYW0nKS5TdHJlYW1cbiAgfSBjYXRjaCAoZXgpIHtcbiAgICBTdHJlYW0gPSBmdW5jdGlvbiAoKSB7fVxuICB9XG4gIGlmICghU3RyZWFtKSBTdHJlYW0gPSBmdW5jdGlvbiAoKSB7fVxuXG4gIHZhciBzdHJlYW1XcmFwcyA9IHNheC5FVkVOVFMuZmlsdGVyKGZ1bmN0aW9uIChldikge1xuICAgIHJldHVybiBldiAhPT0gJ2Vycm9yJyAmJiBldiAhPT0gJ2VuZCdcbiAgfSlcblxuICBmdW5jdGlvbiBjcmVhdGVTdHJlYW0oc3RyaWN0LCBvcHQpIHtcbiAgICByZXR1cm4gbmV3IFNBWFN0cmVhbShzdHJpY3QsIG9wdClcbiAgfVxuXG4gIGZ1bmN0aW9uIFNBWFN0cmVhbShzdHJpY3QsIG9wdCkge1xuICAgIGlmICghKHRoaXMgaW5zdGFuY2VvZiBTQVhTdHJlYW0pKSB7XG4gICAgICByZXR1cm4gbmV3IFNBWFN0cmVhbShzdHJpY3QsIG9wdClcbiAgICB9XG5cbiAgICBTdHJlYW0uYXBwbHkodGhpcylcblxuICAgIHRoaXMuX3BhcnNlciA9IG5ldyBTQVhQYXJzZXIoc3RyaWN0LCBvcHQpXG4gICAgdGhpcy53cml0YWJsZSA9IHRydWVcbiAgICB0aGlzLnJlYWRhYmxlID0gdHJ1ZVxuXG4gICAgdmFyIG1lID0gdGhpc1xuXG4gICAgdGhpcy5fcGFyc2VyLm9uZW5kID0gZnVuY3Rpb24gKCkge1xuICAgICAgbWUuZW1pdCgnZW5kJylcbiAgICB9XG5cbiAgICB0aGlzLl9wYXJzZXIub25lcnJvciA9IGZ1bmN0aW9uIChlcikge1xuICAgICAgbWUuZW1pdCgnZXJyb3InLCBlcilcblxuICAgICAgLy8gaWYgZGlkbid0IHRocm93LCB0aGVuIG1lYW5zIGVycm9yIHdhcyBoYW5kbGVkLlxuICAgICAgLy8gZ28gYWhlYWQgYW5kIGNsZWFyIGVycm9yLCBzbyB3ZSBjYW4gd3JpdGUgYWdhaW4uXG4gICAgICBtZS5fcGFyc2VyLmVycm9yID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXMuX2RlY29kZXIgPSBudWxsXG5cbiAgICBzdHJlYW1XcmFwcy5mb3JFYWNoKGZ1bmN0aW9uIChldikge1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG1lLCAnb24nICsgZXYsIHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIG1lLl9wYXJzZXJbJ29uJyArIGV2XVxuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChoKSB7XG4gICAgICAgICAgaWYgKCFoKSB7XG4gICAgICAgICAgICBtZS5yZW1vdmVBbGxMaXN0ZW5lcnMoZXYpXG4gICAgICAgICAgICBtZS5fcGFyc2VyWydvbicgKyBldl0gPSBoXG4gICAgICAgICAgICByZXR1cm4gaFxuICAgICAgICAgIH1cbiAgICAgICAgICBtZS5vbihldiwgaClcbiAgICAgICAgfSxcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSxcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIFNBWFN0cmVhbS5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKFN0cmVhbS5wcm90b3R5cGUsIHtcbiAgICBjb25zdHJ1Y3Rvcjoge1xuICAgICAgdmFsdWU6IFNBWFN0cmVhbSxcbiAgICB9LFxuICB9KVxuXG4gIFNBWFN0cmVhbS5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbiAoZGF0YSkge1xuICAgIGlmIChcbiAgICAgIHR5cGVvZiBCdWZmZXIgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgIHR5cGVvZiBCdWZmZXIuaXNCdWZmZXIgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgIEJ1ZmZlci5pc0J1ZmZlcihkYXRhKVxuICAgICkge1xuICAgICAgaWYgKCF0aGlzLl9kZWNvZGVyKSB7XG4gICAgICAgIHZhciBTRCA9IHJlcXVpcmUoJ3N0cmluZ19kZWNvZGVyJykuU3RyaW5nRGVjb2RlclxuICAgICAgICB0aGlzLl9kZWNvZGVyID0gbmV3IFNEKCd1dGY4JylcbiAgICAgIH1cbiAgICAgIGRhdGEgPSB0aGlzLl9kZWNvZGVyLndyaXRlKGRhdGEpXG4gICAgfVxuXG4gICAgdGhpcy5fcGFyc2VyLndyaXRlKGRhdGEudG9TdHJpbmcoKSlcbiAgICB0aGlzLmVtaXQoJ2RhdGEnLCBkYXRhKVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICBTQVhTdHJlYW0ucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uIChjaHVuaykge1xuICAgIGlmIChjaHVuayAmJiBjaHVuay5sZW5ndGgpIHtcbiAgICAgIHRoaXMud3JpdGUoY2h1bmspXG4gICAgfVxuICAgIHRoaXMuX3BhcnNlci5lbmQoKVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICBTQVhTdHJlYW0ucHJvdG90eXBlLm9uID0gZnVuY3Rpb24gKGV2LCBoYW5kbGVyKSB7XG4gICAgdmFyIG1lID0gdGhpc1xuICAgIGlmICghbWUuX3BhcnNlclsnb24nICsgZXZdICYmIHN0cmVhbVdyYXBzLmluZGV4T2YoZXYpICE9PSAtMSkge1xuICAgICAgbWUuX3BhcnNlclsnb24nICsgZXZdID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgYXJncyA9XG4gICAgICAgICAgYXJndW1lbnRzLmxlbmd0aCA9PT0gMSA/XG4gICAgICAgICAgICBbYXJndW1lbnRzWzBdXVxuICAgICAgICAgIDogQXJyYXkuYXBwbHkobnVsbCwgYXJndW1lbnRzKVxuICAgICAgICBhcmdzLnNwbGljZSgwLCAwLCBldilcbiAgICAgICAgbWUuZW1pdC5hcHBseShtZSwgYXJncylcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gU3RyZWFtLnByb3RvdHlwZS5vbi5jYWxsKG1lLCBldiwgaGFuZGxlcilcbiAgfVxuXG4gIC8vIHRoaXMgcmVhbGx5IG5lZWRzIHRvIGJlIHJlcGxhY2VkIHdpdGggY2hhcmFjdGVyIGNsYXNzZXMuXG4gIC8vIFhNTCBhbGxvd3MgYWxsIG1hbm5lciBvZiByaWRpY3Vsb3VzIG51bWJlcnMgYW5kIGRpZ2l0cy5cbiAgdmFyIENEQVRBID0gJ1tDREFUQVsnXG4gIHZhciBET0NUWVBFID0gJ0RPQ1RZUEUnXG4gIHZhciBYTUxfTkFNRVNQQUNFID0gJ2h0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSdcbiAgdmFyIFhNTE5TX05BTUVTUEFDRSA9ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3htbG5zLydcbiAgdmFyIHJvb3ROUyA9IHsgeG1sOiBYTUxfTkFNRVNQQUNFLCB4bWxuczogWE1MTlNfTkFNRVNQQUNFIH1cblxuICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9SRUMteG1sLyNOVC1OYW1lU3RhcnRDaGFyXG4gIC8vIFRoaXMgaW1wbGVtZW50YXRpb24gd29ya3Mgb24gc3RyaW5ncywgYSBzaW5nbGUgY2hhcmFjdGVyIGF0IGEgdGltZVxuICAvLyBhcyBzdWNoLCBpdCBjYW5ub3QgZXZlciBzdXBwb3J0IGFzdHJhbC1wbGFuZSBjaGFyYWN0ZXJzICgxMDAwMC1FRkZGRilcbiAgLy8gd2l0aG91dCBhIHNpZ25pZmljYW50IGJyZWFraW5nIGNoYW5nZSB0byBlaXRoZXIgdGhpcyAgcGFyc2VyLCBvciB0aGVcbiAgLy8gSmF2YVNjcmlwdCBsYW5ndWFnZS4gIEltcGxlbWVudGF0aW9uIG9mIGFuIGVtb2ppLWNhcGFibGUgeG1sIHBhcnNlclxuICAvLyBpcyBsZWZ0IGFzIGFuIGV4ZXJjaXNlIGZvciB0aGUgcmVhZGVyLlxuICB2YXIgbmFtZVN0YXJ0ID1cbiAgICAvWzpfQS1aYS16XFx1MDBDMC1cXHUwMEQ2XFx1MDBEOC1cXHUwMEY2XFx1MDBGOC1cXHUwMkZGXFx1MDM3MC1cXHUwMzdEXFx1MDM3Ri1cXHUxRkZGXFx1MjAwQy1cXHUyMDBEXFx1MjA3MC1cXHUyMThGXFx1MkMwMC1cXHUyRkVGXFx1MzAwMS1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkZEXS9cblxuICB2YXIgbmFtZUJvZHkgPVxuICAgIC9bOl9BLVphLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRcXHUwMEI3XFx1MDMwMC1cXHUwMzZGXFx1MjAzRi1cXHUyMDQwLlxcZC1dL1xuXG4gIHZhciBlbnRpdHlTdGFydCA9XG4gICAgL1sjOl9BLVphLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRdL1xuICB2YXIgZW50aXR5Qm9keSA9XG4gICAgL1sjOl9BLVphLXpcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyRkZcXHUwMzcwLVxcdTAzN0RcXHUwMzdGLVxcdTFGRkZcXHUyMDBDLVxcdTIwMERcXHUyMDcwLVxcdTIxOEZcXHUyQzAwLVxcdTJGRUZcXHUzMDAxLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRkRcXHUwMEI3XFx1MDMwMC1cXHUwMzZGXFx1MjAzRi1cXHUyMDQwLlxcZC1dL1xuXG4gIGZ1bmN0aW9uIGlzV2hpdGVzcGFjZShjKSB7XG4gICAgcmV0dXJuIGMgPT09ICcgJyB8fCBjID09PSAnXFxuJyB8fCBjID09PSAnXFxyJyB8fCBjID09PSAnXFx0J1xuICB9XG5cbiAgZnVuY3Rpb24gaXNRdW90ZShjKSB7XG4gICAgcmV0dXJuIGMgPT09ICdcIicgfHwgYyA9PT0gXCInXCJcbiAgfVxuXG4gIGZ1bmN0aW9uIGlzQXR0cmliRW5kKGMpIHtcbiAgICByZXR1cm4gYyA9PT0gJz4nIHx8IGlzV2hpdGVzcGFjZShjKVxuICB9XG5cbiAgZnVuY3Rpb24gaXNNYXRjaChyZWdleCwgYykge1xuICAgIHJldHVybiByZWdleC50ZXN0KGMpXG4gIH1cblxuICBmdW5jdGlvbiBub3RNYXRjaChyZWdleCwgYykge1xuICAgIHJldHVybiAhaXNNYXRjaChyZWdleCwgYylcbiAgfVxuXG4gIHZhciBTID0gMFxuICBzYXguU1RBVEUgPSB7XG4gICAgQkVHSU46IFMrKywgLy8gbGVhZGluZyBieXRlIG9yZGVyIG1hcmsgb3Igd2hpdGVzcGFjZVxuICAgIEJFR0lOX1dISVRFU1BBQ0U6IFMrKywgLy8gbGVhZGluZyB3aGl0ZXNwYWNlXG4gICAgVEVYVDogUysrLCAvLyBnZW5lcmFsIHN0dWZmXG4gICAgVEVYVF9FTlRJVFk6IFMrKywgLy8gJmFtcCBhbmQgc3VjaC5cbiAgICBPUEVOX1dBS0E6IFMrKywgLy8gPFxuICAgIFNHTUxfREVDTDogUysrLCAvLyA8IUJMQVJHXG4gICAgU0dNTF9ERUNMX1FVT1RFRDogUysrLCAvLyA8IUJMQVJHIGZvbyBcImJhclxuICAgIERPQ1RZUEU6IFMrKywgLy8gPCFET0NUWVBFXG4gICAgRE9DVFlQRV9RVU9URUQ6IFMrKywgLy8gPCFET0NUWVBFIFwiLy9ibGFoXG4gICAgRE9DVFlQRV9EVEQ6IFMrKywgLy8gPCFET0NUWVBFIFwiLy9ibGFoXCIgWyAuLi5cbiAgICBET0NUWVBFX0RURF9RVU9URUQ6IFMrKywgLy8gPCFET0NUWVBFIFwiLy9ibGFoXCIgWyBcImZvb1xuICAgIENPTU1FTlRfU1RBUlRJTkc6IFMrKywgLy8gPCEtXG4gICAgQ09NTUVOVDogUysrLCAvLyA8IS0tXG4gICAgQ09NTUVOVF9FTkRJTkc6IFMrKywgLy8gPCEtLSBibGFoIC1cbiAgICBDT01NRU5UX0VOREVEOiBTKyssIC8vIDwhLS0gYmxhaCAtLVxuICAgIENEQVRBOiBTKyssIC8vIDwhW0NEQVRBWyBzb21ldGhpbmdcbiAgICBDREFUQV9FTkRJTkc6IFMrKywgLy8gXVxuICAgIENEQVRBX0VORElOR18yOiBTKyssIC8vIF1dXG4gICAgUFJPQ19JTlNUOiBTKyssIC8vIDw/aGlcbiAgICBQUk9DX0lOU1RfQk9EWTogUysrLCAvLyA8P2hpIHRoZXJlXG4gICAgUFJPQ19JTlNUX0VORElORzogUysrLCAvLyA8P2hpIFwidGhlcmVcIiA/XG4gICAgT1BFTl9UQUc6IFMrKywgLy8gPHN0cm9uZ1xuICAgIE9QRU5fVEFHX1NMQVNIOiBTKyssIC8vIDxzdHJvbmcgL1xuICAgIEFUVFJJQjogUysrLCAvLyA8YVxuICAgIEFUVFJJQl9OQU1FOiBTKyssIC8vIDxhIGZvb1xuICAgIEFUVFJJQl9OQU1FX1NBV19XSElURTogUysrLCAvLyA8YSBmb28gX1xuICAgIEFUVFJJQl9WQUxVRTogUysrLCAvLyA8YSBmb289XG4gICAgQVRUUklCX1ZBTFVFX1FVT1RFRDogUysrLCAvLyA8YSBmb289XCJiYXJcbiAgICBBVFRSSUJfVkFMVUVfQ0xPU0VEOiBTKyssIC8vIDxhIGZvbz1cImJhclwiXG4gICAgQVRUUklCX1ZBTFVFX1VOUVVPVEVEOiBTKyssIC8vIDxhIGZvbz1iYXJcbiAgICBBVFRSSUJfVkFMVUVfRU5USVRZX1E6IFMrKywgLy8gPGZvbyBiYXI9XCImcXVvdDtcIlxuICAgIEFUVFJJQl9WQUxVRV9FTlRJVFlfVTogUysrLCAvLyA8Zm9vIGJhcj0mcXVvdFxuICAgIENMT1NFX1RBRzogUysrLCAvLyA8L2FcbiAgICBDTE9TRV9UQUdfU0FXX1dISVRFOiBTKyssIC8vIDwvYSAgID5cbiAgICBTQ1JJUFQ6IFMrKywgLy8gPHNjcmlwdD4gLi4uXG4gICAgU0NSSVBUX0VORElORzogUysrLCAvLyA8c2NyaXB0PiAuLi4gPFxuICB9XG5cbiAgc2F4LlhNTF9FTlRJVElFUyA9IHtcbiAgICBhbXA6ICcmJyxcbiAgICBndDogJz4nLFxuICAgIGx0OiAnPCcsXG4gICAgcXVvdDogJ1wiJyxcbiAgICBhcG9zOiBcIidcIixcbiAgfVxuXG4gIHNheC5FTlRJVElFUyA9IHtcbiAgICBhbXA6ICcmJyxcbiAgICBndDogJz4nLFxuICAgIGx0OiAnPCcsXG4gICAgcXVvdDogJ1wiJyxcbiAgICBhcG9zOiBcIidcIixcbiAgICBBRWxpZzogMTk4LFxuICAgIEFhY3V0ZTogMTkzLFxuICAgIEFjaXJjOiAxOTQsXG4gICAgQWdyYXZlOiAxOTIsXG4gICAgQXJpbmc6IDE5NyxcbiAgICBBdGlsZGU6IDE5NSxcbiAgICBBdW1sOiAxOTYsXG4gICAgQ2NlZGlsOiAxOTksXG4gICAgRVRIOiAyMDgsXG4gICAgRWFjdXRlOiAyMDEsXG4gICAgRWNpcmM6IDIwMixcbiAgICBFZ3JhdmU6IDIwMCxcbiAgICBFdW1sOiAyMDMsXG4gICAgSWFjdXRlOiAyMDUsXG4gICAgSWNpcmM6IDIwNixcbiAgICBJZ3JhdmU6IDIwNCxcbiAgICBJdW1sOiAyMDcsXG4gICAgTnRpbGRlOiAyMDksXG4gICAgT2FjdXRlOiAyMTEsXG4gICAgT2NpcmM6IDIxMixcbiAgICBPZ3JhdmU6IDIxMCxcbiAgICBPc2xhc2g6IDIxNixcbiAgICBPdGlsZGU6IDIxMyxcbiAgICBPdW1sOiAyMTQsXG4gICAgVEhPUk46IDIyMixcbiAgICBVYWN1dGU6IDIxOCxcbiAgICBVY2lyYzogMjE5LFxuICAgIFVncmF2ZTogMjE3LFxuICAgIFV1bWw6IDIyMCxcbiAgICBZYWN1dGU6IDIyMSxcbiAgICBhYWN1dGU6IDIyNSxcbiAgICBhY2lyYzogMjI2LFxuICAgIGFlbGlnOiAyMzAsXG4gICAgYWdyYXZlOiAyMjQsXG4gICAgYXJpbmc6IDIyOSxcbiAgICBhdGlsZGU6IDIyNyxcbiAgICBhdW1sOiAyMjgsXG4gICAgY2NlZGlsOiAyMzEsXG4gICAgZWFjdXRlOiAyMzMsXG4gICAgZWNpcmM6IDIzNCxcbiAgICBlZ3JhdmU6IDIzMixcbiAgICBldGg6IDI0MCxcbiAgICBldW1sOiAyMzUsXG4gICAgaWFjdXRlOiAyMzcsXG4gICAgaWNpcmM6IDIzOCxcbiAgICBpZ3JhdmU6IDIzNixcbiAgICBpdW1sOiAyMzksXG4gICAgbnRpbGRlOiAyNDEsXG4gICAgb2FjdXRlOiAyNDMsXG4gICAgb2NpcmM6IDI0NCxcbiAgICBvZ3JhdmU6IDI0MixcbiAgICBvc2xhc2g6IDI0OCxcbiAgICBvdGlsZGU6IDI0NSxcbiAgICBvdW1sOiAyNDYsXG4gICAgc3psaWc6IDIyMyxcbiAgICB0aG9ybjogMjU0LFxuICAgIHVhY3V0ZTogMjUwLFxuICAgIHVjaXJjOiAyNTEsXG4gICAgdWdyYXZlOiAyNDksXG4gICAgdXVtbDogMjUyLFxuICAgIHlhY3V0ZTogMjUzLFxuICAgIHl1bWw6IDI1NSxcbiAgICBjb3B5OiAxNjksXG4gICAgcmVnOiAxNzQsXG4gICAgbmJzcDogMTYwLFxuICAgIGlleGNsOiAxNjEsXG4gICAgY2VudDogMTYyLFxuICAgIHBvdW5kOiAxNjMsXG4gICAgY3VycmVuOiAxNjQsXG4gICAgeWVuOiAxNjUsXG4gICAgYnJ2YmFyOiAxNjYsXG4gICAgc2VjdDogMTY3LFxuICAgIHVtbDogMTY4LFxuICAgIG9yZGY6IDE3MCxcbiAgICBsYXF1bzogMTcxLFxuICAgIG5vdDogMTcyLFxuICAgIHNoeTogMTczLFxuICAgIG1hY3I6IDE3NSxcbiAgICBkZWc6IDE3NixcbiAgICBwbHVzbW46IDE3NyxcbiAgICBzdXAxOiAxODUsXG4gICAgc3VwMjogMTc4LFxuICAgIHN1cDM6IDE3OSxcbiAgICBhY3V0ZTogMTgwLFxuICAgIG1pY3JvOiAxODEsXG4gICAgcGFyYTogMTgyLFxuICAgIG1pZGRvdDogMTgzLFxuICAgIGNlZGlsOiAxODQsXG4gICAgb3JkbTogMTg2LFxuICAgIHJhcXVvOiAxODcsXG4gICAgZnJhYzE0OiAxODgsXG4gICAgZnJhYzEyOiAxODksXG4gICAgZnJhYzM0OiAxOTAsXG4gICAgaXF1ZXN0OiAxOTEsXG4gICAgdGltZXM6IDIxNSxcbiAgICBkaXZpZGU6IDI0NyxcbiAgICBPRWxpZzogMzM4LFxuICAgIG9lbGlnOiAzMzksXG4gICAgU2Nhcm9uOiAzNTIsXG4gICAgc2Nhcm9uOiAzNTMsXG4gICAgWXVtbDogMzc2LFxuICAgIGZub2Y6IDQwMixcbiAgICBjaXJjOiA3MTAsXG4gICAgdGlsZGU6IDczMixcbiAgICBBbHBoYTogOTEzLFxuICAgIEJldGE6IDkxNCxcbiAgICBHYW1tYTogOTE1LFxuICAgIERlbHRhOiA5MTYsXG4gICAgRXBzaWxvbjogOTE3LFxuICAgIFpldGE6IDkxOCxcbiAgICBFdGE6IDkxOSxcbiAgICBUaGV0YTogOTIwLFxuICAgIElvdGE6IDkyMSxcbiAgICBLYXBwYTogOTIyLFxuICAgIExhbWJkYTogOTIzLFxuICAgIE11OiA5MjQsXG4gICAgTnU6IDkyNSxcbiAgICBYaTogOTI2LFxuICAgIE9taWNyb246IDkyNyxcbiAgICBQaTogOTI4LFxuICAgIFJobzogOTI5LFxuICAgIFNpZ21hOiA5MzEsXG4gICAgVGF1OiA5MzIsXG4gICAgVXBzaWxvbjogOTMzLFxuICAgIFBoaTogOTM0LFxuICAgIENoaTogOTM1LFxuICAgIFBzaTogOTM2LFxuICAgIE9tZWdhOiA5MzcsXG4gICAgYWxwaGE6IDk0NSxcbiAgICBiZXRhOiA5NDYsXG4gICAgZ2FtbWE6IDk0NyxcbiAgICBkZWx0YTogOTQ4LFxuICAgIGVwc2lsb246IDk0OSxcbiAgICB6ZXRhOiA5NTAsXG4gICAgZXRhOiA5NTEsXG4gICAgdGhldGE6IDk1MixcbiAgICBpb3RhOiA5NTMsXG4gICAga2FwcGE6IDk1NCxcbiAgICBsYW1iZGE6IDk1NSxcbiAgICBtdTogOTU2LFxuICAgIG51OiA5NTcsXG4gICAgeGk6IDk1OCxcbiAgICBvbWljcm9uOiA5NTksXG4gICAgcGk6IDk2MCxcbiAgICByaG86IDk2MSxcbiAgICBzaWdtYWY6IDk2MixcbiAgICBzaWdtYTogOTYzLFxuICAgIHRhdTogOTY0LFxuICAgIHVwc2lsb246IDk2NSxcbiAgICBwaGk6IDk2NixcbiAgICBjaGk6IDk2NyxcbiAgICBwc2k6IDk2OCxcbiAgICBvbWVnYTogOTY5LFxuICAgIHRoZXRhc3ltOiA5NzcsXG4gICAgdXBzaWg6IDk3OCxcbiAgICBwaXY6IDk4MixcbiAgICBlbnNwOiA4MTk0LFxuICAgIGVtc3A6IDgxOTUsXG4gICAgdGhpbnNwOiA4MjAxLFxuICAgIHp3bmo6IDgyMDQsXG4gICAgendqOiA4MjA1LFxuICAgIGxybTogODIwNixcbiAgICBybG06IDgyMDcsXG4gICAgbmRhc2g6IDgyMTEsXG4gICAgbWRhc2g6IDgyMTIsXG4gICAgbHNxdW86IDgyMTYsXG4gICAgcnNxdW86IDgyMTcsXG4gICAgc2JxdW86IDgyMTgsXG4gICAgbGRxdW86IDgyMjAsXG4gICAgcmRxdW86IDgyMjEsXG4gICAgYmRxdW86IDgyMjIsXG4gICAgZGFnZ2VyOiA4MjI0LFxuICAgIERhZ2dlcjogODIyNSxcbiAgICBidWxsOiA4MjI2LFxuICAgIGhlbGxpcDogODIzMCxcbiAgICBwZXJtaWw6IDgyNDAsXG4gICAgcHJpbWU6IDgyNDIsXG4gICAgUHJpbWU6IDgyNDMsXG4gICAgbHNhcXVvOiA4MjQ5LFxuICAgIHJzYXF1bzogODI1MCxcbiAgICBvbGluZTogODI1NCxcbiAgICBmcmFzbDogODI2MCxcbiAgICBldXJvOiA4MzY0LFxuICAgIGltYWdlOiA4NDY1LFxuICAgIHdlaWVycDogODQ3MixcbiAgICByZWFsOiA4NDc2LFxuICAgIHRyYWRlOiA4NDgyLFxuICAgIGFsZWZzeW06IDg1MDEsXG4gICAgbGFycjogODU5MixcbiAgICB1YXJyOiA4NTkzLFxuICAgIHJhcnI6IDg1OTQsXG4gICAgZGFycjogODU5NSxcbiAgICBoYXJyOiA4NTk2LFxuICAgIGNyYXJyOiA4NjI5LFxuICAgIGxBcnI6IDg2NTYsXG4gICAgdUFycjogODY1NyxcbiAgICByQXJyOiA4NjU4LFxuICAgIGRBcnI6IDg2NTksXG4gICAgaEFycjogODY2MCxcbiAgICBmb3JhbGw6IDg3MDQsXG4gICAgcGFydDogODcwNixcbiAgICBleGlzdDogODcwNyxcbiAgICBlbXB0eTogODcwOSxcbiAgICBuYWJsYTogODcxMSxcbiAgICBpc2luOiA4NzEyLFxuICAgIG5vdGluOiA4NzEzLFxuICAgIG5pOiA4NzE1LFxuICAgIHByb2Q6IDg3MTksXG4gICAgc3VtOiA4NzIxLFxuICAgIG1pbnVzOiA4NzIyLFxuICAgIGxvd2FzdDogODcyNyxcbiAgICByYWRpYzogODczMCxcbiAgICBwcm9wOiA4NzMzLFxuICAgIGluZmluOiA4NzM0LFxuICAgIGFuZzogODczNixcbiAgICBhbmQ6IDg3NDMsXG4gICAgb3I6IDg3NDQsXG4gICAgY2FwOiA4NzQ1LFxuICAgIGN1cDogODc0NixcbiAgICBpbnQ6IDg3NDcsXG4gICAgdGhlcmU0OiA4NzU2LFxuICAgIHNpbTogODc2NCxcbiAgICBjb25nOiA4NzczLFxuICAgIGFzeW1wOiA4Nzc2LFxuICAgIG5lOiA4ODAwLFxuICAgIGVxdWl2OiA4ODAxLFxuICAgIGxlOiA4ODA0LFxuICAgIGdlOiA4ODA1LFxuICAgIHN1YjogODgzNCxcbiAgICBzdXA6IDg4MzUsXG4gICAgbnN1YjogODgzNixcbiAgICBzdWJlOiA4ODM4LFxuICAgIHN1cGU6IDg4MzksXG4gICAgb3BsdXM6IDg4NTMsXG4gICAgb3RpbWVzOiA4ODU1LFxuICAgIHBlcnA6IDg4NjksXG4gICAgc2RvdDogODkwMSxcbiAgICBsY2VpbDogODk2OCxcbiAgICByY2VpbDogODk2OSxcbiAgICBsZmxvb3I6IDg5NzAsXG4gICAgcmZsb29yOiA4OTcxLFxuICAgIGxhbmc6IDkwMDEsXG4gICAgcmFuZzogOTAwMixcbiAgICBsb3o6IDk2NzQsXG4gICAgc3BhZGVzOiA5ODI0LFxuICAgIGNsdWJzOiA5ODI3LFxuICAgIGhlYXJ0czogOTgyOSxcbiAgICBkaWFtczogOTgzMCxcbiAgfVxuXG4gIE9iamVjdC5rZXlzKHNheC5FTlRJVElFUykuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7XG4gICAgdmFyIGUgPSBzYXguRU5USVRJRVNba2V5XVxuICAgIHZhciBzID0gdHlwZW9mIGUgPT09ICdudW1iZXInID8gU3RyaW5nLmZyb21DaGFyQ29kZShlKSA6IGVcbiAgICBzYXguRU5USVRJRVNba2V5XSA9IHNcbiAgfSlcblxuICBmb3IgKHZhciBzIGluIHNheC5TVEFURSkge1xuICAgIHNheC5TVEFURVtzYXguU1RBVEVbc11dID0gc1xuICB9XG5cbiAgLy8gc2hvcnRoYW5kXG4gIFMgPSBzYXguU1RBVEVcblxuICBmdW5jdGlvbiBlbWl0KHBhcnNlciwgZXZlbnQsIGRhdGEpIHtcbiAgICBwYXJzZXJbZXZlbnRdICYmIHBhcnNlcltldmVudF0oZGF0YSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGVtaXROb2RlKHBhcnNlciwgbm9kZVR5cGUsIGRhdGEpIHtcbiAgICBpZiAocGFyc2VyLnRleHROb2RlKSBjbG9zZVRleHQocGFyc2VyKVxuICAgIGVtaXQocGFyc2VyLCBub2RlVHlwZSwgZGF0YSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGNsb3NlVGV4dChwYXJzZXIpIHtcbiAgICBwYXJzZXIudGV4dE5vZGUgPSB0ZXh0b3B0cyhwYXJzZXIub3B0LCBwYXJzZXIudGV4dE5vZGUpXG4gICAgaWYgKHBhcnNlci50ZXh0Tm9kZSkgZW1pdChwYXJzZXIsICdvbnRleHQnLCBwYXJzZXIudGV4dE5vZGUpXG4gICAgcGFyc2VyLnRleHROb2RlID0gJydcbiAgfVxuXG4gIGZ1bmN0aW9uIHRleHRvcHRzKG9wdCwgdGV4dCkge1xuICAgIGlmIChvcHQudHJpbSkgdGV4dCA9IHRleHQudHJpbSgpXG4gICAgaWYgKG9wdC5ub3JtYWxpemUpIHRleHQgPSB0ZXh0LnJlcGxhY2UoL1xccysvZywgJyAnKVxuICAgIHJldHVybiB0ZXh0XG4gIH1cblxuICBmdW5jdGlvbiBlcnJvcihwYXJzZXIsIGVyKSB7XG4gICAgY2xvc2VUZXh0KHBhcnNlcilcbiAgICBpZiAocGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgIGVyICs9XG4gICAgICAgICdcXG5MaW5lOiAnICtcbiAgICAgICAgcGFyc2VyLmxpbmUgK1xuICAgICAgICAnXFxuQ29sdW1uOiAnICtcbiAgICAgICAgcGFyc2VyLmNvbHVtbiArXG4gICAgICAgICdcXG5DaGFyOiAnICtcbiAgICAgICAgcGFyc2VyLmNcbiAgICB9XG4gICAgZXIgPSBuZXcgRXJyb3IoZXIpXG4gICAgcGFyc2VyLmVycm9yID0gZXJcbiAgICBlbWl0KHBhcnNlciwgJ29uZXJyb3InLCBlcilcbiAgICByZXR1cm4gcGFyc2VyXG4gIH1cblxuICBmdW5jdGlvbiBlbmQocGFyc2VyKSB7XG4gICAgaWYgKHBhcnNlci5zYXdSb290ICYmICFwYXJzZXIuY2xvc2VkUm9vdClcbiAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnVW5jbG9zZWQgcm9vdCB0YWcnKVxuICAgIGlmIChcbiAgICAgIHBhcnNlci5zdGF0ZSAhPT0gUy5CRUdJTiAmJlxuICAgICAgcGFyc2VyLnN0YXRlICE9PSBTLkJFR0lOX1dISVRFU1BBQ0UgJiZcbiAgICAgIHBhcnNlci5zdGF0ZSAhPT0gUy5URVhUXG4gICAgKSB7XG4gICAgICBlcnJvcihwYXJzZXIsICdVbmV4cGVjdGVkIGVuZCcpXG4gICAgfVxuICAgIGNsb3NlVGV4dChwYXJzZXIpXG4gICAgcGFyc2VyLmMgPSAnJ1xuICAgIHBhcnNlci5jbG9zZWQgPSB0cnVlXG4gICAgZW1pdChwYXJzZXIsICdvbmVuZCcpXG4gICAgU0FYUGFyc2VyLmNhbGwocGFyc2VyLCBwYXJzZXIuc3RyaWN0LCBwYXJzZXIub3B0KVxuICAgIHJldHVybiBwYXJzZXJcbiAgfVxuXG4gIGZ1bmN0aW9uIHN0cmljdEZhaWwocGFyc2VyLCBtZXNzYWdlKSB7XG4gICAgaWYgKHR5cGVvZiBwYXJzZXIgIT09ICdvYmplY3QnIHx8ICEocGFyc2VyIGluc3RhbmNlb2YgU0FYUGFyc2VyKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgY2FsbCB0byBzdHJpY3RGYWlsJylcbiAgICB9XG4gICAgaWYgKHBhcnNlci5zdHJpY3QpIHtcbiAgICAgIGVycm9yKHBhcnNlciwgbWVzc2FnZSlcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiBuZXdUYWcocGFyc2VyKSB7XG4gICAgaWYgKCFwYXJzZXIuc3RyaWN0KSBwYXJzZXIudGFnTmFtZSA9IHBhcnNlci50YWdOYW1lW3BhcnNlci5sb29zZUNhc2VdKClcbiAgICB2YXIgcGFyZW50ID0gcGFyc2VyLnRhZ3NbcGFyc2VyLnRhZ3MubGVuZ3RoIC0gMV0gfHwgcGFyc2VyXG4gICAgdmFyIHRhZyA9IChwYXJzZXIudGFnID0geyBuYW1lOiBwYXJzZXIudGFnTmFtZSwgYXR0cmlidXRlczoge30gfSlcblxuICAgIC8vIHdpbGwgYmUgb3ZlcnJpZGRlbiBpZiB0YWcgY29udGFpbHMgYW4geG1sbnM9XCJmb29cIiBvciB4bWxuczpmb289XCJiYXJcIlxuICAgIGlmIChwYXJzZXIub3B0LnhtbG5zKSB7XG4gICAgICB0YWcubnMgPSBwYXJlbnQubnNcbiAgICB9XG4gICAgcGFyc2VyLmF0dHJpYkxpc3QubGVuZ3RoID0gMFxuICAgIGVtaXROb2RlKHBhcnNlciwgJ29ub3BlbnRhZ3N0YXJ0JywgdGFnKVxuICB9XG5cbiAgZnVuY3Rpb24gcW5hbWUobmFtZSwgYXR0cmlidXRlKSB7XG4gICAgdmFyIGkgPSBuYW1lLmluZGV4T2YoJzonKVxuICAgIHZhciBxdWFsTmFtZSA9IGkgPCAwID8gWycnLCBuYW1lXSA6IG5hbWUuc3BsaXQoJzonKVxuICAgIHZhciBwcmVmaXggPSBxdWFsTmFtZVswXVxuICAgIHZhciBsb2NhbCA9IHF1YWxOYW1lWzFdXG5cbiAgICAvLyA8eCBcInhtbG5zXCI9XCJodHRwOi8vZm9vXCI+XG4gICAgaWYgKGF0dHJpYnV0ZSAmJiBuYW1lID09PSAneG1sbnMnKSB7XG4gICAgICBwcmVmaXggPSAneG1sbnMnXG4gICAgICBsb2NhbCA9ICcnXG4gICAgfVxuXG4gICAgcmV0dXJuIHsgcHJlZml4OiBwcmVmaXgsIGxvY2FsOiBsb2NhbCB9XG4gIH1cblxuICBmdW5jdGlvbiBhdHRyaWIocGFyc2VyKSB7XG4gICAgaWYgKCFwYXJzZXIuc3RyaWN0KSB7XG4gICAgICBwYXJzZXIuYXR0cmliTmFtZSA9IHBhcnNlci5hdHRyaWJOYW1lW3BhcnNlci5sb29zZUNhc2VdKClcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBwYXJzZXIuYXR0cmliTGlzdC5pbmRleE9mKHBhcnNlci5hdHRyaWJOYW1lKSAhPT0gLTEgfHxcbiAgICAgIHBhcnNlci50YWcuYXR0cmlidXRlcy5oYXNPd25Qcm9wZXJ0eShwYXJzZXIuYXR0cmliTmFtZSlcbiAgICApIHtcbiAgICAgIHBhcnNlci5hdHRyaWJOYW1lID0gcGFyc2VyLmF0dHJpYlZhbHVlID0gJydcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChwYXJzZXIub3B0LnhtbG5zKSB7XG4gICAgICB2YXIgcW4gPSBxbmFtZShwYXJzZXIuYXR0cmliTmFtZSwgdHJ1ZSlcbiAgICAgIHZhciBwcmVmaXggPSBxbi5wcmVmaXhcbiAgICAgIHZhciBsb2NhbCA9IHFuLmxvY2FsXG5cbiAgICAgIGlmIChwcmVmaXggPT09ICd4bWxucycpIHtcbiAgICAgICAgLy8gbmFtZXNwYWNlIGJpbmRpbmcgYXR0cmlidXRlLiBwdXNoIHRoZSBiaW5kaW5nIGludG8gc2NvcGVcbiAgICAgICAgaWYgKGxvY2FsID09PSAneG1sJyAmJiBwYXJzZXIuYXR0cmliVmFsdWUgIT09IFhNTF9OQU1FU1BBQ0UpIHtcbiAgICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgICAgcGFyc2VyLFxuICAgICAgICAgICAgJ3htbDogcHJlZml4IG11c3QgYmUgYm91bmQgdG8gJyArXG4gICAgICAgICAgICAgIFhNTF9OQU1FU1BBQ0UgK1xuICAgICAgICAgICAgICAnXFxuJyArXG4gICAgICAgICAgICAgICdBY3R1YWw6ICcgK1xuICAgICAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWVcbiAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgbG9jYWwgPT09ICd4bWxucycgJiZcbiAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWUgIT09IFhNTE5TX05BTUVTUEFDRVxuICAgICAgICApIHtcbiAgICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgICAgcGFyc2VyLFxuICAgICAgICAgICAgJ3htbG5zOiBwcmVmaXggbXVzdCBiZSBib3VuZCB0byAnICtcbiAgICAgICAgICAgICAgWE1MTlNfTkFNRVNQQUNFICtcbiAgICAgICAgICAgICAgJ1xcbicgK1xuICAgICAgICAgICAgICAnQWN0dWFsOiAnICtcbiAgICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHZhciB0YWcgPSBwYXJzZXIudGFnXG4gICAgICAgICAgdmFyIHBhcmVudCA9IHBhcnNlci50YWdzW3BhcnNlci50YWdzLmxlbmd0aCAtIDFdIHx8IHBhcnNlclxuICAgICAgICAgIGlmICh0YWcubnMgPT09IHBhcmVudC5ucykge1xuICAgICAgICAgICAgdGFnLm5zID0gT2JqZWN0LmNyZWF0ZShwYXJlbnQubnMpXG4gICAgICAgICAgfVxuICAgICAgICAgIHRhZy5uc1tsb2NhbF0gPSBwYXJzZXIuYXR0cmliVmFsdWVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBkZWZlciBvbmF0dHJpYnV0ZSBldmVudHMgdW50aWwgYWxsIGF0dHJpYnV0ZXMgaGF2ZSBiZWVuIHNlZW5cbiAgICAgIC8vIHNvIGFueSBuZXcgYmluZGluZ3MgY2FuIHRha2UgZWZmZWN0LiBwcmVzZXJ2ZSBhdHRyaWJ1dGUgb3JkZXJcbiAgICAgIC8vIHNvIGRlZmVycmVkIGV2ZW50cyBjYW4gYmUgZW1pdHRlZCBpbiBkb2N1bWVudCBvcmRlclxuICAgICAgcGFyc2VyLmF0dHJpYkxpc3QucHVzaChbcGFyc2VyLmF0dHJpYk5hbWUsIHBhcnNlci5hdHRyaWJWYWx1ZV0pXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGluIG5vbi14bWxucyBtb2RlLCB3ZSBjYW4gZW1pdCB0aGUgZXZlbnQgcmlnaHQgYXdheVxuICAgICAgcGFyc2VyLnRhZy5hdHRyaWJ1dGVzW3BhcnNlci5hdHRyaWJOYW1lXSA9IHBhcnNlci5hdHRyaWJWYWx1ZVxuICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25hdHRyaWJ1dGUnLCB7XG4gICAgICAgIG5hbWU6IHBhcnNlci5hdHRyaWJOYW1lLFxuICAgICAgICB2YWx1ZTogcGFyc2VyLmF0dHJpYlZhbHVlLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBwYXJzZXIuYXR0cmliTmFtZSA9IHBhcnNlci5hdHRyaWJWYWx1ZSA9ICcnXG4gIH1cblxuICBmdW5jdGlvbiBvcGVuVGFnKHBhcnNlciwgc2VsZkNsb3NpbmcpIHtcbiAgICBpZiAocGFyc2VyLm9wdC54bWxucykge1xuICAgICAgLy8gZW1pdCBuYW1lc3BhY2UgYmluZGluZyBldmVudHNcbiAgICAgIHZhciB0YWcgPSBwYXJzZXIudGFnXG5cbiAgICAgIC8vIGFkZCBuYW1lc3BhY2UgaW5mbyB0byB0YWdcbiAgICAgIHZhciBxbiA9IHFuYW1lKHBhcnNlci50YWdOYW1lKVxuICAgICAgdGFnLnByZWZpeCA9IHFuLnByZWZpeFxuICAgICAgdGFnLmxvY2FsID0gcW4ubG9jYWxcbiAgICAgIHRhZy51cmkgPSB0YWcubnNbcW4ucHJlZml4XSB8fCAnJ1xuXG4gICAgICBpZiAodGFnLnByZWZpeCAmJiAhdGFnLnVyaSkge1xuICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgIHBhcnNlcixcbiAgICAgICAgICAnVW5ib3VuZCBuYW1lc3BhY2UgcHJlZml4OiAnICsgSlNPTi5zdHJpbmdpZnkocGFyc2VyLnRhZ05hbWUpXG4gICAgICAgIClcbiAgICAgICAgdGFnLnVyaSA9IHFuLnByZWZpeFxuICAgICAgfVxuXG4gICAgICB2YXIgcGFyZW50ID0gcGFyc2VyLnRhZ3NbcGFyc2VyLnRhZ3MubGVuZ3RoIC0gMV0gfHwgcGFyc2VyXG4gICAgICBpZiAodGFnLm5zICYmIHBhcmVudC5ucyAhPT0gdGFnLm5zKSB7XG4gICAgICAgIE9iamVjdC5rZXlzKHRhZy5ucykuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29ub3Blbm5hbWVzcGFjZScsIHtcbiAgICAgICAgICAgIHByZWZpeDogcCxcbiAgICAgICAgICAgIHVyaTogdGFnLm5zW3BdLFxuICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIC8vIGhhbmRsZSBkZWZlcnJlZCBvbmF0dHJpYnV0ZSBldmVudHNcbiAgICAgIC8vIE5vdGU6IGRvIG5vdCBhcHBseSBkZWZhdWx0IG5zIHRvIGF0dHJpYnV0ZXM6XG4gICAgICAvLyAgIGh0dHA6Ly93d3cudzMub3JnL1RSL1JFQy14bWwtbmFtZXMvI2RlZmF1bHRpbmdcbiAgICAgIGZvciAodmFyIGkgPSAwLCBsID0gcGFyc2VyLmF0dHJpYkxpc3QubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgIHZhciBudiA9IHBhcnNlci5hdHRyaWJMaXN0W2ldXG4gICAgICAgIHZhciBuYW1lID0gbnZbMF1cbiAgICAgICAgdmFyIHZhbHVlID0gbnZbMV1cbiAgICAgICAgdmFyIHF1YWxOYW1lID0gcW5hbWUobmFtZSwgdHJ1ZSlcbiAgICAgICAgdmFyIHByZWZpeCA9IHF1YWxOYW1lLnByZWZpeFxuICAgICAgICB2YXIgbG9jYWwgPSBxdWFsTmFtZS5sb2NhbFxuICAgICAgICB2YXIgdXJpID0gcHJlZml4ID09PSAnJyA/ICcnIDogdGFnLm5zW3ByZWZpeF0gfHwgJydcbiAgICAgICAgdmFyIGEgPSB7XG4gICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICAgICAgcHJlZml4OiBwcmVmaXgsXG4gICAgICAgICAgbG9jYWw6IGxvY2FsLFxuICAgICAgICAgIHVyaTogdXJpLFxuICAgICAgICB9XG5cbiAgICAgICAgLy8gaWYgdGhlcmUncyBhbnkgYXR0cmlidXRlcyB3aXRoIGFuIHVuZGVmaW5lZCBuYW1lc3BhY2UsXG4gICAgICAgIC8vIHRoZW4gZmFpbCBvbiB0aGVtIG5vdy5cbiAgICAgICAgaWYgKHByZWZpeCAmJiBwcmVmaXggIT09ICd4bWxucycgJiYgIXVyaSkge1xuICAgICAgICAgIHN0cmljdEZhaWwoXG4gICAgICAgICAgICBwYXJzZXIsXG4gICAgICAgICAgICAnVW5ib3VuZCBuYW1lc3BhY2UgcHJlZml4OiAnICsgSlNPTi5zdHJpbmdpZnkocHJlZml4KVxuICAgICAgICAgIClcbiAgICAgICAgICBhLnVyaSA9IHByZWZpeFxuICAgICAgICB9XG4gICAgICAgIHBhcnNlci50YWcuYXR0cmlidXRlc1tuYW1lXSA9IGFcbiAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25hdHRyaWJ1dGUnLCBhKVxuICAgICAgfVxuICAgICAgcGFyc2VyLmF0dHJpYkxpc3QubGVuZ3RoID0gMFxuICAgIH1cblxuICAgIHBhcnNlci50YWcuaXNTZWxmQ2xvc2luZyA9ICEhc2VsZkNsb3NpbmdcblxuICAgIC8vIHByb2Nlc3MgdGhlIHRhZ1xuICAgIHBhcnNlci5zYXdSb290ID0gdHJ1ZVxuICAgIHBhcnNlci50YWdzLnB1c2gocGFyc2VyLnRhZylcbiAgICBlbWl0Tm9kZShwYXJzZXIsICdvbm9wZW50YWcnLCBwYXJzZXIudGFnKVxuICAgIGlmICghc2VsZkNsb3NpbmcpIHtcbiAgICAgIC8vIHNwZWNpYWwgY2FzZSBmb3IgPHNjcmlwdD4gaW4gbm9uLXN0cmljdCBtb2RlLlxuICAgICAgaWYgKCFwYXJzZXIubm9zY3JpcHQgJiYgcGFyc2VyLnRhZ05hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ3NjcmlwdCcpIHtcbiAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgfVxuICAgICAgcGFyc2VyLnRhZyA9IG51bGxcbiAgICAgIHBhcnNlci50YWdOYW1lID0gJydcbiAgICB9XG4gICAgcGFyc2VyLmF0dHJpYk5hbWUgPSBwYXJzZXIuYXR0cmliVmFsdWUgPSAnJ1xuICAgIHBhcnNlci5hdHRyaWJMaXN0Lmxlbmd0aCA9IDBcbiAgfVxuXG4gIGZ1bmN0aW9uIGNsb3NlVGFnKHBhcnNlcikge1xuICAgIGlmICghcGFyc2VyLnRhZ05hbWUpIHtcbiAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnV2VpcmQgZW1wdHkgY2xvc2UgdGFnLicpXG4gICAgICBwYXJzZXIudGV4dE5vZGUgKz0gJzwvPidcbiAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKHBhcnNlci5zY3JpcHQpIHtcbiAgICAgIGlmIChwYXJzZXIudGFnTmFtZSAhPT0gJ3NjcmlwdCcpIHtcbiAgICAgICAgcGFyc2VyLnNjcmlwdCArPSAnPC8nICsgcGFyc2VyLnRhZ05hbWUgKyAnPidcbiAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSAnJ1xuICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlNDUklQVFxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uc2NyaXB0JywgcGFyc2VyLnNjcmlwdClcbiAgICAgIHBhcnNlci5zY3JpcHQgPSAnJ1xuICAgIH1cblxuICAgIC8vIGZpcnN0IG1ha2Ugc3VyZSB0aGF0IHRoZSBjbG9zaW5nIHRhZyBhY3R1YWxseSBleGlzdHMuXG4gICAgLy8gPGE+PGI+PC9jPjwvYj48L2E+IHdpbGwgY2xvc2UgZXZlcnl0aGluZywgb3RoZXJ3aXNlLlxuICAgIHZhciB0ID0gcGFyc2VyLnRhZ3MubGVuZ3RoXG4gICAgdmFyIHRhZ05hbWUgPSBwYXJzZXIudGFnTmFtZVxuICAgIGlmICghcGFyc2VyLnN0cmljdCkge1xuICAgICAgdGFnTmFtZSA9IHRhZ05hbWVbcGFyc2VyLmxvb3NlQ2FzZV0oKVxuICAgIH1cbiAgICB2YXIgY2xvc2VUbyA9IHRhZ05hbWVcbiAgICB3aGlsZSAodC0tKSB7XG4gICAgICB2YXIgY2xvc2UgPSBwYXJzZXIudGFnc1t0XVxuICAgICAgaWYgKGNsb3NlLm5hbWUgIT09IGNsb3NlVG8pIHtcbiAgICAgICAgLy8gZmFpbCB0aGUgZmlyc3QgdGltZSBpbiBzdHJpY3QgbW9kZVxuICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ1VuZXhwZWN0ZWQgY2xvc2UgdGFnJylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gZGlkbid0IGZpbmQgaXQuICB3ZSBhbHJlYWR5IGZhaWxlZCBmb3Igc3RyaWN0LCBzbyBqdXN0IGFib3J0LlxuICAgIGlmICh0IDwgMCkge1xuICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdVbm1hdGNoZWQgY2xvc2luZyB0YWc6ICcgKyBwYXJzZXIudGFnTmFtZSlcbiAgICAgIHBhcnNlci50ZXh0Tm9kZSArPSAnPC8nICsgcGFyc2VyLnRhZ05hbWUgKyAnPidcbiAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHBhcnNlci50YWdOYW1lID0gdGFnTmFtZVxuICAgIHZhciBzID0gcGFyc2VyLnRhZ3MubGVuZ3RoXG4gICAgd2hpbGUgKHMtLSA+IHQpIHtcbiAgICAgIHZhciB0YWcgPSAocGFyc2VyLnRhZyA9IHBhcnNlci50YWdzLnBvcCgpKVxuICAgICAgcGFyc2VyLnRhZ05hbWUgPSBwYXJzZXIudGFnLm5hbWVcbiAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2xvc2V0YWcnLCBwYXJzZXIudGFnTmFtZSlcblxuICAgICAgdmFyIHggPSB7fVxuICAgICAgZm9yICh2YXIgaSBpbiB0YWcubnMpIHtcbiAgICAgICAgeFtpXSA9IHRhZy5uc1tpXVxuICAgICAgfVxuXG4gICAgICB2YXIgcGFyZW50ID0gcGFyc2VyLnRhZ3NbcGFyc2VyLnRhZ3MubGVuZ3RoIC0gMV0gfHwgcGFyc2VyXG4gICAgICBpZiAocGFyc2VyLm9wdC54bWxucyAmJiB0YWcubnMgIT09IHBhcmVudC5ucykge1xuICAgICAgICAvLyByZW1vdmUgbmFtZXNwYWNlIGJpbmRpbmdzIGludHJvZHVjZWQgYnkgdGFnXG4gICAgICAgIE9iamVjdC5rZXlzKHRhZy5ucykuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgICAgIHZhciBuID0gdGFnLm5zW3BdXG4gICAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25jbG9zZW5hbWVzcGFjZScsIHsgcHJlZml4OiBwLCB1cmk6IG4gfSlcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHQgPT09IDApIHBhcnNlci5jbG9zZWRSb290ID0gdHJ1ZVxuICAgIHBhcnNlci50YWdOYW1lID0gcGFyc2VyLmF0dHJpYlZhbHVlID0gcGFyc2VyLmF0dHJpYk5hbWUgPSAnJ1xuICAgIHBhcnNlci5hdHRyaWJMaXN0Lmxlbmd0aCA9IDBcbiAgICBwYXJzZXIuc3RhdGUgPSBTLlRFWFRcbiAgfVxuXG4gIGZ1bmN0aW9uIHBhcnNlRW50aXR5KHBhcnNlcikge1xuICAgIHZhciBlbnRpdHkgPSBwYXJzZXIuZW50aXR5XG4gICAgdmFyIGVudGl0eUxDID0gZW50aXR5LnRvTG93ZXJDYXNlKClcbiAgICB2YXIgbnVtXG4gICAgdmFyIG51bVN0ciA9ICcnXG5cbiAgICBpZiAocGFyc2VyLkVOVElUSUVTW2VudGl0eV0pIHtcbiAgICAgIHJldHVybiBwYXJzZXIuRU5USVRJRVNbZW50aXR5XVxuICAgIH1cbiAgICBpZiAocGFyc2VyLkVOVElUSUVTW2VudGl0eUxDXSkge1xuICAgICAgcmV0dXJuIHBhcnNlci5FTlRJVElFU1tlbnRpdHlMQ11cbiAgICB9XG4gICAgZW50aXR5ID0gZW50aXR5TENcbiAgICBpZiAoZW50aXR5LmNoYXJBdCgwKSA9PT0gJyMnKSB7XG4gICAgICBpZiAoZW50aXR5LmNoYXJBdCgxKSA9PT0gJ3gnKSB7XG4gICAgICAgIGVudGl0eSA9IGVudGl0eS5zbGljZSgyKVxuICAgICAgICBudW0gPSBwYXJzZUludChlbnRpdHksIDE2KVxuICAgICAgICBudW1TdHIgPSBudW0udG9TdHJpbmcoMTYpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBlbnRpdHkgPSBlbnRpdHkuc2xpY2UoMSlcbiAgICAgICAgbnVtID0gcGFyc2VJbnQoZW50aXR5LCAxMClcbiAgICAgICAgbnVtU3RyID0gbnVtLnRvU3RyaW5nKDEwKVxuICAgICAgfVxuICAgIH1cbiAgICBlbnRpdHkgPSBlbnRpdHkucmVwbGFjZSgvXjArLywgJycpXG4gICAgaWYgKFxuICAgICAgaXNOYU4obnVtKSB8fFxuICAgICAgbnVtU3RyLnRvTG93ZXJDYXNlKCkgIT09IGVudGl0eSB8fFxuICAgICAgbnVtIDwgMCB8fFxuICAgICAgbnVtID4gMHgxMGZmZmZcbiAgICApIHtcbiAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnSW52YWxpZCBjaGFyYWN0ZXIgZW50aXR5JylcbiAgICAgIHJldHVybiAnJicgKyBwYXJzZXIuZW50aXR5ICsgJzsnXG4gICAgfVxuXG4gICAgcmV0dXJuIFN0cmluZy5mcm9tQ29kZVBvaW50KG51bSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGJlZ2luV2hpdGVTcGFjZShwYXJzZXIsIGMpIHtcbiAgICBpZiAoYyA9PT0gJzwnKSB7XG4gICAgICBwYXJzZXIuc3RhdGUgPSBTLk9QRU5fV0FLQVxuICAgICAgcGFyc2VyLnN0YXJ0VGFnUG9zaXRpb24gPSBwYXJzZXIucG9zaXRpb25cbiAgICB9IGVsc2UgaWYgKCFpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgIC8vIGhhdmUgdG8gcHJvY2VzcyB0aGlzIGFzIGEgdGV4dCBub2RlLlxuICAgICAgLy8gd2VpcmQsIGJ1dCBoYXBwZW5zLlxuICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdOb24td2hpdGVzcGFjZSBiZWZvcmUgZmlyc3QgdGFnLicpXG4gICAgICBwYXJzZXIudGV4dE5vZGUgPSBjXG4gICAgICBwYXJzZXIuc3RhdGUgPSBTLlRFWFRcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiBjaGFyQXQoY2h1bmssIGkpIHtcbiAgICB2YXIgcmVzdWx0ID0gJydcbiAgICBpZiAoaSA8IGNodW5rLmxlbmd0aCkge1xuICAgICAgcmVzdWx0ID0gY2h1bmsuY2hhckF0KGkpXG4gICAgfVxuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIGZ1bmN0aW9uIHdyaXRlKGNodW5rKSB7XG4gICAgdmFyIHBhcnNlciA9IHRoaXNcbiAgICBpZiAodGhpcy5lcnJvcikge1xuICAgICAgdGhyb3cgdGhpcy5lcnJvclxuICAgIH1cbiAgICBpZiAocGFyc2VyLmNsb3NlZCkge1xuICAgICAgcmV0dXJuIGVycm9yKFxuICAgICAgICBwYXJzZXIsXG4gICAgICAgICdDYW5ub3Qgd3JpdGUgYWZ0ZXIgY2xvc2UuIEFzc2lnbiBhbiBvbnJlYWR5IGhhbmRsZXIuJ1xuICAgICAgKVxuICAgIH1cbiAgICBpZiAoY2h1bmsgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBlbmQocGFyc2VyKVxuICAgIH1cbiAgICBpZiAodHlwZW9mIGNodW5rID09PSAnb2JqZWN0Jykge1xuICAgICAgY2h1bmsgPSBjaHVuay50b1N0cmluZygpXG4gICAgfVxuICAgIHZhciBpID0gMFxuICAgIHZhciBjID0gJydcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgYyA9IGNoYXJBdChjaHVuaywgaSsrKVxuICAgICAgcGFyc2VyLmMgPSBjXG5cbiAgICAgIGlmICghYykge1xuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBpZiAocGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgICAgcGFyc2VyLnBvc2l0aW9uKytcbiAgICAgICAgaWYgKGMgPT09ICdcXG4nKSB7XG4gICAgICAgICAgcGFyc2VyLmxpbmUrK1xuICAgICAgICAgIHBhcnNlci5jb2x1bW4gPSAwXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcGFyc2VyLmNvbHVtbisrXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3dpdGNoIChwYXJzZXIuc3RhdGUpIHtcbiAgICAgICAgY2FzZSBTLkJFR0lOOlxuICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQkVHSU5fV0hJVEVTUEFDRVxuICAgICAgICAgIGlmIChjID09PSAnXFx1RkVGRicpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfVxuICAgICAgICAgIGJlZ2luV2hpdGVTcGFjZShwYXJzZXIsIGMpXG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQkVHSU5fV0hJVEVTUEFDRTpcbiAgICAgICAgICBiZWdpbldoaXRlU3BhY2UocGFyc2VyLCBjKVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlRFWFQ6XG4gICAgICAgICAgaWYgKHBhcnNlci5zYXdSb290ICYmICFwYXJzZXIuY2xvc2VkUm9vdCkge1xuICAgICAgICAgICAgdmFyIHN0YXJ0aSA9IGkgLSAxXG4gICAgICAgICAgICB3aGlsZSAoYyAmJiBjICE9PSAnPCcgJiYgYyAhPT0gJyYnKSB7XG4gICAgICAgICAgICAgIGMgPSBjaGFyQXQoY2h1bmssIGkrKylcbiAgICAgICAgICAgICAgaWYgKGMgJiYgcGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgICBwYXJzZXIucG9zaXRpb24rK1xuICAgICAgICAgICAgICAgIGlmIChjID09PSAnXFxuJykge1xuICAgICAgICAgICAgICAgICAgcGFyc2VyLmxpbmUrK1xuICAgICAgICAgICAgICAgICAgcGFyc2VyLmNvbHVtbiA9IDBcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgcGFyc2VyLmNvbHVtbisrXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXJzZXIudGV4dE5vZGUgKz0gY2h1bmsuc3Vic3RyaW5nKHN0YXJ0aSwgaSAtIDEpXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGMgPT09ICc8JyAmJlxuICAgICAgICAgICAgIShwYXJzZXIuc2F3Um9vdCAmJiBwYXJzZXIuY2xvc2VkUm9vdCAmJiAhcGFyc2VyLnN0cmljdClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuT1BFTl9XQUtBXG4gICAgICAgICAgICBwYXJzZXIuc3RhcnRUYWdQb3NpdGlvbiA9IHBhcnNlci5wb3NpdGlvblxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICFpc1doaXRlc3BhY2UoYykgJiZcbiAgICAgICAgICAgICAgKCFwYXJzZXIuc2F3Um9vdCB8fCBwYXJzZXIuY2xvc2VkUm9vdClcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ1RleHQgZGF0YSBvdXRzaWRlIG9mIHJvb3Qgbm9kZS4nKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGMgPT09ICcmJykge1xuICAgICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlRFWFRfRU5USVRZXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBwYXJzZXIudGV4dE5vZGUgKz0gY1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5TQ1JJUFQ6XG4gICAgICAgICAgLy8gb25seSBub24tc3RyaWN0XG4gICAgICAgICAgaWYgKGMgPT09ICc8Jykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRfRU5ESU5HXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5zY3JpcHQgKz0gY1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5TQ1JJUFRfRU5ESU5HOlxuICAgICAgICAgIGlmIChjID09PSAnLycpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ0xPU0VfVEFHXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5zY3JpcHQgKz0gJzwnICsgY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuT1BFTl9XQUtBOlxuICAgICAgICAgIC8vIGVpdGhlciBhIC8sID8sICEsIG9yIHRleHQgaXMgY29taW5nIG5leHQuXG4gICAgICAgICAgaWYgKGMgPT09ICchJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TR01MX0RFQ0xcbiAgICAgICAgICAgIHBhcnNlci5zZ21sRGVjbCA9ICcnXG4gICAgICAgICAgfSBlbHNlIGlmIChpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgIC8vIHdhaXQgZm9yIGl0Li4uXG4gICAgICAgICAgfSBlbHNlIGlmIChpc01hdGNoKG5hbWVTdGFydCwgYykpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuT1BFTl9UQUdcbiAgICAgICAgICAgIHBhcnNlci50YWdOYW1lID0gY1xuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJy8nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNMT1NFX1RBR1xuICAgICAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSAnJ1xuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJz8nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlBST0NfSU5TVFxuICAgICAgICAgICAgcGFyc2VyLnByb2NJbnN0TmFtZSA9IHBhcnNlci5wcm9jSW5zdEJvZHkgPSAnJ1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ1VuZW5jb2RlZCA8JylcbiAgICAgICAgICAgIC8vIGlmIHRoZXJlIHdhcyBzb21lIHdoaXRlc3BhY2UsIHRoZW4gYWRkIHRoYXQgaW4uXG4gICAgICAgICAgICBpZiAocGFyc2VyLnN0YXJ0VGFnUG9zaXRpb24gKyAxIDwgcGFyc2VyLnBvc2l0aW9uKSB7XG4gICAgICAgICAgICAgIHZhciBwYWQgPSBwYXJzZXIucG9zaXRpb24gLSBwYXJzZXIuc3RhcnRUYWdQb3NpdGlvblxuICAgICAgICAgICAgICBjID0gbmV3IEFycmF5KHBhZCkuam9pbignICcpICsgY1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VyLnRleHROb2RlICs9ICc8JyArIGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5TR01MX0RFQ0w6XG4gICAgICAgICAgaWYgKHBhcnNlci5zZ21sRGVjbCArIGMgPT09ICctLScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ09NTUVOVFxuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnNnbWxEZWNsID0gJydcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgJiZcbiAgICAgICAgICAgIHBhcnNlci5kb2N0eXBlICE9PSB0cnVlICYmXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2xcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuRE9DVFlQRV9EVERcbiAgICAgICAgICAgIHBhcnNlci5kb2N0eXBlICs9ICc8IScgKyBwYXJzZXIuc2dtbERlY2wgKyBjXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgPSAnJ1xuICAgICAgICAgIH0gZWxzZSBpZiAoKHBhcnNlci5zZ21sRGVjbCArIGMpLnRvVXBwZXJDYXNlKCkgPT09IENEQVRBKSB7XG4gICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbm9wZW5jZGF0YScpXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLmNkYXRhID0gJydcbiAgICAgICAgICB9IGVsc2UgaWYgKChwYXJzZXIuc2dtbERlY2wgKyBjKS50b1VwcGVyQ2FzZSgpID09PSBET0NUWVBFKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVcbiAgICAgICAgICAgIGlmIChwYXJzZXIuZG9jdHlwZSB8fCBwYXJzZXIuc2F3Um9vdCkge1xuICAgICAgICAgICAgICBzdHJpY3RGYWlsKFxuICAgICAgICAgICAgICAgIHBhcnNlcixcbiAgICAgICAgICAgICAgICAnSW5hcHByb3ByaWF0ZWx5IGxvY2F0ZWQgZG9jdHlwZSBkZWNsYXJhdGlvbidcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnNnbWxEZWNsID0gJydcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICc+Jykge1xuICAgICAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25zZ21sZGVjbGFyYXRpb24nLCBwYXJzZXIuc2dtbERlY2wpXG4gICAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgfSBlbHNlIGlmIChpc1F1b3RlKGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlNHTUxfREVDTF9RVU9URURcbiAgICAgICAgICAgIHBhcnNlci5zZ21sRGVjbCArPSBjXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5zZ21sRGVjbCArPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlNHTUxfREVDTF9RVU9URUQ6XG4gICAgICAgICAgaWYgKGMgPT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlNHTUxfREVDTFxuICAgICAgICAgICAgcGFyc2VyLnEgPSAnJ1xuICAgICAgICAgIH1cbiAgICAgICAgICBwYXJzZXIuc2dtbERlY2wgKz0gY1xuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkRPQ1RZUEU6XG4gICAgICAgICAgaWYgKGMgPT09ICc+Jykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbmRvY3R5cGUnLCBwYXJzZXIuZG9jdHlwZSlcbiAgICAgICAgICAgIHBhcnNlci5kb2N0eXBlID0gdHJ1ZSAvLyBqdXN0IHJlbWVtYmVyIHRoYXQgd2Ugc2F3IGl0LlxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgICBpZiAoYyA9PT0gJ1snKSB7XG4gICAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuRE9DVFlQRV9EVERcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNRdW90ZShjKSkge1xuICAgICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVfUVVPVEVEXG4gICAgICAgICAgICAgIHBhcnNlci5xID0gY1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5ET0NUWVBFX1FVT1RFRDpcbiAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgaWYgKGMgPT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBwYXJzZXIucSA9ICcnXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuRE9DVFlQRV9EVEQ6XG4gICAgICAgICAgaWYgKGMgPT09ICddJykge1xuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgKz0gY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5ET0NUWVBFXG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnPCcpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuT1BFTl9XQUtBXG4gICAgICAgICAgICBwYXJzZXIuc3RhcnRUYWdQb3NpdGlvbiA9IHBhcnNlci5wb3NpdGlvblxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNRdW90ZShjKSkge1xuICAgICAgICAgICAgcGFyc2VyLmRvY3R5cGUgKz0gY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5ET0NUWVBFX0RURF9RVU9URURcbiAgICAgICAgICAgIHBhcnNlci5xID0gY1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkRPQ1RZUEVfRFREX1FVT1RFRDpcbiAgICAgICAgICBwYXJzZXIuZG9jdHlwZSArPSBjXG4gICAgICAgICAgaWYgKGMgPT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkRPQ1RZUEVfRFREXG4gICAgICAgICAgICBwYXJzZXIucSA9ICcnXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNPTU1FTlQ6XG4gICAgICAgICAgaWYgKGMgPT09ICctJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5DT01NRU5UX0VORElOR1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuY29tbWVudCArPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNPTU1FTlRfRU5ESU5HOlxuICAgICAgICAgIGlmIChjID09PSAnLScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ09NTUVOVF9FTkRFRFxuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgPSB0ZXh0b3B0cyhwYXJzZXIub3B0LCBwYXJzZXIuY29tbWVudClcbiAgICAgICAgICAgIGlmIChwYXJzZXIuY29tbWVudCkge1xuICAgICAgICAgICAgICBlbWl0Tm9kZShwYXJzZXIsICdvbmNvbW1lbnQnLCBwYXJzZXIuY29tbWVudClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBhcnNlci5jb21tZW50ID0gJydcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgKz0gJy0nICsgY1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5DT01NRU5UXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNPTU1FTlRfRU5ERUQ6XG4gICAgICAgICAgaWYgKGMgIT09ICc+Jykge1xuICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdNYWxmb3JtZWQgY29tbWVudCcpXG4gICAgICAgICAgICAvLyBhbGxvdyA8IS0tIGJsYWggLS0gYmxvbyAtLT4gaW4gbm9uLXN0cmljdCBtb2RlLFxuICAgICAgICAgICAgLy8gd2hpY2ggaXMgYSBjb21tZW50IG9mIFwiIGJsYWggLS0gYmxvbyBcIlxuICAgICAgICAgICAgcGFyc2VyLmNvbW1lbnQgKz0gJy0tJyArIGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ09NTUVOVFxuICAgICAgICAgIH0gZWxzZSBpZiAocGFyc2VyLmRvY3R5cGUgJiYgcGFyc2VyLmRvY3R5cGUgIT09IHRydWUpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuRE9DVFlQRV9EVERcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNEQVRBOlxuICAgICAgICAgIHZhciBzdGFydGkgPSBpIC0gMVxuICAgICAgICAgIHdoaWxlIChjICYmIGMgIT09ICddJykge1xuICAgICAgICAgICAgYyA9IGNoYXJBdChjaHVuaywgaSsrKVxuICAgICAgICAgICAgaWYgKGMgJiYgcGFyc2VyLnRyYWNrUG9zaXRpb24pIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnBvc2l0aW9uKytcbiAgICAgICAgICAgICAgaWYgKGMgPT09ICdcXG4nKSB7XG4gICAgICAgICAgICAgICAgcGFyc2VyLmxpbmUrK1xuICAgICAgICAgICAgICAgIHBhcnNlci5jb2x1bW4gPSAwXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcGFyc2VyLmNvbHVtbisrXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcGFyc2VyLmNkYXRhICs9IGNodW5rLnN1YnN0cmluZyhzdGFydGksIGkgLSAxKVxuICAgICAgICAgIGlmIChjID09PSAnXScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQ0RBVEFfRU5ESU5HXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNEQVRBX0VORElORzpcbiAgICAgICAgICBpZiAoYyA9PT0gJ10nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBX0VORElOR18yXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5jZGF0YSArPSAnXScgKyBjXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNEQVRBX0VORElOR18yOlxuICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIGlmIChwYXJzZXIuY2RhdGEpIHtcbiAgICAgICAgICAgICAgZW1pdE5vZGUocGFyc2VyLCAnb25jZGF0YScsIHBhcnNlci5jZGF0YSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uY2xvc2VjZGF0YScpXG4gICAgICAgICAgICBwYXJzZXIuY2RhdGEgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5URVhUXG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnXScpIHtcbiAgICAgICAgICAgIHBhcnNlci5jZGF0YSArPSAnXSdcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyc2VyLmNkYXRhICs9ICddXScgKyBjXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkNEQVRBXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlBST0NfSU5TVDpcbiAgICAgICAgICBpZiAoYyA9PT0gJz8nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLlBST0NfSU5TVF9FTkRJTkdcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5QUk9DX0lOU1RfQk9EWVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIucHJvY0luc3ROYW1lICs9IGNcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuUFJPQ19JTlNUX0JPRFk6XG4gICAgICAgICAgaWYgKCFwYXJzZXIucHJvY0luc3RCb2R5ICYmIGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICc/Jykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5QUk9DX0lOU1RfRU5ESU5HXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcnNlci5wcm9jSW5zdEJvZHkgKz0gY1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5QUk9DX0lOU1RfRU5ESU5HOlxuICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29ucHJvY2Vzc2luZ2luc3RydWN0aW9uJywge1xuICAgICAgICAgICAgICBuYW1lOiBwYXJzZXIucHJvY0luc3ROYW1lLFxuICAgICAgICAgICAgICBib2R5OiBwYXJzZXIucHJvY0luc3RCb2R5LFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHBhcnNlci5wcm9jSW5zdE5hbWUgPSBwYXJzZXIucHJvY0luc3RCb2R5ID0gJydcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuVEVYVFxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIucHJvY0luc3RCb2R5ICs9ICc/JyArIGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuUFJPQ19JTlNUX0JPRFlcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuT1BFTl9UQUc6XG4gICAgICAgICAgaWYgKGlzTWF0Y2gobmFtZUJvZHksIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIudGFnTmFtZSArPSBjXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5ld1RhZyhwYXJzZXIpXG4gICAgICAgICAgICBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICAgIG9wZW5UYWcocGFyc2VyKVxuICAgICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnLycpIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5PUEVOX1RBR19TTEFTSFxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgaWYgKCFpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0ludmFsaWQgY2hhcmFjdGVyIGluIHRhZyBuYW1lJylcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQlxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5PUEVOX1RBR19TTEFTSDpcbiAgICAgICAgICBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlciwgdHJ1ZSlcbiAgICAgICAgICAgIGNsb3NlVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3RyaWN0RmFpbChcbiAgICAgICAgICAgICAgcGFyc2VyLFxuICAgICAgICAgICAgICAnRm9yd2FyZC1zbGFzaCBpbiBvcGVuaW5nIHRhZyBub3QgZm9sbG93ZWQgYnkgPidcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQjpcbiAgICAgICAgICAvLyBoYXZlbid0IHJlYWQgdGhlIGF0dHJpYnV0ZSBuYW1lIHlldC5cbiAgICAgICAgICBpZiAoaXNXaGl0ZXNwYWNlKGMpKSB7XG4gICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICcvJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5PUEVOX1RBR19TTEFTSFxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNNYXRjaChuYW1lU3RhcnQsIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuYXR0cmliTmFtZSA9IGNcbiAgICAgICAgICAgIHBhcnNlci5hdHRyaWJWYWx1ZSA9ICcnXG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQl9OQU1FXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnSW52YWxpZCBhdHRyaWJ1dGUgbmFtZScpXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQl9OQU1FOlxuICAgICAgICAgIGlmIChjID09PSAnPScpIHtcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFXG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnQXR0cmlidXRlIHdpdGhvdXQgdmFsdWUnKVxuICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlID0gcGFyc2VyLmF0dHJpYk5hbWVcbiAgICAgICAgICAgIGF0dHJpYihwYXJzZXIpXG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfTkFNRV9TQVdfV0hJVEVcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzTWF0Y2gobmFtZUJvZHksIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuYXR0cmliTmFtZSArPSBjXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0cmljdEZhaWwocGFyc2VyLCAnSW52YWxpZCBhdHRyaWJ1dGUgbmFtZScpXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQl9OQU1FX1NBV19XSElURTpcbiAgICAgICAgICBpZiAoYyA9PT0gJz0nKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQl9WQUxVRVxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNXaGl0ZXNwYWNlKGMpKSB7XG4gICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0F0dHJpYnV0ZSB3aXRob3V0IHZhbHVlJylcbiAgICAgICAgICAgIHBhcnNlci50YWcuYXR0cmlidXRlc1twYXJzZXIuYXR0cmliTmFtZV0gPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlID0gJydcbiAgICAgICAgICAgIGVtaXROb2RlKHBhcnNlciwgJ29uYXR0cmlidXRlJywge1xuICAgICAgICAgICAgICBuYW1lOiBwYXJzZXIuYXR0cmliTmFtZSxcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHBhcnNlci5hdHRyaWJOYW1lID0gJydcbiAgICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgICAgb3BlblRhZyhwYXJzZXIpXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGlzTWF0Y2gobmFtZVN0YXJ0LCBjKSkge1xuICAgICAgICAgICAgICBwYXJzZXIuYXR0cmliTmFtZSA9IGNcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfTkFNRVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIGF0dHJpYnV0ZSBuYW1lJylcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFOlxuICAgICAgICAgIGlmIChpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgfSBlbHNlIGlmIChpc1F1b3RlKGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIucSA9IGNcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFX1FVT1RFRFxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXBhcnNlci5vcHQudW5xdW90ZWRBdHRyaWJ1dGVWYWx1ZXMpIHtcbiAgICAgICAgICAgICAgZXJyb3IocGFyc2VyLCAnVW5xdW90ZWQgYXR0cmlidXRlIHZhbHVlJylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFX1VOUVVPVEVEXG4gICAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWUgPSBjXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkFUVFJJQl9WQUxVRV9RVU9URUQ6XG4gICAgICAgICAgaWYgKGMgIT09IHBhcnNlci5xKSB7XG4gICAgICAgICAgICBpZiAoYyA9PT0gJyYnKSB7XG4gICAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX1ZBTFVFX0VOVElUWV9RXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBwYXJzZXIuYXR0cmliVmFsdWUgKz0gY1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9XG4gICAgICAgICAgYXR0cmliKHBhcnNlcilcbiAgICAgICAgICBwYXJzZXIucSA9ICcnXG4gICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfVkFMVUVfQ0xPU0VEXG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX0NMT1NFRDpcbiAgICAgICAgICBpZiAoaXNXaGl0ZXNwYWNlKGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQlxuICAgICAgICAgIH0gZWxzZSBpZiAoYyA9PT0gJz4nKSB7XG4gICAgICAgICAgICBvcGVuVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICcvJykge1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5PUEVOX1RBR19TTEFTSFxuICAgICAgICAgIH0gZWxzZSBpZiAoaXNNYXRjaChuYW1lU3RhcnQsIGMpKSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ05vIHdoaXRlc3BhY2UgYmV0d2VlbiBhdHRyaWJ1dGVzJylcbiAgICAgICAgICAgIHBhcnNlci5hdHRyaWJOYW1lID0gY1xuICAgICAgICAgICAgcGFyc2VyLmF0dHJpYlZhbHVlID0gJydcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuQVRUUklCX05BTUVcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIGF0dHJpYnV0ZSBuYW1lJylcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX1VOUVVPVEVEOlxuICAgICAgICAgIGlmICghaXNBdHRyaWJFbmQoYykpIHtcbiAgICAgICAgICAgIGlmIChjID09PSAnJicpIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5BVFRSSUJfVkFMVUVfRU5USVRZX1VcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHBhcnNlci5hdHRyaWJWYWx1ZSArPSBjXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgIH1cbiAgICAgICAgICBhdHRyaWIocGFyc2VyKVxuICAgICAgICAgIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIG9wZW5UYWcocGFyc2VyKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJzZXIuc3RhdGUgPSBTLkFUVFJJQlxuICAgICAgICAgIH1cbiAgICAgICAgICBjb250aW51ZVxuXG4gICAgICAgIGNhc2UgUy5DTE9TRV9UQUc6XG4gICAgICAgICAgaWYgKCFwYXJzZXIudGFnTmFtZSkge1xuICAgICAgICAgICAgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfSBlbHNlIGlmIChub3RNYXRjaChuYW1lU3RhcnQsIGMpKSB7XG4gICAgICAgICAgICAgIGlmIChwYXJzZXIuc2NyaXB0KSB7XG4gICAgICAgICAgICAgICAgcGFyc2VyLnNjcmlwdCArPSAnPC8nICsgY1xuICAgICAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IFMuU0NSSVBUXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIHRhZ25hbWUgaW4gY2xvc2luZyB0YWcuJylcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSBjXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnPicpIHtcbiAgICAgICAgICAgIGNsb3NlVGFnKHBhcnNlcilcbiAgICAgICAgICB9IGVsc2UgaWYgKGlzTWF0Y2gobmFtZUJvZHksIGMpKSB7XG4gICAgICAgICAgICBwYXJzZXIudGFnTmFtZSArPSBjXG4gICAgICAgICAgfSBlbHNlIGlmIChwYXJzZXIuc2NyaXB0KSB7XG4gICAgICAgICAgICBwYXJzZXIuc2NyaXB0ICs9ICc8LycgKyBwYXJzZXIudGFnTmFtZVxuICAgICAgICAgICAgcGFyc2VyLnRhZ05hbWUgPSAnJ1xuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5TQ1JJUFRcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCFpc1doaXRlc3BhY2UoYykpIHtcbiAgICAgICAgICAgICAgc3RyaWN0RmFpbChwYXJzZXIsICdJbnZhbGlkIHRhZ25hbWUgaW4gY2xvc2luZyB0YWcnKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gUy5DTE9TRV9UQUdfU0FXX1dISVRFXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLkNMT1NFX1RBR19TQVdfV0hJVEU6XG4gICAgICAgICAgaWYgKGlzV2hpdGVzcGFjZShjKSkge1xuICAgICAgICAgICAgY29udGludWVcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGMgPT09ICc+Jykge1xuICAgICAgICAgICAgY2xvc2VUYWcocGFyc2VyKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0ludmFsaWQgY2hhcmFjdGVycyBpbiBjbG9zaW5nIHRhZycpXG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRpbnVlXG5cbiAgICAgICAgY2FzZSBTLlRFWFRfRU5USVRZOlxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX0VOVElUWV9ROlxuICAgICAgICBjYXNlIFMuQVRUUklCX1ZBTFVFX0VOVElUWV9VOlxuICAgICAgICAgIHZhciByZXR1cm5TdGF0ZVxuICAgICAgICAgIHZhciBidWZmZXJcbiAgICAgICAgICBzd2l0Y2ggKHBhcnNlci5zdGF0ZSkge1xuICAgICAgICAgICAgY2FzZSBTLlRFWFRfRU5USVRZOlxuICAgICAgICAgICAgICByZXR1cm5TdGF0ZSA9IFMuVEVYVFxuICAgICAgICAgICAgICBidWZmZXIgPSAndGV4dE5vZGUnXG4gICAgICAgICAgICAgIGJyZWFrXG5cbiAgICAgICAgICAgIGNhc2UgUy5BVFRSSUJfVkFMVUVfRU5USVRZX1E6XG4gICAgICAgICAgICAgIHJldHVyblN0YXRlID0gUy5BVFRSSUJfVkFMVUVfUVVPVEVEXG4gICAgICAgICAgICAgIGJ1ZmZlciA9ICdhdHRyaWJWYWx1ZSdcbiAgICAgICAgICAgICAgYnJlYWtcblxuICAgICAgICAgICAgY2FzZSBTLkFUVFJJQl9WQUxVRV9FTlRJVFlfVTpcbiAgICAgICAgICAgICAgcmV0dXJuU3RhdGUgPSBTLkFUVFJJQl9WQUxVRV9VTlFVT1RFRFxuICAgICAgICAgICAgICBidWZmZXIgPSAnYXR0cmliVmFsdWUnXG4gICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGMgPT09ICc7Jykge1xuICAgICAgICAgICAgdmFyIHBhcnNlZEVudGl0eSA9IHBhcnNlRW50aXR5KHBhcnNlcilcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgcGFyc2VyLm9wdC51bnBhcnNlZEVudGl0aWVzICYmXG4gICAgICAgICAgICAgICFPYmplY3QudmFsdWVzKHNheC5YTUxfRU5USVRJRVMpLmluY2x1ZGVzKHBhcnNlZEVudGl0eSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBwYXJzZXIuZW50aXR5ID0gJydcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gcmV0dXJuU3RhdGVcbiAgICAgICAgICAgICAgcGFyc2VyLndyaXRlKHBhcnNlZEVudGl0eSlcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHBhcnNlcltidWZmZXJdICs9IHBhcnNlZEVudGl0eVxuICAgICAgICAgICAgICBwYXJzZXIuZW50aXR5ID0gJydcbiAgICAgICAgICAgICAgcGFyc2VyLnN0YXRlID0gcmV0dXJuU3RhdGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgaXNNYXRjaChwYXJzZXIuZW50aXR5Lmxlbmd0aCA/IGVudGl0eUJvZHkgOiBlbnRpdHlTdGFydCwgYylcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHBhcnNlci5lbnRpdHkgKz0gY1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHJpY3RGYWlsKHBhcnNlciwgJ0ludmFsaWQgY2hhcmFjdGVyIGluIGVudGl0eSBuYW1lJylcbiAgICAgICAgICAgIHBhcnNlcltidWZmZXJdICs9ICcmJyArIHBhcnNlci5lbnRpdHkgKyBjXG4gICAgICAgICAgICBwYXJzZXIuZW50aXR5ID0gJydcbiAgICAgICAgICAgIHBhcnNlci5zdGF0ZSA9IHJldHVyblN0YXRlXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29udGludWVcblxuICAgICAgICBkZWZhdWx0OiAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHBhcnNlciwgJ1Vua25vd24gc3RhdGU6ICcgKyBwYXJzZXIuc3RhdGUpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IC8vIHdoaWxlXG5cbiAgICBpZiAocGFyc2VyLnBvc2l0aW9uID49IHBhcnNlci5idWZmZXJDaGVja1Bvc2l0aW9uKSB7XG4gICAgICBjaGVja0J1ZmZlckxlbmd0aChwYXJzZXIpXG4gICAgfVxuICAgIHJldHVybiBwYXJzZXJcbiAgfVxuXG4gIC8qISBodHRwOi8vbXRocy5iZS9mcm9tY29kZXBvaW50IHYwLjEuMCBieSBAbWF0aGlhcyAqL1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBpZiAoIVN0cmluZy5mcm9tQ29kZVBvaW50KSB7XG4gICAgOyhmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgc3RyaW5nRnJvbUNoYXJDb2RlID0gU3RyaW5nLmZyb21DaGFyQ29kZVxuICAgICAgdmFyIGZsb29yID0gTWF0aC5mbG9vclxuICAgICAgdmFyIGZyb21Db2RlUG9pbnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBNQVhfU0laRSA9IDB4NDAwMFxuICAgICAgICB2YXIgY29kZVVuaXRzID0gW11cbiAgICAgICAgdmFyIGhpZ2hTdXJyb2dhdGVcbiAgICAgICAgdmFyIGxvd1N1cnJvZ2F0ZVxuICAgICAgICB2YXIgaW5kZXggPSAtMVxuICAgICAgICB2YXIgbGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aFxuICAgICAgICBpZiAoIWxlbmd0aCkge1xuICAgICAgICAgIHJldHVybiAnJ1xuICAgICAgICB9XG4gICAgICAgIHZhciByZXN1bHQgPSAnJ1xuICAgICAgICB3aGlsZSAoKytpbmRleCA8IGxlbmd0aCkge1xuICAgICAgICAgIHZhciBjb2RlUG9pbnQgPSBOdW1iZXIoYXJndW1lbnRzW2luZGV4XSlcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAhaXNGaW5pdGUoY29kZVBvaW50KSB8fCAvLyBgTmFOYCwgYCtJbmZpbml0eWAsIG9yIGAtSW5maW5pdHlgXG4gICAgICAgICAgICBjb2RlUG9pbnQgPCAwIHx8IC8vIG5vdCBhIHZhbGlkIFVuaWNvZGUgY29kZSBwb2ludFxuICAgICAgICAgICAgY29kZVBvaW50ID4gMHgxMGZmZmYgfHwgLy8gbm90IGEgdmFsaWQgVW5pY29kZSBjb2RlIHBvaW50XG4gICAgICAgICAgICBmbG9vcihjb2RlUG9pbnQpICE9PSBjb2RlUG9pbnQgLy8gbm90IGFuIGludGVnZXJcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRocm93IFJhbmdlRXJyb3IoJ0ludmFsaWQgY29kZSBwb2ludDogJyArIGNvZGVQb2ludClcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGNvZGVQb2ludCA8PSAweGZmZmYpIHtcbiAgICAgICAgICAgIC8vIEJNUCBjb2RlIHBvaW50XG4gICAgICAgICAgICBjb2RlVW5pdHMucHVzaChjb2RlUG9pbnQpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEFzdHJhbCBjb2RlIHBvaW50OyBzcGxpdCBpbiBzdXJyb2dhdGUgaGFsdmVzXG4gICAgICAgICAgICAvLyBodHRwOi8vbWF0aGlhc2J5bmVucy5iZS9ub3Rlcy9qYXZhc2NyaXB0LWVuY29kaW5nI3N1cnJvZ2F0ZS1mb3JtdWxhZVxuICAgICAgICAgICAgY29kZVBvaW50IC09IDB4MTAwMDBcbiAgICAgICAgICAgIGhpZ2hTdXJyb2dhdGUgPSAoY29kZVBvaW50ID4+IDEwKSArIDB4ZDgwMFxuICAgICAgICAgICAgbG93U3Vycm9nYXRlID0gKGNvZGVQb2ludCAlIDB4NDAwKSArIDB4ZGMwMFxuICAgICAgICAgICAgY29kZVVuaXRzLnB1c2goaGlnaFN1cnJvZ2F0ZSwgbG93U3Vycm9nYXRlKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoaW5kZXggKyAxID09PSBsZW5ndGggfHwgY29kZVVuaXRzLmxlbmd0aCA+IE1BWF9TSVpFKSB7XG4gICAgICAgICAgICByZXN1bHQgKz0gc3RyaW5nRnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsIGNvZGVVbml0cylcbiAgICAgICAgICAgIGNvZGVVbml0cy5sZW5ndGggPSAwXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgIH1cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICBpZiAoT2JqZWN0LmRlZmluZVByb3BlcnR5KSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShTdHJpbmcsICdmcm9tQ29kZVBvaW50Jywge1xuICAgICAgICAgIHZhbHVlOiBmcm9tQ29kZVBvaW50LFxuICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIFN0cmluZy5mcm9tQ29kZVBvaW50ID0gZnJvbUNvZGVQb2ludFxuICAgICAgfVxuICAgIH0pKClcbiAgfVxufSkodHlwZW9mIGV4cG9ydHMgPT09ICd1bmRlZmluZWQnID8gKHRoaXMuc2F4ID0ge30pIDogZXhwb3J0cylcbiIsICJpZiAodHlwZW9mIE9iamVjdC5jcmVhdGUgPT09ICdmdW5jdGlvbicpIHtcbiAgLy8gaW1wbGVtZW50YXRpb24gZnJvbSBzdGFuZGFyZCBub2RlLmpzICd1dGlsJyBtb2R1bGVcbiAgbW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBpbmhlcml0cyhjdG9yLCBzdXBlckN0b3IpIHtcbiAgICBpZiAoc3VwZXJDdG9yKSB7XG4gICAgICBjdG9yLnN1cGVyXyA9IHN1cGVyQ3RvclxuICAgICAgY3Rvci5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ3Rvci5wcm90b3R5cGUsIHtcbiAgICAgICAgY29uc3RydWN0b3I6IHtcbiAgICAgICAgICB2YWx1ZTogY3RvcixcbiAgICAgICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICBjb25maWd1cmFibGU6IHRydWVcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH07XG59IGVsc2Uge1xuICAvLyBvbGQgc2Nob29sIHNoaW0gZm9yIG9sZCBicm93c2Vyc1xuICBtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGluaGVyaXRzKGN0b3IsIHN1cGVyQ3Rvcikge1xuICAgIGlmIChzdXBlckN0b3IpIHtcbiAgICAgIGN0b3Iuc3VwZXJfID0gc3VwZXJDdG9yXG4gICAgICB2YXIgVGVtcEN0b3IgPSBmdW5jdGlvbiAoKSB7fVxuICAgICAgVGVtcEN0b3IucHJvdG90eXBlID0gc3VwZXJDdG9yLnByb3RvdHlwZVxuICAgICAgY3Rvci5wcm90b3R5cGUgPSBuZXcgVGVtcEN0b3IoKVxuICAgICAgY3Rvci5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBjdG9yXG4gICAgfVxuICB9XG59XG4iLCAidHJ5IHtcbiAgdmFyIHV0aWwgPSByZXF1aXJlKCd1dGlsJyk7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGlmICh0eXBlb2YgdXRpbC5pbmhlcml0cyAhPT0gJ2Z1bmN0aW9uJykgdGhyb3cgJyc7XG4gIG1vZHVsZS5leHBvcnRzID0gdXRpbC5pbmhlcml0cztcbn0gY2F0Y2ggKGUpIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2luaGVyaXRzX2Jyb3dzZXIuanMnKTtcbn1cbiIsICJ2YXIgaW5oZXJpdHMgPSByZXF1aXJlKCdpbmhlcml0cycpXG52YXIgRXZlbnRFbWl0dGVyID0gcmVxdWlyZSgnZXZlbnRzJykuRXZlbnRFbWl0dGVyXG5cbm1vZHVsZS5leHBvcnRzID0gUXVldWVcbm1vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSBRdWV1ZVxuXG5mdW5jdGlvbiBRdWV1ZSAob3B0aW9ucykge1xuICBpZiAoISh0aGlzIGluc3RhbmNlb2YgUXVldWUpKSB7XG4gICAgcmV0dXJuIG5ldyBRdWV1ZShvcHRpb25zKVxuICB9XG5cbiAgRXZlbnRFbWl0dGVyLmNhbGwodGhpcylcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge31cbiAgdGhpcy5jb25jdXJyZW5jeSA9IG9wdGlvbnMuY29uY3VycmVuY3kgfHwgSW5maW5pdHlcbiAgdGhpcy50aW1lb3V0ID0gb3B0aW9ucy50aW1lb3V0IHx8IDBcbiAgdGhpcy5hdXRvc3RhcnQgPSBvcHRpb25zLmF1dG9zdGFydCB8fCBmYWxzZVxuICB0aGlzLnJlc3VsdHMgPSBvcHRpb25zLnJlc3VsdHMgfHwgbnVsbFxuICB0aGlzLnBlbmRpbmcgPSAwXG4gIHRoaXMuc2Vzc2lvbiA9IDBcbiAgdGhpcy5ydW5uaW5nID0gZmFsc2VcbiAgdGhpcy5qb2JzID0gW11cbiAgdGhpcy50aW1lcnMgPSB7fVxufVxuaW5oZXJpdHMoUXVldWUsIEV2ZW50RW1pdHRlcilcblxudmFyIGFycmF5TWV0aG9kcyA9IFtcbiAgJ3BvcCcsXG4gICdzaGlmdCcsXG4gICdpbmRleE9mJyxcbiAgJ2xhc3RJbmRleE9mJ1xuXVxuXG5hcnJheU1ldGhvZHMuZm9yRWFjaChmdW5jdGlvbiAobWV0aG9kKSB7XG4gIFF1ZXVlLnByb3RvdHlwZVttZXRob2RdID0gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBBcnJheS5wcm90b3R5cGVbbWV0aG9kXS5hcHBseSh0aGlzLmpvYnMsIGFyZ3VtZW50cylcbiAgfVxufSlcblxuUXVldWUucHJvdG90eXBlLnNsaWNlID0gZnVuY3Rpb24gKGJlZ2luLCBlbmQpIHtcbiAgdGhpcy5qb2JzID0gdGhpcy5qb2JzLnNsaWNlKGJlZ2luLCBlbmQpXG4gIHJldHVybiB0aGlzXG59XG5cblF1ZXVlLnByb3RvdHlwZS5yZXZlcnNlID0gZnVuY3Rpb24gKCkge1xuICB0aGlzLmpvYnMucmV2ZXJzZSgpXG4gIHJldHVybiB0aGlzXG59XG5cbnZhciBhcnJheUFkZE1ldGhvZHMgPSBbXG4gICdwdXNoJyxcbiAgJ3Vuc2hpZnQnLFxuICAnc3BsaWNlJ1xuXVxuXG5hcnJheUFkZE1ldGhvZHMuZm9yRWFjaChmdW5jdGlvbiAobWV0aG9kKSB7XG4gIFF1ZXVlLnByb3RvdHlwZVttZXRob2RdID0gZnVuY3Rpb24gKCkge1xuICAgIHZhciBtZXRob2RSZXN1bHQgPSBBcnJheS5wcm90b3R5cGVbbWV0aG9kXS5hcHBseSh0aGlzLmpvYnMsIGFyZ3VtZW50cylcbiAgICBpZiAodGhpcy5hdXRvc3RhcnQpIHtcbiAgICAgIHRoaXMuc3RhcnQoKVxuICAgIH1cbiAgICByZXR1cm4gbWV0aG9kUmVzdWx0XG4gIH1cbn0pXG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShRdWV1ZS5wcm90b3R5cGUsICdsZW5ndGgnLCB7XG4gIGdldDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnBlbmRpbmcgKyB0aGlzLmpvYnMubGVuZ3RoXG4gIH1cbn0pXG5cblF1ZXVlLnByb3RvdHlwZS5zdGFydCA9IGZ1bmN0aW9uIChjYikge1xuICBpZiAoY2IpIHtcbiAgICBjYWxsT25FcnJvck9yRW5kLmNhbGwodGhpcywgY2IpXG4gIH1cblxuICB0aGlzLnJ1bm5pbmcgPSB0cnVlXG5cbiAgaWYgKHRoaXMucGVuZGluZyA+PSB0aGlzLmNvbmN1cnJlbmN5KSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBpZiAodGhpcy5qb2JzLmxlbmd0aCA9PT0gMCkge1xuICAgIGlmICh0aGlzLnBlbmRpbmcgPT09IDApIHtcbiAgICAgIGRvbmUuY2FsbCh0aGlzKVxuICAgIH1cbiAgICByZXR1cm5cbiAgfVxuXG4gIHZhciBzZWxmID0gdGhpc1xuICB2YXIgam9iID0gdGhpcy5qb2JzLnNoaWZ0KClcbiAgdmFyIG9uY2UgPSB0cnVlXG4gIHZhciBzZXNzaW9uID0gdGhpcy5zZXNzaW9uXG4gIHZhciB0aW1lb3V0SWQgPSBudWxsXG4gIHZhciBkaWRUaW1lb3V0ID0gZmFsc2VcbiAgdmFyIHJlc3VsdEluZGV4ID0gbnVsbFxuICB2YXIgdGltZW91dCA9IGpvYi5oYXNPd25Qcm9wZXJ0eSgndGltZW91dCcpID8gam9iLnRpbWVvdXQgOiB0aGlzLnRpbWVvdXRcblxuICBmdW5jdGlvbiBuZXh0IChlcnIsIHJlc3VsdCkge1xuICAgIGlmIChvbmNlICYmIHNlbGYuc2Vzc2lvbiA9PT0gc2Vzc2lvbikge1xuICAgICAgb25jZSA9IGZhbHNlXG4gICAgICBzZWxmLnBlbmRpbmctLVxuICAgICAgaWYgKHRpbWVvdXRJZCAhPT0gbnVsbCkge1xuICAgICAgICBkZWxldGUgc2VsZi50aW1lcnNbdGltZW91dElkXVxuICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dElkKVxuICAgICAgfVxuXG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHNlbGYuZW1pdCgnZXJyb3InLCBlcnIsIGpvYilcbiAgICAgIH0gZWxzZSBpZiAoZGlkVGltZW91dCA9PT0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHJlc3VsdEluZGV4ICE9PSBudWxsKSB7XG4gICAgICAgICAgc2VsZi5yZXN1bHRzW3Jlc3VsdEluZGV4XSA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMSlcbiAgICAgICAgfVxuICAgICAgICBzZWxmLmVtaXQoJ3N1Y2Nlc3MnLCByZXN1bHQsIGpvYilcbiAgICAgIH1cblxuICAgICAgaWYgKHNlbGYuc2Vzc2lvbiA9PT0gc2Vzc2lvbikge1xuICAgICAgICBpZiAoc2VsZi5wZW5kaW5nID09PSAwICYmIHNlbGYuam9icy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICBkb25lLmNhbGwoc2VsZilcbiAgICAgICAgfSBlbHNlIGlmIChzZWxmLnJ1bm5pbmcpIHtcbiAgICAgICAgICBzZWxmLnN0YXJ0KClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmICh0aW1lb3V0KSB7XG4gICAgdGltZW91dElkID0gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBkaWRUaW1lb3V0ID0gdHJ1ZVxuICAgICAgaWYgKHNlbGYubGlzdGVuZXJzKCd0aW1lb3V0JykubGVuZ3RoID4gMCkge1xuICAgICAgICBzZWxmLmVtaXQoJ3RpbWVvdXQnLCBuZXh0LCBqb2IpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXh0KClcbiAgICAgIH1cbiAgICB9LCB0aW1lb3V0KVxuICAgIHRoaXMudGltZXJzW3RpbWVvdXRJZF0gPSB0aW1lb3V0SWRcbiAgfVxuXG4gIGlmICh0aGlzLnJlc3VsdHMpIHtcbiAgICByZXN1bHRJbmRleCA9IHRoaXMucmVzdWx0cy5sZW5ndGhcbiAgICB0aGlzLnJlc3VsdHNbcmVzdWx0SW5kZXhdID0gbnVsbFxuICB9XG5cbiAgdGhpcy5wZW5kaW5nKytcbiAgc2VsZi5lbWl0KCdzdGFydCcsIGpvYilcbiAgdmFyIHByb21pc2UgPSBqb2IobmV4dClcbiAgaWYgKHByb21pc2UgJiYgcHJvbWlzZS50aGVuICYmIHR5cGVvZiBwcm9taXNlLnRoZW4gPT09ICdmdW5jdGlvbicpIHtcbiAgICBwcm9taXNlLnRoZW4oZnVuY3Rpb24gKHJlc3VsdCkge1xuICAgICAgcmV0dXJuIG5leHQobnVsbCwgcmVzdWx0KVxuICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgIHJldHVybiBuZXh0KGVyciB8fCB0cnVlKVxuICAgIH0pXG4gIH1cblxuICBpZiAodGhpcy5ydW5uaW5nICYmIHRoaXMuam9icy5sZW5ndGggPiAwKSB7XG4gICAgdGhpcy5zdGFydCgpXG4gIH1cbn1cblxuUXVldWUucHJvdG90eXBlLnN0b3AgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMucnVubmluZyA9IGZhbHNlXG59XG5cblF1ZXVlLnByb3RvdHlwZS5lbmQgPSBmdW5jdGlvbiAoZXJyKSB7XG4gIGNsZWFyVGltZXJzLmNhbGwodGhpcylcbiAgdGhpcy5qb2JzLmxlbmd0aCA9IDBcbiAgdGhpcy5wZW5kaW5nID0gMFxuICBkb25lLmNhbGwodGhpcywgZXJyKVxufVxuXG5mdW5jdGlvbiBjbGVhclRpbWVycyAoKSB7XG4gIGZvciAodmFyIGtleSBpbiB0aGlzLnRpbWVycykge1xuICAgIHZhciB0aW1lb3V0SWQgPSB0aGlzLnRpbWVyc1trZXldXG4gICAgZGVsZXRlIHRoaXMudGltZXJzW2tleV1cbiAgICBjbGVhclRpbWVvdXQodGltZW91dElkKVxuICB9XG59XG5cbmZ1bmN0aW9uIGNhbGxPbkVycm9yT3JFbmQgKGNiKSB7XG4gIHZhciBzZWxmID0gdGhpc1xuICB0aGlzLm9uKCdlcnJvcicsIG9uZXJyb3IpXG4gIHRoaXMub24oJ2VuZCcsIG9uZW5kKVxuXG4gIGZ1bmN0aW9uIG9uZXJyb3IgKGVycikgeyBzZWxmLmVuZChlcnIpIH1cbiAgZnVuY3Rpb24gb25lbmQgKGVycikge1xuICAgIHNlbGYucmVtb3ZlTGlzdGVuZXIoJ2Vycm9yJywgb25lcnJvcilcbiAgICBzZWxmLnJlbW92ZUxpc3RlbmVyKCdlbmQnLCBvbmVuZClcbiAgICBjYihlcnIsIHRoaXMucmVzdWx0cylcbiAgfVxufVxuXG5mdW5jdGlvbiBkb25lIChlcnIpIHtcbiAgdGhpcy5zZXNzaW9uKytcbiAgdGhpcy5ydW5uaW5nID0gZmFsc2VcbiAgdGhpcy5lbWl0KCdlbmQnLCBlcnIpXG59XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmZpbmRCb3ggPSBleHBvcnRzLnJlYWRVSW50ID0gZXhwb3J0cy5yZWFkVUludDMyTEUgPSBleHBvcnRzLnJlYWRVSW50MzJCRSA9IGV4cG9ydHMucmVhZEludDMyTEUgPSBleHBvcnRzLnJlYWRVSW50MjRMRSA9IGV4cG9ydHMucmVhZFVJbnQxNkxFID0gZXhwb3J0cy5yZWFkVUludDE2QkUgPSBleHBvcnRzLnJlYWRJbnQxNkxFID0gZXhwb3J0cy50b0hleFN0cmluZyA9IGV4cG9ydHMudG9VVEY4U3RyaW5nID0gdm9pZCAwO1xuY29uc3QgZGVjb2RlciA9IG5ldyBUZXh0RGVjb2RlcigpO1xuY29uc3QgdG9VVEY4U3RyaW5nID0gKGlucHV0LCBzdGFydCA9IDAsIGVuZCA9IGlucHV0Lmxlbmd0aCkgPT4gZGVjb2Rlci5kZWNvZGUoaW5wdXQuc2xpY2Uoc3RhcnQsIGVuZCkpO1xuZXhwb3J0cy50b1VURjhTdHJpbmcgPSB0b1VURjhTdHJpbmc7XG5jb25zdCB0b0hleFN0cmluZyA9IChpbnB1dCwgc3RhcnQgPSAwLCBlbmQgPSBpbnB1dC5sZW5ndGgpID0+IGlucHV0XG4gICAgLnNsaWNlKHN0YXJ0LCBlbmQpXG4gICAgLnJlZHVjZSgobWVtbywgaSkgPT4gbWVtbyArICgnMCcgKyBpLnRvU3RyaW5nKDE2KSkuc2xpY2UoLTIpLCAnJyk7XG5leHBvcnRzLnRvSGV4U3RyaW5nID0gdG9IZXhTdHJpbmc7XG5jb25zdCByZWFkSW50MTZMRSA9IChpbnB1dCwgb2Zmc2V0ID0gMCkgPT4ge1xuICAgIGNvbnN0IHZhbCA9IGlucHV0W29mZnNldF0gKyBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogODtcbiAgICByZXR1cm4gdmFsIHwgKCh2YWwgJiAoMiAqKiAxNSkpICogMHgxZmZmZSk7XG59O1xuZXhwb3J0cy5yZWFkSW50MTZMRSA9IHJlYWRJbnQxNkxFO1xuY29uc3QgcmVhZFVJbnQxNkJFID0gKGlucHV0LCBvZmZzZXQgPSAwKSA9PiBpbnB1dFtvZmZzZXRdICogMiAqKiA4ICsgaW5wdXRbb2Zmc2V0ICsgMV07XG5leHBvcnRzLnJlYWRVSW50MTZCRSA9IHJlYWRVSW50MTZCRTtcbmNvbnN0IHJlYWRVSW50MTZMRSA9IChpbnB1dCwgb2Zmc2V0ID0gMCkgPT4gaW5wdXRbb2Zmc2V0XSArIGlucHV0W29mZnNldCArIDFdICogMiAqKiA4O1xuZXhwb3J0cy5yZWFkVUludDE2TEUgPSByZWFkVUludDE2TEU7XG5jb25zdCByZWFkVUludDI0TEUgPSAoaW5wdXQsIG9mZnNldCA9IDApID0+IGlucHV0W29mZnNldF0gKyBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogOCArIGlucHV0W29mZnNldCArIDJdICogMiAqKiAxNjtcbmV4cG9ydHMucmVhZFVJbnQyNExFID0gcmVhZFVJbnQyNExFO1xuY29uc3QgcmVhZEludDMyTEUgPSAoaW5wdXQsIG9mZnNldCA9IDApID0+IGlucHV0W29mZnNldF0gK1xuICAgIGlucHV0W29mZnNldCArIDFdICogMiAqKiA4ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAyXSAqIDIgKiogMTYgK1xuICAgIChpbnB1dFtvZmZzZXQgKyAzXSA8PCAyNCk7XG5leHBvcnRzLnJlYWRJbnQzMkxFID0gcmVhZEludDMyTEU7XG5jb25zdCByZWFkVUludDMyQkUgPSAoaW5wdXQsIG9mZnNldCA9IDApID0+IGlucHV0W29mZnNldF0gKiAyICoqIDI0ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogMTYgK1xuICAgIGlucHV0W29mZnNldCArIDJdICogMiAqKiA4ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAzXTtcbmV4cG9ydHMucmVhZFVJbnQzMkJFID0gcmVhZFVJbnQzMkJFO1xuY29uc3QgcmVhZFVJbnQzMkxFID0gKGlucHV0LCBvZmZzZXQgPSAwKSA9PiBpbnB1dFtvZmZzZXRdICtcbiAgICBpbnB1dFtvZmZzZXQgKyAxXSAqIDIgKiogOCArXG4gICAgaW5wdXRbb2Zmc2V0ICsgMl0gKiAyICoqIDE2ICtcbiAgICBpbnB1dFtvZmZzZXQgKyAzXSAqIDIgKiogMjQ7XG5leHBvcnRzLnJlYWRVSW50MzJMRSA9IHJlYWRVSW50MzJMRTtcbi8vIEFic3RyYWN0IHJlYWRpbmcgbXVsdGktYnl0ZSB1bnNpZ25lZCBpbnRlZ2Vyc1xuY29uc3QgbWV0aG9kcyA9IHtcbiAgICByZWFkVUludDE2QkU6IGV4cG9ydHMucmVhZFVJbnQxNkJFLFxuICAgIHJlYWRVSW50MTZMRTogZXhwb3J0cy5yZWFkVUludDE2TEUsXG4gICAgcmVhZFVJbnQzMkJFOiBleHBvcnRzLnJlYWRVSW50MzJCRSxcbiAgICByZWFkVUludDMyTEU6IGV4cG9ydHMucmVhZFVJbnQzMkxFLFxufTtcbmZ1bmN0aW9uIHJlYWRVSW50KGlucHV0LCBiaXRzLCBvZmZzZXQsIGlzQmlnRW5kaWFuKSB7XG4gICAgb2Zmc2V0ID0gb2Zmc2V0IHx8IDA7XG4gICAgY29uc3QgZW5kaWFuID0gaXNCaWdFbmRpYW4gPyAnQkUnIDogJ0xFJztcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKCdyZWFkVUludCcgKyBiaXRzICsgZW5kaWFuKTtcbiAgICByZXR1cm4gbWV0aG9kc1ttZXRob2ROYW1lXShpbnB1dCwgb2Zmc2V0KTtcbn1cbmV4cG9ydHMucmVhZFVJbnQgPSByZWFkVUludDtcbmZ1bmN0aW9uIHJlYWRCb3goaW5wdXQsIG9mZnNldCkge1xuICAgIGlmIChpbnB1dC5sZW5ndGggLSBvZmZzZXQgPCA0KVxuICAgICAgICByZXR1cm47XG4gICAgY29uc3QgYm94U2l6ZSA9ICgwLCBleHBvcnRzLnJlYWRVSW50MzJCRSkoaW5wdXQsIG9mZnNldCk7XG4gICAgaWYgKGlucHV0Lmxlbmd0aCAtIG9mZnNldCA8IGJveFNpemUpXG4gICAgICAgIHJldHVybjtcbiAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAoMCwgZXhwb3J0cy50b1VURjhTdHJpbmcpKGlucHV0LCA0ICsgb2Zmc2V0LCA4ICsgb2Zmc2V0KSxcbiAgICAgICAgb2Zmc2V0LFxuICAgICAgICBzaXplOiBib3hTaXplLFxuICAgIH07XG59XG5mdW5jdGlvbiBmaW5kQm94KGlucHV0LCBib3hOYW1lLCBvZmZzZXQpIHtcbiAgICB3aGlsZSAob2Zmc2V0IDwgaW5wdXQubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGJveCA9IHJlYWRCb3goaW5wdXQsIG9mZnNldCk7XG4gICAgICAgIGlmICghYm94KVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGlmIChib3gubmFtZSA9PT0gYm94TmFtZSlcbiAgICAgICAgICAgIHJldHVybiBib3g7XG4gICAgICAgIC8vIEZpeCB0aGUgaW5maW5pdGUgbG9vcCBieSBlbnN1cmluZyBvZmZzZXQgYWx3YXlzIGluY3JlYXNlc1xuICAgICAgICAvLyBJZiBib3guc2l6ZSBpcyAwLCBhZHZhbmNlIGJ5IGF0IGxlYXN0IDggYnl0ZXMgKHRoZSBzaXplIG9mIHRoZSBib3ggaGVhZGVyKVxuICAgICAgICBvZmZzZXQgKz0gYm94LnNpemUgPiAwID8gYm94LnNpemUgOiA4O1xuICAgIH1cbn1cbmV4cG9ydHMuZmluZEJveCA9IGZpbmRCb3g7XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLkJNUCA9IHZvaWQgMDtcbmNvbnN0IHV0aWxzXzEgPSByZXF1aXJlKFwiLi91dGlsc1wiKTtcbmV4cG9ydHMuQk1QID0ge1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDIpID09PSAnQk0nLFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiAoe1xuICAgICAgICBoZWlnaHQ6IE1hdGguYWJzKCgwLCB1dGlsc18xLnJlYWRJbnQzMkxFKShpbnB1dCwgMjIpKSxcbiAgICAgICAgd2lkdGg6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJMRSkoaW5wdXQsIDE4KSxcbiAgICB9KSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLklDTyA9IHZvaWQgMDtcbmNvbnN0IHV0aWxzXzEgPSByZXF1aXJlKFwiLi91dGlsc1wiKTtcbmNvbnN0IFRZUEVfSUNPTiA9IDE7XG4vKipcbiAqIElDT04gSGVhZGVyXG4gKlxuICogfCBPZmZzZXQgfCBTaXplIHwgUHVycG9zZSB8XG4gKiB8IDBcdCAgICB8IDIgICAgfCBSZXNlcnZlZC4gTXVzdCBhbHdheXMgYmUgMC4gIHxcbiAqIHwgMiAgICAgIHwgMiAgICB8IEltYWdlIHR5cGU6IDEgZm9yIGljb24gKC5JQ08pIGltYWdlLCAyIGZvciBjdXJzb3IgKC5DVVIpIGltYWdlLiBPdGhlciB2YWx1ZXMgYXJlIGludmFsaWQuIHxcbiAqIHwgNCAgICAgIHwgMiAgICB8IE51bWJlciBvZiBpbWFnZXMgaW4gdGhlIGZpbGUuIHxcbiAqXG4gKi9cbmNvbnN0IFNJWkVfSEVBREVSID0gMiArIDIgKyAyOyAvLyA2XG4vKipcbiAqIEltYWdlIEVudHJ5XG4gKlxuICogfCBPZmZzZXQgfCBTaXplIHwgUHVycG9zZSB8XG4gKiB8IDBcdCAgICB8IDEgICAgfCBJbWFnZSB3aWR0aCBpbiBwaXhlbHMuIENhbiBiZSBhbnkgbnVtYmVyIGJldHdlZW4gMCBhbmQgMjU1LiBWYWx1ZSAwIG1lYW5zIHdpZHRoIGlzIDI1NiBwaXhlbHMuIHxcbiAqIHwgMSAgICAgIHwgMSAgICB8IEltYWdlIGhlaWdodCBpbiBwaXhlbHMuIENhbiBiZSBhbnkgbnVtYmVyIGJldHdlZW4gMCBhbmQgMjU1LiBWYWx1ZSAwIG1lYW5zIGhlaWdodCBpcyAyNTYgcGl4ZWxzLiB8XG4gKiB8IDIgICAgICB8IDEgICAgfCBOdW1iZXIgb2YgY29sb3JzIGluIHRoZSBjb2xvciBwYWxldHRlLiBTaG91bGQgYmUgMCBpZiB0aGUgaW1hZ2UgZG9lcyBub3QgdXNlIGEgY29sb3IgcGFsZXR0ZS4gfFxuICogfCAzICAgICAgfCAxICAgIHwgUmVzZXJ2ZWQuIFNob3VsZCBiZSAwLiB8XG4gKiB8IDQgICAgICB8IDIgICAgfCBJQ08gZm9ybWF0OiBDb2xvciBwbGFuZXMuIFNob3VsZCBiZSAwIG9yIDEuIHxcbiAqIHwgICAgICAgIHwgICAgICB8IENVUiBmb3JtYXQ6IFRoZSBob3Jpem9udGFsIGNvb3JkaW5hdGVzIG9mIHRoZSBob3RzcG90IGluIG51bWJlciBvZiBwaXhlbHMgZnJvbSB0aGUgbGVmdC4gfFxuICogfCA2ICAgICAgfCAyICAgIHwgSUNPIGZvcm1hdDogQml0cyBwZXIgcGl4ZWwuIHxcbiAqIHwgICAgICAgIHwgICAgICB8IENVUiBmb3JtYXQ6IFRoZSB2ZXJ0aWNhbCBjb29yZGluYXRlcyBvZiB0aGUgaG90c3BvdCBpbiBudW1iZXIgb2YgcGl4ZWxzIGZyb20gdGhlIHRvcC4gfFxuICogfCA4ICAgICAgfCA0ICAgIHwgVGhlIHNpemUgb2YgdGhlIGltYWdlJ3MgZGF0YSBpbiBieXRlcyB8XG4gKiB8IDEyICAgICB8IDQgICAgfCBUaGUgb2Zmc2V0IG9mIEJNUCBvciBQTkcgZGF0YSBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIElDTy9DVVIgZmlsZSB8XG4gKlxuICovXG5jb25zdCBTSVpFX0lNQUdFX0VOVFJZID0gMSArIDEgKyAxICsgMSArIDIgKyAyICsgNCArIDQ7IC8vIDE2XG5mdW5jdGlvbiBnZXRTaXplRnJvbU9mZnNldChpbnB1dCwgb2Zmc2V0KSB7XG4gICAgY29uc3QgdmFsdWUgPSBpbnB1dFtvZmZzZXRdO1xuICAgIHJldHVybiB2YWx1ZSA9PT0gMCA/IDI1NiA6IHZhbHVlO1xufVxuZnVuY3Rpb24gZ2V0SW1hZ2VTaXplKGlucHV0LCBpbWFnZUluZGV4KSB7XG4gICAgY29uc3Qgb2Zmc2V0ID0gU0laRV9IRUFERVIgKyBpbWFnZUluZGV4ICogU0laRV9JTUFHRV9FTlRSWTtcbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IGdldFNpemVGcm9tT2Zmc2V0KGlucHV0LCBvZmZzZXQgKyAxKSxcbiAgICAgICAgd2lkdGg6IGdldFNpemVGcm9tT2Zmc2V0KGlucHV0LCBvZmZzZXQpLFxuICAgIH07XG59XG5leHBvcnRzLklDTyA9IHtcbiAgICB2YWxpZGF0ZShpbnB1dCkge1xuICAgICAgICBjb25zdCByZXNlcnZlZCA9ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDApO1xuICAgICAgICBjb25zdCBpbWFnZUNvdW50ID0gKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgNCk7XG4gICAgICAgIGlmIChyZXNlcnZlZCAhPT0gMCB8fCBpbWFnZUNvdW50ID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBpbWFnZVR5cGUgPSAoMCwgdXRpbHNfMS5yZWFkVUludDE2TEUpKGlucHV0LCAyKTtcbiAgICAgICAgcmV0dXJuIGltYWdlVHlwZSA9PT0gVFlQRV9JQ09OO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IG5iSW1hZ2VzID0gKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgNCk7XG4gICAgICAgIGNvbnN0IGltYWdlU2l6ZSA9IGdldEltYWdlU2l6ZShpbnB1dCwgMCk7XG4gICAgICAgIGlmIChuYkltYWdlcyA9PT0gMSlcbiAgICAgICAgICAgIHJldHVybiBpbWFnZVNpemU7XG4gICAgICAgIGNvbnN0IGltZ3MgPSBbaW1hZ2VTaXplXTtcbiAgICAgICAgZm9yIChsZXQgaW1hZ2VJbmRleCA9IDE7IGltYWdlSW5kZXggPCBuYkltYWdlczsgaW1hZ2VJbmRleCArPSAxKSB7XG4gICAgICAgICAgICBpbWdzLnB1c2goZ2V0SW1hZ2VTaXplKGlucHV0LCBpbWFnZUluZGV4KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlaWdodDogaW1hZ2VTaXplLmhlaWdodCxcbiAgICAgICAgICAgIGltYWdlczogaW1ncyxcbiAgICAgICAgICAgIHdpZHRoOiBpbWFnZVNpemUud2lkdGgsXG4gICAgICAgIH07XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLkNVUiA9IHZvaWQgMDtcbmNvbnN0IGljb18xID0gcmVxdWlyZShcIi4vaWNvXCIpO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgVFlQRV9DVVJTT1IgPSAyO1xuZXhwb3J0cy5DVVIgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgcmVzZXJ2ZWQgPSAoMCwgdXRpbHNfMS5yZWFkVUludDE2TEUpKGlucHV0LCAwKTtcbiAgICAgICAgY29uc3QgaW1hZ2VDb3VudCA9ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDQpO1xuICAgICAgICBpZiAocmVzZXJ2ZWQgIT09IDAgfHwgaW1hZ2VDb3VudCA9PT0gMClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgaW1hZ2VUeXBlID0gKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgMik7XG4gICAgICAgIHJldHVybiBpbWFnZVR5cGUgPT09IFRZUEVfQ1VSU09SO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlOiAoaW5wdXQpID0+IGljb18xLklDTy5jYWxjdWxhdGUoaW5wdXQpLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuRERTID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuZXhwb3J0cy5ERFMgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gKDAsIHV0aWxzXzEucmVhZFVJbnQzMkxFKShpbnB1dCwgMCkgPT09IDB4MjA1MzQ0NDQsXG4gICAgY2FsY3VsYXRlOiAoaW5wdXQpID0+ICh7XG4gICAgICAgIGhlaWdodDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkxFKShpbnB1dCwgMTIpLFxuICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkxFKShpbnB1dCwgMTYpLFxuICAgIH0pLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuR0lGID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgZ2lmUmVnZXhwID0gL15HSUY4Wzc5XWEvO1xuZXhwb3J0cy5HSUYgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gZ2lmUmVnZXhwLnRlc3QoKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMCwgNikpLFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiAoe1xuICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDgpLFxuICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQxNkxFKShpbnB1dCwgNiksXG4gICAgfSksXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5IRUlGID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgYnJhbmRNYXAgPSB7XG4gICAgYXZpZjogJ2F2aWYnLFxuICAgIG1pZjE6ICdoZWlmJyxcbiAgICBtc2YxOiAnaGVpZicsIC8vIGhlaWYtc2VxdWVuY2VcbiAgICBoZWljOiAnaGVpYycsXG4gICAgaGVpeDogJ2hlaWMnLFxuICAgIGhldmM6ICdoZWljJywgLy8gaGVpYy1zZXF1ZW5jZVxuICAgIGhldng6ICdoZWljJywgLy8gaGVpYy1zZXF1ZW5jZVxufTtcbmV4cG9ydHMuSEVJRiA9IHtcbiAgICB2YWxpZGF0ZShpbnB1dCkge1xuICAgICAgICBjb25zdCBib3hUeXBlID0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgNCwgOCk7XG4gICAgICAgIGlmIChib3hUeXBlICE9PSAnZnR5cCcpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IGZ0eXBCb3ggPSAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2Z0eXAnLCAwKTtcbiAgICAgICAgaWYgKCFmdHlwQm94KVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBicmFuZCA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIGZ0eXBCb3gub2Zmc2V0ICsgOCwgZnR5cEJveC5vZmZzZXQgKyAxMik7XG4gICAgICAgIHJldHVybiBicmFuZCBpbiBicmFuZE1hcDtcbiAgICB9LFxuICAgIGNhbGN1bGF0ZShpbnB1dCkge1xuICAgICAgICAvLyBCYXNlZCBvbiBodHRwczovL25va2lhdGVjaC5naXRodWIuaW8vaGVpZi90ZWNobmljYWwuaHRtbFxuICAgICAgICBjb25zdCBtZXRhQm94ID0gKDAsIHV0aWxzXzEuZmluZEJveCkoaW5wdXQsICdtZXRhJywgMCk7XG4gICAgICAgIGNvbnN0IGlwcnBCb3ggPSBtZXRhQm94ICYmICgwLCB1dGlsc18xLmZpbmRCb3gpKGlucHV0LCAnaXBycCcsIG1ldGFCb3gub2Zmc2V0ICsgMTIpO1xuICAgICAgICBjb25zdCBpcGNvQm94ID0gaXBycEJveCAmJiAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2lwY28nLCBpcHJwQm94Lm9mZnNldCArIDgpO1xuICAgICAgICBjb25zdCBpc3BlQm94ID0gaXBjb0JveCAmJiAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2lzcGUnLCBpcGNvQm94Lm9mZnNldCArIDgpO1xuICAgICAgICBpZiAoaXNwZUJveCkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIGlzcGVCb3gub2Zmc2V0ICsgMTYpLFxuICAgICAgICAgICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkVUludDMyQkUpKGlucHV0LCBpc3BlQm94Lm9mZnNldCArIDEyKSxcbiAgICAgICAgICAgICAgICB0eXBlOiAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCA4LCAxMiksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgSEVJRiwgbm8gc2l6ZSBmb3VuZCcpO1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5JQ05TID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuLyoqXG4gKiBJQ05TIEhlYWRlclxuICpcbiAqIHwgT2Zmc2V0IHwgU2l6ZSB8IFB1cnBvc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gKiB8IDBcdCAgICB8IDQgICAgfCBNYWdpYyBsaXRlcmFsLCBtdXN0IGJlIFwiaWNuc1wiICgweDY5LCAweDYzLCAweDZlLCAweDczKSB8XG4gKiB8IDQgICAgICB8IDQgICAgfCBMZW5ndGggb2YgZmlsZSwgaW4gYnl0ZXMsIG1zYiBmaXJzdC4gICAgICAgICAgICAgICAgICAgfFxuICpcbiAqL1xuY29uc3QgU0laRV9IRUFERVIgPSA0ICsgNDsgLy8gOFxuY29uc3QgRklMRV9MRU5HVEhfT0ZGU0VUID0gNDsgLy8gTVNCID0+IEJJRyBFTkRJQU5cbi8qKlxuICogSW1hZ2UgRW50cnlcbiAqXG4gKiB8IE9mZnNldCB8IFNpemUgfCBQdXJwb3NlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAqIHwgMFx0ICAgIHwgNCAgICB8IEljb24gdHlwZSwgc2VlIE9TVHlwZSBiZWxvdy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICogfCA0ICAgICAgfCA0ICAgIHwgTGVuZ3RoIG9mIGRhdGEsIGluIGJ5dGVzIChpbmNsdWRpbmcgdHlwZSBhbmQgbGVuZ3RoKSwgbXNiIGZpcnN0LiB8XG4gKiB8IDggICAgICB8IG4gICAgfCBJY29uIGRhdGEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAqL1xuY29uc3QgRU5UUllfTEVOR1RIX09GRlNFVCA9IDQ7IC8vIE1TQiA9PiBCSUcgRU5ESUFOXG5jb25zdCBJQ09OX1RZUEVfU0laRSA9IHtcbiAgICBJQ09OOiAzMixcbiAgICAnSUNOIyc6IDMyLFxuICAgIC8vIG0gPT4gMTYgeCAxNlxuICAgICdpY20jJzogMTYsXG4gICAgaWNtNDogMTYsXG4gICAgaWNtODogMTYsXG4gICAgLy8gcyA9PiAxNiB4IDE2XG4gICAgJ2ljcyMnOiAxNixcbiAgICBpY3M0OiAxNixcbiAgICBpY3M4OiAxNixcbiAgICBpczMyOiAxNixcbiAgICBzOG1rOiAxNixcbiAgICBpY3A0OiAxNixcbiAgICAvLyBsID0+IDMyIHggMzJcbiAgICBpY2w0OiAzMixcbiAgICBpY2w4OiAzMixcbiAgICBpbDMyOiAzMixcbiAgICBsOG1rOiAzMixcbiAgICBpY3A1OiAzMixcbiAgICBpYzExOiAzMixcbiAgICAvLyBoID0+IDQ4IHggNDhcbiAgICBpY2g0OiA0OCxcbiAgICBpY2g4OiA0OCxcbiAgICBpaDMyOiA0OCxcbiAgICBoOG1rOiA0OCxcbiAgICAvLyAuID0+IDY0IHggNjRcbiAgICBpY3A2OiA2NCxcbiAgICBpYzEyOiAzMixcbiAgICAvLyB0ID0+IDEyOCB4IDEyOFxuICAgIGl0MzI6IDEyOCxcbiAgICB0OG1rOiAxMjgsXG4gICAgaWMwNzogMTI4LFxuICAgIC8vIC4gPT4gMjU2IHggMjU2XG4gICAgaWMwODogMjU2LFxuICAgIGljMTM6IDI1NixcbiAgICAvLyAuID0+IDUxMiB4IDUxMlxuICAgIGljMDk6IDUxMixcbiAgICBpYzE0OiA1MTIsXG4gICAgLy8gLiA9PiAxMDI0IHggMTAyNFxuICAgIGljMTA6IDEwMjQsXG59O1xuZnVuY3Rpb24gcmVhZEltYWdlSGVhZGVyKGlucHV0LCBpbWFnZU9mZnNldCkge1xuICAgIGNvbnN0IGltYWdlTGVuZ3RoT2Zmc2V0ID0gaW1hZ2VPZmZzZXQgKyBFTlRSWV9MRU5HVEhfT0ZGU0VUO1xuICAgIHJldHVybiBbXG4gICAgICAgICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIGltYWdlT2Zmc2V0LCBpbWFnZUxlbmd0aE9mZnNldCksXG4gICAgICAgICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIGltYWdlTGVuZ3RoT2Zmc2V0KSxcbiAgICBdO1xufVxuZnVuY3Rpb24gZ2V0SW1hZ2VTaXplKHR5cGUpIHtcbiAgICBjb25zdCBzaXplID0gSUNPTl9UWVBFX1NJWkVbdHlwZV07XG4gICAgcmV0dXJuIHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSwgdHlwZSB9O1xufVxuZXhwb3J0cy5JQ05TID0ge1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDQpID09PSAnaWNucycsXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IGlucHV0TGVuZ3RoID0gaW5wdXQubGVuZ3RoO1xuICAgICAgICBjb25zdCBmaWxlTGVuZ3RoID0gKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgRklMRV9MRU5HVEhfT0ZGU0VUKTtcbiAgICAgICAgbGV0IGltYWdlT2Zmc2V0ID0gU0laRV9IRUFERVI7XG4gICAgICAgIGxldCBpbWFnZUhlYWRlciA9IHJlYWRJbWFnZUhlYWRlcihpbnB1dCwgaW1hZ2VPZmZzZXQpO1xuICAgICAgICBsZXQgaW1hZ2VTaXplID0gZ2V0SW1hZ2VTaXplKGltYWdlSGVhZGVyWzBdKTtcbiAgICAgICAgaW1hZ2VPZmZzZXQgKz0gaW1hZ2VIZWFkZXJbMV07XG4gICAgICAgIGlmIChpbWFnZU9mZnNldCA9PT0gZmlsZUxlbmd0aClcbiAgICAgICAgICAgIHJldHVybiBpbWFnZVNpemU7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAgICAgICAgIGhlaWdodDogaW1hZ2VTaXplLmhlaWdodCxcbiAgICAgICAgICAgIGltYWdlczogW2ltYWdlU2l6ZV0sXG4gICAgICAgICAgICB3aWR0aDogaW1hZ2VTaXplLndpZHRoLFxuICAgICAgICB9O1xuICAgICAgICB3aGlsZSAoaW1hZ2VPZmZzZXQgPCBmaWxlTGVuZ3RoICYmIGltYWdlT2Zmc2V0IDwgaW5wdXRMZW5ndGgpIHtcbiAgICAgICAgICAgIGltYWdlSGVhZGVyID0gcmVhZEltYWdlSGVhZGVyKGlucHV0LCBpbWFnZU9mZnNldCk7XG4gICAgICAgICAgICBpbWFnZVNpemUgPSBnZXRJbWFnZVNpemUoaW1hZ2VIZWFkZXJbMF0pO1xuICAgICAgICAgICAgaW1hZ2VPZmZzZXQgKz0gaW1hZ2VIZWFkZXJbMV07XG4gICAgICAgICAgICByZXN1bHQuaW1hZ2VzLnB1c2goaW1hZ2VTaXplKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5KMkMgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5leHBvcnRzLkoyQyA9IHtcbiAgICAvLyBUT0RPOiB0aGlzIGRvZXNuJ3Qgc2VlbSByaWdodC4gU0laIG1hcmtlciBkb2Vzbid0IGhhdmUgdG8gYmUgcmlnaHQgYWZ0ZXIgdGhlIFNPQ1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDApID09PSAweGZmNGZmZjUxLFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiAoe1xuICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDEyKSxcbiAgICAgICAgd2lkdGg6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDgpLFxuICAgIH0pLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuSlAyID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuZXhwb3J0cy5KUDIgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgYm94VHlwZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDQsIDgpO1xuICAgICAgICBpZiAoYm94VHlwZSAhPT0gJ2pQICAnKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBmdHlwQm94ID0gKDAsIHV0aWxzXzEuZmluZEJveCkoaW5wdXQsICdmdHlwJywgMCk7XG4gICAgICAgIGlmICghZnR5cEJveClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgYnJhbmQgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCBmdHlwQm94Lm9mZnNldCArIDgsIGZ0eXBCb3gub2Zmc2V0ICsgMTIpO1xuICAgICAgICByZXR1cm4gYnJhbmQgPT09ICdqcDIgJztcbiAgICB9LFxuICAgIGNhbGN1bGF0ZShpbnB1dCkge1xuICAgICAgICBjb25zdCBqcDJoQm94ID0gKDAsIHV0aWxzXzEuZmluZEJveCkoaW5wdXQsICdqcDJoJywgMCk7XG4gICAgICAgIGNvbnN0IGloZHJCb3ggPSBqcDJoQm94ICYmICgwLCB1dGlsc18xLmZpbmRCb3gpKGlucHV0LCAnaWhkcicsIGpwMmhCb3gub2Zmc2V0ICsgOCk7XG4gICAgICAgIGlmIChpaGRyQm94KSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgaWhkckJveC5vZmZzZXQgKyA4KSxcbiAgICAgICAgICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgaWhkckJveC5vZmZzZXQgKyAxMiksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1Vuc3VwcG9ydGVkIEpQRUcgMjAwMCBmb3JtYXQnKTtcbiAgICB9LFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbi8vIE5PVEU6IHdlIG9ubHkgc3VwcG9ydCBiYXNlbGluZSBhbmQgcHJvZ3Jlc3NpdmUgSlBHcyBoZXJlXG4vLyBkdWUgdG8gdGhlIHN0cnVjdHVyZSBvZiB0aGUgbG9hZGVyIGNsYXNzLCB3ZSBvbmx5IGdldCBhIGJ1ZmZlclxuLy8gd2l0aCBhIG1heGltdW0gc2l6ZSBvZiA0MDk2IGJ5dGVzLiBzbyBpZiB0aGUgU09GIG1hcmtlciBpcyBvdXRzaWRlXG4vLyBpZiB0aGlzIHJhbmdlIHdlIGNhbid0IGRldGVjdCB0aGUgZmlsZSBzaXplIGNvcnJlY3RseS5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuSlBHID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgRVhJRl9NQVJLRVIgPSAnNDU3ODY5NjYnO1xuY29uc3QgQVBQMV9EQVRBX1NJWkVfQllURVMgPSAyO1xuY29uc3QgRVhJRl9IRUFERVJfQllURVMgPSA2O1xuY29uc3QgVElGRl9CWVRFX0FMSUdOX0JZVEVTID0gMjtcbmNvbnN0IEJJR19FTkRJQU5fQllURV9BTElHTiA9ICc0ZDRkJztcbmNvbnN0IExJVFRMRV9FTkRJQU5fQllURV9BTElHTiA9ICc0OTQ5Jztcbi8vIEVhY2ggZW50cnkgaXMgZXhhY3RseSAxMiBieXRlc1xuY29uc3QgSURGX0VOVFJZX0JZVEVTID0gMTI7XG5jb25zdCBOVU1fRElSRUNUT1JZX0VOVFJJRVNfQllURVMgPSAyO1xuZnVuY3Rpb24gaXNFWElGKGlucHV0KSB7XG4gICAgcmV0dXJuICgwLCB1dGlsc18xLnRvSGV4U3RyaW5nKShpbnB1dCwgMiwgNikgPT09IEVYSUZfTUFSS0VSO1xufVxuZnVuY3Rpb24gZXh0cmFjdFNpemUoaW5wdXQsIGluZGV4KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiAoMCwgdXRpbHNfMS5yZWFkVUludDE2QkUpKGlucHV0LCBpbmRleCksXG4gICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkVUludDE2QkUpKGlucHV0LCBpbmRleCArIDIpLFxuICAgIH07XG59XG5mdW5jdGlvbiBleHRyYWN0T3JpZW50YXRpb24oZXhpZkJsb2NrLCBpc0JpZ0VuZGlhbikge1xuICAgIC8vIFRPRE86IGFzc2VydCB0aGF0IHRoaXMgY29udGFpbnMgMHgwMDJBXG4gICAgLy8gbGV0IFNUQVRJQ19NT1RPUk9MQV9USUZGX0hFQURFUl9CWVRFUyA9IDJcbiAgICAvLyBsZXQgVElGRl9JTUFHRV9GSUxFX0RJUkVDVE9SWV9CWVRFUyA9IDRcbiAgICAvLyBUT0RPOiBkZXJpdmUgZnJvbSBUSUZGX0lNQUdFX0ZJTEVfRElSRUNUT1JZX0JZVEVTXG4gICAgY29uc3QgaWRmT2Zmc2V0ID0gODtcbiAgICAvLyBJREYgb3NzZXQgd29ya3MgZnJvbSByaWdodCBhZnRlciB0aGUgaGVhZGVyIGJ5dGVzXG4gICAgLy8gKHNvIHRoZSBvZmZzZXQgaW5jbHVkZXMgdGhlIHRpZmYgYnl0ZSBhbGlnbilcbiAgICBjb25zdCBvZmZzZXQgPSBFWElGX0hFQURFUl9CWVRFUyArIGlkZk9mZnNldDtcbiAgICBjb25zdCBpZGZEaXJlY3RvcnlFbnRyaWVzID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKGV4aWZCbG9jaywgMTYsIG9mZnNldCwgaXNCaWdFbmRpYW4pO1xuICAgIGZvciAobGV0IGRpcmVjdG9yeUVudHJ5TnVtYmVyID0gMDsgZGlyZWN0b3J5RW50cnlOdW1iZXIgPCBpZGZEaXJlY3RvcnlFbnRyaWVzOyBkaXJlY3RvcnlFbnRyeU51bWJlcisrKSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gb2Zmc2V0ICtcbiAgICAgICAgICAgIE5VTV9ESVJFQ1RPUllfRU5UUklFU19CWVRFUyArXG4gICAgICAgICAgICBkaXJlY3RvcnlFbnRyeU51bWJlciAqIElERl9FTlRSWV9CWVRFUztcbiAgICAgICAgY29uc3QgZW5kID0gc3RhcnQgKyBJREZfRU5UUllfQllURVM7XG4gICAgICAgIC8vIFNraXAgb24gY29ycnVwdCBFWElGIGJsb2Nrc1xuICAgICAgICBpZiAoc3RhcnQgPiBleGlmQmxvY2subGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgYmxvY2sgPSBleGlmQmxvY2suc2xpY2Uoc3RhcnQsIGVuZCk7XG4gICAgICAgIGNvbnN0IHRhZ051bWJlciA9ICgwLCB1dGlsc18xLnJlYWRVSW50KShibG9jaywgMTYsIDAsIGlzQmlnRW5kaWFuKTtcbiAgICAgICAgLy8gMHgwMTEyIChkZWNpbWFsOiAyNzQpIGlzIHRoZSBgb3JpZW50YXRpb25gIHRhZyBJRFxuICAgICAgICBpZiAodGFnTnVtYmVyID09PSAyNzQpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGFGb3JtYXQgPSAoMCwgdXRpbHNfMS5yZWFkVUludCkoYmxvY2ssIDE2LCAyLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgICAgICBpZiAoZGF0YUZvcm1hdCAhPT0gMykge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHVuc2luZ2VkIGludCBoYXMgMiBieXRlcyBwZXIgY29tcG9uZW50XG4gICAgICAgICAgICAvLyBpZiB0aGVyZSB3b3VsZCBtb3JlIHRoYW4gNCBieXRlcyBpbiB0b3RhbCBpdCdzIGEgcG9pbnRlclxuICAgICAgICAgICAgY29uc3QgbnVtYmVyT2ZDb21wb25lbnRzID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKGJsb2NrLCAzMiwgNCwgaXNCaWdFbmRpYW4pO1xuICAgICAgICAgICAgaWYgKG51bWJlck9mQ29tcG9uZW50cyAhPT0gMSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiAoMCwgdXRpbHNfMS5yZWFkVUludCkoYmxvY2ssIDE2LCA4LCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIH1cbiAgICB9XG59XG5mdW5jdGlvbiB2YWxpZGF0ZUV4aWZCbG9jayhpbnB1dCwgaW5kZXgpIHtcbiAgICAvLyBTa2lwIEFQUDEgRGF0YSBTaXplXG4gICAgY29uc3QgZXhpZkJsb2NrID0gaW5wdXQuc2xpY2UoQVBQMV9EQVRBX1NJWkVfQllURVMsIGluZGV4KTtcbiAgICAvLyBDb25zaWRlciBieXRlIGFsaWdubWVudFxuICAgIGNvbnN0IGJ5dGVBbGlnbiA9ICgwLCB1dGlsc18xLnRvSGV4U3RyaW5nKShleGlmQmxvY2ssIEVYSUZfSEVBREVSX0JZVEVTLCBFWElGX0hFQURFUl9CWVRFUyArIFRJRkZfQllURV9BTElHTl9CWVRFUyk7XG4gICAgLy8gSWdub3JlIEVtcHR5IEVYSUYuIFZhbGlkYXRlIGJ5dGUgYWxpZ25tZW50XG4gICAgY29uc3QgaXNCaWdFbmRpYW4gPSBieXRlQWxpZ24gPT09IEJJR19FTkRJQU5fQllURV9BTElHTjtcbiAgICBjb25zdCBpc0xpdHRsZUVuZGlhbiA9IGJ5dGVBbGlnbiA9PT0gTElUVExFX0VORElBTl9CWVRFX0FMSUdOO1xuICAgIGlmIChpc0JpZ0VuZGlhbiB8fCBpc0xpdHRsZUVuZGlhbikge1xuICAgICAgICByZXR1cm4gZXh0cmFjdE9yaWVudGF0aW9uKGV4aWZCbG9jaywgaXNCaWdFbmRpYW4pO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHZhbGlkYXRlSW5wdXQoaW5wdXQsIGluZGV4KSB7XG4gICAgLy8gaW5kZXggc2hvdWxkIGJlIHdpdGhpbiBidWZmZXIgbGltaXRzXG4gICAgaWYgKGluZGV4ID4gaW5wdXQubGVuZ3RoKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0NvcnJ1cHQgSlBHLCBleGNlZWRlZCBidWZmZXIgbGltaXRzJyk7XG4gICAgfVxufVxuZXhwb3J0cy5KUEcgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gKDAsIHV0aWxzXzEudG9IZXhTdHJpbmcpKGlucHV0LCAwLCAyKSA9PT0gJ2ZmZDgnLFxuICAgIGNhbGN1bGF0ZShpbnB1dCkge1xuICAgICAgICAvLyBTa2lwIDQgY2hhcnMsIHRoZXkgYXJlIGZvciBzaWduYXR1cmVcbiAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZSg0KTtcbiAgICAgICAgbGV0IG9yaWVudGF0aW9uO1xuICAgICAgICBsZXQgbmV4dDtcbiAgICAgICAgd2hpbGUgKGlucHV0Lmxlbmd0aCkge1xuICAgICAgICAgICAgLy8gcmVhZCBsZW5ndGggb2YgdGhlIG5leHQgYmxvY2tcbiAgICAgICAgICAgIGNvbnN0IGkgPSAoMCwgdXRpbHNfMS5yZWFkVUludDE2QkUpKGlucHV0LCAwKTtcbiAgICAgICAgICAgIC8vIEV2ZXJ5IEpQRUcgYmxvY2sgbXVzdCBiZWdpbiB3aXRoIGEgMHhGRlxuICAgICAgICAgICAgaWYgKGlucHV0W2ldICE9PSAweGZmKSB7XG4gICAgICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZSgxKTtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpc0VYSUYoaW5wdXQpKSB7XG4gICAgICAgICAgICAgICAgb3JpZW50YXRpb24gPSB2YWxpZGF0ZUV4aWZCbG9jayhpbnB1dCwgaSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBlbnN1cmUgY29ycmVjdCBmb3JtYXRcbiAgICAgICAgICAgIHZhbGlkYXRlSW5wdXQoaW5wdXQsIGkpO1xuICAgICAgICAgICAgLy8gMHhGRkMwIGlzIGJhc2VsaW5lIHN0YW5kYXJkKFNPRilcbiAgICAgICAgICAgIC8vIDB4RkZDMSBpcyBiYXNlbGluZSBvcHRpbWl6ZWQoU09GKVxuICAgICAgICAgICAgLy8gMHhGRkMyIGlzIHByb2dyZXNzaXZlKFNPRjIpXG4gICAgICAgICAgICBuZXh0ID0gaW5wdXRbaSArIDFdO1xuICAgICAgICAgICAgaWYgKG5leHQgPT09IDB4YzAgfHwgbmV4dCA9PT0gMHhjMSB8fCBuZXh0ID09PSAweGMyKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2l6ZSA9IGV4dHJhY3RTaXplKGlucHV0LCBpICsgNSk7XG4gICAgICAgICAgICAgICAgLy8gVE9ETzogaXMgb3JpZW50YXRpb249MCBhIHZhbGlkIGFuc3dlciBoZXJlP1xuICAgICAgICAgICAgICAgIGlmICghb3JpZW50YXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNpemU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogc2l6ZS5oZWlnaHQsXG4gICAgICAgICAgICAgICAgICAgIG9yaWVudGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogc2l6ZS53aWR0aCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gbW92ZSB0byB0aGUgbmV4dCBibG9ja1xuICAgICAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZShpICsgMik7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBKUEcsIG5vIHNpemUgZm91bmQnKTtcbiAgICB9LFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuQml0UmVhZGVyID0gdm9pZCAwO1xuLyoqIFRoaXMgY2xhc3MgaGVscHMgcmVhZCBVaW50OEFycmF5IGJpdC1ieS1iaXQgKi9cbmNsYXNzIEJpdFJlYWRlciB7XG4gICAgY29uc3RydWN0b3IoaW5wdXQsIGVuZGlhbm5lc3MpIHtcbiAgICAgICAgdGhpcy5pbnB1dCA9IGlucHV0O1xuICAgICAgICB0aGlzLmVuZGlhbm5lc3MgPSBlbmRpYW5uZXNzO1xuICAgICAgICAvLyBTa2lwIHRoZSBmaXJzdCAxNiBiaXRzICgyIGJ5dGVzKSBvZiBzaWduYXR1cmVcbiAgICAgICAgdGhpcy5ieXRlT2Zmc2V0ID0gMjtcbiAgICAgICAgdGhpcy5iaXRPZmZzZXQgPSAwO1xuICAgIH1cbiAgICAvKiogUmVhZHMgYSBzcGVjaWZpZWQgbnVtYmVyIG9mIGJpdHMsIGFuZCBtb3ZlIHRoZSBvZmZzZXQgKi9cbiAgICBnZXRCaXRzKGxlbmd0aCA9IDEpIHtcbiAgICAgICAgbGV0IHJlc3VsdCA9IDA7XG4gICAgICAgIGxldCBiaXRzUmVhZCA9IDA7XG4gICAgICAgIHdoaWxlIChiaXRzUmVhZCA8IGxlbmd0aCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuYnl0ZU9mZnNldCA+PSB0aGlzLmlucHV0Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignUmVhY2hlZCBlbmQgb2YgaW5wdXQnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRCeXRlID0gdGhpcy5pbnB1dFt0aGlzLmJ5dGVPZmZzZXRdO1xuICAgICAgICAgICAgY29uc3QgYml0c0xlZnQgPSA4IC0gdGhpcy5iaXRPZmZzZXQ7XG4gICAgICAgICAgICBjb25zdCBiaXRzVG9SZWFkID0gTWF0aC5taW4obGVuZ3RoIC0gYml0c1JlYWQsIGJpdHNMZWZ0KTtcbiAgICAgICAgICAgIGlmICh0aGlzLmVuZGlhbm5lc3MgPT09ICdsaXR0bGUtZW5kaWFuJykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hc2sgPSAoMSA8PCBiaXRzVG9SZWFkKSAtIDE7XG4gICAgICAgICAgICAgICAgY29uc3QgYml0cyA9IChjdXJyZW50Qnl0ZSA+PiB0aGlzLmJpdE9mZnNldCkgJiBtYXNrO1xuICAgICAgICAgICAgICAgIHJlc3VsdCB8PSBiaXRzIDw8IGJpdHNSZWFkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFzayA9ICgoMSA8PCBiaXRzVG9SZWFkKSAtIDEpIDw8ICg4IC0gdGhpcy5iaXRPZmZzZXQgLSBiaXRzVG9SZWFkKTtcbiAgICAgICAgICAgICAgICBjb25zdCBiaXRzID0gKGN1cnJlbnRCeXRlICYgbWFzaykgPj4gKDggLSB0aGlzLmJpdE9mZnNldCAtIGJpdHNUb1JlYWQpO1xuICAgICAgICAgICAgICAgIHJlc3VsdCA9IChyZXN1bHQgPDwgYml0c1RvUmVhZCkgfCBiaXRzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYml0c1JlYWQgKz0gYml0c1RvUmVhZDtcbiAgICAgICAgICAgIHRoaXMuYml0T2Zmc2V0ICs9IGJpdHNUb1JlYWQ7XG4gICAgICAgICAgICBpZiAodGhpcy5iaXRPZmZzZXQgPT09IDgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmJ5dGVPZmZzZXQrKztcbiAgICAgICAgICAgICAgICB0aGlzLmJpdE9mZnNldCA9IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG5leHBvcnRzLkJpdFJlYWRlciA9IEJpdFJlYWRlcjtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuSlhMU3RyZWFtID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3QgYml0X3JlYWRlcl8xID0gcmVxdWlyZShcIi4uL3V0aWxzL2JpdC1yZWFkZXJcIik7XG5mdW5jdGlvbiBjYWxjdWxhdGVJbWFnZURpbWVuc2lvbihyZWFkZXIsIGlzU21hbGxJbWFnZSkge1xuICAgIGlmIChpc1NtYWxsSW1hZ2UpIHtcbiAgICAgICAgLy8gU21hbGwgaW1hZ2VzIGFyZSBtdWx0aXBsZXMgb2YgOCBwaXhlbHMsIHVwIHRvIDI1NiBwaXhlbHNcbiAgICAgICAgcmV0dXJuIDggKiAoMSArIHJlYWRlci5nZXRCaXRzKDUpKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIExhcmdlciBpbWFnZXMgdXNlIGEgdmFyaWFibGUgYml0LWxlbmd0aCBlbmNvZGluZ1xuICAgICAgICBjb25zdCBzaXplQ2xhc3MgPSByZWFkZXIuZ2V0Qml0cygyKTtcbiAgICAgICAgY29uc3QgZXh0cmFCaXRzID0gWzksIDEzLCAxOCwgMzBdW3NpemVDbGFzc107XG4gICAgICAgIHJldHVybiAxICsgcmVhZGVyLmdldEJpdHMoZXh0cmFCaXRzKTtcbiAgICB9XG59XG5mdW5jdGlvbiBjYWxjdWxhdGVJbWFnZVdpZHRoKHJlYWRlciwgaXNTbWFsbEltYWdlLCB3aWR0aE1vZGUsIGhlaWdodCkge1xuICAgIGlmIChpc1NtYWxsSW1hZ2UgJiYgd2lkdGhNb2RlID09PSAwKSB7XG4gICAgICAgIC8vIFNtYWxsIHNxdWFyZSBpbWFnZXNcbiAgICAgICAgcmV0dXJuIDggKiAoMSArIHJlYWRlci5nZXRCaXRzKDUpKTtcbiAgICB9XG4gICAgZWxzZSBpZiAod2lkdGhNb2RlID09PSAwKSB7XG4gICAgICAgIC8vIE5vbi1zbWFsbCBpbWFnZXMgd2l0aCBleHBsaWNpdGx5IGNvZGVkIHdpZHRoXG4gICAgICAgIHJldHVybiBjYWxjdWxhdGVJbWFnZURpbWVuc2lvbihyZWFkZXIsIGZhbHNlKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIEltYWdlcyB3aXRoIHdpZHRoIGRlcml2ZWQgZnJvbSBoZWlnaHQgYW5kIGFzcGVjdCByYXRpb1xuICAgICAgICBjb25zdCBhc3BlY3RSYXRpb3MgPSBbMSwgMS4yLCA0IC8gMywgMS41LCAxNiAvIDksIDUgLyA0LCAyXTtcbiAgICAgICAgcmV0dXJuIE1hdGguZmxvb3IoaGVpZ2h0ICogYXNwZWN0UmF0aW9zW3dpZHRoTW9kZSAtIDFdKTtcbiAgICB9XG59XG5leHBvcnRzLkpYTFN0cmVhbSA9IHtcbiAgICB2YWxpZGF0ZTogKGlucHV0KSA9PiB7XG4gICAgICAgIHJldHVybiAoMCwgdXRpbHNfMS50b0hleFN0cmluZykoaW5wdXQsIDAsIDIpID09PSAnZmYwYSc7XG4gICAgfSxcbiAgICBjYWxjdWxhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IGJpdF9yZWFkZXJfMS5CaXRSZWFkZXIoaW5wdXQsICdsaXR0bGUtZW5kaWFuJyk7XG4gICAgICAgIGNvbnN0IGlzU21hbGxJbWFnZSA9IHJlYWRlci5nZXRCaXRzKDEpID09PSAxO1xuICAgICAgICBjb25zdCBoZWlnaHQgPSBjYWxjdWxhdGVJbWFnZURpbWVuc2lvbihyZWFkZXIsIGlzU21hbGxJbWFnZSk7XG4gICAgICAgIGNvbnN0IHdpZHRoTW9kZSA9IHJlYWRlci5nZXRCaXRzKDMpO1xuICAgICAgICBjb25zdCB3aWR0aCA9IGNhbGN1bGF0ZUltYWdlV2lkdGgocmVhZGVyLCBpc1NtYWxsSW1hZ2UsIHdpZHRoTW9kZSwgaGVpZ2h0KTtcbiAgICAgICAgcmV0dXJuIHsgd2lkdGgsIGhlaWdodCB9O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5KWEwgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5jb25zdCBqeGxfc3RyZWFtXzEgPSByZXF1aXJlKFwiLi9qeGwtc3RyZWFtXCIpO1xuLyoqIEV4dHJhY3RzIHRoZSBjb2Rlc3RyZWFtIGZyb20gYSBjb250YWluZXJpemVkIEpQRUcgWEwgaW1hZ2UgKi9cbmZ1bmN0aW9uIGV4dHJhY3RDb2Rlc3RyZWFtKGlucHV0KSB7XG4gICAgY29uc3QganhsY0JveCA9ICgwLCB1dGlsc18xLmZpbmRCb3gpKGlucHV0LCAnanhsYycsIDApO1xuICAgIGlmIChqeGxjQm94KSB7XG4gICAgICAgIHJldHVybiBpbnB1dC5zbGljZShqeGxjQm94Lm9mZnNldCArIDgsIGp4bGNCb3gub2Zmc2V0ICsganhsY0JveC5zaXplKTtcbiAgICB9XG4gICAgY29uc3QgcGFydGlhbFN0cmVhbXMgPSBleHRyYWN0UGFydGlhbFN0cmVhbXMoaW5wdXQpO1xuICAgIGlmIChwYXJ0aWFsU3RyZWFtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiBjb25jYXRlbmF0ZUNvZGVzdHJlYW1zKHBhcnRpYWxTdHJlYW1zKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cbi8qKiBFeHRyYWN0cyBwYXJ0aWFsIGNvZGVzdHJlYW1zIGZyb20ganhscCBib3hlcyAqL1xuZnVuY3Rpb24gZXh0cmFjdFBhcnRpYWxTdHJlYW1zKGlucHV0KSB7XG4gICAgY29uc3QgcGFydGlhbFN0cmVhbXMgPSBbXTtcbiAgICBsZXQgb2Zmc2V0ID0gMDtcbiAgICB3aGlsZSAob2Zmc2V0IDwgaW5wdXQubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGp4bHBCb3ggPSAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2p4bHAnLCBvZmZzZXQpO1xuICAgICAgICBpZiAoIWp4bHBCb3gpXG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgcGFydGlhbFN0cmVhbXMucHVzaChpbnB1dC5zbGljZShqeGxwQm94Lm9mZnNldCArIDEyLCBqeGxwQm94Lm9mZnNldCArIGp4bHBCb3guc2l6ZSkpO1xuICAgICAgICBvZmZzZXQgPSBqeGxwQm94Lm9mZnNldCArIGp4bHBCb3guc2l6ZTtcbiAgICB9XG4gICAgcmV0dXJuIHBhcnRpYWxTdHJlYW1zO1xufVxuLyoqIENvbmNhdGVuYXRlcyBwYXJ0aWFsIGNvZGVzdHJlYW1zIGludG8gYSBzaW5nbGUgY29kZXN0cmVhbSAqL1xuZnVuY3Rpb24gY29uY2F0ZW5hdGVDb2Rlc3RyZWFtcyhwYXJ0aWFsQ29kZXN0cmVhbXMpIHtcbiAgICBjb25zdCB0b3RhbExlbmd0aCA9IHBhcnRpYWxDb2Rlc3RyZWFtcy5yZWR1Y2UoKGFjYywgY3VycikgPT4gYWNjICsgY3Vyci5sZW5ndGgsIDApO1xuICAgIGNvbnN0IGNvZGVzdHJlYW0gPSBuZXcgVWludDhBcnJheSh0b3RhbExlbmd0aCk7XG4gICAgbGV0IHBvc2l0aW9uID0gMDtcbiAgICBmb3IgKGNvbnN0IHBhcnRpYWwgb2YgcGFydGlhbENvZGVzdHJlYW1zKSB7XG4gICAgICAgIGNvZGVzdHJlYW0uc2V0KHBhcnRpYWwsIHBvc2l0aW9uKTtcbiAgICAgICAgcG9zaXRpb24gKz0gcGFydGlhbC5sZW5ndGg7XG4gICAgfVxuICAgIHJldHVybiBjb2Rlc3RyZWFtO1xufVxuZXhwb3J0cy5KWEwgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4ge1xuICAgICAgICBjb25zdCBib3hUeXBlID0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgNCwgOCk7XG4gICAgICAgIGlmIChib3hUeXBlICE9PSAnSlhMICcpXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IGZ0eXBCb3ggPSAoMCwgdXRpbHNfMS5maW5kQm94KShpbnB1dCwgJ2Z0eXAnLCAwKTtcbiAgICAgICAgaWYgKCFmdHlwQm94KVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBicmFuZCA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIGZ0eXBCb3gub2Zmc2V0ICsgOCwgZnR5cEJveC5vZmZzZXQgKyAxMik7XG4gICAgICAgIHJldHVybiBicmFuZCA9PT0gJ2p4bCAnO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IGNvZGVzdHJlYW0gPSBleHRyYWN0Q29kZXN0cmVhbShpbnB1dCk7XG4gICAgICAgIGlmIChjb2Rlc3RyZWFtKVxuICAgICAgICAgICAgcmV0dXJuIGp4bF9zdHJlYW1fMS5KWExTdHJlYW0uY2FsY3VsYXRlKGNvZGVzdHJlYW0pO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNvZGVzdHJlYW0gZm91bmQgaW4gSlhMIGNvbnRhaW5lcicpO1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5LVFggPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5leHBvcnRzLktUWCA9IHtcbiAgICB2YWxpZGF0ZTogKGlucHV0KSA9PiB7XG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDEsIDcpO1xuICAgICAgICByZXR1cm4gWydLVFggMTEnLCAnS1RYIDIwJ10uaW5jbHVkZXMoc2lnbmF0dXJlKTtcbiAgICB9LFxuICAgIGNhbGN1bGF0ZTogKGlucHV0KSA9PiB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBpbnB1dFs1XSA9PT0gMHgzMSA/ICdrdHgnIDogJ2t0eDInO1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB0eXBlID09PSAna3R4JyA/IDM2IDogMjA7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJMRSkoaW5wdXQsIG9mZnNldCArIDQpLFxuICAgICAgICAgICAgd2lkdGg6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJMRSkoaW5wdXQsIG9mZnNldCksXG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICB9O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5QTkcgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5jb25zdCBwbmdTaWduYXR1cmUgPSAnUE5HXFxyXFxuXFx4MWFcXG4nO1xuY29uc3QgcG5nSW1hZ2VIZWFkZXJDaHVua05hbWUgPSAnSUhEUic7XG4vLyBVc2VkIHRvIGRldGVjdCBcImZyaWVkXCIgcG5nJ3M6IGh0dHA6Ly93d3cuam9uZ3dhcmUuY29tL3BuZ2RlZnJ5Lmh0bWxcbmNvbnN0IHBuZ0ZyaWVkQ2h1bmtOYW1lID0gJ0NnQkknO1xuZXhwb3J0cy5QTkcgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgaWYgKHBuZ1NpZ25hdHVyZSA9PT0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMSwgOCkpIHtcbiAgICAgICAgICAgIGxldCBjaHVua05hbWUgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAxMiwgMTYpO1xuICAgICAgICAgICAgaWYgKGNodW5rTmFtZSA9PT0gcG5nRnJpZWRDaHVua05hbWUpIHtcbiAgICAgICAgICAgICAgICBjaHVua05hbWUgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAyOCwgMzIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGNodW5rTmFtZSAhPT0gcG5nSW1hZ2VIZWFkZXJDaHVua05hbWUpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdJbnZhbGlkIFBORycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGlmICgoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAxMiwgMTYpID09PSBwbmdGcmllZENodW5rTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MzJCRSkoaW5wdXQsIDM2KSxcbiAgICAgICAgICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMzIpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaGVpZ2h0OiAoMCwgdXRpbHNfMS5yZWFkVUludDMyQkUpKGlucHV0LCAyMCksXG4gICAgICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMTYpLFxuICAgICAgICB9O1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy5QTk0gPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5jb25zdCBQTk1UeXBlcyA9IHtcbiAgICBQMTogJ3BibS9hc2NpaScsXG4gICAgUDI6ICdwZ20vYXNjaWknLFxuICAgIFAzOiAncHBtL2FzY2lpJyxcbiAgICBQNDogJ3BibScsXG4gICAgUDU6ICdwZ20nLFxuICAgIFA2OiAncHBtJyxcbiAgICBQNzogJ3BhbScsXG4gICAgUEY6ICdwZm0nLFxufTtcbmNvbnN0IGhhbmRsZXJzID0ge1xuICAgIGRlZmF1bHQ6IChsaW5lcykgPT4ge1xuICAgICAgICBsZXQgZGltZW5zaW9ucyA9IFtdO1xuICAgICAgICB3aGlsZSAobGluZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgbGluZSA9IGxpbmVzLnNoaWZ0KCk7XG4gICAgICAgICAgICBpZiAobGluZVswXSA9PT0gJyMnKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaW1lbnNpb25zID0gbGluZS5zcGxpdCgnICcpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRpbWVuc2lvbnMubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogcGFyc2VJbnQoZGltZW5zaW9uc1sxXSwgMTApLFxuICAgICAgICAgICAgICAgIHdpZHRoOiBwYXJzZUludChkaW1lbnNpb25zWzBdLCAxMCksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBQTk0nKTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgcGFtOiAobGluZXMpID0+IHtcbiAgICAgICAgY29uc3Qgc2l6ZSA9IHt9O1xuICAgICAgICB3aGlsZSAobGluZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgbGluZSA9IGxpbmVzLnNoaWZ0KCk7XG4gICAgICAgICAgICBpZiAobGluZS5sZW5ndGggPiAxNiB8fCBsaW5lLmNoYXJDb2RlQXQoMCkgPiAxMjgpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IFtrZXksIHZhbHVlXSA9IGxpbmUuc3BsaXQoJyAnKTtcbiAgICAgICAgICAgIGlmIChrZXkgJiYgdmFsdWUpIHtcbiAgICAgICAgICAgICAgICBzaXplW2tleS50b0xvd2VyQ2FzZSgpXSA9IHBhcnNlSW50KHZhbHVlLCAxMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2l6ZS5oZWlnaHQgJiYgc2l6ZS53aWR0aCkge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChzaXplLmhlaWdodCAmJiBzaXplLndpZHRoKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogc2l6ZS5oZWlnaHQsXG4gICAgICAgICAgICAgICAgd2lkdGg6IHNpemUud2lkdGgsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBQQU0nKTtcbiAgICAgICAgfVxuICAgIH0sXG59O1xuZXhwb3J0cy5QTk0gPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMCwgMikgaW4gUE5NVHlwZXMsXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IHNpZ25hdHVyZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDIpO1xuICAgICAgICBjb25zdCB0eXBlID0gUE5NVHlwZXNbc2lnbmF0dXJlXTtcbiAgICAgICAgLy8gVE9ETzogdGhpcyBwcm9iYWJseSBnZW5lcmF0ZXMgZ2FyYmFnZS4gbW92ZSB0byBhIHN0cmVhbSBiYXNlZCBwYXJzZXJcbiAgICAgICAgY29uc3QgbGluZXMgPSAoMCwgdXRpbHNfMS50b1VURjhTdHJpbmcpKGlucHV0LCAzKS5zcGxpdCgvW1xcclxcbl0rLyk7XG4gICAgICAgIGNvbnN0IGhhbmRsZXIgPSBoYW5kbGVyc1t0eXBlXSB8fCBoYW5kbGVycy5kZWZhdWx0O1xuICAgICAgICByZXR1cm4gaGFuZGxlcihsaW5lcyk7XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLlBTRCA9IHZvaWQgMDtcbmNvbnN0IHV0aWxzXzEgPSByZXF1aXJlKFwiLi91dGlsc1wiKTtcbmV4cG9ydHMuUFNEID0ge1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDQpID09PSAnOEJQUycsXG4gICAgY2FsY3VsYXRlOiAoaW5wdXQpID0+ICh7XG4gICAgICAgIGhlaWdodDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMTQpLFxuICAgICAgICB3aWR0aDogKDAsIHV0aWxzXzEucmVhZFVJbnQzMkJFKShpbnB1dCwgMTgpLFxuICAgIH0pLFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuU1ZHID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuY29uc3Qgc3ZnUmVnID0gLzxzdmdcXHMoW14+XCInXXxcIlteXCJdKlwifCdbXiddKicpKj4vO1xuY29uc3QgZXh0cmFjdG9yUmVnRXhwcyA9IHtcbiAgICBoZWlnaHQ6IC9cXHNoZWlnaHQ9KFsnXCJdKShbXiVdKz8pXFwxLyxcbiAgICByb290OiBzdmdSZWcsXG4gICAgdmlld2JveDogL1xcc3ZpZXdCb3g9KFsnXCJdKSguKz8pXFwxL2ksXG4gICAgd2lkdGg6IC9cXHN3aWR0aD0oWydcIl0pKFteJV0rPylcXDEvLFxufTtcbmNvbnN0IElOQ0hfQ00gPSAyLjU0O1xuY29uc3QgdW5pdHMgPSB7XG4gICAgaW46IDk2LFxuICAgIGNtOiA5NiAvIElOQ0hfQ00sXG4gICAgZW06IDE2LFxuICAgIGV4OiA4LFxuICAgIG06ICg5NiAvIElOQ0hfQ00pICogMTAwLFxuICAgIG1tOiA5NiAvIElOQ0hfQ00gLyAxMCxcbiAgICBwYzogOTYgLyA3MiAvIDEyLFxuICAgIHB0OiA5NiAvIDcyLFxuICAgIHB4OiAxLFxufTtcbmNvbnN0IHVuaXRzUmVnID0gbmV3IFJlZ0V4cChgXihbMC05Ll0rKD86ZVxcXFxkKyk/KSgke09iamVjdC5rZXlzKHVuaXRzKS5qb2luKCd8Jyl9KT8kYCk7XG5mdW5jdGlvbiBwYXJzZUxlbmd0aChsZW4pIHtcbiAgICBjb25zdCBtID0gdW5pdHNSZWcuZXhlYyhsZW4pO1xuICAgIGlmICghbSkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4gTWF0aC5yb3VuZChOdW1iZXIobVsxXSkgKiAodW5pdHNbbVsyXV0gfHwgMSkpO1xufVxuZnVuY3Rpb24gcGFyc2VWaWV3Ym94KHZpZXdib3gpIHtcbiAgICBjb25zdCBib3VuZHMgPSB2aWV3Ym94LnNwbGl0KCcgJyk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiBwYXJzZUxlbmd0aChib3VuZHNbM10pLFxuICAgICAgICB3aWR0aDogcGFyc2VMZW5ndGgoYm91bmRzWzJdKSxcbiAgICB9O1xufVxuZnVuY3Rpb24gcGFyc2VBdHRyaWJ1dGVzKHJvb3QpIHtcbiAgICBjb25zdCB3aWR0aCA9IHJvb3QubWF0Y2goZXh0cmFjdG9yUmVnRXhwcy53aWR0aCk7XG4gICAgY29uc3QgaGVpZ2h0ID0gcm9vdC5tYXRjaChleHRyYWN0b3JSZWdFeHBzLmhlaWdodCk7XG4gICAgY29uc3Qgdmlld2JveCA9IHJvb3QubWF0Y2goZXh0cmFjdG9yUmVnRXhwcy52aWV3Ym94KTtcbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IGhlaWdodCAmJiBwYXJzZUxlbmd0aChoZWlnaHRbMl0pLFxuICAgICAgICB2aWV3Ym94OiB2aWV3Ym94ICYmIHBhcnNlVmlld2JveCh2aWV3Ym94WzJdKSxcbiAgICAgICAgd2lkdGg6IHdpZHRoICYmIHBhcnNlTGVuZ3RoKHdpZHRoWzJdKSxcbiAgICB9O1xufVxuZnVuY3Rpb24gY2FsY3VsYXRlQnlEaW1lbnNpb25zKGF0dHJzKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiBhdHRycy5oZWlnaHQsXG4gICAgICAgIHdpZHRoOiBhdHRycy53aWR0aCxcbiAgICB9O1xufVxuZnVuY3Rpb24gY2FsY3VsYXRlQnlWaWV3Ym94KGF0dHJzLCB2aWV3Ym94KSB7XG4gICAgY29uc3QgcmF0aW8gPSB2aWV3Ym94LndpZHRoIC8gdmlld2JveC5oZWlnaHQ7XG4gICAgaWYgKGF0dHJzLndpZHRoKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWlnaHQ6IE1hdGguZmxvb3IoYXR0cnMud2lkdGggLyByYXRpbyksXG4gICAgICAgICAgICB3aWR0aDogYXR0cnMud2lkdGgsXG4gICAgICAgIH07XG4gICAgfVxuICAgIGlmIChhdHRycy5oZWlnaHQpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlaWdodDogYXR0cnMuaGVpZ2h0LFxuICAgICAgICAgICAgd2lkdGg6IE1hdGguZmxvb3IoYXR0cnMuaGVpZ2h0ICogcmF0aW8pLFxuICAgICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IHZpZXdib3guaGVpZ2h0LFxuICAgICAgICB3aWR0aDogdmlld2JveC53aWR0aCxcbiAgICB9O1xufVxuZXhwb3J0cy5TVkcgPSB7XG4gICAgLy8gU2NhbiBvbmx5IHRoZSBmaXJzdCBraWxvLWJ5dGUgdG8gc3BlZWQgdXAgdGhlIGNoZWNrIG9uIGxhcmdlciBmaWxlc1xuICAgIHZhbGlkYXRlOiAoaW5wdXQpID0+IHN2Z1JlZy50ZXN0KCgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDEwMDApKSxcbiAgICBjYWxjdWxhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQpLm1hdGNoKGV4dHJhY3RvclJlZ0V4cHMucm9vdCk7XG4gICAgICAgIGlmIChyb290KSB7XG4gICAgICAgICAgICBjb25zdCBhdHRycyA9IHBhcnNlQXR0cmlidXRlcyhyb290WzBdKTtcbiAgICAgICAgICAgIGlmIChhdHRycy53aWR0aCAmJiBhdHRycy5oZWlnaHQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlQnlEaW1lbnNpb25zKGF0dHJzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChhdHRycy52aWV3Ym94KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGN1bGF0ZUJ5Vmlld2JveChhdHRycywgYXR0cnMudmlld2JveCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBTVkcnKTtcbiAgICB9LFxufTtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuVEdBID0gdm9pZCAwO1xuY29uc3QgdXRpbHNfMSA9IHJlcXVpcmUoXCIuL3V0aWxzXCIpO1xuZXhwb3J0cy5UR0EgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgcmV0dXJuICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDApID09PSAwICYmICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDQpID09PSAwO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRVSW50MTZMRSkoaW5wdXQsIDE0KSxcbiAgICAgICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkVUludDE2TEUpKGlucHV0LCAxMiksXG4gICAgICAgIH07XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLlRJRkYgPSB2b2lkIDA7XG4vLyBiYXNlZCBvbiBodHRwOi8vd3d3LmNvbXBpeC5jb20vZmlsZWZvcm1hdHRpZi5odG1cbi8vIFRPLURPOiBzdXBwb3J0IGJpZy1lbmRpYW4gYXMgd2VsbFxuY29uc3QgZnMgPSByZXF1aXJlKFwiZnNcIik7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG4vLyBSZWFkIElGRCAoaW1hZ2UtZmlsZS1kaXJlY3RvcnkpIGludG8gYSBidWZmZXJcbmZ1bmN0aW9uIHJlYWRJRkQoaW5wdXQsIGZpbGVwYXRoLCBpc0JpZ0VuZGlhbikge1xuICAgIGNvbnN0IGlmZE9mZnNldCA9ICgwLCB1dGlsc18xLnJlYWRVSW50KShpbnB1dCwgMzIsIDQsIGlzQmlnRW5kaWFuKTtcbiAgICAvLyByZWFkIG9ubHkgdGlsbCB0aGUgZW5kIG9mIHRoZSBmaWxlXG4gICAgbGV0IGJ1ZmZlclNpemUgPSAxMDI0O1xuICAgIGNvbnN0IGZpbGVTaXplID0gZnMuc3RhdFN5bmMoZmlsZXBhdGgpLnNpemU7XG4gICAgaWYgKGlmZE9mZnNldCArIGJ1ZmZlclNpemUgPiBmaWxlU2l6ZSkge1xuICAgICAgICBidWZmZXJTaXplID0gZmlsZVNpemUgLSBpZmRPZmZzZXQgLSAxMDtcbiAgICB9XG4gICAgLy8gcG9wdWxhdGUgdGhlIGJ1ZmZlclxuICAgIGNvbnN0IGVuZEJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KGJ1ZmZlclNpemUpO1xuICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBmcy5vcGVuU3luYyhmaWxlcGF0aCwgJ3InKTtcbiAgICBmcy5yZWFkU3luYyhkZXNjcmlwdG9yLCBlbmRCdWZmZXIsIDAsIGJ1ZmZlclNpemUsIGlmZE9mZnNldCk7XG4gICAgZnMuY2xvc2VTeW5jKGRlc2NyaXB0b3IpO1xuICAgIHJldHVybiBlbmRCdWZmZXIuc2xpY2UoMik7XG59XG4vLyBUSUZGIHZhbHVlcyBzZWVtIHRvIGJlIG1lc3NlZCB1cCBvbiBCaWctRW5kaWFuLCB0aGlzIGhlbHBzXG5mdW5jdGlvbiByZWFkVmFsdWUoaW5wdXQsIGlzQmlnRW5kaWFuKSB7XG4gICAgY29uc3QgbG93ID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKGlucHV0LCAxNiwgOCwgaXNCaWdFbmRpYW4pO1xuICAgIGNvbnN0IGhpZ2ggPSAoMCwgdXRpbHNfMS5yZWFkVUludCkoaW5wdXQsIDE2LCAxMCwgaXNCaWdFbmRpYW4pO1xuICAgIHJldHVybiAoaGlnaCA8PCAxNikgKyBsb3c7XG59XG4vLyBtb3ZlIHRvIHRoZSBuZXh0IHRhZ1xuZnVuY3Rpb24gbmV4dFRhZyhpbnB1dCkge1xuICAgIGlmIChpbnB1dC5sZW5ndGggPiAyNCkge1xuICAgICAgICByZXR1cm4gaW5wdXQuc2xpY2UoMTIpO1xuICAgIH1cbn1cbi8vIEV4dHJhY3QgSUZEIHRhZ3MgZnJvbSBUSUZGIG1ldGFkYXRhXG5mdW5jdGlvbiBleHRyYWN0VGFncyhpbnB1dCwgaXNCaWdFbmRpYW4pIHtcbiAgICBjb25zdCB0YWdzID0ge307XG4gICAgbGV0IHRlbXAgPSBpbnB1dDtcbiAgICB3aGlsZSAodGVtcCAmJiB0ZW1wLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBjb2RlID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKHRlbXAsIDE2LCAwLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIGNvbnN0IHR5cGUgPSAoMCwgdXRpbHNfMS5yZWFkVUludCkodGVtcCwgMTYsIDIsIGlzQmlnRW5kaWFuKTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gKDAsIHV0aWxzXzEucmVhZFVJbnQpKHRlbXAsIDMyLCA0LCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIC8vIDAgbWVhbnMgZW5kIG9mIElGRFxuICAgICAgICBpZiAoY29kZSA9PT0gMCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAvLyAyNTYgaXMgd2lkdGgsIDI1NyBpcyBoZWlnaHRcbiAgICAgICAgICAgIC8vIGlmIChjb2RlID09PSAyNTYgfHwgY29kZSA9PT0gMjU3KSB7XG4gICAgICAgICAgICBpZiAobGVuZ3RoID09PSAxICYmICh0eXBlID09PSAzIHx8IHR5cGUgPT09IDQpKSB7XG4gICAgICAgICAgICAgICAgdGFnc1tjb2RlXSA9IHJlYWRWYWx1ZSh0ZW1wLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBtb3ZlIHRvIHRoZSBuZXh0IHRhZ1xuICAgICAgICAgICAgdGVtcCA9IG5leHRUYWcodGVtcCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRhZ3M7XG59XG4vLyBUZXN0IGlmIHRoZSBUSUZGIGlzIEJpZyBFbmRpYW4gb3IgTGl0dGxlIEVuZGlhblxuZnVuY3Rpb24gZGV0ZXJtaW5lRW5kaWFubmVzcyhpbnB1dCkge1xuICAgIGNvbnN0IHNpZ25hdHVyZSA9ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDAsIDIpO1xuICAgIGlmICgnSUknID09PSBzaWduYXR1cmUpIHtcbiAgICAgICAgcmV0dXJuICdMRSc7XG4gICAgfVxuICAgIGVsc2UgaWYgKCdNTScgPT09IHNpZ25hdHVyZSkge1xuICAgICAgICByZXR1cm4gJ0JFJztcbiAgICB9XG59XG5jb25zdCBzaWduYXR1cmVzID0gW1xuICAgIC8vICc0OTIwNDknLCAvLyBjdXJyZW50bHkgbm90IHN1cHBvcnRlZFxuICAgICc0OTQ5MmEwMCcsIC8vIExpdHRsZSBlbmRpYW5cbiAgICAnNGQ0ZDAwMmEnLCAvLyBCaWcgRW5kaWFuXG4gICAgLy8gJzRkNGQwMDJhJywgLy8gQmlnVElGRiA+IDRHQi4gY3VycmVudGx5IG5vdCBzdXBwb3J0ZWRcbl07XG5leHBvcnRzLlRJRkYgPSB7XG4gICAgdmFsaWRhdGU6IChpbnB1dCkgPT4gc2lnbmF0dXJlcy5pbmNsdWRlcygoMCwgdXRpbHNfMS50b0hleFN0cmluZykoaW5wdXQsIDAsIDQpKSxcbiAgICBjYWxjdWxhdGUoaW5wdXQsIGZpbGVwYXRoKSB7XG4gICAgICAgIGlmICghZmlsZXBhdGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoXCJUaWZmIGRvZXNuJ3Qgc3VwcG9ydCBidWZmZXJcIik7XG4gICAgICAgIH1cbiAgICAgICAgLy8gRGV0ZXJtaW5lIEJFL0xFXG4gICAgICAgIGNvbnN0IGlzQmlnRW5kaWFuID0gZGV0ZXJtaW5lRW5kaWFubmVzcyhpbnB1dCkgPT09ICdCRSc7XG4gICAgICAgIC8vIHJlYWQgdGhlIElGRFxuICAgICAgICBjb25zdCBpZmRCdWZmZXIgPSByZWFkSUZEKGlucHV0LCBmaWxlcGF0aCwgaXNCaWdFbmRpYW4pO1xuICAgICAgICAvLyBleHRyYWN0IHRoZSB0YWdzIGZyb20gdGhlIElGRFxuICAgICAgICBjb25zdCB0YWdzID0gZXh0cmFjdFRhZ3MoaWZkQnVmZmVyLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gdGFnc1syNTZdO1xuICAgICAgICBjb25zdCBoZWlnaHQgPSB0YWdzWzI1N107XG4gICAgICAgIGlmICghd2lkdGggfHwgIWhlaWdodCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBUaWZmLiBNaXNzaW5nIHRhZ3MnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBoZWlnaHQsIHdpZHRoIH07XG4gICAgfSxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLldFQlAgPSB2b2lkIDA7XG5jb25zdCB1dGlsc18xID0gcmVxdWlyZShcIi4vdXRpbHNcIik7XG5mdW5jdGlvbiBjYWxjdWxhdGVFeHRlbmRlZChpbnB1dCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogMSArICgwLCB1dGlsc18xLnJlYWRVSW50MjRMRSkoaW5wdXQsIDcpLFxuICAgICAgICB3aWR0aDogMSArICgwLCB1dGlsc18xLnJlYWRVSW50MjRMRSkoaW5wdXQsIDQpLFxuICAgIH07XG59XG5mdW5jdGlvbiBjYWxjdWxhdGVMb3NzbGVzcyhpbnB1dCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogMSArXG4gICAgICAgICAgICAoKChpbnB1dFs0XSAmIDB4ZikgPDwgMTApIHwgKGlucHV0WzNdIDw8IDIpIHwgKChpbnB1dFsyXSAmIDB4YzApID4+IDYpKSxcbiAgICAgICAgd2lkdGg6IDEgKyAoKChpbnB1dFsyXSAmIDB4M2YpIDw8IDgpIHwgaW5wdXRbMV0pLFxuICAgIH07XG59XG5mdW5jdGlvbiBjYWxjdWxhdGVMb3NzeShpbnB1dCkge1xuICAgIC8vIGAmIDB4M2ZmZmAgcmV0dXJucyB0aGUgbGFzdCAxNCBiaXRzXG4gICAgLy8gVE8tRE86IGluY2x1ZGUgd2VicCBzY2FsaW5nIGluIHRoZSBjYWxjdWxhdGlvbnNcbiAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6ICgwLCB1dGlsc18xLnJlYWRJbnQxNkxFKShpbnB1dCwgOCkgJiAweDNmZmYsXG4gICAgICAgIHdpZHRoOiAoMCwgdXRpbHNfMS5yZWFkSW50MTZMRSkoaW5wdXQsIDYpICYgMHgzZmZmLFxuICAgIH07XG59XG5leHBvcnRzLldFQlAgPSB7XG4gICAgdmFsaWRhdGUoaW5wdXQpIHtcbiAgICAgICAgY29uc3QgcmlmZkhlYWRlciA9ICdSSUZGJyA9PT0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMCwgNCk7XG4gICAgICAgIGNvbnN0IHdlYnBIZWFkZXIgPSAnV0VCUCcgPT09ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDgsIDEyKTtcbiAgICAgICAgY29uc3QgdnA4SGVhZGVyID0gJ1ZQOCcgPT09ICgwLCB1dGlsc18xLnRvVVRGOFN0cmluZykoaW5wdXQsIDEyLCAxNSk7XG4gICAgICAgIHJldHVybiByaWZmSGVhZGVyICYmIHdlYnBIZWFkZXIgJiYgdnA4SGVhZGVyO1xuICAgIH0sXG4gICAgY2FsY3VsYXRlKGlucHV0KSB7XG4gICAgICAgIGNvbnN0IGNodW5rSGVhZGVyID0gKDAsIHV0aWxzXzEudG9VVEY4U3RyaW5nKShpbnB1dCwgMTIsIDE2KTtcbiAgICAgICAgaW5wdXQgPSBpbnB1dC5zbGljZSgyMCwgMzApO1xuICAgICAgICAvLyBFeHRlbmRlZCB3ZWJwIHN0cmVhbSBzaWduYXR1cmVcbiAgICAgICAgaWYgKGNodW5rSGVhZGVyID09PSAnVlA4WCcpIHtcbiAgICAgICAgICAgIGNvbnN0IGV4dGVuZGVkSGVhZGVyID0gaW5wdXRbMF07XG4gICAgICAgICAgICBjb25zdCB2YWxpZFN0YXJ0ID0gKGV4dGVuZGVkSGVhZGVyICYgMHhjMCkgPT09IDA7XG4gICAgICAgICAgICBjb25zdCB2YWxpZEVuZCA9IChleHRlbmRlZEhlYWRlciAmIDB4MDEpID09PSAwO1xuICAgICAgICAgICAgaWYgKHZhbGlkU3RhcnQgJiYgdmFsaWRFbmQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlRXh0ZW5kZWQoaW5wdXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gVE9ETzogYnJlYWtpbmcgY2hhbmdlXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBXZWJQJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gTG9zc2xlc3Mgd2VicCBzdHJlYW0gc2lnbmF0dXJlXG4gICAgICAgIGlmIChjaHVua0hlYWRlciA9PT0gJ1ZQOCAnICYmIGlucHV0WzBdICE9PSAweDJmKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlTG9zc3koaW5wdXQpO1xuICAgICAgICB9XG4gICAgICAgIC8vIExvc3N5IHdlYnAgc3RyZWFtIHNpZ25hdHVyZVxuICAgICAgICBjb25zdCBzaWduYXR1cmUgPSAoMCwgdXRpbHNfMS50b0hleFN0cmluZykoaW5wdXQsIDMsIDYpO1xuICAgICAgICBpZiAoY2h1bmtIZWFkZXIgPT09ICdWUDhMJyAmJiBzaWduYXR1cmUgIT09ICc5ZDAxMmEnKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlTG9zc2xlc3MoaW5wdXQpO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgV2ViUCcpO1xuICAgIH0sXG59O1xuIiwgIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7IHZhbHVlOiB0cnVlIH0pO1xuZXhwb3J0cy50eXBlSGFuZGxlcnMgPSB2b2lkIDA7XG4vLyBsb2FkIGFsbCBhdmFpbGFibGUgaGFuZGxlcnMgZXhwbGljaXRseSBmb3IgYnJvd3NlcmlmeSBzdXBwb3J0XG5jb25zdCBibXBfMSA9IHJlcXVpcmUoXCIuL2JtcFwiKTtcbmNvbnN0IGN1cl8xID0gcmVxdWlyZShcIi4vY3VyXCIpO1xuY29uc3QgZGRzXzEgPSByZXF1aXJlKFwiLi9kZHNcIik7XG5jb25zdCBnaWZfMSA9IHJlcXVpcmUoXCIuL2dpZlwiKTtcbmNvbnN0IGhlaWZfMSA9IHJlcXVpcmUoXCIuL2hlaWZcIik7XG5jb25zdCBpY25zXzEgPSByZXF1aXJlKFwiLi9pY25zXCIpO1xuY29uc3QgaWNvXzEgPSByZXF1aXJlKFwiLi9pY29cIik7XG5jb25zdCBqMmNfMSA9IHJlcXVpcmUoXCIuL2oyY1wiKTtcbmNvbnN0IGpwMl8xID0gcmVxdWlyZShcIi4vanAyXCIpO1xuY29uc3QganBnXzEgPSByZXF1aXJlKFwiLi9qcGdcIik7XG5jb25zdCBqeGxfMSA9IHJlcXVpcmUoXCIuL2p4bFwiKTtcbmNvbnN0IGp4bF9zdHJlYW1fMSA9IHJlcXVpcmUoXCIuL2p4bC1zdHJlYW1cIik7XG5jb25zdCBrdHhfMSA9IHJlcXVpcmUoXCIuL2t0eFwiKTtcbmNvbnN0IHBuZ18xID0gcmVxdWlyZShcIi4vcG5nXCIpO1xuY29uc3QgcG5tXzEgPSByZXF1aXJlKFwiLi9wbm1cIik7XG5jb25zdCBwc2RfMSA9IHJlcXVpcmUoXCIuL3BzZFwiKTtcbmNvbnN0IHN2Z18xID0gcmVxdWlyZShcIi4vc3ZnXCIpO1xuY29uc3QgdGdhXzEgPSByZXF1aXJlKFwiLi90Z2FcIik7XG5jb25zdCB0aWZmXzEgPSByZXF1aXJlKFwiLi90aWZmXCIpO1xuY29uc3Qgd2VicF8xID0gcmVxdWlyZShcIi4vd2VicFwiKTtcbmV4cG9ydHMudHlwZUhhbmRsZXJzID0ge1xuICAgIGJtcDogYm1wXzEuQk1QLFxuICAgIGN1cjogY3VyXzEuQ1VSLFxuICAgIGRkczogZGRzXzEuRERTLFxuICAgIGdpZjogZ2lmXzEuR0lGLFxuICAgIGhlaWY6IGhlaWZfMS5IRUlGLFxuICAgIGljbnM6IGljbnNfMS5JQ05TLFxuICAgIGljbzogaWNvXzEuSUNPLFxuICAgIGoyYzogajJjXzEuSjJDLFxuICAgIGpwMjoganAyXzEuSlAyLFxuICAgIGpwZzoganBnXzEuSlBHLFxuICAgIGp4bDoganhsXzEuSlhMLFxuICAgICdqeGwtc3RyZWFtJzoganhsX3N0cmVhbV8xLkpYTFN0cmVhbSxcbiAgICBrdHg6IGt0eF8xLktUWCxcbiAgICBwbmc6IHBuZ18xLlBORyxcbiAgICBwbm06IHBubV8xLlBOTSxcbiAgICBwc2Q6IHBzZF8xLlBTRCxcbiAgICBzdmc6IHN2Z18xLlNWRyxcbiAgICB0Z2E6IHRnYV8xLlRHQSxcbiAgICB0aWZmOiB0aWZmXzEuVElGRixcbiAgICB3ZWJwOiB3ZWJwXzEuV0VCUCxcbn07XG4iLCAiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmRldGVjdG9yID0gdm9pZCAwO1xuY29uc3QgaW5kZXhfMSA9IHJlcXVpcmUoXCIuL3R5cGVzL2luZGV4XCIpO1xuY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGluZGV4XzEudHlwZUhhbmRsZXJzKTtcbi8vIFRoaXMgbWFwIGhlbHBzIGF2b2lkIHZhbGlkYXRpbmcgZm9yIGV2ZXJ5IHNpbmdsZSBpbWFnZSB0eXBlXG5jb25zdCBmaXJzdEJ5dGVzID0ge1xuICAgIDB4Mzg6ICdwc2QnLFxuICAgIDB4NDI6ICdibXAnLFxuICAgIDB4NDQ6ICdkZHMnLFxuICAgIDB4NDc6ICdnaWYnLFxuICAgIDB4NDk6ICd0aWZmJyxcbiAgICAweDRkOiAndGlmZicsXG4gICAgMHg1MjogJ3dlYnAnLFxuICAgIDB4Njk6ICdpY25zJyxcbiAgICAweDg5OiAncG5nJyxcbiAgICAweGZmOiAnanBnJyxcbn07XG5mdW5jdGlvbiBkZXRlY3RvcihpbnB1dCkge1xuICAgIGNvbnN0IGJ5dGUgPSBpbnB1dFswXTtcbiAgICBpZiAoYnl0ZSBpbiBmaXJzdEJ5dGVzKSB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBmaXJzdEJ5dGVzW2J5dGVdO1xuICAgICAgICBpZiAodHlwZSAmJiBpbmRleF8xLnR5cGVIYW5kbGVyc1t0eXBlXS52YWxpZGF0ZShpbnB1dCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0eXBlO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGZpbmRlciA9IChrZXkpID0+IGluZGV4XzEudHlwZUhhbmRsZXJzW2tleV0udmFsaWRhdGUoaW5wdXQpO1xuICAgIHJldHVybiBrZXlzLmZpbmQoZmluZGVyKTtcbn1cbmV4cG9ydHMuZGV0ZWN0b3IgPSBkZXRlY3RvcjtcbiIsICJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMudHlwZXMgPSBleHBvcnRzLnNldENvbmN1cnJlbmN5ID0gZXhwb3J0cy5kaXNhYmxlVHlwZXMgPSBleHBvcnRzLmRpc2FibGVGUyA9IGV4cG9ydHMuaW1hZ2VTaXplID0gdm9pZCAwO1xuY29uc3QgZnMgPSByZXF1aXJlKFwiZnNcIik7XG5jb25zdCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5jb25zdCBxdWV1ZV8xID0gcmVxdWlyZShcInF1ZXVlXCIpO1xuY29uc3QgaW5kZXhfMSA9IHJlcXVpcmUoXCIuL3R5cGVzL2luZGV4XCIpO1xuY29uc3QgZGV0ZWN0b3JfMSA9IHJlcXVpcmUoXCIuL2RldGVjdG9yXCIpO1xuLy8gTWF4aW11bSBpbnB1dCBzaXplLCB3aXRoIGEgZGVmYXVsdCBvZiA1MTIga2lsb2J5dGVzLlxuLy8gVE8tRE86IG1ha2UgdGhpcyBhZGFwdGl2ZSBiYXNlZCBvbiB0aGUgaW5pdGlhbCBzaWduYXR1cmUgb2YgdGhlIGltYWdlXG5jb25zdCBNYXhJbnB1dFNpemUgPSA1MTIgKiAxMDI0O1xuLy8gVGhpcyBxdWV1ZSBpcyBmb3IgYXN5bmMgYGZzYCBvcGVyYXRpb25zLCB0byBhdm9pZCByZWFjaGluZyBmaWxlLWRlc2NyaXB0b3IgbGltaXRzXG5jb25zdCBxdWV1ZSA9IG5ldyBxdWV1ZV8xLmRlZmF1bHQoeyBjb25jdXJyZW5jeTogMTAwLCBhdXRvc3RhcnQ6IHRydWUgfSk7XG5jb25zdCBnbG9iYWxPcHRpb25zID0ge1xuICAgIGRpc2FibGVkRlM6IGZhbHNlLFxuICAgIGRpc2FibGVkVHlwZXM6IFtdLFxufTtcbi8qKlxuICogUmV0dXJuIHNpemUgaW5mb3JtYXRpb24gYmFzZWQgb24gYW4gVWludDhBcnJheVxuICpcbiAqIEBwYXJhbSB7VWludDhBcnJheX0gaW5wdXRcbiAqIEBwYXJhbSB7U3RyaW5nfSBmaWxlcGF0aFxuICogQHJldHVybnMge09iamVjdH1cbiAqL1xuZnVuY3Rpb24gbG9va3VwKGlucHV0LCBmaWxlcGF0aCkge1xuICAgIC8vIGRldGVjdCB0aGUgZmlsZSB0eXBlLi4gZG9uJ3QgcmVseSBvbiB0aGUgZXh0ZW5zaW9uXG4gICAgY29uc3QgdHlwZSA9ICgwLCBkZXRlY3Rvcl8xLmRldGVjdG9yKShpbnB1dCk7XG4gICAgaWYgKHR5cGVvZiB0eXBlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBpZiAoZ2xvYmFsT3B0aW9ucy5kaXNhYmxlZFR5cGVzLmluZGV4T2YodHlwZSkgPiAtMSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignZGlzYWJsZWQgZmlsZSB0eXBlOiAnICsgdHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZmluZCBhbiBhcHByb3ByaWF0ZSBoYW5kbGVyIGZvciB0aGlzIGZpbGUgdHlwZVxuICAgICAgICBpZiAodHlwZSBpbiBpbmRleF8xLnR5cGVIYW5kbGVycykge1xuICAgICAgICAgICAgY29uc3Qgc2l6ZSA9IGluZGV4XzEudHlwZUhhbmRsZXJzW3R5cGVdLmNhbGN1bGF0ZShpbnB1dCwgZmlsZXBhdGgpO1xuICAgICAgICAgICAgaWYgKHNpemUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHNpemUudHlwZSA9IHNpemUudHlwZSA/PyB0eXBlO1xuICAgICAgICAgICAgICAgIHJldHVybiBzaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIHRocm93IHVwLCBpZiB3ZSBkb24ndCB1bmRlcnN0YW5kIHRoZSBmaWxlXG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcigndW5zdXBwb3J0ZWQgZmlsZSB0eXBlOiAnICsgdHlwZSArICcgKGZpbGU6ICcgKyBmaWxlcGF0aCArICcpJyk7XG59XG4vKipcbiAqIFJlYWRzIGEgZmlsZSBpbnRvIGFuIFVpbnQ4QXJyYXkuXG4gKiBAcGFyYW0ge1N0cmluZ30gZmlsZXBhdGhcbiAqIEByZXR1cm5zIHtQcm9taXNlPFVpbnQ4QXJyYXk+fVxuICovXG5hc3luYyBmdW5jdGlvbiByZWFkRmlsZUFzeW5jKGZpbGVwYXRoKSB7XG4gICAgY29uc3QgaGFuZGxlID0gYXdhaXQgZnMucHJvbWlzZXMub3BlbihmaWxlcGF0aCwgJ3InKTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCB7IHNpemUgfSA9IGF3YWl0IGhhbmRsZS5zdGF0KCk7XG4gICAgICAgIGlmIChzaXplIDw9IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW1wdHkgZmlsZScpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlucHV0U2l6ZSA9IE1hdGgubWluKHNpemUsIE1heElucHV0U2l6ZSk7XG4gICAgICAgIGNvbnN0IGlucHV0ID0gbmV3IFVpbnQ4QXJyYXkoaW5wdXRTaXplKTtcbiAgICAgICAgYXdhaXQgaGFuZGxlLnJlYWQoaW5wdXQsIDAsIGlucHV0U2l6ZSwgMCk7XG4gICAgICAgIHJldHVybiBpbnB1dDtcbiAgICB9XG4gICAgZmluYWxseSB7XG4gICAgICAgIGF3YWl0IGhhbmRsZS5jbG9zZSgpO1xuICAgIH1cbn1cbi8qKlxuICogU3luY2hyb25vdXNseSByZWFkcyBhIGZpbGUgaW50byBhbiBVaW50OEFycmF5LCBibG9ja2luZyB0aGUgbm9kZWpzIHByb2Nlc3MuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGZpbGVwYXRoXG4gKiBAcmV0dXJucyB7VWludDhBcnJheX1cbiAqL1xuZnVuY3Rpb24gcmVhZEZpbGVTeW5jKGZpbGVwYXRoKSB7XG4gICAgLy8gcmVhZCBmcm9tIHRoZSBmaWxlLCBzeW5jaHJvbm91c2x5XG4gICAgY29uc3QgZGVzY3JpcHRvciA9IGZzLm9wZW5TeW5jKGZpbGVwYXRoLCAncicpO1xuICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgc2l6ZSB9ID0gZnMuZnN0YXRTeW5jKGRlc2NyaXB0b3IpO1xuICAgICAgICBpZiAoc2l6ZSA8PSAwKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VtcHR5IGZpbGUnKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpbnB1dFNpemUgPSBNYXRoLm1pbihzaXplLCBNYXhJbnB1dFNpemUpO1xuICAgICAgICBjb25zdCBpbnB1dCA9IG5ldyBVaW50OEFycmF5KGlucHV0U2l6ZSk7XG4gICAgICAgIGZzLnJlYWRTeW5jKGRlc2NyaXB0b3IsIGlucHV0LCAwLCBpbnB1dFNpemUsIDApO1xuICAgICAgICByZXR1cm4gaW5wdXQ7XG4gICAgfVxuICAgIGZpbmFsbHkge1xuICAgICAgICBmcy5jbG9zZVN5bmMoZGVzY3JpcHRvcik7XG4gICAgfVxufVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11c2UtYmVmb3JlLWRlZmluZVxubW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzID0gaW1hZ2VTaXplOyAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuZXhwb3J0cy5kZWZhdWx0ID0gaW1hZ2VTaXplO1xuLyoqXG4gKiBAcGFyYW0ge1VpbnQ4QXJyYXl8c3RyaW5nfSBpbnB1dCAtIFVpbnQ4QXJyYXkgb3IgcmVsYXRpdmUvYWJzb2x1dGUgcGF0aCBvZiB0aGUgaW1hZ2UgZmlsZVxuICogQHBhcmFtIHtGdW5jdGlvbj19IFtjYWxsYmFja10gLSBvcHRpb25hbCBmdW5jdGlvbiBmb3IgYXN5bmMgZGV0ZWN0aW9uXG4gKi9cbmZ1bmN0aW9uIGltYWdlU2l6ZShpbnB1dCwgY2FsbGJhY2spIHtcbiAgICAvLyBIYW5kbGUgVWludDhBcnJheSBpbnB1dFxuICAgIGlmIChpbnB1dCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpIHtcbiAgICAgICAgcmV0dXJuIGxvb2t1cChpbnB1dCk7XG4gICAgfVxuICAgIC8vIGlucHV0IHNob3VsZCBiZSBhIHN0cmluZyBhdCB0aGlzIHBvaW50XG4gICAgaWYgKHR5cGVvZiBpbnB1dCAhPT0gJ3N0cmluZycgfHwgZ2xvYmFsT3B0aW9ucy5kaXNhYmxlZEZTKSB7XG4gICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2ludmFsaWQgaW52b2NhdGlvbi4gaW5wdXQgc2hvdWxkIGJlIGEgVWludDhBcnJheScpO1xuICAgIH1cbiAgICAvLyByZXNvbHZlIHRoZSBmaWxlIHBhdGhcbiAgICBjb25zdCBmaWxlcGF0aCA9IHBhdGgucmVzb2x2ZShpbnB1dCk7XG4gICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBxdWV1ZS5wdXNoKCgpID0+IHJlYWRGaWxlQXN5bmMoZmlsZXBhdGgpXG4gICAgICAgICAgICAudGhlbigoaW5wdXQpID0+IHByb2Nlc3MubmV4dFRpY2soY2FsbGJhY2ssIG51bGwsIGxvb2t1cChpbnB1dCwgZmlsZXBhdGgpKSlcbiAgICAgICAgICAgIC5jYXRjaChjYWxsYmFjaykpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgaW5wdXQgPSByZWFkRmlsZVN5bmMoZmlsZXBhdGgpO1xuICAgICAgICByZXR1cm4gbG9va3VwKGlucHV0LCBmaWxlcGF0aCk7XG4gICAgfVxufVxuZXhwb3J0cy5pbWFnZVNpemUgPSBpbWFnZVNpemU7XG5jb25zdCBkaXNhYmxlRlMgPSAodikgPT4ge1xuICAgIGdsb2JhbE9wdGlvbnMuZGlzYWJsZWRGUyA9IHY7XG59O1xuZXhwb3J0cy5kaXNhYmxlRlMgPSBkaXNhYmxlRlM7XG5jb25zdCBkaXNhYmxlVHlwZXMgPSAodHlwZXMpID0+IHtcbiAgICBnbG9iYWxPcHRpb25zLmRpc2FibGVkVHlwZXMgPSB0eXBlcztcbn07XG5leHBvcnRzLmRpc2FibGVUeXBlcyA9IGRpc2FibGVUeXBlcztcbmNvbnN0IHNldENvbmN1cnJlbmN5ID0gKGMpID0+IHtcbiAgICBxdWV1ZS5jb25jdXJyZW5jeSA9IGM7XG59O1xuZXhwb3J0cy5zZXRDb25jdXJyZW5jeSA9IHNldENvbmN1cnJlbmN5O1xuZXhwb3J0cy50eXBlcyA9IE9iamVjdC5rZXlzKGluZGV4XzEudHlwZUhhbmRsZXJzKTtcbiIsICIndXNlIHN0cmljdCc7XG5cbi8vIGRvIG5vdCBlZGl0IC5qcyBmaWxlcyBkaXJlY3RseSAtIGVkaXQgc3JjL2luZGV4LmpzdFxuXG5cblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBlcXVhbChhLCBiKSB7XG4gIGlmIChhID09PSBiKSByZXR1cm4gdHJ1ZTtcblxuICBpZiAoYSAmJiBiICYmIHR5cGVvZiBhID09ICdvYmplY3QnICYmIHR5cGVvZiBiID09ICdvYmplY3QnKSB7XG4gICAgaWYgKGEuY29uc3RydWN0b3IgIT09IGIuY29uc3RydWN0b3IpIHJldHVybiBmYWxzZTtcblxuICAgIHZhciBsZW5ndGgsIGksIGtleXM7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoYSkpIHtcbiAgICAgIGxlbmd0aCA9IGEubGVuZ3RoO1xuICAgICAgaWYgKGxlbmd0aCAhPSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7KVxuICAgICAgICBpZiAoIWVxdWFsKGFbaV0sIGJbaV0pKSByZXR1cm4gZmFsc2U7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cblxuXG4gICAgaWYgKGEuY29uc3RydWN0b3IgPT09IFJlZ0V4cCkgcmV0dXJuIGEuc291cmNlID09PSBiLnNvdXJjZSAmJiBhLmZsYWdzID09PSBiLmZsYWdzO1xuICAgIGlmIChhLnZhbHVlT2YgIT09IE9iamVjdC5wcm90b3R5cGUudmFsdWVPZikgcmV0dXJuIGEudmFsdWVPZigpID09PSBiLnZhbHVlT2YoKTtcbiAgICBpZiAoYS50b1N0cmluZyAhPT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZykgcmV0dXJuIGEudG9TdHJpbmcoKSA9PT0gYi50b1N0cmluZygpO1xuXG4gICAga2V5cyA9IE9iamVjdC5rZXlzKGEpO1xuICAgIGxlbmd0aCA9IGtleXMubGVuZ3RoO1xuICAgIGlmIChsZW5ndGggIT09IE9iamVjdC5rZXlzKGIpLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7KVxuICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYiwga2V5c1tpXSkpIHJldHVybiBmYWxzZTtcblxuICAgIGZvciAoaSA9IGxlbmd0aDsgaS0tICE9PSAwOykge1xuICAgICAgdmFyIGtleSA9IGtleXNbaV07XG5cbiAgICAgIGlmICghZXF1YWwoYVtrZXldLCBiW2tleV0pKSByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyB0cnVlIGlmIGJvdGggTmFOLCBmYWxzZSBvdGhlcndpc2VcbiAgcmV0dXJuIGEhPT1hICYmIGIhPT1iO1xufTtcbiIsICIndXNlIHN0cmljdCdcblxuZXhwb3J0cy5ieXRlTGVuZ3RoID0gYnl0ZUxlbmd0aFxuZXhwb3J0cy50b0J5dGVBcnJheSA9IHRvQnl0ZUFycmF5XG5leHBvcnRzLmZyb21CeXRlQXJyYXkgPSBmcm9tQnl0ZUFycmF5XG5cbnZhciBsb29rdXAgPSBbXVxudmFyIHJldkxvb2t1cCA9IFtdXG52YXIgQXJyID0gdHlwZW9mIFVpbnQ4QXJyYXkgIT09ICd1bmRlZmluZWQnID8gVWludDhBcnJheSA6IEFycmF5XG5cbnZhciBjb2RlID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8nXG5mb3IgKHZhciBpID0gMCwgbGVuID0gY29kZS5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICBsb29rdXBbaV0gPSBjb2RlW2ldXG4gIHJldkxvb2t1cFtjb2RlLmNoYXJDb2RlQXQoaSldID0gaVxufVxuXG4vLyBTdXBwb3J0IGRlY29kaW5nIFVSTC1zYWZlIGJhc2U2NCBzdHJpbmdzLCBhcyBOb2RlLmpzIGRvZXMuXG4vLyBTZWU6IGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0Jhc2U2NCNVUkxfYXBwbGljYXRpb25zXG5yZXZMb29rdXBbJy0nLmNoYXJDb2RlQXQoMCldID0gNjJcbnJldkxvb2t1cFsnXycuY2hhckNvZGVBdCgwKV0gPSA2M1xuXG5mdW5jdGlvbiBnZXRMZW5zIChiNjQpIHtcbiAgdmFyIGxlbiA9IGI2NC5sZW5ndGhcblxuICBpZiAobGVuICUgNCA+IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgc3RyaW5nLiBMZW5ndGggbXVzdCBiZSBhIG11bHRpcGxlIG9mIDQnKVxuICB9XG5cbiAgLy8gVHJpbSBvZmYgZXh0cmEgYnl0ZXMgYWZ0ZXIgcGxhY2Vob2xkZXIgYnl0ZXMgYXJlIGZvdW5kXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2JlYXRnYW1taXQvYmFzZTY0LWpzL2lzc3Vlcy80MlxuICB2YXIgdmFsaWRMZW4gPSBiNjQuaW5kZXhPZignPScpXG4gIGlmICh2YWxpZExlbiA9PT0gLTEpIHZhbGlkTGVuID0gbGVuXG5cbiAgdmFyIHBsYWNlSG9sZGVyc0xlbiA9IHZhbGlkTGVuID09PSBsZW5cbiAgICA/IDBcbiAgICA6IDQgLSAodmFsaWRMZW4gJSA0KVxuXG4gIHJldHVybiBbdmFsaWRMZW4sIHBsYWNlSG9sZGVyc0xlbl1cbn1cblxuLy8gYmFzZTY0IGlzIDQvMyArIHVwIHRvIHR3byBjaGFyYWN0ZXJzIG9mIHRoZSBvcmlnaW5hbCBkYXRhXG5mdW5jdGlvbiBieXRlTGVuZ3RoIChiNjQpIHtcbiAgdmFyIGxlbnMgPSBnZXRMZW5zKGI2NClcbiAgdmFyIHZhbGlkTGVuID0gbGVuc1swXVxuICB2YXIgcGxhY2VIb2xkZXJzTGVuID0gbGVuc1sxXVxuICByZXR1cm4gKCh2YWxpZExlbiArIHBsYWNlSG9sZGVyc0xlbikgKiAzIC8gNCkgLSBwbGFjZUhvbGRlcnNMZW5cbn1cblxuZnVuY3Rpb24gX2J5dGVMZW5ndGggKGI2NCwgdmFsaWRMZW4sIHBsYWNlSG9sZGVyc0xlbikge1xuICByZXR1cm4gKCh2YWxpZExlbiArIHBsYWNlSG9sZGVyc0xlbikgKiAzIC8gNCkgLSBwbGFjZUhvbGRlcnNMZW5cbn1cblxuZnVuY3Rpb24gdG9CeXRlQXJyYXkgKGI2NCkge1xuICB2YXIgdG1wXG4gIHZhciBsZW5zID0gZ2V0TGVucyhiNjQpXG4gIHZhciB2YWxpZExlbiA9IGxlbnNbMF1cbiAgdmFyIHBsYWNlSG9sZGVyc0xlbiA9IGxlbnNbMV1cblxuICB2YXIgYXJyID0gbmV3IEFycihfYnl0ZUxlbmd0aChiNjQsIHZhbGlkTGVuLCBwbGFjZUhvbGRlcnNMZW4pKVxuXG4gIHZhciBjdXJCeXRlID0gMFxuXG4gIC8vIGlmIHRoZXJlIGFyZSBwbGFjZWhvbGRlcnMsIG9ubHkgZ2V0IHVwIHRvIHRoZSBsYXN0IGNvbXBsZXRlIDQgY2hhcnNcbiAgdmFyIGxlbiA9IHBsYWNlSG9sZGVyc0xlbiA+IDBcbiAgICA/IHZhbGlkTGVuIC0gNFxuICAgIDogdmFsaWRMZW5cblxuICB2YXIgaVxuICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpICs9IDQpIHtcbiAgICB0bXAgPVxuICAgICAgKHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpKV0gPDwgMTgpIHxcbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSArIDEpXSA8PCAxMikgfFxuICAgICAgKHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpICsgMildIDw8IDYpIHxcbiAgICAgIHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpICsgMyldXG4gICAgYXJyW2N1ckJ5dGUrK10gPSAodG1wID4+IDE2KSAmIDB4RkZcbiAgICBhcnJbY3VyQnl0ZSsrXSA9ICh0bXAgPj4gOCkgJiAweEZGXG4gICAgYXJyW2N1ckJ5dGUrK10gPSB0bXAgJiAweEZGXG4gIH1cblxuICBpZiAocGxhY2VIb2xkZXJzTGVuID09PSAyKSB7XG4gICAgdG1wID1cbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSldIDw8IDIpIHxcbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSArIDEpXSA+PiA0KVxuICAgIGFycltjdXJCeXRlKytdID0gdG1wICYgMHhGRlxuICB9XG5cbiAgaWYgKHBsYWNlSG9sZGVyc0xlbiA9PT0gMSkge1xuICAgIHRtcCA9XG4gICAgICAocmV2TG9va3VwW2I2NC5jaGFyQ29kZUF0KGkpXSA8PCAxMCkgfFxuICAgICAgKHJldkxvb2t1cFtiNjQuY2hhckNvZGVBdChpICsgMSldIDw8IDQpIHxcbiAgICAgIChyZXZMb29rdXBbYjY0LmNoYXJDb2RlQXQoaSArIDIpXSA+PiAyKVxuICAgIGFycltjdXJCeXRlKytdID0gKHRtcCA+PiA4KSAmIDB4RkZcbiAgICBhcnJbY3VyQnl0ZSsrXSA9IHRtcCAmIDB4RkZcbiAgfVxuXG4gIHJldHVybiBhcnJcbn1cblxuZnVuY3Rpb24gdHJpcGxldFRvQmFzZTY0IChudW0pIHtcbiAgcmV0dXJuIGxvb2t1cFtudW0gPj4gMTggJiAweDNGXSArXG4gICAgbG9va3VwW251bSA+PiAxMiAmIDB4M0ZdICtcbiAgICBsb29rdXBbbnVtID4+IDYgJiAweDNGXSArXG4gICAgbG9va3VwW251bSAmIDB4M0ZdXG59XG5cbmZ1bmN0aW9uIGVuY29kZUNodW5rICh1aW50OCwgc3RhcnQsIGVuZCkge1xuICB2YXIgdG1wXG4gIHZhciBvdXRwdXQgPSBbXVxuICBmb3IgKHZhciBpID0gc3RhcnQ7IGkgPCBlbmQ7IGkgKz0gMykge1xuICAgIHRtcCA9XG4gICAgICAoKHVpbnQ4W2ldIDw8IDE2KSAmIDB4RkYwMDAwKSArXG4gICAgICAoKHVpbnQ4W2kgKyAxXSA8PCA4KSAmIDB4RkYwMCkgK1xuICAgICAgKHVpbnQ4W2kgKyAyXSAmIDB4RkYpXG4gICAgb3V0cHV0LnB1c2godHJpcGxldFRvQmFzZTY0KHRtcCkpXG4gIH1cbiAgcmV0dXJuIG91dHB1dC5qb2luKCcnKVxufVxuXG5mdW5jdGlvbiBmcm9tQnl0ZUFycmF5ICh1aW50OCkge1xuICB2YXIgdG1wXG4gIHZhciBsZW4gPSB1aW50OC5sZW5ndGhcbiAgdmFyIGV4dHJhQnl0ZXMgPSBsZW4gJSAzIC8vIGlmIHdlIGhhdmUgMSBieXRlIGxlZnQsIHBhZCAyIGJ5dGVzXG4gIHZhciBwYXJ0cyA9IFtdXG4gIHZhciBtYXhDaHVua0xlbmd0aCA9IDE2MzgzIC8vIG11c3QgYmUgbXVsdGlwbGUgb2YgM1xuXG4gIC8vIGdvIHRocm91Z2ggdGhlIGFycmF5IGV2ZXJ5IHRocmVlIGJ5dGVzLCB3ZSdsbCBkZWFsIHdpdGggdHJhaWxpbmcgc3R1ZmYgbGF0ZXJcbiAgZm9yICh2YXIgaSA9IDAsIGxlbjIgPSBsZW4gLSBleHRyYUJ5dGVzOyBpIDwgbGVuMjsgaSArPSBtYXhDaHVua0xlbmd0aCkge1xuICAgIHBhcnRzLnB1c2goZW5jb2RlQ2h1bmsodWludDgsIGksIChpICsgbWF4Q2h1bmtMZW5ndGgpID4gbGVuMiA/IGxlbjIgOiAoaSArIG1heENodW5rTGVuZ3RoKSkpXG4gIH1cblxuICAvLyBwYWQgdGhlIGVuZCB3aXRoIHplcm9zLCBidXQgbWFrZSBzdXJlIHRvIG5vdCBmb3JnZXQgdGhlIGV4dHJhIGJ5dGVzXG4gIGlmIChleHRyYUJ5dGVzID09PSAxKSB7XG4gICAgdG1wID0gdWludDhbbGVuIC0gMV1cbiAgICBwYXJ0cy5wdXNoKFxuICAgICAgbG9va3VwW3RtcCA+PiAyXSArXG4gICAgICBsb29rdXBbKHRtcCA8PCA0KSAmIDB4M0ZdICtcbiAgICAgICc9PSdcbiAgICApXG4gIH0gZWxzZSBpZiAoZXh0cmFCeXRlcyA9PT0gMikge1xuICAgIHRtcCA9ICh1aW50OFtsZW4gLSAyXSA8PCA4KSArIHVpbnQ4W2xlbiAtIDFdXG4gICAgcGFydHMucHVzaChcbiAgICAgIGxvb2t1cFt0bXAgPj4gMTBdICtcbiAgICAgIGxvb2t1cFsodG1wID4+IDQpICYgMHgzRl0gK1xuICAgICAgbG9va3VwWyh0bXAgPDwgMikgJiAweDNGXSArXG4gICAgICAnPSdcbiAgICApXG4gIH1cblxuICByZXR1cm4gcGFydHMuam9pbignJylcbn1cbiIsICJ2YXIgVElORl9PSyA9IDA7XG52YXIgVElORl9EQVRBX0VSUk9SID0gLTM7XG5cbmZ1bmN0aW9uIFRyZWUoKSB7XG4gIHRoaXMudGFibGUgPSBuZXcgVWludDE2QXJyYXkoMTYpOyAgIC8qIHRhYmxlIG9mIGNvZGUgbGVuZ3RoIGNvdW50cyAqL1xuICB0aGlzLnRyYW5zID0gbmV3IFVpbnQxNkFycmF5KDI4OCk7ICAvKiBjb2RlIC0+IHN5bWJvbCB0cmFuc2xhdGlvbiB0YWJsZSAqL1xufVxuXG5mdW5jdGlvbiBEYXRhKHNvdXJjZSwgZGVzdCkge1xuICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcbiAgdGhpcy5zb3VyY2VJbmRleCA9IDA7XG4gIHRoaXMudGFnID0gMDtcbiAgdGhpcy5iaXRjb3VudCA9IDA7XG4gIFxuICB0aGlzLmRlc3QgPSBkZXN0O1xuICB0aGlzLmRlc3RMZW4gPSAwO1xuICBcbiAgdGhpcy5sdHJlZSA9IG5ldyBUcmVlKCk7ICAvKiBkeW5hbWljIGxlbmd0aC9zeW1ib2wgdHJlZSAqL1xuICB0aGlzLmR0cmVlID0gbmV3IFRyZWUoKTsgIC8qIGR5bmFtaWMgZGlzdGFuY2UgdHJlZSAqL1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxuICogLS0gdW5pbml0aWFsaXplZCBnbG9iYWwgZGF0YSAoc3RhdGljIHN0cnVjdHVyZXMpIC0tICpcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG52YXIgc2x0cmVlID0gbmV3IFRyZWUoKTtcbnZhciBzZHRyZWUgPSBuZXcgVHJlZSgpO1xuXG4vKiBleHRyYSBiaXRzIGFuZCBiYXNlIHRhYmxlcyBmb3IgbGVuZ3RoIGNvZGVzICovXG52YXIgbGVuZ3RoX2JpdHMgPSBuZXcgVWludDhBcnJheSgzMCk7XG52YXIgbGVuZ3RoX2Jhc2UgPSBuZXcgVWludDE2QXJyYXkoMzApO1xuXG4vKiBleHRyYSBiaXRzIGFuZCBiYXNlIHRhYmxlcyBmb3IgZGlzdGFuY2UgY29kZXMgKi9cbnZhciBkaXN0X2JpdHMgPSBuZXcgVWludDhBcnJheSgzMCk7XG52YXIgZGlzdF9iYXNlID0gbmV3IFVpbnQxNkFycmF5KDMwKTtcblxuLyogc3BlY2lhbCBvcmRlcmluZyBvZiBjb2RlIGxlbmd0aCBjb2RlcyAqL1xudmFyIGNsY2lkeCA9IG5ldyBVaW50OEFycmF5KFtcbiAgMTYsIDE3LCAxOCwgMCwgOCwgNywgOSwgNixcbiAgMTAsIDUsIDExLCA0LCAxMiwgMywgMTMsIDIsXG4gIDE0LCAxLCAxNVxuXSk7XG5cbi8qIHVzZWQgYnkgdGluZl9kZWNvZGVfdHJlZXMsIGF2b2lkcyBhbGxvY2F0aW9ucyBldmVyeSBjYWxsICovXG52YXIgY29kZV90cmVlID0gbmV3IFRyZWUoKTtcbnZhciBsZW5ndGhzID0gbmV3IFVpbnQ4QXJyYXkoMjg4ICsgMzIpO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4gKiAtLSB1dGlsaXR5IGZ1bmN0aW9ucyAtLSAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBidWlsZCBleHRyYSBiaXRzIGFuZCBiYXNlIHRhYmxlcyAqL1xuZnVuY3Rpb24gdGluZl9idWlsZF9iaXRzX2Jhc2UoYml0cywgYmFzZSwgZGVsdGEsIGZpcnN0KSB7XG4gIHZhciBpLCBzdW07XG5cbiAgLyogYnVpbGQgYml0cyB0YWJsZSAqL1xuICBmb3IgKGkgPSAwOyBpIDwgZGVsdGE7ICsraSkgYml0c1tpXSA9IDA7XG4gIGZvciAoaSA9IDA7IGkgPCAzMCAtIGRlbHRhOyArK2kpIGJpdHNbaSArIGRlbHRhXSA9IGkgLyBkZWx0YSB8IDA7XG5cbiAgLyogYnVpbGQgYmFzZSB0YWJsZSAqL1xuICBmb3IgKHN1bSA9IGZpcnN0LCBpID0gMDsgaSA8IDMwOyArK2kpIHtcbiAgICBiYXNlW2ldID0gc3VtO1xuICAgIHN1bSArPSAxIDw8IGJpdHNbaV07XG4gIH1cbn1cblxuLyogYnVpbGQgdGhlIGZpeGVkIGh1ZmZtYW4gdHJlZXMgKi9cbmZ1bmN0aW9uIHRpbmZfYnVpbGRfZml4ZWRfdHJlZXMobHQsIGR0KSB7XG4gIHZhciBpO1xuXG4gIC8qIGJ1aWxkIGZpeGVkIGxlbmd0aCB0cmVlICovXG4gIGZvciAoaSA9IDA7IGkgPCA3OyArK2kpIGx0LnRhYmxlW2ldID0gMDtcblxuICBsdC50YWJsZVs3XSA9IDI0O1xuICBsdC50YWJsZVs4XSA9IDE1MjtcbiAgbHQudGFibGVbOV0gPSAxMTI7XG5cbiAgZm9yIChpID0gMDsgaSA8IDI0OyArK2kpIGx0LnRyYW5zW2ldID0gMjU2ICsgaTtcbiAgZm9yIChpID0gMDsgaSA8IDE0NDsgKytpKSBsdC50cmFuc1syNCArIGldID0gaTtcbiAgZm9yIChpID0gMDsgaSA8IDg7ICsraSkgbHQudHJhbnNbMjQgKyAxNDQgKyBpXSA9IDI4MCArIGk7XG4gIGZvciAoaSA9IDA7IGkgPCAxMTI7ICsraSkgbHQudHJhbnNbMjQgKyAxNDQgKyA4ICsgaV0gPSAxNDQgKyBpO1xuXG4gIC8qIGJ1aWxkIGZpeGVkIGRpc3RhbmNlIHRyZWUgKi9cbiAgZm9yIChpID0gMDsgaSA8IDU7ICsraSkgZHQudGFibGVbaV0gPSAwO1xuXG4gIGR0LnRhYmxlWzVdID0gMzI7XG5cbiAgZm9yIChpID0gMDsgaSA8IDMyOyArK2kpIGR0LnRyYW5zW2ldID0gaTtcbn1cblxuLyogZ2l2ZW4gYW4gYXJyYXkgb2YgY29kZSBsZW5ndGhzLCBidWlsZCBhIHRyZWUgKi9cbnZhciBvZmZzID0gbmV3IFVpbnQxNkFycmF5KDE2KTtcblxuZnVuY3Rpb24gdGluZl9idWlsZF90cmVlKHQsIGxlbmd0aHMsIG9mZiwgbnVtKSB7XG4gIHZhciBpLCBzdW07XG5cbiAgLyogY2xlYXIgY29kZSBsZW5ndGggY291bnQgdGFibGUgKi9cbiAgZm9yIChpID0gMDsgaSA8IDE2OyArK2kpIHQudGFibGVbaV0gPSAwO1xuXG4gIC8qIHNjYW4gc3ltYm9sIGxlbmd0aHMsIGFuZCBzdW0gY29kZSBsZW5ndGggY291bnRzICovXG4gIGZvciAoaSA9IDA7IGkgPCBudW07ICsraSkgdC50YWJsZVtsZW5ndGhzW29mZiArIGldXSsrO1xuXG4gIHQudGFibGVbMF0gPSAwO1xuXG4gIC8qIGNvbXB1dGUgb2Zmc2V0IHRhYmxlIGZvciBkaXN0cmlidXRpb24gc29ydCAqL1xuICBmb3IgKHN1bSA9IDAsIGkgPSAwOyBpIDwgMTY7ICsraSkge1xuICAgIG9mZnNbaV0gPSBzdW07XG4gICAgc3VtICs9IHQudGFibGVbaV07XG4gIH1cblxuICAvKiBjcmVhdGUgY29kZS0+c3ltYm9sIHRyYW5zbGF0aW9uIHRhYmxlIChzeW1ib2xzIHNvcnRlZCBieSBjb2RlKSAqL1xuICBmb3IgKGkgPSAwOyBpIDwgbnVtOyArK2kpIHtcbiAgICBpZiAobGVuZ3Roc1tvZmYgKyBpXSkgdC50cmFuc1tvZmZzW2xlbmd0aHNbb2ZmICsgaV1dKytdID0gaTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcbiAqIC0tIGRlY29kZSBmdW5jdGlvbnMgLS0gKlxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBnZXQgb25lIGJpdCBmcm9tIHNvdXJjZSBzdHJlYW0gKi9cbmZ1bmN0aW9uIHRpbmZfZ2V0Yml0KGQpIHtcbiAgLyogY2hlY2sgaWYgdGFnIGlzIGVtcHR5ICovXG4gIGlmICghZC5iaXRjb3VudC0tKSB7XG4gICAgLyogbG9hZCBuZXh0IHRhZyAqL1xuICAgIGQudGFnID0gZC5zb3VyY2VbZC5zb3VyY2VJbmRleCsrXTtcbiAgICBkLmJpdGNvdW50ID0gNztcbiAgfVxuXG4gIC8qIHNoaWZ0IGJpdCBvdXQgb2YgdGFnICovXG4gIHZhciBiaXQgPSBkLnRhZyAmIDE7XG4gIGQudGFnID4+Pj0gMTtcblxuICByZXR1cm4gYml0O1xufVxuXG4vKiByZWFkIGEgbnVtIGJpdCB2YWx1ZSBmcm9tIGEgc3RyZWFtIGFuZCBhZGQgYmFzZSAqL1xuZnVuY3Rpb24gdGluZl9yZWFkX2JpdHMoZCwgbnVtLCBiYXNlKSB7XG4gIGlmICghbnVtKVxuICAgIHJldHVybiBiYXNlO1xuXG4gIHdoaWxlIChkLmJpdGNvdW50IDwgMjQpIHtcbiAgICBkLnRhZyB8PSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4KytdIDw8IGQuYml0Y291bnQ7XG4gICAgZC5iaXRjb3VudCArPSA4O1xuICB9XG5cbiAgdmFyIHZhbCA9IGQudGFnICYgKDB4ZmZmZiA+Pj4gKDE2IC0gbnVtKSk7XG4gIGQudGFnID4+Pj0gbnVtO1xuICBkLmJpdGNvdW50IC09IG51bTtcbiAgcmV0dXJuIHZhbCArIGJhc2U7XG59XG5cbi8qIGdpdmVuIGEgZGF0YSBzdHJlYW0gYW5kIGEgdHJlZSwgZGVjb2RlIGEgc3ltYm9sICovXG5mdW5jdGlvbiB0aW5mX2RlY29kZV9zeW1ib2woZCwgdCkge1xuICB3aGlsZSAoZC5iaXRjb3VudCA8IDI0KSB7XG4gICAgZC50YWcgfD0gZC5zb3VyY2VbZC5zb3VyY2VJbmRleCsrXSA8PCBkLmJpdGNvdW50O1xuICAgIGQuYml0Y291bnQgKz0gODtcbiAgfVxuICBcbiAgdmFyIHN1bSA9IDAsIGN1ciA9IDAsIGxlbiA9IDA7XG4gIHZhciB0YWcgPSBkLnRhZztcblxuICAvKiBnZXQgbW9yZSBiaXRzIHdoaWxlIGNvZGUgdmFsdWUgaXMgYWJvdmUgc3VtICovXG4gIGRvIHtcbiAgICBjdXIgPSAyICogY3VyICsgKHRhZyAmIDEpO1xuICAgIHRhZyA+Pj49IDE7XG4gICAgKytsZW47XG5cbiAgICBzdW0gKz0gdC50YWJsZVtsZW5dO1xuICAgIGN1ciAtPSB0LnRhYmxlW2xlbl07XG4gIH0gd2hpbGUgKGN1ciA+PSAwKTtcbiAgXG4gIGQudGFnID0gdGFnO1xuICBkLmJpdGNvdW50IC09IGxlbjtcblxuICByZXR1cm4gdC50cmFuc1tzdW0gKyBjdXJdO1xufVxuXG4vKiBnaXZlbiBhIGRhdGEgc3RyZWFtLCBkZWNvZGUgZHluYW1pYyB0cmVlcyBmcm9tIGl0ICovXG5mdW5jdGlvbiB0aW5mX2RlY29kZV90cmVlcyhkLCBsdCwgZHQpIHtcbiAgdmFyIGhsaXQsIGhkaXN0LCBoY2xlbjtcbiAgdmFyIGksIG51bSwgbGVuZ3RoO1xuXG4gIC8qIGdldCA1IGJpdHMgSExJVCAoMjU3LTI4NikgKi9cbiAgaGxpdCA9IHRpbmZfcmVhZF9iaXRzKGQsIDUsIDI1Nyk7XG5cbiAgLyogZ2V0IDUgYml0cyBIRElTVCAoMS0zMikgKi9cbiAgaGRpc3QgPSB0aW5mX3JlYWRfYml0cyhkLCA1LCAxKTtcblxuICAvKiBnZXQgNCBiaXRzIEhDTEVOICg0LTE5KSAqL1xuICBoY2xlbiA9IHRpbmZfcmVhZF9iaXRzKGQsIDQsIDQpO1xuXG4gIGZvciAoaSA9IDA7IGkgPCAxOTsgKytpKSBsZW5ndGhzW2ldID0gMDtcblxuICAvKiByZWFkIGNvZGUgbGVuZ3RocyBmb3IgY29kZSBsZW5ndGggYWxwaGFiZXQgKi9cbiAgZm9yIChpID0gMDsgaSA8IGhjbGVuOyArK2kpIHtcbiAgICAvKiBnZXQgMyBiaXRzIGNvZGUgbGVuZ3RoICgwLTcpICovXG4gICAgdmFyIGNsZW4gPSB0aW5mX3JlYWRfYml0cyhkLCAzLCAwKTtcbiAgICBsZW5ndGhzW2NsY2lkeFtpXV0gPSBjbGVuO1xuICB9XG5cbiAgLyogYnVpbGQgY29kZSBsZW5ndGggdHJlZSAqL1xuICB0aW5mX2J1aWxkX3RyZWUoY29kZV90cmVlLCBsZW5ndGhzLCAwLCAxOSk7XG5cbiAgLyogZGVjb2RlIGNvZGUgbGVuZ3RocyBmb3IgdGhlIGR5bmFtaWMgdHJlZXMgKi9cbiAgZm9yIChudW0gPSAwOyBudW0gPCBobGl0ICsgaGRpc3Q7KSB7XG4gICAgdmFyIHN5bSA9IHRpbmZfZGVjb2RlX3N5bWJvbChkLCBjb2RlX3RyZWUpO1xuXG4gICAgc3dpdGNoIChzeW0pIHtcbiAgICAgIGNhc2UgMTY6XG4gICAgICAgIC8qIGNvcHkgcHJldmlvdXMgY29kZSBsZW5ndGggMy02IHRpbWVzIChyZWFkIDIgYml0cykgKi9cbiAgICAgICAgdmFyIHByZXYgPSBsZW5ndGhzW251bSAtIDFdO1xuICAgICAgICBmb3IgKGxlbmd0aCA9IHRpbmZfcmVhZF9iaXRzKGQsIDIsIDMpOyBsZW5ndGg7IC0tbGVuZ3RoKSB7XG4gICAgICAgICAgbGVuZ3Roc1tudW0rK10gPSBwcmV2O1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxNzpcbiAgICAgICAgLyogcmVwZWF0IGNvZGUgbGVuZ3RoIDAgZm9yIDMtMTAgdGltZXMgKHJlYWQgMyBiaXRzKSAqL1xuICAgICAgICBmb3IgKGxlbmd0aCA9IHRpbmZfcmVhZF9iaXRzKGQsIDMsIDMpOyBsZW5ndGg7IC0tbGVuZ3RoKSB7XG4gICAgICAgICAgbGVuZ3Roc1tudW0rK10gPSAwO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxODpcbiAgICAgICAgLyogcmVwZWF0IGNvZGUgbGVuZ3RoIDAgZm9yIDExLTEzOCB0aW1lcyAocmVhZCA3IGJpdHMpICovXG4gICAgICAgIGZvciAobGVuZ3RoID0gdGluZl9yZWFkX2JpdHMoZCwgNywgMTEpOyBsZW5ndGg7IC0tbGVuZ3RoKSB7XG4gICAgICAgICAgbGVuZ3Roc1tudW0rK10gPSAwO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLyogdmFsdWVzIDAtMTUgcmVwcmVzZW50IHRoZSBhY3R1YWwgY29kZSBsZW5ndGhzICovXG4gICAgICAgIGxlbmd0aHNbbnVtKytdID0gc3ltO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvKiBidWlsZCBkeW5hbWljIHRyZWVzICovXG4gIHRpbmZfYnVpbGRfdHJlZShsdCwgbGVuZ3RocywgMCwgaGxpdCk7XG4gIHRpbmZfYnVpbGRfdHJlZShkdCwgbGVuZ3RocywgaGxpdCwgaGRpc3QpO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4gKiAtLSBibG9jayBpbmZsYXRlIGZ1bmN0aW9ucyAtLSAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBnaXZlbiBhIHN0cmVhbSBhbmQgdHdvIHRyZWVzLCBpbmZsYXRlIGEgYmxvY2sgb2YgZGF0YSAqL1xuZnVuY3Rpb24gdGluZl9pbmZsYXRlX2Jsb2NrX2RhdGEoZCwgbHQsIGR0KSB7XG4gIHdoaWxlICgxKSB7XG4gICAgdmFyIHN5bSA9IHRpbmZfZGVjb2RlX3N5bWJvbChkLCBsdCk7XG5cbiAgICAvKiBjaGVjayBmb3IgZW5kIG9mIGJsb2NrICovXG4gICAgaWYgKHN5bSA9PT0gMjU2KSB7XG4gICAgICByZXR1cm4gVElORl9PSztcbiAgICB9XG5cbiAgICBpZiAoc3ltIDwgMjU2KSB7XG4gICAgICBkLmRlc3RbZC5kZXN0TGVuKytdID0gc3ltO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgbGVuZ3RoLCBkaXN0LCBvZmZzO1xuICAgICAgdmFyIGk7XG5cbiAgICAgIHN5bSAtPSAyNTc7XG5cbiAgICAgIC8qIHBvc3NpYmx5IGdldCBtb3JlIGJpdHMgZnJvbSBsZW5ndGggY29kZSAqL1xuICAgICAgbGVuZ3RoID0gdGluZl9yZWFkX2JpdHMoZCwgbGVuZ3RoX2JpdHNbc3ltXSwgbGVuZ3RoX2Jhc2Vbc3ltXSk7XG5cbiAgICAgIGRpc3QgPSB0aW5mX2RlY29kZV9zeW1ib2woZCwgZHQpO1xuXG4gICAgICAvKiBwb3NzaWJseSBnZXQgbW9yZSBiaXRzIGZyb20gZGlzdGFuY2UgY29kZSAqL1xuICAgICAgb2ZmcyA9IGQuZGVzdExlbiAtIHRpbmZfcmVhZF9iaXRzKGQsIGRpc3RfYml0c1tkaXN0XSwgZGlzdF9iYXNlW2Rpc3RdKTtcblxuICAgICAgLyogY29weSBtYXRjaCAqL1xuICAgICAgZm9yIChpID0gb2ZmczsgaSA8IG9mZnMgKyBsZW5ndGg7ICsraSkge1xuICAgICAgICBkLmRlc3RbZC5kZXN0TGVuKytdID0gZC5kZXN0W2ldO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBpbmZsYXRlIGFuIHVuY29tcHJlc3NlZCBibG9jayBvZiBkYXRhICovXG5mdW5jdGlvbiB0aW5mX2luZmxhdGVfdW5jb21wcmVzc2VkX2Jsb2NrKGQpIHtcbiAgdmFyIGxlbmd0aCwgaW52bGVuZ3RoO1xuICB2YXIgaTtcbiAgXG4gIC8qIHVucmVhZCBmcm9tIGJpdGJ1ZmZlciAqL1xuICB3aGlsZSAoZC5iaXRjb3VudCA+IDgpIHtcbiAgICBkLnNvdXJjZUluZGV4LS07XG4gICAgZC5iaXRjb3VudCAtPSA4O1xuICB9XG5cbiAgLyogZ2V0IGxlbmd0aCAqL1xuICBsZW5ndGggPSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4ICsgMV07XG4gIGxlbmd0aCA9IDI1NiAqIGxlbmd0aCArIGQuc291cmNlW2Quc291cmNlSW5kZXhdO1xuXG4gIC8qIGdldCBvbmUncyBjb21wbGVtZW50IG9mIGxlbmd0aCAqL1xuICBpbnZsZW5ndGggPSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4ICsgM107XG4gIGludmxlbmd0aCA9IDI1NiAqIGludmxlbmd0aCArIGQuc291cmNlW2Quc291cmNlSW5kZXggKyAyXTtcblxuICAvKiBjaGVjayBsZW5ndGggKi9cbiAgaWYgKGxlbmd0aCAhPT0gKH5pbnZsZW5ndGggJiAweDAwMDBmZmZmKSlcbiAgICByZXR1cm4gVElORl9EQVRBX0VSUk9SO1xuXG4gIGQuc291cmNlSW5kZXggKz0gNDtcblxuICAvKiBjb3B5IGJsb2NrICovXG4gIGZvciAoaSA9IGxlbmd0aDsgaTsgLS1pKVxuICAgIGQuZGVzdFtkLmRlc3RMZW4rK10gPSBkLnNvdXJjZVtkLnNvdXJjZUluZGV4KytdO1xuXG4gIC8qIG1ha2Ugc3VyZSB3ZSBzdGFydCBuZXh0IGJsb2NrIG9uIGEgYnl0ZSBib3VuZGFyeSAqL1xuICBkLmJpdGNvdW50ID0gMDtcblxuICByZXR1cm4gVElORl9PSztcbn1cblxuLyogaW5mbGF0ZSBzdHJlYW0gZnJvbSBzb3VyY2UgdG8gZGVzdCAqL1xuZnVuY3Rpb24gdGluZl91bmNvbXByZXNzKHNvdXJjZSwgZGVzdCkge1xuICB2YXIgZCA9IG5ldyBEYXRhKHNvdXJjZSwgZGVzdCk7XG4gIHZhciBiZmluYWwsIGJ0eXBlLCByZXM7XG5cbiAgZG8ge1xuICAgIC8qIHJlYWQgZmluYWwgYmxvY2sgZmxhZyAqL1xuICAgIGJmaW5hbCA9IHRpbmZfZ2V0Yml0KGQpO1xuXG4gICAgLyogcmVhZCBibG9jayB0eXBlICgyIGJpdHMpICovXG4gICAgYnR5cGUgPSB0aW5mX3JlYWRfYml0cyhkLCAyLCAwKTtcblxuICAgIC8qIGRlY29tcHJlc3MgYmxvY2sgKi9cbiAgICBzd2l0Y2ggKGJ0eXBlKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICAgIC8qIGRlY29tcHJlc3MgdW5jb21wcmVzc2VkIGJsb2NrICovXG4gICAgICAgIHJlcyA9IHRpbmZfaW5mbGF0ZV91bmNvbXByZXNzZWRfYmxvY2soZCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAxOlxuICAgICAgICAvKiBkZWNvbXByZXNzIGJsb2NrIHdpdGggZml4ZWQgaHVmZm1hbiB0cmVlcyAqL1xuICAgICAgICByZXMgPSB0aW5mX2luZmxhdGVfYmxvY2tfZGF0YShkLCBzbHRyZWUsIHNkdHJlZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAyOlxuICAgICAgICAvKiBkZWNvbXByZXNzIGJsb2NrIHdpdGggZHluYW1pYyBodWZmbWFuIHRyZWVzICovXG4gICAgICAgIHRpbmZfZGVjb2RlX3RyZWVzKGQsIGQubHRyZWUsIGQuZHRyZWUpO1xuICAgICAgICByZXMgPSB0aW5mX2luZmxhdGVfYmxvY2tfZGF0YShkLCBkLmx0cmVlLCBkLmR0cmVlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXMgPSBUSU5GX0RBVEFfRVJST1I7XG4gICAgfVxuXG4gICAgaWYgKHJlcyAhPT0gVElORl9PSylcbiAgICAgIHRocm93IG5ldyBFcnJvcignRGF0YSBlcnJvcicpO1xuXG4gIH0gd2hpbGUgKCFiZmluYWwpO1xuXG4gIGlmIChkLmRlc3RMZW4gPCBkLmRlc3QubGVuZ3RoKSB7XG4gICAgaWYgKHR5cGVvZiBkLmRlc3Quc2xpY2UgPT09ICdmdW5jdGlvbicpXG4gICAgICByZXR1cm4gZC5kZXN0LnNsaWNlKDAsIGQuZGVzdExlbik7XG4gICAgZWxzZVxuICAgICAgcmV0dXJuIGQuZGVzdC5zdWJhcnJheSgwLCBkLmRlc3RMZW4pO1xuICB9XG4gIFxuICByZXR1cm4gZC5kZXN0O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLSAqXG4gKiAtLSBpbml0aWFsaXphdGlvbiAtLSAqXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBidWlsZCBmaXhlZCBodWZmbWFuIHRyZWVzICovXG50aW5mX2J1aWxkX2ZpeGVkX3RyZWVzKHNsdHJlZSwgc2R0cmVlKTtcblxuLyogYnVpbGQgZXh0cmEgYml0cyBhbmQgYmFzZSB0YWJsZXMgKi9cbnRpbmZfYnVpbGRfYml0c19iYXNlKGxlbmd0aF9iaXRzLCBsZW5ndGhfYmFzZSwgNCwgMyk7XG50aW5mX2J1aWxkX2JpdHNfYmFzZShkaXN0X2JpdHMsIGRpc3RfYmFzZSwgMiwgMSk7XG5cbi8qIGZpeCBhIHNwZWNpYWwgY2FzZSAqL1xubGVuZ3RoX2JpdHNbMjhdID0gMDtcbmxlbmd0aF9iYXNlWzI4XSA9IDI1ODtcblxubW9kdWxlLmV4cG9ydHMgPSB0aW5mX3VuY29tcHJlc3M7XG4iLCAiY29uc3QgaXNCaWdFbmRpYW4gPSAobmV3IFVpbnQ4QXJyYXkobmV3IFVpbnQzMkFycmF5KFsweDEyMzQ1Njc4XSkuYnVmZmVyKVswXSA9PT0gMHgxMik7XG5cbmNvbnN0IHN3YXAgPSAoYiwgbiwgbSkgPT4ge1xuICBsZXQgaSA9IGJbbl07XG4gIGJbbl0gPSBiW21dO1xuICBiW21dID0gaTtcbn07XG5cbmNvbnN0IHN3YXAzMiA9IGFycmF5ID0+IHtcbiAgY29uc3QgbGVuID0gYXJyYXkubGVuZ3RoO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSArPSA0KSB7XG4gICAgc3dhcChhcnJheSwgaSwgaSArIDMpO1xuICAgIHN3YXAoYXJyYXksIGkgKyAxLCBpICsgMik7XG4gIH1cbn07XG5cbmNvbnN0IHN3YXAzMkxFID0gYXJyYXkgPT4ge1xuICBpZiAoaXNCaWdFbmRpYW4pIHtcbiAgICBzd2FwMzIoYXJyYXkpO1xuICB9XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgc3dhcDMyTEU6IHN3YXAzMkxFXG59O1xuIiwgImNvbnN0IGluZmxhdGUgPSByZXF1aXJlKCd0aW55LWluZmxhdGUnKTtcbmNvbnN0IHsgc3dhcDMyTEUgfSA9IHJlcXVpcmUoJy4vc3dhcCcpO1xuXG4vLyBTaGlmdCBzaXplIGZvciBnZXR0aW5nIHRoZSBpbmRleC0xIHRhYmxlIG9mZnNldC5cbmNvbnN0IFNISUZUXzEgPSA2ICsgNTtcblxuLy8gU2hpZnQgc2l6ZSBmb3IgZ2V0dGluZyB0aGUgaW5kZXgtMiB0YWJsZSBvZmZzZXQuXG5jb25zdCBTSElGVF8yID0gNTtcblxuLy8gRGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSB0d28gc2hpZnQgc2l6ZXMsXG4vLyBmb3IgZ2V0dGluZyBhbiBpbmRleC0xIG9mZnNldCBmcm9tIGFuIGluZGV4LTIgb2Zmc2V0LiA2PTExLTVcbmNvbnN0IFNISUZUXzFfMiA9IFNISUZUXzEgLSBTSElGVF8yO1xuXG4vLyBOdW1iZXIgb2YgaW5kZXgtMSBlbnRyaWVzIGZvciB0aGUgQk1QLiAzMj0weDIwXG4vLyBUaGlzIHBhcnQgb2YgdGhlIGluZGV4LTEgdGFibGUgaXMgb21pdHRlZCBmcm9tIHRoZSBzZXJpYWxpemVkIGZvcm0uXG5jb25zdCBPTUlUVEVEX0JNUF9JTkRFWF8xX0xFTkdUSCA9IDB4MTAwMDAgPj4gU0hJRlRfMTtcblxuLy8gTnVtYmVyIG9mIGVudHJpZXMgaW4gYW4gaW5kZXgtMiBibG9jay4gNjQ9MHg0MFxuY29uc3QgSU5ERVhfMl9CTE9DS19MRU5HVEggPSAxIDw8IFNISUZUXzFfMjtcblxuLy8gTWFzayBmb3IgZ2V0dGluZyB0aGUgbG93ZXIgYml0cyBmb3IgdGhlIGluLWluZGV4LTItYmxvY2sgb2Zmc2V0LiAqL1xuY29uc3QgSU5ERVhfMl9NQVNLID0gSU5ERVhfMl9CTE9DS19MRU5HVEggLSAxO1xuXG4vLyBTaGlmdCBzaXplIGZvciBzaGlmdGluZyBsZWZ0IHRoZSBpbmRleCBhcnJheSB2YWx1ZXMuXG4vLyBJbmNyZWFzZXMgcG9zc2libGUgZGF0YSBzaXplIHdpdGggMTYtYml0IGluZGV4IHZhbHVlcyBhdCB0aGUgY29zdFxuLy8gb2YgY29tcGFjdGFiaWxpdHkuXG4vLyBUaGlzIHJlcXVpcmVzIGRhdGEgYmxvY2tzIHRvIGJlIGFsaWduZWQgYnkgREFUQV9HUkFOVUxBUklUWS5cbmNvbnN0IElOREVYX1NISUZUID0gMjtcblxuLy8gTnVtYmVyIG9mIGVudHJpZXMgaW4gYSBkYXRhIGJsb2NrLiAzMj0weDIwXG5jb25zdCBEQVRBX0JMT0NLX0xFTkdUSCA9IDEgPDwgU0hJRlRfMjtcblxuLy8gTWFzayBmb3IgZ2V0dGluZyB0aGUgbG93ZXIgYml0cyBmb3IgdGhlIGluLWRhdGEtYmxvY2sgb2Zmc2V0LlxuY29uc3QgREFUQV9NQVNLID0gREFUQV9CTE9DS19MRU5HVEggLSAxO1xuXG4vLyBUaGUgcGFydCBvZiB0aGUgaW5kZXgtMiB0YWJsZSBmb3IgVStEODAwLi5VK0RCRkYgc3RvcmVzIHZhbHVlcyBmb3Jcbi8vIGxlYWQgc3Vycm9nYXRlIGNvZGUgX3VuaXRzXyBub3QgY29kZSBfcG9pbnRzXy5cbi8vIFZhbHVlcyBmb3IgbGVhZCBzdXJyb2dhdGUgY29kZSBfcG9pbnRzXyBhcmUgaW5kZXhlZCB3aXRoIHRoaXMgcG9ydGlvbiBvZiB0aGUgdGFibGUuXG4vLyBMZW5ndGg9MzI9MHgyMD0weDQwMD4+U0hJRlRfMi4gKFRoZXJlIGFyZSAxMDI0PTB4NDAwIGxlYWQgc3Vycm9nYXRlcy4pXG5jb25zdCBMU0NQX0lOREVYXzJfT0ZGU0VUID0gMHgxMDAwMCA+PiBTSElGVF8yO1xuY29uc3QgTFNDUF9JTkRFWF8yX0xFTkdUSCA9IDB4NDAwID4+IFNISUZUXzI7XG5cbi8vIENvdW50IHRoZSBsZW5ndGhzIG9mIGJvdGggQk1QIHBpZWNlcy4gMjA4MD0weDgyMFxuY29uc3QgSU5ERVhfMl9CTVBfTEVOR1RIID0gTFNDUF9JTkRFWF8yX09GRlNFVCArIExTQ1BfSU5ERVhfMl9MRU5HVEg7XG5cbi8vIFRoZSAyLWJ5dGUgVVRGLTggdmVyc2lvbiBvZiB0aGUgaW5kZXgtMiB0YWJsZSBmb2xsb3dzIGF0IG9mZnNldCAyMDgwPTB4ODIwLlxuLy8gTGVuZ3RoIDMyPTB4MjAgZm9yIGxlYWQgYnl0ZXMgQzAuLkRGLCByZWdhcmRsZXNzIG9mIFNISUZUXzIuXG5jb25zdCBVVEY4XzJCX0lOREVYXzJfT0ZGU0VUID0gSU5ERVhfMl9CTVBfTEVOR1RIO1xuY29uc3QgVVRGOF8yQl9JTkRFWF8yX0xFTkdUSCA9IDB4ODAwID4+IDY7ICAvLyBVKzA4MDAgaXMgdGhlIGZpcnN0IGNvZGUgcG9pbnQgYWZ0ZXIgMi1ieXRlIFVURi04XG5cbi8vIFRoZSBpbmRleC0xIHRhYmxlLCBvbmx5IHVzZWQgZm9yIHN1cHBsZW1lbnRhcnkgY29kZSBwb2ludHMsIGF0IG9mZnNldCAyMTEyPTB4ODQwLlxuLy8gVmFyaWFibGUgbGVuZ3RoLCBmb3IgY29kZSBwb2ludHMgdXAgdG8gaGlnaFN0YXJ0LCB3aGVyZSB0aGUgbGFzdCBzaW5nbGUtdmFsdWUgcmFuZ2Ugc3RhcnRzLlxuLy8gTWF4aW11bSBsZW5ndGggNTEyPTB4MjAwPTB4MTAwMDAwPj5TSElGVF8xLlxuLy8gKEZvciAweDEwMDAwMCBzdXBwbGVtZW50YXJ5IGNvZGUgcG9pbnRzIFUrMTAwMDAuLlUrMTBmZmZmLilcbi8vXG4vLyBUaGUgcGFydCBvZiB0aGUgaW5kZXgtMiB0YWJsZSBmb3Igc3VwcGxlbWVudGFyeSBjb2RlIHBvaW50cyBzdGFydHNcbi8vIGFmdGVyIHRoaXMgaW5kZXgtMSB0YWJsZS5cbi8vXG4vLyBCb3RoIHRoZSBpbmRleC0xIHRhYmxlIGFuZCB0aGUgZm9sbG93aW5nIHBhcnQgb2YgdGhlIGluZGV4LTIgdGFibGVcbi8vIGFyZSBvbWl0dGVkIGNvbXBsZXRlbHkgaWYgdGhlcmUgaXMgb25seSBCTVAgZGF0YS5cbmNvbnN0IElOREVYXzFfT0ZGU0VUID0gVVRGOF8yQl9JTkRFWF8yX09GRlNFVCArIFVURjhfMkJfSU5ERVhfMl9MRU5HVEg7XG5cbi8vIFRoZSBhbGlnbm1lbnQgc2l6ZSBvZiBhIGRhdGEgYmxvY2suIEFsc28gdGhlIGdyYW51bGFyaXR5IGZvciBjb21wYWN0aW9uLlxuY29uc3QgREFUQV9HUkFOVUxBUklUWSA9IDEgPDwgSU5ERVhfU0hJRlQ7XG5cbmNsYXNzIFVuaWNvZGVUcmllIHtcbiAgY29uc3RydWN0b3IoZGF0YSkge1xuICAgIGNvbnN0IGlzQnVmZmVyID0gKHR5cGVvZiBkYXRhLnJlYWRVSW50MzJCRSA9PT0gJ2Z1bmN0aW9uJykgJiYgKHR5cGVvZiBkYXRhLnNsaWNlID09PSAnZnVuY3Rpb24nKTtcblxuICAgIGlmIChpc0J1ZmZlciB8fCBkYXRhIGluc3RhbmNlb2YgVWludDhBcnJheSkge1xuICAgICAgLy8gcmVhZCBiaW5hcnkgZm9ybWF0XG4gICAgICBsZXQgdW5jb21wcmVzc2VkTGVuZ3RoO1xuICAgICAgaWYgKGlzQnVmZmVyKSB7XG4gICAgICAgIHRoaXMuaGlnaFN0YXJ0ID0gZGF0YS5yZWFkVUludDMyTEUoMCk7XG4gICAgICAgIHRoaXMuZXJyb3JWYWx1ZSA9IGRhdGEucmVhZFVJbnQzMkxFKDQpO1xuICAgICAgICB1bmNvbXByZXNzZWRMZW5ndGggPSBkYXRhLnJlYWRVSW50MzJMRSg4KTtcbiAgICAgICAgZGF0YSA9IGRhdGEuc2xpY2UoMTIpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdmlldyA9IG5ldyBEYXRhVmlldyhkYXRhLmJ1ZmZlcik7XG4gICAgICAgIHRoaXMuaGlnaFN0YXJ0ID0gdmlldy5nZXRVaW50MzIoMCwgdHJ1ZSk7XG4gICAgICAgIHRoaXMuZXJyb3JWYWx1ZSA9IHZpZXcuZ2V0VWludDMyKDQsIHRydWUpO1xuICAgICAgICB1bmNvbXByZXNzZWRMZW5ndGggPSB2aWV3LmdldFVpbnQzMig4LCB0cnVlKTtcbiAgICAgICAgZGF0YSA9IGRhdGEuc3ViYXJyYXkoMTIpO1xuICAgICAgfVxuXG4gICAgICAvLyBkb3VibGUgaW5mbGF0ZSB0aGUgYWN0dWFsIHRyaWUgZGF0YVxuICAgICAgZGF0YSA9IGluZmxhdGUoZGF0YSwgbmV3IFVpbnQ4QXJyYXkodW5jb21wcmVzc2VkTGVuZ3RoKSk7XG4gICAgICBkYXRhID0gaW5mbGF0ZShkYXRhLCBuZXcgVWludDhBcnJheSh1bmNvbXByZXNzZWRMZW5ndGgpKTtcblxuICAgICAgLy8gc3dhcCBieXRlcyBmcm9tIGxpdHRsZS1lbmRpYW5cbiAgICAgIHN3YXAzMkxFKGRhdGEpO1xuXG4gICAgICB0aGlzLmRhdGEgPSBuZXcgVWludDMyQXJyYXkoZGF0YS5idWZmZXIpO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHByZS1wYXJzZWQgZGF0YVxuICAgICAgKHsgZGF0YTogdGhpcy5kYXRhLCBoaWdoU3RhcnQ6IHRoaXMuaGlnaFN0YXJ0LCBlcnJvclZhbHVlOiB0aGlzLmVycm9yVmFsdWUgfSA9IGRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIGdldChjb2RlUG9pbnQpIHtcbiAgICBsZXQgaW5kZXg7XG4gICAgaWYgKChjb2RlUG9pbnQgPCAwKSB8fCAoY29kZVBvaW50ID4gMHgxMGZmZmYpKSB7XG4gICAgICByZXR1cm4gdGhpcy5lcnJvclZhbHVlO1xuICAgIH1cblxuICAgIGlmICgoY29kZVBvaW50IDwgMHhkODAwKSB8fCAoKGNvZGVQb2ludCA+IDB4ZGJmZikgJiYgKGNvZGVQb2ludCA8PSAweGZmZmYpKSkge1xuICAgICAgLy8gT3JkaW5hcnkgQk1QIGNvZGUgcG9pbnQsIGV4Y2x1ZGluZyBsZWFkaW5nIHN1cnJvZ2F0ZXMuXG4gICAgICAvLyBCTVAgdXNlcyBhIHNpbmdsZSBsZXZlbCBsb29rdXAuICBCTVAgaW5kZXggc3RhcnRzIGF0IG9mZnNldCAwIGluIHRoZSBpbmRleC5cbiAgICAgIC8vIGRhdGEgaXMgc3RvcmVkIGluIHRoZSBpbmRleCBhcnJheSBpdHNlbGYuXG4gICAgICBpbmRleCA9ICh0aGlzLmRhdGFbY29kZVBvaW50ID4+IFNISUZUXzJdIDw8IElOREVYX1NISUZUKSArIChjb2RlUG9pbnQgJiBEQVRBX01BU0spO1xuICAgICAgcmV0dXJuIHRoaXMuZGF0YVtpbmRleF07XG4gICAgfVxuXG4gICAgaWYgKGNvZGVQb2ludCA8PSAweGZmZmYpIHtcbiAgICAgIC8vIExlYWQgU3Vycm9nYXRlIENvZGUgUG9pbnQuICBBIFNlcGFyYXRlIGluZGV4IHNlY3Rpb24gaXMgc3RvcmVkIGZvclxuICAgICAgLy8gbGVhZCBzdXJyb2dhdGUgY29kZSB1bml0cyBhbmQgY29kZSBwb2ludHMuXG4gICAgICAvLyAgIFRoZSBtYWluIGluZGV4IGhhcyB0aGUgY29kZSB1bml0IGRhdGEuXG4gICAgICAvLyAgIEZvciB0aGlzIGZ1bmN0aW9uLCB3ZSBuZWVkIHRoZSBjb2RlIHBvaW50IGRhdGEuXG4gICAgICBpbmRleCA9ICh0aGlzLmRhdGFbTFNDUF9JTkRFWF8yX09GRlNFVCArICgoY29kZVBvaW50IC0gMHhkODAwKSA+PiBTSElGVF8yKV0gPDwgSU5ERVhfU0hJRlQpICsgKGNvZGVQb2ludCAmIERBVEFfTUFTSyk7XG4gICAgICByZXR1cm4gdGhpcy5kYXRhW2luZGV4XTtcbiAgICB9XG5cbiAgICBpZiAoY29kZVBvaW50IDwgdGhpcy5oaWdoU3RhcnQpIHtcbiAgICAgIC8vIFN1cHBsZW1lbnRhbCBjb2RlIHBvaW50LCB1c2UgdHdvLWxldmVsIGxvb2t1cC5cbiAgICAgIGluZGV4ID0gdGhpcy5kYXRhWyhJTkRFWF8xX09GRlNFVCAtIE9NSVRURURfQk1QX0lOREVYXzFfTEVOR1RIKSArIChjb2RlUG9pbnQgPj4gU0hJRlRfMSldO1xuICAgICAgaW5kZXggPSB0aGlzLmRhdGFbaW5kZXggKyAoKGNvZGVQb2ludCA+PiBTSElGVF8yKSAmIElOREVYXzJfTUFTSyldO1xuICAgICAgaW5kZXggPSAoaW5kZXggPDwgSU5ERVhfU0hJRlQpICsgKGNvZGVQb2ludCAmIERBVEFfTUFTSyk7XG4gICAgICByZXR1cm4gdGhpcy5kYXRhW2luZGV4XTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5kYXRhW3RoaXMuZGF0YS5sZW5ndGggLSBEQVRBX0dSQU5VTEFSSVRZXTtcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IFVuaWNvZGVUcmllOyIsICJjb25zdCBJTklUSUFMX1NUQVRFID0gMTtcbmNvbnN0IEZBSUxfU1RBVEUgPSAwO1xuXG4vKipcbiAqIEEgU3RhdGVNYWNoaW5lIHJlcHJlc2VudHMgYSBkZXRlcm1pbmlzdGljIGZpbml0ZSBhdXRvbWF0b24uXG4gKiBJdCBjYW4gcGVyZm9ybSBtYXRjaGVzIG92ZXIgYSBzZXF1ZW5jZSBvZiB2YWx1ZXMsIHNpbWlsYXIgdG8gYSByZWd1bGFyIGV4cHJlc3Npb24uXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN0YXRlTWFjaGluZSB7XG4gIGNvbnN0cnVjdG9yKGRmYSkge1xuICAgIHRoaXMuc3RhdGVUYWJsZSA9IGRmYS5zdGF0ZVRhYmxlO1xuICAgIHRoaXMuYWNjZXB0aW5nID0gZGZhLmFjY2VwdGluZztcbiAgICB0aGlzLnRhZ3MgPSBkZmEudGFncztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIGl0ZXJhYmxlIG9iamVjdCB0aGF0IHlpZWxkcyBwYXR0ZXJuIG1hdGNoZXMgb3ZlciB0aGUgaW5wdXQgc2VxdWVuY2UuXG4gICAqIE1hdGNoZXMgYXJlIG9mIHRoZSBmb3JtIFtzdGFydEluZGV4LCBlbmRJbmRleCwgdGFnc10uXG4gICAqL1xuICBtYXRjaChzdHIpIHtcbiAgICBsZXQgc2VsZiA9IHRoaXM7XG4gICAgcmV0dXJuIHtcbiAgICAgICpbU3ltYm9sLml0ZXJhdG9yXSgpIHtcbiAgICAgICAgbGV0IHN0YXRlID0gSU5JVElBTF9TVEFURTtcbiAgICAgICAgbGV0IHN0YXJ0UnVuID0gbnVsbDtcbiAgICAgICAgbGV0IGxhc3RBY2NlcHRpbmcgPSBudWxsO1xuICAgICAgICBsZXQgbGFzdFN0YXRlID0gbnVsbDtcblxuICAgICAgICBmb3IgKGxldCBwID0gMDsgcCA8IHN0ci5sZW5ndGg7IHArKykge1xuICAgICAgICAgIGxldCBjID0gc3RyW3BdO1xuXG4gICAgICAgICAgbGFzdFN0YXRlID0gc3RhdGU7XG4gICAgICAgICAgc3RhdGUgPSBzZWxmLnN0YXRlVGFibGVbc3RhdGVdW2NdO1xuXG4gICAgICAgICAgaWYgKHN0YXRlID09PSBGQUlMX1NUQVRFKSB7XG4gICAgICAgICAgICAvLyB5aWVsZCB0aGUgbGFzdCBtYXRjaCBpZiBhbnlcbiAgICAgICAgICAgIGlmIChzdGFydFJ1biAhPSBudWxsICYmIGxhc3RBY2NlcHRpbmcgIT0gbnVsbCAmJiBsYXN0QWNjZXB0aW5nID49IHN0YXJ0UnVuKSB7XG4gICAgICAgICAgICAgIHlpZWxkIFtzdGFydFJ1biwgbGFzdEFjY2VwdGluZywgc2VsZi50YWdzW2xhc3RTdGF0ZV1dO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyByZXNldCB0aGUgc3RhdGUgYXMgaWYgd2Ugc3RhcnRlZCBvdmVyIGZyb20gdGhlIGluaXRpYWwgc3RhdGVcbiAgICAgICAgICAgIHN0YXRlID0gc2VsZi5zdGF0ZVRhYmxlW0lOSVRJQUxfU1RBVEVdW2NdO1xuICAgICAgICAgICAgc3RhcnRSdW4gPSBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIHN0YXJ0IGEgcnVuIGlmIG5vdCBpbiB0aGUgZmFpbHVyZSBzdGF0ZVxuICAgICAgICAgIGlmIChzdGF0ZSAhPT0gRkFJTF9TVEFURSAmJiBzdGFydFJ1biA9PSBudWxsKSB7XG4gICAgICAgICAgICBzdGFydFJ1biA9IHA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gaWYgYWNjZXB0aW5nLCBtYXJrIHRoZSBwb3RlbnRpYWwgbWF0Y2ggZW5kXG4gICAgICAgICAgaWYgKHNlbGYuYWNjZXB0aW5nW3N0YXRlXSkge1xuICAgICAgICAgICAgbGFzdEFjY2VwdGluZyA9IHA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gcmVzZXQgdGhlIHN0YXRlIHRvIHRoZSBpbml0aWFsIHN0YXRlIGlmIHdlIGdldCBpbnRvIHRoZSBmYWlsdXJlIHN0YXRlXG4gICAgICAgICAgaWYgKHN0YXRlID09PSBGQUlMX1NUQVRFKSB7XG4gICAgICAgICAgICBzdGF0ZSA9IElOSVRJQUxfU1RBVEU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8geWllbGQgdGhlIGxhc3QgbWF0Y2ggaWYgYW55XG4gICAgICAgIGlmIChzdGFydFJ1biAhPSBudWxsICYmIGxhc3RBY2NlcHRpbmcgIT0gbnVsbCAmJiBsYXN0QWNjZXB0aW5nID49IHN0YXJ0UnVuKSB7XG4gICAgICAgICAgeWllbGQgW3N0YXJ0UnVuLCBsYXN0QWNjZXB0aW5nLCBzZWxmLnRhZ3Nbc3RhdGVdXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRm9yIGVhY2ggbWF0Y2ggb3ZlciB0aGUgaW5wdXQgc2VxdWVuY2UsIGFjdGlvbiBmdW5jdGlvbnMgbWF0Y2hpbmdcbiAgICogdGhlIHRhZyBkZWZpbml0aW9ucyBpbiB0aGUgaW5wdXQgcGF0dGVybiBhcmUgY2FsbGVkIHdpdGggdGhlIHN0YXJ0SW5kZXgsXG4gICAqIGVuZEluZGV4LCBhbmQgc3ViLW1hdGNoIHNlcXVlbmNlLlxuICAgKi9cbiAgYXBwbHkoc3RyLCBhY3Rpb25zKSB7XG4gICAgZm9yIChsZXQgW3N0YXJ0LCBlbmQsIHRhZ3NdIG9mIHRoaXMubWF0Y2goc3RyKSkge1xuICAgICAgZm9yIChsZXQgdGFnIG9mIHRhZ3MpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBhY3Rpb25zW3RhZ10gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICBhY3Rpb25zW3RhZ10oc3RhcnQsIGVuZCwgc3RyLnNsaWNlKHN0YXJ0LCBlbmQgKyAxKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsICJ2YXIgY2xvbmUgPSAoZnVuY3Rpb24oKSB7XG4ndXNlIHN0cmljdCc7XG5cbmZ1bmN0aW9uIF9pbnN0YW5jZW9mKG9iaiwgdHlwZSkge1xuICByZXR1cm4gdHlwZSAhPSBudWxsICYmIG9iaiBpbnN0YW5jZW9mIHR5cGU7XG59XG5cbnZhciBuYXRpdmVNYXA7XG50cnkge1xuICBuYXRpdmVNYXAgPSBNYXA7XG59IGNhdGNoKF8pIHtcbiAgLy8gbWF5YmUgYSByZWZlcmVuY2UgZXJyb3IgYmVjYXVzZSBubyBgTWFwYC4gR2l2ZSBpdCBhIGR1bW15IHZhbHVlIHRoYXQgbm9cbiAgLy8gdmFsdWUgd2lsbCBldmVyIGJlIGFuIGluc3RhbmNlb2YuXG4gIG5hdGl2ZU1hcCA9IGZ1bmN0aW9uKCkge307XG59XG5cbnZhciBuYXRpdmVTZXQ7XG50cnkge1xuICBuYXRpdmVTZXQgPSBTZXQ7XG59IGNhdGNoKF8pIHtcbiAgbmF0aXZlU2V0ID0gZnVuY3Rpb24oKSB7fTtcbn1cblxudmFyIG5hdGl2ZVByb21pc2U7XG50cnkge1xuICBuYXRpdmVQcm9taXNlID0gUHJvbWlzZTtcbn0gY2F0Y2goXykge1xuICBuYXRpdmVQcm9taXNlID0gZnVuY3Rpb24oKSB7fTtcbn1cblxuLyoqXG4gKiBDbG9uZXMgKGNvcGllcykgYW4gT2JqZWN0IHVzaW5nIGRlZXAgY29weWluZy5cbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIHN1cHBvcnRzIGNpcmN1bGFyIHJlZmVyZW5jZXMgYnkgZGVmYXVsdCwgYnV0IGlmIHlvdSBhcmUgY2VydGFpblxuICogdGhlcmUgYXJlIG5vIGNpcmN1bGFyIHJlZmVyZW5jZXMgaW4geW91ciBvYmplY3QsIHlvdSBjYW4gc2F2ZSBzb21lIENQVSB0aW1lXG4gKiBieSBjYWxsaW5nIGNsb25lKG9iaiwgZmFsc2UpLlxuICpcbiAqIENhdXRpb246IGlmIGBjaXJjdWxhcmAgaXMgZmFsc2UgYW5kIGBwYXJlbnRgIGNvbnRhaW5zIGNpcmN1bGFyIHJlZmVyZW5jZXMsXG4gKiB5b3VyIHByb2dyYW0gbWF5IGVudGVyIGFuIGluZmluaXRlIGxvb3AgYW5kIGNyYXNoLlxuICpcbiAqIEBwYXJhbSBgcGFyZW50YCAtIHRoZSBvYmplY3QgdG8gYmUgY2xvbmVkXG4gKiBAcGFyYW0gYGNpcmN1bGFyYCAtIHNldCB0byB0cnVlIGlmIHRoZSBvYmplY3QgdG8gYmUgY2xvbmVkIG1heSBjb250YWluXG4gKiAgICBjaXJjdWxhciByZWZlcmVuY2VzLiAob3B0aW9uYWwgLSB0cnVlIGJ5IGRlZmF1bHQpXG4gKiBAcGFyYW0gYGRlcHRoYCAtIHNldCB0byBhIG51bWJlciBpZiB0aGUgb2JqZWN0IGlzIG9ubHkgdG8gYmUgY2xvbmVkIHRvXG4gKiAgICBhIHBhcnRpY3VsYXIgZGVwdGguIChvcHRpb25hbCAtIGRlZmF1bHRzIHRvIEluZmluaXR5KVxuICogQHBhcmFtIGBwcm90b3R5cGVgIC0gc2V0cyB0aGUgcHJvdG90eXBlIHRvIGJlIHVzZWQgd2hlbiBjbG9uaW5nIGFuIG9iamVjdC5cbiAqICAgIChvcHRpb25hbCAtIGRlZmF1bHRzIHRvIHBhcmVudCBwcm90b3R5cGUpLlxuICogQHBhcmFtIGBpbmNsdWRlTm9uRW51bWVyYWJsZWAgLSBzZXQgdG8gdHJ1ZSBpZiB0aGUgbm9uLWVudW1lcmFibGUgcHJvcGVydGllc1xuICogICAgc2hvdWxkIGJlIGNsb25lZCBhcyB3ZWxsLiBOb24tZW51bWVyYWJsZSBwcm9wZXJ0aWVzIG9uIHRoZSBwcm90b3R5cGVcbiAqICAgIGNoYWluIHdpbGwgYmUgaWdub3JlZC4gKG9wdGlvbmFsIC0gZmFsc2UgYnkgZGVmYXVsdClcbiovXG5mdW5jdGlvbiBjbG9uZShwYXJlbnQsIGNpcmN1bGFyLCBkZXB0aCwgcHJvdG90eXBlLCBpbmNsdWRlTm9uRW51bWVyYWJsZSkge1xuICBpZiAodHlwZW9mIGNpcmN1bGFyID09PSAnb2JqZWN0Jykge1xuICAgIGRlcHRoID0gY2lyY3VsYXIuZGVwdGg7XG4gICAgcHJvdG90eXBlID0gY2lyY3VsYXIucHJvdG90eXBlO1xuICAgIGluY2x1ZGVOb25FbnVtZXJhYmxlID0gY2lyY3VsYXIuaW5jbHVkZU5vbkVudW1lcmFibGU7XG4gICAgY2lyY3VsYXIgPSBjaXJjdWxhci5jaXJjdWxhcjtcbiAgfVxuICAvLyBtYWludGFpbiB0d28gYXJyYXlzIGZvciBjaXJjdWxhciByZWZlcmVuY2VzLCB3aGVyZSBjb3JyZXNwb25kaW5nIHBhcmVudHNcbiAgLy8gYW5kIGNoaWxkcmVuIGhhdmUgdGhlIHNhbWUgaW5kZXhcbiAgdmFyIGFsbFBhcmVudHMgPSBbXTtcbiAgdmFyIGFsbENoaWxkcmVuID0gW107XG5cbiAgdmFyIHVzZUJ1ZmZlciA9IHR5cGVvZiBCdWZmZXIgIT0gJ3VuZGVmaW5lZCc7XG5cbiAgaWYgKHR5cGVvZiBjaXJjdWxhciA9PSAndW5kZWZpbmVkJylcbiAgICBjaXJjdWxhciA9IHRydWU7XG5cbiAgaWYgKHR5cGVvZiBkZXB0aCA9PSAndW5kZWZpbmVkJylcbiAgICBkZXB0aCA9IEluZmluaXR5O1xuXG4gIC8vIHJlY3Vyc2UgdGhpcyBmdW5jdGlvbiBzbyB3ZSBkb24ndCByZXNldCBhbGxQYXJlbnRzIGFuZCBhbGxDaGlsZHJlblxuICBmdW5jdGlvbiBfY2xvbmUocGFyZW50LCBkZXB0aCkge1xuICAgIC8vIGNsb25pbmcgbnVsbCBhbHdheXMgcmV0dXJucyBudWxsXG4gICAgaWYgKHBhcmVudCA9PT0gbnVsbClcbiAgICAgIHJldHVybiBudWxsO1xuXG4gICAgaWYgKGRlcHRoID09PSAwKVxuICAgICAgcmV0dXJuIHBhcmVudDtcblxuICAgIHZhciBjaGlsZDtcbiAgICB2YXIgcHJvdG87XG4gICAgaWYgKHR5cGVvZiBwYXJlbnQgIT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBwYXJlbnQ7XG4gICAgfVxuXG4gICAgaWYgKF9pbnN0YW5jZW9mKHBhcmVudCwgbmF0aXZlTWFwKSkge1xuICAgICAgY2hpbGQgPSBuZXcgbmF0aXZlTWFwKCk7XG4gICAgfSBlbHNlIGlmIChfaW5zdGFuY2VvZihwYXJlbnQsIG5hdGl2ZVNldCkpIHtcbiAgICAgIGNoaWxkID0gbmV3IG5hdGl2ZVNldCgpO1xuICAgIH0gZWxzZSBpZiAoX2luc3RhbmNlb2YocGFyZW50LCBuYXRpdmVQcm9taXNlKSkge1xuICAgICAgY2hpbGQgPSBuZXcgbmF0aXZlUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIHBhcmVudC50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgcmVzb2x2ZShfY2xvbmUodmFsdWUsIGRlcHRoIC0gMSkpO1xuICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHtcbiAgICAgICAgICByZWplY3QoX2Nsb25lKGVyciwgZGVwdGggLSAxKSk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChjbG9uZS5fX2lzQXJyYXkocGFyZW50KSkge1xuICAgICAgY2hpbGQgPSBbXTtcbiAgICB9IGVsc2UgaWYgKGNsb25lLl9faXNSZWdFeHAocGFyZW50KSkge1xuICAgICAgY2hpbGQgPSBuZXcgUmVnRXhwKHBhcmVudC5zb3VyY2UsIF9fZ2V0UmVnRXhwRmxhZ3MocGFyZW50KSk7XG4gICAgICBpZiAocGFyZW50Lmxhc3RJbmRleCkgY2hpbGQubGFzdEluZGV4ID0gcGFyZW50Lmxhc3RJbmRleDtcbiAgICB9IGVsc2UgaWYgKGNsb25lLl9faXNEYXRlKHBhcmVudCkpIHtcbiAgICAgIGNoaWxkID0gbmV3IERhdGUocGFyZW50LmdldFRpbWUoKSk7XG4gICAgfSBlbHNlIGlmICh1c2VCdWZmZXIgJiYgQnVmZmVyLmlzQnVmZmVyKHBhcmVudCkpIHtcbiAgICAgIGlmIChCdWZmZXIuYWxsb2NVbnNhZmUpIHtcbiAgICAgICAgLy8gTm9kZS5qcyA+PSA0LjUuMFxuICAgICAgICBjaGlsZCA9IEJ1ZmZlci5hbGxvY1Vuc2FmZShwYXJlbnQubGVuZ3RoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE9sZGVyIE5vZGUuanMgdmVyc2lvbnNcbiAgICAgICAgY2hpbGQgPSBuZXcgQnVmZmVyKHBhcmVudC5sZW5ndGgpO1xuICAgICAgfVxuICAgICAgcGFyZW50LmNvcHkoY2hpbGQpO1xuICAgICAgcmV0dXJuIGNoaWxkO1xuICAgIH0gZWxzZSBpZiAoX2luc3RhbmNlb2YocGFyZW50LCBFcnJvcikpIHtcbiAgICAgIGNoaWxkID0gT2JqZWN0LmNyZWF0ZShwYXJlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodHlwZW9mIHByb3RvdHlwZSA9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihwYXJlbnQpO1xuICAgICAgICBjaGlsZCA9IE9iamVjdC5jcmVhdGUocHJvdG8pO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIGNoaWxkID0gT2JqZWN0LmNyZWF0ZShwcm90b3R5cGUpO1xuICAgICAgICBwcm90byA9IHByb3RvdHlwZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY2lyY3VsYXIpIHtcbiAgICAgIHZhciBpbmRleCA9IGFsbFBhcmVudHMuaW5kZXhPZihwYXJlbnQpO1xuXG4gICAgICBpZiAoaW5kZXggIT0gLTEpIHtcbiAgICAgICAgcmV0dXJuIGFsbENoaWxkcmVuW2luZGV4XTtcbiAgICAgIH1cbiAgICAgIGFsbFBhcmVudHMucHVzaChwYXJlbnQpO1xuICAgICAgYWxsQ2hpbGRyZW4ucHVzaChjaGlsZCk7XG4gICAgfVxuXG4gICAgaWYgKF9pbnN0YW5jZW9mKHBhcmVudCwgbmF0aXZlTWFwKSkge1xuICAgICAgcGFyZW50LmZvckVhY2goZnVuY3Rpb24odmFsdWUsIGtleSkge1xuICAgICAgICB2YXIga2V5Q2hpbGQgPSBfY2xvbmUoa2V5LCBkZXB0aCAtIDEpO1xuICAgICAgICB2YXIgdmFsdWVDaGlsZCA9IF9jbG9uZSh2YWx1ZSwgZGVwdGggLSAxKTtcbiAgICAgICAgY2hpbGQuc2V0KGtleUNoaWxkLCB2YWx1ZUNoaWxkKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoX2luc3RhbmNlb2YocGFyZW50LCBuYXRpdmVTZXQpKSB7XG4gICAgICBwYXJlbnQuZm9yRWFjaChmdW5jdGlvbih2YWx1ZSkge1xuICAgICAgICB2YXIgZW50cnlDaGlsZCA9IF9jbG9uZSh2YWx1ZSwgZGVwdGggLSAxKTtcbiAgICAgICAgY2hpbGQuYWRkKGVudHJ5Q2hpbGQpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaSBpbiBwYXJlbnQpIHtcbiAgICAgIHZhciBhdHRycztcbiAgICAgIGlmIChwcm90bykge1xuICAgICAgICBhdHRycyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocHJvdG8sIGkpO1xuICAgICAgfVxuXG4gICAgICBpZiAoYXR0cnMgJiYgYXR0cnMuc2V0ID09IG51bGwpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBjaGlsZFtpXSA9IF9jbG9uZShwYXJlbnRbaV0sIGRlcHRoIC0gMSk7XG4gICAgfVxuXG4gICAgaWYgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpIHtcbiAgICAgIHZhciBzeW1ib2xzID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhwYXJlbnQpO1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzeW1ib2xzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIC8vIERvbid0IG5lZWQgdG8gd29ycnkgYWJvdXQgY2xvbmluZyBhIHN5bWJvbCBiZWNhdXNlIGl0IGlzIGEgcHJpbWl0aXZlLFxuICAgICAgICAvLyBsaWtlIGEgbnVtYmVyIG9yIHN0cmluZy5cbiAgICAgICAgdmFyIHN5bWJvbCA9IHN5bWJvbHNbaV07XG4gICAgICAgIHZhciBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihwYXJlbnQsIHN5bWJvbCk7XG4gICAgICAgIGlmIChkZXNjcmlwdG9yICYmICFkZXNjcmlwdG9yLmVudW1lcmFibGUgJiYgIWluY2x1ZGVOb25FbnVtZXJhYmxlKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgY2hpbGRbc3ltYm9sXSA9IF9jbG9uZShwYXJlbnRbc3ltYm9sXSwgZGVwdGggLSAxKTtcbiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLmVudW1lcmFibGUpIHtcbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoY2hpbGQsIHN5bWJvbCwge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogZmFsc2VcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChpbmNsdWRlTm9uRW51bWVyYWJsZSkge1xuICAgICAgdmFyIGFsbFByb3BlcnR5TmFtZXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhwYXJlbnQpO1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhbGxQcm9wZXJ0eU5hbWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBwcm9wZXJ0eU5hbWUgPSBhbGxQcm9wZXJ0eU5hbWVzW2ldO1xuICAgICAgICB2YXIgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocGFyZW50LCBwcm9wZXJ0eU5hbWUpO1xuICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLmVudW1lcmFibGUpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBjaGlsZFtwcm9wZXJ0eU5hbWVdID0gX2Nsb25lKHBhcmVudFtwcm9wZXJ0eU5hbWVdLCBkZXB0aCAtIDEpO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoY2hpbGQsIHByb3BlcnR5TmFtZSwge1xuICAgICAgICAgIGVudW1lcmFibGU6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjaGlsZDtcbiAgfVxuXG4gIHJldHVybiBfY2xvbmUocGFyZW50LCBkZXB0aCk7XG59XG5cbi8qKlxuICogU2ltcGxlIGZsYXQgY2xvbmUgdXNpbmcgcHJvdG90eXBlLCBhY2NlcHRzIG9ubHkgb2JqZWN0cywgdXNlZnVsbCBmb3IgcHJvcGVydHlcbiAqIG92ZXJyaWRlIG9uIEZMQVQgY29uZmlndXJhdGlvbiBvYmplY3QgKG5vIG5lc3RlZCBwcm9wcykuXG4gKlxuICogVVNFIFdJVEggQ0FVVElPTiEgVGhpcyBtYXkgbm90IGJlaGF2ZSBhcyB5b3Ugd2lzaCBpZiB5b3UgZG8gbm90IGtub3cgaG93IHRoaXNcbiAqIHdvcmtzLlxuICovXG5jbG9uZS5jbG9uZVByb3RvdHlwZSA9IGZ1bmN0aW9uIGNsb25lUHJvdG90eXBlKHBhcmVudCkge1xuICBpZiAocGFyZW50ID09PSBudWxsKVxuICAgIHJldHVybiBudWxsO1xuXG4gIHZhciBjID0gZnVuY3Rpb24gKCkge307XG4gIGMucHJvdG90eXBlID0gcGFyZW50O1xuICByZXR1cm4gbmV3IGMoKTtcbn07XG5cbi8vIHByaXZhdGUgdXRpbGl0eSBmdW5jdGlvbnNcblxuZnVuY3Rpb24gX19vYmpUb1N0cihvKSB7XG4gIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobyk7XG59XG5jbG9uZS5fX29ialRvU3RyID0gX19vYmpUb1N0cjtcblxuZnVuY3Rpb24gX19pc0RhdGUobykge1xuICByZXR1cm4gdHlwZW9mIG8gPT09ICdvYmplY3QnICYmIF9fb2JqVG9TdHIobykgPT09ICdbb2JqZWN0IERhdGVdJztcbn1cbmNsb25lLl9faXNEYXRlID0gX19pc0RhdGU7XG5cbmZ1bmN0aW9uIF9faXNBcnJheShvKSB7XG4gIHJldHVybiB0eXBlb2YgbyA9PT0gJ29iamVjdCcgJiYgX19vYmpUb1N0cihvKSA9PT0gJ1tvYmplY3QgQXJyYXldJztcbn1cbmNsb25lLl9faXNBcnJheSA9IF9faXNBcnJheTtcblxuZnVuY3Rpb24gX19pc1JlZ0V4cChvKSB7XG4gIHJldHVybiB0eXBlb2YgbyA9PT0gJ29iamVjdCcgJiYgX19vYmpUb1N0cihvKSA9PT0gJ1tvYmplY3QgUmVnRXhwXSc7XG59XG5jbG9uZS5fX2lzUmVnRXhwID0gX19pc1JlZ0V4cDtcblxuZnVuY3Rpb24gX19nZXRSZWdFeHBGbGFncyhyZSkge1xuICB2YXIgZmxhZ3MgPSAnJztcbiAgaWYgKHJlLmdsb2JhbCkgZmxhZ3MgKz0gJ2cnO1xuICBpZiAocmUuaWdub3JlQ2FzZSkgZmxhZ3MgKz0gJ2knO1xuICBpZiAocmUubXVsdGlsaW5lKSBmbGFncyArPSAnbSc7XG4gIHJldHVybiBmbGFncztcbn1cbmNsb25lLl9fZ2V0UmVnRXhwRmxhZ3MgPSBfX2dldFJlZ0V4cEZsYWdzO1xuXG5yZXR1cm4gY2xvbmU7XG59KSgpO1xuXG5pZiAodHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSBjbG9uZTtcbn1cbiIsICJmdW5jdGlvbiBCcm90bGlJbnB1dChidWZmZXIpIHtcbiAgdGhpcy5idWZmZXIgPSBidWZmZXI7XG4gIHRoaXMucG9zID0gMDtcbn1cblxuQnJvdGxpSW5wdXQucHJvdG90eXBlLnJlYWQgPSBmdW5jdGlvbihidWYsIGksIGNvdW50KSB7XG4gIGlmICh0aGlzLnBvcyArIGNvdW50ID4gdGhpcy5idWZmZXIubGVuZ3RoKSB7XG4gICAgY291bnQgPSB0aGlzLmJ1ZmZlci5sZW5ndGggLSB0aGlzLnBvcztcbiAgfVxuICBcbiAgZm9yICh2YXIgcCA9IDA7IHAgPCBjb3VudDsgcCsrKVxuICAgIGJ1ZltpICsgcF0gPSB0aGlzLmJ1ZmZlclt0aGlzLnBvcyArIHBdO1xuICBcbiAgdGhpcy5wb3MgKz0gY291bnQ7XG4gIHJldHVybiBjb3VudDtcbn1cblxuZXhwb3J0cy5Ccm90bGlJbnB1dCA9IEJyb3RsaUlucHV0O1xuXG5mdW5jdGlvbiBCcm90bGlPdXRwdXQoYnVmKSB7XG4gIHRoaXMuYnVmZmVyID0gYnVmO1xuICB0aGlzLnBvcyA9IDA7XG59XG5cbkJyb3RsaU91dHB1dC5wcm90b3R5cGUud3JpdGUgPSBmdW5jdGlvbihidWYsIGNvdW50KSB7XG4gIGlmICh0aGlzLnBvcyArIGNvdW50ID4gdGhpcy5idWZmZXIubGVuZ3RoKVxuICAgIHRocm93IG5ldyBFcnJvcignT3V0cHV0IGJ1ZmZlciBpcyBub3QgbGFyZ2UgZW5vdWdoJyk7XG4gIFxuICB0aGlzLmJ1ZmZlci5zZXQoYnVmLnN1YmFycmF5KDAsIGNvdW50KSwgdGhpcy5wb3MpO1xuICB0aGlzLnBvcyArPSBjb3VudDtcbiAgcmV0dXJuIGNvdW50O1xufTtcblxuZXhwb3J0cy5Ccm90bGlPdXRwdXQgPSBCcm90bGlPdXRwdXQ7XG4iLCAiLyogQ29weXJpZ2h0IDIwMTMgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cblxuICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuICAgQml0IHJlYWRpbmcgaGVscGVyc1xuKi9cblxudmFyIEJST1RMSV9SRUFEX1NJWkUgPSA0MDk2O1xudmFyIEJST1RMSV9JQlVGX1NJWkUgPSAgKDIgKiBCUk9UTElfUkVBRF9TSVpFICsgMzIpO1xudmFyIEJST1RMSV9JQlVGX01BU0sgPSAgKDIgKiBCUk9UTElfUkVBRF9TSVpFIC0gMSk7XG5cbnZhciBrQml0TWFzayA9IG5ldyBVaW50MzJBcnJheShbXG4gIDAsIDEsIDMsIDcsIDE1LCAzMSwgNjMsIDEyNywgMjU1LCA1MTEsIDEwMjMsIDIwNDcsIDQwOTUsIDgxOTEsIDE2MzgzLCAzMjc2NyxcbiAgNjU1MzUsIDEzMTA3MSwgMjYyMTQzLCA1MjQyODcsIDEwNDg1NzUsIDIwOTcxNTEsIDQxOTQzMDMsIDgzODg2MDcsIDE2Nzc3MjE1XG5dKTtcblxuLyogSW5wdXQgYnl0ZSBidWZmZXIsIGNvbnNpc3Qgb2YgYSByaW5nYnVmZmVyIGFuZCBhIFwic2xhY2tcIiByZWdpb24gd2hlcmUgKi9cbi8qIGJ5dGVzIGZyb20gdGhlIHN0YXJ0IG9mIHRoZSByaW5nYnVmZmVyIGFyZSBjb3BpZWQuICovXG5mdW5jdGlvbiBCcm90bGlCaXRSZWFkZXIoaW5wdXQpIHtcbiAgdGhpcy5idWZfID0gbmV3IFVpbnQ4QXJyYXkoQlJPVExJX0lCVUZfU0laRSk7XG4gIHRoaXMuaW5wdXRfID0gaW5wdXQ7ICAgIC8qIGlucHV0IGNhbGxiYWNrICovXG4gIFxuICB0aGlzLnJlc2V0KCk7XG59XG5cbkJyb3RsaUJpdFJlYWRlci5SRUFEX1NJWkUgPSBCUk9UTElfUkVBRF9TSVpFO1xuQnJvdGxpQml0UmVhZGVyLklCVUZfTUFTSyA9IEJST1RMSV9JQlVGX01BU0s7XG5cbkJyb3RsaUJpdFJlYWRlci5wcm90b3R5cGUucmVzZXQgPSBmdW5jdGlvbigpIHtcbiAgdGhpcy5idWZfcHRyXyA9IDA7ICAgICAgLyogbmV4dCBpbnB1dCB3aWxsIHdyaXRlIGhlcmUgKi9cbiAgdGhpcy52YWxfID0gMDsgICAgICAgICAgLyogcHJlLWZldGNoZWQgYml0cyAqL1xuICB0aGlzLnBvc18gPSAwOyAgICAgICAgICAvKiBieXRlIHBvc2l0aW9uIGluIHN0cmVhbSAqL1xuICB0aGlzLmJpdF9wb3NfID0gMDsgICAgICAvKiBjdXJyZW50IGJpdC1yZWFkaW5nIHBvc2l0aW9uIGluIHZhbF8gKi9cbiAgdGhpcy5iaXRfZW5kX3Bvc18gPSAwOyAgLyogYml0LXJlYWRpbmcgZW5kIHBvc2l0aW9uIGZyb20gTFNCIG9mIHZhbF8gKi9cbiAgdGhpcy5lb3NfID0gMDsgICAgICAgICAgLyogaW5wdXQgc3RyZWFtIGlzIGZpbmlzaGVkICovXG4gIFxuICB0aGlzLnJlYWRNb3JlSW5wdXQoKTtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCA0OyBpKyspIHtcbiAgICB0aGlzLnZhbF8gfD0gdGhpcy5idWZfW3RoaXMucG9zX10gPDwgKDggKiBpKTtcbiAgICArK3RoaXMucG9zXztcbiAgfVxuICBcbiAgcmV0dXJuIHRoaXMuYml0X2VuZF9wb3NfID4gMDtcbn07XG5cbi8qIEZpbGxzIHVwIHRoZSBpbnB1dCByaW5nYnVmZmVyIGJ5IGNhbGxpbmcgdGhlIGlucHV0IGNhbGxiYWNrLlxuXG4gICBEb2VzIG5vdGhpbmcgaWYgdGhlcmUgYXJlIGF0IGxlYXN0IDMyIGJ5dGVzIHByZXNlbnQgYWZ0ZXIgY3VycmVudCBwb3NpdGlvbi5cblxuICAgUmV0dXJucyAwIGlmIGVpdGhlcjpcbiAgICAtIHRoZSBpbnB1dCBjYWxsYmFjayByZXR1cm5lZCBhbiBlcnJvciwgb3JcbiAgICAtIHRoZXJlIGlzIG5vIG1vcmUgaW5wdXQgYW5kIHRoZSBwb3NpdGlvbiBpcyBwYXN0IHRoZSBlbmQgb2YgdGhlIHN0cmVhbS5cblxuICAgQWZ0ZXIgZW5jb3VudGVyaW5nIHRoZSBlbmQgb2YgdGhlIGlucHV0IHN0cmVhbSwgMzIgYWRkaXRpb25hbCB6ZXJvIGJ5dGVzIGFyZVxuICAgY29waWVkIHRvIHRoZSByaW5nYnVmZmVyLCB0aGVyZWZvcmUgaXQgaXMgc2FmZSB0byBjYWxsIHRoaXMgZnVuY3Rpb24gYWZ0ZXJcbiAgIGV2ZXJ5IDMyIGJ5dGVzIG9mIGlucHV0IGlzIHJlYWQuXG4qL1xuQnJvdGxpQml0UmVhZGVyLnByb3RvdHlwZS5yZWFkTW9yZUlucHV0ID0gZnVuY3Rpb24oKSB7XG4gIGlmICh0aGlzLmJpdF9lbmRfcG9zXyA+IDI1Nikge1xuICAgIHJldHVybjtcbiAgfSBlbHNlIGlmICh0aGlzLmVvc18pIHtcbiAgICBpZiAodGhpcy5iaXRfcG9zXyA+IHRoaXMuYml0X2VuZF9wb3NfKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmV4cGVjdGVkIGVuZCBvZiBpbnB1dCAnICsgdGhpcy5iaXRfcG9zXyArICcgJyArIHRoaXMuYml0X2VuZF9wb3NfKTtcbiAgfSBlbHNlIHtcbiAgICB2YXIgZHN0ID0gdGhpcy5idWZfcHRyXztcbiAgICB2YXIgYnl0ZXNfcmVhZCA9IHRoaXMuaW5wdXRfLnJlYWQodGhpcy5idWZfLCBkc3QsIEJST1RMSV9SRUFEX1NJWkUpO1xuICAgIGlmIChieXRlc19yZWFkIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmV4cGVjdGVkIGVuZCBvZiBpbnB1dCcpO1xuICAgIH1cbiAgICBcbiAgICBpZiAoYnl0ZXNfcmVhZCA8IEJST1RMSV9SRUFEX1NJWkUpIHtcbiAgICAgIHRoaXMuZW9zXyA9IDE7XG4gICAgICAvKiBTdG9yZSAzMiBieXRlcyBvZiB6ZXJvIGFmdGVyIHRoZSBzdHJlYW0gZW5kLiAqL1xuICAgICAgZm9yICh2YXIgcCA9IDA7IHAgPCAzMjsgcCsrKVxuICAgICAgICB0aGlzLmJ1Zl9bZHN0ICsgYnl0ZXNfcmVhZCArIHBdID0gMDtcbiAgICB9XG4gICAgXG4gICAgaWYgKGRzdCA9PT0gMCkge1xuICAgICAgLyogQ29weSB0aGUgaGVhZCBvZiB0aGUgcmluZ2J1ZmZlciB0byB0aGUgc2xhY2sgcmVnaW9uLiAqL1xuICAgICAgZm9yICh2YXIgcCA9IDA7IHAgPCAzMjsgcCsrKVxuICAgICAgICB0aGlzLmJ1Zl9bKEJST1RMSV9SRUFEX1NJWkUgPDwgMSkgKyBwXSA9IHRoaXMuYnVmX1twXTtcblxuICAgICAgdGhpcy5idWZfcHRyXyA9IEJST1RMSV9SRUFEX1NJWkU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYnVmX3B0cl8gPSAwO1xuICAgIH1cbiAgICBcbiAgICB0aGlzLmJpdF9lbmRfcG9zXyArPSBieXRlc19yZWFkIDw8IDM7XG4gIH1cbn07XG5cbi8qIEd1YXJhbnRlZXMgdGhhdCB0aGVyZSBhcmUgYXQgbGVhc3QgMjQgYml0cyBpbiB0aGUgYnVmZmVyLiAqL1xuQnJvdGxpQml0UmVhZGVyLnByb3RvdHlwZS5maWxsQml0V2luZG93ID0gZnVuY3Rpb24oKSB7ICAgIFxuICB3aGlsZSAodGhpcy5iaXRfcG9zXyA+PSA4KSB7XG4gICAgdGhpcy52YWxfID4+Pj0gODtcbiAgICB0aGlzLnZhbF8gfD0gdGhpcy5idWZfW3RoaXMucG9zXyAmIEJST1RMSV9JQlVGX01BU0tdIDw8IDI0O1xuICAgICsrdGhpcy5wb3NfO1xuICAgIHRoaXMuYml0X3Bvc18gPSB0aGlzLmJpdF9wb3NfIC0gOCA+Pj4gMDtcbiAgICB0aGlzLmJpdF9lbmRfcG9zXyA9IHRoaXMuYml0X2VuZF9wb3NfIC0gOCA+Pj4gMDtcbiAgfVxufTtcblxuLyogUmVhZHMgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgYml0cyBmcm9tIFJlYWQgQnVmZmVyLiAqL1xuQnJvdGxpQml0UmVhZGVyLnByb3RvdHlwZS5yZWFkQml0cyA9IGZ1bmN0aW9uKG5fYml0cykge1xuICBpZiAoMzIgLSB0aGlzLmJpdF9wb3NfIDwgbl9iaXRzKSB7XG4gICAgdGhpcy5maWxsQml0V2luZG93KCk7XG4gIH1cbiAgXG4gIHZhciB2YWwgPSAoKHRoaXMudmFsXyA+Pj4gdGhpcy5iaXRfcG9zXykgJiBrQml0TWFza1tuX2JpdHNdKTtcbiAgdGhpcy5iaXRfcG9zXyArPSBuX2JpdHM7XG4gIHJldHVybiB2YWw7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IEJyb3RsaUJpdFJlYWRlcjtcbiIsICIvKiBDb3B5cmlnaHQgMjAxMyBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuXG4gICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4gICBDb2xsZWN0aW9uIG9mIHN0YXRpYyBkaWN0aW9uYXJ5IHdvcmRzLlxuKi9cblxuZXhwb3J0cy5kaWN0aW9uYXJ5ID0gbmV3IFVpbnQ4QXJyYXkoW1xuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDY0LCAweDYxLFxuICAweDc0LCAweDYxLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDYzLCAweDY5LCAweDc0LCAweDc5LCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDZhLCAweDc1LCAweDczLCAweDc0LFxuICAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYyLCAweDZmLFxuICAweDY0LCAweDc5LCAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDc0LCAweDY4LFxuICAweDY1LCAweDZkLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDcwLCAweDYxLCAweDY3LFxuICAweDY1LCAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDZjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDY2LFxuICAweDcyLCAweDZmLCAweDZkLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDc1LCAweDcwLCAweDZmLCAweDZlLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY0LCAweDYxLCAweDc0LFxuICAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDZlLCAweDY1LCAweDc3LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDZlLCAweDY1LCAweDc4LCAweDc0LCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDcwLFxuICAweDZmLCAweDczLCAweDc0LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDY4LCAweDYxLFxuICAweDZlLCAweDY0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDRjLCAweDY5LCAweDZlLCAweDZiLCAweDYyLCAweDZjLCAweDZmLCAweDY3LCAweDczLCAweDY5LCAweDdhLCAweDY1LFxuICAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY4LCAweDY1LCAweDZjLCAweDY0LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDZkLFxuICAweDYxLCAweDY5LCAweDZlLCAweDc1LCAweDczLCAweDY1LCAweDcyLCAweDI3LCAweDI5LCAweDIwLCAweDJiLCAweDY4LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDZlLCAweDY0LCAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDRlLCAweDY1LCAweDc3LFxuICAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDY3LCAweDYxLCAweDZkLCAweDY1LCAweDczLFxuICAweDY1LCAweDY1LCAweDZlLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDc0LCAweDY4LCAweDc3LCAweDY1LFxuICAweDZjLCAweDZjLCAweDcwLCAweDZjLCAweDc1LCAweDczLCAweDZkLCAweDY1LCAweDZlLCAweDc1LCAweDY2LCAweDY5LCAweDZjLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY4LCAweDY5LCAweDczLFxuICAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY3LCAweDZmLCAweDZmLCAweDY0LCAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDc3LFxuICAweDYxLCAweDc5LCAweDczLCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDZhLCAweDZmLCAweDYyLCAweDczLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDcyLCAweDY5LCAweDYzLFxuICAweDY4LCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDc0LCAweDY1LCAweDYxLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZkLCAweDc5LCAweDY2LCAweDZmLCAweDZmLCAweDY0LCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc3LFxuICAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDYyLCAweDY1LFxuICAweDczLCAweDc0LCAweDY2LCAweDY5LCAweDcyLCAweDY1LCAweDUwLCAweDYxLCAweDY3LCAweDY1LCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDYxLCAweDc3LCAweDYxLCAweDc5LCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDZkLCAweDZmLCAweDc2LCAweDY1LFxuICAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDczLFxuICAweDY1LCAweDZjLCAweDY2LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDY2LCAweDY1LFxuICAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDZmLCAweDYzLCAweDZiLCAweDY5LCAweDYzLCAweDZmLFxuICAweDZlLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY4LCAweDY5LCAweDY0LCAweDY1LFxuICAweDY0LCAweDY5LCAweDY1LCAweDY0LCAweDQ4LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDc1LCAweDZjLCAweDY1LCAweDY4LFxuICAweDZmLCAweDczLCAweDc0LCAweDYxLCAweDZhLCAweDYxLCAweDc4LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDYzLCAweDZjLFxuICAweDc1LCAweDYyLCAweDZjLCAweDYxLCAweDc3LCAweDczLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY4LCAweDYxLCAweDZjLFxuICAweDY2LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDdhLCAweDZmLCAweDZlLCAweDY1LFxuICAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDU0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDcyLCAweDYxLCAweDYzLCAweDY1LCAweDYyLCAweDZjLCAweDc1LCAweDY1LCAweDY2LCAweDZmLFxuICAweDc1LCAweDcyLCAweDc3LCAweDY1LCAweDY1LCAweDZiLCAweDY2LCAweDYxLCAweDYzLCAweDY1LCAweDY4LCAweDZmLCAweDcwLFxuICAweDY1LCAweDY3LCAweDYxLCAweDc2LCAweDY1LCAweDY4LCAweDYxLCAweDcyLCAweDY0LCAweDZjLCAweDZmLCAweDczLCAweDc0LFxuICAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDcwLCAweDYxLCAweDcyLCAweDZiLCAweDZiLCAweDY1LCAweDcwLCAweDc0LCAweDcwLFxuICAweDYxLCAweDczLCAweDczLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDcyLCAweDZmLCAweDZmLCAweDZkLCAweDQ4LCAweDU0LFxuICAweDRkLCAweDRjLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDU0LCAweDc5LCAweDcwLCAweDY1LCAweDY0LCAweDZmLCAweDZlLFxuICAweDY1LCAweDczLCAweDYxLCAweDc2LCAweDY1LCAweDZiLCAweDY1LCAweDY1LCAweDcwLCAweDY2LCAweDZjLCAweDYxLCAweDY3LFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDZmLCAweDZjLCAweDY0LCAweDY2LCAweDY5LCAweDc2LCAweDY1LCAweDc0LFxuICAweDZmLCAweDZmLCAweDZiLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDc0LCAweDZmLCAweDc3LCAweDZlLCAweDZhLCAweDc1LFxuICAweDZkLCAweDcwLCAweDc0LCAweDY4LCAweDc1LCAweDczLCAweDY0LCAweDYxLCAweDcyLCAweDZiLCAweDYzLCAweDYxLCAweDcyLFxuICAweDY0LCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDc5LFxuICAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDYxLFxuICAweDc1LCAweDc0LCAweDZmLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDc0LCAweDYxLFxuICAweDZjLCAweDZiLCAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDc2LCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDY1LFxuICAweDcwLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDc0LCAweDc1LCAweDcyLCAweDZlLFxuICAweDYyLCAweDZmLCAweDcyLCAweDZlLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDY2LCAweDY1LCAweDZjLCAweDZjLCAweDcyLFxuICAweDZmLCAweDczLCAweDY1LCAweDc1LCAweDcyLCAweDZjLCAweDI4LCAweDczLCAweDZiLCAweDY5LCAweDZlLCAweDcyLCAweDZmLFxuICAweDZjLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDZkLCAweDY1LCAweDY1LCAweDc0LCAweDY3LCAweDZmLCAweDZjLCAweDY0LCAweDJlLCAweDZhLCAweDcwLCAweDY3LFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDc2LCAweDYxLCAweDcyLCAweDc5LCAweDY2LCAweDY1LCAweDZjLCAweDc0LCAweDc0LFxuICAweDY4LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDY0LCAweDY0LCAweDcyLCAweDZmLCAweDcwLCAweDU2LCAweDY5LFxuICAweDY1LCAweDc3LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDMxLCAweDJlLCAweDMwLCAweDIyLCAweDNjLCAweDJmLCAweDYxLFxuICAweDNlLCAweDczLCAweDc0LCAweDZmLCAweDcwLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDczLFxuICAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDcwLCAweDYxLCAweDYzLCAweDZiLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDcwLFxuICAweDYxLCAweDczLCAweDc0LCAweDYzLCAweDczLCAweDczLCAweDNmLCAweDY3LCAweDcyLCAweDYxLCAweDc5LCAweDZkLCAweDY1LFxuICAweDYxLCAweDZlLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDcyLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDY4LCAweDZmLFxuICAweDc0LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDYxLCAweDY5LCAweDY0LCAweDcyLCAweDZmLCAweDYxLCAweDY0LFxuICAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDY2LCAweDY1LCAweDY1LCAweDZjLCAweDZhLCAweDZmLCAweDY4LCAweDZlLCAweDcyLFxuICAweDY5LCAweDYzLCAweDZiLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY2LCAweDYxLCAweDczLCAweDc0LCAweDI3LCAweDU1LFxuICAweDQxLCAweDJkLCAweDY0LCAweDY1LCAweDYxLCAweDY0LCAweDNjLCAweDJmLCAweDYyLCAweDNlLCAweDcwLCAweDZmLCAweDZmLFxuICAweDcyLCAweDYyLCAweDY5LCAweDZjLCAweDZjLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDU1LCAweDJlLCAweDUzLCAweDJlLFxuICAweDc3LCAweDZmLCAweDZmLCAweDY0LCAweDZkLCAweDc1LCAweDczLCAweDc0LCAweDMyLCAweDcwLCAweDc4LCAweDNiLCAweDQ5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDc3LCAweDYxLFxuICAweDZlLCAweDc0LCAweDc3LCAweDYxLCAweDZjLCAweDZjLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDViLCAweDMwLCAweDVkLFxuICAweDNiLCAweDcwLCAweDYxLCAweDc1LCAweDZjLCAweDc3LCAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDc1LCAweDcyLCAweDY1LFxuICAweDI0LCAweDI4LCAweDI3LCAweDIzLCAweDc3LCAweDYxLCAweDY5LCAweDc0LCAweDZkLCAweDYxLCAweDczLCAweDczLCAweDYxLFxuICAweDcyLCAweDZkLCAweDczLCAweDY3LCAweDZmLCAweDY1LCAweDczLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDY5LCAweDY0LCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDZjLCAweDZmLCAweDYzLFxuICAweDZiLCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDcyLCAweDZmLCAweDZmLCAweDc0LCAweDc3LCAweDYxLCAweDZjLCAweDZiLFxuICAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDc3LCAweDY5LCAweDY2LCAweDY1LCAweDc4LCAweDZkLCAweDZjLCAweDIyLCAweDczLFxuICAweDZmLCAweDZlLCAweDY3LCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDMyLCAweDMwLCAweDcwLCAweDc4LCAweDZiLCAweDY5LFxuICAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDc0LCAweDZmLCAweDZmLCAweDZjLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDczLCAweDYxLCAweDY2LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLFxuICAweDZkLCAweDYxLCAweDcwLCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDY2LFxuICAweDZjLCAweDZmLCAweDc3LCAweDYyLCAweDYxLCAweDYyLCAweDc5LCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDczLCAweDYxLFxuICAweDc5LCAweDczLCAweDM0LCAweDcwLCAweDc4LCAweDNiLCAweDM2LCAweDcwLCAweDc4LCAweDNiLCAweDYxLCAweDcyLCAweDc0LFxuICAweDczLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDc3LCAweDY5LCAweDZiLCAweDY5LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDc0LCAweDY1LCAweDcwLCAweDc0LCAweDcyLCAweDY5LCAweDcwLCAweDZmLFxuICAweDcyLCAweDY3LCAweDJmLCAweDZjLCAweDYxLCAweDZiLCAweDY1LCAweDc3LCAweDY1LCAweDYxLCAweDZiLCAweDc0LCAweDZmLFxuICAweDZjLCAweDY0LCAweDQ2LCAweDZmLCAweDcyLCAweDZkLCAweDYzLCAweDYxLCAweDczLCAweDc0LCAweDY2LCAweDYxLCAweDZlLFxuICAweDczLCAweDYyLCAweDYxLCAweDZlLCAweDZiLCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDcyLCAweDc1LCAweDZlLCAweDczLFxuICAweDZhLCAweDc1LCAweDZjLCAweDc5LCAweDc0LCAweDYxLCAweDczLCAweDZiLCAweDMxLCAweDcwLCAweDc4LCAweDNiLCAweDY3LFxuICAweDZmLCAweDYxLCAweDZjLCAweDY3LCAweDcyLCAweDY1LCAweDc3LCAweDczLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LFxuICAweDY3LCAweDY1LCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDc0LCAweDczLCAweDM1LCAweDcwLCAweDc4LFxuICAweDNiLCAweDJlLCAweDZhLCAweDczLCAweDNmLCAweDM0LCAweDMwLCAweDcwLCAweDc4LCAweDY5LCAweDY2LCAweDIwLCAweDI4LFxuICAweDczLCAweDZmLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYxLCAweDc0LCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDc0LFxuICAweDc1LCAweDYyLCAweDY1LCAweDdhLCAweDY1LCAweDcyLCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LFxuICAweDY1LCAweDY0LCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDY3LCAweDY5LCAweDY2LFxuICAweDc0LCAweDY4LCAweDYxLCAweDcyLCAweDZkLCAweDMxLCAweDM4LCAweDcwLCAweDc4LCAweDYzLCAweDYxLCAweDZkLCAweDY1LFxuICAweDY4LCAweDY5LCAweDZjLCAweDZjLCAweDYyLCAweDZmLCAweDZjLCAweDY0LCAweDdhLCAweDZmLCAweDZmLCAweDZkLCAweDc2LFxuICAweDZmLCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDczLCAweDc5LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDY5LFxuICAweDZjLCAweDZjLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDYzLCAweDZmLCAweDczLFxuICAweDc0LCAweDMzLCAweDcwLCAweDc4LCAweDNiLCAweDZhLCAweDYxLCAweDYzLCAweDZiLCAweDc0LCAweDYxLCAweDY3LCAweDczLFxuICAweDYyLCAweDY5LCAweDc0LCAweDczLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDZiLFxuICAweDZlLCAweDY1LCAweDc3LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDY3LCAweDcyLFxuICAweDZmLCAweDc3LCAweDRhLCAweDUzLCAweDRmLCAweDRlLCAweDY0LCAweDc1LCAweDc0LCAweDc5LCAweDRlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDc5LCAweDZmLCAweDc1LCAweDIwLCAweDZjLCAweDZmLCAweDc0LCAweDczLFxuICAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDZhLCAweDYxLCAweDdhLCAweDdhLCAweDYzLCAweDZmLCAweDZjLCAweDY0LCAweDY1LFxuICAweDc5LCAweDY1LCAweDczLCAweDY2LCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDcyLCAweDY5LFxuICAweDczLCAweDZiLCAweDc0LCAweDYxLCAweDYyLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDMxLCAweDMwLCAweDcwLFxuICAweDc4LCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDMyLCAweDM1LCAweDcwLCAweDc4LCAweDQyLCAweDZjLCAweDc1LCAweDY1LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDMzLCAweDMwLCAweDMwLCAweDJjLCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDY2LFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDYxLCAweDcyLCAweDZlLCAweDc3LCAweDY5LCAweDZjLCAweDY0LCAweDYyLCAweDZmLFxuICAweDc4LCAweDJlLCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDZjLCAweDYxLCAweDYzLCAweDZiLCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDcwLCAweDYxLCAweDY5LCAweDcyLCAweDZhLCAweDc1LCAweDZlLCAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDY4LFxuICAweDY5LCAweDY2LCAweDI4LCAweDIxLCAweDcwLCAweDY5LCAweDYzLCAweDZiLCAweDY1LCAweDc2LCAweDY5LCAweDZjLCAweDI0LFxuICAweDI4LCAweDIyLCAweDIzLCAweDc3LCAweDYxLCAweDcyLCAweDZkLCAweDZjLCAweDZmLCAweDcyLCAweDY0LCAweDY0LCAweDZmLFxuICAweDY1LCAweDczLCAweDcwLCAweDc1LCAweDZjLCAweDZjLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDY5LCAweDY0LCAweDY1LFxuICAweDYxLCAweDY0LCAweDcyLCAweDYxLCAweDc3LCAweDY4LCAweDc1LCAweDY3LCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDc0LFxuICAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYyLCAweDc1LCAweDcyLCAweDZlLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDYzLFxuICAweDY1LCAweDZjLCAweDZjLCAweDZiLCAweDY1LCAweDc5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDZiLCAweDY4LCAweDZmLFxuICAweDc1LCAweDcyLCAweDZjLCAweDZmLCAweDczLCAweDczLCAweDY2LCAweDc1LCAweDY1LCAweDZjLCAweDMxLCAweDMyLCAweDcwLFxuICAweDc4LCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDUyLCAweDUzLCAweDUzLCAweDIyLFxuICAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDY3LCAweDcyLCAweDY1LCAweDc5LCAweDQ3LCAweDQ1LCAweDU0LCAweDIyLCAweDY1LFxuICAweDYxLCAweDczLCAweDY1LCAweDYxLCAweDY5LCAweDZkLCAweDczLCAweDY3LCAweDY5LCAweDcyLCAweDZjLCAweDYxLCAweDY5LFxuICAweDY0LCAweDczLCAweDM4LCAweDcwLCAweDc4LCAweDNiLCAweDZlLCAweDYxLCAweDc2LCAweDc5LCAweDY3LCAweDcyLCAweDY5LFxuICAweDY0LCAweDc0LCAweDY5LCAweDcwLCAweDczLCAweDIzLCAweDM5LCAweDM5LCAweDM5LCAweDc3LCAweDYxLCAweDcyLCAweDczLFxuICAweDZjLCAweDYxLCAweDY0LCAweDc5LCAweDYzLCAweDYxLCAweDcyLCAweDczLCAweDI5LCAweDNiLCAweDIwLCAweDdkLCAweDcwLFxuICAweDY4LCAweDcwLCAweDNmLCAweDY4LCAweDY1LCAweDZjLCAweDZjLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDc3LCAweDY4LFxuICAweDZmLCAweDZkLCAweDdhLCAweDY4LCAweDNhLCAweGU1LCAweDJhLCAweDJmLCAweDBkLCAweDBhLCAweDIwLCAweDMxLCAweDMwLFxuICAweDMwLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDJlLCAweDBhLCAweDBhLCAweDQxLCAweDM3LCAweDcwLCAweDc4LCAweDNiLFxuICAweDcwLCAweDc1LCAweDczLCAweDY4LCAweDYzLCAweDY4LCAweDYxLCAweDc0LCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDYzLFxuICAweDcyLCAweDY1LCAweDc3LCAweDJhLCAweDJmLCAweDNjLCAweDJmLCAweDY4LCAweDYxLCAweDczLCAweDY4LCAweDM3LCAweDM1LFxuICAweDcwLCAweDc4LCAweDY2LCAweDZjLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDI2LCAweDI2LFxuICAweDIwLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDc0LCAweDZmLFxuICAweDZjLCAweDYxLCAweDY5LCAweDY0LCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDczLCAweDZiLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDY3LCAweDY1LFxuICAweDc0LCAweDczLCAweDcwLCAweDZjLCAweDZmLCAweDc0LCAweDM0LCAweDMwLCAweDMwLCAweDJjLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDYzLCAweDZmLCAweDZmLCAweDZjLCAweDY2LCAweDY1LCAweDY1LCAweDc0LCAweDJlLCAweDcwLCAweDY4LCAweDcwLFxuICAweDNjLCAweDYyLCAweDcyLCAweDNlLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDY3LFxuICAweDc1LCAweDY5LCAweDY0LCAweDYyLCAweDY1LCAweDZjLCAweDZjLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDYxLFxuICAweDY5LCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZmLCAweDZkLCAweDJmLCAweDY5LCAweDZkLFxuICAweDY3LCAweDI2LCAweDIzLCAweDM4LCAweDMyLCAweDZjLCAweDc1LCAweDYzLCAweDZiLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDMwLCAweDMwLCAweDMwLCAweDNiLCAweDc0LCAweDY5LCAweDZlLCAweDc5LCAweDY3LCAweDZmLCAweDZlLCAweDY1LCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDY0LCAweDcyLCAweDc1LCAweDY3LCAweDQ2LCAweDUyLFxuICAweDQ1LCAweDQ1LCAweDZlLCAweDZmLCAweDY0LCAweDY1LCAweDZlLCAweDY5LCAweDYzLCAweDZiLCAweDNmLCAweDY5LCAweDY0LFxuICAweDNkLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDc1LCAweDZjLCAweDZjLCAweDc2LCAweDYxLCAweDczLCAweDc0LFxuICAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDUyLCAweDUzLCAweDUzLCAweDIwLCAweDc3LCAweDY1LCAweDYxLCAweDcyLCAweDcyLFxuICAweDY1LCAweDZjLCAweDc5LCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDc1LFxuICAweDZiLCAweDY1LCAweDZlLCAweDYxLCAweDczLCAweDYxLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDc3LCAweDY5LCAweDczLFxuICAweDY4LCAweDY3LCAweDc1LCAweDZjLCAweDY2LCAweDU0LCAweDMyLCAweDMzLCAweDNhLCAweDY4LCAweDY5LCAweDc0LCAweDczLFxuICAweDczLCAweDZjLCAweDZmLCAweDc0LCAweDY3LCAweDYxLCAweDc0LCAweDY1LCAweDZiLCAweDY5LCAweDYzLCAweDZiLCAweDYyLFxuICAweDZjLCAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDMxLCAweDM1LCAweDcwLCAweDc4LCAweDI3LCAweDI3LFxuICAweDI5LCAweDNiLCAweDI5LCAweDNiLCAweDIyLCAweDNlLCAweDZkLCAweDczLCAweDY5LCAweDY1LCAweDc3LCAweDY5LCAweDZlLFxuICAweDczLCAweDYyLCAweDY5LCAweDcyLCAweDY0LCAweDczLCAweDZmLCAweDcyLCAweDc0LCAweDYyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDczLCAweDY1LCAweDY1LCAweDZiLCAweDU0LCAweDMxLCAweDM4LCAweDNhLCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDc0LFxuICAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDM2LCAweDMwLCAweDcwLCAweDc4LCAweDY2LCAweDYxLFxuICAweDcyLCAweDZkLCAweGUyLCAweDgwLCAweDk5LCAweDczLCAweDYyLCAweDZmLCAweDc5LCAweDczLCAweDViLCAweDMwLCAweDVkLFxuICAweDJlLCAweDI3LCAweDI5LCAweDNiLCAweDIyLCAweDUwLCAweDRmLCAweDUzLCAweDU0LCAweDYyLCAweDY1LCAweDYxLCAweDcyLFxuICAweDZiLCAweDY5LCAweDY0LCAweDczLCAweDI5LCAweDNiLCAweDdkLCAweDdkLCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDc0LFxuICAweDY1LCAweDZlLCAweDY0LCAweDI4LCAweDU1LCAweDRiLCAweDI5LCAweDcxLCAweDc1LCAweDYxLCAweDY0LCAweDdhLCAweDY4LFxuICAweDNhLCAweGU2LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDJkLCAweDJkLCAweDJkLCAweDJkLCAweDcwLCAweDcyLCAweDZmLFxuICAweDcwLCAweDI3LCAweDI5LCAweDNiLCAweDBkLCAweDZjLCAweDY5LCAweDY2LCAweDc0LCAweDU0LCAweDMxLCAweDM5LCAweDNhLFxuICAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDc5LCAweDY0LCAweDY1LCAweDYyLCAweDc0LCAweDNlLFxuICAweDUyLCAweDUzLCAweDUzLCAweDcwLCAweDZmLCAweDZmLCAweDZjLCAweDZlLCAweDY1LCAweDYzLCAweDZiLCAweDYyLCAweDZjLFxuICAweDZmLCAweDc3LCAweDU0LCAweDMxLCAweDM2LCAweDNhLCAweDY0LCAweDZmLCAweDZmLCAweDcyLCAweDY1LCAweDc2LCAweDYxLFxuICAweDZjLCAweDU0LCAweDMxLCAweDM3LCAweDNhLCAweDZjLCAweDY1LCAweDc0LCAweDczLCAweDY2LCAweDYxLCAweDY5LCAweDZjLFxuICAweDZmLCAweDcyLCAweDYxLCAweDZjLCAweDcwLCAweDZmLCAweDZjLCAweDZjLCAweDZlLCAweDZmLCAweDc2LCAweDYxLCAweDYzLFxuICAweDZmLCAweDZjLCAweDczLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDIwLCAweGUyLCAweDgwLCAweDk0LCAweDczLCAweDZmLFxuICAweDY2LCAweDc0LCAweDcyLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDcyLCAweDZmLCAweDczLFxuICAweDczLCAweDNjLCAweDY4LCAweDMzLCAweDNlLCAweDcwLCAweDZmLCAweDc1LCAweDcyLCAweDY2LCAweDYxLCAweDY0LCAweDY1LFxuICAweDcwLCAweDY5LCAweDZlLCAweDZiLCAweDNjLCAweDc0LCAweDcyLCAweDNlLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDI5LFxuICAweDdjLCAweDIxLCAweDI4LCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDdhLCAweDY4LCAweDNhLCAweGU4LCAweDYyLCAweDYxLFxuICAweDcyLCAweDczLCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDMwLCAweDMwLCAweDI5LCAweDNiLCAweDZkLCAweDY5LCAweDZjLFxuICAweDZiLCAweDIwLCAweDJkLCAweDJkLCAweDNlLCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDY2LCAweDcyLCAweDY1LCAweDY0LFxuICAweDY0LCAweDY5LCAweDczLCAweDZiLCAweDc3LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZmLCAweDY5LCAweDZjLCAweDcwLFxuICAweDc1LCAweDc0LCAweDczLCAweDJmLCAweDZhLCAweDczLCAweDJmLCAweDY4LCAweDZmLCAweDZjLCAweDc5LCAweDU0LCAweDMyLFxuICAweDMyLCAweDNhLCAweDQ5LCAweDUzLCAweDQyLCAweDRlLCAweDU0LCAweDMyLCAweDMwLCAweDNhLCAweDYxLCAweDY0LCAweDYxLFxuICAweDZkLCAweDczLCAweDY1LCAweDY1LCAweDczLCAweDNjLCAweDY4LCAweDMyLCAweDNlLCAweDZhLCAweDczLCAweDZmLCAweDZlLFxuICAweDI3LCAweDJjLCAweDIwLCAweDI3LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDU0LCAweDMyLCAweDMxLCAweDNhLCAweDIwLFxuICAweDUyLCAweDUzLCAweDUzLCAweDZjLCAweDZmLCAweDZmLCAweDcwLCAweDYxLCAweDczLCAweDY5LCAweDYxLCAweDZkLCAweDZmLFxuICAweDZmLCAweDZlLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDczLCAweDZmLCAweDc1LCAweDZjLCAweDRjLCAweDQ5LCAweDRlLFxuICAweDQ1LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDYxLCAweDcyLCAweDc0LCAweDU0LCAweDMxLCAweDM0LCAweDNhLFxuICAweDNjLCAweDY4LCAweDMxLCAweDNlLCAweDM4LCAweDMwLCAweDcwLCAweDc4LCAweDIxLCAweDJkLCAweDJkLCAweDNjLCAweDM5LFxuICAweDcwLCAweDc4LCAweDNiLCAweDU0LCAweDMwLCAweDM0LCAweDNhLCAweDZkLCAweDY5LCAweDZiLCAweDY1LCAweDNhLCAweDM0LFxuICAweDM2LCAweDVhLCAweDZlLCAweDY5LCAweDYzLCAweDY1LCAweDY5LCAweDZlLCAweDYzLCAweDY4LCAweDU5LCAweDZmLCAweDcyLFxuICAweDZiLCAweDcyLCAweDY5LCAweDYzLCAweDY1LCAweDdhLCAweDY4LCAweDNhLCAweGU0LCAweDI3LCAweDI5LCAweDI5LCAweDNiLFxuICAweDcwLCAweDc1LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDZmLCAweDZlLCAweDY1LCAweDYyLCAweDZmLCAweDZlLCAweDY0LCAweDNhLCAweDMzLCAweDM3LCAweDVhLCAweDVmLCAweDZmLFxuICAweDY2LCAweDVmLCAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDMwLCAweDMwLCAweDMwLCAweDJjLCAweDdhLCAweDY4LCAweDNhLFxuICAweGU3LCAweDc0LCAweDYxLCAweDZlLCAweDZiLCAweDc5LCAweDYxLCAweDcyLCAweDY0LCAweDYyLCAweDZmLCAweDc3LCAweDZjLFxuICAweDYyLCAweDc1LCAweDczLCAweDY4LCAweDNhLCAweDM1LCAweDM2LCAweDVhLCAweDRhLCAweDYxLCAweDc2LCAweDYxLCAweDMzLFxuICAweDMwLCAweDcwLCAweDc4LCAweDBhLCAweDdjLCAweDdkLCAweDBhLCAweDI1LCAweDQzLCAweDMzLCAweDI1LCAweDNhLCAweDMzLFxuICAweDM0LCAweDVhLCAweDZhLCAweDY1LCAweDY2LCAweDY2LCAweDQ1LCAweDU4LCAweDUwLCAweDQ5LCAweDYzLCAweDYxLCAweDczLFxuICAweDY4LCAweDc2LCAweDY5LCAweDczLCAweDYxLCAweDY3LCAweDZmLCAweDZjLCAweDY2LCAweDczLCAweDZlLCAweDZmLCAweDc3LFxuICAweDdhLCAweDY4LCAweDNhLCAweGU5LCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDczLFxuICAweDY5LCAweDYzLCAweDZiLCAweDZkLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDYyLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY0LCAweDY1LCAweDZjLCAweDZjLCAweDY4LCAweDY5LCAweDcyLCAweDY1LCAweDcwLCAweDY5LCAweDYzLFxuICAweDczLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDNhLCAweDMzLCAweDM2LCAweDVhLCAweDQ4LCAweDU0LCAweDU0LCAweDUwLFxuICAweDJkLCAweDMyLCAweDMwLCAweDMxLCAweDY2LCAweDZmLCAweDc0LCAweDZmLCAweDc3LCAweDZmLCAweDZjLCAweDY2LCAweDQ1LFxuICAweDRlLCAweDQ0LCAweDIwLCAweDc4LCAweDYyLCAweDZmLCAweDc4LCAweDNhLCAweDM1LCAweDM0LCAweDVhLCAweDQyLCAweDRmLFxuICAweDQ0LCAweDU5LCAweDY0LCAweDY5LCAweDYzLCAweDZiLCAweDNiLCAweDBhLCAweDdkLCAweDBhLCAweDY1LCAweDc4LCAweDY5LFxuICAweDc0LCAweDNhLCAweDMzLCAweDM1LCAweDVhLCAweDc2LCAweDYxLCAweDcyLCAweDczLCAweDYyLCAweDY1LCAweDYxLCAweDc0LFxuICAweDI3LCAweDdkLCAweDI5LCAweDNiLCAweDY0LCAweDY5LCAweDY1LCAweDc0LCAweDM5LCAweDM5LCAweDM5LCAweDNiLCAweDYxLFxuICAweDZlLCAweDZlLCAweDY1LCAweDdkLCAweDdkLCAweDNjLCAweDJmLCAweDViLCAweDY5LCAweDVkLCAweDJlLCAweDRjLCAweDYxLFxuICAweDZlLCAweDY3LCAweDZiLCAweDZkLCAweGMyLCAweGIyLCAweDc3LCAweDY5LCAweDcyLCAweDY1LCAweDc0LCAweDZmLCAweDc5LFxuICAweDczLCAweDYxLCAweDY0LCAweDY0LCAweDczLCAweDczLCAweDY1LCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDY1LCAweDc4LFxuICAweDNiLCAweDBhLCAweDA5LCAweDdkLCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDY1LCAweDJlLFxuICAweDZmLCAweDcyLCAweDY3LCAweDMwLCAweDMwLCAweDM1LCAweDI5LCAweDc0LCAweDZmLCAweDZlLCAweDc5LCAweDZhLCAweDY1LFxuICAweDc3LCAweDczLCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY1LCAweDY3LCAweDczLCAweDcyLCAweDZmLCAweDZmLFxuICAweDY2LCAweDMwLCAweDMwLCAweDMwLCAweDI5LCAweDIwLCAweDMyLCAweDMwLCAweDMwLCAweDc3LCAweDY5LCAweDZlLCAweDY1LFxuICAweDY3LCAweDY1LCAweDYxLCAweDcyLCAweDY0LCAweDZmLCAweDY3LCAweDczLCAweDYyLCAweDZmLCAweDZmLCAweDc0LCAweDY3LFxuICAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDc1LCAweDc0LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDc0LCAweDY1LFxuICAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDc4LCAweDZkLCAweDZjLCAweDYzLCAweDZmLCAweDYzLFxuICAweDZiLCAweDY3LCAweDYxLCAweDZlLCAweDY3LCAweDI0LCAweDI4LCAweDI3LCAweDJlLCAweDM1LCAweDMwLCAweDcwLCAweDc4LFxuICAweDUwLCAweDY4LCAweDJlLCAweDQ0LCAweDZkLCAweDY5LCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDZjLFxuICAweDZmLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDZiLCAweDZkLCAweDY5LCAweDZjLCAweDY1LCAweDcyLCAweDc5LFxuICAweDYxLCAweDZlLCAweDc1LCAweDZlLCAweDY5LCAweDc4LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDI5LCAweDNiLCAweDdkLFxuICAweDBhLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDYzLCAweDZjLCAweDY5LCAweDcwLCAweDI5LCAweDJlLCAweDBhLCAweDBhLFxuICAweDM3LCAweDMwLCAweDcwLCAweDc4LCAweDJkLCAweDMyLCAweDMwLCAweDMwLCAweDQ0LCAweDU2LCAweDQ0LCAweDczLCAweDM3LFxuICAweDVkLCAweDNlLCAweDNjLCAweDc0LCAweDYxLCAweDcwLCAweDY1LCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDY5LCAweDJiLFxuICAweDJiLCAweDI5LCAweDc3LCAweDYxLCAweDY3LCAweDY1LCAweDY1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY4LCAweDY5LFxuICAweDZjLCAweDZmLCAweDcwLCAweDc0LCAweDczLCAweDY4LCAweDZmLCAweDZjLCAweDY1LCAweDQ2LCAweDQxLCAweDUxLCAweDczLFxuICAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDJkLCAweDMyLCAweDM2LCAweDU0LCAweDZjLCAweDYxLCAweDYyLCAweDczLCAweDcwLFxuICAweDY1LCAweDc0LCAweDczLCAweDU1LCAweDUyLCAweDRjLCAweDIwLCAweDYyLCAweDc1LCAweDZjLCAweDZiLCAweDYzLCAweDZmLFxuICAweDZmLCAweDZiLCAweDNiLCAweDdkLCAweDBkLCAweDBhLCAweDQ4LCAweDQ1LCAweDQxLCAweDQ0LCAweDViLCAweDMwLCAweDVkLFxuICAweDI5LCAweDYxLCAweDYyLCAweDYyLCAweDcyLCAweDZhLCAweDc1LCAweDYxLCAweDZlLCAweDI4LCAweDMxLCAweDM5LCAweDM4LFxuICAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDc0LCAweDc3LCAweDY5LCAweDZlLCAweDNjLCAweDJmLCAweDY5LCAweDNlLCAweDczLFxuICAweDZmLCAweDZlLCAweDc5LCAweDY3LCAweDc1LCAweDc5LCAweDczLCAweDY2LCAweDc1LCAweDYzLCAweDZiLCAweDcwLCAweDY5LFxuICAweDcwLCAweDY1LCAweDdjLCAweDJkLCAweDBhLCAweDIxLCAweDMwLCAweDMwLCAweDMyLCAweDI5LCAweDZlLCAweDY0LCAweDZmLFxuICAweDc3LCAweDViLCAweDMxLCAweDVkLCAweDNiLCAweDViLCAweDVkLCAweDNiLCAweDBhLCAweDRjLCAweDZmLCAweDY3LCAweDIwLFxuICAweDczLCAweDYxLCAweDZjLCAweDc0LCAweDBkLCAweDBhLCAweDA5LCAweDA5LCAweDYyLCAweDYxLCAweDZlLCAweDY3LCAweDc0LFxuICAweDcyLCAweDY5LCAweDZkLCAweDYyLCAweDYxLCAweDc0LCAweDY4LCAweDI5LCAweDdiLCAweDBkLCAweDBhLCAweDMwLCAweDMwLFxuICAweDcwLCAweDc4LCAweDBhLCAweDdkLCAweDI5LCAweDNiLCAweDZiLCAweDZmLCAweDNhLCAweGVjLCAweDY2LCAweDY1LCAweDY1LFxuICAweDczLCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDIwLCAweDViLCAweDVkLCAweDNiLFxuICAweDc0LCAweDZmLCAweDZjLCAweDZjLCAweDcwLCAweDZjLCAweDc1LCAweDY3LCAweDI4LCAweDI5LCAweDdiLCAweDBhLCAweDdiLFxuICAweDBkLCAweDBhLCAweDIwLCAweDJlLCAweDZhLCAweDczLCAweDI3LCAweDMyLCAweDMwLCAweDMwLCAweDcwLCAweDY0LCAweDc1LFxuICAweDYxLCAweDZjLCAweDYyLCAweDZmLCAweDYxLCAweDc0LCAweDJlLCAweDRhLCAweDUwLCAweDQ3LCAweDI5LCAweDNiLCAweDBhLFxuICAweDdkLCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDI5LCAweDNiLCAweDBhLCAweDBhLCAweDI3LCAweDI5LCAweDNiLCAweDBhLFxuICAweDBkLCAweDBhLCAweDdkLCAweDBkLCAweDMyLCAweDMwLCAweDMxLCAweDM0LCAweDMyLCAweDMwLCAweDMxLCAweDM1LCAweDMyLFxuICAweDMwLCAweDMxLCAweDM2LCAweDMyLCAweDMwLCAweDMxLCAweDM3LCAweDMyLCAweDMwLCAweDMxLCAweDM4LCAweDMyLCAweDMwLFxuICAweDMxLCAweDM5LCAweDMyLCAweDMwLCAweDMyLCAweDMwLCAweDMyLCAweDMwLCAweDMyLCAweDMxLCAweDMyLCAweDMwLCAweDMyLFxuICAweDMyLCAweDMyLCAweDMwLCAweDMyLCAweDMzLCAweDMyLCAweDMwLCAweDMyLCAweDM0LCAweDMyLCAweDMwLCAweDMyLCAweDM1LFxuICAweDMyLCAweDMwLCAweDMyLCAweDM2LCAweDMyLCAweDMwLCAweDMyLCAweDM3LCAweDMyLCAweDMwLCAweDMyLCAweDM4LCAweDMyLFxuICAweDMwLCAweDMyLCAweDM5LCAweDMyLCAweDMwLCAweDMzLCAweDMwLCAweDMyLCAweDMwLCAweDMzLCAweDMxLCAweDMyLCAweDMwLFxuICAweDMzLCAweDMyLCAweDMyLCAweDMwLCAweDMzLCAweDMzLCAweDMyLCAweDMwLCAweDMzLCAweDM0LCAweDMyLCAweDMwLCAweDMzLFxuICAweDM1LCAweDMyLCAweDMwLCAweDMzLCAweDM2LCAweDMyLCAweDMwLCAweDMzLCAweDM3LCAweDMyLCAweDMwLCAweDMxLCAweDMzLFxuICAweDMyLCAweDMwLCAweDMxLCAweDMyLCAweDMyLCAweDMwLCAweDMxLCAweDMxLCAweDMyLCAweDMwLCAweDMxLCAweDMwLCAweDMyLFxuICAweDMwLCAweDMwLCAweDM5LCAweDMyLCAweDMwLCAweDMwLCAweDM4LCAweDMyLCAweDMwLCAweDMwLCAweDM3LCAweDMyLCAweDMwLFxuICAweDMwLCAweDM2LCAweDMyLCAweDMwLCAweDMwLCAweDM1LCAweDMyLCAweDMwLCAweDMwLCAweDM0LCAweDMyLCAweDMwLCAweDMwLFxuICAweDMzLCAweDMyLCAweDMwLCAweDMwLCAweDMyLCAweDMyLCAweDMwLCAweDMwLCAweDMxLCAweDMyLCAweDMwLCAweDMwLCAweDMwLFxuICAweDMxLCAweDM5LCAweDM5LCAweDM5LCAweDMxLCAweDM5LCAweDM5LCAweDM4LCAweDMxLCAweDM5LCAweDM5LCAweDM3LCAweDMxLFxuICAweDM5LCAweDM5LCAweDM2LCAweDMxLCAweDM5LCAweDM5LCAweDM1LCAweDMxLCAweDM5LCAweDM5LCAweDM0LCAweDMxLCAweDM5LFxuICAweDM5LCAweDMzLCAweDMxLCAweDM5LCAweDM5LCAweDMyLCAweDMxLCAweDM5LCAweDM5LCAweDMxLCAweDMxLCAweDM5LCAweDM5LFxuICAweDMwLCAweDMxLCAweDM5LCAweDM4LCAweDM5LCAweDMxLCAweDM5LCAweDM4LCAweDM4LCAweDMxLCAweDM5LCAweDM4LCAweDM3LFxuICAweDMxLCAweDM5LCAweDM4LCAweDM2LCAweDMxLCAweDM5LCAweDM4LCAweDM1LCAweDMxLCAweDM5LCAweDM4LCAweDM0LCAweDMxLFxuICAweDM5LCAweDM4LCAweDMzLCAweDMxLCAweDM5LCAweDM4LCAweDMyLCAweDMxLCAweDM5LCAweDM4LCAweDMxLCAweDMxLCAweDM5LFxuICAweDM4LCAweDMwLCAweDMxLCAweDM5LCAweDM3LCAweDM5LCAweDMxLCAweDM5LCAweDM3LCAweDM4LCAweDMxLCAweDM5LCAweDM3LFxuICAweDM3LCAweDMxLCAweDM5LCAweDM3LCAweDM2LCAweDMxLCAweDM5LCAweDM3LCAweDM1LCAweDMxLCAweDM5LCAweDM3LCAweDM0LFxuICAweDMxLCAweDM5LCAweDM3LCAweDMzLCAweDMxLCAweDM5LCAweDM3LCAweDMyLCAweDMxLCAweDM5LCAweDM3LCAweDMxLCAweDMxLFxuICAweDM5LCAweDM3LCAweDMwLCAweDMxLCAweDM5LCAweDM2LCAweDM5LCAweDMxLCAweDM5LCAweDM2LCAweDM4LCAweDMxLCAweDM5LFxuICAweDM2LCAweDM3LCAweDMxLCAweDM5LCAweDM2LCAweDM2LCAweDMxLCAweDM5LCAweDM2LCAweDM1LCAweDMxLCAweDM5LCAweDM2LFxuICAweDM0LCAweDMxLCAweDM5LCAweDM2LCAweDMzLCAweDMxLCAweDM5LCAweDM2LCAweDMyLCAweDMxLCAweDM5LCAweDM2LCAweDMxLFxuICAweDMxLCAweDM5LCAweDM2LCAweDMwLCAweDMxLCAweDM5LCAweDM1LCAweDM5LCAweDMxLCAweDM5LCAweDM1LCAweDM4LCAweDMxLFxuICAweDM5LCAweDM1LCAweDM3LCAweDMxLCAweDM5LCAweDM1LCAweDM2LCAweDMxLCAweDM5LCAweDM1LCAweDM1LCAweDMxLCAweDM5LFxuICAweDM1LCAweDM0LCAweDMxLCAweDM5LCAweDM1LCAweDMzLCAweDMxLCAweDM5LCAweDM1LCAweDMyLCAweDMxLCAweDM5LCAweDM1LFxuICAweDMxLCAweDMxLCAweDM5LCAweDM1LCAweDMwLCAweDMxLCAweDMwLCAweDMwLCAweDMwLCAweDMxLCAweDMwLCAweDMyLCAweDM0LFxuICAweDMxLCAweDMzLCAweDM5LCAweDM0LCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDM5LCAweDM5LCAweDM5LCAweDM5LCAweDYzLFxuICAweDZmLCAweDZkLCAweDZmLCAweDZkLCAweGMzLCAweGExLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY1LCAweDczLFxuICAweDc0LCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDZmLCAweDc0LCAweDZmLCAweDY0LCAweDZmLCAweDY4LCAweDYxLCAweDYzLFxuICAweDY1LCAweDYzLCAweDYxLCAweDY0LCAweDYxLCAweDYxLCAweGMzLCAweGIxLCAweDZmLCAweDYyLCAweDY5LCAweDY1LCAweDZlLFxuICAweDY0LCAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDczLCAweGMzLCAweGFkLCAweDc2LCAweDY5LCAweDY0LCAweDYxLCAweDYzLFxuICAweDYxLCAweDczLCAweDZmLCAweDZmLCAweDc0LCAweDcyLCAweDZmLCAweDY2LCAweDZmLCAweDcyLCAweDZmLCAweDczLCAweDZmLFxuICAweDZjLCAweDZmLCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc1LCAweDYxLCAweDZjLCAweDY0LCAweDY5LCAweDZhLFxuICAweDZmLCAweDczLCAweDY5LCAweDY0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDcwLCAweDZmLFxuICAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDYxLCAweDZjLCAweDY3LCAweDZmLCAweDcxLFxuICAweDc1LCAweGMzLCAweGE5LCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDc0LCAweDcyLFxuICAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDYzLCAweDZmLCAweDYzLCAweDYxLCAweDczLCAweDYxLCAweDYyLCAweDYxLCAweDZhLFxuICAweDZmLCAweDc0LCAweDZmLCAweDY0LCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDZmLCAweDYxLCAweDY3LCAweDc1LCAweDYxLFxuICAweDcwLCAweDc1LCAweDY1LCAweDczLCAweDc1LCAweDZlLCAweDZmLCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LFxuICAweDY5LCAweDYzLCAweDY1LCAweDZjLCAweDc1LCAweDY5LCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDYxLCAweDZkLCAweDYxLFxuICAweDc5LCAweDZmLCAweDdhLCAweDZmLCAweDZlLCAweDYxLCAweDYxLCAweDZkLCAweDZmLCAweDcyLCAweDcwLCAweDY5LCAweDczLFxuICAweDZmLCAweDZmLCAweDYyLCAweDcyLCAweDYxLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDZmLFxuICAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDYxLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweGQwLFxuICAweGI3LCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgwLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGI3LFxuICAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLCAweDlkLFxuICAweGQwLCAweGIwLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJjLCAweGQxLFxuICAweDhiLCAweGQwLCAweDkyLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweDlkLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLFxuICAweDlmLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGEwLFxuICAweGQwLCAweGE0LCAweGQwLCAweDlkLCAweGQwLCAweGI1LCAweGQwLCAweDljLCAweGQxLCAweDhiLCAweGQxLCAweDgyLCAweGQxLFxuICAweDhiLCAweGQwLCAweDllLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweDk3LCAweGQwLCAweGIwLCAweGQwLCAweDk0LCAweGQwLCAweGIwLCAweGQwLCAweDlkLCAweGQxLCAweDgzLCAweGQwLFxuICAweDllLCAweGQwLCAweGIxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweDk4LCAweGQwLCAweGI3LCAweGQwLCAweGI1LFxuICAweGQwLCAweGI5LCAweGQwLCAweGJkLCAweGQxLCAweDgzLCAweGQwLCAweGJjLCAweGQwLCAweGJjLCAweGQwLCAweGEyLCAweGQxLFxuICAweDhiLCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLFxuICAweGQ5LCAweDg5LCAweGQ5LCAweDg3LCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ4LCAweGE4LCAweGQ4LCAweGIzLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE1LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDhhLCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFiLFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGE4LCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGE4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ5LCAweDgzLFxuICAweGQ4LCAweGI0LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGEzLCAweGQ5LCAweDg1LCAweGQ5LFxuICAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LCAweGQ5LCAweDg2LCAweGQ4LCAweGFkLFxuICAweGQ4LCAweGE4LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ5LCAweDg4LCAweGQ4LFxuICAweGI0LCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDZjLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLFxuICAweDc3LCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDYyLCAweDZjLCAweDYxLFxuICAweDYzLCAweDZiLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDYyLFxuICAweDZmLCAweDZmLCAweDZiLCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDZkLCAweDc1LCAweDczLCAweDY5LFxuICAweDYzLCAweDY2LCAweDY5LCAweDY1LCAweDZjLCAweDY0LCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDcwLCAweDZmLFxuICAweDY5LCAweDZlLCAweDc0LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYyLCAweDZmLCAweDYxLCAweDcyLCAweDY0LCAweDY4LCAweDZmLCAweDc1LFxuICAweDczLCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDczLCAweDc5LFxuICAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDc0LCAweDZmLCAweDY0LCAweDYxLFxuICAweDc5LCAweDc3LCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDcwLCAweDY4LCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY1LCAweDcyLCAweDcyLFxuICAweDZmLCAweDcyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDc0LCAweDZmLCAweDZmLCAweDZjLFxuICAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDczLFxuICAweDY3LCAweDYxLCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY1LCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZkLFxuICAweDZmLCAweDY0LCAweDY1LCAweDZjLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY3LCAweDc1LCAweDY5LCAweDY0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDc3LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZlLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDZkLCAweDZmLCAweDZlLCAweDY1LCAweDc5LFxuICAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDczLCAweDc5LCAweDZmLCAweDc1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYzLFxuICAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZlLCAweDY2LCAweDcyLCAweDZmLCAweDZlLFxuICAweDc0LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDc3LCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY2LCAweDZmLFxuICAweDcyLCAweDYzLCAweDY1LCAweDcwLCAweDcyLCAweDY5LCAweDYzLCAweDY1LCAweDcyLCAweDc1LCAweDZjLCAweDY1LCAweDczLFxuICAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDczLFxuICAweDY5LCAweDc0LCAweDY5LCAweDczLCAweDczLCAweDc1LCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDYyLFxuICAweDY1LCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDc0LCAweDZmLCAweDc0LCAweDYxLFxuICAweDZjLCAweDY4LCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDcwLCAweDcyLFxuICAweDY5LCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDc0LFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDczLCAweDcwLCAweDY1LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDc1LFxuICAweDY0LCAweDc5LCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDczLFxuICAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDc3LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDczLCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY0LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDY0LFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZmLCAweDc2LCAweDY1LCAweDY2LCAweDZjLCAweDYxLFxuICAweDczLCAweDY4LCAweDY2LCAweDY5LCAweDc4LCAweDY1LCAweDY0LCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDYzLFxuICAweDZiLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZjLCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDY5LCAweDc0LFxuICAweDY1LCAweDZkLCAweDczLCAweDcxLCAweDc1LCAweDY5LCAweDYzLCAweDZiLCAweDczLCAweDY4LCAweDYxLCAweDcwLCAweDY1LFxuICAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY3LCAweDZmLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZkLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDcyLCAweDY0LCAweDYyLFxuICAweDYxLCAweDczLCAweDY5LCAweDYzLCAweDcwLCAweDY1LCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDY3LFxuICAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDY5LCAweDY0LFxuICAweDY1LCAweDYxLCAweDczLCAweDc3LCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDczLFxuICAweDc1LCAweDczLCAweDY1LCAweDcyLCAweDczLCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDZmLFxuICAweDcyLCAweDY1LCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDZiLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDc2LFxuICAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDczLCAweDZkLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY4LCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDc3LCAweDY4LFxuICAweDY5LCAweDYzLCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDc0LCAweDY4LCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZkLFxuICAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDc5LCAweDQzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDZjLFxuICAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDZjLCAweDYxLCAweDc5LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDc5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDc1LCAweDczLFxuICAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDc0LFxuICAweDc5LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDYyLCAweDY5LCAweDcyLCAweDc0LCAweDY4LCAweDcwLCAweDZmLCAweDcwLFxuICAweDc1LCAweDcwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDczLCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDc5LCAweDQ5LFxuICAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDc1LCAweDcwLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDczLCAweDY4LFxuICAweDZmLCAweDc3LCAweDczLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZkLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDZiLCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDYyLCAweDY1LCAweDY3LCAweDYxLCAweDZlLCAweDczLFxuICAweDc1LCAweDcwLCAweDY1LCAweDcyLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDcyLCAweDc0LFxuICAweDY4LCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZlLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDU0LCAweDY1LCAweDcyLCAweDZkLCAweDczLFxuICAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDQ3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDYyLCAweDcyLCAweDYxLFxuICAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDY2LFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDYxLCAweDc1LCAweDY0LCAweDY5LFxuICAweDZmLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDJlLCAweDYzLFxuICAweDZmLCAweDZkLCAweDJmLCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDczLFxuICAweDY0LCAweDYxLCAweDY5LCAweDZjLCAweDc5LCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDY3LCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDZhLCAweDc1LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDczLCAweDY1LCAweDc1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDczLCAweDZlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYyLCAweDcyLCAweDZmLCAweDYxLFxuICAweDY0LCAweDYzLCAweDZmLCAweDYxLCAweDczLCAweDc0LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDcwLFxuICAweDcwLCAweDZjLCAweDY1LCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDY1LFxuICAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDczLCAweDYzLCAweDZjLCAweDY5LFxuICAweDYzLCAweDZiLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDY1LCAweDZlLCAweDcwLFxuICAweDY5LCAweDY1LCAweDYzLCAweDY1LCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDY2LCAweDcyLCAweDYxLCAweDZkLFxuICAweDY1LCAweDZmLCAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDcwLCAweDY4LCAweDZmLCAweDc0LCAweDZmLCAweDZjLCAweDY5LFxuICAweDZkLCAweDY5LCAweDc0LCAweDYzLCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDY5LCAweDc2LCAweDY5LCAweDZjLFxuICAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDZmLCAweDc1LCAweDYzLCAweDY4LCAweDYyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDc5LCAweDYxLCAweDZjLCAweDYxLCAweDczLCAweDZiLCAweDY1LFxuICAweDY0LCAweDc3LCAweDY4LCAweDZmLCAweDZjLCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDYzLCAweDZiLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY2LCAweDYxLCAweDY5LCAweDc0LCAweDY4LFxuICAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDc5LCAweDZmLCAweDY2LCAweDY2LFxuICAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDcwLCAweDY1LCAweDZmLCAweDc3LCAweDZlLCAweDY1LCAweDY0LCAweDZkLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDYxLCAweDZjLCAweDYyLCAweDc1LCAweDZkLCAweDc0LCAweDY4LCAweDY5LCAweDZlLFxuICAweDZiLCAweDYyLCAweDZjLCAweDZmLCAweDZmLCAweDY0LCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDc5LCAweDZkLCAweDYxLFxuICAweDZhLCAweDZmLCAweDcyLCAweDc0LCAweDcyLCAweDc1LCAweDczLCAweDc0LCAweDYzLCAweDYxLCAweDZlLCAweDZmLCAweDZlLFxuICAweDc1LCAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDc2LCAweDYxLCAweDZjLFxuICAweDY5LCAweDY0LCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDUzLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDRjLFxuICAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDc5LCAweDZmLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcyLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDY2LCAweDcyLCAweDY1LCAweDczLCAweDY4LCAweDcxLCAweDc1LFxuICAweDY5LCAweDc0LCAweDY1LCAweDY2LCAweDY5LCAweDZjLCAweDZkLCAweDczLCAweDY3LCAweDcyLCAweDYxLCAweDY0LCAweDY1LFxuICAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDcyLCAweDYyLCAweDYxLCAweDZlLCAweDY2LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDYyLCAweDYxLCAweDczLCAweDY5LCAweDczLCAweDY4LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLFxuICAweDc1LCAweDc0LCAweDZmLCAweDNiLCAweDcyLCAweDZmLCAweDc1LCAweDc0LCAweDY1LCAweDJlLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDZkLCAweDY5LCAweDc4LCAweDY1LCAweDY0LCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDU5LCAweDZmLFxuICAweDc1LCAweDcyLCAweDIwLCAweDczLCAweDZjLCAweDY5LCAweDY0LCAweDY1LCAweDc0LCAweDZmLCAweDcwLCAweDY5LCAweDYzLFxuICAweDYyLCAweDcyLCAweDZmLCAweDc3LCAweDZlLCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDcyLCAweDYxLFxuICAweDc3LCAweDZlLCAweDczLCAweDcwLCAweDZjLCAweDY5LCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDUyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDZmLCAweDY0LCAweDczLCAweDRjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDczLCAweDY0LCAweDZmLCAweDc1LCAweDYyLCAweDc0LCAweDYxLCAweDczLCAweDc5LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDYzLCAweDY4LCAweDY5LFxuICAweDY1LCAweDY2LCAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDZlLCAweDZmLCAweDc2LCAweDY1LCAweDZjLCAweDMxLFxuICAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDc1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZjLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDQzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLCAweDUzLCAweDcwLFxuICAweDYxLCAweDYzLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDZhLCAweDYxLCAweDZkLCAweDY1LCAweDczLFxuICAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDc0LCAweDc3LCAweDY5LCAweDYzLCAweDY1LCAweDMwLCAweDJjLCAweDMwLFxuICAweDMwLCAweDMwLCAweDUzLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDcwLCAweDYxLCAweDZlLCAweDY1LCAweDZjLCAweDczLFxuICAweDZmLCAweDZlLCAweDY3LCAweDczLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDczLCAweDY4LCAweDY5LCAweDY2LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDcwLCAweDZmLFxuICAweDczLCAweDc0LCAweDczLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDczLCAweDc3LCAweDY1LCAweDY1LCAweDZiLCAweDczLFxuICAweDYxLCAweDc2LCAweDZmLCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDY5LCAweDZjLFxuICAweDY1LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDc0LCAweDYxLFxuICAweDZjLCAweDcwLCAweDY4LCAweDYxLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDZkLCAweDYxLCAweDcyLCAweDZiLFxuICAweDczLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDczLCAweDYzLCAweDZjLFxuICAweDYxLCAweDY5LCAweDZkLCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDczLFxuICAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDczLCAweDc3LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDY4LFxuICAweDMzLCAweDNlLCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDZkLFxuICAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY0LCAweDUwLCAweDZmLCAweDc3LCAweDY1LFxuICAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDc0LCAweDZmLCAweDZiLCAweDY1LCAweDZlLCAweDczLCAweDZmLFxuICAweDZjLCAweDY5LCAweDY0LCAweDI4LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDYyLCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDczLCAweDczLCAweDc0LCAweDYxLCAweDY2LCAweDY2LCAweDc0LCAweDcyLCAweDY5LFxuICAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDZjLCAweDc5LCAweDY2LFxuICAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDU0LCAweDY4LCAweDY5LCAweDczLFxuICAweDIwLCAweDJmLCAweDJmLCAweDJkLCAweDJkLCAweDNlLCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY3LFxuICAweDc5LCAweDcwLCAweDc0LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDMxLCAweDM1LCAweDcwLCAweDc4LCAweDNiLFxuICAweDQ1LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDIyLCAweDYzLCAweDcyLCAweDZmLFxuICAweDczLCAweDczLCAweDczLCAweDcwLCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDZjLCAweDZmLCAweDY3LCAweDczLCAweDYyLFxuICAweDZmLCAweDc4LCAweDIyLCAweDNlLCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDZjLCAweDY1LCAweDYxLCAweDc2LFxuICAweDY1LCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDczLCAweDY3LCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDNjLCAweDJmLCAweDY4LCAweDM0LCAweDNlLCAweDcyLCAweDZmLCAweDYyLCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc2LCAweDc5LCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDJjLCAweDczLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDYzLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDczLFxuICAweDY5LCAweDY3LCAweDZlLCAweDczLCAweDYxLCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY1LCAweDcwLCAweDY4LCAweDYxLCAweDczLCAweDY1LCAweDNlLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDY1LCAweDZlLFxuICAweDVmLCAweDU1LCAweDUzLCAweDI2LCAweDIzLCAweDMzLCAweDM5LCAweDNiLCAweDMyLCAweDMwLCAweDMwLCAweDcwLCAweDc4LFxuICAweDVmLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY1LCAweDZlLCAweDZhLFxuICAweDZmLCAweDc5LCAweDYxLCAweDZhLCAweDYxLCAweDc4LCAweDJlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDZkLCAweDY5LCAweDc0LCAweDY4LCAweDU1LCAweDJlLCAweDUzLCAweDJlLCAweDIwLCAweDY4LCAweDZmLCAweDZjLCAweDY0LFxuICAweDczLCAweDcwLCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDYxLFxuICAweDc2LCAweDIyLCAweDNlLCAweDYzLCAweDY4LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDY0LCAweDZmLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDY5LFxuICAweDZmLCAweDcyLCAweDUzLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDMxLCAweDM5LCAweDM5LCAweDMwLCAweDczLCAweDcyLFxuICAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDZhLCAweDYxLCAweDcwLCAweDYxLFxuICAweDZlLCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDc3LFxuICAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDMyLCAweDNlLFxuICAweDYxLCAweDYyLCAweDc1LCAweDczLCAweDY1LCAweDYxLCAweDZjLCAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDcwLCAweDY1LFxuICAweDcyLCAweDYxLCAweDIyLCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDYzLCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDY4LFxuICAweDY5LCAweDZjLCAweDZjLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDZkLCAweDczLCAweDUwLCAweDY4LCAweDZmLCAweDc0LFxuICAweDZmLCAweDc0LCAweDcyLCAweDc1LCAweDc0LCAweDY4LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDZlLCAweDJlLCAweDcwLFxuICAweDY4LCAweDcwLCAweDNmLCAweDczLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDZmLCAweDc1LCAweDY5LCAweDczLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDZmLCAweDY2LCAweDYyLCAweDcyLCAweDY5LCAweDY1LCAweDY2LCAweDcyLCAweDZmLCAweDc3LCAweDIyLCAweDNlLCAweDY3LFxuICAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDZiLCAweDZjLCAweDZmLCAweDZmLCAweDZiLFxuICAweDczLCAweDU2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDQ2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDJlLCAweDZlLFxuICAweDY1LCAweDc0LCAweDJmLCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDdiLFxuICAweDBhLCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDczLFxuICAweDc0LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDYxLCAweDY0LCAweDc1LCAweDZjLCAweDc0LCAweDcxLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDZjLCAweDYxLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDczLCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDZkLCAweDYxLFxuICAweDY3LCAweDY5LCAweDYzLCAweDZkLCAweDZmLCAweDc0LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDcyLFxuICAweDMyLCAweDM1LCAweDMwLCAweDcwLCAweDc4LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDczLCAweDc0LCAweDY1LFxuICAweDcwLCAweDczLCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDY3LFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDY2LCAweDc1LCAweDZlLCAweDY0LFxuICAweDczLCAweDY4LCAweDZmLCAweDc0LCAweDY1LCAweDZjLCAweDYxLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDZkLCAweDZmLFxuICAweDc1LCAweDc0LCAweDY4LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY5LCAweDczLFxuICAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDY0LCAweDc1LCAweDc0LCAweDYzLCAweDY4LCAweDc0LCAweDY1LCAweDc4LFxuICAweDYxLCAweDczLCAweDY2LCAweDcyLCAweDc1LCAweDY5LCAweDc0LCAweDZlLCAweDc1LCAweDZjLCAweDZjLCAweDJjLCAweDdjLFxuICAweDdjLCAweDViLCAweDVkLCAweDNiLCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDUwLCAweDRmLCAweDUzLCAweDU0LCAweDIyLCAweDZmLCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDNjLCAweDYyLFxuICAweDcyLCAweDJmLCAweDNlLCAweDY2LCAweDZjLCAweDZmLCAweDZmLCAweDcyLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLFxuICAweDY0LCAweDY1LCAweDcwLCAweDc0LCAweDY4LCAweDIwLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDYyLCAweDYxLCAweDZlLFxuICAweDZiLCAweDczLCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDc0LCAweDMyLFxuICAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDY0LCAweDY1LCAweDYxLCAweDZjLFxuICAweDczLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDM1LCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDc1LCAweDcyLFxuICAweDZjLCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDcyLCAweDZiLCAweDczLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LFxuICAweDRkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDJlLCAweDJlLCAweDJlLCAweDNjLCAweDJmLCAweDYxLCAweDZkLCAweDZmLFxuICAweDZlLCAweDY3LCAweDYyLCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDZlLFxuICAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDcyLCAweDcyLFxuICAweDc5LCAweDY0LCAweDcyLCAweDYxLCAweDY2LCAweDc0LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcwLCAweDYxLFxuICAweDY3LCAweDY1LCAweDVmLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDJlLCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDcyLFxuICAweDY0LCAweDY1LCAweDZjLCAweDYxLCAweDc5LCAweDY0LCAweDcyLCAweDY1LCAweDYxLCAweDZkLCAweDcwLCAweDcyLCAweDZmLFxuICAweDc2LCAweDY1LCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDY0LFxuICAweDcyLCAweDc1LCAweDY3LCAweDczLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDYxLCAweDcwLCAweDcyLCAweDY5LFxuICAweDZjLCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY1LCAweDc4LFxuICAweDYxLCAweDYzLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDczLFxuICAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDU2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLCAweDczLCAweDY1LCAweDY1LFxuICAweDZkLCAweDczLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDIwLFxuICAweDI4LCAweDMyLCAweDMwLCAweDMwLCAweDczLCAweDYxLCAweDc2LCAweDY1LCAweDY0LCAweDVmLCAweDZjLCAweDY5LCAweDZlLFxuICAweDZiLCAweDY3LCAweDZmLCAweDYxLCAweDZjLCAweDczLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY3LCAweDcyLFxuICAweDY1LCAweDY1LCAweDZiLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDMzLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDc3LCAweDY4LCAweDZmLFxuICAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDI4LCAweDI5LCAweDNiLCAweDIyLCAweDIwLCAweDQyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDZjLCAweDY5LCAweDZlLCAweDc1LCAweDc4LCAweDZhLCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDcwLCAweDY5LCAweDc4LCAweDY1LCAweDZjLCAweDI3LCAweDI5LCAweDNiLCAweDIyLCAweDNlLCAweDI5LCAweDNiLFxuICAweDY5LCAweDY2LCAweDI4LCAweDJkLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDY0LCAweDYxLCAweDc2LCAweDY5LCAweDY0LFxuICAweDY4LCAweDZmLCAweDcyLCAweDczLCAweDY1LCAweDQ2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDcyLCAweDYxLCAweDY5LFxuICAweDczLCAweDY1LCAweDYyLCAweDZmLCAweDc4LCAweDY1LCAweDczLCAweDU0LCAweDcyLCAweDYxLCAweDYzLCAweDZiLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDJmLCAweDY1LCAweDZkLCAweDNlLCAweDYyLCAweDYxLCAweDcyLCAweDIyLFxuICAweDNlLCAweDJlLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDc0LCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDYxLCAweDZjLFxuICAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY4LCAweDY1LCAweDZlLCAweDcyLCAweDc5LFxuICAweDMyLCAweDM0LCAweDcwLCAweDc4LCAweDNiLCAweDczLCAweDY1LCAweDc0LCAweDc1LCAweDcwLCAweDY5LCAweDc0LCAweDYxLFxuICAweDZjLCAweDc5LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDcwLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDc3LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDc0LCAweDY4LCAweDY5LCAweDczLFxuICAweDJlLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDc0LCAweDc3LCAweDY4LCAweDY1LCAweDY1LCAweDZjLCAweDY3LCAweDY5LFxuICAweDcyLCAweDZjLCAweDczLCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDJmLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDNiLFxuICAweDYzLCAweDZjLCAweDc1LCAweDYyLCAweDczLCAweDczLCAweDc0LCAweDc1LCAweDY2LCAweDY2LCAweDYyLCAweDY5LCAweDYyLFxuICAweDZjLCAweDY1LCAweDc2LCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDMxLCAweDMwLCAweDMwLCAweDMwLCAweDZiLFxuICAweDZmLCAweDcyLCAweDY1LCAweDYxLCAweDdkLCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDYyLCAweDYxLCAweDZlLCAweDY0LFxuICAweDczLCAweDcxLCAweDc1LCAweDY1LCAweDc1LCAweDY1LCAweDNkLCAweDIwLCAweDdiLCAweDdkLCAweDNiLCAweDM4LCAweDMwLFxuICAweDcwLCAweDc4LCAweDNiLCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDdiLCAweDBkLCAweDBhLCAweDA5LCAweDA5LFxuICAweDYxLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDYzLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY5LCAweDcyLCAweDY5LFxuICAweDczLCAweDY4LCAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDczLCAweDQ2LCAweDZmLCAweDcyLCAweDZkLCAweDIyLCAweDc5LCAweDYxLCAweDY4LCAweDZmLFxuICAweDZmLCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDNiLCAweDQxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDY2LCAweDY5LFxuICAweDZlLCAweDY0LCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDMxLCAweDNlLCAweDY0LCAweDY1LCAweDYyLCAweDc1LCAweDY3LFxuICAweDc0LCAweDYxLCAweDczLCAweDZiLCAweDczLCAweDU1LCAweDUyLCAweDRjLCAweDIwLCAweDNkLCAweDYzLCAweDY1LCAweDZjLFxuICAweDZjLCAweDczLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDMxLCAweDMyLCAweDcwLCAweDc4LCAweDNiLCAweDcwLFxuICAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDZlLFxuICAweDczLCAweDMwLCAweDc4LCAweDM2LCAweDMwLCAweDMwLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDczLCAweDcwLFxuICAweDYxLCAweDY5LCAweDZlLCAweDYyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDc0LCAweDYxLCAweDc4LCAweDY1LCAweDczLFxuICAweDZkLCAweDY5LCAweDYzLCAweDcyLCAweDZmLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDZjLCAweDJkLCAweDJkLCAweDNlLFxuICAweDNjLCAweDJmLCAweDY3LCAweDY5LCAweDY2LCAweDc0LCAweDczLCAweDczLCAweDc0LCAweDY1LCAweDc2LCAweDY1LCAweDJkLFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDJlLCAweDdkLCAweDI5LCAweDNiLCAweDBhLFxuICAweDA5LCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLCAweDI4LCAweDMxLCAweDM5LCAweDM5LCAweDQ2LCAweDQxLFxuICAweDUxLCAweDNjLCAweDJmLCAweDcyLCAweDZmLCAweDY3LCAweDY1LCAweDcyLCAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweDZiLFxuICAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDMyLCAweDM4LCAweDcwLCAweDc4LCAweDNiLCAweDY2LCAweDY1LCAweDY1LFxuICAweDY0LCAweDczLCAweDNjLCAweDY4LCAweDMxLCAweDNlLCAweDNjLCAweDczLCAweDYzLCAweDZmLCAweDc0LCAweDc0LCAweDc0LFxuICAweDY1LCAweDczLCAweDc0LCAweDczLCAweDMyLCAweDMyLCAweDcwLCAweDc4LCAweDNiLCAweDY0LCAweDcyLCAweDY5LCAweDZlLFxuICAweDZiLCAweDI5LCAweDIwLCAweDdjLCAweDdjLCAweDIwLCAweDZjLCAweDY1LCAweDc3LCAweDY5LCAweDczLCAweDczLCAweDY4LFxuICAweDYxLCAweDZjLCAweDZjLCAweDIzLCAweDMwLCAweDMzLCAweDM5LCAweDNiLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLFxuICAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDMwLCAweDMwLCAweDcwLFxuICAweDc4LCAweDNiLCAweDZhLCAweDYxLCAweDNhLCAweGUzLCAweDgyLCAweDczLCAweDY5LCAweDZkLCAweDZmLCAweDZlLCAweDNjLFxuICAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDc5LCAweDZkLCAweDY1LCAweDY1LCAweDc0LFxuICAweDczLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDY1LCAweDYxLCAweDcwLCAweDc0LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDQyLCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDI5LCAweDIwLCAweDIxLCAweDNkLCAweDIwLFxuICAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDYzLCAweDZjLCAweDY5LCAweDcwLCAweDczLCAweDcyLCAweDZmLCAweDZmLFxuICAweDZkLCAweDczLCAweDZmLCAweDZlLCAweDZiLCAweDY1LCAweDc5LCAweDZkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDZkLFxuICAweDYxLCAweDY5LCAweDZlLCAweDJlLCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY2LCAweDc1LCAweDZlLCAweDZlLCAweDc5LCAweDc0LCAweDcyLCAweDY1LCAweDY1LCAweDczLCAweDYzLCAweDZmLFxuICAweDZkLCAweDJmLCAweDIyLCAweDMxLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDc3LCAweDZkLCAweDZmLCAweDY0LCAweDY1LFxuICAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLCAweDUzLCAweDU0LCAweDQxLCAweDUyLCAweDU0LCAweDZjLCAweDY1LCAweDY2LFxuICAweDc0LCAweDIwLCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDJjLCAweDIwLCAweDMyLCAweDMwLCAweDMxLCAweDI5LFxuICAweDNiLCAweDBhLCAweDdkLCAweDBhLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDJlLCAweDc2LCAweDY5LCAweDcyLCAweDc1LFxuICAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDY5LCAweDcyLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDc3LCAweDZmLFxuICAweDcyLCAweDczLCAweDc0LCAweDUwLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDcwLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDBhLCAweDZmLCAweDJkLCAweDYzLFxuICAweDYxLCAweDYzLCAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDczLCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDJjLFxuICAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDYxLCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDY5LCAweDJiLCAweDJiLCAweDI5LFxuICAweDdiLCAweDYxLCAweDY0LCAweDZmLCAweDYyLCAweDY1LCAweDI3LCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDY5LCAweDY0LFxuICAweDNkLCAweDMxLCAweDMwLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDNiLCAweDZkLCAweDY1LCAweDZlLCAweDc1LCAweDIwLFxuICAweDJlLCAweDMyLCAweDJlLCAweDZkLCAweDY5LCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDZiLCAweDY1LCAweDc2LFxuICAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDQzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDYyLFxuICAweDcyLCAweDc1LCAweDYzLCAweDY1LCAweDMyLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDU1LCAweDUyLCAweDRjLCAweDI5LFxuICAweDJiLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDdjLCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDY1LCAweDczLCAweDZjLFxuICAweDY5LCAweDYzLCAweDY1LCAweDY4LCAweDYxLCAweDcyLCAweDcyLCAweDc5LCAweDMxLCAweDMyLCAweDMwLCAweDIyLCAweDIwLFxuICAweDczLCAweDc3LCAweDY1LCAweDY1LCAweDc0LCAweDc0LCAweDcyLCAweDNlLCAweDBkLCAweDBhLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDY0LCAweDY5LCAweDY1LCAweDY3LCAweDZmLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDczLFxuICAweDc3LCAweDY5LCAweDczLCAweDczLCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDBhLCAweDIzLCAweDY2LCAweDY2LCAweDY2LFxuICAweDNiLCAweDIyLCAweDNlLCAweDRjLCAweDZmLCAweDY3LCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDIyLCAweDc0LCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDI5LCAweDIwLCAweDI2LCAweDI2LCAweDIwLFxuICAweDMxLCAweDM0LCAweDcwLCAweDc4LCAweDNiLCAweDczLCAweDZjLCAweDY1LCAweDY1LCAweDcwLCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDZhLCAweDYxLCAweDNhLCAweGUzLCAweDgzLCAweDY5LFxuICAweDY0LCAweDNkLCAweDIyLCAweDYzLCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDIyLCAweDc3LCAweDZmLCAweDcyLCAweDczLFxuICAweDY1LCAweDczLCAweDY4LCAweDZmLCAweDc0LCAweDczLCAweDJkLCAweDYyLCAweDZmLCAweDc4LCAweDJkLCAweDY0LCAweDY1LFxuICAweDZjLCAweDc0LCAweDYxLCAweDBhLCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDYyLCAweDY1LCAweDYxLCAweDcyLCAweDczLFxuICAweDNhLCAweDM0LCAweDM4LCAweDVhLCAweDNjLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDJkLCAweDcyLCAweDc1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDYyLFxuICAweDYxLCAweDZiLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDczLCAweDNkLCAweDIwLCAweDIyLCAweDIyLFxuICAweDNiLCAweDcwLCAweDY4LCAweDcwLCAweDIyLCAweDNlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMxLCAweDMzLFxuICAweDcwLCAweDc4LCAweDNiLCAweDYyLCAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDY4LCAweDY1LCAweDZjLCAweDZjLCAweDZmLFxuICAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNkLCAweDZmLCAweDNkLCAweDI1LCAweDMyLCAweDQ2LCAweDIwLCAweDZhLCAweDZmLFxuICAweDY5LCAweDZlLCAweDZkLCAweDYxLCAweDc5LCAweDYyLCAweDY1LCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIyLCAweDNlLCAweDJjLCAweDIwLCAweDY2LCAweDZhLCAweDczLCAweDY5LCAweDZkLCAweDY3LCAweDIyLFxuICAweDIwLCAweDIyLCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDRkLCAweDU0LCAweDZmLCAweDcwLCAweDQyLCAweDU0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDIyLCAweDZlLCAweDY1LCAweDc3LCAweDZjLCAweDc5LCAweDQ0LCAweDYxLCAweDZlLCAweDczLCAweDZiLFxuICAweDYzLCAweDdhLCAweDY1LCAweDYzLCAweDY4LCAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDZjLCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDM1LCAweDNlLCAweDY2LCAweDYxLCAweDcxLCAweDIyLCAweDNlLCAweDdhLFxuICAweDY4LCAweDJkLCAweDYzLCAweDZlLCAweDMxLCAweDMwLCAweDI5LCAweDNiLCAweDBhLCAweDJkLCAweDMxLCAweDIyLCAweDI5LFxuICAweDNiLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDYyLCAweDZjLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLFxuICAweDc1LCAweDZjLCAweDc5LCAweDY0LCAweDYxLCAweDc2LCAweDY5LCAweDczLCAweDJlLCAweDZhLCAweDczLCAweDI3LCAweDNiLFxuICAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDIxLCAweDczLCAweDc0LCAweDY1LCAweDY1LCAweDZjLCAweDIwLCAweDc5LCAweDZmLFxuICAweDc1LCAweDIwLCAweDY4LCAweDMyLCAweDNlLCAweDBkLCAweDBhLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZhLFxuICAweDY1LCAweDczLCAweDc1LCAweDczLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDIwLCAweDZkLCAweDY1LCAweDZlLCAweDc1LFxuICAweDJlLCAweDBkLCAweDBhLCAweDA5LCAweDBkLCAweDBhLCAweDc3LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDcyLCAweDY5LFxuICAweDczLCAweDZiLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDYyLCAweDJkLCAweDZjLCAweDY5LCAweDZiLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY3LCAweDY5LCAweDY2LFxuICAweDIyLCAweDIwLCAweDc2LCAweDY1LCAweDY3LCAweDYxLCAweDczLCAweDY0LCAweDYxLCAweDZlLCAweDczLCAweDZiLCAweDY1LFxuICAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDczLCAweDY4LCAweDcxLCAweDY5LCAweDcwLCAweDczLCAweDc1LCAweDZmLCAweDZkLFxuICAweDY5LCAweDczLCAweDZmLCAweDYyLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDY1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDY1LCAweDc0LCAweDZmLCAweDY0LCAweDZmLCAweDczLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDY1LFxuICAweDYxLCAweGMzLCAweGIxLCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGExLCAweDc0LCAweDY5LCAweDY1LFxuICAweDZlLCAweDY1LCAweDY4LCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZmLCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc1LCAweDY1LCAweDc2LFxuICAweDZmLCAweDY4LCAweDYxLCAweDYzLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZkLCAweDY5LFxuICAweDczLCAweDZkLCAweDZmLCAweDZkLCAweDY1LCAweDZhLCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDZlLCAweDY0LCAweDZmLFxuICAweDYxLCAweDcxLCAweDc1LCAweGMzLCAweGFkLCAweDY0LCAweGMzLCAweGFkLCAweDYxLCAweDczLCAweDczLCAweGMzLCAweGIzLFxuICAweDZjLCAweDZmLCAweDYxLCAweDc5LCAweDc1LCAweDY0LCAweDYxLCAweDY2LCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDc0LFxuICAweDZmLCAweDY0LCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDZmLFxuICAweDczLCAweDY0LCAweDYxLCAweDc0LCAweDZmLCAweDczLCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDczLCAweDY5LFxuICAweDc0LCAweDY5LCAweDZmLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDZmLCAweDYxLCAweDY4LCAweDZmLCAweDcyLCAweDYxLFxuICAweDZjLCAweDc1LCAweDY3LCAweDYxLCAweDcyLCAweDZkLCAweDYxLCAweDc5LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY2LCAweDZmLCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDczLCAweDcwLCAweDYxLCAweGMzLCAweGFkLCAweDczLCAweDZlLCAweDc1LCAweDY1LCAweDc2LCAweDYxLCAweDczLCAweDYxLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY2LCAweDZmLCAweDcyLCAweDZmLCAweDczLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDZmLFxuICAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDZkLCAweDY1LCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDY0LFxuICAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDc2LFxuICAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDcyLCAweDZhLCAweDZmLCAweDczLCAweGMzLFxuICAweGE5LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDY3LCAweDcyLFxuICAweDc1LCAweDcwLCAweDZmLCAweDY4LCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDY1LCAweDZjLCAweDZjLCAweDZmLCAweDczLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY3LCAweDZmLCAweDYxLCAweDZkLCAweDY5LCAweDY3LCAweDZmLCAweDYzLCAweDZmLCAweDczLFxuICAweDYxLCAweDczLCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZkLFxuICAweDY5LCAweDczLCAweDZkLCAweDYxLCAweDYxLCAweDY5LCAweDcyLCAweDY1LCAweDczLCAweDZhLCAweDc1LCAweDZjLCAweDY5LFxuICAweDZmLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDY4LCAweDYxLCAweDYzLCAweDY5LCAweDYxLCAweDY2LCAweDYxLFxuICAweDc2LCAweDZmLCAweDcyLCAweDZhLCAweDc1LCAweDZlLCAweDY5LCAweDZmLCAweDZjLCAweDY5LCAweDYyLCAweDcyLCAweDY1LFxuICAweDcwLCAweDc1LCAweDZlLCAweDc0LCAweDZmLCAweDYyLCAweDc1LCAweDY1LCAweDZlLCAweDZmLCAweDYxLCAweDc1LCAweDc0LFxuICAweDZmLCAweDcyLCAweDYxLCAweDYyLCAweDcyLCAweDY5LCAweDZjLCAweDYyLCAweDc1LCAweDY1LCAweDZlLCAweDYxLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDcyLCAweDdhLCAweDZmLCAweDczLCAweDYxLCAweDYyLCAweDY1LFxuICAweDcyLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDY3LCAweDZmLCAweDYzLCAweGMzLFxuICAweGIzLCAweDZkLCAweDZmLCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDZmLCAweDZhLCAweDc1LCAweDY1LCAweDY3LCAweDZmLFxuICAweDcwLCAweDY1LCAweDcyLCAweGMzLCAweGJhLCAweDY4LCAweDYxLCAweDYyLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDc5LCAweDZlLCAweDc1LCAweDZlLCAweDYzLCAweDYxLCAweDZkLCAweDc1LCAweDZhLCAweDY1LCAweDcyLCAweDc2LFxuICAweDYxLCAweDZjLCAweDZmLCAweDcyLCAweDY2LCAweDc1LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY5LCAweDYyLCAweDcyLFxuICAweDZmLCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDYxLCAweDY5LCAweDY3LCAweDc1LCAweDYxLCAweDZjLCAweDc2LCAweDZmLFxuICAweDc0LCAweDZmLCAweDczLCAweDYzLCAweDYxLCAweDczLCAweDZmLCAweDczLCAweDY3LCAweDc1LCAweGMzLCAweGFkLCAweDYxLFxuICAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDZmLCAweDczLCAweDZmLCAweDZkLCAweDZmLCAweDczLCAweDYxLCAweDc2LCAweDY5LFxuICAweDczLCAweDZmLCAweDc1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDZlLCAweDZlLFxuICAweDZmLCAweDYzLCAweDY4LCAweDY1LCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLCAweDY2LCAweDYxLCAweDZjLCAweDc0LFxuICAweDYxLCAweDY1LCAweDc1LCAweDcyLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDY5LFxuICAweDYzLCAweDY4LCAweDZmLCAweDYzLCAweDc1LCAweDcyLCAweDczLCAweDZmLCAweDYzLCAweDZjLCAweDYxLCAweDc2LCAweDY1LFxuICAweDYzLCAweDYxLCAweDczLCAweDYxLCAweDczLCAweDZjLCAweDY1LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDZjLCAweDYxLFxuICAweDdhLCAweDZmLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDZmLCAweDZmLCAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDc2LFxuICAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDYxLCAweDcwLCAweDZmLCAweDc5LCAweDZmLCAweDZhLCAweDc1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDYxLCAweDc2LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDZmLCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDczLFxuICAweDYzLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDZmLCAweDcwLCAweDY5LCAweDczLFxuICAweDZmLCAweDczLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDZlLCAweDY4LCAweDYxLCAweDYzLCAweDY1LCAweDZlLCAweGMzLFxuICAweGExLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDcyLFxuICAweDZmLCAweDYzLCAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDYxLCAweDcwLCAweDYxLFxuICAweDcwLCAweDY1LCAweDZjLCAweDZkLCAweDY1LCAweDZlLCAweDZmLCAweDcyLCAweGMzLCAweGJhLCAweDc0LCAweDY5LCAweDZjLFxuICAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDZmLCAweDZhLCAweDZmLCAweDcyLCAweDY3LCAweDY1LCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDZlLFxuICAweDYxLCAweDY0LCAweDY5LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDY3LCAweDc1LFxuICAweDY1LCAweDY1LCAweDZjLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDZjLCAweDZmLCAweDYzLCAweDZmLFxuICAweDYzLCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDc0LCAweDZmLCAweDczLCAweDZkLCAweDYxLCAweDY0LCAweDcyLCAweDY1LFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweGMzLFxuICAweGIxLCAweDZmLCAweDcxLCAweDc1LCAweDY1LCAweDY0LCAweDYxLCAweDcwLCAweDYxLCAweDczLCAweDYxLCAweDcyLCAweDYyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDY4LCAweDY5LCAweDZhLCAweDZmLCAweDczLCAweDc2LCAweDY5LCAweDYxLCAweDZhLFxuICAweDY1LCAweDcwLCAweDYxLCAweDYyLCAweDZjLCAweDZmLCAweGMzLCAweGE5LCAweDczLCAweDc0LCAweDY1LCAweDc2LCAweDY5LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY1LCAweDY5LCAweDZlLCAweDZmLCAweDY0LCAweDY1LCAweDZhLCAweDYxLCAweDcyLFxuICAweDY2LCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDYzLCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDZlLCAweDZmLCAweDcyLFxuICAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDYxLCAweDc0LFxuICAweDZmLCAweDZkLCAweDYxLCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDZmLCAweDczLCAweDZjLCAweDc1LCAweDZlLCAweDY1LFxuICAweDczLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDczLCAweDc2LCAweDY5LCAweDZjLCAweDZjLCAweDYxLCAweDc2LCAweDY1LFxuICAweDZlLCAweDY0LCAweDZmLCAweDcwLCAweDY1LCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDcwLCAweDZmLCAweDczLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY3LCAweDYxLCAweDZkLCAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LFxuICAweDc2LCAweDYxLCAweDcwLCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDc2LFxuICAweDYxLCAweDZkLCAweDZmLCAweDczLCAweDdhLCAweDZmLCAweDZlLCAweDYxLCAweDczLCAweDYxLCAweDZkLCAweDYyLCAweDZmLFxuICAweDczLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDYxLCAweDYyLFxuICAweDc1LCAweDczLCAweDZmLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDc1LCAweDYyLCAweDY5LCAweDcyLFxuICAweDcyLCAweDY5LCAweDZmLCAweDZhLCAweDYxLCAweDc2LCAweDY5LCAweDc2LCAweDY5LCAweDcyLCAweDY3LCAweDcyLCAweDYxLFxuICAweDY0LCAweDZmLCAweDYzLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDYxLCAweDZjLCAweDZjLCAweGMzLCAweGFkLCAweDZhLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDZjLCAweDY5LCAweDcyLCAweDczLCAweDc1LFxuICAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDczLCAweDZmLCAweDczLCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDczLFxuICAweDZjLCAweDZjLCAweDYxLCAweDZkLCAweDYxLCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweGMzLCAweGE5LCAweDczLFxuICAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZlLCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDcwLFxuICAweDZjLCAweDYxLCAweDdhLCAweDYxLCAweDY4LCAweDc1LCAweDZkLCAweDZmLCAweDcyLCAweDcwLCAweDYxLCAweDY3LCAweDYxLFxuICAweDcyLCAweDZhLCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDczLFxuICAweDZjLCAweDYxLCAweDczLCAweDYyLCAweDZmLCAweDZjLCAweDczLCAweDYxLCAweDYyLCAweDYxLCAweGMzLCAweGIxLCAweDZmLFxuICAweDY4LCAweDYxLCAweDYyLCAweDZjLCAweDYxLCAweDZjLCAweDc1LCAweDYzLCAweDY4LCAweDYxLCAweGMzLCAweDgxLCAweDcyLFxuICAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDZhLCAweDc1LCAweDY3LCAweDYxLCAweDcyLCAweDZlLFxuICAweDZmLCAweDc0LCAweDYxLCAweDczLCAweDc2LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDYxLCAweDZjLCAweDZjLCAweGMzLFxuICAweGExLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDY0LCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDYxLCAweDYyLFxuICAweDYxLCAweDZhLCAweDZmLCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGE5LCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDY2LCAweDY5LCAweDcyLFxuICAweDZkLCAweDYxLCAweDYzLCAweDZmLCAweDczLCAweDc0LCAweDZmLCAweDY2LCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDYxLCAweDY4LCAweDZmLCAweDY3LCAweDYxLCAweDcyLCAweDYxLCAweDcyLCAweDc0LCAweDY1LFxuICAweDczLCAweDZjLCAweDY1LCAweDc5LCAweDY1LCAweDczLCAweDYxLCAweDcxLCAweDc1LCAweDY1LCAweDZjLCAweDZkLCAweDc1LFxuICAweDczLCAweDY1LCAweDZmLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDYzLCAweDZmLCAweDczLFxuICAweDZkLCAweDY5LCAweDc0LCAweDYxLCAweDY0LCAweDYzLCAweDY5LCAweDY1LCAweDZjLCAweDZmLCAweDYzLCAweDY4LCAweDY5LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDY1LCAweDY0LCAweDZmLCAweDY3LCAweDYxLCAweDZlLCAweDYxLCAweDcyLCAweDczLFxuICAweDYxLCAweDZlLCAweDc0LCAweDZmLCAweDY1LCAweDc0LCAweDYxLCAweDcwLCAweDYxLCAweDY0LCAweDY1LCAweDYyLCAweDY1LFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY1LCAweDYxLFxuICAweDY0LCAweDc1LCAweDY0LCAweDYxLCAweDczLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDZmLCAweDc2LCAweDY5LCAweDY1LFxuICAweDZhLCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDYxLCAweDY3LCAweDc1LCAweDYxLCAweDczLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDYzLCAweDZmLFxuICAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDc1LCAweDczLCAweDY1LCAweDc2LCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDZkLCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDc5LCAweDczLCAweDc0LFxuICAweDY1LCAweDZkLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDYxLCAweDZlLCAweDZlLCAweDY1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLFxuICAweDc1LCAweDcwLCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZjLCAweDZmLCAweDYyLCAweDYxLCAweDZjLCAweDZkLFxuICAweDY1LCAweDY0LCAweDY5LCAweDc1LCAweDZkLCAweDY2LCAweDY5LCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDc1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDczLFxuICAweDc1LCAweDZjLCAweDc0LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDcyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDZmLCAweDcyLCAweDZkLCAweDYxLFxuICAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDc2LCAweDY1LCAweDZjLCAweDY5LCAweDczLCAweDczLCAweDc1LCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDczLFxuICAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDZmLCAweDY0LCAweDc1LCAweDZjLCAweDY1LCAweDZkLCAweDZmLFxuICAweDYyLCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDYzLCAweDY4LCAweDcwLCAweDY4LCAweDZmLFxuICAweDc0LCAweDZmLCAweDczLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY5LCAweDc0LCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLFxuICAweDZjLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDZlLFxuICAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDc0LFxuICAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDY1LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLCAweDY1LFxuICAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDY2LCAweDcyLCAweDY5LFxuICAweDY1LCAweDZlLCAweDY0LCAweDZjLCAweDYxLCAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDYxLCAweDc1LCAweDc0LCAweDY4LFxuICAweDZmLCAweDcyLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDY1LFxuICAweDc3LCAweDczLCAweDc1LCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDcyLFxuICAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDY1LFxuICAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDY0LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY0LCAweDZmLCAweDc1LCAweDYyLCAweDZjLCAweDY1LCAweDcwLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDczLFxuICAweDc1LCAweDZlLCAweDY5LCAweDcxLCAweDc1LCAweDY1LCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY3LCAweDc5LCAweDZlLCAweDYxLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY2LCAweDY5LCAweDY3LFxuICAweDc1LCAweDcyLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDc1LCAweDczLCAweDc0LFxuICAweDZmLCAweDZkLCAweDZmLCAweDY2LCAweDY2LCAweDczLCAweDY1LCAweDc0LCAweDZjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LFxuICAweDcyLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LFxuICAweDcyLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDczLCAweDc1LFxuICAweDcwLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY4LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZkLCAweDY1LFxuICAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDczLCAweDczLCAweDYzLCAweDY4LFxuICAweDZmLCAweDZmLCAweDZjLCAweDY2LCAweDc1LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDY4LCAweDYxLCAweDY0LFxuICAweDZmLCAweDc3LCAweDY0LCAweDY1LCAweDYyLCAweDYxLCAweDc0LCAweDY1LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LFxuICAweDczLCAweDRmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLFxuICAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZjLCAweDY1LCAweDYxLCAweDY3LCAweDc1LCAweDY1LCAweDYzLFxuICAweDY4LCAweDcyLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZlLCAweDZmLFxuICAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDcyLFxuICAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLFxuICAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDc3LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDQ2LCAweDcyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDczLCAweDc0LCAweDcyLFxuICAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDRjLCAweDZmLCAweDZlLCAweDY0LFxuICAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LFxuICAweDY0LCAweDY0LCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDY1LFxuICAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLCAweDY3LCAweDY3LCAweDZjLCAweDY1LCAweDcwLFxuICAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYzLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDczLCAweDc0LCAweDcyLFxuICAweDY1LCAweDYxLCAweDZkLCAweDc5LCAweDY1LCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDYxLCAweDc0LCAweDc0LCAweDYxLFxuICAweDYzLCAweDZiLCAweDczLCAweDc0LCAweDcyLCAweDY1LCAweDY1LCAweDc0LCAweDY2LCAweDZjLCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDIyLCAweDNlLFxuICAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDY1LCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDY2LCAweDc1LCAweDZjLCAweDc2LFxuICAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDc5LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDZjLCAweDY1LFxuICAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDczLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY0LCAweDYxLCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDczLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY2LCAweDY5LCAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDc2LCAweDY5LFxuICAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDc2LCAweDZmLCAweDZjLFxuICAweDc1LCAweDZkLCAweDY1LCAweDUyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDZkLCAweDc1LCAweDczLCAweDY1LFxuICAweDc1LCAweDZkLCAweDZkLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLCAweDc5LFxuICAweDZkLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYzLCAweDY4LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDc1LCAweDcyLCAweDc2LCAweDY1LCAweDc5LCAweDYyLCAweDY1LCAweDY2LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc5LCAweDZkLCAweDYyLCAweDZmLCAweDZjLCAweDZkLCAweDZmLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDY1LCAweDY1LCAweDYzLCAweDY4LCAweDZkLCAweDZmLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY5LCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDcyLFxuICAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDQ1LCAweDc1LFxuICAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDc3LCAweDc0LCAweDY4LCAweDZjLCAweDY1LCAweDY3LFxuICAweDYxLCAweDYzLCAweDc5LCAweDZkLCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDc3LCAweDY1LFxuICAweDcyLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZjLFxuICAweDYzLCAweDZjLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLFxuICAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZkLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLFxuICAweDcwLCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDYxLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZkLCAweDcwLFxuICAweDZjLCAweDc5LCAweDcyLCAweDYxLCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLFxuICAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LFxuICAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDYzLFxuICAweDZmLCAweDcyLCAweDZlLCAweDY1LCAweDcyLCAweDZmLCAweDc1LCAweDc0LCAweDcwLCAweDc1LCAweDc0LCAweDZkLCAweDY1LFxuICAweDZkLCAweDZmLCAweDcyLCAweDc5LCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDcwLCAweDZmLCAweDZjLFxuICAweDY5LCAweDYzLCAweDY1LCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDZjLCAweDczLCAweDRlLCAweDc1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDczLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LFxuICAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDczLFxuICAweDY5LCAweDZjLCAweDc2LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYyLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDYyLCAweDcyLCAweDZmLFxuICAweDc3LCAweDczLCAweDY1LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDczLCAweDQ3LCAweDZjLCAweDZmLCAweDYyLFxuICAweDYxLCAweDZjLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LFxuICAweDc0LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYyLCAweDc1LCAweDY0LCAweDY3LCAweDY1LCAweDc0LFxuICAweDZlLCAweDZmLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDYzLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDYzLFxuICAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDYxLFxuICAweDY2LCAweDY1LCAweDc0LCAweDc5LCAweDYzLCAweDY4LCAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDcwLCAweDY5LFxuICAweDcyLCAweDY5LCAweDc0LCAweDJkLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LFxuICAweDYxLCAweDY0LCAweDZkLCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDY1LFxuICAweDY0LCAweDcyLCAweDc1LCAweDczLCAweDczLCAweDY5LCAweDYxLCAweDcwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LFxuICAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDUzLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDYyLFxuICAweDcyLCAweDZmLCAweDZiLCAweDY1LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDYzLCAweDY4LFxuICAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY2LCAweDYxLCAweDYzLFxuICAweDc0LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDJkLCAweDYyLCAweDYxLCAweDczLFxuICAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LFxuICAweDY3LCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDY1LCAweDY0LFxuICAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDY1LCAweDY0LCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDY5LFxuICAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDZjLFxuICAweDc3LCAweDYxLCAweDc5LCAweDczLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDc0LFxuICAweDc0LCAweDZmLCAweDZkLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDIyLCAweDNlLCAweDI5LCAweDdiLCAweDc2LCAweDYxLFxuICAweDcyLCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDY2LCAweDY5LCAweDc4LCAweDZmLCAweDcyLCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDQ4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDJlLCAweDcwLCAweDc1LCAweDczLCAweDY4LCAweDI4LFxuICAweDYzLCAweDZmLCAweDc1LCAweDcwLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDZlLCAweDYyLFxuICAweDcyLCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDZjLCAweDYxLCAweDc1LCAweDZlLCAweDYzLCAweDY4LCAweDUyLCAweDY1LFxuICAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDc0LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDY5LCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDQyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDYxLCAweDc1LCAweDc0LFxuICAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDY3LCAweDZmLCAweDc0LFxuICAweDUzLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDZmLCAweDcyLCAweDYxLFxuICAweDZjLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY1LCAweDY0LCAweDQzLCAweDY4LFxuICAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDRkLCAweDZmLCAweDYyLCAweDY5LFxuICAweDZjLCAweDY1LCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLFxuICAweDc5LCAweDUzLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDczLFxuICAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY1LCAweDY0LCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDYzLFxuICAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LCAweDQxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDczLFxuICAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZmLFxuICAweDZiLCAweDY5LCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDZkLCAweDYxLCAweDdhLFxuICAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDY0LCAweDc2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDY5LCAweDZlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNhLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY0LCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDY3LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDQyLFxuICAweDQ1LCAweDQ3LCAweDQ5LCAweDRlLCAweDIwLCAweDRkLCAweDY1LCAweDc4LCAweDY5LCAweDYzLCAweDZmLCAweDczLCAweDc0LFxuICAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDY4LCAweDY1LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDQ5LCAweDczLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDc0LCAweDczLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLFxuICAweDY1LCAweDUzLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LFxuICAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDZkLFxuICAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDZjLCAweDUzLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDJlLCAweDBhLFxuICAweDBhLCAweDRmLCAweDZlLCAweDY1LCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc1LCAweDIyLCAweDNlLCAweDUwLCAweDY4LCAweDY5LCAweDZjLCAweDY5LCAweDcwLCAweDYxLCAweDc3LCAweDYxLCAweDcyLFxuICAweDY0LCAweDczLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY1LCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LFxuICAweDczLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDczLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDUzLFxuICAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDY0LCAweDY1LCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDc3LCAweDY1LFxuICAweDY1LCAweDZiLCAweDZjLCAweDc5LCAweDIwLCAweDI4LCAweDY1LCAweDJlLCAweDY3LCAweDJlLCAweDYyLCAweDY1LCAweDY4LFxuICAweDY5LCAweDZlLCAweDY0LCAweDY0LCAweDZmLCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDZjLCAweDZmLCAweDY3LCAweDY3LFxuICAweDY1LCAweDY0LCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDYyLCAweDNlLCAweDNjLFxuICAweDJmLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDczLFxuICAweDYxLCAweDczLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDczLCAweDczLCAweDc1LCAweDY1LCAweDY0LCAweDMzLCAweDMwLCAweDMwLCAweDcwLCAweDc4LCAweDdjLCAweDYzLCAweDYxLFxuICAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDczLCAweDYzLCAweDY4LFxuICAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDQyLCAweDcyLCAweDYxLCAweDdhLFxuICAweDY5LCAweDZjLCAweDczLCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDIyLFxuICAweDNlLCAweDYyLCAweDY1LCAweDc5LCAweDZmLCAweDZlLCAweDY0LCAweDJkLCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDY1LFxuICAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDZkLFxuICAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY1LCAweDQ2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDYxLFxuICAweDZkLCAweDY1LCAweDcyLCAweDYxLCAweDNjLCAweDJmLCAweDY4LCAweDMxLCAweDNlLCAweDBhLCAweDVmLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDIyLCAweDZjLCAweDY1LCAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDczLCAweDc0LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBkLCAweDBhLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY1LCAweDcyLFxuICAweDRmLCAweDc4LCAweDY2LCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDczLFxuICAweDc1LCAweDcyLCAweDc2LCAweDY5LCAweDc2LCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY2LCAweDY1LFxuICAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDQ0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDczLCAweDY5LCAweDdhLFxuICAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDc4LCAweDc0LFxuICAweDIyLCAweDNlLCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDczLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZiLFxuICAweDczLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDY0LFxuICAweDYxLCAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDc5LCAweDZmLCAweDZlLCAweDY1LCAweDQxLFxuICAweDY2LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDUwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDNjLCAweDYyLCAweDcyLFxuICAweDIwLCAweDJmLCAweDNlLCAweDc3LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDYzLFxuICAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDdjLCAweDdjLCAweDIwLCAweDdiLCAweDdkLFxuICAweDNiLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDIyLCAweDNlLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LFxuICAweDczLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc5LCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDIyLCAweDNlLCAweDY2LFxuICAweDYxLCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDc1LCAweDczLCAweDZkLCAweDY5LFxuICAweDZlLCAweDc1LCAweDc0LCAweDY1LCAweDYyLCAweDY1LCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDZmLFxuICAweDc0LCAweDY1LCAweDczLCAweDMxLCAweDM1LCAweDMwLCAweDcwLCAweDc4LCAweDdjLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc0LCAweDY1LCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZjLFxuICAweDIyLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDY1LCAweDY0LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNiLFxuICAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDYxLCAweDZjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZjLCAweDMxLFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDc1LCAweDcwLCAweDcwLCAweDcyLFxuICAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDJlLCAweDcwLCAweDZlLFxuICAweDY3LCAweDIyLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZkLCAweDJlLCAweDQxLCAweDYzLCAweDYzLCAweDY1LFxuICAweDczLCAweDczLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDczLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDczLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDQ4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDczLCAweDZjLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LCAweDIyLCAweDI2LFxuICAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDIwLCAweDQyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDJlLCAweDIwLFxuICAweDU3LCAweDY5LCAweDc0LCAweDY4LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLCAweDZmLCAweDc3LCAweDZlLFxuICAweDY1LCAweDcyLCAweDczLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY2LFxuICAweDY5LCAweDc0LCAweDZhLCAweDUxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDYxLCAweDZlLCAweDZlLCAweDc1LCAweDYxLFxuICAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDYyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LFxuICAweDY2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY3LCAweDZmLCAweDZmLCAweDY3LCAweDZjLCAweDY1LCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDY5LCAweDJiLCAweDJiLCAweDI5LCAweDIwLCAweDdiLCAweDY5LCAweDczLFxuICAweDcyLCAweDYxLCAweDY1LCAweDZjLCAweDczLCAweDYxLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDYzLFxuICAweDY5LCAweDY0LCAweDY1LCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDIyLCAweDNlLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDYyLCAweDcyLCAweDYxLCAweDZlLCAweDYzLFxuICAweDY4LCAweDcwLCAweDY5LCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLCAweDNjLCAweDcyLFxuICAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDJkLCAweDJkLFxuICAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDc0LCAweDc5LCAweDczLCAweDY1LCAweDc4LFxuICAweDc1LCAweDYxLCAweDZjLCAweDYyLCAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDc1LCAweDJlLCAweDZhLCAweDcwLCAweDY3LFxuICAweDIyLCAweDIwLCAweDMxLCAweDMwLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDZmLCAweDYyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDczLCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDJjLCAweDIwLCAweDQ5LCAweDZlLCAweDYzLCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDY0LCAweDc5LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc1LCAweDIyLCAweDIwLCAweDZjLCAweDc5LCAweDcyLCAweDY5LCAweDYzLCAweDczLCAweDc0LCAweDZmLFxuICAweDY0LCAweDYxLCAweDc5LCAweDJlLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDc1LFxuICAweDZlLCAweDc0LCAweDc5LCAweDVmLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDJlLCAweDQ2LCAweDYxLCAweDZkLCAweDY5LFxuICAweDZjLCAweDc5LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY1LCAweDY0LCAweDRkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LFxuICAweDc0LCAweDZjLCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDY2LCAweDUwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLFxuICAweDc0LCAweDc1LCAweDcyLCAweDZiLCAweDY1LCAweDc5LCAweDI5LCAweDNiLCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY3LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDcyLFxuICAweDcyLCAweDZmLCAweDcyLCAweDczLCAweDQ0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDdkLCAweDY1LCAweDZjLFxuICAweDczLCAweDY1LCAweDdiLCAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc0LCAweDQyLCAweDZjLCAweDZmLCAweDY3LFxuICAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLFxuICAweDJlLCAweDY2LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDczLFxuICAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDMxLCAweDMwLCAweDcwLCAweDc4LCAweDIwLCAweDMwLCAweDcwLFxuICAweDcyLCAweDYxLCAweDY3LCAweDZkLCAweDYxLCAweDY2LCAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDc5LCAweDZhLCAweDc1LFxuICAweDZlLCAweDY5LCAweDZmLCAweDcyLCAweDY0LCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDcyLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDZjLCAweDc1LCAweDY3LFxuICAweDY5LCAweDZlLCAweDM1LCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDIyLFxuICAweDNlLCAweDYyLCAweDZmLCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDJlLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDI4LFxuICAweDYxLCAweDc2LCAweDYxLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDVmLFxuICAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZkLCAweDczLCAweDczLCAweDYzLFxuICAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJjLCAweDY2LCAweDY5LCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY1LCAweDcyLCAweDc0LCAweDI4LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLFxuICAweDcyLCAweDUzLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDIyLCAweDNlLFxuICAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIyLCAweDNlLCAweDBhLCAweDJhLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDU0LFxuICAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDczLCAweDY1LCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDZhLCAweDY1LFxuICAweDcyLCAweDczLCAweDY1LCAweDc5LCAweDRlLCAweDY1LCAweDc3LCAweDczLCAweDNjLCAweDJmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY5LCAweDY2LCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDZhLCAweDc1LFxuICAweDcyLCAweDc5LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDQzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LFxuICAweDY1LCAweDUzLCAweDU0LCAweDQxLCAweDUyLCAweDU0LCAweDIwLCAweDYxLCAweDYzLCAweDcyLCAweDZmLCAweDczLCAweDczLFxuICAweDVmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDcwLCAweDZmLCAweDYzLCAweDZiLCAweDY1LCAweDc0LCAweDYyLCAweDZmLFxuICAweDc4LCAweDIyLCAweDNlLCAweDBhLCAweDUzLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDIwLCAweDQ0LCAweDYxLFxuICAweDc2LCAweDY5LCAweDY0LCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDQxLCAweDcwLCAweDcyLCAweDY5LCAweDZjLFxuICAweDIwLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDIyLCAweDNlLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIyLCAweDNlLCAweDYyLFxuICAweDZmLCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDczLCAweDYzLCAweDYxLFxuICAweDZkLCAweDcwLCAweDc1LCAweDczLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDdjLCAweDdjLCAweDIwLFxuICAweDViLCAweDVkLCAweDNiLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDJlLCAweDY3LCAweDc1LCAweDY5LCAweDc0LFxuICAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LFxuICAweDNhLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDRmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLFxuICAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDIyLCAweDIwLCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDczLCAweDc3LCAweDY5LCAweDZjLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDY2LCAweDczLCAweDc3LCAweDY1LFxuICAweDY0LCAweDY1LCAweDZlLCAweDQzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDY5LFxuICAweDZjLCAweDc5LCAweDIwLCAweDc5LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDUzLCAweDc0LCAweDcyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDBhLCAweDBhLCAweDU3LCAweDY4LCAweDY5LCAweDZjLCAweDc0LCAweDYxLCAweDc5LCAweDZjLCAweDZmLCAweDcyLFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDNhLCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDc0LCAweDY2LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIyLCAweDI5LFxuICAweDIwLCAweDJiLCAweDIwLCAweDIyLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDYyLCAweDc1LCAweDc5LFxuICAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDRkLCAweDY1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIyLCAweDNlLCAweDZmLCAweDcwLCAweDcwLCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDM1LCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLFxuICAweDc2LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY1LCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDIwLCAweDYzLCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDY1LCAweDZkLCAweDYxLFxuICAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDZkLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY4LCAweDYxLCAweDcwLFxuICAweDcwLCAweDY1LCAweDZlLCAweDNjLCAweDJmLCAweDZlLCAweDYxLCAweDc2LCAweDNlLCAweDZiLCAweDYxLCAweDZlLCAweDczLFxuICAweDYxLCAweDczLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDQ5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDNkLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLFxuICAweDY4LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY1LCAweDMwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDIwLFxuICAweDBhLCAweDBhLCAweDQ5LCAweDZlLCAweDIwLCAweDIwLCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDUwLCAweDZmLFxuICAweDZjLCAweDczLCAweDZiLCAweDY5LCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDZhLCAweDZmLCAweDcyLFxuICAweDY0LCAweDYxLCAweDZlLCAweDQyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDUzLCAweDc0LCAweDYxLCAweDcyLFxuICAweDc0LCAweDIwLCAweDJkLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDMyLCAweDJlLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDZlLCAweDY1LCAweDc3LCAweDczLCAweDIyLCAweDNlLCAweDMwLCAweDMxLCAweDJlLCAweDZhLCAweDcwLCAweDY3LFxuICAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDZkLFxuICAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDZlLCAweDY5LCAweDZmLCAweDcyLCAweDQ5LCAweDUzLFxuICAweDQyLCAweDRlLCAweDIwLCAweDMwLCAweDMwLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDY3LCAweDc1LCAweDY5LFxuICAweDY0LCAweDY1LCAweDczLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDI5LCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDY5LCAweDcyLCAweDJlLCAweDc4LCAweDZkLCAweDZjLCAweDIyLFxuICAweDIwLCAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLFxuICAweDJkLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDcyLCAweDY1LCAweDY3LCAweDQ1LCAweDc4LCAweDcwLCAweDNhLFxuICAweDY4LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDc2LCAweDY5LFxuICAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDcwLCAweDY4LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDc0LFxuICAweDcyLCAweDNlLCAweDBkLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDBhLCAweDA5LCAweDc2LCAweDYxLFxuICAweDcyLCAweDIwLCAweDNlLCAweDI3LCAweDI5LCAweDNiLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDBhLCAweDYyLCAweDYxLCAweDY4LCAweDYxLCAweDczLCAweDYxLFxuICAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDY5LCAweDZjLCAweDY3LCAweDYxLCAweDZjLCAweDY1LCAweDY3LCAweDZmLCAweDZkLFxuICAweDYxLCAweDY3LCAweDc5LCAweDYxLCAweDcyLCAweDcwLCAweDZmLCAweDZjLCAweDczLCAweDZiLCAweDY5LCAweDczLCAweDcyLFxuICAweDcwLCAweDczLCAweDZiLCAweDY5LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGU0LCAweGI4LCAweGFkLFxuICAweGU2LCAweDk2LCAweDg3LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweGU3LCAweGI5LCAweDgxLCAweGU5LFxuICAweGFiLCAweDk0LCAweGU0LCAweGJmLCAweGExLCAweGU2LCAweDgxLCAweGFmLCAweGU0LCAweGI4LCAweGFkLCAweGU1LCAweDliLFxuICAweGJkLCAweGU2LCAweDg4LCAweDkxLCAweGU0LCAweGJiLCAweGFjLCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGI4LCAweGFhLFxuICAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDhmLCAweGI4LCAweGU3LCAweGFlLCAweGExLCAweGU3LCAweDkwLCAweDg2LCAweGU4LFxuICAweGFlLCAweGJhLCAweGU1LCAweDlkLCAweDliLCAweGU1LCAweDhmLCAweGFmLCAweGU0LCAweGJiLCAweGE1LCAweGU2LCAweDljLFxuICAweDhkLCAweGU1LCAweDhhLCAweGExLCAweGU2LCAweDk3LCAweGI2LCAweGU5LCAweDk3LCAweGI0LCAweGU0LCAweGI4LCAweGFhLFxuICAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGJhLCAweGE3LCAweGU1LCAweDkzLCAweDgxLCAweGU4LCAweDg3LCAweGFhLCAweGU1LFxuICAweGI3LCAweGIxLCAweGU0LCAweGJjLCAweDgxLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDlmLCAweGE1LCAweGU3LCAweDljLFxuICAweDhiLCAweGU1LCAweGI3LCAweGE1LCAweGU0LCAweGJkLCAweDljLCAweGU4LCAweDgxLCAweDk0LCAweGU3LCAweGIzLCAweGJiLFxuICAweGU2LCAweGIyLCAweGExLCAweGU2LCAweDljLCAweDg5LCAweGU3LCAweGJkLCAweDkxLCAweGU3LCAweGFiLCAweDk5LCAweGU2LFxuICAweDg5LCAweDgwLCAweGU2LCAweDljLCAweDg5LCAweGU4LCAweGFmLCAweDg0LCAweGU4LCAweGFlLCAweGJhLCAweGU0LCAweGI4LFxuICAweGFkLCAweGU1LCAweGJmLCAweDgzLCAweGU2LCAweDk2LCAweDg3LCAweGU3LCAweGFiLCAweGEwLCAweGU3LCAweDk0LCAweGE4LFxuICAweGU2LCAweDg4LCAweGI3LCAweGU5LCAweGE2LCAweDk2LCAweGU5LCAweGExLCAweGI1LCAweGU0LCAweGJkLCAweDljLCAweGU4LFxuICAweDgwLCAweDg1LCAweGU2LCAweDhhLCAweDgwLCAweGU2LCAweDljLCAweGFmLCAweGU5LCAweDk3LCAweGFlLCAweGU5LCAweGEyLFxuICAweDk4LCAweGU3LCAweDliLCAweGI4LCAweGU1LCAweDg1LCAweGIzLCAweGU0LCAweGI4LCAweDhiLCAweGU4LCAweGJkLCAweGJkLFxuICAweGU2LCAweDkwLCAweDljLCAweGU3LCAweGI0LCAweGEyLCAweGU0LCAweGJkLCAweGJmLCAweGU3LCAweDk0LCAweGE4LCAweGU4LFxuICAweGJkLCAweGFmLCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDljLCAweGE4LCAweGU3LCAweGJhLCAweGJmLCAweGU0LCAweGI4LFxuICAweGJiLCAweGU5LCAweGEyLCAweDk4LCAweGU4LCAweGI1LCAweDg0LCAweGU2LCAweDk2LCAweDk5LCAweGU4LCAweGE3LCAweDg2LFxuICAweGU5LCAweGEyLCAweDkxLCAweGU1LCAweDliLCAweDllLCAweGU1LCAweGE0LCAweDhkLCAweGU2LCAweGIzLCAweGE4LCAweGU1LFxuICAweDg2LCAweDhjLCAweGU3LCAweGJkLCAweDkxLCAweGU3LCAweGJiLCAweDljLCAweGU2LCAweDk0LCAweGI2LCAweGU4LCAweDk3LFxuICAweDhmLCAweGU1LCAweDg2LCAweDg1LCAweGU1LCAweGFlLCAweGI5LCAweGU2LCAweDhlLCAweGE4LCAweGU4LCAweDhkLCAweDkwLFxuICAweGU1LCAweGI4LCAweDgyLCAweGU1LCAweDljLCAweGJhLCAweGU2LCAweGI2LCAweDg4LCAweGU2LCAweDgxLCAweGFmLCAweGU3LFxuICAweGE5LCAweGJhLCAweGU5LCAweDk3LCAweGI0LCAweGU1LCAweDhmLCAweDkxLCAweGU1LCAweGI4LCAweDgzLCAweGU0LCAweGJiLFxuICAweDgwLCAweGU0LCAweGI5LCAweDg4LCAweGU1LCAweGE1LCAweGJkLCAweGU1LCAweDhmLCAweDhiLCAweGU3LCAweDk0LCAweDlmLFxuICAweGU2LCAweGI0LCAweGJiLCAweGU1LCAweDliLCAweGJlLCAweGU3LCAweDg5LCAweDg3LCAweGU1LCAweDhmLCAweDkxLCAweGU1LFxuICAweGIxLCAweDk1LCAweGU1LCAweGE2LCAweDgyLCAweGU2LCAweDllLCAweDljLCAweGU2LCAweDg5LCAweDhiLCAweGU2LCAweDljLFxuICAweGJhLCAweGU2LCAweDk2LCAweGIwLCAweGU5LCAweDk3LCAweGJiLCAweGU2LCAweDljLCAweDgwLCAweGU2LCAweDk2LCAweGIwLFxuICAweGU2LCAweDk2LCAweGI5LCAweGU1LCAweGJjLCAweDhmLCAweGU1LCAweDhjLCAweDk3LCAweGU0LCAweGJhLCAweGFjLCAweGU2LFxuICAweDhmLCAweDkwLCAweGU0LCAweGJlLCAweDliLCAweGU1LCAweDg1LCAweGIzLCAweGU0LCAweGJhLCAweDhlLCAweGU2LCAweDliLFxuICAweGI0LCAweGU1LCAweGE0LCAweDlhLCAweGU4LCAweGJmLCAweDk5LCAweGU0LCAweGI4LCAweGFhLCAweGU3LCAweGIzLCAweGJiLFxuICAweGU3LCAweGJiLCAweDlmLCAweGU3LCAweDlmLCAweGE1LCAweGU5LCAweDgxLCAweDkzLCAweGU2LCAweGI4LCAweGI4LCAweGU2LFxuICAweDg4LCAweDhmLCAweGU1LCAweGI5LCAweGJmLCAweGU1LCAweDkxLCAweDhhLCAweGU1LCAweDg1LCAweGI2LCAweGU0LCAweGJiLFxuICAweDk2LCAweGU1LCAweDhmLCAweDkxLCAweGU4LCAweGExLCAweGE4LCAweGU1LCAweGFlLCAweDg5LCAweGU1LCAweDg1LCAweGE4LFxuICAweGU3LCAweGFjLCAweGFjLCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGJjLCAweDlhLCAweGU1LCAweDkxLCAweDk4LCAweGU4LFxuICAweGJmLCAweDliLCAweGU4LCAweGExLCAweDhjLCAweGU3LCAweDgyLCAweGI5LCAweGU1LCAweDg3LCAweGJiLCAweGU3LCAweDg5LFxuICAweDg4LCAweGU2LCAweDlkLCAweDgzLCAweGU3LCAweDk0LCAweGI1LCAweGU1LCAweGFkLCAweDkwLCAweGU0LCAweGI4LCAweDk2LFxuICAweGU3LCAweDk1LCAweDhjLCAweGU4LCAweGFlLCAweGJlLCAweGU4LCAweGFlLCAweGExLCAweGU1LCAweDg1LCAweDhkLCAweGU4LFxuICAweGI0LCAweGI5LCAweGU2LCAweDk1LCAweDk5LCAweGU4LCAweDgyLCAweGIyLCAweGU1LCAweDhhLCAweGEwLCAweGU1LCAweDg1LFxuICAweGE1LCAweGU2LCAweGI0LCAweGJiLCAweGU1LCAweDhhLCAweGE4LCAweGU0LCAweGJiLCAweDk2LCAweGU0LCAweGJiLCAweGFjLFxuICAweGU1LCAweDk1LCAweDg2LCAweGU1LCAweDkzLCAweDgxLCAweGU1LCAweDhkLCAweDlhLCAweGU1LCAweGFlLCAweGEyLCAweGU3LFxuICAweDhlLCAweGIwLCAweGU1LCAweDljLCAweGE4LCAweGU0LCAweGI4LCAweDhhLCAweGU2LCAweGI1LCAweGI3LCAweGU1LCAweGE2LFxuICAweDgyLCAweGU0LCAweGJkLCAweDk1LCAweGU1LCAweGI3LCAweGIyLCAweGU3LCAweGJiLCAweDhmLCAweGU3LCAweDk1LCAweDk5LFxuICAweGU4LCAweGE4LCAweDgwLCAweGU4LCAweGFmLCAweGE2LCAweGU3LCAweGJiLCAweDg2LCAweGU3LCAweGE0LCAweGJlLCAweGU1LFxuICAweDhjLCAweGJhLCAweGU3LCAweDk5LCAweGJiLCAweGU1LCAweGJkLCAweDk1LCAweGU2LCAweDljLCAweGFjLCAweGU3LCAweGFiLFxuICAweDk5LCAweGU5LCAweDljLCAweDgwLCAweGU4LCAweGE2LCAweDgxLCAweGU0LCAweGJiLCAweGI3LCAweGU2LCAweGEwLCAweGJjLFxuICAweGU2LCAweDk0LCAweGFmLCAweGU2LCAweDhjLCAweDgxLCAweGU1LCAweDliLCAweGJkLCAweGU5LCAweDk5LCAweDg1LCAweGU5LFxuICAweDkzLCAweGJlLCAweGU2LCAweDhlLCAweGE1LCAweGU1LCAweDliLCAweGJkLCAweGU1LCAweGFlLCAweGI2LCAweGU1LCAweGJiLFxuICAweGJhLCAweGU4LCAweGFlLCAweGJlLCAweGU2LCAweDljLCAweDhiLCAweGU1LCAweDhmLCAweDhiLCAweGU5LCAweDk4LCAweDg1LFxuICAweGU4LCAweGFmLCAweGJiLCAweGU2LCAweGIzLCAweDk1LCAweGU1LCAweGJlLCAweDhiLCAweGU0LCAweGJkLCAweDhkLCAweGU3LFxuICAweGJkLCAweGFlLCAweGU3LCAweGJiLCAweDhmLCAweGU2LCAweGI1LCAweDhlLCAweGU5LCAweDgwLCAweDg5LCAweGU2LCAweDhiLFxuICAweGE5LCAweGU4LCAweGJmLCAweDk5LCAweGU2LCAweGEwLCAweGI3LCAweGU1LCAweGJkLCAweDkzLCAweGU1LCAweDg5LCAweDhkLFxuICAweGU1LCAweDg4LCAweDg2LCAweGU3LCAweGIxLCAweGJiLCAweGU2LCAweDhlLCAweDkyLCAweGU4LCAweGExLCAweDhjLCAweGU1LFxuICAweDliLCAweGEwLCAweGU0LCAweGI4LCAweGJhLCAweGU0LCAweGJhLCAweGE0LCAweGU2LCAweDk4LCAweDkzLCAweGU2LCAweDljLFxuICAweDgwLCAweGU1LCAweDkwLCAweDhlLCAweGU5LCAweDlmLCAweGIzLCAweGU0LCAweGI5LCAweDkwLCAweGU0LCAweGI4LCAweDhkLFxuICAweGU4LCAweDgzLCAweGJkLCAweGU5LCAweDgwLCAweDlhLCAweGU4LCAweGJmLCAweDg3LCAweGU4LCAweGExLCAweDhjLCAweGU0LFxuICAweGI4LCAweDlhLCAweGU3LCAweGE3LCAweDkxLCAweGU2LCAweDhhLCAweDgwLCAweGU1LCAweDhmLCAweGFmLCAweGU4LCAweDgzLFxuICAweGJkLCAweGU4LCAweGFlLCAweGJlLCAweGU1LCAweGE0LCAweDg3LCAweGU1LCAweDkwLCAweDg4LCAweGU0LCAweGJkLCAweDljLFxuICAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweGFlLCAweGI2LCAweGU3LCAweGE0LCAweGJlLCAweGU0LCAweGJjLCAweDlhLCAweGU3LFxuICAweGEwLCAweDk0LCAweGU3LCAweGE5LCAweGI2LCAweGU0LCAweGI4LCAweDkzLCAweGU0LCAweGI4LCAweDlhLCAweGU1LCAweDg1LFxuICAweGE4LCAweGU5LCAweDgzLCAweGE4LCAweGU5LCAweGExLCAweGI5LCAweGU3LCAweDliLCAweGFlLCAweGU4LCAweGJmLCAweDk5LFxuICAweGU5LCAweDg3LCAweDhjLCAweGU4LCAweGJmLCAweDk4LCAweGU2LCAweDk4LCAweGFmLCAweGU1LCAweGJjLCAweDgwLCAweGU1LFxuICAweGE3LCAweDhiLCAweGU2LCAweDgzLCAweDg1LCAweGU1LCAweDg2LCAweGI1LCAweGU3LCAweDk0LCAweGI1LCAweGU4LCAweDg0LFxuICAweDkxLCAweGU2LCAweDk2LCAweDg3LCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDkzLCAweDgxLCAweGU3LCAweDg5LCAweDhjLFxuICAweGU1LCAweGI4LCAweGFlLCAweGU1LCAweDhhLCAweGE5LCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweDhjLCAweDk2LCAweGU4LFxuICAweGI1LCAweDg0LCAweGU2LCAweGJhLCAweDkwLCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweGFkLCAweGE2LCAweGU1LCAweGFkLFxuICAweGE2LCAweGU0LCAweGI5LCAweGEwLCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweDlkLCAweDgwLCAweGU2LCAweGI1LCAweDhmLFxuICAweGU4LCAweGE3LCAweDg4LCAweGU2LCAweDhhLCAweDk1LCAweGU4LCAweGI1LCAweDg0LCAweGU1LCAweGI3LCAweGE1LCAweGU3LFxuICAweGE4LCAweDhiLCAweGU4LCAweGE2LCAweDgxLCAweGU2LCAweGIxLCAweDgyLCAweGU2LCAweDgwLCAweDhlLCAweGU0LCAweGI5LFxuICAweDg4LCAweGU2LCAweDk3LCAweGI2LCAweGU1LCAweDgwLCAweDk5LCAweGU1LCAweDhhLCAweDlmLCAweGU4LCAweDgzLCAweGJkLFxuICAweGU0LCAweGI4LCAweGJiLCAweGU4LCAweGE2LCAweDgxLCAweGU3LCAweDliLCAweGFlLCAweGU1LCAweDg5LCAweDhkLCAweGU4LFxuICAweGI1LCAweDg0LCAweGU4LCAweGFlLCAweGFmLCAweGU1LCAweDlmLCAweDhlLCAweGU1LCAweGI4LCAweDgyLCAweGU2LCAweDk2LFxuICAweGI5LCAweGU2LCAweGIzLCAweDk1LCAweGU3LCAweDk0LCAweGI1LCAweGU1LCAweGJkLCAweGIxLCAweGU2LCAweDhiLCAweDliLFxuICAweGU4LCAweDgxLCAweDk4LCAweGU1LCAweGEzLCAweGIwLCAweGU2LCAweDk4LCAweDhlLCAweGU0LCAweGJiLCAweGJiLCAweGU0LFxuICAweGJkLCAweDk1LCAweGU1LCAweDgxLCAweGE1LCAweGU1LCAweGJhLCAweGI3LCAweGU2LCAweDk1LCAweGIwLCAweGU2LCAweDhkLFxuICAweGFlLCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweDliLCAweGJkLCAweGU2LCAweGIxLCAweGJkLCAweGU4LCAweGJkLCAweGE2LFxuICAweGU0LCAweGJiLCAweDhiLCAweGU3LCAweGJiLCAweDhkLCAweGU0LCAweGJkLCAweDg2LCAweGU2LCAweDk4LCAweGFmLCAweGU0LFxuICAweGJhLCAweGE0LCAweGU2LCAweGI1LCAweDgxLCAweGU3LCAweDk0LCAweDlmLCAweGU0LCAweGJhLCAweGE3LCAweGU2LCAweDg5LFxuICAweDgwLCAweGU0LCAweGJiLCAweGE1LCAweGU3LCAweDk0LCAweGI1LCAweGU4LCAweGFmLCAweDlkLCAweGU2LCAweDk4LCAweGJlLFxuICAweGU3LCAweGE0LCAweGJhLCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGJhLCAweDliLCAweGU1LCAweDhkLCAweDk1LCAweGU0LFxuICAweGJkLCAweDhkLCAweGU0LCAweGJhLCAweGJhLCAweGU1LCAweDkxLCAweDk4LCAweGU1LCAweDg4LCAweDg2LCAweGU2LCAweDllLFxuICAweDkwLCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweDliLCAweGJlLCAweGU2LCAweDk3LCAweDg1LCAweGU2LCAweGI4LCAweGI4LFxuICAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweDg1LCAweGI3LCAweGU1LCAweGFkLCAweGE2LCAweGU3LCAweDk0LCAweDlmLCAweGU3LFxuICAweGIzLCAweGJiLCAweGU1LCAweDg4LCAweDk3LCAweGU3LCAweGJkLCAweDkxLCAweGU1LCAweDhmLCAweDhiLCAweGU1LCAweGI4LFxuICAweDk2LCAweGU1LCAweGFkLCAweDkwLCAweGU1LCAweGFmLCAweDg2LCAweGU3LCAweGEwLCAweDgxLCAweGU5LCAweGEyLCAweDkxLFxuICAweGU5LCAweDgxLCAweDkzLCAweGU2LCAweDhlLCAweGE3LCAweGU1LCAweDg4LCAweGI2LCAweGU1LCAweDljLCAweGIwLCAweGU1LFxuICAweDhjLCAweGJhLCAweGU1LCAweDlmLCAweGJhLCAweGU2LCAweDljLCAweGFjLCAweGU1LCAweDg1LCAweGE4LCAweGU1LCAweDliLFxuICAweGJkLCAweGU3LCAweGJkLCAweDkxLCAweGU0LCAweGI4LCAweDhhLCAweGU5LCAweDg3LCAweDhkLCAweGU4LCAweGE2LCAweDgxLFxuICAweGU3LCAweGFjLCAweGFjLCAweGU0LCAweGJhLCAweDhjLCAweGU1LCAweDk2LCAweDljLCAweGU2LCAweGFjLCAweGEyLCAweGU4LFxuICAweGJmLCAweDliLCAweGU1LCAweDg1LCAweGE1LCAweGU1LCAweDhmLCAweDhiLCAweGU2LCAweDgzLCAweDg1LCAweGU4LCAweGJmLFxuICAweDk5LCAweGU0LCAweGJhLCAweDliLCAweGU4LCAweDgwLCAweDgzLCAweGU4LCAweGFmLCAweDk1LCAweGU1LCAweDhmLCAweDkxLFxuICAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweDlmLCAweGI5LCAweGU4LCAweGFlLCAweGFkLCAweGU0LCAweGJiLCAweGE1LCAweGU0LFxuICAweGI4LCAweDhhLCAweGU2LCAweDk0LCAweGJmLCAweGU1LCAweGJhLCAweDljLCAweGU2LCAweDg4LCAweDkwLCAweGU0LCAweGI4LFxuICAweGJhLCAweGU3LCAweDhlLCAweGFmLCAweGU1LCAweGEyLCAweDgzLCAweGU5LCAweGE2LCAweDk5LCAweGU2LCAweGI4LCAweGFmLFxuICAweGU1LCAweDkwLCAweDhjLCAweGU2LCAweDk3LCAweGI2LCAweGU1LCAweGE4LCAweGIxLCAweGU0LCAweGI5LCAweDkwLCAweGU1LFxuICAweDhmLCAweDkxLCAweGU5LCAweDgwLCAweDgxLCAweGU0LCAweGI4LCAweDgwLCAweGU1LCAweGFlLCAweDlhLCAweGU1LCAweGJjLFxuICAweDgwLCAweGU1LCAweDhmLCAweDkxLCAweGU0LCAweGJkLCAweDljLCAweGU1LCAweDkzLCAweDgxLCAweGU2LCAweGEwLCAweDg3LFxuICAweGU1LCAweDg3LCAweDg2LCAweGU2LCAweGFjLCAweGEyLCAweGU4LCAweGJmLCAweDhlLCAweGU4LCAweGE3LCAweGEzLCAweGU1LFxuICAweDg2LCAweGIzLCAweGU1LCAweDljLCAweGIwLCAweGU2LCAweDk2LCAweGI5LCAweGU0LCAweGI4LCAweDgwLCAweGU0LCAweGI4LFxuICAweDhiLCAweGU0LCAweGJiLCAweGE1LCAweGU1LCAweDhmLCAweDhhLCAweGU4LCAweGI0LCAweGEzLCAweGU0LCAweGJiLCAweGJiLFxuICAweGU2LCAweDg4LCAweDk2LCAweGU4LCAweDgwLCAweDg1LCAweGU1LCAweGFlLCAweGEyLCAweGU2LCAweDg4LCAweGI3LCAweGU0LFxuICAweGJiLCAweGEzLCAweGU4LCAweGExLCAweGE4LCAweGU3LCAweGE3LCAweGFmLCAweGU1LCAweDg4LCAweDg2LCAweGU1LCAweGE1LFxuICAweGIzLCAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweDk1LCAweGIwLCAweGU3LCAweGEwLCAweDgxLCAweGU5LCAweDk0LCAweDgwLFxuICAweGU1LCAweDk0LCAweGFlLCAweGU1LCAweDg3LCAweGJhLCAweGU3LCAweDhlLCAweGIwLCAweGU3LCAweGE2LCAweGJiLCAweGU3LFxuICAweGJhLCAweGJmLCAweGU1LCAweGJhLCAweDk0LCAweGU3LCAweDk0LCAweGE4LCAweGU1LCAweDg4LCAweDk3LCAweGU4LCAweGExLFxuICAweGE4LCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweDkwLCAweDhjLCAweGU3LCAweGJjLCAweDk2LCAweGU4LCAweGJlLCAweDkxLFxuICAweGU3LCAweGJiLCAweDlmLCAweGU4LCAweGFlLCAweGExLCAweGU2LCAweDlmLCAweGE1LCAweGU4LCAweGFmLCAweGEyLCAweGU0LFxuICAweGI4LCAweDhkLCAweGU4LCAweGE2LCAweDgxLCAweGU2LCAweDljLCAweDg5LCAweGU1LCAweDg1LCAweGIzLCAweGU2LCAweDljLFxuICAweGJhLCAweGU2LCAweDllLCAweDg0LCAweGU1LCAweGJlLCAweDg4LCAweGU1LCAweGE0LCAweDlhLCAweGU2LCAweDkyLCAweGFkLFxuICAweGU2LCAweDk0LCAweGJlLCAweGU3LCAweGJiLCAweDg0LCAweGU3LCAweGJiLCAweDg3LCAweGU2LCAweDk0LCAweGJmLCAweGU3LFxuICAweGFkLCAweDk2LCAweGU3LCAweDliLCAweGI0LCAweGU2LCAweDhlLCAweGE1LCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweDhhLFxuICAweDliLCAweGU2LCAweDlkLCAweGE1LCAweGU2LCAweGJhLCAweDkwLCAweGU2LCAweDk5LCAweDgyLCAweGU5LCAweDk2LCAweDkzLFxuICAweGU3LCAweDljLCAweDhiLCAweGU1LCAweDg4LCAweGIwLCAweGU3LCAweDgzLCAweGFkLCAweGU5LCAweDk3LCAweGE4LCAweGU1LFxuICAweDg1LCAweGIzLCAweGU5LCAweDk0LCAweGFlLCAweGU0LCAweGI4LCAweDkzLCAweGU1LCAweDhjLCAweGJhLCAweGU5LCAweDlkLFxuICAweDllLCAweGU1LCAweGI4LCAweGI4LCAweGU4LCAweDhiLCAweGIxLCAweGU4LCAweGFmLCAweGFkLCAweGU3LCAweDk5LCAweGJlLFxuICAweGU1LCAweGJhLCAweGE2LCAweGU1LCAweGI4LCAweDhjLCAweGU2LCAweDljLCAweDliLCAweGU3LCAweGJlLCAweDhlLCAweGU1LFxuICAweGE1LCAweGIzLCAweGU2LCAweGFmLCAweDk0LCAweGU4LCAweGJlLCAweDgzLCAweGU3LCAweDlmLCAweGE1LCAweGU4LCAweGFmLFxuICAweDg2LCAweGU4LCAweGE3LCAweDg0LCAweGU1LCAweGFlLCAweDlhLCAweGU1LCAweGJiLCAweGJhLCAweGU4LCAweGFlLCAweGFlLFxuICAweGU5LCAweDgzLCAweGE4LCAweGU5LCAweDk3LCAweGE4LCAweGU2LCAweDg0LCAweDhmLCAweGU4LCAweGE3LCAweDgxLCAweGU3LFxuICAweGIyLCAweGJlLCAweGU1LCAweGJkLCAweGE5LCAweGU2LCAweDk3LCAweGE1LCAweGU2LCAweDljLCAweGFjLCAweGU2LCAweDhmLFxuICAweDkwLCAweGU5LCAweGFiLCAweDk4LCAweGU1LCAweDhmLCAweDkxLCAweGU4LCAweGE4LCAweDgwLCAweGU2LCAweDk2LCAweGI5LFxuICAweGU5LCAweDlkLCAweGEyLCAweGU1LCAweDlmLCAweGJhLCAweGU5LCAweDg3LCAweDkxLCAweGU1LCAweGE0LCAweDg0LCAweGU3LFxuICAweDkwLCAweDg2LCAweGU2LCAweDlkLCAweDgzLCAweGU5LCAweDk5LCAweDkwLCAweGU1LCAweGJkLCAweGIxLCAweGU3LCAweDg5LFxuICAweDg3LCAweGU5LCAweDkzLCAweGI2LCAweGU4LCAweGExLCAweDhjLCAweGU4LCAweGJmLCAweDk4LCAweGU2LCAweDljLCAweDg5LFxuICAweGU1LCAweDg4LCAweDg2LCAweGU0LCAweGJhLCAweGFiLCAweGU3LCAweDg5LCAweGE5LCAweGU1LCAweDkzLCAweDgxLCAweGU3LFxuICAweGJiLCAweDhmLCAweGU4LCAweDkwLCAweGE1LCAweGU2LCAweGI3LCAweGJiLCAweGU1LCAweDhhLCAweGEwLCAweGU0LCAweGI4LFxuICAweDkzLCAweGU1LCAweGFlLCAweGI2LCAweGU4LCAweGJmLCAweDk5LCAweGU3LCAweGE3LCAweDhkLCAweGU4LCAweGFmLCAweDlkLFxuICAweGU5LCAweGEyLCAweDk4LCAweGU4LCAweGI1LCAweGI3LCAweGU2LCAweDlkLCAweGE1LCAweGU0LCAweGI4LCAweDlhLCAweGU1LFxuICAweDhhLCAweGExLCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDkxLCAweDhhLCAweGU4LCAweGFlLCAweGIwLCAweGU1LCAweGJkLFxuICAweDk1LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJiLCAweDhiLCAweGU4LCAweGI0LCAweGE4LCAweGU5LCAweDg3LCAweDhmLFxuICAweGU3LCAweDk0LCAweGI3LCAweGU0LCAweGJhLCAweGJhLCAweGU1LCAweGJkLCAweGIxLCAweGU1LCAweDkzLCAweDhkLCAweGU1LFxuICAweGJjLCAweDk1LCAweGU3LCAweDk0LCAweGE4LCAweGU2LCAweDhhLCAweGE1LCAweGU1LCAweDkxLCAweDhhLCAweGU5LCAweDgzLFxuICAweGE4LCAweGU1LCAweDg4LCAweDg2LCAweGU1LCAweGJmLCAweGFiLCAweGU5LCAweDgwLCAweDlmLCAweGU1LCAweDkyLCAweGE4LFxuICAweGU4LCAweGFmLCAweGEyLCAweGU2LCAweDk3LCAweGI2LCAweGU1LCAweGIwLCAweDlhLCAweGU2LCAweGIzLCAweGE4LCAweGU2LFxuICAweDg0LCAweDhmLCAweGU3LCAweDk0LCAweGIzLCAweGU4LCAweGFmLCAweGI3LCAweGU1LCAweGFkLCAweGE2LCAweGU2LCAweGEwLFxuICAweGExLCAweGU1LCAweGJhLCAweDk0LCAweGU4LCAweGFmLCAweGE1LCAweGU1LCAweDhlLCAweDg2LCAweGU1LCAweDhmLCAweGIyLFxuICAweGU1LCAweDhmLCAweGFhLCAweGU2LCAweDk4LCAweGFmLCAweGU4LCAweGJmLCAweDk0LCAweGU1LCAweDliLCAweDllLCAweGU4LFxuICAweGI0LCAweGFkLCAweGU0LCAweGI5LCAweGIwLCAweGU1LCAweDkwLCAweDhkLCAweGU3LCAweGE3LCAweGIwLCAweGU0LCAweGI4LFxuICAweGJhLCAweGU0LCAweGJhLCAweDg2LCAweGU2LCAweDg4LCAweDkwLCAweGU1LCAweDhhLCAweDlmLCAweGU4LCAweGFmLCAweGI0LFxuICAweGU2LCAweDk4LCAweDhlLCAweGU0LCAweGJlLCAweDliLCAweGU1LCAweGJhLCAweDk0LCAweGU1LCAweGFkLCAweGE5LCAweGU1LFxuICAweGFkLCAweDkwLCAweGU0LCAweGI4LCAweDkzLCAweGU5LCAweGEyLCAweDk4LCAweGU3LCAweGE4LCAweDhiLCAweGU1LCAweGJhLFxuICAweDhmLCAweGU0LCAweGI4LCAweDgwLCAweGU4LCAweDg4LCAweGFjLCAweGU2LCAweDljLCAweDgzLCAweGU1LCAweDkzLCAweGExLFxuICAweGU1LCAweDhmLCAweGFhLCAweGU2LCAweDljLCAweDg5LCAweGU1LCAweDg1LCAweGI2LCAweGU1LCAweGFlLCAweDgzLCAweGU0LFxuICAweGJmLCAweDlkLCAweGU2LCAweDhhLCAweGE0LCAweGU4LCAweDgwLCAweDhjLCAweGU0LCAweGI4LCAweDk0LCAweGU0LCAweGJiLFxuICAweDhhLCAweGU1LCAweGE0LCAweGE5LCAweGU3LCAweGFhLCAweDk3LCAweGU1LCAweDhmLCAweGEzLCAweGU1LCAweDhhLCAweGE4LFxuICAweGU2LCAweDgwLCAweDgxLCAweGU3LCAweDhhLCAweGI2LCAweGU2LCAweDgwLCAweDgxLCAweGU3LCAweDg5LCAweGI5LCAweGU1LFxuICAweDg4LCAweGFiLCAweGU4LCAweGFlLCAweGE0LCAweGU0LCAweGI4LCAweGJhLCAweGU1LCAweGJmLCAweDg1LCAweGU5LCAweGExLFxuICAweGJiLCAweGU2LCAweDliLCAweGI0LCAweGU2LCAweDk2LCAweGIwLCAweGU1LCAweGIwLCAweDhmLCAweGU4LCAweGFmLCAweGI0LFxuICAweGU2LCAweDg4LCAweDkxLCAweGU1LCAweDgwLCAweDkxLCAweGU0LCAweGJkLCAweDljLCAweGU0LCAweGI4LCAweGJhLCAweGU1LFxuICAweGFhLCAweDkyLCAweGU0LCAweGJkLCAweDkzLCAweGU1LCAweDhjLCAweDg1LCAweGU2LCAweDhiLCAweGFjLCAweGU5LCAweDgyLFxuICAweGEzLCAweGU0LCAweGI5LCAweDg4LCAweGU0LCAweGI4LCAweDgwLCAweGU2LCAweGEwLCAweGI3LCAweGU1LCAweDliLCAweGJkLFxuICAweGU1LCAweDg2LCAweDg1LCAweGU2LCAweDk4LCAweGFmLCAweGU1LCAweDkwLCAweGE2LCAweGU2LCAweGEwLCAweGI5LCAweGU2LFxuICAweDhkLCAweGFlLCAweGU3LCAweDk0LCAweGI1LCAweGU4LCAweGE3LCAweDg2LCAweGU1LCAweGFkLCAweGE2LCAweGU5LCAweDk5LFxuICAweGEyLCAweGU1LCAweDg1LCAweGI3LCAweGU2LCAweDljLCAweDg5LCAweGU4LCAweGJmLCAweDg3LCAweGU3LCAweGE4LCAweDhiLFxuICAweGU3LCAweDk0LCAweGIxLCAweGU0LCAweGJhLCAweDhlLCAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweDg5LCAweDhkLCAweGU1LFxuICAweDg3LCAweGJhLCAweGU2LCAweDlkLCAweGE1LCAweGU0LCAweGI4LCAweDhkLCAweGU4LCAweGJmLCAweDg3LCAweGU2LCAweGFkLFxuICAweGEzLCAweGU1LCAweDljLCAweGE4LCAweGU2LCAweDk4LCAweDhlLCAweGU2LCAweDk4LCAweDlmLCAweGU2LCAweDk1LCAweDg1LFxuICAweGU0LCAweGJhLCAweDhiLCAweGU1LCAweDg1LCAweGIzLCAweGU3LCAweGIzLCAweGJiLCAweGU2LCAweGEwLCAweDg3LCAweGU5LFxuICAweGEyLCAweDk4LCAweGU1LCAweDk1LCAweDg2LCAweGU1LCAweDhhLCAweGExLCAweGU4LCAweGJlLCAweDkzLCAweGU1LCAweDg1LFxuICAweGE1LCAweGU0LCAweGI4LCAweDgwLCAweGU3LCAweDliLCAweGI0LCAweGU1LCAweDlmLCAweGJhLCAweGU3LCAweGExLCAweDgwLFxuICAweGU2LCAweDk1LCAweDk5LCAweGU1LCAweGFkLCAweGE2LCAweGU0LCAweGJhLCAweDg2LCAweGU4LCAweGE3LCAweGEzLCAweGU1LFxuICAweGJiLCAweGJhLCAweGU3LCAweGFkLCAweDkxLCAweGU3LCAweGJiLCAweDkzLCAweGU2LCAweDllLCAweDljLCAweGU1LCAweDg1LFxuICAweGE4LCAweGU3LCAweDkwLCAweDgzLCAweGU5LCAweDgwLCAweDlhLCAweGU3LCAweDlmLCAweGE1LCAweGU4LCAweGFlLCAweGExLFxuICAweGU1LCAweDg4LCAweDkyLCAweGU1LCAweGFmLCAweGI5LCAweGU0LCAweGJhLCAweDhlLCAweGU4LCAweDg5LCAweGJhLCAweGU2LFxuICAweDljLCAweGFmLCAweGU3LCAweDliLCAweGI4LCAweGU1LCAweDg2LCAweDhjLCAweGU1LCAweDhmLCAweDkxLCAweGU3LCAweDk0LFxuICAweDlmLCAweGU3LCAweDljLCAweDlmLCAweGU3LCAweDlhLCAweDg0LCAweGU1LCAweGJiLCAweGJhLCAweGU3LCAweGFiLCAweDhiLFxuICAweGU3LCAweGFkLCAweDg5LCAweGU3LCAweGJhLCAweGE3LCAweGU3LCAweGIxLCAweGJiLCAweGU1LCAweDllLCAweDhiLCAweGU3LFxuICAweGJiLCAweDhmLCAweGU5LCAweGFhLCAweDhjLCAweGU1LCAweGFlLCAweDllLCAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweDg4LFxuICAweGI2LCAweGU0LCAweGJkLCAweDljLCAweGU2LCAweDlkLCAweGE1LCAweGU4LCAweDg3LCAweGFhLCAweGU2LCAweGEwLCAweDg3LFxuICAweGU3LCAweGFkLCAweGJlLCAweGU0LCAweGJiLCAweGE1LCAweGU0LCAweGI4LCAweDhiLCAweGU1LCAweDhlLCAweDlmLCAweGU1LFxuICAweDg4LCAweDliLCAweGU2LCAweDk3LCAweGEwLCAweGU2LCAweGIzLCAweDk1LCAweGU1LCAweDg1LCAweGI2LCAweGU0LCAweGI4LFxuICAweGFkLCAweGU1LCAweDgwLCAweDhiLCAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGI4LCAweDgwLCAweGU1LCAweDg4LCAweDg3LFxuICAweGU2LCAweDhjLCAweDg3LCAweGU1LCAweDhkLCAweDk3LCAweGU1LCAweDg1LCAweGIzLCAweGU5LCAweDk3LCAweGFkLCAweGU5LFxuICAweDliLCAweDg2LCAweGU1LCAweDliLCAweGEyLCAweGU3LCAweGFjLCAweGFjLCAweGU0LCAweGI4LCAweDg5LCAweGU1LCAweDg1LFxuICAweGIzLCAweGU2LCAweGIzLCAweGE4LCAweGU1LCAweDliLCAweGEwLCAweGU2LCAweGFkLCAweGE0LCAweGU3LCAweDg1LCAweGE3LFxuICAweGU3LCAweDg5LCAweDg3LCAweGU2LCAweGI3LCAweGIxLCAweGU1LCAweDljLCAweGIzLCAweGU1LCAweDk1LCAweDg2LCAweGU0LFxuICAweGI4LCAweDlhLCAweGU1LCAweGI5LCAweGJmLCAweGU1LCAweGI3LCAweDllLCAweGU2LCAweDk3LCAweGE1LCAweGU2LCAweDljLFxuICAweDlmLCAweGU5LCAweGFiLCAweDk4LCAweGU3LCAweGJhLCAweGE3LCAweGU2LCAweDljLCAweDgwLCAweGU4LCAweGJmLCAweDkxLFxuICAweGU3LCAweGJiLCAweGJjLCAweGU1LCAweDkwLCAweDg4LCAweGU4LCAweGExLCAweGE4LCAweGU3LCAweGE0LCAweGJhLCAweGU0LFxuICAweGI4LCAweDkzLCAweGU4LCAweGJlLCAweDkxLCAweGU4LCAweGExLCAweDhjLCAweGU0LCAweGI4LCAweGJhLCAweGU0LCAweGJhLFxuICAweGE0LCAweGU5LCAweDgwLCAweDlhLCAweGU4LCAweGFmLCAweDg0LCAweGU0LCAweGJiLCAweGI3LCAweGU4LCAweGE3LCAweDg5LFxuICAweGU1LCAweGJlLCAweDk3LCAweGU3LCAweGIyLCAweGJlLCAweGU1LCAweDhkLCAweDhlLCAweGU1LCAweGFlLCAweGI2LCAweGU1LFxuICAweGJhLCAweGFkLCAweGU1LCAweGFlLCAweDhjLCAweGU2LCAweDg4LCAweDkwLCAweGU2LCAweDg0LCAweDlmLCAweGU4LCAweGE3LFxuICAweDg5LCAweGU1LCAweGFlLCAweDg5LCAweGU4LCAweGEzLCAweDg1LCAweGU1LCAweGJlLCAweDk3LCAweGU1LCAweDg4LCAweGIwLFxuICAweGU5LCAweDgyLCAweGFlLCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDg4LCAweGI2LCAweGU1LCAweGJhLCAweGE2LCAweGU5LFxuICAweGEzLCAweDlmLCAweGU1LCAweDkzLCAweDgxLCAweGU4LCAweDk5LCAweGJkLCAweGU3LCAweDg0LCAweGI2LCAweGU4LCAweGJkLFxuICAweGFjLCAweGU4LCAweGJkLCAweGJkLCAweGU2LCAweDhhLCAweGE1LCAweGU0LCAweGJiLCAweGI3LCAweGU4LCAweGFlLCAweGIwLFxuICAweGU4LCAweDgwLCAweDg1LCAweGU2LCAweDk2LCAweGI5LCAweGU2LCAweGExLCAweDg4LCAweGU4LCAweGExLCAweDhjLCAweGU2LFxuICAweDk0LCAweGJmLCAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweGIwLCAweDkxLCAweGU3LCAweDk0LCAweGE4LCAweGU1LCAweDkzLFxuICAweDgxLCAweGU0LCAweGI4LCAweDljLCAweGU4LCAweGE1LCAweGJmLCAweGU2LCAweDhmLCAweDkwLCAweGU1LCAweDg3LCAweGJhLFxuICAweGU5LCAweDg1LCAweDkyLCAweGU1LCAweGJhLCAweDk3LCAweGU3LCAweDg0LCAweGI2LCAweGU1LCAweDkwLCAweDhlLCAweGU0LFxuICAweGJiLCAweDk4LCAweGU2LCAweGFjLCAweGJlLCAweGU3LCAweDgzLCAweGFkLCAweGU3LCAweDgyLCAweGI5LCAweGU0LCAweGJiLFxuICAweGE1LCAweGU1LCAweDg5LCAweDhkLCAweGU1LCAweGFlLCAweDhjLCAweGU1LCAweDg1LCAweGE4LCAweGU1LCAweDhmLCAweDkxLFxuICAweGU1LCAweGI4LCAweDk2LCAweGU4LCAweGFlLCAweGJlLCAweGU3LCAweGJkLCAweGFlLCAweGU5LCAweGEyLCAweDg2LCAweGU1LFxuICAweGFmLCAweGJjLCAweGU1LCAweGI3LCAweGE1LCAweGU0LCAweGI4LCAweDlhLCAweGU1LCAweDhjLCAweGJiLCAweGU5LCAweDk5LFxuICAweGEyLCAweGU3LCAweDljLCAweDhiLCAweGU3LCAweDljLCAweDhiLCAweGU3LCAweGJiLCAweDhmLCAweGU1LCAweDg1LCAweGI4LFxuICAweGU1LCAweDhlLCAweDlmLCAweGU1LCAweDliLCAweGEwLCAweGU1LCAweGI5LCAweGIzLCAweGU1LCAweDhmLCAweGIwLCAweGU1LFxuICAweDkwLCAweDg0LCAweGU3LCAweGE3LCAweDhkLCAweGU1LCAweGEyLCAweDllLCAweGU1LCAweDhhLCAweGEwLCAweGU2LCAweDlkLFxuICAweDkwLCAweGU2LCAweDk2LCAweDk5LCAweGU2LCAweDk2LCAweGIwLCAweGU1LCAweGEyLCAweDllLCAweGU0LCAweGI5LCAweDhiLFxuICAweGU1LCAweDkwLCAweDhlLCAweGU4LCAweDgxLCAweDhjLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDk1LCAweDg4LCAweGU2LFxuICAweDllLCAweDljLCAweGU0LCAweGJiLCAweDhhLCAweGU1LCAweGI5LCAweGI0LCAweGU4LCAweGFlLCAweGJhLCAweGU2LCAweDk2LFxuICAweDg3LCAweGU2LCAweDg4LCAweDkxLCAweGU1LCAweDliLCAweGJkLCAweGU1LCAweDkxLCAweDhhLCAweGU4LCAweGFmLCAweDg5LFxuICAweGU3LCAweDg5LCAweDg4LCAweGU0LCAweGI4LCAweGJiLCAweGU0LCAweGJmLCAweGFlLCAweGU2LCAweDk0LCAweGI5LCAweGU1LFxuICAweDhmLCAweDgyLCAweGU0LCAweGI4LCAweDhlLCAweGU2LCAweDg5LCAweDkzLCAweGU1LCAweDhkLCAweGIwLCAweGU1LCAweGJmLFxuICAweGFiLCAweGU0LCAweGI5LCAweDkwLCAweGU2LCAweDljLCAweGJhLCAweGU2LCAweGEyLCAweGIwLCAweGU4LCAweGE3LCAweDgyLFxuICAweGU3LCAweDgyLCAweGI5LCAweGU1LCAweGFkLCAweDk4LCAweGU1LCAweDljLCAweGE4LCAweGU3LCAweGIyLCAweGJlLCAweGU3LFxuICAweGE1LCAweDllLCAweGU4LCAweDhlLCAweGI3LCAweGU1LCAweGJlLCAweDk3LCAweGU1LCAweDg4LCAweGE5LCAweGU3LCAweDk0LFxuICAweGE4LCAweGU3LCAweGJiLCAweGE3LCAweGU3LCAweGJiLCAweGFkLCAweGU0LCAweGJkLCAweGEwLCAweGU0LCAweGJiLCAweGFjLFxuICAweGU4LCAweGJmLCAweDk5LCAweGU0LCAweGI5LCAweDg4LCAweGU2LCAweGE4LCAweGExLCAweGU1LCAweGJjLCAweDhmLCAweGU4LFxuICAweGFmLCAweGFkLCAweGU4LCAweGE4LCAweDgwLCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweGE0LCAweDlmLCAweGU5LCAweDliLFxuICAweDg1LCAweGU4LCAweDk5LCAweDhlLCAweGU2LCAweDkzLCAweDhkLCAweGU0LCAweGJkLCAweDljLCAweGU5LCAweGEzLCAweDhlLFxuICAweGU2LCAweGEwLCAweGJjLCAweGU0LCAweGI4LCAweDgwLCAweGU4LCAweGI1LCAweGI3LCAweGU3LCAweGE3LCAweDkxLCAweGU1LFxuICAweGFkLCAweGE2LCAweGU0LCAweGJkLCAweDkzLCAweGU4LCAweDgyLCAweGIyLCAweGU3LCAweDlmLCAweGFkLCAweGU0LCAweGJmLFxuICAweGExLCAweGU2LCAweDlkLCAweGExLCAweGU0LCAweGJiLCAweGI2LCAweGU2LCAweGIyLCAweGJiLCAweGU3LCAweDk2LCAweDk3LFxuICAweGU4LCAweGJmLCAweDkwLCAweGU1LCAweDhhLCAweGE4LCAweGU0LCAweGJhLCAweGE3LCAweGU0LCAweGI4LCAweDlhLCAweGU0LFxuICAweGJjLCAweDlhLCAweGU4LCAweGFlLCAweGFlLCAweGU1LCAweGFmLCAweGJjLCAweGU4LCAweDg4LCAweGFhLCAweGU1LCAweDg1LFxuICAweDg4LCAweGU3LCAweDk0LCAweDlmLCAweGU4LCAweDgxLCAweDk0LCAweGU3LCAweDliLCAweDlmLCAweGU1LCAweDhmLCAweGFmLFxuICAweGU2LCAweDk4LCAweGFmLCAweGU1LCAweDk1LCAweDhmLCAweGU5LCAweGExLCAweDhjLCAweGU3LCAweGJiLCAweDkzLCAweGU2LFxuICAweDllLCAweDg0LCAweGU0LCAweGJkLCAweDljLCAweGU3LCAweDk0LCAweGE4LCAweGU4LCAweGIwLCAweDgzLCAweGU2LCAweDlmLFxuICAweGE1LCAweGU4LCAweGIzLCAweDg3LCAweGU2LCAweDk2LCAweDk5LCAweGU4LCAweDg3LCAweGFhLCAweGU1LCAweDhhLCAweGE4LFxuICAweGU4LCAweGI0LCAweDlmLCAweGU4LCAweGI0LCAweGEzLCAweGU1LCAweDg2LCAweDljLCAweGU0LCAweGI4LCAweDlhLCAweGU4LFxuICAweGFlLCAweGJmLCAweGU5LCAweDk3LCAweGFlLCAweGU1LCAweGFlLCAweDllLCAweGU2LCAweDk2LCAweGJkLCAweGU2LCAweDhlLFxuICAweGE1LCAweGU1LCAweDhmLCAweDk3LCAweGU4LCAweGFlLCAweGE4LCAweGU4LCAweGFlLCAweGJhLCAweGU5LCAweDgyLCAweGEzLFxuICAweGU0LCAweGI4LCAweGFhLCAweGU1LCAweDhmLCAweDhkLCAweGU5LCAweGE2LCAweDg4LCAweGU1LCAweDhhLCAweGEwLCAweGU1LFxuICAweGJjLCAweGJhLCAweGU1LCAweGE1LCAweGIzLCAweGU2LCAweDgwLCAweGE3LCAweGU4LCAweDhjLCAweDgzLCAweGU1LCAweDliLFxuICAweGI0LCAweGU2LCAweDljLCAweDhkLCAweGU1LCAweDhiLCAweDk5LCAweGU0LCAweGJjLCAweDkxLCAweGU5LCAweDk3LCAweGIyLFxuICAweGU0LCAweGJiLCAweDhhLCAweGU2LCAweDk3LCAweGE1LCAweGU1LCAweGFlLCAweGEyLCAweGU2LCAweDljLCAweDhkLCAweGU4LFxuICAweGE3LCAweDgwLCAweGU3LCAweDljLCAweDhiLCAweGU1LCAweDhmLCAweDgyLCAweGU1LCAweDhhLCAweGEwLCAweGU3LCAweDlhLFxuICAweDg0LCAweGU4LCAweGFmLCAweDlkLCAweGU0LCAweGI4LCAweDgwLCAweGU3LCAweDgyLCAweGI5LCAweGU0LCAweGJmLCAweDlkLFxuICAweGU4LCAweGFmLCAweDgxLCAweGU1LCAweDliLCAweGJlLCAweGU0LCAweGI5LCAweGE2LCAweGU2LCAweDljLCAweDg5LCAweGU2LFxuICAweDk1LCAweDg4LCAweGU2LCAweGI1LCAweDhiLCAweGU4LCAweGFmLCAweDk1LCAweGU3LCAweGE3LCAweGJiLCAweGU1LCAweDhhLFxuICAweGE4LCAweGU2LCAweDg5LCAweDhkLCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweDg2LCAweGIzLCAweGU1LCAweGFlLCAweDlhLFxuICAweGU4LCAweDgyLCAweGExLCAweGU3LCAweGE1LCAweGE4LCAweGU0LCAweGI4LCAweDhkLCAweGU2LCAweDk2LCAweGFkLCAweGU5LFxuICAweDljLCAweDgwLCAweGU2LCAweGIxLCAweDgyLCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweGJlLCAweDk3LCAweGU1LCAweDhhLFxuICAweDllLCAweGU2LCAweGIzLCAweDk1LCAweGU0LCAweGI5LCAweDhiLCAweGU5LCAweDk3LCAweGI0LCAweGU5LCAweDg3LCAweDg3LFxuICAweGU3LCAweDk0LCAweGE4LCAweGU4LCAweDkwLCAweGE1LCAweGU5LCAweDk0LCAweDgwLCAweGU2LCAweDhhLCAweDk1LCAweGU4LFxuICAweGFmLCAweDg5LCAweGU3LCAweDliLCAweGFlLCAweGU2LCAweGEwLCAweDg3LCAweGU3LCAweDg4LCAweGIxLCAweGU2LCAweDgzLFxuICAweDg1LCAweGU2LCAweDkxLCAweDg0LCAweGU1LCAweGJkLCAweGIxLCAweGU2LCAweDljLCAweDg5LCAweGU0LCAweGJhLCAweDliLFxuICAweGU4LCAweGE0LCAweDg3LCAweGU4LCAweGEzLCAweGJkLCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweGFkLCAweGE2LCAweGU2LFxuICAweDljLCAweGJhLCAweGU0LCAweGJjLCAweDlhLCAweGU2LCAweDk1LCAweGIwLCAweGU1LCAweGFkLCAweDk3LCAweGU4LCAweGEzLFxuICAweDg1LCAweGU0LCAweGJmLCAweGFlLCAweGU4LCAweGI0LCAweGFkLCAweGU3LCAweDg5LCAweGE5LCAweGU1LCAweDg2LCAweDljLFxuICAweGU2LCAweDlkLCAweDkxLCAweGU1LCAweDg1LCAweGE4LCAweGU5LCAweDlkLCAweGEyLCAweGU3LCAweGIyLCAweGJlLCAweGU1LFxuICAweDkzLCAweDgxLCAweGU1LCAweDg1LCAweGI2LCAweGU1LCAweGFlLCAweDllLCAweGU0LCAweGJhLCAweDhiLCAweGU2LCAweDgzLFxuICAweDg1LCAweGU2LCAweGIwLCAweGI0LCAweGU1LCAweGI5LCAweGIzLCAweGU2LCAweDhmLCAweDkwLCAweGU3LCAweGE0LCAweGJhLFxuICAweGU0LCAweGI4LCAweDhhLCAweGU1LCAweGI4LCAweDgyLCAweGU4LCAweGIwLCAweGEyLCAweGU4LCAweGIwLCAweGEyLCAweGU2LFxuICAweDk5LCAweGFlLCAweGU5LCAweDgwLCAweDlhLCAweGU2LCAweDk1LCAweDk5LCAweGU1LCAweGI4LCAweDg4LCAweGU0LCAweGI4LFxuICAweDhhLCAweGU0LCAweGJjLCAweGEwLCAweGU3LCAweGIxLCAweGJiLCAweGU1LCAweDg4LCAweGFiLCAweGU2LCAweGFkLCAweDhjLFxuICAweGU2LCAweDliLCAweGIyLCAweGU2LCAweDhiLCAweGE1LCAweGU2LCAweDljLCAweDg5LCAweGU1LCAweDg4LCAweDliLCAweGU2LFxuICAweDk2LCAweGIwLCAweGU5LCAweDg1LCAweDhkLCAweGU0LCAweGJiLCAweGI2LCAweGU1LCAweDhmLCAweGFhLCAweGU4LCAweGE2LFxuICAweDgxLCAweGU2LCAweDk3LCAweGI2LCAweGU0LCAweGJiLCAweGEzLCAweGU4LCAweGIzLCAweDg3LCAweGU4LCAweGE4LCAweDhhLFxuICAweGU4LCAweGJlLCAweGJlLCAweGU1LCAweDg4LCAweGIwLCAweGU0LCAweGJhLCAweGJhLCAweGU3LCAweDk0LCAweDlmLCAweGU4LFxuICAweGFlLCAweGEyLCAweGU5LCAweDk4LCAweDg1LCAweGU4LCAweDgwLCAweDgxLCAweGU1LCAweGI4LCAweDg4LCAweGU1LCAweGIxLFxuICAweDk1LCAweGU3LCAweGE0LCAweGJhLCAweGU1LCAweGJmLCAweDgzLCAweGU3LCAweDkwLCAweDg2LCAweGU4LCAweGI0LCAweGI0LFxuICAweGU1LCAweGFkLCAweDkwLCAweGU3LCAweGI2LCAweGIyLCAweGU3LCAweGFiLCAweDk5LCAweGU0LCAweGI4LCAweGJiLCAweGU5LFxuICAweGExLCAweDhjLCAweGU4LCAweDg3LCAweGFhLCAweGU3LCAweDg0LCAweGI2LCAweGU3LCAweGJhLCAweGE3LCAweGU1LCAweDg4LFxuICAweGFiLCAweGU3LCAweGFlLCAweDgwLCAweGU1LCAweDhkLCAweDk1LCAweGU2LCAweDk0LCAweGI5LCAweGU5LCAweDlkLCAweGE5LFxuICAweGU5LCAweDgyLCAweGEzLCAweGU0LCAweGJhLCAweDliLCAweGU2LCAweDlkLCAweGE1LCAweGU4LCAweGFmLCAweGI0LCAweGU2LFxuICAweDg5LCAweDkzLCAweGU1LCAweGJjLCAweDgwLCAweGU0LCAweGJiLCAweGEzLCAweGU3LCAweGEwLCAweDgxLCAweGU1LCAweDg4LFxuICAweGEwLCAweGU5LCAweDk5LCAweGE0LCAweGU4LCAweGFmLCAweDgxLCAweGU1LCAweDg4LCAweGI4LCAweGU4LCAweDhhLCAweDgyLFxuICAweGU3LCAweDliLCAweGFlLCAweGU5LCAweDg3LCAweDhkLCAweGU3LCAweDgyLCAweGI5LCAweGU2LCAweGFjLCAweGExLCAweGU2LFxuICAweDk1LCAweGI4LCAweGU1LCAweGE0LCAweDlhLCAweGU1LCAweGIwLCAweDkxLCAweGU4LCAweGE3LCAweDg0LCAweGU1LCAweDg4LFxuICAweDkyLCAweGU4LCAweGI1LCAweDg0LCAweGU5LCAweDg3LCAweDkxLCAweGU2LCAweDg5LCAweGJlLCAweGU1LCAweDg4LCAweGIwLFxuICAweGU0LCAweGJiLCAweGE1LCAweGU1LCAweDkwLCAweDhlLCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweDg1LCAweGE4LCAweGU0LFxuICAweGI4LCAweGJiLCAweGU5LCAweGExLCAweGI1LCAweGU2LCAweDljLCAweDgwLCAweGU0LCAweGJkLCAweGIzLCAweGU1LCAweDliLFxuICAweDllLCAweGU3LCAweGFkLCAweDk0LCAweGU1LCAweGE0LCAweGE5LCAweGU0LCAweGI4LCAweDhiLCAweGU0LCAweGJmLCAweDlkLFxuICAweGU5LCAweDlhLCAweDljLCAweGU3LCAweDhlLCAweGIwLCAweGU0LCAweGJiLCAweGEzLCAweGU2LCAweGEzLCAweDgwLCAweGU2LFxuICAweDlmLCAweGE1LCAweGU2LCAweDhhLCAweDk1LCAweGU3LCAweGE1LCAweGE4LCAweGU1LCAweGIwLCAweDhmLCAweGU2LCAweDk3LFxuICAweGI2LCAweGU2LCAweGIyLCAweDkyLCAweGU2LCAweDljLCAweDg5LCAweGU2LCAweGFkLCAweGEzLCAweGU1LCAweGI4LCAweGI4LFxuICAweGU3LCAweDk0LCAweDlhLCAweGU4LCAweDg3LCAweGIzLCAweGU0LCAweGJiLCAweGEzLCAweGU3LCAweDkwLCAweDg2LCAweGU3LFxuICAweDliLCAweGFlLCAweGU1LCAweGJkLCAweDk1LCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweGJjLCAweDgwLCAweGU1LCAweGE0LFxuICAweDhkLCAweGU1LCAweDg4LCAweGI2LCAweGU5LCAweDg3LCAweDkxLCAweGU4LCAweDllLCAweDhkLCAweGU1LCAweGI5LCAweGI4LFxuICAweGU3LCAweGE2LCAweDhmLCAweGU3LCAweDg5LCAweDg4LCAweGU2LCAweDljLCAweGFjLCAweGU1LCAweGJkLCAweGEyLCAweGU2LFxuICAweDg4LCAweDkwLCAweGU1LCAweDg3LCAweDg2LCAweGU1LCAweGE0LCAweDg3LCAweGU4LCAweGExLCAweDhjLCAweGU2LCAweDgzLFxuICAweDg1LCAweGU1LCAweDliLCAweDllLCAweGU1LCAweDg4LCAweGIwLCAweGU2LCAweDgwLCAweDlkLCAweGU2LCAweDgzLCAweGIzLFxuICAweGU2LCAweDgwLCAweDhlLCAweGU2LCAweGEwLCAweGI3LCAweGU1LCAweDhkLCAweDhmLCAweGU4LCAweGFlLCAweGFlLCAweGU4LFxuICAweGFlLCAweGE0LCAweGU4LCAweGFmLCAweDgxLCAweGU2LCAweDljLCAweDgwLCAweGU1LCAweGE1LCAweGJkLCAweGU0LCAweGJhLFxuICAweGE3LCAweGU3LCAweDk0LCAweDlmLCAweGU2LCAweDhjLCAweDg5LCAweGU3LCAweDg1LCAweGE3LCAweGU2LCAweDljLCAweDhkLFxuICAweGU4LCAweGEzLCAweDg1LCAweGU1LCAweGI5LCAweGJmLCAweGU0LCAweGI4LCAweDljLCAweGU1LCAweDhhLCAweGE4LCAweGU2LFxuICAweGJjLCAweGFiLCAweGU5LCAweDg3LCAweDg3LCAweGU4LCAweGI0LCAweGFkLCAweGU2LCAweDk2LCAweGIwLCAweGU2LCAweDg5LFxuICAweDhiLCAweGU3LCAweGJiLCAweDg0LCAweGU1LCAweDliLCAweGJlLCAweGU5LCAweDlkLCAweGEyLCAweGU2LCAweDlkLCAweGJmLFxuICAweGU1LCAweDhmLCAweDgyLCAweGU4LCAweDgwLCAweDgzLCAweGU2LCAweDk0LCAweGJmLCAweGU2LCAweGIyLCAweGJiLCAweGU1LFxuICAweGFlLCAweGI5LCAweGU2LCAweDk4LCAweDkzLCAweGU1LCAweGE0LCAweGE5LCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweDhhLFxuICAweGFhLCAweGU1LCAweDhhLCAweDliLCAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGJiLCAweGFjLCAweGU1LCAweDhkLCAweDg3LFxuICAweGU3LCAweGJhLCAweGE3LCAweGU5LCAweDgwLCAweDlmLCAweGU1LCAweGJhLCAweGE2LCAweGU0LCAweGJhLCAweGJhLCAweGU3LFxuICAweDg5LCAweGE5LCAweGU4LCAweGIwLCAweDgzLCAweGU2LCAweDk1LCAweGI0LCAweGU2LCAweGI1LCAweDgxLCAweGU4LCAweGExLFxuICAweDhjLCAweGU5LCAweDgwLCAweGEwLCAweGU2LCAweDg4LCAweDkwLCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweGFkLCAweDk3LFxuICAweGU5LCAweDlmLCAweGE5LCAweGU1LCAweDliLCAweGJkLCAweGU4LCAweGI0LCAweGI4LCAweGU2LCAweDk4LCAweDkzLCAweGU1LFxuICAweGJjLCAweDgwLCAweGU1LCAweGIxLCAweDk1LCAweGU3LCAweDliLCAweGI4LCAweGU5LCAweDk3LCAweDljLCAweGU4LCAweGExLFxuICAweGE4LCAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweGJkLCAweGIxLCAweGU4LCAweGE3LCAweDg2LCAweGU1LCAweGE2LCAweDgyLFxuICAweGU2LCAweGFkLCAweGE0LCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweGFlLCAweGI5LCAweGU1LCAweGE0LCAweGE3LCAweGU1LFxuICAweGIwLCAweDhmLCAweGU2LCAweDhhLCAweGE1LCAweGU5LCAweDgxLCAweDkzLCAweGU2LCAweDlkLCAweGExLCAweGU2LCAweGFjLFxuICAweGJlLCAweGU1LCAweGJmLCAweDgzLCAweGU2LCAweDgzLCAweDg1LCAweGU4LCAweGFlLCAweGI4LCAweGU1LCAweGE0LCAweDlhLFxuICAweGU2LCAweGIzLCAweDk1LCAweGU4LCAweGE3LCAweDg0LCAweGU1LCAweGFlLCAweGI2LCAweGU1LCAweGIxLCAweDg1LCAweGU0LFxuICAweGI5LCAweGE2LCAweGU1LCAweGJhLCAweDk3LCAweGU4LCAweGJmLCAweDllLCAweGU2LCAweDhlLCAweGE1LCAweGU3LCAweGFiLFxuICAweDhiLCAweGU1LCAweDhkLCAweGIzLCAweGU0LCAweGI4LCAweGJlLCAweGU2LCAweDhhLCAweGE1LCAweGU2LCAweDhhLCAweDgwLFxuICAweGU1LCAweGI3LCAweGE3LCAweGU1LCAweGE1LCAweGE1LCAweGU4LCAweGJmLCAweDkwLCAweGU3LCAweDk5LCAweGJiLCAweGU1LFxuICAweDg1LCAweGE1LCAweGU0LCAweGJiLCAweGE1LCAweGU2LCAweDlkLCAweGE1LCAweGU3LCAweDkwLCAweDg2LCAweGU4LCAweGFlLFxuICAweGJhLCAweGU0LCAweGJhLCAweDhiLCAweGU0LCAweGJiLCAweGI2LCAweGU4LCAweDg3LCAweGFhLCAweGU3LCAweDk0LCAweGIxLFxuICAweGU0LCAweGI4LCAweGFkLCAweGU1LCAweDhkLCAweDhlLCAweGU1LCAweDhhLCAweDllLCAweGU1LCAweDg1LCAweGFjLCAweGU1LFxuICAweGE2LCAweDg4LCAweGU1LCAweGE2LCAweDg4LCAweGU3LCAweDljLCAweDlmLCAweGU2LCAweGFkLCAweGEzLCAweGU0LCAweGI4LFxuICAweDhkLCAweGU5LCAweDk0LCAweDk5LCAweGU1LCAweDg1LCAweGE4LCAweGU2LCAweDk2LCAweDg3LCAweGU1LCAweDkwLCAweDg4LFxuICAweGU1LCAweDkwLCAweDhjLCAweGU0LCAweGJiLCAweGI3LCAweGU1LCAweDgwLCAweGJjLCAweGU1LCAweDg4LCAweGFiLCAweGU0LFxuICAweGJhLCAweGJhLCAweGU3LCAweDliLCAweDkxLCAweGU3LCAweDlkLCAweGEzLCAweGU1LCAweDg1LCAweGI3LCAweGU0LCAweGJkLFxuICAweDkzLCAweGU0LCAweGI4LCAweDk2LCAweGU3LCAweGJhLCAweGFhLCAweGU1LCAweDliLCAweGEyLCAweGU5LCAweDk4LCAweDlmLFxuICAweGU1LCAweDg4LCAweDliLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDg5LCAweGJmLCAweGU2LCAweDhiLCAweDg1LCAweGU1LFxuICAweGEyLCAweDllLCAweGU5LCAweDk1LCAweGJmLCAweGU2LCAweDljLCAweDg5LCAweGU0LCAweGJhLCAweGJhLCAweGU0LCAweGJmLFxuICAweDlkLCAweGU2LCAweDhjLCAweDgxLCAweGU1LCAweDk1LCAweDg2LCAweGU1LCAweGFlLCAweGI2LCAweGU3LCAweGJiLCAweGI0LFxuICAweGU0LCAweGJmLCAweGFlLCAweGU1LCAweDhmLCAweGIwLCAweGU2LCAweGI5LCAweGJlLCAweGU1LCAweGI3LCAweGE2LCAweGU1LFxuICAweDhmLCAweGIzLCAweGU4LCAweDgyLCAweGExLCAweGU0LCAweGJiLCAweGJkLCAweGU3LCAweGFkLCAweDk0LCAweGU2LCAweGExLFxuICAweDg4LCAweGU1LCAweGFlLCAweDllLCAweGU5LCAweDk5LCAweDg1LCAweGU3LCAweDk0LCAweGI1LCAweGU0LCAweGJmLCAweGExLFxuICAweGU3LCAweGJiLCAweDhmLCAweGU3LCAweDkwLCAweDg2LCAweGU3LCAweDk0LCAweDlmLCAweGU1LCAweDkxLCAweGJkLCAweGU1LFxuICAweGFlLCAweGEzLCAweGU0LCAweGJjLCAweGEwLCAweGU0LCAweGJiLCAweGJiLCAweGU1LCAweDhhLCAweGExLCAweGU2LCAweGFkLFxuICAweGEzLCAweGU1LCAweGJjLCAweDhmLCAweGU3LCAweDg5LCAweGI5LCAweGU4LCAweDg5LCAweGIyLCAweGU0LCAweGI4LCAweDhiLFxuICAweGU2LCAweDlkLCAweGE1LCAweGU1LCAweDhkLCAweDhmLCAweGU0LCAweGJjLCAweDlhLCAweGU1LCAweDhmLCAweGFhLCAweGU4LFxuICAweDgzLCAweGJkLCAweGU1LCAweGJkLCAweDkzLCAweGU3LCAweDg0LCAweGI2LCAweGU5LCAweDg3LCAweDhkLCAweGU2LCAweDk2LFxuICAweGIwLCAweGU1LCAweDg1LCAweGE3LCAweGU1LCAweGFlLCAweGI5LCAweGU2LCAweDhjLCAweDg3LCAweGU1LCAweGFmLCAweGJjLFxuICAweGU4LCAweGJmLCAweDkwLCAweGU4LCAweGExLCAweDhjLCAweGU2LCAweDk3LCAweGE1LCAweGU1LCAweGJmLCAweDk3LCAweGU4LFxuICAweGIzLCAweGEzLCAweGU1LCAweGFlLCAweGI2LCAweGU4LCAweGI2LCAweDg1LCAweGU4LCAweGJmLCAweDg3LCAweGU1LCAweDljLFxuICAweDlmLCAweGU1LCAweDljLCAweGIwLCAweGU2LCAweGI1LCAweDk5LCAweGU2LCAweGIxLCAweDlmLCAweGU2LCAweDk0LCAweGFmLFxuICAweGU0LCAweGJiLCAweDk4LCAweGU2LCAweDhlLCAweGE4LCAweGU1LCAweDg3LCAweGJhLCAweGU3LCAweGFiLCAweDk5LCAweGU5LFxuICAweDk1LCAweGJmLCAweGU2LCAweDlkLCAweGFkLCAweGU1LCAweGI3LCAweDllLCAweGU2LCAweDg5LCAweGE3LCAweGU4LCAweGExLFxuICAweDhjLCAweGU1LCAweDg4LCAweGI2LCAweGU5LCAweDgwLCAweGEwLCAweGU0LCAweGI5LCAweDhiLCAweGU0LCAweGI4LCAweDgwLFxuICAweGU2LCAweDhlLCAweGE4LCAweGU1LCAweGI5LCAweGJmLCAweGU3LCAweDhlLCAweGIwLCAweGU1LCAweDljLCAweGJhLCAweGU2LFxuICAweDhmLCAweDhmLCAweGU4LCAweGJmLCAweGIwLCAweGU1LCAweDhmLCAweDk4LCAweGU1LCAweDhjLCAweDk2LCAweGU0LCAweGJjLFxuICAweGEwLCAweGU3LCAweGJiLCAweDlmLCAweGU2LCAweGFkLCAweDhjLCAweGU2LCAweDg5LCAweDhiLCAweGU0LCAweGJmLCAweDlkLFxuICAweGU5LCAweDk5LCAweGE5LCAweGU4LCAweGFmLCAweGJlLCAweGU3LCAweGE4LCAweDhiLCAweGU1LCAweDhjLCAweGJiLCAweGU3LFxuICAweDk2LCAweDk3LCAweGU3LCAweGJiLCAweDhmLCAweGU4LCAweGJmLCAweDg3LCAweGU4LCAweGJmLCAweDg3LCAweGU1LCAweDhlLFxuICAweGJiLCAweGU0LCAweGI5LCAweDhiLCAweGU1LCAweDg5LCAweDhkLCAweGU2LCAweDk0LCAweGI2LCAweGU1LCAweDg1LCAweGE1LFxuICAweGU1LCAweGI5LCAweGI0LCAweGU1LCAweGJhLCAweGE2LCAweGU2LCAweDlkLCAweDgyLCAweGU1LCAweGJmLCAweDk3LCAweGU3LFxuICAweGJlLCAweDhlLCAweGU0LCAweGI4LCAweGJkLCAweGU2LCAweDljLCAweDgwLCAweGU5LCAweGFiLCAweDk4LCAweGU3LCAweDk5LFxuICAweGJiLCAweGU5LCAweDk5LCAweDg2LCAweGU2LCAweDljLCAweGFhLCAweGU2LCAweDlkLCAweGE1LCAweGU1LCAweDhhLCAweGEwLFxuICAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweDg1LCAweDhkLCAweGU4LCAweGI0LCAweGEzLCAweGU2LCAweDk1LCAweDk5LCAweGU3LFxuICAweGE4LCAweDhiLCAweGU3LCAweDg5LCAweDg4LCAweGU1LCAweDlkLCAweDk3LCAweGU4LCAweGJhLCAweGFiLCAweGU0LCAweGJkLFxuICAweDkzLCAweGU5LCAweDg3LCAweDhkLCAweGU1LCAweGJhLCAweDg2LCAweGU1LCAweDg3LCAweGJhLCAweGU1LCAweDk0LCAweGFlLFxuICAweGU2LCAweDg4LCAweDkwLCAweGU2LCAweDljLCAweGFjLCAweGU1LCAweGJkLCAweGEyLCAweGU1LCAweGJjLCAweDhmLCAweGU1LFxuICAweDljLCAweDlmLCAweGU4LCAweGIxLCAweDg2LCAweGU1LCAweDg3LCAweGJhLCAweGU1LCAweDgzLCAweGI5LCAweGU0LCAweGI4LFxuICAweDljLCAweGU2LCAweDk2LCAweGI5LCAweGU5LCAweDgyLCAweGFlLCAweGU3LCAweGFlLCAweGIxLCAweGU1LCAweDhkLCAweDk3LFxuICAweGU0LCAweGJhLCAweGFjLCAweGU2LCAweGIxLCAweDgyLCAweGU4LCAweDgxLCAweDhjLCAweGU1LCAweDhmLCAweDk2LCAweGU1LFxuICAweGJlLCAweDk3LCAweGU4LCAweDgxLCAweDhjLCAweGU0LCAweGJkLCAweDhkLCAweGU3LCAweDliLCAweGI4LCAweGU0LCAweGJmLFxuICAweGExLCAweGU5LCAweGExLCAweGI1LCAweGU5LCAweDlkLCAweGEyLCAweGU1LCAweDg4LCAweDg2LCAweGU5LCAweDkyLCAweDlmLFxuICAweGU3LCAweGJkLCAweDkxLCAweGU5LCAweGExLCAweGI1LCAweGU3LCAweGExLCAweGFlLCAweGU1LCAweGFlLCAweDlhLCAweGU1LFxuICAweDliLCAweGJlLCAweGU0LCAweGJlLCAweDhiLCAweGU3LCAweGJkLCAweDkxLCAweGU1LCAweDlkLCAweDgwLCAweGU3LCAweGE3LFxuICAweGFmLCAweGU2LCAweDllLCAweDgxLCAweGU5LCAweDk0LCAweDk5LCAweGU4LCAweGFmLCAweGFmLCAweGU3LCAweDliLCAweGFlLFxuICAweGU3LCAweDlhLCAweDg0LCAweGU1LCAweGFlLCAweDlkLCAweGU4LCAweGI0LCAweDlkLCAweGU2LCAweDljLCAweGJhLCAweGU1LFxuICAweDg1LCAweGIzLCAweGU5LCAweGEzLCAweDhlLCAweGU5LCAweDk5LCAweGE5LCAweGU2LCAweDhlLCAweDg4LCAweGU2LCAweDlkLFxuICAweDgzLCAweGU3LCAweDk3LCAweDg1LCAweGU2LCAweGFmLCAweDkyLCAweGU1LCAweGFlLCAweGEwLCAweGU3LCAweDg5LCAweGE5LFxuICAweGU5LCAweDk5LCAweGE0LCAweGU0LCAweGJhLCAweDg2LCAweGU4LCAweGE5LCAweDk1LCAweGU4LCAweGFiLCAweDk2LCAweGU3LFxuICAweDk2LCAweGJlLCAweGU3LCAweDk3LCAweDg1LCAweGU1LCAweDhmLCAweDhhLCAweGU2LCAweDk3LCAweGI2LCAweGU2LCAweGIxLFxuICAweDgyLCAweGU4LCAweGI0LCAweGFkLCAweGU3LCAweGFiLCAweDk5LCAweGU3LCAweDgyLCAweGI5LCAweGU1LCAweDg0LCAweGJmLFxuICAweGU3LCAweGFiLCAweGE1LCAweGU2LCAweGFmLCAweDhmLCAweGU1LCAweGE0LCAweGE5LCAweGU0LCAweGI4LCAweGFkLCAweGU1LFxuICAweGE0LCAweGFlLCAweGU4LCAweGFlLCAweGE0LCAweGU4LCAweGFmLCAweDg2LCAweGU2LCAweGFmLCAweDhmLCAweGU0LCAweGI4LFxuICAweGFhLCAweGU1LCAweGE0LCAweGE5LCAweGU2LCAweGI0LCAweGE1LCAweGU1LCAweGFkLCAweDk3LCAweGU0LCAweGJkLCAweDkzLFxuICAweGU1LCAweDhmLCAweGIwLCAweGU3LCAweDgxLCAweGEzLCAweGU3LCAweGJiLCAweGI0LCAweGU2LCAweDhhLCAweGE0LCAweGU2LFxuICAweDljLCAweGFjLCAweGU5LCAweGExLCAweGI1LCAweGU0LCAweGI4LCAweGFhLCAweGU2LCAweDgwLCAweGE3LCAweGU1LCAweGFlLFxuICAweDk4LCAweGU2LCAweDk2LCAweGI5LCAweGU1LCAweGI4LCAweGI4LCAweGU4LCAweGE3LCAweDgxLCAweGU3LCAweDliLCAweGI4LFxuICAweGU2LCAweDljLCAweGJhLCAweGU2LCAweDg4LCAweDk4LCAweGU3LCAweDk1LCAweGE1LCAweGU1LCAweGJhLCAweDk0LCAweGU1LFxuICAweGJkLCAweDkzLCAweGU1LCAweGJlLCAweDhiLCAweGU1LCAweGI4LCAweDg4LCAweGU2LCAweDk2LCAweGI5LCAweGU0LCAweGJlLFxuICAweGJmLCAweGU2LCAweGEwLCAweGExLCAweGU1LCAweDliLCAweGFkLCAweGU4LCAweDgyLCAweGExLCAweGU1LCAweGI4LCAweDgyLFxuICAweGU2LCAweDg4LCAweGJmLCAweGU1LCAweGIxLCAweDhiLCAweGU2LCAweGEwLCAweDhmLCAweGU3LCAweDliLCAweGFlLCAweGU1LFxuICAweDkxLCAweDk4LCAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweGFmLCAweGJjLCAweGU4LCAweDg3LCAweGI0LCAweGU3LCAweGFhLFxuICAweDgxLCAweGU3LCAweDg0LCAweGI2LCAweGU5LCAweDgxLCAweDkzLCAweGU1LCAweDg1LCAweGI3LCAweGU2LCAweDljLCAweGFjLFxuICAweGU3LCAweGJkLCAweDkxLCAweGU3LCAweGJiLCAweDkzLCAweGU1LCAweDkwLCAweDg4LCAweGU2LCAweGExLCAweGEzLCAweGU2LFxuICAweGExLCAweDg4LCAweGU1LCAweDhhLCAweGIzLCAweGU1LCAweDhhLCAweGE4LCAweGU1LCAweDhmLCAweGE2LCAweGU1LCAweGE0LFxuICAweDk2LCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweDg1LCAweDgzLCAweGU1LCAweGJjLCAweDk1LCAweGU4LCAweGI1LCAweGI3LFxuICAweGU2LCAweDk0LCAweGI5LCAweGU1LCAweDhmLCAweDk4LCAweGU3LCAweGFjLCAweGFjLCAweGU1LCAweDliLCAweDliLCAweGU0LFxuICAweGJjLCAweDlhLCAweGU4LCAweGFlLCAweGExLCAweGU4LCAweGFhLCAweGFhLCAweGU2LCAweDk4LCAweDhlLCAweGU5LCAweDlhLFxuICAweDkwLCAweGU3LCAweGE3LCAweDgxLCAweGU1LCAweGFlLCAweDlkLCAweGU1LCAweGFlLCAweDlkLCAweGU4LCAweGE3LCAweDg0LFxuICAweGU4LCAweDhjLCAweDgzLCAweGU2LCAweGI2LCAweDg4LCAweGU4LCAweGI0LCAweGI5LCAweGU1LCAweDg1LCAweGIxLCAweGU1LFxuICAweDkwLCAweDhjLCAweGU1LCAweGJmLCAweDk4LCAweGU4LCAweGFlLCAweGIwLCAweGU0LCAweGJkLCAweDkzLCAweGU3LCAweGIzLFxuICAweGJiLCAweGU1LCAweGI4LCAweGE2LCAweGU2LCAweDlkLCAweGE1LCAweGU1LCAweDkwLCAweDhkLCAweGU1LCAweGFkLCAweDk3LFxuICAweGU3LCAweDk5LCAweGJjLCAweGU4LCAweGExLCAweGE4LCAweGU1LCAweGJjLCAweDgwLCAweGU2LCAweDk0LCAweGJlLCAweGU1LFxuICAweDhhLCAweGEwLCAweGU3LCAweDliLCAweDlmLCAweGU1LCAweDhmLCAweDk3LCAweGU1LCAweDg4LCAweGIwLCAweGU0LCAweGJhLFxuICAweDhjLCAweGU2LCAweDg5LCAweDhiLCAweGU1LCAweGE0LCAweGE3LCAweGU5LCAweDg3LCAweDhmLCAweGU2LCAweDg4LCAweDkwLFxuICAweGU0LCAweGJhLCAweGJhLCAweGU2LCAweDk1LCAweGIwLCAweGU5LCAweDg3LCAweDhmLCAweGU1LCAweDg1LCAweGIxLCAweGU0LFxuICAweGJhLCAweGFiLCAweGU1LCAweDhjLCAweGJhLCAweGU1LCAweDlmLCAweDlmLCAweGU1LCAweGE1LCAweGIzLCAweGU1LCAweGFkLFxuICAweGE5LCAweGU1LCAweDhlLCAweDlmLCAweGU1LCAweDg4LCAweDk5LCAweGU2LCAweDg5LCAweDgwLCAweGU1LCAweDljLCAweGE4LFxuICAweGU3LCAweGJiLCAweDkzLCAweGU2LCAweDlkLCAweDlmLCAweGU5LCAweDgwLCAweDlhLCAweGU0LCAweGJmLCAweGExLCAweGU4LFxuICAweGI2LCAweDg1LCAweGU3LCAweGJhLCAweGE3LCAweGU5LCAweDg1LCAweDhkLCAweGU3LCAweGJkLCAweGFlLCAweGU1LCAweGJkLFxuICAweDkzLCAweGU2LCAweDk3LCAweGI2LCAweGU0LCAweGJjLCAweDk4LCAweGU3LCAweGE3LCAweDgwLCAweGU2LCAweDgwLCAweGE3LFxuICAweGU2LCAweDg0LCAweDlmLCAweGU2LCAweDg4LCAweGJmLCAweGU0LCAweGJhLCAweGE3LCAweGU5LCAweDgxLCAweDhhLCAweGU2LFxuICAweDg4LCAweGIyLCAweGU1LCAweDg3LCAweGJhLCAweGU1LCAweDhmLCAweGEzLCAweGU2LCAweDhmLCAweDkwLCAweGU0LCAweGJhLFxuICAweGE0LCAweGU1LCAweGIwLCAweGIxLCAweGU0LCAweGI4LCAweDlhLCAweGU0LCAweGJmLCAweDlkLCAweGU1LCAweDgxLCAweGE1LFxuICAweGU3LCAweGE4LCAweDhiLCAweGU1LCAweGJhLCAweGE2LCAweGU1LCAweDhmLCAweDgyLCAweGU2LCAweDk1LCAweGIwLCAweGU0LFxuICAweGJhLCAweDhiLCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDk1LCAweGI0LCAweGU0LCAweGI4LCAweGFhLCAweGU1LCAweGIxLFxuICAweGIxLCAweGU0LCAweGI4LCAweDljLCAweGU2LCAweDgzLCAweDg1LCAweGU2LCAweDg0LCAweDlmLCAweGU3LCAweDg5LCAweGI5LFxuICAweGU2LCAweGFlLCAweDhhLCAweGU1LCAweDg4LCAweDg2LCAweGU5LCAweGExLCAweDllLCAweGU2LCAweDkwLCAweDljLCAweGU1LFxuICAweGIwLCAweDhiLCAweGU1LCAweGIxLCAweDllLCAweGU0LCAweGJhLCAweDhlLCAweGU5LCAweDk3LCAweGE4LCAweGU2LCAweDg4LFxuICAweGI3LCAweGU4LCAweGI0LCAweGEyLCAweGU1LCAweDhhLCAweGExLCAweGU1LCAweGEzLCAweGIwLCAweGU5LCAweDlmLCAweGIzLFxuICAweGU1LCAweDhmLCAweDhhLCAweGU1LCAweDg1LCAweGI2LCAweGU4LCAweGI0LCAweGEyLCAweGU3LCAweGJiLCAweDhmLCAweGU1LFxuICAweDlkLCAweDlhLCAweGU2LCAweDhjLCAweDgxLCAweGU1LCAweGI5LCAweGIyLCAweGU5LCAweDgzLCAweGE4LCAweGU2LCAweDg4LFxuICAweDkwLCAweGU3LCAweGFiLCAweDhiLCAweGU1LCAweDg4LCAweGE5LCAweGU3LCAweDliLCAweDhhLCAweGU4LCAweDgwLCAweDgzLFxuICAweGU4LCAweDk5LCAweDkxLCAweGU2LCAweDg4LCAweDkwLCAweGU5LCAweDgzLCAweGJkLCAweGU1LCAweDhjLCAweDg1LCAweGU4LFxuICAweGEzLCAweDg1LCAweGU3LCAweDk0LCAweGE4LCAweGU2LCAweDg4LCAweGI2LCAweGU2LCAweGFmLCAweDk0LCAweGU4LCAweGI1LFxuICAweDliLCAweGU2LCAweDk2LCAweDg3LCAweGU2LCAweDk4LCAweDhlLCAweGU2LCAweDhiLCAweDliLCAweGU1LCAweDk1LCAweDg2LFxuICAweGU1LCAweGFlLCAweDhjLCAweGU2LCAweDk1LCAweGI0LCAweGU3LCAweDljLCAweDlmLCAweGU2LCAweDk4LCAweGFmLCAweGU3LFxuICAweDljLCAweGJjLCAweGU3LCAweDlkLCAweDliLCAweGU0LCAweGJjLCAweDk5LCAweGU0LCAweGJjLCAweGI0LCAweGU1LCAweGE4LFxuICAweDgxLCAweGU2LCAweDljLCAweDliLCAweGU5LCAweGEyLCAweDg2LCAweGU1LCAweDlmLCAweDlmLCAweGU1LCAweDhkLCAweGFiLFxuICAweGU3LCAweDk0LCAweDlmLCAweGU0LCAweGJjLCAweDk4LCAweGU2LCAweDgzLCAweGEwLCAweGU4LCAweGFiLCAweDk2LCAweGU1LFxuICAweGEzLCAweDg3LCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDg1LCAweGIxLCAweGU4LCAweDg5LCAweGFmLCAweGU1LCAweGE1LFxuICAweGJkLCAweGU1LCAweDg1LCAweDg1LCAweGU1LCAweDg4LCAweDg2LCAweGU3LCAweGFjLCAweGE2LCAweGU1LCAweDkwLCAweDg4LFxuICAweGU5LCAweDk5LCAweDg0LCAweGU0LCAweGJiLCAweGI2LCAweGU3LCAweDg5LCAweGI5LCAweGU3LCAweDgyLCAweGI5LCAweGU0LFxuICAweGI4LCAweDhkLCAweGU1LCAweDhmLCAweGFmLCAweGU4LCAweDhiLCAweGIxLCAweGU2LCAweDk2LCAweDg3LCAweGU4LCAweGI1LFxuICAweDg0LCAweGU0LCAweGJhLCAweGE3LCAweGU2LCAweGEwLCAweGI5LCAweGU2LCAweDljLCAweGFjLCAweGU2LCAweDk4LCAweDhlLFxuICAweGU2LCAweDk4LCAweGJlLCAweGU1LCAweGFmLCAweDg2LCAweGU3LCAweGEyLCAweGJjLCAweGU1LCAweDg1LCAweGFjLCAweGU0LFxuICAweGJjLCAweDk3LCAweGU2LCAweGIwLCAweDkxLCAweGU2LCAweDk3LCAweDhmLCAweGU2LCAweDliLCAweGI0LCAweGU1LCAweDhhLFxuICAweGEwLCAweGU0LCAweGJhLCAweGFiLCAweGU1LCAweDhmLCAweDk3LCAweGU1LCAweDkwLCAweDhjLCAweGU1LCAweGFkLCAweGE2LFxuICAweGU1LCAweDkwLCAweGFmLCAweGU1LCAweDhhLCAweGE4LCAweGU5LCAweDgwLCAweDgyLCAweGU1LCAweDkwLCAweDg4LCAweGU1LFxuICAweDhlLCAweDlmLCAweGU2LCAweDlkLCAweGE1LCAweGU5LCAweDk3LCAweGFlLCAweGU3LCAweGFkLCAweDk0LCAweGU2LCAweDljLFxuICAweGFjLCAweGU2LCAweDk2LCAweDg3LCAweGU3LCAweGJlLCAweDhlLCAweGU5LCAweGEzLCAweDlmLCAweGU3LCAweGJiLCAweGJmLFxuICAweGU4LCAweDg5LCAweGIyLCAweGU3LCAweGE4LCAweGIzLCAweGU1LCAweGFlLCAweDlhLCAweGU3LCAweGJiLCAweDg4LCAweGU0LFxuICAweGJhLCAweDhlLCAweGU3LCAweDk0LCAweDlmLCAweGU3LCAweDg5LCAweGE5LCAweGU0LCAweGJlLCAweDliLCAweGU2LCAweGIxLFxuICAweDgyLCAweGU2LCAweDkwLCAweDljLCAweGU3LCAweDhiLCAweDkwLCAweGU1LCAweDhhLCAweDliLCAweGU5LCAweDg3LCAweDhmLFxuICAweGU0LCAweGI4LCAweGE1LCAweGU5LCAweDg3LCAweDhkLCAweGU2LCAweGIwLCAweGI4LCAweGU4LCAweGJmLCAweDljLCAweGU1LFxuICAweDg2LCAweDk5LCAweGU3LCAweDljLCAweDlmLCAweGU2LCAweDljLCAweDg5LCAweGU5LCAweDk5LCAweDkwLCAweGU3LCAweGFiLFxuICAweDllLCAweGU0LCAweGJhLCAweDg5LCAweGU1LCAweGFmLCAweGI5LCAweGU4LCAweGIxLCAweGExLCAweGU4LCAweGI0LCAweGI5LFxuICAweGU3LCAweDk0LCAweGE4LCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweGE1LCAweGJkLCAweGU3LCAweGJiLCAweDlkLCAweGU1LFxuICAweGFmLCAweGI5LCAweGU1LCAweDhkLCAweDgxLCAweGU1LCAweDg4LCAweDg2LCAweGU0LCAweGJmLCAweDgzLCAweGU4LCAweGJmLFxuICAweDliLCAweGU3LCAweDgyLCAweGI5LCAweGU4LCAweGFmLCAweDg0LCAweGU1LCAweGJkLCAweGIxLCAweGU5LCAweDlmLCAweGIzLFxuICAweGU0LCAweGJjLCAweDk4LCAweGU1LCAweDhhLCAweGJmLCAweGU0LCAweGI4LCAweDhkLCAweGU1LCAweGIwLCAweDkxLCAweGU2LFxuICAweGFjLCAweGEzLCAweGU4LCAweGI1LCAweDhmLCAweGU1LCAweGI5LCAweGI2LCAweGU0LCAweGI4LCAweDk0LCAweGU2LCAweDljLFxuICAweDg5LCAweGU3LCAweDgyLCAweGI5LCAweGU2LCAweDk2LCAweGI5LCAweGU1LCAweDkwLCAweDkxLCAweGU1LCAweDg1LCAweGE4LFxuICAweGU2LCAweDk2LCAweGIwLCAweGU0LCAweGJmLCAweGExLCAweGU3LCAweDk0LCAweGE4LCAweGU4LCAweGFlLCAweGJlLCAweGU2LFxuICAweDk2LCAweGJkLCAweGU1LCAweGJkLCAweGEyLCAweGU4LCAweGIxLCAweGExLCAweGU4LCAweGI1LCAweDg0LCAweGU2LCAweGEwLFxuICAweGJjLCAweGU3LCAweGFhLCAweDgxLCAweGU3LCAweGEwLCAweGI0LCAweGU5LCAweDlhLCAweDhmLCAweGU3LCAweDlkLCAweDgwLFxuICAweGU5LCAweDg3LCAweDhkLCAweGU1LCAweGE0LCAweGE3LCAweGU0LCAweGJhLCAweDhlLCAweGU2LCAweDk4LCAweGFmLCAweGU2LFxuICAweGFmLCAweDk1LCAweGU0LCAweGI4LCAweDlhLCAweGU2LCAweDk5LCAweGJhLCAweGU4LCAweDgzLCAweGJkLCAweGU1LCAweDhjLFxuICAweDk2LCAweGU1LCAweGI3LCAweGE1LCAweGU1LCAweGFlLCAweDhjLCAweGU3LCAweGJlLCAweDhlLCAweGU1LCAweDk1LCAweDg2LFxuICAweGU1LCAweDlmLCAweDhlLCAweGU3LCAweGJiLCAweDlmLCAweGU0LCAweGI4LCAweDgwLCAweGU1LCAweDg3LCAweGJhLCAweGU3LFxuICAweDg5LCAweDg4LCAweGU2LCAweDg5LCAweDkzLCAweGU5LCAweDgwLCAweGEwLCAweGU3LCAweDk0LCAweGEyLCAweGU1LCAweDkzLFxuICAweDgxLCAweGU2LCAweGE2LCAweDgyLCAweGU1LCAweDg2LCAweGI1LCAweGU3LCAweDk0LCAweGE4LCAweGU0LCAweGJhLCAweDhlLFxuICAweGU0LCAweGJmLCAweDlkLCAweGU3LCAweDk1LCAweDk5LCAweGU1LCAweDliLCAweGEwLCAweGU3LCAweGI0LCAweGEwLCAweGU0LFxuICAweGI4LCAweGFkLCAweGU1LCAweDljLCAweDhiLCAweGU1LCAweGFkLCAweDk4LCAweGU1LCAweDgyLCAweGE4LCAweGU4LCAweGI0LFxuICAweGI0LCAweGU1LCAweDliLCAweGJlLCAweGU2LCAweDljLCAweDgwLCAweGU2LCAweDg0LCAweDliLCAweGU5LCAweDk1LCAweGJmLFxuICAweGU2LCAweDljLCAweDlmLCAweGU1LCAweDhmLCAweGEzLCAweGU0LCAweGJiLCAweGI3LCAweGU3LCAweDkwLCAweDg2LCAweGU4LFxuICAweGI0LCAweGEyLCAweGU1LCAweDlmLCAweGJhLCAweGU1LCAweDljLCAweGIwLCAweGU1LCAweGFlLCAweDg5LCAweGU2LCAweDhlLFxuICAweDkyLCAweGU2LCAweGFkLCAweGE2LCAweGU2LCAweGIxLCAweDg5LCAweGU5LCAweDg3LCAweDhjLCAweGU5LCAweDlkLCAweGEyLFxuICAweGU1LCAweDg4LCAweDliLCAweGU1LCAweGJiLCAweGJhLCAweGU1LCAweGE0LCAweGE5LCAweGU3LCAweGE5LCAweGJhLCAweGU5LFxuICAweGE2LCAweDk2LCAweGU1LCAweDg1LCAweDg4LCAweGU1LCAweGFlLCAweDhjLCAweGU1LCAweDk2LCAweDg0LCAweGU5LCAweGE5LFxuICAweGIxLCAweGU1LCAweDhhLCAweGE4LCAweGU0LCAweGI4LCAweDhiLCAweGU5LCAweDlkLCAweGEyLCAweGU0LCAweGI4LCAweDhkLFxuICAweGU1LCAweDg2LCAweDhkLCAweGU4LCAweGFmLCAweDlhLCAweGU0LCAweGJmLCAweGExLCAweGU2LCAweDg0LCAweDhmLCAweGU0LFxuICAweGI5LCAweDg5LCAweGU5LCAweDk4LCAweGIzLCAweGU1LCAweDg1LCAweDg5LCAweGU4LCAweDhiLCAweGIxLCAweGU1LCAweDliLFxuICAweGJkLCAweGU2LCAweGJjLCAweDgyLCAweGU0LCAweGJhLCAweGFlLCAweGU1LCAweDg2LCAweDliLCAweGU0LCAweGJhLCAweDhiLFxuICAweGU3LCAweDhlLCAweGE5LCAweGU1LCAweGFlLCAweGI2LCAweGU3LCAweGJlLCAweGE0LCAweGU0LCAweGJjLCAweDk3LCAweGU1LFxuICAweDg2LCAweDljLCAweGU2LCAweGIwLCAweDkxLCAweGU1LCAweDhkLCAweGIzLCAweGU1LCAweDhmLCAweGFmLCAweGU1LCAweDkwLFxuICAweDhkLCAweGU3LCAweGE4LCAweGIxLCAweGU1LCAweGFlLCAweGI2LCAweGU1LCAweDg1LCAweGI3LCAweGU1LCAweDhhLCAweGE4LFxuICAweGU3LCAweDk0LCAweGJiLCAweGU2LCAweDgzLCAweGIzLCAweGU1LCAweDg4LCAweGIwLCAweGU2LCAweGIzLCAweGE4LCAweGU2LFxuICAweDk4LCAweDhlLCAweGU1LCAweGIwLCAweDhmLCAweGU1LCAweGFkLCAweGE2LCAweGU2LCAweDgwLCAweGE3LCAweGU4LCAweDgzLFxuICAweGJkLCAweGU4LCAweDgwLCAweDgzLCAweGU3LCAweGEwLCAweDk0LCAweGU3LCAweGExLCAweGFjLCAweGU0LCAweGJiLCAweGI2LFxuICAweGU4LCAweGE3LCAweDgyLCAweGU3LCAweDljLCAweDhiLCAweGU2LCAweGI4LCAweDg1LCAweGU2LCAweGE1LCAweDlhLCAweGU2LFxuICAweDkwLCAweDllLCAweGU3LCAweGFjLCAweDkxLCAweGU5LCAweGE2LCAweDk2LCAweGU5LCAweGEwLCAweDgxLCAweGU5LCAweGJiLFxuICAweDg0LCAweGU5LCAweDg3LCAweDkxLCAweGU5LCAweDgwLCAweDgyLCAweGU3LCAweDk0LCAweGE4LCAweGU2LCAweGIxLCAweDlmLFxuICAweGU4LCAweDhiLCAweDhmLCAweGU3LCAweDljLCAweDlmLCAweGU1LCAweGFlLCAweDllLCAweGU0LCAweGI4LCAweGJiLCAweGU3LFxuICAweGFlLCAweGExLCAweGU5LCAweDk4LCAweGI2LCAweGU2LCAweGFlLCAweGI1LCAweGU4LCAweGE4LCAweGJiLCAweGU1LCAweDg2LFxuICAweDhhLCAweGU3LCAweGJmLCAweGJiLCAweGU4LCAweGFmLCAweDkxLCAweGU2LCAweDlkLCAweDgzLCAweGU1LCAweDg4LCAweGE5LFxuICAweGU1LCAweDgxLCAweDlhLCAweGU1LCAweGE1LCAweGJkLCAweGU0LCAweGJjLCAweGJjLCAweGU0LCAweGI5LCAweDhlLCAweGU5LFxuICAweDgwLCAweDlhLCAweGU4LCAweGFlLCAweGFmLCAweGU2LCAweDk2LCAweGJkLCAweGU1LCAweGI3LCAweGE1LCAweGU3LCAweDhiLFxuICAweDgwLCAweGU2LCAweDg1LCAweDhiLCAweGU0LCAweGI5LCAweDlmLCAweGU4LCAweGFlLCAweGI4LCAweGU3LCAweDhlLCAweGFmLFxuICAweGU0LCAweGJmLCAweDlkLCAweGU1LCAweDlmLCAweGI5LCAweGU1LCAweDg1LCAweGJiLCAweGU2LCAweGE2LCAweDgyLCAweGU1LFxuICAweGJmLCAweGI1LCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweDllLCAweDhiLCAweGU2LCAweDljLCAweGJhLCAweGU3LCAweGE1LFxuICAweGE4LCAweGU3LCAweDkwLCAweDg2LCAweGU4LCAweGE3LCAweGEzLCAweGU1LCAweDhjLCAweGJmLCAweGU1LCAweDkwLCAweDhkLFxuICAweDYzLCAweDc1LCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDYxLCAweDcyLCAweDZkLFxuICAweDYxLCAweDY0LCAweDcyLCAweDY5LCAweDY0LCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY5LCAweDZlLFxuICAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDc0LCAweDY5LCAweDY1LCAweDZkLCAweDcwLCAweDZmLCAweDcwLCAweDZmLCAweDcyLFxuICAweDcxLCAweDc1LCAweDY1LCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDY0LCAweDZmLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDZhLCAweDc1LCAweDY1LCAweDY3LCAweDZmLFxuICAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGExLCAweDZlLFxuICAweDZlLCAweDZmLCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDZlLCAweDcwLFxuICAweDY1LCAweDcyLCAweDY2LCAweDY5LCAweDZjLCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDYxLCAweDZkLFxuICAweDY5LCAweDY3LCAweDZmLCAweDczLCAweDYzLCAweDY5LCAweDc1LCAweDY0LCAweDYxLCAweDY0LCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDZmLCAweDYxLCAweDc1LCAweDZlLCAweDcxLCAweDc1LCAweDY1LCAweDcwLCAweDc1LCAweDY1LCAweDY0LFxuICAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDY1LCAweDY3LCAweGMzLCAweGJhLCAweDZlLFxuICAweDYyLCAweDc1LCAweDY1LCAweDZlLCAweDZmLCAweDczLCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDcyLCAweDcwLFxuICAweDc1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY4LCAweDYxLFxuICAweDYyLCAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDY3LCAweDZmLCAweDczLCAweDc0LCAweDZmLCAweDZlLCAweDc1LCAweDY1LFxuICAweDc2LCAweDZmLCAweDczLCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDZjLFxuICAweDZmLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcwLCAweDZmLCAweDZlLCAweDY5LCAweGMzLCAweGIxLCAweDZmLFxuICAweDczLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDZmLCAweDczLCAweDYxLCAweDZjLCAweDY3LCAweDc1LCAweDZlLCAweDYxLFxuICAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDZmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDcyLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDYyLCAweDYxLCAweDZkLCAweDYxLFxuICAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDY4LCAweDZmLCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY0LCAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDZkLCAweDYyLFxuICAweDY5LCAweDZmLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDY2LCAweDc1LCAweDY1LCAweDcyLCAweDZmLFxuICAweDZlLCAweDcwLCAweDYxLCAweDczLCAweDYxLCAweDY0LCAweDZmLCAweDZjLCAweGMzLCAweGFkLCAweDZlLCAweDY1LCAweDYxLFxuICAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc1LCAweDY1LCAweDc2LCAweDYxLCAweDczLCAweDYzLFxuICAweDc1LCAweDcyLCAweDczLCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDYxLCAweDcxLCAweDc1LFxuICAweDY5LCAweDY1LCAweDcyLCAweDZmLCAweDZjLCAweDY5LCAweDYyLCAweDcyLCAweDZmLCAweDczLCAweDYzLCAweDc1LCAweDYxLFxuICAweDZlLCAweDc0LCAweDZmLCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDZkLCAweDY5LCAweDY3LCAweDc1LFxuICAweDY1LCAweDZjLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDczLCAweDYzLCAweDc1LCAweDYxLCAweDc0LCAweDcyLFxuICAweDZmLCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY3LCAweDcyLCAweDc1LCAweDcwLCAweDZmLCAweDczLFxuICAweDczLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDZlLCAweDY1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDYxLCAweDZkLFxuICAweDY1LCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDY2LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweDYzLFxuICAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweGMzLCAweGExLCAweDczLCAweDZmLCAweDY2LCAweDY1LFxuICAweDcyLCAweDc0LCAweDYxLCAweDYzLCAweDZmLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDZkLCAweDZmLCAweDY0LCAweDY1LFxuICAweDZjLCAweDZmLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDc0LCAweDcyLCAweDYxLFxuICAweDczLCAweDYxLCAweDZjLCAweDY3LCAweGMzLCAweGJhLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDYxLFxuICAweDYzLCAweDc1LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDYzLFxuICAweDc1LCAweDY1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDZmLCAweDcwLCAweDcyLFxuICAweDY1LCAweDZlLCAweDczLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDc2LCAweDY5LCAweDYxLFxuICAweDZhLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDZmLCAweDZkLCAweDc1LCAweDcyLCAweDYzLFxuICAweDY5LCAweDYxLCAweDcwLCAweDZmLCAweDY0LCAweDcyLCAweGMzLCAweGExLCAweDcwLCAweDc1LCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDY0LCAweDY5LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDcwLCAweDc1LCAweDY1LCAweDYyLCAweDZjLCAweDZmLFxuICAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY1LCAweDZjLCAweDcwLFxuICAweDcyLCAweDZmLCAweDcwLCAweDY5LCAweDZmLCAweDYzLCAweDcyLCAweDY5LCAweDczLCAweDY5LCAweDczLCAweDYzLCAweDY5LFxuICAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDY3LCAweDc1LCAweDcyLCAweDZmLCAweDZkLCAweDc1LCAweDY1LFxuICAweDcyLCAweDc0LCAweDY1LCAweDY2LCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYzLCAweDY1LCAweDcyLCAweDcyLFxuICAweDYxLCAweDcyLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDY1LCAweDY2LCAweDY1LCAweDYzLCAweDc0LFxuICAweDZmLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDY0LCAweDYxLFxuICAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY5LCAweDYxLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDc0LFxuICAweDY5LCAweDY1LCAweDcyLCAweDcyLCAweDYxLCAweDY1LCAweDJkLCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDc2LCAweDYxLFxuICAweDcyLCAweDY5LCAweDYxLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDczLCAweDY2LCAweDc1LCAweDc0LFxuICAweDc1LCAweDcyLCAweDZmLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDY3LCAweDc1LFxuICAweDY5LCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY3LCAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDZkLCAweDYxLFxuICAweDczLCAweDZkLCAweDY5LCAweDczLCAweDZkLCAweDZmLCAweDczLCAweGMzLCAweGJhLCAweDZlLCAweDY5LCAweDYzLCAweDZmLFxuICAweDYzLCAweDYxLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDczLCAweDcyLFxuICAweDYxLCAweDdhLCAweGMzLCAweGIzLCAweDZlLCAweDY0LCAweDY1LCAweDYyLCAweDY5LCAweDY0LCAweDZmLCAweDcwLCAweDcyLFxuICAweDc1LCAweDY1LCAweDYyLCAweDYxLCAweDc0LCAweDZmLCAweDZjLCAweDY1LCAweDY0LCAweDZmLCAweDc0LCAweDY1LCAweDZlLFxuICAweGMzLCAweGFkLCAweDYxLCAweDZhLCAweDY1LCAweDczLCAweGMzLCAweGJhLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZmLCAweDYzLCAweDZmLCAweDYzLCAweDY5LCAweDZlLCAweDYxLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDYzLCAweGMzLCAweGExLCAweDY0LCAweDY5LCAweDdhLCAweDY4LCAweDYxLCAweDYyLCAweDZjLCAweDYxLCAweDcyLCAweDczLFxuICAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDYxLCAweDY2LCAweDc1LFxuICAweDY1LCAweDcyLCAweDdhLCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZmLCAweDY3LCAweDc1LCAweDY1LFxuICAweDcyLCAweDcyLCAweDYxLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweGMzLCAweGE5LCAweDc4LCAweDY5LFxuICAweDc0LCAweDZmLCAweDZjLCAweGMzLCAweGIzLCAweDcwLCAweDY1LCAweDdhLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDY0LFxuICAweDYxLCAweDc2LCAweGMzLCAweGFkLCAweDY0LCAweDY1LCAweDZmLCAweDY1LCAweDc2LCAweDY5LCAweDc0LCAweDYxLCAweDcyLFxuICAweDcwLCAweDYxLCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDZhLFxuICAweDYxLCAweDc2LCAweDY5LCAweDY1LCAweDcyLCAweDcwLCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDY2LCAweGMzLFxuICAweGExLCAweDYzLCAweDY5LCAweDZjLCAweDYzLCAweDYxLCAweDYyLCAweDY1LCAweDdhLCAweDYxLCAweGMzLCAweGExLCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDczLCAweDYxLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY1LCAweDZlLCAweDc2LCAweGMzLFxuICAweGFkLCAweDZmLCAweDZhLCAweDYxLCAweDcwLCAweGMzLCAweGIzLCAweDZlLCAweDYxLCAweDYyLCAweDc1LCAweDczLCAweDZmLFxuICAweDczLCAweDYyLCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDZmLCAweDczLFxuICAweDZjLCAweDZjLCAweDY1LCAweDc2LCAweDYxLCAweDcyLCAweDcwLCAweDc1LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDY2LFxuICAweDc1LCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweGMzLCAweGJhLCAweDZlLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDY1LCAweDczLCAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDZlLFxuICAweDY5LCAweDY0LCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDYyLCAweDYxLCAweDZmLCAweDc1LCAweDZlLCAweDY5LCAweDY0LFxuICAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweGMzLCAweGExLCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDYxLFxuICAweDcyLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDZmLCAweGQwLCAweGI0LCAweGQwLCAweGJiLCAweGQxLCAweDhmLFxuICAweGQxLCAweDg3LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLFxuICAweGI4LCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIyLFxuICAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGI1LCAweGQxLCAweDg5LFxuICAweGQwLCAweGI1LCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweDlhLCAweGQwLCAweGIwLCAweGQwLFxuICAweGJhLCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLCAweGI3LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweDkyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGFkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLFxuICAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQwLCAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweDk0LCAweGQwLCAweGJiLCAweGQxLCAweDhmLFxuICAweGQwLCAweDlmLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLFxuICAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJhLFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGExLCAweGQwLCAweGE4LFxuICAweGQwLCAweDkwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDhmLCAweGQwLCAweGE3LCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGEyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLFxuICAweGI0LCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQxLCAweDhkLFxuICAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQxLCAweDgzLCAweGQwLCAweDkyLCAweGQwLFxuICAweGIwLCAweGQwLCAweGJjLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLFxuICAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLFxuICAweGI0LCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQxLCAweDhmLCAweGQwLCAweDkyLCAweGQwLCAweGJlLCAweGQxLCAweDgyLFxuICAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQwLFxuICAweDkyLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQxLCAweDgxLFxuICAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQxLFxuICAweDgzLCAweGQwLCAweGIxLCAweGQwLCAweDllLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweDllLCAweGQwLCAweDllLCAweGQwLFxuICAweDllLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg2LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGIwLFxuICAweGQwLCAweDllLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGI0LFxuICAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgzLCAweGQwLCAweGI0LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDk0LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg3LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweDZhLCAweDYxLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweGUwLCAweGE0LFxuICAweDg2LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDg1LFxuICAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LFxuICAweDhmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGE1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweDk4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDljLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweDg4LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDkzLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ4LCAweGE1LCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg5LCAweGQ5LCAweDg3LCAweGQ4LCAweGIwLCAweGQ4LCAweGE3LCAweGQ4LCAweGEyLCAweGQ4LCAweGFlLFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg5LCAweGQ5LCAweDg3LCAweGQ4LCAweGIwLCAweGQ5LCAweDg3LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGJhLCAweGQ5LCAweDhhLCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LFxuICAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGI5LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGI2LCAweGQ4LCAweGIwLCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg3LCAweGQ5LFxuICAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweGQ4LCAweGFkLCAweGQ4LCAweGFhLCAweGQ5LCAweDg5LFxuICAweGQ5LCAweDgyLCAweGQ4LCAweGE4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFlLCAweGQ4LCAweGIxLCAweGQ5LCAweDgxLCAweGQ5LCAweDgyLCAweGQ4LCAweGI3LCAweGQ4LCAweGI5LFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweGQ4LCAweGE1LCAweGQ4LFxuICAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGE1LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ5LFxuICAweDg3LCAweGQ4LCAweGE4LCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LCAweGQ5LCAweDgzLCAweGQ5LCAweDhhLCAweGQ5LCAweDgxLFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGFkLCAweGQ4LCAweGFiLCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ5LFxuICAweDg4LCAweGQ5LCAweDg3LCAweGQ5LCAweDg4LCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFjLFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ4LCAweGFmLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGIzLCAweGQ4LCAweGI5LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ4LCAweGI1LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg5LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGIwLCAweGQ4LCAweGE4LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGFiLCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDgzLCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGFiLCAweGQ5LCAweDg1LCAweGQ4LCAweGI1LCAweGQ4LCAweGIxLCAweGQ4LCAweGI0LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGFkLCAweGQ4LCAweGFkLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ5LCAweDgxLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ4LCAweGEzLCAweGQ4LCAweGE4LCAweGQ5LCAweDg4LCAweGQ4LFxuICAweGFlLCAweGQ4LCAweGE3LCAweGQ4LCAweGI1LCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGI2LCAweGQ5LCAweDg4LCAweGQ5LCAweDg4LCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGFlLCAweGQ5LCAweDhhLCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGFhLCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLFxuICAweGQ5LCAweDg4LCAweGQ5LCAweDg3LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDgyLCAweGQ4LCAweGI1LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgyLCAweGQ5LCAweDg1LCAweGQ4LCAweGEzLCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGFkLCAweGQ5LCAweDg2LCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGE4LCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGFjLCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGFjLCAweGQ5LCAweDg3LCAweGQ4LCAweGE5LCAweGQ4LCAweGIzLCAweGQ5LCAweDg2LCAweGQ4LCAweGE5LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGFhLCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ4LCAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGJhLCAweGQ4LFxuICAweGIyLCAweGQ4LCAweGE5LCAweGQ5LCAweDg2LCAweGQ5LCAweDgxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGFhLCAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg2LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFhLCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDgyLCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ5LCAweDhhLCAweGQ4LCAweGExLCAweGQ5LCAweDg2LFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDgzLCAweGQ4LCAweGE4LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE4LCAweGQ4LCAweGEzLCAweGQ5LFxuICAweDg2LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LCAweDgzLFxuICAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDgxLCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ4LFxuICAweGFkLCAweGQ4LCAweGIzLCAweGQ5LCAweDg2LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ5LCAweDg3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ5LFxuICAweDg3LCAweGQ4LCAweGIxLCAweGQ5LCAweDgyLCAweGQ4LCAweGI3LCAweGQ4LCAweGIxLCAweGQ4LCAweGI3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE4LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY5LCAweDZjLCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LFxuICAweDY5LCAweDYzLCAweDY1LCAweDY0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LCAweDZjLCAweDc0LCAweDY4LCAweDY5LCAweDZkLFxuICAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDczLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLFxuICAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLFxuICAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDcyLCAweDc1LCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLFxuICAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZmLFxuICAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LFxuICAweDc3LCAweDY1LCAweDZjLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLFxuICAweDY1LCAweDc1LCAweDZlLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDZmLFxuICAweDcyLCAweDZiLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDY0LCAweDc5LCAweDZlLCAweDYxLFxuICAweDZkLCAweDY5LCAweDYzLCAweDYyLCAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LFxuICAweDc2LCAweDYxLCAweDYzLCAweDc5LCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDUzLCAweDY1LFxuICAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY0LFxuICAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LFxuICAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDY2LCAweDcyLCAweDY5LCAweDY1LCAweDZlLFxuICAweDY0LCAweDczLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDZiLFxuICAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDY5LCAweDZjLFxuICAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDc3LCAweDY5LFxuICAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDYxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDc2LFxuICAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDc3LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDc3LCAweDYxLFxuICAweDcyLCAweDY0LCAweDc5LCAweDZmLCAweDc1LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDcyLCAweDY1LCAweDZkLCAweDZmLFxuICAweDc2LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDY1LCAweDYzLCAweDc1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDY5LCAweDYyLCAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDY1LCAweDY0LFxuICAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDcyLCAweDY2LCAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDczLCAweDc1LCAweDZkLCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDZkLCAweDYxLCAweDYzLCAweDY4LCAweDY5LFxuICAweDZlLCAweDY1LCAweDZkLCAweDY5LCAweDZlLCAweDc1LCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDc2LFxuICAweDYxLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDZlLCAweDc1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDY1LFxuICAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY0LCAweDc0LCAweDcyLCAweDY5LCAweDY3LCAweDY3LCAweDY1LCAweDcyLFxuICAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZlLFxuICAweDY1LCAweDcyLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcwLCAweDY1LCAweDcyLCAweDY2LFxuICAweDY1LCAweDYzLCAweDc0LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDc5LCAweDczLFxuICAweDc0LCAweDY1LCAweDZkLCAweDczLCAweDZiLCAweDY1LCAweDY1LCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDc1LFxuICAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDJjLCAweDZhLFxuICAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LFxuICAweDczLCAweDc1LCAweDcyLCAweDY2LCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LFxuICAweDNiLCAweDY1LCAweDc4LCAweDcwLCAweDY5LCAweDcyLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDY1LFxuICAweDc3LCAweDczLCAweDYyLCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDQ1LCAweDZlLCAweDY3LCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDcyLFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDUwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDcwLFxuICAweDY5LCAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDYxLFxuICAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDc5LFxuICAweDc2LCAweDY5LCAweDZjLCAweDZjLCAweDYxLCAweDY3LCAweDY1LCAweDUzLCAweDcwLCAweDYxLCAweDZlLCAweDY5LCAweDczLFxuICAweDY4LCAweDY3LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDc5LCAweDY0LCAweDY1LCAweDYzLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY1LCAweDZkLCAweDY1LCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDczLCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDcxLCAweDc1LCAweDYxLFxuICAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDY3LCAweDY1LFxuICAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY1LCAweDczLCAweDczLFxuICAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDczLCAweDY2LCAweDY5LCAweDY3LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDY1LCAweDcyLCAweDY1LCAweDc4LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY0LCAweDY5LCAweDY3LCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDcwLFxuICAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDQxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDZkLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDc0LCAweDcyLCAweDYxLCAweDY2LCAweDY2LCAweDY5LFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDY0LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDc2LCAweDY5LCAweDYzLCAweDc0LFxuICAweDZmLCAweDcyLCAweDc5LCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDczLCAweDY2LCAweDY1LFxuICAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLFxuICAweDc1LCAweDczLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLCAweDczLFxuICAweDU2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDY1LCAweDcwLCAweDY5LCAweDczLCAweDZmLCAweDY0LCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY5LFxuICAweDZlLCAweDY3LCAweDY3LCAweDcyLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDYyLCAweDc2LCAweDY5LFxuICAweDZmLCAweDc1LCAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDc5LCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDJmLFxuICAweDc1LCAweDZjLCAweDNlLCAweDBkLCAweDBhLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDY3LFxuICAweDY1LCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDZiLCAweDc0LFxuICAweDZmLCAweDcwLCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDcwLCAweDYxLCAweDc0LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZlLCAweDc1LCAweDZlLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDQ0LCAweDY5LCAweDY3LFxuICAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDYzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDU3LCAweDY1LFxuICAweDYyLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDc1LCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LFxuICAweDQxLCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDYzLCAweDYxLCAweDY0LCAweDY1LFxuICAweDczLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLFxuICAweDNiLCAweDIwLCAweDYxLCAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY1LFxuICAweDYxLCAweDczLCAweDY1LCAweDQxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY3LCAweDY1LCAweDc0LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDczLCAweDZlLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDUwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDYzLFxuICAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDczLFxuICAweDYzLCAweDYxLCAweDcwLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDczLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDNkLCAweDMxLCAweDI2LCAweDYxLFxuICAweDZkLCAweDcwLCAweDNiLCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDNkLCAweDIwLFxuICAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDc1LCAweDcwLFxuICAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDUzLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDRlLFxuICAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDQzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDc0LCAweDZmLCAweDZmLCAweDZjLCAweDYyLFxuICAweDYxLCAweDcyLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYyLCAweDY1LCAweDYzLCAweDYxLFxuICAweDc1LCAweDczLCAweDY1LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDQ0LCAweDY1LCAweDc1LFxuICAweDc0LCAweDczLCAweDYzLCAweDY4LCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDc3LCAweDZmLFxuICAweDcyLCAweDZiLCAweDY1LCAweDcyLCAweDczLCAweDcxLCAweDc1LCAweDY5LCAweDYzLCAweDZiLCAweDZjLCAweDc5LCAweDYyLFxuICAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDY1LCAweDc4LCAweDYxLCAweDYzLCAweDc0LCAweDZjLCAweDc5LFxuICAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDczLCAweDY1LCAweDYxLCAweDczLFxuICAweDY1LCAweDUzLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDc3LCAweDY1LCAweDYxLCAweDcwLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDY4LCAweDY5LCAweDYyLCAweDY5LCAweDc0LCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDIxLCAweDJkLCAweDJkLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDZmLCAweDc1LFxuICAweDc0LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDZiLCAweDczLCAweDY0LFxuICAweDY1LCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDI4LCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LFxuICAweDcwLCAweDc1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLFxuICAweDIyLCAweDRkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDQ5LCAweDc0LCAweDYxLCAweDZjLFxuICAweDY5LCAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDc2LCAweDY5LCAweDZjLCAweDc5LCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDJkLCAweDMxLFxuICAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBhLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDQzLFxuICAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDYzLCAweDY1LFxuICAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDY0LCAweDcyLCAweDYxLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDY5LCAweDZjLCAweDZjLCAweDY5LFxuICAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDQ3LCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDc3LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDUzLFxuICAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDYxLCAweDc0LCAweDYxLCAweDZjLCAweDZmLCAweDY3LFxuICAweDQxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLFxuICAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDZlLCAweDY5LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDZhLCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDc5LCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDYyLCAweDYxLCAweDcyLCAweDQzLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDY3LCAweDZmLCAweDY4LCAweDZmLCAweDZjLFxuICAweDY5LCAweDY0LCAweDYxLCAweDc5LCAweDQ3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDcwLCAweDYxLFxuICAweDczLCAweDczLCAweDYxLCAweDY3LCAweDY1LCAweDJjLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDYxLFxuICAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDY1LCAweDY1LCAweDZjLCAweDY5LCAweDZlLCAweDY3LFxuICAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLFxuICAweDY3LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDZjLCAweDc5LCAweDJlLCAweDBhLCAweDBhLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDIwLFxuICAweDZlLCAweDZmLCAweDc0LCAweDY0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDQyLCAweDcyLCAweDY5LFxuICAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDQzLCAweDY4LCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDZjLCAweDYxLFxuICAweDYzLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LCAweDQ5LFxuICAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDIyLCAweDIwLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDJkLFxuICAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LFxuICAweDY1LCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDRjLCAweDY5LCAweDYyLCAweDcyLCAweDYxLFxuICAweDcyLCAweDc5LCAweDY4LCAweDc1LCAweDczLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDYzLCAweDc0LCAweDYxLCAweDY2LCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDczLCAweDQzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDZjLCAweDY1LCAweDczLCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYyLCAweDcyLFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLFxuICAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDZkLCAweDY5LFxuICAweDc1LCAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDZiLCAweDYxLCAweDY3LCAweDY1LCAweDQxLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY5LCAweDYzLCAweDYxLCAweDQ1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDVkLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDRkLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDY1LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc4LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LFxuICAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDJkLCAweDZkLCAweDZmLCAweDYyLCAweDY5LFxuICAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDc3LCAweDYxLCAweDZlLCAweDc0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDY5LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDc4LCAweDc5LCAweDZmLCAweDc1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDY0LCAweDZkLFxuICAweDYxLCAweDc4LCAweDY5LCAweDZkLCAweDc1LCAweDZkLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDcyLCAweDYxLCAweDcwLCAweDY5LCAweDY0LCAweDZjLCAweDc5LCAweDYzLCAweDZjLCAweDY5LCAweDZkLCAweDYxLCAweDc0LFxuICAweDY1LCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY3LFxuICAweDY1LCAweDY0LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDY0LCAweDcwLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDc1LCAweDZjLCAweDYxLCAweDY0LCAweDc5LCAweDZlLCAweDYxLCAweDczLCAweDc0LCAweDc5LCAweDY4LCAweDZmLFxuICAweDc3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDUzLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc1LCAweDY1LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDc5LFxuICAweDUyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDczLCAweDZmLCAweDZjLCAweDY0LCAweDY5LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDZjLCAweDc5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDJlLCAweDI2LCAweDcxLCAweDc1LFxuICAweDZmLCAweDc0LCAweDNiLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDQ1LCAweDY0LCAweDc3LFxuICAweDYxLCAweDcyLCAweDY0LCAweDIwLCAweDczLCAweDY1LCAweDY3LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDUyLCAweDZmLFxuICAweDYyLCAweDY1LCAweDcyLCAweDc0LCAweDIwLCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDUwLFxuICAweDYxLCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZlLCAweDY1LCAweDY0LFxuICAweDc1LCAweDcwLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNhLCAweDc3LCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDQxLCAweDZlLCAweDY3LCAweDY1LCAweDZjLFxuICAweDY1LCAweDczLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDVmLCAweDczLCAweDY1LCAweDYxLFxuICAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDcxLFxuICAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDY3LCAweDcyLFxuICAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDNhLCAweDIwLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc0LFxuICAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYyLCAweDY5LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LFxuICAweDYyLCAweDY1LCAweDZlLCAweDY1LCAweDY2LCAweDY5LCAweDc0LCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY5LCAweDZlLFxuICAweDY3LCAweDUzLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDczLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDZkLFxuICAweDc1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDZkLCAweDZmLCAweDcyLCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDczLCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDc2LCAweDYxLFxuICAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLFxuICAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDY1LCAweDc2LCAweDY1LFxuICAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDYyLCAweDZmLCAweDc0LCAweDc0LFxuICAweDZmLCAweDZkLCAweDNhLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDYxLCAweDZjLCAweDZjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDcwLCAweDY1LCAweDZlLFxuICAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDIwLFxuICAweDQxLCAweDc1LCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDczLCAweDc5LCAweDZkLCAweDYyLCAweDZmLCAweDZjLCAweDczLFxuICAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDZkLCAweDc1LCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLFxuICAweDczLCAweDc0LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDdkLCAweDI5LCAweDI4LCAweDI5LFxuICAweDNiLCAweDBkLCAweDBhLCAweDcwLCAweDYxLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDcyLCAweDZmLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDczLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDIwLCAweDI3LCAweDI3LCAweDU0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLFxuICAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDYxLCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDQ3LCAweDYxLCAweDZjLCAweDZjLFxuICAweDY1LCAweDcyLCAweDc5LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDYxLCAweDYyLCAweDY5LFxuICAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDY1LCAweDZlLCAweDY4LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDYxLFxuICAweDcyLCAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDI5LCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDUzLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LFxuICAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLFxuICAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDZmLCAweDZjLCAweDY1LCAweDQ1LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDc4LCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDQzLCAweDY4LFxuICAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZjLCAweDZlLFxuICAweDY1LCAweDc1LCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LFxuICAweDVmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDNlLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDZjLFxuICAweDY1LCAweDY0LCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYzLCAweDYxLCAweDc1LCAweDczLFxuICAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDc3LCAweDY1LCAweDYyLCAweDZiLCAweDY5LCAweDc0LCAweDYzLCAweDZjLCAweDYxLFxuICAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDRhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDYzLCAweDY4LFxuICAweDYxLCAweDcwLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZkLCAweDczLCAweDU0LFxuICAweDY4LCAweDZmLCAweDZkLCAweDYxLCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDdhLCAweDY5LCAweDZjLCAweDZjLCAweDYxLFxuICAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDY1LFxuICAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDNhLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDJjLCAweDY4LCAweDc1LCAweDZlLCAweDY0LFxuICAweDcyLCAweDY1LCAweDY0LCAweDRmLCAweDZjLCAweDc5LCAweDZkLCAweDcwLCAweDY5LCAweDYzLCAweDVmLCAweDYyLCAweDc1LFxuICAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDczLCAweDcyLCAweDY1LFxuICAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDYzLCAweDY4LCAweDcyLCAweDZmLCAweDZlLCAweDY5LCAweDYzLCAweDY0LFxuICAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDczLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LFxuICAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDY1LCAweDY5LCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZjLCAweDc5LCAweDY3LCAweDcyLCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZkLCAweDcwLFxuICAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDcwLFxuICAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJlLCAweDc3LFxuICAweDZmLCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDczLFxuICAweDc0LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LFxuICAweDc0LCAweDc5LCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDQzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDY1LFxuICAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDQyLCAweDcyLFxuICAweDZmLCAweDc3LCAweDczLCAweDY1LCAweDcyLCAweDZjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDdkLFxuICAweDIwLCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDUwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDY4LCAweDY5LCAweDY0LCAweDY1LCAweDI4LCAweDI5LFxuICAweDNiLCAweDQ2LCAweDZjLCAweDZmLCAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDYxLCAweDZlLCAweDczLCAweDc3LCAweDY1LFxuICAweDcyLCAweDczLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDQ1LCAweDZkLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDczLCAweDY1LCAweDcyLFxuICAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDUzLCAweDY1LFxuICAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDJkLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDQ2LFxuICAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDIxLCAweDNkLCAweDIwLCAweDZlLCAweDc1LCAweDZjLCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDQ0LCAweDY1LCAweDZlLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDc2LCAweDZmLCAweDY5LCAweDY0LCAweDI4LFxuICAweDMwLCAweDI5LCAweDJmLCAweDYxLCAweDZjLCAweDZjLCAweDJlLCAweDZhLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDUyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDUzLCAweDc0LCAweDY1LFxuICAweDcwLCAweDY4LCAweDY1LCAweDZlLCAweDBhLCAweDBhLCAweDU3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDZmLCAweDYyLFxuICAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDMyLCAweDNlLCAweDBkLCAweDBhLCAweDRkLFxuICAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LFxuICAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDczLCAweDJlLCAweDBhLCAweDBhLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDBhLCAweDBhLCAweDRkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDcwLCAweDZmLCAweDc3LCAweDY1LFxuICAweDcyLCAweDY1LCAweDY0LCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY2LCAweDY5LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY5LCAweDYzLCAweDZiLCAweDY1LCAweDc0LCAweDczLCAweDZmLFxuICAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZjLFxuICAweDc3LCAweDY5LCAweDc0LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDYzLFxuICAweDY1LCAweDQ3LCAweDY1LCAweDZmLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDQyLCAweDY1LCAweDZjLCAweDY3LCAweDY5LFxuICAweDc1LCAweDZkLCAweDJlLCAweDJlLCAweDJlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDc0LCAweDc3LCAweDY5LCAweDc0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDc3LCAweDYxLCAweDY5LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDYxLCAweDcyLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDRmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDcwLFxuICAweDY4LCAweDcyLCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDc1LCAweDcyLCAweDc2LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDYxLFxuICAweDcyLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDc5LCAweDY5LCAweDY3LCAweDZlLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDZjLCAweDZmLCAweDczLCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDIwLCAweDYxLCAweDczLCAweDQ3LCAweDY1LCAweDZmLFxuICAweDcyLCAweDY3LCAweDY5LCAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDNjLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDNjLCAweDczLCAweDc0LCAweDZmLCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDMxLFxuICAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLFxuICAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNhLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDY5LFxuICAweDY1LCAweDY0LCAweDMxLCAweDMwLCAweDMwLCAweDJjLCAweDMwLCAweDMwLCAweDMwLCAweDNjLCAweDJmLCAweDY4LCAweDMzLFxuICAweDNlLCAweDBhLCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDYyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDc3LCAweDY1LFxuICAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDMwLCAweDMwLCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDZkLFxuICAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDZmLCAweDY2LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDcyLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDZjLCAweDc5LFxuICAweDIwLCAweDYyLCAweDY5LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDcyLCAweDY5LCAweDczLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDI2LCAweDcyLCAweDYxLCAweDcxLCAweDc1LCAweDZmLCAweDNiLCAweDcwLCAweDZjLCAweDc1LFxuICAweDczLCAweDZmLCAweDZlLCAweDY1LCAweDY4LCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI4LCAweDc0LFxuICAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDQ0LCAweDZmLCAweDc1LCAweDY3LCAweDZjLCAweDYxLCAweDczLCAweDZhLFxuICAweDZmLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY5LCAweDcyLCAweDYzLCAweDZjLCAweDY1LCAweDczLFxuICAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQxLCAweDZlLCAweDYzLCAweDY5LCAweDY1LCAweDZlLFxuICAweDc0LCAweDU2LCAweDY5LCAweDY1LCAweDc0LCAweDZlLCAweDYxLCAweDZkLCAweDc2LCAweDY1LCAweDY4LCAweDY5LCAweDYzLFxuICAweDZjLCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDc5LCAweDczLFxuICAweDc0LCAweDYxLCAweDZjLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDIwLCAweDNkLCAweDU3LCAweDY5LCAweDZlLFxuICAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDY1LCAweDZlLCAweDZhLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDYxLCAweDIwLFxuICAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDY0LCAweDNjLFxuICAweDYxLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDY5LCAweDY3LCAweDZlLFxuICAweDIwLCAweDQxLCAweDZjLCAweDZjLCAweDIwLCAweDcyLCAweDY5LCAweDY4LCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDQ0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDY0LCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LFxuICAweDY1LCAweDZlLCAweDNiLCAweDYyLCAweDYxLCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY1LFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLCAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDYxLCAweDc0LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY3LCAweDY1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDRhLCAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDZlLFxuICAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDNhLCAweDY4LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDQ2LCAweDcyLCAweDY1LCAweDZlLFxuICAweDYzLCAweDY4LCAweDIwLCAweDZjLCAweDYxLCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDc5LCAweDcwLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDZlLFxuICAweDY1LCAweDZkLCAweDY5LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDY2LCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDY0LFxuICAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDJmLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDY2LCAweDczLCAweDJkLCAweDY5LCAweDZkLCAweDYxLCAweDY3LFxuICAweDY1LCAweDNhLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDYzLCAweDJlLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDIyLCAweDNlLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDc2LCAweDY5LCAweDZmLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIyLCAweDNlLCAweDYzLFxuICAweDY5LCAweDcyLCAweDYzLCAweDc1LCAweDY5LCAweDc0LCAweDQ2LCAweDY5LCAweDZlLCAweDZjLCAweDYxLCAweDZlLCAweDY0LFxuICAweDYzLCAweDY4LCAweDY1LCAweDZkLCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDMxLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc1LFxuICAweDYzLCAweDY4LCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDZlLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDIwLCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDc5LFxuICAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDc5LCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDY2LFxuICAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDcyLCAweDYxLCAweDY5LCAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY3LFxuICAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZlLCAweDc1LCAweDYzLCAweDZjLFxuICAweDY1LCAweDYxLCAweDcyLCAweDRhLCAweDY1LCAweDc3LCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDcwLCAweDcyLCAweDZmLFxuICAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDQyLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDczLCAweDY4LCAweDY2LCAweDZjLFxuICAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDc0LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDczLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIwLFxuICAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDc1LCAweDY5LCAweDYzLCAweDY5LFxuICAweDY0LCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDcwLCAweDY1LCAweDcyLCAweDY5LFxuICAweDZmLCAweDY0LCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDczLCAweDUzLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDY2LCAweDY5LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLFxuICAweDZkLCAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDc3LFxuICAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDNjLCAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDUwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDYzLCAweDc5LCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LFxuICAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDZmLFxuICAweDZjLCAweDc2LCAweDY1LCAweDUzLCAweDc3LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDY4LCAweDYyLCAweDcyLCAweDY5LFxuICAweDY1LCAweDY2LCAweDZjLCAweDc5LCAweDUwLCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDZmLFxuICAweDIwLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDY0LFxuICAweDY1LCAweDcwLCAweDY5LCAweDYzLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDZlLCAweDczLFxuICAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDczLCAweDZlLCAweDY1LCAweDc4LCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDYxLCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZkLCAweDYxLCAweDcwLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDc2LCAweDY5LFxuICAweDczLCAweDY1LCAweDY0LCAweDZhLCAweDUxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDI4LCAweDJkLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLCAweDc0LCAweDZmLFxuICAweDZmLCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDUzLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LFxuICAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDczLCAweDU0LCAweDc1LCAweDcyLCAweDZiLCAweDY5LCAweDczLCAweDY4LFxuICAweDc5LCAweDZmLCAweDc1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDJlLCAweDZkLCAweDYxLCAweDc0LCAweDYzLCAweDY4LFxuICAweDI4LCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLCAweDBhLCAweDYyLCAweDc1LCAweDcyLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDY3LCAweDcyLFxuICAweDY1LCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDNkLCAweDUyLCAweDY5LCAweDYzLFxuICAweDY4LCAweDYxLCAweDcyLCAweDY0LCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDcwLCAweDZjLFxuICAweDYxLCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDNjLFxuICAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDBkLCAweDBhLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLFxuICAweDc1LCAweDZjLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDczLFxuICAweDczLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LFxuICAweDYzLCAweDczLCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDY1LCAweDYzLFxuICAweDc1LCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDZjLCAweDY5LCAweDZlLFxuICAweDZiLCAweDIwLCAweDc0LCAweDZmLCAweDQ0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LCAweDZjLCAweDc0LCAweDNjLCAweDYyLFxuICAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNhLCAweDIwLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDJjLCAweDYzLFxuICAweDY4LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDZkLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDYzLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDY1LFxuICAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDNjLCAweDJmLCAweDY4LCAweDMxLCAweDNlLFxuICAweDBkLCAweDBhLCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJlLCAweDNmLCAweDc4LCAweDZkLCAweDZjLFxuICAweDIwLCAweDc2LCAweDY1LCAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDYxLFxuICAweDZkLCAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDY5LFxuICAweDcyLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDJkLCAweDJkLCAweDNlLCAweDI5LFxuICAweDJlLCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDI4LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLFxuICAweDY4LCAweDZmLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIzLCAweDY2LCAweDY2LCAweDY2LCAweDY2LCAweDY2LFxuICAweDY2LCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDY1LCAweDU2LCAweDY5LCAweDZlLCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDIwLCAweDczLCAweDcyLCAweDYzLFxuICAweDNkLCAweDIyLCAweDJmLCAweDUwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY0LCAweDY1LCAweDczLFxuICAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDY1LFxuICAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDUwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLCAweDY4LFxuICAweDY1LCAweDZjLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDRhLCAweDZmLCAweDczLCAweDY1LCAweDcwLCAweDY4LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LFxuICAweDczLCAweDNjLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDYxLCAweDIwLCAweDZjLCAweDYxLCAweDcyLFxuICAweDY3LCAweDY1LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDZlLCAweDI3LCAweDc0LCAweDZjLCAweDYxLCAweDc0LCAweDY1LFxuICAweDcyLCAweDJjLCAweDIwLCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY2LCAweDYxLCAweDc2LFxuICAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDQ4LCAweDc1LFxuICAweDZlLCAweDY3LCAweDYxLCAweDcyLCAweDc5LCAweDQxLCAweDY5LCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLFxuICAweDY1LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDRkLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDZjLCAweDUzLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLFxuICAweDczLCAweDUwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDJjLCAweDIwLCAweDYxLCAweDZlLFxuICAweDY0LCAweDIwLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDY1LCAweDI2LCAweDcxLCAweDc1LFxuICAweDZmLCAweDc0LCAweDNiLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDY2LFxuICAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDQ3LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDZlLCAweDIwLCAweDQxLCAweDY2LCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDczLCAweDY3LFxuICAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDYxLCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDc5LCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDIwLCAweDZmLFxuICAweDY2LCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDY0LCAweDY1LCAweDczLFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDJlLCAweDczLCAweDcyLCAweDYzLFxuICAweDIwLCAweDNkLCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDc0LCAweDZmLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY3LFxuICAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDRkLCAweDc1LFxuICAweDczLCAweDZjLCAweDY5LCAweDZkLCAweDczLCAweDU3LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDY5LFxuICAweDZlLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDYxLCAweDZjLCAweDczLCAweDQ5LCAweDZlLCAweDY0LCAweDY1LCAweDY1LCAweDY0LFxuICAweDJjLCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJmLCAweDczLCAweDY4LCAweDZmLCAweDc3LFxuICAweDVmLCAweDYxLCAweDZmLCAweDc1LCAweDc0LCAweDY0LCAweDZmLCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDYzLCAweDYxLFxuICAweDcwLCAweDY1LCAweDI4LCAweDQxLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDY3LCAweDY1LCAweDZlLFxuICAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDJjLCAweDQ5LCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDQ4LFxuICAweDY1LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDQ5LCAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLFxuICAweDQxLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDc5LCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDQ0LCAweDYxLCAweDZlLCAweDY5LCAweDY1LCAweDZjLCAweDIwLCAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDIyLCAweDNlLCAweDY5LCAweDZkLCAweDcwLCAweDZmLFxuICAweDczLCAweDY1LCAweDY0LCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LCAweDdhLCAweDY1LCAweDQxLCAweDYyLCAweDcyLFxuICAweDYxLCAweDY4LCAweDYxLCAweDZkLCAweDI4LCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDdiLCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDcwLCAweDc1LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI5LFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDI4LCAweDdjLCAweDdjLCAweDIwLCAweDViLCAweDVkLCAweDNiLCAweDBhLFxuICAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLCAweDIwLCAweDJhLCAweDZiLCAweDY5LCAweDc0LCAweDYzLCAweDY4LCAweDY1LFxuICAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLFxuICAweDZjLCAweDIwLCAweDY0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDZkLCAweDYxLCAweDY5LCAweDZlLFxuICAweDZjLCAweDc5LCAweDIwLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDI3LCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDczLCAweDY5LCAweDY2LFxuICAweDI4LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDQ5LCAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDI2LFxuICAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDNiLCAweDIwLCAweDIyLCAweDNlLCAweDU0LCAweDY1LCAweDcyLCAweDZkLCAweDczLFxuICAweDYyLCAweDZmLCAweDcyLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDRmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDZiLCAweDY5LFxuICAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDY3LCAweDYxLCAweDY5LCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDY3LCAweDZmLCAweDY5LCAweDZlLCAweDY3LCAweDZhLCAweDc1LCAweDczLFxuICAweDc0LCAweDY5LCAweDY2LCAweDc5LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDY2LCAweDYxLFxuICAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDc3LCAweDZlLCAweDYxLFxuICAweDczLCAweDczLCAweDYxLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZlLCAweDc2LCAweDY5LCAweDc0LCAweDY1LCAweDY0LFxuICAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDc3LFxuICAweDZlLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLFxuICAweDY1LCAweDcyLCAweDc0LCAweDY0LCAweDY5LCAweDYxLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDY0LCAweDZmLCAweDZjLFxuICAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDYzLCAweDZjLCAweDc1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDY4LFxuICAweDcwLCAweDNmLCAweDY5LCAweDY0LCAweDNkLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDY4LCAweDZmLCAweDZjLCAweDI5LFxuICAweDNiLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLFxuICAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDc2LCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZjLFxuICAweDczLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDQxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDYxLCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDcyLFxuICAweDZmLCAweDY5LCAweDY0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDY0LCAweDY5LCAweDZjLCAweDZjLFxuICAweDZlLCAweDY1LCAweDczLCAweDczLCAweDc3LCAweDYxLCAweDZjLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDY2LCAweDc5LCAweDZkLFxuICAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDQ0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDczLFxuICAweDY1LCAweDY0LCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDBhLCAweDA5LCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDIwLCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDczLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDY5LCAweDZlLCAweDY3LCAweDRjLCAweDY5LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDIwLCAweDQyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LFxuICAweDZlLCAweDJlLCAweDZhLCAweDczLCAweDNmLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZiLFxuICAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDZiLCAweDc0LCAweDc0LCAweDZmLCAweDY0LCAweDYxLCAweDc5LCAweDI3LCAweDczLFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDNkLCAweDc3LCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDQxLCAweDZjLCAweDZjLCAweDIwLCAweDUyLFxuICAweDY5LCAweDY3LCAweDNiLCAweDBhLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDcyLCAweDYxLCAweDY5LCAweDczLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDQxLCAweDZjLCAweDczLCAweDZmLCAweDJjLCAweDIwLCAweDYzLCAweDcyLCAweDc1LFxuICAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIyLCAweDNlLCAweDY0LCAweDY1LFxuICAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDY2LFxuICAweDY5LCAweDcyLCAweDY1LCAweDY2LCAweDZmLCAweDc4LCAweDYxLCAweDczLCAweDIwLCAweDZkLCAweDc1LCAweDYzLCAweDY4LFxuICAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJjLFxuICAweDIwLCAweDczLCAweDJjLCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLFxuICAweDNkLCAweDIwLCAweDBhLCAweDBkLCAweDBhLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDc0LCAweDZmLCAweDc3LCAweDYxLFxuICAweDcyLCAweDY0LCAweDczLCAweDUyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDUwLCAweDcyLCAweDY5LFxuICAweDc2LCAweDYxLCAweDc0LCAweDY1LCAweDQ2LCAweDZmLCAweDcyLCAweDY1LCAweDY5LCAweDY3LCAweDZlLCAweDUwLCAweDcyLFxuICAweDY1LCAweDZkLCAweDY5LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDU2LFxuICAweDY5LCAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDczLFxuICAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDUwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDY1LFxuICAweDY0LCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDNiLCAweDcwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDc0LCAweDc5LCAweDYzLCAweDY4LCAweDYxLCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDRjLCAweDY5LCAweDc2LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDY1LCAweDczLCAweDQxLCAweDZlLCAweDc0LFxuICAweDY4LCAweDZmLCAweDZlLCAweDc5LCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDZlLCAweDIyLCAweDIwLCAweDUyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDQ1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDc5LCAweDcyLFxuICAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDc1LCAweDc0LCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY3LCAweDcyLCAweDYxLCAweDc2LCAweDY5LCAweDc0LCAweDc5LCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDQzLCAweDY4LCAweDYxLCAweDcwLCAweDc0LCAweDY1LCAweDcyLCAweDJkLCAweDczLCAweDY4LCAweDYxLCAweDY0LFxuICAweDZmLCAweDc3LCAweDRlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLCAweDc0LCAweDY0LFxuICAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDY0LCAweDY5LCAweDc1LCAweDZkLCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDczLCAweDc2LCAweDYxLFxuICAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDcyLCAweDYxLCAweDc2LCAweDY1LCAweDZjLCAweDczLCAweDY4LFxuICAweDY1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDYxLCAweDYzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc5LCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDY4LFxuICAweDYxLCAweDY0LCAweDYxLCAweDY5LCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc0LCAweDZmLCAweDc3LCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDBhLCAweDBhLCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDI3LCAweDYzLCAweDZjLFxuICAweDY5LCAweDYzLCAweDZiLCAweDI3LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDZiLCAweDY1LFxuICAweDc5LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDYzLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDI4LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDI5LCAweDNiLFxuICAweDQxLCAweDZlLCAweDY0LCAweDcyLCAweDY1LCAweDc3LCAweDIwLCAweDc1LCAweDZlLCAweDY5LCAweDcxLCAweDc1LCAweDY1LFxuICAweDIwLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDIwLCAweDZkLCAweDZmLFxuICAweDcyLCAweDY1LCAweDMzLCAweDMwLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LFxuICAweDcyLCAweDZlLCAweDNiLCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDcwLCAweDZjLCAweDc1LFxuICAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDY1LFxuICAweDcyLCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ2LFxuICAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDc0LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY1LCAweDcyLCAweDczLCAweDQ0LCAweDc1LCAweDZiLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDZmLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDY5LCAweDc0LCAweDc3LCAweDY4LFxuICAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDZkLCAweDZmLCAweDZlLCAweDc5LCAweDYxLFxuICAweDIwLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDIyLCAweDNhLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDY1LCAweDZlLCAweDc1LCAweDIyLCAweDNlLFxuICAweDBhLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDZjLCAweDc5LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZjLCAweDY3LCAweDYxLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDUzLCAweDc1LCAweDZkLFxuICAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZjLCAweDZmLFxuICAweDc5LCAweDYxLCAweDZjLCAweDc0LCAweDc5LCAweDY2LCAweDY5LCAweDc0LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDY1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDZmLCAweDcyLFxuICAweDczLCAweDc1LCAweDcwLCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDUzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LFxuICAweDIwLCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDUyLCAweDc1LCAweDczLCAweDczLCAweDY5LFxuICAweDYxLCAweDZlLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDQxLCAweDZjLCAweDYyLCAweDY1LFxuICAweDcyLCAweDc0LCAweDYxLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDIyLCAweDNlLCAweDJlLCAweDYxLFxuICAweDcwLCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY0LCAweDZmLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY2LFxuICAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDYyLCAweDYxLCAweDZlLCAweDZiLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYyLCAweDY1LCAweDZlLCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDQ0LCAweDY1LCAweDczLCAweDcwLCAweDY5LCAweDc0LFxuICAweDY1LCAweDQzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDczLCAweDI5LCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDYzLCAweDZjLCAweDZmLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDQ5LCAweDZlLFxuICAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LCAweDY2LCAweDY5LCAweDY2LCAweDc0LCAweDY1LCAweDY1LCAweDZlLCAweDYxLFxuICAweDczLCAweDIwLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDJlLCAweDc5LCAweDYxLCAweDY4LCAweDZmLCAweDZmLCAweDJlLFxuICAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDY2LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY1LFxuICAweDcyLCAweDZmLCAweDYyLCAweDczLCAweDYzLCAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LFxuICAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDNkLCAweDIwLCAweDRkLCAweDYxLFxuICAweDc0LCAweDY4LCAweDJlLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDZlLCAweDZjLFxuICAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDIwLFxuICAweDc3LCAweDY4LCAweDZmLCAweDZjLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDcyLCAweDZmLCAweDcyLCAweDc5LFxuICAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDYyLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDcyLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDY5LFxuICAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDY4LCAweDY1LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYzLCAweDZjLFxuICAweDZmLCAweDc1LCAweDY0LCAweDY2LCAweDcyLCAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDRkLFxuICAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDMxLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDQyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LFxuICAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LFxuICAweDczLCAweDc0LCAweDc2LCAweDY5LCAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDczLCAweDIyLCAweDNlLCAweDYzLCAweDcyLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDQ1LCAweDRlLCAweDQ0LFxuICAweDIwLCAweDJkLCAweDJkLCAweDNlLCAweDY2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDYxLCAweDc3LFxuICAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDRjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDQ4LFxuICAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDIwLCAweDY2LCAweDYxLCAweDY5LCAweDcyLCAweDZjLCAweDc5LCAweDIwLFxuICAweDc3LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDc5LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDZkLCAweDYxLFxuICAweDZjLCAweDQxLCAweDY2LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LFxuICAweDc0LCAweDY1LCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDIyLCAweDNlLCAweDczLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDYxLCAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDQyLCAweDcyLCAweDYxLFxuICAweDczLCAweDY5LCAweDZjLCAweDI5LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDcyLCAweDY1LFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDQ3LCAweDcyLCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDc5LCAweDY2LFxuICAweDZmLCAweDZlLCAweDc0LCAweDIwLCAweDYzLCAweDZmLCAweDcwLCAweDc1LCAweDcyLCAweDczLCAweDc1LCAweDY1LCAweDY0LFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDc1LFxuICAweDcwLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDczLCAweDYxLCAweDc3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZjLFxuICAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY5LCAweDY2LCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDc3LCAweDY4LFxuICAweDY1LCAweDZlLCAweDIwLCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDcwLFxuICAweDc1LCAweDczLCAweDY4LCAweDI4LCAweDY2LCAweDc1LCAweDQxLCAweDc1LCAweDY3LCAweDc1LCAweDczLCAweDc0LCAweDIwLFxuICAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDQ2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDczLFxuICAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDZhLCAweDc1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDU1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY2LCAweDYxLCAweDcyLCAweDZkLFxuICAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDZmLCAweDYyLCAweDZhLFxuICAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDc1LCAweDczLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDRkLCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDNjLFxuICAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDYyLCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZiLCAweDY1LCAweDc5LCAweDQzLCAweDZmLCAweDY0LFxuICAweDY1LCAweDczLCAweDY5LCAweDc4LCAweDc0LCAweDY1LCAweDY1LCAweDZlLCAweDQ5LCAweDczLCAweDZjLCAweDYxLCAweDZkLFxuICAweDY5LCAweDYzLCAweDIzLCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDMwLCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDI4LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDZmLCAweDY2LCAweDZmLCAweDZlLFxuICAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDIwLCAweDNkLCAweDczLFxuICAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY1LCAweDcyLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDczLFxuICAweDUwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDYxLCAweDY5LFxuICAweDZlLCAweDNjLCAweDc0LCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDY2LCAweDc1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDY0LCAweDY0LFxuICAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDcyLCAweDY5LCAweDYzLCAweDZiLCAweDY1LCAweDc0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDcwLCAweDY4LCAweDY1LCAweDc0LCAweDczLCAweDY4LCAweDY5LCAweDY2LCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDZmLFxuICAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDUyLCAweDc1LCAweDczLCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDIwLFxuICAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDc0LFxuICAweDYxLCAweDZjLCAweDY3LCAweDY1LCAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDJkLCAweDYyLCAweDc1LCAweDZjLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDBhLCAweDIwLCAweDY4LCAweDY1LCAweDIwLCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDI5LCAweDJlLCAweDc2LCAweDYxLCAweDZjLCAweDI4LCAweDI5LCAweDY2LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDI5LCAweDNiLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYyLCAweDYxLFxuICAweDZlLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDQxLCAweDcyLCAweDY5LCAweDdhLCAweDZmLCAweDZlLCAweDYxLFxuICAweDYzLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDczLCAweDI5LCAweDNiLCAweDBhLCAweDdkLCAweDI5LCAweDNiLFxuICAweDBhLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDc1LFxuICAweDcyLCAweDZlLCAweDQzLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDczLCAweDYyLCAweDY1LCAweDY2LCAweDZmLFxuICAweDcyLCAweDY1LCAweDIwLCAweDQyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDY3LCAweDY1LCAweDY0LCAweDU0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLCAweDQzLCAweDYxLFxuICAweDcwLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY3LFxuICAweDZmLCAweDY0LCAweDY0LCAweDY1LCAweDczLCAweDczLCAweDU0LCAweDYxLCAweDY3LCAweDIwLCAweDJkLCAweDJkLCAweDNlLFxuICAweDQxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDUyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDY5LCAweDZlLCAweDNkLCAweDY2LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDI2LCAweDRjLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZjLCAweDZlLCAweDc3LCAweDY1LCAweDIwLFxuICAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDRhLCAweDc1LFxuICAweDY0LCAweDYxLCAweDY5LCAweDczLCAweDZkLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDYxLFxuICAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBhLCAweDIwLCAweDIwLFxuICAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc1LCAweDZlLCAweDYzLCAweDZjLCAweDY1LCAweDYxLFxuICAweDcyLCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDI3LCAweDJjLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLFxuICAweDY5LCAweDZlLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDBhLCAweDBhLCAweDNjLCAweDIxLFxuICAweDJkLCAweDJkLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDYxLCAweDcyLFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDZmLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZjLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDczLFxuICAweDc0LCAweDcyLCAweDY1LCAweDY1LCAweDc0LCAweDczLCAweDQyLCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDcyLCAweDY0LFxuICAweDYxLCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDc0LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDczLCAweDc5LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDIwLFxuICAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDcyLCAweDYyLCAweDZmLCAweDc1LCAweDcyLCAweDQ2LCAweDcyLCAweDY1LCAweDY1LFxuICAweDY0LCAweDZmLCAweDZkLCAweDZhLCAweDY1LCAweDc3LCAweDY1LCAweDZjLCAweDcyLCAweDc5LCAweDJmLCAweDYxLCAweDYyLFxuICAweDZmLCAweDc1LCAweDc0LCAweDJlLCAweDJlLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDZjLCAweDY1LFxuICAweDY3LCAweDY1LCAweDZlLCAweDY0LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDZkLFxuICAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDZmLCAweDZlLFxuICAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDIyLFxuICAweDIwLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDY1LFxuICAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDcyLCAweDZmLCAweDZlLCAweDc5LCAweDZkLCAweDY0LCAweDY1LCAweDZjLFxuICAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDMwLCAweDMwLFxuICAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDYxLCAweDczLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDJmLCAweDJhLCAweDIwLCAweDNjLCAweDIxLCAweDViLCAweDQzLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIwLCAweDNkLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDcwLCAweDY5LCAweDYzLCAweDZiLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDIwLCAweDUwLCAweDc1LFxuICAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDRkLCAweDYxLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDc0LCAweDYxLFxuICAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDY0LCAweDYxLCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDc3LFxuICAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZjLCAweDYxLCAweDc3LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY1LCAweDYxLCAweDczLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLFxuICAweDc3LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDdkLCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDI4LCAweDczLCAweDY1LCAweDc2LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDYyLCAweDZmLCAweDc4LCAweDc3LCAweDY1LCAweDZlLFxuICAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDY5LFxuICAweDc0LCAweDY5LCAweDdhLCAweDY1LCAweDZlLCAweDQ5LCAweDIwLCAweDY0LCAweDZmLCAweDZlLCAweDI3LCAweDc0LCAweDcyLFxuICAweDY1LCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDJlLCAweDIwLCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDc3LCAweDc3LCAweDJlLCAweDIyLCAweDI5LCAweDNiLCAweDBhLCAweDYyLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDZkLCAweDYxLCAweDY5LCAweDZjLCAweDc0LCAweDZmLCAweDNhLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDJlLCAweDIwLCAweDRkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDcyLFxuICAweDY5LCAweDY1LCAweDczLCAweDdjLCAweDdjLCAweDdiLCAweDdkLCAweDNiLCAweDc3LCAweDY5LCAweDc3LCAweDZmLCAweDcyLFxuICAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc5LCAweDZlLCAweDZmLCAweDZlLCAweDc5LCAweDZkLCAweDY0LCAweDY1LFxuICAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDZmLFxuICAweDcwLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDU0LCAweDcyLCAweDYxLFxuICAweDc1LCAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDczLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDIyLCAweDNlLCAweDNjLCAweDYzLCAweDZmLCAweDZkLCAweDUzLCAweDYzLFxuICAweDZmLCAweDcyLCAweDQxLCAweDZjLCAweDZjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZhLCAweDUxLCAweDc1LCAweDY1LFxuICAweDcyLCAweDc5LCAweDJlLCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDQzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDY5LCAweDYzLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDIyLCAweDIwLCAweDU3LCAweDY5LFxuICAweDZjLCAweDY4LCAweDY1LCAweDZjLCAweDZkLCAweDczLCAweDc1LCAweDYyLCAweDc1LCAweDcyLCAweDYyLCAweDczLCAweDY3LFxuICAweDY1LCAweDZlLCAweDc1LCAweDY5LCAweDZlLCAweDY1LCAweDYyLCAweDY5LCAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDczLFxuICAweDJlLCAweDczLCAweDcwLCAweDZjLCAweDY5LCAweDc0LCAweDI4LCAweDY3LCAweDZjLCAweDZmLCAweDYyLCAweDYxLCAweDZjLFxuICAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDQzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDY1LCAweDY2LFxuICAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDY4LCAweDY5LCAweDY1LCAweDY2LCAweDZjLCAweDc5LCAweDJkLCAweDY4LFxuICAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDJkLCAweDYyLCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDNjLFxuICAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDBhLCAweDBhLCAweDJlLCAweDIwLCAweDU3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDY0LCAweDY5LCAweDczLCAweDZkLCAweDY5LCAweDczLFxuICAweDczLCAweDQ1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDc3LCAweDYxLCAweDc5LFxuICAweDczLCAweDIwLCAweDc2LCAweDY5LCAweDYxLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweGMzLFxuICAweGIxLCAweDZmLCAweDZjLCAweDc3LCAweDY1LCAweDZjLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDcyLCAweDc1LCAweDZjLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDYzLCAweDYxLFxuICAweDcwLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDczLCAweDZmLCAweDZlLCAweDcyLFxuICAweDc1LCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZmLCAweDZiLFxuICAweDY5LCAweDc0LCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDJjLCAweDNkLCAweDMwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLFxuICAweDNiLCAweDI4LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDYxLCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDIwLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDJmLFxuICAweDcwLCAweDYxLCAweDY3LCAweDRkLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDRiLCAweDY1LCAweDZlLFxuICAweDZlLCAweDY1LCAweDY0LCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDY2LCAweDc1LFxuICAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY1LCAweDY0LCAweDQyLFxuICAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDJmLCAweDJmLCAweDJkLCAweDJkLCAweDNlLCAweDNjLCAweDJmLFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDczLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY4LCAweDY5LCAweDZkLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLFxuICAweDZmLCAweDZlLCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDc3LCAweDYxLCAweDc5LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDJlLFxuICAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDZjLCAweDYxLCAweDY0LCAweDc2LCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDcwLFxuICAweDY1LCAweDZlLCAweDYxLCAweDZjLCAweDc0LCAweDc5LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDNhLFxuICAweDY5LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDRjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDYxLCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDQ4LCAweDY1LCAweDcyLCAweDYyLCAweDY1LFxuICAweDcyLCAweDc0LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDY3LCAweDcyLCAweDZmLFxuICAweDc1LCAweDcwLCAweDczLCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY2LCAweDZjLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDcwLCAweDczLCAweDZjLFxuICAweDZmLCAweDc3LCAweDZjLCAweDc5LCAweDIwLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDIwLCAweDczLFxuICAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDBhLCAweDA5LCAweDA5LFxuICAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDY1LCAweDY0LFxuICAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc1LCAweDZjLCAweDNlLCAweDBkLCAweDBhLFxuICAweDIwLCAweDIwLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDcwLCAweDYxLCAweDY5LCAweDcyLFxuICAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDRiLCAweDZmLCAweDZlLFxuICAweDc0LCAweDYxLCAweDZiLCAweDc0LCAweDQxLCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDZmLCAweDY4LCAweDYxLFxuICAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDIwLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDZkLCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDIyLCAweDI5LCAweDJlLCAweDYzLCAweDczLCAweDczLFxuICAweDI4LCAweDY4LCAweDZmLCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDIwLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDcwLCAweDczLCAweDJjLCAweDUwLCAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDJkLCAweDJkLCAweDNlLFxuICAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDIwLCAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDNkLCAweDIyLCAweDIwLCAweDZmLFxuICAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDNjLFxuICAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDQzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDU2LFxuICAweDNlLCAweDNjLCAweDVjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDczLCAweDZmLCAweDZjLCAweDc2LCAweDY5LCAweDZlLFxuICAweDY3LCAweDQzLCAweDY4LCAweDYxLCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDZjLCAweDYxLCAweDc2LCAweDY1LFxuICAweDcyLCAweDc5LCAweDc3LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDc3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDIxLCAweDNkLCAweDIwLCAweDI3LCAweDc1LCAweDZlLCAweDY0LCAweDY2LCAweDZmLCAweDcyLFxuICAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDJkLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDQxLCAweDcyLCAweDYxLCAweDYyLCAweDY5LCAweDYxLCAweDZlLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LFxuICAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDY1LFxuICAweDJkLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDJjLCAweDY5LCAweDczLCAweDIwLCAweDY4LCAweDZmLFxuICAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDczLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDczLCAweDY5LFxuICAweDcyLCAweDY1LCAweDY0LCAweDQzLCAweDZjLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDcwLFxuICAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDRkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDY1LCAweDYxLCAweDY0LCAweDI3LCAweDI5LCAweDViLCAweDMwLCAweDQzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDczLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDNlLCAweDI2LCAweDYzLCAweDZmLCAweDcwLFxuICAweDc5LCAweDNiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDIyLCAweDNlLCAweDYxLCAweDczLCAweDczLCAweDY1LFxuICAweDZkLCAweDYyLCAweDZjLCAweDZkLCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDY1LCAweDY0LCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDJlLCAweDcwLCAweDczLFxuICAweDNhLCAweDIyLCAweDIwLCAweDNmLCAweDIwLCAweDcyLCAweDY1LCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDc0LCAweDYyLFxuICAweDc5LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDQ2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDIwLFxuICAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDY0LCAweDY1LCAweDZjLCAweDYxLCAweDc5LCAweDY1LFxuICAweDY0LCAweDQzLCAweDYxLCAweDZlLCAweDZmLCAweDZlLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcwLCAweDc1LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDQyLCAweDYxLCAweDYyLCAweDc5LCAweDZjLCAweDZmLCAweDZlLCAweDYyLCAweDZmLFxuICAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDcyLCAweDQzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDY1LFxuICAweDQxLCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LFxuICAweDczLCAweDYxLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDcyLCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDZmLCAweDc0LFxuICAweDY1LCAweDczLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDQ4LCAweDZmLCAweDc1LCAweDczLFxuICAweDc0LCAweDZmLCAweDZlLCAweDMyLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLCAweDYxLCAweDYzLCAweDYzLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDc1LCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY3LCAweDZmLFxuICAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDI5LFxuICAweDJlLCAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDI4LCAweDcwLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDIwLCAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDY5LCAweDZlLCAweDIwLCAweDRhLCAweDc1LCAweDZjLFxuICAweDc5LCAweDczLCAweDc0LCAweDIwLCAweDJiLCAweDIwLCAweDIyLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDY4LCAweDY1LCAweDZjLCAweDcwLFxuICAweDY2LCAweDc1LCAweDZjLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDIwLFxuICAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDcyLCAweDI3LCAweDJiLCAweDI3LCAweDY5LCAweDcwLCAweDc0LCAweDZjLCAweDZmLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY5LFxuICAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDc2LCAweDYxLFxuICAweDZjLCAweDY2LCAweDc1LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDNjLCAweDZmLCAweDYyLCAweDZhLCAweDY1LFxuICAweDYzLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDUzLCAweDc0LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDI4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDY0LCAweDJlLCAweDIwLFxuICAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDZmLCAweDZlLCAweDY0LFxuICAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDJmLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLFxuICAweDYyLCAweDY3LCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDZjLCAweDYxLCAweDc3LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDQ5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDYxLCAweDYxLCAweDc2LCAweDZmLCAweDY5LCAweDY0LFxuICAweDY1LCAweDY0LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMyLCAweDcwLCAweDc4LCAweDIwLFxuICAweDMzLCAweDcwLCAweDc4LCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDYxLCAweDY2LCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDJlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDJkLCAweDNkLFxuICAweDIwLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDNiLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc1LCAweDczLCAweDY1LFxuICAweDczLCAweDYzLCAweDcyLCAweDY1LCAweDY1LCAweDZlLCAweDJlLCAweDQ5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLFxuICAweDIwLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDNkLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLFxuICAweDc5LCAweDJjLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIwLCAweDI2LCAweDZlLCAweDYyLFxuICAweDczLCAweDcwLCAweDNiLCAweDY0LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDY1LFxuICAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDYxLCAweDczLCAweDZlLCAweDZmLFxuICAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDY0LCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY1LCAweDcyLCAweDczLCAweDdkLFxuICAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LFxuICAweDczLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDY1LCAweDc3LCAweDY5LCAweDczLCAweDIwLCAweDZhLCAweDc1LFxuICAweDczLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDUzLCAweDY1LCAweDYxLFxuICAweDcyLCAweDYzLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDY4LCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDcwLCAweDY1LCAweDY0LCAweDYyLCAweDcyLFxuICAweDNlLCAweDNjLCAweDYyLCAweDcyLCAweDNlLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDc1LCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDYxLCAweDIwLCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDQxLCAweDY0LCAweDZkLCAweDY5LCAweDcyLFxuICAweDYxLCAweDZjLCAweDIwLCAweDY2LCAweDY5LCAweDc4LCAweDY1LCAweDY0LCAweDNiLCAweDZlLCAweDZmLCAweDcyLCAweDZkLFxuICAweDYxLCAweDZjLCAweDIwLCAweDRkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDUwLCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDJjLCAweDIwLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDYzLCAweDY4LFxuICAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LFxuICAweDZlLCAweDc2LCAweDYxLCAweDY0LCAweDY1LCAweDY0LCAweDNkLCAweDIyLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDIyLFxuICAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDYxLCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDdkLCAweDI5LCAweDNiLCAweDBkLFxuICAweDBhLCAweDIwLCAweDIwLCAweDY5LCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDc0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDc0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDYxLFxuICAweDc0LCAweDY5LCAweDczLCAweDY2LCAweDc5LCAweDc0LCAweDZmLCAweDIwLCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDY0LFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDZjLCAweDZmLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDUwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDRhLCAweDc1LCAweDZlLFxuICAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDc1LCAweDZkLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY5LCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDQ2LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDczLCAweDY4LCAweDczLCAweDcyLCAweDYzLFxuICAweDIwLCAweDNkLCAweDIwLCAweDI4LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDIwLCAweDY4LCAweDY1LFxuICAweDZjLCAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDZjLFxuICAweDYxLCAweDc3LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDY1LCAweDY0LFxuICAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY1LCAweDIyLCAweDNlLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LFxuICAweDcyLCAweDJkLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDIwLCAweDYxLCAweDczLCAweDUzLCAweDc0LCAweDYxLCAweDZlLFxuICAweDZjLCAweDY1LCAweDc5LCAweDYyLCAweDcyLCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDY3LCAweDZjLFxuICAweDZmLCAweDYyLCAweDYxLCAweDZjLCAweDQzLCAweDcyLCAweDZmLCAweDYxLCAweDc0LCAweDY5LCAweDYxLCAweDIwLCAweDQxLFxuICAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDViLCAweDMwLCAweDVkLCAweDNiLCAweDBhLCAweDIwLCAweDIwLCAweDY5LFxuICAweDc0LCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDY1LCAweDY0LFxuICAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDI5LCAweDdiLCAweDc0LCAweDY4LCAweDcyLCAweDZmLFxuICAweDc3LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDQ2LCAweDQ2LCAweDQ2LCAweDQ2LFxuICAweDQ2LCAweDQ2LCAweDIyLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDIyLCAweDZjLCAweDY5LCAweDZiLFxuICAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDczLCAweDZjLCAweDY5LFxuICAweDc2LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDcwLFxuICAweDcyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDc1LCAweDYyLCAweDJkLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDcyLCAweDY1LCAweDZhLCAweDY1LCAweDYzLCAweDc0LFxuICAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LFxuICAweDIyLCAweDNlLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDY1LCAweDY0LCAweDY2LCAweDY1LCAweDY1LCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDRlLCAweDc1LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDY1LCAweDZjLCAweDcwLCAweDU3LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZlLCAweDI3LCAweDczLCAweDRlLCAweDY1LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDRkLFxuICAweDY1LCAweDc4LCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDY5LCAweDZlLFxuICAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDZkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDY4LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDc5LCAweDZjLCAweDYxLCAweDc3LCAweDczLCAweDc1LFxuICAweDY5LCAweDc0LCAweDY0LCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDJlLCAweDcwLCAweDc1LCAweDczLFxuICAweDY4LCAweDI4LCAweDdiLCAweDczLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDcyLCAweDczLCAweDczLCAweDY5LCAweDZkLFxuICAweDcwLCAweDZjLCAweDc5LCAweDIwLCAweDU0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDJlLCAweDYzLFxuICAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LCAweDIwLCAweDQ5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDI4LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDc1LCAweDczLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLFxuICAweDIwLCAweDUzLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDZjLCAweDY5LCAweDY1LCAweDczLFxuICAweDIwLCAweDY5LCAweDZlLCAweDI3LCAweDVkLCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDIwLCAweDIwLCAweDZkLCAweDYxLFxuICAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDI4LCAweDIyLFxuICAweDQ0LCAweDRmLCAweDRkLCAweDQzLCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDZmLFxuICAweDZlLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDZmLCAweDY2LCAweDIwLFxuICAweDRiLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY5LCAweDc0LFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDczLCAweDY4LFxuICAweDZmLCAweDc3LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNiLCAweDZkLCAweDYxLCAweDY0LCAweDY1LFxuICAweDIwLCAweDY5LCAweDc0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDZkLCAweDY5LCAweDc4LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcwLCAweDcyLFxuICAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDcyLCAweDYzLCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDYxLCAweDIwLFxuICAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDQyLCAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDczLFxuICAweDc0LCAweDc2LCAweDZmLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDBhLCAweDA5LCAweDA5LCAweDc2LCAweDYxLFxuICAweDcyLCAweDIwLCAweDRkLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDMyLCAweDY3LCAweDcyLCAweDY1LCAweDc3LFxuICAweDIwLCAweDc1LCAweDcwLCAweDQzLCAweDZjLCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDJlLCAweDcyLCAweDY1LFxuICAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDczLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDc3LCAweDYxLFxuICAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDY2LFxuICAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDZmLCAweDcyLFxuICAweDZiLCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDczLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDY4LFxuICAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDY4LCAweDZmLCAweDc3LFxuICAweDI4LCAweDI5LCAweDNiLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDYyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDNkLCAweDNkLFxuICAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDBhLFxuICAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDY2LCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LFxuICAweDJlLCAweDcyLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDZmLCAweDZlLCAweDY4LCAweDZmLCAweDczLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDJlLCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY4LCAweDY1LCAweDIwLCAweDc3LFxuICAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDczLCAweDcwLCAweDcyLFxuICAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDQ2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDIwLFxuICAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LFxuICAweDZmLCAweDcyLCAweDc1LCAweDZkLCAweDczLCAweDJlLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDYxLCAweDY3LCAweDY1LFxuICAweDIyLCAweDNlLCAweDRkLCAweDZmLCAweDYyLCAweDY5LCAweDZjLCAweDQzLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDIyLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDYxLCAweDczLCAweDIwLCAweDY4LCAweDY5LFxuICAweDY3LCAweDY4LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDJkLCAweDJkLCAweDNlLCAweDNjLFxuICAweDIxLCAweDJkLCAweDJkLCAweDY2LCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLFxuICAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDY0LCAweDczLCAweDY1LFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDIwLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDY2LCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDczLCAweDc0LFxuICAweDYyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLFxuICAweDVmLCAweDYyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLFxuICAweDY3LCAweDIwLCAweDQ5LCAweDZlLCAweDY2LCAweDZmLCAweDYyLCAweDZmLCAweDc4LCAweDY1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDJjLCAweDYxLCAweDIwLCAweDc5LCAweDZmLCAweDc1LCAweDZlLCAweDY3LCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDRlLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDYzLCAweDY4LFxuICAweDY1LCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDczLFxuICAweDc3LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDI4LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLFxuICAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDY2LCAweDY5LCAweDZlLCAweDY0LCAweDIwLFxuICAweDYxLCAweDIwLCAweDJkLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDUwLCAweDcyLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDVmLCAweDZlLCAweDYxLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDJjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcwLFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDJjLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY0LCAweDc1LCAweDYzLCAweDY1LFxuICAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LFxuICAweDZjLCAweDY1LCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDQxLCAweDY3LCAweDYxLCAweDY5LFxuICAweDZlLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDc5LCAweDZiLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDcwLCAweDc4LCAweDNiLCAweDIyLCAweDNlLCAweDBkLCAweDBhLCAweDcwLCAweDc1LFxuICAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDZlLFxuICAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDQzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDZmLCAweDcyLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDY5LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDZmLCAweDc3LFxuICAweDZlLCAweDY1LCAweDY0LCAweDQ5LCAweDUzLCAweDQyLCAweDRlLCAweDIwLCAweDMwLCAweDJkLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDRmLCAweDYzLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDcyLCAweDZkLCAweDYxLFxuICAweDc5LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDQ0LCAweDY1LCAweDY2LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDY1LCAweDZlLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDc3LCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDc0LFxuICAweDZmLCAweDYyLCAweDcyLCAweDZmLCAweDYxLCAweDY0LCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZmLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDNkLCAweDY5LCAweDc0LCAweDJlLCAweDIwLFxuICAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDRkLCAweDY1LCAweDZkLFxuICAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDYxLCAweDczLFxuICAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDczLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDJlLCAweDY5LCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLFxuICAweDNkLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLFxuICAweDVmLCAweDYxLCAweDIwLCAweDY3LCAweDZmLCAweDZmLCAweDY0LCAweDIwLCAweDcyLCAweDY1LCAweDZiLCAweDZjLCAweDYxLFxuICAweDZkLCAweDYxLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDJjLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDVmLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LCAweDcwLCAweDYxLCAweDZlLFxuICAweDY1LCAweDZjLCAweDIyLCAweDNlLCAweDRjLCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDJjLCAweDY0LCAweDY1LFxuICAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDc1LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDYyLFxuICAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDczLCAweDZkLCAweDYzLCAweDZmLCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZjLFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDc1LCAweDczLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLFxuICAweDIwLCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZjLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDYyLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDcyLCAweDc5LCAweDczLCAweDY1LCAweDcyLFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDUzLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDUwLCAweDY1LFxuICAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDQ3LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDczLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcyLCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDczLCAweDY1LCAweDY1LCAweDZkLFxuICAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYyLCAweDYxLCAweDYzLFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDY3LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDY3LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYzLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDJlLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDRjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDYyLCAweDc1LFxuICAweDc0LCAweDQ4LCAweDY5LCAweDY3LCAweDY4LCAweDc3LCAweDYxLCAweDc5LCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLFxuICAweDYyLCAweDc5LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDIwLCAweDY0LFxuICAweDZmLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDYyLCAweDYxLCAweDc0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDc5LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZjLCAweDYxLCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDczLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDY3LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDZmLCAweDZlLFxuICAweDcyLCAweDY1LCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LFxuICAweDIwLCAweDNkLCAweDU1LCAweDUzLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDUzLCAweDY1LCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDYyLCAweDc5LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDJlLCAweDY4LCAweDY1LCAweDYxLFxuICAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDNhLCAweDY4LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDZjLCAweDY1LFxuICAweDczLCAweDYyLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDJmLFxuICAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDVmLCAweDVmLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLFxuICAweDczLCAweDQ4LCAweDYxLCAweDcyLCAweDc2LCAweDYxLCAweDcyLCAweDY0LCAweDJmLCAweDcwLCAweDY5LCAweDc4LCAweDY1LFxuICAweDZjLCAweDJlLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZhLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDczLCAweDZiLCAweDc5LCAweDczLCAweDYzLCAweDcyLCAweDYxLCAweDU1LCAweDZlLFxuICAweDY5LCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDBkLCAweDBhLCAweDQxLFxuICAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDZlLCAweDc1LCAweDYzLCAweDZjLCAweDY1LCAweDc1LCAweDczLFxuICAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDc5LCAweDJjLCAweDcwLCAweDc1LCAweDcyLCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDY1LCAweDYxLCAweDczLCAweDY5LCAweDZjLFxuICAweDc5LCAweDIwLCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDIwLCAweDYxLCAweDZmLCAweDZlLCAweDYzLCAweDZjLFxuICAweDY5LCAweDYzLCAweDZiLCAweDYxLCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDcwLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY4LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDIwLCAweDdiLCAweDBhLCAweDY0LFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZlLCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDJjLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDc3LCAweDY4LFxuICAweDZmLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDU3LCAweDY1LCAweDYyLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDYzLCAweDYxLCAweDc2LCAweDYxLCAweDZjLCAweDcyLCAweDc5LCAweDQ4LCAweDY1LCAweDIwLCAweDY0LFxuICAweDY5LCAweDY1LCAweDY0LCAweDczLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDMwLCAweDMwLCAweDJjLFxuICAweDMwLCAweDMwLCAweDMwLCAweDIwLCAweDdiLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDY4LCAweDYxLFxuICAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDY2LCAweDI4LCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDczLCAweDZmLCAweDZjLCAweDY1LCAweDZjLCAweDc5LCAweDIwLFxuICAweDZkLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDcyLCAweDY1LCAweDZlLCAweDY1LCAweDc3LCAweDY1LFxuICAweDY0LCAweDQ0LCAweDY1LCAweDc0LCAweDcyLCAweDZmLCAweDY5LCAweDc0LCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LFxuICAweDczLCAweDc0LCAweDY1LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLFxuICAweDIwLCAweDY5LCAweDZlLCAweDUzLCAweDY1LCAweDZlLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDU1LCAweDczLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDRiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDcyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDczLCAweDJkLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY4LFxuICAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDY4LCAweDY5LCAweDZkLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDZmLFxuICAweDZkLCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDYxLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQyLCAweDc1LCAweDY2LCAweDY2LCAweDYxLCAweDZjLCAweDZmLCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNjLCAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDY2LFxuICAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDQzLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLFxuICAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDY0LFxuICAweDYxLCAweDc5LCAweDZlLCAweDY1LCAweDcyLCAweDc2LCAweDZmLCAweDc1LCAweDczLCAweDczLCAweDcxLCAweDc1LCAweDYxLFxuICAweDcyLCAweDY1LCAweDIwLCAweDdkLCAweDNiLCAweDY5LCAweDY2LCAweDI4LCAweDY3LCAweDZmLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZkLCAweDY3LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDczLFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJmLCAweDc0LFxuICAweDc1LCAweDY1LCAweDczLCAweDY0LCAweDYxLCAweDc5LCAweDZjLCAweDZmLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LFxuICAweDUzLCAweDZmLCAweDZjLCAweDZmLCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDc1LCAweDYxLCAweDZjLFxuICAweDIwLCAweDJkLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDc1LFxuICAweDZkLCAweDIyLCAweDQ0LCAweDRmLCAweDIwLCAweDRlLCAweDRmLCAweDU0LCAweDIwLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDJjLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDYxLCAweDIwLCAweDc3LCAweDYxLCAweDcyLFxuICAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDYxLFxuICAweDZiLCAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDNlLCAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDc0LCAweDJlLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDc3LCAweDYxLCAweDc5LFxuICAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY5LCAweDc0LFxuICAweDc5LCAweDIyLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDIyLCAweDNlLCAweDZmLCAweDYyLCAweDZjLCAweDY5LCAweDY3LFxuICAweDY1LCAweDY0LCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIyLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY2LCAweDY5LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDQ1LCAweDYxLFxuICAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDcwLCAweDcyLCAweDYxLCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZlLFxuICAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDYxLFxuICAweDc0LCAweDY4LCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDRhLCAweDc1LCAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDcyLFxuICAweDU5LCAweDYxLCAweDY4LCAweDZmLCAweDZmLCAweDIxLCAweDIwLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDY0LFxuICAweDIwLCAweDczLCAweDZmLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDczLCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDc3LCAweDZmLFxuICAweDZkLCAweDYxLCAweDZlLCAweDNmLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDY0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDIwLCAweDYyLCAweDY5LFxuICAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDY0LFxuICAweDYxLCAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDUyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLFxuICAweDZmLCAweDc3LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDZlLFxuICAweDIwLCAweDYxLCAweDIwLCAweDcwLCAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDJkLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNiLCAweDYyLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDYxLFxuICAweDZlLCAweDZlLCAweDc1LCAweDYxLCAweDZjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRlLCAweDY1LCAweDc3LFxuICAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDIyLCAweDIwLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDYyLCAweDcyLCAweDY5LFxuICAweDY1LCAweDY2LCAweDI4LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDcwLCAweDczLCAweDJlLCAweDNiLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDdhLFxuICAweDc5LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLFxuICAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDdiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDcwLCAweDc5LCAweDYxLCAweDIwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LFxuICAweDYyLCAweDYxLCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDIyLCAweDNlLFxuICAweDBhLCAweDI4LCAweDI5LCAweDNiLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDYxLCAweDIwLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDVjLCAweDc1LCAweDMwLCAweDMwLCAweDMzLCAweDQzLCAweDYxLCAweDYxLCAweDYyLCAweDZmLCAweDc1LFxuICAweDc0LCAweDIwLCAweDYxLCAweDc0LCAweDcyLCAweDNlLCAweDBkLCAweDBhLCAweDA5LCAweDA5LCAweDYzLCAweDYzLCAweDZmLFxuICAweDc1LCAweDZlLCAweDc0LCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDNjLCAweDUzLFxuICAweDQzLCAweDUyLCAweDQ5LCAweDUwLCAweDU0LCAweDUyLCAweDYxLCAweDY5LCAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDc0LFxuICAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDJmLCAweDc0LCAweDZmLCAweDZmLCAweDZjLCAweDYyLCAweDZmLCAweDc4LFxuICAweDQyLCAweDc5LCAweDQ5LCAweDY0LCAweDI4LCAweDIyLCAweDc4LCAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDczLFxuICAweDJjLCAweDc3LCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDY5LCAweDY2LCAweDIwLCAweDI4LCAweDc3LCAweDY5LCAweDYzLCAweDZmLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDczLCAweDIwLCAweDU1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDY4LCAweDYxLFxuICAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY0LCAweDY1LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDJmLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLFxuICAweDY1LCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc0LCAweDYxLFxuICAweDY3LCAweDY1LCAweDY5LCAweDZlLCAweDIwLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDYxLCAweDI2LCAweDcxLCAweDc1LFxuICAweDZmLCAweDc0LCAweDNiLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDQ5LCAweDZlLCAweDIwLFxuICAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDZmLCAweDcyLCAweDY1LFxuICAweDY3LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDNjLFxuICAweDJmLCAweDcwLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDU2LCAweDYxLFxuICAweDNiLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDNjLCAweDJmLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDczLCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDZjLFxuICAweDc5LCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDcyLCAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDdhLFxuICAweDY1LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY4LCAweDYxLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDQ4LCAweDZmLFxuICAweDczLCAweDc0LCAweDIwLCAweDNkLCAweDIwLCAweDU3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY2LFxuICAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDZjLCAweDY1LCAweDU2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLFxuICAweDNkLCAweDViLCAweDVkLCAweDNiLCAweDI4LCAweDY2LCAweDc1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDcyLCAweDYxLFxuICAweDczLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDIwLFxuICAweDYxLCAweDczLCAweDQ5LCAweDZlLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDNlLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDNjLCAweDIxLCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDNjLCAweDYyLFxuICAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDQyLCAweDY1LCAweDY5LCAweDZhLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLFxuICAweDc0LCAweDYxLCAweDZjLCAweGMzLCAweGEwLCAweDY0LCAweDY1LCAweDc1LCAweDc0LCAweDczLCAweDYzLCAweDY4LCAweDY1LFxuICAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDc1LCAweDY1LCAweDc1LCAweDczLCAweDZiLCAweDYxLCAweDcyLCAweDYxLFxuICAweDY3LCAweDYxLCAweDY1LCAweDY5LCAweDZjLCAweDY3LCAweDY1LCAweDczLCAweDc2LCAweDY1LCAweDZlLCAweDczLCAweDZiLFxuICAweDYxLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDczLCAweDYxLFxuICAweDZhLCAweDY1LCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDYyLFxuICAweDYxLCAweDZhLCAweDZmLCAweDZkLCAweGMzLCAweGE5LCAweDc4LCAweDY5LCAweDYzLCAweDZmLCAweDcwLCAweGMzLCAweGExLFxuICAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDY5LCAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDZmLCAweDYzLCAweDc0LCAweDc1LCAweDYyLCAweDcyLCAweDY1LCAweDY0LFxuICAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDY0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDYxLCAweDZkLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDc2LCAweGMzLCAweGE5LCAweDczLCAweDY3LCAweDcyLCAweDYxLCAweDYzLFxuICAweDY5LCAweDYxLCAweDczLCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDczLCAweDYzLCAweDYxLFxuICAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZlLFxuICAweGMzLCAweGJhLCAweDZkLCAweDY1LCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDc1LCAweDY1LCAweDcyLCAweDY0LCAweDZmLFxuICAweDZkLCAweGMzLCAweGJhLCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZkLCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLFxuICAweDZmLCAweDZmLCAweDY2LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDczLCAweDYxLCAweDZjLCAweDY3LCAweDc1LCAweDZlLFxuICAweDZmLCAweDczLCAweDcwLCAweDYxLCAweGMzLCAweGFkLCAweDczLCAweDY1LCAweDczLCAweDY1LCAweDZhLCAweDY1LCAweDZkLFxuICAweDcwLCAweDZjLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDYxLCAweDY0LCAweDY1LFxuICAweDZkLCAweGMzLCAweGExLCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDY0LCAweDZmLCAweDYxLCAweDY3LFxuICAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDcwLFxuICAweDZmLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDY4LCAweDZmLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDczLFxuICAweDczLCAweDY1LCAweDc2LCAweDY5LCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDcyLFxuICAweDZmLCAweGMzLCAweGJhLCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDZmLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDczLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDZmLCAweDYzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc1LCAweDcyLCAweDYxLCAweDZkLCAweDc1LCAweDZhLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY0LCAweDYxLCAweDYxLCAweDZlLCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZmLCAweDY1LCAweDZkLFxuICAweDYyLCAweDYxLCAweDcyLCAweDY3LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDY0LCAweDZmLCAweDY3LFxuICAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLFxuICAweDZkLCAweDY1LCAweDZhLCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDY2LCAweDY1LCAweDYyLCAweDcyLCAweDY1LCAweDcyLFxuICAweDZmLCAweDY0LCAweDY5LCAweDczLCAweDY1LCAweGMzLCAweGIxLCAweDZmLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDczLFxuICAweDZkLCAweDZmLCAweDYzLCAweGMzLCAweGIzLCAweDY0LCAweDY5LCAweDY3LCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDY0LCAweDYxLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDY2LCAweDYxLCAweDZkLFxuICAweDY5LCAweDZjLCAweDY5LCAweDYxLCAweDYxLCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDZmLCAweDcwLCAweDY1LFxuICAweDcyLCAweDZkLCAweDY5LCAweDc0LCAweDY1LCAweDY3LCAweDc1LCAweDYxLCAweDcyLCAweDY0LCAweDYxLCAweDcyLCAweDYxLFxuICAweDZjLCAweDY3LCAweDc1LCAweDZlLCAweDYxLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDZmLCAweDczLFxuICAweDYxLCAweDZjLCAweDY3LCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY0LFxuICAweDZmLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDYxLCAweDczLCAweDc0LCAweGMzLCAweGFkLCAweDc0LCAweDc1LFxuICAweDZjLCAweDZmLCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDYzLCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDY3LCAweDc1LFxuICAweDZlLCAweDY0LCAweDZmLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZhLCAweDZmLCAweDY2LCAweDcyLCAweDYxLFxuICAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDZkLCAweDY5LCAweDZlLCAweDc1LCAweDc0LCAweDZmLCAweDczLCAweDczLCAweDY1LFxuICAweDY3LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDZkLCAweDZmLCAweDczLCAweDY1LFxuICAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDczLCAweDZkLCAweGMzLCAweGExLCAweDZjLCAweDYxLCAweDY3LCAweDYxLFxuICAweDczLCAweDY1LCAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDc0LFxuICAweDYxLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLFxuICAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDY3LCAweDYxLCAweDcyLCAweDYzLFxuICAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LCAweDYzLCAweDc1LFxuICAweDYxLCAweDY0LCAweDZmLCAweDcyLCAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDZlLFxuICAweDYzLCAweDZjLCAweDc1LCAweDczLCAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDZkLFxuICAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDYxLCAweDY4LCAweDZmLCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDczLFxuICAweDZkLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDcwLCAweDZmLCAweDY0LCAweDcyLCAweGMzLCAweGFkLFxuICAweDYxLCAweDZkLCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDZlLCAweDYxLCAweGMzLCAweGJhLCAweDZjLCAweDc0LCAweDY5LFxuICAweDZkLCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZkLCAweDZmLCAweDczLCAweDZmLCAweDY2LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDc0LCAweDYxLCAweDZkLCAweDYyLCAweDY5LCAweDY1LCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweGMzLCAweGJhLCAweDZlLCAweDczLCAweDYxLCAweDZjLCAweDc1LCAweDY0LCAweDZmLCAweDczLCAweDcwLCAweDZmLFxuICAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDczLCAweDZkLCAweDY1LCAweDZhLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDcwLFxuICAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY1LFxuICAweDczLCAweDczLCAweDY4LCAweDZmLCAweDZkLCAweDY1LCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDY1LCAweDYzLFxuICAweDc1LCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDYxLFxuICAweDY5LCAweDY3LCAweDZlLCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDYzLCAweDYxLFxuICAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDc5LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDZjLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDY1LFxuICAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY1LFxuICAweDc4LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDY5LFxuICAweDc0LCAweDY1LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY5LCAweDZjLFxuICAweDY5LCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDc5LFxuICAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDcyLFxuICAweDY5LCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDczLCAweDdhLCAweDJkLFxuICAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNhLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLFxuICAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDZkLCAweDZmLCAweDc2LFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYzLCAweDczLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDcyLCAweDY1LFxuICAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDY2LCAweDY1LCAweDY1LCAweDY0LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDcyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDY0LFxuICAweDY5LCAweDczLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDZmLCAweDYzLFxuICAweDZmLCAweDZjLCAweDYxLCAweDc1LCAweDY0LCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY1LCAweDc0LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY5LCAweDc0LCAweDc5LFxuICAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDZlLCAweDc5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYyLFxuICAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDZkLCAweDYxLCAweDY3LCAweDYxLFxuICAweDdhLCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDc1LFxuICAweDcyLCAweDY1LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDNjLCAweDczLCAweDc0LFxuICAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LFxuICAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDYyLCAweDY1LFxuICAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZmLCAweDcyLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLFxuICAweDY0LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LFxuICAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDRjLFxuICAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc0LCAweDcyLCAweDYxLFxuICAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDY0LFxuICAweDZkLCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZjLCAweDc5LCAweDY2LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY2LCAweDY1LCAweDczLCAweDc0LFxuICAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDZjLFxuICAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLFxuICAweDY1LCAweDc0LCAweDY0LCAweDcyLCAweDZmLCAweDcwLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDcwLCAweDcyLCAweDYxLFxuICAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDYxLCAweDcyLCAweDcyLCAweDY5LFxuICAweDYxLCAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcwLCAweDcyLFxuICAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDczLCAweDZlLCAweDY1LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDczLCAweDYxLCAweDZlLCAweDYxLCAweDZjLFxuICAweDc5LCAweDczLCAweDY5LCAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDYyLFxuICAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDcwLCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLFxuICAweDczLCAweDY1LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDY3LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDcyLCAweDYzLCAweDY4LFxuICAweDY1LCAweDZkLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDczLCAweDY1LCAweDcwLCAweDYxLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDYzLFxuICAweDZmLCAweDZlLCAweDY2LCAweDZjLCAweDY5LCAweDYzLCAweDc0LCAweDY4LCAweDYxLCAweDcyLCAweDY0LCAweDc3LCAweDYxLFxuICAweDcyLCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY0LCAweDY1LCAweDZjLFxuICAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDZmLCAweDYyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDNkLCAweDIwLCAweDY2LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDNiLCAweDY2LCAweDZmLCAweDcyLCAweDI4LCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDYxLCAweDYzLFxuICAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDc0LFxuICAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDc0LCAweDc5LCAweDYxLCAweDY5LCAweDcyLCAweDYzLCAweDcyLCAweDYxLCAweDY2LCAweDc0LCAweDY1LFxuICAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LFxuICAweDY4LCAweDZmLCAweDczLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDczLCAweDY1LCAweDYxLCAweDcwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZlLCAweDY1LCAweDcyLFxuICAweDczLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDY0LCAweDYxLCAweDc1LCAweDY3LFxuICAweDY4LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDIyLCAweDIwLCAweDYzLFxuICAweDc1LCAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDY5LFxuICAweDY1LCAweDczLCAweDJmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDYxLCAweDczLCAweDczLFxuICAweDY1LCAweDZkLCAweDYyLCAweDZjLCAweDc5LCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDY2LCAweDc1LCAweDZjLFxuICAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDYzLCAweDcyLFxuICAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDY3LCAweDY5LCAweDJkLCAweDYyLCAweDY5LCAweDZlLFxuICAweDJmLCAweDcwLCAweDc1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDcxLCAweDc1LFxuICAweDY5LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLFxuICAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LFxuICAweDY1LCAweDczLCAweDYxLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDY5LCAweDYzLCAweDY1LCAweDc4LCAweDY1LFxuICAweDcyLCAweDYzLCAweDY5LCAweDczLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDY5LCAweDZlLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDRkLCAweDYxLFxuICAweDY3LCAweDYxLCAweDdhLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDZmLCAweDc0LCAweDc0LFxuICAweDZmLCAweDZkLCAweDIyLCAweDNlLCAweDZmLCAweDYyLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDNhLFxuICAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDUzLCAweDZmLCAweDY2LFxuICAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDY1LCAweDZlLFxuICAweDY3LCAweDc0LCAweDY4LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDZjLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDZjLCAweDc5LCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDZmLCAweDZlLCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LFxuICAweDY1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDcwLCAweDcyLCAweDZmLFxuICAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDc0LCAweDYxLCAweDY3LCAweDY1LFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYyLCAweDczLCAweDZmLCAweDZjLFxuICAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDZjLCAweDY1LCAweDc2LCAweDYxLCAweDZlLCAweDc0LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIyLFxuICAweDIwLCAweDc2LCAweDY5LCAweDZmLCAweDZjLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDc5LCAweDc3LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDZlLCAweDY1LCAweDY2LCAweDY5LCAweDc0LCAweDczLCAweDZjLFxuICAweDYxLCAweDc1LCAweDZlLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDZjLCAweDc5LCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY2LCAweDZmLCAweDZjLFxuICAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDZkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLCAweDY1LFxuICAweDYyLCAweDc1LCAweDZjLCAweDZjLCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDI0LCAweDI4LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDI5LFxuICAweDJlLCAweDcyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDNlLCAweDNjLCAweDc0LCAweDcyLFxuICAweDNlLCAweDNjLCAweDc0LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDcyLFxuICAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDYxLFxuICAweDc0LCAweDY1LCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDc1LCAweDZjLFxuICAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDQ4LCAweDZmLCAweDZkLCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LFxuICAweDc0LCAweDY1LCAweDczLCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDczLCAweDYxLCAweDZjLFxuICAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDcyLCAweDY1LCAweDZjLFxuICAweDc5LCAweDZkLCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDZkLCAweDY1LCAweDczLCAweDczLFxuICAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDYxLFxuICAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIyLCAweDNlLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc3LCAweDY4LFxuICAweDYxLCAweDc0LCAweDc2LCAweDY5LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDU3LCAweDY1LCAweDczLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDRjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDQ0LCAweDZmLFxuICAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDc0LFxuICAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDZkLCAweDY1LCAweDYxLCAweDczLFxuICAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDIwLCAweDNkLCAweDIwLCAweDc2LFxuICAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LFxuICAweDY1LCAweDY0LCAweDc2LCAweDY5LCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY5LCAweDYxLCAweDZlLCAweDZmLCAweDcyLFxuICAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDZlLCAweDY1LCAweDY0LFxuICAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDUyLCAweDY1LFxuICAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDczLCAweDYxLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDYyLCAweDY5LCAweDcyLCAweDc0LCAweDY4LCAweDY0LCAweDYxLCAweDc5LCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDc5LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LFxuICAweDYxLCAweDZjLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDc5LFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDUwLCAweDY1LCAweDcyLCAweDczLCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDYxLFxuICAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDY1LCAweDc2LCAweDY1LFxuICAweDY0LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDZkLCAweDYxLCAweDYzLCAweDY4LFxuICAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDMyLCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDZiLFxuICAweDY1LCAweDc5LCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDY2LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDY0LFxuICAweDZjLCAweDc5LCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDZkLFxuICAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDcwLCAweDYxLFxuICAweDZiLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDIyLFxuICAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLCAweDZjLCAweDYxLFxuICAweDYyLCAweDY1LCAweDZjLCAweDNlLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYyLFxuICAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDY1LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDcyLCAweDcwLCAweDZjLCAweDc1LFxuICAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDJmLCAweDRjLCAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDQ4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDIyLCAweDIwLCAweDI4LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY3LCAweDcyLFxuICAweDYxLCAweDY0LCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLFxuICAweDBhLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZkLCAweDYxLCAweDZjLCAweDYxLFxuICAweDc5LCAweDczLCAweDY5LCAweDYxLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDZkLFxuICAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDNiLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNhLCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDc1LCAweDZjLCAweDY1LCAweDYzLCAweDY4LCAweDYxLFxuICAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDYzLCAweDYxLCAweDc0LCAweDY4LCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDcwLCAweDYxLCAweDc0LCAweDc0LCAweDY1LFxuICAweDcyLCAweDZlLCAweDczLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIwLCAweDIzLCAweDY3LCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LFxuICAweDczLCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLCAweDc1LCAweDZjLFxuICAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDYzLFxuICAweDY5LCAweDc0LCAweDY5LCAweDdhLCAweDY1LCAweDZlLCAweDczLCAweDYzLCAweDZjLCAweDZmLCAweDc0LCAweDY4LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc3LCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDZjLCAweDY5LFxuICAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNlLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDZiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDYzLCAweDYxLCAweDc0LCAweDYzLCAweDY4LCAweDI4LCAweDY1LCAweDI5LCAweDczLCAweDZmLCAweDc1LCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDZlLCAweDRkLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDZjLCAweDIwLCAweDZkLFxuICAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDc0LCAweDYzLCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDczLFxuICAweDY1LCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDJlLCAweDczLCAweDcwLCAweDZjLCAweDY5LCAweDc0LCAweDI4LCAweDIyLFxuICAweDZjLCAweDY5LCAweDdhLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDRmLCAweDYzLCAweDc0LCAweDZmLCAweDYyLFxuICAweDY1LCAweDcyLCAweDIwLCAweDI5LCAweDdiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZkLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDJkLCAweDJkLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDBhLFxuICAweDBhLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDY5LFxuICAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDczLFxuICAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDUyLCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDY0LCAweDIwLCAweDc3LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc5LFxuICAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDZhLCAweDc1LCAweDY0LCAweDY3LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDJlLCAweDJlLCAweDYzLFxuICAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDIwLCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDY1LCAweDY2LCAweDYxLFxuICAweDc1LCAweDZjLCAweDc0LCAweDIyLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBkLCAweDBhLCAweDY1LFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDZmLCAweDc0LCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDc5LCAweDJlLCAweDIwLCAweDQ5LCAweDUzLCAweDQyLCAweDRlLCAweDIwLCAweDMwLFxuICAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDYzLCAweDY1LCAweDJkLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJkLCAweDIyLCAweDIwLFxuICAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY1LCAweDcyLFxuICAweDczLCAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDZkLFxuICAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDQ5LCAweDc0LCAweDYxLFxuICAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDZmLCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDYxLFxuICAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDZjLCAweDc5LCAweDNhLCAweDIwLCAweDI3LCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LCAweDYzLCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDQyLCAweDcyLCAweDY5LCAweDc0LFxuICAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDc5LCAweDQ2LFxuICAweDYxLCAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZlLCAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDZmLFxuICAweDc1LCAweDczLCAweDc2LCAweDY1LCAweDY4LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZlLFxuICAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDczLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLFxuICAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LFxuICAweDY0LCAweDNkLCAweDIyLCAweDU3LCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDIwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDVmLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDYxLCAweDYzLCAweDc5LCAweDczLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDY2LFxuICAweDZjLCAweDY1LCAweDc4LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDQzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLFxuICAweDcyLCAweDc5LCAweDZjLCAweDYxLCAweDc3LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDZjLCAweDYxLCAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDZkLCAweDYxLCAweDc4LCAweDY5LFxuICAweDZkLCAweDc1LCAweDZkLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLCAweDUzLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LFxuICAweDczLCAweDY4LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc0LCAweDZmLCAweDZlLCAweDYzLCAweDc1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDYxLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY4LCAweDYxLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDczLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LFxuICAweDczLCAweDJmLCAweDJmLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDZmLCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDYxLCAweDZjLFxuICAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDc2LCAweDYxLCAweDZjLCAweDc3LCAweDY5LCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDYxLCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDY1LFxuICAweDczLCAweDUzLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDYxLCAweDczLFxuICAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLFxuICAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDI2LCAweDY4LCAweDY1LCAweDZjLCAweDZjLCAweDY5LFxuICAweDcwLCAweDNiLCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDczLFxuICAweDY5LCAweDdhLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDRlLCAweDYxLCAweDZkLCAweDY1LFxuICAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIyLCAweDIwLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDNlLCAweDczLCAweDY1LFxuICAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDZmLCAweDcwLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDZmLCAweDY5LCAweDczLCAweDZjLFxuICAweDY5LCAweDZlLCAweDZiLCAweDczLCAweDIyLCAweDNlLCAweDBhLCAweDA5LCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLFxuICAweDY1LCAweDNlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDYxLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY0LCAweDYxLCAweDc5LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDZjLFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLFxuICAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY0LCAweDY1LFxuICAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDYxLFxuICAweDZjLCAweDNkLCAweDIyLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDIyLCAweDQ1LCAweDczLCAweDcwLCAweDYxLFxuICAweGMzLCAweGIxLCAweDZmLCAweDZjLCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDczLFxuICAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDY1LCAweDcyLCAweDI2LCAweDcxLCAweDc1LCAweDZmLFxuICAweDc0LCAweDNiLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc5LCAweDZkLFxuICAweDcwLCAweDc0LCAweDZmLCAweDZkLCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LFxuICAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIyLCAweDNlLCAweDNjLCAweDcwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LFxuICAweDJlLCAweDZjLCAweDY1LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDIwLCAweDYyLCAweDZmLCAweDcyLFxuICAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDJlLCAweDBhLCAweDBhLCAweDUzLCAweDZmLCAweDZkLFxuICAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDY5LFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYyLCAweDc1LCAweDZjLCAweDY3LCAweDYxLCAweDcyLCAweDY5LCAweDYxLFxuICAweDJlLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDI4LCAweDI5LCAweDNiLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDY1LCAweDY0LCAweDQ3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDQ1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDczLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDczLCAweDRmLCAweDcyLCAweDY5LCAweDY3LFxuICAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDIyLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLCAweDNlLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LFxuICAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDYxLCAweDIwLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDQ0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDIwLCAweDBhLCAweDBhLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDc5LCAweDZmLFxuICAweDc1LCAweDcyLCAweDczLCAweDY1LCAweDZjLCAweDY2LCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LFxuICAweDIwLCAweDZkLCAweDY5LCAweDYzLCAweDY4LCAweDY5LCAweDY3LCAweDYxLCAweDZlLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDcwLFxuICAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDY0LCAweDcyLCAweDY5LCAweDZlLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY2LCAweDYxLCAweDYzLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LFxuICAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDcyLCAweDczLCAweDUyLCAweDc1LCAweDczLCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDIwLCAweDY3LCAweDY1LFxuICAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDJkLCAweDM4LCAweDM4LCAweDM1LCAweDM5LCAweDJkLCAweDMxLFxuICAweDIyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDYxLCAweDZkLCAweDY5LFxuICAweDZjLCAweDY5LCAweDYxLCAweDcyLCAweDIwLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDZkLFxuICAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLCAweDMwLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDczLCAweDJkLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLFxuICAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LFxuICAweDc0LCAweDY4LCAweDIwLCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDZlLFxuICAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDczLCAweDYxLCAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDY5LFxuICAweDYzLCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDY2LCAweDYxLFxuICAweDc1LCAweDZjLCAweDc0LCAweDJlLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LCAweDY0LCAweDcwLFxuICAweDYxLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY3LCAweDZjLCAweDZmLCAweDczLCAweDczLCAweDYxLFxuICAweDcyLCAweDc5LCAweDBhLCAweDBhLCAweDQxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY3LCAweDc1LCAweDY5LFxuICAweDY0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDc0LCAweDY0LFxuICAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLFxuICAweDY1LCAweDIyLCAweDNlLCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY5LFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDczLCAweDczLCAweDYzLCAweDZmLCAweDc0LCAweDc0LCAweDY5LCAweDczLFxuICAweDY4LCAweDZhLCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZkLCAweDYxLCAweDZhLCAweDZmLFxuICAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDc3LCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDc0LCAweDczLCAweDJlLCAweDYzLFxuICAweDZjLCAweDY5LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDNjLCAweDY4LCAweDY1LFxuICAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDA5LCAweDYxLCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LFxuICAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDNiLCAweDc0LCAweDZmLCAweDUzLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDJmLFxuICAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDNlLCAweDZmLCAweDZiLCAweDZjLCAweDYxLCAweDY4LCAweDZmLCAweDZkLFxuICAweDYxLCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDc2LCAweDY1LFxuICAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDMwLCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDY4LFxuICAweDZmLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDUyLCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLFxuICAweDYzLCAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDI4LCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDJlLCAweDIwLCAweDQxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDcwLCAweDcyLFxuICAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLFxuICAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDZmLCAweDY5LCAweDY0LCAweDIyLCAweDcxLCAweDc1LCAweDY5LCAweDYzLFxuICAweDZiLCAweDZjLCAweDc5LCAweDIwLCAweDZkLCAweDY1LCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LFxuICAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDNiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDNiLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDIwLCAweDY4LCAweDY1LFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDYxLCAweDZjLFxuICAweDJjLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDY1LCAweDYzLFxuICAweDZiLCAweDY1LCAweDY0LCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDZkLCAweDYxLFxuICAweDY3LCAweDZlLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLFxuICAweDY4LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDYzLCAweDYxLCAweDczLCAweDc0LCAweDJlLCAweDIwLCAweDU3LCAweDY4LFxuICAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDc1LCAweDcyLCAweDczLCAweDY0LCAweDYxLCAweDc5LCAweDY0LFxuICAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDY1LCAweDI2LCAweDY1LCAweDYxLCAweDYzLCAweDc1LCAweDc0LFxuICAweDY1LCAweDNiLCAweDY4LCAweDYxLCAweDczLCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDc2LCAweDYxLFxuICAweDZjLCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDRmLCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDYzLCAweDZmLFxuICAweDZjLCAweDZmLCAweDcyLCAweDYxLCAweDY0LCAweDZmLCAweDRmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDIyLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDYyLCAweDY1LCAweDZjLCAweDZjLCAweDNjLCAweDIxLCAweDJkLCAweDJkLFxuICAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDNjLFxuICAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDBkLCAweDBhLCAweDVmLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDcwLFxuICAweDczLCAweDdjLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDJjLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDIwLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLFxuICAweDU3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLCAweDIwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDNjLCAweDYyLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDZjLCAweDY1LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LFxuICAweDNiLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIwLCAweDQzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDNjLFxuICAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LFxuICAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZkLCAweDYxLCAweDcyLFxuICAweDczLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDZjLCAweDc5LCAweDI5LCAweDJlLCAweDBhLCAweDBhLCAweDU0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDYxLCAweDc4LCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDc5LCAweDZkLCAweDc1LFxuICAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDBhLCAweDIyLCAweDIwLCAweDY0LCAweDYxLCAweDc0LCAweDYxLCAweDJkLCAweDczLCAweDcyLCAweDc0LCAweDc1LCAweDY3LFxuICAweDc1LCAweGMzLCAweGFhLCAweDczLCAweDczLCAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDU0LCAweDZmLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLFxuICAweDBkLCAweDBhLCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDcyLCAweDZlLCAweDY1LCAweDc5LCAweDY1LCAweDZkLCAweDcwLFxuICAweDY4LCAweDYxLCAweDczLCAweDY5LCAweDczLCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDcyLCAweDczLFxuICAweDY2LCAweDYxLCAweDZlLCAweDYzLCAweDc5LCAweDYyLCAweDZmLCAweDc4LCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LFxuICAweDI3LCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDZjLCAweDY0LCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDYzLCAweDY4LFxuICAweDY1LCAweDYzLCAweDZiLCAweDY1LCAweDY0LCAweDNkLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDcwLCAweDc4LCAweDNiLCAweDY2LFxuICAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDIwLCAweDUwLCAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDZhLFxuICAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LFxuICAweDY1LCAweDY0LCAweDc2LCAweDYxLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDZmLFxuICAweDZkLCAweDcwLCAweDczLCAweDZmLCAweDZlLCAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LFxuICAweDYxLCAweDZjLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDMwLCAweDYzLCAweDY4LFxuICAweDY1LCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDc0LCAweDYyLCAweDZmLCAweDY0LCAweDc5LFxuICAweDNlLCAweDNjLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIwLCAweDQzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LCAweDBhLFxuICAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLFxuICAweDY1LCAweDIwLCAweDNjLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDZlLFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDIwLCAweDRmLCAweDYzLCAweDc0LCAweDZmLFxuICAweDYyLCAweDY1LCAweDcyLCAweDc3LCAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDY1LCAweDc4LFxuICAweDcwLCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDZmLCAweDcwLCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLFxuICAweDY0LCAweDczLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDZlLCAweDc1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDIwLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDZlLCAweDUzLCAweDc1LCAweDYyLFxuICAweDZkLCAweDY5LCAweDc0LCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDYzLCAweDZmLFxuICAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDczLCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LFxuICAweDYzLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDYzLCAweDc0LCAweDJlLCAweDZjLCAweDZmLCAweDY3LCAweDY3LCAweDY1LCAweDY0LCAweDQ5LCAweDZlLCAweDYxLFxuICAweDY0LCAweDc2LCAweDY5LCAweDczLCAweDZmLCAweDcyLCAweDc5LCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY5LCAweDZlLFxuICAweDY3LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDczLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDI5LCAweDczLCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLFxuICAweDcwLCAweDYxLCAweDYzLCAweDZiLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLFxuICAweDYyLCAweDZmLCAweDc4LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDczLCAweDcwLCAweDcyLFxuICAweDY1LCAweDY3LCAweDZlLCAweDYxLCAweDZlLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDZmLCAweDcyLCAweDcyLCAweDZmLFxuICAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLFxuICAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDZhLCAweDYxLCAweDcwLCAweDYxLCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDYzLFxuICAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLFxuICAweDIyLCAweDNlLCAweDY3LCAweDYxLCAweDZkLCAweDYyLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDc1LCAweDYzLFxuICAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDIwLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDZmLFxuICAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLFxuICAweDcwLCAweDNhLCAweDMxLCAweDcwLCAweDc4LCAweDIwLCAweDJlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDMyLCAweDZjLCAweDYxLCAweDdhLCAweDc5LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDZlLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLFxuICAweDNjLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDc0LCAweDY0LCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNhLCAweDMyLCAweDJmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDYzLCAweDZmLFxuICAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDNlLCAweDBhLCAweDI4LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweDI5LCAweDI4LCAweGU3LCAweGI5LFxuICAweDgxLCAweGU5LCAweGFiLCAweDk0LCAweDI5LCAweDY4LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDczLCAweDZiLCAweDY5LFxuICAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDZmLCAweDcyLCAweDZmLCAweDZkLCAweGMzLCAweGEyLFxuICAweDZlLCAweGM0LCAweDgzLCAweDc0LCAweGMzLCAweGJjLCAweDcyLCAweDZiLCAweGMzLCAweGE3LCAweDY1LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweDc0LCAweDYxLCAweDZkLCAweDYyLCAweDY5LCAweGMzLCAweGE5LFxuICAweDZlLCAweDZlLCAweDZmLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDczLCAweDZkLCAweDY1LCAweDZlLCAweDczLFxuICAweDYxLCAweDZhLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDczLCAweDY0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDY4LCAweDZmLCAweDczLCAweDZlLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDZmLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDczLFxuICAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDYxLCAweDY3LCAweDZmLCAweDYyLCAweDY5LCAweDY1LFxuICAweDcyLCAweDZlLCAweDZmLCAweDY1LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDYxLCAweDczLCAweDYxLCAweDZlLFxuICAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDc2LCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDcwLFxuICAweDc1LCAweGMzLCAweGE5LCAweDczLCAweDY0LCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDczLCAweDcwLFxuICAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLFxuICAweDc0LCAweDZmLCAweDcwLCAweGMzLCAweGJhLCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDczLFxuICAweDZmLCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDZmLFxuICAweDZlLCAweDY1LCAweDczLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcwLCAweDcyLFxuICAweDY1LCAweDY3LCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZmLFxuICAweDcyLCAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDczLCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDYyLFxuICAweDZjLCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDY3LCAweDZmLCAweDZlLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDczLCAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY5LCAweDcyLCAweDZkLCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDYxLCAweDZkLCAweGMzLCAweGE5LCAweDcyLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc2LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDY1LFxuICAweDY0LCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY1LFxuICAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDYxLCAweDcyLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDcyLFxuICAweDZmLCAweDcwLCAweDYxLCAweDZjLCAweDYxLCAweDYyLCAweDcyLCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweGMzLCAweGE5LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY1LFxuICAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZkLCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLFxuICAweDZmLCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDYzLCAweGMzLCAweGIzLFxuICAweDcyLCAweDY0LCAweDZmLCAweDYyLCAweDYxLCAweDdhLCAweDYxLCAweDcyLCAweDYxLCAweDY3LCAweDZmLCAweDdhLCAweDYxLFxuICAweDcwLCAweGMzLCAweGExLCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLFxuICAweDZjLCAweDY1LCAweDczLCAweDYyLCAweDZjLCAweDZmLCAweDcxLCAweDc1LCAweDY1LCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDczLCAweDc0LCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYxLCAweDZjLCAweDcxLCAweDc1LCAweDY5LCAweDZjLCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLFxuICAweDYzLCAweDY5LCAweDYxLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDc0LCAweDYxLCAweDY1LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDZmLCAweDczLCAweDcwLCAweGMzLCAweGJhLFxuICAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDc0LCAweDY5LCAweDc2LCAweDZmLFxuICAweDYxLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLFxuICAweDY0LCAweDZmLCAweDcyLCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDYxLCAweDczLCAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc2LCAweDZmLCAweDczLCAweDczLCAweDc1LCAweDcwLCAweDY1LFxuICAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc5LCAweDZmLCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDYxLFxuICAweDZjLCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDY5LCAweDYxLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweGMzLCAweGJhLCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDZmLCAweDczLCAweDY4LCAweDYxLCAweDYzLFxuICAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDZmLCAweDYxLCAweDcxLCAweDc1LCAweDY1LCAweDZjLCAweDZjLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY2LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDZlLCAweDY0LCAweDZmLCAweDYxLCAweDZkLCAweDYyLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY2LCAweDYxLFxuICAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDYxLFxuICAweDczLCAweDYzLCAweDZjLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDYzLFxuICAweDY1LCAweDczLCAweDZmLCAweDczLCAweDYyLCAweDYxLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcwLFxuICAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDcwLCAweDc1LCAweDYyLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDZmLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDZhLCAweGMzLCAweGIzLCAweDc2LCAweDY1LFxuICAweDZlLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDc0LCAweDZmLCAweDc0LCAweGMzLFxuICAweGE5LCAweDYzLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDZhLCAweDc1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY3LCAweGMzLCAweGFkLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDYyLFxuICAweDYxLCAweDZhLCAweDYxLCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDYxLCAweDczLCAweDcyLFxuICAweDY1LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LCAweDdhLFxuICAweDYxLCAweDcyLCAweDYyLCAweDZmLCAweDZjLCAweDY1LCAweDc0LCAweGMzLCAweGFkLCAweDZlLCAweDczLCAweDYxLCAweDZjLFxuICAweDc2LCAweDYxLCAweDY0LCAweDZmLCAweDcyLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDYxLFxuICAweDc0LCAweDcyLCAweDYxLCAweDYyLCAweDYxLCAweDZhLCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDZmLCAweDczLCAweDZlLCAweDY1LCAweDY3LCAweDZmLCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDZjLCAweDY5LFxuICAweDYyLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY0LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDY1LFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDcyLCAweGMzLCAweGIzLFxuICAweDc4LCAweDY5LCAweDZkLCAweDZmLCAweDYxLCAweDZjLCAweDZkLCAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDYxLFxuICAweDZlLCAweDY5LCAweDZkLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDcxLCAweDc1LCAweDY5LCAweGMzLCAweGE5LCAweDZlLFxuICAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDdhLCAweGMzLCAweGIzLCAweDZlLCAweDczLCAweDY1LCAweDYzLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYyLCAweDc1LCAweDczLCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDZmLFxuICAweDZmLCAweDcwLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDcyLFxuICAweDY5LCAweDZmLCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDZmLCAweDc0LCAweDZmLFxuICAweDY0LCAweDYxLCAweDc2LCAweGMzLCAweGFkLCAweDYxLCAweDY3LCAweDYxLCAweDZjLCAweDY1LCAweDcyLCAweGMzLCAweGFkLFxuICAweDYxLCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY5LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDY5LFxuICAweDYzLCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDYxLCAweDYxLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LFxuICAweDZmLCAweDczLCAweDYzLCAweDcyLCAweGMzLCAweGFkLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDY0LCAweGMzLCAweGIzLFxuICAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLFxuICAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDcyLCAweGMzLCAweGExLCAweDZlLCAweDcwLCAweDY1LCAweDcyLCAweGMzLCAweGFkLFxuICAweDZmLCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDY5LCAweDc0LCAweDYxLCAweDZkLCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDcwLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweGMzLCAweGIxLFxuICAweDZmLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDYyLCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDcyLCAweDY5LCAweDYyLFxuICAweDc1LCAweDZlLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDY1LCAweDYzLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDYxLCAweDZlLCAweDYxLCAweDcyLCAweDY5LFxuICAweDYxLCAweDczLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDY0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDcyLCAweDYzLCAweDYxLFxuICAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweGMzLCAweGE5LCAweDYzLCAweDZlLFxuICAweDY5LCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDYyLCAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDc2LCAweDY5LFxuICAweDc2LCAweDY5LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDdhLCAweDYxLFxuICAweDczLCAweDYxLCAweDY0LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY2LCAweDc1LCAweDZlLCAweDYzLFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZhLCAweDZmLCAweDczLCAweDY0LFxuICAweDY5LCAweDY2LCAweGMzLCAweGFkLCAweDYzLCAweDY5LCAweDZjLCAweDYzLCAweDY5LCAweDc1LCAweDY0LCAweDYxLCAweDY0LFxuICAweDY1LCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDY3LCAweDc1LCAweDYxLCAweDczLCAweDYxLCAweDc2LCAweDYxLFxuICAweDZlLCAweDdhLCAweDYxLCAweDY0LCAweDYxLCAweDc0LCAweGMzLCAweGE5LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDczLCAweGMzLCAweGExLCAweDZlLCAweDYzLFxuICAweDY4LCAweDY1LCAweDdhLCAweDYzLCAweDYxLCAweDZkLCAweDcwLCAweDYxLCAweGMzLCAweGIxLCAweDYxLCAweDczLCAweDZmLFxuICAweDY2LCAweDc0LCAweDZmLCAweDZlLCAweDY5LCAweDYzLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDc0LCAweDYxLFxuICAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDY1LCAweDYzLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDZkLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDY2LFxuICAweDYxLCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDYxLCAweDY0LCAweDYzLCAweDcyLCAweGMzLCAweGE5LCAweDY0LCAweDY5LFxuICAweDc0LCAweDZmLCAweDY0LCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDcwLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDY1LCAweDY3LCAweDc1LCAweDZlLCAweDY0LCAweDZmLCAweDczLCAweDcwLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweGMzLCAweGIxLCAweDYxLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLFxuICAweDhjLCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDhiLFxuICAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLFxuICAweDk1LCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI1LCAweGQxLCAweDg1LCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGI5LFxuICAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLFxuICAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQxLCAweDgzLCAweGQwLCAweGI0LFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGI1LFxuICAweGQwLCAweGIxLCAweGQxLCAweDhmLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGI0LFxuICAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQxLCAweDgyLCAweGQxLCAweDg0LCAweGQwLFxuICAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQxLCAweDgyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJjLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQxLCAweDhlLCAweGQwLCAweGJiLCAweGQwLCAweGI4LFxuICAweGQxLCAweDg4LCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLFxuICAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGI1LFxuICAweGQwLCAweGI5LCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLFxuICAweGI4LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGIxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQxLCAweDg1LCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQxLCAweDhmLCAweGQwLCAweGI0LCAweGQwLCAweGIyLCAweGQxLCAweDgzLCAweGQxLCAweDg1LCAweGQxLCAweDgxLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI4LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGIxLCAweGQxLCAweDhmLCAweGQxLFxuICAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGI0LFxuICAweGQwLCAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDhkLCAweGQxLFxuICAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQxLCAweDgxLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgyLFxuICAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDhiLCAweGQxLCAweDg2LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGIyLFxuICAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDhjLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGI1LCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQxLCAweDhiLCAweGQxLCAweDgyLCAweGQwLCAweGI1LFxuICAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJmLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg2LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI0LCAweGQxLCAweDhiLCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDhlLCAweGQwLCAweGJjLFxuICAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLFxuICAweGIzLCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweGI4LCAweGQwLCAweGI0LFxuICAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLFxuICAweGQwLCAweGIwLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDhlLCAweGQwLCAweGJkLCAweGQxLCAweDhmLFxuICAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhjLCAweGQwLCAweDk1LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQwLCAweGJkLFxuICAweGQwLCAweGIwLCAweGQxLCAweDg4LCAweGQwLCAweGI4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGFjLCAweGQ5LCAweDg1LFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LCAweGQ4LCAweGI1LCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGEyLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGI1LCAweGQ5LCAweDgxLCAweGQ4LFxuICAweGFkLCAweGQ4LCAweGE5LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDg2LCAweGQ4LCAweGI0LCAweGQ4LCAweGE4LCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGFkLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ4LCAweGEzLCAweGQ5LCAweDgzLCAweGQ4LCAweGFiLFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGFlLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFkLCAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ4LFxuICAweGJhLCAweGQ4LCAweGI3LCAweGQ4LCAweGFhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFkLCAweGQ4LFxuICAweGE5LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI3LCAweGQ4LCAweGE4LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ4LFxuICAweGI0LCAweGQ5LCAweDgzLCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLFxuICAweGQ5LCAweDg2LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGI0LCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGIzLFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGI0LCAweGQ5LCAweDhhLCAweGQ4LCAweGI3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIwLCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDg2LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGIxLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ4LCAweGE5LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDgxLCAweGQ4LCAweGE5LCAweGQ5LCAweDhhLCAweGQ5LCAweDgyLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGIyLCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGEzLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ4LCAweGFmLCAweGQ5LCAweDgyLCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGI3LCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDgyLCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGFjLFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LCAweGFlLCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDg5LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LFxuICAweGQ4LCAweGFkLCAweGQ4LCAweGFiLCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LCAweGQ4LCAweGI2LCAweGQ4LFxuICAweGE4LCAweGQ4LCAweGI0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ4LCAweGFjLFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFlLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDg4LCAweGQ5LCAweDg2LCAweGQ4LCAweGEzLCAweGQ5LCAweDhhLCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LCAweDgxLCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ5LFxuICAweDgyLCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ4LCAweGEzLCAweGQ5LCAweDgxLFxuICAweGQ4LCAweGI2LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI3LCAweGQ4LCAweGE4LCAweGQ4LCAweGFlLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDgzLCAweGQ4LCAweGFiLCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ4LCAweGI2LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFkLCAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ5LCAweDg2LCAweGQ5LCAweDgxLCAweGQ4LCAweGIzLCAweGQ5LCAweDg3LFxuICAweGQ4LCAweGEzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDg4LCAweGQ4LCAweGFmLCAweGQ4LCAweGEzLCAweGQ5LCAweDg2LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGFmLFxuICAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg2LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGI2LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LCAweGFlLCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLFxuICAweDAwLCAweDAwLCAweDAxLCAweDAwLCAweDAxLCAweDAwLCAweDAxLCAweDAwLCAweDAxLCAweDAwLCAweDAyLCAweDAwLCAweDAyLFxuICAweDAwLCAweDAyLCAweDAwLCAweDAyLCAweDAwLCAweDA0LCAweDAwLCAweDA0LCAweDAwLCAweDA0LCAweDAwLCAweDA0LCAweDAwLFxuICAweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3LCAweDA3LCAweDA2LCAweDA1LCAweDA0LCAweDAzLFxuICAweDAyLCAweDAxLCAweDAwLCAweDA4LCAweDA5LCAweDBhLCAweDBiLCAweDBjLCAweDBkLCAweDBlLCAweDBmLCAweDBmLCAweDBlLFxuICAweDBkLCAweDBjLCAweDBiLCAweDBhLCAweDA5LCAweDA4LCAweDEwLCAweDExLCAweDEyLCAweDEzLCAweDE0LCAweDE1LCAweDE2LFxuICAweDE3LCAweDE3LCAweDE2LCAweDE1LCAweDE0LCAweDEzLCAweDEyLCAweDExLCAweDEwLCAweDE4LCAweDE5LCAweDFhLCAweDFiLFxuICAweDFjLCAweDFkLCAweDFlLCAweDFmLCAweDFmLCAweDFlLCAweDFkLCAweDFjLCAweDFiLCAweDFhLCAweDE5LCAweDE4LCAweGZmLFxuICAweGZmLCAweGZmLCAweGZmLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweGZmLCAweGZmLFxuICAweGZmLCAweGZmLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAyLCAweDAwLCAweDAwLCAweDAwLCAweDAyLCAweDAwLCAweDAwLFxuICAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAzLCAweDAwLCAweDAwLCAweDAwLFxuICAweGZmLCAweGZmLCAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDAxLCAweDAwLCAweDAwLCAweGZmLCAweGZmLCAweDAwLFxuICAweDAxLCAweDAwLCAweDAwLCAweDAwLCAweDA4LCAweDAwLCAweDA4LCAweDAwLCAweDA4LCAweDAwLCAweDA4LCAweDAwLCAweDAwLFxuICAweDAwLCAweDAxLCAweDAwLCAweDAyLCAweDAwLCAweDAzLCAweDAwLCAweDA0LCAweDAwLCAweDA1LCAweDAwLCAweDA2LCAweDAwLFxuICAweDA3LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDc1LFxuICAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDQ0LFxuICAweDU0LCAweDQ0LCAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LCAweDY3LCAweDY1LFxuICAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDYxLCAweDY0LCAweDc2LFxuICAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDNjLCAweDJmLFxuICAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDNlLCAweDQxLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLFxuICAweDZjLCAweDY5LCAweDYxLCAweDIyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLFxuICAweDY5LCAweDc0LCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLFxuICAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDY5LCAweDZjLCAweDc5LCAweDZmLCAweDcwLCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY3LFxuICAweDY1LCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDZmLFxuICAweDZlLCAweDc5LCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDY5LCAweDY1LCAweDczLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIyLFxuICAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDczLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDYzLFxuICAweDZjLCAweDc1LCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBkLCAweDBhLCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDQyLCAweDY5LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDdkLFxuICAweDIwLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDIwLCAweDdiLCAweDBhLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDQxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDY0LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDZmLCAweDc1LFxuICAweDczLCAweDczLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDYzLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDcwLCAweDcyLFxuICAweDZmLCAweDc0LCAweDZmLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDI2LCAweDcyLCAweDYxLCAweDcxLCAweDc1LCAweDZmLCAweDNiLCAweDNjLCAweDJmLCAweDY1LFxuICAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDYyLCAweDY1LCAweDYxLCAweDc1LCAweDc0LCAweDY5LCAweDY2LCAweDc1LCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDZlLFxuICAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLCAweDY1LFxuICAweDY0LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLFxuICAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZjLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDZlLCAweDYxLCAweDY5LCAweDZjLCAweDRlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDJlLCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLFxuICAweDI4LCAweDI5LCAweDNiLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDY5LCAweDY3LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDBhLFxuICAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDcyLCAweDYxLFxuICAweDZkLCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDc0LCAweDZmLFxuICAweDcyLCAweDc5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDc1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDRlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDczLCAweDZkLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZjLCAweDczLCAweDY1LCAweDc3LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDQxLCAweDZjLCAweDY1LCAweDc4LCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDcwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDYyLCAweDcyLCAweDZmLCAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDczLFxuICAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDYxLCAweDY2LCAweDY2LFxuICAweDY5LCAweDZjLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDNjLCAweDJmLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNlLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY5LFxuICAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDJmLCAweDY0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LFxuICAweDZjLCAweDc0LCAweDJlLCAweDUwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDZlLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDYyLCAweDY5LCAweDZmLCAweDY3LCAweDcyLFxuICAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc3LCAweDY5LCAweDczLCAweDY1LFxuICAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDQ2LCAweDcyLCAweDYxLCAweDZlLFxuICAweGMzLCAweGE3LCAweDYxLCAweDY5LCAweDczLCAweDQ4LCAweDZmLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDZmLCAweDZmLFxuICAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNlLCAweDBhLCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ0LCAweDY1LFxuICAweDYzLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLFxuICAweDcyLCAweDY1LCAweDY0LCAweDQzLCAweDYxLCAweDZkLCAweDYyLCAweDcyLCAweDY5LCAweDY0LCAweDY3LCAweDY1LCAweDZmLFxuICAweDcwLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDc1LCAweDczLCAweDY5LCAweDZlLFxuICAweDY1LCAweDczLCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDcyLFxuICAweDZjLCAweDY0LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDYxLFxuICAweDYzLCAweDY1LCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZlLCAweDY1LFxuICAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDNlLCAweDBhLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDZjLFxuICAweDY5LCAweDZiLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDYyLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDY1LFxuICAweDY0LCAweDQ1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDYxLCAweDcyLFxuICAweDczLCAweDY1LCAweDQ5LCAweDZlLCAweDc0LCAweDI4LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LFxuICAweDc0LCAweDc5LCAweDc1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDNjLCAweDJmLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDRlLCAweDZmLCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLFxuICAweDUzLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDcyLCAweDIyLFxuICAweDNlLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY5LCAweDZlLCAweDYzLFxuICAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDQyLCAweDYxLCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDc0LCAweDcyLFxuICAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLFxuICAweDYxLCAweDcyLCAweDc5LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDcyLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDY1LFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQ1LCAweDZjLCAweDY5LCAweDdhLCAweDYxLFxuICAweDYyLCAweDY1LCAweDc0LCAweDY4LCAweDNjLCAweDJmLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDNlLFxuICAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDczLCAweDc1LFxuICAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LFxuICAweDNiLCAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDc5LCAweDQ3LCAweDY1LCAweDZmLFxuICAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDY0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZmLFxuICAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLFxuICAweDY1LCAweDczLCAweDJlLCAweDY5LCAweDZlLCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDNjLFxuICAweDJmLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDc1LCAweDczLFxuICAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQzLCAweDZmLCAweDZkLCAweDZkLFxuICAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDY1LCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDZlLCAweDZmLCAweDIwLFxuICAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDYxLFxuICAweDZlLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDYzLCAweDc5LCAweDc0LCAweDc5LCAweDcwLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY5LFxuICAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDNiLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDcxLCAweDc1LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDc0LCAweDIwLFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLFxuICAweDYzLCAweDY1LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDc0LCAweDY4LFxuICAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDcwLCAweDY4LFxuICAweDZmLCAweDZlLCAweDY1LCAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDczLCAweDYzLCAweDZmLCAweDcwLCAweDY1LCAweDcwLFxuICAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLFxuICAweDc0LCAweDYxLCAweDY3LCAweDY1LCAweDI5LCAweDNiLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLFxuICAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDc2LFxuICAweDY5LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDYzLCAweDcyLCAweDYxLCAweDYzLFxuICAweDc5LCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDc0LFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDczLFxuICAweDYxLCAweDY5LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDZkLCAweDYxLFxuICAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDNjLCAweDJmLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYzLCAweDY4LCAweDY1LFxuICAweDY0LCAweDc1LCAweDZjLCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LFxuICAweDczLCAweDNjLCAweDJmLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDNlLCAweDBhLCAweDczLCAweDc1LCAweDczLFxuICAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLFxuICAweDIwLCAweDMwLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDY5LCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDNjLCAweDJmLFxuICAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDBhLCAweDZkLCAweDY5LCAweDYzLCAweDcyLCAweDZmLCAweDczLFxuICAweDZmLCAweDY2LCAweDc0LCAweDY3LCAweDcyLCAweDYxLCAweDY0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LFxuICAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LFxuICAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDY1LCAweDc4LCAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDZhLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDczLFxuICAweDY1LCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDcyLCAweDZkLCAweDY1LFxuICAweDY0LCAweDcwLCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDZjLCAweDY5LCAweDc0LFxuICAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDc5LFxuICAweDY1LCAweDY0LCAweDc1LCAweDcwLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc2LCAweDYxLFxuICAweDcyLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDRhLCAweDYxLCAweDcwLCAweDYxLCAweDZlLFxuICAweDY1LCAweDczLCAweDY1LCAweDIwLCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDZjLCAweDY3LCAweDZmLFxuICAweDcyLCAweDY5LCAweDc0LCAweDY4LCAweDZkLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDczLCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDYxLFxuICAweDY3LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDdhLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY5LCAweDZlLFxuICAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDZjLCAweDcwLFxuICAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDYxLCAweDZjLCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDI5LCAweDJjLCAweDIwLCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LFxuICAweDY0LCAweDJkLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDQ2LCAweDY1LCAweDYyLFxuICAweDcyLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDY1LCAweDcyLCAweDZmLCAweDc1LFxuICAweDczLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDNhLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDY2LCAweDcyLCAweDYxLCAweDY3LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDYzLFxuICAweDZmLCAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZlLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDQxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDczLCAweDZmLCAweDc1LCAweDcyLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDY0LCAweDQ4LCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDRiLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDQ2LCAweDYxLFxuICAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDZkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLFxuICAweDY1LCAweDIwLCAweDZkLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDZkLCAweDY1LCAweDZjLFxuICAweDY1LCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDY2LCAweDY2LCAweDY1LCAweDZlLCAweDczLFxuICAweDY5LCAweDc2LCAweDY1LCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBhLCAweDA5LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDZmLCAweDcyLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDczLFxuICAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDZmLCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDc0LFxuICAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDY0LCAweDYzLCAweDZmLFxuICAweDZlLCAweDc2LCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDZmLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDJlLFxuICAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDI4LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDY5LFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDc2LCAweDZmLFxuICAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJkLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LFxuICAweDcyLCAweDIyLCAweDY1LCAweDZlLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDc2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDY0LCAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDIxLCAweDJkLCAweDJkLCAweDQxLFxuICAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LFxuICAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDRlLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDNjLCAweDY2LCAweDc1LCAweDcyLCAweDZlLFxuICAweDY5LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDc0LFxuICAweDIwLCAweDIwLCAweDZmLCAweDZlLCAweDYyLCAweDZjLCAweDc1LCAweDcyLCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDczLFxuICAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDcwLCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDRkLCAweDZmLFxuICAweDcyLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDYxLCAweDYyLCAweDZmLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDc3LFxuICAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDY1LCAweDZkLCAweDZmLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDc5LFxuICAweDZlLCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDY0LCAweDc2LCAweDZmLFxuICAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDc4LCAweDNiLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LFxuICAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDY5LCAweDcyLFxuICAweDNkLCAweDIyLCAweDZjLCAweDc0LCAweDcyLCAweDIyLCAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDY1LFxuICAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDJlLCAweDIwLCAweDczLFxuICAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDcyLCAweDYzLCAweDc1LCAweDczLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDY0LFxuICAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDUzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDY0LCAweDY0LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LFxuICAweDQ2LCAweDYxLCAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDczLCAweDc1LCAweDY3LCAweDY3LFxuICAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LFxuICAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDczLCAweDQ5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY1LCAweDYzLCAweDY1LFxuICAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDczLCAweDRhLFxuICAweDY1LCAweDcyLCAweDc1LCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDZkLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLFxuICAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc2LFxuICAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY3LCAweDc1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LFxuICAweDY1LCAweDYxLCAweDcyLCAweDYyLCAweDY5LCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDY3LCAweDZlLCAweDY5LCAweDdhLCAweDY1LCAweDc3LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDcwLCAweDc4LCAweDNiLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDc0LCAweDY4LFxuICAweDY1LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYyLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY5LFxuICAweDZmLCAweDc1LCAweDcyLCAweDU3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LFxuICAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYyLCAweDY1LCAweDY3LCAweDYxLCAweDZlLFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LFxuICAweDZkLCAweDYxLCAweDY3LCAweDZlLCAweDY5LCAweDc0LCAweDc1LCAweDY0LCAweDY1LCAweDZkLCAweDc1LCAweDczLCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDZlLCAweDQ0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDY1LCAweDc4LCAweDc0LFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDcyLCAweDc5LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDZmLCAweDYzLFxuICAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDczLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDJlLCAweDNjLCAweDJmLCAweDZjLCAweDYxLCAweDYyLFxuICAweDY1LCAweDZjLCAweDNlLCAweDNjLCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDczLCAweDZiLCAweDY5LCAweDZlLCAweDY0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDY5LCAweDY1LFxuICAweDczLCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDJkLCAweDJkLFxuICAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDBhLCAweDBhLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDc3LCAweDY1LFxuICAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDcyLCAweDYxLFxuICAweDY0LCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDY4LCAweDYxLFxuICAweDc2LCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDI4LCAweDczLFxuICAweDcwLCAweDZmLCAweDZiLCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY1LFxuICAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDY1LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLFxuICAweDc5LCAweDYyLCAweDc1LCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDIwLCAweDczLFxuICAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDc3LCAweDY1LFxuICAweDcyLCAweDY1LCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDNlLCAweDNjLCAweDJmLCAweDRlLCAweDZmLFxuICAweDcyLCAweDc3LCAweDY1LCAweDY3LCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LFxuICAweDY5LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDcwLFxuICAweDYxLCAweDczLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDI4LCAweDZlLCAweDY1LCAweDc3LCAweDIwLFxuICAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDc5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDQxLCAweDY2LCAweDc0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDJlLCAweDcyLCAweDY1LCAweDY3LFxuICAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLFxuICAweDY1LCAweDcyLCAweDYxLCAweDYyLCAweDZmLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDY4LCAweDY1LCAweDZlLCAweDZmLCAweDZkLFxuICAweDY1LCAweDZlLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDZmLCAweDZmLCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDIyLCAweDNlLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDQxLCAweDZkLCAweDZmLCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDQxLCAweDY5LCAweDcyLFxuICAweDIwLCAweDQ2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDIwLFxuICAweDZmLCAweDY2LCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY5LCAweDZkLFxuICAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDY5LCAweDc0LCAweDcwLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDYzLFxuICAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDczLFxuICAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDY0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDY3LCAweDcyLCAweDZmLCAweDc3LCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLFxuICAweDIwLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZkLCAweDZmLCAweDZjLFxuICAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDY1LCAweDczLCAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDY5LFxuICAweDczLCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LFxuICAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDY4LFxuICAweDZmLCAweDZmLCAweDY0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY0LFxuICAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDYxLFxuICAweDcwLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDY2LCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDY2LFxuICAweDZjLCAweDY5LCAweDYzLCAweDc0LCAweDczLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDcwLCAweDNlLFxuICAweDBhLCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDQ1LCAweDc4LFxuICAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDYzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDUwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZkLCAweDc1LCAweDczLCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDczLFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDczLFxuICAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDY0LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDIxLCAweDViLFxuICAweDQzLCAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLCAweDIyLCAweDNlLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLFxuICAweDYzLCAweDc0LCAweDUzLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZlLCAweDIwLCAweDYyLCAweDY3LFxuICAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDJlLCAweDIwLCAweDQ5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDJlLFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDZmLCAweDY2LCAweDY2LCAweDY5LFxuICAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDZjLFxuICAweDc5LCAweDJkLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDY5LCAweDZlLCAweDY5LFxuICAweDc0LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDJkLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDY2LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDY3LCAweDY1LCAweDc0LCAweDQzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LCAweDZkLFxuICAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDNjLCAweDJmLCAweDYyLCAweDc1LCAweDc0LFxuICAweDc0LCAweDZmLCAweDZlLCAweDNlLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDNjLCAweDIxLCAweDJkLFxuICAweDJkLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDU3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDcwLCAweDY5LCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDczLCAweDc1LCAweDczLCAweDc3LFxuICAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDc0LCAweDU2LCAweDY1LCAweDZlLCAweDY1LCAweDdhLFxuICAweDc1LCAweDY1LCAweDZjLCAweDYxLCAweDI4LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDZjLCAweDc5LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDZjLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDY5LFxuICAweDYzLCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDU3LCAweDY5LCAweDZiLCAweDY5LCAweDcwLCAweDY1LCAweDY0LFxuICAweDY5LCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDc2LCAweDY5LFxuICAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLFxuICAweDc3LCAweDYxLCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDQzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDc3LCAweDYxLCAweDc5LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZjLCAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDYxLFxuICAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDY0LCAweDY5LCAweDczLFxuICAweDczLCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDU1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDNlLCAweDI2LFxuICAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLCAweDQ5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc3LFxuICAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLFxuICAweDY5LCAweDczLCAweDZkLCAweDczLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LFxuICAweDQ2LCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDcyLCAweDY5LCAweDYzLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LFxuICAweDIwLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDU0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDY4LFxuICAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDczLFxuICAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDczLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDNlLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLFxuICAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDcyLCAweDc2LFxuICAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDdkLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNlLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDczLCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY1LCAweDc4LFxuICAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDYxLFxuICAweDIwLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDZkLFxuICAweDY5LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDczLFxuICAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDYyLCAweDZjLCAweDY1LCAweDczLCAweDY0LCAweDc1LCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDczLCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDZjLFxuICAweDZjLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY3LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDcyLFxuICAweDY5LCAweDY1LCAweDczLCAweDdiLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDczLFxuICAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDIwLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLFxuICAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDZkLCAweDY1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZkLCAweDcwLCAweDZlLCAweDY1LFxuICAweDY1LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ3LCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDYxLCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDU3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDY1LCAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDU0LCAweDY4LCAweDY1LFxuICAweDczLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIyLCAweDNlLCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDY2LCAweDc1LCAweDZjLCAweDZjLCAweDc5LCAweDZkLCAweDYxLFxuICAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYxLFxuICAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDY5LFxuICAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcyLCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDIyLCAweDNlLCAweDBkLCAweDBhLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDY1LCAweDZlLCAweDIwLCAweDIwLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDcwLCAweDcyLFxuICAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDIwLCAweDUwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDcyLCAweDJkLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDczLCAweDYxLCAweDc5LCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDQ4LCAweDc1LCAweDZlLCAweDY3LFxuICAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDc1LCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDczLCAweDU1LCAweDZlLCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDZjLCAweDY1LCAweDc4LCAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDY3LCAweDY3LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDY5LCAweDZlLCAweDY2LCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY4LFxuICAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIyLCAweDNlLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDYzLFxuICAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDZjLCAweDczLCAweDc5LCAweDZkLCAweDYyLCAweDZmLCAweDZjLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDc0LFxuICAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LFxuICAweDYzLCAweDc0LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYxLCAweDZlLCAweDcwLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDZjLCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY1LCAweDYxLCAweDczLCAweDY5LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDcwLFxuICAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDBhLCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDYyLCAweDY1LCAweDZjLFxuICAweDY5LCAweDY1LCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDQxLCAweDY2LCAweDcyLCAweDY5LCAweDZiLCAweDYxLCAweDYxLFxuICAweDZlLCAweDczLCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDYxLCAweDcyLCAweDIwLCAweDYxLCAweDczLCAweDcwLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDc3LFxuICAweDY5LCAweDc0LCAweDY4LCAweDYxLCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDNjLFxuICAweDY2LCAweDY5LCAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLFxuICAweDc0LCAweDZkLCAweDYxLCAweDczLCAweDUyLCAweDY1LCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LFxuICAweDBhLCAweDBhLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDYzLCAweDZiLFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLFxuICAweDc0LCAweDZkLCAweDYxLCAweDY3LCAweDYxLCAweDdhLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDNlLCAweDNjLCAweDczLFxuICAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDc0LCAweDc0LFxuICAweDY1LCAweDY1LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY3LCAweDcyLFxuICAweDZmLCAweDc1LCAweDcwLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDYxLFxuICAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDY2LFxuICAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDcyLCAweDIwLCAweDZmLCAweDc3LCAweDZlLFxuICAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDIwLCAweDZmLFxuICAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDQzLCAweDYxLCAweDcyLCAweDY5LCAweDYyLCAweDYyLCAweDY1LCAweDYxLFxuICAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDczLFxuICAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDczLCAweDc3LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDZlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDNiLCAweDIwLFxuICAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDYyLCAweDY5LFxuICAweDc0LCAweDY1LCAweDY0LCAweDUzLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDczLCAweDc0LCAweDRhLFxuICAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDMxLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDZmLFxuICAweDc0LCAweDY1LCAweDcyLCAweDNlLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LFxuICAweDYzLCAweDY4LCAweDZmLCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDIwLCAweDYyLCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDU0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDJlLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LFxuICAweDNiLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY1LFxuICAweDYxLCAweDZjLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc1LCAweDczLCAweDY1LCAweDcyLCAweDQxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDYzLFxuICAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LFxuICAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDYxLCAweDczLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDY1LCAweDZlLCAweDY3LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDcyLCAweDY1LCAweDYzLCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDJjLCAweDY2LCAweDY1LCAweDc3LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLFxuICAweDczLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDBhLCAweDNjLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDYzLCAweDY5LFxuICAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLFxuICAweDZiLCAweDY1LCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDZkLCAweDZlLCAweDY1LCAweDY0LCAweDYxLFxuICAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY5LFxuICAweDYzLCAweDY1LCAweDczLCAweDJjLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDIwLCAweDZmLCAweDY2LFxuICAweDUzLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDc2LFxuICAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDZkLCAweDY5LCAweDZlLFxuICAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDNjLCAweDJmLCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLFxuICAweDc0LCAweDNlLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDIwLFxuICAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLFxuICAweDYzLCAweDY1LCAweDczLCAweDYxLCAweDY0LCAweDc2LCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDU0LFxuICAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDc1LCAweDYzLCAweDY4LFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDZmLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYxLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDY1LCAweDZlLFxuICAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLFxuICAweDZlLCAweDZmLCAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDc3LFxuICAweDY1LCAweDY0LCAweDZlLCAweDY1LCAweDczLCAweDY0LCAweDYxLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDcyLCAweDY0LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDczLFxuICAweDRhLCAweDYxLCAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDMyLCAweDc3LCAweDY4LCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDYxLCAweDIwLCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDY4LFxuICAweDY5LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDY0LFxuICAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDIyLCAweDNlLCAweDBhLCAweDcwLCAweDY5LCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDUyLCAweDY1LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDc0LCAweDY1LCAweDZlLCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDY1LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDc2LCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDIwLCAweDNjLCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDNlLCAweDY3LCAweDY5LFxuICAweDc2LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLFxuICAweDY5LCAweDYxLCAweDZlLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDcwLFxuICAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDMwLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDY1LCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDY5LFxuICAweDZjLCAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDJjLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDZmLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDY1LFxuICAweDY0LCAweDZjLCAweDc5LCAweDQzLCAweDZjLCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDc3LFxuICAweDYxLCAweDczLCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYxLFxuICAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDczLCAweDYzLCAweDcyLCAweDZmLFxuICAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDc1LCAweDYzLFxuICAweDY4LCAweDIwLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLFxuICAweDZlLCAweDczLCAweDJlLCAweDBhLCAweDBhLCAweDQxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDJjLCAweDIwLFxuICAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRkLCAweDc1LCAweDczLCAweDY1LCAweDc1LCAweDZkLFxuICAweDIwLCAweDZmLCAweDY2LCAweDZjLCAweDZmLCAweDc1LCAweDY5LCAweDczLCAweDY5LCAweDYxLCAweDZlLCAweDYxLCAweDI4LFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY5LCAweDZlLCAweDZlLCAweDY1LFxuICAweDczLCAweDZmLCAweDc0LCAweDYxLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDczLFxuICAweDYxLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDQ0LCAweDZmLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDY2LFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDMwLCAweDMwLCAweDcwLCAweDc4LCAweDdjLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY4LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZkLCAweDZmLFxuICAweDc1LCAweDczLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDI4LFxuICAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDczLCAweDYzLCAweDZmLFxuICAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDYxLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDczLCAweDZmLCAweDZkLFxuICAweDY1LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDIwLCAweDUzLCAweDY1LCAweDcyLCAweDc2LCAweDY5LFxuICAweDYzLCAweDY1LCAweDczLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LFxuICAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLFxuICAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDc2LCAweDYxLCAweDZjLCAweDc1LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDBkLCAweDBhLCAweDNjLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LFxuICAweDNlLCAweDNkLCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDY0LCAweDY1LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LFxuICAweDNiLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDZlLFxuICAweDY0LCAweDIwLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDNjLCAweDJmLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDNlLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDY2LCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDc5LCAweDNhLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LFxuICAweDNiLCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDY4LCAweDY5LFxuICAweDY3LCAweDY4LCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDJkLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDNkLCAweDIyLCAweDJmLCAweDYzLCAweDY3LCAweDY5LCAweDJkLCAweDYyLCAweDY5LCAweDZlLCAweDJmLCAweDc0LFxuICAweDZmLCAweDIwLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDY2LCAweDcyLCAweDY5LCAweDZiLFxuICAweDYxLCAweDYxLCAweDZlLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDZmLFxuICAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweGMzLCAweGE3LCAweDYxLCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDc2LFxuICAweDY5LCAweDY1LCAweGM1LCAweGExLCAweDc1LCAweDZjLCAweDY5LCAweDY1LCAweDc0LCAweDc1LCAweDc2LCAweDY5LCAweGM1LFxuICAweGIzLCAweGM0LCAweDhjLCAweDY1LCAweGM1LCAweGExLCAweDc0LCAweDY5LCAweDZlLCAweDYxLCAweGM0LCAweDhkLCAweDY1LFxuICAweGM1LCAweGExLCAweDc0LCAweDY5LCAweDZlLCAweDYxLCAweGUwLCAweGI5LCAweDg0LCAweGUwLCAweGI4LCAweDk3LCAweGUwLFxuICAweGI4LCAweGEyLCAweGU2LCAweDk3LCAweGE1LCAweGU2LCAweDljLCAweGFjLCAweGU4LCAweGFhLCAweDllLCAweGU3LCAweGFlLFxuICAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweGU1LCAweGFkLCAweDk3LCAweGU3LCAweGI5LCAweDgxLCAweGU5LCAweGFiLCAweDk0LFxuICAweGU1LCAweGFkLCAweDk3LCAweGVkLCAweDk1LCAweDljLCAweGVhLCAweGI1LCAweGFkLCAweGVjLCAweDk2LCAweGI0LCAweGU0LFxuICAweGI4LCAweGJhLCAweGU0LCAweGJiLCAweDgwLCAweGU0LCAweGI5LCAweDg4LCAweGU4LCAweGFlLCAweGExLCAweGU3LCAweGFlLFxuICAweDk3LCAweGU2LCAweDljLCAweGJhLCAweGU3LCAweGFjLCAweDk0LCAweGU4LCAweGFlLCAweGIwLCAweGU2LCAweDljLCAweGFjLFxuICAweGU4LCAweGE4LCAweDhlLCAweGU4LCAweGFiLCAweDk2LCAweGU1LCAweDhkLCAweDgwLCAweGU2LCAweDljLCAweDhkLCAweGU1LFxuICAweDhhLCAweGExLCAweGU1LCAweDk5LCAweGE4LCAweGU0LCAweGJhLCAweDkyLCAweGU4LCAweDgxLCAweDk0LCAweGU3LCAweGJkLFxuICAweDkxLCAweGU2LCAweDg4LCAweGJmLCAweGU1LCAweDljLCAweGIwLCAweGU0LCAweGJhLCAweGE3LCAweGU0LCAweGJmLCAweGIxLFxuICAweGU0LCAweGI5LCAweDkwLCAweGU5LCAweDgzLCAweGE4LCAweGU1LCAweDg3LCAweGJhLCAweGU3LCAweDg5LCAweDg4LCAweGU3LFxuICAweGE0LCAweGJlLCAweGU2LCAweDhlLCAweDkyLCAweGU4LCAweGExLCAweDhjLCAweGU2LCAweGE2LCAweDljLCAweGU5LCAweDgzLFxuICAweGE4LCAweGU4LCAweDkwLCAweGJkLCAweGU2LCAweGEwLCAweGJjLCAweGU4LCAweGJmLCAweDliLCAweGU0LCAweGI4LCAweDgwLFxuICAweGU2LCAweGFkLCAweGE1LCAweGU2LCAweDk0LCAweGFmLCAweGU0LCAweGJiLCAweDk4LCAweGU1LCAweGFlLCAweDlkLCAweGU5LFxuICAweGFhLCAweDhjLCAweGU4LCAweGFmLCAweDgxLCAweGU3LCAweGEwLCAweDgxLCAweGU1LCAweGE3LCAweDk0LCAweGU1LCAweDkxLFxuICAweDk4LCAweGU0LCAweGJjLCAweDlhLCAweGU2LCAweDk1LCAweGIwLCAweGU2LCAweDhkLCAweGFlLCAweGU1LCAweGJhLCAweDkzLFxuICAweGU2LCAweGI2LCAweDg4LCAweGU4LCAweGI0LCAweGI5LCAweGU4LCAweDgwLCAweDg1LCAweGU1LCAweDhhLCAweDllLCAweGU1LFxuICAweDg1LCAweGFjLCAweGU1LCAweGFlLCAweGE0LCAweGU4LCAweGFlLCAweGE4LCAweGU4LCAweGFlLCAweGJhLCAweGU1LCAweDhjLFxuICAweGJhLCAweGU2LCAweGI3LCAweGIxLCAweGU1LCAweDljLCAweGIzLCAweGU1LCAweGI4LCAweDgyLCAweGU2LCAweDkyLCAweGFkLFxuICAweGU2LCAweDk0LCAweGJlLCAweGU1LCAweDk5LCAweGE4LCAweGU1LCAweDhjLCAweDk3LCAweGU0LCAweGJhLCAweGFjLCAweGU1LFxuICAweGI4LCAweDgyLCAweGU1LCAweGE0LCAweGE3LCAweGU1LCAweGFkLCAweGE2LCAweGU3LCAweDk0LCAweDlmLCAweGU4LCAweGI2LFxuICAweDhhLCAweGU2LCAweDlkLCAweGE1LCAweGU4LCAweGI2LCAweDhhLCAweGU3LCAweGFlLCAweGExLCAweGU3LCAweDkwLCAweDg2LFxuICAweGU1LCAweDkxLCAweDk4LCAweGU0LCAweGJmLCAweGExLCAweGU2LCAweDgxLCAweGFmLCAweGU3LCAweGJkLCAweDkxLCAweDczLFxuICAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweGMzLCAweGFkLFxuICAweDYzLCAweDc1LCAweDZjLCAweDZmLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDYxLFxuICAweDYyLCAweDYxLCAweDcyLCAweDYzLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDc1LCAweDYxLCAweDZjLFxuICAweDcxLCAweDc1LCAweDY5LCAweDY1LCAweDcyLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDY0LFxuICAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDZmLCAweDczLCAweDcwLCAweDZmLCAweDZjLFxuICAweGMzLCAweGFkLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDc1LCAweDY1LCAweDczLFxuICAweDc0LCAweDYxLCAweDc3LCAweDY5LCAweDZiLCAweDY5LCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDczLCAweDY5LFxuICAweDY3LCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYyLCAweGMzLCAweGJhLCAweDczLCAweDcxLCAweDc1LFxuICAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDczLFxuICAweDY1LCAweDY3LCAweDc1LCAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLFxuICAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDczLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDcwLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDZlLCAweDY1LCAweDdhLCAweDc1LCAweDY1LCAweDZjLFxuICAweDYxLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDYxLCAweDczLCAweDY0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDZlLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDYzLFxuICAweDc0LCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDYxLCAweDczLCAweDY5LFxuICAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDZmLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweGMzLCAweGFkLCAweDYxLCAweDY5LCAweDZkLCAweGMzLCAweGExLFxuICAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDYxLFxuICAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDcyLCAweDZlLCAweDY1LCAweDYzLFxuICAweDY1LCAweDczLCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDYxLCAweDc0LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweGMzLCAweGE5LCAweDY2LCAweDZmLCAweDZlLCAweDZmLCAweDYzLCAweDZmLFxuICAweDZkLCAweDY5LCAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDZmLFxuICAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LFxuICAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweGMzLCAweGExLCAweDZjLFxuICAweDY5LCAweDczLCAweDY5LCAweDczLCAweDY2LCAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDZmLCAweDczLFxuICAweDc0LCAweGMzLCAweGE5LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc2LFxuICAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDY1LCAweDc0LCAweDY5LCAweDcxLCAweDc1LCAweDY1LCAweDc0LCAweDYxLFxuICAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDYxLFxuICAweDY0LCAweDZmLCAweDYzLCAweDYxLCAweDcyLCAweGMzLCAweGExLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLFxuICAweDZmLCAweDcwLCAweDY5LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LFxuICAweDcwLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDZkLFxuICAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcyLCAweDY3LCAweDYxLCAweDczLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDY1LFxuICAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDY1LCAweDZhLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDY1LCAweDY0LCAweDY5LFxuICAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDYxLCAweDZjLCAweDYxLCAweDZkLCAweDYxLCAweDZlLFxuICAweDYzLCAweDYxLCAweDY3LCAweDZmLCAweDZlLCAweDdhLCAweGMzLCAweGExLCAweDZjLCAweDY1LCAweDdhLCAweDY0LCAweDZmLFxuICAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDcwLCAweDY1LCAweDZjLCAweGMzLCAweGFkLCAweDYzLFxuICAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDcyLCAweDYxLFxuICAweDY3LCAweDZmLCAweDZlLCAweDYxLCAweDcwLCAweDcyLCAweGMzLCAweGExLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZlLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDcwLFxuICAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDczLCAweDc0LCAweGMzLCAweGE5LCAweDYzLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDczLCAweDZmLCAweDYyLCAweDZhLFxuICAweDY1LCAweDc0LCAweDY5LCAweDc2LCAweDZmLCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LFxuICAweDZmLCAweDczLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDg4LFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LFxuICAweGI1LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDliLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg4LFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweDY0LCAweDY5LCAweDcwLCAweDZjLCAweDZmLFxuICAweDY0LCAweDZmLCAweDYzLCAweDczLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFmLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk0LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE1LCAweDhjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE1LCAweDg5LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDlmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LFxuICAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDkwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDhhLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDkwLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGE2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIyLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg5LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFkLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgxLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweDg2LFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LFxuICAweDgxLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDgwLFxuICAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDcwLFxuICAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDJmLCAweDc0LCAweDY5LCAweDc0LCAweDZjLFxuICAweDY1LCAweDNlLCAweDBkLCAweDBhLCAweDQzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIwLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDYzLCAweDZmLFxuICAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc5LFxuICAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDNjLCAweDcwLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDNjLCAweDYxLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDI2LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDNiLCAweDIwLCAweDMyLCAweDMwLCAweDMxLFxuICAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDUzLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDYzLFxuICAweDcyLCAweDc1LCAweDZkLCAweDYyLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDczLCAweDY1LCAweDZjLCAweDc2LCAweDY1LFxuICAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDY5LCAweDdhLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY3LCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQzLCAweDYxLCAweDZjLCAweDY5LCAweDY2LFxuICAweDZmLCAweDcyLCAweDZlLCAweDY5LCAweDYxLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY5LCAweDc0LCAweDY5LFxuICAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDRlLFxuICAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDNjLCAweDJmLCAweDc0LFxuICAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDNjLCAweDZkLCAweDYzLCAweDY4LCAweDY1LCAweDYzLCAweDZiLCAweDYyLFxuICAweDZmLCAweDc4LCAweDIyLCAweDIwLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDcxLCAweDc1LCAweDY1LFxuICAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcwLFxuICAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLCAweDczLCAweDIwLCAweDc3LCAweDY1LFxuICAweDZjLCAweDZjLCAweDIwLCAweDYxLCAweDczLCAweDc1LCAweDZlLCAweDc0LCAweDI3LCAweDJjLCAweDIwLCAweDI3LCAweDU1LFxuICAweDQxLCAweDJkLCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLFxuICAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDZjLCAweDY1LFxuICAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDU3LCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDZlLFxuICAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDJlLCAweDIwLCAweDNkLCAweDIwLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDYyLCAweDcyLCAweDI2LCAweDY3LCAweDc0LFxuICAweDNiLCAweDZjLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcwLCAweDZmLFxuICAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY3LCAweDYzLCAweDZmLCAweDZjLFxuICAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDIzLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDcwLFxuICAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDc3LCAweDczLFxuICAweDZjLCAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LFxuICAweDY5LCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDU0LCAweDY1LCAweDYzLFxuICAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDUwLCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDYxLFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY5LCAweDczLCAweDZmLFxuICAweDZlLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDJlLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDRmLCAweDY2LCAweDI4LCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDZjLFxuICAweDc1LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYyLFxuICAweDY5LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDUyLCAweDY1LCAweDc2LCAweDZmLFxuICAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDVmLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDY1LCAweDcyLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDZmLCAweDZmLCAweDY0LFxuICAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDcwLCAweDY1LCAweDcyLFxuICAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDcwLCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDJlLCAweDc2LCAweDYxLCAweDZjLFxuICAweDc1LCAweDY1LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLFxuICAweDZmLCAweDZlLCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDczLFxuICAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDJkLCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDcyLCAweDY1LCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDY4LCAweDY1LFxuICAweDZlLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDY5LCAweDcwLFxuICAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLFxuICAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJjLCAweDYyLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDQyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDZmLFxuICAweDc1LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDI4LCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLFxuICAweDNhLCAweDIyLCAweDIwLCAweDc1LCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDcwLCAweDY1LCAweDI4LCAweDIyLFxuICAweDcwLCAweDYxLCAweDczLCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDIyLCAweDIwLCAweDY0LCAweDY1LCAweDZkLFxuICAweDZmLCAweDYzLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDc3LCAweDcyLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDcyLCAweDIyLCAweDNlLFxuICAweDBhLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDc1LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDcwLCAweDc4LCAweDNiLCAweDcwLCAweDYxLFxuICAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLFxuICAweDY4LCAweDc5LCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDc1LFxuICAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDYxLCAweDYzLCAweDY5LFxuICAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLCAweDY5LFxuICAweDdhLCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDY5LCAweDY2LCAweDIwLCAweDI4LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDY5LFxuICAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDc2LCAweDZmLCAweDYzLCAweDYxLCAweDYyLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDc5LCAweDY4LCAweDc5LCAweDcwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY5LFxuICAweDczLCAweDJlLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDI4LCAweDI5LCAweDNiLCAweDI2LCAweDYxLFxuICAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDY4LCAweDY5LCAweDZlLCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDQ2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDcyLCAweDIyLCAweDYxLCAweDczLCAweDczLCAweDc1LFxuICAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LFxuICAweDYzLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDc1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDY1LCAweDc4LCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDc0LCAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLFxuICAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDZkLCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDQzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcwLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDZlLFxuICAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LFxuICAweDY5LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDRkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY3LCAweDY1LCAweDZmLFxuICAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDJlLCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDI4LCAweDJmLCAweDY0LCAweDY1LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc1LCAweDZlLCAweDY5LCAweDczLCAweDY4LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDcyLFxuICAweDY1LCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDY0LCAweDYxLCAweDcwLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY1LCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDY4LCAweDMxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LFxuICAweDZlLCAweDZkLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDYzLCAweDY1LCAweDZjLCAweDY1LCAweDYyLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDQ3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDBhLCAweDBhLCAweDQ0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY0LFxuICAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDYxLCAweDZjLFxuICAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDc0LFxuICAweDYxLCAweDYzLCAweDY4LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLFxuICAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDRlLCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDYyLCAweDY1LFxuICAweDc5LCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLFxuICAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDZhLCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDY5LFxuICAweDczLCAweDc0LCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLFxuICAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY3LFxuICAweDNkLCAweDIyLCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNlLCAweDBkLCAweDBhLCAweDYxLCAweDYyLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDNiLCAweDIwLFxuICAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDc0LFxuICAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDcyLCAweDY1LCAweDYxLCAweDZkLCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLFxuICAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDY1LCAweDZkLFxuICAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYyLCAweDZmLCAweDc1LFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIyLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDY1LCAweDZlLCAweDUwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweDY1LCAweDczLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDY5LFxuICAweDc0LCAweDc1LCAweDc0LCAweDY1LCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LCAweDYxLFxuICAweDZjLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDc1LFxuICAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDYxLCAweDZjLCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDcwLCAweDc4LCAweDIwLCAweDczLCAweDZmLCAweDZjLCAweDY5LCAweDY0LFxuICAweDIwLCAweDIzLCAweDYxLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDczLFxuICAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDIwLCAweDQ1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDY5LFxuICAweDdhLCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLFxuICAweDY3LCAweDc1LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDZiLFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDY0LCAweDY4LCAweDMyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDYxLFxuICAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDI4LCAweDY5LCAweDZlLCAweDYzLCAweDZjLFxuICAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDc0LCAweDY1LFxuICAweDcyLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDY4LCAweDY5LCAweDYyLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDNkLFxuICAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY0LCAweDY5LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDc4LCAweDNiLFxuICAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLFxuICAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDZlLCAweDY5LCAweDc1LCAweDZkLCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDY2LCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDZlLCAweDZmLCAweDJkLCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLFxuICAweDc0LCAweDNiLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDYzLCAweDZmLFxuICAweDc1LCAweDcyLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc1LCAweDZlLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDY1LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDUyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZmLCAweDcyLCAweDY0LCAweDY5LFxuICAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY1LFxuICAweDcyLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDY2LCAweDY5LFxuICAweDY1LCAweDY0LCAweDZjLCAweDY1LCAweDY3LCAweDY5LCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDI4LCAweDMwLCAweDIyLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LFxuICAweDY1LCAweDZjLCAweDc5LCAweDY5LCAweDZjLCAweDZjLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY2LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDUwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDMxLCAweDIyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDcwLCAweDczLCAweDc5LCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDYzLCAweDZmLFxuICAweDZlLCAweDY2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LFxuICAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYxLCAweDYyLCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDZhLFxuICAweDZmLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDZjLCAweDc5LCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDNlLFxuICAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDYyLCAweDc1LCAweDc0LFxuICAweDIwLCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDZkLCAweDY5LCAweDY3LCAweDcyLFxuICAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDZmLCAweDY2LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LFxuICAweDJjLCAweDYxLCAweDIwLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDRjLCAweDY5LFxuICAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDU1LCAweDZlLCAweDZjLCAweDY5LCAweDZiLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLFxuICAweDcwLCAweDNiLCAweDBhLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY5LFxuICAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQzLCAweDZmLCAweDZlLCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDZmLCAweDYyLFxuICAweDY5LCAweDZjLCAweDY1LCAweDUwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY3LCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDY2LCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDUzLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLFxuICAweDcyLCAweDZjLCAweDc5LCAweDJjLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDBkLCAweDBhLFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDY1LCAweDcyLCAweDczLCAweDYxLFxuICAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LFxuICAweDZlLCAweDY1LCAweDY0LCAweDJhLCAweDNjLCAweDIxLCAweDViLCAweDQzLCAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLFxuICAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY5LCAweDZlLCAweDIwLFxuICAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLFxuICAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDNjLCAweDJmLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDNlLCAweDBhLCAweDNjLFxuICAweDJmLCAweDJlLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDRmLCAweDY2LCAweDI4LCAweDI3LCAweDY5LCAweDIwLFxuICAweDNkLCAweDIwLCAweDMwLCAweDNiLCAweDIwLCAweDY5LCAweDIwLCAweDNjLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY1LCAweDc2LCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZjLCAweDc0LCAweDY5LFxuICAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDc0LCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LCAweDczLFxuICAweDczLCAweDZmLCAweDJkLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDdkLCAweDBhLCAweDNjLFxuICAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDY1LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZkLCAweDcwLCAweDY4LCAweDYxLCAweDczLCAweDY5LCAweDdhLCAweDY1LFxuICAweDY0LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDNjLCAweDJmLFxuICAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDRkLCAweDY1LCAweDYxLCAweDZlLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDJjLCAweDY5LFxuICAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDYyLCAweDcyLCAweDIwLCAweDJmLCAweDNlLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDU0LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDYxLCAweDczLCAweDZiLCAweDY1LCAweDc0LFxuICAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDIwLCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDZlLFxuICAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDYxLCAweDY0LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LFxuICAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDYzLFxuICAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIyLCAweDNlLCAweDNjLCAweDczLCAweDc0LCAweDcyLFxuICAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDcyLFxuICAweDczLCAweDRhLCAweDZmLCAweDc1LCAweDcyLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDc5LCAweDY2LCAweDYxLCAweDYzLCAweDY5LCAweDZjLFxuICAweDY5LCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDA5LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDZmLFxuICAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDQzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDY5LCAweDc0LCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYyLCAweDc1LCAweDczLFxuICAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDczLCAweDQ0LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDcwLCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDRhLCAweDYxLFxuICAweDZlLCAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY5LCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDA5LCAweDY0LFxuICAweDY5LCAweDcwLCAweDZjLCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY5LFxuICAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDQ5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDZkLCAweDYxLFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRjLCAweDc1LCAweDc4LCAweDY1LCAweDZkLFxuICAweDYyLCAweDZmLCAweDc1LCAweDcyLCAweDY3LCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY1LFxuICAweDZlLCAweDY3LCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIyLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDI5LCAweDNiLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLFxuICAweDc3LCAweDYxLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY5LCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDNkLCAweDIyLCAweDBhLCAweDNjLCAweDIxLFxuICAweDJkLCAweDJkLCAweDIwLCAweDQ1LCAweDZlLCAweDY0LCAweDIwLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDZmLFxuICAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc1LCAweDZlLCAweDZjLCAweDY5LCAweDZiLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQxLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZjLCAweDY5LFxuICAweDYxLCAweDZlLCAweDRmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLFxuICAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDBhLCAweDNjLCAweDJmLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLCAweDY5LFxuICAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDY1LFxuICAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDQxLCAweDZjLCAweDY1LFxuICAweDc4LCAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDY5LCAweDYxLCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQxLCAweDY0LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDcyLCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDBhLCAweDBhLFxuICAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDIxLCAweDJkLCAweDJkLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY4LCAweDMzLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLFxuICAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDZmLCAweDYyLCAweDZjLCAweDY5LFxuICAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LFxuICAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDYxLCAweDY0LCAweDc2LFxuICAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZlLFxuICAweDczLCAweDNjLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDcyLCAweDY1LFxuICAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZjLCAweDc5LCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZlLFxuICAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLFxuICAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDYxLCAweDc1LFxuICAweDc0LCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLFxuICAweDZmLCAweDZkLCAweDY5LCAweDczLCAweDY1LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDc0LFxuICAweDc3LCAweDZmLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ2LCAweDY1LCAweDYyLCAweDcyLFxuICAweDc1LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDMyLCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LFxuICAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc3LCAweDY2LCAweDZmLCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDJlLFxuICAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDZlLCAweDY1LCAweDYxLFxuICAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LFxuICAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LFxuICAweDczLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDc3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDY0LCAweDcyLCAweDYxLCAweDc3LCAweDYxLCAweDZjLCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LFxuICAweDNhLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDY5LCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDZlLFxuICAweDY1LCAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZkLCAweDc5LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDQ0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDcwLCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDc1LCAweDcwLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLFxuICAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDY1LFxuICAweDY0LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDczLCAweDc5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDZjLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDYxLCAweDY3LCAweDYxLCAweDZlLFxuICAweDY0LCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDY1LCAweDcyLCAweDY1LFxuICAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDZjLCAweDYxLCAweDY5LFxuICAweDZkLCAweDY1LCAweDY0LCAweDUwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDUzLCAweDYzLCAweDY5LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDZlLCAweDZmLCAweDJkLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDZiLFxuICAweDczLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDRjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDY0LCAweDYxLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDczLCAweDIwLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDcyLFxuICAweDY5LCAweDczLCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDQxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDBhLCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDZkLFxuICAweDRjLCAweDYxLCAweDYyLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDRlLCAweDZmLCAweDc2LFxuICAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDMyLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQ5LCAweDZlLCAweDY0LCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLFxuICAweDZjLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZjLFxuICAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDIwLCAweDZjLCAweDY1LCAweDY2LCAweDQ0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDY0LFxuICAweDY1LCAweDYxLCAweDZjLCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDUzLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LCAweDIyLCAweDNlLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDc5LFxuICAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDc3LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDJjLCAweDczLCAweDc5LFxuICAweDZlLCAweDZmLCAweDZlLCAweDc5LCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZkLCAweDYxLCAweDYyLFxuICAweDZjLCAweDc5LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDc1LFxuICAweDczLCAweDY1LCAweDcyLCAweDQxLCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc1LCAweDZlLCAweDY1LCAweDc4LFxuICAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDY0LFxuICAweDYxLCAweDIwLCAweDZkLCAweDY5LCAweDZlLCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIyLCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDY3LFxuICAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDY5LCAweDZlLCAweDIwLCAweDRmLCAweDYzLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDcyLCAweDcwLCAweDZmLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIwLCAweDczLCAweDYxLCAweDY5LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDIwLCAweDQ2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDcyLCAweDZmLCAweDc3LCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNkLCAweDIyLCAweDZmLCAweDZlLCAweDZjLCAweDc5LFxuICAweDIwLCAweDYxLCAweDIwLCAweDY2LCAweDY1LCAweDc3LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDNjLCAweDY2LCAweDY5LFxuICAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDNlLCAweDQxLCAweDcyLCAweDYzLCAweDY4LCAweDYyLCAweDY5LFxuICAweDczLCAweDY4LCAweDZmLCAweDcwLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZlLFxuICAweDZmLCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDYxLCAweDcwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY5LCAweDc2LCAweDY5LFxuICAweDZjLCAweDY1LCAweDY3LCAweDY1LCAweDczLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBhLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDZkLFxuICAweDYxLCAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDYxLCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDY1LCAweDY3LCAweDY3LCAweDZkLCAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LFxuICAweDczLCAweDZkLCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LFxuICAweDUwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLCAweDZmLCAweDZjLFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLFxuICAweDBkLCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDYxLCAweDcyLFxuICAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDJkLCAweDZhLCAweDczLCAweDczLCAweDY0LFxuICAweDZiLCAweDI3LCAweDI5LCAweDI5LCAweDNiLCAweDZkLCAweDYxLCAweDZlLCAweDYxLCAweDY3LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDYzLFxuICAweDYxLCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDYxLCAweDZlLCAweDczLCAweDUzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDYxLCAweDcyLCAweDY5LCAweDc0LCAweDY4LCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYzLCAweDY1LCAweDY0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDZkLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDUwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY5LCAweDc0LCAweDIwLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDUwLCAweDY4LFxuICAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLCAweDY4LCAweDc5LCAweDY2LCAweDcyLCAweDY5LCAweDY1LCAweDZlLFxuICAweDY0LCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDZmLCAweDY3LCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LFxuICAweDZmLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDc1LCAweDYxLCAweDcyLFxuICAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY1LCAweDY0LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDMwLCAweDMwLCAweDMwLFxuICAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDIwLCAweDY3LCAweDYxLCAweDZkLCAweDY1LCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDYxLFxuICAweDZlLCAweDczLCAweDJkLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDZmLCAweDZlLCAweDZiLCAweDY1LCAweDc5LFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDNiLCAweDIwLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDNhLCAweDQ4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc1LFxuICAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDc5LCAweDcwLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LFxuICAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDZlLCAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc1LCAweDczLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY5LCAweDZlLCAweDc1LCAweDZmLCAweDc1LCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDc0LFxuICAweDY5LCAweDY1LCAweDczLCAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDY0LCAweDc1LCAweDY1LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDY3LFxuICAweDY1LCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDc1LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLFxuICAweDY1LCAweDJjLCAweDYzLCAweDYxLCAweDcwLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDUyLFxuICAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDQ1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLFxuICAweDZlLCAweDY5LCAweDYzLCAweDZiLCAweDY5LCAweDZjLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDczLFxuICAweDYzLCAweDY4LCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDcwLCAweDc1LCAweDYyLFxuICAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDZmLCAweDc1LFxuICAweDczLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LFxuICAweDYyLCAweDczLCAweDY5LCAweDY0LCAweDY5LCAweDYxLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDcwLFxuICAweDY5LCAweDcyLCAweDYxLCAweDYzLCAweDc5LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDY5LCAweDZjLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDY0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDczLFxuICAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDIwLFxuICAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY5LCAweDc0LCAweDY1LCAweDZkLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDYyLCAweDczLFxuICAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYxLCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDc0LCAweDcyLFxuICAweDYxLCAweDc2LCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDY2LCAweDZmLCAweDYzLCAweDc1LCAweDczLCAweDY1LCAweDczLCAweDIwLFxuICAweDZmLCAweDZlLCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDYxLFxuICAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LFxuICAweDY1LCAweDY1LCAweDc0LCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDZlLCAweDZmLFxuICAweDJkLCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDI4LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLFxuICAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDc1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDZlLCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDNmLCAweDNjLCAweDJmLCAweDYyLCAweDc1LFxuICAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDY3LCAweDY1LCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDJkLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDIyLCAweDIwLCAweDY0LFxuICAweDY5LCAweDcyLCAweDNkLCAweDIyLCAweDZjLCAweDc0LCAweDcyLCAweDRjLCAweDY5LCAweDY1LCAweDc1LCAweDc0LCAweDY1LFxuICAweDZlLCAweDYxLCAweDZlLCAweDc0LCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIwLFxuICAweDc1LCAweDcwLCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLFxuICAweDcyLCAweDY3LCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDYxLFxuICAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDcyLCAweDY1LFxuICAweDZlLCAweDI3LCAweDczLCAweDcwLCAweDc1LCAweDcyLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYyLCAweDYxLCAweDczLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc1LCAweDcwLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LFxuICAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDZmLFxuICAweDczLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDBhLCAweDBhLCAweDQ5LCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDYzLFxuICAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDcyLCAweDZmLFxuICAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDJlLFxuICAweDYzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDczLCAweDZkLCAweDY5LCAweDZlLCAweDIwLFxuICAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDJkLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc5LCAweDczLCAweDc0LCAweDY1LFxuICAweDZkLCAweDUzLCAweDZmLCAweDYzLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLFxuICAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDc3LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU5LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDYxLCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc1LCAweDZlLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDY5LCAweDczLFxuICAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LFxuICAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDQzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDZlLFxuICAweDYzLCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDY5LCAweDY1LCAweDczLCAweDYyLCAweDc1LCAweDc0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY1LFxuICAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZjLCAweDYxLCAweDYyLFxuICAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDc0LFxuICAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDY2LCAweDYxLCAweDY5LCAweDZjLCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDJjLCAweDIwLCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LFxuICAweDY3LCAweDYxLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc1LCAweDczLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LFxuICAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY2LFxuICAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDJmLCAweDIyLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY3LCAweDY1LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY5LCAweDZkLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLFxuICAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDc0LCAweDZmLCAweDcwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDY1LCAweDY3LCAweDZmLCAweDc0LCAweDY5LCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDY1LCAweDcyLCAweDczLFxuICAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDY0LCAweDNkLCAweDIyLFxuICAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDcyLCAweDc0LCAweDY4LFxuICAweDcyLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDYzLCAweDZmLFxuICAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDYzLCAweDYzLCAweDc1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYyLCAweDc1LCAweDY5LFxuICAweDZjLCAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDYxLFxuICAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZkLCAweDc1LCAweDYzLCAweDY4LFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDQ0LCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDMxLCAweDMwLCAweDMwLFxuICAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDRiLCAweDY5LCAweDZlLFxuICAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDcyLCAweDY1LCAweDY2LCAweDYxLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDYyLFxuICAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ2LFxuICAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY4LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDIyLCAweDNlLCAweDY5LFxuICAweDczLCAweDIwLCAweDczLCAweDYxLCAweDY5LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDY0LCAweDc1LCAweDZkLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLFxuICAweDYxLCAweDIwLCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDJkLCAweDNlLCAweDBhLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDIwLCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDc3LCAweDY5LCAweDY0LCAweDY1LFxuICAweDJlLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDY1LCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY5LFxuICAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDY0LCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LFxuICAweDNkLCAweDIyLCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDc0LCAweDYyLFxuICAweDY1LCAweDZlLCAweDY1LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDc0LCAweDZmLCAweDcyLFxuICAweDY5LCAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDZjLCAweDc5LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDY0LCAweDY1LCAweDcyLCAweDZlLCAweDc3LCAweDZmLCAweDcyLFxuICAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDZmLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDNjLCAweDJmLFxuICAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDczLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDc0LCAweDcyLCAweDYxLCAweDYzLCAweDZiLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDQ2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDY5LFxuICAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDZmLCAweDcwLCAweDY1LCAweDZlLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDYxLCAweDY0LCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LFxuICAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYxLCAweDZlLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYxLCAweDZlLCAweDIwLCAweDc2LCAweDY1LFxuICAweDcyLCAweDc5LCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLFxuICAweDZmLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDYyLCAweDc5LCAweDIwLCAweDY2LCAweDYxLCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDcwLFxuICAweDc1LCAweDcyLCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDZjLCAweDZjLFxuICAweDZmLCAweDc3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDIwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDZlLCAweDY0LFxuICAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDYzLCAweDYzLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDczLCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDZmLCAweDcyLCAweDIwLCAweDY4LCAweDY1LCAweDcyLCAweDc0LCAweDcyLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDY0LCAweDZmLCAweDc1LCAweDczLCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDIwLFxuICAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDMwLFxuICAweDIwLCAweDMxLCAweDY1LCAweDZkLCAweDIwLCAweDMxLCAweDY1LCAweDZkLCAweDNiLCAweDQyLCAweDYxLCAweDczLCAweDZiLFxuICAweDY1LCAweDc0LCAweDYyLCAweDYxLCAweDZjLCAweDZjLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDJlLFxuICAweDYzLCAweDczLCAweDczLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDY1LCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDJmLCAweDIyLCAweDIwLFxuICAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDJlLCAweDYzLCAweDZmLCAweDZkLCAweDJmLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDc0LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcwLCAweDY5LCAweDc0LCAweDc0LCAweDczLCAweDYyLCAweDc1LCAweDcyLCAweDY3LCAweDY4LCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDNlLCAweDBkLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDI4LCAweDY2LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDZmLFxuICAweDc1LCAweDc0LCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLFxuICAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDZmLCAweDYzLCAweDYzLCAweDYxLFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LFxuICAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDQzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LFxuICAweDJjLCAweDIwLCAweDYyLCAweDY3LCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDc0LCAweDYxLFxuICAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDYxLCAweDczLFxuICAweDc0LCAweDcyLCAweDZmLCAweDc1LCAweDczLCAweDQxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDNlLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDNjLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLFxuICAweDY2LCAweDZmLCAweDcyLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDJlLCAweDczLCAweDcyLCAweDYzLCAweDIwLCAweDNkLCAweDIwLCAweDIyLCAweDJmLCAweDJmLCAweDc2LCAweDY5LCAweDZmLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLFxuICAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDZjLFxuICAweDc5LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDZlLFxuICAweDY0LCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweGMzLCAweGFhLCAweDczLCAweGQ3LFxuICAweGEyLCAweGQ3LCAweDkxLCAweGQ3LCAweGE4LCAweGQ3LCAweDk5LCAweGQ3LCAweGFhLCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGRiLCAweDhjLCAweDY0LCAweDY1LCAweDczLCAweDYxLCAweDcyLCAweDcyLCAweDZmLFxuICAweDZjLCAweDZjLCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY5LCAweDZmLFxuICAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDczLCAweDY1LCAweDcwLFxuICAweDc0LCAweDY5LCAweDY1LCAweDZkLCAweDYyLCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LFxuICAweDcyLCAweDYxLCAweDY0LCAweDZmLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDYzLCAweDY5LCAweGMzLCAweGIzLFxuICAweDZlLCAweDc1LCAweDYyLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDc1LFxuICAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDczLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDYxLCAweDY0LFxuICAweDZmLCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDY1LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDY0LCAweDZmLCAweDczLCAweDYxLCAweDcyLCAweDc0LCAweGMzLFxuICAweGFkLCAweDYzLCAweDc1LCAweDZjLCAweDZmLCAweDczLCAweDY0LCAweDY5LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDc1LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLFxuICAweDcyLCAweDY1LCAweDcwLCAweGMzLCAweGJhLCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDc0LFxuICAweDc1LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDYzLCAweDY5LCAweDY0LCAweDYxLFxuICAweDY0LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDZmLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDZmLCAweDYyLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY5LCAweDY0LCAweDZmLCAweDczLCAweDYxLFxuICAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDZmLCAweDczLCAweDc0LCAweDY1LCAweDYzLCAweDY4LFxuICAweDZlLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweGMzLCAweGFkLCAweDYxLFxuICAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLFxuICAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDc2LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDY0LCAweDZmLCAweDZjLCAweDY5LCAweDY0LCAweDYyLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY5LCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDYzLFxuICAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDY0LCAweDYxLCAweDcyLFxuICAweDY5LCAweDZmLCAweDcwLCAweDZmLCAweDZjLCAweGMzLCAweGFkLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDczLCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDY0LCAweDZmLCAweDYzLCAweDc1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLFxuICAweDY1LCAweDdhLCAweDYxLCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDczLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZlLCAweGMzLCAweGIzLCAweDZkLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDZmLCAweDY0LCAweDcyLCAweGMzLCAweGFkLCAweDY3LCAweDc1LCAweDY1LFxuICAweDdhLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLFxuICAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LFxuICAweDczLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDc1LFxuICAweDcyLCAweDYxLCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY2LFxuICAweDcyLCAweDY1LCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZjLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY1LCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQwLCAweGIxLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJjLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQxLCAweDgwLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJjLCAweGQxLCAweDhmLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGI2LCAweGQwLFxuICAweGI1LCAweGQxLCAweDg3LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQwLCAweGIxLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQwLFxuICAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLFxuICAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQxLCAweDgxLFxuICAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQxLFxuICAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI3LFxuICAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI5LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGI2LCAweGQwLCAweGI4LCAweGQwLCAweGI3LFxuICAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGI2LCAweGQwLCAweGI0LCAweGQxLFxuICAweDgzLCAweGQwLCAweGIxLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweDlmLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI3LCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhjLCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGI0LCAweGQwLCAweGI1LFxuICAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQxLCAweDhmLCAweGQwLCAweGI3LCAweGQwLCAweGI4LCAweGQwLFxuICAweGJkLCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLFxuICAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLFxuICAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLFxuICAweGI1LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI2LCAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGJkLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLFxuICAweGJiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLFxuICAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLFxuICAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI5LCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGI4LCAweGQxLFxuICAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgzLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLCAweGIwLFxuICAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQwLCAweGI0LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweDlmLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJhLFxuICAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQwLFxuICAweGI5LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDgyLFxuICAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI3LCAweGQxLCAweDgzLCAweGQwLCAweGExLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJhLFxuICAweGQxLCAweDgyLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGJjLCAweGQwLFxuICAweDlhLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJkLFxuICAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLFxuICAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGI5LFxuICAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLFxuICAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQxLCAweDhmLFxuICAweGQwLCAweGI3LCAweGQxLCAweDhjLCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgxLFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQwLCAweDlhLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGE0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDgzLFxuICAweGQwLCAweGJjLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQwLCAweGJkLCAweGQwLCAweGJhLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGJmLCAweGQwLCAweGJlLFxuICAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQxLCAweDgyLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQxLFxuICAweDhmLCAweGQxLCAweDg3LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhmLCAweGQxLCAweDg2LFxuICAweGQxLCAweDg2LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQxLCAweDgyLCAweGQxLFxuICAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGJjLFxuICAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQwLCAweGJkLCAweGQwLCAweGJhLCAweGQwLFxuICAweGIwLCAweGQwLCAweDlkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQwLCAweGI5LCAweGQxLCAweDg3LFxuICAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLCAweDg0LCAweGQwLCAweGI4LCAweGQwLCAweGJiLCAweGQxLCAweDhjLFxuICAweGQwLCAweGJjLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJjLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg4LCAweGQwLCAweGI4LCAweGQxLCAweDg1LFxuICAweGQwLCAweGJjLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDgzLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLFxuICAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI1LFxuICAweGQxLCAweDhlLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgwLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQxLCAweDgxLFxuICAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQxLCAweDg2LFxuICAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweDkwLCAweGQxLCAweDgwLFxuICAweGQxLCAweDg1LCAweGQwLCAweGI4LCAweGQwLCAweGIyLCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGFmLCAweGQ5LCAweDg5LCAweGQ4LCAweGE1LCAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LFxuICAweGQ5LCAweDg4LCAweGQ4LCAweGE1LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgyLCAweGQ4LCAweGIzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ5LCAweDgyLCAweGQ5LCAweDg5LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ4LCAweGFlLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGFhLCAweGQ4LCAweGI3LCAweGQ5LCAweDg4LCAweGQ5LCAweDhhLCAweGQ4LCAweGIxLCAweGQ4LCAweGI5LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE1LCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDgxLCAweGQ4LCAweGE3LCAweGQ5LCAweDgyLCAweGQ4LCAweGI3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ4LCAweGJhLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFlLCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDgyLCAweGQ4LCAweGI1LCAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg3LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGI5LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LFxuICAweGQ4LCAweGE5LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLCAweGQ5LCAweDg2LCAweGQ5LCAweDgzLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI3LCAweGQ5LCAweDgxLCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE1LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGFlLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGFjLCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LFxuICAweGQ5LCAweDgyLCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg2LCAweGQ4LCAweGFmLCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGE5LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGI1LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGEzLCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGI0LCAweGQ5LCAweDhhLCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ5LCAweDhhLFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE4LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE5LCAweGQ4LCAweGEzLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDgxLCAweGQ4LCAweGIxLCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE5LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ4LCAweGFkLCAweGQ5LCAweDgxLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ4LFxuICAweGEzLCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGIxLCAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGE2LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgyLCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGEzLCAweGQ4LCAweGFmLCAweGQ4LCAweGE4LCAweGQ5LCAweDg1LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGI3LCAweGQ4LCAweGI5LCAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGI3LCAweGQ5LCAweDgyLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGFjLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGI0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgyLCAweGQ4LCAweGFmLCAweGQ5LCAweDg1LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGI3LCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweDczLCAweDQyLCAweDc5LCAweDU0LFxuICAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDIwLFxuICAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDMxLCAweDcwLCAweDc4LCAweDIwLCAweDczLCAweDZmLCAweDZjLCAweDY5LFxuICAweDY0LCAweDIwLCAweDIzLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLFxuICAweDIyLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcwLCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDZmLCAweDZlLCAweDYzLFxuICAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDNkLCAweDIyLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LFxuICAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDYxLCAweDY0LCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLFxuICAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDY1LFxuICAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZkLFxuICAweDY0LCAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDY5LCAweDZkLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDc0LFxuICAweDY1LCAweDZjLCAweDc5LCAweDNjLCAweDJmLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY3LCAweDNlLCAweDNjLFxuICAweDJmLCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDY1LCAweDc2LFxuICAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LFxuICAweDc0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY4LCAweDZmLFxuICAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDNhLCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLFxuICAweDMwLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDcyLCAweDY1LCAweDcwLCAweDZjLFxuICAweDYxLCAweDYzLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDQxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LCAweDYxLCAweDZjLCAweDczLCAweDcwLCAweDY1LCAweDcyLFxuICAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDY1LCAweDc0LCAweDU0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDI4LCAweDc1LCAweDcyLCAweDZjLCAweDI4LCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDYzLCAweDczLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLFxuICAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI5LCAweDIwLCAweDZlLCAweDZmLFxuICAweDJkLCAweDcyLCAweDY1LCAweDcwLCAweDY1LCAweDYxLCAweDc0LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDJlLCAweDRhLCAweDUwLCAweDQ3LCAweDdjLCAweDc0LCAweDY4LCAweDc1LFxuICAweDZkLCAweDYyLCAweDdjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LFxuICAweDY1LCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDY2LFxuICAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNiLCAweDNjLCAweDZjLCAweDY5LFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDc1LCAweDZlLCAweDY0LCAweDcyLFxuICAweDY1LCAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDBhLCAweDBhLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LFxuICAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDNhLCAweDYyLCAweDZmLCAweDc0LCAweDY4LCAweDNiLFxuICAweDYzLCAweDZmLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc3LCAweDY5LFxuICAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDYyLCAweDY1LFxuICAweDZjLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDNkLCAweDIyLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDVhLCAweDY1LCAweDYxLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDY0LCAweDcwLCAweDY4LCAweDZmLCAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDc5LCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDI2LCAweDZjLCAweDc0LFxuICAweDNiLCAweDczLCAweDc1LCAweDcwLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLFxuICAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDc5LCAweDRlLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZkLCAweDYxLCAweDc4LCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDNkLCAweDIyLFxuICAweDczLCAweDc3LCAweDY5LCAweDc0LCAweDdhLCAweDY1LCAweDcyLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDQ0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDBhLCAweDBhLCAweDQxLCAweDZjLCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDNjLCAweDJmLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDYxLCAweDcyLFxuICAweDY1LCAweDYxLCAweDNlLCAweDc0LCAweDY4LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDYyLCAweDY5LCAweDcyLFxuICAweDY0LCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDI2LFxuICAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDY0LCAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDczLCAweDcwLCAweDY1LFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDZjLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDZjLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDY5LFxuICAweDYzLCAweDczLCAweDBhLCAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLFxuICAweDY5LCAweDZjLCAweDZjLCAweDc1LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY1LCAweDZlLFxuICAweDY3LCAweDY5LCAweDZlLCAweDY1LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY1LCAweDcyLCAweDcyLFxuICAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LFxuICAweDc0LCAweDY1LCAweDY0LCAweDM2LCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLFxuICAweDIyLCAweDczLCAweDYxLCAweDZlLCAweDczLCAweDJkLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDNiLCAweDYzLFxuICAweDYxLCAweDcwLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY0LCAweDY5LCAweDczLFxuICAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLFxuICAweDYyLCAweDY1LCAweDQxLCAweDY2LCAweDY3LCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDRkLCAweDYxLFxuICAweDc0LCAweDY4LCAweDJlLCAweDY2LCAweDZjLCAweDZmLCAweDZmLCAweDcyLCAweDI4LCAweDczLCAweDc1LCAweDcyLCAweDcyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDZjLFxuICAweDczLCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDZmLCAweDYyLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDYxLCAweDZlLCAweDYzLFxuICAweDY1LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDNjLFxuICAweDY4LCAweDMyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDZmLCAweDcyLFxuICAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDIwLCAweDY4LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDc2LCAweDYxLCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDI5LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LFxuICAweDI4LCAweDI5LCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLFxuICAweDQ0LCAweDY1LCAweDczLCAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDNlLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDczLCAweDcwLFxuICAweDY5LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDYxLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDQ0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDJlLCAweDczLFxuICAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDI4LCAweDY1LCAweDYxLCAweDYzLCAweDY4LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDY0LFxuICAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDYyLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDIwLCAweDZlLCAweDZmLFxuICAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDRkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDQ1LCAweDYxLCAweDczLCAweDc0LCAweDNjLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDNjLCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDcwLCAweDY1LCAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLFxuICAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDIwLCAweDQ0LFxuICAweDY1LCAweDYzLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDcyLCAweDcyLCAweDYxLCAweDZlLCAweDY3LFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY2LCAweDYxLCAweDZkLFxuICAweDZmLCAweDc1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZjLFxuICAweDY5LCAweDZkLCAweDY5LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDc4LCAweDYzLFxuICAweDZjLCAweDc1LCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDczLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY5LCAweDY3LCAweDZlLCAweDc0LCAweDc5LCAweDJkLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDY0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDZmLFxuICAweDYzLCAweDc0LCAweDcyLCAweDY5LCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZmLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcwLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDc5LCAweDUyLCAweDY1LCAweDZlLCAweDYxLCAweDY5LCAweDczLCAweDczLCAweDYxLFxuICAweDZlLCAweDYzLCAweDY1LCAweDYxLCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY1LFxuICAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDY3LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDY1LFxuICAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDNjLCAweDY4LCAweDMxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDcwLFxuICAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDY2LCAweDY5LFxuICAweDY1LCAweDZjLCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDNlLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDY1LFxuICAweDczLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDY1LFxuICAweDIwLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJlLCAweDcwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDZlLCAweDc0LCAweDRlLCAweDZmLCAweDY0LCAweDY1LCAweDYxLCAweDY3LCAweDcyLCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDQxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY1LCAweDcyLCAweDczLFxuICAweDc0LCAweDZmLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRkLCAweDZmLFxuICAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDc5LFxuICAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDI4LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDc0LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDNiLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDMxLCAweDMwLCAweDMwLFxuICAweDI1LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDNjLFxuICAweDY4LCAweDMzLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIwLCAweDZmLCAweDZlLFxuICAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDI5LCAweDJlLCAweDYxLCAweDY0LCAweDY0LFxuICAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDRmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY0LCAweDYxLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDYyLCAweDcyLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDBkLCAweDBhLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY0LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDY3LCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDQ5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LFxuICAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDZmLCAweDYzLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDZmLCAweDcyLFxuICAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDY4LCAweDY1LCAweDYxLFxuICAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLFxuICAweDIyLCAweDMxLCAweDYxLCAweDYzLCAweDcyLCAweDZmLCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI5LCAweDNiLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDYzLFxuICAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDQyLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc3LFxuICAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDIxLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDNiLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LFxuICAweDZlLCAweDJkLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY0LCAweDc1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZkLCAweDZkLCAweDY5LCAweDY3LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDY1LCAweDY0LCAweDNjLCAweDY4LCAweDM0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLFxuICAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDY3LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDRlLCAweDZmLCAweDc2LCAweDY1LFxuICAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDcwLCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDYxLCAweDYzLCAweDcxLCAweDc1LCAweDY5LCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDYxLFxuICAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDdiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LFxuICAweDdhLCAweDY1LCAweDNhLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY1LCAweDY1LFxuICAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDZjLCAweDc5LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLFxuICAweDc5LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLFxuICAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDQ5LCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDc0LCAweDIwLCAweDY0LFxuICAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLFxuICAweDcyLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDYyLCAweDY5LCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LFxuICAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDcyLCAweDIwLFxuICAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDIwLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDZmLCAweDZjLCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLFxuICAweDc1LCAweDczLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYzLFxuICAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDczLCAweDYzLCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYzLCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDIwLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LFxuICAweDNkLCAweDIyLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDIwLCAweDczLCAweDYzLCAweDY4LCAweDZmLCAweDZmLCAweDZjLFxuICAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLFxuICAweDZkLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDZmLCAweDcwLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDIwLFxuICAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLFxuICAweDc0LCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDQ2LCAweDY1LCAweDYyLCAweDcyLCAweDc1LCAweDYxLCAweDcyLFxuICAweDc5LCAweDczLCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLFxuICAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDNjLCAweDcwLCAweDYxLCAweDcyLCAweDYxLFxuICAweDZkLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDYxLCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDQ5LCAweDUzLCAweDRmLCAweDJkLCAweDM4LCAweDM4LCAweDM1LCAweDM5LCAweDJkLCAweDMxLCAweDIyLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDY5LCAweDczLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDczLCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLFxuICAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDNhLFxuICAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDczLCAweDY5LCAweDY3LFxuICAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDYzLCAweDY1LCAweDZjLCAweDY1LCAweDYyLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZkLCAweDY5LFxuICAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDJmLCAweDZhLCAweDczLCAweDJmLCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLFxuICAweDc5LCAweDJlLCAweDY5LCAweDczLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDc0LFxuICAweDYxLCAweDYyLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNkLCAweDIyLCAweDY5LCAweDc0LCAweDIwLCAweDYzLFxuICAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDNjLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYyLFxuICAweDY1LCAweDY1LCAweDZlLCAweDBkLCAweDBhLCAweDNjLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDY5LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY4LCAweDY1LCAweDIwLFxuICAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LFxuICAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLFxuICAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDZmLCAweDIwLCAweDczLFxuICAweDYxLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDQ1LCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY1LFxuICAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYyLFxuICAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDcwLCAweDY4LCAweDZmLFxuICAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDcwLCAweDY4LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDY2LCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDUyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLFxuICAweDZmLCAweDY2LCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLCAweDY5LCAweDZjLCAweDc5LFxuICAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDc0LCAweDY1LFxuICAweDYzLCAweDY4LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDZjLCAweDY1LCAweDYxLCAweDc2LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDYxLFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY2LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDY5LCAweDc0LFxuICAweDc5LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDY1LCAweDZkLCAweDcwLCAweDY4LCAweDYxLFxuICAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDcyLCAweDY1LFxuICAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY4LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDIwLCAweDczLCAweDYxLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDY2LCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY0LCAweDY1LFxuICAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDc0LCAweDIwLCAweDY5LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDY2LFxuICAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDNlLCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDczLCAweDNhLCAweDZkLCAweDY1LCAweDcyLCAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDc1LCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDczLCAweDY1LCAweDc0LCAweDQ5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDZjLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDZlLCAweDIwLCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU5LFxuICAweDZmLCAweDcyLCAweDZiLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDBhLFxuICAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDQ1LFxuICAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLFxuICAweDYzLCAweDYxLCAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDUzLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDcyLCAweDIyLCAweDNlLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDRkLFxuICAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDcyLCAweDY5LFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMyLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDZkLCAweDY5LCAweDc4LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDc4LFxuICAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY1LCAweDY0LCAweDc1LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LFxuICAweDY5LCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDJmLFxuICAweDQ0LCAweDU0LCAweDQ0LCAweDIwLCAweDU4LCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDZlLCAweDYzLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDc3LCAweDZmLCAweDc1LFxuICAweDZjLCAweDY0LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDIwLCAweDZjLCAweDY1LFxuICAweDY3LCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDJlLCAweDY5LCAweDZlLCAweDZlLFxuICAweDY1LCAweDcyLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY3LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDQxLCAweDY3LCAweDcyLCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDYxLCAweDYzLCAweDY4LCAweDIwLCAweDc0LCAweDZmLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDc0LCAweDc5LCAweDY1LCAweDYxLFxuICAweDcyLCAweDczLCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDJjLCAweDczLCAweDYxLCAweDZlLCAweDczLFxuICAweDJkLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDUwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLFxuICAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDYyLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LCAweDYxLCAweDZjLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDczLFxuICAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZjLCAweDYxLFxuICAweDY5LCAweDZkLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LFxuICAweDYyLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LFxuICAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDZlLCAweDY5LFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDcyLCAweDc5LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDZmLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDczLCAweDc0LCAweDY5LCAweDZjLCAweDZjLCAweDYzLCAweDYxLCAweDZlLFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDZmLCAweDQ3LCAweDRkLCAweDU0LCAweDUzLCAweDc0LFxuICAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDQxLCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJjLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LFxuICAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDYyLFxuICAweDZmLCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc1LFxuICAweDY5LCAweDczLCAweDY4LCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDc0LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDRkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDY1LFxuICAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDZlLCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLFxuICAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDIwLFxuICAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDY5LCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDczLCAweDYzLFxuICAweDcyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDY0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDZjLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDYyLCAweDYxLFxuICAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDYxLFxuICAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLFxuICAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDY5LCAweDY3LCAweDY4LCAweDY1LCAweDczLCAweDc0LFxuICAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc5LCAweDIwLCAweDY0LCAweDZmLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDc1LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDY4LCAweDZmLFxuICAweDcyLCAweDc0LCAweDJkLCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLFxuICAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDZjLCAweDY5LCAweDc0LCAweDc0LFxuICAweDZjLCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZkLCAweDZkLFxuICAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJjLCAweDNjLCAweDJmLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLFxuICAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMzLCAweDQ5LCAweDZlLCAweDY0LFxuICAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDJkLCAweDczLFxuICAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDJlLCAweDIwLCAweDQxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LFxuICAweDY4LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZmLFxuICAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDczLCAweDc0LCAweDYxLCAweDcyLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDZmLCAweDcyLFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDYxLCAweDc0LFxuICAweDY1LCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDY4LFxuICAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDNjLCAweDJmLCAweDZmLFxuICAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDBkLCAweDBhLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY1LCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDZlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDY5LCAweDZjLCAweDZjLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLFxuICAweDYyLCAweDY1LCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDY5LCAweDZlLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LFxuICAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDczLCAweDc1LFxuICAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDYxLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDczLCAweDczLCAweDY5LFxuICAweDcwLCAweDcwLCAweDY5LCAweDcwLCAweDZmLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYyLFxuICAweDY1LCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDc3LCAweDY4LCAweDYxLFxuICAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc3LCAweDczLCAweDY5LCAweDc0LCAweDc1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDU0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDU0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDc0LCAweDZkLCAweDZmLFxuICAweDczLCAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY5LFxuICAweDczLCAweDY1LCAweDczLCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZkLCAweDZlLCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZjLCAweDc1LFxuICAweDY3LCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDNmLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDY1LCAweDY0LCAweDQ4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDc2LCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDRkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LFxuICAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDNjLFxuICAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDU0LCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLFxuICAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZkLCAweDYxLFxuICAweDY0LCAweDY1LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDY1LCAweDZkLFxuICAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDUwLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY5LCAweDYxLCAweDZlLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDZmLCAweDIwLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc1LFxuICAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDY5LFxuICAweDZjLCAweDc5LCAweDQ5LCAweDZlLCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDJjLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLFxuICAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDczLCAweDc1LCAweDYyLCAweDY0LFxuICAweDY5LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDc0LFxuICAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDZjLFxuICAweDc5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDZjLCAweDc5LCAweDZmLFxuICAweDc1LCAweDc0LCAweDYyLCAweDcyLCAweDY1LCAweDYxLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDczLCAweDc0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYxLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDZlLCAweDczLCAweDNhLFxuICAweDZmLCAweDY3LCAweDNkLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LFxuICAweDQzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZkLCAweDYxLFxuICAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDZlLCAweDc1LFxuICAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LFxuICAweDIyLCAweDNlLCAweDBhLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDc0LFxuICAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDYxLCAweDYyLCAweDY1LCAweDYzLFxuICAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LCAweDc1LFxuICAweDZjLCAweDIwLCAweDYxLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDZlLFxuICAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDYxLCAweDZkLFxuICAweDZmLCAweDZlLCAweDY3LCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLFxuICAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDNiLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDc5LCAweDJjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LFxuICAweDY0LCAweDc0LCAweDZmLCAweDIwLCAweDZiLCAweDY1LCAweDY1LCAweDcwLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLFxuICAweDY1LCAweDc0LCAweDc0LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDZjLCAweDY5LCAweDc2LFxuICAweDY1LCAweDIwLCAweDYyLCAweDY5LCAweDcyLCAweDc0LCAweDY4LCAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LFxuICAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDQzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDYzLCAweDc1LCAweDc0LCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDNiLFxuICAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYxLCAweDZjLFxuICAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDc5LCAweDYxLCAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDczLFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDQyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDIyLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDcxLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LFxuICAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDIwLFxuICAweDJmLCAweDNlLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDQ1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDBkLCAweDBhLFxuICAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLCAweDQzLCAweDZmLCAweDZlLCAweDc2LFxuICAweDY1LCAweDcyLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LFxuICAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LFxuICAweDNkLCAweDIyLCAweDMxLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDZjLFxuICAweDc5LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDYzLCAweDY5LCAweDc0LCAweDY5LCAweDdhLFxuICAweDY1LCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDczLFxuICAweDNhLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDNjLCAweDc0LFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDc2LCAweDYxLCAweDZjLCAweDY5LFxuICAweDY0LCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDY0LFxuICAweDZmLCAweDc3LCAweDZlLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LFxuICAweDczLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDZkLFxuICAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDZmLCAweDY0LCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc3LFxuICAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIyLCAweDNlLCAweDc0LCAweDY4LFxuICAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc5LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY2LCAweDY5LCAweDZlLCAweDYxLFxuICAweDZjLCAweDZjLCAweDc5LCAweDYxLCAweDIwLCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDBkLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDY2LCAweDYxLCAweDczLFxuICAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLFxuICAweDY5LCAweDZkLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc3LFxuICAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDcyLCAweDIyLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDYyLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLFxuICAweDY1LCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDc5LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDY4LCAweDY1LCAweDY5LCAweDcyLCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDQ0LCAweDc1LCAweDcyLFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LFxuICAweDI5LCAweDdiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDIwLFxuICAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDZlLCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNhLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LFxuICAweDY1LCAweDZlLCAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDY0LCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDZjLCAweDY5LCAweDYyLCAweDcyLCAweDY5LCAweDc1LCAweDZkLCAweDYxLFxuICAweDczLCAweDczLCAweDc1LCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDIwLFxuICAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDZlLCAweDY1LCAweDY1LCAweDY0LCAweDczLFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDZmLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLFxuICAweDc1LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDYxLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY5LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY5LCAweDY1LCAweDczLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDY1LCAweDY0LCAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLCAweDczLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJkLCAweDY0LCAweDYxLCAweDc5LCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDZmLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LFxuICAweDYzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LFxuICAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLFxuICAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY0LFxuICAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc3LFxuICAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDYyLCAweDc1LCAweDc0LFxuICAweDIwLCAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDZmLCAweDZlLCAweDRkLCAweDZmLCAweDc1LFxuICAweDczLCAweDY1LCAweDRmLCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLFxuICAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDc5LCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDIwLFxuICAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDYxLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDc0LCAweDczLFxuICAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDZkLCAweDc1LCAweDYzLFxuICAweDY4LCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDcyLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDYxLCAweDY0LCAweDZmLCAweDcwLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDYzLCAweDY4LCAweDY5LCAweDZjLFxuICAweDY0LCAweDcyLCAweDY1LCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDUwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLFxuICAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDczLCAweDc3LCAweDYxLCAweDcyLCAweDIwLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYyLFxuICAweDc5LCAweDIwLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDcyLCAweDY5LCAweDY1LFxuICAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDY5LCAweDZmLCAweDc1LCAweDczLFxuICAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY1LCAweDc4LFxuICAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDJlLCAweDc0LCAweDZmLCAweDIwLCAweDZkLFxuICAweDYxLCAweDZiLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLCAweDczLFxuICAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LCAweDY5LCAweDc0LCAweDZmLCAweDcyLFxuICAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LCAweDJlLCAweDUzLCAweDJlLCAweDcyLFxuICAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDcyLCAweDZmLFxuICAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDZmLCAweDZlLCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LFxuICAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDMxLCAweDczLCAweDc0LCAweDIwLCAweDQ1LCAweDYxLCAweDcyLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDYzLFxuICAweDc1LCAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDcwLCAweDcyLCAweDY5LFxuICAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDJmLCAweDc0LCAweDY5LCAweDc0LFxuICAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDYzLCAweDYxLFxuICAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY4LCAweDY5LCAweDczLFxuICAweDY1LCAweDc4LCAweDcwLCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY0LCAweDQ2LCAweDYxLCAweDc2LFxuICAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDY5LCAweDc0LCAweDY5LCAweDdhLCAweDY1LCAweDZlLCAweDczLFxuICAweDY4LCAweDY5LCAweDcwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LFxuICAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDc0LCAweDZmLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLFxuICAweDZkLCAweDY5LCAweDZlLCAweDc1LCAweDczLCAweDNiLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLFxuICAweDc0LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDc1LFxuICAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDZjLCAweDYxLCAweDc5LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLFxuICAweDMwLCAweDIyLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYyLCAweDZmLCAweDZmLFxuICAweDZiLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDY2LFxuICAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLFxuICAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LFxuICAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDYxLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDc3LCAweDY1LFxuICAweDcyLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYyLCAweDc0LCAweDZlLCAweDY0LCAweDYxLCAweDc5LCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LFxuICAweDZlLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDRjLCAweDZmLCAweDcyLCAweDY0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDc3LCAweDZlLFxuICAweDQ1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDcwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLCAweDYyLCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY5LCAweDZmLCAweDcyLFxuICAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLFxuICAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLFxuICAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYyLCAweDZjLCAweDYxLCAweDYzLCAweDZiLFxuICAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LFxuICAweDI3LCAweDczLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDY3LCAweDZmLCAweDc2LCAweDY1LFxuICAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDU3LCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDZlLCAweDJjLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDYzLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDA5LCAweDA5LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDc0LCAweDY1LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LFxuICAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDZmLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDY1LFxuICAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc3LCAweDY5LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDc5LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDYxLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJjLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDZmLFxuICAweDc1LCAweDZjLCAweDY0LCAweDYzLCAweDZmLCAweDcwLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDYxLFxuICAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYxLCAweDYzLCAweDYzLFxuICAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LFxuICAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY1LCAweDczLCAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLFxuICAweDY5LCAweDNlLCAweDZmLCAweDY2LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDY5LCAweDY2LCAweDY1LFxuICAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDY5LCAweDY1LCAweDY0LCAweDYzLCAweDZjLFxuICAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDU3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDcwLCAweDcyLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRjLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDZjLCAweDc5LCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDY5LFxuICAweDZlLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDYxLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDZjLFxuICAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc3LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNlLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDczLCAweDY1LCAweDZjLCAweDc2LCAweDY1LCAweDczLFxuICAweDJjLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDY4LCAweDY1LCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDcyLCAweDYxLFxuICAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDcyLCAweDY1LFxuICAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDQzLCAweDY4LCAweDY5LFxuICAweDZjLCAweDY0LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDUzLCAweDZmLFxuICAweDZkLCAweDY1LCAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY0LFxuICAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDY1LCAweDc3LCAweDczLCAweDZjLCAweDY1LCAweDc0LCAweDc0LFxuICAweDY1LCAweDcyLCAweDczLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY0LCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDZjLCAweDY5LCAweDc2LFxuICAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDY1LCAweDczLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDZlLFxuICAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDc0LFxuICAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDcwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc4LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDIwLCAweDY5LCAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDQ3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZlLCAweDZmLCAweDZkLCAweDc5LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLFxuICAweDczLCAweDc0LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDc5LFxuICAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLFxuICAweDY0LCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY4LCAweDYxLCAweDcwLCAweDczLCAweDcyLCAweDY5LCAweDczLCAweDY1LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcyLCAweDczLFxuICAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDZlLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc3LCAweDY4LFxuICAweDY5LCAweDYzLCAweDY4LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDJlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDZjLFxuICAweDYyLCAweDc1LCAweDY5LCAweDZjLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDYxLFxuICAweDZlLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDYxLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDU0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDY1LCAweDc4LCAweDc0LFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNkLCAweDMyLCAweDIwLCAweDdjLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDczLCAweDc0LCAweDZmLFxuICAweDcyLCAweDc5LCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLFxuICAweDc0LCAweDZmLCAweDcwLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDcyLFxuICAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDQzLCAweDY4LCAweDcyLCAweDY5LFxuICAweDczLCAweDc0LCAweDY5LCAweDYxLCAweDZlLCAweDY0LCAweDY1LCAweDYzLCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDIwLCAweDc0LFxuICAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDU0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDZkLCAweDY1LCAweDcyLFxuICAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDIwLCAweDY1LCAweDc2LCAweDY5LCAweDY0LFxuICAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY5LCAweDZlLFxuICAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDJlLCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLFxuICAweDZkLCAweDJmLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDZkLCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDcyLCAweDY1LCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDJjLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLFxuICAweDY1LCAweDZkLCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDIwLCAweDY2LCAweDY1LCAweDc3LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDZkLCAweDc1LFxuICAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDc3LCAweDZmLCAweDcyLCAweDZiLCAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDYxLCAweDZjLCAweDY5LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZlLCAweDY5LCAweDYxLCAweDJjLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDYxLFxuICAweDczLCAweDIwLCAweDYxLCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDJlLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDZkLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDA5LCAweDA5LCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDYxLFxuICAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLFxuICAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LFxuICAweDcwLCAweDZjLCAweDYxLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDA5LCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLFxuICAweDJmLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY3LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDczLFxuICAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDYxLFxuICAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJlLCAweDQzLCAweDZmLCAweDZlLCAweDczLFxuICAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDY1LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDY0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDZmLCAweDIwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDYxLFxuICAweDIwLCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDc1LCAweDZlLCAweDYzLFxuICAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY1LFxuICAweDczLCAweDc0LCAweDc3LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDYyLCAweDY1LFxuICAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDc3LCAweDZmLCAweDY5LCAweDczLCAweDIwLCAweDYxLFxuICAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDJjLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZkLCAweDczLCAweDY1LCAweDZjLCAweDc2LCAweDY1LCAweDczLCAweDJlLCAweDcxLCAweDc1LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLFxuICAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLFxuICAweDY1LCAweDIwLCAweDYxLCAweDczLCAweDc0LCAweDZmLCAweDIwLCAweDZhLCAweDZmLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU0LCAweDY4LFxuICAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDIwLCAweDczLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLFxuICAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDQ5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDRmLCAweDY2LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDY4LCAweDY5LFxuICAweDczLCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDIwLCAweDY5LCAweDczLCAweDY5LCAweDczLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LFxuICAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDY3LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLFxuICAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LFxuICAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDc4LFxuICAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDJjLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDU3LCAweDY1LCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDczLFxuICAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDczLCAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDZlLCAweGM0LCAweDhkLFxuICAweDY5LCAweDZlLCAweDYxLCAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY5LCAweDZmLFxuICAweDczLCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLFxuICAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDYzLCAweDZlLCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweGMzLCAweGFkLCAweDYxLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDYzLCAweDY5LCAweGMzLFxuICAweGIzLCAweDZlLCAweDcwLCAweDc1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLFxuICAweDYxLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDY1LCAweGMzLCAweGIxLCAweDYxLCAweDYzLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY3LCAweDZmLCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDczLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LFxuICAweDcyLCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDYxLCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY1LCAweDY3LCAweGMzLCAweGFkLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDcwLCAweDcyLCAweDY5LFxuICAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LFxuICAweDYzLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY5LCAweDYxLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDY0LCAweDYxLCAweDY0LFxuICAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDYzLCAweDcyLFxuICAweDY1LCAweDYzLCAweDY5LCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDYzLCAweDY1LFxuICAweDczLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDczLCAweDc1LCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDYyLCAweDY5LCAweDcyLCAweDczLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDYzLCAweDY5LFxuICAweGMzLCAweGIzLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY5LCAweDYyLCAweDZjLCAweDY1LFxuICAweDczLCAweDY1LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LFxuICAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDZmLCAweDZjLFxuICAweDc1LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY0LCAweDYxLCAweDZjLCAweDYxLFxuICAweDZhLCAweDYxLCAweDcyLCAweDYxLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDY0LFxuICAweDZmLCAweDczLCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLCAweDY5LCAweDY0LCAweDYxLCAweDY0LFxuICAweDYzLCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDY2LCAweDZmLFxuICAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDY2LCAweGMzLCAweGFkLCAweDYxLCAweDYxLCAweDc1LCAweDc0LCAweDZmLFxuICAweDcyLCAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDZlLCAweDY5LFxuICAweDY1LCAweDcyLCAweGMzLCAweGFkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LFxuICAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDY1LCAweDc0LCAweDY1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY1LFxuICAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDYzLCAweDY5LCAweDY0LCAweDZmLCAweDczLCAweDY5LCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLFxuICAweDZjLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDYxLCAweDc2LCAweDY1LCAweDY3LCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY5LCAweDY0LFxuICAweDYxLCAweDY0LCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNhLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDc5LCAweDNhLFxuICAweDIyLCAweDIwLCAweDNhLCAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDYxLFxuICAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDczLCAweDcwLCAweDY1LFxuICAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJmLCAweDJmLCAweDNjLCAweDIxLFxuICAweDViLCAweDQzLCAweDQ0LCAweDQxLCAweDU0LCAweDQxLCAweDViLCAweDBhLCAweDRmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLFxuICAweDY5LCAweDdhLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LFxuICAweDYyLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMwLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDY4LCAweDY1LFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDY0LCAweDY1LCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDJkLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDNjLCAweDZjLCAweDYxLCAweDYyLCAweDY1LCAweDZjLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDNkLFxuICAweDIyLCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDNjLCAweDJmLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDJmLFxuICAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDc3LCAweDY5LFxuICAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDJlLCAweDZmLCAweDcwLCAweDY1LCAweDZlLCAweDI4LCAweDIwLCAweDIxLCAweDY5LFxuICAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDNiLCAweDYxLCAweDcwLCAweDcwLCAweDZjLFxuICAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLFxuICAweDY3LCAweDZmLCAweDZmLCAweDY3LCAweDZjLCAweDY1LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDNjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLFxuICAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDMxLFxuICAweDM4LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDYxLCAweDZlLFxuICAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDczLFxuICAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDYyLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LFxuICAweDczLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY5LCAweDc2LCAweDY5LCAweDZjLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMxLCAweDM5LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDMyLCAweDMwLCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLFxuICAweDc5LCAweDJkLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLFxuICAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDJmLFxuICAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDZlLCAweDZmLFxuICAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI3LCAweDc1LCAweDZlLFxuICAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDI3LCAweDI5LCAweDQ2LCAweDc1LCAweDcyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDJjLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LFxuICAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDZlLCAweDY1LCAweDcyLCAweDQ4LFxuICAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDNkLCAweDIwLCAweDcwLCAweDcyLCAweDY5LCAweDZmLCAweDcyLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDcyLCAweDYxLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDZmLCAweDZlLCAweDY1LCAweDY3LCAweDZmLCAweDc0LCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLFxuICAweDczLCAweDUzLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDY2LCAweDcyLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc1LCAweDZlLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDUwLFxuICAweDY1LCAweDZlLCAweDZlLCAweDczLCAweDc5LCAweDZjLCAweDc2LCAweDYxLCAweDZlLCAweDY5LCAweDYxLCAweDQxLCAweDczLFxuICAweDIwLCAweDYxLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDJjLCAweDNjLCAweDY4LCAweDc0LFxuICAweDZkLCAweDZjLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDI2LCAweDZjLCAweDc0LCAweDNiLFxuICAweDJmLCAweDczLCAweDc1LCAweDcwLCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDYxLCAweDY0LFxuICAweDY1LCAweDZjLCAweDcwLCAweDY4LCAweDY5LCAweDYxLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDI5LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDc0LFxuICAweDZmLCAweDcwLCAweDNhLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDZjLCAweDY3LCAweDY1LCAweDc0LCAweDQxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LFxuICAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLFxuICAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDY1LCAweDczLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNkLCAweDY2LFxuICAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDdiLCAweDczLCAweDc1LCAweDYyLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZjLCAweDJlLCAweDY0LCAweDc0LFxuICAweDY0LCAweDIyLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDY3LCAweDY1LCAweDZmLCAweDY3LCAweDcyLFxuICAweDYxLCAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDQzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LFxuICAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI3LCAweDJjLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDY3LCAweDcyLCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDc1LFxuICAweDcyLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDIwLCAweDMxLFxuICAweDYxLCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDQ1LCAweDZlLFxuICAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDY5LCAweDY2LCAweDcyLFxuICAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDZkLCAweDZmLFxuICAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDQ0LCAweDY1LCAweDZkLCAweDZmLCAweDY3LCAweDcyLCAweDYxLFxuICAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDczLCAweDI5LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDY0LCAweDY1LCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LCAweDY3LCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDczLCAweDYxLCAweDc0LCAweDY5LCAweDczLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDQ1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDI4LCAweDU1LCAweDUzLCAweDI5LCAweDYxLCAweDcwLFxuICAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDQzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDI4LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZlLCAweDczLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDJlLCAweDIwLCAweDQ4LFxuICAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZjLFxuICAweDZjLCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDYyLCAweDY5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDNkLCAweDIyLCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNiLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDc3LCAweDY1LFxuICAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDcyLCAweDYxLCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LFxuICAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc0LCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDY1LCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNiLFxuICAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDZhLCAweDc1LFxuICAweDcyLCAweDY5LCAweDczLCAweDY0LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIyLCAweDNlLCAweDNjLCAweDYxLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDQ5LCAweDZlLCAweDIwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJiLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDczLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDYzLCAweDc0LCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDZjLCAweDc5LCAweDcyLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDNkLCAweDIyLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDI2LCAweDY3LCAweDc0LCAweDNiLFxuICAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLFxuICAweDYzLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDZlLCAweDYxLCAweDc2LFxuICAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDNlLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDY1LCAweDZlLCAweDczLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDY4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLFxuICAweDIyLCAweDYxLCAweDZjLCAweDZjLCAweDIyLCAweDIwLCAweDc2LCAweDY5LCAweDZmLCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDc0LCAweDcyLFxuICAweDc1LCAweDY1LCAweDNiLCAweDUzLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDJmLCAweDJmLCAweDQ1LCAweDRlLFxuICAweDIyLCAweDIwLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDc2LCAweDY1LCAweDcyLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY0LCAweDY5LFxuICAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDQzLCAweDY4LCAweDYxLFxuICAweDZkLCAweDcwLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDYzLCAweDYxLCAweDcwLCAweDYxLFxuICAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLFxuICAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLCAweDdkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDYxLCAweDZlLCAweDY5LCAweDc0LCAweDc5LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDUwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDY0LFxuICAweDI4LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LCAweDc1LCAweDZlLFxuICAweDY1LCAweDZkLCAweDcwLCAweDZjLCAweDZmLCAweDc5LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDJmLCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDZmLCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLFxuICAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDQ3LFxuICAweDc1LCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDc3LCAweDY4LCAweDY1LCAweDZjLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDYxLCAweDY3LCAweDYxLFxuICAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDJjLCAweDBhLCAweDJlLCAweDZlLCAweDZmLFxuICAweDZlLCAweDc0LCAweDZmLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDZmLCAweDYyLCAweDczLCAweDY1LCAweDcyLCAweDc2LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDY2LCAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNhLCAweDIwLCAweDMxLFxuICAweDcwLCAweDc4LCAweDIwLCAweDdiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LFxuICAweDNhLCAweDMxLCAweDc0LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDMwLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMxLFxuICAweDZkLCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ5LFxuICAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDY5LFxuICAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDY3LCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDYxLCAweDYzLCAweDY4LCAweDY5LFxuICAweDY1LCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDRhLCAweDYxLCAweDc2LCAweDYxLCAweDUzLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY4LFxuICAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDQyLCAweDcyLCAweDZmLCAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDczLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLCAweDc0LFxuICAweDY0LCAweDNlLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LCAweDcyLCAweDIyLCAweDNlLFxuICAweDBhLCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLFxuICAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDI3LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDZlLCAweDYxLCAweDc2LFxuICAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDYxLCAweDZjLCAweDY2LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDZjLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LFxuICAweDYxLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LFxuICAweDY1LCAweDIyLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDNhLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDNkLCAweDIyLFxuICAweDY0LCAweDY1LCAweDZjLCAweDY5LCAweDYyLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDYxLFxuICAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDc2LFxuICAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDcyLCAweDY1LFxuICAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZkLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc2LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLFxuICAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDRhLCAweDY1LCAweDczLCAweDc1LCAweDczLCAweDIwLFxuICAweDQzLCAweDY4LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDUwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY0LCAweDY5LCAweDczLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LFxuICAweDZlLCAweDNhLCAweDcyLCAweDJjLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDI4LCAweDI5LCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDY1LFxuICAweDczLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLFxuICAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLFxuICAweDZjLCAweDcwLCAweDY4LCAweDYxLCAweDYyLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDczLFxuICAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDZkLCAweDYxLCAweDZlLCAweDc5LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDNhLFxuICAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNiLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLFxuICAweDY1LCAweDc0LCAweDA5LCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDZlLCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDYyLCAweDZmLCAweDcyLCAweDY4LCAweDZmLCAweDZmLCAweDY0LCAweDYxLFxuICAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDcyLCAweDY1LFxuICAweDY0LCAweDc1LCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDRlLCAweDZmLCAweDZlLCAweDY1LFxuICAweDc0LCAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDJjLCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDY1LFxuICAweDcyLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDI4LCAweDczLCAweDY1LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDc3LFxuICAweDI5LCAweDJlLCAweDIyLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDYxLCAweDcyLCAweDYzLFxuICAweDY4LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLFxuICAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDA5LCAweDA5LFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDBhLCAweDA5LCAweDA5LFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDYxLCAweDYzLCAweDYzLCAweDY1LFxuICAweDZjLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ4LCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDQ2LCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDY1LCAweDcyLCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJmLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLFxuICAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LFxuICAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDdiLFxuICAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDNhLCAweDc0LCAweDcyLFxuICAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDczLCAweDZmLCAweDZkLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZlLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY1LCAweDc4LCAweDcwLCAweDZjLCAweDZmLFxuICAweDY5LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDZkLCAweDY1LCAweDcyLCAweDY3LCAweDY1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LFxuICAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQxLCAweDIwLCAweDQ4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZlLCAweDc0LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDNlLCAweDNjLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYyLFxuICAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDYxLFxuICAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDZlLCAweDY1LCAweDY5LFxuICAweDY3LCAweDY4LCAweDYyLCAweDZmLCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDc3LCAweDY5LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDA5LCAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDUzLCAweDZmLCAweDc2LCAweDY5LCAweDY1LCAweDc0LCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDYzLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LFxuICAweDY3LCAweDY1LCAweDY0LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLFxuICAweDYyLCAweDY1LCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLFxuICAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LFxuICAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQ5LCAweDZlLFxuICAweDIwLCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDZjLCAweDY5LFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYxLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LCAweDY5LCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDZlLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDYzLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDZjLCAweDQyLCAweDc1LCAweDYyLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDY0LFxuICAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDcyLCAweDIwLCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZlLFxuICAweDIwLCAweDUzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDQ5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDZjLCAweDZjLCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDcyLCAweDYzLCAweDNkLFxuICAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDcwLCAweDc4LCAweDNiLCAweDIwLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLFxuICAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDY4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDcyLCAweDY5LFxuICAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LFxuICAweDc0LCAweDc5LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY4LFxuICAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDczLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDcyLCAweDY1LCAweDIwLFxuICAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLFxuICAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDYxLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDZmLCAweDY1LCAweDc4LCAweDcwLCAweDYxLCAweDZlLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZlLCAweDZmLCAweDc3LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDIwLCAweDYxLCAweDczLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDYxLCAweDcyLFxuICAweDZjLCAweDc5LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLFxuICAweDUzLCAweDYzLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDYxLCAweDc2LCAweDY5LCAweDYxLCAweDZlLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLFxuICAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDRlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDczLCAweDczLFxuICAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDYxLCAweDZjLCAweDZmLCAweDY3LCAweDZmLCAweDc1LFxuICAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LFxuICAweDcyLCAweDY1LCAweDY0LCAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDBhLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLFxuICAweDZlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDYxLFxuICAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDc0LFxuICAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDIyLCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDcwLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDY0LCAweDZlLCAweDZmLCAweDIwLFxuICAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDcwLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LFxuICAweDZlLCAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY4LCAweDY1LFxuICAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLFxuICAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDYxLCAweDZjLFxuICAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY5LCAweDZlLFxuICAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQzLCAweDZmLCAweDZlLFxuICAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LFxuICAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY5LCAweDZlLFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDc4LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDZjLCAweDc5LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDNhLCAweDIwLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLFxuICAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLFxuICAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDc0LFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDZlLFxuICAweDIwLCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDY4LCAweDZmLCAweDc3LFxuICAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDc5LFxuICAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDcyLCAweDY1LCAweDZhLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDczLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDZjLCAweDY1LCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LFxuICAweDI5LCAweDdiLCAweDQ5LCAweDc0LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLFxuICAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDY3LCAweDcyLCAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDYzLCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LFxuICAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDQxLCAweDcyLFxuICAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDc0LFxuICAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDYxLCAweDcyLCAweDcyLCAweDYxLFxuICAweDZlLCAweDY3LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LFxuICAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDZmLFxuICAweDc1LCAweDY3LCAweDY4LCAweDc4LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDYyLCAweDZmLCAweDZjLCAweDY0LFxuICAweDNiLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDcyLFxuICAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDY5LCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDU3LCAweDZmLCAweDcyLCAweDZjLFxuICAweDY0LCAweDIwLCAweDU3LCAweDYxLCAweDcyLCAweDIwLCAweDQ5LCAweDQ5LCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDY5LFxuICAweDZkLCAweDZmLCAweDZlLCAweDY5LCAweDYxLCAweDZjLCAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLFxuICAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LFxuICAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDQzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDY2LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDZkLFxuICAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDUwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDYyLCAweDY1LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDIyLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLFxuICAweDczLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDZjLCAweDY5LCAweDZiLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY5LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc1LFxuICAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDZlLFxuICAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDc1LCAweDcwLFxuICAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LFxuICAweDYzLCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNhLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYyLFxuICAweDY1LCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDY1LCAweDYzLFxuICAweDYxLCAweDZkLCAweDY1LCAweDYzLCAweDYxLCAweDZjLCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LFxuICAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDNlLFxuICAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY1LCAweDc2LFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDc4LCAweDcwLFxuICAweDZjLCAweDYxLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDc2LCAweDY5LFxuICAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDYxLFxuICAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLFxuICAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDczLCAweDQ5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDcyLCAweDYxLFxuICAweDZlLCAweDY3LCAweDY1LCAweDZmLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDY4LCAweDYxLCAweDZjLCAweDY2LCAweDIwLFxuICAweDZmLCAweDY2LCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLCAweDcwLFxuICAweDIyLCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDJjLCAweDNjLFxuICAweDJmLCAweDZlLCAweDZmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDczLCAweDYxLFxuICAweDY5LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc3LCAweDY4LCAweDY5LCAweDZjLFxuICAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDc5LCAweDcwLCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLFxuICAweDZmLCAweDcwLCAweDY4LCAweDY1LCAweDcyLCAweDczLCAweDcwLCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDY1LCAweDY0LFxuICAweDIwLCAweDYyLCAweDc5LCAweDY5LCAweDZlLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLFxuICAweDc0LCAweDZmLCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDc0LCAweDY1LFxuICAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDZhLFxuICAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDcyLCAweDZmLFxuICAweDYyLCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDYyLCAweDY1LCAweDc0LFxuICAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDZmLCAweDcyLFxuICAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDQ5LCAweDZlLCAweDY0LCAweDY5LCAweDYxLCAweDZlLCAweDIwLCAweDRmLCAweDYzLCAweDY1LCAweDYxLCAweDZlLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDc3LFxuICAweDZmLCAweDcyLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDI3LCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc5LCAweDY1LCAweDYxLFxuICAweDcyLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDU0LCAweDY4LCAweDY5LCAweDczLFxuICAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDYxLCAweDczLCAweDc1LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDY1LFxuICAweDZkLCAweDY1LCAweDZjLCAweDc5LCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLFxuICAweDBhLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDczLCAweDcwLFxuICAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNlLCAweDczLCAweDc1LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LFxuICAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDU0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDY0LCAweDY5LCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLFxuICAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDIwLCAweDYxLCAweDZlLFxuICAweDY0LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLFxuICAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY3LCAweDY5LCAweDc2LFxuICAweDY1LCAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDZlLFxuICAweDY0LCAweDY5LCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDczLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBhLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLFxuICAweDYxLCAweDczLCAweDY5LCAweDczLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDZmLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLFxuICAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLFxuICAweDczLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDIyLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYxLCAweDc1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZlLCAweDZmLCAweDcyLCAweDc0LFxuICAweDY4LCAweDc3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDIwLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDZjLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLFxuICAweDYyLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZlLCAweDc0LFxuICAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDZjLCAweDY1LCAweDY2LCAweDc0LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc1LFxuICAweDcwLCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDY0LCAweDY1LCAweDcwLFxuICAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDY0LCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDZlLFxuICAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLFxuICAweDZlLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDczLFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LFxuICAweDIwLCAweDYxLCAweDc0LCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDY1LCAweDc4LCAweDY1LCAweDYzLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDQ4LCAweDc1LCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDUyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDZkLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLFxuICAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcyLCAweDY1LCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDc1LCAweDYzLCAweDYzLFxuICAweDY1LCAweDY1LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDY0LCAweDY1LCAweDY2LCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY2LCAweDcyLFxuICAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc5LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYxLFxuICAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDc1LCAweDY0LCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDNjLCAweDZjLFxuICAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDc1LFxuICAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDNhLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY5LCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY1LCAweDc4LCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIyLFxuICAweDNlLCAweDUyLCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLCAweDY1LFxuICAweDY1LCAweDcxLCAweDc1LCAweDYxLCAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ5LFxuICAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDJjLCAweDY4LCAweDZmLFxuICAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDczLCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDYxLCAweDZlLCAweDY0LCAweDIwLFxuICAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc3LCAweDY5LCAweDY2LCAweDY1LCAweDI4LCAweDYxLCAweDZjLCAweDczLCAweDZmLFxuICAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDNlLCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc2LCAweDY1LCAweDY0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDczLCAweDY1LCAweDY1LCAweDZkLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LFxuICAweDYxLCAweDc2LCAweDY1LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZlLFxuICAweDZmLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDY0LFxuICAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDQ5LCAweDZlLFxuICAweDIwLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDJjLCAweDYyLCAweDcyLCAweDZmLFxuICAweDYxLCAweDY0LCAweDYzLCAweDYxLCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDY3LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDZjLCAweDY1LFxuICAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDYxLCAweDcyLFxuICAweDc5LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLFxuICAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDZjLCAweDc5LCAweDczLCAweDY1LCAweDc0LCAweDU0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDc2LCAweDY5LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDI4LCAweDI5LCAweDNiLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDZmLCAweDc1LCAweDczLCAweDZjLCAweDc5LCAweDcyLCAweDY1LFxuICAweDcxLCAweDc1LCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDc2LCAweDZmLFxuICAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDYxLCAweDZlLCAweDIwLCAweDY1LFxuICAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJjLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZlLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDc3LCAweDY5LCAweDczLCAweDY1LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLFxuICAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLFxuICAweDcwLCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LFxuICAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJjLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDY1LFxuICAweDZjLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY3LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY0LFxuICAweDc1LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDcyLCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDYzLCAweDZmLCAweDcyLFxuICAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDcwLFxuICAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDY1LCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDY0LCAweDY1LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZmLCAweDc3LCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDc5LCAweDczLFxuICAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDcyLCAweDY1LFxuICAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDU0LCAweDY1LCAweDc4LCAweDc0LCAweDc3LCAweDYxLCAweDczLFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDYzLCAweDY1LFxuICAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDczLCAweDc1LCAweDZkLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDYxLCAweDcyLCAweDY5LFxuICAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY5LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY1LFxuICAweDZlLCAweDczLCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDYxLCAweDc0LCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDc3LCAweDZmLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDYzLFxuICAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDUzLCAweDY1LFxuICAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLFxuICAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDZkLCAweDYxLCAweDcyLCAweDY3LFxuICAweDY5LCAweDZlLCAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDMxLCAweDJmLCAweDVlLCAweDVjLCAweDczLCAweDJiLFxuICAweDdjLCAweDVjLCAweDczLCAweDJiLCAweDI0LCAweDJmLCAweDY3LCAweDY1LCAweDI5LCAweDdiLCAweDc0LCAweDY4LCAweDcyLFxuICAweDZmLCAweDc3LCAweDIwLCAweDY1LCAweDdkLCAweDNiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDYxLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDczLCAweDY1LCAweDcwLCAweDYxLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDIwLFxuICAweDYxLCAweDZlLCAweDY0LCAweDc3LCAweDY4LCAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDA5LFxuICAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDcwLCAweDcyLFxuICAweDZmLCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDY1LCAweDc0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LFxuICAweDczLCAweDY4LCAweDIwLCAweDI4LCAweDU1LCAweDRiLCAweDI5LCAweDY1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDIwLCAweDI4LCAweDU1LCAweDUzLCAweDI5LCAweGQwLCAweDljLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLFxuICAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGExLCAweGQxLCAweDgwLCAweGQwLCAweGJmLCAweGQxLCAweDgxLFxuICAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGJmLCAweGQxLCAweDgxLCAweGQwLFxuICAweGJhLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGJmLCAweGQxLCAweDgxLCAweGQwLCAweGJhLFxuICAweGQwLCAweGJlLCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGE5LCAweGU2LCAweGFkLCAweGEzLCAweGU5LCAweGFiLCAweDk0LCAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LFxuICAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLCAweDkzLCAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LCAweGU3LFxuICAweGI5LCAweDgxLCAweGU0LCAweGJkLCAweDkzLCAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LCAweGU2LCAweDljLFxuICAweDg5LCAweGU5LCAweDk5LCAweDkwLCAweGU1LCAweDg1LCAweGFjLCAweGU1LCAweDhmLCAweGI4LCAweGU0LCAweGJhLCAweGJhLFxuICAweGU2LCAweGIwLCAweDkxLCAweGU2LCAweDk0LCAweGJmLCAweGU1LCAweGJhLCAweDljLCAweGU5LCAweDk4LCAweGJmLCAweGU5LFxuICAweDg3LCAweDhjLCAweGU1LCAweGI3LCAweGI0LCAweGU1LCAweGI3LCAweGI0LCAweGU3LCAweGE0LCAweGJlLCAweGU0LCAweGJjLFxuICAweDlhLCAweGU0LCAweGI4LCAweGJiLCAweGU0LCAweGI5LCAweDg5LCAweGU2LCAweDkzLCAweDhkLCAweGU0LCAweGJkLCAweDljLFxuICAweGU3LCAweGIzLCAweGJiLCAweGU3LCAweGJiLCAweDlmLCAweGU2LCAweDk0LCAweGJmLCAweGU3LCAweGFkLCAweDk2LCAweGU2LFxuICAweGIzLCAweDk1LCAweGU4LCAweGE3LCAweDg0LCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY4LCAweDY1LCAweDcyLCAweDcyLCAweDYxLCAweDZkLCAweDY5LCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweGMzLCAweGIzLCAweDZlLCAweDY5LFxuICAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDYzLCAweDY5LCAweGMzLCAweGIzLFxuICAweDZlLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDY0LCAweDZmLCAweDczLFxuICAweDYzLCAweDZmLCAweDZlLCAweDZmLCAweDYzLCAweDY5LCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDY0LCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweGMzLCAweGExLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDcyLCAweDY1LCAweDZjLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDY0LCAweDZmLCAweDczLCAweDY0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDc0LCAweDcyLCAweDYxLCAweDYyLCAweDYxLCAweDZhLFxuICAweDYxLCAweDY0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDYxLFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDYxLCAweDc5LCAweDc1LCAweDZlLCAweDc0LCAweDYxLCAweDZkLCAweDY5LFxuICAweDY1LCAweDZlLCAweDc0LCAweDZmLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDYxLCAweDY0LCAweDZmLCAweDRjLCAweDY5LFxuICAweDYyLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweGMzLCAweGExLCAweDYzLCAweDc0LCAweDY1LCAweDZlLFxuICAweDZmLCAweDczLCAweDY4LCAweDYxLCAweDYyLCAweDY5LCAweDc0LCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LFxuICAweDczLCAweDYzLCAweDc1LCAweDZkLCAweDcwLCAweDZjLCAweDY5LCAweDZkLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc1LCAweDcyLCAweDYxLCAweDZlLCAweDc0LCAweDY1LCAweDczLCAweDY0LFxuICAweDY5LCAweDczLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDYzLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDY1LCAweDZjLCAweDY1LFxuICAweDYzLCAweDc0LCAweDcyLCAweGMzLCAweGIzLCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDYxLCAweDcwLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDZmLFxuICAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDYxLCAweDY0LCAweDZmLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZjLFxuICAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcyLCAweDY1LCAweDYxLCAweDZjLCAweDY5LCAweDdhLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDc1LCAweDc0LCAweDY5LCAweDZjLCAweDY5LCAweDdhLCAweDYxLCAweDYzLFxuICAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYxLCAweDY1LCAweDZlLCAweDY2LCAweDY1LCAweDcyLCAweDZkLCAweDY1LCAweDY0LCAweDYxLCAweDY0LFxuICAweDY1LCAweDczLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDZmLFxuICAweDczLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY5LCAweDYxLCAweDczLFxuICAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDc1LFxuICAweDYyLCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY3LCAweDZmLCAweDcyLCAweDY5LCAweDYxLCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGEwLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLFxuICAweGIxLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDhiLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQwLCAweGJiLFxuICAweGQxLCAweDhjLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGI1LFxuICAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLFxuICAweGI4LCAweGQxLCAweDg1LCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQwLCAweGIwLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLFxuICAweDgxLCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweGEwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLFxuICAweDljLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGI0LFxuICAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJlLFxuICAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJiLFxuICAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweDljLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJhLFxuICAweGQwLCAweGIyLCAweGQxLCAweDhiLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLFxuICAweGI1LCAweGQwLCAweGI5LCAweGQwLCAweDljLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIyLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQxLFxuICAweDhiLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLFxuICAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI2LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDgzLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQxLCAweDhjLCAweGQwLCAweDllLCAweGQwLCAweGI0LFxuICAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLFxuICAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQxLCAweDgzLCAweGQwLCAweGIwLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLFxuICAweGQxLCAweDg5LCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLFxuICAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGIzLFxuICAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLFxuICAweGI4LCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI5LFxuICAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDgzLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDg1LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDg4LCAweGQwLCAweGJlLCAweGQwLCAweGJmLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGJhLCAweGQwLCAweGIwLFxuICAweGQwLCAweGI2LCAweGQwLCAweGI0LCAweGQxLCAweDhiLCAweGQwLCAweGI5LCAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQwLFxuICAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQxLCAweDgzLFxuICAweGQwLCAweGJmLCAweGQwLCAweGJmLCAweGQxLCAweDhiLCAweGQwLCAweGIyLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLFxuICAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGJmLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGIyLCAweGQxLCAweDhiLFxuICAweGQwLCAweGI5LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLFxuICAweDhjLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQwLCAweGIzLCAweGQwLCAweGI4LFxuICAweGQwLCAweGJmLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLFxuICAweGIxLCAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDgyLCAweGQwLCAweGJhLCAweGQxLCAweDgzLFxuICAweGQwLCAweGJmLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLFxuICAweGJiLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJjLFxuICAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg1LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLFxuICAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGEwLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGIwLCAweGQwLCAweGEyLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQxLCAweDgxLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJjLCAweGQwLCAweGIyLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI5LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJmLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJhLCAweGQxLFxuICAweDgxLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQwLCAweGI2LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQxLCAweDgxLFxuICAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGJmLCAweGQwLFxuICAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQwLCAweGJlLCAweGQxLCAweDg5LCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGI5LFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDgzLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJlLFxuICAweGQxLCAweDg5LCAweGQxLCAweDhjLCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI2LCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQxLCAweDhiLCAweGQwLCAweGJiLCAweGQwLCAweGJhLFxuICAweGQwLCAweGI4LCAweGQwLCAweGIxLCAweGQxLCAweDhiLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJjLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQxLCAweDgyLCAweGQwLCAweGExLFxuICAweGQwLCAweGI1LCAweGQwLCAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJjLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGIwLFxuICAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLFxuICAweGJiLCAweGQwLCAweGIwLCAweGQwLCAweGI5LCAweGQwLCAweGJkLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLCAweDgwLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDg0LCAweGQwLCAweGI4LCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJjLCAweGQxLCAweDhiLCAweGQxLCAweDgzLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJkLFxuICAweGQxLCAweDhmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLFxuICAweDg1LCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLFxuICAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQxLCAweDhlLCAweGQxLFxuICAweDhmLCAweGQwLCAweGJkLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDhmLCAweGQwLCAweGJjLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQxLCAweDhjLCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDg1LCAweGQwLCAweGI0LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJkLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI5LCAweGQwLCAweGI3LCAweGQwLCAweGJkLCAweGQwLFxuICAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGJiLFxuICAweGQxLCAweDhjLCAweGQwLCAweGI3LCAweGQxLCAweDhmLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLFxuICAweDgzLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGEyLCAweGQwLCAweGI1LCAweGQwLCAweGJmLCAweGQwLCAweGI1LFxuICAweGQxLCAweDgwLCAweGQxLCAweDhjLCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDhmLCAweGQxLFxuICAweDg2LCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQxLCAweDg5LCAweGQwLCAweGI4LCAweGQxLCAweDgyLFxuICAweGQxLCAweDhiLCAweGQwLCAweDliLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQxLCAweDg4LCAweGQwLCAweGI4LCAweGQwLFxuICAweGI1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIyLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LFxuICAweDhiLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDg3LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweDlmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFkLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDgxLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlmLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweDg1LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDlkLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDlmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LFxuICAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDk3LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGEwLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI3LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI1LFxuICAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLFxuICAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LFxuICAweDlhLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLFxuICAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDljLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDlmLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIyLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDg1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE1LCAweDgwLCAweGUwLFxuICAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LFxuICAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFjLFxuICAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFjLFxuICAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDhjLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE1LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGQ4LCAweGFhLCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGI3LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ4LCAweGE4LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGI3LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDgxLFxuICAweGQ4LCAweGFkLCAweGQ4LCAweGE5LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LCAweGQ4LCAweGI1LFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIyLCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE5LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ4LCAweGFmLCAweGQ4LCAweGE4LFxuICAweGQ4LCAweGIxLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ5LCAweDg4LCAweGQ5LCAweDgyLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIwLCAweGQ5LCAweDg3LCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFkLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFkLCAweGQ5LCAweDgyLCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDgyLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDgyLCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGFkLCAweGQ5LCAweDgxLCAweGQ5LCAweDg4LCAweGQ4LCAweGI4LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGI0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg3LCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGIxLCAweGQ4LCAweGEzLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDgyLCAweGQ4LCAweGIxLCAweGQ4LCAweGEyLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LFxuICAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFkLCAweGQ5LFxuICAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg1LCAweGQ4LCAweGFjLCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGFkLCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg2LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LCAweGQ4LCAweGI3LCAweGQ5LFxuICAweDgxLCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ4LCAweGI3LCAweGQ5LCAweDhhLCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LCAweGQ5LCAweDhhLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ5LFxuICAweDgyLCAweGQ5LCAweDhhLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDg4LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGI3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI0LCAweGQ4LCAweGFlLCAweGQ4LCAweGI1LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGFiLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGIyLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGFlLCAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGE5LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg3LCAweGQ4LCAweGFmLFxuICAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ4LCAweGFlLCAweGQ5LCAweDg4LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFmLCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGJhLCAweGQ4LCAweGIxLCAweGQ5LCAweDgyLCAweGQ4LCAweGFhLCAweGQ4LCAweGI1LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LFxuICAweGI4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDNkLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDIyLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDY5LCAweDY3LCAweDc1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDcwLCAweDZlLCAweDY3LCAweDIyLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDRkLCAweDYxLCAweDc0LCAweDY4LCAweDJlLCAweDcyLCAweDYxLCAweDZlLFxuICAweDY0LCAweDZmLCAweDZkLCAweDI4LCAweDI5LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDZmLFxuICAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDUzLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDYzLCAweDY5LCAweDcyLCAweDYzLCAweDc1LCAweDZkLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDJlLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDQzLFxuICAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDI4LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDc1LFxuICAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDIyLCAweDNlLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJlLFxuICAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDYyLCAweDYxLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRkLCAweDYxLCAweDczLCAweDczLCAweDYxLCAweDYzLCAweDY4LCAweDc1LFxuICAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDZiLCAweDZlLCAweDZmLFxuICAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDcwLCAweDcyLCAweDZmLCAweDZlLCAweDc1LCAweDZlLCAweDYzLCAweDY5LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDNhLCAweDIzLCAweDY2LCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLFxuICAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDIwLCAweDZkLCAweDY5LCAweDczLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY1LCAweDZmLCAweDc1LCAweDczLCAweDI2LCAweDZjLCAweDc0LCAweDNiLCAweDJmLCAweDZkLCAweDYxLCAweDc0LFxuICAweDY4LCAweDI2LCAweDY3LCAweDc0LCAweDNiLCAweDcwLCAweDczLCAweDc5LCAweDYzLCAweDY4LCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDIyLCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZkLCAweDY1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDUzLCAweDc1LCAweDcwLCAweDcyLCAweDY1LCAweDZkLCAweDY1LCAweDIwLFxuICAweDQzLCAweDZmLCAweDc1LCAweDcyLCAweDc0LCAweDZmLCAweDYzLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDQxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDJjLCAweDRlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDZkLFxuICAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDcwLCAweDc4LCAweDNiLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LFxuICAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDQ1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LFxuICAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc0LCAweDZmLCAweDRjLCAweDZmLCAweDc3LCAweDY1LCAweDcyLFxuICAweDQzLCAweDYxLCAweDczLCAweDY1LCAweDI4LCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDZlLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDJjLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDZkLCAweDYxLCAweDc4LCAweDZjLCAweDY1LCAweDZlLFxuICAweDY3LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDY5LCAweDZmLCAweDc1LFxuICAweDczLCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDRkLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY1LCAweDcyLCAweDcyLFxuICAweDYxLCAweDZlLCAweDY1LCAweDYxLCAweDZlLCAweDY1LCAweDc4LCAweDc0LCAweDcyLCAweDYxLCAweDZmLCAweDcyLCAweDY0LFxuICAweDY5LCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDYxLCAweDczLCAweDczLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDcyLCAweDY5LCAweDY3LFxuICAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDcyLCAweDY1LCAweDY4LCAweDY1LFxuICAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLFxuICAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDJlLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDUzLCAweDYxLCAweDZlLCAweDIwLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDI4LCAweDI5LCAweDdiLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLFxuICAweDIyLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDZmLCAweDcwLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDczLCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDI4LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLFxuICAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDcyLCAweDc0LFxuICAweDY5LCAweDYzLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLFxuICAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQ3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDIwLCAweDQyLCAweDcyLFxuICAweDY5LCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY4LCAweDZmLCAweDZjLFxuICAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDNiLCAweDIwLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLFxuICAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDIwLCAweDZhLCAweDc1LCAweDczLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDc2LCAweDYxLCAweDY5LFxuICAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDBhLCAweDA5LCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLFxuICAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDI3LCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDIyLFxuICAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LFxuICAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDcwLCAweDZmLCAweDcwLFxuICAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLFxuICAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNhLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDNjLCAweDY5LCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDYyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDZmLCAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc4LCAweDY5LCAweDZkLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDcwLCAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDYxLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLFxuICAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDcwLCAweDcyLCAweDY1LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDdjLCAweDI2LFxuICAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDJmLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDcyLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDc2LCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LFxuICAweDNkLCAweDIyLCAweDZmLCAweDY3LCAweDNhLCAweDJmLCAweDc4LCAweDJkLCAweDczLCAweDY4LCAweDZmLCAweDYzLCAweDZiLFxuICAweDc3LCAweDYxLCAweDc2LCAweDY1LCAweDJkLCAweDY0LCAweDY1LCAweDZkLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDRlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDZjLCAweDY1LCAweDczLCAweDczLCAweDJjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDQxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDYyLCAweDZmLCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZlLFxuICAweDZmLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLFxuICAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDJjLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLFxuICAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDczLCAweDc0LCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY5LFxuICAweDZlLCAweDY3LCAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDYxLCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDc1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDY5LCAweDY0LCAweDY0LCAweDZjLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LFxuICAweDY5LCAweDY0LCAweDc1LCAweDYxLCAweDZjLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDY4LCAweDZmLCAweDZkLCAweDZmLCAweDczLCAweDY1LCAweDc4LCAweDc1LFxuICAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDZkLCAweDYxLCAweDZlLCAweDc1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LFxuICAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDczLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDZlLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDNhLCAweDIwLCAweDIzLCAweDZjLCAweDY1LCAweDZlLCAweDY3LCAweDc0LCAweDY4LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDIwLCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNlLCAweDcyLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDcwLCAweDcyLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDcwLCAweDZjLFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDQ5LCAweDZlLCAweDY0LCAweDZmLCAweDJkLCAweDQ1LCAweDc1LCAweDcyLFxuICAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDc2LCAweDc1LCAweDZjLCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU5LCAweDZmLCAweDcyLCAweDZiLFxuICAweDIwLCAweDQzLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDczLFxuICAweDY1LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDc1LCAweDcyLCAweDczLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LFxuICAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LFxuICAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LFxuICAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLFxuICAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc0LCAweDY1LCAweDYzLCAweDY4LCAweDZlLCAweDZmLCAweDZjLCAweDZmLFxuICAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDJlLCAweDcyLCAweDY1LCAweDZkLCAweDZmLCAweDc2LCAweDY1LCAweDQzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDI4LCAweDYyLCAweDcyLCAweDYxLCAweDZlLCAweDYzLCAweDY4LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLFxuICAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDQ5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDIwLCAweDczLFxuICAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDJlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDczLFxuICAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDY0LFxuICAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LFxuICAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDcwLCAweDcwLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDY4LCAweDcyLFxuICAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDZlLFxuICAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDZjLCAweDY1LFxuICAweDczLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLFxuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLFxuICAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDcwLCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJmLCAweDZhLFxuICAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDc0LCAweDc3LCAweDZmLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LFxuICAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDZjLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDcyLCAweDYxLCAweDZlLFxuICAweDY3LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDYxLCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZkLCAweDY0LFxuICAweDYxLCAweDczLCAweDY4LCAweDNiLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDYxLCAweDYzLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLFxuICAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDczLCAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDIwLCAweDYxLCAweDczLCAweDc5LCAweDZlLCAweDYzLCAweDIwLCAweDNkLCAweDIwLFxuICAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDNiLCAweDcwLCAweDcyLCAweDZmLCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDczLFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDczLCAweDY1LCAweDY1LCAweDZkLCAweDczLCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDYxLCAweDcyLFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDc0LCAweDZmLCAweDZmLCAweDZiLCAweDIwLCAweDcwLCAweDZjLCAweDYxLFxuICAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDc0LFxuICAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDY3LCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDIwLCAweDY0LCAweDY1LFxuICAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDQ1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY2LFxuICAweDc1LCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDc2LCAweDY5LCAweDcyLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDMyLCAweDMwLCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJjLCAweDcwLCAweDcyLCAweDZmLCAweDY2LCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDczLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLFxuICAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLFxuICAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDQ0LCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLFxuICAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDU0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLFxuICAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDZkLCAweDYxLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDNhLCAweDQzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LFxuICAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDJjLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDc1LFxuICAweDZjLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDI3LCAweDczLCAweDIwLFxuICAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY2LCAweDY5LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDI4LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDIyLCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDYyLCAweDYxLCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDY5LFxuICAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDZmLCAweDIwLCAweDcyLCAweDY1LCAweDY0LCAweDc1LCAweDYzLFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZhLCAweDc1LCAweDcyLCAweDY5LCAweDczLCAweDY0LCAweDY5LCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc4LCAweDY5LCAweDZkLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDc1LCAweDczLCAweDY1LFxuICAweDZmLCAweDc1LCAweDc0LCAweDNkLCAweDIyLCAweDRlLCAweDY1LCAweDc3LCAweDIwLCAweDU0LCAweDY1LCAweDczLCAweDc0LFxuICAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLFxuICAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDY2LCAweDY5LCAweDZjLCAweDZkLCAweDIwLCAweDY0LCAweDY5LCAweDcyLFxuICAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDJkLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDJlLFxuICAweDY0LCAweDc0LCAweDY0LCAweDIyLCAweDNlLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLFxuICAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYyLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDc1LCAweDZlLCAweDcwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDY0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLFxuICAweDYyLCAweDZmLCAweDZjLCAweDY0LCAweDNiLCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDA5LCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDZjLCAweDY5LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLFxuICAweDZjLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDZjLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLFxuICAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLFxuICAweDZjLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLFxuICAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLCAweDY1LFxuICAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDQ3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDZlLCAweDZmLCAweDc0LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLFxuICAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY5LCAweDc0LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDA5LCAweDA5LCAweDNjLCAweDc1LCAweDZjLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc2LCAweDY5LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDY5LCAweDdhLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDMxLCAweDM5LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJjLCAweDcwLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDIwLFxuICAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY5LCAweDZlLCAweDc1LCAweDY1LCAweDY0LCAweDZmLCAweDYzLCAweDYzLCAweDc1LCAweDcwLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDZkLCAweDZmLCAweDc1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDYxLCAweDZjLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDYyLCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDZjLFxuICAweDY1LCAweDY2LCAweDc0LCAweDNhLCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDYxLCAweDczLCAweDUzLCAweDZmLCAweDZkLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDY0LCAweDc1LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDcyLCAweDY1LCAweDcwLCAweDc1LCAweDc0LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDY0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDcwLCAweDYxLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDQ5LCAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LFxuICAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDJkLCAweDYzLFxuICAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY3LCAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLFxuICAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDJjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDcwLCAweDcwLCAweDZmLFxuICAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDQ0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDZkLCAweDYxLFxuICAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDZjLCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDZjLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDYxLFxuICAweDZjLCAweDc3LCAweDYxLCAweDc5LCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDc1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLCAweDcwLFxuICAweDY4LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDYzLCAweDY5LCAweDc2LCAweDY5LCAweDZjLCAweDY5LCAweDdhLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LFxuICAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LFxuICAweDQ5LCAweDZlLCAweDY0LCAweDY1LCAweDc4LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLFxuICAweDIyLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDRkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDc0LFxuICAweDcyLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDZmLFxuICAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LFxuICAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDZjLCAweDY5LCAweDc2LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY1LCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDQ2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDUyLCAweDY1LCAweDc2LCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDc5LCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLFxuICAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LFxuICAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDczLCAweDc1LCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDNlLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDczLCAweDc0LFxuICAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc3LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDY5LCAweDc0LCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDc0LFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLFxuICAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDIwLCAweDY1LCAweDc4LFxuICAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDY5LCAweDZlLFxuICAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZjLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLCAweDY5LCAweDdhLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDYxLCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLFxuICAweDc1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDczLCAweDc0LCAweDYxLCAweDZlLFxuICAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDYxLFxuICAweDY0LCAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLFxuICAweDY1LCAweDIwLCAweDc0LCAweDc3LCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDc2LCAweDY5LCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDYyLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDczLCAweDY1LCAweDcyLCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDYxLFxuICAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDY2LCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDY0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDY5LCAweDYxLCAweDZlLCAweDYzLCAweDY1LFxuICAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LFxuICAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMyLCAweDMwLCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJlLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLFxuICAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDZjLCAweDZmLCAweDYxLCAweDY0LCAweDQzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDc0LCAweDYyLCAweDY1LCAweDYxLCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDY4LCAweDYxLFxuICAweDZjLCAweDY2LCAweDIwLCAweDZmLCAweDY2LCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LFxuICAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDY5LCAweDc0LCAweDY1LCAweDYzLFxuICAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDYyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LFxuICAweDcyLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDQ5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDc2LCAweDYxLCAweDZjLCAweDYxLCAweDc1LCAweDc0LCAweDY4LCAweDZmLCAweDcyLCAweDY5LCAweDc0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDQ2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc1LCAweDYzLCAweDYzLFxuICAweDY1LCAweDY1LCAweDY0LCAweDY1LCAweDY0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDcxLFxuICAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDY0LCAweDY2LCAweDcyLCAweDY1LCAweDY1LCAweDIwLCAweDczLCAweDZmLCAweDY2LFxuICAweDc0LCAweDc3LCAweDYxLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDc0LFxuICAweDcyLCAweDZmLCAweDc5LCAweDY1LCAweDY0LCAweDYxLCAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LCAweDY0LFxuICAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDYxLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDc3LFxuICAweDY1LCAweDcyLCAweDY2LCAweDc1LCAweDZjLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYxLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LFxuICAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LFxuICAweDY4LCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZjLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDZlLCAweDZmLFxuICAweDc1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDYzLFxuICAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQ0LCAweDRmLCAweDIwLCAweDRlLCAweDRmLCAweDU0LCAweDIwLFxuICAweDQxLCAweDRjLCAweDU0LCAweDQ1LCAweDUyLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDczLCAweDJmLCAweDNmLFxuICAweDczLCAweDZmLCAweDcyLCAweDc0LCAweDNkLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDY0LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDYxLCAweDczLCAweDY5LFxuICAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLFxuICAweDc1LCAweDZkLCAweDZkLCAweDY1LCAweDcyLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDZjLCAweDc5LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDY4LCAweDIwLCAweDYxLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDZmLCAweDczLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LFxuICAweDZjLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDczLFxuICAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDZmLCAweDc1LCAweDczLCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDUzLCAweDZmLCAweDc1LCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDY2LFxuICAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDY1LCAweDY2LCAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LFxuICAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDIwLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LFxuICAweDIwLCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDNiLCAweDIwLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLFxuICAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDc1LCAweDcyLFxuICAweDY1LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDNiLCAweDIwLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDNhLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLFxuICAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLFxuICAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDYxLCAweDY4LCAweDYxLCAweDczLCAweDYxLCAweDIwLCAweDRkLFxuICAweDY1LCAweDZjLCAweDYxLCAweDc5LCAweDc1LCAweDZlLCAweDZmLCAweDcyLCAweDczLCAweDZiLCAweDIwLCAweDYyLCAweDZmLFxuICAweDZiLCAweDZkLCAweGMzLCAweGE1LCAweDZjLCAweDZlLCAweDZmLCAweDcyLCAweDczLCAweDZiLCAweDIwLCAweDZlLCAweDc5LFxuICAweDZlLCAweDZmLCAweDcyLCAweDczLCAweDZiLCAweDczLCAweDZjLCAweDZmLCAweDc2LCAweDY1LCAweDZlLCAweGM1LCAweGExLFxuICAweGM0LCAweDhkLCAweDY5LCAweDZlLCAweDYxLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDYzLFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYzLCAweDYxLCAweDZjLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLFxuICAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDIyLCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDYxLCAweDZkLCAweDYyLCAweDY5LFxuICAweDY3LCAweDc1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLFxuICAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI3LCAweDJjLCAweDIwLCAweDI3LCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLFxuICAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDZkLCAweDc1LFxuICAweDZjLCAweDc0LCAweDYxLCAweDZlLCAweDY1LCAweDZmLCAweDc1LCAweDczLCAweDZjLCAweDc5LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZlLCAweDczLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQ5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDZkLFxuICAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDNhLFxuICAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDNlLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY5LCAweDZlLCAweDY2LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLFxuICAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDNhLCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDNkLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDI1LCAweDMzLCAweDQxLCAweDI1LCAweDMyLCAweDQ2LCAweDI1LCAweDMyLCAweDQ2LCAweDNjLCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDZkLCAweDY1LCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLCAweDJmLCAweDY2LFxuICAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDdkLFxuICAweDI5LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLFxuICAweDJlLCAweDczLCAweDY1LCAweDc0LCAweDQxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LFxuICAweDI4LCAweDQxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNkLCAweDIwLCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQxLCAweDcyLCAweDcyLCAweDYxLCAweDc5LFxuICAweDI4LCAweDI5LCAweDNiLCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLFxuICAweDJkLCAweDNlLCAweDBkLCAweDBhLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDYyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDU1LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLFxuICAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDIyLCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLFxuICAweDNiLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDJmLCAweDY2LCAweDYxLCAweDc2LCAweDY5LCAweDYzLFxuICAweDZmLCAweDZlLCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDNlLCAweDNkLCAweDI3LCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDI3LCAweDIwLCAweDY5LCAweDY0LCAweDY1LCAweDZlLFxuICAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJjLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDNjLCAweDZjLFxuICAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDYxLFxuICAweDZlLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBhLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDIyLCAweDIwLCAweDBhLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDY1LCAweDZlLCAweDY0LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDJmLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDJlLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDIwLCAweDQxLCAweDYzLCAweDYzLFxuICAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LCAweDY5LCAweDY0LFxuICAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDZjLFxuICAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LFxuICAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDJlLFxuICAweDYxLCAweDcwLCAweDcwLCAweDcyLCAweDZmLCAweDc4LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LFxuICAweDIwLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNkLCAweDIyLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDJkLCAweDJkLCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LFxuICAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLCAweDUwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDRkLCAweDY5LFxuICAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDIwLCAweDNjLFxuICAweDYxLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY4LFxuICAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDZmLCAweDZlLCAweDZkLFxuICAweDZmLCAweDc1LCAweDczLCAweDY1LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY3LCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDcyLFxuICAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDcyLCAweDY5LCAweDY3LCAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LFxuICAweDY0LCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY5LCAweDc2LCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LFxuICAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDNjLCAweDIxLCAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLFxuICAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDBhLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDczLCAweDIwLFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDZjLCAweDYxLCAweDYzLFxuICAweDY1LCAweDY4LCAweDZmLCAweDZjLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDc0LCAweDY5LCAweDc0LCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLFxuICAweDNhLCAweDIwLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDIwLFxuICAweDdiLCAweDQyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDJkLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDJlLCAweDY0LCAweDc0LCAweDY0LFxuICAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDZlLCAweDY5LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDJmLCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLFxuICAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDYxLFxuICAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDI5LCAweDNiLFxuICAweDIwLCAweDZhLCAweDczLCAweDJlLCAweDY5LCAweDY0LCAweDIwLCAweDNkLCAweDIwLCAweDY5LCAweDY0LCAweDIyLCAweDIwLFxuICAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDIyLCAweDcyLFxuICAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDUyLCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDQzLCAweDYxLCAweDc0LCAweDY4LCAweDZmLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDZlLCAweDc0LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDZkLCAweDY5LFxuICAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDY1LCAweDZmLFxuICAweDZjLCAweDZmLCAweDY3LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDcwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDIwLFxuICAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDYzLCAweDZmLCAweDZkLCAweDYyLFxuICAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDZkLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDYzLCAweDcyLFxuICAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDc3LFxuICAweDJlLCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDI4LFxuICAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLFxuICAweDNlLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLFxuICAweDJmLCAweDYxLCAweDQ5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDJjLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDZjLCAweDY1LFxuICAweDY2LCAweDc0LCAweDIyLCAweDIwLCAweDQzLCAweDdhLCAweDY1LCAweDYzLCAweDY4LCAweDIwLCAweDUyLCAweDY1LCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDRiLFxuICAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDZmLCAweDZkLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLFxuICAweDZmLCAweDZlLCAweDY0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDJlLCAweDY4LCAweDc0LCAweDZkLCAweDZjLFxuICAweDIyLCAweDIwLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDYzLCAweDZmLCAweDZkLFxuICAweDY1LCAweDczLCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcwLFxuICAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDNjLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLFxuICAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLFxuICAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDI3LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDBhLFxuICAweDNjLCAweDZjLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDI4LCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDZiLFxuICAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDA5LCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLFxuICAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLFxuICAweDc1LCAweDc0LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDcwLCAweDYxLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDcyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLCAweDY2LFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYxLCAweDc0LCAweDc0LCAweDY1LCAweDZkLCAweDcwLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLFxuICAweDIwLCAweDYzLCAweDYxLCAweDcyLCAweDYyLCAweDZmLCAweDZlLCAweDIwLCAweDY0LCAweDY5LCAweDZmLCAweDc4LCAweDY5LFxuICAweDY0LCAweDY1LCAweDBhLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDYxLFxuICAweDcyLCAweDYzLCAweDY4LCAweDJkLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLFxuICAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDNjLCAweDJmLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDU0LCAweDY5LCAweGUxLCAweGJhLFxuICAweGJmLCAweDZlLCAweDY3LCAweDIwLCAweDU2LCAweDY5LCAweGUxLCAweGJiLCAweDg3LCAweDc0LCAweDYzLCAweDY4LCAweDYxLFxuICAweDZlLCAweDY3LCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDMwLFxuICAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDNjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDIyLCAweDIwLCAweDI5LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDNlLCAweDBhLCAweDBhLCAweDQ0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY1LCAweDYzLCAweDYzLCAweDZjLCAweDY1LCAweDczLCAweDY5LCAweDYxLFxuICAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY4LFxuICAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LFxuICAweDc5LCAweDNlLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDY4LCAweDYxLCAweDczLCAweDIwLFxuICAweDZlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDY5LCAweDZlLFxuICAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDYxLFxuICAweDc1LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDY5LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLFxuICAweDY1LCAweDY0LCAweDcwLCAweDY1LCAweDcyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDczLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LFxuICAweDJkLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDY2LCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDZkLCAweDY1LCAweDZkLCAweDYyLFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDc0LCAweDcyLFxuICAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDI3LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDc3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDcyLCAweDIwLCAweDZlLFxuICAweDZmLCAweDc0LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLFxuICAweDZjLCAweDczLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDIwLFxuICAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDYxLCAweDIwLCAweDczLCAweDZkLCAweDYxLCAweDZjLCAweDZjLCAweDIwLCAweDZlLFxuICAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDcwLCAweDYxLFxuICAweDcyLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDYyLCAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJlLCAweDIwLCAweDQ4LCAweDZmLFxuICAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDZlLCAweDY0LFxuICAweDIwLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDQxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYyLFxuICAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDc0LCAweDczLFxuICAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDNjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDNkLCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLFxuICAweDczLCAweDc0LCAweDIyLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLFxuICAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDZjLCAweDY5LCAweDZiLCAweDY1LFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LFxuICAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYxLCAweDZjLFxuICAweDczLCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLFxuICAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc1LFxuICAweDZlLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDZjLCAweDY5LCAweDY3LFxuICAweDZlLCAweDNkLCAweDIyLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNlLCAweDZkLCAweDYxLCAweDZlLFxuICAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDY1LFxuICAweDYxLCAweDcyLCAweDZjLCAweDY5LCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDc3LCAweDYxLFxuICAweDczLCAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBkLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLFxuICAweDcwLCAweDIyLCAweDIwLCAweDY5LCAweDZlLCAweDY4LCAweDYxLCAweDYyLCAweDY5LCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDBkLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDY5LCAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LFxuICAweDcyLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY3LCAweDc1LFxuICAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDZmLCAweDc2LFxuICAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDYxLCAweDIwLFxuICAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LFxuICAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDYyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZjLCAweDZmLFxuICAweDcyLCAweDNhLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDY1LCAweDYyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDZmLCAweDY3LCAweDZlLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQzLCAweDZmLCAweDc1LCAweDZlLCAweDYzLFxuICAweDY5LCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDY0LCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIwLCAweDNjLFxuICAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDQ1LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDYxLFxuICAweDc3LCAweDYxLCAweDc5LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDNiLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNhLCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDIwLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDZlLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLFxuICAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDY3LCAweDY4LFxuICAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDY1LFxuICAweDZlLCAweDY0LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDczLCAweDcwLCAweDYxLFxuICAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDIwLCAweDYxLCAweDZjLFxuICAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDIyLCAweDNjLCAweDJmLFxuICAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDIwLCAweDYxLFxuICAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LFxuICAweDZlLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDU1LCAweDZlLCAweDY5LFxuICAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY5LFxuICAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDU2LCAweDY5LCAweDYzLCAweDY1LCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LFxuICAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLFxuICAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDMxLCAweDcwLCAweDc4LCAweDY1LCAweDc4LCAweDcwLCAweDZjLFxuICAweDYxLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDcyLFxuICAweDY5LCAweDc0LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDA5LFxuICAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZkLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDc0LCAweDZmLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDIwLFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDcwLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDY5LCAweDZlLFxuICAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDczLFxuICAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDI4LFxuICAweDRkLCAweDYxLCAweDc0LCAweDY4LCAweDJlLCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDZmLCAweDZkLCAweDI4LCAweDI5LFxuICAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY1LCAweDZlLFxuICAweDc0LCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDQzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDZmLFxuICAweDcwLCAweDZjLCAweDY1LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LFxuICAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDczLCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMxLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LFxuICAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY5LFxuICAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LFxuICAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDczLCAweDc3LCAweDY4LCAweDY5LCAweDYzLFxuICAweDY4LCAweDIwLCAweDY4LCAweDYxLCAweDY0LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDczLFxuICAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDBhLFxuICAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDczLCAweDIwLCAweDc1LCAweDczLFxuICAweDY1LCAweDY0LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY4LFxuICAweDYxLCAweDc2LCAweDY1LCAweDczLCAweDc1LCAweDYzLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDNhLCAweDYyLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LFxuICAweDcyLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDVmLCAweDY5LCAweDY0LFxuICAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYzLCAweDYxLFxuICAweDcwLCAweDY5LCAweDc0LCAweDYxLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDBkLFxuICAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLFxuICAweDcyLCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDc4LCAweDRkLCAweDRjLCAweDQ4LCAweDc0LCAweDc0LCAweDcwLCAweDUyLCAweDY1LCAweDcxLCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDY1LCAweDcxLFxuICAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDZjLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDY5LCAweDZkLCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDY2LCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc1LCAweDcyLCAweDY2LCAweDYxLCAweDYzLFxuICAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LFxuICAweDY5LCAweDY3LCAweDZlLCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDVmLCAweDczLCAweDY1LFxuICAweDc0LCAweDQ0LCAweDZmLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDY1LCAweDczLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDY5LFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDQ5LCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDZkLCAweDY1LCAweDYxLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY2LFxuICAweDc0LCAweDY1LCAweDcyLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDQ0LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDcyLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY1LCAweDY2LFxuICAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDQzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDY5LFxuICAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDIwLCAweDcyLFxuICAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDNjLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDcwLCAweDY1LFxuICAweDcyLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDI4LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDBkLFxuICAweDY5LCAweDY2LCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDY5LFxuICAweDY2LCAweDcyLCAweDY1LCAweDY3LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDYxLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLFxuICAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDRlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY4LFxuICAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc5LCAweDcwLCAweDY1LCAweDIyLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDQxLCAweDczLCAweDczLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDBhLCAweDNjLCAweDJmLCAweDY4LFxuICAweDY1LCAweDYxLCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDZjLCAweDZmLCAweDYzLFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLFxuICAweDIwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDI4LFxuICAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDc1LFxuICAweDYxLCAweDZjLCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDZlLCAweDc5LCAweDIwLCAweDZmLFxuICAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLFxuICAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLFxuICAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDc1LCAweDcyLFxuICAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDYyLFxuICAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDc0LCAweDZmLCAweDNiLCAweDYzLCAweDZmLCAweDZjLCAweDZmLFxuICAweDcyLCAweDNhLCAweDIzLCAweDY2LCAweDY2LCAweDY2LCAweDdkLCAweDBhLCAweDJlLCAweDBhLCAweDNjLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDY0LCAweDY1LFxuICAweDY2LCAweDY5LCAweDZlLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDNlLFxuICAweDBkLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLFxuICAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLFxuICAweDY1LCAweDY0LCAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LFxuICAweDY4LCAweDNkLCAweDIyLCAweDYzLCAweDY1LCAweDZjLCAweDY1LCAweDYyLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDc1LCAweDY5LCAweDczLCAweDY4LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYyLCAweDc0LCAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDIwLFxuICAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDZmLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNlLCAweDNjLCAweDIxLFxuICAweDViLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDY2LCAweDVkLCAweDJkLCAweDJkLCAweDNlLCAweDBhLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDY5LFxuICAweDZlLCAweDczLCAweDc0LCAweDY1LCAweDYxLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZkLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDZmLCAweDZkLFxuICAweDY1LCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDJmLCAweDczLFxuICAweDY5LCAweDY3LCAweDZlLCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLFxuICAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDBkLFxuICAweDBhLCAweDY1LCAweDZlLCAweDc2LCAweDY5LCAweDcyLCAweDZmLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDYxLFxuICAweDZjLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDY1LCAweDczLCAweDczLCAweDY1LFxuICAweDZlLCAweDc0LCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY4LCAweDYxLCAweDc2LCAweDY1LFxuICAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDZkLCAweDYxLCAweDY0LCAweDY1LCAweDIyLCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDZlLFxuICAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLCAweDczLFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDZjLCAweDY2LCAweDIwLCAweDZmLCAweDY2LFxuICAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDIyLFxuICAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDQ5LCAweDQ5LCAweDJjLCAweDIwLCAweDQ4LCAweDZmLCAweDZjLCAweDc5LCAweDIwLCAweDUyLCAweDZmLFxuICAweDZkLCAweDYxLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDY1LCAweDc4LCAweDcwLCAweDY1LCAweDYzLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LFxuICAweDcyLCAweDIwLCAweDZmLCAweDc3LCAweDZlLCAweDY0LCAweDY1LCAweDY2LCAweDY5LCAweDZlLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDY0LFxuICAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLCAweDIwLCAweDY1LFxuICAweDZlLCAweDczLCAweDc1LCAweDcyLCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDY3LCAweDcyLFxuICAweDY1LCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDYxLCAweDY5LCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLFxuICAweDcyLCAweDY1LCAweDIwLCAweDY2LCAweDcyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LFxuICAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDZlLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LFxuICAweDZlLCAweDIwLCAweDYxLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLFxuICAweDJmLCAweDc1LCAweDZjLCAweDNlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LFxuICAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDY1LCAweDczLCAweDcwLCAweDY1LFxuICAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYyLFxuICAweDc1LCAweDc0LCAweDc0LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LFxuICAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDY0LCAweDNlLCAweDBhLCAweDNjLCAweDZkLFxuICAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDYxLFxuICAweDcyLCAweDcyLCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDYyLCAweDc5LCAweDQ4LFxuICAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLFxuICAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLFxuICAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDYxLCAweDcwLCAweDY5LCAweDc0LCAweDYxLFxuICAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLFxuICAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDc3LCAweDY4LCAweDY5LCAweDYzLCAweDY4LCAweDIwLCAweDY4LCAweDYxLFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ4LCAweDY5LCAweDczLFxuICAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLFxuICAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDc0LCAweDZmLCAweDIwLCAweDczLFxuICAweDc1LCAweDcwLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDY3LFxuICAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDczLCAweDczLCAweDIwLFxuICAweDIwLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY4LFxuICAweDY5LCAweDczLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc3LFxuICAweDY5LCAweDc0LCAweDY4LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDcwLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDcxLCAweDIyLCAweDA5LCAweDA5LCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDcyLCAweDY1LCAweDcwLFxuICAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDZkLCAweDYxLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZlLCAweDczLCAweDY1LFxuICAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LFxuICAweDZlLCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDIyLCAweDYzLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY4LCAweDY1LCAweDYxLFxuICAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LFxuICAweDZjLCAweDYxLCAweDcyLCAweDJjLCAweDYzLCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDI5LCAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDcwLCAweDY4LCAweDY5LCAweDZjLCAweDZmLCAweDczLCAweDZmLFxuICAweDcwLCAweDY4LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDczLCAweDcyLCAweDcwLCAweDczLCAweDZiLCAweDZmLFxuICAweDY4LCAweDcyLCAweDc2LCAweDYxLCAweDc0LCAweDczLCAweDZiLCAweDY5LCAweDc0LCAweDY5LCAweGUxLCAweGJhLCAweGJmLFxuICAweDZlLCAweDY3LCAweDIwLCAweDU2LCAweDY5LCAweGUxLCAweGJiLCAweDg3LCAweDc0LCAweGQwLCAweGEwLCAweGQxLCAweDgzLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGI5LCAweGQxLCAweDgwLCAweGQxLFxuICAweDgzLCAweGQxLCAweDgxLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGI5LCAweDY5LCAweDZlLFxuICAweDc2LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDY3LCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLFxuICAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLFxuICAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQxLFxuICAweDhiLCAweGQwLCAweGI5LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGIyLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQxLCAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDhiLCAweGQwLCAweDlkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgwLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJiLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGIyLCAweGQxLCAweDgwLCAweGQwLFxuICAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQxLCAweDhmLCAweGQxLCAweDgxLCAweGQwLFxuICAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQxLCAweDhmLCAweGQxLCAweDgxLFxuICAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LFxuICAweGQwLCAweGEzLCAweGQwLCAweGJhLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLFxuICAweDhiLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLFxuICAweGQxLCAweDhiLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI5LCAweGQxLCAweDgxLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQxLFxuICAweDg5LCAweGQxLCAweDhjLCAweGQxLCAweDhlLCAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDgwLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQwLFxuICAweGIwLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI1LFxuICAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweDkzLCAweGQwLFxuICAweGJiLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDhmLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQxLFxuICAweDgxLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQxLCAweDg4LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLFxuICAweDhmLCAweGQwLCAweGExLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQxLCAweDhkLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQxLCAweDgzLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDgzLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLFxuICAweGIwLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJkLCAweGQwLFxuICAweGI1LCAweGQxLCAweDg3LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQxLCAweDg4LFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJlLCAweGQxLCAweDgwLFxuICAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGJhLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGJjLCAweGQwLCAweGEwLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDg5LFxuICAweGQ5LCAweDg1LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGI2LCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE4LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDgyLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LCAweGIzLCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGE2LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGI2LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGI1LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGI5LCAweGQ4LCAweGI2LCAweGQ4LCAweGE3LCAweGQ4LCAweGExLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGE2LCAweGQ4LCAweGFjLCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIzLCAweGQ4LCAweGFjLCAweGQ5LCAweDhhLCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ5LCAweDgyLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI2LCAweGQ4LCAweGJhLCAweGQ4LCAweGI3LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDhhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGFkLFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ4LCAweGFmLCAweGQ5LFxuICAweDhhLCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LFxuICAweGFlLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDgxLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGEzLCAweGQ5LCAweDgxLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDhhLCAweGQ4LCAweGFlLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFhLCAweGQ5LCAweDgyLCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFlLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGI3LCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGFjLCAweGQ4LCAweGFhLCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFkLCAweGQ4LCAweGE5LCAweGQ4LCAweGI5LCAweGQ4LCAweGE4LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDg3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGE4LCAweGQ4LCAweGI3LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGEzLCAweGQ4LFxuICAweGFmLCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFlLCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGFhLCAweGQ4LCAweGFkLCAweGQ4LCAweGFmLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ4LCAweGJhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ5LCAweDhhLCAweDYzLCAweDc1LCAweDcyLFxuICAweDczLCAweDZmLCAweDcyLCAweDNhLCAweDcwLCAweDZmLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNiLCAweDNjLFxuICAweDJmLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LCAweDNlLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLFxuICAweDIwLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDIyLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLFxuICAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LFxuICAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc2LCAweDY1LCAweDcyLCAweDc0LFxuICAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDJmLCAweDYxLFxuICAweDNlLCAweDIwLCAweDdjLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLFxuICAweDNjLCAweDIxLCAweDY0LCAweDZmLCAweDYzLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNlLCAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDczLCAweDYzLCAweDcyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDNjLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLFxuICAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDIyLFxuICAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDY3LCAweDY1LCAweDc0LCAweDIyLFxuICAweDIwLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNlLCAweDBhLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LFxuICAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDJlLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDI4LCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDJkLCAweDYyLCAweDZmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDNhLCAweDcyLCAweDY1LCAweDcwLCAweDcyLFxuICAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDczLCAweDc1LFxuICAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDIyLFxuICAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLFxuICAweDIyLCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDZmLCAweDc1LCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDY2LFxuICAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDBhLCAweDIwLCAweDIwLCAweDNjLCAweDY0LCAweDY5LCAweDc2LFxuICAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LFxuICAweDc0LCAweDIyLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDZmLCAweDZlLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDc2LCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDZmLCAweDcwLCAweDIyLCAweDNlLFxuICAweDNjLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLFxuICAweDY4LCAweDY1LCAweDY0LCAweDI5LCAweDNiLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDIwLCAweDY2LFxuICAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDI5LCAweDJlLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDJlLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDYyLCAweDY1LCAweDYzLCAweDYxLFxuICAweDc1LCAweDczLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDZmLFxuICAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDYzLCAweDZmLCAweDZmLCAweDZiLCAweDY5LCAweDY1LFxuICAweDNjLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLFxuICAweDIyLCAweDJmLCAweDdkLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDdiLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LFxuICAweDZlLCAweDNhLCAweDMwLCAweDNiLCAweDQ1LCAweDZlLCAweDYzLCAweDc5LCAweDYzLCAweDZjLCAweDZmLCAweDcwLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYxLCAweDIwLCAweDZmLCAweDY2LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDJlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDBhLCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDY4LCAweDY5LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLFxuICAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDczLFxuICAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LFxuICAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDQ5LCAweDZlLCAweDIwLCAweDZmLCAweDc0LFxuICAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDY0LCAweDczLCAweDJjLCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDIwLCAweDYyLCAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLFxuICAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDczLCAweDIwLCAweDc3LCAweDY1LCAweDZjLCAweDZjLCAweDIwLFxuICAweDYxLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDcyLCAweDY1LCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDBkLCAweDBhLCAweDA5LCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDZlLCAweDY0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLCAweDZjLFxuICAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLCAweDJlLCAweDZhLCAweDczLFxuICAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDIwLFxuICAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLFxuICAweDY1LCAweDY1LCAweDZlLCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDZjLCAweDYxLCAweDZlLFxuICAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDQzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLFxuICAweDY5LCAweDczLCAweDc0LCAweDIwLCAweDUwLCAweDYxLCAweDcyLCAweDc0LCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDYyLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLFxuICAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLFxuICAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDZlLCAweDc5LCAweDIwLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDRmLCAweDcyLCAweDc0LFxuICAweDY4LCAweDZmLCAweDY0LCAweDZmLCAweDc4LCAweDIwLCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLCAweDY4LCAweDczLFxuICAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLFxuICAweDNkLCAweDIyLCAweDczLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc1LCAweDZlLCAweDc0LCAweDY5LCAweDZjLCAweDIwLCAweDY4LCAweDY5LFxuICAweDczLCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDc0LCAweDY4LCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRlLCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLFxuICAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDNhLCAweDc1LCAweDcyLCAweDZjLCAweDI4LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDYzLCAweDcyLFxuICAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDIyLCAweDIwLCAweDY5LFxuICAweDZlLCAweDYzLCAweDZjLCAweDc1LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDRlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLFxuICAweDYxLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDcyLFxuICAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY2LCAweDcyLFxuICAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDc1LCAweDczLCAweDY1LCAweDY0LFxuICAweDYxLCAweDIwLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDc2LCAweDY1LCAweDcyLCAweDc5LCAweDIwLCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLFxuICAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDc1LCAweDcyLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLFxuICAweDNkLCAweDIyLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDc3LCAweDZmLCAweDc1LFxuICAweDZjLCAweDY0LCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LFxuICAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDVmLCAweDYzLCAweDYxLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDNkLCAweDYxLCAweDc0LCAweDc0LCAweDYxLCAweDYzLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LFxuICAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDczLCAweDIwLCAweDY0LFxuICAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDQ5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDc0LCAweDZmLCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDIwLCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLFxuICAweDc1LCAweDczLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDZkLCAweDZmLCAweDczLFxuICAweDc0LCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDY5LFxuICAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDZlLFxuICAweDY0LCAweDcyLCAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDcwLCAweDczLCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDU0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZkLCAweDY1LCAweDYxLFxuICAweDZlLCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDYxLCAweDczLCAweDIwLFxuICAweDcyLCAweDY1LCAweDcwLCAweDZjLCAweDYxLCAweDYzLCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDYxLCAweDZlLFxuICAweDYxLCAweDZjLCAweDc5LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDY5LCAweDZlLCAweDczLCAweDcwLCAweDY5LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDY2LFxuICAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDczLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDczLCAweDc1LCAweDYzLCAweDYzLFxuICAweDY1LCAweDczLCAweDczLCAweDY2LCAweDc1LCAweDZjLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLFxuICAweDczLCAweDIwLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDYxLCAweDIwLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDcyLCAweDY1LCAweDY4LCAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDQ4LCAweDY5LCAweDczLFxuICAweDc0LCAweDZmLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LFxuICAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LFxuICAweDY0LCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDY2LCAweDY1LCAweDcyLCAweDcyLFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDU1LCAweDZlLCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LFxuICAweDY0LCAweDIwLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDNlLCAweDBhLCAweDA5LCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDczLCAweDc0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LFxuICAweDZmLCAweDcwLCAweDUwLCAweDcyLCAweDZmLCAweDcwLCAweDYxLCAweDY3LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYxLCAweDc2LCAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDYxLCAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDc0LCAweDcyLCAweDZmLFxuICAweDZkLCAweDYxLCAweDY3LCAweDZlLCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLFxuICAweDY1LCAweDUzLCAweDY1LCAweDcyLCAweDc2LCAweDY5LCAweDYzLCAweDY1LCAweDczLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ5LFxuICAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLFxuICAweDc0LCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LFxuICAweDdiLCAweDc2LCAweDYxLCAweDcyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDc2LCAweDY1LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDczLCAweDIwLCAweDYxLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDc1LCAweDZjLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDQ2LCAweDZmLFxuICAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDIwLCAweDY5LCAweDZlLFxuICAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LFxuICAweDIyLCAweDIwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDY1LFxuICAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZkLCAweDY0LCAweDYxLCAweDczLFxuICAweDY4LCAweDNiLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcwLCAweDcwLFxuICAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLFxuICAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDc1LCAweDZjLCAweDNlLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYxLFxuICAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDYxLCAweDc0LFxuICAweDY4LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc0LFxuICAweDIwLCAweDc0LCAweDZmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDcwLCAweDYxLCAweDY0LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDZjLCAweDc5LCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLFxuICAweDc5LCAweDNhLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDNiLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDY5LCAweDczLFxuICAweDIwLCAweDY0LCAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLFxuICAweGU0LCAweGI4LCAweGFkLCAweGU2LCAweDk2LCAweDg3LCAweDIwLCAweDI4LCAweGU3LCAweGFlLCAweDgwLCAweGU0LCAweGJkLFxuICAweDkzLCAweDI5LCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDYyLCAweDY5LCAweDZjLFxuICAweDY5LCAweDY0LCAweDYxLCAweDY0LCAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDcyLFxuICAweDYxLCAweDYzLCAweDY5LCAweGMzLCAweGIzLCAweDZlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LFxuICAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LCAweDY5LCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweGUwLCAweGE0LCAweDg5LFxuICAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI1LCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LFxuICAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLFxuICAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLFxuICAweGE1LCAweDg5LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI5LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE1LCAweDgzLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweGEyLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LFxuICAweDhjLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDliLFxuICAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDg5LFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweDg4LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGEyLCAweGUwLCAweGE0LFxuICAweGJjLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFiLCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LFxuICAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLFxuICAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDliLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDliLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDhmLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweDk4LFxuICAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGI3LCAweGUwLFxuICAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LFxuICAweDgwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LFxuICAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgzLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweDk4LCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGI1LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDk2LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGE0LCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE1LCAweDg3LCAweDcyLCAweDczLCAweDczLCAweDJiLCAweDc4LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc0LCAweDY5LFxuICAweDc0LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDJkLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIyLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDc0LCAweDY5LCAweDc0LCAweDZjLCAweDY1LFxuICAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDYxLCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDczLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDc0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLFxuICAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLFxuICAweDNlLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDc2LCAweDY1LCAweDcyLFxuICAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDc0LFxuICAweDJmLCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDZhLFxuICAweDczLCAweDIyLCAweDNlLCAweDJlLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLFxuICAweDIyLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDJkLCAweDdkLCAweDI5LCAweDI4LCAweDI5LFxuICAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLFxuICAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDI5LCAweDNiLCAweDIwLCAweDcyLCAweDY1LCAweDc0LCAweDc1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDY2LCAweDYxLCAweDZjLCAweDczLCAweDY1LCAweDNiLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLFxuICAweDY0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIwLCAweDczLFxuICAweDYzLCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDIyLFxuICAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLFxuICAweDcwLCAweDczLCAweDY1LCAweDNhLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDQyLCAweDYxLCAweDY4LCAweDYxLCAweDczLCAweDYxLFxuICAweDIwLCAweDQ5LCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDYxLCAweDQ1LCAweDZlLCAweDY3LFxuICAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LFxuICAweDNjLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDNhLCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY1LCAweDNkLCAweDJlLCAweDY3LCAweDY5LCAweDY2LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LFxuICAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDZmLCAweDc2LCAweDY1LCAweDcyLFxuICAweDY2LCAweDZjLCAweDZmLCAweDc3LCAweDNhLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNiLCAweDY5LFxuICAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDYxLCAweDY0LCAweDY0LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDRjLCAweDY5LCAweDczLFxuICAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDczLCAweDJlLCAweDZhLCAweDczLCAweDIyLFxuICAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDJmLCAweDY2LFxuICAweDYxLCAweDc2LCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDIyLCAweDIwLCAweDJmLFxuICAweDNlLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDczLCAweDc5LFxuICAweDczLCAweDc0LCAweDY1LCAweDZkLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNhLCAweDMxLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDUzLCAweDc0LCAweDYxLFxuICAweDc0LCAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDZjLCAweDY1LFxuICAweDY2LCAweDc0LCAweDNiLCAweDBhLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLFxuICAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDI4LCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDZmLCAweDc1LFxuICAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDI5LFxuICAweDNiLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLFxuICAweDBhLCAweDNjLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY4LCAweDY1LFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDNiLCAweDZmLCAweDc2LCAweDY1LCAweDcyLCAweDY2LCAweDZjLCAweDZmLFxuICAweDc3LCAweDNhLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLFxuICAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZlLFxuICAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLFxuICAweDZjLCAweDYxLCAweDIwLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDIwLCAweDZlLCAweDZmLCAweDZlLCAweDY1LFxuICAweDNiLCAweDIyLCAweDNlLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDBhLCAweDIwLCAweDIwLCAweDI4LCAweDY2LCAweDc1LCAweDZlLFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDIwLCAweDdiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDMxLCAweDM1LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDJlLFxuICAweDcwLCAweDcyLCAweDY1LCAweDc2LCAweDY1LCAweDZlLCAweDc0LCAweDQ0LCAweDY1LCAweDY2LCAweDYxLCAweDc1LCAweDZjLFxuICAweDc0LCAweDI4LCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LFxuICAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQyLCAweDc5LCAweDdhLCAweDYxLCAweDZlLCAweDc0LCAweDY5LCAweDZlLFxuICAweDY1LCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLCAweDY1LCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDdjLFxuICAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDdjLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDdjLCAweDc2LCAweDYxLFxuICAweDczLCAweDc0LCAweDIwLCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDZkLCAweDYxLCAweDZhLCAweDZmLCAweDcyLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIwLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNkLCAweDIyLCAweDYzLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLFxuICAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDY0LCAweDZmLCAweDZkLFxuICAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDUzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDY0LCAweDIwLCAweDU3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDIwLFxuICAweDU3LCAweDYxLCAweDcyLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDcyLCAweDY1LCAweDczLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLFxuICAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLFxuICAweDZjLCAweDZmLCAweDc3LCAweDIyLCAweDNlLCAweDY0LCAweDY1LCAweDcyLCAweDY5LCAweDc2LCAweDY1LCAweDczLCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZkLCAweDYyLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLFxuICAweDY2LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LFxuICAweDNhLCAweDMxLCAweDMwLCAweDMwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDJkLCAweDczLFxuICAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDczLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYyLCAweDZmLCAweDcyLFxuICAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDIwLCAweDZmLCAweDY2LCAweDQ0LCAweDY1LCAweDZkLCAweDZmLCAweDYzLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDYzLFxuICAweDIwLCAweDUwLCAweDYxLCAweDcyLCAweDc0LCAweDc5LCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDYxLCAweDczLCAweDZmLCAweDZlLCAweDJjLCAweDJlLFxuICAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLFxuICAweDBhLCAweDA5LCAweDczLCAweDQyLCAweDc5LCAweDU0LCAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LFxuICAweDczLCAweDI5LCAweDViLCAweDMwLCAweDVkLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDZjLCAweDY5LFxuICAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLFxuICAweDIwLCAweDI3LCAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDI3LCAweDI3LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDI3LCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDZmLFxuICAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDYxLFxuICAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDJmLCAweDcwLCAweDYxLCAweDY3LCAweDY1LCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDNjLCAweDcwLCAweDYxLCAweDY3LFxuICAweDY1LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDYyLCAweDYxLCAweDY4LCAweDYxLFxuICAweDczLCAweDYxLCAweDIwLCAweDQ5LCAweDZlLCAweDY0LCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDY5LCAweDYxLCAweDY1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDI4LCAweDczLCAweDY5LCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDI5LCAweGNlLCAweDk1LCAweGNlLCAweGJiLCAweGNlLCAweGJiLCAweGNlLCAweGI3LCAweGNlLCAweGJkLCAweGNlLFxuICAweGI5LCAweGNlLCAweGJhLCAweGNlLCAweGFjLCAweGQxLCAweDg1LCAweGQxLCAweDgwLCAweGQwLCAweGIyLCAweGQwLCAweGIwLFxuICAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQwLCAweGJmLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQxLCAweDhmLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQxLFxuICAweDhmLCAweGQwLCAweDk0LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGI4LFxuICAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLFxuICAweGIyLCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LFxuICAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweDk4LCAweGQwLFxuICAweGJkLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDgyLFxuICAweGQwLCAweDllLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLFxuICAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGI4LFxuICAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDgyLCAweGQwLFxuICAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJhLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDg2LFxuICAweGQxLCAweDhiLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgzLCAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGJlLFxuICAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJlLCAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGJjLCAweGQxLCAweDhiLCAweGQwLCAweGJmLFxuICAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDgzLCAweGQxLCAweDg3LCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLFxuICAweDhjLCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQxLCAweDhlLCAweGQxLCAweDgyLFxuICAweGQxLCAweDgxLCAweGQxLCAweDhmLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQwLCAweGI4LCAweGQwLCAweGIxLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI1LCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJjLFxuICAweGQwLCAweGJmLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGIyLCAweGQwLFxuICAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLFxuICAweGIyLCAweGQwLCAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGI2LCAweGQ5LCAweDhhLCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ5LCAweDgzLFxuICAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE4LCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LFxuICAweGIzLCAweGQ4LCAweGI5LCAweGQ5LCAweDg4LCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGFkLCAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LFxuICAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGI1LCAweGQ5LCAweDg4LCAweGQ4LFxuICAweGFhLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGFhLCAweGQ4LCAweGI1LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ5LCAweDg1LFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE1LCAweGQ4LCAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg1LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGE2LCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweDcyLCAweDZmLCAweDYyLCAweDZmLFxuICAweDc0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZmLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDJlLFxuICAweDZhLCAweDcwLCAweDY3LCAweDdjLCAweDcyLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDdjLCAweDc0LCAweDY4LCAweDc1LFxuICAweDZkLCAweDYyLCAweDdjLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDJlLCAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZjLCAweDY2LCAweDcyLFxuICAweDYxLCAweDZkLCAweDY1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLFxuICAweDIwLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLFxuICAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDYyLCAweDZmLCAweDZjLCAweDY0LFxuICAweDNiLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDI2LFxuICAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LFxuICAweDY5LCAweDZlLCAweDNhLCAweDMwLCAweDNiLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNhLFxuICAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDZjLFxuICAweDZmLCAweDc3LCAweDIyLCAweDIwLCAweDUwLCAweDcyLCAweDY1LCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDc3LCAweDY1LCAweDZlLCAweDc0LFxuICAweDY5LCAweDY1LCAweDc0LCAweDY4LCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDY1LFxuICAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDIwLCAweDIwLCAweDNjLCAweDJmLCAweDcwLFxuICAweDYxLCAweDY3LCAweDY1LCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDY1LCAweDc0LCAweDIwLCAweDQ1LFxuICAweDc4LCAweDcwLCAweDZjLCAweDZmLCAweDcyLCAweDY1LCAweDcyLCAweDYxLCAweDJlLCAweDYxLCAweDczLCAweDc5LCAweDZlLFxuICAweDYzLCAweDIwLCAweDNkLCAweDIwLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDNiLCAweDBkLCAweDBhLCAweDY5LCAweDZlLFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDYyLCAweDZmLFxuICAweDc1LCAweDc0LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDY4LCAweDY1LFxuICAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDIyLCAweDNlLCAweDIyLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLFxuICAweDJmLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDIyLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY0LCAweDY1LCAweDcyLCAweDY5LFxuICAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDI3LCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDBhLCAweDNjLCAweDJmLCAweDYyLCAweDZmLFxuICAweDY0LCAweDc5LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDczLCAweDY5LFxuICAweDdhLCAweDY1LCAweDNhLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDZjLCAweDYxLCAweDZlLFxuICAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDQxLCAweDcyLCAweDY5LCAweDYxLCAweDZjLCAweDJjLFxuICAweDIwLCAweDQ4LCAweDY1LCAweDZjLCAweDc2LCAweDY1LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDJjLCAweDNjLCAweDJmLFxuICAweDYxLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDNjLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDc0LCAweDY0LCAweDNlLFxuICAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLFxuICAweDNjLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDcwLCAweDcyLCAweDY1LFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLFxuICAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc3LCAweDcyLCAweDY5LCAweDc0LFxuICAweDY1LCAweDI4LCAweDI3LCAweDNjLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDBhLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLFxuICAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcyLFxuICAweDY1LCAweDc2LCAweDY1LCAweDYxLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY1LCAweDZjLCAweDY1LCAweDc2LCAweDY5LCAweDczLCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDczLCAweDY1LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDIyLCAweDNlLCAweDIwLCAweDc0LFxuICAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLFxuICAweDIyLCAweDNlLCAweDYzLCAweDZjLCAweDYxLCAweDY5LCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDI1LCAweDMzLCAweDQxLFxuICAweDI1LCAweDMyLCAweDQ2LCAweDI1LCAweDMyLCAweDQ2LCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDZkLCAweDYxLCAweDZlLFxuICAweDY5LCAweDY2LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDUwLCAweDcyLCAweDY5LCAweDZkLCAweDY1LCAweDIwLCAweDRkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LFxuICAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LCAweDY5LCAweDc4LCAweDIyLCAweDNlLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDBkLCAweDBhLCAweDBkLCAweDBhLCAweDc0LCAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDJkLCAweDY0LCAweDY5LCAweDZkLFxuICAweDY1LCAweDZlLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDQzLCAweDY4LCAweDc1LCAweDcyLCAweDYzLFxuICAweDY4LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQ1LCAweDZlLCAweDY3LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDZmLFxuICAweDY2LCAweDIwLCAweDRlLCAweDZmLCAweDcyLCAweDc0LCAweDY4LCAweDIwLCAweDQzLCAweDYxLCAweDcyLCAweDZmLCAweDZjLFxuICAweDY5LCAweDZlLCAweDYxLCAweDczLCAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZiLCAweDY5LCAweDZjLFxuICAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDY1LCAweDczLCAweDJlLCAweDYxLCAweDY0LCAweDY0LCAweDQ1LCAweDc2LFxuICAweDY1LCAweDZlLCAweDc0LCAweDRjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDY0LCAweDY5LFxuICAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDZjLCAweDc5LCAweDIwLCAweDZiLCAweDZlLFxuICAweDZmLCAweDc3LCAweDZlLCAweDIwLCAweDYxLCAweDczLCAweDUwLCAweDY4LCAweDZmLCAweDZlLCAweDY1LCAweDc0LCAweDY5LFxuICAweDYzLCAweDIwLCAweDQxLCAweDZjLCAweDcwLCAweDY4LCAweDYxLCAweDYyLCAweDY1LCAweDc0LCAweDY0LCAweDY1LCAweDYzLFxuICAweDZjLCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDYyLFxuICAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQyLCAweDY1LCAweDZlLCAweDZhLCAweDYxLCAweDZkLCAweDY5LCAweDZlLFxuICAweDIwLCAweDQ2LCAweDcyLCAweDYxLCAweDZlLCAweDZiLCAweDZjLCAweDY5LCAweDZlLCAweDcyLCAweDZmLCAweDZjLCAweDY1LFxuICAweDJkLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY3LCAweDYxLCAweDZkLCAweDY1LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LFxuICAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDU3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDcyLFxuICAweDZlLCAweDIwLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDczLCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDUwLFxuICAweDcyLCAweDZmLCAweDZhLCAweDY1LCAweDYzLCAweDc0LCAweDIwLCAweDQ3LCAweDc1LCAweDc0LCAweDY1LCAweDZlLCAweDYyLFxuICAweDY1LCAweDcyLCAweDY3LCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDZjLCAweDY1LCAweDczLCAweDczLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LFxuICAweDY1LCAweDZlLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDZmLCAweDczLCAweDY1LCAweDY0LCAweDc0LCAweDZmLFxuICAweDY3LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDZkLCAweDY5LCAweDZlLFxuICAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLFxuICAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNjLCAweDY5LCAweDZkLCAweDY3LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDJmLFxuICAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LCAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDYxLCAweDc0LCAweDc1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDZmLCAweDc1LCAweDcyLCAweDYzLCAweDY1LCAweDczLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLFxuICAweDY5LCAweDY2LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDYzLFxuICAweDYxLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LFxuICAweDcyLCAweDY1LCAweDY0LCAweDcxLCAweDc1LCAweDYxLCAweDZlLCAweDc0LCAweDc1LCAweDZkLCAweDIwLCAweDZkLCAweDY1LFxuICAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDczLCAweDRlLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDc0LFxuICAweDY4LCAweDY1LCAweDZjLCAweDY1LCAweDczLCAweDczLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY5LFxuICAweDZjLCAweDZjLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc5LCAweDY1LCAweDYxLCAweDcyLCAweDczLCAweDIwLCAweDYxLFxuICAweDY3LCAweDZmLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBkLCAweGNlLCAweDk1LCAweGNlLCAweGJiLCAweGNlLCAweGJiLCAweGNlLFxuICAweGI3LCAweGNlLCAweGJkLCAweGNlLCAweGI5LCAweGNlLCAweGJhLCAweGNlLCAweGFjLCAweDBhLCAweDc0LCAweDYxLCAweDZiLFxuICAweDY1LCAweDIwLCAweDYxLCAweDY0LCAweDc2LCAweDYxLCAweDZlLCAweDc0LCAweDYxLCAweDY3LCAweDY1LCAweDIwLCAweDZmLFxuICAweDY2LCAweDYxLCAweDZlLCAweDY0LCAweDJjLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDYxLCAweDc0LCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRkLCAweDY5LCAweDYzLCAweDcyLFxuICAweDZmLCAweDczLCAweDZmLCAweDY2LCAweDc0LCAweDIwLCAweDU3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LCAweDczLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDZjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLFxuICAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDY1LCAweDYxLCAweDY0LCAweDY1LCAweDcyLCAweDczLFxuICAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDZlLCAweDZmLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY1LCAweDc4LFxuICAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDczLCAweDY1LFxuICAweDc2LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LFxuICAweDZlLCAweDc0LCAweDYxLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDc3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDJlLCAweDcyLCAweDY1LCAweDYxLCAweDYzLCAweDY4LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDczLCAweDZmLFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDZmLCAweDcwLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDRmLCAweDZjLCAweDY0LCAweDIwLFxuICAweDU0LCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQxLCAweDY2LCAweDcyLCAweDY5LFxuICAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDQxLCAweDZkLCAweDY1LCAweDcyLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDczLFxuICAweDY5LCAweDZlLCAweDczLCAweDY1LCAweDcyLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZkLCAweDY1LCAweDc0LCAweDcyLCAweDZmLFxuICAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDYxLCAweDZlLCAweDIwLCAweDYxLCAweDcyLCAweDY1LCAweDYxLCAweDZkLFxuICAweDYxLCAweDZiLCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDc0LCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDYxLCAweDYzLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZjLCAweDY1LCAweDY0LCAweDY3LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDc1LCAweDYxLCAweDYyLFxuICAweDZjLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLFxuICAweDNlLCAweDBhLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLFxuICAweDBhLCAweDYzLCAweDZmLCAweDY5LCAweDZlLCAweDYzLCAweDY5LCAweDY0LCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LFxuICAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDc3LCAweDZmLCAweDJkLCAweDc0LCAweDY4LCAweDY5LCAweDcyLFxuICAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ0LCAweDc1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LCAweDJjLFxuICAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDcwLCAweDY1LFxuICAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDYxLCAweDZlLCAweDZlLCAweDZmLCAweDc1LCAweDZlLCAweDYzLCAweDY1LCAweDY0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LFxuICAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLFxuICAweDc0LCAweDZjLCAweDc5LCAweDYyLCAweDY1LCAweDZjLCAweDY5LCAweDY1LCAweDc2LCAweDY1LCAweDY0LCAweDIwLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDYzLCAweDY5LFxuICAweDZmLCAweDc1LCAweDczLCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDY2LCAweDZmLFxuICAweDcyLCAweDZkLCAweDY1LCAweDcyLCAweDZjLCAweDc5LCAweDIwLCAweDZiLCAweDZlLCAweDZmLCAweDc3LCAweDZlLCAweDIwLFxuICAweDYxLCAweDczLCAweDczLCAweDc1LCAweDcyLCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDYxLFxuICAweDcwLCAweDcwLCAweDY1LCAweDYxLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZmLCAweDYzLCAweDYzLFxuICAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDc1LCAweDczLCAweDY1LFxuICAweDY0LCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDYxLCAweDYyLCAweDczLFxuICAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDNiLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LFxuICAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDcwLCAweDZmLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LFxuICAweDc2LCAweDY1LCAweDNiLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLFxuICAweDNhLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDNiLCAweDZhLCAweDYxLCAweDc4LCAweDJmLCAweDZjLFxuICAweDY5LCAweDYyLCAweDczLCAweDJmLCAweDZhLCAweDcxLCAweDc1LCAweDY1LCAweDcyLCAweDc5LCAweDJmLCAweDMxLCAweDJlLFxuICAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDYzLCAweDZmLFxuICAweDZjLCAweDZmLCAweDcyLCAweDNhLCAweDIzLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLFxuICAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJmLCAweDYxLCAweDZlLCAweDY3LFxuICAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LFxuICAweDNkLCAweDIyLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLFxuICAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDUwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLCAweDYzLFxuICAweDc5LCAweDIwLCAweDUwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDY1LFxuICAweDI4LCAweDIyLCAweDI1LCAweDMzLCAweDQzLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDI3LCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLFxuICAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDRmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDY4LCAweDYxLCAweDZlLCAweDY0LFxuICAweDJjLCAweDJlLCAweDZhLCAweDcwLCAweDY3LCAweDdjLCAweDc0LCAweDY4LCAweDc1LCAweDZkLCAweDYyLCAweDdjLCAweDcyLFxuICAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDdjLCAweDMyLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZjLCAweDZmLFxuICAweDYxLCAweDc0LCAweDNhLCAweDZlLCAweDY5LCAweDZlLCAweDY1LCAweDc0LCAweDY1LCAweDY1LCAweDZlLCAweDc0LCAweDY4LFxuICAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDcyLCAweDc5LCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LFxuICAweDc5LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDczLCAweDNiLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLFxuICAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLCAweDIwLCAweDYyLCAweDZmLCAweDZjLFxuICAweDY0LCAweDNiLCAweDIwLCAweDQxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLFxuICAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDIyLFxuICAweDIwLCAweDY2LCAweDcyLCAweDYxLCAweDZkLCAweDY1LCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLFxuICAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDZjLCAweDY5LCAweDZlLCAweDZiLFxuICAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDM0LCAweDJmLCAweDZjLCAweDZmLCAweDZmLCAweDczLCAweDY1LCAweDJlLFxuICAweDY0LCAweDc0LCAweDY0LCAweDIyLCAweDNlLCAweDBhLCAweDY0LCAweDc1LCAweDcyLCAweDY5LCAweDZlLCAweDY3LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDY1LCAweDcyLCAweDY5LCAweDZmLCAweDY0LCAweDNjLCAweDJmLFxuICAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDYxLCAweDYyLFxuICAweDZjLCAweDY1LCAweDNlLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDIwLCAweDc0LCAweDY5LCAweDZkLCAweDY1LFxuICAweDNiLCAweDY2LCAweDZmLCAweDZlLCAweDc0LCAweDJkLCAweDc3LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNhLFxuICAweDYyLCAweDZmLCAweDZjLCAweDY0LCAweDNiLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDNjLCAweDczLCAweDcwLFxuICAweDYxLCAweDZlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZlLFxuICAweDc0LCAweDJkLCAweDZmLCAweDZlLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDczLCAweDc0LCAweDYxLCAweDc0LFxuICAweDY1LCAweDYzLCAweDY4LCAweDYxLCAweDZlLCAweDY3LCAweDY1LCAweDA5LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY0LFxuICAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDIwLCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDY1LCAweDc4LCAweDYxLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDIwLCAweDc3LCAweDY5LFxuICAweDY0LCAweDY1LCAweDIwLCAweDc2LCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDc0LCAweDc5LCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LFxuICAweDZkLCAweDZjLCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LFxuICAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDIyLCAweDNlLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZjLCAweDZmLFxuICAweDYxLCAweDc0LCAweDNhLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNiLCAweDYzLCAweDZmLCAweDZlLCAweDYzLCAweDY1LFxuICAweDcyLCAweDZlLCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDNkLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDI1LCAweDMzLCAweDQxLCAweDI1LCAweDMyLCAweDQ2LCAweDI1LCAweDMyLFxuICAweDQ2LCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDY5LCAweDZlLCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LCAweDZjLFxuICAweDYxLCAweDcyLCAweDIwLCAweDYzLCAweDc1LCAweDZjLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLFxuICAweDJmLCAweDNlLCAweDY5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDQ4LCAweDYxLCAweDcyLCAweDc2LCAweDYxLCAweDcyLFxuICAweDY0LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDYxLCAweDY5LCAweDZlLCAweDIwLFxuICAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDRmLCAweDc4LCAweDY2LCAweDZmLFxuICAweDcyLCAweDY0LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LFxuICAweDIwLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZiLCAweDY1LCAweDc5LCAweDc3LCAweDZmLFxuICAweDcyLCAweDY0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDU1LCAweDZlLCAweDY5LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDRiLCAweDY5LCAweDZlLCAweDY3LFxuICAweDY0LCAweDZmLCAweDZkLCAweDY2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDIwLCAweDY3LCAweDZmLFxuICAweDc2LCAweDY1LCAweDcyLCAweDZlLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLFxuICAweDIwLCAweDY0LCAweDY1LCAweDcwLCAweDY1LCAweDZlLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDZlLFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDY1LCAweDcyLCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDY0LCAweDY1LCAweDczLCAweDc0LCAweDcyLCAweDc1LFxuICAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLFxuICAweDZjLCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LFxuICAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LFxuICAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc0LCAweDY1LCAweDZjLCAweDY1LFxuICAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDczLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LFxuICAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDczLFxuICAweDcwLCAweDY1LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDQ1LCAweDc1LCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDYxLCAweDZlLCAweDIwLCAweDYzLFxuICAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDQ4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LFxuICAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDczLFxuICAweDc0LCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY1LFxuICAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDIwLCAweDczLFxuICAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LFxuICAweDc3LCAweDJlLCAweDYxLCAweDIwLCAweDZjLCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDIwLCAweDZlLCAweDc1LCAweDZkLFxuICAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDU0LCAweDY1LCAweDZjLCAweDY1LCAweDYzLCAweDZmLFxuICAweDZkLCAweDZkLCAweDc1LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIyLFxuICAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDZlLCAweDZmLCAweDY2LCAweDZmLCAweDZjLCAweDZjLCAweDZmLFxuICAweDc3LCAweDIyLCAweDIwLCAweDc0LCAweDQ4LCAweDZmLCAweDZjLCAweDc5LCAweDIwLCAweDUyLCAweDZmLCAweDZkLCAweDYxLFxuICAweDZlLCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY1LCAweDcyLCAweDZmLCAweDcyLCAweDYxLCAweDZjLCAweDZkLCAweDZmLFxuICAweDczLCAweDc0LCAweDIwLCAweDY1LCAweDc4LCAweDYzLCAweDZjLCAweDc1LCAweDczLCAweDY5LCAweDc2LCAweDY1LCAweDZjLFxuICAweDc5LCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LCAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLFxuICAweDIwLCAweDYxLCAweDZjLCAweDc0LCAweDNkLCAweDIyLCAweDUzLCAweDY1LCAweDYzLCAweDcyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDYzLCAweDc1LFxuICAweDZjLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDQzLCAweDQ5LCAweDQxLCAweDIwLCAweDU3LCAweDZmLCAweDcyLCAweDZjLCAweDY0LCAweDIwLFxuICAweDQ2LCAweDYxLCAweDYzLCAweDc0LCAweDYyLCAweDZmLCAweDZmLCAweDZiLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLFxuICAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDYxLCAweDZlLCAweDc0LFxuICAweDYxLCAweDZlLCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDNjLCAweDZjLCAweDY5LFxuICAweDNlLCAweDNjLCAweDY1LCAweDZkLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIyLCAweDJmLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDQxLCAweDc0LCAweDZjLCAweDYxLCAweDZlLCAweDc0LCAweDY5LFxuICAweDYzLCAweDIwLCAweDRmLCAweDYzLCAweDY1LCAweDYxLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDY5LCAweDYzLCAweDc0LFxuICAweDZjLCAweDc5LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYxLCAweDZiLCAweDY5LCAweDZlLCAweDY3LCAweDJjLCAweDczLFxuICAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLCAweDYyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LFxuICAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDRmLCAweDc0LCAweDc0LCAweDZmLCAweDZkLCAweDYxLCAweDZlLCAweDIwLCAweDQ1LCAweDZkLCAweDcwLCAweDY5LCAweDcyLFxuICAweDY1LCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDQxLCAweDZlLCAweDIwLCAweDQ5LCAweDZlLCAweDc0LCAweDcyLFxuICAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY0LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQzLCAweDZmLCAweDZlLCAweDY2LCAweDY1LFxuICAweDY0LCAweDY1LCAweDcyLCAweDYxLCAweDc0LCAweDY1LCAweDIwLCAweDUzLCAweDc0LCAweDYxLCAweDc0LCAweDY1LCAweDczLFxuICAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDY3LCAweDY1LCAweDZlLCAweDZmLCAweDc1LCAweDczLCAweDIwLCAweDcwLCAweDY1LFxuICAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDUwLCAweDcyLCAweDZmLCAweDYzLCAweDY1LCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDZlLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDY4LCAweDYxLFxuICAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDY5LCAweDZlLCAweDc2LCAweDZmLCAweDZjLCAweDc2LFxuICAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY0LFxuICAweDY5LCAweDc2LCAweDY5LCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDcyLCAweDY1LCAweDY1LCAweDYxLCAweDY0LCAweDZhLCAweDYxLCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY5LCAweDczLCAweDIwLCAweDcyLFxuICAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLFxuICAweDcyLCAweDY0LCAweDY5LCAweDczLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZjLCAweDZjLCAweDYxLCAweDYyLCAweDZmLFxuICAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDc3LCAweDY5LFxuICAweDY0LCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDY3LCAweDYxLCAweDcyLCAweDY0LCAweDY1LCAweDY0LFxuICAweDIwLCAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZkLFxuICAweDcwLCAweDZmLCAweDcyLCAweDYxLCAweDcyLCAweDY5LCAweDY1LCAweDczLCAweDY2LCAweDZmLCAweDc1LCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZkLCAweDY1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLCAweDZmLCAweDY2LFxuICAweDQ0LCAweDZmLCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDYzLCAweDYxLCAweDZlLCAweDIwLCAweDUyLCAweDY1LCAweDcwLFxuICAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY1LCAweDY0LCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDcwLCAweDZmLCAweDczLCAweDczLCAweDY5LCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDZjLCAweDczLCAweDZmLCAweDIwLCAweDYxLCAweDc2LFxuICAweDYxLCAweDY5LCAweDZjLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcyLFxuICAweDY1LCAweDczLCAweDc0LCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY3LCAweDY1LCAweDZlLCAweDY1LCAweDcyLFxuICAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDY5LCAweDczLCAweDIwLCAweDYxLFxuICAweDZjLCAweDZkLCAweDZmLCAweDczLCAweDc0LCAweDIwLCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDcyLCAweDY1LCAweDZjLFxuICAweDc5LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY1LCAweDczLCAweDIwLCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LFxuICAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY4LCAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LFxuICAweDZlLCAweDIwLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LCAweDY1LCAweDY0LCAweDYzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDYxLCAweDZlLCAweDY0LCAweDIwLCAweDc2LCAweDY5LFxuICAweDY0LCAweDY1LCAweDZmLCAweDQ3LCAweDY1LCAweDcyLCAweDZkLCAweDYxLCAweDZlLCAweDY5LCAweDYzLCAweDIwLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDczLCAweDIwLCAweDYxLCAweDYzLCAweDYzLCAweDZmLFxuICAweDcyLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLFxuICAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLFxuICAweDZkLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDZjLCAweDc5LCAweDIwLFxuICAweDYxLCAweDY2LCAweDc0LCAweDY1LCAweDcyLCAweDc3LCAweDYxLCAweDcyLCAweDY0LCAweDczLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDczLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LFxuICAweDc3LCAweDJlLCAweDcyLCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQyLCAweDZmLCAweDYxLCAweDcyLCAweDY0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDQ0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDZmLCAweDcyLCAweDczLCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDczLCAweDY1LFxuICAweDYxLCAweDcyLCAweDYzLCAweDY4LCAweDdjLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDQ5LCAweDZlLCAweDIwLCAweDcwLFxuICAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDJjLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDRkLCAweDc1LCAweDZjLCAweDc0LCAweDY5LCAweDcwLCAweDZjLCAweDY1LCAweDIwLCAweDY2LCAweDZmLCAweDZmLFxuICAweDc0LCAweDZlLCAweDZmLCAweDc0LCAweDY1LCAweDczLCAweDZmLCAweDcyLCAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDIwLCAweDczLCAweDc1LCAweDYyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDc0LCAweDY4LFxuICAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc5LCAweDY1LFxuICAweDYxLCAweDcyLCAweDczLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LFxuICAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDBkLCAweDBhLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY5LCAweDZlLCAweDY0LCAweDY1LFxuICAweDc4LCAweDJlLCAweDcwLCAweDY4LCAweDcwLCAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDY1LCAweDczLCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDZkLCAweDY5LCAweDZlLFxuICAweDJlLCAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDNlLCAweDBhLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDIwLCAweDczLCAweDc0LCAweDcyLCAweDZmLFxuICAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLFxuICAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDcyLCAweDY1LCAweDcwLCAweDcyLCAweDY1LCAweDczLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY3LCAweDcyLCAweDYxLCAweDY0LFxuICAweDc1LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDU0LCAweDcyLCAweDYxLCAweDY0LCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDZjLFxuICAweDc5LCAweDJjLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDI4LCAweDIyLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDI5LCAweDNiLCAweDQ4LCAweDZmLFxuICAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDIwLCAweDczLCAweDY5LCAweDZlLCAweDYzLCAweDY1LCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNiLFxuICAweDIwLCAweDZkLCAweDYxLCAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDZjLCAweDY1LCAweDY2LCAweDc0LCAweDNhLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYxLCAweDY3LFxuICAweDYxLCAweDY5LCAweDZlLCAweDczLCAweDc0LCAweDMwLCAweDNiLCAweDIwLCAweDc2LCAweDY1LCAweDcyLCAweDc0LCAweDY5LFxuICAweDYzLCAweDYxLCAweDZjLCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDU1LCAweDZlLCAweDY2LFxuICAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDZjLCAweDc5LCAweDJjLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LFxuICAweDJmLCAweDc4LCAweDJkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLFxuICAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZjLCAweDY1LCAweDYxLCAweDcyLCAweDY2LFxuICAweDY5LCAweDc4LCAweDIyLCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZmLCAweDc0LCAweDY1LCAweDcyLCAweDA5LCAweDA5LCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDA5LCAweDA5LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDBhLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDZkLCAweDZmLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDcwLFxuICAweDY5LCAweDYzLCAweDc0LCAweDc1LCAweDcyLCAweDY1LCAweGQwLCAweDkxLCAweGQxLCAweDhhLCAweGQwLCAweGJiLCAweGQwLFxuICAweGIzLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGIxLFxuICAweGQxLCAweDhhLCAweGQwLCAweGJiLCAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgxLCAweGQwLFxuICAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGE0LCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQxLCAweDgwLFxuICAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQxLFxuICAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDg5LCAweGQwLCAweGI1LCAweGQwLFxuICAweGJkLCAweGQwLCAweGI4LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQwLCAweGIxLFxuICAweGQxLCAweDg5LCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLCAweGJjLFxuICAweGQxLCAweDhiLCAweGQwLCAweDllLCAweGQxLCAweDgyLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLFxuICAweGIyLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQxLCAweDgxLFxuICAweGQwLCAweGJmLCAweGQwLCAweGJiLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQwLFxuICAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGIwLFxuICAweGQwLCAweGJiLCAweGQxLCAweDhiLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGI3LCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQxLCAweDhmLCAweGQwLCAweGI1LCAweGQxLCAweDgyLCAweGQwLCAweGJmLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGI0LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQwLFxuICAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg3LFxuICAweGQwLCAweGJkLCAweGQxLCAweDhiLCAweGQxLCAweDg1LCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLFxuICAweGI0LCAweGQxLCAweDgzLCAweGQwLCAweGJhLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJmLFxuICAweGQxLCAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGIzLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJjLCAweGQwLFxuICAweGJjLCAweGQwLCAweGIwLCAweGQwLCAweGJmLCAweGQwLCAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQxLCAweDhlLCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLFxuICAweDg1LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQxLCAweDgxLCAweGQxLCAweDhmLFxuICAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGIxLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLFxuICAweGJkLCAweGQwLCAweGJlLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJiLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGI4LCAweGQwLFxuICAweGI3LCAweGQwLCAweGJjLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LFxuICAweGQxLCAweDhmLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweDkwLCAweGQwLCAweGJiLCAweGQwLCAweGI1LFxuICAweGQwLCAweGJhLCAweGQxLCAweDgxLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI0LCAweGQxLCAweDgwLCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFhLCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LFxuICAweGJmLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGExLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDlhLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDlhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweDg1LCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweDkxLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhiLFxuICAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LFxuICAweGJjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg4LCAweGUwLCAweGE0LCAweGI2LFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLFxuICAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGFmLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGE2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDlhLCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGExLCAweGUwLFxuICAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LFxuICAweGE4LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE2LFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGEzLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLFxuICAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDg5LCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGE3LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LFxuICAweDg5LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgwLFxuICAweGUwLCAweGE0LCAweGE2LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE3LCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE2LCAweGUwLFxuICAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LFxuICAweGExLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDg2LFxuICAweGUwLCAweGE0LCAweDg4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDhmLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LFxuICAweGI2LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDg1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDgxLFxuICAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGFjLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDk2LCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LFxuICAweDgxLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDg2LCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LFxuICAweDhiLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LFxuICAweGQ5LCAweDg2LCAweGQ4LCAweGFhLCAweGQ4LCAweGFmLCAweGQ5LCAweDhhLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDgzLCAweGQ5LCAweDg1LCAweGQ4LCAweGE4LCAweGQ5LCAweDhhLCAweGQ5LCAweDg4LFxuICAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGI0LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg3LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLFxuICAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIyLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGIxLCAweGQ4LCAweGI5LCAweGQ4LCAweGFmLCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ4LCAweGFmLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE1LCAweGQ4LFxuICAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLCAweGQ4LCAweGE5LCAweGQ4LCAweGE3LFxuICAweGQ5LCAweDg0LCAweGQ5LCAweDgxLCAweGQ5LCAweDg4LCAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ4LCAweGI0LCAweGQ5LFxuICAweDg4LCAweGQ4LCAweGE4LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LFxuICAweGQ4LCAweGE4LCAweGQ5LCAweDgyLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LFxuICAweDg1LCAweGQ4LCAweGI5LCAweGQ5LCAweDg0LCAweGQ5LCAweDg4LCAweGQ5LCAweDg1LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGIzLCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGFjLCAweGQ4LCAweGIxLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDgxLCAweGQ5LCAweDhhLCAweGQ5LCAweDgzLCAweGQ4LCAweGIzLCAweGQ4LCAweGE3LCAweGQ5LFxuICAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGIzLCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDg1LCAweGQ5LCAweDhhLFxuICAweGQ4LCAweGE5LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweGQ4LCAweGI1LCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweDZiLCAweDY1LCAweDc5LCAweDc3LCAweDZmLCAweDcyLFxuICAweDY0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLFxuICAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDMxLCAweDM5LCAweDM5LCAweDM5LCAweDJmLCAweDc4LFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LFxuICAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLFxuICAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LFxuICAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNjLCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDZjLFxuICAweDY1LCAweDc0LCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDY2LCAweDY2LCAweDIyLCAweDIwLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLCAweDIwLCAweDYzLCAweDY1LCAweDZlLCAweDc0LFxuICAweDY1LCAweDcyLCAweDNiLCAweDc0LCAweDZmLCAweDIwLCAweDZjLCAweDYxLCAweDczLCAweDc0LCAweDIwLCAweDc2LCAweDY1LFxuICAweDcyLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYyLCAweDc5LCAweDIwLCAweDYyLCAweDYxLCAweDYzLCAweDZiLFxuICAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDYzLCAweDZmLCAweDZjLCAweDZmLCAweDcyLCAweDNhLFxuICAweDIwLCAweDIzLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDY5LCAweDY0LFxuICAweDNkLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIzLCAweDIyLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDJmLFxuICAweDJmLCAweDQ1LCAweDRlLCAweDIyLCAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc3LCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDU1LCAweDUyLFxuICAweDQ5LCAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDIyLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLFxuICAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDZmLCAweDYzLFxuICAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDc3LCAweDcyLCAweDY5LCAweDc0LCAweDY1LCAweDI4LCAweDI3LFxuICAweDNjLCAweDczLCAweDYzLCAweDcwLCAweDZmLCAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIwLFxuICAweDYxLCAweDYyLCAweDczLCAweDZmLCAweDZjLCAweDc1LCAweDc0LCAweDY1LCAweDNiLCAweDczLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDZkLCAweDYxLCAweDcyLFxuICAweDY3LCAweDY5LCAweDZlLCAweDJkLCAweDc0LCAweDZmLCAweDcwLCAweDNhLCAweDJlLCAweDZkLCAweDY5LCAweDZlLCAweDJlLFxuICAweDZhLCAweDczLCAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLFxuICAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LFxuICAweDJmLCAweDMxLCAweDM5LCAweDM5LCAweDM5LCAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDIwLFxuICAweDBhLCAweDBkLCAweDBhLCAweDNjLCAweDJmLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDNlLCAweDBkLCAweDBhLCAweDNjLFxuICAweDJmLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDY0LCAweDY5LCAweDczLCAweDc0LCAweDY5LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDJmLFxuICAweDIyLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDVmLCAweDYyLCAweDZjLFxuICAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDY4LCAweDcyLFxuICAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY1LCAweDZlLFxuICAweDYzLCAweDZmLCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LFxuICAweDIyLCAweDNmLCAweDNlLCAweDBhLCAweDc3LCAweDJlLCAweDYxLCAweDY0LCAweDY0LCAweDQ1LCAweDc2LCAweDY1LCAweDZlLFxuICAweDc0LCAweDRjLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDNmLCAweDYxLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDc3LCAweDc3LCAweDJlLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIwLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLFxuICAweDY0LCAweDNhLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLFxuICAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLFxuICAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LCAweDcyLCAweDc0LCAweDc5LCAweDNkLCAweDIyLCAweDZmLCAweDY3LCAweDNhLFxuICAweDc0LCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDYxLCAweDZjLCAweDY5LCAweDY3LCAweDZlLCAweDNhLFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LFxuICAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLFxuICAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDY5LCAweDczLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LFxuICAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDYxLFxuICAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDMwLFxuICAweDMwLCAweDI1LCAweDIyLCAweDIwLCAweDQ5LCAweDZlLCAweDIwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDY1LFxuICAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDY0LCAweDY1LCAweDc2LCAweDY1LFxuICAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDQ5LCAweDc0LCAweDIwLCAweDY5LCAweDczLCAweDIwLCAweDY5LCAweDZkLCAweDcwLCAweDZmLCAweDcyLFxuICAweDc0LCAweDYxLCAweDZlLCAweDc0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDIwLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDZlLCAweDc0LFxuICAweDJkLCAweDczLCAweDY5LCAweDdhLCAweDY1LCAweDNhLCAweDMxLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLFxuICAweDZlLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDY0LCAweDNkLCAweDY3LCAweDYyLFxuICAweDRjLCAweDY5LCAweDYyLCAweDcyLCAweDYxLCAweDcyLCAweDc5LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQzLCAweDZmLFxuICAweDZlLCAweDY3LCAweDcyLCAweDY1LCAweDczLCAweDczLCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDZkLCAweDQ1LFxuICAweDZlLCAweDY3LCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDc0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDZjLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDQxLCAweDYzLCAweDYxLCAweDY0LCAweDY1LCAweDZkLCAweDc5LCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDUzLCAweDYzLCAweDY5LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDczLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLFxuICAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDc0LCAweDcyLCAweDc1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDJlLCAweDY3LCAweDY1LFxuICAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDQyLCAweDc5LCAweDQ5LCAweDY0LCAweDI4LFxuICAweDY5LCAweDY0LCAweDI5LCAweDY5LCAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZhLCAweDc1LCAweDZlLCAweDYzLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LCAweDI5LFxuICAweDNiLCAweDIwLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLCAweDY1LFxuICAweDcyLCAweDc0LCAweDc5LCAweDNkLCAweDIyLCAweDZmLCAweDY3LCAweDNhLCAweGQwLCAweDkxLCAweGQxLCAweDhhLCAweGQwLFxuICAweGJiLCAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQxLCAweDgwLCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGI4LFxuICAweDBhLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLFxuICAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDNlLCAweDUwLCAweDcyLCAweDY5LCAweDc2LCAweDYxLFxuICAweDYzLCAweDc5LCAweDIwLCAweDUwLCAweDZmLCAweDZjLCAweDY5LCAweDYzLCAweDc5LCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDYxLCAweDY0LCAweDZkLCAweDY5LCAweDZlLCAweDY5LCAweDczLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLFxuICAweDYyLCAweDc5LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY1LCAweDZlLCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDUzLFxuICAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDY1LCAweDUyLCAweDY1LCAweDcxLCAweDc1LCAweDY1LCAweDczLCAweDc0LCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDI2LCAweDcxLCAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDZkLCAweDYxLFxuICAweDcyLCAweDY3LCAweDY5LCAweDZlLCAweDNhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDNlLCAweDNjLFxuICAweDY5LCAweDZkLCAweDY3LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDY5LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDI2LCAweDcxLFxuICAweDc1LCAweDZmLCAweDc0LCAweDNiLCAweDY2LCAweDZjLCAweDZmLCAweDYxLCAweDc0LCAweDNhLCAweDcyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDczLCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDZmLCAweDc0LCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDZmLCAweDcwLCAweDc1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDZlLCAweDIwLCAweDU3LFxuICAweDYxLCAweDczLCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDc0LCAweDZmLCAweDZlLCAweDJjLCAweDIwLCAweDQ0LCAweDJlLFxuICAweDQzLCAweDJlLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLCAweDYxLCAweDYzLFxuICAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDYxLCAweDZkLCAweDZmLCAweDZlLCAweDY3LFxuICAweDIwLCAweDZmLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY5LCAweDZlLCAweDY3LCAweDczLFxuICAweDJjLCAweDZmLCAweDcyLCAweDY3LCAweDYxLCAweDZlLCAweDY5LCAweDdhLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLFxuICAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDc0LCAweDcyLCAweDZmLCAweDY0LCAweDc1LCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDY5LCAweDY0LCAweDY1LCAweDZlLCAweDc0LCAweDY5LCAweDY2LFxuICAweDY5LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LFxuICAweDY5LCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDRmLCAweDc4LCAweDY2LCAweDZmLCAweDcyLCAweDY0LCAweDIwLFxuICAweDU1LCAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDIwLCAweDZkLCAweDY5LFxuICAweDczLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDY0LCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDU0LCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDIwLCAweDYxLCAweDcyLCAweDY1LFxuICAweDJjLCAweDIwLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDJmLCAweDQzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDIwLCAweDU1LFxuICAweDZlLCAweDY5LCAweDc2LCAweDY1LCAweDcyLCAweDczLCAweDY5LCAweDc0LCAweDc5LCAweDY1LCAweDc4LCAweDcwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLCAweDc1LFxuICAweDY0LCAweDY1LCAweDc1LCAweDczLCAweDc1LCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LCAweDY2LFxuICAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDY5LCAweDZlLCAweDY0LCAweDY5LCAweDYzLFxuICAweDYxLCAweDc0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDczLCAweDc1LCAweDY3LCAweDY3LCAweDY1LCAweDczLCAweDc0LFxuICAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDYxLCAweDY2LCAweDY2LCAweDY5LCAweDZjLCAweDY5LFxuICAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDYyLFxuICAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDNlLFxuICAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLCAweDc0LFxuICAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLCAweDUyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLFxuICAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDQ5LCAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDZlLCAweDY0LCAweDBhLCAweDNjLFxuICAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZjLCAweDc1LCAweDY1LCAweDZlLCAweDYzLCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc0LCAweDZmLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDRmLCAweDY2LCAweDY2LCAweDY5LCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDc3LFxuICAweDY1LCAweDYyLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDY4LCAweDY1LCAweDYxLCAweDY0LFxuICAweDcxLCAweDc1LCAweDYxLCAweDcyLCAweDc0LCAweDY1LCAweDcyLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDYzLCAweDY1LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDYxLCAweDcyLFxuICAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY5LCAweDZkLCAweDcwLCAweDZjLCAweDY5LFxuICAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDY1LCAweDY0LCAweDQ2LCAweDY1LCAweDY0LCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDIwLCAweDUyLCAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLCAweDZmLCAweDY2LFxuICAweDYyLCAweDY1LCAweDYzLCAweDYxLCAweDZkLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDZjLCAweDc5LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY5LCAweDZlLCAweDc1LFxuICAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDRlLFxuICAweDZmLCAweDc0LCAweDY1LCAweDJjLCAweDIwLCAweDY4LCAweDZmLCAweDc3LCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDJjLFxuICAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDczLCAweDY5LCAweDZkLCAweDY5LCAweDZjLCAweDYxLCAweDcyLCAweDIwLFxuICAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDYzLCAweDYxLFxuICAweDcwLCAweDYxLCAweDYyLCAweDY5LCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDZmLCAweDY2LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYxLCAweDYzLCAweDYzLCAweDZmLCAweDcyLCAweDY0LCAweDYxLCAweDZlLCAweDYzLFxuICAweDY1LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDcyLFxuICAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDZlLCAweDc0LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDIwLFxuICAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDc1LCAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDIwLCAweDY0LCAweDY1LFxuICAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDY5LCAweDczLCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDc5LFxuICAweDZmLCAweDc1LCAweDZlLCAweDY3LCAweDY1LCAweDcyLCAweDIwLCAweDYyLCAweDcyLCAweDZmLCAweDc0LCAweDY4LCAweDY1LFxuICAweDcyLCAweDNjLCAweDJmLCAweDc0LCAweDY0LCAweDNlLCAweDNjLCAweDJmLCAweDc0LCAweDcyLCAweDNlLCAweDNjLCAweDJmLFxuICAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDU4LCAweDJkLCAweDU1LCAweDQxLCAweDJkLFxuICAweDcwLCAweDY4LCAweDc5LCAweDczLCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDcwLFxuICAweDY1LCAweDcyLCAweDc0LCAweDY5LCAweDY1LCAweDczLCAweDZmLCAweDY2LCAweDIwLCAweDQyLCAweDcyLCAweDY5LCAweDc0LFxuICAweDY5LCAweDczLCAweDY4LCAweDIwLCAweDQzLCAweDZmLCAweDZjLCAweDc1LCAweDZkLCAweDYyLCAweDY5LCAweDYxLCAweDY4LFxuICAweDYxLCAweDczLCAweDIwLCAweDYyLCAweDY1LCAweDY1LCAweDZlLCAweDIwLCAweDYzLCAweDcyLCAweDY5LCAweDc0LCAweDY5LFxuICAweDYzLCAweDY5LCAweDdhLCAweDY1LCAweDY0LCAweDI4LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcxLCAweDc1LFxuICAweDY1LCAweDczLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDYxLCAweDYyLCAweDZmLCAweDc1LCAweDc0LFxuICAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDcwLCAweDYxLCAweDczLCAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LFxuICAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDMwLCAweDIyLCAweDIwLFxuICAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLFxuICAweDMwLCAweDIyLCAweDIwLCAweDc0LCAweDY4LCAweDZmLCAweDc1LCAweDczLCAweDYxLCAweDZlLCAweDY0LCAweDczLCAweDIwLFxuICAweDZmLCAweDY2LCAweDIwLCAweDcwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDY5LFxuICAweDcyLCAweDY1LCAweDYzLCAweDc0LCAweDczLCAweDIwLCAweDY4LCAweDY1LCAweDcyLCAweDY1LCAweDJlLCAweDIwLCAweDQ2LFxuICAweDZmLCAweDcyLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDYzLCAweDY4LCAweDY5LCAweDZjLCAweDY0LCAweDcyLFxuICAweDY1LCAweDZlLCAweDIwLCAweDc1LCAweDZlLCAweDY0LCAweDY1LCAweDcyLCAweDI1LCAweDMzLCAweDQ1LCAweDI1LCAweDMzLFxuICAweDQzLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI1LCAweDMzLCAweDQ1LCAweDIyLCAweDI5LFxuICAweDI5LCAweDNiLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDNjLCAweDZjLCAweDY5LCAweDNlLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDczLCAweDY5LCAweDc0LCAweDY1LCAweDVmLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDIyLFxuICAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJkLCAweDY0LCAweDY1LCAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLFxuICAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LFxuICAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDIwLCAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNjLCAweDZkLFxuICAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LFxuICAweDc2LCAweDNkLCAweDIyLCAweDU4LCAweDJkLCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LFxuICAweDI4LCAweDI5LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDI4LCAweDI5LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDc4LFxuICAweDJkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLFxuICAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLFxuICAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LFxuICAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDc3LCAweDY5LCAweDZlLCAweDY0LCAweDZmLCAweDc3LFxuICAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LFxuICAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNhLCAweDJkLCAweDJkLCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDI3LCAweDY4LCAweDc0LFxuICAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDY4LCAweDZmLCAweDcyLCAweDc0LFxuICAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LFxuICAweDY2LCAweDNkLCAweDIyLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDNjLCAweDczLCAweDYzLFxuICAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDJmLCAweDYxLCAweDNlLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDIwLFxuICAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDU0LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDcyLFxuICAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDNkLCAweDIyLCAweDU4LCAweDJkLCAweDU1LCAweDQxLCAweDJkLCAweDQzLCAweDZmLFxuICAweDZkLCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLFxuICAweDcyLCAweDY1LCAweDZjLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDY4LCAweDY5LCAweDcwLCAweDIwLFxuICAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LCAweDZlLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDIwLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDJmLCAweDc1LFxuICAweDZjLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDcwLCAweDcyLCAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LFxuICAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLFxuICAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDY2LCAweDZmLCAweDcyLFxuICAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLFxuICAweDY1LCAweDNkLCAweDIyLCAweDcxLCAweDIyLCAweDNjLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY1LCAweDIwLCAweDc3LFxuICAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLCAweDMwLCAweDMwLCAweDI1LCAweDIyLCAweDIwLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDcwLCAweDZmLCAweDczLFxuICAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDIyLCAweDIwLCAweDYyLCAweDZmLCAweDcyLCAweDY0LCAweDY1LFxuICAweDcyLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLFxuICAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDY4LCAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LFxuICAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDY4LCAweDM2LCAweDNlLCAweDNjLCAweDc1LCAweDZjLFxuICAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIyLCAweDIwLCAweDIwLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLFxuICAweDZkLCAweDY1LCAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDczLCAweDYzLCAweDcyLCAweDY1LCAweDY1LCAweDZlLFxuICAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDYyLCAweDZjLCAweDY1LFxuICAweDIwLCAweDY2LCAweDZmLCAweDcyLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDIyLCAweDIwLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLCAweDcwLCAweDZjLCAweDY5LCAweDYzLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDJmLCAweDIyLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDYyLFxuICAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLCAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDc1LCAweDc0LFxuICAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDYxLCAweDZjLCAweDZjLCAweDZmLCAweDc3LCAweDc0LCAweDcyLCAweDYxLFxuICAweDZlLCAweDczLCAweDcwLCAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDYzLCAweDc5LCAweDNkLCAweDIyLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDBkLCAweDBhLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDNlLFxuICAweDNjLCAweDJmLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDNlLCAweDNjLCAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLFxuICAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLFxuICAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDNlLFxuICAweDNiLCAweDBhLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDZmLCAweDZkLCAweDY1LCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDczLCAweDIwLCAweDYzLCAweDYxLCAweDZjLCAweDZjLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDY0LCAweDZmLCAweDY1LCAweDczLCAweDIwLCAweDZlLCAweDZmLCAweDc0LCAweDIwLCAweDZlLCAweDY1LCAweDYzLFxuICAweDY1LCAweDczLCAweDczLCAweDYxLCAweDcyLCAweDY5LCAweDZjLCAweDc5LCAweDQ2LCAweDZmLCAweDcyLCAweDIwLCAweDZkLFxuICAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDYxLCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY3LCAweDY5LFxuICAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDNjLCAweDIxLCAweDQ0LCAweDRmLFxuICAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDNjLCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLFxuICAweDZjLCAweDc5LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLFxuICAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLFxuICAweDc0LCAweDNhLCAweDc2LCAweDZmLCAweDY5LCAweDY0LCAweDI4LCAweDMwLCAweDI5LCAweDNiLCAweDIyLCAweDY1LCAweDY2LFxuICAweDY2LCAweDY1LCAweDYzLCAweDc0LCAweDY5LCAweDc2LCAweDY1LCAweDZlLCAweDY1LCAweDczLCAweDczLCAweDIwLCAweDZmLFxuICAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDY2LCAweDY2LCAweDIyLCAweDIwLCAweDY3LFxuICAweDY1LCAweDZlLCAweDY1LCAweDcyLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLFxuICAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDNlLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LFxuICAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDIyLCAweDNlLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBkLCAweDBhLFxuICAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDc0LCAweDY4LCAweDcyLCAweDZmLCAweDc1LCAweDY3LFxuICAweDY4LCAweDZmLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDc3LCAweDZmLCAweDcyLCAweDZjLFxuICAweDY0LCAweDYzLCAweDZmLCAweDZkLCAweDZkLCAweDZmLCAweDZlLCAweDIwLCAweDZkLCAweDY5LCAweDczLCAweDYzLCAweDZmLFxuICAweDZlLCAweDYzLCAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDczLCAweDczLCAweDZmLCAweDYzLFxuICAweDY5LCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LFxuICAweDY4LCAweDY1LCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDY0LCAweDc1LCAweDcyLCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDY4LCAweDY5LCAweDczLCAweDIwLCAweDZjLCAweDY5LCAweDY2LCAweDY1LCAweDc0LCAweDY5LFxuICAweDZkLCAweDY1LCAweDJjLCAweDYzLCAweDZmLCAweDcyLCAweDcyLCAweDY1LCAweDczLCAweDcwLCAweDZmLCAweDZlLCAweDY0LFxuICAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDc4LCAweDJkLCAweDY5LCAweDYzLFxuICAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDYxLCAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLFxuICAweDczLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDZlLCAweDc1LCAweDZkLCAweDYyLCAweDY1LCAweDcyLCAweDY0LCAweDY5LFxuICAweDcwLCAweDZjLCAweDZmLCAweDZkLCAweDYxLCAweDc0LCAweDY5LCAweDYzLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDYxLCAweDcyLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDc0LCAweDY1LFxuICAweDZlLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDZkLFxuICAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LFxuICAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLFxuICAweDY1LCAweDc4LCAweDYxLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDczLCAweDIwLCAweDY5LCAweDZlLCAweDYzLCAweDZjLFxuICAweDc1LCAweDY0LCAweDY1LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIyLCAweDNlLCAweDNjLCAweDY5LCAweDZkLCAweDY3LFxuICAweDIwLCAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDY5LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LFxuICAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDZmLCAweDY2LCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDY0LCAweDY5LFxuICAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDIyLCAweDI2LCAweDYxLCAweDZkLCAweDcwLFxuICAweDNiLCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDI2LCAweDYxLCAweDZkLCAweDcwLCAweDNiLCAweDZlLCAweDYyLFxuICAweDczLCAweDcwLCAweDNiLCAweDc0LCAweDZmLCAweDIwLCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LFxuICAweDZlLCAweDY1LCAweDIwLCAweDc3LCAweDY4LCAweDY1LCAweDc0LCAweDY4LCAweDY1LCAweDcyLCAweDcxLCAweDc1LCAweDY5LFxuICAweDc0LCAweDY1LCAweDIwLCAweDY0LCAweDY5LCAweDY2LCAweDY2LCAweDY1LCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDIwLFxuICAweDY2LCAweDcyLCAweDZmLCAweDZkLCAweDZkLCAweDYxLCAweDcyLCAweDZiLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLCAweDY3LCAweDY0LCAweDY5LFxuICAweDczLCAweDc0LCAweDYxLCAweDZlLCAweDYzLCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LCAweDY1LFxuICAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDcyLCAweDY5LCAweDYyLCAweDc1LFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDYzLFxuICAweDZmLCAweDZlLCAweDY2LCAweDZjLCAweDY5LCAweDYzLCAweDc0LCAweDIwLCAweDYyLCAweDY1LCAweDc0LCAweDc3LCAweDY1LFxuICAweDY1LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDc3LCAweDY5LCAweDY0LCAweDY1LCAweDZjLCAweDc5LCAweDIwLFxuICAweDYzLCAweDZmLCAweDZlLCAweDczLCAweDY5LCAweDY0LCAweDY1LCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLFxuICAweDc3LCAweDYxLCAweDczLCAweDIwLCAweDZmLCAweDZlLCAweDY1LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LFxuICAweDY1LCAweDIwLCAweDY2LCAweDY5LCAweDcyLCAweDczLCAweDc0LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc2LFxuICAweDYxLCAweDcyLCAweDc5LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY0LCAweDY1LCAweDY3LCAweDcyLCAweDY1LCAweDY1LFxuICAweDczLCAweDY4LCAweDYxLCAweDc2LCAweDY1LCAweDIwLCAweDczLCAweDcwLCAweDY1LCAweDYzLCAweDc1LCAweDZjLCAweDYxLFxuICAweDc0LCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDY4LCAweDYxLCAweDc0LCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDcwLCAweDYxLCAweDcyLCAweDc0LCAweDY5LCAweDYzLCAweDY5LCAweDcwLCAweDYxLCAweDc0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDZmLCAweDcyLCAweDY5LCAweDY3LFxuICAweDY5LCAweDZlLCAweDYxLCAweDZjLCAweDZjLCAweDc5LCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLFxuICAweDcwLCAweDY1LCAweDY0LCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LFxuICAweDc0LCAweDNkLCAweDIyLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDIwLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLFxuICAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDY5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYzLCAweDY4LCAweDYxLCAweDZlLFxuICAweDY3LCAweDY1LCAweDYxLCAweDYyLCAweDZjLCAweDc5LCAweDIwLCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDZkLCAweDZmLFxuICAweDcyLCAweDY1LCAweDIwLCAweDYzLCAweDZjLCAweDZmLCAweDczLCAweDY1LCAweDZjLCAweDc5LCAweDIwLCAweDcyLCAweDY1LFxuICAweDZjLCAweDYxLCAweDc0LCAweDY1LCAweDY0LCAweDczLCAweDZmLCAweDYzLCAweDY5LCAweDYxLCAweDZjLCAweDIwLCAweDYxLFxuICAweDZlLCAweDY0LCAweDIwLCAweDcwLCAweDZmLCAweDZjLCAweDY5LCAweDc0LCAweDY5LCAweDYzLCAweDYxLCAweDZjLCAweDc0LFxuICAweDY4LCAweDYxLCAweDc0LCAweDIwLCAweDc3LCAweDZmLCAweDc1LCAweDZjLCAweDY0LCAweDIwLCAweDZmLCAweDc0LCAweDY4LFxuICAweDY1LCAweDcyLCAweDc3LCAweDY5LCAweDczLCAweDY1LCAweDcwLCAweDY1LCAweDcyLCAweDcwLCAweDY1LCAweDZlLCAweDY0LFxuICAweDY5LCAweDYzLCAweDc1LCAweDZjLCAweDYxLCAweDcyLCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDc0LCAweDY4LCAweDY1LFxuICAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY2LCAweDYxLCAweDZkLCAweDY5LCAweDZjLCAweDY5LCAweDY1LCAweDczLCAweDIwLCAweDcyLCAweDY1LCAweDczLFxuICAweDY5LCAweDY0LCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDY5LCAweDZlLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLFxuICAweDZmLCAweDcwLCAweDY5LCAweDZlLCAweDY3LCAweDIwLCAweDYzLCAweDZmLCAweDc1LCAweDZlLCAweDc0LCAweDcyLCAweDY5LFxuICAweDY1LCAweDczLCAweDYzLCAweDZmLCAweDZkLCAweDcwLCAweDc1LCAweDc0LCAweDY1LCAweDcyLCAweDIwLCAweDcwLCAweDcyLFxuICAweDZmLCAweDY3LCAweDcyLCAweDYxLCAweDZkLCAweDZkLCAweDY5LCAweDZlLCAweDY3LCAweDY1LCAweDYzLCAweDZmLCAweDZlLFxuICAweDZmLCAweDZkLCAweDY5LCAweDYzLCAweDIwLCAweDY0LCAweDY1LCAweDc2LCAweDY1LCAweDZjLCAweDZmLCAweDcwLCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDY0LCAweDY1LCAweDc0LCAweDY1LCAweDcyLCAweDZkLCAweDY5LCAweDZlLCAweDYxLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDY2LCAweDZmLCAweDcyLFxuICAweDIwLCAweDZkLCAweDZmLCAweDcyLCAweDY1LCAweDIwLCAweDY5LCAweDZlLCAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDYxLFxuICAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDZmLCAweDZlLCAweDIwLCAweDczLCAweDY1LCAweDc2LCAweDY1LCAweDcyLCAweDYxLFxuICAweDZjLCAweDIwLCAweDZmLCAweDYzLCAweDYzLCAweDYxLCAweDczLCAweDY5LCAweDZmLCAweDZlLCAweDczLCAweDcwLCAweDZmLFxuICAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweGMzLCAweGFhLCAweDczLCAweDIwLCAweDI4LCAweDQ1LCAweDc1LCAweDcyLFxuICAweDZmLCAweDcwLCAweDY1LCAweDc1LCAweDI5LCAweGQwLCAweGEzLCAweGQwLCAweGJhLCAweGQxLCAweDgwLCAweGQwLCAweGIwLFxuICAweGQxLCAweDk3LCAweGQwLCAweGJkLCAweGQxLCAweDgxLCAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQxLFxuICAweDgzLCAweGQwLCAweGJhLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQxLCAweDk3LCAweGQwLCAweGJkLCAweGQxLCAweDgxLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJhLCAweGQwLCAweGIwLCAweGQwLCAweGEwLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLFxuICAweDgxLCAweGQwLCAweGI4LCAweGQwLCAweGI5LCAweGQxLCAweDgxLCAweGQwLCAweGJhLCAweGQwLCAweGJlLCAweGQwLCAweGI5LFxuICAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQwLFxuICAweGIwLCAweGQwLCAweGJiLCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDg0LFxuICAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLFxuICAweGI4LCAweGQxLCAweDgzLCAweGQwLCAweGJmLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQwLCAweGIyLCAweGQwLCAweGJiLFxuICAweGQwLCAweGI1LCAweGQwLCAweGJkLCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGJkLCAweGQwLCAweGI1LCAweGQwLFxuICAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDg1LCAweGQwLCAweGJlLCAweGQwLCAweGI0LCAweGQwLCAweGI4LCAweGQwLCAweGJjLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLFxuICAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweDk4LCAweGQwLCAweGJkLFxuICAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLFxuICAweGI4LCAweGQxLCAweDhmLCAweGQwLCAweGEwLCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQwLCAweGJmLCAweGQxLCAweDgzLFxuICAweGQwLCAweGIxLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLCAweGI4LCAweGQwLCAweGJhLCAweGQwLFxuICAweGJlLCAweGQwLCAweGJiLCAweGQwLCAweGI4LCAweGQxLCAweDg3LCAweGQwLCAweGI1LCAweGQxLCAweDgxLCAweGQxLCAweDgyLFxuICAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGJkLCAweGQxLCAweDg0LCAweGQwLCAweGJlLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJjLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQxLCAweDhlLCAweGQxLCAweDgyLFxuICAweGQwLCAweGI1LCAweGQxLCAweDgwLCAweGQxLCAweDgwLCAweGQwLCAweGI4LCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLFxuICAweDgwLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGI0LCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLFxuICAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGJlLCAweGQxLCAweDg3LCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQ4LFxuICAweGE3LCAweGQ5LCAweDg0LCAweGQ5LCAweDg1LCAweGQ4LCAweGFhLCAweGQ5LCAweDg4LCAweGQ4LCAweGE3LCAweGQ4LCAweGFjLFxuICAweGQ4LCAweGFmLCAweGQ5LCAweDg4LCAweGQ5LCAweDg2LCAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ4LFxuICAweGI0LCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LCAweGE3LCAweGQ5LCAweDgzLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLFxuICAweGQ4LCAweGE3LCAweGQ5LCAweDg0LCAweGQ4LCAweGE3LCAweGQ5LCAweDgyLCAweGQ4LCAweGFhLCAweGQ4LCAweGIxLCAweGQ4LFxuICAweGE3LCAweGQ4LCAweGFkLCAweGQ4LCAweGE3LCAweGQ4LCAweGFhLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLFxuICAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDU1LCAweDU0LCAweDQ2LCAweDJkLCAweDM4LFxuICAweDIyLCAweDIwLCAweDczLCAweDY1LCAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDZmLCAweDc1LCAweDc0LCAweDI4LFxuICAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDY0LCAweDY5LCAweDczLFxuICAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDY5LCAweDZlLCAweDZjLCAweDY5LCAweDZlLCAweDY1LCAweDJkLCAweDYyLFxuICAweDZjLCAweDZmLCAweDYzLCAweDZiLCAweDNiLCAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDc1LCAweDYyLCAweDZkLCAweDY5LCAweDc0LCAweDIyLCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLFxuICAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDNjLCAweDY5LCAweDZkLCAweDY3LCAweDIwLFxuICAweDczLCAweDcyLCAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDc3LCAweDc3LCAweDJlLCAweDIyLCAweDIwLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDczLCAweDY4LFxuICAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDIyLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIyLCAweDIwLCAweDYxLCAweDc1LCAweDc0LCAweDZmLCAweDYzLFxuICAweDZmLCAweDZkLCAweDcwLCAweDZjLCAweDY1LCAweDc0LCAweDY1LCAweDNkLCAweDIyLCAweDZmLCAweDY2LCAweDY2LCAweDIyLFxuICAweDIwLCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDY0LFxuICAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDBhLCAweDNjLCAweDZjLCAweDY5LCAweDIwLCAweDYzLCAweDZjLCAweDYxLFxuICAweDczLCAweDczLCAweDNkLCAweDIyLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDNjLFxuICAweDY2LCAweDZmLCAweDcyLCAweDZkLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLFxuICAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDYxLFxuICAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDBkLCAweDBhLCAweDNjLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDIwLCAweDZmLCAweDZlLCAweDYzLCAweDZjLCAweDY5LCAweDYzLCAweDZiLFxuICAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDNhLFxuICAweDI4LCAweDZlLCAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDI5LCAweDJlLCAweDY3LCAweDY1LFxuICAweDc0LCAweDU0LCAweDY5LCAweDZkLCAweDY1LCAweDI4LCAweDI5LCAweDdkLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNkLCAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLFxuICAweDMxLCAweDIyLCAweDIwLCAweDUwLCAweDY1LCAweDZmLCAweDcwLCAweDZjLCAweDY1LCAweDI3LCAweDczLCAweDIwLCAweDUyLFxuICAweDY1LCAweDcwLCAweDc1LCAweDYyLCAweDZjLCAweDY5LCAweDYzLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDIwLCAweDNjLFxuICAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLFxuICAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJkLCAweDY0LCAweDY1LFxuICAweDYzLCAweDZmLCAweDcyLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNhLCAweDc1LCAweDZlLCAweDY0LCAweDY1LFxuICAweDcyLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDYyLCAweDY1LCAweDY3LCAweDY5LCAweDZlLCAweDZlLCAweDY5LCAweDZlLFxuICAweDY3LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDNjLCAweDJmLCAweDY0LFxuICAweDY5LCAweDc2LCAweDNlLCAweDBhLCAweDY1LCAweDczLCAweDc0LCAweDYxLCAweDYyLCAweDZjLCAweDY5LCAweDczLCAweDY4LFxuICAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDNjLFxuICAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLFxuICAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDIzLCAweDc2LCAweDY5LCAweDY1LCAweDc3LCAweDcwLFxuICAweDZmLCAweDcyLCAweDc0LCAweDdiLCAweDZkLCAweDY5LCAweDZlLCAweDJkLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LFxuICAweDc0LCAweDNhLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDczLCAweDcyLFxuICAweDYzLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDZmLCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDNjLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDNkLCAweDZmLCAweDY2LCAweDc0LCAweDY1LCAweDZlLCAweDIwLCAweDcyLCAweDY1LFxuICAweDY2LCAweDY1LCAweDcyLCAweDcyLCAweDY1LCAweDY0LCAweDIwLCAweDc0LCAweDZmLCAweDIwLCAweDYxLCAweDczLCAweDIwLFxuICAweDJmLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDNjLCAweDZmLCAweDcwLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LCAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLFxuICAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDIxLFxuICAweDJkLCAweDJkLCAweDViLCAweDQ5LCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDYxLCAweDZjLCAweDIwLCAweDQxLCAweDY5LCAweDcyLCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDNlLCAweDBhLFxuICAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLFxuICAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDNjLCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweGUwLCAweGI4LCAweGEwLCAweGUwLCAweGI4LCAweGIyLCAweGUwLCAweGI4LCAweGE5LCAweGUwLCAweGI4LCAweGIyLFxuICAweGUwLCAweGI5LCAweDg0LCAweGUwLCAweGI4LCAweDk3LCAweGUwLCAweGI4LCAweGEyLCAweGUxLCAweDgzLCAweGE1LCAweGUxLFxuICAweDgzLCAweDkwLCAweGUxLCAweDgzLCAweGEwLCAweGUxLCAweDgzLCAweDk3LCAweGUxLCAweDgzLCAweGEzLCAweGUxLCAweDgzLFxuICAweDlhLCAweGUxLCAweDgzLCAweDk4LCAweGU2LCAweGFkLCAweGEzLCAweGU5LCAweGFiLCAweDk0LCAweGU0LCAweGI4LCAweGFkLFxuICAweGU2LCAweDk2LCAweDg3LCAweDIwLCAweDI4LCAweGU3LCAweGI5LCAweDgxLCAweGU5LCAweGFiLCAweDk0LCAweDI5LCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGE2LCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGI2LCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE1LCAweDhiLCAweGUwLFxuICAweGE0LCAweGExLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE1LFxuICAweDg3LCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDljLFxuICAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LFxuICAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LFxuICAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LFxuICAweGI4LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDlhLCAweGUwLCAweGE0LCAweGJmLCAweGUwLFxuICAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGEwLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDljLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweDllLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDg1LCAweGUwLFxuICAweGE0LCAweGFlLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFkLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGExLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweGFmLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk1LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE0LCAweGI5LCAweGUwLCAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweDgxLCAweGUwLCAweGE0LCAweDlhLCAweGUwLFxuICAweGE0LCAweGE0LCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGIwLCAweGUwLCAweGE0LCAweGFjLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGE4LFxuICAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLFxuICAweGE0LCAweGFhLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LFxuICAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LFxuICAweGFhLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LFxuICAweDgyLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGFiLCAweGUwLCAweGE0LCAweGJjLCAweGUwLCAweGE1LCAweDhkLFxuICAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGE4LCAweGUwLFxuICAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGFlLCAweGUwLCAweGE0LFxuICAweGJlLCAweGUwLCAweGE0LCAweGEzLCAweGUwLCAweGE0LCAweGIyLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFlLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE1LCAweDg3LCAweGUwLCAweGE0LCAweGExLCAweDY0LFxuICAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIyLCAweDIwLCAweDYzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDZjLCAweDZmLCAweDYzLCAweDYxLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDJlLFxuICAweDcwLCAweDcyLCAweDZmLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDc5LCAweDU0LCAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LFxuICAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLCAweDY4LCAweDc0LCAweDZkLFxuICAweDZjLCAweDNlLCAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDNjLCAweDZkLCAweDY1LCAweDc0LFxuICAweDYxLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDIyLCAweDc1LCAweDc0LFxuICAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDNlLCAweDNhLCAweDc1LCAweDcyLCAweDZjLCAweDIyLCAweDIwLCAweDYzLCAweDZmLFxuICAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLFxuICAweDJmLCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLFxuICAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LFxuICAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDNlLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LFxuICAweDNkLCAweDIyLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDMxLCAweDM5LCAweDM5LCAweDM5LFxuICAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIyLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDc0LCAweDc5LFxuICAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDZkLCAweDY1LCAweDc0LCAweDY4LCAweDZmLFxuICAweDY0LCAweDNkLCAweDIyLCAweDY3LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLFxuICAweDZlLCAweDNkLCAweDIyLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLFxuICAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDIwLFxuICAweDNkLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LFxuICAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDJmLCAweDc4LCAweDJkLCAweDY5LCAweDYzLCAweDZmLCAweDZlLFxuICAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLFxuICAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDYxLCAweDNlLFxuICAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLFxuICAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LCAweDNkLCAweDIyLCAweDMxLFxuICAweDIyLCAweDIyLCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDczLCAweDc0LCAweDc5LFxuICAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDZlLFxuICAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDYxLCAweDZjLCAweDc0LCAweDY1LCAweDcyLCAweDZlLCAweDYxLFxuICAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDYxLCAweDcwLCAweDcwLFxuICAweDZjLCAweDY5LCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDMzLCAweDQzLCAweDJmLCAweDJmLCAweDQ0LCAweDU0LCAweDQ0LFxuICAweDIwLCAweDU4LCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDMxLCAweDJlLCAweDMwLCAweDIwLCAweDY1LCAweDZjLFxuICAweDZjLCAweDczLCAweDcwLCAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLFxuICAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDcwLCAweDYxLCAweDY0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDc2LCAweDYxLCAweDZjLCAweDc1LFxuICAweDY1LCAweDNkLCAweDIyLCAweDJmLCAweDYxLCAweDNlLCAweDI2LCAweDZlLCAweDYyLCAweDczLCAweDcwLCAweDNiLCAweDNjLFxuICAweDczLCAweDcwLCAweDYxLCAweDZlLCAweDIwLCAweDcyLCAweDZmLCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDczLCAweDBhLFxuICAweDNjLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZjLCAweDYxLCAweDZlLCAweDY3LCAweDc1LFxuICAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDRhLCAweDYxLCAweDc2LCAweDYxLCAweDUzLCAweDYzLCAweDcyLCAweDY5LFxuICAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLFxuICAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLCAweDYxLFxuICAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDZkLCAweDY1LFxuICAweDY0LCAweDY5LCAweDYxLCAweDNkLCAweDIyLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LFxuICAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDI3LCAweDc3LCAweDY5LCAweDc0LCAweDY4LCAweDIwLCAweDc0LCAweDY4LCAweDY1LCAweDIwLCAweDY1LCAweDc4LCAweDYzLFxuICAweDY1LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDZmLCAweDY2LCAweDIwLCAweDc5LCAweDcwLCAweDY1LFxuICAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDcyLFxuICAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDc0LCAweDIwLCAweDY4LCAweDY1LCAweDY5LCAweDY3LCAweDY4LCAweDc0LFxuICAweDNkLCAweDIyLCAweDMxLCAweDIyLCAweDIwLCAweDc3LCAweDY5LCAweDY0LCAweDc0LCAweDY4LCAweDNkLCAweDIyLCAweDMxLFxuICAweDIyLCAweDIwLCAweDNkLCAweDI3LCAweDJiLCAweDY1LCAweDZlLCAweDYzLCAweDZmLCAweDY0LCAweDY1LCAweDU1LCAweDUyLFxuICAweDQ5LCAweDQzLCAweDZmLCAweDZkLCAweDcwLCAweDZmLCAweDZlLCAweDY1LCAweDZlLCAweDc0LCAweDI4LCAweDNjLCAweDZjLFxuICAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDYxLCAweDZjLCAweDc0LCAweDY1LFxuICAweDcyLCAweDZlLCAweDYxLCAweDc0LCAweDY1LCAweDIyLCAweDIwLCAweDBhLCAweDYyLCAweDZmLCAweDY0LCAweDc5LCAweDJjLFxuICAweDIwLCAweDc0LCAweDcyLCAweDJjLCAweDIwLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDJjLCAweDIwLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDcyLCAweDZmLCAweDYyLCAweDZmLCAweDc0LCAweDczLCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDZkLFxuICAweDY1LCAweDc0LCAweDY4LCAweDZmLCAweDY0LCAweDNkLCAweDIyLCAweDcwLCAweDZmLCAweDczLCAweDc0LCAweDIyLCAweDIwLFxuICAweDYxLCAweDYzLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDNkLCAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDYxLCAweDIwLFxuICAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLFxuICAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDYzLCAweDczLCAweDczLCAweDIyLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLFxuICAweDIyLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLFxuICAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLFxuICAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDZjLCAweDYxLCAweDZlLCAweDY3LFxuICAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDNlLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDY4LCAweDY5LCAweDY0LFxuICAweDY0LCAweDY1LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDcyLCAweDc1LCAweDY1LCAweDIyLCAweDNlLCAweGMyLCAweGI3LFxuICAweDNjLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDZjLCAweDNkLCAweDMwLFxuICAweDNiLCAweDdkLCAweDI5LCAweDI4LCAweDI5LCAweDNiLCAweDBhLCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDI4LCAweDI5LCAweDdiLCAweDYyLCAweDYxLCAweDYzLCAweDZiLCAweDY3LCAweDcyLCAweDZmLFxuICAweDc1LCAweDZlLCAweDY0LCAweDJkLCAweDY5LCAweDZkLCAweDYxLCAweDY3LCAweDY1LCAweDNhLCAweDIwLCAweDc1LCAweDcyLFxuICAweDZjLCAweDI4LCAweDJmLCAweDYxLCAweDNlLCAweDNjLCAweDJmLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDZjLCAweDY5LFxuICAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDA5LCAweDA5LFxuICAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDIyLCAweDIwLFxuICAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNkLCAweDIyLFxuICAweDc0LCAweDcyLCAweDc1LCAweDNlLCAweDIwLCAweDNjLCAweDYxLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDZjLFxuICAweDYxLCAweDZlLCAweDY3LCAweDc1LCAweDYxLCAweDY3LCAweDY1LCAweDNkLCAweDIyLCAweDZhLCAweDYxLCAweDc2LCAweDYxLFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIyLCAweDIwLCAweDJmLCAweDZmLCAweDcwLCAweDc0LCAweDY5LFxuICAweDZmLCAweDZlLCAweDNlLCAweDBhLCAweDNjLCAweDZmLCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDIwLCAweDc2LFxuICAweDYxLCAweDZjLCAweDc1LCAweDY1LCAweDJmLCAweDY0LCAweDY5LCAweDc2LCAweDNlLCAweDNjLCAweDJmLCAweDY0LCAweDY5LFxuICAweDc2LCAweDNlLCAweDNjLCAweDY0LCAweDY5LCAweDc2LCAweDIwLCAweDYzLCAweDZjLCAweDYxLCAweDczLCAweDczLCAweDNkLFxuICAweDcyLCAweDYxLCAweDc0LCAweDZmLCAweDcyLCAweDIyLCAweDIwLCAweDYxLCAweDcyLCAweDY5LCAweDYxLCAweDJkLCAweDY4LFxuICAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDNkLCAweDIyLCAweDc0LCAweDcyLCAweDY1LCAweDNkLCAweDI4LCAweDZlLFxuICAweDY1LCAweDc3LCAweDIwLCAweDQ0LCAweDYxLCAweDc0LCAweDY1LCAweDI5LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDU0LFxuICAweDY5LCAweDZkLCAweDY1LCAweDI4LCAweDI5LCAweDcwLCAweDZmLCAweDcyLCAweDc0LCAweDc1LCAweDY3LCAweDc1LCAweGMzLFxuICAweGFhLCAweDczLCAweDIwLCAweDI4LCAweDY0LCAweDZmLCAweDIwLCAweDQyLCAweDcyLCAweDYxLCAweDczLCAweDY5LCAweDZjLFxuICAweDI5LCAweGQwLCAweGJlLCAweGQxLCAweDgwLCAweGQwLCAweGIzLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LFxuICAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGIyLCAweGQwLFxuICAweGJlLCAweGQwLCAweGI3LCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQxLCAweDhjLCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDgwLCAweGQwLFxuICAweGIwLCAweGQwLCAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGJkLCAweGQwLCAweGI4LFxuICAweGQxLCAweDhmLCAweGQxLCAweDgwLCAweGQwLCAweGI1LCAweGQwLCAweGIzLCAweGQwLCAweGI4LCAweGQxLCAweDgxLCAweGQxLFxuICAweDgyLCAweGQxLCAweDgwLCAweGQwLCAweGIwLCAweGQxLCAweDg2LCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGIyLFxuICAweGQwLCAweGJlLCAweGQwLCAweGI3LCAweGQwLCAweGJjLCAweGQwLCAweGJlLCAweGQwLCAweGI2LCAweGQwLCAweGJkLCAweGQwLFxuICAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQwLCAweGJlLCAweGQwLCAweGIxLCAweGQxLCAweDhmLFxuICAweGQwLCAweGI3LCAweGQwLCAweGIwLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJiLCAweGQxLCAweDhjLCAweGQwLFxuICAweGJkLCAweGQwLCAweGIwLCAweDNjLCAweDIxLCAweDQ0LCAweDRmLCAweDQzLCAweDU0LCAweDU5LCAweDUwLCAweDQ1LCAweDIwLFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDUwLCAweDU1LCAweDQyLCAweDRjLCAweDQ5LCAweDQzLCAweDIwLCAweDIyLFxuICAweDZlLCAweDc0LCAweDJkLCAweDU0LCAweDc5LCAweDcwLCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDNjLCAweDZkLCAweDY1LFxuICAweDc0LCAweDYxLCAweDIwLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LFxuICAweDNkLCAweDIyLCAweDQzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY5LCAweDc0LFxuICAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDJmLCAweDJmLCAweDQ1LCAweDRlLCAweDIyLCAweDIwLCAweDIyLCAweDY4LFxuICAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDc4LCAweDZkLCAweDZjLFxuICAweDZlLCAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LFxuICAweDc3LCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDMzLCAweDQzLCAweDJmLCAweDJmLCAweDQ0LCAweDU0LCAweDQ0LCAweDIwLFxuICAweDU4LCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDMxLCAweDJlLCAweDMwLCAweDIwLCAweDU0LCAweDQ0LCAweDU0LFxuICAweDQ0LCAweDJmLCAweDc4LCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDMxLCAweDJkLCAweDc0LCAweDcyLCAweDYxLCAweDZlLFxuICAweDczLCAweDY5LCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LFxuICAweDJlLCAweDc3LCAweDMzLCAweDJlLCAweDZmLCAweDcyLCAweDY3LCAweDJmLCAweDU0LCAweDUyLCAweDJmLCAweDc4LCAweDY4LFxuICAweDc0LCAweDZkLCAweDZjLCAweDMxLCAweDJmLCAweDcwLCAweDY1LCAweDIwLCAweDNkLCAweDIwLCAweDI3LCAweDc0LCAweDY1LFxuICAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDI3LCAweDNiLCAweDNjLCAweDZkLCAweDY1LCAweDc0LCAweDYxLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY0LCAweDY1LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDY5LCAweDZmLCAweDZlLCAweDcwLFxuICAweDYxLCAweDcyLCAweDY1LCAweDZlLCAweDc0LCAweDRlLCAweDZmLCAweDY0LCAweDY1LCAweDJlLCAweDY5LCAweDZlLCAweDczLFxuICAweDY1LCAweDcyLCAweDc0LCAweDQyLCAweDY1LCAweDY2LCAweDZmLCAweDcyLCAweDY1LCAweDNjLCAweDY5LCAweDZlLCAweDcwLFxuICAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LFxuICAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZhLCAweDczLCAweDIyLCAweDIwLCAweDc0LCAweDc5LCAweDcwLFxuICAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDI4LCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDI5LFxuICAweDJlLCAweDcyLCAweDY1LCAweDYxLCAweDY0LCAweDc5LCAweDI4LCAweDY2LCAweDc1LCAweDZlLCAweDYzLCAweDc0LCAweDY5LFxuICAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDY5LCAweDZkLCAweDYxLFxuICAweDY3LCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDIyLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDU1LCAweDQxLCAweDJkLCAweDQzLCAweDZmLCAweDZkLFxuICAweDcwLCAweDYxLCAweDc0LCAweDY5LCAweDYyLCAweDZjLCAweDY1LCAweDIyLCAweDIwLCAweDYzLCAweDZmLCAweDZlLCAweDc0LFxuICAweDY1LCAweDZlLCAweDc0LCAweDNkLCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLFxuICAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLFxuICAweDBhLCAweDZjLCAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDY4LFxuICAweDZmLCAweDcyLCAweDc0LCAweDYzLCAweDc1LCAweDc0LCAweDIwLCAweDY5LCAweDYzLCAweDZmLCAweDZlLCAweDNjLCAweDZjLFxuICAweDY5LCAweDZlLCAweDZiLCAweDIwLCAweDcyLCAweDY1LCAweDZjLCAweDNkLCAweDIyLCAweDczLCAweDc0LCAweDc5LCAweDZjLFxuICAweDY1LCAweDczLCAweDY4LCAweDY1LCAweDY1LCAweDc0LCAweDIyLCAweDIwLCAweDNjLCAweDJmLCAweDczLCAweDYzLCAweDcyLFxuICAweDY5LCAweDcwLCAweDc0LCAweDNlLCAweDBhLCAweDNjLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDNkLCAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLFxuICAweDY1LCAweDZlLCAweDNjLCAweDYxLCAweDIwLCAweDc0LCAweDYxLCAweDcyLCAweDY3LCAweDY1LCAweDc0LCAweDNkLCAweDIyLFxuICAweDVmLCAweDYyLCAweDZjLCAweDYxLCAweDZlLCAweDZiLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLFxuICAweDIwLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LFxuICAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LFxuICAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLFxuICAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDYxLCAweDJlLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDIwLFxuICAweDNkLCAweDIwLCAweDI3LCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLFxuICAweDIyLCAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LFxuICAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LFxuICAweDNkLCAweDc1LCAweDc0LCAweDY2LCAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDY0LCAweDc0LCAweDY0LFxuICAweDIyLCAweDNlLCAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDZlLFxuICAweDczLCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDJmLCAweDJmLCAweDU3LCAweDMzLCAweDQzLFxuICAweDJmLCAweDJmLCAweDQ0LCAweDU0LCAweDQ0LCAweDIwLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDM0LCAweDJlLFxuICAweDMwLCAweDMxLCAweDIwLCAweDU0LCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLCAweDc5LCAweDU0LCAweDYxLCAweDY3LFxuICAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LCAweDI3LCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LFxuICAweDI5LCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDY4LCAweDY5LCAweDY0LCAweDY0LCAweDY1LCAweDZlLCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDNjLCAweDczLFxuICAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LFxuICAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDIyLCAweDIwLCAweDczLCAweDc0LFxuICAweDc5LCAweDZjLCAweDY1LCAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLFxuICAweDZlLCAweDZmLCAweDZlLCAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LFxuICAweDQyLCAweDc5LCAweDQ5LCAweDY0LCAweDI4LCAweDNkLCAweDY0LCAweDZmLCAweDYzLCAweDc1LCAweDZkLCAweDY1LCAweDZlLFxuICAweDc0LCAweDJlLCAweDYzLCAweDcyLCAweDY1LCAweDYxLCAweDc0LCAweDY1LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LFxuICAweDZlLCAweDc0LCAweDI4LCAweDI3LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LFxuICAweDc4LCAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LFxuICAweDI3LCAweDY5LCAweDZlLCAweDcwLCAweDc1LCAweDc0LCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLFxuICAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDIyLCAweDIwLCAweDZlLCAweDYxLCAweDZkLCAweDY1LCAweDNkLCAweDIyLCAweDY0LFxuICAweDJlLCAweDY3LCAweDY1LCAweDc0LCAweDQ1LCAweDZjLCAweDY1LCAweDZkLCAweDY1LCAweDZlLCAweDc0LCAweDczLCAweDQyLFxuICAweDc5LCAweDU0LCAweDYxLCAweDY3LCAweDRlLCAweDYxLCAweDZkLCAweDY1LCAweDI4LCAweDczLCAweDZlLCAweDY5LCAweDYzLFxuICAweDYxLCAweDZjLCAweDIyLCAweDIwLCAweDY4LCAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LFxuICAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LCAweDc3LCAweDc3LCAweDJlLCAweDQzLCAweDJmLCAweDJmLCAweDQ0LCAweDU0LFxuICAweDQ0LCAweDIwLCAweDQ4LCAweDU0LCAweDRkLCAweDRjLCAweDIwLCAweDM0LCAweDJlLCAweDMwLCAweDMxLCAweDIwLCAweDU0LFxuICAweDcyLCAweDYxLCAweDZlLCAweDczLCAweDY5LCAweDc0LCAweDNjLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDIwLFxuICAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLFxuICAweDczLCAweDIyLCAweDNlLCAweDBhLCAweDBhLCAweDNjLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LCAweDIwLCAweDc0LFxuICAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDIyLCAweDc0LCAweDY1LCAweDc4LCAweDc0LCAweDJmLCAweDYzLCAweDczLCAweDczLFxuICAweDIyLCAweDNlLCAweDY5LCAweDZmLCAweDZlLCAweDYxLCAweDZjLCAweDJlLCAweDY0LCAweDc0LCAweDY0LCAweDIyLCAweDNlLFxuICAweDBhLCAweDNjLCAweDY4LCAweDc0LCAweDZkLCAweDZjLCAweDIwLCAweDc4LCAweDZkLCAweDZjLCAweDZlLCAweDczLCAweDNkLFxuICAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDJkLCAweDY1LCAweDcxLCAweDc1LCAweDY5LCAweDc2LCAweDNkLCAweDIyLCAweDQzLFxuICAweDZmLCAweDZlLCAweDc0LCAweDY1LCAweDZlLCAweDc0LCAweDJkLCAweDU0LCAweDc5LCAweDcwLCAweDY1LCAweDY0LCAweDY5LFxuICAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDIwLCAweDYzLCAweDY1LCAweDZjLCAweDZjLCAweDczLCAweDcwLFxuICAweDYxLCAweDYzLCAweDY5LCAweDZlLCAweDY3LCAweDNkLCAweDIyLCAweDMwLCAweDIyLCAweDY4LCAweDc0LCAweDZkLCAweDZjLFxuICAweDNiLCAweDIwLCAweDYzLCAweDY4LCAweDYxLCAweDcyLCAweDczLCAweDY1LCAweDc0LCAweDNkLCAweDc1LCAweDc0LCAweDY2LFxuICAweDJkLCAweDM4LCAweDIyLCAweDIwLCAweDJmLCAweDNlLCAweDBhLCAweDIwLCAweDczLCAweDc0LCAweDc5LCAweDZjLCAweDY1LFxuICAweDNkLCAweDIyLCAweDY0LCAweDY5LCAweDczLCAweDcwLCAweDZjLCAweDYxLCAweDc5LCAweDNhLCAweDZlLCAweDZmLCAweDZlLFxuICAweDY1LCAweDNiLCAweDIyLCAweDNlLCAweDNjLCAweDNjLCAweDZjLCAweDY5LCAweDNlLCAweDNjLCAweDYxLCAweDIwLCAweDY4LFxuICAweDcyLCAweDY1LCAweDY2LCAweDNkLCAweDIyLCAweDY4LCAweDc0LCAweDc0LCAweDcwLCAweDNhLCAweDJmLCAweDJmLCAweDc3LFxuICAweDc3LCAweDc3LCAweDJlLCAweDIwLCAweDc0LCAweDc5LCAweDcwLCAweDY1LCAweDNkLCAweDI3LCAweDc0LCAweDY1LCAweDc4LFxuICAweDc0LCAweDJmLCAweDZhLCAweDYxLCAweDc2LCAweDYxLCAweDczLCAweDYzLCAweDcyLCAweDY5LCAweDcwLCAweDc0LCAweDI3LFxuICAweDNlLCAweGQwLCAweGI0LCAweGQwLCAweGI1LCAweGQxLCAweDhmLCAweGQxLCAweDgyLCAweGQwLCAweGI1LCAweGQwLCAweGJiLFxuICAweGQxLCAweDhjLCAweGQwLCAweGJkLCAweGQwLCAweGJlLCAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGQxLFxuICAweDgxLCAweGQwLCAweGJlLCAweGQwLCAweGJlLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI1LCAweGQxLCAweDgyLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGI4LCAweGQwLCAweGI4LCAweGQwLCAweGJmLCAweGQxLFxuICAweDgwLCAweGQwLCAweGJlLCAweGQwLCAweGI4LCAweGQwLCAweGI3LCAweGQwLCAweGIyLCAweGQwLCAweGJlLCAweGQwLCAweGI0LFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGIyLCAweGQwLCAweGIwLCAweGQwLCAweGIxLCAweGQwLCAweGI1LCAweGQwLFxuICAweGI3LCAweGQwLCAweGJlLCAweGQwLCAweGJmLCAweGQwLCAweGIwLCAweGQxLCAweDgxLCAweGQwLCAweGJkLCAweGQwLCAweGJlLFxuICAweGQxLCAweDgxLCAweGQxLCAweDgyLCAweGQwLCAweGI4LCAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgxLCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweDgyLFxuICAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE1LCAweDg3LCAweGUwLFxuICAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDg5LCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI5LCAweGUwLCAweGE1LCAweDhiLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE1LCAweDg3LFxuICAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE3LCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweGFkLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweGFiLCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGI4LFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweDgyLCAweGUwLCAweGE0LCAweDk3LCAweGUwLCAweGE0LCAweGI4LCAweGUwLFxuICAweGE1LCAweDgxLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LFxuICAweGI3LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDg5LFxuICAweGUwLCAweGE0LCAweGFhLCAweGUwLCAweGE1LCAweDgwLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGJlLCAweGUwLFxuICAweGE0LCAweDg3LCAweGUwLCAweGE0LCAweDlmLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LFxuICAweDljLCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweDllLCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGFhLFxuICAweGUwLCAweGE0LCAweGE4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LCAweGIwLCAweGUwLFxuICAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLCAweGUwLCAweGE0LCAweGI1LCAweGUwLCAweGE0LCAweGJlLCAweGUwLCAweGE0LFxuICAweDg4LCAweGUwLCAweGE0LCAweGI4LCAweGUwLCAweGE0LCAweDk1LCAweGUwLCAweGE1LCAweDhkLCAweGUwLCAweGE0LCAweGIwLFxuICAweGUwLCAweGE0LCAweGJmLCAweGUwLCAweGE0LCAweGFmLCAweGUwLCAweGE0LCAweGE0LCAweGUwLCAweGE0LCAweGJlLFxuXSk7XG5cbi8vIFVzZWQgYnkgdGhlIGJyb3dzZXIgdmVyc2lvblxuZXhwb3J0cy5pbml0ID0gZnVuY3Rpb24oKSB7XG4gIHJldHVybiBleHBvcnRzLmRpY3Rpb25hcnk7XG59O1xuIiwgIi8qIENvcHlyaWdodCAyMDEzIEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG5cbiAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbiAgIENvbGxlY3Rpb24gb2Ygc3RhdGljIGRpY3Rpb25hcnkgd29yZHMuXG4qL1xuXG52YXIgZGF0YSA9IHJlcXVpcmUoJy4vZGljdGlvbmFyeS1kYXRhJyk7XG5leHBvcnRzLmluaXQgPSBmdW5jdGlvbigpIHtcbiAgZXhwb3J0cy5kaWN0aW9uYXJ5ID0gZGF0YS5pbml0KCk7XG59O1xuXG5leHBvcnRzLm9mZnNldHNCeUxlbmd0aCA9IG5ldyBVaW50MzJBcnJheShbXG4gICAgIDAsICAgICAwLCAgICAgMCwgICAgIDAsICAgICAwLCAgNDA5NiwgIDkyMTYsIDIxNTA0LCAzNTg0MCwgNDQwMzIsXG4gNTMyNDgsIDYzNDg4LCA3NDc1MiwgODcwNDAsIDkzNjk2LCAxMDA4NjQsIDEwNDcwNCwgMTA2NzUyLCAxMDg5MjgsIDExMzUzNixcbiAxMTU5NjgsIDExODUyOCwgMTE5ODcyLCAxMjEyODAsIDEyMjAxNixcbl0pO1xuXG5leHBvcnRzLnNpemVCaXRzQnlMZW5ndGggPSBuZXcgVWludDhBcnJheShbXG4gIDAsICAwLCAgMCwgIDAsIDEwLCAxMCwgMTEsIDExLCAxMCwgMTAsXG4gMTAsIDEwLCAxMCwgIDksICA5LCAgOCwgIDcsICA3LCAgOCwgIDcsXG4gIDcsICA2LCAgNiwgIDUsICA1LFxuXSk7XG5cbmV4cG9ydHMubWluRGljdGlvbmFyeVdvcmRMZW5ndGggPSA0O1xuZXhwb3J0cy5tYXhEaWN0aW9uYXJ5V29yZExlbmd0aCA9IDI0O1xuIiwgImZ1bmN0aW9uIEh1ZmZtYW5Db2RlKGJpdHMsIHZhbHVlKSB7XG4gIHRoaXMuYml0cyA9IGJpdHM7ICAgLyogbnVtYmVyIG9mIGJpdHMgdXNlZCBmb3IgdGhpcyBzeW1ib2wgKi9cbiAgdGhpcy52YWx1ZSA9IHZhbHVlOyAvKiBzeW1ib2wgdmFsdWUgb3IgdGFibGUgb2Zmc2V0ICovXG59XG5cbmV4cG9ydHMuSHVmZm1hbkNvZGUgPSBIdWZmbWFuQ29kZTtcblxudmFyIE1BWF9MRU5HVEggPSAxNTtcblxuLyogUmV0dXJucyByZXZlcnNlKHJldmVyc2Uoa2V5LCBsZW4pICsgMSwgbGVuKSwgd2hlcmUgcmV2ZXJzZShrZXksIGxlbikgaXMgdGhlXG4gICBiaXQtd2lzZSByZXZlcnNhbCBvZiB0aGUgbGVuIGxlYXN0IHNpZ25pZmljYW50IGJpdHMgb2Yga2V5LiAqL1xuZnVuY3Rpb24gR2V0TmV4dEtleShrZXksIGxlbikge1xuICB2YXIgc3RlcCA9IDEgPDwgKGxlbiAtIDEpO1xuICB3aGlsZSAoa2V5ICYgc3RlcCkge1xuICAgIHN0ZXAgPj49IDE7XG4gIH1cbiAgcmV0dXJuIChrZXkgJiAoc3RlcCAtIDEpKSArIHN0ZXA7XG59XG5cbi8qIFN0b3JlcyBjb2RlIGluIHRhYmxlWzBdLCB0YWJsZVtzdGVwXSwgdGFibGVbMipzdGVwXSwgLi4uLCB0YWJsZVtlbmRdICovXG4vKiBBc3N1bWVzIHRoYXQgZW5kIGlzIGFuIGludGVnZXIgbXVsdGlwbGUgb2Ygc3RlcCAqL1xuZnVuY3Rpb24gUmVwbGljYXRlVmFsdWUodGFibGUsIGksIHN0ZXAsIGVuZCwgY29kZSkge1xuICBkbyB7XG4gICAgZW5kIC09IHN0ZXA7XG4gICAgdGFibGVbaSArIGVuZF0gPSBuZXcgSHVmZm1hbkNvZGUoY29kZS5iaXRzLCBjb2RlLnZhbHVlKTtcbiAgfSB3aGlsZSAoZW5kID4gMCk7XG59XG5cbi8qIFJldHVybnMgdGhlIHRhYmxlIHdpZHRoIG9mIHRoZSBuZXh0IDJuZCBsZXZlbCB0YWJsZS4gY291bnQgaXMgdGhlIGhpc3RvZ3JhbVxuICAgb2YgYml0IGxlbmd0aHMgZm9yIHRoZSByZW1haW5pbmcgc3ltYm9scywgbGVuIGlzIHRoZSBjb2RlIGxlbmd0aCBvZiB0aGUgbmV4dFxuICAgcHJvY2Vzc2VkIHN5bWJvbCAqL1xuZnVuY3Rpb24gTmV4dFRhYmxlQml0U2l6ZShjb3VudCwgbGVuLCByb290X2JpdHMpIHtcbiAgdmFyIGxlZnQgPSAxIDw8IChsZW4gLSByb290X2JpdHMpO1xuICB3aGlsZSAobGVuIDwgTUFYX0xFTkdUSCkge1xuICAgIGxlZnQgLT0gY291bnRbbGVuXTtcbiAgICBpZiAobGVmdCA8PSAwKSBicmVhaztcbiAgICArK2xlbjtcbiAgICBsZWZ0IDw8PSAxO1xuICB9XG4gIHJldHVybiBsZW4gLSByb290X2JpdHM7XG59XG5cbmV4cG9ydHMuQnJvdGxpQnVpbGRIdWZmbWFuVGFibGUgPSBmdW5jdGlvbihyb290X3RhYmxlLCB0YWJsZSwgcm9vdF9iaXRzLCBjb2RlX2xlbmd0aHMsIGNvZGVfbGVuZ3Roc19zaXplKSB7XG4gIHZhciBzdGFydF90YWJsZSA9IHRhYmxlO1xuICB2YXIgY29kZTsgICAgICAgICAgICAvKiBjdXJyZW50IHRhYmxlIGVudHJ5ICovXG4gIHZhciBsZW47ICAgICAgICAgICAgIC8qIGN1cnJlbnQgY29kZSBsZW5ndGggKi9cbiAgdmFyIHN5bWJvbDsgICAgICAgICAgLyogc3ltYm9sIGluZGV4IGluIG9yaWdpbmFsIG9yIHNvcnRlZCB0YWJsZSAqL1xuICB2YXIga2V5OyAgICAgICAgICAgICAvKiByZXZlcnNlZCBwcmVmaXggY29kZSAqL1xuICB2YXIgc3RlcDsgICAgICAgICAgICAvKiBzdGVwIHNpemUgdG8gcmVwbGljYXRlIHZhbHVlcyBpbiBjdXJyZW50IHRhYmxlICovXG4gIHZhciBsb3c7ICAgICAgICAgICAgIC8qIGxvdyBiaXRzIGZvciBjdXJyZW50IHJvb3QgZW50cnkgKi9cbiAgdmFyIG1hc2s7ICAgICAgICAgICAgLyogbWFzayBmb3IgbG93IGJpdHMgKi9cbiAgdmFyIHRhYmxlX2JpdHM7ICAgICAgLyoga2V5IGxlbmd0aCBvZiBjdXJyZW50IHRhYmxlICovXG4gIHZhciB0YWJsZV9zaXplOyAgICAgIC8qIHNpemUgb2YgY3VycmVudCB0YWJsZSAqL1xuICB2YXIgdG90YWxfc2l6ZTsgICAgICAvKiBzdW0gb2Ygcm9vdCB0YWJsZSBzaXplIGFuZCAybmQgbGV2ZWwgdGFibGUgc2l6ZXMgKi9cbiAgdmFyIHNvcnRlZDsgICAgICAgICAgLyogc3ltYm9scyBzb3J0ZWQgYnkgY29kZSBsZW5ndGggKi9cbiAgdmFyIGNvdW50ID0gbmV3IEludDMyQXJyYXkoTUFYX0xFTkdUSCArIDEpOyAgLyogbnVtYmVyIG9mIGNvZGVzIG9mIGVhY2ggbGVuZ3RoICovXG4gIHZhciBvZmZzZXQgPSBuZXcgSW50MzJBcnJheShNQVhfTEVOR1RIICsgMSk7ICAvKiBvZmZzZXRzIGluIHNvcnRlZCB0YWJsZSBmb3IgZWFjaCBsZW5ndGggKi9cblxuICBzb3J0ZWQgPSBuZXcgSW50MzJBcnJheShjb2RlX2xlbmd0aHNfc2l6ZSk7XG5cbiAgLyogYnVpbGQgaGlzdG9ncmFtIG9mIGNvZGUgbGVuZ3RocyAqL1xuICBmb3IgKHN5bWJvbCA9IDA7IHN5bWJvbCA8IGNvZGVfbGVuZ3Roc19zaXplOyBzeW1ib2wrKykge1xuICAgIGNvdW50W2NvZGVfbGVuZ3Roc1tzeW1ib2xdXSsrO1xuICB9XG5cbiAgLyogZ2VuZXJhdGUgb2Zmc2V0cyBpbnRvIHNvcnRlZCBzeW1ib2wgdGFibGUgYnkgY29kZSBsZW5ndGggKi9cbiAgb2Zmc2V0WzFdID0gMDtcbiAgZm9yIChsZW4gPSAxOyBsZW4gPCBNQVhfTEVOR1RIOyBsZW4rKykge1xuICAgIG9mZnNldFtsZW4gKyAxXSA9IG9mZnNldFtsZW5dICsgY291bnRbbGVuXTtcbiAgfVxuXG4gIC8qIHNvcnQgc3ltYm9scyBieSBsZW5ndGgsIGJ5IHN5bWJvbCBvcmRlciB3aXRoaW4gZWFjaCBsZW5ndGggKi9cbiAgZm9yIChzeW1ib2wgPSAwOyBzeW1ib2wgPCBjb2RlX2xlbmd0aHNfc2l6ZTsgc3ltYm9sKyspIHtcbiAgICBpZiAoY29kZV9sZW5ndGhzW3N5bWJvbF0gIT09IDApIHtcbiAgICAgIHNvcnRlZFtvZmZzZXRbY29kZV9sZW5ndGhzW3N5bWJvbF1dKytdID0gc3ltYm9sO1xuICAgIH1cbiAgfVxuICBcbiAgdGFibGVfYml0cyA9IHJvb3RfYml0cztcbiAgdGFibGVfc2l6ZSA9IDEgPDwgdGFibGVfYml0cztcbiAgdG90YWxfc2l6ZSA9IHRhYmxlX3NpemU7XG5cbiAgLyogc3BlY2lhbCBjYXNlIGNvZGUgd2l0aCBvbmx5IG9uZSB2YWx1ZSAqL1xuICBpZiAob2Zmc2V0W01BWF9MRU5HVEhdID09PSAxKSB7XG4gICAgZm9yIChrZXkgPSAwOyBrZXkgPCB0b3RhbF9zaXplOyArK2tleSkge1xuICAgICAgcm9vdF90YWJsZVt0YWJsZSArIGtleV0gPSBuZXcgSHVmZm1hbkNvZGUoMCwgc29ydGVkWzBdICYgMHhmZmZmKTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIHRvdGFsX3NpemU7XG4gIH1cblxuICAvKiBmaWxsIGluIHJvb3QgdGFibGUgKi9cbiAga2V5ID0gMDtcbiAgc3ltYm9sID0gMDtcbiAgZm9yIChsZW4gPSAxLCBzdGVwID0gMjsgbGVuIDw9IHJvb3RfYml0czsgKytsZW4sIHN0ZXAgPDw9IDEpIHtcbiAgICBmb3IgKDsgY291bnRbbGVuXSA+IDA7IC0tY291bnRbbGVuXSkge1xuICAgICAgY29kZSA9IG5ldyBIdWZmbWFuQ29kZShsZW4gJiAweGZmLCBzb3J0ZWRbc3ltYm9sKytdICYgMHhmZmZmKTtcbiAgICAgIFJlcGxpY2F0ZVZhbHVlKHJvb3RfdGFibGUsIHRhYmxlICsga2V5LCBzdGVwLCB0YWJsZV9zaXplLCBjb2RlKTtcbiAgICAgIGtleSA9IEdldE5leHRLZXkoa2V5LCBsZW4pO1xuICAgIH1cbiAgfVxuXG4gIC8qIGZpbGwgaW4gMm5kIGxldmVsIHRhYmxlcyBhbmQgYWRkIHBvaW50ZXJzIHRvIHJvb3QgdGFibGUgKi9cbiAgbWFzayA9IHRvdGFsX3NpemUgLSAxO1xuICBsb3cgPSAtMTtcbiAgZm9yIChsZW4gPSByb290X2JpdHMgKyAxLCBzdGVwID0gMjsgbGVuIDw9IE1BWF9MRU5HVEg7ICsrbGVuLCBzdGVwIDw8PSAxKSB7XG4gICAgZm9yICg7IGNvdW50W2xlbl0gPiAwOyAtLWNvdW50W2xlbl0pIHtcbiAgICAgIGlmICgoa2V5ICYgbWFzaykgIT09IGxvdykge1xuICAgICAgICB0YWJsZSArPSB0YWJsZV9zaXplO1xuICAgICAgICB0YWJsZV9iaXRzID0gTmV4dFRhYmxlQml0U2l6ZShjb3VudCwgbGVuLCByb290X2JpdHMpO1xuICAgICAgICB0YWJsZV9zaXplID0gMSA8PCB0YWJsZV9iaXRzO1xuICAgICAgICB0b3RhbF9zaXplICs9IHRhYmxlX3NpemU7XG4gICAgICAgIGxvdyA9IGtleSAmIG1hc2s7XG4gICAgICAgIHJvb3RfdGFibGVbc3RhcnRfdGFibGUgKyBsb3ddID0gbmV3IEh1ZmZtYW5Db2RlKCh0YWJsZV9iaXRzICsgcm9vdF9iaXRzKSAmIDB4ZmYsICgodGFibGUgLSBzdGFydF90YWJsZSkgLSBsb3cpICYgMHhmZmZmKTtcbiAgICAgIH1cbiAgICAgIGNvZGUgPSBuZXcgSHVmZm1hbkNvZGUoKGxlbiAtIHJvb3RfYml0cykgJiAweGZmLCBzb3J0ZWRbc3ltYm9sKytdICYgMHhmZmZmKTtcbiAgICAgIFJlcGxpY2F0ZVZhbHVlKHJvb3RfdGFibGUsIHRhYmxlICsgKGtleSA+PiByb290X2JpdHMpLCBzdGVwLCB0YWJsZV9zaXplLCBjb2RlKTtcbiAgICAgIGtleSA9IEdldE5leHRLZXkoa2V5LCBsZW4pO1xuICAgIH1cbiAgfVxuICBcbiAgcmV0dXJuIHRvdGFsX3NpemU7XG59XG4iLCAiLyogQ29weXJpZ2h0IDIwMTMgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cblxuICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuICAgTG9va3VwIHRhYmxlIHRvIG1hcCB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzIHRvIGEgY29udGV4dCBpZC5cblxuICAgVGhlcmUgYXJlIGZvdXIgZGlmZmVyZW50IGNvbnRleHQgbW9kZWxpbmcgbW9kZXMgZGVmaW5lZCBoZXJlOlxuICAgICBDT05URVhUX0xTQjY6IGNvbnRleHQgaWQgaXMgdGhlIGxlYXN0IHNpZ25pZmljYW50IDYgYml0cyBvZiB0aGUgbGFzdCBieXRlLFxuICAgICBDT05URVhUX01TQjY6IGNvbnRleHQgaWQgaXMgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgNiBiaXRzIG9mIHRoZSBsYXN0IGJ5dGUsXG4gICAgIENPTlRFWFRfVVRGODogc2Vjb25kLW9yZGVyIGNvbnRleHQgbW9kZWwgdHVuZWQgZm9yIFVURjgtZW5jb2RlZCB0ZXh0LFxuICAgICBDT05URVhUX1NJR05FRDogc2Vjb25kLW9yZGVyIGNvbnRleHQgbW9kZWwgdHVuZWQgZm9yIHNpZ25lZCBpbnRlZ2Vycy5cblxuICAgVGhlIGNvbnRleHQgaWQgZm9yIHRoZSBVVEY4IGNvbnRleHQgbW9kZWwgaXMgY2FsY3VsYXRlZCBhcyBmb2xsb3dzLiBJZiBwMVxuICAgYW5kIHAyIGFyZSB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzLCB3ZSBjYWxjdWFsdGUgdGhlIGNvbnRleHQgYXNcblxuICAgICBjb250ZXh0ID0ga0NvbnRleHRMb29rdXBbcDFdIHwga0NvbnRleHRMb29rdXBbcDIgKyAyNTZdLlxuXG4gICBJZiB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzIGFyZSBBU0NJSSBjaGFyYWN0ZXJzIChpLmUuIDwgMTI4KSwgdGhpcyB3aWxsIGJlXG4gICBlcXVpdmFsZW50IHRvXG5cbiAgICAgY29udGV4dCA9IDQgKiBjb250ZXh0MShwMSkgKyBjb250ZXh0MihwMiksXG5cbiAgIHdoZXJlIGNvbnRleHQxIGlzIGJhc2VkIG9uIHRoZSBwcmV2aW91cyBieXRlIGluIHRoZSBmb2xsb3dpbmcgd2F5OlxuXG4gICAgIDAgIDogbm9uLUFTQ0lJIGNvbnRyb2xcbiAgICAgMSAgOiBcXHQsIFxcbiwgXFxyXG4gICAgIDIgIDogc3BhY2VcbiAgICAgMyAgOiBvdGhlciBwdW5jdHVhdGlvblxuICAgICA0ICA6IFwiICdcbiAgICAgNSAgOiAlXG4gICAgIDYgIDogKCA8IFsge1xuICAgICA3ICA6ICkgPiBdIH1cbiAgICAgOCAgOiAsIDsgOlxuICAgICA5ICA6IC5cbiAgICAgMTAgOiA9XG4gICAgIDExIDogbnVtYmVyXG4gICAgIDEyIDogdXBwZXItY2FzZSB2b3dlbFxuICAgICAxMyA6IHVwcGVyLWNhc2UgY29uc29uYW50XG4gICAgIDE0IDogbG93ZXItY2FzZSB2b3dlbFxuICAgICAxNSA6IGxvd2VyLWNhc2UgY29uc29uYW50XG5cbiAgIGFuZCBjb250ZXh0MiBpcyBiYXNlZCBvbiB0aGUgc2Vjb25kIGxhc3QgYnl0ZTpcblxuICAgICAwIDogY29udHJvbCwgc3BhY2VcbiAgICAgMSA6IHB1bmN0dWF0aW9uXG4gICAgIDIgOiB1cHBlci1jYXNlIGxldHRlciwgbnVtYmVyXG4gICAgIDMgOiBsb3dlci1jYXNlIGxldHRlclxuXG4gICBJZiB0aGUgbGFzdCBieXRlIGlzIEFTQ0lJLCBhbmQgdGhlIHNlY29uZCBsYXN0IGJ5dGUgaXMgbm90IChpbiBhIHZhbGlkIFVURjhcbiAgIHN0cmVhbSBpdCB3aWxsIGJlIGEgY29udGludWF0aW9uIGJ5dGUsIHZhbHVlIGJldHdlZW4gMTI4IGFuZCAxOTEpLCB0aGVcbiAgIGNvbnRleHQgaXMgdGhlIHNhbWUgYXMgaWYgdGhlIHNlY29uZCBsYXN0IGJ5dGUgd2FzIGFuIEFTQ0lJIGNvbnRyb2wgb3Igc3BhY2UuXG5cbiAgIElmIHRoZSBsYXN0IGJ5dGUgaXMgYSBVVEY4IGxlYWQgYnl0ZSAodmFsdWUgPj0gMTkyKSwgdGhlbiB0aGUgbmV4dCBieXRlIHdpbGxcbiAgIGJlIGEgY29udGludWF0aW9uIGJ5dGUgYW5kIHRoZSBjb250ZXh0IGlkIGlzIDIgb3IgMyBkZXBlbmRpbmcgb24gdGhlIExTQiBvZlxuICAgdGhlIGxhc3QgYnl0ZSBhbmQgdG8gYSBsZXNzZXIgZXh0ZW50IG9uIHRoZSBzZWNvbmQgbGFzdCBieXRlIGlmIGl0IGlzIEFTQ0lJLlxuXG4gICBJZiB0aGUgbGFzdCBieXRlIGlzIGEgVVRGOCBjb250aW51YXRpb24gYnl0ZSwgdGhlIHNlY29uZCBsYXN0IGJ5dGUgY2FuIGJlOlxuICAgICAtIGNvbnRpbnVhdGlvbiBieXRlOiB0aGUgbmV4dCBieXRlIGlzIHByb2JhYmx5IEFTQ0lJIG9yIGxlYWQgYnl0ZSAoYXNzdW1pbmdcbiAgICAgICA0LWJ5dGUgVVRGOCBjaGFyYWN0ZXJzIGFyZSByYXJlKSBhbmQgdGhlIGNvbnRleHQgaWQgaXMgMCBvciAxLlxuICAgICAtIGxlYWQgYnl0ZSAoMTkyIC0gMjA3KTogbmV4dCBieXRlIGlzIEFTQ0lJIG9yIGxlYWQgYnl0ZSwgY29udGV4dCBpcyAwIG9yIDFcbiAgICAgLSBsZWFkIGJ5dGUgKDIwOCAtIDI1NSk6IG5leHQgYnl0ZSBpcyBjb250aW51YXRpb24gYnl0ZSwgY29udGV4dCBpcyAyIG9yIDNcblxuICAgVGhlIHBvc3NpYmxlIHZhbHVlIGNvbWJpbmF0aW9ucyBvZiB0aGUgcHJldmlvdXMgdHdvIGJ5dGVzLCB0aGUgcmFuZ2Ugb2ZcbiAgIGNvbnRleHQgaWRzIGFuZCB0aGUgdHlwZSBvZiB0aGUgbmV4dCBieXRlIGlzIHN1bW1hcml6ZWQgaW4gdGhlIHRhYmxlIGJlbG93OlxuXG4gICB8LS0tLS0tLS1cXC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfFxuICAgfCAgICAgICAgIFxcICAgICAgICAgICAgICAgICAgICAgICAgIExhc3QgYnl0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgIHwgU2Vjb25kICAgXFwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18XG4gICB8IGxhc3QgYnl0ZSBcXCAgICBBU0NJSSAgICAgICAgICAgIHwgICBjb250LiBieXRlICAgICAgICB8ICAgbGVhZCBieXRlICAgICAgfFxuICAgfCAgICAgICAgICAgIFxcICAgKDAtMTI3KSAgICAgICAgICB8ICAgKDEyOC0xOTEpICAgICAgICAgfCAgICgxOTItKSAgICAgICAgIHxcbiAgIHw9PT09PT09PT09PT09fD09PT09PT09PT09PT09PT09PT18PT09PT09PT09PT09PT09PT09PT09fD09PT09PT09PT09PT09PT09PXxcbiAgIHwgIEFTQ0lJICAgICAgfCBuZXh0OiBBU0NJSS9sZWFkICB8ICBub3QgdmFsaWQgICAgICAgICAgfCAgbmV4dDogY29udC4gICAgIHxcbiAgIHwgICgwLTEyNykgICAgfCBjb250ZXh0OiA0IC0gNjMgICB8ICAgICAgICAgICAgICAgICAgICAgfCAgY29udGV4dDogMiAtIDMgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgIHwgIGNvbnQuIGJ5dGUgfCBuZXh0OiBBU0NJSS9sZWFkICB8ICBuZXh0OiBBU0NJSS9sZWFkICAgfCAgbmV4dDogY29udC4gICAgIHxcbiAgIHwgICgxMjgtMTkxKSAgfCBjb250ZXh0OiA0IC0gNjMgICB8ICBjb250ZXh0OiAwIC0gMSAgICAgfCAgY29udGV4dDogMiAtIDMgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgIHwgIGxlYWQgYnl0ZSAgfCBub3QgdmFsaWQgICAgICAgICB8ICBuZXh0OiBBU0NJSS9sZWFkICAgfCAgbm90IHZhbGlkICAgICAgIHxcbiAgIHwgICgxOTItMjA3KSAgfCAgICAgICAgICAgICAgICAgICB8ICBjb250ZXh0OiAwIC0gMSAgICAgfCAgICAgICAgICAgICAgICAgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcbiAgIHwgIGxlYWQgYnl0ZSAgfCBub3QgdmFsaWQgICAgICAgICB8ICBuZXh0OiBjb250LiAgICAgICAgfCAgbm90IHZhbGlkICAgICAgIHxcbiAgIHwgICgyMDgtKSAgICAgfCAgICAgICAgICAgICAgICAgICB8ICBjb250ZXh0OiAyIC0gMyAgICAgfCAgICAgICAgICAgICAgICAgIHxcbiAgIHwtLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLXxcblxuICAgVGhlIGNvbnRleHQgaWQgZm9yIHRoZSBzaWduZWQgY29udGV4dCBtb2RlIGlzIGNhbGN1bGF0ZWQgYXM6XG5cbiAgICAgY29udGV4dCA9IChrQ29udGV4dExvb2t1cFs1MTIgKyBwMV0gPDwgMykgfCBrQ29udGV4dExvb2t1cFs1MTIgKyBwMl0uXG5cbiAgIEZvciBhbnkgY29udGV4dCBtb2RlbGluZyBtb2RlcywgdGhlIGNvbnRleHQgaWRzIGNhbiBiZSBjYWxjdWxhdGVkIGJ5IHwtaW5nXG4gICB0b2dldGhlciB0d28gbG9va3VwcyBmcm9tIG9uZSB0YWJsZSB1c2luZyBjb250ZXh0IG1vZGVsIGRlcGVuZGVudCBvZmZzZXRzOlxuXG4gICAgIGNvbnRleHQgPSBrQ29udGV4dExvb2t1cFtvZmZzZXQxICsgcDFdIHwga0NvbnRleHRMb29rdXBbb2Zmc2V0MiArIHAyXS5cblxuICAgd2hlcmUgb2Zmc2V0MSBhbmQgb2Zmc2V0MiBhcmUgZGVwZW5kZW50IG9uIHRoZSBjb250ZXh0IG1vZGUuXG4qL1xuXG52YXIgQ09OVEVYVF9MU0I2ICAgICAgICAgPSAwO1xudmFyIENPTlRFWFRfTVNCNiAgICAgICAgID0gMTtcbnZhciBDT05URVhUX1VURjggICAgICAgICA9IDI7XG52YXIgQ09OVEVYVF9TSUdORUQgICAgICAgPSAzO1xuXG4vKiBDb21tb24gY29udGV4dCBsb29rdXAgdGFibGUgZm9yIGFsbCBjb250ZXh0IG1vZGVzLiAqL1xuZXhwb3J0cy5sb29rdXAgPSBuZXcgVWludDhBcnJheShbXG4gIC8qIENPTlRFWFRfVVRGOCwgbGFzdCBieXRlLiAqL1xuICAvKiBBU0NJSSByYW5nZS4gKi9cbiAgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDQsICA0LCAgMCwgIDAsICA0LCAgMCwgIDAsXG4gICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLCAgMCwgIDAsICAwLFxuICAgOCwgMTIsIDE2LCAxMiwgMTIsIDIwLCAxMiwgMTYsIDI0LCAyOCwgMTIsIDEyLCAzMiwgMTIsIDM2LCAxMixcbiAgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDQ0LCA0NCwgNDQsIDMyLCAzMiwgMjQsIDQwLCAyOCwgMTIsXG4gIDEyLCA0OCwgNTIsIDUyLCA1MiwgNDgsIDUyLCA1MiwgNTIsIDQ4LCA1MiwgNTIsIDUyLCA1MiwgNTIsIDQ4LFxuICA1MiwgNTIsIDUyLCA1MiwgNTIsIDQ4LCA1MiwgNTIsIDUyLCA1MiwgNTIsIDI0LCAxMiwgMjgsIDEyLCAxMixcbiAgMTIsIDU2LCA2MCwgNjAsIDYwLCA1NiwgNjAsIDYwLCA2MCwgNTYsIDYwLCA2MCwgNjAsIDYwLCA2MCwgNTYsXG4gIDYwLCA2MCwgNjAsIDYwLCA2MCwgNTYsIDYwLCA2MCwgNjAsIDYwLCA2MCwgMjQsIDEyLCAyOCwgMTIsICAwLFxuICAvKiBVVEY4IGNvbnRpbnVhdGlvbiBieXRlIHJhbmdlLiAqL1xuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLCAwLCAxLFxuICAvKiBVVEY4IGxlYWQgYnl0ZSByYW5nZS4gKi9cbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMywgMiwgMyxcbiAgLyogQ09OVEVYVF9VVEY4IHNlY29uZCBsYXN0IGJ5dGUuICovXG4gIC8qIEFTQ0lJIHJhbmdlLiAqL1xuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLFxuICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxLCAxLCAxLCAxLCAxLCAxLFxuICAxLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLFxuICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxLCAxLCAxLCAxLCAxLFxuICAxLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLFxuICAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAzLCAxLCAxLCAxLCAxLCAwLFxuICAvKiBVVEY4IGNvbnRpbnVhdGlvbiBieXRlIHJhbmdlLiAqL1xuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAvKiBVVEY4IGxlYWQgYnl0ZSByYW5nZS4gKi9cbiAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCxcbiAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMixcbiAgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMiwgMixcbiAgLyogQ09OVEVYVF9TSUdORUQsIHNlY29uZCBsYXN0IGJ5dGUuICovXG4gIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsXG4gIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsXG4gIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsXG4gIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsIDMsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsIDQsXG4gIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsXG4gIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsXG4gIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsXG4gIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDcsXG4gIC8qIENPTlRFWFRfU0lHTkVELCBsYXN0IGJ5dGUsIHNhbWUgYXMgdGhlIGFib3ZlIHZhbHVlcyBzaGlmdGVkIGJ5IDMgYml0cy4gKi9cbiAgIDAsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsIDgsXG4gIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LFxuICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNixcbiAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsXG4gIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LFxuICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCxcbiAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsXG4gIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LFxuICAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMixcbiAgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsXG4gIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLFxuICAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMiwgMzIsIDMyLCAzMixcbiAgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsXG4gIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLFxuICA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCwgNDAsIDQwLCA0MCxcbiAgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNDgsIDQ4LCA0OCwgNTYsXG4gIC8qIENPTlRFWFRfTFNCNiwgbGFzdCBieXRlLiAqL1xuICAgMCwgIDEsICAyLCAgMywgIDQsICA1LCAgNiwgIDcsICA4LCAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSxcbiAgMTYsIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsXG4gIDMyLCAzMywgMzQsIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LFxuICA0OCwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCA1NywgNTgsIDU5LCA2MCwgNjEsIDYyLCA2MyxcbiAgIDAsICAxLCAgMiwgIDMsICA0LCAgNSwgIDYsICA3LCAgOCwgIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsXG4gIDE2LCAxNywgMTgsIDE5LCAyMCwgMjEsIDIyLCAyMywgMjQsIDI1LCAyNiwgMjcsIDI4LCAyOSwgMzAsIDMxLFxuICAzMiwgMzMsIDM0LCAzNSwgMzYsIDM3LCAzOCwgMzksIDQwLCA0MSwgNDIsIDQzLCA0NCwgNDUsIDQ2LCA0NyxcbiAgNDgsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTQsIDU1LCA1NiwgNTcsIDU4LCA1OSwgNjAsIDYxLCA2MiwgNjMsXG4gICAwLCAgMSwgIDIsICAzLCAgNCwgIDUsICA2LCAgNywgIDgsICA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LFxuICAxNiwgMTcsIDE4LCAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjYsIDI3LCAyOCwgMjksIDMwLCAzMSxcbiAgMzIsIDMzLCAzNCwgMzUsIDM2LCAzNywgMzgsIDM5LCA0MCwgNDEsIDQyLCA0MywgNDQsIDQ1LCA0NiwgNDcsXG4gIDQ4LCA0OSwgNTAsIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDU3LCA1OCwgNTksIDYwLCA2MSwgNjIsIDYzLFxuICAgMCwgIDEsICAyLCAgMywgIDQsICA1LCAgNiwgIDcsICA4LCAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSxcbiAgMTYsIDE3LCAxOCwgMTksIDIwLCAyMSwgMjIsIDIzLCAyNCwgMjUsIDI2LCAyNywgMjgsIDI5LCAzMCwgMzEsXG4gIDMyLCAzMywgMzQsIDM1LCAzNiwgMzcsIDM4LCAzOSwgNDAsIDQxLCA0MiwgNDMsIDQ0LCA0NSwgNDYsIDQ3LFxuICA0OCwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCA1NywgNTgsIDU5LCA2MCwgNjEsIDYyLCA2MyxcbiAgLyogQ09OVEVYVF9NU0I2LCBsYXN0IGJ5dGUuICovXG4gICAwLCAgMCwgIDAsICAwLCAgMSwgIDEsICAxLCAgMSwgIDIsICAyLCAgMiwgIDIsICAzLCAgMywgIDMsICAzLFxuICAgNCwgIDQsICA0LCAgNCwgIDUsICA1LCAgNSwgIDUsICA2LCAgNiwgIDYsICA2LCAgNywgIDcsICA3LCAgNyxcbiAgIDgsICA4LCAgOCwgIDgsICA5LCAgOSwgIDksICA5LCAxMCwgMTAsIDEwLCAxMCwgMTEsIDExLCAxMSwgMTEsXG4gIDEyLCAxMiwgMTIsIDEyLCAxMywgMTMsIDEzLCAxMywgMTQsIDE0LCAxNCwgMTQsIDE1LCAxNSwgMTUsIDE1LFxuICAxNiwgMTYsIDE2LCAxNiwgMTcsIDE3LCAxNywgMTcsIDE4LCAxOCwgMTgsIDE4LCAxOSwgMTksIDE5LCAxOSxcbiAgMjAsIDIwLCAyMCwgMjAsIDIxLCAyMSwgMjEsIDIxLCAyMiwgMjIsIDIyLCAyMiwgMjMsIDIzLCAyMywgMjMsXG4gIDI0LCAyNCwgMjQsIDI0LCAyNSwgMjUsIDI1LCAyNSwgMjYsIDI2LCAyNiwgMjYsIDI3LCAyNywgMjcsIDI3LFxuICAyOCwgMjgsIDI4LCAyOCwgMjksIDI5LCAyOSwgMjksIDMwLCAzMCwgMzAsIDMwLCAzMSwgMzEsIDMxLCAzMSxcbiAgMzIsIDMyLCAzMiwgMzIsIDMzLCAzMywgMzMsIDMzLCAzNCwgMzQsIDM0LCAzNCwgMzUsIDM1LCAzNSwgMzUsXG4gIDM2LCAzNiwgMzYsIDM2LCAzNywgMzcsIDM3LCAzNywgMzgsIDM4LCAzOCwgMzgsIDM5LCAzOSwgMzksIDM5LFxuICA0MCwgNDAsIDQwLCA0MCwgNDEsIDQxLCA0MSwgNDEsIDQyLCA0MiwgNDIsIDQyLCA0MywgNDMsIDQzLCA0MyxcbiAgNDQsIDQ0LCA0NCwgNDQsIDQ1LCA0NSwgNDUsIDQ1LCA0NiwgNDYsIDQ2LCA0NiwgNDcsIDQ3LCA0NywgNDcsXG4gIDQ4LCA0OCwgNDgsIDQ4LCA0OSwgNDksIDQ5LCA0OSwgNTAsIDUwLCA1MCwgNTAsIDUxLCA1MSwgNTEsIDUxLFxuICA1MiwgNTIsIDUyLCA1MiwgNTMsIDUzLCA1MywgNTMsIDU0LCA1NCwgNTQsIDU0LCA1NSwgNTUsIDU1LCA1NSxcbiAgNTYsIDU2LCA1NiwgNTYsIDU3LCA1NywgNTcsIDU3LCA1OCwgNTgsIDU4LCA1OCwgNTksIDU5LCA1OSwgNTksXG4gIDYwLCA2MCwgNjAsIDYwLCA2MSwgNjEsIDYxLCA2MSwgNjIsIDYyLCA2MiwgNjIsIDYzLCA2MywgNjMsIDYzLFxuICAvKiBDT05URVhUX3tNLEx9U0I2LCBzZWNvbmQgbGFzdCBieXRlLCAqL1xuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLFxuXSk7XG5cbmV4cG9ydHMubG9va3VwT2Zmc2V0cyA9IG5ldyBVaW50MTZBcnJheShbXG4gIC8qIENPTlRFWFRfTFNCNiAqL1xuICAxMDI0LCAxNTM2LFxuICAvKiBDT05URVhUX01TQjYgKi9cbiAgMTI4MCwgMTUzNixcbiAgLyogQ09OVEVYVF9VVEY4ICovXG4gIDAsIDI1NixcbiAgLyogQ09OVEVYVF9TSUdORUQgKi9cbiAgNzY4LCA1MTIsXG5dKTtcbiIsICIvKiBDb3B5cmlnaHQgMjAxMyBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuXG4gICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG4gICBMb29rdXAgdGFibGVzIHRvIG1hcCBwcmVmaXggY29kZXMgdG8gdmFsdWUgcmFuZ2VzLiBUaGlzIGlzIHVzZWQgZHVyaW5nXG4gICBkZWNvZGluZyBvZiB0aGUgYmxvY2sgbGVuZ3RocywgbGl0ZXJhbCBpbnNlcnRpb24gbGVuZ3RocyBhbmQgY29weSBsZW5ndGhzLlxuKi9cblxuLyogUmVwcmVzZW50cyB0aGUgcmFuZ2Ugb2YgdmFsdWVzIGJlbG9uZ2luZyB0byBhIHByZWZpeCBjb2RlOiAqL1xuLyogW29mZnNldCwgb2Zmc2V0ICsgMl5uYml0cykgKi9cbmZ1bmN0aW9uIFByZWZpeENvZGVSYW5nZShvZmZzZXQsIG5iaXRzKSB7XG4gIHRoaXMub2Zmc2V0ID0gb2Zmc2V0O1xuICB0aGlzLm5iaXRzID0gbmJpdHM7XG59XG5cbmV4cG9ydHMua0Jsb2NrTGVuZ3RoUHJlZml4Q29kZSA9IFtcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgxLCAyKSwgbmV3IFByZWZpeENvZGVSYW5nZSg1LCAyKSwgbmV3IFByZWZpeENvZGVSYW5nZSg5LCAyKSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMywgMiksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTcsIDMpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDI1LCAzKSwgbmV3IFByZWZpeENvZGVSYW5nZSgzMywgMyksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNDEsIDMpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDQ5LCA0KSwgbmV3IFByZWZpeENvZGVSYW5nZSg2NSwgNCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoODEsIDQpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDk3LCA0KSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgxMTMsIDUpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDE0NSwgNSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTc3LCA1KSwgbmV3IFByZWZpeENvZGVSYW5nZSgyMDksIDUpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDI0MSwgNiksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMzA1LCA2KSwgbmV3IFByZWZpeENvZGVSYW5nZSgzNjksIDcpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDQ5NywgOCksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNzUzLCA5KSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMjY1LCAxMCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMjI4OSwgMTEpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDQzMzcsIDEyKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSg4NDMzLCAxMyksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTY2MjUsIDI0KVxuXTtcblxuZXhwb3J0cy5rSW5zZXJ0TGVuZ3RoUHJlZml4Q29kZSA9IFtcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgwLCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSgxLCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSgyLCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSgzLCAwKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSg0LCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSg1LCAwKSwgbmV3IFByZWZpeENvZGVSYW5nZSg2LCAxKSwgbmV3IFByZWZpeENvZGVSYW5nZSg4LCAxKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgxMCwgMiksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTQsIDIpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDE4LCAzKSwgbmV3IFByZWZpeENvZGVSYW5nZSgyNiwgMyksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMzQsIDQpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDUwLCA0KSwgbmV3IFByZWZpeENvZGVSYW5nZSg2NiwgNSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoOTgsIDUpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDEzMCwgNiksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTk0LCA3KSwgbmV3IFByZWZpeENvZGVSYW5nZSgzMjIsIDgpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDU3OCwgOSksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTA5MCwgMTApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDIxMTQsIDEyKSwgbmV3IFByZWZpeENvZGVSYW5nZSg2MjEwLCAxNCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMjI1OTQsIDI0KSxcbl07XG5cbmV4cG9ydHMua0NvcHlMZW5ndGhQcmVmaXhDb2RlID0gW1xuICBuZXcgUHJlZml4Q29kZVJhbmdlKDIsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDMsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDQsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDUsIDApLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDYsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDcsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDgsIDApLCBuZXcgUHJlZml4Q29kZVJhbmdlKDksIDApLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDEwLCAxKSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMiwgMSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTQsIDIpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDE4LCAyKSxcbiAgbmV3IFByZWZpeENvZGVSYW5nZSgyMiwgMyksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMzAsIDMpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDM4LCA0KSwgbmV3IFByZWZpeENvZGVSYW5nZSg1NCwgNCksXG4gIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNzAsIDUpLCBuZXcgUHJlZml4Q29kZVJhbmdlKDEwMiwgNSksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMTM0LCA2KSwgbmV3IFByZWZpeENvZGVSYW5nZSgxOTgsIDcpLFxuICBuZXcgUHJlZml4Q29kZVJhbmdlKDMyNiwgOCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoNTgyLCA5KSwgbmV3IFByZWZpeENvZGVSYW5nZSgxMDk0LCAxMCksIG5ldyBQcmVmaXhDb2RlUmFuZ2UoMjExOCwgMjQpLFxuXTtcblxuZXhwb3J0cy5rSW5zZXJ0UmFuZ2VMdXQgPSBbXG4gIDAsIDAsIDgsIDgsIDAsIDE2LCA4LCAxNiwgMTYsXG5dO1xuXG5leHBvcnRzLmtDb3B5UmFuZ2VMdXQgPSBbXG4gIDAsIDgsIDAsIDgsIDE2LCAwLCAxNiwgOCwgMTYsXG5dO1xuIiwgIi8qIENvcHlyaWdodCAyMDEzIEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG5cbiAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbiAgIFRyYW5zZm9ybWF0aW9ucyBvbiBkaWN0aW9uYXJ5IHdvcmRzLlxuKi9cblxudmFyIEJyb3RsaURpY3Rpb25hcnkgPSByZXF1aXJlKCcuL2RpY3Rpb25hcnknKTtcblxudmFyIGtJZGVudGl0eSAgICAgICA9IDA7XG52YXIga09taXRMYXN0MSAgICAgID0gMTtcbnZhciBrT21pdExhc3QyICAgICAgPSAyO1xudmFyIGtPbWl0TGFzdDMgICAgICA9IDM7XG52YXIga09taXRMYXN0NCAgICAgID0gNDtcbnZhciBrT21pdExhc3Q1ICAgICAgPSA1O1xudmFyIGtPbWl0TGFzdDYgICAgICA9IDY7XG52YXIga09taXRMYXN0NyAgICAgID0gNztcbnZhciBrT21pdExhc3Q4ICAgICAgPSA4O1xudmFyIGtPbWl0TGFzdDkgICAgICA9IDk7XG52YXIga1VwcGVyY2FzZUZpcnN0ID0gMTA7XG52YXIga1VwcGVyY2FzZUFsbCAgID0gMTE7XG52YXIga09taXRGaXJzdDEgICAgID0gMTI7XG52YXIga09taXRGaXJzdDIgICAgID0gMTM7XG52YXIga09taXRGaXJzdDMgICAgID0gMTQ7XG52YXIga09taXRGaXJzdDQgICAgID0gMTU7XG52YXIga09taXRGaXJzdDUgICAgID0gMTY7XG52YXIga09taXRGaXJzdDYgICAgID0gMTc7XG52YXIga09taXRGaXJzdDcgICAgID0gMTg7XG52YXIga09taXRGaXJzdDggICAgID0gMTk7XG52YXIga09taXRGaXJzdDkgICAgID0gMjA7XG5cbmZ1bmN0aW9uIFRyYW5zZm9ybShwcmVmaXgsIHRyYW5zZm9ybSwgc3VmZml4KSB7XG4gIHRoaXMucHJlZml4ID0gbmV3IFVpbnQ4QXJyYXkocHJlZml4Lmxlbmd0aCk7XG4gIHRoaXMudHJhbnNmb3JtID0gdHJhbnNmb3JtO1xuICB0aGlzLnN1ZmZpeCA9IG5ldyBVaW50OEFycmF5KHN1ZmZpeC5sZW5ndGgpO1xuICBcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcmVmaXgubGVuZ3RoOyBpKyspXG4gICAgdGhpcy5wcmVmaXhbaV0gPSBwcmVmaXguY2hhckNvZGVBdChpKTtcbiAgXG4gIGZvciAodmFyIGkgPSAwOyBpIDwgc3VmZml4Lmxlbmd0aDsgaSsrKVxuICAgIHRoaXMuc3VmZml4W2ldID0gc3VmZml4LmNoYXJDb2RlQXQoaSk7XG59XG5cbnZhciBrVHJhbnNmb3JtcyA9IFtcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtJZGVudGl0eSwgICAgICAgXCIgXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdEZpcnN0MSwgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgdGhlIFwiICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrSWRlbnRpdHksICAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgIFwicyBcIiwga0lkZW50aXR5LCAgICAgICBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgb2YgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBhbmQgXCIgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0Rmlyc3QyLCAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3QxLCAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgIFwiLCBcIiwga0lkZW50aXR5LCAgICAgICBcIiBcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIsIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiIFwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBpbiBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgdG8gXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgXCJlIFwiLCBrSWRlbnRpdHksICAgICAgIFwiIFwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIlxcXCJcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIi5cIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJcXFwiPlwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJcXG5cIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRMYXN0MywgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJdXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGZvciBcIiAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRGaXJzdDMsICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDIsICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGEgXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiB0aGF0IFwiICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIi5cIiwga0lkZW50aXR5LCAgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtJZGVudGl0eSwgICAgICAgXCIsIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdEZpcnN0NCwgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiB3aXRoIFwiICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCInXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGZyb20gXCIgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBieSBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0Rmlyc3Q1LCAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdEZpcnN0NiwgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgIFwiIHRoZSBcIiwga0lkZW50aXR5LCAgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDQsICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiLiBUaGUgXCIgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUFsbCwgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIgb24gXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIGFzIFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBpcyBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDcsICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3QxLCAgICAgIFwiaW5nIFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIlxcblxcdFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIjpcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtJZGVudGl0eSwgICAgICAgXCIuIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiZWQgXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRGaXJzdDksICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0Rmlyc3Q3LCAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3Q2LCAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIsIFwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrT21pdExhc3Q4LCAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIiBhdCBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJseSBcIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgXCIgdGhlIFwiLCBrSWRlbnRpdHksICAgICAgIFwiIG9mIFwiICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga09taXRMYXN0NSwgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtPbWl0TGFzdDksICAgICAgXCJcIiAgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiLCBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIlxcXCJcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIi5cIiwga0lkZW50aXR5LCAgICAgICBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCIgXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiXFxcIj5cIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiPVxcXCJcIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrSWRlbnRpdHksICAgICAgIFwiLlwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgIFwiLmNvbS9cIiwga0lkZW50aXR5LCAgICAgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICBcIiB0aGUgXCIsIGtJZGVudGl0eSwgICAgICAgXCIgb2YgdGhlIFwiICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiJ1wiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIi4gVGhpcyBcIiAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCIsXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiLlwiLCBrSWRlbnRpdHksICAgICAgIFwiIFwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIuXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiIG5vdCBcIiAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga0lkZW50aXR5LCAgICAgICBcIj1cXFwiXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcImVyIFwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VBbGwsICAgXCIgXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrSWRlbnRpdHksICAgICAgIFwiYWwgXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUFsbCwgICBcIlwiICAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCI9J1wiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiXFxcIlwiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga0lkZW50aXR5LCAgICAgICBcIihcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJmdWwgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlRmlyc3QsIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcIml2ZSBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJsZXNzIFwiICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiJ1wiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga0lkZW50aXR5LCAgICAgICBcImVzdCBcIiAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIuXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiXFxcIj5cIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrSWRlbnRpdHksICAgICAgIFwiPSdcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIixcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJpemUgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLlwiICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oIFwiXFx4YzJcXHhhMFwiLCBrSWRlbnRpdHksICAgICAgIFwiXCIgICAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga0lkZW50aXR5LCAgICAgICBcIixcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCI9XFxcIlwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCI9XFxcIlwiICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtJZGVudGl0eSwgICAgICAgXCJvdXMgXCIgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLCBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUZpcnN0LCBcIj0nXCIgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCIsXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiPVxcXCJcIiAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLCBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICAgXCJcIiwga1VwcGVyY2FzZUFsbCwgICBcIixcIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCIoXCIgICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgICBcIlwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUFsbCwgICBcIi5cIiAgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgIFwiXCIsIGtVcHBlcmNhc2VBbGwsICAgXCI9J1wiICAgICAgICAgKSxcbiAgICAgbmV3IFRyYW5zZm9ybSggICAgICAgIFwiIFwiLCBrVXBwZXJjYXNlQWxsLCAgIFwiLiBcIiAgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUZpcnN0LCBcIj1cXFwiXCIgICAgICAgICksXG4gICAgIG5ldyBUcmFuc2Zvcm0oICAgICAgICBcIiBcIiwga1VwcGVyY2FzZUFsbCwgICBcIj0nXCIgICAgICAgICApLFxuICAgICBuZXcgVHJhbnNmb3JtKCAgICAgICAgXCIgXCIsIGtVcHBlcmNhc2VGaXJzdCwgXCI9J1wiICAgICAgICAgKVxuXTtcblxuZXhwb3J0cy5rVHJhbnNmb3JtcyA9IGtUcmFuc2Zvcm1zO1xuZXhwb3J0cy5rTnVtVHJhbnNmb3JtcyA9IGtUcmFuc2Zvcm1zLmxlbmd0aDtcblxuZnVuY3Rpb24gVG9VcHBlckNhc2UocCwgaSkge1xuICBpZiAocFtpXSA8IDB4YzApIHtcbiAgICBpZiAocFtpXSA+PSA5NyAmJiBwW2ldIDw9IDEyMikge1xuICAgICAgcFtpXSBePSAzMjtcbiAgICB9XG4gICAgcmV0dXJuIDE7XG4gIH1cbiAgXG4gIC8qIEFuIG92ZXJseSBzaW1wbGlmaWVkIHVwcGVyY2FzaW5nIG1vZGVsIGZvciB1dGYtOC4gKi9cbiAgaWYgKHBbaV0gPCAweGUwKSB7XG4gICAgcFtpICsgMV0gXj0gMzI7XG4gICAgcmV0dXJuIDI7XG4gIH1cbiAgXG4gIC8qIEFuIGFyYml0cmFyeSB0cmFuc2Zvcm0gZm9yIHRocmVlIGJ5dGUgY2hhcmFjdGVycy4gKi9cbiAgcFtpICsgMl0gXj0gNTtcbiAgcmV0dXJuIDM7XG59XG5cbmV4cG9ydHMudHJhbnNmb3JtRGljdGlvbmFyeVdvcmQgPSBmdW5jdGlvbihkc3QsIGlkeCwgd29yZCwgbGVuLCB0cmFuc2Zvcm0pIHtcbiAgdmFyIHByZWZpeCA9IGtUcmFuc2Zvcm1zW3RyYW5zZm9ybV0ucHJlZml4O1xuICB2YXIgc3VmZml4ID0ga1RyYW5zZm9ybXNbdHJhbnNmb3JtXS5zdWZmaXg7XG4gIHZhciB0ID0ga1RyYW5zZm9ybXNbdHJhbnNmb3JtXS50cmFuc2Zvcm07XG4gIHZhciBza2lwID0gdCA8IGtPbWl0Rmlyc3QxID8gMCA6IHQgLSAoa09taXRGaXJzdDEgLSAxKTtcbiAgdmFyIGkgPSAwO1xuICB2YXIgc3RhcnRfaWR4ID0gaWR4O1xuICB2YXIgdXBwZXJjYXNlO1xuICBcbiAgaWYgKHNraXAgPiBsZW4pIHtcbiAgICBza2lwID0gbGVuO1xuICB9XG4gIFxuICB2YXIgcHJlZml4X3BvcyA9IDA7XG4gIHdoaWxlIChwcmVmaXhfcG9zIDwgcHJlZml4Lmxlbmd0aCkge1xuICAgIGRzdFtpZHgrK10gPSBwcmVmaXhbcHJlZml4X3BvcysrXTtcbiAgfVxuICBcbiAgd29yZCArPSBza2lwO1xuICBsZW4gLT0gc2tpcDtcbiAgXG4gIGlmICh0IDw9IGtPbWl0TGFzdDkpIHtcbiAgICBsZW4gLT0gdDtcbiAgfVxuICBcbiAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgZHN0W2lkeCsrXSA9IEJyb3RsaURpY3Rpb25hcnkuZGljdGlvbmFyeVt3b3JkICsgaV07XG4gIH1cbiAgXG4gIHVwcGVyY2FzZSA9IGlkeCAtIGxlbjtcbiAgXG4gIGlmICh0ID09PSBrVXBwZXJjYXNlRmlyc3QpIHtcbiAgICBUb1VwcGVyQ2FzZShkc3QsIHVwcGVyY2FzZSk7XG4gIH0gZWxzZSBpZiAodCA9PT0ga1VwcGVyY2FzZUFsbCkge1xuICAgIHdoaWxlIChsZW4gPiAwKSB7XG4gICAgICB2YXIgc3RlcCA9IFRvVXBwZXJDYXNlKGRzdCwgdXBwZXJjYXNlKTtcbiAgICAgIHVwcGVyY2FzZSArPSBzdGVwO1xuICAgICAgbGVuIC09IHN0ZXA7XG4gICAgfVxuICB9XG4gIFxuICB2YXIgc3VmZml4X3BvcyA9IDA7XG4gIHdoaWxlIChzdWZmaXhfcG9zIDwgc3VmZml4Lmxlbmd0aCkge1xuICAgIGRzdFtpZHgrK10gPSBzdWZmaXhbc3VmZml4X3BvcysrXTtcbiAgfVxuICBcbiAgcmV0dXJuIGlkeCAtIHN0YXJ0X2lkeDtcbn1cbiIsICIvKiBDb3B5cmlnaHQgMjAxMyBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuXG4gICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxudmFyIEJyb3RsaUlucHV0ID0gcmVxdWlyZSgnLi9zdHJlYW1zJykuQnJvdGxpSW5wdXQ7XG52YXIgQnJvdGxpT3V0cHV0ID0gcmVxdWlyZSgnLi9zdHJlYW1zJykuQnJvdGxpT3V0cHV0O1xudmFyIEJyb3RsaUJpdFJlYWRlciA9IHJlcXVpcmUoJy4vYml0X3JlYWRlcicpO1xudmFyIEJyb3RsaURpY3Rpb25hcnkgPSByZXF1aXJlKCcuL2RpY3Rpb25hcnknKTtcbnZhciBIdWZmbWFuQ29kZSA9IHJlcXVpcmUoJy4vaHVmZm1hbicpLkh1ZmZtYW5Db2RlO1xudmFyIEJyb3RsaUJ1aWxkSHVmZm1hblRhYmxlID0gcmVxdWlyZSgnLi9odWZmbWFuJykuQnJvdGxpQnVpbGRIdWZmbWFuVGFibGU7XG52YXIgQ29udGV4dCA9IHJlcXVpcmUoJy4vY29udGV4dCcpO1xudmFyIFByZWZpeCA9IHJlcXVpcmUoJy4vcHJlZml4Jyk7XG52YXIgVHJhbnNmb3JtID0gcmVxdWlyZSgnLi90cmFuc2Zvcm0nKTtcblxudmFyIGtEZWZhdWx0Q29kZUxlbmd0aCA9IDg7XG52YXIga0NvZGVMZW5ndGhSZXBlYXRDb2RlID0gMTY7XG52YXIga051bUxpdGVyYWxDb2RlcyA9IDI1NjtcbnZhciBrTnVtSW5zZXJ0QW5kQ29weUNvZGVzID0gNzA0O1xudmFyIGtOdW1CbG9ja0xlbmd0aENvZGVzID0gMjY7XG52YXIga0xpdGVyYWxDb250ZXh0Qml0cyA9IDY7XG52YXIga0Rpc3RhbmNlQ29udGV4dEJpdHMgPSAyO1xuXG52YXIgSFVGRk1BTl9UQUJMRV9CSVRTID0gODtcbnZhciBIVUZGTUFOX1RBQkxFX01BU0sgPSAweGZmO1xuLyogTWF4aW11bSBwb3NzaWJsZSBIdWZmbWFuIHRhYmxlIHNpemUgZm9yIGFuIGFscGhhYmV0IHNpemUgb2YgNzA0LCBtYXggY29kZVxuICogbGVuZ3RoIDE1IGFuZCByb290IHRhYmxlIGJpdHMgOC4gKi9cbnZhciBIVUZGTUFOX01BWF9UQUJMRV9TSVpFID0gMTA4MDtcblxudmFyIENPREVfTEVOR1RIX0NPREVTID0gMTg7XG52YXIga0NvZGVMZW5ndGhDb2RlT3JkZXIgPSBuZXcgVWludDhBcnJheShbXG4gIDEsIDIsIDMsIDQsIDAsIDUsIDE3LCA2LCAxNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSxcbl0pO1xuXG52YXIgTlVNX0RJU1RBTkNFX1NIT1JUX0NPREVTID0gMTY7XG52YXIga0Rpc3RhbmNlU2hvcnRDb2RlSW5kZXhPZmZzZXQgPSBuZXcgVWludDhBcnJheShbXG4gIDMsIDIsIDEsIDAsIDMsIDMsIDMsIDMsIDMsIDMsIDIsIDIsIDIsIDIsIDIsIDJcbl0pO1xuXG52YXIga0Rpc3RhbmNlU2hvcnRDb2RlVmFsdWVPZmZzZXQgPSBuZXcgSW50OEFycmF5KFtcbiAgMCwgMCwgMCwgMCwgLTEsIDEsIC0yLCAyLCAtMywgMywgLTEsIDEsIC0yLCAyLCAtMywgM1xuXSk7XG5cbnZhciBrTWF4SHVmZm1hblRhYmxlU2l6ZSA9IG5ldyBVaW50MTZBcnJheShbXG4gIDI1NiwgNDAyLCA0MzYsIDQ2OCwgNTAwLCA1MzQsIDU2NiwgNTk4LCA2MzAsIDY2MiwgNjk0LCA3MjYsIDc1OCwgNzkwLCA4MjIsXG4gIDg1NCwgODg2LCA5MjAsIDk1MiwgOTg0LCAxMDE2LCAxMDQ4LCAxMDgwXG5dKTtcblxuZnVuY3Rpb24gRGVjb2RlV2luZG93Qml0cyhicikge1xuICB2YXIgbjtcbiAgaWYgKGJyLnJlYWRCaXRzKDEpID09PSAwKSB7XG4gICAgcmV0dXJuIDE2O1xuICB9XG4gIFxuICBuID0gYnIucmVhZEJpdHMoMyk7XG4gIGlmIChuID4gMCkge1xuICAgIHJldHVybiAxNyArIG47XG4gIH1cbiAgXG4gIG4gPSBici5yZWFkQml0cygzKTtcbiAgaWYgKG4gPiAwKSB7XG4gICAgcmV0dXJuIDggKyBuO1xuICB9XG4gIFxuICByZXR1cm4gMTc7XG59XG5cbi8qIERlY29kZXMgYSBudW1iZXIgaW4gdGhlIHJhbmdlIFswLi4yNTVdLCBieSByZWFkaW5nIDEgLSAxMSBiaXRzLiAqL1xuZnVuY3Rpb24gRGVjb2RlVmFyTGVuVWludDgoYnIpIHtcbiAgaWYgKGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgdmFyIG5iaXRzID0gYnIucmVhZEJpdHMoMyk7XG4gICAgaWYgKG5iaXRzID09PSAwKSB7XG4gICAgICByZXR1cm4gMTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGJyLnJlYWRCaXRzKG5iaXRzKSArICgxIDw8IG5iaXRzKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIDA7XG59XG5cbmZ1bmN0aW9uIE1ldGFCbG9ja0xlbmd0aCgpIHtcbiAgdGhpcy5tZXRhX2Jsb2NrX2xlbmd0aCA9IDA7XG4gIHRoaXMuaW5wdXRfZW5kID0gMDtcbiAgdGhpcy5pc191bmNvbXByZXNzZWQgPSAwO1xuICB0aGlzLmlzX21ldGFkYXRhID0gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIERlY29kZU1ldGFCbG9ja0xlbmd0aChicikge1xuICB2YXIgb3V0ID0gbmV3IE1ldGFCbG9ja0xlbmd0aDsgIFxuICB2YXIgc2l6ZV9uaWJibGVzO1xuICB2YXIgc2l6ZV9ieXRlcztcbiAgdmFyIGk7XG4gIFxuICBvdXQuaW5wdXRfZW5kID0gYnIucmVhZEJpdHMoMSk7XG4gIGlmIChvdXQuaW5wdXRfZW5kICYmIGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgcmV0dXJuIG91dDtcbiAgfVxuICBcbiAgc2l6ZV9uaWJibGVzID0gYnIucmVhZEJpdHMoMikgKyA0O1xuICBpZiAoc2l6ZV9uaWJibGVzID09PSA3KSB7XG4gICAgb3V0LmlzX21ldGFkYXRhID0gdHJ1ZTtcbiAgICBcbiAgICBpZiAoYnIucmVhZEJpdHMoMSkgIT09IDApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcmVzZXJ2ZWQgYml0Jyk7XG4gICAgXG4gICAgc2l6ZV9ieXRlcyA9IGJyLnJlYWRCaXRzKDIpO1xuICAgIGlmIChzaXplX2J5dGVzID09PSAwKVxuICAgICAgcmV0dXJuIG91dDtcbiAgICBcbiAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZV9ieXRlczsgaSsrKSB7XG4gICAgICB2YXIgbmV4dF9ieXRlID0gYnIucmVhZEJpdHMoOCk7XG4gICAgICBpZiAoaSArIDEgPT09IHNpemVfYnl0ZXMgJiYgc2l6ZV9ieXRlcyA+IDEgJiYgbmV4dF9ieXRlID09PSAwKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgc2l6ZSBieXRlJyk7XG4gICAgICBcbiAgICAgIG91dC5tZXRhX2Jsb2NrX2xlbmd0aCB8PSBuZXh0X2J5dGUgPDwgKGkgKiA4KTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgZm9yIChpID0gMDsgaSA8IHNpemVfbmliYmxlczsgKytpKSB7XG4gICAgICB2YXIgbmV4dF9uaWJibGUgPSBici5yZWFkQml0cyg0KTtcbiAgICAgIGlmIChpICsgMSA9PT0gc2l6ZV9uaWJibGVzICYmIHNpemVfbmliYmxlcyA+IDQgJiYgbmV4dF9uaWJibGUgPT09IDApXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBzaXplIG5pYmJsZScpO1xuICAgICAgXG4gICAgICBvdXQubWV0YV9ibG9ja19sZW5ndGggfD0gbmV4dF9uaWJibGUgPDwgKGkgKiA0KTtcbiAgICB9XG4gIH1cbiAgXG4gICsrb3V0Lm1ldGFfYmxvY2tfbGVuZ3RoO1xuICBcbiAgaWYgKCFvdXQuaW5wdXRfZW5kICYmICFvdXQuaXNfbWV0YWRhdGEpIHtcbiAgICBvdXQuaXNfdW5jb21wcmVzc2VkID0gYnIucmVhZEJpdHMoMSk7XG4gIH1cbiAgXG4gIHJldHVybiBvdXQ7XG59XG5cbi8qIERlY29kZXMgdGhlIG5leHQgSHVmZm1hbiBjb2RlIGZyb20gYml0LXN0cmVhbS4gKi9cbmZ1bmN0aW9uIFJlYWRTeW1ib2wodGFibGUsIGluZGV4LCBicikge1xuICB2YXIgc3RhcnRfaW5kZXggPSBpbmRleDtcbiAgXG4gIHZhciBuYml0cztcbiAgYnIuZmlsbEJpdFdpbmRvdygpO1xuICBpbmRleCArPSAoYnIudmFsXyA+Pj4gYnIuYml0X3Bvc18pICYgSFVGRk1BTl9UQUJMRV9NQVNLO1xuICBuYml0cyA9IHRhYmxlW2luZGV4XS5iaXRzIC0gSFVGRk1BTl9UQUJMRV9CSVRTO1xuICBpZiAobmJpdHMgPiAwKSB7XG4gICAgYnIuYml0X3Bvc18gKz0gSFVGRk1BTl9UQUJMRV9CSVRTO1xuICAgIGluZGV4ICs9IHRhYmxlW2luZGV4XS52YWx1ZTtcbiAgICBpbmRleCArPSAoYnIudmFsXyA+Pj4gYnIuYml0X3Bvc18pICYgKCgxIDw8IG5iaXRzKSAtIDEpO1xuICB9XG4gIGJyLmJpdF9wb3NfICs9IHRhYmxlW2luZGV4XS5iaXRzO1xuICByZXR1cm4gdGFibGVbaW5kZXhdLnZhbHVlO1xufVxuXG5mdW5jdGlvbiBSZWFkSHVmZm1hbkNvZGVMZW5ndGhzKGNvZGVfbGVuZ3RoX2NvZGVfbGVuZ3RocywgbnVtX3N5bWJvbHMsIGNvZGVfbGVuZ3RocywgYnIpIHtcbiAgdmFyIHN5bWJvbCA9IDA7XG4gIHZhciBwcmV2X2NvZGVfbGVuID0ga0RlZmF1bHRDb2RlTGVuZ3RoO1xuICB2YXIgcmVwZWF0ID0gMDtcbiAgdmFyIHJlcGVhdF9jb2RlX2xlbiA9IDA7XG4gIHZhciBzcGFjZSA9IDMyNzY4O1xuICBcbiAgdmFyIHRhYmxlID0gW107XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgMzI7IGkrKylcbiAgICB0YWJsZS5wdXNoKG5ldyBIdWZmbWFuQ29kZSgwLCAwKSk7XG4gIFxuICBCcm90bGlCdWlsZEh1ZmZtYW5UYWJsZSh0YWJsZSwgMCwgNSwgY29kZV9sZW5ndGhfY29kZV9sZW5ndGhzLCBDT0RFX0xFTkdUSF9DT0RFUyk7XG5cbiAgd2hpbGUgKHN5bWJvbCA8IG51bV9zeW1ib2xzICYmIHNwYWNlID4gMCkge1xuICAgIHZhciBwID0gMDtcbiAgICB2YXIgY29kZV9sZW47XG4gICAgXG4gICAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICAgIGJyLmZpbGxCaXRXaW5kb3coKTtcbiAgICBwICs9IChici52YWxfID4+PiBici5iaXRfcG9zXykgJiAzMTtcbiAgICBici5iaXRfcG9zXyArPSB0YWJsZVtwXS5iaXRzO1xuICAgIGNvZGVfbGVuID0gdGFibGVbcF0udmFsdWUgJiAweGZmO1xuICAgIGlmIChjb2RlX2xlbiA8IGtDb2RlTGVuZ3RoUmVwZWF0Q29kZSkge1xuICAgICAgcmVwZWF0ID0gMDtcbiAgICAgIGNvZGVfbGVuZ3Roc1tzeW1ib2wrK10gPSBjb2RlX2xlbjtcbiAgICAgIGlmIChjb2RlX2xlbiAhPT0gMCkge1xuICAgICAgICBwcmV2X2NvZGVfbGVuID0gY29kZV9sZW47XG4gICAgICAgIHNwYWNlIC09IDMyNzY4ID4+IGNvZGVfbGVuO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgZXh0cmFfYml0cyA9IGNvZGVfbGVuIC0gMTQ7XG4gICAgICB2YXIgb2xkX3JlcGVhdDtcbiAgICAgIHZhciByZXBlYXRfZGVsdGE7XG4gICAgICB2YXIgbmV3X2xlbiA9IDA7XG4gICAgICBpZiAoY29kZV9sZW4gPT09IGtDb2RlTGVuZ3RoUmVwZWF0Q29kZSkge1xuICAgICAgICBuZXdfbGVuID0gcHJldl9jb2RlX2xlbjtcbiAgICAgIH1cbiAgICAgIGlmIChyZXBlYXRfY29kZV9sZW4gIT09IG5ld19sZW4pIHtcbiAgICAgICAgcmVwZWF0ID0gMDtcbiAgICAgICAgcmVwZWF0X2NvZGVfbGVuID0gbmV3X2xlbjtcbiAgICAgIH1cbiAgICAgIG9sZF9yZXBlYXQgPSByZXBlYXQ7XG4gICAgICBpZiAocmVwZWF0ID4gMCkge1xuICAgICAgICByZXBlYXQgLT0gMjtcbiAgICAgICAgcmVwZWF0IDw8PSBleHRyYV9iaXRzO1xuICAgICAgfVxuICAgICAgcmVwZWF0ICs9IGJyLnJlYWRCaXRzKGV4dHJhX2JpdHMpICsgMztcbiAgICAgIHJlcGVhdF9kZWx0YSA9IHJlcGVhdCAtIG9sZF9yZXBlYXQ7XG4gICAgICBpZiAoc3ltYm9sICsgcmVwZWF0X2RlbHRhID4gbnVtX3N5bWJvbHMpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbUmVhZEh1ZmZtYW5Db2RlTGVuZ3Roc10gc3ltYm9sICsgcmVwZWF0X2RlbHRhID4gbnVtX3N5bWJvbHMnKTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgZm9yICh2YXIgeCA9IDA7IHggPCByZXBlYXRfZGVsdGE7IHgrKylcbiAgICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbCArIHhdID0gcmVwZWF0X2NvZGVfbGVuO1xuICAgICAgXG4gICAgICBzeW1ib2wgKz0gcmVwZWF0X2RlbHRhO1xuICAgICAgXG4gICAgICBpZiAocmVwZWF0X2NvZGVfbGVuICE9PSAwKSB7XG4gICAgICAgIHNwYWNlIC09IHJlcGVhdF9kZWx0YSA8PCAoMTUgLSByZXBlYXRfY29kZV9sZW4pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpZiAoc3BhY2UgIT09IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJbUmVhZEh1ZmZtYW5Db2RlTGVuZ3Roc10gc3BhY2UgPSBcIiArIHNwYWNlKTtcbiAgfVxuICBcbiAgZm9yICg7IHN5bWJvbCA8IG51bV9zeW1ib2xzOyBzeW1ib2wrKylcbiAgICBjb2RlX2xlbmd0aHNbc3ltYm9sXSA9IDA7XG59XG5cbmZ1bmN0aW9uIFJlYWRIdWZmbWFuQ29kZShhbHBoYWJldF9zaXplLCB0YWJsZXMsIHRhYmxlLCBicikge1xuICB2YXIgdGFibGVfc2l6ZSA9IDA7XG4gIHZhciBzaW1wbGVfY29kZV9vcl9za2lwO1xuICB2YXIgY29kZV9sZW5ndGhzID0gbmV3IFVpbnQ4QXJyYXkoYWxwaGFiZXRfc2l6ZSk7XG4gIFxuICBici5yZWFkTW9yZUlucHV0KCk7XG4gIFxuICAvKiBzaW1wbGVfY29kZV9vcl9za2lwIGlzIHVzZWQgYXMgZm9sbG93czpcbiAgICAgMSBmb3Igc2ltcGxlIGNvZGU7XG4gICAgIDAgZm9yIG5vIHNraXBwaW5nLCAyIHNraXBzIDIgY29kZSBsZW5ndGhzLCAzIHNraXBzIDMgY29kZSBsZW5ndGhzICovXG4gIHNpbXBsZV9jb2RlX29yX3NraXAgPSBici5yZWFkQml0cygyKTtcbiAgaWYgKHNpbXBsZV9jb2RlX29yX3NraXAgPT09IDEpIHtcbiAgICAvKiBSZWFkIHN5bWJvbHMsIGNvZGVzICYgY29kZSBsZW5ndGhzIGRpcmVjdGx5LiAqL1xuICAgIHZhciBpO1xuICAgIHZhciBtYXhfYml0c19jb3VudGVyID0gYWxwaGFiZXRfc2l6ZSAtIDE7XG4gICAgdmFyIG1heF9iaXRzID0gMDtcbiAgICB2YXIgc3ltYm9scyA9IG5ldyBJbnQzMkFycmF5KDQpO1xuICAgIHZhciBudW1fc3ltYm9scyA9IGJyLnJlYWRCaXRzKDIpICsgMTtcbiAgICB3aGlsZSAobWF4X2JpdHNfY291bnRlcikge1xuICAgICAgbWF4X2JpdHNfY291bnRlciA+Pj0gMTtcbiAgICAgICsrbWF4X2JpdHM7XG4gICAgfVxuXG4gICAgZm9yIChpID0gMDsgaSA8IG51bV9zeW1ib2xzOyArK2kpIHtcbiAgICAgIHN5bWJvbHNbaV0gPSBici5yZWFkQml0cyhtYXhfYml0cykgJSBhbHBoYWJldF9zaXplO1xuICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbaV1dID0gMjtcbiAgICB9XG4gICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbMF1dID0gMTtcbiAgICBzd2l0Y2ggKG51bV9zeW1ib2xzKSB7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAzOlxuICAgICAgICBpZiAoKHN5bWJvbHNbMF0gPT09IHN5bWJvbHNbMV0pIHx8XG4gICAgICAgICAgICAoc3ltYm9sc1swXSA9PT0gc3ltYm9sc1syXSkgfHxcbiAgICAgICAgICAgIChzeW1ib2xzWzFdID09PSBzeW1ib2xzWzJdKSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignW1JlYWRIdWZmbWFuQ29kZV0gaW52YWxpZCBzeW1ib2xzJyk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI6XG4gICAgICAgIGlmIChzeW1ib2xzWzBdID09PSBzeW1ib2xzWzFdKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbUmVhZEh1ZmZtYW5Db2RlXSBpbnZhbGlkIHN5bWJvbHMnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbMV1dID0gMTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDQ6XG4gICAgICAgIGlmICgoc3ltYm9sc1swXSA9PT0gc3ltYm9sc1sxXSkgfHxcbiAgICAgICAgICAgIChzeW1ib2xzWzBdID09PSBzeW1ib2xzWzJdKSB8fFxuICAgICAgICAgICAgKHN5bWJvbHNbMF0gPT09IHN5bWJvbHNbM10pIHx8XG4gICAgICAgICAgICAoc3ltYm9sc1sxXSA9PT0gc3ltYm9sc1syXSkgfHxcbiAgICAgICAgICAgIChzeW1ib2xzWzFdID09PSBzeW1ib2xzWzNdKSB8fFxuICAgICAgICAgICAgKHN5bWJvbHNbMl0gPT09IHN5bWJvbHNbM10pKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbUmVhZEh1ZmZtYW5Db2RlXSBpbnZhbGlkIHN5bWJvbHMnKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgaWYgKGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgICAgICAgY29kZV9sZW5ndGhzW3N5bWJvbHNbMl1dID0gMztcbiAgICAgICAgICBjb2RlX2xlbmd0aHNbc3ltYm9sc1szXV0gPSAzO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvZGVfbGVuZ3Roc1tzeW1ib2xzWzBdXSA9IDI7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9IGVsc2UgeyAgLyogRGVjb2RlIEh1ZmZtYW4tY29kZWQgY29kZSBsZW5ndGhzLiAqL1xuICAgIHZhciBpO1xuICAgIHZhciBjb2RlX2xlbmd0aF9jb2RlX2xlbmd0aHMgPSBuZXcgVWludDhBcnJheShDT0RFX0xFTkdUSF9DT0RFUyk7XG4gICAgdmFyIHNwYWNlID0gMzI7XG4gICAgdmFyIG51bV9jb2RlcyA9IDA7XG4gICAgLyogU3RhdGljIEh1ZmZtYW4gY29kZSBmb3IgdGhlIGNvZGUgbGVuZ3RoIGNvZGUgbGVuZ3RocyAqL1xuICAgIHZhciBodWZmID0gW1xuICAgICAgbmV3IEh1ZmZtYW5Db2RlKDIsIDApLCBuZXcgSHVmZm1hbkNvZGUoMiwgNCksIG5ldyBIdWZmbWFuQ29kZSgyLCAzKSwgbmV3IEh1ZmZtYW5Db2RlKDMsIDIpLCBcbiAgICAgIG5ldyBIdWZmbWFuQ29kZSgyLCAwKSwgbmV3IEh1ZmZtYW5Db2RlKDIsIDQpLCBuZXcgSHVmZm1hbkNvZGUoMiwgMyksIG5ldyBIdWZmbWFuQ29kZSg0LCAxKSxcbiAgICAgIG5ldyBIdWZmbWFuQ29kZSgyLCAwKSwgbmV3IEh1ZmZtYW5Db2RlKDIsIDQpLCBuZXcgSHVmZm1hbkNvZGUoMiwgMyksIG5ldyBIdWZmbWFuQ29kZSgzLCAyKSwgXG4gICAgICBuZXcgSHVmZm1hbkNvZGUoMiwgMCksIG5ldyBIdWZmbWFuQ29kZSgyLCA0KSwgbmV3IEh1ZmZtYW5Db2RlKDIsIDMpLCBuZXcgSHVmZm1hbkNvZGUoNCwgNSlcbiAgICBdO1xuICAgIGZvciAoaSA9IHNpbXBsZV9jb2RlX29yX3NraXA7IGkgPCBDT0RFX0xFTkdUSF9DT0RFUyAmJiBzcGFjZSA+IDA7ICsraSkge1xuICAgICAgdmFyIGNvZGVfbGVuX2lkeCA9IGtDb2RlTGVuZ3RoQ29kZU9yZGVyW2ldO1xuICAgICAgdmFyIHAgPSAwO1xuICAgICAgdmFyIHY7XG4gICAgICBici5maWxsQml0V2luZG93KCk7XG4gICAgICBwICs9IChici52YWxfID4+PiBici5iaXRfcG9zXykgJiAxNTtcbiAgICAgIGJyLmJpdF9wb3NfICs9IGh1ZmZbcF0uYml0cztcbiAgICAgIHYgPSBodWZmW3BdLnZhbHVlO1xuICAgICAgY29kZV9sZW5ndGhfY29kZV9sZW5ndGhzW2NvZGVfbGVuX2lkeF0gPSB2O1xuICAgICAgaWYgKHYgIT09IDApIHtcbiAgICAgICAgc3BhY2UgLT0gKDMyID4+IHYpO1xuICAgICAgICArK251bV9jb2RlcztcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgaWYgKCEobnVtX2NvZGVzID09PSAxIHx8IHNwYWNlID09PSAwKSlcbiAgICAgIHRocm93IG5ldyBFcnJvcignW1JlYWRIdWZmbWFuQ29kZV0gaW52YWxpZCBudW1fY29kZXMgb3Igc3BhY2UnKTtcbiAgICBcbiAgICBSZWFkSHVmZm1hbkNvZGVMZW5ndGhzKGNvZGVfbGVuZ3RoX2NvZGVfbGVuZ3RocywgYWxwaGFiZXRfc2l6ZSwgY29kZV9sZW5ndGhzLCBicik7XG4gIH1cbiAgXG4gIHRhYmxlX3NpemUgPSBCcm90bGlCdWlsZEh1ZmZtYW5UYWJsZSh0YWJsZXMsIHRhYmxlLCBIVUZGTUFOX1RBQkxFX0JJVFMsIGNvZGVfbGVuZ3RocywgYWxwaGFiZXRfc2l6ZSk7XG4gIFxuICBpZiAodGFibGVfc2l6ZSA9PT0gMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIltSZWFkSHVmZm1hbkNvZGVdIEJ1aWxkSHVmZm1hblRhYmxlIGZhaWxlZDogXCIpO1xuICB9XG4gIFxuICByZXR1cm4gdGFibGVfc2l6ZTtcbn1cblxuZnVuY3Rpb24gUmVhZEJsb2NrTGVuZ3RoKHRhYmxlLCBpbmRleCwgYnIpIHtcbiAgdmFyIGNvZGU7XG4gIHZhciBuYml0cztcbiAgY29kZSA9IFJlYWRTeW1ib2wodGFibGUsIGluZGV4LCBicik7XG4gIG5iaXRzID0gUHJlZml4LmtCbG9ja0xlbmd0aFByZWZpeENvZGVbY29kZV0ubmJpdHM7XG4gIHJldHVybiBQcmVmaXgua0Jsb2NrTGVuZ3RoUHJlZml4Q29kZVtjb2RlXS5vZmZzZXQgKyBici5yZWFkQml0cyhuYml0cyk7XG59XG5cbmZ1bmN0aW9uIFRyYW5zbGF0ZVNob3J0Q29kZXMoY29kZSwgcmluZ2J1ZmZlciwgaW5kZXgpIHtcbiAgdmFyIHZhbDtcbiAgaWYgKGNvZGUgPCBOVU1fRElTVEFOQ0VfU0hPUlRfQ09ERVMpIHtcbiAgICBpbmRleCArPSBrRGlzdGFuY2VTaG9ydENvZGVJbmRleE9mZnNldFtjb2RlXTtcbiAgICBpbmRleCAmPSAzO1xuICAgIHZhbCA9IHJpbmdidWZmZXJbaW5kZXhdICsga0Rpc3RhbmNlU2hvcnRDb2RlVmFsdWVPZmZzZXRbY29kZV07XG4gIH0gZWxzZSB7XG4gICAgdmFsID0gY29kZSAtIE5VTV9ESVNUQU5DRV9TSE9SVF9DT0RFUyArIDE7XG4gIH1cbiAgcmV0dXJuIHZhbDtcbn1cblxuZnVuY3Rpb24gTW92ZVRvRnJvbnQodiwgaW5kZXgpIHtcbiAgdmFyIHZhbHVlID0gdltpbmRleF07XG4gIHZhciBpID0gaW5kZXg7XG4gIGZvciAoOyBpOyAtLWkpIHZbaV0gPSB2W2kgLSAxXTtcbiAgdlswXSA9IHZhbHVlO1xufVxuXG5mdW5jdGlvbiBJbnZlcnNlTW92ZVRvRnJvbnRUcmFuc2Zvcm0odiwgdl9sZW4pIHtcbiAgdmFyIG10ZiA9IG5ldyBVaW50OEFycmF5KDI1Nik7XG4gIHZhciBpO1xuICBmb3IgKGkgPSAwOyBpIDwgMjU2OyArK2kpIHtcbiAgICBtdGZbaV0gPSBpO1xuICB9XG4gIGZvciAoaSA9IDA7IGkgPCB2X2xlbjsgKytpKSB7XG4gICAgdmFyIGluZGV4ID0gdltpXTtcbiAgICB2W2ldID0gbXRmW2luZGV4XTtcbiAgICBpZiAoaW5kZXgpIE1vdmVUb0Zyb250KG10ZiwgaW5kZXgpO1xuICB9XG59XG5cbi8qIENvbnRhaW5zIGEgY29sbGVjdGlvbiBvZiBodWZmbWFuIHRyZWVzIHdpdGggdGhlIHNhbWUgYWxwaGFiZXQgc2l6ZS4gKi9cbmZ1bmN0aW9uIEh1ZmZtYW5UcmVlR3JvdXAoYWxwaGFiZXRfc2l6ZSwgbnVtX2h0cmVlcykge1xuICB0aGlzLmFscGhhYmV0X3NpemUgPSBhbHBoYWJldF9zaXplO1xuICB0aGlzLm51bV9odHJlZXMgPSBudW1faHRyZWVzO1xuICB0aGlzLmNvZGVzID0gbmV3IEFycmF5KG51bV9odHJlZXMgKyBudW1faHRyZWVzICoga01heEh1ZmZtYW5UYWJsZVNpemVbKGFscGhhYmV0X3NpemUgKyAzMSkgPj4+IDVdKTsgIFxuICB0aGlzLmh0cmVlcyA9IG5ldyBVaW50MzJBcnJheShudW1faHRyZWVzKTtcbn1cblxuSHVmZm1hblRyZWVHcm91cC5wcm90b3R5cGUuZGVjb2RlID0gZnVuY3Rpb24oYnIpIHtcbiAgdmFyIGk7XG4gIHZhciB0YWJsZV9zaXplO1xuICB2YXIgbmV4dCA9IDA7XG4gIGZvciAoaSA9IDA7IGkgPCB0aGlzLm51bV9odHJlZXM7ICsraSkge1xuICAgIHRoaXMuaHRyZWVzW2ldID0gbmV4dDtcbiAgICB0YWJsZV9zaXplID0gUmVhZEh1ZmZtYW5Db2RlKHRoaXMuYWxwaGFiZXRfc2l6ZSwgdGhpcy5jb2RlcywgbmV4dCwgYnIpO1xuICAgIG5leHQgKz0gdGFibGVfc2l6ZTtcbiAgfVxufTtcblxuZnVuY3Rpb24gRGVjb2RlQ29udGV4dE1hcChjb250ZXh0X21hcF9zaXplLCBicikge1xuICB2YXIgb3V0ID0geyBudW1faHRyZWVzOiBudWxsLCBjb250ZXh0X21hcDogbnVsbCB9O1xuICB2YXIgdXNlX3JsZV9mb3JfemVyb3M7XG4gIHZhciBtYXhfcnVuX2xlbmd0aF9wcmVmaXggPSAwO1xuICB2YXIgdGFibGU7XG4gIHZhciBpO1xuICBcbiAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICB2YXIgbnVtX2h0cmVlcyA9IG91dC5udW1faHRyZWVzID0gRGVjb2RlVmFyTGVuVWludDgoYnIpICsgMTtcblxuICB2YXIgY29udGV4dF9tYXAgPSBvdXQuY29udGV4dF9tYXAgPSBuZXcgVWludDhBcnJheShjb250ZXh0X21hcF9zaXplKTtcbiAgaWYgKG51bV9odHJlZXMgPD0gMSkge1xuICAgIHJldHVybiBvdXQ7XG4gIH1cblxuICB1c2VfcmxlX2Zvcl96ZXJvcyA9IGJyLnJlYWRCaXRzKDEpO1xuICBpZiAodXNlX3JsZV9mb3JfemVyb3MpIHtcbiAgICBtYXhfcnVuX2xlbmd0aF9wcmVmaXggPSBici5yZWFkQml0cyg0KSArIDE7XG4gIH1cbiAgXG4gIHRhYmxlID0gW107XG4gIGZvciAoaSA9IDA7IGkgPCBIVUZGTUFOX01BWF9UQUJMRV9TSVpFOyBpKyspIHtcbiAgICB0YWJsZVtpXSA9IG5ldyBIdWZmbWFuQ29kZSgwLCAwKTtcbiAgfVxuICBcbiAgUmVhZEh1ZmZtYW5Db2RlKG51bV9odHJlZXMgKyBtYXhfcnVuX2xlbmd0aF9wcmVmaXgsIHRhYmxlLCAwLCBicik7XG4gIFxuICBmb3IgKGkgPSAwOyBpIDwgY29udGV4dF9tYXBfc2l6ZTspIHtcbiAgICB2YXIgY29kZTtcblxuICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICBjb2RlID0gUmVhZFN5bWJvbCh0YWJsZSwgMCwgYnIpO1xuICAgIGlmIChjb2RlID09PSAwKSB7XG4gICAgICBjb250ZXh0X21hcFtpXSA9IDA7XG4gICAgICArK2k7XG4gICAgfSBlbHNlIGlmIChjb2RlIDw9IG1heF9ydW5fbGVuZ3RoX3ByZWZpeCkge1xuICAgICAgdmFyIHJlcHMgPSAxICsgKDEgPDwgY29kZSkgKyBici5yZWFkQml0cyhjb2RlKTtcbiAgICAgIHdoaWxlICgtLXJlcHMpIHtcbiAgICAgICAgaWYgKGkgPj0gY29udGV4dF9tYXBfc2l6ZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIltEZWNvZGVDb250ZXh0TWFwXSBpID49IGNvbnRleHRfbWFwX3NpemVcIik7XG4gICAgICAgIH1cbiAgICAgICAgY29udGV4dF9tYXBbaV0gPSAwO1xuICAgICAgICArK2k7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnRleHRfbWFwW2ldID0gY29kZSAtIG1heF9ydW5fbGVuZ3RoX3ByZWZpeDtcbiAgICAgICsraTtcbiAgICB9XG4gIH1cbiAgaWYgKGJyLnJlYWRCaXRzKDEpKSB7XG4gICAgSW52ZXJzZU1vdmVUb0Zyb250VHJhbnNmb3JtKGNvbnRleHRfbWFwLCBjb250ZXh0X21hcF9zaXplKTtcbiAgfVxuICBcbiAgcmV0dXJuIG91dDtcbn1cblxuZnVuY3Rpb24gRGVjb2RlQmxvY2tUeXBlKG1heF9ibG9ja190eXBlLCB0cmVlcywgdHJlZV90eXBlLCBibG9ja190eXBlcywgcmluZ2J1ZmZlcnMsIGluZGV4ZXMsIGJyKSB7XG4gIHZhciByaW5nYnVmZmVyID0gdHJlZV90eXBlICogMjtcbiAgdmFyIGluZGV4ID0gdHJlZV90eXBlO1xuICB2YXIgdHlwZV9jb2RlID0gUmVhZFN5bWJvbCh0cmVlcywgdHJlZV90eXBlICogSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICB2YXIgYmxvY2tfdHlwZTtcbiAgaWYgKHR5cGVfY29kZSA9PT0gMCkge1xuICAgIGJsb2NrX3R5cGUgPSByaW5nYnVmZmVyc1tyaW5nYnVmZmVyICsgKGluZGV4ZXNbaW5kZXhdICYgMSldO1xuICB9IGVsc2UgaWYgKHR5cGVfY29kZSA9PT0gMSkge1xuICAgIGJsb2NrX3R5cGUgPSByaW5nYnVmZmVyc1tyaW5nYnVmZmVyICsgKChpbmRleGVzW2luZGV4XSAtIDEpICYgMSldICsgMTtcbiAgfSBlbHNlIHtcbiAgICBibG9ja190eXBlID0gdHlwZV9jb2RlIC0gMjtcbiAgfVxuICBpZiAoYmxvY2tfdHlwZSA+PSBtYXhfYmxvY2tfdHlwZSkge1xuICAgIGJsb2NrX3R5cGUgLT0gbWF4X2Jsb2NrX3R5cGU7XG4gIH1cbiAgYmxvY2tfdHlwZXNbdHJlZV90eXBlXSA9IGJsb2NrX3R5cGU7XG4gIHJpbmdidWZmZXJzW3JpbmdidWZmZXIgKyAoaW5kZXhlc1tpbmRleF0gJiAxKV0gPSBibG9ja190eXBlO1xuICArK2luZGV4ZXNbaW5kZXhdO1xufVxuXG5mdW5jdGlvbiBDb3B5VW5jb21wcmVzc2VkQmxvY2tUb091dHB1dChvdXRwdXQsIGxlbiwgcG9zLCByaW5nYnVmZmVyLCByaW5nYnVmZmVyX21hc2ssIGJyKSB7XG4gIHZhciByYl9zaXplID0gcmluZ2J1ZmZlcl9tYXNrICsgMTtcbiAgdmFyIHJiX3BvcyA9IHBvcyAmIHJpbmdidWZmZXJfbWFzaztcbiAgdmFyIGJyX3BvcyA9IGJyLnBvc18gJiBCcm90bGlCaXRSZWFkZXIuSUJVRl9NQVNLO1xuICB2YXIgbmJ5dGVzO1xuXG4gIC8qIEZvciBzaG9ydCBsZW5ndGhzIGNvcHkgYnl0ZS1ieS1ieXRlICovXG4gIGlmIChsZW4gPCA4IHx8IGJyLmJpdF9wb3NfICsgKGxlbiA8PCAzKSA8IGJyLmJpdF9lbmRfcG9zXykge1xuICAgIHdoaWxlIChsZW4tLSA+IDApIHtcbiAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgIHJpbmdidWZmZXJbcmJfcG9zKytdID0gYnIucmVhZEJpdHMoOCk7XG4gICAgICBpZiAocmJfcG9zID09PSByYl9zaXplKSB7XG4gICAgICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByYl9zaXplKTtcbiAgICAgICAgcmJfcG9zID0gMDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKGJyLmJpdF9lbmRfcG9zXyA8IDMyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdbQ29weVVuY29tcHJlc3NlZEJsb2NrVG9PdXRwdXRdIGJyLmJpdF9lbmRfcG9zXyA8IDMyJyk7XG4gIH1cblxuICAvKiBDb3B5IHJlbWFpbmluZyAwLTQgYnl0ZXMgZnJvbSBici52YWxfIHRvIHJpbmdidWZmZXIuICovXG4gIHdoaWxlIChici5iaXRfcG9zXyA8IDMyKSB7XG4gICAgcmluZ2J1ZmZlcltyYl9wb3NdID0gKGJyLnZhbF8gPj4+IGJyLmJpdF9wb3NfKTtcbiAgICBici5iaXRfcG9zXyArPSA4O1xuICAgICsrcmJfcG9zO1xuICAgIC0tbGVuO1xuICB9XG5cbiAgLyogQ29weSByZW1haW5pbmcgYnl0ZXMgZnJvbSBici5idWZfIHRvIHJpbmdidWZmZXIuICovXG4gIG5ieXRlcyA9IChici5iaXRfZW5kX3Bvc18gLSBici5iaXRfcG9zXykgPj4gMztcbiAgaWYgKGJyX3BvcyArIG5ieXRlcyA+IEJyb3RsaUJpdFJlYWRlci5JQlVGX01BU0spIHtcbiAgICB2YXIgdGFpbCA9IEJyb3RsaUJpdFJlYWRlci5JQlVGX01BU0sgKyAxIC0gYnJfcG9zO1xuICAgIGZvciAodmFyIHggPSAwOyB4IDwgdGFpbDsgeCsrKVxuICAgICAgcmluZ2J1ZmZlcltyYl9wb3MgKyB4XSA9IGJyLmJ1Zl9bYnJfcG9zICsgeF07XG4gICAgXG4gICAgbmJ5dGVzIC09IHRhaWw7XG4gICAgcmJfcG9zICs9IHRhaWw7XG4gICAgbGVuIC09IHRhaWw7XG4gICAgYnJfcG9zID0gMDtcbiAgfVxuXG4gIGZvciAodmFyIHggPSAwOyB4IDwgbmJ5dGVzOyB4KyspXG4gICAgcmluZ2J1ZmZlcltyYl9wb3MgKyB4XSA9IGJyLmJ1Zl9bYnJfcG9zICsgeF07XG4gIFxuICByYl9wb3MgKz0gbmJ5dGVzO1xuICBsZW4gLT0gbmJ5dGVzO1xuXG4gIC8qIElmIHdlIHdyb3RlIHBhc3QgdGhlIGxvZ2ljYWwgZW5kIG9mIHRoZSByaW5nYnVmZmVyLCBjb3B5IHRoZSB0YWlsIG9mIHRoZVxuICAgICByaW5nYnVmZmVyIHRvIGl0cyBiZWdpbm5pbmcgYW5kIGZsdXNoIHRoZSByaW5nYnVmZmVyIHRvIHRoZSBvdXRwdXQuICovXG4gIGlmIChyYl9wb3MgPj0gcmJfc2l6ZSkge1xuICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByYl9zaXplKTtcbiAgICByYl9wb3MgLT0gcmJfc2l6ZTsgICAgXG4gICAgZm9yICh2YXIgeCA9IDA7IHggPCByYl9wb3M7IHgrKylcbiAgICAgIHJpbmdidWZmZXJbeF0gPSByaW5nYnVmZmVyW3JiX3NpemUgKyB4XTtcbiAgfVxuXG4gIC8qIElmIHdlIGhhdmUgbW9yZSB0byBjb3B5IHRoYW4gdGhlIHJlbWFpbmluZyBzaXplIG9mIHRoZSByaW5nYnVmZmVyLCB0aGVuIHdlXG4gICAgIGZpcnN0IGZpbGwgdGhlIHJpbmdidWZmZXIgZnJvbSB0aGUgaW5wdXQgYW5kIHRoZW4gZmx1c2ggdGhlIHJpbmdidWZmZXIgdG9cbiAgICAgdGhlIG91dHB1dCAqL1xuICB3aGlsZSAocmJfcG9zICsgbGVuID49IHJiX3NpemUpIHtcbiAgICBuYnl0ZXMgPSByYl9zaXplIC0gcmJfcG9zO1xuICAgIGlmIChici5pbnB1dF8ucmVhZChyaW5nYnVmZmVyLCByYl9wb3MsIG5ieXRlcykgPCBuYnl0ZXMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignW0NvcHlVbmNvbXByZXNzZWRCbG9ja1RvT3V0cHV0XSBub3QgZW5vdWdoIGJ5dGVzJyk7XG4gICAgfVxuICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByYl9zaXplKTtcbiAgICBsZW4gLT0gbmJ5dGVzO1xuICAgIHJiX3BvcyA9IDA7XG4gIH1cblxuICAvKiBDb3B5IHN0cmFpZ2h0IGZyb20gdGhlIGlucHV0IG9udG8gdGhlIHJpbmdidWZmZXIuIFRoZSByaW5nYnVmZmVyIHdpbGwgYmVcbiAgICAgZmx1c2hlZCB0byB0aGUgb3V0cHV0IGF0IGEgbGF0ZXIgdGltZS4gKi9cbiAgaWYgKGJyLmlucHV0Xy5yZWFkKHJpbmdidWZmZXIsIHJiX3BvcywgbGVuKSA8IGxlbikge1xuICAgIHRocm93IG5ldyBFcnJvcignW0NvcHlVbmNvbXByZXNzZWRCbG9ja1RvT3V0cHV0XSBub3QgZW5vdWdoIGJ5dGVzJyk7XG4gIH1cblxuICAvKiBSZXN0b3JlIHRoZSBzdGF0ZSBvZiB0aGUgYml0IHJlYWRlci4gKi9cbiAgYnIucmVzZXQoKTtcbn1cblxuLyogQWR2YW5jZXMgdGhlIGJpdCByZWFkZXIgcG9zaXRpb24gdG8gdGhlIG5leHQgYnl0ZSBib3VuZGFyeSBhbmQgdmVyaWZpZXNcbiAgIHRoYXQgYW55IHNraXBwZWQgYml0cyBhcmUgc2V0IHRvIHplcm8uICovXG5mdW5jdGlvbiBKdW1wVG9CeXRlQm91bmRhcnkoYnIpIHtcbiAgdmFyIG5ld19iaXRfcG9zID0gKGJyLmJpdF9wb3NfICsgNykgJiB+NztcbiAgdmFyIHBhZF9iaXRzID0gYnIucmVhZEJpdHMobmV3X2JpdF9wb3MgLSBici5iaXRfcG9zXyk7XG4gIHJldHVybiBwYWRfYml0cyA9PSAwO1xufVxuXG5mdW5jdGlvbiBCcm90bGlEZWNvbXByZXNzZWRTaXplKGJ1ZmZlcikge1xuICB2YXIgaW5wdXQgPSBuZXcgQnJvdGxpSW5wdXQoYnVmZmVyKTtcbiAgdmFyIGJyID0gbmV3IEJyb3RsaUJpdFJlYWRlcihpbnB1dCk7XG4gIERlY29kZVdpbmRvd0JpdHMoYnIpO1xuICB2YXIgb3V0ID0gRGVjb2RlTWV0YUJsb2NrTGVuZ3RoKGJyKTtcbiAgcmV0dXJuIG91dC5tZXRhX2Jsb2NrX2xlbmd0aDtcbn1cblxuZXhwb3J0cy5Ccm90bGlEZWNvbXByZXNzZWRTaXplID0gQnJvdGxpRGVjb21wcmVzc2VkU2l6ZTtcblxuZnVuY3Rpb24gQnJvdGxpRGVjb21wcmVzc0J1ZmZlcihidWZmZXIsIG91dHB1dF9zaXplKSB7XG4gIHZhciBpbnB1dCA9IG5ldyBCcm90bGlJbnB1dChidWZmZXIpO1xuICBcbiAgaWYgKG91dHB1dF9zaXplID09IG51bGwpIHtcbiAgICBvdXRwdXRfc2l6ZSA9IEJyb3RsaURlY29tcHJlc3NlZFNpemUoYnVmZmVyKTtcbiAgfVxuICBcbiAgdmFyIG91dHB1dF9idWZmZXIgPSBuZXcgVWludDhBcnJheShvdXRwdXRfc2l6ZSk7XG4gIHZhciBvdXRwdXQgPSBuZXcgQnJvdGxpT3V0cHV0KG91dHB1dF9idWZmZXIpO1xuICBcbiAgQnJvdGxpRGVjb21wcmVzcyhpbnB1dCwgb3V0cHV0KTtcbiAgXG4gIGlmIChvdXRwdXQucG9zIDwgb3V0cHV0LmJ1ZmZlci5sZW5ndGgpIHtcbiAgICBvdXRwdXQuYnVmZmVyID0gb3V0cHV0LmJ1ZmZlci5zdWJhcnJheSgwLCBvdXRwdXQucG9zKTtcbiAgfVxuICBcbiAgcmV0dXJuIG91dHB1dC5idWZmZXI7XG59XG5cbmV4cG9ydHMuQnJvdGxpRGVjb21wcmVzc0J1ZmZlciA9IEJyb3RsaURlY29tcHJlc3NCdWZmZXI7XG5cbmZ1bmN0aW9uIEJyb3RsaURlY29tcHJlc3MoaW5wdXQsIG91dHB1dCkge1xuICB2YXIgaTtcbiAgdmFyIHBvcyA9IDA7XG4gIHZhciBpbnB1dF9lbmQgPSAwO1xuICB2YXIgd2luZG93X2JpdHMgPSAwO1xuICB2YXIgbWF4X2JhY2t3YXJkX2Rpc3RhbmNlO1xuICB2YXIgbWF4X2Rpc3RhbmNlID0gMDtcbiAgdmFyIHJpbmdidWZmZXJfc2l6ZTtcbiAgdmFyIHJpbmdidWZmZXJfbWFzaztcbiAgdmFyIHJpbmdidWZmZXI7XG4gIHZhciByaW5nYnVmZmVyX2VuZDtcbiAgLyogVGhpcyByaW5nIGJ1ZmZlciBob2xkcyBhIGZldyBwYXN0IGNvcHkgZGlzdGFuY2VzIHRoYXQgd2lsbCBiZSB1c2VkIGJ5ICovXG4gIC8qIHNvbWUgc3BlY2lhbCBkaXN0YW5jZSBjb2Rlcy4gKi9cbiAgdmFyIGRpc3RfcmIgPSBbIDE2LCAxNSwgMTEsIDQgXTtcbiAgdmFyIGRpc3RfcmJfaWR4ID0gMDtcbiAgLyogVGhlIHByZXZpb3VzIDIgYnl0ZXMgdXNlZCBmb3IgY29udGV4dC4gKi9cbiAgdmFyIHByZXZfYnl0ZTEgPSAwO1xuICB2YXIgcHJldl9ieXRlMiA9IDA7XG4gIHZhciBoZ3JvdXAgPSBbbmV3IEh1ZmZtYW5UcmVlR3JvdXAoMCwgMCksIG5ldyBIdWZmbWFuVHJlZUdyb3VwKDAsIDApLCBuZXcgSHVmZm1hblRyZWVHcm91cCgwLCAwKV07XG4gIHZhciBibG9ja190eXBlX3RyZWVzO1xuICB2YXIgYmxvY2tfbGVuX3RyZWVzO1xuICB2YXIgYnI7XG5cbiAgLyogV2UgbmVlZCB0aGUgc2xhY2sgcmVnaW9uIGZvciB0aGUgZm9sbG93aW5nIHJlYXNvbnM6XG4gICAgICAgLSBhbHdheXMgZG9pbmcgdHdvIDgtYnl0ZSBjb3BpZXMgZm9yIGZhc3QgYmFja3dhcmQgY29weWluZ1xuICAgICAgIC0gdHJhbnNmb3Jtc1xuICAgICAgIC0gZmx1c2hpbmcgdGhlIGlucHV0IHJpbmdidWZmZXIgd2hlbiBkZWNvZGluZyB1bmNvbXByZXNzZWQgYmxvY2tzICovXG4gIHZhciBrUmluZ0J1ZmZlcldyaXRlQWhlYWRTbGFjayA9IDEyOCArIEJyb3RsaUJpdFJlYWRlci5SRUFEX1NJWkU7XG5cbiAgYnIgPSBuZXcgQnJvdGxpQml0UmVhZGVyKGlucHV0KTtcblxuICAvKiBEZWNvZGUgd2luZG93IHNpemUuICovXG4gIHdpbmRvd19iaXRzID0gRGVjb2RlV2luZG93Qml0cyhicik7XG4gIG1heF9iYWNrd2FyZF9kaXN0YW5jZSA9ICgxIDw8IHdpbmRvd19iaXRzKSAtIDE2O1xuXG4gIHJpbmdidWZmZXJfc2l6ZSA9IDEgPDwgd2luZG93X2JpdHM7XG4gIHJpbmdidWZmZXJfbWFzayA9IHJpbmdidWZmZXJfc2l6ZSAtIDE7XG4gIHJpbmdidWZmZXIgPSBuZXcgVWludDhBcnJheShyaW5nYnVmZmVyX3NpemUgKyBrUmluZ0J1ZmZlcldyaXRlQWhlYWRTbGFjayArIEJyb3RsaURpY3Rpb25hcnkubWF4RGljdGlvbmFyeVdvcmRMZW5ndGgpO1xuICByaW5nYnVmZmVyX2VuZCA9IHJpbmdidWZmZXJfc2l6ZTtcblxuICBibG9ja190eXBlX3RyZWVzID0gW107XG4gIGJsb2NrX2xlbl90cmVlcyA9IFtdO1xuICBmb3IgKHZhciB4ID0gMDsgeCA8IDMgKiBIVUZGTUFOX01BWF9UQUJMRV9TSVpFOyB4KyspIHtcbiAgICBibG9ja190eXBlX3RyZWVzW3hdID0gbmV3IEh1ZmZtYW5Db2RlKDAsIDApO1xuICAgIGJsb2NrX2xlbl90cmVlc1t4XSA9IG5ldyBIdWZmbWFuQ29kZSgwLCAwKTtcbiAgfVxuXG4gIHdoaWxlICghaW5wdXRfZW5kKSB7XG4gICAgdmFyIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiA9IDA7XG4gICAgdmFyIGlzX3VuY29tcHJlc3NlZDtcbiAgICB2YXIgYmxvY2tfbGVuZ3RoID0gWyAxIDw8IDI4LCAxIDw8IDI4LCAxIDw8IDI4IF07XG4gICAgdmFyIGJsb2NrX3R5cGUgPSBbIDAgXTtcbiAgICB2YXIgbnVtX2Jsb2NrX3R5cGVzID0gWyAxLCAxLCAxIF07XG4gICAgdmFyIGJsb2NrX3R5cGVfcmIgPSBbIDAsIDEsIDAsIDEsIDAsIDEgXTtcbiAgICB2YXIgYmxvY2tfdHlwZV9yYl9pbmRleCA9IFsgMCBdO1xuICAgIHZhciBkaXN0YW5jZV9wb3N0Zml4X2JpdHM7XG4gICAgdmFyIG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXM7XG4gICAgdmFyIGRpc3RhbmNlX3Bvc3RmaXhfbWFzaztcbiAgICB2YXIgbnVtX2Rpc3RhbmNlX2NvZGVzO1xuICAgIHZhciBjb250ZXh0X21hcCA9IG51bGw7XG4gICAgdmFyIGNvbnRleHRfbW9kZXMgPSBudWxsO1xuICAgIHZhciBudW1fbGl0ZXJhbF9odHJlZXM7XG4gICAgdmFyIGRpc3RfY29udGV4dF9tYXAgPSBudWxsO1xuICAgIHZhciBudW1fZGlzdF9odHJlZXM7XG4gICAgdmFyIGNvbnRleHRfb2Zmc2V0ID0gMDtcbiAgICB2YXIgY29udGV4dF9tYXBfc2xpY2UgPSBudWxsO1xuICAgIHZhciBsaXRlcmFsX2h0cmVlX2luZGV4ID0gMDtcbiAgICB2YXIgZGlzdF9jb250ZXh0X29mZnNldCA9IDA7XG4gICAgdmFyIGRpc3RfY29udGV4dF9tYXBfc2xpY2UgPSBudWxsO1xuICAgIHZhciBkaXN0X2h0cmVlX2luZGV4ID0gMDtcbiAgICB2YXIgY29udGV4dF9sb29rdXBfb2Zmc2V0MSA9IDA7XG4gICAgdmFyIGNvbnRleHRfbG9va3VwX29mZnNldDIgPSAwO1xuICAgIHZhciBjb250ZXh0X21vZGU7XG4gICAgdmFyIGh0cmVlX2NvbW1hbmQ7XG5cbiAgICBmb3IgKGkgPSAwOyBpIDwgMzsgKytpKSB7XG4gICAgICBoZ3JvdXBbaV0uY29kZXMgPSBudWxsO1xuICAgICAgaGdyb3VwW2ldLmh0cmVlcyA9IG51bGw7XG4gICAgfVxuXG4gICAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICAgIFxuICAgIHZhciBfb3V0ID0gRGVjb2RlTWV0YUJsb2NrTGVuZ3RoKGJyKTtcbiAgICBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gPSBfb3V0Lm1ldGFfYmxvY2tfbGVuZ3RoO1xuICAgIGlmIChwb3MgKyBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gPiBvdXRwdXQuYnVmZmVyLmxlbmd0aCkge1xuICAgICAgLyogV2UgbmVlZCB0byBncm93IHRoZSBvdXRwdXQgYnVmZmVyIHRvIGZpdCB0aGUgYWRkaXRpb25hbCBkYXRhLiAqL1xuICAgICAgdmFyIHRtcCA9IG5ldyBVaW50OEFycmF5KCBwb3MgKyBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gKTtcbiAgICAgIHRtcC5zZXQoIG91dHB1dC5idWZmZXIgKTtcbiAgICAgIG91dHB1dC5idWZmZXIgPSB0bXA7XG4gICAgfSAgICBcbiAgICBpbnB1dF9lbmQgPSBfb3V0LmlucHV0X2VuZDtcbiAgICBpc191bmNvbXByZXNzZWQgPSBfb3V0LmlzX3VuY29tcHJlc3NlZDtcbiAgICBcbiAgICBpZiAoX291dC5pc19tZXRhZGF0YSkge1xuICAgICAgSnVtcFRvQnl0ZUJvdW5kYXJ5KGJyKTtcbiAgICAgIFxuICAgICAgZm9yICg7IG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiA+IDA7IC0tbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuKSB7XG4gICAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgICAgLyogUmVhZCBvbmUgYnl0ZSBhbmQgaWdub3JlIGl0LiAqL1xuICAgICAgICBici5yZWFkQml0cyg4KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIFxuICAgIGlmIChtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4gPT09IDApIHtcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBcbiAgICBpZiAoaXNfdW5jb21wcmVzc2VkKSB7XG4gICAgICBici5iaXRfcG9zXyA9IChici5iaXRfcG9zXyArIDcpICYgfjc7XG4gICAgICBDb3B5VW5jb21wcmVzc2VkQmxvY2tUb091dHB1dChvdXRwdXQsIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiwgcG9zLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmluZ2J1ZmZlciwgcmluZ2J1ZmZlcl9tYXNrLCBicik7XG4gICAgICBwb3MgKz0gbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuO1xuICAgICAgY29udGludWU7XG4gICAgfVxuICAgIFxuICAgIGZvciAoaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICAgIG51bV9ibG9ja190eXBlc1tpXSA9IERlY29kZVZhckxlblVpbnQ4KGJyKSArIDE7XG4gICAgICBpZiAobnVtX2Jsb2NrX3R5cGVzW2ldID49IDIpIHtcbiAgICAgICAgUmVhZEh1ZmZtYW5Db2RlKG51bV9ibG9ja190eXBlc1tpXSArIDIsIGJsb2NrX3R5cGVfdHJlZXMsIGkgKiBIVUZGTUFOX01BWF9UQUJMRV9TSVpFLCBicik7XG4gICAgICAgIFJlYWRIdWZmbWFuQ29kZShrTnVtQmxvY2tMZW5ndGhDb2RlcywgYmxvY2tfbGVuX3RyZWVzLCBpICogSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICAgICAgICBibG9ja19sZW5ndGhbaV0gPSBSZWFkQmxvY2tMZW5ndGgoYmxvY2tfbGVuX3RyZWVzLCBpICogSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICAgICAgICBibG9ja190eXBlX3JiX2luZGV4W2ldID0gMTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgYnIucmVhZE1vcmVJbnB1dCgpO1xuICAgIFxuICAgIGRpc3RhbmNlX3Bvc3RmaXhfYml0cyA9IGJyLnJlYWRCaXRzKDIpO1xuICAgIG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXMgPSBOVU1fRElTVEFOQ0VfU0hPUlRfQ09ERVMgKyAoYnIucmVhZEJpdHMoNCkgPDwgZGlzdGFuY2VfcG9zdGZpeF9iaXRzKTtcbiAgICBkaXN0YW5jZV9wb3N0Zml4X21hc2sgPSAoMSA8PCBkaXN0YW5jZV9wb3N0Zml4X2JpdHMpIC0gMTtcbiAgICBudW1fZGlzdGFuY2VfY29kZXMgPSAobnVtX2RpcmVjdF9kaXN0YW5jZV9jb2RlcyArICg0OCA8PCBkaXN0YW5jZV9wb3N0Zml4X2JpdHMpKTtcbiAgICBjb250ZXh0X21vZGVzID0gbmV3IFVpbnQ4QXJyYXkobnVtX2Jsb2NrX3R5cGVzWzBdKTtcblxuICAgIGZvciAoaSA9IDA7IGkgPCBudW1fYmxvY2tfdHlwZXNbMF07ICsraSkge1xuICAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgICBjb250ZXh0X21vZGVzW2ldID0gKGJyLnJlYWRCaXRzKDIpIDw8IDEpO1xuICAgIH1cbiAgICBcbiAgICB2YXIgX28xID0gRGVjb2RlQ29udGV4dE1hcChudW1fYmxvY2tfdHlwZXNbMF0gPDwga0xpdGVyYWxDb250ZXh0Qml0cywgYnIpO1xuICAgIG51bV9saXRlcmFsX2h0cmVlcyA9IF9vMS5udW1faHRyZWVzO1xuICAgIGNvbnRleHRfbWFwID0gX28xLmNvbnRleHRfbWFwO1xuICAgIFxuICAgIHZhciBfbzIgPSBEZWNvZGVDb250ZXh0TWFwKG51bV9ibG9ja190eXBlc1syXSA8PCBrRGlzdGFuY2VDb250ZXh0Qml0cywgYnIpO1xuICAgIG51bV9kaXN0X2h0cmVlcyA9IF9vMi5udW1faHRyZWVzO1xuICAgIGRpc3RfY29udGV4dF9tYXAgPSBfbzIuY29udGV4dF9tYXA7XG4gICAgXG4gICAgaGdyb3VwWzBdID0gbmV3IEh1ZmZtYW5UcmVlR3JvdXAoa051bUxpdGVyYWxDb2RlcywgbnVtX2xpdGVyYWxfaHRyZWVzKTtcbiAgICBoZ3JvdXBbMV0gPSBuZXcgSHVmZm1hblRyZWVHcm91cChrTnVtSW5zZXJ0QW5kQ29weUNvZGVzLCBudW1fYmxvY2tfdHlwZXNbMV0pO1xuICAgIGhncm91cFsyXSA9IG5ldyBIdWZmbWFuVHJlZUdyb3VwKG51bV9kaXN0YW5jZV9jb2RlcywgbnVtX2Rpc3RfaHRyZWVzKTtcblxuICAgIGZvciAoaSA9IDA7IGkgPCAzOyArK2kpIHtcbiAgICAgIGhncm91cFtpXS5kZWNvZGUoYnIpO1xuICAgIH1cblxuICAgIGNvbnRleHRfbWFwX3NsaWNlID0gMDtcbiAgICBkaXN0X2NvbnRleHRfbWFwX3NsaWNlID0gMDtcbiAgICBjb250ZXh0X21vZGUgPSBjb250ZXh0X21vZGVzW2Jsb2NrX3R5cGVbMF1dO1xuICAgIGNvbnRleHRfbG9va3VwX29mZnNldDEgPSBDb250ZXh0Lmxvb2t1cE9mZnNldHNbY29udGV4dF9tb2RlXTtcbiAgICBjb250ZXh0X2xvb2t1cF9vZmZzZXQyID0gQ29udGV4dC5sb29rdXBPZmZzZXRzW2NvbnRleHRfbW9kZSArIDFdO1xuICAgIGh0cmVlX2NvbW1hbmQgPSBoZ3JvdXBbMV0uaHRyZWVzWzBdO1xuXG4gICAgd2hpbGUgKG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiA+IDApIHtcbiAgICAgIHZhciBjbWRfY29kZTtcbiAgICAgIHZhciByYW5nZV9pZHg7XG4gICAgICB2YXIgaW5zZXJ0X2NvZGU7XG4gICAgICB2YXIgY29weV9jb2RlO1xuICAgICAgdmFyIGluc2VydF9sZW5ndGg7XG4gICAgICB2YXIgY29weV9sZW5ndGg7XG4gICAgICB2YXIgZGlzdGFuY2VfY29kZTtcbiAgICAgIHZhciBkaXN0YW5jZTtcbiAgICAgIHZhciBjb250ZXh0O1xuICAgICAgdmFyIGo7XG4gICAgICB2YXIgY29weV9kc3Q7XG5cbiAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcbiAgICAgIFxuICAgICAgaWYgKGJsb2NrX2xlbmd0aFsxXSA9PT0gMCkge1xuICAgICAgICBEZWNvZGVCbG9ja1R5cGUobnVtX2Jsb2NrX3R5cGVzWzFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tfdHlwZV90cmVlcywgMSwgYmxvY2tfdHlwZSwgYmxvY2tfdHlwZV9yYixcbiAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrX3R5cGVfcmJfaW5kZXgsIGJyKTtcbiAgICAgICAgYmxvY2tfbGVuZ3RoWzFdID0gUmVhZEJsb2NrTGVuZ3RoKGJsb2NrX2xlbl90cmVlcywgSFVGRk1BTl9NQVhfVEFCTEVfU0laRSwgYnIpO1xuICAgICAgICBodHJlZV9jb21tYW5kID0gaGdyb3VwWzFdLmh0cmVlc1tibG9ja190eXBlWzFdXTtcbiAgICAgIH1cbiAgICAgIC0tYmxvY2tfbGVuZ3RoWzFdO1xuICAgICAgY21kX2NvZGUgPSBSZWFkU3ltYm9sKGhncm91cFsxXS5jb2RlcywgaHRyZWVfY29tbWFuZCwgYnIpO1xuICAgICAgcmFuZ2VfaWR4ID0gY21kX2NvZGUgPj4gNjtcbiAgICAgIGlmIChyYW5nZV9pZHggPj0gMikge1xuICAgICAgICByYW5nZV9pZHggLT0gMjtcbiAgICAgICAgZGlzdGFuY2VfY29kZSA9IC0xO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGlzdGFuY2VfY29kZSA9IDA7XG4gICAgICB9XG4gICAgICBpbnNlcnRfY29kZSA9IFByZWZpeC5rSW5zZXJ0UmFuZ2VMdXRbcmFuZ2VfaWR4XSArICgoY21kX2NvZGUgPj4gMykgJiA3KTtcbiAgICAgIGNvcHlfY29kZSA9IFByZWZpeC5rQ29weVJhbmdlTHV0W3JhbmdlX2lkeF0gKyAoY21kX2NvZGUgJiA3KTtcbiAgICAgIGluc2VydF9sZW5ndGggPSBQcmVmaXgua0luc2VydExlbmd0aFByZWZpeENvZGVbaW5zZXJ0X2NvZGVdLm9mZnNldCArXG4gICAgICAgICAgYnIucmVhZEJpdHMoUHJlZml4LmtJbnNlcnRMZW5ndGhQcmVmaXhDb2RlW2luc2VydF9jb2RlXS5uYml0cyk7XG4gICAgICBjb3B5X2xlbmd0aCA9IFByZWZpeC5rQ29weUxlbmd0aFByZWZpeENvZGVbY29weV9jb2RlXS5vZmZzZXQgK1xuICAgICAgICAgIGJyLnJlYWRCaXRzKFByZWZpeC5rQ29weUxlbmd0aFByZWZpeENvZGVbY29weV9jb2RlXS5uYml0cyk7XG4gICAgICBwcmV2X2J5dGUxID0gcmluZ2J1ZmZlcltwb3MtMSAmIHJpbmdidWZmZXJfbWFza107XG4gICAgICBwcmV2X2J5dGUyID0gcmluZ2J1ZmZlcltwb3MtMiAmIHJpbmdidWZmZXJfbWFza107XG4gICAgICBmb3IgKGogPSAwOyBqIDwgaW5zZXJ0X2xlbmd0aDsgKytqKSB7XG4gICAgICAgIGJyLnJlYWRNb3JlSW5wdXQoKTtcblxuICAgICAgICBpZiAoYmxvY2tfbGVuZ3RoWzBdID09PSAwKSB7XG4gICAgICAgICAgRGVjb2RlQmxvY2tUeXBlKG51bV9ibG9ja190eXBlc1swXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tfdHlwZV90cmVlcywgMCwgYmxvY2tfdHlwZSwgYmxvY2tfdHlwZV9yYixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tfdHlwZV9yYl9pbmRleCwgYnIpO1xuICAgICAgICAgIGJsb2NrX2xlbmd0aFswXSA9IFJlYWRCbG9ja0xlbmd0aChibG9ja19sZW5fdHJlZXMsIDAsIGJyKTtcbiAgICAgICAgICBjb250ZXh0X29mZnNldCA9IGJsb2NrX3R5cGVbMF0gPDwga0xpdGVyYWxDb250ZXh0Qml0cztcbiAgICAgICAgICBjb250ZXh0X21hcF9zbGljZSA9IGNvbnRleHRfb2Zmc2V0O1xuICAgICAgICAgIGNvbnRleHRfbW9kZSA9IGNvbnRleHRfbW9kZXNbYmxvY2tfdHlwZVswXV07XG4gICAgICAgICAgY29udGV4dF9sb29rdXBfb2Zmc2V0MSA9IENvbnRleHQubG9va3VwT2Zmc2V0c1tjb250ZXh0X21vZGVdO1xuICAgICAgICAgIGNvbnRleHRfbG9va3VwX29mZnNldDIgPSBDb250ZXh0Lmxvb2t1cE9mZnNldHNbY29udGV4dF9tb2RlICsgMV07XG4gICAgICAgIH1cbiAgICAgICAgY29udGV4dCA9IChDb250ZXh0Lmxvb2t1cFtjb250ZXh0X2xvb2t1cF9vZmZzZXQxICsgcHJldl9ieXRlMV0gfFxuICAgICAgICAgICAgICAgICAgIENvbnRleHQubG9va3VwW2NvbnRleHRfbG9va3VwX29mZnNldDIgKyBwcmV2X2J5dGUyXSk7XG4gICAgICAgIGxpdGVyYWxfaHRyZWVfaW5kZXggPSBjb250ZXh0X21hcFtjb250ZXh0X21hcF9zbGljZSArIGNvbnRleHRdO1xuICAgICAgICAtLWJsb2NrX2xlbmd0aFswXTtcbiAgICAgICAgcHJldl9ieXRlMiA9IHByZXZfYnl0ZTE7XG4gICAgICAgIHByZXZfYnl0ZTEgPSBSZWFkU3ltYm9sKGhncm91cFswXS5jb2RlcywgaGdyb3VwWzBdLmh0cmVlc1tsaXRlcmFsX2h0cmVlX2luZGV4XSwgYnIpO1xuICAgICAgICByaW5nYnVmZmVyW3BvcyAmIHJpbmdidWZmZXJfbWFza10gPSBwcmV2X2J5dGUxO1xuICAgICAgICBpZiAoKHBvcyAmIHJpbmdidWZmZXJfbWFzaykgPT09IHJpbmdidWZmZXJfbWFzaykge1xuICAgICAgICAgIG91dHB1dC53cml0ZShyaW5nYnVmZmVyLCByaW5nYnVmZmVyX3NpemUpO1xuICAgICAgICB9XG4gICAgICAgICsrcG9zO1xuICAgICAgfVxuICAgICAgbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuIC09IGluc2VydF9sZW5ndGg7XG4gICAgICBpZiAobWV0YV9ibG9ja19yZW1haW5pbmdfbGVuIDw9IDApIGJyZWFrO1xuXG4gICAgICBpZiAoZGlzdGFuY2VfY29kZSA8IDApIHtcbiAgICAgICAgdmFyIGNvbnRleHQ7XG4gICAgICAgIFxuICAgICAgICBici5yZWFkTW9yZUlucHV0KCk7XG4gICAgICAgIGlmIChibG9ja19sZW5ndGhbMl0gPT09IDApIHtcbiAgICAgICAgICBEZWNvZGVCbG9ja1R5cGUobnVtX2Jsb2NrX3R5cGVzWzJdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja190eXBlX3RyZWVzLCAyLCBibG9ja190eXBlLCBibG9ja190eXBlX3JiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja190eXBlX3JiX2luZGV4LCBicik7XG4gICAgICAgICAgYmxvY2tfbGVuZ3RoWzJdID0gUmVhZEJsb2NrTGVuZ3RoKGJsb2NrX2xlbl90cmVlcywgMiAqIEhVRkZNQU5fTUFYX1RBQkxFX1NJWkUsIGJyKTtcbiAgICAgICAgICBkaXN0X2NvbnRleHRfb2Zmc2V0ID0gYmxvY2tfdHlwZVsyXSA8PCBrRGlzdGFuY2VDb250ZXh0Qml0cztcbiAgICAgICAgICBkaXN0X2NvbnRleHRfbWFwX3NsaWNlID0gZGlzdF9jb250ZXh0X29mZnNldDtcbiAgICAgICAgfVxuICAgICAgICAtLWJsb2NrX2xlbmd0aFsyXTtcbiAgICAgICAgY29udGV4dCA9IChjb3B5X2xlbmd0aCA+IDQgPyAzIDogY29weV9sZW5ndGggLSAyKSAmIDB4ZmY7XG4gICAgICAgIGRpc3RfaHRyZWVfaW5kZXggPSBkaXN0X2NvbnRleHRfbWFwW2Rpc3RfY29udGV4dF9tYXBfc2xpY2UgKyBjb250ZXh0XTtcbiAgICAgICAgZGlzdGFuY2VfY29kZSA9IFJlYWRTeW1ib2woaGdyb3VwWzJdLmNvZGVzLCBoZ3JvdXBbMl0uaHRyZWVzW2Rpc3RfaHRyZWVfaW5kZXhdLCBicik7XG4gICAgICAgIGlmIChkaXN0YW5jZV9jb2RlID49IG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXMpIHtcbiAgICAgICAgICB2YXIgbmJpdHM7XG4gICAgICAgICAgdmFyIHBvc3RmaXg7XG4gICAgICAgICAgdmFyIG9mZnNldDtcbiAgICAgICAgICBkaXN0YW5jZV9jb2RlIC09IG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXM7XG4gICAgICAgICAgcG9zdGZpeCA9IGRpc3RhbmNlX2NvZGUgJiBkaXN0YW5jZV9wb3N0Zml4X21hc2s7XG4gICAgICAgICAgZGlzdGFuY2VfY29kZSA+Pj0gZGlzdGFuY2VfcG9zdGZpeF9iaXRzO1xuICAgICAgICAgIG5iaXRzID0gKGRpc3RhbmNlX2NvZGUgPj4gMSkgKyAxO1xuICAgICAgICAgIG9mZnNldCA9ICgoMiArIChkaXN0YW5jZV9jb2RlICYgMSkpIDw8IG5iaXRzKSAtIDQ7XG4gICAgICAgICAgZGlzdGFuY2VfY29kZSA9IG51bV9kaXJlY3RfZGlzdGFuY2VfY29kZXMgK1xuICAgICAgICAgICAgICAoKG9mZnNldCArIGJyLnJlYWRCaXRzKG5iaXRzKSkgPDxcbiAgICAgICAgICAgICAgIGRpc3RhbmNlX3Bvc3RmaXhfYml0cykgKyBwb3N0Zml4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qIENvbnZlcnQgdGhlIGRpc3RhbmNlIGNvZGUgdG8gdGhlIGFjdHVhbCBkaXN0YW5jZSBieSBwb3NzaWJseSBsb29raW5nICovXG4gICAgICAvKiB1cCBwYXN0IGRpc3RuYWNlcyBmcm9tIHRoZSByaW5nYnVmZmVyLiAqL1xuICAgICAgZGlzdGFuY2UgPSBUcmFuc2xhdGVTaG9ydENvZGVzKGRpc3RhbmNlX2NvZGUsIGRpc3RfcmIsIGRpc3RfcmJfaWR4KTtcbiAgICAgIGlmIChkaXN0YW5jZSA8IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdbQnJvdGxpRGVjb21wcmVzc10gaW52YWxpZCBkaXN0YW5jZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAocG9zIDwgbWF4X2JhY2t3YXJkX2Rpc3RhbmNlICYmXG4gICAgICAgICAgbWF4X2Rpc3RhbmNlICE9PSBtYXhfYmFja3dhcmRfZGlzdGFuY2UpIHtcbiAgICAgICAgbWF4X2Rpc3RhbmNlID0gcG9zO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbWF4X2Rpc3RhbmNlID0gbWF4X2JhY2t3YXJkX2Rpc3RhbmNlO1xuICAgICAgfVxuXG4gICAgICBjb3B5X2RzdCA9IHBvcyAmIHJpbmdidWZmZXJfbWFzaztcblxuICAgICAgaWYgKGRpc3RhbmNlID4gbWF4X2Rpc3RhbmNlKSB7XG4gICAgICAgIGlmIChjb3B5X2xlbmd0aCA+PSBCcm90bGlEaWN0aW9uYXJ5Lm1pbkRpY3Rpb25hcnlXb3JkTGVuZ3RoICYmXG4gICAgICAgICAgICBjb3B5X2xlbmd0aCA8PSBCcm90bGlEaWN0aW9uYXJ5Lm1heERpY3Rpb25hcnlXb3JkTGVuZ3RoKSB7XG4gICAgICAgICAgdmFyIG9mZnNldCA9IEJyb3RsaURpY3Rpb25hcnkub2Zmc2V0c0J5TGVuZ3RoW2NvcHlfbGVuZ3RoXTtcbiAgICAgICAgICB2YXIgd29yZF9pZCA9IGRpc3RhbmNlIC0gbWF4X2Rpc3RhbmNlIC0gMTtcbiAgICAgICAgICB2YXIgc2hpZnQgPSBCcm90bGlEaWN0aW9uYXJ5LnNpemVCaXRzQnlMZW5ndGhbY29weV9sZW5ndGhdO1xuICAgICAgICAgIHZhciBtYXNrID0gKDEgPDwgc2hpZnQpIC0gMTtcbiAgICAgICAgICB2YXIgd29yZF9pZHggPSB3b3JkX2lkICYgbWFzaztcbiAgICAgICAgICB2YXIgdHJhbnNmb3JtX2lkeCA9IHdvcmRfaWQgPj4gc2hpZnQ7XG4gICAgICAgICAgb2Zmc2V0ICs9IHdvcmRfaWR4ICogY29weV9sZW5ndGg7XG4gICAgICAgICAgaWYgKHRyYW5zZm9ybV9pZHggPCBUcmFuc2Zvcm0ua051bVRyYW5zZm9ybXMpIHtcbiAgICAgICAgICAgIHZhciBsZW4gPSBUcmFuc2Zvcm0udHJhbnNmb3JtRGljdGlvbmFyeVdvcmQocmluZ2J1ZmZlciwgY29weV9kc3QsIG9mZnNldCwgY29weV9sZW5ndGgsIHRyYW5zZm9ybV9pZHgpO1xuICAgICAgICAgICAgY29weV9kc3QgKz0gbGVuO1xuICAgICAgICAgICAgcG9zICs9IGxlbjtcbiAgICAgICAgICAgIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbiAtPSBsZW47XG4gICAgICAgICAgICBpZiAoY29weV9kc3QgPj0gcmluZ2J1ZmZlcl9lbmQpIHtcbiAgICAgICAgICAgICAgb3V0cHV0LndyaXRlKHJpbmdidWZmZXIsIHJpbmdidWZmZXJfc2l6ZSk7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICBmb3IgKHZhciBfeCA9IDA7IF94IDwgKGNvcHlfZHN0IC0gcmluZ2J1ZmZlcl9lbmQpOyBfeCsrKVxuICAgICAgICAgICAgICAgIHJpbmdidWZmZXJbX3hdID0gcmluZ2J1ZmZlcltyaW5nYnVmZmVyX2VuZCArIF94XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBiYWNrd2FyZCByZWZlcmVuY2UuIHBvczogXCIgKyBwb3MgKyBcIiBkaXN0YW5jZTogXCIgKyBkaXN0YW5jZSArXG4gICAgICAgICAgICAgIFwiIGxlbjogXCIgKyBjb3B5X2xlbmd0aCArIFwiIGJ5dGVzIGxlZnQ6IFwiICsgbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBiYWNrd2FyZCByZWZlcmVuY2UuIHBvczogXCIgKyBwb3MgKyBcIiBkaXN0YW5jZTogXCIgKyBkaXN0YW5jZSArXG4gICAgICAgICAgICBcIiBsZW46IFwiICsgY29weV9sZW5ndGggKyBcIiBieXRlcyBsZWZ0OiBcIiArIG1ldGFfYmxvY2tfcmVtYWluaW5nX2xlbik7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChkaXN0YW5jZV9jb2RlID4gMCkge1xuICAgICAgICAgIGRpc3RfcmJbZGlzdF9yYl9pZHggJiAzXSA9IGRpc3RhbmNlO1xuICAgICAgICAgICsrZGlzdF9yYl9pZHg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29weV9sZW5ndGggPiBtZXRhX2Jsb2NrX3JlbWFpbmluZ19sZW4pIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIGJhY2t3YXJkIHJlZmVyZW5jZS4gcG9zOiBcIiArIHBvcyArIFwiIGRpc3RhbmNlOiBcIiArIGRpc3RhbmNlICtcbiAgICAgICAgICAgIFwiIGxlbjogXCIgKyBjb3B5X2xlbmd0aCArIFwiIGJ5dGVzIGxlZnQ6IFwiICsgbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoaiA9IDA7IGogPCBjb3B5X2xlbmd0aDsgKytqKSB7XG4gICAgICAgICAgcmluZ2J1ZmZlcltwb3MgJiByaW5nYnVmZmVyX21hc2tdID0gcmluZ2J1ZmZlclsocG9zIC0gZGlzdGFuY2UpICYgcmluZ2J1ZmZlcl9tYXNrXTtcbiAgICAgICAgICBpZiAoKHBvcyAmIHJpbmdidWZmZXJfbWFzaykgPT09IHJpbmdidWZmZXJfbWFzaykge1xuICAgICAgICAgICAgb3V0cHV0LndyaXRlKHJpbmdidWZmZXIsIHJpbmdidWZmZXJfc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICsrcG9zO1xuICAgICAgICAgIC0tbWV0YV9ibG9ja19yZW1haW5pbmdfbGVuO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qIFdoZW4gd2UgZ2V0IGhlcmUsIHdlIG11c3QgaGF2ZSBpbnNlcnRlZCBhdCBsZWFzdCBvbmUgbGl0ZXJhbCBhbmQgKi9cbiAgICAgIC8qIG1hZGUgYSBjb3B5IG9mIGF0IGxlYXN0IGxlbmd0aCB0d28sIHRoZXJlZm9yZSBhY2Nlc3NpbmcgdGhlIGxhc3QgMiAqL1xuICAgICAgLyogYnl0ZXMgaXMgdmFsaWQuICovXG4gICAgICBwcmV2X2J5dGUxID0gcmluZ2J1ZmZlclsocG9zIC0gMSkgJiByaW5nYnVmZmVyX21hc2tdO1xuICAgICAgcHJldl9ieXRlMiA9IHJpbmdidWZmZXJbKHBvcyAtIDIpICYgcmluZ2J1ZmZlcl9tYXNrXTtcbiAgICB9XG5cbiAgICAvKiBQcm90ZWN0IHBvcyBmcm9tIG92ZXJmbG93LCB3cmFwIGl0IGFyb3VuZCBhdCBldmVyeSBHQiBvZiBpbnB1dCBkYXRhICovXG4gICAgcG9zICY9IDB4M2ZmZmZmZmY7XG4gIH1cblxuICBvdXRwdXQud3JpdGUocmluZ2J1ZmZlciwgcG9zICYgcmluZ2J1ZmZlcl9tYXNrKTtcbn1cblxuZXhwb3J0cy5Ccm90bGlEZWNvbXByZXNzID0gQnJvdGxpRGVjb21wcmVzcztcblxuQnJvdGxpRGljdGlvbmFyeS5pbml0KCk7XG4iLCAibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2RlYy9kZWNvZGUnKS5Ccm90bGlEZWNvbXByZXNzQnVmZmVyO1xuIiwgIi8qKlxuICogVGhpcyBjbGFzcyBoYW5kbGVzIGlucHV0IGNvbmZpZ3VyYXRpb24gYW5kIG1hbmlwdWxhdGlvbi5cbiAqIEl0IGltcG9ydHMgdmFyaW91cyBtb2R1bGVzIGFuZCBwYWNrYWdlcyBmb3IgZmlsZSBvcGVyYXRpb25zLCBjb25maWd1cmF0aW9uIHBhcnNpbmcsIGFuZCBsb2dnaW5nLlxuICogVGhlIGNsYXNzIGhhcyBtZXRob2RzIGZvciBpbml0aWFsaXppbmcgdGhlIGlucHV0IGNvbmZpZ3VyYXRpb24sIHNldHRpbmcgZGVmYXVsdCB2YWx1ZXMsIGFuZCBjb252ZXJ0aW5nIHRoZSBjb25maWd1cmF0aW9uIHRvIGEgc3RyaW5nLlxuICogSXQgYWxzbyBoYXMgcHJvcGVydGllcyBmb3Igc3RvcmluZyB0aGUgY29uZmlndXJhdGlvbiB2YWx1ZXMsIHNlY3Rpb25zLCByZWFkbWUgcGF0aCwgYWN0aW9uIGluc3RhbmNlLCBhbmQgcmVhZG1lIGVkaXRvciBpbnN0YW5jZS5cbiAqL1xuaW1wb3J0ICogYXMgZnMgZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5pbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSAnbm9kZTp1cmwnO1xuXG5pbXBvcnQgKiBhcyBjb3JlIGZyb20gJ0BhY3Rpb25zL2NvcmUnO1xuaW1wb3J0IHsgQ29udGV4dCB9IGZyb20gJ0BhY3Rpb25zL2dpdGh1Yi9saWIvY29udGV4dC5qcyc7XG5pbXBvcnQgbmNvbmYgZnJvbSAnbmNvbmYnO1xuaW1wb3J0IFlBTUwgZnJvbSAneWFtbCc7XG5cbmltcG9ydCBBY3Rpb24sIHsgSW5wdXQgfSBmcm9tICcuL0FjdGlvbi5qcyc7XG5pbXBvcnQgeyBjb25maWdGaWxlTmFtZSwgQ29uZmlnS2V5cywgUkVBRE1FX1NFQ1RJT05TLCBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgcmVwb3NpdG9yeUZpbmRlciB9IGZyb20gJy4vaGVscGVycy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IFJlYWRtZUVkaXRvciBmcm9tICcuL3JlYWRtZS1lZGl0b3IuanMnO1xuXG5jb25zdCB7IFByb3ZpZGVyIH0gPSBuY29uZjtcbnR5cGUgSU9wdGlvbnMgPSBuY29uZi5JT3B0aW9ucztcblxuLyoqXG4gKiBHZXQgdGhlIGZpbGVuYW1lIGZyb20gdGhlIGltcG9ydC5tZXRhLnVybFxuICovXG5leHBvcnQgY29uc3QgX19maWxlbmFtZSA9IGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKTtcblxuLyoqXG4gKiBHZXQgdGhlIGRpcmVjdG9yeSBuYW1lIGZyb20gdGhlIGZpbGVuYW1lXG4gKi9cbmV4cG9ydCBjb25zdCBfX2Rpcm5hbWUgPSBwYXRoLmRpcm5hbWUoX19maWxlbmFtZSk7XG5cbi8qKlxuICogQ2hhbmdlIHdvcmtpbmcgZGlyZWN0b3J5IHRvIG91dHB1dCBvZiB3b3JraW5nRGlyZWN0b3J5KClcbiAqL1xuLy8gcHJvY2Vzcy5jaGRpcih3b3JraW5nRGlyZWN0b3J5KCkpO1xuZXhwb3J0IGNvbnN0IG1ldGFBY3Rpb25QYXRoID0gJy4uLy4uL2FjdGlvbi55bWwnO1xuXG5leHBvcnQgdHlwZSBBcmd2T3B0aW9uUHJvcGVydGllcyA9IHtcbiAgW2tleTogc3RyaW5nXToge1xuICAgIGFsaWFzOiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgICBkZXNjcmliZTogc3RyaW5nO1xuICAgIHBhcnNlVmFsdWVzPzogYm9vbGVhbjtcbiAgICB0eXBlPzogc3RyaW5nO1xuICAgIGRlZmF1bHQ/OiBzdHJpbmc7XG4gIH07XG59O1xuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBjb21tYW5kIGxpbmUgYXJndW1lbnQgb3B0aW9ucyBmb3IgdGhlIGFwcGxpY2F0aW9uLlxuICovXG5jb25zdCBhcmd2T3B0aW9uczogQXJndk9wdGlvblByb3BlcnRpZXMgPSB7fTtcblxuLyoqXG4gKiBTYXZlIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGFsaWFzIC0gQWxpYXMgZm9yIHRoZSBzYXZlIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgc2F2ZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgc2F2ZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gdHlwZSAtIFR5cGUgb2YgdGhlIHNhdmUgb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLlNhdmVdID0ge1xuICBhbGlhczogJ3NhdmUnLFxuICBkZXNjcmliZTogYFNhdmUgdGhpcyBjb25maWcgdG8gJHtjb25maWdGaWxlTmFtZX1gLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbiAgdHlwZTogJ2Jvb2xlYW4nLFxufTtcblxuLyoqXG4gKiBQYXRocyBhY3Rpb24gb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHN0cmluZ1tdfSBhbGlhcyAtIEFsaWFzKGVzKSBmb3IgdGhlIHBhdGhzQWN0aW9uIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgcGF0aHNBY3Rpb24gb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBwYXRoc0FjdGlvbiBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMucGF0aHNBY3Rpb25dID0ge1xuICBhbGlhczogWydwYXRoc0FjdGlvbicsICdhY3Rpb24nXSxcbiAgdHlwZTogJ3N0cmluZycsXG4gIGRlc2NyaWJlOiAnUGF0aCB0byB0aGUgYWN0aW9uLnltbCcsXG4gIGRlZmF1bHQ6ICcuL2FjdGlvbi55bWwnLFxufTtcblxuLyoqXG4gKiBQYXRocyByZWFkbWUgb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHN0cmluZ1tdfSBhbGlhcyAtIEFsaWFzKGVzKSBmb3IgdGhlIHBhdGhzUmVhZG1lIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgcGF0aHNSZWFkbWUgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBwYXRoc1JlYWRtZSBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMucGF0aHNSZWFkbWVdID0ge1xuICBhbGlhczogWydwYXRoc1JlYWRtZScsICdyZWFkbWUnXSxcbiAgdHlwZTogJ3N0cmluZycsXG4gIGRlc2NyaWJlOiAnUGF0aCB0byB0aGUgUkVBRE1FIGZpbGUnLFxuICBkZWZhdWx0OiAnUkVBRE1FLm1kJyxcbn07XG5cbi8qKlxuICogQnJhbmRpbmcgU1ZHIHBhdGggb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gYWxpYXMgLSBBbGlhcyBmb3IgdGhlIHN2ZyBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gdHlwZSAtIFR5cGUgb2YgdGhlIHN2ZyBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIHN2ZyBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuQnJhbmRpbmdTdmdQYXRoXSA9IHtcbiAgYWxpYXM6ICdzdmcnLFxuICB0eXBlOiAnc3RyaW5nJyxcbiAgZGVzY3JpYmU6ICdTYXZlIGFuZCBsb2FkIHRoZSBicmFuZGluZyBzdmcgaW1hZ2UgaW4gdGhlIFJFQURNRSBmcm9tIHRoaXMgcGF0aCcsXG59O1xuXG4vKipcbiAqIEJyYW5kaW5nIGFzIHRpdGxlIHByZWZpeCBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBhbGlhcyAtIEFsaWFzIGZvciB0aGUgYnJhbmRpbmdfcHJlZml4IG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgYnJhbmRpbmdfcHJlZml4IG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGFyc2VWYWx1ZXMgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwYXJzZSB2YWx1ZXMgZm9yIHRoZSBicmFuZGluZ19wcmVmaXggb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBicmFuZGluZ19wcmVmaXggb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLkJyYW5kaW5nQXNUaXRsZVByZWZpeF0gPSB7XG4gIGFsaWFzOiAnYnJhbmRpbmdfcHJlZml4JyxcbiAgdHlwZTogJ2Jvb2xlYW4nLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbiAgZGVzY3JpYmU6ICdVc2UgdGhlIGJyYW5kaW5nIHN2ZyBhcyBhIHByZWZpeCBmb3IgdGhlIFJFQURNRSB0aXRsZScsXG59O1xuXG4vKipcbiAqIE93bmVyIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGFsaWFzIC0gQWxpYXMgZm9yIHRoZSBvd25lciBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gdHlwZSAtIFR5cGUgb2YgdGhlIG93bmVyIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgb3duZXIgb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLk93bmVyXSA9IHtcbiAgYWxpYXM6ICdvd25lcicsXG4gIHR5cGU6ICdzdHJpbmcnLFxuICBkZXNjcmliZTogJ1RoZSBHaXRIdWIgQWN0aW9uIHJlcG9zaXRvcnkgb3duZXIuIGkuZTogYGJpdGZsaWdodC1kZXZvcHNgJyxcbn07XG5cbi8qKlxuICogUmVwbyBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBhbGlhcyAtIEFsaWFzIGZvciB0aGUgcmVwbyBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gdHlwZSAtIFR5cGUgb2YgdGhlIHJlcG8gb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSByZXBvIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5SZXBvXSA9IHtcbiAgYWxpYXM6ICdyZXBvJyxcbiAgdHlwZTogJ3N0cmluZycsXG4gIGRlc2NyaWJlOiAnVGhlIEdpdEh1YiBBY3Rpb24gcmVwb3NpdG9yeSBuYW1lLiBpLmU6IGBnaXRodWItYWN0aW9uLXJlYWRtZS1nZW5lcmF0b3JgJyxcbn07XG5cbi8qKlxuICogUHJldHRpZXIgb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHN0cmluZ1tdfSBhbGlhcyAtIEFsaWFzKGVzKSBmb3IgdGhlIHByZXR0aWVyIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgcHJldHRpZXIgb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIHByZXR0aWVyIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgcHJldHRpZXIgb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLlByZXR0aWVyXSA9IHtcbiAgYWxpYXM6IFsncHJldHR5JywgJ3ByZXR0aWVyJ10sXG4gIHR5cGU6ICdib29sZWFuJyxcbiAgcGFyc2VWYWx1ZXM6IHRydWUsXG4gIGRlc2NyaWJlOiAnRm9ybWF0IHRoZSBtYXJrZG93biB1c2luZyBwcmV0dGllciBmb3JtYXR0ZXInLFxufTtcblxuLyoqXG4gKiBWZXJzaW9uaW5nIGVuYWJsZWQgb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHN0cmluZ1tdfSBhbGlhcyAtIEFsaWFzKGVzKSBmb3IgdGhlIHZlcnNpb25pbmdfZW5hYmxlZCBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIHZlcnNpb25pbmdfZW5hYmxlZCBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgdmVyc2lvbmluZ19lbmFibGVkIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgdmVyc2lvbmluZ19lbmFibGVkIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5WZXJzaW9uaW5nRW5hYmxlZF0gPSB7XG4gIGFsaWFzOiBbJ3ZlcnNpb25pbmcnLCAndmVyc2lvbmluZ19lbmFibGVkJ10sXG4gIGRlc2NyaWJlOlxuICAgICdFbmFibGUgdGhlIHVwZGF0ZSBvZiB0aGUgdXNhZ2UgdmVyc2lvbiB0byBtYXRjaCB0aGUgbGF0ZXN0IHZlcnNpb24gaW4gdGhlIHBhY2thZ2UuanNvbiBmaWxlJyxcbiAgcGFyc2VWYWx1ZXM6IHRydWUsXG4gIHR5cGU6ICdib29sZWFuJyxcbn07XG5cbi8qKlxuICogVmVyc2lvbmluZyBvdmVycmlkZSBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nIHwgc3RyaW5nW119IGFsaWFzIC0gQWxpYXMoZXMpIGZvciB0aGUgdmVyc2lvbmluZ19vdmVycmlkZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIHZlcnNpb25pbmdfb3ZlcnJpZGUgb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIHZlcnNpb25pbmdfb3ZlcnJpZGUgb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLlZlcnNpb25pbmdPdmVycmlkZV0gPSB7XG4gIGFsaWFzOiBbJ3NldHZlcnNpb24nLCAndmVyc2lvbmluZ19vdmVycmlkZScsICd2ZXJzaW9uX292ZXJyaWRlJ10sXG4gIGRlc2NyaWJlOiAnU2V0IGEgc3BlY2lmaWMgdmVyc2lvbiB0byBkaXNwbGF5IGluIHRoZSBSRUFETUUubWQnLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbn07XG5cbi8qKlxuICogVmVyc2lvbmluZyBwcmVmaXggb3B0aW9uIGNvbmZpZ3VyYXRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHN0cmluZ1tdfSBhbGlhcyAtIEFsaWFzKGVzKSBmb3IgdGhlIHZlcnNpb25fcHJlZml4IG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgdmVyc2lvbl9wcmVmaXggb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIHZlcnNpb25fcHJlZml4IG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5WZXJzaW9uaW5nUHJlZml4XSA9IHtcbiAgYWxpYXM6IFsndnAnLCAndmVyc2lvbl9wcmVmaXgnXSxcbiAgZGVzY3JpYmU6IFwiUHJlZml4IHRoZSB2ZXJzaW9uIHdpdGggdGhpcyB2YWx1ZSAoaWYgaXQgaXNuJ3QgYWxyZWFkeSBwcmVmaXhlZClcIixcbiAgcGFyc2VWYWx1ZXM6IHRydWUsXG59O1xuXG4vKipcbiAqIFZlcnNpb25pbmcgYnJhbmNoIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmcgfCBzdHJpbmdbXX0gYWxpYXMgLSBBbGlhcyhlcykgZm9yIHRoZSB2ZXJzaW9uaW5nX2RlZmF1bHRfYnJhbmNoIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgdmVyc2lvbmluZ19kZWZhdWx0X2JyYW5jaCBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgdmVyc2lvbmluZ19kZWZhdWx0X2JyYW5jaCBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuVmVyc2lvbmluZ0JyYW5jaF0gPSB7XG4gIGFsaWFzOiBbJ2JyYW5jaCcsICd2ZXJzaW9uaW5nX2RlZmF1bHRfYnJhbmNoJ10sXG4gIGRlc2NyaWJlOiAnSWYgdmVyc2lvbmluZyBpcyBkaXNhYmxlZCBzaG93IHRoaXMgYnJhbmNoIGluc3RlYWQnLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbn07XG5cbi8qKlxuICogSW5jbHVkZSBHaXRIdWIgdmVyc2lvbiBiYWRnZSBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nIHwgc3RyaW5nW119IGFsaWFzIC0gQWxpYXMoZXMpIGZvciB0aGUgaW5jbHVkZV9naXRodWJfdmVyc2lvbl9iYWRnZSBvcHRpb24uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gZGVzY3JpYmUgLSBEZXNjcmlwdGlvbiBmb3IgdGhlIGluY2x1ZGVfZ2l0aHViX3ZlcnNpb25fYmFkZ2Ugb3B0aW9uLlxuICogQHByb3BlcnR5IHtib29sZWFufSBwYXJzZVZhbHVlcyAtIFNwZWNpZmllcyB3aGV0aGVyIHRvIHBhcnNlIHZhbHVlcyBmb3IgdGhlIGluY2x1ZGVfZ2l0aHViX3ZlcnNpb25fYmFkZ2Ugb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHR5cGUgLSBUeXBlIG9mIHRoZSBpbmNsdWRlX2dpdGh1Yl92ZXJzaW9uX2JhZGdlIG9wdGlvbi5cbiAqL1xuYXJndk9wdGlvbnNbQ29uZmlnS2V5cy5JbmNsdWRlR2l0aHViVmVyc2lvbkJhZGdlXSA9IHtcbiAgYWxpYXM6IFsndmVyc2lvbi1iYWRnZScsICd2ZXJzaW9uaW5nX2JhZGdlJywgJ2luY2x1ZGVfZ2l0aHViX3ZlcnNpb25fYmFkZ2UnXSxcbiAgZGVzY3JpYmU6ICdEaXNwbGF5IHRoZSBjdXJyZW50IHZlcnNpb24gYXMgYSBiYWRnZScsXG4gIHBhcnNlVmFsdWVzOiB0cnVlLFxuICB0eXBlOiAnYm9vbGVhbicsXG59O1xuXG4vKipcbiAqIFRpdGxlIHByZWZpeCBvcHRpb24gY29uZmlndXJhdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nIHwgc3RyaW5nW119IGFsaWFzIC0gQWxpYXMoZXMpIGZvciB0aGUgdGl0bGVfcHJlZml4IG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBkZXNjcmliZSAtIERlc2NyaXB0aW9uIGZvciB0aGUgdGl0bGVfcHJlZml4IG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGFyc2VWYWx1ZXMgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwYXJzZSB2YWx1ZXMgZm9yIHRoZSB0aXRsZV9wcmVmaXggb3B0aW9uLlxuICovXG5hcmd2T3B0aW9uc1tDb25maWdLZXlzLlRpdGxlUHJlZml4XSA9IHtcbiAgYWxpYXM6IFsncHJlZml4JywgJ3RpdGxlX3ByZWZpeCddLFxuICBkZXNjcmliZTogJ0FkZCBhIHByZWZpeCB0byB0aGUgUkVBRE1FIHRpdGxlJyxcbiAgcGFyc2VWYWx1ZXM6IHRydWUsXG59O1xuXG4vKipcbiAqIERlYnVnIE5jb25mIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBkZWJ1Z05jb25mIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcGFyc2VWYWx1ZXMgLSBTcGVjaWZpZXMgd2hldGhlciB0byBwYXJzZSB2YWx1ZXMgZm9yIHRoZSBkZWJ1Z05jb25mIG9wdGlvbi5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0eXBlIC0gVHlwZSBvZiB0aGUgZGVidWdOY29uZiBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuRGVidWdOY29uZl0gPSB7XG4gIGFsaWFzOiBbJ2RlYnVnX25jb25mJ10sXG4gIGRlc2NyaWJlOiAnUHJpbnQgb3V0IHRoZSByZXNvbHZlZCBuY29uZiBvYmplY3Qgd2l0aCBhbGwgdmFsdWVzJyxcbiAgcGFyc2VWYWx1ZXM6IHRydWUsXG4gIHR5cGU6ICdib29sZWFuJyxcbn07XG5cbi8qKlxuICogRGVidWcgQ29uZmlnIG9wdGlvbiBjb25maWd1cmF0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRlc2NyaWJlIC0gRGVzY3JpcHRpb24gZm9yIHRoZSBkZWJ1Z0NvbmZpZyBvcHRpb24uXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IHBhcnNlVmFsdWVzIC0gU3BlY2lmaWVzIHdoZXRoZXIgdG8gcGFyc2UgdmFsdWVzIGZvciB0aGUgZGVidWdDb25maWcgb3B0aW9uLlxuICogQHByb3BlcnR5IHtzdHJpbmd9IHR5cGUgLSBUeXBlIG9mIHRoZSBkZWJ1Z0NvbmZpZyBvcHRpb24uXG4gKi9cbmFyZ3ZPcHRpb25zW0NvbmZpZ0tleXMuRGVidWdDb25maWddID0ge1xuICBhbGlhczogWydkZWJ1Z19jb25maWcnXSxcbiAgZGVzY3JpYmU6ICdQcmludCBvdXQgdGhlIHJlc29sdmVkIG5jb25mIG9iamVjdCB3aXRoIGFsbCB2YWx1ZXMnLFxuICBwYXJzZVZhbHVlczogdHJ1ZSxcbiAgdHlwZTogJ2Jvb2xlYW4nLFxufTtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGlucHV0cyBmcm9tIHRoZSBnaXRodWIgYWN0aW9uIGRvbid0XG4gKiBhbGwgbWF0Y2ggdGhlIGlucHV0IG5hbWVzIHdoZW4gcnVubmluZyBvbiBjbGkuXG4gKiBUaGlzIG1hcHMgdGhlIGFjdGlvbiBpbnB1dHMgdG8gdGhlIGNsaS5cbiAqL1xuY29uc3QgQ29uZmlnS2V5c0lucHV0c01hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgc2F2ZTogQ29uZmlnS2V5cy5TYXZlLFxuICBhY3Rpb246IENvbmZpZ0tleXMucGF0aHNBY3Rpb24sXG4gIHJlYWRtZTogQ29uZmlnS2V5cy5wYXRoc1JlYWRtZSxcbiAgYnJhbmRpbmdfc3ZnX3BhdGg6IENvbmZpZ0tleXMuQnJhbmRpbmdTdmdQYXRoLFxuICBicmFuZGluZ19hc190aXRsZV9wcmVmaXg6IENvbmZpZ0tleXMuQnJhbmRpbmdBc1RpdGxlUHJlZml4LFxuICB2ZXJzaW9uaW5nX2VuYWJsZWQ6IENvbmZpZ0tleXMuVmVyc2lvbmluZ0VuYWJsZWQsXG4gIHZlcnNpb25fcHJlZml4OiBDb25maWdLZXlzLlZlcnNpb25pbmdQcmVmaXgsXG4gIHZlcnNpb25pbmdfZGVmYXVsdF9icmFuY2g6IENvbmZpZ0tleXMuVmVyc2lvbmluZ0JyYW5jaCxcbiAgdmVyc2lvbl9vdmVycmlkZTogQ29uZmlnS2V5cy5WZXJzaW9uaW5nT3ZlcnJpZGUsXG4gIGluY2x1ZGVfZ2l0aHViX3ZlcnNpb25fYmFkZ2U6IENvbmZpZ0tleXMuSW5jbHVkZUdpdGh1YlZlcnNpb25CYWRnZSxcbiAgb3duZXI6IENvbmZpZ0tleXMuT3duZXIsXG4gIHJlcG86IENvbmZpZ0tleXMuUmVwbyxcbiAgdGl0bGVfcHJlZml4OiBDb25maWdLZXlzLlRpdGxlUHJlZml4LFxuICBwcmV0dHk6IENvbmZpZ0tleXMuUHJldHRpZXIsXG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3Iga2V5L3ZhbHVlIHBhaXIgb2JqZWN0XG4gKi9cbnR5cGUgS1ZQYWlyVHlwZSA9IHtcbiAga2V5OiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59O1xuXG4vKipcbiAqIFR5cGUgYWxpYXMgZm9yIFByb3ZpZGVyIGluc3RhbmNlXG4gKi9cbnR5cGUgUHJvdmlkZXJJbnN0YW5jZSA9IEluc3RhbmNlVHlwZTx0eXBlb2YgUHJvdmlkZXI+O1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtR2l0SHViSW5wdXRzVG9Bcmd2KFxuICBsb2c6IExvZ1Rhc2ssXG4gIGNvbmZpZzogUHJvdmlkZXJJbnN0YW5jZSxcbiAgb2JqOiBLVlBhaXJUeXBlLFxuKTogdW5kZWZpbmVkIHwgS1ZQYWlyVHlwZSB7XG4gIC8qKiBUaGUgb2JqLmtleSBpcyBhbHdheXMgaW4gbG93ZXJjYXNlLCBidXQgaXQgY2hlY2tzIGZvciBpdCB3aXRob3V0IGNhc2Ugc2Vuc2l0aXZpdHkgKi9cbiAgaWYgKC9eKElOUFVUfGlucHV0KV9bQS1aX2Etel1cXHcqJC8udGVzdChvYmoua2V5KSkge1xuICAgIGxvZy5kZWJ1ZyhgUGFyc2luZyBpbnB1dDogJHtvYmoua2V5fSB3aXRoIGl0aCB2YWx1ZTogJHtvYmoudmFsdWV9YCk7XG4gICAgY29uc3Qga2V5UGFyc2VkID0gb2JqLmtleS5yZXBsYWNlKC9eKElOUFVUfGlucHV0KV8vLCAnJykudG9Mb2NhbGVMb3dlckNhc2UoKTtcbiAgICBjb25zdCBrZXkgPSBDb25maWdLZXlzSW5wdXRzTWFwW2tleVBhcnNlZF0gfHwga2V5UGFyc2VkO1xuXG4gICAgbG9nLmRlYnVnKGBOZXcgaW5wdXQgaXMgJHtrZXl9IHdpdGggdGhlIHZhbHVlICR7b2JqLnZhbHVlfWApO1xuICAgIHJldHVybiB7IGtleSwgdmFsdWU6IG9iai52YWx1ZSB9O1xuICB9XG4gIGxvZy5kZWJ1ZyhgSWdub3JpbmcgaW5wdXQ6ICR7b2JqLmtleX0gd2l0aCBpdGggdmFsdWU6ICR7b2JqLnZhbHVlfWApO1xuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFNldHMgY29uZmlnIHZhbHVlIGZyb20gYWN0aW9uIGZpbGUgZGVmYXVsdFxuICpcbiAqIEBwYXJhbSB7QWN0aW9ufSBhY3Rpb25JbnN0YW5jZSAtIFRoZSBhY3Rpb24gaW5zdGFuY2VcbiAqIEBwYXJhbSB7c3RyaW5nfSBpbnB1dE5hbWUgLSBUaGUgaW5wdXQgbmFtZVxuICogQHJldHVybnMge3N0cmluZyB8IGJvb2xlYW4gfCB1bmRlZmluZWR9IFRoZSBkZWZhdWx0IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXRDb25maWdWYWx1ZUZyb21BY3Rpb25GaWxlRGVmYXVsdChcbiAgbG9nOiBMb2dUYXNrLFxuICBhY3Rpb25JbnN0YW5jZTogQWN0aW9uLFxuICBpbnB1dE5hbWU6IHN0cmluZyxcbik6IHN0cmluZyB8IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICBpZiAoQ29uZmlnS2V5c0lucHV0c01hcFtpbnB1dE5hbWVdID09PSB1bmRlZmluZWQpIHtcbiAgICBsb2cuZXJyb3IoXG4gICAgICBgJHtpbnB1dE5hbWV9IGZyb20gJHtcbiAgICAgICAgYWN0aW9uSW5zdGFuY2UucGF0aFxuICAgICAgfSBkb2VzIG5vdCBtYXRjaCBhIGtub3duIGlucHV0LiBLbm93biBpbnB1dHMgYXJlOiAke09iamVjdC5rZXlzKENvbmZpZ0tleXNJbnB1dHNNYXApfWAsXG4gICAgKTtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBjb25maWdOYW1lID0gQ29uZmlnS2V5c0lucHV0c01hcFtpbnB1dE5hbWVdO1xuICBjb25zdCBkZWZhdWx0VmFsdWUgPSBhY3Rpb25JbnN0YW5jZS5pbnB1dERlZmF1bHQoaW5wdXROYW1lKTtcblxuICBsb2cuZGVidWcoYERlZmF1bHQgVmFsdWUgZm9yIGFjdGlvbi55bWw6ICR7aW5wdXROYW1lfSBDTEk6ICR7Y29uZmlnTmFtZX0gPSAke2RlZmF1bHRWYWx1ZX1gKTtcblxuICByZXR1cm4gZGVmYXVsdFZhbHVlO1xufVxuXG4vKipcbiAqIENvbGxlY3RzIGFsbCBkZWZhdWx0IHZhbHVlcyBmcm9tIGFjdGlvbiBmaWxlXG4gKlxuICogQHJldHVybnMge0lPcHRpb25zfSBUaGUgZGVmYXVsdCB2YWx1ZXMgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0QWxsRGVmYXVsdFZhbHVlc0Zyb21BY3Rpb24oXG4gIGxvZzogTG9nVGFzayxcbiAgcHJvdmlkZWRNZXRhQWN0aW9uUGF0aD86IHN0cmluZyxcbiAgcHJvdmlkZWREZWZhdWx0czoge1xuICAgIFtrZXk6IHN0cmluZ106IElucHV0O1xuICB9ID0ge30sXG4pOiBJT3B0aW9ucyB7XG4gIGxvZy5kZWJ1ZygnQ29sbGVjdGluZyBkZWZhdWx0IHZhbHVlcyBmcm9tIGFjdGlvbi55bWwnKTtcbiAgLy8gVGhpcyBsb2FkcyB0aGUgZGVmYXVsdHMgZnJvbSBUSElTIGFjdGlvbidzIG93biBhY3Rpb24ueW1sIGZpbGUgKGdpdGh1Yi1hY3Rpb24tcmVhZG1lLWdlbmVyYXRvcidzIGFjdGlvbi55bWwpXG4gIC8vIE5PVCB0aGUgdXNlcidzIGFjdGlvbi55bWwgZmlsZSAod2hpY2ggaXMgbG9hZGVkIHNlcGFyYXRlbHkgdmlhIHRoZSAnYWN0aW9uJyBpbnB1dCBwYXJhbWV0ZXIpXG4gIC8vIFRoZXJlZm9yZSwgd2UgdXNlIF9fZGlybmFtZSB0byBmaW5kIHRoaXMgcGFja2FnZSdzIGFjdGlvbi55bWwgcmVnYXJkbGVzcyBvZiB3aGVyZSBpdCdzIGluc3RhbGxlZFxuICBjb25zdCB0aGlzQWN0aW9uUGF0aCA9IHBhdGguam9pbihfX2Rpcm5hbWUsIHByb3ZpZGVkTWV0YUFjdGlvblBhdGggPz8gbWV0YUFjdGlvblBhdGgpO1xuICB0cnkge1xuICAgIGNvbnN0IGRlZmF1bHRWYWx1ZXMgPSB7fSBhcyBJT3B0aW9ucztcbiAgICBjb25zdCB0aGlzQWN0aW9uID0gbmV3IEFjdGlvbih0aGlzQWN0aW9uUGF0aCk7XG4gICAgY29uc3QgZGVmYXVsdHM6IHtcbiAgICAgIFtrZXk6IHN0cmluZ106IElucHV0O1xuICAgIH0gPSB7IC4uLnRoaXNBY3Rpb24uaW5wdXRzLCAuLi5wcm92aWRlZERlZmF1bHRzIH07XG4gICAgLy8gQ29sbGVjdCBhbGwgb2YgdGhlIGRlZmF1bHQgdmFsdWVzIGZyb20gdGhlIGFjdGlvbi55bWwgZmlsZVxuICAgIGlmIChkZWZhdWx0cykge1xuICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoZGVmYXVsdHMpKSB7XG4gICAgICAgIGNvbnN0IG1hcHBlZEtleSA9IENvbmZpZ0tleXNJbnB1dHNNYXBba2V5XSA/PyBrZXk7XG4gICAgICAgIGRlZmF1bHRWYWx1ZXNbbWFwcGVkS2V5XSA9IHNldENvbmZpZ1ZhbHVlRnJvbUFjdGlvbkZpbGVEZWZhdWx0KGxvZywgdGhpc0FjdGlvbiwga2V5KTtcbiAgICAgIH1cbiAgICB9XG4gICAgbG9nLmRlYnVnKEpTT04uc3RyaW5naWZ5KGRlZmF1bHRWYWx1ZXMsIG51bGwsIDIpKTtcbiAgICByZXR1cm4gZGVmYXVsdFZhbHVlcztcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAvLyBXaGVuIHJ1bm5pbmcgYXMgYSBDTEkgdG9vbCAoZS5nLiwgdmlhIG5weCBvciB5YXJuIGRseCksIHRoZSB0b29sJ3Mgb3duIGFjdGlvbi55bWxcbiAgICAvLyBtYXkgbm90IGJlIHByZXNlbnQgaW4gdGhlIG5vZGVfbW9kdWxlcy4gVGhpcyBpcyBleHBlY3RlZCBiZWhhdmlvciwgYXMgdGhlIHRvb2xcbiAgICAvLyBzaG91bGQgc3RpbGwgd29yayB0byBnZW5lcmF0ZSBkb2N1bWVudGF0aW9uIGZvciBvdGhlciBhY3Rpb25zLlxuICAgIGxvZy5kZWJ1ZyhgQ291bGQgbm90IGxvYWQgZGVmYXVsdHMgZnJvbSB0aGlzIHRvb2wncyBhY3Rpb24ueW1sIGF0ICR7dGhpc0FjdGlvblBhdGh9OiAke2Vycm9yfWApO1xuICAgIGxvZy5kZWJ1ZygnQ29udGludWluZyB3aXRob3V0IGRlZmF1bHQgdmFsdWVzIGZyb20gYWN0aW9uLnltbCcpO1xuICAgIHJldHVybiB7fSBhcyBJT3B0aW9ucztcbiAgfVxufVxuXG4vKipcbiAqIExvYWRzIHRoZSBjb25maWd1cmF0aW9uXG4gKlxuICogQHJldHVybnMge1Byb3ZpZGVySW5zdGFuY2V9IFRoZSBjb25maWd1cmF0aW9uIGluc3RhbmNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsb2FkQ29uZmlnKFxuICBsb2c6IExvZ1Rhc2ssXG4gIHByb3ZpZGVkQ29uZmlnPzogUHJvdmlkZXJJbnN0YW5jZSxcbiAgY29uZmlnRmlsZVBhdGg/OiBzdHJpbmcsXG4pOiBQcm92aWRlckluc3RhbmNlIHtcbiAgbG9nLmRlYnVnKCdMb2FkaW5nIGNvbmZpZyBmcm9tIGVudiBhbmQgYXJndicpO1xuICBjb25zdCBjb25maWcgPSBwcm92aWRlZENvbmZpZyA/PyBuZXcgUHJvdmlkZXIoKTtcbiAgaWYgKHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT04gPT09ICd0cnVlJykge1xuICAgIGxvZy5pbmZvKCdSdW5uaW5nIGluIEdpdEh1YiBhY3Rpb24nKTtcbiAgfVxuICBpZiAoY29uZmlnRmlsZVBhdGgpIHtcbiAgICBpZiAoZnMuZXhpc3RzU3luYyhjb25maWdGaWxlUGF0aCkpIHtcbiAgICAgIGxvZy5pbmZvKGBDb25maWcgZmlsZSBmb3VuZDogJHtjb25maWdGaWxlUGF0aH1gKTtcbiAgICAgIGNvbmZpZy5maWxlKGNvbmZpZ0ZpbGVQYXRoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9nLmRlYnVnKGBDb25maWcgZmlsZSBub3QgZm91bmQ6ICR7Y29uZmlnRmlsZVBhdGh9YCk7XG4gICAgfVxuICB9XG5cbiAgY29uZmlnXG4gICAgLmVudih7XG4gICAgICBsb3dlckNhc2U6IHRydWUsXG4gICAgICBwYXJzZVZhbHVlczogdHJ1ZSxcbiAgICAgIHRyYW5zZm9ybTogKG9iajogS1ZQYWlyVHlwZSk6IHVuZGVmaW5lZCB8IEtWUGFpclR5cGUgPT4ge1xuICAgICAgICByZXR1cm4gdHJhbnNmb3JtR2l0SHViSW5wdXRzVG9Bcmd2KGxvZywgY29uZmlnLCBvYmopO1xuICAgICAgfSxcbiAgICB9KVxuICAgIC5hcmd2KGFyZ3ZPcHRpb25zKTtcblxuICByZXR1cm4gY29uZmlnO1xufVxuXG4vKipcbiAqIExvYWRzIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb25cbiAqXG4gKiBAcGFyYW0ge1Byb3ZpZGVySW5zdGFuY2V9IGNvbmZpZyAtIFRoZSBjb25maWcgaW5zdGFuY2VcbiAqIEByZXR1cm5zIHtQcm92aWRlckluc3RhbmNlfSBUaGUgdXBkYXRlZCBjb25maWcgaW5zdGFuY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxvYWREZWZhdWx0Q29uZmlnKFxuICBsb2c6IExvZ1Rhc2ssXG4gIGNvbmZpZzogUHJvdmlkZXJJbnN0YW5jZSxcbiAgcHJvdmlkZWRDb250ZXh0PzogQ29udGV4dCxcbik6IFByb3ZpZGVySW5zdGFuY2Uge1xuICBsb2cuZGVidWcoJ0xvYWRpbmcgZGVmYXVsdCBjb25maWcnKTtcbiAgY29uc3QgZGVmYXVsdFZhbHVlcyA9IGNvbGxlY3RBbGxEZWZhdWx0VmFsdWVzRnJvbUFjdGlvbihsb2cpO1xuICBjb25zdCBjb250ZXh0ID0gcHJvdmlkZWRDb250ZXh0ID8/IG5ldyBDb250ZXh0KCk7XG5cbiAgLy8gR2V0IG93bmVyL3JlcG8gZnJvbSBjb25maWcgKHdoaWNoIGluY2x1ZGVzIENMSSBhcmdzKSwgZmFsbGluZyBiYWNrIHRvIGVudiB2YXJzIGZvciBHaXRIdWIgQWN0aW9uc1xuICBjb25zdCBvd25lckZyb21Db25maWcgPSBjb25maWcuZ2V0KCdvd25lcicpIGFzIHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY29uc3QgcmVwb0Zyb21Db25maWcgPSBjb25maWcuZ2V0KCdyZXBvJykgYXMgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBjb25zdCBvd25lcklucHV0ID0gb3duZXJGcm9tQ29uZmlnID8/IHByb2Nlc3MuZW52LklOUFVUX09XTkVSID8/ICcnO1xuICBjb25zdCByZXBvSW5wdXQgPSByZXBvRnJvbUNvbmZpZyA/PyBwcm9jZXNzLmVudi5JTlBVVF9SRVBPID8/ICcnO1xuXG4gIGNvbnN0IHJlcG9zaXRvcnlEZXRhaWwgPSByZXBvc2l0b3J5RmluZGVyKGAke293bmVySW5wdXR9LyR7cmVwb0lucHV0fWAsIGNvbnRleHQpO1xuICBsb2cuZGVidWcoYHJlcG9zaXRvcnlEZXRhaWw6ICR7cmVwb3NpdG9yeURldGFpbH1gKTtcbiAgLy8gQXBwbHkgdGhlIGRlZmF1bHQgdmFsdWVzIGZyb20gdGhlIGFjdGlvbi55bWwgZmlsZVxuICByZXR1cm4gY29uZmlnLmRlZmF1bHRzKHtcbiAgICAuLi5kZWZhdWx0VmFsdWVzLFxuICAgIG93bmVyOiByZXBvc2l0b3J5RGV0YWlsPy5vd25lcixcbiAgICByZXBvOiByZXBvc2l0b3J5RGV0YWlsPy5yZXBvLFxuICAgIHNlY3Rpb25zOiBbLi4uUkVBRE1FX1NFQ1RJT05TXSBhcyBSZWFkbWVTZWN0aW9uW10sXG4gIH0pO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHJlcXVpcmVkIGlucHV0cyBmb3IgdGhlIGFjdGlvbi5cbiAqL1xuY29uc3QgUmVxdWlyZWRJbnB1dHMgPSBbXG4gIENvbmZpZ0tleXMucGF0aHNBY3Rpb24sXG4gIENvbmZpZ0tleXMucGF0aHNSZWFkbWUsXG4gIENvbmZpZ0tleXMuT3duZXIsXG4gIENvbmZpZ0tleXMuUmVwbyxcbl0gYXMgY29uc3Q7XG5cbi8qKlxuICogTG9hZHMgdGhlIHJlcXVpcmVkIGNvbmZpZ3VyYXRpb25cbiAqXG4gKiBAcGFyYW0ge1Byb3ZpZGVySW5zdGFuY2V9IGNvbmZpZyAtIFRoZSBjb25maWcgaW5zdGFuY2VcbiAqIEByZXR1cm5zIHtQcm92aWRlckluc3RhbmNlfSBUaGUgdXBkYXRlZCBjb25maWcgaW5zdGFuY2VcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxvYWRSZXF1aXJlZENvbmZpZyhcbiAgbG9nOiBMb2dUYXNrLFxuICBjb25maWc6IFByb3ZpZGVySW5zdGFuY2UsXG4gIHJlcXVpcmVkSW5wdXRzOiByZWFkb25seSBzdHJpbmdbXSA9IFJlcXVpcmVkSW5wdXRzLFxuKTogUHJvdmlkZXJJbnN0YW5jZSB7XG4gIGxvZy5kZWJ1ZygnTG9hZGluZyByZXF1aXJlZCBjb25maWcnKTtcblxuICByZXR1cm4gY29uZmlnLnJlcXVpcmVkKFsuLi5yZXF1aXJlZElucHV0c10pO1xufVxuXG4vKipcbiAqXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsb2FkQWN0aW9uKGxvZzogTG9nVGFzaywgYWN0aW9uUGF0aDogc3RyaW5nKTogQWN0aW9uIHtcbiAgbG9nLmRlYnVnKGBMb2FkaW5nIGFjdGlvbiBmcm9tOiAke2FjdGlvblBhdGh9YCk7XG4gIGlmIChhY3Rpb25QYXRoKSB7XG4gICAgcmV0dXJuIG5ldyBBY3Rpb24ocGF0aC5yZXNvbHZlKGFjdGlvblBhdGgpKTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYEFjdGlvbiBwYXRoIG5vdCBmb3VuZDogJHthY3Rpb25QYXRofWApO1xufVxuXG5leHBvcnQgdHlwZSBJbnB1dENvbnRleHQgPSB7XG4gIC8qKlxuICAgKiBUaGUgY29uZmlndXJhdGlvbiBpbnN0YW5jZVxuICAgKi9cbiAgY29uZmlnPzogUHJvdmlkZXJJbnN0YW5jZTtcblxuICAvKipcbiAgICogVGhlIHJlYWRtZSBzZWN0aW9uc1xuICAgKi9cbiAgc2VjdGlvbnM/OiBSZWFkbWVTZWN0aW9uW107XG5cbiAgLyoqXG4gICAqIFRoZSByZWFkbWUgZmlsZSBwYXRoXG4gICAqL1xuICByZWFkbWVQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY29uZmlnIGZpbGUgcGF0aFxuICAgKi9cbiAgY29uZmlnUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGFjdGlvbiBpbnN0YW5jZVxuICAgKi9cbiAgYWN0aW9uPzogQWN0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVhZG1lIGVkaXRvciBpbnN0YW5jZVxuICAgKi9cbiAgcmVhZG1lRWRpdG9yPzogUmVhZG1lRWRpdG9yO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVwb3NpdG9yeSBvd25lclxuICAgKi9cbiAgb3duZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSByZXBvc2l0b3J5IG5hbWVcbiAgICovXG4gIHJlcG8/OiBzdHJpbmc7XG59O1xuLyoqXG4gKiBNYWluIElucHV0cyBjbGFzcyB0aGF0IGhhbmRsZXMgY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJbnB1dHMge1xuICAvKipcbiAgICogVGhlIGNvbmZpZ3VyYXRpb24gaW5zdGFuY2VcbiAgICovXG4gIGNvbmZpZzogUHJvdmlkZXJJbnN0YW5jZTtcblxuICAvKipcbiAgICogVGhlIHJlYWRtZSBzZWN0aW9uc1xuICAgKi9cbiAgc2VjdGlvbnM6IFJlYWRtZVNlY3Rpb25bXTtcblxuICAvKipcbiAgICogVGhlIHJlYWRtZSBmaWxlIHBhdGhcbiAgICovXG4gIHJlYWRtZVBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGNvbmZpZyBmaWxlIHBhdGhcbiAgICovXG4gIGNvbmZpZ1BhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGFjdGlvbiBpbnN0YW5jZVxuICAgKi9cbiAgYWN0aW9uOiBBY3Rpb247XG5cbiAgLyoqXG4gICAqIFRoZSByZWFkbWUgZWRpdG9yIGluc3RhbmNlXG4gICAqL1xuICByZWFkbWVFZGl0b3I6IFJlYWRtZUVkaXRvcjtcblxuICAvKipcbiAgICogVGhlIHJlcG9zaXRvcnkgb3duZXJcbiAgICovXG4gIG93bmVyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSByZXBvc2l0b3J5IG5hbWVcbiAgICovXG4gIHJlcG86IHN0cmluZztcblxuICAvKiogVGhlIGxvZ2dlciBmb3IgdGhpcyBpbnN0YW5jZSAqL1xuICBsb2c6IExvZ1Rhc2s7XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBJbnB1dHMgY2xhc3MuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm92aWRlZElucHV0Q29udGV4dDogSW5wdXRDb250ZXh0ID0ge30sIGxvZzogTG9nVGFzayA9IG5ldyBMb2dUYXNrKCdpbnB1dHMnKSkge1xuICAgIHRoaXMubG9nID0gbG9nID8/IG5ldyBMb2dUYXNrKCdpbnB1dHMnKTtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnSW5pdGlhbGl6aW5nIElucHV0cycpO1xuICAgIGNvbnN0IGlucHV0Q29udGV4dCA9IHByb3ZpZGVkSW5wdXRDb250ZXh0ID8/IHt9O1xuICAgIHRoaXMuY29uZmlnUGF0aCA9IGlucHV0Q29udGV4dC5jb25maWdQYXRoID8/IHBhdGgucmVzb2x2ZShjb25maWdGaWxlTmFtZSk7XG4gICAgdGhpcy5jb25maWcgPSBpbnB1dENvbnRleHQuY29uZmlnID8/IG5ldyBQcm92aWRlcigpO1xuICAgIGxvYWRDb25maWcobG9nLCB0aGlzLmNvbmZpZywgdGhpcy5jb25maWdQYXRoKTtcbiAgICBsb2FkRGVmYXVsdENvbmZpZyhsb2csIHRoaXMuY29uZmlnKTtcbiAgICBsb2FkUmVxdWlyZWRDb25maWcobG9nLCB0aGlzLmNvbmZpZyk7XG5cbiAgICB0aGlzLmFjdGlvbiA9IGlucHV0Q29udGV4dC5hY3Rpb24gPz8gbG9hZEFjdGlvbihsb2csIHRoaXMuY29uZmlnLmdldChDb25maWdLZXlzLnBhdGhzQWN0aW9uKSk7XG4gICAgdGhpcy5jb25maWcuc2V0KFxuICAgICAgJ3NlY3Rpb25zJyxcbiAgICAgIGlucHV0Q29udGV4dC5zZWN0aW9ucyA/PyAodGhpcy5jb25maWcuZ2V0KCdzZWN0aW9ucycpIGFzIFJlYWRtZVNlY3Rpb25bXSksXG4gICAgKTtcbiAgICB0aGlzLnNlY3Rpb25zID0gdGhpcy5jb25maWcuZ2V0KCdzZWN0aW9ucycpIGFzIFJlYWRtZVNlY3Rpb25bXTtcbiAgICB0aGlzLnJlYWRtZVBhdGggPVxuICAgICAgaW5wdXRDb250ZXh0LnJlYWRtZVBhdGggPz8gcGF0aC5yZXNvbHZlKHRoaXMuY29uZmlnLmdldChDb25maWdLZXlzLnBhdGhzUmVhZG1lKSBhcyBzdHJpbmcpO1xuICAgIHRoaXMucmVhZG1lRWRpdG9yID0gaW5wdXRDb250ZXh0LnJlYWRtZUVkaXRvciA/PyBuZXcgUmVhZG1lRWRpdG9yKHRoaXMucmVhZG1lUGF0aCk7XG4gICAgLyoqXG4gICAgICogT3V0cHV0IHRoZSByZWFkbWUgcGF0aCB0aGF0IGlzIGJlaW5nIHBhcnNlZFxuICAgICAqL1xuICAgIGlmIChwcm9jZXNzLmVudi5HSVRIVUJfQUNUSU9OUykge1xuICAgICAgY29yZS5zZXRPdXRwdXQoJ3JlYWRtZScsIHRoaXMucmVhZG1lUGF0aCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIG93bmVyIGlzIHJlcXVpcmVkLCBhbmQgaWYgaXQgZG9lc24ndCBleGlzdCBpdCBpcyBoYW5kbGVkIGJ5IG5jb25mIHdoaWNoIHRocm93cyBhbiBlcnJvclxuICAgICAqL1xuICAgIHRoaXMub3duZXIgPSBpbnB1dENvbnRleHQub3duZXIgPz8gdGhpcy5jb25maWcuZ2V0KCdvd25lcicpO1xuXG4gICAgLyoqXG4gICAgICogcmVwbyBpcyByZXF1aXJlZCwgYW5kIGlmIGl0IGRvZXNuJ3QgZXhpc3QgaXQgaXMgaGFuZGxlZCBieSBuY29uZiB3aGljaCB0aHJvd3MgYW4gZXJyb3JcbiAgICAgKi9cbiAgICB0aGlzLnJlcG8gPSBpbnB1dENvbnRleHQucmVwbyA/PyB0aGlzLmNvbmZpZy5nZXQoJ3JlcG8nKTtcbiAgfVxuXG4gIHN0cmluZ2lmeSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzPy5jb25maWcpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBZQU1MLnN0cmluZ2lmeSh0aGlzLmNvbmZpZy5nZXQoKSk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aGlzLmxvZy5lcnJvcihgJHtlcnJvcn1gKTtcbiAgICAgICAgLy8gY29udGludWVcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gdGhpcyBpcyBqdXN0IGZvciBkZWJ1Zywgbm8gbmVlZCB0byBzdG9wIHRoZSBwcm9jZXNzIGlmIGl0IGZhaWxzXG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCAiLyoqXG4gKiBUaGlzIGNsYXNzIHJlcHJlc2VudHMgdGhlIG1ldGFkYXRhIG9mIGEgR2l0SHViIGFjdGlvbiBkZWZpbmVkIGluIHRoZSBhY3Rpb24ueW1sIGZpbGUuXG4gKiBJdCBwcm92aWRlcyBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzIGZvciBhY2Nlc3NpbmcgYW5kIG1hbmlwdWxhdGluZyB0aGUgbWV0YWRhdGEuXG4gKiBbRnVydGhlciByZWFkaW5nIG9uIHRoZSBtZXRhZGF0YSBjYW4gYmUgZm91bmQgaGVyZV0oaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9jcmVhdGluZy1hY3Rpb25zL21ldGFkYXRhLXN5bnRheC1mb3ItZ2l0aHViLWFjdGlvbnMjaW5wdXRzKVxuICovXG5cbmltcG9ydCAqIGFzIGZzIGZyb20gJ25vZGU6ZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdub2RlOnBhdGgnO1xuXG5pbXBvcnQgWUFNTCBmcm9tICd5YW1sJztcblxuaW1wb3J0IHsgdHlwZSBCcmFuZGluZywgREVGQVVMVF9CUkFORF9DT0xPUiwgREVGQVVMVF9CUkFORF9JQ09OIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi9sb2d0YXNrL2luZGV4LmpzJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIGlucHV0IGZvciB0aGUgYWN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBJbnB1dCA9IHtcbiAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSBpbnB1dCAqL1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyByZXF1aXJlZCAqL1xuICByZXF1aXJlZD86IGJvb2xlYW47XG5cbiAgLyoqIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBpbnB1dCAqL1xuICBkZWZhdWx0Pzogc3RyaW5nO1xuICAvKiogT3B0aW9uYWwgSWYgdGhlIGlucHV0IHBhcmFtZXRlciBpcyB1c2VkLCB0aGlzIHN0cmluZyBpcyB0aGlzLmxvZ2dlZCBhcyBhIHdhcm5pbmcgbWVzc2FnZS4gWW91IGNhbiB1c2UgdGhpcyB3YXJuaW5nIHRvIG5vdGlmeSB1c2VycyB0aGF0IHRoZSBpbnB1dCBpcyBkZXByZWNhdGVkIGFuZCBtZW50aW9uIGFueSBhbHRlcm5hdGl2ZXMuICovXG4gIGRlcHJlY2F0aW9uTWVzc2FnZT86IHN0cmluZztcbn07XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBvdXRwdXQgZm9yIHRoZSBhY3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3V0cHV0IHtcbiAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSBvdXRwdXQgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xufVxudHlwZSBDb21wb3NpdGVBY3Rpb24gPSAnY29tcG9zaXRlJztcbnR5cGUgQ29udGFpbmVyQWN0aW9uID0gJ2RvY2tlcic7XG50eXBlIEphdmFzY3JpcHRBY3Rpb24gPSBgTm9kZSR7c3RyaW5nfWAgfCBgbm9kZSR7c3RyaW5nfWA7XG5cbi8qKlxuICogRGVmaW5lcyB0aGUgcnVucyBwcm9wZXJ0eSBmb3IgY29udGFpbmVyIGFjdGlvbnMuXG4gKi9cbnR5cGUgUnVuc0NvbnRhaW5lciA9IHtcbiAgJ3VzaW5nJzogQ29udGFpbmVyQWN0aW9uO1xuICAnaW1hZ2UnOiBzdHJpbmc7XG4gICdhcmdzJz86IHN0cmluZ1tdO1xuICAncHJlLWVudHJ5cG9pbnQnPzogc3RyaW5nO1xuICAncG9zdC1lbnRyeXBvaW50Jz86IHN0cmluZztcbiAgJ2VudHJ5cG9pbnQnPzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBydW5zIHByb3BlcnR5IGZvciBKYXZhU2NyaXB0IGFjdGlvbnMuXG4gKi9cbnR5cGUgUnVuc0phdmFzY3JpcHQgPSB7XG4gIC8qKiBUaGUgcnVubmVyIHVzZWQgdG8gZXhlY3V0ZSB0aGUgYWN0aW9uICovXG4gICd1c2luZyc6IEphdmFzY3JpcHRBY3Rpb247XG5cbiAgLyoqIFRoZSBlbnRyeXBvaW50IGZpbGUgZm9yIHRoZSBhY3Rpb24gKi9cbiAgJ21haW4nOiBzdHJpbmc7XG5cbiAgJ3ByZSc/OiBzdHJpbmc7XG4gICdwcmUtaWYnPzogc3RyaW5nO1xuXG4gICdwb3N0LWlmJz86IHN0cmluZztcblxuICAncG9zdCc/OiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIERlZmluZXMgdGhlIHN0ZXBzIHByb3BlcnR5IGZvciBjb21wb3NpdGUgYWN0aW9ucy5cbiAqL1xudHlwZSBTdGVwcyA9IHtcbiAgJ3NoZWxsJz86IHN0cmluZztcbiAgJ2lmJz86IHN0cmluZztcbiAgJ3J1bic/OiBzdHJpbmc7XG4gICduYW1lJz86IHN0cmluZztcbiAgJ2lkJz86IHN0cmluZztcbiAgJ3dvcmtpbmctZGlyZWN0b3J5Jz86IHN0cmluZztcbiAgJ2Vudic6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG59O1xuXG4vKipcbiAqIERlZmluZXMgdGhlIHJ1bnMgcHJvcGVydHkgZm9yIGNvbXBvc2l0ZSBhY3Rpb25zLlxuICovXG50eXBlIFJ1bnNDb21wb3NpdGUgPSB7XG4gIC8qKiBUaGUgcnVubmVyIHVzZWQgdG8gZXhlY3V0ZSB0aGUgYWN0aW9uICovXG4gIHVzaW5nOiBDb21wb3NpdGVBY3Rpb247XG4gIHN0ZXBzOiBTdGVwcztcbn07XG5cbmV4cG9ydCB0eXBlIEFjdGlvblR5cGUgPSBSdW5zQ29udGFpbmVyIHwgUnVuc0phdmFzY3JpcHQgfCBSdW5zQ29tcG9zaXRlO1xuLyoqXG4gKiBEZWZpbmVzIGhvdyB0aGUgYWN0aW9uIGlzIHJ1bi5cbiAqL1xuZXhwb3J0IHR5cGUgQWN0aW9uWWFtbCA9IHtcbiAgbmFtZTogc3RyaW5nO1xuXG4gIGF1dGhvcj86IHN0cmluZztcblxuICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIGFjdGlvbiAqL1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gIC8qKiBCcmFuZGluZyBpbmZvcm1hdGlvbiAqL1xuICBicmFuZGluZz86IEJyYW5kaW5nO1xuXG4gIC8qKiBJbnB1dCBkZWZpbml0aW9ucyAqL1xuICBpbnB1dHM/OiB7IFtrZXk6IHN0cmluZ106IElucHV0IH07XG5cbiAgLyoqIE91dHB1dCBkZWZpbml0aW9ucyAqL1xuICBvdXRwdXRzPzogeyBba2V5OiBzdHJpbmddOiBPdXRwdXQgfTtcblxuICAvKiogSG93IHRoZSBhY3Rpb24gaXMgcnVuICovXG4gIHJ1bnM6IEFjdGlvblR5cGU7XG5cbiAgLyoqIFBhdGggdG8gdGhlIGFjdGlvbiAqL1xuICBwYXRoOiBzdHJpbmc7XG59O1xuLyoqXG4gKiBQYXJzZXMgYW5kIHJlcHJlc2VudHMgbWV0YWRhdGEgZnJvbSBhY3Rpb24ueW1sLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBY3Rpb24gaW1wbGVtZW50cyBBY3Rpb25ZYW1sIHtcbiAgc3RhdGljIHZhbGlkYXRlKG9iajogYW55KTogb2JqIGlzIEFjdGlvblR5cGUge1xuICAgIGlmICgnbmFtZScgaW4gb2JqICYmICdkZXNjcmlwdGlvbicgaW4gb2JqICYmICdydW5zJyBpbiBvYmogJiYgJ3VzaW5nJyBpbiBvYmoucnVucykge1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgdHlwZW9mIG9iai5uYW1lID09PSAnc3RyaW5nJyAmJlxuICAgICAgICB0eXBlb2Ygb2JqLmRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyAmJlxuICAgICAgICB0eXBlb2Ygb2JqLnJ1bnMudXNpbmcgPT09ICdzdHJpbmcnXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBsb2c6IExvZ1Rhc2s7XG5cbiAgLyoqIE5hbWUgb2YgdGhlIGFjdGlvbiAqL1xuICBuYW1lOiBzdHJpbmc7XG5cbiAgYXV0aG9yPzogc3RyaW5nO1xuXG4gIC8qKiBEZXNjcmlwdGlvbiBvZiB0aGUgYWN0aW9uICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgLyoqIEJyYW5kaW5nIGluZm9ybWF0aW9uICovXG4gIGJyYW5kaW5nPzogQnJhbmRpbmc7XG5cbiAgLyoqIElucHV0IGRlZmluaXRpb25zICovXG4gIGlucHV0cz86IHsgW2tleTogc3RyaW5nXTogSW5wdXQgfTtcblxuICAvKiogT3V0cHV0IGRlZmluaXRpb25zICovXG4gIG91dHB1dHM/OiB7IFtrZXk6IHN0cmluZ106IE91dHB1dCB9O1xuXG4gIC8qKiBIb3cgdGhlIGFjdGlvbiBpcyBydW4gKi9cbiAgcnVuczogQWN0aW9uVHlwZTtcblxuICAvKiogUGF0aCB0byB0aGUgYWN0aW9uICovXG4gIHBhdGg6IHN0cmluZztcblxuICAvKiogdGhlIG9yaWdpbmFsIGZpbGUgY29udGVudCAqL1xuICByYXdZYW1sU3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIEFjdGlvbiBjbGFzcyBieSBsb2FkaW5nIGFuZCBwYXJzaW5nIGFjdGlvbi55bWwuXG4gICAqXG4gICAqIEBwYXJhbSBhY3Rpb25QYXRoIFRoZSBwYXRoIHRvIHRoZSBhY3Rpb24ueW1sIGZpbGUuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihhY3Rpb25QYXRoOiBzdHJpbmcsIGxvZz86IExvZ1Rhc2spIHtcbiAgICAvLyBMb2FkIGFuZCBwYXJzZSBhY3Rpb24ueW1sXG4gICAgdGhpcy5sb2cgPSBsb2cgPz8gbmV3IExvZ1Rhc2soYWN0aW9uUGF0aCk7XG4gICAgdGhpcy5wYXRoID0gYWN0aW9uUGF0aDtcbiAgICBsZXQgYWN0aW9uWWFtbDogQWN0aW9uWWFtbDtcbiAgICB0aGlzLmxvZy5kZWJ1ZyhgQ29uc3R1Y3RpbmcgJHthY3Rpb25QYXRofWApO1xuICAgIHRyeSB7XG4gICAgICBhY3Rpb25ZYW1sID0gdGhpcy5sb2FkQWN0aW9uRnJvbShhY3Rpb25QYXRoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gbG9hZCAke2FjdGlvblBhdGh9LiAke2Vycm9yfWApO1xuICAgIH1cbiAgICB0aGlzLmxvZy5kZWJ1ZyhgQWN0aW9uIFlBTUw6ICR7SlNPTi5zdHJpbmdpZnkoYWN0aW9uWWFtbCl9YCk7XG5cbiAgICB0aGlzLm5hbWUgPSBhY3Rpb25ZYW1sLm5hbWU7XG4gICAgdGhpcy5hdXRob3IgPSBhY3Rpb25ZYW1sLmF1dGhvcjtcbiAgICB0aGlzLmRlc2NyaXB0aW9uID0gYWN0aW9uWWFtbC5kZXNjcmlwdGlvbjtcblxuICAgIHRoaXMuYnJhbmRpbmcgPSB7XG4gICAgICBjb2xvcjogYWN0aW9uWWFtbC5icmFuZGluZz8uY29sb3IgPz8gREVGQVVMVF9CUkFORF9DT0xPUixcbiAgICAgIGljb246IGFjdGlvbllhbWwuYnJhbmRpbmc/Lmljb24gPz8gREVGQVVMVF9CUkFORF9JQ09OLFxuICAgIH07XG4gICAgdGhpcy5pbnB1dHMgPSBhY3Rpb25ZYW1sLmlucHV0cztcbiAgICB0aGlzLm91dHB1dHMgPSBhY3Rpb25ZYW1sLm91dHB1dHM7XG4gICAgdGhpcy5ydW5zID0gYWN0aW9uWWFtbC5ydW5zO1xuICB9XG5cbiAgbG9hZEFjdGlvbkZyb20oYWN0aW9uUGF0aDogc3RyaW5nKTogQWN0aW9uWWFtbCB7XG4gICAgY29uc3QgYWN0aW9uRGlyID0gcGF0aC5kaXJuYW1lKHBhdGgucmVzb2x2ZShhY3Rpb25QYXRoKSk7XG4gICAgdGhpcy5sb2cuZGVidWcoYExvYWQgJHthY3Rpb25QYXRofSBmcm9tICR7YWN0aW9uRGlyfWApO1xuICAgIC8vIENoZWNrIGlmIHRoZSBhY3Rpb24gZmlsZSBleGlzdHNcbiAgICBpZiAoIWZzLmV4aXN0c1N5bmMoYWN0aW9uUGF0aCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHthY3Rpb25QYXRofSBkb2VzIG5vdCBleGlzdCBpbiAke2FjdGlvbkRpcn1gKTtcbiAgICB9XG4gICAgLy8gRW5zdXJlIHRoZSBwYXRoIGlzIGEgZmlsZSBhbmQgbm90IGEgZGlyZWN0b3J5XG4gICAgaWYgKCFmcy5zdGF0U3luYyhhY3Rpb25QYXRoKS5pc0ZpbGUoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2FjdGlvblBhdGh9IGlzIG5vdCBhIGZpbGUgdHlwZSBhdCAke2FjdGlvbkRpcn1gKTtcbiAgICB9XG5cbiAgICB0aGlzLnJhd1lhbWxTdHJpbmcgPSBmcy5yZWFkRmlsZVN5bmMoYWN0aW9uUGF0aCwgJ3V0ZjgnKTtcblxuICAgIHRoaXMubG9nLmRlYnVnKGBQYXJzZSAke2FjdGlvblBhdGh9IGZyb20gJHthY3Rpb25EaXJ9YCk7XG4gICAgY29uc3QgYWN0aW9uT2JqID0gWUFNTC5wYXJzZSh0aGlzLnJhd1lhbWxTdHJpbmcpIGFzIEFjdGlvbllhbWw7XG4gICAgaWYgKEFjdGlvbi52YWxpZGF0ZShhY3Rpb25PYmopKSB7XG4gICAgICByZXR1cm4gYWN0aW9uT2JqO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgYWN0aW9uIG1ldGFkYXRhIHN5bnRheCBpbiAke2FjdGlvblBhdGh9LmApO1xuICB9XG5cbiAgLyoqXG4gICogR2V0cyB0aGUgdmFsdWUgb2YgYW4gaW5wdXQuXG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgYW4gaW5wdXQuXG4gICAqXG4gICAqIEBwYXJhbSBpbnB1dE5hbWUgVGhlIG5hbWUgb2YgdGhlIGlucHV0LlxuICAgKiBAcmV0dXJucyBUaGUgZGVmYXVsdCB2YWx1ZSBpZiBkZWZpbmVkLG9yIHVuZGVmaW5lZFxuICAgKi9cbiAgaW5wdXREZWZhdWx0KGlucHV0TmFtZTogc3RyaW5nKTogc3RyaW5nIHwgYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHRoaXMuaW5wdXRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5pbnB1dHNbaW5wdXROYW1lXT8uZGVmYXVsdCA/PyB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKipcbiAgICogU3RyaW5naWZpZXMgdGhlIGFjdGlvbiBiYWNrIHRvIFlBTUwuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBZQU1MIHN0cmluZyBmb3IgZGVidWdnaW5nLlxuICAgKi9cbiAgc3RyaW5naWZ5KCk6IHN0cmluZyB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBZQU1MLnN0cmluZ2lmeSh0aGlzKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5sb2cuZXJyb3IoYEZhaWxlZCB0byBzdHJpbmdpZnkgQWN0aW9uLiAke2Vycm9yfWApO1xuICAgICAgLy8gdGhpcyBpcyBqdXN0IGZvciBkZWJ1Z2dpbmcsIGNvbnRpbnVlIG9uIGVycm9yXG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICB9XG59XG4iLCAiLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBGZWF0aGVyIGljb24gbmFtZXMuXG4gKi9cbmltcG9ydCB0eXBlIHsgRmVhdGhlckljb25OYW1lcyB9IGZyb20gJ2ZlYXRoZXItaWNvbnMnO1xuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBpY29ucyBvYmplY3QgZnJvbSAnZmVhdGhlci1pY29ucycgbGlicmFyeS5cbiAqL1xuaW1wb3J0IHsgaWNvbnMgfSBmcm9tICdmZWF0aGVyLWljb25zJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBzZWN0aW9ucyBvZiB0aGUgUkVBRE1FLlxuICovXG5leHBvcnQgY29uc3QgUkVBRE1FX1NFQ1RJT05TID0gW1xuICAndGl0bGUnLFxuICAnYnJhbmRpbmcnLFxuICAnZGVzY3JpcHRpb24nLFxuICAndXNhZ2UnLFxuICAnaW5wdXRzJyxcbiAgJ291dHB1dHMnLFxuICAnY29udGVudHMnLFxuICAnYmFkZ2VzJyxcbl0gYXMgY29uc3Q7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHNpbmdsZSBzZWN0aW9uIG9mIHRoZSBSRUFETUUuXG4gKi9cbmV4cG9ydCB0eXBlIFJlYWRtZVNlY3Rpb24gPSAodHlwZW9mIFJFQURNRV9TRUNUSU9OUylbbnVtYmVyXTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBmaWxlIG5hbWUgZm9yIHRoZSBjb25maWd1cmF0aW9uIGZpbGUuXG4gKi9cbmV4cG9ydCBjb25zdCBjb25maWdGaWxlTmFtZSA9ICcuZ2hhZG9jcy5qc29uJztcblxuLyoqXG4gKiBFbnVtZXJhdGVzIHRoZSBrZXlzIGZvciB0aGUgY29uZmlndXJhdGlvbiBvcHRpb25zLlxuICovXG5leHBvcnQgZW51bSBDb25maWdLZXlzIHtcbiAgT3duZXIgPSAnb3duZXInLFxuICBSZXBvID0gJ3JlcG8nLFxuICBUaXRsZVByZWZpeCA9ICd0aXRsZV9wcmVmaXgnLFxuICBQcmV0dGllciA9ICdwcmV0dGllcicsXG4gIFNhdmUgPSAnc2F2ZScsXG4gIHBhdGhzQWN0aW9uID0gJ3BhdGhzOmFjdGlvbicsXG4gIHBhdGhzUmVhZG1lID0gJ3BhdGhzOnJlYWRtZScsXG4gIEJyYW5kaW5nU3ZnUGF0aCA9ICdicmFuZGluZ19zdmdfcGF0aCcsXG4gIEJyYW5kaW5nQXNUaXRsZVByZWZpeCA9ICdicmFuZGluZ19hc190aXRsZV9wcmVmaXgnLFxuICBWZXJzaW9uaW5nRW5hYmxlZCA9ICd2ZXJzaW9uaW5nOmVuYWJsZWQnLFxuICBWZXJzaW9uaW5nT3ZlcnJpZGUgPSAndmVyc2lvbmluZzpvdmVycmlkZScsXG4gIFZlcnNpb25pbmdQcmVmaXggPSAndmVyc2lvbmluZzpwcmVmaXgnLFxuICBWZXJzaW9uaW5nQnJhbmNoID0gJ3ZlcnNpb25pbmc6YnJhbmNoJyxcbiAgSW5jbHVkZUdpdGh1YlZlcnNpb25CYWRnZSA9ICd2ZXJzaW9uaW5nOmJhZGdlJyxcbiAgRGVidWdOY29uZiA9ICdkZWJ1ZzpuY29uZicsXG4gIERlYnVnUmVhZG1lID0gJ2RlYnVnOnJlYWRtZScsXG4gIERlYnVnQ29uZmlnID0gJ2RlYnVnOmNvbmZpZycsXG4gIERlYnVnQWN0aW9uID0gJ2RlYnVnOmFjdGlvbicsXG4gIERlYnVnR2l0aHViID0gJ2RlYnVnOmdpdGh1YicsXG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZWRnZSBsZW5ndGggKGluIHBpeGVscykgZm9yIHRoZSBicmFuZGluZyBzcXVhcmUuXG4gKi9cbmV4cG9ydCBjb25zdCBicmFuZGluZ1NxdWFyZUVkZ2VMZW5ndGhJblBpeGVscyA9IDUwO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGRlZmF1bHQgYnJhbmQgY29sb3IuXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0JSQU5EX0NPTE9SID0gJ2JsdWUnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGRlZmF1bHQgYnJhbmQgaWNvbi5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfQlJBTkRfSUNPTiA9ICdhY3Rpdml0eSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgbWFya3VwIGZvciBjZW50ZXIgYWxpZ25tZW50LlxuICovXG5leHBvcnQgY29uc3QgQUxJR05NRU5UX01BUktVUCA9ICc8ZGl2IGFsaWduPVwiY2VudGVyXCI+JztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBzZXQgb2YgaWNvbnMgdGhhdCBhcmUgb21pdHRlZCBpbiBHaXRIdWIgQWN0aW9ucyBicmFuZGluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IEdJVEhVQl9BQ1RJT05TX09NSVRURURfSUNPTlMgPSBuZXcgU2V0KFtcbiAgJ2NvZmZlZScsXG4gICdjb2x1bW5zJyxcbiAgJ2RpdmlkZS1jaXJjbGUnLFxuICAnZGl2aWRlLXNxdWFyZScsXG4gICdkaXZpZGUnLFxuICAnZnJvd24nLFxuICAnaGV4YWdvbicsXG4gICdrZXknLFxuICAnbWVoJyxcbiAgJ21vdXNlLXBvaW50ZXInLFxuICAnc21pbGUnLFxuICAndG9vbCcsXG4gICd4LW9jdGFnb24nLFxuXSk7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgc2V0IG9mIGljb25zIGF2YWlsYWJsZSBmb3IgR2l0SHViIEFjdGlvbnMgYnJhbmRpbmcuXG4gKi9cbmV4cG9ydCBjb25zdCBHSVRIVUJfQUNUSU9OU19CUkFORElOR19JQ09OUyA9IG5ldyBTZXQoXG4gIE9iamVjdC5rZXlzKGljb25zKS5maWx0ZXIoKGl0ZW0pID0+ICFHSVRIVUJfQUNUSU9OU19PTUlUVEVEX0lDT05TLmhhcyhpdGVtKSksXG4pO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGF2YWlsYWJsZSBjb2xvcnMgZm9yIEdpdEh1YiBBY3Rpb25zIGJyYW5kaW5nLlxuICovXG5leHBvcnQgY29uc3QgR0lUSFVCX0FDVElPTlNfQlJBTkRJTkdfQ09MT1JTID0gW1xuICAnd2hpdGUnLFxuICAneWVsbG93JyxcbiAgJ2JsdWUnLFxuICAnZ3JlZW4nLFxuICAnb3JhbmdlJyxcbiAgJ3JlZCcsXG4gICdwdXJwbGUnLFxuICAnZ3JheS1kYXJrJyxcbl0gYXMgY29uc3Q7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgYXZhaWxhYmxlIGJyYW5kIGNvbG9ycy5cbiAqL1xuZXhwb3J0IHR5cGUgQnJhbmRDb2xvcnMgPSAodHlwZW9mIEdJVEhVQl9BQ1RJT05TX0JSQU5ESU5HX0NPTE9SUylbbnVtYmVyXTtcblxuLyoqXG4gKiBDaGVja3MgaWYgdGhlIGdpdmVuIGljb24gaXMgdmFsaWQgZm9yIEdpdEh1YiBBY3Rpb25zIGJyYW5kaW5nLlxuICogQHBhcmFtIHtQYXJ0aWFsPEZlYXRoZXJJY29uTmFtZXM+fSBpY29uIC0gVGhlIGljb24gdG8gdmFsaWRhdGUuXG4gKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgaWNvbiBpcyB2YWxpZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRJY29uKGljb246IFBhcnRpYWw8RmVhdGhlckljb25OYW1lcz4pOiBpY29uIGlzIEZlYXRoZXJJY29uTmFtZXMge1xuICByZXR1cm4gR0lUSFVCX0FDVElPTlNfQlJBTkRJTkdfSUNPTlMuaGFzKGljb24pO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gY29sb3IgaXMgdmFsaWQgZm9yIEdpdEh1YiBBY3Rpb25zIGJyYW5kaW5nLlxuICogQHBhcmFtIHtQYXJ0aWFsPEJyYW5kQ29sb3JzPn0gY29sb3IgLSBUaGUgY29sb3IgdG8gdmFsaWRhdGUuXG4gKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgY29sb3IgaXMgdmFsaWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkQ29sb3IoY29sb3I6IFBhcnRpYWw8QnJhbmRDb2xvcnM+KTogY29sb3IgaXMgQnJhbmRDb2xvcnMge1xuICByZXR1cm4gR0lUSFVCX0FDVElPTlNfQlJBTkRJTkdfQ09MT1JTLmluY2x1ZGVzKGNvbG9yKTtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBicmFuZGluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGFjdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCcmFuZGluZyB7XG4gIC8qKiBDb2xvciBmb3IgdGhlIGFjdGlvbiBicmFuZGluZyAqL1xuICBjb2xvcjogUGFydGlhbDxCcmFuZENvbG9ycz47XG4gIGljb246IFBhcnRpYWw8RmVhdGhlckljb25OYW1lcz47XG59XG4iLCAiaW1wb3J0ICogYXMgY29yZSBmcm9tICdAYWN0aW9ucy9jb3JlJztcbmltcG9ydCBjaGFsa1BrZyBmcm9tICdjaGFsayc7XG5cbmltcG9ydCB7IG5vdEVtcHR5IH0gZnJvbSAnLi4vdXRpbC5qcyc7XG5cbi8vIENoYWxrIGNvbG9yIHN0eWxlc1xuY29uc3QgeyBiZ1JlZEJyaWdodCwgY3lhbiwgZ3JlZW4sIGdyZWVuQnJpZ2h0LCB3aGl0ZUJyaWdodCwgeWVsbG93LCB5ZWxsb3dCcmlnaHQgfSA9IGNoYWxrUGtnO1xuXG4vLyBDb25zdGFudHMgZm9yIGRpZmZlcmVudCBsb2cgc3RlcCB0eXBlc1xuXG5lbnVtIExvZ0dyb3VwIHtcbiAgTk9fR1JPVVAgPSAwLFxuICBTVEFSVF9HUk9VUCxcbiAgRU5EX0dST1VQLFxuICBJU19FUlJPUixcbiAgSVNfRkFJTEVELFxuICBJU19USVRMRSxcbn1cblxuZnVuY3Rpb24gaW5HaXRIdWJBY3Rpb25zKCk6IGJvb2xlYW4ge1xuICByZXR1cm4gbm90RW1wdHkocHJvY2Vzcy5lbnYuR0lUSFVCX0FDVElPTlMpICYmIHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT05TID09PSAndHJ1ZSc7XG59XG5cbmZ1bmN0aW9uIGhpZ2hsaWdodE1lc3NhZ2Uoc3RlcDogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcpOiB7IGRlc2M6IGFueTsgZmFpbGVkOiBhbnkgfSB7XG4gIGxldCBmYWlsZWQgPSBmYWxzZTtcbiAgY29uc3QgY2kgPSBpbkdpdEh1YkFjdGlvbnMoKTtcbiAgbGV0IGRlc2M6IHN0cmluZztcbiAgc3dpdGNoIChzdGVwKSB7XG4gICAgY2FzZSAnU1RBUlQnOiB7XG4gICAgICBkZXNjID0gYCR7bWVzc2FnZX1gO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgJ0lORk8nOiB7XG4gICAgICBkZXNjID0gZ3JlZW4oYCR7bWVzc2FnZX1gKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBjYXNlICdXQVJOJzoge1xuICAgICAgZGVzYyA9IHllbGxvdyhgJHttZXNzYWdlfWApO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgJ1NVQ0NFU1MnOiB7XG4gICAgICBkZXNjID0gZ3JlZW5CcmlnaHQoYCR7bWVzc2FnZX1gKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBjYXNlICdGQUlMVVJFJzoge1xuICAgICAgZGVzYyA9IGNpID8gbWVzc2FnZSA6IHllbGxvdy5ib2xkKGAke21lc3NhZ2V9YCk7XG4gICAgICBmYWlsZWQgPSB0cnVlO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgJ0VSUk9SJzoge1xuICAgICAgZGVzYyA9IGNpID8gbWVzc2FnZSA6IHllbGxvdyhgJHttZXNzYWdlfWApO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgJyMjIyMjJzoge1xuICAgICAgZGVzYyA9IGN5YW4oYCR7bWVzc2FnZX1gKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICBkZXNjID0gbWVzc2FnZTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuICByZXR1cm4geyBkZXNjLCBmYWlsZWQgfTtcbn1cbmZ1bmN0aW9uIGhpZ2hsaWdodFN0ZXAoc3RlcDogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgbXNnOiBzdHJpbmc7XG4gIGNvbnN0IGNpID0gaW5HaXRIdWJBY3Rpb25zKCk7XG4gIC8vIExvZ2ljIHRvIGhhbmRsZSBkaWZmZXJlbnQgbG9nIG91dHB1dHMgYmFzZWQgb24gdGhlIGVudmlyb25tZW50IChHaXRIdWIgQWN0aW9ucyBvciBsb2NhbClcbiAgc3dpdGNoIChzdGVwKSB7XG4gICAgY2FzZSAnU1RBUlQnOiB7XG4gICAgICBtc2cgPSB5ZWxsb3dCcmlnaHQobWVzc2FnZSk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSAnU1VDQ0VTUyc6IHtcbiAgICAgIG1zZyA9IHdoaXRlQnJpZ2h0KG1lc3NhZ2UpO1xuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgJ0ZBSUxVUkUnOlxuICAgIGNhc2UgJ0VSUk9SJzoge1xuICAgICAgbXNnID0gY2kgPyBtZXNzYWdlIDogYmdSZWRCcmlnaHQobWVzc2FnZSk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgZGVmYXVsdDoge1xuICAgICAgbXNnID0gbWVzc2FnZTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbXNnO1xufVxuXG5mdW5jdGlvbiBoYW5kbGVPdXRwdXQoc3RhcnRHcm91cDogTG9nR3JvdXAsIG1zZzogc3RyaW5nLCBvcmlnaW5hbFN0cmluZz86IHN0cmluZyk6IHZvaWQge1xuICAvLyBMb2dpYyB0byBoYW5kbGUgZGlmZmVyZW50IGxvZyBvdXRwdXRzIGJhc2VkIG9uIHRoZSBlbnZpcm9ubWVudCAoR2l0SHViIEFjdGlvbnMgb3IgbG9jYWwpXG4gIGNvbnN0IGNpID0gaW5HaXRIdWJBY3Rpb25zKCk7XG5cbiAgc3dpdGNoIChzdGFydEdyb3VwKSB7XG4gICAgY2FzZSBMb2dHcm91cC5TVEFSVF9HUk9VUDoge1xuICAgICAgaWYgKGNpICYmIG9yaWdpbmFsU3RyaW5nKSB7XG4gICAgICAgIGNvcmUuc3RhcnRHcm91cChvcmlnaW5hbFN0cmluZyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb3JlLmluZm8obXNnKTtcbiAgICAgIH1cblxuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIGNhc2UgTG9nR3JvdXAuRU5EX0dST1VQOiB7XG4gICAgICBpZiAoY2kpIHtcbiAgICAgICAgY29yZS5lbmRHcm91cCgpO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgfVxuICAgIC8vIExvZ2ljIHRvIGhhbmRsZSBlcnJvcmluZyBvciBmYWlsZWQgc3RlcHNcbiAgICBjYXNlIExvZ0dyb3VwLklTX0VSUk9SOiB7XG4gICAgICBjb3JlLmVycm9yKG1zZyk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgY2FzZSBMb2dHcm91cC5JU19GQUlMRUQ6IHtcbiAgICAgIGNvcmUuc2V0RmFpbGVkKG1zZyk7XG4gICAgICBicmVhaztcbiAgICB9XG4gICAgZGVmYXVsdDoge1xuICAgICAgY29yZS5pbmZvKG1zZyk7XG4gICAgfVxuICB9XG59XG4vKipcbiAqIFJlcHJlc2VudHMgYSBsb2dnaW5nIHRhc2sgd2l0aCB2YXJpb3VzIGxvZyBzdGVwIG1ldGhvZHMuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIExvZ1Rhc2sge1xuICAvKipcbiAgICogTWFwIG9mIGluZ3JvdXAgc2V0dGluZ3MgcGVyIHRhc2sgbmFtZS5cbiAgICovXG4gIHByaXZhdGUgc3RhdGljIGluZ3JvdXBTZXR0aW5ncyA9IG5ldyBNYXA8c3RyaW5nLCBib29sZWFuPigpO1xuXG4gIC8qKlxuICAgKiBUaGUgd2lkdGggb2YgdGhlIGluZGVudGF0aW9uIGZvciBsb2cgbWVzc2FnZXMuXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBpbmRlbnRXaWR0aCA9IDU7XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiBkZWJ1ZyBtb2RlIGlzIGVuYWJsZWQuXG4gICAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIGRlYnVnIG1vZGUgaXMgZW5hYmxlZC5cbiAgICovXG4gIHN0YXRpYyBpc0RlYnVnKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBjb3JlLmlzRGVidWcoKSB8fCAobm90RW1wdHkocHJvY2Vzcy5lbnYuREVCVUcpICYmIHByb2Nlc3MuZW52LkRFQlVHID09PSAndHJ1ZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSB0YXNrLlxuICAgKi9cbiAgcHJpdmF0ZSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIExvZ1Rhc2sgY2xhc3MuXG4gICAqIEBwYXJhbSBuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHRhc2suXG4gICAqL1xuICBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLm5hbWUgPSBuYW1lPy50cmltKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaW5ncm91cCBzZXR0aW5nIGZvciB0aGUgdGFzay5cbiAgICovXG4gIGdldCBpbmdyb3VwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBMb2dUYXNrLmluZ3JvdXBTZXR0aW5ncy5nZXQodGhpcy5uYW1lKSA/PyBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBpbmdyb3VwIHNldHRpbmcgZm9yIHRoaXMgdGFzay5cbiAgICovXG4gIHNldCBpbmdyb3VwKHZhbHVlOiBib29sZWFuKSB7XG4gICAgTG9nVGFzay5pbmdyb3VwU2V0dGluZ3Muc2V0KHRoaXMubmFtZSwgdmFsdWUpO1xuICB9XG5cbiAgZ2V0TWVzc2FnZVN0cmluZyhzdGVwOiBzdHJpbmcsIGRlc2M6IHN0cmluZywgZW1vamlTdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgbGV0IG1zZzogc3RyaW5nO1xuICAgIGlmICh0aGlzLmluZ3JvdXApIHtcbiAgICAgIGNvbnN0IGluZGVudFN0ciA9ICcgJy5yZXBlYXQoTG9nVGFzay5pbmRlbnRXaWR0aCk7XG4gICAgICBtc2cgPSBgJHtpbmRlbnRTdHJ9ICAgJHtlbW9qaVN0cn06ICR7dGhpcy5uYW1lfSA+ICR7ZGVzY31gO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdGVwU3RyID0gc3RlcC5wYWRFbmQoTG9nVGFzay5pbmRlbnRXaWR0aCwgJyAnKTtcbiAgICAgIG1zZyA9IGBbJHtzdGVwU3RyfV1bJHt0aGlzLm5hbWUucGFkRW5kKDExLCAnICcpfV0gJHtlbW9qaVN0cn06ICR7ZGVzY31gO1xuICAgIH1cbiAgICByZXR1cm4gaGlnaGxpZ2h0U3RlcChzdGVwLCBtc2cpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYSBzdGVwIHdpdGggdGhlIGdpdmVuIGVtb2ppLCB0eXBlLCBtZXNzYWdlIGFuZCBncm91cC5cbiAgICogQHBhcmFtIGVtb2ppU3RyIC0gVGhlIGVtb2ppIHN0cmluZyB0byBkaXNwbGF5LlxuICAgKiBAcGFyYW0gc3RlcCAtIFRoZSBzdGVwIHR5cGUuXG4gICAqIEBwYXJhbSBtZXNzYWdlIC0gVGhlIG1lc3NhZ2Ugb2YgdGhlIHN0ZXAuXG4gICAqIEBwYXJhbSBzdGFydEdyb3VwIC0gVGhlIHN0YXJ0IGdyb3VwIHR5cGUuXG4gICAqL1xuICBsb2dTdGVwKGVtb2ppU3RyOiBzdHJpbmcsIHN0ZXA6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nLCBzdGFydEdyb3VwID0gTG9nR3JvdXAuTk9fR1JPVVApOiB2b2lkIHtcbiAgICAvLyBMb2dpYyB0byBkZXRlcm1pbmUgdGhlIGxvZyBtZXNzYWdlIGNvbG9yIGFuZCBmb3JtYXQgYmFzZWQgb24gdGhlIHN0ZXAgdHlwZVxuICAgIGlmIChzdGVwLmxlbmd0aCA+IExvZ1Rhc2suaW5kZW50V2lkdGgpIHtcbiAgICAgIExvZ1Rhc2suaW5kZW50V2lkdGggPSBzdGVwLmxlbmd0aDtcbiAgICB9XG4gICAgY29uc3QgeyBkZXNjIH0gPSBoaWdobGlnaHRNZXNzYWdlKHN0ZXAsIG1lc3NhZ2UpO1xuICAgIGNvbnN0IG1zZyA9IHRoaXMuZ2V0TWVzc2FnZVN0cmluZyhzdGVwLCBkZXNjLCBlbW9qaVN0cik7XG5cbiAgICBoYW5kbGVPdXRwdXQoc3RhcnRHcm91cCwgbXNnLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGEgZGVidWcgbWVzc2FnZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBUaGUgbWVzc2FnZSBvZiB0aGUgZGVidWcgbWVzc2FnZS5cbiAgICovXG4gIGRlYnVnKG1lc3NhZ2UgPSAnJyk6IHZvaWQge1xuICAgIC8vIExvZ2ljIHRvIGxvZyBhIGRlYnVnIG1lc3NhZ2VcbiAgICBpZiAoTG9nVGFzay5pc0RlYnVnKCkgJiYgbWVzc2FnZSAhPT0gJycpIHtcbiAgICAgIHRoaXMubG9nU3RlcCgnXHVEODNEXHVEQzFFJywgJ0RFQlVHJywgbWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYSBzdGFydCBtZXNzYWdlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIG9mIHRoZSBzdGFydCBtZXNzYWdlLlxuICAgKi9cbiAgc3RhcnQobWVzc2FnZSA9ICcnKTogdm9pZCB7XG4gICAgLy8gTG9naWMgdG8gbG9nIGEgc3RhcnQgbWVzc2FnZVxuICAgIGNvbnN0IGRlc2MgPSBtZXNzYWdlID09PSAnJyA/IGBTdGFydGluZyAke3RoaXMubmFtZX0uLi5gIDogbWVzc2FnZTtcblxuICAgIHRoaXMubG9nU3RlcCgnXHVEODNEXHVERTgwJywgJ1NUQVJUJywgZGVzYywgTG9nR3JvdXAuU1RBUlRfR1JPVVApO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYW4gaW5mbyBtZXNzYWdlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIG9mIHRoZSBpbmZvIG1lc3NhZ2UuXG4gICAqL1xuICBpbmZvKG1lc3NhZ2UgPSAnJyk6IHZvaWQge1xuICAgIC8vIExvZ2ljIHRvIGxvZyBhbiBpbmZvIG1lc3NhZ2VcbiAgICB0aGlzLmxvZ1N0ZXAoJ1x1MjcyOCcsICdJTkZPJywgbWVzc2FnZSk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhIHdhcm5pbmcgbWVzc2FnZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBUaGUgbWVzc2FnZSBvZiB0aGUgd2FybmluZyBtZXNzYWdlLlxuICAgKi9cbiAgd2FybihtZXNzYWdlID0gJycpOiB2b2lkIHtcbiAgICAvLyBMb2dpYyB0byBsb2cgYSB3YXJuaW5nIG1lc3NhZ2VcbiAgICB0aGlzLmxvZ1N0ZXAoJ1x1MjZBMFx1RkUwRicsICdXQVJOJywgbWVzc2FnZSk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhIHN1Y2Nlc3MgbWVzc2FnZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBUaGUgbWVzc2FnZSBvZiB0aGUgc3VjY2VzcyBtZXNzYWdlLlxuICAgKiBAcGFyYW0gaW5ncm91cCAtIEluZGljYXRlcyB3aGV0aGVyIHRoZSBzdWNjZXNzIG1lc3NhZ2UgaXMgaW4gYSBncm91cC5cbiAgICovXG4gIHN1Y2Nlc3MobWVzc2FnZSA9ICcnLCBpbmdyb3VwID0gdHJ1ZSk6IHZvaWQge1xuICAgIC8vIExvZ2ljIHRvIGxvZyBhIHN1Y2Nlc3MgbWVzc2FnZVxuICAgIGNvbnN0IGRlc2MgPSBtZXNzYWdlID09PSAnJyA/IGBDb21wbGV0ZWQgJHt0aGlzLm5hbWV9LmAgOiBtZXNzYWdlO1xuICAgIGlmIChpbmdyb3VwKSB7XG4gICAgICB0aGlzLmluZ3JvdXAgPSBmYWxzZTtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5HSVRIVUJfQUNUSU9OUykge1xuICAgICAgICBjb3JlLmVuZEdyb3VwKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMubG9nU3RlcCgnXHUyNzA1JywgJ1NVQ0NFU1MnLCBkZXNjKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGEgZmFpbHVyZSBtZXNzYWdlLlxuICAgKiBAcGFyYW0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIG9mIHRoZSBmYWlsdXJlIG1lc3NhZ2UuXG4gICAqIEBwYXJhbSBpbmdyb3VwIC0gSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGZhaWx1cmUgbWVzc2FnZSBpcyBpbiBhIGdyb3VwLlxuICAgKi9cbiAgZmFpbChtZXNzYWdlID0gJycsIGluZ3JvdXAgPSB0cnVlKTogdm9pZCB7XG4gICAgLy8gTG9naWMgdG8gbG9nIGEgZmFpbHVyZSBtZXNzYWdlXG4gICAgY29uc3QgZGVzYyA9IG1lc3NhZ2UgPT09ICcnID8gYEZhaWxlZCAke3RoaXMubmFtZX0uYCA6IG1lc3NhZ2U7XG4gICAgaWYgKGluZ3JvdXApIHtcbiAgICAgIHRoaXMuaW5ncm91cCA9IGZhbHNlO1xuICAgICAgaWYgKHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT05TKSB7XG4gICAgICAgIGNvcmUuZW5kR3JvdXAoKTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgbXNndHlwZSA9IHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT05TID8gTG9nR3JvdXAuSVNfRkFJTEVEIDogTG9nR3JvdXAuSVNfRVJST1I7XG4gICAgdGhpcy5sb2dTdGVwKCdcdTI3NEMnLCAnRkFJTFVSRScsIGRlc2MsIG1zZ3R5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgYW4gZXJyb3IgbWVzc2FnZS5cbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBUaGUgbWVzc2FnZSBvZiB0aGUgZXJyb3IgbWVzc2FnZS5cbiAgICovXG4gIGVycm9yKG1lc3NhZ2UgPSAnJyk6IHZvaWQge1xuICAgIC8vIExvZ2ljIHRvIGxvZyBhbiBlcnJvciBtZXNzYWdlXG4gICAgdGhpcy5sb2dTdGVwKCdcdUQ4M0RcdUREMzQnLCAnRVJST1InLCBtZXNzYWdlLCBMb2dHcm91cC5JU19FUlJPUik7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBhIHRpdGxlIG1lc3NhZ2UuXG4gICAqIEBwYXJhbSBtZXNzYWdlIC0gVGhlIG1lc3NhZ2Ugb2YgdGhlIHRpdGxlIG1lc3NhZ2UuXG4gICAqL1xuICB0aXRsZShtZXNzYWdlID0gJycpOiB2b2lkIHtcbiAgICAvLyBMb2dpYyB0byBsb2cgYSB0aXRsZSBtZXNzYWdlXG4gICAgdGhpcy5sb2dTdGVwKCdcdUQ4M0RcdURDRDMnLCAnIyMjIyMnLCBtZXNzYWdlLCBMb2dHcm91cC5JU19USVRMRSk7XG4gIH1cbn1cbiIsICJjb25zdCBBTlNJX0JBQ0tHUk9VTkRfT0ZGU0VUID0gMTA7XG5cbmNvbnN0IHdyYXBBbnNpMTYgPSAob2Zmc2V0ID0gMCkgPT4gY29kZSA9PiBgXFx1MDAxQlske2NvZGUgKyBvZmZzZXR9bWA7XG5cbmNvbnN0IHdyYXBBbnNpMjU2ID0gKG9mZnNldCA9IDApID0+IGNvZGUgPT4gYFxcdTAwMUJbJHszOCArIG9mZnNldH07NTske2NvZGV9bWA7XG5cbmNvbnN0IHdyYXBBbnNpMTZtID0gKG9mZnNldCA9IDApID0+IChyZWQsIGdyZWVuLCBibHVlKSA9PiBgXFx1MDAxQlskezM4ICsgb2Zmc2V0fTsyOyR7cmVkfTske2dyZWVufTske2JsdWV9bWA7XG5cbmNvbnN0IHN0eWxlcyA9IHtcblx0bW9kaWZpZXI6IHtcblx0XHRyZXNldDogWzAsIDBdLFxuXHRcdC8vIDIxIGlzbid0IHdpZGVseSBzdXBwb3J0ZWQgYW5kIDIyIGRvZXMgdGhlIHNhbWUgdGhpbmdcblx0XHRib2xkOiBbMSwgMjJdLFxuXHRcdGRpbTogWzIsIDIyXSxcblx0XHRpdGFsaWM6IFszLCAyM10sXG5cdFx0dW5kZXJsaW5lOiBbNCwgMjRdLFxuXHRcdG92ZXJsaW5lOiBbNTMsIDU1XSxcblx0XHRpbnZlcnNlOiBbNywgMjddLFxuXHRcdGhpZGRlbjogWzgsIDI4XSxcblx0XHRzdHJpa2V0aHJvdWdoOiBbOSwgMjldLFxuXHR9LFxuXHRjb2xvcjoge1xuXHRcdGJsYWNrOiBbMzAsIDM5XSxcblx0XHRyZWQ6IFszMSwgMzldLFxuXHRcdGdyZWVuOiBbMzIsIDM5XSxcblx0XHR5ZWxsb3c6IFszMywgMzldLFxuXHRcdGJsdWU6IFszNCwgMzldLFxuXHRcdG1hZ2VudGE6IFszNSwgMzldLFxuXHRcdGN5YW46IFszNiwgMzldLFxuXHRcdHdoaXRlOiBbMzcsIDM5XSxcblxuXHRcdC8vIEJyaWdodCBjb2xvclxuXHRcdGJsYWNrQnJpZ2h0OiBbOTAsIDM5XSxcblx0XHRncmF5OiBbOTAsIDM5XSwgLy8gQWxpYXMgb2YgYGJsYWNrQnJpZ2h0YFxuXHRcdGdyZXk6IFs5MCwgMzldLCAvLyBBbGlhcyBvZiBgYmxhY2tCcmlnaHRgXG5cdFx0cmVkQnJpZ2h0OiBbOTEsIDM5XSxcblx0XHRncmVlbkJyaWdodDogWzkyLCAzOV0sXG5cdFx0eWVsbG93QnJpZ2h0OiBbOTMsIDM5XSxcblx0XHRibHVlQnJpZ2h0OiBbOTQsIDM5XSxcblx0XHRtYWdlbnRhQnJpZ2h0OiBbOTUsIDM5XSxcblx0XHRjeWFuQnJpZ2h0OiBbOTYsIDM5XSxcblx0XHR3aGl0ZUJyaWdodDogWzk3LCAzOV0sXG5cdH0sXG5cdGJnQ29sb3I6IHtcblx0XHRiZ0JsYWNrOiBbNDAsIDQ5XSxcblx0XHRiZ1JlZDogWzQxLCA0OV0sXG5cdFx0YmdHcmVlbjogWzQyLCA0OV0sXG5cdFx0YmdZZWxsb3c6IFs0MywgNDldLFxuXHRcdGJnQmx1ZTogWzQ0LCA0OV0sXG5cdFx0YmdNYWdlbnRhOiBbNDUsIDQ5XSxcblx0XHRiZ0N5YW46IFs0NiwgNDldLFxuXHRcdGJnV2hpdGU6IFs0NywgNDldLFxuXG5cdFx0Ly8gQnJpZ2h0IGNvbG9yXG5cdFx0YmdCbGFja0JyaWdodDogWzEwMCwgNDldLFxuXHRcdGJnR3JheTogWzEwMCwgNDldLCAvLyBBbGlhcyBvZiBgYmdCbGFja0JyaWdodGBcblx0XHRiZ0dyZXk6IFsxMDAsIDQ5XSwgLy8gQWxpYXMgb2YgYGJnQmxhY2tCcmlnaHRgXG5cdFx0YmdSZWRCcmlnaHQ6IFsxMDEsIDQ5XSxcblx0XHRiZ0dyZWVuQnJpZ2h0OiBbMTAyLCA0OV0sXG5cdFx0YmdZZWxsb3dCcmlnaHQ6IFsxMDMsIDQ5XSxcblx0XHRiZ0JsdWVCcmlnaHQ6IFsxMDQsIDQ5XSxcblx0XHRiZ01hZ2VudGFCcmlnaHQ6IFsxMDUsIDQ5XSxcblx0XHRiZ0N5YW5CcmlnaHQ6IFsxMDYsIDQ5XSxcblx0XHRiZ1doaXRlQnJpZ2h0OiBbMTA3LCA0OV0sXG5cdH0sXG59O1xuXG5leHBvcnQgY29uc3QgbW9kaWZpZXJOYW1lcyA9IE9iamVjdC5rZXlzKHN0eWxlcy5tb2RpZmllcik7XG5leHBvcnQgY29uc3QgZm9yZWdyb3VuZENvbG9yTmFtZXMgPSBPYmplY3Qua2V5cyhzdHlsZXMuY29sb3IpO1xuZXhwb3J0IGNvbnN0IGJhY2tncm91bmRDb2xvck5hbWVzID0gT2JqZWN0LmtleXMoc3R5bGVzLmJnQ29sb3IpO1xuZXhwb3J0IGNvbnN0IGNvbG9yTmFtZXMgPSBbLi4uZm9yZWdyb3VuZENvbG9yTmFtZXMsIC4uLmJhY2tncm91bmRDb2xvck5hbWVzXTtcblxuZnVuY3Rpb24gYXNzZW1ibGVTdHlsZXMoKSB7XG5cdGNvbnN0IGNvZGVzID0gbmV3IE1hcCgpO1xuXG5cdGZvciAoY29uc3QgW2dyb3VwTmFtZSwgZ3JvdXBdIG9mIE9iamVjdC5lbnRyaWVzKHN0eWxlcykpIHtcblx0XHRmb3IgKGNvbnN0IFtzdHlsZU5hbWUsIHN0eWxlXSBvZiBPYmplY3QuZW50cmllcyhncm91cCkpIHtcblx0XHRcdHN0eWxlc1tzdHlsZU5hbWVdID0ge1xuXHRcdFx0XHRvcGVuOiBgXFx1MDAxQlske3N0eWxlWzBdfW1gLFxuXHRcdFx0XHRjbG9zZTogYFxcdTAwMUJbJHtzdHlsZVsxXX1tYCxcblx0XHRcdH07XG5cblx0XHRcdGdyb3VwW3N0eWxlTmFtZV0gPSBzdHlsZXNbc3R5bGVOYW1lXTtcblxuXHRcdFx0Y29kZXMuc2V0KHN0eWxlWzBdLCBzdHlsZVsxXSk7XG5cdFx0fVxuXG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHN0eWxlcywgZ3JvdXBOYW1lLCB7XG5cdFx0XHR2YWx1ZTogZ3JvdXAsXG5cdFx0XHRlbnVtZXJhYmxlOiBmYWxzZSxcblx0XHR9KTtcblx0fVxuXG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzdHlsZXMsICdjb2RlcycsIHtcblx0XHR2YWx1ZTogY29kZXMsXG5cdFx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdH0pO1xuXG5cdHN0eWxlcy5jb2xvci5jbG9zZSA9ICdcXHUwMDFCWzM5bSc7XG5cdHN0eWxlcy5iZ0NvbG9yLmNsb3NlID0gJ1xcdTAwMUJbNDltJztcblxuXHRzdHlsZXMuY29sb3IuYW5zaSA9IHdyYXBBbnNpMTYoKTtcblx0c3R5bGVzLmNvbG9yLmFuc2kyNTYgPSB3cmFwQW5zaTI1NigpO1xuXHRzdHlsZXMuY29sb3IuYW5zaTE2bSA9IHdyYXBBbnNpMTZtKCk7XG5cdHN0eWxlcy5iZ0NvbG9yLmFuc2kgPSB3cmFwQW5zaTE2KEFOU0lfQkFDS0dST1VORF9PRkZTRVQpO1xuXHRzdHlsZXMuYmdDb2xvci5hbnNpMjU2ID0gd3JhcEFuc2kyNTYoQU5TSV9CQUNLR1JPVU5EX09GRlNFVCk7XG5cdHN0eWxlcy5iZ0NvbG9yLmFuc2kxNm0gPSB3cmFwQW5zaTE2bShBTlNJX0JBQ0tHUk9VTkRfT0ZGU0VUKTtcblxuXHQvLyBGcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9RaXgtL2NvbG9yLWNvbnZlcnQvYmxvYi8zZjBlMGQ0ZTkyZTIzNTc5NmNjYjE3ZjZlODVjNzIwOTRhNjUxZjQ5L2NvbnZlcnNpb25zLmpzXG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHN0eWxlcywge1xuXHRcdHJnYlRvQW5zaTI1Njoge1xuXHRcdFx0dmFsdWUocmVkLCBncmVlbiwgYmx1ZSkge1xuXHRcdFx0XHQvLyBXZSB1c2UgdGhlIGV4dGVuZGVkIGdyZXlzY2FsZSBwYWxldHRlIGhlcmUsIHdpdGggdGhlIGV4Y2VwdGlvbiBvZlxuXHRcdFx0XHQvLyBibGFjayBhbmQgd2hpdGUuIG5vcm1hbCBwYWxldHRlIG9ubHkgaGFzIDQgZ3JleXNjYWxlIHNoYWRlcy5cblx0XHRcdFx0aWYgKHJlZCA9PT0gZ3JlZW4gJiYgZ3JlZW4gPT09IGJsdWUpIHtcblx0XHRcdFx0XHRpZiAocmVkIDwgOCkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIDE2O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGlmIChyZWQgPiAyNDgpIHtcblx0XHRcdFx0XHRcdHJldHVybiAyMzE7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0cmV0dXJuIE1hdGgucm91bmQoKChyZWQgLSA4KSAvIDI0NykgKiAyNCkgKyAyMzI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRyZXR1cm4gMTZcblx0XHRcdFx0XHQrICgzNiAqIE1hdGgucm91bmQocmVkIC8gMjU1ICogNSkpXG5cdFx0XHRcdFx0KyAoNiAqIE1hdGgucm91bmQoZ3JlZW4gLyAyNTUgKiA1KSlcblx0XHRcdFx0XHQrIE1hdGgucm91bmQoYmx1ZSAvIDI1NSAqIDUpO1xuXHRcdFx0fSxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdH0sXG5cdFx0aGV4VG9SZ2I6IHtcblx0XHRcdHZhbHVlKGhleCkge1xuXHRcdFx0XHRjb25zdCBtYXRjaGVzID0gL1thLWZcXGRdezZ9fFthLWZcXGRdezN9L2kuZXhlYyhoZXgudG9TdHJpbmcoMTYpKTtcblx0XHRcdFx0aWYgKCFtYXRjaGVzKSB7XG5cdFx0XHRcdFx0cmV0dXJuIFswLCAwLCAwXTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGxldCBbY29sb3JTdHJpbmddID0gbWF0Y2hlcztcblxuXHRcdFx0XHRpZiAoY29sb3JTdHJpbmcubGVuZ3RoID09PSAzKSB7XG5cdFx0XHRcdFx0Y29sb3JTdHJpbmcgPSBbLi4uY29sb3JTdHJpbmddLm1hcChjaGFyYWN0ZXIgPT4gY2hhcmFjdGVyICsgY2hhcmFjdGVyKS5qb2luKCcnKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGNvbnN0IGludGVnZXIgPSBOdW1iZXIucGFyc2VJbnQoY29sb3JTdHJpbmcsIDE2KTtcblxuXHRcdFx0XHRyZXR1cm4gW1xuXHRcdFx0XHRcdC8qIGVzbGludC1kaXNhYmxlIG5vLWJpdHdpc2UgKi9cblx0XHRcdFx0XHQoaW50ZWdlciA+PiAxNikgJiAweEZGLFxuXHRcdFx0XHRcdChpbnRlZ2VyID4+IDgpICYgMHhGRixcblx0XHRcdFx0XHRpbnRlZ2VyICYgMHhGRixcblx0XHRcdFx0XHQvKiBlc2xpbnQtZW5hYmxlIG5vLWJpdHdpc2UgKi9cblx0XHRcdFx0XTtcblx0XHRcdH0sXG5cdFx0XHRlbnVtZXJhYmxlOiBmYWxzZSxcblx0XHR9LFxuXHRcdGhleFRvQW5zaTI1Njoge1xuXHRcdFx0dmFsdWU6IGhleCA9PiBzdHlsZXMucmdiVG9BbnNpMjU2KC4uLnN0eWxlcy5oZXhUb1JnYihoZXgpKSxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdH0sXG5cdFx0YW5zaTI1NlRvQW5zaToge1xuXHRcdFx0dmFsdWUoY29kZSkge1xuXHRcdFx0XHRpZiAoY29kZSA8IDgpIHtcblx0XHRcdFx0XHRyZXR1cm4gMzAgKyBjb2RlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKGNvZGUgPCAxNikge1xuXHRcdFx0XHRcdHJldHVybiA5MCArIChjb2RlIC0gOCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRsZXQgcmVkO1xuXHRcdFx0XHRsZXQgZ3JlZW47XG5cdFx0XHRcdGxldCBibHVlO1xuXG5cdFx0XHRcdGlmIChjb2RlID49IDIzMikge1xuXHRcdFx0XHRcdHJlZCA9ICgoKGNvZGUgLSAyMzIpICogMTApICsgOCkgLyAyNTU7XG5cdFx0XHRcdFx0Z3JlZW4gPSByZWQ7XG5cdFx0XHRcdFx0Ymx1ZSA9IHJlZDtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRjb2RlIC09IDE2O1xuXG5cdFx0XHRcdFx0Y29uc3QgcmVtYWluZGVyID0gY29kZSAlIDM2O1xuXG5cdFx0XHRcdFx0cmVkID0gTWF0aC5mbG9vcihjb2RlIC8gMzYpIC8gNTtcblx0XHRcdFx0XHRncmVlbiA9IE1hdGguZmxvb3IocmVtYWluZGVyIC8gNikgLyA1O1xuXHRcdFx0XHRcdGJsdWUgPSAocmVtYWluZGVyICUgNikgLyA1O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgdmFsdWUgPSBNYXRoLm1heChyZWQsIGdyZWVuLCBibHVlKSAqIDI7XG5cblx0XHRcdFx0aWYgKHZhbHVlID09PSAwKSB7XG5cdFx0XHRcdFx0cmV0dXJuIDMwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWJpdHdpc2Vcblx0XHRcdFx0bGV0IHJlc3VsdCA9IDMwICsgKChNYXRoLnJvdW5kKGJsdWUpIDw8IDIpIHwgKE1hdGgucm91bmQoZ3JlZW4pIDw8IDEpIHwgTWF0aC5yb3VuZChyZWQpKTtcblxuXHRcdFx0XHRpZiAodmFsdWUgPT09IDIpIHtcblx0XHRcdFx0XHRyZXN1bHQgKz0gNjA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRyZXR1cm4gcmVzdWx0O1xuXHRcdFx0fSxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdH0sXG5cdFx0cmdiVG9BbnNpOiB7XG5cdFx0XHR2YWx1ZTogKHJlZCwgZ3JlZW4sIGJsdWUpID0+IHN0eWxlcy5hbnNpMjU2VG9BbnNpKHN0eWxlcy5yZ2JUb0Fuc2kyNTYocmVkLCBncmVlbiwgYmx1ZSkpLFxuXHRcdFx0ZW51bWVyYWJsZTogZmFsc2UsXG5cdFx0fSxcblx0XHRoZXhUb0Fuc2k6IHtcblx0XHRcdHZhbHVlOiBoZXggPT4gc3R5bGVzLmFuc2kyNTZUb0Fuc2koc3R5bGVzLmhleFRvQW5zaTI1NihoZXgpKSxcblx0XHRcdGVudW1lcmFibGU6IGZhbHNlLFxuXHRcdH0sXG5cdH0pO1xuXG5cdHJldHVybiBzdHlsZXM7XG59XG5cbmNvbnN0IGFuc2lTdHlsZXMgPSBhc3NlbWJsZVN0eWxlcygpO1xuXG5leHBvcnQgZGVmYXVsdCBhbnNpU3R5bGVzO1xuIiwgImltcG9ydCBwcm9jZXNzIGZyb20gJ25vZGU6cHJvY2Vzcyc7XG5pbXBvcnQgb3MgZnJvbSAnbm9kZTpvcyc7XG5pbXBvcnQgdHR5IGZyb20gJ25vZGU6dHR5JztcblxuLy8gRnJvbTogaHR0cHM6Ly9naXRodWIuY29tL3NpbmRyZXNvcmh1cy9oYXMtZmxhZy9ibG9iL21haW4vaW5kZXguanNcbi8vLyBmdW5jdGlvbiBoYXNGbGFnKGZsYWcsIGFyZ3YgPSBnbG9iYWxUaGlzLkRlbm8/LmFyZ3MgPz8gcHJvY2Vzcy5hcmd2KSB7XG5mdW5jdGlvbiBoYXNGbGFnKGZsYWcsIGFyZ3YgPSBnbG9iYWxUaGlzLkRlbm8gPyBnbG9iYWxUaGlzLkRlbm8uYXJncyA6IHByb2Nlc3MuYXJndikge1xuXHRjb25zdCBwcmVmaXggPSBmbGFnLnN0YXJ0c1dpdGgoJy0nKSA/ICcnIDogKGZsYWcubGVuZ3RoID09PSAxID8gJy0nIDogJy0tJyk7XG5cdGNvbnN0IHBvc2l0aW9uID0gYXJndi5pbmRleE9mKHByZWZpeCArIGZsYWcpO1xuXHRjb25zdCB0ZXJtaW5hdG9yUG9zaXRpb24gPSBhcmd2LmluZGV4T2YoJy0tJyk7XG5cdHJldHVybiBwb3NpdGlvbiAhPT0gLTEgJiYgKHRlcm1pbmF0b3JQb3NpdGlvbiA9PT0gLTEgfHwgcG9zaXRpb24gPCB0ZXJtaW5hdG9yUG9zaXRpb24pO1xufVxuXG5jb25zdCB7ZW52fSA9IHByb2Nlc3M7XG5cbmxldCBmbGFnRm9yY2VDb2xvcjtcbmlmIChcblx0aGFzRmxhZygnbm8tY29sb3InKVxuXHR8fCBoYXNGbGFnKCduby1jb2xvcnMnKVxuXHR8fCBoYXNGbGFnKCdjb2xvcj1mYWxzZScpXG5cdHx8IGhhc0ZsYWcoJ2NvbG9yPW5ldmVyJylcbikge1xuXHRmbGFnRm9yY2VDb2xvciA9IDA7XG59IGVsc2UgaWYgKFxuXHRoYXNGbGFnKCdjb2xvcicpXG5cdHx8IGhhc0ZsYWcoJ2NvbG9ycycpXG5cdHx8IGhhc0ZsYWcoJ2NvbG9yPXRydWUnKVxuXHR8fCBoYXNGbGFnKCdjb2xvcj1hbHdheXMnKVxuKSB7XG5cdGZsYWdGb3JjZUNvbG9yID0gMTtcbn1cblxuZnVuY3Rpb24gZW52Rm9yY2VDb2xvcigpIHtcblx0aWYgKCdGT1JDRV9DT0xPUicgaW4gZW52KSB7XG5cdFx0aWYgKGVudi5GT1JDRV9DT0xPUiA9PT0gJ3RydWUnKSB7XG5cdFx0XHRyZXR1cm4gMTtcblx0XHR9XG5cblx0XHRpZiAoZW52LkZPUkNFX0NPTE9SID09PSAnZmFsc2UnKSB7XG5cdFx0XHRyZXR1cm4gMDtcblx0XHR9XG5cblx0XHRyZXR1cm4gZW52LkZPUkNFX0NPTE9SLmxlbmd0aCA9PT0gMCA/IDEgOiBNYXRoLm1pbihOdW1iZXIucGFyc2VJbnQoZW52LkZPUkNFX0NPTE9SLCAxMCksIDMpO1xuXHR9XG59XG5cbmZ1bmN0aW9uIHRyYW5zbGF0ZUxldmVsKGxldmVsKSB7XG5cdGlmIChsZXZlbCA9PT0gMCkge1xuXHRcdHJldHVybiBmYWxzZTtcblx0fVxuXG5cdHJldHVybiB7XG5cdFx0bGV2ZWwsXG5cdFx0aGFzQmFzaWM6IHRydWUsXG5cdFx0aGFzMjU2OiBsZXZlbCA+PSAyLFxuXHRcdGhhczE2bTogbGV2ZWwgPj0gMyxcblx0fTtcbn1cblxuZnVuY3Rpb24gX3N1cHBvcnRzQ29sb3IoaGF2ZVN0cmVhbSwge3N0cmVhbUlzVFRZLCBzbmlmZkZsYWdzID0gdHJ1ZX0gPSB7fSkge1xuXHRjb25zdCBub0ZsYWdGb3JjZUNvbG9yID0gZW52Rm9yY2VDb2xvcigpO1xuXHRpZiAobm9GbGFnRm9yY2VDb2xvciAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0ZmxhZ0ZvcmNlQ29sb3IgPSBub0ZsYWdGb3JjZUNvbG9yO1xuXHR9XG5cblx0Y29uc3QgZm9yY2VDb2xvciA9IHNuaWZmRmxhZ3MgPyBmbGFnRm9yY2VDb2xvciA6IG5vRmxhZ0ZvcmNlQ29sb3I7XG5cblx0aWYgKGZvcmNlQ29sb3IgPT09IDApIHtcblx0XHRyZXR1cm4gMDtcblx0fVxuXG5cdGlmIChzbmlmZkZsYWdzKSB7XG5cdFx0aWYgKGhhc0ZsYWcoJ2NvbG9yPTE2bScpXG5cdFx0XHR8fCBoYXNGbGFnKCdjb2xvcj1mdWxsJylcblx0XHRcdHx8IGhhc0ZsYWcoJ2NvbG9yPXRydWVjb2xvcicpKSB7XG5cdFx0XHRyZXR1cm4gMztcblx0XHR9XG5cblx0XHRpZiAoaGFzRmxhZygnY29sb3I9MjU2JykpIHtcblx0XHRcdHJldHVybiAyO1xuXHRcdH1cblx0fVxuXG5cdC8vIENoZWNrIGZvciBBenVyZSBEZXZPcHMgcGlwZWxpbmVzLlxuXHQvLyBIYXMgdG8gYmUgYWJvdmUgdGhlIGAhc3RyZWFtSXNUVFlgIGNoZWNrLlxuXHRpZiAoJ1RGX0JVSUxEJyBpbiBlbnYgJiYgJ0FHRU5UX05BTUUnIGluIGVudikge1xuXHRcdHJldHVybiAxO1xuXHR9XG5cblx0aWYgKGhhdmVTdHJlYW0gJiYgIXN0cmVhbUlzVFRZICYmIGZvcmNlQ29sb3IgPT09IHVuZGVmaW5lZCkge1xuXHRcdHJldHVybiAwO1xuXHR9XG5cblx0Y29uc3QgbWluID0gZm9yY2VDb2xvciB8fCAwO1xuXG5cdGlmIChlbnYuVEVSTSA9PT0gJ2R1bWInKSB7XG5cdFx0cmV0dXJuIG1pbjtcblx0fVxuXG5cdGlmIChwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInKSB7XG5cdFx0Ly8gV2luZG93cyAxMCBidWlsZCAxMDU4NiBpcyB0aGUgZmlyc3QgV2luZG93cyByZWxlYXNlIHRoYXQgc3VwcG9ydHMgMjU2IGNvbG9ycy5cblx0XHQvLyBXaW5kb3dzIDEwIGJ1aWxkIDE0OTMxIGlzIHRoZSBmaXJzdCByZWxlYXNlIHRoYXQgc3VwcG9ydHMgMTZtL1RydWVDb2xvci5cblx0XHRjb25zdCBvc1JlbGVhc2UgPSBvcy5yZWxlYXNlKCkuc3BsaXQoJy4nKTtcblx0XHRpZiAoXG5cdFx0XHROdW1iZXIob3NSZWxlYXNlWzBdKSA+PSAxMFxuXHRcdFx0JiYgTnVtYmVyKG9zUmVsZWFzZVsyXSkgPj0gMTBfNTg2XG5cdFx0KSB7XG5cdFx0XHRyZXR1cm4gTnVtYmVyKG9zUmVsZWFzZVsyXSkgPj0gMTRfOTMxID8gMyA6IDI7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIDE7XG5cdH1cblxuXHRpZiAoJ0NJJyBpbiBlbnYpIHtcblx0XHRpZiAoWydHSVRIVUJfQUNUSU9OUycsICdHSVRFQV9BQ1RJT05TJywgJ0NJUkNMRUNJJ10uc29tZShrZXkgPT4ga2V5IGluIGVudikpIHtcblx0XHRcdHJldHVybiAzO1xuXHRcdH1cblxuXHRcdGlmIChbJ1RSQVZJUycsICdBUFBWRVlPUicsICdHSVRMQUJfQ0knLCAnQlVJTERLSVRFJywgJ0RST05FJ10uc29tZShzaWduID0+IHNpZ24gaW4gZW52KSB8fCBlbnYuQ0lfTkFNRSA9PT0gJ2NvZGVzaGlwJykge1xuXHRcdFx0cmV0dXJuIDE7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIG1pbjtcblx0fVxuXG5cdGlmICgnVEVBTUNJVFlfVkVSU0lPTicgaW4gZW52KSB7XG5cdFx0cmV0dXJuIC9eKDlcXC4oMCpbMS05XVxcZCopXFwufFxcZHsyLH1cXC4pLy50ZXN0KGVudi5URUFNQ0lUWV9WRVJTSU9OKSA/IDEgOiAwO1xuXHR9XG5cblx0aWYgKGVudi5DT0xPUlRFUk0gPT09ICd0cnVlY29sb3InKSB7XG5cdFx0cmV0dXJuIDM7XG5cdH1cblxuXHRpZiAoZW52LlRFUk0gPT09ICd4dGVybS1raXR0eScpIHtcblx0XHRyZXR1cm4gMztcblx0fVxuXG5cdGlmIChlbnYuVEVSTSA9PT0gJ3h0ZXJtLWdob3N0dHknKSB7XG5cdFx0cmV0dXJuIDM7XG5cdH1cblxuXHRpZiAoZW52LlRFUk0gPT09ICd3ZXp0ZXJtJykge1xuXHRcdHJldHVybiAzO1xuXHR9XG5cblx0aWYgKCdURVJNX1BST0dSQU0nIGluIGVudikge1xuXHRcdGNvbnN0IHZlcnNpb24gPSBOdW1iZXIucGFyc2VJbnQoKGVudi5URVJNX1BST0dSQU1fVkVSU0lPTiB8fCAnJykuc3BsaXQoJy4nKVswXSwgMTApO1xuXG5cdFx0c3dpdGNoIChlbnYuVEVSTV9QUk9HUkFNKSB7XG5cdFx0XHRjYXNlICdpVGVybS5hcHAnOiB7XG5cdFx0XHRcdHJldHVybiB2ZXJzaW9uID49IDMgPyAzIDogMjtcblx0XHRcdH1cblxuXHRcdFx0Y2FzZSAnQXBwbGVfVGVybWluYWwnOiB7XG5cdFx0XHRcdHJldHVybiAyO1xuXHRcdFx0fVxuXHRcdFx0Ly8gTm8gZGVmYXVsdFxuXHRcdH1cblx0fVxuXG5cdGlmICgvLTI1Nihjb2xvcik/JC9pLnRlc3QoZW52LlRFUk0pKSB7XG5cdFx0cmV0dXJuIDI7XG5cdH1cblxuXHRpZiAoL15zY3JlZW58Xnh0ZXJtfF52dDEwMHxednQyMjB8XnJ4dnR8Y29sb3J8YW5zaXxjeWd3aW58bGludXgvaS50ZXN0KGVudi5URVJNKSkge1xuXHRcdHJldHVybiAxO1xuXHR9XG5cblx0aWYgKCdDT0xPUlRFUk0nIGluIGVudikge1xuXHRcdHJldHVybiAxO1xuXHR9XG5cblx0cmV0dXJuIG1pbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVN1cHBvcnRzQ29sb3Ioc3RyZWFtLCBvcHRpb25zID0ge30pIHtcblx0Y29uc3QgbGV2ZWwgPSBfc3VwcG9ydHNDb2xvcihzdHJlYW0sIHtcblx0XHRzdHJlYW1Jc1RUWTogc3RyZWFtICYmIHN0cmVhbS5pc1RUWSxcblx0XHQuLi5vcHRpb25zLFxuXHR9KTtcblxuXHRyZXR1cm4gdHJhbnNsYXRlTGV2ZWwobGV2ZWwpO1xufVxuXG5jb25zdCBzdXBwb3J0c0NvbG9yID0ge1xuXHRzdGRvdXQ6IGNyZWF0ZVN1cHBvcnRzQ29sb3Ioe2lzVFRZOiB0dHkuaXNhdHR5KDEpfSksXG5cdHN0ZGVycjogY3JlYXRlU3VwcG9ydHNDb2xvcih7aXNUVFk6IHR0eS5pc2F0dHkoMil9KSxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IHN1cHBvcnRzQ29sb3I7XG4iLCAiLy8gVE9ETzogV2hlbiB0YXJnZXRpbmcgTm9kZS5qcyAxNiwgdXNlIGBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2VBbGxgLlxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZ1JlcGxhY2VBbGwoc3RyaW5nLCBzdWJzdHJpbmcsIHJlcGxhY2VyKSB7XG5cdGxldCBpbmRleCA9IHN0cmluZy5pbmRleE9mKHN1YnN0cmluZyk7XG5cdGlmIChpbmRleCA9PT0gLTEpIHtcblx0XHRyZXR1cm4gc3RyaW5nO1xuXHR9XG5cblx0Y29uc3Qgc3Vic3RyaW5nTGVuZ3RoID0gc3Vic3RyaW5nLmxlbmd0aDtcblx0bGV0IGVuZEluZGV4ID0gMDtcblx0bGV0IHJldHVyblZhbHVlID0gJyc7XG5cdGRvIHtcblx0XHRyZXR1cm5WYWx1ZSArPSBzdHJpbmcuc2xpY2UoZW5kSW5kZXgsIGluZGV4KSArIHN1YnN0cmluZyArIHJlcGxhY2VyO1xuXHRcdGVuZEluZGV4ID0gaW5kZXggKyBzdWJzdHJpbmdMZW5ndGg7XG5cdFx0aW5kZXggPSBzdHJpbmcuaW5kZXhPZihzdWJzdHJpbmcsIGVuZEluZGV4KTtcblx0fSB3aGlsZSAoaW5kZXggIT09IC0xKTtcblxuXHRyZXR1cm5WYWx1ZSArPSBzdHJpbmcuc2xpY2UoZW5kSW5kZXgpO1xuXHRyZXR1cm4gcmV0dXJuVmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdFbmNhc2VDUkxGV2l0aEZpcnN0SW5kZXgoc3RyaW5nLCBwcmVmaXgsIHBvc3RmaXgsIGluZGV4KSB7XG5cdGxldCBlbmRJbmRleCA9IDA7XG5cdGxldCByZXR1cm5WYWx1ZSA9ICcnO1xuXHRkbyB7XG5cdFx0Y29uc3QgZ290Q1IgPSBzdHJpbmdbaW5kZXggLSAxXSA9PT0gJ1xccic7XG5cdFx0cmV0dXJuVmFsdWUgKz0gc3RyaW5nLnNsaWNlKGVuZEluZGV4LCAoZ290Q1IgPyBpbmRleCAtIDEgOiBpbmRleCkpICsgcHJlZml4ICsgKGdvdENSID8gJ1xcclxcbicgOiAnXFxuJykgKyBwb3N0Zml4O1xuXHRcdGVuZEluZGV4ID0gaW5kZXggKyAxO1xuXHRcdGluZGV4ID0gc3RyaW5nLmluZGV4T2YoJ1xcbicsIGVuZEluZGV4KTtcblx0fSB3aGlsZSAoaW5kZXggIT09IC0xKTtcblxuXHRyZXR1cm5WYWx1ZSArPSBzdHJpbmcuc2xpY2UoZW5kSW5kZXgpO1xuXHRyZXR1cm4gcmV0dXJuVmFsdWU7XG59XG4iLCAiaW1wb3J0IGFuc2lTdHlsZXMgZnJvbSAnI2Fuc2ktc3R5bGVzJztcbmltcG9ydCBzdXBwb3J0c0NvbG9yIGZyb20gJyNzdXBwb3J0cy1jb2xvcic7XG5pbXBvcnQgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIGltcG9ydC9vcmRlclxuXHRzdHJpbmdSZXBsYWNlQWxsLFxuXHRzdHJpbmdFbmNhc2VDUkxGV2l0aEZpcnN0SW5kZXgsXG59IGZyb20gJy4vdXRpbGl0aWVzLmpzJztcblxuY29uc3Qge3N0ZG91dDogc3Rkb3V0Q29sb3IsIHN0ZGVycjogc3RkZXJyQ29sb3J9ID0gc3VwcG9ydHNDb2xvcjtcblxuY29uc3QgR0VORVJBVE9SID0gU3ltYm9sKCdHRU5FUkFUT1InKTtcbmNvbnN0IFNUWUxFUiA9IFN5bWJvbCgnU1RZTEVSJyk7XG5jb25zdCBJU19FTVBUWSA9IFN5bWJvbCgnSVNfRU1QVFknKTtcblxuLy8gYHN1cHBvcnRzQ29sb3IubGV2ZWxgIFx1MjE5MiBgYW5zaVN0eWxlcy5jb2xvcltuYW1lXWAgbWFwcGluZ1xuY29uc3QgbGV2ZWxNYXBwaW5nID0gW1xuXHQnYW5zaScsXG5cdCdhbnNpJyxcblx0J2Fuc2kyNTYnLFxuXHQnYW5zaTE2bScsXG5dO1xuXG5jb25zdCBzdHlsZXMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuXG5jb25zdCBhcHBseU9wdGlvbnMgPSAob2JqZWN0LCBvcHRpb25zID0ge30pID0+IHtcblx0aWYgKG9wdGlvbnMubGV2ZWwgJiYgIShOdW1iZXIuaXNJbnRlZ2VyKG9wdGlvbnMubGV2ZWwpICYmIG9wdGlvbnMubGV2ZWwgPj0gMCAmJiBvcHRpb25zLmxldmVsIDw9IDMpKSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKCdUaGUgYGxldmVsYCBvcHRpb24gc2hvdWxkIGJlIGFuIGludGVnZXIgZnJvbSAwIHRvIDMnKTtcblx0fVxuXG5cdC8vIERldGVjdCBsZXZlbCBpZiBub3Qgc2V0IG1hbnVhbGx5XG5cdGNvbnN0IGNvbG9yTGV2ZWwgPSBzdGRvdXRDb2xvciA/IHN0ZG91dENvbG9yLmxldmVsIDogMDtcblx0b2JqZWN0LmxldmVsID0gb3B0aW9ucy5sZXZlbCA9PT0gdW5kZWZpbmVkID8gY29sb3JMZXZlbCA6IG9wdGlvbnMubGV2ZWw7XG59O1xuXG5leHBvcnQgY2xhc3MgQ2hhbGsge1xuXHRjb25zdHJ1Y3RvcihvcHRpb25zKSB7XG5cdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnN0cnVjdG9yLXJldHVyblxuXHRcdHJldHVybiBjaGFsa0ZhY3Rvcnkob3B0aW9ucyk7XG5cdH1cbn1cblxuY29uc3QgY2hhbGtGYWN0b3J5ID0gb3B0aW9ucyA9PiB7XG5cdGNvbnN0IGNoYWxrID0gKC4uLnN0cmluZ3MpID0+IHN0cmluZ3Muam9pbignICcpO1xuXHRhcHBseU9wdGlvbnMoY2hhbGssIG9wdGlvbnMpO1xuXG5cdE9iamVjdC5zZXRQcm90b3R5cGVPZihjaGFsaywgY3JlYXRlQ2hhbGsucHJvdG90eXBlKTtcblxuXHRyZXR1cm4gY2hhbGs7XG59O1xuXG5mdW5jdGlvbiBjcmVhdGVDaGFsayhvcHRpb25zKSB7XG5cdHJldHVybiBjaGFsa0ZhY3Rvcnkob3B0aW9ucyk7XG59XG5cbk9iamVjdC5zZXRQcm90b3R5cGVPZihjcmVhdGVDaGFsay5wcm90b3R5cGUsIEZ1bmN0aW9uLnByb3RvdHlwZSk7XG5cbmZvciAoY29uc3QgW3N0eWxlTmFtZSwgc3R5bGVdIG9mIE9iamVjdC5lbnRyaWVzKGFuc2lTdHlsZXMpKSB7XG5cdHN0eWxlc1tzdHlsZU5hbWVdID0ge1xuXHRcdGdldCgpIHtcblx0XHRcdGNvbnN0IGJ1aWxkZXIgPSBjcmVhdGVCdWlsZGVyKHRoaXMsIGNyZWF0ZVN0eWxlcihzdHlsZS5vcGVuLCBzdHlsZS5jbG9zZSwgdGhpc1tTVFlMRVJdKSwgdGhpc1tJU19FTVBUWV0pO1xuXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIHN0eWxlTmFtZSwge3ZhbHVlOiBidWlsZGVyfSk7XG5cdFx0XHRyZXR1cm4gYnVpbGRlcjtcblx0XHR9LFxuXHR9O1xufVxuXG5zdHlsZXMudmlzaWJsZSA9IHtcblx0Z2V0KCkge1xuXHRcdGNvbnN0IGJ1aWxkZXIgPSBjcmVhdGVCdWlsZGVyKHRoaXMsIHRoaXNbU1RZTEVSXSwgdHJ1ZSk7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICd2aXNpYmxlJywge3ZhbHVlOiBidWlsZGVyfSk7XG5cdFx0cmV0dXJuIGJ1aWxkZXI7XG5cdH0sXG59O1xuXG5jb25zdCBnZXRNb2RlbEFuc2kgPSAobW9kZWwsIGxldmVsLCB0eXBlLCAuLi5hcmd1bWVudHNfKSA9PiB7XG5cdGlmIChtb2RlbCA9PT0gJ3JnYicpIHtcblx0XHRpZiAobGV2ZWwgPT09ICdhbnNpMTZtJykge1xuXHRcdFx0cmV0dXJuIGFuc2lTdHlsZXNbdHlwZV0uYW5zaTE2bSguLi5hcmd1bWVudHNfKTtcblx0XHR9XG5cblx0XHRpZiAobGV2ZWwgPT09ICdhbnNpMjU2Jykge1xuXHRcdFx0cmV0dXJuIGFuc2lTdHlsZXNbdHlwZV0uYW5zaTI1NihhbnNpU3R5bGVzLnJnYlRvQW5zaTI1NiguLi5hcmd1bWVudHNfKSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIGFuc2lTdHlsZXNbdHlwZV0uYW5zaShhbnNpU3R5bGVzLnJnYlRvQW5zaSguLi5hcmd1bWVudHNfKSk7XG5cdH1cblxuXHRpZiAobW9kZWwgPT09ICdoZXgnKSB7XG5cdFx0cmV0dXJuIGdldE1vZGVsQW5zaSgncmdiJywgbGV2ZWwsIHR5cGUsIC4uLmFuc2lTdHlsZXMuaGV4VG9SZ2IoLi4uYXJndW1lbnRzXykpO1xuXHR9XG5cblx0cmV0dXJuIGFuc2lTdHlsZXNbdHlwZV1bbW9kZWxdKC4uLmFyZ3VtZW50c18pO1xufTtcblxuY29uc3QgdXNlZE1vZGVscyA9IFsncmdiJywgJ2hleCcsICdhbnNpMjU2J107XG5cbmZvciAoY29uc3QgbW9kZWwgb2YgdXNlZE1vZGVscykge1xuXHRzdHlsZXNbbW9kZWxdID0ge1xuXHRcdGdldCgpIHtcblx0XHRcdGNvbnN0IHtsZXZlbH0gPSB0aGlzO1xuXHRcdFx0cmV0dXJuIGZ1bmN0aW9uICguLi5hcmd1bWVudHNfKSB7XG5cdFx0XHRcdGNvbnN0IHN0eWxlciA9IGNyZWF0ZVN0eWxlcihnZXRNb2RlbEFuc2kobW9kZWwsIGxldmVsTWFwcGluZ1tsZXZlbF0sICdjb2xvcicsIC4uLmFyZ3VtZW50c18pLCBhbnNpU3R5bGVzLmNvbG9yLmNsb3NlLCB0aGlzW1NUWUxFUl0pO1xuXHRcdFx0XHRyZXR1cm4gY3JlYXRlQnVpbGRlcih0aGlzLCBzdHlsZXIsIHRoaXNbSVNfRU1QVFldKTtcblx0XHRcdH07XG5cdFx0fSxcblx0fTtcblxuXHRjb25zdCBiZ01vZGVsID0gJ2JnJyArIG1vZGVsWzBdLnRvVXBwZXJDYXNlKCkgKyBtb2RlbC5zbGljZSgxKTtcblx0c3R5bGVzW2JnTW9kZWxdID0ge1xuXHRcdGdldCgpIHtcblx0XHRcdGNvbnN0IHtsZXZlbH0gPSB0aGlzO1xuXHRcdFx0cmV0dXJuIGZ1bmN0aW9uICguLi5hcmd1bWVudHNfKSB7XG5cdFx0XHRcdGNvbnN0IHN0eWxlciA9IGNyZWF0ZVN0eWxlcihnZXRNb2RlbEFuc2kobW9kZWwsIGxldmVsTWFwcGluZ1tsZXZlbF0sICdiZ0NvbG9yJywgLi4uYXJndW1lbnRzXyksIGFuc2lTdHlsZXMuYmdDb2xvci5jbG9zZSwgdGhpc1tTVFlMRVJdKTtcblx0XHRcdFx0cmV0dXJuIGNyZWF0ZUJ1aWxkZXIodGhpcywgc3R5bGVyLCB0aGlzW0lTX0VNUFRZXSk7XG5cdFx0XHR9O1xuXHRcdH0sXG5cdH07XG59XG5cbmNvbnN0IHByb3RvID0gT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoKCkgPT4ge30sIHtcblx0Li4uc3R5bGVzLFxuXHRsZXZlbDoge1xuXHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0Z2V0KCkge1xuXHRcdFx0cmV0dXJuIHRoaXNbR0VORVJBVE9SXS5sZXZlbDtcblx0XHR9LFxuXHRcdHNldChsZXZlbCkge1xuXHRcdFx0dGhpc1tHRU5FUkFUT1JdLmxldmVsID0gbGV2ZWw7XG5cdFx0fSxcblx0fSxcbn0pO1xuXG5jb25zdCBjcmVhdGVTdHlsZXIgPSAob3BlbiwgY2xvc2UsIHBhcmVudCkgPT4ge1xuXHRsZXQgb3BlbkFsbDtcblx0bGV0IGNsb3NlQWxsO1xuXHRpZiAocGFyZW50ID09PSB1bmRlZmluZWQpIHtcblx0XHRvcGVuQWxsID0gb3Blbjtcblx0XHRjbG9zZUFsbCA9IGNsb3NlO1xuXHR9IGVsc2Uge1xuXHRcdG9wZW5BbGwgPSBwYXJlbnQub3BlbkFsbCArIG9wZW47XG5cdFx0Y2xvc2VBbGwgPSBjbG9zZSArIHBhcmVudC5jbG9zZUFsbDtcblx0fVxuXG5cdHJldHVybiB7XG5cdFx0b3Blbixcblx0XHRjbG9zZSxcblx0XHRvcGVuQWxsLFxuXHRcdGNsb3NlQWxsLFxuXHRcdHBhcmVudCxcblx0fTtcbn07XG5cbmNvbnN0IGNyZWF0ZUJ1aWxkZXIgPSAoc2VsZiwgX3N0eWxlciwgX2lzRW1wdHkpID0+IHtcblx0Ly8gU2luZ2xlIGFyZ3VtZW50IGlzIGhvdCBwYXRoLCBpbXBsaWNpdCBjb2VyY2lvbiBpcyBmYXN0ZXIgdGhhbiBhbnl0aGluZ1xuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8taW1wbGljaXQtY29lcmNpb25cblx0Y29uc3QgYnVpbGRlciA9ICguLi5hcmd1bWVudHNfKSA9PiBhcHBseVN0eWxlKGJ1aWxkZXIsIChhcmd1bWVudHNfLmxlbmd0aCA9PT0gMSkgPyAoJycgKyBhcmd1bWVudHNfWzBdKSA6IGFyZ3VtZW50c18uam9pbignICcpKTtcblxuXHQvLyBXZSBhbHRlciB0aGUgcHJvdG90eXBlIGJlY2F1c2Ugd2UgbXVzdCByZXR1cm4gYSBmdW5jdGlvbiwgYnV0IHRoZXJlIGlzXG5cdC8vIG5vIHdheSB0byBjcmVhdGUgYSBmdW5jdGlvbiB3aXRoIGEgZGlmZmVyZW50IHByb3RvdHlwZVxuXHRPYmplY3Quc2V0UHJvdG90eXBlT2YoYnVpbGRlciwgcHJvdG8pO1xuXG5cdGJ1aWxkZXJbR0VORVJBVE9SXSA9IHNlbGY7XG5cdGJ1aWxkZXJbU1RZTEVSXSA9IF9zdHlsZXI7XG5cdGJ1aWxkZXJbSVNfRU1QVFldID0gX2lzRW1wdHk7XG5cblx0cmV0dXJuIGJ1aWxkZXI7XG59O1xuXG5jb25zdCBhcHBseVN0eWxlID0gKHNlbGYsIHN0cmluZykgPT4ge1xuXHRpZiAoc2VsZi5sZXZlbCA8PSAwIHx8ICFzdHJpbmcpIHtcblx0XHRyZXR1cm4gc2VsZltJU19FTVBUWV0gPyAnJyA6IHN0cmluZztcblx0fVxuXG5cdGxldCBzdHlsZXIgPSBzZWxmW1NUWUxFUl07XG5cblx0aWYgKHN0eWxlciA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIHN0cmluZztcblx0fVxuXG5cdGNvbnN0IHtvcGVuQWxsLCBjbG9zZUFsbH0gPSBzdHlsZXI7XG5cdGlmIChzdHJpbmcuaW5jbHVkZXMoJ1xcdTAwMUInKSkge1xuXHRcdHdoaWxlIChzdHlsZXIgIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0Ly8gUmVwbGFjZSBhbnkgaW5zdGFuY2VzIGFscmVhZHkgcHJlc2VudCB3aXRoIGEgcmUtb3BlbmluZyBjb2RlXG5cdFx0XHQvLyBvdGhlcndpc2Ugb25seSB0aGUgcGFydCBvZiB0aGUgc3RyaW5nIHVudGlsIHNhaWQgY2xvc2luZyBjb2RlXG5cdFx0XHQvLyB3aWxsIGJlIGNvbG9yZWQsIGFuZCB0aGUgcmVzdCB3aWxsIHNpbXBseSBiZSAncGxhaW4nLlxuXHRcdFx0c3RyaW5nID0gc3RyaW5nUmVwbGFjZUFsbChzdHJpbmcsIHN0eWxlci5jbG9zZSwgc3R5bGVyLm9wZW4pO1xuXG5cdFx0XHRzdHlsZXIgPSBzdHlsZXIucGFyZW50O1xuXHRcdH1cblx0fVxuXG5cdC8vIFdlIGNhbiBtb3ZlIGJvdGggbmV4dCBhY3Rpb25zIG91dCBvZiBsb29wLCBiZWNhdXNlIHJlbWFpbmluZyBhY3Rpb25zIGluIGxvb3Agd29uJ3QgaGF2ZVxuXHQvLyBhbnkvdmlzaWJsZSBlZmZlY3Qgb24gcGFydHMgd2UgYWRkIGhlcmUuIENsb3NlIHRoZSBzdHlsaW5nIGJlZm9yZSBhIGxpbmVicmVhayBhbmQgcmVvcGVuXG5cdC8vIGFmdGVyIG5leHQgbGluZSB0byBmaXggYSBibGVlZCBpc3N1ZSBvbiBtYWNPUzogaHR0cHM6Ly9naXRodWIuY29tL2NoYWxrL2NoYWxrL3B1bGwvOTJcblx0Y29uc3QgbGZJbmRleCA9IHN0cmluZy5pbmRleE9mKCdcXG4nKTtcblx0aWYgKGxmSW5kZXggIT09IC0xKSB7XG5cdFx0c3RyaW5nID0gc3RyaW5nRW5jYXNlQ1JMRldpdGhGaXJzdEluZGV4KHN0cmluZywgY2xvc2VBbGwsIG9wZW5BbGwsIGxmSW5kZXgpO1xuXHR9XG5cblx0cmV0dXJuIG9wZW5BbGwgKyBzdHJpbmcgKyBjbG9zZUFsbDtcbn07XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGNyZWF0ZUNoYWxrLnByb3RvdHlwZSwgc3R5bGVzKTtcblxuY29uc3QgY2hhbGsgPSBjcmVhdGVDaGFsaygpO1xuZXhwb3J0IGNvbnN0IGNoYWxrU3RkZXJyID0gY3JlYXRlQ2hhbGsoe2xldmVsOiBzdGRlcnJDb2xvciA/IHN0ZGVyckNvbG9yLmxldmVsIDogMH0pO1xuXG5leHBvcnQge1xuXHRtb2RpZmllck5hbWVzLFxuXHRmb3JlZ3JvdW5kQ29sb3JOYW1lcyxcblx0YmFja2dyb3VuZENvbG9yTmFtZXMsXG5cdGNvbG9yTmFtZXMsXG5cblx0Ly8gVE9ETzogUmVtb3ZlIHRoZXNlIGFsaWFzZXMgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvblxuXHRtb2RpZmllck5hbWVzIGFzIG1vZGlmaWVycyxcblx0Zm9yZWdyb3VuZENvbG9yTmFtZXMgYXMgZm9yZWdyb3VuZENvbG9ycyxcblx0YmFja2dyb3VuZENvbG9yTmFtZXMgYXMgYmFja2dyb3VuZENvbG9ycyxcblx0Y29sb3JOYW1lcyBhcyBjb2xvcnMsXG59IGZyb20gJy4vdmVuZG9yL2Fuc2ktc3R5bGVzL2luZGV4LmpzJztcblxuZXhwb3J0IHtcblx0c3Rkb3V0Q29sb3IgYXMgc3VwcG9ydHNDb2xvcixcblx0c3RkZXJyQ29sb3IgYXMgc3VwcG9ydHNDb2xvclN0ZGVycixcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNoYWxrO1xuIiwgImV4cG9ydCB0eXBlIE51bGxhYmxlPFQ+ID0gVCB8IG51bGwgfCB1bmRlZmluZWQ7XG5leHBvcnQgZnVuY3Rpb24gbm90RW1wdHkoc3RyOiBOdWxsYWJsZTxzdHJpbmc+KTogc3RyIGlzIHN0cmluZyB7XG4gIHJldHVybiB0eXBlb2Ygc3RyID09PSAnc3RyaW5nJyA/IHN0ci50cmltKCkubGVuZ3RoID4gMCA6IGZhbHNlO1xufVxuIiwgImltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSAnbm9kZTpjaGlsZF9wcm9jZXNzJztcbmltcG9ydCB7IGFjY2Vzc1N5bmMsIHJlYWRGaWxlU3luYyB9IGZyb20gJ25vZGU6ZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gJ25vZGU6dXJsJztcblxuaW1wb3J0IHR5cGUgeyBDb250ZXh0IH0gZnJvbSAnQGFjdGlvbnMvZ2l0aHViL2xpYi9jb250ZXh0LmpzJztcbmltcG9ydCB0eXBlIHsgUGFja2FnZUpzb24gfSBmcm9tICd0eXBlcy1wYWNrYWdlLWpzb24nO1xuXG5pbXBvcnQgdHlwZSBJbnB1dHMgZnJvbSAnLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi9sb2d0YXNrL2luZGV4LmpzJztcbmltcG9ydCB7IHVuaWNvZGVXb3JkTWF0Y2ggfSBmcm9tICcuL3VuaWNvZGUtd29yZC1tYXRjaC5qcyc7XG5pbXBvcnQgeyBub3RFbXB0eSwgTnVsbGFibGUgfSBmcm9tICcuL3V0aWwuanMnO1xuXG5leHBvcnQgY29uc3QgX19maWxlbmFtZSA9IGZpbGVVUkxUb1BhdGgoaW1wb3J0Lm1ldGEudXJsKTtcbmV4cG9ydCBjb25zdCBfX2Rpcm5hbWUgPSBwYXRoLmRpcm5hbWUoX19maWxlbmFtZSk7XG4vKipcbiAqIFJldHVybnMgdGhlIGlucHV0IHZhbHVlIGlmIGl0IGlzIG5vdCBlbXB0eSwgb3RoZXJ3aXNlIHJldHVybnMgdW5kZWZpbmVkLlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIGlucHV0IHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMgVGhlIGlucHV0IHZhbHVlIGlmIGl0IGlzIG5vdCBlbXB0eSwgb3RoZXJ3aXNlIHVuZGVmaW5lZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuZGVmaW5lZE9uRW1wdHkodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICghdmFsdWUgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICByZXR1cm4gdmFsdWU7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgYmFzZW5hbWUgb2YgdGhlIGdpdmVuIHBhdGguXG4gKiBAcGFyYW0gcGF0aFN0ciAtIFRoZSBwYXRoIHRvIGV4dHJhY3QgdGhlIGJhc2VuYW1lIGZyb20uXG4gKiBAcmV0dXJucyBUaGUgYmFzZW5hbWUgb2YgdGhlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiYXNlbmFtZShwYXRoU3RyOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBpZiAoIXBhdGhTdHIpIHJldHVybiB1bmRlZmluZWQ7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKCdiYXNlbmFtZScpO1xuICBjb25zdCByZXN1bHQgPSBwYXRoLmJhc2VuYW1lKHBhdGhTdHIpO1xuICBsb2cuZGVidWcoYEJhc2VuYW1lIHBhc3NlZCAke3BhdGhTdHJ9IGFuZCByZXR1cm5zICR7cmVzdWx0fWApO1xuICByZXR1cm4gcmVzdWx0O1xufVxuLyoqXG4gKiBSZW1vdmVzIHRoZSBcInJlZnMvaGVhZHMvXCIgb3IgXCJyZWZzL3RhZ3MvXCIgcHJlZml4IGZyb20gdGhlIGdpdmVuIHBhdGguXG4gKlxuICogQHBhcmFtIHBhdGhTdHIgLSBUaGUgcGF0aCB0byByZW1vdmUgdGhlIHByZWZpeCBmcm9tXG4gKiBAcmV0dXJucyBUaGUgcGF0aCB3aXRob3V0IHRoZSBwcmVmaXgsIG9yIG51bGwgaWYgcGF0aCBpcyBlbXB0eVxuICovXG5leHBvcnQgZnVuY3Rpb24gc3RyaXBSZWZzKHBhdGhTdHI6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICBpZiAoIXBhdGhTdHIpIHJldHVybiBudWxsO1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzaygnc3RyaXBSZWZzJyk7XG4gIGNvbnN0IHJlc3VsdCA9IHBhdGhTdHIucmVwbGFjZSgncmVmcy9oZWFkcy8nLCAnJykucmVwbGFjZSgncmVmcy90YWdzLycsICcnKTtcbiAgbG9nLmRlYnVnKGBzdHJpcFJlZnMgcGFzc2VkICR7cGF0aFN0cn0gYW5kIHJldHVybnMgJHtyZXN1bHR9YCk7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8qKlxuICogQ29udmVydHMgdGhlIGdpdmVuIHRleHQgdG8gdGl0bGUgY2FzZS5cbiAqIEBwYXJhbSB0ZXh0IC0gVGhlIHRleHQgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSB0ZXh0IGNvbnZlcnRlZCB0byB0aXRsZSBjYXNlLlxuICogQHRocm93cyB7VHlwZUVycm9yfSBJZiB0aGUgaW5wdXQgaXMgbm90IGEgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdGl0bGVjYXNlKHRleHQ6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGlmICghdGV4dCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgaWYgKHR5cGVvZiB0ZXh0ICE9PSAnc3RyaW5nJykge1xuICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYEludmFsaWQgYXJndW1lbnQgdHlwZSBwcm92aWRlZCB0byB0aXRsZWNhc2UoKTogJHt0eXBlb2YgdGV4dH1gKTtcbiAgfVxuICByZXR1cm4gdGV4dC5yZXBsYWNlQWxsKHVuaWNvZGVXb3JkTWF0Y2gsICh0eHQpID0+XG4gICAgdHh0WzBdID8gdHh0WzBdLnRvVXBwZXJDYXNlKCkgKyB0eHQuc2xpY2UoMSkudG9Mb3dlckNhc2UoKSA6IHR4dCxcbiAgKTtcbn1cblxuLyoqXG4gKiBQYXJzZXMgdGhlIGdpdmVuIHRleHQgYW5kIGNvbnZlcnRzIGl0IHRvIHRpdGxlIGNhc2UsIHJlcGxhY2luZyB1bmRlcnNjb3JlcyBhbmQgZGFzaGVzIHdpdGggc3BhY2VzLlxuICogQHBhcmFtIHRleHQgLSBUaGUgdGV4dCB0byBwYXJzZSBhbmQgY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBwYXJzZWQgdGV4dCBjb252ZXJ0ZWQgdG8gdGl0bGUgY2FzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByZWZpeFBhcnNlcih0ZXh0OiBzdHJpbmcgfCB1bmRlZmluZWQpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBpZiAoIXRleHQpIHJldHVybiB1bmRlZmluZWQ7XG4gIGlmICh0eXBlb2YgdGV4dCAhPT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBJbnZhbGlkIGFyZ3VtZW50IHR5cGUgcHJvdmlkZWQgdG8gcHJlZml4UGFyc2VyKCk6ICR7dHlwZW9mIHRleHR9YCk7XG4gIH1cbiAgcmV0dXJuIHRpdGxlY2FzZSh0ZXh0LnJlcGxhY2UoL1tfLV0rLywgJyAnKSk7XG59XG5cbi8qKlxuICogV3JhcHMgdGhlIGdpdmVuIHRleHQgaW50byBtdWx0aXBsZSBsaW5lcyB3aXRoIGEgbWF4aW11bSB3aWR0aCBvZiA4MCBjaGFyYWN0ZXJzLlxuICogQHBhcmFtIHRleHQgLSBUaGUgdGV4dCB0byB3cmFwLlxuICogQHBhcmFtIGNvbnRlbnQgLSBUaGUgYXJyYXkgdG8gc3RvcmUgdGhlIHdyYXBwZWQgbGluZXMuXG4gKiBAcGFyYW0gcHJlcGVuZCAtIFRoZSBzdHJpbmcgdG8gcHJlcGVuZCB0byBlYWNoIHdyYXBwZWQgbGluZS5cbiAqIEByZXR1cm5zIFRoZSBhcnJheSBvZiB3cmFwcGVkIGxpbmVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd3JhcFRleHQodGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkLCBjb250ZW50OiBzdHJpbmdbXSwgcHJlcGVuZCA9ICcnKTogc3RyaW5nW10ge1xuICAvLyBDb25zdHJhaW4gdGhlIHdpZHRoIG9mIHRoZSBkZXNjcmlwdGlvblxuICBpZiAoIXRleHQpIHJldHVybiBjb250ZW50O1xuICBjb25zdCB3aWR0aCA9IDgwO1xuXG4gIGxldCBkZXNjcmlwdGlvbiA9IHRleHRcbiAgICAudHJpbSgpXG4gICAgLnJlcGxhY2VBbGwoJ1xcclxcbicsICdcXG4nKSAvLyBDb252ZXJ0IENSIHRvIExGXG4gICAgLnJlcGxhY2VBbGwoLyArL2csICcgJykgLy8gICAgU3F1YXNoIGNvbnNlY3V0aXZlIHNwYWNlc1xuICAgIC5yZXBsYWNlQWxsKCcgXFxuJywgJ1xcbicpOyAvLyAgU3F1YXNoIHNwYWNlIGZvbGxvd2VkIGJ5IG5ld2xpbmVcblxuICB3aGlsZSAoZGVzY3JpcHRpb24pIHtcbiAgICAvLyBMb25nZXIgdGhhbiB3aWR0aD8gRmluZCBhIHNwYWNlIHRvIGJyZWFrIGFwYXJ0XG4gICAgbGV0IHNlZ21lbnQ6IHN0cmluZztcbiAgICBpZiAoZGVzY3JpcHRpb24ubGVuZ3RoID4gd2lkdGgpIHtcbiAgICAgIHNlZ21lbnQgPSBkZXNjcmlwdGlvbi5zbGljZSgwLCBNYXRoLm1heCgwLCB3aWR0aCArIDEpKTtcbiAgICAgIHdoaWxlICghc2VnbWVudC5lbmRzV2l0aCgnICcpICYmICFzZWdtZW50LmVuZHNXaXRoKCdcXG4nKSAmJiBzZWdtZW50KSB7XG4gICAgICAgIHNlZ21lbnQgPSBzZWdtZW50LnNsaWNlKDAsIE1hdGgubWF4KDAsIHNlZ21lbnQubGVuZ3RoIC0gMSkpO1xuICAgICAgfVxuXG4gICAgICAvLyBUcmltbWVkIHRvbyBtdWNoP1xuICAgICAgaWYgKHNlZ21lbnQubGVuZ3RoIDwgd2lkdGggKiAwLjY3KSB7XG4gICAgICAgIHNlZ21lbnQgPSBkZXNjcmlwdGlvbjtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgc2VnbWVudCA9IGRlc2NyaXB0aW9uO1xuICAgIH1cblxuICAgIC8vIENoZWNrIGZvciBuZXdsaW5lXG4gICAgY29uc3QgbmV3bGluZUluZGV4ID0gc2VnbWVudC5pbmRleE9mKCdcXG4nKTtcbiAgICBpZiAobmV3bGluZUluZGV4ID49IDApIHtcbiAgICAgIHNlZ21lbnQgPSBzZWdtZW50LnNsaWNlKDAsIE1hdGgubWF4KDAsIG5ld2xpbmVJbmRleCArIDEpKTtcbiAgICB9XG4gICAgY29udGVudC5wdXNoKGAke3ByZXBlbmR9JHtzZWdtZW50fWAudHJpbUVuZCgpKTtcbiAgICAvLyBSZW1haW5pbmdcbiAgICBkZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uLnNsaWNlKHNlZ21lbnQubGVuZ3RoKTtcbiAgfVxuICByZXR1cm4gY29udGVudDtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcmVwb3NpdG9yeSB3aXRoIG93bmVyIGFuZCByZXBvIHByb3BlcnRpZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVwbyB7XG4gIG93bmVyOiBzdHJpbmc7XG4gIHJlcG86IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRGaWxlKGZpbGVuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICB0cnkge1xuICAgIHJldHVybiByZWFkRmlsZVN5bmMoZmlsZW5hbWUsICd1dGY4Jyk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgcmVhZCBmaWxlICR7ZmlsZW5hbWV9OiAke2Vycm9yfWApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXBvT2JqRnJvbVJlcG9OYW1lKFxuICByZXBvc2l0b3J5OiBOdWxsYWJsZTxzdHJpbmc+LFxuICBsb2c6IExvZ1Rhc2ssXG4gIGZyb20/OiBzdHJpbmcsXG4pOiBOdWxsYWJsZTxSZXBvPiB7XG4gIGlmIChub3RFbXB0eShyZXBvc2l0b3J5KSkge1xuICAgIGNvbnN0IFtvd25lciwgcmVwb10gPSByZXBvc2l0b3J5LnNwbGl0KCcvJyk7XG4gICAgaWYgKG93bmVyICYmIHJlcG8pIHtcbiAgICAgIGxvZy5kZWJ1ZyhgcmVwb09iakZyb21SZXBvTmFtZSB1c2luZyAke2Zyb219IGFuZCByZXR1cm5zICR7SlNPTi5zdHJpbmdpZnkoeyBvd25lciwgcmVwbyB9KX1gKTtcbiAgICAgIHJldHVybiB7IG93bmVyLCByZXBvIH07XG4gICAgfVxuICB9XG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG5leHBvcnQgY29uc3QgcmVtb3RlR2l0VXJsUGF0dGVybiA9IC91cmwoICk/PSggKT8uKmdpdGh1YlxcLmNvbVsvOl0oPzxvd25lcj4uKilcXC8oPzxyZXBvPi4qKVxcLmdpdC87XG4vKipcbiAqIEZpbmRzIHRoZSByZXBvc2l0b3J5IGluZm9ybWF0aW9uIGZyb20gdGhlIGlucHV0LCBjb250ZXh0LCBlbnZpcm9ubWVudCB2YXJpYWJsZXMsIG9yIGdpdCBjb25maWd1cmF0aW9uLlxuICogQHBhcmFtIGlucHV0UmVwbyAtIFRoZSBpbnB1dCByZXBvc2l0b3J5IHN0cmluZy5cbiAqIEBwYXJhbSBjb250ZXh0IC0gVGhlIEdpdEh1YiBjb250ZXh0IG9iamVjdC5cbiAqIEByZXR1cm5zIFRoZSByZXBvc2l0b3J5IGluZm9ybWF0aW9uIChvd25lciBhbmQgcmVwbykgb3IgbnVsbCBpZiBub3QgZm91bmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXBvc2l0b3J5RmluZGVyKFxuICBpbnB1dFJlcG86IE51bGxhYmxlPHN0cmluZz4sXG4gIGNvbnRleHQ6IE51bGxhYmxlPENvbnRleHQ+LFxuKTogUmVwbyB8IG51bGwge1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzaygncmVwb3NpdG9yeUZpbmRlcicpO1xuICAvKipcbiAgICogQXR0ZW1wdCB0byBnZXQgZ2l0IHVzZXIgYW5kIHJlcG8gZnJvbSBpbnB1dFxuICAgKi9cbiAgY29uc3QgcmVwb09iaiA9IHJlcG9PYmpGcm9tUmVwb05hbWUoaW5wdXRSZXBvLCBsb2csICdpbnB1dFJlcG8nKTtcblxuICBpZiAocmVwb09iaikge1xuICAgIHJldHVybiByZXBvT2JqO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGVtcHQgdG8gZ2V0IGdpdCB1c2VyIGFuZCByZXBvIGZyb20gR2l0SHViIGNvbnRleHQsXG4gICAqIHdoaWNoIGluY2x1ZGVzIGNoZWNraW5nIGZvciBHSVRIVUJfUkVQT1NJVE9SWSBlbnZpcm9ubWVudCB2YXJpYWJsZVxuICAgKi9cbiAgaWYgKGNvbnRleHQpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0geyAuLi5jb250ZXh0LnJlcG8gfTtcbiAgICAgIGxvZy5kZWJ1ZyhgcmVwb3NpdG9yeUZpbmRlciB1c2luZyBHaXRIdWIgY29udGV4dCBhbmQgcmV0dXJucyAke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9YCk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBsb2cuZGVidWcoYHJlcG9zaXRvcnlGaW5kZXIgdXNpbmcgR2l0SHViIGNvbnRleHQgZ2l2ZXMgZXJyb3IgJHtKU09OLnN0cmluZ2lmeShlcnJvcil9YCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEF0dGVtcHQgdG8gZ2V0IGdpdCB1c2VyIGFuZCByZXBvIGZyb20gLmdpdC9jb25maWdcbiAgICovXG4gIHRyeSB7XG4gICAgY29uc3QgZmlsZUNvbnRlbnQgPSByZWFkRmlsZSgnLmdpdC9jb25maWcnKTtcbiAgICBsb2cuZGVidWcoYGxvYWRpbmcgLmdpdC9jb25maWc6XFxuKioqXFxuJHtmaWxlQ29udGVudH1cXG4qKipgKTtcbiAgICBjb25zdCByZXN1bHRzID0gcmVtb3RlR2l0VXJsUGF0dGVybi5leGVjKGZpbGVDb250ZW50KTtcbiAgICBpZiAocmVzdWx0cz8uZ3JvdXBzPy5vd25lciAmJiByZXN1bHRzPy5ncm91cHM/LnJlcG8pIHtcbiAgICAgIGxvZy5kZWJ1ZyhcbiAgICAgICAgYHJlcG9zaXRvcnlGaW5kZXIgdXNpbmcgJy5naXQvY29uZmlnJyBhbmQgcmV0dXJucyAke0pTT04uc3RyaW5naWZ5KHJlc3VsdHMuZ3JvdXBzKX1gLFxuICAgICAgKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG93bmVyOiByZXN1bHRzLmdyb3Vwcy5vd25lcixcbiAgICAgICAgcmVwbzogcmVzdWx0cy5ncm91cHMucmVwbyxcbiAgICAgIH07XG4gICAgfVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIC8vIGNhbid0IGZpbmQgaXRcbiAgICBsb2cuZXJyb3IoYENvdWxkbid0IHJldHJpZXZlIG93bmVyIG9yIHJlcG8gaW4gLmdpdC9jb25maWcgZmlsZTogJHtlcnJvcn1gKTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoJ05vIG93bmVyIG9yIHJlcG8gZm91bmQnKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBkZWZhdWx0IGJyYW5jaCBvZiB0aGUgZ2l0IHJlcG9zaXRvcnkuXG4gKiBAcmV0dXJucyBUaGUgZGVmYXVsdCBicmFuY2guXG4gKi9cbi8qKlxuICogR2V0cyB0aGUgZGVmYXVsdCBicmFuY2ggZm9yIHRoZSBHaXQgcmVwb3NpdG9yeS5cbiAqXG4gKiBAcmV0dXJucyBUaGUgbmFtZSBvZiB0aGUgZGVmYXVsdCBicmFuY2guXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXREZWZhdWx0R2l0QnJhbmNoKCk6IHN0cmluZyB7XG4gIGxldCByZXN1bHQ6IEJ1ZmZlciB8IHVuZGVmaW5lZDtcbiAgdHJ5IHtcbiAgICAvLyBSdW4gZ2l0IGNvbW1hbmQgdG8gZ2V0IGRlZmF1bHQgYnJhbmNoXG4gICAgcmVzdWx0ID0gZXhlY1N5bmMoJ2dpdCBzeW1ib2xpYy1yZWYgSEVBRCB8IHNlZCBzQF5yZWZzL2hlYWRzL0BAJyk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgLy8gSWYgY29tbWFuZCBmYWlscywgdHJ5IGFsdGVybmF0aXZlIGZvciBNYWNPU1xuICAgIGlmIChlcnJvcikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmVzdWx0ID0gZXhlY1N5bmMoXG4gICAgICAgICAgXCJnaXQgcmVtb3RlIHNldC1oZWFkIG9yaWdpbiAtYTtnaXQgcmVtb3RlIHNob3cgb3JpZ2luIHwgaGVhZCA1MCBzZWQgLW4gJ3MvXi4qZGVmYXVsdCBicmFuY2ggXFxcXCguKlxcXFwpL1xcXFwxL3AnXCIsXG4gICAgICAgICk7XG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgcmVzdWx0ID0gZXhlY1N5bmMoXG4gICAgICAgICAgXCJnaXQgcmVtb3RlIHNldC1oZWFkIG9yaWdpbiAtYTtnaXQgcmVtb3RlIHNob3cgb3JpZ2luIHwgc2VkIC1uICdzL15zKkhFQUQgYnJhbmNoOiBcXFxcKC4qXFxcXCkvXFxcXDEvcCdcIixcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdD8udG9TdHJpbmcoKS50cmltKCkgPz8gJyc7XG59XG5cbi8qKlxuICogRm9ybWF0cyB0aGUgZ2l2ZW4gdmFsdWUgYXMgYSBjb2x1bW4gaGVhZGVyLlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGZvcm1hdC5cbiAqIEByZXR1cm5zIFRoZSBmb3JtYXR0ZWQgY29sdW1uIGhlYWRlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbHVtbkhlYWRlcih2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCF2YWx1ZSkge1xuICAgIHJldHVybiAnJztcbiAgfVxuICBsZXQgdGV4dDogc3RyaW5nID0gdmFsdWUucmVwbGFjZUFsbCgvXFwqXFwqKC4qPylcXCpcXCovZywgJyQxJyk7XG5cbiAgLy8gUmVtb3ZlIGl0YWxpYyBmb3JtYXR0aW5nOiAqaXRhbGljKlxuICB0ZXh0ID0gdGV4dC5yZXBsYWNlQWxsKC9cXCooLio/KVxcKi9nLCAnJDEnKTtcblxuICAvLyBSZW1vdmUgc3RyaWtldGhyb3VnaCBmb3JtYXR0aW5nOiB+fnN0cmlrZXRocm91Z2h+flxuICB0ZXh0ID0gdGV4dC5yZXBsYWNlQWxsKC9+figuKj8pfn4vZywgJyQxJyk7XG5cbiAgY29uc3Qgbm9ybWFsaXNlZEhlYWRlciA9IHRpdGxlY2FzZSh0ZXh0LnRyaW0oKSk7XG4gIGlmIChub3JtYWxpc2VkSGVhZGVyKSB7XG4gICAgcmV0dXJuIGAke25vcm1hbGlzZWRIZWFkZXJ9YDtcbiAgfVxuICByZXR1cm4gJyc7XG59XG4vKipcbiAqIEZvcm1hdHMgdGhlIGdpdmVuIHZhbHVlIGFzIGEgcm93IGhlYWRlciBpbiBIVE1MLlxuICpcbiAqIFJlbW92ZXMgZm9ybWF0dGluZyBmcm9tIHRoZSBzdHJpbmcgYW5kIGNvbnZlcnRzIGl0IHRvIGNvZGUgc3R5bGUuXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHN0cmluZyB0byBmb3JtYXQgYXMgYSBoZWFkZXJcbiAqIEByZXR1cm5zIFRoZSBmb3JtYXR0ZWQgcm93IGhlYWRlciBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJvd0hlYWRlcih2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCF2YWx1ZSkge1xuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGxldCB0ZXh0ID0gdmFsdWU7XG5cbiAgLy8gUmVtb3ZlIGJvbGQgZm9ybWF0dGluZ1xuICB0ZXh0ID0gdGV4dC5yZXBsYWNlQWxsKC9cXCpcXCooLio/KVxcKlxcKi9nLCAnJDEnKTtcblxuICAvLyBSZW1vdmUgaXRhbGljIGZvcm1hdHRpbmc6ICppdGFsaWMqXG4gIHRleHQgPSB0ZXh0LnJlcGxhY2VBbGwoL1xcKiguKj8pXFwqL2csICckMScpO1xuXG4gIC8vIFJlbW92ZSBzdHJpa2V0aHJvdWdoIGZvcm1hdHRpbmc6IH5+c3RyaWtldGhyb3VnaH5+XG4gIHRleHQgPSB0ZXh0LnJlcGxhY2VBbGwoL35+KC4qPyl+fi9nLCAnJDEnKTtcblxuICAvLyBOb3JtYWxpemUgc3BhY2luZ1xuICB0ZXh0ID0gdGV4dC50cmltKCk7XG5cbiAgLy8gQWRkIGNvZGUgZm9ybWF0dGluZ1xuICByZXR1cm4gYDxjb2RlPiR7dGV4dH08L2NvZGU+YDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEN1cnJlbnRWZXJzaW9uU3RyaW5nKGlucHV0czogSW5wdXRzKTogc3RyaW5nIHtcbiAgbGV0IHZlcnNpb25TdHJpbmcgPSAnJztcbiAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soJ2dldEN1cnJlbnRWZXJzaW9uU3RyaW5nJyk7XG4gIGlmIChpbnB1dHMuY29uZmlnLmdldCgndmVyc2lvbmluZzplbmFibGVkJykpIHtcbiAgICBsb2cuZGVidWcoJ3ZlcnNpb24gc3RyaW5nIGluIGdlbmVyYXRlZCBleGFtcGxlIGlzIGVuYWJsZWQnKTtcbiAgICBjb25zdCBvUmlkZSA9IGlucHV0cy5jb25maWcuZ2V0KCd2ZXJzaW9uaW5nOm92ZXJyaWRlJykgYXMgc3RyaW5nO1xuICAgIGxldCBwYWNrYWdlVmVyc2lvbiA9IHByb2Nlc3MuZW52Lm5wbV9wYWNrYWdlX3ZlcnNpb247XG4gICAgbG9nLmRlYnVnKGB2ZXJzaW9uIHN0cmluZyBpbiBlbnY6bnBtX3BhY2thZ2VfdmVyc2lvbiBpcyAke3BhY2thZ2VWZXJzaW9uID8/ICdub3QgZm91bmQnfWApO1xuICAgIGlmICghcGFja2FnZVZlcnNpb24pIHtcbiAgICAgIGxvZy5kZWJ1ZygndmVyc2lvbiBzdHJpbmcgaW4gZW52Om5wbV9wYWNrYWdlX3ZlcnNpb24gaXMgbm90IGZvdW5kLCB0cnlpbmcgdG8gdXNlIGdpdCcpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYWNjZXNzU3luYygncGFja2FnZS5qc29uJyk7XG4gICAgICAgIGNvbnN0IHBhY2thZ2VEYXRhOiBQYXJ0aWFsPFBhY2thZ2VKc29uPiA9IEpTT04ucGFyc2UocmVhZEZpbGVTeW5jKCdwYWNrYWdlLmpzb24nLCAndXRmOCcpKTtcbiAgICAgICAgcGFja2FnZVZlcnNpb24gPSBwYWNrYWdlRGF0YS52ZXJzaW9uO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgbG9nLmRlYnVnKGBwYWNrYWdlLmpzb24gbm90IGZvdW5kLiAke2Vycm9yfWApO1xuICAgICAgfVxuICAgICAgbG9nLmRlYnVnKGB2ZXJzaW9uIHN0cmluZyBpbiBwYWNrYWdlLmpzb246dmVyc2lvbiBpcyAke3BhY2thZ2VWZXJzaW9uID8/ICdub3QgZm91bmQnfWApO1xuICAgIH1cblxuICAgIHZlcnNpb25TdHJpbmcgPSBvUmlkZSAmJiBvUmlkZS5sZW5ndGggPiAwID8gb1JpZGUgOiBwYWNrYWdlVmVyc2lvbiA/PyAnMC4wLjAnO1xuXG4gICAgaWYgKFxuICAgICAgdmVyc2lvblN0cmluZyAmJlxuICAgICAgIXZlcnNpb25TdHJpbmcuc3RhcnRzV2l0aChpbnB1dHMuY29uZmlnLmdldCgndmVyc2lvbmluZzpwcmVmaXgnKSBhcyBzdHJpbmcpXG4gICAgKSB7XG4gICAgICB2ZXJzaW9uU3RyaW5nID0gYCR7aW5wdXRzLmNvbmZpZy5nZXQoJ3ZlcnNpb25pbmc6cHJlZml4JykgYXMgc3RyaW5nfSR7dmVyc2lvblN0cmluZ31gO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICB2ZXJzaW9uU3RyaW5nID0gaW5wdXRzLmNvbmZpZy5nZXQoJ3ZlcnNpb25pbmc6YnJhbmNoJykgYXMgc3RyaW5nO1xuICB9XG4gIGxvZy5kZWJ1ZyhgdmVyc2lvbiB0byB1c2UgaW4gZ2VuZXJhdGVkIGV4YW1wbGUgaXMgJHt2ZXJzaW9uU3RyaW5nfWApO1xuICByZXR1cm4gdmVyc2lvblN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluZGV4T2ZSZWdleChzdHI6IHN0cmluZywgcHJvdmlkZWRSZWdleDogUmVnRXhwKTogbnVtYmVyIHtcbiAgY29uc3QgcmVnZXggPSBwcm92aWRlZFJlZ2V4Lmdsb2JhbFxuICAgID8gcHJvdmlkZWRSZWdleFxuICAgIDogbmV3IFJlZ0V4cChwcm92aWRlZFJlZ2V4LnNvdXJjZSwgYCR7cHJvdmlkZWRSZWdleC5mbGFnc31nYCk7XG4gIGxldCBpbmRleCA9IC0xO1xuICBsZXQgbWF0Y2g6IFJlZ0V4cEV4ZWNBcnJheSB8IG51bGwgPSByZWdleC5leGVjKHN0cik7XG4gIHdoaWxlIChtYXRjaCkge1xuICAgIGluZGV4ID0gbWF0Y2guaW5kZXg7XG4gICAgbWF0Y2ggPSByZWdleC5leGVjKHN0cik7XG4gIH1cbiAgcmV0dXJuIGluZGV4O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbGFzdEluZGV4T2ZSZWdleChzdHI6IHN0cmluZywgcHJvdmlkZWRSZWdleDogUmVnRXhwKTogbnVtYmVyIHtcbiAgY29uc3QgcmVnZXggPSBwcm92aWRlZFJlZ2V4Lmdsb2JhbFxuICAgID8gcHJvdmlkZWRSZWdleFxuICAgIDogbmV3IFJlZ0V4cChwcm92aWRlZFJlZ2V4LnNvdXJjZSwgYCR7cHJvdmlkZWRSZWdleC5mbGFnc31nYCk7XG4gIGxldCBpbmRleCA9IC0xO1xuICBsZXQgbWF0Y2g6IFJlZ0V4cEV4ZWNBcnJheSB8IG51bGwgPSByZWdleC5leGVjKHN0cik7XG4gIHdoaWxlIChtYXRjaCkge1xuICAgIGluZGV4ID0gbWF0Y2guaW5kZXggKyBtYXRjaFswXS5sZW5ndGg7XG4gICAgbWF0Y2ggPSByZWdleC5leGVjKHN0cik7XG4gIH1cbiAgcmV0dXJuIGluZGV4O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNPYmplY3QodmFsdWU6IGFueSk6IHZhbHVlIGlzIG9iamVjdCB7XG4gIGNvbnN0IHR5cGUgPSB0eXBlb2YgdmFsdWU7XG4gIHJldHVybiB0eXBlID09PSAnb2JqZWN0JyAmJiAhIXZhbHVlO1xufVxuIiwgIi8vXG4vLyBSZWdleCBiZWxvdyBtYXRjaGVzIGFueSBVbmljb2RlIHdvcmQgYW5kIG51bWJlciBjb21wYXRpYmxlIHdpdGggRVM1LiBJbiBFUzIwMTggdGhlIHNhbWUgcmVzdWx0XG4vLyBjYW4gYmUgYWNoaWV2ZWQgYnkgdXNpbmcgL1swLTlcXHB7TH1dXFxTKi9ndSBhbmQgYWxzbyBrbm93biBhcyBVbmljb2RlIFByb3BlcnR5IEVzY2FwZXNcbi8vIChodHRwczovLzJhbGl0eS5jb20vMjAxNy8wNy9yZWdleHAtdW5pY29kZS1wcm9wZXJ0eS1lc2NhcGVzLmh0bWwpLiBTaW5jZSB0aGVyZSBpcyBub1xuLy8gdHJhbnNwaWxhdGlvbiBvZiB0aGlzIGZ1bmN0aW9uYWxpdHkgZG93biB0byBFUzUgd2l0aG91dCBleHRlcm5hbCB0b29sLCB0aGUgb25seSBzb2x1dGlvbiBpc1xuLy8gdG8gdXNlIGFscmVhZHkgdHJhbnNwaWxlZCBmb3JtLiBFeGFtcGxlIGNhbiBiZSBmb3VuZCBoZXJlIC1cbi8vIGh0dHBzOi8vbW90aGVyZWZmLmluL3JlZ2V4cHUjaW5wdXQ9dmFyK3JlZ2V4KyUzRCslMkYlNUIwLTklNUNwJTdCTCU3RCU1RCU1Q1MqJTJGZ3UlM0IlMEElMEEmdW5pY29kZVByb3BlcnR5RXNjYXBlPTFcbi8vXG5cbmV4cG9ydCBjb25zdCB1bmljb2RlV29yZE1hdGNoID1cbiAgLy8gdHJ1bmstaWdub3JlKGVzbGludC91bmljb3JuL2JldHRlci1yZWdleCxlc2xpbnQvdW5pY29ybi9uby1oZXgtZXNjYXBlLGVzbGludC9vcHRpbWl6ZS1yZWdleC9vcHRpbWl6ZS1yZWdleClcbiAgLyg/OltcXGRBLVphLXpcXHUwMEFBXFx1MDBCNVxcdTAwQkFcXHUwMEMwLVxcdTAwRDZcXHUwMEQ4LVxcdTAwRjZcXHUwMEY4LVxcdTAyQzFcXHUwMkM2LVxcdTAyRDFcXHUwMkUwLVxcdTAyRTRcXHUwMkVDXFx1MDJFRVxcdTAzNzAtXFx1MDM3NFxcdTAzNzZcXHUwMzc3XFx1MDM3QS1cXHUwMzdEXFx1MDM3RlxcdTAzODZcXHUwMzg4LVxcdTAzOEFcXHUwMzhDXFx1MDM4RS1cXHUwM0ExXFx1MDNBMy1cXHUwM0Y1XFx1MDNGNy1cXHUwNDgxXFx1MDQ4QS1cXHUwNTJGXFx1MDUzMS1cXHUwNTU2XFx1MDU1OVxcdTA1NjAtXFx1MDU4OFxcdTA1RDAtXFx1MDVFQVxcdTA1RUYtXFx1MDVGMlxcdTA2MjAtXFx1MDY0QVxcdTA2NkVcXHUwNjZGXFx1MDY3MS1cXHUwNkQzXFx1MDZENVxcdTA2RTVcXHUwNkU2XFx1MDZFRVxcdTA2RUZcXHUwNkZBLVxcdTA2RkNcXHUwNkZGXFx1MDcxMFxcdTA3MTItXFx1MDcyRlxcdTA3NEQtXFx1MDdBNVxcdTA3QjFcXHUwN0NBLVxcdTA3RUFcXHUwN0Y0XFx1MDdGNVxcdTA3RkFcXHUwODAwLVxcdTA4MTVcXHUwODFBXFx1MDgyNFxcdTA4MjhcXHUwODQwLVxcdTA4NThcXHUwODYwLVxcdTA4NkFcXHUwODcwLVxcdTA4ODdcXHUwODg5LVxcdTA4OEVcXHUwOEEwLVxcdTA4QzlcXHUwOTA0LVxcdTA5MzlcXHUwOTNEXFx1MDk1MFxcdTA5NTgtXFx1MDk2MVxcdTA5NzEtXFx1MDk4MFxcdTA5ODUtXFx1MDk4Q1xcdTA5OEZcXHUwOTkwXFx1MDk5My1cXHUwOUE4XFx1MDlBQS1cXHUwOUIwXFx1MDlCMlxcdTA5QjYtXFx1MDlCOVxcdTA5QkRcXHUwOUNFXFx1MDlEQ1xcdTA5RERcXHUwOURGLVxcdTA5RTFcXHUwOUYwXFx1MDlGMVxcdTA5RkNcXHUwQTA1LVxcdTBBMEFcXHUwQTBGXFx1MEExMFxcdTBBMTMtXFx1MEEyOFxcdTBBMkEtXFx1MEEzMFxcdTBBMzJcXHUwQTMzXFx1MEEzNVxcdTBBMzZcXHUwQTM4XFx1MEEzOVxcdTBBNTktXFx1MEE1Q1xcdTBBNUVcXHUwQTcyLVxcdTBBNzRcXHUwQTg1LVxcdTBBOERcXHUwQThGLVxcdTBBOTFcXHUwQTkzLVxcdTBBQThcXHUwQUFBLVxcdTBBQjBcXHUwQUIyXFx1MEFCM1xcdTBBQjUtXFx1MEFCOVxcdTBBQkRcXHUwQUQwXFx1MEFFMFxcdTBBRTFcXHUwQUY5XFx1MEIwNS1cXHUwQjBDXFx1MEIwRlxcdTBCMTBcXHUwQjEzLVxcdTBCMjhcXHUwQjJBLVxcdTBCMzBcXHUwQjMyXFx1MEIzM1xcdTBCMzUtXFx1MEIzOVxcdTBCM0RcXHUwQjVDXFx1MEI1RFxcdTBCNUYtXFx1MEI2MVxcdTBCNzFcXHUwQjgzXFx1MEI4NS1cXHUwQjhBXFx1MEI4RS1cXHUwQjkwXFx1MEI5Mi1cXHUwQjk1XFx1MEI5OVxcdTBCOUFcXHUwQjlDXFx1MEI5RVxcdTBCOUZcXHUwQkEzXFx1MEJBNFxcdTBCQTgtXFx1MEJBQVxcdTBCQUUtXFx1MEJCOVxcdTBCRDBcXHUwQzA1LVxcdTBDMENcXHUwQzBFLVxcdTBDMTBcXHUwQzEyLVxcdTBDMjhcXHUwQzJBLVxcdTBDMzlcXHUwQzNEXFx1MEM1OC1cXHUwQzVBXFx1MEM1RFxcdTBDNjBcXHUwQzYxXFx1MEM4MFxcdTBDODUtXFx1MEM4Q1xcdTBDOEUtXFx1MEM5MFxcdTBDOTItXFx1MENBOFxcdTBDQUEtXFx1MENCM1xcdTBDQjUtXFx1MENCOVxcdTBDQkRcXHUwQ0REXFx1MENERVxcdTBDRTBcXHUwQ0UxXFx1MENGMVxcdTBDRjJcXHUwRDA0LVxcdTBEMENcXHUwRDBFLVxcdTBEMTBcXHUwRDEyLVxcdTBEM0FcXHUwRDNEXFx1MEQ0RVxcdTBENTQtXFx1MEQ1NlxcdTBENUYtXFx1MEQ2MVxcdTBEN0EtXFx1MEQ3RlxcdTBEODUtXFx1MEQ5NlxcdTBEOUEtXFx1MERCMVxcdTBEQjMtXFx1MERCQlxcdTBEQkRcXHUwREMwLVxcdTBEQzZcXHUwRTAxLVxcdTBFMzBcXHUwRTMyXFx1MEUzM1xcdTBFNDAtXFx1MEU0NlxcdTBFODFcXHUwRTgyXFx1MEU4NFxcdTBFODYtXFx1MEU4QVxcdTBFOEMtXFx1MEVBM1xcdTBFQTVcXHUwRUE3LVxcdTBFQjBcXHUwRUIyXFx1MEVCM1xcdTBFQkRcXHUwRUMwLVxcdTBFQzRcXHUwRUM2XFx1MEVEQy1cXHUwRURGXFx1MEYwMFxcdTBGNDAtXFx1MEY0N1xcdTBGNDktXFx1MEY2Q1xcdTBGODgtXFx1MEY4Q1xcdTEwMDAtXFx1MTAyQVxcdTEwM0ZcXHUxMDUwLVxcdTEwNTVcXHUxMDVBLVxcdTEwNURcXHUxMDYxXFx1MTA2NVxcdTEwNjZcXHUxMDZFLVxcdTEwNzBcXHUxMDc1LVxcdTEwODFcXHUxMDhFXFx1MTBBMC1cXHUxMEM1XFx1MTBDN1xcdTEwQ0RcXHUxMEQwLVxcdTEwRkFcXHUxMEZDLVxcdTEyNDhcXHUxMjRBLVxcdTEyNERcXHUxMjUwLVxcdTEyNTZcXHUxMjU4XFx1MTI1QS1cXHUxMjVEXFx1MTI2MC1cXHUxMjg4XFx1MTI4QS1cXHUxMjhEXFx1MTI5MC1cXHUxMkIwXFx1MTJCMi1cXHUxMkI1XFx1MTJCOC1cXHUxMkJFXFx1MTJDMFxcdTEyQzItXFx1MTJDNVxcdTEyQzgtXFx1MTJENlxcdTEyRDgtXFx1MTMxMFxcdTEzMTItXFx1MTMxNVxcdTEzMTgtXFx1MTM1QVxcdTEzODAtXFx1MTM4RlxcdTEzQTAtXFx1MTNGNVxcdTEzRjgtXFx1MTNGRFxcdTE0MDEtXFx1MTY2Q1xcdTE2NkYtXFx1MTY3RlxcdTE2ODEtXFx1MTY5QVxcdTE2QTAtXFx1MTZFQVxcdTE2RjEtXFx1MTZGOFxcdTE3MDAtXFx1MTcxMVxcdTE3MUYtXFx1MTczMVxcdTE3NDAtXFx1MTc1MVxcdTE3NjAtXFx1MTc2Q1xcdTE3NkUtXFx1MTc3MFxcdTE3ODAtXFx1MTdCM1xcdTE3RDdcXHUxN0RDXFx1MTgyMC1cXHUxODc4XFx1MTg4MC1cXHUxODg0XFx1MTg4Ny1cXHUxOEE4XFx1MThBQVxcdTE4QjAtXFx1MThGNVxcdTE5MDAtXFx1MTkxRVxcdTE5NTAtXFx1MTk2RFxcdTE5NzAtXFx1MTk3NFxcdTE5ODAtXFx1MTlBQlxcdTE5QjAtXFx1MTlDOVxcdTFBMDAtXFx1MUExNlxcdTFBMjAtXFx1MUE1NFxcdTFBQTdcXHUxQjA1LVxcdTFCMzNcXHUxQjQ1LVxcdTFCNENcXHUxQjgzLVxcdTFCQTBcXHUxQkFFXFx1MUJBRlxcdTFCQkEtXFx1MUJFNVxcdTFDMDAtXFx1MUMyM1xcdTFDNEQtXFx1MUM0RlxcdTFDNUEtXFx1MUM3RFxcdTFDODAtXFx1MUM4OFxcdTFDOTAtXFx1MUNCQVxcdTFDQkQtXFx1MUNCRlxcdTFDRTktXFx1MUNFQ1xcdTFDRUUtXFx1MUNGM1xcdTFDRjVcXHUxQ0Y2XFx1MUNGQVxcdTFEMDAtXFx1MURCRlxcdTFFMDAtXFx1MUYxNVxcdTFGMTgtXFx1MUYxRFxcdTFGMjAtXFx1MUY0NVxcdTFGNDgtXFx1MUY0RFxcdTFGNTAtXFx1MUY1N1xcdTFGNTlcXHUxRjVCXFx1MUY1RFxcdTFGNUYtXFx1MUY3RFxcdTFGODAtXFx1MUZCNFxcdTFGQjYtXFx1MUZCQ1xcdTFGQkVcXHUxRkMyLVxcdTFGQzRcXHUxRkM2LVxcdTFGQ0NcXHUxRkQwLVxcdTFGRDNcXHUxRkQ2LVxcdTFGREJcXHUxRkUwLVxcdTFGRUNcXHUxRkYyLVxcdTFGRjRcXHUxRkY2LVxcdTFGRkNcXHUyMDcxXFx1MjA3RlxcdTIwOTAtXFx1MjA5Q1xcdTIxMDJcXHUyMTA3XFx1MjEwQS1cXHUyMTEzXFx1MjExNVxcdTIxMTktXFx1MjExRFxcdTIxMjRcXHUyMTI2XFx1MjEyOFxcdTIxMkEtXFx1MjEyRFxcdTIxMkYtXFx1MjEzOVxcdTIxM0MtXFx1MjEzRlxcdTIxNDUtXFx1MjE0OVxcdTIxNEVcXHUyMTgzXFx1MjE4NFxcdTJDMDAtXFx1MkNFNFxcdTJDRUItXFx1MkNFRVxcdTJDRjJcXHUyQ0YzXFx1MkQwMC1cXHUyRDI1XFx1MkQyN1xcdTJEMkRcXHUyRDMwLVxcdTJENjdcXHUyRDZGXFx1MkQ4MC1cXHUyRDk2XFx1MkRBMC1cXHUyREE2XFx1MkRBOC1cXHUyREFFXFx1MkRCMC1cXHUyREI2XFx1MkRCOC1cXHUyREJFXFx1MkRDMC1cXHUyREM2XFx1MkRDOC1cXHUyRENFXFx1MkREMC1cXHUyREQ2XFx1MkREOC1cXHUyRERFXFx1MkUyRlxcdTMwMDVcXHUzMDA2XFx1MzAzMS1cXHUzMDM1XFx1MzAzQlxcdTMwM0NcXHUzMDQxLVxcdTMwOTZcXHUzMDlELVxcdTMwOUZcXHUzMEExLVxcdTMwRkFcXHUzMEZDLVxcdTMwRkZcXHUzMTA1LVxcdTMxMkZcXHUzMTMxLVxcdTMxOEVcXHUzMUEwLVxcdTMxQkZcXHUzMUYwLVxcdTMxRkZcXHUzNDAwLVxcdTREQkZcXHU0RTAwLVxcdUE0OENcXHVBNEQwLVxcdUE0RkRcXHVBNTAwLVxcdUE2MENcXHVBNjEwLVxcdUE2MUZcXHVBNjJBXFx1QTYyQlxcdUE2NDAtXFx1QTY2RVxcdUE2N0YtXFx1QTY5RFxcdUE2QTAtXFx1QTZFNVxcdUE3MTctXFx1QTcxRlxcdUE3MjItXFx1QTc4OFxcdUE3OEItXFx1QTdDQVxcdUE3RDBcXHVBN0QxXFx1QTdEM1xcdUE3RDUtXFx1QTdEOVxcdUE3RjItXFx1QTgwMVxcdUE4MDMtXFx1QTgwNVxcdUE4MDctXFx1QTgwQVxcdUE4MEMtXFx1QTgyMlxcdUE4NDAtXFx1QTg3M1xcdUE4ODItXFx1QThCM1xcdUE4RjItXFx1QThGN1xcdUE4RkJcXHVBOEZEXFx1QThGRVxcdUE5MEEtXFx1QTkyNVxcdUE5MzAtXFx1QTk0NlxcdUE5NjAtXFx1QTk3Q1xcdUE5ODQtXFx1QTlCMlxcdUE5Q0ZcXHVBOUUwLVxcdUE5RTRcXHVBOUU2LVxcdUE5RUZcXHVBOUZBLVxcdUE5RkVcXHVBQTAwLVxcdUFBMjhcXHVBQTQwLVxcdUFBNDJcXHVBQTQ0LVxcdUFBNEJcXHVBQTYwLVxcdUFBNzZcXHVBQTdBXFx1QUE3RS1cXHVBQUFGXFx1QUFCMVxcdUFBQjVcXHVBQUI2XFx1QUFCOS1cXHVBQUJEXFx1QUFDMFxcdUFBQzJcXHVBQURCLVxcdUFBRERcXHVBQUUwLVxcdUFBRUFcXHVBQUYyLVxcdUFBRjRcXHVBQjAxLVxcdUFCMDZcXHVBQjA5LVxcdUFCMEVcXHVBQjExLVxcdUFCMTZcXHVBQjIwLVxcdUFCMjZcXHVBQjI4LVxcdUFCMkVcXHVBQjMwLVxcdUFCNUFcXHVBQjVDLVxcdUFCNjlcXHVBQjcwLVxcdUFCRTJcXHVBQzAwLVxcdUQ3QTNcXHVEN0IwLVxcdUQ3QzZcXHVEN0NCLVxcdUQ3RkJcXHVGOTAwLVxcdUZBNkRcXHVGQTcwLVxcdUZBRDlcXHVGQjAwLVxcdUZCMDZcXHVGQjEzLVxcdUZCMTdcXHVGQjFEXFx1RkIxRi1cXHVGQjI4XFx1RkIyQS1cXHVGQjM2XFx1RkIzOC1cXHVGQjNDXFx1RkIzRVxcdUZCNDBcXHVGQjQxXFx1RkI0M1xcdUZCNDRcXHVGQjQ2LVxcdUZCQjFcXHVGQkQzLVxcdUZEM0RcXHVGRDUwLVxcdUZEOEZcXHVGRDkyLVxcdUZEQzdcXHVGREYwLVxcdUZERkJcXHVGRTcwLVxcdUZFNzRcXHVGRTc2LVxcdUZFRkNcXHVGRjIxLVxcdUZGM0FcXHVGRjQxLVxcdUZGNUFcXHVGRjY2LVxcdUZGQkVcXHVGRkMyLVxcdUZGQzdcXHVGRkNBLVxcdUZGQ0ZcXHVGRkQyLVxcdUZGRDdcXHVGRkRBLVxcdUZGRENdfFxcdUQ4MDBbXFx1REMwMC1cXHVEQzBCXFx1REMwRC1cXHVEQzI2XFx1REMyOC1cXHVEQzNBXFx1REMzQ1xcdURDM0RcXHVEQzNGLVxcdURDNERcXHVEQzUwLVxcdURDNURcXHVEQzgwLVxcdURDRkFcXHVERTgwLVxcdURFOUNcXHVERUEwLVxcdURFRDBcXHVERjAwLVxcdURGMUZcXHVERjJELVxcdURGNDBcXHVERjQyLVxcdURGNDlcXHVERjUwLVxcdURGNzVcXHVERjgwLVxcdURGOURcXHVERkEwLVxcdURGQzNcXHVERkM4LVxcdURGQ0ZdfFxcdUQ4MDFbXFx1REMwMC1cXHVEQzlEXFx1RENCMC1cXHVEQ0QzXFx1RENEOC1cXHVEQ0ZCXFx1REQwMC1cXHVERDI3XFx1REQzMC1cXHVERDYzXFx1REQ3MC1cXHVERDdBXFx1REQ3Qy1cXHVERDhBXFx1REQ4Qy1cXHVERDkyXFx1REQ5NFxcdUREOTVcXHVERDk3LVxcdUREQTFcXHVEREEzLVxcdUREQjFcXHVEREIzLVxcdUREQjlcXHVEREJCXFx1RERCQ1xcdURFMDAtXFx1REYzNlxcdURGNDAtXFx1REY1NVxcdURGNjAtXFx1REY2N1xcdURGODAtXFx1REY4NVxcdURGODctXFx1REZCMFxcdURGQjItXFx1REZCQV18XFx1RDgwMltcXHVEQzAwLVxcdURDMDVcXHVEQzA4XFx1REMwQS1cXHVEQzM1XFx1REMzN1xcdURDMzhcXHVEQzNDXFx1REMzRi1cXHVEQzU1XFx1REM2MC1cXHVEQzc2XFx1REM4MC1cXHVEQzlFXFx1RENFMC1cXHVEQ0YyXFx1RENGNFxcdURDRjVcXHVERDAwLVxcdUREMTVcXHVERDIwLVxcdUREMzlcXHVERDgwLVxcdUREQjdcXHVEREJFXFx1RERCRlxcdURFMDBcXHVERTEwLVxcdURFMTNcXHVERTE1LVxcdURFMTdcXHVERTE5LVxcdURFMzVcXHVERTYwLVxcdURFN0NcXHVERTgwLVxcdURFOUNcXHVERUMwLVxcdURFQzdcXHVERUM5LVxcdURFRTRcXHVERjAwLVxcdURGMzVcXHVERjQwLVxcdURGNTVcXHVERjYwLVxcdURGNzJcXHVERjgwLVxcdURGOTFdfFxcdUQ4MDNbXFx1REMwMC1cXHVEQzQ4XFx1REM4MC1cXHVEQ0IyXFx1RENDMC1cXHVEQ0YyXFx1REQwMC1cXHVERDIzXFx1REU4MC1cXHVERUE5XFx1REVCMFxcdURFQjFcXHVERjAwLVxcdURGMUNcXHVERjI3XFx1REYzMC1cXHVERjQ1XFx1REY3MC1cXHVERjgxXFx1REZCMC1cXHVERkM0XFx1REZFMC1cXHVERkY2XXxcXHVEODA0W1xcdURDMDMtXFx1REMzN1xcdURDNzFcXHVEQzcyXFx1REM3NVxcdURDODMtXFx1RENBRlxcdURDRDAtXFx1RENFOFxcdUREMDMtXFx1REQyNlxcdURENDRcXHVERDQ3XFx1REQ1MC1cXHVERDcyXFx1REQ3NlxcdUREODMtXFx1RERCMlxcdUREQzEtXFx1RERDNFxcdUREREFcXHVERERDXFx1REUwMC1cXHVERTExXFx1REUxMy1cXHVERTJCXFx1REU4MC1cXHVERTg2XFx1REU4OFxcdURFOEEtXFx1REU4RFxcdURFOEYtXFx1REU5RFxcdURFOUYtXFx1REVBOFxcdURFQjAtXFx1REVERVxcdURGMDUtXFx1REYwQ1xcdURGMEZcXHVERjEwXFx1REYxMy1cXHVERjI4XFx1REYyQS1cXHVERjMwXFx1REYzMlxcdURGMzNcXHVERjM1LVxcdURGMzlcXHVERjNEXFx1REY1MFxcdURGNUQtXFx1REY2MV18XFx1RDgwNVtcXHVEQzAwLVxcdURDMzRcXHVEQzQ3LVxcdURDNEFcXHVEQzVGLVxcdURDNjFcXHVEQzgwLVxcdURDQUZcXHVEQ0M0XFx1RENDNVxcdURDQzdcXHVERDgwLVxcdUREQUVcXHVEREQ4LVxcdUREREJcXHVERTAwLVxcdURFMkZcXHVERTQ0XFx1REU4MC1cXHVERUFBXFx1REVCOFxcdURGMDAtXFx1REYxQVxcdURGNDAtXFx1REY0Nl18XFx1RDgwNltcXHVEQzAwLVxcdURDMkJcXHVEQ0EwLVxcdURDREZcXHVEQ0ZGLVxcdUREMDZcXHVERDA5XFx1REQwQy1cXHVERDEzXFx1REQxNVxcdUREMTZcXHVERDE4LVxcdUREMkZcXHVERDNGXFx1REQ0MVxcdUREQTAtXFx1RERBN1xcdUREQUEtXFx1REREMFxcdURERTFcXHVEREUzXFx1REUwMFxcdURFMEItXFx1REUzMlxcdURFM0FcXHVERTUwXFx1REU1Qy1cXHVERTg5XFx1REU5RFxcdURFQjAtXFx1REVGOF18XFx1RDgwN1tcXHVEQzAwLVxcdURDMDhcXHVEQzBBLVxcdURDMkVcXHVEQzQwXFx1REM3Mi1cXHVEQzhGXFx1REQwMC1cXHVERDA2XFx1REQwOFxcdUREMDlcXHVERDBCLVxcdUREMzBcXHVERDQ2XFx1REQ2MC1cXHVERDY1XFx1REQ2N1xcdURENjhcXHVERDZBLVxcdUREODlcXHVERDk4XFx1REVFMC1cXHVERUYyXFx1REZCMF18XFx1RDgwOFtcXHVEQzAwLVxcdURGOTldfFxcdUQ4MDlbXFx1REM4MC1cXHVERDQzXXxcXHVEODBCW1xcdURGOTAtXFx1REZGMF18W1xcdUQ4MENcXHVEODFDLVxcdUQ4MjBcXHVEODIyXFx1RDg0MC1cXHVEODY4XFx1RDg2QS1cXHVEODZDXFx1RDg2Ri1cXHVEODcyXFx1RDg3NC1cXHVEODc5XFx1RDg4MC1cXHVEODgzXVtcXHVEQzAwLVxcdURGRkZdfFxcdUQ4MERbXFx1REMwMC1cXHVEQzJFXXxcXHVEODExW1xcdURDMDAtXFx1REU0Nl18XFx1RDgxQVtcXHVEQzAwLVxcdURFMzhcXHVERTQwLVxcdURFNUVcXHVERTcwLVxcdURFQkVcXHVERUQwLVxcdURFRURcXHVERjAwLVxcdURGMkZcXHVERjQwLVxcdURGNDNcXHVERjYzLVxcdURGNzdcXHVERjdELVxcdURGOEZdfFxcdUQ4MUJbXFx1REU0MC1cXHVERTdGXFx1REYwMC1cXHVERjRBXFx1REY1MFxcdURGOTMtXFx1REY5RlxcdURGRTBcXHVERkUxXFx1REZFM118XFx1RDgyMVtcXHVEQzAwLVxcdURGRjddfFxcdUQ4MjNbXFx1REMwMC1cXHVEQ0Q1XFx1REQwMC1cXHVERDA4XXxcXHVEODJCW1xcdURGRjAtXFx1REZGM1xcdURGRjUtXFx1REZGQlxcdURGRkRcXHVERkZFXXxcXHVEODJDW1xcdURDMDAtXFx1REQyMlxcdURENTAtXFx1REQ1MlxcdURENjQtXFx1REQ2N1xcdURENzAtXFx1REVGQl18XFx1RDgyRltcXHVEQzAwLVxcdURDNkFcXHVEQzcwLVxcdURDN0NcXHVEQzgwLVxcdURDODhcXHVEQzkwLVxcdURDOTldfFxcdUQ4MzVbXFx1REMwMC1cXHVEQzU0XFx1REM1Ni1cXHVEQzlDXFx1REM5RVxcdURDOUZcXHVEQ0EyXFx1RENBNVxcdURDQTZcXHVEQ0E5LVxcdURDQUNcXHVEQ0FFLVxcdURDQjlcXHVEQ0JCXFx1RENCRC1cXHVEQ0MzXFx1RENDNS1cXHVERDA1XFx1REQwNy1cXHVERDBBXFx1REQwRC1cXHVERDE0XFx1REQxNi1cXHVERDFDXFx1REQxRS1cXHVERDM5XFx1REQzQi1cXHVERDNFXFx1REQ0MC1cXHVERDQ0XFx1REQ0NlxcdURENEEtXFx1REQ1MFxcdURENTItXFx1REVBNVxcdURFQTgtXFx1REVDMFxcdURFQzItXFx1REVEQVxcdURFREMtXFx1REVGQVxcdURFRkMtXFx1REYxNFxcdURGMTYtXFx1REYzNFxcdURGMzYtXFx1REY0RVxcdURGNTAtXFx1REY2RVxcdURGNzAtXFx1REY4OFxcdURGOEEtXFx1REZBOFxcdURGQUEtXFx1REZDMlxcdURGQzQtXFx1REZDQl18XFx1RDgzN1tcXHVERjAwLVxcdURGMUVdfFxcdUQ4MzhbXFx1REQwMC1cXHVERDJDXFx1REQzNy1cXHVERDNEXFx1REQ0RVxcdURFOTAtXFx1REVBRFxcdURFQzAtXFx1REVFQl18XFx1RDgzOVtcXHVERkUwLVxcdURGRTZcXHVERkU4LVxcdURGRUJcXHVERkVEXFx1REZFRVxcdURGRjAtXFx1REZGRV18XFx1RDgzQVtcXHVEQzAwLVxcdURDQzRcXHVERDAwLVxcdURENDNcXHVERDRCXXxcXHVEODNCW1xcdURFMDAtXFx1REUwM1xcdURFMDUtXFx1REUxRlxcdURFMjFcXHVERTIyXFx1REUyNFxcdURFMjdcXHVERTI5LVxcdURFMzJcXHVERTM0LVxcdURFMzdcXHVERTM5XFx1REUzQlxcdURFNDJcXHVERTQ3XFx1REU0OVxcdURFNEJcXHVERTRELVxcdURFNEZcXHVERTUxXFx1REU1MlxcdURFNTRcXHVERTU3XFx1REU1OVxcdURFNUJcXHVERTVEXFx1REU1RlxcdURFNjFcXHVERTYyXFx1REU2NFxcdURFNjctXFx1REU2QVxcdURFNkMtXFx1REU3MlxcdURFNzQtXFx1REU3N1xcdURFNzktXFx1REU3Q1xcdURFN0VcXHVERTgwLVxcdURFODlcXHVERThCLVxcdURFOUJcXHVERUExLVxcdURFQTNcXHVERUE1LVxcdURFQTlcXHVERUFCLVxcdURFQkJdfFxcdUQ4NjlbXFx1REMwMC1cXHVERURGXFx1REYwMC1cXHVERkZGXXxcXHVEODZEW1xcdURDMDAtXFx1REYzOFxcdURGNDAtXFx1REZGRl18XFx1RDg2RVtcXHVEQzAwLVxcdURDMURcXHVEQzIwLVxcdURGRkZdfFxcdUQ4NzNbXFx1REMwMC1cXHVERUExXFx1REVCMC1cXHVERkZGXXxcXHVEODdBW1xcdURDMDAtXFx1REZFMF18XFx1RDg3RVtcXHVEQzAwLVxcdURFMURdfFxcdUQ4ODRbXFx1REMwMC1cXHVERjRBXSlcXFMqL2c7XG4iLCAiLyoqXG4gKiBUaGlzIFR5cGVTY3JpcHQgY29kZSBpbXBvcnRzIHRoZSBuZWNlc3NhcnkgbW9kdWxlcyBhbmQgZGVmaW5lcyBhIGNsYXNzIG5hbWVkIGBSZWFkbWVFZGl0b3JgLlxuICogVGhlIGNsYXNzIHJlcHJlc2VudHMgYW4gZWRpdG9yIGZvciBtb2RpZnlpbmcgYSBSRUFETUUgZmlsZS5cbiAqIEl0IGhhcyBtZXRob2RzIHRvIHVwZGF0ZSBzcGVjaWZpYyBzZWN0aW9ucyB3aXRoaW4gdGhlIGZpbGUgYW5kIGR1bXAgdGhlIG1vZGlmaWVkIGNvbnRlbnQgYmFjayB0byB0aGUgZmlsZS5cbiAqL1xuXG5pbXBvcnQgKiBhcyBmcyBmcm9tICdub2RlOmZzJztcbmltcG9ydCB7IEVPTCB9IGZyb20gJ25vZGU6b3MnO1xuXG5pbXBvcnQgKiBhcyBjb3JlIGZyb20gJ0BhY3Rpb25zL2NvcmUnO1xuXG5pbXBvcnQgeyBpbmRleE9mUmVnZXgsIGxhc3RJbmRleE9mUmVnZXggfSBmcm9tICcuL2hlbHBlcnMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi9sb2d0YXNrL2luZGV4LmpzJztcbmltcG9ydCB7IGZvcm1hdE1hcmtkb3duIH0gZnJvbSAnLi9wcmV0dGllci5qcyc7XG5cbi8qKlxuICogVGhlIGZvcm1hdCBmb3IgdGhlIHN0YXJ0IHRva2VuIG9mIGEgc2VjdGlvbi5cbiAqL1xuXG5leHBvcnQgY29uc3Qgc3RhcnRUb2tlbkZvcm1hdCA9ICcoXnxbXmBcXFxcXFxcXF0pPCEtLVxcXFxzK3N0YXJ0XFxcXHMrJXNcXFxccystLT4nO1xuXG4vKipcbiAqIFRoZSBmb3JtYXQgZm9yIHRoZSBlbmQgdG9rZW4gb2YgYSBzZWN0aW9uLlxuICovXG5leHBvcnQgY29uc3QgZW5kVG9rZW5Gb3JtYXQgPSAnKF58W15gXFxcXFxcXFxdKTwhLS1cXFxccytlbmRcXFxccyslc1xcXFxzKy0tPic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlYWRtZUVkaXRvciB7XG4gIHByaXZhdGUgbG9nID0gbmV3IExvZ1Rhc2soJ1JlYWRtZUVkaXRvcicpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCB0byB0aGUgUkVBRE1FIGZpbGUuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IGZpbGVQYXRoOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBmaWxlQ29udGVudDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGluc3RhbmNlIG9mIGBSZWFkbWVFZGl0b3JgLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZmlsZVBhdGggLSBUaGUgcGF0aCB0byB0aGUgUkVBRE1FIGZpbGUuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihmaWxlUGF0aDogc3RyaW5nKSB7XG4gICAgdGhpcy5maWxlUGF0aCA9IGZpbGVQYXRoO1xuICAgIHRyeSB7XG4gICAgICBmcy5hY2Nlc3NTeW5jKGZpbGVQYXRoKTtcbiAgICAgIHRoaXMuZmlsZUNvbnRlbnQgPSBmcy5yZWFkRmlsZVN5bmMoZmlsZVBhdGgsICd1dGY4Jyk7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuR0lUSFVCX0FDVElPTlMpIHtcbiAgICAgICAgY29yZS5zZXRPdXRwdXQoJ3JlYWRtZV9iZWZvcmUnLCB0aGlzLmZpbGVDb250ZW50KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5sb2cuZmFpbChgUmVhZG1lIGF0ICcke2ZpbGVQYXRofScgZG9lcyBub3QgZXhpc3QuYCk7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaW5kZXhlcyBvZiB0aGUgc3RhcnQgYW5kIGVuZCB0b2tlbnMgZm9yIGEgZ2l2ZW4gc2VjdGlvbi5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHRva2VuIC0gVGhlIHNlY3Rpb24gdG9rZW4uXG4gICAqIEByZXR1cm5zIHtudW1iZXJbXX0gLSBUaGUgaW5kZXhlcyBvZiB0aGUgc3RhcnQgYW5kIGVuZCB0b2tlbnMuXG4gICAqL1xuICBnZXRUb2tlbkluZGV4ZXModG9rZW46IHN0cmluZywgbG9nVGFzaz86IExvZ1Rhc2spOiBudW1iZXJbXSB7XG4gICAgY29uc3QgbG9nID0gbG9nVGFzayA/PyBuZXcgTG9nVGFzaygnZ2V0VG9rZW5JbmRleGVzJyk7XG4gICAgY29uc3Qgc3RhcnRSZWdFeHAgPSBuZXcgUmVnRXhwKHN0YXJ0VG9rZW5Gb3JtYXQucmVwbGFjZSgnJXMnLCB0b2tlbikpO1xuICAgIGNvbnN0IHN0b3BSZWdFeHAgPSBuZXcgUmVnRXhwKGVuZFRva2VuRm9ybWF0LnJlcGxhY2UoJyVzJywgdG9rZW4pKTtcbiAgICBjb25zdCBzdGFydEluZGV4ID0gbGFzdEluZGV4T2ZSZWdleCh0aGlzLmZpbGVDb250ZW50LCBzdGFydFJlZ0V4cCk7XG4gICAgaWYgKHN0YXJ0SW5kZXggPT09IC0xKSB7XG4gICAgICBsb2cuZGVidWcoYE5vIHN0YXJ0IHRva2VuIGZvdW5kIGZvciBzZWN0aW9uICcke3Rva2VufScuIFNraXBwaW5nYCk7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgY29uc3Qgc3RvcEluZGV4ID0gaW5kZXhPZlJlZ2V4KHRoaXMuZmlsZUNvbnRlbnQsIHN0b3BSZWdFeHApO1xuICAgIGlmIChzdG9wSW5kZXggPT09IC0xKSB7XG4gICAgICBsb2cuZGVidWcoYE5vIHN0YXJ0IG9yIGVuZCB0b2tlbiBmb3VuZCBmb3Igc2VjdGlvbiAnJHt0b2tlbn0nLiBTa2lwcGluZ2ApO1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIHJldHVybiBbc3RhcnRJbmRleCwgc3RvcEluZGV4XTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIGEgc3BlY2lmaWMgc2VjdGlvbiBpbiB0aGUgUkVBRE1FIGZpbGUgd2l0aCB0aGUgcHJvdmlkZWQgY29udGVudC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgc2VjdGlvbi5cbiAgICogQHBhcmFtIHtzdHJpbmcgfCBzdHJpbmdbXX0gcHJvdmlkZWRDb250ZW50IC0gVGhlIGNvbnRlbnQgdG8gdXBkYXRlIHRoZSBzZWN0aW9uIHdpdGguXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gYWRkTmV3bGluZXMgLSBXaGV0aGVyIHRvIGFkZCBuZXdsaW5lcyBiZWZvcmUgYW5kIGFmdGVyIHRoZSBjb250ZW50LlxuICAgKi9cbiAgdXBkYXRlU2VjdGlvbihuYW1lOiBzdHJpbmcsIHByb3ZpZGVkQ29udGVudDogc3RyaW5nIHwgc3RyaW5nW10sIGFkZE5ld2xpbmVzID0gdHJ1ZSk6IHZvaWQge1xuICAgIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKG5hbWUpO1xuICAgIGNvbnN0IGNvbnRlbnQgPSAoXG4gICAgICBBcnJheS5pc0FycmF5KHByb3ZpZGVkQ29udGVudCkgPyBwcm92aWRlZENvbnRlbnQuam9pbihFT0wpIDogcHJvdmlkZWRDb250ZW50ID8/ICcnXG4gICAgKS50cmltKCk7XG4gICAgbG9nLmluZm8oYExvb2tpbmcgZm9yIHRoZSAke25hbWV9IHRva2VuIGluICR7dGhpcy5maWxlUGF0aH1gKTtcblxuICAgIGNvbnN0IFtzdGFydEluZGV4LCBzdG9wSW5kZXhdID0gdGhpcy5nZXRUb2tlbkluZGV4ZXMobmFtZSwgbG9nKTtcbiAgICBpZiAoc3RhcnRJbmRleCAmJiBzdG9wSW5kZXgpIHtcbiAgICAgIGNvbnN0IGJlZm9yZUNvbnRlbnQgPSB0aGlzLmZpbGVDb250ZW50LnNsaWNlKDAsIHN0YXJ0SW5kZXgpO1xuICAgICAgY29uc3QgYWZ0ZXJDb250ZW50ID0gdGhpcy5maWxlQ29udGVudC5zbGljZShzdG9wSW5kZXgpO1xuXG4gICAgICB0aGlzLmZpbGVDb250ZW50ID0gYWRkTmV3bGluZXNcbiAgICAgICAgPyBgJHtiZWZvcmVDb250ZW50fVxcblxcbiR7Y29udGVudH1cXG4ke2FmdGVyQ29udGVudH1gXG4gICAgICAgIDogYCR7YmVmb3JlQ29udGVudH0ke2NvbnRlbnR9JHthZnRlckNvbnRlbnR9YDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRHVtcHMgdGhlIG1vZGlmaWVkIGNvbnRlbnQgYmFjayB0byB0aGUgUkVBRE1FIGZpbGUuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fVxuICAgKi9cbiAgYXN5bmMgZHVtcFRvRmlsZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBjb250ZW50ID0gYXdhaXQgZm9ybWF0TWFya2Rvd24odGhpcy5maWxlQ29udGVudCk7XG4gICAgaWYgKHByb2Nlc3MuZW52LkdJVEhVQl9BQ1RJT05TKSB7XG4gICAgICBjb3JlLnNldE91dHB1dCgncmVhZG1lX2FmdGVyJywgY29udGVudCk7XG4gICAgfVxuICAgIHJldHVybiBmcy5wcm9taXNlcy53cml0ZUZpbGUodGhpcy5maWxlUGF0aCwgY29udGVudCwgJ3V0ZjgnKTtcbiAgfVxufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgZXhwb3J0cyB0aHJlZSBmdW5jdGlvbnM6IGBmb3JtYXRZYW1sYCwgYGZvcm1hdE1hcmtkb3duYCwgYW5kIGB3cmFwRGVzY3JpcHRpb25gLlxuICpcbiAqIC0gYGZvcm1hdFlhbWxgIHRha2VzIGEgWUFNTCBzdHJpbmcgYW5kIGFuIG9wdGlvbmFsIGZpbGVwYXRoIGFzIHBhcmFtZXRlcnMgYW5kIHVzZXMgdGhlIGBwcmV0dGllcmAgbGlicmFyeSB0byBmb3JtYXQgdGhlIFlBTUwgY29kZS4gSXQgcmV0dXJucyB0aGUgZm9ybWF0dGVkIFlBTUwgc3RyaW5nLlxuICogLSBgZm9ybWF0TWFya2Rvd25gIHRha2VzIGEgTWFya2Rvd24gc3RyaW5nIGFuZCBhbiBvcHRpb25hbCBmaWxlcGF0aCBhcyBwYXJhbWV0ZXJzIGFuZCB1c2VzIHRoZSBgcHJldHRpZXJgIGxpYnJhcnkgdG8gZm9ybWF0IHRoZSBNYXJrZG93biBjb2RlLiBJdCByZXR1cm5zIHRoZSBmb3JtYXR0ZWQgTWFya2Rvd24gc3RyaW5nLlxuICogLSBgd3JhcERlc2NyaXB0aW9uYCB0YWtlcyBhIHN0cmluZyB2YWx1ZSwgYW4gYXJyYXkgb2YgY29udGVudCwgYW5kIGFuIG9wdGlvbmFsIHByZWZpeCBhcyBwYXJhbWV0ZXJzLiBJdCB3cmFwcyB0aGUgZGVzY3JpcHRpb24gdGV4dCB3aXRoIHRoZSBzcGVjaWZpZWQgcHJlZml4IGFuZCBmb3JtYXRzIGl0IHVzaW5nIGBwcmV0dGllcmAuIEl0IHJldHVybnMgdGhlIHVwZGF0ZWQgY29udGVudCBhcnJheSB3aXRoIHRoZSBmb3JtYXR0ZWQgZGVzY3JpcHRpb24gbGluZXMuXG4gKlxuICogVGhlIGNvZGUgdXRpbGl6ZXMgdGhlIGBwcmV0dGllcmAgbGlicmFyeSBmb3IgY29kZSBmb3JtYXR0aW5nIGFuZCB0aGUgYExvZ1Rhc2tgIGNsYXNzIGZvciBsb2dnaW5nIHB1cnBvc2VzLlxuICovXG5cbmltcG9ydCB7IGZvcm1hdCB9IGZyb20gJ3ByZXR0aWVyJztcblxuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi9sb2d0YXNrL2luZGV4LmpzJztcblxuY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soJ3ByZXR0aWVyJyk7XG5cbi8qKlxuICogRm9ybWF0cyBhIFlBTUwgc3RyaW5nIHVzaW5nIGBwcmV0dGllcmAuXG4gKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgLSBUaGUgWUFNTCBzdHJpbmcgdG8gZm9ybWF0LlxuICogQHBhcmFtIHtzdHJpbmd9IFtmaWxlcGF0aF0gLSBUaGUgb3B0aW9uYWwgZmlsZXBhdGguXG4gKiBAcmV0dXJucyB7UHJvbWlzZTxzdHJpbmc+fSBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB3aXRoIHRoZSBmb3JtYXR0ZWQgWUFNTCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmb3JtYXRZYW1sKHZhbHVlOiBzdHJpbmcsIGZpbGVwYXRoPzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgZnAgPSBmaWxlcGF0aCA/IHsgZmlsZXBhdGggfSA6IHt9O1xuICByZXR1cm4gZm9ybWF0KHZhbHVlLCB7XG4gICAgc2VtaTogZmFsc2UsXG4gICAgcGFyc2VyOiAneWFtbCcsXG4gICAgZW1iZWRkZWRMYW5ndWFnZUZvcm1hdHRpbmc6ICdhdXRvJyxcbiAgICAuLi5mcCxcbiAgfSk7XG59XG5cbi8qKlxuICogRm9ybWF0cyBhIE1hcmtkb3duIHN0cmluZyB1c2luZyBgcHJldHRpZXJgLlxuICogQHBhcmFtIHtzdHJpbmd9IHZhbHVlIC0gVGhlIE1hcmtkb3duIHN0cmluZyB0byBmb3JtYXQuXG4gKiBAcGFyYW0ge3N0cmluZ30gW2ZpbGVwYXRoXSAtIFRoZSBvcHRpb25hbCBmaWxlcGF0aC5cbiAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIGZvcm1hdHRlZCBNYXJrZG93biBzdHJpbmcuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmb3JtYXRNYXJrZG93bih2YWx1ZTogc3RyaW5nLCBmaWxlcGF0aD86IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiB7XG4gIGNvbnN0IGZwID0gZmlsZXBhdGggPyB7IGZpbGVwYXRoIH0gOiB7fTtcbiAgcmV0dXJuIGZvcm1hdCh2YWx1ZSwge1xuICAgIHNlbWk6IGZhbHNlLFxuICAgIHBhcnNlcjogJ21hcmtkb3duJyxcbiAgICBlbWJlZGRlZExhbmd1YWdlRm9ybWF0dGluZzogJ2F1dG8nLFxuICAgIC4uLmZwLFxuICB9KTtcbn1cblxuLyoqXG4gKiBXcmFwcyBhIGRlc2NyaXB0aW9uIHRleHQgd2l0aCBhIHByZWZpeCBhbmQgZm9ybWF0cyBpdCB1c2luZyBgcHJldHRpZXJgLlxuICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IHZhbHVlIC0gVGhlIGRlc2NyaXB0aW9uIHRleHQgdG8gd3JhcCBhbmQgZm9ybWF0LlxuICogQHBhcmFtIHtzdHJpbmdbXX0gY29udGVudCAtIFRoZSBhcnJheSBvZiBjb250ZW50IHRvIHVwZGF0ZS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbcHJlZml4PScgICAgIyAnXSAtIFRoZSBvcHRpb25hbCBwcmVmaXggdG8gd3JhcCB0aGUgZGVzY3JpcHRpb24gbGluZXMuXG4gKiBAcmV0dXJucyB7UHJvbWlzZTxzdHJpbmdbXT59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdpdGggdGhlIHVwZGF0ZWQgY29udGVudCBhcnJheS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdyYXBEZXNjcmlwdGlvbihcbiAgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgY29udGVudDogc3RyaW5nW10sXG4gIHByZWZpeCA9ICcgICAgIyAnLFxuKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICBpZiAoIXZhbHVlKSByZXR1cm4gY29udGVudCA/PyBbXTtcbiAgLy8gY29uc3QgdmFsdWVXaXRob3V0UHJlZml4ID0gcHJlZml4ICYmIHByZWZpeC5sZW5ndGggPiAwID8gdmFsdWUucmVwbGFjZShwcmVmaXgsICcnKSA6IHZhbHVlO1xuICBsZXQgZm9ybWF0dGVkU3RyaW5nID0gJyc7XG4gIHRyeSB7XG4gICAgZm9ybWF0dGVkU3RyaW5nID0gYXdhaXQgZm9ybWF0KHZhbHVlLCB7XG4gICAgICBzZW1pOiBmYWxzZSxcbiAgICAgIHBhcnNlcjogJ21hcmtkb3duJyxcbiAgICAgIHByb3NlV3JhcDogJ2Fsd2F5cycsXG4gICAgfSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgbG9nLmVycm9yKGAke2Vycm9yfWApO1xuICB9XG5cbiAgY29udGVudC5wdXNoKC4uLmZvcm1hdHRlZFN0cmluZy5zcGxpdCgnXFxuJykubWFwKChsaW5lKSA9PiBwcmVmaXggKyBsaW5lLnJlcGxhY2UocHJlZml4LCAnJykpKTtcbiAgcmV0dXJuIGNvbnRlbnQ7XG59XG4iLCAiLyoqXG4gKiBUaGlzIFR5cGVTY3JpcHQgY29kZSBpbXBvcnRzIHZhcmlvdXMgbW9kdWxlcyBhbmQgZGVmaW5lcyBhIGZ1bmN0aW9uIG5hbWVkICdnZW5lcmF0ZURvY3MnLlxuICogVGhlIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciBnZW5lcmF0aW5nIGRvY3VtZW50YXRpb24gZm9yIHRoZSBSRUFETUUubWQgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW5wdXRzLlxuICogSXQgaXRlcmF0ZXMgdGhyb3VnaCBlYWNoIHNlY3Rpb24gZGVmaW5lZCBpbiB0aGUgJ2lucHV0cy5zZWN0aW9ucycgYXJyYXkgYW5kIGNhbGxzIHRoZSAndXBkYXRlU2VjdGlvbicgZnVuY3Rpb24gdG8gdXBkYXRlIHRoZSBjb3JyZXNwb25kaW5nIHNlY3Rpb24gaW4gdGhlIFJFQURNRS5tZCBmaWxlLlxuICogSWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgdXBkYXRlIG9mIGEgc2VjdGlvbiwgaXQgbG9ncyB0aGUgZXJyb3IgbWVzc2FnZSBhbmQgc3RvcHMgdGhlIHByb2Nlc3MuXG4gKiBGaW5hbGx5LCBpdCBzYXZlcyB0aGUgdXBkYXRlZCBSRUFETUUubWQgZmlsZSBhbmQgY2FsbHMgdGhlICdzYXZlJyBmdW5jdGlvbi5cbiAqL1xuXG5pbXBvcnQgKiBhcyBjb3JlIGZyb20gJ0BhY3Rpb25zL2NvcmUnO1xuXG5pbXBvcnQgeyBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IElucHV0cyBmcm9tICcuL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IHVwZGF0ZVNlY3Rpb24gZnJvbSAnLi9zZWN0aW9ucy9pbmRleC5qcyc7XG5cbmV4cG9ydCB0eXBlIFNlY3Rpb25LViA9IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4vKipcbiAqIENsYXNzIGZvciBtYW5hZ2luZyBSRUFETUUgZ2VuZXJhdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlYWRtZUdlbmVyYXRvciB7XG4gIC8qKlxuICAgKiBUaGUgSW5wdXRzIGluc3RhbmNlLlxuICAgKi9cbiAgcHJpdmF0ZSBpbnB1dHM6IElucHV0cztcblxuICAvKipcbiAgICogVGhlIExvZ2dlciBpbnN0YW5jZS5cbiAgICovXG4gIHByaXZhdGUgbG9nOiBMb2dUYXNrO1xuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgUmVhZG1lR2VuZXJhdG9yLlxuICAgKlxuICAgKiBAcGFyYW0gaW5wdXRzIC0gVGhlIElucHV0cyBpbnN0YW5jZVxuICAgKiBAcGFyYW0gbG9nIC0gVGhlIExvZ2dlciBpbnN0YW5jZVxuICAgKi9cbiAgY29uc3RydWN0b3IoaW5wdXRzOiBJbnB1dHMsIGxvZzogTG9nVGFzaykge1xuICAgIHRoaXMuaW5wdXRzID0gaW5wdXRzO1xuICAgIHRoaXMubG9nID0gbG9nO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIFJFQURNRSBzZWN0aW9ucy5cbiAgICpcbiAgICogQHBhcmFtIHNlY3Rpb25zIC0gVGhlIHNlY3Rpb25zIGFycmF5XG4gICAqIEByZXR1cm5zIFByb21pc2UgYXJyYXkgb2Ygc2VjdGlvbiBLViBvYmplY3RzXG4gICAqL1xuICB1cGRhdGVTZWN0aW9ucyhzZWN0aW9uczogUmVhZG1lU2VjdGlvbltdKTogUHJvbWlzZTxTZWN0aW9uS1Y+W10ge1xuICAgIGNvbnN0IHByb21pc2VzOiBQcm9taXNlPFNlY3Rpb25LVj5bXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBzZWN0aW9uIG9mIHNlY3Rpb25zKSB7XG4gICAgICBwcm9taXNlcy5wdXNoKHVwZGF0ZVNlY3Rpb24oc2VjdGlvbiwgdGhpcy5pbnB1dHMpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcHJvbWlzZXM7XG4gIH1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgdGhlIHNlY3Rpb24gdXBkYXRlIHByb21pc2VzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvbWlzZXMgLSBUaGUgcHJvbWlzZSBhcnJheVxuICAgKiBAcmV0dXJucyBQcm9taXNlIHJlc29sdmluZyB0byBjb21iaW5lZCBzZWN0aW9ucyBLVlxuICAgKi9cbiAgYXN5bmMgcmVzb2x2ZVVwZGF0ZXMocHJvbWlzZXM6IFByb21pc2U8U2VjdGlvbktWPltdKTogUHJvbWlzZTxTZWN0aW9uS1Y+IHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnUmVzb2x2aW5nIHVwZGF0ZXMnKTtcbiAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuICAgIGNvbnN0IHNlY3Rpb25zOiBTZWN0aW9uS1YgPSB7fTtcblxuICAgIGZvciAoY29uc3QgcmVzdWx0IG9mIHJlc3VsdHMpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oc2VjdGlvbnMsIHJlc3VsdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNlY3Rpb25zO1xuICB9XG5cbiAgLyoqXG4gICAqIE91dHB1dHMgdGhlIHNlY3Rpb25zIEtWIHRvIEdpdEh1YiBvdXRwdXQuXG4gICAqXG4gICAqIEBwYXJhbSBzZWN0aW9ucyAtIFRoZSBzZWN0aW9ucyBLVlxuICAgKi9cbiAgb3V0cHV0U2VjdGlvbnMoc2VjdGlvbnM6IFNlY3Rpb25LVik6IHZvaWQge1xuICAgIGlmIChwcm9jZXNzLmVudi5HSVRIVUJfQUNUSU9OUykge1xuICAgICAgdGhpcy5sb2cuZGVidWcoJ091dHB1dHRpbmcgc2VjdGlvbnMnKTtcbiAgICAgIGNvcmUuc2V0T3V0cHV0KCdzZWN0aW9ucycsIEpTT04uc3RyaW5naWZ5KHNlY3Rpb25zLCBudWxsLCAyKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nLmRlYnVnKCdOb3Qgb3V0cHV0dGluZyBzZWN0aW9ucycpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgdGhlIFJFQURNRSBkb2N1bWVudGF0aW9uLlxuICAgKlxuICAgKiBAcmV0dXJucyBQcm9taXNlIHJlc29sdmluZyB3aGVuIGRvbmVcbiAgICovXG4gIGFzeW5jIGdlbmVyYXRlKHByb3ZpZGVkU2VjdGlvbnM6IFJlYWRtZVNlY3Rpb25bXSA9IHRoaXMuaW5wdXRzLnNlY3Rpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2VjdGlvblByb21pc2VzID0gdGhpcy51cGRhdGVTZWN0aW9ucyhwcm92aWRlZFNlY3Rpb25zKTtcbiAgICBjb25zdCBzZWN0aW9ucyA9IGF3YWl0IHRoaXMucmVzb2x2ZVVwZGF0ZXMoc2VjdGlvblByb21pc2VzKTtcblxuICAgIHRoaXMub3V0cHV0U2VjdGlvbnMoc2VjdGlvbnMpO1xuXG4gICAgcmV0dXJuIHRoaXMuaW5wdXRzLnJlYWRtZUVkaXRvci5kdW1wVG9GaWxlKCk7XG4gIH1cbn1cbiIsICIvKipcbiAqIFRoaXMgVHlwZVNjcmlwdCBjb2RlIGltcG9ydHMgbmVjZXNzYXJ5IG1vZHVsZXMgYW5kIGRlZmluZXMgYSBmdW5jdGlvbiBuYW1lZCAndXBkYXRlQmFkZ2VzJyB3aGljaCB0YWtlcyBhIHNlY3Rpb25Ub2tlbiAoUmVhZG1lU2VjdGlvbikgYW5kIGFuIGluc3RhbmNlIG9mIHRoZSAnSW5wdXRzJyBjbGFzcyBhcyBpdHMgcGFyYW1ldGVycy5cbiAqIFRoZSBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdXBkYXRpbmcgdGhlIGJhZGdlcyBzZWN0aW9uIGluIHRoZSBSRUFETUUubWQgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW5wdXRzLlxuICogSXQgdXRpbGl6ZXMgdGhlICdMb2dUYXNrJyBjbGFzcyBmb3IgbG9nZ2luZyBwdXJwb3Nlcy5cbiAqL1xuXG5pbXBvcnQgeyBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi4vbG9ndGFzay9pbmRleC5qcyc7XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBhIGJhZGdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElCYWRnZSB7XG4gIGFsdDogc3RyaW5nO1xuICBpbWc6IHN0cmluZztcbiAgdXJsPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEdlbmVyYXRlIEdpdEh1YiBiYWRnZXMuXG4gKiBAcmV0dXJucyB7SUJhZGdlW119IC0gVGhlIGFycmF5IG9mIEdpdEh1YiBiYWRnZXMuXG4gKi9cbmZ1bmN0aW9uIGdpdGh1YkJhZGdlcyhvd25lcjogc3RyaW5nLCByZXBvOiBzdHJpbmcpOiBJQmFkZ2VbXSB7XG4gIGNvbnN0IHJlcG9VcmwgPSBgaHR0cHM6Ly9naXRodWIuY29tLyR7b3duZXJ9LyR7cmVwb31gO1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIGltZzogYGh0dHBzOi8vaW1nLnNoaWVsZHMuaW8vZ2l0aHViL3YvcmVsZWFzZS8ke293bmVyfS8ke3JlcG99P2Rpc3BsYXlfbmFtZT10YWcmc29ydD1zZW12ZXImbG9nbz1naXRodWImc3R5bGU9ZmxhdC1zcXVhcmVgLFxuICAgICAgYWx0OiAnUmVsZWFzZSBieSB0YWcnLFxuICAgICAgdXJsOiBgJHtyZXBvVXJsfS9yZWxlYXNlcy9sYXRlc3RgLFxuICAgIH0sXG4gICAge1xuICAgICAgaW1nOiBgaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9naXRodWIvcmVsZWFzZS1kYXRlLyR7b3duZXJ9LyR7cmVwb30/ZGlzcGxheV9uYW1lPXRhZyZzb3J0PXNlbXZlciZsb2dvPWdpdGh1YiZzdHlsZT1mbGF0LXNxdWFyZWAsXG4gICAgICBhbHQ6ICdSZWxlYXNlIGJ5IGRhdGUnLFxuICAgICAgdXJsOiBgJHtyZXBvVXJsfS9yZWxlYXNlcy9sYXRlc3RgLFxuICAgIH0sXG4gICAge1xuICAgICAgaW1nOiBgaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9naXRodWIvbGFzdC1jb21taXQvJHtvd25lcn0vJHtyZXBvfT9sb2dvPWdpdGh1YiZzdHlsZT1mbGF0LXNxdWFyZWAsXG4gICAgICBhbHQ6ICdDb21taXQnLFxuICAgIH0sXG4gICAge1xuICAgICAgaW1nOiBgaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9naXRodWIvaXNzdWVzLyR7b3duZXJ9LyR7cmVwb30/bG9nbz1naXRodWImc3R5bGU9ZmxhdC1zcXVhcmVgLFxuICAgICAgYWx0OiAnT3BlbiBJc3N1ZXMnLFxuICAgICAgdXJsOiBgJHtyZXBvVXJsfS9pc3N1ZXNgLFxuICAgIH0sXG4gICAge1xuICAgICAgaW1nOiBgaHR0cHM6Ly9pbWcuc2hpZWxkcy5pby9naXRodWIvZG93bmxvYWRzLyR7b3duZXJ9LyR7cmVwb30vdG90YWw/bG9nbz1naXRodWImc3R5bGU9ZmxhdC1zcXVhcmVgLFxuICAgICAgYWx0OiAnRG93bmxvYWRzJyxcbiAgICB9LFxuICBdO1xufVxuXG4vKipcbiAqIEdlbmVyYXRlcyBhIGJhZGdlIEhUTUwgbWFya3VwLlxuICogQHBhcmFtIHtJQmFkZ2V9IGl0ZW0gLSBUaGUgYmFkZ2Ugb2JqZWN0LlxuICogQHJldHVybnMge3N0cmluZ30gLSBUaGUgSFRNTCBtYXJrdXAgZm9yIHRoZSBiYWRnZS5cbiAqL1xuZnVuY3Rpb24gZ2VuZXJhdGVCYWRnZShpdGVtOiBJQmFkZ2UsIGxvZzogTG9nVGFzayk6IHN0cmluZyB7XG4gIGNvbnN0IGJhZGdlVGVtcGxhdGUgPSBgPGltZyBzcmM9XCIke2l0ZW0uaW1nfVwiIGFsdD1cIiR7ZW5jb2RlVVJJQ29tcG9uZW50KGl0ZW0uYWx0KSB8fCAnJ31cIiAvPmA7XG4gIGxvZy5pbmZvKGBHZW5lcmF0aW5nIGJhZGdlICR7aXRlbS5hbHR9YCk7XG4gIGlmIChpdGVtLnVybCkge1xuICAgIHJldHVybiBgPGEgaHJlZj1cIiR7ZW5jb2RlVVJJQ29tcG9uZW50KGl0ZW0udXJsKX1cIj4ke2JhZGdlVGVtcGxhdGV9PC9hPmA7XG4gIH1cbiAgcmV0dXJuIGJhZGdlVGVtcGxhdGU7XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGFsbCBiYWRnZXMgSFRNTCBtYXJrdXAuXG4gKiBAcGFyYW0ge0lCYWRnZX0gYmFkZ2VzIC0gVGhlIGFycmF5IG9mIGJhZGdlIG9iamVjdHNcbiAqIEBwYXJhbSBsb2cgLSBBIExvZ1Rhc2sgaW5zdGFuY2VcbiAqIEByZXR1cm5zIHtzdHJpbmdbXX0gLSBUaGUgYXJyYXkgb2YgSFRNTCBtYXJrdXAgZm9yIGFsbCBiYWRnZXMuXG4gKi9cbmZ1bmN0aW9uIGdlbmVyYXRlQmFkZ2VzKGJhZGdlczogSUJhZGdlW10sIGxvZzogTG9nVGFzayk6IHN0cmluZ1tdIHtcbiAgY29uc3QgYmFkZ2VBcnJheTogc3RyaW5nW10gPSBbXTtcbiAgZm9yIChjb25zdCBiIG9mIGJhZGdlcykge1xuICAgIGJhZGdlQXJyYXkucHVzaChnZW5lcmF0ZUJhZGdlKGIsIGxvZykpO1xuICB9XG4gIGxvZy5kZWJ1ZyhgVG90YWwgYmFkZ2VzOiAke2JhZGdlQXJyYXkubGVuZ3RofWApO1xuICByZXR1cm4gYmFkZ2VBcnJheTtcbn1cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVwZGF0ZUJhZGdlcyhcbiAgc2VjdGlvblRva2VuOiBSZWFkbWVTZWN0aW9uLFxuICBpbnB1dHM6IElucHV0cyxcbik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzayhzZWN0aW9uVG9rZW4pO1xuICBjb25zdCBjb25maWcgPSBpbnB1dHMuY29uZmlnLmdldCgpO1xuXG4gIGNvbnN0IGVuYWJsZVZlcnNpb25pbmcgPSBjb25maWcgPyBjb25maWcudmVyc2lvbmluZz8uYmFkZ2UgOiBmYWxzZTtcbiAgbG9nLmluZm8oYFZlcnNpb25pbmcgYmFkZ2U6ICR7ZW5hYmxlVmVyc2lvbmluZ31gKTtcblxuICBsb2cuc3RhcnQoKTtcbiAgbGV0IGNvbnRlbnQgPSAnJztcbiAgLy8gQWRkIEdpdEh1YiBiYWRnZXNcbiAgaWYgKGVuYWJsZVZlcnNpb25pbmcpIHtcbiAgICBjb25zdCBiYWRnZXM6IElCYWRnZVtdID0gZ2l0aHViQmFkZ2VzKGlucHV0cy5vd25lciwgaW5wdXRzLnJlcG8pO1xuICAgIGNvbnRlbnQgPSBnZW5lcmF0ZUJhZGdlcyhiYWRnZXMsIGxvZykuam9pbignJyk7XG4gICAgaW5wdXRzLnJlYWRtZUVkaXRvci51cGRhdGVTZWN0aW9uKHNlY3Rpb25Ub2tlbiwgY29udGVudCk7XG4gIH1cbiAgbG9nLnN1Y2Nlc3MoKTtcbiAgY29uc3QgcmV0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG4gIHJldFtzZWN0aW9uVG9rZW5dID0gY29udGVudDtcbiAgcmV0dXJuIHJldDtcbn1cbiIsICIvKipcbiAqIFRoaXMgVHlwZVNjcmlwdCBjb2RlIGltcG9ydHMgbmVjZXNzYXJ5IG1vZHVsZXMgYW5kIGRlZmluZXMgYSBjbGFzcyBuYW1lZCAnU1ZHRWRpdG9yJyBmb3IgZ2VuZXJhdGluZyBTVkcgaW1hZ2VzLlxuICogVGhlIGNsYXNzIGhhcyBtZXRob2RzIGZvciBpbml0aWFsaXppbmcgdGhlIFNWRyB3aW5kb3csIGdlbmVyYXRpbmcgU1ZHIGNvbnRlbnQsIGFuZCB3cml0aW5nIFNWRyBmaWxlcy5cbiAqIEl0IHV0aWxpemVzIHZhcmlvdXMgcGFja2FnZXMgc3VjaCBhcyAnZnMnLCAncGF0aCcsICdAc3ZnZG90anMvc3ZnLmpzJywgJ2ZlYXRoZXItaWNvbnMnLCBhbmQgJ3N2Z2RvbScgZm9yIFNWRyBtYW5pcHVsYXRpb24gYW5kIGZpbGUgb3BlcmF0aW9ucy5cbiAqIFRoZSBjbGFzcyBhbHNvIGRlZmluZXMgaW50ZXJmYWNlcyBmb3IgYmFkZ2VzIGFuZCBicmFuZCBjb2xvcnMuXG4gKi9cblxuaW1wb3J0ICogYXMgZnMgZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ25vZGU6cGF0aCc7XG5cbmltcG9ydCB0eXBlIHsgQ29udGFpbmVyIH0gZnJvbSAnQHN2Z2RvdGpzL3N2Zy5qcyc7XG5pbXBvcnQgeyByZWdpc3RlcldpbmRvdywgU1ZHIH0gZnJvbSAnQHN2Z2RvdGpzL3N2Zy5qcyc7XG5pbXBvcnQgdHlwZSB7IEZlYXRoZXJJY29uTmFtZXMgfSBmcm9tICdmZWF0aGVyLWljb25zJztcbmltcG9ydCAqIGFzIGZlYXRoZXIgZnJvbSAnZmVhdGhlci1pY29ucyc7XG5pbXBvcnQgeyBjcmVhdGVTVkdXaW5kb3csIFNWR0RvY3VtZW50LCBTVkdXaW5kb3cgfSBmcm9tICdzdmdkb20nOyAvLy8gbWFpbi1tb2R1bGUuanMnO1xuXG5pbXBvcnQgdHlwZSB7IEJyYW5kQ29sb3JzIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHtcbiAgYnJhbmRpbmdTcXVhcmVFZGdlTGVuZ3RoSW5QaXhlbHMsXG4gIERFRkFVTFRfQlJBTkRfQ09MT1IsXG4gIERFRkFVTFRfQlJBTkRfSUNPTixcbiAgR0lUSFVCX0FDVElPTlNfQlJBTkRJTkdfQ09MT1JTLFxuICBHSVRIVUJfQUNUSU9OU19CUkFORElOR19JQ09OUyxcbiAgaXNWYWxpZENvbG9yLFxuICBpc1ZhbGlkSWNvbixcbn0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi9sb2d0YXNrL2luZGV4LmpzJztcblxuLyoqXG4gKiBVdGlsaXR5IGNsYXNzIGZvciBnZW5lcmF0aW5nIFNWRyBpbWFnZXMuXG4gKi9cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU1ZHRWRpdG9yIHtcbiAgcHJpdmF0ZSBsb2c6IExvZ1Rhc2s7XG5cbiAgcHJpdmF0ZSB3aW5kb3c/OiBTVkdXaW5kb3c7XG5cbiAgcHJpdmF0ZSBjYW52YXM/OiBDb250YWluZXI7XG5cbiAgcHJpdmF0ZSBkb2N1bWVudD86IFNWR0RvY3VtZW50O1xuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyBhIG5ldyBTVkdFZGl0b3IgaW5zdGFuY2UuXG4gICAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmxvZyA9IG5ldyBMb2dUYXNrKCdTVkdFZGl0b3InKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyB0aGUgU1ZHIHdpbmRvdywgZG9jdW1lbnQsIGFuZCBjYW52YXMgaWYgbm90IGFscmVhZHkgc2V0IHVwLlxuICAgKi9cbiAgYXN5bmMgaW5pdFNWRygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXRoaXMud2luZG93KSB7XG4gICAgICB0aGlzLndpbmRvdyA9IGNyZWF0ZVNWR1dpbmRvdygpO1xuICAgICAgY29uc3QgeyBkb2N1bWVudCB9ID0gdGhpcy53aW5kb3c7XG4gICAgICByZWdpc3RlcldpbmRvdyh0aGlzLndpbmRvdywgZG9jdW1lbnQpO1xuICAgICAgaWYgKCF0aGlzLmNhbnZhcykge1xuICAgICAgICB0aGlzLmNhbnZhcyA9IFNWRyhkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpIGFzIENvbnRhaW5lcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGVzIGEgYnJhbmRlZCBTVkcgaW1hZ2UuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSBzdmdQYXRoIC0gUGF0aCB0byB3cml0ZSB0aGUgZ2VuZXJhdGVkIFNWRyBmaWxlIHRvLlxuICAgKiBAcGFyYW0ge1BhcnRpYWw8RmVhdGhlckljb25OYW1lcz59IGljb24gLSBOYW1lIG9mIHRoZSBpY29uIHRvIHVzZS5cbiAgICogQHBhcmFtIHtQYXJ0aWFsPEJyYW5kQ29sb3JzPn0gYmdjb2xvciAtIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBpbWFnZS5cbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59IEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGltYWdlIGlzIGdlbmVyYXRlZC5cbiAgICovXG4gIGFzeW5jIGdlbmVyYXRlU3ZnSW1hZ2UoXG4gICAgc3ZnUGF0aDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICAgIGljb246IFBhcnRpYWw8RmVhdGhlckljb25OYW1lcz4gPSBERUZBVUxUX0JSQU5EX0lDT04sXG4gICAgYmdjb2xvcjogUGFydGlhbDxCcmFuZENvbG9ycz4gPSBERUZBVUxUX0JSQU5EX0NPTE9SXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghc3ZnUGF0aCB8fCBzdmdQYXRoLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5sb2cuZGVidWcoJ05vIHN2Z1BhdGggcHJvdmlkZWQnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIWlzVmFsaWRJY29uKGljb24pKSB7XG4gICAgICB0aGlzLmxvZy5lcnJvcihgVmFsaWQgQnJhbmRpbmcgSWNvbiBOYW1lczogJHtHSVRIVUJfQUNUSU9OU19CUkFORElOR19JQ09OU31gKTtcbiAgICAgIHRoaXMubG9nLmZhaWwoYEludmFsaWQgaWNvbiBuYW1lOiAke2ljb259YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICghaXNWYWxpZENvbG9yKGJnY29sb3IpKSB7XG4gICAgICB0aGlzLmxvZy5lcnJvcihgVmFsaWQgQnJhbmRpbmcgQ29sb3JzOiAke0dJVEhVQl9BQ1RJT05TX0JSQU5ESU5HX0NPTE9SU31gKTtcbiAgICAgIHRoaXMubG9nLmZhaWwoJ0ludmFsaWQgYnJhbmRpbmcgY29sb3InKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5sb2cuaW5mbyhgU1ZHIHRvIGdlbmVyYXRlICR7aWNvbn0gYXQgJHtzdmdQYXRofSB3aXRoIGNvbG9yICR7Ymdjb2xvcn0uYCk7XG4gICAgLy8gSW5pdGlhbGl6ZSBTVkdcbiAgICBhd2FpdCB0aGlzLmluaXRTVkcoKTtcbiAgICAvLyBHZW5lcmF0ZSBTVkcgY29udGVudFxuICAgIGNvbnN0IHN2Z0NvbnRlbnQgPSB0aGlzLmdlbmVyYXRlU1ZHQ29udGVudChpY29uLCBiZ2NvbG9yKTtcblxuICAgIC8vIFdyaXRlIFNWRyBmaWxlXG4gICAgdGhpcy53cml0ZVNWR0ZpbGUoc3ZnUGF0aCwgc3ZnQ29udGVudCk7XG5cbiAgICB0aGlzLmxvZy5kZWJ1ZygnU1ZHIGltYWdlIGdlbmVyYXRlZCBzdWNjZXNzZnVsbHknKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcml0ZXMgdGhlIFNWRyB4bWwgdG8gZGlzay5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHN2Z1BhdGggLSBGaWxlIHBhdGggdG8gc2F2ZSB0aGUgU1ZHIHRvLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3ZnQ29udGVudCAtIFRoZSBYTUwgZm9yIHRoZSBTVkcgZmlsZS5cbiAgICovXG4gIHdyaXRlU1ZHRmlsZShzdmdQYXRoOiBzdHJpbmcsIHN2Z0NvbnRlbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGZzLm1rZGlyU3luYyhwYXRoLmRpcm5hbWUoc3ZnUGF0aCksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgIHRoaXMubG9nLmRlYnVnKGBXcml0aW5nIFNWRyBmaWxlIHRvICR7c3ZnUGF0aH1gKTtcbiAgICBmcy53cml0ZUZpbGUoc3ZnUGF0aCwgc3ZnQ29udGVudCwgJ3V0ZjgnLCAoKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5sb2cuZGVidWcoYFNWRyBpbWFnZSBnZW5lcmF0ZWQ6ICR7c3ZnUGF0aH1gKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgdGhlIFNWRyBjb250ZW50IGZvciB0aGUgYnJhbmRpbmcgaW1hZ2UuXG4gICAqIEBwYXJhbSB7RmVhdGhlckljb25OYW1lc30gaWNvbiAtIE5hbWUgb2YgdGhlIGljb24gdG8gdXNlLlxuICAgKiBAcGFyYW0ge0JyYW5kQ29sb3JzfSBjb2xvciAtIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBpbWFnZS5cbiAgICogQHBhcmFtIHtudW1iZXJ9IG91dGVyVmlld0JveCAtIFNpemUgb2YgdGhlIGNhbnZhcyBmb3IgdGhlIGltYWdlLlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgZ2VuZXJhdGVkIFNWRyBjb250ZW50LlxuICAgKi9cbiAgZ2VuZXJhdGVTVkdDb250ZW50KGljb246IEZlYXRoZXJJY29uTmFtZXMsIGNvbG9yOiBCcmFuZENvbG9ycywgb3V0ZXJWaWV3Qm94ID0gMTAwKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IGNhbnZhcywgbG9nIH0gPSB0aGlzO1xuICAgIC8vIFZhbGlkYXRlIGNhbnZhc1xuICAgIGlmICghY2FudmFzKSB7XG4gICAgICBsb2cuZmFpbCgnQ2FudmFzIG5vdCBpbml0aWFsaXplZCcpO1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGNvbnN0IHN2Z0RhdGEgPSBmZWF0aGVyLmljb25zW2ljb25dO1xuICAgIGxvZy5kZWJ1ZyhgU1ZHIGRhdGEgdG8gaW5nZXN0OiAke3N2Z0RhdGEudG9TdmcoKX1gKTtcblxuICAgIGNhbnZhcy5jbGVhcigpO1xuXG4gICAgLy8gQ3JlYXRlIGEgY2FudmFzIHRoYXQgaXMgYG91dGVyVmlld0JveGAgeCBgb3V0ZXJWaWV3Qm94YFxuICAgIGNhbnZhc1xuICAgICAgLnNpemUoYnJhbmRpbmdTcXVhcmVFZGdlTGVuZ3RoSW5QaXhlbHMsIGJyYW5kaW5nU3F1YXJlRWRnZUxlbmd0aEluUGl4ZWxzKVxuICAgICAgLnZpZXdib3goYDAgMCAke291dGVyVmlld0JveH0gJHtvdXRlclZpZXdCb3h9YClcbiAgICAgIC5maWxsKCdub25lJyk7XG5cbiAgICAvLyBDcmVhdGUgYSAnY29sb3InIGNpcmNsZSB0aGF0IHRvdWNoZXMgdGhlIGVkZ2VzIG9mIHRoZSBjYW52YXNcbiAgICBjb25zdCBjaXJjbGVTaXplID0gb3V0ZXJWaWV3Qm94IC8gMjtcbiAgICBjYW52YXNcbiAgICAgIC5jaXJjbGUoJzUwJScpXG4gICAgICAuZmlsbChjb2xvcilcbiAgICAgIC5yYWRpdXMoY2lyY2xlU2l6ZSlcbiAgICAgIC5jeChjaXJjbGVTaXplKVxuICAgICAgLmN5KGNpcmNsZVNpemUpXG4gICAgICAuc3Ryb2tlKHsgd2lkdGg6IDAgfSk7XG5cbiAgICAvLyBDcmVhdGUgYW4gc3ZnIGJveCB0aGF0IGlzIGhhbGYgdGhlIHNpemUgb2YgdGhlIHBhcmVudFxuICAgIGNvbnN0IGljb25zdmdPdXRlciA9IGNhbnZhcy5uZXN0ZWQoKTtcbiAgICBpY29uc3ZnT3V0ZXIuYXR0cignb3ZlcmZsb3cnLCAndmlzaWJsZScpLmhlaWdodCgnNTAlJykud2lkdGgoJzUwJScpLngoJzI1JScpLnkoJzI1JScpO1xuXG4gICAgLy8gY3JlYXRlIGEgbmVzdGVkIHN2ZyBhbmQgYWRkIHRoZSBmZWF0aGVyLWljb24gcGF0aHMgdG8gdGhlIHN2Z1xuICAgIGNvbnN0IGljb25zdmcgPSBpY29uc3ZnT3V0ZXIubmVzdGVkKCk7XG4gICAgaWNvbnN2Zy5pZCgnaWNvbicpLnN2ZyhzdmdEYXRhLmNvbnRlbnRzKTtcblxuICAgIC8vIEFwcGVuZCBhbGwgb2YgdGhlIGF0dHJpYnV0ZXMgZnJvbSB0aGUgZmV0aGVyLWljb25cbiAgICBmb3IgKGNvbnN0IGF0dHIgb2YgT2JqZWN0LmtleXMoc3ZnRGF0YS5hdHRycykpIHtcbiAgICAgIGljb25zdmcuYXR0cihhdHRyLCBzdmdEYXRhLmF0dHJzW2F0dHJdKTtcbiAgICB9XG5cbiAgICAvLyBpbnZlcnQgdGhlIHN0cm9rZSBjb2xvciBpZiBpdCBtYXRjaGVzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgaWNvbnN2Zy5zdHJva2UoY29sb3Iuc3RhcnRzV2l0aCgnd2hpdGUnKSA/ICd3aGl0ZScgOiAnYmxhY2snKTtcblxuICAgIC8vIHJlbW92ZSB0aGUgZWRnZSBjbGlwcGluZ1xuICAgIGljb25zdmcuYXR0cignb3ZlcmZsb3cnLCAndmlzaWJsZScpO1xuXG4gICAgLy8gTWFrZSB0aGUgdmlld2JveCBvZiB0aGUgc3ZnIG1hdGNoIHRoZSBleGFjdCBkaW1lbnNpb25zIG9mIHRoZSBpY29uXG4gICAgaWNvbnN2Zy52aWV3Ym94KGljb25zdmcuYmJveCgpKTtcblxuICAgIC8vIE1ha2UgdGhlIHN2ZyBpY29uIGNlbnRlciBpdHNlbGYgdmVydGljYWxseSBhbmQgaG9yb3pvbmFsbHlcbiAgICBpY29uc3ZnLmhlaWdodCgnYXV0bycpLndpZHRoKCdhdXRvJyk7XG5cbiAgICAvLyByZXR1cm4gdGhlIHhtbCBmaWxlIGNvbnRlbnRcbiAgICByZXR1cm4gWyc8P3htbCB2ZXJzaW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJVVEYtOFwiIHN0YW5kYWxvbmU9XCJub1wiPz4nLCBjYW52YXMuc3ZnKCksICdcXG4nXS5qb2luKFxuICAgICAgJ1xcbidcbiAgICApO1xuICB9XG59XG4iLCAiY29uc3QgbWV0aG9kcyA9IHt9XG5jb25zdCBuYW1lcyA9IFtdXG5cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3Rlck1ldGhvZHMobmFtZSwgbSkge1xuICBpZiAoQXJyYXkuaXNBcnJheShuYW1lKSkge1xuICAgIGZvciAoY29uc3QgX25hbWUgb2YgbmFtZSkge1xuICAgICAgcmVnaXN0ZXJNZXRob2RzKF9uYW1lLCBtKVxuICAgIH1cbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmICh0eXBlb2YgbmFtZSA9PT0gJ29iamVjdCcpIHtcbiAgICBmb3IgKGNvbnN0IF9uYW1lIGluIG5hbWUpIHtcbiAgICAgIHJlZ2lzdGVyTWV0aG9kcyhfbmFtZSwgbmFtZVtfbmFtZV0pXG4gICAgfVxuICAgIHJldHVyblxuICB9XG5cbiAgYWRkTWV0aG9kTmFtZXMoT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMobSkpXG4gIG1ldGhvZHNbbmFtZV0gPSBPYmplY3QuYXNzaWduKG1ldGhvZHNbbmFtZV0gfHwge30sIG0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNZXRob2RzRm9yKG5hbWUpIHtcbiAgcmV0dXJuIG1ldGhvZHNbbmFtZV0gfHwge31cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1ldGhvZE5hbWVzKCkge1xuICByZXR1cm4gWy4uLm5ldyBTZXQobmFtZXMpXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkTWV0aG9kTmFtZXMoX25hbWVzKSB7XG4gIG5hbWVzLnB1c2goLi4uX25hbWVzKVxufVxuIiwgIi8vIE1hcCBmdW5jdGlvblxuZXhwb3J0IGZ1bmN0aW9uIG1hcChhcnJheSwgYmxvY2spIHtcbiAgbGV0IGlcbiAgY29uc3QgaWwgPSBhcnJheS5sZW5ndGhcbiAgY29uc3QgcmVzdWx0ID0gW11cblxuICBmb3IgKGkgPSAwOyBpIDwgaWw7IGkrKykge1xuICAgIHJlc3VsdC5wdXNoKGJsb2NrKGFycmF5W2ldKSlcbiAgfVxuXG4gIHJldHVybiByZXN1bHRcbn1cblxuLy8gRmlsdGVyIGZ1bmN0aW9uXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyKGFycmF5LCBibG9jaykge1xuICBsZXQgaVxuICBjb25zdCBpbCA9IGFycmF5Lmxlbmd0aFxuICBjb25zdCByZXN1bHQgPSBbXVxuXG4gIGZvciAoaSA9IDA7IGkgPCBpbDsgaSsrKSB7XG4gICAgaWYgKGJsb2NrKGFycmF5W2ldKSkge1xuICAgICAgcmVzdWx0LnB1c2goYXJyYXlbaV0pXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG4vLyBEZWdyZWVzIHRvIHJhZGlhbnNcbmV4cG9ydCBmdW5jdGlvbiByYWRpYW5zKGQpIHtcbiAgcmV0dXJuICgoZCAlIDM2MCkgKiBNYXRoLlBJKSAvIDE4MFxufVxuXG4vLyBSYWRpYW5zIHRvIGRlZ3JlZXNcbmV4cG9ydCBmdW5jdGlvbiBkZWdyZWVzKHIpIHtcbiAgcmV0dXJuICgociAqIDE4MCkgLyBNYXRoLlBJKSAlIDM2MFxufVxuXG4vLyBDb252ZXJ0IGNhbWVsIGNhc2VkIHN0cmluZyB0byBkYXNoIHNlcGFyYXRlZFxuZXhwb3J0IGZ1bmN0aW9uIHVuQ2FtZWxDYXNlKHMpIHtcbiAgcmV0dXJuIHMucmVwbGFjZSgvKFtBLVpdKS9nLCBmdW5jdGlvbiAobSwgZykge1xuICAgIHJldHVybiAnLScgKyBnLnRvTG93ZXJDYXNlKClcbiAgfSlcbn1cblxuLy8gQ2FwaXRhbGl6ZSBmaXJzdCBsZXR0ZXIgb2YgYSBzdHJpbmdcbmV4cG9ydCBmdW5jdGlvbiBjYXBpdGFsaXplKHMpIHtcbiAgcmV0dXJuIHMuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBzLnNsaWNlKDEpXG59XG5cbi8vIENhbGN1bGF0ZSBwcm9wb3J0aW9uYWwgd2lkdGggYW5kIGhlaWdodCB2YWx1ZXMgd2hlbiBuZWNlc3NhcnlcbmV4cG9ydCBmdW5jdGlvbiBwcm9wb3J0aW9uYWxTaXplKGVsZW1lbnQsIHdpZHRoLCBoZWlnaHQsIGJveCkge1xuICBpZiAod2lkdGggPT0gbnVsbCB8fCBoZWlnaHQgPT0gbnVsbCkge1xuICAgIGJveCA9IGJveCB8fCBlbGVtZW50LmJib3goKVxuXG4gICAgaWYgKHdpZHRoID09IG51bGwpIHtcbiAgICAgIHdpZHRoID0gKGJveC53aWR0aCAvIGJveC5oZWlnaHQpICogaGVpZ2h0XG4gICAgfSBlbHNlIGlmIChoZWlnaHQgPT0gbnVsbCkge1xuICAgICAgaGVpZ2h0ID0gKGJveC5oZWlnaHQgLyBib3gud2lkdGgpICogd2lkdGhcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCxcbiAgICBoZWlnaHQ6IGhlaWdodFxuICB9XG59XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiBhZGRzIHN1cHBvcnQgZm9yIHN0cmluZyBvcmlnaW5zLlxuICogSXQgc2VhcmNoZXMgZm9yIGFuIG9yaWdpbiBpbiBvLm9yaWdpbiBvLm94IGFuZCBvLm9yaWdpblguXG4gKiBUaGlzIHdheSwgb3JpZ2luOiB7eDogJ2NlbnRlcicsIHk6IDUwfSBjYW4gYmUgcGFzc2VkIGFzIHdlbGwgYXMgb3g6ICdjZW50ZXInLCBveTogNTBcbiAqKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcmlnaW4obywgZWxlbWVudCkge1xuICBjb25zdCBvcmlnaW4gPSBvLm9yaWdpblxuICAvLyBGaXJzdCBjaGVjayBpZiBvcmlnaW4gaXMgaW4gb3ggb3Igb3JpZ2luWFxuICBsZXQgb3ggPSBvLm94ICE9IG51bGwgPyBvLm94IDogby5vcmlnaW5YICE9IG51bGwgPyBvLm9yaWdpblggOiAnY2VudGVyJ1xuICBsZXQgb3kgPSBvLm95ICE9IG51bGwgPyBvLm95IDogby5vcmlnaW5ZICE9IG51bGwgPyBvLm9yaWdpblkgOiAnY2VudGVyJ1xuXG4gIC8vIFRoZW4gY2hlY2sgaWYgb3JpZ2luIHdhcyB1c2VkIGFuZCBvdmVyd3JpdGUgaW4gdGhhdCBjYXNlXG4gIGlmIChvcmlnaW4gIT0gbnVsbCkge1xuICAgIDtbb3gsIG95XSA9IEFycmF5LmlzQXJyYXkob3JpZ2luKVxuICAgICAgPyBvcmlnaW5cbiAgICAgIDogdHlwZW9mIG9yaWdpbiA9PT0gJ29iamVjdCdcbiAgICAgICAgPyBbb3JpZ2luLngsIG9yaWdpbi55XVxuICAgICAgICA6IFtvcmlnaW4sIG9yaWdpbl1cbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0byBvbmx5IGNhbGwgYmJveCB3aGVuIGFjdHVhbGx5IG5lZWRlZFxuICBjb25zdCBjb25kWCA9IHR5cGVvZiBveCA9PT0gJ3N0cmluZydcbiAgY29uc3QgY29uZFkgPSB0eXBlb2Ygb3kgPT09ICdzdHJpbmcnXG4gIGlmIChjb25kWCB8fCBjb25kWSkge1xuICAgIGNvbnN0IHsgaGVpZ2h0LCB3aWR0aCwgeCwgeSB9ID0gZWxlbWVudC5iYm94KClcblxuICAgIC8vIEFuZCBvbmx5IG92ZXJ3cml0ZSBpZiBzdHJpbmcgd2FzIHBhc3NlZCBmb3IgdGhpcyBzcGVjaWZpYyBheGlzXG4gICAgaWYgKGNvbmRYKSB7XG4gICAgICBveCA9IG94LmluY2x1ZGVzKCdsZWZ0JylcbiAgICAgICAgPyB4XG4gICAgICAgIDogb3guaW5jbHVkZXMoJ3JpZ2h0JylcbiAgICAgICAgICA/IHggKyB3aWR0aFxuICAgICAgICAgIDogeCArIHdpZHRoIC8gMlxuICAgIH1cblxuICAgIGlmIChjb25kWSkge1xuICAgICAgb3kgPSBveS5pbmNsdWRlcygndG9wJylcbiAgICAgICAgPyB5XG4gICAgICAgIDogb3kuaW5jbHVkZXMoJ2JvdHRvbScpXG4gICAgICAgICAgPyB5ICsgaGVpZ2h0XG4gICAgICAgICAgOiB5ICsgaGVpZ2h0IC8gMlxuICAgIH1cbiAgfVxuXG4gIC8vIFJldHVybiB0aGUgb3JpZ2luIGFzIGl0IGlzIGlmIGl0IHdhc24ndCBhIHN0cmluZ1xuICByZXR1cm4gW294LCBveV1cbn1cblxuY29uc3QgZGVzY3JpcHRpdmVFbGVtZW50cyA9IG5ldyBTZXQoWydkZXNjJywgJ21ldGFkYXRhJywgJ3RpdGxlJ10pXG5leHBvcnQgY29uc3QgaXNEZXNjcmlwdGl2ZSA9IChlbGVtZW50KSA9PlxuICBkZXNjcmlwdGl2ZUVsZW1lbnRzLmhhcyhlbGVtZW50Lm5vZGVOYW1lKVxuXG5leHBvcnQgY29uc3Qgd3JpdGVEYXRhVG9Eb20gPSAoZWxlbWVudCwgZGF0YSwgZGVmYXVsdHMgPSB7fSkgPT4ge1xuICBjb25zdCBjbG9uZWQgPSB7IC4uLmRhdGEgfVxuXG4gIGZvciAoY29uc3Qga2V5IGluIGNsb25lZCkge1xuICAgIGlmIChjbG9uZWRba2V5XS52YWx1ZU9mKCkgPT09IGRlZmF1bHRzW2tleV0pIHtcbiAgICAgIGRlbGV0ZSBjbG9uZWRba2V5XVxuICAgIH1cbiAgfVxuXG4gIGlmIChPYmplY3Qua2V5cyhjbG9uZWQpLmxlbmd0aCkge1xuICAgIGVsZW1lbnQubm9kZS5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3ZnanMnLCBKU09OLnN0cmluZ2lmeShjbG9uZWQpKSAvLyBzZWUgIzQyOFxuICB9IGVsc2Uge1xuICAgIGVsZW1lbnQubm9kZS5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtc3ZnanMnKVxuICAgIGVsZW1lbnQubm9kZS5yZW1vdmVBdHRyaWJ1dGUoJ3N2Z2pzOmRhdGEnKVxuICB9XG59XG4iLCAiLy8gRGVmYXVsdCBuYW1lc3BhY2VzXG5leHBvcnQgY29uc3Qgc3ZnID0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJ1xuZXhwb3J0IGNvbnN0IGh0bWwgPSAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCdcbmV4cG9ydCBjb25zdCB4bWxucyA9ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3htbG5zLydcbmV4cG9ydCBjb25zdCB4bGluayA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJ1xuIiwgImV4cG9ydCBjb25zdCBnbG9iYWxzID0ge1xuICB3aW5kb3c6IHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gbnVsbCA6IHdpbmRvdyxcbiAgZG9jdW1lbnQ6IHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcgPyBudWxsIDogZG9jdW1lbnRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyV2luZG93KHdpbiA9IG51bGwsIGRvYyA9IG51bGwpIHtcbiAgZ2xvYmFscy53aW5kb3cgPSB3aW5cbiAgZ2xvYmFscy5kb2N1bWVudCA9IGRvY1xufVxuXG5jb25zdCBzYXZlID0ge31cblxuZXhwb3J0IGZ1bmN0aW9uIHNhdmVXaW5kb3coKSB7XG4gIHNhdmUud2luZG93ID0gZ2xvYmFscy53aW5kb3dcbiAgc2F2ZS5kb2N1bWVudCA9IGdsb2JhbHMuZG9jdW1lbnRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc3RvcmVXaW5kb3coKSB7XG4gIGdsb2JhbHMud2luZG93ID0gc2F2ZS53aW5kb3dcbiAgZ2xvYmFscy5kb2N1bWVudCA9IHNhdmUuZG9jdW1lbnRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdpdGhXaW5kb3cod2luLCBmbikge1xuICBzYXZlV2luZG93KClcbiAgcmVnaXN0ZXJXaW5kb3cod2luLCB3aW4uZG9jdW1lbnQpXG4gIGZuKHdpbiwgd2luLmRvY3VtZW50KVxuICByZXN0b3JlV2luZG93KClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFdpbmRvdygpIHtcbiAgcmV0dXJuIGdsb2JhbHMud2luZG93XG59XG4iLCAiZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmFzZSB7XG4gIC8vIGNvbnN0cnVjdG9yIChub2RlLyosIHtleHRlbnNpb25zID0gW119ICovKSB7XG4gIC8vICAgLy8gdGhpcy50YWdzID0gW11cbiAgLy8gICAvL1xuICAvLyAgIC8vIGZvciAobGV0IGV4dGVuc2lvbiBvZiBleHRlbnNpb25zKSB7XG4gIC8vICAgLy8gICBleHRlbnNpb24uc2V0dXAuY2FsbCh0aGlzLCBub2RlKVxuICAvLyAgIC8vICAgdGhpcy50YWdzLnB1c2goZXh0ZW5zaW9uLm5hbWUpXG4gIC8vICAgLy8gfVxuICAvLyB9XG59XG4iLCAiaW1wb3J0IHsgYWRkTWV0aG9kTmFtZXMgfSBmcm9tICcuL21ldGhvZHMuanMnXG5pbXBvcnQgeyBjYXBpdGFsaXplIH0gZnJvbSAnLi91dGlscy5qcydcbmltcG9ydCB7IHN2ZyB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9uYW1lc3BhY2VzLmpzJ1xuaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uL3V0aWxzL3dpbmRvdy5qcydcbmltcG9ydCBCYXNlIGZyb20gJy4uL3R5cGVzL0Jhc2UuanMnXG5cbmNvbnN0IGVsZW1lbnRzID0ge31cbmV4cG9ydCBjb25zdCByb290ID0gJ19fX1NZTUJPTF9fX1JPT1RfX18nXG5cbi8vIE1ldGhvZCBmb3IgZWxlbWVudCBjcmVhdGlvblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZShuYW1lLCBucyA9IHN2Zykge1xuICAvLyBjcmVhdGUgZWxlbWVudFxuICByZXR1cm4gZ2xvYmFscy5kb2N1bWVudC5jcmVhdGVFbGVtZW50TlMobnMsIG5hbWUpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlSW5zdGFuY2UoZWxlbWVudCwgaXNIVE1MID0gZmFsc2UpIHtcbiAgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBCYXNlKSByZXR1cm4gZWxlbWVudFxuXG4gIGlmICh0eXBlb2YgZWxlbWVudCA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gYWRvcHRlcihlbGVtZW50KVxuICB9XG5cbiAgaWYgKGVsZW1lbnQgPT0gbnVsbCkge1xuICAgIHJldHVybiBuZXcgZWxlbWVudHNbcm9vdF0oKVxuICB9XG5cbiAgaWYgKHR5cGVvZiBlbGVtZW50ID09PSAnc3RyaW5nJyAmJiBlbGVtZW50LnRyaW0oKS5jaGFyQXQoMCkgIT09ICc8Jykge1xuICAgIHJldHVybiBhZG9wdGVyKGdsb2JhbHMuZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlbGVtZW50KSlcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSwgdGhhdCBIVE1MIGVsZW1lbnRzIGFyZSBjcmVhdGVkIHdpdGggdGhlIGNvcnJlY3QgbmFtZXNwYWNlXG4gIGNvbnN0IHdyYXBwZXIgPSBpc0hUTUwgPyBnbG9iYWxzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpIDogY3JlYXRlKCdzdmcnKVxuICB3cmFwcGVyLmlubmVySFRNTCA9IGVsZW1lbnQudHJpbSgpXG5cbiAgLy8gV2UgdXNlIGZpcnN0RWxlbWVudENoaWxkIGhlcmUgdG8gc2tpcCBwb3RlbnRpYWwgY29tbWVudCBub2RlcyAoIzEzMzkpLFxuICBlbGVtZW50ID0gYWRvcHRlcih3cmFwcGVyLmZpcnN0RWxlbWVudENoaWxkKVxuXG4gIC8vIG1ha2Ugc3VyZSwgdGhhdCBlbGVtZW50IGRvZXNuJ3QgaGF2ZSBpdHMgd3JhcHBlciBhdHRhY2hlZFxuICB3cmFwcGVyLnJlbW92ZUNoaWxkKHdyYXBwZXIuZmlyc3RFbGVtZW50Q2hpbGQpXG4gIHJldHVybiBlbGVtZW50XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub2RlT3JOZXcobmFtZSwgbm9kZSkge1xuICByZXR1cm4gbm9kZSAmJlxuICAgIChub2RlIGluc3RhbmNlb2YgZ2xvYmFscy53aW5kb3cuTm9kZSB8fFxuICAgICAgKG5vZGUub3duZXJEb2N1bWVudCAmJlxuICAgICAgICBub2RlIGluc3RhbmNlb2Ygbm9kZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3Lk5vZGUpKVxuICAgID8gbm9kZVxuICAgIDogY3JlYXRlKG5hbWUpXG59XG5cbi8vIEFkb3B0IGV4aXN0aW5nIHN2ZyBlbGVtZW50c1xuZXhwb3J0IGZ1bmN0aW9uIGFkb3B0KG5vZGUpIHtcbiAgLy8gY2hlY2sgZm9yIHByZXNlbmNlIG9mIG5vZGVcbiAgaWYgKCFub2RlKSByZXR1cm4gbnVsbFxuXG4gIC8vIG1ha2Ugc3VyZSBhIG5vZGUgaXNuJ3QgYWxyZWFkeSBhZG9wdGVkXG4gIGlmIChub2RlLmluc3RhbmNlIGluc3RhbmNlb2YgQmFzZSkgcmV0dXJuIG5vZGUuaW5zdGFuY2VcblxuICBpZiAobm9kZS5ub2RlTmFtZSA9PT0gJyNkb2N1bWVudC1mcmFnbWVudCcpIHtcbiAgICByZXR1cm4gbmV3IGVsZW1lbnRzLkZyYWdtZW50KG5vZGUpXG4gIH1cblxuICAvLyBpbml0aWFsaXplIHZhcmlhYmxlc1xuICBsZXQgY2xhc3NOYW1lID0gY2FwaXRhbGl6ZShub2RlLm5vZGVOYW1lIHx8ICdEb20nKVxuXG4gIC8vIE1ha2Ugc3VyZSB0aGF0IGdyYWRpZW50cyBhcmUgYWRvcHRlZCBjb3JyZWN0bHlcbiAgaWYgKGNsYXNzTmFtZSA9PT0gJ0xpbmVhckdyYWRpZW50JyB8fCBjbGFzc05hbWUgPT09ICdSYWRpYWxHcmFkaWVudCcpIHtcbiAgICBjbGFzc05hbWUgPSAnR3JhZGllbnQnXG5cbiAgICAvLyBGYWxsYmFjayB0byBEb20gaWYgZWxlbWVudCBpcyBub3Qga25vd25cbiAgfSBlbHNlIGlmICghZWxlbWVudHNbY2xhc3NOYW1lXSkge1xuICAgIGNsYXNzTmFtZSA9ICdEb20nXG4gIH1cblxuICByZXR1cm4gbmV3IGVsZW1lbnRzW2NsYXNzTmFtZV0obm9kZSlcbn1cblxubGV0IGFkb3B0ZXIgPSBhZG9wdFxuXG5leHBvcnQgZnVuY3Rpb24gbW9ja0Fkb3B0KG1vY2sgPSBhZG9wdCkge1xuICBhZG9wdGVyID0gbW9ja1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXIoZWxlbWVudCwgbmFtZSA9IGVsZW1lbnQubmFtZSwgYXNSb290ID0gZmFsc2UpIHtcbiAgZWxlbWVudHNbbmFtZV0gPSBlbGVtZW50XG4gIGlmIChhc1Jvb3QpIGVsZW1lbnRzW3Jvb3RdID0gZWxlbWVudFxuXG4gIGFkZE1ldGhvZE5hbWVzKE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGVsZW1lbnQucHJvdG90eXBlKSlcblxuICByZXR1cm4gZWxlbWVudFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2xhc3MobmFtZSkge1xuICByZXR1cm4gZWxlbWVudHNbbmFtZV1cbn1cblxuLy8gRWxlbWVudCBpZCBzZXF1ZW5jZVxubGV0IGRpZCA9IDEwMDBcblxuLy8gR2V0IG5leHQgbmFtZWQgZWxlbWVudCBpZFxuZXhwb3J0IGZ1bmN0aW9uIGVpZChuYW1lKSB7XG4gIHJldHVybiAnU3ZnanMnICsgY2FwaXRhbGl6ZShuYW1lKSArIGRpZCsrXG59XG5cbi8vIERlZXAgbmV3IGlkIGFzc2lnbm1lbnRcbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ25OZXdJZChub2RlKSB7XG4gIC8vIGRvIHRoZSBzYW1lIGZvciBTVkcgY2hpbGQgbm9kZXMgYXMgd2VsbFxuICBmb3IgKGxldCBpID0gbm9kZS5jaGlsZHJlbi5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIGFzc2lnbk5ld0lkKG5vZGUuY2hpbGRyZW5baV0pXG4gIH1cblxuICBpZiAobm9kZS5pZCkge1xuICAgIG5vZGUuaWQgPSBlaWQobm9kZS5ub2RlTmFtZSlcbiAgICByZXR1cm4gbm9kZVxuICB9XG5cbiAgcmV0dXJuIG5vZGVcbn1cblxuLy8gTWV0aG9kIGZvciBleHRlbmRpbmcgb2JqZWN0c1xuZXhwb3J0IGZ1bmN0aW9uIGV4dGVuZChtb2R1bGVzLCBtZXRob2RzKSB7XG4gIGxldCBrZXksIGlcblxuICBtb2R1bGVzID0gQXJyYXkuaXNBcnJheShtb2R1bGVzKSA/IG1vZHVsZXMgOiBbbW9kdWxlc11cblxuICBmb3IgKGkgPSBtb2R1bGVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgZm9yIChrZXkgaW4gbWV0aG9kcykge1xuICAgICAgbW9kdWxlc1tpXS5wcm90b3R5cGVba2V5XSA9IG1ldGhvZHNba2V5XVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JhcFdpdGhBdHRyQ2hlY2soZm4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgY29uc3QgbyA9IGFyZ3NbYXJncy5sZW5ndGggLSAxXVxuXG4gICAgaWYgKG8gJiYgby5jb25zdHJ1Y3RvciA9PT0gT2JqZWN0ICYmICEobyBpbnN0YW5jZW9mIEFycmF5KSkge1xuICAgICAgcmV0dXJuIGZuLmFwcGx5KHRoaXMsIGFyZ3Muc2xpY2UoMCwgLTEpKS5hdHRyKG8pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmbi5hcHBseSh0aGlzLCBhcmdzKVxuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCB7IG1ha2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi8uLi91dGlscy9tZXRob2RzLmpzJ1xuXG4vLyBHZXQgYWxsIHNpYmxpbmdzLCBpbmNsdWRpbmcgbXlzZWxmXG5leHBvcnQgZnVuY3Rpb24gc2libGluZ3MoKSB7XG4gIHJldHVybiB0aGlzLnBhcmVudCgpLmNoaWxkcmVuKClcbn1cblxuLy8gR2V0IHRoZSBjdXJyZW50IHBvc2l0aW9uIHNpYmxpbmdzXG5leHBvcnQgZnVuY3Rpb24gcG9zaXRpb24oKSB7XG4gIHJldHVybiB0aGlzLnBhcmVudCgpLmluZGV4KHRoaXMpXG59XG5cbi8vIEdldCB0aGUgbmV4dCBlbGVtZW50ICh3aWxsIHJldHVybiBudWxsIGlmIHRoZXJlIGlzIG5vbmUpXG5leHBvcnQgZnVuY3Rpb24gbmV4dCgpIHtcbiAgcmV0dXJuIHRoaXMuc2libGluZ3MoKVt0aGlzLnBvc2l0aW9uKCkgKyAxXVxufVxuXG4vLyBHZXQgdGhlIG5leHQgZWxlbWVudCAod2lsbCByZXR1cm4gbnVsbCBpZiB0aGVyZSBpcyBub25lKVxuZXhwb3J0IGZ1bmN0aW9uIHByZXYoKSB7XG4gIHJldHVybiB0aGlzLnNpYmxpbmdzKClbdGhpcy5wb3NpdGlvbigpIC0gMV1cbn1cblxuLy8gU2VuZCBnaXZlbiBlbGVtZW50IG9uZSBzdGVwIGZvcndhcmRcbmV4cG9ydCBmdW5jdGlvbiBmb3J3YXJkKCkge1xuICBjb25zdCBpID0gdGhpcy5wb3NpdGlvbigpXG4gIGNvbnN0IHAgPSB0aGlzLnBhcmVudCgpXG5cbiAgLy8gbW92ZSBub2RlIG9uZSBzdGVwIGZvcndhcmRcbiAgcC5hZGQodGhpcy5yZW1vdmUoKSwgaSArIDEpXG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gU2VuZCBnaXZlbiBlbGVtZW50IG9uZSBzdGVwIGJhY2t3YXJkXG5leHBvcnQgZnVuY3Rpb24gYmFja3dhcmQoKSB7XG4gIGNvbnN0IGkgPSB0aGlzLnBvc2l0aW9uKClcbiAgY29uc3QgcCA9IHRoaXMucGFyZW50KClcblxuICBwLmFkZCh0aGlzLnJlbW92ZSgpLCBpID8gaSAtIDEgOiAwKVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIFNlbmQgZ2l2ZW4gZWxlbWVudCBhbGwgdGhlIHdheSB0byB0aGUgZnJvbnRcbmV4cG9ydCBmdW5jdGlvbiBmcm9udCgpIHtcbiAgY29uc3QgcCA9IHRoaXMucGFyZW50KClcblxuICAvLyBNb3ZlIG5vZGUgZm9yd2FyZFxuICBwLmFkZCh0aGlzLnJlbW92ZSgpKVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIFNlbmQgZ2l2ZW4gZWxlbWVudCBhbGwgdGhlIHdheSB0byB0aGUgYmFja1xuZXhwb3J0IGZ1bmN0aW9uIGJhY2soKSB7XG4gIGNvbnN0IHAgPSB0aGlzLnBhcmVudCgpXG5cbiAgLy8gTW92ZSBub2RlIGJhY2tcbiAgcC5hZGQodGhpcy5yZW1vdmUoKSwgMClcblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBJbnNlcnRzIGEgZ2l2ZW4gZWxlbWVudCBiZWZvcmUgdGhlIHRhcmdldGVkIGVsZW1lbnRcbmV4cG9ydCBmdW5jdGlvbiBiZWZvcmUoZWxlbWVudCkge1xuICBlbGVtZW50ID0gbWFrZUluc3RhbmNlKGVsZW1lbnQpXG4gIGVsZW1lbnQucmVtb3ZlKClcblxuICBjb25zdCBpID0gdGhpcy5wb3NpdGlvbigpXG5cbiAgdGhpcy5wYXJlbnQoKS5hZGQoZWxlbWVudCwgaSlcblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBJbnNlcnRzIGEgZ2l2ZW4gZWxlbWVudCBhZnRlciB0aGUgdGFyZ2V0ZWQgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIGFmdGVyKGVsZW1lbnQpIHtcbiAgZWxlbWVudCA9IG1ha2VJbnN0YW5jZShlbGVtZW50KVxuICBlbGVtZW50LnJlbW92ZSgpXG5cbiAgY29uc3QgaSA9IHRoaXMucG9zaXRpb24oKVxuXG4gIHRoaXMucGFyZW50KCkuYWRkKGVsZW1lbnQsIGkgKyAxKVxuXG4gIHJldHVybiB0aGlzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnRCZWZvcmUoZWxlbWVudCkge1xuICBlbGVtZW50ID0gbWFrZUluc3RhbmNlKGVsZW1lbnQpXG4gIGVsZW1lbnQuYmVmb3JlKHRoaXMpXG4gIHJldHVybiB0aGlzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnRBZnRlcihlbGVtZW50KSB7XG4gIGVsZW1lbnQgPSBtYWtlSW5zdGFuY2UoZWxlbWVudClcbiAgZWxlbWVudC5hZnRlcih0aGlzKVxuICByZXR1cm4gdGhpc1xufVxuXG5yZWdpc3Rlck1ldGhvZHMoJ0RvbScsIHtcbiAgc2libGluZ3MsXG4gIHBvc2l0aW9uLFxuICBuZXh0LFxuICBwcmV2LFxuICBmb3J3YXJkLFxuICBiYWNrd2FyZCxcbiAgZnJvbnQsXG4gIGJhY2ssXG4gIGJlZm9yZSxcbiAgYWZ0ZXIsXG4gIGluc2VydEJlZm9yZSxcbiAgaW5zZXJ0QWZ0ZXJcbn0pXG4iLCAiLy8gUGFyc2UgdW5pdCB2YWx1ZVxuZXhwb3J0IGNvbnN0IG51bWJlckFuZFVuaXQgPVxuICAvXihbKy1dPyhcXGQrKFxcLlxcZCopP3xcXC5cXGQrKShlWystXT9cXGQrKT8pKFthLXolXSopJC9pXG5cbi8vIFBhcnNlIGhleCB2YWx1ZVxuZXhwb3J0IGNvbnN0IGhleCA9IC9eIz8oW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KShbYS1mXFxkXXsyfSkkL2lcblxuLy8gUGFyc2UgcmdiIHZhbHVlXG5leHBvcnQgY29uc3QgcmdiID0gL3JnYlxcKChcXGQrKSwoXFxkKyksKFxcZCspXFwpL1xuXG4vLyBQYXJzZSByZWZlcmVuY2UgaWRcbmV4cG9ydCBjb25zdCByZWZlcmVuY2UgPSAvKCNbYS16X11bYS16MC05XFwtX10qKS9pXG5cbi8vIHNwbGl0cyBhIHRyYW5zZm9ybWF0aW9uIGNoYWluXG5leHBvcnQgY29uc3QgdHJhbnNmb3JtcyA9IC9cXClcXHMqLD9cXHMqL1xuXG4vLyBXaGl0ZXNwYWNlXG5leHBvcnQgY29uc3Qgd2hpdGVzcGFjZSA9IC9cXHMvZ1xuXG4vLyBUZXN0IGhleCB2YWx1ZVxuZXhwb3J0IGNvbnN0IGlzSGV4ID0gL14jW2EtZjAtOV17M30kfF4jW2EtZjAtOV17Nn0kL2lcblxuLy8gVGVzdCByZ2IgdmFsdWVcbmV4cG9ydCBjb25zdCBpc1JnYiA9IC9ecmdiXFwoL1xuXG4vLyBUZXN0IGZvciBibGFuayBzdHJpbmdcbmV4cG9ydCBjb25zdCBpc0JsYW5rID0gL14oXFxzKyk/JC9cblxuLy8gVGVzdCBmb3IgbnVtZXJpYyBzdHJpbmdcbmV4cG9ydCBjb25zdCBpc051bWJlciA9IC9eWystXT8oXFxkKyhcXC5cXGQqKT98XFwuXFxkKykoZVsrLV0/XFxkKyk/JC9pXG5cbi8vIFRlc3QgZm9yIGltYWdlIHVybFxuZXhwb3J0IGNvbnN0IGlzSW1hZ2UgPSAvXFwuKGpwZ3xqcGVnfHBuZ3xnaWZ8c3ZnKShcXD9bXj1dKy4qKT8vaVxuXG4vLyBzcGxpdCBhdCB3aGl0ZXNwYWNlIGFuZCBjb21tYVxuZXhwb3J0IGNvbnN0IGRlbGltaXRlciA9IC9bXFxzLF0rL1xuXG4vLyBUZXN0IGZvciBwYXRoIGxldHRlclxuZXhwb3J0IGNvbnN0IGlzUGF0aExldHRlciA9IC9bTUxIVkNTUVRBWl0vaVxuIiwgImltcG9ydCB7IGRlbGltaXRlciB9IGZyb20gJy4uL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi8uLi91dGlscy9tZXRob2RzLmpzJ1xuXG4vLyBSZXR1cm4gYXJyYXkgb2YgY2xhc3NlcyBvbiB0aGUgbm9kZVxuZXhwb3J0IGZ1bmN0aW9uIGNsYXNzZXMoKSB7XG4gIGNvbnN0IGF0dHIgPSB0aGlzLmF0dHIoJ2NsYXNzJylcbiAgcmV0dXJuIGF0dHIgPT0gbnVsbCA/IFtdIDogYXR0ci50cmltKCkuc3BsaXQoZGVsaW1pdGVyKVxufVxuXG4vLyBSZXR1cm4gdHJ1ZSBpZiBjbGFzcyBleGlzdHMgb24gdGhlIG5vZGUsIGZhbHNlIG90aGVyd2lzZVxuZXhwb3J0IGZ1bmN0aW9uIGhhc0NsYXNzKG5hbWUpIHtcbiAgcmV0dXJuIHRoaXMuY2xhc3NlcygpLmluZGV4T2YobmFtZSkgIT09IC0xXG59XG5cbi8vIEFkZCBjbGFzcyB0byB0aGUgbm9kZVxuZXhwb3J0IGZ1bmN0aW9uIGFkZENsYXNzKG5hbWUpIHtcbiAgaWYgKCF0aGlzLmhhc0NsYXNzKG5hbWUpKSB7XG4gICAgY29uc3QgYXJyYXkgPSB0aGlzLmNsYXNzZXMoKVxuICAgIGFycmF5LnB1c2gobmFtZSlcbiAgICB0aGlzLmF0dHIoJ2NsYXNzJywgYXJyYXkuam9pbignICcpKVxuICB9XG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gUmVtb3ZlIGNsYXNzIGZyb20gdGhlIG5vZGVcbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVDbGFzcyhuYW1lKSB7XG4gIGlmICh0aGlzLmhhc0NsYXNzKG5hbWUpKSB7XG4gICAgdGhpcy5hdHRyKFxuICAgICAgJ2NsYXNzJyxcbiAgICAgIHRoaXMuY2xhc3NlcygpXG4gICAgICAgIC5maWx0ZXIoZnVuY3Rpb24gKGMpIHtcbiAgICAgICAgICByZXR1cm4gYyAhPT0gbmFtZVxuICAgICAgICB9KVxuICAgICAgICAuam9pbignICcpXG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gVG9nZ2xlIHRoZSBwcmVzZW5jZSBvZiBhIGNsYXNzIG9uIHRoZSBub2RlXG5leHBvcnQgZnVuY3Rpb24gdG9nZ2xlQ2xhc3MobmFtZSkge1xuICByZXR1cm4gdGhpcy5oYXNDbGFzcyhuYW1lKSA/IHRoaXMucmVtb3ZlQ2xhc3MobmFtZSkgOiB0aGlzLmFkZENsYXNzKG5hbWUpXG59XG5cbnJlZ2lzdGVyTWV0aG9kcygnRG9tJywge1xuICBjbGFzc2VzLFxuICBoYXNDbGFzcyxcbiAgYWRkQ2xhc3MsXG4gIHJlbW92ZUNsYXNzLFxuICB0b2dnbGVDbGFzc1xufSlcbiIsICJpbXBvcnQgeyBpc0JsYW5rIH0gZnJvbSAnLi4vY29yZS9yZWdleC5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uLy4uL3V0aWxzL21ldGhvZHMuanMnXG5cbi8vIER5bmFtaWMgc3R5bGUgZ2VuZXJhdG9yXG5leHBvcnQgZnVuY3Rpb24gY3NzKHN0eWxlLCB2YWwpIHtcbiAgY29uc3QgcmV0ID0ge31cbiAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAvLyBnZXQgZnVsbCBzdHlsZSBhcyBvYmplY3RcbiAgICB0aGlzLm5vZGUuc3R5bGUuY3NzVGV4dFxuICAgICAgLnNwbGl0KC9cXHMqO1xccyovKVxuICAgICAgLmZpbHRlcihmdW5jdGlvbiAoZWwpIHtcbiAgICAgICAgcmV0dXJuICEhZWwubGVuZ3RoXG4gICAgICB9KVxuICAgICAgLmZvckVhY2goZnVuY3Rpb24gKGVsKSB7XG4gICAgICAgIGNvbnN0IHQgPSBlbC5zcGxpdCgvXFxzKjpcXHMqLylcbiAgICAgICAgcmV0W3RbMF1dID0gdFsxXVxuICAgICAgfSlcbiAgICByZXR1cm4gcmV0XG4gIH1cblxuICBpZiAoYXJndW1lbnRzLmxlbmd0aCA8IDIpIHtcbiAgICAvLyBnZXQgc3R5bGUgcHJvcGVydGllcyBhcyBhcnJheVxuICAgIGlmIChBcnJheS5pc0FycmF5KHN0eWxlKSkge1xuICAgICAgZm9yIChjb25zdCBuYW1lIG9mIHN0eWxlKSB7XG4gICAgICAgIGNvbnN0IGNhc2VkID0gbmFtZVxuICAgICAgICByZXRbbmFtZV0gPSB0aGlzLm5vZGUuc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZShjYXNlZClcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXRcbiAgICB9XG5cbiAgICAvLyBnZXQgc3R5bGUgZm9yIHByb3BlcnR5XG4gICAgaWYgKHR5cGVvZiBzdHlsZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0aGlzLm5vZGUuc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZShzdHlsZSlcbiAgICB9XG5cbiAgICAvLyBzZXQgc3R5bGVzIGluIG9iamVjdFxuICAgIGlmICh0eXBlb2Ygc3R5bGUgPT09ICdvYmplY3QnKSB7XG4gICAgICBmb3IgKGNvbnN0IG5hbWUgaW4gc3R5bGUpIHtcbiAgICAgICAgLy8gc2V0IGVtcHR5IHN0cmluZyBpZiBudWxsL3VuZGVmaW5lZC8nJyB3YXMgZ2l2ZW5cbiAgICAgICAgdGhpcy5ub2RlLnN0eWxlLnNldFByb3BlcnR5KFxuICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgc3R5bGVbbmFtZV0gPT0gbnVsbCB8fCBpc0JsYW5rLnRlc3Qoc3R5bGVbbmFtZV0pID8gJycgOiBzdHlsZVtuYW1lXVxuICAgICAgICApXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc2V0IHN0eWxlIGZvciBwcm9wZXJ0eVxuICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMikge1xuICAgIHRoaXMubm9kZS5zdHlsZS5zZXRQcm9wZXJ0eShcbiAgICAgIHN0eWxlLFxuICAgICAgdmFsID09IG51bGwgfHwgaXNCbGFuay50ZXN0KHZhbCkgPyAnJyA6IHZhbFxuICAgIClcbiAgfVxuXG4gIHJldHVybiB0aGlzXG59XG5cbi8vIFNob3cgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIHNob3coKSB7XG4gIHJldHVybiB0aGlzLmNzcygnZGlzcGxheScsICcnKVxufVxuXG4vLyBIaWRlIGVsZW1lbnRcbmV4cG9ydCBmdW5jdGlvbiBoaWRlKCkge1xuICByZXR1cm4gdGhpcy5jc3MoJ2Rpc3BsYXknLCAnbm9uZScpXG59XG5cbi8vIElzIGVsZW1lbnQgdmlzaWJsZT9cbmV4cG9ydCBmdW5jdGlvbiB2aXNpYmxlKCkge1xuICByZXR1cm4gdGhpcy5jc3MoJ2Rpc3BsYXknKSAhPT0gJ25vbmUnXG59XG5cbnJlZ2lzdGVyTWV0aG9kcygnRG9tJywge1xuICBjc3MsXG4gIHNob3csXG4gIGhpZGUsXG4gIHZpc2libGVcbn0pXG4iLCAiaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IGZpbHRlciwgbWFwIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbHMuanMnXG5cbi8vIFN0b3JlIGRhdGEgdmFsdWVzIG9uIHN2ZyBub2Rlc1xuZXhwb3J0IGZ1bmN0aW9uIGRhdGEoYSwgdiwgcikge1xuICBpZiAoYSA9PSBudWxsKSB7XG4gICAgLy8gZ2V0IGFuIG9iamVjdCBvZiBhdHRyaWJ1dGVzXG4gICAgcmV0dXJuIHRoaXMuZGF0YShcbiAgICAgIG1hcChcbiAgICAgICAgZmlsdGVyKFxuICAgICAgICAgIHRoaXMubm9kZS5hdHRyaWJ1dGVzLFxuICAgICAgICAgIChlbCkgPT4gZWwubm9kZU5hbWUuaW5kZXhPZignZGF0YS0nKSA9PT0gMFxuICAgICAgICApLFxuICAgICAgICAoZWwpID0+IGVsLm5vZGVOYW1lLnNsaWNlKDUpXG4gICAgICApXG4gICAgKVxuICB9IGVsc2UgaWYgKGEgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgIGNvbnN0IGRhdGEgPSB7fVxuICAgIGZvciAoY29uc3Qga2V5IG9mIGEpIHtcbiAgICAgIGRhdGFba2V5XSA9IHRoaXMuZGF0YShrZXkpXG4gICAgfVxuICAgIHJldHVybiBkYXRhXG4gIH0gZWxzZSBpZiAodHlwZW9mIGEgPT09ICdvYmplY3QnKSB7XG4gICAgZm9yICh2IGluIGEpIHtcbiAgICAgIHRoaXMuZGF0YSh2LCBhW3ZdKVxuICAgIH1cbiAgfSBlbHNlIGlmIChhcmd1bWVudHMubGVuZ3RoIDwgMikge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZSh0aGlzLmF0dHIoJ2RhdGEtJyArIGEpKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmF0dHIoJ2RhdGEtJyArIGEpXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHRoaXMuYXR0cihcbiAgICAgICdkYXRhLScgKyBhLFxuICAgICAgdiA9PT0gbnVsbFxuICAgICAgICA/IG51bGxcbiAgICAgICAgOiByID09PSB0cnVlIHx8IHR5cGVvZiB2ID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdiA9PT0gJ251bWJlcidcbiAgICAgICAgICA/IHZcbiAgICAgICAgICA6IEpTT04uc3RyaW5naWZ5KHYpXG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIHRoaXNcbn1cblxucmVnaXN0ZXJNZXRob2RzKCdEb20nLCB7IGRhdGEgfSlcbiIsICJpbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi8uLi91dGlscy9tZXRob2RzLmpzJ1xuXG4vLyBSZW1lbWJlciBhcmJpdHJhcnkgZGF0YVxuZXhwb3J0IGZ1bmN0aW9uIHJlbWVtYmVyKGssIHYpIHtcbiAgLy8gcmVtZW1iZXIgZXZlcnkgaXRlbSBpbiBhbiBvYmplY3QgaW5kaXZpZHVhbGx5XG4gIGlmICh0eXBlb2YgYXJndW1lbnRzWzBdID09PSAnb2JqZWN0Jykge1xuICAgIGZvciAoY29uc3Qga2V5IGluIGspIHtcbiAgICAgIHRoaXMucmVtZW1iZXIoa2V5LCBrW2tleV0pXG4gICAgfVxuICB9IGVsc2UgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHtcbiAgICAvLyByZXRyaWV2ZSBtZW1vcnlcbiAgICByZXR1cm4gdGhpcy5tZW1vcnkoKVtrXVxuICB9IGVsc2Uge1xuICAgIC8vIHN0b3JlIG1lbW9yeVxuICAgIHRoaXMubWVtb3J5KClba10gPSB2XG4gIH1cblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBFcmFzZSBhIGdpdmVuIG1lbW9yeVxuZXhwb3J0IGZ1bmN0aW9uIGZvcmdldCgpIHtcbiAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDApIHtcbiAgICB0aGlzLl9tZW1vcnkgPSB7fVxuICB9IGVsc2Uge1xuICAgIGZvciAobGV0IGkgPSBhcmd1bWVudHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIGRlbGV0ZSB0aGlzLm1lbW9yeSgpW2FyZ3VtZW50c1tpXV1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gVGhpcyB0cmlnZ2VycyBjcmVhdGlvbiBvZiBhIG5ldyBoaWRkZW4gY2xhc3Mgd2hpY2ggaXMgbm90IHBlcmZvcm1hbnRcbi8vIEhvd2V2ZXIsIHRoaXMgZnVuY3Rpb24gaXMgbm90IHJhcmVseSB1c2VkIHNvIGl0IHdpbGwgbm90IGhhcHBlbiBmcmVxdWVudGx5XG4vLyBSZXR1cm4gbG9jYWwgbWVtb3J5IG9iamVjdFxuZXhwb3J0IGZ1bmN0aW9uIG1lbW9yeSgpIHtcbiAgcmV0dXJuICh0aGlzLl9tZW1vcnkgPSB0aGlzLl9tZW1vcnkgfHwge30pXG59XG5cbnJlZ2lzdGVyTWV0aG9kcygnRG9tJywgeyByZW1lbWJlciwgZm9yZ2V0LCBtZW1vcnkgfSlcbiIsICJpbXBvcnQgeyBoZXgsIGlzSGV4LCBpc1JnYiwgcmdiLCB3aGl0ZXNwYWNlIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3JlZ2V4LmpzJ1xuXG5mdW5jdGlvbiBzaXhEaWdpdEhleChoZXgpIHtcbiAgcmV0dXJuIGhleC5sZW5ndGggPT09IDRcbiAgICA/IFtcbiAgICAgICAgJyMnLFxuICAgICAgICBoZXguc3Vic3RyaW5nKDEsIDIpLFxuICAgICAgICBoZXguc3Vic3RyaW5nKDEsIDIpLFxuICAgICAgICBoZXguc3Vic3RyaW5nKDIsIDMpLFxuICAgICAgICBoZXguc3Vic3RyaW5nKDIsIDMpLFxuICAgICAgICBoZXguc3Vic3RyaW5nKDMsIDQpLFxuICAgICAgICBoZXguc3Vic3RyaW5nKDMsIDQpXG4gICAgICBdLmpvaW4oJycpXG4gICAgOiBoZXhcbn1cblxuZnVuY3Rpb24gY29tcG9uZW50SGV4KGNvbXBvbmVudCkge1xuICBjb25zdCBpbnRlZ2VyID0gTWF0aC5yb3VuZChjb21wb25lbnQpXG4gIGNvbnN0IGJvdW5kZWQgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigyNTUsIGludGVnZXIpKVxuICBjb25zdCBoZXggPSBib3VuZGVkLnRvU3RyaW5nKDE2KVxuICByZXR1cm4gaGV4Lmxlbmd0aCA9PT0gMSA/ICcwJyArIGhleCA6IGhleFxufVxuXG5mdW5jdGlvbiBpcyhvYmplY3QsIHNwYWNlKSB7XG4gIGZvciAobGV0IGkgPSBzcGFjZS5sZW5ndGg7IGktLTsgKSB7XG4gICAgaWYgKG9iamVjdFtzcGFjZVtpXV0gPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG4gIHJldHVybiB0cnVlXG59XG5cbmZ1bmN0aW9uIGdldFBhcmFtZXRlcnMoYSwgYikge1xuICBjb25zdCBwYXJhbXMgPSBpcyhhLCAncmdiJylcbiAgICA/IHsgX2E6IGEuciwgX2I6IGEuZywgX2M6IGEuYiwgX2Q6IDAsIHNwYWNlOiAncmdiJyB9XG4gICAgOiBpcyhhLCAneHl6JylcbiAgICAgID8geyBfYTogYS54LCBfYjogYS55LCBfYzogYS56LCBfZDogMCwgc3BhY2U6ICd4eXonIH1cbiAgICAgIDogaXMoYSwgJ2hzbCcpXG4gICAgICAgID8geyBfYTogYS5oLCBfYjogYS5zLCBfYzogYS5sLCBfZDogMCwgc3BhY2U6ICdoc2wnIH1cbiAgICAgICAgOiBpcyhhLCAnbGFiJylcbiAgICAgICAgICA/IHsgX2E6IGEubCwgX2I6IGEuYSwgX2M6IGEuYiwgX2Q6IDAsIHNwYWNlOiAnbGFiJyB9XG4gICAgICAgICAgOiBpcyhhLCAnbGNoJylcbiAgICAgICAgICAgID8geyBfYTogYS5sLCBfYjogYS5jLCBfYzogYS5oLCBfZDogMCwgc3BhY2U6ICdsY2gnIH1cbiAgICAgICAgICAgIDogaXMoYSwgJ2NteWsnKVxuICAgICAgICAgICAgICA/IHsgX2E6IGEuYywgX2I6IGEubSwgX2M6IGEueSwgX2Q6IGEuaywgc3BhY2U6ICdjbXlrJyB9XG4gICAgICAgICAgICAgIDogeyBfYTogMCwgX2I6IDAsIF9jOiAwLCBzcGFjZTogJ3JnYicgfVxuXG4gIHBhcmFtcy5zcGFjZSA9IGIgfHwgcGFyYW1zLnNwYWNlXG4gIHJldHVybiBwYXJhbXNcbn1cblxuZnVuY3Rpb24gY2llU3BhY2Uoc3BhY2UpIHtcbiAgaWYgKHNwYWNlID09PSAnbGFiJyB8fCBzcGFjZSA9PT0gJ3h5eicgfHwgc3BhY2UgPT09ICdsY2gnKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxufVxuXG5mdW5jdGlvbiBodWVUb1JnYihwLCBxLCB0KSB7XG4gIGlmICh0IDwgMCkgdCArPSAxXG4gIGlmICh0ID4gMSkgdCAtPSAxXG4gIGlmICh0IDwgMSAvIDYpIHJldHVybiBwICsgKHEgLSBwKSAqIDYgKiB0XG4gIGlmICh0IDwgMSAvIDIpIHJldHVybiBxXG4gIGlmICh0IDwgMiAvIDMpIHJldHVybiBwICsgKHEgLSBwKSAqICgyIC8gMyAtIHQpICogNlxuICByZXR1cm4gcFxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb2xvciB7XG4gIGNvbnN0cnVjdG9yKC4uLmlucHV0cykge1xuICAgIHRoaXMuaW5pdCguLi5pbnB1dHMpXG4gIH1cblxuICAvLyBUZXN0IGlmIGdpdmVuIHZhbHVlIGlzIGEgY29sb3JcbiAgc3RhdGljIGlzQ29sb3IoY29sb3IpIHtcbiAgICByZXR1cm4gKFxuICAgICAgY29sb3IgJiYgKGNvbG9yIGluc3RhbmNlb2YgQ29sb3IgfHwgdGhpcy5pc1JnYihjb2xvcikgfHwgdGhpcy50ZXN0KGNvbG9yKSlcbiAgICApXG4gIH1cblxuICAvLyBUZXN0IGlmIGdpdmVuIHZhbHVlIGlzIGFuIHJnYiBvYmplY3RcbiAgc3RhdGljIGlzUmdiKGNvbG9yKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGNvbG9yICYmXG4gICAgICB0eXBlb2YgY29sb3IuciA9PT0gJ251bWJlcicgJiZcbiAgICAgIHR5cGVvZiBjb2xvci5nID09PSAnbnVtYmVyJyAmJlxuICAgICAgdHlwZW9mIGNvbG9yLmIgPT09ICdudW1iZXInXG4gICAgKVxuICB9XG5cbiAgLypcbiAgR2VuZXJhdGluZyByYW5kb20gY29sb3JzXG4gICovXG4gIHN0YXRpYyByYW5kb20obW9kZSA9ICd2aWJyYW50JywgdCkge1xuICAgIC8vIEdldCB0aGUgbWF0aCBtb2R1bGVzXG4gICAgY29uc3QgeyByYW5kb20sIHJvdW5kLCBzaW4sIFBJOiBwaSB9ID0gTWF0aFxuXG4gICAgLy8gUnVuIHRoZSBjb3JyZWN0IGdlbmVyYXRvclxuICAgIGlmIChtb2RlID09PSAndmlicmFudCcpIHtcbiAgICAgIGNvbnN0IGwgPSAoODEgLSA1NykgKiByYW5kb20oKSArIDU3XG4gICAgICBjb25zdCBjID0gKDgzIC0gNDUpICogcmFuZG9tKCkgKyA0NVxuICAgICAgY29uc3QgaCA9IDM2MCAqIHJhbmRvbSgpXG4gICAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcihsLCBjLCBoLCAnbGNoJylcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSBpZiAobW9kZSA9PT0gJ3NpbmUnKSB7XG4gICAgICB0ID0gdCA9PSBudWxsID8gcmFuZG9tKCkgOiB0XG4gICAgICBjb25zdCByID0gcm91bmQoODAgKiBzaW4oKDIgKiBwaSAqIHQpIC8gMC41ICsgMC4wMSkgKyAxNTApXG4gICAgICBjb25zdCBnID0gcm91bmQoNTAgKiBzaW4oKDIgKiBwaSAqIHQpIC8gMC41ICsgNC42KSArIDIwMClcbiAgICAgIGNvbnN0IGIgPSByb3VuZCgxMDAgKiBzaW4oKDIgKiBwaSAqIHQpIC8gMC41ICsgMi4zKSArIDE1MClcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKHIsIGcsIGIpXG4gICAgICByZXR1cm4gY29sb3JcbiAgICB9IGVsc2UgaWYgKG1vZGUgPT09ICdwYXN0ZWwnKSB7XG4gICAgICBjb25zdCBsID0gKDk0IC0gODYpICogcmFuZG9tKCkgKyA4NlxuICAgICAgY29uc3QgYyA9ICgyNiAtIDkpICogcmFuZG9tKCkgKyA5XG4gICAgICBjb25zdCBoID0gMzYwICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGwsIGMsIGgsICdsY2gnKVxuICAgICAgcmV0dXJuIGNvbG9yXG4gICAgfSBlbHNlIGlmIChtb2RlID09PSAnZGFyaycpIHtcbiAgICAgIGNvbnN0IGwgPSAxMCArIDEwICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGMgPSAoMTI1IC0gNzUpICogcmFuZG9tKCkgKyA4NlxuICAgICAgY29uc3QgaCA9IDM2MCAqIHJhbmRvbSgpXG4gICAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcihsLCBjLCBoLCAnbGNoJylcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSBpZiAobW9kZSA9PT0gJ3JnYicpIHtcbiAgICAgIGNvbnN0IHIgPSAyNTUgKiByYW5kb20oKVxuICAgICAgY29uc3QgZyA9IDI1NSAqIHJhbmRvbSgpXG4gICAgICBjb25zdCBiID0gMjU1ICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKHIsIGcsIGIpXG4gICAgICByZXR1cm4gY29sb3JcbiAgICB9IGVsc2UgaWYgKG1vZGUgPT09ICdsYWInKSB7XG4gICAgICBjb25zdCBsID0gMTAwICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGEgPSAyNTYgKiByYW5kb20oKSAtIDEyOFxuICAgICAgY29uc3QgYiA9IDI1NiAqIHJhbmRvbSgpIC0gMTI4XG4gICAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcihsLCBhLCBiLCAnbGFiJylcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSBpZiAobW9kZSA9PT0gJ2dyZXknKSB7XG4gICAgICBjb25zdCBncmV5ID0gMjU1ICogcmFuZG9tKClcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGdyZXksIGdyZXksIGdyZXkpXG4gICAgICByZXR1cm4gY29sb3JcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCByYW5kb20gY29sb3IgbW9kZScpXG4gICAgfVxuICB9XG5cbiAgLy8gVGVzdCBpZiBnaXZlbiB2YWx1ZSBpcyBhIGNvbG9yIHN0cmluZ1xuICBzdGF0aWMgdGVzdChjb2xvcikge1xuICAgIHJldHVybiB0eXBlb2YgY29sb3IgPT09ICdzdHJpbmcnICYmIChpc0hleC50ZXN0KGNvbG9yKSB8fCBpc1JnYi50ZXN0KGNvbG9yKSlcbiAgfVxuXG4gIGNteWsoKSB7XG4gICAgLy8gR2V0IHRoZSByZ2IgdmFsdWVzIGZvciB0aGUgY3VycmVudCBjb2xvclxuICAgIGNvbnN0IHsgX2EsIF9iLCBfYyB9ID0gdGhpcy5yZ2IoKVxuICAgIGNvbnN0IFtyLCBnLCBiXSA9IFtfYSwgX2IsIF9jXS5tYXAoKHYpID0+IHYgLyAyNTUpXG5cbiAgICAvLyBHZXQgdGhlIGNteWsgdmFsdWVzIGluIGFuIHVuYm91bmRlZCBmb3JtYXRcbiAgICBjb25zdCBrID0gTWF0aC5taW4oMSAtIHIsIDEgLSBnLCAxIC0gYilcblxuICAgIGlmIChrID09PSAxKSB7XG4gICAgICAvLyBDYXRjaCB0aGUgYmxhY2sgY2FzZVxuICAgICAgcmV0dXJuIG5ldyBDb2xvcigwLCAwLCAwLCAxLCAnY215aycpXG4gICAgfVxuXG4gICAgY29uc3QgYyA9ICgxIC0gciAtIGspIC8gKDEgLSBrKVxuICAgIGNvbnN0IG0gPSAoMSAtIGcgLSBrKSAvICgxIC0gaylcbiAgICBjb25zdCB5ID0gKDEgLSBiIC0gaykgLyAoMSAtIGspXG5cbiAgICAvLyBDb25zdHJ1Y3QgdGhlIG5ldyBjb2xvclxuICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGMsIG0sIHksIGssICdjbXlrJylcbiAgICByZXR1cm4gY29sb3JcbiAgfVxuXG4gIGhzbCgpIHtcbiAgICAvLyBHZXQgdGhlIHJnYiB2YWx1ZXNcbiAgICBjb25zdCB7IF9hLCBfYiwgX2MgfSA9IHRoaXMucmdiKClcbiAgICBjb25zdCBbciwgZywgYl0gPSBbX2EsIF9iLCBfY10ubWFwKCh2KSA9PiB2IC8gMjU1KVxuXG4gICAgLy8gRmluZCB0aGUgbWF4aW11bSBhbmQgbWluaW11bSB2YWx1ZXMgdG8gZ2V0IHRoZSBsaWdodG5lc3NcbiAgICBjb25zdCBtYXggPSBNYXRoLm1heChyLCBnLCBiKVxuICAgIGNvbnN0IG1pbiA9IE1hdGgubWluKHIsIGcsIGIpXG4gICAgY29uc3QgbCA9IChtYXggKyBtaW4pIC8gMlxuXG4gICAgLy8gSWYgdGhlIHIsIGcsIHYgdmFsdWVzIGFyZSBpZGVudGljYWwgdGhlbiB3ZSBhcmUgZ3JleVxuICAgIGNvbnN0IGlzR3JleSA9IG1heCA9PT0gbWluXG5cbiAgICAvLyBDYWxjdWxhdGUgdGhlIGh1ZSBhbmQgc2F0dXJhdGlvblxuICAgIGNvbnN0IGRlbHRhID0gbWF4IC0gbWluXG4gICAgY29uc3QgcyA9IGlzR3JleVxuICAgICAgPyAwXG4gICAgICA6IGwgPiAwLjVcbiAgICAgICAgPyBkZWx0YSAvICgyIC0gbWF4IC0gbWluKVxuICAgICAgICA6IGRlbHRhIC8gKG1heCArIG1pbilcbiAgICBjb25zdCBoID0gaXNHcmV5XG4gICAgICA/IDBcbiAgICAgIDogbWF4ID09PSByXG4gICAgICAgID8gKChnIC0gYikgLyBkZWx0YSArIChnIDwgYiA/IDYgOiAwKSkgLyA2XG4gICAgICAgIDogbWF4ID09PSBnXG4gICAgICAgICAgPyAoKGIgLSByKSAvIGRlbHRhICsgMikgLyA2XG4gICAgICAgICAgOiBtYXggPT09IGJcbiAgICAgICAgICAgID8gKChyIC0gZykgLyBkZWx0YSArIDQpIC8gNlxuICAgICAgICAgICAgOiAwXG5cbiAgICAvLyBDb25zdHJ1Y3QgYW5kIHJldHVybiB0aGUgbmV3IGNvbG9yXG4gICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IoMzYwICogaCwgMTAwICogcywgMTAwICogbCwgJ2hzbCcpXG4gICAgcmV0dXJuIGNvbG9yXG4gIH1cblxuICBpbml0KGEgPSAwLCBiID0gMCwgYyA9IDAsIGQgPSAwLCBzcGFjZSA9ICdyZ2InKSB7XG4gICAgLy8gVGhpcyBjYXRjaGVzIHRoZSBjYXNlIHdoZW4gYSBmYWxzeSB2YWx1ZSBpcyBwYXNzZWQgbGlrZSAnJ1xuICAgIGEgPSAhYSA/IDAgOiBhXG5cbiAgICAvLyBSZXNldCBhbGwgdmFsdWVzIGluIGNhc2UgdGhlIGluaXQgZnVuY3Rpb24gaXMgcmVydW4gd2l0aCBuZXcgY29sb3Igc3BhY2VcbiAgICBpZiAodGhpcy5zcGFjZSkge1xuICAgICAgZm9yIChjb25zdCBjb21wb25lbnQgaW4gdGhpcy5zcGFjZSkge1xuICAgICAgICBkZWxldGUgdGhpc1t0aGlzLnNwYWNlW2NvbXBvbmVudF1dXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBhID09PSAnbnVtYmVyJykge1xuICAgICAgLy8gQWxsb3cgZm9yIHRoZSBjYXNlIHRoYXQgd2UgZG9uJ3QgbmVlZCBkLi4uXG4gICAgICBzcGFjZSA9IHR5cGVvZiBkID09PSAnc3RyaW5nJyA/IGQgOiBzcGFjZVxuICAgICAgZCA9IHR5cGVvZiBkID09PSAnc3RyaW5nJyA/IDAgOiBkXG5cbiAgICAgIC8vIEFzc2lnbiB0aGUgdmFsdWVzIHN0cmFpZ2h0IHRvIHRoZSBjb2xvclxuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCB7IF9hOiBhLCBfYjogYiwgX2M6IGMsIF9kOiBkLCBzcGFjZSB9KVxuICAgICAgLy8gSWYgdGhlIHVzZXIgZ2F2ZSB1cyBhbiBhcnJheSwgbWFrZSB0aGUgY29sb3IgZnJvbSBpdFxuICAgIH0gZWxzZSBpZiAoYSBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICB0aGlzLnNwYWNlID0gYiB8fCAodHlwZW9mIGFbM10gPT09ICdzdHJpbmcnID8gYVszXSA6IGFbNF0pIHx8ICdyZ2InXG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMsIHsgX2E6IGFbMF0sIF9iOiBhWzFdLCBfYzogYVsyXSwgX2Q6IGFbM10gfHwgMCB9KVxuICAgIH0gZWxzZSBpZiAoYSBpbnN0YW5jZW9mIE9iamVjdCkge1xuICAgICAgLy8gU2V0IHRoZSBvYmplY3QgdXAgYW5kIGFzc2lnbiBpdHMgdmFsdWVzIGRpcmVjdGx5XG4gICAgICBjb25zdCB2YWx1ZXMgPSBnZXRQYXJhbWV0ZXJzKGEsIGIpXG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMsIHZhbHVlcylcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBhID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKGlzUmdiLnRlc3QoYSkpIHtcbiAgICAgICAgY29uc3Qgbm9XaGl0ZXNwYWNlID0gYS5yZXBsYWNlKHdoaXRlc3BhY2UsICcnKVxuICAgICAgICBjb25zdCBbX2EsIF9iLCBfY10gPSByZ2JcbiAgICAgICAgICAuZXhlYyhub1doaXRlc3BhY2UpXG4gICAgICAgICAgLnNsaWNlKDEsIDQpXG4gICAgICAgICAgLm1hcCgodikgPT4gcGFyc2VJbnQodikpXG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgeyBfYSwgX2IsIF9jLCBfZDogMCwgc3BhY2U6ICdyZ2InIH0pXG4gICAgICB9IGVsc2UgaWYgKGlzSGV4LnRlc3QoYSkpIHtcbiAgICAgICAgY29uc3QgaGV4UGFyc2UgPSAodikgPT4gcGFyc2VJbnQodiwgMTYpXG4gICAgICAgIGNvbnN0IFssIF9hLCBfYiwgX2NdID0gaGV4LmV4ZWMoc2l4RGlnaXRIZXgoYSkpLm1hcChoZXhQYXJzZSlcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCB7IF9hLCBfYiwgX2MsIF9kOiAwLCBzcGFjZTogJ3JnYicgfSlcbiAgICAgIH0gZWxzZSB0aHJvdyBFcnJvcihcIlVuc3VwcG9ydGVkIHN0cmluZyBmb3JtYXQsIGNhbid0IGNvbnN0cnVjdCBDb2xvclwiKVxuICAgIH1cblxuICAgIC8vIE5vdyBhZGQgdGhlIGNvbXBvbmVudHMgYXMgYSBjb252ZW5pZW5jZVxuICAgIGNvbnN0IHsgX2EsIF9iLCBfYywgX2QgfSA9IHRoaXNcbiAgICBjb25zdCBjb21wb25lbnRzID1cbiAgICAgIHRoaXMuc3BhY2UgPT09ICdyZ2InXG4gICAgICAgID8geyByOiBfYSwgZzogX2IsIGI6IF9jIH1cbiAgICAgICAgOiB0aGlzLnNwYWNlID09PSAneHl6J1xuICAgICAgICAgID8geyB4OiBfYSwgeTogX2IsIHo6IF9jIH1cbiAgICAgICAgICA6IHRoaXMuc3BhY2UgPT09ICdoc2wnXG4gICAgICAgICAgICA/IHsgaDogX2EsIHM6IF9iLCBsOiBfYyB9XG4gICAgICAgICAgICA6IHRoaXMuc3BhY2UgPT09ICdsYWInXG4gICAgICAgICAgICAgID8geyBsOiBfYSwgYTogX2IsIGI6IF9jIH1cbiAgICAgICAgICAgICAgOiB0aGlzLnNwYWNlID09PSAnbGNoJ1xuICAgICAgICAgICAgICAgID8geyBsOiBfYSwgYzogX2IsIGg6IF9jIH1cbiAgICAgICAgICAgICAgICA6IHRoaXMuc3BhY2UgPT09ICdjbXlrJ1xuICAgICAgICAgICAgICAgICAgPyB7IGM6IF9hLCBtOiBfYiwgeTogX2MsIGs6IF9kIH1cbiAgICAgICAgICAgICAgICAgIDoge31cbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIGNvbXBvbmVudHMpXG4gIH1cblxuICBsYWIoKSB7XG4gICAgLy8gR2V0IHRoZSB4eXogY29sb3JcbiAgICBjb25zdCB7IHgsIHksIHogfSA9IHRoaXMueHl6KClcblxuICAgIC8vIEdldCB0aGUgbGFiIGNvbXBvbmVudHNcbiAgICBjb25zdCBsID0gMTE2ICogeSAtIDE2XG4gICAgY29uc3QgYSA9IDUwMCAqICh4IC0geSlcbiAgICBjb25zdCBiID0gMjAwICogKHkgLSB6KVxuXG4gICAgLy8gQ29uc3RydWN0IGFuZCByZXR1cm4gYSBuZXcgY29sb3JcbiAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcihsLCBhLCBiLCAnbGFiJylcbiAgICByZXR1cm4gY29sb3JcbiAgfVxuXG4gIGxjaCgpIHtcbiAgICAvLyBHZXQgdGhlIGxhYiBjb2xvciBkaXJlY3RseVxuICAgIGNvbnN0IHsgbCwgYSwgYiB9ID0gdGhpcy5sYWIoKVxuXG4gICAgLy8gR2V0IHRoZSBjaHJvbWF0aWNpdHkgYW5kIHRoZSBodWUgdXNpbmcgcG9sYXIgY29vcmRpbmF0ZXNcbiAgICBjb25zdCBjID0gTWF0aC5zcXJ0KGEgKiogMiArIGIgKiogMilcbiAgICBsZXQgaCA9ICgxODAgKiBNYXRoLmF0YW4yKGIsIGEpKSAvIE1hdGguUElcbiAgICBpZiAoaCA8IDApIHtcbiAgICAgIGggKj0gLTFcbiAgICAgIGggPSAzNjAgLSBoXG4gICAgfVxuXG4gICAgLy8gTWFrZSBhIG5ldyBjb2xvciBhbmQgcmV0dXJuIGl0XG4gICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IobCwgYywgaCwgJ2xjaCcpXG4gICAgcmV0dXJuIGNvbG9yXG4gIH1cbiAgLypcbiAgQ29udmVyc2lvbiBNZXRob2RzXG4gICovXG5cbiAgcmdiKCkge1xuICAgIGlmICh0aGlzLnNwYWNlID09PSAncmdiJykge1xuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9IGVsc2UgaWYgKGNpZVNwYWNlKHRoaXMuc3BhY2UpKSB7XG4gICAgICAvLyBDb252ZXJ0IHRvIHRoZSB4eXogY29sb3Igc3BhY2VcbiAgICAgIGxldCB7IHgsIHksIHogfSA9IHRoaXNcbiAgICAgIGlmICh0aGlzLnNwYWNlID09PSAnbGFiJyB8fCB0aGlzLnNwYWNlID09PSAnbGNoJykge1xuICAgICAgICAvLyBHZXQgdGhlIHZhbHVlcyBpbiB0aGUgbGFiIHNwYWNlXG4gICAgICAgIGxldCB7IGwsIGEsIGIgfSA9IHRoaXNcbiAgICAgICAgaWYgKHRoaXMuc3BhY2UgPT09ICdsY2gnKSB7XG4gICAgICAgICAgY29uc3QgeyBjLCBoIH0gPSB0aGlzXG4gICAgICAgICAgY29uc3QgZFRvUiA9IE1hdGguUEkgLyAxODBcbiAgICAgICAgICBhID0gYyAqIE1hdGguY29zKGRUb1IgKiBoKVxuICAgICAgICAgIGIgPSBjICogTWF0aC5zaW4oZFRvUiAqIGgpXG4gICAgICAgIH1cblxuICAgICAgICAvLyBVbmRvIHRoZSBub25saW5lYXIgZnVuY3Rpb25cbiAgICAgICAgY29uc3QgeUwgPSAobCArIDE2KSAvIDExNlxuICAgICAgICBjb25zdCB4TCA9IGEgLyA1MDAgKyB5TFxuICAgICAgICBjb25zdCB6TCA9IHlMIC0gYiAvIDIwMFxuXG4gICAgICAgIC8vIEdldCB0aGUgeHl6IHZhbHVlc1xuICAgICAgICBjb25zdCBjdCA9IDE2IC8gMTE2XG4gICAgICAgIGNvbnN0IG14ID0gMC4wMDg4NTZcbiAgICAgICAgY29uc3Qgbm0gPSA3Ljc4N1xuICAgICAgICB4ID0gMC45NTA0NyAqICh4TCAqKiAzID4gbXggPyB4TCAqKiAzIDogKHhMIC0gY3QpIC8gbm0pXG4gICAgICAgIHkgPSAxLjAgKiAoeUwgKiogMyA+IG14ID8geUwgKiogMyA6ICh5TCAtIGN0KSAvIG5tKVxuICAgICAgICB6ID0gMS4wODg4MyAqICh6TCAqKiAzID4gbXggPyB6TCAqKiAzIDogKHpMIC0gY3QpIC8gbm0pXG4gICAgICB9XG5cbiAgICAgIC8vIENvbnZlcnQgeHl6IHRvIHVuYm91bmRlZCByZ2IgdmFsdWVzXG4gICAgICBjb25zdCByVSA9IHggKiAzLjI0MDYgKyB5ICogLTEuNTM3MiArIHogKiAtMC40OTg2XG4gICAgICBjb25zdCBnVSA9IHggKiAtMC45Njg5ICsgeSAqIDEuODc1OCArIHogKiAwLjA0MTVcbiAgICAgIGNvbnN0IGJVID0geCAqIDAuMDU1NyArIHkgKiAtMC4yMDQgKyB6ICogMS4wNTdcblxuICAgICAgLy8gQ29udmVydCB0aGUgdmFsdWVzIHRvIHRydWUgcmdiIHZhbHVlc1xuICAgICAgY29uc3QgcG93ID0gTWF0aC5wb3dcbiAgICAgIGNvbnN0IGJkID0gMC4wMDMxMzA4XG4gICAgICBjb25zdCByID0gclUgPiBiZCA/IDEuMDU1ICogcG93KHJVLCAxIC8gMi40KSAtIDAuMDU1IDogMTIuOTIgKiByVVxuICAgICAgY29uc3QgZyA9IGdVID4gYmQgPyAxLjA1NSAqIHBvdyhnVSwgMSAvIDIuNCkgLSAwLjA1NSA6IDEyLjkyICogZ1VcbiAgICAgIGNvbnN0IGIgPSBiVSA+IGJkID8gMS4wNTUgKiBwb3coYlUsIDEgLyAyLjQpIC0gMC4wNTUgOiAxMi45MiAqIGJVXG5cbiAgICAgIC8vIE1ha2UgYW5kIHJldHVybiB0aGUgY29sb3JcbiAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKDI1NSAqIHIsIDI1NSAqIGcsIDI1NSAqIGIpXG4gICAgICByZXR1cm4gY29sb3JcbiAgICB9IGVsc2UgaWYgKHRoaXMuc3BhY2UgPT09ICdoc2wnKSB7XG4gICAgICAvLyBodHRwczovL2Jncmlucy5naXRodWIuaW8vVGlueUNvbG9yL2RvY3MvdGlueWNvbG9yLmh0bWxcbiAgICAgIC8vIEdldCB0aGUgY3VycmVudCBoc2wgdmFsdWVzXG4gICAgICBsZXQgeyBoLCBzLCBsIH0gPSB0aGlzXG4gICAgICBoIC89IDM2MFxuICAgICAgcyAvPSAxMDBcbiAgICAgIGwgLz0gMTAwXG5cbiAgICAgIC8vIElmIHdlIGFyZSBncmV5LCB0aGVuIGp1c3QgbWFrZSB0aGUgY29sb3IgZGlyZWN0bHlcbiAgICAgIGlmIChzID09PSAwKSB7XG4gICAgICAgIGwgKj0gMjU1XG4gICAgICAgIGNvbnN0IGNvbG9yID0gbmV3IENvbG9yKGwsIGwsIGwpXG4gICAgICAgIHJldHVybiBjb2xvclxuICAgICAgfVxuXG4gICAgICAvLyBUT0RPIEkgaGF2ZSBubyBpZGVhIHdoYXQgdGhpcyBkb2VzIDpEIElmIHlvdSBmaWd1cmUgaXQgb3V0LCB0ZWxsIG1lIVxuICAgICAgY29uc3QgcSA9IGwgPCAwLjUgPyBsICogKDEgKyBzKSA6IGwgKyBzIC0gbCAqIHNcbiAgICAgIGNvbnN0IHAgPSAyICogbCAtIHFcblxuICAgICAgLy8gR2V0IHRoZSByZ2IgdmFsdWVzXG4gICAgICBjb25zdCByID0gMjU1ICogaHVlVG9SZ2IocCwgcSwgaCArIDEgLyAzKVxuICAgICAgY29uc3QgZyA9IDI1NSAqIGh1ZVRvUmdiKHAsIHEsIGgpXG4gICAgICBjb25zdCBiID0gMjU1ICogaHVlVG9SZ2IocCwgcSwgaCAtIDEgLyAzKVxuXG4gICAgICAvLyBNYWtlIGEgbmV3IGNvbG9yXG4gICAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcihyLCBnLCBiKVxuICAgICAgcmV0dXJuIGNvbG9yXG4gICAgfSBlbHNlIGlmICh0aGlzLnNwYWNlID09PSAnY215aycpIHtcbiAgICAgIC8vIGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2ZlbGlwZXNhYmluby81MDY2MzM2XG4gICAgICAvLyBHZXQgdGhlIG5vcm1hbGlzZWQgY215ayB2YWx1ZXNcbiAgICAgIGNvbnN0IHsgYywgbSwgeSwgayB9ID0gdGhpc1xuXG4gICAgICAvLyBHZXQgdGhlIHJnYiB2YWx1ZXNcbiAgICAgIGNvbnN0IHIgPSAyNTUgKiAoMSAtIE1hdGgubWluKDEsIGMgKiAoMSAtIGspICsgaykpXG4gICAgICBjb25zdCBnID0gMjU1ICogKDEgLSBNYXRoLm1pbigxLCBtICogKDEgLSBrKSArIGspKVxuICAgICAgY29uc3QgYiA9IDI1NSAqICgxIC0gTWF0aC5taW4oMSwgeSAqICgxIC0gaykgKyBrKSlcblxuICAgICAgLy8gRm9ybSB0aGUgY29sb3IgYW5kIHJldHVybiBpdFxuICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IociwgZywgYilcbiAgICAgIHJldHVybiBjb2xvclxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpc1xuICAgIH1cbiAgfVxuXG4gIHRvQXJyYXkoKSB7XG4gICAgY29uc3QgeyBfYSwgX2IsIF9jLCBfZCwgc3BhY2UgfSA9IHRoaXNcbiAgICByZXR1cm4gW19hLCBfYiwgX2MsIF9kLCBzcGFjZV1cbiAgfVxuXG4gIHRvSGV4KCkge1xuICAgIGNvbnN0IFtyLCBnLCBiXSA9IHRoaXMuX2NsYW1wZWQoKS5tYXAoY29tcG9uZW50SGV4KVxuICAgIHJldHVybiBgIyR7cn0ke2d9JHtifWBcbiAgfVxuXG4gIHRvUmdiKCkge1xuICAgIGNvbnN0IFtyViwgZ1YsIGJWXSA9IHRoaXMuX2NsYW1wZWQoKVxuICAgIGNvbnN0IHN0cmluZyA9IGByZ2IoJHtyVn0sJHtnVn0sJHtiVn0pYFxuICAgIHJldHVybiBzdHJpbmdcbiAgfVxuXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnRvSGV4KClcbiAgfVxuXG4gIHh5eigpIHtcbiAgICAvLyBOb3JtYWxpc2UgdGhlIHJlZCwgZ3JlZW4gYW5kIGJsdWUgdmFsdWVzXG4gICAgY29uc3QgeyBfYTogcjI1NSwgX2I6IGcyNTUsIF9jOiBiMjU1IH0gPSB0aGlzLnJnYigpXG4gICAgY29uc3QgW3IsIGcsIGJdID0gW3IyNTUsIGcyNTUsIGIyNTVdLm1hcCgodikgPT4gdiAvIDI1NSlcblxuICAgIC8vIENvbnZlcnQgdG8gdGhlIGxhYiByZ2Igc3BhY2VcbiAgICBjb25zdCByTCA9IHIgPiAwLjA0MDQ1ID8gTWF0aC5wb3coKHIgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSA6IHIgLyAxMi45MlxuICAgIGNvbnN0IGdMID0gZyA+IDAuMDQwNDUgPyBNYXRoLnBvdygoZyArIDAuMDU1KSAvIDEuMDU1LCAyLjQpIDogZyAvIDEyLjkyXG4gICAgY29uc3QgYkwgPSBiID4gMC4wNDA0NSA/IE1hdGgucG93KChiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkgOiBiIC8gMTIuOTJcblxuICAgIC8vIENvbnZlcnQgdG8gdGhlIHh5eiBjb2xvciBzcGFjZSB3aXRob3V0IGJvdW5kaW5nIHRoZSB2YWx1ZXNcbiAgICBjb25zdCB4VSA9IChyTCAqIDAuNDEyNCArIGdMICogMC4zNTc2ICsgYkwgKiAwLjE4MDUpIC8gMC45NTA0N1xuICAgIGNvbnN0IHlVID0gKHJMICogMC4yMTI2ICsgZ0wgKiAwLjcxNTIgKyBiTCAqIDAuMDcyMikgLyAxLjBcbiAgICBjb25zdCB6VSA9IChyTCAqIDAuMDE5MyArIGdMICogMC4xMTkyICsgYkwgKiAwLjk1MDUpIC8gMS4wODg4M1xuXG4gICAgLy8gR2V0IHRoZSBwcm9wZXIgeHl6IHZhbHVlcyBieSBhcHBseWluZyB0aGUgYm91bmRpbmdcbiAgICBjb25zdCB4ID0geFUgPiAwLjAwODg1NiA/IE1hdGgucG93KHhVLCAxIC8gMykgOiA3Ljc4NyAqIHhVICsgMTYgLyAxMTZcbiAgICBjb25zdCB5ID0geVUgPiAwLjAwODg1NiA/IE1hdGgucG93KHlVLCAxIC8gMykgOiA3Ljc4NyAqIHlVICsgMTYgLyAxMTZcbiAgICBjb25zdCB6ID0gelUgPiAwLjAwODg1NiA/IE1hdGgucG93KHpVLCAxIC8gMykgOiA3Ljc4NyAqIHpVICsgMTYgLyAxMTZcblxuICAgIC8vIE1ha2UgYW5kIHJldHVybiB0aGUgY29sb3JcbiAgICBjb25zdCBjb2xvciA9IG5ldyBDb2xvcih4LCB5LCB6LCAneHl6JylcbiAgICByZXR1cm4gY29sb3JcbiAgfVxuXG4gIC8qXG4gIElucHV0IGFuZCBPdXRwdXQgbWV0aG9kc1xuICAqL1xuXG4gIF9jbGFtcGVkKCkge1xuICAgIGNvbnN0IHsgX2EsIF9iLCBfYyB9ID0gdGhpcy5yZ2IoKVxuICAgIGNvbnN0IHsgbWF4LCBtaW4sIHJvdW5kIH0gPSBNYXRoXG4gICAgY29uc3QgZm9ybWF0ID0gKHYpID0+IG1heCgwLCBtaW4ocm91bmQodiksIDI1NSkpXG4gICAgcmV0dXJuIFtfYSwgX2IsIF9jXS5tYXAoZm9ybWF0KVxuICB9XG5cbiAgLypcbiAgQ29uc3RydWN0aW5nIGNvbG9yc1xuICAqL1xufVxuIiwgImltcG9ydCBNYXRyaXggZnJvbSAnLi9NYXRyaXguanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBvaW50IHtcbiAgLy8gSW5pdGlhbGl6ZVxuICBjb25zdHJ1Y3RvciguLi5hcmdzKSB7XG4gICAgdGhpcy5pbml0KC4uLmFyZ3MpXG4gIH1cblxuICAvLyBDbG9uZSBwb2ludFxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMpXG4gIH1cblxuICBpbml0KHgsIHkpIHtcbiAgICBjb25zdCBiYXNlID0geyB4OiAwLCB5OiAwIH1cblxuICAgIC8vIGVuc3VyZSBzb3VyY2UgYXMgb2JqZWN0XG4gICAgY29uc3Qgc291cmNlID0gQXJyYXkuaXNBcnJheSh4KVxuICAgICAgPyB7IHg6IHhbMF0sIHk6IHhbMV0gfVxuICAgICAgOiB0eXBlb2YgeCA9PT0gJ29iamVjdCdcbiAgICAgICAgPyB7IHg6IHgueCwgeTogeC55IH1cbiAgICAgICAgOiB7IHg6IHgsIHk6IHkgfVxuXG4gICAgLy8gbWVyZ2Ugc291cmNlXG4gICAgdGhpcy54ID0gc291cmNlLnggPT0gbnVsbCA/IGJhc2UueCA6IHNvdXJjZS54XG4gICAgdGhpcy55ID0gc291cmNlLnkgPT0gbnVsbCA/IGJhc2UueSA6IHNvdXJjZS55XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gW3RoaXMueCwgdGhpcy55XVxuICB9XG5cbiAgdHJhbnNmb3JtKG0pIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLnRyYW5zZm9ybU8obSlcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBwb2ludCB3aXRoIG1hdHJpeFxuICB0cmFuc2Zvcm1PKG0pIHtcbiAgICBpZiAoIU1hdHJpeC5pc01hdHJpeExpa2UobSkpIHtcbiAgICAgIG0gPSBuZXcgTWF0cml4KG0pXG4gICAgfVxuXG4gICAgY29uc3QgeyB4LCB5IH0gPSB0aGlzXG5cbiAgICAvLyBQZXJmb3JtIHRoZSBtYXRyaXggbXVsdGlwbGljYXRpb25cbiAgICB0aGlzLnggPSBtLmEgKiB4ICsgbS5jICogeSArIG0uZVxuICAgIHRoaXMueSA9IG0uYiAqIHggKyBtLmQgKiB5ICsgbS5mXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwb2ludCh4LCB5KSB7XG4gIHJldHVybiBuZXcgUG9pbnQoeCwgeSkudHJhbnNmb3JtTyh0aGlzLnNjcmVlbkNUTSgpLmludmVyc2VPKCkpXG59XG4iLCAiaW1wb3J0IHsgZGVsaW1pdGVyIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3JlZ2V4LmpzJ1xuaW1wb3J0IHsgcmFkaWFucyB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXIgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IEVsZW1lbnQgZnJvbSAnLi4vZWxlbWVudHMvRWxlbWVudC5qcydcbmltcG9ydCBQb2ludCBmcm9tICcuL1BvaW50LmpzJ1xuXG5mdW5jdGlvbiBjbG9zZUVub3VnaChhLCBiLCB0aHJlc2hvbGQpIHtcbiAgcmV0dXJuIE1hdGguYWJzKGIgLSBhKSA8ICh0aHJlc2hvbGQgfHwgMWUtNilcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWF0cml4IHtcbiAgY29uc3RydWN0b3IoLi4uYXJncykge1xuICAgIHRoaXMuaW5pdCguLi5hcmdzKVxuICB9XG5cbiAgc3RhdGljIGZvcm1hdFRyYW5zZm9ybXMobykge1xuICAgIC8vIEdldCBhbGwgb2YgdGhlIHBhcmFtZXRlcnMgcmVxdWlyZWQgdG8gZm9ybSB0aGUgbWF0cml4XG4gICAgY29uc3QgZmxpcEJvdGggPSBvLmZsaXAgPT09ICdib3RoJyB8fCBvLmZsaXAgPT09IHRydWVcbiAgICBjb25zdCBmbGlwWCA9IG8uZmxpcCAmJiAoZmxpcEJvdGggfHwgby5mbGlwID09PSAneCcpID8gLTEgOiAxXG4gICAgY29uc3QgZmxpcFkgPSBvLmZsaXAgJiYgKGZsaXBCb3RoIHx8IG8uZmxpcCA9PT0gJ3knKSA/IC0xIDogMVxuICAgIGNvbnN0IHNrZXdYID1cbiAgICAgIG8uc2tldyAmJiBvLnNrZXcubGVuZ3RoXG4gICAgICAgID8gby5za2V3WzBdXG4gICAgICAgIDogaXNGaW5pdGUoby5za2V3KVxuICAgICAgICAgID8gby5za2V3XG4gICAgICAgICAgOiBpc0Zpbml0ZShvLnNrZXdYKVxuICAgICAgICAgICAgPyBvLnNrZXdYXG4gICAgICAgICAgICA6IDBcbiAgICBjb25zdCBza2V3WSA9XG4gICAgICBvLnNrZXcgJiYgby5za2V3Lmxlbmd0aFxuICAgICAgICA/IG8uc2tld1sxXVxuICAgICAgICA6IGlzRmluaXRlKG8uc2tldylcbiAgICAgICAgICA/IG8uc2tld1xuICAgICAgICAgIDogaXNGaW5pdGUoby5za2V3WSlcbiAgICAgICAgICAgID8gby5za2V3WVxuICAgICAgICAgICAgOiAwXG4gICAgY29uc3Qgc2NhbGVYID1cbiAgICAgIG8uc2NhbGUgJiYgby5zY2FsZS5sZW5ndGhcbiAgICAgICAgPyBvLnNjYWxlWzBdICogZmxpcFhcbiAgICAgICAgOiBpc0Zpbml0ZShvLnNjYWxlKVxuICAgICAgICAgID8gby5zY2FsZSAqIGZsaXBYXG4gICAgICAgICAgOiBpc0Zpbml0ZShvLnNjYWxlWClcbiAgICAgICAgICAgID8gby5zY2FsZVggKiBmbGlwWFxuICAgICAgICAgICAgOiBmbGlwWFxuICAgIGNvbnN0IHNjYWxlWSA9XG4gICAgICBvLnNjYWxlICYmIG8uc2NhbGUubGVuZ3RoXG4gICAgICAgID8gby5zY2FsZVsxXSAqIGZsaXBZXG4gICAgICAgIDogaXNGaW5pdGUoby5zY2FsZSlcbiAgICAgICAgICA/IG8uc2NhbGUgKiBmbGlwWVxuICAgICAgICAgIDogaXNGaW5pdGUoby5zY2FsZVkpXG4gICAgICAgICAgICA/IG8uc2NhbGVZICogZmxpcFlcbiAgICAgICAgICAgIDogZmxpcFlcbiAgICBjb25zdCBzaGVhciA9IG8uc2hlYXIgfHwgMFxuICAgIGNvbnN0IHRoZXRhID0gby5yb3RhdGUgfHwgby50aGV0YSB8fCAwXG4gICAgY29uc3Qgb3JpZ2luID0gbmV3IFBvaW50KFxuICAgICAgby5vcmlnaW4gfHwgby5hcm91bmQgfHwgby5veCB8fCBvLm9yaWdpblgsXG4gICAgICBvLm95IHx8IG8ub3JpZ2luWVxuICAgIClcbiAgICBjb25zdCBveCA9IG9yaWdpbi54XG4gICAgY29uc3Qgb3kgPSBvcmlnaW4ueVxuICAgIC8vIFdlIG5lZWQgUG9pbnQgdG8gYmUgaW52YWxpZCBpZiBub3RoaW5nIHdhcyBwYXNzZWQgYmVjYXVzZSB3ZSBjYW5ub3QgZGVmYXVsdCB0byAwIGhlcmUuIFRoYXQgaXMgd2h5IE5hTlxuICAgIGNvbnN0IHBvc2l0aW9uID0gbmV3IFBvaW50KFxuICAgICAgby5wb3NpdGlvbiB8fCBvLnB4IHx8IG8ucG9zaXRpb25YIHx8IE5hTixcbiAgICAgIG8ucHkgfHwgby5wb3NpdGlvblkgfHwgTmFOXG4gICAgKVxuICAgIGNvbnN0IHB4ID0gcG9zaXRpb24ueFxuICAgIGNvbnN0IHB5ID0gcG9zaXRpb24ueVxuICAgIGNvbnN0IHRyYW5zbGF0ZSA9IG5ldyBQb2ludChcbiAgICAgIG8udHJhbnNsYXRlIHx8IG8udHggfHwgby50cmFuc2xhdGVYLFxuICAgICAgby50eSB8fCBvLnRyYW5zbGF0ZVlcbiAgICApXG4gICAgY29uc3QgdHggPSB0cmFuc2xhdGUueFxuICAgIGNvbnN0IHR5ID0gdHJhbnNsYXRlLnlcbiAgICBjb25zdCByZWxhdGl2ZSA9IG5ldyBQb2ludChcbiAgICAgIG8ucmVsYXRpdmUgfHwgby5yeCB8fCBvLnJlbGF0aXZlWCxcbiAgICAgIG8ucnkgfHwgby5yZWxhdGl2ZVlcbiAgICApXG4gICAgY29uc3QgcnggPSByZWxhdGl2ZS54XG4gICAgY29uc3QgcnkgPSByZWxhdGl2ZS55XG5cbiAgICAvLyBQb3B1bGF0ZSBhbGwgb2YgdGhlIHZhbHVlc1xuICAgIHJldHVybiB7XG4gICAgICBzY2FsZVgsXG4gICAgICBzY2FsZVksXG4gICAgICBza2V3WCxcbiAgICAgIHNrZXdZLFxuICAgICAgc2hlYXIsXG4gICAgICB0aGV0YSxcbiAgICAgIHJ4LFxuICAgICAgcnksXG4gICAgICB0eCxcbiAgICAgIHR5LFxuICAgICAgb3gsXG4gICAgICBveSxcbiAgICAgIHB4LFxuICAgICAgcHlcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZnJvbUFycmF5KGEpIHtcbiAgICByZXR1cm4geyBhOiBhWzBdLCBiOiBhWzFdLCBjOiBhWzJdLCBkOiBhWzNdLCBlOiBhWzRdLCBmOiBhWzVdIH1cbiAgfVxuXG4gIHN0YXRpYyBpc01hdHJpeExpa2Uobykge1xuICAgIHJldHVybiAoXG4gICAgICBvLmEgIT0gbnVsbCB8fFxuICAgICAgby5iICE9IG51bGwgfHxcbiAgICAgIG8uYyAhPSBudWxsIHx8XG4gICAgICBvLmQgIT0gbnVsbCB8fFxuICAgICAgby5lICE9IG51bGwgfHxcbiAgICAgIG8uZiAhPSBudWxsXG4gICAgKVxuICB9XG5cbiAgLy8gbGVmdCBtYXRyaXgsIHJpZ2h0IG1hdHJpeCwgdGFyZ2V0IG1hdHJpeCB3aGljaCBpcyBvdmVyd3JpdHRlblxuICBzdGF0aWMgbWF0cml4TXVsdGlwbHkobCwgciwgbykge1xuICAgIC8vIFdvcmsgb3V0IHRoZSBwcm9kdWN0IGRpcmVjdGx5XG4gICAgY29uc3QgYSA9IGwuYSAqIHIuYSArIGwuYyAqIHIuYlxuICAgIGNvbnN0IGIgPSBsLmIgKiByLmEgKyBsLmQgKiByLmJcbiAgICBjb25zdCBjID0gbC5hICogci5jICsgbC5jICogci5kXG4gICAgY29uc3QgZCA9IGwuYiAqIHIuYyArIGwuZCAqIHIuZFxuICAgIGNvbnN0IGUgPSBsLmUgKyBsLmEgKiByLmUgKyBsLmMgKiByLmZcbiAgICBjb25zdCBmID0gbC5mICsgbC5iICogci5lICsgbC5kICogci5mXG5cbiAgICAvLyBtYWtlIHN1cmUgdG8gdXNlIGxvY2FsIHZhcmlhYmxlcyBiZWNhdXNlIGwvciBhbmQgbyBjb3VsZCBiZSB0aGUgc2FtZVxuICAgIG8uYSA9IGFcbiAgICBvLmIgPSBiXG4gICAgby5jID0gY1xuICAgIG8uZCA9IGRcbiAgICBvLmUgPSBlXG4gICAgby5mID0gZlxuXG4gICAgcmV0dXJuIG9cbiAgfVxuXG4gIGFyb3VuZChjeCwgY3ksIG1hdHJpeCkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkuYXJvdW5kTyhjeCwgY3ksIG1hdHJpeClcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBhcm91bmQgYSBjZW50ZXIgcG9pbnRcbiAgYXJvdW5kTyhjeCwgY3ksIG1hdHJpeCkge1xuICAgIGNvbnN0IGR4ID0gY3ggfHwgMFxuICAgIGNvbnN0IGR5ID0gY3kgfHwgMFxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZU8oLWR4LCAtZHkpLmxtdWx0aXBseU8obWF0cml4KS50cmFuc2xhdGVPKGR4LCBkeSlcbiAgfVxuXG4gIC8vIENsb25lcyB0aGlzIG1hdHJpeFxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IE1hdHJpeCh0aGlzKVxuICB9XG5cbiAgLy8gRGVjb21wb3NlcyB0aGlzIG1hdHJpeCBpbnRvIGl0cyBhZmZpbmUgcGFyYW1ldGVyc1xuICBkZWNvbXBvc2UoY3ggPSAwLCBjeSA9IDApIHtcbiAgICAvLyBHZXQgdGhlIHBhcmFtZXRlcnMgZnJvbSB0aGUgbWF0cml4XG4gICAgY29uc3QgYSA9IHRoaXMuYVxuICAgIGNvbnN0IGIgPSB0aGlzLmJcbiAgICBjb25zdCBjID0gdGhpcy5jXG4gICAgY29uc3QgZCA9IHRoaXMuZFxuICAgIGNvbnN0IGUgPSB0aGlzLmVcbiAgICBjb25zdCBmID0gdGhpcy5mXG5cbiAgICAvLyBGaWd1cmUgb3V0IGlmIHRoZSB3aW5kaW5nIGRpcmVjdGlvbiBpcyBjbG9ja3dpc2Ugb3IgY291bnRlcmNsb2Nrd2lzZVxuICAgIGNvbnN0IGRldGVybWluYW50ID0gYSAqIGQgLSBiICogY1xuICAgIGNvbnN0IGNjdyA9IGRldGVybWluYW50ID4gMCA/IDEgOiAtMVxuXG4gICAgLy8gU2luY2Ugd2Ugb25seSBzaGVhciBpbiB4LCB3ZSBjYW4gdXNlIHRoZSB4IGJhc2lzIHRvIGdldCB0aGUgeCBzY2FsZVxuICAgIC8vIGFuZCB0aGUgcm90YXRpb24gb2YgdGhlIHJlc3VsdGluZyBtYXRyaXhcbiAgICBjb25zdCBzeCA9IGNjdyAqIE1hdGguc3FydChhICogYSArIGIgKiBiKVxuICAgIGNvbnN0IHRoZXRhUmFkID0gTWF0aC5hdGFuMihjY3cgKiBiLCBjY3cgKiBhKVxuICAgIGNvbnN0IHRoZXRhID0gKDE4MCAvIE1hdGguUEkpICogdGhldGFSYWRcbiAgICBjb25zdCBjdCA9IE1hdGguY29zKHRoZXRhUmFkKVxuICAgIGNvbnN0IHN0ID0gTWF0aC5zaW4odGhldGFSYWQpXG5cbiAgICAvLyBXZSBjYW4gdGhlbiBzb2x2ZSB0aGUgeSBiYXNpcyB2ZWN0b3Igc2ltdWx0YW5lb3VzbHkgdG8gZ2V0IHRoZSBvdGhlclxuICAgIC8vIHR3byBhZmZpbmUgcGFyYW1ldGVycyBkaXJlY3RseSBmcm9tIHRoZXNlIHBhcmFtZXRlcnNcbiAgICBjb25zdCBsYW0gPSAoYSAqIGMgKyBiICogZCkgLyBkZXRlcm1pbmFudFxuICAgIGNvbnN0IHN5ID0gKGMgKiBzeCkgLyAobGFtICogYSAtIGIpIHx8IChkICogc3gpIC8gKGxhbSAqIGIgKyBhKVxuXG4gICAgLy8gVXNlIHRoZSB0cmFuc2xhdGlvbnNcbiAgICBjb25zdCB0eCA9IGUgLSBjeCArIGN4ICogY3QgKiBzeCArIGN5ICogKGxhbSAqIGN0ICogc3ggLSBzdCAqIHN5KVxuICAgIGNvbnN0IHR5ID0gZiAtIGN5ICsgY3ggKiBzdCAqIHN4ICsgY3kgKiAobGFtICogc3QgKiBzeCArIGN0ICogc3kpXG5cbiAgICAvLyBDb25zdHJ1Y3QgdGhlIGRlY29tcG9zaXRpb24gYW5kIHJldHVybiBpdFxuICAgIHJldHVybiB7XG4gICAgICAvLyBSZXR1cm4gdGhlIGFmZmluZSBwYXJhbWV0ZXJzXG4gICAgICBzY2FsZVg6IHN4LFxuICAgICAgc2NhbGVZOiBzeSxcbiAgICAgIHNoZWFyOiBsYW0sXG4gICAgICByb3RhdGU6IHRoZXRhLFxuICAgICAgdHJhbnNsYXRlWDogdHgsXG4gICAgICB0cmFuc2xhdGVZOiB0eSxcbiAgICAgIG9yaWdpblg6IGN4LFxuICAgICAgb3JpZ2luWTogY3ksXG5cbiAgICAgIC8vIFJldHVybiB0aGUgbWF0cml4IHBhcmFtZXRlcnNcbiAgICAgIGE6IHRoaXMuYSxcbiAgICAgIGI6IHRoaXMuYixcbiAgICAgIGM6IHRoaXMuYyxcbiAgICAgIGQ6IHRoaXMuZCxcbiAgICAgIGU6IHRoaXMuZSxcbiAgICAgIGY6IHRoaXMuZlxuICAgIH1cbiAgfVxuXG4gIC8vIENoZWNrIGlmIHR3byBtYXRyaWNlcyBhcmUgZXF1YWxcbiAgZXF1YWxzKG90aGVyKSB7XG4gICAgaWYgKG90aGVyID09PSB0aGlzKSByZXR1cm4gdHJ1ZVxuICAgIGNvbnN0IGNvbXAgPSBuZXcgTWF0cml4KG90aGVyKVxuICAgIHJldHVybiAoXG4gICAgICBjbG9zZUVub3VnaCh0aGlzLmEsIGNvbXAuYSkgJiZcbiAgICAgIGNsb3NlRW5vdWdoKHRoaXMuYiwgY29tcC5iKSAmJlxuICAgICAgY2xvc2VFbm91Z2godGhpcy5jLCBjb21wLmMpICYmXG4gICAgICBjbG9zZUVub3VnaCh0aGlzLmQsIGNvbXAuZCkgJiZcbiAgICAgIGNsb3NlRW5vdWdoKHRoaXMuZSwgY29tcC5lKSAmJlxuICAgICAgY2xvc2VFbm91Z2godGhpcy5mLCBjb21wLmYpXG4gICAgKVxuICB9XG5cbiAgLy8gRmxpcCBtYXRyaXggb24geCBvciB5LCBhdCBhIGdpdmVuIG9mZnNldFxuICBmbGlwKGF4aXMsIGFyb3VuZCkge1xuICAgIHJldHVybiB0aGlzLmNsb25lKCkuZmxpcE8oYXhpcywgYXJvdW5kKVxuICB9XG5cbiAgZmxpcE8oYXhpcywgYXJvdW5kKSB7XG4gICAgcmV0dXJuIGF4aXMgPT09ICd4J1xuICAgICAgPyB0aGlzLnNjYWxlTygtMSwgMSwgYXJvdW5kLCAwKVxuICAgICAgOiBheGlzID09PSAneSdcbiAgICAgICAgPyB0aGlzLnNjYWxlTygxLCAtMSwgMCwgYXJvdW5kKVxuICAgICAgICA6IHRoaXMuc2NhbGVPKC0xLCAtMSwgYXhpcywgYXJvdW5kIHx8IGF4aXMpIC8vIERlZmluZSBhbiB4LCB5IGZsaXAgcG9pbnRcbiAgfVxuXG4gIC8vIEluaXRpYWxpemVcbiAgaW5pdChzb3VyY2UpIHtcbiAgICBjb25zdCBiYXNlID0gTWF0cml4LmZyb21BcnJheShbMSwgMCwgMCwgMSwgMCwgMF0pXG5cbiAgICAvLyBlbnN1cmUgc291cmNlIGFzIG9iamVjdFxuICAgIHNvdXJjZSA9XG4gICAgICBzb3VyY2UgaW5zdGFuY2VvZiBFbGVtZW50XG4gICAgICAgID8gc291cmNlLm1hdHJpeGlmeSgpXG4gICAgICAgIDogdHlwZW9mIHNvdXJjZSA9PT0gJ3N0cmluZydcbiAgICAgICAgICA/IE1hdHJpeC5mcm9tQXJyYXkoc291cmNlLnNwbGl0KGRlbGltaXRlcikubWFwKHBhcnNlRmxvYXQpKVxuICAgICAgICAgIDogQXJyYXkuaXNBcnJheShzb3VyY2UpXG4gICAgICAgICAgICA/IE1hdHJpeC5mcm9tQXJyYXkoc291cmNlKVxuICAgICAgICAgICAgOiB0eXBlb2Ygc291cmNlID09PSAnb2JqZWN0JyAmJiBNYXRyaXguaXNNYXRyaXhMaWtlKHNvdXJjZSlcbiAgICAgICAgICAgICAgPyBzb3VyY2VcbiAgICAgICAgICAgICAgOiB0eXBlb2Ygc291cmNlID09PSAnb2JqZWN0J1xuICAgICAgICAgICAgICAgID8gbmV3IE1hdHJpeCgpLnRyYW5zZm9ybShzb3VyY2UpXG4gICAgICAgICAgICAgICAgOiBhcmd1bWVudHMubGVuZ3RoID09PSA2XG4gICAgICAgICAgICAgICAgICA/IE1hdHJpeC5mcm9tQXJyYXkoW10uc2xpY2UuY2FsbChhcmd1bWVudHMpKVxuICAgICAgICAgICAgICAgICAgOiBiYXNlXG5cbiAgICAvLyBNZXJnZSB0aGUgc291cmNlIG1hdHJpeCB3aXRoIHRoZSBiYXNlIG1hdHJpeFxuICAgIHRoaXMuYSA9IHNvdXJjZS5hICE9IG51bGwgPyBzb3VyY2UuYSA6IGJhc2UuYVxuICAgIHRoaXMuYiA9IHNvdXJjZS5iICE9IG51bGwgPyBzb3VyY2UuYiA6IGJhc2UuYlxuICAgIHRoaXMuYyA9IHNvdXJjZS5jICE9IG51bGwgPyBzb3VyY2UuYyA6IGJhc2UuY1xuICAgIHRoaXMuZCA9IHNvdXJjZS5kICE9IG51bGwgPyBzb3VyY2UuZCA6IGJhc2UuZFxuICAgIHRoaXMuZSA9IHNvdXJjZS5lICE9IG51bGwgPyBzb3VyY2UuZSA6IGJhc2UuZVxuICAgIHRoaXMuZiA9IHNvdXJjZS5mICE9IG51bGwgPyBzb3VyY2UuZiA6IGJhc2UuZlxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGludmVyc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5pbnZlcnNlTygpXG4gIH1cblxuICAvLyBJbnZlcnNlcyBtYXRyaXhcbiAgaW52ZXJzZU8oKSB7XG4gICAgLy8gR2V0IHRoZSBjdXJyZW50IHBhcmFtZXRlcnMgb3V0IG9mIHRoZSBtYXRyaXhcbiAgICBjb25zdCBhID0gdGhpcy5hXG4gICAgY29uc3QgYiA9IHRoaXMuYlxuICAgIGNvbnN0IGMgPSB0aGlzLmNcbiAgICBjb25zdCBkID0gdGhpcy5kXG4gICAgY29uc3QgZSA9IHRoaXMuZVxuICAgIGNvbnN0IGYgPSB0aGlzLmZcblxuICAgIC8vIEludmVydCB0aGUgMngyIG1hdHJpeCBpbiB0aGUgdG9wIGxlZnRcbiAgICBjb25zdCBkZXQgPSBhICogZCAtIGIgKiBjXG4gICAgaWYgKCFkZXQpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGludmVydCAnICsgdGhpcylcblxuICAgIC8vIENhbGN1bGF0ZSB0aGUgdG9wIDJ4MiBtYXRyaXhcbiAgICBjb25zdCBuYSA9IGQgLyBkZXRcbiAgICBjb25zdCBuYiA9IC1iIC8gZGV0XG4gICAgY29uc3QgbmMgPSAtYyAvIGRldFxuICAgIGNvbnN0IG5kID0gYSAvIGRldFxuXG4gICAgLy8gQXBwbHkgdGhlIGludmVydGVkIG1hdHJpeCB0byB0aGUgdG9wIHJpZ2h0XG4gICAgY29uc3QgbmUgPSAtKG5hICogZSArIG5jICogZilcbiAgICBjb25zdCBuZiA9IC0obmIgKiBlICsgbmQgKiBmKVxuXG4gICAgLy8gQ29uc3RydWN0IHRoZSBpbnZlcnRlZCBtYXRyaXhcbiAgICB0aGlzLmEgPSBuYVxuICAgIHRoaXMuYiA9IG5iXG4gICAgdGhpcy5jID0gbmNcbiAgICB0aGlzLmQgPSBuZFxuICAgIHRoaXMuZSA9IG5lXG4gICAgdGhpcy5mID0gbmZcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBsbXVsdGlwbHkobWF0cml4KSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5sbXVsdGlwbHlPKG1hdHJpeClcbiAgfVxuXG4gIGxtdWx0aXBseU8obWF0cml4KSB7XG4gICAgY29uc3QgciA9IHRoaXNcbiAgICBjb25zdCBsID0gbWF0cml4IGluc3RhbmNlb2YgTWF0cml4ID8gbWF0cml4IDogbmV3IE1hdHJpeChtYXRyaXgpXG5cbiAgICByZXR1cm4gTWF0cml4Lm1hdHJpeE11bHRpcGx5KGwsIHIsIHRoaXMpXG4gIH1cblxuICAvLyBMZWZ0IG11bHRpcGxpZXMgYnkgdGhlIGdpdmVuIG1hdHJpeFxuICBtdWx0aXBseShtYXRyaXgpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLm11bHRpcGx5TyhtYXRyaXgpXG4gIH1cblxuICBtdWx0aXBseU8obWF0cml4KSB7XG4gICAgLy8gR2V0IHRoZSBtYXRyaWNlc1xuICAgIGNvbnN0IGwgPSB0aGlzXG4gICAgY29uc3QgciA9IG1hdHJpeCBpbnN0YW5jZW9mIE1hdHJpeCA/IG1hdHJpeCA6IG5ldyBNYXRyaXgobWF0cml4KVxuXG4gICAgcmV0dXJuIE1hdHJpeC5tYXRyaXhNdWx0aXBseShsLCByLCB0aGlzKVxuICB9XG5cbiAgLy8gUm90YXRlIG1hdHJpeFxuICByb3RhdGUociwgY3gsIGN5KSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5yb3RhdGVPKHIsIGN4LCBjeSlcbiAgfVxuXG4gIHJvdGF0ZU8ociwgY3ggPSAwLCBjeSA9IDApIHtcbiAgICAvLyBDb252ZXJ0IGRlZ3JlZXMgdG8gcmFkaWFuc1xuICAgIHIgPSByYWRpYW5zKHIpXG5cbiAgICBjb25zdCBjb3MgPSBNYXRoLmNvcyhyKVxuICAgIGNvbnN0IHNpbiA9IE1hdGguc2luKHIpXG5cbiAgICBjb25zdCB7IGEsIGIsIGMsIGQsIGUsIGYgfSA9IHRoaXNcblxuICAgIHRoaXMuYSA9IGEgKiBjb3MgLSBiICogc2luXG4gICAgdGhpcy5iID0gYiAqIGNvcyArIGEgKiBzaW5cbiAgICB0aGlzLmMgPSBjICogY29zIC0gZCAqIHNpblxuICAgIHRoaXMuZCA9IGQgKiBjb3MgKyBjICogc2luXG4gICAgdGhpcy5lID0gZSAqIGNvcyAtIGYgKiBzaW4gKyBjeSAqIHNpbiAtIGN4ICogY29zICsgY3hcbiAgICB0aGlzLmYgPSBmICogY29zICsgZSAqIHNpbiAtIGN4ICogc2luIC0gY3kgKiBjb3MgKyBjeVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFNjYWxlIG1hdHJpeFxuICBzY2FsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLnNjYWxlTyguLi5hcmd1bWVudHMpXG4gIH1cblxuICBzY2FsZU8oeCwgeSA9IHgsIGN4ID0gMCwgY3kgPSAwKSB7XG4gICAgLy8gU3VwcG9ydCB1bmlmb3JtIHNjYWxpbmdcbiAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMykge1xuICAgICAgY3kgPSBjeFxuICAgICAgY3ggPSB5XG4gICAgICB5ID0geFxuICAgIH1cblxuICAgIGNvbnN0IHsgYSwgYiwgYywgZCwgZSwgZiB9ID0gdGhpc1xuXG4gICAgdGhpcy5hID0gYSAqIHhcbiAgICB0aGlzLmIgPSBiICogeVxuICAgIHRoaXMuYyA9IGMgKiB4XG4gICAgdGhpcy5kID0gZCAqIHlcbiAgICB0aGlzLmUgPSBlICogeCAtIGN4ICogeCArIGN4XG4gICAgdGhpcy5mID0gZiAqIHkgLSBjeSAqIHkgKyBjeVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFNoZWFyIG1hdHJpeFxuICBzaGVhcihhLCBjeCwgY3kpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLnNoZWFyTyhhLCBjeCwgY3kpXG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiAgc2hlYXJPKGx4LCBjeCA9IDAsIGN5ID0gMCkge1xuICAgIGNvbnN0IHsgYSwgYiwgYywgZCwgZSwgZiB9ID0gdGhpc1xuXG4gICAgdGhpcy5hID0gYSArIGIgKiBseFxuICAgIHRoaXMuYyA9IGMgKyBkICogbHhcbiAgICB0aGlzLmUgPSBlICsgZiAqIGx4IC0gY3kgKiBseFxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFNrZXcgTWF0cml4XG4gIHNrZXcoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS5za2V3TyguLi5hcmd1bWVudHMpXG4gIH1cblxuICBza2V3Tyh4LCB5ID0geCwgY3ggPSAwLCBjeSA9IDApIHtcbiAgICAvLyBzdXBwb3J0IHVuaWZvcm1hbCBza2V3XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDMpIHtcbiAgICAgIGN5ID0gY3hcbiAgICAgIGN4ID0geVxuICAgICAgeSA9IHhcbiAgICB9XG5cbiAgICAvLyBDb252ZXJ0IGRlZ3JlZXMgdG8gcmFkaWFuc1xuICAgIHggPSByYWRpYW5zKHgpXG4gICAgeSA9IHJhZGlhbnMoeSlcblxuICAgIGNvbnN0IGx4ID0gTWF0aC50YW4oeClcbiAgICBjb25zdCBseSA9IE1hdGgudGFuKHkpXG5cbiAgICBjb25zdCB7IGEsIGIsIGMsIGQsIGUsIGYgfSA9IHRoaXNcblxuICAgIHRoaXMuYSA9IGEgKyBiICogbHhcbiAgICB0aGlzLmIgPSBiICsgYSAqIGx5XG4gICAgdGhpcy5jID0gYyArIGQgKiBseFxuICAgIHRoaXMuZCA9IGQgKyBjICogbHlcbiAgICB0aGlzLmUgPSBlICsgZiAqIGx4IC0gY3kgKiBseFxuICAgIHRoaXMuZiA9IGYgKyBlICogbHkgLSBjeCAqIGx5XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU2tld1hcbiAgc2tld1goeCwgY3gsIGN5KSB7XG4gICAgcmV0dXJuIHRoaXMuc2tldyh4LCAwLCBjeCwgY3kpXG4gIH1cblxuICAvLyBTa2V3WVxuICBza2V3WSh5LCBjeCwgY3kpIHtcbiAgICByZXR1cm4gdGhpcy5za2V3KDAsIHksIGN4LCBjeSlcbiAgfVxuXG4gIHRvQXJyYXkoKSB7XG4gICAgcmV0dXJuIFt0aGlzLmEsIHRoaXMuYiwgdGhpcy5jLCB0aGlzLmQsIHRoaXMuZSwgdGhpcy5mXVxuICB9XG5cbiAgLy8gQ29udmVydCBtYXRyaXggdG8gc3RyaW5nXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiAoXG4gICAgICAnbWF0cml4KCcgK1xuICAgICAgdGhpcy5hICtcbiAgICAgICcsJyArXG4gICAgICB0aGlzLmIgK1xuICAgICAgJywnICtcbiAgICAgIHRoaXMuYyArXG4gICAgICAnLCcgK1xuICAgICAgdGhpcy5kICtcbiAgICAgICcsJyArXG4gICAgICB0aGlzLmUgK1xuICAgICAgJywnICtcbiAgICAgIHRoaXMuZiArXG4gICAgICAnKSdcbiAgICApXG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gYSBtYXRyaXggaW50byBhbm90aGVyIG1hdHJpeCBieSBtYW5pcHVsYXRpbmcgdGhlIHNwYWNlXG4gIHRyYW5zZm9ybShvKSB7XG4gICAgLy8gQ2hlY2sgaWYgbyBpcyBhIG1hdHJpeCBhbmQgdGhlbiBsZWZ0IG11bHRpcGx5IGl0IGRpcmVjdGx5XG4gICAgaWYgKE1hdHJpeC5pc01hdHJpeExpa2UobykpIHtcbiAgICAgIGNvbnN0IG1hdHJpeCA9IG5ldyBNYXRyaXgobylcbiAgICAgIHJldHVybiBtYXRyaXgubXVsdGlwbHlPKHRoaXMpXG4gICAgfVxuXG4gICAgLy8gR2V0IHRoZSBwcm9wb3NlZCB0cmFuc2Zvcm1hdGlvbnMgYW5kIHRoZSBjdXJyZW50IHRyYW5zZm9ybWF0aW9uc1xuICAgIGNvbnN0IHQgPSBNYXRyaXguZm9ybWF0VHJhbnNmb3JtcyhvKVxuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzXG4gICAgY29uc3QgeyB4OiBveCwgeTogb3kgfSA9IG5ldyBQb2ludCh0Lm94LCB0Lm95KS50cmFuc2Zvcm0oY3VycmVudClcblxuICAgIC8vIENvbnN0cnVjdCB0aGUgcmVzdWx0aW5nIG1hdHJpeFxuICAgIGNvbnN0IHRyYW5zZm9ybWVyID0gbmV3IE1hdHJpeCgpXG4gICAgICAudHJhbnNsYXRlTyh0LnJ4LCB0LnJ5KVxuICAgICAgLmxtdWx0aXBseU8oY3VycmVudClcbiAgICAgIC50cmFuc2xhdGVPKC1veCwgLW95KVxuICAgICAgLnNjYWxlTyh0LnNjYWxlWCwgdC5zY2FsZVkpXG4gICAgICAuc2tld08odC5za2V3WCwgdC5za2V3WSlcbiAgICAgIC5zaGVhck8odC5zaGVhcilcbiAgICAgIC5yb3RhdGVPKHQudGhldGEpXG4gICAgICAudHJhbnNsYXRlTyhveCwgb3kpXG5cbiAgICAvLyBJZiB3ZSB3YW50IHRoZSBvcmlnaW4gYXQgYSBwYXJ0aWN1bGFyIHBsYWNlLCB3ZSBmb3JjZSBpdCB0aGVyZVxuICAgIGlmIChpc0Zpbml0ZSh0LnB4KSB8fCBpc0Zpbml0ZSh0LnB5KSkge1xuICAgICAgY29uc3Qgb3JpZ2luID0gbmV3IFBvaW50KG94LCBveSkudHJhbnNmb3JtKHRyYW5zZm9ybWVyKVxuICAgICAgLy8gVE9ETzogUmVwbGFjZSB0LnB4IHdpdGggaXNGaW5pdGUodC5weClcbiAgICAgIC8vIERvZXNuJ3Qgd29yayBiZWNhdXNlIHQucHggaXMgYWxzbyAwIGlmIGl0IHdhc24ndCBwYXNzZWRcbiAgICAgIGNvbnN0IGR4ID0gaXNGaW5pdGUodC5weCkgPyB0LnB4IC0gb3JpZ2luLnggOiAwXG4gICAgICBjb25zdCBkeSA9IGlzRmluaXRlKHQucHkpID8gdC5weSAtIG9yaWdpbi55IDogMFxuICAgICAgdHJhbnNmb3JtZXIudHJhbnNsYXRlTyhkeCwgZHkpXG4gICAgfVxuXG4gICAgLy8gVHJhbnNsYXRlIG5vdyBhZnRlciBwb3NpdGlvbmluZ1xuICAgIHRyYW5zZm9ybWVyLnRyYW5zbGF0ZU8odC50eCwgdC50eSlcbiAgICByZXR1cm4gdHJhbnNmb3JtZXJcbiAgfVxuXG4gIC8vIFRyYW5zbGF0ZSBtYXRyaXhcbiAgdHJhbnNsYXRlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5jbG9uZSgpLnRyYW5zbGF0ZU8oeCwgeSlcbiAgfVxuXG4gIHRyYW5zbGF0ZU8oeCwgeSkge1xuICAgIHRoaXMuZSArPSB4IHx8IDBcbiAgICB0aGlzLmYgKz0geSB8fCAwXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHZhbHVlT2YoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGE6IHRoaXMuYSxcbiAgICAgIGI6IHRoaXMuYixcbiAgICAgIGM6IHRoaXMuYyxcbiAgICAgIGQ6IHRoaXMuZCxcbiAgICAgIGU6IHRoaXMuZSxcbiAgICAgIGY6IHRoaXMuZlxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3RtKCkge1xuICByZXR1cm4gbmV3IE1hdHJpeCh0aGlzLm5vZGUuZ2V0Q1RNKCkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzY3JlZW5DVE0oKSB7XG4gIHRyeSB7XG4gICAgLyogaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM0NDUzN1xuICAgICAgIFRoaXMgaXMgbmVlZGVkIGJlY2F1c2UgRkYgZG9lcyBub3QgcmV0dXJuIHRoZSB0cmFuc2Zvcm1hdGlvbiBtYXRyaXhcbiAgICAgICBmb3IgdGhlIGlubmVyIGNvb3JkaW5hdGUgc3lzdGVtIHdoZW4gZ2V0U2NyZWVuQ1RNKCkgaXMgY2FsbGVkIG9uIG5lc3RlZCBzdmdzLlxuICAgICAgIEhvd2V2ZXIgYWxsIG90aGVyIEJyb3dzZXJzIGRvIHRoYXQgKi9cbiAgICBpZiAodHlwZW9mIHRoaXMuaXNSb290ID09PSAnZnVuY3Rpb24nICYmICF0aGlzLmlzUm9vdCgpKSB7XG4gICAgICBjb25zdCByZWN0ID0gdGhpcy5yZWN0KDEsIDEpXG4gICAgICBjb25zdCBtID0gcmVjdC5ub2RlLmdldFNjcmVlbkNUTSgpXG4gICAgICByZWN0LnJlbW92ZSgpXG4gICAgICByZXR1cm4gbmV3IE1hdHJpeChtKVxuICAgIH1cbiAgICByZXR1cm4gbmV3IE1hdHJpeCh0aGlzLm5vZGUuZ2V0U2NyZWVuQ1RNKCkpXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICBgQ2Fubm90IGdldCBDVE0gZnJvbSBTVkcgbm9kZSAke3RoaXMubm9kZS5ub2RlTmFtZX0uIElzIHRoZSBlbGVtZW50IHJlbmRlcmVkP2BcbiAgICApXG4gICAgcmV0dXJuIG5ldyBNYXRyaXgoKVxuICB9XG59XG5cbnJlZ2lzdGVyKE1hdHJpeCwgJ01hdHJpeCcpXG4iLCAiaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uLy4uL3V0aWxzL3dpbmRvdy5qcydcbmltcG9ydCB7IG1ha2VJbnN0YW5jZSB9IGZyb20gJy4uLy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHBhcnNlcigpIHtcbiAgLy8gUmV1c2UgY2FjaGVkIGVsZW1lbnQgaWYgcG9zc2libGVcbiAgaWYgKCFwYXJzZXIubm9kZXMpIHtcbiAgICBjb25zdCBzdmcgPSBtYWtlSW5zdGFuY2UoKS5zaXplKDIsIDApXG4gICAgc3ZnLm5vZGUuc3R5bGUuY3NzVGV4dCA9IFtcbiAgICAgICdvcGFjaXR5OiAwJyxcbiAgICAgICdwb3NpdGlvbjogYWJzb2x1dGUnLFxuICAgICAgJ2xlZnQ6IC0xMDAlJyxcbiAgICAgICd0b3A6IC0xMDAlJyxcbiAgICAgICdvdmVyZmxvdzogaGlkZGVuJ1xuICAgIF0uam9pbignOycpXG5cbiAgICBzdmcuYXR0cignZm9jdXNhYmxlJywgJ2ZhbHNlJylcbiAgICBzdmcuYXR0cignYXJpYS1oaWRkZW4nLCAndHJ1ZScpXG5cbiAgICBjb25zdCBwYXRoID0gc3ZnLnBhdGgoKS5ub2RlXG5cbiAgICBwYXJzZXIubm9kZXMgPSB7IHN2ZywgcGF0aCB9XG4gIH1cblxuICBpZiAoIXBhcnNlci5ub2Rlcy5zdmcubm9kZS5wYXJlbnROb2RlKSB7XG4gICAgY29uc3QgYiA9IGdsb2JhbHMuZG9jdW1lbnQuYm9keSB8fCBnbG9iYWxzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFxuICAgIHBhcnNlci5ub2Rlcy5zdmcuYWRkVG8oYilcbiAgfVxuXG4gIHJldHVybiBwYXJzZXIubm9kZXNcbn1cbiIsICJpbXBvcnQgeyBkZWxpbWl0ZXIgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXIgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBNYXRyaXggZnJvbSAnLi9NYXRyaXguanMnXG5pbXBvcnQgUG9pbnQgZnJvbSAnLi9Qb2ludC5qcydcbmltcG9ydCBwYXJzZXIgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3BhcnNlci5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIGlzTnVsbGVkQm94KGJveCkge1xuICByZXR1cm4gIWJveC53aWR0aCAmJiAhYm94LmhlaWdodCAmJiAhYm94LnggJiYgIWJveC55XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkb21Db250YWlucyhub2RlKSB7XG4gIHJldHVybiAoXG4gICAgbm9kZSA9PT0gZ2xvYmFscy5kb2N1bWVudCB8fFxuICAgIChcbiAgICAgIGdsb2JhbHMuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNvbnRhaW5zIHx8XG4gICAgICBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgICAvLyBUaGlzIGlzIElFIC0gaXQgZG9lcyBub3Qgc3VwcG9ydCBjb250YWlucygpIGZvciB0b3AtbGV2ZWwgU1ZHc1xuICAgICAgICB3aGlsZSAobm9kZS5wYXJlbnROb2RlKSB7XG4gICAgICAgICAgbm9kZSA9IG5vZGUucGFyZW50Tm9kZVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlID09PSBnbG9iYWxzLmRvY3VtZW50XG4gICAgICB9XG4gICAgKS5jYWxsKGdsb2JhbHMuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCBub2RlKVxuICApXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJveCB7XG4gIGNvbnN0cnVjdG9yKC4uLmFyZ3MpIHtcbiAgICB0aGlzLmluaXQoLi4uYXJncylcbiAgfVxuXG4gIGFkZE9mZnNldCgpIHtcbiAgICAvLyBvZmZzZXQgYnkgd2luZG93IHNjcm9sbCBwb3NpdGlvbiwgYmVjYXVzZSBnZXRCb3VuZGluZ0NsaWVudFJlY3QgY2hhbmdlcyB3aGVuIHdpbmRvdyBpcyBzY3JvbGxlZFxuICAgIHRoaXMueCArPSBnbG9iYWxzLndpbmRvdy5wYWdlWE9mZnNldFxuICAgIHRoaXMueSArPSBnbG9iYWxzLndpbmRvdy5wYWdlWU9mZnNldFxuICAgIHJldHVybiBuZXcgQm94KHRoaXMpXG4gIH1cblxuICBpbml0KHNvdXJjZSkge1xuICAgIGNvbnN0IGJhc2UgPSBbMCwgMCwgMCwgMF1cbiAgICBzb3VyY2UgPVxuICAgICAgdHlwZW9mIHNvdXJjZSA9PT0gJ3N0cmluZydcbiAgICAgICAgPyBzb3VyY2Uuc3BsaXQoZGVsaW1pdGVyKS5tYXAocGFyc2VGbG9hdClcbiAgICAgICAgOiBBcnJheS5pc0FycmF5KHNvdXJjZSlcbiAgICAgICAgICA/IHNvdXJjZVxuICAgICAgICAgIDogdHlwZW9mIHNvdXJjZSA9PT0gJ29iamVjdCdcbiAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgIHNvdXJjZS5sZWZ0ICE9IG51bGwgPyBzb3VyY2UubGVmdCA6IHNvdXJjZS54LFxuICAgICAgICAgICAgICAgIHNvdXJjZS50b3AgIT0gbnVsbCA/IHNvdXJjZS50b3AgOiBzb3VyY2UueSxcbiAgICAgICAgICAgICAgICBzb3VyY2Uud2lkdGgsXG4gICAgICAgICAgICAgICAgc291cmNlLmhlaWdodFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICA6IGFyZ3VtZW50cy5sZW5ndGggPT09IDRcbiAgICAgICAgICAgICAgPyBbXS5zbGljZS5jYWxsKGFyZ3VtZW50cylcbiAgICAgICAgICAgICAgOiBiYXNlXG5cbiAgICB0aGlzLnggPSBzb3VyY2VbMF0gfHwgMFxuICAgIHRoaXMueSA9IHNvdXJjZVsxXSB8fCAwXG4gICAgdGhpcy53aWR0aCA9IHRoaXMudyA9IHNvdXJjZVsyXSB8fCAwXG4gICAgdGhpcy5oZWlnaHQgPSB0aGlzLmggPSBzb3VyY2VbM10gfHwgMFxuXG4gICAgLy8gQWRkIG1vcmUgYm91bmRpbmcgYm94IHByb3BlcnRpZXNcbiAgICB0aGlzLngyID0gdGhpcy54ICsgdGhpcy53XG4gICAgdGhpcy55MiA9IHRoaXMueSArIHRoaXMuaFxuICAgIHRoaXMuY3ggPSB0aGlzLnggKyB0aGlzLncgLyAyXG4gICAgdGhpcy5jeSA9IHRoaXMueSArIHRoaXMuaCAvIDJcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBpc051bGxlZCgpIHtcbiAgICByZXR1cm4gaXNOdWxsZWRCb3godGhpcylcbiAgfVxuXG4gIC8vIE1lcmdlIHJlY3QgYm94IHdpdGggYW5vdGhlciwgcmV0dXJuIGEgbmV3IGluc3RhbmNlXG4gIG1lcmdlKGJveCkge1xuICAgIGNvbnN0IHggPSBNYXRoLm1pbih0aGlzLngsIGJveC54KVxuICAgIGNvbnN0IHkgPSBNYXRoLm1pbih0aGlzLnksIGJveC55KVxuICAgIGNvbnN0IHdpZHRoID0gTWF0aC5tYXgodGhpcy54ICsgdGhpcy53aWR0aCwgYm94LnggKyBib3gud2lkdGgpIC0geFxuICAgIGNvbnN0IGhlaWdodCA9IE1hdGgubWF4KHRoaXMueSArIHRoaXMuaGVpZ2h0LCBib3gueSArIGJveC5oZWlnaHQpIC0geVxuXG4gICAgcmV0dXJuIG5ldyBCb3goeCwgeSwgd2lkdGgsIGhlaWdodClcbiAgfVxuXG4gIHRvQXJyYXkoKSB7XG4gICAgcmV0dXJuIFt0aGlzLngsIHRoaXMueSwgdGhpcy53aWR0aCwgdGhpcy5oZWlnaHRdXG4gIH1cblxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy54ICsgJyAnICsgdGhpcy55ICsgJyAnICsgdGhpcy53aWR0aCArICcgJyArIHRoaXMuaGVpZ2h0XG4gIH1cblxuICB0cmFuc2Zvcm0obSkge1xuICAgIGlmICghKG0gaW5zdGFuY2VvZiBNYXRyaXgpKSB7XG4gICAgICBtID0gbmV3IE1hdHJpeChtKVxuICAgIH1cblxuICAgIGxldCB4TWluID0gSW5maW5pdHlcbiAgICBsZXQgeE1heCA9IC1JbmZpbml0eVxuICAgIGxldCB5TWluID0gSW5maW5pdHlcbiAgICBsZXQgeU1heCA9IC1JbmZpbml0eVxuXG4gICAgY29uc3QgcHRzID0gW1xuICAgICAgbmV3IFBvaW50KHRoaXMueCwgdGhpcy55KSxcbiAgICAgIG5ldyBQb2ludCh0aGlzLngyLCB0aGlzLnkpLFxuICAgICAgbmV3IFBvaW50KHRoaXMueCwgdGhpcy55MiksXG4gICAgICBuZXcgUG9pbnQodGhpcy54MiwgdGhpcy55MilcbiAgICBdXG5cbiAgICBwdHMuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgcCA9IHAudHJhbnNmb3JtKG0pXG4gICAgICB4TWluID0gTWF0aC5taW4oeE1pbiwgcC54KVxuICAgICAgeE1heCA9IE1hdGgubWF4KHhNYXgsIHAueClcbiAgICAgIHlNaW4gPSBNYXRoLm1pbih5TWluLCBwLnkpXG4gICAgICB5TWF4ID0gTWF0aC5tYXgoeU1heCwgcC55KVxuICAgIH0pXG5cbiAgICByZXR1cm4gbmV3IEJveCh4TWluLCB5TWluLCB4TWF4IC0geE1pbiwgeU1heCAtIHlNaW4pXG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0Qm94KGVsLCBnZXRCQm94Rm4sIHJldHJ5KSB7XG4gIGxldCBib3hcblxuICB0cnkge1xuICAgIC8vIFRyeSB0byBnZXQgdGhlIGJveCB3aXRoIHRoZSBwcm92aWRlZCBmdW5jdGlvblxuICAgIGJveCA9IGdldEJCb3hGbihlbC5ub2RlKVxuXG4gICAgLy8gSWYgdGhlIGJveCBpcyB3b3J0aGxlc3MgYW5kIG5vdCBldmVuIGluIHRoZSBkb20sIHJldHJ5XG4gICAgLy8gYnkgdGhyb3dpbmcgYW4gZXJyb3IgaGVyZS4uLlxuICAgIGlmIChpc051bGxlZEJveChib3gpICYmICFkb21Db250YWlucyhlbC5ub2RlKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdFbGVtZW50IG5vdCBpbiB0aGUgZG9tJylcbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyAuLi4gYW5kIGNhbGxpbmcgdGhlIHJldHJ5IGhhbmRsZXIgaGVyZVxuICAgIGJveCA9IHJldHJ5KGVsKVxuICB9XG5cbiAgcmV0dXJuIGJveFxufVxuXG5leHBvcnQgZnVuY3Rpb24gYmJveCgpIHtcbiAgLy8gRnVuY3Rpb24gdG8gZ2V0IGJib3ggaXMgZ2V0QkJveCgpXG4gIGNvbnN0IGdldEJCb3ggPSAobm9kZSkgPT4gbm9kZS5nZXRCQm94KClcblxuICAvLyBUYWtlIGFsbCBtZWFzdXJlcyBzbyB0aGF0IGEgc3R1cGlkIGJyb3dzZXIgcmVuZGVycyB0aGUgZWxlbWVudFxuICAvLyBzbyB3ZSBjYW4gZ2V0IHRoZSBiYm94IGZyb20gaXQgd2hlbiB3ZSB0cnkgYWdhaW5cbiAgY29uc3QgcmV0cnkgPSAoZWwpID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgY2xvbmUgPSBlbC5jbG9uZSgpLmFkZFRvKHBhcnNlcigpLnN2Zykuc2hvdygpXG4gICAgICBjb25zdCBib3ggPSBjbG9uZS5ub2RlLmdldEJCb3goKVxuICAgICAgY2xvbmUucmVtb3ZlKClcbiAgICAgIHJldHVybiBib3hcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAvLyBXZSBnaXZlIHVwLi4uXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBHZXR0aW5nIGJib3ggb2YgZWxlbWVudCBcIiR7XG4gICAgICAgICAgZWwubm9kZS5ub2RlTmFtZVxuICAgICAgICB9XCIgaXMgbm90IHBvc3NpYmxlOiAke2UudG9TdHJpbmcoKX1gXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgY29uc3QgYm94ID0gZ2V0Qm94KHRoaXMsIGdldEJCb3gsIHJldHJ5KVxuICBjb25zdCBiYm94ID0gbmV3IEJveChib3gpXG5cbiAgcmV0dXJuIGJib3hcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJib3goZWwpIHtcbiAgY29uc3QgZ2V0UkJveCA9IChub2RlKSA9PiBub2RlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gIGNvbnN0IHJldHJ5ID0gKGVsKSA9PiB7XG4gICAgLy8gVGhlcmUgaXMgbm8gcG9pbnQgaW4gdHJ5aW5nIHRyaWNrcyBoZXJlIGJlY2F1c2UgaWYgd2UgaW5zZXJ0IHRoZSBlbGVtZW50IGludG8gdGhlIGRvbSBvdXJzZWx2ZXNcbiAgICAvLyBpdCBvYnZpb3VzbHkgd2lsbCBiZSBhdCB0aGUgd3JvbmcgcG9zaXRpb25cbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgR2V0dGluZyByYm94IG9mIGVsZW1lbnQgXCIke2VsLm5vZGUubm9kZU5hbWV9XCIgaXMgbm90IHBvc3NpYmxlYFxuICAgIClcbiAgfVxuXG4gIGNvbnN0IGJveCA9IGdldEJveCh0aGlzLCBnZXRSQm94LCByZXRyeSlcbiAgY29uc3QgcmJveCA9IG5ldyBCb3goYm94KVxuXG4gIC8vIElmIGFuIGVsZW1lbnQgd2FzIHBhc3NlZCwgd2Ugd2FudCB0aGUgYmJveCBpbiB0aGUgY29vcmRpbmF0ZSBzeXN0ZW0gb2YgdGhhdCBlbGVtZW50XG4gIGlmIChlbCkge1xuICAgIHJldHVybiByYm94LnRyYW5zZm9ybShlbC5zY3JlZW5DVE0oKS5pbnZlcnNlTygpKVxuICB9XG5cbiAgLy8gRWxzZSB3ZSB3YW50IGl0IGluIGFic29sdXRlIHNjcmVlbiBjb29yZGluYXRlc1xuICAvLyBUaGVyZWZvcmUgd2UgbmVlZCB0byBhZGQgdGhlIHNjcm9sbE9mZnNldFxuICByZXR1cm4gcmJveC5hZGRPZmZzZXQoKVxufVxuXG4vLyBDaGVja3Mgd2hldGhlciB0aGUgZ2l2ZW4gcG9pbnQgaXMgaW5zaWRlIHRoZSBib3VuZGluZyBib3hcbmV4cG9ydCBmdW5jdGlvbiBpbnNpZGUoeCwgeSkge1xuICBjb25zdCBib3ggPSB0aGlzLmJib3goKVxuXG4gIHJldHVybiAoXG4gICAgeCA+IGJveC54ICYmIHkgPiBib3gueSAmJiB4IDwgYm94LnggKyBib3gud2lkdGggJiYgeSA8IGJveC55ICsgYm94LmhlaWdodFxuICApXG59XG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIHZpZXdib3g6IHtcbiAgICB2aWV3Ym94KHgsIHksIHdpZHRoLCBoZWlnaHQpIHtcbiAgICAgIC8vIGFjdCBhcyBnZXR0ZXJcbiAgICAgIGlmICh4ID09IG51bGwpIHJldHVybiBuZXcgQm94KHRoaXMuYXR0cigndmlld0JveCcpKVxuXG4gICAgICAvLyBhY3QgYXMgc2V0dGVyXG4gICAgICByZXR1cm4gdGhpcy5hdHRyKCd2aWV3Qm94JywgbmV3IEJveCh4LCB5LCB3aWR0aCwgaGVpZ2h0KSlcbiAgICB9LFxuXG4gICAgem9vbShsZXZlbCwgcG9pbnQpIHtcbiAgICAgIC8vIEl0cyBiZXN0IHRvIHJlbHkgb24gdGhlIGF0dHJpYnV0ZXMgaGVyZSBhbmQgaGVyZSBpcyB3aHk6XG4gICAgICAvLyBjbGllbnRYWVo6IERvZXNuJ3Qgd29yayBvbiBub24tcm9vdCBzdmdzIGJlY2F1c2UgdGhleSBkb250IGhhdmUgYSBDU1NCb3ggKHNpbGx5ISlcbiAgICAgIC8vIGdldEJvdW5kaW5nQ2xpZW50UmVjdDogRG9lc24ndCB3b3JrIGJlY2F1c2UgQ2hyb21lIGp1c3QgaWdub3JlcyB3aWR0aCBhbmQgaGVpZ2h0IG9mIG5lc3RlZCBzdmdzIGNvbXBsZXRlbHlcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgICAgdGhhdCBtZWFucywgdGhlaXIgY2xpZW50UmVjdCBpcyBhbHdheXMgYXMgYmlnIGFzIHRoZSBjb250ZW50LlxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICBGdXJ0aGVybW9yZSB0aGlzIHNpemUgaXMgaW5jb3JyZWN0IGlmIHRoZSBlbGVtZW50IGlzIGZ1cnRoZXIgdHJhbnNmb3JtZWQgYnkgaXRzIHBhcmVudHNcbiAgICAgIC8vIGNvbXB1dGVkU3R5bGU6IE9ubHkgcmV0dXJucyBtZWFuaW5nZnVsIHZhbHVlcyBpZiBjc3Mgd2FzIHVzZWQgd2l0aCBweC4gV2UgZG9udCBnbyB0aGlzIHJvdXRlIGhlcmUhXG4gICAgICAvLyBnZXRCQm94OiByZXR1cm5zIHRoZSBib3VuZGluZyBib3ggb2YgaXRzIGNvbnRlbnQgLSB0aGF0IGRvZXNuJ3QgaGVscCFcbiAgICAgIGxldCB7IHdpZHRoLCBoZWlnaHQgfSA9IHRoaXMuYXR0cihbJ3dpZHRoJywgJ2hlaWdodCddKVxuXG4gICAgICAvLyBXaWR0aCBhbmQgaGVpZ2h0IGlzIGEgc3RyaW5nIHdoZW4gYSBudW1iZXIgd2l0aCBhIHVuaXQgaXMgcHJlc2VudCB3aGljaCB3ZSBjYW4ndCB1c2VcbiAgICAgIC8vIFNvIHdlIHRyeSBjbGllbnRYWVpcbiAgICAgIGlmIChcbiAgICAgICAgKCF3aWR0aCAmJiAhaGVpZ2h0KSB8fFxuICAgICAgICB0eXBlb2Ygd2lkdGggPT09ICdzdHJpbmcnIHx8XG4gICAgICAgIHR5cGVvZiBoZWlnaHQgPT09ICdzdHJpbmcnXG4gICAgICApIHtcbiAgICAgICAgd2lkdGggPSB0aGlzLm5vZGUuY2xpZW50V2lkdGhcbiAgICAgICAgaGVpZ2h0ID0gdGhpcy5ub2RlLmNsaWVudEhlaWdodFxuICAgICAgfVxuXG4gICAgICAvLyBHaXZpbmcgdXAuLi5cbiAgICAgIGlmICghd2lkdGggfHwgIWhlaWdodCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgJ0ltcG9zc2libGUgdG8gZ2V0IGFic29sdXRlIHdpZHRoIGFuZCBoZWlnaHQuIFBsZWFzZSBwcm92aWRlIGFuIGFic29sdXRlIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSB6b29taW5nIGVsZW1lbnQnXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgY29uc3QgdiA9IHRoaXMudmlld2JveCgpXG5cbiAgICAgIGNvbnN0IHpvb21YID0gd2lkdGggLyB2LndpZHRoXG4gICAgICBjb25zdCB6b29tWSA9IGhlaWdodCAvIHYuaGVpZ2h0XG4gICAgICBjb25zdCB6b29tID0gTWF0aC5taW4oem9vbVgsIHpvb21ZKVxuXG4gICAgICBpZiAobGV2ZWwgPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gem9vbVxuICAgICAgfVxuXG4gICAgICBsZXQgem9vbUFtb3VudCA9IHpvb20gLyBsZXZlbFxuXG4gICAgICAvLyBTZXQgdGhlIHpvb21BbW91bnQgdG8gdGhlIGhpZ2hlc3QgdmFsdWUgd2hpY2ggaXMgc2FmZSB0byBwcm9jZXNzIGFuZCByZWNvdmVyIGZyb21cbiAgICAgIC8vIFRoZSAqIDEwMCBpcyBhIGJpdCBvZiB3aWdnbGUgcm9vbSBmb3IgdGhlIG1hdHJpeCB0cmFuc2Zvcm1hdGlvblxuICAgICAgaWYgKHpvb21BbW91bnQgPT09IEluZmluaXR5KSB6b29tQW1vdW50ID0gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIgLyAxMDBcblxuICAgICAgcG9pbnQgPVxuICAgICAgICBwb2ludCB8fCBuZXcgUG9pbnQod2lkdGggLyAyIC8gem9vbVggKyB2LngsIGhlaWdodCAvIDIgLyB6b29tWSArIHYueSlcblxuICAgICAgY29uc3QgYm94ID0gbmV3IEJveCh2KS50cmFuc2Zvcm0oXG4gICAgICAgIG5ldyBNYXRyaXgoeyBzY2FsZTogem9vbUFtb3VudCwgb3JpZ2luOiBwb2ludCB9KVxuICAgICAgKVxuXG4gICAgICByZXR1cm4gdGhpcy52aWV3Ym94KGJveClcbiAgICB9XG4gIH1cbn0pXG5cbnJlZ2lzdGVyKEJveCwgJ0JveCcpXG4iLCAiaW1wb3J0IHsgZXh0ZW5kIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbi8vIGltcG9ydCB7IHN1YkNsYXNzQXJyYXkgfSBmcm9tICcuL0FycmF5UG9seWZpbGwuanMnXG5cbmNsYXNzIExpc3QgZXh0ZW5kcyBBcnJheSB7XG4gIGNvbnN0cnVjdG9yKGFyciA9IFtdLCAuLi5hcmdzKSB7XG4gICAgc3VwZXIoYXJyLCAuLi5hcmdzKVxuICAgIGlmICh0eXBlb2YgYXJyID09PSAnbnVtYmVyJykgcmV0dXJuIHRoaXNcbiAgICB0aGlzLmxlbmd0aCA9IDBcbiAgICB0aGlzLnB1c2goLi4uYXJyKVxuICB9XG59XG5cbi8qID0gc3ViQ2xhc3NBcnJheSgnTGlzdCcsIEFycmF5LCBmdW5jdGlvbiAoYXJyID0gW10pIHtcbiAgLy8gVGhpcyBjYXRjaGVzIHRoZSBjYXNlLCB0aGF0IG5hdGl2ZSBtYXAgdHJpZXMgdG8gY3JlYXRlIGFuIGFycmF5IHdpdGggbmV3IEFycmF5KDEpXG4gIGlmICh0eXBlb2YgYXJyID09PSAnbnVtYmVyJykgcmV0dXJuIHRoaXNcbiAgdGhpcy5sZW5ndGggPSAwXG4gIHRoaXMucHVzaCguLi5hcnIpXG59KSAqL1xuXG5leHBvcnQgZGVmYXVsdCBMaXN0XG5cbmV4dGVuZChbTGlzdF0sIHtcbiAgZWFjaChmbk9yTWV0aG9kTmFtZSwgLi4uYXJncykge1xuICAgIGlmICh0eXBlb2YgZm5Pck1ldGhvZE5hbWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJldHVybiB0aGlzLm1hcCgoZWwsIGksIGFycikgPT4ge1xuICAgICAgICByZXR1cm4gZm5Pck1ldGhvZE5hbWUuY2FsbChlbCwgZWwsIGksIGFycilcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1hcCgoZWwpID0+IHtcbiAgICAgICAgcmV0dXJuIGVsW2ZuT3JNZXRob2ROYW1lXSguLi5hcmdzKVxuICAgICAgfSlcbiAgICB9XG4gIH0sXG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSwgdGhpcylcbiAgfVxufSlcblxuY29uc3QgcmVzZXJ2ZWQgPSBbJ3RvQXJyYXknLCAnY29uc3RydWN0b3InLCAnZWFjaCddXG5cbkxpc3QuZXh0ZW5kID0gZnVuY3Rpb24gKG1ldGhvZHMpIHtcbiAgbWV0aG9kcyA9IG1ldGhvZHMucmVkdWNlKChvYmosIG5hbWUpID0+IHtcbiAgICAvLyBEb24ndCBvdmVyd3JpdGUgb3duIG1ldGhvZHNcbiAgICBpZiAocmVzZXJ2ZWQuaW5jbHVkZXMobmFtZSkpIHJldHVybiBvYmpcblxuICAgIC8vIERvbid0IGFkZCBwcml2YXRlIG1ldGhvZHNcbiAgICBpZiAobmFtZVswXSA9PT0gJ18nKSByZXR1cm4gb2JqXG5cbiAgICAvLyBBbGxvdyBhY2Nlc3MgdG8gb3JpZ2luYWwgQXJyYXkgbWV0aG9kcyB0aHJvdWdoIGEgcHJlZml4XG4gICAgaWYgKG5hbWUgaW4gQXJyYXkucHJvdG90eXBlKSB7XG4gICAgICBvYmpbJyQnICsgbmFtZV0gPSBBcnJheS5wcm90b3R5cGVbbmFtZV1cbiAgICB9XG5cbiAgICAvLyBSZWxheSBldmVyeSBjYWxsIHRvIGVhY2goKVxuICAgIG9ialtuYW1lXSA9IGZ1bmN0aW9uICguLi5hdHRycykge1xuICAgICAgcmV0dXJuIHRoaXMuZWFjaChuYW1lLCAuLi5hdHRycylcbiAgICB9XG4gICAgcmV0dXJuIG9ialxuICB9LCB7fSlcblxuICBleHRlbmQoW0xpc3RdLCBtZXRob2RzKVxufVxuIiwgImltcG9ydCB7IGFkb3B0IH0gZnJvbSAnLi4vLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi8uLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgeyBtYXAgfSBmcm9tICcuLi8uLi91dGlscy91dGlscy5qcydcbmltcG9ydCBMaXN0IGZyb20gJy4uLy4uL3R5cGVzL0xpc3QuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGJhc2VGaW5kKHF1ZXJ5LCBwYXJlbnQpIHtcbiAgcmV0dXJuIG5ldyBMaXN0KFxuICAgIG1hcCgocGFyZW50IHx8IGdsb2JhbHMuZG9jdW1lbnQpLnF1ZXJ5U2VsZWN0b3JBbGwocXVlcnkpLCBmdW5jdGlvbiAobm9kZSkge1xuICAgICAgcmV0dXJuIGFkb3B0KG5vZGUpXG4gICAgfSlcbiAgKVxufVxuXG4vLyBTY29wZWQgZmluZCBtZXRob2RcbmV4cG9ydCBmdW5jdGlvbiBmaW5kKHF1ZXJ5KSB7XG4gIHJldHVybiBiYXNlRmluZChxdWVyeSwgdGhpcy5ub2RlKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluZE9uZShxdWVyeSkge1xuICByZXR1cm4gYWRvcHQodGhpcy5ub2RlLnF1ZXJ5U2VsZWN0b3IocXVlcnkpKVxufVxuIiwgImltcG9ydCB7IGRlbGltaXRlciB9IGZyb20gJy4vcmVnZXguanMnXG5pbXBvcnQgeyBtYWtlSW5zdGFuY2UgfSBmcm9tICcuLi8uLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uLy4uL3V0aWxzL3dpbmRvdy5qcydcblxubGV0IGxpc3RlbmVySWQgPSAwXG5leHBvcnQgY29uc3Qgd2luZG93RXZlbnRzID0ge31cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEV2ZW50cyhpbnN0YW5jZSkge1xuICBsZXQgbiA9IGluc3RhbmNlLmdldEV2ZW50SG9sZGVyKClcblxuICAvLyBXZSBkb250IHdhbnQgdG8gc2F2ZSBldmVudHMgaW4gZ2xvYmFsIHNwYWNlXG4gIGlmIChuID09PSBnbG9iYWxzLndpbmRvdykgbiA9IHdpbmRvd0V2ZW50c1xuICBpZiAoIW4uZXZlbnRzKSBuLmV2ZW50cyA9IHt9XG4gIHJldHVybiBuLmV2ZW50c1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RXZlbnRUYXJnZXQoaW5zdGFuY2UpIHtcbiAgcmV0dXJuIGluc3RhbmNlLmdldEV2ZW50VGFyZ2V0KClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyRXZlbnRzKGluc3RhbmNlKSB7XG4gIGxldCBuID0gaW5zdGFuY2UuZ2V0RXZlbnRIb2xkZXIoKVxuICBpZiAobiA9PT0gZ2xvYmFscy53aW5kb3cpIG4gPSB3aW5kb3dFdmVudHNcbiAgaWYgKG4uZXZlbnRzKSBuLmV2ZW50cyA9IHt9XG59XG5cbi8vIEFkZCBldmVudCBiaW5kZXIgaW4gdGhlIFNWRyBuYW1lc3BhY2VcbmV4cG9ydCBmdW5jdGlvbiBvbihub2RlLCBldmVudHMsIGxpc3RlbmVyLCBiaW5kaW5nLCBvcHRpb25zKSB7XG4gIGNvbnN0IGwgPSBsaXN0ZW5lci5iaW5kKGJpbmRpbmcgfHwgbm9kZSlcbiAgY29uc3QgaW5zdGFuY2UgPSBtYWtlSW5zdGFuY2Uobm9kZSlcbiAgY29uc3QgYmFnID0gZ2V0RXZlbnRzKGluc3RhbmNlKVxuICBjb25zdCBuID0gZ2V0RXZlbnRUYXJnZXQoaW5zdGFuY2UpXG5cbiAgLy8gZXZlbnRzIGNhbiBiZSBhbiBhcnJheSBvZiBldmVudHMgb3IgYSBzdHJpbmcgb2YgZXZlbnRzXG4gIGV2ZW50cyA9IEFycmF5LmlzQXJyYXkoZXZlbnRzKSA/IGV2ZW50cyA6IGV2ZW50cy5zcGxpdChkZWxpbWl0ZXIpXG5cbiAgLy8gYWRkIGlkIHRvIGxpc3RlbmVyXG4gIGlmICghbGlzdGVuZXIuX3N2Z2pzTGlzdGVuZXJJZCkge1xuICAgIGxpc3RlbmVyLl9zdmdqc0xpc3RlbmVySWQgPSArK2xpc3RlbmVySWRcbiAgfVxuXG4gIGV2ZW50cy5mb3JFYWNoKGZ1bmN0aW9uIChldmVudCkge1xuICAgIGNvbnN0IGV2ID0gZXZlbnQuc3BsaXQoJy4nKVswXVxuICAgIGNvbnN0IG5zID0gZXZlbnQuc3BsaXQoJy4nKVsxXSB8fCAnKidcblxuICAgIC8vIGVuc3VyZSB2YWxpZCBvYmplY3RcbiAgICBiYWdbZXZdID0gYmFnW2V2XSB8fCB7fVxuICAgIGJhZ1tldl1bbnNdID0gYmFnW2V2XVtuc10gfHwge31cblxuICAgIC8vIHJlZmVyZW5jZSBsaXN0ZW5lclxuICAgIGJhZ1tldl1bbnNdW2xpc3RlbmVyLl9zdmdqc0xpc3RlbmVySWRdID0gbFxuXG4gICAgLy8gYWRkIGxpc3RlbmVyXG4gICAgbi5hZGRFdmVudExpc3RlbmVyKGV2LCBsLCBvcHRpb25zIHx8IGZhbHNlKVxuICB9KVxufVxuXG4vLyBBZGQgZXZlbnQgdW5iaW5kZXIgaW4gdGhlIFNWRyBuYW1lc3BhY2VcbmV4cG9ydCBmdW5jdGlvbiBvZmYobm9kZSwgZXZlbnRzLCBsaXN0ZW5lciwgb3B0aW9ucykge1xuICBjb25zdCBpbnN0YW5jZSA9IG1ha2VJbnN0YW5jZShub2RlKVxuICBjb25zdCBiYWcgPSBnZXRFdmVudHMoaW5zdGFuY2UpXG4gIGNvbnN0IG4gPSBnZXRFdmVudFRhcmdldChpbnN0YW5jZSlcblxuICAvLyBsaXN0ZW5lciBjYW4gYmUgYSBmdW5jdGlvbiBvciBhIG51bWJlclxuICBpZiAodHlwZW9mIGxpc3RlbmVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgbGlzdGVuZXIgPSBsaXN0ZW5lci5fc3ZnanNMaXN0ZW5lcklkXG4gICAgaWYgKCFsaXN0ZW5lcikgcmV0dXJuXG4gIH1cblxuICAvLyBldmVudHMgY2FuIGJlIGFuIGFycmF5IG9mIGV2ZW50cyBvciBhIHN0cmluZyBvciB1bmRlZmluZWRcbiAgZXZlbnRzID0gQXJyYXkuaXNBcnJheShldmVudHMpID8gZXZlbnRzIDogKGV2ZW50cyB8fCAnJykuc3BsaXQoZGVsaW1pdGVyKVxuXG4gIGV2ZW50cy5mb3JFYWNoKGZ1bmN0aW9uIChldmVudCkge1xuICAgIGNvbnN0IGV2ID0gZXZlbnQgJiYgZXZlbnQuc3BsaXQoJy4nKVswXVxuICAgIGNvbnN0IG5zID0gZXZlbnQgJiYgZXZlbnQuc3BsaXQoJy4nKVsxXVxuICAgIGxldCBuYW1lc3BhY2UsIGxcblxuICAgIGlmIChsaXN0ZW5lcikge1xuICAgICAgLy8gcmVtb3ZlIGxpc3RlbmVyIHJlZmVyZW5jZVxuICAgICAgaWYgKGJhZ1tldl0gJiYgYmFnW2V2XVtucyB8fCAnKiddKSB7XG4gICAgICAgIC8vIHJlbW92ZUxpc3RlbmVyXG4gICAgICAgIG4ucmVtb3ZlRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgICBldixcbiAgICAgICAgICBiYWdbZXZdW25zIHx8ICcqJ11bbGlzdGVuZXJdLFxuICAgICAgICAgIG9wdGlvbnMgfHwgZmFsc2VcbiAgICAgICAgKVxuXG4gICAgICAgIGRlbGV0ZSBiYWdbZXZdW25zIHx8ICcqJ11bbGlzdGVuZXJdXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChldiAmJiBucykge1xuICAgICAgLy8gcmVtb3ZlIGFsbCBsaXN0ZW5lcnMgZm9yIGEgbmFtZXNwYWNlZCBldmVudFxuICAgICAgaWYgKGJhZ1tldl0gJiYgYmFnW2V2XVtuc10pIHtcbiAgICAgICAgZm9yIChsIGluIGJhZ1tldl1bbnNdKSB7XG4gICAgICAgICAgb2ZmKG4sIFtldiwgbnNdLmpvaW4oJy4nKSwgbClcbiAgICAgICAgfVxuXG4gICAgICAgIGRlbGV0ZSBiYWdbZXZdW25zXVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAobnMpIHtcbiAgICAgIC8vIHJlbW92ZSBhbGwgbGlzdGVuZXJzIGZvciBhIHNwZWNpZmljIG5hbWVzcGFjZVxuICAgICAgZm9yIChldmVudCBpbiBiYWcpIHtcbiAgICAgICAgZm9yIChuYW1lc3BhY2UgaW4gYmFnW2V2ZW50XSkge1xuICAgICAgICAgIGlmIChucyA9PT0gbmFtZXNwYWNlKSB7XG4gICAgICAgICAgICBvZmYobiwgW2V2ZW50LCBuc10uam9pbignLicpKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZXYpIHtcbiAgICAgIC8vIHJlbW92ZSBhbGwgbGlzdGVuZXJzIGZvciB0aGUgZXZlbnRcbiAgICAgIGlmIChiYWdbZXZdKSB7XG4gICAgICAgIGZvciAobmFtZXNwYWNlIGluIGJhZ1tldl0pIHtcbiAgICAgICAgICBvZmYobiwgW2V2LCBuYW1lc3BhY2VdLmpvaW4oJy4nKSlcbiAgICAgICAgfVxuXG4gICAgICAgIGRlbGV0ZSBiYWdbZXZdXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHJlbW92ZSBhbGwgbGlzdGVuZXJzIG9uIGEgZ2l2ZW4gbm9kZVxuICAgICAgZm9yIChldmVudCBpbiBiYWcpIHtcbiAgICAgICAgb2ZmKG4sIGV2ZW50KVxuICAgICAgfVxuXG4gICAgICBjbGVhckV2ZW50cyhpbnN0YW5jZSlcbiAgICB9XG4gIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkaXNwYXRjaChub2RlLCBldmVudCwgZGF0YSwgb3B0aW9ucykge1xuICBjb25zdCBuID0gZ2V0RXZlbnRUYXJnZXQobm9kZSlcblxuICAvLyBEaXNwYXRjaCBldmVudFxuICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBnbG9iYWxzLndpbmRvdy5FdmVudCkge1xuICAgIG4uZGlzcGF0Y2hFdmVudChldmVudClcbiAgfSBlbHNlIHtcbiAgICBldmVudCA9IG5ldyBnbG9iYWxzLndpbmRvdy5DdXN0b21FdmVudChldmVudCwge1xuICAgICAgZGV0YWlsOiBkYXRhLFxuICAgICAgY2FuY2VsYWJsZTogdHJ1ZSxcbiAgICAgIC4uLm9wdGlvbnNcbiAgICB9KVxuICAgIG4uZGlzcGF0Y2hFdmVudChldmVudClcbiAgfVxuICByZXR1cm4gZXZlbnRcbn1cbiIsICJpbXBvcnQgeyBkaXNwYXRjaCwgb2ZmLCBvbiB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9ldmVudC5qcydcbmltcG9ydCB7IHJlZ2lzdGVyIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCBCYXNlIGZyb20gJy4vQmFzZS5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRXZlbnRUYXJnZXQgZXh0ZW5kcyBCYXNlIHtcbiAgYWRkRXZlbnRMaXN0ZW5lcigpIHt9XG5cbiAgZGlzcGF0Y2goZXZlbnQsIGRhdGEsIG9wdGlvbnMpIHtcbiAgICByZXR1cm4gZGlzcGF0Y2godGhpcywgZXZlbnQsIGRhdGEsIG9wdGlvbnMpXG4gIH1cblxuICBkaXNwYXRjaEV2ZW50KGV2ZW50KSB7XG4gICAgY29uc3QgYmFnID0gdGhpcy5nZXRFdmVudEhvbGRlcigpLmV2ZW50c1xuICAgIGlmICghYmFnKSByZXR1cm4gdHJ1ZVxuXG4gICAgY29uc3QgZXZlbnRzID0gYmFnW2V2ZW50LnR5cGVdXG5cbiAgICBmb3IgKGNvbnN0IGkgaW4gZXZlbnRzKSB7XG4gICAgICBmb3IgKGNvbnN0IGogaW4gZXZlbnRzW2ldKSB7XG4gICAgICAgIGV2ZW50c1tpXVtqXShldmVudClcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWRcbiAgfVxuXG4gIC8vIEZpcmUgZ2l2ZW4gZXZlbnRcbiAgZmlyZShldmVudCwgZGF0YSwgb3B0aW9ucykge1xuICAgIHRoaXMuZGlzcGF0Y2goZXZlbnQsIGRhdGEsIG9wdGlvbnMpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGdldEV2ZW50SG9sZGVyKCkge1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBnZXRFdmVudFRhcmdldCgpIHtcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gVW5iaW5kIGV2ZW50IGZyb20gbGlzdGVuZXJcbiAgb2ZmKGV2ZW50LCBsaXN0ZW5lciwgb3B0aW9ucykge1xuICAgIG9mZih0aGlzLCBldmVudCwgbGlzdGVuZXIsIG9wdGlvbnMpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIEJpbmQgZ2l2ZW4gZXZlbnQgdG8gbGlzdGVuZXJcbiAgb24oZXZlbnQsIGxpc3RlbmVyLCBiaW5kaW5nLCBvcHRpb25zKSB7XG4gICAgb24odGhpcywgZXZlbnQsIGxpc3RlbmVyLCBiaW5kaW5nLCBvcHRpb25zKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICByZW1vdmVFdmVudExpc3RlbmVyKCkge31cbn1cblxucmVnaXN0ZXIoRXZlbnRUYXJnZXQsICdFdmVudFRhcmdldCcpXG4iLCAiZXhwb3J0IGZ1bmN0aW9uIG5vb3AoKSB7fVxuXG4vLyBEZWZhdWx0IGFuaW1hdGlvbiB2YWx1ZXNcbmV4cG9ydCBjb25zdCB0aW1lbGluZSA9IHtcbiAgZHVyYXRpb246IDQwMCxcbiAgZWFzZTogJz4nLFxuICBkZWxheTogMFxufVxuXG4vLyBEZWZhdWx0IGF0dHJpYnV0ZSB2YWx1ZXNcbmV4cG9ydCBjb25zdCBhdHRycyA9IHtcbiAgLy8gZmlsbCBhbmQgc3Ryb2tlXG4gICdmaWxsLW9wYWNpdHknOiAxLFxuICAnc3Ryb2tlLW9wYWNpdHknOiAxLFxuICAnc3Ryb2tlLXdpZHRoJzogMCxcbiAgJ3N0cm9rZS1saW5lam9pbic6ICdtaXRlcicsXG4gICdzdHJva2UtbGluZWNhcCc6ICdidXR0JyxcbiAgZmlsbDogJyMwMDAwMDAnLFxuICBzdHJva2U6ICcjMDAwMDAwJyxcbiAgb3BhY2l0eTogMSxcblxuICAvLyBwb3NpdGlvblxuICB4OiAwLFxuICB5OiAwLFxuICBjeDogMCxcbiAgY3k6IDAsXG5cbiAgLy8gc2l6ZVxuICB3aWR0aDogMCxcbiAgaGVpZ2h0OiAwLFxuXG4gIC8vIHJhZGl1c1xuICByOiAwLFxuICByeDogMCxcbiAgcnk6IDAsXG5cbiAgLy8gZ3JhZGllbnRcbiAgb2Zmc2V0OiAwLFxuICAnc3RvcC1vcGFjaXR5JzogMSxcbiAgJ3N0b3AtY29sb3InOiAnIzAwMDAwMCcsXG5cbiAgLy8gdGV4dFxuICAndGV4dC1hbmNob3InOiAnc3RhcnQnXG59XG4iLCAiaW1wb3J0IHsgZGVsaW1pdGVyIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3JlZ2V4LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTVkdBcnJheSBleHRlbmRzIEFycmF5IHtcbiAgY29uc3RydWN0b3IoLi4uYXJncykge1xuICAgIHN1cGVyKC4uLmFyZ3MpXG4gICAgdGhpcy5pbml0KC4uLmFyZ3MpXG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IHRoaXMuY29uc3RydWN0b3IodGhpcylcbiAgfVxuXG4gIGluaXQoYXJyKSB7XG4gICAgLy8gVGhpcyBjYXRjaGVzIHRoZSBjYXNlLCB0aGF0IG5hdGl2ZSBtYXAgdHJpZXMgdG8gY3JlYXRlIGFuIGFycmF5IHdpdGggbmV3IEFycmF5KDEpXG4gICAgaWYgKHR5cGVvZiBhcnIgPT09ICdudW1iZXInKSByZXR1cm4gdGhpc1xuICAgIHRoaXMubGVuZ3RoID0gMFxuICAgIHRoaXMucHVzaCguLi50aGlzLnBhcnNlKGFycikpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFBhcnNlIHdoaXRlc3BhY2Ugc2VwYXJhdGVkIHN0cmluZ1xuICBwYXJzZShhcnJheSA9IFtdKSB7XG4gICAgLy8gSWYgYWxyZWFkeSBpcyBhbiBhcnJheSwgbm8gbmVlZCB0byBwYXJzZSBpdFxuICAgIGlmIChhcnJheSBpbnN0YW5jZW9mIEFycmF5KSByZXR1cm4gYXJyYXlcblxuICAgIHJldHVybiBhcnJheS50cmltKCkuc3BsaXQoZGVsaW1pdGVyKS5tYXAocGFyc2VGbG9hdClcbiAgfVxuXG4gIHRvQXJyYXkoKSB7XG4gICAgcmV0dXJuIEFycmF5LnByb3RvdHlwZS5jb25jYXQuYXBwbHkoW10sIHRoaXMpXG4gIH1cblxuICB0b1NldCgpIHtcbiAgICByZXR1cm4gbmV3IFNldCh0aGlzKVxuICB9XG5cbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuam9pbignICcpXG4gIH1cblxuICAvLyBGbGF0dGVucyB0aGUgYXJyYXkgaWYgbmVlZGVkXG4gIHZhbHVlT2YoKSB7XG4gICAgY29uc3QgcmV0ID0gW11cbiAgICByZXQucHVzaCguLi50aGlzKVxuICAgIHJldHVybiByZXRcbiAgfVxufVxuIiwgImltcG9ydCB7IG51bWJlckFuZFVuaXQgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5cbi8vIE1vZHVsZSBmb3IgdW5pdCBjb252ZXJzaW9uc1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU1ZHTnVtYmVyIHtcbiAgLy8gSW5pdGlhbGl6ZVxuICBjb25zdHJ1Y3RvciguLi5hcmdzKSB7XG4gICAgdGhpcy5pbml0KC4uLmFyZ3MpXG4gIH1cblxuICBjb252ZXJ0KHVuaXQpIHtcbiAgICByZXR1cm4gbmV3IFNWR051bWJlcih0aGlzLnZhbHVlLCB1bml0KVxuICB9XG5cbiAgLy8gRGl2aWRlIG51bWJlclxuICBkaXZpZGUobnVtYmVyKSB7XG4gICAgbnVtYmVyID0gbmV3IFNWR051bWJlcihudW1iZXIpXG4gICAgcmV0dXJuIG5ldyBTVkdOdW1iZXIodGhpcyAvIG51bWJlciwgdGhpcy51bml0IHx8IG51bWJlci51bml0KVxuICB9XG5cbiAgaW5pdCh2YWx1ZSwgdW5pdCkge1xuICAgIHVuaXQgPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlWzFdIDogdW5pdFxuICAgIHZhbHVlID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZVswXSA6IHZhbHVlXG5cbiAgICAvLyBpbml0aWFsaXplIGRlZmF1bHRzXG4gICAgdGhpcy52YWx1ZSA9IDBcbiAgICB0aGlzLnVuaXQgPSB1bml0IHx8ICcnXG5cbiAgICAvLyBwYXJzZSB2YWx1ZVxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICAvLyBlbnN1cmUgYSB2YWxpZCBudW1lcmljIHZhbHVlXG4gICAgICB0aGlzLnZhbHVlID0gaXNOYU4odmFsdWUpXG4gICAgICAgID8gMFxuICAgICAgICA6ICFpc0Zpbml0ZSh2YWx1ZSlcbiAgICAgICAgICA/IHZhbHVlIDwgMFxuICAgICAgICAgICAgPyAtMy40ZTM4XG4gICAgICAgICAgICA6ICszLjRlMzhcbiAgICAgICAgICA6IHZhbHVlXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICB1bml0ID0gdmFsdWUubWF0Y2gobnVtYmVyQW5kVW5pdClcblxuICAgICAgaWYgKHVuaXQpIHtcbiAgICAgICAgLy8gbWFrZSB2YWx1ZSBudW1lcmljXG4gICAgICAgIHRoaXMudmFsdWUgPSBwYXJzZUZsb2F0KHVuaXRbMV0pXG5cbiAgICAgICAgLy8gbm9ybWFsaXplXG4gICAgICAgIGlmICh1bml0WzVdID09PSAnJScpIHtcbiAgICAgICAgICB0aGlzLnZhbHVlIC89IDEwMFxuICAgICAgICB9IGVsc2UgaWYgKHVuaXRbNV0gPT09ICdzJykge1xuICAgICAgICAgIHRoaXMudmFsdWUgKj0gMTAwMFxuICAgICAgICB9XG5cbiAgICAgICAgLy8gc3RvcmUgdW5pdFxuICAgICAgICB0aGlzLnVuaXQgPSB1bml0WzVdXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIFNWR051bWJlcikge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWUudmFsdWVPZigpXG4gICAgICAgIHRoaXMudW5pdCA9IHZhbHVlLnVuaXRcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU3VidHJhY3QgbnVtYmVyXG4gIG1pbnVzKG51bWJlcikge1xuICAgIG51bWJlciA9IG5ldyBTVkdOdW1iZXIobnVtYmVyKVxuICAgIHJldHVybiBuZXcgU1ZHTnVtYmVyKHRoaXMgLSBudW1iZXIsIHRoaXMudW5pdCB8fCBudW1iZXIudW5pdClcbiAgfVxuXG4gIC8vIEFkZCBudW1iZXJcbiAgcGx1cyhudW1iZXIpIHtcbiAgICBudW1iZXIgPSBuZXcgU1ZHTnVtYmVyKG51bWJlcilcbiAgICByZXR1cm4gbmV3IFNWR051bWJlcih0aGlzICsgbnVtYmVyLCB0aGlzLnVuaXQgfHwgbnVtYmVyLnVuaXQpXG4gIH1cblxuICAvLyBNdWx0aXBseSBudW1iZXJcbiAgdGltZXMobnVtYmVyKSB7XG4gICAgbnVtYmVyID0gbmV3IFNWR051bWJlcihudW1iZXIpXG4gICAgcmV0dXJuIG5ldyBTVkdOdW1iZXIodGhpcyAqIG51bWJlciwgdGhpcy51bml0IHx8IG51bWJlci51bml0KVxuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICByZXR1cm4gW3RoaXMudmFsdWUsIHRoaXMudW5pdF1cbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICByZXR1cm4gdGhpcy50b1N0cmluZygpXG4gIH1cblxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gKFxuICAgICAgKHRoaXMudW5pdCA9PT0gJyUnXG4gICAgICAgID8gfn4odGhpcy52YWx1ZSAqIDFlOCkgLyAxZTZcbiAgICAgICAgOiB0aGlzLnVuaXQgPT09ICdzJ1xuICAgICAgICAgID8gdGhpcy52YWx1ZSAvIDFlM1xuICAgICAgICAgIDogdGhpcy52YWx1ZSkgKyB0aGlzLnVuaXRcbiAgICApXG4gIH1cblxuICB2YWx1ZU9mKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBhdHRycyBhcyBkZWZhdWx0cyB9IGZyb20gJy4vZGVmYXVsdHMuanMnXG5pbXBvcnQgeyBpc051bWJlciB9IGZyb20gJy4vcmVnZXguanMnXG5pbXBvcnQgQ29sb3IgZnJvbSAnLi4vLi4vdHlwZXMvQ29sb3IuanMnXG5pbXBvcnQgU1ZHQXJyYXkgZnJvbSAnLi4vLi4vdHlwZXMvU1ZHQXJyYXkuanMnXG5pbXBvcnQgU1ZHTnVtYmVyIGZyb20gJy4uLy4uL3R5cGVzL1NWR051bWJlci5qcydcblxuY29uc3QgY29sb3JBdHRyaWJ1dGVzID0gbmV3IFNldChbXG4gICdmaWxsJyxcbiAgJ3N0cm9rZScsXG4gICdjb2xvcicsXG4gICdiZ2NvbG9yJyxcbiAgJ3N0b3AtY29sb3InLFxuICAnZmxvb2QtY29sb3InLFxuICAnbGlnaHRpbmctY29sb3InXG5dKVxuXG5jb25zdCBob29rcyA9IFtdXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJBdHRySG9vayhmbikge1xuICBob29rcy5wdXNoKGZuKVxufVxuXG4vLyBTZXQgc3ZnIGVsZW1lbnQgYXR0cmlidXRlXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBhdHRyKGF0dHIsIHZhbCwgbnMpIHtcbiAgLy8gYWN0IGFzIGZ1bGwgZ2V0dGVyXG4gIGlmIChhdHRyID09IG51bGwpIHtcbiAgICAvLyBnZXQgYW4gb2JqZWN0IG9mIGF0dHJpYnV0ZXNcbiAgICBhdHRyID0ge31cbiAgICB2YWwgPSB0aGlzLm5vZGUuYXR0cmlidXRlc1xuXG4gICAgZm9yIChjb25zdCBub2RlIG9mIHZhbCkge1xuICAgICAgYXR0cltub2RlLm5vZGVOYW1lXSA9IGlzTnVtYmVyLnRlc3Qobm9kZS5ub2RlVmFsdWUpXG4gICAgICAgID8gcGFyc2VGbG9hdChub2RlLm5vZGVWYWx1ZSlcbiAgICAgICAgOiBub2RlLm5vZGVWYWx1ZVxuICAgIH1cblxuICAgIHJldHVybiBhdHRyXG4gIH0gZWxzZSBpZiAoYXR0ciBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgLy8gbG9vcCB0aHJvdWdoIGFycmF5IGFuZCBnZXQgYWxsIHZhbHVlc1xuICAgIHJldHVybiBhdHRyLnJlZHVjZSgobGFzdCwgY3VycikgPT4ge1xuICAgICAgbGFzdFtjdXJyXSA9IHRoaXMuYXR0cihjdXJyKVxuICAgICAgcmV0dXJuIGxhc3RcbiAgICB9LCB7fSlcbiAgfSBlbHNlIGlmICh0eXBlb2YgYXR0ciA9PT0gJ29iamVjdCcgJiYgYXR0ci5jb25zdHJ1Y3RvciA9PT0gT2JqZWN0KSB7XG4gICAgLy8gYXBwbHkgZXZlcnkgYXR0cmlidXRlIGluZGl2aWR1YWxseSBpZiBhbiBvYmplY3QgaXMgcGFzc2VkXG4gICAgZm9yICh2YWwgaW4gYXR0cikgdGhpcy5hdHRyKHZhbCwgYXR0clt2YWxdKVxuICB9IGVsc2UgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgIC8vIHJlbW92ZSB2YWx1ZVxuICAgIHRoaXMubm9kZS5yZW1vdmVBdHRyaWJ1dGUoYXR0cilcbiAgfSBlbHNlIGlmICh2YWwgPT0gbnVsbCkge1xuICAgIC8vIGFjdCBhcyBhIGdldHRlciBpZiB0aGUgZmlyc3QgYW5kIG9ubHkgYXJndW1lbnQgaXMgbm90IGFuIG9iamVjdFxuICAgIHZhbCA9IHRoaXMubm9kZS5nZXRBdHRyaWJ1dGUoYXR0cilcbiAgICByZXR1cm4gdmFsID09IG51bGxcbiAgICAgID8gZGVmYXVsdHNbYXR0cl1cbiAgICAgIDogaXNOdW1iZXIudGVzdCh2YWwpXG4gICAgICAgID8gcGFyc2VGbG9hdCh2YWwpXG4gICAgICAgIDogdmFsXG4gIH0gZWxzZSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIGhvb2tzIGFuZCBleGVjdXRlIHRoZW0gdG8gY29udmVydCB2YWx1ZVxuICAgIHZhbCA9IGhvb2tzLnJlZHVjZSgoX3ZhbCwgaG9vaykgPT4ge1xuICAgICAgcmV0dXJuIGhvb2soYXR0ciwgX3ZhbCwgdGhpcylcbiAgICB9LCB2YWwpXG5cbiAgICAvLyBlbnN1cmUgY29ycmVjdCBudW1lcmljIHZhbHVlcyAoYWxzbyBhY2NlcHRzIE5hTiBhbmQgSW5maW5pdHkpXG4gICAgaWYgKHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICB2YWwgPSBuZXcgU1ZHTnVtYmVyKHZhbClcbiAgICB9IGVsc2UgaWYgKGNvbG9yQXR0cmlidXRlcy5oYXMoYXR0cikgJiYgQ29sb3IuaXNDb2xvcih2YWwpKSB7XG4gICAgICAvLyBlbnN1cmUgZnVsbCBoZXggY29sb3JcbiAgICAgIHZhbCA9IG5ldyBDb2xvcih2YWwpXG4gICAgfSBlbHNlIGlmICh2YWwuY29uc3RydWN0b3IgPT09IEFycmF5KSB7XG4gICAgICAvLyBDaGVjayBmb3IgcGxhaW4gYXJyYXlzIGFuZCBwYXJzZSBhcnJheSB2YWx1ZXNcbiAgICAgIHZhbCA9IG5ldyBTVkdBcnJheSh2YWwpXG4gICAgfVxuXG4gICAgLy8gaWYgdGhlIHBhc3NlZCBhdHRyaWJ1dGUgaXMgbGVhZGluZy4uLlxuICAgIGlmIChhdHRyID09PSAnbGVhZGluZycpIHtcbiAgICAgIC8vIC4uLiBjYWxsIHRoZSBsZWFkaW5nIG1ldGhvZCBpbnN0ZWFkXG4gICAgICBpZiAodGhpcy5sZWFkaW5nKSB7XG4gICAgICAgIHRoaXMubGVhZGluZyh2YWwpXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHNldCBnaXZlbiBhdHRyaWJ1dGUgb24gbm9kZVxuICAgICAgdHlwZW9mIG5zID09PSAnc3RyaW5nJ1xuICAgICAgICA/IHRoaXMubm9kZS5zZXRBdHRyaWJ1dGVOUyhucywgYXR0ciwgdmFsLnRvU3RyaW5nKCkpXG4gICAgICAgIDogdGhpcy5ub2RlLnNldEF0dHJpYnV0ZShhdHRyLCB2YWwudG9TdHJpbmcoKSlcbiAgICB9XG5cbiAgICAvLyByZWJ1aWxkIGlmIHJlcXVpcmVkXG4gICAgaWYgKHRoaXMucmVidWlsZCAmJiAoYXR0ciA9PT0gJ2ZvbnQtc2l6ZScgfHwgYXR0ciA9PT0gJ3gnKSkge1xuICAgICAgdGhpcy5yZWJ1aWxkKClcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdGhpc1xufVxuIiwgImltcG9ydCB7XG4gIGFkb3B0LFxuICBhc3NpZ25OZXdJZCxcbiAgZWlkLFxuICBleHRlbmQsXG4gIG1ha2VJbnN0YW5jZSxcbiAgY3JlYXRlLFxuICByZWdpc3RlclxufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgZmluZCwgZmluZE9uZSB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9zZWxlY3Rvci5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgeyBtYXAgfSBmcm9tICcuLi91dGlscy91dGlscy5qcydcbmltcG9ydCB7IHN2ZywgaHRtbCB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9uYW1lc3BhY2VzLmpzJ1xuaW1wb3J0IEV2ZW50VGFyZ2V0IGZyb20gJy4uL3R5cGVzL0V2ZW50VGFyZ2V0LmpzJ1xuaW1wb3J0IExpc3QgZnJvbSAnLi4vdHlwZXMvTGlzdC5qcydcbmltcG9ydCBhdHRyIGZyb20gJy4uL21vZHVsZXMvY29yZS9hdHRyLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEb20gZXh0ZW5kcyBFdmVudFRhcmdldCB7XG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMubm9kZSA9IG5vZGVcbiAgICB0aGlzLnR5cGUgPSBub2RlLm5vZGVOYW1lXG5cbiAgICBpZiAoYXR0cnMgJiYgbm9kZSAhPT0gYXR0cnMpIHtcbiAgICAgIHRoaXMuYXR0cihhdHRycylcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgZ2l2ZW4gZWxlbWVudCBhdCBhIHBvc2l0aW9uXG4gIGFkZChlbGVtZW50LCBpKSB7XG4gICAgZWxlbWVudCA9IG1ha2VJbnN0YW5jZShlbGVtZW50KVxuXG4gICAgLy8gSWYgbm9uLXJvb3Qgc3ZnIG5vZGVzIGFyZSBhZGRlZCB3ZSBoYXZlIHRvIHJlbW92ZSB0aGVpciBuYW1lc3BhY2VzXG4gICAgaWYgKFxuICAgICAgZWxlbWVudC5yZW1vdmVOYW1lc3BhY2UgJiZcbiAgICAgIHRoaXMubm9kZSBpbnN0YW5jZW9mIGdsb2JhbHMud2luZG93LlNWR0VsZW1lbnRcbiAgICApIHtcbiAgICAgIGVsZW1lbnQucmVtb3ZlTmFtZXNwYWNlKClcbiAgICB9XG5cbiAgICBpZiAoaSA9PSBudWxsKSB7XG4gICAgICB0aGlzLm5vZGUuYXBwZW5kQ2hpbGQoZWxlbWVudC5ub2RlKVxuICAgIH0gZWxzZSBpZiAoZWxlbWVudC5ub2RlICE9PSB0aGlzLm5vZGUuY2hpbGROb2Rlc1tpXSkge1xuICAgICAgdGhpcy5ub2RlLmluc2VydEJlZm9yZShlbGVtZW50Lm5vZGUsIHRoaXMubm9kZS5jaGlsZE5vZGVzW2ldKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBBZGQgZWxlbWVudCB0byBnaXZlbiBjb250YWluZXIgYW5kIHJldHVybiBzZWxmXG4gIGFkZFRvKHBhcmVudCwgaSkge1xuICAgIHJldHVybiBtYWtlSW5zdGFuY2UocGFyZW50KS5wdXQodGhpcywgaSlcbiAgfVxuXG4gIC8vIFJldHVybnMgYWxsIGNoaWxkIGVsZW1lbnRzXG4gIGNoaWxkcmVuKCkge1xuICAgIHJldHVybiBuZXcgTGlzdChcbiAgICAgIG1hcCh0aGlzLm5vZGUuY2hpbGRyZW4sIGZ1bmN0aW9uIChub2RlKSB7XG4gICAgICAgIHJldHVybiBhZG9wdChub2RlKVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICAvLyBSZW1vdmUgYWxsIGVsZW1lbnRzIGluIHRoaXMgY29udGFpbmVyXG4gIGNsZWFyKCkge1xuICAgIC8vIHJlbW92ZSBjaGlsZHJlblxuICAgIHdoaWxlICh0aGlzLm5vZGUuaGFzQ2hpbGROb2RlcygpKSB7XG4gICAgICB0aGlzLm5vZGUucmVtb3ZlQ2hpbGQodGhpcy5ub2RlLmxhc3RDaGlsZClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gQ2xvbmUgZWxlbWVudFxuICBjbG9uZShkZWVwID0gdHJ1ZSwgYXNzaWduTmV3SWRzID0gdHJ1ZSkge1xuICAgIC8vIHdyaXRlIGRvbSBkYXRhIHRvIHRoZSBkb20gc28gdGhlIGNsb25lIGNhbiBwaWNrdXAgdGhlIGRhdGFcbiAgICB0aGlzLndyaXRlRGF0YVRvRG9tKClcblxuICAgIC8vIGNsb25lIGVsZW1lbnRcbiAgICBsZXQgbm9kZUNsb25lID0gdGhpcy5ub2RlLmNsb25lTm9kZShkZWVwKVxuICAgIGlmIChhc3NpZ25OZXdJZHMpIHtcbiAgICAgIC8vIGFzc2lnbiBuZXcgaWRcbiAgICAgIG5vZGVDbG9uZSA9IGFzc2lnbk5ld0lkKG5vZGVDbG9uZSlcbiAgICB9XG4gICAgcmV0dXJuIG5ldyB0aGlzLmNvbnN0cnVjdG9yKG5vZGVDbG9uZSlcbiAgfVxuXG4gIC8vIEl0ZXJhdGVzIG92ZXIgYWxsIGNoaWxkcmVuIGFuZCBpbnZva2VzIGEgZ2l2ZW4gYmxvY2tcbiAgZWFjaChibG9jaywgZGVlcCkge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gdGhpcy5jaGlsZHJlbigpXG4gICAgbGV0IGksIGlsXG5cbiAgICBmb3IgKGkgPSAwLCBpbCA9IGNoaWxkcmVuLmxlbmd0aDsgaSA8IGlsOyBpKyspIHtcbiAgICAgIGJsb2NrLmFwcGx5KGNoaWxkcmVuW2ldLCBbaSwgY2hpbGRyZW5dKVxuXG4gICAgICBpZiAoZGVlcCkge1xuICAgICAgICBjaGlsZHJlbltpXS5lYWNoKGJsb2NrLCBkZWVwKVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBlbGVtZW50KG5vZGVOYW1lLCBhdHRycykge1xuICAgIHJldHVybiB0aGlzLnB1dChuZXcgRG9tKGNyZWF0ZShub2RlTmFtZSksIGF0dHJzKSlcbiAgfVxuXG4gIC8vIEdldCBmaXJzdCBjaGlsZFxuICBmaXJzdCgpIHtcbiAgICByZXR1cm4gYWRvcHQodGhpcy5ub2RlLmZpcnN0Q2hpbGQpXG4gIH1cblxuICAvLyBHZXQgYSBlbGVtZW50IGF0IHRoZSBnaXZlbiBpbmRleFxuICBnZXQoaSkge1xuICAgIHJldHVybiBhZG9wdCh0aGlzLm5vZGUuY2hpbGROb2Rlc1tpXSlcbiAgfVxuXG4gIGdldEV2ZW50SG9sZGVyKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGVcbiAgfVxuXG4gIGdldEV2ZW50VGFyZ2V0KCkge1xuICAgIHJldHVybiB0aGlzLm5vZGVcbiAgfVxuXG4gIC8vIENoZWNrcyBpZiB0aGUgZ2l2ZW4gZWxlbWVudCBpcyBhIGNoaWxkXG4gIGhhcyhlbGVtZW50KSB7XG4gICAgcmV0dXJuIHRoaXMuaW5kZXgoZWxlbWVudCkgPj0gMFxuICB9XG5cbiAgaHRtbChodG1sT3JGbiwgb3V0ZXJIVE1MKSB7XG4gICAgcmV0dXJuIHRoaXMueG1sKGh0bWxPckZuLCBvdXRlckhUTUwsIGh0bWwpXG4gIH1cblxuICAvLyBHZXQgLyBzZXQgaWRcbiAgaWQoaWQpIHtcbiAgICAvLyBnZW5lcmF0ZSBuZXcgaWQgaWYgbm8gaWQgc2V0XG4gICAgaWYgKHR5cGVvZiBpZCA9PT0gJ3VuZGVmaW5lZCcgJiYgIXRoaXMubm9kZS5pZCkge1xuICAgICAgdGhpcy5ub2RlLmlkID0gZWlkKHRoaXMudHlwZSlcbiAgICB9XG5cbiAgICAvLyBkb24ndCBzZXQgZGlyZWN0bHkgd2l0aCB0aGlzLm5vZGUuaWQgdG8gbWFrZSBgbnVsbGAgd29yayBjb3JyZWN0bHlcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdpZCcsIGlkKVxuICB9XG5cbiAgLy8gR2V0cyBpbmRleCBvZiBnaXZlbiBlbGVtZW50XG4gIGluZGV4KGVsZW1lbnQpIHtcbiAgICByZXR1cm4gW10uc2xpY2UuY2FsbCh0aGlzLm5vZGUuY2hpbGROb2RlcykuaW5kZXhPZihlbGVtZW50Lm5vZGUpXG4gIH1cblxuICAvLyBHZXQgdGhlIGxhc3QgY2hpbGRcbiAgbGFzdCgpIHtcbiAgICByZXR1cm4gYWRvcHQodGhpcy5ub2RlLmxhc3RDaGlsZClcbiAgfVxuXG4gIC8vIG1hdGNoZXMgdGhlIGVsZW1lbnQgdnMgYSBjc3Mgc2VsZWN0b3JcbiAgbWF0Y2hlcyhzZWxlY3Rvcikge1xuICAgIGNvbnN0IGVsID0gdGhpcy5ub2RlXG4gICAgY29uc3QgbWF0Y2hlciA9XG4gICAgICBlbC5tYXRjaGVzIHx8XG4gICAgICBlbC5tYXRjaGVzU2VsZWN0b3IgfHxcbiAgICAgIGVsLm1zTWF0Y2hlc1NlbGVjdG9yIHx8XG4gICAgICBlbC5tb3pNYXRjaGVzU2VsZWN0b3IgfHxcbiAgICAgIGVsLndlYmtpdE1hdGNoZXNTZWxlY3RvciB8fFxuICAgICAgZWwub01hdGNoZXNTZWxlY3RvciB8fFxuICAgICAgbnVsbFxuICAgIHJldHVybiBtYXRjaGVyICYmIG1hdGNoZXIuY2FsbChlbCwgc2VsZWN0b3IpXG4gIH1cblxuICAvLyBSZXR1cm5zIHRoZSBwYXJlbnQgZWxlbWVudCBpbnN0YW5jZVxuICBwYXJlbnQodHlwZSkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzXG5cbiAgICAvLyBjaGVjayBmb3IgcGFyZW50XG4gICAgaWYgKCFwYXJlbnQubm9kZS5wYXJlbnROb2RlKSByZXR1cm4gbnVsbFxuXG4gICAgLy8gZ2V0IHBhcmVudCBlbGVtZW50XG4gICAgcGFyZW50ID0gYWRvcHQocGFyZW50Lm5vZGUucGFyZW50Tm9kZSlcblxuICAgIGlmICghdHlwZSkgcmV0dXJuIHBhcmVudFxuXG4gICAgLy8gbG9vcCB0aHJvdWdoIGFuY2VzdG9ycyBpZiB0eXBlIGlzIGdpdmVuXG4gICAgZG8ge1xuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycgPyBwYXJlbnQubWF0Y2hlcyh0eXBlKSA6IHBhcmVudCBpbnN0YW5jZW9mIHR5cGVcbiAgICAgIClcbiAgICAgICAgcmV0dXJuIHBhcmVudFxuICAgIH0gd2hpbGUgKChwYXJlbnQgPSBhZG9wdChwYXJlbnQubm9kZS5wYXJlbnROb2RlKSkpXG5cbiAgICByZXR1cm4gcGFyZW50XG4gIH1cblxuICAvLyBCYXNpY2FsbHkgZG9lcyB0aGUgc2FtZSBhcyBgYWRkKClgIGJ1dCByZXR1cm5zIHRoZSBhZGRlZCBlbGVtZW50IGluc3RlYWRcbiAgcHV0KGVsZW1lbnQsIGkpIHtcbiAgICBlbGVtZW50ID0gbWFrZUluc3RhbmNlKGVsZW1lbnQpXG4gICAgdGhpcy5hZGQoZWxlbWVudCwgaSlcbiAgICByZXR1cm4gZWxlbWVudFxuICB9XG5cbiAgLy8gQWRkIGVsZW1lbnQgdG8gZ2l2ZW4gY29udGFpbmVyIGFuZCByZXR1cm4gY29udGFpbmVyXG4gIHB1dEluKHBhcmVudCwgaSkge1xuICAgIHJldHVybiBtYWtlSW5zdGFuY2UocGFyZW50KS5hZGQodGhpcywgaSlcbiAgfVxuXG4gIC8vIFJlbW92ZSBlbGVtZW50XG4gIHJlbW92ZSgpIHtcbiAgICBpZiAodGhpcy5wYXJlbnQoKSkge1xuICAgICAgdGhpcy5wYXJlbnQoKS5yZW1vdmVFbGVtZW50KHRoaXMpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFJlbW92ZSBhIGdpdmVuIGNoaWxkXG4gIHJlbW92ZUVsZW1lbnQoZWxlbWVudCkge1xuICAgIHRoaXMubm9kZS5yZW1vdmVDaGlsZChlbGVtZW50Lm5vZGUpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gUmVwbGFjZSB0aGlzIHdpdGggZWxlbWVudFxuICByZXBsYWNlKGVsZW1lbnQpIHtcbiAgICBlbGVtZW50ID0gbWFrZUluc3RhbmNlKGVsZW1lbnQpXG5cbiAgICBpZiAodGhpcy5ub2RlLnBhcmVudE5vZGUpIHtcbiAgICAgIHRoaXMubm9kZS5wYXJlbnROb2RlLnJlcGxhY2VDaGlsZChlbGVtZW50Lm5vZGUsIHRoaXMubm9kZSlcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudFxuICB9XG5cbiAgcm91bmQocHJlY2lzaW9uID0gMiwgbWFwID0gbnVsbCkge1xuICAgIGNvbnN0IGZhY3RvciA9IDEwICoqIHByZWNpc2lvblxuICAgIGNvbnN0IGF0dHJzID0gdGhpcy5hdHRyKG1hcClcblxuICAgIGZvciAoY29uc3QgaSBpbiBhdHRycykge1xuICAgICAgaWYgKHR5cGVvZiBhdHRyc1tpXSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgYXR0cnNbaV0gPSBNYXRoLnJvdW5kKGF0dHJzW2ldICogZmFjdG9yKSAvIGZhY3RvclxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuYXR0cihhdHRycylcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gSW1wb3J0IC8gRXhwb3J0IHJhdyBzdmdcbiAgc3ZnKHN2Z09yRm4sIG91dGVyU1ZHKSB7XG4gICAgcmV0dXJuIHRoaXMueG1sKHN2Z09yRm4sIG91dGVyU1ZHLCBzdmcpXG4gIH1cblxuICAvLyBSZXR1cm4gaWQgb24gc3RyaW5nIGNvbnZlcnNpb25cbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuaWQoKVxuICB9XG5cbiAgd29yZHModGV4dCkge1xuICAgIC8vIFRoaXMgaXMgZmFzdGVyIHRoYW4gcmVtb3ZpbmcgYWxsIGNoaWxkcmVuIGFuZCBhZGRpbmcgYSBuZXcgb25lXG4gICAgdGhpcy5ub2RlLnRleHRDb250ZW50ID0gdGV4dFxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB3cmFwKG5vZGUpIHtcbiAgICBjb25zdCBwYXJlbnQgPSB0aGlzLnBhcmVudCgpXG5cbiAgICBpZiAoIXBhcmVudCkge1xuICAgICAgcmV0dXJuIHRoaXMuYWRkVG8obm9kZSlcbiAgICB9XG5cbiAgICBjb25zdCBwb3NpdGlvbiA9IHBhcmVudC5pbmRleCh0aGlzKVxuICAgIHJldHVybiBwYXJlbnQucHV0KG5vZGUsIHBvc2l0aW9uKS5wdXQodGhpcylcbiAgfVxuXG4gIC8vIHdyaXRlIHN2Z2pzIGRhdGEgdG8gdGhlIGRvbVxuICB3cml0ZURhdGFUb0RvbSgpIHtcbiAgICAvLyBkdW1wIHZhcmlhYmxlcyByZWN1cnNpdmVseVxuICAgIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICB0aGlzLndyaXRlRGF0YVRvRG9tKClcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIEltcG9ydCAvIEV4cG9ydCByYXcgc3ZnXG4gIHhtbCh4bWxPckZuLCBvdXRlclhNTCwgbnMpIHtcbiAgICBpZiAodHlwZW9mIHhtbE9yRm4gPT09ICdib29sZWFuJykge1xuICAgICAgbnMgPSBvdXRlclhNTFxuICAgICAgb3V0ZXJYTUwgPSB4bWxPckZuXG4gICAgICB4bWxPckZuID0gbnVsbFxuICAgIH1cblxuICAgIC8vIGFjdCBhcyBnZXR0ZXIgaWYgbm8gc3ZnIHN0cmluZyBpcyBnaXZlblxuICAgIGlmICh4bWxPckZuID09IG51bGwgfHwgdHlwZW9mIHhtbE9yRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIC8vIFRoZSBkZWZhdWx0IGZvciBleHBvcnRzIGlzLCB0aGF0IHRoZSBvdXRlck5vZGUgaXMgaW5jbHVkZWRcbiAgICAgIG91dGVyWE1MID0gb3V0ZXJYTUwgPT0gbnVsbCA/IHRydWUgOiBvdXRlclhNTFxuXG4gICAgICAvLyB3cml0ZSBzdmdqcyBkYXRhIHRvIHRoZSBkb21cbiAgICAgIHRoaXMud3JpdGVEYXRhVG9Eb20oKVxuICAgICAgbGV0IGN1cnJlbnQgPSB0aGlzXG5cbiAgICAgIC8vIEFuIGV4cG9ydCBtb2RpZmllciB3YXMgcGFzc2VkXG4gICAgICBpZiAoeG1sT3JGbiAhPSBudWxsKSB7XG4gICAgICAgIGN1cnJlbnQgPSBhZG9wdChjdXJyZW50Lm5vZGUuY2xvbmVOb2RlKHRydWUpKVxuXG4gICAgICAgIC8vIElmIHRoZSB1c2VyIHdhbnRzIG91dGVySFRNTCB3ZSBuZWVkIHRvIHByb2Nlc3MgdGhpcyBub2RlLCB0b29cbiAgICAgICAgaWYgKG91dGVyWE1MKSB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0geG1sT3JGbihjdXJyZW50KVxuICAgICAgICAgIGN1cnJlbnQgPSByZXN1bHQgfHwgY3VycmVudFxuXG4gICAgICAgICAgLy8gVGhlIHVzZXIgZG9lcyBub3Qgd2FudCB0aGlzIG5vZGU/IFdlbGwsIHRoZW4gaGUgZ2V0cyBub3RoaW5nXG4gICAgICAgICAgaWYgKHJlc3VsdCA9PT0gZmFsc2UpIHJldHVybiAnJ1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGVlcCBsb29wIHRocm91Z2ggYWxsIGNoaWxkcmVuIGFuZCBhcHBseSBtb2RpZmllclxuICAgICAgICBjdXJyZW50LmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHhtbE9yRm4odGhpcylcbiAgICAgICAgICBjb25zdCBfdGhpcyA9IHJlc3VsdCB8fCB0aGlzXG5cbiAgICAgICAgICAvLyBJZiBtb2RpZmllciByZXR1cm5zIGZhbHNlLCBkaXNjYXJkIG5vZGVcbiAgICAgICAgICBpZiAocmVzdWx0ID09PSBmYWxzZSkge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmUoKVxuXG4gICAgICAgICAgICAvLyBJZiBtb2RpZmllciByZXR1cm5zIG5ldyBub2RlLCB1c2UgaXRcbiAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCAmJiB0aGlzICE9PSBfdGhpcykge1xuICAgICAgICAgICAgdGhpcy5yZXBsYWNlKF90aGlzKVxuICAgICAgICAgIH1cbiAgICAgICAgfSwgdHJ1ZSlcbiAgICAgIH1cblxuICAgICAgLy8gUmV0dXJuIG91dGVyIG9yIGlubmVyIGNvbnRlbnRcbiAgICAgIHJldHVybiBvdXRlclhNTCA/IGN1cnJlbnQubm9kZS5vdXRlckhUTUwgOiBjdXJyZW50Lm5vZGUuaW5uZXJIVE1MXG4gICAgfVxuXG4gICAgLy8gQWN0IGFzIHNldHRlciBpZiB3ZSBnb3QgYSBzdHJpbmdcblxuICAgIC8vIFRoZSBkZWZhdWx0IGZvciBpbXBvcnQgaXMsIHRoYXQgdGhlIGN1cnJlbnQgbm9kZSBpcyBub3QgcmVwbGFjZWRcbiAgICBvdXRlclhNTCA9IG91dGVyWE1MID09IG51bGwgPyBmYWxzZSA6IG91dGVyWE1MXG5cbiAgICAvLyBDcmVhdGUgdGVtcG9yYXJ5IGhvbGRlclxuICAgIGNvbnN0IHdlbGwgPSBjcmVhdGUoJ3dyYXBwZXInLCBucylcbiAgICBjb25zdCBmcmFnbWVudCA9IGdsb2JhbHMuZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpXG5cbiAgICAvLyBEdW1wIHJhdyBzdmdcbiAgICB3ZWxsLmlubmVySFRNTCA9IHhtbE9yRm5cblxuICAgIC8vIFRyYW5zcGxhbnQgbm9kZXMgaW50byB0aGUgZnJhZ21lbnRcbiAgICBmb3IgKGxldCBsZW4gPSB3ZWxsLmNoaWxkcmVuLmxlbmd0aDsgbGVuLS07ICkge1xuICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQod2VsbC5maXJzdEVsZW1lbnRDaGlsZClcbiAgICB9XG5cbiAgICBjb25zdCBwYXJlbnQgPSB0aGlzLnBhcmVudCgpXG5cbiAgICAvLyBBZGQgdGhlIHdob2xlIGZyYWdtZW50IGF0IG9uY2VcbiAgICByZXR1cm4gb3V0ZXJYTUwgPyB0aGlzLnJlcGxhY2UoZnJhZ21lbnQpICYmIHBhcmVudCA6IHRoaXMuYWRkKGZyYWdtZW50KVxuICB9XG59XG5cbmV4dGVuZChEb20sIHsgYXR0ciwgZmluZCwgZmluZE9uZSB9KVxucmVnaXN0ZXIoRG9tLCAnRG9tJylcbiIsICJpbXBvcnQgeyBiYm94LCByYm94LCBpbnNpZGUgfSBmcm9tICcuLi90eXBlcy9Cb3guanMnXG5pbXBvcnQgeyBjdG0sIHNjcmVlbkNUTSB9IGZyb20gJy4uL3R5cGVzL01hdHJpeC5qcydcbmltcG9ydCB7XG4gIGV4dGVuZCxcbiAgZ2V0Q2xhc3MsXG4gIG1ha2VJbnN0YW5jZSxcbiAgcmVnaXN0ZXIsXG4gIHJvb3Rcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgeyBwb2ludCB9IGZyb20gJy4uL3R5cGVzL1BvaW50LmpzJ1xuaW1wb3J0IHsgcHJvcG9ydGlvbmFsU2l6ZSwgd3JpdGVEYXRhVG9Eb20gfSBmcm9tICcuLi91dGlscy91dGlscy5qcydcbmltcG9ydCB7IHJlZmVyZW5jZSB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9yZWdleC5qcydcbmltcG9ydCBEb20gZnJvbSAnLi9Eb20uanMnXG5pbXBvcnQgTGlzdCBmcm9tICcuLi90eXBlcy9MaXN0LmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi90eXBlcy9TVkdOdW1iZXIuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEVsZW1lbnQgZXh0ZW5kcyBEb20ge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycykge1xuICAgIHN1cGVyKG5vZGUsIGF0dHJzKVxuXG4gICAgLy8gaW5pdGlhbGl6ZSBkYXRhIG9iamVjdFxuICAgIHRoaXMuZG9tID0ge31cblxuICAgIC8vIGNyZWF0ZSBjaXJjdWxhciByZWZlcmVuY2VcbiAgICB0aGlzLm5vZGUuaW5zdGFuY2UgPSB0aGlzXG5cbiAgICBpZiAobm9kZS5oYXNBdHRyaWJ1dGUoJ2RhdGEtc3ZnanMnKSB8fCBub2RlLmhhc0F0dHJpYnV0ZSgnc3ZnanM6ZGF0YScpKSB7XG4gICAgICAvLyBwdWxsIHN2Z2pzIGRhdGEgZnJvbSB0aGUgZG9tIChnZXRBdHRyaWJ1dGVOUyBkb2Vzbid0IHdvcmsgaW4gaHRtbDUpXG4gICAgICB0aGlzLnNldERhdGEoXG4gICAgICAgIEpTT04ucGFyc2Uobm9kZS5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3ZnanMnKSkgPz9cbiAgICAgICAgICBKU09OLnBhcnNlKG5vZGUuZ2V0QXR0cmlidXRlKCdzdmdqczpkYXRhJykpID8/XG4gICAgICAgICAge31cbiAgICAgIClcbiAgICB9XG4gIH1cblxuICAvLyBNb3ZlIGVsZW1lbnQgYnkgaXRzIGNlbnRlclxuICBjZW50ZXIoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLmN4KHgpLmN5KHkpXG4gIH1cblxuICAvLyBNb3ZlIGJ5IGNlbnRlciBvdmVyIHgtYXhpc1xuICBjeCh4KSB7XG4gICAgcmV0dXJuIHggPT0gbnVsbFxuICAgICAgPyB0aGlzLngoKSArIHRoaXMud2lkdGgoKSAvIDJcbiAgICAgIDogdGhpcy54KHggLSB0aGlzLndpZHRoKCkgLyAyKVxuICB9XG5cbiAgLy8gTW92ZSBieSBjZW50ZXIgb3ZlciB5LWF4aXNcbiAgY3koeSkge1xuICAgIHJldHVybiB5ID09IG51bGxcbiAgICAgID8gdGhpcy55KCkgKyB0aGlzLmhlaWdodCgpIC8gMlxuICAgICAgOiB0aGlzLnkoeSAtIHRoaXMuaGVpZ2h0KCkgLyAyKVxuICB9XG5cbiAgLy8gR2V0IGRlZnNcbiAgZGVmcygpIHtcbiAgICBjb25zdCByb290ID0gdGhpcy5yb290KClcbiAgICByZXR1cm4gcm9vdCAmJiByb290LmRlZnMoKVxuICB9XG5cbiAgLy8gUmVsYXRpdmUgbW92ZSBvdmVyIHggYW5kIHkgYXhlc1xuICBkbW92ZSh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMuZHgoeCkuZHkoeSlcbiAgfVxuXG4gIC8vIFJlbGF0aXZlIG1vdmUgb3ZlciB4IGF4aXNcbiAgZHgoeCA9IDApIHtcbiAgICByZXR1cm4gdGhpcy54KG5ldyBTVkdOdW1iZXIoeCkucGx1cyh0aGlzLngoKSkpXG4gIH1cblxuICAvLyBSZWxhdGl2ZSBtb3ZlIG92ZXIgeSBheGlzXG4gIGR5KHkgPSAwKSB7XG4gICAgcmV0dXJuIHRoaXMueShuZXcgU1ZHTnVtYmVyKHkpLnBsdXModGhpcy55KCkpKVxuICB9XG5cbiAgZ2V0RXZlbnRIb2xkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFNldCBoZWlnaHQgb2YgZWxlbWVudFxuICBoZWlnaHQoaGVpZ2h0KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignaGVpZ2h0JywgaGVpZ2h0KVxuICB9XG5cbiAgLy8gTW92ZSBlbGVtZW50IHRvIGdpdmVuIHggYW5kIHkgdmFsdWVzXG4gIG1vdmUoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLngoeCkueSh5KVxuICB9XG5cbiAgLy8gcmV0dXJuIGFycmF5IG9mIGFsbCBhbmNlc3RvcnMgb2YgZ2l2ZW4gdHlwZSB1cCB0byB0aGUgcm9vdCBzdmdcbiAgcGFyZW50cyh1bnRpbCA9IHRoaXMucm9vdCgpKSB7XG4gICAgY29uc3QgaXNTZWxlY3RvciA9IHR5cGVvZiB1bnRpbCA9PT0gJ3N0cmluZydcbiAgICBpZiAoIWlzU2VsZWN0b3IpIHtcbiAgICAgIHVudGlsID0gbWFrZUluc3RhbmNlKHVudGlsKVxuICAgIH1cbiAgICBjb25zdCBwYXJlbnRzID0gbmV3IExpc3QoKVxuICAgIGxldCBwYXJlbnQgPSB0aGlzXG5cbiAgICB3aGlsZSAoXG4gICAgICAocGFyZW50ID0gcGFyZW50LnBhcmVudCgpKSAmJlxuICAgICAgcGFyZW50Lm5vZGUgIT09IGdsb2JhbHMuZG9jdW1lbnQgJiZcbiAgICAgIHBhcmVudC5ub2RlTmFtZSAhPT0gJyNkb2N1bWVudC1mcmFnbWVudCdcbiAgICApIHtcbiAgICAgIHBhcmVudHMucHVzaChwYXJlbnQpXG5cbiAgICAgIGlmICghaXNTZWxlY3RvciAmJiBwYXJlbnQubm9kZSA9PT0gdW50aWwubm9kZSkge1xuICAgICAgICBicmVha1xuICAgICAgfVxuICAgICAgaWYgKGlzU2VsZWN0b3IgJiYgcGFyZW50Lm1hdGNoZXModW50aWwpKSB7XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgICBpZiAocGFyZW50Lm5vZGUgPT09IHRoaXMucm9vdCgpLm5vZGUpIHtcbiAgICAgICAgLy8gV2Ugd29ya2VkIG91ciB3YXkgdG8gdGhlIHJvb3QgYW5kIGRpZG4ndCBtYXRjaCBgdW50aWxgXG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmVudHNcbiAgfVxuXG4gIC8vIEdldCByZWZlcmVuY2VkIGVsZW1lbnQgZm9ybSBhdHRyaWJ1dGUgdmFsdWVcbiAgcmVmZXJlbmNlKGF0dHIpIHtcbiAgICBhdHRyID0gdGhpcy5hdHRyKGF0dHIpXG4gICAgaWYgKCFhdHRyKSByZXR1cm4gbnVsbFxuXG4gICAgY29uc3QgbSA9IChhdHRyICsgJycpLm1hdGNoKHJlZmVyZW5jZSlcbiAgICByZXR1cm4gbSA/IG1ha2VJbnN0YW5jZShtWzFdKSA6IG51bGxcbiAgfVxuXG4gIC8vIEdldCBwYXJlbnQgZG9jdW1lbnRcbiAgcm9vdCgpIHtcbiAgICBjb25zdCBwID0gdGhpcy5wYXJlbnQoZ2V0Q2xhc3Mocm9vdCkpXG4gICAgcmV0dXJuIHAgJiYgcC5yb290KClcbiAgfVxuXG4gIC8vIHNldCBnaXZlbiBkYXRhIHRvIHRoZSBlbGVtZW50cyBkYXRhIHByb3BlcnR5XG4gIHNldERhdGEobykge1xuICAgIHRoaXMuZG9tID0gb1xuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBTZXQgZWxlbWVudCBzaXplIHRvIGdpdmVuIHdpZHRoIGFuZCBoZWlnaHRcbiAgc2l6ZSh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgY29uc3QgcCA9IHByb3BvcnRpb25hbFNpemUodGhpcywgd2lkdGgsIGhlaWdodClcblxuICAgIHJldHVybiB0aGlzLndpZHRoKG5ldyBTVkdOdW1iZXIocC53aWR0aCkpLmhlaWdodChuZXcgU1ZHTnVtYmVyKHAuaGVpZ2h0KSlcbiAgfVxuXG4gIC8vIFNldCB3aWR0aCBvZiBlbGVtZW50XG4gIHdpZHRoKHdpZHRoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignd2lkdGgnLCB3aWR0aClcbiAgfVxuXG4gIC8vIHdyaXRlIHN2Z2pzIGRhdGEgdG8gdGhlIGRvbVxuICB3cml0ZURhdGFUb0RvbSgpIHtcbiAgICB3cml0ZURhdGFUb0RvbSh0aGlzLCB0aGlzLmRvbSlcbiAgICByZXR1cm4gc3VwZXIud3JpdGVEYXRhVG9Eb20oKVxuICB9XG5cbiAgLy8gTW92ZSBvdmVyIHgtYXhpc1xuICB4KHgpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCd4JywgeClcbiAgfVxuXG4gIC8vIE1vdmUgb3ZlciB5LWF4aXNcbiAgeSh5KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cigneScsIHkpXG4gIH1cbn1cblxuZXh0ZW5kKEVsZW1lbnQsIHtcbiAgYmJveCxcbiAgcmJveCxcbiAgaW5zaWRlLFxuICBwb2ludCxcbiAgY3RtLFxuICBzY3JlZW5DVE1cbn0pXG5cbnJlZ2lzdGVyKEVsZW1lbnQsICdFbGVtZW50JylcbiIsICJpbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi8uLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IENvbG9yIGZyb20gJy4uLy4uL3R5cGVzL0NvbG9yLmpzJ1xuaW1wb3J0IEVsZW1lbnQgZnJvbSAnLi4vLi4vZWxlbWVudHMvRWxlbWVudC5qcydcbmltcG9ydCBNYXRyaXggZnJvbSAnLi4vLi4vdHlwZXMvTWF0cml4LmpzJ1xuaW1wb3J0IFBvaW50IGZyb20gJy4uLy4uL3R5cGVzL1BvaW50LmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi8uLi90eXBlcy9TVkdOdW1iZXIuanMnXG5cbi8vIERlZmluZSBsaXN0IG9mIGF2YWlsYWJsZSBhdHRyaWJ1dGVzIGZvciBzdHJva2UgYW5kIGZpbGxcbmNvbnN0IHN1Z2FyID0ge1xuICBzdHJva2U6IFtcbiAgICAnY29sb3InLFxuICAgICd3aWR0aCcsXG4gICAgJ29wYWNpdHknLFxuICAgICdsaW5lY2FwJyxcbiAgICAnbGluZWpvaW4nLFxuICAgICdtaXRlcmxpbWl0JyxcbiAgICAnZGFzaGFycmF5JyxcbiAgICAnZGFzaG9mZnNldCdcbiAgXSxcbiAgZmlsbDogWydjb2xvcicsICdvcGFjaXR5JywgJ3J1bGUnXSxcbiAgcHJlZml4OiBmdW5jdGlvbiAodCwgYSkge1xuICAgIHJldHVybiBhID09PSAnY29sb3InID8gdCA6IHQgKyAnLScgKyBhXG4gIH1cbn1cblxuLy8gQWRkIHN1Z2FyIGZvciBmaWxsIGFuZCBzdHJva2VcbjtbJ2ZpbGwnLCAnc3Ryb2tlJ10uZm9yRWFjaChmdW5jdGlvbiAobSkge1xuICBjb25zdCBleHRlbnNpb24gPSB7fVxuICBsZXQgaVxuXG4gIGV4dGVuc2lvblttXSA9IGZ1bmN0aW9uIChvKSB7XG4gICAgaWYgKHR5cGVvZiBvID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIHRoaXMuYXR0cihtKVxuICAgIH1cbiAgICBpZiAoXG4gICAgICB0eXBlb2YgbyA9PT0gJ3N0cmluZycgfHxcbiAgICAgIG8gaW5zdGFuY2VvZiBDb2xvciB8fFxuICAgICAgQ29sb3IuaXNSZ2IobykgfHxcbiAgICAgIG8gaW5zdGFuY2VvZiBFbGVtZW50XG4gICAgKSB7XG4gICAgICB0aGlzLmF0dHIobSwgbylcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gc2V0IGFsbCBhdHRyaWJ1dGVzIGZyb20gc3VnYXIuZmlsbCBhbmQgc3VnYXIuc3Ryb2tlIGxpc3RcbiAgICAgIGZvciAoaSA9IHN1Z2FyW21dLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgIGlmIChvW3N1Z2FyW21dW2ldXSAhPSBudWxsKSB7XG4gICAgICAgICAgdGhpcy5hdHRyKHN1Z2FyLnByZWZpeChtLCBzdWdhclttXVtpXSksIG9bc3VnYXJbbV1baV1dKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHJlZ2lzdGVyTWV0aG9kcyhbJ0VsZW1lbnQnLCAnUnVubmVyJ10sIGV4dGVuc2lvbilcbn0pXG5cbnJlZ2lzdGVyTWV0aG9kcyhbJ0VsZW1lbnQnLCAnUnVubmVyJ10sIHtcbiAgLy8gTGV0IHRoZSB1c2VyIHNldCB0aGUgbWF0cml4IGRpcmVjdGx5XG4gIG1hdHJpeDogZnVuY3Rpb24gKG1hdCwgYiwgYywgZCwgZSwgZikge1xuICAgIC8vIEFjdCBhcyBhIGdldHRlclxuICAgIGlmIChtYXQgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG5ldyBNYXRyaXgodGhpcylcbiAgICB9XG5cbiAgICAvLyBBY3QgYXMgYSBzZXR0ZXIsIHRoZSB1c2VyIGNhbiBwYXNzIGEgbWF0cml4IG9yIGEgc2V0IG9mIG51bWJlcnNcbiAgICByZXR1cm4gdGhpcy5hdHRyKCd0cmFuc2Zvcm0nLCBuZXcgTWF0cml4KG1hdCwgYiwgYywgZCwgZSwgZikpXG4gIH0sXG5cbiAgLy8gTWFwIHJvdGF0aW9uIHRvIHRyYW5zZm9ybVxuICByb3RhdGU6IGZ1bmN0aW9uIChhbmdsZSwgY3gsIGN5KSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtKHsgcm90YXRlOiBhbmdsZSwgb3g6IGN4LCBveTogY3kgfSwgdHJ1ZSlcbiAgfSxcblxuICAvLyBNYXAgc2tldyB0byB0cmFuc2Zvcm1cbiAgc2tldzogZnVuY3Rpb24gKHgsIHksIGN4LCBjeSkge1xuICAgIHJldHVybiBhcmd1bWVudHMubGVuZ3RoID09PSAxIHx8IGFyZ3VtZW50cy5sZW5ndGggPT09IDNcbiAgICAgID8gdGhpcy50cmFuc2Zvcm0oeyBza2V3OiB4LCBveDogeSwgb3k6IGN4IH0sIHRydWUpXG4gICAgICA6IHRoaXMudHJhbnNmb3JtKHsgc2tldzogW3gsIHldLCBveDogY3gsIG95OiBjeSB9LCB0cnVlKVxuICB9LFxuXG4gIHNoZWFyOiBmdW5jdGlvbiAobGFtLCBjeCwgY3kpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0oeyBzaGVhcjogbGFtLCBveDogY3gsIG95OiBjeSB9LCB0cnVlKVxuICB9LFxuXG4gIC8vIE1hcCBzY2FsZSB0byB0cmFuc2Zvcm1cbiAgc2NhbGU6IGZ1bmN0aW9uICh4LCB5LCBjeCwgY3kpIHtcbiAgICByZXR1cm4gYXJndW1lbnRzLmxlbmd0aCA9PT0gMSB8fCBhcmd1bWVudHMubGVuZ3RoID09PSAzXG4gICAgICA/IHRoaXMudHJhbnNmb3JtKHsgc2NhbGU6IHgsIG94OiB5LCBveTogY3ggfSwgdHJ1ZSlcbiAgICAgIDogdGhpcy50cmFuc2Zvcm0oeyBzY2FsZTogW3gsIHldLCBveDogY3gsIG95OiBjeSB9LCB0cnVlKVxuICB9LFxuXG4gIC8vIE1hcCB0cmFuc2xhdGUgdG8gdHJhbnNmb3JtXG4gIHRyYW5zbGF0ZTogZnVuY3Rpb24gKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0oeyB0cmFuc2xhdGU6IFt4LCB5XSB9LCB0cnVlKVxuICB9LFxuXG4gIC8vIE1hcCByZWxhdGl2ZSB0cmFuc2xhdGlvbnMgdG8gdHJhbnNmb3JtXG4gIHJlbGF0aXZlOiBmdW5jdGlvbiAoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybSh7IHJlbGF0aXZlOiBbeCwgeV0gfSwgdHJ1ZSlcbiAgfSxcblxuICAvLyBNYXAgZmxpcCB0byB0cmFuc2Zvcm1cbiAgZmxpcDogZnVuY3Rpb24gKGRpcmVjdGlvbiA9ICdib3RoJywgb3JpZ2luID0gJ2NlbnRlcicpIHtcbiAgICBpZiAoJ3h5Ym90aHRydWUnLmluZGV4T2YoZGlyZWN0aW9uKSA9PT0gLTEpIHtcbiAgICAgIG9yaWdpbiA9IGRpcmVjdGlvblxuICAgICAgZGlyZWN0aW9uID0gJ2JvdGgnXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtKHsgZmxpcDogZGlyZWN0aW9uLCBvcmlnaW46IG9yaWdpbiB9LCB0cnVlKVxuICB9LFxuXG4gIC8vIE9wYWNpdHlcbiAgb3BhY2l0eTogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignb3BhY2l0eScsIHZhbHVlKVxuICB9XG59KVxuXG5yZWdpc3Rlck1ldGhvZHMoJ3JhZGl1cycsIHtcbiAgLy8gQWRkIHggYW5kIHkgcmFkaXVzXG4gIHJhZGl1czogZnVuY3Rpb24gKHgsIHkgPSB4KSB7XG4gICAgY29uc3QgdHlwZSA9ICh0aGlzLl9lbGVtZW50IHx8IHRoaXMpLnR5cGVcbiAgICByZXR1cm4gdHlwZSA9PT0gJ3JhZGlhbEdyYWRpZW50J1xuICAgICAgPyB0aGlzLmF0dHIoJ3InLCBuZXcgU1ZHTnVtYmVyKHgpKVxuICAgICAgOiB0aGlzLnJ4KHgpLnJ5KHkpXG4gIH1cbn0pXG5cbnJlZ2lzdGVyTWV0aG9kcygnUGF0aCcsIHtcbiAgLy8gR2V0IHBhdGggbGVuZ3RoXG4gIGxlbmd0aDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGUuZ2V0VG90YWxMZW5ndGgoKVxuICB9LFxuICAvLyBHZXQgcG9pbnQgYXQgbGVuZ3RoXG4gIHBvaW50QXQ6IGZ1bmN0aW9uIChsZW5ndGgpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMubm9kZS5nZXRQb2ludEF0TGVuZ3RoKGxlbmd0aCkpXG4gIH1cbn0pXG5cbnJlZ2lzdGVyTWV0aG9kcyhbJ0VsZW1lbnQnLCAnUnVubmVyJ10sIHtcbiAgLy8gU2V0IGZvbnRcbiAgZm9udDogZnVuY3Rpb24gKGEsIHYpIHtcbiAgICBpZiAodHlwZW9mIGEgPT09ICdvYmplY3QnKSB7XG4gICAgICBmb3IgKHYgaW4gYSkgdGhpcy5mb250KHYsIGFbdl0pXG4gICAgICByZXR1cm4gdGhpc1xuICAgIH1cblxuICAgIHJldHVybiBhID09PSAnbGVhZGluZydcbiAgICAgID8gdGhpcy5sZWFkaW5nKHYpXG4gICAgICA6IGEgPT09ICdhbmNob3InXG4gICAgICAgID8gdGhpcy5hdHRyKCd0ZXh0LWFuY2hvcicsIHYpXG4gICAgICAgIDogYSA9PT0gJ3NpemUnIHx8XG4gICAgICAgICAgICBhID09PSAnZmFtaWx5JyB8fFxuICAgICAgICAgICAgYSA9PT0gJ3dlaWdodCcgfHxcbiAgICAgICAgICAgIGEgPT09ICdzdHJldGNoJyB8fFxuICAgICAgICAgICAgYSA9PT0gJ3ZhcmlhbnQnIHx8XG4gICAgICAgICAgICBhID09PSAnc3R5bGUnXG4gICAgICAgICAgPyB0aGlzLmF0dHIoJ2ZvbnQtJyArIGEsIHYpXG4gICAgICAgICAgOiB0aGlzLmF0dHIoYSwgdilcbiAgfVxufSlcblxuLy8gQWRkIGV2ZW50cyB0byBlbGVtZW50c1xuY29uc3QgbWV0aG9kcyA9IFtcbiAgJ2NsaWNrJyxcbiAgJ2RibGNsaWNrJyxcbiAgJ21vdXNlZG93bicsXG4gICdtb3VzZXVwJyxcbiAgJ21vdXNlb3ZlcicsXG4gICdtb3VzZW91dCcsXG4gICdtb3VzZW1vdmUnLFxuICAnbW91c2VlbnRlcicsXG4gICdtb3VzZWxlYXZlJyxcbiAgJ3RvdWNoc3RhcnQnLFxuICAndG91Y2htb3ZlJyxcbiAgJ3RvdWNobGVhdmUnLFxuICAndG91Y2hlbmQnLFxuICAndG91Y2hjYW5jZWwnLFxuICAnY29udGV4dG1lbnUnLFxuICAnd2hlZWwnLFxuICAncG9pbnRlcmRvd24nLFxuICAncG9pbnRlcm1vdmUnLFxuICAncG9pbnRlcnVwJyxcbiAgJ3BvaW50ZXJsZWF2ZScsXG4gICdwb2ludGVyY2FuY2VsJ1xuXS5yZWR1Y2UoZnVuY3Rpb24gKGxhc3QsIGV2ZW50KSB7XG4gIC8vIGFkZCBldmVudCB0byBFbGVtZW50XG4gIGNvbnN0IGZuID0gZnVuY3Rpb24gKGYpIHtcbiAgICBpZiAoZiA9PT0gbnVsbCkge1xuICAgICAgdGhpcy5vZmYoZXZlbnQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub24oZXZlbnQsIGYpXG4gICAgfVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBsYXN0W2V2ZW50XSA9IGZuXG4gIHJldHVybiBsYXN0XG59LCB7fSlcblxucmVnaXN0ZXJNZXRob2RzKCdFbGVtZW50JywgbWV0aG9kcylcbiIsICJpbXBvcnQgeyBnZXRPcmlnaW4sIGlzRGVzY3JpcHRpdmUgfSBmcm9tICcuLi8uLi91dGlscy91dGlscy5qcydcbmltcG9ydCB7IGRlbGltaXRlciwgdHJhbnNmb3JtcyB9IGZyb20gJy4uL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi8uLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IE1hdHJpeCBmcm9tICcuLi8uLi90eXBlcy9NYXRyaXguanMnXG5cbi8vIFJlc2V0IGFsbCB0cmFuc2Zvcm1hdGlvbnNcbmV4cG9ydCBmdW5jdGlvbiB1bnRyYW5zZm9ybSgpIHtcbiAgcmV0dXJuIHRoaXMuYXR0cigndHJhbnNmb3JtJywgbnVsbClcbn1cblxuLy8gbWVyZ2UgdGhlIHdob2xlIHRyYW5zZm9ybWF0aW9uIGNoYWluIGludG8gb25lIG1hdHJpeCBhbmQgcmV0dXJucyBpdFxuZXhwb3J0IGZ1bmN0aW9uIG1hdHJpeGlmeSgpIHtcbiAgY29uc3QgbWF0cml4ID0gKHRoaXMuYXR0cigndHJhbnNmb3JtJykgfHwgJycpXG4gICAgLy8gc3BsaXQgdHJhbnNmb3JtYXRpb25zXG4gICAgLnNwbGl0KHRyYW5zZm9ybXMpXG4gICAgLnNsaWNlKDAsIC0xKVxuICAgIC5tYXAoZnVuY3Rpb24gKHN0cikge1xuICAgICAgLy8gZ2VuZXJhdGUga2V5ID0+IHZhbHVlIHBhaXJzXG4gICAgICBjb25zdCBrdiA9IHN0ci50cmltKCkuc3BsaXQoJygnKVxuICAgICAgcmV0dXJuIFtcbiAgICAgICAga3ZbMF0sXG4gICAgICAgIGt2WzFdLnNwbGl0KGRlbGltaXRlcikubWFwKGZ1bmN0aW9uIChzdHIpIHtcbiAgICAgICAgICByZXR1cm4gcGFyc2VGbG9hdChzdHIpXG4gICAgICAgIH0pXG4gICAgICBdXG4gICAgfSlcbiAgICAucmV2ZXJzZSgpXG4gICAgLy8gbWVyZ2UgZXZlcnkgdHJhbnNmb3JtYXRpb24gaW50byBvbmUgbWF0cml4XG4gICAgLnJlZHVjZShmdW5jdGlvbiAobWF0cml4LCB0cmFuc2Zvcm0pIHtcbiAgICAgIGlmICh0cmFuc2Zvcm1bMF0gPT09ICdtYXRyaXgnKSB7XG4gICAgICAgIHJldHVybiBtYXRyaXgubG11bHRpcGx5KE1hdHJpeC5mcm9tQXJyYXkodHJhbnNmb3JtWzFdKSlcbiAgICAgIH1cbiAgICAgIHJldHVybiBtYXRyaXhbdHJhbnNmb3JtWzBdXS5hcHBseShtYXRyaXgsIHRyYW5zZm9ybVsxXSlcbiAgICB9LCBuZXcgTWF0cml4KCkpXG5cbiAgcmV0dXJuIG1hdHJpeFxufVxuXG4vLyBhZGQgYW4gZWxlbWVudCB0byBhbm90aGVyIHBhcmVudCB3aXRob3V0IGNoYW5naW5nIHRoZSB2aXN1YWwgcmVwcmVzZW50YXRpb24gb24gdGhlIHNjcmVlblxuZXhwb3J0IGZ1bmN0aW9uIHRvUGFyZW50KHBhcmVudCwgaSkge1xuICBpZiAodGhpcyA9PT0gcGFyZW50KSByZXR1cm4gdGhpc1xuXG4gIGlmIChpc0Rlc2NyaXB0aXZlKHRoaXMubm9kZSkpIHJldHVybiB0aGlzLmFkZFRvKHBhcmVudCwgaSlcblxuICBjb25zdCBjdG0gPSB0aGlzLnNjcmVlbkNUTSgpXG4gIGNvbnN0IHBDdG0gPSBwYXJlbnQuc2NyZWVuQ1RNKCkuaW52ZXJzZSgpXG5cbiAgdGhpcy5hZGRUbyhwYXJlbnQsIGkpLnVudHJhbnNmb3JtKCkudHJhbnNmb3JtKHBDdG0ubXVsdGlwbHkoY3RtKSlcblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBzYW1lIGFzIGFib3ZlIHdpdGggcGFyZW50IGVxdWFscyByb290LXN2Z1xuZXhwb3J0IGZ1bmN0aW9uIHRvUm9vdChpKSB7XG4gIHJldHVybiB0aGlzLnRvUGFyZW50KHRoaXMucm9vdCgpLCBpKVxufVxuXG4vLyBBZGQgdHJhbnNmb3JtYXRpb25zXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtKG8sIHJlbGF0aXZlKSB7XG4gIC8vIEFjdCBhcyBhIGdldHRlciBpZiBubyBvYmplY3Qgd2FzIHBhc3NlZFxuICBpZiAobyA9PSBudWxsIHx8IHR5cGVvZiBvID09PSAnc3RyaW5nJykge1xuICAgIGNvbnN0IGRlY29tcG9zZWQgPSBuZXcgTWF0cml4KHRoaXMpLmRlY29tcG9zZSgpXG4gICAgcmV0dXJuIG8gPT0gbnVsbCA/IGRlY29tcG9zZWQgOiBkZWNvbXBvc2VkW29dXG4gIH1cblxuICBpZiAoIU1hdHJpeC5pc01hdHJpeExpa2UobykpIHtcbiAgICAvLyBTZXQgdGhlIG9yaWdpbiBhY2NvcmRpbmcgdG8gdGhlIGRlZmluZWQgdHJhbnNmb3JtXG4gICAgbyA9IHsgLi4ubywgb3JpZ2luOiBnZXRPcmlnaW4obywgdGhpcykgfVxuICB9XG5cbiAgLy8gVGhlIHVzZXIgY2FuIHBhc3MgYSBib29sZWFuLCBhbiBFbGVtZW50IG9yIGFuIE1hdHJpeCBvciBub3RoaW5nXG4gIGNvbnN0IGNsZWFuUmVsYXRpdmUgPSByZWxhdGl2ZSA9PT0gdHJ1ZSA/IHRoaXMgOiByZWxhdGl2ZSB8fCBmYWxzZVxuICBjb25zdCByZXN1bHQgPSBuZXcgTWF0cml4KGNsZWFuUmVsYXRpdmUpLnRyYW5zZm9ybShvKVxuICByZXR1cm4gdGhpcy5hdHRyKCd0cmFuc2Zvcm0nLCByZXN1bHQpXG59XG5cbnJlZ2lzdGVyTWV0aG9kcygnRWxlbWVudCcsIHtcbiAgdW50cmFuc2Zvcm0sXG4gIG1hdHJpeGlmeSxcbiAgdG9QYXJlbnQsXG4gIHRvUm9vdCxcbiAgdHJhbnNmb3JtXG59KVxuIiwgImltcG9ydCB7IHJlZ2lzdGVyIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCBFbGVtZW50IGZyb20gJy4vRWxlbWVudC5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29udGFpbmVyIGV4dGVuZHMgRWxlbWVudCB7XG4gIGZsYXR0ZW4oKSB7XG4gICAgdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmICh0aGlzIGluc3RhbmNlb2YgQ29udGFpbmVyKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZsYXR0ZW4oKS51bmdyb3VwKClcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHVuZ3JvdXAocGFyZW50ID0gdGhpcy5wYXJlbnQoKSwgaW5kZXggPSBwYXJlbnQuaW5kZXgodGhpcykpIHtcbiAgICAvLyB3aGVuIHBhcmVudCAhPSB0aGlzLCB3ZSB3YW50IGFwcGVuZCBhbGwgZWxlbWVudHMgdG8gdGhlIGVuZFxuICAgIGluZGV4ID0gaW5kZXggPT09IC0xID8gcGFyZW50LmNoaWxkcmVuKCkubGVuZ3RoIDogaW5kZXhcblxuICAgIHRoaXMuZWFjaChmdW5jdGlvbiAoaSwgY2hpbGRyZW4pIHtcbiAgICAgIC8vIHJldmVyc2UgZWFjaFxuICAgICAgcmV0dXJuIGNoaWxkcmVuW2NoaWxkcmVuLmxlbmd0aCAtIGkgLSAxXS50b1BhcmVudChwYXJlbnQsIGluZGV4KVxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpcy5yZW1vdmUoKVxuICB9XG59XG5cbnJlZ2lzdGVyKENvbnRhaW5lciwgJ0NvbnRhaW5lcicpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3RlciB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgQ29udGFpbmVyIGZyb20gJy4vQ29udGFpbmVyLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEZWZzIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdkZWZzJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgZmxhdHRlbigpIHtcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdW5ncm91cCgpIHtcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbnJlZ2lzdGVyKERlZnMsICdEZWZzJylcbiIsICJpbXBvcnQgeyByZWdpc3RlciB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgRWxlbWVudCBmcm9tICcuL0VsZW1lbnQuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNoYXBlIGV4dGVuZHMgRWxlbWVudCB7fVxuXG5yZWdpc3RlcihTaGFwZSwgJ1NoYXBlJylcbiIsICJpbXBvcnQgU1ZHTnVtYmVyIGZyb20gJy4uLy4uL3R5cGVzL1NWR051bWJlci5qcydcblxuLy8gUmFkaXVzIHggdmFsdWVcbmV4cG9ydCBmdW5jdGlvbiByeChyeCkge1xuICByZXR1cm4gdGhpcy5hdHRyKCdyeCcsIHJ4KVxufVxuXG4vLyBSYWRpdXMgeSB2YWx1ZVxuZXhwb3J0IGZ1bmN0aW9uIHJ5KHJ5KSB7XG4gIHJldHVybiB0aGlzLmF0dHIoJ3J5JywgcnkpXG59XG5cbi8vIE1vdmUgb3ZlciB4LWF4aXNcbmV4cG9ydCBmdW5jdGlvbiB4KHgpIHtcbiAgcmV0dXJuIHggPT0gbnVsbCA/IHRoaXMuY3goKSAtIHRoaXMucngoKSA6IHRoaXMuY3goeCArIHRoaXMucngoKSlcbn1cblxuLy8gTW92ZSBvdmVyIHktYXhpc1xuZXhwb3J0IGZ1bmN0aW9uIHkoeSkge1xuICByZXR1cm4geSA9PSBudWxsID8gdGhpcy5jeSgpIC0gdGhpcy5yeSgpIDogdGhpcy5jeSh5ICsgdGhpcy5yeSgpKVxufVxuXG4vLyBNb3ZlIGJ5IGNlbnRlciBvdmVyIHgtYXhpc1xuZXhwb3J0IGZ1bmN0aW9uIGN4KHgpIHtcbiAgcmV0dXJuIHRoaXMuYXR0cignY3gnLCB4KVxufVxuXG4vLyBNb3ZlIGJ5IGNlbnRlciBvdmVyIHktYXhpc1xuZXhwb3J0IGZ1bmN0aW9uIGN5KHkpIHtcbiAgcmV0dXJuIHRoaXMuYXR0cignY3knLCB5KVxufVxuXG4vLyBTZXQgd2lkdGggb2YgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIHdpZHRoKHdpZHRoKSB7XG4gIHJldHVybiB3aWR0aCA9PSBudWxsID8gdGhpcy5yeCgpICogMiA6IHRoaXMucngobmV3IFNWR051bWJlcih3aWR0aCkuZGl2aWRlKDIpKVxufVxuXG4vLyBTZXQgaGVpZ2h0IG9mIGVsZW1lbnRcbmV4cG9ydCBmdW5jdGlvbiBoZWlnaHQoaGVpZ2h0KSB7XG4gIHJldHVybiBoZWlnaHQgPT0gbnVsbFxuICAgID8gdGhpcy5yeSgpICogMlxuICAgIDogdGhpcy5yeShuZXcgU1ZHTnVtYmVyKGhlaWdodCkuZGl2aWRlKDIpKVxufVxuIiwgImltcG9ydCB7XG4gIGV4dGVuZCxcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2tcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHByb3BvcnRpb25hbFNpemUgfSBmcm9tICcuLi91dGlscy91dGlscy5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgU1ZHTnVtYmVyIGZyb20gJy4uL3R5cGVzL1NWR051bWJlci5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuaW1wb3J0ICogYXMgY2lyY2xlZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvY2lyY2xlZC5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRWxsaXBzZSBleHRlbmRzIFNoYXBlIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdlbGxpcHNlJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgc2l6ZSh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgY29uc3QgcCA9IHByb3BvcnRpb25hbFNpemUodGhpcywgd2lkdGgsIGhlaWdodClcblxuICAgIHJldHVybiB0aGlzLnJ4KG5ldyBTVkdOdW1iZXIocC53aWR0aCkuZGl2aWRlKDIpKS5yeShcbiAgICAgIG5ldyBTVkdOdW1iZXIocC5oZWlnaHQpLmRpdmlkZSgyKVxuICAgIClcbiAgfVxufVxuXG5leHRlbmQoRWxsaXBzZSwgY2lyY2xlZClcblxucmVnaXN0ZXJNZXRob2RzKCdDb250YWluZXInLCB7XG4gIC8vIENyZWF0ZSBhbiBlbGxpcHNlXG4gIGVsbGlwc2U6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh3aWR0aCA9IDAsIGhlaWdodCA9IHdpZHRoKSB7XG4gICAgcmV0dXJuIHRoaXMucHV0KG5ldyBFbGxpcHNlKCkpLnNpemUod2lkdGgsIGhlaWdodCkubW92ZSgwLCAwKVxuICB9KVxufSlcblxucmVnaXN0ZXIoRWxsaXBzZSwgJ0VsbGlwc2UnKVxuIiwgImltcG9ydCBEb20gZnJvbSAnLi9Eb20uanMnXG5pbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXIsIGNyZWF0ZSB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5cbmNsYXNzIEZyYWdtZW50IGV4dGVuZHMgRG9tIHtcbiAgY29uc3RydWN0b3Iobm9kZSA9IGdsb2JhbHMuZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpKSB7XG4gICAgc3VwZXIobm9kZSlcbiAgfVxuXG4gIC8vIEltcG9ydCAvIEV4cG9ydCByYXcgeG1sXG4gIHhtbCh4bWxPckZuLCBvdXRlclhNTCwgbnMpIHtcbiAgICBpZiAodHlwZW9mIHhtbE9yRm4gPT09ICdib29sZWFuJykge1xuICAgICAgbnMgPSBvdXRlclhNTFxuICAgICAgb3V0ZXJYTUwgPSB4bWxPckZuXG4gICAgICB4bWxPckZuID0gbnVsbFxuICAgIH1cblxuICAgIC8vIGJlY2F1c2UgdGhpcyBpcyBhIGZyYWdtZW50IHdlIGhhdmUgdG8gcHV0IGFsbCBlbGVtZW50cyBpbnRvIGEgd3JhcHBlciBmaXJzdFxuICAgIC8vIGJlZm9yZSB3ZSBjYW4gZ2V0IHRoZSBpbm5lclhNTCBmcm9tIGl0XG4gICAgaWYgKHhtbE9yRm4gPT0gbnVsbCB8fCB0eXBlb2YgeG1sT3JGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uc3Qgd3JhcHBlciA9IG5ldyBEb20oY3JlYXRlKCd3cmFwcGVyJywgbnMpKVxuICAgICAgd3JhcHBlci5hZGQodGhpcy5ub2RlLmNsb25lTm9kZSh0cnVlKSlcblxuICAgICAgcmV0dXJuIHdyYXBwZXIueG1sKGZhbHNlLCBucylcbiAgICB9XG5cbiAgICAvLyBBY3QgYXMgc2V0dGVyIGlmIHdlIGdvdCBhIHN0cmluZ1xuICAgIHJldHVybiBzdXBlci54bWwoeG1sT3JGbiwgZmFsc2UsIG5zKVxuICB9XG59XG5cbnJlZ2lzdGVyKEZyYWdtZW50LCAnRnJhZ21lbnQnKVxuXG5leHBvcnQgZGVmYXVsdCBGcmFnbWVudFxuIiwgImltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gZnJvbSh4LCB5KSB7XG4gIHJldHVybiAodGhpcy5fZWxlbWVudCB8fCB0aGlzKS50eXBlID09PSAncmFkaWFsR3JhZGllbnQnXG4gICAgPyB0aGlzLmF0dHIoeyBmeDogbmV3IFNWR051bWJlcih4KSwgZnk6IG5ldyBTVkdOdW1iZXIoeSkgfSlcbiAgICA6IHRoaXMuYXR0cih7IHgxOiBuZXcgU1ZHTnVtYmVyKHgpLCB5MTogbmV3IFNWR051bWJlcih5KSB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdG8oeCwgeSkge1xuICByZXR1cm4gKHRoaXMuX2VsZW1lbnQgfHwgdGhpcykudHlwZSA9PT0gJ3JhZGlhbEdyYWRpZW50J1xuICAgID8gdGhpcy5hdHRyKHsgY3g6IG5ldyBTVkdOdW1iZXIoeCksIGN5OiBuZXcgU1ZHTnVtYmVyKHkpIH0pXG4gICAgOiB0aGlzLmF0dHIoeyB4MjogbmV3IFNWR051bWJlcih4KSwgeTI6IG5ldyBTVkdOdW1iZXIoeSkgfSlcbn1cbiIsICJpbXBvcnQge1xuICBleHRlbmQsXG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IEJveCBmcm9tICcuLi90eXBlcy9Cb3guanMnXG5pbXBvcnQgQ29udGFpbmVyIGZyb20gJy4vQ29udGFpbmVyLmpzJ1xuaW1wb3J0IGJhc2VGaW5kIGZyb20gJy4uL21vZHVsZXMvY29yZS9zZWxlY3Rvci5qcydcbmltcG9ydCAqIGFzIGdyYWRpZW50ZWQgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2dyYWRpZW50ZWQuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdyYWRpZW50IGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgY29uc3RydWN0b3IodHlwZSwgYXR0cnMpIHtcbiAgICBzdXBlcihcbiAgICAgIG5vZGVPck5ldyh0eXBlICsgJ0dyYWRpZW50JywgdHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnID8gbnVsbCA6IHR5cGUpLFxuICAgICAgYXR0cnNcbiAgICApXG4gIH1cblxuICAvLyBjdXN0b20gYXR0ciB0byBoYW5kbGUgdHJhbnNmb3JtXG4gIGF0dHIoYSwgYiwgYykge1xuICAgIGlmIChhID09PSAndHJhbnNmb3JtJykgYSA9ICdncmFkaWVudFRyYW5zZm9ybSdcbiAgICByZXR1cm4gc3VwZXIuYXR0cihhLCBiLCBjKVxuICB9XG5cbiAgYmJveCgpIHtcbiAgICByZXR1cm4gbmV3IEJveCgpXG4gIH1cblxuICB0YXJnZXRzKCkge1xuICAgIHJldHVybiBiYXNlRmluZCgnc3ZnIFtmaWxsKj0nICsgdGhpcy5pZCgpICsgJ10nKVxuICB9XG5cbiAgLy8gQWxpYXMgc3RyaW5nIGNvbnZlcnNpb24gdG8gZmlsbFxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy51cmwoKVxuICB9XG5cbiAgLy8gVXBkYXRlIGdyYWRpZW50XG4gIHVwZGF0ZShibG9jaykge1xuICAgIC8vIHJlbW92ZSBhbGwgc3RvcHNcbiAgICB0aGlzLmNsZWFyKClcblxuICAgIC8vIGludm9rZSBwYXNzZWQgYmxvY2tcbiAgICBpZiAodHlwZW9mIGJsb2NrID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBibG9jay5jYWxsKHRoaXMsIHRoaXMpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFJldHVybiB0aGUgZmlsbCBpZFxuICB1cmwoKSB7XG4gICAgcmV0dXJuICd1cmwoIycgKyB0aGlzLmlkKCkgKyAnKSdcbiAgfVxufVxuXG5leHRlbmQoR3JhZGllbnQsIGdyYWRpZW50ZWQpXG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBncmFkaWVudCBlbGVtZW50IGluIGRlZnNcbiAgICBncmFkaWVudCguLi5hcmdzKSB7XG4gICAgICByZXR1cm4gdGhpcy5kZWZzKCkuZ3JhZGllbnQoLi4uYXJncylcbiAgICB9XG4gIH0sXG4gIC8vIGRlZmluZSBncmFkaWVudFxuICBEZWZzOiB7XG4gICAgZ3JhZGllbnQ6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh0eXBlLCBibG9jaykge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBHcmFkaWVudCh0eXBlKSkudXBkYXRlKGJsb2NrKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKEdyYWRpZW50LCAnR3JhZGllbnQnKVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIsIHdyYXBXaXRoQXR0ckNoZWNrIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgQm94IGZyb20gJy4uL3R5cGVzL0JveC5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5pbXBvcnQgYmFzZUZpbmQgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3NlbGVjdG9yLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXR0ZXJuIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygncGF0dGVybicsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIGN1c3RvbSBhdHRyIHRvIGhhbmRsZSB0cmFuc2Zvcm1cbiAgYXR0cihhLCBiLCBjKSB7XG4gICAgaWYgKGEgPT09ICd0cmFuc2Zvcm0nKSBhID0gJ3BhdHRlcm5UcmFuc2Zvcm0nXG4gICAgcmV0dXJuIHN1cGVyLmF0dHIoYSwgYiwgYylcbiAgfVxuXG4gIGJib3goKSB7XG4gICAgcmV0dXJuIG5ldyBCb3goKVxuICB9XG5cbiAgdGFyZ2V0cygpIHtcbiAgICByZXR1cm4gYmFzZUZpbmQoJ3N2ZyBbZmlsbCo9JyArIHRoaXMuaWQoKSArICddJylcbiAgfVxuXG4gIC8vIEFsaWFzIHN0cmluZyBjb252ZXJzaW9uIHRvIGZpbGxcbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMudXJsKClcbiAgfVxuXG4gIC8vIFVwZGF0ZSBwYXR0ZXJuIGJ5IHJlYnVpbGRpbmdcbiAgdXBkYXRlKGJsb2NrKSB7XG4gICAgLy8gcmVtb3ZlIGNvbnRlbnRcbiAgICB0aGlzLmNsZWFyKClcblxuICAgIC8vIGludm9rZSBwYXNzZWQgYmxvY2tcbiAgICBpZiAodHlwZW9mIGJsb2NrID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBibG9jay5jYWxsKHRoaXMsIHRoaXMpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFJldHVybiB0aGUgZmlsbCBpZFxuICB1cmwoKSB7XG4gICAgcmV0dXJuICd1cmwoIycgKyB0aGlzLmlkKCkgKyAnKSdcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgcGF0dGVybiBlbGVtZW50IGluIGRlZnNcbiAgICBwYXR0ZXJuKC4uLmFyZ3MpIHtcbiAgICAgIHJldHVybiB0aGlzLmRlZnMoKS5wYXR0ZXJuKC4uLmFyZ3MpXG4gICAgfVxuICB9LFxuICBEZWZzOiB7XG4gICAgcGF0dGVybjogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHdpZHRoLCBoZWlnaHQsIGJsb2NrKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFBhdHRlcm4oKSkudXBkYXRlKGJsb2NrKS5hdHRyKHtcbiAgICAgICAgeDogMCxcbiAgICAgICAgeTogMCxcbiAgICAgICAgd2lkdGg6IHdpZHRoLFxuICAgICAgICBoZWlnaHQ6IGhlaWdodCxcbiAgICAgICAgcGF0dGVyblVuaXRzOiAndXNlclNwYWNlT25Vc2UnXG4gICAgICB9KVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFBhdHRlcm4sICdQYXR0ZXJuJylcbiIsICJpbXBvcnQgeyBpc0ltYWdlIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3JlZ2V4LmpzJ1xuaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgb2ZmLCBvbiB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9ldmVudC5qcydcbmltcG9ydCB7IHJlZ2lzdGVyQXR0ckhvb2sgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvYXR0ci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgeyB4bGluayB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9uYW1lc3BhY2VzLmpzJ1xuaW1wb3J0IFBhdHRlcm4gZnJvbSAnLi9QYXR0ZXJuLmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5pbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJbWFnZSBleHRlbmRzIFNoYXBlIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdpbWFnZScsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIChyZSlsb2FkIGltYWdlXG4gIGxvYWQodXJsLCBjYWxsYmFjaykge1xuICAgIGlmICghdXJsKSByZXR1cm4gdGhpc1xuXG4gICAgY29uc3QgaW1nID0gbmV3IGdsb2JhbHMud2luZG93LkltYWdlKClcblxuICAgIG9uKFxuICAgICAgaW1nLFxuICAgICAgJ2xvYWQnLFxuICAgICAgZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgY29uc3QgcCA9IHRoaXMucGFyZW50KFBhdHRlcm4pXG5cbiAgICAgICAgLy8gZW5zdXJlIGltYWdlIHNpemVcbiAgICAgICAgaWYgKHRoaXMud2lkdGgoKSA9PT0gMCAmJiB0aGlzLmhlaWdodCgpID09PSAwKSB7XG4gICAgICAgICAgdGhpcy5zaXplKGltZy53aWR0aCwgaW1nLmhlaWdodClcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwIGluc3RhbmNlb2YgUGF0dGVybikge1xuICAgICAgICAgIC8vIGVuc3VyZSBwYXR0ZXJuIHNpemUgaWYgbm90IHNldFxuICAgICAgICAgIGlmIChwLndpZHRoKCkgPT09IDAgJiYgcC5oZWlnaHQoKSA9PT0gMCkge1xuICAgICAgICAgICAgcC5zaXplKHRoaXMud2lkdGgoKSwgdGhpcy5oZWlnaHQoKSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHlwZW9mIGNhbGxiYWNrID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgY2FsbGJhY2suY2FsbCh0aGlzLCBlKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdGhpc1xuICAgIClcblxuICAgIG9uKGltZywgJ2xvYWQgZXJyb3InLCBmdW5jdGlvbiAoKSB7XG4gICAgICAvLyBkb250IGZvcmdldCB0byB1bmJpbmQgbWVtb3J5IGxlYWtpbmcgZXZlbnRzXG4gICAgICBvZmYoaW1nKVxuICAgIH0pXG5cbiAgICByZXR1cm4gdGhpcy5hdHRyKCdocmVmJywgKGltZy5zcmMgPSB1cmwpLCB4bGluaylcbiAgfVxufVxuXG5yZWdpc3RlckF0dHJIb29rKGZ1bmN0aW9uIChhdHRyLCB2YWwsIF90aGlzKSB7XG4gIC8vIGNvbnZlcnQgaW1hZ2UgZmlsbCBhbmQgc3Ryb2tlIHRvIHBhdHRlcm5zXG4gIGlmIChhdHRyID09PSAnZmlsbCcgfHwgYXR0ciA9PT0gJ3N0cm9rZScpIHtcbiAgICBpZiAoaXNJbWFnZS50ZXN0KHZhbCkpIHtcbiAgICAgIHZhbCA9IF90aGlzLnJvb3QoKS5kZWZzKCkuaW1hZ2UodmFsKVxuICAgIH1cbiAgfVxuXG4gIGlmICh2YWwgaW5zdGFuY2VvZiBJbWFnZSkge1xuICAgIHZhbCA9IF90aGlzXG4gICAgICAucm9vdCgpXG4gICAgICAuZGVmcygpXG4gICAgICAucGF0dGVybigwLCAwLCAocGF0dGVybikgPT4ge1xuICAgICAgICBwYXR0ZXJuLmFkZCh2YWwpXG4gICAgICB9KVxuICB9XG5cbiAgcmV0dXJuIHZhbFxufSlcblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gY3JlYXRlIGltYWdlIGVsZW1lbnQsIGxvYWQgaW1hZ2UgYW5kIHNldCBpdHMgc2l6ZVxuICAgIGltYWdlOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAoc291cmNlLCBjYWxsYmFjaykge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBJbWFnZSgpKS5zaXplKDAsIDApLmxvYWQoc291cmNlLCBjYWxsYmFjaylcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihJbWFnZSwgJ0ltYWdlJylcbiIsICJpbXBvcnQgeyBkZWxpbWl0ZXIgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgU1ZHQXJyYXkgZnJvbSAnLi9TVkdBcnJheS5qcydcbmltcG9ydCBCb3ggZnJvbSAnLi9Cb3guanMnXG5pbXBvcnQgTWF0cml4IGZyb20gJy4vTWF0cml4LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQb2ludEFycmF5IGV4dGVuZHMgU1ZHQXJyYXkge1xuICAvLyBHZXQgYm91bmRpbmcgYm94IG9mIHBvaW50c1xuICBiYm94KCkge1xuICAgIGxldCBtYXhYID0gLUluZmluaXR5XG4gICAgbGV0IG1heFkgPSAtSW5maW5pdHlcbiAgICBsZXQgbWluWCA9IEluZmluaXR5XG4gICAgbGV0IG1pblkgPSBJbmZpbml0eVxuICAgIHRoaXMuZm9yRWFjaChmdW5jdGlvbiAoZWwpIHtcbiAgICAgIG1heFggPSBNYXRoLm1heChlbFswXSwgbWF4WClcbiAgICAgIG1heFkgPSBNYXRoLm1heChlbFsxXSwgbWF4WSlcbiAgICAgIG1pblggPSBNYXRoLm1pbihlbFswXSwgbWluWClcbiAgICAgIG1pblkgPSBNYXRoLm1pbihlbFsxXSwgbWluWSlcbiAgICB9KVxuICAgIHJldHVybiBuZXcgQm94KG1pblgsIG1pblksIG1heFggLSBtaW5YLCBtYXhZIC0gbWluWSlcbiAgfVxuXG4gIC8vIE1vdmUgcG9pbnQgc3RyaW5nXG4gIG1vdmUoeCwgeSkge1xuICAgIGNvbnN0IGJveCA9IHRoaXMuYmJveCgpXG5cbiAgICAvLyBnZXQgcmVsYXRpdmUgb2Zmc2V0XG4gICAgeCAtPSBib3gueFxuICAgIHkgLT0gYm94LnlcblxuICAgIC8vIG1vdmUgZXZlcnkgcG9pbnRcbiAgICBpZiAoIWlzTmFOKHgpICYmICFpc05hTih5KSkge1xuICAgICAgZm9yIChsZXQgaSA9IHRoaXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgdGhpc1tpXSA9IFt0aGlzW2ldWzBdICsgeCwgdGhpc1tpXVsxXSArIHldXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFBhcnNlIHBvaW50IHN0cmluZyBhbmQgZmxhdCBhcnJheVxuICBwYXJzZShhcnJheSA9IFswLCAwXSkge1xuICAgIGNvbnN0IHBvaW50cyA9IFtdXG5cbiAgICAvLyBpZiBpdCBpcyBhbiBhcnJheSwgd2UgZmxhdHRlbiBpdCBhbmQgdGhlcmVmb3JlIGNsb25lIGl0IHRvIDEgZGVwdGhzXG4gICAgaWYgKGFycmF5IGluc3RhbmNlb2YgQXJyYXkpIHtcbiAgICAgIGFycmF5ID0gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSwgYXJyYXkpXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEVsc2UsIGl0IGlzIGNvbnNpZGVyZWQgYXMgYSBzdHJpbmdcbiAgICAgIC8vIHBhcnNlIHBvaW50c1xuICAgICAgYXJyYXkgPSBhcnJheS50cmltKCkuc3BsaXQoZGVsaW1pdGVyKS5tYXAocGFyc2VGbG9hdClcbiAgICB9XG5cbiAgICAvLyB2YWxpZGF0ZSBwb2ludHMgLSBodHRwczovL3N2Z3dnLm9yZy9zdmcyLWRyYWZ0L3NoYXBlcy5odG1sI0RhdGFUeXBlUG9pbnRzXG4gICAgLy8gT2RkIG51bWJlciBvZiBjb29yZGluYXRlcyBpcyBhbiBlcnJvci4gSW4gc3VjaCBjYXNlcywgZHJvcCB0aGUgbGFzdCBvZGQgY29vcmRpbmF0ZS5cbiAgICBpZiAoYXJyYXkubGVuZ3RoICUgMiAhPT0gMCkgYXJyYXkucG9wKClcblxuICAgIC8vIHdyYXAgcG9pbnRzIGluIHR3by10dXBsZXNcbiAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpID0gaSArIDIpIHtcbiAgICAgIHBvaW50cy5wdXNoKFthcnJheVtpXSwgYXJyYXlbaSArIDFdXSlcbiAgICB9XG5cbiAgICByZXR1cm4gcG9pbnRzXG4gIH1cblxuICAvLyBSZXNpemUgcG9seSBzdHJpbmdcbiAgc2l6ZSh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgbGV0IGlcbiAgICBjb25zdCBib3ggPSB0aGlzLmJib3goKVxuXG4gICAgLy8gcmVjYWxjdWxhdGUgcG9zaXRpb24gb2YgYWxsIHBvaW50cyBhY2NvcmRpbmcgdG8gbmV3IHNpemVcbiAgICBmb3IgKGkgPSB0aGlzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICBpZiAoYm94LndpZHRoKVxuICAgICAgICB0aGlzW2ldWzBdID0gKCh0aGlzW2ldWzBdIC0gYm94LngpICogd2lkdGgpIC8gYm94LndpZHRoICsgYm94LnhcbiAgICAgIGlmIChib3guaGVpZ2h0KVxuICAgICAgICB0aGlzW2ldWzFdID0gKCh0aGlzW2ldWzFdIC0gYm94LnkpICogaGVpZ2h0KSAvIGJveC5oZWlnaHQgKyBib3gueVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBDb252ZXJ0IGFycmF5IHRvIGxpbmUgb2JqZWN0XG4gIHRvTGluZSgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgeDE6IHRoaXNbMF1bMF0sXG4gICAgICB5MTogdGhpc1swXVsxXSxcbiAgICAgIHgyOiB0aGlzWzFdWzBdLFxuICAgICAgeTI6IHRoaXNbMV1bMV1cbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFycmF5IHRvIHN0cmluZ1xuICB0b1N0cmluZygpIHtcbiAgICBjb25zdCBhcnJheSA9IFtdXG4gICAgLy8gY29udmVydCB0byBhIHBvbHkgcG9pbnQgc3RyaW5nXG4gICAgZm9yIChsZXQgaSA9IDAsIGlsID0gdGhpcy5sZW5ndGg7IGkgPCBpbDsgaSsrKSB7XG4gICAgICBhcnJheS5wdXNoKHRoaXNbaV0uam9pbignLCcpKVxuICAgIH1cblxuICAgIHJldHVybiBhcnJheS5qb2luKCcgJylcbiAgfVxuXG4gIHRyYW5zZm9ybShtKSB7XG4gICAgcmV0dXJuIHRoaXMuY2xvbmUoKS50cmFuc2Zvcm1PKG0pXG4gIH1cblxuICAvLyB0cmFuc2Zvcm0gcG9pbnRzIHdpdGggbWF0cml4IChzaW1pbGFyIHRvIFBvaW50LnRyYW5zZm9ybSlcbiAgdHJhbnNmb3JtTyhtKSB7XG4gICAgaWYgKCFNYXRyaXguaXNNYXRyaXhMaWtlKG0pKSB7XG4gICAgICBtID0gbmV3IE1hdHJpeChtKVxuICAgIH1cblxuICAgIGZvciAobGV0IGkgPSB0aGlzLmxlbmd0aDsgaS0tOyApIHtcbiAgICAgIC8vIFBlcmZvcm0gdGhlIG1hdHJpeCBtdWx0aXBsaWNhdGlvblxuICAgICAgY29uc3QgW3gsIHldID0gdGhpc1tpXVxuICAgICAgdGhpc1tpXVswXSA9IG0uYSAqIHggKyBtLmMgKiB5ICsgbS5lXG4gICAgICB0aGlzW2ldWzFdID0gbS5iICogeCArIG0uZCAqIHkgKyBtLmZcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG4iLCAiaW1wb3J0IFBvaW50QXJyYXkgZnJvbSAnLi4vLi4vdHlwZXMvUG9pbnRBcnJheS5qcydcblxuZXhwb3J0IGNvbnN0IE1vcnBoQXJyYXkgPSBQb2ludEFycmF5XG5cbi8vIE1vdmUgYnkgbGVmdCB0b3AgY29ybmVyIG92ZXIgeC1heGlzXG5leHBvcnQgZnVuY3Rpb24geCh4KSB7XG4gIHJldHVybiB4ID09IG51bGwgPyB0aGlzLmJib3goKS54IDogdGhpcy5tb3ZlKHgsIHRoaXMuYmJveCgpLnkpXG59XG5cbi8vIE1vdmUgYnkgbGVmdCB0b3AgY29ybmVyIG92ZXIgeS1heGlzXG5leHBvcnQgZnVuY3Rpb24geSh5KSB7XG4gIHJldHVybiB5ID09IG51bGwgPyB0aGlzLmJib3goKS55IDogdGhpcy5tb3ZlKHRoaXMuYmJveCgpLngsIHkpXG59XG5cbi8vIFNldCB3aWR0aCBvZiBlbGVtZW50XG5leHBvcnQgZnVuY3Rpb24gd2lkdGgod2lkdGgpIHtcbiAgY29uc3QgYiA9IHRoaXMuYmJveCgpXG4gIHJldHVybiB3aWR0aCA9PSBudWxsID8gYi53aWR0aCA6IHRoaXMuc2l6ZSh3aWR0aCwgYi5oZWlnaHQpXG59XG5cbi8vIFNldCBoZWlnaHQgb2YgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIGhlaWdodChoZWlnaHQpIHtcbiAgY29uc3QgYiA9IHRoaXMuYmJveCgpXG4gIHJldHVybiBoZWlnaHQgPT0gbnVsbCA/IGIuaGVpZ2h0IDogdGhpcy5zaXplKGIud2lkdGgsIGhlaWdodClcbn1cbiIsICJpbXBvcnQge1xuICBleHRlbmQsXG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyBwcm9wb3J0aW9uYWxTaXplIH0gZnJvbSAnLi4vdXRpbHMvdXRpbHMuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IFBvaW50QXJyYXkgZnJvbSAnLi4vdHlwZXMvUG9pbnRBcnJheS5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuaW1wb3J0ICogYXMgcG9pbnRlZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcG9pbnRlZC5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGluZSBleHRlbmRzIFNoYXBlIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygnbGluZScsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIEdldCBhcnJheVxuICBhcnJheSgpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50QXJyYXkoW1xuICAgICAgW3RoaXMuYXR0cigneDEnKSwgdGhpcy5hdHRyKCd5MScpXSxcbiAgICAgIFt0aGlzLmF0dHIoJ3gyJyksIHRoaXMuYXR0cigneTInKV1cbiAgICBdKVxuICB9XG5cbiAgLy8gTW92ZSBieSBsZWZ0IHRvcCBjb3JuZXJcbiAgbW92ZSh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cih0aGlzLmFycmF5KCkubW92ZSh4LCB5KS50b0xpbmUoKSlcbiAgfVxuXG4gIC8vIE92ZXJ3cml0ZSBuYXRpdmUgcGxvdCgpIG1ldGhvZFxuICBwbG90KHgxLCB5MSwgeDIsIHkyKSB7XG4gICAgaWYgKHgxID09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLmFycmF5KClcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB5MSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHgxID0geyB4MSwgeTEsIHgyLCB5MiB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHgxID0gbmV3IFBvaW50QXJyYXkoeDEpLnRvTGluZSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYXR0cih4MSlcbiAgfVxuXG4gIC8vIFNldCBlbGVtZW50IHNpemUgdG8gZ2l2ZW4gd2lkdGggYW5kIGhlaWdodFxuICBzaXplKHdpZHRoLCBoZWlnaHQpIHtcbiAgICBjb25zdCBwID0gcHJvcG9ydGlvbmFsU2l6ZSh0aGlzLCB3aWR0aCwgaGVpZ2h0KVxuICAgIHJldHVybiB0aGlzLmF0dHIodGhpcy5hcnJheSgpLnNpemUocC53aWR0aCwgcC5oZWlnaHQpLnRvTGluZSgpKVxuICB9XG59XG5cbmV4dGVuZChMaW5lLCBwb2ludGVkKVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgYSBsaW5lIGVsZW1lbnRcbiAgICBsaW5lOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAoLi4uYXJncykge1xuICAgICAgLy8gbWFrZSBzdXJlIHBsb3QgaXMgY2FsbGVkIGFzIGEgc2V0dGVyXG4gICAgICAvLyB4MSBpcyBub3QgbmVjZXNzYXJpbHkgYSBudW1iZXIsIGl0IGNhbiBhbHNvIGJlIGFuIGFycmF5LCBhIHN0cmluZyBhbmQgYSBQb2ludEFycmF5XG4gICAgICByZXR1cm4gTGluZS5wcm90b3R5cGUucGxvdC5hcHBseShcbiAgICAgICAgdGhpcy5wdXQobmV3IExpbmUoKSksXG4gICAgICAgIGFyZ3NbMF0gIT0gbnVsbCA/IGFyZ3MgOiBbMCwgMCwgMCwgMF1cbiAgICAgIClcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihMaW5lLCAnTGluZScpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1hcmtlciBleHRlbmRzIENvbnRhaW5lciB7XG4gIC8vIEluaXRpYWxpemUgbm9kZVxuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ21hcmtlcicsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIFNldCBoZWlnaHQgb2YgZWxlbWVudFxuICBoZWlnaHQoaGVpZ2h0KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignbWFya2VySGVpZ2h0JywgaGVpZ2h0KVxuICB9XG5cbiAgb3JpZW50KG9yaWVudCkge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ29yaWVudCcsIG9yaWVudClcbiAgfVxuXG4gIC8vIFNldCBtYXJrZXIgcmVmWCBhbmQgcmVmWVxuICByZWYoeCwgeSkge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ3JlZlgnLCB4KS5hdHRyKCdyZWZZJywgeSlcbiAgfVxuXG4gIC8vIFJldHVybiB0aGUgZmlsbCBpZFxuICB0b1N0cmluZygpIHtcbiAgICByZXR1cm4gJ3VybCgjJyArIHRoaXMuaWQoKSArICcpJ1xuICB9XG5cbiAgLy8gVXBkYXRlIG1hcmtlclxuICB1cGRhdGUoYmxvY2spIHtcbiAgICAvLyByZW1vdmUgYWxsIGNvbnRlbnRcbiAgICB0aGlzLmNsZWFyKClcblxuICAgIC8vIGludm9rZSBwYXNzZWQgYmxvY2tcbiAgICBpZiAodHlwZW9mIGJsb2NrID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBibG9jay5jYWxsKHRoaXMsIHRoaXMpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFNldCB3aWR0aCBvZiBlbGVtZW50XG4gIHdpZHRoKHdpZHRoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignbWFya2VyV2lkdGgnLCB3aWR0aClcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICBtYXJrZXIoLi4uYXJncykge1xuICAgICAgLy8gQ3JlYXRlIG1hcmtlciBlbGVtZW50IGluIGRlZnNcbiAgICAgIHJldHVybiB0aGlzLmRlZnMoKS5tYXJrZXIoLi4uYXJncylcbiAgICB9XG4gIH0sXG4gIERlZnM6IHtcbiAgICAvLyBDcmVhdGUgbWFya2VyXG4gICAgbWFya2VyOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAod2lkdGgsIGhlaWdodCwgYmxvY2spIHtcbiAgICAgIC8vIFNldCBkZWZhdWx0IHZpZXdib3ggdG8gbWF0Y2ggdGhlIHdpZHRoIGFuZCBoZWlnaHQsIHNldCByZWYgdG8gY3ggYW5kIGN5IGFuZCBzZXQgb3JpZW50IHRvIGF1dG9cbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgTWFya2VyKCkpXG4gICAgICAgIC5zaXplKHdpZHRoLCBoZWlnaHQpXG4gICAgICAgIC5yZWYod2lkdGggLyAyLCBoZWlnaHQgLyAyKVxuICAgICAgICAudmlld2JveCgwLCAwLCB3aWR0aCwgaGVpZ2h0KVxuICAgICAgICAuYXR0cignb3JpZW50JywgJ2F1dG8nKVxuICAgICAgICAudXBkYXRlKGJsb2NrKVxuICAgIH0pXG4gIH0sXG4gIG1hcmtlcjoge1xuICAgIC8vIENyZWF0ZSBhbmQgYXR0YWNoIG1hcmtlcnNcbiAgICBtYXJrZXIobWFya2VyLCB3aWR0aCwgaGVpZ2h0LCBibG9jaykge1xuICAgICAgbGV0IGF0dHIgPSBbJ21hcmtlciddXG5cbiAgICAgIC8vIEJ1aWxkIGF0dHJpYnV0ZSBuYW1lXG4gICAgICBpZiAobWFya2VyICE9PSAnYWxsJykgYXR0ci5wdXNoKG1hcmtlcilcbiAgICAgIGF0dHIgPSBhdHRyLmpvaW4oJy0nKVxuXG4gICAgICAvLyBTZXQgbWFya2VyIGF0dHJpYnV0ZVxuICAgICAgbWFya2VyID1cbiAgICAgICAgYXJndW1lbnRzWzFdIGluc3RhbmNlb2YgTWFya2VyXG4gICAgICAgICAgPyBhcmd1bWVudHNbMV1cbiAgICAgICAgICA6IHRoaXMuZGVmcygpLm1hcmtlcih3aWR0aCwgaGVpZ2h0LCBibG9jaylcblxuICAgICAgcmV0dXJuIHRoaXMuYXR0cihhdHRyLCBtYXJrZXIpXG4gICAgfVxuICB9XG59KVxuXG5yZWdpc3RlcihNYXJrZXIsICdNYXJrZXInKVxuIiwgImltcG9ydCB7IHRpbWVsaW5lIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2RlZmF1bHRzLmpzJ1xuaW1wb3J0IHsgZXh0ZW5kIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcblxuLyoqKlxuQmFzZSBDbGFzc1xuPT09PT09PT09PVxuVGhlIGJhc2Ugc3RlcHBlciBjbGFzcyB0aGF0IHdpbGwgYmVcbioqKi9cblxuZnVuY3Rpb24gbWFrZVNldHRlckdldHRlcihrLCBmKSB7XG4gIHJldHVybiBmdW5jdGlvbiAodikge1xuICAgIGlmICh2ID09IG51bGwpIHJldHVybiB0aGlzW2tdXG4gICAgdGhpc1trXSA9IHZcbiAgICBpZiAoZikgZi5jYWxsKHRoaXMpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZWFzaW5nID0ge1xuICAnLSc6IGZ1bmN0aW9uIChwb3MpIHtcbiAgICByZXR1cm4gcG9zXG4gIH0sXG4gICc8Pic6IGZ1bmN0aW9uIChwb3MpIHtcbiAgICByZXR1cm4gLU1hdGguY29zKHBvcyAqIE1hdGguUEkpIC8gMiArIDAuNVxuICB9LFxuICAnPic6IGZ1bmN0aW9uIChwb3MpIHtcbiAgICByZXR1cm4gTWF0aC5zaW4oKHBvcyAqIE1hdGguUEkpIC8gMilcbiAgfSxcbiAgJzwnOiBmdW5jdGlvbiAocG9zKSB7XG4gICAgcmV0dXJuIC1NYXRoLmNvcygocG9zICogTWF0aC5QSSkgLyAyKSArIDFcbiAgfSxcbiAgYmV6aWVyOiBmdW5jdGlvbiAoeDEsIHkxLCB4MiwgeTIpIHtcbiAgICAvLyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1lYXNpbmctMS8jY3ViaWMtYmV6aWVyLWFsZ29cbiAgICByZXR1cm4gZnVuY3Rpb24gKHQpIHtcbiAgICAgIGlmICh0IDwgMCkge1xuICAgICAgICBpZiAoeDEgPiAwKSB7XG4gICAgICAgICAgcmV0dXJuICh5MSAvIHgxKSAqIHRcbiAgICAgICAgfSBlbHNlIGlmICh4MiA+IDApIHtcbiAgICAgICAgICByZXR1cm4gKHkyIC8geDIpICogdFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiAwXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodCA+IDEpIHtcbiAgICAgICAgaWYgKHgyIDwgMSkge1xuICAgICAgICAgIHJldHVybiAoKDEgLSB5MikgLyAoMSAtIHgyKSkgKiB0ICsgKHkyIC0geDIpIC8gKDEgLSB4MilcbiAgICAgICAgfSBlbHNlIGlmICh4MSA8IDEpIHtcbiAgICAgICAgICByZXR1cm4gKCgxIC0geTEpIC8gKDEgLSB4MSkpICogdCArICh5MSAtIHgxKSAvICgxIC0geDEpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIDFcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIDMgKiB0ICogKDEgLSB0KSAqKiAyICogeTEgKyAzICogdCAqKiAyICogKDEgLSB0KSAqIHkyICsgdCAqKiAzXG4gICAgICB9XG4gICAgfVxuICB9LFxuICAvLyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1lYXNpbmctMS8jc3RlcC10aW1pbmctZnVuY3Rpb24tYWxnb1xuICBzdGVwczogZnVuY3Rpb24gKHN0ZXBzLCBzdGVwUG9zaXRpb24gPSAnZW5kJykge1xuICAgIC8vIGRlYWwgd2l0aCBcImp1bXAtXCIgcHJlZml4XG4gICAgc3RlcFBvc2l0aW9uID0gc3RlcFBvc2l0aW9uLnNwbGl0KCctJykucmV2ZXJzZSgpWzBdXG5cbiAgICBsZXQganVtcHMgPSBzdGVwc1xuICAgIGlmIChzdGVwUG9zaXRpb24gPT09ICdub25lJykge1xuICAgICAgLS1qdW1wc1xuICAgIH0gZWxzZSBpZiAoc3RlcFBvc2l0aW9uID09PSAnYm90aCcpIHtcbiAgICAgICsranVtcHNcbiAgICB9XG5cbiAgICAvLyBUaGUgYmVmb3JlRmxhZyBpcyBlc3NlbnRpYWxseSB1c2VsZXNzXG4gICAgcmV0dXJuICh0LCBiZWZvcmVGbGFnID0gZmFsc2UpID0+IHtcbiAgICAgIC8vIFN0ZXAgaXMgY2FsbGVkIGN1cnJlbnRTdGVwIGluIHJlZmVyZW5jZWQgdXJsXG4gICAgICBsZXQgc3RlcCA9IE1hdGguZmxvb3IodCAqIHN0ZXBzKVxuICAgICAgY29uc3QganVtcGluZyA9ICh0ICogc3RlcCkgJSAxID09PSAwXG5cbiAgICAgIGlmIChzdGVwUG9zaXRpb24gPT09ICdzdGFydCcgfHwgc3RlcFBvc2l0aW9uID09PSAnYm90aCcpIHtcbiAgICAgICAgKytzdGVwXG4gICAgICB9XG5cbiAgICAgIGlmIChiZWZvcmVGbGFnICYmIGp1bXBpbmcpIHtcbiAgICAgICAgLS1zdGVwXG4gICAgICB9XG5cbiAgICAgIGlmICh0ID49IDAgJiYgc3RlcCA8IDApIHtcbiAgICAgICAgc3RlcCA9IDBcbiAgICAgIH1cblxuICAgICAgaWYgKHQgPD0gMSAmJiBzdGVwID4ganVtcHMpIHtcbiAgICAgICAgc3RlcCA9IGp1bXBzXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdGVwIC8ganVtcHNcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFN0ZXBwZXIge1xuICBkb25lKCkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG59XG5cbi8qKipcbkVhc2luZyBGdW5jdGlvbnNcbj09PT09PT09PT09PT09PT1cbioqKi9cblxuZXhwb3J0IGNsYXNzIEVhc2UgZXh0ZW5kcyBTdGVwcGVyIHtcbiAgY29uc3RydWN0b3IoZm4gPSB0aW1lbGluZS5lYXNlKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMuZWFzZSA9IGVhc2luZ1tmbl0gfHwgZm5cbiAgfVxuXG4gIHN0ZXAoZnJvbSwgdG8sIHBvcykge1xuICAgIGlmICh0eXBlb2YgZnJvbSAhPT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBwb3MgPCAxID8gZnJvbSA6IHRvXG4gICAgfVxuICAgIHJldHVybiBmcm9tICsgKHRvIC0gZnJvbSkgKiB0aGlzLmVhc2UocG9zKVxuICB9XG59XG5cbi8qKipcbkNvbnRyb2xsZXIgVHlwZXNcbj09PT09PT09PT09PT09PT1cbioqKi9cblxuZXhwb3J0IGNsYXNzIENvbnRyb2xsZXIgZXh0ZW5kcyBTdGVwcGVyIHtcbiAgY29uc3RydWN0b3IoZm4pIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5zdGVwcGVyID0gZm5cbiAgfVxuXG4gIGRvbmUoYykge1xuICAgIHJldHVybiBjLmRvbmVcbiAgfVxuXG4gIHN0ZXAoY3VycmVudCwgdGFyZ2V0LCBkdCwgYykge1xuICAgIHJldHVybiB0aGlzLnN0ZXBwZXIoY3VycmVudCwgdGFyZ2V0LCBkdCwgYylcbiAgfVxufVxuXG5mdW5jdGlvbiByZWNhbGN1bGF0ZSgpIHtcbiAgLy8gQXBwbHkgdGhlIGRlZmF1bHQgcGFyYW1ldGVyc1xuICBjb25zdCBkdXJhdGlvbiA9ICh0aGlzLl9kdXJhdGlvbiB8fCA1MDApIC8gMTAwMFxuICBjb25zdCBvdmVyc2hvb3QgPSB0aGlzLl9vdmVyc2hvb3QgfHwgMFxuXG4gIC8vIENhbGN1bGF0ZSB0aGUgUElEIG5hdHVyYWwgcmVzcG9uc2VcbiAgY29uc3QgZXBzID0gMWUtMTBcbiAgY29uc3QgcGkgPSBNYXRoLlBJXG4gIGNvbnN0IG9zID0gTWF0aC5sb2cob3ZlcnNob290IC8gMTAwICsgZXBzKVxuICBjb25zdCB6ZXRhID0gLW9zIC8gTWF0aC5zcXJ0KHBpICogcGkgKyBvcyAqIG9zKVxuICBjb25zdCB3biA9IDMuOSAvICh6ZXRhICogZHVyYXRpb24pXG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBTcHJpbmcgdmFsdWVzXG4gIHRoaXMuZCA9IDIgKiB6ZXRhICogd25cbiAgdGhpcy5rID0gd24gKiB3blxufVxuXG5leHBvcnQgY2xhc3MgU3ByaW5nIGV4dGVuZHMgQ29udHJvbGxlciB7XG4gIGNvbnN0cnVjdG9yKGR1cmF0aW9uID0gNTAwLCBvdmVyc2hvb3QgPSAwKSB7XG4gICAgc3VwZXIoKVxuICAgIHRoaXMuZHVyYXRpb24oZHVyYXRpb24pLm92ZXJzaG9vdChvdmVyc2hvb3QpXG4gIH1cblxuICBzdGVwKGN1cnJlbnQsIHRhcmdldCwgZHQsIGMpIHtcbiAgICBpZiAodHlwZW9mIGN1cnJlbnQgPT09ICdzdHJpbmcnKSByZXR1cm4gY3VycmVudFxuICAgIGMuZG9uZSA9IGR0ID09PSBJbmZpbml0eVxuICAgIGlmIChkdCA9PT0gSW5maW5pdHkpIHJldHVybiB0YXJnZXRcbiAgICBpZiAoZHQgPT09IDApIHJldHVybiBjdXJyZW50XG5cbiAgICBpZiAoZHQgPiAxMDApIGR0ID0gMTZcblxuICAgIGR0IC89IDEwMDBcblxuICAgIC8vIEdldCB0aGUgcHJldmlvdXMgdmVsb2NpdHlcbiAgICBjb25zdCB2ZWxvY2l0eSA9IGMudmVsb2NpdHkgfHwgMFxuXG4gICAgLy8gQXBwbHkgdGhlIGNvbnRyb2wgdG8gZ2V0IHRoZSBuZXcgcG9zaXRpb24gYW5kIHN0b3JlIGl0XG4gICAgY29uc3QgYWNjZWxlcmF0aW9uID0gLXRoaXMuZCAqIHZlbG9jaXR5IC0gdGhpcy5rICogKGN1cnJlbnQgLSB0YXJnZXQpXG4gICAgY29uc3QgbmV3UG9zaXRpb24gPSBjdXJyZW50ICsgdmVsb2NpdHkgKiBkdCArIChhY2NlbGVyYXRpb24gKiBkdCAqIGR0KSAvIDJcblxuICAgIC8vIFN0b3JlIHRoZSB2ZWxvY2l0eVxuICAgIGMudmVsb2NpdHkgPSB2ZWxvY2l0eSArIGFjY2VsZXJhdGlvbiAqIGR0XG5cbiAgICAvLyBGaWd1cmUgb3V0IGlmIHdlIGhhdmUgY29udmVyZ2VkLCBhbmQgaWYgc28sIHBhc3MgdGhlIHZhbHVlXG4gICAgYy5kb25lID0gTWF0aC5hYnModGFyZ2V0IC0gbmV3UG9zaXRpb24pICsgTWF0aC5hYnModmVsb2NpdHkpIDwgMC4wMDJcbiAgICByZXR1cm4gYy5kb25lID8gdGFyZ2V0IDogbmV3UG9zaXRpb25cbiAgfVxufVxuXG5leHRlbmQoU3ByaW5nLCB7XG4gIGR1cmF0aW9uOiBtYWtlU2V0dGVyR2V0dGVyKCdfZHVyYXRpb24nLCByZWNhbGN1bGF0ZSksXG4gIG92ZXJzaG9vdDogbWFrZVNldHRlckdldHRlcignX292ZXJzaG9vdCcsIHJlY2FsY3VsYXRlKVxufSlcblxuZXhwb3J0IGNsYXNzIFBJRCBleHRlbmRzIENvbnRyb2xsZXIge1xuICBjb25zdHJ1Y3RvcihwID0gMC4xLCBpID0gMC4wMSwgZCA9IDAsIHdpbmR1cCA9IDEwMDApIHtcbiAgICBzdXBlcigpXG4gICAgdGhpcy5wKHApLmkoaSkuZChkKS53aW5kdXAod2luZHVwKVxuICB9XG5cbiAgc3RlcChjdXJyZW50LCB0YXJnZXQsIGR0LCBjKSB7XG4gICAgaWYgKHR5cGVvZiBjdXJyZW50ID09PSAnc3RyaW5nJykgcmV0dXJuIGN1cnJlbnRcbiAgICBjLmRvbmUgPSBkdCA9PT0gSW5maW5pdHlcblxuICAgIGlmIChkdCA9PT0gSW5maW5pdHkpIHJldHVybiB0YXJnZXRcbiAgICBpZiAoZHQgPT09IDApIHJldHVybiBjdXJyZW50XG5cbiAgICBjb25zdCBwID0gdGFyZ2V0IC0gY3VycmVudFxuICAgIGxldCBpID0gKGMuaW50ZWdyYWwgfHwgMCkgKyBwICogZHRcbiAgICBjb25zdCBkID0gKHAgLSAoYy5lcnJvciB8fCAwKSkgLyBkdFxuICAgIGNvbnN0IHdpbmR1cCA9IHRoaXMuX3dpbmR1cFxuXG4gICAgLy8gYW50aXdpbmR1cFxuICAgIGlmICh3aW5kdXAgIT09IGZhbHNlKSB7XG4gICAgICBpID0gTWF0aC5tYXgoLXdpbmR1cCwgTWF0aC5taW4oaSwgd2luZHVwKSlcbiAgICB9XG5cbiAgICBjLmVycm9yID0gcFxuICAgIGMuaW50ZWdyYWwgPSBpXG5cbiAgICBjLmRvbmUgPSBNYXRoLmFicyhwKSA8IDAuMDAxXG5cbiAgICByZXR1cm4gYy5kb25lID8gdGFyZ2V0IDogY3VycmVudCArICh0aGlzLlAgKiBwICsgdGhpcy5JICogaSArIHRoaXMuRCAqIGQpXG4gIH1cbn1cblxuZXh0ZW5kKFBJRCwge1xuICB3aW5kdXA6IG1ha2VTZXR0ZXJHZXR0ZXIoJ193aW5kdXAnKSxcbiAgcDogbWFrZVNldHRlckdldHRlcignUCcpLFxuICBpOiBtYWtlU2V0dGVyR2V0dGVyKCdJJyksXG4gIGQ6IG1ha2VTZXR0ZXJHZXR0ZXIoJ0QnKVxufSlcbiIsICJpbXBvcnQgeyBpc1BhdGhMZXR0ZXIgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcmVnZXguanMnXG5pbXBvcnQgUG9pbnQgZnJvbSAnLi4vdHlwZXMvUG9pbnQuanMnXG5cbmNvbnN0IHNlZ21lbnRQYXJhbWV0ZXJzID0ge1xuICBNOiAyLFxuICBMOiAyLFxuICBIOiAxLFxuICBWOiAxLFxuICBDOiA2LFxuICBTOiA0LFxuICBROiA0LFxuICBUOiAyLFxuICBBOiA3LFxuICBaOiAwXG59XG5cbmNvbnN0IHBhdGhIYW5kbGVycyA9IHtcbiAgTTogZnVuY3Rpb24gKGMsIHAsIHAwKSB7XG4gICAgcC54ID0gcDAueCA9IGNbMF1cbiAgICBwLnkgPSBwMC55ID0gY1sxXVxuXG4gICAgcmV0dXJuIFsnTScsIHAueCwgcC55XVxuICB9LFxuICBMOiBmdW5jdGlvbiAoYywgcCkge1xuICAgIHAueCA9IGNbMF1cbiAgICBwLnkgPSBjWzFdXG4gICAgcmV0dXJuIFsnTCcsIGNbMF0sIGNbMV1dXG4gIH0sXG4gIEg6IGZ1bmN0aW9uIChjLCBwKSB7XG4gICAgcC54ID0gY1swXVxuICAgIHJldHVybiBbJ0gnLCBjWzBdXVxuICB9LFxuICBWOiBmdW5jdGlvbiAoYywgcCkge1xuICAgIHAueSA9IGNbMF1cbiAgICByZXR1cm4gWydWJywgY1swXV1cbiAgfSxcbiAgQzogZnVuY3Rpb24gKGMsIHApIHtcbiAgICBwLnggPSBjWzRdXG4gICAgcC55ID0gY1s1XVxuICAgIHJldHVybiBbJ0MnLCBjWzBdLCBjWzFdLCBjWzJdLCBjWzNdLCBjWzRdLCBjWzVdXVxuICB9LFxuICBTOiBmdW5jdGlvbiAoYywgcCkge1xuICAgIHAueCA9IGNbMl1cbiAgICBwLnkgPSBjWzNdXG4gICAgcmV0dXJuIFsnUycsIGNbMF0sIGNbMV0sIGNbMl0sIGNbM11dXG4gIH0sXG4gIFE6IGZ1bmN0aW9uIChjLCBwKSB7XG4gICAgcC54ID0gY1syXVxuICAgIHAueSA9IGNbM11cbiAgICByZXR1cm4gWydRJywgY1swXSwgY1sxXSwgY1syXSwgY1szXV1cbiAgfSxcbiAgVDogZnVuY3Rpb24gKGMsIHApIHtcbiAgICBwLnggPSBjWzBdXG4gICAgcC55ID0gY1sxXVxuICAgIHJldHVybiBbJ1QnLCBjWzBdLCBjWzFdXVxuICB9LFxuICBaOiBmdW5jdGlvbiAoYywgcCwgcDApIHtcbiAgICBwLnggPSBwMC54XG4gICAgcC55ID0gcDAueVxuICAgIHJldHVybiBbJ1onXVxuICB9LFxuICBBOiBmdW5jdGlvbiAoYywgcCkge1xuICAgIHAueCA9IGNbNV1cbiAgICBwLnkgPSBjWzZdXG4gICAgcmV0dXJuIFsnQScsIGNbMF0sIGNbMV0sIGNbMl0sIGNbM10sIGNbNF0sIGNbNV0sIGNbNl1dXG4gIH1cbn1cblxuY29uc3QgbWxodnF0Y3NheiA9ICdtbGh2cXRjc2F6Jy5zcGxpdCgnJylcblxuZm9yIChsZXQgaSA9IDAsIGlsID0gbWxodnF0Y3Nhei5sZW5ndGg7IGkgPCBpbDsgKytpKSB7XG4gIHBhdGhIYW5kbGVyc1ttbGh2cXRjc2F6W2ldXSA9IChmdW5jdGlvbiAoaSkge1xuICAgIHJldHVybiBmdW5jdGlvbiAoYywgcCwgcDApIHtcbiAgICAgIGlmIChpID09PSAnSCcpIGNbMF0gPSBjWzBdICsgcC54XG4gICAgICBlbHNlIGlmIChpID09PSAnVicpIGNbMF0gPSBjWzBdICsgcC55XG4gICAgICBlbHNlIGlmIChpID09PSAnQScpIHtcbiAgICAgICAgY1s1XSA9IGNbNV0gKyBwLnhcbiAgICAgICAgY1s2XSA9IGNbNl0gKyBwLnlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZvciAobGV0IGogPSAwLCBqbCA9IGMubGVuZ3RoOyBqIDwgamw7ICsraikge1xuICAgICAgICAgIGNbal0gPSBjW2pdICsgKGogJSAyID8gcC55IDogcC54KVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBwYXRoSGFuZGxlcnNbaV0oYywgcCwgcDApXG4gICAgfVxuICB9KShtbGh2cXRjc2F6W2ldLnRvVXBwZXJDYXNlKCkpXG59XG5cbmZ1bmN0aW9uIG1ha2VBYnNvbHV0KHBhcnNlcikge1xuICBjb25zdCBjb21tYW5kID0gcGFyc2VyLnNlZ21lbnRbMF1cbiAgcmV0dXJuIHBhdGhIYW5kbGVyc1tjb21tYW5kXShwYXJzZXIuc2VnbWVudC5zbGljZSgxKSwgcGFyc2VyLnAsIHBhcnNlci5wMClcbn1cblxuZnVuY3Rpb24gc2VnbWVudENvbXBsZXRlKHBhcnNlcikge1xuICByZXR1cm4gKFxuICAgIHBhcnNlci5zZWdtZW50Lmxlbmd0aCAmJlxuICAgIHBhcnNlci5zZWdtZW50Lmxlbmd0aCAtIDEgPT09XG4gICAgICBzZWdtZW50UGFyYW1ldGVyc1twYXJzZXIuc2VnbWVudFswXS50b1VwcGVyQ2FzZSgpXVxuICApXG59XG5cbmZ1bmN0aW9uIHN0YXJ0TmV3U2VnbWVudChwYXJzZXIsIHRva2VuKSB7XG4gIHBhcnNlci5pbk51bWJlciAmJiBmaW5hbGl6ZU51bWJlcihwYXJzZXIsIGZhbHNlKVxuICBjb25zdCBwYXRoTGV0dGVyID0gaXNQYXRoTGV0dGVyLnRlc3QodG9rZW4pXG5cbiAgaWYgKHBhdGhMZXR0ZXIpIHtcbiAgICBwYXJzZXIuc2VnbWVudCA9IFt0b2tlbl1cbiAgfSBlbHNlIHtcbiAgICBjb25zdCBsYXN0Q29tbWFuZCA9IHBhcnNlci5sYXN0Q29tbWFuZFxuICAgIGNvbnN0IHNtYWxsID0gbGFzdENvbW1hbmQudG9Mb3dlckNhc2UoKVxuICAgIGNvbnN0IGlzU21hbGwgPSBsYXN0Q29tbWFuZCA9PT0gc21hbGxcbiAgICBwYXJzZXIuc2VnbWVudCA9IFtzbWFsbCA9PT0gJ20nID8gKGlzU21hbGwgPyAnbCcgOiAnTCcpIDogbGFzdENvbW1hbmRdXG4gIH1cblxuICBwYXJzZXIuaW5TZWdtZW50ID0gdHJ1ZVxuICBwYXJzZXIubGFzdENvbW1hbmQgPSBwYXJzZXIuc2VnbWVudFswXVxuXG4gIHJldHVybiBwYXRoTGV0dGVyXG59XG5cbmZ1bmN0aW9uIGZpbmFsaXplTnVtYmVyKHBhcnNlciwgaW5OdW1iZXIpIHtcbiAgaWYgKCFwYXJzZXIuaW5OdW1iZXIpIHRocm93IG5ldyBFcnJvcignUGFyc2VyIEVycm9yJylcbiAgcGFyc2VyLm51bWJlciAmJiBwYXJzZXIuc2VnbWVudC5wdXNoKHBhcnNlRmxvYXQocGFyc2VyLm51bWJlcikpXG4gIHBhcnNlci5pbk51bWJlciA9IGluTnVtYmVyXG4gIHBhcnNlci5udW1iZXIgPSAnJ1xuICBwYXJzZXIucG9pbnRTZWVuID0gZmFsc2VcbiAgcGFyc2VyLmhhc0V4cG9uZW50ID0gZmFsc2VcblxuICBpZiAoc2VnbWVudENvbXBsZXRlKHBhcnNlcikpIHtcbiAgICBmaW5hbGl6ZVNlZ21lbnQocGFyc2VyKVxuICB9XG59XG5cbmZ1bmN0aW9uIGZpbmFsaXplU2VnbWVudChwYXJzZXIpIHtcbiAgcGFyc2VyLmluU2VnbWVudCA9IGZhbHNlXG4gIGlmIChwYXJzZXIuYWJzb2x1dGUpIHtcbiAgICBwYXJzZXIuc2VnbWVudCA9IG1ha2VBYnNvbHV0KHBhcnNlcilcbiAgfVxuICBwYXJzZXIuc2VnbWVudHMucHVzaChwYXJzZXIuc2VnbWVudClcbn1cblxuZnVuY3Rpb24gaXNBcmNGbGFnKHBhcnNlcikge1xuICBpZiAoIXBhcnNlci5zZWdtZW50Lmxlbmd0aCkgcmV0dXJuIGZhbHNlXG4gIGNvbnN0IGlzQXJjID0gcGFyc2VyLnNlZ21lbnRbMF0udG9VcHBlckNhc2UoKSA9PT0gJ0EnXG4gIGNvbnN0IGxlbmd0aCA9IHBhcnNlci5zZWdtZW50Lmxlbmd0aFxuXG4gIHJldHVybiBpc0FyYyAmJiAobGVuZ3RoID09PSA0IHx8IGxlbmd0aCA9PT0gNSlcbn1cblxuZnVuY3Rpb24gaXNFeHBvbmVudGlhbChwYXJzZXIpIHtcbiAgcmV0dXJuIHBhcnNlci5sYXN0VG9rZW4udG9VcHBlckNhc2UoKSA9PT0gJ0UnXG59XG5cbmNvbnN0IHBhdGhEZWxpbWl0ZXJzID0gbmV3IFNldChbJyAnLCAnLCcsICdcXHQnLCAnXFxuJywgJ1xccicsICdcXGYnXSlcbmV4cG9ydCBmdW5jdGlvbiBwYXRoUGFyc2VyKGQsIHRvQWJzb2x1dGUgPSB0cnVlKSB7XG4gIGxldCBpbmRleCA9IDBcbiAgbGV0IHRva2VuID0gJydcbiAgY29uc3QgcGFyc2VyID0ge1xuICAgIHNlZ21lbnQ6IFtdLFxuICAgIGluTnVtYmVyOiBmYWxzZSxcbiAgICBudW1iZXI6ICcnLFxuICAgIGxhc3RUb2tlbjogJycsXG4gICAgaW5TZWdtZW50OiBmYWxzZSxcbiAgICBzZWdtZW50czogW10sXG4gICAgcG9pbnRTZWVuOiBmYWxzZSxcbiAgICBoYXNFeHBvbmVudDogZmFsc2UsXG4gICAgYWJzb2x1dGU6IHRvQWJzb2x1dGUsXG4gICAgcDA6IG5ldyBQb2ludCgpLFxuICAgIHA6IG5ldyBQb2ludCgpXG4gIH1cblxuICB3aGlsZSAoKChwYXJzZXIubGFzdFRva2VuID0gdG9rZW4pLCAodG9rZW4gPSBkLmNoYXJBdChpbmRleCsrKSkpKSB7XG4gICAgaWYgKCFwYXJzZXIuaW5TZWdtZW50KSB7XG4gICAgICBpZiAoc3RhcnROZXdTZWdtZW50KHBhcnNlciwgdG9rZW4pKSB7XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRva2VuID09PSAnLicpIHtcbiAgICAgIGlmIChwYXJzZXIucG9pbnRTZWVuIHx8IHBhcnNlci5oYXNFeHBvbmVudCkge1xuICAgICAgICBmaW5hbGl6ZU51bWJlcihwYXJzZXIsIGZhbHNlKVxuICAgICAgICAtLWluZGV4XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBwYXJzZXIuaW5OdW1iZXIgPSB0cnVlXG4gICAgICBwYXJzZXIucG9pbnRTZWVuID0gdHJ1ZVxuICAgICAgcGFyc2VyLm51bWJlciArPSB0b2tlblxuICAgICAgY29udGludWVcbiAgICB9XG5cbiAgICBpZiAoIWlzTmFOKHBhcnNlSW50KHRva2VuKSkpIHtcbiAgICAgIGlmIChwYXJzZXIubnVtYmVyID09PSAnMCcgfHwgaXNBcmNGbGFnKHBhcnNlcikpIHtcbiAgICAgICAgcGFyc2VyLmluTnVtYmVyID0gdHJ1ZVxuICAgICAgICBwYXJzZXIubnVtYmVyID0gdG9rZW5cbiAgICAgICAgZmluYWxpemVOdW1iZXIocGFyc2VyLCB0cnVlKVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBwYXJzZXIuaW5OdW1iZXIgPSB0cnVlXG4gICAgICBwYXJzZXIubnVtYmVyICs9IHRva2VuXG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmIChwYXRoRGVsaW1pdGVycy5oYXModG9rZW4pKSB7XG4gICAgICBpZiAocGFyc2VyLmluTnVtYmVyKSB7XG4gICAgICAgIGZpbmFsaXplTnVtYmVyKHBhcnNlciwgZmFsc2UpXG4gICAgICB9XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmICh0b2tlbiA9PT0gJy0nIHx8IHRva2VuID09PSAnKycpIHtcbiAgICAgIGlmIChwYXJzZXIuaW5OdW1iZXIgJiYgIWlzRXhwb25lbnRpYWwocGFyc2VyKSkge1xuICAgICAgICBmaW5hbGl6ZU51bWJlcihwYXJzZXIsIGZhbHNlKVxuICAgICAgICAtLWluZGV4XG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBwYXJzZXIubnVtYmVyICs9IHRva2VuXG4gICAgICBwYXJzZXIuaW5OdW1iZXIgPSB0cnVlXG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmICh0b2tlbi50b1VwcGVyQ2FzZSgpID09PSAnRScpIHtcbiAgICAgIHBhcnNlci5udW1iZXIgKz0gdG9rZW5cbiAgICAgIHBhcnNlci5oYXNFeHBvbmVudCA9IHRydWVcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaWYgKGlzUGF0aExldHRlci50ZXN0KHRva2VuKSkge1xuICAgICAgaWYgKHBhcnNlci5pbk51bWJlcikge1xuICAgICAgICBmaW5hbGl6ZU51bWJlcihwYXJzZXIsIGZhbHNlKVxuICAgICAgfSBlbHNlIGlmICghc2VnbWVudENvbXBsZXRlKHBhcnNlcikpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdwYXJzZXIgRXJyb3InKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZmluYWxpemVTZWdtZW50KHBhcnNlcilcbiAgICAgIH1cbiAgICAgIC0taW5kZXhcbiAgICB9XG4gIH1cblxuICBpZiAocGFyc2VyLmluTnVtYmVyKSB7XG4gICAgZmluYWxpemVOdW1iZXIocGFyc2VyLCBmYWxzZSlcbiAgfVxuXG4gIGlmIChwYXJzZXIuaW5TZWdtZW50ICYmIHNlZ21lbnRDb21wbGV0ZShwYXJzZXIpKSB7XG4gICAgZmluYWxpemVTZWdtZW50KHBhcnNlcilcbiAgfVxuXG4gIHJldHVybiBwYXJzZXIuc2VnbWVudHNcbn1cbiIsICJpbXBvcnQgU1ZHQXJyYXkgZnJvbSAnLi9TVkdBcnJheS5qcydcbmltcG9ydCBwYXJzZXIgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3BhcnNlci5qcydcbmltcG9ydCBCb3ggZnJvbSAnLi9Cb3guanMnXG5pbXBvcnQgeyBwYXRoUGFyc2VyIH0gZnJvbSAnLi4vdXRpbHMvcGF0aFBhcnNlci5qcydcblxuZnVuY3Rpb24gYXJyYXlUb1N0cmluZyhhKSB7XG4gIGxldCBzID0gJydcbiAgZm9yIChsZXQgaSA9IDAsIGlsID0gYS5sZW5ndGg7IGkgPCBpbDsgaSsrKSB7XG4gICAgcyArPSBhW2ldWzBdXG5cbiAgICBpZiAoYVtpXVsxXSAhPSBudWxsKSB7XG4gICAgICBzICs9IGFbaV1bMV1cblxuICAgICAgaWYgKGFbaV1bMl0gIT0gbnVsbCkge1xuICAgICAgICBzICs9ICcgJ1xuICAgICAgICBzICs9IGFbaV1bMl1cblxuICAgICAgICBpZiAoYVtpXVszXSAhPSBudWxsKSB7XG4gICAgICAgICAgcyArPSAnICdcbiAgICAgICAgICBzICs9IGFbaV1bM11cbiAgICAgICAgICBzICs9ICcgJ1xuICAgICAgICAgIHMgKz0gYVtpXVs0XVxuXG4gICAgICAgICAgaWYgKGFbaV1bNV0gIT0gbnVsbCkge1xuICAgICAgICAgICAgcyArPSAnICdcbiAgICAgICAgICAgIHMgKz0gYVtpXVs1XVxuICAgICAgICAgICAgcyArPSAnICdcbiAgICAgICAgICAgIHMgKz0gYVtpXVs2XVxuXG4gICAgICAgICAgICBpZiAoYVtpXVs3XSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgIHMgKz0gJyAnXG4gICAgICAgICAgICAgIHMgKz0gYVtpXVs3XVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzICsgJyAnXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhdGhBcnJheSBleHRlbmRzIFNWR0FycmF5IHtcbiAgLy8gR2V0IGJvdW5kaW5nIGJveCBvZiBwYXRoXG4gIGJib3goKSB7XG4gICAgcGFyc2VyKCkucGF0aC5zZXRBdHRyaWJ1dGUoJ2QnLCB0aGlzLnRvU3RyaW5nKCkpXG4gICAgcmV0dXJuIG5ldyBCb3gocGFyc2VyLm5vZGVzLnBhdGguZ2V0QkJveCgpKVxuICB9XG5cbiAgLy8gTW92ZSBwYXRoIHN0cmluZ1xuICBtb3ZlKHgsIHkpIHtcbiAgICAvLyBnZXQgYm91bmRpbmcgYm94IG9mIGN1cnJlbnQgc2l0dWF0aW9uXG4gICAgY29uc3QgYm94ID0gdGhpcy5iYm94KClcblxuICAgIC8vIGdldCByZWxhdGl2ZSBvZmZzZXRcbiAgICB4IC09IGJveC54XG4gICAgeSAtPSBib3gueVxuXG4gICAgaWYgKCFpc05hTih4KSAmJiAhaXNOYU4oeSkpIHtcbiAgICAgIC8vIG1vdmUgZXZlcnkgcG9pbnRcbiAgICAgIGZvciAobGV0IGwsIGkgPSB0aGlzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgIGwgPSB0aGlzW2ldWzBdXG5cbiAgICAgICAgaWYgKGwgPT09ICdNJyB8fCBsID09PSAnTCcgfHwgbCA9PT0gJ1QnKSB7XG4gICAgICAgICAgdGhpc1tpXVsxXSArPSB4XG4gICAgICAgICAgdGhpc1tpXVsyXSArPSB5XG4gICAgICAgIH0gZWxzZSBpZiAobCA9PT0gJ0gnKSB7XG4gICAgICAgICAgdGhpc1tpXVsxXSArPSB4XG4gICAgICAgIH0gZWxzZSBpZiAobCA9PT0gJ1YnKSB7XG4gICAgICAgICAgdGhpc1tpXVsxXSArPSB5XG4gICAgICAgIH0gZWxzZSBpZiAobCA9PT0gJ0MnIHx8IGwgPT09ICdTJyB8fCBsID09PSAnUScpIHtcbiAgICAgICAgICB0aGlzW2ldWzFdICs9IHhcbiAgICAgICAgICB0aGlzW2ldWzJdICs9IHlcbiAgICAgICAgICB0aGlzW2ldWzNdICs9IHhcbiAgICAgICAgICB0aGlzW2ldWzRdICs9IHlcblxuICAgICAgICAgIGlmIChsID09PSAnQycpIHtcbiAgICAgICAgICAgIHRoaXNbaV1bNV0gKz0geFxuICAgICAgICAgICAgdGhpc1tpXVs2XSArPSB5XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGwgPT09ICdBJykge1xuICAgICAgICAgIHRoaXNbaV1bNl0gKz0geFxuICAgICAgICAgIHRoaXNbaV1bN10gKz0geVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIEFic29sdXRpemUgYW5kIHBhcnNlIHBhdGggdG8gYXJyYXlcbiAgcGFyc2UoZCA9ICdNMCAwJykge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGQpKSB7XG4gICAgICBkID0gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSwgZCkudG9TdHJpbmcoKVxuICAgIH1cblxuICAgIHJldHVybiBwYXRoUGFyc2VyKGQpXG4gIH1cblxuICAvLyBSZXNpemUgcGF0aCBzdHJpbmdcbiAgc2l6ZSh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgLy8gZ2V0IGJvdW5kaW5nIGJveCBvZiBjdXJyZW50IHNpdHVhdGlvblxuICAgIGNvbnN0IGJveCA9IHRoaXMuYmJveCgpXG4gICAgbGV0IGksIGxcblxuICAgIC8vIElmIHRoZSBib3ggd2lkdGggb3IgaGVpZ2h0IGlzIDAgdGhlbiB3ZSBpZ25vcmVcbiAgICAvLyB0cmFuc2Zvcm1hdGlvbnMgb24gdGhlIHJlc3BlY3RpdmUgYXhpc1xuICAgIGJveC53aWR0aCA9IGJveC53aWR0aCA9PT0gMCA/IDEgOiBib3gud2lkdGhcbiAgICBib3guaGVpZ2h0ID0gYm94LmhlaWdodCA9PT0gMCA/IDEgOiBib3guaGVpZ2h0XG5cbiAgICAvLyByZWNhbGN1bGF0ZSBwb3NpdGlvbiBvZiBhbGwgcG9pbnRzIGFjY29yZGluZyB0byBuZXcgc2l6ZVxuICAgIGZvciAoaSA9IHRoaXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIGwgPSB0aGlzW2ldWzBdXG5cbiAgICAgIGlmIChsID09PSAnTScgfHwgbCA9PT0gJ0wnIHx8IGwgPT09ICdUJykge1xuICAgICAgICB0aGlzW2ldWzFdID0gKCh0aGlzW2ldWzFdIC0gYm94LngpICogd2lkdGgpIC8gYm94LndpZHRoICsgYm94LnhcbiAgICAgICAgdGhpc1tpXVsyXSA9ICgodGhpc1tpXVsyXSAtIGJveC55KSAqIGhlaWdodCkgLyBib3guaGVpZ2h0ICsgYm94LnlcbiAgICAgIH0gZWxzZSBpZiAobCA9PT0gJ0gnKSB7XG4gICAgICAgIHRoaXNbaV1bMV0gPSAoKHRoaXNbaV1bMV0gLSBib3gueCkgKiB3aWR0aCkgLyBib3gud2lkdGggKyBib3gueFxuICAgICAgfSBlbHNlIGlmIChsID09PSAnVicpIHtcbiAgICAgICAgdGhpc1tpXVsxXSA9ICgodGhpc1tpXVsxXSAtIGJveC55KSAqIGhlaWdodCkgLyBib3guaGVpZ2h0ICsgYm94LnlcbiAgICAgIH0gZWxzZSBpZiAobCA9PT0gJ0MnIHx8IGwgPT09ICdTJyB8fCBsID09PSAnUScpIHtcbiAgICAgICAgdGhpc1tpXVsxXSA9ICgodGhpc1tpXVsxXSAtIGJveC54KSAqIHdpZHRoKSAvIGJveC53aWR0aCArIGJveC54XG4gICAgICAgIHRoaXNbaV1bMl0gPSAoKHRoaXNbaV1bMl0gLSBib3gueSkgKiBoZWlnaHQpIC8gYm94LmhlaWdodCArIGJveC55XG4gICAgICAgIHRoaXNbaV1bM10gPSAoKHRoaXNbaV1bM10gLSBib3gueCkgKiB3aWR0aCkgLyBib3gud2lkdGggKyBib3gueFxuICAgICAgICB0aGlzW2ldWzRdID0gKCh0aGlzW2ldWzRdIC0gYm94LnkpICogaGVpZ2h0KSAvIGJveC5oZWlnaHQgKyBib3gueVxuXG4gICAgICAgIGlmIChsID09PSAnQycpIHtcbiAgICAgICAgICB0aGlzW2ldWzVdID0gKCh0aGlzW2ldWzVdIC0gYm94LngpICogd2lkdGgpIC8gYm94LndpZHRoICsgYm94LnhcbiAgICAgICAgICB0aGlzW2ldWzZdID0gKCh0aGlzW2ldWzZdIC0gYm94LnkpICogaGVpZ2h0KSAvIGJveC5oZWlnaHQgKyBib3gueVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGwgPT09ICdBJykge1xuICAgICAgICAvLyByZXNpemUgcmFkaWlcbiAgICAgICAgdGhpc1tpXVsxXSA9ICh0aGlzW2ldWzFdICogd2lkdGgpIC8gYm94LndpZHRoXG4gICAgICAgIHRoaXNbaV1bMl0gPSAodGhpc1tpXVsyXSAqIGhlaWdodCkgLyBib3guaGVpZ2h0XG5cbiAgICAgICAgLy8gbW92ZSBwb3NpdGlvbiB2YWx1ZXNcbiAgICAgICAgdGhpc1tpXVs2XSA9ICgodGhpc1tpXVs2XSAtIGJveC54KSAqIHdpZHRoKSAvIGJveC53aWR0aCArIGJveC54XG4gICAgICAgIHRoaXNbaV1bN10gPSAoKHRoaXNbaV1bN10gLSBib3gueSkgKiBoZWlnaHQpIC8gYm94LmhlaWdodCArIGJveC55XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIENvbnZlcnQgYXJyYXkgdG8gc3RyaW5nXG4gIHRvU3RyaW5nKCkge1xuICAgIHJldHVybiBhcnJheVRvU3RyaW5nKHRoaXMpXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBFYXNlIH0gZnJvbSAnLi9Db250cm9sbGVyLmpzJ1xuaW1wb3J0IHtcbiAgZGVsaW1pdGVyLFxuICBudW1iZXJBbmRVbml0LFxuICBpc1BhdGhMZXR0ZXJcbn0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3JlZ2V4LmpzJ1xuaW1wb3J0IHsgZXh0ZW5kIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCBDb2xvciBmcm9tICcuLi90eXBlcy9Db2xvci5qcydcbmltcG9ydCBQYXRoQXJyYXkgZnJvbSAnLi4vdHlwZXMvUGF0aEFycmF5LmpzJ1xuaW1wb3J0IFNWR0FycmF5IGZyb20gJy4uL3R5cGVzL1NWR0FycmF5LmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi90eXBlcy9TVkdOdW1iZXIuanMnXG5cbmNvbnN0IGdldENsYXNzRm9yVHlwZSA9ICh2YWx1ZSkgPT4ge1xuICBjb25zdCB0eXBlID0gdHlwZW9mIHZhbHVlXG5cbiAgaWYgKHR5cGUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIFNWR051bWJlclxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgaWYgKENvbG9yLmlzQ29sb3IodmFsdWUpKSB7XG4gICAgICByZXR1cm4gQ29sb3JcbiAgICB9IGVsc2UgaWYgKGRlbGltaXRlci50ZXN0KHZhbHVlKSkge1xuICAgICAgcmV0dXJuIGlzUGF0aExldHRlci50ZXN0KHZhbHVlKSA/IFBhdGhBcnJheSA6IFNWR0FycmF5XG4gICAgfSBlbHNlIGlmIChudW1iZXJBbmRVbml0LnRlc3QodmFsdWUpKSB7XG4gICAgICByZXR1cm4gU1ZHTnVtYmVyXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBOb25Nb3JwaGFibGVcbiAgICB9XG4gIH0gZWxzZSBpZiAobW9ycGhhYmxlVHlwZXMuaW5kZXhPZih2YWx1ZS5jb25zdHJ1Y3RvcikgPiAtMSkge1xuICAgIHJldHVybiB2YWx1ZS5jb25zdHJ1Y3RvclxuICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgcmV0dXJuIFNWR0FycmF5XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gT2JqZWN0QmFnXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIE5vbk1vcnBoYWJsZVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1vcnBoYWJsZSB7XG4gIGNvbnN0cnVjdG9yKHN0ZXBwZXIpIHtcbiAgICB0aGlzLl9zdGVwcGVyID0gc3RlcHBlciB8fCBuZXcgRWFzZSgnLScpXG5cbiAgICB0aGlzLl9mcm9tID0gbnVsbFxuICAgIHRoaXMuX3RvID0gbnVsbFxuICAgIHRoaXMuX3R5cGUgPSBudWxsXG4gICAgdGhpcy5fY29udGV4dCA9IG51bGxcbiAgICB0aGlzLl9tb3JwaE9iaiA9IG51bGxcbiAgfVxuXG4gIGF0KHBvcykge1xuICAgIHJldHVybiB0aGlzLl9tb3JwaE9iai5tb3JwaChcbiAgICAgIHRoaXMuX2Zyb20sXG4gICAgICB0aGlzLl90byxcbiAgICAgIHBvcyxcbiAgICAgIHRoaXMuX3N0ZXBwZXIsXG4gICAgICB0aGlzLl9jb250ZXh0XG4gICAgKVxuICB9XG5cbiAgZG9uZSgpIHtcbiAgICBjb25zdCBjb21wbGV0ZSA9IHRoaXMuX2NvbnRleHQubWFwKHRoaXMuX3N0ZXBwZXIuZG9uZSkucmVkdWNlKGZ1bmN0aW9uIChcbiAgICAgIGxhc3QsXG4gICAgICBjdXJyXG4gICAgKSB7XG4gICAgICByZXR1cm4gbGFzdCAmJiBjdXJyXG4gICAgfSwgdHJ1ZSlcbiAgICByZXR1cm4gY29tcGxldGVcbiAgfVxuXG4gIGZyb20odmFsKSB7XG4gICAgaWYgKHZhbCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZnJvbVxuICAgIH1cblxuICAgIHRoaXMuX2Zyb20gPSB0aGlzLl9zZXQodmFsKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBzdGVwcGVyKHN0ZXBwZXIpIHtcbiAgICBpZiAoc3RlcHBlciA9PSBudWxsKSByZXR1cm4gdGhpcy5fc3RlcHBlclxuICAgIHRoaXMuX3N0ZXBwZXIgPSBzdGVwcGVyXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHRvKHZhbCkge1xuICAgIGlmICh2YWwgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX3RvXG4gICAgfVxuXG4gICAgdGhpcy5fdG8gPSB0aGlzLl9zZXQodmFsKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB0eXBlKHR5cGUpIHtcbiAgICAvLyBnZXR0ZXJcbiAgICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdHlwZVxuICAgIH1cblxuICAgIC8vIHNldHRlclxuICAgIHRoaXMuX3R5cGUgPSB0eXBlXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIF9zZXQodmFsdWUpIHtcbiAgICBpZiAoIXRoaXMuX3R5cGUpIHtcbiAgICAgIHRoaXMudHlwZShnZXRDbGFzc0ZvclR5cGUodmFsdWUpKVxuICAgIH1cblxuICAgIGxldCByZXN1bHQgPSBuZXcgdGhpcy5fdHlwZSh2YWx1ZSlcbiAgICBpZiAodGhpcy5fdHlwZSA9PT0gQ29sb3IpIHtcbiAgICAgIHJlc3VsdCA9IHRoaXMuX3RvXG4gICAgICAgID8gcmVzdWx0W3RoaXMuX3RvWzRdXSgpXG4gICAgICAgIDogdGhpcy5fZnJvbVxuICAgICAgICAgID8gcmVzdWx0W3RoaXMuX2Zyb21bNF1dKClcbiAgICAgICAgICA6IHJlc3VsdFxuICAgIH1cblxuICAgIGlmICh0aGlzLl90eXBlID09PSBPYmplY3RCYWcpIHtcbiAgICAgIHJlc3VsdCA9IHRoaXMuX3RvXG4gICAgICAgID8gcmVzdWx0LmFsaWduKHRoaXMuX3RvKVxuICAgICAgICA6IHRoaXMuX2Zyb21cbiAgICAgICAgICA/IHJlc3VsdC5hbGlnbih0aGlzLl9mcm9tKVxuICAgICAgICAgIDogcmVzdWx0XG4gICAgfVxuXG4gICAgcmVzdWx0ID0gcmVzdWx0LnRvQ29uc3VtYWJsZSgpXG5cbiAgICB0aGlzLl9tb3JwaE9iaiA9IHRoaXMuX21vcnBoT2JqIHx8IG5ldyB0aGlzLl90eXBlKClcbiAgICB0aGlzLl9jb250ZXh0ID1cbiAgICAgIHRoaXMuX2NvbnRleHQgfHxcbiAgICAgIEFycmF5LmFwcGx5KG51bGwsIEFycmF5KHJlc3VsdC5sZW5ndGgpKVxuICAgICAgICAubWFwKE9iamVjdClcbiAgICAgICAgLm1hcChmdW5jdGlvbiAobykge1xuICAgICAgICAgIG8uZG9uZSA9IHRydWVcbiAgICAgICAgICByZXR1cm4gb1xuICAgICAgICB9KVxuICAgIHJldHVybiByZXN1bHRcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTm9uTW9ycGhhYmxlIHtcbiAgY29uc3RydWN0b3IoLi4uYXJncykge1xuICAgIHRoaXMuaW5pdCguLi5hcmdzKVxuICB9XG5cbiAgaW5pdCh2YWwpIHtcbiAgICB2YWwgPSBBcnJheS5pc0FycmF5KHZhbCkgPyB2YWxbMF0gOiB2YWxcbiAgICB0aGlzLnZhbHVlID0gdmFsXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHRvQXJyYXkoKSB7XG4gICAgcmV0dXJuIFt0aGlzLnZhbHVlXVxuICB9XG5cbiAgdmFsdWVPZigpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2Zvcm1CYWcge1xuICBjb25zdHJ1Y3RvciguLi5hcmdzKSB7XG4gICAgdGhpcy5pbml0KC4uLmFyZ3MpXG4gIH1cblxuICBpbml0KG9iaikge1xuICAgIGlmIChBcnJheS5pc0FycmF5KG9iaikpIHtcbiAgICAgIG9iaiA9IHtcbiAgICAgICAgc2NhbGVYOiBvYmpbMF0sXG4gICAgICAgIHNjYWxlWTogb2JqWzFdLFxuICAgICAgICBzaGVhcjogb2JqWzJdLFxuICAgICAgICByb3RhdGU6IG9ialszXSxcbiAgICAgICAgdHJhbnNsYXRlWDogb2JqWzRdLFxuICAgICAgICB0cmFuc2xhdGVZOiBvYmpbNV0sXG4gICAgICAgIG9yaWdpblg6IG9ials2XSxcbiAgICAgICAgb3JpZ2luWTogb2JqWzddXG4gICAgICB9XG4gICAgfVxuXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBUcmFuc2Zvcm1CYWcuZGVmYXVsdHMsIG9iailcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdG9BcnJheSgpIHtcbiAgICBjb25zdCB2ID0gdGhpc1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIHYuc2NhbGVYLFxuICAgICAgdi5zY2FsZVksXG4gICAgICB2LnNoZWFyLFxuICAgICAgdi5yb3RhdGUsXG4gICAgICB2LnRyYW5zbGF0ZVgsXG4gICAgICB2LnRyYW5zbGF0ZVksXG4gICAgICB2Lm9yaWdpblgsXG4gICAgICB2Lm9yaWdpbllcbiAgICBdXG4gIH1cbn1cblxuVHJhbnNmb3JtQmFnLmRlZmF1bHRzID0ge1xuICBzY2FsZVg6IDEsXG4gIHNjYWxlWTogMSxcbiAgc2hlYXI6IDAsXG4gIHJvdGF0ZTogMCxcbiAgdHJhbnNsYXRlWDogMCxcbiAgdHJhbnNsYXRlWTogMCxcbiAgb3JpZ2luWDogMCxcbiAgb3JpZ2luWTogMFxufVxuXG5jb25zdCBzb3J0QnlLZXkgPSAoYSwgYikgPT4ge1xuICByZXR1cm4gYVswXSA8IGJbMF0gPyAtMSA6IGFbMF0gPiBiWzBdID8gMSA6IDBcbn1cblxuZXhwb3J0IGNsYXNzIE9iamVjdEJhZyB7XG4gIGNvbnN0cnVjdG9yKC4uLmFyZ3MpIHtcbiAgICB0aGlzLmluaXQoLi4uYXJncylcbiAgfVxuXG4gIGFsaWduKG90aGVyKSB7XG4gICAgY29uc3QgdmFsdWVzID0gdGhpcy52YWx1ZXNcbiAgICBmb3IgKGxldCBpID0gMCwgaWwgPSB2YWx1ZXMubGVuZ3RoOyBpIDwgaWw7ICsraSkge1xuICAgICAgLy8gSWYgdGhlIHR5cGUgaXMgdGhlIHNhbWUgd2Ugb25seSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBjb2xvciBpcyBpbiB0aGUgY29ycmVjdCBmb3JtYXRcbiAgICAgIGlmICh2YWx1ZXNbaSArIDFdID09PSBvdGhlcltpICsgMV0pIHtcbiAgICAgICAgaWYgKHZhbHVlc1tpICsgMV0gPT09IENvbG9yICYmIG90aGVyW2kgKyA3XSAhPT0gdmFsdWVzW2kgKyA3XSkge1xuICAgICAgICAgIGNvbnN0IHNwYWNlID0gb3RoZXJbaSArIDddXG4gICAgICAgICAgY29uc3QgY29sb3IgPSBuZXcgQ29sb3IodGhpcy52YWx1ZXMuc3BsaWNlKGkgKyAzLCA1KSlcbiAgICAgICAgICAgIFtzcGFjZV0oKVxuICAgICAgICAgICAgLnRvQXJyYXkoKVxuICAgICAgICAgIHRoaXMudmFsdWVzLnNwbGljZShpICsgMywgMCwgLi4uY29sb3IpXG4gICAgICAgIH1cblxuICAgICAgICBpICs9IHZhbHVlc1tpICsgMl0gKyAyXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG5cbiAgICAgIGlmICghb3RoZXJbaSArIDFdKSB7XG4gICAgICAgIHJldHVybiB0aGlzXG4gICAgICB9XG5cbiAgICAgIC8vIFRoZSB0eXBlcyBkaWZmZXIsIHNvIHdlIG92ZXJ3cml0ZSB0aGUgbmV3IHR5cGUgd2l0aCB0aGUgb2xkIG9uZVxuICAgICAgLy8gQW5kIGluaXRpYWxpemUgaXQgd2l0aCB0aGUgdHlwZXMgZGVmYXVsdCAoZS5nLiBibGFjayBmb3IgY29sb3Igb3IgMCBmb3IgbnVtYmVyKVxuICAgICAgY29uc3QgZGVmYXVsdE9iamVjdCA9IG5ldyBvdGhlcltpICsgMV0oKS50b0FycmF5KClcblxuICAgICAgLy8gVGhhbiB3ZSBmaXggdGhlIHZhbHVlcyBhcnJheVxuICAgICAgY29uc3QgdG9EZWxldGUgPSB2YWx1ZXNbaSArIDJdICsgM1xuXG4gICAgICB2YWx1ZXMuc3BsaWNlKFxuICAgICAgICBpLFxuICAgICAgICB0b0RlbGV0ZSxcbiAgICAgICAgb3RoZXJbaV0sXG4gICAgICAgIG90aGVyW2kgKyAxXSxcbiAgICAgICAgb3RoZXJbaSArIDJdLFxuICAgICAgICAuLi5kZWZhdWx0T2JqZWN0XG4gICAgICApXG5cbiAgICAgIGkgKz0gdmFsdWVzW2kgKyAyXSArIDJcbiAgICB9XG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGluaXQob2JqT3JBcnIpIHtcbiAgICB0aGlzLnZhbHVlcyA9IFtdXG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShvYmpPckFycikpIHtcbiAgICAgIHRoaXMudmFsdWVzID0gb2JqT3JBcnIuc2xpY2UoKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgb2JqT3JBcnIgPSBvYmpPckFyciB8fCB7fVxuICAgIGNvbnN0IGVudHJpZXMgPSBbXVxuXG4gICAgZm9yIChjb25zdCBpIGluIG9iak9yQXJyKSB7XG4gICAgICBjb25zdCBUeXBlID0gZ2V0Q2xhc3NGb3JUeXBlKG9iak9yQXJyW2ldKVxuICAgICAgY29uc3QgdmFsID0gbmV3IFR5cGUob2JqT3JBcnJbaV0pLnRvQXJyYXkoKVxuICAgICAgZW50cmllcy5wdXNoKFtpLCBUeXBlLCB2YWwubGVuZ3RoLCAuLi52YWxdKVxuICAgIH1cblxuICAgIGVudHJpZXMuc29ydChzb3J0QnlLZXkpXG5cbiAgICB0aGlzLnZhbHVlcyA9IGVudHJpZXMucmVkdWNlKChsYXN0LCBjdXJyKSA9PiBsYXN0LmNvbmNhdChjdXJyKSwgW10pXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHRvQXJyYXkoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzXG4gIH1cblxuICB2YWx1ZU9mKCkge1xuICAgIGNvbnN0IG9iaiA9IHt9XG4gICAgY29uc3QgYXJyID0gdGhpcy52YWx1ZXNcblxuICAgIC8vIGZvciAodmFyIGkgPSAwLCBsZW4gPSBhcnIubGVuZ3RoOyBpIDwgbGVuOyBpICs9IDIpIHtcbiAgICB3aGlsZSAoYXJyLmxlbmd0aCkge1xuICAgICAgY29uc3Qga2V5ID0gYXJyLnNoaWZ0KClcbiAgICAgIGNvbnN0IFR5cGUgPSBhcnIuc2hpZnQoKVxuICAgICAgY29uc3QgbnVtID0gYXJyLnNoaWZ0KClcbiAgICAgIGNvbnN0IHZhbHVlcyA9IGFyci5zcGxpY2UoMCwgbnVtKVxuICAgICAgb2JqW2tleV0gPSBuZXcgVHlwZSh2YWx1ZXMpIC8vIC52YWx1ZU9mKClcbiAgICB9XG5cbiAgICByZXR1cm4gb2JqXG4gIH1cbn1cblxuY29uc3QgbW9ycGhhYmxlVHlwZXMgPSBbTm9uTW9ycGhhYmxlLCBUcmFuc2Zvcm1CYWcsIE9iamVjdEJhZ11cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyTW9ycGhhYmxlVHlwZSh0eXBlID0gW10pIHtcbiAgbW9ycGhhYmxlVHlwZXMucHVzaCguLi5bXS5jb25jYXQodHlwZSkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlTW9ycGhhYmxlKCkge1xuICBleHRlbmQobW9ycGhhYmxlVHlwZXMsIHtcbiAgICB0byh2YWwpIHtcbiAgICAgIHJldHVybiBuZXcgTW9ycGhhYmxlKClcbiAgICAgICAgLnR5cGUodGhpcy5jb25zdHJ1Y3RvcilcbiAgICAgICAgLmZyb20odGhpcy50b0FycmF5KCkpIC8vIHRoaXMudmFsdWVPZigpKVxuICAgICAgICAudG8odmFsKVxuICAgIH0sXG4gICAgZnJvbUFycmF5KGFycikge1xuICAgICAgdGhpcy5pbml0KGFycilcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfSxcbiAgICB0b0NvbnN1bWFibGUoKSB7XG4gICAgICByZXR1cm4gdGhpcy50b0FycmF5KClcbiAgICB9LFxuICAgIG1vcnBoKGZyb20sIHRvLCBwb3MsIHN0ZXBwZXIsIGNvbnRleHQpIHtcbiAgICAgIGNvbnN0IG1hcHBlciA9IGZ1bmN0aW9uIChpLCBpbmRleCkge1xuICAgICAgICByZXR1cm4gc3RlcHBlci5zdGVwKGksIHRvW2luZGV4XSwgcG9zLCBjb250ZXh0W2luZGV4XSwgY29udGV4dClcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuZnJvbUFycmF5KGZyb20ubWFwKG1hcHBlcikpXG4gICAgfVxuICB9KVxufVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIsIHdyYXBXaXRoQXR0ckNoZWNrIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHByb3BvcnRpb25hbFNpemUgfSBmcm9tICcuLi91dGlscy91dGlscy5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgUGF0aEFycmF5IGZyb20gJy4uL3R5cGVzL1BhdGhBcnJheS5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXRoIGV4dGVuZHMgU2hhcGUge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdwYXRoJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gR2V0IGFycmF5XG4gIGFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLl9hcnJheSB8fCAodGhpcy5fYXJyYXkgPSBuZXcgUGF0aEFycmF5KHRoaXMuYXR0cignZCcpKSlcbiAgfVxuXG4gIC8vIENsZWFyIGFycmF5IGNhY2hlXG4gIGNsZWFyKCkge1xuICAgIGRlbGV0ZSB0aGlzLl9hcnJheVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBTZXQgaGVpZ2h0IG9mIGVsZW1lbnRcbiAgaGVpZ2h0KGhlaWdodCkge1xuICAgIHJldHVybiBoZWlnaHQgPT0gbnVsbFxuICAgICAgPyB0aGlzLmJib3goKS5oZWlnaHRcbiAgICAgIDogdGhpcy5zaXplKHRoaXMuYmJveCgpLndpZHRoLCBoZWlnaHQpXG4gIH1cblxuICAvLyBNb3ZlIGJ5IGxlZnQgdG9wIGNvcm5lclxuICBtb3ZlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdkJywgdGhpcy5hcnJheSgpLm1vdmUoeCwgeSkpXG4gIH1cblxuICAvLyBQbG90IG5ldyBwYXRoXG4gIHBsb3QoZCkge1xuICAgIHJldHVybiBkID09IG51bGxcbiAgICAgID8gdGhpcy5hcnJheSgpXG4gICAgICA6IHRoaXMuY2xlYXIoKS5hdHRyKFxuICAgICAgICAgICdkJyxcbiAgICAgICAgICB0eXBlb2YgZCA9PT0gJ3N0cmluZycgPyBkIDogKHRoaXMuX2FycmF5ID0gbmV3IFBhdGhBcnJheShkKSlcbiAgICAgICAgKVxuICB9XG5cbiAgLy8gU2V0IGVsZW1lbnQgc2l6ZSB0byBnaXZlbiB3aWR0aCBhbmQgaGVpZ2h0XG4gIHNpemUod2lkdGgsIGhlaWdodCkge1xuICAgIGNvbnN0IHAgPSBwcm9wb3J0aW9uYWxTaXplKHRoaXMsIHdpZHRoLCBoZWlnaHQpXG4gICAgcmV0dXJuIHRoaXMuYXR0cignZCcsIHRoaXMuYXJyYXkoKS5zaXplKHAud2lkdGgsIHAuaGVpZ2h0KSlcbiAgfVxuXG4gIC8vIFNldCB3aWR0aCBvZiBlbGVtZW50XG4gIHdpZHRoKHdpZHRoKSB7XG4gICAgcmV0dXJuIHdpZHRoID09IG51bGxcbiAgICAgID8gdGhpcy5iYm94KCkud2lkdGhcbiAgICAgIDogdGhpcy5zaXplKHdpZHRoLCB0aGlzLmJib3goKS5oZWlnaHQpXG4gIH1cblxuICAvLyBNb3ZlIGJ5IGxlZnQgdG9wIGNvcm5lciBvdmVyIHgtYXhpc1xuICB4KHgpIHtcbiAgICByZXR1cm4geCA9PSBudWxsID8gdGhpcy5iYm94KCkueCA6IHRoaXMubW92ZSh4LCB0aGlzLmJib3goKS55KVxuICB9XG5cbiAgLy8gTW92ZSBieSBsZWZ0IHRvcCBjb3JuZXIgb3ZlciB5LWF4aXNcbiAgeSh5KSB7XG4gICAgcmV0dXJuIHkgPT0gbnVsbCA/IHRoaXMuYmJveCgpLnkgOiB0aGlzLm1vdmUodGhpcy5iYm94KCkueCwgeSlcbiAgfVxufVxuXG4vLyBEZWZpbmUgbW9ycGhhYmxlIGFycmF5XG5QYXRoLnByb3RvdHlwZS5Nb3JwaEFycmF5ID0gUGF0aEFycmF5XG5cbi8vIEFkZCBwYXJlbnQgbWV0aG9kXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgYSB3cmFwcGVkIHBhdGggZWxlbWVudFxuICAgIHBhdGg6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uIChkKSB7XG4gICAgICAvLyBtYWtlIHN1cmUgcGxvdCBpcyBjYWxsZWQgYXMgYSBzZXR0ZXJcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgUGF0aCgpKS5wbG90KGQgfHwgbmV3IFBhdGhBcnJheSgpKVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFBhdGgsICdQYXRoJylcbiIsICJpbXBvcnQgeyBwcm9wb3J0aW9uYWxTaXplIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXRpbHMuanMnXG5pbXBvcnQgUG9pbnRBcnJheSBmcm9tICcuLi8uLi90eXBlcy9Qb2ludEFycmF5LmpzJ1xuXG4vLyBHZXQgYXJyYXlcbmV4cG9ydCBmdW5jdGlvbiBhcnJheSgpIHtcbiAgcmV0dXJuIHRoaXMuX2FycmF5IHx8ICh0aGlzLl9hcnJheSA9IG5ldyBQb2ludEFycmF5KHRoaXMuYXR0cigncG9pbnRzJykpKVxufVxuXG4vLyBDbGVhciBhcnJheSBjYWNoZVxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyKCkge1xuICBkZWxldGUgdGhpcy5fYXJyYXlcbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gTW92ZSBieSBsZWZ0IHRvcCBjb3JuZXJcbmV4cG9ydCBmdW5jdGlvbiBtb3ZlKHgsIHkpIHtcbiAgcmV0dXJuIHRoaXMuYXR0cigncG9pbnRzJywgdGhpcy5hcnJheSgpLm1vdmUoeCwgeSkpXG59XG5cbi8vIFBsb3QgbmV3IHBhdGhcbmV4cG9ydCBmdW5jdGlvbiBwbG90KHApIHtcbiAgcmV0dXJuIHAgPT0gbnVsbFxuICAgID8gdGhpcy5hcnJheSgpXG4gICAgOiB0aGlzLmNsZWFyKCkuYXR0cihcbiAgICAgICAgJ3BvaW50cycsXG4gICAgICAgIHR5cGVvZiBwID09PSAnc3RyaW5nJyA/IHAgOiAodGhpcy5fYXJyYXkgPSBuZXcgUG9pbnRBcnJheShwKSlcbiAgICAgIClcbn1cblxuLy8gU2V0IGVsZW1lbnQgc2l6ZSB0byBnaXZlbiB3aWR0aCBhbmQgaGVpZ2h0XG5leHBvcnQgZnVuY3Rpb24gc2l6ZSh3aWR0aCwgaGVpZ2h0KSB7XG4gIGNvbnN0IHAgPSBwcm9wb3J0aW9uYWxTaXplKHRoaXMsIHdpZHRoLCBoZWlnaHQpXG4gIHJldHVybiB0aGlzLmF0dHIoJ3BvaW50cycsIHRoaXMuYXJyYXkoKS5zaXplKHAud2lkdGgsIHAuaGVpZ2h0KSlcbn1cbiIsICJpbXBvcnQge1xuICBleHRlbmQsXG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IFBvaW50QXJyYXkgZnJvbSAnLi4vdHlwZXMvUG9pbnRBcnJheS5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuaW1wb3J0ICogYXMgcG9pbnRlZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcG9pbnRlZC5qcydcbmltcG9ydCAqIGFzIHBvbHkgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3BvbHkuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBvbHlnb24gZXh0ZW5kcyBTaGFwZSB7XG4gIC8vIEluaXRpYWxpemUgbm9kZVxuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3BvbHlnb24nLCBub2RlKSwgYXR0cnMpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIGEgd3JhcHBlZCBwb2x5Z29uIGVsZW1lbnRcbiAgICBwb2x5Z29uOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAocCkge1xuICAgICAgLy8gbWFrZSBzdXJlIHBsb3QgaXMgY2FsbGVkIGFzIGEgc2V0dGVyXG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFBvbHlnb24oKSkucGxvdChwIHx8IG5ldyBQb2ludEFycmF5KCkpXG4gICAgfSlcbiAgfVxufSlcblxuZXh0ZW5kKFBvbHlnb24sIHBvaW50ZWQpXG5leHRlbmQoUG9seWdvbiwgcG9seSlcbnJlZ2lzdGVyKFBvbHlnb24sICdQb2x5Z29uJylcbiIsICJpbXBvcnQge1xuICBleHRlbmQsXG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrXG59IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IFBvaW50QXJyYXkgZnJvbSAnLi4vdHlwZXMvUG9pbnRBcnJheS5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuaW1wb3J0ICogYXMgcG9pbnRlZCBmcm9tICcuLi9tb2R1bGVzL2NvcmUvcG9pbnRlZC5qcydcbmltcG9ydCAqIGFzIHBvbHkgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3BvbHkuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBvbHlsaW5lIGV4dGVuZHMgU2hhcGUge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdwb2x5bGluZScsIG5vZGUpLCBhdHRycylcbiAgfVxufVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgYSB3cmFwcGVkIHBvbHlnb24gZWxlbWVudFxuICAgIHBvbHlsaW5lOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAocCkge1xuICAgICAgLy8gbWFrZSBzdXJlIHBsb3QgaXMgY2FsbGVkIGFzIGEgc2V0dGVyXG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFBvbHlsaW5lKCkpLnBsb3QocCB8fCBuZXcgUG9pbnRBcnJheSgpKVxuICAgIH0pXG4gIH1cbn0pXG5cbmV4dGVuZChQb2x5bGluZSwgcG9pbnRlZClcbmV4dGVuZChQb2x5bGluZSwgcG9seSlcbnJlZ2lzdGVyKFBvbHlsaW5lLCAnUG9seWxpbmUnKVxuIiwgImltcG9ydCB7XG4gIGV4dGVuZCxcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2tcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgeyByeCwgcnkgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvY2lyY2xlZC5qcydcbmltcG9ydCBTaGFwZSBmcm9tICcuL1NoYXBlLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZWN0IGV4dGVuZHMgU2hhcGUge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdyZWN0Jywgbm9kZSksIGF0dHJzKVxuICB9XG59XG5cbmV4dGVuZChSZWN0LCB7IHJ4LCByeSB9KVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgYSByZWN0IGVsZW1lbnRcbiAgICByZWN0OiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAod2lkdGgsIGhlaWdodCkge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBSZWN0KCkpLnNpemUod2lkdGgsIGhlaWdodClcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihSZWN0LCAnUmVjdCcpXG4iLCAiZXhwb3J0IGRlZmF1bHQgY2xhc3MgUXVldWUge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9maXJzdCA9IG51bGxcbiAgICB0aGlzLl9sYXN0ID0gbnVsbFxuICB9XG5cbiAgLy8gU2hvd3MgdXMgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIGxpc3RcbiAgZmlyc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZpcnN0ICYmIHRoaXMuX2ZpcnN0LnZhbHVlXG4gIH1cblxuICAvLyBTaG93cyB1cyB0aGUgbGFzdCBpdGVtIGluIHRoZSBsaXN0XG4gIGxhc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xhc3QgJiYgdGhpcy5fbGFzdC52YWx1ZVxuICB9XG5cbiAgcHVzaCh2YWx1ZSkge1xuICAgIC8vIEFuIGl0ZW0gc3RvcmVzIGFuIGlkIGFuZCB0aGUgcHJvdmlkZWQgdmFsdWVcbiAgICBjb25zdCBpdGVtID1cbiAgICAgIHR5cGVvZiB2YWx1ZS5uZXh0ICE9PSAndW5kZWZpbmVkJ1xuICAgICAgICA/IHZhbHVlXG4gICAgICAgIDogeyB2YWx1ZTogdmFsdWUsIG5leHQ6IG51bGwsIHByZXY6IG51bGwgfVxuXG4gICAgLy8gRGVhbCB3aXRoIHRoZSBxdWV1ZSBiZWluZyBlbXB0eSBvciBwb3B1bGF0ZWRcbiAgICBpZiAodGhpcy5fbGFzdCkge1xuICAgICAgaXRlbS5wcmV2ID0gdGhpcy5fbGFzdFxuICAgICAgdGhpcy5fbGFzdC5uZXh0ID0gaXRlbVxuICAgICAgdGhpcy5fbGFzdCA9IGl0ZW1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fbGFzdCA9IGl0ZW1cbiAgICAgIHRoaXMuX2ZpcnN0ID0gaXRlbVxuICAgIH1cblxuICAgIC8vIFJldHVybiB0aGUgY3VycmVudCBpdGVtXG4gICAgcmV0dXJuIGl0ZW1cbiAgfVxuXG4gIC8vIFJlbW92ZXMgdGhlIGl0ZW0gdGhhdCB3YXMgcmV0dXJuZWQgZnJvbSB0aGUgcHVzaFxuICByZW1vdmUoaXRlbSkge1xuICAgIC8vIFJlbGluayB0aGUgcHJldmlvdXMgaXRlbVxuICAgIGlmIChpdGVtLnByZXYpIGl0ZW0ucHJldi5uZXh0ID0gaXRlbS5uZXh0XG4gICAgaWYgKGl0ZW0ubmV4dCkgaXRlbS5uZXh0LnByZXYgPSBpdGVtLnByZXZcbiAgICBpZiAoaXRlbSA9PT0gdGhpcy5fbGFzdCkgdGhpcy5fbGFzdCA9IGl0ZW0ucHJldlxuICAgIGlmIChpdGVtID09PSB0aGlzLl9maXJzdCkgdGhpcy5fZmlyc3QgPSBpdGVtLm5leHRcblxuICAgIC8vIEludmFsaWRhdGUgaXRlbVxuICAgIGl0ZW0ucHJldiA9IG51bGxcbiAgICBpdGVtLm5leHQgPSBudWxsXG4gIH1cblxuICBzaGlmdCgpIHtcbiAgICAvLyBDaGVjayBpZiB3ZSBoYXZlIGEgdmFsdWVcbiAgICBjb25zdCByZW1vdmUgPSB0aGlzLl9maXJzdFxuICAgIGlmICghcmVtb3ZlKSByZXR1cm4gbnVsbFxuXG4gICAgLy8gSWYgd2UgZG8sIHJlbW92ZSBpdCBhbmQgcmVsaW5rIHRoaW5nc1xuICAgIHRoaXMuX2ZpcnN0ID0gcmVtb3ZlLm5leHRcbiAgICBpZiAodGhpcy5fZmlyc3QpIHRoaXMuX2ZpcnN0LnByZXYgPSBudWxsXG4gICAgdGhpcy5fbGFzdCA9IHRoaXMuX2ZpcnN0ID8gdGhpcy5fbGFzdCA6IG51bGxcbiAgICByZXR1cm4gcmVtb3ZlLnZhbHVlXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuaW1wb3J0IFF1ZXVlIGZyb20gJy4vUXVldWUuanMnXG5cbmNvbnN0IEFuaW1hdG9yID0ge1xuICBuZXh0RHJhdzogbnVsbCxcbiAgZnJhbWVzOiBuZXcgUXVldWUoKSxcbiAgdGltZW91dHM6IG5ldyBRdWV1ZSgpLFxuICBpbW1lZGlhdGVzOiBuZXcgUXVldWUoKSxcbiAgdGltZXI6ICgpID0+IGdsb2JhbHMud2luZG93LnBlcmZvcm1hbmNlIHx8IGdsb2JhbHMud2luZG93LkRhdGUsXG4gIHRyYW5zZm9ybXM6IFtdLFxuXG4gIGZyYW1lKGZuKSB7XG4gICAgLy8gU3RvcmUgdGhlIG5vZGVcbiAgICBjb25zdCBub2RlID0gQW5pbWF0b3IuZnJhbWVzLnB1c2goeyBydW46IGZuIH0pXG5cbiAgICAvLyBSZXF1ZXN0IGFuIGFuaW1hdGlvbiBmcmFtZSBpZiB3ZSBkb24ndCBoYXZlIG9uZVxuICAgIGlmIChBbmltYXRvci5uZXh0RHJhdyA9PT0gbnVsbCkge1xuICAgICAgQW5pbWF0b3IubmV4dERyYXcgPSBnbG9iYWxzLndpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoQW5pbWF0b3IuX2RyYXcpXG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIHRoZSBub2RlIHNvIHdlIGNhbiByZW1vdmUgaXQgZWFzaWx5XG4gICAgcmV0dXJuIG5vZGVcbiAgfSxcblxuICB0aW1lb3V0KGZuLCBkZWxheSkge1xuICAgIGRlbGF5ID0gZGVsYXkgfHwgMFxuXG4gICAgLy8gV29yayBvdXQgd2hlbiB0aGUgZXZlbnQgc2hvdWxkIGZpcmVcbiAgICBjb25zdCB0aW1lID0gQW5pbWF0b3IudGltZXIoKS5ub3coKSArIGRlbGF5XG5cbiAgICAvLyBBZGQgdGhlIHRpbWVvdXQgdG8gdGhlIGVuZCBvZiB0aGUgcXVldWVcbiAgICBjb25zdCBub2RlID0gQW5pbWF0b3IudGltZW91dHMucHVzaCh7IHJ1bjogZm4sIHRpbWU6IHRpbWUgfSlcblxuICAgIC8vIFJlcXVlc3QgYW5vdGhlciBhbmltYXRpb24gZnJhbWUgaWYgd2UgbmVlZCBvbmVcbiAgICBpZiAoQW5pbWF0b3IubmV4dERyYXcgPT09IG51bGwpIHtcbiAgICAgIEFuaW1hdG9yLm5leHREcmF3ID0gZ2xvYmFscy53aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKEFuaW1hdG9yLl9kcmF3KVxuICAgIH1cblxuICAgIHJldHVybiBub2RlXG4gIH0sXG5cbiAgaW1tZWRpYXRlKGZuKSB7XG4gICAgLy8gQWRkIHRoZSBpbW1lZGlhdGUgZm4gdG8gdGhlIGVuZCBvZiB0aGUgcXVldWVcbiAgICBjb25zdCBub2RlID0gQW5pbWF0b3IuaW1tZWRpYXRlcy5wdXNoKGZuKVxuICAgIC8vIFJlcXVlc3QgYW5vdGhlciBhbmltYXRpb24gZnJhbWUgaWYgd2UgbmVlZCBvbmVcbiAgICBpZiAoQW5pbWF0b3IubmV4dERyYXcgPT09IG51bGwpIHtcbiAgICAgIEFuaW1hdG9yLm5leHREcmF3ID0gZ2xvYmFscy53aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKEFuaW1hdG9yLl9kcmF3KVxuICAgIH1cblxuICAgIHJldHVybiBub2RlXG4gIH0sXG5cbiAgY2FuY2VsRnJhbWUobm9kZSkge1xuICAgIG5vZGUgIT0gbnVsbCAmJiBBbmltYXRvci5mcmFtZXMucmVtb3ZlKG5vZGUpXG4gIH0sXG5cbiAgY2xlYXJUaW1lb3V0KG5vZGUpIHtcbiAgICBub2RlICE9IG51bGwgJiYgQW5pbWF0b3IudGltZW91dHMucmVtb3ZlKG5vZGUpXG4gIH0sXG5cbiAgY2FuY2VsSW1tZWRpYXRlKG5vZGUpIHtcbiAgICBub2RlICE9IG51bGwgJiYgQW5pbWF0b3IuaW1tZWRpYXRlcy5yZW1vdmUobm9kZSlcbiAgfSxcblxuICBfZHJhdyhub3cpIHtcbiAgICAvLyBSdW4gYWxsIHRoZSB0aW1lb3V0cyB3ZSBjYW4gcnVuLCBpZiB0aGV5IGFyZSBub3QgcmVhZHkgeWV0LCBhZGQgdGhlbVxuICAgIC8vIHRvIHRoZSBlbmQgb2YgdGhlIHF1ZXVlIGltbWVkaWF0ZWx5ISAoYmFkIHRpbWVvdXRzISEhIFtzYXJjYXNtXSlcbiAgICBsZXQgbmV4dFRpbWVvdXQgPSBudWxsXG4gICAgY29uc3QgbGFzdFRpbWVvdXQgPSBBbmltYXRvci50aW1lb3V0cy5sYXN0KClcbiAgICB3aGlsZSAoKG5leHRUaW1lb3V0ID0gQW5pbWF0b3IudGltZW91dHMuc2hpZnQoKSkpIHtcbiAgICAgIC8vIFJ1biB0aGUgdGltZW91dCBpZiBpdHMgdGltZSwgb3IgcHVzaCBpdCB0byB0aGUgZW5kXG4gICAgICBpZiAobm93ID49IG5leHRUaW1lb3V0LnRpbWUpIHtcbiAgICAgICAgbmV4dFRpbWVvdXQucnVuKClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIEFuaW1hdG9yLnRpbWVvdXRzLnB1c2gobmV4dFRpbWVvdXQpXG4gICAgICB9XG5cbiAgICAgIC8vIElmIHdlIGhpdCB0aGUgbGFzdCBpdGVtLCB3ZSBzaG91bGQgc3RvcCBzaGlmdGluZyBvdXQgbW9yZSBpdGVtc1xuICAgICAgaWYgKG5leHRUaW1lb3V0ID09PSBsYXN0VGltZW91dCkgYnJlYWtcbiAgICB9XG5cbiAgICAvLyBSdW4gYWxsIG9mIHRoZSBhbmltYXRpb24gZnJhbWVzXG4gICAgbGV0IG5leHRGcmFtZSA9IG51bGxcbiAgICBjb25zdCBsYXN0RnJhbWUgPSBBbmltYXRvci5mcmFtZXMubGFzdCgpXG4gICAgd2hpbGUgKG5leHRGcmFtZSAhPT0gbGFzdEZyYW1lICYmIChuZXh0RnJhbWUgPSBBbmltYXRvci5mcmFtZXMuc2hpZnQoKSkpIHtcbiAgICAgIG5leHRGcmFtZS5ydW4obm93KVxuICAgIH1cblxuICAgIGxldCBuZXh0SW1tZWRpYXRlID0gbnVsbFxuICAgIHdoaWxlICgobmV4dEltbWVkaWF0ZSA9IEFuaW1hdG9yLmltbWVkaWF0ZXMuc2hpZnQoKSkpIHtcbiAgICAgIG5leHRJbW1lZGlhdGUoKVxuICAgIH1cblxuICAgIC8vIElmIHdlIGhhdmUgcmVtYWluaW5nIHRpbWVvdXRzIG9yIGZyYW1lcywgZHJhdyB1bnRpbCB3ZSBkb24ndCBhbnltb3JlXG4gICAgQW5pbWF0b3IubmV4dERyYXcgPVxuICAgICAgQW5pbWF0b3IudGltZW91dHMuZmlyc3QoKSB8fCBBbmltYXRvci5mcmFtZXMuZmlyc3QoKVxuICAgICAgICA/IGdsb2JhbHMud2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShBbmltYXRvci5fZHJhdylcbiAgICAgICAgOiBudWxsXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQW5pbWF0b3JcbiIsICJpbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBBbmltYXRvciBmcm9tICcuL0FuaW1hdG9yLmpzJ1xuaW1wb3J0IEV2ZW50VGFyZ2V0IGZyb20gJy4uL3R5cGVzL0V2ZW50VGFyZ2V0LmpzJ1xuXG5jb25zdCBtYWtlU2NoZWR1bGUgPSBmdW5jdGlvbiAocnVubmVySW5mbykge1xuICBjb25zdCBzdGFydCA9IHJ1bm5lckluZm8uc3RhcnRcbiAgY29uc3QgZHVyYXRpb24gPSBydW5uZXJJbmZvLnJ1bm5lci5kdXJhdGlvbigpXG4gIGNvbnN0IGVuZCA9IHN0YXJ0ICsgZHVyYXRpb25cbiAgcmV0dXJuIHtcbiAgICBzdGFydDogc3RhcnQsXG4gICAgZHVyYXRpb246IGR1cmF0aW9uLFxuICAgIGVuZDogZW5kLFxuICAgIHJ1bm5lcjogcnVubmVySW5mby5ydW5uZXJcbiAgfVxufVxuXG5jb25zdCBkZWZhdWx0U291cmNlID0gZnVuY3Rpb24gKCkge1xuICBjb25zdCB3ID0gZ2xvYmFscy53aW5kb3dcbiAgcmV0dXJuICh3LnBlcmZvcm1hbmNlIHx8IHcuRGF0ZSkubm93KClcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGltZWxpbmUgZXh0ZW5kcyBFdmVudFRhcmdldCB7XG4gIC8vIENvbnN0cnVjdCBhIG5ldyB0aW1lbGluZSBvbiB0aGUgZ2l2ZW4gZWxlbWVudFxuICBjb25zdHJ1Y3Rvcih0aW1lU291cmNlID0gZGVmYXVsdFNvdXJjZSkge1xuICAgIHN1cGVyKClcblxuICAgIHRoaXMuX3RpbWVTb3VyY2UgPSB0aW1lU291cmNlXG5cbiAgICAvLyB0ZXJtaW5hdGUgcmVzZXRzIGFsbCB2YXJpYWJsZXMgdG8gdGhlaXIgaW5pdGlhbCBzdGF0ZVxuICAgIHRoaXMudGVybWluYXRlKClcbiAgfVxuXG4gIGFjdGl2ZSgpIHtcbiAgICByZXR1cm4gISF0aGlzLl9uZXh0RnJhbWVcbiAgfVxuXG4gIGZpbmlzaCgpIHtcbiAgICAvLyBHbyB0byBlbmQgYW5kIHBhdXNlXG4gICAgdGhpcy50aW1lKHRoaXMuZ2V0RW5kVGltZU9mVGltZWxpbmUoKSArIDEpXG4gICAgcmV0dXJuIHRoaXMucGF1c2UoKVxuICB9XG5cbiAgLy8gQ2FsY3VsYXRlcyB0aGUgZW5kIG9mIHRoZSB0aW1lbGluZVxuICBnZXRFbmRUaW1lKCkge1xuICAgIGNvbnN0IGxhc3RSdW5uZXJJbmZvID0gdGhpcy5nZXRMYXN0UnVubmVySW5mbygpXG4gICAgY29uc3QgbGFzdER1cmF0aW9uID0gbGFzdFJ1bm5lckluZm8gPyBsYXN0UnVubmVySW5mby5ydW5uZXIuZHVyYXRpb24oKSA6IDBcbiAgICBjb25zdCBsYXN0U3RhcnRUaW1lID0gbGFzdFJ1bm5lckluZm8gPyBsYXN0UnVubmVySW5mby5zdGFydCA6IHRoaXMuX3RpbWVcbiAgICByZXR1cm4gbGFzdFN0YXJ0VGltZSArIGxhc3REdXJhdGlvblxuICB9XG5cbiAgZ2V0RW5kVGltZU9mVGltZWxpbmUoKSB7XG4gICAgY29uc3QgZW5kVGltZXMgPSB0aGlzLl9ydW5uZXJzLm1hcCgoaSkgPT4gaS5zdGFydCArIGkucnVubmVyLmR1cmF0aW9uKCkpXG4gICAgcmV0dXJuIE1hdGgubWF4KDAsIC4uLmVuZFRpbWVzKVxuICB9XG5cbiAgZ2V0TGFzdFJ1bm5lckluZm8oKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UnVubmVySW5mb0J5SWQodGhpcy5fbGFzdFJ1bm5lcklkKVxuICB9XG5cbiAgZ2V0UnVubmVySW5mb0J5SWQoaWQpIHtcbiAgICByZXR1cm4gdGhpcy5fcnVubmVyc1t0aGlzLl9ydW5uZXJJZHMuaW5kZXhPZihpZCldIHx8IG51bGxcbiAgfVxuXG4gIHBhdXNlKCkge1xuICAgIHRoaXMuX3BhdXNlZCA9IHRydWVcbiAgICByZXR1cm4gdGhpcy5fY29udGludWUoKVxuICB9XG5cbiAgcGVyc2lzdChkdE9yRm9yZXZlcikge1xuICAgIGlmIChkdE9yRm9yZXZlciA9PSBudWxsKSByZXR1cm4gdGhpcy5fcGVyc2lzdFxuICAgIHRoaXMuX3BlcnNpc3QgPSBkdE9yRm9yZXZlclxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBwbGF5KCkge1xuICAgIC8vIE5vdyBtYWtlIHN1cmUgd2UgYXJlIG5vdCBwYXVzZWQgYW5kIGNvbnRpbnVlIHRoZSBhbmltYXRpb25cbiAgICB0aGlzLl9wYXVzZWQgPSBmYWxzZVxuICAgIHJldHVybiB0aGlzLnVwZGF0ZVRpbWUoKS5fY29udGludWUoKVxuICB9XG5cbiAgcmV2ZXJzZSh5ZXMpIHtcbiAgICBjb25zdCBjdXJyZW50U3BlZWQgPSB0aGlzLnNwZWVkKClcbiAgICBpZiAoeWVzID09IG51bGwpIHJldHVybiB0aGlzLnNwZWVkKC1jdXJyZW50U3BlZWQpXG5cbiAgICBjb25zdCBwb3NpdGl2ZSA9IE1hdGguYWJzKGN1cnJlbnRTcGVlZClcbiAgICByZXR1cm4gdGhpcy5zcGVlZCh5ZXMgPyAtcG9zaXRpdmUgOiBwb3NpdGl2ZSlcbiAgfVxuXG4gIC8vIHNjaGVkdWxlcyBhIHJ1bm5lciBvbiB0aGUgdGltZWxpbmVcbiAgc2NoZWR1bGUocnVubmVyLCBkZWxheSwgd2hlbikge1xuICAgIGlmIChydW5uZXIgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX3J1bm5lcnMubWFwKG1ha2VTY2hlZHVsZSlcbiAgICB9XG5cbiAgICAvLyBUaGUgc3RhcnQgdGltZSBmb3IgdGhlIG5leHQgYW5pbWF0aW9uIGNhbiBlaXRoZXIgYmUgZ2l2ZW4gZXhwbGljaXRseSxcbiAgICAvLyBkZXJpdmVkIGZyb20gdGhlIGN1cnJlbnQgdGltZWxpbmUgdGltZSBvciBpdCBjYW4gYmUgcmVsYXRpdmUgdG8gdGhlXG4gICAgLy8gbGFzdCBzdGFydCB0aW1lIHRvIGNoYWluIGFuaW1hdGlvbnMgZGlyZWN0bHlcblxuICAgIGxldCBhYnNvbHV0ZVN0YXJ0VGltZSA9IDBcbiAgICBjb25zdCBlbmRUaW1lID0gdGhpcy5nZXRFbmRUaW1lKClcbiAgICBkZWxheSA9IGRlbGF5IHx8IDBcblxuICAgIC8vIFdvcmsgb3V0IHdoZW4gdG8gc3RhcnQgdGhlIGFuaW1hdGlvblxuICAgIGlmICh3aGVuID09IG51bGwgfHwgd2hlbiA9PT0gJ2xhc3QnIHx8IHdoZW4gPT09ICdhZnRlcicpIHtcbiAgICAgIC8vIFRha2UgdGhlIGxhc3QgdGltZSBhbmQgaW5jcmVtZW50XG4gICAgICBhYnNvbHV0ZVN0YXJ0VGltZSA9IGVuZFRpbWVcbiAgICB9IGVsc2UgaWYgKHdoZW4gPT09ICdhYnNvbHV0ZScgfHwgd2hlbiA9PT0gJ3N0YXJ0Jykge1xuICAgICAgYWJzb2x1dGVTdGFydFRpbWUgPSBkZWxheVxuICAgICAgZGVsYXkgPSAwXG4gICAgfSBlbHNlIGlmICh3aGVuID09PSAnbm93Jykge1xuICAgICAgYWJzb2x1dGVTdGFydFRpbWUgPSB0aGlzLl90aW1lXG4gICAgfSBlbHNlIGlmICh3aGVuID09PSAncmVsYXRpdmUnKSB7XG4gICAgICBjb25zdCBydW5uZXJJbmZvID0gdGhpcy5nZXRSdW5uZXJJbmZvQnlJZChydW5uZXIuaWQpXG4gICAgICBpZiAocnVubmVySW5mbykge1xuICAgICAgICBhYnNvbHV0ZVN0YXJ0VGltZSA9IHJ1bm5lckluZm8uc3RhcnQgKyBkZWxheVxuICAgICAgICBkZWxheSA9IDBcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHdoZW4gPT09ICd3aXRoLWxhc3QnKSB7XG4gICAgICBjb25zdCBsYXN0UnVubmVySW5mbyA9IHRoaXMuZ2V0TGFzdFJ1bm5lckluZm8oKVxuICAgICAgY29uc3QgbGFzdFN0YXJ0VGltZSA9IGxhc3RSdW5uZXJJbmZvID8gbGFzdFJ1bm5lckluZm8uc3RhcnQgOiB0aGlzLl90aW1lXG4gICAgICBhYnNvbHV0ZVN0YXJ0VGltZSA9IGxhc3RTdGFydFRpbWVcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHZhbHVlIGZvciB0aGUgXCJ3aGVuXCIgcGFyYW1ldGVyJylcbiAgICB9XG5cbiAgICAvLyBNYW5hZ2UgcnVubmVyXG4gICAgcnVubmVyLnVuc2NoZWR1bGUoKVxuICAgIHJ1bm5lci50aW1lbGluZSh0aGlzKVxuXG4gICAgY29uc3QgcGVyc2lzdCA9IHJ1bm5lci5wZXJzaXN0KClcbiAgICBjb25zdCBydW5uZXJJbmZvID0ge1xuICAgICAgcGVyc2lzdDogcGVyc2lzdCA9PT0gbnVsbCA/IHRoaXMuX3BlcnNpc3QgOiBwZXJzaXN0LFxuICAgICAgc3RhcnQ6IGFic29sdXRlU3RhcnRUaW1lICsgZGVsYXksXG4gICAgICBydW5uZXJcbiAgICB9XG5cbiAgICB0aGlzLl9sYXN0UnVubmVySWQgPSBydW5uZXIuaWRcblxuICAgIHRoaXMuX3J1bm5lcnMucHVzaChydW5uZXJJbmZvKVxuICAgIHRoaXMuX3J1bm5lcnMuc29ydCgoYSwgYikgPT4gYS5zdGFydCAtIGIuc3RhcnQpXG4gICAgdGhpcy5fcnVubmVySWRzID0gdGhpcy5fcnVubmVycy5tYXAoKGluZm8pID0+IGluZm8ucnVubmVyLmlkKVxuXG4gICAgdGhpcy51cGRhdGVUaW1lKCkuX2NvbnRpbnVlKClcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgc2VlayhkdCkge1xuICAgIHJldHVybiB0aGlzLnRpbWUodGhpcy5fdGltZSArIGR0KVxuICB9XG5cbiAgc291cmNlKGZuKSB7XG4gICAgaWYgKGZuID09IG51bGwpIHJldHVybiB0aGlzLl90aW1lU291cmNlXG4gICAgdGhpcy5fdGltZVNvdXJjZSA9IGZuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHNwZWVkKHNwZWVkKSB7XG4gICAgaWYgKHNwZWVkID09IG51bGwpIHJldHVybiB0aGlzLl9zcGVlZFxuICAgIHRoaXMuX3NwZWVkID0gc3BlZWRcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgc3RvcCgpIHtcbiAgICAvLyBHbyB0byBzdGFydCBhbmQgcGF1c2VcbiAgICB0aGlzLnRpbWUoMClcbiAgICByZXR1cm4gdGhpcy5wYXVzZSgpXG4gIH1cblxuICB0aW1lKHRpbWUpIHtcbiAgICBpZiAodGltZSA9PSBudWxsKSByZXR1cm4gdGhpcy5fdGltZVxuICAgIHRoaXMuX3RpbWUgPSB0aW1lXG4gICAgcmV0dXJuIHRoaXMuX2NvbnRpbnVlKHRydWUpXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIHJ1bm5lciBmcm9tIHRoaXMgdGltZWxpbmVcbiAgdW5zY2hlZHVsZShydW5uZXIpIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuX3J1bm5lcklkcy5pbmRleE9mKHJ1bm5lci5pZClcbiAgICBpZiAoaW5kZXggPCAwKSByZXR1cm4gdGhpc1xuXG4gICAgdGhpcy5fcnVubmVycy5zcGxpY2UoaW5kZXgsIDEpXG4gICAgdGhpcy5fcnVubmVySWRzLnNwbGljZShpbmRleCwgMSlcblxuICAgIHJ1bm5lci50aW1lbGluZShudWxsKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBNYWtlcyBzdXJlLCB0aGF0IGFmdGVyIHBhdXNpbmcgdGhlIHRpbWUgZG9lc24ndCBqdW1wXG4gIHVwZGF0ZVRpbWUoKSB7XG4gICAgaWYgKCF0aGlzLmFjdGl2ZSgpKSB7XG4gICAgICB0aGlzLl9sYXN0U291cmNlVGltZSA9IHRoaXMuX3RpbWVTb3VyY2UoKVxuICAgIH1cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gQ2hlY2tzIGlmIHdlIGFyZSBydW5uaW5nIGFuZCBjb250aW51ZXMgdGhlIGFuaW1hdGlvblxuICBfY29udGludWUoaW1tZWRpYXRlU3RlcCA9IGZhbHNlKSB7XG4gICAgQW5pbWF0b3IuY2FuY2VsRnJhbWUodGhpcy5fbmV4dEZyYW1lKVxuICAgIHRoaXMuX25leHRGcmFtZSA9IG51bGxcblxuICAgIGlmIChpbW1lZGlhdGVTdGVwKSByZXR1cm4gdGhpcy5fc3RlcEltbWVkaWF0ZSgpXG4gICAgaWYgKHRoaXMuX3BhdXNlZCkgcmV0dXJuIHRoaXNcblxuICAgIHRoaXMuX25leHRGcmFtZSA9IEFuaW1hdG9yLmZyYW1lKHRoaXMuX3N0ZXApXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIF9zdGVwRm4oaW1tZWRpYXRlU3RlcCA9IGZhbHNlKSB7XG4gICAgLy8gR2V0IHRoZSB0aW1lIGRlbHRhIGZyb20gdGhlIGxhc3QgdGltZSBhbmQgdXBkYXRlIHRoZSB0aW1lXG4gICAgY29uc3QgdGltZSA9IHRoaXMuX3RpbWVTb3VyY2UoKVxuICAgIGxldCBkdFNvdXJjZSA9IHRpbWUgLSB0aGlzLl9sYXN0U291cmNlVGltZVxuXG4gICAgaWYgKGltbWVkaWF0ZVN0ZXApIGR0U291cmNlID0gMFxuXG4gICAgY29uc3QgZHRUaW1lID0gdGhpcy5fc3BlZWQgKiBkdFNvdXJjZSArICh0aGlzLl90aW1lIC0gdGhpcy5fbGFzdFN0ZXBUaW1lKVxuICAgIHRoaXMuX2xhc3RTb3VyY2VUaW1lID0gdGltZVxuXG4gICAgLy8gT25seSB1cGRhdGUgdGhlIHRpbWUgaWYgd2UgdXNlIHRoZSB0aW1lU291cmNlLlxuICAgIC8vIE90aGVyd2lzZSB1c2UgdGhlIGN1cnJlbnQgdGltZVxuICAgIGlmICghaW1tZWRpYXRlU3RlcCkge1xuICAgICAgLy8gVXBkYXRlIHRoZSB0aW1lXG4gICAgICB0aGlzLl90aW1lICs9IGR0VGltZVxuICAgICAgdGhpcy5fdGltZSA9IHRoaXMuX3RpbWUgPCAwID8gMCA6IHRoaXMuX3RpbWVcbiAgICB9XG4gICAgdGhpcy5fbGFzdFN0ZXBUaW1lID0gdGhpcy5fdGltZVxuICAgIHRoaXMuZmlyZSgndGltZScsIHRoaXMuX3RpbWUpXG5cbiAgICAvLyBUaGlzIGlzIGZvciB0aGUgY2FzZSB0aGF0IHRoZSB0aW1lbGluZSB3YXMgc2Vla2VkIHNvIHRoYXQgdGhlIHRpbWVcbiAgICAvLyBpcyBub3cgYmVmb3JlIHRoZSBzdGFydFRpbWUgb2YgdGhlIHJ1bm5lci4gVGhhdCBpcyB3aHkgd2UgbmVlZCB0byBzZXRcbiAgICAvLyB0aGUgcnVubmVyIHRvIHBvc2l0aW9uIDBcblxuICAgIC8vIEZJWE1FOlxuICAgIC8vIEhvd2V2ZXIsIHJlc2V0dGluZyBpbiBpbnNlcnRpb24gb3JkZXIgbGVhZHMgdG8gYnVncy4gQ29uc2lkZXJpbmcgdGhlIGNhc2UsXG4gICAgLy8gd2hlcmUgMiBydW5uZXJzIGNoYW5nZSB0aGUgc2FtZSBhdHRyaWJ1dGUgYnV0IGluIGRpZmZlcmVudCB0aW1lcyxcbiAgICAvLyByZXNldHRpbmcgYm90aCBvZiB0aGVtIHdpbGwgbGVhZCB0byB0aGUgY2FzZSB3aGVyZSB0aGUgbGF0ZXIgZGVmaW5lZFxuICAgIC8vIHJ1bm5lciBhbHdheXMgd2lucyB0aGUgcmVzZXQgZXZlbiBpZiB0aGUgb3RoZXIgcnVubmVyIHN0YXJ0ZWQgZWFybGllclxuICAgIC8vIGFuZCB0aGVyZWZvcmUgc2hvdWxkIHdpbiB0aGUgYXR0cmlidXRlIGJhdHRsZVxuICAgIC8vIHRoaXMgY2FuIGJlIHNvbHZlZCBieSByZXNldHRpbmcgdGhlbSBiYWNrd2FyZHNcbiAgICBmb3IgKGxldCBrID0gdGhpcy5fcnVubmVycy5sZW5ndGg7IGstLTsgKSB7XG4gICAgICAvLyBHZXQgYW5kIHJ1biB0aGUgY3VycmVudCBydW5uZXIgYW5kIGlnbm9yZSBpdCBpZiBpdHMgaW5hY3RpdmVcbiAgICAgIGNvbnN0IHJ1bm5lckluZm8gPSB0aGlzLl9ydW5uZXJzW2tdXG4gICAgICBjb25zdCBydW5uZXIgPSBydW5uZXJJbmZvLnJ1bm5lclxuXG4gICAgICAvLyBNYWtlIHN1cmUgdGhhdCB3ZSBnaXZlIHRoZSBhY3R1YWwgZGlmZmVyZW5jZVxuICAgICAgLy8gYmV0d2VlbiBydW5uZXIgc3RhcnQgdGltZSBhbmQgbm93XG4gICAgICBjb25zdCBkdFRvU3RhcnQgPSB0aGlzLl90aW1lIC0gcnVubmVySW5mby5zdGFydFxuXG4gICAgICAvLyBEb250IHJ1biBydW5uZXIgaWYgbm90IHN0YXJ0ZWQgeWV0XG4gICAgICAvLyBhbmQgdHJ5IHRvIHJlc2V0IGl0XG4gICAgICBpZiAoZHRUb1N0YXJ0IDw9IDApIHtcbiAgICAgICAgcnVubmVyLnJlc2V0KClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSdW4gYWxsIG9mIHRoZSBydW5uZXJzIGRpcmVjdGx5XG4gICAgbGV0IHJ1bm5lcnNMZWZ0ID0gZmFsc2VcbiAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdGhpcy5fcnVubmVycy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgICAgLy8gR2V0IGFuZCBydW4gdGhlIGN1cnJlbnQgcnVubmVyIGFuZCBpZ25vcmUgaXQgaWYgaXRzIGluYWN0aXZlXG4gICAgICBjb25zdCBydW5uZXJJbmZvID0gdGhpcy5fcnVubmVyc1tpXVxuICAgICAgY29uc3QgcnVubmVyID0gcnVubmVySW5mby5ydW5uZXJcbiAgICAgIGxldCBkdCA9IGR0VGltZVxuXG4gICAgICAvLyBNYWtlIHN1cmUgdGhhdCB3ZSBnaXZlIHRoZSBhY3R1YWwgZGlmZmVyZW5jZVxuICAgICAgLy8gYmV0d2VlbiBydW5uZXIgc3RhcnQgdGltZSBhbmQgbm93XG4gICAgICBjb25zdCBkdFRvU3RhcnQgPSB0aGlzLl90aW1lIC0gcnVubmVySW5mby5zdGFydFxuXG4gICAgICAvLyBEb250IHJ1biBydW5uZXIgaWYgbm90IHN0YXJ0ZWQgeWV0XG4gICAgICBpZiAoZHRUb1N0YXJ0IDw9IDApIHtcbiAgICAgICAgcnVubmVyc0xlZnQgPSB0cnVlXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKGR0VG9TdGFydCA8IGR0KSB7XG4gICAgICAgIC8vIEFkanVzdCBkdCB0byBtYWtlIHN1cmUgdGhhdCBhbmltYXRpb24gaXMgb24gcG9pbnRcbiAgICAgICAgZHQgPSBkdFRvU3RhcnRcbiAgICAgIH1cblxuICAgICAgaWYgKCFydW5uZXIuYWN0aXZlKCkpIGNvbnRpbnVlXG5cbiAgICAgIC8vIElmIHRoaXMgcnVubmVyIGlzIHN0aWxsIGdvaW5nLCBzaWduYWwgdGhhdCB3ZSBuZWVkIGFub3RoZXIgYW5pbWF0aW9uXG4gICAgICAvLyBmcmFtZSwgb3RoZXJ3aXNlLCByZW1vdmUgdGhlIGNvbXBsZXRlZCBydW5uZXJcbiAgICAgIGNvbnN0IGZpbmlzaGVkID0gcnVubmVyLnN0ZXAoZHQpLmRvbmVcbiAgICAgIGlmICghZmluaXNoZWQpIHtcbiAgICAgICAgcnVubmVyc0xlZnQgPSB0cnVlXG4gICAgICAgIC8vIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKHJ1bm5lckluZm8ucGVyc2lzdCAhPT0gdHJ1ZSkge1xuICAgICAgICAvLyBydW5uZXIgaXMgZmluaXNoZWQuIEFuZCBydW5uZXIgbWlnaHQgZ2V0IHJlbW92ZWRcbiAgICAgICAgY29uc3QgZW5kVGltZSA9IHJ1bm5lci5kdXJhdGlvbigpIC0gcnVubmVyLnRpbWUoKSArIHRoaXMuX3RpbWVcblxuICAgICAgICBpZiAoZW5kVGltZSArIHJ1bm5lckluZm8ucGVyc2lzdCA8IHRoaXMuX3RpbWUpIHtcbiAgICAgICAgICAvLyBEZWxldGUgcnVubmVyIGFuZCBjb3JyZWN0IGluZGV4XG4gICAgICAgICAgcnVubmVyLnVuc2NoZWR1bGUoKVxuICAgICAgICAgIC0taVxuICAgICAgICAgIC0tbGVuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCYXNpY2FsbHk6IHdlIGNvbnRpbnVlIHdoZW4gdGhlcmUgYXJlIHJ1bm5lcnMgcmlnaHQgZnJvbSB1cyBpbiB0aW1lXG4gICAgLy8gd2hlbiAtLT4sIGFuZCB3aGVuIHJ1bm5lcnMgYXJlIGxlZnQgZnJvbSB1cyB3aGVuIDwtLVxuICAgIGlmIChcbiAgICAgIChydW5uZXJzTGVmdCAmJiAhKHRoaXMuX3NwZWVkIDwgMCAmJiB0aGlzLl90aW1lID09PSAwKSkgfHxcbiAgICAgICh0aGlzLl9ydW5uZXJJZHMubGVuZ3RoICYmIHRoaXMuX3NwZWVkIDwgMCAmJiB0aGlzLl90aW1lID4gMClcbiAgICApIHtcbiAgICAgIHRoaXMuX2NvbnRpbnVlKClcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wYXVzZSgpXG4gICAgICB0aGlzLmZpcmUoJ2ZpbmlzaGVkJylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdGVybWluYXRlKCkge1xuICAgIC8vIGNsZWFudXAgbWVtb3J5XG5cbiAgICAvLyBTdG9yZSB0aGUgdGltaW5nIHZhcmlhYmxlc1xuICAgIHRoaXMuX3N0YXJ0VGltZSA9IDBcbiAgICB0aGlzLl9zcGVlZCA9IDEuMFxuXG4gICAgLy8gRGV0ZXJtaW5lcyBob3cgbG9uZyBhIHJ1bm5lciBpcyBob2xkIGluIG1lbW9yeS4gQ2FuIGJlIGEgZHQgb3IgdHJ1ZS9mYWxzZVxuICAgIHRoaXMuX3BlcnNpc3QgPSAwXG5cbiAgICAvLyBLZWVwIHRyYWNrIG9mIHRoZSBydW5uaW5nIGFuaW1hdGlvbnMgYW5kIHRoZWlyIHN0YXJ0aW5nIHBhcmFtZXRlcnNcbiAgICB0aGlzLl9uZXh0RnJhbWUgPSBudWxsXG4gICAgdGhpcy5fcGF1c2VkID0gdHJ1ZVxuICAgIHRoaXMuX3J1bm5lcnMgPSBbXVxuICAgIHRoaXMuX3J1bm5lcklkcyA9IFtdXG4gICAgdGhpcy5fbGFzdFJ1bm5lcklkID0gLTFcbiAgICB0aGlzLl90aW1lID0gMFxuICAgIHRoaXMuX2xhc3RTb3VyY2VUaW1lID0gMFxuICAgIHRoaXMuX2xhc3RTdGVwVGltZSA9IDBcblxuICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHN0ZXAgaXMgYWx3YXlzIGNhbGxlZCBpbiBjbGFzcyBjb250ZXh0XG4gICAgdGhpcy5fc3RlcCA9IHRoaXMuX3N0ZXBGbi5iaW5kKHRoaXMsIGZhbHNlKVxuICAgIHRoaXMuX3N0ZXBJbW1lZGlhdGUgPSB0aGlzLl9zdGVwRm4uYmluZCh0aGlzLCB0cnVlKVxuICB9XG59XG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIEVsZW1lbnQ6IHtcbiAgICB0aW1lbGluZTogZnVuY3Rpb24gKHRpbWVsaW5lKSB7XG4gICAgICBpZiAodGltZWxpbmUgPT0gbnVsbCkge1xuICAgICAgICB0aGlzLl90aW1lbGluZSA9IHRoaXMuX3RpbWVsaW5lIHx8IG5ldyBUaW1lbGluZSgpXG4gICAgICAgIHJldHVybiB0aGlzLl90aW1lbGluZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fdGltZWxpbmUgPSB0aW1lbGluZVxuICAgICAgICByZXR1cm4gdGhpc1xuICAgICAgfVxuICAgIH1cbiAgfVxufSlcbiIsICJpbXBvcnQgeyBDb250cm9sbGVyLCBFYXNlLCBTdGVwcGVyIH0gZnJvbSAnLi9Db250cm9sbGVyLmpzJ1xuaW1wb3J0IHsgZXh0ZW5kLCByZWdpc3RlciB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyBmcm9tLCB0byB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9ncmFkaWVudGVkLmpzJ1xuaW1wb3J0IHsgZ2V0T3JpZ2luIH0gZnJvbSAnLi4vdXRpbHMvdXRpbHMuanMnXG5pbXBvcnQgeyBub29wLCB0aW1lbGluZSB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9kZWZhdWx0cy5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgeyByeCwgcnkgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvY2lyY2xlZC5qcydcbmltcG9ydCBBbmltYXRvciBmcm9tICcuL0FuaW1hdG9yLmpzJ1xuaW1wb3J0IEJveCBmcm9tICcuLi90eXBlcy9Cb3guanMnXG5pbXBvcnQgRXZlbnRUYXJnZXQgZnJvbSAnLi4vdHlwZXMvRXZlbnRUYXJnZXQuanMnXG5pbXBvcnQgTWF0cml4IGZyb20gJy4uL3R5cGVzL01hdHJpeC5qcydcbmltcG9ydCBNb3JwaGFibGUsIHsgVHJhbnNmb3JtQmFnLCBPYmplY3RCYWcgfSBmcm9tICcuL01vcnBoYWJsZS5qcydcbmltcG9ydCBQb2ludCBmcm9tICcuLi90eXBlcy9Qb2ludC5qcydcbmltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuaW1wb3J0IFRpbWVsaW5lIGZyb20gJy4vVGltZWxpbmUuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJ1bm5lciBleHRlbmRzIEV2ZW50VGFyZ2V0IHtcbiAgY29uc3RydWN0b3Iob3B0aW9ucykge1xuICAgIHN1cGVyKClcblxuICAgIC8vIFN0b3JlIGEgdW5pcXVlIGlkIG9uIHRoZSBydW5uZXIsIHNvIHRoYXQgd2UgY2FuIGlkZW50aWZ5IGl0IGxhdGVyXG4gICAgdGhpcy5pZCA9IFJ1bm5lci5pZCsrXG5cbiAgICAvLyBFbnN1cmUgYSBkZWZhdWx0IHZhbHVlXG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgPT0gbnVsbCA/IHRpbWVsaW5lLmR1cmF0aW9uIDogb3B0aW9uc1xuXG4gICAgLy8gRW5zdXJlIHRoYXQgd2UgZ2V0IGEgY29udHJvbGxlclxuICAgIG9wdGlvbnMgPSB0eXBlb2Ygb3B0aW9ucyA9PT0gJ2Z1bmN0aW9uJyA/IG5ldyBDb250cm9sbGVyKG9wdGlvbnMpIDogb3B0aW9uc1xuXG4gICAgLy8gRGVjbGFyZSBhbGwgb2YgdGhlIHZhcmlhYmxlc1xuICAgIHRoaXMuX2VsZW1lbnQgPSBudWxsXG4gICAgdGhpcy5fdGltZWxpbmUgPSBudWxsXG4gICAgdGhpcy5kb25lID0gZmFsc2VcbiAgICB0aGlzLl9xdWV1ZSA9IFtdXG5cbiAgICAvLyBXb3JrIG91dCB0aGUgc3RlcHBlciBhbmQgdGhlIGR1cmF0aW9uXG4gICAgdGhpcy5fZHVyYXRpb24gPSB0eXBlb2Ygb3B0aW9ucyA9PT0gJ251bWJlcicgJiYgb3B0aW9uc1xuICAgIHRoaXMuX2lzRGVjbGFyYXRpdmUgPSBvcHRpb25zIGluc3RhbmNlb2YgQ29udHJvbGxlclxuICAgIHRoaXMuX3N0ZXBwZXIgPSB0aGlzLl9pc0RlY2xhcmF0aXZlID8gb3B0aW9ucyA6IG5ldyBFYXNlKClcblxuICAgIC8vIFdlIGNvcHkgdGhlIGN1cnJlbnQgdmFsdWVzIGZyb20gdGhlIHRpbWVsaW5lIGJlY2F1c2UgdGhleSBjYW4gY2hhbmdlXG4gICAgdGhpcy5faGlzdG9yeSA9IHt9XG5cbiAgICAvLyBTdG9yZSB0aGUgc3RhdGUgb2YgdGhlIHJ1bm5lclxuICAgIHRoaXMuZW5hYmxlZCA9IHRydWVcbiAgICB0aGlzLl90aW1lID0gMFxuICAgIHRoaXMuX2xhc3RUaW1lID0gMFxuXG4gICAgLy8gQXQgY3JlYXRpb24sIHRoZSBydW5uZXIgaXMgaW4gcmVzZXQgc3RhdGVcbiAgICB0aGlzLl9yZXNldGVkID0gdHJ1ZVxuXG4gICAgLy8gU2F2ZSB0cmFuc2Zvcm1zIGFwcGxpZWQgdG8gdGhpcyBydW5uZXJcbiAgICB0aGlzLnRyYW5zZm9ybXMgPSBuZXcgTWF0cml4KClcbiAgICB0aGlzLnRyYW5zZm9ybUlkID0gMVxuXG4gICAgLy8gTG9vcGluZyB2YXJpYWJsZXNcbiAgICB0aGlzLl9oYXZlUmV2ZXJzZWQgPSBmYWxzZVxuICAgIHRoaXMuX3JldmVyc2UgPSBmYWxzZVxuICAgIHRoaXMuX2xvb3BzRG9uZSA9IDBcbiAgICB0aGlzLl9zd2luZyA9IGZhbHNlXG4gICAgdGhpcy5fd2FpdCA9IDBcbiAgICB0aGlzLl90aW1lcyA9IDFcblxuICAgIHRoaXMuX2ZyYW1lSWQgPSBudWxsXG5cbiAgICAvLyBTdG9yZXMgaG93IGxvbmcgYSBydW5uZXIgaXMgc3RvcmVkIGFmdGVyIGJlaW5nIGRvbmVcbiAgICB0aGlzLl9wZXJzaXN0ID0gdGhpcy5faXNEZWNsYXJhdGl2ZSA/IHRydWUgOiBudWxsXG4gIH1cblxuICBzdGF0aWMgc2FuaXRpc2UoZHVyYXRpb24sIGRlbGF5LCB3aGVuKSB7XG4gICAgLy8gSW5pdGlhbGlzZSB0aGUgZGVmYXVsdCBwYXJhbWV0ZXJzXG4gICAgbGV0IHRpbWVzID0gMVxuICAgIGxldCBzd2luZyA9IGZhbHNlXG4gICAgbGV0IHdhaXQgPSAwXG4gICAgZHVyYXRpb24gPSBkdXJhdGlvbiA/PyB0aW1lbGluZS5kdXJhdGlvblxuICAgIGRlbGF5ID0gZGVsYXkgPz8gdGltZWxpbmUuZGVsYXlcbiAgICB3aGVuID0gd2hlbiB8fCAnbGFzdCdcblxuICAgIC8vIElmIHdlIGhhdmUgYW4gb2JqZWN0LCB1bnBhY2sgdGhlIHZhbHVlc1xuICAgIGlmICh0eXBlb2YgZHVyYXRpb24gPT09ICdvYmplY3QnICYmICEoZHVyYXRpb24gaW5zdGFuY2VvZiBTdGVwcGVyKSkge1xuICAgICAgZGVsYXkgPSBkdXJhdGlvbi5kZWxheSA/PyBkZWxheVxuICAgICAgd2hlbiA9IGR1cmF0aW9uLndoZW4gPz8gd2hlblxuICAgICAgc3dpbmcgPSBkdXJhdGlvbi5zd2luZyB8fCBzd2luZ1xuICAgICAgdGltZXMgPSBkdXJhdGlvbi50aW1lcyA/PyB0aW1lc1xuICAgICAgd2FpdCA9IGR1cmF0aW9uLndhaXQgPz8gd2FpdFxuICAgICAgZHVyYXRpb24gPSBkdXJhdGlvbi5kdXJhdGlvbiA/PyB0aW1lbGluZS5kdXJhdGlvblxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBkdXJhdGlvbjogZHVyYXRpb24sXG4gICAgICBkZWxheTogZGVsYXksXG4gICAgICBzd2luZzogc3dpbmcsXG4gICAgICB0aW1lczogdGltZXMsXG4gICAgICB3YWl0OiB3YWl0LFxuICAgICAgd2hlbjogd2hlblxuICAgIH1cbiAgfVxuXG4gIGFjdGl2ZShlbmFibGVkKSB7XG4gICAgaWYgKGVuYWJsZWQgPT0gbnVsbCkgcmV0dXJuIHRoaXMuZW5hYmxlZFxuICAgIHRoaXMuZW5hYmxlZCA9IGVuYWJsZWRcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLypcbiAgUHJpdmF0ZSBNZXRob2RzXG4gID09PT09PT09PT09PT09PVxuICBNZXRob2RzIHRoYXQgc2hvdWxkbid0IGJlIHVzZWQgZXh0ZXJuYWxseVxuICAqL1xuICBhZGRUcmFuc2Zvcm0odHJhbnNmb3JtKSB7XG4gICAgdGhpcy50cmFuc2Zvcm1zLmxtdWx0aXBseU8odHJhbnNmb3JtKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBhZnRlcihmbikge1xuICAgIHJldHVybiB0aGlzLm9uKCdmaW5pc2hlZCcsIGZuKVxuICB9XG5cbiAgYW5pbWF0ZShkdXJhdGlvbiwgZGVsYXksIHdoZW4pIHtcbiAgICBjb25zdCBvID0gUnVubmVyLnNhbml0aXNlKGR1cmF0aW9uLCBkZWxheSwgd2hlbilcbiAgICBjb25zdCBydW5uZXIgPSBuZXcgUnVubmVyKG8uZHVyYXRpb24pXG4gICAgaWYgKHRoaXMuX3RpbWVsaW5lKSBydW5uZXIudGltZWxpbmUodGhpcy5fdGltZWxpbmUpXG4gICAgaWYgKHRoaXMuX2VsZW1lbnQpIHJ1bm5lci5lbGVtZW50KHRoaXMuX2VsZW1lbnQpXG4gICAgcmV0dXJuIHJ1bm5lci5sb29wKG8pLnNjaGVkdWxlKG8uZGVsYXksIG8ud2hlbilcbiAgfVxuXG4gIGNsZWFyVHJhbnNmb3JtKCkge1xuICAgIHRoaXMudHJhbnNmb3JtcyA9IG5ldyBNYXRyaXgoKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvLyBUT0RPOiBLZWVwIHRyYWNrIG9mIGFsbCB0cmFuc2Zvcm1hdGlvbnMgc28gdGhhdCBkZWxldGlvbiBpcyBmYXN0ZXJcbiAgY2xlYXJUcmFuc2Zvcm1zRnJvbVF1ZXVlKCkge1xuICAgIGlmIChcbiAgICAgICF0aGlzLmRvbmUgfHxcbiAgICAgICF0aGlzLl90aW1lbGluZSB8fFxuICAgICAgIXRoaXMuX3RpbWVsaW5lLl9ydW5uZXJJZHMuaW5jbHVkZXModGhpcy5pZClcbiAgICApIHtcbiAgICAgIHRoaXMuX3F1ZXVlID0gdGhpcy5fcXVldWUuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgICAgIHJldHVybiAhaXRlbS5pc1RyYW5zZm9ybVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBkZWxheShkZWxheSkge1xuICAgIHJldHVybiB0aGlzLmFuaW1hdGUoMCwgZGVsYXkpXG4gIH1cblxuICBkdXJhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5fdGltZXMgKiAodGhpcy5fd2FpdCArIHRoaXMuX2R1cmF0aW9uKSAtIHRoaXMuX3dhaXRcbiAgfVxuXG4gIGR1cmluZyhmbikge1xuICAgIHJldHVybiB0aGlzLnF1ZXVlKG51bGwsIGZuKVxuICB9XG5cbiAgZWFzZShmbikge1xuICAgIHRoaXMuX3N0ZXBwZXIgPSBuZXcgRWFzZShmbilcbiAgICByZXR1cm4gdGhpc1xuICB9XG4gIC8qXG4gIFJ1bm5lciBEZWZpbml0aW9uc1xuICA9PT09PT09PT09PT09PT09PT1cbiAgVGhlc2UgbWV0aG9kcyBoZWxwIHVzIGRlZmluZSB0aGUgcnVudGltZSBiZWhhdmlvdXIgb2YgdGhlIFJ1bm5lciBvciB0aGV5XG4gIGhlbHAgdXMgbWFrZSBuZXcgcnVubmVycyBmcm9tIHRoZSBjdXJyZW50IHJ1bm5lclxuICAqL1xuXG4gIGVsZW1lbnQoZWxlbWVudCkge1xuICAgIGlmIChlbGVtZW50ID09IG51bGwpIHJldHVybiB0aGlzLl9lbGVtZW50XG4gICAgdGhpcy5fZWxlbWVudCA9IGVsZW1lbnRcbiAgICBlbGVtZW50Ll9wcmVwYXJlUnVubmVyKClcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgZmluaXNoKCkge1xuICAgIHJldHVybiB0aGlzLnN0ZXAoSW5maW5pdHkpXG4gIH1cblxuICBsb29wKHRpbWVzLCBzd2luZywgd2FpdCkge1xuICAgIC8vIERlYWwgd2l0aCB0aGUgdXNlciBwYXNzaW5nIGluIGFuIG9iamVjdFxuICAgIGlmICh0eXBlb2YgdGltZXMgPT09ICdvYmplY3QnKSB7XG4gICAgICBzd2luZyA9IHRpbWVzLnN3aW5nXG4gICAgICB3YWl0ID0gdGltZXMud2FpdFxuICAgICAgdGltZXMgPSB0aW1lcy50aW1lc1xuICAgIH1cblxuICAgIC8vIFNhbml0aXNlIHRoZSB2YWx1ZXMgYW5kIHN0b3JlIHRoZW1cbiAgICB0aGlzLl90aW1lcyA9IHRpbWVzIHx8IEluZmluaXR5XG4gICAgdGhpcy5fc3dpbmcgPSBzd2luZyB8fCBmYWxzZVxuICAgIHRoaXMuX3dhaXQgPSB3YWl0IHx8IDBcblxuICAgIC8vIEFsbG93IHRydWUgdG8gYmUgcGFzc2VkXG4gICAgaWYgKHRoaXMuX3RpbWVzID09PSB0cnVlKSB7XG4gICAgICB0aGlzLl90aW1lcyA9IEluZmluaXR5XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGxvb3BzKHApIHtcbiAgICBjb25zdCBsb29wRHVyYXRpb24gPSB0aGlzLl9kdXJhdGlvbiArIHRoaXMuX3dhaXRcbiAgICBpZiAocCA9PSBudWxsKSB7XG4gICAgICBjb25zdCBsb29wc0RvbmUgPSBNYXRoLmZsb29yKHRoaXMuX3RpbWUgLyBsb29wRHVyYXRpb24pXG4gICAgICBjb25zdCByZWxhdGl2ZVRpbWUgPSB0aGlzLl90aW1lIC0gbG9vcHNEb25lICogbG9vcER1cmF0aW9uXG4gICAgICBjb25zdCBwb3NpdGlvbiA9IHJlbGF0aXZlVGltZSAvIHRoaXMuX2R1cmF0aW9uXG4gICAgICByZXR1cm4gTWF0aC5taW4obG9vcHNEb25lICsgcG9zaXRpb24sIHRoaXMuX3RpbWVzKVxuICAgIH1cbiAgICBjb25zdCB3aG9sZSA9IE1hdGguZmxvb3IocClcbiAgICBjb25zdCBwYXJ0aWFsID0gcCAlIDFcbiAgICBjb25zdCB0aW1lID0gbG9vcER1cmF0aW9uICogd2hvbGUgKyB0aGlzLl9kdXJhdGlvbiAqIHBhcnRpYWxcbiAgICByZXR1cm4gdGhpcy50aW1lKHRpbWUpXG4gIH1cblxuICBwZXJzaXN0KGR0T3JGb3JldmVyKSB7XG4gICAgaWYgKGR0T3JGb3JldmVyID09IG51bGwpIHJldHVybiB0aGlzLl9wZXJzaXN0XG4gICAgdGhpcy5fcGVyc2lzdCA9IGR0T3JGb3JldmVyXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHBvc2l0aW9uKHApIHtcbiAgICAvLyBHZXQgYWxsIG9mIHRoZSB2YXJpYWJsZXMgd2UgbmVlZFxuICAgIGNvbnN0IHggPSB0aGlzLl90aW1lXG4gICAgY29uc3QgZCA9IHRoaXMuX2R1cmF0aW9uXG4gICAgY29uc3QgdyA9IHRoaXMuX3dhaXRcbiAgICBjb25zdCB0ID0gdGhpcy5fdGltZXNcbiAgICBjb25zdCBzID0gdGhpcy5fc3dpbmdcbiAgICBjb25zdCByID0gdGhpcy5fcmV2ZXJzZVxuICAgIGxldCBwb3NpdGlvblxuXG4gICAgaWYgKHAgPT0gbnVsbCkge1xuICAgICAgLypcbiAgICAgIFRoaXMgZnVuY3Rpb24gY29udmVydHMgYSB0aW1lIHRvIGEgcG9zaXRpb24gaW4gdGhlIHJhbmdlIFswLCAxXVxuICAgICAgVGhlIGZ1bGwgZXhwbGFuYXRpb24gY2FuIGJlIGZvdW5kIGluIHRoaXMgZGVzbW9zIGRlbW9uc3RyYXRpb25cbiAgICAgICAgaHR0cHM6Ly93d3cuZGVzbW9zLmNvbS9jYWxjdWxhdG9yL3U0ZmJhdmdjaGVcbiAgICAgIFRoZSBsb2dpYyBpcyBzbGlnaHRseSBzaW1wbGlmaWVkIGhlcmUgYmVjYXVzZSB3ZSBjYW4gdXNlIGJvb2xlYW5zXG4gICAgICAqL1xuXG4gICAgICAvLyBGaWd1cmUgb3V0IHRoZSB2YWx1ZSB3aXRob3V0IHRoaW5raW5nIGFib3V0IHRoZSBzdGFydCBvciBlbmQgdGltZVxuICAgICAgY29uc3QgZiA9IGZ1bmN0aW9uICh4KSB7XG4gICAgICAgIGNvbnN0IHN3aW5naW5nID0gcyAqIE1hdGguZmxvb3IoKHggJSAoMiAqICh3ICsgZCkpKSAvICh3ICsgZCkpXG4gICAgICAgIGNvbnN0IGJhY2t3YXJkcyA9IChzd2luZ2luZyAmJiAhcikgfHwgKCFzd2luZ2luZyAmJiByKVxuICAgICAgICBjb25zdCB1bmNsaXBlZCA9XG4gICAgICAgICAgKE1hdGgucG93KC0xLCBiYWNrd2FyZHMpICogKHggJSAodyArIGQpKSkgLyBkICsgYmFja3dhcmRzXG4gICAgICAgIGNvbnN0IGNsaXBwZWQgPSBNYXRoLm1heChNYXRoLm1pbih1bmNsaXBlZCwgMSksIDApXG4gICAgICAgIHJldHVybiBjbGlwcGVkXG4gICAgICB9XG5cbiAgICAgIC8vIEZpZ3VyZSBvdXQgdGhlIHZhbHVlIGJ5IGluY29ycG9yYXRpbmcgdGhlIHN0YXJ0IHRpbWVcbiAgICAgIGNvbnN0IGVuZFRpbWUgPSB0ICogKHcgKyBkKSAtIHdcbiAgICAgIHBvc2l0aW9uID1cbiAgICAgICAgeCA8PSAwXG4gICAgICAgICAgPyBNYXRoLnJvdW5kKGYoMWUtNSkpXG4gICAgICAgICAgOiB4IDwgZW5kVGltZVxuICAgICAgICAgICAgPyBmKHgpXG4gICAgICAgICAgICA6IE1hdGgucm91bmQoZihlbmRUaW1lIC0gMWUtNSkpXG4gICAgICByZXR1cm4gcG9zaXRpb25cbiAgICB9XG5cbiAgICAvLyBXb3JrIG91dCB0aGUgbG9vcHMgZG9uZSBhbmQgYWRkIHRoZSBwb3NpdGlvbiB0byB0aGUgbG9vcHMgZG9uZVxuICAgIGNvbnN0IGxvb3BzRG9uZSA9IE1hdGguZmxvb3IodGhpcy5sb29wcygpKVxuICAgIGNvbnN0IHN3aW5nRm9yd2FyZCA9IHMgJiYgbG9vcHNEb25lICUgMiA9PT0gMFxuICAgIGNvbnN0IGZvcndhcmRzID0gKHN3aW5nRm9yd2FyZCAmJiAhcikgfHwgKHIgJiYgc3dpbmdGb3J3YXJkKVxuICAgIHBvc2l0aW9uID0gbG9vcHNEb25lICsgKGZvcndhcmRzID8gcCA6IDEgLSBwKVxuICAgIHJldHVybiB0aGlzLmxvb3BzKHBvc2l0aW9uKVxuICB9XG5cbiAgcHJvZ3Jlc3MocCkge1xuICAgIGlmIChwID09IG51bGwpIHtcbiAgICAgIHJldHVybiBNYXRoLm1pbigxLCB0aGlzLl90aW1lIC8gdGhpcy5kdXJhdGlvbigpKVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy50aW1lKHAgKiB0aGlzLmR1cmF0aW9uKCkpXG4gIH1cblxuICAvKlxuICBCYXNpYyBGdW5jdGlvbmFsaXR5XG4gID09PT09PT09PT09PT09PT09PT1cbiAgVGhlc2UgbWV0aG9kcyBhbGxvdyB1cyB0byBhdHRhY2ggYmFzaWMgZnVuY3Rpb25zIHRvIHRoZSBydW5uZXIgZGlyZWN0bHlcbiAgKi9cbiAgcXVldWUoaW5pdEZuLCBydW5GbiwgcmV0YXJnZXRGbiwgaXNUcmFuc2Zvcm0pIHtcbiAgICB0aGlzLl9xdWV1ZS5wdXNoKHtcbiAgICAgIGluaXRpYWxpc2VyOiBpbml0Rm4gfHwgbm9vcCxcbiAgICAgIHJ1bm5lcjogcnVuRm4gfHwgbm9vcCxcbiAgICAgIHJldGFyZ2V0OiByZXRhcmdldEZuLFxuICAgICAgaXNUcmFuc2Zvcm06IGlzVHJhbnNmb3JtLFxuICAgICAgaW5pdGlhbGlzZWQ6IGZhbHNlLFxuICAgICAgZmluaXNoZWQ6IGZhbHNlXG4gICAgfSlcbiAgICBjb25zdCB0aW1lbGluZSA9IHRoaXMudGltZWxpbmUoKVxuICAgIHRpbWVsaW5lICYmIHRoaXMudGltZWxpbmUoKS5fY29udGludWUoKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICByZXNldCgpIHtcbiAgICBpZiAodGhpcy5fcmVzZXRlZCkgcmV0dXJuIHRoaXNcbiAgICB0aGlzLnRpbWUoMClcbiAgICB0aGlzLl9yZXNldGVkID0gdHJ1ZVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICByZXZlcnNlKHJldmVyc2UpIHtcbiAgICB0aGlzLl9yZXZlcnNlID0gcmV2ZXJzZSA9PSBudWxsID8gIXRoaXMuX3JldmVyc2UgOiByZXZlcnNlXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHNjaGVkdWxlKHRpbWVsaW5lLCBkZWxheSwgd2hlbikge1xuICAgIC8vIFRoZSB1c2VyIGRvZXNuJ3QgbmVlZCB0byBwYXNzIGEgdGltZWxpbmUgaWYgd2UgYWxyZWFkeSBoYXZlIG9uZVxuICAgIGlmICghKHRpbWVsaW5lIGluc3RhbmNlb2YgVGltZWxpbmUpKSB7XG4gICAgICB3aGVuID0gZGVsYXlcbiAgICAgIGRlbGF5ID0gdGltZWxpbmVcbiAgICAgIHRpbWVsaW5lID0gdGhpcy50aW1lbGluZSgpXG4gICAgfVxuXG4gICAgLy8gSWYgdGhlcmUgaXMgbm8gdGltZWxpbmUsIHllbGwgYXQgdGhlIHVzZXIuLi5cbiAgICBpZiAoIXRpbWVsaW5lKSB7XG4gICAgICB0aHJvdyBFcnJvcignUnVubmVyIGNhbm5vdCBiZSBzY2hlZHVsZWQgd2l0aG91dCB0aW1lbGluZScpXG4gICAgfVxuXG4gICAgLy8gU2NoZWR1bGUgdGhlIHJ1bm5lciBvbiB0aGUgdGltZWxpbmUgcHJvdmlkZWRcbiAgICB0aW1lbGluZS5zY2hlZHVsZSh0aGlzLCBkZWxheSwgd2hlbilcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgc3RlcChkdCkge1xuICAgIC8vIElmIHdlIGFyZSBpbmFjdGl2ZSwgdGhpcyBzdGVwcGVyIGp1c3QgZ2V0cyBza2lwcGVkXG4gICAgaWYgKCF0aGlzLmVuYWJsZWQpIHJldHVybiB0aGlzXG5cbiAgICAvLyBVcGRhdGUgdGhlIHRpbWUgYW5kIGdldCB0aGUgbmV3IHBvc2l0aW9uXG4gICAgZHQgPSBkdCA9PSBudWxsID8gMTYgOiBkdFxuICAgIHRoaXMuX3RpbWUgKz0gZHRcbiAgICBjb25zdCBwb3NpdGlvbiA9IHRoaXMucG9zaXRpb24oKVxuXG4gICAgLy8gRmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIHJ1biB0aGUgc3RlcHBlciBpbiB0aGlzIGZyYW1lXG4gICAgY29uc3QgcnVubmluZyA9IHRoaXMuX2xhc3RQb3NpdGlvbiAhPT0gcG9zaXRpb24gJiYgdGhpcy5fdGltZSA+PSAwXG4gICAgdGhpcy5fbGFzdFBvc2l0aW9uID0gcG9zaXRpb25cblxuICAgIC8vIEZpZ3VyZSBvdXQgaWYgd2UganVzdCBzdGFydGVkXG4gICAgY29uc3QgZHVyYXRpb24gPSB0aGlzLmR1cmF0aW9uKClcbiAgICBjb25zdCBqdXN0U3RhcnRlZCA9IHRoaXMuX2xhc3RUaW1lIDw9IDAgJiYgdGhpcy5fdGltZSA+IDBcbiAgICBjb25zdCBqdXN0RmluaXNoZWQgPSB0aGlzLl9sYXN0VGltZSA8IGR1cmF0aW9uICYmIHRoaXMuX3RpbWUgPj0gZHVyYXRpb25cblxuICAgIHRoaXMuX2xhc3RUaW1lID0gdGhpcy5fdGltZVxuICAgIGlmIChqdXN0U3RhcnRlZCkge1xuICAgICAgdGhpcy5maXJlKCdzdGFydCcsIHRoaXMpXG4gICAgfVxuXG4gICAgLy8gV29yayBvdXQgaWYgdGhlIHJ1bm5lciBpcyBmaW5pc2hlZCBzZXQgdGhlIGRvbmUgZmxhZyBoZXJlIHNvIGFuaW1hdGlvbnNcbiAgICAvLyBrbm93LCB0aGF0IHRoZXkgYXJlIHJ1bm5pbmcgaW4gdGhlIGxhc3Qgc3RlcCAodGhpcyBpcyBnb29kIGZvclxuICAgIC8vIHRyYW5zZm9ybWF0aW9ucyB3aGljaCBjYW4gYmUgbWVyZ2VkKVxuICAgIGNvbnN0IGRlY2xhcmF0aXZlID0gdGhpcy5faXNEZWNsYXJhdGl2ZVxuICAgIHRoaXMuZG9uZSA9ICFkZWNsYXJhdGl2ZSAmJiAhanVzdEZpbmlzaGVkICYmIHRoaXMuX3RpbWUgPj0gZHVyYXRpb25cblxuICAgIC8vIFJ1bm5lciBpcyBydW5uaW5nLiBTbyBpdHMgbm90IGluIHJlc2V0IHN0YXRlIGFueW1vcmVcbiAgICB0aGlzLl9yZXNldGVkID0gZmFsc2VcblxuICAgIGxldCBjb252ZXJnZWQgPSBmYWxzZVxuICAgIC8vIENhbGwgaW5pdGlhbGlzZSBhbmQgdGhlIHJ1biBmdW5jdGlvblxuICAgIGlmIChydW5uaW5nIHx8IGRlY2xhcmF0aXZlKSB7XG4gICAgICB0aGlzLl9pbml0aWFsaXNlKHJ1bm5pbmcpXG5cbiAgICAgIC8vIGNsZWFyIHRoZSB0cmFuc2Zvcm1zIG9uIHRoaXMgcnVubmVyIHNvIHRoZXkgZG9udCBnZXQgYWRkZWQgYWdhaW4gYW5kIGFnYWluXG4gICAgICB0aGlzLnRyYW5zZm9ybXMgPSBuZXcgTWF0cml4KClcbiAgICAgIGNvbnZlcmdlZCA9IHRoaXMuX3J1bihkZWNsYXJhdGl2ZSA/IGR0IDogcG9zaXRpb24pXG5cbiAgICAgIHRoaXMuZmlyZSgnc3RlcCcsIHRoaXMpXG4gICAgfVxuICAgIC8vIGNvcnJlY3QgdGhlIGRvbmUgZmxhZyBoZXJlXG4gICAgLy8gZGVjbGFyYXRpdmUgYW5pbWF0aW9ucyBpdHNlbGYga25vdyB3aGVuIHRoZXkgY29udmVyZ2VkXG4gICAgdGhpcy5kb25lID0gdGhpcy5kb25lIHx8IChjb252ZXJnZWQgJiYgZGVjbGFyYXRpdmUpXG4gICAgaWYgKGp1c3RGaW5pc2hlZCkge1xuICAgICAgdGhpcy5maXJlKCdmaW5pc2hlZCcsIHRoaXMpXG4gICAgfVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKlxuICBSdW5uZXIgYW5pbWF0aW9uIG1ldGhvZHNcbiAgPT09PT09PT09PT09PT09PT09PT09PT09XG4gIENvbnRyb2wgaG93IHRoZSBhbmltYXRpb24gcGxheXNcbiAgKi9cbiAgdGltZSh0aW1lKSB7XG4gICAgaWYgKHRpbWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX3RpbWVcbiAgICB9XG4gICAgY29uc3QgZHQgPSB0aW1lIC0gdGhpcy5fdGltZVxuICAgIHRoaXMuc3RlcChkdClcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgdGltZWxpbmUodGltZWxpbmUpIHtcbiAgICAvLyBjaGVjayBleHBsaWNpdGx5IGZvciB1bmRlZmluZWQgc28gd2UgY2FuIHNldCB0aGUgdGltZWxpbmUgdG8gbnVsbFxuICAgIGlmICh0eXBlb2YgdGltZWxpbmUgPT09ICd1bmRlZmluZWQnKSByZXR1cm4gdGhpcy5fdGltZWxpbmVcbiAgICB0aGlzLl90aW1lbGluZSA9IHRpbWVsaW5lXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIHVuc2NoZWR1bGUoKSB7XG4gICAgY29uc3QgdGltZWxpbmUgPSB0aGlzLnRpbWVsaW5lKClcbiAgICB0aW1lbGluZSAmJiB0aW1lbGluZS51bnNjaGVkdWxlKHRoaXMpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8vIFJ1biBlYWNoIGluaXRpYWxpc2UgZnVuY3Rpb24gaW4gdGhlIHJ1bm5lciBpZiByZXF1aXJlZFxuICBfaW5pdGlhbGlzZShydW5uaW5nKSB7XG4gICAgLy8gSWYgd2UgYXJlbid0IHJ1bm5pbmcsIHdlIHNob3VsZG4ndCBpbml0aWFsaXNlIHdoZW4gbm90IGRlY2xhcmF0aXZlXG4gICAgaWYgKCFydW5uaW5nICYmICF0aGlzLl9pc0RlY2xhcmF0aXZlKSByZXR1cm5cblxuICAgIC8vIExvb3AgdGhyb3VnaCBhbGwgb2YgdGhlIGluaXRpYWxpc2Vyc1xuICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLl9xdWV1ZS5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICAgICAgLy8gR2V0IHRoZSBjdXJyZW50IGluaXRpYWxpc2VyXG4gICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5fcXVldWVbaV1cblxuICAgICAgLy8gRGV0ZXJtaW5lIHdoZXRoZXIgd2UgbmVlZCB0byBpbml0aWFsaXNlXG4gICAgICBjb25zdCBuZWVkc0l0ID0gdGhpcy5faXNEZWNsYXJhdGl2ZSB8fCAoIWN1cnJlbnQuaW5pdGlhbGlzZWQgJiYgcnVubmluZylcbiAgICAgIHJ1bm5pbmcgPSAhY3VycmVudC5maW5pc2hlZFxuXG4gICAgICAvLyBDYWxsIHRoZSBpbml0aWFsaXNlciBpZiB3ZSBuZWVkIHRvXG4gICAgICBpZiAobmVlZHNJdCAmJiBydW5uaW5nKSB7XG4gICAgICAgIGN1cnJlbnQuaW5pdGlhbGlzZXIuY2FsbCh0aGlzKVxuICAgICAgICBjdXJyZW50LmluaXRpYWxpc2VkID0gdHJ1ZVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNhdmUgYSBtb3JwaGVyIHRvIHRoZSBtb3JwaGVyIGxpc3Qgc28gdGhhdCB3ZSBjYW4gcmV0YXJnZXQgaXQgbGF0ZXJcbiAgX3JlbWVtYmVyTW9ycGhlcihtZXRob2QsIG1vcnBoZXIpIHtcbiAgICB0aGlzLl9oaXN0b3J5W21ldGhvZF0gPSB7XG4gICAgICBtb3JwaGVyOiBtb3JwaGVyLFxuICAgICAgY2FsbGVyOiB0aGlzLl9xdWV1ZVt0aGlzLl9xdWV1ZS5sZW5ndGggLSAxXVxuICAgIH1cblxuICAgIC8vIFdlIGhhdmUgdG8gcmVzdW1lIHRoZSB0aW1lbGluZSBpbiBjYXNlIGEgY29udHJvbGxlclxuICAgIC8vIGlzIGFscmVhZHkgZG9uZSB3aXRob3V0IGJlaW5nIGV2ZXIgcnVuXG4gICAgLy8gVGhpcyBjYW4gaGFwcGVuIHdoZW4gZS5nLiB0aGlzIGlzIGRvbmU6XG4gICAgLy8gICAgYW5pbSA9IGVsLmFuaW1hdGUobmV3IFNWRy5TcHJpbmcpXG4gICAgLy8gYW5kIGxhdGVyXG4gICAgLy8gICAgYW5pbS5tb3ZlKC4uLilcbiAgICBpZiAodGhpcy5faXNEZWNsYXJhdGl2ZSkge1xuICAgICAgY29uc3QgdGltZWxpbmUgPSB0aGlzLnRpbWVsaW5lKClcbiAgICAgIHRpbWVsaW5lICYmIHRpbWVsaW5lLnBsYXkoKVxuICAgIH1cbiAgfVxuXG4gIC8vIFRyeSB0byBzZXQgdGhlIHRhcmdldCBmb3IgYSBtb3JwaGVyIGlmIHRoZSBtb3JwaGVyIGV4aXN0cywgb3RoZXJ3aXNlXG4gIC8vIFJ1biBlYWNoIHJ1biBmdW5jdGlvbiBmb3IgdGhlIHBvc2l0aW9uIG9yIGR0IGdpdmVuXG4gIF9ydW4ocG9zaXRpb25PckR0KSB7XG4gICAgLy8gUnVuIGFsbCBvZiB0aGUgX3F1ZXVlIGRpcmVjdGx5XG4gICAgbGV0IGFsbGZpbmlzaGVkID0gdHJ1ZVxuICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSB0aGlzLl9xdWV1ZS5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICAgICAgLy8gR2V0IHRoZSBjdXJyZW50IGZ1bmN0aW9uIHRvIHJ1blxuICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuX3F1ZXVlW2ldXG5cbiAgICAgIC8vIFJ1biB0aGUgZnVuY3Rpb24gaWYgaXRzIG5vdCBmaW5pc2hlZCwgd2Uga2VlcCB0cmFjayBvZiB0aGUgZmluaXNoZWRcbiAgICAgIC8vIGZsYWcgZm9yIHRoZSBzYWtlIG9mIGRlY2xhcmF0aXZlIF9xdWV1ZVxuICAgICAgY29uc3QgY29udmVyZ2VkID0gY3VycmVudC5ydW5uZXIuY2FsbCh0aGlzLCBwb3NpdGlvbk9yRHQpXG4gICAgICBjdXJyZW50LmZpbmlzaGVkID0gY3VycmVudC5maW5pc2hlZCB8fCBjb252ZXJnZWQgPT09IHRydWVcbiAgICAgIGFsbGZpbmlzaGVkID0gYWxsZmluaXNoZWQgJiYgY3VycmVudC5maW5pc2hlZFxuICAgIH1cblxuICAgIC8vIFdlIHJlcG9ydCB3aGVuIGFsbCBvZiB0aGUgY29uc3RydWN0b3JzIGFyZSBmaW5pc2hlZFxuICAgIHJldHVybiBhbGxmaW5pc2hlZFxuICB9XG5cbiAgLy8gZG8gbm90aGluZyBhbmQgcmV0dXJuIGZhbHNlXG4gIF90cnlSZXRhcmdldChtZXRob2QsIHRhcmdldCwgZXh0cmEpIHtcbiAgICBpZiAodGhpcy5faGlzdG9yeVttZXRob2RdKSB7XG4gICAgICAvLyBpZiB0aGUgbGFzdCBtZXRob2Qgd2Fzbid0IGV2ZW4gaW5pdGlhbGlzZWQsIHRocm93IGl0IGF3YXlcbiAgICAgIGlmICghdGhpcy5faGlzdG9yeVttZXRob2RdLmNhbGxlci5pbml0aWFsaXNlZCkge1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuX3F1ZXVlLmluZGV4T2YodGhpcy5faGlzdG9yeVttZXRob2RdLmNhbGxlcilcbiAgICAgICAgdGhpcy5fcXVldWUuc3BsaWNlKGluZGV4LCAxKVxuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cblxuICAgICAgLy8gZm9yIHRoZSBjYXNlIG9mIHRyYW5zZm9ybWF0aW9ucywgd2UgdXNlIHRoZSBzcGVjaWFsIHJldGFyZ2V0IGZ1bmN0aW9uXG4gICAgICAvLyB3aGljaCBoYXMgYWNjZXNzIHRvIHRoZSBvdXRlciBzY29wZVxuICAgICAgaWYgKHRoaXMuX2hpc3RvcnlbbWV0aG9kXS5jYWxsZXIucmV0YXJnZXQpIHtcbiAgICAgICAgdGhpcy5faGlzdG9yeVttZXRob2RdLmNhbGxlci5yZXRhcmdldC5jYWxsKHRoaXMsIHRhcmdldCwgZXh0cmEpXG4gICAgICAgIC8vIGZvciBldmVyeXRoaW5nIGVsc2UgYSBzaW1wbGUgbW9ycGhlciBjaGFuZ2UgaXMgc3VmZmljaWVudFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5faGlzdG9yeVttZXRob2RdLm1vcnBoZXIudG8odGFyZ2V0KVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9oaXN0b3J5W21ldGhvZF0uY2FsbGVyLmZpbmlzaGVkID0gZmFsc2VcbiAgICAgIGNvbnN0IHRpbWVsaW5lID0gdGhpcy50aW1lbGluZSgpXG4gICAgICB0aW1lbGluZSAmJiB0aW1lbGluZS5wbGF5KClcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICAgIHJldHVybiBmYWxzZVxuICB9XG59XG5cblJ1bm5lci5pZCA9IDBcblxuZXhwb3J0IGNsYXNzIEZha2VSdW5uZXIge1xuICBjb25zdHJ1Y3Rvcih0cmFuc2Zvcm1zID0gbmV3IE1hdHJpeCgpLCBpZCA9IC0xLCBkb25lID0gdHJ1ZSkge1xuICAgIHRoaXMudHJhbnNmb3JtcyA9IHRyYW5zZm9ybXNcbiAgICB0aGlzLmlkID0gaWRcbiAgICB0aGlzLmRvbmUgPSBkb25lXG4gIH1cblxuICBjbGVhclRyYW5zZm9ybXNGcm9tUXVldWUoKSB7fVxufVxuXG5leHRlbmQoW1J1bm5lciwgRmFrZVJ1bm5lcl0sIHtcbiAgbWVyZ2VXaXRoKHJ1bm5lcikge1xuICAgIHJldHVybiBuZXcgRmFrZVJ1bm5lcihcbiAgICAgIHJ1bm5lci50cmFuc2Zvcm1zLmxtdWx0aXBseSh0aGlzLnRyYW5zZm9ybXMpLFxuICAgICAgcnVubmVyLmlkXG4gICAgKVxuICB9XG59KVxuXG4vLyBGYWtlUnVubmVyLmVtcHR5UnVubmVyID0gbmV3IEZha2VSdW5uZXIoKVxuXG5jb25zdCBsbXVsdGlwbHkgPSAobGFzdCwgY3VycikgPT4gbGFzdC5sbXVsdGlwbHlPKGN1cnIpXG5jb25zdCBnZXRSdW5uZXJUcmFuc2Zvcm0gPSAocnVubmVyKSA9PiBydW5uZXIudHJhbnNmb3Jtc1xuXG5mdW5jdGlvbiBtZXJnZVRyYW5zZm9ybXMoKSB7XG4gIC8vIEZpbmQgdGhlIG1hdHJpeCB0byBhcHBseSB0byB0aGUgZWxlbWVudCBhbmQgYXBwbHkgaXRcbiAgY29uc3QgcnVubmVycyA9IHRoaXMuX3RyYW5zZm9ybWF0aW9uUnVubmVycy5ydW5uZXJzXG4gIGNvbnN0IG5ldFRyYW5zZm9ybSA9IHJ1bm5lcnNcbiAgICAubWFwKGdldFJ1bm5lclRyYW5zZm9ybSlcbiAgICAucmVkdWNlKGxtdWx0aXBseSwgbmV3IE1hdHJpeCgpKVxuXG4gIHRoaXMudHJhbnNmb3JtKG5ldFRyYW5zZm9ybSlcblxuICB0aGlzLl90cmFuc2Zvcm1hdGlvblJ1bm5lcnMubWVyZ2UoKVxuXG4gIGlmICh0aGlzLl90cmFuc2Zvcm1hdGlvblJ1bm5lcnMubGVuZ3RoKCkgPT09IDEpIHtcbiAgICB0aGlzLl9mcmFtZUlkID0gbnVsbFxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSdW5uZXJBcnJheSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMucnVubmVycyA9IFtdXG4gICAgdGhpcy5pZHMgPSBbXVxuICB9XG5cbiAgYWRkKHJ1bm5lcikge1xuICAgIGlmICh0aGlzLnJ1bm5lcnMuaW5jbHVkZXMocnVubmVyKSkgcmV0dXJuXG4gICAgY29uc3QgaWQgPSBydW5uZXIuaWQgKyAxXG5cbiAgICB0aGlzLnJ1bm5lcnMucHVzaChydW5uZXIpXG4gICAgdGhpcy5pZHMucHVzaChpZClcblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBjbGVhckJlZm9yZShpZCkge1xuICAgIGNvbnN0IGRlbGV0ZUNudCA9IHRoaXMuaWRzLmluZGV4T2YoaWQgKyAxKSB8fCAxXG4gICAgdGhpcy5pZHMuc3BsaWNlKDAsIGRlbGV0ZUNudCwgMClcbiAgICB0aGlzLnJ1bm5lcnNcbiAgICAgIC5zcGxpY2UoMCwgZGVsZXRlQ250LCBuZXcgRmFrZVJ1bm5lcigpKVxuICAgICAgLmZvckVhY2goKHIpID0+IHIuY2xlYXJUcmFuc2Zvcm1zRnJvbVF1ZXVlKCkpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIGVkaXQoaWQsIG5ld1J1bm5lcikge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pZHMuaW5kZXhPZihpZCArIDEpXG4gICAgdGhpcy5pZHMuc3BsaWNlKGluZGV4LCAxLCBpZCArIDEpXG4gICAgdGhpcy5ydW5uZXJzLnNwbGljZShpbmRleCwgMSwgbmV3UnVubmVyKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICBnZXRCeUlEKGlkKSB7XG4gICAgcmV0dXJuIHRoaXMucnVubmVyc1t0aGlzLmlkcy5pbmRleE9mKGlkICsgMSldXG4gIH1cblxuICBsZW5ndGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuaWRzLmxlbmd0aFxuICB9XG5cbiAgbWVyZ2UoKSB7XG4gICAgbGV0IGxhc3RSdW5uZXIgPSBudWxsXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnJ1bm5lcnMubGVuZ3RoOyArK2kpIHtcbiAgICAgIGNvbnN0IHJ1bm5lciA9IHRoaXMucnVubmVyc1tpXVxuXG4gICAgICBjb25zdCBjb25kaXRpb24gPVxuICAgICAgICBsYXN0UnVubmVyICYmXG4gICAgICAgIHJ1bm5lci5kb25lICYmXG4gICAgICAgIGxhc3RSdW5uZXIuZG9uZSAmJlxuICAgICAgICAvLyBkb24ndCBtZXJnZSBydW5uZXIgd2hlbiBwZXJzaXN0ZWQgb24gdGltZWxpbmVcbiAgICAgICAgKCFydW5uZXIuX3RpbWVsaW5lIHx8XG4gICAgICAgICAgIXJ1bm5lci5fdGltZWxpbmUuX3J1bm5lcklkcy5pbmNsdWRlcyhydW5uZXIuaWQpKSAmJlxuICAgICAgICAoIWxhc3RSdW5uZXIuX3RpbWVsaW5lIHx8XG4gICAgICAgICAgIWxhc3RSdW5uZXIuX3RpbWVsaW5lLl9ydW5uZXJJZHMuaW5jbHVkZXMobGFzdFJ1bm5lci5pZCkpXG5cbiAgICAgIGlmIChjb25kaXRpb24pIHtcbiAgICAgICAgLy8gdGhlICsxIGhhcHBlbnMgaW4gdGhlIGZ1bmN0aW9uXG4gICAgICAgIHRoaXMucmVtb3ZlKHJ1bm5lci5pZClcbiAgICAgICAgY29uc3QgbmV3UnVubmVyID0gcnVubmVyLm1lcmdlV2l0aChsYXN0UnVubmVyKVxuICAgICAgICB0aGlzLmVkaXQobGFzdFJ1bm5lci5pZCwgbmV3UnVubmVyKVxuICAgICAgICBsYXN0UnVubmVyID0gbmV3UnVubmVyXG4gICAgICAgIC0taVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGFzdFJ1bm5lciA9IHJ1bm5lclxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICByZW1vdmUoaWQpIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuaWRzLmluZGV4T2YoaWQgKyAxKVxuICAgIHRoaXMuaWRzLnNwbGljZShpbmRleCwgMSlcbiAgICB0aGlzLnJ1bm5lcnMuc3BsaWNlKGluZGV4LCAxKVxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgRWxlbWVudDoge1xuICAgIGFuaW1hdGUoZHVyYXRpb24sIGRlbGF5LCB3aGVuKSB7XG4gICAgICBjb25zdCBvID0gUnVubmVyLnNhbml0aXNlKGR1cmF0aW9uLCBkZWxheSwgd2hlbilcbiAgICAgIGNvbnN0IHRpbWVsaW5lID0gdGhpcy50aW1lbGluZSgpXG4gICAgICByZXR1cm4gbmV3IFJ1bm5lcihvLmR1cmF0aW9uKVxuICAgICAgICAubG9vcChvKVxuICAgICAgICAuZWxlbWVudCh0aGlzKVxuICAgICAgICAudGltZWxpbmUodGltZWxpbmUucGxheSgpKVxuICAgICAgICAuc2NoZWR1bGUoby5kZWxheSwgby53aGVuKVxuICAgIH0sXG5cbiAgICBkZWxheShieSwgd2hlbikge1xuICAgICAgcmV0dXJuIHRoaXMuYW5pbWF0ZSgwLCBieSwgd2hlbilcbiAgICB9LFxuXG4gICAgLy8gdGhpcyBmdW5jdGlvbiBzZWFyY2hlcyBmb3IgYWxsIHJ1bm5lcnMgb24gdGhlIGVsZW1lbnQgYW5kIGRlbGV0ZXMgdGhlIG9uZXNcbiAgICAvLyB3aGljaCBydW4gYmVmb3JlIHRoZSBjdXJyZW50IG9uZS4gVGhpcyBpcyBiZWNhdXNlIGFic29sdXRlIHRyYW5zZm9ybWF0aW9uc1xuICAgIC8vIG92ZXJ3cml0ZSBhbnl0aGluZyBhbnl3YXkgc28gdGhlcmUgaXMgbm8gbmVlZCB0byB3YXN0ZSB0aW1lIGNvbXB1dGluZ1xuICAgIC8vIG90aGVyIHJ1bm5lcnNcbiAgICBfY2xlYXJUcmFuc2Zvcm1SdW5uZXJzQmVmb3JlKGN1cnJlbnRSdW5uZXIpIHtcbiAgICAgIHRoaXMuX3RyYW5zZm9ybWF0aW9uUnVubmVycy5jbGVhckJlZm9yZShjdXJyZW50UnVubmVyLmlkKVxuICAgIH0sXG5cbiAgICBfY3VycmVudFRyYW5zZm9ybShjdXJyZW50KSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICB0aGlzLl90cmFuc2Zvcm1hdGlvblJ1bm5lcnMucnVubmVyc1xuICAgICAgICAgIC8vIHdlIG5lZWQgdGhlIGVxdWFsIHNpZ24gaGVyZSB0byBtYWtlIHN1cmUsIHRoYXQgYWxzbyB0cmFuc2Zvcm1hdGlvbnNcbiAgICAgICAgICAvLyBvbiB0aGUgc2FtZSBydW5uZXIgd2hpY2ggZXhlY3V0ZSBiZWZvcmUgdGhlIGN1cnJlbnQgdHJhbnNmb3JtYXRpb24gYXJlXG4gICAgICAgICAgLy8gdGFrZW4gaW50byBhY2NvdW50XG4gICAgICAgICAgLmZpbHRlcigocnVubmVyKSA9PiBydW5uZXIuaWQgPD0gY3VycmVudC5pZClcbiAgICAgICAgICAubWFwKGdldFJ1bm5lclRyYW5zZm9ybSlcbiAgICAgICAgICAucmVkdWNlKGxtdWx0aXBseSwgbmV3IE1hdHJpeCgpKVxuICAgICAgKVxuICAgIH0sXG5cbiAgICBfYWRkUnVubmVyKHJ1bm5lcikge1xuICAgICAgdGhpcy5fdHJhbnNmb3JtYXRpb25SdW5uZXJzLmFkZChydW5uZXIpXG5cbiAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBydW5uZXIgbWVyZ2UgaXMgZXhlY3V0ZWQgYXQgdGhlIHZlcnkgZW5kIG9mXG4gICAgICAvLyBhbGwgQW5pbWF0b3IgZnVuY3Rpb25zLiBUaGF0IGlzIHdoeSB3ZSB1c2UgaW1tZWRpYXRlIGhlcmUgdG8gZXhlY3V0ZVxuICAgICAgLy8gdGhlIG1lcmdlIHJpZ2h0IGFmdGVyIGFsbCBmcmFtZXMgYXJlIHJ1blxuICAgICAgQW5pbWF0b3IuY2FuY2VsSW1tZWRpYXRlKHRoaXMuX2ZyYW1lSWQpXG4gICAgICB0aGlzLl9mcmFtZUlkID0gQW5pbWF0b3IuaW1tZWRpYXRlKG1lcmdlVHJhbnNmb3Jtcy5iaW5kKHRoaXMpKVxuICAgIH0sXG5cbiAgICBfcHJlcGFyZVJ1bm5lcigpIHtcbiAgICAgIGlmICh0aGlzLl9mcmFtZUlkID09IG51bGwpIHtcbiAgICAgICAgdGhpcy5fdHJhbnNmb3JtYXRpb25SdW5uZXJzID0gbmV3IFJ1bm5lckFycmF5KCkuYWRkKFxuICAgICAgICAgIG5ldyBGYWtlUnVubmVyKG5ldyBNYXRyaXgodGhpcykpXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0pXG5cbi8vIFdpbGwgb3V0cHV0IHRoZSBlbGVtZW50cyBmcm9tIGFycmF5IEEgdGhhdCBhcmUgbm90IGluIHRoZSBhcnJheSBCXG5jb25zdCBkaWZmZXJlbmNlID0gKGEsIGIpID0+IGEuZmlsdGVyKCh4KSA9PiAhYi5pbmNsdWRlcyh4KSlcblxuZXh0ZW5kKFJ1bm5lciwge1xuICBhdHRyKGEsIHYpIHtcbiAgICByZXR1cm4gdGhpcy5zdHlsZUF0dHIoJ2F0dHInLCBhLCB2KVxuICB9LFxuXG4gIC8vIEFkZCBhbmltYXRhYmxlIHN0eWxlc1xuICBjc3Mocywgdikge1xuICAgIHJldHVybiB0aGlzLnN0eWxlQXR0cignY3NzJywgcywgdilcbiAgfSxcblxuICBzdHlsZUF0dHIodHlwZSwgbmFtZU9yQXR0cnMsIHZhbCkge1xuICAgIGlmICh0eXBlb2YgbmFtZU9yQXR0cnMgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdHlsZUF0dHIodHlwZSwgeyBbbmFtZU9yQXR0cnNdOiB2YWwgfSlcbiAgICB9XG5cbiAgICBsZXQgYXR0cnMgPSBuYW1lT3JBdHRyc1xuICAgIGlmICh0aGlzLl90cnlSZXRhcmdldCh0eXBlLCBhdHRycykpIHJldHVybiB0aGlzXG5cbiAgICBsZXQgbW9ycGhlciA9IG5ldyBNb3JwaGFibGUodGhpcy5fc3RlcHBlcikudG8oYXR0cnMpXG4gICAgbGV0IGtleXMgPSBPYmplY3Qua2V5cyhhdHRycylcblxuICAgIHRoaXMucXVldWUoXG4gICAgICBmdW5jdGlvbiAoKSB7XG4gICAgICAgIG1vcnBoZXIgPSBtb3JwaGVyLmZyb20odGhpcy5lbGVtZW50KClbdHlwZV0oa2V5cykpXG4gICAgICB9LFxuICAgICAgZnVuY3Rpb24gKHBvcykge1xuICAgICAgICB0aGlzLmVsZW1lbnQoKVt0eXBlXShtb3JwaGVyLmF0KHBvcykudmFsdWVPZigpKVxuICAgICAgICByZXR1cm4gbW9ycGhlci5kb25lKClcbiAgICAgIH0sXG4gICAgICBmdW5jdGlvbiAobmV3VG9BdHRycykge1xuICAgICAgICAvLyBDaGVjayBpZiBhbnkgbmV3IGtleXMgd2VyZSBhZGRlZFxuICAgICAgICBjb25zdCBuZXdLZXlzID0gT2JqZWN0LmtleXMobmV3VG9BdHRycylcbiAgICAgICAgY29uc3QgZGlmZmVyZW5jZXMgPSBkaWZmZXJlbmNlKG5ld0tleXMsIGtleXMpXG5cbiAgICAgICAgLy8gSWYgdGhlaXIgYXJlIG5ldyBrZXlzLCBpbml0aWFsaXplIHRoZW0gYW5kIGFkZCB0aGVtIHRvIG1vcnBoZXJcbiAgICAgICAgaWYgKGRpZmZlcmVuY2VzLmxlbmd0aCkge1xuICAgICAgICAgIC8vIEdldCB0aGUgdmFsdWVzXG4gICAgICAgICAgY29uc3QgYWRkZWRGcm9tQXR0cnMgPSB0aGlzLmVsZW1lbnQoKVt0eXBlXShkaWZmZXJlbmNlcylcblxuICAgICAgICAgIC8vIEdldCB0aGUgYWxyZWFkeSBpbml0aWFsaXplZCB2YWx1ZXNcbiAgICAgICAgICBjb25zdCBvbGRGcm9tQXR0cnMgPSBuZXcgT2JqZWN0QmFnKG1vcnBoZXIuZnJvbSgpKS52YWx1ZU9mKClcblxuICAgICAgICAgIC8vIE1lcmdlIG9sZCBhbmQgbmV3XG4gICAgICAgICAgT2JqZWN0LmFzc2lnbihvbGRGcm9tQXR0cnMsIGFkZGVkRnJvbUF0dHJzKVxuICAgICAgICAgIG1vcnBoZXIuZnJvbShvbGRGcm9tQXR0cnMpXG4gICAgICAgIH1cblxuICAgICAgICAvLyBHZXQgdGhlIG9iamVjdCBmcm9tIHRoZSBtb3JwaGVyXG4gICAgICAgIGNvbnN0IG9sZFRvQXR0cnMgPSBuZXcgT2JqZWN0QmFnKG1vcnBoZXIudG8oKSkudmFsdWVPZigpXG5cbiAgICAgICAgLy8gTWVyZ2UgaW4gbmV3IGF0dHJpYnV0ZXNcbiAgICAgICAgT2JqZWN0LmFzc2lnbihvbGRUb0F0dHJzLCBuZXdUb0F0dHJzKVxuXG4gICAgICAgIC8vIENoYW5nZSBtb3JwaGVyIHRhcmdldFxuICAgICAgICBtb3JwaGVyLnRvKG9sZFRvQXR0cnMpXG5cbiAgICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgd2Ugc2F2ZSB0aGUgd29yayB3ZSBkaWQgc28gd2UgZG9uJ3QgbmVlZCBpdCB0byBkbyBhZ2FpblxuICAgICAgICBrZXlzID0gbmV3S2V5c1xuICAgICAgICBhdHRycyA9IG5ld1RvQXR0cnNcbiAgICAgIH1cbiAgICApXG5cbiAgICB0aGlzLl9yZW1lbWJlck1vcnBoZXIodHlwZSwgbW9ycGhlcilcbiAgICByZXR1cm4gdGhpc1xuICB9LFxuXG4gIHpvb20obGV2ZWwsIHBvaW50KSB7XG4gICAgaWYgKHRoaXMuX3RyeVJldGFyZ2V0KCd6b29tJywgbGV2ZWwsIHBvaW50KSkgcmV0dXJuIHRoaXNcblxuICAgIGxldCBtb3JwaGVyID0gbmV3IE1vcnBoYWJsZSh0aGlzLl9zdGVwcGVyKS50byhuZXcgU1ZHTnVtYmVyKGxldmVsKSlcblxuICAgIHRoaXMucXVldWUoXG4gICAgICBmdW5jdGlvbiAoKSB7XG4gICAgICAgIG1vcnBoZXIgPSBtb3JwaGVyLmZyb20odGhpcy5lbGVtZW50KCkuem9vbSgpKVxuICAgICAgfSxcbiAgICAgIGZ1bmN0aW9uIChwb3MpIHtcbiAgICAgICAgdGhpcy5lbGVtZW50KCkuem9vbShtb3JwaGVyLmF0KHBvcyksIHBvaW50KVxuICAgICAgICByZXR1cm4gbW9ycGhlci5kb25lKClcbiAgICAgIH0sXG4gICAgICBmdW5jdGlvbiAobmV3TGV2ZWwsIG5ld1BvaW50KSB7XG4gICAgICAgIHBvaW50ID0gbmV3UG9pbnRcbiAgICAgICAgbW9ycGhlci50byhuZXdMZXZlbClcbiAgICAgIH1cbiAgICApXG5cbiAgICB0aGlzLl9yZW1lbWJlck1vcnBoZXIoJ3pvb20nLCBtb3JwaGVyKVxuICAgIHJldHVybiB0aGlzXG4gIH0sXG5cbiAgLyoqXG4gICAqKiBhYnNvbHV0ZSB0cmFuc2Zvcm1hdGlvbnNcbiAgICoqL1xuXG4gIC8vXG4gIC8vIE0gdiAtLS0tLXwtLS0tLShEIE0gdiA9IEYgdiktLS0tLS18LS0tLS0+ICBUIHZcbiAgLy9cbiAgLy8gMS4gZGVmaW5lIHRoZSBmaW5hbCBzdGF0ZSAoVCkgYW5kIGRlY29tcG9zZSBpdCAob25jZSlcbiAgLy8gICAgdCA9IFt0eCwgdHksIHRoZSwgbGFtLCBzeSwgc3hdXG4gIC8vIDIuIG9uIGV2ZXJ5IGZyYW1lOiBwdWxsIHRoZSBjdXJyZW50IHN0YXRlIG9mIGFsbCBwcmV2aW91cyB0cmFuc2Zvcm1zXG4gIC8vICAgIChNIC0gbSBjYW4gY2hhbmdlKVxuICAvLyAgIGFuZCB0aGVuIHdyaXRlIHRoaXMgYXMgbSA9IFt0eDAsIHR5MCwgdGhlMCwgbGFtMCwgc3kwLCBzeDBdXG4gIC8vIDMuIEZpbmQgdGhlIGludGVycG9sYXRlZCBtYXRyaXggRihwb3MpID0gbSArIHBvcyAqICh0IC0gbSlcbiAgLy8gICAtIE5vdGUgRigwKSA9IE1cbiAgLy8gICAtIE5vdGUgRigxKSA9IFRcbiAgLy8gNC4gTm93IHlvdSBnZXQgdGhlIGRlbHRhIG1hdHJpeCBhcyBhIHJlc3VsdDogRCA9IEYgKiBpbnYoTSlcblxuICB0cmFuc2Zvcm0odHJhbnNmb3JtcywgcmVsYXRpdmUsIGFmZmluZSkge1xuICAgIC8vIElmIHdlIGhhdmUgYSBkZWNsYXJhdGl2ZSBmdW5jdGlvbiwgd2Ugc2hvdWxkIHJldGFyZ2V0IGl0IGlmIHBvc3NpYmxlXG4gICAgcmVsYXRpdmUgPSB0cmFuc2Zvcm1zLnJlbGF0aXZlIHx8IHJlbGF0aXZlXG4gICAgaWYgKFxuICAgICAgdGhpcy5faXNEZWNsYXJhdGl2ZSAmJlxuICAgICAgIXJlbGF0aXZlICYmXG4gICAgICB0aGlzLl90cnlSZXRhcmdldCgndHJhbnNmb3JtJywgdHJhbnNmb3JtcylcbiAgICApIHtcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfVxuXG4gICAgLy8gUGFyc2UgdGhlIHBhcmFtZXRlcnNcbiAgICBjb25zdCBpc01hdHJpeCA9IE1hdHJpeC5pc01hdHJpeExpa2UodHJhbnNmb3JtcylcbiAgICBhZmZpbmUgPVxuICAgICAgdHJhbnNmb3Jtcy5hZmZpbmUgIT0gbnVsbFxuICAgICAgICA/IHRyYW5zZm9ybXMuYWZmaW5lXG4gICAgICAgIDogYWZmaW5lICE9IG51bGxcbiAgICAgICAgICA/IGFmZmluZVxuICAgICAgICAgIDogIWlzTWF0cml4XG5cbiAgICAvLyBDcmVhdGUgYSBtb3JwaGVyIGFuZCBzZXQgaXRzIHR5cGVcbiAgICBjb25zdCBtb3JwaGVyID0gbmV3IE1vcnBoYWJsZSh0aGlzLl9zdGVwcGVyKS50eXBlKFxuICAgICAgYWZmaW5lID8gVHJhbnNmb3JtQmFnIDogTWF0cml4XG4gICAgKVxuXG4gICAgbGV0IG9yaWdpblxuICAgIGxldCBlbGVtZW50XG4gICAgbGV0IGN1cnJlbnRcbiAgICBsZXQgY3VycmVudEFuZ2xlXG4gICAgbGV0IHN0YXJ0VHJhbnNmb3JtXG5cbiAgICBmdW5jdGlvbiBzZXR1cCgpIHtcbiAgICAgIC8vIG1ha2Ugc3VyZSBlbGVtZW50IGFuZCBvcmlnaW4gaXMgZGVmaW5lZFxuICAgICAgZWxlbWVudCA9IGVsZW1lbnQgfHwgdGhpcy5lbGVtZW50KClcbiAgICAgIG9yaWdpbiA9IG9yaWdpbiB8fCBnZXRPcmlnaW4odHJhbnNmb3JtcywgZWxlbWVudClcblxuICAgICAgc3RhcnRUcmFuc2Zvcm0gPSBuZXcgTWF0cml4KHJlbGF0aXZlID8gdW5kZWZpbmVkIDogZWxlbWVudClcblxuICAgICAgLy8gYWRkIHRoZSBydW5uZXIgdG8gdGhlIGVsZW1lbnQgc28gaXQgY2FuIG1lcmdlIHRyYW5zZm9ybWF0aW9uc1xuICAgICAgZWxlbWVudC5fYWRkUnVubmVyKHRoaXMpXG5cbiAgICAgIC8vIERlYWN0aXZhdGUgYWxsIHRyYW5zZm9ybXMgdGhhdCBoYXZlIHJ1biBzbyBmYXIgaWYgd2UgYXJlIGFic29sdXRlXG4gICAgICBpZiAoIXJlbGF0aXZlKSB7XG4gICAgICAgIGVsZW1lbnQuX2NsZWFyVHJhbnNmb3JtUnVubmVyc0JlZm9yZSh0aGlzKVxuICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIHJ1bihwb3MpIHtcbiAgICAgIC8vIGNsZWFyIGFsbCBvdGhlciB0cmFuc2Zvcm1zIGJlZm9yZSB0aGlzIGluIGNhc2Ugc29tZXRoaW5nIGlzIHNhdmVkXG4gICAgICAvLyBvbiB0aGlzIHJ1bm5lci4gV2UgYXJlIGFic29sdXRlLiBXZSBkb250IG5lZWQgdGhlc2UhXG4gICAgICBpZiAoIXJlbGF0aXZlKSB0aGlzLmNsZWFyVHJhbnNmb3JtKClcblxuICAgICAgY29uc3QgeyB4LCB5IH0gPSBuZXcgUG9pbnQob3JpZ2luKS50cmFuc2Zvcm0oXG4gICAgICAgIGVsZW1lbnQuX2N1cnJlbnRUcmFuc2Zvcm0odGhpcylcbiAgICAgIClcblxuICAgICAgbGV0IHRhcmdldCA9IG5ldyBNYXRyaXgoeyAuLi50cmFuc2Zvcm1zLCBvcmlnaW46IFt4LCB5XSB9KVxuICAgICAgbGV0IHN0YXJ0ID0gdGhpcy5faXNEZWNsYXJhdGl2ZSAmJiBjdXJyZW50ID8gY3VycmVudCA6IHN0YXJ0VHJhbnNmb3JtXG5cbiAgICAgIGlmIChhZmZpbmUpIHtcbiAgICAgICAgdGFyZ2V0ID0gdGFyZ2V0LmRlY29tcG9zZSh4LCB5KVxuICAgICAgICBzdGFydCA9IHN0YXJ0LmRlY29tcG9zZSh4LCB5KVxuXG4gICAgICAgIC8vIEdldCB0aGUgY3VycmVudCBhbmQgdGFyZ2V0IGFuZ2xlIGFzIGl0IHdhcyBzZXRcbiAgICAgICAgY29uc3QgclRhcmdldCA9IHRhcmdldC5yb3RhdGVcbiAgICAgICAgY29uc3QgckN1cnJlbnQgPSBzdGFydC5yb3RhdGVcblxuICAgICAgICAvLyBGaWd1cmUgb3V0IHRoZSBzaG9ydGVzdCBwYXRoIHRvIHJvdGF0ZSBkaXJlY3RseVxuICAgICAgICBjb25zdCBwb3NzaWJpbGl0aWVzID0gW3JUYXJnZXQgLSAzNjAsIHJUYXJnZXQsIHJUYXJnZXQgKyAzNjBdXG4gICAgICAgIGNvbnN0IGRpc3RhbmNlcyA9IHBvc3NpYmlsaXRpZXMubWFwKChhKSA9PiBNYXRoLmFicyhhIC0gckN1cnJlbnQpKVxuICAgICAgICBjb25zdCBzaG9ydGVzdCA9IE1hdGgubWluKC4uLmRpc3RhbmNlcylcbiAgICAgICAgY29uc3QgaW5kZXggPSBkaXN0YW5jZXMuaW5kZXhPZihzaG9ydGVzdClcbiAgICAgICAgdGFyZ2V0LnJvdGF0ZSA9IHBvc3NpYmlsaXRpZXNbaW5kZXhdXG4gICAgICB9XG5cbiAgICAgIGlmIChyZWxhdGl2ZSkge1xuICAgICAgICAvLyB3ZSBoYXZlIHRvIGJlIGNhcmVmdWwgaGVyZSBub3QgdG8gb3ZlcndyaXRlIHRoZSByb3RhdGlvblxuICAgICAgICAvLyB3aXRoIHRoZSByb3RhdGUgbWV0aG9kIG9mIE1hdHJpeFxuICAgICAgICBpZiAoIWlzTWF0cml4KSB7XG4gICAgICAgICAgdGFyZ2V0LnJvdGF0ZSA9IHRyYW5zZm9ybXMucm90YXRlIHx8IDBcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5faXNEZWNsYXJhdGl2ZSAmJiBjdXJyZW50QW5nbGUpIHtcbiAgICAgICAgICBzdGFydC5yb3RhdGUgPSBjdXJyZW50QW5nbGVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBtb3JwaGVyLmZyb20oc3RhcnQpXG4gICAgICBtb3JwaGVyLnRvKHRhcmdldClcblxuICAgICAgY29uc3QgYWZmaW5lUGFyYW1ldGVycyA9IG1vcnBoZXIuYXQocG9zKVxuICAgICAgY3VycmVudEFuZ2xlID0gYWZmaW5lUGFyYW1ldGVycy5yb3RhdGVcbiAgICAgIGN1cnJlbnQgPSBuZXcgTWF0cml4KGFmZmluZVBhcmFtZXRlcnMpXG5cbiAgICAgIHRoaXMuYWRkVHJhbnNmb3JtKGN1cnJlbnQpXG4gICAgICBlbGVtZW50Ll9hZGRSdW5uZXIodGhpcylcbiAgICAgIHJldHVybiBtb3JwaGVyLmRvbmUoKVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIHJldGFyZ2V0KG5ld1RyYW5zZm9ybXMpIHtcbiAgICAgIC8vIG9ubHkgZ2V0IGEgbmV3IG9yaWdpbiBpZiBpdCBjaGFuZ2VkIHNpbmNlIHRoZSBsYXN0IGNhbGxcbiAgICAgIGlmIChcbiAgICAgICAgKG5ld1RyYW5zZm9ybXMub3JpZ2luIHx8ICdjZW50ZXInKS50b1N0cmluZygpICE9PVxuICAgICAgICAodHJhbnNmb3Jtcy5vcmlnaW4gfHwgJ2NlbnRlcicpLnRvU3RyaW5nKClcbiAgICAgICkge1xuICAgICAgICBvcmlnaW4gPSBnZXRPcmlnaW4obmV3VHJhbnNmb3JtcywgZWxlbWVudClcbiAgICAgIH1cblxuICAgICAgLy8gb3ZlcndyaXRlIHRoZSBvbGQgdHJhbnNmb3JtYXRpb25zIHdpdGggdGhlIG5ldyBvbmVzXG4gICAgICB0cmFuc2Zvcm1zID0geyAuLi5uZXdUcmFuc2Zvcm1zLCBvcmlnaW4gfVxuICAgIH1cblxuICAgIHRoaXMucXVldWUoc2V0dXAsIHJ1biwgcmV0YXJnZXQsIHRydWUpXG4gICAgdGhpcy5faXNEZWNsYXJhdGl2ZSAmJiB0aGlzLl9yZW1lbWJlck1vcnBoZXIoJ3RyYW5zZm9ybScsIG1vcnBoZXIpXG4gICAgcmV0dXJuIHRoaXNcbiAgfSxcblxuICAvLyBBbmltYXRhYmxlIHgtYXhpc1xuICB4KHgpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVldWVOdW1iZXIoJ3gnLCB4KVxuICB9LFxuXG4gIC8vIEFuaW1hdGFibGUgeS1heGlzXG4gIHkoeSkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlcigneScsIHkpXG4gIH0sXG5cbiAgYXgoeCkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlcignYXgnLCB4KVxuICB9LFxuXG4gIGF5KHkpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVldWVOdW1iZXIoJ2F5JywgeSlcbiAgfSxcblxuICBkeCh4ID0gMCkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlckRlbHRhKCd4JywgeClcbiAgfSxcblxuICBkeSh5ID0gMCkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlckRlbHRhKCd5JywgeSlcbiAgfSxcblxuICBkbW92ZSh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMuZHgoeCkuZHkoeSlcbiAgfSxcblxuICBfcXVldWVOdW1iZXJEZWx0YShtZXRob2QsIHRvKSB7XG4gICAgdG8gPSBuZXcgU1ZHTnVtYmVyKHRvKVxuXG4gICAgLy8gVHJ5IHRvIGNoYW5nZSB0aGUgdGFyZ2V0IGlmIHdlIGhhdmUgdGhpcyBtZXRob2QgYWxyZWFkeSByZWdpc3RlcmVkXG4gICAgaWYgKHRoaXMuX3RyeVJldGFyZ2V0KG1ldGhvZCwgdG8pKSByZXR1cm4gdGhpc1xuXG4gICAgLy8gTWFrZSBhIG1vcnBoZXIgYW5kIHF1ZXVlIHRoZSBhbmltYXRpb25cbiAgICBjb25zdCBtb3JwaGVyID0gbmV3IE1vcnBoYWJsZSh0aGlzLl9zdGVwcGVyKS50byh0bylcbiAgICBsZXQgZnJvbSA9IG51bGxcbiAgICB0aGlzLnF1ZXVlKFxuICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICBmcm9tID0gdGhpcy5lbGVtZW50KClbbWV0aG9kXSgpXG4gICAgICAgIG1vcnBoZXIuZnJvbShmcm9tKVxuICAgICAgICBtb3JwaGVyLnRvKGZyb20gKyB0bylcbiAgICAgIH0sXG4gICAgICBmdW5jdGlvbiAocG9zKSB7XG4gICAgICAgIHRoaXMuZWxlbWVudCgpW21ldGhvZF0obW9ycGhlci5hdChwb3MpKVxuICAgICAgICByZXR1cm4gbW9ycGhlci5kb25lKClcbiAgICAgIH0sXG4gICAgICBmdW5jdGlvbiAobmV3VG8pIHtcbiAgICAgICAgbW9ycGhlci50byhmcm9tICsgbmV3IFNWR051bWJlcihuZXdUbykpXG4gICAgICB9XG4gICAgKVxuXG4gICAgLy8gUmVnaXN0ZXIgdGhlIG1vcnBoZXIgc28gdGhhdCBpZiBpdCBpcyBjaGFuZ2VkIGFnYWluLCB3ZSBjYW4gcmV0YXJnZXQgaXRcbiAgICB0aGlzLl9yZW1lbWJlck1vcnBoZXIobWV0aG9kLCBtb3JwaGVyKVxuICAgIHJldHVybiB0aGlzXG4gIH0sXG5cbiAgX3F1ZXVlT2JqZWN0KG1ldGhvZCwgdG8pIHtcbiAgICAvLyBUcnkgdG8gY2hhbmdlIHRoZSB0YXJnZXQgaWYgd2UgaGF2ZSB0aGlzIG1ldGhvZCBhbHJlYWR5IHJlZ2lzdGVyZWRcbiAgICBpZiAodGhpcy5fdHJ5UmV0YXJnZXQobWV0aG9kLCB0bykpIHJldHVybiB0aGlzXG5cbiAgICAvLyBNYWtlIGEgbW9ycGhlciBhbmQgcXVldWUgdGhlIGFuaW1hdGlvblxuICAgIGNvbnN0IG1vcnBoZXIgPSBuZXcgTW9ycGhhYmxlKHRoaXMuX3N0ZXBwZXIpLnRvKHRvKVxuICAgIHRoaXMucXVldWUoXG4gICAgICBmdW5jdGlvbiAoKSB7XG4gICAgICAgIG1vcnBoZXIuZnJvbSh0aGlzLmVsZW1lbnQoKVttZXRob2RdKCkpXG4gICAgICB9LFxuICAgICAgZnVuY3Rpb24gKHBvcykge1xuICAgICAgICB0aGlzLmVsZW1lbnQoKVttZXRob2RdKG1vcnBoZXIuYXQocG9zKSlcbiAgICAgICAgcmV0dXJuIG1vcnBoZXIuZG9uZSgpXG4gICAgICB9XG4gICAgKVxuXG4gICAgLy8gUmVnaXN0ZXIgdGhlIG1vcnBoZXIgc28gdGhhdCBpZiBpdCBpcyBjaGFuZ2VkIGFnYWluLCB3ZSBjYW4gcmV0YXJnZXQgaXRcbiAgICB0aGlzLl9yZW1lbWJlck1vcnBoZXIobWV0aG9kLCBtb3JwaGVyKVxuICAgIHJldHVybiB0aGlzXG4gIH0sXG5cbiAgX3F1ZXVlTnVtYmVyKG1ldGhvZCwgdmFsdWUpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVldWVPYmplY3QobWV0aG9kLCBuZXcgU1ZHTnVtYmVyKHZhbHVlKSlcbiAgfSxcblxuICAvLyBBbmltYXRhYmxlIGNlbnRlciB4LWF4aXNcbiAgY3goeCkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlcignY3gnLCB4KVxuICB9LFxuXG4gIC8vIEFuaW1hdGFibGUgY2VudGVyIHktYXhpc1xuICBjeSh5KSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyKCdjeScsIHkpXG4gIH0sXG5cbiAgLy8gQWRkIGFuaW1hdGFibGUgbW92ZVxuICBtb3ZlKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy54KHgpLnkoeSlcbiAgfSxcblxuICBhbW92ZSh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMuYXgoeCkuYXkoeSlcbiAgfSxcblxuICAvLyBBZGQgYW5pbWF0YWJsZSBjZW50ZXJcbiAgY2VudGVyKHgsIHkpIHtcbiAgICByZXR1cm4gdGhpcy5jeCh4KS5jeSh5KVxuICB9LFxuXG4gIC8vIEFkZCBhbmltYXRhYmxlIHNpemVcbiAgc2l6ZSh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgLy8gYW5pbWF0ZSBiYm94IGJhc2VkIHNpemUgZm9yIGFsbCBvdGhlciBlbGVtZW50c1xuICAgIGxldCBib3hcblxuICAgIGlmICghd2lkdGggfHwgIWhlaWdodCkge1xuICAgICAgYm94ID0gdGhpcy5fZWxlbWVudC5iYm94KClcbiAgICB9XG5cbiAgICBpZiAoIXdpZHRoKSB7XG4gICAgICB3aWR0aCA9IChib3gud2lkdGggLyBib3guaGVpZ2h0KSAqIGhlaWdodFxuICAgIH1cblxuICAgIGlmICghaGVpZ2h0KSB7XG4gICAgICBoZWlnaHQgPSAoYm94LmhlaWdodCAvIGJveC53aWR0aCkgKiB3aWR0aFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLndpZHRoKHdpZHRoKS5oZWlnaHQoaGVpZ2h0KVxuICB9LFxuXG4gIC8vIEFkZCBhbmltYXRhYmxlIHdpZHRoXG4gIHdpZHRoKHdpZHRoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyKCd3aWR0aCcsIHdpZHRoKVxuICB9LFxuXG4gIC8vIEFkZCBhbmltYXRhYmxlIGhlaWdodFxuICBoZWlnaHQoaGVpZ2h0KSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlTnVtYmVyKCdoZWlnaHQnLCBoZWlnaHQpXG4gIH0sXG5cbiAgLy8gQWRkIGFuaW1hdGFibGUgcGxvdFxuICBwbG90KGEsIGIsIGMsIGQpIHtcbiAgICAvLyBMaW5lcyBjYW4gYmUgcGxvdHRlZCB3aXRoIDQgYXJndW1lbnRzXG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDQpIHtcbiAgICAgIHJldHVybiB0aGlzLnBsb3QoW2EsIGIsIGMsIGRdKVxuICAgIH1cblxuICAgIGlmICh0aGlzLl90cnlSZXRhcmdldCgncGxvdCcsIGEpKSByZXR1cm4gdGhpc1xuXG4gICAgY29uc3QgbW9ycGhlciA9IG5ldyBNb3JwaGFibGUodGhpcy5fc3RlcHBlcilcbiAgICAgIC50eXBlKHRoaXMuX2VsZW1lbnQuTW9ycGhBcnJheSlcbiAgICAgIC50byhhKVxuXG4gICAgdGhpcy5xdWV1ZShcbiAgICAgIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgbW9ycGhlci5mcm9tKHRoaXMuX2VsZW1lbnQuYXJyYXkoKSlcbiAgICAgIH0sXG4gICAgICBmdW5jdGlvbiAocG9zKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnQucGxvdChtb3JwaGVyLmF0KHBvcykpXG4gICAgICAgIHJldHVybiBtb3JwaGVyLmRvbmUoKVxuICAgICAgfVxuICAgIClcblxuICAgIHRoaXMuX3JlbWVtYmVyTW9ycGhlcigncGxvdCcsIG1vcnBoZXIpXG4gICAgcmV0dXJuIHRoaXNcbiAgfSxcblxuICAvLyBBZGQgbGVhZGluZyBtZXRob2RcbiAgbGVhZGluZyh2YWx1ZSkge1xuICAgIHJldHVybiB0aGlzLl9xdWV1ZU51bWJlcignbGVhZGluZycsIHZhbHVlKVxuICB9LFxuXG4gIC8vIEFkZCBhbmltYXRhYmxlIHZpZXdib3hcbiAgdmlld2JveCh4LCB5LCB3aWR0aCwgaGVpZ2h0KSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXVlT2JqZWN0KCd2aWV3Ym94JywgbmV3IEJveCh4LCB5LCB3aWR0aCwgaGVpZ2h0KSlcbiAgfSxcblxuICB1cGRhdGUobykge1xuICAgIGlmICh0eXBlb2YgbyAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiB0aGlzLnVwZGF0ZSh7XG4gICAgICAgIG9mZnNldDogYXJndW1lbnRzWzBdLFxuICAgICAgICBjb2xvcjogYXJndW1lbnRzWzFdLFxuICAgICAgICBvcGFjaXR5OiBhcmd1bWVudHNbMl1cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKG8ub3BhY2l0eSAhPSBudWxsKSB0aGlzLmF0dHIoJ3N0b3Atb3BhY2l0eScsIG8ub3BhY2l0eSlcbiAgICBpZiAoby5jb2xvciAhPSBudWxsKSB0aGlzLmF0dHIoJ3N0b3AtY29sb3InLCBvLmNvbG9yKVxuICAgIGlmIChvLm9mZnNldCAhPSBudWxsKSB0aGlzLmF0dHIoJ29mZnNldCcsIG8ub2Zmc2V0KVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufSlcblxuZXh0ZW5kKFJ1bm5lciwgeyByeCwgcnksIGZyb20sIHRvIH0pXG5yZWdpc3RlcihSdW5uZXIsICdSdW5uZXInKVxuIiwgImltcG9ydCB7XG4gIGFkb3B0LFxuICBub2RlT3JOZXcsXG4gIHJlZ2lzdGVyLFxuICB3cmFwV2l0aEF0dHJDaGVja1xufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgc3ZnLCB4bGluaywgeG1sbnMgfSBmcm9tICcuLi9tb2R1bGVzL2NvcmUvbmFtZXNwYWNlcy5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgQ29udGFpbmVyIGZyb20gJy4vQ29udGFpbmVyLmpzJ1xuaW1wb3J0IERlZnMgZnJvbSAnLi9EZWZzLmpzJ1xuaW1wb3J0IHsgZ2xvYmFscyB9IGZyb20gJy4uL3V0aWxzL3dpbmRvdy5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3ZnIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdzdmcnLCBub2RlKSwgYXR0cnMpXG4gICAgdGhpcy5uYW1lc3BhY2UoKVxuICB9XG5cbiAgLy8gQ3JlYXRlcyBhbmQgcmV0dXJucyBkZWZzIGVsZW1lbnRcbiAgZGVmcygpIHtcbiAgICBpZiAoIXRoaXMuaXNSb290KCkpIHJldHVybiB0aGlzLnJvb3QoKS5kZWZzKClcblxuICAgIHJldHVybiBhZG9wdCh0aGlzLm5vZGUucXVlcnlTZWxlY3RvcignZGVmcycpKSB8fCB0aGlzLnB1dChuZXcgRGVmcygpKVxuICB9XG5cbiAgaXNSb290KCkge1xuICAgIHJldHVybiAoXG4gICAgICAhdGhpcy5ub2RlLnBhcmVudE5vZGUgfHxcbiAgICAgICghKHRoaXMubm9kZS5wYXJlbnROb2RlIGluc3RhbmNlb2YgZ2xvYmFscy53aW5kb3cuU1ZHRWxlbWVudCkgJiZcbiAgICAgICAgdGhpcy5ub2RlLnBhcmVudE5vZGUubm9kZU5hbWUgIT09ICcjZG9jdW1lbnQtZnJhZ21lbnQnKVxuICAgIClcbiAgfVxuXG4gIC8vIEFkZCBuYW1lc3BhY2VzXG4gIG5hbWVzcGFjZSgpIHtcbiAgICBpZiAoIXRoaXMuaXNSb290KCkpIHJldHVybiB0aGlzLnJvb3QoKS5uYW1lc3BhY2UoKVxuICAgIHJldHVybiB0aGlzLmF0dHIoeyB4bWxuczogc3ZnLCB2ZXJzaW9uOiAnMS4xJyB9KS5hdHRyKFxuICAgICAgJ3htbG5zOnhsaW5rJyxcbiAgICAgIHhsaW5rLFxuICAgICAgeG1sbnNcbiAgICApXG4gIH1cblxuICByZW1vdmVOYW1lc3BhY2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cih7IHhtbG5zOiBudWxsLCB2ZXJzaW9uOiBudWxsIH0pXG4gICAgICAuYXR0cigneG1sbnM6eGxpbmsnLCBudWxsLCB4bWxucylcbiAgICAgIC5hdHRyKCd4bWxuczpzdmdqcycsIG51bGwsIHhtbG5zKVxuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhpcyBpcyBhIHJvb3Qgc3ZnXG4gIC8vIElmIG5vdCwgY2FsbCByb290KCkgZnJvbSB0aGlzIGVsZW1lbnRcbiAgcm9vdCgpIHtcbiAgICBpZiAodGhpcy5pc1Jvb3QoKSkgcmV0dXJuIHRoaXNcbiAgICByZXR1cm4gc3VwZXIucm9vdCgpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIG5lc3RlZCBzdmcgZG9jdW1lbnRcbiAgICBuZXN0ZWQ6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgU3ZnKCkpXG4gICAgfSlcbiAgfVxufSlcblxucmVnaXN0ZXIoU3ZnLCAnU3ZnJywgdHJ1ZSlcbiIsICJpbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyLCB3cmFwV2l0aEF0dHJDaGVjayB9IGZyb20gJy4uL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IENvbnRhaW5lciBmcm9tICcuL0NvbnRhaW5lci5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3ltYm9sIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygnc3ltYm9sJywgbm9kZSksIGF0dHJzKVxuICB9XG59XG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIHN5bWJvbDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBTeW1ib2woKSlcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihTeW1ib2wsICdTeW1ib2wnKVxuIiwgImltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi8uLi91dGlscy93aW5kb3cuanMnXG5cbi8vIENyZWF0ZSBwbGFpbiB0ZXh0IG5vZGVcbmV4cG9ydCBmdW5jdGlvbiBwbGFpbih0ZXh0KSB7XG4gIC8vIGNsZWFyIGlmIGJ1aWxkIG1vZGUgaXMgZGlzYWJsZWRcbiAgaWYgKHRoaXMuX2J1aWxkID09PSBmYWxzZSkge1xuICAgIHRoaXMuY2xlYXIoKVxuICB9XG5cbiAgLy8gY3JlYXRlIHRleHQgbm9kZVxuICB0aGlzLm5vZGUuYXBwZW5kQ2hpbGQoZ2xvYmFscy5kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0ZXh0KSlcblxuICByZXR1cm4gdGhpc1xufVxuXG4vLyBHZXQgbGVuZ3RoIG9mIHRleHQgZWxlbWVudFxuZXhwb3J0IGZ1bmN0aW9uIGxlbmd0aCgpIHtcbiAgcmV0dXJuIHRoaXMubm9kZS5nZXRDb21wdXRlZFRleHRMZW5ndGgoKVxufVxuXG4vLyBNb3ZlIG92ZXIgeC1heGlzXG4vLyBUZXh0IGlzIG1vdmVkIGJ5IGl0cyBib3VuZGluZyBib3hcbi8vIHRleHQtYW5jaG9yIGRvZXMgTk9UIG1hdHRlclxuZXhwb3J0IGZ1bmN0aW9uIHgoeCwgYm94ID0gdGhpcy5iYm94KCkpIHtcbiAgaWYgKHggPT0gbnVsbCkge1xuICAgIHJldHVybiBib3gueFxuICB9XG5cbiAgcmV0dXJuIHRoaXMuYXR0cigneCcsIHRoaXMuYXR0cigneCcpICsgeCAtIGJveC54KVxufVxuXG4vLyBNb3ZlIG92ZXIgeS1heGlzXG5leHBvcnQgZnVuY3Rpb24geSh5LCBib3ggPSB0aGlzLmJib3goKSkge1xuICBpZiAoeSA9PSBudWxsKSB7XG4gICAgcmV0dXJuIGJveC55XG4gIH1cblxuICByZXR1cm4gdGhpcy5hdHRyKCd5JywgdGhpcy5hdHRyKCd5JykgKyB5IC0gYm94LnkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb3ZlKHgsIHksIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIHJldHVybiB0aGlzLngoeCwgYm94KS55KHksIGJveClcbn1cblxuLy8gTW92ZSBjZW50ZXIgb3ZlciB4LWF4aXNcbmV4cG9ydCBmdW5jdGlvbiBjeCh4LCBib3ggPSB0aGlzLmJib3goKSkge1xuICBpZiAoeCA9PSBudWxsKSB7XG4gICAgcmV0dXJuIGJveC5jeFxuICB9XG5cbiAgcmV0dXJuIHRoaXMuYXR0cigneCcsIHRoaXMuYXR0cigneCcpICsgeCAtIGJveC5jeClcbn1cblxuLy8gTW92ZSBjZW50ZXIgb3ZlciB5LWF4aXNcbmV4cG9ydCBmdW5jdGlvbiBjeSh5LCBib3ggPSB0aGlzLmJib3goKSkge1xuICBpZiAoeSA9PSBudWxsKSB7XG4gICAgcmV0dXJuIGJveC5jeVxuICB9XG5cbiAgcmV0dXJuIHRoaXMuYXR0cigneScsIHRoaXMuYXR0cigneScpICsgeSAtIGJveC5jeSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNlbnRlcih4LCB5LCBib3ggPSB0aGlzLmJib3goKSkge1xuICByZXR1cm4gdGhpcy5jeCh4LCBib3gpLmN5KHksIGJveClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGF4KHgpIHtcbiAgcmV0dXJuIHRoaXMuYXR0cigneCcsIHgpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBheSh5KSB7XG4gIHJldHVybiB0aGlzLmF0dHIoJ3knLCB5KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYW1vdmUoeCwgeSkge1xuICByZXR1cm4gdGhpcy5heCh4KS5heSh5KVxufVxuXG4vLyBFbmFibGUgLyBkaXNhYmxlIGJ1aWxkIG1vZGVcbmV4cG9ydCBmdW5jdGlvbiBidWlsZChidWlsZCkge1xuICB0aGlzLl9idWlsZCA9ICEhYnVpbGRcbiAgcmV0dXJuIHRoaXNcbn1cbiIsICJpbXBvcnQge1xuICBhZG9wdCxcbiAgZXh0ZW5kLFxuICBub2RlT3JOZXcsXG4gIHJlZ2lzdGVyLFxuICB3cmFwV2l0aEF0dHJDaGVja1xufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5pbXBvcnQgeyBnbG9iYWxzIH0gZnJvbSAnLi4vdXRpbHMvd2luZG93LmpzJ1xuaW1wb3J0ICogYXMgdGV4dGFibGUgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3RleHRhYmxlLmpzJ1xuaW1wb3J0IHsgaXNEZXNjcmlwdGl2ZSwgd3JpdGVEYXRhVG9Eb20gfSBmcm9tICcuLi91dGlscy91dGlscy5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGV4dCBleHRlbmRzIFNoYXBlIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygndGV4dCcsIG5vZGUpLCBhdHRycylcblxuICAgIHRoaXMuZG9tLmxlYWRpbmcgPSB0aGlzLmRvbS5sZWFkaW5nID8/IG5ldyBTVkdOdW1iZXIoMS4zKSAvLyBzdG9yZSBsZWFkaW5nIHZhbHVlIGZvciByZWJ1aWxkaW5nXG4gICAgdGhpcy5fcmVidWlsZCA9IHRydWUgLy8gZW5hYmxlIGF1dG9tYXRpYyB1cGRhdGluZyBvZiBkeSB2YWx1ZXNcbiAgICB0aGlzLl9idWlsZCA9IGZhbHNlIC8vIGRpc2FibGUgYnVpbGQgbW9kZSBmb3IgYWRkaW5nIG11bHRpcGxlIGxpbmVzXG4gIH1cblxuICAvLyBTZXQgLyBnZXQgbGVhZGluZ1xuICBsZWFkaW5nKHZhbHVlKSB7XG4gICAgLy8gYWN0IGFzIGdldHRlclxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5kb20ubGVhZGluZ1xuICAgIH1cblxuICAgIC8vIGFjdCBhcyBzZXR0ZXJcbiAgICB0aGlzLmRvbS5sZWFkaW5nID0gbmV3IFNWR051bWJlcih2YWx1ZSlcblxuICAgIHJldHVybiB0aGlzLnJlYnVpbGQoKVxuICB9XG5cbiAgLy8gUmVidWlsZCBhcHBlYXJhbmNlIHR5cGVcbiAgcmVidWlsZChyZWJ1aWxkKSB7XG4gICAgLy8gc3RvcmUgbmV3IHJlYnVpbGQgZmxhZyBpZiBnaXZlblxuICAgIGlmICh0eXBlb2YgcmVidWlsZCA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICB0aGlzLl9yZWJ1aWxkID0gcmVidWlsZFxuICAgIH1cblxuICAgIC8vIGRlZmluZSBwb3NpdGlvbiBvZiBhbGwgbGluZXNcbiAgICBpZiAodGhpcy5fcmVidWlsZCkge1xuICAgICAgY29uc3Qgc2VsZiA9IHRoaXNcbiAgICAgIGxldCBibGFua0xpbmVPZmZzZXQgPSAwXG4gICAgICBjb25zdCBsZWFkaW5nID0gdGhpcy5kb20ubGVhZGluZ1xuXG4gICAgICB0aGlzLmVhY2goZnVuY3Rpb24gKGkpIHtcbiAgICAgICAgaWYgKGlzRGVzY3JpcHRpdmUodGhpcy5ub2RlKSkgcmV0dXJuXG5cbiAgICAgICAgY29uc3QgZm9udFNpemUgPSBnbG9iYWxzLndpbmRvd1xuICAgICAgICAgIC5nZXRDb21wdXRlZFN0eWxlKHRoaXMubm9kZSlcbiAgICAgICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnZm9udC1zaXplJylcblxuICAgICAgICBjb25zdCBkeSA9IGxlYWRpbmcgKiBuZXcgU1ZHTnVtYmVyKGZvbnRTaXplKVxuXG4gICAgICAgIGlmICh0aGlzLmRvbS5uZXdMaW5lZCkge1xuICAgICAgICAgIHRoaXMuYXR0cigneCcsIHNlbGYuYXR0cigneCcpKVxuXG4gICAgICAgICAgaWYgKHRoaXMudGV4dCgpID09PSAnXFxuJykge1xuICAgICAgICAgICAgYmxhbmtMaW5lT2Zmc2V0ICs9IGR5XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYXR0cignZHknLCBpID8gZHkgKyBibGFua0xpbmVPZmZzZXQgOiAwKVxuICAgICAgICAgICAgYmxhbmtMaW5lT2Zmc2V0ID0gMFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcblxuICAgICAgdGhpcy5maXJlKCdyZWJ1aWxkJylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gb3ZlcndyaXRlIG1ldGhvZCBmcm9tIHBhcmVudCB0byBzZXQgZGF0YSBwcm9wZXJseVxuICBzZXREYXRhKG8pIHtcbiAgICB0aGlzLmRvbSA9IG9cbiAgICB0aGlzLmRvbS5sZWFkaW5nID0gbmV3IFNWR051bWJlcihvLmxlYWRpbmcgfHwgMS4zKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICB3cml0ZURhdGFUb0RvbSgpIHtcbiAgICB3cml0ZURhdGFUb0RvbSh0aGlzLCB0aGlzLmRvbSwgeyBsZWFkaW5nOiAxLjMgfSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLy8gU2V0IHRoZSB0ZXh0IGNvbnRlbnRcbiAgdGV4dCh0ZXh0KSB7XG4gICAgLy8gYWN0IGFzIGdldHRlclxuICAgIGlmICh0ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gdGhpcy5ub2RlLmNoaWxkTm9kZXNcbiAgICAgIGxldCBmaXJzdExpbmUgPSAwXG4gICAgICB0ZXh0ID0gJydcblxuICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IGNoaWxkcmVuLmxlbmd0aDsgaSA8IGxlbjsgKytpKSB7XG4gICAgICAgIC8vIHNraXAgdGV4dFBhdGhzIC0gdGhleSBhcmUgbm8gbGluZXNcbiAgICAgICAgaWYgKGNoaWxkcmVuW2ldLm5vZGVOYW1lID09PSAndGV4dFBhdGgnIHx8IGlzRGVzY3JpcHRpdmUoY2hpbGRyZW5baV0pKSB7XG4gICAgICAgICAgaWYgKGkgPT09IDApIGZpcnN0TGluZSA9IGkgKyAxXG4gICAgICAgICAgY29udGludWVcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGFkZCBuZXdsaW5lIGlmIGl0cyBub3QgdGhlIGZpcnN0IGNoaWxkIGFuZCBuZXdMaW5lZCBpcyBzZXQgdG8gdHJ1ZVxuICAgICAgICBpZiAoXG4gICAgICAgICAgaSAhPT0gZmlyc3RMaW5lICYmXG4gICAgICAgICAgY2hpbGRyZW5baV0ubm9kZVR5cGUgIT09IDMgJiZcbiAgICAgICAgICBhZG9wdChjaGlsZHJlbltpXSkuZG9tLm5ld0xpbmVkID09PSB0cnVlXG4gICAgICAgICkge1xuICAgICAgICAgIHRleHQgKz0gJ1xcbidcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGFkZCBjb250ZW50IG9mIHRoaXMgbm9kZVxuICAgICAgICB0ZXh0ICs9IGNoaWxkcmVuW2ldLnRleHRDb250ZW50XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0ZXh0XG4gICAgfVxuXG4gICAgLy8gcmVtb3ZlIGV4aXN0aW5nIGNvbnRlbnRcbiAgICB0aGlzLmNsZWFyKCkuYnVpbGQodHJ1ZSlcblxuICAgIGlmICh0eXBlb2YgdGV4dCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgLy8gY2FsbCBibG9ja1xuICAgICAgdGV4dC5jYWxsKHRoaXMsIHRoaXMpXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHN0b3JlIHRleHQgYW5kIG1ha2Ugc3VyZSB0ZXh0IGlzIG5vdCBibGFua1xuICAgICAgdGV4dCA9ICh0ZXh0ICsgJycpLnNwbGl0KCdcXG4nKVxuXG4gICAgICAvLyBidWlsZCBuZXcgbGluZXNcbiAgICAgIGZvciAobGV0IGogPSAwLCBqbCA9IHRleHQubGVuZ3RoOyBqIDwgamw7IGorKykge1xuICAgICAgICB0aGlzLm5ld0xpbmUodGV4dFtqXSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBkaXNhYmxlIGJ1aWxkIG1vZGUgYW5kIHJlYnVpbGQgbGluZXNcbiAgICByZXR1cm4gdGhpcy5idWlsZChmYWxzZSkucmVidWlsZCgpXG4gIH1cbn1cblxuZXh0ZW5kKFRleHQsIHRleHRhYmxlKVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBDb250YWluZXI6IHtcbiAgICAvLyBDcmVhdGUgdGV4dCBlbGVtZW50XG4gICAgdGV4dDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHRleHQgPSAnJykge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBUZXh0KCkpLnRleHQodGV4dClcbiAgICB9KSxcblxuICAgIC8vIENyZWF0ZSBwbGFpbiB0ZXh0IGVsZW1lbnRcbiAgICBwbGFpbjogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHRleHQgPSAnJykge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBUZXh0KCkpLnBsYWluKHRleHQpXG4gICAgfSlcbiAgfVxufSlcblxucmVnaXN0ZXIoVGV4dCwgJ1RleHQnKVxuIiwgImltcG9ydCB7XG4gIGV4dGVuZCxcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2tcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IGdsb2JhbHMgfSBmcm9tICcuLi91dGlscy93aW5kb3cuanMnXG5pbXBvcnQgeyByZWdpc3Rlck1ldGhvZHMgfSBmcm9tICcuLi91dGlscy9tZXRob2RzLmpzJ1xuaW1wb3J0IFNWR051bWJlciBmcm9tICcuLi90eXBlcy9TVkdOdW1iZXIuanMnXG5pbXBvcnQgU2hhcGUgZnJvbSAnLi9TaGFwZS5qcydcbmltcG9ydCBUZXh0IGZyb20gJy4vVGV4dC5qcydcbmltcG9ydCAqIGFzIHRleHRhYmxlIGZyb20gJy4uL21vZHVsZXMvY29yZS90ZXh0YWJsZS5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVHNwYW4gZXh0ZW5kcyBTaGFwZSB7XG4gIC8vIEluaXRpYWxpemUgbm9kZVxuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3RzcGFuJywgbm9kZSksIGF0dHJzKVxuICAgIHRoaXMuX2J1aWxkID0gZmFsc2UgLy8gZGlzYWJsZSBidWlsZCBtb2RlIGZvciBhZGRpbmcgbXVsdGlwbGUgbGluZXNcbiAgfVxuXG4gIC8vIFNob3J0Y3V0IGR4XG4gIGR4KGR4KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignZHgnLCBkeClcbiAgfVxuXG4gIC8vIFNob3J0Y3V0IGR5XG4gIGR5KGR5KSB7XG4gICAgcmV0dXJuIHRoaXMuYXR0cignZHknLCBkeSlcbiAgfVxuXG4gIC8vIENyZWF0ZSBuZXcgbGluZVxuICBuZXdMaW5lKCkge1xuICAgIC8vIG1hcmsgbmV3IGxpbmVcbiAgICB0aGlzLmRvbS5uZXdMaW5lZCA9IHRydWVcblxuICAgIC8vIGZldGNoIHBhcmVudFxuICAgIGNvbnN0IHRleHQgPSB0aGlzLnBhcmVudCgpXG5cbiAgICAvLyBlYXJseSByZXR1cm4gaW4gY2FzZSB3ZSBhcmUgbm90IGluIGEgdGV4dCBlbGVtZW50XG4gICAgaWYgKCEodGV4dCBpbnN0YW5jZW9mIFRleHQpKSB7XG4gICAgICByZXR1cm4gdGhpc1xuICAgIH1cblxuICAgIGNvbnN0IGkgPSB0ZXh0LmluZGV4KHRoaXMpXG5cbiAgICBjb25zdCBmb250U2l6ZSA9IGdsb2JhbHMud2luZG93XG4gICAgICAuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLm5vZGUpXG4gICAgICAuZ2V0UHJvcGVydHlWYWx1ZSgnZm9udC1zaXplJylcbiAgICBjb25zdCBkeSA9IHRleHQuZG9tLmxlYWRpbmcgKiBuZXcgU1ZHTnVtYmVyKGZvbnRTaXplKVxuXG4gICAgLy8gYXBwbHkgbmV3IHBvc2l0aW9uXG4gICAgcmV0dXJuIHRoaXMuZHkoaSA/IGR5IDogMCkuYXR0cigneCcsIHRleHQueCgpKVxuICB9XG5cbiAgLy8gU2V0IHRleHQgY29udGVudFxuICB0ZXh0KHRleHQpIHtcbiAgICBpZiAodGV4dCA9PSBudWxsKVxuICAgICAgcmV0dXJuIHRoaXMubm9kZS50ZXh0Q29udGVudCArICh0aGlzLmRvbS5uZXdMaW5lZCA/ICdcXG4nIDogJycpXG5cbiAgICBpZiAodHlwZW9mIHRleHQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuY2xlYXIoKS5idWlsZCh0cnVlKVxuICAgICAgdGV4dC5jYWxsKHRoaXMsIHRoaXMpXG4gICAgICB0aGlzLmJ1aWxkKGZhbHNlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBsYWluKHRleHQpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuXG5leHRlbmQoVHNwYW4sIHRleHRhYmxlKVxuXG5yZWdpc3Rlck1ldGhvZHMoe1xuICBUc3Bhbjoge1xuICAgIHRzcGFuOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAodGV4dCA9ICcnKSB7XG4gICAgICBjb25zdCB0c3BhbiA9IG5ldyBUc3BhbigpXG5cbiAgICAgIC8vIGNsZWFyIGlmIGJ1aWxkIG1vZGUgaXMgZGlzYWJsZWRcbiAgICAgIGlmICghdGhpcy5fYnVpbGQpIHtcbiAgICAgICAgdGhpcy5jbGVhcigpXG4gICAgICB9XG5cbiAgICAgIC8vIGFkZCBuZXcgdHNwYW5cbiAgICAgIHJldHVybiB0aGlzLnB1dCh0c3BhbikudGV4dCh0ZXh0KVxuICAgIH0pXG4gIH0sXG4gIFRleHQ6IHtcbiAgICBuZXdMaW5lOiBmdW5jdGlvbiAodGV4dCA9ICcnKSB7XG4gICAgICByZXR1cm4gdGhpcy50c3Bhbih0ZXh0KS5uZXdMaW5lKClcbiAgICB9XG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFRzcGFuLCAnVHNwYW4nKVxuIiwgImltcG9ydCB7IGN4LCBjeSwgaGVpZ2h0LCB3aWR0aCwgeCwgeSB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9jaXJjbGVkLmpzJ1xuaW1wb3J0IHtcbiAgZXh0ZW5kLFxuICBub2RlT3JOZXcsXG4gIHJlZ2lzdGVyLFxuICB3cmFwV2l0aEF0dHJDaGVja1xufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuaW1wb3J0IFNoYXBlIGZyb20gJy4vU2hhcGUuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENpcmNsZSBleHRlbmRzIFNoYXBlIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdjaXJjbGUnLCBub2RlKSwgYXR0cnMpXG4gIH1cblxuICByYWRpdXMocikge1xuICAgIHJldHVybiB0aGlzLmF0dHIoJ3InLCByKVxuICB9XG5cbiAgLy8gUmFkaXVzIHggdmFsdWVcbiAgcngocngpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdyJywgcngpXG4gIH1cblxuICAvLyBBbGlhcyByYWRpdXMgeCB2YWx1ZVxuICByeShyeSkge1xuICAgIHJldHVybiB0aGlzLnJ4KHJ5KVxuICB9XG5cbiAgc2l6ZShzaXplKSB7XG4gICAgcmV0dXJuIHRoaXMucmFkaXVzKG5ldyBTVkdOdW1iZXIoc2l6ZSkuZGl2aWRlKDIpKVxuICB9XG59XG5cbmV4dGVuZChDaXJjbGUsIHsgeCwgeSwgY3gsIGN5LCB3aWR0aCwgaGVpZ2h0IH0pXG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBjaXJjbGUgZWxlbWVudFxuICAgIGNpcmNsZTogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHNpemUgPSAwKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IENpcmNsZSgpKS5zaXplKHNpemUpLm1vdmUoMCwgMClcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihDaXJjbGUsICdDaXJjbGUnKVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIsIHdyYXBXaXRoQXR0ckNoZWNrIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgQ29udGFpbmVyIGZyb20gJy4vQ29udGFpbmVyLmpzJ1xuaW1wb3J0IGJhc2VGaW5kIGZyb20gJy4uL21vZHVsZXMvY29yZS9zZWxlY3Rvci5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ2xpcFBhdGggZXh0ZW5kcyBDb250YWluZXIge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ2NsaXBQYXRoJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gVW5jbGlwIGFsbCBjbGlwcGVkIGVsZW1lbnRzIGFuZCByZW1vdmUgaXRzZWxmXG4gIHJlbW92ZSgpIHtcbiAgICAvLyB1bmNsaXAgYWxsIHRhcmdldHNcbiAgICB0aGlzLnRhcmdldHMoKS5mb3JFYWNoKGZ1bmN0aW9uIChlbCkge1xuICAgICAgZWwudW5jbGlwKClcbiAgICB9KVxuXG4gICAgLy8gcmVtb3ZlIGNsaXBQYXRoIGZyb20gcGFyZW50XG4gICAgcmV0dXJuIHN1cGVyLnJlbW92ZSgpXG4gIH1cblxuICB0YXJnZXRzKCkge1xuICAgIHJldHVybiBiYXNlRmluZCgnc3ZnIFtjbGlwLXBhdGgqPScgKyB0aGlzLmlkKCkgKyAnXScpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIGNsaXBwaW5nIGVsZW1lbnRcbiAgICBjbGlwOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kZWZzKCkucHV0KG5ldyBDbGlwUGF0aCgpKVxuICAgIH0pXG4gIH0sXG4gIEVsZW1lbnQ6IHtcbiAgICAvLyBEaXN0cmlidXRlIGNsaXBQYXRoIHRvIHN2ZyBlbGVtZW50XG4gICAgY2xpcHBlcigpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZSgnY2xpcC1wYXRoJylcbiAgICB9LFxuXG4gICAgY2xpcFdpdGgoZWxlbWVudCkge1xuICAgICAgLy8gdXNlIGdpdmVuIGNsaXAgb3IgY3JlYXRlIGEgbmV3IG9uZVxuICAgICAgY29uc3QgY2xpcHBlciA9XG4gICAgICAgIGVsZW1lbnQgaW5zdGFuY2VvZiBDbGlwUGF0aFxuICAgICAgICAgID8gZWxlbWVudFxuICAgICAgICAgIDogdGhpcy5wYXJlbnQoKS5jbGlwKCkuYWRkKGVsZW1lbnQpXG5cbiAgICAgIC8vIGFwcGx5IG1hc2tcbiAgICAgIHJldHVybiB0aGlzLmF0dHIoJ2NsaXAtcGF0aCcsICd1cmwoIycgKyBjbGlwcGVyLmlkKCkgKyAnKScpXG4gICAgfSxcblxuICAgIC8vIFVuY2xpcCBlbGVtZW50XG4gICAgdW5jbGlwKCkge1xuICAgICAgcmV0dXJuIHRoaXMuYXR0cignY2xpcC1wYXRoJywgbnVsbClcbiAgICB9XG4gIH1cbn0pXG5cbnJlZ2lzdGVyKENsaXBQYXRoLCAnQ2xpcFBhdGgnKVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIsIHdyYXBXaXRoQXR0ckNoZWNrIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgRWxlbWVudCBmcm9tICcuL0VsZW1lbnQuanMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZvcmVpZ25PYmplY3QgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdmb3JlaWduT2JqZWN0Jywgbm9kZSksIGF0dHJzKVxuICB9XG59XG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIGZvcmVpZ25PYmplY3Q6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IEZvcmVpZ25PYmplY3QoKSkuc2l6ZSh3aWR0aCwgaGVpZ2h0KVxuICAgIH0pXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKEZvcmVpZ25PYmplY3QsICdGb3JlaWduT2JqZWN0JylcbiIsICJpbXBvcnQgTWF0cml4IGZyb20gJy4uLy4uL3R5cGVzL01hdHJpeC5qcydcbmltcG9ydCBQb2ludCBmcm9tICcuLi8uLi90eXBlcy9Qb2ludC5qcydcbmltcG9ydCBCb3ggZnJvbSAnLi4vLi4vdHlwZXMvQm94LmpzJ1xuaW1wb3J0IHsgcHJvcG9ydGlvbmFsU2l6ZSB9IGZyb20gJy4uLy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IHsgZ2V0V2luZG93IH0gZnJvbSAnLi4vLi4vdXRpbHMvd2luZG93LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gZG1vdmUoZHgsIGR5KSB7XG4gIHRoaXMuY2hpbGRyZW4oKS5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgIGxldCBiYm94XG5cbiAgICAvLyBXZSBoYXZlIHRvIHdyYXAgdGhpcyBmb3IgZWxlbWVudHMgdGhhdCBkb250IGhhdmUgYSBiYm94XG4gICAgLy8gZS5nLiB0aXRsZSBhbmQgb3RoZXIgZGVzY3JpcHRpdmUgZWxlbWVudHNcbiAgICB0cnkge1xuICAgICAgLy8gR2V0IHRoZSBjaGlsZHMgYmJveFxuICAgICAgLy8gQnVnOiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA1MDM5XG4gICAgICAvLyBCZWNhdXNlIGJib3ggZm9yIG5lc3RlZCBzdmdzIHJldHVybnMgdGhlIGNvbnRlbnRzIGJib3ggaW4gdGhlIGNvb3JkaW5hdGUgc3BhY2Ugb2YgdGhlIHN2ZyBpdHNlbGYgKHdlaXJkISksIHdlIGNhbnQgdXNlIGJib3ggZm9yIHN2Z3NcbiAgICAgIC8vIFRoZXJlZm9yZSB3ZSBoYXZlIHRvIHVzZSBnZXRCb3VuZGluZ0NsaWVudFJlY3QuIEJ1dCBUSEFUIGlzIGJyb2tlbiAoYXMgZXhwbGFpbmVkIGluIHRoZSBidWcpLlxuICAgICAgLy8gRnVubmlseSBlbm91Z2ggdGhlIGJyb2tlbiBiZWhhdmlvciB3b3VsZCB3b3JrIGZvciB1cyBidXQgdGhhdCBicmVha3MgaXQgaW4gY2hyb21lXG4gICAgICAvLyBTbyB3ZSBoYXZlIHRvIHJlcGxpY2F0ZSB0aGUgYnJva2VuIGJlaGF2aW9yIG9mIEZGIGJ5IGp1c3QgcmVhZGluZyB0aGUgYXR0cmlidXRlcyBvZiB0aGUgc3ZnIGl0c2VsZlxuICAgICAgYmJveCA9XG4gICAgICAgIGNoaWxkLm5vZGUgaW5zdGFuY2VvZiBnZXRXaW5kb3coKS5TVkdTVkdFbGVtZW50XG4gICAgICAgICAgPyBuZXcgQm94KGNoaWxkLmF0dHIoWyd4JywgJ3knLCAnd2lkdGgnLCAnaGVpZ2h0J10pKVxuICAgICAgICAgIDogY2hpbGQuYmJveCgpXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gR2V0IGNoaWxkcyBtYXRyaXhcbiAgICBjb25zdCBtID0gbmV3IE1hdHJpeChjaGlsZClcbiAgICAvLyBUcmFuc2xhdGUgY2hpbGRzIG1hdHJpeCBieSBhbW91bnQgYW5kXG4gICAgLy8gdHJhbnNmb3JtIGl0IGJhY2sgaW50byBwYXJlbnRzIHNwYWNlXG4gICAgY29uc3QgbWF0cml4ID0gbS50cmFuc2xhdGUoZHgsIGR5KS50cmFuc2Zvcm0obS5pbnZlcnNlKCkpXG4gICAgLy8gQ2FsY3VsYXRlIG5ldyB4IGFuZCB5IGZyb20gb2xkIGJveFxuICAgIGNvbnN0IHAgPSBuZXcgUG9pbnQoYmJveC54LCBiYm94LnkpLnRyYW5zZm9ybShtYXRyaXgpXG4gICAgLy8gTW92ZSBlbGVtZW50XG4gICAgY2hpbGQubW92ZShwLngsIHAueSlcbiAgfSlcblxuICByZXR1cm4gdGhpc1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZHgoZHgpIHtcbiAgcmV0dXJuIHRoaXMuZG1vdmUoZHgsIDApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkeShkeSkge1xuICByZXR1cm4gdGhpcy5kbW92ZSgwLCBkeSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhlaWdodChoZWlnaHQsIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGlmIChoZWlnaHQgPT0gbnVsbCkgcmV0dXJuIGJveC5oZWlnaHRcbiAgcmV0dXJuIHRoaXMuc2l6ZShib3gud2lkdGgsIGhlaWdodCwgYm94KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbW92ZSh4ID0gMCwgeSA9IDAsIGJveCA9IHRoaXMuYmJveCgpKSB7XG4gIGNvbnN0IGR4ID0geCAtIGJveC54XG4gIGNvbnN0IGR5ID0geSAtIGJveC55XG5cbiAgcmV0dXJuIHRoaXMuZG1vdmUoZHgsIGR5KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc2l6ZSh3aWR0aCwgaGVpZ2h0LCBib3ggPSB0aGlzLmJib3goKSkge1xuICBjb25zdCBwID0gcHJvcG9ydGlvbmFsU2l6ZSh0aGlzLCB3aWR0aCwgaGVpZ2h0LCBib3gpXG4gIGNvbnN0IHNjYWxlWCA9IHAud2lkdGggLyBib3gud2lkdGhcbiAgY29uc3Qgc2NhbGVZID0gcC5oZWlnaHQgLyBib3guaGVpZ2h0XG5cbiAgdGhpcy5jaGlsZHJlbigpLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgY29uc3QgbyA9IG5ldyBQb2ludChib3gpLnRyYW5zZm9ybShuZXcgTWF0cml4KGNoaWxkKS5pbnZlcnNlKCkpXG4gICAgY2hpbGQuc2NhbGUoc2NhbGVYLCBzY2FsZVksIG8ueCwgby55KVxuICB9KVxuXG4gIHJldHVybiB0aGlzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3aWR0aCh3aWR0aCwgYm94ID0gdGhpcy5iYm94KCkpIHtcbiAgaWYgKHdpZHRoID09IG51bGwpIHJldHVybiBib3gud2lkdGhcbiAgcmV0dXJuIHRoaXMuc2l6ZSh3aWR0aCwgYm94LmhlaWdodCwgYm94KVxufVxuXG5leHBvcnQgZnVuY3Rpb24geCh4LCBib3ggPSB0aGlzLmJib3goKSkge1xuICBpZiAoeCA9PSBudWxsKSByZXR1cm4gYm94LnhcbiAgcmV0dXJuIHRoaXMubW92ZSh4LCBib3gueSwgYm94KVxufVxuXG5leHBvcnQgZnVuY3Rpb24geSh5LCBib3ggPSB0aGlzLmJib3goKSkge1xuICBpZiAoeSA9PSBudWxsKSByZXR1cm4gYm94LnlcbiAgcmV0dXJuIHRoaXMubW92ZShib3gueCwgeSwgYm94KVxufVxuIiwgImltcG9ydCB7XG4gIG5vZGVPck5ldyxcbiAgcmVnaXN0ZXIsXG4gIHdyYXBXaXRoQXR0ckNoZWNrLFxuICBleHRlbmRcbn0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgQ29udGFpbmVyIGZyb20gJy4vQ29udGFpbmVyLmpzJ1xuaW1wb3J0ICogYXMgY29udGFpbmVyR2VvbWV0cnkgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2NvbnRhaW5lckdlb21ldHJ5LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdnJywgbm9kZSksIGF0dHJzKVxuICB9XG59XG5cbmV4dGVuZChHLCBjb250YWluZXJHZW9tZXRyeSlcblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIGEgZ3JvdXAgZWxlbWVudFxuICAgIGdyb3VwOiB3cmFwV2l0aEF0dHJDaGVjayhmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IEcoKSlcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihHLCAnRycpXG4iLCAiaW1wb3J0IHtcbiAgbm9kZU9yTmV3LFxuICByZWdpc3RlcixcbiAgd3JhcFdpdGhBdHRyQ2hlY2ssXG4gIGV4dGVuZFxufSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IHhsaW5rIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgQ29udGFpbmVyIGZyb20gJy4vQ29udGFpbmVyLmpzJ1xuaW1wb3J0ICogYXMgY29udGFpbmVyR2VvbWV0cnkgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL2NvbnRhaW5lckdlb21ldHJ5LmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdhJywgbm9kZSksIGF0dHJzKVxuICB9XG5cbiAgLy8gTGluayB0YXJnZXQgYXR0cmlidXRlXG4gIHRhcmdldCh0YXJnZXQpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCd0YXJnZXQnLCB0YXJnZXQpXG4gIH1cblxuICAvLyBMaW5rIHVybFxuICB0byh1cmwpIHtcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdocmVmJywgdXJsLCB4bGluaylcbiAgfVxufVxuXG5leHRlbmQoQSwgY29udGFpbmVyR2VvbWV0cnkpXG5cbnJlZ2lzdGVyTWV0aG9kcyh7XG4gIENvbnRhaW5lcjoge1xuICAgIC8vIENyZWF0ZSBhIGh5cGVybGluayBlbGVtZW50XG4gICAgbGluazogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHVybCkge1xuICAgICAgcmV0dXJuIHRoaXMucHV0KG5ldyBBKCkpLnRvKHVybClcbiAgICB9KVxuICB9LFxuICBFbGVtZW50OiB7XG4gICAgdW5saW5rKCkge1xuICAgICAgY29uc3QgbGluayA9IHRoaXMubGlua2VyKClcblxuICAgICAgaWYgKCFsaW5rKSByZXR1cm4gdGhpc1xuXG4gICAgICBjb25zdCBwYXJlbnQgPSBsaW5rLnBhcmVudCgpXG5cbiAgICAgIGlmICghcGFyZW50KSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlbW92ZSgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGluZGV4ID0gcGFyZW50LmluZGV4KGxpbmspXG4gICAgICBwYXJlbnQuYWRkKHRoaXMsIGluZGV4KVxuXG4gICAgICBsaW5rLnJlbW92ZSgpXG4gICAgICByZXR1cm4gdGhpc1xuICAgIH0sXG4gICAgbGlua1RvKHVybCkge1xuICAgICAgLy8gcmV1c2Ugb2xkIGxpbmsgaWYgcG9zc2libGVcbiAgICAgIGxldCBsaW5rID0gdGhpcy5saW5rZXIoKVxuXG4gICAgICBpZiAoIWxpbmspIHtcbiAgICAgICAgbGluayA9IG5ldyBBKClcbiAgICAgICAgdGhpcy53cmFwKGxpbmspXG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgdXJsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHVybC5jYWxsKGxpbmssIGxpbmspXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsaW5rLnRvKHVybClcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9LFxuICAgIGxpbmtlcigpIHtcbiAgICAgIGNvbnN0IGxpbmsgPSB0aGlzLnBhcmVudCgpXG4gICAgICBpZiAobGluayAmJiBsaW5rLm5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ2EnKSB7XG4gICAgICAgIHJldHVybiBsaW5rXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG59KVxuXG5yZWdpc3RlcihBLCAnQScpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9Db250YWluZXIuanMnXG5pbXBvcnQgYmFzZUZpbmQgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3NlbGVjdG9yLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNYXNrIGV4dGVuZHMgQ29udGFpbmVyIHtcbiAgLy8gSW5pdGlhbGl6ZSBub2RlXG4gIGNvbnN0cnVjdG9yKG5vZGUsIGF0dHJzID0gbm9kZSkge1xuICAgIHN1cGVyKG5vZGVPck5ldygnbWFzaycsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIFVubWFzayBhbGwgbWFza2VkIGVsZW1lbnRzIGFuZCByZW1vdmUgaXRzZWxmXG4gIHJlbW92ZSgpIHtcbiAgICAvLyB1bm1hc2sgYWxsIHRhcmdldHNcbiAgICB0aGlzLnRhcmdldHMoKS5mb3JFYWNoKGZ1bmN0aW9uIChlbCkge1xuICAgICAgZWwudW5tYXNrKClcbiAgICB9KVxuXG4gICAgLy8gcmVtb3ZlIG1hc2sgZnJvbSBwYXJlbnRcbiAgICByZXR1cm4gc3VwZXIucmVtb3ZlKClcbiAgfVxuXG4gIHRhcmdldHMoKSB7XG4gICAgcmV0dXJuIGJhc2VGaW5kKCdzdmcgW21hc2sqPScgKyB0aGlzLmlkKCkgKyAnXScpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgbWFzazogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZGVmcygpLnB1dChuZXcgTWFzaygpKVxuICAgIH0pXG4gIH0sXG4gIEVsZW1lbnQ6IHtcbiAgICAvLyBEaXN0cmlidXRlIG1hc2sgdG8gc3ZnIGVsZW1lbnRcbiAgICBtYXNrZXIoKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2UoJ21hc2snKVxuICAgIH0sXG5cbiAgICBtYXNrV2l0aChlbGVtZW50KSB7XG4gICAgICAvLyB1c2UgZ2l2ZW4gbWFzayBvciBjcmVhdGUgYSBuZXcgb25lXG4gICAgICBjb25zdCBtYXNrZXIgPVxuICAgICAgICBlbGVtZW50IGluc3RhbmNlb2YgTWFzayA/IGVsZW1lbnQgOiB0aGlzLnBhcmVudCgpLm1hc2soKS5hZGQoZWxlbWVudClcblxuICAgICAgLy8gYXBwbHkgbWFza1xuICAgICAgcmV0dXJuIHRoaXMuYXR0cignbWFzaycsICd1cmwoIycgKyBtYXNrZXIuaWQoKSArICcpJylcbiAgICB9LFxuXG4gICAgLy8gVW5tYXNrIGVsZW1lbnRcbiAgICB1bm1hc2soKSB7XG4gICAgICByZXR1cm4gdGhpcy5hdHRyKCdtYXNrJywgbnVsbClcbiAgICB9XG4gIH1cbn0pXG5cbnJlZ2lzdGVyKE1hc2ssICdNYXNrJylcbiIsICJpbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCBFbGVtZW50IGZyb20gJy4vRWxlbWVudC5qcydcbmltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi4vdHlwZXMvU1ZHTnVtYmVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RvcCBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3N0b3AnLCBub2RlKSwgYXR0cnMpXG4gIH1cblxuICAvLyBhZGQgY29sb3Igc3RvcHNcbiAgdXBkYXRlKG8pIHtcbiAgICBpZiAodHlwZW9mIG8gPT09ICdudW1iZXInIHx8IG8gaW5zdGFuY2VvZiBTVkdOdW1iZXIpIHtcbiAgICAgIG8gPSB7XG4gICAgICAgIG9mZnNldDogYXJndW1lbnRzWzBdLFxuICAgICAgICBjb2xvcjogYXJndW1lbnRzWzFdLFxuICAgICAgICBvcGFjaXR5OiBhcmd1bWVudHNbMl1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzZXQgYXR0cmlidXRlc1xuICAgIGlmIChvLm9wYWNpdHkgIT0gbnVsbCkgdGhpcy5hdHRyKCdzdG9wLW9wYWNpdHknLCBvLm9wYWNpdHkpXG4gICAgaWYgKG8uY29sb3IgIT0gbnVsbCkgdGhpcy5hdHRyKCdzdG9wLWNvbG9yJywgby5jb2xvcilcbiAgICBpZiAoby5vZmZzZXQgIT0gbnVsbCkgdGhpcy5hdHRyKCdvZmZzZXQnLCBuZXcgU1ZHTnVtYmVyKG8ub2Zmc2V0KSlcblxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgR3JhZGllbnQ6IHtcbiAgICAvLyBBZGQgYSBjb2xvciBzdG9wXG4gICAgc3RvcDogZnVuY3Rpb24gKG9mZnNldCwgY29sb3IsIG9wYWNpdHkpIHtcbiAgICAgIHJldHVybiB0aGlzLnB1dChuZXcgU3RvcCgpKS51cGRhdGUob2Zmc2V0LCBjb2xvciwgb3BhY2l0eSlcbiAgICB9XG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFN0b3AsICdTdG9wJylcbiIsICJpbXBvcnQgeyBub2RlT3JOZXcsIHJlZ2lzdGVyIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgeyB1bkNhbWVsQ2FzZSB9IGZyb20gJy4uL3V0aWxzL3V0aWxzLmpzJ1xuaW1wb3J0IEVsZW1lbnQgZnJvbSAnLi9FbGVtZW50LmpzJ1xuXG5mdW5jdGlvbiBjc3NSdWxlKHNlbGVjdG9yLCBydWxlKSB7XG4gIGlmICghc2VsZWN0b3IpIHJldHVybiAnJ1xuICBpZiAoIXJ1bGUpIHJldHVybiBzZWxlY3RvclxuXG4gIGxldCByZXQgPSBzZWxlY3RvciArICd7J1xuXG4gIGZvciAoY29uc3QgaSBpbiBydWxlKSB7XG4gICAgcmV0ICs9IHVuQ2FtZWxDYXNlKGkpICsgJzonICsgcnVsZVtpXSArICc7J1xuICB9XG5cbiAgcmV0ICs9ICd9J1xuXG4gIHJldHVybiByZXRcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3R5bGUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCdzdHlsZScsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIGFkZFRleHQodyA9ICcnKSB7XG4gICAgdGhpcy5ub2RlLnRleHRDb250ZW50ICs9IHdcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgZm9udChuYW1lLCBzcmMsIHBhcmFtcyA9IHt9KSB7XG4gICAgcmV0dXJuIHRoaXMucnVsZSgnQGZvbnQtZmFjZScsIHtcbiAgICAgIGZvbnRGYW1pbHk6IG5hbWUsXG4gICAgICBzcmM6IHNyYyxcbiAgICAgIC4uLnBhcmFtc1xuICAgIH0pXG4gIH1cblxuICBydWxlKHNlbGVjdG9yLCBvYmopIHtcbiAgICByZXR1cm4gdGhpcy5hZGRUZXh0KGNzc1J1bGUoc2VsZWN0b3IsIG9iaikpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKCdEb20nLCB7XG4gIHN0eWxlKHNlbGVjdG9yLCBvYmopIHtcbiAgICByZXR1cm4gdGhpcy5wdXQobmV3IFN0eWxlKCkpLnJ1bGUoc2VsZWN0b3IsIG9iailcbiAgfSxcbiAgZm9udGZhY2UobmFtZSwgc3JjLCBwYXJhbXMpIHtcbiAgICByZXR1cm4gdGhpcy5wdXQobmV3IFN0eWxlKCkpLmZvbnQobmFtZSwgc3JjLCBwYXJhbXMpXG4gIH1cbn0pXG5cbnJlZ2lzdGVyKFN0eWxlLCAnU3R5bGUnKVxuIiwgImltcG9ydCB7IG5vZGVPck5ldywgcmVnaXN0ZXIsIHdyYXBXaXRoQXR0ckNoZWNrIH0gZnJvbSAnLi4vdXRpbHMvYWRvcHRlci5qcydcbmltcG9ydCB7IHJlZ2lzdGVyTWV0aG9kcyB9IGZyb20gJy4uL3V0aWxzL21ldGhvZHMuanMnXG5pbXBvcnQgeyB4bGluayB9IGZyb20gJy4uL21vZHVsZXMvY29yZS9uYW1lc3BhY2VzLmpzJ1xuaW1wb3J0IFBhdGggZnJvbSAnLi9QYXRoLmpzJ1xuaW1wb3J0IFBhdGhBcnJheSBmcm9tICcuLi90eXBlcy9QYXRoQXJyYXkuanMnXG5pbXBvcnQgVGV4dCBmcm9tICcuL1RleHQuanMnXG5pbXBvcnQgYmFzZUZpbmQgZnJvbSAnLi4vbW9kdWxlcy9jb3JlL3NlbGVjdG9yLmpzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXh0UGF0aCBleHRlbmRzIFRleHQge1xuICAvLyBJbml0aWFsaXplIG5vZGVcbiAgY29uc3RydWN0b3Iobm9kZSwgYXR0cnMgPSBub2RlKSB7XG4gICAgc3VwZXIobm9kZU9yTmV3KCd0ZXh0UGF0aCcsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIHJldHVybiB0aGUgYXJyYXkgb2YgdGhlIHBhdGggdHJhY2sgZWxlbWVudFxuICBhcnJheSgpIHtcbiAgICBjb25zdCB0cmFjayA9IHRoaXMudHJhY2soKVxuXG4gICAgcmV0dXJuIHRyYWNrID8gdHJhY2suYXJyYXkoKSA6IG51bGxcbiAgfVxuXG4gIC8vIFBsb3QgcGF0aCBpZiBhbnlcbiAgcGxvdChkKSB7XG4gICAgY29uc3QgdHJhY2sgPSB0aGlzLnRyYWNrKClcbiAgICBsZXQgcGF0aEFycmF5ID0gbnVsbFxuXG4gICAgaWYgKHRyYWNrKSB7XG4gICAgICBwYXRoQXJyYXkgPSB0cmFjay5wbG90KGQpXG4gICAgfVxuXG4gICAgcmV0dXJuIGQgPT0gbnVsbCA/IHBhdGhBcnJheSA6IHRoaXNcbiAgfVxuXG4gIC8vIEdldCB0aGUgcGF0aCBlbGVtZW50XG4gIHRyYWNrKCkge1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZSgnaHJlZicpXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgdGV4dFBhdGg6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh0ZXh0LCBwYXRoKSB7XG4gICAgICAvLyBDb252ZXJ0IHRleHQgdG8gaW5zdGFuY2UgaWYgbmVlZGVkXG4gICAgICBpZiAoISh0ZXh0IGluc3RhbmNlb2YgVGV4dCkpIHtcbiAgICAgICAgdGV4dCA9IHRoaXMudGV4dCh0ZXh0KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGV4dC5wYXRoKHBhdGgpXG4gICAgfSlcbiAgfSxcbiAgVGV4dDoge1xuICAgIC8vIENyZWF0ZSBwYXRoIGZvciB0ZXh0IHRvIHJ1biBvblxuICAgIHBhdGg6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uICh0cmFjaywgaW1wb3J0Tm9kZXMgPSB0cnVlKSB7XG4gICAgICBjb25zdCB0ZXh0UGF0aCA9IG5ldyBUZXh0UGF0aCgpXG5cbiAgICAgIC8vIGlmIHRyYWNrIGlzIGEgcGF0aCwgcmV1c2UgaXRcbiAgICAgIGlmICghKHRyYWNrIGluc3RhbmNlb2YgUGF0aCkpIHtcbiAgICAgICAgLy8gY3JlYXRlIHBhdGggZWxlbWVudFxuICAgICAgICB0cmFjayA9IHRoaXMuZGVmcygpLnBhdGgodHJhY2spXG4gICAgICB9XG5cbiAgICAgIC8vIGxpbmsgdGV4dFBhdGggdG8gcGF0aCBhbmQgYWRkIGNvbnRlbnRcbiAgICAgIHRleHRQYXRoLmF0dHIoJ2hyZWYnLCAnIycgKyB0cmFjaywgeGxpbmspXG5cbiAgICAgIC8vIFRyYW5zcGxhbnQgYWxsIG5vZGVzIGZyb20gdGV4dCB0byB0ZXh0UGF0aFxuICAgICAgbGV0IG5vZGVcbiAgICAgIGlmIChpbXBvcnROb2Rlcykge1xuICAgICAgICB3aGlsZSAoKG5vZGUgPSB0aGlzLm5vZGUuZmlyc3RDaGlsZCkpIHtcbiAgICAgICAgICB0ZXh0UGF0aC5ub2RlLmFwcGVuZENoaWxkKG5vZGUpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gYWRkIHRleHRQYXRoIGVsZW1lbnQgYXMgY2hpbGQgbm9kZSBhbmQgcmV0dXJuIHRleHRQYXRoXG4gICAgICByZXR1cm4gdGhpcy5wdXQodGV4dFBhdGgpXG4gICAgfSksXG5cbiAgICAvLyBHZXQgdGhlIHRleHRQYXRoIGNoaWxkcmVuXG4gICAgdGV4dFBhdGgoKSB7XG4gICAgICByZXR1cm4gdGhpcy5maW5kT25lKCd0ZXh0UGF0aCcpXG4gICAgfVxuICB9LFxuICBQYXRoOiB7XG4gICAgLy8gY3JlYXRlcyBhIHRleHRQYXRoIGZyb20gdGhpcyBwYXRoXG4gICAgdGV4dDogd3JhcFdpdGhBdHRyQ2hlY2soZnVuY3Rpb24gKHRleHQpIHtcbiAgICAgIC8vIENvbnZlcnQgdGV4dCB0byBpbnN0YW5jZSBpZiBuZWVkZWRcbiAgICAgIGlmICghKHRleHQgaW5zdGFuY2VvZiBUZXh0KSkge1xuICAgICAgICB0ZXh0ID0gbmV3IFRleHQoKS5hZGRUbyh0aGlzLnBhcmVudCgpKS50ZXh0KHRleHQpXG4gICAgICB9XG5cbiAgICAgIC8vIENyZWF0ZSB0ZXh0UGF0aCBmcm9tIHRleHQgYW5kIHBhdGggYW5kIHJldHVyblxuICAgICAgcmV0dXJuIHRleHQucGF0aCh0aGlzKVxuICAgIH0pLFxuXG4gICAgdGFyZ2V0cygpIHtcbiAgICAgIHJldHVybiBiYXNlRmluZCgnc3ZnIHRleHRQYXRoJykuZmlsdGVyKChub2RlKSA9PiB7XG4gICAgICAgIHJldHVybiAobm9kZS5hdHRyKCdocmVmJykgfHwgJycpLmluY2x1ZGVzKHRoaXMuaWQoKSlcbiAgICAgIH0pXG5cbiAgICAgIC8vIERvZXMgbm90IHdvcmsgaW4gSUUxMS4gVXNlIHdoZW4gSUUgc3VwcG9ydCBpcyBkcm9wcGVkXG4gICAgICAvLyByZXR1cm4gYmFzZUZpbmQoJ3N2ZyB0ZXh0UGF0aFsqfGhyZWYqPScgKyB0aGlzLmlkKCkgKyAnXScpXG4gICAgfVxuICB9XG59KVxuXG5UZXh0UGF0aC5wcm90b3R5cGUuTW9ycGhBcnJheSA9IFBhdGhBcnJheVxucmVnaXN0ZXIoVGV4dFBhdGgsICdUZXh0UGF0aCcpXG4iLCAiaW1wb3J0IHsgbm9kZU9yTmV3LCByZWdpc3Rlciwgd3JhcFdpdGhBdHRyQ2hlY2sgfSBmcm9tICcuLi91dGlscy9hZG9wdGVyLmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJNZXRob2RzIH0gZnJvbSAnLi4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCB7IHhsaW5rIH0gZnJvbSAnLi4vbW9kdWxlcy9jb3JlL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgU2hhcGUgZnJvbSAnLi9TaGFwZS5qcydcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVXNlIGV4dGVuZHMgU2hhcGUge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBhdHRycyA9IG5vZGUpIHtcbiAgICBzdXBlcihub2RlT3JOZXcoJ3VzZScsIG5vZGUpLCBhdHRycylcbiAgfVxuXG4gIC8vIFVzZSBlbGVtZW50IGFzIGEgcmVmZXJlbmNlXG4gIHVzZShlbGVtZW50LCBmaWxlKSB7XG4gICAgLy8gU2V0IGxpbmVkIGVsZW1lbnRcbiAgICByZXR1cm4gdGhpcy5hdHRyKCdocmVmJywgKGZpbGUgfHwgJycpICsgJyMnICsgZWxlbWVudCwgeGxpbmspXG4gIH1cbn1cblxucmVnaXN0ZXJNZXRob2RzKHtcbiAgQ29udGFpbmVyOiB7XG4gICAgLy8gQ3JlYXRlIGEgdXNlIGVsZW1lbnRcbiAgICB1c2U6IHdyYXBXaXRoQXR0ckNoZWNrKGZ1bmN0aW9uIChlbGVtZW50LCBmaWxlKSB7XG4gICAgICByZXR1cm4gdGhpcy5wdXQobmV3IFVzZSgpKS51c2UoZWxlbWVudCwgZmlsZSlcbiAgICB9KVxuICB9XG59KVxuXG5yZWdpc3RlcihVc2UsICdVc2UnKVxuIiwgIi8qIE9wdGlvbmFsIE1vZHVsZXMgKi9cbmltcG9ydCAnLi9tb2R1bGVzL29wdGlvbmFsL2FycmFuZ2UuanMnXG5pbXBvcnQgJy4vbW9kdWxlcy9vcHRpb25hbC9jbGFzcy5qcydcbmltcG9ydCAnLi9tb2R1bGVzL29wdGlvbmFsL2Nzcy5qcydcbmltcG9ydCAnLi9tb2R1bGVzL29wdGlvbmFsL2RhdGEuanMnXG5pbXBvcnQgJy4vbW9kdWxlcy9vcHRpb25hbC9tZW1vcnkuanMnXG5pbXBvcnQgJy4vbW9kdWxlcy9vcHRpb25hbC9zdWdhci5qcydcbmltcG9ydCAnLi9tb2R1bGVzL29wdGlvbmFsL3RyYW5zZm9ybS5qcydcblxuaW1wb3J0IHsgZXh0ZW5kLCBtYWtlSW5zdGFuY2UgfSBmcm9tICcuL3V0aWxzL2Fkb3B0ZXIuanMnXG5pbXBvcnQgeyBnZXRNZXRob2ROYW1lcywgZ2V0TWV0aG9kc0ZvciB9IGZyb20gJy4vdXRpbHMvbWV0aG9kcy5qcydcbmltcG9ydCBCb3ggZnJvbSAnLi90eXBlcy9Cb3guanMnXG5pbXBvcnQgQ29sb3IgZnJvbSAnLi90eXBlcy9Db2xvci5qcydcbmltcG9ydCBDb250YWluZXIgZnJvbSAnLi9lbGVtZW50cy9Db250YWluZXIuanMnXG5pbXBvcnQgRGVmcyBmcm9tICcuL2VsZW1lbnRzL0RlZnMuanMnXG5pbXBvcnQgRG9tIGZyb20gJy4vZWxlbWVudHMvRG9tLmpzJ1xuaW1wb3J0IEVsZW1lbnQgZnJvbSAnLi9lbGVtZW50cy9FbGVtZW50LmpzJ1xuaW1wb3J0IEVsbGlwc2UgZnJvbSAnLi9lbGVtZW50cy9FbGxpcHNlLmpzJ1xuaW1wb3J0IEV2ZW50VGFyZ2V0IGZyb20gJy4vdHlwZXMvRXZlbnRUYXJnZXQuanMnXG5pbXBvcnQgRnJhZ21lbnQgZnJvbSAnLi9lbGVtZW50cy9GcmFnbWVudC5qcydcbmltcG9ydCBHcmFkaWVudCBmcm9tICcuL2VsZW1lbnRzL0dyYWRpZW50LmpzJ1xuaW1wb3J0IEltYWdlIGZyb20gJy4vZWxlbWVudHMvSW1hZ2UuanMnXG5pbXBvcnQgTGluZSBmcm9tICcuL2VsZW1lbnRzL0xpbmUuanMnXG5pbXBvcnQgTGlzdCBmcm9tICcuL3R5cGVzL0xpc3QuanMnXG5pbXBvcnQgTWFya2VyIGZyb20gJy4vZWxlbWVudHMvTWFya2VyLmpzJ1xuaW1wb3J0IE1hdHJpeCBmcm9tICcuL3R5cGVzL01hdHJpeC5qcydcbmltcG9ydCBNb3JwaGFibGUsIHtcbiAgTm9uTW9ycGhhYmxlLFxuICBPYmplY3RCYWcsXG4gIFRyYW5zZm9ybUJhZyxcbiAgbWFrZU1vcnBoYWJsZSxcbiAgcmVnaXN0ZXJNb3JwaGFibGVUeXBlXG59IGZyb20gJy4vYW5pbWF0aW9uL01vcnBoYWJsZS5qcydcbmltcG9ydCBQYXRoIGZyb20gJy4vZWxlbWVudHMvUGF0aC5qcydcbmltcG9ydCBQYXRoQXJyYXkgZnJvbSAnLi90eXBlcy9QYXRoQXJyYXkuanMnXG5pbXBvcnQgUGF0dGVybiBmcm9tICcuL2VsZW1lbnRzL1BhdHRlcm4uanMnXG5pbXBvcnQgUG9pbnRBcnJheSBmcm9tICcuL3R5cGVzL1BvaW50QXJyYXkuanMnXG5pbXBvcnQgUG9pbnQgZnJvbSAnLi90eXBlcy9Qb2ludC5qcydcbmltcG9ydCBQb2x5Z29uIGZyb20gJy4vZWxlbWVudHMvUG9seWdvbi5qcydcbmltcG9ydCBQb2x5bGluZSBmcm9tICcuL2VsZW1lbnRzL1BvbHlsaW5lLmpzJ1xuaW1wb3J0IFJlY3QgZnJvbSAnLi9lbGVtZW50cy9SZWN0LmpzJ1xuaW1wb3J0IFJ1bm5lciBmcm9tICcuL2FuaW1hdGlvbi9SdW5uZXIuanMnXG5pbXBvcnQgU1ZHQXJyYXkgZnJvbSAnLi90eXBlcy9TVkdBcnJheS5qcydcbmltcG9ydCBTVkdOdW1iZXIgZnJvbSAnLi90eXBlcy9TVkdOdW1iZXIuanMnXG5pbXBvcnQgU2hhcGUgZnJvbSAnLi9lbGVtZW50cy9TaGFwZS5qcydcbmltcG9ydCBTdmcgZnJvbSAnLi9lbGVtZW50cy9TdmcuanMnXG5pbXBvcnQgU3ltYm9sIGZyb20gJy4vZWxlbWVudHMvU3ltYm9sLmpzJ1xuaW1wb3J0IFRleHQgZnJvbSAnLi9lbGVtZW50cy9UZXh0LmpzJ1xuaW1wb3J0IFRzcGFuIGZyb20gJy4vZWxlbWVudHMvVHNwYW4uanMnXG5pbXBvcnQgKiBhcyBkZWZhdWx0cyBmcm9tICcuL21vZHVsZXMvY29yZS9kZWZhdWx0cy5qcydcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMvdXRpbHMuanMnXG5pbXBvcnQgKiBhcyBuYW1lc3BhY2VzIGZyb20gJy4vbW9kdWxlcy9jb3JlL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgKiBhcyByZWdleCBmcm9tICcuL21vZHVsZXMvY29yZS9yZWdleC5qcydcblxuZXhwb3J0IHtcbiAgTW9ycGhhYmxlLFxuICByZWdpc3Rlck1vcnBoYWJsZVR5cGUsXG4gIG1ha2VNb3JwaGFibGUsXG4gIFRyYW5zZm9ybUJhZyxcbiAgT2JqZWN0QmFnLFxuICBOb25Nb3JwaGFibGVcbn1cblxuZXhwb3J0IHsgZGVmYXVsdHMsIHV0aWxzLCBuYW1lc3BhY2VzLCByZWdleCB9XG5leHBvcnQgY29uc3QgU1ZHID0gbWFrZUluc3RhbmNlXG5leHBvcnQgeyBkZWZhdWx0IGFzIHBhcnNlciB9IGZyb20gJy4vbW9kdWxlcy9jb3JlL3BhcnNlci5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZmluZCB9IGZyb20gJy4vbW9kdWxlcy9jb3JlL3NlbGVjdG9yLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9tb2R1bGVzL2NvcmUvZXZlbnQuanMnXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL2Fkb3B0ZXIuanMnXG5leHBvcnQge1xuICBnZXRXaW5kb3csXG4gIHJlZ2lzdGVyV2luZG93LFxuICByZXN0b3JlV2luZG93LFxuICBzYXZlV2luZG93LFxuICB3aXRoV2luZG93XG59IGZyb20gJy4vdXRpbHMvd2luZG93LmpzJ1xuXG4vKiBBbmltYXRpb24gTW9kdWxlcyAqL1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBBbmltYXRvciB9IGZyb20gJy4vYW5pbWF0aW9uL0FuaW1hdG9yLmpzJ1xuZXhwb3J0IHtcbiAgQ29udHJvbGxlcixcbiAgRWFzZSxcbiAgUElELFxuICBTcHJpbmcsXG4gIGVhc2luZ1xufSBmcm9tICcuL2FuaW1hdGlvbi9Db250cm9sbGVyLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBRdWV1ZSB9IGZyb20gJy4vYW5pbWF0aW9uL1F1ZXVlLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSdW5uZXIgfSBmcm9tICcuL2FuaW1hdGlvbi9SdW5uZXIuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFRpbWVsaW5lIH0gZnJvbSAnLi9hbmltYXRpb24vVGltZWxpbmUuanMnXG5cbi8qIFR5cGVzICovXG5leHBvcnQgeyBkZWZhdWx0IGFzIEFycmF5IH0gZnJvbSAnLi90eXBlcy9TVkdBcnJheS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQm94IH0gZnJvbSAnLi90eXBlcy9Cb3guanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbG9yIH0gZnJvbSAnLi90eXBlcy9Db2xvci5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRXZlbnRUYXJnZXQgfSBmcm9tICcuL3R5cGVzL0V2ZW50VGFyZ2V0LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBNYXRyaXggfSBmcm9tICcuL3R5cGVzL01hdHJpeC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTnVtYmVyIH0gZnJvbSAnLi90eXBlcy9TVkdOdW1iZXIuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBhdGhBcnJheSB9IGZyb20gJy4vdHlwZXMvUGF0aEFycmF5LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBQb2ludCB9IGZyb20gJy4vdHlwZXMvUG9pbnQuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBvaW50QXJyYXkgfSBmcm9tICcuL3R5cGVzL1BvaW50QXJyYXkuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIExpc3QgfSBmcm9tICcuL3R5cGVzL0xpc3QuanMnXG5cbi8qIEVsZW1lbnRzICovXG5leHBvcnQgeyBkZWZhdWx0IGFzIENpcmNsZSB9IGZyb20gJy4vZWxlbWVudHMvQ2lyY2xlLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBDbGlwUGF0aCB9IGZyb20gJy4vZWxlbWVudHMvQ2xpcFBhdGguanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIENvbnRhaW5lciB9IGZyb20gJy4vZWxlbWVudHMvQ29udGFpbmVyLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBEZWZzIH0gZnJvbSAnLi9lbGVtZW50cy9EZWZzLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBEb20gfSBmcm9tICcuL2VsZW1lbnRzL0RvbS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRWxlbWVudCB9IGZyb20gJy4vZWxlbWVudHMvRWxlbWVudC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRWxsaXBzZSB9IGZyb20gJy4vZWxlbWVudHMvRWxsaXBzZS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRm9yZWlnbk9iamVjdCB9IGZyb20gJy4vZWxlbWVudHMvRm9yZWlnbk9iamVjdC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRnJhZ21lbnQgfSBmcm9tICcuL2VsZW1lbnRzL0ZyYWdtZW50LmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBHcmFkaWVudCB9IGZyb20gJy4vZWxlbWVudHMvR3JhZGllbnQuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIEcgfSBmcm9tICcuL2VsZW1lbnRzL0cuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIEEgfSBmcm9tICcuL2VsZW1lbnRzL0EuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIEltYWdlIH0gZnJvbSAnLi9lbGVtZW50cy9JbWFnZS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTGluZSB9IGZyb20gJy4vZWxlbWVudHMvTGluZS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTWFya2VyIH0gZnJvbSAnLi9lbGVtZW50cy9NYXJrZXIuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIE1hc2sgfSBmcm9tICcuL2VsZW1lbnRzL01hc2suanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBhdGggfSBmcm9tICcuL2VsZW1lbnRzL1BhdGguanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBhdHRlcm4gfSBmcm9tICcuL2VsZW1lbnRzL1BhdHRlcm4uanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBvbHlnb24gfSBmcm9tICcuL2VsZW1lbnRzL1BvbHlnb24uanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFBvbHlsaW5lIH0gZnJvbSAnLi9lbGVtZW50cy9Qb2x5bGluZS5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVjdCB9IGZyb20gJy4vZWxlbWVudHMvUmVjdC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2hhcGUgfSBmcm9tICcuL2VsZW1lbnRzL1NoYXBlLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBTdG9wIH0gZnJvbSAnLi9lbGVtZW50cy9TdG9wLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBTdHlsZSB9IGZyb20gJy4vZWxlbWVudHMvU3R5bGUuanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFN2ZyB9IGZyb20gJy4vZWxlbWVudHMvU3ZnLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBTeW1ib2wgfSBmcm9tICcuL2VsZW1lbnRzL1N5bWJvbC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVGV4dCB9IGZyb20gJy4vZWxlbWVudHMvVGV4dC5qcydcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVGV4dFBhdGggfSBmcm9tICcuL2VsZW1lbnRzL1RleHRQYXRoLmpzJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUc3BhbiB9IGZyb20gJy4vZWxlbWVudHMvVHNwYW4uanMnXG5leHBvcnQgeyBkZWZhdWx0IGFzIFVzZSB9IGZyb20gJy4vZWxlbWVudHMvVXNlLmpzJ1xuXG5leHRlbmQoW1N2ZywgU3ltYm9sLCBJbWFnZSwgUGF0dGVybiwgTWFya2VyXSwgZ2V0TWV0aG9kc0Zvcigndmlld2JveCcpKVxuXG5leHRlbmQoW0xpbmUsIFBvbHlsaW5lLCBQb2x5Z29uLCBQYXRoXSwgZ2V0TWV0aG9kc0ZvcignbWFya2VyJykpXG5cbmV4dGVuZChUZXh0LCBnZXRNZXRob2RzRm9yKCdUZXh0JykpXG5leHRlbmQoUGF0aCwgZ2V0TWV0aG9kc0ZvcignUGF0aCcpKVxuXG5leHRlbmQoRGVmcywgZ2V0TWV0aG9kc0ZvcignRGVmcycpKVxuXG5leHRlbmQoW1RleHQsIFRzcGFuXSwgZ2V0TWV0aG9kc0ZvcignVHNwYW4nKSlcblxuZXh0ZW5kKFtSZWN0LCBFbGxpcHNlLCBHcmFkaWVudCwgUnVubmVyXSwgZ2V0TWV0aG9kc0ZvcigncmFkaXVzJykpXG5cbmV4dGVuZChFdmVudFRhcmdldCwgZ2V0TWV0aG9kc0ZvcignRXZlbnRUYXJnZXQnKSlcbmV4dGVuZChEb20sIGdldE1ldGhvZHNGb3IoJ0RvbScpKVxuZXh0ZW5kKEVsZW1lbnQsIGdldE1ldGhvZHNGb3IoJ0VsZW1lbnQnKSlcbmV4dGVuZChTaGFwZSwgZ2V0TWV0aG9kc0ZvcignU2hhcGUnKSlcbmV4dGVuZChbQ29udGFpbmVyLCBGcmFnbWVudF0sIGdldE1ldGhvZHNGb3IoJ0NvbnRhaW5lcicpKVxuZXh0ZW5kKEdyYWRpZW50LCBnZXRNZXRob2RzRm9yKCdHcmFkaWVudCcpKVxuXG5leHRlbmQoUnVubmVyLCBnZXRNZXRob2RzRm9yKCdSdW5uZXInKSlcblxuTGlzdC5leHRlbmQoZ2V0TWV0aG9kTmFtZXMoKSlcblxucmVnaXN0ZXJNb3JwaGFibGVUeXBlKFtcbiAgU1ZHTnVtYmVyLFxuICBDb2xvcixcbiAgQm94LFxuICBNYXRyaXgsXG4gIFNWR0FycmF5LFxuICBQb2ludEFycmF5LFxuICBQYXRoQXJyYXksXG4gIFBvaW50XG5dKVxuXG5tYWtlTW9ycGhhYmxlKClcbiIsICJpbXBvcnQgeyBqb2luLCBkaXJuYW1lIH0gZnJvbSAnbm9kZTpwYXRoJ1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gJ25vZGU6dXJsJ1xuXG5jb25zdCBmaWxlRGlybmFtZSA9IGRpcm5hbWUoZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS51cmwpKVxuXG5leHBvcnQgY29uc3QgZm9udFNpemUgPSAxNlxuZXhwb3J0IGNvbnN0IGZvbnRGYW1pbHkgPSAnc2Fucy1zZXJpZidcbmV4cG9ydCBjb25zdCBmb250RGlyID0gam9pbihmaWxlRGlybmFtZSwgJy4uLy4uLycsICdmb250cy8nKVxuZXhwb3J0IGNvbnN0IGZvbnRGYW1pbHlNYXBwaW5ncyA9IHtcbiAgJ3NhbnMtc2VyaWYnOiAnT3BlblNhbnMtUmVndWxhci50dGYnLFxuICAnT3BlbiBTYW5zJzogJ09wZW5TYW5zLVJlZ3VsYXIudHRmJ1xufVxuIiwgImV4cG9ydCBjb25zdCBleHRlbmQgPSAoLi4ubW9kdWxlcykgPT4ge1xuICB2YXIgbWV0aG9kcywga2V5LCBpXG5cbiAgLy8gR2V0IG9iamVjdCB3aXRoIGV4dGVuc2lvbnNcbiAgbWV0aG9kcyA9IG1vZHVsZXMucG9wKClcblxuICBmb3IgKGkgPSBtb2R1bGVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgZm9yIChrZXkgaW4gbWV0aG9kcykgeyBtb2R1bGVzW2ldLnByb3RvdHlwZVtrZXldID0gbWV0aG9kc1trZXldIH1cbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZXh0ZW5kU3RhdGljID0gKC4uLm1vZHVsZXMpID0+IHtcbiAgdmFyIG1ldGhvZHMsIGtleSwgaVxuXG4gIC8vIEdldCBvYmplY3Qgd2l0aCBleHRlbnNpb25zXG4gIG1ldGhvZHMgPSBtb2R1bGVzLnBvcCgpXG5cbiAgZm9yIChpID0gbW9kdWxlcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgIGZvciAoa2V5IGluIG1ldGhvZHMpIHsgbW9kdWxlc1tpXVtrZXldID0gbWV0aG9kc1trZXldIH1cbiAgfVxufVxuXG4vLyBUT0RPOiByZWZhY3RvciBzbyB0aGF0IGl0IHRha2VzIGEgY2xhc3NcbmV4cG9ydCBjb25zdCBtaXhpbiA9IChtaXhpbiwgX2NsYXNzKSA9PiB7XG4gIGNvbnN0IGRlc2NyaXB0b3JzID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobWl4aW4pXG4gIC8vIGNvbnN0IGFsbCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKG1peGluKVxuXG4gIC8vIGNvbnN0IHByb3BOYW1lcyA9IE9iamVjdC5rZXlzKGRlc2NyaXB0b3JzKVxuICAvLyBjb25zdCBtZXRob2ROYW1lcyA9IGFsbC5maWx0ZXIocCA9PiAhcHJvcE5hbWVzLmluY2x1ZGVzKHApKVxuXG4gIC8vIGZvciAoY29uc3QgbWV0aG9kIG9mIG1ldGhvZE5hbWVzKSB7XG4gIC8vICAgX2NsYXNzLnByb3RvdHlwZVttZXRob2RdID0gbWl4aW5bbWV0aG9kXVxuICAvLyB9XG5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoX2NsYXNzLnByb3RvdHlwZSwgZGVzY3JpcHRvcnMpXG59XG4iLCAiY29uc3QgJCA9IFN5bWJvbCgncHJpdmF0ZSBwcm9wZXJ0aWVzJylcblxuZXhwb3J0IGNsYXNzIEV2ZW50VGFyZ2V0IHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHRoaXNbJF0gPSB7fVxuICAgIHRoaXNbJF0ubGlzdGVuZXJzID0ge31cbiAgfVxuXG4gIGFkZEV2ZW50TGlzdGVuZXIgKHR5cGUsIGNhbGxiYWNrKSB7XG4gICAgaWYgKCEodHlwZSBpbiB0aGlzWyRdLmxpc3RlbmVycykpIHtcbiAgICAgIHRoaXNbJF0ubGlzdGVuZXJzW3R5cGVdID0gW11cbiAgICB9XG4gICAgdGhpc1skXS5saXN0ZW5lcnNbdHlwZV0ucHVzaChjYWxsYmFjaylcbiAgfVxuXG4gIGRpc3BhdGNoRXZlbnQgKGV2ZW50KSB7XG4gICAgaWYgKCEoZXZlbnQudHlwZSBpbiB0aGlzWyRdLmxpc3RlbmVycykpIHsgcmV0dXJuIHRydWUgfVxuXG4gICAgdmFyIHN0YWNrID0gdGhpc1skXS5saXN0ZW5lcnNbZXZlbnQudHlwZV1cbiAgICBldmVudC50YXJnZXQgPSB0aGlzXG5cbiAgICBzdGFjay5mb3JFYWNoKGZ1bmN0aW9uIChlbCkge1xuICAgICAgZWwoZXZlbnQpXG4gICAgfSlcblxuICAgIHJldHVybiAhZXZlbnQuZGVmYXVsdFByZXZlbnRlZFxuICB9XG5cbiAgcmVtb3ZlRXZlbnRMaXN0ZW5lciAodHlwZSwgY2FsbGJhY2spIHtcbiAgICBpZiAoISh0eXBlIGluIHRoaXNbJF0ubGlzdGVuZXJzKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdmFyIHN0YWNrID0gdGhpc1skXS5saXN0ZW5lcnNbdHlwZV1cbiAgICBmb3IgKHZhciBpID0gMCwgaWwgPSBzdGFjay5sZW5ndGg7IGkgPCBpbDsgaSsrKSB7XG4gICAgICBpZiAoc3RhY2tbaV0gPT09IGNhbGxiYWNrKSB7XG4gICAgICAgIHN0YWNrLnNwbGljZShpLCAxKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIiwgImNvbnN0IGh0bWxFbnRpdGllcyA9IGZ1bmN0aW9uIChzdHIpIHtcbiAgcmV0dXJuIFN0cmluZyhzdHIpLnJlcGxhY2UoLyYvZywgJyZhbXA7JykucmVwbGFjZSgvPC9nLCAnJmx0OycpLnJlcGxhY2UoLz4vZywgJyZndDsnKS5yZXBsYWNlKC9cIi9nLCAnJnF1b3Q7Jylcbn1cblxudmFyIGVtcHR5RWxlbWVudHMgPSB7XG4gIGJyOiB0cnVlLFxuICBocjogdHJ1ZSxcbiAgaW1nOiB0cnVlLFxuICBsaW5rOiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCB0YWcgPSBmdW5jdGlvbiAobm9kZSkge1xuICBjb25zdCBhdHRycyA9IFsgLi4ubm9kZS5hdHRycyBdLm1hcChmdW5jdGlvbiAobm9kZSkge1xuICAgIHJldHVybiAobm9kZS5wcmVmaXggPyBub2RlLnByZWZpeCArICc6JyA6ICcnKSArIG5vZGUubG9jYWxOYW1lICsgJz1cIicgKyBodG1sRW50aXRpZXMobm9kZS52YWx1ZSkgKyAnXCInXG4gIH0pXG5cbiAgY29uc3QgeyBwcmVmaXgsIGxvY2FsTmFtZSB9ID0gbm9kZVxuICBjb25zdCBxdWFsaWZpZWROYW1lID0gKHByZWZpeCA/IHByZWZpeCArICc6JyA6ICcnKSArIGxvY2FsTmFtZVxuXG4gIHJldHVybiAnPCcgKyBbXS5jb25jYXQocXVhbGlmaWVkTmFtZSwgYXR0cnMpLmpvaW4oJyAnKSArICc+JyArIChlbXB0eUVsZW1lbnRzW3F1YWxpZmllZE5hbWUudG9Mb3dlckNhc2UoKV0gPyAnJyA6IG5vZGUuaW5uZXJIVE1MICsgJzwvJyArIHF1YWxpZmllZE5hbWUgKyAnPicpXG59XG5cbmV4cG9ydCBjb25zdCBjbG9uZU5vZGUgPSBmdW5jdGlvbiAobm9kZSkge1xuXG4gIGNvbnN0IHsgcHJlZml4LCBsb2NhbE5hbWUsIG5hbWVzcGFjZVVSSTogbnMsIG5vZGVWYWx1ZSwgb3duZXJEb2N1bWVudCB9ID0gbm9kZVxuXG4gIC8vIEJ1aWxkIHVwIHRoZSBjb3JyZWN0bHkgY2FzZWQgcXVhbGlmaWVkIG5hbWVcbiAgY29uc3QgcXVhbGlmaWVkTmFtZSA9IChwcmVmaXggPyBwcmVmaXggKyAnOicgOiAnJykgKyBsb2NhbE5hbWVcblxuICAvLyBDaGVjayBpZiBub2RlIHdhcyBjcmVhdGVkIHVzaW5nIG5vbi1uYW1lc3BhY2UgZnVuY3Rpb24gd2hpY2ggY2FuIGxlYWQgdG8gOiBpbiB0aGUgbG9jYWxOYW1lLlxuICAvLyBUaGlzIGNoZWNrIGFsbG93cyBmYWxzZSBuZWdhdGl2ZXMgYmVjYXVzZSBgbG9jYWxgIG9ubHkgbWF0dGVycyBJRiB0aGVyZSBhcmUgOiBpbiB0aGUgbG9jYWxOYW1lXG4gIC8vIGFuZCB3ZSBkb250IGNhcmUgYWJvdXQgaXQgd2hlbiB0aGVyZSBhcmUgbm9uXG4gIGNvbnN0IGxvY2FsID0gbG9jYWxOYW1lLmluY2x1ZGVzKCc6JylcblxuICB2YXIgY2xvbmUgPSBuZXcgbm9kZS5jb25zdHJ1Y3RvcihxdWFsaWZpZWROYW1lLCB7XG4gICAgYXR0cnM6IG5ldyBTZXQoWyAuLi5ub2RlLmF0dHJzIF0ubWFwKG5vZGUgPT4gbm9kZS5jbG9uZU5vZGUoKSkpLFxuICAgIG5vZGVWYWx1ZSxcbiAgICBvd25lckRvY3VtZW50LFxuICAgIGxvY2FsXG4gIH0sIG5zKVxuXG4gIHJldHVybiBjbG9uZVxufVxuIiwgIlxuZXhwb3J0IGNvbnN0IHN2ZyA9ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZydcbmV4cG9ydCBjb25zdCB4bGluayA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJ1xuZXhwb3J0IGNvbnN0IGh0bWwgPSAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCdcbmV4cG9ydCBjb25zdCBtYXRobWwgPSAnaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCdcbmV4cG9ydCBjb25zdCB4bWwgPSAnaHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlJ1xuZXhwb3J0IGNvbnN0IHhtbG5zID0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAveG1sbnMvJ1xuIiwgImltcG9ydCB7IGV4dGVuZCwgZXh0ZW5kU3RhdGljIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcblxuaW1wb3J0IHsgRXZlbnRUYXJnZXQgfSBmcm9tICcuL0V2ZW50VGFyZ2V0LmpzJ1xuaW1wb3J0IHsgY2xvbmVOb2RlIH0gZnJvbSAnLi4vdXRpbHMvdGFnVXRpbHMuanMnXG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnLi4vdXRpbHMvbmFtZXNwYWNlcy5qcydcblxuY29uc3Qgbm9kZVR5cGVzID0ge1xuICBFTEVNRU5UX05PREU6IDEsXG4gIEFUVFJJQlVURV9OT0RFOiAyLFxuICBURVhUX05PREU6IDMsXG4gIENEQVRBX1NFQ1RJT05fTk9ERTogNCxcbiAgRU5USVRZX1JFRkVSRU5DRV9OT0RFOiA1LFxuICBFTlRJVFlfTk9ERTogNixcbiAgUFJPQ0VTU0lOR19JTlNUUlVDVElPTl9OT0RFOiA3LFxuICBDT01NRU5UX05PREU6IDgsXG4gIERPQ1VNRU5UX05PREU6IDksXG4gIERPQ1VNRU5UX1RZUEVfTk9ERTogMTAsXG4gIERPQ1VNRU5UX0ZSQUdNRU5UX05PREU6IDExLFxuICBOT1RBVElPTl9OT0RFOiAxMlxufVxuXG5leHBvcnQgY2xhc3MgTm9kZSBleHRlbmRzIEV2ZW50VGFyZ2V0IHtcbiAgY29uc3RydWN0b3IgKG5hbWUgPSAnJywgcHJvcHMgPSB7fSwgbnMgPSBudWxsKSB7XG4gICAgc3VwZXIoKVxuXG4gICAgLy8gSWYgcHJvcHMubG9jYWwgaXMgdHJ1ZSwgdGhlIGVsZW1lbnQgd2FzIE5vZGUgd2FzIGNyZWF0ZWQgd2l0aCB0aGUgbm9uLW5hbWVzcGFjZSBmdW5jdGlvblxuICAgIC8vIHRoYXQgbWVhbnMgd2hhdGV2ZXIgd2FzIHBhc3NlZCBhcyBuYW1lIGlzIHRoZSBsb2NhbCBuYW1lIGV2ZW4gdGhvdWdoIGl0IG1pZ2h0IGxvb2sgbGlrZSBhIHByZWZpeFxuICAgIGlmIChuYW1lLmluY2x1ZGVzKCc6JykgJiYgIXByb3BzLmxvY2FsKSB7XG4gICAgICA7WyB0aGlzLnByZWZpeCwgdGhpcy5sb2NhbE5hbWUgXSA9IG5hbWUuc3BsaXQoJzonKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvY2FsTmFtZSA9IG5hbWVcbiAgICAgIHRoaXMucHJlZml4ID0gbnVsbFxuICAgIH1cblxuICAgIC8vIEZvbGxvdyBzcGVjIGFuZCB1cHBlcmNhc2Ugbm9kZU5hbWUgZm9yIGh0bWxcbiAgICB0aGlzLm5vZGVOYW1lID0gbnMgPT09IGh0bWwgPyBuYW1lLnRvVXBwZXJDYXNlKCkgOiBuYW1lXG5cbiAgICB0aGlzLm5hbWVzcGFjZVVSSSA9IG5zXG4gICAgdGhpcy5ub2RlVHlwZSA9IE5vZGUuRUxFTUVOVF9OT0RFXG4gICAgdGhpcy5ub2RlVmFsdWUgPSBwcm9wcy5ub2RlVmFsdWUgIT0gbnVsbCA/IHByb3BzLm5vZGVWYWx1ZSA6IG51bGxcbiAgICB0aGlzLmNoaWxkTm9kZXMgPSBbXVxuXG4gICAgdGhpcy5hdHRycyA9IHByb3BzLmF0dHJzIHx8IG5ldyBTZXQoKVxuXG4gICAgdGhpcy5vd25lckRvY3VtZW50ID0gcHJvcHMub3duZXJEb2N1bWVudCB8fCBudWxsXG4gICAgdGhpcy5wYXJlbnROb2RlID0gbnVsbFxuXG4gICAgLy8gdGhpcy5uYW1lc3BhY2VzID0ge31cbiAgICAvLyBpZiAodGhpcy5wcmVmaXgpIHtcbiAgICAvLyAgIHRoaXMubmFtZXNwYWNlc1t0aGlzLnByZWZpeF0gPSBuc1xuICAgIC8vIH0gZWxzZSB7XG4gICAgLy8gICB0aGlzLm5hbWVzcGFjZXMuZGVmYXVsdCA9IG5zXG4gICAgLy8gfVxuXG4gICAgaWYgKHByb3BzLmNoaWxkTm9kZXMpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwLCBpbCA9IHByb3BzLmNoaWxkTm9kZXMubGVuZ3RoOyBpIDwgaWw7ICsraSkge1xuICAgICAgICB0aGlzLmFwcGVuZENoaWxkKHByb3BzLmNoaWxkTm9kZXNbaV0pXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYXBwZW5kQ2hpbGQgKG5vZGUpIHtcbiAgICByZXR1cm4gdGhpcy5pbnNlcnRCZWZvcmUobm9kZSlcbiAgfVxuXG4gIGNsb25lTm9kZSAoZGVlcCA9IGZhbHNlKSB7XG4gICAgY29uc3QgY2xvbmUgPSBjbG9uZU5vZGUodGhpcylcblxuICAgIGlmIChkZWVwKSB7XG4gICAgICB0aGlzLmNoaWxkTm9kZXMuZm9yRWFjaChmdW5jdGlvbiAoZWwpIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IGVsLmNsb25lTm9kZShkZWVwKVxuICAgICAgICBjbG9uZS5hcHBlbmRDaGlsZChub2RlKVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gY2xvbmVcbiAgfVxuXG4gIGNvbnRhaW5zIChub2RlKSB7XG4gICAgaWYgKG5vZGUgPT09IHRoaXMpIHJldHVybiBmYWxzZVxuXG4gICAgd2hpbGUgKG5vZGUucGFyZW50Tm9kZSkge1xuICAgICAgaWYgKG5vZGUgPT09IHRoaXMpIHJldHVybiB0cnVlXG4gICAgICBub2RlID0gbm9kZS5wYXJlbnROb2RlXG4gICAgfVxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgZ2V0Um9vdE5vZGUgKCkge1xuICAgIGlmICghdGhpcy5wYXJlbnROb2RlIHx8IHRoaXMubm9kZVR5cGUgPT09IE5vZGUuRE9DVU1FTlRfTk9ERSkgcmV0dXJuIHRoaXNcbiAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmdldFJvb3ROb2RlKClcbiAgfVxuXG4gIGhhc0NoaWxkTm9kZXMgKCkge1xuICAgIHJldHVybiAhIXRoaXMuY2hpbGROb2Rlcy5sZW5ndGhcbiAgfVxuXG4gIGluc2VydEJlZm9yZSAobm9kZSwgYmVmb3JlKSB7XG4gICAgbGV0IGluZGV4ID0gdGhpcy5jaGlsZE5vZGVzLmluZGV4T2YoYmVmb3JlKVxuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgIGluZGV4ID0gdGhpcy5jaGlsZE5vZGVzLmxlbmd0aFxuICAgIH1cblxuICAgIGlmIChub2RlLm5vZGVUeXBlID09PSBOb2RlLkRPQ1VNRU5UX0ZSQUdNRU5UX05PREUpIHtcbiAgICAgIGxldCBjaGlsZFxuICAgICAgbGV0IG9sZENoaWxkID0gYmVmb3JlXG4gICAgICB3aGlsZSAoKGNoaWxkID0gbm9kZS5jaGlsZE5vZGVzLnBvcCgpKSkge1xuICAgICAgICB0aGlzLmluc2VydEJlZm9yZShjaGlsZCwgb2xkQ2hpbGQpXG4gICAgICAgIG9sZENoaWxkID0gY2hpbGRcbiAgICAgIH1cbiAgICAgIHJldHVybiBub2RlXG4gICAgfVxuXG4gICAgaWYgKG5vZGUucGFyZW50Tm9kZSkge1xuICAgICAgbm9kZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG5vZGUpXG4gICAgfVxuXG4gICAgbm9kZS5wYXJlbnROb2RlID0gdGhpc1xuICAgIC8vIE9iamVjdC5zZXRQcm90b3R5cGVPZihub2RlLm5hbWVzcGFjZXMucHJvdG90eXBlLCB0aGlzLm5hbWVzcGFjZXMucHJvdG90eXBlKVxuXG4gICAgdGhpcy5jaGlsZE5vZGVzLnNwbGljZShpbmRleCwgMCwgbm9kZSlcbiAgICByZXR1cm4gbm9kZVxuICB9XG5cbiAgaXNEZWZhdWx0TmFtZXNwYWNlIChuYW1lc3BhY2VVUkkpIHtcbiAgICBzd2l0Y2ggKHRoaXMubm9kZVR5cGUpIHtcbiAgICBjYXNlIE5vZGUuRUxFTUVOVF9OT0RFOlxuICAgICAgaWYgKCF0aGlzLnByZWZpeCkge1xuICAgICAgICByZXR1cm4gdGhpcy5uYW1lc3BhY2VVUkkgPT09IG5hbWVzcGFjZVVSSVxuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5oYXNBdHRyaWJ1dGUoJ3htbG5zJykpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCd4bWxucycpXG4gICAgICB9XG5cbiAgICAgIC8vIEVudGl0eVJlZmVyZW5jZXMgbWF5IGhhdmUgdG8gYmUgc2tpcHBlZCB0byBnZXQgdG8gaXRcbiAgICAgIGlmICh0aGlzLnBhcmVudE5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZS5pc0RlZmF1bHROYW1lc3BhY2UobmFtZXNwYWNlVVJJKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICBjYXNlIE5vZGUuRE9DVU1FTlRfTk9ERTpcbiAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50RWxlbWVudC5pc0RlZmF1bHROYW1lc3BhY2UobmFtZXNwYWNlVVJJKVxuICAgIGNhc2UgTm9kZS5FTlRJVFlfTk9ERTpcbiAgICBjYXNlIE5vZGUuTk9UQVRJT05fTk9ERTpcbiAgICBjYXNlIE5vZGUuRE9DVU1FTlRfVFlQRV9OT0RFOlxuICAgIGNhc2UgTm9kZS5ET0NVTUVOVF9GUkFHTUVOVF9OT0RFOlxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgY2FzZSBOb2RlLkFUVFJJQlVURV9OT0RFOlxuICAgICAgaWYgKHRoaXMub3duZXJFbGVtZW50KSB7XG4gICAgICAgIHJldHVybiB0aGlzLm93bmVyRWxlbWVudC5pc0RlZmF1bHROYW1lc3BhY2UobmFtZXNwYWNlVVJJKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgZGVmYXVsdDpcbiAgICAgIC8vIEVudGl0eVJlZmVyZW5jZXMgbWF5IGhhdmUgdG8gYmUgc2tpcHBlZCB0byBnZXQgdG8gaXRcbiAgICAgIGlmICh0aGlzLnBhcmVudE5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZS5pc0RlZmF1bHROYW1lc3BhY2UobmFtZXNwYWNlVVJJKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG5cbiAgaXNFcXVhbE5vZGUgKG5vZGUpIHtcbiAgICB0aGlzLm5vcm1hbGl6ZSgpXG4gICAgbm9kZS5ub3JtYWxpemUoKVxuXG4gICAgbGV0IGJvb2wgPSB0aGlzLm5vZGVOYW1lID09PSBub2RlLm5vZGVOYW1lXG4gICAgYm9vbCA9IGJvb2wgJiYgdGhpcy5sb2NhbE5hbWUgPT09IG5vZGUubG9jYWxOYW1lXG4gICAgYm9vbCA9IGJvb2wgJiYgdGhpcy5uYW1lc3BhY2VVUkkgPT09IG5vZGUubmFtZXNwYWNlVVJJXG4gICAgYm9vbCA9IGJvb2wgJiYgdGhpcy5wcmVmaXggPT09IG5vZGUucHJlZml4XG4gICAgYm9vbCA9IGJvb2wgJiYgdGhpcy5ub2RlVmFsdWUgPT09IG5vZGUubm9kZVZhbHVlXG5cbiAgICBib29sID0gYm9vbCAmJiB0aGlzLmNoaWxkTm9kZXMubGVuZ3RoID09PSBub2RlLmNoaWxkTm9kZXMubGVuZ3RoXG5cbiAgICAvLyBkb250IGNoZWNrIGNoaWxkcmVuIHJlY3Vyc2l2ZWx5IHdoZW4gdGhlIGNvdW50IGRvZXNudCBldmVudCBhZGQgdXBcbiAgICBpZiAoIWJvb2wpIHJldHVybiBmYWxzZVxuXG4gICAgYm9vbCA9IGJvb2wgJiYgIXRoaXMuY2hpbGROb2Rlcy5yZWR1Y2UoKGxhc3QsIGN1cnIsIGluZGV4KSA9PiB7XG4gICAgICByZXR1cm4gbGFzdCAmJiBjdXJyLmlzRXF1YWxOb2RlKG5vZGUuY2hpbGROb2Rlc1tpbmRleF0pXG4gICAgfSwgdHJ1ZSlcblxuICAgIC8vIEZJWE1FOiBVc2UgYXR0ciBub2Rlc1xuICAgIC8qIGJvb2wgPSBib29sICYmICFbIC4uLnRoaXMuYXR0cnMuZW50cmllcygpIF0ucmVkdWNlKChsYXN0LCBjdXJyLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgWyBrZXksIHZhbCBdID0gbm9kZS5hdHRycy5lbnRyaWVzKClcbiAgICAgIHJldHVybiBsYXN0ICYmIGN1cnJbMF0gPT09IGtleSAmJiBjdXJyWzFdID09PSB2YWxcbiAgICB9LCB0cnVlKSAqL1xuXG4gICAgLypcbiAgICBUT0RPOlxuICAgIEZvciB0d28gRG9jdW1lbnRUeXBlIG5vZGVzIHRvIGJlIGVxdWFsLCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgbXVzdCBhbHNvIGJlIHNhdGlzZmllZDpcblxuICAgIFRoZSBmb2xsb3dpbmcgc3RyaW5nIGF0dHJpYnV0ZXMgYXJlIGVxdWFsOiBwdWJsaWNJZCwgc3lzdGVtSWQsIGludGVybmFsU3Vic2V0LlxuICAgIFRoZSBlbnRpdGllcyBOYW1lZE5vZGVNYXBzIGFyZSBlcXVhbC5cbiAgICBUaGUgbm90YXRpb25zIE5hbWVkTm9kZU1hcHMgYXJlIGVxdWFsLlxuICAgICovXG5cbiAgICBpZiAodGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5ET0NVTUVOVF9UWVBFX05PREUgJiYgbm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5ET0NVTUVOVF9UWVBFX05PREUpIHtcbiAgICAgIGJvb2wgPSBib29sICYmIHRoaXMucHVibGljSWQgPT09IG5vZGUucHVibGljSWRcbiAgICAgIGJvb2wgPSBib29sICYmIHRoaXMuc3lzdGVtSWQgPT09IG5vZGUuc3lzdGVtSWRcbiAgICAgIGJvb2wgPSBib29sICYmIHRoaXMuaW50ZXJuYWxTdWJzZXQgPT09IG5vZGUuaW50ZXJuYWxTdWJzZXRcbiAgICB9XG5cbiAgICByZXR1cm4gYm9vbFxuICB9XG5cbiAgaXNTYW1lTm9kZSAobm9kZSkge1xuICAgIHJldHVybiB0aGlzID09PSBub2RlXG4gIH1cblxuICBsb29rdXBOYW1lc3BhY2VQcmVmaXggKG5hbWVzcGFjZVVSSSwgb3JpZ2luYWxFbGVtZW50KSB7XG4gICAgaWYgKHRoaXMubmFtZXNwYWNlVVJJICYmIHRoaXMubmFtZXNwYWNlVVJJID09PSBuYW1lc3BhY2VVUkkgJiYgdGhpcy5wcmVmaXhcbiAgICAgICAgICYmIG9yaWdpbmFsRWxlbWVudC5sb29rdXBOYW1lc3BhY2VVUkkodGhpcy5wcmVmaXgpID09PSBuYW1lc3BhY2VVUkkpIHtcbiAgICAgIHJldHVybiB0aGlzLnByZWZpeFxuICAgIH1cblxuICAgIGZvciAoY29uc3QgWyBrZXksIHZhbCBdIG9mIHRoaXMuYXR0cnMuZW50cmllcygpKSB7XG4gICAgICBpZiAoIWtleS5pbmNsdWRlcygnOicpKSBjb250aW51ZVxuXG4gICAgICBjb25zdCBbIGF0dHJQcmVmaXgsIG5hbWUgXSA9IGtleS5zcGxpdCgnOicpXG4gICAgICBpZiAoYXR0clByZWZpeCA9PT0gJ3htbG5zJyAmJiB2YWwgPT09IG5hbWVzcGFjZVVSSSAmJiBvcmlnaW5hbEVsZW1lbnQubG9va3VwTmFtZXNwYWNlVVJJKG5hbWUpID09PSBuYW1lc3BhY2VVUkkpIHtcbiAgICAgICAgcmV0dXJuIG5hbWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFbnRpdHlSZWZlcmVuY2VzIG1heSBoYXZlIHRvIGJlIHNraXBwZWQgdG8gZ2V0IHRvIGl0XG4gICAgaWYgKHRoaXMucGFyZW50Tm9kZSkge1xuICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZS5sb29rdXBOYW1lc3BhY2VQcmVmaXgobmFtZXNwYWNlVVJJLCBvcmlnaW5hbEVsZW1lbnQpXG4gICAgfVxuICAgIHJldHVybiBudWxsXG4gIH1cblxuICBsb29rdXBOYW1lc3BhY2VVUkkgKHByZWZpeCkge1xuICAgIHN3aXRjaCAodGhpcy5ub2RlVHlwZSkge1xuICAgIGNhc2UgTm9kZS5FTEVNRU5UX05PREU6XG4gICAgICBpZiAodGhpcy5uYW1lc3BhY2VVUkkgIT0gbnVsbCAmJiB0aGlzLnByZWZpeCA9PT0gcHJlZml4KSB7XG4gICAgICAgIC8vIE5vdGU6IHByZWZpeCBjb3VsZCBiZSBcIm51bGxcIiBpbiB0aGlzIGNhc2Ugd2UgYXJlIGxvb2tpbmcgZm9yIGRlZmF1bHQgbmFtZXNwYWNlXG4gICAgICAgIHJldHVybiB0aGlzLm5hbWVzcGFjZVVSSVxuICAgICAgfVxuXG4gICAgICBmb3IgKGNvbnN0IFsga2V5LCB2YWwgXSBvZiB0aGlzLmF0dHJzLmVudHJpZXMoKSkge1xuICAgICAgICBpZiAoIWtleS5pbmNsdWRlcygnOicpKSBjb250aW51ZVxuXG4gICAgICAgIGNvbnN0IFsgYXR0clByZWZpeCwgbmFtZSBdID0ga2V5LnNwbGl0KCc6JylcbiAgICAgICAgaWYgKGF0dHJQcmVmaXggPT09ICd4bWxucycgJiYgbmFtZSA9PT0gcHJlZml4KSB7XG4gICAgICAgICAgaWYgKHZhbCAhPSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgLy8gRklYTUU6IExvb2sgdXAgaWYgcHJlZml4IG9yIGF0dHJQcmVmaXhcbiAgICAgICAgfSBlbHNlIGlmIChuYW1lID09PSAneG1sbnMnICYmIHByZWZpeCA9PSBudWxsKSB7XG4gICAgICAgICAgaWYgKHZhbCAhPSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gRW50aXR5UmVmZXJlbmNlcyBtYXkgaGF2ZSB0byBiZSBza2lwcGVkIHRvIGdldCB0byBpdFxuICAgICAgaWYgKHRoaXMucGFyZW50Tm9kZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlLmxvb2t1cE5hbWVzcGFjZVVSSShwcmVmaXgpXG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIGNhc2UgTm9kZS5ET0NVTUVOVF9OT0RFOlxuICAgICAgcmV0dXJuIHRoaXMuZG9jdW1lbnRFbGVtZW50Lmxvb2t1cE5hbWVzcGFjZVVSSShwcmVmaXgpXG4gICAgY2FzZSBOb2RlLkVOVElUWV9OT0RFOlxuICAgIGNhc2UgTm9kZS5OT1RBVElPTl9OT0RFOlxuICAgIGNhc2UgTm9kZS5ET0NVTUVOVF9UWVBFX05PREU6XG4gICAgY2FzZSBOb2RlLkRPQ1VNRU5UX0ZSQUdNRU5UX05PREU6XG4gICAgICByZXR1cm4gbnVsbFxuICAgIGNhc2UgTm9kZS5BVFRSSUJVVEVfTk9ERTpcbiAgICAgIGlmICh0aGlzLm93bmVyRWxlbWVudCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vd25lckVsZW1lbnQubG9va3VwTmFtZXNwYWNlVVJJKHByZWZpeClcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgZGVmYXVsdDpcbiAgICAgIC8vIEVudGl0eVJlZmVyZW5jZXMgbWF5IGhhdmUgdG8gYmUgc2tpcHBlZCB0byBnZXQgdG8gaXRcbiAgICAgIGlmICh0aGlzLnBhcmVudE5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZS5sb29rdXBOYW1lc3BhY2VVUkkocHJlZml4KVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH1cblxuICBsb29rdXBQcmVmaXggKG5hbWVzcGFjZVVSSSkge1xuICAgIGlmICghbmFtZXNwYWNlVVJJKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIGNvbnN0IHR5cGUgPSB0aGlzLm5vZGVUeXBlXG5cbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlIE5vZGUuRUxFTUVOVF9OT0RFOlxuICAgICAgcmV0dXJuIHRoaXMubG9va3VwTmFtZXNwYWNlUHJlZml4KG5hbWVzcGFjZVVSSSwgdGhpcylcbiAgICBjYXNlIE5vZGUuRE9DVU1FTlRfTk9ERTpcbiAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50RWxlbWVudC5sb29rdXBOYW1lc3BhY2VQcmVmaXgobmFtZXNwYWNlVVJJKVxuICAgIGNhc2UgTm9kZS5FTlRJVFlfTk9ERSA6XG4gICAgY2FzZSBOb2RlLk5PVEFUSU9OX05PREU6XG4gICAgY2FzZSBOb2RlLkRPQ1VNRU5UX0ZSQUdNRU5UX05PREU6XG4gICAgY2FzZSBOb2RlLkRPQ1VNRU5UX1RZUEVfTk9ERTpcbiAgICAgIHJldHVybiBudWxsIC8vIHR5cGUgaXMgdW5rbm93blxuICAgIGNhc2UgTm9kZS5BVFRSSUJVVEVfTk9ERTpcbiAgICAgIGlmICh0aGlzLm93bmVyRWxlbWVudCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vd25lckVsZW1lbnQubG9va3VwTmFtZXNwYWNlUHJlZml4KG5hbWVzcGFjZVVSSSlcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgZGVmYXVsdDpcbiAgICAgIC8vIEVudGl0eVJlZmVyZW5jZXMgbWF5IGhhdmUgdG8gYmUgc2tpcHBlZCB0byBnZXQgdG8gaXRcbiAgICAgIGlmICh0aGlzLnBhcmVudE5vZGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZS5sb29rdXBOYW1lc3BhY2VQcmVmaXgobmFtZXNwYWNlVVJJKVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH1cblxuICBub3JtYWxpemUgKCkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBbXVxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiB0aGlzLmNoaWxkTm9kZXMpIHtcbiAgICAgIGNvbnN0IGxhc3QgPSBjaGlsZE5vZGVzLnNoaWZ0KClcbiAgICAgIGlmICghbGFzdCkge1xuICAgICAgICBpZiAobm9kZS5kYXRhKSB7XG4gICAgICAgICAgY2hpbGROb2Rlcy51bnNoaWZ0KG5vZGUpXG4gICAgICAgIH1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSB7XG4gICAgICAgIGlmICghbm9kZS5kYXRhKSB7XG4gICAgICAgICAgY2hpbGROb2Rlcy51bnNoaWZ0KGxhc3QpXG4gICAgICAgICAgY29udGludWVcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChsYXN0Lm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSkge1xuICAgICAgICAgIGNvbnN0IG1lcmdlZCA9IHRoaXMub3duZXJEb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShsYXN0LmRhdGEgKyBub2RlLmRhdGEpXG4gICAgICAgICAgY2hpbGROb2Rlcy5wdXNoKG1lcmdlZClcbiAgICAgICAgICBjb250aW51ZVxuICAgICAgICB9XG5cbiAgICAgICAgY2hpbGROb2Rlcy5wdXNoKGxhc3QsIG5vZGUpXG4gICAgICB9XG4gICAgfVxuXG4gICAgY2hpbGROb2Rlcy5mb3JFYWNoKG5vZGUgPT4ge1xuICAgICAgbm9kZS5wYXJlbnROb2RlID0gdGhpc1xuICAgIH0pXG4gICAgdGhpcy5jaGlsZE5vZGVzID0gY2hpbGROb2Rlc1xuICAgIC8vIHRoaXMuY2hpbGROb2RlcyA9IHRoaXMuY2hpbGROb2Rlcy5mb3JFYWNoKCh0ZXh0Tm9kZXMsIG5vZGUpID0+IHtcbiAgICAvLyAgIC8vIEZJWE1FOiBJZiBmaXJzdCBub2RlIGlzIGFuIGVtcHR5IHRleHRub2RlLCB3aGF0IGRvIHdlIGRvPyAtPiBzcGVjXG4gICAgLy8gICBpZiAoIXRleHROb2RlcykgcmV0dXJuIFsgbm9kZSBdXG4gICAgLy8gICB2YXIgbGFzdCA9IHRleHROb2Rlcy5wb3AoKVxuXG4gICAgLy8gICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUpIHtcbiAgICAvLyAgICAgaWYgKCFub2RlLmRhdGEpIHJldHVybiB0ZXh0Tm9kZXNcblxuICAgIC8vICAgICBpZiAobGFzdC5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUpIHtcbiAgICAvLyAgICAgICBjb25zdCBtZXJnZWQgPSB0aGlzLm93bmVyRG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobGFzdC5kYXRhICsgJyAnICsgbm9kZS5kYXRhKVxuICAgIC8vICAgICAgIHRleHROb2Rlcy5wdXNoKG1lcmdlZClcbiAgICAvLyAgICAgICByZXR1cm4gdGV4dE5vZGVzLmNvbmNhdChtZXJnZWQpXG4gICAgLy8gICAgIH1cbiAgICAvLyAgIH0gZWxzZSB7XG4gICAgLy8gICAgIHRleHROb2Rlcy5wdXNoKGxhc3QsIG5vZGUpXG4gICAgLy8gICB9XG5cbiAgICAvLyAgIHJldHVybiB0ZXh0Tm9kZXNcbiAgICAvLyB9LCBudWxsKVxuICB9XG5cbiAgcmVtb3ZlQ2hpbGQgKG5vZGUpIHtcblxuICAgIG5vZGUucGFyZW50Tm9kZSA9IG51bGxcbiAgICAvLyBPYmplY3Quc2V0UHJvdG90eXBlT2Yobm9kZSwgbnVsbClcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuY2hpbGROb2Rlcy5pbmRleE9mKG5vZGUpXG4gICAgaWYgKGluZGV4ID09PSAtMSkgcmV0dXJuIG5vZGVcbiAgICB0aGlzLmNoaWxkTm9kZXMuc3BsaWNlKGluZGV4LCAxKVxuICAgIHJldHVybiBub2RlXG4gIH1cblxuICByZXBsYWNlQ2hpbGQgKG5ld0NoaWxkLCBvbGRDaGlsZCkge1xuICAgIGNvbnN0IGJlZm9yZSA9IG9sZENoaWxkLm5leHRTaWJsaW5nXG4gICAgdGhpcy5yZW1vdmVDaGlsZChvbGRDaGlsZClcbiAgICB0aGlzLmluc2VydEJlZm9yZShuZXdDaGlsZCwgYmVmb3JlKVxuICAgIHJldHVybiBvbGRDaGlsZFxuICB9XG5cbiAgZ2V0IG5leHRTaWJsaW5nICgpIHtcbiAgICBjb25zdCBjaGlsZCA9IHRoaXMucGFyZW50Tm9kZSAmJiB0aGlzLnBhcmVudE5vZGUuY2hpbGROb2Rlc1t0aGlzLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5pbmRleE9mKHRoaXMpICsgMV1cbiAgICByZXR1cm4gY2hpbGQgfHwgbnVsbFxuICB9XG5cbiAgZ2V0IHByZXZpb3VzU2libGluZyAoKSB7XG4gICAgY29uc3QgY2hpbGQgPSB0aGlzLnBhcmVudE5vZGUgJiYgdGhpcy5wYXJlbnROb2RlLmNoaWxkTm9kZXNbdGhpcy5wYXJlbnROb2RlLmNoaWxkTm9kZXMuaW5kZXhPZih0aGlzKSAtIDFdXG4gICAgcmV0dXJuIGNoaWxkIHx8IG51bGxcbiAgfVxuXG4gIGdldCB0ZXh0Q29udGVudCAoKSB7XG4gICAgaWYgKHRoaXMubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSByZXR1cm4gdGhpcy5kYXRhXG4gICAgaWYgKHRoaXMubm9kZVR5cGUgPT09IE5vZGUuQ0RBVEFfU0VDVElPTl9OT0RFKSByZXR1cm4gdGhpcy5kYXRhXG4gICAgaWYgKHRoaXMubm9kZVR5cGUgPT09IE5vZGUuQ09NTUVOVF9OT0RFKSByZXR1cm4gdGhpcy5kYXRhXG5cbiAgICByZXR1cm4gdGhpcy5jaGlsZE5vZGVzLnJlZHVjZShmdW5jdGlvbiAobGFzdCwgY3VycmVudCkge1xuICAgICAgcmV0dXJuIGxhc3QgKyBjdXJyZW50LnRleHRDb250ZW50XG4gICAgfSwgJycpXG4gIH1cblxuICBzZXQgdGV4dENvbnRlbnQgKHRleHQpIHtcbiAgICBpZiAodGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUgfHwgdGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5DREFUQV9TRUNUSU9OX05PREUgfHwgdGhpcy5ub2RlVHlwZSA9PT0gTm9kZS5DT01NRU5UX05PREUpIHtcbiAgICAgIHRoaXMuZGF0YSA9IHRleHRcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLmNoaWxkTm9kZXMgPSBbXVxuICAgIHRoaXMuYXBwZW5kQ2hpbGQodGhpcy5vd25lckRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRleHQpKVxuICB9XG5cbiAgZ2V0IGxhc3RDaGlsZCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2hpbGROb2Rlc1t0aGlzLmNoaWxkTm9kZXMubGVuZ3RoIC0gMV0gfHwgbnVsbFxuICB9XG5cbiAgZ2V0IGZpcnN0Q2hpbGQgKCkge1xuICAgIHJldHVybiB0aGlzLmNoaWxkTm9kZXNbMF0gfHwgbnVsbFxuICB9XG59XG5cbmV4dGVuZFN0YXRpYyhOb2RlLCBub2RlVHlwZXMpXG5leHRlbmQoTm9kZSwgbm9kZVR5cGVzKVxuIiwgImltcG9ydCB7IE5vZGUgfSBmcm9tICcuL05vZGUuanMnXG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnLi4vdXRpbHMvbmFtZXNwYWNlcy5qcydcblxuZXhwb3J0IGNsYXNzIEF0dHIgZXh0ZW5kcyBOb2RlIHtcbiAgY29uc3RydWN0b3IgKG5hbWUsIHByb3BzLCBucykge1xuICAgIHN1cGVyKG5hbWUsIHsgbm9kZVZhbHVlOiAnJywgLi4ucHJvcHMgfSwgbnMpXG5cbiAgICAvLyBGb2xsb3cgc3BlYyBhbmQgbG93ZXJjYXNlIG5vZGVOYW1lIGZvciBodG1sXG4gICAgdGhpcy5ub2RlTmFtZSA9IG5zID09PSBodG1sID8gbmFtZS50b0xvd2VyQ2FzZSgpIDogbmFtZVxuICAgIHRoaXMubm9kZVR5cGUgPSBOb2RlLkFUVFJJQlVURV9OT0RFXG4gICAgdGhpcy5vd25lckVsZW1lbnQgPSBudWxsXG4gIH1cblxuICBnZXQgdmFsdWUgKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGVWYWx1ZVxuICB9XG5cbiAgc2V0IHZhbHVlICh2YWwpIHtcbiAgICB0aGlzLm5vZGVWYWx1ZSA9IHZhbFxuICB9XG5cbiAgZ2V0IG5hbWUgKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGVOYW1lXG4gIH1cbn1cbiIsICJleHBvcnQgY29uc3QgTm9uRG9jdW1lbnRUeXBlQ2hpbGROb2RlID0ge1xuXG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZSwge1xuICBwcmV2aW91c0VsZW1lbnRTaWJsaW5nOiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIGxldCBub2RlXG4gICAgICB3aGlsZSAoKG5vZGUgPSB0aGlzLnByZXZpb3VzU2libGluZykpIHtcbiAgICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgICAgICAgcmV0dXJuIG5vZGVcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH0sXG5cbiAgbmV4dEVsZW1lbnRTaWJsaW5nOiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIGxldCBub2RlXG4gICAgICB3aGlsZSAoKG5vZGUgPSB0aGlzLm5leHRTaWJsaW5nKSkge1xuICAgICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5FTEVNRU5UX05PREUpIHtcbiAgICAgICAgICByZXR1cm4gbm9kZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgfVxufSlcbiIsICJleHBvcnQgY29uc3Qgbm9kZXNUb05vZGUgPSAobm9kZXMsIGRvY3VtZW50KSA9PiB7XG4gIG5vZGVzID0gbm9kZXMubWFwKChub2RlKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBub2RlID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKG5vZGUpXG4gICAgfVxuICAgIHJldHVybiBub2RlXG4gIH0pXG4gIGlmIChub2Rlcy5sZW5ndGggPT09IDEpIHsgcmV0dXJuIG5vZGVzWzBdIH1cbiAgY29uc3Qgbm9kZSA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKVxuICBub2Rlcy5mb3JFYWNoKG5vZGUuYXBwZW5kQ2hpbGQsIG5vZGUpXG4gIHJldHVybiBub2RlXG59XG4iLCAiaW1wb3J0IHsgbm9kZXNUb05vZGUgfSBmcm9tICcuLi8uLi91dGlscy9ub2Rlc1RvTm9kZS5qcydcblxuLy8gaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNpbnRlcmZhY2UtY2hpbGRub2RlXG4vLyBUb2RvOiBjaGVjayBpZiB0aGlzIGlzIGNvbnRhaW5lZCBpbiBub2RlcyBvciBzaWJsaW5ncyBhcmUgY29udGFpbmVkICh2aWFibGVQcmV2aW91c1NpYmxpbmcsIHZpYWJsZU5leHRTaWJsaW5nKVxuZXhwb3J0IGNvbnN0IENoaWxkTm9kZSA9IHtcbiAgYmVmb3JlICguLi5ub2Rlcykge1xuICAgIGlmICghdGhpcy5wYXJlbnROb2RlKSByZXR1cm5cbiAgICBjb25zdCBub2RlID0gbm9kZXNUb05vZGUobm9kZXMsIHRoaXMub3duZXJEb2N1bWVudClcbiAgICB0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG5vZGUsIHRoaXMpXG4gIH0sXG4gIGFmdGVyICguLi5ub2Rlcykge1xuICAgIGlmICghdGhpcy5wYXJlbnROb2RlKSByZXR1cm5cbiAgICBjb25zdCBub2RlID0gbm9kZXNUb05vZGUobm9kZXMsIHRoaXMub3duZXJEb2N1bWVudClcbiAgICB0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG5vZGUsIHRoaXMubmV4dFNpYmxpbmcpXG4gIH0sXG4gIHJlcGxhY2VXaXRoICguLi5ub2Rlcykge1xuICAgIGlmICghdGhpcy5wYXJlbnROb2RlKSByZXR1cm5cbiAgICBjb25zdCBuZXh0ID0gdGhpcy5uZXh0U2libGluZ1xuICAgIGNvbnN0IG5vZGUgPSBub2Rlc1RvTm9kZShub2RlcywgdGhpcy5vd25lckRvY3VtZW50KVxuICAgIHRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobm9kZSwgbmV4dClcbiAgICB0aGlzLnJlbW92ZSgpXG4gIH0sXG4gIHJlbW92ZSAoKSB7XG4gICAgaWYgKCF0aGlzLnBhcmVudE5vZGUpIHJldHVyblxuICAgIHRoaXMucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzKVxuICB9XG59XG4iLCAiaW1wb3J0IHsgTm9kZSB9IGZyb20gJy4vTm9kZS5qcydcbmltcG9ydCB7IG1peGluIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcbmltcG9ydCB7IE5vbkRvY3VtZW50VHlwZUNoaWxkTm9kZSB9IGZyb20gJy4vbWl4aW5zL05vbkRvY3VtZW50VHlwZUNoaWxkTm9kZS5qcydcbmltcG9ydCB7IENoaWxkTm9kZSB9IGZyb20gJy4vbWl4aW5zL0NoaWxkTm9kZS5qcydcblxuZXhwb3J0IGNsYXNzIENoYXJhY3RlckRhdGEgZXh0ZW5kcyBOb2RlIHtcbiAgY29uc3RydWN0b3IgKG5hbWUsIHByb3BzKSB7XG4gICAgc3VwZXIobmFtZSwgcHJvcHMpXG5cbiAgICB0aGlzLmRhdGEgPSB0aGlzLm5vZGVWYWx1ZVxuICB9XG5cbiAgYXBwZW5kRGF0YSAoZGF0YSkge1xuICAgIHRoaXMuZGF0YSArPSBkYXRhXG4gIH1cblxuICBkZWxldGVEYXRhIChvZmZzZXQsIGNvdW50KSB7XG4gICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLnNsaWNlKDAsIG9mZnNldCkgKyB0aGlzLmRhdGEuc2xpY2UoMCwgb2Zmc2V0ICsgY291bnQpXG4gIH1cblxuICBpbnNlcnREYXRhIChvZmZzZXQsIGRhdGEpIHtcbiAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuc2xpY2UoMCwgb2Zmc2V0KSArIGRhdGEgKyB0aGlzLmRhdGEuc2xpY2Uob2Zmc2V0KVxuICB9XG5cbiAgcmVwbGFjZURhdGEgKG9mZnNldCwgY291bnQsIGRhdGEpIHtcbiAgICB0aGlzLmRlbGV0ZURhdGEob2Zmc2V0LCBjb3VudClcbiAgICB0aGlzLmluc2VydERhdGEob2Zmc2V0LCBkYXRhKVxuICB9XG5cbiAgc3Vic3RyaW5nRGF0YSAob2Zmc2V0LCBjb3VudCkge1xuICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YS5zdWJzdHIob2Zmc2V0LCBjb3VudClcbiAgfVxuXG4gIGdldCBsZW5ndGggKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGEubGVuZ3RoXG4gIH1cbn1cblxubWl4aW4oTm9uRG9jdW1lbnRUeXBlQ2hpbGROb2RlLCBDaGFyYWN0ZXJEYXRhKVxubWl4aW4oQ2hpbGROb2RlLCBDaGFyYWN0ZXJEYXRhKVxuIiwgImltcG9ydCB7IENoYXJhY3RlckRhdGEgfSBmcm9tICcuL0NoYXJhY3RlckRhdGEuanMnXG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi9Ob2RlLmpzJ1xuZXhwb3J0IGNsYXNzIENvbW1lbnQgZXh0ZW5kcyBDaGFyYWN0ZXJEYXRhIHtcbiAgY29uc3RydWN0b3IgKG5hbWUsIHByb3BzKSB7XG4gICAgc3VwZXIobmFtZSwgcHJvcHMpXG4gICAgdGhpcy5ub2RlVHlwZSA9IE5vZGUuQ09NTUVOVF9OT0RFXG4gIH1cbn1cbiIsICJleHBvcnQgY2xhc3MgRXZlbnQge1xuICBjb25zdHJ1Y3RvciAodHlwZSkge1xuICAgIHRoaXMudHlwZSA9IHR5cGVcbiAgICB0aGlzLmNhbmNlbGFibGUgPSBmYWxzZVxuICAgIHRoaXMuZGVmYXVsdFByZXZlbnRlZCA9IGZhbHNlXG4gICAgdGhpcy50YXJnZXQgPSBudWxsXG4gIH1cblxuICBwcmV2ZW50RGVmYXVsdCAoKSB7XG4gICAgaWYgKHRoaXMuY2FuY2VsYWJsZSkge1xuICAgICAgdGhpcy5kZWZhdWx0UHJldmVudGVkID0gdHJ1ZVxuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCB7IEV2ZW50IH0gZnJvbSAnLi9FdmVudC5qcydcbmV4cG9ydCBjbGFzcyBDdXN0b21FdmVudCBleHRlbmRzIEV2ZW50IHtcbiAgY29uc3RydWN0b3IgKG5hbWUsIHByb3BzID0ge30pIHtcbiAgICBzdXBlcihuYW1lKVxuICAgIHRoaXMuZGV0YWlsID0gcHJvcHMuZGV0YWlsIHx8IG51bGxcbiAgICB0aGlzLmNhbmNlbGFibGUgPSBwcm9wcy5jYW5jZWxhYmxlIHx8IGZhbHNlXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBDaGFyYWN0ZXJEYXRhIH0gZnJvbSAnLi9DaGFyYWN0ZXJEYXRhLmpzJ1xuaW1wb3J0IHsgTm9kZSB9IGZyb20gJy4vTm9kZS5qcydcblxuZXhwb3J0IGNsYXNzIFRleHQgZXh0ZW5kcyBDaGFyYWN0ZXJEYXRhIHtcbiAgY29uc3RydWN0b3IgKG5hbWUsIHByb3BzKSB7XG4gICAgc3VwZXIobmFtZSwgcHJvcHMpXG4gICAgdGhpcy5ub2RlVHlwZSA9IE5vZGUuVEVYVF9OT0RFXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBleHRlbmRTdGF0aWMgfSBmcm9tICcuLi91dGlscy9vYmplY3RDcmVhdGlvblV0aWxzLmpzJ1xuXG5leHBvcnQgY2xhc3MgTm9kZUZpbHRlciB7XG4gIGFjY2VwdE5vZGUgKCkge1xuICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFRcbiAgfVxufVxuXG5leHRlbmRTdGF0aWMoTm9kZUZpbHRlciwge1xuICBGSUxURVJfQUNDRVBUOiAxLFxuICBGSUxURVJfUkVKRUNUOiAyLFxuICBGSUxURVJfSUdOT1JFOiA0LFxuICBTSE9XX0FMTDogLTEsXG4gIFNIT1dfRUxFTUVOVDogMSxcbiAgU0hPV19URVhUOiA0LFxuICBTSE9XX0VOVElUWV9SRUZFUkVOQ0U6IDE2LFxuICBTSE9XX0VOVElUWTogMzIsXG4gIFNIT1dfUFJPQ0VTU0lOR19JTlNUUlVDVElPTjogNjQsXG4gIFNIT1dfQ09NTUVOVDogMTI4LFxuICBTSE9XX0RPQ1VNRU5UOiAyNTYsXG4gIFNIT1dfRE9DVU1FTlRfVFlQRTogNTEyLFxuICBTSE9XX0RPQ1VNRU5UX0ZSQUdNRU5UOiAxMDI0LFxuICBTSE9XX05PVEFUSU9OOiAyMDQ4XG59KVxuIiwgImltcG9ydCB7IE5vZGVGaWx0ZXIgfSBmcm9tICcuLi9kb20vTm9kZUZpbHRlci5qcydcblxuY29uc3Qgc2hvd1RoaXNOb2RlID0gKHdoYXRUb1Nob3csIG5vZGUpID0+IHtcbiAgaWYgKHdoYXRUb1Nob3cgPT09IE5vZGVGaWx0ZXIuU0hPV19BTEwpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQgJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5FTEVNRU5UX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX1RFWFQgJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5URVhUX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX0VOVElUWV9SRUZFUkVOQ0UgJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5FTlRJVFlfUkVGRVJFTkNFX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX0VOVElUWSAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLkVOVElUWV9OT0RFKSByZXR1cm4gdHJ1ZVxuICBpZiAod2hhdFRvU2hvdyAmIE5vZGVGaWx0ZXIuU0hPV19QUk9DRVNTSU5HX0lOU1RSVUNUSU9OICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuUFJPQ0VTU0lOR19JTlNUUlVDVElPTl9OT0RFKSByZXR1cm4gdHJ1ZVxuICBpZiAod2hhdFRvU2hvdyAmIE5vZGVGaWx0ZXIuU0hPV19DT01NRU5UICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuQ09NTUVOVF9OT0RFKSByZXR1cm4gdHJ1ZVxuICBpZiAod2hhdFRvU2hvdyAmIE5vZGVGaWx0ZXIuU0hPV19ET0NVTUVOVCAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLkRPQ1VNRU5UX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX0RPQ1VNRU5UX1RZUEUgJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5ET0NVTUVOVF9UWVBFX05PREUpIHJldHVybiB0cnVlXG4gIGlmICh3aGF0VG9TaG93ICYgTm9kZUZpbHRlci5TSE9XX0RPQ1VNRU5UX0ZSQUdNRU5UICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRE9DVU1FTlRfRlJBR01FTlRfTk9ERSkgcmV0dXJuIHRydWVcbiAgaWYgKHdoYXRUb1Nob3cgJiBOb2RlRmlsdGVyLlNIT1dfTk9UQVRJT04gJiYgbm9kZS5ub2RlVHlwZSA9PT0gbm9kZS5OT1RBVElPTl9OT0RFKSByZXR1cm4gdHJ1ZVxuICByZXR1cm4gZmFsc2Vcbn1cblxuZXhwb3J0IGNsYXNzIE5vZGVJdGVyYXRvciB7XG4gIGNvbnN0cnVjdG9yIChyb290LCB3aGF0VG9TaG93ID0gTm9kZUZpbHRlci5TSE9XX0FMTCwgZmlsdGVyID0gKCkgPT4gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBULCBpbmNsdWRlUGFyZW50ID0gdHJ1ZSkge1xuICAgIHRoaXMucm9vdCA9IGluY2x1ZGVQYXJlbnQgPyB7IGNoaWxkTm9kZXM6IFsgcm9vdCBdIH0gOiByb290XG4gICAgdGhpcy53aGF0VG9TaG93ID0gd2hhdFRvU2hvd1xuICAgIHRoaXMuZmlsdGVyID0gZmlsdGVyXG4gIH1cblxuICAqIFtTeW1ib2wuaXRlcmF0b3JdICgpIHtcbiAgICBjb25zdCBub2RlcyA9IHRoaXMucm9vdC5jaGlsZE5vZGVzXG5cbiAgICBmb3IgKGNvbnN0IG5vZGUgb2Ygbm9kZXMpIHtcbiAgICAgIGlmICghc2hvd1RoaXNOb2RlKHRoaXMud2hhdFRvU2hvdywgbm9kZSkpIGNvbnRpbnVlXG5cbiAgICAgIGNvbnN0IGZpbHRlclJldCA9IHRoaXMuZmlsdGVyKG5vZGUpXG5cbiAgICAgIGlmIChmaWx0ZXJSZXQgPT09IE5vZGVGaWx0ZXIuRklMVEVSX1JFSkVDVCkgY29udGludWVcbiAgICAgIGlmIChmaWx0ZXJSZXQgPT09IE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVCkge1xuICAgICAgICB5aWVsZCBub2RlXG4gICAgICB9XG5cbiAgICAgIHlpZWxkICogbmV3IE5vZGVJdGVyYXRvcihub2RlLCB0aGlzLndoYXRUb1Nob3csIHRoaXMuZmlsdGVyLCBmYWxzZSlcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG4iLCAiaW1wb3J0IHsgTm9kZUZpbHRlciB9IGZyb20gJy4uL05vZGVGaWx0ZXIuanMnXG5pbXBvcnQgeyBOb2RlSXRlcmF0b3IgfSBmcm9tICcuLi8uLi91dGlscy9Ob2RlSXRlcmF0b3IuanMnXG5cbmNvbnN0IGhhc0NsYXNzID0gKG5vZGUsIG5hbWUpID0+IHtcbiAgY29uc3QgY2xhc3NMaXN0ID0gbm9kZS5jbGFzc05hbWUuc3BsaXQoL1xccysvKVxuICByZXR1cm4gY2xhc3NMaXN0LmluY2x1ZGVzKG5hbWUpXG59XG5cbmNvbnN0IGVsZW1lbnRBY2Nlc3MgPSB7XG4gIGdldEVsZW1lbnRzQnlUYWdOYW1lIChuYW1lKSB7XG4gICAgLy8gY29uc3QgZG9jdW1lbnQgPSB0aGlzLm93bmVyRG9jdW1lbnRcbiAgICBjb25zdCBpdGVyID0gbmV3IE5vZGVJdGVyYXRvcih0aGlzLCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgKG5vZGUpID0+IG5vZGUubm9kZU5hbWUgPT09IG5hbWUgPyBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQgOiBOb2RlRmlsdGVyLkZJTFRFUl9JR05PUkUsIGZhbHNlKVxuICAgIC8vIGNvbnN0IGl0ZXIgPSBkb2N1bWVudC5jcmVhdGVOb2RlSXRlcmF0b3IodGhpcywgMSwgKG5vZGUpID0+IG5vZGUubm9kZU5hbWUgPT09IG5hbWUgPyBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQgOiBOb2RlRmlsdGVyLkZJTFRFUl9JR05PUkUpXG4gICAgcmV0dXJuIFsgLi4uaXRlciBdXG4gIH0sXG5cbiAgZ2V0RWxlbWVudHNCeVRhZ05hbWVOUyAobnMsIG5hbWUpIHtcbiAgICAvLyBjb25zdCBkb2N1bWVudCA9IHRoaXMub3duZXJEb2N1bWVudFxuICAgIGNvbnN0IGl0ZXIgPSBuZXcgTm9kZUl0ZXJhdG9yKHRoaXMsIE5vZGVGaWx0ZXIuU0hPV19FTEVNRU5ULCAobm9kZSkgPT4gbm9kZS5pc05hbWVzcGFjZShucykgJiYgbm9kZS5ub2RlTmFtZSA9PT0gbmFtZSA/IE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVCA6IE5vZGVGaWx0ZXIuRklMVEVSX0lHTk9SRSwgZmFsc2UpXG4gICAgLy8gY29uc3QgaXRlciA9IGRvY3VtZW50LmNyZWF0ZU5vZGVJdGVyYXRvcih0aGlzLCAxLCAobm9kZSkgPT4gbm9kZS5pc05hbWVzcGFjZShucykgJiYgbm9kZS5ub2RlTmFtZSA9PT0gbmFtZSA/IE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVCA6IE5vZGVGaWx0ZXIuRklMVEVSX0lHTk9SRSlcbiAgICByZXR1cm4gWyAuLi5pdGVyIF1cbiAgfSxcblxuICBnZXRFbGVtZW50c0J5Q2xhc3NOYW1lIChuYW1lKSB7XG4gICAgLy8gY29uc3QgZG9jdW1lbnQgPSB0aGlzLm93bmVyRG9jdW1lbnRcbiAgICBjb25zdCBpdGVyID0gbmV3IE5vZGVJdGVyYXRvcih0aGlzLCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgKG5vZGUpID0+IGhhc0NsYXNzKG5vZGUsIG5hbWUpID8gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUIDogTm9kZUZpbHRlci5GSUxURVJfSUdOT1JFLCBmYWxzZSlcbiAgICAvLyBjb25zdCBpdGVyID0gZG9jdW1lbnQuY3JlYXRlTm9kZUl0ZXJhdG9yKHRoaXMsIDEsIChub2RlKSA9PiBoYXNDbGFzcyhub2RlLCBuYW1lKSA/IE5vZGVGaWx0ZXIuRklMVEVSX0FDQ0VQVCA6IE5vZGVGaWx0ZXIuRklMVEVSX0lHTk9SRSlcbiAgICByZXR1cm4gWyAuLi5pdGVyIF1cbiAgfVxufVxuXG5leHBvcnQgeyBlbGVtZW50QWNjZXNzIH1cbiIsICIvLyBFbnN1cmUgdG8gc2l4LWJhc2VkIGhleFxuZXhwb3J0IGNvbnN0IGZ1bGxIZXggPSBmdW5jdGlvbiAoaGV4KSB7XG4gIHJldHVybiBoZXgubGVuZ3RoID09PSA0XG4gICAgPyBbICcjJyxcbiAgICAgIGhleC5zdWJzdHJpbmcoMSwgMiksIGhleC5zdWJzdHJpbmcoMSwgMiksXG4gICAgICBoZXguc3Vic3RyaW5nKDIsIDMpLCBoZXguc3Vic3RyaW5nKDIsIDMpLFxuICAgICAgaGV4LnN1YnN0cmluZygzLCA0KSwgaGV4LnN1YnN0cmluZygzLCA0KVxuICAgIF0uam9pbignJykgOiBoZXhcbn1cblxuZXhwb3J0IGNvbnN0IGhleFRvUkdCID0gZnVuY3Rpb24gKHZhbE9yTWFwKSB7XG4gIGlmICh0eXBlb2YgdmFsT3JNYXAgaW5zdGFuY2VvZiBNYXApIHtcbiAgICBmb3IgKGNvbnN0IFsga2V5LCB2YWwgXSBvZiB2YWxPck1hcCkge1xuICAgICAgdmFsT3JNYXAuc2V0KGtleSwgaGV4VG9SR0IodmFsKSlcbiAgICB9XG4gICAgcmV0dXJuIHZhbE9yTWFwXG4gIH1cblxuICBpZiAoIS8jWzAtOWEtZl17Myw2fS8udGVzdCh2YWxPck1hcCkpIHsgcmV0dXJuIHZhbE9yTWFwIH1cblxuICB2YWxPck1hcCA9IGZ1bGxIZXgodmFsT3JNYXApXG5cbiAgcmV0dXJuICdyZ2IoJyArIFtcbiAgICBwYXJzZUludCh2YWxPck1hcC5zbGljZSgxLCAzKSwgMTYpLFxuICAgIHBhcnNlSW50KHZhbE9yTWFwLnNsaWNlKDMsIDUpLCAxNiksXG4gICAgcGFyc2VJbnQodmFsT3JNYXAuc2xpY2UoNSwgNyksIDE2KVxuICBdLmpvaW4oJywnKSArICcpJ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjYW1lbGl6ZSAocykge1xuICByZXR1cm4gU3RyaW5nKHMpLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csIGZ1bmN0aW9uIChtLCBnMSwgZzIpIHtcbiAgICByZXR1cm4gZzEgKyAnLScgKyBnMi50b0xvd2VyQ2FzZSgpXG4gIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjYW1lbENhc2UgKHMpIHtcbiAgcmV0dXJuIFN0cmluZyhzKS5yZXBsYWNlKC8oW2Etel0pLShbYS16XSkvZywgZnVuY3Rpb24gKG0sIGcxLCBnMikge1xuICAgIHJldHVybiBnMSArIGcyLnRvVXBwZXJDYXNlKClcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZVF1b3RlcyAoc3RyKSB7XG4gIGlmIChzdHIuc3RhcnRzV2l0aCgnXCInKSB8fCBzdHIuc3RhcnRzV2l0aChcIidcIikpIHtcbiAgICByZXR1cm4gc3RyLnNsaWNlKDEsIC0xKVxuICB9XG4gIHJldHVybiBzdHJcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGh0bWxFbnRpdGllcyAoc3RyKSB7XG4gIHJldHVybiBTdHJpbmcoc3RyKS5yZXBsYWNlKC8mL2csICcmYW1wOycpLnJlcGxhY2UoLzwvZywgJyZsdDsnKS5yZXBsYWNlKC8+L2csICcmZ3Q7JykucmVwbGFjZSgvXCIvZywgJyZxdW90OycpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1bmh0bWxFbnRpdGllcyAoc3RyKSB7XG4gIHJldHVybiBTdHJpbmcoc3RyKS5yZXBsYWNlKC8mYW1wOy9nLCAnJicpLnJlcGxhY2UoLyZsdDsvZywgJzwnKS5yZXBsYWNlKC8mZ3Q7L2csICc+JykucmVwbGFjZSgnJnF1b3Q7JywgJ1wiJylcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNkYXRhIChzdHIpIHtcbiAgcmV0dXJuIGA8IVtDREFUQVske3N0cn1dXT5gXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb21tZW50IChzdHIpIHtcbiAgcmV0dXJuIGA8IS0tJHtzdHJ9LS0+YFxufVxuXG5leHBvcnQgY29uc3Qgc3BsaXROb3RJbkJyYWNrZXRzID0gKHN0ciwgZGVsaW1pdGVyKSA9PiB7XG4gIHZhciByb3VuZEJyYWNrZXRzID0gMFxuXG4gIHZhciBzcXVhcmVCcmFja2V0cyA9IDBcblxuICB2YXIgbGFzdEluZGV4ID0gMFxuXG4gIHZhciBzcGxpdCA9IFtdXG5cbiAgdmFyIGNoOyB2YXIgaTsgdmFyIGlsXG5cbiAgZm9yIChpID0gMCwgaWwgPSBzdHIubGVuZ3RoOyBpIDwgaWw7ICsraSkge1xuICAgIGNoID0gc3RyLmNoYXJBdChpKVxuXG4gICAgaWYgKGNoID09PSBkZWxpbWl0ZXIgJiYgIXJvdW5kQnJhY2tldHMgJiYgIXNxdWFyZUJyYWNrZXRzKSB7XG4gICAgICBzcGxpdC5wdXNoKHN0ci5zbGljZShsYXN0SW5kZXgsIGkpLnRyaW0oKSlcbiAgICAgIGxhc3RJbmRleCA9IGkgKyAxXG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGlmIChjaCA9PT0gJygnKSArK3JvdW5kQnJhY2tldHNcbiAgICBlbHNlIGlmIChjaCA9PT0gJyknKSAtLXJvdW5kQnJhY2tldHNcbiAgICBlbHNlIGlmIChjaCA9PT0gJ1snKSArK3NxdWFyZUJyYWNrZXRzXG4gICAgZWxzZSBpZiAoY2ggPT09ICddJykgLS1zcXVhcmVCcmFja2V0c1xuICB9XG5cbiAgc3BsaXQucHVzaChzdHIuc2xpY2UobGFzdEluZGV4KS50cmltKCkpXG4gIHJldHVybiBzcGxpdFxufVxuIiwgIi8vIHNwbGl0cyBhIHRyYW5zZm9ybWF0aW9uIGNoYWluXG5leHBvcnQgY29uc3QgdHJhbnNmb3JtcyA9IC9cXClcXHMqLD9cXHMqL1xuXG4vLyBzcGxpdCBhdCB3aGl0ZXNwYWNlIGFuZCBjb21tYVxuZXhwb3J0IGNvbnN0IGRlbGltaXRlciA9IC9bXFxzLF0rL1xuXG4vLyBUaGUgZm9sbG93aW5nIHJlZ2V4IGFyZSB1c2VkIHRvIHBhcnNlIHRoZSBkIGF0dHJpYnV0ZSBvZiBhIHBhdGhcblxuLy8gTWF0Y2hlcyBhbGwgaHlwaGVucyB3aGljaCBhcmUgbm90IGFmdGVyIGFuIGV4cG9uZW50XG5leHBvcnQgY29uc3QgaHlwaGVuID0gLyhbXmVdKS0vZ2lcblxuLy8gUmVwbGFjZXMgYW5kIHRlc3RzIGZvciBhbGwgcGF0aCBsZXR0ZXJzXG5leHBvcnQgY29uc3QgcGF0aExldHRlcnMgPSAvW01MSFZDU1FUQVpdL2dpXG5cbi8vIHllcyB3ZSBuZWVkIHRoaXMgb25lLCB0b29cbmV4cG9ydCBjb25zdCBpc1BhdGhMZXR0ZXIgPSAvW01MSFZDU1FUQVpdL2lcblxuLy8gbWF0Y2hlcyAwLjE1NC4yMy40NVxuZXhwb3J0IGNvbnN0IG51bWJlcnNXaXRoRG90cyA9IC8oKFxcZD9cXC5cXGQrKD86ZVsrLV0/XFxkKyk/KSgoPzpcXC5cXGQrKD86ZVsrLV0/XFxkKyk/KSspKSsvZ2lcblxuLy8gbWF0Y2hlcyAuXG5leHBvcnQgY29uc3QgZG90cyA9IC9cXC4vZ1xuIiwgImltcG9ydCB7IHJlbW92ZVF1b3Rlcywgc3BsaXROb3RJbkJyYWNrZXRzIH0gZnJvbSAnLi4vdXRpbHMvc3RyVXRpbHMuanMnXG5pbXBvcnQgKiBhcyByZWdleCBmcm9tICcuLi91dGlscy9yZWdleC5qcydcbmltcG9ydCB7IGh0bWwgfSBmcm9tICcuLi91dGlscy9uYW1lc3BhY2VzLmpzJ1xuXG5leHBvcnQgY2xhc3MgQ3NzUXVlcnkge1xuICBjb25zdHJ1Y3RvciAocXVlcnkpIHtcbiAgICBpZiAoQ3NzUXVlcnkuY2FjaGUuaGFzKHF1ZXJ5KSkge1xuICAgICAgdGhpcy5xdWVyaWVzID0gQ3NzUXVlcnkuY2FjaGUuZ2V0KHF1ZXJ5KVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgbGV0IHF1ZXJpZXMgPSBzcGxpdE5vdEluQnJhY2tldHMocXVlcnksICcsJylcblxuICAgIHF1ZXJpZXMgPSBxdWVyaWVzLm1hcChxdWVyeSA9PiB7XG5cbiAgICAgIGxldCByb3VuZEJyYWNrZXRzID0gMFxuICAgICAgbGV0IHNxdWFyZUJyYWNrZXRzID0gMFxuXG4gICAgICAvLyB0aGlzIGlzIHRoZSBzYW1lIGFzIGFib3ZlIGJ1dCBlYXNpZXJcbiAgICAgIHF1ZXJ5ID0gcXVlcnkucmVwbGFjZSgvWygpW1xcXT5+K10vZywgZnVuY3Rpb24gKGNoKSB7XG4gICAgICAgIGlmIChjaCA9PT0gJygnKSArK3JvdW5kQnJhY2tldHNcbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICcpJykgLS1yb3VuZEJyYWNrZXRzXG4gICAgICAgIGVsc2UgaWYgKGNoID09PSAnWycpICsrc3F1YXJlQnJhY2tldHNcbiAgICAgICAgZWxzZSBpZiAoY2ggPT09ICddJykgLS1zcXVhcmVCcmFja2V0c1xuXG4gICAgICAgIGlmICgnKClbXScuaW5kZXhPZihjaCkgPiAtMSkgcmV0dXJuIGNoXG4gICAgICAgIGlmIChzcXVhcmVCcmFja2V0cyB8fCByb3VuZEJyYWNrZXRzKSByZXR1cm4gY2hcblxuICAgICAgICByZXR1cm4gJyAnICsgY2ggKyAnICdcbiAgICAgIH0pXG5cbiAgICAgIC8vIHNwbGl0IGF0IHNwYWNlIGFuZCByZW1vdmUgZW1wdHkgcmVzdWx0c1xuICAgICAgcXVlcnkgPSBzcGxpdE5vdEluQnJhY2tldHMocXVlcnksICcgJykuZmlsdGVyKGVsID0+ICEhZWwubGVuZ3RoKVxuXG4gICAgICBjb25zdCBwYWlycyA9IFtdXG5cbiAgICAgIGxldCByZWxhdGlvbiA9ICclJ1xuXG4gICAgICAvLyBnZW5lcmF0ZSBxdWVyeW5vZGUgcmVsYXRpb24gdHVwbGVzXG4gICAgICBmb3IgKGxldCBpID0gMCwgaWwgPSBxdWVyeS5sZW5ndGg7IGkgPCBpbDsgKytpKSB7XG5cbiAgICAgICAgaWYgKCc+fislJy5pbmRleE9mKHF1ZXJ5W2ldKSA+IC0xKSB7XG4gICAgICAgICAgcmVsYXRpb24gPSBxdWVyeVtpXVxuICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgIH1cblxuICAgICAgICBwYWlycy5wdXNoKFsgcmVsYXRpb24sIHF1ZXJ5W2ldIF0pXG4gICAgICAgIHJlbGF0aW9uID0gJyUnXG5cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhaXJzXG5cbiAgICB9KVxuXG4gICAgdGhpcy5xdWVyaWVzID0gcXVlcmllc1xuXG4gICAgLy8gdG8gcHJldmVudCBtZW1vcnkgbGVha3Mgd2UgaGF2ZSB0byBtYW5hZ2Ugb3VyIGNhY2hlLlxuICAgIC8vIHdlIGRlbGV0ZSBldmVyeXRoaW5nIHdoaWNoIGlzIG9sZGVyIHRoYW4gNTAgZW50cmllc1xuICAgIGlmIChDc3NRdWVyeS5jYWNoZUtleXMubGVuZ3RoID4gNTApIHtcbiAgICAgIENzc1F1ZXJ5LmNhY2hlLmRlbGV0ZShDc3NRdWVyeS5jYWNoZUtleXMuc2hpZnQoKSlcbiAgICB9XG4gICAgQ3NzUXVlcnkuY2FjaGUuc2V0KHF1ZXJ5LCBxdWVyaWVzKVxuICAgIENzc1F1ZXJ5LmNhY2hlS2V5cy5wdXNoKHF1ZXJ5KVxuXG4gIH1cblxuICBtYXRjaGVzIChub2RlLCBzY29wZSkge1xuICAgIGZvciAobGV0IGkgPSB0aGlzLnF1ZXJpZXMubGVuZ3RoOyBpLS07KSB7XG4gICAgICBpZiAodGhpcy5tYXRjaEhlbHBlcih0aGlzLnF1ZXJpZXNbaV0sIG5vZGUsIHNjb3BlKSkge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIG1hdGNoSGVscGVyIChxdWVyeSwgbm9kZSwgc2NvcGUpIHtcbiAgICBxdWVyeSA9IHF1ZXJ5LnNsaWNlKClcbiAgICBjb25zdCBsYXN0ID0gcXVlcnkucG9wKClcblxuICAgIGlmICghbmV3IENzc1F1ZXJ5Tm9kZShsYXN0WzFdKS5tYXRjaGVzKG5vZGUsIHNjb3BlKSkgeyByZXR1cm4gZmFsc2UgfVxuXG4gICAgaWYgKCFxdWVyeS5sZW5ndGgpIHJldHVybiB0cnVlXG5cbiAgICBpZiAobGFzdFswXSA9PT0gJywnKSByZXR1cm4gdHJ1ZVxuXG4gICAgaWYgKGxhc3RbMF0gPT09ICcrJykge1xuICAgICAgcmV0dXJuICEhbm9kZS5wcmV2aW91c1NpYmxpbmcgJiYgdGhpcy5tYXRjaEhlbHBlcihxdWVyeSwgbm9kZS5wcmV2aW91c1NpYmxpbmcsIHNjb3BlKVxuICAgIH1cblxuICAgIGlmIChsYXN0WzBdID09PSAnPicpIHtcbiAgICAgIHJldHVybiAhIW5vZGUucGFyZW50Tm9kZSAmJiB0aGlzLm1hdGNoSGVscGVyKHF1ZXJ5LCBub2RlLnBhcmVudE5vZGUsIHNjb3BlKVxuICAgIH1cblxuICAgIGlmIChsYXN0WzBdID09PSAnficpIHtcbiAgICAgIHdoaWxlICgobm9kZSA9IG5vZGUucHJldmlvdXNTaWJsaW5nKSkge1xuICAgICAgICBpZiAodGhpcy5tYXRjaEhlbHBlcihxdWVyeSwgbm9kZSwgc2NvcGUpKSB7IHJldHVybiB0cnVlIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIGlmIChsYXN0WzBdID09PSAnJScpIHtcbiAgICAgIHdoaWxlICgobm9kZSA9IG5vZGUucGFyZW50Tm9kZSkpIHtcbiAgICAgICAgaWYgKHRoaXMubWF0Y2hIZWxwZXIocXVlcnksIG5vZGUsIHNjb3BlKSkgeyByZXR1cm4gdHJ1ZSB9XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgfVxufVxuXG5Dc3NRdWVyeS5jYWNoZSA9IG5ldyBNYXAoKVxuQ3NzUXVlcnkuY2FjaGVLZXlzID0gW11cblxuLy8gY2hlY2sgaWYgW25vZGVdIGlzIHRoZSBbbnRoXSBjaGlsZCBvZiBbYXJyXSB3aGVyZSBudGggY2FuIGFsc28gYmUgYSBmb3JtdWxhXG5jb25zdCBudGggPSAobm9kZSwgYXJyLCBudGgpID0+IHtcblxuICBpZiAobnRoID09PSAnZXZlbicpIG50aCA9ICcybidcbiAgZWxzZSBpZiAobnRoID09PSAnb2RkJykgbnRoID0gJzJuKzEnXG5cbiAgLy8gY2hlY2sgZm9yIGV2YWwgY2hhcnNcbiAgaWYgKC9bXlxcZFxcLW4rKi9dKy8udGVzdChudGgpKSByZXR1cm4gZmFsc2VcblxuICBudGggPSBudGgucmVwbGFjZSgnbicsICcqbicpXG5cbiAgLy8gZXZhbCBudGggdG8gZ2V0IHRoZSBpbmRleFxuICBmb3IgKHZhciBpLCBuID0gMCwgbmwgPSBhcnIubGVuZ3RoOyBuIDwgbmw7ICsrbikge1xuICAgIC8qIGVzbGludCBuby1ldmFsOiBvZmYgKi9cbiAgICBpID0gZXZhbChudGgpXG5cbiAgICBpZiAoaSA+IG5sKSBicmVha1xuICAgIGlmIChhcnJbaSAtIDFdID09PSBub2RlKSByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmNvbnN0IGxvd2VyID0gYSA9PiBhLnRvTG93ZXJDYXNlKClcblxuLy8gY2hlY2tzIGlmIGEgYW5kIGIgYXJlIGVxdWFsLiBJcyBpbnNlbnNpdGl2ZSB3aGVuIGkgaXMgdHJ1ZVxuY29uc3QgZXEgPSAoYSwgYiwgaSkgPT4gaSA/IGxvd2VyKGEpID09PSBsb3dlcihiKSA6IGEgPT09IGJcblxuLy8gW2ldIChwcmVib3VuZCkgaXMgdHJ1ZSBpZiBpbnNlbnNpdGl2ZSBtYXRjaGluZyBpcyByZXF1aXJlZFxuLy8gW2FdIChwcmVib3VuZCkgaXMgdGhlIHZhbHVlIHRoZSBhdHRyIGlzIGNvbXBhcmVkIHRvXG4vLyBbYl0gKHBhc3NlZCkgICBpcyB0aGUgdmFsdWUgb2YgdGhlIGF0dHJpYnV0ZVxuY29uc3QgYXR0cmlidXRlTWF0Y2hlciA9IHtcbiAgJz0nOiAoaSwgYSwgYikgPT4gZXEoYSwgYiwgaSksXG4gICd+PSc6IChpLCBhLCBiKSA9PiBiLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikuZmlsdGVyKGVsID0+IGVxKGVsLCBhLCBpKSkubGVuZ3RoID4gMCxcbiAgJ3w9JzogKGksIGEsIGIpID0+IGVxKGIuc3BsaXQocmVnZXguZGVsaW1pdGVyKVswXSwgYSwgaSksXG4gICdePSc6IChpLCBhLCBiKSA9PiBpID8gbG93ZXIoYikuc3RhcnRzV2l0aChsb3dlcihhKSkgOiBiLnN0YXJ0c1dpdGgoYSksXG4gICckPSc6IChpLCBhLCBiKSA9PiBpID8gbG93ZXIoYikuZW5kc1dpdGgobG93ZXIoYSkpIDogYi5lbmRzV2l0aChhKSxcbiAgJyo9JzogKGksIGEsIGIpID0+IGkgPyBsb3dlcihiKS5pbmNsdWRlcyhsb3dlcihhKSkgOiBiLmluY2x1ZGVzKGEpLFxuICAnKic6IChpLCBhLCBiKSA9PiBiICE9IG51bGxcbn1cblxuY29uc3QgZ2V0QXR0cmlidXRlVmFsdWUgPSAocHJlZml4LCBuYW1lLCBub2RlKSA9PiB7XG4gIGlmICghcHJlZml4IHx8IHByZWZpeCA9PT0gJyonKSB7XG4gICAgcmV0dXJuIG5vZGUuZ2V0QXR0cmlidXRlKG5hbWUpXG4gIH1cbiAgcmV0dXJuIG5vZGUuZ2V0QXR0cmlidXRlKHByZWZpeCArICc6JyArIG5hbWUpXG59XG5cbi8vIFthXSAocHJlYm91bmQpIFthXXJndW1lbnQgb2YgdGhlIHBzZXVkbyBzZWxlY3RvclxuLy8gW25dIChwYXNzZWQpICAgW25db2RlXG4vLyBbc10gKHBhc3NlZCkgICBbc11jb3BlIC0gdGhlIGVsZW1lbnQgdGhpcyBxdWVyeSBpcyBzY29wZWQgdG9cbmNvbnN0IHBzZXVkb01hdGNoZXIgPSB7XG4gICdmaXJzdC1jaGlsZCc6IChhLCBuKSA9PiBuLnBhcmVudE5vZGUgJiYgbi5wYXJlbnROb2RlLmZpcnN0Q2hpbGQgPT09IG4sXG4gICdsYXN0LWNoaWxkJzogKGEsIG4pID0+IG4ucGFyZW50Tm9kZSAmJiBuLnBhcmVudE5vZGUubGFzdENoaWxkID09PSBuLFxuICAnbnRoLWNoaWxkJzogKGEsIG4pID0+IG4ucGFyZW50Tm9kZSAmJiBudGgobiwgbi5wYXJlbnROb2RlLmNoaWxkTm9kZXMsIGEpLFxuICAnbnRoLWxhc3QtY2hpbGQnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG50aChuLCBuLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5zbGljZSgpLnJldmVyc2UoKSwgYSksXG4gICdmaXJzdC1vZi10eXBlJzogKGEsIG4pID0+IG4ucGFyZW50Tm9kZSAmJiBuLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5maWx0ZXIoZWwgPT4gZWwubm9kZU5hbWUgPT09IG4ubm9kZU5hbWUpWzBdID09PSBuLFxuICAnbGFzdC1vZi10eXBlJzogKGEsIG4pID0+IG4ucGFyZW50Tm9kZSAmJiBuLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5maWx0ZXIoZWwgPT4gZWwubm9kZU5hbWUgPT09IG4ubm9kZU5hbWUpLnBvcCgpID09PSBuLFxuICAnbnRoLW9mLXR5cGUnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG50aChuLCBuLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5maWx0ZXIoZWwgPT4gZWwubm9kZU5hbWUgPT09IG4ubm9kZU5hbWUpLCBhKSxcbiAgJ250aC1sYXN0LW9mLXR5cGUnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG50aChuLCBuLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5maWx0ZXIoZWwgPT4gZWwubm9kZU5hbWUgPT09IG4ubm9kZU5hbWUpLnJldmVyc2UoKSwgYSksXG4gICdvbmx5LWNoaWxkJzogKGEsIG4pID0+IG4ucGFyZW50Tm9kZSAmJiBuLnBhcmVudE5vZGUuY2hpbGROb2Rlcy5sZW5ndGggPT09IDEsXG4gICdvbmx5LW9mLXR5cGUnOiAoYSwgbikgPT4gbi5wYXJlbnROb2RlICYmIG4ucGFyZW50Tm9kZS5jaGlsZE5vZGVzLmZpbHRlcihlbCA9PiBlbC5ub2RlTmFtZSA9PT0gbi5ub2RlTmFtZSkubGVuZ3RoID09PSAxLFxuICByb290OiAoYSwgbikgPT4gbi5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCA9PT0gbixcbiAgbm90OiAoYSwgbiwgcykgPT4gIShuZXcgQ3NzUXVlcnkoYSkpLm1hdGNoZXMobiwgcyksXG4gIG1hdGNoZXM6IChhLCBuLCBzKSA9PiAobmV3IENzc1F1ZXJ5KGEpKS5tYXRjaGVzKG4sIHMpLFxuICBzY29wZTogKGEsIG4sIHMpID0+IG4gPT09IHNcbn1cblxuZXhwb3J0IGNsYXNzIENzc1F1ZXJ5Tm9kZSB7XG4gIGNvbnN0cnVjdG9yIChub2RlKSB7XG4gICAgdGhpcy50YWcgPSAnJ1xuICAgIHRoaXMuaWQgPSAnJ1xuICAgIHRoaXMuY2xhc3NMaXN0ID0gW11cbiAgICB0aGlzLmF0dHJzID0gW11cbiAgICB0aGlzLnBzZXVkbyA9IFtdXG5cbiAgICAvLyBtYXRjaCB0aGUgdGFnIG5hbWVcbiAgICBsZXQgbWF0Y2hlcyA9IG5vZGUubWF0Y2goL15bXFx3LV0rfF5cXCovKVxuICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICB0aGlzLnRhZyA9IG1hdGNoZXNbMF1cbiAgICAgIG5vZGUgPSBub2RlLnNsaWNlKHRoaXMudGFnLmxlbmd0aClcbiAgICB9XG5cbiAgICAvLyBtYXRjaCBwc2V1ZG8gY2xhc3Nlc1xuICAgIHdoaWxlICgobWF0Y2hlcyA9IC86KFtcXHctXSspKD86XFwoKC4rKVxcKSk/L2cuZXhlYyhub2RlKSkpIHtcbiAgICAgIHRoaXMucHNldWRvLnB1c2gocHNldWRvTWF0Y2hlclttYXRjaGVzWzFdXS5iaW5kKHRoaXMsIHJlbW92ZVF1b3RlcyhtYXRjaGVzWzJdIHx8ICcnKSkpXG4gICAgICBub2RlID0gbm9kZS5zbGljZSgwLCBtYXRjaGVzLmluZGV4KSArIG5vZGUuc2xpY2UobWF0Y2hlcy5pbmRleCArIG1hdGNoZXNbMF0ubGVuZ3RoKVxuICAgIH1cblxuICAgIC8vIG1hdGNoIGF0dHJpYnV0ZXNcbiAgICB3aGlsZSAoKG1hdGNoZXMgPSAvXFxbKFtcXHctKl0rXFx8KT8oW1xcdy1dKykoKFs9Xn4kfCpdKykoLis/KSggK1tpSV0pPyk/XFxdL2cuZXhlYyhub2RlKSkpIHtcbiAgICAgIGNvbnN0IHByZWZpeCA9IG1hdGNoZXNbMV0gPyBtYXRjaGVzWzFdLnNwbGl0KCd8JylbMF0gOiBudWxsXG4gICAgICB0aGlzLmF0dHJzLnB1c2goe1xuICAgICAgICBuYW1lOiBtYXRjaGVzWzJdLFxuICAgICAgICBnZXRWYWx1ZTogZ2V0QXR0cmlidXRlVmFsdWUuYmluZCh0aGlzLCBwcmVmaXgsIG1hdGNoZXNbMl0pLFxuICAgICAgICBtYXRjaGVyOiBhdHRyaWJ1dGVNYXRjaGVyW21hdGNoZXNbNF0gfHwgJyonXS5iaW5kKFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICAgISFtYXRjaGVzWzZdLCAvLyBjYXNlIGluc2Vuc2l0aXZlIHllcy9ub1xuICAgICAgICAgIHJlbW92ZVF1b3RlcygobWF0Y2hlc1s1XSB8fCAnJykudHJpbSgpKSAvLyBhdHRyaWJ1dGUgdmFsdWVcbiAgICAgICAgKVxuICAgICAgfSlcbiAgICAgIG5vZGUgPSBub2RlLnNsaWNlKDAsIG1hdGNoZXMuaW5kZXgpICsgbm9kZS5zbGljZShtYXRjaGVzLmluZGV4ICsgbWF0Y2hlc1swXS5sZW5ndGgpXG4gICAgfVxuXG4gICAgLy8gbWF0Y2ggdGhlIGlkXG4gICAgbWF0Y2hlcyA9IG5vZGUubWF0Y2goLyMoW1xcdy1dKykvKVxuICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICB0aGlzLmlkID0gbWF0Y2hlc1sxXVxuICAgICAgbm9kZSA9IG5vZGUuc2xpY2UoMCwgbWF0Y2hlcy5pbmRleCkgKyBub2RlLnNsaWNlKG1hdGNoZXMuaW5kZXggKyBtYXRjaGVzWzBdLmxlbmd0aClcbiAgICB9XG5cbiAgICAvLyBtYXRjaCBjbGFzc2VzXG4gICAgd2hpbGUgKChtYXRjaGVzID0gL1xcLihbXFx3LV0rKS9nLmV4ZWMobm9kZSkpKSB7XG4gICAgICB0aGlzLmNsYXNzTGlzdC5wdXNoKG1hdGNoZXNbMV0pXG4gICAgICBub2RlID0gbm9kZS5zbGljZSgwLCBtYXRjaGVzLmluZGV4KSArIG5vZGUuc2xpY2UobWF0Y2hlcy5pbmRleCArIG1hdGNoZXNbMF0ubGVuZ3RoKVxuICAgIH1cbiAgfVxuXG4gIG1hdGNoZXMgKG5vZGUsIHNjb3BlKSB7XG4gICAgbGV0IGlcblxuICAgIGlmIChub2RlLm5vZGVUeXBlICE9PSAxKSByZXR1cm4gZmFsc2VcblxuICAgIC8vIEFsd2F5cyB0aGlzIGV4dHJhIGNvZGUgZm9yIGh0bWwgLS4tXG4gICAgaWYgKG5vZGUubmFtZXNwYWNlVVJJID09PSBodG1sKSB7XG4gICAgICB0aGlzLnRhZyA9IHRoaXMudGFnLnRvVXBwZXJDYXNlKClcbiAgICB9XG5cbiAgICBpZiAodGhpcy50YWcgJiYgdGhpcy50YWcgIT09IG5vZGUubm9kZU5hbWUgJiYgdGhpcy50YWcgIT09ICcqJykgeyByZXR1cm4gZmFsc2UgfVxuXG4gICAgaWYgKHRoaXMuaWQgJiYgdGhpcy5pZCAhPT0gbm9kZS5pZCkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgY29uc3QgY2xhc3NMaXN0ID0gKG5vZGUuZ2V0QXR0cmlidXRlKCdjbGFzcycpIHx8ICcnKS5zcGxpdChyZWdleC5kZWxpbWl0ZXIpLmZpbHRlcihlbCA9PiAhIWVsLmxlbmd0aClcbiAgICBpZiAodGhpcy5jbGFzc0xpc3QuZmlsdGVyKGNsYXNzTmFtZSA9PiBjbGFzc0xpc3QuaW5kZXhPZihjbGFzc05hbWUpIDwgMCkubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBmb3IgKGkgPSB0aGlzLmF0dHJzLmxlbmd0aDsgaS0tOykge1xuICAgICAgY29uc3QgYXR0clZhbHVlID0gdGhpcy5hdHRyc1tpXS5nZXRWYWx1ZShub2RlKVxuICAgICAgaWYgKGF0dHJWYWx1ZSA9PT0gbnVsbCB8fCAhdGhpcy5hdHRyc1tpXS5tYXRjaGVyKGF0dHJWYWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChpID0gdGhpcy5wc2V1ZG8ubGVuZ3RoOyBpLS07KSB7XG4gICAgICBpZiAoIXRoaXMucHNldWRvW2ldKG5vZGUsIHNjb3BlKSkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbn1cbiIsICJpbXBvcnQgeyBDc3NRdWVyeSB9IGZyb20gJy4uLy4uL290aGVyL0Nzc1F1ZXJ5LmpzJ1xuaW1wb3J0IHsgTm9kZUl0ZXJhdG9yIH0gZnJvbSAnLi4vLi4vdXRpbHMvTm9kZUl0ZXJhdG9yLmpzJ1xuaW1wb3J0IHsgTm9kZUZpbHRlciB9IGZyb20gJy4uL05vZGVGaWx0ZXIuanMnXG5pbXBvcnQgeyBub2Rlc1RvTm9kZSB9IGZyb20gJy4uLy4uL3V0aWxzL25vZGVzVG9Ob2RlLmpzJ1xuXG4vLyBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI3BhcmVudG5vZGVcbmNvbnN0IFBhcmVudE5vZGUgPSB7XG4gIG1hdGNoV2l0aFNjb3BlIChxdWVyeSwgc2NvcGUpIHtcbiAgICByZXR1cm4gbmV3IENzc1F1ZXJ5KHF1ZXJ5KS5tYXRjaGVzKHRoaXMsIHNjb3BlKVxuICB9LFxuXG4gIHF1ZXJ5IChxdWVyeSwgc2NvcGUsIHNpbmdsZSA9IGZhbHNlKSB7XG5cbiAgICBjb25zdCBpdGVyID0gbmV3IE5vZGVJdGVyYXRvcihzY29wZSwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQsIChub2RlKSA9PiBub2RlLm1hdGNoV2l0aFNjb3BlKHF1ZXJ5LCBzY29wZSkgPyBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFQgOiBOb2RlRmlsdGVyLkZJTFRFUl9JR05PUkUsIGZhbHNlKVxuXG4gICAgY29uc3Qgbm9kZXMgPSBbXVxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiBpdGVyKSB7XG4gICAgICBub2Rlcy5wdXNoKG5vZGUpXG4gICAgICBpZiAoc2luZ2xlKSByZXR1cm4gbm9kZXNcbiAgICB9XG5cbiAgICByZXR1cm4gbm9kZXNcbiAgfSxcblxuICBxdWVyeVNlbGVjdG9yQWxsIChxdWVyeSkge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5KHF1ZXJ5LCB0aGlzKVxuICB9LFxuXG4gIHF1ZXJ5U2VsZWN0b3IgKHF1ZXJ5KSB7XG4gICAgcmV0dXJuIHRoaXMucXVlcnkocXVlcnksIHRoaXMsIHRydWUpWzBdIHx8IG51bGxcbiAgfSxcblxuICBjbG9zZXN0IChxdWVyeSkge1xuICAgIGNvbnN0IGNzc1F1ZXJ5ID0gbmV3IENzc1F1ZXJ5KHF1ZXJ5KVxuICAgIGxldCBub2RlID0gdGhpc1xuICAgIHdoaWxlIChub2RlKSB7XG4gICAgICBpZiAoY3NzUXVlcnkubWF0Y2hlcyhub2RlLCB0aGlzKSkge1xuICAgICAgICByZXR1cm4gbm9kZVxuICAgICAgfVxuICAgICAgbm9kZSA9IG5vZGUucGFyZW50Tm9kZVxuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9LFxuXG4gIHByZXBlbmQgKC4uLm5vZGVzKSB7XG4gICAgY29uc3Qgbm9kZSA9IG5vZGVzVG9Ob2RlKG5vZGVzLCB0aGlzLm93bmVyRG9jdW1lbnQpXG5cbiAgICB0aGlzLmluc2VydEJlZm9yZShub2RlLCB0aGlzLmZpcnN0Q2hpbGQpXG4gIH0sXG5cbiAgYXBwZW5kICguLi5ub2Rlcykge1xuICAgIGNvbnN0IG5vZGUgPSBub2Rlc1RvTm9kZShub2RlcywgdGhpcy5vd25lckRvY3VtZW50KVxuICAgIHRoaXMuYXBwZW5kQ2hpbGQobm9kZSlcbiAgfSxcblxuICByZXBsYWNlQ2hpbGRyZW4gKC4uLm5vZGVzKSB7XG4gICAgd2hpbGUgKHRoaXMuZmlyc3RDaGlsZCkge1xuICAgICAgdGhpcy5yZW1vdmVDaGlsZCh0aGlzLmZpcnN0Q2hpbGQpXG4gICAgfVxuICAgIHRoaXMuYXBwZW5kKC4uLm5vZGVzKVxuICB9XG59XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFBhcmVudE5vZGUsIHtcbiAgY2hpbGRyZW46IHtcbiAgICBnZXQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY2hpbGROb2Rlcy5maWx0ZXIoZnVuY3Rpb24gKG5vZGUpIHsgcmV0dXJuIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRUxFTUVOVF9OT0RFIH0pXG4gICAgfVxuICB9LFxuICBmaXJzdEVsZW1lbnRDaGlsZDoge1xuICAgIGdldCAoKSB7XG4gICAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdGhpcy5jaGlsZE5vZGVzKSB7XG4gICAgICAgIGlmIChub2RlICYmIG5vZGUubm9kZVR5cGUgPT09IG5vZGUuRUxFTUVOVF9OT0RFKSB7XG4gICAgICAgICAgcmV0dXJuIG5vZGVcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH0sXG4gIGxhc3RFbGVtZW50Q2hpbGQ6IHtcbiAgICBnZXQgKCkge1xuICAgICAgZm9yIChjb25zdCBub2RlIG9mIHRoaXMuY2hpbGROb2Rlcy5zbGljZSgpLnJldmVyc2UoKSkge1xuICAgICAgICBpZiAobm9kZSAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLkVMRU1FTlRfTk9ERSkge1xuICAgICAgICAgIHJldHVybiBub2RlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9LFxuICBjaGlsZEVsZW1lbnRDb3VudDoge1xuICAgIGdldCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jaGlsZHJlbi5sZW5ndGhcbiAgICB9XG4gIH1cbn0pXG5cbmV4cG9ydCB7IFBhcmVudE5vZGUgfVxuIiwgImltcG9ydCB7IE5vZGVJdGVyYXRvciB9IGZyb20gJy4uLy4uL3V0aWxzL05vZGVJdGVyYXRvci5qcydcbmltcG9ydCB7IE5vZGVGaWx0ZXIgfSBmcm9tICcuLi9Ob2RlRmlsdGVyLmpzJ1xuXG4vLyBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2ludGVyZmFjZS1ub25lbGVtZW50cGFyZW50bm9kZVxuZXhwb3J0IGNvbnN0IE5vbkVsZW1lbnRQYXJlbnROb2RlID0ge1xuICBnZXRFbGVtZW50QnlJZCAoaWQpIHtcbiAgICBjb25zdCBpdGVyID0gbmV3IE5vZGVJdGVyYXRvcih0aGlzLCBOb2RlRmlsdGVyLlNIT1dfRUxFTUVOVCwgKG5vZGUpID0+IGlkID09PSBub2RlLmlkID8gTm9kZUZpbHRlci5GSUxURVJfQUNDRVBUIDogTm9kZUZpbHRlci5GSUxURVJfSUdOT1JFLCBmYWxzZSlcbiAgICBmb3IgKGNvbnN0IG5vZGUgb2YgaXRlcikge1xuICAgICAgcmV0dXJuIG5vZGVcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxufVxuIiwgImltcG9ydCB7IE5vZGUgfSBmcm9tICcuL05vZGUuanMnXG5pbXBvcnQgeyBtaXhpbiB9IGZyb20gJy4uL3V0aWxzL29iamVjdENyZWF0aW9uVXRpbHMuanMnXG5pbXBvcnQgeyBlbGVtZW50QWNjZXNzIH0gZnJvbSAnLi9taXhpbnMvZWxlbWVudEFjY2Vzcy5qcydcbmltcG9ydCB7IFBhcmVudE5vZGUgfSBmcm9tICcuL21peGlucy9QYXJlbnROb2RlLmpzJ1xuaW1wb3J0IHsgTm9uRWxlbWVudFBhcmVudE5vZGUgfSBmcm9tICcuL21peGlucy9Ob25FbGVtZW50UGFyZW50Tm9kZS5qcydcbmV4cG9ydCBjbGFzcyBEb2N1bWVudEZyYWdtZW50IGV4dGVuZHMgTm9kZSB7XG4gIGNvbnN0cnVjdG9yIChuYW1lLCBwcm9wcykge1xuICAgIHN1cGVyKG5hbWUsIHByb3BzKVxuICAgIHRoaXMubm9kZVR5cGUgPSBOb2RlLkRPQ1VNRU5UX0ZSQUdNRU5UX05PREVcbiAgfVxufVxuXG5taXhpbihlbGVtZW50QWNjZXNzLCBEb2N1bWVudEZyYWdtZW50KVxubWl4aW4oUGFyZW50Tm9kZSwgRG9jdW1lbnRGcmFnbWVudClcbm1peGluKE5vbkVsZW1lbnRQYXJlbnROb2RlLCBEb2N1bWVudEZyYWdtZW50KVxuIiwgImltcG9ydCBzYXggZnJvbSAnc2F4J1xuXG4vLyBUT0RPOiBJdHMgYW4gWE1MUGFyc2VyIG5vdCBIVE1MUGFyc2VyISFcbmV4cG9ydCBjb25zdCBIVE1MUGFyc2VyID0gZnVuY3Rpb24gKHN0ciwgZWwpIHtcbiAgbGV0IGN1cnJlbnRUYWcgPSBlbFxuICAvLyBjb25zdCBuYW1lc3BhY2VzID0geyB4bWxuczogZWwuZ2V0QXR0cmlidXRlKCd4bWxucycpIH1cbiAgbGV0IGRvY3VtZW50ID0gZWwub3duZXJEb2N1bWVudFxuICBsZXQgY2RhdGEgPSBudWxsXG5cbiAgLy8gc2F4IGV4cGVjdHMgYSByb290IGVsZW1lbnQgYnV0IHdlIGFsc28gbWlzc3VzZSBpdCB0byBwYXJzZSBmcmFnbWVudHNcbiAgaWYgKGVsLm5vZGVUeXBlICE9PSBlbC5ET0NVTUVOVF9OT0RFKSB7XG4gICAgc3RyID0gJzxzdmdkb206d3JhcHBlciB4bWxuczpzdmdkb209XCJzdmdkb206cm9ja3NcIj4nICsgc3RyICsgJzwvc3ZnZG9tOndyYXBwZXI+J1xuICB9IGVsc2Uge1xuICAgIGRvY3VtZW50ID0gZWxcbiAgfVxuXG4gIGNvbnN0IHBhcnNlciA9IHNheC5wYXJzZXIodHJ1ZSwge1xuICAgIC8vIGxvd2VyY2FzZTogdHJ1ZSxcbiAgICB4bWxuczogdHJ1ZSxcbiAgICBzdHJpY3RFbnRpdGllczogdHJ1ZVxuICB9KVxuXG4gIHBhcnNlci5vbmVycm9yID0gKGUpID0+IHtcbiAgICB0aHJvdyBlXG4gIH1cblxuICBwYXJzZXIub25kb2N0eXBlID0gKCkgPT4ge1xuICAgIGlmIChjdXJyZW50VGFnICE9PSBkb2N1bWVudCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdEb2N0eXBlIGNhbiBvbmx5IGJlIGFwcGVuZGVkIHRvIGRvY3VtZW50JylcbiAgICB9XG4gICAgY3VycmVudFRhZy5hcHBlbmRDaGlsZChkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudFR5cGUoKSlcbiAgfVxuXG4gIHBhcnNlci5vbnRleHQgPSAoc3RyKSA9PiBjdXJyZW50VGFnLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHN0cikpXG4gIHBhcnNlci5vbmNvbW1lbnQgPSAoc3RyKSA9PiBjdXJyZW50VGFnLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoc3RyKSlcblxuICAvLyBwYXJzZXIub25vcGVubmFtZXNwYWNlID0gbnMgPT4ge1xuICAvLyAgIG5hbWVzcGFjZXNbbnMucHJlZml4XSA9IG5zLnVyaVxuICAvLyB9XG4gIC8vIHBhcnNlci5vbmNsb3NlbmFtZXNwYWNlID0gbnMgPT4ge1xuICAvLyAgIGRlbGV0ZSBuYW1lc3BhY2VzW25zLnByZWZpeF1cbiAgLy8gfVxuXG4gIHBhcnNlci5vbm9wZW50YWcgPSBub2RlID0+IHtcbiAgICBpZiAobm9kZS5uYW1lID09PSAnc3ZnZG9tOndyYXBwZXInKSByZXR1cm5cblxuICAgIGNvbnN0IGF0dHJzID0gbm9kZS5hdHRyaWJ1dGVzXG5cbiAgICBjb25zdCB1cmkgPSBub2RlLnVyaSB8fCBjdXJyZW50VGFnLmxvb2t1cE5hbWVzcGFjZVVSSShub2RlLnByZWZpeCB8fCBudWxsKVxuXG4gICAgY29uc3QgbmV3RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyh1cmksIG5vZGUubmFtZSlcblxuICAgIGZvciAoY29uc3QgWyBuYW1lLCBub2RlIF0gb2YgT2JqZWN0LmVudHJpZXMoYXR0cnMpKSB7XG4gICAgICBuZXdFbGVtZW50LnNldEF0dHJpYnV0ZU5TKG5vZGUudXJpLCBuYW1lLCBub2RlLnZhbHVlKVxuICAgIH1cblxuICAgIGN1cnJlbnRUYWcuYXBwZW5kQ2hpbGQobmV3RWxlbWVudClcbiAgICBjdXJyZW50VGFnID0gbmV3RWxlbWVudFxuICB9XG5cbiAgcGFyc2VyLm9uY2xvc2V0YWcgPSB0YWdOYW1lID0+IHtcbiAgICBpZiAodGFnTmFtZSA9PT0gJ3N2Z2RvbTp3cmFwcGVyJykgcmV0dXJuXG5cbiAgICBjdXJyZW50VGFnID0gY3VycmVudFRhZy5wYXJlbnROb2RlXG4gIH1cblxuICBwYXJzZXIub25vcGVuY2RhdGEgPSAoKSA9PiB7XG4gICAgY2RhdGEgPSBkb2N1bWVudC5jcmVhdGVDREFUQVNlY3Rpb24oJycpXG4gIH1cblxuICBwYXJzZXIub25jZGF0YSA9IChzdHIpID0+IHtcbiAgICBjZGF0YS5hcHBlbmREYXRhKHN0cilcbiAgfVxuXG4gIHBhcnNlci5vbmNsb3NlY2RhdGEgPSAoKSA9PiB7XG4gICAgY3VycmVudFRhZy5hcHBlbmRDaGlsZChjZGF0YSlcbiAgfVxuXG4gIHBhcnNlci53cml0ZShzdHIpXG59XG4iLCAiaW1wb3J0IHsgZGVjYW1lbGl6ZSB9IGZyb20gJy4uL3V0aWxzL3N0clV0aWxzLmpzJ1xuXG5leHBvcnQgY29uc3Qgb2JqZWN0VG9NYXAgPSBmdW5jdGlvbiAob2JqKSB7XG4gIGlmIChvYmogaW5zdGFuY2VvZiBNYXApIHJldHVybiBuZXcgTWFwKG9iailcbiAgcmV0dXJuIE9iamVjdC5rZXlzKG9iaikucmVkdWNlKChtYXAsIGtleSkgPT4gbWFwLnNldChrZXksIG9ialtrZXldKSwgbmV3IE1hcCgpKVxufVxuXG5leHBvcnQgY29uc3QgbWFwVG9PYmplY3QgPSBmdW5jdGlvbiAobWFwKSB7XG4gIHZhciBvYmogPSB7fVxuICBtYXAuZm9yRWFjaChmdW5jdGlvbiAodmFsdWUsIGtleSkge1xuICAgIG9ialtrZXldID0gdmFsdWVcbiAgfSlcbiAgcmV0dXJuIG9ialxufVxuXG5leHBvcnQgY29uc3QgbWFwTWFwID0gZnVuY3Rpb24gKG1hcCwgY2IpIHtcbiAgdmFyIGFyciA9IFtdXG4gIG1hcC5mb3JFYWNoKGZ1bmN0aW9uICh2YWx1ZSwga2V5KSB7XG4gICAgYXJyLnB1c2goY2IodmFsdWUsIGtleSkpXG4gIH0pXG4gIHJldHVybiBhcnJcbn1cblxuZXhwb3J0IGNvbnN0IG1hcFRvQ3NzID0gZnVuY3Rpb24gKG15TWFwKSB7XG4gIHJldHVybiBtYXBNYXAobXlNYXAsIGZ1bmN0aW9uICh2YWx1ZSwga2V5KSB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuIGZhbHNlXG4gICAgcmV0dXJuIGRlY2FtZWxpemUoa2V5KSArICc6ICcgKyB2YWx1ZVxuICB9KS5maWx0ZXIoZnVuY3Rpb24gKGVsKSB7IHJldHVybiAhIWVsIH0pLmpvaW4oJzsgJykgKyAnOycgfHwgbnVsbFxufVxuXG5leHBvcnQgY29uc3QgY3NzVG9NYXAgPSBmdW5jdGlvbiAoY3NzKSB7XG4gIHJldHVybiBuZXcgTWFwKGNzcy5zcGxpdCgvXFxzKjtcXHMqLykuZmlsdGVyKGZ1bmN0aW9uIChlbCkgeyByZXR1cm4gISFlbCB9KS5tYXAoZnVuY3Rpb24gKGVsKSB7XG4gICAgcmV0dXJuIGVsLnNwbGl0KC9cXHMqOlxccyovKVxuICB9KSlcbn1cbiIsICJpbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi9Ob2RlLmpzJ1xuXG5pbXBvcnQgeyBQYXJlbnROb2RlIH0gZnJvbSAnLi9taXhpbnMvUGFyZW50Tm9kZS5qcydcbmltcG9ydCB7IGVsZW1lbnRBY2Nlc3MgfSBmcm9tICcuL21peGlucy9lbGVtZW50QWNjZXNzLmpzJ1xuaW1wb3J0IHsgSFRNTFBhcnNlciB9IGZyb20gJy4vaHRtbC9IVE1MUGFyc2VyLmpzJ1xuaW1wb3J0IHsgRG9jdW1lbnRGcmFnbWVudCB9IGZyb20gJy4vRG9jdW1lbnRGcmFnbWVudC5qcydcbmltcG9ydCB7IG1peGluIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcbmltcG9ydCB7IHRhZyB9IGZyb20gJy4uL3V0aWxzL3RhZ1V0aWxzLmpzJ1xuaW1wb3J0IHsgY3NzVG9NYXAsIG1hcFRvQ3NzIH0gZnJvbSAnLi4vdXRpbHMvbWFwVXRpbHMuanMnXG5pbXBvcnQgeyBoZXhUb1JHQiwgZGVjYW1lbGl6ZSwgaHRtbEVudGl0aWVzLCBjZGF0YSwgY29tbWVudCB9IGZyb20gJy4uL3V0aWxzL3N0clV0aWxzLmpzJ1xuaW1wb3J0IHsgTm9uRG9jdW1lbnRUeXBlQ2hpbGROb2RlIH0gZnJvbSAnLi9taXhpbnMvTm9uRG9jdW1lbnRUeXBlQ2hpbGROb2RlLmpzJ1xuaW1wb3J0IHsgQ2hpbGROb2RlIH0gZnJvbSAnLi9taXhpbnMvQ2hpbGROb2RlLmpzJ1xuaW1wb3J0IHsgaHRtbCwgeG1sLCB4bWxucyB9IGZyb20gJy4uL3V0aWxzL25hbWVzcGFjZXMuanMnXG5cbmNvbnN0IHZhbGlkYXRlQW5kRXh0cmFjdCA9IChucywgbmFtZSkgPT4ge1xuICBsZXQgcHJlZml4ID0gbnVsbFxuICBsZXQgbG9jYWxuYW1lID0gbmFtZVxuXG4gIGlmICghbnMpIG5zID0gbnVsbFxuXG4gIGlmIChuYW1lLmluY2x1ZGVzKCc6JykpIHtcbiAgICBbIHByZWZpeCwgbG9jYWxuYW1lIF0gPSBuYW1lLnNwbGl0KCc6JylcbiAgfVxuXG4gIGlmICghbnMgJiYgcHJlZml4KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOYW1lc3BhY2UgRXJyb3InKVxuICB9XG5cbiAgaWYgKHByZWZpeCA9PT0gJ3htbCcgJiYgbnMgIT09IHhtbCkge1xuICAgIHRocm93IG5ldyBFcnJvcignTmFtZXNwYWNlIEVycm9yJylcbiAgfVxuXG4gIGlmICgocHJlZml4ID09PSAneG1sbnMnIHx8IG5hbWUgPT09ICd4bWxucycpICYmIG5zICE9PSB4bWxucykge1xuICAgIHRocm93IG5ldyBFcnJvcignTmFtZXNwYWNlIEVycm9yJylcbiAgfVxuXG4gIGlmIChwcmVmaXggIT09ICd4bWxucycgJiYgbmFtZSAhPT0gJ3htbG5zJyAmJiBucyA9PT0geG1sbnMpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05hbWVzcGFjZSBFcnJvcicpXG4gIH1cblxuICByZXR1cm4gWyBucywgcHJlZml4LCBsb2NhbG5hbWUgXVxufVxuXG5jb25zdCBnZXRBdHRyaWJ1dGVCeU5zQW5kTG9jYWxOYW1lID0gKGVsLCBucywgbG9jYWxOYW1lKSA9PiB7XG4gIGlmICghbnMpIG5zID0gbnVsbFxuICByZXR1cm4gWyAuLi5lbC5hdHRycyBdLmZpbmQoKG5vZGUpID0+IG5vZGUubG9jYWxOYW1lID09PSBsb2NhbE5hbWUgJiYgbm9kZS5uYW1lc3BhY2VVUkkgPT09IG5zKVxufVxuXG5jb25zdCBnZXRBdHRyaWJ1dGVCeVF1YWxpZmllZE5hbWUgPSAoZWwsIHF1YWxpZmllZE5hbWUpID0+IHtcbiAgaWYgKGVsLm5hbWVzcGFjZVVSSSA9PT0gaHRtbCAmJiBlbC5vd25lckRvY3VtZW50Lm5hbWVzcGFjZVVSSSA9PT0gaHRtbCkge1xuICAgIHF1YWxpZmllZE5hbWUgPSBxdWFsaWZpZWROYW1lLnRvTG93ZXJDYXNlKClcbiAgfVxuXG4gIHJldHVybiBbIC4uLmVsLmF0dHJzIF0uZmluZCgobm9kZSkgPT4gbm9kZS5uYW1lID09PSBxdWFsaWZpZWROYW1lKVxufVxuXG4vLyBUaGlzIFByb3h5IHByb3hpZXMgYWxsIGFjY2VzcyB0byBub2RlLnN0eWxlIHRvIHRoZSBjc3Mgc2F2ZWQgaW4gdGhlIGF0dHJpYnV0ZVxuY29uc3QgZ2V0U3R5bGVQcm94eSA9IChub2RlKSA9PiB7XG5cbiAgcmV0dXJuIG5ldyBQcm94eShub2RlLCB7XG4gICAgZ2V0ICh0YXJnZXQsIGtleSkge1xuICAgICAgY29uc3Qgc3R5bGVzID0gdGFyZ2V0LmdldEF0dHJpYnV0ZSgnc3R5bGUnKSB8fCAnJ1xuICAgICAgY29uc3Qgc3R5bGVNYXAgPSBjc3NUb01hcChzdHlsZXMpXG5cbiAgICAgIGlmIChrZXkgPT09ICdjc3NUZXh0Jykge1xuICAgICAgICByZXR1cm4gc3R5bGVzXG4gICAgICB9XG5cbiAgICAgIGlmIChrZXkgPT09ICdzZXRQcm9wZXJ0eScpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChwcm9wZXJ0eU5hbWUsIHZhbHVlID0gJycsIHByaW9yaXR5ID0gJycpIHtcbiAgICAgICAgICBub2RlLnN0eWxlW3Byb3BlcnR5TmFtZV0gPSB2YWx1ZSArIChwcmlvcml0eSA/IGAgISR7cHJpb3JpdHl9YCA6ICcnKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChrZXkgPT09ICdnZXRQcm9wZXJ0eVZhbHVlJykge1xuICAgICAgICByZXR1cm4gZnVuY3Rpb24gKHByb3BlcnR5TmFtZSkge1xuICAgICAgICAgIHJldHVybiBub2RlLnN0eWxlW3Byb3BlcnR5TmFtZV0gPz8gJydcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBrZXkgPSBkZWNhbWVsaXplKGtleSlcbiAgICAgIGlmICghc3R5bGVNYXAuaGFzKGtleSkpIHJldHVybiAnJ1xuXG4gICAgICByZXR1cm4gc3R5bGVNYXAuZ2V0KGtleSlcbiAgICB9LFxuICAgIHNldCAodGFyZ2V0LCBrZXksIHZhbHVlKSB7XG4gICAgICBrZXkgPSBkZWNhbWVsaXplKGtleSlcblxuICAgICAgaWYgKGtleSA9PT0gJ2Nzcy10ZXh0Jykge1xuICAgICAgICAvLyBlbnN1cmUgY29ycmVjdCBzcGFjaW5nIGFuZCBzeW50YXggYnkgY29udmVydGluZyBiYWNrIGFuZCBmb3J0aFxuICAgICAgICB0YXJnZXQuc2V0QXR0cmlidXRlKCdzdHlsZScsIG1hcFRvQ3NzKGNzc1RvTWFwKHZhbHVlKSkpXG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWx1ZSA9IGhleFRvUkdCKHZhbHVlLnRvU3RyaW5nKCkpXG4gICAgICAgIGNvbnN0IHN0eWxlcyA9IHRhcmdldC5nZXRBdHRyaWJ1dGUoJ3N0eWxlJykgfHwgJydcbiAgICAgICAgY29uc3Qgc3R5bGVNYXAgPSBjc3NUb01hcChzdHlsZXMpXG4gICAgICAgIHN0eWxlTWFwLnNldChrZXksIHZhbHVlKVxuXG4gICAgICAgIHRhcmdldC5zZXRBdHRyaWJ1dGUoJ3N0eWxlJywgbWFwVG9Dc3Moc3R5bGVNYXApKVxuXG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9KVxufVxuXG4vLyBodHRwczovL2RvbS5zcGVjLndoYXR3Zy5vcmcvI2RvbS1lbGVtZW50LXNldGF0dHJpYnV0ZW5zXG5leHBvcnQgY2xhc3MgRWxlbWVudCBleHRlbmRzIE5vZGUge1xuICBjb25zdHJ1Y3RvciAobmFtZSwgcHJvcHMsIG5zKSB7XG4gICAgc3VwZXIobmFtZSwgcHJvcHMsIG5zKVxuXG4gICAgdGhpcy5zdHlsZSA9IGdldFN0eWxlUHJveHkodGhpcylcbiAgICB0aGlzLnRhZ05hbWUgPSB0aGlzLm5vZGVOYW1lXG4gIH1cblxuICBnZXRBdHRyaWJ1dGUgKHF1YWxpZmllZE5hbWUpIHtcbiAgICBjb25zdCBhdHRyID0gdGhpcy5nZXRBdHRyaWJ1dGVOb2RlKHF1YWxpZmllZE5hbWUpXG4gICAgcmV0dXJuIGF0dHIgPyBhdHRyLnZhbHVlIDogbnVsbFxuICB9XG5cbiAgZ2V0QXR0cmlidXRlTm9kZSAocXVhbGlmaWVkTmFtZSkge1xuICAgIHJldHVybiBnZXRBdHRyaWJ1dGVCeVF1YWxpZmllZE5hbWUodGhpcywgcXVhbGlmaWVkTmFtZSlcbiAgfVxuXG4gIGdldEF0dHJpYnV0ZU5vZGVOUyAobnMsIGxvY2FsTmFtZSkge1xuICAgIHJldHVybiBnZXRBdHRyaWJ1dGVCeU5zQW5kTG9jYWxOYW1lKHRoaXMsIG5zLCBsb2NhbE5hbWUpXG4gIH1cblxuICBnZXRBdHRyaWJ1dGVOUyAobnMsIGxvY2FsTmFtZSkge1xuICAgIGNvbnN0IGF0dHIgPSB0aGlzLmdldEF0dHJpYnV0ZU5vZGVOUyhucywgbG9jYWxOYW1lKVxuICAgIHJldHVybiBhdHRyID8gYXR0ci52YWx1ZSA6IG51bGxcbiAgfVxuXG4gIGdldEJvdW5kaW5nQ2xpZW50UmVjdCAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdPbmx5IGltcGxlbWVudGVkIGZvciBTVkcgRWxlbWVudHMnKVxuICB9XG5cbiAgaGFzQXR0cmlidXRlIChxdWFsaWZpZWROYW1lKSB7XG4gICAgY29uc3QgYXR0ciA9IHRoaXMuZ2V0QXR0cmlidXRlTm9kZShxdWFsaWZpZWROYW1lKVxuICAgIHJldHVybiAhIWF0dHJcbiAgfVxuXG4gIGhhc0F0dHJpYnV0ZU5TIChucywgbG9jYWxOYW1lKSB7XG4gICAgY29uc3QgYXR0ciA9IHRoaXMuZ2V0QXR0cmlidXRlTm9kZU5TKG5zLCBsb2NhbE5hbWUpXG4gICAgcmV0dXJuICEhYXR0clxuICB9XG5cbiAgbWF0Y2hlcyAocXVlcnkpIHtcbiAgICByZXR1cm4gdGhpcy5tYXRjaFdpdGhTY29wZShxdWVyeSwgdGhpcylcbiAgfVxuXG4gIHJlbW92ZUF0dHJpYnV0ZSAocXVhbGlmaWVkTmFtZSkge1xuICAgIGNvbnN0IGF0dHIgPSB0aGlzLmdldEF0dHJpYnV0ZU5vZGUocXVhbGlmaWVkTmFtZSlcbiAgICBpZiAoYXR0cikge1xuICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGVOb2RlKGF0dHIpXG4gICAgfVxuICAgIHJldHVybiBhdHRyXG4gIH1cblxuICByZW1vdmVBdHRyaWJ1dGVOb2RlIChub2RlKSB7XG4gICAgaWYgKCF0aGlzLmF0dHJzLmRlbGV0ZShub2RlKSkgdGhyb3cgbmV3IEVycm9yKCdBdHRyaWJ1dGUgY2Fubm90IGJlIHJlbW92ZWQgYmVjYXVzZSBpdCB3YXMgbm90IGZvdW5kIG9uIHRoZSBlbGVtZW50JylcbiAgICByZXR1cm4gbm9kZVxuICB9XG5cbiAgLy8gY2FsbCBpczogZC5yZW1vdmVBdHRyaWJ1dGVOUygnaHR0cDovL3d3dy5tb3ppbGxhLm9yZy9ucy9zcGVjaWFsc3BhY2UnLCAnYWxpZ24nLCAnY2VudGVyJyk7XG4gIHJlbW92ZUF0dHJpYnV0ZU5TIChucywgbG9jYWxOYW1lKSB7XG4gICAgY29uc3QgYXR0ciA9IHRoaXMuZ2V0QXR0cmlidXRlTm9kZU5TKG5zLCBsb2NhbE5hbWUpXG4gICAgaWYgKGF0dHIpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlTm9kZShhdHRyKVxuICAgIH1cbiAgICByZXR1cm4gYXR0clxuICB9XG5cbiAgLyogVGhlIHNldEF0dHJpYnV0ZShxdWFsaWZpZWROYW1lLCB2YWx1ZSkgbWV0aG9kLCB3aGVuIGludm9rZWQsIG11c3QgcnVuIHRoZXNlIHN0ZXBzOlxuXG4gICAgSWYgcXVhbGlmaWVkTmFtZSBkb2VzIG5vdCBtYXRjaCB0aGUgTmFtZSBwcm9kdWN0aW9uIGluIFhNTCwgdGhlbiB0aHJvdyBhbiBcIkludmFsaWRDaGFyYWN0ZXJFcnJvclwiIERPTUV4Y2VwdGlvbi5cblxuICAgIElmIHRoaXMgaXMgaW4gdGhlIEhUTUwgbmFtZXNwYWNlIGFuZCBpdHMgbm9kZSBkb2N1bWVudCBpcyBhbiBIVE1MIGRvY3VtZW50LCB0aGVuIHNldCBxdWFsaWZpZWROYW1lIHRvIHF1YWxpZmllZE5hbWUgaW4gQVNDSUkgbG93ZXJjYXNlLlxuXG4gICAgTGV0IGF0dHJpYnV0ZSBiZSB0aGUgZmlyc3QgYXR0cmlidXRlIGluIHRoaXNcdTIwMTlzIGF0dHJpYnV0ZSBsaXN0IHdob3NlIHF1YWxpZmllZCBuYW1lIGlzIHF1YWxpZmllZE5hbWUsIGFuZCBudWxsIG90aGVyd2lzZS5cblxuICAgIElmIGF0dHJpYnV0ZSBpcyBudWxsLCBjcmVhdGUgYW4gYXR0cmlidXRlIHdob3NlIGxvY2FsIG5hbWUgaXMgcXVhbGlmaWVkTmFtZSwgdmFsdWUgaXMgdmFsdWUsIGFuZCBub2RlIGRvY3VtZW50IGlzIHRoaXNcdTIwMTlzIG5vZGUgZG9jdW1lbnQsIHRoZW4gYXBwZW5kIHRoaXMgYXR0cmlidXRlIHRvIHRoaXMsIGFuZCB0aGVuIHJldHVybi5cblxuICAgIENoYW5nZSBhdHRyaWJ1dGUgdG8gdmFsdWUuXG4gICovXG4gIHNldEF0dHJpYnV0ZSAocXVhbGlmaWVkTmFtZSwgdmFsdWUpIHtcbiAgICAvLyBXZSBoYXZlIHRvIGRvIHRoYXQgaGVyZSBiZWNhdXNlIHdlIGNhbm5vdCBjaGVjayBpZiBgdGhpc2AgaXMgaW4gdGhlIGNvcnJlY3QgbmFtZXNwYWNlXG4gICAgLy8gd2hlbiBkb2luZyBpdCBpbiBjcmVhdGVBdHRyaWJ1dGVcbiAgICBpZiAodGhpcy5uYW1lc3BhY2VVUkkgPT09IGh0bWwgJiYgdGhpcy5vd25lckRvY3VtZW50Lm5hbWVzcGFjZVVSSSA9PT0gaHRtbCkge1xuICAgICAgcXVhbGlmaWVkTmFtZSA9IHF1YWxpZmllZE5hbWUudG9Mb3dlckNhc2UoKVxuICAgIH1cblxuICAgIGxldCBhdHRyID0gdGhpcy5nZXRBdHRyaWJ1dGVOb2RlKHF1YWxpZmllZE5hbWUpXG4gICAgaWYgKCFhdHRyKSB7XG4gICAgICAvLyBCZWNhdXNlIGNyZWF0ZUF0dHJpYnV0ZSBsb3dlcmNhc2VzIHRoZSBhdHRyaWJ1dGUgaW4gYW4gaHRtbCBkb2Mgd2UgaGF2ZSB0byB1c2UgY3JlYXRlQXR0cmlidXRlTlNcbiAgICAgIGF0dHIgPSB0aGlzLm93bmVyRG9jdW1lbnQuY3JlYXRlQXR0cmlidXRlTlMobnVsbCwgcXVhbGlmaWVkTmFtZSwgdHJ1ZSlcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlTm9kZShhdHRyKVxuICAgIH1cblxuICAgIGF0dHIudmFsdWUgPSB2YWx1ZVxuICB9XG5cbiAgLypcbiAgICBMZXQgbmFtZXNwYWNlLCBwcmVmaXgsIGFuZCBsb2NhbE5hbWUgYmUgdGhlIHJlc3VsdCBvZiBwYXNzaW5nIG5hbWVzcGFjZSBhbmQgcXVhbGlmaWVkTmFtZSB0byB2YWxpZGF0ZSBhbmQgZXh0cmFjdC5cblxuICAgIFNldCBhbiBhdHRyaWJ1dGUgdmFsdWUgZm9yIHRoaXMgdXNpbmcgbG9jYWxOYW1lLCB2YWx1ZSwgYW5kIGFsc28gcHJlZml4IGFuZCBuYW1lc3BhY2UuXG5cbiAgICBJZiBwcmVmaXggaXMgbm90IGdpdmVuLCBzZXQgaXQgdG8gbnVsbC5cbiAgICBJZiBuYW1lc3BhY2UgaXMgbm90IGdpdmVuLCBzZXQgaXQgdG8gbnVsbC5cbiAgICBMZXQgYXR0cmlidXRlIGJlIHRoZSByZXN1bHQgb2YgZ2V0dGluZyBhbiBhdHRyaWJ1dGUgZ2l2ZW4gbmFtZXNwYWNlLCBsb2NhbE5hbWUsIGFuZCBlbGVtZW50LlxuICAgIElmIGF0dHJpYnV0ZSBpcyBudWxsLCBjcmVhdGUgYW4gYXR0cmlidXRlIHdob3NlIG5hbWVzcGFjZSBpcyBuYW1lc3BhY2UsIG5hbWVzcGFjZSBwcmVmaXggaXMgcHJlZml4LCBsb2NhbCBuYW1lIGlzIGxvY2FsTmFtZSwgdmFsdWUgaXMgdmFsdWUsIGFuZCBub2RlIGRvY3VtZW50IGlzIGVsZW1lbnRcdTIwMTlzIG5vZGUgZG9jdW1lbnQsIHRoZW4gYXBwZW5kIHRoaXMgYXR0cmlidXRlIHRvIGVsZW1lbnQsIGFuZCB0aGVuIHJldHVybi5cblxuICAgIENoYW5nZSBhdHRyaWJ1dGUgdG8gdmFsdWUuXG4gICovXG5cbiAgc2V0QXR0cmlidXRlTm9kZSAobm9kZSkge1xuICAgIHRoaXMuYXR0cnMuYWRkKG5vZGUpXG4gICAgbm9kZS5vd25lckVsZW1lbnQgPSB0aGlzXG4gIH1cblxuICAvLyBjYWxsIGlzOiBkLnNldEF0dHJpYnV0ZU5TKCdodHRwOi8vd3d3Lm1vemlsbGEub3JnL25zL3NwZWNpYWxzcGFjZScsICdzcGVjOmFsaWduJywgJ2NlbnRlcicpO1xuICBzZXRBdHRyaWJ1dGVOUyAobmFtZXNwYWNlLCBuYW1lLCB2YWx1ZSkge1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgY29uc3QgWyBucywgcHJlZml4LCBsb2NhbE5hbWUgXSA9IHZhbGlkYXRlQW5kRXh0cmFjdChuYW1lc3BhY2UsIG5hbWUpXG5cbiAgICBsZXQgYXR0ciA9IHRoaXMuZ2V0QXR0cmlidXRlTm9kZU5TKG5zLCBsb2NhbE5hbWUpXG4gICAgaWYgKCFhdHRyKSB7XG4gICAgICBhdHRyID0gdGhpcy5vd25lckRvY3VtZW50LmNyZWF0ZUF0dHJpYnV0ZU5TKG5zLCBuYW1lKVxuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGVOb2RlKGF0dHIpIC8vIHNldEF0dHJpYnV0ZU5vZGVOUyBpcyBhIHN5bm9ueW0gb2Ygc2V0QXR0cmlidXRlTm9kZVxuICAgIH1cblxuICAgIGF0dHIudmFsdWUgPSB2YWx1ZVxuXG4gICAgdGhpcy5hdHRycy5hZGQoYXR0cilcbiAgfVxuXG4gIGdldCBhdHRyaWJ1dGVzICgpIHtcbiAgICByZXR1cm4gWyAuLi50aGlzLmF0dHJzIF1cbiAgfVxuXG4gIGdldCBjbGFzc05hbWUgKCkge1xuICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnY2xhc3MnKVxuICB9XG5cbiAgc2V0IGNsYXNzTmFtZSAoYykge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlKCdjbGFzcycsIGMpXG4gIH1cblxuICBnZXQgaWQgKCkge1xuICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnaWQnKSB8fCAnJ1xuICB9XG5cbiAgc2V0IGlkIChpZCkge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlKCdpZCcsIGlkKVxuICB9XG5cbiAgZ2V0IGlubmVySFRNTCAoKSB7XG5cbiAgICByZXR1cm4gdGhpcy5jaGlsZE5vZGVzLm1hcChub2RlID0+IHtcbiAgICAgIGlmIChub2RlLm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSkgcmV0dXJuIGh0bWxFbnRpdGllcyhub2RlLmRhdGEpXG4gICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5DREFUQV9TRUNUSU9OX05PREUpIHJldHVybiBjZGF0YShub2RlLmRhdGEpXG4gICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PT0gTm9kZS5DT01NRU5UX05PREUpIHJldHVybiBjb21tZW50KG5vZGUuZGF0YSlcbiAgICAgIHJldHVybiBub2RlLm91dGVySFRNTFxuICAgIH0pLmpvaW4oJycpXG4gIH1cblxuICBzZXQgaW5uZXJIVE1MIChzdHIpIHtcbiAgICB3aGlsZSAodGhpcy5maXJzdENoaWxkKSB7XG4gICAgICB0aGlzLnJlbW92ZUNoaWxkKHRoaXMuZmlyc3RDaGlsZClcbiAgICB9XG4gICAgLy8gVGhlIHBhcnNlciBhZGRzIHRoZSBodG1sIHRvIHRoaXNcbiAgICBIVE1MUGFyc2VyKHN0ciwgdGhpcylcbiAgfVxuXG4gIGdldCBvdXRlckhUTUwgKCkge1xuICAgIHJldHVybiB0YWcodGhpcylcbiAgfVxuXG4gIHNldCBvdXRlckhUTUwgKHN0cikge1xuICAgIGNvbnN0IHdlbGwgPSBuZXcgRG9jdW1lbnRGcmFnbWVudCgpXG4gICAgSFRNTFBhcnNlcihzdHIsIHdlbGwpXG4gICAgdGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZSh3ZWxsLCB0aGlzKVxuICAgIHRoaXMucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzKVxuICB9XG5cbn1cblxubWl4aW4oUGFyZW50Tm9kZSwgRWxlbWVudClcbm1peGluKGVsZW1lbnRBY2Nlc3MsIEVsZW1lbnQpXG5taXhpbihOb25Eb2N1bWVudFR5cGVDaGlsZE5vZGUsIEVsZW1lbnQpXG5taXhpbihDaGlsZE5vZGUsIEVsZW1lbnQpXG4iLCAiaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gJy4uL0VsZW1lbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBIVE1MRWxlbWVudCBleHRlbmRzIEVsZW1lbnQge31cbiIsICJpbXBvcnQgeyBIVE1MRWxlbWVudCB9IGZyb20gJy4vSFRNTEVsZW1lbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBIVE1MTGlua0VsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCB7fVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhIVE1MTGlua0VsZW1lbnQucHJvdG90eXBlLCB7XG4gIGhyZWY6IHtcbiAgICBnZXQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdocmVmJylcbiAgICB9LFxuICAgIHNldCAodmFsKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnaHJlZicsIHZhbClcbiAgICB9XG4gIH0sXG4gIHJlbDoge1xuICAgIGdldCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ3JlbCcpXG4gICAgfSxcbiAgICBzZXQgKHZhbCkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ3JlbCcsIHZhbClcbiAgICB9XG4gIH0sXG4gIHR5cGU6IHtcbiAgICBnZXQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCd0eXBlJylcbiAgICB9LFxuICAgIHNldCAodmFsKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgndHlwZScsIHZhbClcbiAgICB9XG4gIH1cbn0pXG4iLCAiXG5pbXBvcnQgeyBIVE1MRWxlbWVudCB9IGZyb20gJy4vSFRNTEVsZW1lbnQuanMnXG5leHBvcnQgY2xhc3MgSFRNTFNjcmlwdEVsZW1lbnQgZXh0ZW5kcyBIVE1MRWxlbWVudCB7fVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhIVE1MU2NyaXB0RWxlbWVudC5wcm90b3R5cGUsIHtcbiAgc3JjOiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnc3JjJylcbiAgICB9LFxuICAgIHNldCAodmFsKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnc3JjJywgdmFsKVxuICAgIH1cbiAgfSxcbiAgdHlwZToge1xuICAgIGdldCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ3R5cGUnKVxuICAgIH0sXG4gICAgc2V0ICh2YWwpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCd0eXBlJywgdmFsKVxuICAgIH1cbiAgfVxufSlcbiIsICJpbXBvcnQgc2l6ZU9mIGZyb20gJ2ltYWdlLXNpemUnXG5pbXBvcnQgeyBFdmVudCB9IGZyb20gJy4uL0V2ZW50LmpzJ1xuaW1wb3J0IHsgSFRNTEVsZW1lbnQgfSBmcm9tICcuL0hUTUxFbGVtZW50LmpzJ1xuLy8gaW1wb3J0IHsgZ2V0RmlsZUJ1ZmZlckZyb21VUkwgfSBmcm9tICcuLi8uLi91dGlscy9maWxlVXJsVG9CdWZmZXIuanMnXG4vLyBpbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xuXG5leHBvcnQgY2xhc3MgSFRNTEltYWdlRWxlbWVudCBleHRlbmRzIEhUTUxFbGVtZW50IHtcbiAgY29uc3RydWN0b3IgKC4uLmFyZ3MpIHtcbiAgICBzdXBlciguLi5hcmdzKVxuICAgIHRoaXMubmF0dXJhbFdpZHRoID0gMFxuICAgIHRoaXMubmF0dXJhbEhlaWdodCA9IDBcbiAgICB0aGlzLmNvbXBsZXRlID0gZmFsc2VcbiAgfVxufVxuXG5PYmplY3QuZGVmaW5lUHJvcGVydGllcyhIVE1MSW1hZ2VFbGVtZW50LnByb3RvdHlwZSwge1xuICBzcmM6IHtcbiAgICBnZXQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCdzcmMnKVxuICAgIH0sXG4gICAgc2V0ICh2YWwpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdzcmMnLCB2YWwpXG4gICAgICAvLyBjb25zdCB1cmwgPSBwYXRoLnJlc29sdmUodGhpcy5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmxvY2F0aW9uLCB2YWwpXG4gICAgICAvLyBnZXRGaWxlQnVmZmVyRnJvbVVSTCh1cmwsIChidWZmZXIpID0+IHtcbiAgICAgIHNpemVPZih2YWwsIChlcnIsIHNpemUpID0+IHtcbiAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2Vycm9yJykpXG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5uYXR1cmFsV2lkdGggPSBzaXplLndpZHRoXG4gICAgICAgIHRoaXMubmF0dXJhbEhlaWdodCA9IHNpemUuaGVpZ2h0XG4gICAgICAgIHRoaXMuY29tcGxldGUgPSB0cnVlXG4gICAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2xvYWQnKSlcbiAgICAgIH0pXG4gICAgICAvLyB9KVxuICAgIH1cbiAgfSxcbiAgaGVpZ2h0OiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnaGVpZ2h0JykgfHwgdGhpcy5uYXR1cmFsSGVpZ2h0XG4gICAgfSxcbiAgICBzZXQgKHZhbCkge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2hlaWdodCcsIHZhbClcbiAgICB9XG4gIH0sXG4gIHdpZHRoOiB7XG4gICAgZ2V0ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnd2lkdGgnKSB8fCB0aGlzLm5hdHVyYWxXaWR0aFxuICAgIH0sXG4gICAgc2V0ICh2YWwpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCd3aWR0aCcsIHZhbClcbiAgICB9XG4gIH1cbn0pXG4iLCAiaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gJy4uL0VsZW1lbnQuanMnXG5leHBvcnQgY2xhc3MgU1ZHRWxlbWVudCBleHRlbmRzIEVsZW1lbnQge1xuICBnZXQgb3duZXJTVkdFbGVtZW50ICgpIHtcbiAgICBsZXQgcGFyZW50ID0gdGhpc1xuICAgIHdoaWxlICgocGFyZW50ID0gcGFyZW50LnBhcmVudE5vZGUpKSB7XG4gICAgICBpZiAoJ3N2ZycgPT0gcGFyZW50Lm5vZGVOYW1lKSB7XG4gICAgICAgIHJldHVybiBwYXJlbnRcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGdldCB2aWV3cG9ydEVsZW1lbnQgKCkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzXG4gICAgd2hpbGUgKChwYXJlbnQgPSBwYXJlbnQucGFyZW50Tm9kZSkpIHtcbiAgICAgIC8vIFRPRE86IGFuZCBvdGhlcnNcbiAgICAgIGlmIChbICdzdmcnLCAnc3ltYm9sJyBdLmluY2x1ZGVzKHBhcmVudC5ub2RlTmFtZSkpIHtcbiAgICAgICAgcmV0dXJuIHBhcmVudFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbFxuICB9XG59XG4iLCAiZXhwb3J0IGNsYXNzIFNWR1BvaW50IHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHRoaXMueCA9IDBcbiAgICB0aGlzLnkgPSAwXG4gIH1cblxuICBtYXRyaXhUcmFuc2Zvcm0gKG0pIHtcbiAgICB2YXIgciA9IG5ldyBTVkdQb2ludCgpXG4gICAgci54ID0gbS5hICogdGhpcy54ICsgbS5jICogdGhpcy55ICsgbS5lICogMVxuICAgIHIueSA9IG0uYiAqIHRoaXMueCArIG0uZCAqIHRoaXMueSArIG0uZiAqIDFcbiAgICByZXR1cm4gclxuICB9XG59XG4iLCAiaW1wb3J0IHsgU1ZHUG9pbnQgfSBmcm9tICcuLi9kb20vc3ZnL1NWR1BvaW50LmpzJ1xuXG5leHBvcnQgY2xhc3MgUG9pbnQge1xuICAvLyBJbml0aWFsaXplXG4gIGNvbnN0cnVjdG9yICh4LCB5KSB7XG4gICAgY29uc3QgYmFzZSA9IHsgeDogMCwgeTogMCB9XG5cbiAgICAvLyBlbnN1cmUgc291cmNlIGFzIG9iamVjdFxuICAgIGNvbnN0IHNvdXJjZSA9IEFycmF5LmlzQXJyYXkoeClcbiAgICAgID8geyB4OiB4WzBdLCB5OiB4WzFdIH1cbiAgICAgIDogdHlwZW9mIHggPT09ICdvYmplY3QnXG4gICAgICAgID8geyB4OiB4LngsIHk6IHgueSB9XG4gICAgICAgIDogeCAhPSBudWxsXG4gICAgICAgICAgPyB7IHg6IHgsIHk6ICh5ICE9IG51bGwgPyB5IDogeCkgfVxuICAgICAgICAgIDogYmFzZSAvLyBJZiB5IGhhcyBubyB2YWx1ZSwgdGhlbiB4IGlzIHVzZWQgaGFzIGl0cyB2YWx1ZVxuXG4gICAgLy8gbWVyZ2Ugc291cmNlXG4gICAgdGhpcy54ID0gc291cmNlLnhcbiAgICB0aGlzLnkgPSBzb3VyY2UueVxuICB9XG5cbiAgYWJzICgpIHtcbiAgICByZXR1cm4gTWF0aC5zcXJ0KHRoaXMuYWJzUXVhZCgpKVxuICB9XG5cbiAgYWJzUXVhZCAoKSB7XG4gICAgcmV0dXJuIHRoaXMueCAqIHRoaXMueCArIHRoaXMueSAqIHRoaXMueVxuICB9XG5cbiAgYWRkICh4LCB5KSB7XG4gICAgY29uc3QgcCA9IG5ldyBQb2ludCh4LCB5KVxuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcy54ICsgcC54LCB0aGlzLnkgKyBwLnkpXG4gIH1cblxuICBhbmdsZVRvIChwKSB7XG4gICAgbGV0IHNpZ24gPSBNYXRoLnNpZ24odGhpcy54ICogcC55IC0gdGhpcy55ICogcC54KVxuICAgIHNpZ24gPSBzaWduIHx8IDFcbiAgICByZXR1cm4gc2lnbiAqIE1hdGguYWNvcyhNYXRoLnJvdW5kKCh0aGlzLmRvdChwKSAvICh0aGlzLmFicygpICogcC5hYnMoKSkpICogMTAwMDAwMCkgLyAxMDAwMDAwKVxuICB9XG5cbiAgLy8gQ2xvbmUgcG9pbnRcbiAgY2xvbmUgKCkge1xuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcylcbiAgfVxuXG4gIGNsb3NlVG8gKHAsIGV0YSA9IDAuMDAwMDEpIHtcbiAgICByZXR1cm4gdGhpcy5lcXVhbHMocCkgfHwgKE1hdGguYWJzKHRoaXMueCAtIHAueCkgPCBldGEgJiYgTWF0aC5hYnModGhpcy55IC0gcC55KSA8IGV0YSlcbiAgfVxuXG4gIGRpdiAoZmFjdG9yKSB7XG4gICAgcmV0dXJuIG5ldyBQb2ludCh0aGlzLnggLyBmYWN0b3IsIHRoaXMueSAvIGZhY3RvcilcbiAgfVxuXG4gIGRvdCAocCkge1xuICAgIHJldHVybiB0aGlzLnggKiBwLnggKyB0aGlzLnkgKiBwLnlcbiAgfVxuXG4gIGVxdWFscyAocCkge1xuICAgIHJldHVybiB0aGlzLnggPT09IHAueCAmJiB0aGlzLnkgPT09IHAueVxuICB9XG5cbiAgbXVsIChmYWN0b3IpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMueCAqIGZhY3RvciwgdGhpcy55ICogZmFjdG9yKVxuICB9XG5cbiAgLy8gQ29udmVydCB0byBuYXRpdmUgU1ZHUG9pbnRcbiAgbmF0aXZlICgpIHtcbiAgICAvLyBjcmVhdGUgbmV3IHBvaW50XG4gICAgY29uc3QgcG9pbnQgPSBuZXcgU1ZHUG9pbnQoKVxuXG4gICAgLy8gdXBkYXRlIHdpdGggY3VycmVudCB2YWx1ZXNcbiAgICBwb2ludC54ID0gdGhpcy54XG4gICAgcG9pbnQueSA9IHRoaXMueVxuXG4gICAgcmV0dXJuIHBvaW50XG4gIH1cblxuICBub3JtYWwgKCkge1xuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcy55LCAtdGhpcy54KVxuICB9XG5cbiAgbm9ybWFsaXplICgpIHtcbiAgICBjb25zdCBhYnMgPSB0aGlzLmFicygpXG4gICAgaWYgKCFhYnMpIHRocm93IG5ldyBFcnJvcignQ2FuXFwndCBub3JtYWxpemUgdmVjdG9yIG9mIHplcm8gbGVuZ3RoJylcbiAgICByZXR1cm4gdGhpcy5kaXYoYWJzKVxuICB9XG5cbiAgcmVmbGVjdEF0IChwKSB7XG4gICAgcmV0dXJuIHAuYWRkKHAuc3ViKHRoaXMpKVxuICB9XG5cbiAgc3ViICh4LCB5KSB7XG4gICAgY29uc3QgcCA9IG5ldyBQb2ludCh4LCB5KVxuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcy54IC0gcC54LCB0aGlzLnkgLSBwLnkpXG4gIH1cblxuICB0b0FycmF5ICgpIHtcbiAgICByZXR1cm4gWyB0aGlzLngsIHRoaXMueSBdXG4gIH1cblxuICB0b1BhdGggKCkge1xuICAgIHJldHVybiBbICdNJywgdGhpcy54LCB0aGlzLnkgXS5qb2luKCcgJylcbiAgfVxuXG4gIC8vIHRyYW5zZm9ybSBwb2ludCB3aXRoIG1hdHJpeFxuICB0cmFuc2Zvcm0gKG1hdHJpeCkge1xuICAgIHJldHVybiBuZXcgUG9pbnQodGhpcy5uYXRpdmUoKS5tYXRyaXhUcmFuc2Zvcm0obWF0cml4KSlcbiAgfVxuXG4gIHRyYW5zZm9ybU8gKG1hdHJpeCkge1xuICAgIGNvbnN0IHsgeCwgeSB9ID0gdGhpcy5uYXRpdmUoKS5tYXRyaXhUcmFuc2Zvcm0obWF0cml4KVxuICAgIHRoaXMueCA9IHhcbiAgICB0aGlzLnkgPSB5XG4gIH1cblxufVxuIiwgImltcG9ydCAqIGFzIHJlZ2V4IGZyb20gJy4uL3V0aWxzL3JlZ2V4LmpzJ1xuaW1wb3J0IHsgUG9pbnQgfSBmcm9tICcuL1BvaW50LmpzJ1xuXG5leHBvcnQgY2xhc3MgQm94IHtcbiAgY29uc3RydWN0b3IgKHNvdXJjZSkge1xuICAgIHZhciBiYXNlID0gWyAwLCAwLCAwLCAwIF1cbiAgICBzb3VyY2UgPSB0eXBlb2Ygc291cmNlID09PSAnc3RyaW5nJyA/IHNvdXJjZS5zcGxpdChyZWdleC5kZWxpbWl0ZXIpLm1hcChwYXJzZUZsb2F0KVxuICAgICAgOiBBcnJheS5pc0FycmF5KHNvdXJjZSkgPyBzb3VyY2VcbiAgICAgIDogdHlwZW9mIHNvdXJjZSA9PT0gJ29iamVjdCcgPyBbXG4gICAgICAgIHNvdXJjZS5sZWZ0ICE9IG51bGwgPyBzb3VyY2UubGVmdCA6IHNvdXJjZS54LFxuICAgICAgICBzb3VyY2UudG9wICE9IG51bGwgPyBzb3VyY2UudG9wIDogc291cmNlLnksXG4gICAgICAgIHNvdXJjZS53aWR0aCxcbiAgICAgICAgc291cmNlLmhlaWdodFxuICAgICAgXVxuICAgICAgOiBhcmd1bWVudHMubGVuZ3RoID09PSA0ID8gW10uc2xpY2UuY2FsbChhcmd1bWVudHMpXG4gICAgICA6IGJhc2VcblxuICAgIHRoaXMueCA9IHRoaXMubGVmdCA9IHNvdXJjZVswXVxuICAgIHRoaXMueSA9IHRoaXMudG9wID0gc291cmNlWzFdXG4gICAgdGhpcy53aWR0aCA9IHNvdXJjZVsyXVxuICAgIHRoaXMuaGVpZ2h0ID0gc291cmNlWzNdXG4gICAgdGhpcy5yaWdodCA9IHRoaXMubGVmdCArIHRoaXMud2lkdGhcbiAgICB0aGlzLmJvdHRvbSA9IHRoaXMudG9wICsgdGhpcy5oZWlnaHRcbiAgfVxuXG4gIC8vIE1lcmdlIHJlY3QgYm94IHdpdGggYW5vdGhlciwgcmV0dXJuIGEgbmV3IGluc3RhbmNlXG4gIG1lcmdlIChib3gpIHtcbiAgICBpZiAoYm94IGluc3RhbmNlb2YgTm9Cb3gpIHJldHVybiBuZXcgQm94KHRoaXMpXG5cbiAgICB2YXIgeCA9IE1hdGgubWluKHRoaXMueCwgYm94LngpXG4gICAgdmFyIHkgPSBNYXRoLm1pbih0aGlzLnksIGJveC55KVxuXG4gICAgcmV0dXJuIG5ldyBCb3goXG4gICAgICB4LCB5LFxuICAgICAgTWF0aC5tYXgodGhpcy54ICsgdGhpcy53aWR0aCwgYm94LnggKyBib3gud2lkdGgpIC0geCxcbiAgICAgIE1hdGgubWF4KHRoaXMueSArIHRoaXMuaGVpZ2h0LCBib3gueSArIGJveC5oZWlnaHQpIC0geVxuICAgIClcbiAgfVxuXG4gIHRyYW5zZm9ybSAobSkge1xuICAgIHZhciB4TWluID0gSW5maW5pdHlcbiAgICB2YXIgeE1heCA9IC1JbmZpbml0eVxuICAgIHZhciB5TWluID0gSW5maW5pdHlcbiAgICB2YXIgeU1heCA9IC1JbmZpbml0eVxuXG4gICAgdmFyIHB0cyA9IFtcbiAgICAgIG5ldyBQb2ludCh0aGlzLngsIHRoaXMueSksXG4gICAgICBuZXcgUG9pbnQodGhpcy54ICsgdGhpcy53aWR0aCwgdGhpcy55KSxcbiAgICAgIG5ldyBQb2ludCh0aGlzLngsIHRoaXMueSArIHRoaXMuaGVpZ2h0KSxcbiAgICAgIG5ldyBQb2ludCh0aGlzLnggKyB0aGlzLndpZHRoLCB0aGlzLnkgKyB0aGlzLmhlaWdodClcbiAgICBdXG5cbiAgICBwdHMuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgcCA9IHAudHJhbnNmb3JtKG0pXG4gICAgICB4TWluID0gTWF0aC5taW4oeE1pbiwgcC54KVxuICAgICAgeE1heCA9IE1hdGgubWF4KHhNYXgsIHAueClcbiAgICAgIHlNaW4gPSBNYXRoLm1pbih5TWluLCBwLnkpXG4gICAgICB5TWF4ID0gTWF0aC5tYXgoeU1heCwgcC55KVxuICAgIH0pXG5cbiAgICByZXR1cm4gbmV3IEJveChcbiAgICAgIHhNaW4sIHlNaW4sXG4gICAgICB4TWF4IC0geE1pbixcbiAgICAgIHlNYXggLSB5TWluXG4gICAgKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOb0JveCBleHRlbmRzIEJveCB7XG4gIC8vIE5vQm94IGhhcyBubyB2YWxpZCB2YWx1ZXMgc28gaXQgY2FudCBiZSBtZXJnZWRcbiAgbWVyZ2UgKGJveCkge1xuICAgIHJldHVybiBib3ggaW5zdGFuY2VvZiBOb0JveCA/IG5ldyBOb0JveCgpIDogbmV3IEJveChib3gpXG4gIH1cblxuICB0cmFuc2Zvcm0gKG0pIHtcbiAgICByZXR1cm4gbmV3IE5vQm94KClcbiAgfVxufVxuIiwgImNvbnN0IHJhZGlhbnMgPSBmdW5jdGlvbiAoZCkge1xuICByZXR1cm4gZCAlIDM2MCAqIE1hdGguUEkgLyAxODBcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1hdHJpeEZhY3RvcnkgKGEsIGIsIGMsIGQsIGUsIGYpIHtcbiAgdmFyIHIgPSBuZXcgU1ZHTWF0cml4KClcbiAgci5hID0gYVxuICByLmIgPSBiXG4gIHIuYyA9IGNcbiAgci5kID0gZFxuICByLmUgPSBlXG4gIHIuZiA9IGZcbiAgcmV0dXJuIHJcbn1cblxuZXhwb3J0IGNsYXNzIFNWR01hdHJpeCB7XG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICB0aGlzLmEgPSB0aGlzLmQgPSAxXG4gICAgdGhpcy5iID0gdGhpcy5jID0gdGhpcy5lID0gdGhpcy5mID0gMFxuICB9XG5cbiAgaW52ZXJzZSAoKSB7XG4gICAgLy8gR2V0IHRoZSBjdXJyZW50IHBhcmFtZXRlcnMgb3V0IG9mIHRoZSBtYXRyaXhcbiAgICB2YXIgYSA9IHRoaXMuYVxuICAgIHZhciBiID0gdGhpcy5iXG4gICAgdmFyIGMgPSB0aGlzLmNcbiAgICB2YXIgZCA9IHRoaXMuZFxuICAgIHZhciBlID0gdGhpcy5lXG4gICAgdmFyIGYgPSB0aGlzLmZcblxuICAgIC8vIEludmVydCB0aGUgMngyIG1hdHJpeCBpbiB0aGUgdG9wIGxlZnRcbiAgICB2YXIgZGV0ID0gYSAqIGQgLSBiICogY1xuICAgIGlmICghZGV0KSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBpbnZlcnQgJyArIHRoaXMpXG5cbiAgICAvLyBDYWxjdWxhdGUgdGhlIHRvcCAyeDIgbWF0cml4XG4gICAgdmFyIG5hID0gZCAvIGRldFxuICAgIHZhciBuYiA9IC1iIC8gZGV0XG4gICAgdmFyIG5jID0gLWMgLyBkZXRcbiAgICB2YXIgbmQgPSBhIC8gZGV0XG5cbiAgICAvLyBBcHBseSB0aGUgaW52ZXJ0ZWQgbWF0cml4IHRvIHRoZSB0b3AgcmlnaHRcbiAgICB2YXIgbmUgPSAtKG5hICogZSArIG5jICogZilcbiAgICB2YXIgbmYgPSAtKG5iICogZSArIG5kICogZilcblxuICAgIC8vIENvbnN0cnVjdCB0aGUgaW52ZXJ0ZWQgbWF0cml4XG4gICAgdGhpcy5hID0gbmFcbiAgICB0aGlzLmIgPSBuYlxuICAgIHRoaXMuYyA9IG5jXG4gICAgdGhpcy5kID0gbmRcbiAgICB0aGlzLmUgPSBuZVxuICAgIHRoaXMuZiA9IG5mXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgbXVsdGlwbHkgKG0pIHtcbiAgICB2YXIgciA9IG5ldyBTVkdNYXRyaXgoKVxuICAgIHIuYSA9IHRoaXMuYSAqIG0uYSArIHRoaXMuYyAqIG0uYiArIHRoaXMuZSAqIDBcbiAgICByLmIgPSB0aGlzLmIgKiBtLmEgKyB0aGlzLmQgKiBtLmIgKyB0aGlzLmYgKiAwXG4gICAgci5jID0gdGhpcy5hICogbS5jICsgdGhpcy5jICogbS5kICsgdGhpcy5lICogMFxuICAgIHIuZCA9IHRoaXMuYiAqIG0uYyArIHRoaXMuZCAqIG0uZCArIHRoaXMuZiAqIDBcbiAgICByLmUgPSB0aGlzLmEgKiBtLmUgKyB0aGlzLmMgKiBtLmYgKyB0aGlzLmUgKiAxXG4gICAgci5mID0gdGhpcy5iICogbS5lICsgdGhpcy5kICogbS5mICsgdGhpcy5mICogMVxuICAgIHJldHVybiByXG4gIH1cblxuICByb3RhdGUgKHIsIHgsIHkpIHtcbiAgICByID0gciAlIDM2MCAqIE1hdGguUEkgLyAxODBcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBseShtYXRyaXhGYWN0b3J5KFxuICAgICAgTWF0aC5jb3MociksXG4gICAgICBNYXRoLnNpbihyKSxcbiAgICAgIC1NYXRoLnNpbihyKSxcbiAgICAgIE1hdGguY29zKHIpLFxuICAgICAgeCA/IC1NYXRoLmNvcyhyKSAqIHggKyBNYXRoLnNpbihyKSAqIHkgKyB4IDogMCxcbiAgICAgIHkgPyAtTWF0aC5zaW4ocikgKiB4IC0gTWF0aC5jb3MocikgKiB5ICsgeSA6IDBcbiAgICApKVxuICB9XG5cbiAgc2NhbGUgKHNjYWxlWCwgc2NhbGVZID0gc2NhbGVYKSB7XG4gICAgcmV0dXJuIHRoaXMubXVsdGlwbHkobWF0cml4RmFjdG9yeShzY2FsZVgsIDAsIDAsIHNjYWxlWSwgMCwgMCkpXG4gIH1cblxuICBza2V3ICh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMubXVsdGlwbHkobWF0cml4RmFjdG9yeSgxLCBNYXRoLnRhbihyYWRpYW5zKHkpKSwgTWF0aC50YW4ocmFkaWFucyh4KSksIDEsIDAsIDApKVxuICB9XG5cbiAgc2tld1ggKHgpIHtcbiAgICByZXR1cm4gdGhpcy5za2V3KHgsIDApXG4gIH1cblxuICBza2V3WSAoeSkge1xuICAgIHJldHVybiB0aGlzLnNrZXcoMCwgeSlcbiAgfVxuXG4gIHRvU3RyaW5nICgpIHtcbiAgICByZXR1cm4gJ1NWR01hdHJpeCdcbiAgfVxuXG4gIHRyYW5zbGF0ZSAoeCA9IDAsIHkgPSAwKSB7XG4gICAgcmV0dXJuIHRoaXMubXVsdGlwbHkobWF0cml4RmFjdG9yeSgxLCAwLCAwLCAxLCB4LCB5KSlcbiAgfVxuXG59XG4iLCAiaW1wb3J0IHsgQm94LCBOb0JveCB9IGZyb20gJy4uL290aGVyL0JveC5qcydcblxuZXhwb3J0IGNsYXNzIFBvaW50Q2xvdWQgZXh0ZW5kcyBBcnJheSB7XG4gIGNvbnN0cnVjdG9yICguLi5hcmdzKSB7XG4gICAgaWYgKGFyZ3MubGVuZ3RoID09PSAxICYmIHR5cGVvZiBhcmdzWzBdID09PSAnbnVtYmVyJykge1xuICAgICAgc3VwZXIoYXJncy5zaGlmdCgpKVxuICAgIH0gZWxzZSB7XG4gICAgICBzdXBlcigpXG4gICAgfVxuXG4gICAgLy8gZXhjZXB0IG11bHRpcGxlIHBvaW50IGFycmF5cyBhcyBpbnB1dCBhbmQgbWVyZ2UgdGhlbSBpbnRvIG9uZVxuICAgIGFyZ3MucmVkdWNlKChsYXN0LCBjdXJyKSA9PiB7XG4gICAgICBsYXN0LnB1c2goLi4uY3VycilcbiAgICAgIHJldHVybiB0aGlzXG4gICAgfSwgdGhpcylcbiAgfVxuXG4gIGJib3ggKCkge1xuICAgIGlmICghdGhpcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBuZXcgTm9Cb3goKVxuICAgIH1cblxuICAgIGxldCB4TWluID0gSW5maW5pdHlcbiAgICBsZXQgeE1heCA9IC1JbmZpbml0eVxuICAgIGxldCB5TWluID0gSW5maW5pdHlcbiAgICBsZXQgeU1heCA9IC1JbmZpbml0eVxuXG4gICAgdGhpcy5mb3JFYWNoKGZ1bmN0aW9uIChwKSB7XG4gICAgICB4TWluID0gTWF0aC5taW4oeE1pbiwgcC54KVxuICAgICAgeE1heCA9IE1hdGgubWF4KHhNYXgsIHAueClcbiAgICAgIHlNaW4gPSBNYXRoLm1pbih5TWluLCBwLnkpXG4gICAgICB5TWF4ID0gTWF0aC5tYXgoeU1heCwgcC55KVxuICAgIH0pXG5cbiAgICByZXR1cm4gbmV3IEJveChcbiAgICAgIHhNaW4sIHlNaW4sXG4gICAgICB4TWF4IC0geE1pbixcbiAgICAgIHlNYXggLSB5TWluXG4gICAgKVxuICB9XG5cbiAgbWVyZ2UgKGNsb3VkKSB7XG4gICAgcmV0dXJuIG5ldyBQb2ludENsb3VkKHRoaXMsIGNsb3VkKVxuICB9XG5cbiAgdHJhbnNmb3JtIChtKSB7XG4gICAgcmV0dXJuIG5ldyBQb2ludENsb3VkKHRoaXMubWFwKChwKSA9PiBwLnRyYW5zZm9ybShtKSkpXG4gIH1cblxufVxuIiwgImltcG9ydCB7IEJveCwgTm9Cb3ggfSBmcm9tICcuLi9vdGhlci9Cb3guanMnXG5pbXBvcnQgeyBQb2ludCB9IGZyb20gJy4uL290aGVyL1BvaW50LmpzJ1xuaW1wb3J0ICogYXMgcmVnZXggZnJvbSAnLi9yZWdleC5qcydcbi8vIFRPRE86IHVzZSBvd24gbWF0cml4IGltcGxlbWVudGF0aW9uXG5pbXBvcnQgeyBtYXRyaXhGYWN0b3J5IH0gZnJvbSAnLi8uLi9kb20vc3ZnL1NWR01hdHJpeC5qcydcbmltcG9ydCB7IFBvaW50Q2xvdWQgfSBmcm9tICcuL1BvaW50Q2xvdWQuanMnXG5cbmNvbnN0IHBhdGhIYW5kbGVycyA9IHtcbiAgTSAoYywgcCwgciwgcDApIHtcbiAgICBwLnggPSBwMC54ID0gY1swXVxuICAgIHAueSA9IHAwLnkgPSBjWzFdXG5cbiAgICByZXR1cm4gbmV3IE1vdmUocClcbiAgfSxcbiAgTCAoYywgcCkge1xuICAgIGNvbnN0IHJldCA9IG5ldyBMaW5lKHAueCwgcC55LCBjWzBdLCBjWzFdKS8vIC5vZmZzZXQobylcbiAgICBwLnggPSBjWzBdXG4gICAgcC55ID0gY1sxXVxuICAgIHJldHVybiByZXRcbiAgfSxcbiAgSCAoYywgcCkge1xuICAgIHJldHVybiBwYXRoSGFuZGxlcnMuTChbIGNbMF0sIHAueSBdLCBwKVxuICB9LFxuICBWIChjLCBwKSB7XG4gICAgcmV0dXJuIHBhdGhIYW5kbGVycy5MKFsgcC54LCBjWzBdIF0sIHApXG4gIH0sXG4gIFEgKGMsIHAsIHIpIHtcbiAgICBjb25zdCByZXQgPSBDdWJpYy5mcm9tUXVhZChwLCBuZXcgUG9pbnQoY1swXSwgY1sxXSksIG5ldyBQb2ludChjWzJdLCBjWzNdKSkvLyAub2Zmc2V0KG8pXG4gICAgcC54ID0gY1syXVxuICAgIHAueSA9IGNbM11cblxuICAgIGNvbnN0IHJlZmxlY3QgPSBuZXcgUG9pbnQoY1swXSwgY1sxXSkucmVmbGVjdEF0KHApXG4gICAgci54ID0gcmVmbGVjdC54XG4gICAgci55ID0gcmVmbGVjdC55XG5cbiAgICByZXR1cm4gcmV0XG4gIH0sXG4gIFQgKGMsIHAsIHIsIHAwLCByZWZsZWN0aW9uSXNQb3NzaWJsZSkge1xuICAgIGlmIChyZWZsZWN0aW9uSXNQb3NzaWJsZSkgeyBjID0gWyByLngsIHIueSBdLmNvbmNhdChjKSB9IGVsc2UgeyBjID0gWyBwLngsIHAueSBdLmNvbmNhdChjKSB9XG4gICAgcmV0dXJuIHBhdGhIYW5kbGVycy5RKGMsIHAsIHIpXG4gIH0sXG4gIEMgKGMsIHAsIHIpIHtcbiAgICBjb25zdCByZXQgPSBuZXcgQ3ViaWMocCwgbmV3IFBvaW50KGNbMF0sIGNbMV0pLCBuZXcgUG9pbnQoY1syXSwgY1szXSksIG5ldyBQb2ludChjWzRdLCBjWzVdKSkvLyAub2Zmc2V0KG8pXG4gICAgcC54ID0gY1s0XVxuICAgIHAueSA9IGNbNV1cbiAgICBjb25zdCByZWZsZWN0ID0gbmV3IFBvaW50KGNbMl0sIGNbM10pLnJlZmxlY3RBdChwKVxuICAgIHIueCA9IHJlZmxlY3QueFxuICAgIHIueSA9IHJlZmxlY3QueVxuICAgIHJldHVybiByZXRcbiAgfSxcbiAgUyAoYywgcCwgciwgcDAsIHJlZmxlY3Rpb25Jc1Bvc3NpYmxlKSB7XG4gICAgLy8gcmVmbGVjdGlvbiBtYWtlcyBvbmx5IHNlbnNlIGlmIHRoaXMgY29tbWFuZCB3YXMgcHJlY2VlZGVkIGJ5IGFub3RoZXIgYmV6aWVyZSBjb21tYW5kIChRVFNDKVxuICAgIGlmIChyZWZsZWN0aW9uSXNQb3NzaWJsZSkgeyBjID0gWyByLngsIHIueSBdLmNvbmNhdChjKSB9IGVsc2UgeyBjID0gWyBwLngsIHAueSBdLmNvbmNhdChjKSB9XG4gICAgcmV0dXJuIHBhdGhIYW5kbGVycy5DKGMsIHAsIHIpXG4gIH0sXG4gIFogKGMsIHAsIHIsIHAwKSB7XG4gICAgLy8gRklYTUU6IFRoZSBiZWhhdmlvciBvZiBaIGRlcGVuZHMgb24gdGhlIGNvbW1hbmQgYmVmb3JlXG4gICAgcmV0dXJuIHBhdGhIYW5kbGVycy5MKFsgcDAueCwgcDAueSBdLCBwKVxuICB9LFxuICBBIChjLCBwLCBfcikge1xuICAgIGNvbnN0IHJldCA9IG5ldyBBcmMocCwgbmV3IFBvaW50KGNbNV0sIGNbNl0pLCBjWzBdLCBjWzFdLCBjWzJdLCBjWzNdLCBjWzRdKVxuICAgIHAueCA9IGNbNV1cbiAgICBwLnkgPSBjWzZdXG4gICAgcmV0dXJuIHJldFxuICB9XG59XG5cbmNvbnN0IG1saHZxdGNzYSA9ICdtbGh2cXRjc2F6Jy5zcGxpdCgnJylcblxuZm9yIChsZXQgaSA9IDAsIGlsID0gbWxodnF0Y3NhLmxlbmd0aDsgaSA8IGlsOyArK2kpIHtcbiAgcGF0aEhhbmRsZXJzW21saHZxdGNzYVtpXV0gPSAoZnVuY3Rpb24gKGkpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gKGMsIHAsIHIsIHAwLCByZWZsZWN0aW9uSXNQb3NzaWJsZSkge1xuICAgICAgaWYgKGkgPT09ICdIJykgY1swXSA9IGNbMF0gKyBwLnhcbiAgICAgIGVsc2UgaWYgKGkgPT09ICdWJykgY1swXSA9IGNbMF0gKyBwLnlcbiAgICAgIGVsc2UgaWYgKGkgPT09ICdBJykge1xuICAgICAgICBjWzVdID0gY1s1XSArIHAueFxuICAgICAgICBjWzZdID0gY1s2XSArIHAueVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDAsIGpsID0gYy5sZW5ndGg7IGogPCBqbDsgKytqKSB7XG4gICAgICAgICAgY1tqXSA9IGNbal0gKyAoaiAlIDIgPyBwLnkgOiBwLngpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHBhdGhIYW5kbGVyc1tpXShjLCBwLCByLCBwMCwgcmVmbGVjdGlvbklzUG9zc2libGUpXG4gICAgfVxuICB9KShtbGh2cXRjc2FbaV0udG9VcHBlckNhc2UoKSlcbn1cblxuZnVuY3Rpb24gcGF0aFJlZ1JlcGxhY2UgKGEsIGIsIGMsIGQpIHtcbiAgcmV0dXJuIGMgKyBkLnJlcGxhY2UocmVnZXguZG90cywgJyAuJylcbn1cblxuZnVuY3Rpb24gaXNCZXppZXJlIChvYmopIHtcbiAgcmV0dXJuIG9iaiBpbnN0YW5jZW9mIEN1YmljXG59XG5cbmV4cG9ydCBjb25zdCBwYXRoUGFyc2VyID0gKGFycmF5KSA9PiB7XG5cbiAgaWYgKCFhcnJheSkgcmV0dXJuIFtdXG5cbiAgLy8gcHJlcGFyZSBmb3IgcGFyc2luZ1xuICBjb25zdCBwYXJhbUNudCA9IHsgTTogMiwgTDogMiwgSDogMSwgVjogMSwgQzogNiwgUzogNCwgUTogNCwgVDogMiwgQTogNywgWjogMCB9XG5cbiAgYXJyYXkgPSBhcnJheVxuICAgIC5yZXBsYWNlKHJlZ2V4Lm51bWJlcnNXaXRoRG90cywgcGF0aFJlZ1JlcGxhY2UpIC8vIGNvbnZlcnQgNDUuMTIzLjEyMyB0byA0NS4xMjMgLjEyM1xuICAgIC5yZXBsYWNlKHJlZ2V4LnBhdGhMZXR0ZXJzLCAnICQmICcpIC8vIHB1dCBzb21lIHJvb20gYmV0d2VlbiBsZXR0ZXJzIGFuZCBudW1iZXJzXG4gICAgLnJlcGxhY2UocmVnZXguaHlwaGVuLCAnJDEgLScpIC8vIGFkZCBzcGFjZSBiZWZvcmUgaHlwaGVuXG4gICAgLnRyaW0oKSAvLyB0cmltXG4gICAgLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikgLy8gc3BsaXQgaW50byBhcnJheVxuXG4gIC8vIGFycmF5IG5vdyBpcyBhbiBhcnJheSBjb250YWluaW5nIGFsbCBwYXJ0cyBvZiBhIHBhdGggZS5nLiBbJ00nLCAnMCcsICcwJywgJ0wnLCAnMzAnLCAnMzAnIC4uLl1cbiAgY29uc3QgYXJyID0gW11cbiAgY29uc3QgcCA9IG5ldyBQb2ludCgpXG4gIGNvbnN0IHAwID0gbmV3IFBvaW50KClcbiAgY29uc3QgciA9IG5ldyBQb2ludCgpXG4gIGxldCBpbmRleCA9IDBcbiAgY29uc3QgbGVuID0gYXJyYXkubGVuZ3RoXG4gIGxldCBzXG5cbiAgZG8ge1xuICAgIC8vIFRlc3QgaWYgd2UgaGF2ZSBhIHBhdGggbGV0dGVyXG4gICAgaWYgKHJlZ2V4LmlzUGF0aExldHRlci50ZXN0KGFycmF5W2luZGV4XSkpIHtcbiAgICAgIHMgPSBhcnJheVtpbmRleF1cbiAgICAgICsraW5kZXhcbiAgICAvLyBJZiBsYXN0IGxldHRlciB3YXMgYSBtb3ZlIGNvbW1hbmQgYW5kIHdlIGdvdCBubyBuZXcsIGl0IGRlZmF1bHRzIHRvIFtMXWluZVxuICAgIH0gZWxzZSBpZiAocyA9PT0gJ00nKSB7XG4gICAgICBzID0gJ0wnXG4gICAgfSBlbHNlIGlmIChzID09PSAnbScpIHtcbiAgICAgIHMgPSAnbCdcbiAgICB9XG5cbiAgICBhcnIucHVzaChcbiAgICAgIHBhdGhIYW5kbGVyc1tzXS5jYWxsKG51bGwsXG4gICAgICAgIGFycmF5LnNsaWNlKGluZGV4LCAoaW5kZXggPSBpbmRleCArIHBhcmFtQ250W3MudG9VcHBlckNhc2UoKV0pKS5tYXAocGFyc2VGbG9hdCksXG4gICAgICAgIHAsIHIsIHAwLFxuICAgICAgICBpc0JlemllcmUoYXJyW2Fyci5sZW5ndGggLSAxXSlcbiAgICAgIClcbiAgICApXG5cbiAgfSB3aGlsZSAobGVuID4gaW5kZXgpXG5cbiAgcmV0dXJuIGFyclxufVxuXG5jbGFzcyBNb3ZlIHtcbiAgY29uc3RydWN0b3IgKHApIHtcbiAgICB0aGlzLnAxID0gcC5jbG9uZSgpXG4gIH1cblxuICAvLyBGSVhNRTogVXNlIHBvaW50Y2xvdWRcbiAgYmJveCAoKSB7XG4gICAgY29uc3QgcCA9IHRoaXMucDFcbiAgICByZXR1cm4gbmV3IEJveChwLngsIHAueSwgMCwgMClcbiAgfVxuXG4gIGdldENsb3VkICgpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50Q2xvdWQoWyB0aGlzLnAxIF0pXG4gIH1cblxuICBsZW5ndGggKCkgeyByZXR1cm4gMCB9XG5cbiAgdG9QYXRoICgpIHtcbiAgICByZXR1cm4gWyAnTScsIHRoaXMucDEueCwgdGhpcy5wMS55IF0uam9pbignICcpXG4gIH1cblxuICB0b1BhdGhGcmFnbWVudCAoKSB7XG4gICAgcmV0dXJuIFsgJ00nLCB0aGlzLnAxLngsIHRoaXMucDEueSBdXG4gIH1cblxuICB0cmFuc2Zvcm0gKG1hdHJpeCkge1xuICAgIHRoaXMucDEudHJhbnNmb3JtTyhtYXRyaXgpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXJjIHtcbiAgY29uc3RydWN0b3IgKHAxLCBwMiwgcngsIHJ5LCBcdTAzQzYsIGFyYywgc3dlZXApIHtcbiAgICAvLyBodHRwczovL3d3dy53My5vcmcvVFIvU1ZHL2ltcGxub3RlLmh0bWwjQXJjQ29ycmVjdGlvbk91dE9mUmFuZ2VSYWRpaVxuICAgIGlmICghcnggfHwgIXJ5KSByZXR1cm4gbmV3IExpbmUocDEsIHAyKVxuXG4gICAgcnggPSBNYXRoLmFicyhyeClcbiAgICByeSA9IE1hdGguYWJzKHJ5KVxuXG4gICAgdGhpcy5wMSA9IHAxLmNsb25lKClcbiAgICB0aGlzLnAyID0gcDIuY2xvbmUoKVxuICAgIHRoaXMuYXJjID0gYXJjID8gMSA6IDBcbiAgICB0aGlzLnN3ZWVwID0gc3dlZXAgPyAxIDogMFxuXG4gICAgLy8gQ2FsY3VsYXRlIGNvcyBhbmQgc2luIG9mIGFuZ2xlIHBoaVxuICAgIGNvbnN0IGNvc1x1MDNDNiA9IE1hdGguY29zKFx1MDNDNiAvIDE4MCAqIE1hdGguUEkpXG4gICAgY29uc3Qgc2luXHUwM0M2ID0gTWF0aC5zaW4oXHUwM0M2IC8gMTgwICogTWF0aC5QSSlcblxuICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9TVkcvaW1wbG5vdGUuaHRtbCNBcmNDb252ZXJzaW9uRW5kcG9pbnRUb0NlbnRlclxuICAgIC8vIChlcS4gNS4xKVxuICAgIGNvbnN0IHAxXyA9IG5ldyBQb2ludChcbiAgICAgIChwMS54IC0gcDIueCkgLyAyLFxuICAgICAgKHAxLnkgLSBwMi55KSAvIDJcbiAgICApLnRyYW5zZm9ybShtYXRyaXhGYWN0b3J5KFxuICAgICAgY29zXHUwM0M2LCAtc2luXHUwM0M2LCBzaW5cdTAzQzYsIGNvc1x1MDNDNiwgMCwgMFxuICAgICkpXG5cbiAgICAvLyAoZXEuIDYuMilcbiAgICAvLyBNYWtlIHN1cmUgdGhlIHJhZGl1cyBmaXQgd2l0aCB0aGUgYXJjIGFuZCBjb3JyZWN0IGlmIG5lY2Nlc3NhcnlcbiAgICBjb25zdCByYXRpbyA9IChwMV8ueCAqKiAyIC8gcnggKiogMikgKyAocDFfLnkgKiogMiAvIHJ5ICoqIDIpXG5cbiAgICAvLyAoZXEuIDYuMylcbiAgICBpZiAocmF0aW8gPiAxKSB7XG4gICAgICByeCA9IE1hdGguc3FydChyYXRpbykgKiByeFxuICAgICAgcnkgPSBNYXRoLnNxcnQocmF0aW8pICogcnlcbiAgICB9XG5cbiAgICAvLyAoZXEuIDUuMilcbiAgICBjb25zdCByeFF1YWQgPSByeCAqKiAyXG4gICAgY29uc3QgcnlRdWFkID0gcnkgKiogMlxuXG4gICAgY29uc3QgZGl2aXNvcjEgPSByeFF1YWQgKiBwMV8ueSAqKiAyXG4gICAgY29uc3QgZGl2aXNvcjIgPSByeVF1YWQgKiBwMV8ueCAqKiAyXG4gICAgY29uc3QgZGl2aWRlbmQgPSAocnhRdWFkICogcnlRdWFkIC0gZGl2aXNvcjEgLSBkaXZpc29yMilcblxuICAgIGxldCBjX1xuICAgIGlmIChNYXRoLmFicyhkaXZpZGVuZCkgPCAxZS0xNSkge1xuICAgICAgY18gPSBuZXcgUG9pbnQoMCwgMClcbiAgICB9IGVsc2Uge1xuICAgICAgY18gPSBuZXcgUG9pbnQoXG4gICAgICAgIHJ4ICogcDFfLnkgLyByeSxcbiAgICAgICAgLXJ5ICogcDFfLnggLyByeFxuICAgICAgKS5tdWwoTWF0aC5zcXJ0KFxuICAgICAgICBkaXZpZGVuZCAvIChkaXZpc29yMSArIGRpdmlzb3IyKVxuICAgICAgKSlcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hcmMgPT09IHRoaXMuc3dlZXApIGNfID0gY18ubXVsKC0xKVxuXG4gICAgLy8gKGVxLiA1LjMpXG4gICAgY29uc3QgYyA9IGNfLnRyYW5zZm9ybShtYXRyaXhGYWN0b3J5KFxuICAgICAgY29zXHUwM0M2LCBzaW5cdTAzQzYsIC1zaW5cdTAzQzYsIGNvc1x1MDNDNiwgMCwgMFxuICAgICkpLmFkZChuZXcgUG9pbnQoXG4gICAgICAocDEueCArIHAyLngpIC8gMixcbiAgICAgIChwMS55ICsgcDIueSkgLyAyXG4gICAgKSlcblxuICAgIGNvbnN0IGFuZ2xlUG9pbnQgPSBuZXcgUG9pbnQoXG4gICAgICAocDFfLnggLSBjXy54KSAvIHJ4LFxuICAgICAgKHAxXy55IC0gY18ueSkgLyByeVxuICAgIClcblxuICAgIC8qIEZvciBlcS4gNS40IHNlZSBhbmdsZVRvIGZ1bmN0aW9uICovXG5cbiAgICAvLyAoZXEuIDUuNSlcbiAgICBjb25zdCBcdTAzQjggPSBuZXcgUG9pbnQoMSwgMCkuYW5nbGVUbyhhbmdsZVBvaW50KVxuXG4gICAgLy8gKGVxLiA1LjYpXG4gICAgbGV0IFx1MDM5NFx1MDNCOCA9IGFuZ2xlUG9pbnQuYW5nbGVUbyhuZXcgUG9pbnQoXG4gICAgICAoLXAxXy54IC0gY18ueCkgLyByeCxcbiAgICAgICgtcDFfLnkgLSBjXy55KSAvIHJ5XG4gICAgKSlcblxuICAgIFx1MDM5NFx1MDNCOCA9IChcdTAzOTRcdTAzQjggJSAoMiAqIE1hdGguUEkpKVxuXG4gICAgaWYgKCFzd2VlcCAmJiBcdTAzOTRcdTAzQjggPiAwKSBcdTAzOTRcdTAzQjggLT0gMiAqIE1hdGguUElcbiAgICBpZiAoc3dlZXAgJiYgXHUwMzk0XHUwM0I4IDwgMCkgXHUwMzk0XHUwM0I4ICs9IDIgKiBNYXRoLlBJXG5cbiAgICB0aGlzLmMgPSBjXG4gICAgdGhpcy50aGV0YSA9IFx1MDNCOCAqIDE4MCAvIE1hdGguUElcbiAgICB0aGlzLnRoZXRhMiA9IChcdTAzQjggKyBcdTAzOTRcdTAzQjgpICogMTgwIC8gTWF0aC5QSVxuXG4gICAgdGhpcy5kZWx0YSA9IFx1MDM5NFx1MDNCOCAqIDE4MCAvIE1hdGguUElcbiAgICB0aGlzLnJ4ID0gcnhcbiAgICB0aGlzLnJ5ID0gcnlcbiAgICB0aGlzLnBoaSA9IFx1MDNDNlxuICAgIHRoaXMuY29zXHUwM0M2ID0gY29zXHUwM0M2XG4gICAgdGhpcy5zaW5cdTAzQzYgPSBzaW5cdTAzQzZcbiAgfVxuXG4gIHN0YXRpYyBmcm9tQ2VudGVyRm9ybSAoYywgcngsIHJ5LCBcdTAzQzYsIFx1MDNCOCwgXHUwMzk0XHUwM0I4KSB7XG4gICAgY29uc3QgY29zXHUwM0M2ID0gTWF0aC5jb3MoXHUwM0M2IC8gMTgwICogTWF0aC5QSSlcbiAgICBjb25zdCBzaW5cdTAzQzYgPSBNYXRoLnNpbihcdTAzQzYgLyAxODAgKiBNYXRoLlBJKVxuICAgIGNvbnN0IG0gPSBtYXRyaXhGYWN0b3J5KGNvc1x1MDNDNiwgc2luXHUwM0M2LCAtc2luXHUwM0M2LCBjb3NcdTAzQzYsIDAsIDApXG5cbiAgICBjb25zdCBwMSA9IG5ldyBQb2ludChcbiAgICAgIHJ4ICogTWF0aC5jb3MoXHUwM0I4IC8gMTgwICogTWF0aC5QSSksXG4gICAgICByeSAqIE1hdGguc2luKFx1MDNCOCAvIDE4MCAqIE1hdGguUEkpXG4gICAgKS50cmFuc2Zvcm0obSkuYWRkKGMpXG5cbiAgICBjb25zdCBwMiA9IG5ldyBQb2ludChcbiAgICAgIHJ4ICogTWF0aC5jb3MoKFx1MDNCOCArIFx1MDM5NFx1MDNCOCkgLyAxODAgKiBNYXRoLlBJKSxcbiAgICAgIHJ5ICogTWF0aC5zaW4oKFx1MDNCOCArIFx1MDM5NFx1MDNCOCkgLyAxODAgKiBNYXRoLlBJKVxuICAgICkudHJhbnNmb3JtKG0pLmFkZChjKVxuXG4gICAgY29uc3QgYXJjID0gTWF0aC5hYnMoXHUwMzk0XHUwM0I4KSA+IDE4MCA/IDEgOiAwXG4gICAgY29uc3Qgc3dlZXAgPSBcdTAzOTRcdTAzQjggPiAwID8gMSA6IDBcblxuICAgIHJldHVybiBuZXcgQXJjKHAxLCBwMiwgcngsIHJ5LCBcdTAzQzYsIGFyYywgc3dlZXApXG4gIH1cblxuICBiYm94ICgpIHtcbiAgICBjb25zdCBjbG91ZCA9IHRoaXMuZ2V0Q2xvdWQoKVxuICAgIHJldHVybiBjbG91ZC5iYm94KClcbiAgfVxuXG4gIGNsb25lICgpIHtcbiAgICByZXR1cm4gbmV3IEFyYyh0aGlzLnAxLCB0aGlzLnAyLCB0aGlzLnJ4LCB0aGlzLnJ5LCB0aGlzLnBoaSwgdGhpcy5hcmMsIHRoaXMuc3dlZXApXG4gIH1cblxuICBnZXRDbG91ZCAoKSB7XG4gICAgaWYgKHRoaXMucDEuZXF1YWxzKHRoaXMucDIpKSByZXR1cm4gbmV3IFBvaW50Q2xvdWQoWyB0aGlzLnAxIF0pXG5cbiAgICAvLyBhcmMgY291bGQgYmUgcm90YXRlZC4gdGhlIG1pbiBhbmQgbWF4IHZhbHVlcyB0aGVuIGRvbnQgbGllIG9uIG11bHRpcGxlcyBvZiA5MCBkZWdyZXNzIGJ1dCBhcmUgc2hpZnRlZCBieSB0aGUgcm90YXRpb24gYW5nbGVcbiAgICAvLyBzbyB3ZSBmaXJzdCBjYWxjdWxhdGUgb3VyIDAvOTAgZGVncmVlIGFuZ2xlXG4gICAgbGV0IFx1MDNCODAxID0gTWF0aC5hdGFuKC10aGlzLnNpblx1MDNDNiAvIHRoaXMuY29zXHUwM0M2ICogdGhpcy5yeSAvIHRoaXMucngpICogMTgwIC8gTWF0aC5QSVxuICAgIGxldCBcdTAzQjgwMiA9IE1hdGguYXRhbih0aGlzLmNvc1x1MDNDNiAvIHRoaXMuc2luXHUwM0M2ICogdGhpcy5yeSAvIHRoaXMucngpICogMTgwIC8gTWF0aC5QSVxuICAgIGxldCBcdTAzQjgxID0gdGhpcy50aGV0YVxuICAgIGxldCBcdTAzQjgyID0gdGhpcy50aGV0YTJcblxuICAgIGlmIChcdTAzQjgxIDwgMCB8fCBcdTAzQjgyIDwgMCkge1xuICAgICAgXHUwM0I4MSArPSAzNjBcbiAgICAgIFx1MDNCODIgKz0gMzYwXG4gICAgfVxuXG4gICAgaWYgKFx1MDNCODIgPCBcdTAzQjgxKSB7XG4gICAgICBjb25zdCB0ZW1wID0gXHUwM0I4MVxuICAgICAgXHUwM0I4MSA9IFx1MDNCODJcbiAgICAgIFx1MDNCODIgPSB0ZW1wXG5cbiAgICB9XG5cbiAgICB3aGlsZSAoXHUwM0I4MDEgLSA5MCA+IFx1MDNCODAxKSBcdTAzQjgwMSAtPSA5MFxuICAgIHdoaWxlIChcdTAzQjgwMSA8IFx1MDNCODEpIFx1MDNCODAxICs9IDkwXG4gICAgd2hpbGUgKFx1MDNCODAyIC0gOTAgPiBcdTAzQjgwMikgXHUwM0I4MDIgLT0gOTBcbiAgICB3aGlsZSAoXHUwM0I4MDIgPCBcdTAzQjgxKSBcdTAzQjgwMiArPSA5MFxuXG4gICAgY29uc3QgYW5nbGVUb1Rlc3QgPSBbIFx1MDNCODAxLCBcdTAzQjgwMiwgKFx1MDNCODAxICsgOTApLCAoXHUwM0I4MDIgKyA5MCksIChcdTAzQjgwMSArIDE4MCksIChcdTAzQjgwMiArIDE4MCksIChcdTAzQjgwMSArIDI3MCksIChcdTAzQjgwMiArIDI3MCkgXVxuXG4gICAgY29uc3QgcG9pbnRzID0gYW5nbGVUb1Rlc3QuZmlsdGVyKGZ1bmN0aW9uIChhbmdsZSkge1xuICAgICAgcmV0dXJuIChhbmdsZSA+IFx1MDNCODEgJiYgYW5nbGUgPCBcdTAzQjgyKVxuICAgIH0pLm1hcChmdW5jdGlvbiAoYW5nbGUpIHtcbiAgICAgIHdoaWxlICh0aGlzLnRoZXRhIDwgYW5nbGUpIGFuZ2xlIC09IDM2MFxuICAgICAgcmV0dXJuIHRoaXMucG9pbnRBdCgoKGFuZ2xlIC0gdGhpcy50aGV0YSkgJSAzNjApIC8gKHRoaXMuZGVsdGEpKSAvLyBUT0RPOiByZXBsYWNlIHRoYXQgY2FsbCB3aXRoIHBvaW50QXRBbmdsZVxuICAgIH0uYmluZCh0aGlzKSkuY29uY2F0KHRoaXMucDEsIHRoaXMucDIpXG5cbiAgICByZXR1cm4gbmV3IFBvaW50Q2xvdWQocG9pbnRzKVxuICB9XG5cbiAgbGVuZ3RoICgpIHtcbiAgICBpZiAodGhpcy5wMS5lcXVhbHModGhpcy5wMikpIHJldHVybiAwXG5cbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLnAyLnN1Yih0aGlzLnAxKS5hYnMoKVxuXG4gICAgY29uc3QgcmV0ID0gdGhpcy5zcGxpdEF0KDAuNSlcbiAgICBjb25zdCBsZW4xID0gcmV0WzBdLnAyLnN1YihyZXRbMF0ucDEpLmFicygpXG4gICAgY29uc3QgbGVuMiA9IHJldFsxXS5wMi5zdWIocmV0WzFdLnAxKS5hYnMoKVxuXG4gICAgaWYgKGxlbjEgKyBsZW4yIC0gbGVuZ3RoIDwgMC4wMDAwMSkge1xuICAgICAgcmV0dXJuIGxlbjEgKyBsZW4yXG4gICAgfVxuXG4gICAgcmV0dXJuIHJldFswXS5sZW5ndGgoKSArIHJldFsxXS5sZW5ndGgoKVxuICB9XG5cbiAgcG9pbnRBdCAodCkge1xuICAgIGlmICh0aGlzLnAxLmVxdWFscyh0aGlzLnAyKSkgcmV0dXJuIHRoaXMucDEuY2xvbmUoKVxuXG4gICAgY29uc3QgdEluQW5nbGUgPSAodGhpcy50aGV0YSArIHQgKiB0aGlzLmRlbHRhKSAvIDE4MCAqIE1hdGguUElcbiAgICBjb25zdCBzaW5cdTAzQjggPSBNYXRoLnNpbih0SW5BbmdsZSlcbiAgICBjb25zdCBjb3NcdTAzQjggPSBNYXRoLmNvcyh0SW5BbmdsZSlcblxuICAgIHJldHVybiBuZXcgUG9pbnQoXG4gICAgICB0aGlzLmNvc1x1MDNDNiAqIHRoaXMucnggKiBjb3NcdTAzQjggLSB0aGlzLnNpblx1MDNDNiAqIHRoaXMucnkgKiBzaW5cdTAzQjggKyB0aGlzLmMueCxcbiAgICAgIHRoaXMuc2luXHUwM0M2ICogdGhpcy5yeSAqIGNvc1x1MDNCOCArIHRoaXMuY29zXHUwM0M2ICogdGhpcy5yeCAqIHNpblx1MDNCOCArIHRoaXMuYy55XG4gICAgKVxuICB9XG5cbiAgc3BsaXRBdCAodCkge1xuICAgIGNvbnN0IGFic0RlbHRhID0gTWF0aC5hYnModGhpcy5kZWx0YSlcbiAgICBjb25zdCBkZWx0YTEgPSBhYnNEZWx0YSAqIHRcbiAgICBjb25zdCBkZWx0YTIgPSBhYnNEZWx0YSAqICgxIC0gdClcblxuICAgIGNvbnN0IHBvaW50QXRUID0gdGhpcy5wb2ludEF0KHQpXG5cbiAgICByZXR1cm4gW1xuICAgICAgbmV3IEFyYyh0aGlzLnAxLCBwb2ludEF0VCwgdGhpcy5yeCwgdGhpcy5yeSwgdGhpcy5waGksIGRlbHRhMSA+IDE4MCwgdGhpcy5zd2VlcCksXG4gICAgICBuZXcgQXJjKHBvaW50QXRULCB0aGlzLnAyLCB0aGlzLnJ4LCB0aGlzLnJ5LCB0aGlzLnBoaSwgZGVsdGEyID4gMTgwLCB0aGlzLnN3ZWVwKVxuICAgIF1cbiAgfVxuXG4gIHRvUGF0aCAoKSB7XG4gICAgcmV0dXJuIFsgJ00nLCB0aGlzLnAxLngsIHRoaXMucDEueSwgJ0EnLCB0aGlzLnJ4LCB0aGlzLnJ5LCB0aGlzLnBoaSwgdGhpcy5hcmMsIHRoaXMuc3dlZXAsIHRoaXMucDIueCwgdGhpcy5wMi55IF0uam9pbignICcpXG4gIH1cblxuICB0b1BhdGhGcmFnbWVudCAoKSB7XG4gICAgcmV0dXJuIFsgJ0EnLCB0aGlzLnJ4LCB0aGlzLnJ5LCB0aGlzLnBoaSwgdGhpcy5hcmMsIHRoaXMuc3dlZXAsIHRoaXMucDIueCwgdGhpcy5wMi55IF1cbiAgfVxuXG4gIHRvU3RyaW5nICgpIHtcbiAgICByZXR1cm4gYHAxOiAke3RoaXMucDEueC50b0ZpeGVkKDQpfSAke3RoaXMucDEueS50b0ZpeGVkKDQpfSwgcDI6ICR7dGhpcy5wMi54LnRvRml4ZWQoNCl9ICR7dGhpcy5wMi55LnRvRml4ZWQoNCl9LCBjOiAke3RoaXMuYy54LnRvRml4ZWQoNCl9ICR7dGhpcy5jLnkudG9GaXhlZCg0KX0gdGhldGE6ICR7dGhpcy50aGV0YS50b0ZpeGVkKDQpfSwgdGhldGEyOiAke3RoaXMudGhldGEyLnRvRml4ZWQoNCl9LCBkZWx0YTogJHt0aGlzLmRlbHRhLnRvRml4ZWQoNCl9LCBsYXJnZTogJHt0aGlzLmFyY30sIHN3ZWVwOiAke3RoaXMuc3dlZXB9YFxuICB9XG5cbiAgdHJhbnNmb3JtIChtYXRyaXgpIHtcbiAgICByZXR1cm4gbmV3IEFyYyh0aGlzLnAxLnRyYW5zZm9ybShtYXRyaXgpLCB0aGlzLnAyLnRyYW5zZm9ybShtYXRyaXgpLCB0aGlzLnJ4LCB0aGlzLnJ5LCB0aGlzLnBoaSwgdGhpcy5hcmMsIHRoaXMuc3dlZXApXG4gIH1cbn1cblxuY2xhc3MgQ3ViaWMge1xuICBjb25zdHJ1Y3RvciAocDEsIGMxLCBjMiwgcDIpIHtcbiAgICBpZiAocDEgaW5zdGFuY2VvZiBQb2ludCkge1xuICAgICAgdGhpcy5wMSA9IG5ldyBQb2ludChwMSlcbiAgICAgIHRoaXMuYzEgPSBuZXcgUG9pbnQoYzEpXG4gICAgICB0aGlzLmMyID0gbmV3IFBvaW50KGMyKVxuICAgICAgdGhpcy5wMiA9IG5ldyBQb2ludChwMilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wMSA9IG5ldyBQb2ludChwMS5wMSlcbiAgICAgIHRoaXMuYzEgPSBuZXcgUG9pbnQocDEuYzEpXG4gICAgICB0aGlzLmMyID0gbmV3IFBvaW50KHAxLmMyKVxuICAgICAgdGhpcy5wMiA9IG5ldyBQb2ludChwMS5wMilcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZnJvbVF1YWQgKHAxLCBjLCBwMikge1xuICAgIGNvbnN0IGMxID0gcDEubXVsKDEgLyAzKS5hZGQoYy5tdWwoMiAvIDMpKVxuICAgIGNvbnN0IGMyID0gYy5tdWwoMiAvIDMpLmFkZChwMi5tdWwoMSAvIDMpKVxuICAgIHJldHVybiBuZXcgQ3ViaWMocDEsIGMxLCBjMiwgcDIpXG4gIH1cblxuICBiYm94ICgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRDbG91ZCgpLmJib3goKVxuICB9XG5cbiAgZmluZFJvb3RzICgpIHtcbiAgICByZXR1cm4gdGhpcy5maW5kUm9vdHNYKCkuY29uY2F0KHRoaXMuZmluZFJvb3RzWSgpKVxuICB9XG5cbiAgZmluZFJvb3RzWCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmluZFJvb3RzWFkodGhpcy5wMS54LCB0aGlzLmMxLngsIHRoaXMuYzIueCwgdGhpcy5wMi54KVxuICB9XG5cbiAgZmluZFJvb3RzWFkgKHAxLCBwMiwgcDMsIHA0KSB7XG4gICAgY29uc3QgYSA9IDMgKiAoLXAxICsgMyAqIHAyIC0gMyAqIHAzICsgcDQpXG4gICAgY29uc3QgYiA9IDYgKiAocDEgLSAyICogcDIgKyBwMylcbiAgICBjb25zdCBjID0gMyAqIChwMiAtIHAxKVxuXG4gICAgaWYgKGEgPT09IDApIHJldHVybiBbIC1jIC8gYiBdLmZpbHRlcihmdW5jdGlvbiAoZWwpIHsgcmV0dXJuIGVsID4gMCAmJiBlbCA8IDEgfSlcblxuICAgIGlmIChiICogYiAtIDQgKiBhICogYyA8IDApIHJldHVybiBbXVxuICAgIGlmIChiICogYiAtIDQgKiBhICogYyA9PT0gMCkgcmV0dXJuIFsgTWF0aC5yb3VuZCgoLWIgLyAoMiAqIGEpKSAqIDEwMDAwMCkgLyAxMDAwMDAgXS5maWx0ZXIoZnVuY3Rpb24gKGVsKSB7IHJldHVybiBlbCA+IDAgJiYgZWwgPCAxIH0pXG5cbiAgICByZXR1cm4gW1xuICAgICAgTWF0aC5yb3VuZCgoLWIgKyBNYXRoLnNxcnQoYiAqIGIgLSA0ICogYSAqIGMpKSAvICgyICogYSkgKiAxMDAwMDApIC8gMTAwMDAwLFxuICAgICAgTWF0aC5yb3VuZCgoLWIgLSBNYXRoLnNxcnQoYiAqIGIgLSA0ICogYSAqIGMpKSAvICgyICogYSkgKiAxMDAwMDApIC8gMTAwMDAwXG4gICAgXS5maWx0ZXIoZnVuY3Rpb24gKGVsKSB7IHJldHVybiBlbCA+IDAgJiYgZWwgPCAxIH0pXG4gIH1cblxuICBmaW5kUm9vdHNZICgpIHtcbiAgICByZXR1cm4gdGhpcy5maW5kUm9vdHNYWSh0aGlzLnAxLnksIHRoaXMuYzEueSwgdGhpcy5jMi55LCB0aGlzLnAyLnkpXG4gIH1cblxuICBmbGF0bmVzcyAoKSB7XG4gICAgbGV0IHV4ID0gTWF0aC5wb3coMyAqIHRoaXMuYzEueCAtIDIgKiB0aGlzLnAxLnggLSB0aGlzLnAyLngsIDIpXG4gICAgbGV0IHV5ID0gTWF0aC5wb3coMyAqIHRoaXMuYzEueSAtIDIgKiB0aGlzLnAxLnkgLSB0aGlzLnAyLnksIDIpXG4gICAgY29uc3QgdnggPSBNYXRoLnBvdygzICogdGhpcy5jMi54IC0gMiAqIHRoaXMucDIueCAtIHRoaXMucDEueCwgMilcbiAgICBjb25zdCB2eSA9IE1hdGgucG93KDMgKiB0aGlzLmMyLnkgLSAyICogdGhpcy5wMi55IC0gdGhpcy5wMS55LCAyKVxuXG4gICAgaWYgKHV4IDwgdngpIHsgdXggPSB2eCB9XG4gICAgaWYgKHV5IDwgdnkpIHsgdXkgPSB2eSB9XG5cbiAgICByZXR1cm4gdXggKyB1eVxuICB9XG5cbiAgZ2V0Q2xvdWQgKCkge1xuICAgIGNvbnN0IHBvaW50cyA9IHRoaXMuZmluZFJvb3RzKClcbiAgICAgIC5maWx0ZXIocm9vdCA9PiByb290ICE9PSAwICYmIHJvb3QgIT09IDEpXG4gICAgICAubWFwKHJvb3QgPT4gdGhpcy5wb2ludEF0KHJvb3QpKVxuICAgICAgLmNvbmNhdCh0aGlzLnAxLCB0aGlzLnAyKVxuXG4gICAgcmV0dXJuIG5ldyBQb2ludENsb3VkKHBvaW50cylcbiAgfVxuXG4gIGxlbmd0aCAoKSB7XG4gICAgcmV0dXJuIHRoaXMubGVuZ3RoQXQoKVxuICB9XG5cbiAgbGVuZ3RoQXQgKHQgPSAxKSB7XG4gICAgY29uc3QgY3VydmVzID0gdGhpcy5zcGxpdEF0KHQpWzBdLm1ha2VGbGF0KHQpXG5cbiAgICBsZXQgbGVuZ3RoID0gMFxuICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBjdXJ2ZXMubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgIGxlbmd0aCArPSBjdXJ2ZXNbaV0ucDIuc3ViKGN1cnZlc1tpXS5wMSkuYWJzKClcbiAgICB9XG5cbiAgICByZXR1cm4gbGVuZ3RoXG4gIH1cblxuICBtYWtlRmxhdCAodCkge1xuICAgIGlmICh0aGlzLmZsYXRuZXNzKCkgPiAwLjE1KSB7XG4gICAgICByZXR1cm4gdGhpcy5zcGxpdEF0KDAuNSlcbiAgICAgICAgLm1hcChmdW5jdGlvbiAoZWwpIHsgcmV0dXJuIGVsLm1ha2VGbGF0KHQgKiAwLjUpIH0pXG4gICAgICAgIC5yZWR1Y2UoZnVuY3Rpb24gKGxhc3QsIGN1cnJlbnQpIHsgcmV0dXJuIGxhc3QuY29uY2F0KGN1cnJlbnQpIH0sIFtdKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRfdmFsdWUgPSB0XG4gICAgICByZXR1cm4gWyB0aGlzIF1cbiAgICB9XG4gIH1cblxuICBwb2ludEF0ICh0KSB7XG4gICAgcmV0dXJuIG5ldyBQb2ludChcbiAgICAgICgxIC0gdCkgKiAoMSAtIHQpICogKDEgLSB0KSAqIHRoaXMucDEueCArIDMgKiAoMSAtIHQpICogKDEgLSB0KSAqIHQgKiB0aGlzLmMxLnggKyAzICogKDEgLSB0KSAqIHQgKiB0ICogdGhpcy5jMi54ICsgdCAqIHQgKiB0ICogdGhpcy5wMi54LFxuICAgICAgKDEgLSB0KSAqICgxIC0gdCkgKiAoMSAtIHQpICogdGhpcy5wMS55ICsgMyAqICgxIC0gdCkgKiAoMSAtIHQpICogdCAqIHRoaXMuYzEueSArIDMgKiAoMSAtIHQpICogdCAqIHQgKiB0aGlzLmMyLnkgKyB0ICogdCAqIHQgKiB0aGlzLnAyLnlcbiAgICApXG4gIH1cblxuICBzcGxpdEF0ICh6KSB7XG4gICAgY29uc3QgeCA9IHRoaXMuc3BsaXRBdFNjYWxhcih6LCAneCcpXG4gICAgY29uc3QgeSA9IHRoaXMuc3BsaXRBdFNjYWxhcih6LCAneScpXG5cbiAgICBjb25zdCBhID0gbmV3IEN1YmljKFxuICAgICAgbmV3IFBvaW50KHhbMF1bMF0sIHlbMF1bMF0pLFxuICAgICAgbmV3IFBvaW50KHhbMF1bMV0sIHlbMF1bMV0pLFxuICAgICAgbmV3IFBvaW50KHhbMF1bMl0sIHlbMF1bMl0pLFxuICAgICAgbmV3IFBvaW50KHhbMF1bM10sIHlbMF1bM10pXG4gICAgKVxuXG4gICAgY29uc3QgYiA9IG5ldyBDdWJpYyhcbiAgICAgIG5ldyBQb2ludCh4WzFdWzBdLCB5WzFdWzBdKSxcbiAgICAgIG5ldyBQb2ludCh4WzFdWzFdLCB5WzFdWzFdKSxcbiAgICAgIG5ldyBQb2ludCh4WzFdWzJdLCB5WzFdWzJdKSxcbiAgICAgIG5ldyBQb2ludCh4WzFdWzNdLCB5WzFdWzNdKVxuICAgIClcblxuICAgIHJldHVybiBbIGEsIGIgXVxuICB9XG5cbiAgc3BsaXRBdFNjYWxhciAoeiwgcCkge1xuICAgIGNvbnN0IHAxID0gdGhpcy5wMVtwXVxuICAgIGNvbnN0IHAyID0gdGhpcy5jMVtwXVxuICAgIGNvbnN0IHAzID0gdGhpcy5jMltwXVxuICAgIGNvbnN0IHA0ID0gdGhpcy5wMltwXVxuXG4gICAgY29uc3QgdCA9IHogKiB6ICogeiAqIHA0IC0gMyAqIHogKiB6ICogKHogLSAxKSAqIHAzICsgMyAqIHogKiAoeiAtIDEpICogKHogLSAxKSAqIHAyIC0gKHogLSAxKSAqICh6IC0gMSkgKiAoeiAtIDEpICogcDFcblxuICAgIHJldHVybiBbXG4gICAgICBbXG4gICAgICAgIHAxLFxuICAgICAgICB6ICogcDIgLSAoeiAtIDEpICogcDEsXG4gICAgICAgIHogKiB6ICogcDMgLSAyICogeiAqICh6IC0gMSkgKiBwMiArICh6IC0gMSkgKiAoeiAtIDEpICogcDEsXG4gICAgICAgIHRcbiAgICAgIF0sXG4gICAgICBbXG4gICAgICAgIHQsXG4gICAgICAgIHogKiB6ICogcDQgLSAyICogeiAqICh6IC0gMSkgKiBwMyArICh6IC0gMSkgKiAoeiAtIDEpICogcDIsXG4gICAgICAgIHogKiBwNCAtICh6IC0gMSkgKiBwMyxcbiAgICAgICAgcDRcbiAgICAgIF1cbiAgICBdXG4gIH1cblxuICB0b1BhdGggKCkge1xuICAgIHJldHVybiBbICdNJywgdGhpcy5wMS54LCB0aGlzLnAxLnkgXS5jb25jYXQodGhpcy50b1BhdGhGcmFnbWVudCgpKS5qb2luKCcgJylcbiAgfVxuXG4gIHRvUGF0aEZyYWdtZW50ICgpIHtcbiAgICByZXR1cm4gWyAnQycsIHRoaXMuYzEueCwgdGhpcy5jMS55LCB0aGlzLmMyLngsIHRoaXMuYzIueSwgdGhpcy5wMi54LCB0aGlzLnAyLnkgXVxuICB9XG5cbiAgdHJhbnNmb3JtIChtYXRyaXgpIHtcbiAgICB0aGlzLnAxLnRyYW5zZm9ybU8obWF0cml4KVxuICAgIHRoaXMuYzEudHJhbnNmb3JtTyhtYXRyaXgpXG4gICAgdGhpcy5jMi50cmFuc2Zvcm1PKG1hdHJpeClcbiAgICB0aGlzLnAyLnRyYW5zZm9ybU8obWF0cml4KVxuICAgIHJldHVybiB0aGlzXG4gIH1cbn1cblxuY2xhc3MgTGluZSB7XG4gIGNvbnN0cnVjdG9yICh4MSwgeTEsIHgyLCB5Mikge1xuICAgIGlmICh4MSBpbnN0YW5jZW9mIE9iamVjdCkge1xuICAgICAgdGhpcy5wMSA9IG5ldyBQb2ludCh4MSlcbiAgICAgIHRoaXMucDIgPSBuZXcgUG9pbnQoeTEpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucDEgPSBuZXcgUG9pbnQoeDEsIHkxKVxuICAgICAgdGhpcy5wMiA9IG5ldyBQb2ludCh4MiwgeTIpXG4gICAgfVxuICB9XG5cbiAgYmJveCAoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q2xvdWQoKS5iYm94KClcbiAgfVxuXG4gIGdldENsb3VkICgpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50Q2xvdWQoWyB0aGlzLnAxLCB0aGlzLnAyIF0pXG4gIH1cblxuICBsZW5ndGggKCkge1xuICAgIHJldHVybiB0aGlzLnAyLnN1Yih0aGlzLnAxKS5hYnMoKVxuICB9XG5cbiAgcG9pbnRBdCAodCkge1xuICAgIGNvbnN0IHZlYyA9IHRoaXMucDIuc3ViKHRoaXMucDEpLm11bCh0KVxuICAgIHJldHVybiB0aGlzLnAxLmFkZCh2ZWMpXG4gIH1cblxuICB0b1BhdGggKCkge1xuICAgIHJldHVybiBbICdNJywgdGhpcy5wMS54LCB0aGlzLnAxLnksIHRoaXMucDIueCwgdGhpcy5wMi55IF0uam9pbignICcpXG4gIH1cblxuICB0b1BhdGhGcmFnbWVudCAoKSB7XG4gICAgcmV0dXJuIFsgJ0wnLCB0aGlzLnAyLngsIHRoaXMucDIueSBdXG4gIH1cblxuICB0cmFuc2Zvcm0gKG1hdHJpeCkge1xuICAgIHRoaXMucDEudHJhbnNmb3JtTyhtYXRyaXgpXG4gICAgdGhpcy5wMi50cmFuc2Zvcm1PKG1hdHJpeClcbiAgICByZXR1cm4gdGhpc1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBwYXRoQkJveCA9IGZ1bmN0aW9uIChkKSB7XG4gIHJldHVybiBwYXRoUGFyc2VyKGQpLnJlZHVjZSgobCwgYykgPT4gbC5tZXJnZShjLmJib3goKSksIG5ldyBOb0JveCgpKVxufVxuXG5leHBvcnQgY2xhc3MgUGF0aFNlZ21lbnRBcnJheSBleHRlbmRzIEFycmF5IHtcbiAgYmJveCAoKSB7XG4gICAgcmV0dXJuIHRoaXMucmVkdWNlKChsLCBjKSA9PiBsLm1lcmdlKGMuYmJveCgpKSwgbmV3IE5vQm94KCkpXG4gIH1cblxuICBjbG91ZCAoKSB7XG4gICAgcmV0dXJuIHRoaXMucmVkdWNlKFxuICAgICAgKGNsb3VkLCBzZWdtZW50KSA9PiBzZWdtZW50LmdldENsb3VkKCkubWVyZ2UoY2xvdWQpLFxuICAgICAgbmV3IFBvaW50Q2xvdWQoKVxuICAgIClcbiAgfVxuXG4gIG1lcmdlIChvdGhlcikge1xuICAgIHJldHVybiB0aGlzLmNvbmNhdChvdGhlcilcbiAgfVxuXG4gIHRyYW5zZm9ybSAobWF0cml4KSB7XG4gICAgcmV0dXJuIHRoaXMubWFwKHNlZ21lbnQgPT4gc2VnbWVudC50cmFuc2Zvcm0obWF0cml4KSlcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZ2V0UGF0aFNlZ21lbnRzID0gZnVuY3Rpb24gKGQpIHtcbiAgcmV0dXJuIG5ldyBQYXRoU2VnbWVudEFycmF5KC4uLnBhdGhQYXJzZXIoZCkpXG59XG5cbmV4cG9ydCBjb25zdCBwb2ludEF0TGVuZ3RoID0gZnVuY3Rpb24gKGQsIGxlbikge1xuICBjb25zdCBzZWdzID0gcGF0aFBhcnNlcihkKVxuXG4gIGNvbnN0IHNlZ0xlbmd0aHMgPSBzZWdzLm1hcChlbCA9PiBlbC5sZW5ndGgoKSlcblxuICBjb25zdCBsZW5ndGggPSBzZWdMZW5ndGhzLnJlZHVjZSgobCwgYykgPT4gbCArIGMsIDApXG5cbiAgbGV0IGkgPSAwXG5cbiAgbGV0IHQgPSBsZW4gLyBsZW5ndGhcblxuICAvLyBGSVhNRTogUG9wIE1vdmUgYmVmb3JlIHVzaW5nIHNob3J0Y3V0P1xuICAvLyBzaG9ydGN1dCBmb3IgdHJpdmlhbCBjYXNlc1xuICBpZiAodCA+PSAxKSB7XG4gICAgLy8gQ2hlY2sgaWYgdGhlcmUgaXMgYSBwMi4gSWYgbm90LCB1c2UgcDFcbiAgICBpZiAoc2Vnc1tzZWdzLmxlbmd0aCAtIDFdLnAyKSB7XG4gICAgICByZXR1cm4gc2Vnc1tzZWdzLmxlbmd0aCAtIDFdLnAyLm5hdGl2ZSgpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBzZWdzW3NlZ3MubGVuZ3RoIC0gMV0ucDEubmF0aXZlKClcbiAgICB9XG4gIH1cblxuICBpZiAodCA8PSAwKSByZXR1cm4gc2Vnc1swXS5wMS5uYXRpdmUoKVxuXG4gIC8vIHJlbW92ZSBtb3ZlIGNvbW1hbmRzIGF0IHRoZSB2ZXJ5IGVuZCBvZiB0aGUgcGF0aFxuICB3aGlsZSAoc2Vnc1tzZWdzLmxlbmd0aCAtIDFdIGluc3RhbmNlb2YgTW92ZSkgc2Vncy5wb3AoKVxuXG4gIGxldCBzZWdFbmQgPSAwXG5cbiAgZm9yIChjb25zdCBpbCA9IHNlZ0xlbmd0aHMubGVuZ3RoOyBpIDwgaWw7ICsraSkge1xuICAgIGNvbnN0IGsgPSBzZWdMZW5ndGhzW2ldIC8gbGVuZ3RoXG4gICAgc2VnRW5kICs9IGtcblxuICAgIGlmIChzZWdFbmQgPiB0KSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHJhdGlvID0gbGVuZ3RoIC8gc2VnTGVuZ3Roc1tpXVxuICB0ID0gcmF0aW8gKiAodCAtIHNlZ0VuZCkgKyAxXG5cbiAgcmV0dXJuIHNlZ3NbaV0ucG9pbnRBdCh0KS5uYXRpdmUoKVxufVxuXG5leHBvcnQgY29uc3QgbGVuZ3RoID0gZnVuY3Rpb24gKGQpIHtcbiAgcmV0dXJuIHBhdGhQYXJzZXIoZClcbiAgICAucmVkdWNlKChsLCBjKSA9PiBsICsgYy5sZW5ndGgoKSwgMClcbn1cblxuZXhwb3J0IGNvbnN0IGRlYnVnID0gZnVuY3Rpb24gKG5vZGUpIHtcbiAgY29uc3QgcGFyc2UgPSBwYXRoUGFyc2VyKG5vZGUuZ2V0QXR0cmlidXRlKCdkJykpXG5cbiAgY29uc3QgcmV0ID0ge1xuICAgIHBhdGhzOiBwYXJzZS5tYXAoZWwgPT4gZWwudG9QYXRoKCkpLFxuICAgIGZyYWdtZW50czogcGFyc2UubWFwKGVsID0+IGVsLnRvUGF0aEZyYWdtZW50KCkuam9pbignICcpKSxcbiAgICBiYm94czogcGFyc2UubWFwKGVsID0+IHtcbiAgICAgIGNvbnN0IGJveCA9IGVsLmJib3goKVxuICAgICAgcmV0dXJuIFsgYm94LngsIGJveC55LCBib3gud2lkdGgsIGJveC5oZWlnaHQgXVxuICAgIH0pLFxuICAgIGJib3g6IHBhcnNlLnJlZHVjZSgobCwgYykgPT4gbC5tZXJnZShjLmJib3goKSksIG5ldyBOb0JveCgpKSxcbiAgICBiYm94c1RyYW5zZm9ybWVkOiBwYXJzZS5tYXAoZWwgPT4ge1xuICAgICAgcmV0dXJuIGVsLmdldENsb3VkKCkudHJhbnNmb3JtKG5vZGUubWF0cml4aWZ5KCkpLmJib3goKVxuICAgIH0pXG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgcmV0LCB7XG4gICAgYmJveFRyYW5zZm9ybWVkOiByZXQuYmJveHNUcmFuc2Zvcm1lZC5yZWR1Y2UoKGwsIGMpID0+IGwubWVyZ2UoYyksIG5ldyBOb0JveCgpKVxuICB9KVxufVxuXG5leHBvcnQgY29uc3QgZ2V0Q2xvdWQgPSAoZCkgPT4ge1xuICByZXR1cm4gcGF0aFBhcnNlcihkKS5yZWR1Y2UoKGNsb3VkLCBzZWdtZW50KSA9PlxuICAgIHNlZ21lbnQuZ2V0Q2xvdWQoKS5tZXJnZShjbG91ZCksIG5ldyBQb2ludENsb3VkKClcbiAgKVxufVxuXG5leHBvcnQgY29uc3QgcGF0aEZyb20gPSB7XG4gIGJveCAoeyB4LCB5LCB3aWR0aCwgaGVpZ2h0IH0pIHtcbiAgICByZXR1cm4gYE0gJHt4fSAke3l9IGggJHt3aWR0aH0gdiAke2hlaWdodH0gSCAke3h9IFYgJHt5fWBcbiAgfSxcbiAgcmVjdCAobm9kZSkge1xuICAgIGNvbnN0IHdpZHRoID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgnd2lkdGgnKSkgfHwgMFxuICAgIGNvbnN0IGhlaWdodCA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ2hlaWdodCcpKSB8fCAwXG4gICAgY29uc3QgeCA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3gnKSkgfHwgMFxuICAgIGNvbnN0IHkgPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd5JykpIHx8IDBcbiAgICByZXR1cm4gYE0gJHt4fSAke3l9IGggJHt3aWR0aH0gdiAke2hlaWdodH0gSCAke3h9IFYgJHt5fWBcbiAgfSxcbiAgY2lyY2xlIChub2RlKSB7XG4gICAgY29uc3QgciA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3InKSkgfHwgMFxuICAgIGNvbnN0IHggPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCdjeCcpKSB8fCAwXG4gICAgY29uc3QgeSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ2N5JykpIHx8IDBcblxuICAgIGlmIChyID09PSAwKSByZXR1cm4gJ00wIDAnXG5cbiAgICByZXR1cm4gYE0gJHt4IC0gcn0gJHt5fSBBICR7cn0gJHtyfSAwIDAgMCAke3ggKyByfSAke3l9IEEgJHtyfSAke3J9IDAgMCAwICR7eCAtIHJ9ICR7eX1gXG4gIH0sXG4gIGVsbGlwc2UgKG5vZGUpIHtcbiAgICBjb25zdCByeCA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3J4JykpIHx8IDBcbiAgICBjb25zdCByeSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3J5JykpIHx8IDBcbiAgICBjb25zdCB4ID0gcGFyc2VGbG9hdChub2RlLmdldEF0dHJpYnV0ZSgnY3gnKSkgfHwgMFxuICAgIGNvbnN0IHkgPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCdjeScpKSB8fCAwXG5cbiAgICByZXR1cm4gYE0gJHt4IC0gcnh9ICR7eX0gQSAke3J4fSAke3J5fSAwIDAgMCAke3ggKyByeH0gJHt5fSBBICR7cnh9ICR7cnl9IDAgMCAwICR7eCAtIHJ4fSAke3l9YFxuICB9LFxuICBsaW5lIChub2RlKSB7XG4gICAgY29uc3QgeDEgPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd4MScpKSB8fCAwXG4gICAgY29uc3QgeDIgPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd4MicpKSB8fCAwXG4gICAgY29uc3QgeTEgPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd5MScpKSB8fCAwXG4gICAgY29uc3QgeTIgPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd5MicpKSB8fCAwXG5cbiAgICByZXR1cm4gYE0gJHt4MX0gJHt5MX0gTCAke3gyfSAke3kyfWBcbiAgfSxcbiAgcG9seWdvbiAobm9kZSkge1xuICAgIHJldHVybiBgTSAke25vZGUuZ2V0QXR0cmlidXRlKCdwb2ludHMnKX0gemBcbiAgfSxcbiAgcG9seWxpbmUgKG5vZGUpIHtcbiAgICByZXR1cm4gYE0gJHtub2RlLmdldEF0dHJpYnV0ZSgncG9pbnRzJyl9YFxuICB9XG59XG4iLCAiaW1wb3J0IHBhdGggZnJvbSAnbm9kZTpwYXRoJ1xuaW1wb3J0ICogYXMgZm9udGtpdCBmcm9tICdmb250a2l0J1xuaW1wb3J0ICogYXMgZGVmYXVsdHMgZnJvbSAnLi9kZWZhdWx0cy5qcydcbmltcG9ydCB7IEJveCwgTm9Cb3ggfSBmcm9tICcuLi9vdGhlci9Cb3guanMnXG5pbXBvcnQgeyBnZXRDb25maWcsIGdldEZvbnRzIH0gZnJvbSAnLi4vY29uZmlnLmpzJ1xuXG5leHBvcnQgY29uc3QgdGV4dEJCb3ggPSBmdW5jdGlvbiAodGV4dCwgeCwgeSwgZGV0YWlscykge1xuXG4gIGlmICghdGV4dCkgcmV0dXJuIG5ldyBOb0JveCgpXG5cbiAgY29uc3QgY29uZmlnID0gZ2V0Q29uZmlnKClcbiAgY29uc3QgcHJlbG9hZGVkID0gZ2V0Rm9udHMoKVxuXG4gIGNvbnN0IGZhbWlsaWVzID0gKGRldGFpbHMuZm9udEZhbWlseSB8fCBkZWZhdWx0cy5mb250RmFtaWx5KS5zcGxpdCgvXFxzKixcXHMqLylcbiAgY29uc3QgZm9udE1hcCA9IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRzLmZvbnRGYW1pbHlNYXBwaW5ncywgY29uZmlnLmZvbnRGYW1pbHlNYXBwaW5ncylcbiAgY29uc3QgZm9udERpciA9IGNvbmZpZy5mb250RGlyIHx8IGRlZmF1bHRzLmZvbnREaXJcbiAgbGV0IGZvbnRTaXplID0gcGFyc2VGbG9hdChkZXRhaWxzLmZvbnRTaXplKVxuICBpZiAoaXNOYU4oZm9udFNpemUpKSB7XG4gICAgZm9udFNpemUgPSBkZWZhdWx0cy5mb250U2l6ZVxuICB9XG4gIGxldCBmb250RmFtaWx5XG4gIGxldCBmb250XG5cbiAgZm9yIChsZXQgaSA9IDAsIGlsID0gZmFtaWxpZXMubGVuZ3RoOyBpIDwgaWw7ICsraSkge1xuICAgIGlmIChmb250TWFwW2ZhbWlsaWVzW2ldXSkge1xuICAgICAgZm9udEZhbWlseSA9IGZhbWlsaWVzW2ldXG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGlmICghZm9udEZhbWlseSkge1xuICAgIGZvbnRGYW1pbHkgPSBkZWZhdWx0cy5mb250RmFtaWx5XG4gIH1cblxuICBpZiAocHJlbG9hZGVkW2ZvbnRGYW1pbHldKSB7XG4gICAgZm9udCA9IHByZWxvYWRlZFtmb250RmFtaWx5XVxuICB9IGVsc2Uge1xuICAgIGNvbnN0IGZpbGVuYW1lID0gcGF0aC5qb2luKGZvbnREaXIsIGZvbnRNYXBbZm9udEZhbWlseV0pXG4gICAgdHJ5IHtcbiAgICAgIGZvbnQgPSBmb250a2l0Lm9wZW5TeW5jKGZpbGVuYW1lKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybihgQ291bGQgbm90IG9wZW4gZm9udCBcIiR7Zm9udEZhbWlseX1cIiBpbiBmaWxlIFwiJHtmaWxlbmFtZX1cIi4gJHtlLnRvU3RyaW5nKCl9YClcbiAgICAgIHJldHVybiBuZXcgTm9Cb3goKVxuICAgIH1cblxuICAgIHByZWxvYWRlZFtmb250RmFtaWx5XSA9IGZvbnRcbiAgfVxuXG4gIGNvbnN0IGZvbnRIZWlnaHQgPSBmb250LmFzY2VudCAtIGZvbnQuZGVzY2VudFxuICBjb25zdCBsaW5lSGVpZ2h0ID0gZm9udEhlaWdodCA+IGZvbnQudW5pdHNQZXJFbSA/IGZvbnRIZWlnaHQgOiBmb250SGVpZ2h0ICsgZm9udC5saW5lR2FwXG5cbiAgY29uc3QgaGVpZ2h0ID0gbGluZUhlaWdodCAvIGZvbnQudW5pdHNQZXJFbSAqIGZvbnRTaXplXG4gIGNvbnN0IHdpZHRoID0gZm9udC5sYXlvdXQodGV4dCkuZ2x5cGhzLnJlZHVjZSgobGFzdCwgY3VycikgPT4gbGFzdCArIGN1cnIuYWR2YW5jZVdpZHRoLCAwKSAvIGZvbnQudW5pdHNQZXJFbSAqIGZvbnRTaXplXG5cbiAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS90ZXh0LWFuY2hvclxuICBsZXQgeEFkanVzdCA9IDBcbiAgaWYgKGRldGFpbHMudGV4dEFuY2hvciA9PT0gJ2VuZCcpIHtcbiAgICB4QWRqdXN0ID0gLXdpZHRoXG4gIH0gZWxzZSBpZiAoZGV0YWlscy50ZXh0QW5jaG9yID09PSAnbWlkZGxlJykge1xuICAgIHhBZGp1c3QgPSAtd2lkdGggLyAyXG4gIH1cblxuICAvLyBodHRwczovL3d3dy53My5vcmcvVFIvMjAwMi9XRC1jc3MzLWxpbmVib3gtMjAwMjA1MTUvXG4gIC8vIDQuMi4gQmFzZWxpbmUgaWRlbnRpZmllcnNcbiAgbGV0IHlBZGp1c3QgPSBmb250LmFzY2VudCAvLyBhbHBoYWJldGljXG4gIGlmIChkZXRhaWxzLmRvbWluYW50QmFzZWxpbmUgPT09ICdiZWZvcmUtZWRnZScgfHwgZGV0YWlscy5kb21pbmFudEJhc2VsaW5lID09PSAndGV4dC1iZWZvcmUtZWRnZScpIHtcbiAgICB5QWRqdXN0ID0gMFxuICB9IGVsc2UgaWYgKGRldGFpbHMuZG9taW5hbnRCYXNlbGluZSA9PT0gJ2hhbmdpbmcnKSB7XG4gICAgeUFkanVzdCA9IGZvbnQuYXNjZW50IC0gZm9udC54SGVpZ2h0IC0gZm9udC5jYXBIZWlnaHRcbiAgfSBlbHNlIGlmIChkZXRhaWxzLmRvbWluYW50QmFzZWxpbmUgPT09ICdtYXRoZW1hdGljYWwnKSB7XG4gICAgeUFkanVzdCA9IGZvbnQuYXNjZW50IC0gZm9udC54SGVpZ2h0XG4gIH0gZWxzZSBpZiAoZGV0YWlscy5kb21pbmFudEJhc2VsaW5lID09PSAnbWlkZGxlJykge1xuICAgIHlBZGp1c3QgPSBmb250LmFzY2VudCAtIGZvbnQueEhlaWdodCAvIDJcbiAgfSBlbHNlIGlmIChkZXRhaWxzLmRvbWluYW50QmFzZWxpbmUgPT09ICdjZW50cmFsJykge1xuICAgIHlBZGp1c3QgPSBmb250LmFzY2VudCAvIDIgKyBmb250LmRlc2NlbnQgLyAyXG4gIH0gZWxzZSBpZiAoZGV0YWlscy5kb21pbmFudEJhc2VsaW5lID09PSAnaWRlb2dyYXBoaWMnKSB7XG4gICAgeUFkanVzdCA9IGZvbnQuYXNjZW50ICsgZm9udC5kZXNjZW50XG4gIH1cblxuICByZXR1cm4gbmV3IEJveCh4ICsgeEFkanVzdCwgeSAtIHlBZGp1c3QgLyBmb250LnVuaXRzUGVyRW0gKiBmb250U2l6ZSwgd2lkdGgsIGhlaWdodClcbn1cbiIsICIvLyBOb2RlIGJhY2stY29tcGF0LlxuY29uc3QgRU5DT0RJTkdfTUFQUElORyA9IHtcbiAgdXRmMTZsZTogJ3V0Zi0xNmxlJyxcbiAgdWNzMjogJ3V0Zi0xNmxlJyxcbiAgdXRmMTZiZTogJ3V0Zi0xNmJlJ1xufVxuXG5leHBvcnQgY2xhc3MgRGVjb2RlU3RyZWFtIHtcbiAgY29uc3RydWN0b3IoYnVmZmVyKSB7XG4gICAgdGhpcy5idWZmZXIgPSBidWZmZXI7XG4gICAgdGhpcy52aWV3ID0gbmV3IERhdGFWaWV3KGJ1ZmZlci5idWZmZXIsIGJ1ZmZlci5ieXRlT2Zmc2V0LCBidWZmZXIuYnl0ZUxlbmd0aCk7XG4gICAgdGhpcy5wb3MgPSAwO1xuICAgIHRoaXMubGVuZ3RoID0gdGhpcy5idWZmZXIubGVuZ3RoO1xuICB9XG5cbiAgcmVhZFN0cmluZyhsZW5ndGgsIGVuY29kaW5nID0gJ2FzY2lpJykge1xuICAgIGVuY29kaW5nID0gRU5DT0RJTkdfTUFQUElOR1tlbmNvZGluZ10gfHwgZW5jb2Rpbmc7XG5cbiAgICBsZXQgYnVmID0gdGhpcy5yZWFkQnVmZmVyKGxlbmd0aCk7XG4gICAgdHJ5IHtcbiAgICAgIGxldCBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKGVuY29kaW5nKTtcbiAgICAgIHJldHVybiBkZWNvZGVyLmRlY29kZShidWYpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIGJ1ZjtcbiAgICB9XG4gIH1cblxuICByZWFkQnVmZmVyKGxlbmd0aCkge1xuICAgIHJldHVybiB0aGlzLmJ1ZmZlci5zbGljZSh0aGlzLnBvcywgKHRoaXMucG9zICs9IGxlbmd0aCkpO1xuICB9XG5cbiAgcmVhZFVJbnQyNEJFKCkge1xuICAgIHJldHVybiAodGhpcy5yZWFkVUludDE2QkUoKSA8PCA4KSArIHRoaXMucmVhZFVJbnQ4KCk7XG4gIH1cblxuICByZWFkVUludDI0TEUoKSB7XG4gICAgcmV0dXJuIHRoaXMucmVhZFVJbnQxNkxFKCkgKyAodGhpcy5yZWFkVUludDgoKSA8PCAxNik7XG4gIH1cblxuICByZWFkSW50MjRCRSgpIHtcbiAgICByZXR1cm4gKHRoaXMucmVhZEludDE2QkUoKSA8PCA4KSArIHRoaXMucmVhZFVJbnQ4KCk7XG4gIH1cblxuICByZWFkSW50MjRMRSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWFkVUludDE2TEUoKSArICh0aGlzLnJlYWRJbnQ4KCkgPDwgMTYpO1xuICB9XG59XG5cbkRlY29kZVN0cmVhbS5UWVBFUyA9IHtcbiAgVUludDg6IDEsXG4gIFVJbnQxNjogMixcbiAgVUludDI0OiAzLFxuICBVSW50MzI6IDQsXG4gIEludDg6IDEsXG4gIEludDE2OiAyLFxuICBJbnQyNDogMyxcbiAgSW50MzI6IDQsXG4gIEZsb2F0OiA0LFxuICBEb3VibGU6IDhcbn07XG5cbmZvciAobGV0IGtleSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhEYXRhVmlldy5wcm90b3R5cGUpKSB7XG4gIGlmIChrZXkuc2xpY2UoMCwgMykgPT09ICdnZXQnKSB7XG4gICAgbGV0IHR5cGUgPSBrZXkuc2xpY2UoMykucmVwbGFjZSgnVWknLCAnVUknKTtcbiAgICBpZiAodHlwZSA9PT0gJ0Zsb2F0MzInKSB7XG4gICAgICB0eXBlID0gJ0Zsb2F0JztcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdGbG9hdDY0Jykge1xuICAgICAgdHlwZSA9ICdEb3VibGUnO1xuICAgIH1cbiAgICBsZXQgYnl0ZXMgPSBEZWNvZGVTdHJlYW0uVFlQRVNbdHlwZV07XG4gICAgRGVjb2RlU3RyZWFtLnByb3RvdHlwZVsncmVhZCcgKyB0eXBlICsgKGJ5dGVzID09PSAxID8gJycgOiAnQkUnKV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCByZXQgPSB0aGlzLnZpZXdba2V5XSh0aGlzLnBvcywgZmFsc2UpO1xuICAgICAgdGhpcy5wb3MgKz0gYnl0ZXM7XG4gICAgICByZXR1cm4gcmV0O1xuICAgIH07XG5cbiAgICBpZiAoYnl0ZXMgIT09IDEpIHtcbiAgICAgIERlY29kZVN0cmVhbS5wcm90b3R5cGVbJ3JlYWQnICsgdHlwZSArICdMRSddID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBjb25zdCByZXQgPSB0aGlzLnZpZXdba2V5XSh0aGlzLnBvcywgdHJ1ZSk7XG4gICAgICAgIHRoaXMucG9zICs9IGJ5dGVzO1xuICAgICAgICByZXR1cm4gcmV0O1xuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQge0RlY29kZVN0cmVhbX0gZnJvbSAnLi9EZWNvZGVTdHJlYW0uanMnO1xuXG5jb25zdCB0ZXh0RW5jb2RlciA9IG5ldyBUZXh0RW5jb2RlcigpO1xuY29uc3QgaXNCaWdFbmRpYW4gPSBuZXcgVWludDhBcnJheShuZXcgVWludDE2QXJyYXkoWzB4MTIzNF0pLmJ1ZmZlcilbMF0gPT0gMHgxMjtcblxuZXhwb3J0IGNsYXNzIEVuY29kZVN0cmVhbSB7XG4gIGNvbnN0cnVjdG9yKGJ1ZmZlcikge1xuICAgIHRoaXMuYnVmZmVyID0gYnVmZmVyO1xuICAgIHRoaXMudmlldyA9IG5ldyBEYXRhVmlldyh0aGlzLmJ1ZmZlci5idWZmZXIsIHRoaXMuYnVmZmVyLmJ5dGVPZmZzZXQsIHRoaXMuYnVmZmVyLmJ5dGVMZW5ndGgpO1xuICAgIHRoaXMucG9zID0gMDtcbiAgfVxuXG4gIHdyaXRlQnVmZmVyKGJ1ZmZlcikge1xuICAgIHRoaXMuYnVmZmVyLnNldChidWZmZXIsIHRoaXMucG9zKTtcbiAgICB0aGlzLnBvcyArPSBidWZmZXIubGVuZ3RoO1xuICB9XG5cbiAgd3JpdGVTdHJpbmcoc3RyaW5nLCBlbmNvZGluZyA9ICdhc2NpaScpIHtcbiAgICBsZXQgYnVmO1xuICAgIHN3aXRjaCAoZW5jb2RpbmcpIHtcbiAgICAgIGNhc2UgJ3V0ZjE2bGUnOlxuICAgICAgY2FzZSAndXRmMTYtbGUnOlxuICAgICAgY2FzZSAndWNzMic6IC8vIG5vZGUgdHJlYXRzIHRoaXMgdGhlIHNhbWUgYXMgdXRmMTYuXG4gICAgICAgIGJ1ZiA9IHN0cmluZ1RvVXRmMTYoc3RyaW5nLCBpc0JpZ0VuZGlhbik7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICd1dGYxNmJlJzpcbiAgICAgIGNhc2UgJ3V0ZjE2LWJlJzpcbiAgICAgICAgYnVmID0gc3RyaW5nVG9VdGYxNihzdHJpbmcsICFpc0JpZ0VuZGlhbik7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICd1dGY4JzpcbiAgICAgICAgYnVmID0gdGV4dEVuY29kZXIuZW5jb2RlKHN0cmluZyk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdhc2NpaSc6XG4gICAgICAgIGJ1ZiA9IHN0cmluZ1RvQXNjaWkoc3RyaW5nKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgZW5jb2Rpbmc6ICR7ZW5jb2Rpbmd9YCk7XG4gICAgfVxuXG4gICAgdGhpcy53cml0ZUJ1ZmZlcihidWYpO1xuICB9XG5cbiAgd3JpdGVVSW50MjRCRSh2YWwpIHtcbiAgICB0aGlzLmJ1ZmZlclt0aGlzLnBvcysrXSA9ICh2YWwgPj4+IDE2KSAmIDB4ZmY7XG4gICAgdGhpcy5idWZmZXJbdGhpcy5wb3MrK10gPSAodmFsID4+PiA4KSAmIDB4ZmY7XG4gICAgdGhpcy5idWZmZXJbdGhpcy5wb3MrK10gPSB2YWwgJiAweGZmO1xuICB9XG5cbiAgd3JpdGVVSW50MjRMRSh2YWwpIHtcbiAgICB0aGlzLmJ1ZmZlclt0aGlzLnBvcysrXSA9IHZhbCAmIDB4ZmY7XG4gICAgdGhpcy5idWZmZXJbdGhpcy5wb3MrK10gPSAodmFsID4+PiA4KSAmIDB4ZmY7XG4gICAgdGhpcy5idWZmZXJbdGhpcy5wb3MrK10gPSAodmFsID4+PiAxNikgJiAweGZmO1xuICB9XG5cbiAgd3JpdGVJbnQyNEJFKHZhbCkge1xuICAgIGlmICh2YWwgPj0gMCkge1xuICAgICAgdGhpcy53cml0ZVVJbnQyNEJFKHZhbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud3JpdGVVSW50MjRCRSh2YWwgKyAweGZmZmZmZiArIDEpO1xuICAgIH1cbiAgfVxuXG4gIHdyaXRlSW50MjRMRSh2YWwpIHtcbiAgICBpZiAodmFsID49IDApIHtcbiAgICAgIHRoaXMud3JpdGVVSW50MjRMRSh2YWwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLndyaXRlVUludDI0TEUodmFsICsgMHhmZmZmZmYgKyAxKTtcbiAgICB9XG4gIH1cblxuICBmaWxsKHZhbCwgbGVuZ3RoKSB7XG4gICAgaWYgKGxlbmd0aCA8IHRoaXMuYnVmZmVyLmxlbmd0aCkge1xuICAgICAgdGhpcy5idWZmZXIuZmlsbCh2YWwsIHRoaXMucG9zLCB0aGlzLnBvcyArIGxlbmd0aCk7XG4gICAgICB0aGlzLnBvcyArPSBsZW5ndGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGJ1ZiA9IG5ldyBVaW50OEFycmF5KGxlbmd0aCk7XG4gICAgICBidWYuZmlsbCh2YWwpO1xuICAgICAgdGhpcy53cml0ZUJ1ZmZlcihidWYpO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBzdHJpbmdUb1V0ZjE2KHN0cmluZywgc3dhcCkge1xuICBsZXQgYnVmID0gbmV3IFVpbnQxNkFycmF5KHN0cmluZy5sZW5ndGgpO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGkrKykge1xuICAgIGxldCBjb2RlID0gc3RyaW5nLmNoYXJDb2RlQXQoaSk7XG4gICAgaWYgKHN3YXApIHtcbiAgICAgIGNvZGUgPSAoY29kZSA+PiA4KSB8ICgoY29kZSAmIDB4ZmYpIDw8IDgpO1xuICAgIH1cbiAgICBidWZbaV0gPSBjb2RlO1xuICB9XG4gIHJldHVybiBuZXcgVWludDhBcnJheShidWYuYnVmZmVyKTtcbn1cblxuZnVuY3Rpb24gc3RyaW5nVG9Bc2NpaShzdHJpbmcpIHtcbiAgbGV0IGJ1ZiA9IG5ldyBVaW50OEFycmF5KHN0cmluZy5sZW5ndGgpO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGkrKykge1xuICAgIC8vIE1hdGNoIG5vZGUuanMgYmVoYXZpb3IgLSBlbmNvZGluZyBhbGxvd3MgOC1iaXQgcmF0aGVyIHRoYW4gNy1iaXQuXG4gICAgYnVmW2ldID0gc3RyaW5nLmNoYXJDb2RlQXQoaSk7XG4gIH1cbiAgcmV0dXJuIGJ1Zjtcbn1cblxuZm9yIChsZXQga2V5IG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKERhdGFWaWV3LnByb3RvdHlwZSkpIHtcbiAgaWYgKGtleS5zbGljZSgwLCAzKSA9PT0gJ3NldCcpIHtcbiAgICBsZXQgdHlwZSA9IGtleS5zbGljZSgzKS5yZXBsYWNlKCdVaScsICdVSScpO1xuICAgIGlmICh0eXBlID09PSAnRmxvYXQzMicpIHtcbiAgICAgIHR5cGUgPSAnRmxvYXQnO1xuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ0Zsb2F0NjQnKSB7XG4gICAgICB0eXBlID0gJ0RvdWJsZSc7XG4gICAgfVxuICAgIGxldCBieXRlcyA9IERlY29kZVN0cmVhbS5UWVBFU1t0eXBlXTtcbiAgICBFbmNvZGVTdHJlYW0ucHJvdG90eXBlWyd3cml0ZScgKyB0eXBlICsgKGJ5dGVzID09PSAxID8gJycgOiAnQkUnKV0gPSBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICAgIHRoaXMudmlld1trZXldKHRoaXMucG9zLCB2YWx1ZSwgZmFsc2UpO1xuICAgICAgdGhpcy5wb3MgKz0gYnl0ZXM7XG4gICAgfTtcblxuICAgIGlmIChieXRlcyAhPT0gMSkge1xuICAgICAgRW5jb2RlU3RyZWFtLnByb3RvdHlwZVsnd3JpdGUnICsgdHlwZSArICdMRSddID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgICAgIHRoaXMudmlld1trZXldKHRoaXMucG9zLCB2YWx1ZSwgdHJ1ZSk7XG4gICAgICAgIHRoaXMucG9zICs9IGJ5dGVzO1xuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQge0RlY29kZVN0cmVhbX0gZnJvbSAnLi9EZWNvZGVTdHJlYW0uanMnO1xuaW1wb3J0IHtFbmNvZGVTdHJlYW19IGZyb20gJy4vRW5jb2RlU3RyZWFtLmpzJztcblxuZXhwb3J0IGNsYXNzIEJhc2Uge1xuICBmcm9tQnVmZmVyKGJ1ZmZlcikge1xuICAgIGxldCBzdHJlYW0gPSBuZXcgRGVjb2RlU3RyZWFtKGJ1ZmZlcik7XG4gICAgcmV0dXJuIHRoaXMuZGVjb2RlKHN0cmVhbSk7XG4gIH1cblxuICB0b0J1ZmZlcih2YWx1ZSkge1xuICAgIGxldCBzaXplID0gdGhpcy5zaXplKHZhbHVlKTtcbiAgICBsZXQgYnVmZmVyID0gbmV3IFVpbnQ4QXJyYXkoc2l6ZSk7XG4gICAgbGV0IHN0cmVhbSA9IG5ldyBFbmNvZGVTdHJlYW0oYnVmZmVyKTtcbiAgICB0aGlzLmVuY29kZShzdHJlYW0sIHZhbHVlKTtcbiAgICByZXR1cm4gYnVmZmVyO1xuICB9XG59XG4iLCAiaW1wb3J0IHtEZWNvZGVTdHJlYW19IGZyb20gJy4vRGVjb2RlU3RyZWFtLmpzJztcbmltcG9ydCB7QmFzZX0gZnJvbSAnLi9CYXNlLmpzJztcblxuY2xhc3MgTnVtYmVyVCBleHRlbmRzIEJhc2Uge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBlbmRpYW4gPSAnQkUnKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuZW5kaWFuID0gZW5kaWFuO1xuICAgIHRoaXMuZm4gPSB0aGlzLnR5cGU7XG4gICAgaWYgKHRoaXMudHlwZVt0aGlzLnR5cGUubGVuZ3RoIC0gMV0gIT09ICc4Jykge1xuICAgICAgdGhpcy5mbiArPSB0aGlzLmVuZGlhbjtcbiAgICB9XG4gIH1cblxuICBzaXplKCkge1xuICAgIHJldHVybiBEZWNvZGVTdHJlYW0uVFlQRVNbdGhpcy50eXBlXTtcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0pIHtcbiAgICByZXR1cm4gc3RyZWFtW2ByZWFkJHt0aGlzLmZufWBdKCk7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWwpIHtcbiAgICByZXR1cm4gc3RyZWFtW2B3cml0ZSR7dGhpcy5mbn1gXSh2YWwpO1xuICB9XG59XG5cbmV4cG9ydCB7TnVtYmVyVCBhcyBOdW1iZXJ9O1xuXG5leHBvcnQgY29uc3QgdWludDggPSBuZXcgTnVtYmVyVCgnVUludDgnKTtcbmV4cG9ydCBjb25zdCB1aW50MTZiZSA9IG5ldyBOdW1iZXJUKCdVSW50MTYnLCAnQkUnKTtcbmV4cG9ydCBjb25zdCB1aW50MTYgPSB1aW50MTZiZTtcbmV4cG9ydCBjb25zdCB1aW50MTZsZSA9IG5ldyBOdW1iZXJUKCdVSW50MTYnLCAnTEUnKTtcbmV4cG9ydCBjb25zdCB1aW50MjRiZSA9IG5ldyBOdW1iZXJUKCdVSW50MjQnLCAnQkUnKTtcbmV4cG9ydCBjb25zdCB1aW50MjQgPSB1aW50MjRiZTtcbmV4cG9ydCBjb25zdCB1aW50MjRsZSA9IG5ldyBOdW1iZXJUKCdVSW50MjQnLCAnTEUnKTtcbmV4cG9ydCBjb25zdCB1aW50MzJiZSA9IG5ldyBOdW1iZXJUKCdVSW50MzInLCAnQkUnKTtcbmV4cG9ydCBjb25zdCB1aW50MzIgPSB1aW50MzJiZTtcbmV4cG9ydCBjb25zdCB1aW50MzJsZSA9IG5ldyBOdW1iZXJUKCdVSW50MzInLCAnTEUnKTtcbmV4cG9ydCBjb25zdCBpbnQ4ID0gbmV3IE51bWJlclQoJ0ludDgnKTtcbmV4cG9ydCBjb25zdCBpbnQxNmJlID0gbmV3IE51bWJlclQoJ0ludDE2JywgJ0JFJyk7XG5leHBvcnQgY29uc3QgaW50MTYgPSBpbnQxNmJlO1xuZXhwb3J0IGNvbnN0IGludDE2bGUgPSBuZXcgTnVtYmVyVCgnSW50MTYnLCAnTEUnKTtcbmV4cG9ydCBjb25zdCBpbnQyNGJlID0gbmV3IE51bWJlclQoJ0ludDI0JywgJ0JFJyk7XG5leHBvcnQgY29uc3QgaW50MjQgPSBpbnQyNGJlO1xuZXhwb3J0IGNvbnN0IGludDI0bGUgPSBuZXcgTnVtYmVyVCgnSW50MjQnLCAnTEUnKTtcbmV4cG9ydCBjb25zdCBpbnQzMmJlID0gbmV3IE51bWJlclQoJ0ludDMyJywgJ0JFJyk7XG5leHBvcnQgY29uc3QgaW50MzIgPSBpbnQzMmJlO1xuZXhwb3J0IGNvbnN0IGludDMybGUgPSBuZXcgTnVtYmVyVCgnSW50MzInLCAnTEUnKTtcbmV4cG9ydCBjb25zdCBmbG9hdGJlID0gbmV3IE51bWJlclQoJ0Zsb2F0JywgJ0JFJyk7XG5leHBvcnQgY29uc3QgZmxvYXQgPSBmbG9hdGJlO1xuZXhwb3J0IGNvbnN0IGZsb2F0bGUgPSBuZXcgTnVtYmVyVCgnRmxvYXQnLCAnTEUnKTtcbmV4cG9ydCBjb25zdCBkb3VibGViZSA9IG5ldyBOdW1iZXJUKCdEb3VibGUnLCAnQkUnKTtcbmV4cG9ydCBjb25zdCBkb3VibGUgPSBkb3VibGViZTtcbmV4cG9ydCBjb25zdCBkb3VibGVsZSA9IG5ldyBOdW1iZXJUKCdEb3VibGUnLCAnTEUnKTtcblxuZXhwb3J0IGNsYXNzIEZpeGVkIGV4dGVuZHMgTnVtYmVyVCB7XG4gIGNvbnN0cnVjdG9yKHNpemUsIGVuZGlhbiwgZnJhY0JpdHMgPSBzaXplID4+IDEpIHtcbiAgICBzdXBlcihgSW50JHtzaXplfWAsIGVuZGlhbik7XG4gICAgdGhpcy5fcG9pbnQgPSAxIDw8IGZyYWNCaXRzO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSkge1xuICAgIHJldHVybiBzdXBlci5kZWNvZGUoc3RyZWFtKSAvIHRoaXMuX3BvaW50O1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsKSB7XG4gICAgcmV0dXJuIHN1cGVyLmVuY29kZShzdHJlYW0sICh2YWwgKiB0aGlzLl9wb2ludCkgfCAwKTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZml4ZWQxNmJlID0gbmV3IEZpeGVkKDE2LCAnQkUnKTtcbmV4cG9ydCBjb25zdCBmaXhlZDE2ID0gZml4ZWQxNmJlO1xuZXhwb3J0IGNvbnN0IGZpeGVkMTZsZSA9IG5ldyBGaXhlZCgxNiwgJ0xFJyk7XG5leHBvcnQgY29uc3QgZml4ZWQzMmJlID0gbmV3IEZpeGVkKDMyLCAnQkUnKTtcbmV4cG9ydCBjb25zdCBmaXhlZDMyID0gZml4ZWQzMmJlO1xuZXhwb3J0IGNvbnN0IGZpeGVkMzJsZSA9IG5ldyBGaXhlZCgzMiwgJ0xFJyk7XG4iLCAiaW1wb3J0IHtOdW1iZXIgYXMgTnVtYmVyVH0gZnJvbSAnLi9OdW1iZXIuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUxlbmd0aChsZW5ndGgsIHN0cmVhbSwgcGFyZW50KSB7XG4gIGxldCByZXM7XG4gIGlmICh0eXBlb2YgbGVuZ3RoID09PSAnbnVtYmVyJykge1xuICAgIHJlcyA9IGxlbmd0aDtcblxuICB9IGVsc2UgaWYgKHR5cGVvZiBsZW5ndGggPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXMgPSBsZW5ndGguY2FsbChwYXJlbnQsIHBhcmVudCk7XG5cbiAgfSBlbHNlIGlmIChwYXJlbnQgJiYgKHR5cGVvZiBsZW5ndGggPT09ICdzdHJpbmcnKSkge1xuICAgIHJlcyA9IHBhcmVudFtsZW5ndGhdO1xuXG4gIH0gZWxzZSBpZiAoc3RyZWFtICYmIGxlbmd0aCBpbnN0YW5jZW9mIE51bWJlclQpIHtcbiAgICByZXMgPSBsZW5ndGguZGVjb2RlKHN0cmVhbSk7XG4gIH1cblxuICBpZiAoaXNOYU4ocmVzKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGEgZml4ZWQgc2l6ZScpO1xuICB9XG5cbiAgcmV0dXJuIHJlcztcbn07XG5cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eURlc2NyaXB0b3Ige1xuICBjb25zdHJ1Y3RvcihvcHRzID0ge30pIHtcbiAgICB0aGlzLmVudW1lcmFibGUgPSB0cnVlO1xuICAgIHRoaXMuY29uZmlndXJhYmxlID0gdHJ1ZTtcblxuICAgIGZvciAobGV0IGtleSBpbiBvcHRzKSB7XG4gICAgICBjb25zdCB2YWwgPSBvcHRzW2tleV07XG4gICAgICB0aGlzW2tleV0gPSB2YWw7XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IHtCYXNlfSBmcm9tICcuL0Jhc2UuanMnO1xuaW1wb3J0IHtOdW1iZXIgYXMgTnVtYmVyVH0gZnJvbSAnLi9OdW1iZXIuanMnO1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscy5qcyc7XG5cbmNsYXNzIEFycmF5VCBleHRlbmRzIEJhc2Uge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBsZW5ndGgsIGxlbmd0aFR5cGUgPSAnY291bnQnKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMubGVuZ3RoID0gbGVuZ3RoO1xuICAgIHRoaXMubGVuZ3RoVHlwZSA9IGxlbmd0aFR5cGU7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICBsZXQgbGVuZ3RoO1xuICAgIGNvbnN0IHsgcG9zIH0gPSBzdHJlYW07XG5cbiAgICBjb25zdCByZXMgPSBbXTtcbiAgICBsZXQgY3R4ID0gcGFyZW50O1xuXG4gICAgaWYgKHRoaXMubGVuZ3RoICE9IG51bGwpIHtcbiAgICAgIGxlbmd0aCA9IHV0aWxzLnJlc29sdmVMZW5ndGgodGhpcy5sZW5ndGgsIHN0cmVhbSwgcGFyZW50KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5sZW5ndGggaW5zdGFuY2VvZiBOdW1iZXJUKSB7XG4gICAgICAvLyBkZWZpbmUgaGlkZGVuIHByb3BlcnRpZXNcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHJlcywge1xuICAgICAgICBwYXJlbnQ6ICAgICAgICAgeyB2YWx1ZTogcGFyZW50IH0sXG4gICAgICAgIF9zdGFydE9mZnNldDogICB7IHZhbHVlOiBwb3MgfSxcbiAgICAgICAgX2N1cnJlbnRPZmZzZXQ6IHsgdmFsdWU6IDAsIHdyaXRhYmxlOiB0cnVlIH0sXG4gICAgICAgIF9sZW5ndGg6ICAgICAgICB7IHZhbHVlOiBsZW5ndGggfVxuICAgICAgfSk7XG5cbiAgICAgIGN0eCA9IHJlcztcbiAgICB9XG5cbiAgICBpZiAoKGxlbmd0aCA9PSBudWxsKSB8fCAodGhpcy5sZW5ndGhUeXBlID09PSAnYnl0ZXMnKSkge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gKGxlbmd0aCAhPSBudWxsKSA/XG4gICAgICAgIHN0cmVhbS5wb3MgKyBsZW5ndGhcbiAgICAgIDogKHBhcmVudCAhPSBudWxsID8gcGFyZW50Ll9sZW5ndGggOiB1bmRlZmluZWQpID9cbiAgICAgICAgcGFyZW50Ll9zdGFydE9mZnNldCArIHBhcmVudC5fbGVuZ3RoXG4gICAgICA6XG4gICAgICAgIHN0cmVhbS5sZW5ndGg7XG5cbiAgICAgIHdoaWxlIChzdHJlYW0ucG9zIDwgdGFyZ2V0KSB7XG4gICAgICAgIHJlcy5wdXNoKHRoaXMudHlwZS5kZWNvZGUoc3RyZWFtLCBjdHgpKTtcbiAgICAgIH1cblxuICAgIH0gZWxzZSB7XG4gICAgICBmb3IgKGxldCBpID0gMCwgZW5kID0gbGVuZ3RoOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgICAgcmVzLnB1c2godGhpcy50eXBlLmRlY29kZShzdHJlYW0sIGN0eCkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBzaXplKGFycmF5LCBjdHgsIGluY2x1ZGVQb2ludGVycyA9IHRydWUpIHtcbiAgICBpZiAoIWFycmF5KSB7XG4gICAgICByZXR1cm4gdGhpcy50eXBlLnNpemUobnVsbCwgY3R4KSAqIHV0aWxzLnJlc29sdmVMZW5ndGgodGhpcy5sZW5ndGgsIG51bGwsIGN0eCk7XG4gICAgfVxuXG4gICAgbGV0IHNpemUgPSAwO1xuICAgIGlmICh0aGlzLmxlbmd0aCBpbnN0YW5jZW9mIE51bWJlclQpIHtcbiAgICAgIHNpemUgKz0gdGhpcy5sZW5ndGguc2l6ZSgpO1xuICAgICAgY3R4ID0ge3BhcmVudDogY3R4LCBwb2ludGVyU2l6ZTogMH07XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaXRlbSBvZiBhcnJheSkge1xuICAgICAgc2l6ZSArPSB0aGlzLnR5cGUuc2l6ZShpdGVtLCBjdHgpO1xuICAgIH1cblxuICAgIGlmIChjdHggJiYgaW5jbHVkZVBvaW50ZXJzICYmIHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgc2l6ZSArPSBjdHgucG9pbnRlclNpemU7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBzaXplO1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgYXJyYXksIHBhcmVudCkge1xuICAgIGxldCBjdHggPSBwYXJlbnQ7XG4gICAgaWYgKHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgY3R4ID0ge1xuICAgICAgICBwb2ludGVyczogW10sXG4gICAgICAgIHN0YXJ0T2Zmc2V0OiBzdHJlYW0ucG9zLFxuICAgICAgICBwYXJlbnRcbiAgICAgIH07XG5cbiAgICAgIGN0eC5wb2ludGVyT2Zmc2V0ID0gc3RyZWFtLnBvcyArIHRoaXMuc2l6ZShhcnJheSwgY3R4LCBmYWxzZSk7XG4gICAgICB0aGlzLmxlbmd0aC5lbmNvZGUoc3RyZWFtLCBhcnJheS5sZW5ndGgpO1xuICAgIH1cblxuICAgIGZvciAobGV0IGl0ZW0gb2YgYXJyYXkpIHtcbiAgICAgIHRoaXMudHlwZS5lbmNvZGUoc3RyZWFtLCBpdGVtLCBjdHgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxlbmd0aCBpbnN0YW5jZW9mIE51bWJlclQpIHtcbiAgICAgIGxldCBpID0gMDtcbiAgICAgIHdoaWxlIChpIDwgY3R4LnBvaW50ZXJzLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBwdHIgPSBjdHgucG9pbnRlcnNbaSsrXTtcbiAgICAgICAgcHRyLnR5cGUuZW5jb2RlKHN0cmVhbSwgcHRyLnZhbCwgcHRyLnBhcmVudCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCB7QXJyYXlUIGFzIEFycmF5fTtcbiIsICJpbXBvcnQge0FycmF5IGFzIEFycmF5VH0gZnJvbSAnLi9BcnJheS5qcyc7XG5pbXBvcnQge051bWJlciBhcyBOdW1iZXJUfSBmcm9tICcuL051bWJlci5qcyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzLmpzJztcblxuZXhwb3J0IGNsYXNzIExhenlBcnJheSBleHRlbmRzIEFycmF5VCB7XG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIGNvbnN0IHsgcG9zIH0gPSBzdHJlYW07XG4gICAgY29uc3QgbGVuZ3RoID0gdXRpbHMucmVzb2x2ZUxlbmd0aCh0aGlzLmxlbmd0aCwgc3RyZWFtLCBwYXJlbnQpO1xuXG4gICAgaWYgKHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgcGFyZW50ID0ge1xuICAgICAgICBwYXJlbnQsXG4gICAgICAgIF9zdGFydE9mZnNldDogcG9zLFxuICAgICAgICBfY3VycmVudE9mZnNldDogMCxcbiAgICAgICAgX2xlbmd0aDogbGVuZ3RoXG4gICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IHJlcyA9IG5ldyBMYXp5QXJyYXlWYWx1ZSh0aGlzLnR5cGUsIGxlbmd0aCwgc3RyZWFtLCBwYXJlbnQpO1xuXG4gICAgc3RyZWFtLnBvcyArPSBsZW5ndGggKiB0aGlzLnR5cGUuc2l6ZShudWxsLCBwYXJlbnQpO1xuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBzaXplKHZhbCwgY3R4KSB7XG4gICAgaWYgKHZhbCBpbnN0YW5jZW9mIExhenlBcnJheVZhbHVlKSB7XG4gICAgICB2YWwgPSB2YWwudG9BcnJheSgpO1xuICAgIH1cblxuICAgIHJldHVybiBzdXBlci5zaXplKHZhbCwgY3R4KTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIHZhbCwgY3R4KSB7XG4gICAgaWYgKHZhbCBpbnN0YW5jZW9mIExhenlBcnJheVZhbHVlKSB7XG4gICAgICB2YWwgPSB2YWwudG9BcnJheSgpO1xuICAgIH1cblxuICAgIHJldHVybiBzdXBlci5lbmNvZGUoc3RyZWFtLCB2YWwsIGN0eCk7XG4gIH1cbn1cblxuY2xhc3MgTGF6eUFycmF5VmFsdWUge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBsZW5ndGgsIHN0cmVhbSwgY3R4KSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLmxlbmd0aCA9IGxlbmd0aDtcbiAgICB0aGlzLnN0cmVhbSA9IHN0cmVhbTtcbiAgICB0aGlzLmN0eCA9IGN0eDtcbiAgICB0aGlzLmJhc2UgPSB0aGlzLnN0cmVhbS5wb3M7XG4gICAgdGhpcy5pdGVtcyA9IFtdO1xuICB9XG5cbiAgZ2V0KGluZGV4KSB7XG4gICAgaWYgKChpbmRleCA8IDApIHx8IChpbmRleCA+PSB0aGlzLmxlbmd0aCkpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXRlbXNbaW5kZXhdID09IG51bGwpIHtcbiAgICAgIGNvbnN0IHsgcG9zIH0gPSB0aGlzLnN0cmVhbTtcbiAgICAgIHRoaXMuc3RyZWFtLnBvcyA9IHRoaXMuYmFzZSArICh0aGlzLnR5cGUuc2l6ZShudWxsLCB0aGlzLmN0eCkgKiBpbmRleCk7XG4gICAgICB0aGlzLml0ZW1zW2luZGV4XSA9IHRoaXMudHlwZS5kZWNvZGUodGhpcy5zdHJlYW0sIHRoaXMuY3R4KTtcbiAgICAgIHRoaXMuc3RyZWFtLnBvcyA9IHBvcztcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pdGVtc1tpbmRleF07XG4gIH1cblxuICB0b0FycmF5KCkge1xuICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwLCBlbmQgPSB0aGlzLmxlbmd0aDsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICByZXN1bHQucHVzaCh0aGlzLmdldChpKSk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiIsICJpbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5cbmV4cG9ydCBjbGFzcyBCaXRmaWVsZCBleHRlbmRzIEJhc2Uge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBmbGFncyA9IFtdKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuZmxhZ3MgPSBmbGFncztcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0pIHtcbiAgICBjb25zdCB2YWwgPSB0aGlzLnR5cGUuZGVjb2RlKHN0cmVhbSk7XG5cbiAgICBjb25zdCByZXMgPSB7fTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZmxhZ3MubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGZsYWcgPSB0aGlzLmZsYWdzW2ldO1xuICAgICAgaWYgKGZsYWcgIT0gbnVsbCkge1xuICAgICAgICByZXNbZmxhZ10gPSAhISh2YWwgJiAoMSA8PCBpKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIHNpemUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZS5zaXplKCk7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCBrZXlzKSB7XG4gICAgbGV0IHZhbCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmZsYWdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBmbGFnID0gdGhpcy5mbGFnc1tpXTtcbiAgICAgIGlmIChmbGFnICE9IG51bGwpIHtcbiAgICAgICAgaWYgKGtleXNbZmxhZ10pIHsgdmFsIHw9ICgxIDw8IGkpOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHlwZS5lbmNvZGUoc3RyZWFtLCB2YWwpO1xuICB9XG59XG4iLCAiaW1wb3J0IHtCYXNlfSBmcm9tICcuL0Jhc2UuanMnO1xuaW1wb3J0IHtOdW1iZXIgYXMgTnVtYmVyVH0gZnJvbSAnLi9OdW1iZXIuanMnO1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscy5qcyc7XG5cbmV4cG9ydCBjbGFzcyBCdWZmZXJUIGV4dGVuZHMgQmFzZSB7XG4gIGNvbnN0cnVjdG9yKGxlbmd0aCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5sZW5ndGggPSBsZW5ndGg7XG4gIH1cbiAgXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHV0aWxzLnJlc29sdmVMZW5ndGgodGhpcy5sZW5ndGgsIHN0cmVhbSwgcGFyZW50KTtcbiAgICByZXR1cm4gc3RyZWFtLnJlYWRCdWZmZXIobGVuZ3RoKTtcbiAgfVxuXG4gIHNpemUodmFsLCBwYXJlbnQpIHtcbiAgICBpZiAoIXZhbCkge1xuICAgICAgcmV0dXJuIHV0aWxzLnJlc29sdmVMZW5ndGgodGhpcy5sZW5ndGgsIG51bGwsIHBhcmVudCk7XG4gICAgfVxuXG4gICAgbGV0IGxlbiA9IHZhbC5sZW5ndGg7XG4gICAgaWYgKHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgbGVuICs9IHRoaXMubGVuZ3RoLnNpemUoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGVuO1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgYnVmLCBwYXJlbnQpIHtcbiAgICBpZiAodGhpcy5sZW5ndGggaW5zdGFuY2VvZiBOdW1iZXJUKSB7XG4gICAgICB0aGlzLmxlbmd0aC5lbmNvZGUoc3RyZWFtLCBidWYubGVuZ3RoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyZWFtLndyaXRlQnVmZmVyKGJ1Zik7XG4gIH1cbn1cblxuZXhwb3J0IHtCdWZmZXJUIGFzIEJ1ZmZlcn07XG4iLCAiaW1wb3J0IHtCYXNlfSBmcm9tICcuL0Jhc2UuanMnO1xuXG5leHBvcnQgY2xhc3MgT3B0aW9uYWwgZXh0ZW5kcyBCYXNlIHtcbiAgY29uc3RydWN0b3IodHlwZSwgY29uZGl0aW9uID0gdHJ1ZSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLmNvbmRpdGlvbiA9IGNvbmRpdGlvbjtcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIGxldCB7IGNvbmRpdGlvbiB9ID0gdGhpcztcbiAgICBpZiAodHlwZW9mIGNvbmRpdGlvbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uLmNhbGwocGFyZW50LCBwYXJlbnQpO1xuICAgIH1cblxuICAgIGlmIChjb25kaXRpb24pIHtcbiAgICAgIHJldHVybiB0aGlzLnR5cGUuZGVjb2RlKHN0cmVhbSwgcGFyZW50KTtcbiAgICB9XG4gIH1cblxuICBzaXplKHZhbCwgcGFyZW50KSB7XG4gICAgbGV0IHsgY29uZGl0aW9uIH0gPSB0aGlzO1xuICAgIGlmICh0eXBlb2YgY29uZGl0aW9uID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25kaXRpb24gPSBjb25kaXRpb24uY2FsbChwYXJlbnQsIHBhcmVudCk7XG4gICAgfVxuXG4gICAgaWYgKGNvbmRpdGlvbikge1xuICAgICAgcmV0dXJuIHRoaXMudHlwZS5zaXplKHZhbCwgcGFyZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsLCBwYXJlbnQpIHtcbiAgICBsZXQgeyBjb25kaXRpb24gfSA9IHRoaXM7XG4gICAgaWYgKHR5cGVvZiBjb25kaXRpb24gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbi5jYWxsKHBhcmVudCwgcGFyZW50KTtcbiAgICB9XG5cbiAgICBpZiAoY29uZGl0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy50eXBlLmVuY29kZShzdHJlYW0sIHZhbCwgcGFyZW50KTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzLmpzJztcblxuZXhwb3J0IGNsYXNzIFJlc2VydmVkIGV4dGVuZHMgQmFzZSB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIGNvdW50ID0gMSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLmNvdW50ID0gY291bnQ7XG4gIH1cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgc3RyZWFtLnBvcyArPSB0aGlzLnNpemUobnVsbCwgcGFyZW50KTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgc2l6ZShkYXRhLCBwYXJlbnQpIHtcbiAgICBjb25zdCBjb3VudCA9IHV0aWxzLnJlc29sdmVMZW5ndGgodGhpcy5jb3VudCwgbnVsbCwgcGFyZW50KTtcbiAgICByZXR1cm4gdGhpcy50eXBlLnNpemUoKSAqIGNvdW50O1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsLCBwYXJlbnQpIHtcbiAgICByZXR1cm4gc3RyZWFtLmZpbGwoMCwgdGhpcy5zaXplKHZhbCwgcGFyZW50KSk7XG4gIH1cbn1cbiIsICJpbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5pbXBvcnQge051bWJlciBhcyBOdW1iZXJUfSBmcm9tICcuL051bWJlci5qcyc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzLmpzJztcblxuY2xhc3MgU3RyaW5nVCBleHRlbmRzIEJhc2Uge1xuICBjb25zdHJ1Y3RvcihsZW5ndGgsIGVuY29kaW5nID0gJ2FzY2lpJykge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5sZW5ndGggPSBsZW5ndGg7XG4gICAgdGhpcy5lbmNvZGluZyA9IGVuY29kaW5nO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgbGV0IGxlbmd0aCwgcG9zO1xuXG4gICAgbGV0IHsgZW5jb2RpbmcgfSA9IHRoaXM7XG4gICAgaWYgKHR5cGVvZiBlbmNvZGluZyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgZW5jb2RpbmcgPSBlbmNvZGluZy5jYWxsKHBhcmVudCwgcGFyZW50KSB8fCAnYXNjaWknO1xuICAgIH1cbiAgICBsZXQgd2lkdGggPSBlbmNvZGluZ1dpZHRoKGVuY29kaW5nKTtcblxuICAgIGlmICh0aGlzLmxlbmd0aCAhPSBudWxsKSB7XG4gICAgICBsZW5ndGggPSB1dGlscy5yZXNvbHZlTGVuZ3RoKHRoaXMubGVuZ3RoLCBzdHJlYW0sIHBhcmVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBidWZmZXI7XG4gICAgICAoe2J1ZmZlciwgbGVuZ3RoLCBwb3N9ID0gc3RyZWFtKTtcblxuICAgICAgd2hpbGUgKChwb3MgPCBsZW5ndGggLSB3aWR0aCArIDEpICYmXG4gICAgICAgIChidWZmZXJbcG9zXSAhPT0gMHgwMCB8fFxuICAgICAgICAod2lkdGggPT09IDIgJiYgYnVmZmVyW3BvcysxXSAhPT0gMHgwMClcbiAgICAgICAgKSkge1xuICAgICAgICBwb3MgKz0gd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIGxlbmd0aCA9IHBvcyAtIHN0cmVhbS5wb3M7XG4gICAgfVxuXG5cbiAgICBjb25zdCBzdHJpbmcgPSBzdHJlYW0ucmVhZFN0cmluZyhsZW5ndGgsIGVuY29kaW5nKTtcblxuICAgIGlmICgodGhpcy5sZW5ndGggPT0gbnVsbCkgJiYgKHN0cmVhbS5wb3MgPCBzdHJlYW0ubGVuZ3RoKSkge1xuICAgICAgc3RyZWFtLnBvcys9d2lkdGg7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfVxuXG4gIHNpemUodmFsLCBwYXJlbnQpIHtcbiAgICAvLyBVc2UgdGhlIGRlZmluZWQgdmFsdWUgaWYgbm8gdmFsdWUgd2FzIGdpdmVuXG4gICAgaWYgKHZhbCA9PT0gdW5kZWZpbmVkIHx8IHZhbCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHV0aWxzLnJlc29sdmVMZW5ndGgodGhpcy5sZW5ndGgsIG51bGwsIHBhcmVudCk7XG4gICAgfVxuXG4gICAgbGV0IHsgZW5jb2RpbmcgfSA9IHRoaXM7XG4gICAgaWYgKHR5cGVvZiBlbmNvZGluZyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgZW5jb2RpbmcgPSBlbmNvZGluZy5jYWxsKHBhcmVudCAhPSBudWxsID8gcGFyZW50LnZhbCA6IHVuZGVmaW5lZCwgcGFyZW50ICE9IG51bGwgPyBwYXJlbnQudmFsIDogdW5kZWZpbmVkKSB8fCAnYXNjaWknO1xuICAgIH1cblxuICAgIGlmIChlbmNvZGluZyA9PT0gJ3V0ZjE2YmUnKSB7XG4gICAgICBlbmNvZGluZyA9ICd1dGYxNmxlJztcbiAgICB9XG5cbiAgICBsZXQgc2l6ZSA9IGJ5dGVMZW5ndGgodmFsLCBlbmNvZGluZyk7XG4gICAgaWYgKHRoaXMubGVuZ3RoIGluc3RhbmNlb2YgTnVtYmVyVCkge1xuICAgICAgc2l6ZSArPSB0aGlzLmxlbmd0aC5zaXplKCk7XG4gICAgfVxuXG4gICAgaWYgKCh0aGlzLmxlbmd0aCA9PSBudWxsKSkge1xuICAgICAgc2l6ZSArPSBlbmNvZGluZ1dpZHRoKGVuY29kaW5nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2l6ZTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIHZhbCwgcGFyZW50KSB7XG4gICAgbGV0IHsgZW5jb2RpbmcgfSA9IHRoaXM7XG4gICAgaWYgKHR5cGVvZiBlbmNvZGluZyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgZW5jb2RpbmcgPSBlbmNvZGluZy5jYWxsKHBhcmVudCAhPSBudWxsID8gcGFyZW50LnZhbCA6IHVuZGVmaW5lZCwgcGFyZW50ICE9IG51bGwgPyBwYXJlbnQudmFsIDogdW5kZWZpbmVkKSB8fCAnYXNjaWknO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxlbmd0aCBpbnN0YW5jZW9mIE51bWJlclQpIHtcbiAgICAgIHRoaXMubGVuZ3RoLmVuY29kZShzdHJlYW0sIGJ5dGVMZW5ndGgodmFsLCBlbmNvZGluZykpO1xuICAgIH1cblxuICAgIHN0cmVhbS53cml0ZVN0cmluZyh2YWwsIGVuY29kaW5nKTtcblxuICAgIGlmICgodGhpcy5sZW5ndGggPT0gbnVsbCkpIHtcbiAgICAgIHJldHVybiBlbmNvZGluZ1dpZHRoKGVuY29kaW5nKSA9PSAyID9cbiAgICAgICAgc3RyZWFtLndyaXRlVUludDE2TEUoMHgwMDAwKSA6XG4gICAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KDB4MDApO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBlbmNvZGluZ1dpZHRoKGVuY29kaW5nKSB7XG4gIHN3aXRjaChlbmNvZGluZykge1xuICAgIGNhc2UgJ2FzY2lpJzpcbiAgICBjYXNlICd1dGY4JzogLy8gdXRmOCBpcyBhIGJ5dGUtYmFzZWQgZW5jb2RpbmcgZm9yIHplcm8tdGVybSBzdHJpbmdcbiAgICAgIHJldHVybiAxO1xuICAgIGNhc2UgJ3V0ZjE2bGUnOlxuICAgIGNhc2UgJ3V0ZjE2LWxlJzpcbiAgICBjYXNlICd1dGYtMTZiZSc6XG4gICAgY2FzZSAndXRmLTE2bGUnOlxuICAgIGNhc2UgJ3V0ZjE2YmUnOlxuICAgIGNhc2UgJ3V0ZjE2LWJlJzpcbiAgICBjYXNlICd1Y3MyJzpcbiAgICAgIHJldHVybiAyO1xuICAgIGRlZmF1bHQ6XG4gICAgICAvL1RPRE86IGFzc3VtZSBhbGwgb3RoZXIgZW5jb2RpbmdzIGFyZSAxLWJ5dGVyc1xuICAgICAgLy90aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gZW5jb2RpbmcgJyArIGVuY29kaW5nKTtcbiAgICAgIHJldHVybiAxO1xuICB9XG59XG5cbmZ1bmN0aW9uIGJ5dGVMZW5ndGgoc3RyaW5nLCBlbmNvZGluZykge1xuICBzd2l0Y2ggKGVuY29kaW5nKSB7XG4gICAgY2FzZSAnYXNjaWknOlxuICAgICAgcmV0dXJuIHN0cmluZy5sZW5ndGg7XG4gICAgY2FzZSAndXRmOCc6XG4gICAgICBsZXQgbGVuID0gMDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyaW5nLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGxldCBjID0gc3RyaW5nLmNoYXJDb2RlQXQoaSk7XG5cbiAgICAgICAgaWYgKGMgPj0gMHhkODAwICYmIGMgPD0gMHhkYmZmICYmIGkgPCBzdHJpbmcubGVuZ3RoIC0gMSkge1xuICAgICAgICAgIGxldCBjMiA9IHN0cmluZy5jaGFyQ29kZUF0KCsraSk7XG4gICAgICAgICAgaWYgKChjMiAmIDB4ZmMwMCkgPT09IDB4ZGMwMCkge1xuICAgICAgICAgICAgYyA9ICgoYyAmIDB4M2ZmKSA8PCAxMCkgKyAoYzIgJiAweDNmZikgKyAweDEwMDAwO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyB1bm1hdGNoZWQgc3Vycm9nYXRlLlxuICAgICAgICAgICAgaS0tO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICgoYyAmIDB4ZmZmZmZmODApID09PSAwKSB7XG4gICAgICAgICAgbGVuKys7XG4gICAgICAgIH0gZWxzZSBpZiAoKGMgJiAweGZmZmZmODAwKSA9PT0gMCkge1xuICAgICAgICAgIGxlbiArPSAyO1xuICAgICAgICB9IGVsc2UgaWYgKChjICYgMHhmZmZmMDAwMCkgPT09IDApIHtcbiAgICAgICAgICBsZW4gKz0gMztcbiAgICAgICAgfSBlbHNlIGlmICgoYyAmIDB4ZmZlMDAwMDApID09PSAwKSB7XG4gICAgICAgICAgbGVuICs9IDQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBsZW47XG4gICAgY2FzZSAndXRmMTZsZSc6XG4gICAgY2FzZSAndXRmMTYtbGUnOlxuICAgIGNhc2UgJ3V0ZjE2YmUnOlxuICAgIGNhc2UgJ3V0ZjE2LWJlJzpcbiAgICBjYXNlICd1Y3MyJzpcbiAgICAgIHJldHVybiBzdHJpbmcubGVuZ3RoICogMjtcbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIGVuY29kaW5nICcgKyBlbmNvZGluZyk7XG4gIH1cbn1cblxuZXhwb3J0IHtTdHJpbmdUIGFzIFN0cmluZ307XG4iLCAiaW1wb3J0IHtCYXNlfSBmcm9tICcuL0Jhc2UuanMnO1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscy5qcyc7XG5cbmV4cG9ydCBjbGFzcyBTdHJ1Y3QgZXh0ZW5kcyBCYXNlIHtcbiAgY29uc3RydWN0b3IoZmllbGRzID0ge30pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZmllbGRzID0gZmllbGRzO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBsZW5ndGggPSAwKSB7XG4gICAgY29uc3QgcmVzID0gdGhpcy5fc2V0dXAoc3RyZWFtLCBwYXJlbnQsIGxlbmd0aCk7XG4gICAgdGhpcy5fcGFyc2VGaWVsZHMoc3RyZWFtLCByZXMsIHRoaXMuZmllbGRzKTtcblxuICAgIGlmICh0aGlzLnByb2Nlc3MgIT0gbnVsbCkge1xuICAgICAgdGhpcy5wcm9jZXNzLmNhbGwocmVzLCBzdHJlYW0pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgX3NldHVwKHN0cmVhbSwgcGFyZW50LCBsZW5ndGgpIHtcbiAgICBjb25zdCByZXMgPSB7fTtcblxuICAgIC8vIGRlZmluZSBoaWRkZW4gcHJvcGVydGllc1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHJlcywge1xuICAgICAgcGFyZW50OiAgICAgICAgIHsgdmFsdWU6IHBhcmVudCB9LFxuICAgICAgX3N0YXJ0T2Zmc2V0OiAgIHsgdmFsdWU6IHN0cmVhbS5wb3MgfSxcbiAgICAgIF9jdXJyZW50T2Zmc2V0OiB7IHZhbHVlOiAwLCB3cml0YWJsZTogdHJ1ZSB9LFxuICAgICAgX2xlbmd0aDogICAgICAgIHsgdmFsdWU6IGxlbmd0aCB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgX3BhcnNlRmllbGRzKHN0cmVhbSwgcmVzLCBmaWVsZHMpIHtcbiAgICBmb3IgKGxldCBrZXkgaW4gZmllbGRzKSB7XG4gICAgICB2YXIgdmFsO1xuICAgICAgY29uc3QgdHlwZSA9IGZpZWxkc1trZXldO1xuICAgICAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHZhbCA9IHR5cGUuY2FsbChyZXMsIHJlcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YWwgPSB0eXBlLmRlY29kZShzdHJlYW0sIHJlcyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAodmFsIGluc3RhbmNlb2YgdXRpbHMuUHJvcGVydHlEZXNjcmlwdG9yKSB7XG4gICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlcywga2V5LCB2YWwpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc1trZXldID0gdmFsO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJlcy5fY3VycmVudE9mZnNldCA9IHN0cmVhbS5wb3MgLSByZXMuX3N0YXJ0T2Zmc2V0O1xuICAgIH1cblxuICB9XG5cbiAgc2l6ZSh2YWwsIHBhcmVudCwgaW5jbHVkZVBvaW50ZXJzID0gdHJ1ZSkge1xuICAgIGlmICh2YWwgPT0gbnVsbCkgeyB2YWwgPSB7fTsgfVxuICAgIGNvbnN0IGN0eCA9IHtcbiAgICAgIHBhcmVudCxcbiAgICAgIHZhbCxcbiAgICAgIHBvaW50ZXJTaXplOiAwXG4gICAgfTtcblxuICAgIGlmICh0aGlzLnByZUVuY29kZSAhPSBudWxsKSB7XG4gICAgICB0aGlzLnByZUVuY29kZS5jYWxsKHZhbCk7XG4gICAgfVxuXG4gICAgbGV0IHNpemUgPSAwO1xuICAgIGZvciAobGV0IGtleSBpbiB0aGlzLmZpZWxkcykge1xuICAgICAgY29uc3QgdHlwZSA9IHRoaXMuZmllbGRzW2tleV07XG4gICAgICBpZiAodHlwZS5zaXplICE9IG51bGwpIHtcbiAgICAgICAgc2l6ZSArPSB0eXBlLnNpemUodmFsW2tleV0sIGN0eCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGluY2x1ZGVQb2ludGVycykge1xuICAgICAgc2l6ZSArPSBjdHgucG9pbnRlclNpemU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNpemU7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWwsIHBhcmVudCkge1xuICAgIGxldCB0eXBlO1xuICAgIGlmICh0aGlzLnByZUVuY29kZSAhPSBudWxsKSB7XG4gICAgICB0aGlzLnByZUVuY29kZS5jYWxsKHZhbCwgc3RyZWFtKTtcbiAgICB9XG5cbiAgICBjb25zdCBjdHggPSB7XG4gICAgICBwb2ludGVyczogW10sXG4gICAgICBzdGFydE9mZnNldDogc3RyZWFtLnBvcyxcbiAgICAgIHBhcmVudCxcbiAgICAgIHZhbCxcbiAgICAgIHBvaW50ZXJTaXplOiAwXG4gICAgfTtcblxuICAgIGN0eC5wb2ludGVyT2Zmc2V0ID0gc3RyZWFtLnBvcyArIHRoaXMuc2l6ZSh2YWwsIGN0eCwgZmFsc2UpO1xuXG4gICAgZm9yIChsZXQga2V5IGluIHRoaXMuZmllbGRzKSB7XG4gICAgICB0eXBlID0gdGhpcy5maWVsZHNba2V5XTtcbiAgICAgIGlmICh0eXBlLmVuY29kZSAhPSBudWxsKSB7XG4gICAgICAgIHR5cGUuZW5jb2RlKHN0cmVhbSwgdmFsW2tleV0sIGN0eCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGkgPSAwO1xuICAgIHdoaWxlIChpIDwgY3R4LnBvaW50ZXJzLmxlbmd0aCkge1xuICAgICAgY29uc3QgcHRyID0gY3R4LnBvaW50ZXJzW2krK107XG4gICAgICBwdHIudHlwZS5lbmNvZGUoc3RyZWFtLCBwdHIudmFsLCBwdHIucGFyZW50KTtcbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQge1N0cnVjdH0gZnJvbSAnLi9TdHJ1Y3QuanMnO1xuXG5jb25zdCBnZXRQYXRoID0gKG9iamVjdCwgcGF0aEFycmF5KSA9PiB7XG4gIHJldHVybiBwYXRoQXJyYXkucmVkdWNlKChwcmV2T2JqLCBrZXkpID0+IHByZXZPYmogJiYgcHJldk9ialtrZXldLCBvYmplY3QpO1xufTtcblxuZXhwb3J0IGNsYXNzIFZlcnNpb25lZFN0cnVjdCBleHRlbmRzIFN0cnVjdCB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIHZlcnNpb25zID0ge30pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy52ZXJzaW9ucyA9IHZlcnNpb25zO1xuICAgIGlmICh0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMudmVyc2lvblBhdGggPSB0eXBlLnNwbGl0KCcuJyk7XG4gICAgfVxuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBsZW5ndGggPSAwKSB7XG4gICAgY29uc3QgcmVzID0gdGhpcy5fc2V0dXAoc3RyZWFtLCBwYXJlbnQsIGxlbmd0aCk7XG5cbiAgICBpZiAodHlwZW9mIHRoaXMudHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJlcy52ZXJzaW9uID0gZ2V0UGF0aChwYXJlbnQsIHRoaXMudmVyc2lvblBhdGgpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXMudmVyc2lvbiA9IHRoaXMudHlwZS5kZWNvZGUoc3RyZWFtKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52ZXJzaW9ucy5oZWFkZXIpIHtcbiAgICAgIHRoaXMuX3BhcnNlRmllbGRzKHN0cmVhbSwgcmVzLCB0aGlzLnZlcnNpb25zLmhlYWRlcik7XG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRzID0gdGhpcy52ZXJzaW9uc1tyZXMudmVyc2lvbl07XG4gICAgaWYgKChmaWVsZHMgPT0gbnVsbCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biB2ZXJzaW9uICR7cmVzLnZlcnNpb259YCk7XG4gICAgfVxuXG4gICAgaWYgKGZpZWxkcyBpbnN0YW5jZW9mIFZlcnNpb25lZFN0cnVjdCkge1xuICAgICAgcmV0dXJuIGZpZWxkcy5kZWNvZGUoc3RyZWFtLCBwYXJlbnQpO1xuICAgIH1cblxuICAgIHRoaXMuX3BhcnNlRmllbGRzKHN0cmVhbSwgcmVzLCBmaWVsZHMpO1xuXG4gICAgaWYgKHRoaXMucHJvY2VzcyAhPSBudWxsKSB7XG4gICAgICB0aGlzLnByb2Nlc3MuY2FsbChyZXMsIHN0cmVhbSk7XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cblxuICBzaXplKHZhbCwgcGFyZW50LCBpbmNsdWRlUG9pbnRlcnMgPSB0cnVlKSB7XG4gICAgbGV0IGtleSwgdHlwZTtcbiAgICBpZiAoIXZhbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgYSBmaXhlZCBzaXplJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJlRW5jb2RlICE9IG51bGwpIHtcbiAgICAgIHRoaXMucHJlRW5jb2RlLmNhbGwodmFsKTtcbiAgICB9XG5cbiAgICBjb25zdCBjdHggPSB7XG4gICAgICBwYXJlbnQsXG4gICAgICB2YWwsXG4gICAgICBwb2ludGVyU2l6ZTogMFxuICAgIH07XG5cbiAgICBsZXQgc2l6ZSA9IDA7XG4gICAgaWYgKHR5cGVvZiB0aGlzLnR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICBzaXplICs9IHRoaXMudHlwZS5zaXplKHZhbC52ZXJzaW9uLCBjdHgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZlcnNpb25zLmhlYWRlcikge1xuICAgICAgZm9yIChrZXkgaW4gdGhpcy52ZXJzaW9ucy5oZWFkZXIpIHtcbiAgICAgICAgdHlwZSA9IHRoaXMudmVyc2lvbnMuaGVhZGVyW2tleV07XG4gICAgICAgIGlmICh0eXBlLnNpemUgIT0gbnVsbCkge1xuICAgICAgICAgIHNpemUgKz0gdHlwZS5zaXplKHZhbFtrZXldLCBjdHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRzID0gdGhpcy52ZXJzaW9uc1t2YWwudmVyc2lvbl07XG4gICAgaWYgKChmaWVsZHMgPT0gbnVsbCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biB2ZXJzaW9uICR7dmFsLnZlcnNpb259YCk7XG4gICAgfVxuXG4gICAgZm9yIChrZXkgaW4gZmllbGRzKSB7XG4gICAgICB0eXBlID0gZmllbGRzW2tleV07XG4gICAgICBpZiAodHlwZS5zaXplICE9IG51bGwpIHtcbiAgICAgICAgc2l6ZSArPSB0eXBlLnNpemUodmFsW2tleV0sIGN0eCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGluY2x1ZGVQb2ludGVycykge1xuICAgICAgc2l6ZSArPSBjdHgucG9pbnRlclNpemU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNpemU7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCB2YWwsIHBhcmVudCkge1xuICAgIGxldCBrZXksIHR5cGU7XG4gICAgaWYgKHRoaXMucHJlRW5jb2RlICE9IG51bGwpIHtcbiAgICAgIHRoaXMucHJlRW5jb2RlLmNhbGwodmFsLCBzdHJlYW0pO1xuICAgIH1cblxuICAgIGNvbnN0IGN0eCA9IHtcbiAgICAgIHBvaW50ZXJzOiBbXSxcbiAgICAgIHN0YXJ0T2Zmc2V0OiBzdHJlYW0ucG9zLFxuICAgICAgcGFyZW50LFxuICAgICAgdmFsLFxuICAgICAgcG9pbnRlclNpemU6IDBcbiAgICB9O1xuXG4gICAgY3R4LnBvaW50ZXJPZmZzZXQgPSBzdHJlYW0ucG9zICsgdGhpcy5zaXplKHZhbCwgY3R4LCBmYWxzZSk7XG5cbiAgICBpZiAodHlwZW9mIHRoaXMudHlwZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMudHlwZS5lbmNvZGUoc3RyZWFtLCB2YWwudmVyc2lvbik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmVyc2lvbnMuaGVhZGVyKSB7XG4gICAgICBmb3IgKGtleSBpbiB0aGlzLnZlcnNpb25zLmhlYWRlcikge1xuICAgICAgICB0eXBlID0gdGhpcy52ZXJzaW9ucy5oZWFkZXJba2V5XTtcbiAgICAgICAgaWYgKHR5cGUuZW5jb2RlICE9IG51bGwpIHtcbiAgICAgICAgICB0eXBlLmVuY29kZShzdHJlYW0sIHZhbFtrZXldLCBjdHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRzID0gdGhpcy52ZXJzaW9uc1t2YWwudmVyc2lvbl07XG4gICAgZm9yIChrZXkgaW4gZmllbGRzKSB7XG4gICAgICB0eXBlID0gZmllbGRzW2tleV07XG4gICAgICBpZiAodHlwZS5lbmNvZGUgIT0gbnVsbCkge1xuICAgICAgICB0eXBlLmVuY29kZShzdHJlYW0sIHZhbFtrZXldLCBjdHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBpID0gMDtcbiAgICB3aGlsZSAoaSA8IGN0eC5wb2ludGVycy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IHB0ciA9IGN0eC5wb2ludGVyc1tpKytdO1xuICAgICAgcHRyLnR5cGUuZW5jb2RlKHN0cmVhbSwgcHRyLnZhbCwgcHRyLnBhcmVudCk7XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscy5qcyc7XG5pbXBvcnQge0Jhc2V9IGZyb20gJy4vQmFzZS5qcyc7XG5cbmV4cG9ydCBjbGFzcyBQb2ludGVyIGV4dGVuZHMgQmFzZSB7XG4gIGNvbnN0cnVjdG9yKG9mZnNldFR5cGUsIHR5cGUsIG9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5vZmZzZXRUeXBlID0gb2Zmc2V0VHlwZTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ3ZvaWQnKSB7IHRoaXMudHlwZSA9IG51bGw7IH1cbiAgICBpZiAodGhpcy5vcHRpb25zLnR5cGUgPT0gbnVsbCkgeyB0aGlzLm9wdGlvbnMudHlwZSA9ICdsb2NhbCc7IH1cbiAgICBpZiAodGhpcy5vcHRpb25zLmFsbG93TnVsbCA9PSBudWxsKSB7IHRoaXMub3B0aW9ucy5hbGxvd051bGwgPSB0cnVlOyB9XG4gICAgaWYgKHRoaXMub3B0aW9ucy5udWxsVmFsdWUgPT0gbnVsbCkgeyB0aGlzLm9wdGlvbnMubnVsbFZhbHVlID0gMDsgfVxuICAgIGlmICh0aGlzLm9wdGlvbnMubGF6eSA9PSBudWxsKSB7IHRoaXMub3B0aW9ucy5sYXp5ID0gZmFsc2U7IH1cbiAgICBpZiAodGhpcy5vcHRpb25zLnJlbGF0aXZlVG8pIHtcbiAgICAgIGlmICh0eXBlb2YgdGhpcy5vcHRpb25zLnJlbGF0aXZlVG8gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyZWxhdGl2ZVRvIG9wdGlvbiBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcbiAgICAgIH1cbiAgICAgIHRoaXMucmVsYXRpdmVUb0dldHRlciA9IG9wdGlvbnMucmVsYXRpdmVUbztcbiAgICB9XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBjdHgpIHtcbiAgICBjb25zdCBvZmZzZXQgPSB0aGlzLm9mZnNldFR5cGUuZGVjb2RlKHN0cmVhbSwgY3R4KTtcblxuICAgIC8vIGhhbmRsZSBOVUxMIHBvaW50ZXJzXG4gICAgaWYgKChvZmZzZXQgPT09IHRoaXMub3B0aW9ucy5udWxsVmFsdWUpICYmIHRoaXMub3B0aW9ucy5hbGxvd051bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGxldCByZWxhdGl2ZTtcbiAgICBzd2l0Y2ggKHRoaXMub3B0aW9ucy50eXBlKSB7XG4gICAgICBjYXNlICdsb2NhbCc6ICAgICByZWxhdGl2ZSA9IGN0eC5fc3RhcnRPZmZzZXQ7IGJyZWFrO1xuICAgICAgY2FzZSAnaW1tZWRpYXRlJzogcmVsYXRpdmUgPSBzdHJlYW0ucG9zIC0gdGhpcy5vZmZzZXRUeXBlLnNpemUoKTsgYnJlYWs7XG4gICAgICBjYXNlICdwYXJlbnQnOiAgICByZWxhdGl2ZSA9IGN0eC5wYXJlbnQuX3N0YXJ0T2Zmc2V0OyBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHZhciBjID0gY3R4O1xuICAgICAgICB3aGlsZSAoYy5wYXJlbnQpIHtcbiAgICAgICAgICBjID0gYy5wYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICByZWxhdGl2ZSA9IGMuX3N0YXJ0T2Zmc2V0IHx8IDA7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5yZWxhdGl2ZVRvKSB7XG4gICAgICByZWxhdGl2ZSArPSB0aGlzLnJlbGF0aXZlVG9HZXR0ZXIoY3R4KTtcbiAgICB9XG5cbiAgICBjb25zdCBwdHIgPSBvZmZzZXQgKyByZWxhdGl2ZTtcblxuICAgIGlmICh0aGlzLnR5cGUgIT0gbnVsbCkge1xuICAgICAgbGV0IHZhbCA9IG51bGw7XG4gICAgICBjb25zdCBkZWNvZGVWYWx1ZSA9ICgpID0+IHtcbiAgICAgICAgaWYgKHZhbCAhPSBudWxsKSB7IHJldHVybiB2YWw7IH1cblxuICAgICAgICBjb25zdCB7IHBvcyB9ID0gc3RyZWFtO1xuICAgICAgICBzdHJlYW0ucG9zID0gcHRyO1xuICAgICAgICB2YWwgPSB0aGlzLnR5cGUuZGVjb2RlKHN0cmVhbSwgY3R4KTtcbiAgICAgICAgc3RyZWFtLnBvcyA9IHBvcztcbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgIH07XG5cbiAgICAgIC8vIElmIHRoaXMgaXMgYSBsYXp5IHBvaW50ZXIsIGRlZmluZSBhIGdldHRlciB0byBkZWNvZGUgb25seSB3aGVuIG5lZWRlZC5cbiAgICAgIC8vIFRoaXMgb2J2aW91c2x5IG9ubHkgd29ya3Mgd2hlbiB0aGUgcG9pbnRlciBpcyBjb250YWluZWQgYnkgYSBTdHJ1Y3QuXG4gICAgICBpZiAodGhpcy5vcHRpb25zLmxhenkpIHtcbiAgICAgICAgcmV0dXJuIG5ldyB1dGlscy5Qcm9wZXJ0eURlc2NyaXB0b3Ioe1xuICAgICAgICAgIGdldDogZGVjb2RlVmFsdWV9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRlY29kZVZhbHVlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBwdHI7XG4gICAgfVxuICB9XG5cbiAgc2l6ZSh2YWwsIGN0eCkge1xuICAgIGNvbnN0IHBhcmVudCA9IGN0eDtcbiAgICBzd2l0Y2ggKHRoaXMub3B0aW9ucy50eXBlKSB7XG4gICAgICBjYXNlICdsb2NhbCc6IGNhc2UgJ2ltbWVkaWF0ZSc6XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAncGFyZW50JzpcbiAgICAgICAgY3R4ID0gY3R4LnBhcmVudDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OiAvLyBnbG9iYWxcbiAgICAgICAgd2hpbGUgKGN0eC5wYXJlbnQpIHtcbiAgICAgICAgICBjdHggPSBjdHgucGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHsgdHlwZSB9ID0gdGhpcztcbiAgICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgICBpZiAoISh2YWwgaW5zdGFuY2VvZiBWb2lkUG9pbnRlcikpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTXVzdCBiZSBhIFZvaWRQb2ludGVyXCIpO1xuICAgICAgfVxuXG4gICAgICAoeyB0eXBlIH0gPSB2YWwpO1xuICAgICAgdmFsID0gdmFsLnZhbHVlO1xuICAgIH1cblxuICAgIGlmICh2YWwgJiYgY3R4KSB7XG4gICAgICAvLyBNdXN0IGJlIHdyaXR0ZW4gYXMgdHdvIHNlcGFyYXRlIGxpbmVzIHJhdGhlciB0aGFuICs9IGluIGNhc2UgYHR5cGUuc2l6ZWAgbXV0YXRlcyBjdHgucG9pbnRlclNpemUuXG4gICAgICBsZXQgc2l6ZSA9IHR5cGUuc2l6ZSh2YWwsIHBhcmVudCk7XG4gICAgICBjdHgucG9pbnRlclNpemUgKz0gc2l6ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5vZmZzZXRUeXBlLnNpemUoKTtcbiAgfVxuXG4gIGVuY29kZShzdHJlYW0sIHZhbCwgY3R4KSB7XG4gICAgbGV0IHJlbGF0aXZlO1xuICAgIGNvbnN0IHBhcmVudCA9IGN0eDtcbiAgICBpZiAoKHZhbCA9PSBudWxsKSkge1xuICAgICAgdGhpcy5vZmZzZXRUeXBlLmVuY29kZShzdHJlYW0sIHRoaXMub3B0aW9ucy5udWxsVmFsdWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHN3aXRjaCAodGhpcy5vcHRpb25zLnR5cGUpIHtcbiAgICAgIGNhc2UgJ2xvY2FsJzpcbiAgICAgICAgcmVsYXRpdmUgPSBjdHguc3RhcnRPZmZzZXQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaW1tZWRpYXRlJzpcbiAgICAgICAgcmVsYXRpdmUgPSBzdHJlYW0ucG9zICsgdGhpcy5vZmZzZXRUeXBlLnNpemUodmFsLCBwYXJlbnQpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3BhcmVudCc6XG4gICAgICAgIGN0eCA9IGN0eC5wYXJlbnQ7XG4gICAgICAgIHJlbGF0aXZlID0gY3R4LnN0YXJ0T2Zmc2V0O1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6IC8vIGdsb2JhbFxuICAgICAgICByZWxhdGl2ZSA9IDA7XG4gICAgICAgIHdoaWxlIChjdHgucGFyZW50KSB7XG4gICAgICAgICAgY3R4ID0gY3R4LnBhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLm9wdGlvbnMucmVsYXRpdmVUbykge1xuICAgICAgcmVsYXRpdmUgKz0gdGhpcy5yZWxhdGl2ZVRvR2V0dGVyKHBhcmVudC52YWwpO1xuICAgIH1cblxuICAgIHRoaXMub2Zmc2V0VHlwZS5lbmNvZGUoc3RyZWFtLCBjdHgucG9pbnRlck9mZnNldCAtIHJlbGF0aXZlKTtcblxuICAgIGxldCB7IHR5cGUgfSA9IHRoaXM7XG4gICAgaWYgKHR5cGUgPT0gbnVsbCkge1xuICAgICAgaWYgKCEodmFsIGluc3RhbmNlb2YgVm9pZFBvaW50ZXIpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk11c3QgYmUgYSBWb2lkUG9pbnRlclwiKTtcbiAgICAgIH1cblxuICAgICAgKHsgdHlwZSB9ID0gdmFsKTtcbiAgICAgIHZhbCA9IHZhbC52YWx1ZTtcbiAgICB9XG5cbiAgICBjdHgucG9pbnRlcnMucHVzaCh7XG4gICAgICB0eXBlLFxuICAgICAgdmFsLFxuICAgICAgcGFyZW50XG4gICAgfSk7XG5cbiAgICByZXR1cm4gY3R4LnBvaW50ZXJPZmZzZXQgKz0gdHlwZS5zaXplKHZhbCwgcGFyZW50KTtcbiAgfVxufVxuXG4vLyBBIHBvaW50ZXIgd2hvc2UgdHlwZSBpcyBkZXRlcm1pbmVkIGF0IGRlY29kZSB0aW1lXG5leHBvcnQgY2xhc3MgVm9pZFBvaW50ZXIge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCB2YWx1ZSkge1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG4iLCAiZnVuY3Rpb24gX2RlZmluZV9wcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHtcbiAgICBpZiAoa2V5IGluIG9iaikge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pO1xuICAgIH0gZWxzZSBvYmpba2V5XSA9IHZhbHVlO1xuXG4gICAgcmV0dXJuIG9iajtcbn1cbmV4cG9ydCB7IF9kZWZpbmVfcHJvcGVydHkgYXMgXyB9O1xuIiwgIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbkNvcHlyaWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLlxuXG5QZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnlcbnB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZC5cblxuVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMgV0lUSFxuUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZXG5BTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBTUEVDSUFMLCBESVJFQ1QsXG5JTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST01cbkxPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SXG5PVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SXG5QRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLlxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogKi9cbi8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlLCBTdXBwcmVzc2VkRXJyb3IsIFN5bWJvbCwgSXRlcmF0b3IgKi9cblxudmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7XG4gIGV4dGVuZFN0YXRpY3MgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgfHxcbiAgICAgICh7IF9fcHJvdG9fXzogW10gfSBpbnN0YW5jZW9mIEFycmF5ICYmIGZ1bmN0aW9uIChkLCBiKSB7IGQuX19wcm90b19fID0gYjsgfSkgfHxcbiAgICAgIGZ1bmN0aW9uIChkLCBiKSB7IGZvciAodmFyIHAgaW4gYikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiLCBwKSkgZFtwXSA9IGJbcF07IH07XG4gIHJldHVybiBleHRlbmRTdGF0aWNzKGQsIGIpO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIF9fZXh0ZW5kcyhkLCBiKSB7XG4gIGlmICh0eXBlb2YgYiAhPT0gXCJmdW5jdGlvblwiICYmIGIgIT09IG51bGwpXG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSBcIiArIFN0cmluZyhiKSArIFwiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGxcIik7XG4gIGV4dGVuZFN0YXRpY3MoZCwgYik7XG4gIGZ1bmN0aW9uIF9fKCkgeyB0aGlzLmNvbnN0cnVjdG9yID0gZDsgfVxuICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7XG59XG5cbmV4cG9ydCB2YXIgX19hc3NpZ24gPSBmdW5jdGlvbigpIHtcbiAgX19hc3NpZ24gPSBPYmplY3QuYXNzaWduIHx8IGZ1bmN0aW9uIF9fYXNzaWduKHQpIHtcbiAgICAgIGZvciAodmFyIHMsIGkgPSAxLCBuID0gYXJndW1lbnRzLmxlbmd0aDsgaSA8IG47IGkrKykge1xuICAgICAgICAgIHMgPSBhcmd1bWVudHNbaV07XG4gICAgICAgICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApKSB0W3BdID0gc1twXTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0O1xuICB9XG4gIHJldHVybiBfX2Fzc2lnbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19yZXN0KHMsIGUpIHtcbiAgdmFyIHQgPSB7fTtcbiAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICB0W3BdID0gc1twXTtcbiAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICB9XG4gIHJldHVybiB0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYykge1xuICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkO1xuICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QuZGVjb3JhdGUgPT09IFwiZnVuY3Rpb25cIikgciA9IFJlZmxlY3QuZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpO1xuICBlbHNlIGZvciAodmFyIGkgPSBkZWNvcmF0b3JzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSBpZiAoZCA9IGRlY29yYXRvcnNbaV0pIHIgPSAoYyA8IDMgPyBkKHIpIDogYyA+IDMgPyBkKHRhcmdldCwga2V5LCByKSA6IGQodGFyZ2V0LCBrZXkpKSB8fCByO1xuICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19wYXJhbShwYXJhbUluZGV4LCBkZWNvcmF0b3IpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQsIGtleSkgeyBkZWNvcmF0b3IodGFyZ2V0LCBrZXksIHBhcmFtSW5kZXgpOyB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2VzRGVjb3JhdGUoY3RvciwgZGVzY3JpcHRvckluLCBkZWNvcmF0b3JzLCBjb250ZXh0SW4sIGluaXRpYWxpemVycywgZXh0cmFJbml0aWFsaXplcnMpIHtcbiAgZnVuY3Rpb24gYWNjZXB0KGYpIHsgaWYgKGYgIT09IHZvaWQgMCAmJiB0eXBlb2YgZiAhPT0gXCJmdW5jdGlvblwiKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiRnVuY3Rpb24gZXhwZWN0ZWRcIik7IHJldHVybiBmOyB9XG4gIHZhciBraW5kID0gY29udGV4dEluLmtpbmQsIGtleSA9IGtpbmQgPT09IFwiZ2V0dGVyXCIgPyBcImdldFwiIDoga2luZCA9PT0gXCJzZXR0ZXJcIiA/IFwic2V0XCIgOiBcInZhbHVlXCI7XG4gIHZhciB0YXJnZXQgPSAhZGVzY3JpcHRvckluICYmIGN0b3IgPyBjb250ZXh0SW5bXCJzdGF0aWNcIl0gPyBjdG9yIDogY3Rvci5wcm90b3R5cGUgOiBudWxsO1xuICB2YXIgZGVzY3JpcHRvciA9IGRlc2NyaXB0b3JJbiB8fCAodGFyZ2V0ID8gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGNvbnRleHRJbi5uYW1lKSA6IHt9KTtcbiAgdmFyIF8sIGRvbmUgPSBmYWxzZTtcbiAgZm9yICh2YXIgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgIHZhciBjb250ZXh0ID0ge307XG4gICAgICBmb3IgKHZhciBwIGluIGNvbnRleHRJbikgY29udGV4dFtwXSA9IHAgPT09IFwiYWNjZXNzXCIgPyB7fSA6IGNvbnRleHRJbltwXTtcbiAgICAgIGZvciAodmFyIHAgaW4gY29udGV4dEluLmFjY2VzcykgY29udGV4dC5hY2Nlc3NbcF0gPSBjb250ZXh0SW4uYWNjZXNzW3BdO1xuICAgICAgY29udGV4dC5hZGRJbml0aWFsaXplciA9IGZ1bmN0aW9uIChmKSB7IGlmIChkb25lKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkXCIpOyBleHRyYUluaXRpYWxpemVycy5wdXNoKGFjY2VwdChmIHx8IG51bGwpKTsgfTtcbiAgICAgIHZhciByZXN1bHQgPSAoMCwgZGVjb3JhdG9yc1tpXSkoa2luZCA9PT0gXCJhY2Nlc3NvclwiID8geyBnZXQ6IGRlc2NyaXB0b3IuZ2V0LCBzZXQ6IGRlc2NyaXB0b3Iuc2V0IH0gOiBkZXNjcmlwdG9yW2tleV0sIGNvbnRleHQpO1xuICAgICAgaWYgKGtpbmQgPT09IFwiYWNjZXNzb3JcIikge1xuICAgICAgICAgIGlmIChyZXN1bHQgPT09IHZvaWQgMCkgY29udGludWU7XG4gICAgICAgICAgaWYgKHJlc3VsdCA9PT0gbnVsbCB8fCB0eXBlb2YgcmVzdWx0ICE9PSBcIm9iamVjdFwiKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiT2JqZWN0IGV4cGVjdGVkXCIpO1xuICAgICAgICAgIGlmIChfID0gYWNjZXB0KHJlc3VsdC5nZXQpKSBkZXNjcmlwdG9yLmdldCA9IF87XG4gICAgICAgICAgaWYgKF8gPSBhY2NlcHQocmVzdWx0LnNldCkpIGRlc2NyaXB0b3Iuc2V0ID0gXztcbiAgICAgICAgICBpZiAoXyA9IGFjY2VwdChyZXN1bHQuaW5pdCkpIGluaXRpYWxpemVycy51bnNoaWZ0KF8pO1xuICAgICAgfVxuICAgICAgZWxzZSBpZiAoXyA9IGFjY2VwdChyZXN1bHQpKSB7XG4gICAgICAgICAgaWYgKGtpbmQgPT09IFwiZmllbGRcIikgaW5pdGlhbGl6ZXJzLnVuc2hpZnQoXyk7XG4gICAgICAgICAgZWxzZSBkZXNjcmlwdG9yW2tleV0gPSBfO1xuICAgICAgfVxuICB9XG4gIGlmICh0YXJnZXQpIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGNvbnRleHRJbi5uYW1lLCBkZXNjcmlwdG9yKTtcbiAgZG9uZSA9IHRydWU7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gX19ydW5Jbml0aWFsaXplcnModGhpc0FyZywgaW5pdGlhbGl6ZXJzLCB2YWx1ZSkge1xuICB2YXIgdXNlVmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID4gMjtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBpbml0aWFsaXplcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhbHVlID0gdXNlVmFsdWUgPyBpbml0aWFsaXplcnNbaV0uY2FsbCh0aGlzQXJnLCB2YWx1ZSkgOiBpbml0aWFsaXplcnNbaV0uY2FsbCh0aGlzQXJnKTtcbiAgfVxuICByZXR1cm4gdXNlVmFsdWUgPyB2YWx1ZSA6IHZvaWQgMDtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3Byb3BLZXkoeCkge1xuICByZXR1cm4gdHlwZW9mIHggPT09IFwic3ltYm9sXCIgPyB4IDogXCJcIi5jb25jYXQoeCk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gX19zZXRGdW5jdGlvbk5hbWUoZiwgbmFtZSwgcHJlZml4KSB7XG4gIGlmICh0eXBlb2YgbmFtZSA9PT0gXCJzeW1ib2xcIikgbmFtZSA9IG5hbWUuZGVzY3JpcHRpb24gPyBcIltcIi5jb25jYXQobmFtZS5kZXNjcmlwdGlvbiwgXCJdXCIpIDogXCJcIjtcbiAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShmLCBcIm5hbWVcIiwgeyBjb25maWd1cmFibGU6IHRydWUsIHZhbHVlOiBwcmVmaXggPyBcIlwiLmNvbmNhdChwcmVmaXgsIFwiIFwiLCBuYW1lKSA6IG5hbWUgfSk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gX19tZXRhZGF0YShtZXRhZGF0YUtleSwgbWV0YWRhdGFWYWx1ZSkge1xuICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QubWV0YWRhdGEgPT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIFJlZmxlY3QubWV0YWRhdGEobWV0YWRhdGFLZXksIG1ldGFkYXRhVmFsdWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19hd2FpdGVyKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xuICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cbiAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19nZW5lcmF0b3IodGhpc0FyZywgYm9keSkge1xuICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgeyBpZiAodFswXSAmIDEpIHRocm93IHRbMV07IHJldHVybiB0WzFdOyB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnID0gT2JqZWN0LmNyZWF0ZSgodHlwZW9mIEl0ZXJhdG9yID09PSBcImZ1bmN0aW9uXCIgPyBJdGVyYXRvciA6IE9iamVjdCkucHJvdG90eXBlKTtcbiAgcmV0dXJuIGcubmV4dCA9IHZlcmIoMCksIGdbXCJ0aHJvd1wiXSA9IHZlcmIoMSksIGdbXCJyZXR1cm5cIl0gPSB2ZXJiKDIpLCB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gdGhpczsgfSksIGc7XG4gIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfVxuICBmdW5jdGlvbiBzdGVwKG9wKSB7XG4gICAgICBpZiAoZikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy5cIik7XG4gICAgICB3aGlsZSAoZyAmJiAoZyA9IDAsIG9wWzBdICYmIChfID0gMCkpLCBfKSB0cnkge1xuICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbXCJyZXR1cm5cIl0gOiBvcFswXSA/IHlbXCJ0aHJvd1wiXSB8fCAoKHQgPSB5W1wicmV0dXJuXCJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDtcbiAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07XG4gICAgICAgICAgc3dpdGNoIChvcFswXSkge1xuICAgICAgICAgICAgICBjYXNlIDA6IGNhc2UgMTogdCA9IG9wOyBicmVhaztcbiAgICAgICAgICAgICAgY2FzZSA0OiBfLmxhYmVsKys7IHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTtcbiAgICAgICAgICAgICAgY2FzZSA1OiBfLmxhYmVsKys7IHkgPSBvcFsxXTsgb3AgPSBbMF07IGNvbnRpbnVlO1xuICAgICAgICAgICAgICBjYXNlIDc6IG9wID0gXy5vcHMucG9wKCk7IF8udHJ5cy5wb3AoKTsgY29udGludWU7XG4gICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICBpZiAoISh0ID0gXy50cnlzLCB0ID0gdC5sZW5ndGggPiAwICYmIHRbdC5sZW5ndGggLSAxXSkgJiYgKG9wWzBdID09PSA2IHx8IG9wWzBdID09PSAyKSkgeyBfID0gMDsgY29udGludWU7IH1cbiAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgKG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSkgeyBfLmxhYmVsID0gb3BbMV07IGJyZWFrOyB9XG4gICAgICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsgXy5sYWJlbCA9IHRbMV07IHQgPSBvcDsgYnJlYWs7IH1cbiAgICAgICAgICAgICAgICAgIGlmICh0ICYmIF8ubGFiZWwgPCB0WzJdKSB7IF8ubGFiZWwgPSB0WzJdOyBfLm9wcy5wdXNoKG9wKTsgYnJlYWs7IH1cbiAgICAgICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsgY29udGludWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pO1xuICAgICAgfSBjYXRjaCAoZSkgeyBvcCA9IFs2LCBlXTsgeSA9IDA7IH0gZmluYWxseSB7IGYgPSB0ID0gMDsgfVxuICAgICAgaWYgKG9wWzBdICYgNSkgdGhyb3cgb3BbMV07IHJldHVybiB7IHZhbHVlOiBvcFswXSA/IG9wWzFdIDogdm9pZCAwLCBkb25lOiB0cnVlIH07XG4gIH1cbn1cblxuZXhwb3J0IHZhciBfX2NyZWF0ZUJpbmRpbmcgPSBPYmplY3QuY3JlYXRlID8gKGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7XG4gIGlmIChrMiA9PT0gdW5kZWZpbmVkKSBrMiA9IGs7XG4gIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihtLCBrKTtcbiAgaWYgKCFkZXNjIHx8IChcImdldFwiIGluIGRlc2MgPyAhbS5fX2VzTW9kdWxlIDogZGVzYy53cml0YWJsZSB8fCBkZXNjLmNvbmZpZ3VyYWJsZSkpIHtcbiAgICAgIGRlc2MgPSB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZnVuY3Rpb24oKSB7IHJldHVybiBtW2tdOyB9IH07XG4gIH1cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sIGsyLCBkZXNjKTtcbn0pIDogKGZ1bmN0aW9uKG8sIG0sIGssIGsyKSB7XG4gIGlmIChrMiA9PT0gdW5kZWZpbmVkKSBrMiA9IGs7XG4gIG9bazJdID0gbVtrXTtcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gX19leHBvcnRTdGFyKG0sIG8pIHtcbiAgZm9yICh2YXIgcCBpbiBtKSBpZiAocCAhPT0gXCJkZWZhdWx0XCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvLCBwKSkgX19jcmVhdGVCaW5kaW5nKG8sIG0sIHApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX192YWx1ZXMobykge1xuICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwO1xuICBpZiAobSkgcmV0dXJuIG0uY2FsbChvKTtcbiAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSBcIm51bWJlclwiKSByZXR1cm4ge1xuICAgICAgbmV4dDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7XG4gICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9O1xuICAgICAgfVxuICB9O1xuICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyBcIk9iamVjdCBpcyBub3QgaXRlcmFibGUuXCIgOiBcIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC5cIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX3JlYWQobywgbikge1xuICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl07XG4gIGlmICghbSkgcmV0dXJuIG87XG4gIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlO1xuICB0cnkge1xuICAgICAgd2hpbGUgKChuID09PSB2b2lkIDAgfHwgbi0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmUpIGFyLnB1c2goci52YWx1ZSk7XG4gIH1cbiAgY2F0Y2ggKGVycm9yKSB7IGUgPSB7IGVycm9yOiBlcnJvciB9OyB9XG4gIGZpbmFsbHkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAociAmJiAhci5kb25lICYmIChtID0gaVtcInJldHVyblwiXSkpIG0uY2FsbChpKTtcbiAgICAgIH1cbiAgICAgIGZpbmFsbHkgeyBpZiAoZSkgdGhyb3cgZS5lcnJvcjsgfVxuICB9XG4gIHJldHVybiBhcjtcbn1cblxuLyoqIEBkZXByZWNhdGVkICovXG5leHBvcnQgZnVuY3Rpb24gX19zcHJlYWQoKSB7XG4gIGZvciAodmFyIGFyID0gW10sIGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKVxuICAgICAgYXIgPSBhci5jb25jYXQoX19yZWFkKGFyZ3VtZW50c1tpXSkpO1xuICByZXR1cm4gYXI7XG59XG5cbi8qKiBAZGVwcmVjYXRlZCAqL1xuZXhwb3J0IGZ1bmN0aW9uIF9fc3ByZWFkQXJyYXlzKCkge1xuICBmb3IgKHZhciBzID0gMCwgaSA9IDAsIGlsID0gYXJndW1lbnRzLmxlbmd0aDsgaSA8IGlsOyBpKyspIHMgKz0gYXJndW1lbnRzW2ldLmxlbmd0aDtcbiAgZm9yICh2YXIgciA9IEFycmF5KHMpLCBrID0gMCwgaSA9IDA7IGkgPCBpbDsgaSsrKVxuICAgICAgZm9yICh2YXIgYSA9IGFyZ3VtZW50c1tpXSwgaiA9IDAsIGpsID0gYS5sZW5ndGg7IGogPCBqbDsgaisrLCBrKyspXG4gICAgICAgICAgcltrXSA9IGFbal07XG4gIHJldHVybiByO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19zcHJlYWRBcnJheSh0bywgZnJvbSwgcGFjaykge1xuICBpZiAocGFjayB8fCBhcmd1bWVudHMubGVuZ3RoID09PSAyKSBmb3IgKHZhciBpID0gMCwgbCA9IGZyb20ubGVuZ3RoLCBhcjsgaSA8IGw7IGkrKykge1xuICAgICAgaWYgKGFyIHx8ICEoaSBpbiBmcm9tKSkge1xuICAgICAgICAgIGlmICghYXIpIGFyID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZnJvbSwgMCwgaSk7XG4gICAgICAgICAgYXJbaV0gPSBmcm9tW2ldO1xuICAgICAgfVxuICB9XG4gIHJldHVybiB0by5jb25jYXQoYXIgfHwgQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZnJvbSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19hd2FpdCh2KSB7XG4gIHJldHVybiB0aGlzIGluc3RhbmNlb2YgX19hd2FpdCA/ICh0aGlzLnYgPSB2LCB0aGlzKSA6IG5ldyBfX2F3YWl0KHYpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19hc3luY0dlbmVyYXRvcih0aGlzQXJnLCBfYXJndW1lbnRzLCBnZW5lcmF0b3IpIHtcbiAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLlwiKTtcbiAgdmFyIGcgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSksIGksIHEgPSBbXTtcbiAgcmV0dXJuIGkgPSBPYmplY3QuY3JlYXRlKCh0eXBlb2YgQXN5bmNJdGVyYXRvciA9PT0gXCJmdW5jdGlvblwiID8gQXN5bmNJdGVyYXRvciA6IE9iamVjdCkucHJvdG90eXBlKSwgdmVyYihcIm5leHRcIiksIHZlcmIoXCJ0aHJvd1wiKSwgdmVyYihcInJldHVyblwiLCBhd2FpdFJldHVybiksIGlbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfSwgaTtcbiAgZnVuY3Rpb24gYXdhaXRSZXR1cm4oZikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh2KS50aGVuKGYsIHJlamVjdCk7IH07IH1cbiAgZnVuY3Rpb24gdmVyYihuLCBmKSB7IGlmIChnW25dKSB7IGlbbl0gPSBmdW5jdGlvbiAodikgeyByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKGEsIGIpIHsgcS5wdXNoKFtuLCB2LCBhLCBiXSkgPiAxIHx8IHJlc3VtZShuLCB2KTsgfSk7IH07IGlmIChmKSBpW25dID0gZihpW25dKTsgfSB9XG4gIGZ1bmN0aW9uIHJlc3VtZShuLCB2KSB7IHRyeSB7IHN0ZXAoZ1tuXSh2KSk7IH0gY2F0Y2ggKGUpIHsgc2V0dGxlKHFbMF1bM10sIGUpOyB9IH1cbiAgZnVuY3Rpb24gc3RlcChyKSB7IHIudmFsdWUgaW5zdGFuY2VvZiBfX2F3YWl0ID8gUHJvbWlzZS5yZXNvbHZlKHIudmFsdWUudikudGhlbihmdWxmaWxsLCByZWplY3QpIDogc2V0dGxlKHFbMF1bMl0sIHIpOyB9XG4gIGZ1bmN0aW9uIGZ1bGZpbGwodmFsdWUpIHsgcmVzdW1lKFwibmV4dFwiLCB2YWx1ZSk7IH1cbiAgZnVuY3Rpb24gcmVqZWN0KHZhbHVlKSB7IHJlc3VtZShcInRocm93XCIsIHZhbHVlKTsgfVxuICBmdW5jdGlvbiBzZXR0bGUoZiwgdikgeyBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOyB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jRGVsZWdhdG9yKG8pIHtcbiAgdmFyIGksIHA7XG4gIHJldHVybiBpID0ge30sIHZlcmIoXCJuZXh0XCIpLCB2ZXJiKFwidGhyb3dcIiwgZnVuY3Rpb24gKGUpIHsgdGhyb3cgZTsgfSksIHZlcmIoXCJyZXR1cm5cIiksIGlbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGk7XG4gIGZ1bmN0aW9uIHZlcmIobiwgZikgeyBpW25dID0gb1tuXSA/IGZ1bmN0aW9uICh2KSB7IHJldHVybiAocCA9ICFwKSA/IHsgdmFsdWU6IF9fYXdhaXQob1tuXSh2KSksIGRvbmU6IGZhbHNlIH0gOiBmID8gZih2KSA6IHY7IH0gOiBmOyB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jVmFsdWVzKG8pIHtcbiAgaWYgKCFTeW1ib2wuYXN5bmNJdGVyYXRvcikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN5bWJvbC5hc3luY0l0ZXJhdG9yIGlzIG5vdCBkZWZpbmVkLlwiKTtcbiAgdmFyIG0gPSBvW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSwgaTtcbiAgcmV0dXJuIG0gPyBtLmNhbGwobykgOiAobyA9IHR5cGVvZiBfX3ZhbHVlcyA9PT0gXCJmdW5jdGlvblwiID8gX192YWx1ZXMobykgOiBvW1N5bWJvbC5pdGVyYXRvcl0oKSwgaSA9IHt9LCB2ZXJiKFwibmV4dFwiKSwgdmVyYihcInRocm93XCIpLCB2ZXJiKFwicmV0dXJuXCIpLCBpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0sIGkpO1xuICBmdW5jdGlvbiB2ZXJiKG4pIHsgaVtuXSA9IG9bbl0gJiYgZnVuY3Rpb24gKHYpIHsgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHsgdiA9IG9bbl0odiksIHNldHRsZShyZXNvbHZlLCByZWplY3QsIHYuZG9uZSwgdi52YWx1ZSk7IH0pOyB9OyB9XG4gIGZ1bmN0aW9uIHNldHRsZShyZXNvbHZlLCByZWplY3QsIGQsIHYpIHsgUHJvbWlzZS5yZXNvbHZlKHYpLnRoZW4oZnVuY3Rpb24odikgeyByZXNvbHZlKHsgdmFsdWU6IHYsIGRvbmU6IGQgfSk7IH0sIHJlamVjdCk7IH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fbWFrZVRlbXBsYXRlT2JqZWN0KGNvb2tlZCwgcmF3KSB7XG4gIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNvb2tlZCwgXCJyYXdcIiwgeyB2YWx1ZTogcmF3IH0pOyB9IGVsc2UgeyBjb29rZWQucmF3ID0gcmF3OyB9XG4gIHJldHVybiBjb29rZWQ7XG59O1xuXG52YXIgX19zZXRNb2R1bGVEZWZhdWx0ID0gT2JqZWN0LmNyZWF0ZSA/IChmdW5jdGlvbihvLCB2KSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCBcImRlZmF1bHRcIiwgeyBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogdiB9KTtcbn0pIDogZnVuY3Rpb24obywgdikge1xuICBvW1wiZGVmYXVsdFwiXSA9IHY7XG59O1xuXG52YXIgb3duS2V5cyA9IGZ1bmN0aW9uKG8pIHtcbiAgb3duS2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzIHx8IGZ1bmN0aW9uIChvKSB7XG4gICAgdmFyIGFyID0gW107XG4gICAgZm9yICh2YXIgayBpbiBvKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8sIGspKSBhclthci5sZW5ndGhdID0gaztcbiAgICByZXR1cm4gYXI7XG4gIH07XG4gIHJldHVybiBvd25LZXlzKG8pO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIF9faW1wb3J0U3Rhcihtb2QpIHtcbiAgaWYgKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgcmV0dXJuIG1vZDtcbiAgdmFyIHJlc3VsdCA9IHt9O1xuICBpZiAobW9kICE9IG51bGwpIGZvciAodmFyIGsgPSBvd25LZXlzKG1vZCksIGkgPSAwOyBpIDwgay5sZW5ndGg7IGkrKykgaWYgKGtbaV0gIT09IFwiZGVmYXVsdFwiKSBfX2NyZWF0ZUJpbmRpbmcocmVzdWx0LCBtb2QsIGtbaV0pO1xuICBfX3NldE1vZHVsZURlZmF1bHQocmVzdWx0LCBtb2QpO1xuICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19pbXBvcnREZWZhdWx0KG1vZCkge1xuICByZXR1cm4gKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgPyBtb2QgOiB7IGRlZmF1bHQ6IG1vZCB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19jbGFzc1ByaXZhdGVGaWVsZEdldChyZWNlaXZlciwgc3RhdGUsIGtpbmQsIGYpIHtcbiAgaWYgKGtpbmQgPT09IFwiYVwiICYmICFmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiUHJpdmF0ZSBhY2Nlc3NvciB3YXMgZGVmaW5lZCB3aXRob3V0IGEgZ2V0dGVyXCIpO1xuICBpZiAodHlwZW9mIHN0YXRlID09PSBcImZ1bmN0aW9uXCIgPyByZWNlaXZlciAhPT0gc3RhdGUgfHwgIWYgOiAhc3RhdGUuaGFzKHJlY2VpdmVyKSkgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCByZWFkIHByaXZhdGUgbWVtYmVyIGZyb20gYW4gb2JqZWN0IHdob3NlIGNsYXNzIGRpZCBub3QgZGVjbGFyZSBpdFwiKTtcbiAgcmV0dXJuIGtpbmQgPT09IFwibVwiID8gZiA6IGtpbmQgPT09IFwiYVwiID8gZi5jYWxsKHJlY2VpdmVyKSA6IGYgPyBmLnZhbHVlIDogc3RhdGUuZ2V0KHJlY2VpdmVyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fY2xhc3NQcml2YXRlRmllbGRTZXQocmVjZWl2ZXIsIHN0YXRlLCB2YWx1ZSwga2luZCwgZikge1xuICBpZiAoa2luZCA9PT0gXCJtXCIpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJQcml2YXRlIG1ldGhvZCBpcyBub3Qgd3JpdGFibGVcIik7XG4gIGlmIChraW5kID09PSBcImFcIiAmJiAhZikgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlByaXZhdGUgYWNjZXNzb3Igd2FzIGRlZmluZWQgd2l0aG91dCBhIHNldHRlclwiKTtcbiAgaWYgKHR5cGVvZiBzdGF0ZSA9PT0gXCJmdW5jdGlvblwiID8gcmVjZWl2ZXIgIT09IHN0YXRlIHx8ICFmIDogIXN0YXRlLmhhcyhyZWNlaXZlcikpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJDYW5ub3Qgd3JpdGUgcHJpdmF0ZSBtZW1iZXIgdG8gYW4gb2JqZWN0IHdob3NlIGNsYXNzIGRpZCBub3QgZGVjbGFyZSBpdFwiKTtcbiAgcmV0dXJuIChraW5kID09PSBcImFcIiA/IGYuY2FsbChyZWNlaXZlciwgdmFsdWUpIDogZiA/IGYudmFsdWUgPSB2YWx1ZSA6IHN0YXRlLnNldChyZWNlaXZlciwgdmFsdWUpKSwgdmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBfX2NsYXNzUHJpdmF0ZUZpZWxkSW4oc3RhdGUsIHJlY2VpdmVyKSB7XG4gIGlmIChyZWNlaXZlciA9PT0gbnVsbCB8fCAodHlwZW9mIHJlY2VpdmVyICE9PSBcIm9iamVjdFwiICYmIHR5cGVvZiByZWNlaXZlciAhPT0gXCJmdW5jdGlvblwiKSkgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCB1c2UgJ2luJyBvcGVyYXRvciBvbiBub24tb2JqZWN0XCIpO1xuICByZXR1cm4gdHlwZW9mIHN0YXRlID09PSBcImZ1bmN0aW9uXCIgPyByZWNlaXZlciA9PT0gc3RhdGUgOiBzdGF0ZS5oYXMocmVjZWl2ZXIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gX19hZGREaXNwb3NhYmxlUmVzb3VyY2UoZW52LCB2YWx1ZSwgYXN5bmMpIHtcbiAgaWYgKHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB2b2lkIDApIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSBcIm9iamVjdFwiICYmIHR5cGVvZiB2YWx1ZSAhPT0gXCJmdW5jdGlvblwiKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiT2JqZWN0IGV4cGVjdGVkLlwiKTtcbiAgICB2YXIgZGlzcG9zZSwgaW5uZXI7XG4gICAgaWYgKGFzeW5jKSB7XG4gICAgICBpZiAoIVN5bWJvbC5hc3luY0Rpc3Bvc2UpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJTeW1ib2wuYXN5bmNEaXNwb3NlIGlzIG5vdCBkZWZpbmVkLlwiKTtcbiAgICAgIGRpc3Bvc2UgPSB2YWx1ZVtTeW1ib2wuYXN5bmNEaXNwb3NlXTtcbiAgICB9XG4gICAgaWYgKGRpc3Bvc2UgPT09IHZvaWQgMCkge1xuICAgICAgaWYgKCFTeW1ib2wuZGlzcG9zZSkgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN5bWJvbC5kaXNwb3NlIGlzIG5vdCBkZWZpbmVkLlwiKTtcbiAgICAgIGRpc3Bvc2UgPSB2YWx1ZVtTeW1ib2wuZGlzcG9zZV07XG4gICAgICBpZiAoYXN5bmMpIGlubmVyID0gZGlzcG9zZTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBkaXNwb3NlICE9PSBcImZ1bmN0aW9uXCIpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJPYmplY3Qgbm90IGRpc3Bvc2FibGUuXCIpO1xuICAgIGlmIChpbm5lcikgZGlzcG9zZSA9IGZ1bmN0aW9uKCkgeyB0cnkgeyBpbm5lci5jYWxsKHRoaXMpOyB9IGNhdGNoIChlKSB7IHJldHVybiBQcm9taXNlLnJlamVjdChlKTsgfSB9O1xuICAgIGVudi5zdGFjay5wdXNoKHsgdmFsdWU6IHZhbHVlLCBkaXNwb3NlOiBkaXNwb3NlLCBhc3luYzogYXN5bmMgfSk7XG4gIH1cbiAgZWxzZSBpZiAoYXN5bmMpIHtcbiAgICBlbnYuc3RhY2sucHVzaCh7IGFzeW5jOiB0cnVlIH0pO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxudmFyIF9TdXBwcmVzc2VkRXJyb3IgPSB0eXBlb2YgU3VwcHJlc3NlZEVycm9yID09PSBcImZ1bmN0aW9uXCIgPyBTdXBwcmVzc2VkRXJyb3IgOiBmdW5jdGlvbiAoZXJyb3IsIHN1cHByZXNzZWQsIG1lc3NhZ2UpIHtcbiAgdmFyIGUgPSBuZXcgRXJyb3IobWVzc2FnZSk7XG4gIHJldHVybiBlLm5hbWUgPSBcIlN1cHByZXNzZWRFcnJvclwiLCBlLmVycm9yID0gZXJyb3IsIGUuc3VwcHJlc3NlZCA9IHN1cHByZXNzZWQsIGU7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gX19kaXNwb3NlUmVzb3VyY2VzKGVudikge1xuICBmdW5jdGlvbiBmYWlsKGUpIHtcbiAgICBlbnYuZXJyb3IgPSBlbnYuaGFzRXJyb3IgPyBuZXcgX1N1cHByZXNzZWRFcnJvcihlLCBlbnYuZXJyb3IsIFwiQW4gZXJyb3Igd2FzIHN1cHByZXNzZWQgZHVyaW5nIGRpc3Bvc2FsLlwiKSA6IGU7XG4gICAgZW52Lmhhc0Vycm9yID0gdHJ1ZTtcbiAgfVxuICB2YXIgciwgcyA9IDA7XG4gIGZ1bmN0aW9uIG5leHQoKSB7XG4gICAgd2hpbGUgKHIgPSBlbnYuc3RhY2sucG9wKCkpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmICghci5hc3luYyAmJiBzID09PSAxKSByZXR1cm4gcyA9IDAsIGVudi5zdGFjay5wdXNoKHIpLCBQcm9taXNlLnJlc29sdmUoKS50aGVuKG5leHQpO1xuICAgICAgICBpZiAoci5kaXNwb3NlKSB7XG4gICAgICAgICAgdmFyIHJlc3VsdCA9IHIuZGlzcG9zZS5jYWxsKHIudmFsdWUpO1xuICAgICAgICAgIGlmIChyLmFzeW5jKSByZXR1cm4gcyB8PSAyLCBQcm9taXNlLnJlc29sdmUocmVzdWx0KS50aGVuKG5leHQsIGZ1bmN0aW9uKGUpIHsgZmFpbChlKTsgcmV0dXJuIG5leHQoKTsgfSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBzIHw9IDE7XG4gICAgICB9XG4gICAgICBjYXRjaCAoZSkge1xuICAgICAgICBmYWlsKGUpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAocyA9PT0gMSkgcmV0dXJuIGVudi5oYXNFcnJvciA/IFByb21pc2UucmVqZWN0KGVudi5lcnJvcikgOiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICBpZiAoZW52Lmhhc0Vycm9yKSB0aHJvdyBlbnYuZXJyb3I7XG4gIH1cbiAgcmV0dXJuIG5leHQoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIF9fcmV3cml0ZVJlbGF0aXZlSW1wb3J0RXh0ZW5zaW9uKHBhdGgsIHByZXNlcnZlSnN4KSB7XG4gIGlmICh0eXBlb2YgcGF0aCA9PT0gXCJzdHJpbmdcIiAmJiAvXlxcLlxcLj9cXC8vLnRlc3QocGF0aCkpIHtcbiAgICAgIHJldHVybiBwYXRoLnJlcGxhY2UoL1xcLih0c3gpJHwoKD86XFwuZCk/KSgoPzpcXC5bXi4vXSs/KT8pXFwuKFtjbV0/KXRzJC9pLCBmdW5jdGlvbiAobSwgdHN4LCBkLCBleHQsIGNtKSB7XG4gICAgICAgICAgcmV0dXJuIHRzeCA/IHByZXNlcnZlSnN4ID8gXCIuanN4XCIgOiBcIi5qc1wiIDogZCAmJiAoIWV4dCB8fCAhY20pID8gbSA6IChkICsgZXh0ICsgXCIuXCIgKyBjbS50b0xvd2VyQ2FzZSgpICsgXCJqc1wiKTtcbiAgICAgIH0pO1xuICB9XG4gIHJldHVybiBwYXRoO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIF9fZXh0ZW5kcyxcbiAgX19hc3NpZ24sXG4gIF9fcmVzdCxcbiAgX19kZWNvcmF0ZSxcbiAgX19wYXJhbSxcbiAgX19lc0RlY29yYXRlLFxuICBfX3J1bkluaXRpYWxpemVycyxcbiAgX19wcm9wS2V5LFxuICBfX3NldEZ1bmN0aW9uTmFtZSxcbiAgX19tZXRhZGF0YSxcbiAgX19hd2FpdGVyLFxuICBfX2dlbmVyYXRvcixcbiAgX19jcmVhdGVCaW5kaW5nLFxuICBfX2V4cG9ydFN0YXIsXG4gIF9fdmFsdWVzLFxuICBfX3JlYWQsXG4gIF9fc3ByZWFkLFxuICBfX3NwcmVhZEFycmF5cyxcbiAgX19zcHJlYWRBcnJheSxcbiAgX19hd2FpdCxcbiAgX19hc3luY0dlbmVyYXRvcixcbiAgX19hc3luY0RlbGVnYXRvcixcbiAgX19hc3luY1ZhbHVlcyxcbiAgX19tYWtlVGVtcGxhdGVPYmplY3QsXG4gIF9faW1wb3J0U3RhcixcbiAgX19pbXBvcnREZWZhdWx0LFxuICBfX2NsYXNzUHJpdmF0ZUZpZWxkR2V0LFxuICBfX2NsYXNzUHJpdmF0ZUZpZWxkU2V0LFxuICBfX2NsYXNzUHJpdmF0ZUZpZWxkSW4sXG4gIF9fYWRkRGlzcG9zYWJsZVJlc291cmNlLFxuICBfX2Rpc3Bvc2VSZXNvdXJjZXMsXG4gIF9fcmV3cml0ZVJlbGF0aXZlSW1wb3J0RXh0ZW5zaW9uLFxufTtcbiIsICJpbXBvcnQgYmFzZTY0IGZyb20gJ2Jhc2U2NC1qcyc7XG5pbXBvcnQgVW5pY29kZVRyaWUgZnJvbSAndW5pY29kZS10cmllJztcbmltcG9ydCBkYXRhIGZyb20gJy4vZGF0YS5qc29uJztcblxuY29uc3QgdHJpZSA9IG5ldyBVbmljb2RlVHJpZShiYXNlNjQudG9CeXRlQXJyYXkocmVxdWlyZSgnZnMnKS5yZWFkRmlsZVN5bmMoX19kaXJuYW1lICsgJy9kYXRhLnRyaWUnLCAnYmFzZTY0JykpKTtcblxuY29uc3QgbG9nMiA9IE1hdGgubG9nMiB8fCAobiA9PiBNYXRoLmxvZyhuKSAvIE1hdGguTE4yKTtcbmNvbnN0IGJpdHMgPSAobikgPT4gKChsb2cyKG4pICsgMSkgfCAwKTtcblxuLy8gY29tcHV0ZSB0aGUgbnVtYmVyIG9mIGJpdHMgc3RvcmVkIGZvciBlYWNoIGZpZWxkXG5jb25zdCBDQVRFR09SWV9CSVRTID0gYml0cyhkYXRhLmNhdGVnb3JpZXMubGVuZ3RoIC0gMSk7XG5jb25zdCBDT01CSU5JTkdfQklUUyA9IGJpdHMoZGF0YS5jb21iaW5pbmdDbGFzc2VzLmxlbmd0aCAtIDEpO1xuY29uc3QgU0NSSVBUX0JJVFMgPSBiaXRzKGRhdGEuc2NyaXB0cy5sZW5ndGggLSAxKTtcbmNvbnN0IEVBV19CSVRTID0gYml0cyhkYXRhLmVhdy5sZW5ndGggLSAxKTtcbmNvbnN0IE5VTUJFUl9CSVRTID0gMTA7XG5cbi8vIGNvbXB1dGUgc2hpZnQgYW5kIG1hc2sgdmFsdWVzIGZvciBlYWNoIGZpZWxkXG5jb25zdCBDQVRFR09SWV9TSElGVCA9IENPTUJJTklOR19CSVRTICsgU0NSSVBUX0JJVFMgKyBFQVdfQklUUyArIE5VTUJFUl9CSVRTO1xuY29uc3QgQ09NQklOSU5HX1NISUZUID0gU0NSSVBUX0JJVFMgKyBFQVdfQklUUyArIE5VTUJFUl9CSVRTO1xuY29uc3QgU0NSSVBUX1NISUZUID0gRUFXX0JJVFMgKyBOVU1CRVJfQklUUztcbmNvbnN0IEVBV19TSElGVCA9IE5VTUJFUl9CSVRTO1xuY29uc3QgQ0FURUdPUllfTUFTSyA9ICgxIDw8IENBVEVHT1JZX0JJVFMpIC0gMTtcbmNvbnN0IENPTUJJTklOR19NQVNLID0gKDEgPDwgQ09NQklOSU5HX0JJVFMpIC0gMTtcbmNvbnN0IFNDUklQVF9NQVNLID0gKDEgPDwgU0NSSVBUX0JJVFMpIC0gMTtcbmNvbnN0IEVBV19NQVNLID0gKDEgPDwgRUFXX0JJVFMpIC0gMTtcbmNvbnN0IE5VTUJFUl9NQVNLID0gKDEgPDwgTlVNQkVSX0JJVFMpIC0gMTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldENhdGVnb3J5KGNvZGVQb2ludCkge1xuICBjb25zdCB2YWwgPSB0cmllLmdldChjb2RlUG9pbnQpO1xuICByZXR1cm4gZGF0YS5jYXRlZ29yaWVzWyh2YWwgPj4gQ0FURUdPUllfU0hJRlQpICYgQ0FURUdPUllfTUFTS107XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb21iaW5pbmdDbGFzcyhjb2RlUG9pbnQpIHtcbiAgY29uc3QgdmFsID0gdHJpZS5nZXQoY29kZVBvaW50KTtcbiAgcmV0dXJuIGRhdGEuY29tYmluaW5nQ2xhc3Nlc1sodmFsID4+IENPTUJJTklOR19TSElGVCkgJiBDT01CSU5JTkdfTUFTS107XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTY3JpcHQoY29kZVBvaW50KSB7XG4gIGNvbnN0IHZhbCA9IHRyaWUuZ2V0KGNvZGVQb2ludCk7XG4gIHJldHVybiBkYXRhLnNjcmlwdHNbKHZhbCA+PiBTQ1JJUFRfU0hJRlQpICYgU0NSSVBUX01BU0tdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RWFzdEFzaWFuV2lkdGgoY29kZVBvaW50KSB7XG4gIGNvbnN0IHZhbCA9IHRyaWUuZ2V0KGNvZGVQb2ludCk7XG4gIHJldHVybiBkYXRhLmVhd1sodmFsID4+IEVBV19TSElGVCkgJiBFQVdfTUFTS107XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXROdW1lcmljVmFsdWUoY29kZVBvaW50KSB7XG4gIGxldCB2YWwgPSB0cmllLmdldChjb2RlUG9pbnQpO1xuICBsZXQgbnVtID0gdmFsICYgTlVNQkVSX01BU0s7XG5cbiAgaWYgKG51bSA9PT0gMCkge1xuICAgIHJldHVybiBudWxsO1xuICB9IGVsc2UgaWYgKG51bSA8PSA1MCkge1xuICAgIHJldHVybiBudW0gLSAxO1xuICB9IGVsc2UgaWYgKG51bSA8IDB4MWUwKSB7XG4gICAgY29uc3QgbnVtZXJhdG9yID0gKG51bSA+PiA0KSAtIDEyO1xuICAgIGNvbnN0IGRlbm9taW5hdG9yID0gKG51bSAmIDB4ZikgKyAxO1xuICAgIHJldHVybiBudW1lcmF0b3IgLyBkZW5vbWluYXRvcjtcbiAgfSBlbHNlIGlmIChudW0gPCAweDMwMCkge1xuICAgIHZhbCA9IChudW0gPj4gNSkgLSAxNDtcbiAgICBsZXQgZXhwID0gKG51bSAmIDB4MWYpICsgMjtcblxuICAgIHdoaWxlIChleHAgPiAwKSB7XG4gICAgICB2YWwgKj0gMTA7XG4gICAgICBleHAtLTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbDtcbiAgfSBlbHNlIHtcbiAgICB2YWwgPSAobnVtID4+IDIpIC0gMHhiZjtcbiAgICBsZXQgZXhwID0gKG51bSAmIDMpICsgMTtcbiAgICB3aGlsZSAoZXhwID4gMCkge1xuICAgICAgdmFsICo9IDYwO1xuICAgICAgZXhwLS07XG4gICAgfVxuICAgIHJldHVybiB2YWw7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQWxwaGFiZXRpYyhjb2RlUG9pbnQpIHtcbiAgY29uc3QgY2F0ZWdvcnkgPSBnZXRDYXRlZ29yeShjb2RlUG9pbnQpO1xuICByZXR1cm4gKFxuICAgIGNhdGVnb3J5ID09PSAnTHUnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdMbCcgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ0x0JyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTG0nIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdMbycgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ05sJ1xuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0RpZ2l0KGNvZGVQb2ludCkge1xuICByZXR1cm4gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KSA9PT0gJ05kJ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNQdW5jdHVhdGlvbihjb2RlUG9pbnQpIHtcbiAgY29uc3QgY2F0ZWdvcnkgPSBnZXRDYXRlZ29yeShjb2RlUG9pbnQpO1xuICByZXR1cm4gKFxuICAgIGNhdGVnb3J5ID09PSAnUGMnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdQZCcgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ1BlJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnUGYnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdQaScgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ1BvJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnUHMnXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0xvd2VyQ2FzZShjb2RlUG9pbnQpIHtcbiAgcmV0dXJuIGdldENhdGVnb3J5KGNvZGVQb2ludCkgPT09ICdMbCc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1VwcGVyQ2FzZShjb2RlUG9pbnQpIHtcbiAgcmV0dXJuIGdldENhdGVnb3J5KGNvZGVQb2ludCkgPT09ICdMdSdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVGl0bGVDYXNlKGNvZGVQb2ludCkge1xuICByZXR1cm4gZ2V0Q2F0ZWdvcnkoY29kZVBvaW50KSA9PT0gJ0x0J1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNXaGl0ZVNwYWNlKGNvZGVQb2ludCkge1xuICBjb25zdCBjYXRlZ29yeSA9IGdldENhdGVnb3J5KGNvZGVQb2ludCk7XG4gIHJldHVybiAoXG4gICAgY2F0ZWdvcnkgPT09ICdacycgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ1psJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnWnAnXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Jhc2VGb3JtKGNvZGVQb2ludCkge1xuICBjb25zdCBjYXRlZ29yeSA9IGdldENhdGVnb3J5KGNvZGVQb2ludCk7XG4gIHJldHVybiAoXG4gICAgY2F0ZWdvcnkgPT09ICdOZCcgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ05vJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTmwnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdMdScgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ0xsJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTHQnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdMbScgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ0xvJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTWUnIHx8XG4gICAgY2F0ZWdvcnkgPT09ICdNYydcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNYXJrKGNvZGVQb2ludCkge1xuICBjb25zdCBjYXRlZ29yeSA9IGdldENhdGVnb3J5KGNvZGVQb2ludCk7XG4gIHJldHVybiAoXG4gICAgY2F0ZWdvcnkgPT09ICdNbicgfHxcbiAgICBjYXRlZ29yeSA9PT0gJ01lJyB8fFxuICAgIGNhdGVnb3J5ID09PSAnTWMnXG4gICk7XG59XG5cbi8vIEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuZXhwb3J0IGRlZmF1bHQge1xuICBnZXRDYXRlZ29yeSxcbiAgZ2V0Q29tYmluaW5nQ2xhc3MsXG4gIGdldFNjcmlwdCxcbiAgZ2V0RWFzdEFzaWFuV2lkdGgsXG4gIGdldE51bWVyaWNWYWx1ZSxcbiAgaXNBbHBoYWJldGljLFxuICBpc0RpZ2l0LFxuICBpc1B1bmN0dWF0aW9uLFxuICBpc0xvd2VyQ2FzZSxcbiAgaXNVcHBlckNhc2UsXG4gIGlzVGl0bGVDYXNlLFxuICBpc1doaXRlU3BhY2UsXG4gIGlzQmFzZUZvcm0sXG4gIGlzTWFya1xufTtcbiIsICJ7XCJjYXRlZ29yaWVzXCI6W1wiQ2NcIixcIlpzXCIsXCJQb1wiLFwiU2NcIixcIlBzXCIsXCJQZVwiLFwiU21cIixcIlBkXCIsXCJOZFwiLFwiTHVcIixcIlNrXCIsXCJQY1wiLFwiTGxcIixcIlNvXCIsXCJMb1wiLFwiUGlcIixcIkNmXCIsXCJOb1wiLFwiUGZcIixcIkx0XCIsXCJMbVwiLFwiTW5cIixcIk1lXCIsXCJNY1wiLFwiTmxcIixcIlpsXCIsXCJacFwiLFwiQ3NcIixcIkNvXCJdLFwiY29tYmluaW5nQ2xhc3Nlc1wiOltcIk5vdF9SZW9yZGVyZWRcIixcIkFib3ZlXCIsXCJBYm92ZV9SaWdodFwiLFwiQmVsb3dcIixcIkF0dGFjaGVkX0Fib3ZlX1JpZ2h0XCIsXCJBdHRhY2hlZF9CZWxvd1wiLFwiT3ZlcmxheVwiLFwiSW90YV9TdWJzY3JpcHRcIixcIkRvdWJsZV9CZWxvd1wiLFwiRG91YmxlX0Fib3ZlXCIsXCJCZWxvd19SaWdodFwiLFwiQWJvdmVfTGVmdFwiLFwiQ0NDMTBcIixcIkNDQzExXCIsXCJDQ0MxMlwiLFwiQ0NDMTNcIixcIkNDQzE0XCIsXCJDQ0MxNVwiLFwiQ0NDMTZcIixcIkNDQzE3XCIsXCJDQ0MxOFwiLFwiQ0NDMTlcIixcIkNDQzIwXCIsXCJDQ0MyMVwiLFwiQ0NDMjJcIixcIkNDQzIzXCIsXCJDQ0MyNFwiLFwiQ0NDMjVcIixcIkNDQzMwXCIsXCJDQ0MzMVwiLFwiQ0NDMzJcIixcIkNDQzI3XCIsXCJDQ0MyOFwiLFwiQ0NDMjlcIixcIkNDQzMzXCIsXCJDQ0MzNFwiLFwiQ0NDMzVcIixcIkNDQzM2XCIsXCJOdWt0YVwiLFwiVmlyYW1hXCIsXCJDQ0M4NFwiLFwiQ0NDOTFcIixcIkNDQzEwM1wiLFwiQ0NDMTA3XCIsXCJDQ0MxMThcIixcIkNDQzEyMlwiLFwiQ0NDMTI5XCIsXCJDQ0MxMzBcIixcIkNDQzEzMlwiLFwiQXR0YWNoZWRfQWJvdmVcIixcIkJlbG93X0xlZnRcIixcIkxlZnRcIixcIkthbmFfVm9pY2luZ1wiLFwiQ0NDMjZcIixcIlJpZ2h0XCJdLFwic2NyaXB0c1wiOltcIkNvbW1vblwiLFwiTGF0aW5cIixcIkJvcG9tb2ZvXCIsXCJJbmhlcml0ZWRcIixcIkdyZWVrXCIsXCJDb3B0aWNcIixcIkN5cmlsbGljXCIsXCJBcm1lbmlhblwiLFwiSGVicmV3XCIsXCJBcmFiaWNcIixcIlN5cmlhY1wiLFwiVGhhYW5hXCIsXCJOa29cIixcIlNhbWFyaXRhblwiLFwiTWFuZGFpY1wiLFwiRGV2YW5hZ2FyaVwiLFwiQmVuZ2FsaVwiLFwiR3VybXVraGlcIixcIkd1amFyYXRpXCIsXCJPcml5YVwiLFwiVGFtaWxcIixcIlRlbHVndVwiLFwiS2FubmFkYVwiLFwiTWFsYXlhbGFtXCIsXCJTaW5oYWxhXCIsXCJUaGFpXCIsXCJMYW9cIixcIlRpYmV0YW5cIixcIk15YW5tYXJcIixcIkdlb3JnaWFuXCIsXCJIYW5ndWxcIixcIkV0aGlvcGljXCIsXCJDaGVyb2tlZVwiLFwiQ2FuYWRpYW5fQWJvcmlnaW5hbFwiLFwiT2doYW1cIixcIlJ1bmljXCIsXCJUYWdhbG9nXCIsXCJIYW51bm9vXCIsXCJCdWhpZFwiLFwiVGFnYmFud2FcIixcIktobWVyXCIsXCJNb25nb2xpYW5cIixcIkxpbWJ1XCIsXCJUYWlfTGVcIixcIk5ld19UYWlfTHVlXCIsXCJCdWdpbmVzZVwiLFwiVGFpX1RoYW1cIixcIkJhbGluZXNlXCIsXCJTdW5kYW5lc2VcIixcIkJhdGFrXCIsXCJMZXBjaGFcIixcIk9sX0NoaWtpXCIsXCJCcmFpbGxlXCIsXCJHbGFnb2xpdGljXCIsXCJUaWZpbmFnaFwiLFwiSGFuXCIsXCJIaXJhZ2FuYVwiLFwiS2F0YWthbmFcIixcIllpXCIsXCJMaXN1XCIsXCJWYWlcIixcIkJhbXVtXCIsXCJTeWxvdGlfTmFncmlcIixcIlBoYWdzX1BhXCIsXCJTYXVyYXNodHJhXCIsXCJLYXlhaF9MaVwiLFwiUmVqYW5nXCIsXCJKYXZhbmVzZVwiLFwiQ2hhbVwiLFwiVGFpX1ZpZXRcIixcIk1lZXRlaV9NYXlla1wiLFwibnVsbFwiLFwiTGluZWFyX0JcIixcIkx5Y2lhblwiLFwiQ2FyaWFuXCIsXCJPbGRfSXRhbGljXCIsXCJHb3RoaWNcIixcIk9sZF9QZXJtaWNcIixcIlVnYXJpdGljXCIsXCJPbGRfUGVyc2lhblwiLFwiRGVzZXJldFwiLFwiU2hhdmlhblwiLFwiT3NtYW55YVwiLFwiT3NhZ2VcIixcIkVsYmFzYW5cIixcIkNhdWNhc2lhbl9BbGJhbmlhblwiLFwiTGluZWFyX0FcIixcIkN5cHJpb3RcIixcIkltcGVyaWFsX0FyYW1haWNcIixcIlBhbG15cmVuZVwiLFwiTmFiYXRhZWFuXCIsXCJIYXRyYW5cIixcIlBob2VuaWNpYW5cIixcIkx5ZGlhblwiLFwiTWVyb2l0aWNfSGllcm9nbHlwaHNcIixcIk1lcm9pdGljX0N1cnNpdmVcIixcIktoYXJvc2h0aGlcIixcIk9sZF9Tb3V0aF9BcmFiaWFuXCIsXCJPbGRfTm9ydGhfQXJhYmlhblwiLFwiTWFuaWNoYWVhblwiLFwiQXZlc3RhblwiLFwiSW5zY3JpcHRpb25hbF9QYXJ0aGlhblwiLFwiSW5zY3JpcHRpb25hbF9QYWhsYXZpXCIsXCJQc2FsdGVyX1BhaGxhdmlcIixcIk9sZF9UdXJraWNcIixcIk9sZF9IdW5nYXJpYW5cIixcIkhhbmlmaV9Sb2hpbmd5YVwiLFwiT2xkX1NvZ2RpYW5cIixcIlNvZ2RpYW5cIixcIkVseW1haWNcIixcIkJyYWhtaVwiLFwiS2FpdGhpXCIsXCJTb3JhX1NvbXBlbmdcIixcIkNoYWttYVwiLFwiTWFoYWphbmlcIixcIlNoYXJhZGFcIixcIktob2praVwiLFwiTXVsdGFuaVwiLFwiS2h1ZGF3YWRpXCIsXCJHcmFudGhhXCIsXCJOZXdhXCIsXCJUaXJodXRhXCIsXCJTaWRkaGFtXCIsXCJNb2RpXCIsXCJUYWtyaVwiLFwiQWhvbVwiLFwiRG9ncmFcIixcIldhcmFuZ19DaXRpXCIsXCJOYW5kaW5hZ2FyaVwiLFwiWmFuYWJhemFyX1NxdWFyZVwiLFwiU295b21ib1wiLFwiUGF1X0Npbl9IYXVcIixcIkJoYWlrc3VraVwiLFwiTWFyY2hlblwiLFwiTWFzYXJhbV9Hb25kaVwiLFwiR3VuamFsYV9Hb25kaVwiLFwiTWFrYXNhclwiLFwiQ3VuZWlmb3JtXCIsXCJFZ3lwdGlhbl9IaWVyb2dseXBoc1wiLFwiQW5hdG9saWFuX0hpZXJvZ2x5cGhzXCIsXCJNcm9cIixcIkJhc3NhX1ZhaFwiLFwiUGFoYXdoX0htb25nXCIsXCJNZWRlZmFpZHJpblwiLFwiTWlhb1wiLFwiVGFuZ3V0XCIsXCJOdXNodVwiLFwiRHVwbG95YW5cIixcIlNpZ25Xcml0aW5nXCIsXCJOeWlha2VuZ19QdWFjaHVlX0htb25nXCIsXCJXYW5jaG9cIixcIk1lbmRlX0tpa2FrdWlcIixcIkFkbGFtXCJdLFwiZWF3XCI6W1wiTlwiLFwiTmFcIixcIkFcIixcIldcIixcIkhcIixcIkZcIl19IiwgImltcG9ydCB7IHJlZ2lzdGVyRm9ybWF0LCBjcmVhdGUsIGRlZmF1bHRMYW5ndWFnZSwgc2V0RGVmYXVsdExhbmd1YWdlIH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IG9wZW4sIG9wZW5TeW5jIH0gZnJvbSAnLi9mcyc7XG5pbXBvcnQgVFRGRm9udCBmcm9tICcuL1RURkZvbnQnO1xuaW1wb3J0IFdPRkZGb250IGZyb20gJy4vV09GRkZvbnQnO1xuaW1wb3J0IFdPRkYyRm9udCBmcm9tICcuL1dPRkYyRm9udCc7XG5pbXBvcnQgVHJ1ZVR5cGVDb2xsZWN0aW9uIGZyb20gJy4vVHJ1ZVR5cGVDb2xsZWN0aW9uJztcbmltcG9ydCBERm9udCBmcm9tICcuL0RGb250JztcblxuLy8gUmVnaXN0ZXIgZm9udCBmb3JtYXRzXG5yZWdpc3RlckZvcm1hdChUVEZGb250KTtcbnJlZ2lzdGVyRm9ybWF0KFdPRkZGb250KTtcbnJlZ2lzdGVyRm9ybWF0KFdPRkYyRm9udCk7XG5yZWdpc3RlckZvcm1hdChUcnVlVHlwZUNvbGxlY3Rpb24pO1xucmVnaXN0ZXJGb3JtYXQoREZvbnQpO1xuXG5leHBvcnQgKiBmcm9tICcuL2Jhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9mcyc7XG4iLCAiaW1wb3J0IHtEZWNvZGVTdHJlYW19IGZyb20gJ3Jlc3RydWN0dXJlJztcblxuZXhwb3J0IGxldCBsb2dFcnJvcnMgPSBmYWxzZTtcblxubGV0IGZvcm1hdHMgPSBbXTtcbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckZvcm1hdChmb3JtYXQpIHtcbiAgZm9ybWF0cy5wdXNoKGZvcm1hdCk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlKGJ1ZmZlciwgcG9zdHNjcmlwdE5hbWUpIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBmb3JtYXRzLmxlbmd0aDsgaSsrKSB7XG4gICAgbGV0IGZvcm1hdCA9IGZvcm1hdHNbaV07XG4gICAgaWYgKGZvcm1hdC5wcm9iZShidWZmZXIpKSB7XG4gICAgICBsZXQgZm9udCA9IG5ldyBmb3JtYXQobmV3IERlY29kZVN0cmVhbShidWZmZXIpKTtcbiAgICAgIGlmIChwb3N0c2NyaXB0TmFtZSkge1xuICAgICAgICByZXR1cm4gZm9udC5nZXRGb250KHBvc3RzY3JpcHROYW1lKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZvbnQ7XG4gICAgfVxuICB9XG5cbiAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIGZvbnQgZm9ybWF0Jyk7XG59O1xuXG5leHBvcnQgbGV0IGRlZmF1bHRMYW5ndWFnZSA9ICdlbic7XG5leHBvcnQgZnVuY3Rpb24gc2V0RGVmYXVsdExhbmd1YWdlKGxhbmcgPSAnZW4nKSB7XG4gIGRlZmF1bHRMYW5ndWFnZSA9IGxhbmc7XG59O1xuIiwgImltcG9ydCB7IGNyZWF0ZSB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgZnMgZnJvbSAnZnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gb3BlblN5bmMoZmlsZW5hbWUsIHBvc3RzY3JpcHROYW1lKSB7XG4gIGxldCBidWZmZXIgPSBmcy5yZWFkRmlsZVN5bmMoZmlsZW5hbWUpO1xuICByZXR1cm4gY3JlYXRlKGJ1ZmZlciwgcG9zdHNjcmlwdE5hbWUpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb3BlbihmaWxlbmFtZSwgcG9zdHNjcmlwdE5hbWUsIGNhbGxiYWNrKSB7XG4gIGlmICh0eXBlb2YgcG9zdHNjcmlwdE5hbWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICBjYWxsYmFjayA9IHBvc3RzY3JpcHROYW1lO1xuICAgIHBvc3RzY3JpcHROYW1lID0gbnVsbDtcbiAgfVxuXG4gIGxldCBidWZmZXIgPSBhd2FpdCBmcy5wcm9taXNlcy5yZWFkRmlsZShmaWxlbmFtZSk7XG4gIHJldHVybiBjcmVhdGUoYnVmZmVyLCBwb3N0c2NyaXB0TmFtZSk7XG59XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBjYWNoZSB9IGZyb20gJy4vZGVjb3JhdG9ycyc7XG5pbXBvcnQgKiBhcyBmb250a2l0IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gJy4vdGFibGVzL2RpcmVjdG9yeSc7XG5pbXBvcnQgdGFibGVzIGZyb20gJy4vdGFibGVzJztcbmltcG9ydCBDbWFwUHJvY2Vzc29yIGZyb20gJy4vQ21hcFByb2Nlc3Nvcic7XG5pbXBvcnQgTGF5b3V0RW5naW5lIGZyb20gJy4vbGF5b3V0L0xheW91dEVuZ2luZSc7XG5pbXBvcnQgVFRGR2x5cGggZnJvbSAnLi9nbHlwaC9UVEZHbHlwaCc7XG5pbXBvcnQgQ0ZGR2x5cGggZnJvbSAnLi9nbHlwaC9DRkZHbHlwaCc7XG5pbXBvcnQgU0JJWEdseXBoIGZyb20gJy4vZ2x5cGgvU0JJWEdseXBoJztcbmltcG9ydCBDT0xSR2x5cGggZnJvbSAnLi9nbHlwaC9DT0xSR2x5cGgnO1xuaW1wb3J0IEdseXBoVmFyaWF0aW9uUHJvY2Vzc29yIGZyb20gJy4vZ2x5cGgvR2x5cGhWYXJpYXRpb25Qcm9jZXNzb3InO1xuaW1wb3J0IFRURlN1YnNldCBmcm9tICcuL3N1YnNldC9UVEZTdWJzZXQnO1xuaW1wb3J0IENGRlN1YnNldCBmcm9tICcuL3N1YnNldC9DRkZTdWJzZXQnO1xuaW1wb3J0IEJCb3ggZnJvbSAnLi9nbHlwaC9CQm94JztcbmltcG9ydCB7IGFzY2lpRGVjb2RlciB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIFRoaXMgaXMgdGhlIGJhc2UgY2xhc3MgZm9yIGFsbCBTRk5ULWJhc2VkIGZvbnQgZm9ybWF0cyBpbiBmb250a2l0LlxuICogSXQgc3VwcG9ydHMgVHJ1ZVR5cGUsIGFuZCBQb3N0U2NyaXB0IGdseXBocywgYW5kIHNldmVyYWwgY29sb3IgZ2x5cGggZm9ybWF0cy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVFRGRm9udCB7XG4gIHR5cGUgPSAnVFRGJztcblxuICBzdGF0aWMgcHJvYmUoYnVmZmVyKSB7XG4gICAgbGV0IGZvcm1hdCA9IGFzY2lpRGVjb2Rlci5kZWNvZGUoYnVmZmVyLnNsaWNlKDAsIDQpKTtcbiAgICByZXR1cm4gZm9ybWF0ID09PSAndHJ1ZScgfHwgZm9ybWF0ID09PSAnT1RUTycgfHwgZm9ybWF0ID09PSBTdHJpbmcuZnJvbUNoYXJDb2RlKDAsIDEsIDAsIDApO1xuICB9XG5cbiAgY29uc3RydWN0b3Ioc3RyZWFtLCB2YXJpYXRpb25Db29yZHMgPSBudWxsKSB7XG4gICAgdGhpcy5kZWZhdWx0TGFuZ3VhZ2UgPSBudWxsO1xuICAgIHRoaXMuc3RyZWFtID0gc3RyZWFtO1xuICAgIHRoaXMudmFyaWF0aW9uQ29vcmRzID0gdmFyaWF0aW9uQ29vcmRzO1xuXG4gICAgdGhpcy5fZGlyZWN0b3J5UG9zID0gdGhpcy5zdHJlYW0ucG9zO1xuICAgIHRoaXMuX3RhYmxlcyA9IHt9O1xuICAgIHRoaXMuX2dseXBocyA9IHt9O1xuICAgIHRoaXMuX2RlY29kZURpcmVjdG9yeSgpO1xuXG4gICAgLy8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIGVhY2ggdGFibGUgdG8gbGF6aWx5IHBhcnNlXG4gICAgZm9yIChsZXQgdGFnIGluIHRoaXMuZGlyZWN0b3J5LnRhYmxlcykge1xuICAgICAgbGV0IHRhYmxlID0gdGhpcy5kaXJlY3RvcnkudGFibGVzW3RhZ107XG4gICAgICBpZiAodGFibGVzW3RhZ10gJiYgdGFibGUubGVuZ3RoID4gMCkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgdGFnLCB7XG4gICAgICAgICAgZ2V0OiB0aGlzLl9nZXRUYWJsZS5iaW5kKHRoaXMsIHRhYmxlKVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzZXREZWZhdWx0TGFuZ3VhZ2UobGFuZyA9IG51bGwpIHtcbiAgICB0aGlzLmRlZmF1bHRMYW5ndWFnZSA9IGxhbmc7XG4gIH1cblxuICBfZ2V0VGFibGUodGFibGUpIHtcbiAgICBpZiAoISh0YWJsZS50YWcgaW4gdGhpcy5fdGFibGVzKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhpcy5fdGFibGVzW3RhYmxlLnRhZ10gPSB0aGlzLl9kZWNvZGVUYWJsZSh0YWJsZSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmIChmb250a2l0LmxvZ0Vycm9ycykge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGRlY29kaW5nIHRhYmxlICR7dGFibGUudGFnfWApO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZS5zdGFjayk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fdGFibGVzW3RhYmxlLnRhZ107XG4gIH1cblxuICBfZ2V0VGFibGVTdHJlYW0odGFnKSB7XG4gICAgbGV0IHRhYmxlID0gdGhpcy5kaXJlY3RvcnkudGFibGVzW3RhZ107XG4gICAgaWYgKHRhYmxlKSB7XG4gICAgICB0aGlzLnN0cmVhbS5wb3MgPSB0YWJsZS5vZmZzZXQ7XG4gICAgICByZXR1cm4gdGhpcy5zdHJlYW07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBfZGVjb2RlRGlyZWN0b3J5KCkge1xuICAgIHJldHVybiB0aGlzLmRpcmVjdG9yeSA9IERpcmVjdG9yeS5kZWNvZGUodGhpcy5zdHJlYW0sIHtfc3RhcnRPZmZzZXQ6IDB9KTtcbiAgfVxuXG4gIF9kZWNvZGVUYWJsZSh0YWJsZSkge1xuICAgIGxldCBwb3MgPSB0aGlzLnN0cmVhbS5wb3M7XG5cbiAgICBsZXQgc3RyZWFtID0gdGhpcy5fZ2V0VGFibGVTdHJlYW0odGFibGUudGFnKTtcbiAgICBsZXQgcmVzdWx0ID0gdGFibGVzW3RhYmxlLnRhZ10uZGVjb2RlKHN0cmVhbSwgdGhpcywgdGFibGUubGVuZ3RoKTtcblxuICAgIHRoaXMuc3RyZWFtLnBvcyA9IHBvcztcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBzdHJpbmcgZnJvbSB0aGUgZm9udCdzIGBuYW1lYCB0YWJsZVxuICAgKiBgbGFuZ2AgaXMgYSBCQ1AtNDcgbGFuZ3VhZ2UgY29kZS5cbiAgICogQHJldHVybiB7c3RyaW5nfVxuICAgKi9cbiAgZ2V0TmFtZShrZXksIGxhbmcgPSB0aGlzLmRlZmF1bHRMYW5ndWFnZSB8fCBmb250a2l0LmRlZmF1bHRMYW5ndWFnZSkge1xuICAgIGxldCByZWNvcmQgPSB0aGlzLm5hbWUgJiYgdGhpcy5uYW1lLnJlY29yZHNba2V5XTtcbiAgICBpZiAocmVjb3JkKSB7XG4gICAgICAvLyBBdHRlbXB0IHRvIHJldHJpZXZlIHRoZSBlbnRyeSwgZGVwZW5kaW5nIG9uIHdoaWNoIHRyYW5zbGF0aW9uIGlzIGF2YWlsYWJsZTpcbiAgICAgIHJldHVybiAoXG4gICAgICAgICAgcmVjb3JkW2xhbmddXG4gICAgICAgICAgfHwgcmVjb3JkW3RoaXMuZGVmYXVsdExhbmd1YWdlXVxuICAgICAgICAgIHx8IHJlY29yZFtmb250a2l0LmRlZmF1bHRMYW5ndWFnZV1cbiAgICAgICAgICB8fCByZWNvcmRbJ2VuJ11cbiAgICAgICAgICB8fCByZWNvcmRbT2JqZWN0LmtleXMocmVjb3JkKVswXV0gLy8gU2VyaW91c2x5LCBBTlkgbGFuZ3VhZ2Ugd291bGQgYmUgZmluZVxuICAgICAgICAgIHx8IG51bGxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHVuaXF1ZSBQb3N0U2NyaXB0IG5hbWUgZm9yIHRoaXMgZm9udCwgZS5nLiBcIkhlbHZldGljYS1Cb2xkXCJcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICovXG4gIGdldCBwb3N0c2NyaXB0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXROYW1lKCdwb3N0c2NyaXB0TmFtZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmb250J3MgZnVsbCBuYW1lLCBlLmcuIFwiSGVsdmV0aWNhIEJvbGRcIlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgZ2V0IGZ1bGxOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmdldE5hbWUoJ2Z1bGxOYW1lJyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGZvbnQncyBmYW1pbHkgbmFtZSwgZS5nLiBcIkhlbHZldGljYVwiXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqL1xuICBnZXQgZmFtaWx5TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXROYW1lKCdmb250RmFtaWx5Jyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGZvbnQncyBzdWItZmFtaWx5LCBlLmcuIFwiQm9sZFwiLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgZ2V0IHN1YmZhbWlseU5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmFtZSgnZm9udFN1YmZhbWlseScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmb250J3MgY29weXJpZ2h0IGluZm9ybWF0aW9uXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqL1xuICBnZXQgY29weXJpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLmdldE5hbWUoJ2NvcHlyaWdodCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmb250J3MgdmVyc2lvbiBudW1iZXJcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICovXG4gIGdldCB2ZXJzaW9uKCkge1xuICAgIHJldHVybiB0aGlzLmdldE5hbWUoJ3ZlcnNpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZm9udOKAmXMgW2FzY2VuZGVyXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Bc2NlbmRlcl8odHlwb2dyYXBoeSkpXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgYXNjZW50KCkge1xuICAgIHJldHVybiB0aGlzLmhoZWEuYXNjZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBmb2504oCZcyBbZGVzY2VuZGVyXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9EZXNjZW5kZXIpXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgZGVzY2VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5oaGVhLmRlc2NlbnQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGFtb3VudCBvZiBzcGFjZSB0aGF0IHNob3VsZCBiZSBpbmNsdWRlZCBiZXR3ZWVuIGxpbmVzXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgbGluZUdhcCgpIHtcbiAgICByZXR1cm4gdGhpcy5oaGVhLmxpbmVHYXA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG9mZnNldCBmcm9tIHRoZSBub3JtYWwgdW5kZXJsaW5lIHBvc2l0aW9uIHRoYXQgc2hvdWxkIGJlIHVzZWRcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCB1bmRlcmxpbmVQb3NpdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5wb3N0LnVuZGVybGluZVBvc2l0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB3ZWlnaHQgb2YgdGhlIHVuZGVybGluZSB0aGF0IHNob3VsZCBiZSB1c2VkXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgdW5kZXJsaW5lVGhpY2tuZXNzKCkge1xuICAgIHJldHVybiB0aGlzLnBvc3QudW5kZXJsaW5lVGhpY2tuZXNzO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHRoaXMgaXMgYW4gaXRhbGljIGZvbnQsIHRoZSBhbmdsZSB0aGUgY3Vyc29yIHNob3VsZCBiZSBkcmF3biBhdCB0byBtYXRjaCB0aGUgZm9udCBkZXNpZ25cbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCBpdGFsaWNBbmdsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wb3N0Lml0YWxpY0FuZ2xlO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBoZWlnaHQgb2YgY2FwaXRhbCBsZXR0ZXJzIGFib3ZlIHRoZSBiYXNlbGluZS5cbiAgICogU2VlIFtoZXJlXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9DYXBfaGVpZ2h0KSBmb3IgbW9yZSBkZXRhaWxzLlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgZ2V0IGNhcEhlaWdodCgpIHtcbiAgICBsZXQgb3MyID0gdGhpc1snT1MvMiddO1xuICAgIHJldHVybiBvczIgPyBvczIuY2FwSGVpZ2h0IDogdGhpcy5hc2NlbnQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGhlaWdodCBvZiBsb3dlciBjYXNlIGxldHRlcnMgaW4gdGhlIGZvbnQuXG4gICAqIFNlZSBbaGVyZV0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvWC1oZWlnaHQpIGZvciBtb3JlIGRldGFpbHMuXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgeEhlaWdodCgpIHtcbiAgICBsZXQgb3MyID0gdGhpc1snT1MvMiddO1xuICAgIHJldHVybiBvczIgPyBvczIueEhlaWdodCA6IDA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBnbHlwaHMgaW4gdGhlIGZvbnQuXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBnZXQgbnVtR2x5cGhzKCkge1xuICAgIHJldHVybiB0aGlzLm1heHAubnVtR2x5cGhzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBmb2504oCZcyBpbnRlcm5hbCBjb29yZGluYXRlIGdyaWRcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCB1bml0c1BlckVtKCkge1xuICAgIHJldHVybiB0aGlzLmhlYWQudW5pdHNQZXJFbTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZm9udOKAmXMgYm91bmRpbmcgYm94LCBpLmUuIHRoZSBib3ggdGhhdCBlbmNsb3NlcyBhbGwgZ2x5cGhzIGluIHRoZSBmb250LlxuICAgKiBAdHlwZSB7QkJveH1cbiAgICovXG4gIEBjYWNoZVxuICBnZXQgYmJveCgpIHtcbiAgICByZXR1cm4gT2JqZWN0LmZyZWV6ZShuZXcgQkJveCh0aGlzLmhlYWQueE1pbiwgdGhpcy5oZWFkLnlNaW4sIHRoaXMuaGVhZC54TWF4LCB0aGlzLmhlYWQueU1heCkpO1xuICB9XG5cbiAgQGNhY2hlXG4gIGdldCBfY21hcFByb2Nlc3NvcigpIHtcbiAgICByZXR1cm4gbmV3IENtYXBQcm9jZXNzb3IodGhpcy5jbWFwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBhbGwgb2YgdGhlIHVuaWNvZGUgY29kZSBwb2ludHMgc3VwcG9ydGVkIGJ5IHRoZSBmb250LlxuICAgKiBAdHlwZSB7bnVtYmVyW119XG4gICAqL1xuICBAY2FjaGVcbiAgZ2V0IGNoYXJhY3RlclNldCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY21hcFByb2Nlc3Nvci5nZXRDaGFyYWN0ZXJTZXQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHdoZXRoZXIgdGhlcmUgaXMgZ2x5cGggaW4gdGhlIGZvbnQgZm9yIHRoZSBnaXZlbiB1bmljb2RlIGNvZGUgcG9pbnQuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBjb2RlUG9pbnRcbiAgICogQHJldHVybiB7Ym9vbGVhbn1cbiAgICovXG4gIGhhc0dseXBoRm9yQ29kZVBvaW50KGNvZGVQb2ludCkge1xuICAgIHJldHVybiAhIXRoaXMuX2NtYXBQcm9jZXNzb3IubG9va3VwKGNvZGVQb2ludCk7XG4gIH1cblxuICAvKipcbiAgICogTWFwcyBhIHNpbmdsZSB1bmljb2RlIGNvZGUgcG9pbnQgdG8gYSBHbHlwaCBvYmplY3QuXG4gICAqIERvZXMgbm90IHBlcmZvcm0gYW55IGFkdmFuY2VkIHN1YnN0aXR1dGlvbnMgKHRoZXJlIGlzIG5vIGNvbnRleHQgdG8gZG8gc28pLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gY29kZVBvaW50XG4gICAqIEByZXR1cm4ge0dseXBofVxuICAgKi9cbiAgZ2x5cGhGb3JDb2RlUG9pbnQoY29kZVBvaW50KSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0R2x5cGgodGhpcy5fY21hcFByb2Nlc3Nvci5sb29rdXAoY29kZVBvaW50KSwgW2NvZGVQb2ludF0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gYXJyYXkgb2YgR2x5cGggb2JqZWN0cyBmb3IgdGhlIGdpdmVuIHN0cmluZy5cbiAgICogVGhpcyBpcyBvbmx5IGEgb25lLXRvLW9uZSBtYXBwaW5nIGZyb20gY2hhcmFjdGVycyB0byBnbHlwaHMuXG4gICAqIEZvciBtb3N0IHVzZXMsIHlvdSBzaG91bGQgdXNlIGZvbnQubGF5b3V0IChkZXNjcmliZWQgYmVsb3cpLCB3aGljaFxuICAgKiBwcm92aWRlcyBhIG11Y2ggbW9yZSBhZHZhbmNlZCBtYXBwaW5nIHN1cHBvcnRpbmcgQUFUIGFuZCBPcGVuVHlwZSBzaGFwaW5nLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3RyaW5nXG4gICAqIEByZXR1cm4ge0dseXBoW119XG4gICAqL1xuICBnbHlwaHNGb3JTdHJpbmcoc3RyaW5nKSB7XG4gICAgbGV0IGdseXBocyA9IFtdO1xuICAgIGxldCBsZW4gPSBzdHJpbmcubGVuZ3RoO1xuICAgIGxldCBpZHggPSAwO1xuICAgIGxldCBsYXN0ID0gLTE7XG4gICAgbGV0IHN0YXRlID0gLTE7XG5cbiAgICB3aGlsZSAoaWR4IDw9IGxlbikge1xuICAgICAgbGV0IGNvZGUgPSAwO1xuICAgICAgbGV0IG5leHRTdGF0ZSA9IDA7XG5cbiAgICAgIGlmIChpZHggPCBsZW4pIHtcbiAgICAgICAgLy8gRGVjb2RlIHRoZSBuZXh0IGNvZGVwb2ludCBmcm9tIFVURiAxNlxuICAgICAgICBjb2RlID0gc3RyaW5nLmNoYXJDb2RlQXQoaWR4KyspO1xuICAgICAgICBpZiAoMHhkODAwIDw9IGNvZGUgJiYgY29kZSA8PSAweGRiZmYgJiYgaWR4IDwgbGVuKSB7XG4gICAgICAgICAgbGV0IG5leHQgPSBzdHJpbmcuY2hhckNvZGVBdChpZHgpO1xuICAgICAgICAgIGlmICgweGRjMDAgPD0gbmV4dCAmJiBuZXh0IDw9IDB4ZGZmZikge1xuICAgICAgICAgICAgaWR4Kys7XG4gICAgICAgICAgICBjb2RlID0gKChjb2RlICYgMHgzZmYpIDw8IDEwKSArIChuZXh0ICYgMHgzZmYpICsgMHgxMDAwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDb21wdXRlIHRoZSBuZXh0IHN0YXRlOiAxIGlmIHRoZSBuZXh0IGNvZGVwb2ludCBpcyBhIHZhcmlhdGlvbiBzZWxlY3RvciwgMCBvdGhlcndpc2UuXG4gICAgICAgIG5leHRTdGF0ZSA9ICgoMHhmZTAwIDw9IGNvZGUgJiYgY29kZSA8PSAweGZlMGYpIHx8ICgweGUwMTAwIDw9IGNvZGUgJiYgY29kZSA8PSAweGUwMWVmKSkgPyAxIDogMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlkeCsrO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3RhdGUgPT09IDAgJiYgbmV4dFN0YXRlID09PSAxKSB7XG4gICAgICAgIC8vIFZhcmlhdGlvbiBzZWxlY3RvciBmb2xsb3dpbmcgbm9ybWFsIGNvZGVwb2ludC5cbiAgICAgICAgZ2x5cGhzLnB1c2godGhpcy5nZXRHbHlwaCh0aGlzLl9jbWFwUHJvY2Vzc29yLmxvb2t1cChsYXN0LCBjb2RlKSwgW2xhc3QsIGNvZGVdKSk7XG4gICAgICB9IGVsc2UgaWYgKHN0YXRlID09PSAwICYmIG5leHRTdGF0ZSA9PT0gMCkge1xuICAgICAgICAvLyBOb3JtYWwgY29kZXBvaW50IGZvbGxvd2luZyBub3JtYWwgY29kZXBvaW50LlxuICAgICAgICBnbHlwaHMucHVzaCh0aGlzLmdseXBoRm9yQ29kZVBvaW50KGxhc3QpKTtcbiAgICAgIH1cblxuICAgICAgbGFzdCA9IGNvZGU7XG4gICAgICBzdGF0ZSA9IG5leHRTdGF0ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gZ2x5cGhzO1xuICB9XG5cbiAgQGNhY2hlXG4gIGdldCBfbGF5b3V0RW5naW5lKCkge1xuICAgIHJldHVybiBuZXcgTGF5b3V0RW5naW5lKHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBHbHlwaFJ1biBvYmplY3QsIHdoaWNoIGluY2x1ZGVzIGFuIGFycmF5IG9mIEdseXBocyBhbmQgR2x5cGhQb3NpdGlvbnMgZm9yIHRoZSBnaXZlbiBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzdHJpbmdcbiAgICogQHBhcmFtIHtzdHJpbmdbXX0gW3VzZXJGZWF0dXJlc11cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtzY3JpcHRdXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbbGFuZ3VhZ2VdXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbZGlyZWN0aW9uXVxuICAgKiBAcmV0dXJuIHtHbHlwaFJ1bn1cbiAgICovXG4gIGxheW91dChzdHJpbmcsIHVzZXJGZWF0dXJlcywgc2NyaXB0LCBsYW5ndWFnZSwgZGlyZWN0aW9uKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xheW91dEVuZ2luZS5sYXlvdXQoc3RyaW5nLCB1c2VyRmVhdHVyZXMsIHNjcmlwdCwgbGFuZ3VhZ2UsIGRpcmVjdGlvbik7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhbiBhcnJheSBvZiBzdHJpbmdzIHRoYXQgbWFwIHRvIHRoZSBnaXZlbiBnbHlwaCBpZC5cbiAgICogQHBhcmFtIHtudW1iZXJ9IGdpZCAtIGdseXBoIGlkXG4gICAqL1xuICBzdHJpbmdzRm9yR2x5cGgoZ2lkKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xheW91dEVuZ2luZS5zdHJpbmdzRm9yR2x5cGgoZ2lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBhbGwgW09wZW5UeXBlIGZlYXR1cmUgdGFnc10oaHR0cHM6Ly93d3cubWljcm9zb2Z0LmNvbS90eXBvZ3JhcGh5L290c3BlYy9mZWF0dXJldGFncy5odG0pXG4gICAqIChvciBtYXBwZWQgQUFUIHRhZ3MpIHN1cHBvcnRlZCBieSB0aGUgZm9udC5cbiAgICogVGhlIGZlYXR1cmVzIHBhcmFtZXRlciBpcyBhbiBhcnJheSBvZiBPcGVuVHlwZSBmZWF0dXJlIHRhZ3MgdG8gYmUgYXBwbGllZCBpbiBhZGRpdGlvbiB0byB0aGUgZGVmYXVsdCBzZXQuXG4gICAqIElmIHRoaXMgaXMgYW4gQUFUIGZvbnQsIHRoZSBPcGVuVHlwZSBmZWF0dXJlIHRhZ3MgYXJlIG1hcHBlZCB0byBBQVQgZmVhdHVyZXMuXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmdbXX1cbiAgICovXG4gIGdldCBhdmFpbGFibGVGZWF0dXJlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0RW5naW5lLmdldEF2YWlsYWJsZUZlYXR1cmVzKCk7XG4gIH1cblxuICBnZXRBdmFpbGFibGVGZWF0dXJlcyhzY3JpcHQsIGxhbmd1YWdlKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xheW91dEVuZ2luZS5nZXRBdmFpbGFibGVGZWF0dXJlcyhzY3JpcHQsIGxhbmd1YWdlKTtcbiAgfVxuXG4gIF9nZXRCYXNlR2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMgPSBbXSkge1xuICAgIGlmICghdGhpcy5fZ2x5cGhzW2dseXBoXSkge1xuICAgICAgaWYgKHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5nbHlmKSB7XG4gICAgICAgIHRoaXMuX2dseXBoc1tnbHlwaF0gPSBuZXcgVFRGR2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMsIHRoaXMpO1xuXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuZGlyZWN0b3J5LnRhYmxlc1snQ0ZGICddIHx8IHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5DRkYyKSB7XG4gICAgICAgIHRoaXMuX2dseXBoc1tnbHlwaF0gPSBuZXcgQ0ZGR2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMsIHRoaXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9nbHlwaHNbZ2x5cGhdIHx8IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIGdseXBoIG9iamVjdCBmb3IgdGhlIGdpdmVuIGdseXBoIGlkLlxuICAgKiBZb3UgY2FuIHBhc3MgdGhlIGFycmF5IG9mIGNvZGUgcG9pbnRzIHRoaXMgZ2x5cGggcmVwcmVzZW50cyBmb3JcbiAgICogeW91ciB1c2UgbGF0ZXIsIGFuZCBpdCB3aWxsIGJlIHN0b3JlZCBpbiB0aGUgZ2x5cGggb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gZ2x5cGhcbiAgICogQHBhcmFtIHtudW1iZXJbXX0gY2hhcmFjdGVyc1xuICAgKiBAcmV0dXJuIHtHbHlwaH1cbiAgICovXG4gIGdldEdseXBoKGdseXBoLCBjaGFyYWN0ZXJzID0gW10pIHtcbiAgICBpZiAoIXRoaXMuX2dseXBoc1tnbHlwaF0pIHtcbiAgICAgIGlmICh0aGlzLmRpcmVjdG9yeS50YWJsZXMuc2JpeCkge1xuICAgICAgICB0aGlzLl9nbHlwaHNbZ2x5cGhdID0gbmV3IFNCSVhHbHlwaChnbHlwaCwgY2hhcmFjdGVycywgdGhpcyk7XG5cbiAgICAgIH0gZWxzZSBpZiAoKHRoaXMuZGlyZWN0b3J5LnRhYmxlcy5DT0xSKSAmJiAodGhpcy5kaXJlY3RvcnkudGFibGVzLkNQQUwpKSB7XG4gICAgICAgIHRoaXMuX2dseXBoc1tnbHlwaF0gPSBuZXcgQ09MUkdseXBoKGdseXBoLCBjaGFyYWN0ZXJzLCB0aGlzKTtcblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fZ2V0QmFzZUdseXBoKGdseXBoLCBjaGFyYWN0ZXJzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fZ2x5cGhzW2dseXBoXSB8fCBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBTdWJzZXQgZm9yIHRoaXMgZm9udC5cbiAgICogQHJldHVybiB7U3Vic2V0fVxuICAgKi9cbiAgY3JlYXRlU3Vic2V0KCkge1xuICAgIGlmICh0aGlzLmRpcmVjdG9yeS50YWJsZXNbJ0NGRiAnXSkge1xuICAgICAgcmV0dXJuIG5ldyBDRkZTdWJzZXQodGhpcyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBUVEZTdWJzZXQodGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhbiBvYmplY3QgZGVzY3JpYmluZyB0aGUgYXZhaWxhYmxlIHZhcmlhdGlvbiBheGVzXG4gICAqIHRoYXQgdGhpcyBmb250IHN1cHBvcnRzLiBLZXlzIGFyZSBzZXR0aW5nIHRhZ3MsIGFuZCB2YWx1ZXNcbiAgICogY29udGFpbiB0aGUgYXhpcyBuYW1lLCByYW5nZSwgYW5kIGRlZmF1bHQgdmFsdWUuXG4gICAqXG4gICAqIEB0eXBlIHtvYmplY3R9XG4gICAqL1xuICBAY2FjaGVcbiAgZ2V0IHZhcmlhdGlvbkF4ZXMoKSB7XG4gICAgbGV0IHJlcyA9IHt9O1xuICAgIGlmICghdGhpcy5mdmFyKSB7XG4gICAgICByZXR1cm4gcmVzO1xuICAgIH1cblxuICAgIGZvciAobGV0IGF4aXMgb2YgdGhpcy5mdmFyLmF4aXMpIHtcbiAgICAgIHJlc1theGlzLmF4aXNUYWcudHJpbSgpXSA9IHtcbiAgICAgICAgbmFtZTogYXhpcy5uYW1lLmVuLFxuICAgICAgICBtaW46IGF4aXMubWluVmFsdWUsXG4gICAgICAgIGRlZmF1bHQ6IGF4aXMuZGVmYXVsdFZhbHVlLFxuICAgICAgICBtYXg6IGF4aXMubWF4VmFsdWVcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIG9iamVjdCBkZXNjcmliaW5nIHRoZSBuYW1lZCB2YXJpYXRpb24gaW5zdGFuY2VzXG4gICAqIHRoYXQgdGhlIGZvbnQgZGVzaWduZXIgaGFzIHNwZWNpZmllZC4gS2V5cyBhcmUgdmFyaWF0aW9uIG5hbWVzXG4gICAqIGFuZCB2YWx1ZXMgYXJlIHRoZSB2YXJpYXRpb24gc2V0dGluZ3MgZm9yIHRoaXMgaW5zdGFuY2UuXG4gICAqXG4gICAqIEB0eXBlIHtvYmplY3R9XG4gICAqL1xuICBAY2FjaGVcbiAgZ2V0IG5hbWVkVmFyaWF0aW9ucygpIHtcbiAgICBsZXQgcmVzID0ge307XG4gICAgaWYgKCF0aGlzLmZ2YXIpIHtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaW5zdGFuY2Ugb2YgdGhpcy5mdmFyLmluc3RhbmNlKSB7XG4gICAgICBsZXQgc2V0dGluZ3MgPSB7fTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5mdmFyLmF4aXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IGF4aXMgPSB0aGlzLmZ2YXIuYXhpc1tpXTtcbiAgICAgICAgc2V0dGluZ3NbYXhpcy5heGlzVGFnLnRyaW0oKV0gPSBpbnN0YW5jZS5jb29yZFtpXTtcbiAgICAgIH1cblxuICAgICAgcmVzW2luc3RhbmNlLm5hbWUuZW5dID0gc2V0dGluZ3M7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgbmV3IGZvbnQgd2l0aCB0aGUgZ2l2ZW4gdmFyaWF0aW9uIHNldHRpbmdzIGFwcGxpZWQuXG4gICAqIFNldHRpbmdzIGNhbiBlaXRoZXIgYmUgYW4gaW5zdGFuY2UgbmFtZSwgb3IgYW4gb2JqZWN0IGNvbnRhaW5pbmdcbiAgICogdmFyaWF0aW9uIHRhZ3MgYXMgc3BlY2lmaWVkIGJ5IHRoZSBgdmFyaWF0aW9uQXhlc2AgcHJvcGVydHkuXG4gICAqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBzZXR0aW5nc1xuICAgKiBAcmV0dXJuIHtUVEZGb250fVxuICAgKi9cbiAgZ2V0VmFyaWF0aW9uKHNldHRpbmdzKSB7XG4gICAgaWYgKCEodGhpcy5kaXJlY3RvcnkudGFibGVzLmZ2YXIgJiYgKCh0aGlzLmRpcmVjdG9yeS50YWJsZXMuZ3ZhciAmJiB0aGlzLmRpcmVjdG9yeS50YWJsZXMuZ2x5ZikgfHwgdGhpcy5kaXJlY3RvcnkudGFibGVzLkNGRjIpKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdWYXJpYXRpb25zIHJlcXVpcmUgYSBmb250IHdpdGggdGhlIGZ2YXIsIGd2YXIgYW5kIGdseWYsIG9yIENGRjIgdGFibGVzLicpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygc2V0dGluZ3MgPT09ICdzdHJpbmcnKSB7XG4gICAgICBzZXR0aW5ncyA9IHRoaXMubmFtZWRWYXJpYXRpb25zW3NldHRpbmdzXTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHNldHRpbmdzICE9PSAnb2JqZWN0Jykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdWYXJpYXRpb24gc2V0dGluZ3MgbXVzdCBiZSBlaXRoZXIgYSB2YXJpYXRpb24gbmFtZSBvciBzZXR0aW5ncyBvYmplY3QuJyk7XG4gICAgfVxuXG4gICAgLy8gbm9ybWFsaXplIHRoZSBjb29yZGluYXRlc1xuICAgIGxldCBjb29yZHMgPSB0aGlzLmZ2YXIuYXhpcy5tYXAoKGF4aXMsIGkpID0+IHtcbiAgICAgIGxldCBheGlzVGFnID0gYXhpcy5heGlzVGFnLnRyaW0oKTtcbiAgICAgIGlmIChheGlzVGFnIGluIHNldHRpbmdzKSB7XG4gICAgICAgIHJldHVybiBNYXRoLm1heChheGlzLm1pblZhbHVlLCBNYXRoLm1pbihheGlzLm1heFZhbHVlLCBzZXR0aW5nc1theGlzVGFnXSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGF4aXMuZGVmYXVsdFZhbHVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgbGV0IHN0cmVhbSA9IG5ldyByLkRlY29kZVN0cmVhbSh0aGlzLnN0cmVhbS5idWZmZXIpO1xuICAgIHN0cmVhbS5wb3MgPSB0aGlzLl9kaXJlY3RvcnlQb3M7XG5cbiAgICBsZXQgZm9udCA9IG5ldyBUVEZGb250KHN0cmVhbSwgY29vcmRzKTtcbiAgICBmb250Ll90YWJsZXMgPSB0aGlzLl90YWJsZXM7XG5cbiAgICByZXR1cm4gZm9udDtcbiAgfVxuXG4gIEBjYWNoZVxuICBnZXQgX3ZhcmlhdGlvblByb2Nlc3NvcigpIHtcbiAgICBpZiAoIXRoaXMuZnZhcikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IHZhcmlhdGlvbkNvb3JkcyA9IHRoaXMudmFyaWF0aW9uQ29vcmRzO1xuXG4gICAgLy8gSWdub3JlIGlmIG5vIHZhcmlhdGlvbiBjb29yZHMgYW5kIG5vdCBDRkYyXG4gICAgaWYgKCF2YXJpYXRpb25Db29yZHMgJiYgIXRoaXMuQ0ZGMikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKCF2YXJpYXRpb25Db29yZHMpIHtcbiAgICAgIHZhcmlhdGlvbkNvb3JkcyA9IHRoaXMuZnZhci5heGlzLm1hcChheGlzID0+IGF4aXMuZGVmYXVsdFZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IEdseXBoVmFyaWF0aW9uUHJvY2Vzc29yKHRoaXMsIHZhcmlhdGlvbkNvb3Jkcyk7XG4gIH1cblxuICAvLyBTdGFuZGFyZGl6ZWQgZm9ybWF0IHBsdWdpbiBBUElcbiAgZ2V0Rm9udChuYW1lKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmFyaWF0aW9uKG5hbWUpO1xuICB9XG59XG4iLCAiLyoqXG4gKiBUaGlzIGRlY29yYXRvciBjYWNoZXMgdGhlIHJlc3VsdHMgb2YgYSBnZXR0ZXIgb3IgbWV0aG9kIHN1Y2ggdGhhdFxuICogdGhlIHJlc3VsdHMgYXJlIGxhemlseSBjb21wdXRlZCBvbmNlLCBhbmQgdGhlbiBjYWNoZWQuXG4gKiBAcHJpdmF0ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FjaGUodGFyZ2V0LCBrZXksIGRlc2NyaXB0b3IpIHtcbiAgaWYgKGRlc2NyaXB0b3IuZ2V0KSB7XG4gICAgbGV0IGdldCA9IGRlc2NyaXB0b3IuZ2V0O1xuICAgIGRlc2NyaXB0b3IuZ2V0ID0gZnVuY3Rpb24oKSB7XG4gICAgICBsZXQgdmFsdWUgPSBnZXQuY2FsbCh0aGlzKTtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBrZXksIHsgdmFsdWUgfSk7XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfTtcbiAgfSBlbHNlIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGxldCBmbiA9IGRlc2NyaXB0b3IudmFsdWU7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZ2V0KCkge1xuICAgICAgICBsZXQgY2FjaGUgPSBuZXcgTWFwO1xuICAgICAgICBmdW5jdGlvbiBtZW1vaXplZCguLi5hcmdzKSB7XG4gICAgICAgICAgbGV0IGtleSA9IGFyZ3MubGVuZ3RoID4gMCA/IGFyZ3NbMF0gOiAndmFsdWUnO1xuICAgICAgICAgIGlmIChjYWNoZS5oYXMoa2V5KSkge1xuICAgICAgICAgICAgcmV0dXJuIGNhY2hlLmdldChrZXkpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxldCByZXN1bHQgPSBmbi5hcHBseSh0aGlzLCBhcmdzKTtcbiAgICAgICAgICBjYWNoZS5zZXQoa2V5LCByZXN1bHQpO1xuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH07XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIGtleSwge3ZhbHVlOiBtZW1vaXplZH0pO1xuICAgICAgICByZXR1cm4gbWVtb2l6ZWQ7XG4gICAgICB9XG4gICAgfTtcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IFRhYmxlcyBmcm9tICcuLyc7XG5cbmxldCBUYWJsZUVudHJ5ID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICAgICAgbmV3IHIuU3RyaW5nKDQpLFxuICBjaGVja1N1bTogICByLnVpbnQzMixcbiAgb2Zmc2V0OiAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgJ3ZvaWQnLCB7IHR5cGU6ICdnbG9iYWwnIH0pLFxuICBsZW5ndGg6ICAgICByLnVpbnQzMlxufSk7XG5cbmxldCBEaXJlY3RvcnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgICAgICAgICAgbmV3IHIuU3RyaW5nKDQpLFxuICBudW1UYWJsZXM6ICAgICAgci51aW50MTYsXG4gIHNlYXJjaFJhbmdlOiAgICByLnVpbnQxNixcbiAgZW50cnlTZWxlY3RvcjogIHIudWludDE2LFxuICByYW5nZVNoaWZ0OiAgICAgci51aW50MTYsXG4gIHRhYmxlczogICAgICAgICBuZXcgci5BcnJheShUYWJsZUVudHJ5LCAnbnVtVGFibGVzJylcbn0pO1xuXG5EaXJlY3RvcnkucHJvY2VzcyA9IGZ1bmN0aW9uKCkge1xuICBsZXQgdGFibGVzID0ge307XG4gIGZvciAobGV0IHRhYmxlIG9mIHRoaXMudGFibGVzKSB7XG4gICAgdGFibGVzW3RhYmxlLnRhZ10gPSB0YWJsZTtcbiAgfVxuXG4gIHRoaXMudGFibGVzID0gdGFibGVzO1xufTtcblxuRGlyZWN0b3J5LnByZUVuY29kZSA9IGZ1bmN0aW9uKCkge1xuICBpZiAoIUFycmF5LmlzQXJyYXkodGhpcy50YWJsZXMpKSB7XG4gICAgbGV0IHRhYmxlcyA9IFtdO1xuICAgIGZvciAobGV0IHRhZyBpbiB0aGlzLnRhYmxlcykge1xuICAgICAgbGV0IHRhYmxlID0gdGhpcy50YWJsZXNbdGFnXTtcbiAgICAgIGlmICh0YWJsZSkge1xuICAgICAgICB0YWJsZXMucHVzaCh7XG4gICAgICAgICAgdGFnOiB0YWcsXG4gICAgICAgICAgY2hlY2tTdW06IDAsXG4gICAgICAgICAgb2Zmc2V0OiBuZXcgci5Wb2lkUG9pbnRlcihUYWJsZXNbdGFnXSwgdGFibGUpLFxuICAgICAgICAgIGxlbmd0aDogVGFibGVzW3RhZ10uc2l6ZSh0YWJsZSlcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIHRoaXMudGFibGVzID0gdGFibGVzO1xuICB9XG5cbiAgdGhpcy50YWcgPSAndHJ1ZSc7XG4gIHRoaXMubnVtVGFibGVzID0gdGhpcy50YWJsZXMubGVuZ3RoO1xuXG4gIGxldCBtYXhFeHBvbmVudEZvcjIgPSBNYXRoLmZsb29yKChNYXRoLmxvZyh0aGlzLm51bVRhYmxlcykgLyBNYXRoLkxOMikpO1xuICBsZXQgbWF4UG93ZXJPZjIgPSBNYXRoLnBvdygyLCBtYXhFeHBvbmVudEZvcjIpO1xuXG4gIHRoaXMuc2VhcmNoUmFuZ2UgPSAgbWF4UG93ZXJPZjIgKiAxNjtcbiAgdGhpcy5lbnRyeVNlbGVjdG9yID0gTWF0aC5sb2cobWF4UG93ZXJPZjIpIC8gTWF0aC5MTjI7XG4gIHRoaXMucmFuZ2VTaGlmdCA9IHRoaXMubnVtVGFibGVzICogMTYgLSB0aGlzLnNlYXJjaFJhbmdlO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgRGlyZWN0b3J5O1xuIiwgImxldCB0YWJsZXMgPSB7fTtcbmV4cG9ydCBkZWZhdWx0IHRhYmxlcztcblxuLy8gUmVxdWlyZWQgVGFibGVzXG5pbXBvcnQgY21hcCBmcm9tICcuL2NtYXAnO1xuaW1wb3J0IGhlYWQgZnJvbSAnLi9oZWFkJztcbmltcG9ydCBoaGVhIGZyb20gJy4vaGhlYSc7XG5pbXBvcnQgaG10eCBmcm9tICcuL2htdHgnO1xuaW1wb3J0IG1heHAgZnJvbSAnLi9tYXhwJztcbmltcG9ydCBuYW1lIGZyb20gJy4vbmFtZSc7XG5pbXBvcnQgT1MyIGZyb20gJy4vT1MyJztcbmltcG9ydCBwb3N0IGZyb20gJy4vcG9zdCc7XG5cbnRhYmxlcy5jbWFwID0gY21hcDtcbnRhYmxlcy5oZWFkID0gaGVhZDtcbnRhYmxlcy5oaGVhID0gaGhlYTtcbnRhYmxlcy5obXR4ID0gaG10eDtcbnRhYmxlcy5tYXhwID0gbWF4cDtcbnRhYmxlcy5uYW1lID0gbmFtZTtcbnRhYmxlc1snT1MvMiddID0gT1MyO1xudGFibGVzLnBvc3QgPSBwb3N0O1xuXG5cbi8vIFRydWVUeXBlIE91dGxpbmVzXG5pbXBvcnQgY3Z0IGZyb20gJy4vY3Z0JztcbmltcG9ydCBmcGdtIGZyb20gJy4vZnBnbSc7XG5pbXBvcnQgbG9jYSBmcm9tICcuL2xvY2EnO1xuaW1wb3J0IHByZXAgZnJvbSAnLi9wcmVwJztcbmltcG9ydCBnbHlmIGZyb20gJy4vZ2x5Zic7XG5cbnRhYmxlcy5mcGdtID0gZnBnbTtcbnRhYmxlcy5sb2NhID0gbG9jYTtcbnRhYmxlcy5wcmVwID0gcHJlcDtcbnRhYmxlc1snY3Z0ICddID0gY3Z0O1xudGFibGVzLmdseWYgPSBnbHlmO1xuXG5cbi8vIFBvc3RTY3JpcHQgT3V0bGluZXNcbmltcG9ydCBDRkZGb250IGZyb20gJy4uL2NmZi9DRkZGb250JztcbmltcG9ydCBWT1JHIGZyb20gJy4vVk9SRyc7XG5cbnRhYmxlc1snQ0ZGICddID0gQ0ZGRm9udDtcbnRhYmxlc1snQ0ZGMiddID0gQ0ZGRm9udDtcbnRhYmxlcy5WT1JHID0gVk9SRztcblxuXG4vLyBCaXRtYXAgR2x5cGhzXG5pbXBvcnQgRUJMQyBmcm9tICcuL0VCTEMnO1xuaW1wb3J0IHNiaXggZnJvbSAnLi9zYml4JztcbmltcG9ydCBDT0xSIGZyb20gJy4vQ09MUic7XG5pbXBvcnQgQ1BBTCBmcm9tICcuL0NQQUwnO1xuXG50YWJsZXMuRUJMQyA9IEVCTEM7XG50YWJsZXMuQ0JMQyA9IHRhYmxlcy5FQkxDO1xudGFibGVzLnNiaXggPSBzYml4O1xudGFibGVzLkNPTFIgPSBDT0xSO1xudGFibGVzLkNQQUwgPSBDUEFMO1xuXG5cbi8vIEFkdmFuY2VkIE9wZW5UeXBlIFRhYmxlc1xuaW1wb3J0IEJBU0UgZnJvbSAnLi9CQVNFJztcbmltcG9ydCBHREVGIGZyb20gJy4vR0RFRic7XG5pbXBvcnQgR1BPUyBmcm9tICcuL0dQT1MnO1xuaW1wb3J0IEdTVUIgZnJvbSAnLi9HU1VCJztcbmltcG9ydCBKU1RGIGZyb20gJy4vSlNURic7XG5cbnRhYmxlcy5CQVNFID0gQkFTRTtcbnRhYmxlcy5HREVGID0gR0RFRjtcbnRhYmxlcy5HUE9TID0gR1BPUztcbnRhYmxlcy5HU1VCID0gR1NVQjtcbnRhYmxlcy5KU1RGID0gSlNURjtcblxuLy8gT3BlblR5cGUgdmFyaWF0aW9ucyB0YWJsZXNcbmltcG9ydCBIVkFSIGZyb20gJy4vSFZBUic7XG5cbnRhYmxlcy5IVkFSID0gSFZBUjtcblxuLy8gT3RoZXIgT3BlblR5cGUgVGFibGVzXG5pbXBvcnQgRFNJRyBmcm9tICcuL0RTSUcnO1xuaW1wb3J0IGdhc3AgZnJvbSAnLi9nYXNwJztcbmltcG9ydCBoZG14IGZyb20gJy4vaGRteCc7XG5pbXBvcnQga2VybiBmcm9tICcuL2tlcm4nO1xuaW1wb3J0IExUU0ggZnJvbSAnLi9MVFNIJztcbmltcG9ydCBQQ0xUIGZyb20gJy4vUENMVCc7XG5pbXBvcnQgVkRNWCBmcm9tICcuL1ZETVgnO1xuaW1wb3J0IHZoZWEgZnJvbSAnLi92aGVhJztcbmltcG9ydCB2bXR4IGZyb20gJy4vdm10eCc7XG5cbnRhYmxlcy5EU0lHID0gRFNJRztcbnRhYmxlcy5nYXNwID0gZ2FzcDtcbnRhYmxlcy5oZG14ID0gaGRteDtcbnRhYmxlcy5rZXJuID0ga2VybjtcbnRhYmxlcy5MVFNIID0gTFRTSDtcbnRhYmxlcy5QQ0xUID0gUENMVDtcbnRhYmxlcy5WRE1YID0gVkRNWDtcbnRhYmxlcy52aGVhID0gdmhlYTtcbnRhYmxlcy52bXR4ID0gdm10eDtcblxuXG4vLyBBcHBsZSBBZHZhbmNlZCBUeXBvZ3JhcGh5IFRhYmxlc1xuaW1wb3J0IGF2YXIgZnJvbSAnLi9hdmFyJztcbmltcG9ydCBic2xuIGZyb20gJy4vYnNsbic7XG5pbXBvcnQgZmVhdCBmcm9tICcuL2ZlYXQnO1xuaW1wb3J0IGZ2YXIgZnJvbSAnLi9mdmFyJztcbmltcG9ydCBndmFyIGZyb20gJy4vZ3Zhcic7XG5pbXBvcnQganVzdCBmcm9tICcuL2p1c3QnO1xuaW1wb3J0IG1vcnggZnJvbSAnLi9tb3J4JztcbmltcG9ydCBvcGJkIGZyb20gJy4vb3BiZCc7XG5cbnRhYmxlcy5hdmFyID0gYXZhcjtcbnRhYmxlcy5ic2xuID0gYnNsbjtcbnRhYmxlcy5mZWF0ID0gZmVhdDtcbnRhYmxlcy5mdmFyID0gZnZhcjtcbnRhYmxlcy5ndmFyID0gZ3ZhcjtcbnRhYmxlcy5qdXN0ID0ganVzdDtcbnRhYmxlcy5tb3J4ID0gbW9yeDtcbnRhYmxlcy5vcGJkID0gb3BiZDtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IFN1YkhlYWRlciA9IG5ldyByLlN0cnVjdCh7XG4gIGZpcnN0Q29kZTogICAgICByLnVpbnQxNixcbiAgZW50cnlDb3VudDogICAgIHIudWludDE2LFxuICBpZERlbHRhOiAgICAgICAgci5pbnQxNixcbiAgaWRSYW5nZU9mZnNldDogIHIudWludDE2XG59KTtcblxubGV0IENtYXBHcm91cCA9IG5ldyByLlN0cnVjdCh7XG4gIHN0YXJ0Q2hhckNvZGU6ICByLnVpbnQzMixcbiAgZW5kQ2hhckNvZGU6ICAgIHIudWludDMyLFxuICBnbHlwaElEOiAgICAgICAgci51aW50MzJcbn0pO1xuXG5sZXQgVW5pY29kZVZhbHVlUmFuZ2UgPSBuZXcgci5TdHJ1Y3Qoe1xuICBzdGFydFVuaWNvZGVWYWx1ZTogIHIudWludDI0LFxuICBhZGRpdGlvbmFsQ291bnQ6ICAgIHIudWludDhcbn0pO1xuXG5sZXQgVVZTTWFwcGluZyA9IG5ldyByLlN0cnVjdCh7XG4gIHVuaWNvZGVWYWx1ZTogci51aW50MjQsXG4gIGdseXBoSUQ6ICAgICAgci51aW50MTZcbn0pO1xuXG5sZXQgRGVmYXVsdFVWUyA9IG5ldyByLkFycmF5KFVuaWNvZGVWYWx1ZVJhbmdlLCByLnVpbnQzMik7XG5sZXQgTm9uRGVmYXVsdFVWUyA9IG5ldyByLkFycmF5KFVWU01hcHBpbmcsIHIudWludDMyKTtcblxubGV0IFZhclNlbGVjdG9yUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgdmFyU2VsZWN0b3I6ICAgIHIudWludDI0LFxuICBkZWZhdWx0VVZTOiAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgRGVmYXVsdFVWUywge3R5cGU6ICdwYXJlbnQnfSksXG4gIG5vbkRlZmF1bHRVVlM6ICBuZXcgci5Qb2ludGVyKHIudWludDMyLCBOb25EZWZhdWx0VVZTLCB7dHlwZTogJ3BhcmVudCd9KVxufSk7XG5cbmxldCBDbWFwU3VidGFibGUgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMDogeyAvLyBCeXRlIGVuY29kaW5nXG4gICAgbGVuZ3RoOiAgICAgci51aW50MTYsICAgLy8gVG90YWwgdGFibGUgbGVuZ3RoIGluIGJ5dGVzIChzZXQgdG8gMjYyIGZvciBmb3JtYXQgMClcbiAgICBsYW5ndWFnZTogICByLnVpbnQxNiwgICAvLyBMYW5ndWFnZSBjb2RlIGZvciB0aGlzIGVuY29kaW5nIHN1YnRhYmxlLCBvciB6ZXJvIGlmIGxhbmd1YWdlLWluZGVwZW5kZW50XG4gICAgY29kZU1hcDogICAgbmV3IHIuTGF6eUFycmF5KHIudWludDgsIDI1NilcbiAgfSxcblxuICAyOiB7IC8vIEhpZ2gtYnl0ZSBtYXBwaW5nIChDSkspXG4gICAgbGVuZ3RoOiAgICAgICAgICAgci51aW50MTYsXG4gICAgbGFuZ3VhZ2U6ICAgICAgICAgci51aW50MTYsXG4gICAgc3ViSGVhZGVyS2V5czogICAgbmV3IHIuQXJyYXkoci51aW50MTYsIDI1NiksXG4gICAgc3ViSGVhZGVyQ291bnQ6ICAgdCA9PiBNYXRoLm1heC5hcHBseShNYXRoLCB0LnN1YkhlYWRlcktleXMpLFxuICAgIHN1YkhlYWRlcnM6ICAgICAgIG5ldyByLkxhenlBcnJheShTdWJIZWFkZXIsICdzdWJIZWFkZXJDb3VudCcpLFxuICAgIGdseXBoSW5kZXhBcnJheTogIG5ldyByLkxhenlBcnJheShyLnVpbnQxNiwgJ3N1YkhlYWRlckNvdW50JylcbiAgfSxcblxuICA0OiB7IC8vIFNlZ21lbnQgbWFwcGluZyB0byBkZWx0YSB2YWx1ZXNcbiAgICBsZW5ndGg6ICAgICAgICAgICByLnVpbnQxNiwgICAgICAgICAgICAgIC8vIFRvdGFsIHRhYmxlIGxlbmd0aCBpbiBieXRlc1xuICAgIGxhbmd1YWdlOiAgICAgICAgIHIudWludDE2LCAgICAgICAgICAgICAgLy8gTGFuZ3VhZ2UgY29kZVxuICAgIHNlZ0NvdW50WDI6ICAgICAgIHIudWludDE2LFxuICAgIHNlZ0NvdW50OiAgICAgICAgIHQgPT4gdC5zZWdDb3VudFgyID4+IDEsXG4gICAgc2VhcmNoUmFuZ2U6ICAgICAgci51aW50MTYsXG4gICAgZW50cnlTZWxlY3RvcjogICAgci51aW50MTYsXG4gICAgcmFuZ2VTaGlmdDogICAgICAgci51aW50MTYsXG4gICAgZW5kQ29kZTogICAgICAgICAgbmV3IHIuTGF6eUFycmF5KHIudWludDE2LCAnc2VnQ291bnQnKSxcbiAgICByZXNlcnZlZFBhZDogICAgICBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiksICAgICAgIC8vIFRoaXMgdmFsdWUgc2hvdWxkIGJlIHplcm9cbiAgICBzdGFydENvZGU6ICAgICAgICBuZXcgci5MYXp5QXJyYXkoci51aW50MTYsICdzZWdDb3VudCcpLFxuICAgIGlkRGVsdGE6ICAgICAgICAgIG5ldyByLkxhenlBcnJheShyLmludDE2LCAnc2VnQ291bnQnKSxcbiAgICBpZFJhbmdlT2Zmc2V0OiAgICBuZXcgci5MYXp5QXJyYXkoci51aW50MTYsICdzZWdDb3VudCcpLFxuICAgIGdseXBoSW5kZXhBcnJheTogIG5ldyByLkxhenlBcnJheShyLnVpbnQxNiwgdCA9PiAodC5sZW5ndGggLSB0Ll9jdXJyZW50T2Zmc2V0KSAvIDIpXG4gIH0sXG5cbiAgNjogeyAvLyBUcmltbWVkIHRhYmxlXG4gICAgbGVuZ3RoOiAgICAgICAgIHIudWludDE2LFxuICAgIGxhbmd1YWdlOiAgICAgICByLnVpbnQxNixcbiAgICBmaXJzdENvZGU6ICAgICAgci51aW50MTYsXG4gICAgZW50cnlDb3VudDogICAgIHIudWludDE2LFxuICAgIGdseXBoSW5kaWNlczogICBuZXcgci5MYXp5QXJyYXkoci51aW50MTYsICdlbnRyeUNvdW50JylcbiAgfSxcblxuICA4OiB7IC8vIG1peGVkIDE2LWJpdCBhbmQgMzItYml0IGNvdmVyYWdlXG4gICAgcmVzZXJ2ZWQ6IG5ldyByLlJlc2VydmVkKHIudWludDE2KSxcbiAgICBsZW5ndGg6ICAgci51aW50MzIsXG4gICAgbGFuZ3VhZ2U6IHIudWludDE2LFxuICAgIGlzMzI6ICAgICBuZXcgci5MYXp5QXJyYXkoci51aW50OCwgODE5MiksXG4gICAgbkdyb3VwczogIHIudWludDMyLFxuICAgIGdyb3VwczogICBuZXcgci5MYXp5QXJyYXkoQ21hcEdyb3VwLCAnbkdyb3VwcycpXG4gIH0sXG5cbiAgMTA6IHsgLy8gVHJpbW1lZCBBcnJheVxuICAgIHJlc2VydmVkOiAgICAgICBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiksXG4gICAgbGVuZ3RoOiAgICAgICAgIHIudWludDMyLFxuICAgIGxhbmd1YWdlOiAgICAgICByLnVpbnQzMixcbiAgICBmaXJzdENvZGU6ICAgICAgci51aW50MzIsXG4gICAgZW50cnlDb3VudDogICAgIHIudWludDMyLFxuICAgIGdseXBoSW5kaWNlczogICBuZXcgci5MYXp5QXJyYXkoci51aW50MTYsICdudW1DaGFycycpXG4gIH0sXG5cbiAgMTI6IHsgLy8gU2VnbWVudGVkIGNvdmVyYWdlXG4gICAgcmVzZXJ2ZWQ6IG5ldyByLlJlc2VydmVkKHIudWludDE2KSxcbiAgICBsZW5ndGg6ICAgci51aW50MzIsXG4gICAgbGFuZ3VhZ2U6IHIudWludDMyLFxuICAgIG5Hcm91cHM6ICByLnVpbnQzMixcbiAgICBncm91cHM6ICAgbmV3IHIuTGF6eUFycmF5KENtYXBHcm91cCwgJ25Hcm91cHMnKVxuICB9LFxuXG4gIDEzOiB7IC8vIE1hbnktdG8tb25lIHJhbmdlIG1hcHBpbmdzIChzYW1lIGFzIDEyIGV4Y2VwdCBmb3IgZ3JvdXAuc3RhcnRHbHlwaElEKVxuICAgIHJlc2VydmVkOiBuZXcgci5SZXNlcnZlZChyLnVpbnQxNiksXG4gICAgbGVuZ3RoOiAgIHIudWludDMyLFxuICAgIGxhbmd1YWdlOiByLnVpbnQzMixcbiAgICBuR3JvdXBzOiAgci51aW50MzIsXG4gICAgZ3JvdXBzOiAgIG5ldyByLkxhenlBcnJheShDbWFwR3JvdXAsICduR3JvdXBzJylcbiAgfSxcblxuICAxNDogeyAvLyBVbmljb2RlIFZhcmlhdGlvbiBTZXF1ZW5jZXNcbiAgICBsZW5ndGg6ICAgICAgIHIudWludDMyLFxuICAgIG51bVJlY29yZHM6ICAgci51aW50MzIsXG4gICAgdmFyU2VsZWN0b3JzOiBuZXcgci5MYXp5QXJyYXkoVmFyU2VsZWN0b3JSZWNvcmQsICdudW1SZWNvcmRzJylcbiAgfVxufSk7XG5cbmxldCBDbWFwRW50cnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICBwbGF0Zm9ybUlEOiAgci51aW50MTYsICAvLyBQbGF0Zm9ybSBpZGVudGlmaWVyXG4gIGVuY29kaW5nSUQ6ICByLnVpbnQxNiwgIC8vIFBsYXRmb3JtLXNwZWNpZmljIGVuY29kaW5nIGlkZW50aWZpZXJcbiAgdGFibGU6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MzIsIENtYXBTdWJ0YWJsZSwge3R5cGU6ICdwYXJlbnQnLCBsYXp5OiB0cnVlfSlcbn0pO1xuXG4vLyBjaGFyYWN0ZXIgdG8gZ2x5cGggbWFwcGluZ1xuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogICAgICByLnVpbnQxNixcbiAgbnVtU3VidGFibGVzOiByLnVpbnQxNixcbiAgdGFibGVzOiAgICAgICBuZXcgci5BcnJheShDbWFwRW50cnksICdudW1TdWJ0YWJsZXMnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIGZvbnQgaGVhZGVyXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgICAgICAgIHIuaW50MzIsICAgICAgICAgICAgICAgICAgIC8vIDB4MDAwMTAwMDAgKHZlcnNpb24gMS4wKVxuICByZXZpc2lvbjogICAgICAgICAgIHIuaW50MzIsICAgICAgICAgICAgICAgICAgIC8vIHNldCBieSBmb250IG1hbnVmYWN0dXJlclxuICBjaGVja1N1bUFkanVzdG1lbnQ6IHIudWludDMyLFxuICBtYWdpY051bWJlcjogICAgICAgIHIudWludDMyLCAgICAgICAgICAgICAgICAgIC8vIHNldCB0byAweDVGMEYzQ0Y1XG4gIGZsYWdzOiAgICAgICAgICAgICAgci51aW50MTYsXG4gIHVuaXRzUGVyRW06ICAgICAgICAgci51aW50MTYsICAgICAgICAgICAgICAgICAgLy8gcmFuZ2UgZnJvbSA2NCB0byAxNjM4NFxuICBjcmVhdGVkOiAgICAgICAgICAgIG5ldyByLkFycmF5KHIuaW50MzIsIDIpLFxuICBtb2RpZmllZDogICAgICAgICAgIG5ldyByLkFycmF5KHIuaW50MzIsIDIpLFxuICB4TWluOiAgICAgICAgICAgICAgIHIuaW50MTYsICAgICAgICAgICAgICAgICAgIC8vIGZvciBhbGwgZ2x5cGggYm91bmRpbmcgYm94ZXNcbiAgeU1pbjogICAgICAgICAgICAgICByLmludDE2LCAgICAgICAgICAgICAgICAgICAvLyBmb3IgYWxsIGdseXBoIGJvdW5kaW5nIGJveGVzXG4gIHhNYXg6ICAgICAgICAgICAgICAgci5pbnQxNiwgICAgICAgICAgICAgICAgICAgLy8gZm9yIGFsbCBnbHlwaCBib3VuZGluZyBib3hlc1xuICB5TWF4OiAgICAgICAgICAgICAgIHIuaW50MTYsICAgICAgICAgICAgICAgICAgIC8vIGZvciBhbGwgZ2x5cGggYm91bmRpbmcgYm94ZXNcbiAgbWFjU3R5bGU6ICAgICAgICAgICBuZXcgci5CaXRmaWVsZChyLnVpbnQxNiwgW1xuICAgICdib2xkJywgJ2l0YWxpYycsICd1bmRlcmxpbmUnLCAnb3V0bGluZScsXG4gICAgJ3NoYWRvdycsICdjb25kZW5zZWQnLCAnZXh0ZW5kZWQnXG4gIF0pLFxuICBsb3dlc3RSZWNQUEVNOiAgICAgIHIudWludDE2LCAgICAgICAgICAgICAgICAgIC8vIHNtYWxsZXN0IHJlYWRhYmxlIHNpemUgaW4gcGl4ZWxzXG4gIGZvbnREaXJlY3Rpb25IaW50OiAgci5pbnQxNixcbiAgaW5kZXhUb0xvY0Zvcm1hdDogICByLmludDE2LCAgICAgICAgICAgICAgICAgICAvLyAwIGZvciBzaG9ydCBvZmZzZXRzLCAxIGZvciBsb25nXG4gIGdseXBoRGF0YUZvcm1hdDogICAgci5pbnQxNiAgICAgICAgICAgICAgICAgICAgLy8gMCBmb3IgY3VycmVudCBmb3JtYXRcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBob3Jpem9udGFsIGhlYWRlclxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogICAgICAgICAgICAgIHIuaW50MzIsXG4gIGFzY2VudDogICAgICAgICAgICAgICByLmludDE2LCAgIC8vIERpc3RhbmNlIGZyb20gYmFzZWxpbmUgb2YgaGlnaGVzdCBhc2NlbmRlclxuICBkZXNjZW50OiAgICAgICAgICAgICAgci5pbnQxNiwgICAvLyBEaXN0YW5jZSBmcm9tIGJhc2VsaW5lIG9mIGxvd2VzdCBkZXNjZW5kZXJcbiAgbGluZUdhcDogICAgICAgICAgICAgIHIuaW50MTYsICAgLy8gVHlwb2dyYXBoaWMgbGluZSBnYXBcbiAgYWR2YW5jZVdpZHRoTWF4OiAgICAgIHIudWludDE2LCAgLy8gTWF4aW11bSBhZHZhbmNlIHdpZHRoIHZhbHVlIGluICdobXR4JyB0YWJsZVxuICBtaW5MZWZ0U2lkZUJlYXJpbmc6ICAgci5pbnQxNiwgICAvLyBNYXhpbXVtIGFkdmFuY2Ugd2lkdGggdmFsdWUgaW4gJ2htdHgnIHRhYmxlXG4gIG1pblJpZ2h0U2lkZUJlYXJpbmc6ICByLmludDE2LCAgIC8vIE1pbmltdW0gcmlnaHQgc2lkZWJlYXJpbmcgdmFsdWVcbiAgeE1heEV4dGVudDogICAgICAgICAgIHIuaW50MTYsXG4gIGNhcmV0U2xvcGVSaXNlOiAgICAgICByLmludDE2LCAgIC8vIFVzZWQgdG8gY2FsY3VsYXRlIHRoZSBzbG9wZSBvZiB0aGUgY3Vyc29yIChyaXNlL3J1bik7IDEgZm9yIHZlcnRpY2FsXG4gIGNhcmV0U2xvcGVSdW46ICAgICAgICByLmludDE2LCAgIC8vIDAgZm9yIHZlcnRpY2FsXG4gIGNhcmV0T2Zmc2V0OiAgICAgICAgICByLmludDE2LCAgIC8vIFNldCB0byAwIGZvciBub24tc2xhbnRlZCBmb250c1xuICByZXNlcnZlZDogICAgICAgICAgICAgbmV3IHIuUmVzZXJ2ZWQoci5pbnQxNiwgNCksXG4gIG1ldHJpY0RhdGFGb3JtYXQ6ICAgICByLmludDE2LCAgIC8vIDAgZm9yIGN1cnJlbnQgZm9ybWF0XG4gIG51bWJlck9mTWV0cmljczogICAgICByLnVpbnQxNiAgIC8vIE51bWJlciBvZiBhZHZhbmNlIHdpZHRocyBpbiAnaG10eCcgdGFibGVcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgSG10eEVudHJ5ID0gbmV3IHIuU3RydWN0KHtcbiAgYWR2YW5jZTogci51aW50MTYsXG4gIGJlYXJpbmc6IHIuaW50MTZcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICBtZXRyaWNzOiAgICBuZXcgci5MYXp5QXJyYXkoSG10eEVudHJ5LCB0ID0+IHQucGFyZW50LmhoZWEubnVtYmVyT2ZNZXRyaWNzKSxcbiAgYmVhcmluZ3M6ICAgbmV3IHIuTGF6eUFycmF5KHIuaW50MTYsIHQgPT4gdC5wYXJlbnQubWF4cC5udW1HbHlwaHMgLSB0LnBhcmVudC5oaGVhLm51bWJlck9mTWV0cmljcylcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBtYXhpdW11bSBwcm9maWxlXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgICAgICAgICAgICByLmludDMyLFxuICBudW1HbHlwaHM6ICAgICAgICAgICAgICByLnVpbnQxNiwgIC8vIFRoZSBudW1iZXIgb2YgZ2x5cGhzIGluIHRoZSBmb250XG4gIG1heFBvaW50czogICAgICAgICAgICAgIHIudWludDE2LCAgLy8gTWF4aW11bSBwb2ludHMgaW4gYSBub24tY29tcG9zaXRlIGdseXBoXG4gIG1heENvbnRvdXJzOiAgICAgICAgICAgIHIudWludDE2LCAgLy8gTWF4aW11bSBjb250b3VycyBpbiBhIG5vbi1jb21wb3NpdGUgZ2x5cGhcbiAgbWF4Q29tcG9uZW50UG9pbnRzOiAgICAgci51aW50MTYsICAvLyBNYXhpbXVtIHBvaW50cyBpbiBhIGNvbXBvc2l0ZSBnbHlwaFxuICBtYXhDb21wb25lbnRDb250b3VyczogICByLnVpbnQxNiwgIC8vIE1heGltdW0gY29udG91cnMgaW4gYSBjb21wb3NpdGUgZ2x5cGhcbiAgbWF4Wm9uZXM6ICAgICAgICAgICAgICAgci51aW50MTYsICAvLyAxIGlmIGluc3RydWN0aW9ucyBkbyBub3QgdXNlIHRoZSB0d2lsaWdodCB6b25lLCAyIG90aGVyd2lzZVxuICBtYXhUd2lsaWdodFBvaW50czogICAgICByLnVpbnQxNiwgIC8vIE1heGltdW0gcG9pbnRzIHVzZWQgaW4gWjBcbiAgbWF4U3RvcmFnZTogICAgICAgICAgICAgci51aW50MTYsICAvLyBOdW1iZXIgb2YgU3RvcmFnZSBBcmVhIGxvY2F0aW9uc1xuICBtYXhGdW5jdGlvbkRlZnM6ICAgICAgICByLnVpbnQxNiwgIC8vIE51bWJlciBvZiBGREVGc1xuICBtYXhJbnN0cnVjdGlvbkRlZnM6ICAgICByLnVpbnQxNiwgIC8vIE51bWJlciBvZiBJREVGc1xuICBtYXhTdGFja0VsZW1lbnRzOiAgICAgICByLnVpbnQxNiwgIC8vIE1heGltdW0gc3RhY2sgZGVwdGhcbiAgbWF4U2l6ZU9mSW5zdHJ1Y3Rpb25zOiAgci51aW50MTYsICAvLyBNYXhpbXVtIGJ5dGUgY291bnQgZm9yIGdseXBoIGluc3RydWN0aW9uc1xuICBtYXhDb21wb25lbnRFbGVtZW50czogICByLnVpbnQxNiwgIC8vIE1heGltdW0gbnVtYmVyIG9mIGNvbXBvbmVudHMgcmVmZXJlbmNlZCBhdCDigJx0b3AgbGV2ZWzigJ0gZm9yIGFueSBjb21wb3NpdGUgZ2x5cGhcbiAgbWF4Q29tcG9uZW50RGVwdGg6ICAgICAgci51aW50MTYgICAvLyBNYXhpbXVtIGxldmVscyBvZiByZWN1cnNpb247IDEgZm9yIHNpbXBsZSBjb21wb25lbnRzXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7Z2V0RW5jb2RpbmcsIExBTkdVQUdFU30gZnJvbSAnLi4vZW5jb2RpbmdzJztcblxubGV0IE5hbWVSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBwbGF0Zm9ybUlEOiByLnVpbnQxNixcbiAgZW5jb2RpbmdJRDogci51aW50MTYsXG4gIGxhbmd1YWdlSUQ6IHIudWludDE2LFxuICBuYW1lSUQ6ICAgICByLnVpbnQxNixcbiAgbGVuZ3RoOiAgICAgci51aW50MTYsXG4gIHN0cmluZzogICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsXG4gICAgbmV3IHIuU3RyaW5nKCdsZW5ndGgnLCB0ID0+IGdldEVuY29kaW5nKHQucGxhdGZvcm1JRCwgdC5lbmNvZGluZ0lELCB0Lmxhbmd1YWdlSUQpKSxcbiAgICB7IHR5cGU6ICdwYXJlbnQnLCByZWxhdGl2ZVRvOiBjdHggPT4gY3R4LnBhcmVudC5zdHJpbmdPZmZzZXQsIGFsbG93TnVsbDogZmFsc2UgfVxuICApXG59KTtcblxubGV0IExhbmdUYWdSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBsZW5ndGg6ICByLnVpbnQxNixcbiAgdGFnOiAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgbmV3IHIuU3RyaW5nKCdsZW5ndGgnLCAndXRmMTZiZScpLCB7dHlwZTogJ3BhcmVudCcsIHJlbGF0aXZlVG86IGN0eCA9PiBjdHguc3RyaW5nT2Zmc2V0fSlcbn0pO1xuXG52YXIgTmFtZVRhYmxlID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIDA6IHtcbiAgICBjb3VudDogICAgICAgICAgci51aW50MTYsXG4gICAgc3RyaW5nT2Zmc2V0OiAgIHIudWludDE2LFxuICAgIHJlY29yZHM6ICAgICAgICBuZXcgci5BcnJheShOYW1lUmVjb3JkLCAnY291bnQnKVxuICB9LFxuICAxOiB7XG4gICAgY291bnQ6ICAgICAgICAgIHIudWludDE2LFxuICAgIHN0cmluZ09mZnNldDogICByLnVpbnQxNixcbiAgICByZWNvcmRzOiAgICAgICAgbmV3IHIuQXJyYXkoTmFtZVJlY29yZCwgJ2NvdW50JyksXG4gICAgbGFuZ1RhZ0NvdW50OiAgIHIudWludDE2LFxuICAgIGxhbmdUYWdzOiAgICAgICBuZXcgci5BcnJheShMYW5nVGFnUmVjb3JkLCAnbGFuZ1RhZ0NvdW50JylcbiAgfVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IE5hbWVUYWJsZTtcblxuY29uc3QgTkFNRVMgPSBbXG4gICdjb3B5cmlnaHQnLFxuICAnZm9udEZhbWlseScsXG4gICdmb250U3ViZmFtaWx5JyxcbiAgJ3VuaXF1ZVN1YmZhbWlseScsXG4gICdmdWxsTmFtZScsXG4gICd2ZXJzaW9uJyxcbiAgJ3Bvc3RzY3JpcHROYW1lJywgLy8gTm90ZTogQSBmb250IG1heSBoYXZlIG9ubHkgb25lIFBvc3RTY3JpcHQgbmFtZSBhbmQgdGhhdCBuYW1lIG11c3QgYmUgQVNDSUkuXG4gICd0cmFkZW1hcmsnLFxuICAnbWFudWZhY3R1cmVyJyxcbiAgJ2Rlc2lnbmVyJyxcbiAgJ2Rlc2NyaXB0aW9uJyxcbiAgJ3ZlbmRvclVSTCcsXG4gICdkZXNpZ25lclVSTCcsXG4gICdsaWNlbnNlJyxcbiAgJ2xpY2Vuc2VVUkwnLFxuICBudWxsLCAvLyByZXNlcnZlZFxuICAncHJlZmVycmVkRmFtaWx5JyxcbiAgJ3ByZWZlcnJlZFN1YmZhbWlseScsXG4gICdjb21wYXRpYmxlRnVsbCcsXG4gICdzYW1wbGVUZXh0JyxcbiAgJ3Bvc3RzY3JpcHRDSURGb250TmFtZScsXG4gICd3d3NGYW1pbHlOYW1lJyxcbiAgJ3d3c1N1YmZhbWlseU5hbWUnXG5dO1xuXG5OYW1lVGFibGUucHJvY2VzcyA9IGZ1bmN0aW9uKHN0cmVhbSkge1xuICB2YXIgcmVjb3JkcyA9IHt9O1xuICBmb3IgKGxldCByZWNvcmQgb2YgdGhpcy5yZWNvcmRzKSB7XG4gICAgLy8gZmluZCBvdXQgd2hhdCBsYW5ndWFnZSB0aGlzIGlzIGZvclxuICAgIGxldCBsYW5ndWFnZSA9IExBTkdVQUdFU1tyZWNvcmQucGxhdGZvcm1JRF1bcmVjb3JkLmxhbmd1YWdlSURdO1xuXG4gICAgaWYgKGxhbmd1YWdlID09IG51bGwgJiYgdGhpcy5sYW5nVGFncyAhPSBudWxsICYmIHJlY29yZC5sYW5ndWFnZUlEID49IDB4ODAwMCkge1xuICAgICAgbGFuZ3VhZ2UgPSB0aGlzLmxhbmdUYWdzW3JlY29yZC5sYW5ndWFnZUlEIC0gMHg4MDAwXS50YWc7XG4gICAgfVxuXG4gICAgaWYgKGxhbmd1YWdlID09IG51bGwpIHtcbiAgICAgIGxhbmd1YWdlID0gcmVjb3JkLnBsYXRmb3JtSUQgKyAnLScgKyByZWNvcmQubGFuZ3VhZ2VJRDtcbiAgICB9XG5cbiAgICAvLyBpZiB0aGUgbmFtZUlEIGlzID49IDI1NiwgaXQgaXMgYSBmb250IGZlYXR1cmUgcmVjb3JkIChBQVQpXG4gICAgbGV0IGtleSA9IHJlY29yZC5uYW1lSUQgPj0gMjU2ID8gJ2ZvbnRGZWF0dXJlcycgOiAoTkFNRVNbcmVjb3JkLm5hbWVJRF0gfHwgcmVjb3JkLm5hbWVJRCk7XG4gICAgaWYgKHJlY29yZHNba2V5XSA9PSBudWxsKSB7XG4gICAgICByZWNvcmRzW2tleV0gPSB7fTtcbiAgICB9XG5cbiAgICBsZXQgb2JqID0gcmVjb3Jkc1trZXldO1xuICAgIGlmIChyZWNvcmQubmFtZUlEID49IDI1Nikge1xuICAgICAgb2JqID0gb2JqW3JlY29yZC5uYW1lSURdIHx8IChvYmpbcmVjb3JkLm5hbWVJRF0gPSB7fSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiByZWNvcmQuc3RyaW5nID09PSAnc3RyaW5nJyB8fCB0eXBlb2Ygb2JqW2xhbmd1YWdlXSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIG9ialtsYW5ndWFnZV0gPSByZWNvcmQuc3RyaW5nO1xuICAgIH1cbiAgfVxuXG4gIHRoaXMucmVjb3JkcyA9IHJlY29yZHM7XG59O1xuXG5OYW1lVGFibGUucHJlRW5jb2RlID0gZnVuY3Rpb24oKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHRoaXMucmVjb3JkcykpIHJldHVybjtcbiAgdGhpcy52ZXJzaW9uID0gMDtcblxuICBsZXQgcmVjb3JkcyA9IFtdO1xuICBmb3IgKGxldCBrZXkgaW4gdGhpcy5yZWNvcmRzKSB7XG4gICAgbGV0IHZhbCA9IHRoaXMucmVjb3Jkc1trZXldO1xuICAgIGlmIChrZXkgPT09ICdmb250RmVhdHVyZXMnKSBjb250aW51ZTtcblxuICAgIHJlY29yZHMucHVzaCh7XG4gICAgICBwbGF0Zm9ybUlEOiAzLFxuICAgICAgZW5jb2RpbmdJRDogMSxcbiAgICAgIGxhbmd1YWdlSUQ6IDB4NDA5LFxuICAgICAgbmFtZUlEOiBOQU1FUy5pbmRleE9mKGtleSksXG4gICAgICBsZW5ndGg6IHZhbC5lbi5sZW5ndGggKiAyLFxuICAgICAgc3RyaW5nOiB2YWwuZW5cbiAgICB9KTtcblxuICAgIGlmIChrZXkgPT09ICdwb3N0c2NyaXB0TmFtZScpIHtcbiAgICAgIHJlY29yZHMucHVzaCh7XG4gICAgICAgIHBsYXRmb3JtSUQ6IDEsXG4gICAgICAgIGVuY29kaW5nSUQ6IDAsXG4gICAgICAgIGxhbmd1YWdlSUQ6IDAsXG4gICAgICAgIG5hbWVJRDogTkFNRVMuaW5kZXhPZihrZXkpLFxuICAgICAgICBsZW5ndGg6IHZhbC5lbi5sZW5ndGgsXG4gICAgICAgIHN0cmluZzogdmFsLmVuXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICB0aGlzLnJlY29yZHMgPSByZWNvcmRzO1xuICB0aGlzLmNvdW50ID0gcmVjb3Jkcy5sZW5ndGg7XG4gIHRoaXMuc3RyaW5nT2Zmc2V0ID0gTmFtZVRhYmxlLnNpemUodGhpcywgbnVsbCwgZmFsc2UpO1xufTtcbiIsICIvKipcbiAqIEdldHMgYW4gZW5jb2RpbmcgbmFtZSBmcm9tIHBsYXRmb3JtLCBlbmNvZGluZywgYW5kIGxhbmd1YWdlIGlkcy5cbiAqIFJldHVybmVkIGVuY29kaW5nIG5hbWVzIGNhbiBiZSB1c2VkIGluIGljb252LWxpdGUgdG8gZGVjb2RlIHRleHQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbmNvZGluZyhwbGF0Zm9ybUlELCBlbmNvZGluZ0lELCBsYW5ndWFnZUlEID0gMCkge1xuICBpZiAocGxhdGZvcm1JRCA9PT0gMSAmJiBNQUNfTEFOR1VBR0VfRU5DT0RJTkdTW2xhbmd1YWdlSURdKSB7XG4gICAgcmV0dXJuIE1BQ19MQU5HVUFHRV9FTkNPRElOR1NbbGFuZ3VhZ2VJRF07XG4gIH1cbiAgXG4gIHJldHVybiBFTkNPRElOR1NbcGxhdGZvcm1JRF1bZW5jb2RpbmdJRF07XG59XG5cbmNvbnN0IFNJTkdMRV9CWVRFX0VOQ09ESU5HUyA9IG5ldyBTZXQoWyd4LW1hYy1yb21hbicsICd4LW1hYy1jeXJpbGxpYycsICdpc28tODg1OS02JywgJ2lzby04ODU5LTgnXSk7XG5jb25zdCBNQUNfRU5DT0RJTkdTID0ge1xuICAneC1tYWMtY3JvYXRpYW4nOiAnw4TDhcOHw4nDkcOWw5zDocOgw6LDpMOjw6XDp8Opw6jDqsOrw63DrMOuw6/DscOzw7LDtMO2w7XDusO5w7vDvOKAoMKwwqLCo8Kn4oCiwrbDn8KuxaDihKLCtMKo4omgxb3DmOKInsKx4omk4oml4oiGwrXiiILiiJHiiI/FoeKIq8KqwrrOqcW+w7jCv8KhwqziiJrGkuKJiMSGwqvEjOKApiDDgMODw5XFksWTxJDigJTigJzigJ3igJjigJnDt+KXiu+jv8Kp4oGE4oKs4oC54oC6w4bCu+KAk8K34oCa4oCe4oCww4LEh8OBxI3DiMONw47Dj8OMw5PDlMSRw5LDmsObw5nEscuGy5zCr8+Aw4vLmsK4w4rDpsuHJyxcbiAgJ3gtbWFjLWdhZWxpYyc6ICfDhMOFw4fDicORw5bDnMOhw6DDosOkw6PDpcOnw6nDqMOqw6vDrcOsw67Dr8Oxw7PDssO0w7bDtcO6w7nDu8O84oCgwrDCosKjwqfigKLCtsOfwq7CqeKEosK0wqjiiaDDhsOY4biCwrHiiaTiiaXhuIPEisSL4biK4biL4bie4bifxKDEoeG5gMOmw7jhuYHhuZbhuZfJvMaSxb/huaDCq8K74oCmIMOAw4PDlcWSxZPigJPigJTigJzigJ3igJjigJnhuaHhupvDv8W44bmq4oKs4oC54oC6xbbFt+G5q8K34buy4buz4oGKw4LDisOBw4vDiMONw47Dj8OMw5PDlOKZo8OSw5rDm8OZxLHDncO9xbTFteG6hOG6heG6gOG6geG6guG6gycsXG4gICd4LW1hYy1ncmVlayc6ICfDhMK5wrLDicKzw5bDnM6Fw6DDosOkzoTCqMOnw6nDqMOqw6vCo+KEosOuw6/igKLCveKAsMO0w7bCpuKCrMO5w7vDvOKAoM6TzpTOmM6bzp7OoMOfwq7Cqc6jzqrCp+KJoMKwwrfOkcKx4omk4omlwqXOks6VzpbOl86ZzprOnM6mzqvOqM6pzqzOncKszp/OoeKJiM6kwqvCu+KApiDOpc6nzobOiMWT4oCT4oCV4oCc4oCd4oCY4oCZw7fOic6KzozOjs6tzq7Or8+Mzo/Pjc6xzrLPiM60zrXPhs6zzrfOuc6+zrrOu868zr3Ov8+Az47Pgc+Dz4TOuM+Jz4LPh8+FzrbPis+LzpDOsFxcdTAwQUQnLFxuICAneC1tYWMtaWNlbGFuZGljJzogJ8OEw4XDh8OJw5HDlsOcw6HDoMOiw6TDo8Olw6fDqcOow6rDq8Otw6zDrsOvw7HDs8Oyw7TDtsO1w7rDucO7w7zDncKwwqLCo8Kn4oCiwrbDn8KuwqnihKLCtMKo4omgw4bDmOKInsKx4omk4omlwqXCteKIguKIkeKIj8+A4oirwqrCus6pw6bDuMK/wqHCrOKImsaS4omI4oiGwqvCu+KApiDDgMODw5XFksWT4oCT4oCU4oCc4oCd4oCY4oCZw7fil4rDv8W44oGE4oKsw5DDsMOew77DvcK34oCa4oCe4oCww4LDisOBw4vDiMONw47Dj8OMw5PDlO+jv8OSw5rDm8OZxLHLhsucwq/LmMuZy5rCuMudy5vLhycsXG4gICd4LW1hYy1pbnVpdCc6ICfhkIPhkIThkIXhkIbhkIrhkIvhkLHhkLLhkLPhkLThkLjhkLnhkYnhkY7hkY/hkZDhkZHhkZXhkZbhkabhka3hka7hka/hkbDhkbLhkbPhkoPhkovhkozhko3hko7hkpDhkpHCsOGSoeGSpeGSpuKAosK24ZKnwq7CqeKEouGSqOGSquGSq+GSu+GTguGTg+GThOGTheGTh+GTiOGTkOGTr+GTsOGTseGTsuGTtOGTteGUheGTleGTluGTl+GTmOGTmuGTm+GTquGUqOGUqeGUquGUq+GUreKApiDhlK7hlL7hlZXhlZbhlZfigJPigJTigJzigJ3igJjigJnhlZjhlZnhlZrhlZ3hlYbhlYfhlYjhlYnhlYvhlYzhlZDhlb/hloDhloHhloLhloPhloThloXhlo/hlpDhlpHhlpLhlpPhlpThlpXhmbHhmbLhmbPhmbThmbXhmbbhlpbhlqDhlqHhlqLhlqPhlqThlqXhlqbhlbzFgcWCJyxcbiAgJ3gtbWFjLWNlJzogJ8OExIDEgcOJxITDlsOcw6HEhcSMw6TEjcSGxIfDqcW5xbrEjsOtxI/EksSTxJbDs8SXw7TDtsO1w7rEmsSbw7zigKDCsMSYwqPCp+KAosK2w5/CrsKp4oSixJnCqOKJoMSjxK7Er8Sq4omk4omlxKvEtuKIguKIkcWCxLvEvMS9xL7EucS6xYXFhsWDwqziiJrFhMWH4oiGwqvCu+KApiDFiMWQw5XFkcWM4oCT4oCU4oCc4oCd4oCY4oCZw7fil4rFjcWUxZXFmOKAueKAusWZxZbFl8Wg4oCa4oCexaHFmsWbw4HFpMWlw43FvcW+xarDk8OUxavFrsOaxa/FsMWxxbLFs8Odw73Et8W7xYHFvMSiy4cnLFxuICAneC1tYWMtcm9tYW5pYW4nOiAnw4TDhcOHw4nDkcOWw5zDocOgw6LDpMOjw6XDp8Opw6jDqsOrw63DrMOuw6/DscOzw7LDtMO2w7XDusO5w7vDvOKAoMKwwqLCo8Kn4oCiwrbDn8KuwqnihKLCtMKo4omgxILImOKInsKx4omk4omlwqXCteKIguKIkeKIj8+A4oirwqrCus6pxIPImcK/wqHCrOKImsaS4omI4oiGwqvCu+KApiDDgMODw5XFksWT4oCT4oCU4oCc4oCd4oCY4oCZw7fil4rDv8W44oGE4oKs4oC54oC6yJrIm+KAocK34oCa4oCe4oCww4LDisOBw4vDiMONw47Dj8OMw5PDlO+jv8OSw5rDm8OZxLHLhsucwq/LmMuZy5rCuMudy5vLhycsXG4gICd4LW1hYy10dXJraXNoJzogJ8OEw4XDh8OJw5HDlsOcw6HDoMOiw6TDo8Olw6fDqcOow6rDq8Otw6zDrsOvw7HDs8Oyw7TDtsO1w7rDucO7w7zigKDCsMKiwqPCp+KAosK2w5/CrsKp4oSiwrTCqOKJoMOGw5jiiJ7CseKJpOKJpcKlwrXiiILiiJHiiI/PgOKIq8KqwrrOqcOmw7jCv8KhwqziiJrGkuKJiOKIhsKrwrvigKYgw4DDg8OVxZLFk+KAk+KAlOKAnOKAneKAmOKAmcO34peKw7/FuMSexJ/EsMSxxZ7Fn+KAocK34oCa4oCe4oCww4LDisOBw4vDiMONw47Dj8OMw5PDlO+jv8OSw5rDm8OZ76Kgy4bLnMKvy5jLmcuawrjLncuby4cnXG59O1xuXG5jb25zdCBlbmNvZGluZ0NhY2hlID0gbmV3IE1hcCgpO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RW5jb2RpbmdNYXBwaW5nKGVuY29kaW5nKSB7XG4gIGxldCBjYWNoZWQgPSBlbmNvZGluZ0NhY2hlLmdldChlbmNvZGluZyk7XG4gIGlmIChjYWNoZWQpIHtcbiAgICByZXR1cm4gY2FjaGVkO1xuICB9XG5cbiAgLy8gVGhlc2UgZW5jb2RpbmdzIGFyZW4ndCBzdXBwb3J0ZWQgYnkgVGV4dERlY29kZXIuXG4gIGxldCBtYXBwaW5nID0gTUFDX0VOQ09ESU5HU1tlbmNvZGluZ107XG4gIGlmIChtYXBwaW5nKSB7XG4gICAgbGV0IHJlcyA9IG5ldyBNYXAoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1hcHBpbmcubGVuZ3RoOyBpKyspIHtcbiAgICAgIHJlcy5zZXQobWFwcGluZy5jaGFyQ29kZUF0KGkpLCAweDgwICsgaSk7XG4gICAgfVxuXG4gICAgZW5jb2RpbmdDYWNoZS5zZXQoZW5jb2RpbmcsIHJlcyk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIC8vIE9ubHkgc2luZ2xlIGJ5dGUgZW5jb2RpbmdzIGNhbiBiZSBtYXBwZWQgMToxLlxuICBpZiAoU0lOR0xFX0JZVEVfRU5DT0RJTkdTLmhhcyhlbmNvZGluZykpIHtcbiAgICAvLyBUZXh0RW5jb2RlciBvbmx5IHN1cHBvcnRzIHV0ZjgsIHdoZXJlYXMgVGV4dERlY29kZXIgc3VwcG9ydHMgbGVnYWN5IGVuY29kaW5ncy5cbiAgICAvLyBVc2UgdGhpcyB0byBjcmVhdGUgYSBtYXBwaW5nIG9mIGNvZGUgcG9pbnRzLlxuICAgIGxldCBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKGVuY29kaW5nKTtcbiAgICBsZXQgbWFwcGluZyA9IG5ldyBVaW50OEFycmF5KDB4ODApO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMHg4MDsgaSsrKSB7XG4gICAgICBtYXBwaW5nW2ldID0gMHg4MCArIGk7XG4gICAgfVxuXG4gICAgbGV0IHJlcyA9IG5ldyBNYXAoKTtcbiAgICBsZXQgcyA9IGRlY29kZXIuZGVjb2RlKG1hcHBpbmcpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMHg4MDsgaSsrKSB7XG4gICAgICByZXMuc2V0KHMuY2hhckNvZGVBdChpKSwgMHg4MCArIGkpO1xuICAgIH1cblxuICAgIGVuY29kaW5nQ2FjaGUuc2V0KGVuY29kaW5nLCByZXMpO1xuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuLy8gTWFwIG9mIHBsYXRmb3JtIGlkcyB0byBlbmNvZGluZyBpZHMuXG5leHBvcnQgY29uc3QgRU5DT0RJTkdTID0gW1xuICAvLyB1bmljb2RlXG4gIFsndXRmLTE2YmUnLCAndXRmLTE2YmUnLCAndXRmLTE2YmUnLCAndXRmLTE2YmUnLCAndXRmLTE2YmUnLCAndXRmLTE2YmUnLCAndXRmLTE2YmUnXSxcbiAgXG4gIC8vIG1hY2ludG9zaFxuICAvLyBNYXBwaW5ncyBhdmFpbGFibGUgYXQgaHR0cDovL3VuaWNvZGUub3JnL1B1YmxpYy9NQVBQSU5HUy9WRU5ET1JTL0FQUExFL1xuICAvLyAwXHRSb21hbiAgICAgICAgICAgICAgICAgMTdcdE1hbGF5YWxhbVxuICAvLyAxXHRKYXBhbmVzZVx0ICAgICAgICAgICAgMThcdFNpbmhhbGVzZVxuICAvLyAyXHRUcmFkaXRpb25hbCBDaGluZXNlXHQgIDE5XHRCdXJtZXNlXG4gIC8vIDNcdEtvcmVhblx0ICAgICAgICAgICAgICAyMFx0S2htZXJcbiAgLy8gNFx0QXJhYmljXHQgICAgICAgICAgICAgIDIxXHRUaGFpXG4gIC8vIDVcdEhlYnJld1x0ICAgICAgICAgICAgICAyMlx0TGFvdGlhblxuICAvLyA2XHRHcmVla1x0ICAgICAgICAgICAgICAgIDIzXHRHZW9yZ2lhblxuICAvLyA3XHRSdXNzaWFuXHQgICAgICAgICAgICAgIDI0XHRBcm1lbmlhblxuICAvLyA4XHRSU3ltYm9sXHQgICAgICAgICAgICAgIDI1XHRTaW1wbGlmaWVkIENoaW5lc2VcbiAgLy8gOVx0RGV2YW5hZ2FyaVx0ICAgICAgICAgIDI2XHRUaWJldGFuXG4gIC8vIDEwXHRHdXJtdWtoaVx0ICAgICAgICAgICAgMjdcdE1vbmdvbGlhblxuICAvLyAxMVx0R3VqYXJhdGlcdCAgICAgICAgICAgIDI4XHRHZWV6XG4gIC8vIDEyXHRPcml5YVx0ICAgICAgICAgICAgICAgIDI5XHRTbGF2aWNcbiAgLy8gMTNcdEJlbmdhbGlcdCAgICAgICAgICAgICAgMzBcdFZpZXRuYW1lc2VcbiAgLy8gMTRcdFRhbWlsXHQgICAgICAgICAgICAgICAgMzFcdFNpbmRoaVxuICAvLyAxNVx0VGVsdWd1XHQgICAgICAgICAgICAgIDMyXHQoVW5pbnRlcnByZXRlZClcbiAgLy8gMTZcdEthbm5hZGFcbiAgWyd4LW1hYy1yb21hbicsICdzaGlmdC1qaXMnLCAnYmlnNScsICdldWMta3InLCAnaXNvLTg4NTktNicsICdpc28tODg1OS04JyxcbiAgICd4LW1hYy1ncmVlaycsICd4LW1hYy1jeXJpbGxpYycsICd4LW1hYy1zeW1ib2wnLCAneC1tYWMtZGV2YW5hZ2FyaScsICd4LW1hYy1ndXJtdWtoaScsICd4LW1hYy1ndWphcmF0aScsXG4gICAnT3JpeWEnLCAnQmVuZ2FsaScsICdUYW1pbCcsICdUZWx1Z3UnLCAnS2FubmFkYScsICdNYWxheWFsYW0nLCAnU2luaGFsZXNlJyxcbiAgICdCdXJtZXNlJywgJ0tobWVyJywgJ2lzby04ODU5LTExJywgJ0xhb3RpYW4nLCAnR2VvcmdpYW4nLCAnQXJtZW5pYW4nLCAnZ2JrJywgXG4gICAnVGliZXRhbicsICdNb25nb2xpYW4nLCAnR2VleicsICd4LW1hYy1jZScsICdWaWV0bmFtZXNlJywgJ1NpbmRoaSddLFxuICBcbiAgLy8gSVNPIChkZXByZWNhdGVkKVxuICBbJ2FzY2lpJywgbnVsbCwgJ2lzby04ODU5LTEnXSxcbiAgXG4gIC8vIHdpbmRvd3NcbiAgLy8gRG9jcyBoZXJlOiBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvc3lzdGVtLnRleHQuZW5jb2Rpbmcodj12cy4xMTApLmFzcHhcbiAgWydzeW1ib2wnLCAndXRmLTE2YmUnLCAnc2hpZnQtamlzJywgJ2diMTgwMzAnLCAnYmlnNScsICdldWMta3InLCAnam9oYWInLCBudWxsLCBudWxsLCBudWxsLCAndXRmLTE2YmUnXVxuXTtcblxuLy8gT3ZlcnJpZGVzIGZvciBNYWMgc2NyaXB0cyBieSBsYW5ndWFnZSBpZC5cbi8vIFNlZSBodHRwOi8vdW5pY29kZS5vcmcvUHVibGljL01BUFBJTkdTL1ZFTkRPUlMvQVBQTEUvUmVhZG1lLnR4dFxuZXhwb3J0IGNvbnN0IE1BQ19MQU5HVUFHRV9FTkNPRElOR1MgPSB7XG4gIDE1OiAneC1tYWMtaWNlbGFuZGljJyxcbiAgMTc6ICd4LW1hYy10dXJraXNoJyxcbiAgMTg6ICd4LW1hYy1jcm9hdGlhbicsXG4gIDI0OiAneC1tYWMtY2UnLFxuICAyNTogJ3gtbWFjLWNlJyxcbiAgMjY6ICd4LW1hYy1jZScsXG4gIDI3OiAneC1tYWMtY2UnLFxuICAyODogJ3gtbWFjLWNlJyxcbiAgMzA6ICd4LW1hYy1pY2VsYW5kaWMnLFxuICAzNzogJ3gtbWFjLXJvbWFuaWFuJyxcbiAgMzg6ICd4LW1hYy1jZScsXG4gIDM5OiAneC1tYWMtY2UnLFxuICA0MDogJ3gtbWFjLWNlJyxcbiAgMTQzOiAneC1tYWMtaW51aXQnLFxuICAxNDY6ICd4LW1hYy1nYWVsaWMnXG59O1xuXG4vLyBNYXAgb2YgcGxhdGZvcm0gaWRzIHRvIEJDUC00NyBsYW5ndWFnZSBjb2Rlcy5cbmV4cG9ydCBjb25zdCBMQU5HVUFHRVMgPSBbXG4gIC8vIHVuaWNvZGVcbiAgW10sXG4gIFxuICB7IC8vIG1hY2ludG9zaFxuICAgIDA6ICdlbicsICAgICAgICAzMDogJ2ZvJywgICAgICAgNjA6ICdrcycsICAgICAgIDkwOiAncncnLFxuICAgIDE6ICdmcicsICAgICAgICAzMTogJ2ZhJywgICAgICAgNjE6ICdrdScsICAgICAgIDkxOiAncm4nLFxuICAgIDI6ICdkZScsICAgICAgICAzMjogJ3J1JywgICAgICAgNjI6ICdzZCcsICAgICAgIDkyOiAnbnknLFxuICAgIDM6ICdpdCcsICAgICAgICAzMzogJ3poJywgICAgICAgNjM6ICdibycsICAgICAgIDkzOiAnbWcnLFxuICAgIDQ6ICdubCcsICAgICAgICAzNDogJ25sLUJFJywgICAgNjQ6ICduZScsICAgICAgIDk0OiAnZW8nLFxuICAgIDU6ICdzdicsICAgICAgICAzNTogJ2dhJywgICAgICAgNjU6ICdzYScsICAgICAgIDEyODogJ2N5JyxcbiAgICA2OiAnZXMnLCAgICAgICAgMzY6ICdzcScsICAgICAgIDY2OiAnbXInLCAgICAgICAxMjk6ICdldScsXG4gICAgNzogJ2RhJywgICAgICAgIDM3OiAncm8nLCAgICAgICA2NzogJ2JuJywgICAgICAgMTMwOiAnY2EnLFxuICAgIDg6ICdwdCcsICAgICAgICAzODogJ2N6JywgICAgICAgNjg6ICdhcycsICAgICAgIDEzMTogJ2xhJyxcbiAgICA5OiAnbm8nLCAgICAgICAgMzk6ICdzaycsICAgICAgIDY5OiAnZ3UnLCAgICAgICAxMzI6ICdxdScsXG4gICAgMTA6ICdoZScsICAgICAgIDQwOiAnc2knLCAgICAgICA3MDogJ3BhJywgICAgICAgMTMzOiAnZ24nLFxuICAgIDExOiAnamEnLCAgICAgICA0MTogJ3lpJywgICAgICAgNzE6ICdvcicsICAgICAgIDEzNDogJ2F5JyxcbiAgICAxMjogJ2FyJywgICAgICAgNDI6ICdzcicsICAgICAgIDcyOiAnbWwnLCAgICAgICAxMzU6ICd0dCcsXG4gICAgMTM6ICdmaScsICAgICAgIDQzOiAnbWsnLCAgICAgICA3MzogJ2tuJywgICAgICAgMTM2OiAndWcnLFxuICAgIDE0OiAnZWwnLCAgICAgICA0NDogJ2JnJywgICAgICAgNzQ6ICd0YScsICAgICAgIDEzNzogJ2R6JyxcbiAgICAxNTogJ2lzJywgICAgICAgNDU6ICd1aycsICAgICAgIDc1OiAndGUnLCAgICAgICAxMzg6ICdqdicsXG4gICAgMTY6ICdtdCcsICAgICAgIDQ2OiAnYmUnLCAgICAgICA3NjogJ3NpJywgICAgICAgMTM5OiAnc3UnLFxuICAgIDE3OiAndHInLCAgICAgICA0NzogJ3V6JywgICAgICAgNzc6ICdteScsICAgICAgIDE0MDogJ2dsJyxcbiAgICAxODogJ2hyJywgICAgICAgNDg6ICdraycsICAgICAgIDc4OiAna20nLCAgICAgICAxNDE6ICdhZicsXG4gICAgMTk6ICd6aC1IYW50JywgIDQ5OiAnYXotQ3lybCcsICA3OTogJ2xvJywgICAgICAgMTQyOiAnYnInLFxuICAgIDIwOiAndXInLCAgICAgICA1MDogJ2F6LUFyYWInLCAgODA6ICd2aScsICAgICAgIDE0MzogJ2l1JyxcbiAgICAyMTogJ2hpJywgICAgICAgNTE6ICdoeScsICAgICAgIDgxOiAnaWQnLCAgICAgICAxNDQ6ICdnZCcsXG4gICAgMjI6ICd0aCcsICAgICAgIDUyOiAna2EnLCAgICAgICA4MjogJ3RsJywgICAgICAgMTQ1OiAnZ3YnLFxuICAgIDIzOiAna28nLCAgICAgICA1MzogJ21vJywgICAgICAgODM6ICdtcycsICAgICAgIDE0NjogJ2dhJyxcbiAgICAyNDogJ2x0JywgICAgICAgNTQ6ICdreScsICAgICAgIDg0OiAnbXMtQXJhYicsICAxNDc6ICd0bycsXG4gICAgMjU6ICdwbCcsICAgICAgIDU1OiAndGcnLCAgICAgICA4NTogJ2FtJywgICAgICAgMTQ4OiAnZWwtcG9seXRvbicsXG4gICAgMjY6ICdodScsICAgICAgIDU2OiAndGsnLCAgICAgICA4NjogJ3RpJywgICAgICAgMTQ5OiAna2wnLFxuICAgIDI3OiAnZXMnLCAgICAgICA1NzogJ21uLUNOJywgICAgODc6ICdvbScsICAgICAgIDE1MDogJ2F6JyxcbiAgICAyODogJ2x2JywgICAgICAgNTg6ICdtbicsICAgICAgIDg4OiAnc28nLCAgICAgICAxNTE6ICdubicsXG4gICAgMjk6ICdzZScsICAgICAgIDU5OiAncHMnLCAgICAgICA4OTogJ3N3JyxcbiAgfSxcbiAgXG4gIC8vIElTTyAoZGVwcmVjYXRlZClcbiAgW10sXG4gIFxuICB7IC8vIHdpbmRvd3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgMHgwNDM2OiAnYWYnLCAgICAgICAweDQwMDk6ICdlbi1JTicsICAgIDB4MDQ4NzogJ3J3JywgICAgICAgICAgMHgwNDMyOiAndG4nLCAgICAgICBcbiAgICAweDA0MUM6ICdzcScsICAgICAgIDB4MTgwOTogJ2VuLUlFJywgICAgMHgwNDQxOiAnc3cnLCAgICAgICAgICAweDA0NUI6ICdzaScsICAgICAgICAgIFxuICAgIDB4MDQ4NDogJ2dzdycsICAgICAgMHgyMDA5OiAnZW4tSk0nLCAgICAweDA0NTc6ICdrb2snLCAgICAgICAgIDB4MDQxQjogJ3NrJywgICAgICAgICAgXG4gICAgMHgwNDVFOiAnYW0nLCAgICAgICAweDQ0MDk6ICdlbi1NWScsICAgIDB4MDQxMjogJ2tvJywgICAgICAgICAgMHgwNDI0OiAnc2wnLCAgICAgICAgICBcbiAgICAweDE0MDE6ICdhci1EWicsICAgIDB4MTQwOTogJ2VuLU5aJywgICAgMHgwNDQwOiAna3knLCAgICAgICAgICAweDJDMEE6ICdlcy1BUicsICAgICAgIFxuICAgIDB4M0MwMTogJ2FyLUJIJywgICAgMHgzNDA5OiAnZW4tUEgnLCAgICAweDA0NTQ6ICdsbycsICAgICAgICAgIDB4NDAwQTogJ2VzLUJPJywgICAgICAgXG4gICAgMHgwQzAxOiAnYXInLCAgICAgICAweDQ4MDk6ICdlbi1TRycsICAgIDB4MDQyNjogJ2x2JywgICAgICAgICAgMHgzNDBBOiAnZXMtQ0wnLCAgICAgICBcbiAgICAweDA4MDE6ICdhci1JUScsICAgIDB4MUMwOTogJ2VuLVpBJywgICAgMHgwNDI3OiAnbHQnLCAgICAgICAgICAweDI0MEE6ICdlcy1DTycsICAgICAgIFxuICAgIDB4MkMwMTogJ2FyLUpPJywgICAgMHgyQzA5OiAnZW4tVFQnLCAgICAweDA4MkU6ICdkc2InLCAgICAgICAgIDB4MTQwQTogJ2VzLUNSJywgICAgICAgXG4gICAgMHgzNDAxOiAnYXItS1cnLCAgICAweDA4MDk6ICdlbi1HQicsICAgIDB4MDQ2RTogJ2xiJywgICAgICAgICAgMHgxQzBBOiAnZXMtRE8nLCAgICAgICBcbiAgICAweDMwMDE6ICdhci1MQicsICAgIDB4MDQwOTogJ2VuJywgICAgICAgMHgwNDJGOiAnbWsnLCAgICAgICAgICAweDMwMEE6ICdlcy1FQycsICAgICAgIFxuICAgIDB4MTAwMTogJ2FyLUxZJywgICAgMHgzMDA5OiAnZW4tWlcnLCAgICAweDA4M0U6ICdtcy1CTicsICAgICAgIDB4NDQwQTogJ2VzLVNWJywgICAgICAgXG4gICAgMHgxODAxOiAnYXJ5JywgICAgICAweDA0MjU6ICdldCcsICAgICAgIDB4MDQzRTogJ21zJywgICAgICAgICAgMHgxMDBBOiAnZXMtR1QnLCAgICAgICBcbiAgICAweDIwMDE6ICdhci1PTScsICAgIDB4MDQzODogJ2ZvJywgICAgICAgMHgwNDRDOiAnbWwnLCAgICAgICAgICAweDQ4MEE6ICdlcy1ITicsICAgICAgIFxuICAgIDB4NDAwMTogJ2FyLVFBJywgICAgMHgwNDY0OiAnZmlsJywgICAgICAweDA0M0E6ICdtdCcsICAgICAgICAgIDB4MDgwQTogJ2VzLU1YJywgICAgICAgXG4gICAgMHgwNDAxOiAnYXItU0EnLCAgICAweDA0MEI6ICdmaScsICAgICAgIDB4MDQ4MTogJ21pJywgICAgICAgICAgMHg0QzBBOiAnZXMtTkknLCAgICAgICBcbiAgICAweDI4MDE6ICdhci1TWScsICAgIDB4MDgwQzogJ2ZyLUJFJywgICAgMHgwNDdBOiAnYXJuJywgICAgICAgICAweDE4MEE6ICdlcy1QQScsICAgICAgIFxuICAgIDB4MUMwMTogJ2FlYicsICAgICAgMHgwQzBDOiAnZnItQ0EnLCAgICAweDA0NEU6ICdtcicsICAgICAgICAgIDB4M0MwQTogJ2VzLVBZJywgICAgICAgXG4gICAgMHgzODAxOiAnYXItQUUnLCAgICAweDA0MEM6ICdmcicsICAgICAgIDB4MDQ3QzogJ21vaCcsICAgICAgICAgMHgyODBBOiAnZXMtUEUnLCAgICAgICBcbiAgICAweDI0MDE6ICdhci1ZRScsICAgIDB4MTQwQzogJ2ZyLUxVJywgICAgMHgwNDUwOiAnbW4nLCAgICAgICAgICAweDUwMEE6ICdlcy1QUicsICAgICAgIFxuICAgIDB4MDQyQjogJ2h5JywgICAgICAgMHgxODBDOiAnZnItTUMnLCAgICAweDA4NTA6ICdtbi1DTicsICAgICAgIDB4MEMwQTogJ2VzJywgICAgICAgICAgXG4gICAgMHgwNDREOiAnYXMnLCAgICAgICAweDEwMEM6ICdmci1DSCcsICAgIDB4MDQ2MTogJ25lJywgICAgICAgICAgMHgwNDBBOiAnZXMnLCAgICAgICAgICBcbiAgICAweDA4MkM6ICdhei1DeXJsJywgIDB4MDQ2MjogJ2Z5JywgICAgICAgMHgwNDE0OiAnbmInLCAgICAgICAgICAweDU0MEE6ICdlcy1VUycsICAgICAgIFxuICAgIDB4MDQyQzogJ2F6JywgICAgICAgMHgwNDU2OiAnZ2wnLCAgICAgICAweDA4MTQ6ICdubicsICAgICAgICAgIDB4MzgwQTogJ2VzLVVZJywgICAgIFxuICAgIDB4MDQ2RDogJ2JhJywgICAgICAgMHgwNDM3OiAna2EnLCAgICAgICAweDA0ODI6ICdvYycsICAgICAgICAgIDB4MjAwQTogJ2VzLVZFJywgICAgICAgXG4gICAgMHgwNDJEOiAnZXUnLCAgICAgICAweDBDMDc6ICdkZS1BVCcsICAgIDB4MDQ0ODogJ29yJywgICAgICAgICAgMHgwODFEOiAnc3YtRkknLCAgICAgICBcbiAgICAweDA0MjM6ICdiZScsICAgICAgIDB4MDQwNzogJ2RlJywgICAgICAgMHgwNDYzOiAncHMnLCAgICAgICAgICAweDA0MUQ6ICdzdicsICAgICAgICAgIFxuICAgIDB4MDg0NTogJ2JuJywgICAgICAgMHgxNDA3OiAnZGUtTEknLCAgICAweDA0MTU6ICdwbCcsICAgICAgICAgIDB4MDQ1QTogJ3N5cicsICAgICAgICAgXG4gICAgMHgwNDQ1OiAnYm4tSU4nLCAgICAweDEwMDc6ICdkZS1MVScsICAgIDB4MDQxNjogJ3B0JywgICAgICAgICAgMHgwNDI4OiAndGcnLCAgICAgICAgICBcbiAgICAweDIwMUE6ICdicy1DeXJsJywgIDB4MDgwNzogJ2RlLUNIJywgICAgMHgwODE2OiAncHQtUFQnLCAgICAgICAweDA4NUY6ICd0em0nLCAgICAgICAgIFxuICAgIDB4MTQxQTogJ2JzJywgICAgICAgMHgwNDA4OiAnZWwnLCAgICAgICAweDA0NDY6ICdwYScsICAgICAgICAgIDB4MDQ0OTogJ3RhJywgICAgICAgICAgXG4gICAgMHgwNDdFOiAnYnInLCAgICAgICAweDA0NkY6ICdrbCcsICAgICAgIDB4MDQ2QjogJ3F1LUJPJywgICAgICAgMHgwNDQ0OiAndHQnLCAgICAgICAgICBcbiAgICAweDA0MDI6ICdiZycsICAgICAgIDB4MDQ0NzogJ2d1JywgICAgICAgMHgwODZCOiAncXUtRUMnLCAgICAgICAweDA0NEE6ICd0ZScsICAgICAgICAgIFxuICAgIDB4MDQwMzogJ2NhJywgICAgICAgMHgwNDY4OiAnaGEnLCAgICAgICAweDBDNkI6ICdxdScsICAgICAgICAgIDB4MDQxRTogJ3RoJywgICAgICAgICAgXG4gICAgMHgwQzA0OiAnemgtSEsnLCAgICAweDA0MEQ6ICdoZScsICAgICAgIDB4MDQxODogJ3JvJywgICAgICAgICAgMHgwNDUxOiAnYm8nLCAgICAgICAgICBcbiAgICAweDE0MDQ6ICd6aC1NTycsICAgIDB4MDQzOTogJ2hpJywgICAgICAgMHgwNDE3OiAncm0nLCAgICAgICAgICAweDA0MUY6ICd0cicsICAgICAgICAgIFxuICAgIDB4MDgwNDogJ3poJywgICAgICAgMHgwNDBFOiAnaHUnLCAgICAgICAweDA0MTk6ICdydScsICAgICAgICAgIDB4MDQ0MjogJ3RrJywgICAgICAgICAgXG4gICAgMHgxMDA0OiAnemgtU0cnLCAgICAweDA0MEY6ICdpcycsICAgICAgIDB4MjQzQjogJ3NtbicsICAgICAgICAgMHgwNDgwOiAndWcnLCAgICAgICAgICBcbiAgICAweDA0MDQ6ICd6aC1UVycsICAgIDB4MDQ3MDogJ2lnJywgICAgICAgMHgxMDNCOiAnc21qLU5PJywgICAgICAweDA0MjI6ICd1aycsICAgICAgICAgIFxuICAgIDB4MDQ4MzogJ2NvJywgICAgICAgMHgwNDIxOiAnaWQnLCAgICAgICAweDE0M0I6ICdzbWonLCAgICAgICAgIDB4MDQyRTogJ2hzYicsICAgICAgICAgXG4gICAgMHgwNDFBOiAnaHInLCAgICAgICAweDA0NUQ6ICdpdScsICAgICAgIDB4MEMzQjogJ3NlLUZJJywgICAgICAgMHgwNDIwOiAndXInLCAgICAgICAgICBcbiAgICAweDEwMUE6ICdoci1CQScsICAgIDB4MDg1RDogJ2l1LUxhdG4nLCAgMHgwNDNCOiAnc2UnLCAgICAgICAgICAweDA4NDM6ICd1ei1DeXJsJywgICAgIFxuICAgIDB4MDQwNTogJ2NzJywgICAgICAgMHgwODNDOiAnZ2EnLCAgICAgICAweDA4M0I6ICdzZS1TRScsICAgICAgIDB4MDQ0MzogJ3V6JywgICAgICAgICAgXG4gICAgMHgwNDA2OiAnZGEnLCAgICAgICAweDA0MzQ6ICd4aCcsICAgICAgIDB4MjAzQjogJ3NtcycsICAgICAgICAgMHgwNDJBOiAndmknLCAgICAgICAgICBcbiAgICAweDA0OEM6ICdwcnMnLCAgICAgIDB4MDQzNTogJ3p1JywgICAgICAgMHgxODNCOiAnc21hLU5PJywgICAgICAweDA0NTI6ICdjeScsICAgICAgICAgIFxuICAgIDB4MDQ2NTogJ2R2JywgICAgICAgMHgwNDEwOiAnaXQnLCAgICAgICAweDFDM0I6ICdzbXMnLCAgICAgICAgIDB4MDQ4ODogJ3dvJywgICAgICAgICAgXG4gICAgMHgwODEzOiAnbmwtQkUnLCAgICAweDA4MTA6ICdpdC1DSCcsICAgIDB4MDQ0RjogJ3NhJywgICAgICAgICAgMHgwNDg1OiAnc2FoJywgICAgICAgICBcbiAgICAweDA0MTM6ICdubCcsICAgICAgIDB4MDQxMTogJ2phJywgICAgICAgMHgxQzFBOiAnc3ItQ3lybC1CQScsICAweDA0Nzg6ICdpaScsICAgICAgICAgIFxuICAgIDB4MEMwOTogJ2VuLUFVJywgICAgMHgwNDRCOiAna24nLCAgICAgICAweDBDMUE6ICdzcicsICAgICAgICAgIDB4MDQ2QTogJ3lvJywgICAgICAgICAgIFxuICAgIDB4MjgwOTogJ2VuLUJaJywgICAgMHgwNDNGOiAna2snLCAgICAgICAweDE4MUE6ICdzci1MYXRuLUJBJywgIFxuICAgIDB4MTAwOTogJ2VuLUNBJywgICAgMHgwNDUzOiAna20nLCAgICAgICAweDA4MUE6ICdzci1MYXRuJywgICAgIFxuICAgIDB4MjQwOTogJ2VuLTAyOScsICAgMHgwNDg2OiAncXVjJywgICAgICAweDA0NkM6ICduc28nLCAgICAgICAgIFxuICB9XG5dO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG52YXIgT1MyID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIGhlYWRlcjoge1xuICAgIHhBdmdDaGFyV2lkdGg6ICAgICAgICAgIHIuaW50MTYsICAgLy8gYXZlcmFnZSB3ZWlnaHRlZCBhZHZhbmNlIHdpZHRoIG9mIGxvd2VyIGNhc2UgbGV0dGVycyBhbmQgc3BhY2VcbiAgICB1c1dlaWdodENsYXNzOiAgICAgICAgICByLnVpbnQxNiwgIC8vIHZpc3VhbCB3ZWlnaHQgb2Ygc3Ryb2tlIGluIGdseXBoc1xuICAgIHVzV2lkdGhDbGFzczogICAgICAgICAgIHIudWludDE2LCAgLy8gcmVsYXRpdmUgY2hhbmdlIGZyb20gdGhlIG5vcm1hbCBhc3BlY3QgcmF0aW8gKHdpZHRoIHRvIGhlaWdodCByYXRpbylcbiAgICBmc1R5cGU6ICAgICAgICAgICAgICAgICBuZXcgci5CaXRmaWVsZChyLnVpbnQxNiwgWyAvLyBJbmRpY2F0ZXMgZm9udCBlbWJlZGRpbmcgbGljZW5zaW5nIHJpZ2h0c1xuICAgICAgbnVsbCwgJ25vRW1iZWRkaW5nJywgJ3ZpZXdPbmx5JywgJ2VkaXRhYmxlJywgbnVsbCxcbiAgICAgIG51bGwsIG51bGwsIG51bGwsICdub1N1YnNldHRpbmcnLCAnYml0bWFwT25seSdcbiAgICBdKSxcbiAgICB5U3Vic2NyaXB0WFNpemU6ICAgICAgICByLmludDE2LCAgIC8vIHJlY29tbWVuZGVkIGhvcml6b250YWwgc2l6ZSBpbiBwaXhlbHMgZm9yIHN1YnNjcmlwdHNcbiAgICB5U3Vic2NyaXB0WVNpemU6ICAgICAgICByLmludDE2LCAgIC8vIHJlY29tbWVuZGVkIHZlcnRpY2FsIHNpemUgaW4gcGl4ZWxzIGZvciBzdWJzY3JpcHRzXG4gICAgeVN1YnNjcmlwdFhPZmZzZXQ6ICAgICAgci5pbnQxNiwgICAvLyByZWNvbW1lbmRlZCBob3Jpem9udGFsIG9mZnNldCBmb3Igc3Vic2NyaXB0c1xuICAgIHlTdWJzY3JpcHRZT2Zmc2V0OiAgICAgIHIuaW50MTYsICAgLy8gcmVjb21tZW5kZWQgdmVydGljYWwgb2Zmc2V0IGZvcm0gdGhlIGJhc2VsaW5lIGZvciBzdWJzY3JpcHRzXG4gICAgeVN1cGVyc2NyaXB0WFNpemU6ICAgICAgci5pbnQxNiwgICAvLyByZWNvbW1lbmRlZCBob3Jpem9udGFsIHNpemUgaW4gcGl4ZWxzIGZvciBzdXBlcnNjcmlwdHNcbiAgICB5U3VwZXJzY3JpcHRZU2l6ZTogICAgICByLmludDE2LCAgIC8vIHJlY29tbWVuZGVkIHZlcnRpY2FsIHNpemUgaW4gcGl4ZWxzIGZvciBzdXBlcnNjcmlwdHNcbiAgICB5U3VwZXJzY3JpcHRYT2Zmc2V0OiAgICByLmludDE2LCAgIC8vIHJlY29tbWVuZGVkIGhvcml6b250YWwgb2Zmc2V0IGZvciBzdXBlcnNjcmlwdHNcbiAgICB5U3VwZXJzY3JpcHRZT2Zmc2V0OiAgICByLmludDE2LCAgIC8vIHJlY29tbWVuZGVkIHZlcnRpY2FsIG9mZnNldCBmcm9tIHRoZSBiYXNlbGluZSBmb3Igc3VwZXJzY3JpcHRzXG4gICAgeVN0cmlrZW91dFNpemU6ICAgICAgICAgci5pbnQxNiwgICAvLyB3aWR0aCBvZiB0aGUgc3RyaWtlb3V0IHN0cm9rZVxuICAgIHlTdHJpa2VvdXRQb3NpdGlvbjogICAgIHIuaW50MTYsICAgLy8gcG9zaXRpb24gb2YgdGhlIHN0cmlrZW91dCBzdHJva2UgcmVsYXRpdmUgdG8gdGhlIGJhc2VsaW5lXG4gICAgc0ZhbWlseUNsYXNzOiAgICAgICAgICAgci5pbnQxNiwgICAvLyBjbGFzc2lmaWNhdGlvbiBvZiBmb250LWZhbWlseSBkZXNpZ25cbiAgICBwYW5vc2U6ICAgICAgICAgICAgICAgICBuZXcgci5BcnJheShyLnVpbnQ4LCAxMCksICAgLy8gZGVzY3JpYmUgdGhlIHZpc3VhbCBjaGFyYWN0ZXJpc3RpY3Mgb2YgYSBnaXZlbiB0eXBlZmFjZVxuICAgIHVsQ2hhclJhbmdlOiAgICAgICAgICAgIG5ldyByLkFycmF5KHIudWludDMyLCA0KSxcbiAgICB2ZW5kb3JJRDogICAgICAgICAgICAgICBuZXcgci5TdHJpbmcoNCksICAgICAgICAgIC8vIGZvdXIgY2hhcmFjdGVyIGlkZW50aWZpZXIgZm9yIHRoZSBmb250IHZlbmRvclxuICAgIGZzU2VsZWN0aW9uOiAgICAgICAgICAgIG5ldyByLkJpdGZpZWxkKHIudWludDE2LCBbICAvLyBiaXQgZmllbGQgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZm9udFxuICAgICAgJ2l0YWxpYycsICd1bmRlcnNjb3JlJywgJ25lZ2F0aXZlJywgJ291dGxpbmVkJywgJ3N0cmlrZW91dCcsXG4gICAgICAnYm9sZCcsICdyZWd1bGFyJywgJ3VzZVR5cG9NZXRyaWNzJywgJ3d3cycsICdvYmxpcXVlJ1xuICAgIF0pLFxuICAgIHVzRmlyc3RDaGFySW5kZXg6ICAgICAgIHIudWludDE2LCAgLy8gVGhlIG1pbmltdW0gVW5pY29kZSBpbmRleCBpbiB0aGlzIGZvbnRcbiAgICB1c0xhc3RDaGFySW5kZXg6ICAgICAgICByLnVpbnQxNiAgIC8vIFRoZSBtYXhpbXVtIFVuaWNvZGUgaW5kZXggaW4gdGhpcyBmb250XG4gIH0sXG5cbiAgLy8gVGhlIEFwcGxlIHZlcnNpb24gb2YgdGhpcyB0YWJsZSBlbmRzIGhlcmUsIGJ1dCB0aGUgTWljcm9zb2Z0IG9uZSBjb250aW51ZXMgb24uLi5cbiAgMDoge30sXG5cbiAgMToge1xuICAgIHR5cG9Bc2NlbmRlcjogICAgICAgci5pbnQxNixcbiAgICB0eXBvRGVzY2VuZGVyOiAgICAgIHIuaW50MTYsXG4gICAgdHlwb0xpbmVHYXA6ICAgICAgICByLmludDE2LFxuICAgIHdpbkFzY2VudDogICAgICAgICAgci51aW50MTYsXG4gICAgd2luRGVzY2VudDogICAgICAgICByLnVpbnQxNixcbiAgICBjb2RlUGFnZVJhbmdlOiAgICAgIG5ldyByLkFycmF5KHIudWludDMyLCAyKVxuICB9LFxuXG4gIDI6IHtcbiAgICAvLyB0aGVzZSBzaG91bGQgYmUgY29tbW9uIHdpdGggdmVyc2lvbiAxIHNvbWVob3dcbiAgICB0eXBvQXNjZW5kZXI6ICAgICAgIHIuaW50MTYsXG4gICAgdHlwb0Rlc2NlbmRlcjogICAgICByLmludDE2LFxuICAgIHR5cG9MaW5lR2FwOiAgICAgICAgci5pbnQxNixcbiAgICB3aW5Bc2NlbnQ6ICAgICAgICAgIHIudWludDE2LFxuICAgIHdpbkRlc2NlbnQ6ICAgICAgICAgci51aW50MTYsXG4gICAgY29kZVBhZ2VSYW5nZTogICAgICBuZXcgci5BcnJheShyLnVpbnQzMiwgMiksXG5cbiAgICB4SGVpZ2h0OiAgICAgICAgICAgIHIuaW50MTYsXG4gICAgY2FwSGVpZ2h0OiAgICAgICAgICByLmludDE2LFxuICAgIGRlZmF1bHRDaGFyOiAgICAgICAgci51aW50MTYsXG4gICAgYnJlYWtDaGFyOiAgICAgICAgICByLnVpbnQxNixcbiAgICBtYXhDb250ZW50OiAgICAgICAgIHIudWludDE2XG4gIH0sXG5cbiAgNToge1xuICAgIHR5cG9Bc2NlbmRlcjogICAgICAgci5pbnQxNixcbiAgICB0eXBvRGVzY2VuZGVyOiAgICAgIHIuaW50MTYsXG4gICAgdHlwb0xpbmVHYXA6ICAgICAgICByLmludDE2LFxuICAgIHdpbkFzY2VudDogICAgICAgICAgci51aW50MTYsXG4gICAgd2luRGVzY2VudDogICAgICAgICByLnVpbnQxNixcbiAgICBjb2RlUGFnZVJhbmdlOiAgICAgIG5ldyByLkFycmF5KHIudWludDMyLCAyKSxcblxuICAgIHhIZWlnaHQ6ICAgICAgICAgICAgci5pbnQxNixcbiAgICBjYXBIZWlnaHQ6ICAgICAgICAgIHIuaW50MTYsXG4gICAgZGVmYXVsdENoYXI6ICAgICAgICByLnVpbnQxNixcbiAgICBicmVha0NoYXI6ICAgICAgICAgIHIudWludDE2LFxuICAgIG1heENvbnRlbnQ6ICAgICAgICAgci51aW50MTYsXG5cbiAgICB1c0xvd2VyT3B0aWNhbFBvaW50U2l6ZTogci51aW50MTYsXG4gICAgdXNVcHBlck9wdGljYWxQb2ludFNpemU6IHIudWludDE2XG4gIH1cbn0pO1xuXG5sZXQgdmVyc2lvbnMgPSBPUzIudmVyc2lvbnM7XG52ZXJzaW9uc1szXSA9IHZlcnNpb25zWzRdID0gdmVyc2lvbnNbMl07XG5cbmV4cG9ydCBkZWZhdWx0IE9TMjtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gUG9zdFNjcmlwdCBpbmZvcm1hdGlvblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIuZml4ZWQzMiwge1xuICBoZWFkZXI6IHsgLy8gdGhlc2UgZmllbGRzIGV4aXN0IGF0IHRoZSB0b3Agb2YgYWxsIHZlcnNpb25zXG4gICAgaXRhbGljQW5nbGU6ICAgICAgICByLmZpeGVkMzIsIC8vIEl0YWxpYyBhbmdsZSBpbiBjb3VudGVyLWNsb2Nrd2lzZSBkZWdyZWVzIGZyb20gdGhlIHZlcnRpY2FsLlxuICAgIHVuZGVybGluZVBvc2l0aW9uOiAgci5pbnQxNiwgICAvLyBTdWdnZXN0ZWQgZGlzdGFuY2Ugb2YgdGhlIHRvcCBvZiB0aGUgdW5kZXJsaW5lIGZyb20gdGhlIGJhc2VsaW5lXG4gICAgdW5kZXJsaW5lVGhpY2tuZXNzOiByLmludDE2LCAgIC8vIFN1Z2dlc3RlZCB2YWx1ZXMgZm9yIHRoZSB1bmRlcmxpbmUgdGhpY2tuZXNzXG4gICAgaXNGaXhlZFBpdGNoOiAgICAgICByLnVpbnQzMiwgIC8vIFdoZXRoZXIgdGhlIGZvbnQgaXMgbW9ub3NwYWNlZFxuICAgIG1pbk1lbVR5cGU0MjogICAgICAgci51aW50MzIsICAvLyBNaW5pbXVtIG1lbW9yeSB1c2FnZSB3aGVuIGEgVHJ1ZVR5cGUgZm9udCBpcyBkb3dubG9hZGVkIGFzIGEgVHlwZSA0MiBmb250XG4gICAgbWF4TWVtVHlwZTQyOiAgICAgICByLnVpbnQzMiwgIC8vIE1heGltdW0gbWVtb3J5IHVzYWdlIHdoZW4gYSBUcnVlVHlwZSBmb250IGlzIGRvd25sb2FkZWQgYXMgYSBUeXBlIDQyIGZvbnRcbiAgICBtaW5NZW1UeXBlMTogICAgICAgIHIudWludDMyLCAgLy8gTWluaW11bSBtZW1vcnkgdXNhZ2Ugd2hlbiBhIFRydWVUeXBlIGZvbnQgaXMgZG93bmxvYWRlZCBhcyBhIFR5cGUgMSBmb250XG4gICAgbWF4TWVtVHlwZTE6ICAgICAgICByLnVpbnQzMiAgIC8vIE1heGltdW0gbWVtb3J5IHVzYWdlIHdoZW4gYSBUcnVlVHlwZSBmb250IGlzIGRvd25sb2FkZWQgYXMgYSBUeXBlIDEgZm9udFxuICB9LFxuXG4gIDE6IHt9LCAvLyB2ZXJzaW9uIDEgaGFzIG5vIGFkZGl0aW9uYWwgZmllbGRzXG5cbiAgMjoge1xuICAgIG51bWJlck9mR2x5cGhzOiByLnVpbnQxNixcbiAgICBnbHlwaE5hbWVJbmRleDogbmV3IHIuQXJyYXkoci51aW50MTYsICdudW1iZXJPZkdseXBocycpLFxuICAgIG5hbWVzOiAgICAgICAgICBuZXcgci5BcnJheShuZXcgci5TdHJpbmcoci51aW50OCkpXG4gIH0sXG5cbiAgMi41OiB7XG4gICAgbnVtYmVyT2ZHbHlwaHM6IHIudWludDE2LFxuICAgIG9mZnNldHM6ICAgICAgICBuZXcgci5BcnJheShyLnVpbnQ4LCAnbnVtYmVyT2ZHbHlwaHMnKVxuICB9LFxuXG4gIDM6IHt9LCAvLyB2ZXJzaW9uIDMgaGFzIG5vIGFkZGl0aW9uYWwgZmllbGRzXG5cbiAgNDoge1xuICAgIG1hcDogbmV3IHIuQXJyYXkoci51aW50MzIsIHQgPT4gdC5wYXJlbnQubWF4cC5udW1HbHlwaHMpXG4gIH1cbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBBbiBhcnJheSBvZiBwcmVkZWZpbmVkIHZhbHVlcyBhY2Nlc3NpYmxlIGJ5IGluc3RydWN0aW9uc1xuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgY29udHJvbFZhbHVlczogbmV3IHIuQXJyYXkoci5pbnQxNilcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBBIGxpc3Qgb2YgaW5zdHJ1Y3Rpb25zIHRoYXQgYXJlIGV4ZWN1dGVkIG9uY2Ugd2hlbiBhIGZvbnQgaXMgZmlyc3QgdXNlZC5cbi8vIFRoZXNlIGluc3RydWN0aW9ucyBhcmUga25vd24gYXMgdGhlIGZvbnQgcHJvZ3JhbS4gVGhlIG1haW4gdXNlIG9mIHRoaXMgdGFibGVcbi8vIGlzIGZvciB0aGUgZGVmaW5pdGlvbiBvZiBmdW5jdGlvbnMgdGhhdCBhcmUgdXNlZCBpbiBtYW55IGRpZmZlcmVudCBnbHlwaCBwcm9ncmFtcy5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIGluc3RydWN0aW9uczogbmV3IHIuQXJyYXkoci51aW50OClcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgbG9jYSA9IG5ldyByLlZlcnNpb25lZFN0cnVjdCgnaGVhZC5pbmRleFRvTG9jRm9ybWF0Jywge1xuICAwOiB7XG4gICAgb2Zmc2V0czogbmV3IHIuQXJyYXkoci51aW50MTYpXG4gIH0sXG4gIDE6IHtcbiAgICBvZmZzZXRzOiBuZXcgci5BcnJheShyLnVpbnQzMilcbiAgfVxufSk7XG5cbmxvY2EucHJvY2VzcyA9IGZ1bmN0aW9uKCkge1xuICBpZiAodGhpcy52ZXJzaW9uID09PSAwICYmICF0aGlzLl9wcm9jZXNzZWQpIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMub2Zmc2V0cy5sZW5ndGg7IGkrKykge1xuICAgICAgdGhpcy5vZmZzZXRzW2ldIDw8PSAxO1xuICAgIH1cbiAgICB0aGlzLl9wcm9jZXNzZWQgPSB0cnVlO1xuICB9XG59O1xuXG5sb2NhLnByZUVuY29kZSA9IGZ1bmN0aW9uKCkge1xuICBpZiAodGhpcy52ZXJzaW9uID09PSAwICYmIHRoaXMuX3Byb2Nlc3NlZCAhPT0gZmFsc2UpIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMub2Zmc2V0cy5sZW5ndGg7IGkrKykge1xuICAgICAgdGhpcy5vZmZzZXRzW2ldID4+Pj0gMTtcbiAgICB9XG4gICAgdGhpcy5fcHJvY2Vzc2VkID0gZmFsc2U7XG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IGxvY2E7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIFNldCBvZiBpbnN0cnVjdGlvbnMgZXhlY3V0ZWQgd2hlbmV2ZXIgdGhlIHBvaW50IHNpemUgb3IgZm9udCB0cmFuc2Zvcm1hdGlvbiBjaGFuZ2VcbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIGNvbnRyb2xWYWx1ZVByb2dyYW06IG5ldyByLkFycmF5KHIudWludDgpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gb25seSB1c2VkIGZvciBlbmNvZGluZ1xuZXhwb3J0IGRlZmF1bHQgbmV3IHIuQXJyYXkobmV3IHIuQnVmZmVyKTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCBDRkZJbmRleCBmcm9tICcuL0NGRkluZGV4JztcbmltcG9ydCBDRkZUb3AgZnJvbSAnLi9DRkZUb3AnO1xuaW1wb3J0IENGRlByaXZhdGVEaWN0IGZyb20gJy4vQ0ZGUHJpdmF0ZURpY3QnO1xuaW1wb3J0IHN0YW5kYXJkU3RyaW5ncyBmcm9tICcuL0NGRlN0YW5kYXJkU3RyaW5ncyc7XG5cbmNsYXNzIENGRkZvbnQge1xuICBjb25zdHJ1Y3RvcihzdHJlYW0pIHtcbiAgICB0aGlzLnN0cmVhbSA9IHN0cmVhbTtcbiAgICB0aGlzLmRlY29kZSgpO1xuICB9XG5cbiAgc3RhdGljIGRlY29kZShzdHJlYW0pIHtcbiAgICByZXR1cm4gbmV3IENGRkZvbnQoc3RyZWFtKTtcbiAgfVxuXG4gIGRlY29kZSgpIHtcbiAgICBsZXQgc3RhcnQgPSB0aGlzLnN0cmVhbS5wb3M7XG4gICAgbGV0IHRvcCA9IENGRlRvcC5kZWNvZGUodGhpcy5zdHJlYW0pO1xuICAgIGZvciAobGV0IGtleSBpbiB0b3ApIHtcbiAgICAgIGxldCB2YWwgPSB0b3Bba2V5XTtcbiAgICAgIHRoaXNba2V5XSA9IHZhbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52ZXJzaW9uIDwgMikge1xuICAgICAgaWYgKHRoaXMudG9wRGljdEluZGV4Lmxlbmd0aCAhPT0gMSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJPbmx5IGEgc2luZ2xlIGZvbnQgaXMgYWxsb3dlZCBpbiBDRkZcIik7XG4gICAgICB9XG5cbiAgICAgIHRoaXMudG9wRGljdCA9IHRoaXMudG9wRGljdEluZGV4WzBdO1xuICAgIH1cblxuICAgIHRoaXMuaXNDSURGb250ID0gdGhpcy50b3BEaWN0LlJPUyAhPSBudWxsO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc3RyaW5nKHNpZCkge1xuICAgIGlmICh0aGlzLnZlcnNpb24gPj0gMikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHNpZCA8IHN0YW5kYXJkU3RyaW5ncy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBzdGFuZGFyZFN0cmluZ3Nbc2lkXTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zdHJpbmdJbmRleFtzaWQgLSBzdGFuZGFyZFN0cmluZ3MubGVuZ3RoXTtcbiAgfVxuXG4gIGdldCBwb3N0c2NyaXB0TmFtZSgpIHtcbiAgICBpZiAodGhpcy52ZXJzaW9uIDwgMikge1xuICAgICAgcmV0dXJuIHRoaXMubmFtZUluZGV4WzBdO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZ2V0IGZ1bGxOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZyh0aGlzLnRvcERpY3QuRnVsbE5hbWUpO1xuICB9XG5cbiAgZ2V0IGZhbWlseU5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nKHRoaXMudG9wRGljdC5GYW1pbHlOYW1lKTtcbiAgfVxuXG4gIGdldENoYXJTdHJpbmcoZ2x5cGgpIHtcbiAgICB0aGlzLnN0cmVhbS5wb3MgPSB0aGlzLnRvcERpY3QuQ2hhclN0cmluZ3NbZ2x5cGhdLm9mZnNldDtcbiAgICByZXR1cm4gdGhpcy5zdHJlYW0ucmVhZEJ1ZmZlcih0aGlzLnRvcERpY3QuQ2hhclN0cmluZ3NbZ2x5cGhdLmxlbmd0aCk7XG4gIH1cblxuICBnZXRHbHlwaE5hbWUoZ2lkKSB7XG4gICAgLy8gQ0ZGMiBnbHlwaCBuYW1lcyBhcmUgaW4gdGhlIHBvc3QgdGFibGUuXG4gICAgaWYgKHRoaXMudmVyc2lvbiA+PSAyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBDSUQta2V5ZWQgZm9udHMgZG9uJ3QgaGF2ZSBnbHlwaCBuYW1lc1xuICAgIGlmICh0aGlzLmlzQ0lERm9udCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgbGV0IHsgY2hhcnNldCB9ID0gdGhpcy50b3BEaWN0O1xuICAgIGlmIChBcnJheS5pc0FycmF5KGNoYXJzZXQpKSB7XG4gICAgICByZXR1cm4gY2hhcnNldFtnaWRdO1xuICAgIH1cblxuICAgIGlmIChnaWQgPT09IDApIHtcbiAgICAgIHJldHVybiAnLm5vdGRlZic7XG4gICAgfVxuXG4gICAgZ2lkIC09IDE7XG5cbiAgICBzd2l0Y2ggKGNoYXJzZXQudmVyc2lvbikge1xuICAgICAgY2FzZSAwOlxuICAgICAgICByZXR1cm4gdGhpcy5zdHJpbmcoY2hhcnNldC5nbHlwaHNbZ2lkXSk7XG5cbiAgICAgIGNhc2UgMTpcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFyc2V0LnJhbmdlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGxldCByYW5nZSA9IGNoYXJzZXQucmFuZ2VzW2ldO1xuICAgICAgICAgIGlmIChyYW5nZS5vZmZzZXQgPD0gZ2lkICYmIGdpZCA8PSByYW5nZS5vZmZzZXQgKyByYW5nZS5uTGVmdCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3RyaW5nKHJhbmdlLmZpcnN0ICsgKGdpZCAtIHJhbmdlLm9mZnNldCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGZkRm9yR2x5cGgoZ2lkKSB7XG4gICAgaWYgKCF0aGlzLnRvcERpY3QuRkRTZWxlY3QpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHN3aXRjaCAodGhpcy50b3BEaWN0LkZEU2VsZWN0LnZlcnNpb24pIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgICAgcmV0dXJuIHRoaXMudG9wRGljdC5GRFNlbGVjdC5mZHNbZ2lkXTtcblxuICAgICAgY2FzZSAzOlxuICAgICAgY2FzZSA0OlxuICAgICAgICBsZXQgeyByYW5nZXMgfSA9IHRoaXMudG9wRGljdC5GRFNlbGVjdDtcbiAgICAgICAgbGV0IGxvdyA9IDA7XG4gICAgICAgIGxldCBoaWdoID0gcmFuZ2VzLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgd2hpbGUgKGxvdyA8PSBoaWdoKSB7XG4gICAgICAgICAgbGV0IG1pZCA9IChsb3cgKyBoaWdoKSA+PiAxO1xuXG4gICAgICAgICAgaWYgKGdpZCA8IHJhbmdlc1ttaWRdLmZpcnN0KSB7XG4gICAgICAgICAgICBoaWdoID0gbWlkIC0gMTtcbiAgICAgICAgICB9IGVsc2UgaWYgKG1pZCA8IGhpZ2ggJiYgZ2lkID49IHJhbmdlc1ttaWQgKyAxXS5maXJzdCkge1xuICAgICAgICAgICAgbG93ID0gbWlkICsgMTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHJhbmdlc1ttaWRdLmZkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIEZEU2VsZWN0IHZlcnNpb246ICR7dGhpcy50b3BEaWN0LkZEU2VsZWN0LnZlcnNpb259YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZURpY3RGb3JHbHlwaChnaWQpIHtcbiAgICBpZiAodGhpcy50b3BEaWN0LkZEU2VsZWN0KSB7XG4gICAgICBsZXQgZmQgPSB0aGlzLmZkRm9yR2x5cGgoZ2lkKTtcbiAgICAgIGlmICh0aGlzLnRvcERpY3QuRkRBcnJheVtmZF0pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudG9wRGljdC5GREFycmF5W2ZkXS5Qcml2YXRlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52ZXJzaW9uIDwgMikge1xuICAgICAgcmV0dXJuIHRoaXMudG9wRGljdC5Qcml2YXRlO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnRvcERpY3QuRkRBcnJheVswXS5Qcml2YXRlO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IENGRkZvbnQ7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENGRkluZGV4IHtcbiAgY29uc3RydWN0b3IodHlwZSkge1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cblxuICBnZXRDRkZWZXJzaW9uKGN0eCkge1xuICAgIHdoaWxlIChjdHggJiYgIWN0eC5oZHJTaXplKSB7XG4gICAgICBjdHggPSBjdHgucGFyZW50O1xuICAgIH1cblxuICAgIHJldHVybiBjdHggPyBjdHgudmVyc2lvbiA6IC0xO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50KSB7XG4gICAgbGV0IHZlcnNpb24gPSB0aGlzLmdldENGRlZlcnNpb24ocGFyZW50KTtcbiAgICBsZXQgY291bnQgPSB2ZXJzaW9uID49IDJcbiAgICAgID8gc3RyZWFtLnJlYWRVSW50MzJCRSgpXG4gICAgICA6IHN0cmVhbS5yZWFkVUludDE2QkUoKTtcblxuICAgIGlmIChjb3VudCA9PT0gMCkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGxldCBvZmZTaXplID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgIGxldCBvZmZzZXRUeXBlO1xuICAgIGlmIChvZmZTaXplID09PSAxKSB7XG4gICAgICBvZmZzZXRUeXBlID0gci51aW50ODtcbiAgICB9IGVsc2UgaWYgKG9mZlNpemUgPT09IDIpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQxNjtcbiAgICB9IGVsc2UgaWYgKG9mZlNpemUgPT09IDMpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQyNDtcbiAgICB9IGVsc2UgaWYgKG9mZlNpemUgPT09IDQpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQzMjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBCYWQgb2Zmc2V0IHNpemUgaW4gQ0ZGSW5kZXg6ICR7b2ZmU2l6ZX0gJHtzdHJlYW0ucG9zfWApO1xuICAgIH1cblxuICAgIGxldCByZXQgPSBbXTtcbiAgICBsZXQgc3RhcnRQb3MgPSBzdHJlYW0ucG9zICsgKChjb3VudCArIDEpICogb2ZmU2l6ZSkgLSAxO1xuXG4gICAgbGV0IHN0YXJ0ID0gb2Zmc2V0VHlwZS5kZWNvZGUoc3RyZWFtKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyBpKyspIHtcbiAgICAgIGxldCBlbmQgPSBvZmZzZXRUeXBlLmRlY29kZShzdHJlYW0pO1xuXG4gICAgICBpZiAodGhpcy50eXBlICE9IG51bGwpIHtcbiAgICAgICAgbGV0IHBvcyA9IHN0cmVhbS5wb3M7XG4gICAgICAgIHN0cmVhbS5wb3MgPSBzdGFydFBvcyArIHN0YXJ0O1xuXG4gICAgICAgIHBhcmVudC5sZW5ndGggPSBlbmQgLSBzdGFydDtcbiAgICAgICAgcmV0LnB1c2godGhpcy50eXBlLmRlY29kZShzdHJlYW0sIHBhcmVudCkpO1xuICAgICAgICBzdHJlYW0ucG9zID0gcG9zO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0LnB1c2goe1xuICAgICAgICAgIG9mZnNldDogc3RhcnRQb3MgKyBzdGFydCxcbiAgICAgICAgICBsZW5ndGg6IGVuZCAtIHN0YXJ0XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBzdGFydCA9IGVuZDtcbiAgICB9XG5cbiAgICBzdHJlYW0ucG9zID0gc3RhcnRQb3MgKyBzdGFydDtcbiAgICByZXR1cm4gcmV0O1xuICB9XG5cbiAgc2l6ZShhcnIsIHBhcmVudCkge1xuICAgIGxldCBzaXplID0gMjtcbiAgICBpZiAoYXJyLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHNpemU7XG4gICAgfVxuXG4gICAgbGV0IHR5cGUgPSB0aGlzLnR5cGUgfHwgbmV3IHIuQnVmZmVyO1xuXG4gICAgLy8gZmluZCBtYXhpbXVtIG9mZnNldCB0byBkZXRtaW5pbmUgb2Zmc2V0IHR5cGVcbiAgICBsZXQgb2Zmc2V0ID0gMTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGl0ZW0gPSBhcnJbaV07XG4gICAgICBvZmZzZXQgKz0gdHlwZS5zaXplKGl0ZW0sIHBhcmVudCk7XG4gICAgfVxuXG4gICAgbGV0IG9mZnNldFR5cGU7XG4gICAgaWYgKG9mZnNldCA8PSAweGZmKSB7XG4gICAgICBvZmZzZXRUeXBlID0gci51aW50ODtcbiAgICB9IGVsc2UgaWYgKG9mZnNldCA8PSAweGZmZmYpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQxNjtcbiAgICB9IGVsc2UgaWYgKG9mZnNldCA8PSAweGZmZmZmZikge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDI0O1xuICAgIH0gZWxzZSBpZiAob2Zmc2V0IDw9IDB4ZmZmZmZmZmYpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQzMjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQmFkIG9mZnNldCBpbiBDRkZJbmRleFwiKTtcbiAgICB9XG5cbiAgICBzaXplICs9IDEgKyBvZmZzZXRUeXBlLnNpemUoKSAqIChhcnIubGVuZ3RoICsgMSk7XG4gICAgc2l6ZSArPSBvZmZzZXQgLSAxO1xuXG4gICAgcmV0dXJuIHNpemU7XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCBhcnIsIHBhcmVudCkge1xuICAgIHN0cmVhbS53cml0ZVVJbnQxNkJFKGFyci5sZW5ndGgpO1xuICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHR5cGUgPSB0aGlzLnR5cGUgfHwgbmV3IHIuQnVmZmVyO1xuXG4gICAgLy8gZmluZCBtYXhpbXVtIG9mZnNldCB0byBkZXRtaW5pbmUgb2Zmc2V0IHR5cGVcbiAgICBsZXQgc2l6ZXMgPSBbXTtcbiAgICBsZXQgb2Zmc2V0ID0gMTtcbiAgICBmb3IgKGxldCBpdGVtIG9mIGFycikge1xuICAgICAgbGV0IHMgPSB0eXBlLnNpemUoaXRlbSwgcGFyZW50KTtcbiAgICAgIHNpemVzLnB1c2gocyk7XG4gICAgICBvZmZzZXQgKz0gcztcbiAgICB9XG5cbiAgICBsZXQgb2Zmc2V0VHlwZTtcbiAgICBpZiAob2Zmc2V0IDw9IDB4ZmYpIHtcbiAgICAgIG9mZnNldFR5cGUgPSByLnVpbnQ4O1xuICAgIH0gZWxzZSBpZiAob2Zmc2V0IDw9IDB4ZmZmZikge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDE2O1xuICAgIH0gZWxzZSBpZiAob2Zmc2V0IDw9IDB4ZmZmZmZmKSB7XG4gICAgICBvZmZzZXRUeXBlID0gci51aW50MjQ7XG4gICAgfSBlbHNlIGlmIChvZmZzZXQgPD0gMHhmZmZmZmZmZikge1xuICAgICAgb2Zmc2V0VHlwZSA9IHIudWludDMyO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJCYWQgb2Zmc2V0IGluIENGRkluZGV4XCIpO1xuICAgIH1cblxuICAgIC8vIHdyaXRlIG9mZnNldCBzaXplXG4gICAgc3RyZWFtLndyaXRlVUludDgob2Zmc2V0VHlwZS5zaXplKCkpO1xuXG4gICAgLy8gd3JpdGUgZWxlbWVudHNcbiAgICBvZmZzZXQgPSAxO1xuICAgIG9mZnNldFR5cGUuZW5jb2RlKHN0cmVhbSwgb2Zmc2V0KTtcblxuICAgIGZvciAobGV0IHNpemUgb2Ygc2l6ZXMpIHtcbiAgICAgIG9mZnNldCArPSBzaXplO1xuICAgICAgb2Zmc2V0VHlwZS5lbmNvZGUoc3RyZWFtLCBvZmZzZXQpO1xuICAgIH1cblxuICAgIGZvciAobGV0IGl0ZW0gb2YgYXJyKSB7XG4gICAgICB0eXBlLmVuY29kZShzdHJlYW0sIGl0ZW0sIHBhcmVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9XG59XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyByZXNvbHZlTGVuZ3RoIH0gZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IENGRkRpY3QgZnJvbSAnLi9DRkZEaWN0JztcbmltcG9ydCBDRkZJbmRleCBmcm9tICcuL0NGRkluZGV4JztcbmltcG9ydCBDRkZQb2ludGVyIGZyb20gJy4vQ0ZGUG9pbnRlcic7XG5pbXBvcnQgQ0ZGUHJpdmF0ZURpY3QgZnJvbSAnLi9DRkZQcml2YXRlRGljdCc7XG5pbXBvcnQgU3RhbmRhcmRTdHJpbmdzIGZyb20gJy4vQ0ZGU3RhbmRhcmRTdHJpbmdzJztcbmltcG9ydCB7IFN0YW5kYXJkRW5jb2RpbmcsIEV4cGVydEVuY29kaW5nIH0gZnJvbSAnLi9DRkZFbmNvZGluZ3MnO1xuaW1wb3J0IHsgSVNPQWRvYmVDaGFyc2V0LCBFeHBlcnRDaGFyc2V0LCBFeHBlcnRTdWJzZXRDaGFyc2V0IH0gZnJvbSAnLi9DRkZDaGFyc2V0cyc7XG5pbXBvcnQgeyBJdGVtVmFyaWF0aW9uU3RvcmUgfSBmcm9tICcuLi90YWJsZXMvdmFyaWF0aW9ucyc7XG5cbi8vIENoZWNrcyBpZiBhbiBvcGVyYW5kIGlzIGFuIGluZGV4IG9mIGEgcHJlZGVmaW5lZCB2YWx1ZSxcbi8vIG90aGVyd2lzZSBkZWxlZ2F0ZXMgdG8gdGhlIHByb3ZpZGVkIHR5cGUuXG5jbGFzcyBQcmVkZWZpbmVkT3Age1xuICBjb25zdHJ1Y3RvcihwcmVkZWZpbmVkT3BzLCB0eXBlKSB7XG4gICAgdGhpcy5wcmVkZWZpbmVkT3BzID0gcHJlZGVmaW5lZE9wcztcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBvcGVyYW5kcykge1xuICAgIGlmICh0aGlzLnByZWRlZmluZWRPcHNbb3BlcmFuZHNbMF1dKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcmVkZWZpbmVkT3BzW29wZXJhbmRzWzBdXTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy50eXBlLmRlY29kZShzdHJlYW0sIHBhcmVudCwgb3BlcmFuZHMpO1xuICB9XG5cbiAgc2l6ZSh2YWx1ZSwgY3R4KSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZS5zaXplKHZhbHVlLCBjdHgpO1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsdWUsIGN0eCkge1xuICAgIGxldCBpbmRleCA9IHRoaXMucHJlZGVmaW5lZE9wcy5pbmRleE9mKHZhbHVlKTtcbiAgICBpZiAoaW5kZXggIT09IC0xKSB7XG4gICAgICByZXR1cm4gaW5kZXg7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHlwZS5lbmNvZGUoc3RyZWFtLCB2YWx1ZSwgY3R4KTtcbiAgfVxufVxuXG5jbGFzcyBDRkZFbmNvZGluZ1ZlcnNpb24gZXh0ZW5kcyByLk51bWJlciB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCdVSW50OCcpO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSkge1xuICAgIHJldHVybiByLnVpbnQ4LmRlY29kZShzdHJlYW0pICYgMHg3ZjtcbiAgfVxufVxuXG5sZXQgUmFuZ2UxID0gbmV3IHIuU3RydWN0KHtcbiAgZmlyc3Q6IHIudWludDE2LFxuICBuTGVmdDogci51aW50OFxufSk7XG5cbmxldCBSYW5nZTIgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmaXJzdDogci51aW50MTYsXG4gIG5MZWZ0OiByLnVpbnQxNlxufSk7XG5cbmxldCBDRkZDdXN0b21FbmNvZGluZyA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChuZXcgQ0ZGRW5jb2RpbmdWZXJzaW9uKCksIHtcbiAgMDoge1xuICAgIG5Db2Rlczogci51aW50OCxcbiAgICBjb2RlczogbmV3IHIuQXJyYXkoci51aW50OCwgJ25Db2RlcycpXG4gIH0sXG5cbiAgMToge1xuICAgIG5SYW5nZXM6IHIudWludDgsXG4gICAgcmFuZ2VzOiBuZXcgci5BcnJheShSYW5nZTEsICduUmFuZ2VzJylcbiAgfVxuXG4gIC8vIFRPRE86IHN1cHBsZW1lbnQ/XG59KTtcblxubGV0IENGRkVuY29kaW5nID0gbmV3IFByZWRlZmluZWRPcChbIFN0YW5kYXJkRW5jb2RpbmcsIEV4cGVydEVuY29kaW5nIF0sIG5ldyBDRkZQb2ludGVyKENGRkN1c3RvbUVuY29kaW5nLCB7IGxhenk6IHRydWUgfSkpO1xuXG4vLyBEZWNvZGVzIGFuIGFycmF5IG9mIHJhbmdlcyB1bnRpbCB0aGUgdG90YWxcbi8vIGxlbmd0aCBpcyBlcXVhbCB0byB0aGUgcHJvdmlkZWQgbGVuZ3RoLlxuY2xhc3MgUmFuZ2VBcnJheSBleHRlbmRzIHIuQXJyYXkge1xuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICBsZXQgbGVuZ3RoID0gcmVzb2x2ZUxlbmd0aCh0aGlzLmxlbmd0aCwgc3RyZWFtLCBwYXJlbnQpO1xuICAgIGxldCBjb3VudCA9IDA7XG4gICAgbGV0IHJlcyA9IFtdO1xuICAgIHdoaWxlIChjb3VudCA8IGxlbmd0aCkge1xuICAgICAgbGV0IHJhbmdlID0gdGhpcy50eXBlLmRlY29kZShzdHJlYW0sIHBhcmVudCk7XG4gICAgICByYW5nZS5vZmZzZXQgPSBjb3VudDtcbiAgICAgIGNvdW50ICs9IHJhbmdlLm5MZWZ0ICsgMTtcbiAgICAgIHJlcy5wdXNoKHJhbmdlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG5cbmxldCBDRkZDdXN0b21DaGFyc2V0ID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDgsIHtcbiAgMDoge1xuICAgIGdseXBoczogbmV3IHIuQXJyYXkoci51aW50MTYsIHQgPT4gdC5wYXJlbnQuQ2hhclN0cmluZ3MubGVuZ3RoIC0gMSlcbiAgfSxcblxuICAxOiB7XG4gICAgcmFuZ2VzOiBuZXcgUmFuZ2VBcnJheShSYW5nZTEsIHQgPT4gdC5wYXJlbnQuQ2hhclN0cmluZ3MubGVuZ3RoIC0gMSlcbiAgfSxcblxuICAyOiB7XG4gICAgcmFuZ2VzOiBuZXcgUmFuZ2VBcnJheShSYW5nZTIsIHQgPT4gdC5wYXJlbnQuQ2hhclN0cmluZ3MubGVuZ3RoIC0gMSlcbiAgfVxufSk7XG5cbmxldCBDRkZDaGFyc2V0ID0gbmV3IFByZWRlZmluZWRPcChbIElTT0Fkb2JlQ2hhcnNldCwgRXhwZXJ0Q2hhcnNldCwgRXhwZXJ0U3Vic2V0Q2hhcnNldCBdLCBuZXcgQ0ZGUG9pbnRlcihDRkZDdXN0b21DaGFyc2V0LCB7bGF6eTogdHJ1ZX0pKTtcblxubGV0IEZEUmFuZ2UzID0gbmV3IHIuU3RydWN0KHtcbiAgZmlyc3Q6IHIudWludDE2LFxuICBmZDogci51aW50OFxufSk7XG5cbmxldCBGRFJhbmdlNCA9IG5ldyByLlN0cnVjdCh7XG4gIGZpcnN0OiByLnVpbnQzMixcbiAgZmQ6IHIudWludDE2XG59KTtcblxubGV0IEZEU2VsZWN0ID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDgsIHtcbiAgMDoge1xuICAgIGZkczogbmV3IHIuQXJyYXkoci51aW50OCwgdCA9PiB0LnBhcmVudC5DaGFyU3RyaW5ncy5sZW5ndGgpXG4gIH0sXG5cbiAgMzoge1xuICAgIG5SYW5nZXM6IHIudWludDE2LFxuICAgIHJhbmdlczogbmV3IHIuQXJyYXkoRkRSYW5nZTMsICduUmFuZ2VzJyksXG4gICAgc2VudGluZWw6IHIudWludDE2XG4gIH0sXG5cbiAgNDoge1xuICAgIG5SYW5nZXM6IHIudWludDMyLFxuICAgIHJhbmdlczogbmV3IHIuQXJyYXkoRkRSYW5nZTQsICduUmFuZ2VzJyksXG4gICAgc2VudGluZWw6IHIudWludDMyXG4gIH1cbn0pO1xuXG5sZXQgcHRyID0gbmV3IENGRlBvaW50ZXIoQ0ZGUHJpdmF0ZURpY3QpO1xuY2xhc3MgQ0ZGUHJpdmF0ZU9wIHtcbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBvcGVyYW5kcykge1xuICAgIHBhcmVudC5sZW5ndGggPSBvcGVyYW5kc1swXTtcbiAgICByZXR1cm4gcHRyLmRlY29kZShzdHJlYW0sIHBhcmVudCwgW29wZXJhbmRzWzFdXSk7XG4gIH1cblxuICBzaXplKGRpY3QsIGN0eCkge1xuICAgIHJldHVybiBbQ0ZGUHJpdmF0ZURpY3Quc2l6ZShkaWN0LCBjdHgsIGZhbHNlKSwgcHRyLnNpemUoZGljdCwgY3R4KVswXV07XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCBkaWN0LCBjdHgpIHtcbiAgICByZXR1cm4gW0NGRlByaXZhdGVEaWN0LnNpemUoZGljdCwgY3R4LCBmYWxzZSksIHB0ci5lbmNvZGUoc3RyZWFtLCBkaWN0LCBjdHgpWzBdXTtcbiAgfVxufVxuXG5sZXQgRm9udERpY3QgPSBuZXcgQ0ZGRGljdChbXG4gIC8vIGtleSAgICAgICBuYW1lICAgICAgICAgICAgICAgICAgIHR5cGUocykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0XG4gIFsxOCwgICAgICAgICdQcml2YXRlJywgICAgICAgICAgICAgIG5ldyBDRkZQcml2YXRlT3AsICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMzhdLCAgJ0ZvbnROYW1lJywgICAgICAgICAgICAgJ3NpZCcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCA3XSwgICAnRm9udE1hdHJpeCcsICAgICAgICAgICAnYXJyYXknLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzAuMDAxLCAwLCAwLCAwLjAwMSwgMCwgMF1dLFxuICBbWzEyLCA1XSwgICAnUGFpbnRUeXBlJywgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG5dKTtcblxubGV0IENGRlRvcERpY3QgPSBuZXcgQ0ZGRGljdChbXG4gIC8vIGtleSAgICAgICBuYW1lICAgICAgICAgICAgICAgICAgIHR5cGUocykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0XG4gIFtbMTIsIDMwXSwgICdST1MnLCAgICAgICAgICAgICAgICAgIFsnc2lkJywgJ3NpZCcsICdudW1iZXInXSwgICAgICAgICAgICAgICBudWxsXSxcblxuICBbMCwgICAgICAgICAndmVyc2lvbicsICAgICAgICAgICAgICAnc2lkJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFsxLCAgICAgICAgICdOb3RpY2UnLCAgICAgICAgICAgICAgICdzaWQnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMF0sICAgJ0NvcHlyaWdodCcsICAgICAgICAgICAgJ3NpZCcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbMiwgICAgICAgICAnRnVsbE5hbWUnLCAgICAgICAgICAgICAnc2lkJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFszLCAgICAgICAgICdGYW1pbHlOYW1lJywgICAgICAgICAgICdzaWQnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgWzQsICAgICAgICAgJ1dlaWdodCcsICAgICAgICAgICAgICAgJ3NpZCcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAxXSwgICAnaXNGaXhlZFBpdGNoJywgICAgICAgICAnYm9vbGVhbicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2VdLFxuICBbWzEyLCAyXSwgICAnSXRhbGljQW5nbGUnLCAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFtbMTIsIDNdLCAgICdVbmRlcmxpbmVQb3NpdGlvbicsICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMTAwXSxcbiAgW1sxMiwgNF0sICAgJ1VuZGVybGluZVRoaWNrbmVzcycsICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDUwXSxcbiAgW1sxMiwgNV0sICAgJ1BhaW50VHlwZScsICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDBdLFxuICBbWzEyLCA2XSwgICAnQ2hhcnN0cmluZ1R5cGUnLCAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMl0sXG4gIFtbMTIsIDddLCAgICdGb250TWF0cml4JywgICAgICAgICAgICdhcnJheScsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbMC4wMDEsIDAsIDAsIDAuMDAxLCAwLCAwXV0sXG4gIFsxMywgICAgICAgICdVbmlxdWVJRCcsICAgICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgWzUsICAgICAgICAgJ0ZvbnRCQm94JywgICAgICAgICAgICAgJ2FycmF5JywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswLCAwLCAwLCAwXV0sXG4gIFtbMTIsIDhdLCAgICdTdHJva2VXaWR0aCcsICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgWzE0LCAgICAgICAgJ1hVSUQnLCAgICAgICAgICAgICAgICAgJ2FycmF5JywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbMTUsICAgICAgICAnY2hhcnNldCcsICAgICAgICAgICAgICBDRkZDaGFyc2V0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSVNPQWRvYmVDaGFyc2V0XSxcbiAgWzE2LCAgICAgICAgJ0VuY29kaW5nJywgICAgICAgICAgICAgQ0ZGRW5jb2RpbmcsICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0YW5kYXJkRW5jb2RpbmddLFxuICBbMTcsICAgICAgICAnQ2hhclN0cmluZ3MnLCAgICAgICAgICBuZXcgQ0ZGUG9pbnRlcihuZXcgQ0ZGSW5kZXgpLCAgICAgICAgICAgbnVsbF0sXG4gIFsxOCwgICAgICAgICdQcml2YXRlJywgICAgICAgICAgICAgIG5ldyBDRkZQcml2YXRlT3AsICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMjBdLCAgJ1N5bnRoZXRpY0Jhc2UnLCAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAyMV0sICAnUG9zdFNjcmlwdCcsICAgICAgICAgICAnc2lkJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDIyXSwgICdCYXNlRm9udE5hbWUnLCAgICAgICAgICdzaWQnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMjNdLCAgJ0Jhc2VGb250QmxlbmQnLCAgICAgICAgJ2RlbHRhJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuXG4gIC8vIENJRCBmb250IHNwZWNpZmljXG4gIFtbMTIsIDMxXSwgICdDSURGb250VmVyc2lvbicsICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwXSxcbiAgW1sxMiwgMzJdLCAgJ0NJREZvbnRSZXZpc2lvbicsICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDBdLFxuICBbWzEyLCAzM10sICAnQ0lERm9udFR5cGUnLCAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFtbMTIsIDM0XSwgICdDSURDb3VudCcsICAgICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4NzIwXSxcbiAgW1sxMiwgMzVdLCAgJ1VJREJhc2UnLCAgICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAzN10sICAnRkRTZWxlY3QnLCAgICAgICAgICAgICBuZXcgQ0ZGUG9pbnRlcihGRFNlbGVjdCksICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDM2XSwgICdGREFycmF5JywgICAgICAgICAgICAgIG5ldyBDRkZQb2ludGVyKG5ldyBDRkZJbmRleChGb250RGljdCkpLCBudWxsXSxcbiAgW1sxMiwgMzhdLCAgJ0ZvbnROYW1lJywgICAgICAgICAgICAgJ3NpZCcsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdXG5dKTtcblxubGV0IFZhcmlhdGlvblN0b3JlID0gbmV3IHIuU3RydWN0KHtcbiAgbGVuZ3RoOiByLnVpbnQxNixcbiAgaXRlbVZhcmlhdGlvblN0b3JlOiBJdGVtVmFyaWF0aW9uU3RvcmVcbn0pXG5cbmxldCBDRkYyVG9wRGljdCA9IG5ldyBDRkZEaWN0KFtcbiAgW1sxMiwgN10sICAgJ0ZvbnRNYXRyaXgnLCAgICAgICAgICAgJ2FycmF5JywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswLjAwMSwgMCwgMCwgMC4wMDEsIDAsIDBdXSxcbiAgWzE3LCAgICAgICAgJ0NoYXJTdHJpbmdzJywgICAgICAgICAgbmV3IENGRlBvaW50ZXIobmV3IENGRkluZGV4KSwgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCAzN10sICAnRkRTZWxlY3QnLCAgICAgICAgICAgICBuZXcgQ0ZGUG9pbnRlcihGRFNlbGVjdCksICAgICAgICAgICAgICAgbnVsbF0sXG4gIFtbMTIsIDM2XSwgICdGREFycmF5JywgICAgICAgICAgICAgIG5ldyBDRkZQb2ludGVyKG5ldyBDRkZJbmRleChGb250RGljdCkpLCBudWxsXSxcbiAgWzI0LCAgICAgICAgJ3ZzdG9yZScsICAgICAgICAgICAgICAgbmV3IENGRlBvaW50ZXIoVmFyaWF0aW9uU3RvcmUpLCAgICAgICAgIG51bGxdLFxuICBbMjUsICAgICAgICAnbWF4c3RhY2snLCAgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTkzXVxuXSk7XG5cbmxldCBDRkZUb3AgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci5maXhlZDE2LCB7XG4gIDE6IHtcbiAgICBoZHJTaXplOiAgICAgICAgICAgIHIudWludDgsXG4gICAgb2ZmU2l6ZTogICAgICAgICAgICByLnVpbnQ4LFxuICAgIG5hbWVJbmRleDogICAgICAgICAgbmV3IENGRkluZGV4KG5ldyByLlN0cmluZygnbGVuZ3RoJykpLFxuICAgIHRvcERpY3RJbmRleDogICAgICAgbmV3IENGRkluZGV4KENGRlRvcERpY3QpLFxuICAgIHN0cmluZ0luZGV4OiAgICAgICAgbmV3IENGRkluZGV4KG5ldyByLlN0cmluZygnbGVuZ3RoJykpLFxuICAgIGdsb2JhbFN1YnJJbmRleDogICAgbmV3IENGRkluZGV4XG4gIH0sXG5cbiAgMjoge1xuICAgIGhkclNpemU6ICAgICAgICAgICAgci51aW50OCxcbiAgICBsZW5ndGg6ICAgICAgICAgICAgIHIudWludDE2LFxuICAgIHRvcERpY3Q6ICAgICAgICAgICAgQ0ZGMlRvcERpY3QsXG4gICAgZ2xvYmFsU3VickluZGV4OiAgICBuZXcgQ0ZGSW5kZXhcbiAgfVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IENGRlRvcDtcbiIsICJpbXBvcnQgaXNFcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwnO1xuaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgQ0ZGT3BlcmFuZCBmcm9tICcuL0NGRk9wZXJhbmQnO1xuaW1wb3J0IHsgUHJvcGVydHlEZXNjcmlwdG9yIH0gZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDRkZEaWN0IHtcbiAgY29uc3RydWN0b3Iob3BzID0gW10pIHtcbiAgICB0aGlzLm9wcyA9IG9wcztcbiAgICB0aGlzLmZpZWxkcyA9IHt9O1xuICAgIGZvciAobGV0IGZpZWxkIG9mIG9wcykge1xuICAgICAgbGV0IGtleSA9IEFycmF5LmlzQXJyYXkoZmllbGRbMF0pID8gZmllbGRbMF1bMF0gPDwgOCB8IGZpZWxkWzBdWzFdIDogZmllbGRbMF07XG4gICAgICB0aGlzLmZpZWxkc1trZXldID0gZmllbGQ7XG4gICAgfVxuICB9XG5cbiAgZGVjb2RlT3BlcmFuZHModHlwZSwgc3RyZWFtLCByZXQsIG9wZXJhbmRzKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodHlwZSkpIHtcbiAgICAgIHJldHVybiBvcGVyYW5kcy5tYXAoKG9wLCBpKSA9PiB0aGlzLmRlY29kZU9wZXJhbmRzKHR5cGVbaV0sIHN0cmVhbSwgcmV0LCBbb3BdKSk7XG4gICAgfSBlbHNlIGlmICh0eXBlLmRlY29kZSAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gdHlwZS5kZWNvZGUoc3RyZWFtLCByZXQsIG9wZXJhbmRzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgIGNhc2UgJ251bWJlcic6XG4gICAgICAgIGNhc2UgJ29mZnNldCc6XG4gICAgICAgIGNhc2UgJ3NpZCc6XG4gICAgICAgICAgcmV0dXJuIG9wZXJhbmRzWzBdO1xuICAgICAgICBjYXNlICdib29sZWFuJzpcbiAgICAgICAgICByZXR1cm4gISFvcGVyYW5kc1swXTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gb3BlcmFuZHM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZW5jb2RlT3BlcmFuZHModHlwZSwgc3RyZWFtLCBjdHgsIG9wZXJhbmRzKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodHlwZSkpIHtcbiAgICAgIHJldHVybiBvcGVyYW5kcy5tYXAoKG9wLCBpKSA9PiB0aGlzLmVuY29kZU9wZXJhbmRzKHR5cGVbaV0sIHN0cmVhbSwgY3R4LCBvcClbMF0pO1xuICAgIH0gZWxzZSBpZiAodHlwZS5lbmNvZGUgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHR5cGUuZW5jb2RlKHN0cmVhbSwgb3BlcmFuZHMsIGN0eCk7XG4gICAgfSBlbHNlIGlmICh0eXBlb2Ygb3BlcmFuZHMgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gW29wZXJhbmRzXTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcGVyYW5kcyA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICByZXR1cm4gWytvcGVyYW5kc107XG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KG9wZXJhbmRzKSkge1xuICAgICAgcmV0dXJuIG9wZXJhbmRzO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW29wZXJhbmRzXTtcbiAgICB9XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICBsZXQgZW5kID0gc3RyZWFtLnBvcyArIHBhcmVudC5sZW5ndGg7XG4gICAgbGV0IHJldCA9IHt9O1xuICAgIGxldCBvcGVyYW5kcyA9IFtdO1xuXG4gICAgLy8gZGVmaW5lIGhpZGRlbiBwcm9wZXJ0aWVzXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMocmV0LCB7XG4gICAgICBwYXJlbnQ6ICAgICAgICAgeyB2YWx1ZTogcGFyZW50IH0sXG4gICAgICBfc3RhcnRPZmZzZXQ6ICAgeyB2YWx1ZTogc3RyZWFtLnBvcyB9XG4gICAgfSk7XG5cbiAgICAvLyBmaWxsIGluIGRlZmF1bHRzXG4gICAgZm9yIChsZXQga2V5IGluIHRoaXMuZmllbGRzKSB7XG4gICAgICBsZXQgZmllbGQgPSB0aGlzLmZpZWxkc1trZXldO1xuICAgICAgcmV0W2ZpZWxkWzFdXSA9IGZpZWxkWzNdO1xuICAgIH1cblxuICAgIHdoaWxlIChzdHJlYW0ucG9zIDwgZW5kKSB7XG4gICAgICBsZXQgYiA9IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgIGlmIChiIDwgMjgpIHtcbiAgICAgICAgaWYgKGIgPT09IDEyKSB7XG4gICAgICAgICAgYiA9IChiIDw8IDgpIHwgc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGZpZWxkID0gdGhpcy5maWVsZHNbYl07XG4gICAgICAgIGlmICghZmllbGQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gb3BlcmF0b3IgJHtifWApO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHZhbCA9IHRoaXMuZGVjb2RlT3BlcmFuZHMoZmllbGRbMl0sIHN0cmVhbSwgcmV0LCBvcGVyYW5kcyk7XG4gICAgICAgIGlmICh2YWwgIT0gbnVsbCkge1xuICAgICAgICAgIGlmICh2YWwgaW5zdGFuY2VvZiBQcm9wZXJ0eURlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyZXQsIGZpZWxkWzFdLCB2YWwpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXRbZmllbGRbMV1dID0gdmFsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIG9wZXJhbmRzID0gW107XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvcGVyYW5kcy5wdXNoKENGRk9wZXJhbmQuZGVjb2RlKHN0cmVhbSwgYikpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXQ7XG4gIH1cblxuICBzaXplKGRpY3QsIHBhcmVudCwgaW5jbHVkZVBvaW50ZXJzID0gdHJ1ZSkge1xuICAgIGxldCBjdHggPSB7XG4gICAgICBwYXJlbnQsXG4gICAgICB2YWw6IGRpY3QsXG4gICAgICBwb2ludGVyU2l6ZTogMCxcbiAgICAgIHN0YXJ0T2Zmc2V0OiBwYXJlbnQuc3RhcnRPZmZzZXQgfHwgMFxuICAgIH07XG5cbiAgICBsZXQgbGVuID0gMDtcblxuICAgIGZvciAobGV0IGsgaW4gdGhpcy5maWVsZHMpIHtcbiAgICAgIGxldCBmaWVsZCA9IHRoaXMuZmllbGRzW2tdO1xuICAgICAgbGV0IHZhbCA9IGRpY3RbZmllbGRbMV1dO1xuICAgICAgaWYgKHZhbCA9PSBudWxsIHx8IGlzRXF1YWwodmFsLCBmaWVsZFszXSkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGxldCBvcGVyYW5kcyA9IHRoaXMuZW5jb2RlT3BlcmFuZHMoZmllbGRbMl0sIG51bGwsIGN0eCwgdmFsKTtcbiAgICAgIGZvciAobGV0IG9wIG9mIG9wZXJhbmRzKSB7XG4gICAgICAgIGxlbiArPSBDRkZPcGVyYW5kLnNpemUob3ApO1xuICAgICAgfVxuXG4gICAgICBsZXQga2V5ID0gQXJyYXkuaXNBcnJheShmaWVsZFswXSkgPyBmaWVsZFswXSA6IFtmaWVsZFswXV07XG4gICAgICBsZW4gKz0ga2V5Lmxlbmd0aDtcbiAgICB9XG5cbiAgICBpZiAoaW5jbHVkZVBvaW50ZXJzKSB7XG4gICAgICBsZW4gKz0gY3R4LnBvaW50ZXJTaXplO1xuICAgIH1cblxuICAgIHJldHVybiBsZW47XG4gIH1cblxuICBlbmNvZGUoc3RyZWFtLCBkaWN0LCBwYXJlbnQpIHtcbiAgICBsZXQgY3R4ID0ge1xuICAgICAgcG9pbnRlcnM6IFtdLFxuICAgICAgc3RhcnRPZmZzZXQ6IHN0cmVhbS5wb3MsXG4gICAgICBwYXJlbnQsXG4gICAgICB2YWw6IGRpY3QsXG4gICAgICBwb2ludGVyU2l6ZTogMFxuICAgIH07XG5cbiAgICBjdHgucG9pbnRlck9mZnNldCA9IHN0cmVhbS5wb3MgKyB0aGlzLnNpemUoZGljdCwgY3R4LCBmYWxzZSk7XG5cbiAgICBmb3IgKGxldCBmaWVsZCBvZiB0aGlzLm9wcykge1xuICAgICAgbGV0IHZhbCA9IGRpY3RbZmllbGRbMV1dO1xuICAgICAgaWYgKHZhbCA9PSBudWxsIHx8IGlzRXF1YWwodmFsLCBmaWVsZFszXSkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGxldCBvcGVyYW5kcyA9IHRoaXMuZW5jb2RlT3BlcmFuZHMoZmllbGRbMl0sIHN0cmVhbSwgY3R4LCB2YWwpO1xuICAgICAgZm9yIChsZXQgb3Agb2Ygb3BlcmFuZHMpIHtcbiAgICAgICAgQ0ZGT3BlcmFuZC5lbmNvZGUoc3RyZWFtLCBvcCk7XG4gICAgICB9XG5cbiAgICAgIGxldCBrZXkgPSBBcnJheS5pc0FycmF5KGZpZWxkWzBdKSA/IGZpZWxkWzBdIDogW2ZpZWxkWzBdXTtcbiAgICAgIGZvciAobGV0IG9wIG9mIGtleSkge1xuICAgICAgICBzdHJlYW0ud3JpdGVVSW50OChvcCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGkgPSAwO1xuICAgIHdoaWxlIChpIDwgY3R4LnBvaW50ZXJzLmxlbmd0aCkge1xuICAgICAgbGV0IHB0ciA9IGN0eC5wb2ludGVyc1tpKytdO1xuICAgICAgcHRyLnR5cGUuZW5jb2RlKHN0cmVhbSwgcHRyLnZhbCwgcHRyLnBhcmVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9XG59XG4iLCAiY29uc3QgRkxPQVRfRU9GID0gMHhmO1xuY29uc3QgRkxPQVRfTE9PS1VQID0gW1xuICAnMCcsICcxJywgJzInLCAnMycsICc0JywgJzUnLCAnNicsICc3JyxcbiAgJzgnLCAnOScsICcuJywgJ0UnLCAnRS0nLCBudWxsLCAnLSdcbl07XG5cbmNvbnN0IEZMT0FUX0VOQ09ERV9MT09LVVAgPSB7XG4gICcuJzogMTAsXG4gICdFJzogMTEsXG4gICdFLSc6IDEyLFxuICAnLSc6IDE0XG59O1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDRkZPcGVyYW5kIHtcbiAgc3RhdGljIGRlY29kZShzdHJlYW0sIHZhbHVlKSB7XG4gICAgaWYgKDMyIDw9IHZhbHVlICYmIHZhbHVlIDw9IDI0Nikge1xuICAgICAgcmV0dXJuIHZhbHVlIC0gMTM5O1xuICAgIH1cblxuICAgIGlmICgyNDcgPD0gdmFsdWUgJiYgdmFsdWUgPD0gMjUwKSB7XG4gICAgICByZXR1cm4gKHZhbHVlIC0gMjQ3KSAqIDI1NiArIHN0cmVhbS5yZWFkVUludDgoKSArIDEwODtcbiAgICB9XG5cbiAgICBpZiAoMjUxIDw9IHZhbHVlICYmIHZhbHVlIDw9IDI1NCkge1xuICAgICAgcmV0dXJuIC0odmFsdWUgLSAyNTEpICogMjU2IC0gc3RyZWFtLnJlYWRVSW50OCgpIC0gMTA4O1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA9PT0gMjgpIHtcbiAgICAgIHJldHVybiBzdHJlYW0ucmVhZEludDE2QkUoKTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPT09IDI5KSB7XG4gICAgICByZXR1cm4gc3RyZWFtLnJlYWRJbnQzMkJFKCk7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlID09PSAzMCkge1xuICAgICAgbGV0IHN0ciA9ICcnO1xuICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgbGV0IGIgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG5cbiAgICAgICAgbGV0IG4xID0gYiA+PiA0O1xuICAgICAgICBpZiAobjEgPT09IEZMT0FUX0VPRikgeyBicmVhazsgfVxuICAgICAgICBzdHIgKz0gRkxPQVRfTE9PS1VQW24xXTtcblxuICAgICAgICBsZXQgbjIgPSBiICYgMTU7XG4gICAgICAgIGlmIChuMiA9PT0gRkxPQVRfRU9GKSB7IGJyZWFrOyB9XG4gICAgICAgIHN0ciArPSBGTE9BVF9MT09LVVBbbjJdO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyc2VGbG9hdChzdHIpO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc3RhdGljIHNpemUodmFsdWUpIHtcbiAgICAvLyBpZiB0aGUgdmFsdWUgbmVlZHMgdG8gYmUgZm9yY2VkIHRvIHRoZSBsYXJnZXN0IHNpemUgKDMyIGJpdClcbiAgICAvLyBlLmcuIGZvciB1bmtub3duIHBvaW50ZXJzLCBzZXQgdG8gMzI3NjhcbiAgICBpZiAodmFsdWUuZm9yY2VMYXJnZSkge1xuICAgICAgdmFsdWUgPSAzMjc2ODtcbiAgICB9XG5cbiAgICBpZiAoKHZhbHVlIHwgMCkgIT09IHZhbHVlKSB7IC8vIGZsb2F0aW5nIHBvaW50XG4gICAgICBsZXQgc3RyID0gJycgKyB2YWx1ZTtcbiAgICAgIHJldHVybiAxICsgTWF0aC5jZWlsKChzdHIubGVuZ3RoICsgMSkgLyAyKTtcblxuICAgIH0gZWxzZSBpZiAoLTEwNyA8PSB2YWx1ZSAmJiB2YWx1ZSA8PSAxMDcpIHtcbiAgICAgIHJldHVybiAxO1xuXG4gICAgfSBlbHNlIGlmICgxMDggPD0gdmFsdWUgJiYgdmFsdWUgPD0gMTEzMSB8fCAtMTEzMSA8PSB2YWx1ZSAmJiB2YWx1ZSA8PSAtMTA4KSB7XG4gICAgICByZXR1cm4gMjtcblxuICAgIH0gZWxzZSBpZiAoLTMyNzY4IDw9IHZhbHVlICYmIHZhbHVlIDw9IDMyNzY3KSB7XG4gICAgICByZXR1cm4gMztcblxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gNTtcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgZW5jb2RlKHN0cmVhbSwgdmFsdWUpIHtcbiAgICAvLyBpZiB0aGUgdmFsdWUgbmVlZHMgdG8gYmUgZm9yY2VkIHRvIHRoZSBsYXJnZXN0IHNpemUgKDMyIGJpdClcbiAgICAvLyBlLmcuIGZvciB1bmtub3duIHBvaW50ZXJzLCBzYXZlIHRoZSBvbGQgdmFsdWUgYW5kIHNldCB0byAzMjc2OFxuICAgIGxldCB2YWwgPSBOdW1iZXIodmFsdWUpO1xuXG4gICAgaWYgKHZhbHVlLmZvcmNlTGFyZ2UpIHtcbiAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KDI5KTtcbiAgICAgIHJldHVybiBzdHJlYW0ud3JpdGVJbnQzMkJFKHZhbCk7XG5cbiAgICB9IGVsc2UgaWYgKCh2YWwgfCAwKSAhPT0gdmFsKSB7IC8vIGZsb2F0aW5nIHBvaW50XG4gICAgICBzdHJlYW0ud3JpdGVVSW50OCgzMCk7XG5cbiAgICAgIGxldCBzdHIgPSAnJyArIHZhbDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICAgIGxldCBjMSA9IHN0cltpXTtcbiAgICAgICAgbGV0IG4xID0gRkxPQVRfRU5DT0RFX0xPT0tVUFtjMV0gfHwgK2MxO1xuXG4gICAgICAgIGlmIChpID09PSBzdHIubGVuZ3RoIC0gMSkge1xuICAgICAgICAgIHZhciBuMiA9IEZMT0FUX0VPRjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsZXQgYzIgPSBzdHJbaSArIDFdO1xuICAgICAgICAgIHZhciBuMiA9IEZMT0FUX0VOQ09ERV9MT09LVVBbYzJdIHx8ICtjMjtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KChuMSA8PCA0KSB8IChuMiAmIDE1KSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChuMiAhPT0gRkxPQVRfRU9GKSB7XG4gICAgICAgIHJldHVybiBzdHJlYW0ud3JpdGVVSW50OCgoRkxPQVRfRU9GIDw8IDQpKTtcbiAgICAgIH1cblxuICAgIH0gZWxzZSBpZiAoLTEwNyA8PSB2YWwgJiYgdmFsIDw9IDEwNykge1xuICAgICAgcmV0dXJuIHN0cmVhbS53cml0ZVVJbnQ4KHZhbCArIDEzOSk7XG5cbiAgICB9IGVsc2UgaWYgKDEwOCA8PSB2YWwgJiYgdmFsIDw9IDExMzEpIHtcbiAgICAgIHZhbCAtPSAxMDg7XG4gICAgICBzdHJlYW0ud3JpdGVVSW50OCgodmFsID4+IDgpICsgMjQ3KTtcbiAgICAgIHJldHVybiBzdHJlYW0ud3JpdGVVSW50OCh2YWwgJiAweGZmKTtcblxuICAgIH0gZWxzZSBpZiAoLTExMzEgPD0gdmFsICYmIHZhbCA8PSAtMTA4KSB7XG4gICAgICB2YWwgPSAtdmFsIC0gMTA4O1xuICAgICAgc3RyZWFtLndyaXRlVUludDgoKHZhbCA+PiA4KSArIDI1MSk7XG4gICAgICByZXR1cm4gc3RyZWFtLndyaXRlVUludDgodmFsICYgMHhmZik7XG5cbiAgICB9IGVsc2UgaWYgKC0zMjc2OCA8PSB2YWwgJiYgdmFsIDw9IDMyNzY3KSB7XG4gICAgICBzdHJlYW0ud3JpdGVVSW50OCgyOCk7XG4gICAgICByZXR1cm4gc3RyZWFtLndyaXRlSW50MTZCRSh2YWwpO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KDI5KTtcbiAgICAgIHJldHVybiBzdHJlYW0ud3JpdGVJbnQzMkJFKHZhbCk7XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENGRlBvaW50ZXIgZXh0ZW5kcyByLlBvaW50ZXIge1xuICBjb25zdHJ1Y3Rvcih0eXBlLCBvcHRpb25zID0ge30pIHtcbiAgICBpZiAob3B0aW9ucy50eXBlID09IG51bGwpIHtcbiAgICAgIG9wdGlvbnMudHlwZSA9ICdnbG9iYWwnO1xuICAgIH1cblxuICAgIHN1cGVyKG51bGwsIHR5cGUsIG9wdGlvbnMpO1xuICB9XG5cbiAgZGVjb2RlKHN0cmVhbSwgcGFyZW50LCBvcGVyYW5kcykge1xuICAgIHRoaXMub2Zmc2V0VHlwZSA9IHtcbiAgICAgIGRlY29kZTogKCkgPT4gb3BlcmFuZHNbMF1cbiAgICB9O1xuXG4gICAgcmV0dXJuIHN1cGVyLmRlY29kZShzdHJlYW0sIHBhcmVudCwgb3BlcmFuZHMpO1xuICB9XG5cbiAgZW5jb2RlKHN0cmVhbSwgdmFsdWUsIGN0eCkge1xuICAgIGlmICghc3RyZWFtKSB7XG4gICAgICAvLyBjb21wdXRlIHRoZSBzaXplIChzbyBjdHgucG9pbnRlclNpemUgaXMgY29ycmVjdClcbiAgICAgIHRoaXMub2Zmc2V0VHlwZSA9IHtcbiAgICAgICAgc2l6ZTogKCkgPT4gMFxuICAgICAgfTtcblxuICAgICAgdGhpcy5zaXplKHZhbHVlLCBjdHgpO1xuICAgICAgcmV0dXJuIFtuZXcgUHRyKDApXTtcbiAgICB9XG5cbiAgICBsZXQgcHRyID0gbnVsbDtcbiAgICB0aGlzLm9mZnNldFR5cGUgPSB7XG4gICAgICBlbmNvZGU6IChzdHJlYW0sIHZhbCkgPT4gcHRyID0gdmFsXG4gICAgfTtcblxuICAgIHN1cGVyLmVuY29kZShzdHJlYW0sIHZhbHVlLCBjdHgpO1xuICAgIHJldHVybiBbbmV3IFB0cihwdHIpXTtcbiAgfVxufVxuXG5jbGFzcyBQdHIge1xuICBjb25zdHJ1Y3Rvcih2YWwpIHtcbiAgICB0aGlzLnZhbCA9IHZhbDtcbiAgICB0aGlzLmZvcmNlTGFyZ2UgPSB0cnVlO1xuICB9XG5cbiAgdmFsdWVPZigpIHtcbiAgICByZXR1cm4gdGhpcy52YWw7XG4gIH1cbn1cbiIsICJpbXBvcnQgQ0ZGRGljdCBmcm9tICcuL0NGRkRpY3QnO1xuaW1wb3J0IENGRkluZGV4IGZyb20gJy4vQ0ZGSW5kZXgnO1xuaW1wb3J0IENGRlBvaW50ZXIgZnJvbSAnLi9DRkZQb2ludGVyJztcblxuY2xhc3MgQ0ZGQmxlbmRPcCB7XG4gIHN0YXRpYyBkZWNvZGUoc3RyZWFtLCBwYXJlbnQsIG9wZXJhbmRzKSB7XG4gICAgbGV0IG51bUJsZW5kcyA9IG9wZXJhbmRzLnBvcCgpO1xuXG4gICAgLy8gVE9ETzogYWN0dWFsbHkgYmxlbmQuIEZvciBub3cganVzdCBjb25zdW1lIHRoZSBkZWx0YXNcbiAgICAvLyBzaW5jZSB3ZSBkb24ndCB1c2UgYW55IG9mIHRoZSB2YWx1ZXMgYW55d2F5LlxuICAgIHdoaWxlIChvcGVyYW5kcy5sZW5ndGggPiBudW1CbGVuZHMpIHtcbiAgICAgIG9wZXJhbmRzLnBvcCgpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBuZXcgQ0ZGRGljdChbXG4gIC8vIGtleSAgICAgICBuYW1lICAgICAgICAgICAgICAgICAgICB0eXBlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdFxuICBbNiwgICAgICAgICAnQmx1ZVZhbHVlcycsICAgICAgICAgICAnZGVsdGEnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbNywgICAgICAgICAnT3RoZXJCbHVlcycsICAgICAgICAgICAnZGVsdGEnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbOCwgICAgICAgICAnRmFtaWx5Qmx1ZXMnLCAgICAgICAgICAnZGVsdGEnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbOSwgICAgICAgICAnRmFtaWx5T3RoZXJCbHVlcycsICAgICAnZGVsdGEnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bGxdLFxuICBbWzEyLCA5XSwgICAnQmx1ZVNjYWxlJywgICAgICAgICAgICAnbnVtYmVyJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDM5NjI1XSxcbiAgW1sxMiwgMTBdLCAgJ0JsdWVTaGlmdCcsICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA3XSxcbiAgW1sxMiwgMTFdLCAgJ0JsdWVGdXp6JywgICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxXSxcbiAgWzEwLCAgICAgICAgJ1N0ZEhXJywgICAgICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgWzExLCAgICAgICAgJ1N0ZFZXJywgICAgICAgICAgICAgICAgJ251bWJlcicsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMTJdLCAgJ1N0ZW1TbmFwSCcsICAgICAgICAgICAgJ2RlbHRhJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMTNdLCAgJ1N0ZW1TbmFwVicsICAgICAgICAgICAgJ2RlbHRhJywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxsXSxcbiAgW1sxMiwgMTRdLCAgJ0ZvcmNlQm9sZCcsICAgICAgICAgICAgJ2Jvb2xlYW4nLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZV0sXG4gIFtbMTIsIDE3XSwgICdMYW5ndWFnZUdyb3VwJywgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFtbMTIsIDE4XSwgICdFeHBhbnNpb25GYWN0b3InLCAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wNl0sXG4gIFtbMTIsIDE5XSwgICdpbml0aWFsUmFuZG9tU2VlZCcsICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFsyMCwgICAgICAgICdkZWZhdWx0V2lkdGhYJywgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFsyMSwgICAgICAgICdub21pbmFsV2lkdGhYJywgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFsyMiwgICAgICAgICd2c2luZGV4JywgICAgICAgICAgICAgICdudW1iZXInLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMF0sXG4gIFsyMywgICAgICAgICdibGVuZCcsICAgICAgICAgICAgICAgIENGRkJsZW5kT3AsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVsbF0sXG4gIFsxOSwgICAgICAgICdTdWJycycsICAgICAgICAgICAgICAgIG5ldyBDRkZQb2ludGVyKG5ldyBDRkZJbmRleCwge3R5cGU6ICdsb2NhbCd9KSwgbnVsbF1cbl0pO1xuIiwgIi8vIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gQXBwZW5kaXggQSBvZiB0aGUgQ0ZGIHNwZWNpZmljYXRpb247IGRvXG4vLyBub3QgZWRpdC4gTGVuZ3RoIHNob3VsZCBiZSAzOTEuXG5leHBvcnQgZGVmYXVsdCBbXG4gIFwiLm5vdGRlZlwiLCBcInNwYWNlXCIsIFwiZXhjbGFtXCIsIFwicXVvdGVkYmxcIiwgXCJudW1iZXJzaWduXCIsIFwiZG9sbGFyXCIsXG4gIFwicGVyY2VudFwiLCBcImFtcGVyc2FuZFwiLCBcInF1b3RlcmlnaHRcIiwgXCJwYXJlbmxlZnRcIiwgXCJwYXJlbnJpZ2h0XCIsXG4gIFwiYXN0ZXJpc2tcIiwgXCJwbHVzXCIsIFwiY29tbWFcIiwgXCJoeXBoZW5cIiwgXCJwZXJpb2RcIiwgXCJzbGFzaFwiLCBcInplcm9cIiwgXCJvbmVcIixcbiAgXCJ0d29cIiwgXCJ0aHJlZVwiLCBcImZvdXJcIiwgXCJmaXZlXCIsIFwic2l4XCIsIFwic2V2ZW5cIiwgXCJlaWdodFwiLCBcIm5pbmVcIiwgXCJjb2xvblwiLFxuICBcInNlbWljb2xvblwiLCBcImxlc3NcIiwgXCJlcXVhbFwiLCBcImdyZWF0ZXJcIiwgXCJxdWVzdGlvblwiLCBcImF0XCIsIFwiQVwiLCBcIkJcIiwgXCJDXCIsXG4gIFwiRFwiLCBcIkVcIiwgXCJGXCIsIFwiR1wiLCBcIkhcIiwgXCJJXCIsIFwiSlwiLCBcIktcIiwgXCJMXCIsIFwiTVwiLCBcIk5cIiwgXCJPXCIsIFwiUFwiLCBcIlFcIiwgXCJSXCIsXG4gIFwiU1wiLCBcIlRcIiwgXCJVXCIsIFwiVlwiLCBcIldcIiwgXCJYXCIsIFwiWVwiLCBcIlpcIiwgXCJicmFja2V0bGVmdFwiLCBcImJhY2tzbGFzaFwiLFxuICBcImJyYWNrZXRyaWdodFwiLCBcImFzY2lpY2lyY3VtXCIsIFwidW5kZXJzY29yZVwiLCBcInF1b3RlbGVmdFwiLCBcImFcIiwgXCJiXCIsIFwiY1wiLFxuICBcImRcIiwgXCJlXCIsIFwiZlwiLCBcImdcIiwgXCJoXCIsIFwiaVwiLCBcImpcIiwgXCJrXCIsIFwibFwiLCBcIm1cIiwgXCJuXCIsIFwib1wiLCBcInBcIiwgXCJxXCIsIFwiclwiLFxuICBcInNcIiwgXCJ0XCIsIFwidVwiLCBcInZcIiwgXCJ3XCIsIFwieFwiLCBcInlcIiwgXCJ6XCIsIFwiYnJhY2VsZWZ0XCIsIFwiYmFyXCIsIFwiYnJhY2VyaWdodFwiLFxuICBcImFzY2lpdGlsZGVcIiwgXCJleGNsYW1kb3duXCIsIFwiY2VudFwiLCBcInN0ZXJsaW5nXCIsIFwiZnJhY3Rpb25cIiwgXCJ5ZW5cIixcbiAgXCJmbG9yaW5cIiwgXCJzZWN0aW9uXCIsIFwiY3VycmVuY3lcIiwgXCJxdW90ZXNpbmdsZVwiLCBcInF1b3RlZGJsbGVmdFwiLFxuICBcImd1aWxsZW1vdGxlZnRcIiwgXCJndWlsc2luZ2xsZWZ0XCIsIFwiZ3VpbHNpbmdscmlnaHRcIiwgXCJmaVwiLCBcImZsXCIsIFwiZW5kYXNoXCIsXG4gIFwiZGFnZ2VyXCIsIFwiZGFnZ2VyZGJsXCIsIFwicGVyaW9kY2VudGVyZWRcIiwgXCJwYXJhZ3JhcGhcIiwgXCJidWxsZXRcIixcbiAgXCJxdW90ZXNpbmdsYmFzZVwiLCBcInF1b3RlZGJsYmFzZVwiLCBcInF1b3RlZGJscmlnaHRcIiwgXCJndWlsbGVtb3RyaWdodFwiLFxuICBcImVsbGlwc2lzXCIsIFwicGVydGhvdXNhbmRcIiwgXCJxdWVzdGlvbmRvd25cIiwgXCJncmF2ZVwiLCBcImFjdXRlXCIsIFwiY2lyY3VtZmxleFwiLFxuICBcInRpbGRlXCIsIFwibWFjcm9uXCIsIFwiYnJldmVcIiwgXCJkb3RhY2NlbnRcIiwgXCJkaWVyZXNpc1wiLCBcInJpbmdcIiwgXCJjZWRpbGxhXCIsXG4gIFwiaHVuZ2FydW1sYXV0XCIsIFwib2dvbmVrXCIsIFwiY2Fyb25cIiwgXCJlbWRhc2hcIiwgXCJBRVwiLCBcIm9yZGZlbWluaW5lXCIsIFwiTHNsYXNoXCIsXG4gIFwiT3NsYXNoXCIsIFwiT0VcIiwgXCJvcmRtYXNjdWxpbmVcIiwgXCJhZVwiLCBcImRvdGxlc3NpXCIsIFwibHNsYXNoXCIsIFwib3NsYXNoXCIsIFwib2VcIixcbiAgXCJnZXJtYW5kYmxzXCIsIFwib25lc3VwZXJpb3JcIiwgXCJsb2dpY2Fsbm90XCIsIFwibXVcIiwgXCJ0cmFkZW1hcmtcIiwgXCJFdGhcIixcbiAgXCJvbmVoYWxmXCIsIFwicGx1c21pbnVzXCIsIFwiVGhvcm5cIiwgXCJvbmVxdWFydGVyXCIsIFwiZGl2aWRlXCIsIFwiYnJva2VuYmFyXCIsXG4gIFwiZGVncmVlXCIsIFwidGhvcm5cIiwgXCJ0aHJlZXF1YXJ0ZXJzXCIsIFwidHdvc3VwZXJpb3JcIiwgXCJyZWdpc3RlcmVkXCIsIFwibWludXNcIixcbiAgXCJldGhcIiwgXCJtdWx0aXBseVwiLCBcInRocmVlc3VwZXJpb3JcIiwgXCJjb3B5cmlnaHRcIiwgXCJBYWN1dGVcIiwgXCJBY2lyY3VtZmxleFwiLFxuICBcIkFkaWVyZXNpc1wiLCBcIkFncmF2ZVwiLCBcIkFyaW5nXCIsIFwiQXRpbGRlXCIsIFwiQ2NlZGlsbGFcIiwgXCJFYWN1dGVcIixcbiAgXCJFY2lyY3VtZmxleFwiLCBcIkVkaWVyZXNpc1wiLCBcIkVncmF2ZVwiLCBcIklhY3V0ZVwiLCBcIkljaXJjdW1mbGV4XCIsIFwiSWRpZXJlc2lzXCIsXG4gIFwiSWdyYXZlXCIsIFwiTnRpbGRlXCIsIFwiT2FjdXRlXCIsIFwiT2NpcmN1bWZsZXhcIiwgXCJPZGllcmVzaXNcIiwgXCJPZ3JhdmVcIixcbiAgXCJPdGlsZGVcIiwgXCJTY2Fyb25cIiwgXCJVYWN1dGVcIiwgXCJVY2lyY3VtZmxleFwiLCBcIlVkaWVyZXNpc1wiLCBcIlVncmF2ZVwiLFxuICBcIllhY3V0ZVwiLCBcIllkaWVyZXNpc1wiLCBcIlpjYXJvblwiLCBcImFhY3V0ZVwiLCBcImFjaXJjdW1mbGV4XCIsIFwiYWRpZXJlc2lzXCIsXG4gIFwiYWdyYXZlXCIsIFwiYXJpbmdcIiwgXCJhdGlsZGVcIiwgXCJjY2VkaWxsYVwiLCBcImVhY3V0ZVwiLCBcImVjaXJjdW1mbGV4XCIsXG4gIFwiZWRpZXJlc2lzXCIsIFwiZWdyYXZlXCIsIFwiaWFjdXRlXCIsIFwiaWNpcmN1bWZsZXhcIiwgXCJpZGllcmVzaXNcIiwgXCJpZ3JhdmVcIixcbiAgXCJudGlsZGVcIiwgXCJvYWN1dGVcIiwgXCJvY2lyY3VtZmxleFwiLCBcIm9kaWVyZXNpc1wiLCBcIm9ncmF2ZVwiLCBcIm90aWxkZVwiLFxuICBcInNjYXJvblwiLCBcInVhY3V0ZVwiLCBcInVjaXJjdW1mbGV4XCIsIFwidWRpZXJlc2lzXCIsIFwidWdyYXZlXCIsIFwieWFjdXRlXCIsXG4gIFwieWRpZXJlc2lzXCIsIFwiemNhcm9uXCIsIFwiZXhjbGFtc21hbGxcIiwgXCJIdW5nYXJ1bWxhdXRzbWFsbFwiLFxuICBcImRvbGxhcm9sZHN0eWxlXCIsIFwiZG9sbGFyc3VwZXJpb3JcIiwgXCJhbXBlcnNhbmRzbWFsbFwiLCBcIkFjdXRlc21hbGxcIixcbiAgXCJwYXJlbmxlZnRzdXBlcmlvclwiLCBcInBhcmVucmlnaHRzdXBlcmlvclwiLCBcInR3b2RvdGVubGVhZGVyXCIsXG4gIFwib25lZG90ZW5sZWFkZXJcIiwgXCJ6ZXJvb2xkc3R5bGVcIiwgXCJvbmVvbGRzdHlsZVwiLCBcInR3b29sZHN0eWxlXCIsXG4gIFwidGhyZWVvbGRzdHlsZVwiLCBcImZvdXJvbGRzdHlsZVwiLCBcImZpdmVvbGRzdHlsZVwiLCBcInNpeG9sZHN0eWxlXCIsXG4gIFwic2V2ZW5vbGRzdHlsZVwiLCBcImVpZ2h0b2xkc3R5bGVcIiwgXCJuaW5lb2xkc3R5bGVcIiwgXCJjb21tYXN1cGVyaW9yXCIsXG4gIFwidGhyZWVxdWFydGVyc2VtZGFzaFwiLCBcInBlcmlvZHN1cGVyaW9yXCIsIFwicXVlc3Rpb25zbWFsbFwiLCBcImFzdXBlcmlvclwiLFxuICBcImJzdXBlcmlvclwiLCBcImNlbnRzdXBlcmlvclwiLCBcImRzdXBlcmlvclwiLCBcImVzdXBlcmlvclwiLCBcImlzdXBlcmlvclwiLFxuICBcImxzdXBlcmlvclwiLCBcIm1zdXBlcmlvclwiLCBcIm5zdXBlcmlvclwiLCBcIm9zdXBlcmlvclwiLCBcInJzdXBlcmlvclwiLFxuICBcInNzdXBlcmlvclwiLCBcInRzdXBlcmlvclwiLCBcImZmXCIsIFwiZmZpXCIsIFwiZmZsXCIsIFwicGFyZW5sZWZ0aW5mZXJpb3JcIixcbiAgXCJwYXJlbnJpZ2h0aW5mZXJpb3JcIiwgXCJDaXJjdW1mbGV4c21hbGxcIiwgXCJoeXBoZW5zdXBlcmlvclwiLCBcIkdyYXZlc21hbGxcIixcbiAgXCJBc21hbGxcIiwgXCJCc21hbGxcIiwgXCJDc21hbGxcIiwgXCJEc21hbGxcIiwgXCJFc21hbGxcIiwgXCJGc21hbGxcIiwgXCJHc21hbGxcIixcbiAgXCJIc21hbGxcIiwgXCJJc21hbGxcIiwgXCJKc21hbGxcIiwgXCJLc21hbGxcIiwgXCJMc21hbGxcIiwgXCJNc21hbGxcIiwgXCJOc21hbGxcIixcbiAgXCJPc21hbGxcIiwgXCJQc21hbGxcIiwgXCJRc21hbGxcIiwgXCJSc21hbGxcIiwgXCJTc21hbGxcIiwgXCJUc21hbGxcIiwgXCJVc21hbGxcIixcbiAgXCJWc21hbGxcIiwgXCJXc21hbGxcIiwgXCJYc21hbGxcIiwgXCJZc21hbGxcIiwgXCJac21hbGxcIiwgXCJjb2xvbm1vbmV0YXJ5XCIsXG4gIFwib25lZml0dGVkXCIsIFwicnVwaWFoXCIsIFwiVGlsZGVzbWFsbFwiLCBcImV4Y2xhbWRvd25zbWFsbFwiLCBcImNlbnRvbGRzdHlsZVwiLFxuICBcIkxzbGFzaHNtYWxsXCIsIFwiU2Nhcm9uc21hbGxcIiwgXCJaY2Fyb25zbWFsbFwiLCBcIkRpZXJlc2lzc21hbGxcIiwgXCJCcmV2ZXNtYWxsXCIsXG4gIFwiQ2Fyb25zbWFsbFwiLCBcIkRvdGFjY2VudHNtYWxsXCIsIFwiTWFjcm9uc21hbGxcIiwgXCJmaWd1cmVkYXNoXCIsXG4gIFwiaHlwaGVuaW5mZXJpb3JcIiwgXCJPZ29uZWtzbWFsbFwiLCBcIlJpbmdzbWFsbFwiLCBcIkNlZGlsbGFzbWFsbFwiLFxuICBcInF1ZXN0aW9uZG93bnNtYWxsXCIsIFwib25lZWlnaHRoXCIsIFwidGhyZWVlaWdodGhzXCIsIFwiZml2ZWVpZ2h0aHNcIixcbiAgXCJzZXZlbmVpZ2h0aHNcIiwgXCJvbmV0aGlyZFwiLCBcInR3b3RoaXJkc1wiLCBcInplcm9zdXBlcmlvclwiLCBcImZvdXJzdXBlcmlvclwiLFxuICBcImZpdmVzdXBlcmlvclwiLCBcInNpeHN1cGVyaW9yXCIsIFwic2V2ZW5zdXBlcmlvclwiLCBcImVpZ2h0c3VwZXJpb3JcIixcbiAgXCJuaW5lc3VwZXJpb3JcIiwgXCJ6ZXJvaW5mZXJpb3JcIiwgXCJvbmVpbmZlcmlvclwiLCBcInR3b2luZmVyaW9yXCIsXG4gIFwidGhyZWVpbmZlcmlvclwiLCBcImZvdXJpbmZlcmlvclwiLCBcImZpdmVpbmZlcmlvclwiLCBcInNpeGluZmVyaW9yXCIsXG4gIFwic2V2ZW5pbmZlcmlvclwiLCBcImVpZ2h0aW5mZXJpb3JcIiwgXCJuaW5laW5mZXJpb3JcIiwgXCJjZW50aW5mZXJpb3JcIixcbiAgXCJkb2xsYXJpbmZlcmlvclwiLCBcInBlcmlvZGluZmVyaW9yXCIsIFwiY29tbWFpbmZlcmlvclwiLCBcIkFncmF2ZXNtYWxsXCIsXG4gIFwiQWFjdXRlc21hbGxcIiwgXCJBY2lyY3VtZmxleHNtYWxsXCIsIFwiQXRpbGRlc21hbGxcIiwgXCJBZGllcmVzaXNzbWFsbFwiLFxuICBcIkFyaW5nc21hbGxcIiwgXCJBRXNtYWxsXCIsIFwiQ2NlZGlsbGFzbWFsbFwiLCBcIkVncmF2ZXNtYWxsXCIsIFwiRWFjdXRlc21hbGxcIixcbiAgXCJFY2lyY3VtZmxleHNtYWxsXCIsIFwiRWRpZXJlc2lzc21hbGxcIiwgXCJJZ3JhdmVzbWFsbFwiLCBcIklhY3V0ZXNtYWxsXCIsXG4gIFwiSWNpcmN1bWZsZXhzbWFsbFwiLCBcIklkaWVyZXNpc3NtYWxsXCIsIFwiRXRoc21hbGxcIiwgXCJOdGlsZGVzbWFsbFwiLFxuICBcIk9ncmF2ZXNtYWxsXCIsIFwiT2FjdXRlc21hbGxcIiwgXCJPY2lyY3VtZmxleHNtYWxsXCIsIFwiT3RpbGRlc21hbGxcIixcbiAgXCJPZGllcmVzaXNzbWFsbFwiLCBcIk9Fc21hbGxcIiwgXCJPc2xhc2hzbWFsbFwiLCBcIlVncmF2ZXNtYWxsXCIsIFwiVWFjdXRlc21hbGxcIixcbiAgXCJVY2lyY3VtZmxleHNtYWxsXCIsIFwiVWRpZXJlc2lzc21hbGxcIiwgXCJZYWN1dGVzbWFsbFwiLCBcIlRob3Juc21hbGxcIixcbiAgXCJZZGllcmVzaXNzbWFsbFwiLCBcIjAwMS4wMDBcIiwgXCIwMDEuMDAxXCIsIFwiMDAxLjAwMlwiLCBcIjAwMS4wMDNcIiwgXCJCbGFja1wiLFxuICBcIkJvbGRcIiwgXCJCb29rXCIsIFwiTGlnaHRcIiwgXCJNZWRpdW1cIiwgXCJSZWd1bGFyXCIsIFwiUm9tYW5cIiwgXCJTZW1pYm9sZFwiXG5dO1xuIiwgImV4cG9ydCBsZXQgU3RhbmRhcmRFbmNvZGluZyA9IFtcbiAgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsXG4gICcnLCAnJywgJycsICcnLCAnc3BhY2UnLCAnZXhjbGFtJywgJ3F1b3RlZGJsJywgJ251bWJlcnNpZ24nLCAnZG9sbGFyJywgJ3BlcmNlbnQnLCAnYW1wZXJzYW5kJywgJ3F1b3RlcmlnaHQnLFxuICAncGFyZW5sZWZ0JywgJ3BhcmVucmlnaHQnLCAnYXN0ZXJpc2snLCAncGx1cycsICdjb21tYScsICdoeXBoZW4nLCAncGVyaW9kJywgJ3NsYXNoJywgJ3plcm8nLCAnb25lJywgJ3R3bycsXG4gICd0aHJlZScsICdmb3VyJywgJ2ZpdmUnLCAnc2l4JywgJ3NldmVuJywgJ2VpZ2h0JywgJ25pbmUnLCAnY29sb24nLCAnc2VtaWNvbG9uJywgJ2xlc3MnLCAnZXF1YWwnLCAnZ3JlYXRlcicsXG4gICdxdWVzdGlvbicsICdhdCcsICdBJywgJ0InLCAnQycsICdEJywgJ0UnLCAnRicsICdHJywgJ0gnLCAnSScsICdKJywgJ0snLCAnTCcsICdNJywgJ04nLCAnTycsICdQJywgJ1EnLCAnUicsICdTJyxcbiAgJ1QnLCAnVScsICdWJywgJ1cnLCAnWCcsICdZJywgJ1onLCAnYnJhY2tldGxlZnQnLCAnYmFja3NsYXNoJywgJ2JyYWNrZXRyaWdodCcsICdhc2NpaWNpcmN1bScsICd1bmRlcnNjb3JlJyxcbiAgJ3F1b3RlbGVmdCcsICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicsICdnJywgJ2gnLCAnaScsICdqJywgJ2snLCAnbCcsICdtJywgJ24nLCAnbycsICdwJywgJ3EnLCAncicsICdzJywgJ3QnLFxuICAndScsICd2JywgJ3cnLCAneCcsICd5JywgJ3onLCAnYnJhY2VsZWZ0JywgJ2JhcicsICdicmFjZXJpZ2h0JywgJ2FzY2lpdGlsZGUnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsXG4gICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyxcbiAgJ2V4Y2xhbWRvd24nLCAnY2VudCcsICdzdGVybGluZycsICdmcmFjdGlvbicsICd5ZW4nLCAnZmxvcmluJywgJ3NlY3Rpb24nLCAnY3VycmVuY3knLCAncXVvdGVzaW5nbGUnLFxuICAncXVvdGVkYmxsZWZ0JywgJ2d1aWxsZW1vdGxlZnQnLCAnZ3VpbHNpbmdsbGVmdCcsICdndWlsc2luZ2xyaWdodCcsICdmaScsICdmbCcsICcnLCAnZW5kYXNoJywgJ2RhZ2dlcicsXG4gICdkYWdnZXJkYmwnLCAncGVyaW9kY2VudGVyZWQnLCAnJywgJ3BhcmFncmFwaCcsICdidWxsZXQnLCAncXVvdGVzaW5nbGJhc2UnLCAncXVvdGVkYmxiYXNlJywgJ3F1b3RlZGJscmlnaHQnLFxuICAnZ3VpbGxlbW90cmlnaHQnLCAnZWxsaXBzaXMnLCAncGVydGhvdXNhbmQnLCAnJywgJ3F1ZXN0aW9uZG93bicsICcnLCAnZ3JhdmUnLCAnYWN1dGUnLCAnY2lyY3VtZmxleCcsICd0aWxkZScsXG4gICdtYWNyb24nLCAnYnJldmUnLCAnZG90YWNjZW50JywgJ2RpZXJlc2lzJywgJycsICdyaW5nJywgJ2NlZGlsbGEnLCAnJywgJ2h1bmdhcnVtbGF1dCcsICdvZ29uZWsnLCAnY2Fyb24nLFxuICAnZW1kYXNoJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICdBRScsICcnLCAnb3JkZmVtaW5pbmUnLCAnJywgJycsICcnLFxuICAnJywgJ0xzbGFzaCcsICdPc2xhc2gnLCAnT0UnLCAnb3JkbWFzY3VsaW5lJywgJycsICcnLCAnJywgJycsICcnLCAnYWUnLCAnJywgJycsICcnLCAnZG90bGVzc2knLCAnJywgJycsXG4gICdsc2xhc2gnLCAnb3NsYXNoJywgJ29lJywgJ2dlcm1hbmRibHMnXG5dO1xuXG5leHBvcnQgbGV0IEV4cGVydEVuY29kaW5nID0gW1xuICAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyxcbiAgJycsICcnLCAnJywgJycsICdzcGFjZScsICdleGNsYW1zbWFsbCcsICdIdW5nYXJ1bWxhdXRzbWFsbCcsICcnLCAnZG9sbGFyb2xkc3R5bGUnLCAnZG9sbGFyc3VwZXJpb3InLFxuICAnYW1wZXJzYW5kc21hbGwnLCAnQWN1dGVzbWFsbCcsICdwYXJlbmxlZnRzdXBlcmlvcicsICdwYXJlbnJpZ2h0c3VwZXJpb3InLCAndHdvZG90ZW5sZWFkZXInLCAnb25lZG90ZW5sZWFkZXInLFxuICAnY29tbWEnLCAnaHlwaGVuJywgJ3BlcmlvZCcsICdmcmFjdGlvbicsICd6ZXJvb2xkc3R5bGUnLCAnb25lb2xkc3R5bGUnLCAndHdvb2xkc3R5bGUnLCAndGhyZWVvbGRzdHlsZScsXG4gICdmb3Vyb2xkc3R5bGUnLCAnZml2ZW9sZHN0eWxlJywgJ3NpeG9sZHN0eWxlJywgJ3NldmVub2xkc3R5bGUnLCAnZWlnaHRvbGRzdHlsZScsICduaW5lb2xkc3R5bGUnLCAnY29sb24nLFxuICAnc2VtaWNvbG9uJywgJ2NvbW1hc3VwZXJpb3InLCAndGhyZWVxdWFydGVyc2VtZGFzaCcsICdwZXJpb2RzdXBlcmlvcicsICdxdWVzdGlvbnNtYWxsJywgJycsICdhc3VwZXJpb3InLFxuICAnYnN1cGVyaW9yJywgJ2NlbnRzdXBlcmlvcicsICdkc3VwZXJpb3InLCAnZXN1cGVyaW9yJywgJycsICcnLCAnaXN1cGVyaW9yJywgJycsICcnLCAnbHN1cGVyaW9yJywgJ21zdXBlcmlvcicsXG4gICduc3VwZXJpb3InLCAnb3N1cGVyaW9yJywgJycsICcnLCAncnN1cGVyaW9yJywgJ3NzdXBlcmlvcicsICd0c3VwZXJpb3InLCAnJywgJ2ZmJywgJ2ZpJywgJ2ZsJywgJ2ZmaScsICdmZmwnLFxuICAncGFyZW5sZWZ0aW5mZXJpb3InLCAnJywgJ3BhcmVucmlnaHRpbmZlcmlvcicsICdDaXJjdW1mbGV4c21hbGwnLCAnaHlwaGVuc3VwZXJpb3InLCAnR3JhdmVzbWFsbCcsICdBc21hbGwnLFxuICAnQnNtYWxsJywgJ0NzbWFsbCcsICdEc21hbGwnLCAnRXNtYWxsJywgJ0ZzbWFsbCcsICdHc21hbGwnLCAnSHNtYWxsJywgJ0lzbWFsbCcsICdKc21hbGwnLCAnS3NtYWxsJywgJ0xzbWFsbCcsXG4gICdNc21hbGwnLCAnTnNtYWxsJywgJ09zbWFsbCcsICdQc21hbGwnLCAnUXNtYWxsJywgJ1JzbWFsbCcsICdTc21hbGwnLCAnVHNtYWxsJywgJ1VzbWFsbCcsICdWc21hbGwnLCAnV3NtYWxsJyxcbiAgJ1hzbWFsbCcsICdZc21hbGwnLCAnWnNtYWxsJywgJ2NvbG9ubW9uZXRhcnknLCAnb25lZml0dGVkJywgJ3J1cGlhaCcsICdUaWxkZXNtYWxsJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsXG4gICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsXG4gICdleGNsYW1kb3duc21hbGwnLCAnY2VudG9sZHN0eWxlJywgJ0xzbGFzaHNtYWxsJywgJycsICcnLCAnU2Nhcm9uc21hbGwnLCAnWmNhcm9uc21hbGwnLCAnRGllcmVzaXNzbWFsbCcsXG4gICdCcmV2ZXNtYWxsJywgJ0Nhcm9uc21hbGwnLCAnJywgJ0RvdGFjY2VudHNtYWxsJywgJycsICcnLCAnTWFjcm9uc21hbGwnLCAnJywgJycsICdmaWd1cmVkYXNoJywgJ2h5cGhlbmluZmVyaW9yJyxcbiAgJycsICcnLCAnT2dvbmVrc21hbGwnLCAnUmluZ3NtYWxsJywgJ0NlZGlsbGFzbWFsbCcsICcnLCAnJywgJycsICdvbmVxdWFydGVyJywgJ29uZWhhbGYnLCAndGhyZWVxdWFydGVycycsXG4gICdxdWVzdGlvbmRvd25zbWFsbCcsICdvbmVlaWdodGgnLCAndGhyZWVlaWdodGhzJywgJ2ZpdmVlaWdodGhzJywgJ3NldmVuZWlnaHRocycsICdvbmV0aGlyZCcsICd0d290aGlyZHMnLCAnJyxcbiAgJycsICd6ZXJvc3VwZXJpb3InLCAnb25lc3VwZXJpb3InLCAndHdvc3VwZXJpb3InLCAndGhyZWVzdXBlcmlvcicsICdmb3Vyc3VwZXJpb3InLCAnZml2ZXN1cGVyaW9yJyxcbiAgJ3NpeHN1cGVyaW9yJywgJ3NldmVuc3VwZXJpb3InLCAnZWlnaHRzdXBlcmlvcicsICduaW5lc3VwZXJpb3InLCAnemVyb2luZmVyaW9yJywgJ29uZWluZmVyaW9yJywgJ3R3b2luZmVyaW9yJyxcbiAgJ3RocmVlaW5mZXJpb3InLCAnZm91cmluZmVyaW9yJywgJ2ZpdmVpbmZlcmlvcicsICdzaXhpbmZlcmlvcicsICdzZXZlbmluZmVyaW9yJywgJ2VpZ2h0aW5mZXJpb3InLFxuICAnbmluZWluZmVyaW9yJywgJ2NlbnRpbmZlcmlvcicsICdkb2xsYXJpbmZlcmlvcicsICdwZXJpb2RpbmZlcmlvcicsICdjb21tYWluZmVyaW9yJywgJ0FncmF2ZXNtYWxsJyxcbiAgJ0FhY3V0ZXNtYWxsJywgJ0FjaXJjdW1mbGV4c21hbGwnLCAnQXRpbGRlc21hbGwnLCAnQWRpZXJlc2lzc21hbGwnLCAnQXJpbmdzbWFsbCcsICdBRXNtYWxsJywgJ0NjZWRpbGxhc21hbGwnLFxuICAnRWdyYXZlc21hbGwnLCAnRWFjdXRlc21hbGwnLCAnRWNpcmN1bWZsZXhzbWFsbCcsICdFZGllcmVzaXNzbWFsbCcsICdJZ3JhdmVzbWFsbCcsICdJYWN1dGVzbWFsbCcsXG4gICdJY2lyY3VtZmxleHNtYWxsJywgJ0lkaWVyZXNpc3NtYWxsJywgJ0V0aHNtYWxsJywgJ050aWxkZXNtYWxsJywgJ09ncmF2ZXNtYWxsJywgJ09hY3V0ZXNtYWxsJyxcbiAgJ09jaXJjdW1mbGV4c21hbGwnLCAnT3RpbGRlc21hbGwnLCAnT2RpZXJlc2lzc21hbGwnLCAnT0VzbWFsbCcsICdPc2xhc2hzbWFsbCcsICdVZ3JhdmVzbWFsbCcsICdVYWN1dGVzbWFsbCcsXG4gICdVY2lyY3VtZmxleHNtYWxsJywgJ1VkaWVyZXNpc3NtYWxsJywgJ1lhY3V0ZXNtYWxsJywgJ1Rob3Juc21hbGwnLCAnWWRpZXJlc2lzc21hbGwnXG5dO1xuIiwgImV4cG9ydCBsZXQgSVNPQWRvYmVDaGFyc2V0ID0gW1xuICAnLm5vdGRlZicsICdzcGFjZScsICdleGNsYW0nLCAncXVvdGVkYmwnLCAnbnVtYmVyc2lnbicsICdkb2xsYXInLFxuICAncGVyY2VudCcsICdhbXBlcnNhbmQnLCAncXVvdGVyaWdodCcsICdwYXJlbmxlZnQnLCAncGFyZW5yaWdodCcsXG4gICdhc3RlcmlzaycsICdwbHVzJywgJ2NvbW1hJywgJ2h5cGhlbicsICdwZXJpb2QnLCAnc2xhc2gnLCAnemVybycsXG4gICdvbmUnLCAndHdvJywgJ3RocmVlJywgJ2ZvdXInLCAnZml2ZScsICdzaXgnLCAnc2V2ZW4nLCAnZWlnaHQnLFxuICAnbmluZScsICdjb2xvbicsICdzZW1pY29sb24nLCAnbGVzcycsICdlcXVhbCcsICdncmVhdGVyJywgJ3F1ZXN0aW9uJyxcbiAgJ2F0JywgJ0EnLCAnQicsICdDJywgJ0QnLCAnRScsICdGJywgJ0cnLCAnSCcsICdJJywgJ0onLCAnSycsICdMJywgJ00nLFxuICAnTicsICdPJywgJ1AnLCAnUScsICdSJywgJ1MnLCAnVCcsICdVJywgJ1YnLCAnVycsICdYJywgJ1knLCAnWicsXG4gICdicmFja2V0bGVmdCcsICdiYWNrc2xhc2gnLCAnYnJhY2tldHJpZ2h0JywgJ2FzY2lpY2lyY3VtJywgJ3VuZGVyc2NvcmUnLFxuICAncXVvdGVsZWZ0JywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJywgJ2cnLCAnaCcsICdpJywgJ2onLCAnaycsICdsJyxcbiAgJ20nLCAnbicsICdvJywgJ3AnLCAncScsICdyJywgJ3MnLCAndCcsICd1JywgJ3YnLCAndycsICd4JywgJ3knLCAneicsXG4gICdicmFjZWxlZnQnLCAnYmFyJywgJ2JyYWNlcmlnaHQnLCAnYXNjaWl0aWxkZScsICdleGNsYW1kb3duJywgJ2NlbnQnLFxuICAnc3RlcmxpbmcnLCAnZnJhY3Rpb24nLCAneWVuJywgJ2Zsb3JpbicsICdzZWN0aW9uJywgJ2N1cnJlbmN5JyxcbiAgJ3F1b3Rlc2luZ2xlJywgJ3F1b3RlZGJsbGVmdCcsICdndWlsbGVtb3RsZWZ0JywgJ2d1aWxzaW5nbGxlZnQnLFxuICAnZ3VpbHNpbmdscmlnaHQnLCAnZmknLCAnZmwnLCAnZW5kYXNoJywgJ2RhZ2dlcicsICdkYWdnZXJkYmwnLFxuICAncGVyaW9kY2VudGVyZWQnLCAncGFyYWdyYXBoJywgJ2J1bGxldCcsICdxdW90ZXNpbmdsYmFzZScsXG4gICdxdW90ZWRibGJhc2UnLCAncXVvdGVkYmxyaWdodCcsICdndWlsbGVtb3RyaWdodCcsICdlbGxpcHNpcycsXG4gICdwZXJ0aG91c2FuZCcsICdxdWVzdGlvbmRvd24nLCAnZ3JhdmUnLCAnYWN1dGUnLCAnY2lyY3VtZmxleCcsICd0aWxkZScsXG4gICdtYWNyb24nLCAnYnJldmUnLCAnZG90YWNjZW50JywgJ2RpZXJlc2lzJywgJ3JpbmcnLCAnY2VkaWxsYScsXG4gICdodW5nYXJ1bWxhdXQnLCAnb2dvbmVrJywgJ2Nhcm9uJywgJ2VtZGFzaCcsICdBRScsICdvcmRmZW1pbmluZScsXG4gICdMc2xhc2gnLCAnT3NsYXNoJywgJ09FJywgJ29yZG1hc2N1bGluZScsICdhZScsICdkb3RsZXNzaScsICdsc2xhc2gnLFxuICAnb3NsYXNoJywgJ29lJywgJ2dlcm1hbmRibHMnLCAnb25lc3VwZXJpb3InLCAnbG9naWNhbG5vdCcsICdtdScsXG4gICd0cmFkZW1hcmsnLCAnRXRoJywgJ29uZWhhbGYnLCAncGx1c21pbnVzJywgJ1Rob3JuJywgJ29uZXF1YXJ0ZXInLFxuICAnZGl2aWRlJywgJ2Jyb2tlbmJhcicsICdkZWdyZWUnLCAndGhvcm4nLCAndGhyZWVxdWFydGVycycsICd0d29zdXBlcmlvcicsXG4gICdyZWdpc3RlcmVkJywgJ21pbnVzJywgJ2V0aCcsICdtdWx0aXBseScsICd0aHJlZXN1cGVyaW9yJywgJ2NvcHlyaWdodCcsXG4gICdBYWN1dGUnLCAnQWNpcmN1bWZsZXgnLCAnQWRpZXJlc2lzJywgJ0FncmF2ZScsICdBcmluZycsICdBdGlsZGUnLFxuICAnQ2NlZGlsbGEnLCAnRWFjdXRlJywgJ0VjaXJjdW1mbGV4JywgJ0VkaWVyZXNpcycsICdFZ3JhdmUnLCAnSWFjdXRlJyxcbiAgJ0ljaXJjdW1mbGV4JywgJ0lkaWVyZXNpcycsICdJZ3JhdmUnLCAnTnRpbGRlJywgJ09hY3V0ZScsICdPY2lyY3VtZmxleCcsXG4gICdPZGllcmVzaXMnLCAnT2dyYXZlJywgJ090aWxkZScsICdTY2Fyb24nLCAnVWFjdXRlJywgJ1VjaXJjdW1mbGV4JyxcbiAgJ1VkaWVyZXNpcycsICdVZ3JhdmUnLCAnWWFjdXRlJywgJ1lkaWVyZXNpcycsICdaY2Fyb24nLCAnYWFjdXRlJyxcbiAgJ2FjaXJjdW1mbGV4JywgJ2FkaWVyZXNpcycsICdhZ3JhdmUnLCAnYXJpbmcnLCAnYXRpbGRlJywgJ2NjZWRpbGxhJyxcbiAgJ2VhY3V0ZScsICdlY2lyY3VtZmxleCcsICdlZGllcmVzaXMnLCAnZWdyYXZlJywgJ2lhY3V0ZScsICdpY2lyY3VtZmxleCcsXG4gICdpZGllcmVzaXMnLCAnaWdyYXZlJywgJ250aWxkZScsICdvYWN1dGUnLCAnb2NpcmN1bWZsZXgnLCAnb2RpZXJlc2lzJyxcbiAgJ29ncmF2ZScsICdvdGlsZGUnLCAnc2Nhcm9uJywgJ3VhY3V0ZScsICd1Y2lyY3VtZmxleCcsICd1ZGllcmVzaXMnLFxuICAndWdyYXZlJywgJ3lhY3V0ZScsICd5ZGllcmVzaXMnLCAnemNhcm9uJ1xuXTtcblxuZXhwb3J0IGxldCBFeHBlcnRDaGFyc2V0ID0gW1xuICAnLm5vdGRlZicsICdzcGFjZScsICdleGNsYW1zbWFsbCcsICdIdW5nYXJ1bWxhdXRzbWFsbCcsICdkb2xsYXJvbGRzdHlsZScsXG4gICdkb2xsYXJzdXBlcmlvcicsICdhbXBlcnNhbmRzbWFsbCcsICdBY3V0ZXNtYWxsJywgJ3BhcmVubGVmdHN1cGVyaW9yJyxcbiAgJ3BhcmVucmlnaHRzdXBlcmlvcicsICd0d29kb3RlbmxlYWRlcicsICdvbmVkb3RlbmxlYWRlcicsICdjb21tYScsXG4gICdoeXBoZW4nLCAncGVyaW9kJywgJ2ZyYWN0aW9uJywgJ3plcm9vbGRzdHlsZScsICdvbmVvbGRzdHlsZScsXG4gICd0d29vbGRzdHlsZScsICd0aHJlZW9sZHN0eWxlJywgJ2ZvdXJvbGRzdHlsZScsICdmaXZlb2xkc3R5bGUnLFxuICAnc2l4b2xkc3R5bGUnLCAnc2V2ZW5vbGRzdHlsZScsICdlaWdodG9sZHN0eWxlJywgJ25pbmVvbGRzdHlsZScsXG4gICdjb2xvbicsICdzZW1pY29sb24nLCAnY29tbWFzdXBlcmlvcicsICd0aHJlZXF1YXJ0ZXJzZW1kYXNoJyxcbiAgJ3BlcmlvZHN1cGVyaW9yJywgJ3F1ZXN0aW9uc21hbGwnLCAnYXN1cGVyaW9yJywgJ2JzdXBlcmlvcicsXG4gICdjZW50c3VwZXJpb3InLCAnZHN1cGVyaW9yJywgJ2VzdXBlcmlvcicsICdpc3VwZXJpb3InLCAnbHN1cGVyaW9yJyxcbiAgJ21zdXBlcmlvcicsICduc3VwZXJpb3InLCAnb3N1cGVyaW9yJywgJ3JzdXBlcmlvcicsICdzc3VwZXJpb3InLFxuICAndHN1cGVyaW9yJywgJ2ZmJywgJ2ZpJywgJ2ZsJywgJ2ZmaScsICdmZmwnLCAncGFyZW5sZWZ0aW5mZXJpb3InLFxuICAncGFyZW5yaWdodGluZmVyaW9yJywgJ0NpcmN1bWZsZXhzbWFsbCcsICdoeXBoZW5zdXBlcmlvcicsICdHcmF2ZXNtYWxsJyxcbiAgJ0FzbWFsbCcsICdCc21hbGwnLCAnQ3NtYWxsJywgJ0RzbWFsbCcsICdFc21hbGwnLCAnRnNtYWxsJywgJ0dzbWFsbCcsXG4gICdIc21hbGwnLCAnSXNtYWxsJywgJ0pzbWFsbCcsICdLc21hbGwnLCAnTHNtYWxsJywgJ01zbWFsbCcsICdOc21hbGwnLFxuICAnT3NtYWxsJywgJ1BzbWFsbCcsICdRc21hbGwnLCAnUnNtYWxsJywgJ1NzbWFsbCcsICdUc21hbGwnLCAnVXNtYWxsJyxcbiAgJ1ZzbWFsbCcsICdXc21hbGwnLCAnWHNtYWxsJywgJ1lzbWFsbCcsICdac21hbGwnLCAnY29sb25tb25ldGFyeScsXG4gICdvbmVmaXR0ZWQnLCAncnVwaWFoJywgJ1RpbGRlc21hbGwnLCAnZXhjbGFtZG93bnNtYWxsJywgJ2NlbnRvbGRzdHlsZScsXG4gICdMc2xhc2hzbWFsbCcsICdTY2Fyb25zbWFsbCcsICdaY2Fyb25zbWFsbCcsICdEaWVyZXNpc3NtYWxsJyxcbiAgJ0JyZXZlc21hbGwnLCAnQ2Fyb25zbWFsbCcsICdEb3RhY2NlbnRzbWFsbCcsICdNYWNyb25zbWFsbCcsXG4gICdmaWd1cmVkYXNoJywgJ2h5cGhlbmluZmVyaW9yJywgJ09nb25la3NtYWxsJywgJ1JpbmdzbWFsbCcsXG4gICdDZWRpbGxhc21hbGwnLCAnb25lcXVhcnRlcicsICdvbmVoYWxmJywgJ3RocmVlcXVhcnRlcnMnLFxuICAncXVlc3Rpb25kb3duc21hbGwnLCAnb25lZWlnaHRoJywgJ3RocmVlZWlnaHRocycsICdmaXZlZWlnaHRocycsXG4gICdzZXZlbmVpZ2h0aHMnLCAnb25ldGhpcmQnLCAndHdvdGhpcmRzJywgJ3plcm9zdXBlcmlvcicsICdvbmVzdXBlcmlvcicsXG4gICd0d29zdXBlcmlvcicsICd0aHJlZXN1cGVyaW9yJywgJ2ZvdXJzdXBlcmlvcicsICdmaXZlc3VwZXJpb3InLFxuICAnc2l4c3VwZXJpb3InLCAnc2V2ZW5zdXBlcmlvcicsICdlaWdodHN1cGVyaW9yJywgJ25pbmVzdXBlcmlvcicsXG4gICd6ZXJvaW5mZXJpb3InLCAnb25laW5mZXJpb3InLCAndHdvaW5mZXJpb3InLCAndGhyZWVpbmZlcmlvcicsXG4gICdmb3VyaW5mZXJpb3InLCAnZml2ZWluZmVyaW9yJywgJ3NpeGluZmVyaW9yJywgJ3NldmVuaW5mZXJpb3InLFxuICAnZWlnaHRpbmZlcmlvcicsICduaW5laW5mZXJpb3InLCAnY2VudGluZmVyaW9yJywgJ2RvbGxhcmluZmVyaW9yJyxcbiAgJ3BlcmlvZGluZmVyaW9yJywgJ2NvbW1haW5mZXJpb3InLCAnQWdyYXZlc21hbGwnLCAnQWFjdXRlc21hbGwnLFxuICAnQWNpcmN1bWZsZXhzbWFsbCcsICdBdGlsZGVzbWFsbCcsICdBZGllcmVzaXNzbWFsbCcsICdBcmluZ3NtYWxsJyxcbiAgJ0FFc21hbGwnLCAnQ2NlZGlsbGFzbWFsbCcsICdFZ3JhdmVzbWFsbCcsICdFYWN1dGVzbWFsbCcsXG4gICdFY2lyY3VtZmxleHNtYWxsJywgJ0VkaWVyZXNpc3NtYWxsJywgJ0lncmF2ZXNtYWxsJywgJ0lhY3V0ZXNtYWxsJyxcbiAgJ0ljaXJjdW1mbGV4c21hbGwnLCAnSWRpZXJlc2lzc21hbGwnLCAnRXRoc21hbGwnLCAnTnRpbGRlc21hbGwnLFxuICAnT2dyYXZlc21hbGwnLCAnT2FjdXRlc21hbGwnLCAnT2NpcmN1bWZsZXhzbWFsbCcsICdPdGlsZGVzbWFsbCcsXG4gICdPZGllcmVzaXNzbWFsbCcsICdPRXNtYWxsJywgJ09zbGFzaHNtYWxsJywgJ1VncmF2ZXNtYWxsJywgJ1VhY3V0ZXNtYWxsJyxcbiAgJ1VjaXJjdW1mbGV4c21hbGwnLCAnVWRpZXJlc2lzc21hbGwnLCAnWWFjdXRlc21hbGwnLCAnVGhvcm5zbWFsbCcsXG4gICdZZGllcmVzaXNzbWFsbCdcbl07XG5cbmV4cG9ydCBsZXQgRXhwZXJ0U3Vic2V0Q2hhcnNldCA9IFtcbiAgJy5ub3RkZWYnLCAnc3BhY2UnLCAnZG9sbGFyb2xkc3R5bGUnLCAnZG9sbGFyc3VwZXJpb3InLFxuICAncGFyZW5sZWZ0c3VwZXJpb3InLCAncGFyZW5yaWdodHN1cGVyaW9yJywgJ3R3b2RvdGVubGVhZGVyJyxcbiAgJ29uZWRvdGVubGVhZGVyJywgJ2NvbW1hJywgJ2h5cGhlbicsICdwZXJpb2QnLCAnZnJhY3Rpb24nLFxuICAnemVyb29sZHN0eWxlJywgJ29uZW9sZHN0eWxlJywgJ3R3b29sZHN0eWxlJywgJ3RocmVlb2xkc3R5bGUnLFxuICAnZm91cm9sZHN0eWxlJywgJ2ZpdmVvbGRzdHlsZScsICdzaXhvbGRzdHlsZScsICdzZXZlbm9sZHN0eWxlJyxcbiAgJ2VpZ2h0b2xkc3R5bGUnLCAnbmluZW9sZHN0eWxlJywgJ2NvbG9uJywgJ3NlbWljb2xvbicsICdjb21tYXN1cGVyaW9yJyxcbiAgJ3RocmVlcXVhcnRlcnNlbWRhc2gnLCAncGVyaW9kc3VwZXJpb3InLCAnYXN1cGVyaW9yJywgJ2JzdXBlcmlvcicsXG4gICdjZW50c3VwZXJpb3InLCAnZHN1cGVyaW9yJywgJ2VzdXBlcmlvcicsICdpc3VwZXJpb3InLCAnbHN1cGVyaW9yJyxcbiAgJ21zdXBlcmlvcicsICduc3VwZXJpb3InLCAnb3N1cGVyaW9yJywgJ3JzdXBlcmlvcicsICdzc3VwZXJpb3InLFxuICAndHN1cGVyaW9yJywgJ2ZmJywgJ2ZpJywgJ2ZsJywgJ2ZmaScsICdmZmwnLCAncGFyZW5sZWZ0aW5mZXJpb3InLFxuICAncGFyZW5yaWdodGluZmVyaW9yJywgJ2h5cGhlbnN1cGVyaW9yJywgJ2NvbG9ubW9uZXRhcnknLCAnb25lZml0dGVkJyxcbiAgJ3J1cGlhaCcsICdjZW50b2xkc3R5bGUnLCAnZmlndXJlZGFzaCcsICdoeXBoZW5pbmZlcmlvcicsICdvbmVxdWFydGVyJyxcbiAgJ29uZWhhbGYnLCAndGhyZWVxdWFydGVycycsICdvbmVlaWdodGgnLCAndGhyZWVlaWdodGhzJywgJ2ZpdmVlaWdodGhzJyxcbiAgJ3NldmVuZWlnaHRocycsICdvbmV0aGlyZCcsICd0d290aGlyZHMnLCAnemVyb3N1cGVyaW9yJywgJ29uZXN1cGVyaW9yJyxcbiAgJ3R3b3N1cGVyaW9yJywgJ3RocmVlc3VwZXJpb3InLCAnZm91cnN1cGVyaW9yJywgJ2ZpdmVzdXBlcmlvcicsXG4gICdzaXhzdXBlcmlvcicsICdzZXZlbnN1cGVyaW9yJywgJ2VpZ2h0c3VwZXJpb3InLCAnbmluZXN1cGVyaW9yJyxcbiAgJ3plcm9pbmZlcmlvcicsICdvbmVpbmZlcmlvcicsICd0d29pbmZlcmlvcicsICd0aHJlZWluZmVyaW9yJyxcbiAgJ2ZvdXJpbmZlcmlvcicsICdmaXZlaW5mZXJpb3InLCAnc2l4aW5mZXJpb3InLCAnc2V2ZW5pbmZlcmlvcicsXG4gICdlaWdodGluZmVyaW9yJywgJ25pbmVpbmZlcmlvcicsICdjZW50aW5mZXJpb3InLCAnZG9sbGFyaW5mZXJpb3InLFxuICAncGVyaW9kaW5mZXJpb3InLCAnY29tbWFpbmZlcmlvcidcbl07XG4iLCAiaW1wb3J0IHtGZWF0dXJlfSBmcm9tICcuL29wZW50eXBlJztcbmltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vKioqKioqKioqKioqKioqKioqKlxuICogVmFyaWF0aW9uIFN0b3JlICpcbiAqKioqKioqKioqKioqKioqKioqL1xuXG5sZXQgRjJET1QxNCA9IG5ldyByLkZpeGVkKDE2LCAnQkUnLCAxNCk7XG5sZXQgUmVnaW9uQXhpc0Nvb3JkaW5hdGVzID0gbmV3IHIuU3RydWN0KHtcbiAgc3RhcnRDb29yZDogRjJET1QxNCxcbiAgcGVha0Nvb3JkOiBGMkRPVDE0LFxuICBlbmRDb29yZDogRjJET1QxNFxufSk7XG5cbmxldCBWYXJpYXRpb25SZWdpb25MaXN0ID0gbmV3IHIuU3RydWN0KHtcbiAgYXhpc0NvdW50OiByLnVpbnQxNixcbiAgcmVnaW9uQ291bnQ6IHIudWludDE2LFxuICB2YXJpYXRpb25SZWdpb25zOiBuZXcgci5BcnJheShuZXcgci5BcnJheShSZWdpb25BeGlzQ29vcmRpbmF0ZXMsICdheGlzQ291bnQnKSwgJ3JlZ2lvbkNvdW50Jylcbn0pO1xuXG5sZXQgRGVsdGFTZXQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBzaG9ydERlbHRhczogbmV3IHIuQXJyYXkoci5pbnQxNiwgdCA9PiB0LnBhcmVudC5zaG9ydERlbHRhQ291bnQpLFxuICByZWdpb25EZWx0YXM6IG5ldyByLkFycmF5KHIuaW50OCwgdCA9PiB0LnBhcmVudC5yZWdpb25JbmRleENvdW50IC0gdC5wYXJlbnQuc2hvcnREZWx0YUNvdW50KSxcbiAgZGVsdGFzOiB0ID0+IHQuc2hvcnREZWx0YXMuY29uY2F0KHQucmVnaW9uRGVsdGFzKVxufSk7XG5cbmxldCBJdGVtVmFyaWF0aW9uRGF0YSA9IG5ldyByLlN0cnVjdCh7XG4gIGl0ZW1Db3VudDogci51aW50MTYsXG4gIHNob3J0RGVsdGFDb3VudDogci51aW50MTYsXG4gIHJlZ2lvbkluZGV4Q291bnQ6IHIudWludDE2LFxuICByZWdpb25JbmRleGVzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgJ3JlZ2lvbkluZGV4Q291bnQnKSxcbiAgZGVsdGFTZXRzOiBuZXcgci5BcnJheShEZWx0YVNldCwgJ2l0ZW1Db3VudCcpXG59KTtcblxuZXhwb3J0IGxldCBJdGVtVmFyaWF0aW9uU3RvcmUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmb3JtYXQ6IHIudWludDE2LFxuICB2YXJpYXRpb25SZWdpb25MaXN0OiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBWYXJpYXRpb25SZWdpb25MaXN0KSxcbiAgdmFyaWF0aW9uRGF0YUNvdW50OiByLnVpbnQxNixcbiAgaXRlbVZhcmlhdGlvbkRhdGE6IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MzIsIEl0ZW1WYXJpYXRpb25EYXRhKSwgJ3ZhcmlhdGlvbkRhdGFDb3VudCcpXG59KTtcblxuLyoqKioqKioqKioqKioqKioqKioqKipcbiAqIEZlYXR1cmUgVmFyaWF0aW9ucyAqXG4gKioqKioqKioqKioqKioqKioqKioqKi9cblxubGV0IENvbmRpdGlvblRhYmxlID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIDE6IHtcbiAgICBheGlzSW5kZXg6IHIudWludDE2LFxuICAgIGF4aXNJbmRleDogci51aW50MTYsXG4gICAgZmlsdGVyUmFuZ2VNaW5WYWx1ZTogRjJET1QxNCxcbiAgICBmaWx0ZXJSYW5nZU1heFZhbHVlOiBGMkRPVDE0XG4gIH1cbn0pO1xuXG5sZXQgQ29uZGl0aW9uU2V0ID0gbmV3IHIuU3RydWN0KHtcbiAgY29uZGl0aW9uQ291bnQ6IHIudWludDE2LFxuICBjb25kaXRpb25UYWJsZTogbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgQ29uZGl0aW9uVGFibGUpLCAnY29uZGl0aW9uQ291bnQnKVxufSk7XG5cbmxldCBGZWF0dXJlVGFibGVTdWJzdGl0dXRpb25SZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmZWF0dXJlSW5kZXg6IHIudWludDE2LFxuICBhbHRlcm5hdGVGZWF0dXJlVGFibGU6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIEZlYXR1cmUsIHt0eXBlOiAncGFyZW50J30pXG59KTtcblxubGV0IEZlYXR1cmVUYWJsZVN1YnN0aXR1dGlvbiA9IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIuZml4ZWQzMixcbiAgc3Vic3RpdHV0aW9uQ291bnQ6IHIudWludDE2LFxuICBzdWJzdGl0dXRpb25zOiBuZXcgci5BcnJheShGZWF0dXJlVGFibGVTdWJzdGl0dXRpb25SZWNvcmQsICdzdWJzdGl0dXRpb25Db3VudCcpXG59KTtcblxubGV0IEZlYXR1cmVWYXJpYXRpb25SZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBjb25kaXRpb25TZXQ6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIENvbmRpdGlvblNldCwge3R5cGU6ICdwYXJlbnQnfSksXG4gIGZlYXR1cmVUYWJsZVN1YnN0aXR1dGlvbjogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgRmVhdHVyZVRhYmxlU3Vic3RpdHV0aW9uLCB7dHlwZTogJ3BhcmVudCd9KVxufSk7XG5cbmV4cG9ydCBsZXQgRmVhdHVyZVZhcmlhdGlvbnMgPSBuZXcgci5TdHJ1Y3Qoe1xuICBtYWpvclZlcnNpb246IHIudWludDE2LFxuICBtaW5vclZlcnNpb246IHIudWludDE2LFxuICBmZWF0dXJlVmFyaWF0aW9uUmVjb3JkQ291bnQ6IHIudWludDMyLFxuICBmZWF0dXJlVmFyaWF0aW9uUmVjb3JkczogbmV3IHIuQXJyYXkoRmVhdHVyZVZhcmlhdGlvblJlY29yZCwgJ2ZlYXR1cmVWYXJpYXRpb25SZWNvcmRDb3VudCcpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vIFNjcmlwdHMgYW5kIExhbmd1YWdlcyAjXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuXG5sZXQgTGFuZ1N5c1RhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgcmVzZXJ2ZWQ6ICAgICAgICAgbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICByZXFGZWF0dXJlSW5kZXg6ICByLnVpbnQxNixcbiAgZmVhdHVyZUNvdW50OiAgICAgci51aW50MTYsXG4gIGZlYXR1cmVJbmRleGVzOiAgIG5ldyByLkFycmF5KHIudWludDE2LCAnZmVhdHVyZUNvdW50Jylcbn0pO1xuXG5sZXQgTGFuZ1N5c1JlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHRhZzogICAgICBuZXcgci5TdHJpbmcoNCksXG4gIGxhbmdTeXM6ICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBMYW5nU3lzVGFibGUsIHsgdHlwZTogJ3BhcmVudCcgfSlcbn0pO1xuXG5sZXQgU2NyaXB0ID0gbmV3IHIuU3RydWN0KHtcbiAgZGVmYXVsdExhbmdTeXM6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIExhbmdTeXNUYWJsZSksXG4gIGNvdW50OiAgICAgICAgICByLnVpbnQxNixcbiAgbGFuZ1N5c1JlY29yZHM6IG5ldyByLkFycmF5KExhbmdTeXNSZWNvcmQsICdjb3VudCcpXG59KTtcblxubGV0IFNjcmlwdFJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHRhZzogICAgbmV3IHIuU3RyaW5nKDQpLFxuICBzY3JpcHQ6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIFNjcmlwdCwgeyB0eXBlOiAncGFyZW50JyB9KVxufSk7XG5cbmV4cG9ydCBsZXQgU2NyaXB0TGlzdCA9IG5ldyByLkFycmF5KFNjcmlwdFJlY29yZCwgci51aW50MTYpO1xuXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyBGZWF0dXJlcyBhbmQgTG9va3VwcyAjXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbmxldCBGZWF0dXJlUGFyYW1zID0gbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogICAgci51aW50MTYsIC8vIHNob3VsZCBiZSBzZXQgdG8gMCBhY2NvcmRpbmcgT1Qgc3BlY1xuICBuYW1lSUQ6ICAgICByLnVpbnQxNiwgLy9PVCBzcGVjOiBVSSBOYW1lIElEIG9yIHVpTGFiZWxOYW1lSWRcbn0pO1xuXG5leHBvcnQgbGV0IEZlYXR1cmUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmZWF0dXJlUGFyYW1zOiAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEZlYXR1cmVQYXJhbXMpLFxuICBsb29rdXBDb3VudDogICAgICAgIHIudWludDE2LFxuICBsb29rdXBMaXN0SW5kZXhlczogIG5ldyByLkFycmF5KHIudWludDE2LCAnbG9va3VwQ291bnQnKVxufSk7XG5cbmxldCBGZWF0dXJlUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICAgIG5ldyByLlN0cmluZyg0KSxcbiAgZmVhdHVyZTogIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEZlYXR1cmUsIHsgdHlwZTogJ3BhcmVudCcgfSlcbn0pO1xuXG5leHBvcnQgbGV0IEZlYXR1cmVMaXN0ID0gbmV3IHIuQXJyYXkoRmVhdHVyZVJlY29yZCwgci51aW50MTYpO1xuXG5sZXQgTG9va3VwRmxhZ3MgPSBuZXcgci5TdHJ1Y3Qoe1xuICBtYXJrQXR0YWNobWVudFR5cGU6IHIudWludDgsXG4gIGZsYWdzOiBuZXcgci5CaXRmaWVsZChyLnVpbnQ4LCBbXG4gICAgJ3JpZ2h0VG9MZWZ0JywgJ2lnbm9yZUJhc2VHbHlwaHMnLCAnaWdub3JlTGlnYXR1cmVzJyxcbiAgICAnaWdub3JlTWFya3MnLCAndXNlTWFya0ZpbHRlcmluZ1NldCdcbiAgXSlcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gTG9va3VwTGlzdChTdWJUYWJsZSkge1xuICBsZXQgTG9va3VwID0gbmV3IHIuU3RydWN0KHtcbiAgICBsb29rdXBUeXBlOiAgICAgICAgIHIudWludDE2LFxuICAgIGZsYWdzOiAgICAgICAgICAgICAgTG9va3VwRmxhZ3MsXG4gICAgc3ViVGFibGVDb3VudDogICAgICByLnVpbnQxNixcbiAgICBzdWJUYWJsZXM6ICAgICAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIFN1YlRhYmxlKSwgJ3N1YlRhYmxlQ291bnQnKSxcbiAgICBtYXJrRmlsdGVyaW5nU2V0OiAgIG5ldyByLk9wdGlvbmFsKHIudWludDE2LCB0ID0+IHQuZmxhZ3MuZmxhZ3MudXNlTWFya0ZpbHRlcmluZ1NldClcbiAgfSk7XG5cbiAgcmV0dXJuIG5ldyByLkxhenlBcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBMb29rdXApLCByLnVpbnQxNik7XG59XG5cbi8vIyMjIyMjIyMjIyMjIyMjIyNcbi8vIENvdmVyYWdlIFRhYmxlICNcbi8vIyMjIyMjIyMjIyMjIyMjIyNcblxubGV0IFJhbmdlUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgc3RhcnQ6ICAgICAgICAgICAgICByLnVpbnQxNixcbiAgZW5kOiAgICAgICAgICAgICAgICByLnVpbnQxNixcbiAgc3RhcnRDb3ZlcmFnZUluZGV4OiByLnVpbnQxNlxufSk7XG5cbmV4cG9ydCBsZXQgQ292ZXJhZ2UgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMToge1xuICAgIGdseXBoQ291bnQ6ICAgci51aW50MTYsXG4gICAgZ2x5cGhzOiAgICAgICBuZXcgci5BcnJheShyLnVpbnQxNiwgJ2dseXBoQ291bnQnKVxuICB9LFxuICAyOiB7XG4gICAgcmFuZ2VDb3VudDogICByLnVpbnQxNixcbiAgICByYW5nZVJlY29yZHM6IG5ldyByLkFycmF5KFJhbmdlUmVjb3JkLCAncmFuZ2VDb3VudCcpXG4gIH1cbn0pO1xuXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vIENsYXNzIERlZmluaXRpb24gVGFibGUgI1xuLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbmxldCBDbGFzc1JhbmdlUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgc3RhcnQ6ICByLnVpbnQxNixcbiAgZW5kOiAgICByLnVpbnQxNixcbiAgY2xhc3M6ICByLnVpbnQxNlxufSk7XG5cbmV4cG9ydCBsZXQgQ2xhc3NEZWYgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMTogeyAvLyBDbGFzcyBhcnJheVxuICAgIHN0YXJ0R2x5cGg6ICAgICAgIHIudWludDE2LFxuICAgIGdseXBoQ291bnQ6ICAgICAgIHIudWludDE2LFxuICAgIGNsYXNzVmFsdWVBcnJheTogIG5ldyByLkFycmF5KHIudWludDE2LCAnZ2x5cGhDb3VudCcpXG4gIH0sXG4gIDI6IHsgLy8gQ2xhc3MgcmFuZ2VzXG4gICAgY2xhc3NSYW5nZUNvdW50OiAgci51aW50MTYsXG4gICAgY2xhc3NSYW5nZVJlY29yZDogbmV3IHIuQXJyYXkoQ2xhc3NSYW5nZVJlY29yZCwgJ2NsYXNzUmFuZ2VDb3VudCcpXG4gIH1cbn0pO1xuXG4vLyMjIyMjIyMjIyMjIyMjI1xuLy8gRGV2aWNlIFRhYmxlICNcbi8vIyMjIyMjIyMjIyMjIyMjXG5cbmV4cG9ydCBsZXQgRGV2aWNlID0gbmV3IHIuU3RydWN0KHtcbiAgYTogci51aW50MTYsIC8vIHN0YXJ0U2l6ZSBmb3IgaGludGluZyBEZXZpY2UsIG91dGVySW5kZXggZm9yIFZhcmlhdGlvbkluZGV4XG4gIGI6IHIudWludDE2LCAvLyBlbmRTaXplIGZvciBEZXZpY2UsIGlubmVySW5kZXggZm9yIFZhcmlhdGlvbkluZGV4XG4gIGRlbHRhRm9ybWF0OiByLnVpbnQxNlxufSk7XG5cbi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyBDb250ZXh0dWFsIFN1YnN0aXR1dGlvbi9Qb3NpdGlvbmluZyBUYWJsZXMgI1xuLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxubGV0IExvb2t1cFJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHNlcXVlbmNlSW5kZXg6ICAgICAgci51aW50MTYsXG4gIGxvb2t1cExpc3RJbmRleDogICAgci51aW50MTZcbn0pO1xuXG5sZXQgUnVsZSA9IG5ldyByLlN0cnVjdCh7XG4gIGdseXBoQ291bnQ6ICAgICByLnVpbnQxNixcbiAgbG9va3VwQ291bnQ6ICAgIHIudWludDE2LFxuICBpbnB1dDogICAgICAgICAgbmV3IHIuQXJyYXkoci51aW50MTYsIHQgPT4gdC5nbHlwaENvdW50IC0gMSksXG4gIGxvb2t1cFJlY29yZHM6ICBuZXcgci5BcnJheShMb29rdXBSZWNvcmQsICdsb29rdXBDb3VudCcpXG59KTtcblxubGV0IFJ1bGVTZXQgPSBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBSdWxlKSwgci51aW50MTYpO1xuXG5sZXQgQ2xhc3NSdWxlID0gbmV3IHIuU3RydWN0KHtcbiAgZ2x5cGhDb3VudDogICAgIHIudWludDE2LFxuICBsb29rdXBDb3VudDogICAgci51aW50MTYsXG4gIGNsYXNzZXM6ICAgICAgICBuZXcgci5BcnJheShyLnVpbnQxNiwgdCA9PiB0LmdseXBoQ291bnQgLSAxKSxcbiAgbG9va3VwUmVjb3JkczogIG5ldyByLkFycmF5KExvb2t1cFJlY29yZCwgJ2xvb2t1cENvdW50Jylcbn0pO1xuXG5sZXQgQ2xhc3NTZXQgPSBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc1J1bGUpLCByLnVpbnQxNik7XG5cbmV4cG9ydCBsZXQgQ29udGV4dCA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAxOiB7IC8vIFNpbXBsZSBjb250ZXh0XG4gICAgY292ZXJhZ2U6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIHJ1bGVTZXRDb3VudDogIHIudWludDE2LFxuICAgIHJ1bGVTZXRzOiAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIFJ1bGVTZXQpLCAncnVsZVNldENvdW50JylcbiAgfSxcbiAgMjogeyAvLyBDbGFzcy1iYXNlZCBjb250ZXh0XG4gICAgY292ZXJhZ2U6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGNsYXNzRGVmOiAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENsYXNzRGVmKSxcbiAgICBjbGFzc1NldENudDogICByLnVpbnQxNixcbiAgICBjbGFzc1NldDogICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDbGFzc1NldCksICdjbGFzc1NldENudCcpXG4gIH0sXG4gIDM6IHtcbiAgICBnbHlwaENvdW50OiAgICByLnVpbnQxNixcbiAgICBsb29rdXBDb3VudDogICByLnVpbnQxNixcbiAgICBjb3ZlcmFnZXM6ICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksICdnbHlwaENvdW50JyksXG4gICAgbG9va3VwUmVjb3JkczogbmV3IHIuQXJyYXkoTG9va3VwUmVjb3JkLCAnbG9va3VwQ291bnQnKVxuICB9XG59KTtcblxuLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vIENoYWluaW5nIENvbnRleHR1YWwgU3Vic3RpdHV0aW9uL1Bvc2l0aW9uaW5nIFRhYmxlcyAjXG4vLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuXG5sZXQgQ2hhaW5SdWxlID0gbmV3IHIuU3RydWN0KHtcbiAgYmFja3RyYWNrR2x5cGhDb3VudDogIHIudWludDE2LFxuICBiYWNrdHJhY2s6ICAgICAgICAgICAgbmV3IHIuQXJyYXkoci51aW50MTYsICdiYWNrdHJhY2tHbHlwaENvdW50JyksXG4gIGlucHV0R2x5cGhDb3VudDogICAgICByLnVpbnQxNixcbiAgaW5wdXQ6ICAgICAgICAgICAgICAgIG5ldyByLkFycmF5KHIudWludDE2LCB0ID0+IHQuaW5wdXRHbHlwaENvdW50IC0gMSksXG4gIGxvb2thaGVhZEdseXBoQ291bnQ6ICByLnVpbnQxNixcbiAgbG9va2FoZWFkOiAgICAgICAgICAgIG5ldyByLkFycmF5KHIudWludDE2LCAnbG9va2FoZWFkR2x5cGhDb3VudCcpLFxuICBsb29rdXBDb3VudDogICAgICAgICAgci51aW50MTYsXG4gIGxvb2t1cFJlY29yZHM6ICAgICAgICBuZXcgci5BcnJheShMb29rdXBSZWNvcmQsICdsb29rdXBDb3VudCcpXG59KTtcblxubGV0IENoYWluUnVsZVNldCA9IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENoYWluUnVsZSksIHIudWludDE2KTtcblxuZXhwb3J0IGxldCBDaGFpbmluZ0NvbnRleHQgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMTogeyAvLyBTaW1wbGUgY29udGV4dCBnbHlwaCBzdWJzdGl0dXRpb25cbiAgICBjb3ZlcmFnZTogICAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBjaGFpbkNvdW50OiAgICAgICAgIHIudWludDE2LFxuICAgIGNoYWluUnVsZVNldHM6ICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2hhaW5SdWxlU2V0KSwgJ2NoYWluQ291bnQnKVxuICB9LFxuXG4gIDI6IHsgLy8gQ2xhc3MtYmFzZWQgY2hhaW5pbmcgY29udGV4dFxuICAgIGNvdmVyYWdlOiAgICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGJhY2t0cmFja0NsYXNzRGVmOiAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpLFxuICAgIGlucHV0Q2xhc3NEZWY6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpLFxuICAgIGxvb2thaGVhZENsYXNzRGVmOiAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpLFxuICAgIGNoYWluQ291bnQ6ICAgICAgICAgci51aW50MTYsXG4gICAgY2hhaW5DbGFzc1NldDogICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDaGFpblJ1bGVTZXQpLCAnY2hhaW5Db3VudCcpXG4gIH0sXG5cbiAgMzogeyAvLyBDb3ZlcmFnZS1iYXNlZCBjaGFpbmluZyBjb250ZXh0XG4gICAgYmFja3RyYWNrR2x5cGhDb3VudDogICAgci51aW50MTYsXG4gICAgYmFja3RyYWNrQ292ZXJhZ2U6ICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLCAnYmFja3RyYWNrR2x5cGhDb3VudCcpLFxuICAgIGlucHV0R2x5cGhDb3VudDogICAgICAgIHIudWludDE2LFxuICAgIGlucHV0Q292ZXJhZ2U6ICAgICAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSwgJ2lucHV0R2x5cGhDb3VudCcpLFxuICAgIGxvb2thaGVhZEdseXBoQ291bnQ6ICAgIHIudWludDE2LFxuICAgIGxvb2thaGVhZENvdmVyYWdlOiAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSwgJ2xvb2thaGVhZEdseXBoQ291bnQnKSxcbiAgICBsb29rdXBDb3VudDogICAgICAgICAgICByLnVpbnQxNixcbiAgICBsb29rdXBSZWNvcmRzOiAgICAgICAgICBuZXcgci5BcnJheShMb29rdXBSZWNvcmQsICdsb29rdXBDb3VudCcpXG4gIH1cbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgVmVydGljYWxPcmlnaW4gPSBuZXcgci5TdHJ1Y3Qoe1xuICBnbHlwaEluZGV4OiAgIHIudWludDE2LFxuICB2ZXJ0T3JpZ2luWTogIHIuaW50MTZcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICBtYWpvclZlcnNpb246ICAgICAgICAgICByLnVpbnQxNixcbiAgbWlub3JWZXJzaW9uOiAgICAgICAgICAgci51aW50MTYsXG4gIGRlZmF1bHRWZXJ0T3JpZ2luWTogICAgIHIuaW50MTYsXG4gIG51bVZlcnRPcmlnaW5ZTWV0cmljczogIHIudWludDE2LFxuICBtZXRyaWNzOiAgICAgICAgICAgICAgICBuZXcgci5BcnJheShWZXJ0aWNhbE9yaWdpbiwgJ251bVZlcnRPcmlnaW5ZTWV0cmljcycpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7QmlnTWV0cmljc30gZnJvbSAnLi9FQkRUJztcblxubGV0IFNCaXRMaW5lTWV0cmljcyA9IG5ldyByLlN0cnVjdCh7XG4gIGFzY2VuZGVyOiByLmludDgsXG4gIGRlc2NlbmRlcjogci5pbnQ4LFxuICB3aWR0aE1heDogci51aW50OCxcbiAgY2FyZXRTbG9wZU51bWVyYXRvcjogci5pbnQ4LFxuICBjYXJldFNsb3BlRGVub21pbmF0b3I6IHIuaW50OCxcbiAgY2FyZXRPZmZzZXQ6IHIuaW50OCxcbiAgbWluT3JpZ2luU0I6IHIuaW50OCxcbiAgbWluQWR2YW5jZVNCOiByLmludDgsXG4gIG1heEJlZm9yZUJMOiByLmludDgsXG4gIG1pbkFmdGVyQkw6IHIuaW50OCxcbiAgcGFkOiBuZXcgci5SZXNlcnZlZChyLmludDgsIDIpXG59KTtcblxubGV0IENvZGVPZmZzZXRQYWlyID0gbmV3IHIuU3RydWN0KHtcbiAgZ2x5cGhDb2RlOiByLnVpbnQxNixcbiAgb2Zmc2V0OiByLnVpbnQxNlxufSk7XG5cbmxldCBJbmRleFN1YnRhYmxlID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gIGhlYWRlcjoge1xuICAgIGltYWdlRm9ybWF0OiByLnVpbnQxNixcbiAgICBpbWFnZURhdGFPZmZzZXQ6IHIudWludDMyXG4gIH0sXG5cbiAgMToge1xuICAgIG9mZnNldEFycmF5OiBuZXcgci5BcnJheShyLnVpbnQzMiwgdCA9PiB0LnBhcmVudC5sYXN0R2x5cGhJbmRleCAtIHQucGFyZW50LmZpcnN0R2x5cGhJbmRleCArIDEpXG4gIH0sXG5cbiAgMjoge1xuICAgIGltYWdlU2l6ZTogci51aW50MzIsXG4gICAgYmlnTWV0cmljczogQmlnTWV0cmljc1xuICB9LFxuXG4gIDM6IHtcbiAgICBvZmZzZXRBcnJheTogbmV3IHIuQXJyYXkoci51aW50MTYsIHQgPT4gdC5wYXJlbnQubGFzdEdseXBoSW5kZXggLSB0LnBhcmVudC5maXJzdEdseXBoSW5kZXggKyAxKVxuICB9LFxuXG4gIDQ6IHtcbiAgICBudW1HbHlwaHM6IHIudWludDMyLFxuICAgIGdseXBoQXJyYXk6IG5ldyByLkFycmF5KENvZGVPZmZzZXRQYWlyLCB0ID0+IHQubnVtR2x5cGhzICsgMSlcbiAgfSxcblxuICA1OiB7XG4gICAgaW1hZ2VTaXplOiByLnVpbnQzMixcbiAgICBiaWdNZXRyaWNzOiBCaWdNZXRyaWNzLFxuICAgIG51bUdseXBoczogci51aW50MzIsXG4gICAgZ2x5cGhDb2RlQXJyYXk6IG5ldyByLkFycmF5KHIudWludDE2LCAnbnVtR2x5cGhzJylcbiAgfVxufSk7XG5cbmxldCBJbmRleFN1YnRhYmxlQXJyYXkgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmaXJzdEdseXBoSW5kZXg6IHIudWludDE2LFxuICBsYXN0R2x5cGhJbmRleDogci51aW50MTYsXG4gIHN1YnRhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBJbmRleFN1YnRhYmxlKVxufSk7XG5cbmxldCBCaXRtYXBTaXplVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBpbmRleFN1YlRhYmxlQXJyYXk6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyByLkFycmF5KEluZGV4U3VidGFibGVBcnJheSwgMSksIHsgdHlwZTogJ3BhcmVudCcgfSksXG4gIGluZGV4VGFibGVzU2l6ZTogci51aW50MzIsXG4gIG51bWJlck9mSW5kZXhTdWJUYWJsZXM6IHIudWludDMyLFxuICBjb2xvclJlZjogci51aW50MzIsXG4gIGhvcmk6IFNCaXRMaW5lTWV0cmljcyxcbiAgdmVydDogU0JpdExpbmVNZXRyaWNzLFxuICBzdGFydEdseXBoSW5kZXg6IHIudWludDE2LFxuICBlbmRHbHlwaEluZGV4OiByLnVpbnQxNixcbiAgcHBlbVg6IHIudWludDgsXG4gIHBwZW1ZOiByLnVpbnQ4LFxuICBiaXREZXB0aDogci51aW50OCxcbiAgZmxhZ3M6IG5ldyByLkJpdGZpZWxkKHIudWludDgsIFsnaG9yaXpvbnRhbCcsICd2ZXJ0aWNhbCddKVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246ICByLnVpbnQzMiwgLy8gMHgwMDAyMDAwMFxuICBudW1TaXplczogci51aW50MzIsXG4gIHNpemVzOiAgICBuZXcgci5BcnJheShCaXRtYXBTaXplVGFibGUsICdudW1TaXplcycpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuZXhwb3J0IGxldCBCaWdNZXRyaWNzID0gbmV3IHIuU3RydWN0KHtcbiAgaGVpZ2h0OiByLnVpbnQ4LFxuICB3aWR0aDogci51aW50OCxcbiAgaG9yaUJlYXJpbmdYOiByLmludDgsXG4gIGhvcmlCZWFyaW5nWTogci5pbnQ4LFxuICBob3JpQWR2YW5jZTogci51aW50OCxcbiAgdmVydEJlYXJpbmdYOiByLmludDgsXG4gIHZlcnRCZWFyaW5nWTogci5pbnQ4LFxuICB2ZXJ0QWR2YW5jZTogci51aW50OFxufSk7XG5cbmV4cG9ydCBsZXQgU21hbGxNZXRyaWNzID0gbmV3IHIuU3RydWN0KHtcbiAgaGVpZ2h0OiByLnVpbnQ4LFxuICB3aWR0aDogci51aW50OCxcbiAgYmVhcmluZ1g6IHIuaW50OCxcbiAgYmVhcmluZ1k6IHIuaW50OCxcbiAgYWR2YW5jZTogci51aW50OFxufSk7XG5cbmxldCBFQkRUQ29tcG9uZW50ID0gbmV3IHIuU3RydWN0KHtcbiAgZ2x5cGg6IHIudWludDE2LFxuICB4T2Zmc2V0OiByLmludDgsXG4gIHlPZmZzZXQ6IHIuaW50OFxufSk7XG5cbmNsYXNzIEJ5dGVBbGlnbmVkIHt9XG5cbmNsYXNzIEJpdEFsaWduZWQge31cblxuZXhwb3J0IGxldCBnbHlwaCA9IG5ldyByLlZlcnNpb25lZFN0cnVjdCgndmVyc2lvbicsIHtcbiAgMToge1xuICAgIG1ldHJpY3M6IFNtYWxsTWV0cmljcyxcbiAgICBkYXRhOiBCeXRlQWxpZ25lZFxuICB9LFxuXG4gIDI6IHtcbiAgICBtZXRyaWNzOiBTbWFsbE1ldHJpY3MsXG4gICAgZGF0YTogQml0QWxpZ25lZFxuICB9LFxuXG4gIC8vIGZvcm1hdCAzIGlzIGRlcHJlY2F0ZWRcbiAgLy8gZm9ybWF0IDQgaXMgbm90IHN1cHBvcnRlZCBieSBNaWNyb3NvZnRcblxuICA1OiB7XG4gICAgZGF0YTogQml0QWxpZ25lZFxuICB9LFxuXG4gIDY6IHtcbiAgICBtZXRyaWNzOiBCaWdNZXRyaWNzLFxuICAgIGRhdGE6IEJ5dGVBbGlnbmVkXG4gIH0sXG5cbiAgNzoge1xuICAgIG1ldHJpY3M6IEJpZ01ldHJpY3MsXG4gICAgZGF0YTogQml0QWxpZ25lZFxuICB9LFxuXG4gIDg6IHtcbiAgICBtZXRyaWNzOiBTbWFsbE1ldHJpY3MsXG4gICAgcGFkOiBuZXcgci5SZXNlcnZlZChyLnVpbnQ4KSxcbiAgICBudW1Db21wb25lbnRzOiByLnVpbnQxNixcbiAgICBjb21wb25lbnRzOiBuZXcgci5BcnJheShFQkRUQ29tcG9uZW50LCAnbnVtQ29tcG9uZW50cycpXG4gIH0sXG5cbiAgOToge1xuICAgIG1ldHJpY3M6IEJpZ01ldHJpY3MsXG4gICAgcGFkOiBuZXcgci5SZXNlcnZlZChyLnVpbnQ4KSxcbiAgICBudW1Db21wb25lbnRzOiByLnVpbnQxNixcbiAgICBjb21wb25lbnRzOiBuZXcgci5BcnJheShFQkRUQ29tcG9uZW50LCAnbnVtQ29tcG9uZW50cycpXG4gIH0sXG5cbiAgMTc6IHtcbiAgICBtZXRyaWNzOiBTbWFsbE1ldHJpY3MsXG4gICAgZGF0YUxlbjogci51aW50MzIsXG4gICAgZGF0YTogbmV3IHIuQnVmZmVyKCdkYXRhTGVuJylcbiAgfSxcblxuICAxODoge1xuICAgIG1ldHJpY3M6IEJpZ01ldHJpY3MsXG4gICAgZGF0YUxlbjogci51aW50MzIsXG4gICAgZGF0YTogbmV3IHIuQnVmZmVyKCdkYXRhTGVuJylcbiAgfSxcblxuICAxOToge1xuICAgIGRhdGFMZW46IHIudWludDMyLFxuICAgIGRhdGE6IG5ldyByLkJ1ZmZlcignZGF0YUxlbicpXG4gIH1cbn0pO1xuXG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBJbWFnZVRhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgcHBlbTogci51aW50MTYsXG4gIHJlc29sdXRpb246IHIudWludDE2LFxuICBpbWFnZU9mZnNldHM6IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MzIsICd2b2lkJyksIHQgPT4gdC5wYXJlbnQucGFyZW50Lm1heHAubnVtR2x5cGhzICsgMSlcbn0pO1xuXG4vLyBUaGlzIGlzIHRoZSBBcHBsZSBzYml4IHRhYmxlLCB1c2VkIGJ5IHRoZSBcIkFwcGxlIENvbG9yIEVtb2ppXCIgZm9udC5cbi8vIEl0IGluY2x1ZGVzIHNldmVyYWwgaW1hZ2UgdGFibGVzIHdpdGggaW1hZ2VzIGZvciBlYWNoIGJpdG1hcCBnbHlwaFxuLy8gb2Ygc2V2ZXJhbCBkaWZmZXJlbnQgc2l6ZXMuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiByLnVpbnQxNixcbiAgZmxhZ3M6IG5ldyByLkJpdGZpZWxkKHIudWludDE2LCBbJ3JlbmRlck91dGxpbmVzJ10pLFxuICBudW1JbWdUYWJsZXM6IHIudWludDMyLFxuICBpbWFnZVRhYmxlczogbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgSW1hZ2VUYWJsZSksICdudW1JbWdUYWJsZXMnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBMYXllclJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIGdpZDogci51aW50MTYsICAgICAgICAgIC8vIEdseXBoIElEIG9mIGxheWVyIGdseXBoIChtdXN0IGJlIGluIHotb3JkZXIgZnJvbSBib3R0b20gdG8gdG9wKS5cbiAgcGFsZXR0ZUluZGV4OiByLnVpbnQxNiAgLy8gSW5kZXggdmFsdWUgdG8gdXNlIGluIHRoZSBhcHByb3ByaWF0ZSBwYWxldHRlLiBUaGlzIHZhbHVlIG11c3Rcbn0pOyAgICAgICAgICAgICAgICAgICAgICAgLy8gYmUgbGVzcyB0aGFuIG51bVBhbGV0dGVFbnRyaWVzIGluIHRoZSBDUEFMIHRhYmxlLCBleGNlcHQgZm9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoZSBzcGVjaWFsIGNhc2Ugbm90ZWQgYmVsb3cuIEVhY2ggcGFsZXR0ZSBlbnRyeSBpcyAxNiBiaXRzLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBBIHBhbGV0dGUgaW5kZXggb2YgMHhGRkZGIGlzIGEgc3BlY2lhbCBjYXNlIGluZGljYXRpbmcgdGhhdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0aGUgdGV4dCBmb3JlZ3JvdW5kIGNvbG9yIHNob3VsZCBiZSB1c2VkLlxuXG5sZXQgQmFzZUdseXBoUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgZ2lkOiByLnVpbnQxNiwgICAgICAgICAgICAgLy8gR2x5cGggSUQgb2YgcmVmZXJlbmNlIGdseXBoLiBUaGlzIGdseXBoIGlzIGZvciByZWZlcmVuY2Ugb25seVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBhbmQgaXMgbm90IHJlbmRlcmVkIGZvciBjb2xvci5cbiAgZmlyc3RMYXllckluZGV4OiByLnVpbnQxNiwgLy8gSW5kZXggKGZyb20gYmVnaW5uaW5nIG9mIHRoZSBMYXllciBSZWNvcmRzKSB0byB0aGUgbGF5ZXIgcmVjb3JkLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBUaGVyZSB3aWxsIGJlIG51bUxheWVycyBjb25zZWN1dGl2ZSBlbnRyaWVzIGZvciB0aGlzIGJhc2UgZ2x5cGguXG4gIG51bUxheWVyczogci51aW50MTZcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiByLnVpbnQxNixcbiAgbnVtQmFzZUdseXBoUmVjb3Jkczogci51aW50MTYsXG4gIGJhc2VHbHlwaFJlY29yZDogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IHIuQXJyYXkoQmFzZUdseXBoUmVjb3JkLCAnbnVtQmFzZUdseXBoUmVjb3JkcycpKSxcbiAgbGF5ZXJSZWNvcmRzOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgci5BcnJheShMYXllclJlY29yZCwgJ251bUxheWVyUmVjb3JkcycpLCB7IGxhenk6IHRydWUgfSksXG4gIG51bUxheWVyUmVjb3Jkczogci51aW50MTZcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgQ29sb3JSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBibHVlOiByLnVpbnQ4LFxuICBncmVlbjogci51aW50OCxcbiAgcmVkOiByLnVpbnQ4LFxuICBhbHBoYTogci51aW50OFxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICBoZWFkZXI6IHtcbiAgICBudW1QYWxldHRlRW50cmllczogci51aW50MTYsXG4gICAgbnVtUGFsZXR0ZXM6IHIudWludDE2LFxuICAgIG51bUNvbG9yUmVjb3Jkczogci51aW50MTYsXG4gICAgY29sb3JSZWNvcmRzOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgci5BcnJheShDb2xvclJlY29yZCwgJ251bUNvbG9yUmVjb3JkcycpKSxcbiAgICBjb2xvclJlY29yZEluZGljZXM6IG5ldyByLkFycmF5KHIudWludDE2LCAnbnVtUGFsZXR0ZXMnKSxcbiAgfSxcbiAgMDoge30sXG4gIDE6IHtcbiAgICBvZmZzZXRQYWxldHRlVHlwZUFycmF5OiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgci5BcnJheShyLnVpbnQzMiwgJ251bVBhbGV0dGVzJykpLFxuICAgIG9mZnNldFBhbGV0dGVMYWJlbEFycmF5OiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgci5BcnJheShyLnVpbnQxNiwgJ251bVBhbGV0dGVzJykpLFxuICAgIG9mZnNldFBhbGV0dGVFbnRyeUxhYmVsQXJyYXk6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIG5ldyByLkFycmF5KHIudWludDE2LCAnbnVtUGFsZXR0ZUVudHJpZXMnKSlcbiAgfVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQge1NjcmlwdExpc3QsIEZlYXR1cmVMaXN0LCBMb29rdXBMaXN0LCBDb3ZlcmFnZSwgQ2xhc3NEZWYsIERldmljZX0gZnJvbSAnLi9vcGVudHlwZSc7XG5pbXBvcnQge0l0ZW1WYXJpYXRpb25TdG9yZX0gZnJvbSAnLi92YXJpYXRpb25zJztcblxubGV0IEJhc2VDb29yZCA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAxOiB7IC8vIERlc2lnbiB1bml0cyBvbmx5XG4gICAgY29vcmRpbmF0ZTogICByLmludDE2IC8vIFggb3IgWSB2YWx1ZSwgaW4gZGVzaWduIHVuaXRzXG4gIH0sXG5cbiAgMjogeyAvLyBEZXNpZ24gdW5pdHMgcGx1cyBjb250b3VyIHBvaW50XG4gICAgY29vcmRpbmF0ZTogICAgIHIuaW50MTYsICAgLy8gWCBvciBZIHZhbHVlLCBpbiBkZXNpZ24gdW5pdHNcbiAgICByZWZlcmVuY2VHbHlwaDogci51aW50MTYsICAvLyBHbHlwaElEIG9mIGNvbnRyb2wgZ2x5cGhcbiAgICBiYXNlQ29vcmRQb2ludDogci51aW50MTYgICAvLyBJbmRleCBvZiBjb250b3VyIHBvaW50IG9uIHRoZSByZWZlcmVuY2VHbHlwaFxuICB9LFxuXG4gIDM6IHsgLy8gRGVzaWduIHVuaXRzIHBsdXMgRGV2aWNlIHRhYmxlXG4gICAgY29vcmRpbmF0ZTogICByLmludDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAvLyBYIG9yIFkgdmFsdWUsIGluIGRlc2lnbiB1bml0c1xuICAgIGRldmljZVRhYmxlOiAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRGV2aWNlKSAgLy8gRGV2aWNlIHRhYmxlIGZvciBYIG9yIFkgdmFsdWVcbiAgfVxufSk7XG5cbmxldCBCYXNlVmFsdWVzID0gbmV3IHIuU3RydWN0KHtcbiAgZGVmYXVsdEluZGV4OiAgIHIudWludDE2LCAgLy8gSW5kZXggb2YgZGVmYXVsdCBiYXNlbGluZSBmb3IgdGhpcyBzY3JpcHQtc2FtZSBpbmRleCBpbiB0aGUgQmFzZVRhZ0xpc3RcbiAgYmFzZUNvb3JkQ291bnQ6IHIudWludDE2LFxuICBiYXNlQ29vcmRzOiAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQmFzZUNvb3JkKSwgJ2Jhc2VDb29yZENvdW50Jylcbn0pO1xuXG5sZXQgRmVhdE1pbk1heFJlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIHRhZzogICAgICAgIG5ldyByLlN0cmluZyg0KSwgIC8vIDQtYnl0ZSBmZWF0dXJlIGlkZW50aWZpY2F0aW9uIHRhZy1tdXN0IG1hdGNoIEZlYXR1cmVUYWcgaW4gRmVhdHVyZUxpc3RcbiAgbWluQ29vcmQ6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQmFzZUNvb3JkLCB7dHlwZTogJ3BhcmVudCd9KSwgLy8gTWF5IGJlIE5VTExcbiAgbWF4Q29vcmQ6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQmFzZUNvb3JkLCB7dHlwZTogJ3BhcmVudCd9KSAgLy8gTWF5IGJlIE5VTExcbn0pO1xuXG5sZXQgTWluTWF4ID0gbmV3IHIuU3RydWN0KHtcbiAgbWluQ29vcmQ6ICAgICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlQ29vcmQpLCAgLy8gTWF5IGJlIE5VTExcbiAgbWF4Q29vcmQ6ICAgICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlQ29vcmQpLCAgLy8gTWF5IGJlIE5VTExcbiAgZmVhdE1pbk1heENvdW50OiAgICByLnVpbnQxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWF5IGJlIDBcbiAgZmVhdE1pbk1heFJlY29yZHM6ICBuZXcgci5BcnJheShGZWF0TWluTWF4UmVjb3JkLCAnZmVhdE1pbk1heENvdW50JykgLy8gSW4gYWxwaGFiZXRpY2FsIG9yZGVyXG59KTtcblxubGV0IEJhc2VMYW5nU3lzUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICBuZXcgci5TdHJpbmcoNCksICAvLyA0LWJ5dGUgbGFuZ3VhZ2Ugc3lzdGVtIGlkZW50aWZpY2F0aW9uIHRhZ1xuICBtaW5NYXg6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIE1pbk1heCwge3R5cGU6ICdwYXJlbnQnfSlcbn0pO1xuXG5sZXQgQmFzZVNjcmlwdCA9IG5ldyByLlN0cnVjdCh7XG4gIGJhc2VWYWx1ZXM6ICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQmFzZVZhbHVlcyksIC8vIE1heSBiZSBOVUxMXG4gIGRlZmF1bHRNaW5NYXg6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTWluTWF4KSwgICAgIC8vIE1heSBiZSBOVUxMXG4gIGJhc2VMYW5nU3lzQ291bnQ6ICAgci51aW50MTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1heSBiZSAwXG4gIGJhc2VMYW5nU3lzUmVjb3JkczogbmV3IHIuQXJyYXkoQmFzZUxhbmdTeXNSZWNvcmQsICdiYXNlTGFuZ1N5c0NvdW50JykgLy8gaW4gYWxwaGFiZXRpY2FsIG9yZGVyIGJ5IEJhc2VMYW5nU3lzVGFnXG59KTtcblxubGV0IEJhc2VTY3JpcHRSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgICAgbmV3IHIuU3RyaW5nKDQpLCAgLy8gNC1ieXRlIHNjcmlwdCBpZGVudGlmaWNhdGlvbiB0YWdcbiAgc2NyaXB0OiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEJhc2VTY3JpcHQsIHt0eXBlOiAncGFyZW50J30pXG59KTtcblxubGV0IEJhc2VTY3JpcHRMaXN0ID0gbmV3IHIuQXJyYXkoQmFzZVNjcmlwdFJlY29yZCwgci51aW50MTYpO1xuXG4vLyBBcnJheSBvZiA0LWJ5dGUgYmFzZWxpbmUgaWRlbnRpZmljYXRpb24gdGFncy1tdXN0IGJlIGluIGFscGhhYmV0aWNhbCBvcmRlclxubGV0IEJhc2VUYWdMaXN0ID0gbmV3IHIuQXJyYXkobmV3IHIuU3RyaW5nKDQpLCByLnVpbnQxNik7XG5cbmxldCBBeGlzID0gbmV3IHIuU3RydWN0KHtcbiAgYmFzZVRhZ0xpc3Q6ICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEJhc2VUYWdMaXN0KSwgIC8vIE1heSBiZSBOVUxMXG4gIGJhc2VTY3JpcHRMaXN0OiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlU2NyaXB0TGlzdClcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MzIsIHtcbiAgaGVhZGVyOiB7XG4gICAgaG9yaXpBeGlzOiAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBBeGlzKSwgICAvLyBNYXkgYmUgTlVMTFxuICAgIHZlcnRBeGlzOiAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQXhpcykgICAgLy8gTWF5IGJlIE5VTExcbiAgfSxcblxuICAweDAwMDEwMDAwOiB7fSxcbiAgMHgwMDAxMDAwMToge1xuICAgIGl0ZW1WYXJpYXRpb25TdG9yZTogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgSXRlbVZhcmlhdGlvblN0b3JlKVxuICB9XG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7U2NyaXB0TGlzdCwgRmVhdHVyZUxpc3QsIExvb2t1cExpc3QsIENvdmVyYWdlLCBDbGFzc0RlZiwgRGV2aWNlfSBmcm9tICcuL29wZW50eXBlJztcbmltcG9ydCB7SXRlbVZhcmlhdGlvblN0b3JlfSBmcm9tICcuL3ZhcmlhdGlvbnMnO1xuXG5sZXQgQXR0YWNoUG9pbnQgPSBuZXcgci5BcnJheShyLnVpbnQxNiwgci51aW50MTYpO1xubGV0IEF0dGFjaExpc3QgPSBuZXcgci5TdHJ1Y3Qoe1xuICBjb3ZlcmFnZTogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICBnbHlwaENvdW50OiAgICAgci51aW50MTYsXG4gIGF0dGFjaFBvaW50czogICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBBdHRhY2hQb2ludCksICdnbHlwaENvdW50Jylcbn0pO1xuXG5sZXQgQ2FyZXRWYWx1ZSA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQxNiwge1xuICAxOiB7IC8vIERlc2lnbiB1bml0cyBvbmx5XG4gICAgY29vcmRpbmF0ZTogci5pbnQxNlxuICB9LFxuXG4gIDI6IHsgLy8gQ29udG91ciBwb2ludFxuICAgIGNhcmV0VmFsdWVQb2ludDogci51aW50MTZcbiAgfSxcblxuICAzOiB7IC8vIERlc2lnbiB1bml0cyBwbHVzIERldmljZSB0YWJsZVxuICAgIGNvb3JkaW5hdGU6ICAgICByLmludDE2LFxuICAgIGRldmljZVRhYmxlOiAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBEZXZpY2UpXG4gIH1cbn0pO1xuXG5sZXQgTGlnR2x5cGggPSBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDYXJldFZhbHVlKSwgci51aW50MTYpO1xuXG5sZXQgTGlnQ2FyZXRMaXN0ID0gbmV3IHIuU3RydWN0KHtcbiAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgbGlnR2x5cGhDb3VudDogIHIudWludDE2LFxuICBsaWdHbHlwaHM6ICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTGlnR2x5cGgpLCAnbGlnR2x5cGhDb3VudCcpXG59KTtcblxubGV0IE1hcmtHbHlwaFNldHNEZWYgPSBuZXcgci5TdHJ1Y3Qoe1xuICBtYXJrU2V0VGFibGVGb3JtYXQ6IHIudWludDE2LFxuICBtYXJrU2V0Q291bnQ6ICAgICAgIHIudWludDE2LFxuICBjb3ZlcmFnZTogICAgICAgICAgIG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MzIsIENvdmVyYWdlKSwgJ21hcmtTZXRDb3VudCcpXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDMyLCB7XG4gIGhlYWRlcjoge1xuICAgIGdseXBoQ2xhc3NEZWY6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpLFxuICAgIGF0dGFjaExpc3Q6ICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQXR0YWNoTGlzdCksXG4gICAgbGlnQ2FyZXRMaXN0OiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBMaWdDYXJldExpc3QpLFxuICAgIG1hcmtBdHRhY2hDbGFzc0RlZjogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpXG4gIH0sXG5cbiAgMHgwMDAxMDAwMDoge30sXG4gIDB4MDAwMTAwMDI6IHtcbiAgICBtYXJrR2x5cGhTZXRzRGVmOiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIE1hcmtHbHlwaFNldHNEZWYpXG4gIH0sXG4gIDB4MDAwMTAwMDM6IHtcbiAgICBtYXJrR2x5cGhTZXRzRGVmOiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIE1hcmtHbHlwaFNldHNEZWYpLFxuICAgIGl0ZW1WYXJpYXRpb25TdG9yZTogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgSXRlbVZhcmlhdGlvblN0b3JlKVxuICB9XG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7U2NyaXB0TGlzdCwgRmVhdHVyZUxpc3QsIExvb2t1cExpc3QsIENvdmVyYWdlLCBDbGFzc0RlZiwgRGV2aWNlLCBDb250ZXh0LCBDaGFpbmluZ0NvbnRleHR9IGZyb20gJy4vb3BlbnR5cGUnO1xuaW1wb3J0IHtGZWF0dXJlVmFyaWF0aW9uc30gZnJvbSAnLi92YXJpYXRpb25zJztcblxubGV0IFZhbHVlRm9ybWF0ID0gbmV3IHIuQml0ZmllbGQoci51aW50MTYsIFtcbiAgJ3hQbGFjZW1lbnQnLCAneVBsYWNlbWVudCcsXG4gICd4QWR2YW5jZScsICd5QWR2YW5jZScsXG4gICd4UGxhRGV2aWNlJywgJ3lQbGFEZXZpY2UnLFxuICAneEFkdkRldmljZScsICd5QWR2RGV2aWNlJ1xuXSk7XG5cbmxldCB0eXBlcyA9IHtcbiAgeFBsYWNlbWVudDogci5pbnQxNixcbiAgeVBsYWNlbWVudDogci5pbnQxNixcbiAgeEFkdmFuY2U6ICAgci5pbnQxNixcbiAgeUFkdmFuY2U6ICAgci5pbnQxNixcbiAgeFBsYURldmljZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRGV2aWNlLCB7IHR5cGU6ICdnbG9iYWwnLCByZWxhdGl2ZVRvOiBjdHggPT4gY3R4LnJlbCB9KSxcbiAgeVBsYURldmljZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRGV2aWNlLCB7IHR5cGU6ICdnbG9iYWwnLCByZWxhdGl2ZVRvOiBjdHggPT4gY3R4LnJlbCB9KSxcbiAgeEFkdkRldmljZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRGV2aWNlLCB7IHR5cGU6ICdnbG9iYWwnLCByZWxhdGl2ZVRvOiBjdHggPT4gY3R4LnJlbCB9KSxcbiAgeUFkdkRldmljZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRGV2aWNlLCB7IHR5cGU6ICdnbG9iYWwnLCByZWxhdGl2ZVRvOiBjdHggPT4gY3R4LnJlbCB9KVxufTtcblxuY2xhc3MgVmFsdWVSZWNvcmQge1xuICBjb25zdHJ1Y3RvcihrZXkgPSAndmFsdWVGb3JtYXQnKSB7XG4gICAgdGhpcy5rZXkgPSBrZXk7XG4gIH1cblxuICBidWlsZFN0cnVjdChwYXJlbnQpIHtcbiAgICBsZXQgc3RydWN0ID0gcGFyZW50O1xuICAgIHdoaWxlICghc3RydWN0W3RoaXMua2V5XSAmJiBzdHJ1Y3QucGFyZW50KSB7XG4gICAgICBzdHJ1Y3QgPSBzdHJ1Y3QucGFyZW50O1xuICAgIH1cblxuICAgIGlmICghc3RydWN0W3RoaXMua2V5XSkgcmV0dXJuO1xuXG4gICAgbGV0IGZpZWxkcyA9IHt9O1xuICAgIGZpZWxkcy5yZWwgPSAoKSA9PiBzdHJ1Y3QuX3N0YXJ0T2Zmc2V0O1xuXG4gICAgbGV0IGZvcm1hdCA9IHN0cnVjdFt0aGlzLmtleV07XG4gICAgZm9yIChsZXQga2V5IGluIGZvcm1hdCkge1xuICAgICAgaWYgKGZvcm1hdFtrZXldKSB7XG4gICAgICAgIGZpZWxkc1trZXldID0gdHlwZXNba2V5XTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IHIuU3RydWN0KGZpZWxkcyk7XG4gIH1cblxuICBzaXplKHZhbCwgY3R4KSB7XG4gICAgcmV0dXJuIHRoaXMuYnVpbGRTdHJ1Y3QoY3R4KS5zaXplKHZhbCwgY3R4KTtcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIGxldCByZXMgPSB0aGlzLmJ1aWxkU3RydWN0KHBhcmVudCkuZGVjb2RlKHN0cmVhbSwgcGFyZW50KTtcbiAgICBkZWxldGUgcmVzLnJlbDtcbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG5cbmxldCBQYWlyVmFsdWVSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBzZWNvbmRHbHlwaDogICAgci51aW50MTYsXG4gIHZhbHVlMTogICAgICAgICBuZXcgVmFsdWVSZWNvcmQoJ3ZhbHVlRm9ybWF0MScpLFxuICB2YWx1ZTI6ICAgICAgICAgbmV3IFZhbHVlUmVjb3JkKCd2YWx1ZUZvcm1hdDInKVxufSk7XG5cbmxldCBQYWlyU2V0ID0gbmV3IHIuQXJyYXkoUGFpclZhbHVlUmVjb3JkLCByLnVpbnQxNik7XG5cbmxldCBDbGFzczJSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICB2YWx1ZTE6IG5ldyBWYWx1ZVJlY29yZCgndmFsdWVGb3JtYXQxJyksXG4gIHZhbHVlMjogbmV3IFZhbHVlUmVjb3JkKCd2YWx1ZUZvcm1hdDInKVxufSk7XG5cbmxldCBBbmNob3IgPSBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMTogeyAvLyBEZXNpZ24gdW5pdHMgb25seVxuICAgIHhDb29yZGluYXRlOiAgICByLmludDE2LFxuICAgIHlDb29yZGluYXRlOiAgICByLmludDE2XG4gIH0sXG5cbiAgMjogeyAvLyBEZXNpZ24gdW5pdHMgcGx1cyBjb250b3VyIHBvaW50XG4gICAgeENvb3JkaW5hdGU6ICAgIHIuaW50MTYsXG4gICAgeUNvb3JkaW5hdGU6ICAgIHIuaW50MTYsXG4gICAgYW5jaG9yUG9pbnQ6ICAgIHIudWludDE2XG4gIH0sXG5cbiAgMzogeyAvLyBEZXNpZ24gdW5pdHMgcGx1cyBEZXZpY2UgdGFibGVzXG4gICAgeENvb3JkaW5hdGU6ICAgIHIuaW50MTYsXG4gICAgeUNvb3JkaW5hdGU6ICAgIHIuaW50MTYsXG4gICAgeERldmljZVRhYmxlOiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIERldmljZSksXG4gICAgeURldmljZVRhYmxlOiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIERldmljZSlcbiAgfVxufSk7XG5cbmxldCBFbnRyeUV4aXRSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBlbnRyeUFuY2hvcjogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQW5jaG9yLCB7dHlwZTogJ3BhcmVudCd9KSxcbiAgZXhpdEFuY2hvcjogICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEFuY2hvciwge3R5cGU6ICdwYXJlbnQnfSlcbn0pO1xuXG5sZXQgTWFya1JlY29yZCA9IG5ldyByLlN0cnVjdCh7XG4gIGNsYXNzOiAgICAgIHIudWludDE2LFxuICBtYXJrQW5jaG9yOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBBbmNob3IsIHt0eXBlOiAncGFyZW50J30pXG59KTtcblxubGV0IE1hcmtBcnJheSA9IG5ldyByLkFycmF5KE1hcmtSZWNvcmQsIHIudWludDE2KTtcblxubGV0IEJhc2VSZWNvcmQgID0gbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQW5jaG9yKSwgdCA9PiB0LnBhcmVudC5jbGFzc0NvdW50KTtcbmxldCBCYXNlQXJyYXkgICA9IG5ldyByLkFycmF5KEJhc2VSZWNvcmQsIHIudWludDE2KTtcblxubGV0IENvbXBvbmVudFJlY29yZCA9IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIEFuY2hvciksIHQgPT4gdC5wYXJlbnQucGFyZW50LmNsYXNzQ291bnQpO1xubGV0IExpZ2F0dXJlQXR0YWNoICA9IG5ldyByLkFycmF5KENvbXBvbmVudFJlY29yZCwgci51aW50MTYpO1xubGV0IExpZ2F0dXJlQXJyYXkgICA9IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIExpZ2F0dXJlQXR0YWNoKSwgci51aW50MTYpO1xuXG5sZXQgR1BPU0xvb2t1cCA9IG5ldyByLlZlcnNpb25lZFN0cnVjdCgnbG9va3VwVHlwZScsIHtcbiAgMTogbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7IC8vIFNpbmdsZSBBZGp1c3RtZW50XG4gICAgMTogeyAvLyBTaW5nbGUgcG9zaXRpb25pbmcgdmFsdWVcbiAgICAgIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgICB2YWx1ZUZvcm1hdDogICAgVmFsdWVGb3JtYXQsXG4gICAgICB2YWx1ZTogICAgICAgICAgbmV3IFZhbHVlUmVjb3JkKClcbiAgICB9LFxuICAgIDI6IHtcbiAgICAgIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgICB2YWx1ZUZvcm1hdDogICAgVmFsdWVGb3JtYXQsXG4gICAgICB2YWx1ZUNvdW50OiAgICAgci51aW50MTYsXG4gICAgICB2YWx1ZXM6ICAgICAgICAgbmV3IHIuTGF6eUFycmF5KG5ldyBWYWx1ZVJlY29yZCgpLCAndmFsdWVDb3VudCcpXG4gICAgfVxuICB9KSxcblxuICAyOiBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHsgLy8gUGFpciBBZGp1c3RtZW50IFBvc2l0aW9uaW5nXG4gICAgMTogeyAvLyBBZGp1c3RtZW50cyBmb3IgZ2x5cGggcGFpcnNcbiAgICAgIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgICB2YWx1ZUZvcm1hdDE6ICAgVmFsdWVGb3JtYXQsXG4gICAgICB2YWx1ZUZvcm1hdDI6ICAgVmFsdWVGb3JtYXQsXG4gICAgICBwYWlyU2V0Q291bnQ6ICAgci51aW50MTYsXG4gICAgICBwYWlyU2V0czogICAgICAgbmV3IHIuTGF6eUFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIFBhaXJTZXQpLCAncGFpclNldENvdW50JylcbiAgICB9LFxuXG4gICAgMjogeyAvLyBDbGFzcyBwYWlyIGFkanVzdG1lbnRcbiAgICAgIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgICB2YWx1ZUZvcm1hdDE6ICAgVmFsdWVGb3JtYXQsXG4gICAgICB2YWx1ZUZvcm1hdDI6ICAgVmFsdWVGb3JtYXQsXG4gICAgICBjbGFzc0RlZjE6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NEZWYpLFxuICAgICAgY2xhc3NEZWYyOiAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENsYXNzRGVmKSxcbiAgICAgIGNsYXNzMUNvdW50OiAgICByLnVpbnQxNixcbiAgICAgIGNsYXNzMkNvdW50OiAgICByLnVpbnQxNixcbiAgICAgIGNsYXNzUmVjb3JkczogICBuZXcgci5MYXp5QXJyYXkobmV3IHIuTGF6eUFycmF5KENsYXNzMlJlY29yZCwgJ2NsYXNzMkNvdW50JyksICdjbGFzczFDb3VudCcpXG4gICAgfVxuICB9KSxcblxuICAzOiB7IC8vIEN1cnNpdmUgQXR0YWNobWVudCBQb3NpdGlvbmluZ1xuICAgIGZvcm1hdDogICAgICAgICAgICAgci51aW50MTYsXG4gICAgY292ZXJhZ2U6ICAgICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgZW50cnlFeGl0Q291bnQ6ICAgICByLnVpbnQxNixcbiAgICBlbnRyeUV4aXRSZWNvcmRzOiAgIG5ldyByLkFycmF5KEVudHJ5RXhpdFJlY29yZCwgJ2VudHJ5RXhpdENvdW50JylcbiAgfSxcblxuICA0OiB7IC8vIE1hcmtUb0Jhc2UgQXR0YWNobWVudCBQb3NpdGlvbmluZ1xuICAgIGZvcm1hdDogICAgICAgICAgICAgci51aW50MTYsXG4gICAgbWFya0NvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgYmFzZUNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgY2xhc3NDb3VudDogICAgICAgICByLnVpbnQxNixcbiAgICBtYXJrQXJyYXk6ICAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIE1hcmtBcnJheSksXG4gICAgYmFzZUFycmF5OiAgICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBCYXNlQXJyYXkpXG4gIH0sXG5cbiAgNTogeyAvLyBNYXJrVG9MaWdhdHVyZSBBdHRhY2htZW50IFBvc2l0aW9uaW5nXG4gICAgZm9ybWF0OiAgICAgICAgICAgICByLnVpbnQxNixcbiAgICBtYXJrQ292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBsaWdhdHVyZUNvdmVyYWdlOiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBjbGFzc0NvdW50OiAgICAgICAgIHIudWludDE2LFxuICAgIG1hcmtBcnJheTogICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgTWFya0FycmF5KSxcbiAgICBsaWdhdHVyZUFycmF5OiAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIExpZ2F0dXJlQXJyYXkpXG4gIH0sXG5cbiAgNjogeyAvLyBNYXJrVG9NYXJrIEF0dGFjaG1lbnQgUG9zaXRpb25pbmdcbiAgICBmb3JtYXQ6ICAgICAgICAgICAgIHIudWludDE2LFxuICAgIG1hcmsxQ292ZXJhZ2U6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIG1hcmsyQ292ZXJhZ2U6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGNsYXNzQ291bnQ6ICAgICAgICAgci51aW50MTYsXG4gICAgbWFyazFBcnJheTogICAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBNYXJrQXJyYXkpLFxuICAgIG1hcmsyQXJyYXk6ICAgICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQmFzZUFycmF5KVxuICB9LFxuXG4gIDc6IENvbnRleHQsICAgICAgICAgIC8vIENvbnRleHR1YWwgcG9zaXRpb25pbmdcbiAgODogQ2hhaW5pbmdDb250ZXh0LCAgLy8gQ2hhaW5pbmcgY29udGV4dHVhbCBwb3NpdGlvbmluZ1xuXG4gIDk6IHsgLy8gRXh0ZW5zaW9uIFBvc2l0aW9uaW5nXG4gICAgcG9zRm9ybWF0OiAgIHIudWludDE2LFxuICAgIGxvb2t1cFR5cGU6ICByLnVpbnQxNiwgICAvLyBjYW5ub3QgYWxzbyBiZSA5XG4gICAgZXh0ZW5zaW9uOiAgIG5ldyByLlBvaW50ZXIoci51aW50MzIsIG51bGwpXG4gIH1cbn0pO1xuXG4vLyBGaXggY2lyY3VsYXIgcmVmZXJlbmNlXG5HUE9TTG9va3VwLnZlcnNpb25zWzldLmV4dGVuc2lvbi50eXBlID0gR1BPU0xvb2t1cDtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDMyLCB7XG4gIGhlYWRlcjoge1xuICAgIHNjcmlwdExpc3Q6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBTY3JpcHRMaXN0KSxcbiAgICBmZWF0dXJlTGlzdDogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRmVhdHVyZUxpc3QpLFxuICAgIGxvb2t1cExpc3Q6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBuZXcgTG9va3VwTGlzdChHUE9TTG9va3VwKSlcbiAgfSxcblxuICAweDAwMDEwMDAwOiB7fSxcbiAgMHgwMDAxMDAwMToge1xuICAgIGZlYXR1cmVWYXJpYXRpb25zOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBGZWF0dXJlVmFyaWF0aW9ucylcbiAgfVxufSk7XG5cbi8vIGV4cG9ydCBHUE9TTG9va3VwIGZvciBKU1RGIHRhYmxlXG5leHBvcnQgeyBHUE9TTG9va3VwIH07XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQge1NjcmlwdExpc3QsIEZlYXR1cmVMaXN0LCBMb29rdXBMaXN0LCBDb3ZlcmFnZSwgQ2xhc3NEZWYsIERldmljZSwgQ29udGV4dCwgQ2hhaW5pbmdDb250ZXh0fSBmcm9tICcuL29wZW50eXBlJztcbmltcG9ydCB7RmVhdHVyZVZhcmlhdGlvbnN9IGZyb20gJy4vdmFyaWF0aW9ucyc7XG5cbmxldCBTZXF1ZW5jZSA9IG5ldyByLkFycmF5KHIudWludDE2LCByLnVpbnQxNik7XG5sZXQgQWx0ZXJuYXRlU2V0ID0gU2VxdWVuY2U7XG5cbmxldCBMaWdhdHVyZSA9IG5ldyByLlN0cnVjdCh7XG4gIGdseXBoOiAgICAgIHIudWludDE2LFxuICBjb21wQ291bnQ6ICByLnVpbnQxNixcbiAgY29tcG9uZW50czogbmV3IHIuQXJyYXkoci51aW50MTYsIHQgPT4gdC5jb21wQ291bnQgLSAxKVxufSk7XG5cbmxldCBMaWdhdHVyZVNldCA9IG5ldyByLkFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIExpZ2F0dXJlKSwgci51aW50MTYpO1xuXG5sZXQgR1NVQkxvb2t1cCA9IG5ldyByLlZlcnNpb25lZFN0cnVjdCgnbG9va3VwVHlwZScsIHtcbiAgMTogbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7Ly8gU2luZ2xlIFN1YnN0aXR1dGlvblxuICAgIDE6IHtcbiAgICAgIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgICBkZWx0YUdseXBoSUQ6ICAgci5pbnQxNlxuICAgIH0sXG4gICAgMjoge1xuICAgICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICAgIGdseXBoQ291bnQ6ICAgICByLnVpbnQxNixcbiAgICAgIHN1YnN0aXR1dGU6ICAgICBuZXcgci5MYXp5QXJyYXkoci51aW50MTYsICdnbHlwaENvdW50JylcbiAgICB9XG4gIH0pLFxuXG4gIDI6IHsgLy8gTXVsdGlwbGUgU3Vic3RpdHV0aW9uXG4gICAgc3Vic3RGb3JtYXQ6ICAgIHIudWludDE2LFxuICAgIGNvdmVyYWdlOiAgICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksXG4gICAgY291bnQ6ICAgICAgICAgIHIudWludDE2LFxuICAgIHNlcXVlbmNlczogICAgICBuZXcgci5MYXp5QXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgU2VxdWVuY2UpLCAnY291bnQnKVxuICB9LFxuXG4gIDM6IHsgLy8gQWx0ZXJuYXRlIFN1YnN0aXR1dGlvblxuICAgIHN1YnN0Rm9ybWF0OiAgICByLnVpbnQxNixcbiAgICBjb3ZlcmFnZTogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLFxuICAgIGNvdW50OiAgICAgICAgICByLnVpbnQxNixcbiAgICBhbHRlcm5hdGVTZXQ6ICAgbmV3IHIuTGF6eUFycmF5KG5ldyByLlBvaW50ZXIoci51aW50MTYsIEFsdGVybmF0ZVNldCksICdjb3VudCcpXG4gIH0sXG5cbiAgNDogeyAvLyBMaWdhdHVyZSBTdWJzdGl0dXRpb25cbiAgICBzdWJzdEZvcm1hdDogICAgci51aW50MTYsXG4gICAgY292ZXJhZ2U6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBjb3VudDogICAgICAgICAgci51aW50MTYsXG4gICAgbGlnYXR1cmVTZXRzOiAgIG5ldyByLkxhenlBcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBMaWdhdHVyZVNldCksICdjb3VudCcpXG4gIH0sXG5cbiAgNTogQ29udGV4dCwgICAgICAgICAvLyBDb250ZXh0dWFsIFN1YnN0aXR1dGlvblxuICA2OiBDaGFpbmluZ0NvbnRleHQsIC8vIENoYWluaW5nIENvbnRleHR1YWwgU3Vic3RpdHV0aW9uXG5cbiAgNzogeyAvLyBFeHRlbnNpb24gU3Vic3RpdHV0aW9uXG4gICAgc3Vic3RGb3JtYXQ6ICAgci51aW50MTYsXG4gICAgbG9va3VwVHlwZTogICAgci51aW50MTYsICAgLy8gY2Fubm90IGFsc28gYmUgN1xuICAgIGV4dGVuc2lvbjogICAgIG5ldyByLlBvaW50ZXIoci51aW50MzIsIG51bGwpXG4gIH0sXG5cbiAgODogeyAvLyBSZXZlcnNlIENoYWluaW5nIENvbnRleHR1YWwgU2luZ2xlIFN1YnN0aXR1dGlvblxuICAgIHN1YnN0Rm9ybWF0OiAgICAgICAgICAgIHIudWludDE2LFxuICAgIGNvdmVyYWdlOiAgICAgICAgICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIENvdmVyYWdlKSxcbiAgICBiYWNrdHJhY2tDb3ZlcmFnZTogICAgICBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKHIudWludDE2LCBDb3ZlcmFnZSksICdiYWNrdHJhY2tHbHlwaENvdW50JyksXG4gICAgbG9va2FoZWFkR2x5cGhDb3VudDogICAgci51aW50MTYsXG4gICAgbG9va2FoZWFkQ292ZXJhZ2U6ICAgICAgbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ292ZXJhZ2UpLCAnbG9va2FoZWFkR2x5cGhDb3VudCcpLFxuICAgIGdseXBoQ291bnQ6ICAgICAgICAgICAgIHIudWludDE2LFxuICAgIHN1YnN0aXR1dGVzOiAgICAgICAgICAgIG5ldyByLkFycmF5KHIudWludDE2LCAnZ2x5cGhDb3VudCcpXG4gIH1cbn0pO1xuXG4vLyBGaXggY2lyY3VsYXIgcmVmZXJlbmNlXG5HU1VCTG9va3VwLnZlcnNpb25zWzddLmV4dGVuc2lvbi50eXBlID0gR1NVQkxvb2t1cDtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDMyLCB7XG4gIGhlYWRlcjoge1xuICAgIHNjcmlwdExpc3Q6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBTY3JpcHRMaXN0KSxcbiAgICBmZWF0dXJlTGlzdDogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgRmVhdHVyZUxpc3QpLFxuICAgIGxvb2t1cExpc3Q6ICAgICBuZXcgci5Qb2ludGVyKHIudWludDE2LCBuZXcgTG9va3VwTGlzdChHU1VCTG9va3VwKSlcbiAgfSxcblxuICAweDAwMDEwMDAwOiB7fSxcbiAgMHgwMDAxMDAwMToge1xuICAgIGZlYXR1cmVWYXJpYXRpb25zOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBGZWF0dXJlVmFyaWF0aW9ucylcbiAgfVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBTY3JpcHRMaXN0LCBGZWF0dXJlTGlzdCwgTG9va3VwTGlzdCwgQ292ZXJhZ2UsIENsYXNzRGVmLCBEZXZpY2UgfSBmcm9tICcuL29wZW50eXBlJztcbmltcG9ydCB7IEdQT1NMb29rdXAgfSBmcm9tICcuL0dQT1MnO1xuXG5sZXQgSnN0ZkdTVUJNb2RMaXN0ID0gbmV3IHIuQXJyYXkoci51aW50MTYsIHIudWludDE2KTtcblxubGV0IEpzdGZQcmlvcml0eSA9IG5ldyByLlN0cnVjdCh7XG4gIHNocmlua2FnZUVuYWJsZUdTVUI6ICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEpzdGZHU1VCTW9kTGlzdCksXG4gIHNocmlua2FnZURpc2FibGVHU1VCOiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEpzdGZHU1VCTW9kTGlzdCksXG4gIHNocmlua2FnZUVuYWJsZUdQT1M6ICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEpzdGZHU1VCTW9kTGlzdCksXG4gIHNocmlua2FnZURpc2FibGVHUE9TOiAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIEpzdGZHU1VCTW9kTGlzdCksXG4gIHNocmlua2FnZUpzdGZNYXg6ICAgICAgIG5ldyByLlBvaW50ZXIoci51aW50MTYsIG5ldyBMb29rdXBMaXN0KEdQT1NMb29rdXApKSxcbiAgZXh0ZW5zaW9uRW5hYmxlR1NVQjogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgZXh0ZW5zaW9uRGlzYWJsZUdTVUI6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgZXh0ZW5zaW9uRW5hYmxlR1BPUzogICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgZXh0ZW5zaW9uRGlzYWJsZUdQT1M6ICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkdTVUJNb2RMaXN0KSxcbiAgZXh0ZW5zaW9uSnN0Zk1heDogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgbmV3IExvb2t1cExpc3QoR1BPU0xvb2t1cCkpXG59KTtcblxubGV0IEpzdGZMYW5nU3lzID0gbmV3IHIuQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZlByaW9yaXR5KSwgci51aW50MTYpO1xuXG5sZXQgSnN0ZkxhbmdTeXNSZWNvcmQgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6ICAgICAgICAgbmV3IHIuU3RyaW5nKDQpLFxuICBqc3RmTGFuZ1N5czogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZkxhbmdTeXMpXG59KTtcblxubGV0IEpzdGZTY3JpcHQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBleHRlbmRlckdseXBoczogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgbmV3IHIuQXJyYXkoci51aW50MTYsIHIudWludDE2KSksIC8vIGFycmF5IG9mIGdseXBocyB0byBleHRlbmQgbGluZSBsZW5ndGhcbiAgZGVmYXVsdExhbmdTeXM6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIEpzdGZMYW5nU3lzKSxcbiAgbGFuZ1N5c0NvdW50OiAgIHIudWludDE2LFxuICBsYW5nU3lzUmVjb3JkczogbmV3IHIuQXJyYXkoSnN0ZkxhbmdTeXNSZWNvcmQsICdsYW5nU3lzQ291bnQnKVxufSk7XG5cbmxldCBKc3RmU2NyaXB0UmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICBuZXcgci5TdHJpbmcoNCksXG4gIHNjcmlwdDogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnN0ZlNjcmlwdCwge3R5cGU6ICdwYXJlbnQnfSlcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgci51aW50MzIsICAvLyBzaG91bGQgYmUgMHgwMDAxMDAwMFxuICBzY3JpcHRDb3VudDogci51aW50MTYsXG4gIHNjcmlwdExpc3Q6ICBuZXcgci5BcnJheShKc3RmU2NyaXB0UmVjb3JkLCAnc2NyaXB0Q291bnQnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyByZXNvbHZlTGVuZ3RoIH0gZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgSXRlbVZhcmlhdGlvblN0b3JlIH0gZnJvbSAnLi92YXJpYXRpb25zJztcblxuLy8gVE9ETzogYWRkIHRoaXMgdG8gcmVzdHJ1Y3R1cmVcbmNsYXNzIFZhcmlhYmxlU2l6ZU51bWJlciB7XG4gIGNvbnN0cnVjdG9yKHNpemUpIHtcbiAgICB0aGlzLl9zaXplID0gc2l6ZTtcbiAgfVxuXG4gIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIHN3aXRjaCAodGhpcy5zaXplKDAsIHBhcmVudCkpIHtcbiAgICAgIGNhc2UgMTogcmV0dXJuIHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgIGNhc2UgMjogcmV0dXJuIHN0cmVhbS5yZWFkVUludDE2QkUoKTtcbiAgICAgIGNhc2UgMzogcmV0dXJuIHN0cmVhbS5yZWFkVUludDI0QkUoKTtcbiAgICAgIGNhc2UgNDogcmV0dXJuIHN0cmVhbS5yZWFkVUludDMyQkUoKTtcbiAgICB9XG4gIH1cblxuICBzaXplKHZhbCwgcGFyZW50KSB7XG4gICAgcmV0dXJuIHJlc29sdmVMZW5ndGgodGhpcy5fc2l6ZSwgbnVsbCwgcGFyZW50KTtcbiAgfVxufVxuXG5sZXQgTWFwRGF0YUVudHJ5ID0gbmV3IHIuU3RydWN0KHtcbiAgZW50cnk6IG5ldyBWYXJpYWJsZVNpemVOdW1iZXIodCA9PiAoKHQucGFyZW50LmVudHJ5Rm9ybWF0ICYgMHgwMDMwKSA+PiA0KSArIDEpLFxuICBvdXRlckluZGV4OiB0ID0+IHQuZW50cnkgPj4gKCh0LnBhcmVudC5lbnRyeUZvcm1hdCAmIDB4MDAwRikgKyAxKSxcbiAgaW5uZXJJbmRleDogdCA9PiB0LmVudHJ5ICYgKCgxIDw8ICgodC5wYXJlbnQuZW50cnlGb3JtYXQgJiAweDAwMEYpICsgMSkpIC0gMSlcbn0pO1xuXG5sZXQgRGVsdGFTZXRJbmRleE1hcCA9IG5ldyByLlN0cnVjdCh7XG4gIGVudHJ5Rm9ybWF0OiByLnVpbnQxNixcbiAgbWFwQ291bnQ6IHIudWludDE2LFxuICBtYXBEYXRhOiBuZXcgci5BcnJheShNYXBEYXRhRW50cnksICdtYXBDb3VudCcpXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgbWFqb3JWZXJzaW9uOiByLnVpbnQxNixcbiAgbWlub3JWZXJzaW9uOiByLnVpbnQxNixcbiAgaXRlbVZhcmlhdGlvblN0b3JlOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBJdGVtVmFyaWF0aW9uU3RvcmUpLFxuICBhZHZhbmNlV2lkdGhNYXBwaW5nOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBEZWx0YVNldEluZGV4TWFwKSxcbiAgTFNCTWFwcGluZzogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgRGVsdGFTZXRJbmRleE1hcCksXG4gIFJTQk1hcHBpbmc6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIERlbHRhU2V0SW5kZXhNYXApXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IFNpZ25hdHVyZSA9IG5ldyByLlN0cnVjdCh7XG4gIGZvcm1hdDogci51aW50MzIsXG4gIGxlbmd0aDogci51aW50MzIsXG4gIG9mZnNldDogci51aW50MzJcbn0pO1xuXG5sZXQgU2lnbmF0dXJlQmxvY2sgPSBuZXcgci5TdHJ1Y3Qoe1xuICByZXNlcnZlZDogICAgICAgbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYsIDIpLFxuICBjYlNpZ25hdHVyZTogICAgci51aW50MzIsICAvLyBMZW5ndGggKGluIGJ5dGVzKSBvZiB0aGUgUEtDUyM3IHBhY2tldCBpbiBwYlNpZ25hdHVyZVxuICBzaWduYXR1cmU6ICAgICAgbmV3IHIuQnVmZmVyKCdjYlNpZ25hdHVyZScpXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdWxWZXJzaW9uOiAgICAgICByLnVpbnQzMiwgIC8vIFZlcnNpb24gbnVtYmVyIG9mIHRoZSBEU0lHIHRhYmxlICgweDAwMDAwMDAxKVxuICB1c051bVNpZ3M6ICAgICAgIHIudWludDE2LCAgLy8gTnVtYmVyIG9mIHNpZ25hdHVyZXMgaW4gdGhlIHRhYmxlXG4gIHVzRmxhZzogICAgICAgICAgci51aW50MTYsICAvLyBQZXJtaXNzaW9uIGZsYWdzXG4gIHNpZ25hdHVyZXM6ICAgICAgbmV3IHIuQXJyYXkoU2lnbmF0dXJlLCAndXNOdW1TaWdzJyksXG4gIHNpZ25hdHVyZUJsb2NrczogbmV3IHIuQXJyYXkoU2lnbmF0dXJlQmxvY2ssICd1c051bVNpZ3MnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBHYXNwUmFuZ2UgPSBuZXcgci5TdHJ1Y3Qoe1xuICByYW5nZU1heFBQRU06ICAgICAgIHIudWludDE2LCAgICAgICAgICAgICAgICAgIC8vIFVwcGVyIGxpbWl0IG9mIHJhbmdlLCBpbiBwcGVtXG4gIHJhbmdlR2FzcEJlaGF2aW9yOiAgbmV3IHIuQml0ZmllbGQoci51aW50MTYsIFsgLy8gRmxhZ3MgZGVzY3JpYmluZyBkZXNpcmVkIHJhc3Rlcml6ZXIgYmVoYXZpb3JcbiAgICAnZ3JheXNjYWxlJywgJ2dyaWRmaXQnLFxuICAgICdzeW1tZXRyaWNTbW9vdGhpbmcnLCAnc3ltbWV0cmljR3JpZGZpdCcgICAgIC8vIG9ubHkgaW4gdmVyc2lvbiAxLCBmb3IgQ2xlYXJUeXBlXG4gIF0pXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogICAgci51aW50MTYsICAvLyBzZXQgdG8gMFxuICBudW1SYW5nZXM6ICByLnVpbnQxNixcbiAgZ2FzcFJhbmdlczogbmV3IHIuQXJyYXkoR2FzcFJhbmdlLCAnbnVtUmFuZ2VzJykgLy8gU29ydGVkIGJ5IHBwZW1cbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgRGV2aWNlUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAgcGl4ZWxTaXplOiAgICAgIHIudWludDgsXG4gIG1heGltdW1XaWR0aDogICByLnVpbnQ4LFxuICB3aWR0aHM6ICAgICAgICAgbmV3IHIuQXJyYXkoci51aW50OCwgdCA9PiB0LnBhcmVudC5wYXJlbnQubWF4cC5udW1HbHlwaHMpXG59KTtcblxuLy8gVGhlIEhvcml6b250YWwgRGV2aWNlIE1ldHJpY3MgdGFibGUgc3RvcmVzIGludGVnZXIgYWR2YW5jZSB3aWR0aHMgc2NhbGVkIHRvIHBhcnRpY3VsYXIgcGl4ZWwgc2l6ZXNcbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246ICAgICAgICAgICAgci51aW50MTYsXG4gIG51bVJlY29yZHM6ICAgICAgICAgci5pbnQxNixcbiAgc2l6ZURldmljZVJlY29yZDogICByLmludDMyLFxuICByZWNvcmRzOiAgICAgICAgICAgIG5ldyByLkFycmF5KERldmljZVJlY29yZCwgJ251bVJlY29yZHMnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBLZXJuUGFpciA9IG5ldyByLlN0cnVjdCh7XG4gIGxlZnQ6ICAgci51aW50MTYsXG4gIHJpZ2h0OiAgci51aW50MTYsXG4gIHZhbHVlOiAgci5pbnQxNlxufSk7XG5cbmxldCBDbGFzc1RhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgZmlyc3RHbHlwaDogci51aW50MTYsXG4gIG5HbHlwaHM6IHIudWludDE2LFxuICBvZmZzZXRzOiBuZXcgci5BcnJheShyLnVpbnQxNiwgJ25HbHlwaHMnKSxcbiAgbWF4OiB0ID0+IHQub2Zmc2V0cy5sZW5ndGggJiYgTWF0aC5tYXguYXBwbHkoTWF0aCwgdC5vZmZzZXRzKVxufSk7XG5cbmxldCBLZXJuMkFycmF5ID0gbmV3IHIuU3RydWN0KHtcbiAgb2ZmOiB0ID0+IHQuX3N0YXJ0T2Zmc2V0IC0gdC5wYXJlbnQucGFyZW50Ll9zdGFydE9mZnNldCxcbiAgbGVuOiB0ID0+ICgoKHQucGFyZW50LmxlZnRUYWJsZS5tYXggLSB0Lm9mZikgLyB0LnBhcmVudC5yb3dXaWR0aCkgKyAxKSAqICh0LnBhcmVudC5yb3dXaWR0aCAvIDIpLFxuICB2YWx1ZXM6IG5ldyByLkxhenlBcnJheShyLmludDE2LCAnbGVuJylcbn0pO1xuXG5sZXQgS2VyblN1YnRhYmxlID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCdmb3JtYXQnLCB7XG4gIDA6IHtcbiAgICBuUGFpcnM6ICAgICAgICAgci51aW50MTYsXG4gICAgc2VhcmNoUmFuZ2U6ICAgIHIudWludDE2LFxuICAgIGVudHJ5U2VsZWN0b3I6ICByLnVpbnQxNixcbiAgICByYW5nZVNoaWZ0OiAgICAgci51aW50MTYsXG4gICAgcGFpcnM6ICAgICAgICAgIG5ldyByLkFycmF5KEtlcm5QYWlyLCAnblBhaXJzJylcbiAgfSxcblxuICAyOiB7XG4gICAgcm93V2lkdGg6ICAgci51aW50MTYsXG4gICAgbGVmdFRhYmxlOiAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NUYWJsZSwge3R5cGU6ICdwYXJlbnQnfSksXG4gICAgcmlnaHRUYWJsZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NUYWJsZSwge3R5cGU6ICdwYXJlbnQnfSksXG4gICAgYXJyYXk6ICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgS2VybjJBcnJheSwge3R5cGU6ICdwYXJlbnQnfSlcbiAgfSxcblxuICAzOiB7XG4gICAgZ2x5cGhDb3VudDogICAgICAgci51aW50MTYsXG4gICAga2VyblZhbHVlQ291bnQ6ICAgci51aW50OCxcbiAgICBsZWZ0Q2xhc3NDb3VudDogICByLnVpbnQ4LFxuICAgIHJpZ2h0Q2xhc3NDb3VudDogIHIudWludDgsXG4gICAgZmxhZ3M6ICAgICAgICAgICAgci51aW50OCxcbiAgICBrZXJuVmFsdWU6ICAgICAgICBuZXcgci5BcnJheShyLmludDE2LCAna2VyblZhbHVlQ291bnQnKSxcbiAgICBsZWZ0Q2xhc3M6ICAgICAgICBuZXcgci5BcnJheShyLnVpbnQ4LCAnZ2x5cGhDb3VudCcpLFxuICAgIHJpZ2h0Q2xhc3M6ICAgICAgIG5ldyByLkFycmF5KHIudWludDgsICdnbHlwaENvdW50JyksXG4gICAga2VybkluZGV4OiAgICAgICAgbmV3IHIuQXJyYXkoci51aW50OCwgdCA9PiB0LmxlZnRDbGFzc0NvdW50ICogdC5yaWdodENsYXNzQ291bnQpXG4gIH1cbn0pO1xuXG5sZXQgS2VyblRhYmxlID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCd2ZXJzaW9uJywge1xuICAwOiB7IC8vIE1pY3Jvc29mdCB1c2VzIHRoaXMgZm9ybWF0XG4gICAgc3ViVmVyc2lvbjogci51aW50MTYsICAvLyBNaWNyb3NvZnQgaGFzIGFuIGV4dHJhIHN1Yi10YWJsZSB2ZXJzaW9uIG51bWJlclxuICAgIGxlbmd0aDogICAgIHIudWludDE2LCAgLy8gTGVuZ3RoIG9mIHRoZSBzdWJ0YWJsZSwgaW4gYnl0ZXNcbiAgICBmb3JtYXQ6ICAgICByLnVpbnQ4LCAgIC8vIEZvcm1hdCBvZiBzdWJ0YWJsZVxuICAgIGNvdmVyYWdlOiAgIG5ldyByLkJpdGZpZWxkKHIudWludDgsIFtcbiAgICAgICdob3Jpem9udGFsJywgICAgLy8gMSBpZiB0YWJsZSBoYXMgaG9yaXpvbnRhbCBkYXRhLCAwIGlmIHZlcnRpY2FsXG4gICAgICAnbWluaW11bScsICAgICAgIC8vIElmIHNldCB0byAxLCB0aGUgdGFibGUgaGFzIG1pbmltdW0gdmFsdWVzLiBJZiBzZXQgdG8gMCwgdGhlIHRhYmxlIGhhcyBrZXJuaW5nIHZhbHVlcy5cbiAgICAgICdjcm9zc1N0cmVhbScsICAgLy8gSWYgc2V0IHRvIDEsIGtlcm5pbmcgaXMgcGVycGVuZGljdWxhciB0byB0aGUgZmxvdyBvZiB0aGUgdGV4dFxuICAgICAgJ292ZXJyaWRlJyAgICAgIC8vIElmIHNldCB0byAxIHRoZSB2YWx1ZSBpbiB0aGlzIHRhYmxlIHJlcGxhY2VzIHRoZSBhY2N1bXVsYXRlZCB2YWx1ZVxuICAgIF0pLFxuICAgIHN1YnRhYmxlOiAgIEtlcm5TdWJ0YWJsZSxcbiAgICBwYWRkaW5nOiBuZXcgci5SZXNlcnZlZChyLnVpbnQ4LCB0ID0+IHQubGVuZ3RoIC0gdC5fY3VycmVudE9mZnNldClcbiAgfSxcbiAgMTogeyAvLyBBcHBsZSB1c2VzIHRoaXMgZm9ybWF0XG4gICAgbGVuZ3RoOiAgICAgci51aW50MzIsXG4gICAgY292ZXJhZ2U6ICAgbmV3IHIuQml0ZmllbGQoci51aW50OCwgW1xuICAgICAgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCxcbiAgICAgICd2YXJpYXRpb24nLCAgICAgLy8gU2V0IGlmIHRhYmxlIGhhcyB2YXJpYXRpb24ga2VybmluZyB2YWx1ZXNcbiAgICAgICdjcm9zc1N0cmVhbScsICAgLy8gU2V0IGlmIHRhYmxlIGhhcyBjcm9zcy1zdHJlYW0ga2VybmluZyB2YWx1ZXNcbiAgICAgICd2ZXJ0aWNhbCcgICAgICAvLyBTZXQgaWYgdGFibGUgaGFzIHZlcnRpY2FsIGtlcm5pbmcgdmFsdWVzXG4gICAgXSksXG4gICAgZm9ybWF0OiAgICAgci51aW50OCxcbiAgICB0dXBsZUluZGV4OiByLnVpbnQxNixcbiAgICBzdWJ0YWJsZTogICBLZXJuU3VidGFibGUsXG4gICAgcGFkZGluZzogbmV3IHIuUmVzZXJ2ZWQoci51aW50OCwgdCA9PiB0Lmxlbmd0aCAtIHQuX2N1cnJlbnRPZmZzZXQpXG4gIH1cbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5WZXJzaW9uZWRTdHJ1Y3Qoci51aW50MTYsIHtcbiAgMDogeyAvLyBNaWNyb3NvZnQgVmVyc2lvblxuICAgIG5UYWJsZXM6ICAgIHIudWludDE2LFxuICAgIHRhYmxlczogICAgIG5ldyByLkFycmF5KEtlcm5UYWJsZSwgJ25UYWJsZXMnKVxuICB9LFxuXG4gIDE6IHsgLy8gQXBwbGUgVmVyc2lvblxuICAgIHJlc2VydmVkOiAgIG5ldyByLlJlc2VydmVkKHIudWludDE2KSwgLy8gdGhlIG90aGVyIGhhbGYgb2YgdGhlIHZlcnNpb24gbnVtYmVyXG4gICAgblRhYmxlczogICAgci51aW50MzIsXG4gICAgdGFibGVzOiAgICAgbmV3IHIuQXJyYXkoS2VyblRhYmxlLCAnblRhYmxlcycpXG4gIH1cbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBMaW5lYXIgVGhyZXNob2xkIHRhYmxlXG4vLyBSZWNvcmRzIHRoZSBwcGVtIGZvciBlYWNoIGdseXBoIGF0IHdoaWNoIHRoZSBzY2FsaW5nIGJlY29tZXMgbGluZWFyIGFnYWluLFxuLy8gZGVzcGl0ZSBpbnN0cnVjdGlvbnMgZWZmZWN0aW5nIHRoZSBhZHZhbmNlIHdpZHRoXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICByLnVpbnQxNixcbiAgbnVtR2x5cGhzOiAgci51aW50MTYsXG4gIHlQZWxzOiAgICAgIG5ldyByLkFycmF5KHIudWludDgsICdudW1HbHlwaHMnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbi8vIFBDTCA1IFRhYmxlXG4vLyBOT1RFOiBUaGUgUENMVCB0YWJsZSBpcyBzdHJvbmdseSBkaXNjb3VyYWdlZCBmb3IgT3BlblR5cGUgZm9udHMgd2l0aCBUcnVlVHlwZSBvdXRsaW5lc1xuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogICAgICAgICAgICAgIHIudWludDE2LFxuICBmb250TnVtYmVyOiAgICAgICAgICAgci51aW50MzIsXG4gIHBpdGNoOiAgICAgICAgICAgICAgICByLnVpbnQxNixcbiAgeEhlaWdodDogICAgICAgICAgICAgIHIudWludDE2LFxuICBzdHlsZTogICAgICAgICAgICAgICAgci51aW50MTYsXG4gIHR5cGVGYW1pbHk6ICAgICAgICAgICByLnVpbnQxNixcbiAgY2FwSGVpZ2h0OiAgICAgICAgICAgIHIudWludDE2LFxuICBzeW1ib2xTZXQ6ICAgICAgICAgICAgci51aW50MTYsXG4gIHR5cGVmYWNlOiAgICAgICAgICAgICBuZXcgci5TdHJpbmcoMTYpLFxuICBjaGFyYWN0ZXJDb21wbGVtZW50OiAgbmV3IHIuU3RyaW5nKDgpLFxuICBmaWxlTmFtZTogICAgICAgICAgICAgbmV3IHIuU3RyaW5nKDYpLFxuICBzdHJva2VXZWlnaHQ6ICAgICAgICAgbmV3IHIuU3RyaW5nKDEpLFxuICB3aWR0aFR5cGU6ICAgICAgICAgICAgbmV3IHIuU3RyaW5nKDEpLFxuICBzZXJpZlN0eWxlOiAgICAgICAgICAgci51aW50OCxcbiAgcmVzZXJ2ZWQ6ICAgICAgICAgICAgIG5ldyByLlJlc2VydmVkKHIudWludDgpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gVkRNWCB0YWJsZXMgY29udGFpbiBhc2NlbmRlci9kZXNjZW5kZXIgb3ZlcnJpZGVzIGZvciBjZXJ0YWluICh1c3VhbGx5IHNtYWxsKVxuLy8gc2l6ZXMuIFRoaXMgaXMgbmVlZGVkIGluIG9yZGVyIHRvIG1hdGNoIGZvbnQgbWV0cmljcyBvbiBXaW5kb3dzLlxuXG5sZXQgUmF0aW8gPSBuZXcgci5TdHJ1Y3Qoe1xuICBiQ2hhclNldDogICAgICAgci51aW50OCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIENoYXJhY3RlciBzZXRcbiAgeFJhdGlvOiAgICAgICAgIHIudWludDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBWYWx1ZSB0byB1c2UgZm9yIHgtUmF0aW9cbiAgeVN0YXJ0UmF0aW86ICAgIHIudWludDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBTdGFydGluZyB5LVJhdGlvIHZhbHVlXG4gIHlFbmRSYXRpbzogICAgICByLnVpbnQ4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5kaW5nIHktUmF0aW8gdmFsdWVcbn0pO1xuXG5sZXQgdlRhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgeVBlbEhlaWdodDogICAgIHIudWludDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB5UGVsSGVpZ2h0IHRvIHdoaWNoIHZhbHVlcyBhcHBseVxuICB5TWF4OiAgICAgICAgICAgci5pbnQxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1heGltdW0gdmFsdWUgKGluIHBlbHMpIGZvciB0aGlzIHlQZWxIZWlnaHRcbiAgeU1pbjogICAgICAgICAgIHIuaW50MTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNaW5pbXVtIHZhbHVlIChpbiBwZWxzKSBmb3IgdGhpcyB5UGVsSGVpZ2h0XG59KTtcblxubGV0IFZkbXhHcm91cCA9IG5ldyByLlN0cnVjdCh7XG4gIHJlY3M6ICAgICAgICAgICByLnVpbnQxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTnVtYmVyIG9mIGhlaWdodCByZWNvcmRzIGluIHRoaXMgZ3JvdXBcbiAgc3RhcnRzejogICAgICAgIHIudWludDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBTdGFydGluZyB5UGVsSGVpZ2h0XG4gIGVuZHN6OiAgICAgICAgICByLnVpbnQ4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5kaW5nIHlQZWxIZWlnaHRcbiAgZW50cmllczogICAgICAgIG5ldyByLkFycmF5KHZUYWJsZSwgJ3JlY3MnKSAgICAgICAgICAvLyBUaGUgVkRNWCByZWNvcmRzXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogICAgICAgIHIudWludDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBWZXJzaW9uIG51bWJlciAoMCBvciAxKVxuICBudW1SZWNzOiAgICAgICAgci51aW50MTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE51bWJlciBvZiBWRE1YIGdyb3VwcyBwcmVzZW50XG4gIG51bVJhdGlvczogICAgICByLnVpbnQxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTnVtYmVyIG9mIGFzcGVjdCByYXRpbyBncm91cGluZ3NcbiAgcmF0aW9SYW5nZXM6ICAgIG5ldyByLkFycmF5KFJhdGlvLCAnbnVtUmF0aW9zJyksICAgICAvLyBSYXRpbyByYW5nZXNcbiAgb2Zmc2V0czogICAgICAgIG5ldyByLkFycmF5KHIudWludDE2LCAnbnVtUmF0aW9zJyksICAvLyBPZmZzZXQgdG8gdGhlIFZETVggZ3JvdXAgZm9yIHRoaXMgcmF0aW8gcmFuZ2VcbiAgZ3JvdXBzOiAgICAgICAgIG5ldyByLkFycmF5KFZkbXhHcm91cCwgJ251bVJlY3MnKSAgICAvLyBUaGUgYWN0dWFsIFZETVggZ3JvdXBpbmdzXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gVmVydGljYWwgSGVhZGVyIFRhYmxlXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiAgICAgICAgICAgICAgICByLnVpbnQxNiwgIC8vIFZlcnNpb24gbnVtYmVyIG9mIHRoZSBWZXJ0aWNhbCBIZWFkZXIgVGFibGVcbiAgYXNjZW50OiAgICAgICAgICAgICAgICAgci5pbnQxNiwgICAvLyBUaGUgdmVydGljYWwgdHlwb2dyYXBoaWMgYXNjZW5kZXIgZm9yIHRoaXMgZm9udFxuICBkZXNjZW50OiAgICAgICAgICAgICAgICByLmludDE2LCAgIC8vIFRoZSB2ZXJ0aWNhbCB0eXBvZ3JhcGhpYyBkZXNjZW5kZXIgZm9yIHRoaXMgZm9udFxuICBsaW5lR2FwOiAgICAgICAgICAgICAgICByLmludDE2LCAgIC8vIFRoZSB2ZXJ0aWNhbCB0eXBvZ3JhcGhpYyBsaW5lIGdhcCBmb3IgdGhpcyBmb250XG4gIGFkdmFuY2VIZWlnaHRNYXg6ICAgICAgIHIuaW50MTYsICAgLy8gVGhlIG1heGltdW0gYWR2YW5jZSBoZWlnaHQgbWVhc3VyZW1lbnQgZm91bmQgaW4gdGhlIGZvbnRcbiAgbWluVG9wU2lkZUJlYXJpbmc6ICAgICAgci5pbnQxNiwgICAvLyBUaGUgbWluaW11bSB0b3Agc2lkZSBiZWFyaW5nIG1lYXN1cmVtZW50IGZvdW5kIGluIHRoZSBmb250XG4gIG1pbkJvdHRvbVNpZGVCZWFyaW5nOiAgIHIuaW50MTYsICAgLy8gVGhlIG1pbmltdW0gYm90dG9tIHNpZGUgYmVhcmluZyBtZWFzdXJlbWVudCBmb3VuZCBpbiB0aGUgZm9udFxuICB5TWF4RXh0ZW50OiAgICAgICAgICAgICByLmludDE2LFxuICBjYXJldFNsb3BlUmlzZTogICAgICAgICByLmludDE2LCAgIC8vIENhcmV0IHNsb3BlIChyaXNlL3J1bilcbiAgY2FyZXRTbG9wZVJ1bjogICAgICAgICAgci5pbnQxNixcbiAgY2FyZXRPZmZzZXQ6ICAgICAgICAgICAgci5pbnQxNiwgICAvLyBTZXQgdmFsdWUgZXF1YWwgdG8gMCBmb3Igbm9uc2xhbnRlZCBmb250c1xuICByZXNlcnZlZDogICAgICAgICAgICAgICBuZXcgci5SZXNlcnZlZChyLmludDE2LCA0KSxcbiAgbWV0cmljRGF0YUZvcm1hdDogICAgICAgci5pbnQxNiwgICAvLyBTZXQgdG8gMFxuICBudW1iZXJPZk1ldHJpY3M6ICAgICAgICByLnVpbnQxNiAgIC8vIE51bWJlciBvZiBhZHZhbmNlIGhlaWdodHMgaW4gdGhlIFZlcnRpY2FsIE1ldHJpY3MgdGFibGVcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgVm10eEVudHJ5ID0gbmV3IHIuU3RydWN0KHtcbiAgYWR2YW5jZTogci51aW50MTYsICAvLyBUaGUgYWR2YW5jZSBoZWlnaHQgb2YgdGhlIGdseXBoXG4gIGJlYXJpbmc6IHIuaW50MTYgICAgLy8gVGhlIHRvcCBzaWRlYmVhcmluZyBvZiB0aGUgZ2x5cGhcbn0pO1xuXG4vLyBWZXJ0aWNhbCBNZXRyaWNzIFRhYmxlXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICBtZXRyaWNzOiAgbmV3IHIuTGF6eUFycmF5KFZtdHhFbnRyeSwgdCA9PiB0LnBhcmVudC52aGVhLm51bWJlck9mTWV0cmljcyksXG4gIGJlYXJpbmdzOiBuZXcgci5MYXp5QXJyYXkoci5pbnQxNiwgdCA9PiB0LnBhcmVudC5tYXhwLm51bUdseXBocyAtIHQucGFyZW50LnZoZWEubnVtYmVyT2ZNZXRyaWNzKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBzaG9ydEZyYWMgPSBuZXcgci5GaXhlZCgxNiwgJ0JFJywgMTQpO1xuXG5sZXQgQ29ycmVzcG9uZGVuY2UgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmcm9tQ29vcmQ6IHNob3J0RnJhYyxcbiAgdG9Db29yZDogc2hvcnRGcmFjXG59KTtcblxubGV0IFNlZ21lbnQgPSBuZXcgci5TdHJ1Y3Qoe1xuICBwYWlyQ291bnQ6IHIudWludDE2LFxuICBjb3JyZXNwb25kZW5jZTogbmV3IHIuQXJyYXkoQ29ycmVzcG9uZGVuY2UsICdwYWlyQ291bnQnKVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIuZml4ZWQzMixcbiAgYXhpc0NvdW50OiByLnVpbnQzMixcbiAgc2VnbWVudDogbmV3IHIuQXJyYXkoU2VnbWVudCwgJ2F4aXNDb3VudCcpXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7IExvb2t1cFRhYmxlIH0gZnJvbSAnLi9hYXQnO1xuXG5sZXQgQnNsblN1YnRhYmxlID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCdmb3JtYXQnLCB7XG4gIDA6IHsgLy8gRGlzdGFuY2UtYmFzZWQsIG5vIG1hcHBpbmdcbiAgICBkZWx0YXM6IG5ldyByLkFycmF5KHIuaW50MTYsIDMyKVxuICB9LFxuXG4gIDE6IHsgLy8gRGlzdGFuY2UtYmFzZWQsIHdpdGggbWFwcGluZ1xuICAgIGRlbHRhczogbmV3IHIuQXJyYXkoci5pbnQxNiwgMzIpLFxuICAgIG1hcHBpbmdEYXRhOiBuZXcgTG9va3VwVGFibGUoci51aW50MTYpXG4gIH0sXG5cbiAgMjogeyAvLyBDb250cm9sIHBvaW50LWJhc2VkLCBubyBtYXBwaW5nXG4gICAgc3RhbmRhcmRHbHlwaDogci51aW50MTYsXG4gICAgY29udHJvbFBvaW50czogbmV3IHIuQXJyYXkoci51aW50MTYsIDMyKVxuICB9LFxuXG4gIDM6IHsgLy8gQ29udHJvbCBwb2ludC1iYXNlZCwgd2l0aCBtYXBwaW5nXG4gICAgc3RhbmRhcmRHbHlwaDogci51aW50MTYsXG4gICAgY29udHJvbFBvaW50czogbmV3IHIuQXJyYXkoci51aW50MTYsIDMyKSxcbiAgICBtYXBwaW5nRGF0YTogbmV3IExvb2t1cFRhYmxlKHIudWludDE2KVxuICB9XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogci5maXhlZDMyLFxuICBmb3JtYXQ6IHIudWludDE2LFxuICBkZWZhdWx0QmFzZWxpbmU6IHIudWludDE2LFxuICBzdWJ0YWJsZTogQnNsblN1YnRhYmxlXG59KTtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuY2xhc3MgVW5ib3VuZGVkQXJyYXlBY2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKHR5cGUsIHN0cmVhbSwgcGFyZW50KSB7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnN0cmVhbSA9IHN0cmVhbTtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICB0aGlzLmJhc2UgPSB0aGlzLnN0cmVhbS5wb3M7XG4gICAgdGhpcy5faXRlbXMgPSBbXTtcbiAgfVxuXG4gIGdldEl0ZW0oaW5kZXgpIHtcbiAgICBpZiAodGhpcy5faXRlbXNbaW5kZXhdID09IG51bGwpIHtcbiAgICAgIGxldCBwb3MgPSB0aGlzLnN0cmVhbS5wb3M7XG4gICAgICB0aGlzLnN0cmVhbS5wb3MgPSB0aGlzLmJhc2UgKyB0aGlzLnR5cGUuc2l6ZShudWxsLCB0aGlzLnBhcmVudCkgKiBpbmRleDtcbiAgICAgIHRoaXMuX2l0ZW1zW2luZGV4XSA9IHRoaXMudHlwZS5kZWNvZGUodGhpcy5zdHJlYW0sIHRoaXMucGFyZW50KTtcbiAgICAgIHRoaXMuc3RyZWFtLnBvcyA9IHBvcztcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5faXRlbXNbaW5kZXhdO1xuICB9XG5cbiAgaW5zcGVjdCgpIHtcbiAgICByZXR1cm4gYFtVbmJvdW5kZWRBcnJheSAke3RoaXMudHlwZS5jb25zdHJ1Y3Rvci5uYW1lfV1gO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbmJvdW5kZWRBcnJheSBleHRlbmRzIHIuQXJyYXkge1xuICBjb25zdHJ1Y3Rvcih0eXBlKSB7XG4gICAgc3VwZXIodHlwZSwgMCk7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICByZXR1cm4gbmV3IFVuYm91bmRlZEFycmF5QWNjZXNzb3IodGhpcy50eXBlLCBzdHJlYW0sIHBhcmVudCk7XG4gIH1cbn1cblxuZXhwb3J0IGxldCBMb29rdXBUYWJsZSA9IGZ1bmN0aW9uKFZhbHVlVHlwZSA9IHIudWludDE2KSB7XG4gIC8vIEhlbHBlciBjbGFzcyB0aGF0IG1ha2VzIGludGVybmFsIHN0cnVjdHVyZXMgaW52aXNpYmxlIHRvIHBvaW50ZXJzXG4gIGNsYXNzIFNoYWRvdyB7XG4gICAgY29uc3RydWN0b3IodHlwZSkge1xuICAgICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB9XG5cbiAgICBkZWNvZGUoc3RyZWFtLCBjdHgpIHtcbiAgICAgIGN0eCA9IGN0eC5wYXJlbnQucGFyZW50O1xuICAgICAgcmV0dXJuIHRoaXMudHlwZS5kZWNvZGUoc3RyZWFtLCBjdHgpO1xuICAgIH1cblxuICAgIHNpemUodmFsLCBjdHgpIHtcbiAgICAgIGN0eCA9IGN0eC5wYXJlbnQucGFyZW50O1xuICAgICAgcmV0dXJuIHRoaXMudHlwZS5zaXplKHZhbCwgY3R4KTtcbiAgICB9XG5cbiAgICBlbmNvZGUoc3RyZWFtLCB2YWwsIGN0eCkge1xuICAgICAgY3R4ID0gY3R4LnBhcmVudC5wYXJlbnQ7XG4gICAgICByZXR1cm4gdGhpcy50eXBlLmVuY29kZShzdHJlYW0sIHZhbCwgY3R4KTtcbiAgICB9XG4gIH1cblxuICBWYWx1ZVR5cGUgPSBuZXcgU2hhZG93KFZhbHVlVHlwZSk7XG5cbiAgbGV0IEJpbmFyeVNlYXJjaEhlYWRlciA9IG5ldyByLlN0cnVjdCh7XG4gICAgdW5pdFNpemU6IHIudWludDE2LFxuICAgIG5Vbml0czogci51aW50MTYsXG4gICAgc2VhcmNoUmFuZ2U6IHIudWludDE2LFxuICAgIGVudHJ5U2VsZWN0b3I6IHIudWludDE2LFxuICAgIHJhbmdlU2hpZnQ6IHIudWludDE2XG4gIH0pO1xuXG4gIGxldCBMb29rdXBTZWdtZW50U2luZ2xlID0gbmV3IHIuU3RydWN0KHtcbiAgICBsYXN0R2x5cGg6IHIudWludDE2LFxuICAgIGZpcnN0R2x5cGg6IHIudWludDE2LFxuICAgIHZhbHVlOiBWYWx1ZVR5cGVcbiAgfSk7XG5cbiAgbGV0IExvb2t1cFNlZ21lbnRBcnJheSA9IG5ldyByLlN0cnVjdCh7XG4gICAgbGFzdEdseXBoOiByLnVpbnQxNixcbiAgICBmaXJzdEdseXBoOiByLnVpbnQxNixcbiAgICB2YWx1ZXM6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIG5ldyByLkFycmF5KFZhbHVlVHlwZSwgdCA9PiB0Lmxhc3RHbHlwaCAtIHQuZmlyc3RHbHlwaCArIDEpLCB7dHlwZTogJ3BhcmVudCd9KVxuICB9KTtcblxuICBsZXQgTG9va3VwU2luZ2xlID0gbmV3IHIuU3RydWN0KHtcbiAgICBnbHlwaDogci51aW50MTYsXG4gICAgdmFsdWU6IFZhbHVlVHlwZVxuICB9KTtcblxuICByZXR1cm4gbmV3IHIuVmVyc2lvbmVkU3RydWN0KHIudWludDE2LCB7XG4gICAgMDoge1xuICAgICAgdmFsdWVzOiBuZXcgVW5ib3VuZGVkQXJyYXkoVmFsdWVUeXBlKSAvLyBsZW5ndGggPT0gbnVtYmVyIG9mIGdseXBocyBtYXliZT9cbiAgICB9LFxuICAgIDI6IHtcbiAgICAgIGJpbmFyeVNlYXJjaEhlYWRlcjogQmluYXJ5U2VhcmNoSGVhZGVyLFxuICAgICAgc2VnbWVudHM6IG5ldyByLkFycmF5KExvb2t1cFNlZ21lbnRTaW5nbGUsIHQgPT4gdC5iaW5hcnlTZWFyY2hIZWFkZXIublVuaXRzKVxuICAgIH0sXG4gICAgNDoge1xuICAgICAgYmluYXJ5U2VhcmNoSGVhZGVyOiBCaW5hcnlTZWFyY2hIZWFkZXIsXG4gICAgICBzZWdtZW50czogbmV3IHIuQXJyYXkoTG9va3VwU2VnbWVudEFycmF5LCB0ID0+IHQuYmluYXJ5U2VhcmNoSGVhZGVyLm5Vbml0cylcbiAgICB9LFxuICAgIDY6IHtcbiAgICAgIGJpbmFyeVNlYXJjaEhlYWRlcjogQmluYXJ5U2VhcmNoSGVhZGVyLFxuICAgICAgc2VnbWVudHM6IG5ldyByLkFycmF5KExvb2t1cFNpbmdsZSwgdCA9PiB0LmJpbmFyeVNlYXJjaEhlYWRlci5uVW5pdHMpXG4gICAgfSxcbiAgICA4OiB7XG4gICAgICBmaXJzdEdseXBoOiByLnVpbnQxNixcbiAgICAgIGNvdW50OiByLnVpbnQxNixcbiAgICAgIHZhbHVlczogbmV3IHIuQXJyYXkoVmFsdWVUeXBlLCAnY291bnQnKVxuICAgIH1cbiAgfSk7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gU3RhdGVUYWJsZShlbnRyeURhdGEgPSB7fSwgbG9va3VwVHlwZSA9IHIudWludDE2KSB7XG4gIGxldCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe1xuICAgIG5ld1N0YXRlOiByLnVpbnQxNixcbiAgICBmbGFnczogci51aW50MTZcbiAgfSwgZW50cnlEYXRhKTtcblxuICBsZXQgRW50cnkgPSBuZXcgci5TdHJ1Y3QoZW50cnkpO1xuICBsZXQgU3RhdGVBcnJheSA9IG5ldyBVbmJvdW5kZWRBcnJheShuZXcgci5BcnJheShyLnVpbnQxNiwgdCA9PiB0Lm5DbGFzc2VzKSk7XG5cbiAgbGV0IFN0YXRlSGVhZGVyID0gbmV3IHIuU3RydWN0KHtcbiAgICBuQ2xhc3Nlczogci51aW50MzIsXG4gICAgY2xhc3NUYWJsZTogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IExvb2t1cFRhYmxlKGxvb2t1cFR5cGUpKSxcbiAgICBzdGF0ZUFycmF5OiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBTdGF0ZUFycmF5KSxcbiAgICBlbnRyeVRhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgVW5ib3VuZGVkQXJyYXkoRW50cnkpKVxuICB9KTtcblxuICByZXR1cm4gU3RhdGVIZWFkZXI7XG59XG5cbi8vIFRoaXMgaXMgdGhlIG9sZCB2ZXJzaW9uIG9mIHRoZSBTdGF0ZVRhYmxlIHN0cnVjdHVyZVxuZXhwb3J0IGZ1bmN0aW9uIFN0YXRlVGFibGUxKGVudHJ5RGF0YSA9IHt9LCBsb29rdXBUeXBlID0gci51aW50MTYpIHtcbiAgbGV0IENsYXNzTG9va3VwVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICAgIHZlcnNpb24oKSB7IHJldHVybiA4OyB9LCAvLyBzaW11bGF0ZSBMb29rdXBUYWJsZVxuICAgIGZpcnN0R2x5cGg6IHIudWludDE2LFxuICAgIHZhbHVlczogbmV3IHIuQXJyYXkoci51aW50OCwgci51aW50MTYpXG4gIH0pO1xuXG4gIGxldCBlbnRyeSA9IE9iamVjdC5hc3NpZ24oe1xuICAgIG5ld1N0YXRlT2Zmc2V0OiByLnVpbnQxNixcbiAgICAvLyBjb252ZXJ0IG9mZnNldCB0byBzdGF0ZUFycmF5IGluZGV4XG4gICAgbmV3U3RhdGU6IHQgPT4gKHQubmV3U3RhdGVPZmZzZXQgLSAodC5wYXJlbnQuc3RhdGVBcnJheS5iYXNlIC0gdC5wYXJlbnQuX3N0YXJ0T2Zmc2V0KSkgLyB0LnBhcmVudC5uQ2xhc3NlcyxcbiAgICBmbGFnczogci51aW50MTZcbiAgfSwgZW50cnlEYXRhKTtcblxuICBsZXQgRW50cnkgPSBuZXcgci5TdHJ1Y3QoZW50cnkpO1xuICBsZXQgU3RhdGVBcnJheSA9IG5ldyBVbmJvdW5kZWRBcnJheShuZXcgci5BcnJheShyLnVpbnQ4LCB0ID0+IHQubkNsYXNzZXMpKTtcblxuICBsZXQgU3RhdGVIZWFkZXIxID0gbmV3IHIuU3RydWN0KHtcbiAgICBuQ2xhc3Nlczogci51aW50MTYsXG4gICAgY2xhc3NUYWJsZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NMb29rdXBUYWJsZSksXG4gICAgc3RhdGVBcnJheTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgU3RhdGVBcnJheSksXG4gICAgZW50cnlUYWJsZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgbmV3IFVuYm91bmRlZEFycmF5KEVudHJ5KSlcbiAgfSk7XG5cbiAgcmV0dXJuIFN0YXRlSGVhZGVyMTtcbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxubGV0IFNldHRpbmcgPSBuZXcgci5TdHJ1Y3Qoe1xuICBzZXR0aW5nOiByLnVpbnQxNixcbiAgbmFtZUluZGV4OiByLmludDE2LFxuICBuYW1lOiB0ID0+IHQucGFyZW50LnBhcmVudC5wYXJlbnQubmFtZS5yZWNvcmRzLmZvbnRGZWF0dXJlc1t0Lm5hbWVJbmRleF1cbn0pO1xuXG5sZXQgRmVhdHVyZU5hbWUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBmZWF0dXJlOiByLnVpbnQxNixcbiAgblNldHRpbmdzOiByLnVpbnQxNixcbiAgc2V0dGluZ1RhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgci5BcnJheShTZXR0aW5nLCAnblNldHRpbmdzJyksIHsgdHlwZTogJ3BhcmVudCcgfSksXG4gIGZlYXR1cmVGbGFnczogbmV3IHIuQml0ZmllbGQoci51aW50OCwgW1xuICAgIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsIG51bGwsXG4gICAgJ2hhc0RlZmF1bHQnLCAnZXhjbHVzaXZlJ1xuICBdKSxcbiAgZGVmYXVsdFNldHRpbmc6IHIudWludDgsXG4gIG5hbWVJbmRleDogci5pbnQxNixcbiAgbmFtZTogdCA9PiB0LnBhcmVudC5wYXJlbnQubmFtZS5yZWNvcmRzLmZvbnRGZWF0dXJlc1t0Lm5hbWVJbmRleF1cbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiByLmZpeGVkMzIsXG4gIGZlYXR1cmVOYW1lQ291bnQ6IHIudWludDE2LFxuICByZXNlcnZlZDE6IG5ldyByLlJlc2VydmVkKHIudWludDE2KSxcbiAgcmVzZXJ2ZWQyOiBuZXcgci5SZXNlcnZlZChyLnVpbnQzMiksXG4gIGZlYXR1cmVOYW1lczogbmV3IHIuQXJyYXkoRmVhdHVyZU5hbWUsICdmZWF0dXJlTmFtZUNvdW50Jylcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgQXhpcyA9IG5ldyByLlN0cnVjdCh7XG4gIGF4aXNUYWc6IG5ldyByLlN0cmluZyg0KSxcbiAgbWluVmFsdWU6IHIuZml4ZWQzMixcbiAgZGVmYXVsdFZhbHVlOiByLmZpeGVkMzIsXG4gIG1heFZhbHVlOiByLmZpeGVkMzIsXG4gIGZsYWdzOiByLnVpbnQxNixcbiAgbmFtZUlEOiByLnVpbnQxNixcbiAgbmFtZTogdCA9PiB0LnBhcmVudC5wYXJlbnQubmFtZS5yZWNvcmRzLmZvbnRGZWF0dXJlc1t0Lm5hbWVJRF1cbn0pO1xuXG5sZXQgSW5zdGFuY2UgPSBuZXcgci5TdHJ1Y3Qoe1xuICBuYW1lSUQ6IHIudWludDE2LFxuICBuYW1lOiB0ID0+IHQucGFyZW50LnBhcmVudC5uYW1lLnJlY29yZHMuZm9udEZlYXR1cmVzW3QubmFtZUlEXSxcbiAgZmxhZ3M6IHIudWludDE2LFxuICBjb29yZDogbmV3IHIuQXJyYXkoci5maXhlZDMyLCB0ID0+IHQucGFyZW50LmF4aXNDb3VudCksXG4gIHBvc3RzY3JpcHROYW1lSUQ6IG5ldyByLk9wdGlvbmFsKHIudWludDE2LCB0ID0+IHQucGFyZW50Lmluc3RhbmNlU2l6ZSAtIHQuX2N1cnJlbnRPZmZzZXQgPiAwKVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIuZml4ZWQzMixcbiAgb2Zmc2V0VG9EYXRhOiByLnVpbnQxNixcbiAgY291bnRTaXplUGFpcnM6IHIudWludDE2LFxuICBheGlzQ291bnQ6IHIudWludDE2LFxuICBheGlzU2l6ZTogci51aW50MTYsXG4gIGluc3RhbmNlQ291bnQ6IHIudWludDE2LFxuICBpbnN0YW5jZVNpemU6IHIudWludDE2LFxuICBheGlzOiBuZXcgci5BcnJheShBeGlzLCAnYXhpc0NvdW50JyksXG4gIGluc3RhbmNlOiBuZXcgci5BcnJheShJbnN0YW5jZSwgJ2luc3RhbmNlQ291bnQnKVxufSk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmxldCBzaG9ydEZyYWMgPSBuZXcgci5GaXhlZCgxNiwgJ0JFJywgMTQpO1xuY2xhc3MgT2Zmc2V0IHtcbiAgc3RhdGljIGRlY29kZShzdHJlYW0sIHBhcmVudCkge1xuICAgIC8vIEluIHNob3J0IGZvcm1hdCwgb2Zmc2V0cyBhcmUgbXVsdGlwbGllZCBieSAyLlxuICAgIC8vIFRoaXMgZG9lc24ndCBzZWVtIHRvIGJlIGRvY3VtZW50ZWQgYnkgQXBwbGUsIGJ1dCBpdFxuICAgIC8vIGlzIGltcGxlbWVudGVkIHRoaXMgd2F5IGluIEZyZWV0eXBlLlxuICAgIHJldHVybiBwYXJlbnQuZmxhZ3NcbiAgICAgID8gc3RyZWFtLnJlYWRVSW50MzJCRSgpXG4gICAgICA6IHN0cmVhbS5yZWFkVUludDE2QkUoKSAqIDI7XG4gIH1cbn1cblxubGV0IGd2YXIgPSBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiByLnVpbnQxNixcbiAgcmVzZXJ2ZWQ6IG5ldyByLlJlc2VydmVkKHIudWludDE2KSxcbiAgYXhpc0NvdW50OiByLnVpbnQxNixcbiAgZ2xvYmFsQ29vcmRDb3VudDogci51aW50MTYsXG4gIGdsb2JhbENvb3JkczogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IHIuQXJyYXkobmV3IHIuQXJyYXkoc2hvcnRGcmFjLCAnYXhpc0NvdW50JyksICdnbG9iYWxDb29yZENvdW50JykpLFxuICBnbHlwaENvdW50OiByLnVpbnQxNixcbiAgZmxhZ3M6IHIudWludDE2LFxuICBvZmZzZXRUb0RhdGE6IHIudWludDMyLFxuICBvZmZzZXRzOiBuZXcgci5BcnJheShuZXcgci5Qb2ludGVyKE9mZnNldCwgJ3ZvaWQnLCB7IHJlbGF0aXZlVG86IGN0eCA9PiBjdHgub2Zmc2V0VG9EYXRhLCBhbGxvd051bGw6IGZhbHNlIH0pLCB0ID0+IHQuZ2x5cGhDb3VudCArIDEpXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgZ3ZhcjtcbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB7IExvb2t1cFRhYmxlLCBTdGF0ZVRhYmxlMSB9IGZyb20gJy4vYWF0JztcblxubGV0IENsYXNzVGFibGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBsZW5ndGg6IHIudWludDE2LFxuICBjb3ZlcmFnZTogci51aW50MTYsXG4gIHN1YkZlYXR1cmVGbGFnczogci51aW50MzIsXG4gIHN0YXRlVGFibGU6IG5ldyBTdGF0ZVRhYmxlMVxufSk7XG5cbmxldCBXaWR0aERlbHRhUmVjb3JkID0gbmV3IHIuU3RydWN0KHtcbiAganVzdENsYXNzOiByLnVpbnQzMixcbiAgYmVmb3JlR3Jvd0xpbWl0OiByLmZpeGVkMzIsXG4gIGJlZm9yZVNocmlua0xpbWl0OiByLmZpeGVkMzIsXG4gIGFmdGVyR3Jvd0xpbWl0OiByLmZpeGVkMzIsXG4gIGFmdGVyU2hyaW5rTGltaXQ6IHIuZml4ZWQzMixcbiAgZ3Jvd0ZsYWdzOiByLnVpbnQxNixcbiAgc2hyaW5rRmxhZ3M6IHIudWludDE2XG59KTtcblxubGV0IFdpZHRoRGVsdGFDbHVzdGVyID0gbmV3IHIuQXJyYXkoV2lkdGhEZWx0YVJlY29yZCwgci51aW50MzIpO1xuXG5sZXQgQWN0aW9uRGF0YSA9IG5ldyByLlZlcnNpb25lZFN0cnVjdCgnYWN0aW9uVHlwZScsIHtcbiAgMDogeyAvLyBEZWNvbXBvc2l0aW9uIGFjdGlvblxuICAgIGxvd2VyTGltaXQ6IHIuZml4ZWQzMixcbiAgICB1cHBlckxpbWl0OiByLmZpeGVkMzIsXG4gICAgb3JkZXI6IHIudWludDE2LFxuICAgIGdseXBoczogbmV3IHIuQXJyYXkoci51aW50MTYsIHIudWludDE2KVxuICB9LFxuXG4gIDE6IHsgLy8gVW5jb25kaXRpb25hbCBhZGQgZ2x5cGggYWN0aW9uXG4gICAgYWRkR2x5cGg6IHIudWludDE2XG4gIH0sXG5cbiAgMjogeyAvLyBDb25kaXRpb25hbCBhZGQgZ2x5cGggYWN0aW9uXG4gICAgc3Vic3RUaHJlc2hvbGQ6IHIuZml4ZWQzMixcbiAgICBhZGRHbHlwaDogci51aW50MTYsXG4gICAgc3Vic3RHbHlwaDogci51aW50MTZcbiAgfSxcblxuICAzOiB7fSwgLy8gU3RyZXRjaCBnbHlwaCBhY3Rpb24gKG5vIGRhdGEsIG5vdCBzdXBwb3J0ZWQgYnkgQ29yZVRleHQpXG5cbiAgNDogeyAvLyBEdWN0aWxlIGdseXBoIGFjdGlvbiAobm90IHN1cHBvcnRlZCBieSBDb3JlVGV4dClcbiAgICB2YXJpYXRpb25BeGlzOiByLnVpbnQzMixcbiAgICBtaW5pbXVtTGltaXQ6IHIuZml4ZWQzMixcbiAgICBub1N0cmV0Y2hWYWx1ZTogci5maXhlZDMyLFxuICAgIG1heGltdW1MaW1pdDogci5maXhlZDMyXG4gIH0sXG5cbiAgNTogeyAvLyBSZXBlYXRlZCBhZGQgZ2x5cGggYWN0aW9uXG4gICAgZmxhZ3M6IHIudWludDE2LFxuICAgIGdseXBoOiByLnVpbnQxNlxuICB9XG59KTtcblxubGV0IEFjdGlvbiA9IG5ldyByLlN0cnVjdCh7XG4gIGFjdGlvbkNsYXNzOiByLnVpbnQxNixcbiAgYWN0aW9uVHlwZTogci51aW50MTYsXG4gIGFjdGlvbkxlbmd0aDogci51aW50MzIsXG4gIGFjdGlvbkRhdGE6IEFjdGlvbkRhdGEsXG4gIHBhZGRpbmc6IG5ldyByLlJlc2VydmVkKHIudWludDgsIHQgPT4gdC5hY3Rpb25MZW5ndGggLSB0Ll9jdXJyZW50T2Zmc2V0KVxufSk7XG5cbmxldCBQb3N0Y29tcGVuc2F0aW9uQWN0aW9uID0gbmV3IHIuQXJyYXkoQWN0aW9uLCByLnVpbnQzMik7XG5sZXQgUG9zdENvbXBlbnNhdGlvblRhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgbG9va3VwVGFibGU6IG5ldyBMb29rdXBUYWJsZShuZXcgci5Qb2ludGVyKHIudWludDE2LCBQb3N0Y29tcGVuc2F0aW9uQWN0aW9uKSlcbn0pO1xuXG5sZXQgSnVzdGlmaWNhdGlvblRhYmxlID0gbmV3IHIuU3RydWN0KHtcbiAgY2xhc3NUYWJsZTogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgQ2xhc3NUYWJsZSwgeyB0eXBlOiAncGFyZW50JyB9KSxcbiAgd2RjT2Zmc2V0OiByLnVpbnQxNixcbiAgcG9zdENvbXBlbnNhdGlvblRhYmxlOiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBQb3N0Q29tcGVuc2F0aW9uVGFibGUsIHsgdHlwZTogJ3BhcmVudCcgfSksXG4gIHdpZHRoRGVsdGFDbHVzdGVyczogbmV3IExvb2t1cFRhYmxlKG5ldyByLlBvaW50ZXIoci51aW50MTYsIFdpZHRoRGVsdGFDbHVzdGVyLCB7IHR5cGU6ICdwYXJlbnQnLCByZWxhdGl2ZVRvOiBjdHggPT4gY3R4LndkY09mZnNldCB9KSlcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgci5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiByLnVpbnQzMixcbiAgZm9ybWF0OiByLnVpbnQxNixcbiAgaG9yaXpvbnRhbDogbmV3IHIuUG9pbnRlcihyLnVpbnQxNiwgSnVzdGlmaWNhdGlvblRhYmxlKSxcbiAgdmVydGljYWw6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIEp1c3RpZmljYXRpb25UYWJsZSlcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgVW5ib3VuZGVkQXJyYXksIExvb2t1cFRhYmxlLCBTdGF0ZVRhYmxlIH0gZnJvbSAnLi9hYXQnO1xuXG5sZXQgTGlnYXR1cmVEYXRhID0ge1xuICBhY3Rpb246IHIudWludDE2XG59O1xuXG5sZXQgQ29udGV4dHVhbERhdGEgPSB7XG4gIG1hcmtJbmRleDogci51aW50MTYsXG4gIGN1cnJlbnRJbmRleDogci51aW50MTZcbn07XG5cbmxldCBJbnNlcnRpb25EYXRhID0ge1xuICBjdXJyZW50SW5zZXJ0SW5kZXg6IHIudWludDE2LFxuICBtYXJrZWRJbnNlcnRJbmRleDogci51aW50MTZcbn07XG5cbmxldCBTdWJzdGl0dXRpb25UYWJsZSA9IG5ldyByLlN0cnVjdCh7XG4gIGl0ZW1zOiBuZXcgVW5ib3VuZGVkQXJyYXkobmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IExvb2t1cFRhYmxlKSlcbn0pO1xuXG5sZXQgU3VidGFibGVEYXRhID0gbmV3IHIuVmVyc2lvbmVkU3RydWN0KCd0eXBlJywge1xuICAwOiB7IC8vIEluZGljIFJlYXJyYW5nZW1lbnQgU3VidGFibGVcbiAgICBzdGF0ZVRhYmxlOiBuZXcgU3RhdGVUYWJsZVxuICB9LFxuXG4gIDE6IHsgLy8gQ29udGV4dHVhbCBHbHlwaCBTdWJzdGl0dXRpb24gU3VidGFibGVcbiAgICBzdGF0ZVRhYmxlOiBuZXcgU3RhdGVUYWJsZShDb250ZXh0dWFsRGF0YSksXG4gICAgc3Vic3RpdHV0aW9uVGFibGU6IG5ldyByLlBvaW50ZXIoci51aW50MzIsIFN1YnN0aXR1dGlvblRhYmxlKVxuICB9LFxuXG4gIDI6IHsgLy8gTGlnYXR1cmUgc3VidGFibGVcbiAgICBzdGF0ZVRhYmxlOiBuZXcgU3RhdGVUYWJsZShMaWdhdHVyZURhdGEpLFxuICAgIGxpZ2F0dXJlQWN0aW9uczogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IFVuYm91bmRlZEFycmF5KHIudWludDMyKSksXG4gICAgY29tcG9uZW50czogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IFVuYm91bmRlZEFycmF5KHIudWludDE2KSksXG4gICAgbGlnYXR1cmVMaXN0OiBuZXcgci5Qb2ludGVyKHIudWludDMyLCBuZXcgVW5ib3VuZGVkQXJyYXkoci51aW50MTYpKVxuICB9LFxuXG4gIDQ6IHsgLy8gTm9uLWNvbnRleHR1YWwgR2x5cGggU3Vic3RpdHV0aW9uIFN1YnRhYmxlXG4gICAgbG9va3VwVGFibGU6IG5ldyBMb29rdXBUYWJsZVxuICB9LFxuXG4gIDU6IHsgLy8gR2x5cGggSW5zZXJ0aW9uIFN1YnRhYmxlXG4gICAgc3RhdGVUYWJsZTogbmV3IFN0YXRlVGFibGUoSW5zZXJ0aW9uRGF0YSksXG4gICAgaW5zZXJ0aW9uQWN0aW9uczogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgbmV3IFVuYm91bmRlZEFycmF5KHIudWludDE2KSlcbiAgfVxufSk7XG5cbmxldCBTdWJ0YWJsZSA9IG5ldyByLlN0cnVjdCh7XG4gIGxlbmd0aDogci51aW50MzIsXG4gIGNvdmVyYWdlOiByLnVpbnQyNCxcbiAgdHlwZTogci51aW50OCxcbiAgc3ViRmVhdHVyZUZsYWdzOiByLnVpbnQzMixcbiAgdGFibGU6IFN1YnRhYmxlRGF0YSxcbiAgcGFkZGluZzogbmV3IHIuUmVzZXJ2ZWQoci51aW50OCwgdCA9PiB0Lmxlbmd0aCAtIHQuX2N1cnJlbnRPZmZzZXQpXG59KTtcblxubGV0IEZlYXR1cmVFbnRyeSA9IG5ldyByLlN0cnVjdCh7XG4gIGZlYXR1cmVUeXBlOiAgICByLnVpbnQxNixcbiAgZmVhdHVyZVNldHRpbmc6IHIudWludDE2LFxuICBlbmFibGVGbGFnczogICAgci51aW50MzIsXG4gIGRpc2FibGVGbGFnczogICByLnVpbnQzMlxufSk7XG5cbmxldCBNb3J4Q2hhaW4gPSBuZXcgci5TdHJ1Y3Qoe1xuICBkZWZhdWx0RmxhZ3M6ICAgICByLnVpbnQzMixcbiAgY2hhaW5MZW5ndGg6ICAgICAgci51aW50MzIsXG4gIG5GZWF0dXJlRW50cmllczogIHIudWludDMyLFxuICBuU3VidGFibGVzOiAgICAgICByLnVpbnQzMixcbiAgZmVhdHVyZXM6ICAgICAgICAgbmV3IHIuQXJyYXkoRmVhdHVyZUVudHJ5LCAnbkZlYXR1cmVFbnRyaWVzJyksXG4gIHN1YnRhYmxlczogICAgICAgIG5ldyByLkFycmF5KFN1YnRhYmxlLCAnblN1YnRhYmxlcycpXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogIHIudWludDE2LFxuICB1bnVzZWQ6ICAgbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICBuQ2hhaW5zOiAgci51aW50MzIsXG4gIGNoYWluczogICBuZXcgci5BcnJheShNb3J4Q2hhaW4sICduQ2hhaW5zJylcbn0pO1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgTG9va3VwVGFibGUgfSBmcm9tICcuL2FhdCc7XG5cbmxldCBPcHRpY2FsQm91bmRzID0gbmV3IHIuU3RydWN0KHtcbiAgbGVmdDogci5pbnQxNixcbiAgdG9wOiByLmludDE2LFxuICByaWdodDogci5pbnQxNixcbiAgYm90dG9tOiByLmludDE2XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgbmV3IHIuU3RydWN0KHtcbiAgdmVyc2lvbjogci5maXhlZDMyLFxuICBmb3JtYXQ6IHIudWludDE2LFxuICBsb29rdXBUYWJsZTogbmV3IExvb2t1cFRhYmxlKE9wdGljYWxCb3VuZHMpXG59KTtcbiIsICJpbXBvcnQgeyBiaW5hcnlTZWFyY2ggfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IGVuY29kaW5nRXhpc3RzLCBnZXRFbmNvZGluZywgZ2V0RW5jb2RpbmdNYXBwaW5nIH0gZnJvbSAnLi9lbmNvZGluZ3MnO1xuaW1wb3J0IHsgY2FjaGUgfSBmcm9tICcuL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgcmFuZ2UgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ21hcFByb2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKGNtYXBUYWJsZSkge1xuICAgIC8vIEF0dGVtcHQgdG8gZmluZCBhIFVuaWNvZGUgY21hcCBmaXJzdFxuICAgIHRoaXMuZW5jb2RpbmcgPSBudWxsO1xuICAgIHRoaXMuY21hcCA9IHRoaXMuZmluZFN1YnRhYmxlKGNtYXBUYWJsZSwgW1xuICAgICAgLy8gMzItYml0IHN1YnRhYmxlc1xuICAgICAgWzMsIDEwXSxcbiAgICAgIFswLCA2XSxcbiAgICAgIFswLCA0XSxcblxuICAgICAgLy8gMTYtYml0IHN1YnRhYmxlc1xuICAgICAgWzMsIDFdLFxuICAgICAgWzAsIDNdLFxuICAgICAgWzAsIDJdLFxuICAgICAgWzAsIDFdLFxuICAgICAgWzAsIDBdXG4gICAgXSk7XG5cbiAgICAvLyBJZiBub3QgdW5pY29kZSBjbWFwIHdhcyBmb3VuZCwgdGFrZSB0aGUgZmlyc3QgdGFibGUgd2l0aCBhIHN1cHBvcnRlZCBlbmNvZGluZy5cbiAgICBpZiAoIXRoaXMuY21hcCkge1xuICAgICAgZm9yIChsZXQgY21hcCBvZiBjbWFwVGFibGUudGFibGVzKSB7XG4gICAgICAgIGxldCBlbmNvZGluZyA9IGdldEVuY29kaW5nKGNtYXAucGxhdGZvcm1JRCwgY21hcC5lbmNvZGluZ0lELCBjbWFwLnRhYmxlLmxhbmd1YWdlIC0gMSk7XG4gICAgICAgIGxldCBtYXBwaW5nID0gZ2V0RW5jb2RpbmdNYXBwaW5nKGVuY29kaW5nKTtcbiAgICAgICAgaWYgKG1hcHBpbmcpIHtcbiAgICAgICAgICB0aGlzLmNtYXAgPSBjbWFwLnRhYmxlO1xuICAgICAgICAgIHRoaXMuZW5jb2RpbmcgPSBtYXBwaW5nO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmNtYXApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNvdWxkIG5vdCBmaW5kIGEgc3VwcG9ydGVkIGNtYXAgdGFibGVcIik7XG4gICAgfVxuXG4gICAgdGhpcy51dnMgPSB0aGlzLmZpbmRTdWJ0YWJsZShjbWFwVGFibGUsIFtbMCwgNV1dKTtcbiAgICBpZiAodGhpcy51dnMgJiYgdGhpcy51dnMudmVyc2lvbiAhPT0gMTQpIHtcbiAgICAgIHRoaXMudXZzID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBmaW5kU3VidGFibGUoY21hcFRhYmxlLCBwYWlycykge1xuICAgIGZvciAobGV0IFtwbGF0Zm9ybUlELCBlbmNvZGluZ0lEXSBvZiBwYWlycykge1xuICAgICAgZm9yIChsZXQgY21hcCBvZiBjbWFwVGFibGUudGFibGVzKSB7XG4gICAgICAgIGlmIChjbWFwLnBsYXRmb3JtSUQgPT09IHBsYXRmb3JtSUQgJiYgY21hcC5lbmNvZGluZ0lEID09PSBlbmNvZGluZ0lEKSB7XG4gICAgICAgICAgcmV0dXJuIGNtYXAudGFibGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGxvb2t1cChjb2RlcG9pbnQsIHZhcmlhdGlvblNlbGVjdG9yKSB7XG4gICAgLy8gSWYgdGhlcmUgaXMgbm8gVW5pY29kZSBjbWFwIGluIHRoaXMgZm9udCwgd2UgbmVlZCB0byByZS1lbmNvZGVcbiAgICAvLyB0aGUgY29kZXBvaW50IGluIHRoZSBlbmNvZGluZyB0aGF0IHRoZSBjbWFwIHN1cHBvcnRzLlxuICAgIGlmICh0aGlzLmVuY29kaW5nKSB7XG4gICAgICBjb2RlcG9pbnQgPSB0aGlzLmVuY29kaW5nLmdldChjb2RlcG9pbnQpIHx8IGNvZGVwb2ludDtcblxuICAgICAgLy8gT3RoZXJ3aXNlLCB0cnkgdG8gZ2V0IGEgVW5pY29kZSB2YXJpYXRpb24gc2VsZWN0b3IgZm9yIHRoaXMgY29kZXBvaW50IGlmIG9uZSBpcyBwcm92aWRlZC5cbiAgICB9IGVsc2UgaWYgKHZhcmlhdGlvblNlbGVjdG9yKSB7XG4gICAgICBsZXQgZ2lkID0gdGhpcy5nZXRWYXJpYXRpb25TZWxlY3Rvcihjb2RlcG9pbnQsIHZhcmlhdGlvblNlbGVjdG9yKTtcbiAgICAgIGlmIChnaWQpIHtcbiAgICAgICAgcmV0dXJuIGdpZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgY21hcCA9IHRoaXMuY21hcDtcbiAgICBzd2l0Y2ggKGNtYXAudmVyc2lvbikge1xuICAgICAgY2FzZSAwOlxuICAgICAgICByZXR1cm4gY21hcC5jb2RlTWFwLmdldChjb2RlcG9pbnQpIHx8IDA7XG5cbiAgICAgIGNhc2UgNDoge1xuICAgICAgICBsZXQgbWluID0gMDtcbiAgICAgICAgbGV0IG1heCA9IGNtYXAuc2VnQ291bnQgLSAxO1xuICAgICAgICB3aGlsZSAobWluIDw9IG1heCkge1xuICAgICAgICAgIGxldCBtaWQgPSAobWluICsgbWF4KSA+PiAxO1xuXG4gICAgICAgICAgaWYgKGNvZGVwb2ludCA8IGNtYXAuc3RhcnRDb2RlLmdldChtaWQpKSB7XG4gICAgICAgICAgICBtYXggPSBtaWQgLSAxO1xuICAgICAgICAgIH0gZWxzZSBpZiAoY29kZXBvaW50ID4gY21hcC5lbmRDb2RlLmdldChtaWQpKSB7XG4gICAgICAgICAgICBtaW4gPSBtaWQgKyAxO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBsZXQgcmFuZ2VPZmZzZXQgPSBjbWFwLmlkUmFuZ2VPZmZzZXQuZ2V0KG1pZCk7XG4gICAgICAgICAgICBsZXQgZ2lkO1xuXG4gICAgICAgICAgICBpZiAocmFuZ2VPZmZzZXQgPT09IDApIHtcbiAgICAgICAgICAgICAgZ2lkID0gY29kZXBvaW50ICsgY21hcC5pZERlbHRhLmdldChtaWQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgbGV0IGluZGV4ID0gcmFuZ2VPZmZzZXQgLyAyICsgKGNvZGVwb2ludCAtIGNtYXAuc3RhcnRDb2RlLmdldChtaWQpKSAtIChjbWFwLnNlZ0NvdW50IC0gbWlkKTtcbiAgICAgICAgICAgICAgZ2lkID0gY21hcC5nbHlwaEluZGV4QXJyYXkuZ2V0KGluZGV4KSB8fCAwO1xuICAgICAgICAgICAgICBpZiAoZ2lkICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgZ2lkICs9IGNtYXAuaWREZWx0YS5nZXQobWlkKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZ2lkICYgMHhmZmZmO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDg6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVE9ETzogY21hcCBmb3JtYXQgOCcpO1xuXG4gICAgICBjYXNlIDY6XG4gICAgICBjYXNlIDEwOlxuICAgICAgICByZXR1cm4gY21hcC5nbHlwaEluZGljZXMuZ2V0KGNvZGVwb2ludCAtIGNtYXAuZmlyc3RDb2RlKSB8fCAwO1xuXG4gICAgICBjYXNlIDEyOlxuICAgICAgY2FzZSAxMzoge1xuICAgICAgICBsZXQgbWluID0gMDtcbiAgICAgICAgbGV0IG1heCA9IGNtYXAubkdyb3VwcyAtIDE7XG4gICAgICAgIHdoaWxlIChtaW4gPD0gbWF4KSB7XG4gICAgICAgICAgbGV0IG1pZCA9IChtaW4gKyBtYXgpID4+IDE7XG4gICAgICAgICAgbGV0IGdyb3VwID0gY21hcC5ncm91cHMuZ2V0KG1pZCk7XG5cbiAgICAgICAgICBpZiAoY29kZXBvaW50IDwgZ3JvdXAuc3RhcnRDaGFyQ29kZSkge1xuICAgICAgICAgICAgbWF4ID0gbWlkIC0gMTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGNvZGVwb2ludCA+IGdyb3VwLmVuZENoYXJDb2RlKSB7XG4gICAgICAgICAgICBtaW4gPSBtaWQgKyAxO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoY21hcC52ZXJzaW9uID09PSAxMikge1xuICAgICAgICAgICAgICByZXR1cm4gZ3JvdXAuZ2x5cGhJRCArIChjb2RlcG9pbnQgLSBncm91cC5zdGFydENoYXJDb2RlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHJldHVybiBncm91cC5nbHlwaElEO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDE0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RPRE86IGNtYXAgZm9ybWF0IDE0Jyk7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjbWFwIGZvcm1hdCAke2NtYXAudmVyc2lvbn1gKTtcbiAgICB9XG4gIH1cblxuICBnZXRWYXJpYXRpb25TZWxlY3Rvcihjb2RlcG9pbnQsIHZhcmlhdGlvblNlbGVjdG9yKSB7XG4gICAgaWYgKCF0aGlzLnV2cykge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgbGV0IHNlbGVjdG9ycyA9IHRoaXMudXZzLnZhclNlbGVjdG9ycy50b0FycmF5KCk7XG4gICAgbGV0IGkgPSBiaW5hcnlTZWFyY2goc2VsZWN0b3JzLCB4ID0+IHZhcmlhdGlvblNlbGVjdG9yIC0geC52YXJTZWxlY3Rvcik7XG4gICAgbGV0IHNlbCA9IHNlbGVjdG9yc1tpXTtcblxuICAgIGlmIChpICE9PSAtMSAmJiBzZWwuZGVmYXVsdFVWUykge1xuICAgICAgaSA9IGJpbmFyeVNlYXJjaChzZWwuZGVmYXVsdFVWUywgeCA9PlxuICAgICAgICBjb2RlcG9pbnQgPCB4LnN0YXJ0VW5pY29kZVZhbHVlID8gLTEgOiBjb2RlcG9pbnQgPiB4LnN0YXJ0VW5pY29kZVZhbHVlICsgeC5hZGRpdGlvbmFsQ291bnQgPyArMSA6IDBcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGkgIT09IC0xICYmIHNlbC5ub25EZWZhdWx0VVZTKSB7XG4gICAgICBpID0gYmluYXJ5U2VhcmNoKHNlbC5ub25EZWZhdWx0VVZTLCB4ID0+IGNvZGVwb2ludCAtIHgudW5pY29kZVZhbHVlKTtcbiAgICAgIGlmIChpICE9PSAtMSkge1xuICAgICAgICByZXR1cm4gc2VsLm5vbkRlZmF1bHRVVlNbaV0uZ2x5cGhJRDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIEBjYWNoZVxuICBnZXRDaGFyYWN0ZXJTZXQoKSB7XG4gICAgbGV0IGNtYXAgPSB0aGlzLmNtYXA7XG4gICAgc3dpdGNoIChjbWFwLnZlcnNpb24pIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgICAgcmV0dXJuIHJhbmdlKDAsIGNtYXAuY29kZU1hcC5sZW5ndGgpO1xuXG4gICAgICBjYXNlIDQ6IHtcbiAgICAgICAgbGV0IHJlcyA9IFtdO1xuICAgICAgICBsZXQgZW5kQ29kZXMgPSBjbWFwLmVuZENvZGUudG9BcnJheSgpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVuZENvZGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgbGV0IHRhaWwgPSBlbmRDb2Rlc1tpXSArIDE7XG4gICAgICAgICAgbGV0IHN0YXJ0ID0gY21hcC5zdGFydENvZGUuZ2V0KGkpO1xuICAgICAgICAgIHJlcy5wdXNoKC4uLnJhbmdlKHN0YXJ0LCB0YWlsKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDg6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVE9ETzogY21hcCBmb3JtYXQgOCcpO1xuXG4gICAgICBjYXNlIDY6XG4gICAgICBjYXNlIDEwOlxuICAgICAgICByZXR1cm4gcmFuZ2UoY21hcC5maXJzdENvZGUsIGNtYXAuZmlyc3RDb2RlICsgY21hcC5nbHlwaEluZGljZXMubGVuZ3RoKTtcblxuICAgICAgY2FzZSAxMjpcbiAgICAgIGNhc2UgMTM6IHtcbiAgICAgICAgbGV0IHJlcyA9IFtdO1xuICAgICAgICBmb3IgKGxldCBncm91cCBvZiBjbWFwLmdyb3Vwcy50b0FycmF5KCkpIHtcbiAgICAgICAgICByZXMucHVzaCguLi5yYW5nZShncm91cC5zdGFydENoYXJDb2RlLCBncm91cC5lbmRDaGFyQ29kZSArIDEpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMTQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVE9ETzogY21hcCBmb3JtYXQgMTQnKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGNtYXAgZm9ybWF0ICR7Y21hcC52ZXJzaW9ufWApO1xuICAgIH1cbiAgfVxuXG4gIEBjYWNoZVxuICBjb2RlUG9pbnRzRm9yR2x5cGgoZ2lkKSB7XG4gICAgbGV0IGNtYXAgPSB0aGlzLmNtYXA7XG4gICAgc3dpdGNoIChjbWFwLnZlcnNpb24pIHtcbiAgICAgIGNhc2UgMDoge1xuICAgICAgICBsZXQgcmVzID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMjU2OyBpKyspIHtcbiAgICAgICAgICBpZiAoY21hcC5jb2RlTWFwLmdldChpKSA9PT0gZ2lkKSB7XG4gICAgICAgICAgICByZXMucHVzaChpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDQ6IHtcbiAgICAgICAgbGV0IHJlcyA9IFtdO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNtYXAuc2VnQ291bnQ7IGkrKykge1xuICAgICAgICAgIGxldCBlbmQgPSBjbWFwLmVuZENvZGUuZ2V0KGkpO1xuICAgICAgICAgIGxldCBzdGFydCA9IGNtYXAuc3RhcnRDb2RlLmdldChpKTtcbiAgICAgICAgICBsZXQgcmFuZ2VPZmZzZXQgPSBjbWFwLmlkUmFuZ2VPZmZzZXQuZ2V0KGkpO1xuICAgICAgICAgIGxldCBkZWx0YSA9IGNtYXAuaWREZWx0YS5nZXQoaSk7XG5cbiAgICAgICAgICBmb3IgKHZhciBjID0gc3RhcnQ7IGMgPD0gZW5kOyBjKyspIHtcbiAgICAgICAgICAgIGxldCBnID0gMDtcbiAgICAgICAgICAgIGlmIChyYW5nZU9mZnNldCA9PT0gMCkge1xuICAgICAgICAgICAgICBnID0gYyArIGRlbHRhO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgbGV0IGluZGV4ID0gcmFuZ2VPZmZzZXQgLyAyICsgKGMgLSBzdGFydCkgLSAoY21hcC5zZWdDb3VudCAtIGkpO1xuICAgICAgICAgICAgICBnID0gY21hcC5nbHlwaEluZGV4QXJyYXkuZ2V0KGluZGV4KSB8fCAwO1xuICAgICAgICAgICAgICBpZiAoZyAhPT0gMCkge1xuICAgICAgICAgICAgICAgIGcgKz0gZGVsdGE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGcgPT09IGdpZCkge1xuICAgICAgICAgICAgICByZXMucHVzaChjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDEyOiB7XG4gICAgICAgIGxldCByZXMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgZ3JvdXAgb2YgY21hcC5ncm91cHMudG9BcnJheSgpKSB7XG4gICAgICAgICAgaWYgKGdpZCA+PSBncm91cC5nbHlwaElEICYmIGdpZCA8PSBncm91cC5nbHlwaElEICsgKGdyb3VwLmVuZENoYXJDb2RlIC0gZ3JvdXAuc3RhcnRDaGFyQ29kZSkpIHtcbiAgICAgICAgICAgIHJlcy5wdXNoKGdyb3VwLnN0YXJ0Q2hhckNvZGUgKyAoZ2lkIC0gZ3JvdXAuZ2x5cGhJRCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByZXM7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMTM6IHtcbiAgICAgICAgbGV0IHJlcyA9IFtdO1xuICAgICAgICBmb3IgKGxldCBncm91cCBvZiBjbWFwLmdyb3Vwcy50b0FycmF5KCkpIHtcbiAgICAgICAgICBpZiAoZ2lkID09PSBncm91cC5nbHlwaElEKSB7XG4gICAgICAgICAgICByZXMucHVzaCguLi5yYW5nZShncm91cC5zdGFydENoYXJDb2RlLCBncm91cC5lbmRDaGFyQ29kZSArIDEpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gY21hcCBmb3JtYXQgJHtjbWFwLnZlcnNpb259YCk7XG4gICAgfVxuICB9XG59XG4iLCAiZXhwb3J0IGZ1bmN0aW9uIGJpbmFyeVNlYXJjaChhcnIsIGNtcCkge1xuICBsZXQgbWluID0gMDtcbiAgbGV0IG1heCA9IGFyci5sZW5ndGggLSAxO1xuICB3aGlsZSAobWluIDw9IG1heCkge1xuICAgIGxldCBtaWQgPSAobWluICsgbWF4KSA+PiAxO1xuICAgIGxldCByZXMgPSBjbXAoYXJyW21pZF0pO1xuXG4gICAgaWYgKHJlcyA8IDApIHtcbiAgICAgIG1heCA9IG1pZCAtIDE7XG4gICAgfSBlbHNlIGlmIChyZXMgPiAwKSB7XG4gICAgICBtaW4gPSBtaWQgKyAxO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbWlkO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiAtMTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJhbmdlKGluZGV4LCBlbmQpIHtcbiAgbGV0IHJhbmdlID0gW107XG4gIHdoaWxlIChpbmRleCA8IGVuZCkge1xuICAgIHJhbmdlLnB1c2goaW5kZXgrKyk7XG4gIH1cbiAgcmV0dXJuIHJhbmdlO1xufVxuXG5leHBvcnQgY29uc3QgYXNjaWlEZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCdhc2NpaScpO1xuXG4vLyBCYXNlZCBvbiBodHRwczovL2dpdGh1Yi5jb20vbmlrbGFzdmgvYmFzZTY0LWFycmF5YnVmZmVyLiBNSVQgbGljZW5zZS5cbmNvbnN0IENIQVJTID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8nO1xuY29uc3QgTE9PS1VQID0gbmV3IFVpbnQ4QXJyYXkoMjU2KTtcbmZvciAobGV0IGkgPSAwOyBpIDwgQ0hBUlMubGVuZ3RoOyBpKyspIHtcbiAgTE9PS1VQW0NIQVJTLmNoYXJDb2RlQXQoaSldID0gaTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZUJhc2U2NChiYXNlNjQpIHtcbiAgbGV0IGJ1ZmZlckxlbmd0aCA9IGJhc2U2NC5sZW5ndGggKiAwLjc1O1xuXG4gIGlmIChiYXNlNjRbYmFzZTY0Lmxlbmd0aCAtIDFdID09PSAnPScpIHtcbiAgICBidWZmZXJMZW5ndGgtLTtcbiAgICBpZiAoYmFzZTY0W2Jhc2U2NC5sZW5ndGggLSAyXSA9PT0gJz0nKSB7XG4gICAgICBidWZmZXJMZW5ndGgtLTtcbiAgICB9XG4gIH1cblxuICBsZXQgYnl0ZXMgPSBuZXcgVWludDhBcnJheShidWZmZXJMZW5ndGgpO1xuICBsZXQgcCA9IDA7XG5cbiAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IGJhc2U2NC5sZW5ndGg7IGkgPCBsZW47IGkgKz0gNCkge1xuICAgIGxldCBlbmNvZGVkMSA9IExPT0tVUFtiYXNlNjQuY2hhckNvZGVBdChpKV07XG4gICAgbGV0IGVuY29kZWQyID0gTE9PS1VQW2Jhc2U2NC5jaGFyQ29kZUF0KGkgKyAxKV07XG4gICAgbGV0IGVuY29kZWQzID0gTE9PS1VQW2Jhc2U2NC5jaGFyQ29kZUF0KGkgKyAyKV07XG4gICAgbGV0IGVuY29kZWQ0ID0gTE9PS1VQW2Jhc2U2NC5jaGFyQ29kZUF0KGkgKyAzKV07XG5cbiAgICBieXRlc1twKytdID0gKGVuY29kZWQxIDw8IDIpIHwgKGVuY29kZWQyID4+IDQpO1xuICAgIGJ5dGVzW3ArK10gPSAoKGVuY29kZWQyICYgMTUpIDw8IDQpIHwgKGVuY29kZWQzID4+IDIpO1xuICAgIGJ5dGVzW3ArK10gPSAoKGVuY29kZWQzICYgMykgPDwgNikgfCAoZW5jb2RlZDQgJiA2Myk7XG4gIH1cblxuICByZXR1cm4gYnl0ZXM7XG59XG4iLCAiaW1wb3J0IEtlcm5Qcm9jZXNzb3IgZnJvbSAnLi9LZXJuUHJvY2Vzc29yJztcbmltcG9ydCBVbmljb2RlTGF5b3V0RW5naW5lIGZyb20gJy4vVW5pY29kZUxheW91dEVuZ2luZSc7XG5pbXBvcnQgR2x5cGhSdW4gZnJvbSAnLi9HbHlwaFJ1bic7XG5pbXBvcnQgR2x5cGhQb3NpdGlvbiBmcm9tICcuL0dseXBoUG9zaXRpb24nO1xuaW1wb3J0ICogYXMgU2NyaXB0IGZyb20gJy4vU2NyaXB0JztcbmltcG9ydCBBQVRMYXlvdXRFbmdpbmUgZnJvbSAnLi4vYWF0L0FBVExheW91dEVuZ2luZSc7XG5pbXBvcnQgT1RMYXlvdXRFbmdpbmUgZnJvbSAnLi4vb3BlbnR5cGUvT1RMYXlvdXRFbmdpbmUnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBMYXlvdXRFbmdpbmUge1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLnVuaWNvZGVMYXlvdXRFbmdpbmUgPSBudWxsO1xuICAgIHRoaXMua2VyblByb2Nlc3NvciA9IG51bGw7XG5cbiAgICAvLyBDaG9vc2UgYW4gYWR2YW5jZWQgbGF5b3V0IGVuZ2luZS4gV2UgdHJ5IHRoZSBBQVQgbW9yeCB0YWJsZSBmaXJzdCBzaW5jZSBtb3JlXG4gICAgLy8gc2NyaXB0cyBhcmUgY3VycmVudGx5IHN1cHBvcnRlZCBiZWNhdXNlIHRoZSBzaGFwaW5nIGxvZ2ljIGlzIGJ1aWx0IGludG8gdGhlIGZvbnQuXG4gICAgaWYgKHRoaXMuZm9udC5tb3J4KSB7XG4gICAgICB0aGlzLmVuZ2luZSA9IG5ldyBBQVRMYXlvdXRFbmdpbmUodGhpcy5mb250KTtcblxuICAgIH0gZWxzZSBpZiAodGhpcy5mb250LkdTVUIgfHwgdGhpcy5mb250LkdQT1MpIHtcbiAgICAgIHRoaXMuZW5naW5lID0gbmV3IE9UTGF5b3V0RW5naW5lKHRoaXMuZm9udCk7XG4gICAgfVxuICB9XG5cbiAgbGF5b3V0KHN0cmluZywgZmVhdHVyZXMsIHNjcmlwdCwgbGFuZ3VhZ2UsIGRpcmVjdGlvbikge1xuICAgIC8vIE1ha2UgdGhlIGZlYXR1cmVzIHBhcmFtZXRlciBvcHRpb25hbFxuICAgIGlmICh0eXBlb2YgZmVhdHVyZXMgPT09ICdzdHJpbmcnKSB7XG4gICAgICBkaXJlY3Rpb24gPSBsYW5ndWFnZTtcbiAgICAgIGxhbmd1YWdlID0gc2NyaXB0O1xuICAgICAgc2NyaXB0ID0gZmVhdHVyZXM7XG4gICAgICBmZWF0dXJlcyA9IFtdO1xuICAgIH1cblxuICAgIC8vIE1hcCBzdHJpbmcgdG8gZ2x5cGhzIGlmIG5lZWRlZFxuICAgIGlmICh0eXBlb2Ygc3RyaW5nID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gQXR0ZW1wdCB0byBkZXRlY3QgdGhlIHNjcmlwdCBmcm9tIHRoZSBzdHJpbmcgaWYgbm90IHByb3ZpZGVkLlxuICAgICAgaWYgKHNjcmlwdCA9PSBudWxsKSB7XG4gICAgICAgIHNjcmlwdCA9IFNjcmlwdC5mb3JTdHJpbmcoc3RyaW5nKTtcbiAgICAgIH1cblxuICAgICAgdmFyIGdseXBocyA9IHRoaXMuZm9udC5nbHlwaHNGb3JTdHJpbmcoc3RyaW5nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gQXR0ZW1wdCB0byBkZXRlY3QgdGhlIHNjcmlwdCBmcm9tIHRoZSBnbHlwaCBjb2RlIHBvaW50cyBpZiBub3QgcHJvdmlkZWQuXG4gICAgICBpZiAoc2NyaXB0ID09IG51bGwpIHtcbiAgICAgICAgbGV0IGNvZGVQb2ludHMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgZ2x5cGggb2Ygc3RyaW5nKSB7XG4gICAgICAgICAgY29kZVBvaW50cy5wdXNoKC4uLmdseXBoLmNvZGVQb2ludHMpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2NyaXB0ID0gU2NyaXB0LmZvckNvZGVQb2ludHMoY29kZVBvaW50cyk7XG4gICAgICB9XG5cbiAgICAgIHZhciBnbHlwaHMgPSBzdHJpbmc7XG4gICAgfVxuXG4gICAgbGV0IGdseXBoUnVuID0gbmV3IEdseXBoUnVuKGdseXBocywgZmVhdHVyZXMsIHNjcmlwdCwgbGFuZ3VhZ2UsIGRpcmVjdGlvbik7XG5cbiAgICAvLyBSZXR1cm4gZWFybHkgaWYgdGhlcmUgYXJlIG5vIGdseXBoc1xuICAgIGlmIChnbHlwaHMubGVuZ3RoID09PSAwKSB7XG4gICAgICBnbHlwaFJ1bi5wb3NpdGlvbnMgPSBbXTtcbiAgICAgIHJldHVybiBnbHlwaFJ1bjtcbiAgICB9XG5cbiAgICAvLyBTZXR1cCB0aGUgYWR2YW5jZWQgbGF5b3V0IGVuZ2luZVxuICAgIGlmICh0aGlzLmVuZ2luZSAmJiB0aGlzLmVuZ2luZS5zZXR1cCkge1xuICAgICAgdGhpcy5lbmdpbmUuc2V0dXAoZ2x5cGhSdW4pO1xuICAgIH1cblxuICAgIC8vIFN1YnN0aXR1dGUgYW5kIHBvc2l0aW9uIHRoZSBnbHlwaHNcbiAgICB0aGlzLnN1YnN0aXR1dGUoZ2x5cGhSdW4pO1xuICAgIHRoaXMucG9zaXRpb24oZ2x5cGhSdW4pO1xuXG4gICAgdGhpcy5oaWRlRGVmYXVsdElnbm9yYWJsZXMoZ2x5cGhSdW4uZ2x5cGhzLCBnbHlwaFJ1bi5wb3NpdGlvbnMpO1xuXG4gICAgLy8gTGV0IHRoZSBsYXlvdXQgZW5naW5lIGNsZWFuIHVwIGFueSBzdGF0ZSBpdCBtaWdodCBoYXZlXG4gICAgaWYgKHRoaXMuZW5naW5lICYmIHRoaXMuZW5naW5lLmNsZWFudXApIHtcbiAgICAgIHRoaXMuZW5naW5lLmNsZWFudXAoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZ2x5cGhSdW47XG4gIH1cblxuICBzdWJzdGl0dXRlKGdseXBoUnVuKSB7XG4gICAgLy8gQ2FsbCB0aGUgYWR2YW5jZWQgbGF5b3V0IGVuZ2luZSB0byBtYWtlIHN1YnN0aXR1dGlvbnNcbiAgICBpZiAodGhpcy5lbmdpbmUgJiYgdGhpcy5lbmdpbmUuc3Vic3RpdHV0ZSkge1xuICAgICAgdGhpcy5lbmdpbmUuc3Vic3RpdHV0ZShnbHlwaFJ1bik7XG4gICAgfVxuICB9XG5cbiAgcG9zaXRpb24oZ2x5cGhSdW4pIHtcbiAgICAvLyBHZXQgaW5pdGlhbCBnbHlwaCBwb3NpdGlvbnNcbiAgICBnbHlwaFJ1bi5wb3NpdGlvbnMgPSBnbHlwaFJ1bi5nbHlwaHMubWFwKGdseXBoID0+IG5ldyBHbHlwaFBvc2l0aW9uKGdseXBoLmFkdmFuY2VXaWR0aCkpO1xuICAgIGxldCBwb3NpdGlvbmVkID0gbnVsbDtcblxuICAgIC8vIENhbGwgdGhlIGFkdmFuY2VkIGxheW91dCBlbmdpbmUuIFJldHVybnMgdGhlIGZlYXR1cmVzIGFwcGxpZWQuXG4gICAgaWYgKHRoaXMuZW5naW5lICYmIHRoaXMuZW5naW5lLnBvc2l0aW9uKSB7XG4gICAgICBwb3NpdGlvbmVkID0gdGhpcy5lbmdpbmUucG9zaXRpb24oZ2x5cGhSdW4pO1xuICAgIH1cblxuICAgIC8vIGlmIHRoZXJlIGlzIG5vIEdQT1MgdGFibGUsIHVzZSB1bmljb2RlIHByb3BlcnRpZXMgdG8gcG9zaXRpb24gbWFya3MuXG4gICAgaWYgKCFwb3NpdGlvbmVkICYmICghdGhpcy5lbmdpbmUgfHwgdGhpcy5lbmdpbmUuZmFsbGJhY2tQb3NpdGlvbikpIHtcbiAgICAgIGlmICghdGhpcy51bmljb2RlTGF5b3V0RW5naW5lKSB7XG4gICAgICAgIHRoaXMudW5pY29kZUxheW91dEVuZ2luZSA9IG5ldyBVbmljb2RlTGF5b3V0RW5naW5lKHRoaXMuZm9udCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMudW5pY29kZUxheW91dEVuZ2luZS5wb3NpdGlvbkdseXBocyhnbHlwaFJ1bi5nbHlwaHMsIGdseXBoUnVuLnBvc2l0aW9ucyk7XG4gICAgfVxuXG4gICAgLy8gaWYga2VybmluZyBpcyBub3Qgc3VwcG9ydGVkIGJ5IEdQT1MsIGRvIGtlcm5pbmcgd2l0aCB0aGUgVHJ1ZVR5cGUvQUFUIGtlcm4gdGFibGVcbiAgICBpZiAoKCFwb3NpdGlvbmVkIHx8ICFwb3NpdGlvbmVkLmtlcm4pICYmIGdseXBoUnVuLmZlYXR1cmVzLmtlcm4gIT09IGZhbHNlICYmIHRoaXMuZm9udC5rZXJuKSB7XG4gICAgICBpZiAoIXRoaXMua2VyblByb2Nlc3Nvcikge1xuICAgICAgICB0aGlzLmtlcm5Qcm9jZXNzb3IgPSBuZXcgS2VyblByb2Nlc3Nvcih0aGlzLmZvbnQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmtlcm5Qcm9jZXNzb3IucHJvY2VzcyhnbHlwaFJ1bi5nbHlwaHMsIGdseXBoUnVuLnBvc2l0aW9ucyk7XG4gICAgICBnbHlwaFJ1bi5mZWF0dXJlcy5rZXJuID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBoaWRlRGVmYXVsdElnbm9yYWJsZXMoZ2x5cGhzLCBwb3NpdGlvbnMpIHtcbiAgICBsZXQgc3BhY2UgPSB0aGlzLmZvbnQuZ2x5cGhGb3JDb2RlUG9pbnQoMHgyMCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnbHlwaHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLmlzRGVmYXVsdElnbm9yYWJsZShnbHlwaHNbaV0uY29kZVBvaW50c1swXSkpIHtcbiAgICAgICAgZ2x5cGhzW2ldID0gc3BhY2U7XG4gICAgICAgIHBvc2l0aW9uc1tpXS54QWR2YW5jZSA9IDA7XG4gICAgICAgIHBvc2l0aW9uc1tpXS55QWR2YW5jZSA9IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaXNEZWZhdWx0SWdub3JhYmxlKGNoKSB7XG4gICAgLy8gRnJvbSBEZXJpdmVkQ29yZVByb3BlcnRpZXMudHh0IGluIHRoZSBVbmljb2RlIGRhdGFiYXNlLFxuICAgIC8vIG1pbnVzIFUrMTE1RiwgVSsxMTYwLCBVKzMxNjQgYW5kIFUrRkZBMCwgd2hpY2ggaXMgd2hhdFxuICAgIC8vIEhhcmZidXp6IGFuZCBVbmlzY3JpYmUgZG8uXG4gICAgbGV0IHBsYW5lID0gY2ggPj4gMTY7XG4gICAgaWYgKHBsYW5lID09PSAwKSB7XG4gICAgICAvLyBCTVBcbiAgICAgIHN3aXRjaCAoY2ggPj4gOCkge1xuICAgICAgXHRjYXNlIDB4MDA6IHJldHVybiBjaCA9PT0gMHgwMEFEO1xuICAgICAgXHRjYXNlIDB4MDM6IHJldHVybiBjaCA9PT0gMHgwMzRGO1xuICAgICAgXHRjYXNlIDB4MDY6IHJldHVybiBjaCA9PT0gMHgwNjFDO1xuICAgICAgXHRjYXNlIDB4MTc6IHJldHVybiAweDE3QjQgPD0gY2ggJiYgY2ggPD0gMHgxN0I1O1xuICAgICAgXHRjYXNlIDB4MTg6IHJldHVybiAweDE4MEIgPD0gY2ggJiYgY2ggPD0gMHgxODBFO1xuICAgICAgXHRjYXNlIDB4MjA6IHJldHVybiAoMHgyMDBCIDw9IGNoICYmIGNoIDw9IDB4MjAwRikgfHwgKDB4MjAyQSA8PSBjaCAmJiBjaCA8PSAweDIwMkUpIHx8ICgweDIwNjAgPD0gY2ggJiYgY2ggPD0gMHgyMDZGKTtcbiAgICAgIFx0Y2FzZSAweEZFOiByZXR1cm4gKDB4RkUwMCA8PSBjaCAmJiBjaCA8PSAweEZFMEYpIHx8IGNoID09PSAweEZFRkY7XG4gICAgICBcdGNhc2UgMHhGRjogcmV0dXJuIDB4RkZGMCA8PSBjaCAmJiBjaCA8PSAweEZGRjg7XG4gICAgICBcdGRlZmF1bHQ6ICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBPdGhlciBwbGFuZXNcbiAgICAgIHN3aXRjaCAocGxhbmUpIHtcbiAgICAgIFx0Y2FzZSAweDAxOiByZXR1cm4gKDB4MUJDQTAgPD0gY2ggJiYgY2ggPD0gMHgxQkNBMykgfHwgKDB4MUQxNzMgPD0gY2ggJiYgY2ggPD0gMHgxRDE3QSk7XG4gICAgICBcdGNhc2UgMHgwRTogcmV0dXJuIDB4RTAwMDAgPD0gY2ggJiYgY2ggPD0gMHhFMEZGRjtcbiAgICAgIFx0ZGVmYXVsdDogICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0QXZhaWxhYmxlRmVhdHVyZXMoc2NyaXB0LCBsYW5ndWFnZSkge1xuICAgIGxldCBmZWF0dXJlcyA9IFtdO1xuXG4gICAgaWYgKHRoaXMuZW5naW5lKSB7XG4gICAgICBmZWF0dXJlcy5wdXNoKC4uLnRoaXMuZW5naW5lLmdldEF2YWlsYWJsZUZlYXR1cmVzKHNjcmlwdCwgbGFuZ3VhZ2UpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5mb250Lmtlcm4gJiYgZmVhdHVyZXMuaW5kZXhPZigna2VybicpID09PSAtMSkge1xuICAgICAgZmVhdHVyZXMucHVzaCgna2VybicpO1xuICAgIH1cblxuICAgIHJldHVybiBmZWF0dXJlcztcbiAgfVxuXG4gIHN0cmluZ3NGb3JHbHlwaChnaWQpIHtcbiAgICBsZXQgcmVzdWx0ID0gbmV3IFNldDtcblxuICAgIGxldCBjb2RlUG9pbnRzID0gdGhpcy5mb250Ll9jbWFwUHJvY2Vzc29yLmNvZGVQb2ludHNGb3JHbHlwaChnaWQpO1xuICAgIGZvciAobGV0IGNvZGVQb2ludCBvZiBjb2RlUG9pbnRzKSB7XG4gICAgICByZXN1bHQuYWRkKFN0cmluZy5mcm9tQ29kZVBvaW50KGNvZGVQb2ludCkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmVuZ2luZSAmJiB0aGlzLmVuZ2luZS5zdHJpbmdzRm9yR2x5cGgpIHtcbiAgICAgIGZvciAobGV0IHN0cmluZyBvZiB0aGlzLmVuZ2luZS5zdHJpbmdzRm9yR2x5cGgoZ2lkKSkge1xuICAgICAgICByZXN1bHQuYWRkKHN0cmluZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIEFycmF5LmZyb20ocmVzdWx0KTtcbiAgfVxufVxuIiwgImltcG9ydCB7YmluYXJ5U2VhcmNofSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEtlcm5Qcm9jZXNzb3Ige1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgdGhpcy5rZXJuID0gZm9udC5rZXJuO1xuICB9XG5cbiAgcHJvY2VzcyhnbHlwaHMsIHBvc2l0aW9ucykge1xuICAgIGZvciAobGV0IGdseXBoSW5kZXggPSAwOyBnbHlwaEluZGV4IDwgZ2x5cGhzLmxlbmd0aCAtIDE7IGdseXBoSW5kZXgrKykge1xuICAgICAgbGV0IGxlZnQgPSBnbHlwaHNbZ2x5cGhJbmRleF0uaWQ7XG4gICAgICBsZXQgcmlnaHQgPSBnbHlwaHNbZ2x5cGhJbmRleCArIDFdLmlkO1xuICAgICAgcG9zaXRpb25zW2dseXBoSW5kZXhdLnhBZHZhbmNlICs9IHRoaXMuZ2V0S2VybmluZyhsZWZ0LCByaWdodCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0S2VybmluZyhsZWZ0LCByaWdodCkge1xuICAgIGxldCByZXMgPSAwO1xuXG4gICAgZm9yIChsZXQgdGFibGUgb2YgdGhpcy5rZXJuLnRhYmxlcykge1xuICAgICAgaWYgKHRhYmxlLmNvdmVyYWdlLmNyb3NzU3RyZWFtKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBzd2l0Y2ggKHRhYmxlLnZlcnNpb24pIHtcbiAgICAgICAgY2FzZSAwOlxuICAgICAgICAgIGlmICghdGFibGUuY292ZXJhZ2UuaG9yaXpvbnRhbCkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMTpcbiAgICAgICAgICBpZiAodGFibGUuY292ZXJhZ2UudmVydGljYWwgfHwgdGFibGUuY292ZXJhZ2UudmFyaWF0aW9uKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIGtlcm5pbmcgdGFibGUgdmVyc2lvbiAke3RhYmxlLnZlcnNpb259YCk7XG4gICAgICB9XG5cbiAgICAgIGxldCB2YWwgPSAwO1xuICAgICAgbGV0IHMgPSB0YWJsZS5zdWJ0YWJsZTtcbiAgICAgIHN3aXRjaCAodGFibGUuZm9ybWF0KSB7XG4gICAgICAgIGNhc2UgMDpcbiAgICAgICAgICBsZXQgcGFpcklkeCA9IGJpbmFyeVNlYXJjaChzLnBhaXJzLCBmdW5jdGlvbiAocGFpcikge1xuICAgICAgICAgICAgcmV0dXJuIChsZWZ0IC0gcGFpci5sZWZ0KSB8fCAocmlnaHQgLSBwYWlyLnJpZ2h0KTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChwYWlySWR4ID49IDApIHtcbiAgICAgICAgICAgIHZhbCA9IHMucGFpcnNbcGFpcklkeF0udmFsdWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAyOlxuICAgICAgICAgIGxldCBsZWZ0T2Zmc2V0ID0gMCwgcmlnaHRPZmZzZXQgPSAwO1xuICAgICAgICAgIGlmIChsZWZ0ID49IHMubGVmdFRhYmxlLmZpcnN0R2x5cGggJiYgbGVmdCA8IHMubGVmdFRhYmxlLmZpcnN0R2x5cGggKyBzLmxlZnRUYWJsZS5uR2x5cGhzKSB7XG4gICAgICAgICAgICBsZWZ0T2Zmc2V0ID0gcy5sZWZ0VGFibGUub2Zmc2V0c1tsZWZ0IC0gcy5sZWZ0VGFibGUuZmlyc3RHbHlwaF07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxlZnRPZmZzZXQgPSBzLmFycmF5Lm9mZjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAocmlnaHQgPj0gcy5yaWdodFRhYmxlLmZpcnN0R2x5cGggJiYgcmlnaHQgPCBzLnJpZ2h0VGFibGUuZmlyc3RHbHlwaCArIHMucmlnaHRUYWJsZS5uR2x5cGhzKSB7XG4gICAgICAgICAgICByaWdodE9mZnNldCA9IHMucmlnaHRUYWJsZS5vZmZzZXRzW3JpZ2h0IC0gcy5yaWdodFRhYmxlLmZpcnN0R2x5cGhdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxldCBpbmRleCA9IChsZWZ0T2Zmc2V0ICsgcmlnaHRPZmZzZXQgLSBzLmFycmF5Lm9mZikgLyAyO1xuICAgICAgICAgIHZhbCA9IHMuYXJyYXkudmFsdWVzLmdldChpbmRleCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAzOlxuICAgICAgICAgIGlmIChsZWZ0ID49IHMuZ2x5cGhDb3VudCB8fCByaWdodCA+PSBzLmdseXBoQ291bnQpIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHZhbCA9IHMua2VyblZhbHVlW3Mua2VybkluZGV4W3MubGVmdENsYXNzW2xlZnRdICogcy5yaWdodENsYXNzQ291bnQgKyBzLnJpZ2h0Q2xhc3NbcmlnaHRdXV07XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIGtlcm5pbmcgc3ViLXRhYmxlIGZvcm1hdCAke3RhYmxlLmZvcm1hdH1gKTtcbiAgICAgIH1cblxuICAgICAgLy8gTWljcm9zb2Z0IHN1cHBvcnRzIHRoZSBvdmVycmlkZSBmbGFnLCB3aGljaCByZXNldHMgdGhlIHJlc3VsdFxuICAgICAgLy8gT3RoZXJ3aXNlLCB0aGUgc3VtIG9mIHRoZSByZXN1bHRzIGZyb20gYWxsIHN1YnRhYmxlcyBpcyByZXR1cm5lZFxuICAgICAgaWYgKHRhYmxlLmNvdmVyYWdlLm92ZXJyaWRlKSB7XG4gICAgICAgIHJlcyA9IHZhbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlcyArPSB2YWw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuIiwgImltcG9ydCB7Z2V0Q29tYmluaW5nQ2xhc3N9IGZyb20gJ3VuaWNvZGUtcHJvcGVydGllcyc7XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyB1c2VkIHdoZW4gR1BPUyBkb2VzIG5vdCBkZWZpbmUgJ21hcmsnIG9yICdta21rJyBmZWF0dXJlc1xuICogZm9yIHBvc2l0aW9uaW5nIG1hcmtzIHJlbGF0aXZlIHRvIGJhc2UgZ2x5cGhzLiBJdCB1c2VzIHRoZSB1bmljb2RlXG4gKiBjb21iaW5pbmcgY2xhc3MgcHJvcGVydHkgdG8gcG9zaXRpb24gbWFya3MuXG4gKlxuICogQmFzZWQgb24gY29kZSBmcm9tIEhhcmZidXp6LCB0aGFua3MhXG4gKiBodHRwczovL2dpdGh1Yi5jb20vYmVoZGFkL2hhcmZidXp6L2Jsb2IvbWFzdGVyL3NyYy9oYi1vdC1zaGFwZS1mYWxsYmFjay5jY1xuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBVbmljb2RlTGF5b3V0RW5naW5lIHtcbiAgY29uc3RydWN0b3IoZm9udCkge1xuICAgIHRoaXMuZm9udCA9IGZvbnQ7XG4gIH1cblxuICBwb3NpdGlvbkdseXBocyhnbHlwaHMsIHBvc2l0aW9ucykge1xuICAgIC8vIGZpbmQgZWFjaCBiYXNlICsgbWFyayBjbHVzdGVyLCBhbmQgcG9zaXRpb24gdGhlIG1hcmtzIHJlbGF0aXZlIHRvIHRoZSBiYXNlXG4gICAgbGV0IGNsdXN0ZXJTdGFydCA9IDA7XG4gICAgbGV0IGNsdXN0ZXJFbmQgPSAwO1xuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBnbHlwaHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICBsZXQgZ2x5cGggPSBnbHlwaHNbaW5kZXhdO1xuICAgICAgaWYgKGdseXBoLmlzTWFyaykgeyAvLyBUT0RPOiBoYW5kbGUgbGlnYXR1cmVzXG4gICAgICAgIGNsdXN0ZXJFbmQgPSBpbmRleDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChjbHVzdGVyU3RhcnQgIT09IGNsdXN0ZXJFbmQpIHtcbiAgICAgICAgICB0aGlzLnBvc2l0aW9uQ2x1c3RlcihnbHlwaHMsIHBvc2l0aW9ucywgY2x1c3RlclN0YXJ0LCBjbHVzdGVyRW5kKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNsdXN0ZXJTdGFydCA9IGNsdXN0ZXJFbmQgPSBpbmRleDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY2x1c3RlclN0YXJ0ICE9PSBjbHVzdGVyRW5kKSB7XG4gICAgICB0aGlzLnBvc2l0aW9uQ2x1c3RlcihnbHlwaHMsIHBvc2l0aW9ucywgY2x1c3RlclN0YXJ0LCBjbHVzdGVyRW5kKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcG9zaXRpb25zO1xuICB9XG5cbiAgcG9zaXRpb25DbHVzdGVyKGdseXBocywgcG9zaXRpb25zLCBjbHVzdGVyU3RhcnQsIGNsdXN0ZXJFbmQpIHtcbiAgICBsZXQgYmFzZSA9IGdseXBoc1tjbHVzdGVyU3RhcnRdO1xuICAgIGxldCBiYXNlQm94ID0gYmFzZS5jYm94LmNvcHkoKTtcblxuICAgIC8vIGFkanVzdCBib3VuZGluZyBib3ggZm9yIGxpZ2F0dXJlIGdseXBoc1xuICAgIGlmIChiYXNlLmNvZGVQb2ludHMubGVuZ3RoID4gMSkge1xuICAgICAgLy8gTFRSLiBUT0RPOiBSVEwgc3VwcG9ydC5cbiAgICAgIGJhc2VCb3gubWluWCArPSAoKGJhc2UuY29kZVBvaW50cy5sZW5ndGggLSAxKSAqIGJhc2VCb3gud2lkdGgpIC8gYmFzZS5jb2RlUG9pbnRzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBsZXQgeE9mZnNldCA9IC1wb3NpdGlvbnNbY2x1c3RlclN0YXJ0XS54QWR2YW5jZTtcbiAgICBsZXQgeU9mZnNldCA9IDA7XG4gICAgbGV0IHlHYXAgPSB0aGlzLmZvbnQudW5pdHNQZXJFbSAvIDE2O1xuXG4gICAgLy8gcG9zaXRpb24gZWFjaCBvZiB0aGUgbWFyayBnbHlwaHMgcmVsYXRpdmUgdG8gdGhlIGJhc2UgZ2x5cGhcbiAgICBmb3IgKGxldCBpbmRleCA9IGNsdXN0ZXJTdGFydCArIDE7IGluZGV4IDw9IGNsdXN0ZXJFbmQ7IGluZGV4KyspIHtcbiAgICAgIGxldCBtYXJrID0gZ2x5cGhzW2luZGV4XTtcbiAgICAgIGxldCBtYXJrQm94ID0gbWFyay5jYm94O1xuICAgICAgbGV0IHBvc2l0aW9uID0gcG9zaXRpb25zW2luZGV4XTtcblxuICAgICAgbGV0IGNvbWJpbmluZ0NsYXNzID0gdGhpcy5nZXRDb21iaW5pbmdDbGFzcyhtYXJrLmNvZGVQb2ludHNbMF0pO1xuXG4gICAgICBpZiAoY29tYmluaW5nQ2xhc3MgIT09ICdOb3RfUmVvcmRlcmVkJykge1xuICAgICAgICBwb3NpdGlvbi54T2Zmc2V0ID0gcG9zaXRpb24ueU9mZnNldCA9IDA7XG5cbiAgICAgICAgLy8geCBwb3NpdGlvbmluZ1xuICAgICAgICBzd2l0Y2ggKGNvbWJpbmluZ0NsYXNzKSB7XG4gICAgICAgICAgY2FzZSAnRG91YmxlX0Fib3ZlJzpcbiAgICAgICAgICBjYXNlICdEb3VibGVfQmVsb3cnOlxuICAgICAgICAgICAgLy8gTFRSLiBUT0RPOiBSVEwgc3VwcG9ydC5cbiAgICAgICAgICAgIHBvc2l0aW9uLnhPZmZzZXQgKz0gYmFzZUJveC5taW5YIC0gbWFya0JveC53aWR0aCAvIDIgLSBtYXJrQm94Lm1pblg7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJ0F0dGFjaGVkX0JlbG93X0xlZnQnOlxuICAgICAgICAgIGNhc2UgJ0JlbG93X0xlZnQnOlxuICAgICAgICAgIGNhc2UgJ0Fib3ZlX0xlZnQnOlxuICAgICAgICAgICAgLy8gbGVmdCBhbGlnblxuICAgICAgICAgICAgcG9zaXRpb24ueE9mZnNldCArPSBiYXNlQm94Lm1pblggLSBtYXJrQm94Lm1pblg7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJ0F0dGFjaGVkX0Fib3ZlX1JpZ2h0JzpcbiAgICAgICAgICBjYXNlICdCZWxvd19SaWdodCc6XG4gICAgICAgICAgY2FzZSAnQWJvdmVfUmlnaHQnOlxuICAgICAgICAgICAgLy8gcmlnaHQgYWxpZ25cbiAgICAgICAgICAgIHBvc2l0aW9uLnhPZmZzZXQgKz0gYmFzZUJveC5tYXhYIC0gbWFya0JveC53aWR0aCAtIG1hcmtCb3gubWluWDtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgZGVmYXVsdDogLy8gQXR0YWNoZWRfQmVsb3csIEF0dGFjaGVkX0Fib3ZlLCBCZWxvdywgQWJvdmUsIG90aGVyXG4gICAgICAgICAgICAvLyBjZW50ZXIgYWxpZ25cbiAgICAgICAgICAgIHBvc2l0aW9uLnhPZmZzZXQgKz0gYmFzZUJveC5taW5YICsgKGJhc2VCb3gud2lkdGggLSBtYXJrQm94LndpZHRoKSAvIDIgLSBtYXJrQm94Lm1pblg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyB5IHBvc2l0aW9uaW5nXG4gICAgICAgIHN3aXRjaCAoY29tYmluaW5nQ2xhc3MpIHtcbiAgICAgICAgICBjYXNlICdEb3VibGVfQmVsb3cnOlxuICAgICAgICAgIGNhc2UgJ0JlbG93X0xlZnQnOlxuICAgICAgICAgIGNhc2UgJ0JlbG93JzpcbiAgICAgICAgICBjYXNlICdCZWxvd19SaWdodCc6XG4gICAgICAgICAgY2FzZSAnQXR0YWNoZWRfQmVsb3dfTGVmdCc6XG4gICAgICAgICAgY2FzZSAnQXR0YWNoZWRfQmVsb3cnOlxuICAgICAgICAgICAgLy8gYWRkIGEgc21hbGwgZ2FwIGJldHdlZW4gdGhlIGdseXBocyBpZiB0aGV5IGFyZSBub3QgYXR0YWNoZWRcbiAgICAgICAgICAgIGlmIChjb21iaW5pbmdDbGFzcyA9PT0gJ0F0dGFjaGVkX0JlbG93X0xlZnQnIHx8IGNvbWJpbmluZ0NsYXNzID09PSAnQXR0YWNoZWRfQmVsb3cnKSB7XG4gICAgICAgICAgICAgIGJhc2VCb3gubWluWSArPSB5R2FwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwb3NpdGlvbi55T2Zmc2V0ID0gLWJhc2VCb3gubWluWSAtIG1hcmtCb3gubWF4WTtcbiAgICAgICAgICAgIGJhc2VCb3gubWluWSArPSBtYXJrQm94LmhlaWdodDtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnRG91YmxlX0Fib3ZlJzpcbiAgICAgICAgICBjYXNlICdBYm92ZV9MZWZ0JzpcbiAgICAgICAgICBjYXNlICdBYm92ZSc6XG4gICAgICAgICAgY2FzZSAnQWJvdmVfUmlnaHQnOlxuICAgICAgICAgIGNhc2UgJ0F0dGFjaGVkX0Fib3ZlJzpcbiAgICAgICAgICBjYXNlICdBdHRhY2hlZF9BYm92ZV9SaWdodCc6XG4gICAgICAgICAgICAvLyBhZGQgYSBzbWFsbCBnYXAgYmV0d2VlbiB0aGUgZ2x5cGhzIGlmIHRoZXkgYXJlIG5vdCBhdHRhY2hlZFxuICAgICAgICAgICAgaWYgKGNvbWJpbmluZ0NsYXNzID09PSAnQXR0YWNoZWRfQWJvdmUnIHx8IGNvbWJpbmluZ0NsYXNzID09PSAnQXR0YWNoZWRfQWJvdmVfUmlnaHQnKSB7XG4gICAgICAgICAgICAgIGJhc2VCb3gubWF4WSArPSB5R2FwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwb3NpdGlvbi55T2Zmc2V0ID0gYmFzZUJveC5tYXhZIC0gbWFya0JveC5taW5ZO1xuICAgICAgICAgICAgYmFzZUJveC5tYXhZICs9IG1hcmtCb3guaGVpZ2h0O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBwb3NpdGlvbi54QWR2YW5jZSA9IHBvc2l0aW9uLnlBZHZhbmNlID0gMDtcbiAgICAgICAgcG9zaXRpb24ueE9mZnNldCArPSB4T2Zmc2V0O1xuICAgICAgICBwb3NpdGlvbi55T2Zmc2V0ICs9IHlPZmZzZXQ7XG5cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHhPZmZzZXQgLT0gcG9zaXRpb24ueEFkdmFuY2U7XG4gICAgICAgIHlPZmZzZXQgLT0gcG9zaXRpb24ueUFkdmFuY2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgZ2V0Q29tYmluaW5nQ2xhc3MoY29kZVBvaW50KSB7XG4gICAgbGV0IGNvbWJpbmluZ0NsYXNzID0gZ2V0Q29tYmluaW5nQ2xhc3MoY29kZVBvaW50KTtcblxuICAgIC8vIFRoYWkgLyBMYW8gbmVlZCBzb21lIHBlci1jaGFyYWN0ZXIgd29ya1xuICAgIGlmICgoY29kZVBvaW50ICYgfjB4ZmYpID09PSAweDBlMDApIHtcbiAgICAgIGlmIChjb21iaW5pbmdDbGFzcyA9PT0gJ05vdF9SZW9yZGVyZWQnKSB7XG4gICAgICAgIHN3aXRjaCAoY29kZVBvaW50KSB7XG4gICAgICAgICAgY2FzZSAweDBlMzE6XG4gICAgICAgICAgY2FzZSAweDBlMzQ6XG4gICAgICAgICAgY2FzZSAweDBlMzU6XG4gICAgICAgICAgY2FzZSAweDBlMzY6XG4gICAgICAgICAgY2FzZSAweDBlMzc6XG4gICAgICAgICAgY2FzZSAweDBlNDc6XG4gICAgICAgICAgY2FzZSAweDBlNGM6XG4gICAgICAgICAgY2FzZSAweDBlM2Q6XG4gICAgICAgICAgY2FzZSAweDBlNGU6XG4gICAgICAgICAgICByZXR1cm4gJ0Fib3ZlX1JpZ2h0JztcblxuICAgICAgICAgIGNhc2UgMHgwZWIxOlxuICAgICAgICAgIGNhc2UgMHgwZWI0OlxuICAgICAgICAgIGNhc2UgMHgwZWI1OlxuICAgICAgICAgIGNhc2UgMHgwZWI2OlxuICAgICAgICAgIGNhc2UgMHgwZWI3OlxuICAgICAgICAgIGNhc2UgMHgwZWJiOlxuICAgICAgICAgIGNhc2UgMHgwZWNjOlxuICAgICAgICAgIGNhc2UgMHgwZWNkOlxuICAgICAgICAgICAgcmV0dXJuICdBYm92ZSc7XG5cbiAgICAgICAgICBjYXNlIDB4MGViYzpcbiAgICAgICAgICAgIHJldHVybiAnQmVsb3cnO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGNvZGVQb2ludCA9PT0gMHgwZTNhKSB7IC8vIHZpcmFtYVxuICAgICAgICByZXR1cm4gJ0JlbG93X1JpZ2h0JztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzd2l0Y2ggKGNvbWJpbmluZ0NsYXNzKSB7XG4gICAgICAvLyBIZWJyZXdcblxuICAgICAgY2FzZSAnQ0NDMTAnOiAvLyBzaGV2YVxuICAgICAgY2FzZSAnQ0NDMTEnOiAvLyBoYXRhZiBzZWdvbFxuICAgICAgY2FzZSAnQ0NDMTInOiAvLyBoYXRhZiBwYXRhaFxuICAgICAgY2FzZSAnQ0NDMTMnOiAvLyBoYXRhZiBxYW1hdHNcbiAgICAgIGNhc2UgJ0NDQzE0JzogLy8gaGlyaXFcbiAgICAgIGNhc2UgJ0NDQzE1JzogLy8gdHNlcmVcbiAgICAgIGNhc2UgJ0NDQzE2JzogLy8gc2Vnb2xcbiAgICAgIGNhc2UgJ0NDQzE3JzogLy8gcGF0YWhcbiAgICAgIGNhc2UgJ0NDQzE4JzogLy8gcWFtYXRzXG4gICAgICBjYXNlICdDQ0MyMCc6IC8vIHF1YnV0c1xuICAgICAgY2FzZSAnQ0NDMjInOiAvLyBtZXRlZ1xuICAgICAgICByZXR1cm4gJ0JlbG93JztcblxuICAgICAgY2FzZSAnQ0NDMjMnOiAvLyByYWZlXG4gICAgICAgIHJldHVybiAnQXR0YWNoZWRfQWJvdmUnO1xuXG4gICAgICBjYXNlICdDQ0MyNCc6IC8vIHNoaW4gZG90XG4gICAgICAgIHJldHVybiAnQWJvdmVfUmlnaHQnO1xuXG4gICAgICBjYXNlICdDQ0MyNSc6IC8vIHNpbiBkb3RcbiAgICAgIGNhc2UgJ0NDQzE5JzogLy8gaG9sYW1cbiAgICAgICAgcmV0dXJuICdBYm92ZV9MZWZ0JztcblxuICAgICAgY2FzZSAnQ0NDMjYnOiAvLyBwb2ludCB2YXJpa2FcbiAgICAgICAgcmV0dXJuICdBYm92ZSc7XG5cbiAgICAgIGNhc2UgJ0NDQzIxJzogLy8gZGFnZXNoXG4gICAgICAgIGJyZWFrO1xuXG4gICAgICAvLyBBcmFiaWMgYW5kIFN5cmlhY1xuXG4gICAgICBjYXNlICdDQ0MyNyc6IC8vIGZhdGhhdGFuXG4gICAgICBjYXNlICdDQ0MyOCc6IC8vIGRhbW1hdGFuXG4gICAgICBjYXNlICdDQ0MzMCc6IC8vIGZhdGhhXG4gICAgICBjYXNlICdDQ0MzMSc6IC8vIGRhbW1hXG4gICAgICBjYXNlICdDQ0MzMyc6IC8vIHNoYWRkYVxuICAgICAgY2FzZSAnQ0NDMzQnOiAvLyBzdWt1blxuICAgICAgY2FzZSAnQ0NDMzUnOiAvLyBzdXBlcnNjcmlwdCBhbGVmXG4gICAgICBjYXNlICdDQ0MzNic6IC8vIHN1cGVyc2NyaXB0IGFsYXBoXG4gICAgICAgIHJldHVybiAnQWJvdmUnO1xuXG4gICAgICBjYXNlICdDQ0MyOSc6IC8vIGthc3JhdGFuXG4gICAgICBjYXNlICdDQ0MzMic6IC8vIGthc3JhXG4gICAgICAgIHJldHVybiAnQmVsb3cnO1xuXG4gICAgICAvLyBUaGFpXG5cbiAgICAgIGNhc2UgJ0NDQzEwMyc6IC8vIHNhcmEgdSAvIHNhcmEgdXVcbiAgICAgICAgcmV0dXJuICdCZWxvd19SaWdodCc7XG5cbiAgICAgIGNhc2UgJ0NDQzEwNyc6IC8vIG1haVxuICAgICAgICByZXR1cm4gJ0Fib3ZlX1JpZ2h0JztcblxuICAgICAgLy8gTGFvXG5cbiAgICAgIGNhc2UgJ0NDQzExOCc6IC8vIHNpZ24gdSAvIHNpZ24gdXVcbiAgICAgICAgcmV0dXJuICdCZWxvdyc7XG5cbiAgICAgIGNhc2UgJ0NDQzEyMic6IC8vIG1haVxuICAgICAgICByZXR1cm4gJ0Fib3ZlJztcblxuICAgICAgLy8gVGliZXRhblxuXG4gICAgICBjYXNlICdDQ0MxMjknOiAvLyBzaWduIGFhXG4gICAgICBjYXNlICdDQ0MxMzInOiAvLyBzaWduIHVcbiAgICAgICAgcmV0dXJuICdCZWxvdyc7XG5cbiAgICAgIGNhc2UgJ0NDQzEzMCc6IC8vIHNpZ24gaVxuICAgICAgICByZXR1cm4gJ0Fib3ZlJztcbiAgICB9XG5cbiAgICByZXR1cm4gY29tYmluaW5nQ2xhc3M7XG4gIH1cbn1cbiIsICJpbXBvcnQgQkJveCBmcm9tICcuLi9nbHlwaC9CQm94JztcbmltcG9ydCAqIGFzIFNjcmlwdCBmcm9tICcuLi9sYXlvdXQvU2NyaXB0JztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcnVuIG9mIEdseXBoIGFuZCBHbHlwaFBvc2l0aW9uIG9iamVjdHMuXG4gKiBSZXR1cm5lZCBieSB0aGUgZm9udCBsYXlvdXQgbWV0aG9kLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHbHlwaFJ1biB7XG4gIGNvbnN0cnVjdG9yKGdseXBocywgZmVhdHVyZXMsIHNjcmlwdCwgbGFuZ3VhZ2UsIGRpcmVjdGlvbikge1xuICAgIC8qKlxuICAgICAqIEFuIGFycmF5IG9mIEdseXBoIG9iamVjdHMgaW4gdGhlIHJ1blxuICAgICAqIEB0eXBlIHtHbHlwaFtdfVxuICAgICAqL1xuICAgIHRoaXMuZ2x5cGhzID0gZ2x5cGhzO1xuXG4gICAgLyoqXG4gICAgICogQW4gYXJyYXkgb2YgR2x5cGhQb3NpdGlvbiBvYmplY3RzIGZvciBlYWNoIGdseXBoIGluIHRoZSBydW5cbiAgICAgKiBAdHlwZSB7R2x5cGhQb3NpdGlvbltdfVxuICAgICAqL1xuICAgIHRoaXMucG9zaXRpb25zID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzY3JpcHQgdGhhdCB3YXMgcmVxdWVzdGVkIGZvciBzaGFwaW5nLiBUaGlzIHdhcyBlaXRoZXIgcGFzc2VkIGluIG9yIGRldGVjdGVkIGF1dG9tYXRpY2FsbHkuXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKi9cbiAgICB0aGlzLnNjcmlwdCA9IHNjcmlwdDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBsYW5ndWFnZSByZXF1ZXN0ZWQgZm9yIHNoYXBpbmcsIGFzIHBhc3NlZCBpbi4gSWYgYG51bGxgLCB0aGUgZGVmYXVsdCBsYW5ndWFnZSBmb3IgdGhlXG4gICAgICogc2NyaXB0IHdhcyB1c2VkLlxuICAgICAqIEB0eXBlIHtzdHJpbmd9XG4gICAgICovXG4gICAgdGhpcy5sYW5ndWFnZSA9IGxhbmd1YWdlIHx8IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGlyZWN0aW9uIHJlcXVlc3RlZCBmb3Igc2hhcGluZywgYXMgcGFzc2VkIGluIChlaXRoZXIgbHRyIG9yIHJ0bCkuXG4gICAgICogSWYgYG51bGxgLCB0aGUgZGVmYXVsdCBkaXJlY3Rpb24gb2YgdGhlIHNjcmlwdCBpcyB1c2VkLlxuICAgICAqIEB0eXBlIHtzdHJpbmd9XG4gICAgICovXG4gICAgdGhpcy5kaXJlY3Rpb24gPSBkaXJlY3Rpb24gfHwgU2NyaXB0LmRpcmVjdGlvbihzY3JpcHQpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGZlYXR1cmVzIHJlcXVlc3RlZCBkdXJpbmcgc2hhcGluZy4gVGhpcyBpcyBhIGNvbWJpbmF0aW9uIG9mIHVzZXJcbiAgICAgKiBzcGVjaWZpZWQgZmVhdHVyZXMgYW5kIGZlYXR1cmVzIGNob3NlbiBieSB0aGUgc2hhcGVyLlxuICAgICAqIEB0eXBlIHtvYmplY3R9XG4gICAgICovXG4gICAgdGhpcy5mZWF0dXJlcyA9IHt9O1xuXG4gICAgLy8gQ29udmVydCBmZWF0dXJlcyB0byBhbiBvYmplY3RcbiAgICBpZiAoQXJyYXkuaXNBcnJheShmZWF0dXJlcykpIHtcbiAgICAgIGZvciAobGV0IHRhZyBvZiBmZWF0dXJlcykge1xuICAgICAgICB0aGlzLmZlYXR1cmVzW3RhZ10gPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGZlYXR1cmVzID09PSAnb2JqZWN0Jykge1xuICAgICAgdGhpcy5mZWF0dXJlcyA9IGZlYXR1cmVzO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdG90YWwgYWR2YW5jZSB3aWR0aCBvZiB0aGUgcnVuLlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgZ2V0IGFkdmFuY2VXaWR0aCgpIHtcbiAgICBsZXQgd2lkdGggPSAwO1xuICAgIGZvciAobGV0IHBvc2l0aW9uIG9mIHRoaXMucG9zaXRpb25zKSB7XG4gICAgICB3aWR0aCArPSBwb3NpdGlvbi54QWR2YW5jZTtcbiAgICB9XG5cbiAgICByZXR1cm4gd2lkdGg7XG4gIH1cblxuIC8qKlxuICAqIFRoZSB0b3RhbCBhZHZhbmNlIGhlaWdodCBvZiB0aGUgcnVuLlxuICAqIEB0eXBlIHtudW1iZXJ9XG4gICovXG4gIGdldCBhZHZhbmNlSGVpZ2h0KCkge1xuICAgIGxldCBoZWlnaHQgPSAwO1xuICAgIGZvciAobGV0IHBvc2l0aW9uIG9mIHRoaXMucG9zaXRpb25zKSB7XG4gICAgICBoZWlnaHQgKz0gcG9zaXRpb24ueUFkdmFuY2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIGhlaWdodDtcbiAgfVxuXG4gLyoqXG4gICogVGhlIGJvdW5kaW5nIGJveCBjb250YWluaW5nIGFsbCBnbHlwaHMgaW4gdGhlIHJ1bi5cbiAgKiBAdHlwZSB7QkJveH1cbiAgKi9cbiAgZ2V0IGJib3goKSB7XG4gICAgbGV0IGJib3ggPSBuZXcgQkJveDtcblxuICAgIGxldCB4ID0gMDtcbiAgICBsZXQgeSA9IDA7XG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHRoaXMuZ2x5cGhzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgbGV0IGdseXBoID0gdGhpcy5nbHlwaHNbaW5kZXhdO1xuICAgICAgbGV0IHAgPSB0aGlzLnBvc2l0aW9uc1tpbmRleF07XG4gICAgICBsZXQgYiA9IGdseXBoLmJib3g7XG5cbiAgICAgIGJib3guYWRkUG9pbnQoYi5taW5YICsgeCArIHAueE9mZnNldCwgYi5taW5ZICsgeSArIHAueU9mZnNldCk7XG4gICAgICBiYm94LmFkZFBvaW50KGIubWF4WCArIHggKyBwLnhPZmZzZXQsIGIubWF4WSArIHkgKyBwLnlPZmZzZXQpO1xuXG4gICAgICB4ICs9IHAueEFkdmFuY2U7XG4gICAgICB5ICs9IHAueUFkdmFuY2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJib3g7XG4gIH1cbn1cbiIsICIvKipcbiAqIFJlcHJlc2VudHMgYSBnbHlwaCBib3VuZGluZyBib3hcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQkJveCB7XG4gIGNvbnN0cnVjdG9yKG1pblggPSBJbmZpbml0eSwgbWluWSA9IEluZmluaXR5LCBtYXhYID0gLUluZmluaXR5LCBtYXhZID0gLUluZmluaXR5KSB7XG4gICAgLyoqXG4gICAgICogVGhlIG1pbmltdW0gWCBwb3NpdGlvbiBpbiB0aGUgYm91bmRpbmcgYm94XG4gICAgICogQHR5cGUge251bWJlcn1cbiAgICAgKi9cbiAgICB0aGlzLm1pblggPSBtaW5YO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG1pbmltdW0gWSBwb3NpdGlvbiBpbiB0aGUgYm91bmRpbmcgYm94XG4gICAgICogQHR5cGUge251bWJlcn1cbiAgICAgKi9cbiAgICB0aGlzLm1pblkgPSBtaW5ZO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG1heG1pbXVtIFggcG9zaXRpb24gaW4gdGhlIGJvdW5kaW5nIGJveFxuICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICovXG4gICAgdGhpcy5tYXhYID0gbWF4WDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBtYXhtaW11bSBZIHBvc2l0aW9uIGluIHRoZSBib3VuZGluZyBib3hcbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgICAqL1xuICAgIHRoaXMubWF4WSA9IG1heFk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHdpZHRoIG9mIHRoZSBib3VuZGluZyBib3hcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGdldCB3aWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXhYIC0gdGhpcy5taW5YO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBoZWlnaHQgb2YgdGhlIGJvdW5kaW5nIGJveFxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgZ2V0IGhlaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXhZIC0gdGhpcy5taW5ZO1xuICB9XG5cbiAgYWRkUG9pbnQoeCwgeSkge1xuICAgIGlmIChNYXRoLmFicyh4KSAhPT0gSW5maW5pdHkpIHtcbiAgICAgIGlmICh4IDwgdGhpcy5taW5YKSB7XG4gICAgICAgIHRoaXMubWluWCA9IHg7XG4gICAgICB9XG5cbiAgICAgIGlmICh4ID4gdGhpcy5tYXhYKSB7XG4gICAgICAgIHRoaXMubWF4WCA9IHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKE1hdGguYWJzKHkpICE9PSBJbmZpbml0eSkge1xuICAgICAgaWYgKHkgPCB0aGlzLm1pblkpIHtcbiAgICAgICAgdGhpcy5taW5ZID0geTtcbiAgICAgIH1cblxuICAgICAgaWYgKHkgPiB0aGlzLm1heFkpIHtcbiAgICAgICAgdGhpcy5tYXhZID0geTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjb3B5KCkge1xuICAgIHJldHVybiBuZXcgQkJveCh0aGlzLm1pblgsIHRoaXMubWluWSwgdGhpcy5tYXhYLCB0aGlzLm1heFkpO1xuICB9XG59XG4iLCAiaW1wb3J0IHtnZXRTY3JpcHR9IGZyb20gJ3VuaWNvZGUtcHJvcGVydGllcyc7XG5cbi8vIFRoaXMgbWFwcyB0aGUgVW5pY29kZSBTY3JpcHQgcHJvcGVydHkgdG8gYW4gT3BlblR5cGUgc2NyaXB0IHRhZ1xuLy8gRGF0YSBmcm9tIGh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS90eXBvZ3JhcGh5L290c3BlYy9zY3JpcHR0YWdzLmh0bVxuLy8gYW5kIGh0dHA6Ly93d3cudW5pY29kZS5vcmcvUHVibGljL1VOSURBVEEvUHJvcGVydHlWYWx1ZUFsaWFzZXMudHh0LlxuY29uc3QgVU5JQ09ERV9TQ1JJUFRTID0ge1xuICBDYXVjYXNpYW5fQWxiYW5pYW46ICdhZ2hiJyxcbiAgQXJhYmljOiAnYXJhYicsXG4gIEltcGVyaWFsX0FyYW1haWM6ICdhcm1pJyxcbiAgQXJtZW5pYW46ICdhcm1uJyxcbiAgQXZlc3RhbjogJ2F2c3QnLFxuICBCYWxpbmVzZTogJ2JhbGknLFxuICBCYW11bTogJ2JhbXUnLFxuICBCYXNzYV9WYWg6ICdiYXNzJyxcbiAgQmF0YWs6ICdiYXRrJyxcbiAgQmVuZ2FsaTogWydibmcyJywgJ2JlbmcnXSxcbiAgQm9wb21vZm86ICdib3BvJyxcbiAgQnJhaG1pOiAnYnJhaCcsXG4gIEJyYWlsbGU6ICdicmFpJyxcbiAgQnVnaW5lc2U6ICdidWdpJyxcbiAgQnVoaWQ6ICdidWhkJyxcbiAgQ2hha21hOiAnY2FrbScsXG4gIENhbmFkaWFuX0Fib3JpZ2luYWw6ICdjYW5zJyxcbiAgQ2FyaWFuOiAnY2FyaScsXG4gIENoYW06ICdjaGFtJyxcbiAgQ2hlcm9rZWU6ICdjaGVyJyxcbiAgQ29wdGljOiAnY29wdCcsXG4gIEN5cHJpb3Q6ICdjcHJ0JyxcbiAgQ3lyaWxsaWM6ICdjeXJsJyxcbiAgRGV2YW5hZ2FyaTogWydkZXYyJywgJ2RldmEnXSxcbiAgRGVzZXJldDogJ2RzcnQnLFxuICBEdXBsb3lhbjogJ2R1cGwnLFxuICBFZ3lwdGlhbl9IaWVyb2dseXBoczogJ2VneXAnLFxuICBFbGJhc2FuOiAnZWxiYScsXG4gIEV0aGlvcGljOiAnZXRoaScsXG4gIEdlb3JnaWFuOiAnZ2VvcicsXG4gIEdsYWdvbGl0aWM6ICdnbGFnJyxcbiAgR290aGljOiAnZ290aCcsXG4gIEdyYW50aGE6ICdncmFuJyxcbiAgR3JlZWs6ICdncmVrJyxcbiAgR3VqYXJhdGk6IFsnZ2pyMicsICdndWpyJ10sXG4gIEd1cm11a2hpOiBbJ2d1cjInLCAnZ3VydSddLFxuICBIYW5ndWw6ICdoYW5nJyxcbiAgSGFuOiAnaGFuaScsXG4gIEhhbnVub286ICdoYW5vJyxcbiAgSGVicmV3OiAnaGVicicsXG4gIEhpcmFnYW5hOiAnaGlyYScsXG4gIFBhaGF3aF9IbW9uZzogJ2htbmcnLFxuICBLYXRha2FuYV9Pcl9IaXJhZ2FuYTogJ2hya3QnLFxuICBPbGRfSXRhbGljOiAnaXRhbCcsXG4gIEphdmFuZXNlOiAnamF2YScsXG4gIEtheWFoX0xpOiAna2FsaScsXG4gIEthdGFrYW5hOiAna2FuYScsXG4gIEtoYXJvc2h0aGk6ICdraGFyJyxcbiAgS2htZXI6ICdraG1yJyxcbiAgS2hvamtpOiAna2hvaicsXG4gIEthbm5hZGE6IFsna25kMicsICdrbmRhJ10sXG4gIEthaXRoaTogJ2t0aGknLFxuICBUYWlfVGhhbTogJ2xhbmEnLFxuICBMYW86ICdsYW8gJyxcbiAgTGF0aW46ICdsYXRuJyxcbiAgTGVwY2hhOiAnbGVwYycsXG4gIExpbWJ1OiAnbGltYicsXG4gIExpbmVhcl9BOiAnbGluYScsXG4gIExpbmVhcl9COiAnbGluYicsXG4gIExpc3U6ICdsaXN1JyxcbiAgTHljaWFuOiAnbHljaScsXG4gIEx5ZGlhbjogJ2x5ZGknLFxuICBNYWhhamFuaTogJ21haGonLFxuICBNYW5kYWljOiAnbWFuZCcsXG4gIE1hbmljaGFlYW46ICdtYW5pJyxcbiAgTWVuZGVfS2lrYWt1aTogJ21lbmQnLFxuICBNZXJvaXRpY19DdXJzaXZlOiAnbWVyYycsXG4gIE1lcm9pdGljX0hpZXJvZ2x5cGhzOiAnbWVybycsXG4gIE1hbGF5YWxhbTogWydtbG0yJywgJ21seW0nXSxcbiAgTW9kaTogJ21vZGknLFxuICBNb25nb2xpYW46ICdtb25nJyxcbiAgTXJvOiAnbXJvbycsXG4gIE1lZXRlaV9NYXllazogJ210ZWknLFxuICBNeWFubWFyOiBbJ215bTInLCAnbXltciddLFxuICBPbGRfTm9ydGhfQXJhYmlhbjogJ25hcmInLFxuICBOYWJhdGFlYW46ICduYmF0JyxcbiAgTmtvOiAnbmtvICcsXG4gIE9naGFtOiAnb2dhbScsXG4gIE9sX0NoaWtpOiAnb2xjaycsXG4gIE9sZF9UdXJraWM6ICdvcmtoJyxcbiAgT3JpeWE6IFsnb3J5MicsICdvcnlhJ10sXG4gIE9zbWFueWE6ICdvc21hJyxcbiAgUGFsbXlyZW5lOiAncGFsbScsXG4gIFBhdV9DaW5fSGF1OiAncGF1YycsXG4gIE9sZF9QZXJtaWM6ICdwZXJtJyxcbiAgUGhhZ3NfUGE6ICdwaGFnJyxcbiAgSW5zY3JpcHRpb25hbF9QYWhsYXZpOiAncGhsaScsXG4gIFBzYWx0ZXJfUGFobGF2aTogJ3BobHAnLFxuICBQaG9lbmljaWFuOiAncGhueCcsXG4gIE1pYW86ICdwbHJkJyxcbiAgSW5zY3JpcHRpb25hbF9QYXJ0aGlhbjogJ3BydGknLFxuICBSZWphbmc6ICdyam5nJyxcbiAgUnVuaWM6ICdydW5yJyxcbiAgU2FtYXJpdGFuOiAnc2FtcicsXG4gIE9sZF9Tb3V0aF9BcmFiaWFuOiAnc2FyYicsXG4gIFNhdXJhc2h0cmE6ICdzYXVyJyxcbiAgU2hhdmlhbjogJ3NoYXcnLFxuICBTaGFyYWRhOiAnc2hyZCcsXG4gIFNpZGRoYW06ICdzaWRkJyxcbiAgS2h1ZGF3YWRpOiAnc2luZCcsXG4gIFNpbmhhbGE6ICdzaW5oJyxcbiAgU29yYV9Tb21wZW5nOiAnc29yYScsXG4gIFN1bmRhbmVzZTogJ3N1bmQnLFxuICBTeWxvdGlfTmFncmk6ICdzeWxvJyxcbiAgU3lyaWFjOiAnc3lyYycsXG4gIFRhZ2JhbndhOiAndGFnYicsXG4gIFRha3JpOiAndGFrcicsXG4gIFRhaV9MZTogJ3RhbGUnLFxuICBOZXdfVGFpX0x1ZTogJ3RhbHUnLFxuICBUYW1pbDogWyd0bWwyJywgJ3RhbWwnXSxcbiAgVGFpX1ZpZXQ6ICd0YXZ0JyxcbiAgVGVsdWd1OiBbJ3RlbDInLCAndGVsdSddLFxuICBUaWZpbmFnaDogJ3RmbmcnLFxuICBUYWdhbG9nOiAndGdsZycsXG4gIFRoYWFuYTogJ3RoYWEnLFxuICBUaGFpOiAndGhhaScsXG4gIFRpYmV0YW46ICd0aWJ0JyxcbiAgVGlyaHV0YTogJ3RpcmgnLFxuICBVZ2FyaXRpYzogJ3VnYXInLFxuICBWYWk6ICd2YWkgJyxcbiAgV2FyYW5nX0NpdGk6ICd3YXJhJyxcbiAgT2xkX1BlcnNpYW46ICd4cGVvJyxcbiAgQ3VuZWlmb3JtOiAneHN1eCcsXG4gIFlpOiAneWkgICcsXG4gIEluaGVyaXRlZDogJ3ppbmgnLFxuICBDb21tb246ICd6eXl5JyxcbiAgVW5rbm93bjogJ3p6enonXG59O1xuXG5jb25zdCBPUEVOVFlQRV9TQ1JJUFRTID0ge307XG5mb3IgKGxldCBzY3JpcHQgaW4gVU5JQ09ERV9TQ1JJUFRTKSB7XG4gIGxldCB0YWcgPSBVTklDT0RFX1NDUklQVFNbc2NyaXB0XTtcbiAgaWYgKEFycmF5LmlzQXJyYXkodGFnKSkge1xuICAgIGZvciAobGV0IHQgb2YgdGFnKSB7XG4gICAgICBPUEVOVFlQRV9TQ1JJUFRTW3RdID0gc2NyaXB0O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBPUEVOVFlQRV9TQ1JJUFRTW3RhZ10gPSBzY3JpcHQ7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb21Vbmljb2RlKHNjcmlwdCkge1xuICByZXR1cm4gVU5JQ09ERV9TQ1JJUFRTW3NjcmlwdF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tT3BlblR5cGUodGFnKSB7XG4gIHJldHVybiBPUEVOVFlQRV9TQ1JJUFRTW3RhZ107XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JTdHJpbmcoc3RyaW5nKSB7XG4gIGxldCBsZW4gPSBzdHJpbmcubGVuZ3RoO1xuICBsZXQgaWR4ID0gMDtcbiAgd2hpbGUgKGlkeCA8IGxlbikge1xuICAgIGxldCBjb2RlID0gc3RyaW5nLmNoYXJDb2RlQXQoaWR4KyspO1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhpcyBpcyBhIGhpZ2ggc3Vycm9nYXRlXG4gICAgaWYgKDB4ZDgwMCA8PSBjb2RlICYmIGNvZGUgPD0gMHhkYmZmICYmIGlkeCA8IGxlbikge1xuICAgICAgbGV0IG5leHQgPSBzdHJpbmcuY2hhckNvZGVBdChpZHgpO1xuXG4gICAgICAvLyBDaGVjayBpZiB0aGlzIGlzIGEgbG93IHN1cnJvZ2F0ZVxuICAgICAgaWYgKDB4ZGMwMCA8PSBuZXh0ICYmIG5leHQgPD0gMHhkZmZmKSB7XG4gICAgICAgIGlkeCsrO1xuICAgICAgICBjb2RlID0gKChjb2RlICYgMHgzRkYpIDw8IDEwKSArIChuZXh0ICYgMHgzRkYpICsgMHgxMDAwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgc2NyaXB0ID0gZ2V0U2NyaXB0KGNvZGUpO1xuICAgIGlmIChzY3JpcHQgIT09ICdDb21tb24nICYmIHNjcmlwdCAhPT0gJ0luaGVyaXRlZCcgJiYgc2NyaXB0ICE9PSAnVW5rbm93bicpIHtcbiAgICAgIHJldHVybiBVTklDT0RFX1NDUklQVFNbc2NyaXB0XTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gVU5JQ09ERV9TQ1JJUFRTLlVua25vd247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JDb2RlUG9pbnRzKGNvZGVQb2ludHMpIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2RlUG9pbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgbGV0IGNvZGVQb2ludCA9IGNvZGVQb2ludHNbaV07XG4gICAgbGV0IHNjcmlwdCA9IGdldFNjcmlwdChjb2RlUG9pbnQpO1xuICAgIGlmIChzY3JpcHQgIT09ICdDb21tb24nICYmIHNjcmlwdCAhPT0gJ0luaGVyaXRlZCcgJiYgc2NyaXB0ICE9PSAnVW5rbm93bicpIHtcbiAgICAgIHJldHVybiBVTklDT0RFX1NDUklQVFNbc2NyaXB0XTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gVU5JQ09ERV9TQ1JJUFRTLlVua25vd247XG59XG5cbi8vIFRoZSBzY3JpcHRzIGluIHRoaXMgbWFwIGFyZSB3cml0dGVuIGZyb20gcmlnaHQgdG8gbGVmdFxuY29uc3QgUlRMID0ge1xuICBhcmFiOiB0cnVlLCAgIC8vIEFyYWJpY1xuICBoZWJyOiB0cnVlLCAgIC8vIEhlYnJld1xuICBzeXJjOiB0cnVlLCAgIC8vIFN5cmlhY1xuICB0aGFhOiB0cnVlLCAgIC8vIFRoYWFuYVxuICBjcHJ0OiB0cnVlLCAgIC8vIEN5cHJpb3QgU3lsbGFiYXJ5XG4gIGtoYXI6IHRydWUsICAgLy8gS2hhcm9zdGhpXG4gIHBobng6IHRydWUsICAgLy8gUGhvZW5pY2lhblxuICAnbmtvICc6IHRydWUsIC8vIE4nS29cbiAgbHlkaTogdHJ1ZSwgICAvLyBMeWRpYW5cbiAgYXZzdDogdHJ1ZSwgICAvLyBBdmVzdGFuXG4gIGFybWk6IHRydWUsICAgLy8gSW1wZXJpYWwgQXJhbWFpY1xuICBwaGxpOiB0cnVlLCAgIC8vIEluc2NyaXB0aW9uYWwgUGFobGF2aVxuICBwcnRpOiB0cnVlLCAgIC8vIEluc2NyaXB0aW9uYWwgUGFydGhpYW5cbiAgc2FyYjogdHJ1ZSwgICAvLyBPbGQgU291dGggQXJhYmlhblxuICBvcmtoOiB0cnVlLCAgIC8vIE9sZCBUdXJraWMsIE9ya2hvbiBSdW5pY1xuICBzYW1yOiB0cnVlLCAgIC8vIFNhbWFyaXRhblxuICBtYW5kOiB0cnVlLCAgIC8vIE1hbmRhaWMsIE1hbmRhZWFuXG4gIG1lcmM6IHRydWUsICAgLy8gTWVyb2l0aWMgQ3Vyc2l2ZVxuICBtZXJvOiB0cnVlLCAgIC8vIE1lcm9pdGljIEhpZXJvZ2x5cGhzXG5cbiAgLy8gVW5pY29kZSA3LjAgKG5vdCBsaXN0ZWQgb24gaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3R5cG9ncmFwaHkvb3RzcGVjL3NjcmlwdHRhZ3MuaHRtKVxuICBtYW5pOiB0cnVlLCAgIC8vIE1hbmljaGFlYW5cbiAgbWVuZDogdHJ1ZSwgICAvLyBNZW5kZSBLaWtha3VpXG4gIG5iYXQ6IHRydWUsICAgLy8gTmFiYXRhZWFuXG4gIG5hcmI6IHRydWUsICAgLy8gT2xkIE5vcnRoIEFyYWJpYW5cbiAgcGFsbTogdHJ1ZSwgICAvLyBQYWxteXJlbmVcbiAgcGhscDogdHJ1ZSAgICAvLyBQc2FsdGVyIFBhaGxhdmlcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBkaXJlY3Rpb24oc2NyaXB0KSB7XG4gIGlmIChSVExbc2NyaXB0XSkge1xuICAgIHJldHVybiAncnRsJztcbiAgfVxuXG4gIHJldHVybiAnbHRyJztcbn1cbiIsICIvKipcbiAqIFJlcHJlc2VudHMgcG9zaXRpb25pbmcgaW5mb3JtYXRpb24gZm9yIGEgZ2x5cGggaW4gYSBHbHlwaFJ1bi5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgR2x5cGhQb3NpdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHhBZHZhbmNlID0gMCwgeUFkdmFuY2UgPSAwLCB4T2Zmc2V0ID0gMCwgeU9mZnNldCA9IDApIHtcbiAgICAvKipcbiAgICAgKiBUaGUgYW1vdW50IHRvIG1vdmUgdGhlIHZpcnR1YWwgcGVuIGluIHRoZSBYIGRpcmVjdGlvbiBhZnRlciByZW5kZXJpbmcgdGhpcyBnbHlwaC5cbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgICAqL1xuICAgIHRoaXMueEFkdmFuY2UgPSB4QWR2YW5jZTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBhbW91bnQgdG8gbW92ZSB0aGUgdmlydHVhbCBwZW4gaW4gdGhlIFkgZGlyZWN0aW9uIGFmdGVyIHJlbmRlcmluZyB0aGlzIGdseXBoLlxuICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICovXG4gICAgdGhpcy55QWR2YW5jZSA9IHlBZHZhbmNlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG9mZnNldCBmcm9tIHRoZSBwZW4gcG9zaXRpb24gaW4gdGhlIFggZGlyZWN0aW9uIGF0IHdoaWNoIHRvIHJlbmRlciB0aGlzIGdseXBoLlxuICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICovXG4gICAgdGhpcy54T2Zmc2V0ID0geE9mZnNldDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBvZmZzZXQgZnJvbSB0aGUgcGVuIHBvc2l0aW9uIGluIHRoZSBZIGRpcmVjdGlvbiBhdCB3aGljaCB0byByZW5kZXIgdGhpcyBnbHlwaC5cbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgICAqL1xuICAgIHRoaXMueU9mZnNldCA9IHlPZmZzZXQ7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyBBQVRGZWF0dXJlTWFwIGZyb20gJy4vQUFURmVhdHVyZU1hcCc7XG5pbXBvcnQgKiBhcyBTY3JpcHQgZnJvbSAnLi4vbGF5b3V0L1NjcmlwdCc7XG5pbXBvcnQgQUFUTW9yeFByb2Nlc3NvciBmcm9tICcuL0FBVE1vcnhQcm9jZXNzb3InO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBQVRMYXlvdXRFbmdpbmUge1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLm1vcnhQcm9jZXNzb3IgPSBuZXcgQUFUTW9yeFByb2Nlc3Nvcihmb250KTtcbiAgICB0aGlzLmZhbGxiYWNrUG9zaXRpb24gPSBmYWxzZTtcbiAgfVxuXG4gIHN1YnN0aXR1dGUoZ2x5cGhSdW4pIHtcbiAgICAvLyBBQVQgZXhwZWN0cyB0aGUgZ2x5cGhzIHRvIGJlIGluIHZpc3VhbCBvcmRlciBwcmlvciB0byBtb3J4IHByb2Nlc3NpbmcsXG4gICAgLy8gc28gcmV2ZXJzZSB0aGUgZ2x5cGhzIGlmIHRoZSBzY3JpcHQgaXMgcmlnaHQtdG8tbGVmdC5cbiAgICBpZiAoZ2x5cGhSdW4uZGlyZWN0aW9uID09PSAncnRsJykge1xuICAgICAgZ2x5cGhSdW4uZ2x5cGhzLnJldmVyc2UoKTtcbiAgICB9XG5cbiAgICB0aGlzLm1vcnhQcm9jZXNzb3IucHJvY2VzcyhnbHlwaFJ1bi5nbHlwaHMsIEFBVEZlYXR1cmVNYXAubWFwT1RUb0FBVChnbHlwaFJ1bi5mZWF0dXJlcykpO1xuICB9XG5cbiAgZ2V0QXZhaWxhYmxlRmVhdHVyZXMoc2NyaXB0LCBsYW5ndWFnZSkge1xuICAgIHJldHVybiBBQVRGZWF0dXJlTWFwLm1hcEFBVFRvT1QodGhpcy5tb3J4UHJvY2Vzc29yLmdldFN1cHBvcnRlZEZlYXR1cmVzKCkpO1xuICB9XG5cbiAgc3RyaW5nc0ZvckdseXBoKGdpZCkge1xuICAgIGxldCBnbHlwaFN0cmluZ3MgPSB0aGlzLm1vcnhQcm9jZXNzb3IuZ2VuZXJhdGVJbnB1dHMoZ2lkKTtcbiAgICBsZXQgcmVzdWx0ID0gbmV3IFNldDtcblxuICAgIGZvciAobGV0IGdseXBocyBvZiBnbHlwaFN0cmluZ3MpIHtcbiAgICAgIHRoaXMuX2FkZFN0cmluZ3MoZ2x5cGhzLCAwLCByZXN1bHQsICcnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgX2FkZFN0cmluZ3MoZ2x5cGhzLCBpbmRleCwgc3RyaW5ncywgc3RyaW5nKSB7XG4gICAgbGV0IGNvZGVQb2ludHMgPSB0aGlzLmZvbnQuX2NtYXBQcm9jZXNzb3IuY29kZVBvaW50c0ZvckdseXBoKGdseXBoc1tpbmRleF0pO1xuXG4gICAgZm9yIChsZXQgY29kZVBvaW50IG9mIGNvZGVQb2ludHMpIHtcbiAgICAgIGxldCBzID0gc3RyaW5nICsgU3RyaW5nLmZyb21Db2RlUG9pbnQoY29kZVBvaW50KTtcbiAgICAgIGlmIChpbmRleCA8IGdseXBocy5sZW5ndGggLSAxKSB7XG4gICAgICAgIHRoaXMuX2FkZFN0cmluZ3MoZ2x5cGhzLCBpbmRleCArIDEsIHN0cmluZ3MsIHMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3RyaW5ncy5hZGQocyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCAiLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLmFwcGxlLmNvbS9mb250cy9UcnVlVHlwZS1SZWZlcmVuY2UtTWFudWFsL1JNMDkvQXBwZW5kaXhGLmh0bWxcbi8vIGFuZCAvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9Db3JlVGV4dC5mcmFtZXdvcmsvVmVyc2lvbnMvQS9IZWFkZXJzL1NGTlRMYXlvdXRUeXBlcy5oIG9uIGEgTWFjXG5jb25zdCBmZWF0dXJlcyA9IHtcbiAgYWxsVHlwb2dyYXBoaWNGZWF0dXJlczoge1xuICAgIGNvZGU6IDAsXG4gICAgZXhjbHVzaXZlOiBmYWxzZSxcbiAgICBhbGxUeXBlRmVhdHVyZXM6IDBcbiAgfSxcbiAgbGlnYXR1cmVzOiB7XG4gICAgY29kZTogMSxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIHJlcXVpcmVkTGlnYXR1cmVzOiAwLFxuICAgIGNvbW1vbkxpZ2F0dXJlczogMixcbiAgICByYXJlTGlnYXR1cmVzOiA0LFxuICAgIC8vIGxvZ29zOiA2XG4gICAgcmVidXNQaWN0dXJlczogOCxcbiAgICBkaXBodGhvbmdMaWdhdHVyZXM6IDEwLFxuICAgIHNxdWFyZWRMaWdhdHVyZXM6IDEyLFxuICAgIGFiYnJldlNxdWFyZWRMaWdhdHVyZXM6IDE0LFxuICAgIHN5bWJvbExpZ2F0dXJlczogMTYsXG4gICAgY29udGV4dHVhbExpZ2F0dXJlczogMTgsXG4gICAgaGlzdG9yaWNhbExpZ2F0dXJlczogMjBcbiAgfSxcbiAgY3Vyc2l2ZUNvbm5lY3Rpb246IHtcbiAgICBjb2RlOiAyLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICB1bmNvbm5lY3RlZDogMCxcbiAgICBwYXJ0aWFsbHlDb25uZWN0ZWQ6IDEsXG4gICAgY3Vyc2l2ZTogMlxuICB9LFxuICBsZXR0ZXJDYXNlOiB7XG4gICAgY29kZTogMyxcbiAgICBleGNsdXNpdmU6IHRydWVcbiAgfSxcbiAgICAvLyB1cHBlckFuZExvd2VyQ2FzZTogMCAgICAgICAgICAjIGRlcHJlY2F0ZWRcbiAgICAvLyBhbGxDYXBzOiAxICAgICAgICAgICAgICAgICAgICAjIGRlcHJlY2F0ZWRcbiAgICAvLyBhbGxMb3dlckNhc2U6IDIgICAgICAgICAgICAgICAjIGRlcHJlY2F0ZWRcbiAgICAvLyBzbWFsbENhcHM6IDMgICAgICAgICAgICAgICAgICAjIGRlcHJlY2F0ZWRcbiAgICAvLyBpbml0aWFsQ2FwczogNCAgICAgICAgICAgICAgICAjIGRlcHJlY2F0ZWRcbiAgICAvLyBpbml0aWFsQ2Fwc0FuZFNtYWxsQ2FwczogNSAgICAjIGRlcHJlY2F0ZWRcbiAgdmVydGljYWxTdWJzdGl0dXRpb246IHtcbiAgICBjb2RlOiA0LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgc3Vic3RpdHV0ZVZlcnRpY2FsRm9ybXM6IDBcbiAgfSxcbiAgbGluZ3Vpc3RpY1JlYXJyYW5nZW1lbnQ6IHtcbiAgICBjb2RlOiA1LFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgbGluZ3Vpc3RpY1JlYXJyYW5nZW1lbnQ6IDBcbiAgfSxcbiAgbnVtYmVyU3BhY2luZzoge1xuICAgIGNvZGU6IDYsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG1vbm9zcGFjZWROdW1iZXJzOiAwLFxuICAgIHByb3BvcnRpb25hbE51bWJlcnM6IDEsXG4gICAgdGhpcmRXaWR0aE51bWJlcnM6IDIsXG4gICAgcXVhcnRlcldpZHRoTnVtYmVyczogM1xuICB9LFxuICBzbWFydFN3YXNoOiB7XG4gICAgY29kZTogOCxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIHdvcmRJbml0aWFsU3dhc2hlczogMCxcbiAgICB3b3JkRmluYWxTd2FzaGVzOiAyLFxuICAgIC8vIGxpbmVJbml0aWFsU3dhc2hlczogNFxuICAgIC8vIGxpbmVGaW5hbFN3YXNoZXM6IDZcbiAgICBub25GaW5hbFN3YXNoZXM6IDhcbiAgfSxcbiAgZGlhY3JpdGljczoge1xuICAgIGNvZGU6IDksXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIHNob3dEaWFjcml0aWNzOiAwLFxuICAgIGhpZGVEaWFjcml0aWNzOiAxLFxuICAgIGRlY29tcG9zZURpYWNyaXRpY3M6IDJcbiAgfSxcbiAgdmVydGljYWxQb3NpdGlvbjoge1xuICAgIGNvZGU6IDEwLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBub3JtYWxQb3NpdGlvbjogMCxcbiAgICBzdXBlcmlvcnM6IDEsXG4gICAgaW5mZXJpb3JzOiAyLFxuICAgIG9yZGluYWxzOiAzLFxuICAgIHNjaWVudGlmaWNJbmZlcmlvcnM6IDRcbiAgfSxcbiAgZnJhY3Rpb25zOiB7XG4gICAgY29kZTogMTEsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG5vRnJhY3Rpb25zOiAwLFxuICAgIHZlcnRpY2FsRnJhY3Rpb25zOiAxLFxuICAgIGRpYWdvbmFsRnJhY3Rpb25zOiAyXG4gIH0sXG4gIG92ZXJsYXBwaW5nQ2hhcmFjdGVyczoge1xuICAgIGNvZGU6IDEzLFxuICAgIGV4Y2x1c2l2ZTogZmFsc2UsXG4gICAgcHJldmVudE92ZXJsYXA6IDBcbiAgfSxcbiAgdHlwb2dyYXBoaWNFeHRyYXM6IHtcbiAgICBjb2RlOiAxNCxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIC8vIGh5cGhlbnNUb0VtRGFzaDogMFxuICAgIC8vIGh5cGhlblRvRW5EYXNoOiAyXG4gICAgc2xhc2hlZFplcm86IDRcbiAgfSxcbiAgICAvLyBmb3JtSW50ZXJyb2Jhbmc6IDZcbiAgICAvLyBzbWFydFF1b3RlczogOFxuICAgIC8vIHBlcmlvZHNUb0VsbGlwc2lzOiAxMFxuICBtYXRoZW1hdGljYWxFeHRyYXM6IHtcbiAgICBjb2RlOiAxNSxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIC8vIGh5cGhlblRvTWludXM6IDBcbiAgICAvLyBhc3RlcmlzdG9NdWx0aXBseTogMlxuICAgIC8vIHNsYXNoVG9EaXZpZGU6IDRcbiAgICAvLyBpbmVxdWFsaXR5TGlnYXR1cmVzOiA2XG4gICAgLy8gZXhwb25lbnRzOiA4XG4gICAgbWF0aGVtYXRpY2FsR3JlZWs6IDEwXG4gIH0sXG4gIG9ybmFtZW50U2V0czoge1xuICAgIGNvZGU6IDE2LFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBub09ybmFtZW50czogMCxcbiAgICBkaW5nYmF0czogMSxcbiAgICBwaUNoYXJhY3RlcnM6IDIsXG4gICAgZmxldXJvbnM6IDMsXG4gICAgZGVjb3JhdGl2ZUJvcmRlcnM6IDQsXG4gICAgaW50ZXJuYXRpb25hbFN5bWJvbHM6IDUsXG4gICAgbWF0aFN5bWJvbHM6IDZcbiAgfSxcbiAgY2hhcmFjdGVyQWx0ZXJuYXRpdmVzOiB7XG4gICAgY29kZTogMTcsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG5vQWx0ZXJuYXRlczogMFxuICB9LFxuICAgIC8vIHVzZXIgZGVmaW5lZCBvcHRpb25zXG4gIGRlc2lnbkNvbXBsZXhpdHk6IHtcbiAgICBjb2RlOiAxOCxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgZGVzaWduTGV2ZWwxOiAwLFxuICAgIGRlc2lnbkxldmVsMjogMSxcbiAgICBkZXNpZ25MZXZlbDM6IDIsXG4gICAgZGVzaWduTGV2ZWw0OiAzLFxuICAgIGRlc2lnbkxldmVsNTogNFxuICB9LFxuICBzdHlsZU9wdGlvbnM6IHtcbiAgICBjb2RlOiAxOSxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbm9TdHlsZU9wdGlvbnM6IDAsXG4gICAgZGlzcGxheVRleHQ6IDEsXG4gICAgZW5ncmF2ZWRUZXh0OiAyLFxuICAgIGlsbHVtaW5hdGVkQ2FwczogMyxcbiAgICB0aXRsaW5nQ2FwczogNCxcbiAgICB0YWxsQ2FwczogNVxuICB9LFxuICBjaGFyYWN0ZXJTaGFwZToge1xuICAgIGNvZGU6IDIwLFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICB0cmFkaXRpb25hbENoYXJhY3RlcnM6IDAsXG4gICAgc2ltcGxpZmllZENoYXJhY3RlcnM6IDEsXG4gICAgSklTMTk3OENoYXJhY3RlcnM6IDIsXG4gICAgSklTMTk4M0NoYXJhY3RlcnM6IDMsXG4gICAgSklTMTk5MENoYXJhY3RlcnM6IDQsXG4gICAgdHJhZGl0aW9uYWxBbHRPbmU6IDUsXG4gICAgdHJhZGl0aW9uYWxBbHRUd286IDYsXG4gICAgdHJhZGl0aW9uYWxBbHRUaHJlZTogNyxcbiAgICB0cmFkaXRpb25hbEFsdEZvdXI6IDgsXG4gICAgdHJhZGl0aW9uYWxBbHRGaXZlOiA5LFxuICAgIGV4cGVydENoYXJhY3RlcnM6IDEwLFxuICAgIEpJUzIwMDRDaGFyYWN0ZXJzOiAxMSxcbiAgICBob2pvQ2hhcmFjdGVyczogMTIsXG4gICAgTkxDQ2hhcmFjdGVyczogMTMsXG4gICAgdHJhZGl0aW9uYWxOYW1lc0NoYXJhY3RlcnM6IDE0XG4gIH0sXG4gIG51bWJlckNhc2U6IHtcbiAgICBjb2RlOiAyMSxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbG93ZXJDYXNlTnVtYmVyczogMCxcbiAgICB1cHBlckNhc2VOdW1iZXJzOiAxXG4gIH0sXG4gIHRleHRTcGFjaW5nOiB7XG4gICAgY29kZTogMjIsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIHByb3BvcnRpb25hbFRleHQ6IDAsXG4gICAgbW9ub3NwYWNlZFRleHQ6IDEsXG4gICAgaGFsZldpZHRoVGV4dDogMixcbiAgICB0aGlyZFdpZHRoVGV4dDogMyxcbiAgICBxdWFydGVyV2lkdGhUZXh0OiA0LFxuICAgIGFsdFByb3BvcnRpb25hbFRleHQ6IDUsXG4gICAgYWx0SGFsZldpZHRoVGV4dDogNlxuICB9LFxuICB0cmFuc2xpdGVyYXRpb246IHtcbiAgICBjb2RlOiAyMyxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgbm9UcmFuc2xpdGVyYXRpb246IDBcbiAgfSxcbiAgICAvLyBoYW5qYVRvSGFuZ3VsOiAxXG4gICAgLy8gaGlyYWdhbmFUb0thdGFrYW5hOiAyXG4gICAgLy8ga2F0YWthbmFUb0hpcmFnYW5hOiAzXG4gICAgLy8ga2FuYVRvUm9tYW5pemF0aW9uOiA0XG4gICAgLy8gcm9tYW5pemF0aW9uVG9IaXJhZ2FuYTogNVxuICAgIC8vIHJvbWFuaXphdGlvblRvS2F0YWthbmE6IDZcbiAgICAvLyBoYW5qYVRvSGFuZ3VsQWx0T25lOiA3XG4gICAgLy8gaGFuamFUb0hhbmd1bEFsdFR3bzogOFxuICAgIC8vIGhhbmphVG9IYW5ndWxBbHRUaHJlZTogOVxuICBhbm5vdGF0aW9uOiB7XG4gICAgY29kZTogMjQsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG5vQW5ub3RhdGlvbjogMCxcbiAgICBib3hBbm5vdGF0aW9uOiAxLFxuICAgIHJvdW5kZWRCb3hBbm5vdGF0aW9uOiAyLFxuICAgIGNpcmNsZUFubm90YXRpb246IDMsXG4gICAgaW52ZXJ0ZWRDaXJjbGVBbm5vdGF0aW9uOiA0LFxuICAgIHBhcmVudGhlc2lzQW5ub3RhdGlvbjogNSxcbiAgICBwZXJpb2RBbm5vdGF0aW9uOiA2LFxuICAgIHJvbWFuTnVtZXJhbEFubm90YXRpb246IDcsXG4gICAgZGlhbW9uZEFubm90YXRpb246IDgsXG4gICAgaW52ZXJ0ZWRCb3hBbm5vdGF0aW9uOiA5LFxuICAgIGludmVydGVkUm91bmRlZEJveEFubm90YXRpb246IDEwXG4gIH0sXG4gIGthbmFTcGFjaW5nOiB7XG4gICAgY29kZTogMjUsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIGZ1bGxXaWR0aEthbmE6IDAsXG4gICAgcHJvcG9ydGlvbmFsS2FuYTogMVxuICB9LFxuICBpZGVvZ3JhcGhpY1NwYWNpbmc6IHtcbiAgICBjb2RlOiAyNixcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgZnVsbFdpZHRoSWRlb2dyYXBoczogMCxcbiAgICBwcm9wb3J0aW9uYWxJZGVvZ3JhcGhzOiAxLFxuICAgIGhhbGZXaWR0aElkZW9ncmFwaHM6IDJcbiAgfSxcbiAgdW5pY29kZURlY29tcG9zaXRpb246IHtcbiAgICBjb2RlOiAyNyxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIGNhbm9uaWNhbENvbXBvc2l0aW9uOiAwLFxuICAgIGNvbXBhdGliaWxpdHlDb21wb3NpdGlvbjogMixcbiAgICB0cmFuc2NvZGluZ0NvbXBvc2l0aW9uOiA0XG4gIH0sXG4gIHJ1YnlLYW5hOiB7XG4gICAgY29kZTogMjgsXG4gICAgZXhjbHVzaXZlOiBmYWxzZSxcbiAgICAvLyBub1J1YnlLYW5hOiAwICAgICAjIGRlcHJlY2F0ZWQgLSB1c2UgcnVieUthbmFPZmYgaW5zdGVhZFxuICAgIC8vIHJ1YnlLYW5hOiAxICAgICAjIGRlcHJlY2F0ZWQgLSB1c2UgcnVieUthbmFPbiBpbnN0ZWFkXG4gICAgcnVieUthbmE6IDJcbiAgfSxcbiAgQ0pLU3ltYm9sQWx0ZXJuYXRpdmVzOiB7XG4gICAgY29kZTogMjksXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG5vQ0pLU3ltYm9sQWx0ZXJuYXRpdmVzOiAwLFxuICAgIENKS1N5bWJvbEFsdE9uZTogMSxcbiAgICBDSktTeW1ib2xBbHRUd286IDIsXG4gICAgQ0pLU3ltYm9sQWx0VGhyZWU6IDMsXG4gICAgQ0pLU3ltYm9sQWx0Rm91cjogNCxcbiAgICBDSktTeW1ib2xBbHRGaXZlOiA1XG4gIH0sXG4gIGlkZW9ncmFwaGljQWx0ZXJuYXRpdmVzOiB7XG4gICAgY29kZTogMzAsXG4gICAgZXhjbHVzaXZlOiB0cnVlLFxuICAgIG5vSWRlb2dyYXBoaWNBbHRlcm5hdGl2ZXM6IDAsXG4gICAgaWRlb2dyYXBoaWNBbHRPbmU6IDEsXG4gICAgaWRlb2dyYXBoaWNBbHRUd286IDIsXG4gICAgaWRlb2dyYXBoaWNBbHRUaHJlZTogMyxcbiAgICBpZGVvZ3JhcGhpY0FsdEZvdXI6IDQsXG4gICAgaWRlb2dyYXBoaWNBbHRGaXZlOiA1XG4gIH0sXG4gIENKS1ZlcnRpY2FsUm9tYW5QbGFjZW1lbnQ6IHtcbiAgICBjb2RlOiAzMSxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgQ0pLVmVydGljYWxSb21hbkNlbnRlcmVkOiAwLFxuICAgIENKS1ZlcnRpY2FsUm9tYW5IQmFzZWxpbmU6IDFcbiAgfSxcbiAgaXRhbGljQ0pLUm9tYW46IHtcbiAgICBjb2RlOiAzMixcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIC8vIG5vQ0pLSXRhbGljUm9tYW46IDAgICAgICMgZGVwcmVjYXRlZCAtIHVzZSBDSktJdGFsaWNSb21hbk9mZiBpbnN0ZWFkXG4gICAgLy8gQ0pLSXRhbGljUm9tYW46IDEgICAgICMgZGVwcmVjYXRlZCAtIHVzZSBDSktJdGFsaWNSb21hbk9uIGluc3RlYWRcbiAgICBDSktJdGFsaWNSb21hbjogMlxuICB9LFxuICBjYXNlU2Vuc2l0aXZlTGF5b3V0OiB7XG4gICAgY29kZTogMzMsXG4gICAgZXhjbHVzaXZlOiBmYWxzZSxcbiAgICBjYXNlU2Vuc2l0aXZlTGF5b3V0OiAwLFxuICAgIGNhc2VTZW5zaXRpdmVTcGFjaW5nOiAyXG4gIH0sXG4gIGFsdGVybmF0ZUthbmE6IHtcbiAgICBjb2RlOiAzNCxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIGFsdGVybmF0ZUhvcml6S2FuYTogMCxcbiAgICBhbHRlcm5hdGVWZXJ0S2FuYTogMlxuICB9LFxuICBzdHlsaXN0aWNBbHRlcm5hdGl2ZXM6IHtcbiAgICBjb2RlOiAzNSxcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIG5vU3R5bGlzdGljQWx0ZXJuYXRlczogMCxcbiAgICBzdHlsaXN0aWNBbHRPbmU6IDIsXG4gICAgc3R5bGlzdGljQWx0VHdvOiA0LFxuICAgIHN0eWxpc3RpY0FsdFRocmVlOiA2LFxuICAgIHN0eWxpc3RpY0FsdEZvdXI6IDgsXG4gICAgc3R5bGlzdGljQWx0Rml2ZTogMTAsXG4gICAgc3R5bGlzdGljQWx0U2l4OiAxMixcbiAgICBzdHlsaXN0aWNBbHRTZXZlbjogMTQsXG4gICAgc3R5bGlzdGljQWx0RWlnaHQ6IDE2LFxuICAgIHN0eWxpc3RpY0FsdE5pbmU6IDE4LFxuICAgIHN0eWxpc3RpY0FsdFRlbjogMjAsXG4gICAgc3R5bGlzdGljQWx0RWxldmVuOiAyMixcbiAgICBzdHlsaXN0aWNBbHRUd2VsdmU6IDI0LFxuICAgIHN0eWxpc3RpY0FsdFRoaXJ0ZWVuOiAyNixcbiAgICBzdHlsaXN0aWNBbHRGb3VydGVlbjogMjgsXG4gICAgc3R5bGlzdGljQWx0RmlmdGVlbjogMzAsXG4gICAgc3R5bGlzdGljQWx0U2l4dGVlbjogMzIsXG4gICAgc3R5bGlzdGljQWx0U2V2ZW50ZWVuOiAzNCxcbiAgICBzdHlsaXN0aWNBbHRFaWdodGVlbjogMzYsXG4gICAgc3R5bGlzdGljQWx0TmluZXRlZW46IDM4LFxuICAgIHN0eWxpc3RpY0FsdFR3ZW50eTogNDBcbiAgfSxcbiAgY29udGV4dHVhbEFsdGVybmF0ZXM6IHtcbiAgICBjb2RlOiAzNixcbiAgICBleGNsdXNpdmU6IGZhbHNlLFxuICAgIGNvbnRleHR1YWxBbHRlcm5hdGVzOiAwLFxuICAgIHN3YXNoQWx0ZXJuYXRlczogMixcbiAgICBjb250ZXh0dWFsU3dhc2hBbHRlcm5hdGVzOiA0XG4gIH0sXG4gIGxvd2VyQ2FzZToge1xuICAgIGNvZGU6IDM3LFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBkZWZhdWx0TG93ZXJDYXNlOiAwLFxuICAgIGxvd2VyQ2FzZVNtYWxsQ2FwczogMSxcbiAgICBsb3dlckNhc2VQZXRpdGVDYXBzOiAyXG4gIH0sXG4gIHVwcGVyQ2FzZToge1xuICAgIGNvZGU6IDM4LFxuICAgIGV4Y2x1c2l2ZTogdHJ1ZSxcbiAgICBkZWZhdWx0VXBwZXJDYXNlOiAwLFxuICAgIHVwcGVyQ2FzZVNtYWxsQ2FwczogMSxcbiAgICB1cHBlckNhc2VQZXRpdGVDYXBzOiAyXG4gIH0sXG4gIGxhbmd1YWdlVGFnOiB7IC8vIGluZGljZXMgaW50byBsdGFnIHRhYmxlXG4gICAgY29kZTogMzksXG4gICAgZXhjbHVzaXZlOiB0cnVlXG4gIH0sXG4gIENKS1JvbWFuU3BhY2luZzoge1xuICAgIGNvZGU6IDEwMyxcbiAgICBleGNsdXNpdmU6IHRydWUsXG4gICAgaGFsZldpZHRoQ0pLUm9tYW46IDAsXG4gICAgcHJvcG9ydGlvbmFsQ0pLUm9tYW46IDEsXG4gICAgZGVmYXVsdENKS1JvbWFuOiAyLFxuICAgIGZ1bGxXaWR0aENKS1JvbWFuOiAzXG4gIH1cbn07XG5cbmNvbnN0IGZlYXR1cmUgPSAobmFtZSwgc2VsZWN0b3IpID0+IFtmZWF0dXJlc1tuYW1lXS5jb2RlLCBmZWF0dXJlc1tuYW1lXVtzZWxlY3Rvcl1dO1xuXG5jb25zdCBPVE1hcHBpbmcgPSB7XG4gIHJsaWc6IGZlYXR1cmUoJ2xpZ2F0dXJlcycsICdyZXF1aXJlZExpZ2F0dXJlcycpLFxuICBjbGlnOiBmZWF0dXJlKCdsaWdhdHVyZXMnLCAnY29udGV4dHVhbExpZ2F0dXJlcycpLFxuICBkbGlnOiBmZWF0dXJlKCdsaWdhdHVyZXMnLCAncmFyZUxpZ2F0dXJlcycpLFxuICBobGlnOiBmZWF0dXJlKCdsaWdhdHVyZXMnLCAnaGlzdG9yaWNhbExpZ2F0dXJlcycpLFxuICBsaWdhOiBmZWF0dXJlKCdsaWdhdHVyZXMnLCAnY29tbW9uTGlnYXR1cmVzJyksXG4gIGhpc3Q6IGZlYXR1cmUoJ2xpZ2F0dXJlcycsICdoaXN0b3JpY2FsTGlnYXR1cmVzJyksIC8vID8/XG5cbiAgc21jcDogZmVhdHVyZSgnbG93ZXJDYXNlJywgJ2xvd2VyQ2FzZVNtYWxsQ2FwcycpLFxuICBwY2FwOiBmZWF0dXJlKCdsb3dlckNhc2UnLCAnbG93ZXJDYXNlUGV0aXRlQ2FwcycpLFxuXG4gIGZyYWM6IGZlYXR1cmUoJ2ZyYWN0aW9ucycsICdkaWFnb25hbEZyYWN0aW9ucycpLFxuICBkbm9tOiBmZWF0dXJlKCdmcmFjdGlvbnMnLCAnZGlhZ29uYWxGcmFjdGlvbnMnKSwgLy8gPz9cbiAgbnVtcjogZmVhdHVyZSgnZnJhY3Rpb25zJywgJ2RpYWdvbmFsRnJhY3Rpb25zJyksIC8vID8/XG4gIGFmcmM6IGZlYXR1cmUoJ2ZyYWN0aW9ucycsICd2ZXJ0aWNhbEZyYWN0aW9ucycpLFxuICAvLyBhYWx0XG4gIC8vIGFidmYsIGFidm0sIGFidnMsIGFraG4sIGJsd2YsIGJsd20sIGJsd3MsIGNmYXIsIGNqY3QsIGNwc3AsIGZhbHQsIGlzb2wsIGphbHQsIGxqbW8sIG1zZXQ/XG4gIC8vIGx0cmEsIGx0cm0sIG51a3QsIHByZWYsIHByZXMsIHBzdGYsIHBzdHMsIHJhbmQsIHJrcmYsIHJwaGYsIHJ0bGEsIHJ0bG0sIHNpemUsIHRqbW8sIHRudW0/XG4gIC8vIHVuaWMsIHZhdHUsIHZoYWwsIHZqbW8sIHZwYWwsIHZydDJcbiAgLy8gZGlzdCAtPiB0cmFrIHRhYmxlP1xuICAvLyBrZXJuLCB2a3JuIC0+IGtlcm4gdGFibGVcbiAgLy8gbGZiZCArIG9wYmQgKyBydGJkIC0+IG9wYmQgdGFibGU/XG4gIC8vIG1hcmssIG1rbWsgLT4gYWNudCB0YWJsZT9cbiAgLy8gbG9jbCAtPiBsYW5ndWFnZVRhZyArIGx0YWcgdGFibGVcblxuICBjYXNlOiBmZWF0dXJlKCdjYXNlU2Vuc2l0aXZlTGF5b3V0JywgJ2Nhc2VTZW5zaXRpdmVMYXlvdXQnKSwgLy8gYWxzbyBjYXNlU2Vuc2l0aXZlU3BhY2luZ1xuICBjY21wOiBmZWF0dXJlKCd1bmljb2RlRGVjb21wb3NpdGlvbicsICdjYW5vbmljYWxDb21wb3NpdGlvbicpLCAvLyBjb21wYXRpYmlsaXR5Q29tcG9zaXRpb24/XG4gIGNwY3Q6IGZlYXR1cmUoJ0NKS1ZlcnRpY2FsUm9tYW5QbGFjZW1lbnQnLCAnQ0pLVmVydGljYWxSb21hbkNlbnRlcmVkJyksIC8vIGd1ZXNzLi4uLCBwcm9iYWJseSBub3QgZ2l2ZW4gYmVsb3dcbiAgdmFsdDogZmVhdHVyZSgnQ0pLVmVydGljYWxSb21hblBsYWNlbWVudCcsICdDSktWZXJ0aWNhbFJvbWFuQ2VudGVyZWQnKSxcbiAgc3dzaDogZmVhdHVyZSgnY29udGV4dHVhbEFsdGVybmF0ZXMnLCAnc3dhc2hBbHRlcm5hdGVzJyksXG4gIGNzd2g6IGZlYXR1cmUoJ2NvbnRleHR1YWxBbHRlcm5hdGVzJywgJ2NvbnRleHR1YWxTd2FzaEFsdGVybmF0ZXMnKSxcbiAgY3VyczogZmVhdHVyZSgnY3Vyc2l2ZUNvbm5lY3Rpb24nLCAnY3Vyc2l2ZScpLCAvLyA/P1xuICBjMnBjOiBmZWF0dXJlKCd1cHBlckNhc2UnLCAndXBwZXJDYXNlUGV0aXRlQ2FwcycpLFxuICBjMnNjOiBmZWF0dXJlKCd1cHBlckNhc2UnLCAndXBwZXJDYXNlU21hbGxDYXBzJyksXG5cbiAgaW5pdDogZmVhdHVyZSgnc21hcnRTd2FzaCcsICd3b3JkSW5pdGlhbFN3YXNoZXMnKSwgLy8gPz9cbiAgZmluMjogZmVhdHVyZSgnc21hcnRTd2FzaCcsICd3b3JkRmluYWxTd2FzaGVzJyksIC8vID8/XG4gIG1lZGk6IGZlYXR1cmUoJ3NtYXJ0U3dhc2gnLCAnbm9uRmluYWxTd2FzaGVzJyksIC8vID8/XG4gIG1lZDI6IGZlYXR1cmUoJ3NtYXJ0U3dhc2gnLCAnbm9uRmluYWxTd2FzaGVzJyksIC8vID8/XG4gIGZpbjM6IGZlYXR1cmUoJ3NtYXJ0U3dhc2gnLCAnd29yZEZpbmFsU3dhc2hlcycpLCAvLyA/P1xuICBmaW5hOiBmZWF0dXJlKCdzbWFydFN3YXNoJywgJ3dvcmRGaW5hbFN3YXNoZXMnKSwgLy8gPz9cblxuICBwa25hOiBmZWF0dXJlKCdrYW5hU3BhY2luZycsICdwcm9wb3J0aW9uYWxLYW5hJyksXG4gIGhhbGY6IGZlYXR1cmUoJ3RleHRTcGFjaW5nJywgJ2hhbGZXaWR0aFRleHQnKSwgLy8gYWxzbyBIYWxmV2lkdGhDSktSb21hbiwgSGFsZldpZHRoSWRlb2dyYXBocz9cbiAgaGFsdDogZmVhdHVyZSgndGV4dFNwYWNpbmcnLCAnYWx0SGFsZldpZHRoVGV4dCcpLFxuXG4gIGhrbmE6IGZlYXR1cmUoJ2FsdGVybmF0ZUthbmEnLCAnYWx0ZXJuYXRlSG9yaXpLYW5hJyksXG4gIHZrbmE6IGZlYXR1cmUoJ2FsdGVybmF0ZUthbmEnLCAnYWx0ZXJuYXRlVmVydEthbmEnKSxcbiAgLy8gaG5nbDogZmVhdHVyZSAndHJhbnNsaXRlcmF0aW9uJywgJ2hhbmphVG9IYW5ndWxTZWxlY3RvcicgIyBkZXByZWNhdGVkXG5cbiAgaXRhbDogZmVhdHVyZSgnaXRhbGljQ0pLUm9tYW4nLCAnQ0pLSXRhbGljUm9tYW4nKSxcbiAgbG51bTogZmVhdHVyZSgnbnVtYmVyQ2FzZScsICd1cHBlckNhc2VOdW1iZXJzJyksXG4gIG9udW06IGZlYXR1cmUoJ251bWJlckNhc2UnLCAnbG93ZXJDYXNlTnVtYmVycycpLFxuICBtZ3JrOiBmZWF0dXJlKCdtYXRoZW1hdGljYWxFeHRyYXMnLCAnbWF0aGVtYXRpY2FsR3JlZWsnKSxcblxuICAvLyBuYWx0OiBub3QgZW5vdWdoIGluZm8uIHdoYXQgdHlwZSBvZiBhbm5vdGF0aW9uP1xuICAvLyBvcm5tOiBkaXR0bywgd2hpY2ggb3JuYW1lbnQgc3R5bGU/XG5cbiAgY2FsdDogZmVhdHVyZSgnY29udGV4dHVhbEFsdGVybmF0ZXMnLCAnY29udGV4dHVhbEFsdGVybmF0ZXMnKSwgLy8gb3IgbW9yZT9cbiAgdnJ0MjogZmVhdHVyZSgndmVydGljYWxTdWJzdGl0dXRpb24nLCAnc3Vic3RpdHV0ZVZlcnRpY2FsRm9ybXMnKSwgLy8gb2guLi4gYmVsb3c/XG4gIHZlcnQ6IGZlYXR1cmUoJ3ZlcnRpY2FsU3Vic3RpdHV0aW9uJywgJ3N1YnN0aXR1dGVWZXJ0aWNhbEZvcm1zJyksXG4gIHRudW06IGZlYXR1cmUoJ251bWJlclNwYWNpbmcnLCAnbW9ub3NwYWNlZE51bWJlcnMnKSxcbiAgcG51bTogZmVhdHVyZSgnbnVtYmVyU3BhY2luZycsICdwcm9wb3J0aW9uYWxOdW1iZXJzJyksXG4gIHN1cHM6IGZlYXR1cmUoJ3ZlcnRpY2FsUG9zaXRpb24nLCAnc3VwZXJpb3JzJyksXG4gIHN1YnM6IGZlYXR1cmUoJ3ZlcnRpY2FsUG9zaXRpb24nLCAnaW5mZXJpb3JzJyksXG4gIG9yZG46IGZlYXR1cmUoJ3ZlcnRpY2FsUG9zaXRpb24nLCAnb3JkaW5hbHMnKSxcbiAgcHdpZDogZmVhdHVyZSgndGV4dFNwYWNpbmcnLCAncHJvcG9ydGlvbmFsVGV4dCcpLFxuICBod2lkOiBmZWF0dXJlKCd0ZXh0U3BhY2luZycsICdoYWxmV2lkdGhUZXh0JyksXG4gIHF3aWQ6IGZlYXR1cmUoJ3RleHRTcGFjaW5nJywgJ3F1YXJ0ZXJXaWR0aFRleHQnKSwgLy8gYWxzbyBRdWFydGVyV2lkdGhOdW1iZXJzP1xuICB0d2lkOiBmZWF0dXJlKCd0ZXh0U3BhY2luZycsICd0aGlyZFdpZHRoVGV4dCcpLCAvLyBhbHNvIFRoaXJkV2lkdGhOdW1iZXJzP1xuICBmd2lkOiBmZWF0dXJlKCd0ZXh0U3BhY2luZycsICdwcm9wb3J0aW9uYWxUZXh0JyksIC8vPz9cbiAgcGFsdDogZmVhdHVyZSgndGV4dFNwYWNpbmcnLCAnYWx0UHJvcG9ydGlvbmFsVGV4dCcpLFxuICB0cmFkOiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICd0cmFkaXRpb25hbENoYXJhY3RlcnMnKSxcbiAgc21wbDogZmVhdHVyZSgnY2hhcmFjdGVyU2hhcGUnLCAnc2ltcGxpZmllZENoYXJhY3RlcnMnKSxcbiAganA3ODogZmVhdHVyZSgnY2hhcmFjdGVyU2hhcGUnLCAnSklTMTk3OENoYXJhY3RlcnMnKSxcbiAganA4MzogZmVhdHVyZSgnY2hhcmFjdGVyU2hhcGUnLCAnSklTMTk4M0NoYXJhY3RlcnMnKSxcbiAganA5MDogZmVhdHVyZSgnY2hhcmFjdGVyU2hhcGUnLCAnSklTMTk5MENoYXJhY3RlcnMnKSxcbiAganAwNDogZmVhdHVyZSgnY2hhcmFjdGVyU2hhcGUnLCAnSklTMjAwNENoYXJhY3RlcnMnKSxcbiAgZXhwdDogZmVhdHVyZSgnY2hhcmFjdGVyU2hhcGUnLCAnZXhwZXJ0Q2hhcmFjdGVycycpLFxuICBob2pvOiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdob2pvQ2hhcmFjdGVycycpLFxuICBubGNrOiBmZWF0dXJlKCdjaGFyYWN0ZXJTaGFwZScsICdOTENDaGFyYWN0ZXJzJyksXG4gIHRuYW06IGZlYXR1cmUoJ2NoYXJhY3RlclNoYXBlJywgJ3RyYWRpdGlvbmFsTmFtZXNDaGFyYWN0ZXJzJyksXG4gIHJ1Ynk6IGZlYXR1cmUoJ3J1YnlLYW5hJywgJ3J1YnlLYW5hJyksXG4gIHRpdGw6IGZlYXR1cmUoJ3N0eWxlT3B0aW9ucycsICd0aXRsaW5nQ2FwcycpLFxuICB6ZXJvOiBmZWF0dXJlKCd0eXBvZ3JhcGhpY0V4dHJhcycsICdzbGFzaGVkWmVybycpLFxuXG4gIHNzMDE6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRPbmUnKSxcbiAgc3MwMjogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdFR3bycpLFxuICBzczAzOiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0VGhyZWUnKSxcbiAgc3MwNDogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdEZvdXInKSxcbiAgc3MwNTogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdEZpdmUnKSxcbiAgc3MwNjogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdFNpeCcpLFxuICBzczA3OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0U2V2ZW4nKSxcbiAgc3MwODogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdEVpZ2h0JyksXG4gIHNzMDk6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHROaW5lJyksXG4gIHNzMTA6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRUZW4nKSxcbiAgc3MxMTogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdEVsZXZlbicpLFxuICBzczEyOiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0VHdlbHZlJyksXG4gIHNzMTM6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRUaGlydGVlbicpLFxuICBzczE0OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0Rm91cnRlZW4nKSxcbiAgc3MxNTogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdEZpZnRlZW4nKSxcbiAgc3MxNjogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdFNpeHRlZW4nKSxcbiAgc3MxNzogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdFNldmVudGVlbicpLFxuICBzczE4OiBmZWF0dXJlKCdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0RWlnaHRlZW4nKSxcbiAgc3MxOTogZmVhdHVyZSgnc3R5bGlzdGljQWx0ZXJuYXRpdmVzJywgJ3N0eWxpc3RpY0FsdE5pbmV0ZWVuJyksXG4gIHNzMjA6IGZlYXR1cmUoJ3N0eWxpc3RpY0FsdGVybmF0aXZlcycsICdzdHlsaXN0aWNBbHRUd2VudHknKVxufTtcblxuICAvLyBzYWx0OiBmZWF0dXJlICdzdHlsaXN0aWNBbHRlcm5hdGl2ZXMnLCAnc3R5bGlzdGljQWx0T25lJyAjIGhtbSwgd2hpY2ggb25lIHRvIGNob29zZVxuXG4vLyBBZGQgY3YwMS1jdjk5IGZlYXR1cmVzXG5mb3IgKGxldCBpID0gMTsgaSA8PSA5OTsgaSsrKSB7XG4gIE9UTWFwcGluZ1tgY3Yke2AwMCR7aX1gLnNsaWNlKC0yKX1gXSA9IFtmZWF0dXJlcy5jaGFyYWN0ZXJBbHRlcm5hdGl2ZXMuY29kZSwgaV07XG59XG5cbi8vIGNyZWF0ZSBpbnZlcnNlIG1hcHBpbmdcbmxldCBBQVRNYXBwaW5nID0ge307XG5mb3IgKGxldCBvdCBpbiBPVE1hcHBpbmcpIHtcbiAgbGV0IGFhdCA9IE9UTWFwcGluZ1tvdF07XG4gIGlmIChBQVRNYXBwaW5nW2FhdFswXV0gPT0gbnVsbCkge1xuICAgIEFBVE1hcHBpbmdbYWF0WzBdXSA9IHt9O1xuICB9XG5cbiAgQUFUTWFwcGluZ1thYXRbMF1dW2FhdFsxXV0gPSBvdDtcbn1cblxuLy8gTWFwcyBhbiBhcnJheSBvZiBPcGVuVHlwZSBmZWF0dXJlcyB0byBBQVQgZmVhdHVyZXNcbi8vIGluIHRoZSBmb3JtIG9mIHtmZWF0dXJlVHlwZTp7ZmVhdHVyZVNldHRpbmc6dHJ1ZX19XG5leHBvcnQgZnVuY3Rpb24gbWFwT1RUb0FBVChmZWF0dXJlcykge1xuICBsZXQgcmVzID0ge307XG4gIGZvciAobGV0IGsgaW4gZmVhdHVyZXMpIHtcbiAgICBsZXQgcjtcbiAgICBpZiAociA9IE9UTWFwcGluZ1trXSkge1xuICAgICAgaWYgKHJlc1tyWzBdXSA9PSBudWxsKSB7XG4gICAgICAgIHJlc1tyWzBdXSA9IHt9O1xuICAgICAgfVxuXG4gICAgICByZXNbclswXV1bclsxXV0gPSBmZWF0dXJlc1trXTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzO1xufVxuXG4vLyBNYXBzIHN0cmluZ3MgaW4gYSBbZmVhdHVyZVR5cGUsIGZlYXR1cmVTZXR0aW5nXVxuLy8gdG8gdGhlaXIgZXF1aXZhbGVudCBudW1iZXIgY29kZXNcbmZ1bmN0aW9uIG1hcEZlYXR1cmVTdHJpbmdzKGYpIHtcbiAgbGV0IFt0eXBlLCBzZXR0aW5nXSA9IGY7XG4gIGlmIChpc05hTih0eXBlKSkge1xuICAgIHZhciB0eXBlQ29kZSA9IGZlYXR1cmVzW3R5cGVdICYmIGZlYXR1cmVzW3R5cGVdLmNvZGU7XG4gIH0gZWxzZSB7XG4gICAgdmFyIHR5cGVDb2RlID0gdHlwZTtcbiAgfVxuXG4gIGlmIChpc05hTihzZXR0aW5nKSkge1xuICAgIHZhciBzZXR0aW5nQ29kZSA9IGZlYXR1cmVzW3R5cGVdICYmIGZlYXR1cmVzW3R5cGVdW3NldHRpbmddO1xuICB9IGVsc2Uge1xuICAgIHZhciBzZXR0aW5nQ29kZSA9IHNldHRpbmc7XG4gIH1cblxuICByZXR1cm4gW3R5cGVDb2RlLCBzZXR0aW5nQ29kZV07XG59XG5cbi8vIE1hcHMgQUFUIGZlYXR1cmVzIHRvIGFuIGFycmF5IG9mIE9wZW5UeXBlIGZlYXR1cmVzXG4vLyBTdXBwb3J0cyBib3RoIGFycmF5cyBpbiB0aGUgZm9ybSBvZiBbW2ZlYXR1cmVUeXBlLCBmZWF0dXJlU2V0dGluZ11dXG4vLyBhbmQgb2JqZWN0cyBpbiB0aGUgZm9ybSBvZiB7ZmVhdHVyZVR5cGU6e2ZlYXR1cmVTZXR0aW5nOnRydWV9fVxuLy8gZmVhdHVyZVR5cGVzIGFuZCBmZWF0dXJlU2V0dGluZ3MgY2FuIGJlIGVpdGhlciBzdHJpbmdzIG9yIG51bWJlciBjb2Rlc1xuZXhwb3J0IGZ1bmN0aW9uIG1hcEFBVFRvT1QoZmVhdHVyZXMpIHtcbiAgbGV0IHJlcyA9IHt9O1xuICBpZiAoQXJyYXkuaXNBcnJheShmZWF0dXJlcykpIHtcbiAgICBmb3IgKGxldCBrID0gMDsgayA8IGZlYXR1cmVzLmxlbmd0aDsgaysrKSB7XG4gICAgICBsZXQgcjtcbiAgICAgIGxldCBmID0gbWFwRmVhdHVyZVN0cmluZ3MoZmVhdHVyZXNba10pO1xuICAgICAgaWYgKHIgPSBBQVRNYXBwaW5nW2ZbMF1dICYmIEFBVE1hcHBpbmdbZlswXV1bZlsxXV0pIHtcbiAgICAgICAgcmVzW3JdID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfSBlbHNlIGlmICh0eXBlb2YgZmVhdHVyZXMgPT09ICdvYmplY3QnKSB7XG4gICAgZm9yIChsZXQgdHlwZSBpbiBmZWF0dXJlcykge1xuICAgICAgbGV0IGZlYXR1cmUgPSBmZWF0dXJlc1t0eXBlXTtcbiAgICAgIGZvciAobGV0IHNldHRpbmcgaW4gZmVhdHVyZSkge1xuICAgICAgICBsZXQgcjtcbiAgICAgICAgbGV0IGYgPSBtYXBGZWF0dXJlU3RyaW5ncyhbdHlwZSwgc2V0dGluZ10pO1xuICAgICAgICBpZiAoZmVhdHVyZVtzZXR0aW5nXSAmJiAociA9IEFBVE1hcHBpbmdbZlswXV0gJiYgQUFUTWFwcGluZ1tmWzBdXVtmWzFdXSkpIHtcbiAgICAgICAgICByZXNbcl0gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIE9iamVjdC5rZXlzKHJlcyk7XG59XG4iLCAiaW1wb3J0IEFBVFN0YXRlTWFjaGluZSBmcm9tICcuL0FBVFN0YXRlTWFjaGluZSc7XG5pbXBvcnQgQUFUTG9va3VwVGFibGUgZnJvbSAnLi9BQVRMb29rdXBUYWJsZSc7XG5pbXBvcnQge2NhY2hlfSBmcm9tICcuLi9kZWNvcmF0b3JzJztcblxuLy8gaW5kaWMgcmVwbGFjZW1lbnQgZmxhZ3NcbmNvbnN0IE1BUktfRklSU1QgPSAweDgwMDA7XG5jb25zdCBNQVJLX0xBU1QgID0gMHgyMDAwO1xuY29uc3QgVkVSQiAgICAgICA9IDB4MDAwRjtcblxuLy8gY29udGV4dHVhbCBzdWJzdGl0dXRpb24gYW5kIGdseXBoIGluc2VydGlvbiBmbGFnXG5jb25zdCBTRVRfTUFSSyA9IDB4ODAwMDtcblxuLy8gbGlnYXR1cmUgZW50cnkgZmxhZ3NcbmNvbnN0IFNFVF9DT01QT05FTlQgID0gMHg4MDAwO1xuY29uc3QgUEVSRk9STV9BQ1RJT04gPSAweDIwMDA7XG5cbi8vIGxpZ2F0dXJlIGFjdGlvbiBtYXNrc1xuY29uc3QgTEFTVF9NQVNLICAgPSAweDgwMDAwMDAwO1xuY29uc3QgU1RPUkVfTUFTSyAgPSAweDQwMDAwMDAwO1xuY29uc3QgT0ZGU0VUX01BU0sgPSAweDNGRkZGRkZGO1xuXG5jb25zdCBWRVJUSUNBTF9PTkxZICAgICAgICAgICA9IDB4ODAwMDAwO1xuY29uc3QgUkVWRVJTRV9ESVJFQ1RJT04gICAgICAgPSAweDQwMDAwMDtcbmNvbnN0IEhPUklaT05UQUxfQU5EX1ZFUlRJQ0FMID0gMHgyMDAwMDA7XG5cbi8vIGdseXBoIGluc2VydGlvbiBmbGFnc1xuY29uc3QgQ1VSUkVOVF9JU19LQVNISURBX0xJS0UgPSAweDIwMDA7XG5jb25zdCBNQVJLRURfSVNfS0FTSElEQV9MSUtFICA9IDB4MTAwMDtcbmNvbnN0IENVUlJFTlRfSU5TRVJUX0JFRk9SRSAgID0gMHgwODAwO1xuY29uc3QgTUFSS0VEX0lOU0VSVF9CRUZPUkUgICAgPSAweDA0MDA7XG5jb25zdCBDVVJSRU5UX0lOU0VSVF9DT1VOVCAgICA9IDB4MDNFMDtcbmNvbnN0IE1BUktFRF9JTlNFUlRfQ09VTlQgICAgID0gMHgwMDFGO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBQVRNb3J4UHJvY2Vzc29yIHtcbiAgY29uc3RydWN0b3IoZm9udCkge1xuICAgIHRoaXMucHJvY2Vzc0luZGljUmVhcnJhZ2VtZW50ID0gdGhpcy5wcm9jZXNzSW5kaWNSZWFycmFnZW1lbnQuYmluZCh0aGlzKTtcbiAgICB0aGlzLnByb2Nlc3NDb250ZXh0dWFsU3Vic3RpdHV0aW9uID0gdGhpcy5wcm9jZXNzQ29udGV4dHVhbFN1YnN0aXR1dGlvbi5iaW5kKHRoaXMpO1xuICAgIHRoaXMucHJvY2Vzc0xpZ2F0dXJlID0gdGhpcy5wcm9jZXNzTGlnYXR1cmUuYmluZCh0aGlzKTtcbiAgICB0aGlzLnByb2Nlc3NOb25jb250ZXh0dWFsU3Vic3RpdHV0aW9ucyA9IHRoaXMucHJvY2Vzc05vbmNvbnRleHR1YWxTdWJzdGl0dXRpb25zLmJpbmQodGhpcyk7XG4gICAgdGhpcy5wcm9jZXNzR2x5cGhJbnNlcnRpb24gPSB0aGlzLnByb2Nlc3NHbHlwaEluc2VydGlvbi5iaW5kKHRoaXMpO1xuICAgIHRoaXMuZm9udCA9IGZvbnQ7XG4gICAgdGhpcy5tb3J4ID0gZm9udC5tb3J4O1xuICAgIHRoaXMuaW5wdXRDYWNoZSA9IG51bGw7XG4gIH1cblxuICAvLyBQcm9jZXNzZXMgYW4gYXJyYXkgb2YgZ2x5cGhzIGFuZCBhcHBsaWVzIHRoZSBzcGVjaWZpZWQgZmVhdHVyZXNcbiAgLy8gRmVhdHVyZXMgc2hvdWxkIGJlIGluIHRoZSBmb3JtIG9mIHtmZWF0dXJlVHlwZTp7ZmVhdHVyZVNldHRpbmc6Ym9vbGVhbn19XG4gIHByb2Nlc3MoZ2x5cGhzLCBmZWF0dXJlcyA9IHt9KSB7XG4gICAgZm9yIChsZXQgY2hhaW4gb2YgdGhpcy5tb3J4LmNoYWlucykge1xuICAgICAgbGV0IGZsYWdzID0gY2hhaW4uZGVmYXVsdEZsYWdzO1xuXG4gICAgICAvLyBlbmFibGUvZGlzYWJsZSB0aGUgcmVxdWVzdGVkIGZlYXR1cmVzXG4gICAgICBmb3IgKGxldCBmZWF0dXJlIG9mIGNoYWluLmZlYXR1cmVzKSB7XG4gICAgICAgIGxldCBmO1xuICAgICAgICBpZiAoZiA9IGZlYXR1cmVzW2ZlYXR1cmUuZmVhdHVyZVR5cGVdKSB7XG4gICAgICAgICAgaWYgKGZbZmVhdHVyZS5mZWF0dXJlU2V0dGluZ10pIHtcbiAgICAgICAgICAgIGZsYWdzICY9IGZlYXR1cmUuZGlzYWJsZUZsYWdzO1xuICAgICAgICAgICAgZmxhZ3MgfD0gZmVhdHVyZS5lbmFibGVGbGFncztcbiAgICAgICAgICB9IGVsc2UgaWYgKGZbZmVhdHVyZS5mZWF0dXJlU2V0dGluZ10gPT09IGZhbHNlKSB7XG4gICAgICAgICAgICBmbGFncyB8PSB+ZmVhdHVyZS5kaXNhYmxlRmxhZ3M7XG4gICAgICAgICAgICBmbGFncyAmPSB+ZmVhdHVyZS5lbmFibGVGbGFncztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZm9yIChsZXQgc3VidGFibGUgb2YgY2hhaW4uc3VidGFibGVzKSB7XG4gICAgICAgIGlmIChzdWJ0YWJsZS5zdWJGZWF0dXJlRmxhZ3MgJiBmbGFncykge1xuICAgICAgICAgIHRoaXMucHJvY2Vzc1N1YnRhYmxlKHN1YnRhYmxlLCBnbHlwaHMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gcmVtb3ZlIGRlbGV0ZWQgZ2x5cGhzXG4gICAgbGV0IGluZGV4ID0gZ2x5cGhzLmxlbmd0aCAtIDE7XG4gICAgd2hpbGUgKGluZGV4ID49IDApIHtcbiAgICAgIGlmIChnbHlwaHNbaW5kZXhdLmlkID09PSAweGZmZmYpIHtcbiAgICAgICAgZ2x5cGhzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9XG5cbiAgICAgIGluZGV4LS07XG4gICAgfVxuXG4gICAgcmV0dXJuIGdseXBocztcbiAgfVxuXG4gIHByb2Nlc3NTdWJ0YWJsZShzdWJ0YWJsZSwgZ2x5cGhzKSB7XG4gICAgdGhpcy5zdWJ0YWJsZSA9IHN1YnRhYmxlO1xuICAgIHRoaXMuZ2x5cGhzID0gZ2x5cGhzO1xuICAgIGlmICh0aGlzLnN1YnRhYmxlLnR5cGUgPT09IDQpIHtcbiAgICAgIHRoaXMucHJvY2Vzc05vbmNvbnRleHR1YWxTdWJzdGl0dXRpb25zKHRoaXMuc3VidGFibGUsIHRoaXMuZ2x5cGhzKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmxpZ2F0dXJlU3RhY2sgPSBbXTtcbiAgICB0aGlzLm1hcmtlZEdseXBoID0gbnVsbDtcbiAgICB0aGlzLmZpcnN0R2x5cGggPSBudWxsO1xuICAgIHRoaXMubGFzdEdseXBoID0gbnVsbDtcbiAgICB0aGlzLm1hcmtlZEluZGV4ID0gbnVsbDtcblxuICAgIGxldCBzdGF0ZU1hY2hpbmUgPSB0aGlzLmdldFN0YXRlTWFjaGluZShzdWJ0YWJsZSk7XG4gICAgbGV0IHByb2Nlc3MgPSB0aGlzLmdldFByb2Nlc3NvcigpO1xuXG4gICAgbGV0IHJldmVyc2UgPSAhISh0aGlzLnN1YnRhYmxlLmNvdmVyYWdlICYgUkVWRVJTRV9ESVJFQ1RJT04pO1xuICAgIHJldHVybiBzdGF0ZU1hY2hpbmUucHJvY2Vzcyh0aGlzLmdseXBocywgcmV2ZXJzZSwgcHJvY2Vzcyk7XG4gIH1cblxuICBAY2FjaGVcbiAgZ2V0U3RhdGVNYWNoaW5lKHN1YnRhYmxlKSB7XG4gICAgcmV0dXJuIG5ldyBBQVRTdGF0ZU1hY2hpbmUoc3VidGFibGUudGFibGUuc3RhdGVUYWJsZSk7XG4gIH1cblxuICBnZXRQcm9jZXNzb3IoKSB7XG4gICAgc3dpdGNoICh0aGlzLnN1YnRhYmxlLnR5cGUpIHtcbiAgICAgIGNhc2UgMDpcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0luZGljUmVhcnJhZ2VtZW50O1xuICAgICAgY2FzZSAxOlxuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzQ29udGV4dHVhbFN1YnN0aXR1dGlvbjtcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0xpZ2F0dXJlO1xuICAgICAgY2FzZSA0OlxuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzTm9uY29udGV4dHVhbFN1YnN0aXR1dGlvbnM7XG4gICAgICBjYXNlIDU6XG4gICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NHbHlwaEluc2VydGlvbjtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBtb3J4IHN1YnRhYmxlIHR5cGU6ICR7dGhpcy5zdWJ0YWJsZS50eXBlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByb2Nlc3NJbmRpY1JlYXJyYWdlbWVudChnbHlwaCwgZW50cnksIGluZGV4KSB7XG4gICAgaWYgKGVudHJ5LmZsYWdzICYgTUFSS19GSVJTVCkge1xuICAgICAgdGhpcy5maXJzdEdseXBoID0gaW5kZXg7XG4gICAgfVxuXG4gICAgaWYgKGVudHJ5LmZsYWdzICYgTUFSS19MQVNUKSB7XG4gICAgICB0aGlzLmxhc3RHbHlwaCA9IGluZGV4O1xuICAgIH1cblxuICAgIHJlb3JkZXJHbHlwaHModGhpcy5nbHlwaHMsIGVudHJ5LmZsYWdzICYgVkVSQiwgdGhpcy5maXJzdEdseXBoLCB0aGlzLmxhc3RHbHlwaCk7XG4gIH1cblxuICBwcm9jZXNzQ29udGV4dHVhbFN1YnN0aXR1dGlvbihnbHlwaCwgZW50cnksIGluZGV4KSB7XG4gICAgbGV0IHN1YnNpdHV0aW9ucyA9IHRoaXMuc3VidGFibGUudGFibGUuc3Vic3RpdHV0aW9uVGFibGUuaXRlbXM7XG4gICAgaWYgKGVudHJ5Lm1hcmtJbmRleCAhPT0gMHhmZmZmKSB7XG4gICAgICBsZXQgbG9va3VwID0gc3Vic2l0dXRpb25zLmdldEl0ZW0oZW50cnkubWFya0luZGV4KTtcbiAgICAgIGxldCBsb29rdXBUYWJsZSA9IG5ldyBBQVRMb29rdXBUYWJsZShsb29rdXApO1xuICAgICAgZ2x5cGggPSB0aGlzLmdseXBoc1t0aGlzLm1hcmtlZEdseXBoXTtcbiAgICAgIHZhciBnaWQgPSBsb29rdXBUYWJsZS5sb29rdXAoZ2x5cGguaWQpO1xuICAgICAgaWYgKGdpZCkge1xuICAgICAgICB0aGlzLmdseXBoc1t0aGlzLm1hcmtlZEdseXBoXSA9IHRoaXMuZm9udC5nZXRHbHlwaChnaWQsIGdseXBoLmNvZGVQb2ludHMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChlbnRyeS5jdXJyZW50SW5kZXggIT09IDB4ZmZmZikge1xuICAgICAgbGV0IGxvb2t1cCA9IHN1YnNpdHV0aW9ucy5nZXRJdGVtKGVudHJ5LmN1cnJlbnRJbmRleCk7XG4gICAgICBsZXQgbG9va3VwVGFibGUgPSBuZXcgQUFUTG9va3VwVGFibGUobG9va3VwKTtcbiAgICAgIGdseXBoID0gdGhpcy5nbHlwaHNbaW5kZXhdO1xuICAgICAgdmFyIGdpZCA9IGxvb2t1cFRhYmxlLmxvb2t1cChnbHlwaC5pZCk7XG4gICAgICBpZiAoZ2lkKSB7XG4gICAgICAgIHRoaXMuZ2x5cGhzW2luZGV4XSA9IHRoaXMuZm9udC5nZXRHbHlwaChnaWQsIGdseXBoLmNvZGVQb2ludHMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChlbnRyeS5mbGFncyAmIFNFVF9NQVJLKSB7XG4gICAgICB0aGlzLm1hcmtlZEdseXBoID0gaW5kZXg7XG4gICAgfVxuICB9XG5cbiAgcHJvY2Vzc0xpZ2F0dXJlKGdseXBoLCBlbnRyeSwgaW5kZXgpIHtcbiAgICBpZiAoZW50cnkuZmxhZ3MgJiBTRVRfQ09NUE9ORU5UKSB7XG4gICAgICB0aGlzLmxpZ2F0dXJlU3RhY2sucHVzaChpbmRleCk7XG4gICAgfVxuXG4gICAgaWYgKGVudHJ5LmZsYWdzICYgUEVSRk9STV9BQ1RJT04pIHtcbiAgICAgIGxldCBhY3Rpb25zID0gdGhpcy5zdWJ0YWJsZS50YWJsZS5saWdhdHVyZUFjdGlvbnM7XG4gICAgICBsZXQgY29tcG9uZW50cyA9IHRoaXMuc3VidGFibGUudGFibGUuY29tcG9uZW50cztcbiAgICAgIGxldCBsaWdhdHVyZUxpc3QgPSB0aGlzLnN1YnRhYmxlLnRhYmxlLmxpZ2F0dXJlTGlzdDtcblxuICAgICAgbGV0IGFjdGlvbkluZGV4ID0gZW50cnkuYWN0aW9uO1xuICAgICAgbGV0IGxhc3QgPSBmYWxzZTtcbiAgICAgIGxldCBsaWdhdHVyZUluZGV4ID0gMDtcbiAgICAgIGxldCBjb2RlUG9pbnRzID0gW107XG4gICAgICBsZXQgbGlnYXR1cmVHbHlwaHMgPSBbXTtcblxuICAgICAgd2hpbGUgKCFsYXN0KSB7XG4gICAgICAgIGxldCBjb21wb25lbnRHbHlwaCA9IHRoaXMubGlnYXR1cmVTdGFjay5wb3AoKTtcbiAgICAgICAgY29kZVBvaW50cy51bnNoaWZ0KC4uLnRoaXMuZ2x5cGhzW2NvbXBvbmVudEdseXBoXS5jb2RlUG9pbnRzKTtcblxuICAgICAgICBsZXQgYWN0aW9uID0gYWN0aW9ucy5nZXRJdGVtKGFjdGlvbkluZGV4KyspO1xuICAgICAgICBsYXN0ID0gISEoYWN0aW9uICYgTEFTVF9NQVNLKTtcbiAgICAgICAgbGV0IHN0b3JlID0gISEoYWN0aW9uICYgU1RPUkVfTUFTSyk7XG4gICAgICAgIGxldCBvZmZzZXQgPSAoYWN0aW9uICYgT0ZGU0VUX01BU0spIDw8IDIgPj4gMjsgLy8gc2lnbiBleHRlbmQgMzAgdG8gMzIgYml0c1xuICAgICAgICBvZmZzZXQgKz0gdGhpcy5nbHlwaHNbY29tcG9uZW50R2x5cGhdLmlkO1xuXG4gICAgICAgIGxldCBjb21wb25lbnQgPSBjb21wb25lbnRzLmdldEl0ZW0ob2Zmc2V0KTtcbiAgICAgICAgbGlnYXR1cmVJbmRleCArPSBjb21wb25lbnQ7XG5cbiAgICAgICAgaWYgKGxhc3QgfHwgc3RvcmUpIHtcbiAgICAgICAgICBsZXQgbGlnYXR1cmVFbnRyeSA9IGxpZ2F0dXJlTGlzdC5nZXRJdGVtKGxpZ2F0dXJlSW5kZXgpO1xuICAgICAgICAgIHRoaXMuZ2x5cGhzW2NvbXBvbmVudEdseXBoXSA9IHRoaXMuZm9udC5nZXRHbHlwaChsaWdhdHVyZUVudHJ5LCBjb2RlUG9pbnRzKTtcbiAgICAgICAgICBsaWdhdHVyZUdseXBocy5wdXNoKGNvbXBvbmVudEdseXBoKTtcbiAgICAgICAgICBsaWdhdHVyZUluZGV4ID0gMDtcbiAgICAgICAgICBjb2RlUG9pbnRzID0gW107XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5nbHlwaHNbY29tcG9uZW50R2x5cGhdID0gdGhpcy5mb250LmdldEdseXBoKDB4ZmZmZik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUHV0IGxpZ2F0dXJlIGdseXBoIGluZGV4ZXMgYmFjayBvbiB0aGUgc3RhY2tcbiAgICAgIHRoaXMubGlnYXR1cmVTdGFjay5wdXNoKC4uLmxpZ2F0dXJlR2x5cGhzKTtcbiAgICB9XG4gIH1cblxuICBwcm9jZXNzTm9uY29udGV4dHVhbFN1YnN0aXR1dGlvbnMoc3VidGFibGUsIGdseXBocywgaW5kZXgpIHtcbiAgICBsZXQgbG9va3VwVGFibGUgPSBuZXcgQUFUTG9va3VwVGFibGUoc3VidGFibGUudGFibGUubG9va3VwVGFibGUpO1xuXG4gICAgZm9yIChpbmRleCA9IDA7IGluZGV4IDwgZ2x5cGhzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgbGV0IGdseXBoID0gZ2x5cGhzW2luZGV4XTtcbiAgICAgIGlmIChnbHlwaC5pZCAhPT0gMHhmZmZmKSB7XG4gICAgICAgIGxldCBnaWQgPSBsb29rdXBUYWJsZS5sb29rdXAoZ2x5cGguaWQpO1xuICAgICAgICBpZiAoZ2lkKSB7IC8vIDAgbWVhbnMgZG8gbm90aGluZ1xuICAgICAgICAgIGdseXBoc1tpbmRleF0gPSB0aGlzLmZvbnQuZ2V0R2x5cGgoZ2lkLCBnbHlwaC5jb2RlUG9pbnRzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIF9pbnNlcnRHbHlwaHMoZ2x5cGhJbmRleCwgaW5zZXJ0aW9uQWN0aW9uSW5kZXgsIGNvdW50LCBpc0JlZm9yZSkge1xuICAgIGxldCBpbnNlcnRpb25zID0gW107XG4gICAgd2hpbGUgKGNvdW50LS0pIHtcbiAgICAgIGxldCBnaWQgPSB0aGlzLnN1YnRhYmxlLnRhYmxlLmluc2VydGlvbkFjdGlvbnMuZ2V0SXRlbShpbnNlcnRpb25BY3Rpb25JbmRleCsrKTtcbiAgICAgIGluc2VydGlvbnMucHVzaCh0aGlzLmZvbnQuZ2V0R2x5cGgoZ2lkKSk7XG4gICAgfVxuXG4gICAgaWYgKCFpc0JlZm9yZSkge1xuICAgICAgZ2x5cGhJbmRleCsrO1xuICAgIH1cblxuICAgIHRoaXMuZ2x5cGhzLnNwbGljZShnbHlwaEluZGV4LCAwLCAuLi5pbnNlcnRpb25zKTtcbiAgfVxuXG4gIHByb2Nlc3NHbHlwaEluc2VydGlvbihnbHlwaCwgZW50cnksIGluZGV4KSB7XG4gICAgaWYgKGVudHJ5LmZsYWdzICYgU0VUX01BUkspIHtcbiAgICAgIHRoaXMubWFya2VkSW5kZXggPSBpbmRleDtcbiAgICB9XG5cbiAgICBpZiAoZW50cnkubWFya2VkSW5zZXJ0SW5kZXggIT09IDB4ZmZmZikge1xuICAgICAgbGV0IGNvdW50ID0gKGVudHJ5LmZsYWdzICYgTUFSS0VEX0lOU0VSVF9DT1VOVCkgPj4+IDU7XG4gICAgICBsZXQgaXNCZWZvcmUgPSAhIShlbnRyeS5mbGFncyAmIE1BUktFRF9JTlNFUlRfQkVGT1JFKTtcbiAgICAgIHRoaXMuX2luc2VydEdseXBocyh0aGlzLm1hcmtlZEluZGV4LCBlbnRyeS5tYXJrZWRJbnNlcnRJbmRleCwgY291bnQsIGlzQmVmb3JlKTtcbiAgICB9XG5cbiAgICBpZiAoZW50cnkuY3VycmVudEluc2VydEluZGV4ICE9PSAweGZmZmYpIHtcbiAgICAgIGxldCBjb3VudCA9IChlbnRyeS5mbGFncyAmIENVUlJFTlRfSU5TRVJUX0NPVU5UKSA+Pj4gNTtcbiAgICAgIGxldCBpc0JlZm9yZSA9ICEhKGVudHJ5LmZsYWdzICYgQ1VSUkVOVF9JTlNFUlRfQkVGT1JFKTtcbiAgICAgIHRoaXMuX2luc2VydEdseXBocyhpbmRleCwgZW50cnkuY3VycmVudEluc2VydEluZGV4LCBjb3VudCwgaXNCZWZvcmUpO1xuICAgIH1cbiAgfVxuXG4gIGdldFN1cHBvcnRlZEZlYXR1cmVzKCkge1xuICAgIGxldCBmZWF0dXJlcyA9IFtdO1xuICAgIGZvciAobGV0IGNoYWluIG9mIHRoaXMubW9yeC5jaGFpbnMpIHtcbiAgICAgIGZvciAobGV0IGZlYXR1cmUgb2YgY2hhaW4uZmVhdHVyZXMpIHtcbiAgICAgICAgZmVhdHVyZXMucHVzaChbZmVhdHVyZS5mZWF0dXJlVHlwZSwgZmVhdHVyZS5mZWF0dXJlU2V0dGluZ10pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmZWF0dXJlcztcbiAgfVxuXG4gIGdlbmVyYXRlSW5wdXRzKGdpZCkge1xuICAgIGlmICghdGhpcy5pbnB1dENhY2hlKSB7XG4gICAgICB0aGlzLmdlbmVyYXRlSW5wdXRDYWNoZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmlucHV0Q2FjaGVbZ2lkXSB8fCBbXTtcbiAgfVxuXG4gIGdlbmVyYXRlSW5wdXRDYWNoZSgpIHtcbiAgICB0aGlzLmlucHV0Q2FjaGUgPSB7fTtcblxuICAgIGZvciAobGV0IGNoYWluIG9mIHRoaXMubW9yeC5jaGFpbnMpIHtcbiAgICAgIGxldCBmbGFncyA9IGNoYWluLmRlZmF1bHRGbGFncztcblxuICAgICAgZm9yIChsZXQgc3VidGFibGUgb2YgY2hhaW4uc3VidGFibGVzKSB7XG4gICAgICAgIGlmIChzdWJ0YWJsZS5zdWJGZWF0dXJlRmxhZ3MgJiBmbGFncykge1xuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVJbnB1dHNGb3JTdWJ0YWJsZShzdWJ0YWJsZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZW5lcmF0ZUlucHV0c0ZvclN1YnRhYmxlKHN1YnRhYmxlKSB7XG4gICAgLy8gQ3VycmVudGx5LCBvbmx5IHN1cHBvcnRpbmcgbGlnYXR1cmUgc3VidGFibGVzLlxuICAgIGlmIChzdWJ0YWJsZS50eXBlICE9PSAyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHJldmVyc2UgPSAhIShzdWJ0YWJsZS5jb3ZlcmFnZSAmIFJFVkVSU0VfRElSRUNUSU9OKTtcbiAgICBpZiAocmV2ZXJzZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdSZXZlcnNlIHN1YnRhYmxlLCBub3Qgc3VwcG9ydGVkLicpO1xuICAgIH1cblxuICAgIHRoaXMuc3VidGFibGUgPSBzdWJ0YWJsZTtcbiAgICB0aGlzLmxpZ2F0dXJlU3RhY2sgPSBbXTtcblxuICAgIGxldCBzdGF0ZU1hY2hpbmUgPSB0aGlzLmdldFN0YXRlTWFjaGluZShzdWJ0YWJsZSk7XG4gICAgbGV0IHByb2Nlc3MgPSB0aGlzLmdldFByb2Nlc3NvcigpO1xuXG4gICAgbGV0IGlucHV0ID0gW107XG4gICAgbGV0IHN0YWNrID0gW107XG4gICAgdGhpcy5nbHlwaHMgPSBbXTtcblxuICAgIHN0YXRlTWFjaGluZS50cmF2ZXJzZSh7XG4gICAgICBlbnRlcjogKGdseXBoLCBlbnRyeSkgPT4ge1xuICAgICAgICBsZXQgZ2x5cGhzID0gdGhpcy5nbHlwaHM7XG4gICAgICAgIHN0YWNrLnB1c2goe1xuICAgICAgICAgIGdseXBoczogZ2x5cGhzLnNsaWNlKCksXG4gICAgICAgICAgbGlnYXR1cmVTdGFjazogdGhpcy5saWdhdHVyZVN0YWNrLnNsaWNlKClcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gQWRkIGdseXBoIHRvIGlucHV0IGFuZCBnbHlwaHMgdG8gcHJvY2Vzcy5cbiAgICAgICAgbGV0IGcgPSB0aGlzLmZvbnQuZ2V0R2x5cGgoZ2x5cGgpO1xuICAgICAgICBpbnB1dC5wdXNoKGcpO1xuICAgICAgICBnbHlwaHMucHVzaChpbnB1dFtpbnB1dC5sZW5ndGggLSAxXSk7XG5cbiAgICAgICAgLy8gUHJvY2VzcyBsaWdhdHVyZSBzdWJzdGl0dXRpb25cbiAgICAgICAgcHJvY2VzcyhnbHlwaHNbZ2x5cGhzLmxlbmd0aCAtIDFdLCBlbnRyeSwgZ2x5cGhzLmxlbmd0aCAtIDEpO1xuXG4gICAgICAgIC8vIEFkZCBpbnB1dCB0byByZXN1bHQgaWYgb25seSBvbmUgbWF0Y2hpbmcgKG5vbi1kZWxldGVkKSBnbHlwaCByZW1haW5zLlxuICAgICAgICBsZXQgY291bnQgPSAwO1xuICAgICAgICBsZXQgZm91bmQgPSAwO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdseXBocy5sZW5ndGggJiYgY291bnQgPD0gMTsgaSsrKSB7XG4gICAgICAgICAgaWYgKGdseXBoc1tpXS5pZCAhPT0gMHhmZmZmKSB7XG4gICAgICAgICAgICBjb3VudCsrO1xuICAgICAgICAgICAgZm91bmQgPSBnbHlwaHNbaV0uaWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvdW50ID09PSAxKSB7XG4gICAgICAgICAgbGV0IHJlc3VsdCA9IGlucHV0Lm1hcChnID0+IGcuaWQpO1xuICAgICAgICAgIGxldCBjYWNoZSA9IHRoaXMuaW5wdXRDYWNoZVtmb3VuZF07XG4gICAgICAgICAgaWYgKGNhY2hlKSB7XG4gICAgICAgICAgICBjYWNoZS5wdXNoKHJlc3VsdCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXRDYWNoZVtmb3VuZF0gPSBbcmVzdWx0XTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgIGV4aXQ6ICgpID0+IHtcbiAgICAgICAgKHtnbHlwaHM6IHRoaXMuZ2x5cGhzLCBsaWdhdHVyZVN0YWNrOiB0aGlzLmxpZ2F0dXJlU3RhY2t9ID0gc3RhY2sucG9wKCkpO1xuICAgICAgICBpbnB1dC5wb3AoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuXG4vLyBzd2FwcyB0aGUgZ2x5cGhzIGluIHJhbmdlQSB3aXRoIHRob3NlIGluIHJhbmdlQlxuLy8gcmV2ZXJzZSB0aGUgZ2x5cGhzIGluc2lkZSB0aG9zZSByYW5nZXMgaWYgc3BlY2lmaWVkXG4vLyByYW5nZXMgYXJlIGluIFtvZmZzZXQsIGxlbmd0aF0gZm9ybWF0XG5mdW5jdGlvbiBzd2FwKGdseXBocywgcmFuZ2VBLCByYW5nZUIsIHJldmVyc2VBID0gZmFsc2UsIHJldmVyc2VCID0gZmFsc2UpIHtcbiAgbGV0IGVuZCA9IGdseXBocy5zcGxpY2UocmFuZ2VCWzBdIC0gKHJhbmdlQlsxXSAtIDEpLCByYW5nZUJbMV0pO1xuICBpZiAocmV2ZXJzZUIpIHtcbiAgICBlbmQucmV2ZXJzZSgpO1xuICB9XG5cbiAgbGV0IHN0YXJ0ID0gZ2x5cGhzLnNwbGljZShyYW5nZUFbMF0sIHJhbmdlQVsxXSwgLi4uZW5kKTtcbiAgaWYgKHJldmVyc2VBKSB7XG4gICAgc3RhcnQucmV2ZXJzZSgpO1xuICB9XG5cbiAgZ2x5cGhzLnNwbGljZShyYW5nZUJbMF0gLSAocmFuZ2VBWzFdIC0gMSksIDAsIC4uLnN0YXJ0KTtcbiAgcmV0dXJuIGdseXBocztcbn1cblxuZnVuY3Rpb24gcmVvcmRlckdseXBocyhnbHlwaHMsIHZlcmIsIGZpcnN0R2x5cGgsIGxhc3RHbHlwaCkge1xuICBsZXQgbGVuZ3RoID0gbGFzdEdseXBoIC0gZmlyc3RHbHlwaCArIDE7XG4gIHN3aXRjaCAodmVyYikge1xuICAgIGNhc2UgMDogLy8gbm8gY2hhbmdlXG4gICAgICByZXR1cm4gZ2x5cGhzO1xuXG4gICAgY2FzZSAxOiAvLyBBeCA9PiB4QVxuICAgICAgcmV0dXJuIHN3YXAoZ2x5cGhzLCBbZmlyc3RHbHlwaCwgMV0sIFtsYXN0R2x5cGgsIDBdKTtcblxuICAgIGNhc2UgMjogLy8geEQgPT4gRHhcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDBdLCBbbGFzdEdseXBoLCAxXSk7XG5cbiAgICBjYXNlIDM6IC8vIEF4RCA9PiBEeEFcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDFdLCBbbGFzdEdseXBoLCAxXSk7XG5cbiAgICBjYXNlIDQ6IC8vIEFCeCA9PiB4QUJcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAwXSk7XG5cbiAgICBjYXNlIDU6IC8vIEFCeCA9PiB4QkFcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAwXSwgdHJ1ZSwgZmFsc2UpO1xuXG4gICAgY2FzZSA2OiAvLyB4Q0QgPT4gQ0R4XG4gICAgICByZXR1cm4gc3dhcChnbHlwaHMsIFtmaXJzdEdseXBoLCAwXSwgW2xhc3RHbHlwaCwgMl0pO1xuXG4gICAgY2FzZSA3OiAvLyB4Q0QgPT4gREN4XG4gICAgICByZXR1cm4gc3dhcChnbHlwaHMsIFtmaXJzdEdseXBoLCAwXSwgW2xhc3RHbHlwaCwgMl0sIGZhbHNlLCB0cnVlKTtcblxuICAgIGNhc2UgODogLy8gQXhDRCA9PiBDRHhBXG4gICAgICByZXR1cm4gc3dhcChnbHlwaHMsIFtmaXJzdEdseXBoLCAxXSwgW2xhc3RHbHlwaCwgMl0pO1xuXG4gICAgY2FzZSA5OiAvLyBBeENEID0+IERDeEFcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDFdLCBbbGFzdEdseXBoLCAyXSwgZmFsc2UsIHRydWUpO1xuXG4gICAgY2FzZSAxMDogLy8gQUJ4RCA9PiBEeEFCXG4gICAgICByZXR1cm4gc3dhcChnbHlwaHMsIFtmaXJzdEdseXBoLCAyXSwgW2xhc3RHbHlwaCwgMV0pO1xuXG4gICAgY2FzZSAxMTogLy8gQUJ4RCA9PiBEeEJBXG4gICAgICByZXR1cm4gc3dhcChnbHlwaHMsIFtmaXJzdEdseXBoLCAyXSwgW2xhc3RHbHlwaCwgMV0sIHRydWUsIGZhbHNlKTtcblxuICAgIGNhc2UgMTI6IC8vIEFCeENEID0+IENEeEFCXG4gICAgICByZXR1cm4gc3dhcChnbHlwaHMsIFtmaXJzdEdseXBoLCAyXSwgW2xhc3RHbHlwaCwgMl0pO1xuXG4gICAgY2FzZSAxMzogLy8gQUJ4Q0QgPT4gQ0R4QkFcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAyXSwgdHJ1ZSwgZmFsc2UpO1xuXG4gICAgY2FzZSAxNDogLy8gQUJ4Q0QgPT4gREN4QUJcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAyXSwgZmFsc2UsIHRydWUpO1xuXG4gICAgY2FzZSAxNTogLy8gQUJ4Q0QgPT4gREN4QkFcbiAgICAgIHJldHVybiBzd2FwKGdseXBocywgW2ZpcnN0R2x5cGgsIDJdLCBbbGFzdEdseXBoLCAyXSwgdHJ1ZSwgdHJ1ZSk7XG5cbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHZlcmI6ICR7dmVyYn1gKTtcbiAgfVxufVxuIiwgImltcG9ydCBBQVRMb29rdXBUYWJsZSBmcm9tICcuL0FBVExvb2t1cFRhYmxlJztcblxuY29uc3QgU1RBUlRfT0ZfVEVYVF9TVEFURSA9IDA7XG5jb25zdCBTVEFSVF9PRl9MSU5FX1NUQVRFID0gMTtcblxuY29uc3QgRU5EX09GX1RFWFRfQ0xBU1MgPSAwO1xuY29uc3QgT1VUX09GX0JPVU5EU19DTEFTUyA9IDE7XG5jb25zdCBERUxFVEVEX0dMWVBIX0NMQVNTID0gMjtcbmNvbnN0IEVORF9PRl9MSU5FX0NMQVNTID0gMztcblxuY29uc3QgRE9OVF9BRFZBTkNFID0gMHg0MDAwO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBQVRTdGF0ZU1hY2hpbmUge1xuICBjb25zdHJ1Y3RvcihzdGF0ZVRhYmxlKSB7XG4gICAgdGhpcy5zdGF0ZVRhYmxlID0gc3RhdGVUYWJsZTtcbiAgICB0aGlzLmxvb2t1cFRhYmxlID0gbmV3IEFBVExvb2t1cFRhYmxlKHN0YXRlVGFibGUuY2xhc3NUYWJsZSk7XG4gIH1cblxuICBwcm9jZXNzKGdseXBocywgcmV2ZXJzZSwgcHJvY2Vzc0VudHJ5KSB7XG4gICAgbGV0IGN1cnJlbnRTdGF0ZSA9IFNUQVJUX09GX1RFWFRfU1RBVEU7IC8vIFNUQVJUX09GX0xJTkVfU1RBVEUgaXMgdXNlZCBmb3Iga2FzaGlkYSBnbHlwaCBpbnNlcnRpb25zIHNvbWV0aW1lcyBJIHRoaW5rP1xuICAgIGxldCBpbmRleCA9IHJldmVyc2UgPyBnbHlwaHMubGVuZ3RoIC0gMSA6IDA7XG4gICAgbGV0IGRpciA9IHJldmVyc2UgPyAtMSA6IDE7XG5cbiAgICB3aGlsZSAoKGRpciA9PT0gMSAmJiBpbmRleCA8PSBnbHlwaHMubGVuZ3RoKSB8fCAoZGlyID09PSAtMSAmJiBpbmRleCA+PSAtMSkpIHtcbiAgICAgIGxldCBnbHlwaCA9IG51bGw7XG4gICAgICBsZXQgY2xhc3NDb2RlID0gT1VUX09GX0JPVU5EU19DTEFTUztcbiAgICAgIGxldCBzaG91bGRBZHZhbmNlID0gdHJ1ZTtcblxuICAgICAgaWYgKGluZGV4ID09PSBnbHlwaHMubGVuZ3RoIHx8IGluZGV4ID09PSAtMSkge1xuICAgICAgICBjbGFzc0NvZGUgPSBFTkRfT0ZfVEVYVF9DTEFTUztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGdseXBoID0gZ2x5cGhzW2luZGV4XTtcbiAgICAgICAgaWYgKGdseXBoLmlkID09PSAweGZmZmYpIHsgLy8gZGVsZXRlZCBnbHlwaFxuICAgICAgICAgIGNsYXNzQ29kZSA9IERFTEVURURfR0xZUEhfQ0xBU1M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY2xhc3NDb2RlID0gdGhpcy5sb29rdXBUYWJsZS5sb29rdXAoZ2x5cGguaWQpO1xuICAgICAgICAgIGlmIChjbGFzc0NvZGUgPT0gbnVsbCkge1xuICAgICAgICAgICAgY2xhc3NDb2RlID0gT1VUX09GX0JPVU5EU19DTEFTUztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGV0IHJvdyA9IHRoaXMuc3RhdGVUYWJsZS5zdGF0ZUFycmF5LmdldEl0ZW0oY3VycmVudFN0YXRlKTtcbiAgICAgIGxldCBlbnRyeUluZGV4ID0gcm93W2NsYXNzQ29kZV07XG4gICAgICBsZXQgZW50cnkgPSB0aGlzLnN0YXRlVGFibGUuZW50cnlUYWJsZS5nZXRJdGVtKGVudHJ5SW5kZXgpO1xuXG4gICAgICBpZiAoY2xhc3NDb2RlICE9PSBFTkRfT0ZfVEVYVF9DTEFTUyAmJiBjbGFzc0NvZGUgIT09ICBERUxFVEVEX0dMWVBIX0NMQVNTKSB7XG4gICAgICAgIHByb2Nlc3NFbnRyeShnbHlwaCwgZW50cnksIGluZGV4KTtcbiAgICAgICAgc2hvdWxkQWR2YW5jZSA9ICEoZW50cnkuZmxhZ3MgJiBET05UX0FEVkFOQ0UpO1xuICAgICAgfVxuXG4gICAgICBjdXJyZW50U3RhdGUgPSBlbnRyeS5uZXdTdGF0ZTtcbiAgICAgIGlmIChzaG91bGRBZHZhbmNlKSB7XG4gICAgICAgIGluZGV4ICs9IGRpcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZ2x5cGhzO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm1zIGEgZGVwdGgtZmlyc3QgdHJhdmVyc2FsIG9mIHRoZSBnbHlwaCBzdHJpbmdzXG4gICAqIHJlcHJlc2VudGVkIGJ5IHRoZSBzdGF0ZSBtYWNoaW5lLlxuICAgKi9cbiAgdHJhdmVyc2Uob3B0cywgc3RhdGUgPSAwLCB2aXNpdGVkID0gbmV3IFNldCkge1xuICAgIGlmICh2aXNpdGVkLmhhcyhzdGF0ZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2aXNpdGVkLmFkZChzdGF0ZSk7XG5cbiAgICBsZXQge25DbGFzc2VzLCBzdGF0ZUFycmF5LCBlbnRyeVRhYmxlfSA9IHRoaXMuc3RhdGVUYWJsZTtcbiAgICBsZXQgcm93ID0gc3RhdGVBcnJheS5nZXRJdGVtKHN0YXRlKTtcblxuICAgIC8vIFNraXAgcHJlZGVmaW5lZCBjbGFzc2VzXG4gICAgZm9yIChsZXQgY2xhc3NDb2RlID0gNDsgY2xhc3NDb2RlIDwgbkNsYXNzZXM7IGNsYXNzQ29kZSsrKSB7XG4gICAgICBsZXQgZW50cnlJbmRleCA9IHJvd1tjbGFzc0NvZGVdO1xuICAgICAgbGV0IGVudHJ5ID0gZW50cnlUYWJsZS5nZXRJdGVtKGVudHJ5SW5kZXgpO1xuXG4gICAgICAvLyBUcnkgYWxsIGdseXBocyBpbiB0aGUgY2xhc3NcbiAgICAgIGZvciAobGV0IGdseXBoIG9mIHRoaXMubG9va3VwVGFibGUuZ2x5cGhzRm9yVmFsdWUoY2xhc3NDb2RlKSkge1xuICAgICAgICBpZiAob3B0cy5lbnRlcikge1xuICAgICAgICAgIG9wdHMuZW50ZXIoZ2x5cGgsIGVudHJ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlbnRyeS5uZXdTdGF0ZSAhPT0gMCkge1xuICAgICAgICAgIHRoaXMudHJhdmVyc2Uob3B0cywgZW50cnkubmV3U3RhdGUsIHZpc2l0ZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wdHMuZXhpdCkge1xuICAgICAgICAgIG9wdHMuZXhpdChnbHlwaCwgZW50cnkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IHtjYWNoZX0gZnJvbSAnLi4vZGVjb3JhdG9ycyc7XG5pbXBvcnQge3JhbmdlfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFBVExvb2t1cFRhYmxlIHtcbiAgY29uc3RydWN0b3IodGFibGUpIHtcbiAgICB0aGlzLnRhYmxlID0gdGFibGU7XG4gIH1cblxuICBsb29rdXAoZ2x5cGgpIHtcbiAgICBzd2l0Y2ggKHRoaXMudGFibGUudmVyc2lvbikge1xuICAgICAgY2FzZSAwOiAvLyBzaW1wbGUgYXJyYXkgZm9ybWF0XG4gICAgICAgIHJldHVybiB0aGlzLnRhYmxlLnZhbHVlcy5nZXRJdGVtKGdseXBoKTtcblxuICAgICAgY2FzZSAyOiAvLyBzZWdtZW50IGZvcm1hdFxuICAgICAgY2FzZSA0OiB7XG4gICAgICAgIGxldCBtaW4gPSAwO1xuICAgICAgICBsZXQgbWF4ID0gdGhpcy50YWJsZS5iaW5hcnlTZWFyY2hIZWFkZXIublVuaXRzIC0gMTtcblxuICAgICAgICB3aGlsZSAobWluIDw9IG1heCkge1xuICAgICAgICAgIHZhciBtaWQgPSAobWluICsgbWF4KSA+PiAxO1xuICAgICAgICAgIHZhciBzZWcgPSB0aGlzLnRhYmxlLnNlZ21lbnRzW21pZF07XG5cbiAgICAgICAgICAvLyBzcGVjaWFsIGVuZCBvZiBzZWFyY2ggdmFsdWVcbiAgICAgICAgICBpZiAoc2VnLmZpcnN0R2x5cGggPT09IDB4ZmZmZikge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGdseXBoIDwgc2VnLmZpcnN0R2x5cGgpIHtcbiAgICAgICAgICAgIG1heCA9IG1pZCAtIDE7XG4gICAgICAgICAgfSBlbHNlIGlmIChnbHlwaCA+IHNlZy5sYXN0R2x5cGgpIHtcbiAgICAgICAgICAgIG1pbiA9IG1pZCArIDE7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRhYmxlLnZlcnNpb24gPT09IDIpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHNlZy52YWx1ZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHJldHVybiBzZWcudmFsdWVzW2dseXBoIC0gc2VnLmZpcnN0R2x5cGhdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDY6IHsgLy8gbG9va3VwIHNpbmdsZVxuICAgICAgICBsZXQgbWluID0gMDtcbiAgICAgICAgbGV0IG1heCA9IHRoaXMudGFibGUuYmluYXJ5U2VhcmNoSGVhZGVyLm5Vbml0cyAtIDE7XG5cbiAgICAgICAgd2hpbGUgKG1pbiA8PSBtYXgpIHtcbiAgICAgICAgICB2YXIgbWlkID0gKG1pbiArIG1heCkgPj4gMTtcbiAgICAgICAgICB2YXIgc2VnID0gdGhpcy50YWJsZS5zZWdtZW50c1ttaWRdO1xuXG4gICAgICAgICAgLy8gc3BlY2lhbCBlbmQgb2Ygc2VhcmNoIHZhbHVlXG4gICAgICAgICAgaWYgKHNlZy5nbHlwaCA9PT0gMHhmZmZmKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZ2x5cGggPCBzZWcuZ2x5cGgpIHtcbiAgICAgICAgICAgIG1heCA9IG1pZCAtIDE7XG4gICAgICAgICAgfSBlbHNlIGlmIChnbHlwaCA+IHNlZy5nbHlwaCkge1xuICAgICAgICAgICAgbWluID0gbWlkICsgMTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHNlZy52YWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgY2FzZSA4OiAvLyBsb29rdXAgdHJpbW1lZFxuICAgICAgICByZXR1cm4gdGhpcy50YWJsZS52YWx1ZXNbZ2x5cGggLSB0aGlzLnRhYmxlLmZpcnN0R2x5cGhdO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gbG9va3VwIHRhYmxlIGZvcm1hdDogJHt0aGlzLnRhYmxlLnZlcnNpb259YCk7XG4gICAgfVxuICB9XG5cbiAgQGNhY2hlXG4gIGdseXBoc0ZvclZhbHVlKGNsYXNzVmFsdWUpIHtcbiAgICBsZXQgcmVzID0gW107XG5cbiAgICBzd2l0Y2ggKHRoaXMudGFibGUudmVyc2lvbikge1xuICAgICAgY2FzZSAyOiAvLyBzZWdtZW50IGZvcm1hdFxuICAgICAgY2FzZSA0OiB7XG4gICAgICAgIGZvciAobGV0IHNlZ21lbnQgb2YgdGhpcy50YWJsZS5zZWdtZW50cykge1xuICAgICAgICAgIGlmICgodGhpcy50YWJsZS52ZXJzaW9uID09PSAyICYmIHNlZ21lbnQudmFsdWUgPT09IGNsYXNzVmFsdWUpKSB7XG4gICAgICAgICAgICByZXMucHVzaCguLi5yYW5nZShzZWdtZW50LmZpcnN0R2x5cGgsIHNlZ21lbnQubGFzdEdseXBoICsgMSkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgc2VnbWVudC52YWx1ZXMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICAgIGlmIChzZWdtZW50LnZhbHVlc1tpbmRleF0gPT09IGNsYXNzVmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZXMucHVzaChzZWdtZW50LmZpcnN0R2x5cGggKyBpbmRleCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgY2FzZSA2OiB7IC8vIGxvb2t1cCBzaW5nbGVcbiAgICAgICAgZm9yIChsZXQgc2VnbWVudCBvZiB0aGlzLnRhYmxlLnNlZ21lbnRzKSB7XG4gICAgICAgICAgaWYgKHNlZ21lbnQudmFsdWUgPT09IGNsYXNzVmFsdWUpIHtcbiAgICAgICAgICAgIHJlcy5wdXNoKHNlZ21lbnQuZ2x5cGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDg6IHsgLy8gbG9va3VwIHRyaW1tZWRcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnRhYmxlLnZhbHVlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGlmICh0aGlzLnRhYmxlLnZhbHVlc1tpXSA9PT0gY2xhc3NWYWx1ZSkge1xuICAgICAgICAgICAgcmVzLnB1c2godGhpcy50YWJsZS5maXJzdEdseXBoICsgaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBsb29rdXAgdGFibGUgZm9ybWF0OiAke3RoaXMudGFibGUudmVyc2lvbn1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG4iLCAiaW1wb3J0IFNoYXBpbmdQbGFuIGZyb20gJy4vU2hhcGluZ1BsYW4nO1xuaW1wb3J0ICogYXMgU2hhcGVycyBmcm9tICcuL3NoYXBlcnMnO1xuaW1wb3J0IEdseXBoSW5mbyBmcm9tICcuL0dseXBoSW5mbyc7XG5pbXBvcnQgR1NVQlByb2Nlc3NvciBmcm9tICcuL0dTVUJQcm9jZXNzb3InO1xuaW1wb3J0IEdQT1NQcm9jZXNzb3IgZnJvbSAnLi9HUE9TUHJvY2Vzc29yJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgT1RMYXlvdXRFbmdpbmUge1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLmdseXBoSW5mb3MgPSBudWxsO1xuICAgIHRoaXMucGxhbiA9IG51bGw7XG4gICAgdGhpcy5HU1VCUHJvY2Vzc29yID0gbnVsbDtcbiAgICB0aGlzLkdQT1NQcm9jZXNzb3IgPSBudWxsO1xuICAgIHRoaXMuZmFsbGJhY2tQb3NpdGlvbiA9IHRydWU7XG5cbiAgICBpZiAoZm9udC5HU1VCKSB7XG4gICAgICB0aGlzLkdTVUJQcm9jZXNzb3IgPSBuZXcgR1NVQlByb2Nlc3Nvcihmb250LCBmb250LkdTVUIpO1xuICAgIH1cblxuICAgIGlmIChmb250LkdQT1MpIHtcbiAgICAgIHRoaXMuR1BPU1Byb2Nlc3NvciA9IG5ldyBHUE9TUHJvY2Vzc29yKGZvbnQsIGZvbnQuR1BPUyk7XG4gICAgfVxuICB9XG5cbiAgc2V0dXAoZ2x5cGhSdW4pIHtcbiAgICAvLyBNYXAgZ2x5cGhzIHRvIEdseXBoSW5mbyBvYmplY3RzIHNvIGRhdGEgY2FuIGJlIHBhc3NlZCBiZXR3ZWVuXG4gICAgLy8gR1NVQiBhbmQgR1BPUyB3aXRob3V0IG11dGF0aW5nIHRoZSByZWFsIChzaGFyZWQpIEdseXBoIG9iamVjdHMuXG4gICAgdGhpcy5nbHlwaEluZm9zID0gZ2x5cGhSdW4uZ2x5cGhzLm1hcChnbHlwaCA9PiBuZXcgR2x5cGhJbmZvKHRoaXMuZm9udCwgZ2x5cGguaWQsIFsuLi5nbHlwaC5jb2RlUG9pbnRzXSkpO1xuXG4gICAgLy8gU2VsZWN0IGEgc2NyaXB0IGJhc2VkIG9uIHdoYXQgaXMgYXZhaWxhYmxlIGluIEdTVUIvR1BPUy5cbiAgICBsZXQgc2NyaXB0ID0gbnVsbDtcbiAgICBpZiAodGhpcy5HUE9TUHJvY2Vzc29yKSB7XG4gICAgICBzY3JpcHQgPSB0aGlzLkdQT1NQcm9jZXNzb3Iuc2VsZWN0U2NyaXB0KGdseXBoUnVuLnNjcmlwdCwgZ2x5cGhSdW4ubGFuZ3VhZ2UsIGdseXBoUnVuLmRpcmVjdGlvbik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuR1NVQlByb2Nlc3Nvcikge1xuICAgICAgc2NyaXB0ID0gdGhpcy5HU1VCUHJvY2Vzc29yLnNlbGVjdFNjcmlwdChnbHlwaFJ1bi5zY3JpcHQsIGdseXBoUnVuLmxhbmd1YWdlLCBnbHlwaFJ1bi5kaXJlY3Rpb24pO1xuICAgIH1cblxuICAgIC8vIENob29zZSBhIHNoYXBlciBiYXNlZCBvbiB0aGUgc2NyaXB0LCBhbmQgc2V0dXAgYSBzaGFwaW5nIHBsYW4uXG4gICAgLy8gVGhpcyBkZXRlcm1pbmVzIHdoaWNoIGZlYXR1cmVzIHRvIGFwcGx5IHRvIHdoaWNoIGdseXBocy5cbiAgICB0aGlzLnNoYXBlciA9IFNoYXBlcnMuY2hvb3NlKHNjcmlwdCk7XG4gICAgdGhpcy5wbGFuID0gbmV3IFNoYXBpbmdQbGFuKHRoaXMuZm9udCwgc2NyaXB0LCBnbHlwaFJ1bi5kaXJlY3Rpb24pO1xuICAgIHRoaXMuc2hhcGVyLnBsYW4odGhpcy5wbGFuLCB0aGlzLmdseXBoSW5mb3MsIGdseXBoUnVuLmZlYXR1cmVzKTtcblxuICAgIC8vIEFzc2lnbiBjaG9zZW4gZmVhdHVyZXMgdG8gb3V0cHV0IGdseXBoIHJ1blxuICAgIGZvciAobGV0IGtleSBpbiB0aGlzLnBsYW4uYWxsRmVhdHVyZXMpIHtcbiAgICAgIGdseXBoUnVuLmZlYXR1cmVzW2tleV0gPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHN1YnN0aXR1dGUoZ2x5cGhSdW4pIHtcbiAgICBpZiAodGhpcy5HU1VCUHJvY2Vzc29yKSB7XG4gICAgICB0aGlzLnBsYW4ucHJvY2Vzcyh0aGlzLkdTVUJQcm9jZXNzb3IsIHRoaXMuZ2x5cGhJbmZvcyk7XG5cbiAgICAgIC8vIE1hcCBnbHlwaCBpbmZvcyBiYWNrIHRvIG5vcm1hbCBHbHlwaCBvYmplY3RzXG4gICAgICBnbHlwaFJ1bi5nbHlwaHMgPSB0aGlzLmdseXBoSW5mb3MubWFwKGdseXBoSW5mbyA9PiB0aGlzLmZvbnQuZ2V0R2x5cGgoZ2x5cGhJbmZvLmlkLCBnbHlwaEluZm8uY29kZVBvaW50cykpO1xuICAgIH1cbiAgfVxuXG4gIHBvc2l0aW9uKGdseXBoUnVuKSB7XG4gICAgaWYgKHRoaXMuc2hhcGVyLnplcm9NYXJrV2lkdGhzID09PSAnQkVGT1JFX0dQT1MnKSB7XG4gICAgICB0aGlzLnplcm9NYXJrQWR2YW5jZXMoZ2x5cGhSdW4ucG9zaXRpb25zKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5HUE9TUHJvY2Vzc29yKSB7XG4gICAgICB0aGlzLnBsYW4ucHJvY2Vzcyh0aGlzLkdQT1NQcm9jZXNzb3IsIHRoaXMuZ2x5cGhJbmZvcywgZ2x5cGhSdW4ucG9zaXRpb25zKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zaGFwZXIuemVyb01hcmtXaWR0aHMgPT09ICdBRlRFUl9HUE9TJykge1xuICAgICAgdGhpcy56ZXJvTWFya0FkdmFuY2VzKGdseXBoUnVuLnBvc2l0aW9ucyk7XG4gICAgfVxuXG4gICAgLy8gUmV2ZXJzZSB0aGUgZ2x5cGhzIGFuZCBwb3NpdGlvbnMgaWYgdGhlIHNjcmlwdCBpcyByaWdodC10by1sZWZ0XG4gICAgaWYgKGdseXBoUnVuLmRpcmVjdGlvbiA9PT0gJ3J0bCcpIHtcbiAgICAgIGdseXBoUnVuLmdseXBocy5yZXZlcnNlKCk7XG4gICAgICBnbHlwaFJ1bi5wb3NpdGlvbnMucmV2ZXJzZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLkdQT1NQcm9jZXNzb3IgJiYgdGhpcy5HUE9TUHJvY2Vzc29yLmZlYXR1cmVzO1xuICB9XG5cbiAgemVyb01hcmtBZHZhbmNlcyhwb3NpdGlvbnMpIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZ2x5cGhJbmZvcy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKHRoaXMuZ2x5cGhJbmZvc1tpXS5pc01hcmspIHtcbiAgICAgICAgcG9zaXRpb25zW2ldLnhBZHZhbmNlID0gMDtcbiAgICAgICAgcG9zaXRpb25zW2ldLnlBZHZhbmNlID0gMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjbGVhbnVwKCkge1xuICAgIHRoaXMuZ2x5cGhJbmZvcyA9IG51bGw7XG4gICAgdGhpcy5wbGFuID0gbnVsbDtcbiAgICB0aGlzLnNoYXBlciA9IG51bGw7XG4gIH1cblxuICBnZXRBdmFpbGFibGVGZWF0dXJlcyhzY3JpcHQsIGxhbmd1YWdlKSB7XG4gICAgbGV0IGZlYXR1cmVzID0gW107XG5cbiAgICBpZiAodGhpcy5HU1VCUHJvY2Vzc29yKSB7XG4gICAgICB0aGlzLkdTVUJQcm9jZXNzb3Iuc2VsZWN0U2NyaXB0KHNjcmlwdCwgbGFuZ3VhZ2UpO1xuICAgICAgZmVhdHVyZXMucHVzaCguLi5PYmplY3Qua2V5cyh0aGlzLkdTVUJQcm9jZXNzb3IuZmVhdHVyZXMpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5HUE9TUHJvY2Vzc29yKSB7XG4gICAgICB0aGlzLkdQT1NQcm9jZXNzb3Iuc2VsZWN0U2NyaXB0KHNjcmlwdCwgbGFuZ3VhZ2UpO1xuICAgICAgZmVhdHVyZXMucHVzaCguLi5PYmplY3Qua2V5cyh0aGlzLkdQT1NQcm9jZXNzb3IuZmVhdHVyZXMpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmVhdHVyZXM7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyBTY3JpcHQgZnJvbSAnLi4vbGF5b3V0L1NjcmlwdCc7XG5cbi8qKlxuICogU2hhcGluZ1BsYW5zIGFyZSB1c2VkIGJ5IHRoZSBPcGVuVHlwZSBzaGFwZXJzIHRvIHN0b3JlIHdoaWNoXG4gKiBmZWF0dXJlcyBzaG91bGQgYnkgYXBwbGllZCwgYW5kIGluIHdoYXQgb3JkZXIgdG8gYXBwbHkgdGhlbS5cbiAqIFRoZSBmZWF0dXJlcyBhcmUgYXBwbGllZCBpbiBncm91cHMgY2FsbGVkIHN0YWdlcy4gQSBmZWF0dXJlXG4gKiBjYW4gYmUgYXBwbGllZCBnbG9iYWxseSB0byBhbGwgZ2x5cGhzLCBvciBsb2NhbGx5IHRvIG9ubHlcbiAqIHNwZWNpZmljIGdseXBocy5cbiAqXG4gKiBAcHJpdmF0ZVxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTaGFwaW5nUGxhbiB7XG4gIGNvbnN0cnVjdG9yKGZvbnQsIHNjcmlwdCwgZGlyZWN0aW9uKSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLnNjcmlwdCA9IHNjcmlwdDtcbiAgICB0aGlzLmRpcmVjdGlvbiA9IGRpcmVjdGlvbjtcbiAgICB0aGlzLnN0YWdlcyA9IFtdO1xuICAgIHRoaXMuZ2xvYmFsRmVhdHVyZXMgPSB7fTtcbiAgICB0aGlzLmFsbEZlYXR1cmVzID0ge307XG4gIH1cblxuICAvKipcbiAgICogQWRkcyB0aGUgZ2l2ZW4gZmVhdHVyZXMgdG8gdGhlIGxhc3Qgc3RhZ2UuXG4gICAqIElnbm9yZXMgZmVhdHVyZXMgdGhhdCBoYXZlIGFscmVhZHkgYmVlbiBhcHBsaWVkLlxuICAgKi9cbiAgX2FkZEZlYXR1cmVzKGZlYXR1cmVzLCBnbG9iYWwpIHtcbiAgICBsZXQgc3RhZ2VJbmRleCA9IHRoaXMuc3RhZ2VzLmxlbmd0aCAtIDE7XG4gICAgbGV0IHN0YWdlID0gdGhpcy5zdGFnZXNbc3RhZ2VJbmRleF07XG4gICAgZm9yIChsZXQgZmVhdHVyZSBvZiBmZWF0dXJlcykge1xuICAgICAgaWYgKHRoaXMuYWxsRmVhdHVyZXNbZmVhdHVyZV0gPT0gbnVsbCkge1xuICAgICAgICBzdGFnZS5wdXNoKGZlYXR1cmUpO1xuICAgICAgICB0aGlzLmFsbEZlYXR1cmVzW2ZlYXR1cmVdID0gc3RhZ2VJbmRleDtcblxuICAgICAgICBpZiAoZ2xvYmFsKSB7XG4gICAgICAgICAgdGhpcy5nbG9iYWxGZWF0dXJlc1tmZWF0dXJlXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkIGZlYXR1cmVzIHRvIHRoZSBsYXN0IHN0YWdlXG4gICAqL1xuICBhZGQoYXJnLCBnbG9iYWwgPSB0cnVlKSB7XG4gICAgaWYgKHRoaXMuc3RhZ2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5zdGFnZXMucHVzaChbXSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBhcmcgPT09ICdzdHJpbmcnKSB7XG4gICAgICBhcmcgPSBbYXJnXTtcbiAgICB9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShhcmcpKSB7XG4gICAgICB0aGlzLl9hZGRGZWF0dXJlcyhhcmcsIGdsb2JhbCk7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgYXJnID09PSAnb2JqZWN0Jykge1xuICAgICAgdGhpcy5fYWRkRmVhdHVyZXMoYXJnLmdsb2JhbCB8fCBbXSwgdHJ1ZSk7XG4gICAgICB0aGlzLl9hZGRGZWF0dXJlcyhhcmcubG9jYWwgfHwgW10sIGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgYXJndW1lbnQgdG8gU2hhcGluZ1BsYW4jYWRkXCIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBuZXcgc3RhZ2VcbiAgICovXG4gIGFkZFN0YWdlKGFyZywgZ2xvYmFsKSB7XG4gICAgaWYgKHR5cGVvZiBhcmcgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuc3RhZ2VzLnB1c2goYXJnLCBbXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhZ2VzLnB1c2goW10pO1xuICAgICAgdGhpcy5hZGQoYXJnLCBnbG9iYWwpO1xuICAgIH1cbiAgfVxuXG4gIHNldEZlYXR1cmVPdmVycmlkZXMoZmVhdHVyZXMpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShmZWF0dXJlcykpIHtcbiAgICAgIHRoaXMuYWRkKGZlYXR1cmVzKTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBmZWF0dXJlcyA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGZvciAobGV0IHRhZyBpbiBmZWF0dXJlcykge1xuICAgICAgICBpZiAoZmVhdHVyZXNbdGFnXSkge1xuICAgICAgICAgIHRoaXMuYWRkKHRhZyk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5hbGxGZWF0dXJlc1t0YWddICE9IG51bGwpIHtcbiAgICAgICAgICBsZXQgc3RhZ2UgPSB0aGlzLnN0YWdlc1t0aGlzLmFsbEZlYXR1cmVzW3RhZ11dO1xuICAgICAgICAgIHN0YWdlLnNwbGljZShzdGFnZS5pbmRleE9mKHRhZyksIDEpO1xuICAgICAgICAgIGRlbGV0ZSB0aGlzLmFsbEZlYXR1cmVzW3RhZ107XG4gICAgICAgICAgZGVsZXRlIHRoaXMuZ2xvYmFsRmVhdHVyZXNbdGFnXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBc3NpZ25zIHRoZSBnbG9iYWwgZmVhdHVyZXMgdG8gdGhlIGdpdmVuIGdseXBoc1xuICAgKi9cbiAgYXNzaWduR2xvYmFsRmVhdHVyZXMoZ2x5cGhzKSB7XG4gICAgZm9yIChsZXQgZ2x5cGggb2YgZ2x5cGhzKSB7XG4gICAgICBmb3IgKGxldCBmZWF0dXJlIGluIHRoaXMuZ2xvYmFsRmVhdHVyZXMpIHtcbiAgICAgICAgZ2x5cGguZmVhdHVyZXNbZmVhdHVyZV0gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgcGxhbm5lZCBzdGFnZXMgdXNpbmcgdGhlIGdpdmVuIE9UUHJvY2Vzc29yXG4gICAqL1xuICBwcm9jZXNzKHByb2Nlc3NvciwgZ2x5cGhzLCBwb3NpdGlvbnMpIHtcbiAgICBmb3IgKGxldCBzdGFnZSBvZiB0aGlzLnN0YWdlcykge1xuICAgICAgaWYgKHR5cGVvZiBzdGFnZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBpZiAoIXBvc2l0aW9ucykge1xuICAgICAgICAgIHN0YWdlKHRoaXMuZm9udCwgZ2x5cGhzLCB0aGlzKTtcbiAgICAgICAgfVxuXG4gICAgICB9IGVsc2UgaWYgKHN0YWdlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcHJvY2Vzc29yLmFwcGx5RmVhdHVyZXMoc3RhZ2UsIGdseXBocywgcG9zaXRpb25zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQgRGVmYXVsdFNoYXBlciBmcm9tICcuL0RlZmF1bHRTaGFwZXInO1xuaW1wb3J0IEFyYWJpY1NoYXBlciBmcm9tICcuL0FyYWJpY1NoYXBlcic7XG5pbXBvcnQgSGFuZ3VsU2hhcGVyIGZyb20gJy4vSGFuZ3VsU2hhcGVyJztcbmltcG9ydCBJbmRpY1NoYXBlciBmcm9tICcuL0luZGljU2hhcGVyJztcbmltcG9ydCBVbml2ZXJzYWxTaGFwZXIgZnJvbSAnLi9Vbml2ZXJzYWxTaGFwZXInO1xuXG5jb25zdCBTSEFQRVJTID0ge1xuICBhcmFiOiBBcmFiaWNTaGFwZXIsICAgIC8vIEFyYWJpY1xuICBtb25nOiBBcmFiaWNTaGFwZXIsICAgIC8vIE1vbmdvbGlhblxuICBzeXJjOiBBcmFiaWNTaGFwZXIsICAgIC8vIFN5cmlhY1xuICAnbmtvICc6IEFyYWJpY1NoYXBlciwgIC8vIE4nS29cbiAgcGhhZzogQXJhYmljU2hhcGVyLCAgICAvLyBQaGFncyBQYVxuICBtYW5kOiBBcmFiaWNTaGFwZXIsICAgIC8vIE1hbmRhaWNcbiAgbWFuaTogQXJhYmljU2hhcGVyLCAgICAvLyBNYW5pY2hhZWFuXG4gIHBobHA6IEFyYWJpY1NoYXBlciwgICAgLy8gUHNhbHRlciBQYWhsYXZpXG5cbiAgaGFuZzogSGFuZ3VsU2hhcGVyLCAgICAvLyBIYW5ndWxcblxuICBibmcyOiBJbmRpY1NoYXBlciwgICAgIC8vIEJlbmdhbGlcbiAgYmVuZzogSW5kaWNTaGFwZXIsICAgICAvLyBCZW5nYWxpXG4gIGRldjI6IEluZGljU2hhcGVyLCAgICAgLy8gRGV2YW5hZ2FyaVxuICBkZXZhOiBJbmRpY1NoYXBlciwgICAgIC8vIERldmFuYWdhcmlcbiAgZ2pyMjogSW5kaWNTaGFwZXIsICAgICAvLyBHdWphcmF0aVxuICBndWpyOiBJbmRpY1NoYXBlciwgICAgIC8vIEd1amFyYXRpXG4gIGd1cnU6IEluZGljU2hhcGVyLCAgICAgLy8gR3VybXVraGlcbiAgZ3VyMjogSW5kaWNTaGFwZXIsICAgICAvLyBHdXJtdWtoaVxuICBrbmRhOiBJbmRpY1NoYXBlciwgICAgIC8vIEthbm5hZGFcbiAga25kMjogSW5kaWNTaGFwZXIsICAgICAvLyBLYW5uYWRhXG4gIG1sbTI6IEluZGljU2hhcGVyLCAgICAgLy8gTWFsYXlhbGFtXG4gIG1seW06IEluZGljU2hhcGVyLCAgICAgLy8gTWFsYXlhbGFtXG4gIG9yeTI6IEluZGljU2hhcGVyLCAgICAgLy8gT3JpeWFcbiAgb3J5YTogSW5kaWNTaGFwZXIsICAgICAvLyBPcml5YVxuICB0YW1sOiBJbmRpY1NoYXBlciwgICAgIC8vIFRhbWlsXG4gIHRtbDI6IEluZGljU2hhcGVyLCAgICAgLy8gVGFtaWxcbiAgdGVsdTogSW5kaWNTaGFwZXIsICAgICAvLyBUZWx1Z3VcbiAgdGVsMjogSW5kaWNTaGFwZXIsICAgICAvLyBUZWx1Z3VcbiAga2htcjogSW5kaWNTaGFwZXIsICAgICAvLyBLaG1lclxuXG4gIGJhbGk6IFVuaXZlcnNhbFNoYXBlciwgLy8gQmFsaW5lc2VcbiAgYmF0azogVW5pdmVyc2FsU2hhcGVyLCAvLyBCYXRha1xuICBicmFoOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEJyYWhtaVxuICBidWdpOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEJ1Z2luZXNlXG4gIGJ1aGQ6IFVuaXZlcnNhbFNoYXBlciwgLy8gQnVoaWRcbiAgY2FrbTogVW5pdmVyc2FsU2hhcGVyLCAvLyBDaGFrbWFcbiAgY2hhbTogVW5pdmVyc2FsU2hhcGVyLCAvLyBDaGFtXG4gIGR1cGw6IFVuaXZlcnNhbFNoYXBlciwgLy8gRHVwbG95YW5cbiAgZWd5cDogVW5pdmVyc2FsU2hhcGVyLCAvLyBFZ3lwdGlhbiBIaWVyb2dseXBoc1xuICBncmFuOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEdyYW50aGFcbiAgaGFubzogVW5pdmVyc2FsU2hhcGVyLCAvLyBIYW51bm9vXG4gIGphdmE6IFVuaXZlcnNhbFNoYXBlciwgLy8gSmF2YW5lc2VcbiAga3RoaTogVW5pdmVyc2FsU2hhcGVyLCAvLyBLYWl0aGlcbiAga2FsaTogVW5pdmVyc2FsU2hhcGVyLCAvLyBLYXlhaCBMaVxuICBraGFyOiBVbml2ZXJzYWxTaGFwZXIsIC8vIEtoYXJvc2h0aGlcbiAga2hvajogVW5pdmVyc2FsU2hhcGVyLCAvLyBLaG9qa2lcbiAgc2luZDogVW5pdmVyc2FsU2hhcGVyLCAvLyBLaHVkYXdhZGlcbiAgbGVwYzogVW5pdmVyc2FsU2hhcGVyLCAvLyBMZXBjaGFcbiAgbGltYjogVW5pdmVyc2FsU2hhcGVyLCAvLyBMaW1idVxuICBtYWhqOiBVbml2ZXJzYWxTaGFwZXIsIC8vIE1haGFqYW5pXG4gIC8vIG1hbmQ6IFVuaXZlcnNhbFNoYXBlciwgLy8gTWFuZGFpY1xuICAvLyBtYW5pOiBVbml2ZXJzYWxTaGFwZXIsIC8vIE1hbmljaGFlYW5cbiAgbXRlaTogVW5pdmVyc2FsU2hhcGVyLCAvLyBNZWl0ZWkgTWF5ZWtcbiAgbW9kaTogVW5pdmVyc2FsU2hhcGVyLCAvLyBNb2RpXG4gIC8vIG1vbmc6IFVuaXZlcnNhbFNoYXBlciwgLy8gTW9uZ29saWFuXG4gIC8vICdua28gJzogVW5pdmVyc2FsU2hhcGVyLCAvLyBO4oCZS29cbiAgaG1uZzogVW5pdmVyc2FsU2hhcGVyLCAvLyBQYWhhd2ggSG1vbmdcbiAgLy8gcGhhZzogVW5pdmVyc2FsU2hhcGVyLCAvLyBQaGFncy1wYVxuICAvLyBwaGxwOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFBzYWx0ZXIgUGFobGF2aVxuICByam5nOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFJlamFuZ1xuICBzYXVyOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFNhdXJhc2h0cmFcbiAgc2hyZDogVW5pdmVyc2FsU2hhcGVyLCAvLyBTaGFyYWRhXG4gIHNpZGQ6IFVuaXZlcnNhbFNoYXBlciwgLy8gU2lkZGhhbVxuICBzaW5oOiBJbmRpY1NoYXBlciwgLy8gU2luaGFsYVxuICBzdW5kOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFN1bmRhbmVzZVxuICBzeWxvOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFN5bG90aSBOYWdyaVxuICB0Z2xnOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRhZ2Fsb2dcbiAgdGFnYjogVW5pdmVyc2FsU2hhcGVyLCAvLyBUYWdiYW53YVxuICB0YWxlOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRhaSBMZVxuICBsYW5hOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRhaSBUaGFtXG4gIHRhdnQ6IFVuaXZlcnNhbFNoYXBlciwgLy8gVGFpIFZpZXRcbiAgdGFrcjogVW5pdmVyc2FsU2hhcGVyLCAvLyBUYWtyaVxuICB0aWJ0OiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRpYmV0YW5cbiAgdGZuZzogVW5pdmVyc2FsU2hhcGVyLCAvLyBUaWZpbmFnaFxuICB0aXJoOiBVbml2ZXJzYWxTaGFwZXIsIC8vIFRpcmh1dGFcblxuICBsYXRuOiBEZWZhdWx0U2hhcGVyLCAgIC8vIExhdGluXG4gIERGTFQ6IERlZmF1bHRTaGFwZXIgICAgLy8gRGVmYXVsdFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNob29zZShzY3JpcHQpIHtcbiAgaWYgKCFBcnJheS5pc0FycmF5KHNjcmlwdCkpIHtcbiAgICBzY3JpcHQgPSBbc2NyaXB0XTtcbiAgfVxuXG4gIGZvciAobGV0IHMgb2Ygc2NyaXB0KSB7XG4gICAgbGV0IHNoYXBlciA9IFNIQVBFUlNbc107XG4gICAgaWYgKHNoYXBlcikge1xuICAgICAgcmV0dXJuIHNoYXBlcjtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gRGVmYXVsdFNoYXBlcjtcbn1cbiIsICJpbXBvcnQge2lzRGlnaXR9IGZyb20gJ3VuaWNvZGUtcHJvcGVydGllcyc7XG5cbmNvbnN0IFZBUklBVElPTl9GRUFUVVJFUyA9IFsncnZybiddO1xuY29uc3QgQ09NTU9OX0ZFQVRVUkVTID0gWydjY21wJywgJ2xvY2wnLCAncmxpZycsICdtYXJrJywgJ21rbWsnXTtcbmNvbnN0IEZSQUNUSU9OQUxfRkVBVFVSRVMgPSBbJ2ZyYWMnLCAnbnVtcicsICdkbm9tJ107XG5jb25zdCBIT1JJWk9OVEFMX0ZFQVRVUkVTID0gWydjYWx0JywgJ2NsaWcnLCAnbGlnYScsICdyY2x0JywgJ2N1cnMnLCAna2VybiddO1xuY29uc3QgVkVSVElDQUxfRkVBVFVSRVMgPSBbJ3ZlcnQnXTtcbmNvbnN0IERJUkVDVElPTkFMX0ZFQVRVUkVTID0ge1xuICBsdHI6IFsnbHRyYScsICdsdHJtJ10sXG4gIHJ0bDogWydydGxhJywgJ3J0bG0nXVxufTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGVmYXVsdFNoYXBlciB7XG4gIHN0YXRpYyB6ZXJvTWFya1dpZHRocyA9ICdBRlRFUl9HUE9TJztcbiAgc3RhdGljIHBsYW4ocGxhbiwgZ2x5cGhzLCBmZWF0dXJlcykge1xuICAgIC8vIFBsYW4gdGhlIGZlYXR1cmVzIHdlIHdhbnQgdG8gYXBwbHlcbiAgICB0aGlzLnBsYW5QcmVwcm9jZXNzaW5nKHBsYW4pO1xuICAgIHRoaXMucGxhbkZlYXR1cmVzKHBsYW4pO1xuICAgIHRoaXMucGxhblBvc3Rwcm9jZXNzaW5nKHBsYW4sIGZlYXR1cmVzKTtcblxuICAgIC8vIEFzc2lnbiB0aGUgZ2xvYmFsIGZlYXR1cmVzIHRvIGFsbCB0aGUgZ2x5cGhzXG4gICAgcGxhbi5hc3NpZ25HbG9iYWxGZWF0dXJlcyhnbHlwaHMpO1xuXG4gICAgLy8gQXNzaWduIGxvY2FsIGZlYXR1cmVzIHRvIGdseXBoc1xuICAgIHRoaXMuYXNzaWduRmVhdHVyZXMocGxhbiwgZ2x5cGhzKTtcbiAgfVxuXG4gIHN0YXRpYyBwbGFuUHJlcHJvY2Vzc2luZyhwbGFuKSB7XG4gICAgcGxhbi5hZGQoe1xuICAgICAgZ2xvYmFsOiBbLi4uVkFSSUFUSU9OX0ZFQVRVUkVTLCAuLi5ESVJFQ1RJT05BTF9GRUFUVVJFU1twbGFuLmRpcmVjdGlvbl1dLFxuICAgICAgbG9jYWw6IEZSQUNUSU9OQUxfRkVBVFVSRVNcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyBwbGFuRmVhdHVyZXMocGxhbikge1xuICAgIC8vIERvIG5vdGhpbmcgYnkgZGVmYXVsdC4gTGV0IHN1YmNsYXNzZXMgb3ZlcnJpZGUgdGhpcy5cbiAgfVxuXG4gIHN0YXRpYyBwbGFuUG9zdHByb2Nlc3NpbmcocGxhbiwgdXNlckZlYXR1cmVzKSB7XG4gICAgcGxhbi5hZGQoWy4uLkNPTU1PTl9GRUFUVVJFUywgLi4uSE9SSVpPTlRBTF9GRUFUVVJFU10pO1xuICAgIHBsYW4uc2V0RmVhdHVyZU92ZXJyaWRlcyh1c2VyRmVhdHVyZXMpO1xuICB9XG5cbiAgc3RhdGljIGFzc2lnbkZlYXR1cmVzKHBsYW4sIGdseXBocykge1xuICAgIC8vIEVuYWJsZSBjb250ZXh0dWFsIGZyYWN0aW9uc1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ2x5cGhzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgZ2x5cGggPSBnbHlwaHNbaV07XG4gICAgICBpZiAoZ2x5cGguY29kZVBvaW50c1swXSA9PT0gMHgyMDQ0KSB7IC8vIGZyYWN0aW9uIHNsYXNoXG4gICAgICAgIGxldCBzdGFydCA9IGk7XG4gICAgICAgIGxldCBlbmQgPSBpICsgMTtcblxuICAgICAgICAvLyBBcHBseSBudW1lcmF0b3JcbiAgICAgICAgd2hpbGUgKHN0YXJ0ID4gMCAmJiBpc0RpZ2l0KGdseXBoc1tzdGFydCAtIDFdLmNvZGVQb2ludHNbMF0pKSB7XG4gICAgICAgICAgZ2x5cGhzW3N0YXJ0IC0gMV0uZmVhdHVyZXMubnVtciA9IHRydWU7XG4gICAgICAgICAgZ2x5cGhzW3N0YXJ0IC0gMV0uZmVhdHVyZXMuZnJhYyA9IHRydWU7XG4gICAgICAgICAgc3RhcnQtLTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFwcGx5IGRlbm9taW5hdG9yXG4gICAgICAgIHdoaWxlIChlbmQgPCBnbHlwaHMubGVuZ3RoICYmIGlzRGlnaXQoZ2x5cGhzW2VuZF0uY29kZVBvaW50c1swXSkpIHtcbiAgICAgICAgICBnbHlwaHNbZW5kXS5mZWF0dXJlcy5kbm9tID0gdHJ1ZTtcbiAgICAgICAgICBnbHlwaHNbZW5kXS5mZWF0dXJlcy5mcmFjID0gdHJ1ZTtcbiAgICAgICAgICBlbmQrKztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFwcGx5IGZyYWN0aW9uIHNsYXNoXG4gICAgICAgIGdseXBoLmZlYXR1cmVzLmZyYWMgPSB0cnVlO1xuICAgICAgICBpID0gZW5kIC0gMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQgRGVmYXVsdFNoYXBlciBmcm9tICcuL0RlZmF1bHRTaGFwZXInO1xuaW1wb3J0IHtnZXRDYXRlZ29yeX0gZnJvbSAndW5pY29kZS1wcm9wZXJ0aWVzJztcbmltcG9ydCBVbmljb2RlVHJpZSBmcm9tICd1bmljb2RlLXRyaWUnO1xuaW1wb3J0IHsgZGVjb2RlQmFzZTY0IH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5jb25zdCB0cmllID0gbmV3IFVuaWNvZGVUcmllKGRlY29kZUJhc2U2NChyZXF1aXJlKCdmcycpLnJlYWRGaWxlU3luYyhfX2Rpcm5hbWUgKyAnL2RhdGEudHJpZScsICdiYXNlNjQnKSkpO1xuY29uc3QgRkVBVFVSRVMgPSBbJ2lzb2wnLCAnZmluYScsICdmaW4yJywgJ2ZpbjMnLCAnbWVkaScsICdtZWQyJywgJ2luaXQnXTtcblxuY29uc3QgU2hhcGluZ0NsYXNzZXMgPSB7XG4gIE5vbl9Kb2luaW5nOiAwLFxuICBMZWZ0X0pvaW5pbmc6IDEsXG4gIFJpZ2h0X0pvaW5pbmc6IDIsXG4gIER1YWxfSm9pbmluZzogMyxcbiAgSm9pbl9DYXVzaW5nOiAzLFxuICBBTEFQSDogNCxcbiAgJ0RBTEFUSCBSSVNIJzogNSxcbiAgVHJhbnNwYXJlbnQ6IDZcbn07XG5cbmNvbnN0IElTT0wgPSAnaXNvbCc7XG5jb25zdCBGSU5BID0gJ2ZpbmEnO1xuY29uc3QgRklOMiA9ICdmaW4yJztcbmNvbnN0IEZJTjMgPSAnZmluMyc7XG5jb25zdCBNRURJID0gJ21lZGknO1xuY29uc3QgTUVEMiA9ICdtZWQyJztcbmNvbnN0IElOSVQgPSAnaW5pdCc7XG5jb25zdCBOT05FID0gbnVsbDtcblxuLy8gRWFjaCBlbnRyeSBpcyBbcHJldkFjdGlvbiwgY3VyQWN0aW9uLCBuZXh0U3RhdGVdXG5jb25zdCBTVEFURV9UQUJMRSA9IFtcbiAgLy8gICBOb25fSm9pbmluZywgICAgICAgIExlZnRfSm9pbmluZywgICAgICAgUmlnaHRfSm9pbmluZywgICAgIER1YWxfSm9pbmluZywgICAgICAgICAgIEFMQVBILCAgICAgICAgICAgIERBTEFUSCBSSVNIXG4gIC8vIFN0YXRlIDA6IHByZXYgd2FzIFUsICBub3Qgd2lsbGluZyB0byBqb2luLlxuICBbIFsgTk9ORSwgTk9ORSwgMCBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIE5PTkUsIElTT0wsIDEgXSwgIFsgTk9ORSwgSVNPTCwgMiBdLCAgWyBOT05FLCBJU09MLCAxIF0sICBbIE5PTkUsIElTT0wsIDYgXSBdLFxuXG4gIC8vIFN0YXRlIDE6IHByZXYgd2FzIFIgb3IgSVNPTC9BTEFQSCwgIG5vdCB3aWxsaW5nIHRvIGpvaW4uXG4gIFsgWyBOT05FLCBOT05FLCAwIF0sICBbIE5PTkUsIElTT0wsIDIgXSwgIFsgTk9ORSwgSVNPTCwgMSBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIE5PTkUsIEZJTjIsIDUgXSwgIFsgTk9ORSwgSVNPTCwgNiBdIF0sXG5cbiAgLy8gU3RhdGUgMjogcHJldiB3YXMgRC9MIGluIElTT0wgZm9ybSwgIHdpbGxpbmcgdG8gam9pbi5cbiAgWyBbIE5PTkUsIE5PTkUsIDAgXSwgIFsgTk9ORSwgSVNPTCwgMiBdLCAgWyBJTklULCBGSU5BLCAxIF0sICBbIElOSVQsIEZJTkEsIDMgXSwgIFsgSU5JVCwgRklOQSwgNCBdLCAgWyBJTklULCBGSU5BLCA2IF0gXSxcblxuICAvLyBTdGF0ZSAzOiBwcmV2IHdhcyBEIGluIEZJTkEgZm9ybSwgIHdpbGxpbmcgdG8gam9pbi5cbiAgWyBbIE5PTkUsIE5PTkUsIDAgXSwgIFsgTk9ORSwgSVNPTCwgMiBdLCAgWyBNRURJLCBGSU5BLCAxIF0sICBbIE1FREksIEZJTkEsIDMgXSwgIFsgTUVESSwgRklOQSwgNCBdLCAgWyBNRURJLCBGSU5BLCA2IF0gXSxcblxuICAvLyBTdGF0ZSA0OiBwcmV2IHdhcyBGSU5BIEFMQVBILCAgbm90IHdpbGxpbmcgdG8gam9pbi5cbiAgWyBbIE5PTkUsIE5PTkUsIDAgXSwgIFsgTk9ORSwgSVNPTCwgMiBdLCAgWyBNRUQyLCBJU09MLCAxIF0sICBbIE1FRDIsIElTT0wsIDIgXSwgIFsgTUVEMiwgRklOMiwgNSBdLCAgWyBNRUQyLCBJU09MLCA2IF0gXSxcblxuICAvLyBTdGF0ZSA1OiBwcmV2IHdhcyBGSU4yL0ZJTjMgQUxBUEgsICBub3Qgd2lsbGluZyB0byBqb2luLlxuICBbIFsgTk9ORSwgTk9ORSwgMCBdLCAgWyBOT05FLCBJU09MLCAyIF0sICBbIElTT0wsIElTT0wsIDEgXSwgIFsgSVNPTCwgSVNPTCwgMiBdLCAgWyBJU09MLCBGSU4yLCA1IF0sICBbIElTT0wsIElTT0wsIDYgXSBdLFxuXG4gIC8vIFN0YXRlIDY6IHByZXYgd2FzIERBTEFUSC9SSVNILCAgbm90IHdpbGxpbmcgdG8gam9pbi5cbiAgWyBbIE5PTkUsIE5PTkUsIDAgXSwgIFsgTk9ORSwgSVNPTCwgMiBdLCAgWyBOT05FLCBJU09MLCAxIF0sICBbIE5PTkUsIElTT0wsIDIgXSwgIFsgTk9ORSwgRklOMywgNSBdLCAgWyBOT05FLCBJU09MLCA2IF0gXVxuXTtcblxuLyoqXG4gKiBUaGlzIGlzIGEgc2hhcGVyIGZvciBBcmFiaWMsIGFuZCBvdGhlciBjdXJzaXZlIHNjcmlwdHMuXG4gKiBJdCB1c2VzIGRhdGEgZnJvbSBBcmFiaWNTaGFwaW5nLnR4dCBpbiB0aGUgVW5pY29kZSBkYXRhYmFzZSxcbiAqIGNvbXBpbGVkIHRvIGEgVW5pY29kZVRyaWUgYnkgZ2VuZXJhdGUtZGF0YS5jb2ZmZWUuXG4gKlxuICogVGhlIHNoYXBpbmcgc3RhdGUgbWFjaGluZSB3YXMgcG9ydGVkIGZyb20gSGFyZmJ1enouXG4gKiBodHRwczovL2dpdGh1Yi5jb20vYmVoZGFkL2hhcmZidXp6L2Jsb2IvbWFzdGVyL3NyYy9oYi1vdC1zaGFwZS1jb21wbGV4LWFyYWJpYy5jY1xuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBcmFiaWNTaGFwZXIgZXh0ZW5kcyBEZWZhdWx0U2hhcGVyIHtcbiAgc3RhdGljIHBsYW5GZWF0dXJlcyhwbGFuKSB7XG4gICAgcGxhbi5hZGQoWydjY21wJywgJ2xvY2wnXSk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBGRUFUVVJFUy5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGZlYXR1cmUgPSBGRUFUVVJFU1tpXTtcbiAgICAgIHBsYW4uYWRkU3RhZ2UoZmVhdHVyZSwgZmFsc2UpO1xuICAgIH1cblxuICAgIHBsYW4uYWRkU3RhZ2UoJ21zZXQnKTtcbiAgfVxuXG4gIHN0YXRpYyBhc3NpZ25GZWF0dXJlcyhwbGFuLCBnbHlwaHMpIHtcbiAgICBzdXBlci5hc3NpZ25GZWF0dXJlcyhwbGFuLCBnbHlwaHMpO1xuXG4gICAgbGV0IHByZXYgPSAtMTtcbiAgICBsZXQgc3RhdGUgPSAwO1xuICAgIGxldCBhY3Rpb25zID0gW107XG5cbiAgICAvLyBBcHBseSB0aGUgc3RhdGUgbWFjaGluZSB0byBtYXAgZ2x5cGhzIHRvIGZlYXR1cmVzXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnbHlwaHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBjdXJBY3Rpb24sIHByZXZBY3Rpb247XG4gICAgICB2YXIgZ2x5cGggPSBnbHlwaHNbaV07XG4gICAgICBsZXQgdHlwZSA9IGdldFNoYXBpbmdDbGFzcyhnbHlwaC5jb2RlUG9pbnRzWzBdKTtcbiAgICAgIGlmICh0eXBlID09PSBTaGFwaW5nQ2xhc3Nlcy5UcmFuc3BhcmVudCkge1xuICAgICAgICBhY3Rpb25zW2ldID0gTk9ORTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIFtwcmV2QWN0aW9uLCBjdXJBY3Rpb24sIHN0YXRlXSA9IFNUQVRFX1RBQkxFW3N0YXRlXVt0eXBlXTtcblxuICAgICAgaWYgKHByZXZBY3Rpb24gIT09IE5PTkUgJiYgcHJldiAhPT0gLTEpIHtcbiAgICAgICAgYWN0aW9uc1twcmV2XSA9IHByZXZBY3Rpb247XG4gICAgICB9XG5cbiAgICAgIGFjdGlvbnNbaV0gPSBjdXJBY3Rpb247XG4gICAgICBwcmV2ID0gaTtcbiAgICB9XG5cbiAgICAvLyBBcHBseSB0aGUgY2hvc2VuIGZlYXR1cmVzIHRvIHRoZWlyIHJlc3BlY3RpdmUgZ2x5cGhzXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGdseXBocy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGxldCBmZWF0dXJlO1xuICAgICAgdmFyIGdseXBoID0gZ2x5cGhzW2luZGV4XTtcbiAgICAgIGlmIChmZWF0dXJlID0gYWN0aW9uc1tpbmRleF0pIHtcbiAgICAgICAgZ2x5cGguZmVhdHVyZXNbZmVhdHVyZV0gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRTaGFwaW5nQ2xhc3MoY29kZVBvaW50KSB7XG4gIGxldCByZXMgPSB0cmllLmdldChjb2RlUG9pbnQpO1xuICBpZiAocmVzKSB7XG4gICAgcmV0dXJuIHJlcyAtIDE7XG4gIH1cblxuICBsZXQgY2F0ZWdvcnkgPSBnZXRDYXRlZ29yeShjb2RlUG9pbnQpO1xuICBpZiAoY2F0ZWdvcnkgPT09ICdNbicgfHwgY2F0ZWdvcnkgPT09ICdNZScgfHwgY2F0ZWdvcnkgPT09ICdDZicpIHtcbiAgICByZXR1cm4gU2hhcGluZ0NsYXNzZXMuVHJhbnNwYXJlbnQ7XG4gIH1cblxuICByZXR1cm4gU2hhcGluZ0NsYXNzZXMuTm9uX0pvaW5pbmc7XG59XG4iLCAiaW1wb3J0IERlZmF1bHRTaGFwZXIgZnJvbSAnLi9EZWZhdWx0U2hhcGVyJztcbmltcG9ydCBHbHlwaEluZm8gZnJvbSAnLi4vR2x5cGhJbmZvJztcblxuLyoqXG4gKiBUaGlzIGlzIGEgc2hhcGVyIGZvciB0aGUgSGFuZ3VsIHNjcmlwdCwgdXNlZCBieSB0aGUgS29yZWFuIGxhbmd1YWdlLlxuICogSXQgZG9lcyB0aGUgZm9sbG93aW5nOlxuICogICAtIGRlY29tcG9zZSBpZiB1bnN1cHBvcnRlZCBieSB0aGUgZm9udDpcbiAqICAgICA8TFY+ICAgLT4gPEwsVj5cbiAqICAgICA8TFZUPiAgLT4gPEwsVixUPlxuICogICAgIDxMVixUPiAtPiA8TCxWLFQ+XG4gKlxuICogICAtIGNvbXBvc2UgaWYgc3VwcG9ydGVkIGJ5IHRoZSBmb250OlxuICogICAgIDxMLFY+ICAgLT4gPExWPlxuICogICAgIDxMLFYsVD4gLT4gPExWVD5cbiAqICAgICA8TFYsVD4gIC0+IDxMVlQ+XG4gKlxuICogICAtIHJlb3JkZXIgdG9uZSBtYXJrcyAoUyBpcyBhbnkgdmFsaWQgc3lsbGFibGUpOlxuICogICAgIDxTLCBNPiAtPiA8TSwgUz5cbiAqXG4gKiAgIC0gYXBwbHkgbGptbywgdmptbywgYW5kIHRqbW8gT3BlblR5cGUgZmVhdHVyZXMgdG8gZGVjb21wb3NlZCBKYW1vIHNlcXVlbmNlcy5cbiAqXG4gKiBUaGlzIGxvZ2ljIGlzIGJhc2VkIG9uIHRoZSBmb2xsb3dpbmcgZG9jdW1lbnRzOlxuICogICAtIGh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS90eXBvZ3JhcGh5L09wZW5UeXBlRGV2L2hhbmd1bC9pbnRyby5odG1cbiAqICAgLSBodHRwOi8va3R1Zy5vcmcvfm5vbW9zL2hhcmZidXp6LWhhbmd1bC9oYW5ndWxzaGFwZXIucGRmXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEhhbmd1bFNoYXBlciBleHRlbmRzIERlZmF1bHRTaGFwZXIge1xuICBzdGF0aWMgemVyb01hcmtXaWR0aHMgPSAnTk9ORSc7XG4gIHN0YXRpYyBwbGFuRmVhdHVyZXMocGxhbikge1xuICAgIHBsYW4uYWRkKFsnbGptbycsICd2am1vJywgJ3RqbW8nXSwgZmFsc2UpO1xuICB9XG5cbiAgc3RhdGljIGFzc2lnbkZlYXR1cmVzKHBsYW4sIGdseXBocykge1xuICAgIGxldCBzdGF0ZSA9IDA7XG4gICAgbGV0IGkgPSAwO1xuICAgIHdoaWxlIChpIDwgZ2x5cGhzLmxlbmd0aCkge1xuICAgICAgbGV0IGFjdGlvbjtcbiAgICAgIGxldCBnbHlwaCA9IGdseXBoc1tpXTtcbiAgICAgIGxldCBjb2RlID0gZ2x5cGguY29kZVBvaW50c1swXTtcbiAgICAgIGxldCB0eXBlID0gZ2V0VHlwZShjb2RlKTtcblxuICAgICAgWyBhY3Rpb24sIHN0YXRlIF0gPSBTVEFURV9UQUJMRVtzdGF0ZV1bdHlwZV07XG5cbiAgICAgIHN3aXRjaCAoYWN0aW9uKSB7XG4gICAgICAgIGNhc2UgREVDT01QT1NFOlxuICAgICAgICAgIC8vIERlY29tcG9zZSB0aGUgY29tcG9zZWQgc3lsbGFibGUgaWYgaXQgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgZm9udC5cbiAgICAgICAgICBpZiAoIXBsYW4uZm9udC5oYXNHbHlwaEZvckNvZGVQb2ludChjb2RlKSkge1xuICAgICAgICAgICAgaSA9IGRlY29tcG9zZShnbHlwaHMsIGksIHBsYW4uZm9udCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgQ09NUE9TRTpcbiAgICAgICAgICAvLyBGb3VuZCBhIGRlY29tcG9zZWQgc3lsbGFibGUuIFRyeSB0byBjb21wb3NlIGlmIHN1cHBvcnRlZCBieSB0aGUgZm9udC5cbiAgICAgICAgICBpID0gY29tcG9zZShnbHlwaHMsIGksIHBsYW4uZm9udCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBUT05FX01BUks6XG4gICAgICAgICAgLy8gR290IGEgdmFsaWQgc3lsbGFibGUsIGZvbGxvd2VkIGJ5IGEgdG9uZSBtYXJrLiBNb3ZlIHRoZSB0b25lIG1hcmsgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgc3lsbGFibGUuXG4gICAgICAgICAgcmVvcmRlclRvbmVNYXJrKGdseXBocywgaSwgcGxhbi5mb250KTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIElOVkFMSUQ6XG4gICAgICAgICAgLy8gVG9uZSBtYXJrIGhhcyBubyB2YWxpZCBzeWxsYWJsZSB0byBhdHRhY2ggdG8sIHNvIGluc2VydCBhIGRvdHRlZCBjaXJjbGVcbiAgICAgICAgICBpID0gaW5zZXJ0RG90dGVkQ2lyY2xlKGdseXBocywgaSwgcGxhbi5mb250KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgaSsrO1xuICAgIH1cbiAgfVxufVxuXG5jb25zdCBIQU5HVUxfQkFTRSAgPSAweGFjMDA7XG5jb25zdCBIQU5HVUxfRU5EICAgPSAweGQ3YTQ7XG5jb25zdCBIQU5HVUxfQ09VTlQgPSBIQU5HVUxfRU5EIC0gSEFOR1VMX0JBU0UgKyAxO1xuY29uc3QgTF9CQVNFICA9IDB4MTEwMDsgLy8gbGVhZFxuY29uc3QgVl9CQVNFICA9IDB4MTE2MTsgLy8gdm93ZWxcbmNvbnN0IFRfQkFTRSAgPSAweDExYTc7IC8vIHRyYWlsXG5jb25zdCBMX0NPVU5UID0gMTk7XG5jb25zdCBWX0NPVU5UID0gMjE7XG5jb25zdCBUX0NPVU5UID0gMjg7XG5jb25zdCBMX0VORCAgID0gTF9CQVNFICsgTF9DT1VOVCAtIDE7XG5jb25zdCBWX0VORCAgID0gVl9CQVNFICsgVl9DT1VOVCAtIDE7XG5jb25zdCBUX0VORCAgID0gVF9CQVNFICsgVF9DT1VOVCAtIDE7XG5jb25zdCBET1RURURfQ0lSQ0xFID0gMHgyNWNjO1xuXG5jb25zdCBpc0wgICAgPSBjb2RlID0+IDB4MTEwMCA8PSBjb2RlICYmIGNvZGUgPD0gMHgxMTVmIHx8IDB4YTk2MCA8PSBjb2RlICYmIGNvZGUgPD0gMHhhOTdjO1xuY29uc3QgaXNWICAgID0gY29kZSA9PiAweDExNjAgPD0gY29kZSAmJiBjb2RlIDw9IDB4MTFhNyB8fCAweGQ3YjAgPD0gY29kZSAmJiBjb2RlIDw9IDB4ZDdjNjtcbmNvbnN0IGlzVCAgICA9IGNvZGUgPT4gMHgxMWE4IDw9IGNvZGUgJiYgY29kZSA8PSAweDExZmYgfHwgMHhkN2NiIDw9IGNvZGUgJiYgY29kZSA8PSAweGQ3ZmI7XG5jb25zdCBpc1RvbmUgPSBjb2RlID0+IDB4MzAyZSA8PSBjb2RlICYmIGNvZGUgPD0gMHgzMDJmO1xuY29uc3QgaXNMVlQgID0gY29kZSA9PiBIQU5HVUxfQkFTRSA8PSBjb2RlICYmIGNvZGUgPD0gSEFOR1VMX0VORDtcbmNvbnN0IGlzTFYgICA9IGNvZGUgPT4gKGNvZGUgLSBIQU5HVUxfQkFTRSkgPCBIQU5HVUxfQ09VTlQgJiYgKGNvZGUgLSBIQU5HVUxfQkFTRSkgJSBUX0NPVU5UID09PSAwO1xuY29uc3QgaXNDb21iaW5pbmdMID0gY29kZSA9PiBMX0JBU0UgPD0gY29kZSAmJiBjb2RlIDw9IExfRU5EO1xuY29uc3QgaXNDb21iaW5pbmdWID0gY29kZSA9PiBWX0JBU0UgPD0gY29kZSAmJiBjb2RlIDw9IFZfRU5EO1xuY29uc3QgaXNDb21iaW5pbmdUID0gY29kZSA9PiBUX0JBU0UgKyAxICYmIDEgPD0gY29kZSAmJiBjb2RlIDw9IFRfRU5EO1xuXG4vLyBDaGFyYWN0ZXIgY2F0ZWdvcmllc1xuY29uc3QgWCAgID0gMDsgLy8gT3RoZXIgY2hhcmFjdGVyXG5jb25zdCBMICAgPSAxOyAvLyBMZWFkaW5nIGNvbnNvbmFudFxuY29uc3QgViAgID0gMjsgLy8gTWVkaWFsIHZvd2VsXG5jb25zdCBUICAgPSAzOyAvLyBUcmFpbGluZyBjb25zb25hbnRcbmNvbnN0IExWICA9IDQ7IC8vIENvbXBvc2VkIDxMVj4gc3lsbGFibGVcbmNvbnN0IExWVCA9IDU7IC8vIENvbXBvc2VkIDxMVlQ+IHN5bGxhYmxlXG5jb25zdCBNICAgPSA2OyAvLyBUb25lIG1hcmtcblxuLy8gVGhpcyBmdW5jdGlvbiBjbGFzc2lmaWVzIGEgY2hhcmFjdGVyIHVzaW5nIHRoZSBhYm92ZSBjYXRlZ29yaWVzLlxuZnVuY3Rpb24gZ2V0VHlwZShjb2RlKSB7XG4gIGlmIChpc0woY29kZSkpICAgIHsgcmV0dXJuIEw7IH1cbiAgaWYgKGlzVihjb2RlKSkgICAgeyByZXR1cm4gVjsgfVxuICBpZiAoaXNUKGNvZGUpKSAgICB7IHJldHVybiBUOyB9XG4gIGlmIChpc0xWKGNvZGUpKSAgIHsgcmV0dXJuIExWOyB9XG4gIGlmIChpc0xWVChjb2RlKSkgIHsgcmV0dXJuIExWVDsgfVxuICBpZiAoaXNUb25lKGNvZGUpKSB7IHJldHVybiBNOyB9XG4gIHJldHVybiBYO1xufVxuXG4vLyBTdGF0ZSBtYWNoaW5lIGFjdGlvbnNcbmNvbnN0IE5PX0FDVElPTiA9IDA7XG5jb25zdCBERUNPTVBPU0UgPSAxO1xuY29uc3QgQ09NUE9TRSAgID0gMjtcbmNvbnN0IFRPTkVfTUFSSyA9IDQ7XG5jb25zdCBJTlZBTElEICAgPSA1O1xuXG4vLyBCdWlsZCBhIHN0YXRlIG1hY2hpbmUgdGhhdCBhY2NlcHRzIHZhbGlkIHN5bGxhYmxlcywgYW5kIGFwcGxpZXMgYWN0aW9ucyBhbG9uZyB0aGUgd2F5LlxuLy8gVGhlIGxvZ2ljIHRoaXMgaXMgaW1wbGVtZW50aW5nIGlzIGRvY3VtZW50ZWQgYXQgdGhlIHRvcCBvZiB0aGUgZmlsZS5cbmNvbnN0IFNUQVRFX1RBQkxFID0gW1xuICAvLyAgICAgICBYICAgICAgICAgICAgICAgICBMICAgICAgICAgICAgICAgICBWICAgICAgICAgICAgICAgIFQgICAgICAgICAgICAgICAgICBMViAgICAgICAgICAgICAgICBMVlQgICAgICAgICAgICAgICBNXG4gIC8vIFN0YXRlIDA6IHN0YXJ0IHN0YXRlXG4gIFsgWyBOT19BQ1RJT04sIDAgXSwgWyBOT19BQ1RJT04sIDEgXSwgWyBOT19BQ1RJT04sIDAgXSwgWyBOT19BQ1RJT04sIDAgXSwgWyBERUNPTVBPU0UsIDIgXSwgWyBERUNPTVBPU0UsIDMgXSwgWyAgSU5WQUxJRCwgMCAgXSBdLFxuXG4gIC8vIFN0YXRlIDE6IDxMPlxuICBbIFsgTk9fQUNUSU9OLCAwIF0sIFsgTk9fQUNUSU9OLCAxIF0sIFsgIENPTVBPU0UsIDIgIF0sIFsgTk9fQUNUSU9OLCAwIF0sIFsgREVDT01QT1NFLCAyIF0sIFsgREVDT01QT1NFLCAzIF0sIFsgIElOVkFMSUQsIDAgIF0gXSxcblxuICAvLyBTdGF0ZSAyOiA8TCxWPiBvciA8TFY+XG4gIFsgWyBOT19BQ1RJT04sIDAgXSwgWyBOT19BQ1RJT04sIDEgXSwgWyBOT19BQ1RJT04sIDAgXSwgWyAgQ09NUE9TRSwgMyAgXSwgWyBERUNPTVBPU0UsIDIgXSwgWyBERUNPTVBPU0UsIDMgXSwgWyBUT05FX01BUkssIDAgXSBdLFxuXG4gIC8vIFN0YXRlIDM6IDxMLFYsVD4gb3IgPExWVD5cbiAgWyBbIE5PX0FDVElPTiwgMCBdLCBbIE5PX0FDVElPTiwgMSBdLCBbIE5PX0FDVElPTiwgMCBdLCBbIE5PX0FDVElPTiwgMCBdLCBbIERFQ09NUE9TRSwgMiBdLCBbIERFQ09NUE9TRSwgMyBdLCBbIFRPTkVfTUFSSywgMCBdIF1cbl07XG5cbmZ1bmN0aW9uIGdldEdseXBoKGZvbnQsIGNvZGUsIGZlYXR1cmVzKSB7XG4gIHJldHVybiBuZXcgR2x5cGhJbmZvKGZvbnQsIGZvbnQuZ2x5cGhGb3JDb2RlUG9pbnQoY29kZSkuaWQsIFtjb2RlXSwgZmVhdHVyZXMpO1xufVxuXG5mdW5jdGlvbiBkZWNvbXBvc2UoZ2x5cGhzLCBpLCBmb250KSB7XG4gIGxldCBnbHlwaCA9IGdseXBoc1tpXTtcbiAgbGV0IGNvZGUgPSBnbHlwaC5jb2RlUG9pbnRzWzBdO1xuXG4gIGxldCBzID0gY29kZSAtIEhBTkdVTF9CQVNFO1xuICBsZXQgdCA9IFRfQkFTRSArIHMgJSBUX0NPVU5UO1xuICBzID0gcyAvIFRfQ09VTlQgfCAwO1xuICBsZXQgbCA9IExfQkFTRSArIHMgLyBWX0NPVU5UIHwgMDtcbiAgbGV0IHYgPSBWX0JBU0UgKyBzICUgVl9DT1VOVDtcblxuICAvLyBEb24ndCBkZWNvbXBvc2UgaWYgYWxsIG9mIHRoZSBjb21wb25lbnRzIGFyZSBub3QgYXZhaWxhYmxlXG4gIGlmICghZm9udC5oYXNHbHlwaEZvckNvZGVQb2ludChsKSB8fFxuICAgICAgIWZvbnQuaGFzR2x5cGhGb3JDb2RlUG9pbnQodikgfHxcbiAgICAgICh0ICE9PSBUX0JBU0UgJiYgIWZvbnQuaGFzR2x5cGhGb3JDb2RlUG9pbnQodCkpKSB7XG4gICAgcmV0dXJuIGk7XG4gIH1cblxuICAvLyBSZXBsYWNlIHRoZSBjdXJyZW50IGdseXBoIHdpdGggZGVjb21wb3NlZCBMLCBWLCBhbmQgVCBnbHlwaHMsXG4gIC8vIGFuZCBhcHBseSB0aGUgcHJvcGVyIE9wZW5UeXBlIGZlYXR1cmVzIHRvIGVhY2ggY29tcG9uZW50LlxuICBsZXQgbGptbyA9IGdldEdseXBoKGZvbnQsIGwsIGdseXBoLmZlYXR1cmVzKTtcbiAgbGptby5mZWF0dXJlcy5sam1vID0gdHJ1ZTtcblxuICBsZXQgdmptbyA9IGdldEdseXBoKGZvbnQsIHYsIGdseXBoLmZlYXR1cmVzKTtcbiAgdmptby5mZWF0dXJlcy52am1vID0gdHJ1ZTtcblxuICBsZXQgaW5zZXJ0ID0gWyBsam1vLCB2am1vIF07XG5cbiAgaWYgKHQgPiBUX0JBU0UpIHtcbiAgICBsZXQgdGptbyA9IGdldEdseXBoKGZvbnQsIHQsIGdseXBoLmZlYXR1cmVzKTtcbiAgICB0am1vLmZlYXR1cmVzLnRqbW8gPSB0cnVlO1xuICAgIGluc2VydC5wdXNoKHRqbW8pO1xuICB9XG5cbiAgZ2x5cGhzLnNwbGljZShpLCAxLCAuLi5pbnNlcnQpO1xuICByZXR1cm4gaSArIGluc2VydC5sZW5ndGggLSAxO1xufVxuXG5mdW5jdGlvbiBjb21wb3NlKGdseXBocywgaSwgZm9udCkge1xuICBsZXQgZ2x5cGggPSBnbHlwaHNbaV07XG4gIGxldCBjb2RlID0gZ2x5cGhzW2ldLmNvZGVQb2ludHNbMF07XG4gIGxldCB0eXBlID0gZ2V0VHlwZShjb2RlKTtcblxuICBsZXQgcHJldiA9IGdseXBoc1tpIC0gMV0uY29kZVBvaW50c1swXTtcbiAgbGV0IHByZXZUeXBlID0gZ2V0VHlwZShwcmV2KTtcblxuICAvLyBGaWd1cmUgb3V0IHdoYXQgdHlwZSBvZiBzeWxsYWJsZSB3ZSdyZSBkZWFsaW5nIHdpdGhcbiAgbGV0IGx2LCBsam1vLCB2am1vLCB0am1vO1xuICBpZiAocHJldlR5cGUgPT09IExWICYmIHR5cGUgPT09IFQpIHtcbiAgICAvLyA8TFYsVD5cbiAgICBsdiA9IHByZXY7XG4gICAgdGptbyA9IGdseXBoO1xuICB9IGVsc2Uge1xuICAgIGlmICh0eXBlID09PSBWKSB7XG4gICAgICAvLyA8TCxWPlxuICAgICAgbGptbyA9IGdseXBoc1tpIC0gMV07XG4gICAgICB2am1vID0gZ2x5cGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIDxMLFYsVD5cbiAgICAgIGxqbW8gPSBnbHlwaHNbaSAtIDJdO1xuICAgICAgdmptbyA9IGdseXBoc1tpIC0gMV07XG4gICAgICB0am1vID0gZ2x5cGg7XG4gICAgfVxuXG4gICAgbGV0IGwgPSBsam1vLmNvZGVQb2ludHNbMF07XG4gICAgbGV0IHYgPSB2am1vLmNvZGVQb2ludHNbMF07XG5cbiAgICAvLyBNYWtlIHN1cmUgTCBhbmQgViBhcmUgY29tYmluaW5nIGNoYXJhY3RlcnNcbiAgICBpZiAoaXNDb21iaW5pbmdMKGwpICYmIGlzQ29tYmluaW5nVih2KSkge1xuICAgICAgbHYgPSBIQU5HVUxfQkFTRSArICgobCAtIExfQkFTRSkgKiBWX0NPVU5UICsgKHYgLSBWX0JBU0UpKSAqIFRfQ09VTlQ7XG4gICAgfVxuICB9XG5cbiAgbGV0IHQgPSAodGptbyAmJiB0am1vLmNvZGVQb2ludHNbMF0pIHx8IFRfQkFTRTtcbiAgaWYgKChsdiAhPSBudWxsKSAmJiAodCA9PT0gVF9CQVNFIHx8IGlzQ29tYmluaW5nVCh0KSkpIHtcbiAgICBsZXQgcyA9IGx2ICsgKHQgLSBUX0JBU0UpO1xuXG4gICAgLy8gUmVwbGFjZSB3aXRoIGEgY29tcG9zZWQgZ2x5cGggaWYgc3VwcG9ydGVkIGJ5IHRoZSBmb250LFxuICAgIC8vIG90aGVyd2lzZSBhcHBseSB0aGUgcHJvcGVyIE9wZW5UeXBlIGZlYXR1cmVzIHRvIGVhY2ggY29tcG9uZW50LlxuICAgIGlmIChmb250Lmhhc0dseXBoRm9yQ29kZVBvaW50KHMpKSB7XG4gICAgICBsZXQgZGVsID0gcHJldlR5cGUgPT09IFYgPyAzIDogMjtcbiAgICAgIGdseXBocy5zcGxpY2UoaSAtIGRlbCArIDEsIGRlbCwgZ2V0R2x5cGgoZm9udCwgcywgZ2x5cGguZmVhdHVyZXMpKTtcbiAgICAgIHJldHVybiBpIC0gZGVsICsgMTtcbiAgICB9XG4gIH1cblxuICAvLyBEaWRuJ3QgY29tcG9zZSAoZWl0aGVyIGEgbm9uLWNvbWJpbmluZyBjb21wb25lbnQgb3IgdW5zdXBwb3J0ZWQgYnkgZm9udCkuXG4gIGlmIChsam1vKSB7IGxqbW8uZmVhdHVyZXMubGptbyA9IHRydWU7IH1cbiAgaWYgKHZqbW8pIHsgdmptby5mZWF0dXJlcy52am1vID0gdHJ1ZTsgfVxuICBpZiAodGptbykgeyB0am1vLmZlYXR1cmVzLnRqbW8gPSB0cnVlOyB9XG5cbiAgaWYgKHByZXZUeXBlID09PSBMVikge1xuICAgIC8vIFNlcXVlbmNlIHdhcyBvcmlnaW5hbGx5IDxMLFY+LCB3aGljaCBnb3QgY29tYmluZWQgZWFybGllci5cbiAgICAvLyBFaXRoZXIgdGhlIFQgd2FzIG5vbi1jb21iaW5pbmcsIG9yIHRoZSBMVlQgZ2x5cGggd2Fzbid0IHN1cHBvcnRlZC5cbiAgICAvLyBEZWNvbXBvc2UgdGhlIGdseXBoIGFnYWluIGFuZCBhcHBseSBPVCBmZWF0dXJlcy5cbiAgICBkZWNvbXBvc2UoZ2x5cGhzLCBpIC0gMSwgZm9udCk7XG4gICAgcmV0dXJuIGkgKyAxO1xuICB9XG5cbiAgcmV0dXJuIGk7XG59XG5cbmZ1bmN0aW9uIGdldExlbmd0aChjb2RlKSB7XG4gIHN3aXRjaCAoZ2V0VHlwZShjb2RlKSkge1xuICAgIGNhc2UgTFY6XG4gICAgY2FzZSBMVlQ6XG4gICAgICByZXR1cm4gMTtcbiAgICBjYXNlIFY6XG4gICAgICByZXR1cm4gMjtcbiAgICBjYXNlIFQ6XG4gICAgICByZXR1cm4gMztcbiAgfVxufVxuXG5mdW5jdGlvbiByZW9yZGVyVG9uZU1hcmsoZ2x5cGhzLCBpLCBmb250KSB7XG4gIGxldCBnbHlwaCA9IGdseXBoc1tpXTtcbiAgbGV0IGNvZGUgPSBnbHlwaHNbaV0uY29kZVBvaW50c1swXTtcblxuICAvLyBNb3ZlIHRvbmUgbWFyayB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBwcmV2aW91cyBzeWxsYWJsZSwgdW5sZXNzIGl0IGlzIHplcm8gd2lkdGhcbiAgaWYgKGZvbnQuZ2x5cGhGb3JDb2RlUG9pbnQoY29kZSkuYWR2YW5jZVdpZHRoID09PSAwKSB7IHJldHVybjsgfVxuXG4gIGxldCBwcmV2ID0gZ2x5cGhzW2kgLSAxXS5jb2RlUG9pbnRzWzBdO1xuICBsZXQgbGVuID0gZ2V0TGVuZ3RoKHByZXYpO1xuXG4gIGdseXBocy5zcGxpY2UoaSwgMSk7XG4gIHJldHVybiBnbHlwaHMuc3BsaWNlKGkgLSBsZW4sIDAsIGdseXBoKTtcbn1cblxuZnVuY3Rpb24gaW5zZXJ0RG90dGVkQ2lyY2xlKGdseXBocywgaSwgZm9udCkge1xuICBsZXQgZ2x5cGggPSBnbHlwaHNbaV07XG4gIGxldCBjb2RlID0gZ2x5cGhzW2ldLmNvZGVQb2ludHNbMF07XG5cbiAgaWYgKGZvbnQuaGFzR2x5cGhGb3JDb2RlUG9pbnQoRE9UVEVEX0NJUkNMRSkpIHtcbiAgICBsZXQgZG90dGVkQ2lyY2xlID0gZ2V0R2x5cGgoZm9udCwgRE9UVEVEX0NJUkNMRSwgZ2x5cGguZmVhdHVyZXMpO1xuXG4gICAgLy8gSWYgdGhlIHRvbmUgbWFyayBpcyB6ZXJvIHdpZHRoLCBpbnNlcnQgdGhlIGRvdHRlZCBjaXJjbGUgYmVmb3JlLCBvdGhlcndpc2UgYWZ0ZXJcbiAgICBsZXQgaWR4ID0gZm9udC5nbHlwaEZvckNvZGVQb2ludChjb2RlKS5hZHZhbmNlV2lkdGggPT09IDAgPyBpIDogaSArIDE7XG4gICAgZ2x5cGhzLnNwbGljZShpZHgsIDAsIGRvdHRlZENpcmNsZSk7XG4gICAgaSsrO1xuICB9XG5cbiAgcmV0dXJuIGk7XG59XG4iLCAiaW1wb3J0IHtpc01hcmt9IGZyb20gJ3VuaWNvZGUtcHJvcGVydGllcyc7XG5pbXBvcnQgT1RQcm9jZXNzb3IgZnJvbSAnLi9PVFByb2Nlc3Nvcic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdseXBoSW5mbyB7XG4gIGNvbnN0cnVjdG9yKGZvbnQsIGlkLCBjb2RlUG9pbnRzID0gW10sIGZlYXR1cmVzKSB7XG4gICAgdGhpcy5fZm9udCA9IGZvbnQ7XG4gICAgdGhpcy5jb2RlUG9pbnRzID0gY29kZVBvaW50cztcbiAgICB0aGlzLmlkID0gaWQ7XG5cbiAgICB0aGlzLmZlYXR1cmVzID0ge307XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZmVhdHVyZXMpKSB7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZlYXR1cmVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGxldCBmZWF0dXJlID0gZmVhdHVyZXNbaV07XG4gICAgICAgIHRoaXMuZmVhdHVyZXNbZmVhdHVyZV0gPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGZlYXR1cmVzID09PSAnb2JqZWN0Jykge1xuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLmZlYXR1cmVzLCBmZWF0dXJlcyk7XG4gICAgfVxuXG4gICAgdGhpcy5saWdhdHVyZUlEID0gbnVsbDtcbiAgICB0aGlzLmxpZ2F0dXJlQ29tcG9uZW50ID0gbnVsbDtcbiAgICB0aGlzLmlzTGlnYXRlZCA9IGZhbHNlO1xuICAgIHRoaXMuY3Vyc2l2ZUF0dGFjaG1lbnQgPSBudWxsO1xuICAgIHRoaXMubWFya0F0dGFjaG1lbnQgPSBudWxsO1xuICAgIHRoaXMuc2hhcGVySW5mbyA9IG51bGw7XG4gICAgdGhpcy5zdWJzdGl0dXRlZCA9IGZhbHNlO1xuICAgIHRoaXMuaXNNdWx0aXBsaWVkID0gZmFsc2U7XG4gIH1cblxuICBnZXQgaWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgc2V0IGlkKGlkKSB7XG4gICAgdGhpcy5faWQgPSBpZDtcbiAgICB0aGlzLnN1YnN0aXR1dGVkID0gdHJ1ZTtcblxuICAgIGxldCBHREVGID0gdGhpcy5fZm9udC5HREVGO1xuICAgIGlmIChHREVGICYmIEdERUYuZ2x5cGhDbGFzc0RlZikge1xuICAgICAgLy8gVE9ETzogY2xlYW4gdGhpcyB1cFxuICAgICAgbGV0IGNsYXNzSUQgPSBPVFByb2Nlc3Nvci5wcm90b3R5cGUuZ2V0Q2xhc3NJRChpZCwgR0RFRi5nbHlwaENsYXNzRGVmKTtcbiAgICAgIHRoaXMuaXNCYXNlID0gY2xhc3NJRCA9PT0gMTtcbiAgICAgIHRoaXMuaXNMaWdhdHVyZSA9IGNsYXNzSUQgPT09IDI7XG4gICAgICB0aGlzLmlzTWFyayA9IGNsYXNzSUQgPT09IDM7XG4gICAgICB0aGlzLm1hcmtBdHRhY2htZW50VHlwZSA9IEdERUYubWFya0F0dGFjaENsYXNzRGVmID8gT1RQcm9jZXNzb3IucHJvdG90eXBlLmdldENsYXNzSUQoaWQsIEdERUYubWFya0F0dGFjaENsYXNzRGVmKSA6IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNNYXJrID0gdGhpcy5jb2RlUG9pbnRzLmxlbmd0aCA+IDAgJiYgdGhpcy5jb2RlUG9pbnRzLmV2ZXJ5KGlzTWFyayk7XG4gICAgICB0aGlzLmlzQmFzZSA9ICF0aGlzLmlzTWFyaztcbiAgICAgIHRoaXMuaXNMaWdhdHVyZSA9IHRoaXMuY29kZVBvaW50cy5sZW5ndGggPiAxO1xuICAgICAgdGhpcy5tYXJrQXR0YWNobWVudFR5cGUgPSAwO1xuICAgIH1cbiAgfVxuXG4gIGNvcHkoKSB7XG4gICAgcmV0dXJuIG5ldyBHbHlwaEluZm8odGhpcy5fZm9udCwgdGhpcy5pZCwgdGhpcy5jb2RlUG9pbnRzLCB0aGlzLmZlYXR1cmVzKTtcbiAgfVxufVxuIiwgImltcG9ydCBHbHlwaEl0ZXJhdG9yIGZyb20gJy4vR2x5cGhJdGVyYXRvcic7XG5pbXBvcnQgKiBhcyBTY3JpcHQgZnJvbSAnLi4vbGF5b3V0L1NjcmlwdCc7XG5cbmNvbnN0IERFRkFVTFRfU0NSSVBUUyA9IFsnREZMVCcsICdkZmx0JywgJ2xhdG4nXTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgT1RQcm9jZXNzb3Ige1xuICBjb25zdHJ1Y3Rvcihmb250LCB0YWJsZSkge1xuICAgIHRoaXMuZm9udCA9IGZvbnQ7XG4gICAgdGhpcy50YWJsZSA9IHRhYmxlO1xuXG4gICAgdGhpcy5zY3JpcHQgPSBudWxsO1xuICAgIHRoaXMuc2NyaXB0VGFnID0gbnVsbDtcblxuICAgIHRoaXMubGFuZ3VhZ2UgPSBudWxsO1xuICAgIHRoaXMubGFuZ3VhZ2VUYWcgPSBudWxsO1xuXG4gICAgdGhpcy5mZWF0dXJlcyA9IHt9O1xuICAgIHRoaXMubG9va3VwcyA9IHt9O1xuXG4gICAgLy8gU2V0dXAgdmFyaWF0aW9uIHN1YnN0aXR1dGlvbnNcbiAgICB0aGlzLnZhcmlhdGlvbnNJbmRleCA9IGZvbnQuX3ZhcmlhdGlvblByb2Nlc3NvclxuICAgICAgPyB0aGlzLmZpbmRWYXJpYXRpb25zSW5kZXgoZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yLm5vcm1hbGl6ZWRDb29yZHMpXG4gICAgICA6IC0xO1xuXG4gICAgLy8gaW5pdGlhbGl6ZSB0byBkZWZhdWx0IHNjcmlwdCArIGxhbmd1YWdlXG4gICAgdGhpcy5zZWxlY3RTY3JpcHQoKTtcblxuICAgIC8vIGN1cnJlbnQgY29udGV4dCAoc2V0IGJ5IGFwcGx5RmVhdHVyZXMpXG4gICAgdGhpcy5nbHlwaHMgPSBbXTtcbiAgICB0aGlzLnBvc2l0aW9ucyA9IFtdOyAvLyBvbmx5IHVzZWQgYnkgR1BPU1xuICAgIHRoaXMubGlnYXR1cmVJRCA9IDE7XG4gICAgdGhpcy5jdXJyZW50RmVhdHVyZSA9IG51bGw7XG4gIH1cblxuICBmaW5kU2NyaXB0KHNjcmlwdCkge1xuICAgIGlmICh0aGlzLnRhYmxlLnNjcmlwdExpc3QgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHNjcmlwdCkpIHtcbiAgICAgIHNjcmlwdCA9IFtzY3JpcHRdO1xuICAgIH1cblxuICAgIGZvciAobGV0IHMgb2Ygc2NyaXB0KSB7XG4gICAgICBmb3IgKGxldCBlbnRyeSBvZiB0aGlzLnRhYmxlLnNjcmlwdExpc3QpIHtcbiAgICAgICAgaWYgKGVudHJ5LnRhZyA9PT0gcykge1xuICAgICAgICAgIHJldHVybiBlbnRyeTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgc2VsZWN0U2NyaXB0KHNjcmlwdCwgbGFuZ3VhZ2UsIGRpcmVjdGlvbikge1xuICAgIGxldCBjaGFuZ2VkID0gZmFsc2U7XG4gICAgbGV0IGVudHJ5O1xuICAgIGlmICghdGhpcy5zY3JpcHQgfHwgc2NyaXB0ICE9PSB0aGlzLnNjcmlwdFRhZykge1xuICAgICAgZW50cnkgPSB0aGlzLmZpbmRTY3JpcHQoc2NyaXB0KTtcbiAgICAgIGlmICghZW50cnkpIHtcbiAgICAgICAgZW50cnkgPSB0aGlzLmZpbmRTY3JpcHQoREVGQVVMVF9TQ1JJUFRTKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFlbnRyeSkge1xuICAgICAgICByZXR1cm4gdGhpcy5zY3JpcHRUYWc7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2NyaXB0VGFnID0gZW50cnkudGFnO1xuICAgICAgdGhpcy5zY3JpcHQgPSBlbnRyeS5zY3JpcHQ7XG4gICAgICB0aGlzLmxhbmd1YWdlID0gbnVsbDtcbiAgICAgIHRoaXMubGFuZ3VhZ2VUYWcgPSBudWxsO1xuICAgICAgY2hhbmdlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKCFkaXJlY3Rpb24gfHwgZGlyZWN0aW9uICE9PSB0aGlzLmRpcmVjdGlvbikge1xuICAgICAgdGhpcy5kaXJlY3Rpb24gPSBkaXJlY3Rpb24gfHwgU2NyaXB0LmRpcmVjdGlvbihzY3JpcHQpO1xuICAgIH1cblxuICAgIGlmIChsYW5ndWFnZSAmJiBsYW5ndWFnZS5sZW5ndGggPCA0KSB7XG4gICAgICBsYW5ndWFnZSArPSAnICcucmVwZWF0KDQgLSBsYW5ndWFnZS5sZW5ndGgpO1xuICAgIH1cblxuICAgIGlmICghbGFuZ3VhZ2UgfHwgbGFuZ3VhZ2UgIT09IHRoaXMubGFuZ3VhZ2VUYWcpIHtcbiAgICAgIHRoaXMubGFuZ3VhZ2UgPSBudWxsO1xuXG4gICAgICBmb3IgKGxldCBsYW5nIG9mIHRoaXMuc2NyaXB0LmxhbmdTeXNSZWNvcmRzKSB7XG4gICAgICAgIGlmIChsYW5nLnRhZyA9PT0gbGFuZ3VhZ2UpIHtcbiAgICAgICAgICB0aGlzLmxhbmd1YWdlID0gbGFuZy5sYW5nU3lzO1xuICAgICAgICAgIHRoaXMubGFuZ3VhZ2VUYWcgPSBsYW5nLnRhZztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMubGFuZ3VhZ2UpIHtcbiAgICAgICAgdGhpcy5sYW5ndWFnZSA9IHRoaXMuc2NyaXB0LmRlZmF1bHRMYW5nU3lzO1xuICAgICAgICB0aGlzLmxhbmd1YWdlVGFnID0gbnVsbDtcbiAgICAgIH1cblxuICAgICAgY2hhbmdlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgLy8gQnVpbGQgYSBmZWF0dXJlIGxvb2t1cCB0YWJsZVxuICAgIGlmIChjaGFuZ2VkKSB7XG4gICAgICB0aGlzLmZlYXR1cmVzID0ge307XG4gICAgICBpZiAodGhpcy5sYW5ndWFnZSkge1xuICAgICAgICBmb3IgKGxldCBmZWF0dXJlSW5kZXggb2YgdGhpcy5sYW5ndWFnZS5mZWF0dXJlSW5kZXhlcykge1xuICAgICAgICAgIGxldCByZWNvcmQgPSB0aGlzLnRhYmxlLmZlYXR1cmVMaXN0W2ZlYXR1cmVJbmRleF07XG4gICAgICAgICAgbGV0IHN1YnN0aXR1dGVGZWF0dXJlID0gdGhpcy5zdWJzdGl0dXRlRmVhdHVyZUZvclZhcmlhdGlvbnMoZmVhdHVyZUluZGV4KTtcbiAgICAgICAgICB0aGlzLmZlYXR1cmVzW3JlY29yZC50YWddID0gc3Vic3RpdHV0ZUZlYXR1cmUgfHwgcmVjb3JkLmZlYXR1cmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zY3JpcHRUYWc7XG4gIH1cblxuICBsb29rdXBzRm9yRmVhdHVyZXModXNlckZlYXR1cmVzID0gW10sIGV4Y2x1ZGUpIHtcbiAgICBsZXQgbG9va3VwcyA9IFtdO1xuICAgIGZvciAobGV0IHRhZyBvZiB1c2VyRmVhdHVyZXMpIHtcbiAgICAgIGxldCBmZWF0dXJlID0gdGhpcy5mZWF0dXJlc1t0YWddO1xuICAgICAgaWYgKCFmZWF0dXJlKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGxldCBsb29rdXBJbmRleCBvZiBmZWF0dXJlLmxvb2t1cExpc3RJbmRleGVzKSB7XG4gICAgICAgIGlmIChleGNsdWRlICYmIGV4Y2x1ZGUuaW5kZXhPZihsb29rdXBJbmRleCkgIT09IC0xKSB7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICBsb29rdXBzLnB1c2goe1xuICAgICAgICAgIGZlYXR1cmU6IHRhZyxcbiAgICAgICAgICBpbmRleDogbG9va3VwSW5kZXgsXG4gICAgICAgICAgbG9va3VwOiB0aGlzLnRhYmxlLmxvb2t1cExpc3QuZ2V0KGxvb2t1cEluZGV4KVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsb29rdXBzLnNvcnQoKGEsIGIpID0+IGEuaW5kZXggLSBiLmluZGV4KTtcbiAgICByZXR1cm4gbG9va3VwcztcbiAgfVxuXG4gIHN1YnN0aXR1dGVGZWF0dXJlRm9yVmFyaWF0aW9ucyhmZWF0dXJlSW5kZXgpIHtcbiAgICBpZiAodGhpcy52YXJpYXRpb25zSW5kZXggPT09IC0xKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgcmVjb3JkID0gdGhpcy50YWJsZS5mZWF0dXJlVmFyaWF0aW9ucy5mZWF0dXJlVmFyaWF0aW9uUmVjb3Jkc1t0aGlzLnZhcmlhdGlvbnNJbmRleF07XG4gICAgbGV0IHN1YnN0aXR1dGlvbnMgPSByZWNvcmQuZmVhdHVyZVRhYmxlU3Vic3RpdHV0aW9uLnN1YnN0aXR1dGlvbnM7XG4gICAgZm9yIChsZXQgc3Vic3RpdHV0aW9uIG9mIHN1YnN0aXR1dGlvbnMpIHtcbiAgICAgIGlmIChzdWJzdGl0dXRpb24uZmVhdHVyZUluZGV4ID09PSBmZWF0dXJlSW5kZXgpIHtcbiAgICAgICAgcmV0dXJuIHN1YnN0aXR1dGlvbi5hbHRlcm5hdGVGZWF0dXJlVGFibGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBmaW5kVmFyaWF0aW9uc0luZGV4KGNvb3Jkcykge1xuICAgIGxldCB2YXJpYXRpb25zID0gdGhpcy50YWJsZS5mZWF0dXJlVmFyaWF0aW9ucztcbiAgICBpZiAoIXZhcmlhdGlvbnMpIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG5cbiAgICBsZXQgcmVjb3JkcyA9IHZhcmlhdGlvbnMuZmVhdHVyZVZhcmlhdGlvblJlY29yZHM7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZWNvcmRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgY29uZGl0aW9ucyA9IHJlY29yZHNbaV0uY29uZGl0aW9uU2V0LmNvbmRpdGlvblRhYmxlO1xuICAgICAgaWYgKHRoaXMudmFyaWF0aW9uQ29uZGl0aW9uc01hdGNoKGNvbmRpdGlvbnMsIGNvb3JkcykpIHtcbiAgICAgICAgcmV0dXJuIGk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIC0xO1xuICB9XG5cbiAgdmFyaWF0aW9uQ29uZGl0aW9uc01hdGNoKGNvbmRpdGlvbnMsIGNvb3Jkcykge1xuICAgIHJldHVybiBjb25kaXRpb25zLmV2ZXJ5KGNvbmRpdGlvbiA9PiB7XG4gICAgICBsZXQgY29vcmQgPSBjb25kaXRpb24uYXhpc0luZGV4IDwgY29vcmRzLmxlbmd0aCA/IGNvb3Jkc1tjb25kaXRpb24uYXhpc0luZGV4XSA6IDA7XG4gICAgICByZXR1cm4gY29uZGl0aW9uLmZpbHRlclJhbmdlTWluVmFsdWUgPD0gY29vcmQgJiYgY29vcmQgPD0gY29uZGl0aW9uLmZpbHRlclJhbmdlTWF4VmFsdWU7XG4gICAgfSk7XG4gIH1cblxuICBhcHBseUZlYXR1cmVzKHVzZXJGZWF0dXJlcywgZ2x5cGhzLCBhZHZhbmNlcykge1xuICAgIGxldCBsb29rdXBzID0gdGhpcy5sb29rdXBzRm9yRmVhdHVyZXModXNlckZlYXR1cmVzKTtcbiAgICB0aGlzLmFwcGx5TG9va3Vwcyhsb29rdXBzLCBnbHlwaHMsIGFkdmFuY2VzKTtcbiAgfVxuXG4gIGFwcGx5TG9va3Vwcyhsb29rdXBzLCBnbHlwaHMsIHBvc2l0aW9ucykge1xuICAgIHRoaXMuZ2x5cGhzID0gZ2x5cGhzO1xuICAgIHRoaXMucG9zaXRpb25zID0gcG9zaXRpb25zO1xuICAgIHRoaXMuZ2x5cGhJdGVyYXRvciA9IG5ldyBHbHlwaEl0ZXJhdG9yKGdseXBocyk7XG5cbiAgICBmb3IgKGxldCB7IGZlYXR1cmUsIGxvb2t1cCB9IG9mIGxvb2t1cHMpIHtcbiAgICAgIHRoaXMuY3VycmVudEZlYXR1cmUgPSBmZWF0dXJlO1xuICAgICAgdGhpcy5nbHlwaEl0ZXJhdG9yLnJlc2V0KGxvb2t1cC5mbGFncyk7XG5cbiAgICAgIHdoaWxlICh0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXggPCBnbHlwaHMubGVuZ3RoKSB7XG4gICAgICAgIGlmICghKGZlYXR1cmUgaW4gdGhpcy5nbHlwaEl0ZXJhdG9yLmN1ci5mZWF0dXJlcykpIHtcbiAgICAgICAgICB0aGlzLmdseXBoSXRlcmF0b3IubmV4dCgpO1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgdGFibGUgb2YgbG9va3VwLnN1YlRhYmxlcykge1xuICAgICAgICAgIGxldCByZXMgPSB0aGlzLmFwcGx5TG9va3VwKGxvb2t1cC5sb29rdXBUeXBlLCB0YWJsZSk7XG4gICAgICAgICAgaWYgKHJlcykge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5nbHlwaEl0ZXJhdG9yLm5leHQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhcHBseUxvb2t1cChsb29rdXAsIHRhYmxlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiYXBwbHlMb29rdXAgbXVzdCBiZSBpbXBsZW1lbnRlZCBieSBzdWJjbGFzc2VzXCIpO1xuICB9XG5cbiAgYXBwbHlMb29rdXBMaXN0KGxvb2t1cFJlY29yZHMpIHtcbiAgICBsZXQgb3B0aW9ucyA9IHRoaXMuZ2x5cGhJdGVyYXRvci5vcHRpb25zO1xuICAgIGxldCBnbHlwaEluZGV4ID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4O1xuXG4gICAgZm9yIChsZXQgbG9va3VwUmVjb3JkIG9mIGxvb2t1cFJlY29yZHMpIHtcbiAgICAgIC8vIFJlc2V0IGZsYWdzIGFuZCBmaW5kIGdseXBoIGluZGV4IGZvciB0aGlzIGxvb2t1cCByZWNvcmRcbiAgICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5yZXNldChvcHRpb25zLCBnbHlwaEluZGV4KTtcbiAgICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5pbmNyZW1lbnQobG9va3VwUmVjb3JkLnNlcXVlbmNlSW5kZXgpO1xuXG4gICAgICAvLyBHZXQgdGhlIGxvb2t1cCBhbmQgc2V0dXAgZmxhZ3MgZm9yIHN1YnRhYmxlc1xuICAgICAgbGV0IGxvb2t1cCA9IHRoaXMudGFibGUubG9va3VwTGlzdC5nZXQobG9va3VwUmVjb3JkLmxvb2t1cExpc3RJbmRleCk7XG4gICAgICB0aGlzLmdseXBoSXRlcmF0b3IucmVzZXQobG9va3VwLmZsYWdzLCB0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXgpO1xuXG4gICAgICAvLyBBcHBseSBsb29rdXAgc3VidGFibGVzIHVudGlsIG9uZSBtYXRjaGVzXG4gICAgICBmb3IgKGxldCB0YWJsZSBvZiBsb29rdXAuc3ViVGFibGVzKSB7XG4gICAgICAgIGlmICh0aGlzLmFwcGx5TG9va3VwKGxvb2t1cC5sb29rdXBUeXBlLCB0YWJsZSkpIHtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5yZXNldChvcHRpb25zLCBnbHlwaEluZGV4KTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvdmVyYWdlSW5kZXgoY292ZXJhZ2UsIGdseXBoKSB7XG4gICAgaWYgKGdseXBoID09IG51bGwpIHtcbiAgICAgIGdseXBoID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmN1ci5pZDtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGNvdmVyYWdlLnZlcnNpb24pIHtcbiAgICAgIGNhc2UgMTpcbiAgICAgICAgcmV0dXJuIGNvdmVyYWdlLmdseXBocy5pbmRleE9mKGdseXBoKTtcblxuICAgICAgY2FzZSAyOlxuICAgICAgICBmb3IgKGxldCByYW5nZSBvZiBjb3ZlcmFnZS5yYW5nZVJlY29yZHMpIHtcbiAgICAgICAgICBpZiAocmFuZ2Uuc3RhcnQgPD0gZ2x5cGggJiYgZ2x5cGggPD0gcmFuZ2UuZW5kKSB7XG4gICAgICAgICAgICByZXR1cm4gcmFuZ2Uuc3RhcnRDb3ZlcmFnZUluZGV4ICsgZ2x5cGggLSByYW5nZS5zdGFydDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gLTE7XG4gIH1cblxuICBtYXRjaChzZXF1ZW5jZUluZGV4LCBzZXF1ZW5jZSwgZm4sIG1hdGNoZWQpIHtcbiAgICBsZXQgcG9zID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4O1xuICAgIGxldCBnbHlwaCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5pbmNyZW1lbnQoc2VxdWVuY2VJbmRleCk7XG4gICAgbGV0IGlkeCA9IDA7XG5cbiAgICB3aGlsZSAoaWR4IDwgc2VxdWVuY2UubGVuZ3RoICYmIGdseXBoICYmIGZuKHNlcXVlbmNlW2lkeF0sIGdseXBoKSkge1xuICAgICAgaWYgKG1hdGNoZWQpIHtcbiAgICAgICAgbWF0Y2hlZC5wdXNoKHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleCk7XG4gICAgICB9XG5cbiAgICAgIGlkeCsrO1xuICAgICAgZ2x5cGggPSB0aGlzLmdseXBoSXRlcmF0b3IubmV4dCgpO1xuICAgIH1cblxuICAgIHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleCA9IHBvcztcbiAgICBpZiAoaWR4IDwgc2VxdWVuY2UubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hdGNoZWQgfHwgdHJ1ZTtcbiAgfVxuXG4gIHNlcXVlbmNlTWF0Y2hlcyhzZXF1ZW5jZUluZGV4LCBzZXF1ZW5jZSkge1xuICAgIHJldHVybiB0aGlzLm1hdGNoKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlLCAoY29tcG9uZW50LCBnbHlwaCkgPT4gY29tcG9uZW50ID09PSBnbHlwaC5pZCk7XG4gIH1cblxuICBzZXF1ZW5jZU1hdGNoSW5kaWNlcyhzZXF1ZW5jZUluZGV4LCBzZXF1ZW5jZSkge1xuICAgIHJldHVybiB0aGlzLm1hdGNoKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlLCAoY29tcG9uZW50LCBnbHlwaCkgPT4ge1xuICAgICAgLy8gSWYgdGhlIGN1cnJlbnQgZmVhdHVyZSBkb2Vzbid0IGFwcGx5IHRvIHRoaXMgZ2x5cGgsXG4gICAgICBpZiAoISh0aGlzLmN1cnJlbnRGZWF0dXJlIGluIGdseXBoLmZlYXR1cmVzKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjb21wb25lbnQgPT09IGdseXBoLmlkO1xuICAgIH0sIFtdKTtcbiAgfVxuXG4gIGNvdmVyYWdlU2VxdWVuY2VNYXRjaGVzKHNlcXVlbmNlSW5kZXgsIHNlcXVlbmNlKSB7XG4gICAgcmV0dXJuIHRoaXMubWF0Y2goc2VxdWVuY2VJbmRleCwgc2VxdWVuY2UsIChjb3ZlcmFnZSwgZ2x5cGgpID0+XG4gICAgICB0aGlzLmNvdmVyYWdlSW5kZXgoY292ZXJhZ2UsIGdseXBoLmlkKSA+PSAwXG4gICAgKTtcbiAgfVxuXG4gIGdldENsYXNzSUQoZ2x5cGgsIGNsYXNzRGVmKSB7XG4gICAgc3dpdGNoIChjbGFzc0RlZi52ZXJzaW9uKSB7XG4gICAgICBjYXNlIDE6IC8vIENsYXNzIGFycmF5XG4gICAgICAgIGxldCBpID0gZ2x5cGggLSBjbGFzc0RlZi5zdGFydEdseXBoO1xuICAgICAgICBpZiAoaSA+PSAwICYmIGkgPCBjbGFzc0RlZi5jbGFzc1ZhbHVlQXJyYXkubGVuZ3RoKSB7XG4gICAgICAgICAgcmV0dXJuIGNsYXNzRGVmLmNsYXNzVmFsdWVBcnJheVtpXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIDI6XG4gICAgICAgIGZvciAobGV0IHJhbmdlIG9mIGNsYXNzRGVmLmNsYXNzUmFuZ2VSZWNvcmQpIHtcbiAgICAgICAgICBpZiAocmFuZ2Uuc3RhcnQgPD0gZ2x5cGggJiYgZ2x5cGggPD0gcmFuZ2UuZW5kKSB7XG4gICAgICAgICAgICByZXR1cm4gcmFuZ2UuY2xhc3M7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBjbGFzc1NlcXVlbmNlTWF0Y2hlcyhzZXF1ZW5jZUluZGV4LCBzZXF1ZW5jZSwgY2xhc3NEZWYpIHtcbiAgICByZXR1cm4gdGhpcy5tYXRjaChzZXF1ZW5jZUluZGV4LCBzZXF1ZW5jZSwgKGNsYXNzSUQsIGdseXBoKSA9PlxuICAgICAgY2xhc3NJRCA9PT0gdGhpcy5nZXRDbGFzc0lEKGdseXBoLmlkLCBjbGFzc0RlZilcbiAgICApO1xuICB9XG5cbiAgYXBwbHlDb250ZXh0KHRhYmxlKSB7XG4gICAgbGV0IGluZGV4LCBzZXQ7XG4gICAgc3dpdGNoICh0YWJsZS52ZXJzaW9uKSB7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIGluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKTtcbiAgICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldCA9IHRhYmxlLnJ1bGVTZXRzW2luZGV4XTtcbiAgICAgICAgZm9yIChsZXQgcnVsZSBvZiBzZXQpIHtcbiAgICAgICAgICBpZiAodGhpcy5zZXF1ZW5jZU1hdGNoZXMoMSwgcnVsZS5pbnB1dCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFwcGx5TG9va3VwTGlzdChydWxlLmxvb2t1cFJlY29yZHMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIDI6XG4gICAgICAgIGlmICh0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UpID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGluZGV4ID0gdGhpcy5nZXRDbGFzc0lEKHRoaXMuZ2x5cGhJdGVyYXRvci5jdXIuaWQsIHRhYmxlLmNsYXNzRGVmKTtcbiAgICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldCA9IHRhYmxlLmNsYXNzU2V0W2luZGV4XTtcbiAgICAgICAgZm9yIChsZXQgcnVsZSBvZiBzZXQpIHtcbiAgICAgICAgICBpZiAodGhpcy5jbGFzc1NlcXVlbmNlTWF0Y2hlcygxLCBydWxlLmNsYXNzZXMsIHRhYmxlLmNsYXNzRGVmKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlMb29rdXBMaXN0KHJ1bGUubG9va3VwUmVjb3Jkcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgMzpcbiAgICAgICAgaWYgKHRoaXMuY292ZXJhZ2VTZXF1ZW5jZU1hdGNoZXMoMCwgdGFibGUuY292ZXJhZ2VzKSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLmFwcGx5TG9va3VwTGlzdCh0YWJsZS5sb29rdXBSZWNvcmRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGFwcGx5Q2hhaW5pbmdDb250ZXh0KHRhYmxlKSB7XG4gICAgbGV0IGluZGV4O1xuICAgIHN3aXRjaCAodGFibGUudmVyc2lvbikge1xuICAgICAgY2FzZSAxOlxuICAgICAgICBpbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5jb3ZlcmFnZSk7XG4gICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgc2V0ID0gdGFibGUuY2hhaW5SdWxlU2V0c1tpbmRleF07XG4gICAgICAgIGZvciAobGV0IHJ1bGUgb2Ygc2V0KSB7XG4gICAgICAgICAgaWYgKHRoaXMuc2VxdWVuY2VNYXRjaGVzKC1ydWxlLmJhY2t0cmFjay5sZW5ndGgsIHJ1bGUuYmFja3RyYWNrKVxuICAgICAgICAgICAgJiYgdGhpcy5zZXF1ZW5jZU1hdGNoZXMoMSwgcnVsZS5pbnB1dClcbiAgICAgICAgICAgICYmIHRoaXMuc2VxdWVuY2VNYXRjaGVzKDEgKyBydWxlLmlucHV0Lmxlbmd0aCwgcnVsZS5sb29rYWhlYWQpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5hcHBseUxvb2t1cExpc3QocnVsZS5sb29rdXBSZWNvcmRzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAyOlxuICAgICAgICBpZiAodGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKSA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpbmRleCA9IHRoaXMuZ2V0Q2xhc3NJRCh0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmlkLCB0YWJsZS5pbnB1dENsYXNzRGVmKTtcbiAgICAgICAgbGV0IHJ1bGVzID0gdGFibGUuY2hhaW5DbGFzc1NldFtpbmRleF07XG4gICAgICAgIGlmICghcnVsZXMpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGxldCBydWxlIG9mIHJ1bGVzKSB7XG4gICAgICAgICAgaWYgKHRoaXMuY2xhc3NTZXF1ZW5jZU1hdGNoZXMoLXJ1bGUuYmFja3RyYWNrLmxlbmd0aCwgcnVsZS5iYWNrdHJhY2ssIHRhYmxlLmJhY2t0cmFja0NsYXNzRGVmKSAmJlxuICAgICAgICAgICAgdGhpcy5jbGFzc1NlcXVlbmNlTWF0Y2hlcygxLCBydWxlLmlucHV0LCB0YWJsZS5pbnB1dENsYXNzRGVmKSAmJlxuICAgICAgICAgICAgdGhpcy5jbGFzc1NlcXVlbmNlTWF0Y2hlcygxICsgcnVsZS5pbnB1dC5sZW5ndGgsIHJ1bGUubG9va2FoZWFkLCB0YWJsZS5sb29rYWhlYWRDbGFzc0RlZikpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFwcGx5TG9va3VwTGlzdChydWxlLmxvb2t1cFJlY29yZHMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIDM6XG4gICAgICAgIGlmICh0aGlzLmNvdmVyYWdlU2VxdWVuY2VNYXRjaGVzKC10YWJsZS5iYWNrdHJhY2tHbHlwaENvdW50LCB0YWJsZS5iYWNrdHJhY2tDb3ZlcmFnZSkgJiZcbiAgICAgICAgICB0aGlzLmNvdmVyYWdlU2VxdWVuY2VNYXRjaGVzKDAsIHRhYmxlLmlucHV0Q292ZXJhZ2UpICYmXG4gICAgICAgICAgdGhpcy5jb3ZlcmFnZVNlcXVlbmNlTWF0Y2hlcyh0YWJsZS5pbnB1dEdseXBoQ291bnQsIHRhYmxlLmxvb2thaGVhZENvdmVyYWdlKSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLmFwcGx5TG9va3VwTGlzdCh0YWJsZS5sb29rdXBSZWNvcmRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIiwgImV4cG9ydCBkZWZhdWx0IGNsYXNzIEdseXBoSXRlcmF0b3Ige1xuICBjb25zdHJ1Y3RvcihnbHlwaHMsIG9wdGlvbnMpIHtcbiAgICB0aGlzLmdseXBocyA9IGdseXBocztcbiAgICB0aGlzLnJlc2V0KG9wdGlvbnMpO1xuICB9XG5cbiAgcmVzZXQob3B0aW9ucyA9IHt9LCBpbmRleCA9IDApIHtcbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICAgIHRoaXMuZmxhZ3MgPSBvcHRpb25zLmZsYWdzIHx8IHt9O1xuICAgIHRoaXMubWFya0F0dGFjaG1lbnRUeXBlID0gb3B0aW9ucy5tYXJrQXR0YWNobWVudFR5cGUgfHwgMDtcbiAgICB0aGlzLmluZGV4ID0gaW5kZXg7XG4gIH1cblxuICBnZXQgY3VyKCkge1xuICAgIHJldHVybiB0aGlzLmdseXBoc1t0aGlzLmluZGV4XSB8fCBudWxsO1xuICB9XG5cbiAgc2hvdWxkSWdub3JlKGdseXBoKSB7XG4gICAgcmV0dXJuICh0aGlzLmZsYWdzLmlnbm9yZU1hcmtzICYmIGdseXBoLmlzTWFyaykgfHxcbiAgICAgICAgICAgKHRoaXMuZmxhZ3MuaWdub3JlQmFzZUdseXBocyAmJiBnbHlwaC5pc0Jhc2UpIHx8XG4gICAgICAgICAgICh0aGlzLmZsYWdzLmlnbm9yZUxpZ2F0dXJlcyAmJiBnbHlwaC5pc0xpZ2F0dXJlKSB8fFxuICAgICAgICAgICAodGhpcy5tYXJrQXR0YWNobWVudFR5cGUgJiYgZ2x5cGguaXNNYXJrICYmIGdseXBoLm1hcmtBdHRhY2htZW50VHlwZSAhPT0gdGhpcy5tYXJrQXR0YWNobWVudFR5cGUpO1xuICB9XG5cbiAgbW92ZShkaXIpIHtcbiAgICB0aGlzLmluZGV4ICs9IGRpcjtcbiAgICB3aGlsZSAoMCA8PSB0aGlzLmluZGV4ICYmIHRoaXMuaW5kZXggPCB0aGlzLmdseXBocy5sZW5ndGggJiYgdGhpcy5zaG91bGRJZ25vcmUodGhpcy5nbHlwaHNbdGhpcy5pbmRleF0pKSB7XG4gICAgICB0aGlzLmluZGV4ICs9IGRpcjtcbiAgICB9XG5cbiAgICBpZiAoMCA+IHRoaXMuaW5kZXggfHwgdGhpcy5pbmRleCA+PSB0aGlzLmdseXBocy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmdseXBoc1t0aGlzLmluZGV4XTtcbiAgfVxuXG4gIG5leHQoKSB7XG4gICAgcmV0dXJuIHRoaXMubW92ZSgrMSk7XG4gIH1cblxuICBwcmV2KCkge1xuICAgIHJldHVybiB0aGlzLm1vdmUoLTEpO1xuICB9XG5cbiAgcGVlayhjb3VudCA9IDEpIHtcbiAgICBsZXQgaWR4ID0gdGhpcy5pbmRleDtcbiAgICBsZXQgcmVzID0gdGhpcy5pbmNyZW1lbnQoY291bnQpO1xuICAgIHRoaXMuaW5kZXggPSBpZHg7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIHBlZWtJbmRleChjb3VudCA9IDEpIHtcbiAgICBsZXQgaWR4ID0gdGhpcy5pbmRleDtcbiAgICB0aGlzLmluY3JlbWVudChjb3VudCk7XG4gICAgbGV0IHJlcyA9IHRoaXMuaW5kZXg7XG4gICAgdGhpcy5pbmRleCA9IGlkeDtcbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgaW5jcmVtZW50KGNvdW50ID0gMSkge1xuICAgIGxldCBkaXIgPSBjb3VudCA8IDAgPyAtMSA6IDE7XG4gICAgY291bnQgPSBNYXRoLmFicyhjb3VudCk7XG4gICAgd2hpbGUgKGNvdW50LS0pIHtcbiAgICAgIHRoaXMubW92ZShkaXIpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmdseXBoc1t0aGlzLmluZGV4XTtcbiAgfVxufVxuIiwgImltcG9ydCBEZWZhdWx0U2hhcGVyIGZyb20gJy4vRGVmYXVsdFNoYXBlcic7XG5pbXBvcnQgU3RhdGVNYWNoaW5lIGZyb20gJ2RmYSc7XG5pbXBvcnQgVW5pY29kZVRyaWUgZnJvbSAndW5pY29kZS10cmllJztcbmltcG9ydCB7Z2V0Q2F0ZWdvcnl9IGZyb20gJ3VuaWNvZGUtcHJvcGVydGllcyc7XG5pbXBvcnQgKiBhcyBTY3JpcHQgZnJvbSAnLi4vLi4vbGF5b3V0L1NjcmlwdCc7XG5pbXBvcnQgR2x5cGhJbmZvIGZyb20gJy4uL0dseXBoSW5mbyc7XG5pbXBvcnQgaW5kaWNNYWNoaW5lIGZyb20gJy4vaW5kaWMuanNvbic7XG5pbXBvcnQgdXNlRGF0YSBmcm9tICcuL3VzZS5qc29uJztcbmltcG9ydCB7XG4gIENBVEVHT1JJRVMsXG4gIFBPU0lUSU9OUyxcbiAgQ09OU09OQU5UX0ZMQUdTLFxuICBKT0lORVJfRkxBR1MsXG4gIEhBTEFOVF9PUl9DT0VOR19GTEFHUywgSU5ESUNfQ09ORklHUyxcbiAgSU5ESUNfREVDT01QT1NJVElPTlNcbn0gZnJvbSAnLi9pbmRpYy1kYXRhJztcbmltcG9ydCB7IGRlY29kZUJhc2U2NCB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuY29uc3Qge2RlY29tcG9zaXRpb25zfSA9IHVzZURhdGE7XG5jb25zdCB0cmllID0gbmV3IFVuaWNvZGVUcmllKGRlY29kZUJhc2U2NChyZXF1aXJlKCdmcycpLnJlYWRGaWxlU3luYyhfX2Rpcm5hbWUgKyAnL2luZGljLnRyaWUnLCAnYmFzZTY0JykpKTtcbmNvbnN0IHN0YXRlTWFjaGluZSA9IG5ldyBTdGF0ZU1hY2hpbmUoaW5kaWNNYWNoaW5lKTtcblxuLyoqXG4gKiBUaGUgSW5kaWNTaGFwZXIgc3VwcG9ydHMgaW5kaWMgc2NyaXB0cyBlLmcuIERldmFuYWdhcmksIEthbm5hZGEsIGV0Yy5cbiAqIEJhc2VkIG9uIGNvZGUgZnJvbSBIYXJmYnV6ejogaHR0cHM6Ly9naXRodWIuY29tL2JlaGRhZC9oYXJmYnV6ei9ibG9iL21hc3Rlci9zcmMvaGItb3Qtc2hhcGUtY29tcGxleC1pbmRpYy5jY1xuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJbmRpY1NoYXBlciBleHRlbmRzIERlZmF1bHRTaGFwZXIge1xuICBzdGF0aWMgemVyb01hcmtXaWR0aHMgPSAnTk9ORSc7XG4gIHN0YXRpYyBwbGFuRmVhdHVyZXMocGxhbikge1xuICAgIHBsYW4uYWRkU3RhZ2Uoc2V0dXBTeWxsYWJsZXMpO1xuXG4gICAgcGxhbi5hZGRTdGFnZShbJ2xvY2wnLCAnY2NtcCddKTtcblxuICAgIHBsYW4uYWRkU3RhZ2UoaW5pdGlhbFJlb3JkZXJpbmcpO1xuXG4gICAgcGxhbi5hZGRTdGFnZSgnbnVrdCcpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ2FraG4nKTtcbiAgICBwbGFuLmFkZFN0YWdlKCdycGhmJywgZmFsc2UpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ3JrcmYnKTtcbiAgICBwbGFuLmFkZFN0YWdlKCdwcmVmJywgZmFsc2UpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ2Jsd2YnLCBmYWxzZSk7XG4gICAgcGxhbi5hZGRTdGFnZSgnYWJ2ZicsIGZhbHNlKTtcbiAgICBwbGFuLmFkZFN0YWdlKCdoYWxmJywgZmFsc2UpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ3BzdGYnLCBmYWxzZSk7XG4gICAgcGxhbi5hZGRTdGFnZSgndmF0dScpO1xuICAgIHBsYW4uYWRkU3RhZ2UoJ2NqY3QnKTtcbiAgICBwbGFuLmFkZFN0YWdlKCdjZmFyJywgZmFsc2UpO1xuXG4gICAgcGxhbi5hZGRTdGFnZShmaW5hbFJlb3JkZXJpbmcpO1xuXG4gICAgcGxhbi5hZGRTdGFnZSh7XG4gICAgICBsb2NhbDogWydpbml0J10sXG4gICAgICBnbG9iYWw6IFsncHJlcycsICdhYnZzJywgJ2Jsd3MnLCAncHN0cycsICdoYWxuJywgJ2Rpc3QnLCAnYWJ2bScsICdibHdtJywgJ2NhbHQnLCAnY2xpZyddXG4gICAgfSk7XG5cbiAgICAvLyBTZXR1cCB0aGUgaW5kaWMgY29uZmlnIGZvciB0aGUgc2VsZWN0ZWQgc2NyaXB0XG4gICAgcGxhbi51bmljb2RlU2NyaXB0ID0gU2NyaXB0LmZyb21PcGVuVHlwZShwbGFuLnNjcmlwdCk7XG4gICAgcGxhbi5pbmRpY0NvbmZpZyA9IElORElDX0NPTkZJR1NbcGxhbi51bmljb2RlU2NyaXB0XSB8fCBJTkRJQ19DT05GSUdTLkRlZmF1bHQ7XG4gICAgcGxhbi5pc09sZFNwZWMgPSBwbGFuLmluZGljQ29uZmlnLmhhc09sZFNwZWMgJiYgcGxhbi5zY3JpcHRbcGxhbi5zY3JpcHQubGVuZ3RoIC0gMV0gIT09ICcyJztcblxuICAgIC8vIFRPRE86IHR1cm4gb2ZmIGtlcm4gKEtobWVyKSBhbmQgbGlnYSBmZWF0dXJlcy5cbiAgfVxuXG4gIHN0YXRpYyBhc3NpZ25GZWF0dXJlcyhwbGFuLCBnbHlwaHMpIHtcbiAgICAvLyBEZWNvbXBvc2Ugc3BsaXQgbWF0cmFzXG4gICAgLy8gVE9ETzogZG8gdGhpcyBpbiBhIG1vcmUgZ2VuZXJhbCB1bmljb2RlIG5vcm1hbGl6ZXJcbiAgICBmb3IgKGxldCBpID0gZ2x5cGhzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICBsZXQgY29kZXBvaW50ID0gZ2x5cGhzW2ldLmNvZGVQb2ludHNbMF07XG4gICAgICBsZXQgZCA9IElORElDX0RFQ09NUE9TSVRJT05TW2NvZGVwb2ludF0gfHwgZGVjb21wb3NpdGlvbnNbY29kZXBvaW50XTtcbiAgICAgIGlmIChkKSB7XG4gICAgICAgIGxldCBkZWNvbXBvc2VkID0gZC5tYXAoYyA9PiB7XG4gICAgICAgICAgbGV0IGcgPSBwbGFuLmZvbnQuZ2x5cGhGb3JDb2RlUG9pbnQoYyk7XG4gICAgICAgICAgcmV0dXJuIG5ldyBHbHlwaEluZm8ocGxhbi5mb250LCBnLmlkLCBbY10sIGdseXBoc1tpXS5mZWF0dXJlcyk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGdseXBocy5zcGxpY2UoaSwgMSwgLi4uZGVjb21wb3NlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGluZGljQ2F0ZWdvcnkoZ2x5cGgpIHtcbiAgcmV0dXJuIHRyaWUuZ2V0KGdseXBoLmNvZGVQb2ludHNbMF0pID4+IDg7XG59XG5cbmZ1bmN0aW9uIGluZGljUG9zaXRpb24oZ2x5cGgpIHtcbiAgcmV0dXJuIDEgPDwgKHRyaWUuZ2V0KGdseXBoLmNvZGVQb2ludHNbMF0pICYgMHhmZik7XG59XG5cbmNsYXNzIEluZGljSW5mbyB7XG4gIGNvbnN0cnVjdG9yKGNhdGVnb3J5LCBwb3NpdGlvbiwgc3lsbGFibGVUeXBlLCBzeWxsYWJsZSkge1xuICAgIHRoaXMuY2F0ZWdvcnkgPSBjYXRlZ29yeTtcbiAgICB0aGlzLnBvc2l0aW9uID0gcG9zaXRpb247XG4gICAgdGhpcy5zeWxsYWJsZVR5cGUgPSBzeWxsYWJsZVR5cGU7XG4gICAgdGhpcy5zeWxsYWJsZSA9IHN5bGxhYmxlO1xuICB9XG59XG5cbmZ1bmN0aW9uIHNldHVwU3lsbGFibGVzKGZvbnQsIGdseXBocykge1xuICBsZXQgc3lsbGFibGUgPSAwO1xuICBsZXQgbGFzdCA9IDA7XG4gIGZvciAobGV0IFtzdGFydCwgZW5kLCB0YWdzXSBvZiBzdGF0ZU1hY2hpbmUubWF0Y2goZ2x5cGhzLm1hcChpbmRpY0NhdGVnb3J5KSkpIHtcbiAgICBpZiAoc3RhcnQgPiBsYXN0KSB7XG4gICAgICArK3N5bGxhYmxlO1xuICAgICAgZm9yIChsZXQgaSA9IGxhc3Q7IGkgPCBzdGFydDsgaSsrKSB7XG4gICAgICAgIGdseXBoc1tpXS5zaGFwZXJJbmZvID0gbmV3IEluZGljSW5mbyhDQVRFR09SSUVTLlgsIFBPU0lUSU9OUy5FbmQsICdub25faW5kaWNfY2x1c3RlcicsIHN5bGxhYmxlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICArK3N5bGxhYmxlO1xuXG4gICAgLy8gQ3JlYXRlIHNoYXBlciBpbmZvXG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDw9IGVuZDsgaSsrKSB7XG4gICAgICBnbHlwaHNbaV0uc2hhcGVySW5mbyA9IG5ldyBJbmRpY0luZm8oXG4gICAgICAgIDEgPDwgaW5kaWNDYXRlZ29yeShnbHlwaHNbaV0pLFxuICAgICAgICBpbmRpY1Bvc2l0aW9uKGdseXBoc1tpXSksXG4gICAgICAgIHRhZ3NbMF0sXG4gICAgICAgIHN5bGxhYmxlXG4gICAgICApO1xuICAgIH1cblxuICAgIGxhc3QgPSBlbmQgKyAxO1xuICB9XG5cbiAgaWYgKGxhc3QgPCBnbHlwaHMubGVuZ3RoKSB7XG4gICAgKytzeWxsYWJsZTtcbiAgICBmb3IgKGxldCBpID0gbGFzdDsgaSA8IGdseXBocy5sZW5ndGg7IGkrKykge1xuICAgICAgZ2x5cGhzW2ldLnNoYXBlckluZm8gPSBuZXcgSW5kaWNJbmZvKENBVEVHT1JJRVMuWCwgUE9TSVRJT05TLkVuZCwgJ25vbl9pbmRpY19jbHVzdGVyJywgc3lsbGFibGUpO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBpc0NvbnNvbmFudChnbHlwaCkge1xuICByZXR1cm4gZ2x5cGguc2hhcGVySW5mby5jYXRlZ29yeSAmIENPTlNPTkFOVF9GTEFHUztcbn1cblxuZnVuY3Rpb24gaXNKb2luZXIoZ2x5cGgpIHtcbiAgcmV0dXJuIGdseXBoLnNoYXBlckluZm8uY2F0ZWdvcnkgJiBKT0lORVJfRkxBR1M7XG59XG5cbmZ1bmN0aW9uIGlzSGFsYW50T3JDb2VuZyhnbHlwaCkge1xuICByZXR1cm4gZ2x5cGguc2hhcGVySW5mby5jYXRlZ29yeSAmIEhBTEFOVF9PUl9DT0VOR19GTEFHUztcbn1cblxuZnVuY3Rpb24gd291bGRTdWJzdGl0dXRlKGdseXBocywgZmVhdHVyZSkge1xuICBmb3IgKGxldCBnbHlwaCBvZiBnbHlwaHMpIHtcbiAgICBnbHlwaC5mZWF0dXJlcyA9IHtbZmVhdHVyZV06IHRydWV9O1xuICB9XG5cbiAgbGV0IEdTVUIgPSBnbHlwaHNbMF0uX2ZvbnQuX2xheW91dEVuZ2luZS5lbmdpbmUuR1NVQlByb2Nlc3NvcjtcbiAgR1NVQi5hcHBseUZlYXR1cmVzKFtmZWF0dXJlXSwgZ2x5cGhzKTtcblxuICByZXR1cm4gZ2x5cGhzLmxlbmd0aCA9PT0gMTtcbn1cblxuZnVuY3Rpb24gY29uc29uYW50UG9zaXRpb24oZm9udCwgY29uc29uYW50LCB2aXJhbWEpIHtcbiAgbGV0IGdseXBocyA9IFt2aXJhbWEsIGNvbnNvbmFudCwgdmlyYW1hXTtcbiAgaWYgKHdvdWxkU3Vic3RpdHV0ZShnbHlwaHMuc2xpY2UoMCwgMiksICdibHdmJykgfHwgd291bGRTdWJzdGl0dXRlKGdseXBocy5zbGljZSgxLCAzKSwgJ2Jsd2YnKSkge1xuICAgIHJldHVybiBQT1NJVElPTlMuQmVsb3dfQztcbiAgfSBlbHNlIGlmICh3b3VsZFN1YnN0aXR1dGUoZ2x5cGhzLnNsaWNlKDAsIDIpLCAncHN0ZicpIHx8IHdvdWxkU3Vic3RpdHV0ZShnbHlwaHMuc2xpY2UoMSwgMyksICdwc3RmJykpIHtcbiAgICByZXR1cm4gUE9TSVRJT05TLlBvc3RfQztcbiAgfSBlbHNlIGlmICh3b3VsZFN1YnN0aXR1dGUoZ2x5cGhzLnNsaWNlKDAsIDIpLCAncHJlZicpIHx8IHdvdWxkU3Vic3RpdHV0ZShnbHlwaHMuc2xpY2UoMSwgMyksICdwcmVmJykpIHtcbiAgICByZXR1cm4gUE9TSVRJT05TLlBvc3RfQztcbiAgfVxuXG4gIHJldHVybiBQT1NJVElPTlMuQmFzZV9DO1xufVxuXG5mdW5jdGlvbiBpbml0aWFsUmVvcmRlcmluZyhmb250LCBnbHlwaHMsIHBsYW4pIHtcbiAgbGV0IGluZGljQ29uZmlnID0gcGxhbi5pbmRpY0NvbmZpZztcbiAgbGV0IGZlYXR1cmVzID0gZm9udC5fbGF5b3V0RW5naW5lLmVuZ2luZS5HU1VCUHJvY2Vzc29yLmZlYXR1cmVzO1xuXG4gIGxldCBkb3R0ZWRDaXJjbGUgPSBmb250LmdseXBoRm9yQ29kZVBvaW50KDB4MjVjYykuaWQ7XG4gIGxldCB2aXJhbWEgPSBmb250LmdseXBoRm9yQ29kZVBvaW50KGluZGljQ29uZmlnLnZpcmFtYSkuaWQ7XG4gIGlmICh2aXJhbWEpIHtcbiAgICBsZXQgaW5mbyA9IG5ldyBHbHlwaEluZm8oZm9udCwgdmlyYW1hLCBbaW5kaWNDb25maWcudmlyYW1hXSk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBnbHlwaHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmIChnbHlwaHNbaV0uc2hhcGVySW5mby5wb3NpdGlvbiA9PT0gUE9TSVRJT05TLkJhc2VfQykge1xuICAgICAgICBnbHlwaHNbaV0uc2hhcGVySW5mby5wb3NpdGlvbiA9IGNvbnNvbmFudFBvc2l0aW9uKGZvbnQsIGdseXBoc1tpXS5jb3B5KCksIGluZm8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGZvciAobGV0IHN0YXJ0ID0gMCwgZW5kID0gbmV4dFN5bGxhYmxlKGdseXBocywgMCk7IHN0YXJ0IDwgZ2x5cGhzLmxlbmd0aDsgc3RhcnQgPSBlbmQsIGVuZCA9IG5leHRTeWxsYWJsZShnbHlwaHMsIHN0YXJ0KSkge1xuICAgIGxldCB7Y2F0ZWdvcnksIHN5bGxhYmxlVHlwZX0gPSBnbHlwaHNbc3RhcnRdLnNoYXBlckluZm87XG5cbiAgICBpZiAoc3lsbGFibGVUeXBlID09PSAnc3ltYm9sX2NsdXN0ZXInIHx8IHN5bGxhYmxlVHlwZSA9PT0gJ25vbl9pbmRpY19jbHVzdGVyJykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKHN5bGxhYmxlVHlwZSA9PT0gJ2Jyb2tlbl9jbHVzdGVyJyAmJiBkb3R0ZWRDaXJjbGUpIHtcbiAgICAgIGxldCBnID0gbmV3IEdseXBoSW5mbyhmb250LCBkb3R0ZWRDaXJjbGUsIFsweDI1Y2NdKTtcbiAgICAgIGcuc2hhcGVySW5mbyA9IG5ldyBJbmRpY0luZm8oXG4gICAgICAgIDEgPDwgaW5kaWNDYXRlZ29yeShnKSxcbiAgICAgICAgaW5kaWNQb3NpdGlvbihnKSxcbiAgICAgICAgZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnN5bGxhYmxlVHlwZSxcbiAgICAgICAgZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnN5bGxhYmxlXG4gICAgICApO1xuXG4gICAgICAvLyBJbnNlcnQgYWZ0ZXIgcG9zc2libGUgUmVwaGEuXG4gICAgICBsZXQgaSA9IHN0YXJ0O1xuICAgICAgd2hpbGUgKGkgPCBlbmQgJiYgZ2x5cGhzW2ldLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuUmVwaGEpIHtcbiAgICAgICAgaSsrO1xuICAgICAgfVxuXG4gICAgICBnbHlwaHMuc3BsaWNlKGkrKywgMCwgZyk7XG4gICAgICBlbmQrKztcbiAgICB9XG5cbiAgICAvLyAxLiBGaW5kIGJhc2UgY29uc29uYW50OlxuICAgIC8vXG4gICAgLy8gVGhlIHNoYXBpbmcgZW5naW5lIGZpbmRzIHRoZSBiYXNlIGNvbnNvbmFudCBvZiB0aGUgc3lsbGFibGUsIHVzaW5nIHRoZVxuICAgIC8vIGZvbGxvd2luZyBhbGdvcml0aG06IHN0YXJ0aW5nIGZyb20gdGhlIGVuZCBvZiB0aGUgc3lsbGFibGUsIG1vdmUgYmFja3dhcmRzXG4gICAgLy8gdW50aWwgYSBjb25zb25hbnQgaXMgZm91bmQgdGhhdCBkb2VzIG5vdCBoYXZlIGEgYmVsb3ctYmFzZSBvciBwb3N0LWJhc2VcbiAgICAvLyBmb3JtIChwb3N0LWJhc2UgZm9ybXMgaGF2ZSB0byBmb2xsb3cgYmVsb3ctYmFzZSBmb3JtcyksIG9yIHRoYXQgaXMgbm90IGFcbiAgICAvLyBwcmUtYmFzZSByZW9yZGVyaW5nIFJhLCBvciBhcnJpdmUgYXQgdGhlIGZpcnN0IGNvbnNvbmFudC4gVGhlIGNvbnNvbmFudFxuICAgIC8vIHN0b3BwZWQgYXQgd2lsbCBiZSB0aGUgYmFzZS5cblxuICAgIGxldCBiYXNlID0gZW5kO1xuICAgIGxldCBsaW1pdCA9IHN0YXJ0O1xuICAgIGxldCBoYXNSZXBoID0gZmFsc2U7XG5cbiAgICAvLyBJZiB0aGUgc3lsbGFibGUgc3RhcnRzIHdpdGggUmEgKyBIYWxhbnQgKGluIGEgc2NyaXB0IHRoYXQgaGFzIFJlcGgpXG4gICAgLy8gYW5kIGhhcyBtb3JlIHRoYW4gb25lIGNvbnNvbmFudCwgUmEgaXMgZXhjbHVkZWQgZnJvbSBjYW5kaWRhdGVzIGZvclxuICAgIC8vIGJhc2UgY29uc29uYW50cy5cbiAgICBpZiAoaW5kaWNDb25maWcucmVwaFBvcyAhPT0gUE9TSVRJT05TLlJhX1RvX0JlY29tZV9SZXBoICYmXG4gICAgICBmZWF0dXJlcy5ycGhmICYmXG4gICAgICBzdGFydCArIDMgPD0gZW5kICYmIChcbiAgICAgICAgKGluZGljQ29uZmlnLnJlcGhNb2RlID09PSAnSW1wbGljaXQnICYmICFpc0pvaW5lcihnbHlwaHNbc3RhcnQgKyAyXSkpIHx8XG4gICAgICAgIChpbmRpY0NvbmZpZy5yZXBoTW9kZSA9PT0gJ0V4cGxpY2l0JyAmJiBnbHlwaHNbc3RhcnQgKyAyXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLlpXSilcbiAgICAgIClcbiAgICApIHtcbiAgICAgIC8vIFNlZSBpZiBpdCBtYXRjaGVzIHRoZSAncnBoZicgZmVhdHVyZS5cbiAgICAgIGxldCBnID0gW2dseXBoc1tzdGFydF0uY29weSgpLCBnbHlwaHNbc3RhcnQgKyAxXS5jb3B5KCksIGdseXBoc1tzdGFydCArIDJdLmNvcHkoKV07XG4gICAgICBpZiAod291bGRTdWJzdGl0dXRlKGcuc2xpY2UoMCwgMiksICdycGhmJykgfHwgKGluZGljQ29uZmlnLnJlcGhNb2RlID09PSAnRXhwbGljaXQnICYmIHdvdWxkU3Vic3RpdHV0ZShnLCAncnBoZicpKSkge1xuICAgICAgICBsaW1pdCArPSAyO1xuICAgICAgICB3aGlsZSAobGltaXQgPCBlbmQgJiYgaXNKb2luZXIoZ2x5cGhzW2xpbWl0XSkpIHtcbiAgICAgICAgICBsaW1pdCsrO1xuICAgICAgICB9XG4gICAgICAgIGJhc2UgPSBzdGFydDtcbiAgICAgICAgaGFzUmVwaCA9IHRydWU7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChpbmRpY0NvbmZpZy5yZXBoTW9kZSA9PT0gJ0xvZ19SZXBoYScgJiYgZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLlJlcGhhKSB7XG4gICAgICBsaW1pdCsrO1xuICAgICAgd2hpbGUgKGxpbWl0IDwgZW5kICYmIGlzSm9pbmVyKGdseXBoc1tsaW1pdF0pKSB7XG4gICAgICAgIGxpbWl0Kys7XG4gICAgICB9XG4gICAgICBiYXNlID0gc3RhcnQ7XG4gICAgICBoYXNSZXBoID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGluZGljQ29uZmlnLmJhc2VQb3MpIHtcbiAgICAgIGNhc2UgJ0xhc3QnOiB7XG4gICAgICAgIC8vIHN0YXJ0aW5nIGZyb20gdGhlIGVuZCBvZiB0aGUgc3lsbGFibGUsIG1vdmUgYmFja3dhcmRzXG4gICAgICAgIGxldCBpID0gZW5kO1xuICAgICAgICBsZXQgc2VlbkJlbG93ID0gZmFsc2U7XG5cbiAgICAgICAgZG8ge1xuICAgICAgICAgIGxldCBpbmZvID0gZ2x5cGhzWy0taV0uc2hhcGVySW5mbztcblxuICAgICAgICAgIC8vIHVudGlsIGEgY29uc29uYW50IGlzIGZvdW5kXG4gICAgICAgICAgaWYgKGlzQ29uc29uYW50KGdseXBoc1tpXSkpIHtcbiAgICAgICAgICAgIC8vIHRoYXQgZG9lcyBub3QgaGF2ZSBhIGJlbG93LWJhc2Ugb3IgcG9zdC1iYXNlIGZvcm1cbiAgICAgICAgICAgIC8vIChwb3N0LWJhc2UgZm9ybXMgaGF2ZSB0byBmb2xsb3cgYmVsb3ctYmFzZSBmb3JtcyksXG4gICAgICAgICAgICBpZiAoaW5mby5wb3NpdGlvbiAhPT0gUE9TSVRJT05TLkJlbG93X0MgJiYgKGluZm8ucG9zaXRpb24gIT09IFBPU0lUSU9OUy5Qb3N0X0MgfHwgc2VlbkJlbG93KSkge1xuICAgICAgICAgICAgICBiYXNlID0gaTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIG9yIHRoYXQgaXMgbm90IGEgcHJlLWJhc2UgcmVvcmRlcmluZyBSYSxcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBJTVBMRU1FTlRBVElPTiBOT1RFUzpcbiAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAvLyBPdXIgcHJlLWJhc2UgcmVvcmRlcmluZyBSYSdzIGFyZSBtYXJrZWQgUE9TX1BPU1RfQywgc28gd2lsbCBiZSBza2lwcGVkXG4gICAgICAgICAgICAvLyBieSB0aGUgbG9naWMgYWJvdmUgYWxyZWFkeS5cbiAgICAgICAgICAgIC8vXG5cbiAgICAgICAgICAgIC8vIG9yIGFycml2ZSBhdCB0aGUgZmlyc3QgY29uc29uYW50LiBUaGUgY29uc29uYW50IHN0b3BwZWQgYXQgd2lsbFxuICAgICAgICAgICAgLy8gYmUgdGhlIGJhc2UuXG4gICAgICAgICAgICBpZiAoaW5mby5wb3NpdGlvbiA9PT0gUE9TSVRJT05TLkJlbG93X0MpIHtcbiAgICAgICAgICAgICAgc2VlbkJlbG93ID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYmFzZSA9IGk7XG4gICAgICAgICAgfSBlbHNlIGlmIChzdGFydCA8IGkgJiYgaW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5aV0ogJiYgZ2x5cGhzW2kgLSAxXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLkgpIHtcbiAgICAgICAgICAgIC8vIEEgWldKIGFmdGVyIGEgSGFsYW50IHN0b3BzIHRoZSBiYXNlIHNlYXJjaCwgYW5kIHJlcXVlc3RzIGFuIGV4cGxpY2l0XG4gICAgICAgICAgICAvLyBoYWxmIGZvcm0uXG4gICAgICAgICAgICAvLyBBIFpXSiBiZWZvcmUgYSBIYWxhbnQsIHJlcXVlc3RzIGEgc3Viam9pbmVkIGZvcm0gaW5zdGVhZCwgYW5kIGhlbmNlXG4gICAgICAgICAgICAvLyBzZWFyY2ggY29udGludWVzLiAgVGhpcyBpcyBwYXJ0aWN1bGFybHkgaW1wb3J0YW50IGZvciBCZW5nYWxpXG4gICAgICAgICAgICAvLyBzZXF1ZW5jZSBSYSxILFlhIHRoYXQgc2hvdWxkIGZvcm0gWWEtUGhhbGFhIGJ5IHN1YmpvaW5pbmcgWWEuXG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH0gd2hpbGUgKGkgPiBsaW1pdCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlICdGaXJzdCc6IHtcbiAgICAgICAgLy8gVGhlIGZpcnN0IGNvbnNvbmFudCBpcyBhbHdheXMgdGhlIGJhc2UuXG4gICAgICAgIGJhc2UgPSBzdGFydDtcblxuICAgICAgICAvLyBNYXJrIGFsbCBzdWJzZXF1ZW50IGNvbnNvbmFudHMgYXMgYmVsb3cuXG4gICAgICAgIGZvciAobGV0IGkgPSBiYXNlICsgMTsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICAgICAgaWYgKGlzQ29uc29uYW50KGdseXBoc1tpXSkpIHtcbiAgICAgICAgICAgIGdseXBoc1tpXS5zaGFwZXJJbmZvLnBvc2l0aW9uID0gUE9TSVRJT05TLkJlbG93X0M7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIHN5bGxhYmxlIHN0YXJ0cyB3aXRoIFJhICsgSGFsYW50IChpbiBhIHNjcmlwdCB0aGF0IGhhcyBSZXBoKVxuICAgIC8vIGFuZCBoYXMgbW9yZSB0aGFuIG9uZSBjb25zb25hbnQsIFJhIGlzIGV4Y2x1ZGVkIGZyb20gY2FuZGlkYXRlcyBmb3JcbiAgICAvLyBiYXNlIGNvbnNvbmFudHMuXG4gICAgLy9cbiAgICAvLyAgT25seSBkbyB0aGlzIGZvciB1bmZvcmNlZCBSZXBoLiAoaWUuIG5vdCBmb3IgUmEsSCxaV0opXG4gICAgaWYgKGhhc1JlcGggJiYgYmFzZSA9PT0gc3RhcnQgJiYgbGltaXQgLSBiYXNlIDw9IDIpIHtcbiAgICAgIGhhc1JlcGggPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyAyLiBEZWNvbXBvc2UgYW5kIHJlb3JkZXIgTWF0cmFzOlxuICAgIC8vXG4gICAgLy8gRWFjaCBtYXRyYSBhbmQgYW55IHN5bGxhYmxlIG1vZGlmaWVyIHNpZ24gaW4gdGhlIGNsdXN0ZXIgYXJlIG1vdmVkIHRvIHRoZVxuICAgIC8vIGFwcHJvcHJpYXRlIHBvc2l0aW9uIHJlbGF0aXZlIHRvIHRoZSBjb25zb25hbnQocykgaW4gdGhlIGNsdXN0ZXIuIFRoZVxuICAgIC8vIHNoYXBpbmcgZW5naW5lIGRlY29tcG9zZXMgdHdvLSBvciB0aHJlZS1wYXJ0IG1hdHJhcyBpbnRvIHRoZWlyIGNvbnN0aXR1ZW50XG4gICAgLy8gcGFydHMgYmVmb3JlIGFueSByZXBvc2l0aW9uaW5nLiBNYXRyYSBjaGFyYWN0ZXJzIGFyZSBjbGFzc2lmaWVkIGJ5IHdoaWNoXG4gICAgLy8gY29uc29uYW50IGluIGEgY29uanVuY3QgdGhleSBoYXZlIGFmZmluaXR5IGZvciBhbmQgYXJlIHJlb3JkZXJlZCB0byB0aGVcbiAgICAvLyBmb2xsb3dpbmcgcG9zaXRpb25zOlxuICAgIC8vXG4gICAgLy8gICBvIEJlZm9yZSBmaXJzdCBoYWxmIGZvcm0gaW4gdGhlIHN5bGxhYmxlXG4gICAgLy8gICBvIEFmdGVyIHN1YmpvaW5lZCBjb25zb25hbnRzXG4gICAgLy8gICBvIEFmdGVyIHBvc3QtZm9ybSBjb25zb25hbnRcbiAgICAvLyAgIG8gQWZ0ZXIgbWFpbiBjb25zb25hbnQgKGZvciBhYm92ZSBtYXJrcylcbiAgICAvL1xuICAgIC8vIElNUExFTUVOVEFUSU9OIE5PVEVTOlxuICAgIC8vXG4gICAgLy8gVGhlIG5vcm1hbGl6ZSgpIHJvdXRpbmUgaGFzIGFscmVhZHkgZGVjb21wb3NlZCBtYXRyYXMgZm9yIHVzLCBzbyB3ZSBkb24ndFxuICAgIC8vIG5lZWQgdG8gd29ycnkgYWJvdXQgdGhhdC5cblxuICAgIC8vIDMuICBSZW9yZGVyIG1hcmtzIHRvIGNhbm9uaWNhbCBvcmRlcjpcbiAgICAvL1xuICAgIC8vIEFkamFjZW50IG51a3RhIGFuZCBoYWxhbnQgb3IgbnVrdGEgYW5kIHZlZGljIHNpZ24gYXJlIGFsd2F5cyByZXBvc2l0aW9uZWRcbiAgICAvLyBpZiBuZWNlc3NhcnksIHNvIHRoYXQgdGhlIG51a3RhIGlzIGZpcnN0LlxuICAgIC8vXG4gICAgLy8gSU1QTEVNRU5UQVRJT04gTk9URVM6XG4gICAgLy9cbiAgICAvLyBXZSBkb24ndCBuZWVkIHRvIGRvIHRoaXM6IHRoZSBub3JtYWxpemUoKSByb3V0aW5lIGFscmVhZHkgZGlkIHRoaXMgZm9yIHVzLlxuXG4gICAgLy8gUmVvcmRlciBjaGFyYWN0ZXJzXG5cbiAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPCBiYXNlOyBpKyspIHtcbiAgICAgIGxldCBpbmZvID0gZ2x5cGhzW2ldLnNoYXBlckluZm87XG4gICAgICBpbmZvLnBvc2l0aW9uID0gTWF0aC5taW4oUE9TSVRJT05TLlByZV9DLCBpbmZvLnBvc2l0aW9uKTtcbiAgICB9XG5cbiAgICBpZiAoYmFzZSA8IGVuZCkge1xuICAgICAgZ2x5cGhzW2Jhc2VdLnNoYXBlckluZm8ucG9zaXRpb24gPSBQT1NJVElPTlMuQmFzZV9DO1xuICAgIH1cblxuICAgIC8vIE1hcmsgZmluYWwgY29uc29uYW50cy4gIEEgZmluYWwgY29uc29uYW50IGlzIG9uZSBhcHBlYXJpbmcgYWZ0ZXIgYSBtYXRyYSxcbiAgICAvLyBsaWtlIGluIEtobWVyLlxuICAgIGZvciAobGV0IGkgPSBiYXNlICsgMTsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICBpZiAoZ2x5cGhzW2ldLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuTSkge1xuICAgICAgICBmb3IgKGxldCBqID0gaSArIDE7IGogPCBlbmQ7IGorKykge1xuICAgICAgICAgIGlmIChpc0NvbnNvbmFudChnbHlwaHNbal0pKSB7XG4gICAgICAgICAgICBnbHlwaHNbal0uc2hhcGVySW5mby5wb3NpdGlvbiA9IFBPU0lUSU9OUy5GaW5hbF9DO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhhbmRsZSBiZWdpbm5pbmcgUmFcbiAgICBpZiAoaGFzUmVwaCkge1xuICAgICAgZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnBvc2l0aW9uID0gUE9TSVRJT05TLlJhX1RvX0JlY29tZV9SZXBoO1xuICAgIH1cblxuICAgIC8vIEZvciBvbGQtc3R5bGUgSW5kaWMgc2NyaXB0IHRhZ3MsIG1vdmUgdGhlIGZpcnN0IHBvc3QtYmFzZSBIYWxhbnQgYWZ0ZXJcbiAgICAvLyBsYXN0IGNvbnNvbmFudC5cbiAgICAvL1xuICAgIC8vIFJlcG9ydHMgc3VnZ2VzdCB0aGF0IGluIHNvbWUgc2NyaXB0cyBVbmlzY3JpYmUgZG9lcyB0aGlzIG9ubHkgaWYgdGhlcmVcbiAgICAvLyBpcyAqbm90KiBhIEhhbGFudCBhZnRlciBsYXN0IGNvbnNvbmFudCBhbHJlYWR5IChlZy4gS2FubmFkYSksIHdoaWxlIGl0XG4gICAgLy8gZG9lcyBpdCB1bmNvbmRpdGlvbmFsbHkgaW4gb3RoZXIgc2NyaXB0cyAoZWcuIE1hbGF5YWxhbSkuICBXZSBkb24ndFxuICAgIC8vIGN1cnJlbnRseSBrbm93IGFib3V0IG90aGVyIHNjcmlwdHMsIHNvIHdlIHNpbmdsZSBvdXQgTWFsYXlhbGFtIGZvciBub3cuXG4gICAgLy9cbiAgICAvLyBLYW5uYWRhIHRlc3QgY2FzZTpcbiAgICAvLyBVKzBDOUEsVSswQ0NELFUrMEM5QSxVKzBDQ0RcbiAgICAvLyBXaXRoIHNvbWUgdmVyc2lvbnMgb2YgTG9oaXQgS2FubmFkYS5cbiAgICAvLyBodHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD01OTExOFxuICAgIC8vXG4gICAgLy8gTWFsYXlhbGFtIHRlc3QgY2FzZTpcbiAgICAvLyBVKzBEMzgsVSswRDRELFUrMEQzMSxVKzBENEQsVSswRDMxLFUrMEQ0RFxuICAgIC8vIFdpdGggbG9oaXQtdHRmLTIwMTIxMTIyL0xvaGl0LU1hbGF5YWxhbS50dGZcbiAgICBpZiAocGxhbi5pc09sZFNwZWMpIHtcbiAgICAgIGxldCBkaXNhbGxvd0RvdWJsZUhhbGFudHMgPSBwbGFuLnVuaWNvZGVTY3JpcHQgIT09ICdNYWxheWFsYW0nO1xuICAgICAgZm9yIChsZXQgaSA9IGJhc2UgKyAxOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgICAgaWYgKGdseXBoc1tpXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLkgpIHtcbiAgICAgICAgICBsZXQgajtcbiAgICAgICAgICBmb3IgKGogPSBlbmQgLSAxOyBqID4gaTsgai0tKSB7XG4gICAgICAgICAgICBpZiAoaXNDb25zb25hbnQoZ2x5cGhzW2pdKSB8fCAoZGlzYWxsb3dEb3VibGVIYWxhbnRzICYmIGdseXBoc1tqXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLkgpKSB7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChnbHlwaHNbal0uc2hhcGVySW5mby5jYXRlZ29yeSAhPT0gQ0FURUdPUklFUy5IICYmIGogPiBpKSB7XG4gICAgICAgICAgICAvLyBNb3ZlIEhhbGFudCB0byBhZnRlciBsYXN0IGNvbnNvbmFudC5cbiAgICAgICAgICAgIGxldCB0ID0gZ2x5cGhzW2ldO1xuICAgICAgICAgICAgZ2x5cGhzLnNwbGljZShpLCAwLCAuLi5nbHlwaHMuc3BsaWNlKGkgKyAxLCBqIC0gaSkpO1xuICAgICAgICAgICAgZ2x5cGhzW2pdID0gdDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEF0dGFjaCBtaXNjIG1hcmtzIHRvIHByZXZpb3VzIGNoYXIgdG8gbW92ZSB3aXRoIHRoZW0uXG4gICAgbGV0IGxhc3RQb3MgPSBQT1NJVElPTlMuU3RhcnQ7XG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHtcbiAgICAgIGxldCBpbmZvID0gZ2x5cGhzW2ldLnNoYXBlckluZm87XG4gICAgICBpZiAoaW5mby5jYXRlZ29yeSAmIChKT0lORVJfRkxBR1MgfCBDQVRFR09SSUVTLk4gfCBDQVRFR09SSUVTLlJTIHwgQ0FURUdPUklFUy5DTSB8IEhBTEFOVF9PUl9DT0VOR19GTEFHUyAmIGluZm8uY2F0ZWdvcnkpKSB7XG4gICAgICAgIGluZm8ucG9zaXRpb24gPSBsYXN0UG9zO1xuICAgICAgICBpZiAoaW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5IICYmIGluZm8ucG9zaXRpb24gPT09IFBPU0lUSU9OUy5QcmVfTSkge1xuICAgICAgICAgIC8vIFVuaXNjcmliZSBkb2Vzbid0IG1vdmUgdGhlIEhhbGFudCB3aXRoIExlZnQgTWF0cmEuXG4gICAgICAgICAgLy8gVEVTVDogVSswOTJCLFUrMDkzRixVKzA5NERFXG4gICAgICAgICAgLy8gV2UgZm9sbG93LiAgVGhpcyBpcyBpbXBvcnRhbnQgZm9yIHRoZSBTaW5oYWxhXG4gICAgICAgICAgLy8gVSswRERBIHNwbGl0IG1hdHJhIHNpbmNlIGl0IGRlY29tcG9zZXMgdG8gVSswREQ5LFUrMERDQVxuICAgICAgICAgIC8vIHdoZXJlIFUrMEREOSBpcyBhIGxlZnQgbWF0cmEgYW5kIFUrMERDQSBpcyB0aGUgdmlyYW1hLlxuICAgICAgICAgIC8vIFdlIGRvbid0IHdhbnQgdG8gbW92ZSB0aGUgdmlyYW1hIHdpdGggdGhlIGxlZnQgbWF0cmEuXG4gICAgICAgICAgLy8gVEVTVDogVSswRDlBLFUrMEREQVxuICAgICAgICAgIGZvciAobGV0IGogPSBpOyBqID4gc3RhcnQ7IGotLSkge1xuICAgICAgICAgICAgaWYgKGdseXBoc1tqIC0gMV0uc2hhcGVySW5mby5wb3NpdGlvbiAhPT0gUE9TSVRJT05TLlByZV9NKSB7XG4gICAgICAgICAgICAgIGluZm8ucG9zaXRpb24gPSBnbHlwaHNbaiAtIDFdLnNoYXBlckluZm8ucG9zaXRpb247XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChpbmZvLnBvc2l0aW9uICE9PSBQT1NJVElPTlMuU01WRCkge1xuICAgICAgICBsYXN0UG9zID0gaW5mby5wb3NpdGlvbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGb3IgcG9zdC1iYXNlIGNvbnNvbmFudHMgbGV0IHRoZW0gb3duIGFueXRoaW5nIGJlZm9yZSB0aGVtXG4gICAgLy8gc2luY2UgdGhlIGxhc3QgY29uc29uYW50IG9yIG1hdHJhLlxuICAgIGxldCBsYXN0ID0gYmFzZTtcbiAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgaWYgKGlzQ29uc29uYW50KGdseXBoc1tpXSkpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IGxhc3QgKyAxOyBqIDwgaTsgaisrKSB7XG4gICAgICAgICAgaWYgKGdseXBoc1tqXS5zaGFwZXJJbmZvLnBvc2l0aW9uIDwgUE9TSVRJT05TLlNNVkQpIHtcbiAgICAgICAgICAgIGdseXBoc1tqXS5zaGFwZXJJbmZvLnBvc2l0aW9uID0gZ2x5cGhzW2ldLnNoYXBlckluZm8ucG9zaXRpb247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxhc3QgPSBpO1xuICAgICAgfSBlbHNlIGlmIChnbHlwaHNbaV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5NKSB7XG4gICAgICAgIGxhc3QgPSBpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBhcnIgPSBnbHlwaHMuc2xpY2Uoc3RhcnQsIGVuZCk7XG4gICAgYXJyLnNvcnQoKGEsIGIpID0+IGEuc2hhcGVySW5mby5wb3NpdGlvbiAtIGIuc2hhcGVySW5mby5wb3NpdGlvbik7XG4gICAgZ2x5cGhzLnNwbGljZShzdGFydCwgYXJyLmxlbmd0aCwgLi4uYXJyKTtcblxuICAgIC8vIEZpbmQgYmFzZSBhZ2FpblxuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICBpZiAoZ2x5cGhzW2ldLnNoYXBlckluZm8ucG9zaXRpb24gPT09IFBPU0lUSU9OUy5CYXNlX0MpIHtcbiAgICAgICAgYmFzZSA9IGk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHVwIGZlYXR1cmVzIG5vd1xuXG4gICAgLy8gUmVwaFxuICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IGVuZCAmJiBnbHlwaHNbaV0uc2hhcGVySW5mby5wb3NpdGlvbiA9PT0gUE9TSVRJT05TLlJhX1RvX0JlY29tZV9SZXBoOyBpKyspIHtcbiAgICAgIGdseXBoc1tpXS5mZWF0dXJlcy5ycGhmID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBQcmUtYmFzZVxuICAgIGxldCBibHdmID0gIXBsYW4uaXNPbGRTcGVjICYmIGluZGljQ29uZmlnLmJsd2ZNb2RlID09PSAnUHJlX0FuZF9Qb3N0JztcbiAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPCBiYXNlOyBpKyspIHtcbiAgICAgIGdseXBoc1tpXS5mZWF0dXJlcy5oYWxmID0gdHJ1ZTtcbiAgICAgIGlmIChibHdmKSB7XG4gICAgICAgIGdseXBoc1tpXS5mZWF0dXJlcy5ibHdmID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQb3N0LWJhc2VcbiAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgZ2x5cGhzW2ldLmZlYXR1cmVzLmFidmYgPSB0cnVlO1xuICAgICAgZ2x5cGhzW2ldLmZlYXR1cmVzLnBzdGYgPSB0cnVlO1xuICAgICAgZ2x5cGhzW2ldLmZlYXR1cmVzLmJsd2YgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmIChwbGFuLmlzT2xkU3BlYyAmJiBwbGFuLnVuaWNvZGVTY3JpcHQgPT09ICdEZXZhbmFnYXJpJykge1xuICAgICAgLy8gT2xkLXNwZWMgZXllLWxhc2ggUmEgbmVlZHMgc3BlY2lhbCBoYW5kbGluZy4gIEZyb20gdGhlXG4gICAgICAvLyBzcGVjOlxuICAgICAgLy9cbiAgICAgIC8vIFwiVGhlIGZlYXR1cmUgJ2JlbG93LWJhc2UgZm9ybScgaXMgYXBwbGllZCB0byBjb25zb25hbnRzXG4gICAgICAvLyBoYXZpbmcgYmVsb3ctYmFzZSBmb3JtcyBhbmQgZm9sbG93aW5nIHRoZSBiYXNlIGNvbnNvbmFudC5cbiAgICAgIC8vIFRoZSBleGNlcHRpb24gaXMgdmF0dHUsIHdoaWNoIG1heSBhcHBlYXIgYmVsb3cgaGFsZiBmb3Jtc1xuICAgICAgLy8gYXMgd2VsbCBhcyBiZWxvdyB0aGUgYmFzZSBnbHlwaC4gVGhlIGZlYXR1cmUgJ2JlbG93LWJhc2VcbiAgICAgIC8vIGZvcm0nIHdpbGwgYmUgYXBwbGllZCB0byBhbGwgc3VjaCBvY2N1cnJlbmNlcyBvZiBSYSBhcyB3ZWxsLlwiXG4gICAgICAvL1xuICAgICAgLy8gVGVzdCBjYXNlOiBVKzA5MjQsVSswOTRELFUrMDkzMCxVKzA5NGQsVSswOTE1XG4gICAgICAvLyB3aXRoIFNhbnNrcml0IDIwMDMgZm9udC5cbiAgICAgIC8vXG4gICAgICAvLyBIb3dldmVyLCBub3RlIHRoYXQgUmEsSGFsYW50LFpXSiBpcyB0aGUgY29ycmVjdCB3YXkgdG9cbiAgICAgIC8vIHJlcXVlc3QgZXllbGFzaCBmb3JtIG9mIFJhLCBzbyB3ZSB3b3VsZGJuJ3QgaW5oaWJpdCBpdFxuICAgICAgLy8gaW4gdGhhdCBzZXF1ZW5jZS5cbiAgICAgIC8vXG4gICAgICAvLyBUZXN0IGNhc2U6IFUrMDkyNCxVKzA5NEQsVSswOTMwLFUrMDk0ZCxVKzIwMEQsVSswOTE1XG4gICAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgKyAxIDwgYmFzZTsgaSsrKSB7XG4gICAgICAgIGlmIChnbHlwaHNbaV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5SYSAmJlxuICAgICAgICAgIGdseXBoc1tpICsgMV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5IICYmXG4gICAgICAgICAgKGkgKyAxID09PSBiYXNlIHx8IGdseXBoc1tpICsgMl0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5aV0opXG4gICAgICAgICkge1xuICAgICAgICAgIGdseXBoc1tpXS5mZWF0dXJlcy5ibHdmID0gdHJ1ZTtcbiAgICAgICAgICBnbHlwaHNbaSArIDFdLmZlYXR1cmVzLmJsd2YgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHByZWZMZW4gPSAyO1xuICAgIGlmIChmZWF0dXJlcy5wcmVmICYmIGJhc2UgKyBwcmVmTGVuIDwgZW5kKSB7XG4gICAgICAvLyBGaW5kIGEgSGFsYW50LFJhIHNlcXVlbmNlIGFuZCBtYXJrIGl0IGZvciBwcmUtYmFzZSByZW9yZGVyaW5nIHByb2Nlc3NpbmcuXG4gICAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgKyBwcmVmTGVuIC0gMSA8IGVuZDsgaSsrKSB7XG4gICAgICAgIGxldCBnID0gW2dseXBoc1tpXS5jb3B5KCksIGdseXBoc1tpICsgMV0uY29weSgpXTtcbiAgICAgICAgaWYgKHdvdWxkU3Vic3RpdHV0ZShnLCAncHJlZicpKSB7XG4gICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBwcmVmTGVuOyBqKyspIHtcbiAgICAgICAgICAgIGdseXBoc1tpKytdLmZlYXR1cmVzLnByZWYgPSB0cnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIE1hcmsgdGhlIHN1YnNlcXVlbnQgc3R1ZmYgd2l0aCAnY2ZhcicuICBVc2VkIGluIEtobWVyLlxuICAgICAgICAgIC8vIFJlYWQgdGhlIGZlYXR1cmUgc3BlYy5cbiAgICAgICAgICAvLyBUaGlzIGFsbG93cyBkaXN0aW5ndWlzaGluZyB0aGUgZm9sbG93aW5nIGNhc2VzIHdpdGggTVMgS2htZXIgZm9udHM6XG4gICAgICAgICAgLy8gVSsxNzg0LFUrMTdEMixVKzE3OUEsVSsxN0QyLFUrMTc4MlxuICAgICAgICAgIC8vIFUrMTc4NCxVKzE3RDIsVSsxNzgyLFUrMTdEMixVKzE3OUFcbiAgICAgICAgICBpZiAoZmVhdHVyZXMuY2Zhcikge1xuICAgICAgICAgICAgZm9yICg7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgICAgICAgICBnbHlwaHNbaV0uZmVhdHVyZXMuY2ZhciA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBcHBseSBaV0ovWldOSiBlZmZlY3RzXG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0ICsgMTsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICBpZiAoaXNKb2luZXIoZ2x5cGhzW2ldKSkge1xuICAgICAgICBsZXQgbm9uSm9pbmVyID0gZ2x5cGhzW2ldLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuWldOSjtcbiAgICAgICAgbGV0IGogPSBpO1xuXG4gICAgICAgIGRvIHtcbiAgICAgICAgICBqLS07XG5cbiAgICAgICAgICAvLyBaV0ovWldOSiBzaG91bGQgZGlzYWJsZSBDSkNULiAgVGhleSBkbyB0aGF0IGJ5IHNpbXBseVxuICAgICAgICAgIC8vIGJlaW5nIHRoZXJlLCBzaW5jZSB3ZSBkb24ndCBza2lwIHRoZW0gZm9yIHRoZSBDSkNUXG4gICAgICAgICAgLy8gZmVhdHVyZSAoaWUuIEZfTUFOVUFMX1pXSilcblxuICAgICAgICAgIC8vIEEgWldOSiBkaXNhYmxlcyBIQUxGLlxuICAgICAgICAgIGlmIChub25Kb2luZXIpIHtcbiAgICAgICAgICAgIGRlbGV0ZSBnbHlwaHNbal0uZmVhdHVyZXMuaGFsZjtcbiAgICAgICAgICB9XG4gICAgICAgIH0gd2hpbGUgKGogPiBzdGFydCAmJiAhaXNDb25zb25hbnQoZ2x5cGhzW2pdKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGZpbmFsUmVvcmRlcmluZyhmb250LCBnbHlwaHMsIHBsYW4pIHtcbiAgbGV0IGluZGljQ29uZmlnID0gcGxhbi5pbmRpY0NvbmZpZztcbiAgbGV0IGZlYXR1cmVzID0gZm9udC5fbGF5b3V0RW5naW5lLmVuZ2luZS5HU1VCUHJvY2Vzc29yLmZlYXR1cmVzO1xuXG4gIGZvciAobGV0IHN0YXJ0ID0gMCwgZW5kID0gbmV4dFN5bGxhYmxlKGdseXBocywgMCk7IHN0YXJ0IDwgZ2x5cGhzLmxlbmd0aDsgc3RhcnQgPSBlbmQsIGVuZCA9IG5leHRTeWxsYWJsZShnbHlwaHMsIHN0YXJ0KSkge1xuICAgIC8vIDQuIEZpbmFsIHJlb3JkZXJpbmc6XG4gICAgLy9cbiAgICAvLyBBZnRlciB0aGUgbG9jYWxpemVkIGZvcm1zIGFuZCBiYXNpYyBzaGFwaW5nIGZvcm1zIEdTVUIgZmVhdHVyZXMgaGF2ZSBiZWVuXG4gICAgLy8gYXBwbGllZCAoc2VlIGJlbG93KSwgdGhlIHNoYXBpbmcgZW5naW5lIHBlcmZvcm1zIHNvbWUgZmluYWwgZ2x5cGhcbiAgICAvLyByZW9yZGVyaW5nIGJlZm9yZSBhcHBseWluZyBhbGwgdGhlIHJlbWFpbmluZyBmb250IGZlYXR1cmVzIHRvIHRoZSBlbnRpcmVcbiAgICAvLyBjbHVzdGVyLlxuXG4gICAgbGV0IHRyeVByZWYgPSAhIWZlYXR1cmVzLnByZWY7XG5cbiAgICAvLyBGaW5kIGJhc2UgYWdhaW5cbiAgICBsZXQgYmFzZSA9IHN0YXJ0O1xuICAgIGZvciAoOyBiYXNlIDwgZW5kOyBiYXNlKyspIHtcbiAgICAgIGlmIChnbHlwaHNbYmFzZV0uc2hhcGVySW5mby5wb3NpdGlvbiA+PSBQT1NJVElPTlMuQmFzZV9DKSB7XG4gICAgICAgIGlmICh0cnlQcmVmICYmIGJhc2UgKyAxIDwgZW5kKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IGJhc2UgKyAxOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChnbHlwaHNbaV0uZmVhdHVyZXMucHJlZikge1xuICAgICAgICAgICAgICBpZiAoIShnbHlwaHNbaV0uc3Vic3RpdHV0ZWQgJiYgZ2x5cGhzW2ldLmlzTGlnYXRlZCAmJiAhZ2x5cGhzW2ldLmlzTXVsdGlwbGllZCkpIHtcbiAgICAgICAgICAgICAgICAvLyBPaywgdGhpcyB3YXMgYSAncHJlZicgY2FuZGlkYXRlIGJ1dCBkaWRuJ3QgZm9ybSBhbnkuXG4gICAgICAgICAgICAgICAgLy8gQmFzZSBpcyBhcm91bmQgaGVyZS4uLlxuICAgICAgICAgICAgICAgIGJhc2UgPSBpO1xuICAgICAgICAgICAgICAgIHdoaWxlIChiYXNlIDwgZW5kICYmIGlzSGFsYW50T3JDb2VuZyhnbHlwaHNbYmFzZV0pKSB7XG4gICAgICAgICAgICAgICAgICBiYXNlKys7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGdseXBoc1tiYXNlXS5zaGFwZXJJbmZvLnBvc2l0aW9uID0gUE9TSVRJT05TLkJBU0VfQztcbiAgICAgICAgICAgICAgICB0cnlQcmVmID0gZmFsc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIE1hbGF5YWxhbSwgc2tpcCBvdmVyIHVuZm9ybWVkIGJlbG93LSAoYnV0IE5PVCBwb3N0LSkgZm9ybXMuXG4gICAgICAgIGlmIChwbGFuLnVuaWNvZGVTY3JpcHQgPT09ICdNYWxheWFsYW0nKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IGJhc2UgKyAxOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgICAgICAgIHdoaWxlIChpIDwgZW5kICYmIGlzSm9pbmVyKGdseXBoc1tpXSkpIHtcbiAgICAgICAgICAgICAgaSsrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoaSA9PT0gZW5kIHx8ICFpc0hhbGFudE9yQ29lbmcoZ2x5cGhzW2ldKSkge1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSsrOyAvLyBTa2lwIGhhbGFudC5cbiAgICAgICAgICAgIHdoaWxlIChpIDwgZW5kICYmIGlzSm9pbmVyKGdseXBoc1tpXSkpIHtcbiAgICAgICAgICAgICAgaSsrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoaSA8IGVuZCAmJiBpc0NvbnNvbmFudChnbHlwaHNbaV0pICYmIGdseXBoc1tpXS5zaGFwZXJJbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuQmVsb3dfQykge1xuICAgICAgICAgICAgICBiYXNlID0gaTtcbiAgICAgICAgICAgICAgZ2x5cGhzW2Jhc2VdLnNoYXBlckluZm8ucG9zaXRpb24gPSBQT1NJVElPTlMuQmFzZV9DO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGFydCA8IGJhc2UgJiYgZ2x5cGhzW2Jhc2VdLnNoYXBlckluZm8ucG9zaXRpb24gPiBQT1NJVElPTlMuQmFzZV9DKSB7XG4gICAgICAgICAgYmFzZS0tO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChiYXNlID09PSBlbmQgJiYgc3RhcnQgPCBiYXNlICYmIGdseXBoc1tiYXNlIC0gMV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gQ0FURUdPUklFUy5aV0opIHtcbiAgICAgIGJhc2UtLTtcbiAgICB9XG5cbiAgICBpZiAoYmFzZSA8IGVuZCkge1xuICAgICAgd2hpbGUgKHN0YXJ0IDwgYmFzZSAmJiBnbHlwaHNbYmFzZV0uc2hhcGVySW5mby5jYXRlZ29yeSAmIChDQVRFR09SSUVTLk4gfCBIQUxBTlRfT1JfQ09FTkdfRkxBR1MpKSB7XG4gICAgICAgIGJhc2UtLTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvIFJlb3JkZXIgbWF0cmFzOlxuICAgIC8vXG4gICAgLy8gSWYgYSBwcmUtYmFzZSBtYXRyYSBjaGFyYWN0ZXIgaGFkIGJlZW4gcmVvcmRlcmVkIGJlZm9yZSBhcHBseWluZyBiYXNpY1xuICAgIC8vIGZlYXR1cmVzLCB0aGUgZ2x5cGggY2FuIGJlIG1vdmVkIGNsb3NlciB0byB0aGUgbWFpbiBjb25zb25hbnQgYmFzZWQgb25cbiAgICAvLyB3aGV0aGVyIGhhbGYtZm9ybXMgaGFkIGJlZW4gZm9ybWVkLiBBY3R1YWwgcG9zaXRpb24gZm9yIHRoZSBtYXRyYSBpc1xuICAgIC8vIGRlZmluZWQgYXMg4oCcYWZ0ZXIgbGFzdCBzdGFuZGFsb25lIGhhbGFudCBnbHlwaCwgYWZ0ZXIgaW5pdGlhbCBtYXRyYVxuICAgIC8vIHBvc2l0aW9uIGFuZCBiZWZvcmUgdGhlIG1haW4gY29uc29uYW504oCdLiBJZiBaV0ogb3IgWldOSiBmb2xsb3cgdGhpc1xuICAgIC8vIGhhbGFudCwgcG9zaXRpb24gaXMgbW92ZWQgYWZ0ZXIgaXQuXG4gICAgLy9cblxuICAgIGlmIChzdGFydCArIDEgPCBlbmQgJiYgc3RhcnQgPCBiYXNlKSB7IC8vIE90aGVyd2lzZSB0aGVyZSBjYW4ndCBiZSBhbnkgcHJlLWJhc2UgbWF0cmEgY2hhcmFjdGVycy5cbiAgICAgIC8vIElmIHdlIGxvc3QgdHJhY2sgb2YgYmFzZSwgYWxhcywgcG9zaXRpb24gYmVmb3JlIGxhc3QgdGhpbmd5LlxuICAgICAgbGV0IG5ld1BvcyA9IGJhc2UgPT09IGVuZCA/IGJhc2UgLSAyIDogYmFzZSAtIDE7XG5cbiAgICAgIC8vIE1hbGF5YWxhbSAvIFRhbWlsIGRvIG5vdCBoYXZlIFwiaGFsZlwiIGZvcm1zIG9yIGV4cGxpY2l0IHZpcmFtYSBmb3Jtcy5cbiAgICAgIC8vIFRoZSBnbHlwaHMgZm9ybWVkIGJ5ICdoYWxmJyBhcmUgQ2hpbGx1cyBvciBsaWdhdGVkIGV4cGxpY2l0IHZpcmFtYXMuXG4gICAgICAvLyBXZSB3YW50IHRvIHBvc2l0aW9uIG1hdHJhIGFmdGVyIHRoZW0uXG4gICAgICBpZiAocGxhbi51bmljb2RlU2NyaXB0ICE9PSAnTWFsYXlhbGFtJyAmJiBwbGFuLnVuaWNvZGVTY3JpcHQgIT09ICdUYW1pbCcpIHtcbiAgICAgICAgd2hpbGUgKG5ld1BvcyA+IHN0YXJ0ICYmICEoZ2x5cGhzW25ld1Bvc10uc2hhcGVySW5mby5jYXRlZ29yeSAmIChDQVRFR09SSUVTLk0gfCBIQUxBTlRfT1JfQ09FTkdfRkxBR1MpKSkge1xuICAgICAgICAgIG5ld1Bvcy0tO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgd2UgZm91bmQgbm8gSGFsYW50IHdlIGFyZSBkb25lLlxuICAgICAgICAvLyBPdGhlcndpc2Ugb25seSBwcm9jZWVkIGlmIHRoZSBIYWxhbnQgZG9lc1xuICAgICAgICAvLyBub3QgYmVsb25nIHRvIHRoZSBNYXRyYSBpdHNlbGYhXG4gICAgICAgIGlmIChpc0hhbGFudE9yQ29lbmcoZ2x5cGhzW25ld1Bvc10pICYmIGdseXBoc1tuZXdQb3NdLnNoYXBlckluZm8ucG9zaXRpb24gIT09IFBPU0lUSU9OUy5QcmVfTSkge1xuICAgICAgICAgIC8vIElmIFpXSiBvciBaV05KIGZvbGxvdyB0aGlzIGhhbGFudCwgcG9zaXRpb24gaXMgbW92ZWQgYWZ0ZXIgaXQuXG4gICAgICAgICAgaWYgKG5ld1BvcyArIDEgPCBlbmQgJiYgaXNKb2luZXIoZ2x5cGhzW25ld1BvcyArIDFdKSkge1xuICAgICAgICAgICAgbmV3UG9zKys7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5ld1BvcyA9IHN0YXJ0OyAvLyBObyBtb3ZlLlxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChzdGFydCA8IG5ld1BvcyAmJiBnbHlwaHNbbmV3UG9zXS5zaGFwZXJJbmZvLnBvc2l0aW9uICE9PSBQT1NJVElPTlMuUHJlX00pIHtcbiAgICAgICAgLy8gTm93IGdvIHNlZSBpZiB0aGVyZSdzIGFjdHVhbGx5IGFueSBtYXRyYXMuLi5cbiAgICAgICAgZm9yIChsZXQgaSA9IG5ld1BvczsgaSA+IHN0YXJ0OyBpLS0pIHtcbiAgICAgICAgICBpZiAoZ2x5cGhzW2kgLSAxXS5zaGFwZXJJbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuUHJlX00pIHtcbiAgICAgICAgICAgIGxldCBvbGRQb3MgPSBpIC0gMTtcbiAgICAgICAgICAgIGlmIChvbGRQb3MgPCBiYXNlICYmIGJhc2UgPD0gbmV3UG9zKSB7IC8vIFNob3VsZG4ndCBhY3R1YWxseSBoYXBwZW4uXG4gICAgICAgICAgICAgIGJhc2UtLTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGV0IHRtcCA9IGdseXBoc1tvbGRQb3NdO1xuICAgICAgICAgICAgZ2x5cGhzLnNwbGljZShvbGRQb3MsIDAsIC4uLmdseXBocy5zcGxpY2Uob2xkUG9zICsgMSwgbmV3UG9zIC0gb2xkUG9zKSk7XG4gICAgICAgICAgICBnbHlwaHNbbmV3UG9zXSA9IHRtcDtcblxuICAgICAgICAgICAgbmV3UG9zLS07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbyBSZW9yZGVyIHJlcGg6XG4gICAgLy9cbiAgICAvLyBSZXBo4oCZcyBvcmlnaW5hbCBwb3NpdGlvbiBpcyBhbHdheXMgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgc3lsbGFibGUsXG4gICAgLy8gKGkuZS4gaXQgaXMgbm90IHJlb3JkZXJlZCBhdCB0aGUgY2hhcmFjdGVyIHJlb3JkZXJpbmcgc3RhZ2UpLiBIb3dldmVyLFxuICAgIC8vIGl0IHdpbGwgYmUgcmVvcmRlcmVkIGFjY29yZGluZyB0byB0aGUgYmFzaWMtZm9ybXMgc2hhcGluZyByZXN1bHRzLlxuICAgIC8vIFBvc3NpYmxlIHBvc2l0aW9ucyBmb3IgcmVwaCwgZGVwZW5kaW5nIG9uIHRoZSBzY3JpcHQsIGFyZTsgYWZ0ZXIgbWFpbixcbiAgICAvLyBiZWZvcmUgcG9zdC1iYXNlIGNvbnNvbmFudCBmb3JtcywgYW5kIGFmdGVyIHBvc3QtYmFzZSBjb25zb25hbnQgZm9ybXMuXG5cbiAgICAvLyBUd28gY2FzZXM6XG4gICAgLy9cbiAgICAvLyAtIElmIHJlcGhhIGlzIGVuY29kZWQgYXMgYSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzIChSYSxIIG9yIFJhLEgsWldKKSwgdGhlblxuICAgIC8vICAgd2Ugc2hvdWxkIG9ubHkgbW92ZSBpdCBpZiB0aGUgc2VxdWVuY2UgbGlnYXRlZCB0byB0aGUgcmVwaGEgZm9ybS5cbiAgICAvL1xuICAgIC8vIC0gSWYgcmVwaGEgaXMgZW5jb2RlZCBzZXBhcmF0ZWx5IGFuZCBpbiB0aGUgbG9naWNhbCBwb3NpdGlvbiwgd2Ugc2hvdWxkIG9ubHlcbiAgICAvLyAgIG1vdmUgaXQgaWYgaXQgZGlkIE5PVCBsaWdhdGUuICBJZiBpdCBsaWdhdGVkLCBpdCdzIHByb2JhYmx5IHRoZSBmb250IHRyeWluZ1xuICAgIC8vICAgdG8gbWFrZSBpdCB3b3JrIHdpdGhvdXQgdGhlIHJlb3JkZXJpbmcuXG4gICAgaWYgKHN0YXJ0ICsgMSA8IGVuZCAmJlxuICAgICAgZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuUmFfVG9fQmVjb21lX1JlcGggJiZcbiAgICAgIChnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuUmVwaGEpICE9PSAoZ2x5cGhzW3N0YXJ0XS5pc0xpZ2F0ZWQgJiYgIWdseXBoc1tzdGFydF0uaXNNdWx0aXBsaWVkKVxuICAgICkge1xuICAgICAgbGV0IG5ld1JlcGhQb3M7XG4gICAgICBsZXQgcmVwaFBvcyA9IGluZGljQ29uZmlnLnJlcGhQb3M7XG4gICAgICBsZXQgZm91bmQgPSBmYWxzZTtcblxuICAgICAgLy8gMS4gSWYgcmVwaCBzaG91bGQgYmUgcG9zaXRpb25lZCBhZnRlciBwb3N0LWJhc2UgY29uc29uYW50IGZvcm1zLFxuICAgICAgLy8gICAgcHJvY2VlZCB0byBzdGVwIDUuXG4gICAgICBpZiAocmVwaFBvcyAhPT0gUE9TSVRJT05TLkFmdGVyX1Bvc3QpIHtcbiAgICAgICAgLy8gIDIuIElmIHRoZSByZXBoIHJlcG9zaXRpb25pbmcgY2xhc3MgaXMgbm90IGFmdGVyIHBvc3QtYmFzZTogdGFyZ2V0XG4gICAgICAgIC8vICAgICBwb3NpdGlvbiBpcyBhZnRlciB0aGUgZmlyc3QgZXhwbGljaXQgaGFsYW50IGdseXBoIGJldHdlZW4gdGhlXG4gICAgICAgIC8vICAgICBmaXJzdCBwb3N0LXJlcGggY29uc29uYW50IGFuZCBsYXN0IG1haW4gY29uc29uYW50LiBJZiBaV0ogb3IgWldOSlxuICAgICAgICAvLyAgICAgYXJlIGZvbGxvd2luZyB0aGlzIGhhbGFudCwgcG9zaXRpb24gaXMgbW92ZWQgYWZ0ZXIgaXQuIElmIHN1Y2hcbiAgICAgICAgLy8gICAgIHBvc2l0aW9uIGlzIGZvdW5kLCB0aGlzIGlzIHRoZSB0YXJnZXQgcG9zaXRpb24uIE90aGVyd2lzZSxcbiAgICAgICAgLy8gICAgIHByb2NlZWQgdG8gdGhlIG5leHQgc3RlcC5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gICAgIE5vdGU6IGluIG9sZC1pbXBsZW1lbnRhdGlvbiBmb250cywgd2hlcmUgY2xhc3NpZmljYXRpb25zIHdlcmVcbiAgICAgICAgLy8gICAgIGZpeGVkIGluIHNoYXBpbmcgZW5naW5lLCB0aGVyZSB3YXMgbm8gY2FzZSB3aGVyZSByZXBoIHBvc2l0aW9uXG4gICAgICAgIC8vICAgICB3aWxsIGJlIGZvdW5kIG9uIHRoaXMgc3RlcC5cbiAgICAgICAgbmV3UmVwaFBvcyA9IHN0YXJ0ICsgMTtcbiAgICAgICAgd2hpbGUgKG5ld1JlcGhQb3MgPCBiYXNlICYmICFpc0hhbGFudE9yQ29lbmcoZ2x5cGhzW25ld1JlcGhQb3NdKSkge1xuICAgICAgICAgIG5ld1JlcGhQb3MrKztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuZXdSZXBoUG9zIDwgYmFzZSAmJiBpc0hhbGFudE9yQ29lbmcoZ2x5cGhzW25ld1JlcGhQb3NdKSkge1xuICAgICAgICAgIC8vIC0+SWYgWldKIG9yIFpXTkogYXJlIGZvbGxvd2luZyB0aGlzIGhhbGFudCwgcG9zaXRpb24gaXMgbW92ZWQgYWZ0ZXIgaXQuXG4gICAgICAgICAgaWYgKG5ld1JlcGhQb3MgKyAxIDwgYmFzZSAmJiBpc0pvaW5lcihnbHlwaHNbbmV3UmVwaFBvcyArIDFdKSkge1xuICAgICAgICAgICAgbmV3UmVwaFBvcysrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDMuIElmIHJlcGggc2hvdWxkIGJlIHJlcG9zaXRpb25lZCBhZnRlciB0aGUgbWFpbiBjb25zb25hbnQ6IGZpbmQgdGhlXG4gICAgICAgIC8vICAgIGZpcnN0IGNvbnNvbmFudCBub3QgbGlnYXRlZCB3aXRoIG1haW4sIG9yIGZpbmQgdGhlIGZpcnN0XG4gICAgICAgIC8vICAgIGNvbnNvbmFudCB0aGF0IGlzIG5vdCBhIHBvdGVudGlhbCBwcmUtYmFzZSByZW9yZGVyaW5nIFJhLlxuICAgICAgICBpZiAoIWZvdW5kICYmIHJlcGhQb3MgPT09IFBPU0lUSU9OUy5BZnRlcl9NYWluKSB7XG4gICAgICAgICAgbmV3UmVwaFBvcyA9IGJhc2U7XG4gICAgICAgICAgd2hpbGUgKG5ld1JlcGhQb3MgKyAxIDwgZW5kICYmIGdseXBoc1tuZXdSZXBoUG9zICsgMV0uc2hhcGVySW5mby5wb3NpdGlvbiA8PSBQT1NJVElPTlMuQWZ0ZXJfTWFpbikge1xuICAgICAgICAgICAgbmV3UmVwaFBvcysrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZvdW5kID0gbmV3UmVwaFBvcyA8IGVuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDQuIElmIHJlcGggc2hvdWxkIGJlIHBvc2l0aW9uZWQgYmVmb3JlIHBvc3QtYmFzZSBjb25zb25hbnQsIGZpbmRcbiAgICAgICAgLy8gICAgZmlyc3QgcG9zdC1iYXNlIGNsYXNzaWZpZWQgY29uc29uYW50IG5vdCBsaWdhdGVkIHdpdGggbWFpbi4gSWYgbm9cbiAgICAgICAgLy8gICAgY29uc29uYW50IGlzIGZvdW5kLCB0aGUgdGFyZ2V0IHBvc2l0aW9uIHNob3VsZCBiZSBiZWZvcmUgdGhlXG4gICAgICAgIC8vICAgIGZpcnN0IG1hdHJhLCBzeWxsYWJsZSBtb2RpZmllciBzaWduIG9yIHZlZGljIHNpZ24uXG4gICAgICAgIC8vXG4gICAgICAgIC8vIFRoaXMgaXMgb3VyIHRha2Ugb24gd2hhdCBzdGVwIDQgaXMgdHJ5aW5nIHRvIHNheSAoYW5kIGZhaWxpbmcsIEJBRExZKS5cbiAgICAgICAgaWYgKCFmb3VuZCAmJiByZXBoUG9zID09PSBQT1NJVElPTlMuQWZ0ZXJfU3ViKSB7XG4gICAgICAgICAgbmV3UmVwaFBvcyA9IGJhc2U7XG4gICAgICAgICAgd2hpbGUgKG5ld1JlcGhQb3MgKyAxIDwgZW5kICYmICEoZ2x5cGhzW25ld1JlcGhQb3MgKyAxXS5zaGFwZXJJbmZvLnBvc2l0aW9uICYgKFBPU0lUSU9OUy5Qb3N0X0MgfCBQT1NJVElPTlMuQWZ0ZXJfUG9zdCB8IFBPU0lUSU9OUy5TTVZEKSkpIHtcbiAgICAgICAgICAgIG5ld1JlcGhQb3MrKztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmb3VuZCA9IG5ld1JlcGhQb3MgPCBlbmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gIDUuIElmIG5vIGNvbnNvbmFudCBpcyBmb3VuZCBpbiBzdGVwcyAzIG9yIDQsIG1vdmUgcmVwaCB0byBhIHBvc2l0aW9uXG4gICAgICAvLyAgICAgaW1tZWRpYXRlbHkgYmVmb3JlIHRoZSBmaXJzdCBwb3N0LWJhc2UgbWF0cmEsIHN5bGxhYmxlIG1vZGlmaWVyXG4gICAgICAvLyAgICAgc2lnbiBvciB2ZWRpYyBzaWduIHRoYXQgaGFzIGEgcmVvcmRlcmluZyBjbGFzcyBhZnRlciB0aGUgaW50ZW5kZWRcbiAgICAgIC8vICAgICByZXBoIHBvc2l0aW9uLiBGb3IgZXhhbXBsZSwgaWYgdGhlIHJlb3JkZXJpbmcgcG9zaXRpb24gZm9yIHJlcGhcbiAgICAgIC8vICAgICBpcyBwb3N0LW1haW4sIGl0IHdpbGwgc2tpcCBhYm92ZS1iYXNlIG1hdHJhcyB0aGF0IGFsc28gaGF2ZSBhXG4gICAgICAvLyAgICAgcG9zdC1tYWluIHBvc2l0aW9uLlxuICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICAvLyBDb3BpZWQgZnJvbSBzdGVwIDIuXG4gICAgICAgIG5ld1JlcGhQb3MgPSBzdGFydCArIDE7XG4gICAgICAgIHdoaWxlIChuZXdSZXBoUG9zIDwgYmFzZSAmJiAhaXNIYWxhbnRPckNvZW5nKGdseXBoc1tuZXdSZXBoUG9zXSkpIHtcbiAgICAgICAgICBuZXdSZXBoUG9zKys7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobmV3UmVwaFBvcyA8IGJhc2UgJiYgaXNIYWxhbnRPckNvZW5nKGdseXBoc1tuZXdSZXBoUG9zXSkpIHtcbiAgICAgICAgICAvLyAtPklmIFpXSiBvciBaV05KIGFyZSBmb2xsb3dpbmcgdGhpcyBoYWxhbnQsIHBvc2l0aW9uIGlzIG1vdmVkIGFmdGVyIGl0LlxuICAgICAgICAgIGlmIChuZXdSZXBoUG9zICsgMSA8IGJhc2UgJiYgaXNKb2luZXIoZ2x5cGhzW25ld1JlcGhQb3MgKyAxXSkpIHtcbiAgICAgICAgICAgIG5ld1JlcGhQb3MrKztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmb3VuZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gNi4gT3RoZXJ3aXNlLCByZW9yZGVyIHJlcGggdG8gdGhlIGVuZCBvZiB0aGUgc3lsbGFibGUuXG4gICAgICBpZiAoIWZvdW5kKSB7XG4gICAgICAgIG5ld1JlcGhQb3MgPSBlbmQgLSAxO1xuICAgICAgICB3aGlsZSAobmV3UmVwaFBvcyA+IHN0YXJ0ICYmIGdseXBoc1tuZXdSZXBoUG9zXS5zaGFwZXJJbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuU01WRCkge1xuICAgICAgICAgIG5ld1JlcGhQb3MtLTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIHRoZSBSZXBoIGlzIHRvIGJlIGVuZGluZyB1cCBhZnRlciBhIE1hdHJhLEhhbGFudCBzZXF1ZW5jZSxcbiAgICAgICAgLy8gcG9zaXRpb24gaXQgYmVmb3JlIHRoYXQgSGFsYW50IHNvIGl0IGNhbiBpbnRlcmFjdCB3aXRoIHRoZSBNYXRyYS5cbiAgICAgICAgLy8gSG93ZXZlciwgaWYgaXQncyBhIHBsYWluIENvbnNvbmFudCxIYWxhbnQgd2Ugc2hvdWxkbid0IGRvIHRoYXQuXG4gICAgICAgIC8vIFVuaXNjcmliZSBkb2Vzbid0IGRvIHRoaXMuXG4gICAgICAgIC8vIFRFU1Q6IFUrMDkzMCxVKzA5NEQsVSswOTE1LFUrMDk0QixVKzA5NERcbiAgICAgICAgaWYgKGlzSGFsYW50T3JDb2VuZyhnbHlwaHNbbmV3UmVwaFBvc10pKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IGJhc2UgKyAxOyBpIDwgbmV3UmVwaFBvczsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZ2x5cGhzW2ldLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09IENBVEVHT1JJRVMuTSkge1xuICAgICAgICAgICAgICBuZXdSZXBoUG9zLS07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGxldCByZXBoID0gZ2x5cGhzW3N0YXJ0XTtcbiAgICAgIGdseXBocy5zcGxpY2Uoc3RhcnQsIDAsIC4uLmdseXBocy5zcGxpY2Uoc3RhcnQgKyAxLCBuZXdSZXBoUG9zIC0gc3RhcnQpKTtcbiAgICAgIGdseXBoc1tuZXdSZXBoUG9zXSA9IHJlcGg7XG5cbiAgICAgIGlmIChzdGFydCA8IGJhc2UgJiYgYmFzZSA8PSBuZXdSZXBoUG9zKSB7XG4gICAgICAgIGJhc2UtLTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvIFJlb3JkZXIgcHJlLWJhc2UgcmVvcmRlcmluZyBjb25zb25hbnRzOlxuICAgIC8vXG4gICAgLy8gSWYgYSBwcmUtYmFzZSByZW9yZGVyaW5nIGNvbnNvbmFudCBpcyBmb3VuZCwgcmVvcmRlciBpdCBhY2NvcmRpbmcgdG9cbiAgICAvLyB0aGUgZm9sbG93aW5nIHJ1bGVzOlxuICAgIGlmICh0cnlQcmVmICYmIGJhc2UgKyAxIDwgZW5kKSB7XG4gICAgICBmb3IgKGxldCBpID0gYmFzZSArIDE7IGkgPCBlbmQ7IGkrKykge1xuICAgICAgICBpZiAoZ2x5cGhzW2ldLmZlYXR1cmVzLnByZWYpIHtcbiAgICAgICAgICAgLy8gMS4gT25seSByZW9yZGVyIGEgZ2x5cGggcHJvZHVjZWQgYnkgc3Vic3RpdHV0aW9uIGR1cmluZyBhcHBsaWNhdGlvblxuICAgICAgICAgICAvLyAgICBvZiB0aGUgPHByZWY+IGZlYXR1cmUuIChOb3RlIHRoYXQgYSBmb250IG1heSBzaGFwZSBhIFJhIGNvbnNvbmFudCB3aXRoXG4gICAgICAgICAgIC8vICAgIHRoZSBmZWF0dXJlIGdlbmVyYWxseSBidXQgYmxvY2sgaXQgaW4gY2VydGFpbiBjb250ZXh0cy4pXG5cbiAgICAgICAgICAvLyBOb3RlOiBXZSBqdXN0IGNoZWNrIHRoYXQgc29tZXRoaW5nIGdvdCBzdWJzdGl0dXRlZC4gIFdlIGRvbid0IGNoZWNrIHRoYXRcbiAgICAgICAgICAvLyB0aGUgPHByZWY+IGZlYXR1cmUgYWN0dWFsbHkgZGlkIGl0Li4uXG4gICAgICAgICAgLy9cbiAgICAgICAgICAvLyBSZW9yZGVyIHByZWYgb25seSBpZiBpdCBsaWdhdGVkLlxuICAgICAgICAgIGlmIChnbHlwaHNbaV0uaXNMaWdhdGVkICYmICFnbHlwaHNbaV0uaXNNdWx0aXBsaWVkKSB7XG4gICAgICAgICAgICAvLyAyLiBUcnkgdG8gZmluZCBhIHRhcmdldCBwb3NpdGlvbiB0aGUgc2FtZSB3YXkgYXMgZm9yIHByZS1iYXNlIG1hdHJhLlxuICAgICAgICAgICAgLy8gICAgSWYgaXQgaXMgZm91bmQsIHJlb3JkZXIgcHJlLWJhc2UgY29uc29uYW50IGdseXBoLlxuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIDMuIElmIHBvc2l0aW9uIGlzIG5vdCBmb3VuZCwgcmVvcmRlciBpbW1lZGlhdGVseSBiZWZvcmUgbWFpblxuICAgICAgICAgICAgLy8gICAgY29uc29uYW50LlxuICAgICAgICAgICAgbGV0IG5ld1BvcyA9IGJhc2U7XG5cbiAgICAgICAgICAgIC8vIE1hbGF5YWxhbSAvIFRhbWlsIGRvIG5vdCBoYXZlIFwiaGFsZlwiIGZvcm1zIG9yIGV4cGxpY2l0IHZpcmFtYSBmb3Jtcy5cbiAgICAgICAgICAgIC8vIFRoZSBnbHlwaHMgZm9ybWVkIGJ5ICdoYWxmJyBhcmUgQ2hpbGx1cyBvciBsaWdhdGVkIGV4cGxpY2l0IHZpcmFtYXMuXG4gICAgICAgICAgICAvLyBXZSB3YW50IHRvIHBvc2l0aW9uIG1hdHJhIGFmdGVyIHRoZW0uXG4gICAgICAgICAgICBpZiAocGxhbi51bmljb2RlU2NyaXB0ICE9PSAnTWFsYXlhbGFtJyAmJiBwbGFuLnVuaWNvZGVTY3JpcHQgIT09ICdUYW1pbCcpIHtcbiAgICAgICAgICAgICAgd2hpbGUgKG5ld1BvcyA+IHN0YXJ0ICYmICEoZ2x5cGhzW25ld1BvcyAtIDFdLnNoYXBlckluZm8uY2F0ZWdvcnkgJiAoQ0FURUdPUklFUy5NIHwgSEFMQU5UX09SX0NPRU5HX0ZMQUdTKSkpIHtcbiAgICAgICAgICAgICAgICBuZXdQb3MtLTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC8vIEluIEtobWVyIGNvZW5nIG1vZGVsLCBhIEgsUmEgY2FuIGdvICphZnRlciogbWF0cmFzLiAgSWYgaXQgZ29lcyBhZnRlciBhXG4gICAgICAgICAgICAgIC8vIHNwbGl0IG1hdHJhLCBpdCBzaG91bGQgYmUgcmVvcmRlcmVkIHRvICpiZWZvcmUqIHRoZSBsZWZ0IHBhcnQgb2Ygc3VjaCBtYXRyYS5cbiAgICAgICAgICAgICAgaWYgKG5ld1BvcyA+IHN0YXJ0ICYmIGdseXBoc1tuZXdQb3MgLSAxXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLk0pIHtcbiAgICAgICAgICAgICAgICBsZXQgb2xkUG9zID0gaTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gYmFzZSArIDE7IGogPCBvbGRQb3M7IGorKykge1xuICAgICAgICAgICAgICAgICAgaWYgKGdseXBoc1tqXS5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSBDQVRFR09SSUVTLk0pIHtcbiAgICAgICAgICAgICAgICAgICAgbmV3UG9zLS07XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobmV3UG9zID4gc3RhcnQgJiYgaXNIYWxhbnRPckNvZW5nKGdseXBoc1tuZXdQb3MgLSAxXSkpIHtcbiAgICAgICAgICAgICAgLy8gLT4gSWYgWldKIG9yIFpXTkogZm9sbG93IHRoaXMgaGFsYW50LCBwb3NpdGlvbiBpcyBtb3ZlZCBhZnRlciBpdC5cbiAgICAgICAgICAgICAgaWYgKG5ld1BvcyA8IGVuZCAmJiBpc0pvaW5lcihnbHlwaHNbbmV3UG9zXSkpIHtcbiAgICAgICAgICAgICAgICBuZXdQb3MrKztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsZXQgb2xkUG9zID0gaTtcbiAgICAgICAgICAgIGxldCB0bXAgPSBnbHlwaHNbb2xkUG9zXTtcbiAgICAgICAgICAgIGdseXBocy5zcGxpY2UobmV3UG9zICsgMSwgMCwgLi4uZ2x5cGhzLnNwbGljZShuZXdQb3MsIG9sZFBvcyAtIG5ld1BvcykpO1xuICAgICAgICAgICAgZ2x5cGhzW25ld1Bvc10gPSB0bXA7XG5cbiAgICAgICAgICAgIGlmIChuZXdQb3MgPD0gYmFzZSAmJiBiYXNlIDwgb2xkUG9zKSB7XG4gICAgICAgICAgICAgIGJhc2UrKztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFwcGx5ICdpbml0JyB0byB0aGUgTGVmdCBNYXRyYSBpZiBpdCdzIGEgd29yZCBzdGFydC5cbiAgICBpZiAoZ2x5cGhzW3N0YXJ0XS5zaGFwZXJJbmZvLnBvc2l0aW9uID09PSBQT1NJVElPTlMuUHJlX00gJiYgKCFzdGFydCB8fCAhL0NmfE1uLy50ZXN0KGdldENhdGVnb3J5KGdseXBoc1tzdGFydCAtIDFdLmNvZGVQb2ludHNbMF0pKSkpIHtcbiAgICAgIGdseXBoc1tzdGFydF0uZmVhdHVyZXMuaW5pdCA9IHRydWU7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIG5leHRTeWxsYWJsZShnbHlwaHMsIHN0YXJ0KSB7XG4gIGlmIChzdGFydCA+PSBnbHlwaHMubGVuZ3RoKSByZXR1cm4gc3RhcnQ7XG4gIGxldCBzeWxsYWJsZSA9IGdseXBoc1tzdGFydF0uc2hhcGVySW5mby5zeWxsYWJsZTtcbiAgd2hpbGUgKCsrc3RhcnQgPCBnbHlwaHMubGVuZ3RoICYmIGdseXBoc1tzdGFydF0uc2hhcGVySW5mby5zeWxsYWJsZSA9PT0gc3lsbGFibGUpO1xuICByZXR1cm4gc3RhcnQ7XG59XG4iLCAie1wic3RhdGVUYWJsZVwiOltbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMiwzLDQsNSw2LDcsOCw5LDAsMTAsMTEsMTEsMTIsMTMsMTQsMTUsMTYsMTddLFswLDAsMCwxOCwxOSwyMCwyMSwyMiwyMywwLDI0LDAsMCwyNSwyNiwwLDAsMjcsMF0sWzAsMCwwLDI4LDI5LDMwLDMxLDMyLDMzLDAsMzQsMCwwLDM1LDM2LDAsMCwzNywwXSxbMCwwLDAsMzgsNSw3LDcsOCw5LDAsMTAsMCwwLDAsMTMsMCwwLDE2LDBdLFswLDM5LDAsMCwwLDQwLDQxLDAsOSwwLDEwLDAsMCwwLDQyLDAsMzksMCwwXSxbMCwwLDAsMCw0Myw0NCw0NCw4LDksMCwwLDAsMCwxMiw0MywwLDAsMCwwXSxbMCwwLDAsMCw0Myw0NCw0NCw4LDksMCwwLDAsMCwwLDQzLDAsMCwwLDBdLFswLDAsMCw0NSw0Niw0Nyw0OCw0OSw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCw1MCwwLDAsNTEsMCwxMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDUyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDUzLDU0LDU1LDU2LDU3LDU4LDAsNTksMCwwLDYwLDYxLDAsMCw2MiwwXSxbMCwwLDAsNCw1LDcsNyw4LDksMCwxMCwwLDAsMCwxMywwLDAsMTYsMF0sWzAsNjMsNjQsMCwwLDQwLDQxLDAsOSwwLDEwLDAsMCwwLDQyLDAsNjMsMCwwXSxbMCwyLDMsNCw1LDYsNyw4LDksMCwxMCwxMSwxMSwxMiwxMywwLDIsMTYsMF0sWzAsMCwwLDE4LDY1LDIwLDIxLDIyLDIzLDAsMjQsMCwwLDI1LDI2LDAsMCwyNywwXSxbMCwwLDAsMCw2Niw2Nyw2Nyw4LDksMCwxMCwwLDAsMCw2OCwwLDAsMCwwXSxbMCwwLDAsNjksMCw3MCw3MCwwLDcxLDAsNzIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNzMsMTksNzQsNzQsMjIsMjMsMCwyNCwwLDAsMCwyNiwwLDAsMjcsMF0sWzAsNzUsMCwwLDAsNzYsNzcsMCwyMywwLDI0LDAsMCwwLDc4LDAsNzUsMCwwXSxbMCwwLDAsMCw3OSw4MCw4MCwyMiwyMywwLDAsMCwwLDI1LDc5LDAsMCwwLDBdLFswLDAsMCwxOCwxOSwyMCw3NCwyMiwyMywwLDI0LDAsMCwyNSwyNiwwLDAsMjcsMF0sWzAsMCwwLDgxLDgyLDgzLDg0LDg1LDIzLDAsMjQsMCwwLDAsNzgsMCwwLDAsMF0sWzAsMCwwLDAsMCw4NiwwLDAsODcsMCwyNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDg4LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDE4LDE5LDc0LDc0LDIyLDIzLDAsMjQsMCwwLDAsMjYsMCwwLDI3LDBdLFswLDg5LDkwLDAsMCw3Niw3NywwLDIzLDAsMjQsMCwwLDAsNzgsMCw4OSwwLDBdLFswLDAsMCwwLDkxLDkyLDkyLDIyLDIzLDAsMjQsMCwwLDAsOTMsMCwwLDAsMF0sWzAsMCwwLDk0LDI5LDk1LDMxLDMyLDMzLDAsMzQsMCwwLDAsMzYsMCwwLDM3LDBdLFswLDk2LDAsMCwwLDk3LDk4LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDk2LDAsMF0sWzAsMCwwLDAsMTAwLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwzNSwxMDAsMCwwLDAsMF0sWzAsMCwwLDAsMTAwLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwwLDEwMCwwLDAsMCwwXSxbMCwwLDAsMTAyLDEwMywxMDQsMTA1LDEwNiwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsMTA3LDAsMCwxMDgsMCwzNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDEwOSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyOCwyOSw5NSwzMSwzMiwzMywwLDM0LDAsMCwwLDM2LDAsMCwzNywwXSxbMCwxMTAsMTExLDAsMCw5Nyw5OCwwLDMzLDAsMzQsMCwwLDAsOTksMCwxMTAsMCwwXSxbMCwwLDAsMCwxMTIsMTEzLDExMywzMiwzMywwLDM0LDAsMCwwLDExNCwwLDAsMCwwXSxbMCwwLDAsMCw1LDcsNyw4LDksMCwxMCwwLDAsMCwxMywwLDAsMTYsMF0sWzAsMCwwLDExNSwxMTYsMTE3LDExOCw4LDksMCwxMCwwLDAsMTE5LDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDM5LDAsMTIyLDAsMTIzLDEyMyw4LDksMCwxMCwwLDAsMCw0MiwwLDM5LDAsMF0sWzAsMTI0LDY0LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMTI0LDAsMF0sWzAsMzksMCwwLDAsMTIxLDEyNSwwLDksMCwxMCwwLDAsMCw0MiwwLDM5LDAsMF0sWzAsMCwwLDAsMCwxMjYsMTI2LDgsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0Niw0Nyw0OCw0OSw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCw0Nyw0Nyw0OSw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwxMjcsMTI3LDQ5LDksMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMTI4LDEyNywxMjcsNDksOSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMTI5LDEzMCwxMzEsMTMyLDEzMyw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMTAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDUwLDAsMCwwLDAsMTAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwxMzQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMTM1LDU0LDU2LDU2LDU3LDU4LDAsNTksMCwwLDAsNjEsMCwwLDYyLDBdLFswLDEzNiwwLDAsMCwxMzcsMTM4LDAsNTgsMCw1OSwwLDAsMCwxMzksMCwxMzYsMCwwXSxbMCwwLDAsMCwxNDAsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDYwLDE0MCwwLDAsMCwwXSxbMCwwLDAsMCwxNDAsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDAsMTQwLDAsMCwwLDBdLFswLDAsMCwxNDIsMTQzLDE0NCwxNDUsMTQ2LDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMTQ3LDAsMCwxNDgsMCw1OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDE0OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw1Myw1NCw1Niw1Niw1Nyw1OCwwLDU5LDAsMCwwLDYxLDAsMCw2MiwwXSxbMCwxNTAsMTUxLDAsMCwxMzcsMTM4LDAsNTgsMCw1OSwwLDAsMCwxMzksMCwxNTAsMCwwXSxbMCwwLDAsMCwxNTIsMTUzLDE1Myw1Nyw1OCwwLDU5LDAsMCwwLDE1NCwwLDAsMCwwXSxbMCwwLDAsMTU1LDExNiwxNTYsMTU3LDgsOSwwLDEwLDAsMCwxNTgsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsMCwwLDAsMCwwXSxbMCw3NSwzLDQsNSwxNTksMTYwLDgsMTYxLDAsMTYyLDAsMTEsMTIsMTYzLDAsNzUsMTYsMF0sWzAsMCwwLDAsMCw0MCwxNjQsMCw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMTY1LDQ0LDQ0LDgsOSwwLDAsMCwwLDAsMTY1LDAsMCwwLDBdLFswLDEyNCw2NCwwLDAsNDAsMTY0LDAsOSwwLDEwLDAsMCwwLDQyLDAsMTI0LDAsMF0sWzAsMCwwLDAsMCw3MCw3MCwwLDcxLDAsNzIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDcxLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMTY2LDAsMCwxNjcsMCw3MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDE2OCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDE5LDc0LDc0LDIyLDIzLDAsMjQsMCwwLDAsMjYsMCwwLDI3LDBdLFswLDAsMCwwLDc5LDgwLDgwLDIyLDIzLDAsMCwwLDAsMCw3OSwwLDAsMCwwXSxbMCwwLDAsMTY5LDE3MCwxNzEsMTcyLDIyLDIzLDAsMjQsMCwwLDE3MywxNzQsMCwwLDI3LDBdLFswLDAsMCwwLDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsNzgsMCwwLDAsMF0sWzAsNzUsMCwxNzYsMCwxNzcsMTc3LDIyLDIzLDAsMjQsMCwwLDAsNzgsMCw3NSwwLDBdLFswLDE3OCw5MCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDE3OCwwLDBdLFswLDc1LDAsMCwwLDE3NSwxNzksMCwyMywwLDI0LDAsMCwwLDc4LDAsNzUsMCwwXSxbMCwwLDAsMCwwLDE4MCwxODAsMjIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw4Miw4Myw4NCw4NSwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDAsODMsODMsODUsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDE4MSwxODEsODUsMjMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMTgyLDE4MSwxODEsODUsMjMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDE4MywxODQsMTg1LDE4NiwxODcsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwyNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsODYsMCwwLDAsMCwyNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDE4OCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwxODksMTcwLDE5MCwxOTEsMjIsMjMsMCwyNCwwLDAsMTkyLDE3NCwwLDAsMjcsMF0sWzAsMCwwLDAsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNzYsMTkzLDAsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwxOTQsODAsODAsMjIsMjMsMCwwLDAsMCwwLDE5NCwwLDAsMCwwXSxbMCwxNzgsOTAsMCwwLDc2LDE5MywwLDIzLDAsMjQsMCwwLDAsNzgsMCwxNzgsMCwwXSxbMCwwLDAsMCwyOSw5NSwzMSwzMiwzMywwLDM0LDAsMCwwLDM2LDAsMCwzNywwXSxbMCwwLDAsMCwxMDAsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDAsMTAwLDAsMCwwLDBdLFswLDAsMCwxOTUsMTk2LDE5NywxOTgsMzIsMzMsMCwzNCwwLDAsMTk5LDIwMCwwLDAsMzcsMF0sWzAsMCwwLDAsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCw5NiwwLDIwMiwwLDIwMywyMDMsMzIsMzMsMCwzNCwwLDAsMCw5OSwwLDk2LDAsMF0sWzAsMjA0LDExMSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIwNCwwLDBdLFswLDk2LDAsMCwwLDIwMSwyMDUsMCwzMywwLDM0LDAsMCwwLDk5LDAsOTYsMCwwXSxbMCwwLDAsMCwwLDIwNiwyMDYsMzIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxMDMsMTA0LDEwNSwxMDYsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwwLDEwNCwxMDQsMTA2LDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDAsMCwyMDcsMjA3LDEwNiwzMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwyMDgsMjA3LDIwNywxMDYsMzMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDIwOSwyMTAsMjExLDIxMiwyMTMsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwzNCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMTA3LDAsMCwwLDAsMzQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwyMTQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjE1LDE5NiwyMTYsMjE3LDMyLDMzLDAsMzQsMCwwLDIxOCwyMDAsMCwwLDM3LDBdLFswLDAsMCwwLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDk3LDIxOSwwLDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDAsMjIwLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwwLDIyMCwwLDAsMCwwXSxbMCwyMDQsMTExLDAsMCw5NywyMTksMCwzMywwLDM0LDAsMCwwLDk5LDAsMjA0LDAsMF0sWzAsMCwwLDIyMSwxMTYsMjIyLDIyMiw4LDksMCwxMCwwLDAsMCwxMjAsMCwwLDE2LDBdLFswLDIyMywwLDAsMCw0MCwyMjQsMCw5LDAsMTAsMCwwLDAsNDIsMCwyMjMsMCwwXSxbMCwwLDAsMCwyMjUsNDQsNDQsOCw5LDAsMCwwLDAsMTE5LDIyNSwwLDAsMCwwXSxbMCwwLDAsMTE1LDExNiwxMTcsMjIyLDgsOSwwLDEwLDAsMCwxMTksMTIwLDAsMCwxNiwwXSxbMCwwLDAsMTE1LDExNiwyMjIsMjIyLDgsOSwwLDEwLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMjI2LDY0LDAsMCw0MCwyMjQsMCw5LDAsMTAsMCwwLDAsNDIsMCwyMjYsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDksMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMzksMCwwLDAsMTIxLDEyMSwwLDksMCwxMCwwLDAsMCw0MiwwLDM5LDAsMF0sWzAsMCwwLDAsMCw0NCw0NCw4LDksMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDIyNywwLDIyOCwyMjksMCw5LDAsMTAsMCwwLDIzMCwwLDAsMCwwLDBdLFswLDM5LDAsMTIyLDAsMTIxLDEyMSwwLDksMCwxMCwwLDAsMCw0MiwwLDM5LDAsMF0sWzAsMCwwLDAsMCwwLDAsOCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjMxLDIzMSw0OSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwyMzIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDEzMCwxMzEsMTMyLDEzMyw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwxMzEsMTMxLDEzMyw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDAsMCwyMzMsMjMzLDEzMyw5LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDIzNCwyMzMsMjMzLDEzMyw5LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyMzUsMjM2LDIzNywyMzgsMjM5LDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsNTQsNTYsNTYsNTcsNTgsMCw1OSwwLDAsMCw2MSwwLDAsNjIsMF0sWzAsMCwwLDI0MCwyNDEsMjQyLDI0Myw1Nyw1OCwwLDU5LDAsMCwyNDQsMjQ1LDAsMCw2MiwwXSxbMCwwLDAsMCwwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwxMzYsMCwyNDcsMCwyNDgsMjQ4LDU3LDU4LDAsNTksMCwwLDAsMTM5LDAsMTM2LDAsMF0sWzAsMjQ5LDE1MSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDI0OSwwLDBdLFswLDEzNiwwLDAsMCwyNDYsMjUwLDAsNTgsMCw1OSwwLDAsMCwxMzksMCwxMzYsMCwwXSxbMCwwLDAsMCwwLDI1MSwyNTEsNTcsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxNDMsMTQ0LDE0NSwxNDYsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDAsMCwxNDQsMTQ0LDE0Niw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwwLDI1MiwyNTIsMTQ2LDU4LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDI1MywyNTIsMjUyLDE0Niw1OCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjU0LDI1NSwyNTYsMjU3LDI1OCw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCw1OSwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMTQ3LDAsMCwwLDAsNTksMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwyNTksMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjYwLDI0MSwyNjEsMjYyLDU3LDU4LDAsNTksMCwwLDI2MywyNDUsMCwwLDYyLDBdLFswLDAsMCwwLDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDEzNywyNjQsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwyNjUsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDAsMjY1LDAsMCwwLDBdLFswLDI0OSwxNTEsMCwwLDEzNywyNjQsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDI0OSwwLDBdLFswLDAsMCwyMjEsMTE2LDIyMiwyMjIsOCw5LDAsMTAsMCwwLDAsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCwyMjUsNDQsNDQsOCw5LDAsMCwwLDAsMTU4LDIyNSwwLDAsMCwwXSxbMCwwLDAsMTU1LDExNiwxNTYsMjIyLDgsOSwwLDEwLDAsMCwxNTgsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMTU1LDExNiwyMjIsMjIyLDgsOSwwLDEwLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsNDMsMjY2LDI2Niw4LDE2MSwwLDI0LDAsMCwxMiwyNjcsMCwwLDAsMF0sWzAsNzUsMCwxNzYsNDMsMjY4LDI2OCwyNjksMTYxLDAsMjQsMCwwLDAsMjY3LDAsNzUsMCwwXSxbMCwwLDAsMCwwLDI3MCwwLDAsMjcxLDAsMTYyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMjcyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMjczLDI3NCwwLDAsNDAsNDEsMCw5LDAsMTAsMCwwLDAsNDIsMCwyNzMsMCwwXSxbMCwwLDAsNDAsMCwxMjMsMTIzLDgsOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDAsMCwwLDAsMTIxLDI3NSwwLDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCw3MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMTY2LDAsMCwwLDAsNzIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwyNzYsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjc3LDE3MCwyNzgsMjc4LDIyLDIzLDAsMjQsMCwwLDAsMTc0LDAsMCwyNywwXSxbMCwyNzksMCwwLDAsNzYsMjgwLDAsMjMsMCwyNCwwLDAsMCw3OCwwLDI3OSwwLDBdLFswLDAsMCwwLDI4MSw4MCw4MCwyMiwyMywwLDAsMCwwLDE3MywyODEsMCwwLDAsMF0sWzAsMCwwLDE2OSwxNzAsMTcxLDI3OCwyMiwyMywwLDI0LDAsMCwxNzMsMTc0LDAsMCwyNywwXSxbMCwwLDAsMTY5LDE3MCwyNzgsMjc4LDIyLDIzLDAsMjQsMCwwLDAsMTc0LDAsMCwyNywwXSxbMCwyODIsOTAsMCwwLDc2LDI4MCwwLDIzLDAsMjQsMCwwLDAsNzgsMCwyODIsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDc1LDAsMCwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDc4LDAsNzUsMCwwXSxbMCwwLDAsMCwwLDgwLDgwLDIyLDIzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwyODMsMCwyODQsMjg1LDAsMjMsMCwyNCwwLDAsMjg2LDAsMCwwLDAsMF0sWzAsNzUsMCwxNzYsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDc1LDAsMF0sWzAsMCwwLDAsMCwwLDAsMjIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI4NywyODcsODUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMjg4LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxODQsMTg1LDE4NiwxODcsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDE4NSwxODUsMTg3LDIzLDAsMjQsMCwwLDAsNzgsMCwwLDAsMF0sWzAsMCwwLDAsMCwyODksMjg5LDE4NywyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwyOTAsMjg5LDI4OSwxODcsMjMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDI5MSwyOTIsMjkzLDI5NCwyOTUsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDI3NywxNzAsMjc4LDI3OCwyMiwyMywwLDI0LDAsMCwwLDE3NCwwLDAsMjcsMF0sWzAsMCwwLDAsMjgxLDgwLDgwLDIyLDIzLDAsMCwwLDAsMTkyLDI4MSwwLDAsMCwwXSxbMCwwLDAsMTg5LDE3MCwxOTAsMjc4LDIyLDIzLDAsMjQsMCwwLDE5MiwxNzQsMCwwLDI3LDBdLFswLDAsMCwxODksMTcwLDI3OCwyNzgsMjIsMjMsMCwyNCwwLDAsMCwxNzQsMCwwLDI3LDBdLFswLDAsMCw3NiwwLDE3NywxNzcsMjIsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDE3NSwyOTYsMCwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwyOTcsMTk2LDI5OCwyOTgsMzIsMzMsMCwzNCwwLDAsMCwyMDAsMCwwLDM3LDBdLFswLDI5OSwwLDAsMCw5NywzMDAsMCwzMywwLDM0LDAsMCwwLDk5LDAsMjk5LDAsMF0sWzAsMCwwLDAsMzAxLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwxOTksMzAxLDAsMCwwLDBdLFswLDAsMCwxOTUsMTk2LDE5NywyOTgsMzIsMzMsMCwzNCwwLDAsMTk5LDIwMCwwLDAsMzcsMF0sWzAsMCwwLDE5NSwxOTYsMjk4LDI5OCwzMiwzMywwLDM0LDAsMCwwLDIwMCwwLDAsMzcsMF0sWzAsMzAyLDExMSwwLDAsOTcsMzAwLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDMwMiwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMzMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsOTYsMCwwLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsOTksMCw5NiwwLDBdLFswLDAsMCwwLDAsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMzAzLDAsMzA0LDMwNSwwLDMzLDAsMzQsMCwwLDMwNiwwLDAsMCwwLDBdLFswLDk2LDAsMjAyLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsOTksMCw5NiwwLDBdLFswLDAsMCwwLDAsMCwwLDMyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwzMDcsMzA3LDEwNiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwzMDgsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDIxMCwyMTEsMjEyLDIxMywzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsMjExLDIxMSwyMTMsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwwLDMwOSwzMDksMjEzLDMzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDMxMCwzMDksMzA5LDIxMywzMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMzExLDMxMiwzMTMsMzE0LDMxNSwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMjk3LDE5NiwyOTgsMjk4LDMyLDMzLDAsMzQsMCwwLDAsMjAwLDAsMCwzNywwXSxbMCwwLDAsMCwzMDEsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDIxOCwzMDEsMCwwLDAsMF0sWzAsMCwwLDIxNSwxOTYsMjE2LDI5OCwzMiwzMywwLDM0LDAsMCwyMTgsMjAwLDAsMCwzNywwXSxbMCwwLDAsMjE1LDE5NiwyOTgsMjk4LDMyLDMzLDAsMzQsMCwwLDAsMjAwLDAsMCwzNywwXSxbMCwwLDAsOTcsMCwyMDMsMjAzLDMyLDMzLDAsMzQsMCwwLDAsOTksMCwwLDAsMF0sWzAsMCwwLDAsMCwyMDEsMzE2LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwxMTYsMjIyLDIyMiw4LDksMCwxMCwwLDAsMCwxMjAsMCwwLDE2LDBdLFswLDAsMCwwLDIyNSw0NCw0NCw4LDksMCwwLDAsMCwwLDIyNSwwLDAsMCwwXSxbMCwwLDAsMzE3LDMxOCwzMTksMzIwLDgsOSwwLDEwLDAsMCwzMjEsMzIyLDAsMCwxNiwwXSxbMCwyMjMsMCwzMjMsMCwxMjMsMTIzLDgsOSwwLDEwLDAsMCwwLDQyLDAsMjIzLDAsMF0sWzAsMjIzLDAsMCwwLDEyMSwzMjQsMCw5LDAsMTAsMCwwLDAsNDIsMCwyMjMsMCwwXSxbMCwwLDAsMzI1LDMxOCwzMjYsMzI3LDgsOSwwLDEwLDAsMCwzMjgsMzIyLDAsMCwxNiwwXSxbMCwwLDAsNjQsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCw5LDAsMCwwLDAsMjMwLDAsMCwwLDAsMF0sWzAsMCwwLDIyNywwLDIyOCwxMjEsMCw5LDAsMTAsMCwwLDIzMCwwLDAsMCwwLDBdLFswLDAsMCwyMjcsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsNDksMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0NiwwLDBdLFswLDAsMCwwLDAsMzI5LDMyOSwxMzMsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMzMwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwyMzYsMjM3LDIzOCwyMzksOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDAsMCwwLDAsMjM3LDIzNywyMzksOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDAsMCwwLDAsMzMxLDMzMSwyMzksOSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwzMzIsMzMxLDMzMSwyMzksOSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMzMzLDQwLDEyMSwzMzQsMCw5LDAsMTAsMCwwLDAsNDIsMCwwLDAsMF0sWzAsMCwwLDMzNSwyNDEsMzM2LDMzNiw1Nyw1OCwwLDU5LDAsMCwwLDI0NSwwLDAsNjIsMF0sWzAsMzM3LDAsMCwwLDEzNywzMzgsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDMzNywwLDBdLFswLDAsMCwwLDMzOSwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsMjQ0LDMzOSwwLDAsMCwwXSxbMCwwLDAsMjQwLDI0MSwyNDIsMzM2LDU3LDU4LDAsNTksMCwwLDI0NCwyNDUsMCwwLDYyLDBdLFswLDAsMCwyNDAsMjQxLDMzNiwzMzYsNTcsNTgsMCw1OSwwLDAsMCwyNDUsMCwwLDYyLDBdLFswLDM0MCwxNTEsMCwwLDEzNywzMzgsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDM0MCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsNTgsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMTM2LDAsMCwwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDEzNiwwLDBdLFswLDAsMCwwLDAsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMzQxLDAsMzQyLDM0MywwLDU4LDAsNTksMCwwLDM0NCwwLDAsMCwwLDBdLFswLDEzNiwwLDI0NywwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDEzNiwwLDBdLFswLDAsMCwwLDAsMCwwLDU3LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwzNDUsMzQ1LDE0NiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwzNDYsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDI1NSwyNTYsMjU3LDI1OCw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwwLDI1NiwyNTYsMjU4LDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMzQ3LDM0NywyNTgsNTgsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMzQ4LDM0NywzNDcsMjU4LDU4LDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzNDksMzUwLDM1MSwzNTIsMzUzLDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMzM1LDI0MSwzMzYsMzM2LDU3LDU4LDAsNTksMCwwLDAsMjQ1LDAsMCw2MiwwXSxbMCwwLDAsMCwzMzksMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDI2MywzMzksMCwwLDAsMF0sWzAsMCwwLDI2MCwyNDEsMjYxLDMzNiw1Nyw1OCwwLDU5LDAsMCwyNjMsMjQ1LDAsMCw2MiwwXSxbMCwwLDAsMjYwLDI0MSwzMzYsMzM2LDU3LDU4LDAsNTksMCwwLDAsMjQ1LDAsMCw2MiwwXSxbMCwwLDAsMTM3LDAsMjQ4LDI0OCw1Nyw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwwLDI0NiwzNTQsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCwwLDEyNiwxMjYsOCwyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwzNTUsOTAsMCwwLDEyMSwxMjUsMCw5LDAsMTAsMCwwLDAsNDIsMCwzNTUsMCwwXSxbMCwwLDAsMCwwLDM1NiwzNTYsMjY5LDIzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwzNTcsMzU4LDM1OSwzNjAsMzYxLDE2MSwwLDE2MiwwLDAsMCwzNjIsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMTYyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyNzAsMCwwLDAsMCwxNjIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwzNjMsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMzY0LDExNiwzNjUsMzY2LDgsMTYxLDAsMTYyLDAsMCwzNjcsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMCwwLDM2OCwzNjgsMCwxNjEsMCwxNjIsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDAsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDQyLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwxNzAsMjc4LDI3OCwyMiwyMywwLDI0LDAsMCwwLDE3NCwwLDAsMjcsMF0sWzAsMCwwLDAsMjgxLDgwLDgwLDIyLDIzLDAsMCwwLDAsMCwyODEsMCwwLDAsMF0sWzAsMCwwLDM2OSwzNzAsMzcxLDM3MiwyMiwyMywwLDI0LDAsMCwzNzMsMzc0LDAsMCwyNywwXSxbMCwyNzksMCwzNzUsMCwxNzcsMTc3LDIyLDIzLDAsMjQsMCwwLDAsNzgsMCwyNzksMCwwXSxbMCwyNzksMCwwLDAsMTc1LDM3NiwwLDIzLDAsMjQsMCwwLDAsNzgsMCwyNzksMCwwXSxbMCwwLDAsMzc3LDM3MCwzNzgsMzc5LDIyLDIzLDAsMjQsMCwwLDM4MCwzNzQsMCwwLDI3LDBdLFswLDAsMCw5MCwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwyMywwLDAsMCwwLDI4NiwwLDAsMCwwLDBdLFswLDAsMCwyODMsMCwyODQsMTc1LDAsMjMsMCwyNCwwLDAsMjg2LDAsMCwwLDAsMF0sWzAsMCwwLDI4MywwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsODUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw4MiwwLDBdLFswLDAsMCwwLDAsMzgxLDM4MSwxODcsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMzgyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwyOTIsMjkzLDI5NCwyOTUsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5MywyOTMsMjk1LDIzLDAsMjQsMCwwLDAsNzgsMCwwLDAsMF0sWzAsMCwwLDAsMCwzODMsMzgzLDI5NSwyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwzODQsMzgzLDM4MywyOTUsMjMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDM4NSw3NiwxNzUsMzg2LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsNzYsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDAsMCwwXSxbMCwwLDAsMCwxOTYsMjk4LDI5OCwzMiwzMywwLDM0LDAsMCwwLDIwMCwwLDAsMzcsMF0sWzAsMCwwLDAsMzAxLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwwLDMwMSwwLDAsMCwwXSxbMCwwLDAsMzg3LDM4OCwzODksMzkwLDMyLDMzLDAsMzQsMCwwLDM5MSwzOTIsMCwwLDM3LDBdLFswLDI5OSwwLDM5MywwLDIwMywyMDMsMzIsMzMsMCwzNCwwLDAsMCw5OSwwLDI5OSwwLDBdLFswLDI5OSwwLDAsMCwyMDEsMzk0LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDI5OSwwLDBdLFswLDAsMCwzOTUsMzg4LDM5NiwzOTcsMzIsMzMsMCwzNCwwLDAsMzk4LDM5MiwwLDAsMzcsMF0sWzAsMCwwLDExMSwwLDIwMSwyMDEsMCwzMywwLDM0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwzMywwLDAsMCwwLDMwNiwwLDAsMCwwLDBdLFswLDAsMCwzMDMsMCwzMDQsMjAxLDAsMzMsMCwzNCwwLDAsMzA2LDAsMCwwLDAsMF0sWzAsMCwwLDMwMywwLDIwMSwyMDEsMCwzMywwLDM0LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMTA2LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMTAzLDAsMF0sWzAsMCwwLDAsMCwzOTksMzk5LDIxMywwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCw0MDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDMxMiwzMTMsMzE0LDMxNSwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCwwLDAsMzEzLDMxMywzMTUsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCwwLDQwMSw0MDEsMzE1LDMzLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDQwMiw0MDEsNDAxLDMxNSwzMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDAzLDk3LDIwMSw0MDQsMCwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCw5NywwLDIwMSwyMDEsMCwzMywwLDM0LDAsMCwwLDk5LDAsMCwwLDBdLFswLDAsMCw0MDUsMzE4LDQwNiw0MDYsOCw5LDAsMTAsMCwwLDAsMzIyLDAsMCwxNiwwXSxbMCw0MDcsMCwwLDAsNDAsNDA4LDAsOSwwLDEwLDAsMCwwLDQyLDAsNDA3LDAsMF0sWzAsMCwwLDAsNDA5LDQ0LDQ0LDgsOSwwLDAsMCwwLDMyMSw0MDksMCwwLDAsMF0sWzAsMCwwLDMxNywzMTgsMzE5LDQwNiw4LDksMCwxMCwwLDAsMzIxLDMyMiwwLDAsMTYsMF0sWzAsMCwwLDMxNywzMTgsNDA2LDQwNiw4LDksMCwxMCwwLDAsMCwzMjIsMCwwLDE2LDBdLFswLDQxMCw2NCwwLDAsNDAsNDA4LDAsOSwwLDEwLDAsMCwwLDQyLDAsNDEwLDAsMF0sWzAsMjIzLDAsMCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCwyMjMsMCwwXSxbMCwyMjMsMCwzMjMsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDQyLDAsMjIzLDAsMF0sWzAsMCwwLDQwNSwzMTgsNDA2LDQwNiw4LDksMCwxMCwwLDAsMCwzMjIsMCwwLDE2LDBdLFswLDAsMCwwLDQwOSw0NCw0NCw4LDksMCwwLDAsMCwzMjgsNDA5LDAsMCwwLDBdLFswLDAsMCwzMjUsMzE4LDMyNiw0MDYsOCw5LDAsMTAsMCwwLDMyOCwzMjIsMCwwLDE2LDBdLFswLDAsMCwzMjUsMzE4LDQwNiw0MDYsOCw5LDAsMTAsMCwwLDAsMzIyLDAsMCwxNiwwXSxbMCwwLDAsMCwwLDAsMCwxMzMsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwxMzAsMCwwXSxbMCwwLDAsMCwwLDQxMSw0MTEsMjM5LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDQxMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsNDAsMTIxLDMzNCwwLDksMCwxMCwwLDAsMCw0MiwwLDAsMCwwXSxbMCwwLDAsMCw0MTMsMCwwLDAsOSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwyNDEsMzM2LDMzNiw1Nyw1OCwwLDU5LDAsMCwwLDI0NSwwLDAsNjIsMF0sWzAsMCwwLDAsMzM5LDE0MSwxNDEsNTcsNTgsMCwwLDAsMCwwLDMzOSwwLDAsMCwwXSxbMCwwLDAsNDE0LDQxNSw0MTYsNDE3LDU3LDU4LDAsNTksMCwwLDQxOCw0MTksMCwwLDYyLDBdLFswLDMzNywwLDQyMCwwLDI0OCwyNDgsNTcsNTgsMCw1OSwwLDAsMCwxMzksMCwzMzcsMCwwXSxbMCwzMzcsMCwwLDAsMjQ2LDQyMSwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMzM3LDAsMF0sWzAsMCwwLDQyMiw0MTUsNDIzLDQyNCw1Nyw1OCwwLDU5LDAsMCw0MjUsNDE5LDAsMCw2MiwwXSxbMCwwLDAsMTUxLDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDU4LDAsMCwwLDAsMzQ0LDAsMCwwLDAsMF0sWzAsMCwwLDM0MSwwLDM0MiwyNDYsMCw1OCwwLDU5LDAsMCwzNDQsMCwwLDAsMCwwXSxbMCwwLDAsMzQxLDAsMjQ2LDI0NiwwLDU4LDAsNTksMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwxNDYsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwxNDMsMCwwXSxbMCwwLDAsMCwwLDQyNiw0MjYsMjU4LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDQyNywwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMzUwLDM1MSwzNTIsMzUzLDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwwLDAsMzUxLDM1MSwzNTMsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDAsMCw0MjgsNDI4LDM1Myw1OCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0MjksNDI4LDQyOCwzNTMsNTgsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDQzMCwxMzcsMjQ2LDQzMSwwLDU4LDAsNTksMCwwLDAsMTM5LDAsMCwwLDBdLFswLDAsMCwxMzcsMCwyNDYsMjQ2LDAsNTgsMCw1OSwwLDAsMCwxMzksMCwwLDAsMF0sWzAsMCwwLDQzMiwxMTYsNDMzLDQzNCw4LDE2MSwwLDE2MiwwLDAsNDM1LDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMCwxODAsMTgwLDI2OSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDM1OCwzNTksMzYwLDM2MSwxNjEsMCwxNjIsMCwwLDAsMzYyLDAsMCwwLDBdLFswLDAsMCwwLDAsMzU5LDM1OSwzNjEsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDQzNiw0MzYsMzYxLDE2MSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0MzcsNDM2LDQzNiwzNjEsMTYxLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw0MzgsNDM5LDQ0MCw0NDEsNDQyLDE2MSwwLDE2MiwwLDAsMCwzNjIsMCwwLDAsMF0sWzAsNDQzLDI3NCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDQ0MywwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDQ0LDExNiw0NDUsNDQ1LDgsMTYxLDAsMTYyLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMjI1LDQ0LDQ0LDgsMTYxLDAsMCwwLDAsMzY3LDIyNSwwLDAsMCwwXSxbMCwwLDAsMzY0LDExNiwzNjUsNDQ1LDgsMTYxLDAsMTYyLDAsMCwzNjcsMTIwLDAsMCwxNiwwXSxbMCwwLDAsMzY0LDExNiw0NDUsNDQ1LDgsMTYxLDAsMTYyLDAsMCwwLDEyMCwwLDAsMTYsMF0sWzAsMCwwLDAsMCwwLDAsMCwxNjEsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDQ0NiwzNzAsNDQ3LDQ0NywyMiwyMywwLDI0LDAsMCwwLDM3NCwwLDAsMjcsMF0sWzAsNDQ4LDAsMCwwLDc2LDQ0OSwwLDIzLDAsMjQsMCwwLDAsNzgsMCw0NDgsMCwwXSxbMCwwLDAsMCw0NTAsODAsODAsMjIsMjMsMCwwLDAsMCwzNzMsNDUwLDAsMCwwLDBdLFswLDAsMCwzNjksMzcwLDM3MSw0NDcsMjIsMjMsMCwyNCwwLDAsMzczLDM3NCwwLDAsMjcsMF0sWzAsMCwwLDM2OSwzNzAsNDQ3LDQ0NywyMiwyMywwLDI0LDAsMCwwLDM3NCwwLDAsMjcsMF0sWzAsNDUxLDkwLDAsMCw3Niw0NDksMCwyMywwLDI0LDAsMCwwLDc4LDAsNDUxLDAsMF0sWzAsMjc5LDAsMCwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDc4LDAsMjc5LDAsMF0sWzAsMjc5LDAsMzc1LDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsNzgsMCwyNzksMCwwXSxbMCwwLDAsNDQ2LDM3MCw0NDcsNDQ3LDIyLDIzLDAsMjQsMCwwLDAsMzc0LDAsMCwyNywwXSxbMCwwLDAsMCw0NTAsODAsODAsMjIsMjMsMCwwLDAsMCwzODAsNDUwLDAsMCwwLDBdLFswLDAsMCwzNzcsMzcwLDM3OCw0NDcsMjIsMjMsMCwyNCwwLDAsMzgwLDM3NCwwLDAsMjcsMF0sWzAsMCwwLDM3NywzNzAsNDQ3LDQ0NywyMiwyMywwLDI0LDAsMCwwLDM3NCwwLDAsMjcsMF0sWzAsMCwwLDAsMCwwLDAsMTg3LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMTg0LDAsMF0sWzAsMCwwLDAsMCw0NTIsNDUyLDI5NSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCw0NTMsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDc2LDE3NSwzODYsMCwyMywwLDI0LDAsMCwwLDc4LDAsMCwwLDBdLFswLDAsMCwwLDQ1NCwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDU1LDM4OCw0NTYsNDU2LDMyLDMzLDAsMzQsMCwwLDAsMzkyLDAsMCwzNywwXSxbMCw0NTcsMCwwLDAsOTcsNDU4LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDQ1NywwLDBdLFswLDAsMCwwLDQ1OSwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsMzkxLDQ1OSwwLDAsMCwwXSxbMCwwLDAsMzg3LDM4OCwzODksNDU2LDMyLDMzLDAsMzQsMCwwLDM5MSwzOTIsMCwwLDM3LDBdLFswLDAsMCwzODcsMzg4LDQ1Niw0NTYsMzIsMzMsMCwzNCwwLDAsMCwzOTIsMCwwLDM3LDBdLFswLDQ2MCwxMTEsMCwwLDk3LDQ1OCwwLDMzLDAsMzQsMCwwLDAsOTksMCw0NjAsMCwwXSxbMCwyOTksMCwwLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsOTksMCwyOTksMCwwXSxbMCwyOTksMCwzOTMsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDI5OSwwLDBdLFswLDAsMCw0NTUsMzg4LDQ1Niw0NTYsMzIsMzMsMCwzNCwwLDAsMCwzOTIsMCwwLDM3LDBdLFswLDAsMCwwLDQ1OSwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsMzk4LDQ1OSwwLDAsMCwwXSxbMCwwLDAsMzk1LDM4OCwzOTYsNDU2LDMyLDMzLDAsMzQsMCwwLDM5OCwzOTIsMCwwLDM3LDBdLFswLDAsMCwzOTUsMzg4LDQ1Niw0NTYsMzIsMzMsMCwzNCwwLDAsMCwzOTIsMCwwLDM3LDBdLFswLDAsMCwwLDAsMCwwLDIxMywwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIxMCwwLDBdLFswLDAsMCwwLDAsNDYxLDQ2MSwzMTUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsNDYyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw5NywyMDEsNDA0LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDAsMCwwXSxbMCwwLDAsMCw0NjMsMCwwLDAsMzMsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMzE4LDQwNiw0MDYsOCw5LDAsMTAsMCwwLDAsMzIyLDAsMCwxNiwwXSxbMCwwLDAsMCw0MDksNDQsNDQsOCw5LDAsMCwwLDAsMCw0MDksMCwwLDAsMF0sWzAsMCwwLDQ2NCw0NjUsNDY2LDQ2Nyw4LDksMCwxMCwwLDAsNDY4LDQ2OSwwLDAsMTYsMF0sWzAsNDA3LDAsNDcwLDAsMTIzLDEyMyw4LDksMCwxMCwwLDAsMCw0MiwwLDQwNywwLDBdLFswLDQwNywwLDAsMCwxMjEsNDcxLDAsOSwwLDEwLDAsMCwwLDQyLDAsNDA3LDAsMF0sWzAsMCwwLDQ3Miw0NjUsNDczLDQ3NCw4LDksMCwxMCwwLDAsNDc1LDQ2OSwwLDAsMTYsMF0sWzAsMCwwLDAsMCwwLDAsMjM5LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjM2LDAsMF0sWzAsMCwwLDAsMCwwLDQ3NiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDQ3Nyw0MTUsNDc4LDQ3OCw1Nyw1OCwwLDU5LDAsMCwwLDQxOSwwLDAsNjIsMF0sWzAsNDc5LDAsMCwwLDEzNyw0ODAsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDQ3OSwwLDBdLFswLDAsMCwwLDQ4MSwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsNDE4LDQ4MSwwLDAsMCwwXSxbMCwwLDAsNDE0LDQxNSw0MTYsNDc4LDU3LDU4LDAsNTksMCwwLDQxOCw0MTksMCwwLDYyLDBdLFswLDAsMCw0MTQsNDE1LDQ3OCw0NzgsNTcsNTgsMCw1OSwwLDAsMCw0MTksMCwwLDYyLDBdLFswLDQ4MiwxNTEsMCwwLDEzNyw0ODAsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDQ4MiwwLDBdLFswLDMzNywwLDAsMCwyNDYsMjQ2LDAsNTgsMCw1OSwwLDAsMCwxMzksMCwzMzcsMCwwXSxbMCwzMzcsMCw0MjAsMCwyNDYsMjQ2LDAsNTgsMCw1OSwwLDAsMCwxMzksMCwzMzcsMCwwXSxbMCwwLDAsNDc3LDQxNSw0NzgsNDc4LDU3LDU4LDAsNTksMCwwLDAsNDE5LDAsMCw2MiwwXSxbMCwwLDAsMCw0ODEsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDQyNSw0ODEsMCwwLDAsMF0sWzAsMCwwLDQyMiw0MTUsNDIzLDQ3OCw1Nyw1OCwwLDU5LDAsMCw0MjUsNDE5LDAsMCw2MiwwXSxbMCwwLDAsNDIyLDQxNSw0NzgsNDc4LDU3LDU4LDAsNTksMCwwLDAsNDE5LDAsMCw2MiwwXSxbMCwwLDAsMCwwLDAsMCwyNTgsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyNTUsMCwwXSxbMCwwLDAsMCwwLDQ4Myw0ODMsMzUzLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDQ4NCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMTM3LDI0Niw0MzEsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDAsMCwwXSxbMCwwLDAsMCw0ODUsMCwwLDAsNTgsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDQ0NCwxMTYsNDQ1LDQ0NSw4LDE2MSwwLDE2MiwwLDAsMCwxMjAsMCwwLDE2LDBdLFswLDAsMCwwLDIyNSw0NCw0NCw4LDE2MSwwLDAsMCwwLDQzNSwyMjUsMCwwLDAsMF0sWzAsMCwwLDQzMiwxMTYsNDMzLDQ0NSw4LDE2MSwwLDE2MiwwLDAsNDM1LDEyMCwwLDAsMTYsMF0sWzAsMCwwLDQzMiwxMTYsNDQ1LDQ0NSw4LDE2MSwwLDE2MiwwLDAsMCwxMjAsMCwwLDE2LDBdLFswLDAsMCwwLDAsNDg2LDQ4NiwzNjEsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsNDg3LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0MzksNDQwLDQ0MSw0NDIsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDQ0MCw0NDAsNDQyLDE2MSwwLDE2MiwwLDAsMCwzNjIsMCwwLDAsMF0sWzAsMCwwLDAsMCw0ODgsNDg4LDQ0MiwxNjEsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsNDg5LDQ4OCw0ODgsNDQyLDE2MSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNDkwLDQ5MSw0OTIsNDkzLDQ5NCwxNjEsMCwxNjIsMCwwLDAsMzYyLDAsMCwwLDBdLFswLDAsMCw0OTUsMCw0OTYsNDk3LDAsMTYxLDAsMTYyLDAsMCw0OTgsMCwwLDAsMCwwXSxbMCwwLDAsMCwxMTYsNDQ1LDQ0NSw4LDE2MSwwLDE2MiwwLDAsMCwxMjAsMCwwLDE2LDBdLFswLDAsMCwwLDIyNSw0NCw0NCw4LDE2MSwwLDAsMCwwLDAsMjI1LDAsMCwwLDBdLFswLDAsMCwwLDM3MCw0NDcsNDQ3LDIyLDIzLDAsMjQsMCwwLDAsMzc0LDAsMCwyNywwXSxbMCwwLDAsMCw0NTAsODAsODAsMjIsMjMsMCwwLDAsMCwwLDQ1MCwwLDAsMCwwXSxbMCwwLDAsNDk5LDUwMCw1MDEsNTAyLDIyLDIzLDAsMjQsMCwwLDUwMyw1MDQsMCwwLDI3LDBdLFswLDQ0OCwwLDUwNSwwLDE3NywxNzcsMjIsMjMsMCwyNCwwLDAsMCw3OCwwLDQ0OCwwLDBdLFswLDQ0OCwwLDAsMCwxNzUsNTA2LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDQ0OCwwLDBdLFswLDAsMCw1MDcsNTAwLDUwOCw1MDksMjIsMjMsMCwyNCwwLDAsNTEwLDUwNCwwLDAsMjcsMF0sWzAsMCwwLDAsMCwwLDAsMjk1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjkyLDAsMF0sWzAsMCwwLDAsMCwwLDUxMSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMzg4LDQ1Niw0NTYsMzIsMzMsMCwzNCwwLDAsMCwzOTIsMCwwLDM3LDBdLFswLDAsMCwwLDQ1OSwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsMCw0NTksMCwwLDAsMF0sWzAsMCwwLDUxMiw1MTMsNTE0LDUxNSwzMiwzMywwLDM0LDAsMCw1MTYsNTE3LDAsMCwzNywwXSxbMCw0NTcsMCw1MTgsMCwyMDMsMjAzLDMyLDMzLDAsMzQsMCwwLDAsOTksMCw0NTcsMCwwXSxbMCw0NTcsMCwwLDAsMjAxLDUxOSwwLDMzLDAsMzQsMCwwLDAsOTksMCw0NTcsMCwwXSxbMCwwLDAsNTIwLDUxMyw1MjEsNTIyLDMyLDMzLDAsMzQsMCwwLDUyMyw1MTcsMCwwLDM3LDBdLFswLDAsMCwwLDAsMCwwLDMxNSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDMxMiwwLDBdLFswLDAsMCwwLDAsMCw1MjQsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw1MjUsNDY1LDUyNiw1MjYsOCw5LDAsMTAsMCwwLDAsNDY5LDAsMCwxNiwwXSxbMCw1MjcsMCwwLDAsNDAsNTI4LDAsOSwwLDEwLDAsMCwwLDQyLDAsNTI3LDAsMF0sWzAsMCwwLDAsNTI5LDQ0LDQ0LDgsOSwwLDAsMCwwLDQ2OCw1MjksMCwwLDAsMF0sWzAsMCwwLDQ2NCw0NjUsNDY2LDUyNiw4LDksMCwxMCwwLDAsNDY4LDQ2OSwwLDAsMTYsMF0sWzAsMCwwLDQ2NCw0NjUsNTI2LDUyNiw4LDksMCwxMCwwLDAsMCw0NjksMCwwLDE2LDBdLFswLDUzMCw2NCwwLDAsNDAsNTI4LDAsOSwwLDEwLDAsMCwwLDQyLDAsNTMwLDAsMF0sWzAsNDA3LDAsMCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCw0MDcsMCwwXSxbMCw0MDcsMCw0NzAsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDQyLDAsNDA3LDAsMF0sWzAsMCwwLDUyNSw0NjUsNTI2LDUyNiw4LDksMCwxMCwwLDAsMCw0NjksMCwwLDE2LDBdLFswLDAsMCwwLDUyOSw0NCw0NCw4LDksMCwwLDAsMCw0NzUsNTI5LDAsMCwwLDBdLFswLDAsMCw0NzIsNDY1LDQ3Myw1MjYsOCw5LDAsMTAsMCwwLDQ3NSw0NjksMCwwLDE2LDBdLFswLDAsMCw0NzIsNDY1LDUyNiw1MjYsOCw5LDAsMTAsMCwwLDAsNDY5LDAsMCwxNiwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0MCwwLDBdLFswLDAsMCwwLDQxNSw0NzgsNDc4LDU3LDU4LDAsNTksMCwwLDAsNDE5LDAsMCw2MiwwXSxbMCwwLDAsMCw0ODEsMTQxLDE0MSw1Nyw1OCwwLDAsMCwwLDAsNDgxLDAsMCwwLDBdLFswLDAsMCw1MzEsNTMyLDUzMyw1MzQsNTcsNTgsMCw1OSwwLDAsNTM1LDUzNiwwLDAsNjIsMF0sWzAsNDc5LDAsNTM3LDAsMjQ4LDI0OCw1Nyw1OCwwLDU5LDAsMCwwLDEzOSwwLDQ3OSwwLDBdLFswLDQ3OSwwLDAsMCwyNDYsNTM4LDAsNTgsMCw1OSwwLDAsMCwxMzksMCw0NzksMCwwXSxbMCwwLDAsNTM5LDUzMiw1NDAsNTQxLDU3LDU4LDAsNTksMCwwLDU0Miw1MzYsMCwwLDYyLDBdLFswLDAsMCwwLDAsMCwwLDM1MywwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDM1MCwwLDBdLFswLDAsMCwwLDAsMCw1NDMsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDM2MSwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDM1OCwwLDBdLFswLDAsMCwwLDAsNTQ0LDU0NCw0NDIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsNTQ1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0OTEsNDkyLDQ5Myw0OTQsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCwwLDQ5Miw0OTIsNDk0LDE2MSwwLDE2MiwwLDAsMCwzNjIsMCwwLDAsMF0sWzAsMCwwLDAsMCw1NDYsNTQ2LDQ5NCwxNjEsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsNTQ3LDU0Niw1NDYsNDk0LDE2MSwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsNTQ4LDU0OSwzNjgsNTUwLDAsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMjc0LDAsMzY4LDM2OCwwLDE2MSwwLDE2MiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMTYxLDAsMCwwLDAsNDk4LDAsMCwwLDAsMF0sWzAsMCwwLDQ5NSwwLDQ5NiwzNjgsMCwxNjEsMCwxNjIsMCwwLDQ5OCwwLDAsMCwwLDBdLFswLDAsMCw0OTUsMCwzNjgsMzY4LDAsMTYxLDAsMTYyLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDU1MSw1MDAsNTUyLDU1MiwyMiwyMywwLDI0LDAsMCwwLDUwNCwwLDAsMjcsMF0sWzAsNTUzLDAsMCwwLDc2LDU1NCwwLDIzLDAsMjQsMCwwLDAsNzgsMCw1NTMsMCwwXSxbMCwwLDAsMCw1NTUsODAsODAsMjIsMjMsMCwwLDAsMCw1MDMsNTU1LDAsMCwwLDBdLFswLDAsMCw0OTksNTAwLDUwMSw1NTIsMjIsMjMsMCwyNCwwLDAsNTAzLDUwNCwwLDAsMjcsMF0sWzAsMCwwLDQ5OSw1MDAsNTUyLDU1MiwyMiwyMywwLDI0LDAsMCwwLDUwNCwwLDAsMjcsMF0sWzAsNTU2LDkwLDAsMCw3Niw1NTQsMCwyMywwLDI0LDAsMCwwLDc4LDAsNTU2LDAsMF0sWzAsNDQ4LDAsMCwwLDE3NSwxNzUsMCwyMywwLDI0LDAsMCwwLDc4LDAsNDQ4LDAsMF0sWzAsNDQ4LDAsNTA1LDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsNzgsMCw0NDgsMCwwXSxbMCwwLDAsNTUxLDUwMCw1NTIsNTUyLDIyLDIzLDAsMjQsMCwwLDAsNTA0LDAsMCwyNywwXSxbMCwwLDAsMCw1NTUsODAsODAsMjIsMjMsMCwwLDAsMCw1MTAsNTU1LDAsMCwwLDBdLFswLDAsMCw1MDcsNTAwLDUwOCw1NTIsMjIsMjMsMCwyNCwwLDAsNTEwLDUwNCwwLDAsMjcsMF0sWzAsMCwwLDUwNyw1MDAsNTUyLDU1MiwyMiwyMywwLDI0LDAsMCwwLDUwNCwwLDAsMjcsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNzYsMCwwXSxbMCwwLDAsNTU3LDUxMyw1NTgsNTU4LDMyLDMzLDAsMzQsMCwwLDAsNTE3LDAsMCwzNywwXSxbMCw1NTksMCwwLDAsOTcsNTYwLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDU1OSwwLDBdLFswLDAsMCwwLDU2MSwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsNTE2LDU2MSwwLDAsMCwwXSxbMCwwLDAsNTEyLDUxMyw1MTQsNTU4LDMyLDMzLDAsMzQsMCwwLDUxNiw1MTcsMCwwLDM3LDBdLFswLDAsMCw1MTIsNTEzLDU1OCw1NTgsMzIsMzMsMCwzNCwwLDAsMCw1MTcsMCwwLDM3LDBdLFswLDU2MiwxMTEsMCwwLDk3LDU2MCwwLDMzLDAsMzQsMCwwLDAsOTksMCw1NjIsMCwwXSxbMCw0NTcsMCwwLDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsOTksMCw0NTcsMCwwXSxbMCw0NTcsMCw1MTgsMCwyMDEsMjAxLDAsMzMsMCwzNCwwLDAsMCw5OSwwLDQ1NywwLDBdLFswLDAsMCw1NTcsNTEzLDU1OCw1NTgsMzIsMzMsMCwzNCwwLDAsMCw1MTcsMCwwLDM3LDBdLFswLDAsMCwwLDU2MSwxMDEsMTAxLDMyLDMzLDAsMCwwLDAsNTIzLDU2MSwwLDAsMCwwXSxbMCwwLDAsNTIwLDUxMyw1MjEsNTU4LDMyLDMzLDAsMzQsMCwwLDUyMyw1MTcsMCwwLDM3LDBdLFswLDAsMCw1MjAsNTEzLDU1OCw1NTgsMzIsMzMsMCwzNCwwLDAsMCw1MTcsMCwwLDM3LDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDk3LDAsMF0sWzAsMCwwLDAsNDY1LDUyNiw1MjYsOCw5LDAsMTAsMCwwLDAsNDY5LDAsMCwxNiwwXSxbMCwwLDAsMCw1MjksNDQsNDQsOCw5LDAsMCwwLDAsMCw1MjksMCwwLDAsMF0sWzAsMCwwLDU2Myw2Niw1NjQsNTY1LDgsOSwwLDEwLDAsMCw1NjYsNjgsMCwwLDE2LDBdLFswLDUyNywwLDU2NywwLDEyMywxMjMsOCw5LDAsMTAsMCwwLDAsNDIsMCw1MjcsMCwwXSxbMCw1MjcsMCwwLDAsMTIxLDU2OCwwLDksMCwxMCwwLDAsMCw0MiwwLDUyNywwLDBdLFswLDAsMCw1NjksNjYsNTcwLDU3MSw4LDksMCwxMCwwLDAsNTcyLDY4LDAsMCwxNiwwXSxbMCwwLDAsNTczLDUzMiw1NzQsNTc0LDU3LDU4LDAsNTksMCwwLDAsNTM2LDAsMCw2MiwwXSxbMCw1NzUsMCwwLDAsMTM3LDU3NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNTc1LDAsMF0sWzAsMCwwLDAsNTc3LDE0MSwxNDEsNTcsNTgsMCwwLDAsMCw1MzUsNTc3LDAsMCwwLDBdLFswLDAsMCw1MzEsNTMyLDUzMyw1NzQsNTcsNTgsMCw1OSwwLDAsNTM1LDUzNiwwLDAsNjIsMF0sWzAsMCwwLDUzMSw1MzIsNTc0LDU3NCw1Nyw1OCwwLDU5LDAsMCwwLDUzNiwwLDAsNjIsMF0sWzAsNTc4LDE1MSwwLDAsMTM3LDU3NiwwLDU4LDAsNTksMCwwLDAsMTM5LDAsNTc4LDAsMF0sWzAsNDc5LDAsMCwwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDQ3OSwwLDBdLFswLDQ3OSwwLDUzNywwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDQ3OSwwLDBdLFswLDAsMCw1NzMsNTMyLDU3NCw1NzQsNTcsNTgsMCw1OSwwLDAsMCw1MzYsMCwwLDYyLDBdLFswLDAsMCwwLDU3NywxNDEsMTQxLDU3LDU4LDAsMCwwLDAsNTQyLDU3NywwLDAsMCwwXSxbMCwwLDAsNTM5LDUzMiw1NDAsNTc0LDU3LDU4LDAsNTksMCwwLDU0Miw1MzYsMCwwLDYyLDBdLFswLDAsMCw1MzksNTMyLDU3NCw1NzQsNTcsNTgsMCw1OSwwLDAsMCw1MzYsMCwwLDYyLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDEzNywwLDBdLFswLDAsMCwwLDAsMCwwLDQ0MiwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDQzOSwwLDBdLFswLDAsMCwwLDAsNTc5LDU3OSw0OTQsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsNTgwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw1NDksMzY4LDU1MCwwLDE2MSwwLDE2MiwwLDAsMCwzNjIsMCwwLDAsMF0sWzAsMCwwLDAsMCwzNjgsMzY4LDAsMTYxLDAsMTYyLDAsMCwwLDM2MiwwLDAsMCwwXSxbMCwwLDAsMCw1ODEsMCwwLDAsMTYxLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDUwMCw1NTIsNTUyLDIyLDIzLDAsMjQsMCwwLDAsNTA0LDAsMCwyNywwXSxbMCwwLDAsMCw1NTUsODAsODAsMjIsMjMsMCwwLDAsMCwwLDU1NSwwLDAsMCwwXSxbMCwwLDAsNTgyLDkxLDU4Myw1ODQsMjIsMjMsMCwyNCwwLDAsNTg1LDkzLDAsMCwyNywwXSxbMCw1NTMsMCw1ODYsMCwxNzcsMTc3LDIyLDIzLDAsMjQsMCwwLDAsNzgsMCw1NTMsMCwwXSxbMCw1NTMsMCwwLDAsMTc1LDU4NywwLDIzLDAsMjQsMCwwLDAsNzgsMCw1NTMsMCwwXSxbMCwwLDAsNTg4LDkxLDU4OSw1OTAsMjIsMjMsMCwyNCwwLDAsNTkxLDkzLDAsMCwyNywwXSxbMCwwLDAsMCw1MTMsNTU4LDU1OCwzMiwzMywwLDM0LDAsMCwwLDUxNywwLDAsMzcsMF0sWzAsMCwwLDAsNTYxLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCwwLDU2MSwwLDAsMCwwXSxbMCwwLDAsNTkyLDExMiw1OTMsNTk0LDMyLDMzLDAsMzQsMCwwLDU5NSwxMTQsMCwwLDM3LDBdLFswLDU1OSwwLDU5NiwwLDIwMywyMDMsMzIsMzMsMCwzNCwwLDAsMCw5OSwwLDU1OSwwLDBdLFswLDU1OSwwLDAsMCwyMDEsNTk3LDAsMzMsMCwzNCwwLDAsMCw5OSwwLDU1OSwwLDBdLFswLDAsMCw1OTgsMTEyLDU5OSw2MDAsMzIsMzMsMCwzNCwwLDAsNjAxLDExNCwwLDAsMzcsMF0sWzAsMCwwLDYwMiw2Niw2Nyw2Nyw4LDksMCwxMCwwLDAsMCw2OCwwLDAsMTYsMF0sWzAsMCwwLDAsMTY1LDQ0LDQ0LDgsOSwwLDAsMCwwLDU2NiwxNjUsMCwwLDAsMF0sWzAsMCwwLDU2Myw2Niw1NjQsNjcsOCw5LDAsMTAsMCwwLDU2Niw2OCwwLDAsMTYsMF0sWzAsMCwwLDU2Myw2Niw2Nyw2Nyw4LDksMCwxMCwwLDAsMCw2OCwwLDAsMTYsMF0sWzAsNTI3LDAsMCwwLDEyMSwxMjEsMCw5LDAsMTAsMCwwLDAsNDIsMCw1MjcsMCwwXSxbMCw1MjcsMCw1NjcsMCwxMjEsMTIxLDAsOSwwLDEwLDAsMCwwLDQyLDAsNTI3LDAsMF0sWzAsMCwwLDYwMiw2Niw2Nyw2Nyw4LDksMCwxMCwwLDAsMCw2OCwwLDAsMTYsMF0sWzAsMCwwLDAsMTY1LDQ0LDQ0LDgsOSwwLDAsMCwwLDU3MiwxNjUsMCwwLDAsMF0sWzAsMCwwLDU2OSw2Niw1NzAsNjcsOCw5LDAsMTAsMCwwLDU3Miw2OCwwLDAsMTYsMF0sWzAsMCwwLDU2OSw2Niw2Nyw2Nyw4LDksMCwxMCwwLDAsMCw2OCwwLDAsMTYsMF0sWzAsMCwwLDAsNTMyLDU3NCw1NzQsNTcsNTgsMCw1OSwwLDAsMCw1MzYsMCwwLDYyLDBdLFswLDAsMCwwLDU3NywxNDEsMTQxLDU3LDU4LDAsMCwwLDAsMCw1NzcsMCwwLDAsMF0sWzAsMCwwLDYwMywxNTIsNjA0LDYwNSw1Nyw1OCwwLDU5LDAsMCw2MDYsMTU0LDAsMCw2MiwwXSxbMCw1NzUsMCw2MDcsMCwyNDgsMjQ4LDU3LDU4LDAsNTksMCwwLDAsMTM5LDAsNTc1LDAsMF0sWzAsNTc1LDAsMCwwLDI0Niw2MDgsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDU3NSwwLDBdLFswLDAsMCw2MDksMTUyLDYxMCw2MTEsNTcsNTgsMCw1OSwwLDAsNjEyLDE1NCwwLDAsNjIsMF0sWzAsMCwwLDAsMCwwLDAsNDk0LDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNDkxLDAsMF0sWzAsMCwwLDAsMCwwLDYxMywwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDYxNCw5MSw5Miw5MiwyMiwyMywwLDI0LDAsMCwwLDkzLDAsMCwyNywwXSxbMCwwLDAsMCwxOTQsODAsODAsMjIsMjMsMCwwLDAsMCw1ODUsMTk0LDAsMCwwLDBdLFswLDAsMCw1ODIsOTEsNTgzLDkyLDIyLDIzLDAsMjQsMCwwLDU4NSw5MywwLDAsMjcsMF0sWzAsMCwwLDU4Miw5MSw5Miw5MiwyMiwyMywwLDI0LDAsMCwwLDkzLDAsMCwyNywwXSxbMCw1NTMsMCwwLDAsMTc1LDE3NSwwLDIzLDAsMjQsMCwwLDAsNzgsMCw1NTMsMCwwXSxbMCw1NTMsMCw1ODYsMCwxNzUsMTc1LDAsMjMsMCwyNCwwLDAsMCw3OCwwLDU1MywwLDBdLFswLDAsMCw2MTQsOTEsOTIsOTIsMjIsMjMsMCwyNCwwLDAsMCw5MywwLDAsMjcsMF0sWzAsMCwwLDAsMTk0LDgwLDgwLDIyLDIzLDAsMCwwLDAsNTkxLDE5NCwwLDAsMCwwXSxbMCwwLDAsNTg4LDkxLDU4OSw5MiwyMiwyMywwLDI0LDAsMCw1OTEsOTMsMCwwLDI3LDBdLFswLDAsMCw1ODgsOTEsOTIsOTIsMjIsMjMsMCwyNCwwLDAsMCw5MywwLDAsMjcsMF0sWzAsMCwwLDYxNSwxMTIsMTEzLDExMywzMiwzMywwLDM0LDAsMCwwLDExNCwwLDAsMzcsMF0sWzAsMCwwLDAsMjIwLDEwMSwxMDEsMzIsMzMsMCwwLDAsMCw1OTUsMjIwLDAsMCwwLDBdLFswLDAsMCw1OTIsMTEyLDU5MywxMTMsMzIsMzMsMCwzNCwwLDAsNTk1LDExNCwwLDAsMzcsMF0sWzAsMCwwLDU5MiwxMTIsMTEzLDExMywzMiwzMywwLDM0LDAsMCwwLDExNCwwLDAsMzcsMF0sWzAsNTU5LDAsMCwwLDIwMSwyMDEsMCwzMywwLDM0LDAsMCwwLDk5LDAsNTU5LDAsMF0sWzAsNTU5LDAsNTk2LDAsMjAxLDIwMSwwLDMzLDAsMzQsMCwwLDAsOTksMCw1NTksMCwwXSxbMCwwLDAsNjE1LDExMiwxMTMsMTEzLDMyLDMzLDAsMzQsMCwwLDAsMTE0LDAsMCwzNywwXSxbMCwwLDAsMCwyMjAsMTAxLDEwMSwzMiwzMywwLDAsMCwwLDYwMSwyMjAsMCwwLDAsMF0sWzAsMCwwLDU5OCwxMTIsNTk5LDExMywzMiwzMywwLDM0LDAsMCw2MDEsMTE0LDAsMCwzNywwXSxbMCwwLDAsNTk4LDExMiwxMTMsMTEzLDMyLDMzLDAsMzQsMCwwLDAsMTE0LDAsMCwzNywwXSxbMCwwLDAsMCw2Niw2Nyw2Nyw4LDksMCwxMCwwLDAsMCw2OCwwLDAsMTYsMF0sWzAsMCwwLDYxNiwxNTIsMTUzLDE1Myw1Nyw1OCwwLDU5LDAsMCwwLDE1NCwwLDAsNjIsMF0sWzAsMCwwLDAsMjY1LDE0MSwxNDEsNTcsNTgsMCwwLDAsMCw2MDYsMjY1LDAsMCwwLDBdLFswLDAsMCw2MDMsMTUyLDYwNCwxNTMsNTcsNTgsMCw1OSwwLDAsNjA2LDE1NCwwLDAsNjIsMF0sWzAsMCwwLDYwMywxNTIsMTUzLDE1Myw1Nyw1OCwwLDU5LDAsMCwwLDE1NCwwLDAsNjIsMF0sWzAsNTc1LDAsMCwwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDU3NSwwLDBdLFswLDU3NSwwLDYwNywwLDI0NiwyNDYsMCw1OCwwLDU5LDAsMCwwLDEzOSwwLDU3NSwwLDBdLFswLDAsMCw2MTYsMTUyLDE1MywxNTMsNTcsNTgsMCw1OSwwLDAsMCwxNTQsMCwwLDYyLDBdLFswLDAsMCwwLDI2NSwxNDEsMTQxLDU3LDU4LDAsMCwwLDAsNjEyLDI2NSwwLDAsMCwwXSxbMCwwLDAsNjA5LDE1Miw2MTAsMTUzLDU3LDU4LDAsNTksMCwwLDYxMiwxNTQsMCwwLDYyLDBdLFswLDAsMCw2MDksMTUyLDE1MywxNTMsNTcsNTgsMCw1OSwwLDAsMCwxNTQsMCwwLDYyLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDU0OSwwLDBdLFswLDAsMCwwLDkxLDkyLDkyLDIyLDIzLDAsMjQsMCwwLDAsOTMsMCwwLDI3LDBdLFswLDAsMCwwLDExMiwxMTMsMTEzLDMyLDMzLDAsMzQsMCwwLDAsMTE0LDAsMCwzNywwXSxbMCwwLDAsMCwxNTIsMTUzLDE1Myw1Nyw1OCwwLDU5LDAsMCwwLDE1NCwwLDAsNjIsMF1dLFwiYWNjZXB0aW5nXCI6W2ZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWVdLFwidGFnc1wiOltbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzeW1ib2xfY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW10sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcInN5bWJvbF9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW10sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtdLFtdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtdLFtdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW10sW10sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW10sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtdLFtdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXSxbXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW10sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW10sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXSxbXSxbXSxbXSxbXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIixcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1widm93ZWxfc3lsbGFibGVcIl0sW1widm93ZWxfc3lsbGFibGVcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtdLFtdLFtdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiLFwiYnJva2VuX2NsdXN0ZXJcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCIsXCJicm9rZW5fY2x1c3RlclwiXSxbXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcInZvd2VsX3N5bGxhYmxlXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW10sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJjb25zb25hbnRfc3lsbGFibGVcIl0sW10sW1wiY29uc29uYW50X3N5bGxhYmxlXCJdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW10sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtcInN0YW5kYWxvbmVfY2x1c3RlclwiXSxbXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl0sW1wic3RhbmRhbG9uZV9jbHVzdGVyXCJdLFtdLFtcImNvbnNvbmFudF9zeWxsYWJsZVwiXSxbXCJ2b3dlbF9zeWxsYWJsZVwiXSxbXCJzdGFuZGFsb25lX2NsdXN0ZXJcIl1dfSIsICJ7XCJjYXRlZ29yaWVzXCI6W1wiT1wiLFwiSU5EXCIsXCJTXCIsXCJHQlwiLFwiQlwiLFwiRk1cIixcIkNHSlwiLFwiVk1BYnZcIixcIlZNUHN0XCIsXCJWQWJ2XCIsXCJWUHN0XCIsXCJDTUJsd1wiLFwiVlByZVwiLFwiVkJsd1wiLFwiSFwiLFwiVk1CbHdcIixcIkNNQWJ2XCIsXCJNQmx3XCIsXCJDU1wiLFwiUlwiLFwiU1VCXCIsXCJNUHN0XCIsXCJNUHJlXCIsXCJGQWJ2XCIsXCJGUHN0XCIsXCJGQmx3XCIsXCJudWxsXCIsXCJTTUFidlwiLFwiU01CbHdcIixcIlZNUHJlXCIsXCJaV05KXCIsXCJaV0pcIixcIldKXCIsXCJNXCIsXCJWU1wiLFwiTlwiLFwiSE5cIixcIk1BYnZcIl0sXCJkZWNvbXBvc2l0aW9uc1wiOntcIjI1MDdcIjpbMjUwMywyNDk0XSxcIjI1MDhcIjpbMjUwMywyNTE5XSxcIjI4ODhcIjpbMjg4NywyOTAyXSxcIjI4OTFcIjpbMjg4NywyODc4XSxcIjI4OTJcIjpbMjg4NywyOTAzXSxcIjMwMThcIjpbMzAxNCwzMDA2XSxcIjMwMTlcIjpbMzAxNSwzMDA2XSxcIjMwMjBcIjpbMzAxNCwzMDMxXSxcIjMxNDRcIjpbMzE0MiwzMTU4XSxcIjMyNjRcIjpbMzI2MywzMjg1XSxcIjMyNzFcIjpbMzI3MCwzMjg1XSxcIjMyNzJcIjpbMzI3MCwzMjg2XSxcIjMyNzRcIjpbMzI3MCwzMjY2XSxcIjMyNzVcIjpbMzI3MCwzMjY2LDMyODVdLFwiMzQwMlwiOlszMzk4LDMzOTBdLFwiMzQwM1wiOlszMzk5LDMzOTBdLFwiMzQwNFwiOlszMzk4LDM0MTVdLFwiMzU0NlwiOlszNTQ1LDM1MzBdLFwiMzU0OFwiOlszNTQ1LDM1MzVdLFwiMzU0OVwiOlszNTQ1LDM1MzUsMzUzMF0sXCIzNTUwXCI6WzM1NDUsMzU1MV0sXCIzNjM1XCI6WzM2NjEsMzYzNF0sXCIzNzYzXCI6WzM3ODksMzc2Ml0sXCIzOTU1XCI6WzM5NTMsMzk1NF0sXCIzOTU3XCI6WzM5NTMsMzk1Nl0sXCIzOTU4XCI6WzQwMTgsMzk2OF0sXCIzOTU5XCI6WzQwMTgsMzk1MywzOTY4XSxcIjM5NjBcIjpbNDAxOSwzOTY4XSxcIjM5NjFcIjpbNDAxOSwzOTUzLDM5NjhdLFwiMzk2OVwiOlszOTUzLDM5NjhdLFwiNjk3MVwiOls2OTcwLDY5NjVdLFwiNjk3M1wiOls2OTcyLDY5NjVdLFwiNjk3NlwiOls2OTc0LDY5NjVdLFwiNjk3N1wiOls2OTc1LDY5NjVdLFwiNjk3OVwiOls2OTc4LDY5NjVdLFwiNjk5MzRcIjpbNjk5MzcsNjk5MjddLFwiNjk5MzVcIjpbNjk5MzgsNjk5MjddLFwiNzA0NzVcIjpbNzA0NzEsNzA0NjJdLFwiNzA0NzZcIjpbNzA0NzEsNzA0ODddLFwiNzA4NDNcIjpbNzA4NDEsNzA4NDJdLFwiNzA4NDRcIjpbNzA4NDEsNzA4MzJdLFwiNzA4NDZcIjpbNzA4NDEsNzA4NDVdLFwiNzEwOThcIjpbNzEwOTYsNzEwODddLFwiNzEwOTlcIjpbNzEwOTcsNzEwODddfSxcInN0YXRlVGFibGVcIjpbWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzIsMiwzLDQsNCw1LDAsNiw3LDgsOSwxMCwxMSwxMiwxMywxNCwxNSwxNiwwLDE3LDE4LDExLDE5LDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwyLDAsMCwyNCwwLDI1XSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyNiwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDI3LDI4LDAsMCwwLDAsMCwyNywwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDM0LDM1LDM2LDM3LDM4LDM5LDQwLDAsMCw0MSwzNSw0Miw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDM5LDAsMCw0N10sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDAsMCwwLDAsMCwwLDE0LDAsMCwwLDAsMCwwLDAsMjAsMjEsMjIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNSwwLDAsNywwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjAsMjEsMjIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksMCwwLDEyLDAsMTQsMCwwLDAsMCwwLDAsMCwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNSwwLDYsNywwLDksMCwwLDAsMCwxNCwwLDAsMCwwLDAsMCwwLDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDgsOSwxMCwxMSwxMiwxMywxNCwwLDE2LDAsMCwxOCwxMSwxOSwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDI1XSxbMCwwLDAsMCwwLDUsMCw2LDcsOCw5LDAsMTEsMTIsMCwxNCwwLDAsMCwwLDAsMCwwLDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDAsOSwwLDAsMTIsMCwxNCwwLDAsMCwwLDAsMCwwLDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMTgsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNSwwLDAsNywwLDAsMCwwLDAsMCwxNCwwLDAsMCwwLDAsMCwwLDIwLDIxLDIyLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDUsMCw2LDcsOCw5LDEwLDExLDEyLDEzLDE0LDE1LDE2LDAsMCwxOCwxMSwxOSwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDI1XSxbMCwwLDAsMCwwLDUsMCw2LDcsOCw5LDAsMTEsMTIsMCwxNCwwLDAsMCwwLDAsMTEsMCwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCw0LDQsNSwwLDYsNyw4LDksMTAsMTEsMTIsMTMsMTQsMTUsMTYsMCwwLDE4LDExLDE5LDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsMCwwLDAsMjVdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksNDgsMTEsMTIsMTMsMTQsNDgsMTYsMCwwLDE4LDExLDE5LDIwLDIxLDIyLDAsMCwwLDIzLDAsMCwwLDAsNDksMCwwLDI1XSxbMCwwLDAsMCwwLDUsMCw2LDcsOCw5LDAsMTEsMTIsMCwxNCwwLDE2LDAsMCwwLDExLDAsMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwyNV0sWzAsMCwwLDAsMCw1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyMCwyMSwyMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDIxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyMSwyMiwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCw1LDAsNiw3LDAsMCwwLDAsMCwwLDE0LDAsMCwwLDAsMCwwLDAsMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw1MCwwLDUxLDBdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksMCwxMSwxMiwwLDE0LDAsMTYsMCwwLDAsMTEsMCwyMCwyMSwyMiwwLDAsMCwyMywwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwyNywyOCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMjgsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjksMCwzMCwzMSwwLDAsMCwwLDAsMCwzOCwwLDAsMCwwLDAsMCwwLDQzLDQ0LDQ1LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMCwzMSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNDMsNDQsNDUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjksMCwzMCwzMSwzMiwzMywwLDAsMzYsMCwzOCwwLDAsMCwwLDAsMCwwLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDAsMzMsMCwwLDAsMCwzOCwwLDAsMCwwLDAsMCwwLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDM0LDM1LDM2LDM3LDM4LDAsNDAsMCwwLDQxLDM1LDQyLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsNDddLFswLDAsMCwwLDAsMjksMCwzMCwzMSwzMiwzMywwLDM1LDM2LDAsMzgsMCwwLDAsMCwwLDAsMCw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjksMCwzMCwzMSwwLDMzLDAsMCwzNiwwLDM4LDAsMCwwLDAsMCwwLDAsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCw0MSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDAsMzEsMCwwLDAsMCwwLDAsMzgsMCwwLDAsMCwwLDAsMCw0Myw0NCw0NSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDM0LDM1LDM2LDM3LDM4LDM5LDQwLDAsMCw0MSwzNSw0Miw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDQ3XSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsMCwzNSwzNiwwLDM4LDAsMCwwLDAsMCwzNSwwLDQzLDQ0LDQ1LDAsMCwwLDQ2LDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDUyLDM1LDM2LDM3LDM4LDUyLDQwLDAsMCw0MSwzNSw0Miw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDUzLDAsMCw0N10sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDAsMzUsMzYsMCwzOCwwLDQwLDAsMCwwLDM1LDAsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCw0N10sWzAsMCwwLDAsMCwyOSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNDMsNDQsNDUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsMjksMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNDQsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0NCw0NSwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMF0sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDAsMCwwLDAsMCwwLDM4LDAsMCwwLDAsMCwwLDAsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsMCwzNSwzNiwwLDM4LDAsNDAsMCwwLDAsMzUsMCw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDBdLFswLDAsMCwwLDAsNSwwLDYsNyw4LDksNDgsMTEsMTIsMTMsMTQsMCwxNiwwLDAsMTgsMTEsMTksMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwyNV0sWzAsMCwwLDAsMCw1LDAsNiw3LDgsOSw0OCwxMSwxMiwxMywxNCw0OCwxNiwwLDAsMTgsMTEsMTksMjAsMjEsMjIsMCwwLDAsMjMsMCwwLDAsMCwwLDAsMCwyNV0sWzAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDUxLDBdLFswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsNTQsMCwwXSxbMCwwLDAsMCwwLDI5LDAsMzAsMzEsMzIsMzMsNTIsMzUsMzYsMzcsMzgsMCw0MCwwLDAsNDEsMzUsNDIsNDMsNDQsNDUsMCwwLDAsNDYsMCwwLDAsMCwwLDAsMCw0N10sWzAsMCwwLDAsMCwyOSwwLDMwLDMxLDMyLDMzLDUyLDM1LDM2LDM3LDM4LDUyLDQwLDAsMCw0MSwzNSw0Miw0Myw0NCw0NSwwLDAsMCw0NiwwLDAsMCwwLDAsMCwwLDQ3XSxbMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw1MCwwLDUxLDBdXSxcImFjY2VwdGluZ1wiOltmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWVdLFwidGFnc1wiOltbXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJpbmRlcGVuZGVudF9jbHVzdGVyXCJdLFtcInN5bWJvbF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW10sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wiYnJva2VuX2NsdXN0ZXJcIl0sW1wibnVtZXJhbF9jbHVzdGVyXCJdLFtcImJyb2tlbl9jbHVzdGVyXCJdLFtcImluZGVwZW5kZW50X2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wic3ltYm9sX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInZpcmFtYV90ZXJtaW5hdGVkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcInN0YW5kYXJkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJicm9rZW5fY2x1c3RlclwiXSxbXCJudW1lcmFsX2NsdXN0ZXJcIl0sW1wibnVtYmVyX2pvaW5lcl90ZXJtaW5hdGVkX2NsdXN0ZXJcIl0sW1wic3RhbmRhcmRfY2x1c3RlclwiXSxbXCJzdGFuZGFyZF9jbHVzdGVyXCJdLFtcIm51bWVyYWxfY2x1c3RlclwiXV19IiwgIi8vIENhdGVvcmllcyB1c2VkIGluIHRoZSBPcGVuVHlwZSBzcGVjOlxuLy8gaHR0cHM6Ly93d3cubWljcm9zb2Z0LmNvbS90eXBvZ3JhcGh5L290Zm50ZGV2L2RldmFub3Qvc2hhcGluZy5hc3B4XG5leHBvcnQgY29uc3QgQ0FURUdPUklFUyA9IHtcbiAgWDogMSA8PCAwLFxuICBDOiAxIDw8IDEsXG4gIFY6IDEgPDwgMixcbiAgTjogMSA8PCAzLFxuICBIOiAxIDw8IDQsXG4gIFpXTko6IDEgPDwgNSxcbiAgWldKOiAxIDw8IDYsXG4gIE06IDEgPDwgNyxcbiAgU006IDEgPDwgOCxcbiAgVkQ6IDEgPDwgOSxcbiAgQTogMSA8PCAxMCxcbiAgUGxhY2Vob2xkZXI6IDEgPDwgMTEsXG4gIERvdHRlZF9DaXJjbGU6IDEgPDwgMTIsXG4gIFJTOiAxIDw8IDEzLCAgICAvLyBSZWdpc3RlciBTaGlmdGVyLCB1c2VkIGluIEtobWVyIE9UIHNwZWMuXG4gIENvZW5nOiAxIDw8IDE0LCAvLyBLaG1lci1zdHlsZSBWaXJhbWEuXG4gIFJlcGhhOiAxIDw8IDE1LCAvLyBBdG9taWNhbGx5LWVuY29kZWQgbG9naWNhbCBvciB2aXN1YWwgcmVwaGEuXG4gIFJhOiAxIDw8IDE2LFxuICBDTTogMSA8PCAxNywgICAgLy8gQ29uc29uYW50LU1lZGlhbC5cbiAgU3ltYm9sOiAxIDw8IDE4IC8vIEF2YWdyYWhhLCBldGMgdGhhdCB0YWtlIG1hcmtzIChTTSxBLFZEKS5cbn07XG5cbi8vIFZpc3VhbCBwb3NpdGlvbnMgaW4gYSBzeWxsYWJsZSBmcm9tIGxlZnQgdG8gcmlnaHQuXG5leHBvcnQgY29uc3QgUE9TSVRJT05TID0ge1xuICBTdGFydDogMSA8PCAwLFxuXG4gIFJhX1RvX0JlY29tZV9SZXBoOiAxIDw8IDEsXG4gIFByZV9NOiAxIDw8IDIsXG4gIFByZV9DOiAxIDw8IDMsXG5cbiAgQmFzZV9DOiAxIDw8IDQsXG4gIEFmdGVyX01haW46IDEgPDwgNSxcblxuICBBYm92ZV9DOiAxIDw8IDYsXG5cbiAgQmVmb3JlX1N1YjogMSA8PCA3LFxuICBCZWxvd19DOiAxIDw8IDgsXG4gIEFmdGVyX1N1YjogMSA8PCA5LFxuXG4gIEJlZm9yZV9Qb3N0OiAxIDw8IDEwLFxuICBQb3N0X0M6IDEgPDwgMTEsXG4gIEFmdGVyX1Bvc3Q6IDEgPDwgMTIsXG5cbiAgRmluYWxfQzogMSA8PCAxMyxcbiAgU01WRDogMSA8PCAxNCxcblxuICBFbmQ6IDEgPDwgMTVcbn07XG5cbmV4cG9ydCBjb25zdCBDT05TT05BTlRfRkxBR1MgPSBDQVRFR09SSUVTLkMgfCBDQVRFR09SSUVTLlJhIHwgQ0FURUdPUklFUy5DTSB8IENBVEVHT1JJRVMuViB8IENBVEVHT1JJRVMuUGxhY2Vob2xkZXIgfCBDQVRFR09SSUVTLkRvdHRlZF9DaXJjbGU7XG5leHBvcnQgY29uc3QgSk9JTkVSX0ZMQUdTID0gQ0FURUdPUklFUy5aV0ogfCBDQVRFR09SSUVTLlpXTko7XG5leHBvcnQgY29uc3QgSEFMQU5UX09SX0NPRU5HX0ZMQUdTID0gQ0FURUdPUklFUy5IIHwgQ0FURUdPUklFUy5Db2VuZztcblxuZXhwb3J0IGNvbnN0IElORElDX0NPTkZJR1MgPSB7XG4gIERlZmF1bHQ6IHtcbiAgICBoYXNPbGRTcGVjOiBmYWxzZSxcbiAgICB2aXJhbWE6IDAsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5CZWZvcmVfUG9zdCxcbiAgICByZXBoTW9kZTogJ0ltcGxpY2l0JyxcbiAgICBibHdmTW9kZTogJ1ByZV9BbmRfUG9zdCdcbiAgfSxcblxuICBEZXZhbmFnYXJpOiB7XG4gICAgaGFzT2xkU3BlYzogdHJ1ZSxcbiAgICB2aXJhbWE6IDB4MDk0RCxcbiAgICBiYXNlUG9zOiAnTGFzdCcsXG4gICAgcmVwaFBvczogUE9TSVRJT05TLkJlZm9yZV9Qb3N0LFxuICAgIHJlcGhNb2RlOiAnSW1wbGljaXQnLFxuICAgIGJsd2ZNb2RlOiAnUHJlX0FuZF9Qb3N0J1xuICB9LFxuXG4gIEJlbmdhbGk6IHtcbiAgICBoYXNPbGRTcGVjOiB0cnVlLFxuICAgIHZpcmFtYTogMHgwOUNELFxuICAgIGJhc2VQb3M6ICdMYXN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuQWZ0ZXJfU3ViLFxuICAgIHJlcGhNb2RlOiAnSW1wbGljaXQnLFxuICAgIGJsd2ZNb2RlOiAnUHJlX0FuZF9Qb3N0J1xuICB9LFxuXG4gIEd1cm11a2hpOiB7XG4gICAgaGFzT2xkU3BlYzogdHJ1ZSxcbiAgICB2aXJhbWE6IDB4MEE0RCxcbiAgICBiYXNlUG9zOiAnTGFzdCcsXG4gICAgcmVwaFBvczogUE9TSVRJT05TLkJlZm9yZV9TdWIsXG4gICAgcmVwaE1vZGU6ICdJbXBsaWNpdCcsXG4gICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIH0sXG5cbiAgR3VqYXJhdGk6IHtcbiAgICBoYXNPbGRTcGVjOiB0cnVlLFxuICAgIHZpcmFtYTogMHgwQUNELFxuICAgIGJhc2VQb3M6ICdMYXN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuQmVmb3JlX1Bvc3QsXG4gICAgcmVwaE1vZGU6ICdJbXBsaWNpdCcsXG4gICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIH0sXG5cbiAgT3JpeWE6IHtcbiAgICBoYXNPbGRTcGVjOiB0cnVlLFxuICAgIHZpcmFtYTogMHgwQjRELFxuICAgIGJhc2VQb3M6ICdMYXN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuQWZ0ZXJfTWFpbixcbiAgICByZXBoTW9kZTogJ0ltcGxpY2l0JyxcbiAgICBibHdmTW9kZTogJ1ByZV9BbmRfUG9zdCdcbiAgfSxcblxuICBUYW1pbDoge1xuICAgIGhhc09sZFNwZWM6IHRydWUsXG4gICAgdmlyYW1hOiAweDBCQ0QsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5BZnRlcl9Qb3N0LFxuICAgIHJlcGhNb2RlOiAnSW1wbGljaXQnLFxuICAgIGJsd2ZNb2RlOiAnUHJlX0FuZF9Qb3N0J1xuICB9LFxuXG4gIFRlbHVndToge1xuICAgIGhhc09sZFNwZWM6IHRydWUsXG4gICAgdmlyYW1hOiAweDBDNEQsXG4gICAgYmFzZVBvczogJ0xhc3QnLFxuICAgIHJlcGhQb3M6IFBPU0lUSU9OUy5BZnRlcl9Qb3N0LFxuICAgIHJlcGhNb2RlOiAnRXhwbGljaXQnLFxuICAgIGJsd2ZNb2RlOiAnUG9zdF9Pbmx5J1xuICB9LFxuXG4gIEthbm5hZGE6IHtcbiAgICBoYXNPbGRTcGVjOiB0cnVlLFxuICAgIHZpcmFtYTogMHgwQ0NELFxuICAgIGJhc2VQb3M6ICdMYXN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuQWZ0ZXJfUG9zdCxcbiAgICByZXBoTW9kZTogJ0ltcGxpY2l0JyxcbiAgICBibHdmTW9kZTogJ1Bvc3RfT25seSdcbiAgfSxcblxuICBNYWxheWFsYW06IHtcbiAgICBoYXNPbGRTcGVjOiB0cnVlLFxuICAgIHZpcmFtYTogMHgwRDRELFxuICAgIGJhc2VQb3M6ICdMYXN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuQWZ0ZXJfTWFpbixcbiAgICByZXBoTW9kZTogJ0xvZ19SZXBoYScsXG4gICAgYmx3Zk1vZGU6ICdQcmVfQW5kX1Bvc3QnXG4gIH0sXG5cbiAgLy8gSGFuZGxlZCBieSBVbml2ZXJzYWxTaGFwZXJcbiAgLy8gU2luaGFsYToge1xuICAvLyAgIGhhc09sZFNwZWM6IGZhbHNlLFxuICAvLyAgIHZpcmFtYTogMHgwRENBLFxuICAvLyAgIGJhc2VQb3M6ICdMYXN0X1NpbmhhbGEnLFxuICAvLyAgIHJlcGhQb3M6IFBPU0lUSU9OUy5BZnRlcl9NYWluLFxuICAvLyAgIHJlcGhNb2RlOiAnRXhwbGljaXQnLFxuICAvLyAgIGJsd2ZNb2RlOiAnUHJlX0FuZF9Qb3N0J1xuICAvLyB9LFxuXG4gIEtobWVyOiB7XG4gICAgaGFzT2xkU3BlYzogZmFsc2UsXG4gICAgdmlyYW1hOiAweDE3RDIsXG4gICAgYmFzZVBvczogJ0ZpcnN0JyxcbiAgICByZXBoUG9zOiBQT1NJVElPTlMuUmFfVG9fQmVjb21lX1JlcGgsXG4gICAgcmVwaE1vZGU6ICdWaXNfUmVwaGEnLFxuICAgIGJsd2ZNb2RlOiAnUHJlX0FuZF9Qb3N0J1xuICB9XG59O1xuXG4vLyBBZGRpdGlvbmFsIGRlY29tcG9zaXRpb25zIHRoYXQgYXJlbid0IGluIFVuaWNvZGVcbmV4cG9ydCBjb25zdCBJTkRJQ19ERUNPTVBPU0lUSU9OUyA9IHtcbiAgLy8gS2htZXJcbiAgMHgxN0JFOiBbMHgxN0MxLCAweDE3QkVdLFxuICAweDE3QkY6IFsweDE3QzEsIDB4MTdCRl0sXG4gIDB4MTdDMDogWzB4MTdDMSwgMHgxN0MwXSxcbiAgMHgxN0M0OiBbMHgxN0MxLCAweDE3QzRdLFxuICAweDE3QzU6IFsweDE3QzEsIDB4MTdDNV1cbn07XG4iLCAiaW1wb3J0IERlZmF1bHRTaGFwZXIgZnJvbSAnLi9EZWZhdWx0U2hhcGVyJztcbmltcG9ydCBTdGF0ZU1hY2hpbmUgZnJvbSAnZGZhJztcbmltcG9ydCBVbmljb2RlVHJpZSBmcm9tICd1bmljb2RlLXRyaWUnO1xuaW1wb3J0IEdseXBoSW5mbyBmcm9tICcuLi9HbHlwaEluZm8nO1xuaW1wb3J0IHVzZURhdGEgZnJvbSAnLi91c2UuanNvbic7XG5pbXBvcnQgeyBkZWNvZGVCYXNlNjQgfSBmcm9tICcuLi8uLi91dGlscyc7XG5cbmNvbnN0IHtjYXRlZ29yaWVzLCBkZWNvbXBvc2l0aW9uc30gPSB1c2VEYXRhO1xuY29uc3QgdHJpZSA9IG5ldyBVbmljb2RlVHJpZShkZWNvZGVCYXNlNjQocmVxdWlyZSgnZnMnKS5yZWFkRmlsZVN5bmMoX19kaXJuYW1lICsgJy91c2UudHJpZScsICdiYXNlNjQnKSkpO1xuY29uc3Qgc3RhdGVNYWNoaW5lID0gbmV3IFN0YXRlTWFjaGluZSh1c2VEYXRhKTtcblxuLyoqXG4gKiBUaGlzIHNoYXBlciBpcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgVW5pdmVyc2FsIFNoYXBpbmcgRW5naW5lLCB3aGljaFxuICogdXNlcyBVbmljb2RlIGRhdGEgdG8gc2hhcGUgYSBudW1iZXIgb2Ygc2NyaXB0cyB3aXRob3V0IGEgZGVkaWNhdGVkIHNoYXBpbmcgZW5naW5lLlxuICogU2VlIGh0dHBzOi8vd3d3Lm1pY3Jvc29mdC5jb20vdHlwb2dyYXBoeS9PcGVuVHlwZURldi9VU0UvaW50cm8uaHRtLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBVbml2ZXJzYWxTaGFwZXIgZXh0ZW5kcyBEZWZhdWx0U2hhcGVyIHtcbiAgc3RhdGljIHplcm9NYXJrV2lkdGhzID0gJ0JFRk9SRV9HUE9TJztcbiAgc3RhdGljIHBsYW5GZWF0dXJlcyhwbGFuKSB7XG4gICAgcGxhbi5hZGRTdGFnZShzZXR1cFN5bGxhYmxlcyk7XG5cbiAgICAvLyBEZWZhdWx0IGdseXBoIHByZS1wcm9jZXNzaW5nIGdyb3VwXG4gICAgcGxhbi5hZGRTdGFnZShbJ2xvY2wnLCAnY2NtcCcsICdudWt0JywgJ2FraG4nXSk7XG5cbiAgICAvLyBSZW9yZGVyaW5nIGdyb3VwXG4gICAgcGxhbi5hZGRTdGFnZShjbGVhclN1YnN0aXR1dGlvbkZsYWdzKTtcbiAgICBwbGFuLmFkZFN0YWdlKFsncnBoZiddLCBmYWxzZSk7XG4gICAgcGxhbi5hZGRTdGFnZShyZWNvcmRScGhmKTtcbiAgICBwbGFuLmFkZFN0YWdlKGNsZWFyU3Vic3RpdHV0aW9uRmxhZ3MpO1xuICAgIHBsYW4uYWRkU3RhZ2UoWydwcmVmJ10pO1xuICAgIHBsYW4uYWRkU3RhZ2UocmVjb3JkUHJlZik7XG5cbiAgICAvLyBPcnRob2dyYXBoaWMgdW5pdCBzaGFwaW5nIGdyb3VwXG4gICAgcGxhbi5hZGRTdGFnZShbJ3JrcmYnLCAnYWJ2ZicsICdibHdmJywgJ2hhbGYnLCAncHN0ZicsICd2YXR1JywgJ2NqY3QnXSk7XG4gICAgcGxhbi5hZGRTdGFnZShyZW9yZGVyKTtcblxuICAgIC8vIFRvcG9ncmFwaGljYWwgZmVhdHVyZXNcbiAgICAvLyBTY3JpcHRzIHRoYXQgbmVlZCB0aGlzIGFyZSBoYW5kbGVkIGJ5IHRoZSBBcmFiaWMgc2hhcGVyLCBub3QgaW1wbGVtZW50ZWQgaGVyZSBmb3Igbm93LlxuICAgIC8vIHBsYW4uYWRkU3RhZ2UoWydpc29sJywgJ2luaXQnLCAnbWVkaScsICdmaW5hJywgJ21lZDInLCAnZmluMicsICdmaW4zJ10sIGZhbHNlKTtcblxuICAgIC8vIFN0YW5kYXJkIHRvcG9ncmFwaGljIHByZXNlbnRhdGlvbiBhbmQgcG9zaXRpb25hbCBmZWF0dXJlIGFwcGxpY2F0aW9uXG4gICAgcGxhbi5hZGRTdGFnZShbJ2FidnMnLCAnYmx3cycsICdwcmVzJywgJ3BzdHMnLCAnZGlzdCcsICdhYnZtJywgJ2Jsd20nXSk7XG4gIH1cblxuICBzdGF0aWMgYXNzaWduRmVhdHVyZXMocGxhbiwgZ2x5cGhzKSB7XG4gICAgLy8gRGVjb21wb3NlIHNwbGl0IHZvd2Vsc1xuICAgIC8vIFRPRE86IGRvIHRoaXMgaW4gYSBtb3JlIGdlbmVyYWwgdW5pY29kZSBub3JtYWxpemVyXG4gICAgZm9yIChsZXQgaSA9IGdseXBocy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgbGV0IGNvZGVwb2ludCA9IGdseXBoc1tpXS5jb2RlUG9pbnRzWzBdO1xuICAgICAgaWYgKGRlY29tcG9zaXRpb25zW2NvZGVwb2ludF0pIHtcbiAgICAgICAgbGV0IGRlY29tcG9zZWQgPSBkZWNvbXBvc2l0aW9uc1tjb2RlcG9pbnRdLm1hcChjID0+IHtcbiAgICAgICAgICBsZXQgZyA9IHBsYW4uZm9udC5nbHlwaEZvckNvZGVQb2ludChjKTtcbiAgICAgICAgICByZXR1cm4gbmV3IEdseXBoSW5mbyhwbGFuLmZvbnQsIGcuaWQsIFtjXSwgZ2x5cGhzW2ldLmZlYXR1cmVzKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZ2x5cGhzLnNwbGljZShpLCAxLCAuLi5kZWNvbXBvc2VkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdXNlQ2F0ZWdvcnkoZ2x5cGgpIHtcbiAgcmV0dXJuIHRyaWUuZ2V0KGdseXBoLmNvZGVQb2ludHNbMF0pO1xufVxuXG5jbGFzcyBVU0VJbmZvIHtcbiAgY29uc3RydWN0b3IoY2F0ZWdvcnksIHN5bGxhYmxlVHlwZSwgc3lsbGFibGUpIHtcbiAgICB0aGlzLmNhdGVnb3J5ID0gY2F0ZWdvcnk7XG4gICAgdGhpcy5zeWxsYWJsZVR5cGUgPSBzeWxsYWJsZVR5cGU7XG4gICAgdGhpcy5zeWxsYWJsZSA9IHN5bGxhYmxlO1xuICB9XG59XG5cbmZ1bmN0aW9uIHNldHVwU3lsbGFibGVzKGZvbnQsIGdseXBocykge1xuICBsZXQgc3lsbGFibGUgPSAwO1xuICBmb3IgKGxldCBbc3RhcnQsIGVuZCwgdGFnc10gb2Ygc3RhdGVNYWNoaW5lLm1hdGNoKGdseXBocy5tYXAodXNlQ2F0ZWdvcnkpKSkge1xuICAgICsrc3lsbGFibGU7XG5cbiAgICAvLyBDcmVhdGUgc2hhcGVyIGluZm9cbiAgICBmb3IgKGxldCBpID0gc3RhcnQ7IGkgPD0gZW5kOyBpKyspIHtcbiAgICAgIGdseXBoc1tpXS5zaGFwZXJJbmZvID0gbmV3IFVTRUluZm8oY2F0ZWdvcmllc1t1c2VDYXRlZ29yeShnbHlwaHNbaV0pXSwgdGFnc1swXSwgc3lsbGFibGUpO1xuICAgIH1cblxuICAgIC8vIEFzc2lnbiBycGhmIGZlYXR1cmVcbiAgICBsZXQgbGltaXQgPSBnbHlwaHNbc3RhcnRdLnNoYXBlckluZm8uY2F0ZWdvcnkgPT09ICdSJyA/IDEgOiBNYXRoLm1pbigzLCBlbmQgLSBzdGFydCk7XG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDwgc3RhcnQgKyBsaW1pdDsgaSsrKSB7XG4gICAgICBnbHlwaHNbaV0uZmVhdHVyZXMucnBoZiA9IHRydWU7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNsZWFyU3Vic3RpdHV0aW9uRmxhZ3MoZm9udCwgZ2x5cGhzKSB7XG4gIGZvciAobGV0IGdseXBoIG9mIGdseXBocykge1xuICAgIGdseXBoLnN1YnN0aXR1dGVkID0gZmFsc2U7XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVjb3JkUnBoZihmb250LCBnbHlwaHMpIHtcbiAgZm9yIChsZXQgZ2x5cGggb2YgZ2x5cGhzKSB7XG4gICAgaWYgKGdseXBoLnN1YnN0aXR1dGVkICYmIGdseXBoLmZlYXR1cmVzLnJwaGYpIHtcbiAgICAgIC8vIE1hcmsgYSBzdWJzdGl0dXRlZCByZXBoYS5cbiAgICAgIGdseXBoLnNoYXBlckluZm8uY2F0ZWdvcnkgPSAnUic7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlY29yZFByZWYoZm9udCwgZ2x5cGhzKSB7XG4gIGZvciAobGV0IGdseXBoIG9mIGdseXBocykge1xuICAgIGlmIChnbHlwaC5zdWJzdGl0dXRlZCkge1xuICAgICAgLy8gTWFyayBhIHN1YnN0aXR1dGVkIHByZWYgYXMgVlByZSwgYXMgdGhleSBiZWhhdmUgdGhlIHNhbWUgd2F5LlxuICAgICAgZ2x5cGguc2hhcGVySW5mby5jYXRlZ29yeSA9ICdWUHJlJztcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gcmVvcmRlcihmb250LCBnbHlwaHMpIHtcbiAgbGV0IGRvdHRlZENpcmNsZSA9IGZvbnQuZ2x5cGhGb3JDb2RlUG9pbnQoMHgyNWNjKS5pZDtcblxuICBmb3IgKGxldCBzdGFydCA9IDAsIGVuZCA9IG5leHRTeWxsYWJsZShnbHlwaHMsIDApOyBzdGFydCA8IGdseXBocy5sZW5ndGg7IHN0YXJ0ID0gZW5kLCBlbmQgPSBuZXh0U3lsbGFibGUoZ2x5cGhzLCBzdGFydCkpIHtcbiAgICBsZXQgaSwgajtcbiAgICBsZXQgaW5mbyA9IGdseXBoc1tzdGFydF0uc2hhcGVySW5mbztcbiAgICBsZXQgdHlwZSA9IGluZm8uc3lsbGFibGVUeXBlO1xuXG4gICAgLy8gT25seSBhIGZldyBzeWxsYWJsZSB0eXBlcyBuZWVkIHJlb3JkZXJpbmcuXG4gICAgaWYgKHR5cGUgIT09ICd2aXJhbWFfdGVybWluYXRlZF9jbHVzdGVyJyAmJiB0eXBlICE9PSAnc3RhbmRhcmRfY2x1c3RlcicgJiYgdHlwZSAhPT0gJ2Jyb2tlbl9jbHVzdGVyJykge1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgLy8gSW5zZXJ0IGEgZG90dGVkIGNpcmNsZSBnbHlwaCBpbiBicm9rZW4gY2x1c3RlcnMuXG4gICAgaWYgKHR5cGUgPT09ICdicm9rZW5fY2x1c3RlcicgJiYgZG90dGVkQ2lyY2xlKSB7XG4gICAgICBsZXQgZyA9IG5ldyBHbHlwaEluZm8oZm9udCwgZG90dGVkQ2lyY2xlLCBbMHgyNWNjXSk7XG4gICAgICBnLnNoYXBlckluZm8gPSBpbmZvO1xuXG4gICAgICAvLyBJbnNlcnQgYWZ0ZXIgcG9zc2libGUgUmVwaGEuXG4gICAgICBmb3IgKGkgPSBzdGFydDsgaSA8IGVuZCAmJiBnbHlwaHNbaV0uc2hhcGVySW5mby5jYXRlZ29yeSA9PT0gJ1InOyBpKyspO1xuICAgICAgZ2x5cGhzLnNwbGljZSgrK2ksIDAsIGcpO1xuICAgICAgZW5kKys7XG4gICAgfVxuXG4gICAgLy8gTW92ZSB0aGluZ3MgZm9yd2FyZC5cbiAgICBpZiAoaW5mby5jYXRlZ29yeSA9PT0gJ1InICYmIGVuZCAtIHN0YXJ0ID4gMSkge1xuICAgICAgLy8gR290IGEgcmVwaGEuIFJlb3JkZXIgaXQgdG8gYWZ0ZXIgZmlyc3QgYmFzZSwgYmVmb3JlIGZpcnN0IGhhbGFudC5cbiAgICAgIGZvciAoaSA9IHN0YXJ0ICsgMTsgaSA8IGVuZDsgaSsrKSB7XG4gICAgICAgIGluZm8gPSBnbHlwaHNbaV0uc2hhcGVySW5mbztcbiAgICAgICAgaWYgKGlzQmFzZShpbmZvKSB8fCBpc0hhbGFudChnbHlwaHNbaV0pKSB7XG4gICAgICAgICAgLy8gSWYgd2UgaGl0IGEgaGFsYW50LCBtb3ZlIGJlZm9yZSBpdDsgb3RoZXJ3aXNlIGl0J3MgYSBiYXNlOiBtb3ZlIHRvIGl0J3NcbiAgICAgICAgICAvLyBwbGFjZSwgYW5kIHNoaWZ0IHRoaW5ncyBpbiBiZXR3ZWVuIGJhY2t3YXJkLlxuICAgICAgICAgIGlmIChpc0hhbGFudChnbHlwaHNbaV0pKSB7XG4gICAgICAgICAgICBpLS07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZ2x5cGhzLnNwbGljZShzdGFydCwgMCwgLi4uZ2x5cGhzLnNwbGljZShzdGFydCArIDEsIGkgLSBzdGFydCksIGdseXBoc1tpXSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNb3ZlIHRoaW5ncyBiYWNrLlxuICAgIGZvciAoaSA9IHN0YXJ0LCBqID0gZW5kOyBpIDwgZW5kOyBpKyspIHtcbiAgICAgIGluZm8gPSBnbHlwaHNbaV0uc2hhcGVySW5mbztcbiAgICAgIGlmIChpc0Jhc2UoaW5mbykgfHwgaXNIYWxhbnQoZ2x5cGhzW2ldKSkge1xuICAgICAgICAvLyBJZiB3ZSBoaXQgYSBoYWxhbnQsIG1vdmUgYWZ0ZXIgaXQ7IG90aGVyd2lzZSBpdCdzIGEgYmFzZTogbW92ZSB0byBpdCdzXG4gICAgICAgIC8vIHBsYWNlLCBhbmQgc2hpZnQgdGhpbmdzIGluIGJldHdlZW4gYmFja3dhcmQuXG4gICAgICAgIGogPSBpc0hhbGFudChnbHlwaHNbaV0pID8gaSArIDEgOiBpO1xuICAgICAgfSBlbHNlIGlmICgoaW5mby5jYXRlZ29yeSA9PT0gJ1ZQcmUnIHx8IGluZm8uY2F0ZWdvcnkgPT09ICdWTVByZScpICYmIGogPCBpKSB7XG4gICAgICAgIGdseXBocy5zcGxpY2UoaiwgMSwgZ2x5cGhzW2ldLCAuLi5nbHlwaHMuc3BsaWNlKGosIGkgLSBqKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIG5leHRTeWxsYWJsZShnbHlwaHMsIHN0YXJ0KSB7XG4gIGlmIChzdGFydCA+PSBnbHlwaHMubGVuZ3RoKSByZXR1cm4gc3RhcnQ7XG4gIGxldCBzeWxsYWJsZSA9IGdseXBoc1tzdGFydF0uc2hhcGVySW5mby5zeWxsYWJsZTtcbiAgd2hpbGUgKCsrc3RhcnQgPCBnbHlwaHMubGVuZ3RoICYmIGdseXBoc1tzdGFydF0uc2hhcGVySW5mby5zeWxsYWJsZSA9PT0gc3lsbGFibGUpO1xuICByZXR1cm4gc3RhcnQ7XG59XG5cbmZ1bmN0aW9uIGlzSGFsYW50KGdseXBoKSB7XG4gIHJldHVybiBnbHlwaC5zaGFwZXJJbmZvLmNhdGVnb3J5ID09PSAnSCcgJiYgIWdseXBoLmlzTGlnYXRlZDtcbn1cblxuZnVuY3Rpb24gaXNCYXNlKGluZm8pIHtcbiAgcmV0dXJuIGluZm8uY2F0ZWdvcnkgPT09ICdCJyB8fCBpbmZvLmNhdGVnb3J5ID09PSAnR0InO1xufVxuIiwgImltcG9ydCBPVFByb2Nlc3NvciBmcm9tICcuL09UUHJvY2Vzc29yJztcbmltcG9ydCBHbHlwaEluZm8gZnJvbSAnLi9HbHlwaEluZm8nO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBHU1VCUHJvY2Vzc29yIGV4dGVuZHMgT1RQcm9jZXNzb3Ige1xuICBhcHBseUxvb2t1cChsb29rdXBUeXBlLCB0YWJsZSkge1xuICAgIHN3aXRjaCAobG9va3VwVHlwZSkge1xuICAgICAgY2FzZSAxOiB7IC8vIFNpbmdsZSBTdWJzdGl0dXRpb25cbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKTtcbiAgICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBnbHlwaCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5jdXI7XG4gICAgICAgIHN3aXRjaCAodGFibGUudmVyc2lvbikge1xuICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgIGdseXBoLmlkID0gKGdseXBoLmlkICsgdGFibGUuZGVsdGFHbHlwaElEKSAmIDB4ZmZmZjtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAyOlxuICAgICAgICAgICAgZ2x5cGguaWQgPSB0YWJsZS5zdWJzdGl0dXRlLmdldChpbmRleCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDI6IHsgLy8gTXVsdGlwbGUgU3Vic3RpdHV0aW9uXG4gICAgICAgIGxldCBpbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5jb3ZlcmFnZSk7XG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBsZXQgc2VxdWVuY2UgPSB0YWJsZS5zZXF1ZW5jZXMuZ2V0KGluZGV4KTtcblxuICAgICAgICAgIGlmIChzZXF1ZW5jZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIC8vIElmIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgemVybywgZGVsZXRlIHRoZSBnbHlwaC5cbiAgICAgICAgICAgIC8vIFRoZSBPcGVuVHlwZSBzcGVjIGRpc2FsbG93cyB0aGlzLCBidXQgc2VlbXMgbGlrZSBIYXJmYnV6eiBhbmQgVW5pc2NyaWJlIGFsbG93IGl0LlxuICAgICAgICAgICAgdGhpcy5nbHlwaHMuc3BsaWNlKHRoaXMuZ2x5cGhJdGVyYXRvci5pbmRleCwgMSk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmlkID0gc2VxdWVuY2VbMF07XG4gICAgICAgICAgdGhpcy5nbHlwaEl0ZXJhdG9yLmN1ci5saWdhdHVyZUNvbXBvbmVudCA9IDA7XG5cbiAgICAgICAgICBsZXQgZmVhdHVyZXMgPSB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmZlYXR1cmVzO1xuICAgICAgICAgIGxldCBjdXJHbHlwaCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5jdXI7XG4gICAgICAgICAgbGV0IHJlcGxhY2VtZW50ID0gc2VxdWVuY2Uuc2xpY2UoMSkubWFwKChnaWQsIGkpID0+IHtcbiAgICAgICAgICAgIGxldCBnbHlwaCA9IG5ldyBHbHlwaEluZm8odGhpcy5mb250LCBnaWQsIHVuZGVmaW5lZCwgZmVhdHVyZXMpO1xuICAgICAgICAgICAgZ2x5cGguc2hhcGVySW5mbyA9IGN1ckdseXBoLnNoYXBlckluZm87XG4gICAgICAgICAgICBnbHlwaC5pc0xpZ2F0ZWQgPSBjdXJHbHlwaC5pc0xpZ2F0ZWQ7XG4gICAgICAgICAgICBnbHlwaC5saWdhdHVyZUNvbXBvbmVudCA9IGkgKyAxO1xuICAgICAgICAgICAgZ2x5cGguc3Vic3RpdHV0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgZ2x5cGguaXNNdWx0aXBsaWVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiBnbHlwaDtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHRoaXMuZ2x5cGhzLnNwbGljZSh0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXggKyAxLCAwLCAuLi5yZXBsYWNlbWVudCk7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMzogeyAvLyBBbHRlcm5hdGUgU3Vic3RpdHV0aW9uXG4gICAgICAgIGxldCBpbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5jb3ZlcmFnZSk7XG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICBsZXQgVVNFUl9JTkRFWCA9IDA7IC8vIFRPRE9cbiAgICAgICAgICB0aGlzLmdseXBoSXRlcmF0b3IuY3VyLmlkID0gdGFibGUuYWx0ZXJuYXRlU2V0LmdldChpbmRleClbVVNFUl9JTkRFWF07XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgNDogeyAvLyBMaWdhdHVyZSBTdWJzdGl0dXRpb25cbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKTtcbiAgICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAobGV0IGxpZ2F0dXJlIG9mIHRhYmxlLmxpZ2F0dXJlU2V0cy5nZXQoaW5kZXgpKSB7XG4gICAgICAgICAgbGV0IG1hdGNoZWQgPSB0aGlzLnNlcXVlbmNlTWF0Y2hJbmRpY2VzKDEsIGxpZ2F0dXJlLmNvbXBvbmVudHMpO1xuICAgICAgICAgIGlmICghbWF0Y2hlZCkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGV0IGN1ckdseXBoID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmN1cjtcblxuICAgICAgICAgIC8vIENvbmNhdGVuYXRlIGFsbCBvZiB0aGUgY2hhcmFjdGVycyB0aGUgbmV3IGxpZ2F0dXJlIHdpbGwgcmVwcmVzZW50XG4gICAgICAgICAgbGV0IGNoYXJhY3RlcnMgPSBjdXJHbHlwaC5jb2RlUG9pbnRzLnNsaWNlKCk7XG4gICAgICAgICAgZm9yIChsZXQgaW5kZXggb2YgbWF0Y2hlZCkge1xuICAgICAgICAgICAgY2hhcmFjdGVycy5wdXNoKC4uLnRoaXMuZ2x5cGhzW2luZGV4XS5jb2RlUG9pbnRzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBDcmVhdGUgdGhlIHJlcGxhY2VtZW50IGxpZ2F0dXJlIGdseXBoXG4gICAgICAgICAgbGV0IGxpZ2F0dXJlR2x5cGggPSBuZXcgR2x5cGhJbmZvKHRoaXMuZm9udCwgbGlnYXR1cmUuZ2x5cGgsIGNoYXJhY3RlcnMsIGN1ckdseXBoLmZlYXR1cmVzKTtcbiAgICAgICAgICBsaWdhdHVyZUdseXBoLnNoYXBlckluZm8gPSBjdXJHbHlwaC5zaGFwZXJJbmZvO1xuICAgICAgICAgIGxpZ2F0dXJlR2x5cGguaXNMaWdhdGVkID0gdHJ1ZTtcbiAgICAgICAgICBsaWdhdHVyZUdseXBoLnN1YnN0aXR1dGVkID0gdHJ1ZTtcblxuICAgICAgICAgIC8vIEZyb20gSGFyZmJ1eno6XG4gICAgICAgICAgLy8gLSBJZiBpdCAqaXMqIGEgbWFyayBsaWdhdHVyZSwgd2UgZG9uJ3QgYWxsb2NhdGUgYSBuZXcgbGlnYXR1cmUgaWQsIGFuZCBsZWF2ZVxuICAgICAgICAgIC8vICAgdGhlIGxpZ2F0dXJlIHRvIGtlZXAgaXRzIG9sZCBsaWdhdHVyZSBpZC4gIFRoaXMgd2lsbCBhbGxvdyBpdCB0byBhdHRhY2ggdG9cbiAgICAgICAgICAvLyAgIGEgYmFzZSBsaWdhdHVyZSBpbiBHUE9TLiAgRWcuIGlmIHRoZSBzZXF1ZW5jZSBpczogTEFNLExBTSxTSEFEREEsRkFUSEEsSEVILFxuICAgICAgICAgIC8vICAgYW5kIExBTSxMQU0sSEVIIGZvciBhIGxpZ2F0dXJlLCB0aGV5IHdpbGwgbGVhdmUgU0hBRERBIGFuZCBGQVRIQSB3aXRoIGFcbiAgICAgICAgICAvLyAgIGxpZ2F0dXJlIGlkIGFuZCBjb21wb25lbnQgdmFsdWUgb2YgMi4gIFRoZW4gaWYgU0hBRERBLEZBVEhBIGZvcm0gYSBsaWdhdHVyZVxuICAgICAgICAgIC8vICAgbGF0ZXIsIHdlIGRvbid0IHdhbnQgdGhlbSB0byBsb3NlIHRoZWlyIGxpZ2F0dXJlIGlkL2NvbXBvbmVudCwgb3RoZXJ3aXNlXG4gICAgICAgICAgLy8gICBHUE9TIHdpbGwgZmFpbCB0byBjb3JyZWN0bHkgcG9zaXRpb24gdGhlIG1hcmsgbGlnYXR1cmUgb24gdG9wIG9mIHRoZVxuICAgICAgICAgIC8vICAgTEFNLExBTSxIRUggbGlnYXR1cmUuIFNlZSBodHRwczovL2J1Z3ppbGxhLmdub21lLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njc2MzQzXG4gICAgICAgICAgLy9cbiAgICAgICAgICAvLyAtIElmIGEgbGlnYXR1cmUgaXMgZm9ybWVkIG9mIGNvbXBvbmVudHMgdGhhdCBzb21lIG9mIHdoaWNoIGFyZSBhbHNvIGxpZ2F0dXJlc1xuICAgICAgICAgIC8vICAgdGhlbXNlbHZlcywgYW5kIHRob3NlIGxpZ2F0dXJlIGNvbXBvbmVudHMgaGFkIG1hcmtzIGF0dGFjaGVkIHRvICp0aGVpcipcbiAgICAgICAgICAvLyAgIGNvbXBvbmVudHMsIHdlIGhhdmUgdG8gYXR0YWNoIHRoZSBtYXJrcyB0byB0aGUgbmV3IGxpZ2F0dXJlIGNvbXBvbmVudFxuICAgICAgICAgIC8vICAgcG9zaXRpb25zISAgTm93ICp0aGF0KidzIHRyaWNreSEgIEFuZCB0aGVzZSBtYXJrcyBtYXkgYmUgZm9sbG93aW5nIHRoZVxuICAgICAgICAgIC8vICAgbGFzdCBjb21wb25lbnQgb2YgdGhlIHdob2xlIHNlcXVlbmNlLCBzbyB3ZSBzaG91bGQgbG9vcCBmb3J3YXJkIGxvb2tpbmdcbiAgICAgICAgICAvLyAgIGZvciB0aGVtIGFuZCB1cGRhdGUgdGhlbS5cbiAgICAgICAgICAvL1xuICAgICAgICAgIC8vICAgRWcuIHRoZSBzZXF1ZW5jZSBpcyBMQU0sTEFNLFNIQUREQSxGQVRIQSxIRUgsIGFuZCB0aGUgZm9udCBmaXJzdCBmb3JtcyBhXG4gICAgICAgICAgLy8gICAnY2FsdCcgbGlnYXR1cmUgb2YgTEFNLEhFSCwgbGVhdmluZyB0aGUgU0hBRERBIGFuZCBGQVRIQSB3aXRoIGEgbGlnYXR1cmVcbiAgICAgICAgICAvLyAgIGlkIGFuZCBjb21wb25lbnQgPT0gMS4gIE5vdywgZHVyaW5nICdsaWdhJywgdGhlIExBTSBhbmQgdGhlIExBTS1IRUggbGlnYXR1cmVcbiAgICAgICAgICAvLyAgIGZvcm0gYSBMQU0tTEFNLUhFSCBsaWdhdHVyZS4gIFdlIG5lZWQgdG8gcmVhc3NpZ24gdGhlIFNIQUREQSBhbmQgRkFUSEEgdG9cbiAgICAgICAgICAvLyAgIHRoZSBuZXcgbGlnYXR1cmUgd2l0aCBhIGNvbXBvbmVudCB2YWx1ZSBvZiAyLlxuICAgICAgICAgIC8vXG4gICAgICAgICAgLy8gICBUaGlzIGluIGZhY3QgaGFwcGVuZWQgdG8gYSBmb250Li4uICBTZWUgaHR0cHM6Ly9idWd6aWxsYS5nbm9tZS5vcmcvc2hvd19idWcuY2dpP2lkPTQzNzYzM1xuICAgICAgICAgIGxldCBpc01hcmtMaWdhdHVyZSA9IGN1ckdseXBoLmlzTWFyaztcbiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1hdGNoZWQubGVuZ3RoICYmIGlzTWFya0xpZ2F0dXJlOyBpKyspIHtcbiAgICAgICAgICAgIGlzTWFya0xpZ2F0dXJlID0gdGhpcy5nbHlwaHNbbWF0Y2hlZFtpXV0uaXNNYXJrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpZ2F0dXJlR2x5cGgubGlnYXR1cmVJRCA9IGlzTWFya0xpZ2F0dXJlID8gbnVsbCA6IHRoaXMubGlnYXR1cmVJRCsrO1xuXG4gICAgICAgICAgbGV0IGxhc3RMaWdJRCA9IGN1ckdseXBoLmxpZ2F0dXJlSUQ7XG4gICAgICAgICAgbGV0IGxhc3ROdW1Db21wcyA9IGN1ckdseXBoLmNvZGVQb2ludHMubGVuZ3RoO1xuICAgICAgICAgIGxldCBjdXJDb21wcyA9IGxhc3ROdW1Db21wcztcbiAgICAgICAgICBsZXQgaWR4ID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4ICsgMTtcblxuICAgICAgICAgIC8vIFNldCBsaWdhdHVyZUlEIGFuZCBsaWdhdHVyZUNvbXBvbmVudCBvbiBnbHlwaHMgdGhhdCB3ZXJlIHNraXBwZWQgaW4gdGhlIG1hdGNoZWQgc2VxdWVuY2UuXG4gICAgICAgICAgLy8gVGhpcyBhbGxvd3MgR1BPUyB0byBhdHRhY2ggbWFya3MgdG8gdGhlIGNvcnJlY3QgbGlnYXR1cmUgY29tcG9uZW50cy5cbiAgICAgICAgICBmb3IgKGxldCBtYXRjaEluZGV4IG9mIG1hdGNoZWQpIHtcbiAgICAgICAgICAgIC8vIERvbid0IGFzc2lnbiBuZXcgbGlnYXR1cmUgY29tcG9uZW50cyBmb3IgbWFyayBsaWdhdHVyZXMgKHNlZSBhYm92ZSlcbiAgICAgICAgICAgIGlmIChpc01hcmtMaWdhdHVyZSkge1xuICAgICAgICAgICAgICBpZHggPSBtYXRjaEluZGV4O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgd2hpbGUgKGlkeCA8IG1hdGNoSW5kZXgpIHtcbiAgICAgICAgICAgICAgICB2YXIgbGlnYXR1cmVDb21wb25lbnQgPSBjdXJDb21wcyAtIGxhc3ROdW1Db21wcyArIE1hdGgubWluKHRoaXMuZ2x5cGhzW2lkeF0ubGlnYXR1cmVDb21wb25lbnQgfHwgMSwgbGFzdE51bUNvbXBzKTtcbiAgICAgICAgICAgICAgICB0aGlzLmdseXBoc1tpZHhdLmxpZ2F0dXJlSUQgPSBsaWdhdHVyZUdseXBoLmxpZ2F0dXJlSUQ7XG4gICAgICAgICAgICAgICAgdGhpcy5nbHlwaHNbaWR4XS5saWdhdHVyZUNvbXBvbmVudCA9IGxpZ2F0dXJlQ29tcG9uZW50O1xuICAgICAgICAgICAgICAgIGlkeCsrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxhc3RMaWdJRCA9IHRoaXMuZ2x5cGhzW2lkeF0ubGlnYXR1cmVJRDtcbiAgICAgICAgICAgIGxhc3ROdW1Db21wcyA9IHRoaXMuZ2x5cGhzW2lkeF0uY29kZVBvaW50cy5sZW5ndGg7XG4gICAgICAgICAgICBjdXJDb21wcyArPSBsYXN0TnVtQ29tcHM7XG4gICAgICAgICAgICBpZHgrKzsgLy8gc2tpcCBiYXNlIGdseXBoXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gQWRqdXN0IGxpZ2F0dXJlIGNvbXBvbmVudHMgZm9yIGFueSBtYXJrcyBmb2xsb3dpbmdcbiAgICAgICAgICBpZiAobGFzdExpZ0lEICYmICFpc01hcmtMaWdhdHVyZSkge1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IGlkeDsgaSA8IHRoaXMuZ2x5cGhzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgIGlmICh0aGlzLmdseXBoc1tpXS5saWdhdHVyZUlEID09PSBsYXN0TGlnSUQpIHtcbiAgICAgICAgICAgICAgICB2YXIgbGlnYXR1cmVDb21wb25lbnQgPSBjdXJDb21wcyAtIGxhc3ROdW1Db21wcyArIE1hdGgubWluKHRoaXMuZ2x5cGhzW2ldLmxpZ2F0dXJlQ29tcG9uZW50IHx8IDEsIGxhc3ROdW1Db21wcyk7XG4gICAgICAgICAgICAgICAgdGhpcy5nbHlwaHNbaV0ubGlnYXR1cmVDb21wb25lbnQgPSBsaWdhdHVyZUNvbXBvbmVudDtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIERlbGV0ZSB0aGUgbWF0Y2hlZCBnbHlwaHMsIGFuZCByZXBsYWNlIHRoZSBjdXJyZW50IGdseXBoIHdpdGggdGhlIGxpZ2F0dXJlIGdseXBoXG4gICAgICAgICAgZm9yIChsZXQgaSA9IG1hdGNoZWQubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHtcbiAgICAgICAgICAgIHRoaXMuZ2x5cGhzLnNwbGljZShtYXRjaGVkW2ldLCAxKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLmdseXBoc1t0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXhdID0gbGlnYXR1cmVHbHlwaDtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgY2FzZSA1OiAvLyBDb250ZXh0dWFsIFN1YnN0aXR1dGlvblxuICAgICAgICByZXR1cm4gdGhpcy5hcHBseUNvbnRleHQodGFibGUpO1xuXG4gICAgICBjYXNlIDY6IC8vIENoYWluaW5nIENvbnRleHR1YWwgU3Vic3RpdHV0aW9uXG4gICAgICAgIHJldHVybiB0aGlzLmFwcGx5Q2hhaW5pbmdDb250ZXh0KHRhYmxlKTtcblxuICAgICAgY2FzZSA3OiAvLyBFeHRlbnNpb24gU3Vic3RpdHV0aW9uXG4gICAgICAgIHJldHVybiB0aGlzLmFwcGx5TG9va3VwKHRhYmxlLmxvb2t1cFR5cGUsIHRhYmxlLmV4dGVuc2lvbik7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgR1NVQiBsb29rdXBUeXBlICR7bG9va3VwVHlwZX0gaXMgbm90IHN1cHBvcnRlZGApO1xuICAgIH1cbiAgfVxufVxuIiwgImltcG9ydCBPVFByb2Nlc3NvciBmcm9tICcuL09UUHJvY2Vzc29yJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgR1BPU1Byb2Nlc3NvciBleHRlbmRzIE9UUHJvY2Vzc29yIHtcbiAgYXBwbHlQb3NpdGlvblZhbHVlKHNlcXVlbmNlSW5kZXgsIHZhbHVlKSB7XG4gICAgbGV0IHBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbnNbdGhpcy5nbHlwaEl0ZXJhdG9yLnBlZWtJbmRleChzZXF1ZW5jZUluZGV4KV07XG4gICAgaWYgKHZhbHVlLnhBZHZhbmNlICE9IG51bGwpIHtcbiAgICAgIHBvc2l0aW9uLnhBZHZhbmNlICs9IHZhbHVlLnhBZHZhbmNlO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZS55QWR2YW5jZSAhPSBudWxsKSB7XG4gICAgICBwb3NpdGlvbi55QWR2YW5jZSArPSB2YWx1ZS55QWR2YW5jZTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUueFBsYWNlbWVudCAhPSBudWxsKSB7XG4gICAgICBwb3NpdGlvbi54T2Zmc2V0ICs9IHZhbHVlLnhQbGFjZW1lbnQ7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlLnlQbGFjZW1lbnQgIT0gbnVsbCkge1xuICAgICAgcG9zaXRpb24ueU9mZnNldCArPSB2YWx1ZS55UGxhY2VtZW50O1xuICAgIH1cblxuICAgIC8vIEFkanVzdG1lbnRzIGZvciBmb250IHZhcmlhdGlvbnNcbiAgICBsZXQgdmFyaWF0aW9uUHJvY2Vzc29yID0gdGhpcy5mb250Ll92YXJpYXRpb25Qcm9jZXNzb3I7XG4gICAgbGV0IHZhcmlhdGlvblN0b3JlID0gdGhpcy5mb250LkdERUYgJiYgdGhpcy5mb250LkdERUYuaXRlbVZhcmlhdGlvblN0b3JlO1xuICAgIGlmICh2YXJpYXRpb25Qcm9jZXNzb3IgJiYgdmFyaWF0aW9uU3RvcmUpIHtcbiAgICAgIGlmICh2YWx1ZS54UGxhRGV2aWNlKSB7XG4gICAgICAgIHBvc2l0aW9uLnhPZmZzZXQgKz0gdmFyaWF0aW9uUHJvY2Vzc29yLmdldERlbHRhKHZhcmlhdGlvblN0b3JlLCB2YWx1ZS54UGxhRGV2aWNlLmEsIHZhbHVlLnhQbGFEZXZpY2UuYik7XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWx1ZS55UGxhRGV2aWNlKSB7XG4gICAgICAgIHBvc2l0aW9uLnlPZmZzZXQgKz0gdmFyaWF0aW9uUHJvY2Vzc29yLmdldERlbHRhKHZhcmlhdGlvblN0b3JlLCB2YWx1ZS55UGxhRGV2aWNlLmEsIHZhbHVlLnlQbGFEZXZpY2UuYik7XG4gICAgICB9XG5cbiAgICAgIGlmICh2YWx1ZS54QWR2RGV2aWNlKSB7XG4gICAgICAgIHBvc2l0aW9uLnhBZHZhbmNlICs9IHZhcmlhdGlvblByb2Nlc3Nvci5nZXREZWx0YSh2YXJpYXRpb25TdG9yZSwgdmFsdWUueEFkdkRldmljZS5hLCB2YWx1ZS54QWR2RGV2aWNlLmIpO1xuICAgICAgfVxuXG4gICAgICBpZiAodmFsdWUueUFkdkRldmljZSkge1xuICAgICAgICBwb3NpdGlvbi55QWR2YW5jZSArPSB2YXJpYXRpb25Qcm9jZXNzb3IuZ2V0RGVsdGEodmFyaWF0aW9uU3RvcmUsIHZhbHVlLnlBZHZEZXZpY2UuYSwgdmFsdWUueUFkdkRldmljZS5iKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUT0RPOiBkZXZpY2UgdGFibGVzXG4gIH1cblxuICBhcHBseUxvb2t1cChsb29rdXBUeXBlLCB0YWJsZSkge1xuICAgIHN3aXRjaCAobG9va3VwVHlwZSkge1xuICAgICAgY2FzZSAxOiB7IC8vIFNpbmdsZSBwb3NpdGlvbmluZyB2YWx1ZVxuICAgICAgICBsZXQgaW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UpO1xuICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3dpdGNoICh0YWJsZS52ZXJzaW9uKSB7XG4gICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgdGhpcy5hcHBseVBvc2l0aW9uVmFsdWUoMCwgdGFibGUudmFsdWUpO1xuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgICB0aGlzLmFwcGx5UG9zaXRpb25WYWx1ZSgwLCB0YWJsZS52YWx1ZXMuZ2V0KGluZGV4KSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDI6IHsgLy8gUGFpciBBZGp1c3RtZW50IFBvc2l0aW9uaW5nXG4gICAgICAgIGxldCBuZXh0R2x5cGggPSB0aGlzLmdseXBoSXRlcmF0b3IucGVlaygpO1xuICAgICAgICBpZiAoIW5leHRHbHlwaCkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBpbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5jb3ZlcmFnZSk7XG4gICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBzd2l0Y2ggKHRhYmxlLnZlcnNpb24pIHtcbiAgICAgICAgICBjYXNlIDE6IC8vIEFkanVzdG1lbnRzIGZvciBnbHlwaCBwYWlyc1xuICAgICAgICAgICAgbGV0IHNldCA9IHRhYmxlLnBhaXJTZXRzLmdldChpbmRleCk7XG5cbiAgICAgICAgICAgIGZvciAobGV0IHBhaXIgb2Ygc2V0KSB7XG4gICAgICAgICAgICAgIGlmIChwYWlyLnNlY29uZEdseXBoID09PSBuZXh0R2x5cGguaWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFwcGx5UG9zaXRpb25WYWx1ZSgwLCBwYWlyLnZhbHVlMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5hcHBseVBvc2l0aW9uVmFsdWUoMSwgcGFpci52YWx1ZTIpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcblxuICAgICAgICAgIGNhc2UgMjogLy8gQ2xhc3MgcGFpciBhZGp1c3RtZW50XG4gICAgICAgICAgICBsZXQgY2xhc3MxID0gdGhpcy5nZXRDbGFzc0lEKHRoaXMuZ2x5cGhJdGVyYXRvci5jdXIuaWQsIHRhYmxlLmNsYXNzRGVmMSk7XG4gICAgICAgICAgICBsZXQgY2xhc3MyID0gdGhpcy5nZXRDbGFzc0lEKG5leHRHbHlwaC5pZCwgdGFibGUuY2xhc3NEZWYyKTtcbiAgICAgICAgICAgIGlmIChjbGFzczEgPT09IC0xIHx8IGNsYXNzMiA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgcGFpciA9IHRhYmxlLmNsYXNzUmVjb3Jkcy5nZXQoY2xhc3MxKS5nZXQoY2xhc3MyKTtcbiAgICAgICAgICAgIHRoaXMuYXBwbHlQb3NpdGlvblZhbHVlKDAsIHBhaXIudmFsdWUxKTtcbiAgICAgICAgICAgIHRoaXMuYXBwbHlQb3NpdGlvblZhbHVlKDEsIHBhaXIudmFsdWUyKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNhc2UgMzogeyAvLyBDdXJzaXZlIEF0dGFjaG1lbnQgUG9zaXRpb25pbmdcbiAgICAgICAgbGV0IG5leHRJbmRleCA9IHRoaXMuZ2x5cGhJdGVyYXRvci5wZWVrSW5kZXgoKTtcbiAgICAgICAgbGV0IG5leHRHbHlwaCA9IHRoaXMuZ2x5cGhzW25leHRJbmRleF07XG4gICAgICAgIGlmICghbmV4dEdseXBoKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGN1clJlY29yZCA9IHRhYmxlLmVudHJ5RXhpdFJlY29yZHNbdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmNvdmVyYWdlKV07XG4gICAgICAgIGlmICghY3VyUmVjb3JkIHx8ICFjdXJSZWNvcmQuZXhpdEFuY2hvcikge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBuZXh0UmVjb3JkID0gdGFibGUuZW50cnlFeGl0UmVjb3Jkc1t0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUuY292ZXJhZ2UsIG5leHRHbHlwaC5pZCldO1xuICAgICAgICBpZiAoIW5leHRSZWNvcmQgfHwgIW5leHRSZWNvcmQuZW50cnlBbmNob3IpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgZW50cnkgPSB0aGlzLmdldEFuY2hvcihuZXh0UmVjb3JkLmVudHJ5QW5jaG9yKTtcbiAgICAgICAgbGV0IGV4aXQgPSB0aGlzLmdldEFuY2hvcihjdXJSZWNvcmQuZXhpdEFuY2hvcik7XG5cbiAgICAgICAgbGV0IGN1ciA9IHRoaXMucG9zaXRpb25zW3RoaXMuZ2x5cGhJdGVyYXRvci5pbmRleF07XG4gICAgICAgIGxldCBuZXh0ID0gdGhpcy5wb3NpdGlvbnNbbmV4dEluZGV4XTtcbiAgICAgICAgbGV0IGQ7XG5cbiAgICAgICAgc3dpdGNoICh0aGlzLmRpcmVjdGlvbikge1xuICAgICAgICAgIGNhc2UgJ2x0cic6XG4gICAgICAgICAgICBjdXIueEFkdmFuY2UgPSBleGl0LnggKyBjdXIueE9mZnNldDtcblxuICAgICAgICAgICAgZCA9IGVudHJ5LnggKyBuZXh0LnhPZmZzZXQ7XG4gICAgICAgICAgICBuZXh0LnhBZHZhbmNlIC09IGQ7XG4gICAgICAgICAgICBuZXh0LnhPZmZzZXQgLT0gZDtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAncnRsJzpcbiAgICAgICAgICAgIGQgPSBleGl0LnggKyBjdXIueE9mZnNldDtcbiAgICAgICAgICAgIGN1ci54QWR2YW5jZSAtPSBkO1xuICAgICAgICAgICAgY3VyLnhPZmZzZXQgLT0gZDtcbiAgICAgICAgICAgIG5leHQueEFkdmFuY2UgPSBlbnRyeS54ICsgbmV4dC54T2Zmc2V0O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5nbHlwaEl0ZXJhdG9yLmZsYWdzLnJpZ2h0VG9MZWZ0KSB7XG4gICAgICAgICAgdGhpcy5nbHlwaEl0ZXJhdG9yLmN1ci5jdXJzaXZlQXR0YWNobWVudCA9IG5leHRJbmRleDtcbiAgICAgICAgICBjdXIueU9mZnNldCA9IGVudHJ5LnkgLSBleGl0Lnk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbmV4dEdseXBoLmN1cnNpdmVBdHRhY2htZW50ID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4O1xuICAgICAgICAgIGN1ci55T2Zmc2V0ID0gZXhpdC55IC0gZW50cnkueTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDQ6IHsgLy8gTWFyayB0byBiYXNlIHBvc2l0aW9uaW5nXG4gICAgICAgIGxldCBtYXJrSW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUubWFya0NvdmVyYWdlKTtcbiAgICAgICAgaWYgKG1hcmtJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBzZWFyY2ggYmFja3dhcmQgZm9yIGEgYmFzZSBnbHlwaFxuICAgICAgICBsZXQgYmFzZUdseXBoSW5kZXggPSB0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXg7XG4gICAgICAgIHdoaWxlICgtLWJhc2VHbHlwaEluZGV4ID49IDAgJiYgKHRoaXMuZ2x5cGhzW2Jhc2VHbHlwaEluZGV4XS5pc01hcmsgfHwgdGhpcy5nbHlwaHNbYmFzZUdseXBoSW5kZXhdLmxpZ2F0dXJlQ29tcG9uZW50ID4gMCkpO1xuXG4gICAgICAgIGlmIChiYXNlR2x5cGhJbmRleCA8IDApIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgYmFzZUluZGV4ID0gdGhpcy5jb3ZlcmFnZUluZGV4KHRhYmxlLmJhc2VDb3ZlcmFnZSwgdGhpcy5nbHlwaHNbYmFzZUdseXBoSW5kZXhdLmlkKTtcbiAgICAgICAgaWYgKGJhc2VJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWFya1JlY29yZCA9IHRhYmxlLm1hcmtBcnJheVttYXJrSW5kZXhdO1xuICAgICAgICBsZXQgYmFzZUFuY2hvciA9IHRhYmxlLmJhc2VBcnJheVtiYXNlSW5kZXhdW21hcmtSZWNvcmQuY2xhc3NdO1xuICAgICAgICB0aGlzLmFwcGx5QW5jaG9yKG1hcmtSZWNvcmQsIGJhc2VBbmNob3IsIGJhc2VHbHlwaEluZGV4KTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgNTogeyAvLyBNYXJrIHRvIGxpZ2F0dXJlIHBvc2l0aW9uaW5nXG4gICAgICAgIGxldCBtYXJrSW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUubWFya0NvdmVyYWdlKTtcbiAgICAgICAgaWYgKG1hcmtJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBzZWFyY2ggYmFja3dhcmQgZm9yIGEgYmFzZSBnbHlwaFxuICAgICAgICBsZXQgYmFzZUdseXBoSW5kZXggPSB0aGlzLmdseXBoSXRlcmF0b3IuaW5kZXg7XG4gICAgICAgIHdoaWxlICgtLWJhc2VHbHlwaEluZGV4ID49IDAgJiYgdGhpcy5nbHlwaHNbYmFzZUdseXBoSW5kZXhdLmlzTWFyayk7XG5cbiAgICAgICAgaWYgKGJhc2VHbHlwaEluZGV4IDwgMCkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBsaWdJbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5saWdhdHVyZUNvdmVyYWdlLCB0aGlzLmdseXBoc1tiYXNlR2x5cGhJbmRleF0uaWQpO1xuICAgICAgICBpZiAobGlnSW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxpZ0F0dGFjaCA9IHRhYmxlLmxpZ2F0dXJlQXJyYXlbbGlnSW5kZXhdO1xuICAgICAgICBsZXQgbWFya0dseXBoID0gdGhpcy5nbHlwaEl0ZXJhdG9yLmN1cjtcbiAgICAgICAgbGV0IGxpZ0dseXBoID0gdGhpcy5nbHlwaHNbYmFzZUdseXBoSW5kZXhdO1xuICAgICAgICBsZXQgY29tcEluZGV4ID0gbGlnR2x5cGgubGlnYXR1cmVJRCAmJiBsaWdHbHlwaC5saWdhdHVyZUlEID09PSBtYXJrR2x5cGgubGlnYXR1cmVJRCAmJiAobWFya0dseXBoLmxpZ2F0dXJlQ29tcG9uZW50ID4gMClcbiAgICAgICAgICA/IE1hdGgubWluKG1hcmtHbHlwaC5saWdhdHVyZUNvbXBvbmVudCwgbGlnR2x5cGguY29kZVBvaW50cy5sZW5ndGgpIC0gMVxuICAgICAgICAgIDogbGlnR2x5cGguY29kZVBvaW50cy5sZW5ndGggLSAxO1xuXG4gICAgICAgIGxldCBtYXJrUmVjb3JkID0gdGFibGUubWFya0FycmF5W21hcmtJbmRleF07XG4gICAgICAgIGxldCBiYXNlQW5jaG9yID0gbGlnQXR0YWNoW2NvbXBJbmRleF1bbWFya1JlY29yZC5jbGFzc107XG4gICAgICAgIHRoaXMuYXBwbHlBbmNob3IobWFya1JlY29yZCwgYmFzZUFuY2hvciwgYmFzZUdseXBoSW5kZXgpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgY2FzZSA2OiB7IC8vIE1hcmsgdG8gbWFyayBwb3NpdGlvbmluZ1xuICAgICAgICBsZXQgbWFyazFJbmRleCA9IHRoaXMuY292ZXJhZ2VJbmRleCh0YWJsZS5tYXJrMUNvdmVyYWdlKTtcbiAgICAgICAgaWYgKG1hcmsxSW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gZ2V0IHRoZSBwcmV2aW91cyBtYXJrIHRvIGF0dGFjaCB0b1xuICAgICAgICBsZXQgcHJldkluZGV4ID0gdGhpcy5nbHlwaEl0ZXJhdG9yLnBlZWtJbmRleCgtMSk7XG4gICAgICAgIGxldCBwcmV2ID0gdGhpcy5nbHlwaHNbcHJldkluZGV4XTtcbiAgICAgICAgaWYgKCFwcmV2IHx8ICFwcmV2LmlzTWFyaykge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBjdXIgPSB0aGlzLmdseXBoSXRlcmF0b3IuY3VyO1xuXG4gICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgbG9naWMgd2FzIGJvcnJvd2VkIGZyb20gSGFyZmJ1enpcbiAgICAgICAgbGV0IGdvb2QgPSBmYWxzZTtcbiAgICAgICAgaWYgKGN1ci5saWdhdHVyZUlEID09PSBwcmV2LmxpZ2F0dXJlSUQpIHtcbiAgICAgICAgICBpZiAoIWN1ci5saWdhdHVyZUlEKSB7IC8vIE1hcmtzIGJlbG9uZ2luZyB0byB0aGUgc2FtZSBiYXNlXG4gICAgICAgICAgICBnb29kID0gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGN1ci5saWdhdHVyZUNvbXBvbmVudCA9PT0gcHJldi5saWdhdHVyZUNvbXBvbmVudCkgeyAvLyBNYXJrcyBiZWxvbmdpbmcgdG8gdGhlIHNhbWUgbGlnYXR1cmUgY29tcG9uZW50XG4gICAgICAgICAgICBnb29kID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gSWYgbGlnYXR1cmUgaWRzIGRvbid0IG1hdGNoLCBpdCBtYXkgYmUgdGhlIGNhc2UgdGhhdCBvbmUgb2YgdGhlIG1hcmtzXG4gICAgICAgICAgLy8gaXRzZWxmIGlzIGEgbGlnYXR1cmUsIGluIHdoaWNoIGNhc2UgbWF0Y2guXG4gICAgICAgICAgaWYgKChjdXIubGlnYXR1cmVJRCAmJiAhY3VyLmxpZ2F0dXJlQ29tcG9uZW50KSB8fCAocHJldi5saWdhdHVyZUlEICYmICFwcmV2LmxpZ2F0dXJlQ29tcG9uZW50KSkge1xuICAgICAgICAgICAgZ29vZCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFnb29kKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1hcmsySW5kZXggPSB0aGlzLmNvdmVyYWdlSW5kZXgodGFibGUubWFyazJDb3ZlcmFnZSwgcHJldi5pZCk7XG4gICAgICAgIGlmIChtYXJrMkluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBtYXJrUmVjb3JkID0gdGFibGUubWFyazFBcnJheVttYXJrMUluZGV4XTtcbiAgICAgICAgbGV0IGJhc2VBbmNob3IgPSB0YWJsZS5tYXJrMkFycmF5W21hcmsySW5kZXhdW21hcmtSZWNvcmQuY2xhc3NdO1xuICAgICAgICB0aGlzLmFwcGx5QW5jaG9yKG1hcmtSZWNvcmQsIGJhc2VBbmNob3IsIHByZXZJbmRleCk7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICBjYXNlIDc6IC8vIENvbnRleHR1YWwgcG9zaXRpb25pbmdcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlDb250ZXh0KHRhYmxlKTtcblxuICAgICAgY2FzZSA4OiAvLyBDaGFpbmluZyBjb250ZXh0dWFsIHBvc2l0aW9uaW5nXG4gICAgICAgIHJldHVybiB0aGlzLmFwcGx5Q2hhaW5pbmdDb250ZXh0KHRhYmxlKTtcblxuICAgICAgY2FzZSA5OiAvLyBFeHRlbnNpb24gcG9zaXRpb25pbmdcbiAgICAgICAgcmV0dXJuIHRoaXMuYXBwbHlMb29rdXAodGFibGUubG9va3VwVHlwZSwgdGFibGUuZXh0ZW5zaW9uKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBHUE9TIHRhYmxlOiAke2xvb2t1cFR5cGV9YCk7XG4gICAgfVxuICB9XG5cbiAgYXBwbHlBbmNob3IobWFya1JlY29yZCwgYmFzZUFuY2hvciwgYmFzZUdseXBoSW5kZXgpIHtcbiAgICBsZXQgYmFzZUNvb3JkcyA9IHRoaXMuZ2V0QW5jaG9yKGJhc2VBbmNob3IpO1xuICAgIGxldCBtYXJrQ29vcmRzID0gdGhpcy5nZXRBbmNob3IobWFya1JlY29yZC5tYXJrQW5jaG9yKTtcblxuICAgIGxldCBiYXNlUG9zID0gdGhpcy5wb3NpdGlvbnNbYmFzZUdseXBoSW5kZXhdO1xuICAgIGxldCBtYXJrUG9zID0gdGhpcy5wb3NpdGlvbnNbdGhpcy5nbHlwaEl0ZXJhdG9yLmluZGV4XTtcblxuICAgIG1hcmtQb3MueE9mZnNldCA9IGJhc2VDb29yZHMueCAtIG1hcmtDb29yZHMueDtcbiAgICBtYXJrUG9zLnlPZmZzZXQgPSBiYXNlQ29vcmRzLnkgLSBtYXJrQ29vcmRzLnk7XG4gICAgdGhpcy5nbHlwaEl0ZXJhdG9yLmN1ci5tYXJrQXR0YWNobWVudCA9IGJhc2VHbHlwaEluZGV4O1xuICB9XG5cbiAgZ2V0QW5jaG9yKGFuY2hvcikge1xuICAgIC8vIFRPRE86IGNvbnRvdXIgcG9pbnQsIGRldmljZSB0YWJsZXNcbiAgICBsZXQgeCA9IGFuY2hvci54Q29vcmRpbmF0ZTtcbiAgICBsZXQgeSA9IGFuY2hvci55Q29vcmRpbmF0ZTtcblxuICAgIC8vIEFkanVzdG1lbnRzIGZvciBmb250IHZhcmlhdGlvbnNcbiAgICBsZXQgdmFyaWF0aW9uUHJvY2Vzc29yID0gdGhpcy5mb250Ll92YXJpYXRpb25Qcm9jZXNzb3I7XG4gICAgbGV0IHZhcmlhdGlvblN0b3JlID0gdGhpcy5mb250LkdERUYgJiYgdGhpcy5mb250LkdERUYuaXRlbVZhcmlhdGlvblN0b3JlO1xuICAgIGlmICh2YXJpYXRpb25Qcm9jZXNzb3IgJiYgdmFyaWF0aW9uU3RvcmUpIHtcbiAgICAgIGlmIChhbmNob3IueERldmljZVRhYmxlKSB7XG4gICAgICAgIHggKz0gdmFyaWF0aW9uUHJvY2Vzc29yLmdldERlbHRhKHZhcmlhdGlvblN0b3JlLCBhbmNob3IueERldmljZVRhYmxlLmEsIGFuY2hvci54RGV2aWNlVGFibGUuYik7XG4gICAgICB9XG5cbiAgICAgIGlmIChhbmNob3IueURldmljZVRhYmxlKSB7XG4gICAgICAgIHkgKz0gdmFyaWF0aW9uUHJvY2Vzc29yLmdldERlbHRhKHZhcmlhdGlvblN0b3JlLCBhbmNob3IueURldmljZVRhYmxlLmEsIGFuY2hvci55RGV2aWNlVGFibGUuYik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgeCwgeSB9O1xuICB9XG5cbiAgYXBwbHlGZWF0dXJlcyh1c2VyRmVhdHVyZXMsIGdseXBocywgYWR2YW5jZXMpIHtcbiAgICBzdXBlci5hcHBseUZlYXR1cmVzKHVzZXJGZWF0dXJlcywgZ2x5cGhzLCBhZHZhbmNlcyk7XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuZ2x5cGhzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB0aGlzLmZpeEN1cnNpdmVBdHRhY2htZW50KGkpO1xuICAgIH1cblxuICAgIHRoaXMuZml4TWFya0F0dGFjaG1lbnQoKTtcbiAgfVxuXG4gIGZpeEN1cnNpdmVBdHRhY2htZW50KGkpIHtcbiAgICBsZXQgZ2x5cGggPSB0aGlzLmdseXBoc1tpXTtcbiAgICBpZiAoZ2x5cGguY3Vyc2l2ZUF0dGFjaG1lbnQgIT0gbnVsbCkge1xuICAgICAgbGV0IGogPSBnbHlwaC5jdXJzaXZlQXR0YWNobWVudDtcblxuICAgICAgZ2x5cGguY3Vyc2l2ZUF0dGFjaG1lbnQgPSBudWxsO1xuICAgICAgdGhpcy5maXhDdXJzaXZlQXR0YWNobWVudChqKTtcblxuICAgICAgdGhpcy5wb3NpdGlvbnNbaV0ueU9mZnNldCArPSB0aGlzLnBvc2l0aW9uc1tqXS55T2Zmc2V0O1xuICAgIH1cbiAgfVxuXG4gIGZpeE1hcmtBdHRhY2htZW50KCkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5nbHlwaHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBnbHlwaCA9IHRoaXMuZ2x5cGhzW2ldO1xuICAgICAgaWYgKGdseXBoLm1hcmtBdHRhY2htZW50ICE9IG51bGwpIHtcbiAgICAgICAgbGV0IGogPSBnbHlwaC5tYXJrQXR0YWNobWVudDtcblxuICAgICAgICB0aGlzLnBvc2l0aW9uc1tpXS54T2Zmc2V0ICs9IHRoaXMucG9zaXRpb25zW2pdLnhPZmZzZXQ7XG4gICAgICAgIHRoaXMucG9zaXRpb25zW2ldLnlPZmZzZXQgKz0gdGhpcy5wb3NpdGlvbnNbal0ueU9mZnNldDtcblxuICAgICAgICBpZiAodGhpcy5kaXJlY3Rpb24gPT09ICdsdHInKSB7XG4gICAgICAgICAgZm9yIChsZXQgayA9IGo7IGsgPCBpOyBrKyspIHtcbiAgICAgICAgICAgIHRoaXMucG9zaXRpb25zW2ldLnhPZmZzZXQgLT0gdGhpcy5wb3NpdGlvbnNba10ueEFkdmFuY2U7XG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uc1tpXS55T2Zmc2V0IC09IHRoaXMucG9zaXRpb25zW2tdLnlBZHZhbmNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmb3IgKGxldCBrID0gaiArIDE7IGsgPCBpICsgMTsgaysrKSB7XG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uc1tpXS54T2Zmc2V0ICs9IHRoaXMucG9zaXRpb25zW2tdLnhBZHZhbmNlO1xuICAgICAgICAgICAgdGhpcy5wb3NpdGlvbnNbaV0ueU9mZnNldCArPSB0aGlzLnBvc2l0aW9uc1trXS55QWR2YW5jZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsICJpbXBvcnQgR2x5cGggZnJvbSAnLi9HbHlwaCc7XG5pbXBvcnQgUGF0aCBmcm9tICcuL1BhdGgnO1xuaW1wb3J0IEJCb3ggZnJvbSAnLi9CQm94JztcbmltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG4vLyBUaGUgaGVhZGVyIGZvciBib3RoIHNpbXBsZSBhbmQgY29tcG9zaXRlIGdseXBoc1xubGV0IEdseWZIZWFkZXIgPSBuZXcgci5TdHJ1Y3Qoe1xuICBudW1iZXJPZkNvbnRvdXJzOiByLmludDE2LCAvLyBpZiBuZWdhdGl2ZSwgdGhpcyBpcyBhIGNvbXBvc2l0ZSBnbHlwaFxuICB4TWluOiAgICAgICAgICAgICByLmludDE2LFxuICB5TWluOiAgICAgICAgICAgICByLmludDE2LFxuICB4TWF4OiAgICAgICAgICAgICByLmludDE2LFxuICB5TWF4OiAgICAgICAgICAgICByLmludDE2XG59KTtcblxuLy8gRmxhZ3MgZm9yIHNpbXBsZSBnbHlwaHNcbmNvbnN0IE9OX0NVUlZFICAgICAgICA9IDEgPDwgMDtcbmNvbnN0IFhfU0hPUlRfVkVDVE9SICA9IDEgPDwgMTtcbmNvbnN0IFlfU0hPUlRfVkVDVE9SICA9IDEgPDwgMjtcbmNvbnN0IFJFUEVBVCAgICAgICAgICA9IDEgPDwgMztcbmNvbnN0IFNBTUVfWCAgICAgICAgICA9IDEgPDwgNDtcbmNvbnN0IFNBTUVfWSAgICAgICAgICA9IDEgPDwgNTtcblxuLy8gRmxhZ3MgZm9yIGNvbXBvc2l0ZSBnbHlwaHNcbmNvbnN0IEFSR18xX0FORF8yX0FSRV9XT1JEUyAgICAgPSAxIDw8IDA7XG5jb25zdCBBUkdTX0FSRV9YWV9WQUxVRVMgICAgICAgID0gMSA8PCAxO1xuY29uc3QgUk9VTkRfWFlfVE9fR1JJRCAgICAgICAgICA9IDEgPDwgMjtcbmNvbnN0IFdFX0hBVkVfQV9TQ0FMRSAgICAgICAgICAgPSAxIDw8IDM7XG5jb25zdCBNT1JFX0NPTVBPTkVOVFMgICAgICAgICAgID0gMSA8PCA1O1xuY29uc3QgV0VfSEFWRV9BTl9YX0FORF9ZX1NDQUxFICA9IDEgPDwgNjtcbmNvbnN0IFdFX0hBVkVfQV9UV09fQllfVFdPICAgICAgPSAxIDw8IDc7XG5jb25zdCBXRV9IQVZFX0lOU1RSVUNUSU9OUyAgICAgID0gMSA8PCA4O1xuY29uc3QgVVNFX01ZX01FVFJJQ1MgICAgICAgICAgICA9IDEgPDwgOTtcbmNvbnN0IE9WRVJMQVBfQ09NUE9VTkQgICAgICAgICAgPSAxIDw8IDEwO1xuY29uc3QgU0NBTEVEX0NPTVBPTkVOVF9PRkZTRVQgICA9IDEgPDwgMTE7XG5jb25zdCBVTlNDQUxFRF9DT01QT05FTlRfT0ZGU0VUID0gMSA8PCAxMjtcblxuLy8gUmVwcmVzZW50cyBhIHBvaW50IGluIGEgc2ltcGxlIGdseXBoXG5leHBvcnQgY2xhc3MgUG9pbnQge1xuICBjb25zdHJ1Y3RvcihvbkN1cnZlLCBlbmRDb250b3VyLCB4ID0gMCwgeSA9IDApIHtcbiAgICB0aGlzLm9uQ3VydmUgPSBvbkN1cnZlO1xuICAgIHRoaXMuZW5kQ29udG91ciA9IGVuZENvbnRvdXI7XG4gICAgdGhpcy54ID0geDtcbiAgICB0aGlzLnkgPSB5O1xuICB9XG5cbiAgY29weSgpIHtcbiAgICByZXR1cm4gbmV3IFBvaW50KHRoaXMub25DdXJ2ZSwgdGhpcy5lbmRDb250b3VyLCB0aGlzLngsIHRoaXMueSk7XG4gIH1cbn1cblxuLy8gUmVwcmVzZW50cyBhIGNvbXBvbmVudCBpbiBhIGNvbXBvc2l0ZSBnbHlwaFxuY2xhc3MgQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IoZ2x5cGhJRCwgZHgsIGR5KSB7XG4gICAgdGhpcy5nbHlwaElEID0gZ2x5cGhJRDtcbiAgICB0aGlzLmR4ID0gZHg7XG4gICAgdGhpcy5keSA9IGR5O1xuICAgIHRoaXMucG9zID0gMDtcbiAgICB0aGlzLnNjYWxlWCA9IHRoaXMuc2NhbGVZID0gMTtcbiAgICB0aGlzLnNjYWxlMDEgPSB0aGlzLnNjYWxlMTAgPSAwO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIFRydWVUeXBlIGdseXBoLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUVEZHbHlwaCBleHRlbmRzIEdseXBoIHtcbiAgdHlwZSA9ICdUVEYnO1xuXG4gIC8vIFBhcnNlcyBqdXN0IHRoZSBnbHlwaCBoZWFkZXIgYW5kIHJldHVybnMgdGhlIGJvdW5kaW5nIGJveFxuICBfZ2V0Q0JveChpbnRlcm5hbCkge1xuICAgIC8vIFdlIG5lZWQgdG8gZGVjb2RlIHRoZSBnbHlwaCBpZiB2YXJpYXRpb24gcHJvY2Vzc2luZyBpcyByZXF1ZXN0ZWQsXG4gICAgLy8gc28gaXQncyBlYXNpZXIganVzdCB0byByZWNvbXB1dGUgdGhlIHBhdGgncyBjYm94IGFmdGVyIGRlY29kaW5nLlxuICAgIGlmICh0aGlzLl9mb250Ll92YXJpYXRpb25Qcm9jZXNzb3IgJiYgIWludGVybmFsKSB7XG4gICAgICByZXR1cm4gdGhpcy5wYXRoLmNib3g7XG4gICAgfVxuXG4gICAgbGV0IHN0cmVhbSA9IHRoaXMuX2ZvbnQuX2dldFRhYmxlU3RyZWFtKCdnbHlmJyk7XG4gICAgc3RyZWFtLnBvcyArPSB0aGlzLl9mb250LmxvY2Eub2Zmc2V0c1t0aGlzLmlkXTtcbiAgICBsZXQgZ2x5cGggPSBHbHlmSGVhZGVyLmRlY29kZShzdHJlYW0pO1xuXG4gICAgbGV0IGNib3ggPSBuZXcgQkJveChnbHlwaC54TWluLCBnbHlwaC55TWluLCBnbHlwaC54TWF4LCBnbHlwaC55TWF4KTtcbiAgICByZXR1cm4gT2JqZWN0LmZyZWV6ZShjYm94KTtcbiAgfVxuXG4gIC8vIFBhcnNlcyBhIHNpbmdsZSBnbHlwaCBjb29yZGluYXRlXG4gIF9wYXJzZUdseXBoQ29vcmQoc3RyZWFtLCBwcmV2LCBzaG9ydCwgc2FtZSkge1xuICAgIGlmIChzaG9ydCkge1xuICAgICAgdmFyIHZhbCA9IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgIGlmICghc2FtZSkge1xuICAgICAgICB2YWwgPSAtdmFsO1xuICAgICAgfVxuXG4gICAgICB2YWwgKz0gcHJldjtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHNhbWUpIHtcbiAgICAgICAgdmFyIHZhbCA9IHByZXY7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgdmFsID0gcHJldiArIHN0cmVhbS5yZWFkSW50MTZCRSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB2YWw7XG4gIH1cblxuICAvLyBEZWNvZGVzIHRoZSBnbHlwaCBkYXRhIGludG8gcG9pbnRzIGZvciBzaW1wbGUgZ2x5cGhzLFxuICAvLyBvciBjb21wb25lbnRzIGZvciBjb21wb3NpdGUgZ2x5cGhzXG4gIF9kZWNvZGUoKSB7XG4gICAgbGV0IGdseWZQb3MgPSB0aGlzLl9mb250LmxvY2Eub2Zmc2V0c1t0aGlzLmlkXTtcbiAgICBsZXQgbmV4dFBvcyA9IHRoaXMuX2ZvbnQubG9jYS5vZmZzZXRzW3RoaXMuaWQgKyAxXTtcblxuICAgIC8vIE5vdGhpbmcgdG8gZG8gaWYgdGhlcmUgaXMgbm8gZGF0YSBmb3IgdGhpcyBnbHlwaFxuICAgIGlmIChnbHlmUG9zID09PSBuZXh0UG9zKSB7IHJldHVybiBudWxsOyB9XG5cbiAgICBsZXQgc3RyZWFtID0gdGhpcy5fZm9udC5fZ2V0VGFibGVTdHJlYW0oJ2dseWYnKTtcbiAgICBzdHJlYW0ucG9zICs9IGdseWZQb3M7XG4gICAgbGV0IHN0YXJ0UG9zID0gc3RyZWFtLnBvcztcblxuICAgIGxldCBnbHlwaCA9IEdseWZIZWFkZXIuZGVjb2RlKHN0cmVhbSk7XG5cbiAgICBpZiAoZ2x5cGgubnVtYmVyT2ZDb250b3VycyA+IDApIHtcbiAgICAgIHRoaXMuX2RlY29kZVNpbXBsZShnbHlwaCwgc3RyZWFtKTtcblxuICAgIH0gZWxzZSBpZiAoZ2x5cGgubnVtYmVyT2ZDb250b3VycyA8IDApIHtcbiAgICAgIHRoaXMuX2RlY29kZUNvbXBvc2l0ZShnbHlwaCwgc3RyZWFtLCBzdGFydFBvcyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGdseXBoO1xuICB9XG5cbiAgX2RlY29kZVNpbXBsZShnbHlwaCwgc3RyZWFtKSB7XG4gICAgLy8gdGhpcyBpcyBhIHNpbXBsZSBnbHlwaFxuICAgIGdseXBoLnBvaW50cyA9IFtdO1xuXG4gICAgbGV0IGVuZFB0c09mQ29udG91cnMgPSBuZXcgci5BcnJheShyLnVpbnQxNiwgZ2x5cGgubnVtYmVyT2ZDb250b3VycykuZGVjb2RlKHN0cmVhbSk7XG4gICAgZ2x5cGguaW5zdHJ1Y3Rpb25zID0gbmV3IHIuQXJyYXkoci51aW50OCwgci51aW50MTYpLmRlY29kZShzdHJlYW0pO1xuXG4gICAgbGV0IGZsYWdzID0gW107XG4gICAgbGV0IG51bUNvb3JkcyA9IGVuZFB0c09mQ29udG91cnNbZW5kUHRzT2ZDb250b3Vycy5sZW5ndGggLSAxXSArIDE7XG5cbiAgICB3aGlsZSAoZmxhZ3MubGVuZ3RoIDwgbnVtQ29vcmRzKSB7XG4gICAgICB2YXIgZmxhZyA9IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgIGZsYWdzLnB1c2goZmxhZyk7XG5cbiAgICAgIC8vIGNoZWNrIGZvciByZXBlYXQgZmxhZ1xuICAgICAgaWYgKGZsYWcgJiBSRVBFQVQpIHtcbiAgICAgICAgbGV0IGNvdW50ID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGNvdW50OyBqKyspIHtcbiAgICAgICAgICBmbGFncy5wdXNoKGZsYWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBmbGFncy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIGZsYWcgPSBmbGFnc1tpXTtcbiAgICAgIGxldCBwb2ludCA9IG5ldyBQb2ludCghIShmbGFnICYgT05fQ1VSVkUpLCBlbmRQdHNPZkNvbnRvdXJzLmluZGV4T2YoaSkgPj0gMCwgMCwgMCk7XG4gICAgICBnbHlwaC5wb2ludHMucHVzaChwb2ludCk7XG4gICAgfVxuXG4gICAgbGV0IHB4ID0gMDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGZsYWdzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgZmxhZyA9IGZsYWdzW2ldO1xuICAgICAgZ2x5cGgucG9pbnRzW2ldLnggPSBweCA9IHRoaXMuX3BhcnNlR2x5cGhDb29yZChzdHJlYW0sIHB4LCBmbGFnICYgWF9TSE9SVF9WRUNUT1IsIGZsYWcgJiBTQU1FX1gpO1xuICAgIH1cblxuICAgIGxldCBweSA9IDA7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBmbGFncy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIGZsYWcgPSBmbGFnc1tpXTtcbiAgICAgIGdseXBoLnBvaW50c1tpXS55ID0gcHkgPSB0aGlzLl9wYXJzZUdseXBoQ29vcmQoc3RyZWFtLCBweSwgZmxhZyAmIFlfU0hPUlRfVkVDVE9SLCBmbGFnICYgU0FNRV9ZKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yKSB7XG4gICAgICBsZXQgcG9pbnRzID0gZ2x5cGgucG9pbnRzLnNsaWNlKCk7XG4gICAgICBwb2ludHMucHVzaCguLi50aGlzLl9nZXRQaGFudG9tUG9pbnRzKGdseXBoKSk7XG5cbiAgICAgIHRoaXMuX2ZvbnQuX3ZhcmlhdGlvblByb2Nlc3Nvci50cmFuc2Zvcm1Qb2ludHModGhpcy5pZCwgcG9pbnRzKTtcbiAgICAgIGdseXBoLnBoYW50b21Qb2ludHMgPSBwb2ludHMuc2xpY2UoLTQpO1xuICAgIH1cblxuICAgIHJldHVybjtcbiAgfVxuXG4gIF9kZWNvZGVDb21wb3NpdGUoZ2x5cGgsIHN0cmVhbSwgb2Zmc2V0ID0gMCkge1xuICAgIC8vIHRoaXMgaXMgYSBjb21wb3NpdGUgZ2x5cGhcbiAgICBnbHlwaC5jb21wb25lbnRzID0gW107XG4gICAgbGV0IGhhdmVJbnN0cnVjdGlvbnMgPSBmYWxzZTtcbiAgICBsZXQgZmxhZ3MgPSBNT1JFX0NPTVBPTkVOVFM7XG5cbiAgICB3aGlsZSAoZmxhZ3MgJiBNT1JFX0NPTVBPTkVOVFMpIHtcbiAgICAgIGZsYWdzID0gc3RyZWFtLnJlYWRVSW50MTZCRSgpO1xuICAgICAgbGV0IGdQb3MgPSBzdHJlYW0ucG9zIC0gb2Zmc2V0O1xuICAgICAgbGV0IGdseXBoSUQgPSBzdHJlYW0ucmVhZFVJbnQxNkJFKCk7XG4gICAgICBpZiAoIWhhdmVJbnN0cnVjdGlvbnMpIHtcbiAgICAgICAgaGF2ZUluc3RydWN0aW9ucyA9IChmbGFncyAmIFdFX0hBVkVfSU5TVFJVQ1RJT05TKSAhPT0gMDtcbiAgICAgIH1cblxuICAgICAgaWYgKGZsYWdzICYgQVJHXzFfQU5EXzJfQVJFX1dPUkRTKSB7XG4gICAgICAgIHZhciBkeCA9IHN0cmVhbS5yZWFkSW50MTZCRSgpO1xuICAgICAgICB2YXIgZHkgPSBzdHJlYW0ucmVhZEludDE2QkUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciBkeCA9IHN0cmVhbS5yZWFkSW50OCgpO1xuICAgICAgICB2YXIgZHkgPSBzdHJlYW0ucmVhZEludDgoKTtcbiAgICAgIH1cblxuICAgICAgdmFyIGNvbXBvbmVudCA9IG5ldyBDb21wb25lbnQoZ2x5cGhJRCwgZHgsIGR5KTtcbiAgICAgIGNvbXBvbmVudC5wb3MgPSBnUG9zO1xuXG4gICAgICBpZiAoZmxhZ3MgJiBXRV9IQVZFX0FfU0NBTEUpIHtcbiAgICAgICAgLy8gZml4ZWQgbnVtYmVyIHdpdGggMTQgYml0cyBvZiBmcmFjdGlvblxuICAgICAgICBjb21wb25lbnQuc2NhbGVYID1cbiAgICAgICAgY29tcG9uZW50LnNjYWxlWSA9ICgoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDI0KSB8IChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMTYpKSAvIDEwNzM3NDE4MjQ7XG5cbiAgICAgIH0gZWxzZSBpZiAoZmxhZ3MgJiBXRV9IQVZFX0FOX1hfQU5EX1lfU0NBTEUpIHtcbiAgICAgICAgY29tcG9uZW50LnNjYWxlWCA9ICgoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDI0KSB8IChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMTYpKSAvIDEwNzM3NDE4MjQ7XG4gICAgICAgIGNvbXBvbmVudC5zY2FsZVkgPSAoKHN0cmVhbS5yZWFkVUludDgoKSA8PCAyNCkgfCAoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDE2KSkgLyAxMDczNzQxODI0O1xuXG4gICAgICB9IGVsc2UgaWYgKGZsYWdzICYgV0VfSEFWRV9BX1RXT19CWV9UV08pIHtcbiAgICAgICAgY29tcG9uZW50LnNjYWxlWCAgPSAoKHN0cmVhbS5yZWFkVUludDgoKSA8PCAyNCkgfCAoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDE2KSkgLyAxMDczNzQxODI0O1xuICAgICAgICBjb21wb25lbnQuc2NhbGUwMSA9ICgoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDI0KSB8IChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMTYpKSAvIDEwNzM3NDE4MjQ7XG4gICAgICAgIGNvbXBvbmVudC5zY2FsZTEwID0gKChzdHJlYW0ucmVhZFVJbnQ4KCkgPDwgMjQpIHwgKHN0cmVhbS5yZWFkVUludDgoKSA8PCAxNikpIC8gMTA3Mzc0MTgyNDtcbiAgICAgICAgY29tcG9uZW50LnNjYWxlWSAgPSAoKHN0cmVhbS5yZWFkVUludDgoKSA8PCAyNCkgfCAoc3RyZWFtLnJlYWRVSW50OCgpIDw8IDE2KSkgLyAxMDczNzQxODI0O1xuICAgICAgfVxuXG4gICAgICBnbHlwaC5jb21wb25lbnRzLnB1c2goY29tcG9uZW50KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yKSB7XG4gICAgICBsZXQgcG9pbnRzID0gW107XG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGdseXBoLmNvbXBvbmVudHMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgdmFyIGNvbXBvbmVudCA9IGdseXBoLmNvbXBvbmVudHNbal07XG4gICAgICAgIHBvaW50cy5wdXNoKG5ldyBQb2ludCh0cnVlLCB0cnVlLCBjb21wb25lbnQuZHgsIGNvbXBvbmVudC5keSkpO1xuICAgICAgfVxuXG4gICAgICBwb2ludHMucHVzaCguLi50aGlzLl9nZXRQaGFudG9tUG9pbnRzKGdseXBoKSk7XG5cbiAgICAgIHRoaXMuX2ZvbnQuX3ZhcmlhdGlvblByb2Nlc3Nvci50cmFuc2Zvcm1Qb2ludHModGhpcy5pZCwgcG9pbnRzKTtcbiAgICAgIGdseXBoLnBoYW50b21Qb2ludHMgPSBwb2ludHMuc3BsaWNlKC00LCA0KTtcblxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IHBvaW50ID0gcG9pbnRzW2ldO1xuICAgICAgICBnbHlwaC5jb21wb25lbnRzW2ldLmR4ID0gcG9pbnQueDtcbiAgICAgICAgZ2x5cGguY29tcG9uZW50c1tpXS5keSA9IHBvaW50Lnk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGhhdmVJbnN0cnVjdGlvbnM7XG4gIH1cblxuICBfZ2V0UGhhbnRvbVBvaW50cyhnbHlwaCkge1xuICAgIGxldCBjYm94ID0gdGhpcy5fZ2V0Q0JveCh0cnVlKTtcbiAgICBpZiAodGhpcy5fbWV0cmljcyA9PSBudWxsKSB7XG4gICAgICB0aGlzLl9tZXRyaWNzID0gR2x5cGgucHJvdG90eXBlLl9nZXRNZXRyaWNzLmNhbGwodGhpcywgY2JveCk7XG4gICAgfVxuXG4gICAgbGV0IHsgYWR2YW5jZVdpZHRoLCBhZHZhbmNlSGVpZ2h0LCBsZWZ0QmVhcmluZywgdG9wQmVhcmluZyB9ID0gdGhpcy5fbWV0cmljcztcblxuICAgIHJldHVybiBbXG4gICAgICBuZXcgUG9pbnQoZmFsc2UsIHRydWUsIGdseXBoLnhNaW4gLSBsZWZ0QmVhcmluZywgMCksXG4gICAgICBuZXcgUG9pbnQoZmFsc2UsIHRydWUsIGdseXBoLnhNaW4gLSBsZWZ0QmVhcmluZyArIGFkdmFuY2VXaWR0aCwgMCksXG4gICAgICBuZXcgUG9pbnQoZmFsc2UsIHRydWUsIDAsIGdseXBoLnlNYXggKyB0b3BCZWFyaW5nKSxcbiAgICAgIG5ldyBQb2ludChmYWxzZSwgdHJ1ZSwgMCwgZ2x5cGgueU1heCArIHRvcEJlYXJpbmcgKyBhZHZhbmNlSGVpZ2h0KVxuICAgIF07XG4gIH1cblxuICAvLyBEZWNvZGVzIGZvbnQgZGF0YSwgcmVzb2x2ZXMgY29tcG9zaXRlIGdseXBocywgYW5kIHJldHVybnMgYW4gYXJyYXkgb2YgY29udG91cnNcbiAgX2dldENvbnRvdXJzKCkge1xuICAgIGxldCBnbHlwaCA9IHRoaXMuX2RlY29kZSgpO1xuICAgIGlmICghZ2x5cGgpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBsZXQgcG9pbnRzID0gW107XG5cbiAgICBpZiAoZ2x5cGgubnVtYmVyT2ZDb250b3VycyA8IDApIHtcbiAgICAgIC8vIHJlc29sdmUgY29tcG9zaXRlIGdseXBoc1xuICAgICAgZm9yIChsZXQgY29tcG9uZW50IG9mIGdseXBoLmNvbXBvbmVudHMpIHtcbiAgICAgICAgbGV0IGNvbnRvdXJzID0gdGhpcy5fZm9udC5nZXRHbHlwaChjb21wb25lbnQuZ2x5cGhJRCkuX2dldENvbnRvdXJzKCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29udG91cnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBsZXQgY29udG91ciA9IGNvbnRvdXJzW2ldO1xuICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgY29udG91ci5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgbGV0IHBvaW50ID0gY29udG91cltqXTtcbiAgICAgICAgICAgIGxldCB4ID0gcG9pbnQueCAqIGNvbXBvbmVudC5zY2FsZVggKyBwb2ludC55ICogY29tcG9uZW50LnNjYWxlMDEgKyBjb21wb25lbnQuZHg7XG4gICAgICAgICAgICBsZXQgeSA9IHBvaW50LnkgKiBjb21wb25lbnQuc2NhbGVZICsgcG9pbnQueCAqIGNvbXBvbmVudC5zY2FsZTEwICsgY29tcG9uZW50LmR5O1xuICAgICAgICAgICAgcG9pbnRzLnB1c2gobmV3IFBvaW50KHBvaW50Lm9uQ3VydmUsIHBvaW50LmVuZENvbnRvdXIsIHgsIHkpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcG9pbnRzID0gZ2x5cGgucG9pbnRzIHx8IFtdO1xuICAgIH1cblxuICAgIC8vIFJlY29tcHV0ZSBhbmQgY2FjaGUgbWV0cmljcyBpZiB3ZSBwZXJmb3JtZWQgdmFyaWF0aW9uIHByb2Nlc3NpbmcsIGFuZCBkb24ndCBoYXZlIGFuIEhWQVIgdGFibGVcbiAgICBpZiAoZ2x5cGgucGhhbnRvbVBvaW50cyAmJiAhdGhpcy5fZm9udC5kaXJlY3RvcnkudGFibGVzLkhWQVIpIHtcbiAgICAgIHRoaXMuX21ldHJpY3MuYWR2YW5jZVdpZHRoICA9IGdseXBoLnBoYW50b21Qb2ludHNbMV0ueCAtIGdseXBoLnBoYW50b21Qb2ludHNbMF0ueDtcbiAgICAgIHRoaXMuX21ldHJpY3MuYWR2YW5jZUhlaWdodCA9IGdseXBoLnBoYW50b21Qb2ludHNbM10ueSAtIGdseXBoLnBoYW50b21Qb2ludHNbMl0ueTtcbiAgICAgIHRoaXMuX21ldHJpY3MubGVmdEJlYXJpbmcgICA9IGdseXBoLnhNaW4gLSBnbHlwaC5waGFudG9tUG9pbnRzWzBdLng7XG4gICAgICB0aGlzLl9tZXRyaWNzLnRvcEJlYXJpbmcgICAgPSBnbHlwaC5waGFudG9tUG9pbnRzWzJdLnkgLSBnbHlwaC55TWF4O1xuICAgIH1cblxuICAgIGxldCBjb250b3VycyA9IFtdO1xuICAgIGxldCBjdXIgPSBbXTtcbiAgICBmb3IgKGxldCBrID0gMDsgayA8IHBvaW50cy5sZW5ndGg7IGsrKykge1xuICAgICAgdmFyIHBvaW50ID0gcG9pbnRzW2tdO1xuICAgICAgY3VyLnB1c2gocG9pbnQpO1xuICAgICAgaWYgKHBvaW50LmVuZENvbnRvdXIpIHtcbiAgICAgICAgY29udG91cnMucHVzaChjdXIpO1xuICAgICAgICBjdXIgPSBbXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29udG91cnM7XG4gIH1cblxuICBfZ2V0TWV0cmljcygpIHtcbiAgICBpZiAodGhpcy5fbWV0cmljcykge1xuICAgICAgcmV0dXJuIHRoaXMuX21ldHJpY3M7XG4gICAgfVxuXG4gICAgbGV0IGNib3ggPSB0aGlzLl9nZXRDQm94KHRydWUpO1xuICAgIHN1cGVyLl9nZXRNZXRyaWNzKGNib3gpO1xuXG4gICAgaWYgKHRoaXMuX2ZvbnQuX3ZhcmlhdGlvblByb2Nlc3NvciAmJiAhdGhpcy5fZm9udC5IVkFSKSB7XG4gICAgICAvLyBObyBIVkFSIHRhYmxlLCBkZWNvZGUgdGhlIGdseXBoLiBUaGlzIHRyaWdnZXJzIHJlY29tcHV0YXRpb24gb2YgbWV0cmljcy5cbiAgICAgIHRoaXMucGF0aDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fbWV0cmljcztcbiAgfVxuXG4gIC8vIENvbnZlcnRzIGNvbnRvdXJzIHRvIGEgUGF0aCBvYmplY3QgdGhhdCBjYW4gYmUgcmVuZGVyZWRcbiAgX2dldFBhdGgoKSB7XG4gICAgbGV0IGNvbnRvdXJzID0gdGhpcy5fZ2V0Q29udG91cnMoKTtcbiAgICBsZXQgcGF0aCA9IG5ldyBQYXRoO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb250b3Vycy5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGNvbnRvdXIgPSBjb250b3Vyc1tpXTtcbiAgICAgIGxldCBmaXJzdFB0ID0gY29udG91clswXTtcbiAgICAgIGxldCBsYXN0UHQgPSBjb250b3VyW2NvbnRvdXIubGVuZ3RoIC0gMV07XG4gICAgICBsZXQgc3RhcnQgPSAwO1xuXG4gICAgICBpZiAoZmlyc3RQdC5vbkN1cnZlKSB7XG4gICAgICAgIC8vIFRoZSBmaXJzdCBwb2ludCB3aWxsIGJlIGNvbnN1bWVkIGJ5IHRoZSBtb3ZlVG8gY29tbWFuZCwgc28gc2tpcCBpbiB0aGUgbG9vcFxuICAgICAgICB2YXIgY3VydmVQdCA9IG51bGw7XG4gICAgICAgIHN0YXJ0ID0gMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChsYXN0UHQub25DdXJ2ZSkge1xuICAgICAgICAgIC8vIFN0YXJ0IGF0IHRoZSBsYXN0IHBvaW50IGlmIHRoZSBmaXJzdCBwb2ludCBpcyBvZmYgY3VydmUgYW5kIHRoZSBsYXN0IHBvaW50IGlzIG9uIGN1cnZlXG4gICAgICAgICAgZmlyc3RQdCA9IGxhc3RQdDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBTdGFydCBhdCB0aGUgbWlkZGxlIGlmIGJvdGggdGhlIGZpcnN0IGFuZCBsYXN0IHBvaW50cyBhcmUgb2ZmIGN1cnZlXG4gICAgICAgICAgZmlyc3RQdCA9IG5ldyBQb2ludChmYWxzZSwgZmFsc2UsIChmaXJzdFB0LnggKyBsYXN0UHQueCkgLyAyLCAoZmlyc3RQdC55ICsgbGFzdFB0LnkpIC8gMik7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgY3VydmVQdCA9IGZpcnN0UHQ7XG4gICAgICB9XG5cbiAgICAgIHBhdGgubW92ZVRvKGZpcnN0UHQueCwgZmlyc3RQdC55KTtcblxuICAgICAgZm9yIChsZXQgaiA9IHN0YXJ0OyBqIDwgY29udG91ci5sZW5ndGg7IGorKykge1xuICAgICAgICBsZXQgcHQgPSBjb250b3VyW2pdO1xuICAgICAgICBsZXQgcHJldlB0ID0gaiA9PT0gMCA/IGZpcnN0UHQgOiBjb250b3VyW2ogLSAxXTtcblxuICAgICAgICBpZiAocHJldlB0Lm9uQ3VydmUgJiYgcHQub25DdXJ2ZSkge1xuICAgICAgICAgIHBhdGgubGluZVRvKHB0LngsIHB0LnkpO1xuXG4gICAgICAgIH0gZWxzZSBpZiAocHJldlB0Lm9uQ3VydmUgJiYgIXB0Lm9uQ3VydmUpIHtcbiAgICAgICAgICB2YXIgY3VydmVQdCA9IHB0O1xuXG4gICAgICAgIH0gZWxzZSBpZiAoIXByZXZQdC5vbkN1cnZlICYmICFwdC5vbkN1cnZlKSB7XG4gICAgICAgICAgbGV0IG1pZFggPSAocHJldlB0LnggKyBwdC54KSAvIDI7XG4gICAgICAgICAgbGV0IG1pZFkgPSAocHJldlB0LnkgKyBwdC55KSAvIDI7XG4gICAgICAgICAgcGF0aC5xdWFkcmF0aWNDdXJ2ZVRvKHByZXZQdC54LCBwcmV2UHQueSwgbWlkWCwgbWlkWSk7XG4gICAgICAgICAgdmFyIGN1cnZlUHQgPSBwdDtcblxuICAgICAgICB9IGVsc2UgaWYgKCFwcmV2UHQub25DdXJ2ZSAmJiBwdC5vbkN1cnZlKSB7XG4gICAgICAgICAgcGF0aC5xdWFkcmF0aWNDdXJ2ZVRvKGN1cnZlUHQueCwgY3VydmVQdC55LCBwdC54LCBwdC55KTtcbiAgICAgICAgICB2YXIgY3VydmVQdCA9IG51bGw7XG5cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbmtub3duIFRURiBwYXRoIHN0YXRlXCIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIENvbm5lY3QgdGhlIGZpcnN0IGFuZCBsYXN0IHBvaW50c1xuICAgICAgaWYgKGN1cnZlUHQpIHtcbiAgICAgICAgcGF0aC5xdWFkcmF0aWNDdXJ2ZVRvKGN1cnZlUHQueCwgY3VydmVQdC55LCBmaXJzdFB0LngsIGZpcnN0UHQueSk7XG4gICAgICB9XG5cbiAgICAgIHBhdGguY2xvc2VQYXRoKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cbn1cbiIsICJpbXBvcnQgeyBjYWNoZSB9IGZyb20gJy4uL2RlY29yYXRvcnMnO1xuaW1wb3J0IFBhdGggZnJvbSAnLi9QYXRoJztcbmltcG9ydCB7aXNNYXJrfSBmcm9tICd1bmljb2RlLXByb3BlcnRpZXMnO1xuaW1wb3J0IFN0YW5kYXJkTmFtZXMgZnJvbSAnLi9TdGFuZGFyZE5hbWVzJztcblxuLyoqXG4gKiBHbHlwaCBvYmplY3RzIHJlcHJlc2VudCBhIGdseXBoIGluIHRoZSBmb250LiBUaGV5IGhhdmUgdmFyaW91cyBwcm9wZXJ0aWVzIGZvciBhY2Nlc3NpbmcgbWV0cmljcyBhbmRcbiAqIHRoZSBhY3R1YWwgdmVjdG9yIHBhdGggdGhlIGdseXBoIHJlcHJlc2VudHMsIGFuZCBtZXRob2RzIGZvciByZW5kZXJpbmcgdGhlIGdseXBoIHRvIGEgZ3JhcGhpY3MgY29udGV4dC5cbiAqXG4gKiBZb3UgZG8gbm90IGNyZWF0ZSBnbHlwaCBvYmplY3RzIGRpcmVjdGx5LiBUaGV5IGFyZSBjcmVhdGVkIGJ5IHZhcmlvdXMgbWV0aG9kcyBvbiB0aGUgZm9udCBvYmplY3QuXG4gKiBUaGVyZSBhcmUgc2V2ZXJhbCBzdWJjbGFzc2VzIG9mIHRoZSBiYXNlIEdseXBoIGNsYXNzIGludGVybmFsbHkgdGhhdCBtYXkgYmUgcmV0dXJuZWQgZGVwZW5kaW5nXG4gKiBvbiB0aGUgZm9udCBmb3JtYXQsIGJ1dCB0aGV5IGFsbCBpbmhlcml0IGZyb20gdGhpcyBjbGFzcy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgR2x5cGgge1xuICBjb25zdHJ1Y3RvcihpZCwgY29kZVBvaW50cywgZm9udCkge1xuICAgIC8qKlxuICAgICAqIFRoZSBnbHlwaCBpZCBpbiB0aGUgZm9udFxuICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICovXG4gICAgdGhpcy5pZCA9IGlkO1xuXG4gICAgLyoqXG4gICAgICogQW4gYXJyYXkgb2YgdW5pY29kZSBjb2RlIHBvaW50cyB0aGF0IGFyZSByZXByZXNlbnRlZCBieSB0aGlzIGdseXBoLlxuICAgICAqIFRoZXJlIGNhbiBiZSBtdWx0aXBsZSBjb2RlIHBvaW50cyBpbiB0aGUgY2FzZSBvZiBsaWdhdHVyZXMgYW5kIG90aGVyIGdseXBoc1xuICAgICAqIHRoYXQgcmVwcmVzZW50IG11bHRpcGxlIHZpc3VhbCBjaGFyYWN0ZXJzLlxuICAgICAqIEB0eXBlIHtudW1iZXJbXX1cbiAgICAgKi9cbiAgICB0aGlzLmNvZGVQb2ludHMgPSBjb2RlUG9pbnRzO1xuICAgIHRoaXMuX2ZvbnQgPSBmb250O1xuXG4gICAgLy8gVE9ETzogZ2V0IHRoaXMgaW5mbyBmcm9tIEdERUYgaWYgYXZhaWxhYmxlXG4gICAgdGhpcy5pc01hcmsgPSB0aGlzLmNvZGVQb2ludHMubGVuZ3RoID4gMCAmJiB0aGlzLmNvZGVQb2ludHMuZXZlcnkoaXNNYXJrKTtcbiAgICB0aGlzLmlzTGlnYXR1cmUgPSB0aGlzLmNvZGVQb2ludHMubGVuZ3RoID4gMTtcbiAgfVxuXG4gIF9nZXRQYXRoKCkge1xuICAgIHJldHVybiBuZXcgUGF0aCgpO1xuICB9XG5cbiAgX2dldENCb3goKSB7XG4gICAgcmV0dXJuIHRoaXMucGF0aC5jYm94O1xuICB9XG5cbiAgX2dldEJCb3goKSB7XG4gICAgcmV0dXJuIHRoaXMucGF0aC5iYm94O1xuICB9XG5cbiAgX2dldFRhYmxlTWV0cmljcyh0YWJsZSkge1xuICAgIGlmICh0aGlzLmlkIDwgdGFibGUubWV0cmljcy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiB0YWJsZS5tZXRyaWNzLmdldCh0aGlzLmlkKTtcbiAgICB9XG5cbiAgICBsZXQgbWV0cmljID0gdGFibGUubWV0cmljcy5nZXQodGFibGUubWV0cmljcy5sZW5ndGggLSAxKTtcbiAgICBsZXQgcmVzID0ge1xuICAgICAgYWR2YW5jZTogbWV0cmljID8gbWV0cmljLmFkdmFuY2UgOiAwLFxuICAgICAgYmVhcmluZzogdGFibGUuYmVhcmluZ3MuZ2V0KHRoaXMuaWQgLSB0YWJsZS5tZXRyaWNzLmxlbmd0aCkgfHwgMFxuICAgIH07XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgX2dldE1ldHJpY3MoY2JveCkge1xuICAgIGlmICh0aGlzLl9tZXRyaWNzKSB7IHJldHVybiB0aGlzLl9tZXRyaWNzOyB9XG5cbiAgICBsZXQge2FkdmFuY2U6YWR2YW5jZVdpZHRoLCBiZWFyaW5nOmxlZnRCZWFyaW5nfSA9IHRoaXMuX2dldFRhYmxlTWV0cmljcyh0aGlzLl9mb250LmhtdHgpO1xuXG4gICAgLy8gRm9yIHZlcnRpY2FsIG1ldHJpY3MsIHVzZSB2bXR4IGlmIGF2YWlsYWJsZSwgb3IgZmFsbCBiYWNrIHRvIGdsb2JhbCBkYXRhIGZyb20gT1MvMiBvciBoaGVhXG4gICAgaWYgKHRoaXMuX2ZvbnQudm10eCkge1xuICAgICAgdmFyIHthZHZhbmNlOmFkdmFuY2VIZWlnaHQsIGJlYXJpbmc6dG9wQmVhcmluZ30gPSB0aGlzLl9nZXRUYWJsZU1ldHJpY3ModGhpcy5fZm9udC52bXR4KTtcblxuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgb3MyO1xuICAgICAgaWYgKHR5cGVvZiBjYm94ID09PSAndW5kZWZpbmVkJyB8fCBjYm94ID09PSBudWxsKSB7ICh7IGNib3ggfSA9IHRoaXMpOyB9XG5cbiAgICAgIGlmICgob3MyID0gdGhpcy5fZm9udFsnT1MvMiddKSAmJiBvczIudmVyc2lvbiA+IDApIHtcbiAgICAgICAgdmFyIGFkdmFuY2VIZWlnaHQgPSBNYXRoLmFicyhvczIudHlwb0FzY2VuZGVyIC0gb3MyLnR5cG9EZXNjZW5kZXIpO1xuICAgICAgICB2YXIgdG9wQmVhcmluZyA9IG9zMi50eXBvQXNjZW5kZXIgLSBjYm94Lm1heFk7XG5cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCB7IGhoZWEgfSA9IHRoaXMuX2ZvbnQ7XG4gICAgICAgIHZhciBhZHZhbmNlSGVpZ2h0ID0gTWF0aC5hYnMoaGhlYS5hc2NlbnQgLSBoaGVhLmRlc2NlbnQpO1xuICAgICAgICB2YXIgdG9wQmVhcmluZyA9IGhoZWEuYXNjZW50IC0gY2JveC5tYXhZO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLl9mb250Ll92YXJpYXRpb25Qcm9jZXNzb3IgJiYgdGhpcy5fZm9udC5IVkFSKSB7XG4gICAgICBhZHZhbmNlV2lkdGggKz0gdGhpcy5fZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yLmdldEFkdmFuY2VBZGp1c3RtZW50KHRoaXMuaWQsIHRoaXMuX2ZvbnQuSFZBUik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX21ldHJpY3MgPSB7IGFkdmFuY2VXaWR0aCwgYWR2YW5jZUhlaWdodCwgbGVmdEJlYXJpbmcsIHRvcEJlYXJpbmcgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZ2x5cGjigJlzIGNvbnRyb2wgYm94LlxuICAgKiBUaGlzIGlzIG9mdGVuIHRoZSBzYW1lIGFzIHRoZSBib3VuZGluZyBib3gsIGJ1dCBpcyBmYXN0ZXIgdG8gY29tcHV0ZS5cbiAgICogQmVjYXVzZSBvZiB0aGUgd2F5IGJlemllciBjdXJ2ZXMgYXJlIGRlZmluZWQsIHNvbWUgb2YgdGhlIGNvbnRyb2wgcG9pbnRzXG4gICAqIGNhbiBiZSBvdXRzaWRlIG9mIHRoZSBib3VuZGluZyBib3guIFdoZXJlIGBiYm94YCB0YWtlcyB0aGlzIGludG8gYWNjb3VudCxcbiAgICogYGNib3hgIGRvZXMgbm90LiBUaHVzLCBjYm94IGlzIGxlc3MgYWNjdXJhdGUsIGJ1dCBmYXN0ZXIgdG8gY29tcHV0ZS5cbiAgICogU2VlIFtoZXJlXShodHRwOi8vd3d3LmZyZWV0eXBlLm9yZy9mcmVldHlwZTIvZG9jcy9nbHlwaHMvZ2x5cGhzLTYuaHRtbCNzZWN0aW9uLTIpXG4gICAqIGZvciBhIG1vcmUgZGV0YWlsZWQgZGVzY3JpcHRpb24uXG4gICAqXG4gICAqIEB0eXBlIHtCQm94fVxuICAgKi9cbiAgQGNhY2hlXG4gIGdldCBjYm94KCkge1xuICAgIHJldHVybiB0aGlzLl9nZXRDQm94KCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGdseXBo4oCZcyBib3VuZGluZyBib3gsIGkuZS4gdGhlIHJlY3RhbmdsZSB0aGF0IGVuY2xvc2VzIHRoZVxuICAgKiBnbHlwaCBvdXRsaW5lIGFzIHRpZ2h0bHkgYXMgcG9zc2libGUuXG4gICAqIEB0eXBlIHtCQm94fVxuICAgKi9cbiAgQGNhY2hlXG4gIGdldCBiYm94KCkge1xuICAgIHJldHVybiB0aGlzLl9nZXRCQm94KCk7XG4gIH1cblxuICAvKipcbiAgICogQSB2ZWN0b3IgUGF0aCBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBnbHlwaCBvdXRsaW5lLlxuICAgKiBAdHlwZSB7UGF0aH1cbiAgICovXG4gIEBjYWNoZVxuICBnZXQgcGF0aCgpIHtcbiAgICAvLyBDYWNoZSB0aGUgcGF0aCBzbyB3ZSBvbmx5IGRlY29kZSBpdCBvbmNlXG4gICAgLy8gRGVjb2RpbmcgaXMgYWN0dWFsbHkgcGVyZm9ybWVkIGJ5IHN1YmNsYXNzZXNcbiAgICByZXR1cm4gdGhpcy5fZ2V0UGF0aCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBwYXRoIHNjYWxlZCB0byB0aGUgZ2l2ZW4gZm9udCBzaXplLlxuICAgKiBAcGFyYW0ge251bWJlcn0gc2l6ZVxuICAgKiBAcmV0dXJuIHtQYXRofVxuICAgKi9cbiAgZ2V0U2NhbGVkUGF0aChzaXplKSB7XG4gICAgbGV0IHNjYWxlID0gMSAvIHRoaXMuX2ZvbnQudW5pdHNQZXJFbSAqIHNpemU7XG4gICAgcmV0dXJuIHRoaXMucGF0aC5zY2FsZShzY2FsZSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGdseXBoJ3MgYWR2YW5jZSB3aWR0aC5cbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIEBjYWNoZVxuICBnZXQgYWR2YW5jZVdpZHRoKCkge1xuICAgIHJldHVybiB0aGlzLl9nZXRNZXRyaWNzKCkuYWR2YW5jZVdpZHRoO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBnbHlwaCdzIGFkdmFuY2UgaGVpZ2h0LlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKi9cbiAgQGNhY2hlXG4gIGdldCBhZHZhbmNlSGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLl9nZXRNZXRyaWNzKCkuYWR2YW5jZUhlaWdodDtcbiAgfVxuXG4gIGdldCBsaWdhdHVyZUNhcmV0UG9zaXRpb25zKCkge31cblxuICBfZ2V0TmFtZSgpIHtcbiAgICBsZXQgeyBwb3N0IH0gPSB0aGlzLl9mb250O1xuICAgIGlmICghcG9zdCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgc3dpdGNoIChwb3N0LnZlcnNpb24pIHtcbiAgICAgIGNhc2UgMTpcbiAgICAgICAgcmV0dXJuIFN0YW5kYXJkTmFtZXNbdGhpcy5pZF07XG5cbiAgICAgIGNhc2UgMjpcbiAgICAgICAgbGV0IGlkID0gcG9zdC5nbHlwaE5hbWVJbmRleFt0aGlzLmlkXTtcbiAgICAgICAgaWYgKGlkIDwgU3RhbmRhcmROYW1lcy5sZW5ndGgpIHtcbiAgICAgICAgICByZXR1cm4gU3RhbmRhcmROYW1lc1tpZF07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcG9zdC5uYW1lc1tpZCAtIFN0YW5kYXJkTmFtZXMubGVuZ3RoXTtcblxuICAgICAgY2FzZSAyLjU6XG4gICAgICAgIHJldHVybiBTdGFuZGFyZE5hbWVzW3RoaXMuaWQgKyBwb3N0Lm9mZnNldHNbdGhpcy5pZF1dO1xuXG4gICAgICBjYXNlIDQ6XG4gICAgICAgIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKHBvc3QubWFwW3RoaXMuaWRdKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVGhlIGdseXBoJ3MgbmFtZVxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgQGNhY2hlXG4gIGdldCBuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLl9nZXROYW1lKCk7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgZ2x5cGggdG8gdGhlIGdpdmVuIGdyYXBoaWNzIGNvbnRleHQsIGF0IHRoZSBzcGVjaWZpZWQgZm9udCBzaXplLlxuICAgKiBAcGFyYW0ge0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyZH0gY3R4XG4gICAqIEBwYXJhbSB7bnVtYmVyfSBzaXplXG4gICAqL1xuICByZW5kZXIoY3R4LCBzaXplKSB7XG4gICAgY3R4LnNhdmUoKTtcblxuICAgIGxldCBzY2FsZSA9IDEgLyB0aGlzLl9mb250LmhlYWQudW5pdHNQZXJFbSAqIHNpemU7XG4gICAgY3R4LnNjYWxlKHNjYWxlLCBzY2FsZSk7XG5cbiAgICBsZXQgZm4gPSB0aGlzLnBhdGgudG9GdW5jdGlvbigpO1xuICAgIGZuKGN0eCk7XG4gICAgY3R4LmZpbGwoKTtcblxuICAgIGN0eC5yZXN0b3JlKCk7XG4gIH1cbn1cbiIsICJpbXBvcnQgQkJveCBmcm9tICcuL0JCb3gnO1xuXG5jb25zdCBTVkdfQ09NTUFORFMgPSB7XG4gIG1vdmVUbzogJ00nLFxuICBsaW5lVG86ICdMJyxcbiAgcXVhZHJhdGljQ3VydmVUbzogJ1EnLFxuICBiZXppZXJDdXJ2ZVRvOiAnQycsXG4gIGNsb3NlUGF0aDogJ1onXG59O1xuXG4vKipcbiAqIFBhdGggb2JqZWN0cyBhcmUgcmV0dXJuZWQgYnkgZ2x5cGhzIGFuZCByZXByZXNlbnQgdGhlIGFjdHVhbFxuICogdmVjdG9yIG91dGxpbmVzIGZvciBlYWNoIGdseXBoIGluIHRoZSBmb250LiBQYXRocyBjYW4gYmUgY29udmVydGVkXG4gKiB0byBTVkcgcGF0aCBkYXRhIHN0cmluZ3MsIG9yIHRvIGZ1bmN0aW9ucyB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvXG4gKiByZW5kZXIgdGhlIHBhdGggdG8gYSBncmFwaGljcyBjb250ZXh0LlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXRoIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5jb21tYW5kcyA9IFtdO1xuICAgIHRoaXMuX2Jib3ggPSBudWxsO1xuICAgIHRoaXMuX2Nib3ggPSBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBpbGVzIHRoZSBwYXRoIHRvIGEgSmF2YVNjcmlwdCBmdW5jdGlvbiB0aGF0IGNhbiBiZSBhcHBsaWVkIHdpdGhcbiAgICogYSBncmFwaGljcyBjb250ZXh0IGluIG9yZGVyIHRvIHJlbmRlciB0aGUgcGF0aC5cbiAgICogQHJldHVybiB7c3RyaW5nfVxuICAgKi9cbiAgdG9GdW5jdGlvbigpIHtcbiAgICByZXR1cm4gY3R4ID0+IHtcbiAgICAgIHRoaXMuY29tbWFuZHMuZm9yRWFjaChjID0+IHtcbiAgICAgICAgcmV0dXJuIGN0eFtjLmNvbW1hbmRdLmFwcGx5KGN0eCwgYy5hcmdzKVxuICAgICAgfSlcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBwYXRoIHRvIGFuIFNWRyBwYXRoIGRhdGEgc3RyaW5nXG4gICAqIEByZXR1cm4ge3N0cmluZ31cbiAgICovXG4gIHRvU1ZHKCkge1xuICAgIGxldCBjbWRzID0gdGhpcy5jb21tYW5kcy5tYXAoYyA9PiB7XG4gICAgICBsZXQgYXJncyA9IGMuYXJncy5tYXAoYXJnID0+IE1hdGgucm91bmQoYXJnICogMTAwKSAvIDEwMCk7XG4gICAgICByZXR1cm4gYCR7U1ZHX0NPTU1BTkRTW2MuY29tbWFuZF19JHthcmdzLmpvaW4oJyAnKX1gO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGNtZHMuam9pbignJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgXCJjb250cm9sIGJveFwiIG9mIGEgcGF0aC5cbiAgICogVGhpcyBpcyBsaWtlIHRoZSBib3VuZGluZyBib3gsIGJ1dCBpdCBpbmNsdWRlcyBhbGwgcG9pbnRzIGluY2x1ZGluZ1xuICAgKiBjb250cm9sIHBvaW50cyBvZiBiZXppZXIgc2VnbWVudHMgYW5kIGlzIG11Y2ggZmFzdGVyIHRvIGNvbXB1dGUgdGhhblxuICAgKiB0aGUgcmVhbCBib3VuZGluZyBib3guXG4gICAqIEB0eXBlIHtCQm94fVxuICAgKi9cbiAgZ2V0IGNib3goKSB7XG4gICAgaWYgKCF0aGlzLl9jYm94KSB7XG4gICAgICBsZXQgY2JveCA9IG5ldyBCQm94O1xuICAgICAgZm9yIChsZXQgY29tbWFuZCBvZiB0aGlzLmNvbW1hbmRzKSB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY29tbWFuZC5hcmdzLmxlbmd0aDsgaSArPSAyKSB7XG4gICAgICAgICAgY2JveC5hZGRQb2ludChjb21tYW5kLmFyZ3NbaV0sIGNvbW1hbmQuYXJnc1tpICsgMV0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2Nib3ggPSBPYmplY3QuZnJlZXplKGNib3gpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9jYm94O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGV4YWN0IGJvdW5kaW5nIGJveCBvZiB0aGUgcGF0aCBieSBldmFsdWF0aW5nIGN1cnZlIHNlZ21lbnRzLlxuICAgKiBTbG93ZXIgdG8gY29tcHV0ZSB0aGFuIHRoZSBjb250cm9sIGJveCwgYnV0IG1vcmUgYWNjdXJhdGUuXG4gICAqIEB0eXBlIHtCQm94fVxuICAgKi9cbiAgZ2V0IGJib3goKSB7XG4gICAgaWYgKHRoaXMuX2Jib3gpIHtcbiAgICAgIHJldHVybiB0aGlzLl9iYm94O1xuICAgIH1cblxuICAgIGxldCBiYm94ID0gbmV3IEJCb3g7XG4gICAgbGV0IGN4ID0gMCwgY3kgPSAwO1xuXG4gICAgbGV0IGYgPSB0ID0+IChcbiAgICAgIE1hdGgucG93KDEgLSB0LCAzKSAqIHAwW2ldXG4gICAgICAgICsgMyAqIE1hdGgucG93KDEgLSB0LCAyKSAqIHQgKiBwMVtpXVxuICAgICAgICArIDMgKiAoMSAtIHQpICogTWF0aC5wb3codCwgMikgKiBwMltpXVxuICAgICAgICArIE1hdGgucG93KHQsIDMpICogcDNbaV1cbiAgICApO1xuXG4gICAgZm9yIChsZXQgYyBvZiB0aGlzLmNvbW1hbmRzKSB7XG4gICAgICBzd2l0Y2ggKGMuY29tbWFuZCkge1xuICAgICAgICBjYXNlICdtb3ZlVG8nOlxuICAgICAgICBjYXNlICdsaW5lVG8nOlxuICAgICAgICAgIGxldCBbeCwgeV0gPSBjLmFyZ3M7XG4gICAgICAgICAgYmJveC5hZGRQb2ludCh4LCB5KTtcbiAgICAgICAgICBjeCA9IHg7XG4gICAgICAgICAgY3kgPSB5O1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ3F1YWRyYXRpY0N1cnZlVG8nOlxuICAgICAgICBjYXNlICdiZXppZXJDdXJ2ZVRvJzpcbiAgICAgICAgICBpZiAoYy5jb21tYW5kID09PSAncXVhZHJhdGljQ3VydmVUbycpIHtcbiAgICAgICAgICAgIC8vIGh0dHA6Ly9mb250Zm9yZ2Uub3JnL2Jlemllci5odG1sXG4gICAgICAgICAgICB2YXIgW3FwMXgsIHFwMXksIHAzeCwgcDN5XSA9IGMuYXJncztcbiAgICAgICAgICAgIHZhciBjcDF4ID0gY3ggKyAyIC8gMyAqIChxcDF4IC0gY3gpOyAgICAvLyBDUDEgPSBRUDAgKyAyLzMgKiAoUVAxLVFQMClcbiAgICAgICAgICAgIHZhciBjcDF5ID0gY3kgKyAyIC8gMyAqIChxcDF5IC0gY3kpO1xuICAgICAgICAgICAgdmFyIGNwMnggPSBwM3ggKyAyIC8gMyAqIChxcDF4IC0gcDN4KTsgIC8vIENQMiA9IFFQMiArIDIvMyAqIChRUDEtUVAyKVxuICAgICAgICAgICAgdmFyIGNwMnkgPSBwM3kgKyAyIC8gMyAqIChxcDF5IC0gcDN5KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdmFyIFtjcDF4LCBjcDF5LCBjcDJ4LCBjcDJ5LCBwM3gsIHAzeV0gPSBjLmFyZ3M7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gaHR0cDovL2Jsb2cuaGFja2Vycy1jYWZlLm5ldC8yMDA5LzA2L2hvdy10by1jYWxjdWxhdGUtYmV6aWVyLWN1cnZlcy1ib3VuZGluZy5odG1sXG4gICAgICAgICAgYmJveC5hZGRQb2ludChwM3gsIHAzeSk7XG5cbiAgICAgICAgICB2YXIgcDAgPSBbY3gsIGN5XTtcbiAgICAgICAgICB2YXIgcDEgPSBbY3AxeCwgY3AxeV07XG4gICAgICAgICAgdmFyIHAyID0gW2NwMngsIGNwMnldO1xuICAgICAgICAgIHZhciBwMyA9IFtwM3gsIHAzeV07XG5cbiAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8PSAxOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBiID0gNiAqIHAwW2ldIC0gMTIgKiBwMVtpXSArIDYgKiBwMltpXTtcbiAgICAgICAgICAgIGxldCBhID0gLTMgKiBwMFtpXSArIDkgKiBwMVtpXSAtIDkgKiBwMltpXSArIDMgKiBwM1tpXTtcbiAgICAgICAgICAgIGMgPSAzICogcDFbaV0gLSAzICogcDBbaV07XG5cbiAgICAgICAgICAgIGlmIChhID09PSAwKSB7XG4gICAgICAgICAgICAgIGlmIChiID09PSAwKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBsZXQgdCA9IC1jIC8gYjtcbiAgICAgICAgICAgICAgaWYgKDAgPCB0ICYmIHQgPCAxKSB7XG4gICAgICAgICAgICAgICAgaWYgKGkgPT09IDApIHtcbiAgICAgICAgICAgICAgICAgIGJib3guYWRkUG9pbnQoZih0KSwgYmJveC5tYXhZKTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGkgPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgIGJib3guYWRkUG9pbnQoYmJveC5tYXhYLCBmKHQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGV0IGIyYWMgPSBNYXRoLnBvdyhiLCAyKSAtIDQgKiBjICogYTtcbiAgICAgICAgICAgIGlmIChiMmFjIDwgMCkge1xuICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGV0IHQxID0gKC1iICsgTWF0aC5zcXJ0KGIyYWMpKSAvICgyICogYSk7XG4gICAgICAgICAgICBpZiAoMCA8IHQxICYmIHQxIDwgMSkge1xuICAgICAgICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgICAgICAgIGJib3guYWRkUG9pbnQoZih0MSksIGJib3gubWF4WSk7XG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoaSA9PT0gMSkge1xuICAgICAgICAgICAgICAgIGJib3guYWRkUG9pbnQoYmJveC5tYXhYLCBmKHQxKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGV0IHQyID0gKC1iIC0gTWF0aC5zcXJ0KGIyYWMpKSAvICgyICogYSk7XG4gICAgICAgICAgICBpZiAoMCA8IHQyICYmIHQyIDwgMSkge1xuICAgICAgICAgICAgICBpZiAoaSA9PT0gMCkge1xuICAgICAgICAgICAgICAgIGJib3guYWRkUG9pbnQoZih0MiksIGJib3gubWF4WSk7XG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoaSA9PT0gMSkge1xuICAgICAgICAgICAgICAgIGJib3guYWRkUG9pbnQoYmJveC5tYXhYLCBmKHQyKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjeCA9IHAzeDtcbiAgICAgICAgICBjeSA9IHAzeTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fYmJveCA9IE9iamVjdC5mcmVlemUoYmJveCk7XG4gIH1cblxuICAvKipcbiAgICogQXBwbGllcyBhIG1hcHBpbmcgZnVuY3Rpb24gdG8gZWFjaCBwb2ludCBpbiB0aGUgcGF0aC5cbiAgICogQHBhcmFtIHtmdW5jdGlvbn0gZm5cbiAgICogQHJldHVybiB7UGF0aH1cbiAgICovXG4gIG1hcFBvaW50cyhmbikge1xuICAgIGxldCBwYXRoID0gbmV3IFBhdGg7XG5cbiAgICBmb3IgKGxldCBjIG9mIHRoaXMuY29tbWFuZHMpIHtcbiAgICAgIGxldCBhcmdzID0gW107XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGMuYXJncy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICBsZXQgW3gsIHldID0gZm4oYy5hcmdzW2ldLCBjLmFyZ3NbaSArIDFdKTtcbiAgICAgICAgYXJncy5wdXNoKHgsIHkpO1xuICAgICAgfVxuXG4gICAgICBwYXRoW2MuY29tbWFuZF0oLi4uYXJncyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgcGF0aCBieSB0aGUgZ2l2ZW4gbWF0cml4LlxuICAgKi9cbiAgdHJhbnNmb3JtKG0wLCBtMSwgbTIsIG0zLCBtNCwgbTUpIHtcbiAgICByZXR1cm4gdGhpcy5tYXBQb2ludHMoKHgsIHkpID0+IHtcbiAgICAgIGNvbnN0IHR4ID0gbTAgKiB4ICsgbTIgKiB5ICsgbTQ7XG4gICAgICBjb25zdCB0eSA9IG0xICogeCArIG0zICogeSArIG01O1xuICAgICAgcmV0dXJuIFt0eCwgdHldO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zbGF0ZXMgdGhlIHBhdGggYnkgdGhlIGdpdmVuIG9mZnNldC5cbiAgICovXG4gIHRyYW5zbGF0ZSh4LCB5KSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtKDEsIDAsIDAsIDEsIHgsIHkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJvdGF0ZXMgdGhlIHBhdGggYnkgdGhlIGdpdmVuIGFuZ2xlIChpbiByYWRpYW5zKS5cbiAgICovXG4gIHJvdGF0ZShhbmdsZSkge1xuICAgIGxldCBjb3MgPSBNYXRoLmNvcyhhbmdsZSk7XG4gICAgbGV0IHNpbiA9IE1hdGguc2luKGFuZ2xlKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0oY29zLCBzaW4sIC1zaW4sIGNvcywgMCwgMCk7XG4gIH1cblxuICAvKipcbiAgICogU2NhbGVzIHRoZSBwYXRoLlxuICAgKi9cbiAgc2NhbGUoc2NhbGVYLCBzY2FsZVkgPSBzY2FsZVgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0oc2NhbGVYLCAwLCAwLCBzY2FsZVksIDAsIDApO1xuICB9XG59XG5cbmZvciAobGV0IGNvbW1hbmQgb2YgWydtb3ZlVG8nLCAnbGluZVRvJywgJ3F1YWRyYXRpY0N1cnZlVG8nLCAnYmV6aWVyQ3VydmVUbycsICdjbG9zZVBhdGgnXSkge1xuICBQYXRoLnByb3RvdHlwZVtjb21tYW5kXSA9IGZ1bmN0aW9uKC4uLmFyZ3MpIHtcbiAgICB0aGlzLl9iYm94ID0gdGhpcy5fY2JveCA9IG51bGw7XG4gICAgdGhpcy5jb21tYW5kcy5wdXNoKHtcbiAgICAgIGNvbW1hbmQsXG4gICAgICBhcmdzXG4gICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfTtcbn1cbiIsICJleHBvcnQgZGVmYXVsdCBbXG4gICcubm90ZGVmJywgJy5udWxsJywgJ25vbm1hcmtpbmdyZXR1cm4nLCAnc3BhY2UnLCAnZXhjbGFtJywgJ3F1b3RlZGJsJywgJ251bWJlcnNpZ24nLCAnZG9sbGFyJywgJ3BlcmNlbnQnLFxuICAnYW1wZXJzYW5kJywgJ3F1b3Rlc2luZ2xlJywgJ3BhcmVubGVmdCcsICdwYXJlbnJpZ2h0JywgJ2FzdGVyaXNrJywgJ3BsdXMnLCAnY29tbWEnLCAnaHlwaGVuJywgJ3BlcmlvZCcsICdzbGFzaCcsXG4gICd6ZXJvJywgJ29uZScsICd0d28nLCAndGhyZWUnLCAnZm91cicsICdmaXZlJywgJ3NpeCcsICdzZXZlbicsICdlaWdodCcsICduaW5lJywgJ2NvbG9uJywgJ3NlbWljb2xvbicsICdsZXNzJyxcbiAgJ2VxdWFsJywgJ2dyZWF0ZXInLCAncXVlc3Rpb24nLCAnYXQnLCAnQScsICdCJywgJ0MnLCAnRCcsICdFJywgJ0YnLCAnRycsICdIJywgJ0knLCAnSicsICdLJywgJ0wnLCAnTScsICdOJywgJ08nLFxuICAnUCcsICdRJywgJ1InLCAnUycsICdUJywgJ1UnLCAnVicsICdXJywgJ1gnLCAnWScsICdaJywgJ2JyYWNrZXRsZWZ0JywgJ2JhY2tzbGFzaCcsICdicmFja2V0cmlnaHQnLFxuICAnYXNjaWljaXJjdW0nLCAndW5kZXJzY29yZScsICdncmF2ZScsICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicsICdnJywgJ2gnLCAnaScsICdqJywgJ2snLCAnbCcsICdtJywgJ24nLCAnbycsXG4gICdwJywgJ3EnLCAncicsICdzJywgJ3QnLCAndScsICd2JywgJ3cnLCAneCcsICd5JywgJ3onLCAnYnJhY2VsZWZ0JywgJ2JhcicsICdicmFjZXJpZ2h0JywgJ2FzY2lpdGlsZGUnLFxuICAnQWRpZXJlc2lzJywgJ0FyaW5nJywgJ0NjZWRpbGxhJywgJ0VhY3V0ZScsICdOdGlsZGUnLCAnT2RpZXJlc2lzJywgJ1VkaWVyZXNpcycsICdhYWN1dGUnLCAnYWdyYXZlJyxcbiAgJ2FjaXJjdW1mbGV4JywgJ2FkaWVyZXNpcycsICdhdGlsZGUnLCAnYXJpbmcnLCAnY2NlZGlsbGEnLCAnZWFjdXRlJywgJ2VncmF2ZScsICdlY2lyY3VtZmxleCcsICdlZGllcmVzaXMnLFxuICAnaWFjdXRlJywgJ2lncmF2ZScsICdpY2lyY3VtZmxleCcsICdpZGllcmVzaXMnLCAnbnRpbGRlJywgJ29hY3V0ZScsICdvZ3JhdmUnLCAnb2NpcmN1bWZsZXgnLCAnb2RpZXJlc2lzJyxcbiAgJ290aWxkZScsICd1YWN1dGUnLCAndWdyYXZlJywgJ3VjaXJjdW1mbGV4JywgJ3VkaWVyZXNpcycsICdkYWdnZXInLCAnZGVncmVlJywgJ2NlbnQnLCAnc3RlcmxpbmcnLCAnc2VjdGlvbicsXG4gICdidWxsZXQnLCAncGFyYWdyYXBoJywgJ2dlcm1hbmRibHMnLCAncmVnaXN0ZXJlZCcsICdjb3B5cmlnaHQnLCAndHJhZGVtYXJrJywgJ2FjdXRlJywgJ2RpZXJlc2lzJywgJ25vdGVxdWFsJyxcbiAgJ0FFJywgJ09zbGFzaCcsICdpbmZpbml0eScsICdwbHVzbWludXMnLCAnbGVzc2VxdWFsJywgJ2dyZWF0ZXJlcXVhbCcsICd5ZW4nLCAnbXUnLCAncGFydGlhbGRpZmYnLCAnc3VtbWF0aW9uJyxcbiAgJ3Byb2R1Y3QnLCAncGknLCAnaW50ZWdyYWwnLCAnb3JkZmVtaW5pbmUnLCAnb3JkbWFzY3VsaW5lJywgJ09tZWdhJywgJ2FlJywgJ29zbGFzaCcsICdxdWVzdGlvbmRvd24nLFxuICAnZXhjbGFtZG93bicsICdsb2dpY2Fsbm90JywgJ3JhZGljYWwnLCAnZmxvcmluJywgJ2FwcHJveGVxdWFsJywgJ0RlbHRhJywgJ2d1aWxsZW1vdGxlZnQnLCAnZ3VpbGxlbW90cmlnaHQnLFxuICAnZWxsaXBzaXMnLCAnbm9uYnJlYWtpbmdzcGFjZScsICdBZ3JhdmUnLCAnQXRpbGRlJywgJ090aWxkZScsICdPRScsICdvZScsICdlbmRhc2gnLCAnZW1kYXNoJywgJ3F1b3RlZGJsbGVmdCcsXG4gICdxdW90ZWRibHJpZ2h0JywgJ3F1b3RlbGVmdCcsICdxdW90ZXJpZ2h0JywgJ2RpdmlkZScsICdsb3plbmdlJywgJ3lkaWVyZXNpcycsICdZZGllcmVzaXMnLCAnZnJhY3Rpb24nLFxuICAnY3VycmVuY3knLCAnZ3VpbHNpbmdsbGVmdCcsICdndWlsc2luZ2xyaWdodCcsICdmaScsICdmbCcsICdkYWdnZXJkYmwnLCAncGVyaW9kY2VudGVyZWQnLCAncXVvdGVzaW5nbGJhc2UnLFxuICAncXVvdGVkYmxiYXNlJywgJ3BlcnRob3VzYW5kJywgJ0FjaXJjdW1mbGV4JywgJ0VjaXJjdW1mbGV4JywgJ0FhY3V0ZScsICdFZGllcmVzaXMnLCAnRWdyYXZlJywgJ0lhY3V0ZScsXG4gICdJY2lyY3VtZmxleCcsICdJZGllcmVzaXMnLCAnSWdyYXZlJywgJ09hY3V0ZScsICdPY2lyY3VtZmxleCcsICdhcHBsZScsICdPZ3JhdmUnLCAnVWFjdXRlJywgJ1VjaXJjdW1mbGV4JyxcbiAgJ1VncmF2ZScsICdkb3RsZXNzaScsICdjaXJjdW1mbGV4JywgJ3RpbGRlJywgJ21hY3JvbicsICdicmV2ZScsICdkb3RhY2NlbnQnLCAncmluZycsICdjZWRpbGxhJywgJ2h1bmdhcnVtbGF1dCcsXG4gICdvZ29uZWsnLCAnY2Fyb24nLCAnTHNsYXNoJywgJ2xzbGFzaCcsICdTY2Fyb24nLCAnc2Nhcm9uJywgJ1pjYXJvbicsICd6Y2Fyb24nLCAnYnJva2VuYmFyJywgJ0V0aCcsICdldGgnLFxuICAnWWFjdXRlJywgJ3lhY3V0ZScsICdUaG9ybicsICd0aG9ybicsICdtaW51cycsICdtdWx0aXBseScsICdvbmVzdXBlcmlvcicsICd0d29zdXBlcmlvcicsICd0aHJlZXN1cGVyaW9yJyxcbiAgJ29uZWhhbGYnLCAnb25lcXVhcnRlcicsICd0aHJlZXF1YXJ0ZXJzJywgJ2ZyYW5jJywgJ0dicmV2ZScsICdnYnJldmUnLCAnSWRvdGFjY2VudCcsICdTY2VkaWxsYScsICdzY2VkaWxsYScsXG4gICdDYWN1dGUnLCAnY2FjdXRlJywgJ0NjYXJvbicsICdjY2Fyb24nLCAnZGNyb2F0J1xuXTtcbiIsICJpbXBvcnQgR2x5cGggZnJvbSAnLi9HbHlwaCc7XG5pbXBvcnQgUGF0aCBmcm9tICcuL1BhdGgnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gT3BlblR5cGUgUG9zdFNjcmlwdCBnbHlwaCwgaW4gdGhlIENvbXBhY3QgRm9udCBGb3JtYXQuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENGRkdseXBoIGV4dGVuZHMgR2x5cGgge1xuICB0eXBlID0gJ0NGRic7XG5cbiAgX2dldE5hbWUoKSB7XG4gICAgaWYgKHRoaXMuX2ZvbnQuQ0ZGMikge1xuICAgICAgcmV0dXJuIHN1cGVyLl9nZXROYW1lKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX2ZvbnRbJ0NGRiAnXS5nZXRHbHlwaE5hbWUodGhpcy5pZCk7XG4gIH1cblxuICBiaWFzKHMpIHtcbiAgICBpZiAocy5sZW5ndGggPCAxMjQwKSB7XG4gICAgICByZXR1cm4gMTA3O1xuICAgIH0gZWxzZSBpZiAocy5sZW5ndGggPCAzMzkwMCkge1xuICAgICAgcmV0dXJuIDExMzE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAzMjc2ODtcbiAgICB9XG4gIH1cblxuICBfZ2V0UGF0aCgpIHtcbiAgICBsZXQgY2ZmID0gdGhpcy5fZm9udC5DRkYyIHx8IHRoaXMuX2ZvbnRbJ0NGRiAnXTtcbiAgICBsZXQgeyBzdHJlYW0gfSA9IGNmZjtcbiAgICBsZXQgc3RyID0gY2ZmLnRvcERpY3QuQ2hhclN0cmluZ3NbdGhpcy5pZF07XG4gICAgbGV0IGVuZCA9IHN0ci5vZmZzZXQgKyBzdHIubGVuZ3RoO1xuICAgIHN0cmVhbS5wb3MgPSBzdHIub2Zmc2V0O1xuXG4gICAgbGV0IHBhdGggPSBuZXcgUGF0aDtcbiAgICBsZXQgc3RhY2sgPSBbXTtcbiAgICBsZXQgdHJhbnMgPSBbXTtcblxuICAgIGxldCB3aWR0aCA9IG51bGw7XG4gICAgbGV0IG5TdGVtcyA9IDA7XG4gICAgbGV0IHggPSAwLCB5ID0gMDtcbiAgICBsZXQgdXNlZEdzdWJycztcbiAgICBsZXQgdXNlZFN1YnJzO1xuICAgIGxldCBvcGVuID0gZmFsc2U7XG5cbiAgICB0aGlzLl91c2VkR3N1YnJzID0gdXNlZEdzdWJycyA9IHt9O1xuICAgIHRoaXMuX3VzZWRTdWJycyA9IHVzZWRTdWJycyA9IHt9O1xuXG4gICAgbGV0IGdzdWJycyA9IGNmZi5nbG9iYWxTdWJySW5kZXggfHwgW107XG4gICAgbGV0IGdzdWJyc0JpYXMgPSB0aGlzLmJpYXMoZ3N1YnJzKTtcblxuICAgIGxldCBwcml2YXRlRGljdCA9IGNmZi5wcml2YXRlRGljdEZvckdseXBoKHRoaXMuaWQpIHx8IHt9O1xuICAgIGxldCBzdWJycyA9IHByaXZhdGVEaWN0LlN1YnJzIHx8IFtdO1xuICAgIGxldCBzdWJyc0JpYXMgPSB0aGlzLmJpYXMoc3VicnMpO1xuXG4gICAgbGV0IHZzdG9yZSA9IGNmZi50b3BEaWN0LnZzdG9yZSAmJiBjZmYudG9wRGljdC52c3RvcmUuaXRlbVZhcmlhdGlvblN0b3JlO1xuICAgIGxldCB2c2luZGV4ID0gcHJpdmF0ZURpY3QudnNpbmRleDtcbiAgICBsZXQgdmFyaWF0aW9uUHJvY2Vzc29yID0gdGhpcy5fZm9udC5fdmFyaWF0aW9uUHJvY2Vzc29yO1xuXG4gICAgZnVuY3Rpb24gY2hlY2tXaWR0aCgpIHtcbiAgICAgIGlmICh3aWR0aCA9PSBudWxsKSB7XG4gICAgICAgIHdpZHRoID0gc3RhY2suc2hpZnQoKSArIHByaXZhdGVEaWN0Lm5vbWluYWxXaWR0aFg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcGFyc2VTdGVtcygpIHtcbiAgICAgIGlmIChzdGFjay5sZW5ndGggJSAyICE9PSAwKSB7XG4gICAgICAgIGNoZWNrV2lkdGgoKTtcbiAgICAgIH1cblxuICAgICAgblN0ZW1zICs9IHN0YWNrLmxlbmd0aCA+PiAxO1xuICAgICAgcmV0dXJuIHN0YWNrLmxlbmd0aCA9IDA7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gbW92ZVRvKHgsIHkpIHtcbiAgICAgIGlmIChvcGVuKSB7XG4gICAgICAgIHBhdGguY2xvc2VQYXRoKCk7XG4gICAgICB9XG5cbiAgICAgIHBhdGgubW92ZVRvKHgsIHkpO1xuICAgICAgb3BlbiA9IHRydWU7XG4gICAgfVxuXG4gICAgbGV0IHBhcnNlID0gZnVuY3Rpb24gKCkge1xuICAgICAgd2hpbGUgKHN0cmVhbS5wb3MgPCBlbmQpIHtcbiAgICAgICAgbGV0IG9wID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgICBpZiAob3AgPCAzMikge1xuICAgICAgICAgIGxldCBpbmRleCwgc3ViciwgcGhhc2U7XG4gICAgICAgICAgbGV0IGMxeCwgYzF5LCBjMngsIGMyeSwgYzN4LCBjM3k7XG4gICAgICAgICAgbGV0IGM0eCwgYzR5LCBjNXgsIGM1eSwgYzZ4LCBjNnk7XG4gICAgICAgICAgbGV0IHB0cztcblxuICAgICAgICAgIHN3aXRjaCAob3ApIHtcbiAgICAgICAgICAgIGNhc2UgMTogIC8vIGhzdGVtXG4gICAgICAgICAgICBjYXNlIDM6ICAvLyB2c3RlbVxuICAgICAgICAgICAgY2FzZSAxODogLy8gaHN0ZW1obVxuICAgICAgICAgICAgY2FzZSAyMzogLy8gdnN0ZW1obVxuICAgICAgICAgICAgICBwYXJzZVN0ZW1zKCk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDQ6IC8vIHZtb3ZldG9cbiAgICAgICAgICAgICAgaWYgKHN0YWNrLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICBjaGVja1dpZHRoKCk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICB5ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgIG1vdmVUbyh4LCB5KTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgNTogLy8gcmxpbmV0b1xuICAgICAgICAgICAgICB3aGlsZSAoc3RhY2subGVuZ3RoID49IDIpIHtcbiAgICAgICAgICAgICAgICB4ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHBhdGgubGluZVRvKHgsIHkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDY6IC8vIGhsaW5ldG9cbiAgICAgICAgICAgIGNhc2UgNzogLy8gdmxpbmV0b1xuICAgICAgICAgICAgICBwaGFzZSA9IG9wID09PSA2O1xuICAgICAgICAgICAgICB3aGlsZSAoc3RhY2subGVuZ3RoID49IDEpIHtcbiAgICAgICAgICAgICAgICBpZiAocGhhc2UpIHtcbiAgICAgICAgICAgICAgICAgIHggKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHBhdGgubGluZVRvKHgsIHkpO1xuICAgICAgICAgICAgICAgIHBoYXNlID0gIXBoYXNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDg6IC8vIHJyY3VydmV0b1xuICAgICAgICAgICAgICB3aGlsZSAoc3RhY2subGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGMxeCA9IHggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIGMxeSA9IHkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIGMyeCA9IGMxeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzJ5ID0gYzF5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICB4ID0gYzJ4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICB5ID0gYzJ5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCB4LCB5KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAxMDogLy8gY2FsbHN1YnJcbiAgICAgICAgICAgICAgaW5kZXggPSBzdGFjay5wb3AoKSArIHN1YnJzQmlhcztcbiAgICAgICAgICAgICAgc3ViciA9IHN1YnJzW2luZGV4XTtcbiAgICAgICAgICAgICAgaWYgKHN1YnIpIHtcbiAgICAgICAgICAgICAgICB1c2VkU3VicnNbaW5kZXhdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBsZXQgcCA9IHN0cmVhbS5wb3M7XG4gICAgICAgICAgICAgICAgbGV0IGUgPSBlbmQ7XG4gICAgICAgICAgICAgICAgc3RyZWFtLnBvcyA9IHN1YnIub2Zmc2V0O1xuICAgICAgICAgICAgICAgIGVuZCA9IHN1YnIub2Zmc2V0ICsgc3Vici5sZW5ndGg7XG4gICAgICAgICAgICAgICAgcGFyc2UoKTtcbiAgICAgICAgICAgICAgICBzdHJlYW0ucG9zID0gcDtcbiAgICAgICAgICAgICAgICBlbmQgPSBlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDExOiAvLyByZXR1cm5cbiAgICAgICAgICAgICAgaWYgKGNmZi52ZXJzaW9uID49IDIpIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm47XG5cbiAgICAgICAgICAgIGNhc2UgMTQ6IC8vIGVuZGNoYXJcbiAgICAgICAgICAgICAgaWYgKGNmZi52ZXJzaW9uID49IDIpIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlmIChzdGFjay5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgY2hlY2tXaWR0aCgpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgaWYgKG9wZW4pIHtcbiAgICAgICAgICAgICAgICBwYXRoLmNsb3NlUGF0aCgpO1xuICAgICAgICAgICAgICAgIG9wZW4gPSBmYWxzZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAxNTogeyAvLyB2c2luZGV4XG4gICAgICAgICAgICAgIGlmIChjZmYudmVyc2lvbiA8IDIpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3ZzaW5kZXggb3BlcmF0b3Igbm90IHN1cHBvcnRlZCBpbiBDRkYgdjEnKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHZzaW5kZXggPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNhc2UgMTY6IHsgLy8gYmxlbmRcbiAgICAgICAgICAgICAgaWYgKGNmZi52ZXJzaW9uIDwgMikge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYmxlbmQgb3BlcmF0b3Igbm90IHN1cHBvcnRlZCBpbiBDRkYgdjEnKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlmICghdmFyaWF0aW9uUHJvY2Vzc29yKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdibGVuZCBvcGVyYXRvciBpbiBub24tdmFyaWF0aW9uIGZvbnQnKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGxldCBibGVuZFZlY3RvciA9IHZhcmlhdGlvblByb2Nlc3Nvci5nZXRCbGVuZFZlY3Rvcih2c3RvcmUsIHZzaW5kZXgpO1xuICAgICAgICAgICAgICBsZXQgbnVtQmxlbmRzID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgIGxldCBudW1PcGVyYW5kcyA9IG51bUJsZW5kcyAqIGJsZW5kVmVjdG9yLmxlbmd0aDtcbiAgICAgICAgICAgICAgbGV0IGRlbHRhID0gc3RhY2subGVuZ3RoIC0gbnVtT3BlcmFuZHM7XG4gICAgICAgICAgICAgIGxldCBiYXNlID0gZGVsdGEgLSBudW1CbGVuZHM7XG5cbiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1CbGVuZHM7IGkrKykge1xuICAgICAgICAgICAgICAgIGxldCBzdW0gPSBzdGFja1tiYXNlICsgaV07XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBibGVuZFZlY3Rvci5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgICAgc3VtICs9IGJsZW5kVmVjdG9yW2pdICogc3RhY2tbZGVsdGErK107XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3RhY2tbYmFzZSArIGldID0gc3VtO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgd2hpbGUgKG51bU9wZXJhbmRzLS0pIHtcbiAgICAgICAgICAgICAgICBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjYXNlIDE5OiAvLyBoaW50bWFza1xuICAgICAgICAgICAgY2FzZSAyMDogLy8gY250cm1hc2tcbiAgICAgICAgICAgICAgcGFyc2VTdGVtcygpO1xuICAgICAgICAgICAgICBzdHJlYW0ucG9zICs9IChuU3RlbXMgKyA3KSA+PiAzO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAyMTogLy8gcm1vdmV0b1xuICAgICAgICAgICAgICBpZiAoc3RhY2subGVuZ3RoID4gMikge1xuICAgICAgICAgICAgICAgIGNoZWNrV2lkdGgoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHggKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICBtb3ZlVG8oeCwgeSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDIyOiAvLyBobW92ZXRvXG4gICAgICAgICAgICAgIGlmIChzdGFjay5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICAgICAgY2hlY2tXaWR0aCgpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICBtb3ZlVG8oeCwgeSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlIDI0OiAvLyByY3VydmVsaW5lXG4gICAgICAgICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPj0gOCkge1xuICAgICAgICAgICAgICAgIGMxeCA9IHggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIGMxeSA9IHkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIGMyeCA9IGMxeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzJ5ID0gYzF5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICB4ID0gYzJ4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICB5ID0gYzJ5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCB4LCB5KTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHggKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICBwYXRoLmxpbmVUbyh4LCB5KTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMjU6IC8vIHJsaW5lY3VydmVcbiAgICAgICAgICAgICAgd2hpbGUgKHN0YWNrLmxlbmd0aCA+PSA4KSB7XG4gICAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHkgKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBwYXRoLmxpbmVUbyh4LCB5KTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGMxeCA9IHggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICBjMXkgPSB5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgYzJ4ID0gYzF4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgYzJ5ID0gYzF5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgeCA9IGMyeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgIHkgPSBjMnkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oYzF4LCBjMXksIGMyeCwgYzJ5LCB4LCB5KTtcbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMjY6IC8vIHZ2Y3VydmV0b1xuICAgICAgICAgICAgICBpZiAoc3RhY2subGVuZ3RoICUgMikge1xuICAgICAgICAgICAgICAgIHggKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPj0gNCkge1xuICAgICAgICAgICAgICAgIGMxeCA9IHg7XG4gICAgICAgICAgICAgICAgYzF5ID0geSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgYzJ4ID0gYzF4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHggPSBjMng7XG4gICAgICAgICAgICAgICAgeSA9IGMyeSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKGMxeCwgYzF5LCBjMngsIGMyeSwgeCwgeSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMjc6IC8vIGhoY3VydmV0b1xuICAgICAgICAgICAgICBpZiAoc3RhY2subGVuZ3RoICUgMikge1xuICAgICAgICAgICAgICAgIHkgKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPj0gNCkge1xuICAgICAgICAgICAgICAgIGMxeCA9IHggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIGMxeSA9IHk7XG4gICAgICAgICAgICAgICAgYzJ4ID0gYzF4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHggPSBjMnggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgIHkgPSBjMnk7XG4gICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKGMxeCwgYzF5LCBjMngsIGMyeSwgeCwgeSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMjg6IC8vIHNob3J0aW50XG4gICAgICAgICAgICAgIHN0YWNrLnB1c2goc3RyZWFtLnJlYWRJbnQxNkJFKCkpO1xuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAyOTogLy8gY2FsbGdzdWJyXG4gICAgICAgICAgICAgIGluZGV4ID0gc3RhY2sucG9wKCkgKyBnc3VicnNCaWFzO1xuICAgICAgICAgICAgICBzdWJyID0gZ3N1YnJzW2luZGV4XTtcbiAgICAgICAgICAgICAgaWYgKHN1YnIpIHtcbiAgICAgICAgICAgICAgICB1c2VkR3N1YnJzW2luZGV4XSA9IHRydWU7XG4gICAgICAgICAgICAgICAgbGV0IHAgPSBzdHJlYW0ucG9zO1xuICAgICAgICAgICAgICAgIGxldCBlID0gZW5kO1xuICAgICAgICAgICAgICAgIHN0cmVhbS5wb3MgPSBzdWJyLm9mZnNldDtcbiAgICAgICAgICAgICAgICBlbmQgPSBzdWJyLm9mZnNldCArIHN1YnIubGVuZ3RoO1xuICAgICAgICAgICAgICAgIHBhcnNlKCk7XG4gICAgICAgICAgICAgICAgc3RyZWFtLnBvcyA9IHA7XG4gICAgICAgICAgICAgICAgZW5kID0gZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAzMDogLy8gdmhjdXJ2ZXRvXG4gICAgICAgICAgICBjYXNlIDMxOiAvLyBodmN1cnZldG9cbiAgICAgICAgICAgICAgcGhhc2UgPSBvcCA9PT0gMzE7XG4gICAgICAgICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPj0gNCkge1xuICAgICAgICAgICAgICAgIGlmIChwaGFzZSkge1xuICAgICAgICAgICAgICAgICAgYzF4ID0geCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjMXkgPSB5O1xuICAgICAgICAgICAgICAgICAgYzJ4ID0gYzF4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMyeSA9IGMxeSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICB5ID0gYzJ5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIHggPSBjMnggKyAoc3RhY2subGVuZ3RoID09PSAxID8gc3RhY2suc2hpZnQoKSA6IDApO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBjMXggPSB4O1xuICAgICAgICAgICAgICAgICAgYzF5ID0geSArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjMnggPSBjMXggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzJ5ID0gYzF5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIHggPSBjMnggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgeSA9IGMyeSArIChzdGFjay5sZW5ndGggPT09IDEgPyBzdGFjay5zaGlmdCgpIDogMCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKGMxeCwgYzF5LCBjMngsIGMyeSwgeCwgeSk7XG4gICAgICAgICAgICAgICAgcGhhc2UgPSAhcGhhc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgMTI6XG4gICAgICAgICAgICAgIG9wID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuICAgICAgICAgICAgICBzd2l0Y2ggKG9wKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAzOiAvLyBhbmRcbiAgICAgICAgICAgICAgICAgIGxldCBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBsZXQgYiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChhICYmIGIgPyAxIDogMCk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgNDogLy8gb3JcbiAgICAgICAgICAgICAgICAgIGEgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGIgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnB1c2goYSB8fCBiID8gMSA6IDApO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDU6IC8vIG5vdFxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChhID8gMCA6IDEpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDk6IC8vIGFic1xuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChNYXRoLmFicyhhKSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMTA6IC8vIGFkZFxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgYiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChhICsgYik7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMTE6IC8vIHN1YlxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgYiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChhIC0gYik7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMTI6IC8vIGRpdlxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgYiA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChhIC8gYik7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMTQ6IC8vIG5lZ1xuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaCgtYSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMTU6IC8vIGVxXG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBiID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKGEgPT09IGIgPyAxIDogMCk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMTg6IC8vIGRyb3BcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDIwOiAvLyBwdXRcbiAgICAgICAgICAgICAgICAgIGxldCB2YWwgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGxldCBpZHggPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHRyYW5zW2lkeF0gPSB2YWw7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMjE6IC8vIGdldFxuICAgICAgICAgICAgICAgICAgaWR4ID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKHRyYW5zW2lkeF0gfHwgMCk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMjI6IC8vIGlmZWxzZVxuICAgICAgICAgICAgICAgICAgbGV0IHMxID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBsZXQgczIgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGxldCB2MSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgbGV0IHYyID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKHYxIDw9IHYyID8gczEgOiBzMik7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMjM6IC8vIHJhbmRvbVxuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChNYXRoLnJhbmRvbSgpKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAyNDogLy8gbXVsXG4gICAgICAgICAgICAgICAgICBhID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBiID0gc3RhY2sucG9wKCk7XG4gICAgICAgICAgICAgICAgICBzdGFjay5wdXNoKGEgKiBiKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAyNjogLy8gc3FydFxuICAgICAgICAgICAgICAgICAgYSA9IHN0YWNrLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChNYXRoLnNxcnQoYSkpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDI3OiAvLyBkdXBcbiAgICAgICAgICAgICAgICAgIGEgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnB1c2goYSwgYSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMjg6IC8vIGV4Y2hcbiAgICAgICAgICAgICAgICAgIGEgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGIgPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnB1c2goYiwgYSk7XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMjk6IC8vIGluZGV4XG4gICAgICAgICAgICAgICAgICBpZHggPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGlmIChpZHggPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGlkeCA9IDA7XG4gICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGlkeCA+IHN0YWNrLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgaWR4ID0gc3RhY2subGVuZ3RoIC0gMTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgc3RhY2sucHVzaChzdGFja1tpZHhdKTtcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAzMDogLy8gcm9sbFxuICAgICAgICAgICAgICAgICAgbGV0IG4gPSBzdGFjay5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIGxldCBqID0gc3RhY2sucG9wKCk7XG5cbiAgICAgICAgICAgICAgICAgIGlmIChqID49IDApIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGogPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBzdGFja1tuIC0gMV07XG4gICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IG4gLSAyOyBpID49IDA7IGktLSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhY2tbaSArIDFdID0gc3RhY2tbaV07XG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgc3RhY2tbMF0gPSB0O1xuICAgICAgICAgICAgICAgICAgICAgIGotLTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGogPCAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgdmFyIHQgPSBzdGFja1swXTtcbiAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSBuOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YWNrW2ldID0gc3RhY2tbaSArIDFdO1xuICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgIHN0YWNrW24gLSAxXSA9IHQ7XG4gICAgICAgICAgICAgICAgICAgICAgaisrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMzQ6IC8vIGhmbGV4XG4gICAgICAgICAgICAgICAgICBjMXggPSB4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMxeSA9IHk7XG4gICAgICAgICAgICAgICAgICBjMnggPSBjMXggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzJ5ID0gYzF5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMzeCA9IGMyeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjM3kgPSBjMnk7XG4gICAgICAgICAgICAgICAgICBjNHggPSBjM3ggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzR5ID0gYzN5O1xuICAgICAgICAgICAgICAgICAgYzV4ID0gYzR4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGM1eSA9IGM0eTtcbiAgICAgICAgICAgICAgICAgIGM2eCA9IGM1eCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjNnkgPSBjNXk7XG4gICAgICAgICAgICAgICAgICB4ID0gYzZ4O1xuICAgICAgICAgICAgICAgICAgeSA9IGM2eTtcblxuICAgICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKGMxeCwgYzF5LCBjMngsIGMyeSwgYzN4LCBjM3kpO1xuICAgICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKGM0eCwgYzR5LCBjNXgsIGM1eSwgYzZ4LCBjNnkpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDM1OiAvLyBmbGV4XG4gICAgICAgICAgICAgICAgICBwdHMgPSBbXTtcblxuICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gNTsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIHggKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgICAgeSArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgICBwdHMucHVzaCh4LCB5KTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKC4uLnB0cy5zbGljZSgwLCA2KSk7XG4gICAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oLi4ucHRzLnNsaWNlKDYpKTtcbiAgICAgICAgICAgICAgICAgIHN0YWNrLnNoaWZ0KCk7IC8vIGZkXG4gICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgMzY6IC8vIGhmbGV4MVxuICAgICAgICAgICAgICAgICAgYzF4ID0geCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjMXkgPSB5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMyeCA9IGMxeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjMnkgPSBjMXkgKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzN4ID0gYzJ4ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGMzeSA9IGMyeTtcbiAgICAgICAgICAgICAgICAgIGM0eCA9IGMzeCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjNHkgPSBjM3k7XG4gICAgICAgICAgICAgICAgICBjNXggPSBjNHggKyBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgYzV5ID0gYzR5ICsgc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIGM2eCA9IGM1eCArIHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICBjNnkgPSBjNXk7XG4gICAgICAgICAgICAgICAgICB4ID0gYzZ4O1xuICAgICAgICAgICAgICAgICAgeSA9IGM2eTtcblxuICAgICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKGMxeCwgYzF5LCBjMngsIGMyeSwgYzN4LCBjM3kpO1xuICAgICAgICAgICAgICAgICAgcGF0aC5iZXppZXJDdXJ2ZVRvKGM0eCwgYzR5LCBjNXgsIGM1eSwgYzZ4LCBjNnkpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDM3OiAvLyBmbGV4MVxuICAgICAgICAgICAgICAgICAgbGV0IHN0YXJ0eCA9IHg7XG4gICAgICAgICAgICAgICAgICBsZXQgc3RhcnR5ID0geTtcblxuICAgICAgICAgICAgICAgICAgcHRzID0gW107XG4gICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSA0OyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgeCArPSBzdGFjay5zaGlmdCgpO1xuICAgICAgICAgICAgICAgICAgICB5ICs9IHN0YWNrLnNoaWZ0KCk7XG4gICAgICAgICAgICAgICAgICAgIHB0cy5wdXNoKHgsIHkpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBpZiAoTWF0aC5hYnMoeCAtIHN0YXJ0eCkgPiBNYXRoLmFicyh5IC0gc3RhcnR5KSkgeyAvLyBob3Jpem9udGFsXG4gICAgICAgICAgICAgICAgICAgIHggKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgICAgeSA9IHN0YXJ0eTtcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHggPSBzdGFydHg7XG4gICAgICAgICAgICAgICAgICAgIHkgKz0gc3RhY2suc2hpZnQoKTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgcHRzLnB1c2goeCwgeSk7XG4gICAgICAgICAgICAgICAgICBwYXRoLmJlemllckN1cnZlVG8oLi4ucHRzLnNsaWNlKDAsIDYpKTtcbiAgICAgICAgICAgICAgICAgIHBhdGguYmV6aWVyQ3VydmVUbyguLi5wdHMuc2xpY2UoNikpO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIG9wOiAxMiAke29wfWApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gb3A6ICR7b3B9YCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH0gZWxzZSBpZiAob3AgPCAyNDcpIHtcbiAgICAgICAgICBzdGFjay5wdXNoKG9wIC0gMTM5KTtcbiAgICAgICAgfSBlbHNlIGlmIChvcCA8IDI1MSkge1xuICAgICAgICAgIHZhciBiMSA9IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgICAgICBzdGFjay5wdXNoKChvcCAtIDI0NykgKiAyNTYgKyBiMSArIDEwOCk7XG4gICAgICAgIH0gZWxzZSBpZiAob3AgPCAyNTUpIHtcbiAgICAgICAgICB2YXIgYjEgPSBzdHJlYW0ucmVhZFVJbnQ4KCk7XG4gICAgICAgICAgc3RhY2sucHVzaCgtKG9wIC0gMjUxKSAqIDI1NiAtIGIxIC0gMTA4KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzdGFjay5wdXNoKHN0cmVhbS5yZWFkSW50MzJCRSgpIC8gNjU1MzYpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIHBhcnNlKCk7XG5cbiAgICBpZiAob3Blbikge1xuICAgICAgcGF0aC5jbG9zZVBhdGgoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGF0aDtcbiAgfVxufVxuIiwgImltcG9ydCBUVEZHbHlwaCBmcm9tICcuL1RURkdseXBoJztcbmltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5sZXQgU0JJWEltYWdlID0gbmV3IHIuU3RydWN0KHtcbiAgb3JpZ2luWDogci51aW50MTYsXG4gIG9yaWdpblk6IHIudWludDE2LFxuICB0eXBlOiBuZXcgci5TdHJpbmcoNCksXG4gIGRhdGE6IG5ldyByLkJ1ZmZlcih0ID0+IHQucGFyZW50LmJ1ZmxlbiAtIHQuX2N1cnJlbnRPZmZzZXQpXG59KTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgY29sb3IgKGUuZy4gZW1vamkpIGdseXBoIGluIEFwcGxlJ3MgU0JJWCBmb3JtYXQuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNCSVhHbHlwaCBleHRlbmRzIFRURkdseXBoIHtcbiAgdHlwZSA9ICdTQklYJztcblxuICAvKipcbiAgICogUmV0dXJucyBhbiBvYmplY3QgcmVwcmVzZW50aW5nIGEgZ2x5cGggaW1hZ2UgYXQgdGhlIGdpdmVuIHBvaW50IHNpemUuXG4gICAqIFRoZSBvYmplY3QgaGFzIGEgZGF0YSBwcm9wZXJ0eSB3aXRoIGEgQnVmZmVyIGNvbnRhaW5pbmcgdGhlIGFjdHVhbCBpbWFnZSBkYXRhLFxuICAgKiBhbG9uZyB3aXRoIHRoZSBpbWFnZSB0eXBlLCBhbmQgb3JpZ2luLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gc2l6ZVxuICAgKiBAcmV0dXJuIHtvYmplY3R9XG4gICAqL1xuICBnZXRJbWFnZUZvclNpemUoc2l6ZSkge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fZm9udC5zYml4LmltYWdlVGFibGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgdGFibGUgPSB0aGlzLl9mb250LnNiaXguaW1hZ2VUYWJsZXNbaV07XG4gICAgICBpZiAodGFibGUucHBlbSA+PSBzaXplKSB7IGJyZWFrOyB9XG4gICAgfVxuXG4gICAgbGV0IG9mZnNldHMgPSB0YWJsZS5pbWFnZU9mZnNldHM7XG4gICAgbGV0IHN0YXJ0ID0gb2Zmc2V0c1t0aGlzLmlkXTtcbiAgICBsZXQgZW5kID0gb2Zmc2V0c1t0aGlzLmlkICsgMV07XG5cbiAgICBpZiAoc3RhcnQgPT09IGVuZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgdGhpcy5fZm9udC5zdHJlYW0ucG9zID0gc3RhcnQ7XG4gICAgcmV0dXJuIFNCSVhJbWFnZS5kZWNvZGUodGhpcy5fZm9udC5zdHJlYW0sIHtidWZsZW46IGVuZCAtIHN0YXJ0fSk7XG4gIH1cblxuICByZW5kZXIoY3R4LCBzaXplKSB7XG4gICAgbGV0IGltZyA9IHRoaXMuZ2V0SW1hZ2VGb3JTaXplKHNpemUpO1xuICAgIGlmIChpbWcgIT0gbnVsbCkge1xuICAgICAgbGV0IHNjYWxlID0gc2l6ZSAvIHRoaXMuX2ZvbnQudW5pdHNQZXJFbTtcbiAgICAgIGN0eC5pbWFnZShpbWcuZGF0YSwge2hlaWdodDogc2l6ZSwgeDogaW1nLm9yaWdpblgsIHk6ICh0aGlzLmJib3gubWluWSAtIGltZy5vcmlnaW5ZKSAqIHNjYWxlfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2ZvbnQuc2JpeC5mbGFncy5yZW5kZXJPdXRsaW5lcykge1xuICAgICAgc3VwZXIucmVuZGVyKGN0eCwgc2l6ZSk7XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IEdseXBoIGZyb20gJy4vR2x5cGgnO1xuaW1wb3J0IEJCb3ggZnJvbSAnLi9CQm94JztcblxuY2xhc3MgQ09MUkxheWVyIHtcbiAgY29uc3RydWN0b3IoZ2x5cGgsIGNvbG9yKSB7XG4gICAgdGhpcy5nbHlwaCA9IGdseXBoO1xuICAgIHRoaXMuY29sb3IgPSBjb2xvcjtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb2xvciAoZS5nLiBlbW9qaSkgZ2x5cGggaW4gTWljcm9zb2Z0J3MgQ09MUiBmb3JtYXQuXG4gKiBFYWNoIGdseXBoIGluIHRoaXMgZm9ybWF0IGNvbnRhaW4gYSBsaXN0IG9mIGNvbG9yZWQgbGF5ZXJzLCBlYWNoXG4gKiBvZiB3aGljaCAgaXMgYW5vdGhlciB2ZWN0b3IgZ2x5cGguXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENPTFJHbHlwaCBleHRlbmRzIEdseXBoIHtcbiAgdHlwZSA9ICdDT0xSJztcblxuICBfZ2V0QkJveCgpIHtcbiAgICBsZXQgYmJveCA9IG5ldyBCQm94O1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5sYXllcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGxldCBsYXllciA9IHRoaXMubGF5ZXJzW2ldO1xuICAgICAgbGV0IGIgPSBsYXllci5nbHlwaC5iYm94O1xuICAgICAgYmJveC5hZGRQb2ludChiLm1pblgsIGIubWluWSk7XG4gICAgICBiYm94LmFkZFBvaW50KGIubWF4WCwgYi5tYXhZKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYmJveDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIGFycmF5IG9mIG9iamVjdHMgY29udGFpbmluZyB0aGUgZ2x5cGggYW5kIGNvbG9yIGZvclxuICAgKiBlYWNoIGxheWVyIGluIHRoZSBjb21wb3NpdGUgY29sb3IgZ2x5cGguXG4gICAqIEB0eXBlIHtvYmplY3RbXX1cbiAgICovXG4gIGdldCBsYXllcnMoKSB7XG4gICAgbGV0IGNwYWwgPSB0aGlzLl9mb250LkNQQUw7XG4gICAgbGV0IGNvbHIgPSB0aGlzLl9mb250LkNPTFI7XG4gICAgbGV0IGxvdyA9IDA7XG4gICAgbGV0IGhpZ2ggPSBjb2xyLmJhc2VHbHlwaFJlY29yZC5sZW5ndGggLSAxO1xuXG4gICAgd2hpbGUgKGxvdyA8PSBoaWdoKSB7XG4gICAgICBsZXQgbWlkID0gKGxvdyArIGhpZ2gpID4+IDE7XG4gICAgICB2YXIgcmVjID0gY29sci5iYXNlR2x5cGhSZWNvcmRbbWlkXTtcblxuICAgICAgaWYgKHRoaXMuaWQgPCByZWMuZ2lkKSB7XG4gICAgICAgIGhpZ2ggPSBtaWQgLSAxO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLmlkID4gcmVjLmdpZCkge1xuICAgICAgICBsb3cgPSBtaWQgKyAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIGJhc2VMYXllciA9IHJlYztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gaWYgYmFzZSBnbHlwaCBub3QgZm91bmQgaW4gQ09MUiB0YWJsZSxcbiAgICAvLyBkZWZhdWx0IHRvIG5vcm1hbCBnbHlwaCBmcm9tIGdseWYgb3IgQ0ZGXG4gICAgaWYgKGJhc2VMYXllciA9PSBudWxsKSB7XG4gICAgICB2YXIgZyA9IHRoaXMuX2ZvbnQuX2dldEJhc2VHbHlwaCh0aGlzLmlkKTtcbiAgICAgIHZhciBjb2xvciA9IHtcbiAgICAgICAgcmVkOiAwLFxuICAgICAgICBncmVlbjogMCxcbiAgICAgICAgYmx1ZTogMCxcbiAgICAgICAgYWxwaGE6IDI1NVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIFtuZXcgQ09MUkxheWVyKGcsIGNvbG9yKV07XG4gICAgfVxuXG4gICAgLy8gb3RoZXJ3aXNlLCByZXR1cm4gYW4gYXJyYXkgb2YgYWxsIHRoZSBsYXllcnNcbiAgICBsZXQgbGF5ZXJzID0gW107XG4gICAgZm9yIChsZXQgaSA9IGJhc2VMYXllci5maXJzdExheWVySW5kZXg7IGkgPCBiYXNlTGF5ZXIuZmlyc3RMYXllckluZGV4ICsgYmFzZUxheWVyLm51bUxheWVyczsgaSsrKSB7XG4gICAgICB2YXIgcmVjID0gY29sci5sYXllclJlY29yZHNbaV07XG4gICAgICB2YXIgY29sb3IgPSBjcGFsLmNvbG9yUmVjb3Jkc1tyZWMucGFsZXR0ZUluZGV4XTtcbiAgICAgIHZhciBnID0gdGhpcy5fZm9udC5fZ2V0QmFzZUdseXBoKHJlYy5naWQpO1xuICAgICAgbGF5ZXJzLnB1c2gobmV3IENPTFJMYXllcihnLCBjb2xvcikpO1xuICAgIH1cblxuICAgIHJldHVybiBsYXllcnM7XG4gIH1cblxuICByZW5kZXIoY3R4LCBzaXplKSB7XG4gICAgZm9yIChsZXQge2dseXBoLCBjb2xvcn0gb2YgdGhpcy5sYXllcnMpIHtcbiAgICAgIGN0eC5maWxsQ29sb3IoW2NvbG9yLnJlZCwgY29sb3IuZ3JlZW4sIGNvbG9yLmJsdWVdLCBjb2xvci5hbHBoYSAvIDI1NSAqIDEwMCk7XG4gICAgICBnbHlwaC5yZW5kZXIoY3R4LCBzaXplKTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH1cbn1cbiIsICJjb25zdCBUVVBMRVNfU0hBUkVfUE9JTlRfTlVNQkVSUyA9IDB4ODAwMDtcbmNvbnN0IFRVUExFX0NPVU5UX01BU0sgICAgICAgICAgID0gMHgwZmZmO1xuY29uc3QgRU1CRURERURfVFVQTEVfQ09PUkQgICAgICAgPSAweDgwMDA7XG5jb25zdCBJTlRFUk1FRElBVEVfVFVQTEUgICAgICAgICA9IDB4NDAwMDtcbmNvbnN0IFBSSVZBVEVfUE9JTlRfTlVNQkVSUyAgICAgID0gMHgyMDAwO1xuY29uc3QgVFVQTEVfSU5ERVhfTUFTSyAgICAgICAgICAgPSAweDBmZmY7XG5jb25zdCBQT0lOVFNfQVJFX1dPUkRTICAgICAgICAgICA9IDB4ODA7XG5jb25zdCBQT0lOVF9SVU5fQ09VTlRfTUFTSyAgICAgICA9IDB4N2Y7XG5jb25zdCBERUxUQVNfQVJFX1pFUk8gICAgICAgICAgICA9IDB4ODA7XG5jb25zdCBERUxUQVNfQVJFX1dPUkRTICAgICAgICAgICA9IDB4NDA7XG5jb25zdCBERUxUQV9SVU5fQ09VTlRfTUFTSyAgICAgICA9IDB4M2Y7XG5cbi8qKlxuICogVGhpcyBjbGFzcyBpcyB0cmFuc2Zvcm1zIFRydWVUeXBlIGdseXBocyBhY2NvcmRpbmcgdG8gdGhlIGRhdGEgZnJvbVxuICogdGhlIEFwcGxlIEFkdmFuY2VkIFR5cG9ncmFwaHkgdmFyaWF0aW9uIHRhYmxlcyAoZnZhciwgZ3ZhciwgYW5kIGF2YXIpLlxuICogVGhlc2UgdGFibGVzIGFsbG93IGluZmluaXRlIGFkanVzdG1lbnRzIHRvIGdseXBoIHdlaWdodCwgd2lkdGgsIHNsYW50LFxuICogYW5kIG9wdGljYWwgc2l6ZSB3aXRob3V0IHRoZSBkZXNpZ25lciBuZWVkaW5nIHRvIHNwZWNpZnkgZXZlcnkgZXhhY3Qgc3R5bGUuXG4gKlxuICogQXBwbGUncyBkb2N1bWVudGF0aW9uIGZvciB0aGVzZSB0YWJsZXMgaXMgbm90IGdyZWF0LCBzbyB0aGFua3MgdG8gdGhlXG4gKiBGcmVldHlwZSBwcm9qZWN0IGZvciBmaWd1cmluZyBtdWNoIG9mIHRoaXMgb3V0LlxuICpcbiAqIEBwcml2YXRlXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEdseXBoVmFyaWF0aW9uUHJvY2Vzc29yIHtcbiAgY29uc3RydWN0b3IoZm9udCwgY29vcmRzKSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLm5vcm1hbGl6ZWRDb29yZHMgPSB0aGlzLm5vcm1hbGl6ZUNvb3Jkcyhjb29yZHMpO1xuICAgIHRoaXMuYmxlbmRWZWN0b3JzID0gbmV3IE1hcDtcbiAgfVxuXG4gIG5vcm1hbGl6ZUNvb3Jkcyhjb29yZHMpIHtcbiAgICAvLyB0aGUgZGVmYXVsdCBtYXBwaW5nIGlzIGxpbmVhciBhbG9uZyBlYWNoIGF4aXMsIGluIHR3byBzZWdtZW50czpcbiAgICAvLyBmcm9tIHRoZSBtaW5WYWx1ZSB0byBkZWZhdWx0VmFsdWUsIGFuZCBmcm9tIGRlZmF1bHRWYWx1ZSB0byBtYXhWYWx1ZS5cbiAgICBsZXQgbm9ybWFsaXplZCA9IFtdO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5mb250LmZ2YXIuYXhpcy5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGF4aXMgPSB0aGlzLmZvbnQuZnZhci5heGlzW2ldO1xuICAgICAgaWYgKGNvb3Jkc1tpXSA8IGF4aXMuZGVmYXVsdFZhbHVlKSB7XG4gICAgICAgIG5vcm1hbGl6ZWQucHVzaCgoY29vcmRzW2ldIC0gYXhpcy5kZWZhdWx0VmFsdWUgKyBOdW1iZXIuRVBTSUxPTikgLyAoYXhpcy5kZWZhdWx0VmFsdWUgLSBheGlzLm1pblZhbHVlICsgTnVtYmVyLkVQU0lMT04pKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5vcm1hbGl6ZWQucHVzaCgoY29vcmRzW2ldIC0gYXhpcy5kZWZhdWx0VmFsdWUgKyBOdW1iZXIuRVBTSUxPTikgLyAoYXhpcy5tYXhWYWx1ZSAtIGF4aXMuZGVmYXVsdFZhbHVlICsgTnVtYmVyLkVQU0lMT04pKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpZiB0aGVyZSBpcyBhbiBhdmFyIHRhYmxlLCB0aGUgbm9ybWFsaXplZCB2YWx1ZSBpcyBjYWxjdWxhdGVkXG4gICAgLy8gYnkgaW50ZXJwb2xhdGluZyBiZXR3ZWVuIHRoZSB0d28gbmVhcmVzdCBtYXBwZWQgdmFsdWVzLlxuICAgIGlmICh0aGlzLmZvbnQuYXZhcikge1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmZvbnQuYXZhci5zZWdtZW50Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGxldCBzZWdtZW50ID0gdGhpcy5mb250LmF2YXIuc2VnbWVudFtpXTtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBzZWdtZW50LmNvcnJlc3BvbmRlbmNlLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgbGV0IHBhaXIgPSBzZWdtZW50LmNvcnJlc3BvbmRlbmNlW2pdO1xuICAgICAgICAgIGlmIChqID49IDEgJiYgbm9ybWFsaXplZFtpXSA8IHBhaXIuZnJvbUNvb3JkKSB7XG4gICAgICAgICAgICBsZXQgcHJldiA9IHNlZ21lbnQuY29ycmVzcG9uZGVuY2VbaiAtIDFdO1xuICAgICAgICAgICAgbm9ybWFsaXplZFtpXSA9ICgobm9ybWFsaXplZFtpXSAtIHByZXYuZnJvbUNvb3JkKSAqIChwYWlyLnRvQ29vcmQgLSBwcmV2LnRvQ29vcmQpICsgTnVtYmVyLkVQU0lMT04pIC9cbiAgICAgICAgICAgICAgKHBhaXIuZnJvbUNvb3JkIC0gcHJldi5mcm9tQ29vcmQgKyBOdW1iZXIuRVBTSUxPTikgK1xuICAgICAgICAgICAgICBwcmV2LnRvQ29vcmQ7XG5cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBub3JtYWxpemVkO1xuICB9XG5cbiAgdHJhbnNmb3JtUG9pbnRzKGdpZCwgZ2x5cGhQb2ludHMpIHtcbiAgICBpZiAoIXRoaXMuZm9udC5mdmFyIHx8ICF0aGlzLmZvbnQuZ3ZhcikgeyByZXR1cm47IH1cblxuICAgIGxldCB7IGd2YXIgfSA9IHRoaXMuZm9udDtcbiAgICBpZiAoZ2lkID49IGd2YXIuZ2x5cGhDb3VudCkgeyByZXR1cm47IH1cblxuICAgIGxldCBvZmZzZXQgPSBndmFyLm9mZnNldHNbZ2lkXTtcbiAgICBpZiAob2Zmc2V0ID09PSBndmFyLm9mZnNldHNbZ2lkICsgMV0pIHsgcmV0dXJuOyB9XG5cbiAgICAvLyBSZWFkIHRoZSBndmFyIGRhdGEgZm9yIHRoaXMgZ2x5cGhcbiAgICBsZXQgeyBzdHJlYW0gfSA9IHRoaXMuZm9udDtcbiAgICBzdHJlYW0ucG9zID0gb2Zmc2V0O1xuICAgIGlmIChzdHJlYW0ucG9zID49IHN0cmVhbS5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgdHVwbGVDb3VudCA9IHN0cmVhbS5yZWFkVUludDE2QkUoKTtcbiAgICBsZXQgb2Zmc2V0VG9EYXRhID0gb2Zmc2V0ICsgc3RyZWFtLnJlYWRVSW50MTZCRSgpO1xuXG4gICAgaWYgKHR1cGxlQ291bnQgJiBUVVBMRVNfU0hBUkVfUE9JTlRfTlVNQkVSUykge1xuICAgICAgdmFyIGhlcmUgPSBzdHJlYW0ucG9zO1xuICAgICAgc3RyZWFtLnBvcyA9IG9mZnNldFRvRGF0YTtcbiAgICAgIHZhciBzaGFyZWRQb2ludHMgPSB0aGlzLmRlY29kZVBvaW50cygpO1xuICAgICAgb2Zmc2V0VG9EYXRhID0gc3RyZWFtLnBvcztcbiAgICAgIHN0cmVhbS5wb3MgPSBoZXJlO1xuICAgIH1cblxuICAgIGxldCBvcmlnUG9pbnRzID0gZ2x5cGhQb2ludHMubWFwKHB0ID0+IHB0LmNvcHkoKSk7XG5cbiAgICB0dXBsZUNvdW50ICY9IFRVUExFX0NPVU5UX01BU0s7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0dXBsZUNvdW50OyBpKyspIHtcbiAgICAgIGxldCB0dXBsZURhdGFTaXplID0gc3RyZWFtLnJlYWRVSW50MTZCRSgpO1xuICAgICAgbGV0IHR1cGxlSW5kZXggPSBzdHJlYW0ucmVhZFVJbnQxNkJFKCk7XG5cbiAgICAgIGlmICh0dXBsZUluZGV4ICYgRU1CRURERURfVFVQTEVfQ09PUkQpIHtcbiAgICAgICAgdmFyIHR1cGxlQ29vcmRzID0gW107XG4gICAgICAgIGZvciAobGV0IGEgPSAwOyBhIDwgZ3Zhci5heGlzQ291bnQ7IGErKykge1xuICAgICAgICAgIHR1cGxlQ29vcmRzLnB1c2goc3RyZWFtLnJlYWRJbnQxNkJFKCkgLyAxNjM4NCk7XG4gICAgICAgIH1cblxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCh0dXBsZUluZGV4ICYgVFVQTEVfSU5ERVhfTUFTSykgPj0gZ3Zhci5nbG9iYWxDb29yZENvdW50KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGd2YXIgdGFibGUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciB0dXBsZUNvb3JkcyA9IGd2YXIuZ2xvYmFsQ29vcmRzW3R1cGxlSW5kZXggJiBUVVBMRV9JTkRFWF9NQVNLXTtcbiAgICAgIH1cblxuICAgICAgaWYgKHR1cGxlSW5kZXggJiBJTlRFUk1FRElBVEVfVFVQTEUpIHtcbiAgICAgICAgdmFyIHN0YXJ0Q29vcmRzID0gW107XG4gICAgICAgIGZvciAobGV0IGEgPSAwOyBhIDwgZ3Zhci5heGlzQ291bnQ7IGErKykge1xuICAgICAgICAgIHN0YXJ0Q29vcmRzLnB1c2goc3RyZWFtLnJlYWRJbnQxNkJFKCkgLyAxNjM4NCk7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgZW5kQ29vcmRzID0gW107XG4gICAgICAgIGZvciAobGV0IGEgPSAwOyBhIDwgZ3Zhci5heGlzQ291bnQ7IGErKykge1xuICAgICAgICAgIGVuZENvb3Jkcy5wdXNoKHN0cmVhbS5yZWFkSW50MTZCRSgpIC8gMTYzODQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEdldCB0aGUgZmFjdG9yIGF0IHdoaWNoIHRvIGFwcGx5IHRoaXMgdHVwbGVcbiAgICAgIGxldCBmYWN0b3IgPSB0aGlzLnR1cGxlRmFjdG9yKHR1cGxlSW5kZXgsIHR1cGxlQ29vcmRzLCBzdGFydENvb3JkcywgZW5kQ29vcmRzKTtcbiAgICAgIGlmIChmYWN0b3IgPT09IDApIHtcbiAgICAgICAgb2Zmc2V0VG9EYXRhICs9IHR1cGxlRGF0YVNpemU7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICB2YXIgaGVyZSA9IHN0cmVhbS5wb3M7XG4gICAgICBzdHJlYW0ucG9zID0gb2Zmc2V0VG9EYXRhO1xuXG4gICAgICBpZiAodHVwbGVJbmRleCAmIFBSSVZBVEVfUE9JTlRfTlVNQkVSUykge1xuICAgICAgICB2YXIgcG9pbnRzID0gdGhpcy5kZWNvZGVQb2ludHMoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciBwb2ludHMgPSBzaGFyZWRQb2ludHM7XG4gICAgICB9XG5cbiAgICAgIC8vIHBvaW50cy5sZW5ndGggPSAwIG1lYW5zIHRoZXJlIGFyZSBkZWx0YXMgZm9yIGFsbCBwb2ludHNcbiAgICAgIGxldCBuUG9pbnRzID0gcG9pbnRzLmxlbmd0aCA9PT0gMCA/IGdseXBoUG9pbnRzLmxlbmd0aCA6IHBvaW50cy5sZW5ndGg7XG4gICAgICBsZXQgeERlbHRhcyA9IHRoaXMuZGVjb2RlRGVsdGFzKG5Qb2ludHMpO1xuICAgICAgbGV0IHlEZWx0YXMgPSB0aGlzLmRlY29kZURlbHRhcyhuUG9pbnRzKTtcblxuICAgICAgaWYgKHBvaW50cy5sZW5ndGggPT09IDApIHsgLy8gYWxsIHBvaW50c1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdseXBoUG9pbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgdmFyIHBvaW50ID0gZ2x5cGhQb2ludHNbaV07XG4gICAgICAgICAgcG9pbnQueCArPSBNYXRoLnJvdW5kKHhEZWx0YXNbaV0gKiBmYWN0b3IpO1xuICAgICAgICAgIHBvaW50LnkgKz0gTWF0aC5yb3VuZCh5RGVsdGFzW2ldICogZmFjdG9yKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGV0IG91dFBvaW50cyA9IG9yaWdQb2ludHMubWFwKHB0ID0+IHB0LmNvcHkoKSk7XG4gICAgICAgIGxldCBoYXNEZWx0YSA9IGdseXBoUG9pbnRzLm1hcCgoKSA9PiBmYWxzZSk7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBsZXQgaWR4ID0gcG9pbnRzW2ldO1xuICAgICAgICAgIGlmIChpZHggPCBnbHlwaFBvaW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGxldCBwb2ludCA9IG91dFBvaW50c1tpZHhdO1xuICAgICAgICAgICAgaGFzRGVsdGFbaWR4XSA9IHRydWU7XG5cbiAgICAgICAgICAgIHBvaW50LnggKz0geERlbHRhc1tpXSAqIGZhY3RvcjtcbiAgICAgICAgICAgIHBvaW50LnkgKz0geURlbHRhc1tpXSAqIGZhY3RvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmludGVycG9sYXRlTWlzc2luZ0RlbHRhcyhvdXRQb2ludHMsIG9yaWdQb2ludHMsIGhhc0RlbHRhKTtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdseXBoUG9pbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgbGV0IGRlbHRhWCA9IG91dFBvaW50c1tpXS54IC0gb3JpZ1BvaW50c1tpXS54O1xuICAgICAgICAgIGxldCBkZWx0YVkgPSBvdXRQb2ludHNbaV0ueSAtIG9yaWdQb2ludHNbaV0ueTtcblxuICAgICAgICAgIGdseXBoUG9pbnRzW2ldLnggPSBNYXRoLnJvdW5kKGdseXBoUG9pbnRzW2ldLnggKyBkZWx0YVgpO1xuICAgICAgICAgIGdseXBoUG9pbnRzW2ldLnkgPSBNYXRoLnJvdW5kKGdseXBoUG9pbnRzW2ldLnkgKyBkZWx0YVkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIG9mZnNldFRvRGF0YSArPSB0dXBsZURhdGFTaXplO1xuICAgICAgc3RyZWFtLnBvcyA9IGhlcmU7XG4gICAgfVxuICB9XG5cbiAgZGVjb2RlUG9pbnRzKCkge1xuICAgIGxldCBzdHJlYW0gPSB0aGlzLmZvbnQuc3RyZWFtO1xuICAgIGxldCBjb3VudCA9IHN0cmVhbS5yZWFkVUludDgoKTtcblxuICAgIGlmIChjb3VudCAmIFBPSU5UU19BUkVfV09SRFMpIHtcbiAgICAgIGNvdW50ID0gKGNvdW50ICYgUE9JTlRfUlVOX0NPVU5UX01BU0spIDw8IDggfCBzdHJlYW0ucmVhZFVJbnQ4KCk7XG4gICAgfVxuXG4gICAgbGV0IHBvaW50cyA9IG5ldyBVaW50MTZBcnJheShjb3VudCk7XG4gICAgbGV0IGkgPSAwO1xuICAgIGxldCBwb2ludCA9IDA7XG4gICAgd2hpbGUgKGkgPCBjb3VudCkge1xuICAgICAgbGV0IHJ1biA9IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgIGxldCBydW5Db3VudCA9IChydW4gJiBQT0lOVF9SVU5fQ09VTlRfTUFTSykgKyAxO1xuICAgICAgbGV0IGZuID0gcnVuICYgUE9JTlRTX0FSRV9XT1JEUyA/IHN0cmVhbS5yZWFkVUludDE2IDogc3RyZWFtLnJlYWRVSW50ODtcblxuICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBydW5Db3VudCAmJiBpIDwgY291bnQ7IGorKykge1xuICAgICAgICBwb2ludCArPSBmbi5jYWxsKHN0cmVhbSk7XG4gICAgICAgIHBvaW50c1tpKytdID0gcG9pbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHBvaW50cztcbiAgfVxuXG4gIGRlY29kZURlbHRhcyhjb3VudCkge1xuICAgIGxldCBzdHJlYW0gPSB0aGlzLmZvbnQuc3RyZWFtO1xuICAgIGxldCBpID0gMDtcbiAgICBsZXQgZGVsdGFzID0gbmV3IEludDE2QXJyYXkoY291bnQpO1xuXG4gICAgd2hpbGUgKGkgPCBjb3VudCkge1xuICAgICAgbGV0IHJ1biA9IHN0cmVhbS5yZWFkVUludDgoKTtcbiAgICAgIGxldCBydW5Db3VudCA9IChydW4gJiBERUxUQV9SVU5fQ09VTlRfTUFTSykgKyAxO1xuXG4gICAgICBpZiAocnVuICYgREVMVEFTX0FSRV9aRVJPKSB7XG4gICAgICAgIGkgKz0gcnVuQ291bnQ7XG5cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBmbiA9IHJ1biAmIERFTFRBU19BUkVfV09SRFMgPyBzdHJlYW0ucmVhZEludDE2QkUgOiBzdHJlYW0ucmVhZEludDg7XG4gICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgcnVuQ291bnQgJiYgaSA8IGNvdW50OyBqKyspIHtcbiAgICAgICAgICBkZWx0YXNbaSsrXSA9IGZuLmNhbGwoc3RyZWFtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBkZWx0YXM7XG4gIH1cblxuICB0dXBsZUZhY3Rvcih0dXBsZUluZGV4LCB0dXBsZUNvb3Jkcywgc3RhcnRDb29yZHMsIGVuZENvb3Jkcykge1xuICAgIGxldCBub3JtYWxpemVkID0gdGhpcy5ub3JtYWxpemVkQ29vcmRzO1xuICAgIGxldCB7IGd2YXIgfSA9IHRoaXMuZm9udDtcbiAgICBsZXQgZmFjdG9yID0gMTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZ3Zhci5heGlzQ291bnQ7IGkrKykge1xuICAgICAgaWYgKHR1cGxlQ29vcmRzW2ldID09PSAwKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAobm9ybWFsaXplZFtpXSA9PT0gMCkge1xuICAgICAgICByZXR1cm4gMDtcbiAgICAgIH1cblxuICAgICAgaWYgKCh0dXBsZUluZGV4ICYgSU5URVJNRURJQVRFX1RVUExFKSA9PT0gMCkge1xuICAgICAgICBpZiAoKG5vcm1hbGl6ZWRbaV0gPCBNYXRoLm1pbigwLCB0dXBsZUNvb3Jkc1tpXSkpIHx8XG4gICAgICAgICAgICAobm9ybWFsaXplZFtpXSA+IE1hdGgubWF4KDAsIHR1cGxlQ29vcmRzW2ldKSkpIHtcbiAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGZhY3RvciA9IChmYWN0b3IgKiBub3JtYWxpemVkW2ldICsgTnVtYmVyLkVQU0lMT04pIC8gKHR1cGxlQ29vcmRzW2ldICsgTnVtYmVyLkVQU0lMT04pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKChub3JtYWxpemVkW2ldIDwgc3RhcnRDb29yZHNbaV0pIHx8XG4gICAgICAgICAgICAobm9ybWFsaXplZFtpXSA+IGVuZENvb3Jkc1tpXSkpIHtcbiAgICAgICAgICByZXR1cm4gMDtcblxuICAgICAgICB9IGVsc2UgaWYgKG5vcm1hbGl6ZWRbaV0gPCB0dXBsZUNvb3Jkc1tpXSkge1xuICAgICAgICAgIGZhY3RvciA9IGZhY3RvciAqIChub3JtYWxpemVkW2ldIC0gc3RhcnRDb29yZHNbaV0gKyBOdW1iZXIuRVBTSUxPTikgLyAodHVwbGVDb29yZHNbaV0gLSBzdGFydENvb3Jkc1tpXSArIE51bWJlci5FUFNJTE9OKTtcblxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZhY3RvciA9IGZhY3RvciAqIChlbmRDb29yZHNbaV0gLSBub3JtYWxpemVkW2ldICsgTnVtYmVyLkVQU0lMT04pIC8gKGVuZENvb3Jkc1tpXSAtIHR1cGxlQ29vcmRzW2ldICsgTnVtYmVyLkVQU0lMT04pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhY3RvcjtcbiAgfVxuXG4gIC8vIEludGVycG9sYXRlcyBwb2ludHMgd2l0aG91dCBkZWx0YSB2YWx1ZXMuXG4gIC8vIE5lZWRlZCBmb3IgdGhlIMOYIGFuZCBRIGdseXBocyBpbiBTa2lhLlxuICAvLyBBbGdvcml0aG0gZnJvbSBGcmVldHlwZS5cbiAgaW50ZXJwb2xhdGVNaXNzaW5nRGVsdGFzKHBvaW50cywgaW5Qb2ludHMsIGhhc0RlbHRhKSB7XG4gICAgaWYgKHBvaW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgcG9pbnQgPSAwO1xuICAgIHdoaWxlIChwb2ludCA8IHBvaW50cy5sZW5ndGgpIHtcbiAgICAgIGxldCBmaXJzdFBvaW50ID0gcG9pbnQ7XG5cbiAgICAgIC8vIGZpbmQgdGhlIGVuZCBwb2ludCBvZiB0aGUgY29udG91clxuICAgICAgbGV0IGVuZFBvaW50ID0gcG9pbnQ7XG4gICAgICBsZXQgcHQgPSBwb2ludHNbZW5kUG9pbnRdO1xuICAgICAgd2hpbGUgKCFwdC5lbmRDb250b3VyKSB7XG4gICAgICAgIHB0ID0gcG9pbnRzWysrZW5kUG9pbnRdO1xuICAgICAgfVxuXG4gICAgICAvLyBmaW5kIHRoZSBmaXJzdCBwb2ludCB0aGF0IGhhcyBhIGRlbHRhXG4gICAgICB3aGlsZSAocG9pbnQgPD0gZW5kUG9pbnQgJiYgIWhhc0RlbHRhW3BvaW50XSkge1xuICAgICAgICBwb2ludCsrO1xuICAgICAgfVxuXG4gICAgICBpZiAocG9pbnQgPiBlbmRQb2ludCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgbGV0IGZpcnN0RGVsdGEgPSBwb2ludDtcbiAgICAgIGxldCBjdXJEZWx0YSA9IHBvaW50O1xuICAgICAgcG9pbnQrKztcblxuICAgICAgd2hpbGUgKHBvaW50IDw9IGVuZFBvaW50KSB7XG4gICAgICAgIC8vIGZpbmQgdGhlIG5leHQgcG9pbnQgd2l0aCBhIGRlbHRhLCBhbmQgaW50ZXJwb2xhdGUgaW50ZXJtZWRpYXRlIHBvaW50c1xuICAgICAgICBpZiAoaGFzRGVsdGFbcG9pbnRdKSB7XG4gICAgICAgICAgdGhpcy5kZWx0YUludGVycG9sYXRlKGN1ckRlbHRhICsgMSwgcG9pbnQgLSAxLCBjdXJEZWx0YSwgcG9pbnQsIGluUG9pbnRzLCBwb2ludHMpO1xuICAgICAgICAgIGN1ckRlbHRhID0gcG9pbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBwb2ludCsrO1xuICAgICAgfVxuXG4gICAgICAvLyBzaGlmdCBjb250b3VyIGlmIHdlIG9ubHkgaGF2ZSBhIHNpbmdsZSBkZWx0YVxuICAgICAgaWYgKGN1ckRlbHRhID09PSBmaXJzdERlbHRhKSB7XG4gICAgICAgIHRoaXMuZGVsdGFTaGlmdChmaXJzdFBvaW50LCBlbmRQb2ludCwgY3VyRGVsdGEsIGluUG9pbnRzLCBwb2ludHMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gb3RoZXJ3aXNlLCBoYW5kbGUgdGhlIHJlbWFpbmluZyBwb2ludHMgYXQgdGhlIGVuZCBhbmQgYmVnaW5uaW5nIG9mIHRoZSBjb250b3VyXG4gICAgICAgIHRoaXMuZGVsdGFJbnRlcnBvbGF0ZShjdXJEZWx0YSArIDEsIGVuZFBvaW50LCBjdXJEZWx0YSwgZmlyc3REZWx0YSwgaW5Qb2ludHMsIHBvaW50cyk7XG5cbiAgICAgICAgaWYgKGZpcnN0RGVsdGEgPiAwKSB7XG4gICAgICAgICAgdGhpcy5kZWx0YUludGVycG9sYXRlKGZpcnN0UG9pbnQsIGZpcnN0RGVsdGEgLSAxLCBjdXJEZWx0YSwgZmlyc3REZWx0YSwgaW5Qb2ludHMsIHBvaW50cyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcG9pbnQgPSBlbmRQb2ludCArIDE7XG4gICAgfVxuICB9XG5cbiAgZGVsdGFJbnRlcnBvbGF0ZShwMSwgcDIsIHJlZjEsIHJlZjIsIGluUG9pbnRzLCBvdXRQb2ludHMpIHtcbiAgICBpZiAocDEgPiBwMikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBpdGVyYWJsZSA9IFsneCcsICd5J107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVyYWJsZS5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGsgPSBpdGVyYWJsZVtpXTtcbiAgICAgIGlmIChpblBvaW50c1tyZWYxXVtrXSA+IGluUG9pbnRzW3JlZjJdW2tdKSB7XG4gICAgICAgIHZhciBwID0gcmVmMTtcbiAgICAgICAgcmVmMSA9IHJlZjI7XG4gICAgICAgIHJlZjIgPSBwO1xuICAgICAgfVxuXG4gICAgICBsZXQgaW4xID0gaW5Qb2ludHNbcmVmMV1ba107XG4gICAgICBsZXQgaW4yID0gaW5Qb2ludHNbcmVmMl1ba107XG4gICAgICBsZXQgb3V0MSA9IG91dFBvaW50c1tyZWYxXVtrXTtcbiAgICAgIGxldCBvdXQyID0gb3V0UG9pbnRzW3JlZjJdW2tdO1xuXG4gICAgICAvLyBJZiB0aGUgcmVmZXJlbmNlIHBvaW50cyBoYXZlIHRoZSBzYW1lIGNvb3JkaW5hdGUgYnV0IGRpZmZlcmVudFxuICAgICAgLy8gZGVsdGEsIGluZmVycmVkIGRlbHRhIGlzIHplcm8uICBPdGhlcndpc2UgaW50ZXJwb2xhdGUuXG4gICAgICBpZiAoaW4xICE9PSBpbjIgfHwgb3V0MSA9PT0gb3V0Mikge1xuICAgICAgICBsZXQgc2NhbGUgPSBpbjEgPT09IGluMiA/IDAgOiAob3V0MiAtIG91dDEpIC8gKGluMiAtIGluMSk7XG5cbiAgICAgICAgZm9yIChsZXQgcCA9IHAxOyBwIDw9IHAyOyBwKyspIHtcbiAgICAgICAgICBsZXQgb3V0ID0gaW5Qb2ludHNbcF1ba107XG5cbiAgICAgICAgICBpZiAob3V0IDw9IGluMSkge1xuICAgICAgICAgICAgb3V0ICs9IG91dDEgLSBpbjE7XG4gICAgICAgICAgfSBlbHNlIGlmIChvdXQgPj0gaW4yKSB7XG4gICAgICAgICAgICBvdXQgKz0gb3V0MiAtIGluMjtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3V0ID0gb3V0MSArIChvdXQgLSBpbjEpICogc2NhbGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgb3V0UG9pbnRzW3BdW2tdID0gb3V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZGVsdGFTaGlmdChwMSwgcDIsIHJlZiwgaW5Qb2ludHMsIG91dFBvaW50cykge1xuICAgIGxldCBkZWx0YVggPSBvdXRQb2ludHNbcmVmXS54IC0gaW5Qb2ludHNbcmVmXS54O1xuICAgIGxldCBkZWx0YVkgPSBvdXRQb2ludHNbcmVmXS55IC0gaW5Qb2ludHNbcmVmXS55O1xuXG4gICAgaWYgKGRlbHRhWCA9PT0gMCAmJiBkZWx0YVkgPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBwID0gcDE7IHAgPD0gcDI7IHArKykge1xuICAgICAgaWYgKHAgIT09IHJlZikge1xuICAgICAgICBvdXRQb2ludHNbcF0ueCArPSBkZWx0YVg7XG4gICAgICAgIG91dFBvaW50c1twXS55ICs9IGRlbHRhWTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRBZHZhbmNlQWRqdXN0bWVudChnaWQsIHRhYmxlKSB7XG4gICAgbGV0IG91dGVySW5kZXgsIGlubmVySW5kZXg7XG5cbiAgICBpZiAodGFibGUuYWR2YW5jZVdpZHRoTWFwcGluZykge1xuICAgICAgbGV0IGlkeCA9IGdpZDtcbiAgICAgIGlmIChpZHggPj0gdGFibGUuYWR2YW5jZVdpZHRoTWFwcGluZy5tYXBDb3VudCkge1xuICAgICAgICBpZHggPSB0YWJsZS5hZHZhbmNlV2lkdGhNYXBwaW5nLm1hcENvdW50IC0gMTtcbiAgICAgIH1cblxuICAgICAgbGV0IGVudHJ5Rm9ybWF0ID0gdGFibGUuYWR2YW5jZVdpZHRoTWFwcGluZy5lbnRyeUZvcm1hdDtcbiAgICAgICh7b3V0ZXJJbmRleCwgaW5uZXJJbmRleH0gPSB0YWJsZS5hZHZhbmNlV2lkdGhNYXBwaW5nLm1hcERhdGFbaWR4XSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG91dGVySW5kZXggPSAwO1xuICAgICAgaW5uZXJJbmRleCA9IGdpZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5nZXREZWx0YSh0YWJsZS5pdGVtVmFyaWF0aW9uU3RvcmUsIG91dGVySW5kZXgsIGlubmVySW5kZXgpO1xuICB9XG5cbiAgLy8gU2VlIHBzZXVkbyBjb2RlIGZyb20gYEZvbnQgVmFyaWF0aW9ucyBPdmVydmlldydcbiAgLy8gaW4gdGhlIE9wZW5UeXBlIHNwZWNpZmljYXRpb24uXG4gIGdldERlbHRhKGl0ZW1TdG9yZSwgb3V0ZXJJbmRleCwgaW5uZXJJbmRleCkge1xuICAgIGlmIChvdXRlckluZGV4ID49IGl0ZW1TdG9yZS5pdGVtVmFyaWF0aW9uRGF0YS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIGxldCB2YXJEYXRhID0gaXRlbVN0b3JlLml0ZW1WYXJpYXRpb25EYXRhW291dGVySW5kZXhdO1xuICAgIGlmIChpbm5lckluZGV4ID49IHZhckRhdGEuZGVsdGFTZXRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgbGV0IGRlbHRhU2V0ID0gdmFyRGF0YS5kZWx0YVNldHNbaW5uZXJJbmRleF07XG4gICAgbGV0IGJsZW5kVmVjdG9yID0gdGhpcy5nZXRCbGVuZFZlY3RvcihpdGVtU3RvcmUsIG91dGVySW5kZXgpO1xuICAgIGxldCBuZXRBZGp1c3RtZW50ID0gMDtcblxuICAgIGZvciAobGV0IG1hc3RlciA9IDA7IG1hc3RlciA8IHZhckRhdGEucmVnaW9uSW5kZXhDb3VudDsgbWFzdGVyKyspIHtcbiAgICAgIG5ldEFkanVzdG1lbnQgKz0gZGVsdGFTZXQuZGVsdGFzW21hc3Rlcl0gKiBibGVuZFZlY3RvclttYXN0ZXJdO1xuICAgIH1cblxuICAgIHJldHVybiBuZXRBZGp1c3RtZW50O1xuICB9XG5cbiAgZ2V0QmxlbmRWZWN0b3IoaXRlbVN0b3JlLCBvdXRlckluZGV4KSB7XG4gICAgbGV0IHZhckRhdGEgPSBpdGVtU3RvcmUuaXRlbVZhcmlhdGlvbkRhdGFbb3V0ZXJJbmRleF07XG4gICAgaWYgKHRoaXMuYmxlbmRWZWN0b3JzLmhhcyh2YXJEYXRhKSkge1xuICAgICAgcmV0dXJuIHRoaXMuYmxlbmRWZWN0b3JzLmdldCh2YXJEYXRhKTtcbiAgICB9XG5cbiAgICBsZXQgbm9ybWFsaXplZENvb3JkcyA9IHRoaXMubm9ybWFsaXplZENvb3JkcztcbiAgICBsZXQgYmxlbmRWZWN0b3IgPSBbXTtcblxuICAgIC8vIG91dGVyIGxvb3Agc3RlcHMgdGhyb3VnaCBtYXN0ZXIgZGVzaWducyB0byBiZSBibGVuZGVkXG4gICAgZm9yIChsZXQgbWFzdGVyID0gMDsgbWFzdGVyIDwgdmFyRGF0YS5yZWdpb25JbmRleENvdW50OyBtYXN0ZXIrKykge1xuICAgICAgbGV0IHNjYWxhciA9IDE7XG4gICAgICBsZXQgcmVnaW9uSW5kZXggPSB2YXJEYXRhLnJlZ2lvbkluZGV4ZXNbbWFzdGVyXTtcbiAgICAgIGxldCBheGVzID0gaXRlbVN0b3JlLnZhcmlhdGlvblJlZ2lvbkxpc3QudmFyaWF0aW9uUmVnaW9uc1tyZWdpb25JbmRleF07XG5cbiAgICAgIC8vIGlubmVyIGxvb3Agc3RlcHMgdGhyb3VnaCBheGVzIGluIHRoaXMgcmVnaW9uXG4gICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGF4ZXMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgbGV0IGF4aXMgPSBheGVzW2pdO1xuICAgICAgICBsZXQgYXhpc1NjYWxhcjtcblxuICAgICAgICAvLyBjb21wdXRlIHRoZSBzY2FsYXIgY29udHJpYnV0aW9uIG9mIHRoaXMgYXhpc1xuICAgICAgICAvLyBpZ25vcmUgaW52YWxpZCByYW5nZXNcbiAgICAgICAgaWYgKGF4aXMuc3RhcnRDb29yZCA+IGF4aXMucGVha0Nvb3JkIHx8IGF4aXMucGVha0Nvb3JkID4gYXhpcy5lbmRDb29yZCkge1xuICAgICAgICAgIGF4aXNTY2FsYXIgPSAxO1xuXG4gICAgICAgIH0gZWxzZSBpZiAoYXhpcy5zdGFydENvb3JkIDwgMCAmJiBheGlzLmVuZENvb3JkID4gMCAmJiBheGlzLnBlYWtDb29yZCAhPT0gMCkge1xuICAgICAgICAgIGF4aXNTY2FsYXIgPSAxO1xuXG4gICAgICAgIC8vIHBlYWsgb2YgMCBtZWFucyBpZ25vcmUgdGhpcyBheGlzXG4gICAgICAgIH0gZWxzZSBpZiAoYXhpcy5wZWFrQ29vcmQgPT09IDApIHtcbiAgICAgICAgICBheGlzU2NhbGFyID0gMTtcblxuICAgICAgICAvLyBpZ25vcmUgdGhpcyByZWdpb24gaWYgY29vcmRzIGFyZSBvdXQgb2YgcmFuZ2VcbiAgICAgICAgfSBlbHNlIGlmIChub3JtYWxpemVkQ29vcmRzW2pdIDwgYXhpcy5zdGFydENvb3JkIHx8IG5vcm1hbGl6ZWRDb29yZHNbal0gPiBheGlzLmVuZENvb3JkKSB7XG4gICAgICAgICAgYXhpc1NjYWxhciA9IDA7XG5cbiAgICAgICAgLy8gY2FsY3VsYXRlIGEgcHJvcG9ydGlvbmFsIGZhY3RvclxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChub3JtYWxpemVkQ29vcmRzW2pdID09PSBheGlzLnBlYWtDb29yZCkge1xuICAgICAgICAgICAgYXhpc1NjYWxhciA9IDE7XG4gICAgICAgICAgfSBlbHNlIGlmIChub3JtYWxpemVkQ29vcmRzW2pdIDwgYXhpcy5wZWFrQ29vcmQpIHtcbiAgICAgICAgICAgIGF4aXNTY2FsYXIgPSAobm9ybWFsaXplZENvb3Jkc1tqXSAtIGF4aXMuc3RhcnRDb29yZCArIE51bWJlci5FUFNJTE9OKSAvXG4gICAgICAgICAgICAgIChheGlzLnBlYWtDb29yZCAtIGF4aXMuc3RhcnRDb29yZCArIE51bWJlci5FUFNJTE9OKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXhpc1NjYWxhciA9IChheGlzLmVuZENvb3JkIC0gbm9ybWFsaXplZENvb3Jkc1tqXSArIE51bWJlci5FUFNJTE9OKSAvXG4gICAgICAgICAgICAgIChheGlzLmVuZENvb3JkIC0gYXhpcy5wZWFrQ29vcmQgKyBOdW1iZXIuRVBTSUxPTik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gdGFrZSBwcm9kdWN0IG9mIGFsbCB0aGUgYXhpcyBzY2FsYXJzXG4gICAgICAgIHNjYWxhciAqPSBheGlzU2NhbGFyO1xuICAgICAgfVxuXG4gICAgICBibGVuZFZlY3RvclttYXN0ZXJdID0gc2NhbGFyO1xuICAgIH1cblxuICAgIHRoaXMuYmxlbmRWZWN0b3JzLnNldCh2YXJEYXRhLCBibGVuZFZlY3Rvcik7XG4gICAgcmV0dXJuIGJsZW5kVmVjdG9yO1xuICB9XG59XG4iLCAiaW1wb3J0IGNsb25lRGVlcCBmcm9tICdjbG9uZSc7XG5pbXBvcnQgU3Vic2V0IGZyb20gJy4vU3Vic2V0JztcbmltcG9ydCBEaXJlY3RvcnkgZnJvbSAnLi4vdGFibGVzL2RpcmVjdG9yeSc7XG5pbXBvcnQgVGFibGVzIGZyb20gJy4uL3RhYmxlcyc7XG5pbXBvcnQgVFRGR2x5cGhFbmNvZGVyIGZyb20gJy4uL2dseXBoL1RURkdseXBoRW5jb2Rlcic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRURlN1YnNldCBleHRlbmRzIFN1YnNldCB7XG4gIGNvbnN0cnVjdG9yKGZvbnQpIHtcbiAgICBzdXBlcihmb250KTtcbiAgICB0aGlzLmdseXBoRW5jb2RlciA9IG5ldyBUVEZHbHlwaEVuY29kZXI7XG4gIH1cblxuICBfYWRkR2x5cGgoZ2lkKSB7XG4gICAgbGV0IGdseXBoID0gdGhpcy5mb250LmdldEdseXBoKGdpZCk7XG4gICAgbGV0IGdseWYgPSBnbHlwaC5fZGVjb2RlKCk7XG5cbiAgICAvLyBnZXQgdGhlIG9mZnNldCB0byB0aGUgZ2x5cGggZnJvbSB0aGUgbG9jYSB0YWJsZVxuICAgIGxldCBjdXJPZmZzZXQgPSB0aGlzLmZvbnQubG9jYS5vZmZzZXRzW2dpZF07XG4gICAgbGV0IG5leHRPZmZzZXQgPSB0aGlzLmZvbnQubG9jYS5vZmZzZXRzW2dpZCArIDFdO1xuXG4gICAgbGV0IHN0cmVhbSA9IHRoaXMuZm9udC5fZ2V0VGFibGVTdHJlYW0oJ2dseWYnKTtcbiAgICBzdHJlYW0ucG9zICs9IGN1ck9mZnNldDtcblxuICAgIGxldCBidWZmZXIgPSBzdHJlYW0ucmVhZEJ1ZmZlcihuZXh0T2Zmc2V0IC0gY3VyT2Zmc2V0KTtcblxuICAgIC8vIGlmIGl0IGlzIGEgY29tcG91bmQgZ2x5cGgsIGluY2x1ZGUgaXRzIGNvbXBvbmVudHNcbiAgICBpZiAoZ2x5ZiAmJiBnbHlmLm51bWJlck9mQ29udG91cnMgPCAwKSB7XG4gICAgICBidWZmZXIgPSBuZXcgVWludDhBcnJheShidWZmZXIpO1xuICAgICAgbGV0IHZpZXcgPSBuZXcgRGF0YVZpZXcoYnVmZmVyLmJ1ZmZlcik7XG4gICAgICBmb3IgKGxldCBjb21wb25lbnQgb2YgZ2x5Zi5jb21wb25lbnRzKSB7XG4gICAgICAgIGdpZCA9IHRoaXMuaW5jbHVkZUdseXBoKGNvbXBvbmVudC5nbHlwaElEKTtcbiAgICAgICAgdmlldy5zZXRVaW50MTYoY29tcG9uZW50LnBvcywgZ2lkKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGdseWYgJiYgdGhpcy5mb250Ll92YXJpYXRpb25Qcm9jZXNzb3IpIHtcbiAgICAgIC8vIElmIHRoaXMgaXMgYSBUcnVlVHlwZSB2YXJpYXRpb24gZ2x5cGgsIHJlLWVuY29kZSB0aGUgcGF0aFxuICAgICAgYnVmZmVyID0gdGhpcy5nbHlwaEVuY29kZXIuZW5jb2RlU2ltcGxlKGdseXBoLnBhdGgsIGdseWYuaW5zdHJ1Y3Rpb25zKTtcbiAgICB9XG5cbiAgICB0aGlzLmdseWYucHVzaChidWZmZXIpO1xuICAgIHRoaXMubG9jYS5vZmZzZXRzLnB1c2godGhpcy5vZmZzZXQpO1xuXG4gICAgdGhpcy5obXR4Lm1ldHJpY3MucHVzaCh7XG4gICAgICBhZHZhbmNlOiBnbHlwaC5hZHZhbmNlV2lkdGgsXG4gICAgICBiZWFyaW5nOiBnbHlwaC5fZ2V0TWV0cmljcygpLmxlZnRCZWFyaW5nXG4gICAgfSk7XG5cbiAgICB0aGlzLm9mZnNldCArPSBidWZmZXIubGVuZ3RoO1xuICAgIHJldHVybiB0aGlzLmdseWYubGVuZ3RoIC0gMTtcbiAgfVxuXG4gIGVuY29kZSgpIHtcbiAgICAvLyB0YWJsZXMgcmVxdWlyZWQgYnkgUERGIHNwZWM6XG4gICAgLy8gICBoZWFkLCBoaGVhLCBsb2NhLCBtYXhwLCBjdnQgLCBwcmVwLCBnbHlmLCBobXR4LCBmcGdtXG4gICAgLy9cbiAgICAvLyBhZGRpdGlvbmFsIHRhYmxlcyByZXF1aXJlZCBmb3Igc3RhbmRhbG9uZSBmb250czpcbiAgICAvLyAgIG5hbWUsIGNtYXAsIE9TLzIsIHBvc3RcblxuICAgIHRoaXMuZ2x5ZiA9IFtdO1xuICAgIHRoaXMub2Zmc2V0ID0gMDtcbiAgICB0aGlzLmxvY2EgPSB7XG4gICAgICBvZmZzZXRzOiBbXSxcbiAgICAgIHZlcnNpb246IHRoaXMuZm9udC5sb2NhLnZlcnNpb25cbiAgICB9O1xuXG4gICAgdGhpcy5obXR4ID0ge1xuICAgICAgbWV0cmljczogW10sXG4gICAgICBiZWFyaW5nczogW11cbiAgICB9O1xuXG4gICAgLy8gaW5jbHVkZSBhbGwgdGhlIGdseXBoc1xuICAgIC8vIG5vdCB1c2luZyBhIGZvciBsb29wIGJlY2F1c2Ugd2UgbmVlZCB0byBzdXBwb3J0IGFkZGluZyBtb3JlXG4gICAgLy8gZ2x5cGhzIHRvIHRoZSBhcnJheSBhcyB3ZSBnbywgYW5kIENvZmZlZVNjcmlwdCBjYWNoZXMgdGhlIGxlbmd0aC5cbiAgICBsZXQgaSA9IDA7XG4gICAgd2hpbGUgKGkgPCB0aGlzLmdseXBocy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuX2FkZEdseXBoKHRoaXMuZ2x5cGhzW2krK10pO1xuICAgIH1cblxuICAgIGxldCBtYXhwID0gY2xvbmVEZWVwKHRoaXMuZm9udC5tYXhwKTtcbiAgICBtYXhwLm51bUdseXBocyA9IHRoaXMuZ2x5Zi5sZW5ndGg7XG5cbiAgICB0aGlzLmxvY2Eub2Zmc2V0cy5wdXNoKHRoaXMub2Zmc2V0KTtcblxuICAgIGxldCBoZWFkID0gY2xvbmVEZWVwKHRoaXMuZm9udC5oZWFkKTtcbiAgICBoZWFkLmluZGV4VG9Mb2NGb3JtYXQgPSB0aGlzLmxvY2EudmVyc2lvbjtcblxuICAgIGxldCBoaGVhID0gY2xvbmVEZWVwKHRoaXMuZm9udC5oaGVhKTtcbiAgICBoaGVhLm51bWJlck9mTWV0cmljcyA9IHRoaXMuaG10eC5tZXRyaWNzLmxlbmd0aDtcblxuICAgIC8vIG1hcCA9IFtdXG4gICAgLy8gZm9yIGluZGV4IGluIFswLi4uMjU2XVxuICAgIC8vICAgICBpZiBpbmRleCA8IEBudW1HbHlwaHNcbiAgICAvLyAgICAgICAgIG1hcFtpbmRleF0gPSBpbmRleFxuICAgIC8vICAgICBlbHNlXG4gICAgLy8gICAgICAgICBtYXBbaW5kZXhdID0gMFxuICAgIC8vXG4gICAgLy8gY21hcFRhYmxlID1cbiAgICAvLyAgICAgdmVyc2lvbjogMFxuICAgIC8vICAgICBsZW5ndGg6IDI2MlxuICAgIC8vICAgICBsYW5ndWFnZTogMFxuICAgIC8vICAgICBjb2RlTWFwOiBtYXBcbiAgICAvL1xuICAgIC8vIGNtYXAgPVxuICAgIC8vICAgICB2ZXJzaW9uOiAwXG4gICAgLy8gICAgIG51bVN1YnRhYmxlczogMVxuICAgIC8vICAgICB0YWJsZXM6IFtcbiAgICAvLyAgICAgICAgIHBsYXRmb3JtSUQ6IDFcbiAgICAvLyAgICAgICAgIGVuY29kaW5nSUQ6IDBcbiAgICAvLyAgICAgICAgIHRhYmxlOiBjbWFwVGFibGVcbiAgICAvLyAgICAgXVxuXG4gICAgLy8gVE9ETzogc3Vic2V0IHByZXAsIGN2dCwgZnBnbT9cbiAgICByZXR1cm4gRGlyZWN0b3J5LnRvQnVmZmVyKHtcbiAgICAgIHRhYmxlczoge1xuICAgICAgICBoZWFkLFxuICAgICAgICBoaGVhLFxuICAgICAgICBsb2NhOiB0aGlzLmxvY2EsXG4gICAgICAgIG1heHAsXG4gICAgICAgICdjdnQgJzogdGhpcy5mb250WydjdnQgJ10sXG4gICAgICAgIHByZXA6IHRoaXMuZm9udC5wcmVwLFxuICAgICAgICBnbHlmOiB0aGlzLmdseWYsXG4gICAgICAgIGhtdHg6IHRoaXMuaG10eCxcbiAgICAgICAgZnBnbTogdGhpcy5mb250LmZwZ21cblxuICAgICAgICAvLyBuYW1lOiBjbG9uZSBAZm9udC5uYW1lXG4gICAgICAgIC8vICdPUy8yJzogY2xvbmUgQGZvbnRbJ09TLzInXVxuICAgICAgICAvLyBwb3N0OiBjbG9uZSBAZm9udC5wb3N0XG4gICAgICAgIC8vIGNtYXA6IGNtYXBcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuXG5jb25zdCByZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdWJzZXQge1xuICBjb25zdHJ1Y3Rvcihmb250KSB7XG4gICAgdGhpcy5mb250ID0gZm9udDtcbiAgICB0aGlzLmdseXBocyA9IFtdO1xuICAgIHRoaXMubWFwcGluZyA9IHt9O1xuXG4gICAgLy8gYWx3YXlzIGluY2x1ZGUgdGhlIG1pc3NpbmcgZ2x5cGhcbiAgICB0aGlzLmluY2x1ZGVHbHlwaCgwKTtcbiAgfVxuXG4gIGluY2x1ZGVHbHlwaChnbHlwaCkge1xuICAgIGlmICh0eXBlb2YgZ2x5cGggPT09ICdvYmplY3QnKSB7XG4gICAgICBnbHlwaCA9IGdseXBoLmlkO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1hcHBpbmdbZ2x5cGhdID09IG51bGwpIHtcbiAgICAgIHRoaXMuZ2x5cGhzLnB1c2goZ2x5cGgpO1xuICAgICAgdGhpcy5tYXBwaW5nW2dseXBoXSA9IHRoaXMuZ2x5cGhzLmxlbmd0aCAtIDE7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMubWFwcGluZ1tnbHlwaF07XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcblxuLy8gRmxhZ3MgZm9yIHNpbXBsZSBnbHlwaHNcbmNvbnN0IE9OX0NVUlZFICAgICAgICA9IDEgPDwgMDtcbmNvbnN0IFhfU0hPUlRfVkVDVE9SICA9IDEgPDwgMTtcbmNvbnN0IFlfU0hPUlRfVkVDVE9SICA9IDEgPDwgMjtcbmNvbnN0IFJFUEVBVCAgICAgICAgICA9IDEgPDwgMztcbmNvbnN0IFNBTUVfWCAgICAgICAgICA9IDEgPDwgNDtcbmNvbnN0IFNBTUVfWSAgICAgICAgICA9IDEgPDwgNTtcblxuY2xhc3MgUG9pbnQge1xuICBzdGF0aWMgc2l6ZSh2YWwpIHtcbiAgICByZXR1cm4gdmFsID49IDAgJiYgdmFsIDw9IDI1NSA/IDEgOiAyO1xuICB9XG4gIFxuICBzdGF0aWMgZW5jb2RlKHN0cmVhbSwgdmFsdWUpIHtcbiAgICBpZiAodmFsdWUgPj0gMCAmJiB2YWx1ZSA8PSAyNTUpIHtcbiAgICAgIHN0cmVhbS53cml0ZVVJbnQ4KHZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3RyZWFtLndyaXRlSW50MTZCRSh2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbmxldCBHbHlmID0gbmV3IHIuU3RydWN0KHtcbiAgbnVtYmVyT2ZDb250b3Vyczogci5pbnQxNiwgLy8gaWYgbmVnYXRpdmUsIHRoaXMgaXMgYSBjb21wb3NpdGUgZ2x5cGhcbiAgeE1pbjogci5pbnQxNixcbiAgeU1pbjogci5pbnQxNixcbiAgeE1heDogci5pbnQxNixcbiAgeU1heDogci5pbnQxNixcbiAgZW5kUHRzT2ZDb250b3VyczogbmV3IHIuQXJyYXkoci51aW50MTYsICdudW1iZXJPZkNvbnRvdXJzJyksXG4gIGluc3RydWN0aW9uczogbmV3IHIuQXJyYXkoci51aW50OCwgci51aW50MTYpLFxuICBmbGFnczogbmV3IHIuQXJyYXkoci51aW50OCwgMCksXG4gIHhQb2ludHM6IG5ldyByLkFycmF5KFBvaW50LCAwKSxcbiAgeVBvaW50czogbmV3IHIuQXJyYXkoUG9pbnQsIDApXG59KTtcblxuLyoqXG4gKiBFbmNvZGVzIFRydWVUeXBlIGdseXBoIG91dGxpbmVzXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRURkdseXBoRW5jb2RlciB7XG4gIGVuY29kZVNpbXBsZShwYXRoLCBpbnN0cnVjdGlvbnMgPSBbXSkge1xuICAgIGxldCBlbmRQdHNPZkNvbnRvdXJzID0gW107XG4gICAgbGV0IHhQb2ludHMgPSBbXTtcbiAgICBsZXQgeVBvaW50cyA9IFtdO1xuICAgIGxldCBmbGFncyA9IFtdO1xuICAgIGxldCBzYW1lID0gMDtcbiAgICBsZXQgbGFzdFggPSAwLCBsYXN0WSA9IDAsIGxhc3RGbGFnID0gMDtcbiAgICBsZXQgcG9pbnRDb3VudCA9IDA7XG4gICAgXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXRoLmNvbW1hbmRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgYyA9IHBhdGguY29tbWFuZHNbaV07XG4gICAgICBcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgYy5hcmdzLmxlbmd0aDsgaiArPSAyKSB7XG4gICAgICAgIGxldCB4ID0gYy5hcmdzW2pdO1xuICAgICAgICBsZXQgeSA9IGMuYXJnc1tqICsgMV07XG4gICAgICAgIGxldCBmbGFnID0gMDtcbiAgICAgICAgXG4gICAgICAgIC8vIElmIHRoZSBlbmRpbmcgcG9pbnQgb2YgYSBxdWFkcmF0aWMgY3VydmUgaXMgdGhlIG1pZHBvaW50XG4gICAgICAgIC8vIGJldHdlZW4gdGhlIGNvbnRyb2wgcG9pbnQgYW5kIHRoZSBjb250cm9sIHBvaW50IG9mIHRoZSBuZXh0XG4gICAgICAgIC8vIHF1YWRyYXRpYyBjdXJ2ZSwgd2UgY2FuIG9taXQgdGhlIGVuZGluZyBwb2ludC5cbiAgICAgICAgaWYgKGMuY29tbWFuZCA9PT0gJ3F1YWRyYXRpY0N1cnZlVG8nICYmIGogPT09IDIpIHtcbiAgICAgICAgICBsZXQgbmV4dCA9IHBhdGguY29tbWFuZHNbaSArIDFdO1xuICAgICAgICAgIGlmIChuZXh0ICYmIG5leHQuY29tbWFuZCA9PT0gJ3F1YWRyYXRpY0N1cnZlVG8nKSB7XG4gICAgICAgICAgICBsZXQgbWlkWCA9IChsYXN0WCArIG5leHQuYXJnc1swXSkgLyAyO1xuICAgICAgICAgICAgbGV0IG1pZFkgPSAobGFzdFkgKyBuZXh0LmFyZ3NbMV0pIC8gMjtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaWYgKHggPT09IG1pZFggJiYgeSA9PT0gbWlkWSkge1xuICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC8vIEFsbCBwb2ludHMgZXhjZXB0IGNvbnRyb2wgcG9pbnRzIGFyZSBvbiBjdXJ2ZS5cbiAgICAgICAgaWYgKCEoYy5jb21tYW5kID09PSAncXVhZHJhdGljQ3VydmVUbycgJiYgaiA9PT0gMCkpIHtcbiAgICAgICAgICBmbGFnIHw9IE9OX0NVUlZFO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBmbGFnID0gdGhpcy5fZW5jb2RlUG9pbnQoeCwgbGFzdFgsIHhQb2ludHMsIGZsYWcsIFhfU0hPUlRfVkVDVE9SLCBTQU1FX1gpO1xuICAgICAgICBmbGFnID0gdGhpcy5fZW5jb2RlUG9pbnQoeSwgbGFzdFksIHlQb2ludHMsIGZsYWcsIFlfU0hPUlRfVkVDVE9SLCBTQU1FX1kpO1xuICAgICAgICBcbiAgICAgICAgaWYgKGZsYWcgPT09IGxhc3RGbGFnICYmIHNhbWUgPCAyNTUpIHtcbiAgICAgICAgICBmbGFnc1tmbGFncy5sZW5ndGggLSAxXSB8PSBSRVBFQVQ7XG4gICAgICAgICAgc2FtZSsrO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChzYW1lID4gMCkge1xuICAgICAgICAgICAgZmxhZ3MucHVzaChzYW1lKTtcbiAgICAgICAgICAgIHNhbWUgPSAwO1xuICAgICAgICAgIH1cbiAgICAgIFxuICAgICAgICAgIGZsYWdzLnB1c2goZmxhZyk7XG4gICAgICAgICAgbGFzdEZsYWcgPSBmbGFnO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBsYXN0WCA9IHg7XG4gICAgICAgIGxhc3RZID0geTtcbiAgICAgICAgcG9pbnRDb3VudCsrO1xuICAgICAgfVxuICBcbiAgICAgIGlmIChjLmNvbW1hbmQgPT09ICdjbG9zZVBhdGgnKSB7XG4gICAgICAgIGVuZFB0c09mQ29udG91cnMucHVzaChwb2ludENvdW50IC0gMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xvc2UgdGhlIHBhdGggaWYgdGhlIGxhc3QgY29tbWFuZCBkaWRuJ3QgYWxyZWFkeVxuICAgIGlmIChwYXRoLmNvbW1hbmRzLmxlbmd0aCA+IDEgJiYgcGF0aC5jb21tYW5kc1twYXRoLmNvbW1hbmRzLmxlbmd0aCAtIDFdLmNvbW1hbmQgIT09ICdjbG9zZVBhdGgnKSB7XG4gICAgICBlbmRQdHNPZkNvbnRvdXJzLnB1c2gocG9pbnRDb3VudCAtIDEpO1xuICAgIH1cbiAgICBcbiAgICBsZXQgYmJveCA9IHBhdGguYmJveDtcbiAgICBsZXQgZ2x5ZiA9IHtcbiAgICAgIG51bWJlck9mQ29udG91cnM6IGVuZFB0c09mQ29udG91cnMubGVuZ3RoLFxuICAgICAgeE1pbjogYmJveC5taW5YLFxuICAgICAgeU1pbjogYmJveC5taW5ZLFxuICAgICAgeE1heDogYmJveC5tYXhYLFxuICAgICAgeU1heDogYmJveC5tYXhZLFxuICAgICAgZW5kUHRzT2ZDb250b3VyczogZW5kUHRzT2ZDb250b3VycyxcbiAgICAgIGluc3RydWN0aW9uczogaW5zdHJ1Y3Rpb25zLFxuICAgICAgZmxhZ3M6IGZsYWdzLFxuICAgICAgeFBvaW50czogeFBvaW50cyxcbiAgICAgIHlQb2ludHM6IHlQb2ludHNcbiAgICB9O1xuICAgIFxuICAgIGxldCBzaXplID0gR2x5Zi5zaXplKGdseWYpO1xuICAgIGxldCB0YWlsID0gNCAtIChzaXplICUgNCk7XG4gICAgXG4gICAgbGV0IHN0cmVhbSA9IG5ldyByLkVuY29kZVN0cmVhbShzaXplICsgdGFpbCk7XG4gICAgR2x5Zi5lbmNvZGUoc3RyZWFtLCBnbHlmKTtcbiAgICBcbiAgICAvLyBBbGlnbiB0byA0LWJ5dGUgbGVuZ3RoXG4gICAgaWYgKHRhaWwgIT09IDApIHtcbiAgICAgIHN0cmVhbS5maWxsKDAsIHRhaWwpO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gc3RyZWFtLmJ1ZmZlcjtcbiAgfVxuICBcbiAgX2VuY29kZVBvaW50KHZhbHVlLCBsYXN0LCBwb2ludHMsIGZsYWcsIHNob3J0RmxhZywgc2FtZUZsYWcpIHtcbiAgICBsZXQgZGlmZiA9IHZhbHVlIC0gbGFzdDtcbiAgICBcbiAgICBpZiAodmFsdWUgPT09IGxhc3QpIHtcbiAgICAgIGZsYWcgfD0gc2FtZUZsYWc7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICgtMjU1IDw9IGRpZmYgJiYgZGlmZiA8PSAyNTUpIHtcbiAgICAgICAgZmxhZyB8PSBzaG9ydEZsYWc7XG4gICAgICAgIGlmIChkaWZmIDwgMCkge1xuICAgICAgICAgIGRpZmYgPSAtZGlmZjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBmbGFnIHw9IHNhbWVGbGFnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIHBvaW50cy5wdXNoKGRpZmYpO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gZmxhZztcbiAgfVxufVxuIiwgImltcG9ydCBTdWJzZXQgZnJvbSAnLi9TdWJzZXQnO1xuaW1wb3J0IENGRlRvcCBmcm9tICcuLi9jZmYvQ0ZGVG9wJztcbmltcG9ydCBDRkZQcml2YXRlRGljdCBmcm9tICcuLi9jZmYvQ0ZGUHJpdmF0ZURpY3QnO1xuaW1wb3J0IHN0YW5kYXJkU3RyaW5ncyBmcm9tICcuLi9jZmYvQ0ZGU3RhbmRhcmRTdHJpbmdzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ0ZGU3Vic2V0IGV4dGVuZHMgU3Vic2V0IHtcbiAgY29uc3RydWN0b3IoZm9udCkge1xuICAgIHN1cGVyKGZvbnQpO1xuXG4gICAgdGhpcy5jZmYgPSB0aGlzLmZvbnRbJ0NGRiAnXTtcbiAgICBpZiAoIXRoaXMuY2ZmKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBhIENGRiBGb250Jyk7XG4gICAgfVxuICB9XG5cbiAgc3Vic2V0Q2hhcnN0cmluZ3MoKSB7XG4gICAgdGhpcy5jaGFyc3RyaW5ncyA9IFtdO1xuICAgIGxldCBnc3VicnMgPSB7fTtcblxuICAgIGZvciAobGV0IGdpZCBvZiB0aGlzLmdseXBocykge1xuICAgICAgdGhpcy5jaGFyc3RyaW5ncy5wdXNoKHRoaXMuY2ZmLmdldENoYXJTdHJpbmcoZ2lkKSk7XG5cbiAgICAgIGxldCBnbHlwaCA9IHRoaXMuZm9udC5nZXRHbHlwaChnaWQpO1xuICAgICAgbGV0IHBhdGggPSBnbHlwaC5wYXRoOyAvLyB0aGlzIGNhdXNlcyB0aGUgZ2x5cGggdG8gYmUgcGFyc2VkXG5cbiAgICAgIGZvciAobGV0IHN1YnIgaW4gZ2x5cGguX3VzZWRHc3VicnMpIHtcbiAgICAgICAgZ3N1YnJzW3N1YnJdID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmdzdWJycyA9IHRoaXMuc3Vic2V0U3VicnModGhpcy5jZmYuZ2xvYmFsU3VickluZGV4LCBnc3VicnMpO1xuICB9XG5cbiAgc3Vic2V0U3VicnMoc3VicnMsIHVzZWQpIHtcbiAgICBsZXQgcmVzID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdWJycy5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IHN1YnIgPSBzdWJyc1tpXTtcbiAgICAgIGlmICh1c2VkW2ldKSB7XG4gICAgICAgIHRoaXMuY2ZmLnN0cmVhbS5wb3MgPSBzdWJyLm9mZnNldDtcbiAgICAgICAgcmVzLnB1c2godGhpcy5jZmYuc3RyZWFtLnJlYWRCdWZmZXIoc3Vici5sZW5ndGgpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlcy5wdXNoKG5ldyBVaW50OEFycmF5KFsxMV0pKTsgLy8gcmV0dXJuXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIHN1YnNldEZvbnRkaWN0KHRvcERpY3QpIHtcbiAgICB0b3BEaWN0LkZEQXJyYXkgPSBbXTtcbiAgICB0b3BEaWN0LkZEU2VsZWN0ID0ge1xuICAgICAgdmVyc2lvbjogMCxcbiAgICAgIGZkczogW11cbiAgICB9O1xuXG4gICAgbGV0IHVzZWRfZmRzID0ge307XG4gICAgbGV0IHVzZWRfc3VicnMgPSBbXTtcbiAgICBsZXQgZmRfc2VsZWN0ID0ge307XG4gICAgZm9yIChsZXQgZ2lkIG9mIHRoaXMuZ2x5cGhzKSB7XG4gICAgICBsZXQgZmQgPSB0aGlzLmNmZi5mZEZvckdseXBoKGdpZCk7XG4gICAgICBpZiAoZmQgPT0gbnVsbCkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF1c2VkX2Zkc1tmZF0pIHtcbiAgICAgICAgdG9wRGljdC5GREFycmF5LnB1c2goT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jZmYudG9wRGljdC5GREFycmF5W2ZkXSkpO1xuICAgICAgICB1c2VkX3N1YnJzLnB1c2goe30pO1xuICAgICAgICBmZF9zZWxlY3RbZmRdID0gdG9wRGljdC5GREFycmF5Lmxlbmd0aCAtIDE7XG4gICAgICB9XG5cbiAgICAgIHVzZWRfZmRzW2ZkXSA9IHRydWU7XG4gICAgICB0b3BEaWN0LkZEU2VsZWN0LmZkcy5wdXNoKGZkX3NlbGVjdFtmZF0pO1xuXG4gICAgICBsZXQgZ2x5cGggPSB0aGlzLmZvbnQuZ2V0R2x5cGgoZ2lkKTtcbiAgICAgIGxldCBwYXRoID0gZ2x5cGgucGF0aDsgLy8gdGhpcyBjYXVzZXMgdGhlIGdseXBoIHRvIGJlIHBhcnNlZFxuICAgICAgZm9yIChsZXQgc3ViciBpbiBnbHlwaC5fdXNlZFN1YnJzKSB7XG4gICAgICAgIHVzZWRfc3VicnNbZmRfc2VsZWN0W2ZkXV1bc3Vicl0gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdG9wRGljdC5GREFycmF5Lmxlbmd0aDsgaSsrKSB7XG4gICAgICBsZXQgZGljdCA9IHRvcERpY3QuRkRBcnJheVtpXTtcbiAgICAgIGRlbGV0ZSBkaWN0LkZvbnROYW1lO1xuICAgICAgaWYgKGRpY3QuUHJpdmF0ZSAmJiBkaWN0LlByaXZhdGUuU3VicnMpIHtcbiAgICAgICAgZGljdC5Qcml2YXRlID0gT2JqZWN0LmFzc2lnbih7fSwgZGljdC5Qcml2YXRlKTtcbiAgICAgICAgZGljdC5Qcml2YXRlLlN1YnJzID0gdGhpcy5zdWJzZXRTdWJycyhkaWN0LlByaXZhdGUuU3VicnMsIHVzZWRfc3VicnNbaV0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGNyZWF0ZUNJREZvbnRkaWN0KHRvcERpY3QpIHtcbiAgICBsZXQgdXNlZF9zdWJycyA9IHt9O1xuICAgIGZvciAobGV0IGdpZCBvZiB0aGlzLmdseXBocykge1xuICAgICAgbGV0IGdseXBoID0gdGhpcy5mb250LmdldEdseXBoKGdpZCk7XG4gICAgICBsZXQgcGF0aCA9IGdseXBoLnBhdGg7IC8vIHRoaXMgY2F1c2VzIHRoZSBnbHlwaCB0byBiZSBwYXJzZWRcblxuICAgICAgZm9yIChsZXQgc3ViciBpbiBnbHlwaC5fdXNlZFN1YnJzKSB7XG4gICAgICAgIHVzZWRfc3VicnNbc3Vicl0gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBwcml2YXRlRGljdCA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuY2ZmLnRvcERpY3QuUHJpdmF0ZSk7XG4gICAgaWYgKHRoaXMuY2ZmLnRvcERpY3QuUHJpdmF0ZSAmJiB0aGlzLmNmZi50b3BEaWN0LlByaXZhdGUuU3VicnMpIHtcbiAgICAgIHByaXZhdGVEaWN0LlN1YnJzID0gdGhpcy5zdWJzZXRTdWJycyh0aGlzLmNmZi50b3BEaWN0LlByaXZhdGUuU3VicnMsIHVzZWRfc3VicnMpO1xuICAgIH1cblxuICAgIHRvcERpY3QuRkRBcnJheSA9IFt7IFByaXZhdGU6IHByaXZhdGVEaWN0IH1dO1xuICAgIHJldHVybiB0b3BEaWN0LkZEU2VsZWN0ID0ge1xuICAgICAgdmVyc2lvbjogMyxcbiAgICAgIG5SYW5nZXM6IDEsXG4gICAgICByYW5nZXM6IFt7IGZpcnN0OiAwLCBmZDogMCB9XSxcbiAgICAgIHNlbnRpbmVsOiB0aGlzLmNoYXJzdHJpbmdzLmxlbmd0aFxuICAgIH07XG4gIH1cblxuICBhZGRTdHJpbmcoc3RyaW5nKSB7XG4gICAgaWYgKCFzdHJpbmcpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5zdHJpbmdzKSB7XG4gICAgICB0aGlzLnN0cmluZ3MgPSBbXTtcbiAgICB9XG5cbiAgICB0aGlzLnN0cmluZ3MucHVzaChzdHJpbmcpO1xuICAgIHJldHVybiBzdGFuZGFyZFN0cmluZ3MubGVuZ3RoICsgdGhpcy5zdHJpbmdzLmxlbmd0aCAtIDE7XG4gIH1cblxuICBlbmNvZGUoKSB7XG4gICAgdGhpcy5zdWJzZXRDaGFyc3RyaW5ncygpO1xuXG4gICAgbGV0IGNoYXJzZXQgPSB7XG4gICAgICB2ZXJzaW9uOiB0aGlzLmNoYXJzdHJpbmdzLmxlbmd0aCA+IDI1NSA/IDIgOiAxLFxuICAgICAgcmFuZ2VzOiBbeyBmaXJzdDogMSwgbkxlZnQ6IHRoaXMuY2hhcnN0cmluZ3MubGVuZ3RoIC0gMiB9XVxuICAgIH07XG5cbiAgICBsZXQgdG9wRGljdCA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuY2ZmLnRvcERpY3QpO1xuICAgIHRvcERpY3QuUHJpdmF0ZSA9IG51bGw7XG4gICAgdG9wRGljdC5jaGFyc2V0ID0gY2hhcnNldDtcbiAgICB0b3BEaWN0LkVuY29kaW5nID0gbnVsbDtcbiAgICB0b3BEaWN0LkNoYXJTdHJpbmdzID0gdGhpcy5jaGFyc3RyaW5ncztcblxuICAgIGZvciAobGV0IGtleSBvZiBbJ3ZlcnNpb24nLCAnTm90aWNlJywgJ0NvcHlyaWdodCcsICdGdWxsTmFtZScsICdGYW1pbHlOYW1lJywgJ1dlaWdodCcsICdQb3N0U2NyaXB0JywgJ0Jhc2VGb250TmFtZScsICdGb250TmFtZSddKSB7XG4gICAgICB0b3BEaWN0W2tleV0gPSB0aGlzLmFkZFN0cmluZyh0aGlzLmNmZi5zdHJpbmcodG9wRGljdFtrZXldKSk7XG4gICAgfVxuXG4gICAgdG9wRGljdC5ST1MgPSBbdGhpcy5hZGRTdHJpbmcoJ0Fkb2JlJyksIHRoaXMuYWRkU3RyaW5nKCdJZGVudGl0eScpLCAwXTtcbiAgICB0b3BEaWN0LkNJRENvdW50ID0gdGhpcy5jaGFyc3RyaW5ncy5sZW5ndGg7XG5cbiAgICBpZiAodGhpcy5jZmYuaXNDSURGb250KSB7XG4gICAgICB0aGlzLnN1YnNldEZvbnRkaWN0KHRvcERpY3QpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNyZWF0ZUNJREZvbnRkaWN0KHRvcERpY3QpO1xuICAgIH1cblxuICAgIGxldCB0b3AgPSB7XG4gICAgICB2ZXJzaW9uOiAxLFxuICAgICAgaGRyU2l6ZTogdGhpcy5jZmYuaGRyU2l6ZSxcbiAgICAgIG9mZlNpemU6IDQsXG4gICAgICBoZWFkZXI6IHRoaXMuY2ZmLmhlYWRlcixcbiAgICAgIG5hbWVJbmRleDogW3RoaXMuY2ZmLnBvc3RzY3JpcHROYW1lXSxcbiAgICAgIHRvcERpY3RJbmRleDogW3RvcERpY3RdLFxuICAgICAgc3RyaW5nSW5kZXg6IHRoaXMuc3RyaW5ncyxcbiAgICAgIGdsb2JhbFN1YnJJbmRleDogdGhpcy5nc3VicnNcbiAgICB9O1xuXG4gICAgcmV0dXJuIENGRlRvcC50b0J1ZmZlcih0b3ApO1xuICB9XG59XG4iLCAiaW1wb3J0IFRURkZvbnQgZnJvbSAnLi9UVEZGb250JztcbmltcG9ydCBXT0ZGRGlyZWN0b3J5IGZyb20gJy4vdGFibGVzL1dPRkZEaXJlY3RvcnknO1xuaW1wb3J0IHRhYmxlcyBmcm9tICcuL3RhYmxlcyc7XG5pbXBvcnQgaW5mbGF0ZSBmcm9tICd0aW55LWluZmxhdGUnO1xuaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBhc2NpaURlY29kZXIgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV09GRkZvbnQgZXh0ZW5kcyBUVEZGb250IHtcbiAgdHlwZSA9ICdXT0ZGJztcblxuICBzdGF0aWMgcHJvYmUoYnVmZmVyKSB7XG4gICAgcmV0dXJuIGFzY2lpRGVjb2Rlci5kZWNvZGUoYnVmZmVyLnNsaWNlKDAsIDQpKSA9PT0gJ3dPRkYnO1xuICB9XG5cbiAgX2RlY29kZURpcmVjdG9yeSgpIHtcbiAgICB0aGlzLmRpcmVjdG9yeSA9IFdPRkZEaXJlY3RvcnkuZGVjb2RlKHRoaXMuc3RyZWFtLCB7IF9zdGFydE9mZnNldDogMCB9KTtcbiAgfVxuXG4gIF9nZXRUYWJsZVN0cmVhbSh0YWcpIHtcbiAgICBsZXQgdGFibGUgPSB0aGlzLmRpcmVjdG9yeS50YWJsZXNbdGFnXTtcbiAgICBpZiAodGFibGUpIHtcbiAgICAgIHRoaXMuc3RyZWFtLnBvcyA9IHRhYmxlLm9mZnNldDtcblxuICAgICAgaWYgKHRhYmxlLmNvbXBMZW5ndGggPCB0YWJsZS5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5zdHJlYW0ucG9zICs9IDI7IC8vIHNraXAgZGVmbGF0ZSBoZWFkZXJcbiAgICAgICAgbGV0IG91dEJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KHRhYmxlLmxlbmd0aCk7XG4gICAgICAgIGxldCBidWYgPSBpbmZsYXRlKHRoaXMuc3RyZWFtLnJlYWRCdWZmZXIodGFibGUuY29tcExlbmd0aCAtIDIpLCBvdXRCdWZmZXIpO1xuICAgICAgICByZXR1cm4gbmV3IHIuRGVjb2RlU3RyZWFtKGJ1Zik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5zdHJlYW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiIsICJpbXBvcnQgKiBhcyByIGZyb20gJ3Jlc3RydWN0dXJlJztcbmltcG9ydCB0YWJsZXMgZnJvbSAnLi8nO1xuXG5sZXQgV09GRkRpcmVjdG9yeUVudHJ5ID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICAgICAgICBuZXcgci5TdHJpbmcoNCksXG4gIG9mZnNldDogICAgICAgbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgJ3ZvaWQnLCB7dHlwZTogJ2dsb2JhbCd9KSxcbiAgY29tcExlbmd0aDogICByLnVpbnQzMixcbiAgbGVuZ3RoOiAgICAgICByLnVpbnQzMixcbiAgb3JpZ0NoZWNrc3VtOiByLnVpbnQzMlxufSk7XG5cbmxldCBXT0ZGRGlyZWN0b3J5ID0gbmV3IHIuU3RydWN0KHtcbiAgdGFnOiAgICAgICAgICAgIG5ldyByLlN0cmluZyg0KSwgLy8gc2hvdWxkIGJlICd3T0ZGJ1xuICBmbGF2b3I6ICAgICAgICAgci51aW50MzIsXG4gIGxlbmd0aDogICAgICAgICByLnVpbnQzMixcbiAgbnVtVGFibGVzOiAgICAgIHIudWludDE2LFxuICByZXNlcnZlZDogICAgICAgbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICB0b3RhbFNmbnRTaXplOiAgci51aW50MzIsXG4gIG1ham9yVmVyc2lvbjogICByLnVpbnQxNixcbiAgbWlub3JWZXJzaW9uOiAgIHIudWludDE2LFxuICBtZXRhT2Zmc2V0OiAgICAgci51aW50MzIsXG4gIG1ldGFMZW5ndGg6ICAgICByLnVpbnQzMixcbiAgbWV0YU9yaWdMZW5ndGg6IHIudWludDMyLFxuICBwcml2T2Zmc2V0OiAgICAgci51aW50MzIsXG4gIHByaXZMZW5ndGg6ICAgICByLnVpbnQzMixcbiAgdGFibGVzOiAgICAgICAgIG5ldyByLkFycmF5KFdPRkZEaXJlY3RvcnlFbnRyeSwgJ251bVRhYmxlcycpXG59KTtcblxuV09GRkRpcmVjdG9yeS5wcm9jZXNzID0gZnVuY3Rpb24oKSB7XG4gIGxldCB0YWJsZXMgPSB7fTtcbiAgZm9yIChsZXQgdGFibGUgb2YgdGhpcy50YWJsZXMpIHtcbiAgICB0YWJsZXNbdGFibGUudGFnXSA9IHRhYmxlO1xuICB9XG5cbiAgdGhpcy50YWJsZXMgPSB0YWJsZXM7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBXT0ZGRGlyZWN0b3J5O1xuIiwgImltcG9ydCAqIGFzIHIgZnJvbSAncmVzdHJ1Y3R1cmUnO1xuaW1wb3J0IGJyb3RsaSBmcm9tICdicm90bGkvZGVjb21wcmVzcy5qcyc7XG5pbXBvcnQgVFRGRm9udCBmcm9tICcuL1RURkZvbnQnO1xuaW1wb3J0IFRURkdseXBoLCB7IFBvaW50IH0gZnJvbSAnLi9nbHlwaC9UVEZHbHlwaCc7XG5pbXBvcnQgV09GRjJHbHlwaCBmcm9tICcuL2dseXBoL1dPRkYyR2x5cGgnO1xuaW1wb3J0IFdPRkYyRGlyZWN0b3J5IGZyb20gJy4vdGFibGVzL1dPRkYyRGlyZWN0b3J5JztcbmltcG9ydCB7IGFzY2lpRGVjb2RlciB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIFN1YmNsYXNzIG9mIFRURkZvbnQgdGhhdCByZXByZXNlbnRzIGEgVFRGL09URiBmb250IGNvbXByZXNzZWQgYnkgV09GRjJcbiAqIFNlZSBzcGVjIGhlcmU6IGh0dHA6Ly93d3cudzMub3JnL1RSL1dPRkYyL1xuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXT0ZGMkZvbnQgZXh0ZW5kcyBUVEZGb250IHtcbiAgdHlwZSA9ICdXT0ZGMic7XG5cbiAgc3RhdGljIHByb2JlKGJ1ZmZlcikge1xuICAgIHJldHVybiBhc2NpaURlY29kZXIuZGVjb2RlKGJ1ZmZlci5zbGljZSgwLCA0KSkgPT09ICd3T0YyJztcbiAgfVxuXG4gIF9kZWNvZGVEaXJlY3RvcnkoKSB7XG4gICAgdGhpcy5kaXJlY3RvcnkgPSBXT0ZGMkRpcmVjdG9yeS5kZWNvZGUodGhpcy5zdHJlYW0pO1xuICAgIHRoaXMuX2RhdGFQb3MgPSB0aGlzLnN0cmVhbS5wb3M7XG4gIH1cblxuICBfZGVjb21wcmVzcygpIHtcbiAgICAvLyBkZWNvbXByZXNzIGRhdGEgYW5kIHNldHVwIHRhYmxlIG9mZnNldHMgaWYgd2UgaGF2ZW4ndCBhbHJlYWR5XG4gICAgaWYgKCF0aGlzLl9kZWNvbXByZXNzZWQpIHtcbiAgICAgIHRoaXMuc3RyZWFtLnBvcyA9IHRoaXMuX2RhdGFQb3M7XG4gICAgICBsZXQgYnVmZmVyID0gdGhpcy5zdHJlYW0ucmVhZEJ1ZmZlcih0aGlzLmRpcmVjdG9yeS50b3RhbENvbXByZXNzZWRTaXplKTtcblxuICAgICAgbGV0IGRlY29tcHJlc3NlZFNpemUgPSAwO1xuICAgICAgZm9yIChsZXQgdGFnIGluIHRoaXMuZGlyZWN0b3J5LnRhYmxlcykge1xuICAgICAgICBsZXQgZW50cnkgPSB0aGlzLmRpcmVjdG9yeS50YWJsZXNbdGFnXTtcbiAgICAgICAgZW50cnkub2Zmc2V0ID0gZGVjb21wcmVzc2VkU2l6ZTtcbiAgICAgICAgZGVjb21wcmVzc2VkU2l6ZSArPSAoZW50cnkudHJhbnNmb3JtTGVuZ3RoICE9IG51bGwpID8gZW50cnkudHJhbnNmb3JtTGVuZ3RoIDogZW50cnkubGVuZ3RoO1xuICAgICAgfVxuXG4gICAgICBsZXQgZGVjb21wcmVzc2VkID0gYnJvdGxpKGJ1ZmZlciwgZGVjb21wcmVzc2VkU2l6ZSk7XG4gICAgICBpZiAoIWRlY29tcHJlc3NlZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Vycm9yIGRlY29kaW5nIGNvbXByZXNzZWQgZGF0YSBpbiBXT0ZGMicpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnN0cmVhbSA9IG5ldyByLkRlY29kZVN0cmVhbShkZWNvbXByZXNzZWQpO1xuICAgICAgdGhpcy5fZGVjb21wcmVzc2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBfZGVjb2RlVGFibGUodGFibGUpIHtcbiAgICB0aGlzLl9kZWNvbXByZXNzKCk7XG4gICAgcmV0dXJuIHN1cGVyLl9kZWNvZGVUYWJsZSh0YWJsZSk7XG4gIH1cblxuICAvLyBPdmVycmlkZSB0aGlzIG1ldGhvZCB0byBnZXQgYSBnbHlwaCBhbmQgcmV0dXJuIG91clxuICAvLyBjdXN0b20gc3ViY2xhc3MgaWYgdGhlcmUgaXMgYSBnbHlmIHRhYmxlLlxuICBfZ2V0QmFzZUdseXBoKGdseXBoLCBjaGFyYWN0ZXJzID0gW10pIHtcbiAgICBpZiAoIXRoaXMuX2dseXBoc1tnbHlwaF0pIHtcbiAgICAgIGlmICh0aGlzLmRpcmVjdG9yeS50YWJsZXMuZ2x5ZiAmJiB0aGlzLmRpcmVjdG9yeS50YWJsZXMuZ2x5Zi50cmFuc2Zvcm1lZCkge1xuICAgICAgICBpZiAoIXRoaXMuX3RyYW5zZm9ybWVkR2x5cGhzKSB7IHRoaXMuX3RyYW5zZm9ybUdseWZUYWJsZSgpOyB9XG4gICAgICAgIHJldHVybiB0aGlzLl9nbHlwaHNbZ2x5cGhdID0gbmV3IFdPRkYyR2x5cGgoZ2x5cGgsIGNoYXJhY3RlcnMsIHRoaXMpO1xuXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gc3VwZXIuX2dldEJhc2VHbHlwaChnbHlwaCwgY2hhcmFjdGVycyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgX3RyYW5zZm9ybUdseWZUYWJsZSgpIHtcbiAgICB0aGlzLl9kZWNvbXByZXNzKCk7XG4gICAgdGhpcy5zdHJlYW0ucG9zID0gdGhpcy5kaXJlY3RvcnkudGFibGVzLmdseWYub2Zmc2V0O1xuICAgIGxldCB0YWJsZSA9IEdseWZUYWJsZS5kZWNvZGUodGhpcy5zdHJlYW0pO1xuICAgIGxldCBnbHlwaHMgPSBbXTtcblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0YWJsZS5udW1HbHlwaHM7IGluZGV4KyspIHtcbiAgICAgIGxldCBnbHlwaCA9IHt9O1xuICAgICAgbGV0IG5Db250b3VycyA9IHRhYmxlLm5Db250b3Vycy5yZWFkSW50MTZCRSgpO1xuICAgICAgZ2x5cGgubnVtYmVyT2ZDb250b3VycyA9IG5Db250b3VycztcblxuICAgICAgaWYgKG5Db250b3VycyA+IDApIHsgLy8gc2ltcGxlIGdseXBoXG4gICAgICAgIGxldCBuUG9pbnRzID0gW107XG4gICAgICAgIGxldCB0b3RhbFBvaW50cyA9IDA7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuQ29udG91cnM7IGkrKykge1xuICAgICAgICAgIGxldCByID0gcmVhZDI1NVVJbnQxNih0YWJsZS5uUG9pbnRzKTtcbiAgICAgICAgICB0b3RhbFBvaW50cyArPSByO1xuICAgICAgICAgIG5Qb2ludHMucHVzaCh0b3RhbFBvaW50cyk7XG4gICAgICAgIH1cblxuICAgICAgICBnbHlwaC5wb2ludHMgPSBkZWNvZGVUcmlwbGV0KHRhYmxlLmZsYWdzLCB0YWJsZS5nbHlwaHMsIHRvdGFsUG9pbnRzKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuQ29udG91cnM7IGkrKykge1xuICAgICAgICAgIGdseXBoLnBvaW50c1tuUG9pbnRzW2ldIC0gMV0uZW5kQ29udG91ciA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgaW5zdHJ1Y3Rpb25TaXplID0gcmVhZDI1NVVJbnQxNih0YWJsZS5nbHlwaHMpO1xuXG4gICAgICB9IGVsc2UgaWYgKG5Db250b3VycyA8IDApIHsgLy8gY29tcG9zaXRlIGdseXBoXG4gICAgICAgIGxldCBoYXZlSW5zdHJ1Y3Rpb25zID0gVFRGR2x5cGgucHJvdG90eXBlLl9kZWNvZGVDb21wb3NpdGUuY2FsbCh7IF9mb250OiB0aGlzIH0sIGdseXBoLCB0YWJsZS5jb21wb3NpdGVzKTtcbiAgICAgICAgaWYgKGhhdmVJbnN0cnVjdGlvbnMpIHtcbiAgICAgICAgICB2YXIgaW5zdHJ1Y3Rpb25TaXplID0gcmVhZDI1NVVJbnQxNih0YWJsZS5nbHlwaHMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGdseXBocy5wdXNoKGdseXBoKTtcbiAgICB9XG5cbiAgICB0aGlzLl90cmFuc2Zvcm1lZEdseXBocyA9IGdseXBocztcbiAgfVxufVxuXG4vLyBTcGVjaWFsIGNsYXNzIHRoYXQgYWNjZXB0cyBhIGxlbmd0aCBhbmQgcmV0dXJucyBhIHN1Yi1zdHJlYW0gZm9yIHRoYXQgZGF0YVxuY2xhc3MgU3Vic3RyZWFtIHtcbiAgY29uc3RydWN0b3IobGVuZ3RoKSB7XG4gICAgdGhpcy5sZW5ndGggPSBsZW5ndGg7XG4gICAgdGhpcy5fYnVmID0gbmV3IHIuQnVmZmVyKGxlbmd0aCk7XG4gIH1cblxuICBkZWNvZGUoc3RyZWFtLCBwYXJlbnQpIHtcbiAgICByZXR1cm4gbmV3IHIuRGVjb2RlU3RyZWFtKHRoaXMuX2J1Zi5kZWNvZGUoc3RyZWFtLCBwYXJlbnQpKTtcbiAgfVxufVxuXG4vLyBUaGlzIHN0cnVjdCByZXByZXNlbnRzIHRoZSBlbnRpcmUgZ2x5ZiB0YWJsZVxubGV0IEdseWZUYWJsZSA9IG5ldyByLlN0cnVjdCh7XG4gIHZlcnNpb246IHIudWludDMyLFxuICBudW1HbHlwaHM6IHIudWludDE2LFxuICBpbmRleEZvcm1hdDogci51aW50MTYsXG4gIG5Db250b3VyU3RyZWFtU2l6ZTogci51aW50MzIsXG4gIG5Qb2ludHNTdHJlYW1TaXplOiByLnVpbnQzMixcbiAgZmxhZ1N0cmVhbVNpemU6IHIudWludDMyLFxuICBnbHlwaFN0cmVhbVNpemU6IHIudWludDMyLFxuICBjb21wb3NpdGVTdHJlYW1TaXplOiByLnVpbnQzMixcbiAgYmJveFN0cmVhbVNpemU6IHIudWludDMyLFxuICBpbnN0cnVjdGlvblN0cmVhbVNpemU6IHIudWludDMyLFxuICBuQ29udG91cnM6IG5ldyBTdWJzdHJlYW0oJ25Db250b3VyU3RyZWFtU2l6ZScpLFxuICBuUG9pbnRzOiBuZXcgU3Vic3RyZWFtKCduUG9pbnRzU3RyZWFtU2l6ZScpLFxuICBmbGFnczogbmV3IFN1YnN0cmVhbSgnZmxhZ1N0cmVhbVNpemUnKSxcbiAgZ2x5cGhzOiBuZXcgU3Vic3RyZWFtKCdnbHlwaFN0cmVhbVNpemUnKSxcbiAgY29tcG9zaXRlczogbmV3IFN1YnN0cmVhbSgnY29tcG9zaXRlU3RyZWFtU2l6ZScpLFxuICBiYm94ZXM6IG5ldyBTdWJzdHJlYW0oJ2Jib3hTdHJlYW1TaXplJyksXG4gIGluc3RydWN0aW9uczogbmV3IFN1YnN0cmVhbSgnaW5zdHJ1Y3Rpb25TdHJlYW1TaXplJylcbn0pO1xuXG5jb25zdCBXT1JEX0NPREUgPSAyNTM7XG5jb25zdCBPTkVfTU9SRV9CWVRFX0NPREUyID0gMjU0O1xuY29uc3QgT05FX01PUkVfQllURV9DT0RFMSA9IDI1NTtcbmNvbnN0IExPV0VTVF9VX0NPREUgPSAyNTM7XG5cbmZ1bmN0aW9uIHJlYWQyNTVVSW50MTYoc3RyZWFtKSB7XG4gIGxldCBjb2RlID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuXG4gIGlmIChjb2RlID09PSBXT1JEX0NPREUpIHtcbiAgICByZXR1cm4gc3RyZWFtLnJlYWRVSW50MTZCRSgpO1xuICB9XG5cbiAgaWYgKGNvZGUgPT09IE9ORV9NT1JFX0JZVEVfQ09ERTEpIHtcbiAgICByZXR1cm4gc3RyZWFtLnJlYWRVSW50OCgpICsgTE9XRVNUX1VfQ09ERTtcbiAgfVxuXG4gIGlmIChjb2RlID09PSBPTkVfTU9SRV9CWVRFX0NPREUyKSB7XG4gICAgcmV0dXJuIHN0cmVhbS5yZWFkVUludDgoKSArIExPV0VTVF9VX0NPREUgKiAyO1xuICB9XG5cbiAgcmV0dXJuIGNvZGU7XG59XG5cbmZ1bmN0aW9uIHdpdGhTaWduKGZsYWcsIGJhc2V2YWwpIHtcbiAgcmV0dXJuIGZsYWcgJiAxID8gYmFzZXZhbCA6IC1iYXNldmFsO1xufVxuXG5mdW5jdGlvbiBkZWNvZGVUcmlwbGV0KGZsYWdzLCBnbHlwaHMsIG5Qb2ludHMpIHtcbiAgbGV0IHk7XG4gIGxldCB4ID0geSA9IDA7XG4gIGxldCByZXMgPSBbXTtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IG5Qb2ludHM7IGkrKykge1xuICAgIGxldCBkeCA9IDAsIGR5ID0gMDtcbiAgICBsZXQgZmxhZyA9IGZsYWdzLnJlYWRVSW50OCgpO1xuICAgIGxldCBvbkN1cnZlID0gIShmbGFnID4+IDcpO1xuICAgIGZsYWcgJj0gMHg3ZjtcblxuICAgIGlmIChmbGFnIDwgMTApIHtcbiAgICAgIGR4ID0gMDtcbiAgICAgIGR5ID0gd2l0aFNpZ24oZmxhZywgKChmbGFnICYgMTQpIDw8IDcpICsgZ2x5cGhzLnJlYWRVSW50OCgpKTtcblxuICAgIH0gZWxzZSBpZiAoZmxhZyA8IDIwKSB7XG4gICAgICBkeCA9IHdpdGhTaWduKGZsYWcsICgoKGZsYWcgLSAxMCkgJiAxNCkgPDwgNykgKyBnbHlwaHMucmVhZFVJbnQ4KCkpO1xuICAgICAgZHkgPSAwO1xuXG4gICAgfSBlbHNlIGlmIChmbGFnIDwgODQpIHtcbiAgICAgIHZhciBiMCA9IGZsYWcgLSAyMDtcbiAgICAgIHZhciBiMSA9IGdseXBocy5yZWFkVUludDgoKTtcbiAgICAgIGR4ID0gd2l0aFNpZ24oZmxhZywgMSArIChiMCAmIDB4MzApICsgKGIxID4+IDQpKTtcbiAgICAgIGR5ID0gd2l0aFNpZ24oZmxhZyA+PiAxLCAxICsgKChiMCAmIDB4MGMpIDw8IDIpICsgKGIxICYgMHgwZikpO1xuXG4gICAgfSBlbHNlIGlmIChmbGFnIDwgMTIwKSB7XG4gICAgICB2YXIgYjAgPSBmbGFnIC0gODQ7XG4gICAgICBkeCA9IHdpdGhTaWduKGZsYWcsIDEgKyAoKGIwIC8gMTIpIDw8IDgpICsgZ2x5cGhzLnJlYWRVSW50OCgpKTtcbiAgICAgIGR5ID0gd2l0aFNpZ24oZmxhZyA+PiAxLCAxICsgKCgoYjAgJSAxMikgPj4gMikgPDwgOCkgKyBnbHlwaHMucmVhZFVJbnQ4KCkpO1xuXG4gICAgfSBlbHNlIGlmIChmbGFnIDwgMTI0KSB7XG4gICAgICB2YXIgYjEgPSBnbHlwaHMucmVhZFVJbnQ4KCk7XG4gICAgICBsZXQgYjIgPSBnbHlwaHMucmVhZFVJbnQ4KCk7XG4gICAgICBkeCA9IHdpdGhTaWduKGZsYWcsIChiMSA8PCA0KSArIChiMiA+PiA0KSk7XG4gICAgICBkeSA9IHdpdGhTaWduKGZsYWcgPj4gMSwgKChiMiAmIDB4MGYpIDw8IDgpICsgZ2x5cGhzLnJlYWRVSW50OCgpKTtcblxuICAgIH0gZWxzZSB7XG4gICAgICBkeCA9IHdpdGhTaWduKGZsYWcsIGdseXBocy5yZWFkVUludDE2QkUoKSk7XG4gICAgICBkeSA9IHdpdGhTaWduKGZsYWcgPj4gMSwgZ2x5cGhzLnJlYWRVSW50MTZCRSgpKTtcbiAgICB9XG5cbiAgICB4ICs9IGR4O1xuICAgIHkgKz0gZHk7XG4gICAgcmVzLnB1c2gobmV3IFBvaW50KG9uQ3VydmUsIGZhbHNlLCB4LCB5KSk7XG4gIH1cblxuICByZXR1cm4gcmVzO1xufVxuIiwgImltcG9ydCBUVEZHbHlwaCBmcm9tICcuL1RURkdseXBoJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgVHJ1ZVR5cGUgZ2x5cGggaW4gdGhlIFdPRkYyIGZvcm1hdCwgd2hpY2ggY29tcHJlc3NlcyBnbHlwaHMgZGlmZmVyZW50bHkuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFdPRkYyR2x5cGggZXh0ZW5kcyBUVEZHbHlwaCB7XG4gIHR5cGUgPSAnV09GRjInO1xuXG4gIF9kZWNvZGUoKSB7XG4gICAgLy8gV2UgaGF2ZSB0byBkZWNvZGUgaW4gYWR2YW5jZSAoaW4gV09GRjJGb250KSwgc28ganVzdCByZXR1cm4gdGhlIHByZS1kZWNvZGVkIGRhdGEuXG4gICAgcmV0dXJuIHRoaXMuX2ZvbnQuX3RyYW5zZm9ybWVkR2x5cGhzW3RoaXMuaWRdO1xuICB9XG5cbiAgX2dldENCb3goKSB7XG4gICAgcmV0dXJuIHRoaXMucGF0aC5iYm94O1xuICB9XG59XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5cbmNvbnN0IEJhc2UxMjggPSB7XG4gIGRlY29kZShzdHJlYW0pIHtcbiAgICBsZXQgcmVzdWx0ID0gMDtcbiAgICBsZXQgaXRlcmFibGUgPSBbMCwgMSwgMiwgMywgNF07XG4gICAgZm9yIChsZXQgaiA9IDA7IGogPCBpdGVyYWJsZS5sZW5ndGg7IGorKykge1xuICAgICAgbGV0IGkgPSBpdGVyYWJsZVtqXTtcbiAgICAgIGxldCBjb2RlID0gc3RyZWFtLnJlYWRVSW50OCgpO1xuXG4gICAgICAvLyBJZiBhbnkgb2YgdGhlIHRvcCBzZXZlbiBiaXRzIGFyZSBzZXQgdGhlbiB3ZSdyZSBhYm91dCB0byBvdmVyZmxvdy5cbiAgICAgIGlmIChyZXN1bHQgJiAweGUwMDAwMDAwKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignT3ZlcmZsb3cnKTtcbiAgICAgIH1cblxuICAgICAgcmVzdWx0ID0gKHJlc3VsdCA8PCA3KSB8IChjb2RlICYgMHg3Zik7XG4gICAgICBpZiAoKGNvZGUgJiAweDgwKSA9PT0gMCkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignQmFkIGJhc2UgMTI4IG51bWJlcicpO1xuICB9XG59O1xuXG5sZXQga25vd25UYWdzID0gW1xuICAnY21hcCcsICdoZWFkJywgJ2hoZWEnLCAnaG10eCcsICdtYXhwJywgJ25hbWUnLCAnT1MvMicsICdwb3N0JywgJ2N2dCAnLFxuICAnZnBnbScsICdnbHlmJywgJ2xvY2EnLCAncHJlcCcsICdDRkYgJywgJ1ZPUkcnLCAnRUJEVCcsICdFQkxDJywgJ2dhc3AnLFxuICAnaGRteCcsICdrZXJuJywgJ0xUU0gnLCAnUENMVCcsICdWRE1YJywgJ3ZoZWEnLCAndm10eCcsICdCQVNFJywgJ0dERUYnLFxuICAnR1BPUycsICdHU1VCJywgJ0VCU0MnLCAnSlNURicsICdNQVRIJywgJ0NCRFQnLCAnQ0JMQycsICdDT0xSJywgJ0NQQUwnLFxuICAnU1ZHICcsICdzYml4JywgJ2FjbnQnLCAnYXZhcicsICdiZGF0JywgJ2Jsb2MnLCAnYnNsbicsICdjdmFyJywgJ2Zkc2MnLFxuICAnZmVhdCcsICdmbXR4JywgJ2Z2YXInLCAnZ3ZhcicsICdoc3R5JywgJ2p1c3QnLCAnbGNhcicsICdtb3J0JywgJ21vcngnLFxuICAnb3BiZCcsICdwcm9wJywgJ3RyYWsnLCAnWmFwZicsICdTaWxmJywgJ0dsYXQnLCAnR2xvYycsICdGZWF0JywgJ1NpbGwnXG5dO1xuXG5sZXQgV09GRjJEaXJlY3RvcnlFbnRyeSA9IG5ldyByLlN0cnVjdCh7XG4gIGZsYWdzOiByLnVpbnQ4LFxuICBjdXN0b21UYWc6IG5ldyByLk9wdGlvbmFsKG5ldyByLlN0cmluZyg0KSwgdCA9PiAodC5mbGFncyAmIDB4M2YpID09PSAweDNmKSxcbiAgdGFnOiB0ID0+IHQuY3VzdG9tVGFnIHx8IGtub3duVGFnc1t0LmZsYWdzICYgMHgzZl0sLy8gfHwgKCgpID0+IHsgdGhyb3cgbmV3IEVycm9yKGBCYWQgdGFnOiAke2ZsYWdzICYgMHgzZn1gKTsgfSkoKTsgfSxcbiAgbGVuZ3RoOiBCYXNlMTI4LFxuICB0cmFuc2Zvcm1WZXJzaW9uOiB0ID0+ICh0LmZsYWdzID4+PiA2KSAmIDB4MDMsXG4gIHRyYW5zZm9ybWVkOiB0ID0+ICh0LnRhZyA9PT0gJ2dseWYnIHx8IHQudGFnID09PSAnbG9jYScpID8gdC50cmFuc2Zvcm1WZXJzaW9uID09PSAwIDogdC50cmFuc2Zvcm1WZXJzaW9uICE9PSAwLFxuICB0cmFuc2Zvcm1MZW5ndGg6IG5ldyByLk9wdGlvbmFsKEJhc2UxMjgsIHQgPT4gdC50cmFuc2Zvcm1lZClcbn0pO1xuXG5sZXQgV09GRjJEaXJlY3RvcnkgPSBuZXcgci5TdHJ1Y3Qoe1xuICB0YWc6IG5ldyByLlN0cmluZyg0KSwgLy8gc2hvdWxkIGJlICd3T0YyJ1xuICBmbGF2b3I6IHIudWludDMyLFxuICBsZW5ndGg6IHIudWludDMyLFxuICBudW1UYWJsZXM6IHIudWludDE2LFxuICByZXNlcnZlZDogbmV3IHIuUmVzZXJ2ZWQoci51aW50MTYpLFxuICB0b3RhbFNmbnRTaXplOiByLnVpbnQzMixcbiAgdG90YWxDb21wcmVzc2VkU2l6ZTogci51aW50MzIsXG4gIG1ham9yVmVyc2lvbjogci51aW50MTYsXG4gIG1pbm9yVmVyc2lvbjogci51aW50MTYsXG4gIG1ldGFPZmZzZXQ6IHIudWludDMyLFxuICBtZXRhTGVuZ3RoOiByLnVpbnQzMixcbiAgbWV0YU9yaWdMZW5ndGg6IHIudWludDMyLFxuICBwcml2T2Zmc2V0OiByLnVpbnQzMixcbiAgcHJpdkxlbmd0aDogci51aW50MzIsXG4gIHRhYmxlczogbmV3IHIuQXJyYXkoV09GRjJEaXJlY3RvcnlFbnRyeSwgJ251bVRhYmxlcycpXG59KTtcblxuV09GRjJEaXJlY3RvcnkucHJvY2VzcyA9IGZ1bmN0aW9uKCkge1xuICBsZXQgdGFibGVzID0ge307XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy50YWJsZXMubGVuZ3RoOyBpKyspIHtcbiAgICBsZXQgdGFibGUgPSB0aGlzLnRhYmxlc1tpXTtcbiAgICB0YWJsZXNbdGFibGUudGFnXSA9IHRhYmxlO1xuICB9XG5cbiAgcmV0dXJuIHRoaXMudGFibGVzID0gdGFibGVzO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgV09GRjJEaXJlY3Rvcnk7XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgVFRGRm9udCBmcm9tICcuL1RURkZvbnQnO1xuaW1wb3J0IERpcmVjdG9yeSBmcm9tICcuL3RhYmxlcy9kaXJlY3RvcnknO1xuaW1wb3J0IHRhYmxlcyBmcm9tICcuL3RhYmxlcyc7XG5pbXBvcnQgeyBhc2NpaURlY29kZXIgfSBmcm9tICcuL3V0aWxzJztcblxubGV0IFRUQ0hlYWRlciA9IG5ldyByLlZlcnNpb25lZFN0cnVjdChyLnVpbnQzMiwge1xuICAweDAwMDEwMDAwOiB7XG4gICAgbnVtRm9udHM6ICAgci51aW50MzIsXG4gICAgb2Zmc2V0czogICAgbmV3IHIuQXJyYXkoci51aW50MzIsICdudW1Gb250cycpXG4gIH0sXG4gIDB4MDAwMjAwMDA6IHtcbiAgICBudW1Gb250czogICByLnVpbnQzMixcbiAgICBvZmZzZXRzOiAgICBuZXcgci5BcnJheShyLnVpbnQzMiwgJ251bUZvbnRzJyksXG4gICAgZHNpZ1RhZzogICAgci51aW50MzIsXG4gICAgZHNpZ0xlbmd0aDogci51aW50MzIsXG4gICAgZHNpZ09mZnNldDogci51aW50MzJcbiAgfVxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFRydWVUeXBlQ29sbGVjdGlvbiB7XG4gIHR5cGUgPSAnVFRDJztcblxuICBzdGF0aWMgcHJvYmUoYnVmZmVyKSB7XG4gICAgcmV0dXJuIGFzY2lpRGVjb2Rlci5kZWNvZGUoYnVmZmVyLnNsaWNlKDAsIDQpKSA9PT0gJ3R0Y2YnO1xuICB9XG5cbiAgY29uc3RydWN0b3Ioc3RyZWFtKSB7XG4gICAgdGhpcy5zdHJlYW0gPSBzdHJlYW07XG4gICAgaWYgKHN0cmVhbS5yZWFkU3RyaW5nKDQpICE9PSAndHRjZicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm90IGEgVHJ1ZVR5cGUgY29sbGVjdGlvbicpO1xuICAgIH1cblxuICAgIHRoaXMuaGVhZGVyID0gVFRDSGVhZGVyLmRlY29kZShzdHJlYW0pO1xuICB9XG5cbiAgZ2V0Rm9udChuYW1lKSB7XG4gICAgZm9yIChsZXQgb2Zmc2V0IG9mIHRoaXMuaGVhZGVyLm9mZnNldHMpIHtcbiAgICAgIGxldCBzdHJlYW0gPSBuZXcgci5EZWNvZGVTdHJlYW0odGhpcy5zdHJlYW0uYnVmZmVyKTtcbiAgICAgIHN0cmVhbS5wb3MgPSBvZmZzZXQ7XG4gICAgICBsZXQgZm9udCA9IG5ldyBUVEZGb250KHN0cmVhbSk7XG4gICAgICBpZiAoXG4gICAgICAgIGZvbnQucG9zdHNjcmlwdE5hbWUgPT09IG5hbWUgfHxcbiAgICAgICAgKFxuICAgICAgICAgIGZvbnQucG9zdHNjcmlwdE5hbWUgaW5zdGFuY2VvZiBVaW50OEFycmF5ICYmIFxuICAgICAgICAgIG5hbWUgaW5zdGFuY2VvZiBVaW50OEFycmF5ICYmIFxuICAgICAgICAgIGZvbnQucG9zdHNjcmlwdE5hbWUuZXZlcnkoKHYsIGkpID0+IG5hbWVbaV0gPT09IHYpXG4gICAgICAgIClcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gZm9udDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGdldCBmb250cygpIHtcbiAgICBsZXQgZm9udHMgPSBbXTtcbiAgICBmb3IgKGxldCBvZmZzZXQgb2YgdGhpcy5oZWFkZXIub2Zmc2V0cykge1xuICAgICAgbGV0IHN0cmVhbSA9IG5ldyByLkRlY29kZVN0cmVhbSh0aGlzLnN0cmVhbS5idWZmZXIpO1xuICAgICAgc3RyZWFtLnBvcyA9IG9mZnNldDtcbiAgICAgIGZvbnRzLnB1c2gobmV3IFRURkZvbnQoc3RyZWFtKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvbnRzO1xuICB9XG59XG4iLCAiaW1wb3J0ICogYXMgciBmcm9tICdyZXN0cnVjdHVyZSc7XG5pbXBvcnQgVFRGRm9udCBmcm9tICcuL1RURkZvbnQnO1xuXG5sZXQgREZvbnROYW1lID0gbmV3IHIuU3RyaW5nKHIudWludDgpO1xubGV0IERGb250RGF0YSA9IG5ldyByLlN0cnVjdCh7XG4gIGxlbjogci51aW50MzIsXG4gIGJ1ZjogbmV3IHIuQnVmZmVyKCdsZW4nKVxufSk7XG5cbmxldCBSZWYgPSBuZXcgci5TdHJ1Y3Qoe1xuICBpZDogci51aW50MTYsXG4gIG5hbWVPZmZzZXQ6IHIuaW50MTYsXG4gIGF0dHI6IHIudWludDgsXG4gIGRhdGFPZmZzZXQ6IHIudWludDI0LFxuICBoYW5kbGU6IHIudWludDMyXG59KTtcblxubGV0IFR5cGUgPSBuZXcgci5TdHJ1Y3Qoe1xuICBuYW1lOiBuZXcgci5TdHJpbmcoNCksXG4gIG1heFR5cGVJbmRleDogci51aW50MTYsXG4gIHJlZkxpc3Q6IG5ldyByLlBvaW50ZXIoci51aW50MTYsIG5ldyByLkFycmF5KFJlZiwgdCA9PiB0Lm1heFR5cGVJbmRleCArIDEpLCB7IHR5cGU6ICdwYXJlbnQnIH0pXG59KTtcblxubGV0IFR5cGVMaXN0ID0gbmV3IHIuU3RydWN0KHtcbiAgbGVuZ3RoOiByLnVpbnQxNixcbiAgdHlwZXM6IG5ldyByLkFycmF5KFR5cGUsIHQgPT4gdC5sZW5ndGggKyAxKVxufSk7XG5cbmxldCBERm9udE1hcCA9IG5ldyByLlN0cnVjdCh7XG4gIHJlc2VydmVkOiBuZXcgci5SZXNlcnZlZChyLnVpbnQ4LCAyNCksXG4gIHR5cGVMaXN0OiBuZXcgci5Qb2ludGVyKHIudWludDE2LCBUeXBlTGlzdCksXG4gIG5hbWVMaXN0T2Zmc2V0OiBuZXcgci5Qb2ludGVyKHIudWludDE2LCAndm9pZCcpXG59KTtcblxubGV0IERGb250SGVhZGVyID0gbmV3IHIuU3RydWN0KHtcbiAgZGF0YU9mZnNldDogci51aW50MzIsXG4gIG1hcDogbmV3IHIuUG9pbnRlcihyLnVpbnQzMiwgREZvbnRNYXApLFxuICBkYXRhTGVuZ3RoOiByLnVpbnQzMixcbiAgbWFwTGVuZ3RoOiByLnVpbnQzMlxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERGb250IHtcbiAgdHlwZSA9ICdERm9udCc7XG5cbiAgc3RhdGljIHByb2JlKGJ1ZmZlcikge1xuICAgIGxldCBzdHJlYW0gPSBuZXcgci5EZWNvZGVTdHJlYW0oYnVmZmVyKTtcblxuICAgIHRyeSB7XG4gICAgICB2YXIgaGVhZGVyID0gREZvbnRIZWFkZXIuZGVjb2RlKHN0cmVhbSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGZvciAobGV0IHR5cGUgb2YgaGVhZGVyLm1hcC50eXBlTGlzdC50eXBlcykge1xuICAgICAgaWYgKHR5cGUubmFtZSA9PT0gJ3NmbnQnKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHN0cmVhbSkge1xuICAgIHRoaXMuc3RyZWFtID0gc3RyZWFtO1xuICAgIHRoaXMuaGVhZGVyID0gREZvbnRIZWFkZXIuZGVjb2RlKHRoaXMuc3RyZWFtKTtcblxuICAgIGZvciAobGV0IHR5cGUgb2YgdGhpcy5oZWFkZXIubWFwLnR5cGVMaXN0LnR5cGVzKSB7XG4gICAgICBmb3IgKGxldCByZWYgb2YgdHlwZS5yZWZMaXN0KSB7XG4gICAgICAgIGlmIChyZWYubmFtZU9mZnNldCA+PSAwKSB7XG4gICAgICAgICAgdGhpcy5zdHJlYW0ucG9zID0gcmVmLm5hbWVPZmZzZXQgKyB0aGlzLmhlYWRlci5tYXAubmFtZUxpc3RPZmZzZXQ7XG4gICAgICAgICAgcmVmLm5hbWUgPSBERm9udE5hbWUuZGVjb2RlKHRoaXMuc3RyZWFtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZWYubmFtZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGUubmFtZSA9PT0gJ3NmbnQnKSB7XG4gICAgICAgIHRoaXMuc2ZudCA9IHR5cGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0Rm9udChuYW1lKSB7XG4gICAgaWYgKCF0aGlzLnNmbnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGZvciAobGV0IHJlZiBvZiB0aGlzLnNmbnQucmVmTGlzdCkge1xuICAgICAgbGV0IHBvcyA9IHRoaXMuaGVhZGVyLmRhdGFPZmZzZXQgKyByZWYuZGF0YU9mZnNldCArIDQ7XG4gICAgICBsZXQgc3RyZWFtID0gbmV3IHIuRGVjb2RlU3RyZWFtKHRoaXMuc3RyZWFtLmJ1ZmZlci5zbGljZShwb3MpKTtcbiAgICAgIGxldCBmb250ID0gbmV3IFRURkZvbnQoc3RyZWFtKTtcbiAgICAgIGlmIChcbiAgICAgICAgZm9udC5wb3N0c2NyaXB0TmFtZSA9PT0gbmFtZSB8fFxuICAgICAgICAoXG4gICAgICAgICAgZm9udC5wb3N0c2NyaXB0TmFtZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkgJiYgXG4gICAgICAgICAgbmFtZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkgJiYgXG4gICAgICAgICAgZm9udC5wb3N0c2NyaXB0TmFtZS5ldmVyeSgodiwgaSkgPT4gbmFtZVtpXSA9PT0gdilcbiAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBmb250O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZ2V0IGZvbnRzKCkge1xuICAgIGxldCBmb250cyA9IFtdO1xuICAgIGZvciAobGV0IHJlZiBvZiB0aGlzLnNmbnQucmVmTGlzdCkge1xuICAgICAgbGV0IHBvcyA9IHRoaXMuaGVhZGVyLmRhdGFPZmZzZXQgKyByZWYuZGF0YU9mZnNldCArIDQ7XG4gICAgICBsZXQgc3RyZWFtID0gbmV3IHIuRGVjb2RlU3RyZWFtKHRoaXMuc3RyZWFtLmJ1ZmZlci5zbGljZShwb3MpKTtcbiAgICAgIGZvbnRzLnB1c2gobmV3IFRURkZvbnQoc3RyZWFtKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvbnRzO1xuICB9XG59XG4iLCAiaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCAqIGFzIGZvbnRraXQgZnJvbSAnZm9udGtpdCdcblxuY29uc3QgX2NvbmZpZyA9IHsgZm9udEZhbWlseU1hcHBpbmdzOiB7fSB9XG5jb25zdCBmb250cyA9IHt9XG5cbmV4cG9ydCBjb25zdCBzZXRGb250RGlyID0gZnVuY3Rpb24gKGRpcikge1xuICBfY29uZmlnLmZvbnREaXIgPSBkaXJcbiAgcmV0dXJuIHRoaXNcbn1cblxuZXhwb3J0IGNvbnN0IHNldEZvbnRGYW1pbHlNYXBwaW5ncyA9IGZ1bmN0aW9uIChtYXApIHtcbiAgX2NvbmZpZy5mb250RmFtaWx5TWFwcGluZ3MgPSBtYXBcbiAgcmV0dXJuIHRoaXNcbn1cblxuLy8gVE9ETzogbWFrZSBhc3luY1xuZXhwb3J0IGNvbnN0IHByZWxvYWRGb250cyA9ICgpID0+IHtcbiAgY29uc3QgbWFwID0gX2NvbmZpZy5mb250RmFtaWx5TWFwcGluZ3NcblxuICBmb3IgKGNvbnN0IFsgZm9udCwgZmlsZSBdIG9mIE9iamVjdC5lbnRyaWVzKG1hcCkpIHtcbiAgICBjb25zdCBmaWxlbmFtZSA9IHBhdGguam9pbihfY29uZmlnLmZvbnREaXIsIGZpbGUpXG5cbiAgICB0cnkge1xuICAgICAgZm9udHNbZm9udF0gPSBmb250a2l0Lm9wZW5TeW5jKGZpbGVuYW1lKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybihgQ291bGQgbm90IGxvYWQgZm9udCBmaWxlIGZvciAke2ZvbnR9YCwgZSlcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRoaXNcbn1cblxuZXhwb3J0IGNvbnN0IGdldENvbmZpZyA9ICgpID0+IF9jb25maWdcbmV4cG9ydCBjb25zdCBnZXRGb250cyA9ICgpID0+IGZvbnRzXG5cbmV4cG9ydCBjb25zdCBjb25maWcgPSB7XG4gIHNldEZvbnREaXIsXG4gIHNldEZvbnRGYW1pbHlNYXBwaW5ncyxcbiAgcHJlbG9hZEZvbnRzLFxuICBnZXRDb25maWcsXG4gIGdldEZvbnRzXG59XG4iLCAiaW1wb3J0ICogYXMgcGF0aFV0aWxzIGZyb20gJy4vcGF0aFV0aWxzLmpzJ1xuaW1wb3J0ICogYXMgcmVnZXggZnJvbSAnLi9yZWdleC5qcydcbmltcG9ydCAqIGFzIHRleHRVdGlscyBmcm9tICcuL3RleHRVdGlscy5qcydcbmltcG9ydCB7IE5vQm94IH0gZnJvbSAnLi4vb3RoZXIvQm94LmpzJ1xuaW1wb3J0IHsgTm9kZUl0ZXJhdG9yIH0gZnJvbSAnLi9Ob2RlSXRlcmF0b3IuanMnXG5pbXBvcnQgeyBOb2RlRmlsdGVyIH0gZnJvbSAnLi4vZG9tL05vZGVGaWx0ZXIuanMnXG5cbmNvbnN0IGFwcGx5VHJhbnNmb3JtYXRpb24gPSAoc2VnbWVudHMsIG5vZGUsIGFwcGx5VHJhbnNmb3JtYXRpb25zKSA9PiB7XG4gIGlmIChub2RlLm1hdHJpeGlmeSAmJiBhcHBseVRyYW5zZm9ybWF0aW9ucykge1xuICAgIHJldHVybiBzZWdtZW50cy50cmFuc2Zvcm0obm9kZS5tYXRyaXhpZnkoKSlcbiAgfVxuICByZXR1cm4gc2VnbWVudHNcbn1cblxuZXhwb3J0IGNvbnN0IGdldFNlZ21lbnRzID0gKG5vZGUsIGFwcGx5VHJhbnNmb3JtYXRpb25zLCByYm94ID0gZmFsc2UpID0+IHtcbiAgY29uc3Qgc2VnbWVudHMgPSBnZXRQYXRoU2VnbWVudHMobm9kZSwgcmJveClcbiAgcmV0dXJuIGFwcGx5VHJhbnNmb3JtYXRpb24oc2VnbWVudHMsIG5vZGUsIGFwcGx5VHJhbnNmb3JtYXRpb25zKVxufVxuXG5jb25zdCBnZXRQYXRoU2VnbWVudHMgPSAobm9kZSwgcmJveCkgPT4ge1xuICBpZiAobm9kZS5ub2RlVHlwZSAhPT0gMSkgcmV0dXJuIG5ldyBwYXRoVXRpbHMuUGF0aFNlZ21lbnRBcnJheSgpXG5cbiAgc3dpdGNoIChub2RlLm5vZGVOYW1lKSB7XG4gIGNhc2UgJ3JlY3QnOlxuICBjYXNlICdpbWFnZSc6XG4gIGNhc2UgJ3BhdHRlcm4nOlxuICBjYXNlICdtYXNrJzpcbiAgY2FzZSAnZm9yZWlnbk9iamVjdCc6XG4gICAgLy8gQ3JlYXRlIFBhdGggZnJvbSByZWN0IGFuZCBjcmVhdGUgUG9pbnRDbG91ZCBmcm9tIFBhdGhcbiAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20ucmVjdChub2RlKSlcbiAgY2FzZSAnc3ZnJzpcbiAgY2FzZSAnc3ltYm9sJzpcbiAgICAvLyByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20ucmVjdChub2RlKSlcbiAgICBpZiAocmJveCkge1xuICAgICAgcmV0dXJuIHBhdGhVdGlscy5nZXRQYXRoU2VnbWVudHMocGF0aFV0aWxzLnBhdGhGcm9tLnJlY3Qobm9kZSkpXG4gICAgfVxuICAvLyBBVFRFTlRJT046IEZBTEwgVEhST1VHSFxuICAvLyBCZWNhdXNlIG5vcm1hbCBiYm94IGlzIGNhbGN1bGF0ZWQgYnkgdGhlIGNvbnRlbnQgb2YgdGhlIGVsZW1lbnQgYW5kIG5vdCBpdHMgd2lkdGggYW5kIGhlaWdodFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY2FzZSAnZyc6XG4gIGNhc2UgJ2NsaXBQYXRoJzpcbiAgY2FzZSAnYSc6XG4gIGNhc2UgJ21hcmtlcic6XG4gICAgLy8gSXRlcmF0ZSB0cm91Z2ggYWxsIGNoaWxkcmVuIGFuZCBnZXQgdGhlIHBvaW50IGNsb3VkIG9mIGVhY2hcbiAgICAvLyBUaGVuIHRyYW5zZm9ybSBpdCB3aXRoIHZpZXdib3ggbWF0cml4IGlmIG5lZWRlZFxuICAgIHJldHVybiBub2RlLmNoaWxkTm9kZXMucmVkdWNlKChzZWdtZW50cywgY2hpbGQpID0+IHtcbiAgICAgIGlmICghY2hpbGQubWF0cml4aWZ5KSByZXR1cm4gc2VnbWVudHNcbiAgICAgIHJldHVybiBzZWdtZW50cy5tZXJnZShnZXRTZWdtZW50cyhjaGlsZCwgdHJ1ZSkudHJhbnNmb3JtKGNoaWxkLmdlbmVyYXRlVmlld0JveE1hdHJpeCgpKSlcbiAgICB9LCBuZXcgcGF0aFV0aWxzLlBhdGhTZWdtZW50QXJyYXkoKSlcbiAgY2FzZSAnY2lyY2xlJzpcbiAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20uY2lyY2xlKG5vZGUpKVxuICBjYXNlICdlbGxpcHNlJzpcbiAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhwYXRoVXRpbHMucGF0aEZyb20uZWxsaXBzZShub2RlKSlcbiAgY2FzZSAnbGluZSc6XG4gICAgcmV0dXJuIHBhdGhVdGlscy5nZXRQYXRoU2VnbWVudHMocGF0aFV0aWxzLnBhdGhGcm9tLmxpbmUobm9kZSkpXG4gIGNhc2UgJ3BvbHlsaW5lJzpcbiAgY2FzZSAncG9seWdvbic6XG4gICAgcmV0dXJuIHBhdGhVdGlscy5nZXRQYXRoU2VnbWVudHMocGF0aFV0aWxzLnBhdGhGcm9tLnBvbHlsaW5lKG5vZGUpKVxuICBjYXNlICdwYXRoJzpcbiAgY2FzZSAnZ2x5cGgnOlxuICBjYXNlICdtaXNzaW5nLWdseXBoJzpcbiAgICByZXR1cm4gcGF0aFV0aWxzLmdldFBhdGhTZWdtZW50cyhub2RlLmdldEF0dHJpYnV0ZSgnZCcpKVxuICBjYXNlICd1c2UnOiB7XG4gICAgLy8gR2V0IHJlZmVyZW5jZSBmcm9tIGVsZW1lbnRcbiAgICBjb25zdCByZWYgPSBub2RlLmdldEF0dHJpYnV0ZSgnaHJlZicpIHx8IG5vZGUuZ2V0QXR0cmlidXRlKCd4bGluazpocmVmJylcbiAgICAvLyBHZXQgdGhlIGFjdHVhbCByZWZlcmVuY2VkIE5vZGVcbiAgICBjb25zdCByZWZOb2RlID0gbm9kZS5nZXRSb290Tm9kZSgpLnF1ZXJ5U2VsZWN0b3IocmVmKVxuICAgIC8vIEdldCB0aGUgQkJveCBvZiB0aGUgcmVmZXJlbmNlZCBlbGVtZW50IGFuZCBhcHBseSB0aGUgdmlld2JveCBvZiA8dXNlPlxuICAgIC8vIFRPRE86IERvIHdlIG5lZWQgdG8gYXBwbHkgdGhlIHRyYW5zZm9ybWF0aW9ucyBvZiB0aGUgZWxlbWVudD9cbiAgICAvLyBDaGVjayBiYm94IG9mIHRyYW5zZm9ybWVkIGVsZW1lbnQgd2hpY2ggaXMgcmV1c2VkIHdpdGggPHVzZT5cbiAgICByZXR1cm4gZ2V0U2VnbWVudHMocmVmTm9kZSkudHJhbnNmb3JtKG5vZGUuZ2VuZXJhdGVWaWV3Qm94TWF0cml4KCkpXG4gIH1cbiAgY2FzZSAndHNwYW4nOlxuICBjYXNlICd0ZXh0JzpcbiAgY2FzZSAnYWx0R2x5cGgnOiB7XG4gICAgY29uc3QgYm94ID0gZ2V0VGV4dEJCb3gobm9kZSlcblxuICAgIGlmIChib3ggaW5zdGFuY2VvZiBOb0JveCkge1xuICAgICAgcmV0dXJuIG5ldyBwYXRoVXRpbHMuUGF0aFNlZ21lbnRBcnJheSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGhVdGlscy5nZXRQYXRoU2VnbWVudHMocGF0aFV0aWxzLnBhdGhGcm9tLmJveChib3gpKVxuICB9XG4gIGRlZmF1bHQ6XG4gICAgcmV0dXJuIG5ldyBwYXRoVXRpbHMuUGF0aFNlZ21lbnRBcnJheSgpXG4gIH1cbn1cblxuY29uc3QgZ2V0VGV4dEJCb3ggPSAobm9kZSkgPT4ge1xuICBjb25zdCB0ZXh0Um9vdCA9IGZpbmRUZXh0Um9vdChub2RlKVxuICBjb25zdCBib3hlcyA9IGdldFRleHRCQm94ZXMobm9kZSwgdGV4dFJvb3QpXG4gIHJldHVybiBib3hlcy5maWx0ZXIoaXNOb3RFbXB0eUJveCkucmVkdWNlKChsYXN0LCBjdXJyKSA9PiBsYXN0Lm1lcmdlKGN1cnIpLCBuZXcgTm9Cb3goKSlcbn1cblxuY29uc3QgZmluZFRleHRSb290ID0gKG5vZGUpID0+IHtcbiAgd2hpbGUgKG5vZGUucGFyZW50Tm9kZSkge1xuICAgIGlmICgobm9kZS5ub2RlTmFtZSA9PT0gJ3RleHQnICYmIG5vZGUucGFyZW50Tm9kZS5ub2RlTmFtZSA9PT0gJ3RleHQnKVxuICAgIHx8ICgobm9kZS5ub2RlTmFtZSA9PT0gJ3RzcGFuJyB8fCBub2RlLm5vZGVOYW1lID09PSAndGV4dFBhdGgnKSAmJiBbICd0c3BhbicsICd0ZXh0JywgJ3RleHRQYXRoJyBdLmluY2x1ZGVzKG5vZGUucGFyZW50Tm9kZS5ub2RlTmFtZSkpKSB7XG4gICAgICBub2RlID0gbm9kZS5wYXJlbnROb2RlXG4gICAgfSBlbHNlIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG5vZGVcbn1cblxuLy8gVGhpcyBmdW5jdGlvbiB0YWtlcyBhIG5vZGUgb2Ygd2hpY2ggdGhlIGJib3ggbmVlZHMgdG8gYmUgY2FsY3VsYXRlZFxuLy8gSW4gb3JkZXIgdG8gcG9zaXRpb24gdGhlIGJveCBjb3JyZWN0bHksIHdlIG5lZWQgdG8ga25vdyB3ZXJlIHRoZSBwYXJlbnQgYW5kIHdlcmUgdGhlIHNpYmxpbmdzICpiZWZvcmUqIG91ciBub2RlIGFyZVxuLy8gVGhhdHMgd2h5IGEgdGV4dFJvb3QgaXMgcGFzc2VkIHdoaWNoIGlzIHRoZSBtb3N0IG91dGVyIHRleHRFbGVtZW50IG5lZWRlZCB0byBjYWxjdWxhdGUgYWxsIGJveGVzXG4vLyBXaGVuIHRoZSBpdGVyYXRvciBoaXRzIHRoZSBlbGVtZW50IHdlIG5lZWQgdGhlIGJib3ggb2YsIGl0IGlzIHRlcm1pbmF0ZWQgYW5kIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGFnYWluXG4vLyBvbmx5IGZvciB0aGUgc3Vic3RyZWUgb2Ygb3VyIG5vZGUgYW5kIHdpdGhvdXQgdGV4dFJvb3IgYnV0IGluc3RlYWQgcG9zLCBkeCBhbmQgZHkgYXJlIGtub3duXG5jb25zdCBnZXRUZXh0QkJveGVzID0gZnVuY3Rpb24gKHRhcmdldCwgdGV4dFJvb3QgPSB0YXJnZXQsIHBvcyA9IHsgeDogMCwgeTogMCB9LCBkeCA9IFsgMCBdLCBkeSA9IFsgMCBdLCBib3hlcyA9IFtdKSB7XG5cbiAgLy8gQ3JlYXRlIE5vZGVJdGVyYXRvci4gT25seSBzaG93IGVsZW1udHMgYW5kIHRleHQgYW5kIHNraXAgZGVzY3JpcHRpdmUgZWxlbWVudHNcbiAgLy8gVE9ETzogbWFrZSBhbiBpbnN0YW5jZW9mIGNoZWNrIGZvciBEZXNjcmlwdGl2ZUVsZW1lbnQgaW5zdGVhZCBvZiB0ZXN0aW5nIG9uZSBieSBvbmVcbiAgLy8gT25seSB0aXRsZSBpcyBza2lwcGVkIGF0bVxuICBjb25zdCBpdGVyID0gbmV3IE5vZGVJdGVyYXRvcih0ZXh0Um9vdCwgTm9kZUZpbHRlci5TSE9XX0VMRU1FTlQgfCBOb2RlRmlsdGVyLlNIT1dfVEVYVCwgKG5vZGUpID0+IHtcbiAgICBpZiAobm9kZS5ub2RlTmFtZSA9PT0gJ3RpdGxlJykgcmV0dXJuIE5vZGVGaWx0ZXIuRklMVEVSX0lHTk9SRVxuICAgIHJldHVybiBOb2RlRmlsdGVyLkZJTFRFUl9BQ0NFUFRcbiAgfSlcblxuICAvLyBJdGVyYXRlIHRyb3VnaCBhbGwgbm9kZXMgdG9wIHRvIGJvdHRvbSwgbGVmdCB0byByaWdodFxuICBmb3IgKGNvbnN0IG5vZGUgb2YgaXRlcikge1xuXG4gICAgLy8gSWYgd2UgaGl0IG91ciB0YXJnZXQsIHdlIGdhdGhlcmVkIGFsbCBwb3NpdGlvbmFsIGluZm9ybWF0aW9uIHdlIG5lZWQgdG8gbW92ZSB0aGUgYmJveCB0byB0aGUgY29ycmVjdCBzcG90XG4gICAgaWYgKG5vZGUgPT09IHRhcmdldCAmJiBub2RlICE9PSB0ZXh0Um9vdCkge1xuICAgICAgcmV0dXJuIGdldFRleHRCQm94ZXMobm9kZSwgbm9kZSwgcG9zLCBkeCwgZHkpXG4gICAgfVxuXG4gICAgLy8gVHJhdmVyc2UgdHJvdWdoIHRoaXMgbm9kZSB1cGRhdGluZyBwb3NpdGlvbnMgYW5kIGFkZCBib3hlc1xuICAgIGdldFBvc2l0aW9uRGV0YWlsc0Zvcihub2RlLCBwb3MsIGR4LCBkeSwgYm94ZXMpXG4gIH1cblxuICByZXR1cm4gYm94ZXNcbn1cblxuY29uc3QgaXNOb3RFbXB0eUJveCA9IGJveCA9PiBib3gueCAhPT0gMCB8fCBib3gueSAhPT0gMCB8fCBib3gud2lkdGggIT09IDAgfHwgYm94LmhlaWdodCAhPT0gMFxuXG4vLyBUaGlzIGZ1bmN0aW9uIGVpdGhlciB1cGRhdGVzIHBvcywgZHggYW5kIGR5ICh3aGVuIGl0cyBhbiBlbGVtZW50KSBvciBjYWxjdWxhdGVzIHRoZSBib3hlcyBmb3IgdGV4dCB3aXRoIHRoZSBwYXNzZWQgYXJndW1lbnRzXG4vLyBBbGwgYXJndW1lbnRzIGFyZSBwYXNzZWQgYnkgcmVmZXJlbmNlIHNvIGRvbnQgb3ZlcndyaXRlIHRoZW0gKHRyZWF0IHRoZW0gYXMgY29uc3QhKVxuLy8gVE9ETzogQnJlYWsgdGhpcyBpbnRvIHR3byBmdW5jdGlvbnM/XG5jb25zdCBnZXRQb3NpdGlvbkRldGFpbHNGb3IgPSAobm9kZSwgcG9zLCBkeCwgZHksIGJveGVzKSA9PiB7XG4gIGlmIChub2RlLm5vZGVUeXBlID09PSBub2RlLkVMRU1FTlRfTk9ERSkge1xuICAgIGNvbnN0IHggPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd4JykpXG4gICAgY29uc3QgeSA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3knKSlcblxuICAgIHBvcy54ID0gaXNOYU4oeCkgPyBwb3MueCA6IHhcbiAgICBwb3MueSA9IGlzTmFOKHkpID8gcG9zLnkgOiB5XG5cbiAgICBjb25zdCBkeDAgPSAobm9kZS5nZXRBdHRyaWJ1dGUoJ2R4JykgfHwgJycpLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikuZmlsdGVyKG51bSA9PiBudW0gIT09ICcnKS5tYXAocGFyc2VGbG9hdClcbiAgICBjb25zdCBkeTAgPSAobm9kZS5nZXRBdHRyaWJ1dGUoJ2R5JykgfHwgJycpLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikuZmlsdGVyKG51bSA9PiBudW0gIT09ICcnKS5tYXAocGFyc2VGbG9hdClcblxuICAgIC8vIFRPRE86IGV2ZW50dWFsbHkgcmVwbGFjZSBvbmx5IGFzIG11Y2ggdmFsdWVzIGFzIHdlIGhhdmUgdGV4dCBjaGFycyAobm9kZS50ZXh0Q29udGVudC5sZW5ndGgpIGJlY2F1c2Ugd2UgY291bGQgZW5kIHVwIGFkZGluZyB0byBtdWNoXG4gICAgLy8gcmVwbGFjZSBpbml0aWFsIHZhbHVlcyB3aXRoIG5vZGUgdmFsdWVzIGlmIHByZXNlbnRcbiAgICBkeC5zcGxpY2UoMCwgZHgwLmxlbmd0aCwgLi4uZHgwKVxuICAgIGR5LnNwbGljZSgwLCBkeTAubGVuZ3RoLCAuLi5keTApXG4gIH0gZWxzZSB7XG4gICAgLy8gZ2V0IHRleHQgZGF0YVxuICAgIGNvbnN0IGRhdGEgPSBub2RlLmRhdGFcblxuICAgIGxldCBqID0gMFxuICAgIGNvbnN0IGpsID0gZGF0YS5sZW5ndGhcbiAgICBjb25zdCBkZXRhaWxzID0gZ2V0Rm9udERldGFpbHMobm9kZSlcblxuICAgIC8vIGlmIGl0IGlzIG1vcmUgdGhhbiBvbmUgZHgvZHkgc2luZ2xlIGxldHRlcnMgYXJlIG1vdmVkIGJ5IHRoZSBhbW91bnQgKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL1NWRy9BdHRyaWJ1dGUvZHgpXG4gICAgaWYgKGR5Lmxlbmd0aCB8fCBkeC5sZW5ndGgpIHtcbiAgICAgIGZvciAoO2ogPCBqbDsgaisrKSB7XG4gICAgICAgIC8vIENhbGN1bGF0ZSBhIGJveCBmb3IgYSBzaW5nbGUgbGV0dGVyXG4gICAgICAgIGJveGVzLnB1c2godGV4dFV0aWxzLnRleHRCQm94KGRhdGEuc3Vic3RyKGosIDEpLCBwb3MueCwgcG9zLnksIGRldGFpbHMpKVxuXG4gICAgICAgIC8vIEFkZCB0aGUgbmV4dCBwb3NpdGlvbiB0byBjdXJyZW50IG9uZVxuICAgICAgICBwb3MueCArPSBkeC5zaGlmdCgpIHx8IDBcbiAgICAgICAgcG9zLnkgKz0gZHkuc2hpZnQoKSB8fCAwXG5cbiAgICAgICAgaWYgKCFkeS5sZW5ndGggJiYgIWR4Lmxlbmd0aCkgYnJlYWtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpbiBjYXNlIGl0IHdhcyBvbmx5IG9uZSBkeC9keSBvciBubyBtb3JlIGR4L2R5IG1vdmUgdGhlIHJlc3Qgb2YgdGhlIHRleHRcbiAgICBib3hlcy5wdXNoKHRleHRVdGlscy50ZXh0QkJveChkYXRhLnN1YnN0cihqKSwgcG9zLngsIHBvcy55LCBkZXRhaWxzKSlcbiAgICBwb3MueCArPSBib3hlc1tib3hlcy5sZW5ndGggLSAxXS53aWR0aFxuICB9XG59XG5cbi8qXG4vLyB0aGlzIGZ1bmN0aW9uIGlzIHBhc3NpbmcgZHggYW5kIGR5IHZhbHVlcyBieSByZWZlcmVuY2VzLiBEb250IGFzc2lnbiBuZXcgdmFsdWVzIHRvIGl0XG5jb25zdCB0ZXh0SXRlcmF0b3IgPSBmdW5jdGlvbiAobm9kZSwgcG9zID0geyB4OiAwLCB5OiAwIH0sIGR4ID0gWyAwIF0sIGR5ID0gWyAwIF0pIHtcblxuICB2YXIgeCA9IHBhcnNlRmxvYXQobm9kZS5nZXRBdHRyaWJ1dGUoJ3gnKSlcbiAgdmFyIHkgPSBwYXJzZUZsb2F0KG5vZGUuZ2V0QXR0cmlidXRlKCd5JykpXG5cbiAgcG9zLnggPSBpc05hTih4KSA/IHBvcy54IDogeFxuICBwb3MueSA9IGlzTmFOKHkpID8gcG9zLnkgOiB5XG5cbiAgdmFyIGR4MCA9IChub2RlLmdldEF0dHJpYnV0ZSgnZHgnKSB8fCAnJykuc3BsaXQocmVnZXguZGVsaW1pdGVyKS5maWx0ZXIobnVtID0+IG51bSAhPT0gJycpLm1hcChwYXJzZUZsb2F0KVxuICB2YXIgZHkwID0gKG5vZGUuZ2V0QXR0cmlidXRlKCdkeScpIHx8ICcnKS5zcGxpdChyZWdleC5kZWxpbWl0ZXIpLmZpbHRlcihudW0gPT4gbnVtICE9PSAnJykubWFwKHBhcnNlRmxvYXQpXG4gIHZhciBib3hlcyA9IFtdXG4gIHZhciBkYXRhID0gJydcblxuICAvLyBUT0RPOiBldmVudHVhbGx5IHJlcGxhY2Ugb25seSBhcyBtdWNoIHZhbHVlcyBhcyB3ZSBoYXZlIHRleHQgY2hhcnMgKG5vZGUudGV4dENvbnRlbnQubGVuZ3RoKSBiZWNhdXNlIHdlIGNvdWxkIGVuZCB1cCBhZGRpbmcgdG8gbXVjaFxuICAvLyByZXBsYWNlIGluaXRpYWwgdmFsdWVzIHdpdGggbm9kZSB2YWx1ZXMgaWYgcHJlc2VudFxuICBkeC5zcGxpY2UoMCwgZHgwLmxlbmd0aCwgLi4uZHgwKVxuICBkeS5zcGxpY2UoMCwgZHkwLmxlbmd0aCwgLi4uZHkwKVxuXG4gIHZhciBpID0gMFxuICB2YXIgaWwgPSBub2RlLmNoaWxkTm9kZXMubGVuZ3RoXG5cbiAgLy8gaXRlcmF0ZSB0aHJvdWdoIGFsbCBjaGlsZHJlblxuICBmb3IgKDsgaSA8IGlsOyArK2kpIHtcblxuICAgIC8vIHNoaWZ0IG5leHQgY2hpbGRcbiAgICBwb3MueCArPSBkeC5zaGlmdCgpIHx8IDBcbiAgICBwb3MueSArPSBkeS5zaGlmdCgpIHx8IDBcblxuICAgIC8vIHRleHRcbiAgICBpZiAobm9kZS5jaGlsZE5vZGVzW2ldLm5vZGVUeXBlID09PSBub2RlLlRFWFRfTk9ERSkge1xuXG4gICAgICAvLyBnZXQgdGV4dCBkYXRhXG4gICAgICBkYXRhID0gbm9kZS5jaGlsZE5vZGVzW2ldLmRhdGFcblxuICAgICAgbGV0IGogPSAwXG4gICAgICBjb25zdCBqbCA9IGRhdGEubGVuZ3RoXG5cbiAgICAgIC8vIGlmIGl0IGlzIG1vcmUgdGhhbiBvbmUgZHgvZHkgc2luZ2xlIGxldHRlcnMgYXJlIG1vdmVkIGJ5IHRoZSBhbW91bnQgKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL1NWRy9BdHRyaWJ1dGUvZHgpXG4gICAgICBpZiAoZHkubGVuZ3RoIHx8IGR4Lmxlbmd0aCkge1xuICAgICAgICBmb3IgKDtqIDwgamw7IGorKykge1xuICAgICAgICAgIGJveGVzLnB1c2godGV4dFV0aWxzLnRleHRCQm94KGRhdGEuc3Vic3RyKGosIDEpLCBwb3MueCwgcG9zLnksIGdldEZvbnREZXRhaWxzKG5vZGUpKSlcblxuICAgICAgICAgIHBvcy54ICs9IGR4LnNoaWZ0KCkgfHwgMFxuICAgICAgICAgIHBvcy55ICs9IGR5LnNoaWZ0KCkgfHwgMFxuXG4gICAgICAgICAgaWYgKCFkeS5sZW5ndGggJiYgIWR4Lmxlbmd0aCkgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBpbiBjYXNlIGl0IHdhcyBvbmx5IG9uZSBkeC9keSBvciBubyBtb3JlIGR4L2R5IG1vdmUgdGhlIHJlc3Qgb2YgdGhlIHRleHRcblxuICAgICAgYm94ZXMucHVzaCh0ZXh0VXRpbHMudGV4dEJCb3goZGF0YS5zdWJzdHIoaiksIHBvcy54LCBwb3MueSwgZ2V0Rm9udERldGFpbHMobm9kZSkpKVxuICAgICAgcG9zLnggKz0gYm94ZXNbYm94ZXMubGVuZ3RoIC0gMV0ud2lkdGhcblxuICAgIC8vIGVsZW1lbnRcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gaW4gY2FzZSBvZiBlbGVtZW50LCByZWN1cnNpdmVseSBjYWxsIGZ1bmN0aW9uIGFnYWluIHdpdGggbmV3IHN0YXJ0IHZhbHVlc1xuICAgICAgYm94ZXMgPSBib3hlcy5jb25jYXQodGV4dEl0ZXJhdG9yKG5vZGUuY2hpbGROb2Rlc1tpXSwgcG9zLCBkeCwgZHkpKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBib3hlc1xufSAqL1xuXG5jb25zdCBnZXRGb250RGV0YWlscyA9IChub2RlKSA9PiB7XG4gIGlmIChub2RlLm5vZGVUeXBlID09PSBub2RlLlRFWFRfTk9ERSkgbm9kZSA9IG5vZGUucGFyZW50Tm9kZVxuXG4gIGxldCBmb250U2l6ZSA9IG51bGxcbiAgbGV0IGZvbnRGYW1pbHkgPSBudWxsXG4gIGxldCB0ZXh0QW5jaG9yID0gbnVsbFxuICBsZXQgZG9taW5hbnRCYXNlbGluZSA9IG51bGxcblxuICBjb25zdCB0ZXh0Q29udGVudEVsZW1lbnRzID0gW1xuICAgICd0ZXh0JyxcbiAgICAndHNwYW4nLFxuICAgICd0cmVmJyxcbiAgICAndGV4dFBhdGgnLFxuICAgICdhbHRHbHlwaCcsXG4gICAgJ2cnXG4gIF1cblxuICBkbyB7XG4gICAgLy8gVE9ETzogc3RvcCBvblxuICAgIGlmICghZm9udFNpemUpIHsgZm9udFNpemUgPSBub2RlLnN0eWxlLmZvbnRTaXplIHx8IG5vZGUuZ2V0QXR0cmlidXRlKCdmb250LXNpemUnKSB9XG4gICAgaWYgKCFmb250RmFtaWx5KSB7IGZvbnRGYW1pbHkgPSBub2RlLnN0eWxlLmZvbnRGYW1pbHkgfHwgbm9kZS5nZXRBdHRyaWJ1dGUoJ2ZvbnQtZmFtaWx5JykgfVxuICAgIGlmICghdGV4dEFuY2hvcikgeyB0ZXh0QW5jaG9yID0gbm9kZS5zdHlsZS50ZXh0QW5jaG9yIHx8IG5vZGUuZ2V0QXR0cmlidXRlKCd0ZXh0LWFuY2hvcicpIH1cbiAgICBpZiAoIWRvbWluYW50QmFzZWxpbmUpIHsgZG9taW5hbnRCYXNlbGluZSA9IG5vZGUuc3R5bGUuZG9taW5hbnRCYXNlbGluZSB8fCBub2RlLmdldEF0dHJpYnV0ZSgnZG9taW5hbnQtYmFzZWxpbmUnKSB9XG4gICAgLy8gVE9ETzogY2hlY2sgZm9yIGFsaWdubWVudC1iYXNlbGluZSBpbiB0c3BhbiwgdHJlZiwgdGV4dFBhdGgsIGFsdEdseXBoXG4gICAgLy8gVE9ETzogYWxpZ25tZW50LWFkanVzdCwgYmFzZWxpbmUtc2hpZnRcbiAgICAvKlxuICAgIGlmKCFhbGlnbm1lbnRCYXNlbGluZSlcbiAgICBhbGlnbm1lbnRCYXNlbGluZSA9IHRoaXMuc3R5bGUuYWxpZ25tZW50QmFzZWxpbmUgfHwgdGhpcy5nZXRBdHRyaWJ1dGUoJ2FsaWdubWVudC1iYXNlbGluZScpXG4gICAgKi9cblxuICB9IHdoaWxlIChcbiAgICAobm9kZSA9IG5vZGUucGFyZW50Tm9kZSlcbiAgICAmJiBub2RlLm5vZGVUeXBlID09PSBub2RlLkVMRU1FTlRfTk9ERVxuICAgICYmICh0ZXh0Q29udGVudEVsZW1lbnRzLmluY2x1ZGVzKG5vZGUubm9kZU5hbWUpKVxuICApXG5cbiAgcmV0dXJuIHtcbiAgICBmb250RmFtaWx5LFxuICAgIGZvbnRTaXplLFxuICAgIHRleHRBbmNob3I6IHRleHRBbmNob3IgfHwgJ3N0YXJ0JyxcbiAgICAvLyBUT0RPOiB1c2UgY2VudHJhbCBmb3Igd3JpdGluZy1tb2RlID09PSBob3Jpem9udGFsIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL1NWRy9BdHRyaWJ1dGUvZG9taW5hbnQtYmFzZWxpbmVcbiAgICBkb21pbmFudEJhc2VsaW5lOiBkb21pbmFudEJhc2VsaW5lIHx8ICdhbHBoYWJldGljYWwnXG4gICAgLy8gZm9udEZhbWlseU1hcHBpbmdzOiB0aGlzLm93bmVyRG9jdW1lbnQuZm9udEZhbWlseU1hcHBpbmdzLFxuICAgIC8vIGZvbnREaXI6IHRoaXMub3duZXJEb2N1bWVudC5mb250RGlyLFxuICAgIC8vIHByZWxvYWRlZDogdGhpcy5vd25lckRvY3VtZW50Ll9wcmVsb2FkZWRcbiAgfVxufVxuIiwgImltcG9ydCB7IFNWR0VsZW1lbnQgfSBmcm9tICcuL1NWR0VsZW1lbnQuanMnXG5pbXBvcnQgeyBnZXRTZWdtZW50cyB9IGZyb20gJy4uLy4uL3V0aWxzL2Jib3hVdGlscy5qcydcbmltcG9ydCAqIGFzIHJlZ2V4IGZyb20gJy4uLy4uL3V0aWxzL3JlZ2V4LmpzJ1xuaW1wb3J0IHsgU1ZHTWF0cml4IH0gZnJvbSAnLi9TVkdNYXRyaXguanMnXG5cbi8vIE1hcCBtYXRyaXggYXJyYXkgdG8gb2JqZWN0XG5mdW5jdGlvbiBhcnJheVRvTWF0cml4IChhKSB7XG4gIHJldHVybiB7IGE6IGFbMF0sIGI6IGFbMV0sIGM6IGFbMl0sIGQ6IGFbM10sIGU6IGFbNF0sIGY6IGFbNV0gfVxufVxuXG5leHBvcnQgY2xhc3MgU1ZHR3JhcGhpY3NFbGVtZW50IGV4dGVuZHMgU1ZHRWxlbWVudCB7XG4gIC8vIFRPRE86IGh0dHBzOi8vd3d3LnczLm9yZy9UUi9TVkcyL2Nvb3Jkcy5odG1sI0NvbXB1dGluZ0FWaWV3cG9ydHNUcmFuc2Zvcm1cbiAgZ2VuZXJhdGVWaWV3Qm94TWF0cml4ICgpIHtcbiAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL3ZpZXdCb3hcbiAgICBpZiAoIVsgJ21hcmtlcicsICdzeW1ib2wnLCAncGF0dGVybicsICdzdmcnLCAndmlldycgXS5pbmNsdWRlcyh0aGlzLm5vZGVOYW1lKSkge1xuICAgICAgcmV0dXJuIG5ldyBTVkdNYXRyaXgoKVxuICAgIH1cblxuICAgIGxldCB2aWV3ID0gKHRoaXMuZ2V0QXR0cmlidXRlKCd2aWV3Qm94JykgfHwgJycpLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikubWFwKHBhcnNlRmxvYXQpLmZpbHRlcihlbCA9PiAhaXNOYU4oZWwpKVxuICAgIGNvbnN0IHdpZHRoID0gcGFyc2VGbG9hdCh0aGlzLmdldEF0dHJpYnV0ZSgnd2lkdGgnKSkgfHwgMFxuICAgIGNvbnN0IGhlaWdodCA9IHBhcnNlRmxvYXQodGhpcy5nZXRBdHRyaWJ1dGUoJ2hlaWdodCcpKSB8fCAwXG4gICAgY29uc3QgeCA9IHBhcnNlRmxvYXQodGhpcy5nZXRBdHRyaWJ1dGUoJ3gnKSkgfHwgMFxuICAgIGNvbnN0IHkgPSBwYXJzZUZsb2F0KHRoaXMuZ2V0QXR0cmlidXRlKCd5JykpIHx8IDBcblxuICAgIC8vIFRPRE86IElmIG5vIHdpZHRoIGFuZCBoZWlnaHQgaXMgZ2l2ZW4sIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIG91dGVyIHN2ZyBlbGVtZW50IGlzIHVzZWRcbiAgICBpZiAoIXdpZHRoIHx8ICFoZWlnaHQpIHtcbiAgICAgIHJldHVybiBuZXcgU1ZHTWF0cml4KCkudHJhbnNsYXRlKHgsIHkpXG4gICAgfVxuXG4gICAgaWYgKHZpZXcubGVuZ3RoICE9PSA0KSB7XG4gICAgICB2aWV3ID0gWyAwLCAwLCB3aWR0aCwgaGVpZ2h0IF1cbiAgICB9XG5cbiAgICAvLyBmaXJzdCBhcHBseSB4IGFuZCB5IGlmIG5lc3RlZCwgdGhlbiB2aWV3Ym94IHNjYWxlLCB0aGVuIHZpZXdCb3ggbW92ZVxuICAgIHJldHVybiBuZXcgU1ZHTWF0cml4KCkudHJhbnNsYXRlKHgsIHkpLnNjYWxlKHdpZHRoIC8gdmlld1syXSwgaGVpZ2h0IC8gdmlld1szXSkudHJhbnNsYXRlKC12aWV3WzBdLCAtdmlld1sxXSlcbiAgfVxuXG4gIGdldEJCb3ggKCkge1xuICAgIHJldHVybiBnZXRTZWdtZW50cyh0aGlzKS5iYm94KClcbiAgfVxuXG4gIC8vIFRPRE86IFRoaXMgbWV0aG9kIGFjdHVhbGx5IGV4aXN0cyBvbiBhbGwgRWxlbWVudHNcbiAgZ2V0Qm91bmRpbmdDbGllbnRSZWN0ICgpIHtcbiAgICAvLyBUaGUgYm91bmRpbmcgY2xpZW50IHJlY3QgdGFrZXMgdGhlIHNjcmVlbiBjdG0gb2YgdGhlIGVsZW1lbnRcbiAgICAvLyBhbmQgY29udmVydHMgdGhlIGJvdW5kaW5nIGJveCB3aXRoIGl0XG5cbiAgICAvLyBob3dldmVyLCBub3JtYWwgYm91bmRpbmcgY29uc2lzdHMgb2Y6XG4gICAgLy8gLSBhbGwgY2hpbGRyZW4gdHJhbnNmb3JtZWRcbiAgICAvLyAtIHRoZSB2aWV3Ym94IG9mIHRoZSBlbGVtZW50IGlmIGF2YWlsYWJsZVxuXG4gICAgLy8gVGhlIGJvdW5kaW5nQ2xpZW50UmVjdCBpcyBub3QgYWZmZWN0ZWQgYnkgaXRzIG93biB2aWV3Ym94XG4gICAgLy8gU28gd2UgYXBwbHkgb25seSBvdXIgb3duIHRyYW5zZm9ybWF0aW9ucyBhbmQgcGFyZW50cyBzY3JlZW5DVE1cblxuICAgIGxldCBtID0gdGhpcy5tYXRyaXhpZnkoKVxuXG4gICAgaWYgKHRoaXMucGFyZW50Tm9kZSAmJiB0aGlzLnBhcmVudE5vZGUubm9kZU5hbWUgIT09ICcjZG9jdW1lbnQnKSB7XG4gICAgICBtID0gdGhpcy5wYXJlbnROb2RlLmdldFNjcmVlbkNUTSgpLm11bHRpcGx5KG0pXG4gICAgfVxuXG4gICAgLy8gbGV0IG0gPSB0aGlzLmdldFNjcmVlbkNUTSgpXG5cbiAgICAvLyBUaGVyZSBhcmUgYSBmZXcgZXh0cmEgcnVsZXMgcmVnYXJkaW5nIHJib3ggYW5kIHRoZSA8c3ZnPiBlbGVtZW50XG4gICAgLy8gTmFtZWx5IHRoaXMgaXM6XG4gICAgLy8gQkJveCBpcyBjYWxjdWxhdGVkIGFzIG5vcm1hbCBmb3IgY29udGFpbmVyIGVsZW1lbnRzXG4gICAgLy8gUmJveCBpcyBjYWxjdWxhdGVkIHdpdGggdGhlIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIDxzdmc+XG4gICAgLy8gVGhpcyBjb3VsZCBiZSBhbHNvIHRydWUgZm9yIHN5bWJvbHMgc28gdGhpcyBpcyBhOlxuICAgIC8vIFRvZG86IC4uLlxuICAgIHJldHVybiBnZXRTZWdtZW50cyh0aGlzLCBmYWxzZSwgdHJ1ZSkudHJhbnNmb3JtKG0pLmJib3goKVxuICB9XG5cbiAgZ2V0Q1RNICgpIHtcbiAgICBsZXQgbSA9IHRoaXMubWF0cml4aWZ5KClcblxuICAgIGxldCBub2RlID0gdGhpc1xuICAgIHdoaWxlICgobm9kZSA9IG5vZGUucGFyZW50Tm9kZSkpIHtcbiAgICAgIGlmIChbICdzdmcnLCAnc3ltYm9sJywgJ2ltYWdlJywgJ3BhdHRlcm4nLCAnbWFya2VyJyBdLmluZGV4T2Yobm9kZS5ub2RlTmFtZSkgPiAtMSkgYnJlYWtcbiAgICAgIG0gPSBtLm11bHRpcGx5KG5vZGUubWF0cml4aWZ5KCkpXG4gICAgICBpZiAobm9kZS5ub2RlTmFtZSA9PT0gJyNkb2N1bWVudCcpIHJldHVybiB0aGlzLmdldFNjcmVlbkNUTSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGUuZ2VuZXJhdGVWaWV3Qm94TWF0cml4KCkubXVsdGlwbHkobSlcbiAgfVxuXG4gIGdldElubmVyTWF0cml4ICgpIHtcbiAgICBsZXQgbSA9IHRoaXMubWF0cml4aWZ5KClcblxuICAgIGlmIChbICdzdmcnLCAnc3ltYm9sJywgJ2ltYWdlJywgJ3BhdHRlcm4nLCAnbWFya2VyJyBdLmluZGV4T2YodGhpcy5ub2RlTmFtZSkgPiAtMSkge1xuICAgICAgbSA9IHRoaXMuZ2VuZXJhdGVWaWV3Qm94TWF0cml4KCkubXVsdGlwbHkobSlcbiAgICB9XG4gICAgcmV0dXJuIG1cbiAgfVxuXG4gIGdldFNjcmVlbkNUTSAoKSB7XG4gICAgLy8gcmVmOiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ0NTM3XG4gICAgLy8gV2UgZm9sbG93IENocm9tZXMgYmVoYXZpb3IgYW5kIGluY2x1ZGUgdGhlIHZpZXdib3ggaW4gdGhlIHNjcmVlbkNUTVxuICAgIGNvbnN0IG0gPSB0aGlzLmdldElubmVyTWF0cml4KClcblxuICAgIC8vIFRPRE86IFdlIGhhdmUgdG8gbG9vcCB1bnRpbCBkb2N1bWVudCwgaG93ZXZlciBodG1sIGVsZW1lbnRzIGRvbnQgaGF2ZSBnZXRTY3JlZW5DVE0gaW1wbGVtZW50ZWRcbiAgICAvLyB0aGV5IGFsc28gZG9udCBoYXZlIGEgdHJhbnNmb3JtIGF0dHJpYnV0ZS4gVGhlcmVmb3JlIHdlIG5lZWQgYSBkaWZmZXJlbnQgd2F5IG9mIGZpZ3VyaW5nIG91dCB0aGVpciAoY3NzKSB0cmFuc2Zvcm1cbiAgICBpZiAodGhpcy5wYXJlbnROb2RlICYmIHRoaXMucGFyZW50Tm9kZSBpbnN0YW5jZW9mIFNWR0dyYXBoaWNzRWxlbWVudCkge1xuICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZS5nZXRTY3JlZW5DVE0oKS5tdWx0aXBseShtKVxuICAgIH1cblxuICAgIHJldHVybiBtXG4gIH1cblxuICBtYXRyaXhpZnkgKCkge1xuICAgIGNvbnN0IG1hdHJpeCA9ICh0aGlzLmdldEF0dHJpYnV0ZSgndHJhbnNmb3JtJykgfHwgJycpLnRyaW0oKVxuICAgICAgLy8gc3BsaXQgdHJhbnNmb3JtYXRpb25zXG4gICAgICAuc3BsaXQocmVnZXgudHJhbnNmb3Jtcykuc2xpY2UoMCwgLTEpLm1hcChmdW5jdGlvbiAoc3RyKSB7XG4gICAgICAgIC8vIGdlbmVyYXRlIGtleSA9PiB2YWx1ZSBwYWlyc1xuICAgICAgICBjb25zdCBrdiA9IHN0ci50cmltKCkuc3BsaXQoJygnKVxuICAgICAgICByZXR1cm4gWyBrdlswXS50cmltKCksIGt2WzFdLnNwbGl0KHJlZ2V4LmRlbGltaXRlcikubWFwKGZ1bmN0aW9uIChzdHIpIHsgcmV0dXJuIHBhcnNlRmxvYXQoc3RyLnRyaW0oKSkgfSkgXVxuICAgICAgfSlcbiAgICAgIC8vIG1lcmdlIGV2ZXJ5IHRyYW5zZm9ybWF0aW9uIGludG8gb25lIG1hdHJpeFxuICAgICAgLnJlZHVjZShmdW5jdGlvbiAobWF0cml4LCB0cmFuc2Zvcm0pIHtcblxuICAgICAgICBpZiAodHJhbnNmb3JtWzBdID09PSAnbWF0cml4JykgcmV0dXJuIG1hdHJpeC5tdWx0aXBseShhcnJheVRvTWF0cml4KHRyYW5zZm9ybVsxXSkpXG4gICAgICAgIHJldHVybiBtYXRyaXhbdHJhbnNmb3JtWzBdXS5hcHBseShtYXRyaXgsIHRyYW5zZm9ybVsxXSlcblxuICAgICAgfSwgbmV3IFNWR01hdHJpeCgpKVxuXG4gICAgcmV0dXJuIG1hdHJpeFxuICB9XG5cbiAgZ2V0IHRyYW5zZm9ybSAoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW1wbGVtZW50ZWQnKVxuICB9XG5cbn1cbiIsICJpbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL290aGVyL0JveC5qcydcbmltcG9ydCB7IFNWR01hdHJpeCB9IGZyb20gJy4vU1ZHTWF0cml4LmpzJ1xuaW1wb3J0IHsgU1ZHUG9pbnQgfSBmcm9tICcuL1NWR1BvaW50LmpzJ1xuXG5leHBvcnQgY2xhc3MgU1ZHU1ZHRWxlbWVudCBleHRlbmRzIFNWR0dyYXBoaWNzRWxlbWVudCB7XG4gIGNyZWF0ZVNWR01hdHJpeCAoKSB7XG4gICAgcmV0dXJuIG5ldyBTVkdNYXRyaXgoKVxuICB9XG5cbiAgY3JlYXRlU1ZHUG9pbnQgKCkge1xuICAgIHJldHVybiBuZXcgU1ZHUG9pbnQoKVxuICB9XG5cbiAgY3JlYXRlU1ZHUmVjdCAoKSB7XG4gICAgcmV0dXJuIG5ldyBCb3goKVxuICB9XG5cbn1cbiIsICJpbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcbmltcG9ydCAqIGFzIHBhdGhVdGlscyBmcm9tICcuLi8uLi91dGlscy9wYXRoVXRpbHMuanMnXG5cbmV4cG9ydCBjbGFzcyBTVkdQYXRoRWxlbWVudCBleHRlbmRzIFNWR0dyYXBoaWNzRWxlbWVudCB7XG4gIGdldFBvaW50QXRMZW5ndGggKGxlbikge1xuICAgIHJldHVybiBwYXRoVXRpbHMucG9pbnRBdExlbmd0aCh0aGlzLmdldEF0dHJpYnV0ZSgnZCcpLCBsZW4pXG4gIH1cblxuICBnZXRUb3RhbExlbmd0aCAoKSB7XG4gICAgcmV0dXJuIHBhdGhVdGlscy5sZW5ndGgodGhpcy5nZXRBdHRyaWJ1dGUoJ2QnKSlcbiAgfVxufVxuIiwgIi8vIEB0cy1jaGVja1xuLy8gQHRzLWlnbm9yZVxuaW1wb3J0IHsgZXh0ZW5kU3RhdGljIH0gZnJvbSAnLi4vLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcblxuY29uc3QgdW5pdFR5cGVzID0ge1xuICBTVkdfTEVOR1RIVFlQRV9VTktOT1dOOiAwLFxuICBTVkdfTEVOR1RIVFlQRV9OVU1CRVI6IDEsXG4gIFNWR19MRU5HVEhUWVBFX1BFUkNFTlRBR0U6IDIsXG4gIFNWR19MRU5HVEhUWVBFX0VNUzogMyxcbiAgU1ZHX0xFTkdUSFRZUEVfRVhTOiA0LFxuICBTVkdfTEVOR1RIVFlQRV9QWDogNSxcbiAgU1ZHX0xFTkdUSFRZUEVfQ006IDYsXG4gIFNWR19MRU5HVEhUWVBFX01NOiA3LFxuICBTVkdfTEVOR1RIVFlQRV9JTjogOCxcbiAgU1ZHX0xFTkdUSFRZUEVfUFQ6IDksXG4gIFNWR19MRU5HVEhUWVBFX1BDOiAxMCxcbn1cblxuY29uc3QgdW5pdEJ5U3RyaW5nID0ge1xuICBbJyddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfTlVNQkVSLFxuICBbJyUnXTogdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX1BFUkNFTlRBR0UsXG4gIFsnZW0nXTogdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX0VNUyxcbiAgWydleCddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfRVhTLFxuICBbJ3B4J106IHVuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9QWCxcbiAgWydjbSddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfQ00sXG4gIFsnbW0nXTogdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX01NLFxuICBbJ2luJ106IHVuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9JTixcbiAgWydwdCddOiB1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfUFQsXG4gIFsncGMnXTogdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX1BDLFxufVxuXG5jb25zdCB1bml0U3RyaW5nQnlDb25zdGFudCA9IG5ldyBNYXAoXG4gIE9iamVjdC5lbnRyaWVzKHVuaXRCeVN0cmluZykubWFwKChbdW5pdFN0cmluZywgdW5pdENvbnN0YW50XSkgPT4gW1xuICAgIHVuaXRDb25zdGFudCxcbiAgICB1bml0U3RyaW5nLFxuICBdKVxuKVxuXG5jb25zdCB1bml0RmFjdG9ycyA9IG5ldyBNYXAoW1xuICBbdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX05VTUJFUiwgMV0sXG4gIFt1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfUEVSQ0VOVEFHRSwgTmFOXSxcbiAgW3VuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9FTVMsIE5hTl0sXG4gIFt1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfRVhTLCBOYU5dLFxuICBbdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX1BYLCAxXSxcbiAgW3VuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9DTSwgNl0sXG4gIFt1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfTU0sIDk2IC8gMjUuNF0sXG4gIFt1bml0VHlwZXMuU1ZHX0xFTkdUSFRZUEVfSU4sIDk2XSxcbiAgW3VuaXRUeXBlcy5TVkdfTEVOR1RIVFlQRV9QVCwgNCAvIDNdLFxuICBbdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX1BDLCAxNl0sXG5dKVxuXG5jb25zdCB2YWx1ZVBhdHRlcm4gPSAvXlxccyooWystXT9bMC05XSpbLl0/WzAtOV0rKD86ZVsrLV0/WzAtOV0rKT8pKGVtfGV4fHB4fGlufGNtfG1tfHB0fHBjfCUpP1xccyokL2k7XG5cbmV4cG9ydCBjbGFzcyBTVkdMZW5ndGgge1xuICBlbGVtZW50XG4gIGF0dHJpYnV0ZU5hbWVcblxuICAvKipcbiAgICogQHBhcmFtIHtFbGVtZW50fSBlbGVtZW50XG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhdHRyaWJ1dGVOYW1lXG4gICAqL1xuICBjb25zdHJ1Y3RvcihlbGVtZW50LCBhdHRyaWJ1dGVOYW1lKSB7XG4gICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudFxuICAgIHRoaXMuYXR0cmlidXRlTmFtZSA9IGF0dHJpYnV0ZU5hbWVcbiAgfVxuXG4gIGdldCB1bml0VHlwZSgpIHtcbiAgICByZXR1cm4gcGFyc2VWYWx1ZSh0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKHRoaXMuYXR0cmlidXRlTmFtZSkpWzFdXG4gIH1cblxuICBnZXQgdmFsdWUoKSB7XG4gICAgY29uc3QgW3ZhbHVlLCB1bml0XSA9IHBhcnNlVmFsdWUoXG4gICAgICB0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKHRoaXMuYXR0cmlidXRlTmFtZSlcbiAgICApXG4gICAgcmV0dXJuIHZhbHVlICogZ2V0VW5pdEZhY3Rvcih1bml0KVxuICB9XG5cbiAgc2V0IHZhbHVlKHZhbHVlKSB7XG4gICAgY29uc3QgdW5pdEZhY3RvciA9IGdldFVuaXRGYWN0b3IodGhpcy51bml0VHlwZSlcbiAgICB0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgdGhpcy5hdHRyaWJ1dGVOYW1lLFxuICAgICAgdmFsdWUgLyB1bml0RmFjdG9yICsgdW5pdFN0cmluZyh0aGlzKVxuICAgIClcbiAgfVxuXG4gIGdldCB2YWx1ZUluU3BlY2lmaWVkVW5pdHMoKSB7XG4gICAgcmV0dXJuIHBhcnNlVmFsdWUodGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSh0aGlzLmF0dHJpYnV0ZU5hbWUpKVswXVxuICB9XG5cbiAgc2V0IHZhbHVlSW5TcGVjaWZpZWRVbml0cyh2YWx1ZSkge1xuICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUodGhpcy5hdHRyaWJ1dGVOYW1lLCB2YWx1ZSArIHVuaXRTdHJpbmcodGhpcykpXG4gIH1cblxuICBnZXQgdmFsdWVBc1N0cmluZygpIHtcbiAgICAvLyBEbyBub3Qgc2ltcGx5IHVzZSBnZXRBdHRyaWJ1dGUoKSBhcyB0aGlzIGZ1bmN0aW9uIGhhcyB0byByZXR1cm4gYSBzdHJpbmdcbiAgICAvLyB0aGF0IGlzIGEgdmFsaWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVzZWQgdmFsdWUuXG4gICAgcmV0dXJuIHRoaXMudmFsdWVJblNwZWNpZmllZFVuaXRzICsgdW5pdFN0cmluZyh0aGlzKVxuICB9XG5cbiAgc2V0IHZhbHVlQXNTdHJpbmcodmFsdWVTdHJpbmcpIHtcbiAgICBjb25zdCBbdmFsdWUsIHVuaXRdID0gcGFyc2VWYWx1ZSh2YWx1ZVN0cmluZywgZmFsc2UpXG4gICAgY29uc3QgdW5pdFN0cmluZyA9IHVuaXRTdHJpbmdCeUNvbnN0YW50LmdldCh1bml0KSB8fCAnJ1xuICAgIHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUodGhpcy5hdHRyaWJ1dGVOYW1lLCB2YWx1ZSArIHVuaXRTdHJpbmcpXG4gIH1cbn1cblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ3xudWxsfSB2YWx1ZVN0cmluZ1xuICogQHBhcmFtIHtib29sZWFufSBmYWxsYmFjayAgSWYgc2V0IHRvIGBmYWxzZWAgY2F1c2VzIGFuIGVycm9yIHRvIGJlIHRocm93biBpZlxuICogYHZhbHVlU3RyaW5nYCBjYW4gbm90IGJlIHBhcnNlZCBwcm9wZXJseS4gT3RoZXJ3aXNlIHRoZSByZXR1cm5lZCB2YWx1ZSBmYWxsc1xuICogYmFjayB0byAwIGFuZCB0aGUgdW5pdCBmYWxscyBiYWNrIHRvIGBTVkdfTEVOR1RIVFlQRV9OVU1CRVJgLlxuICogQHJldHVybiB7W251bWJlciwgbnVtYmVyXX0gIFZhbHVlIGFuZCB1bml0LiBGb3IgdW5rbm93biB1bml0cywgaWYgdGhlXG4gKiBhdHRyaWJ1dGUgaXMgbm90IG9mIHRoZSBjb3JyZWN0IGZvcm1hdCBvciBpZiB0aGUgYXR0cmlidXRlIGlzIG5vdCBwcmVzZW50IG9uXG4gKiB0aGUgZWxlbWVudCwgdmFsdWUgMCBhbmQgdW5pdCBTVkdfTEVOR1RIVFlQRV9OVU1CRVIgYXJlIHJldHVybmVkLlxuICovXG5mdW5jdGlvbiBwYXJzZVZhbHVlKHZhbHVlU3RyaW5nLCBmYWxsYmFjayA9IHRydWUpIHtcbiAgY29uc3QgWywgcmF3VmFsdWUsIHJhd1VuaXRdID0gKHZhbHVlU3RyaW5nIHx8ICcnKS5tYXRjaCh2YWx1ZVBhdHRlcm4pIHx8IFtdXG4gIGNvbnN0IHVuaXQgPSB1bml0QnlTdHJpbmdbKHJhd1VuaXQgfHwgJycpLnRvTG93ZXJDYXNlKCldXG4gIGlmIChyYXdWYWx1ZSAhPT0gdW5kZWZpbmVkICYmIHVuaXQgIT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbcGFyc2VGbG9hdChyYXdWYWx1ZSksIHVuaXRdXG4gIH1cbiAgaWYgKGZhbGxiYWNrKSB7XG4gICAgLy8gRm9yIHVua25vd24gdW5pdHMgb3IgdW5wYXJzYWJsZSBhdHRyaWJ1dGVzLCBicm93c2VycyBmYWxsIGJhY2sgdG8gdmFsdWUgMFxuICAgIHJldHVybiBbMCwgdW5pdFR5cGVzLlNWR19MRU5HVEhUWVBFX05VTUJFUl1cbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoJ0FuIGludmFsaWQgb3IgaWxsZWdhbCBzdHJpbmcgd2FzIHNwZWNpZmllZCcpXG59XG5cbi8qKlxuICogQHBhcmFtIHtudW1iZXJ9IHVuaXQgIFVuaXQgY29uc3RhbnRcbiAqL1xuZnVuY3Rpb24gZ2V0VW5pdEZhY3Rvcih1bml0KSB7XG4gIGNvbnN0IHVuaXRGYWN0b3IgPSB1bml0RmFjdG9ycy5nZXQodW5pdClcbiAgaWYgKHVuaXRGYWN0b3IgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcih1bml0RmFjdG9yICsgJyBpcyBub3QgYSBrbm93biB1bml0IGNvbnN0YW50JylcbiAgfVxuICBpZiAoaXNOYU4odW5pdEZhY3RvcikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVuaXQgJHt1bml0U3RyaW5nQnlDb25zdGFudC5nZXQodW5pdCl9IGlzIG5vdCBzdXBwb3J0ZWRgKVxuICB9XG4gIHJldHVybiB1bml0RmFjdG9yXG59XG5cbi8qKlxuICogQHBhcmFtIHtTVkdMZW5ndGh9IHN2Z0xlbmd0aFxuICogQHJldHVybiB7c3RyaW5nfVxuICovXG5mdW5jdGlvbiB1bml0U3RyaW5nKHN2Z0xlbmd0aCkge1xuICByZXR1cm4gdW5pdFN0cmluZ0J5Q29uc3RhbnQuZ2V0KHN2Z0xlbmd0aC51bml0VHlwZSkgfHwgJydcbn1cblxuZXh0ZW5kU3RhdGljKFNWR0xlbmd0aCwgdW5pdFR5cGVzKVxuIiwgIi8vIEB0cy1jaGVja1xuaW1wb3J0IHsgU1ZHTGVuZ3RoIH0gZnJvbSAnLi9TVkdMZW5ndGguanMnXG5cbmV4cG9ydCBjbGFzcyBTVkdBbmltYXRlZExlbmd0aCB7XG4gIGJhc2VWYWxcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50LCBhdHRyaWJ1dGVOYW1lKSB7XG4gICAgdGhpcy5iYXNlVmFsID0gbmV3IFNWR0xlbmd0aChlbGVtZW50LCBhdHRyaWJ1dGVOYW1lKVxuICB9XG5cbiAgZ2V0IGFuaW1WYWwoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdhbmltVmFsIGlzIG5vdCBpbXBsZW1lbnRlZCcpXG4gIH1cbn1cbiIsICJpbXBvcnQgeyBTVkdBbmltYXRlZExlbmd0aCB9IGZyb20gJy4vU1ZHQW5pbWF0ZWRMZW5ndGguanMnXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcblxuZXhwb3J0IGNsYXNzIFNWR1RleHRDb250ZW50RWxlbWVudCBleHRlbmRzIFNWR0dyYXBoaWNzRWxlbWVudCB7XG4gIHRleHRXaWR0aCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAndGV4dFdpZHRoJylcblxuICBnZXRDb21wdXRlZFRleHRMZW5ndGggKCkge1xuICAgIHJldHVybiB0aGlzLmdldEJCb3goKS53aWR0aFxuICB9XG59XG4iLCAiaW1wb3J0IHsgTm9kZSB9IGZyb20gJy4vTm9kZS5qcydcbmltcG9ydCB7IG1peGluIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0Q3JlYXRpb25VdGlscy5qcydcbmltcG9ydCB7IENoaWxkTm9kZSB9IGZyb20gJy4vbWl4aW5zL0NoaWxkTm9kZS5qcydcblxuZXhwb3J0IGNsYXNzIERvY3VtZW50VHlwZSBleHRlbmRzIE5vZGUge1xuICBjb25zdHJ1Y3RvciAobmFtZSwgcHJvcHMpIHtcbiAgICBzdXBlcihuYW1lLCBwcm9wcylcblxuICAgIHRoaXMubm9kZVR5cGUgPSBOb2RlLkRPQ1VNRU5UX1RZUEVfTk9ERVxuICAgIHRoaXMubmFtZSA9IG5hbWVcblxuICAgIGNvbnN0IHsgcHVibGljSWQsIHN5c3RlbUlkIH0gPSBwcm9wc1xuICAgIHRoaXMucHVibGljSWQgPSBwdWJsaWNJZCB8fCAnJ1xuICAgIHRoaXMuc3lzdGVtSWQgPSBzeXN0ZW1JZCB8fCAnJ1xuICB9XG59XG5cbm1peGluKENoaWxkTm9kZSwgRG9jdW1lbnRUeXBlKVxuIiwgIi8vIEB0cy1jaGVja1xuaW1wb3J0IHsgU1ZHR3JhcGhpY3NFbGVtZW50IH0gZnJvbSAnLi9TVkdHcmFwaGljc0VsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdBbmltYXRlZExlbmd0aCB9IGZyb20gJy4vU1ZHQW5pbWF0ZWRMZW5ndGguanMnXG5cbmV4cG9ydCBjbGFzcyBTVkdSZWN0RWxlbWVudCBleHRlbmRzIFNWR0dyYXBoaWNzRWxlbWVudCB7XG4gIHggPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3gnKVxuICB5ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICd5JylcbiAgd2lkdGggPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3dpZHRoJylcbiAgaGVpZ2h0ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICdoZWlnaHQnKVxuICByeCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAncngnKVxuICByeSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAncnknKVxufVxuIiwgIi8vIEB0cy1jaGVja1xuaW1wb3J0IHsgU1ZHQW5pbWF0ZWRMZW5ndGggfSBmcm9tICcuL1NWR0FuaW1hdGVkTGVuZ3RoLmpzJ1xuaW1wb3J0IHsgU1ZHR3JhcGhpY3NFbGVtZW50IH0gZnJvbSAnLi9TVkdHcmFwaGljc0VsZW1lbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBTVkdDaXJjbGVFbGVtZW50IGV4dGVuZHMgU1ZHR3JhcGhpY3NFbGVtZW50IHtcbiAgY3ggPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ2N4JylcbiAgY3kgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ2N5JylcbiAgciA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAncicpXG59XG4iLCAiLy8gQHRzLWNoZWNrXG5pbXBvcnQgeyBTVkdBbmltYXRlZExlbmd0aCB9IGZyb20gJy4vU1ZHQW5pbWF0ZWRMZW5ndGguanMnXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcblxuZXhwb3J0IGNsYXNzIFNWR0xpbmVFbGVtZW50IGV4dGVuZHMgU1ZHR3JhcGhpY3NFbGVtZW50IHtcbiAgeDEgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3gxJylcbiAgeTEgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3kxJylcbiAgeDIgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3gyJylcbiAgeTIgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3kyJylcbn1cbiIsICIvLyBAdHMtY2hlY2tcbmltcG9ydCB7IFNWR0FuaW1hdGVkTGVuZ3RoIH0gZnJvbSAnLi9TVkdBbmltYXRlZExlbmd0aC5qcydcbmltcG9ydCB7IFNWR0dyYXBoaWNzRWxlbWVudCB9IGZyb20gJy4vU1ZHR3JhcGhpY3NFbGVtZW50LmpzJ1xuXG5leHBvcnQgY2xhc3MgU1ZHRWxsaXBzZUVsZW1lbnQgZXh0ZW5kcyBTVkdHcmFwaGljc0VsZW1lbnQge1xuICBjeCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnY3gnKVxuICBjeSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnY3knKVxuICByeCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAncngnKVxuICByeSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAncnknKVxufVxuIiwgIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgeyBTVkdBbmltYXRlZExlbmd0aCB9IGZyb20gJy4vU1ZHQW5pbWF0ZWRMZW5ndGguanMnXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL1NWR0dyYXBoaWNzRWxlbWVudC5qcydcblxuZXhwb3J0IGNsYXNzIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50IGV4dGVuZHMgU1ZHR3JhcGhpY3NFbGVtZW50IHtcbiAgeCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneCcpXG4gIHkgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ3knKVxuICB3aWR0aCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnd2lkdGgnKVxuICBoZWlnaHQgPSBuZXcgU1ZHQW5pbWF0ZWRMZW5ndGgodGhpcywgJ2hlaWdodCcpXG59XG4iLCAiaW1wb3J0IHsgU1ZHQW5pbWF0ZWRMZW5ndGggfSBmcm9tICcuL1NWR0FuaW1hdGVkTGVuZ3RoLmpzJ1xuaW1wb3J0IHsgU1ZHR3JhcGhpY3NFbGVtZW50IH0gZnJvbSAnLi9TVkdHcmFwaGljc0VsZW1lbnQuanMnXG5cbmV4cG9ydCBjbGFzcyBTVkdJbWFnZUVsZW1lbnQgZXh0ZW5kcyBTVkdHcmFwaGljc0VsZW1lbnQge1xuICB4ID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICd4JylcbiAgeSA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAneScpXG4gIHdpZHRoID0gbmV3IFNWR0FuaW1hdGVkTGVuZ3RoKHRoaXMsICd3aWR0aCcpXG4gIGhlaWdodCA9IG5ldyBTVkdBbmltYXRlZExlbmd0aCh0aGlzLCAnaGVpZ2h0Jylcbn1cbiIsICJpbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi9Ob2RlLmpzJ1xuaW1wb3J0IHsgQ29tbWVudCB9IGZyb20gJy4vQ29tbWVudC5qcydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuL1RleHQuanMnXG5pbXBvcnQgeyBBdHRyIH0gZnJvbSAnLi9BdHRyLmpzJ1xuaW1wb3J0IHsgRG9jdW1lbnRGcmFnbWVudCB9IGZyb20gJy4vRG9jdW1lbnRGcmFnbWVudC5qcydcbmltcG9ydCB7IEhUTUxMaW5rRWxlbWVudCB9IGZyb20gJy4vaHRtbC9IVE1MTGlua0VsZW1lbnQuanMnXG5pbXBvcnQgeyBIVE1MU2NyaXB0RWxlbWVudCB9IGZyb20gJy4vaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5qcydcbmltcG9ydCB7IEhUTUxJbWFnZUVsZW1lbnQgfSBmcm9tICcuL2h0bWwvSFRNTEltYWdlRWxlbWVudC5qcydcbmltcG9ydCB7IEhUTUxFbGVtZW50IH0gZnJvbSAnLi9odG1sL0hUTUxFbGVtZW50LmpzJ1xuaW1wb3J0IHsgZWxlbWVudEFjY2VzcyB9IGZyb20gJy4vbWl4aW5zL2VsZW1lbnRBY2Nlc3MuanMnXG5pbXBvcnQgeyBtaXhpbiB9IGZyb20gJy4uL3V0aWxzL29iamVjdENyZWF0aW9uVXRpbHMuanMnXG5pbXBvcnQgeyBTVkdTVkdFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHU1ZHRWxlbWVudC5qcydcbmltcG9ydCB7IFNWR1BhdGhFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHUGF0aEVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdUZXh0Q29udGVudEVsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdUZXh0Q29udGVudEVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdHcmFwaGljc0VsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdHcmFwaGljc0VsZW1lbnQuanMnXG5pbXBvcnQgeyBQYXJlbnROb2RlIH0gZnJvbSAnLi9taXhpbnMvUGFyZW50Tm9kZS5qcydcbmltcG9ydCB7IHN2ZywgaHRtbCB9IGZyb20gJy4uL3V0aWxzL25hbWVzcGFjZXMuanMnXG5pbXBvcnQgeyBEb2N1bWVudFR5cGUgfSBmcm9tICcuL0RvY3VtZW50VHlwZS5qcydcbmltcG9ydCB7IE5vbkVsZW1lbnRQYXJlbnROb2RlIH0gZnJvbSAnLi9taXhpbnMvTm9uRWxlbWVudFBhcmVudE5vZGUuanMnXG5pbXBvcnQgeyBTVkdSZWN0RWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR1JlY3RFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHQ2lyY2xlRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR0NpcmNsZUVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdMaW5lRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR0xpbmVFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHRWxsaXBzZUVsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdFbGxpcHNlRWxlbWVudC5qcydcbmltcG9ydCB7IFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdJbWFnZUVsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdJbWFnZUVsZW1lbnQuanMnXG5cbmZ1bmN0aW9uIGdldENoaWxkQnlUYWdOYW1lIChwYXJlbnQsIG5hbWUpIHtcbiAgZm9yIChsZXQgY2hpbGQgPSBwYXJlbnQuZmlyc3RDaGlsZDsgY2hpbGQgIT0gbnVsbDsgY2hpbGQgPSBjaGlsZC5uZXh0U2libGluZykge1xuICAgIGlmIChjaGlsZC5ub2RlVHlwZSA9PT0gTm9kZS5FTEVNRU5UX05PREUgJiYgY2hpbGQubm9kZU5hbWUgPT09IG5hbWUpIHtcbiAgICAgIHJldHVybiBjaGlsZFxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbFxufVxuXG5jb25zdCBnZXRTVkdFbGVtZW50Rm9yTmFtZSA9IChuYW1lKSA9PiB7XG4gIHN3aXRjaCAobmFtZS50b0xvd2VyQ2FzZSgpKSB7XG4gIGNhc2UgJ3N2Zyc6XG4gICAgcmV0dXJuIFNWR1NWR0VsZW1lbnRcbiAgY2FzZSAncGF0aCc6XG4gICAgcmV0dXJuIFNWR1BhdGhFbGVtZW50XG4gIGNhc2UgJ2NpcmNsZSc6XG4gICAgcmV0dXJuIFNWR0NpcmNsZUVsZW1lbnRcbiAgY2FzZSAnZWxsaXBzZSc6XG4gICAgcmV0dXJuIFNWR0VsbGlwc2VFbGVtZW50XG4gIGNhc2UgJ2xpbmUnOlxuICAgIHJldHVybiBTVkdMaW5lRWxlbWVudFxuICBjYXNlICdyZWN0JzpcbiAgICByZXR1cm4gU1ZHUmVjdEVsZW1lbnRcbiAgY2FzZSAnZm9yZWlnbk9iamVjdCc6XG4gICAgcmV0dXJuIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50XG4gIGNhc2UgJ2ltYWdlJzpcbiAgICByZXR1cm4gU1ZHSW1hZ2VFbGVtZW50XG4gIGNhc2UgJ3RleHQnOlxuICBjYXNlICd0c3Bhbic6XG4gIGNhc2UgJ3RyZWYnOlxuICBjYXNlICdhbHRnbHlwaCc6XG4gIGNhc2UgJ3RleHRwYXRoJzpcbiAgICByZXR1cm4gU1ZHVGV4dENvbnRlbnRFbGVtZW50XG4gIGRlZmF1bHQ6XG4gICAgcmV0dXJuIFNWR0dyYXBoaWNzRWxlbWVudFxuICB9XG59XG5cbmNvbnN0IGdldEhUTUxFbGVtZW50Rm9yTmFtZSA9IChuYW1lKSA9PiB7XG4gIHN3aXRjaCAobmFtZS50b0xvd2VyQ2FzZSgpKSB7XG4gIGNhc2UgJ2ltZyc6XG4gICAgcmV0dXJuIEhUTUxJbWFnZUVsZW1lbnRcbiAgY2FzZSAnbGluayc6XG4gICAgcmV0dXJuIEhUTUxMaW5rRWxlbWVudFxuICBjYXNlICdzY3JpcHQnOlxuICAgIHJldHVybiBIVE1MU2NyaXB0RWxlbWVudFxuICBkZWZhdWx0OlxuICAgIHJldHVybiBIVE1MRWxlbWVudFxuICB9XG59XG5cbmNvbnN0IGdldEVsZW1lbnRGb3JOYW1lc3BhY2UgPSAobnMsIG5hbWUpID0+IHtcbiAgc3dpdGNoIChucykge1xuICBjYXNlIHN2ZzpcbiAgICByZXR1cm4gZ2V0U1ZHRWxlbWVudEZvck5hbWUobmFtZSlcbiAgY2FzZSBodG1sOlxuICBjYXNlIG51bGw6XG4gIGNhc2UgJyc6XG4gIGRlZmF1bHQ6XG4gICAgcmV0dXJuIGdldEhUTUxFbGVtZW50Rm9yTmFtZShuYW1lKVxuICB9XG59XG5cbi8vIEZlYXR1cmUvdmVyc2lvbiBwYWlycyB0aGF0IERPTUltcGxlbWVudGF0aW9uLmhhc0ZlYXR1cmUoKSByZXR1cm5zIHRydWUgZm9yLiAgSXQgcmV0dXJucyBmYWxzZSBmb3IgYW55dGhpbmcgZWxzZS5cbmNvbnN0IHN1cHBvcnRlZEZlYXR1cmVzID0ge1xuICB4bWw6IHsgJyc6IHRydWUsICcxLjAnOiB0cnVlLCAnMi4wJzogdHJ1ZSB9LFxuICBjb3JlOiB7ICcnOiB0cnVlLCAnMi4wJzogdHJ1ZSB9LFxuICBodG1sOiB7ICcnOiB0cnVlLCAnMS4wJzogdHJ1ZSwgJzIuMCc6IHRydWUgfSxcbiAgeGh0bWw6IHsgJyc6IHRydWUsICcxLjAnOiB0cnVlLCAnMi4wJzogdHJ1ZSB9IC8vIEhUTUxcbn1cblxuZXhwb3J0IGNvbnN0IERPTUltcGxlbWVudGF0aW9uID0ge1xuICBoYXNGZWF0dXJlIChmZWF0dXJlLCB2ZXJzaW9uKSB7XG4gICAgY29uc3QgZiA9IHN1cHBvcnRlZEZlYXR1cmVzWyhmZWF0dXJlIHx8ICcnKS50b0xvd2VyQ2FzZSgpXVxuICAgIHJldHVybiAoZiAmJiBmW3ZlcnNpb24gfHwgJyddKSB8fCBmYWxzZVxuICB9LFxuXG4gIGNyZWF0ZURvY3VtZW50VHlwZSAocXVhbGlmaWVkTmFtZSwgcHVibGljSWQsIHN5c3RlbUlkKSB7XG4gICAgcmV0dXJuIG5ldyBEb2N1bWVudFR5cGUocXVhbGlmaWVkTmFtZSwgeyBwdWJsaWNJZCwgc3lzdGVtSWQsIG93bmVyRG9jdW1lbnQ6IHRoaXMgfSlcbiAgfSxcblxuICBjcmVhdGVEb2N1bWVudCAobmFtZXNwYWNlLCBxdWFsaWZpZWROYW1lLCBkb2N0eXBlKSB7XG4gICAgY29uc3QgZG9jID0gbmV3IERvY3VtZW50KG5hbWVzcGFjZSlcbiAgICBpZiAoZG9jdHlwZSkge1xuICAgICAgaWYgKGRvY3R5cGUub3duZXJEb2N1bWVudCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3RoZSBvYmplY3QgaXMgaW4gdGhlIHdyb25nIERvY3VtZW50LCBhIGNhbGwgdG8gaW1wb3J0Tm9kZSBpcyByZXF1aXJlZCcpXG4gICAgICB9XG4gICAgICBkb2N0eXBlLm93bmVyRG9jdW1lbnQgPSBkb2NcbiAgICAgIGRvYy5hcHBlbmRDaGlsZChkb2N0eXBlKVxuICAgIH1cbiAgICBpZiAocXVhbGlmaWVkTmFtZSkge1xuICAgICAgZG9jLmFwcGVuZENoaWxkKGRvYy5jcmVhdGVFbGVtZW50TlMobmFtZXNwYWNlLCBxdWFsaWZpZWROYW1lKSlcbiAgICB9XG4gICAgcmV0dXJuIGRvY1xuICB9LFxuXG4gIGNyZWF0ZUhUTUxEb2N1bWVudCAodGl0bGVUZXh0ID0gJycpIHtcbiAgICBjb25zdCBkID0gbmV3IERvY3VtZW50KGh0bWwpXG4gICAgY29uc3Qgcm9vdCA9IGQuY3JlYXRlRWxlbWVudCgnaHRtbCcpXG4gICAgY29uc3QgaGVhZCA9IGQuY3JlYXRlRWxlbWVudCgnaGVhZCcpXG4gICAgY29uc3QgdGl0bGUgPSBkLmNyZWF0ZUVsZW1lbnQoJ3RpdGxlJylcbiAgICB0aXRsZS5hcHBlbmRDaGlsZChkLmNyZWF0ZVRleHROb2RlKHRpdGxlVGV4dCkpXG4gICAgaGVhZC5hcHBlbmRDaGlsZCh0aXRsZSlcbiAgICByb290LmFwcGVuZENoaWxkKGhlYWQpXG4gICAgcm9vdC5hcHBlbmRDaGlsZChkLmNyZWF0ZUVsZW1lbnQoJ2JvZHknKSlcblxuICAgIGQuYXBwZW5kQ2hpbGQocm9vdClcbiAgICByZXR1cm4gZFxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEb2N1bWVudCBleHRlbmRzIE5vZGUge1xuICBjb25zdHJ1Y3RvciAobnMpIHtcbiAgICBzdXBlcignI2RvY3VtZW50Jywge30sIG5zKVxuICAgIHRoaXMubm9kZVR5cGUgPSBOb2RlLkRPQ1VNRU5UX05PREVcbiAgICB0aGlzLmltcGxlbWVudGF0aW9uID0gRE9NSW1wbGVtZW50YXRpb25cbiAgICB0aGlzLmRlZmF1bHRWaWV3ID0gbnVsbFxuICB9XG5cbiAgLy8gaHR0cHM6Ly9kb20uc3BlYy53aGF0d2cub3JnLyNkb20tZG9jdW1lbnQtY3JlYXRlYXR0cmlidXRlXG4gIGNyZWF0ZUF0dHJpYnV0ZSAobG9jYWxOYW1lKSB7XG4gICAgaWYgKHRoaXMubmFtZXNwYWNlVVJJID09PSBodG1sKSB7XG4gICAgICBsb2NhbE5hbWUgPSBsb2NhbE5hbWUudG9Mb3dlckNhc2UoKVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVBdHRyaWJ1dGVOUyhudWxsLCBsb2NhbE5hbWUsIHRydWUpXG4gIH1cblxuICBjcmVhdGVBdHRyaWJ1dGVOUyAobnMsIHF1YWxpZmllZE5hbWUsIGxvY2FsID0gZmFsc2UpIHtcbiAgICByZXR1cm4gbmV3IEF0dHIocXVhbGlmaWVkTmFtZSwgeyBvd25lckRvY3VtZW50OiB0aGlzLCBsb2NhbCB9LCBucylcbiAgfVxuXG4gIGNyZWF0ZUNvbW1lbnQgKHRleHQpIHtcbiAgICByZXR1cm4gbmV3IENvbW1lbnQoJyNjb21tZW50JywgeyBub2RlVmFsdWU6IHRleHQsIG93bmVyRG9jdW1lbnQ6IHRoaXMgfSlcbiAgfVxuXG4gIGNyZWF0ZURvY3VtZW50RnJhZ21lbnQgKG5hbWUpIHtcbiAgICByZXR1cm4gbmV3IERvY3VtZW50RnJhZ21lbnQoJyNkb2N1bWVudC1mcmFnbWVudCcsIHsgb3duZXJEb2N1bWVudDogdGhpcyB9KVxuICB9XG5cbiAgY3JlYXRlRWxlbWVudCAobG9jYWxOYW1lKSB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlRWxlbWVudE5TKHRoaXMubmFtZXNwYWNlVVJJLCBsb2NhbE5hbWUsIHRydWUpXG4gIH1cblxuICBjcmVhdGVFbGVtZW50TlMgKG5zLCBxdWFsaWZpZWROYW1lLCBsb2NhbCA9IGZhbHNlKSB7XG4gICAgY29uc3QgRWxlbWVudCA9IGdldEVsZW1lbnRGb3JOYW1lc3BhY2UobnMsIHF1YWxpZmllZE5hbWUpXG5cbiAgICByZXR1cm4gbmV3IEVsZW1lbnQocXVhbGlmaWVkTmFtZSwge1xuICAgICAgb3duZXJEb2N1bWVudDogdGhpcyxcbiAgICAgIGxvY2FsXG4gICAgfSwgbnMpXG4gIH1cblxuICBjcmVhdGVUZXh0Tm9kZSAodGV4dCkge1xuICAgIHJldHVybiBuZXcgVGV4dCgnI3RleHQnLCB7IG5vZGVWYWx1ZTogdGV4dCwgb3duZXJEb2N1bWVudDogdGhpcyB9KVxuICB9XG5cbiAgZ2V0IGNvbXBhdE1vZGUgKCkge1xuICAgIHJldHVybiAnQ1NTMUNvbXBhdCcgLy8gYWx3YXlzIGJlIGluIHN0YW5kYXJkcy1tb2RlXG4gIH1cblxuICBnZXQgYm9keSAoKSB7XG4gICAgcmV0dXJuIGdldENoaWxkQnlUYWdOYW1lKHRoaXMuZG9jdW1lbnRFbGVtZW50LCAnQk9EWScpXG4gIH1cblxuICBnZXQgaGVhZCAoKSB7XG4gICAgcmV0dXJuIGdldENoaWxkQnlUYWdOYW1lKHRoaXMuZG9jdW1lbnRFbGVtZW50LCAnSEVBRCcpXG4gIH1cblxuICBnZXQgZG9jdW1lbnRFbGVtZW50ICgpIHtcbiAgICByZXR1cm4gdGhpcy5sYXN0Q2hpbGRcbiAgfVxufVxuXG5taXhpbihlbGVtZW50QWNjZXNzLCBEb2N1bWVudClcbm1peGluKFBhcmVudE5vZGUsIERvY3VtZW50KVxubWl4aW4oTm9uRWxlbWVudFBhcmVudE5vZGUsIERvY3VtZW50KVxuIiwgImltcG9ydCB7IGV4dGVuZCB9IGZyb20gJy4uL3V0aWxzL29iamVjdENyZWF0aW9uVXRpbHMuanMnXG5pbXBvcnQgeyBFdmVudFRhcmdldCB9IGZyb20gJy4vRXZlbnRUYXJnZXQuanMnXG5pbXBvcnQgeyBOb2RlIH0gZnJvbSAnLi9Ob2RlLmpzJ1xuaW1wb3J0IHsgRG9jdW1lbnQgfSBmcm9tICcuL0RvY3VtZW50LmpzJ1xuaW1wb3J0IHsgRG9jdW1lbnRGcmFnbWVudCB9IGZyb20gJy4vRG9jdW1lbnRGcmFnbWVudC5qcydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuL1RleHQuanMnXG5pbXBvcnQgeyBDdXN0b21FdmVudCB9IGZyb20gJy4vQ3VzdG9tRXZlbnQuanMnXG5pbXBvcnQgeyBFdmVudCB9IGZyb20gJy4vRXZlbnQuanMnXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSAnLi9FbGVtZW50LmpzJ1xuaW1wb3J0IHsgQXR0ciB9IGZyb20gJy4vQXR0ci5qcydcbmltcG9ydCB7IEhUTUxJbWFnZUVsZW1lbnQgfSBmcm9tICcuL2h0bWwvSFRNTEltYWdlRWxlbWVudC5qcydcbmltcG9ydCB7IEhUTUxMaW5rRWxlbWVudCB9IGZyb20gJy4vaHRtbC9IVE1MTGlua0VsZW1lbnQuanMnXG5pbXBvcnQgeyBIVE1MU2NyaXB0RWxlbWVudCB9IGZyb20gJy4vaHRtbC9IVE1MU2NyaXB0RWxlbWVudC5qcydcbmltcG9ydCB7IEhUTUxFbGVtZW50IH0gZnJvbSAnLi9odG1sL0hUTUxFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHUG9pbnQgfSBmcm9tICcuL3N2Zy9TVkdQb2ludC5qcydcbmltcG9ydCB7IFNWR01hdHJpeCB9IGZyb20gJy4vc3ZnL1NWR01hdHJpeC5qcydcbmltcG9ydCB7IFNWR0VsZW1lbnQgfSBmcm9tICcuL3N2Zy9TVkdFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHU1ZHRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR1NWR0VsZW1lbnQuanMnXG5pbXBvcnQgeyBTVkdQYXRoRWxlbWVudCB9IGZyb20gJy4vc3ZnL1NWR1BhdGhFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHR3JhcGhpY3NFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHR3JhcGhpY3NFbGVtZW50LmpzJ1xuaW1wb3J0IHsgU1ZHVGV4dENvbnRlbnRFbGVtZW50IH0gZnJvbSAnLi9zdmcvU1ZHVGV4dENvbnRlbnRFbGVtZW50LmpzJ1xuaW1wb3J0IHsgY2FtZWxDYXNlIH0gZnJvbSAnLi4vdXRpbHMvc3RyVXRpbHMuanMnXG5pbXBvcnQgKiBhcyBkZWZhdWx0cyBmcm9tICcuLi91dGlscy9kZWZhdWx0cy5qcydcblxuZXhwb3J0IGNsYXNzIFdpbmRvdyBleHRlbmRzIEV2ZW50VGFyZ2V0IHtcbiAgY29uc3RydWN0b3IgKCkge1xuICAgIHN1cGVyKClcbiAgICB0aGlzLmRvY3VtZW50ID0gbmV3IERvY3VtZW50KClcbiAgICB0aGlzLmRvY3VtZW50LmRlZmF1bHRWaWV3ID0gdGhpc1xuICAgIHRoaXMuc2VsZiA9IHRoaXNcbiAgICBjb25zdCBkb2MgPSB0aGlzLmRvY3VtZW50XG4gICAgdGhpcy5JbWFnZSA9IGNsYXNzIHtcbiAgICAgIGNvbnN0cnVjdG9yICh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgICAgIGNvbnN0IGltZyA9IGRvYy5jcmVhdGVFbGVtZW50KCdpbWcnKVxuICAgICAgICBpZiAod2lkdGggIT0gbnVsbCkgaW1nLnNldEF0dHJpYnV0ZSgnd2lkdGgnLCB3aWR0aClcbiAgICAgICAgaWYgKGhlaWdodCAhPSBudWxsKSBpbWcuc2V0QXR0cmlidXRlKCdoZWlnaHQnLCBoZWlnaHQpXG4gICAgICAgIHJldHVybiBpbWdcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRDb21wdXRlZFN0eWxlIChub2RlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC8vIEZJWE1FOiBDdXJyZW50bHkgdGhpcyBmdW5jdGlvbiB0cmVhdHMgZXZlcnkgZ2l2ZW4gYXR0clxuICAgICAgLy8gYXMgaW5oZXJpdGFibGUgZnJvbSBpdHMgcGFyZW50cyB3aGljaCBpcyBvZmMgbm90IGFsd2F5cyB0cnVlXG4gICAgICAvLyBidXQgZ29vZCBlbm91Z2ggZm9yIHN2Zy5qc1xuICAgICAgZ2V0UHJvcGVydHlWYWx1ZSAoYXR0cikge1xuICAgICAgICBsZXQgdmFsdWVcbiAgICAgICAgbGV0IGN1ciA9IG5vZGVcblxuICAgICAgICBkbyB7XG4gICAgICAgICAgdmFsdWUgPSBjdXIuc3R5bGVbYXR0cl0gfHwgY3VyLmdldEF0dHJpYnV0ZShhdHRyKVxuICAgICAgICB9IHdoaWxlIChcbiAgICAgICAgICB2YWx1ZSA9PSBudWxsXG4gICAgICAgICAgJiYgKGN1ciA9IGN1ci5wYXJlbnROb2RlKVxuICAgICAgICAgICYmIGN1ci5ub2RlVHlwZSA9PT0gMVxuICAgICAgICApXG5cbiAgICAgICAgcmV0dXJuIHZhbHVlIHx8IGRlZmF1bHRzW2NhbWVsQ2FzZShhdHRyKV0gfHwgbnVsbFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5sZXQgbGFzdFRpbWUgPSAwXG5jb25zdCByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgPSBjYWxsYmFjayA9PiB7XG4gIGNvbnN0IG5vdyA9IG5ldyBnbG9iYWxUaGlzLkRhdGUoKS5nZXRUaW1lKClcbiAgY29uc3QgdGltZVRvQ2FsbCA9IE1hdGgubWF4KDAsIDE2IC0gKG5vdyAtIGxhc3RUaW1lKSlcbiAgcmV0dXJuIGdsb2JhbFRoaXMuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgbGFzdFRpbWUgPSBub3cgKyB0aW1lVG9DYWxsXG4gICAgY2FsbGJhY2sobGFzdFRpbWUpXG4gIH0sIHRpbWVUb0NhbGwpXG59XG5cbmNvbnN0IG5vd09mZnNldCA9IGdsb2JhbFRoaXMuRGF0ZS5ub3coKVxuY29uc3QgcGVyZm9ybWFuY2UgPSB7XG4gIG5vdzogKCkgPT4gRGF0ZS5ub3coKSAtIG5vd09mZnNldFxufVxuXG5jb25zdCB3aW5Qcm9wcyA9IHtcbiAgV2luZG93LFxuICBEb2N1bWVudCxcbiAgRG9jdW1lbnRGcmFnbWVudCxcbiAgTm9kZSxcbiAgRXZlbnRUYXJnZXQsXG4gIFRleHQsXG4gIEF0dHIsXG4gIEVsZW1lbnQsXG4gIEN1c3RvbUV2ZW50LFxuICBFdmVudCxcbiAgSFRNTEVsZW1lbnQsXG4gIEhUTUxMaW5rRWxlbWVudCxcbiAgSFRNTFNjcmlwdEVsZW1lbnQsXG4gIEhUTUxJbWFnZUVsZW1lbnQsXG4gIC8vIEltYWdlOiBIVE1MSW1hZ2VFbGVtZW50LCAvLyBpcyBzZXQgb24gY29uc3RydWN0aW9uXG4gIFNWR01hdHJpeCxcbiAgU1ZHUG9pbnQsXG4gIFNWR0VsZW1lbnQsXG4gIFNWR1NWR0VsZW1lbnQsXG4gIFNWR1BhdGhFbGVtZW50LFxuICBTVkdHcmFwaGljc0VsZW1lbnQsXG4gIFNWR1RleHRDb250ZW50RWxlbWVudCxcbiAgc2V0VGltZW91dDogZ2xvYmFsVGhpcy5zZXRUaW1lb3V0LFxuICBjbGVhclRpbWVvdXQ6IGdsb2JhbFRoaXMuY2xlYXJUaW1lb3V0LFxuICBwYWdlWE9mZnNldDogMCxcbiAgcGFnZVlPZmZzZXQ6IDAsXG4gIERhdGU6IGdsb2JhbFRoaXMuRGF0ZSxcbiAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lLFxuICBjYW5jZWxBbmltYXRpb25GcmFtZTogZ2xvYmFsVGhpcy5jbGVhclRpbWVvdXQsXG4gIHBlcmZvcm1hbmNlXG59XG5cbmV4dGVuZChXaW5kb3csIHdpblByb3BzKVxuIiwgImltcG9ydCB7IFdpbmRvdyB9IGZyb20gJy4vZG9tL1dpbmRvdy5qcydcbmltcG9ydCB7IERPTUltcGxlbWVudGF0aW9uIH0gZnJvbSAnLi9kb20vRG9jdW1lbnQuanMnXG5pbXBvcnQgKiBhcyBuYW1lc3BhY2VzIGZyb20gJy4vdXRpbHMvbmFtZXNwYWNlcy5qcydcblxuY29uc3QgeyBjcmVhdGVEb2N1bWVudCwgY3JlYXRlSFRNTERvY3VtZW50IH0gPSBET01JbXBsZW1lbnRhdGlvblxuXG5jb25zdCBjcmVhdGVXaW5kb3cgPSAoLi4uYXJncykgPT4ge1xuICBjb25zdCB3aW5kb3cgPSBuZXcgV2luZG93KClcbiAgY29uc3QgZG9jdW1lbnQgPSBjcmVhdGVEb2N1bWVudCguLi5hcmdzKVxuICB3aW5kb3cuZG9jdW1lbnQgPSBkb2N1bWVudFxuICBkb2N1bWVudC5kZWZhdWx0VmlldyA9IHdpbmRvd1xuICByZXR1cm4gd2luZG93XG59XG5cbmNvbnN0IGNyZWF0ZUhUTUxXaW5kb3cgPSAodGl0bGUpID0+IHtcbiAgY29uc3Qgd2luZG93ID0gbmV3IFdpbmRvdygpXG4gIGNvbnN0IGRvY3VtZW50ID0gRE9NSW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KHRpdGxlKVxuICB3aW5kb3cuZG9jdW1lbnQgPSBkb2N1bWVudFxuICBkb2N1bWVudC5kZWZhdWx0VmlldyA9IHdpbmRvd1xuICByZXR1cm4gd2luZG93XG59XG5cbmNvbnN0IGNyZWF0ZVNWR1dpbmRvdyA9ICgpID0+IHtcbiAgcmV0dXJuIGNyZWF0ZVdpbmRvdyhuYW1lc3BhY2VzLnN2ZywgJ3N2ZycpXG59XG5cbmNvbnN0IGNyZWF0ZVNWR0RvY3VtZW50ID0gKCkgPT4ge1xuICByZXR1cm4gY3JlYXRlRG9jdW1lbnQobmFtZXNwYWNlcy5zdmcsICdzdmcnKVxufVxuXG5leHBvcnQge1xuICBjcmVhdGVEb2N1bWVudCxcbiAgY3JlYXRlSFRNTERvY3VtZW50LFxuICBjcmVhdGVTVkdEb2N1bWVudCxcbiAgY3JlYXRlV2luZG93LFxuICBjcmVhdGVIVE1MV2luZG93LFxuICBjcmVhdGVTVkdXaW5kb3dcbn1cbiIsICJpbXBvcnQgdHlwZSB7IEZlYXRoZXJJY29uTmFtZXMgfSBmcm9tICdmZWF0aGVyLWljb25zJztcblxuaW1wb3J0IHR5cGUgeyBCcmFuZENvbG9ycyB9IGZyb20gJy4uL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgeyBHSVRIVUJfQUNUSU9OU19PTUlUVEVEX0lDT05TLCBpc1ZhbGlkSWNvbiwgUmVhZG1lU2VjdGlvbiB9IGZyb20gJy4uL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgdHlwZSBJbnB1dHMgZnJvbSAnLi4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4uL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IFNWR0VkaXRvciBmcm9tICcuLi9zdmctZWRpdG9yLm1qcyc7XG4vKipcbiAqIFdpaXRoIHRoYW5rcyB0b1xuICogaHR0cHM6Ly9naXRodWIuY29tL2hheWExNGJ1c2EvZ2l0aHViLWFjdGlvbi1icmFuZGluZ3MvYmxvYi9tYXN0ZXIvbWFpbi5qc1xuICogZm9yIHRoZSB1cmxzIHRvIHRoZSBicmFuZGluZyBpbWFnZXMuXG4gKi9cblxudHlwZSBNYXliZTxUPiA9IFQgfCB1bmRlZmluZWQ7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUJyYW5kaW5nIHtcbiAgYWx0OiBzdHJpbmc7XG4gIGltZzogc3RyaW5nO1xuICB1cmw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgc3ZnIGJyYW5kaW5nIGltYWdlLlxuICogZXhhbXBsZTpcbiAqIGBgYHRzXG4gKiBnZW5lcmF0ZVN2Z0ltYWdlKCcvcGF0aC90by9maWxlLnN2ZycsICdob21lJywgJ3JlZCcpXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0gc3ZnUGF0aCAtIFRoZSBwYXRoIHRvIHdoZXJlIHRoZSBzdmcgZmlsZSB3aWxsIGJlIHNhdmVkXG4gKiBAcGFyYW0gaWNvbiAtIFRoZSBpY29uIG5hbWUgZnJvbSB0aGUgZmVhdGhlci1pY29ucyBsaXN0XG4gKiBAcGFyYW0gYmdjb2xvciAtIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaXJjbGUgYmVoaW5kIHRoZSBpY29uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVN2Z0ltYWdlKFxuICBzdmdQYXRoOiBzdHJpbmcsXG4gIGljb246IFBhcnRpYWw8RmVhdGhlckljb25OYW1lcz4sXG4gIGJnY29sb3I6IFBhcnRpYWw8QnJhbmRDb2xvcnM+LFxuKTogdm9pZCB7XG4gIGNvbnN0IHN2Z0VkaXRvciA9IG5ldyBTVkdFZGl0b3IoKTtcbiAgc3ZnRWRpdG9yLmdlbmVyYXRlU3ZnSW1hZ2Uoc3ZnUGF0aCwgaWNvbiwgYmdjb2xvcik7XG59XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiByZXR1cm5zIGEgdmFsaWQgaWNvbiBuYW1lIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBicmFuZGluZy5cbiAqIElmIHRoZSBicmFuZGluZyBpcyB1bmRlZmluZWQgb3Igbm90IGEgdmFsaWQgaWNvbiBuYW1lLCBhbiBlcnJvciBpcyB0aHJvd24uXG4gKiBJdCBjaGVja3MgaWYgdGhlIGJyYW5kaW5nIGljb24gaXMgcHJlc2VudCBpbiB0aGUgR0lUSFVCX0FDVElPTlNfQlJBTkRJTkdfSUNPTlMgc2V0LFxuICogYW5kIGlmIHNvLCByZXR1cm5zIHRoZSBjb3JyZXNwb25kaW5nIGZlYXRoZXIgaWNvbiBrZXkgYXJyYXkuXG4gKiBJZiB0aGUgYnJhbmRpbmcgaWNvbiBpcyBwcmVzZW50IGluIHRoZSBHSVRIVUJfQUNUSU9OU19PTUlUVEVEX0lDT05TIHNldCxcbiAqIGFuIGVycm9yIGlzIHRocm93biBzcGVjaWZ5aW5nIHRoYXQgdGhlIGljb24gaXMgcGFydCBvZiB0aGUgb21pdHRlZCBpY29ucyBsaXN0LlxuICogSWYgdGhlIGJyYW5kaW5nIGljb24gaXMgbm90IGEgdmFsaWQgaWNvbiBmcm9tIHRoZSBmZWF0aGVyLWljb25zIGxpc3QsIGFuIGVycm9yIGlzIHRocm93bi5cbiAqIEBwYXJhbSBicmFuZCAtIFRoZSBicmFuZGluZyBvYmplY3RcbiAqIEByZXR1cm5zIFRoZSBjb3JyZXNwb25kaW5nIGZlYXRoZXIgaWNvbiBrZXkgYXJyYXlcbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIGJyYW5kaW5nIGljb24gaXMgdW5kZWZpbmVkLCBub3QgYSB2YWxpZCBpY29uIG5hbWUsIG9yIHBhcnQgb2YgdGhlIG9taXR0ZWQgaWNvbnMgbGlzdFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VmFsaWRJY29uTmFtZShpY29uPzogUGFydGlhbDxGZWF0aGVySWNvbk5hbWVzPik6IEZlYXRoZXJJY29uTmFtZXMge1xuICBpZiAoIWljb24pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIHZhbGlkIGJyYW5kaW5nIGljb24gbmFtZSBmb3VuZDogYWN0aW9uLnltbCBicmFuZGluZyBpcyB1bmRlZmluZWRgKTtcbiAgfVxuXG4gIGlmIChpc1ZhbGlkSWNvbihpY29uKSkge1xuICAgIHJldHVybiBpY29uO1xuICB9XG5cbiAgaWYgKEdJVEhVQl9BQ1RJT05TX09NSVRURURfSUNPTlMuaGFzKGljb24pKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYE5vIHZhbGlkIGJyYW5kaW5nIGljb24gbmFtZSBmb3VuZDogJHtpY29ufSBpcyBwYXJ0IG9mIHRoZSBsaXN0IG9mIG9taXR0ZWQgaWNvbnMuIGAsXG4gICAgKTtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihcbiAgICBgTm8gdmFsaWQgYnJhbmRpbmcgaWNvbiBuYW1lIGZvdW5kOiAke2ljb259IGlzIG5vdCBhIHZhbGlkIGljb24gZnJvbSB0aGUgZmVhdGhlci1pY29ucyBsaXN0YCxcbiAgKTtcbn1cblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIGdlbmVyYXRlcyBhbiBIVE1MIGltYWdlIG1hcmt1cCB3aXRoIGJyYW5kaW5nIGluZm9ybWF0aW9uLlxuICogSXQgdGFrZXMgaW5wdXRzIGFuZCBhbiBvcHRpb25hbCB3aWR0aCBwYXJhbWV0ZXIuXG4gKiBJZiB0aGUgYnJhbmRpbmdfc3ZnX3BhdGggaXMgcHJvdmlkZWQsIGl0IGdlbmVyYXRlcyBhbiBhY3Rpb24ueW1sIGJyYW5kaW5nIGltYWdlIGZvciB0aGUgc3BlY2lmaWVkIGljb24gYW5kIGNvbG9yLlxuICogT3RoZXJ3aXNlLCBpdCByZXR1cm5zIGFuIGVycm9yIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIGlucHV0cyAtIFRoZSBpbnB1dHMgaW5zdGFuY2Ugd2l0aCBkYXRhIGZvciB0aGUgZnVuY3Rpb24uXG4gKiBAcGFyYW0gd2lkdGggLSBUaGUgd2lkdGggb2YgdGhlIGltYWdlIChkZWZhdWx0IGlzICcxNSUnKS5cbiAqIEByZXR1cm5zIFRoZSBIVE1MIGltYWdlIG1hcmt1cCB3aXRoIGJyYW5kaW5nIGluZm9ybWF0aW9uIG9yIGFuIGVycm9yIG1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZUltZ01hcmt1cChpbnB1dHM6IElucHV0cywgd2lkdGggPSAnMTUlJyk6IHN0cmluZyB7XG4gIC8vIENyZWF0ZSBhIGxvZyB0YXNrIGZvciBkZWJ1Z2dpbmdcbiAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soJ2dlbmVyYXRlSW1nTWFya3VwJyk7XG4gIGlmICghaW5wdXRzLmFjdGlvbi5icmFuZGluZykge1xuICAgIGxvZy5pbmZvKCdObyBicmFuZGluZyBzZWN0aW9uJyk7XG4gICAgcmV0dXJuICcnO1xuICB9XG4gIC8vIEdldCB0aGUgYnJhbmRpbmcgaW5mb3JtYXRpb24gZnJvbSB0aGUgaW5wdXRzXG4gIGNvbnN0IHsgaWNvbiwgY29sb3IgfSA9IGlucHV0cy5hY3Rpb24uYnJhbmRpbmc7XG4gIGNvbnN0IGljb25OYW1lID0gZ2V0VmFsaWRJY29uTmFtZShpY29uKTtcbiAgY29uc3Qgc3ZnUGF0aCA9IGlucHV0cy5jb25maWcuZ2V0KCdicmFuZGluZ19zdmdfcGF0aCcpIGFzIE1heWJlPHN0cmluZz47XG4gIGNvbnN0IHJlc3VsdCA9IGA8aW1nIHNyYz1cIiR7c3ZnUGF0aH1cIiB3aWR0aD1cIiR7d2lkdGh9XCIgYWxpZ249XCJjZW50ZXJcIiBhbHQ9XCJicmFuZGluZzxpY29uOiR7aWNvbk5hbWV9IGNvbG9yOiR7Y29sb3J9PlwiIC8+YDtcblxuICBpZiAoc3ZnUGF0aCkge1xuICAgIGxvZy5pbmZvKGBHZW5lcmF0aW5nIGFjdGlvbi55bWwgYnJhbmRpbmcgaW1hZ2UgZm9yICR7aWNvbk5hbWV9YCk7XG4gICAgY29uc3Qgc3ZnID0gaW5wdXRzLmNvbmZpZy5nZXQoJ2ltYWdlX2dlbmVyYXRlZCcpIGFzIE1heWJlPHN0cmluZz47XG4gICAgY29uc3QgaGFzaCA9IGAke2ljb25OYW1lfSR7Y29sb3J9YDtcbiAgICBpZiAoc3ZnICYmIGhhc2gubG9jYWxlQ29tcGFyZShzdmcpICE9PSAwKSB7XG4gICAgICBnZW5lcmF0ZVN2Z0ltYWdlKHN2Z1BhdGgsIGljb25OYW1lLCBjb2xvcik7XG4gICAgICBpbnB1dHMuY29uZmlnLnNldCgnaW1hZ2VfZ2VuZXJhdGVkJywgaGFzaCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbiAgbG9nLmVycm9yKGBObyBicmFuZGluZ19zdmdfcGF0aCBwcm92aWRlZCBvciBpdCBpcyBlbXB0eSBzdHJpbmcsIGNhbid0IGNyZWF0ZSB0aGUgZmlsZSFgKTtcbiAgcmV0dXJuIGA8IS0tIEVSUk9SOiBubyBicmFuZGluZyBwYXRoIGZvdW5kID0gJHtyZXN1bHR9IC0tPmA7XG59XG5cbi8qKlxuICogVGhpcyBpcyBhIFR5cGVTY3JpcHQgZnVuY3Rpb24gbmFtZWQgXCJ1cGRhdGVCcmFuZGluZ1wiIHRoYXQgdGFrZXMgaW4gYSBzZWN0aW9uVG9rZW4gc3RyaW5nIGFuZCBhbiBvYmplY3Qgb2YgaW5wdXRzLlxuICogSXQgZXhwb3J0cyB0aGUgZnVuY3Rpb24gYXMgdGhlIGRlZmF1bHQgZXhwb3J0LlxuICogVGhlIGZ1bmN0aW9uIGxvZ3MgdGhlIGJyYW5kIGRldGFpbHMgZnJvbSB0aGUgaW5wdXRzLCBzdGFydHMgYSBsb2cgdGFzaywgZ2VuZXJhdGVzIGltYWdlIG1hcmt1cCxcbiAqIHVwZGF0ZXMgYSBzZWN0aW9uIGluIHRoZSByZWFkbWUgZWRpdG9yIHVzaW5nIHRoZSBzZWN0aW9uVG9rZW4gYW5kIGNvbnRlbnQsIGFuZCBsb2dzIHN1Y2Nlc3Mgb3IgZmFpbHVyZSBtZXNzYWdlcy5cbiAqXG4gKiBAcGFyYW0gc2VjdGlvblRva2VuIC0gVGhlIHNlY3Rpb25Ub2tlbiBzdHJpbmcgdGhhdCBpcyB1c2VkIHRvIGlkZW50aWZ5IHRoZSBzZWN0aW9uIGluIHRoZSByZWFkbWUgZWRpdG9yLlxuICogQHBhcmFtIGlucHV0cyAtIFRoZSBpbnB1dHMgb2JqZWN0IHRoYXQgY29udGFpbnMgZGF0YSBmb3IgdGhlIGZ1bmN0aW9uLlxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1cGRhdGVCcmFuZGluZyhcbiAgc2VjdGlvblRva2VuOiBSZWFkbWVTZWN0aW9uLFxuICBpbnB1dHM6IElucHV0cyxcbik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzayhzZWN0aW9uVG9rZW4pO1xuXG4gIGxvZy5pbmZvKGBCcmFuZCBkZXRhaWxzOiAke0pTT04uc3RyaW5naWZ5KGlucHV0cy5hY3Rpb24uYnJhbmRpbmcpfWApO1xuXG4gIGxvZy5zdGFydCgpO1xuICAvKiogY3JlYXRlIDxpbWcgIC8+IG1hcmt1cCB3aXRoIGFuIGltYWdlIHdpZHRoIG9mIDE1JSAqL1xuICBjb25zdCBpbWFnZVdpZHRoID0gJzE1JSc7XG4gIGNvbnN0IGNvbnRlbnQgPSBnZW5lcmF0ZUltZ01hcmt1cChpbnB1dHMsIGltYWdlV2lkdGgpO1xuICBpbnB1dHMucmVhZG1lRWRpdG9yLnVwZGF0ZVNlY3Rpb24oc2VjdGlvblRva2VuLCBjb250ZW50KTtcbiAgaWYgKGNvbnRlbnQgJiYgY29udGVudCAhPT0gJycpIHtcbiAgICBsb2cuc3VjY2VzcygnYnJhbmRpbmcgc3ZnIHN1Y2Nlc3NmdWxseSBjcmVhdGVkJyk7XG4gIH0gZWxzZSB7XG4gICAgbG9nLmZhaWwoJ2JyYW5kaW5nIHN2ZyBmYWlsZWQgdG8gYmUgY3JlYXRlZCcpO1xuICB9XG5cbiAgY29uc3QgcmV0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG4gIHJldFtzZWN0aW9uVG9rZW5dID0gY29udGVudDtcbiAgcmV0dXJuIHJldDtcbn1cbiIsICIvKipcbiAqIFRoaXMgVHlwZVNjcmlwdCBjb2RlIGV4cG9ydHMgYSBmdW5jdGlvbiBuYW1lZCAndXBkYXRlRGVzY3JpcHRpb24nIHdoaWNoIHRha2VzIGEgc2VjdGlvblRva2VuIChSZWFkbWVTZWN0aW9uKSBhbmQgYW4gaW5zdGFuY2Ugb2YgdGhlICdJbnB1dHMnIGNsYXNzIGFzIGl0cyBwYXJhbWV0ZXJzLlxuICogVGhlIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciB1cGRhdGluZyB0aGUgZGVzY3JpcHRpb24gc2VjdGlvbiBpbiB0aGUgUkVBRE1FLm1kIGZpbGUgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGlucHV0cy5cbiAqIEl0IHV0aWxpemVzIHRoZSAnTG9nVGFzaycgY2xhc3MgZm9yIGxvZ2dpbmcgcHVycG9zZXMuXG4gKiBAcGFyYW0ge1JlYWRtZVNlY3Rpb259IHNlY3Rpb25Ub2tlbiAtIFRoZSBzZWN0aW9uVG9rZW4gcmVwcmVzZW50aW5nIHRoZSBzZWN0aW9uIG9mIHRoZSBSRUFETUUgdG8gdXBkYXRlLlxuICogQHBhcmFtIHtJbnB1dHN9IGlucHV0cyAtIFRoZSBJbnB1dHMgY2xhc3MgaW5zdGFuY2UuXG4gKi9cbmltcG9ydCB7IFJlYWRtZVNlY3Rpb24gfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHR5cGUgSW5wdXRzIGZyb20gJy4uL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuLi9sb2d0YXNrL2luZGV4LmpzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXBkYXRlRGVzY3JpcHRpb24oXG4gIHNlY3Rpb25Ub2tlbjogUmVhZG1lU2VjdGlvbixcbiAgaW5wdXRzOiBJbnB1dHMsXG4pOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgY29uc3QgbG9nID0gbmV3IExvZ1Rhc2soc2VjdGlvblRva2VuKTtcblxuICAvLyBCdWlsZCB0aGUgbmV3IFJFQURNRVxuICBjb25zdCBjb250ZW50OiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8vIEJ1aWxkIHRoZSBuZXcgZGVzY3JpcHRpb24gc2VjdGlvblxuICBpZiAoaW5wdXRzPy5hY3Rpb24/LmRlc2NyaXB0aW9uKSB7XG4gICAgbG9nLnN0YXJ0KCk7XG4gICAgY29uc3QgZGVzYzogc3RyaW5nID0gaW5wdXRzLmFjdGlvbi5kZXNjcmlwdGlvblxuICAgICAgLnRyaW0oKVxuICAgICAgLnJlcGxhY2VBbGwoJ1xcclxcbicsICdcXG4nKSAvLyBDb252ZXJ0IENSIHRvIExGXG4gICAgICAucmVwbGFjZUFsbCgvICsvZywgJyAnKSAvLyBTcXVhc2ggY29uc2VjdXRpdmUgc3BhY2VzXG4gICAgICAucmVwbGFjZUFsbCgnIFxcbicsICdcXG4nKSAvLyBTcXVhc2ggc3BhY2UgZm9sbG93ZWQgYnkgbmV3bGluZVxuICAgICAgLnJlcGxhY2VBbGwoJ1xcblxcbicsICc8YnIgLz4nKTsgLy8gQ29udmVydCBkb3VibGUgcmV0dXJuIHRvIGEgYnJlYWtcblxuICAgIGxvZy5pbmZvKGBXcml0aW5nICR7ZGVzYy5sZW5ndGh9IGNoYXJhY3RlcnMgdG8gdGhlIGRlc2NyaXB0aW9uIHNlY3Rpb25gKTtcbiAgICBjb250ZW50LnB1c2goZGVzYyk7XG4gICAgaW5wdXRzLnJlYWRtZUVkaXRvci51cGRhdGVTZWN0aW9uKHNlY3Rpb25Ub2tlbiwgY29udGVudCk7XG4gICAgbG9nLnN1Y2Nlc3MoKTtcbiAgfVxuICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgcmV0W3NlY3Rpb25Ub2tlbl0gPSBjb250ZW50LmpvaW4oJ1xcbicpO1xuICByZXR1cm4gcmV0O1xufVxuIiwgIi8qKlxuICogVHlwZXMgcmVwcmVzZW50aW5nIGEgMkQgYXJyYXkgb2Ygc3RyaW5ncyBmb3IgYSBNYXJrZG93biB0YWJsZS5cbiAqL1xuZXhwb3J0IHR5cGUgTWFya2Rvd25BcnJheVJvd1R5cGUgPSBzdHJpbmdbXVtdO1xuZXhwb3J0IHR5cGUgTWFya2Rvd25BcnJheUl0ZW1UeXBlID0gc3RyaW5nO1xuXG4vKipcbiAqIEZpbGxzIGEgc3RyaW5nIHRvIGEgZGVzaXJlZCB3aWR0aCBieSBwYWRkaW5nIHdpdGggc3BhY2VzLlxuICpcbiAqIEBwYXJhbSB0ZXh0IC0gVGhlIHRleHQgdG8gcGFkLlxuICogQHBhcmFtIHdpZHRoIC0gVGhlIGRlc2lyZWQgdG90YWwgd2lkdGguXG4gKiBAcGFyYW0gcGFkZGluZ1N0YXJ0IC0gTnVtYmVyIG9mIHNwYWNlcyB0byBwYWQgYXQgdGhlIHN0YXJ0LlxuICogQHJldHVybnMgVGhlIHBhZGRlZCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWRTdHJpbmcodGV4dDogc3RyaW5nLCB3aWR0aDogbnVtYmVyLCBwYWRkaW5nU3RhcnQ6IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiAnICcucmVwZWF0KHBhZGRpbmdTdGFydCkgKyB0ZXh0LnBhZEVuZCh3aWR0aCk7XG59XG5cbi8qKlxuICogRXNjYXBlcyBzcGVjaWFsIE1hcmtkb3duIGNoYXJhY3RlcnMgaW4gYSBzdHJpbmcuXG4gKlxuICogQHBhcmFtIHRleHQgLSBUaGUgdGV4dCB0byBlc2NhcGUuXG4gKiBAcmV0dXJucyBUaGUgZXNjYXBlZCB0ZXh0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFya2Rvd25Fc2NhcGVUYWJsZUNlbGwodGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHRleHQucmVwbGFjZUFsbCgnXFxuJywgJzxiciAvPicpLnJlcGxhY2VBbGwoJ3wnLCAnXFxcXHwnKTtcbn1cblxuLyoqXG4gKiBFc2NhcGVzIGlubGluZSBjb2RlIGJsb2NrcyBpbiBhIE1hcmtkb3duIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gY29udGVudCAtIE1hcmtkb3duIHN0cmluZy5cbiAqIEByZXR1cm5zIFN0cmluZyB3aXRoIGVzY2FwZWQgaW5saW5lIGNvZGUgYmxvY2tzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFya2Rvd25Fc2NhcGVJbmxpbmVDb2RlKGNvbnRlbnQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBjb250ZW50LnJlcGxhY2VBbGwoL2AoW15gXSopYC9nLCAnPGNvZGU+JDE8L2NvZGU+JykucmVwbGFjZUFsbCgnPjwhLS0nLCAnPlxcXFw8IS0tJyk7XG59XG4vKipcbiAqIENsb25lcyBhIDJEIGFycmF5LlxuICpcbiAqIEBwYXJhbSBhcnIgLSBBcnJheSB0byBjbG9uZS5cbiAqIEByZXR1cm5zIENsb25lZCBhcnJheS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsb25lQXJyYXkoYXJyOiBNYXJrZG93bkFycmF5Um93VHlwZSk6IE1hcmtkb3duQXJyYXlSb3dUeXBlIHtcbiAgcmV0dXJuIGFyci5tYXAoKGlubmVyQXJyKSA9PiBbLi4uaW5uZXJBcnJdKTtcbn1cblxuLyoqXG4gKiBHZXRzIG1heCBhbmQgbWluIGNvbHVtbiBjb3VudHMgZnJvbSAyRCBhcnJheS5cbiAqXG4gKiBAcGFyYW0gZGF0YSAtIDJEIHN0cmluZyBhcnJheS5cbiAqIEByZXR1cm5zIE9iamVjdCB3aXRoIG1heCBhbmQgbWluIGNvbHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb2x1bW5Db3VudHMoZGF0YTogTWFya2Rvd25BcnJheVJvd1R5cGUpOiB7XG4gIG1heENvbHM6IG51bWJlcjtcbiAgbWluQ29sczogbnVtYmVyO1xufSB7XG4gIGxldCBtYXhDb2xzID0gMDtcbiAgbGV0IG1pbkNvbHMgPSAwO1xuXG4gIGZvciAoY29uc3QgZSBvZiBkYXRhKSB7XG4gICAgY29uc3QgbnVtQ29scyA9IGUubGVuZ3RoO1xuICAgIG1heENvbHMgPSBNYXRoLm1heChtYXhDb2xzLCBudW1Db2xzKTtcbiAgICBtaW5Db2xzID0gbWluQ29scyA9PT0gMCA/IG51bUNvbHMgOiBNYXRoLm1pbihtaW5Db2xzLCBudW1Db2xzKTtcbiAgfVxuXG4gIHJldHVybiB7IG1heENvbHMsIG1pbkNvbHMgfTtcbn1cblxuLyoqXG4gKiBQYWRzIDJEIGFycmF5IHJvd3MgdG8gZXF1YWwgbGVuZ3RoLlxuICpcbiAqIEBwYXJhbSBkYXRhIC0gMkQgYXJyYXkgdG8gcGFkLlxuICogQHBhcmFtIG1heENvbHMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byBwYWQgdG8uXG4gKiBAcmV0dXJucyBQYWRkZWQgMkQgYXJyYXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWRBcnJheVJvd3MoZGF0YTogTWFya2Rvd25BcnJheVJvd1R5cGUsIG1heENvbHM6IG51bWJlcik6IE1hcmtkb3duQXJyYXlSb3dUeXBlIHtcbiAgcmV0dXJuIGRhdGEubWFwKChyb3cpID0+IHtcbiAgICBjb25zdCBwYWRkaW5nID0gQXJyYXkuZnJvbSh7IGxlbmd0aDogbWF4Q29scyAtIHJvdy5sZW5ndGggfSkuZmlsbCgnJyk7XG4gICAgcmV0dXJuIFsuLi5yb3csIC4uLnBhZGRpbmddO1xuICB9KSBhcyBNYXJrZG93bkFycmF5Um93VHlwZTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhIDJEIGFycmF5IG9mIHN0cmluZ3MgdG8gYSBNYXJrZG93biB0YWJsZS5cbiAqXG4gKiBAcGFyYW0gZGF0YSAtIDJEIHN0cmluZyBhcnJheS5cbiAqIEByZXR1cm5zIE1hcmtkb3duIHRhYmxlIHN0cmluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEFycmF5T2ZBcnJheXNUb01hcmtkb3duVGFibGUocHJvdmlkZWRUYWJsZUNvbnRlbnQ6IE1hcmtkb3duQXJyYXlSb3dUeXBlKTogc3RyaW5nIHtcbiAgY29uc3QgY2xvbmVkRGF0YSA9IGNsb25lQXJyYXkocHJvdmlkZWRUYWJsZUNvbnRlbnQpO1xuICBjb25zdCB7IG1heENvbHMgfSA9IGdldENvbHVtbkNvdW50cyhjbG9uZWREYXRhKTtcbiAgY29uc3QgcGFkZGVkRGF0YSA9IHBhZEFycmF5Um93cyhjbG9uZWREYXRhLCBtYXhDb2xzKTtcbiAgY29uc3QgbWF4Um93cyA9IHBhZGRlZERhdGEubGVuZ3RoO1xuXG4gIGNvbnN0IG1hcmtkb3duQXJyYXlSb3dzTGVuZ3RoID0gbWF4Um93cyArIDE7XG4gIGNvbnN0IG1hcmtkb3duQXJyYXlFbnRyaWVzTGVuZ3RoID0gbWF4Q29scyAqIDIgKyAxO1xuICBjb25zdCBtYXJrZG93bkFycmF5czogTWFya2Rvd25BcnJheVJvd1R5cGUgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiBtYXJrZG93bkFycmF5Um93c0xlbmd0aCB9LCAoKSA9PlxuICAgIEFycmF5LmZyb20oeyBsZW5ndGg6IG1hcmtkb3duQXJyYXlFbnRyaWVzTGVuZ3RoIH0sICgpID0+ICd8JyksXG4gICk7XG5cbiAgY29uc3Qgb3V0cHV0U3RyaW5nczogc3RyaW5nW10gPSBbXTtcbiAgbGV0IGkgPSAwO1xuICBmb3IgKGNvbnN0IHJvdyBvZiBtYXJrZG93bkFycmF5cykge1xuICAgIGxldCBjb2wgPSAwO1xuICAgIGNvbnN0IGlkeCA9IGkgPiAxID8gaSAtIDEgOiAwO1xuICAgIGNvbnN0IGRhdGFSb3cgPSBwYWRkZWREYXRhW2lkeF07XG4gICAgZm9yIChsZXQgaiA9IDA7IGogPCByb3cubGVuZ3RoOyBqKyspIHtcbiAgICAgIGxldCBjb250ZW50ID0gbWFya2Rvd25Fc2NhcGVUYWJsZUNlbGwoZGF0YVJvd1tjb2xdID8/ICcnKTtcbiAgICAgIGNvbnRlbnQgPSBtYXJrZG93bkVzY2FwZUlubGluZUNvZGUoY29udGVudCk7XG4gICAgICBpZiAoaiAlIDIgPT09IDEpIHtcbiAgICAgICAgaWYgKGkgPT09IDApIHtcbiAgICAgICAgICBtYXJrZG93bkFycmF5c1tpXVtqXSA9IGAgKioke2NvbnRlbnQudHJpbSgpfSoqIGA7XG4gICAgICAgIH0gZWxzZSBpZiAoaSA9PT0gMSkge1xuICAgICAgICAgIG1hcmtkb3duQXJyYXlzW2ldW2pdID0gJy0tLSc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbWFya2Rvd25BcnJheXNbaV1bal0gPSBgICR7Y29udGVudC50cmltKCl9IGA7XG4gICAgICAgIH1cbiAgICAgICAgY29sICs9IDE7XG4gICAgICB9XG4gICAgfVxuICAgIG91dHB1dFN0cmluZ3MucHVzaChgJHttYXJrZG93bkFycmF5c1tpXS5qb2luKCcnKX1cXG5gKTtcbiAgICBpICs9IDE7XG4gIH1cbiAgcmV0dXJuIG91dHB1dFN0cmluZ3Muam9pbignJyk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IEFycmF5T2ZBcnJheXNUb01hcmtkb3duVGFibGU7XG4iLCAiLyoqXG4gKiBUaGlzIFR5cGVTY3JpcHQgY29kZSBleHBvcnRzIGEgZnVuY3Rpb24gbmFtZWQgJ3VwZGF0ZUlucHV0cycgd2hpY2ggdGFrZXMgYSBzZWN0aW9uVG9rZW4gKFJlYWRtZVNlY3Rpb24pIGFuZCBhbiBpbnN0YW5jZSBvZiB0aGUgJ0lucHV0cycgY2xhc3MgYXMgaXRzIHBhcmFtZXRlcnMuXG4gKiBUaGUgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIHVwZGF0aW5nIHRoZSBpbnB1dHMgc2VjdGlvbiBpbiB0aGUgUkVBRE1FLm1kIGZpbGUgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGlucHV0cy5cbiAqIEl0IHV0aWxpemVzIHRoZSAnTG9nVGFzaycgY2xhc3MgZm9yIGxvZ2dpbmcgcHVycG9zZXMsICdjb2x1bW5IZWFkZXInIGFuZCAncm93SGVhZGVyJyBmdW5jdGlvbnMgZnJvbSAnLi4vaGVscGVycy5qcycgZm9yIGZvcm1hdHRpbmcgdGFibGUgaGVhZGVycywgYW5kICdtYXJrZG93bmVyJyBmdW5jdGlvbiBmcm9tICcuLi9tYXJrZG93bmVyL2luZGV4LmpzJyBmb3IgZ2VuZXJhdGluZyBtYXJrZG93biBjb250ZW50LlxuICogQHBhcmFtIHtSZWFkbWVTZWN0aW9ufSBzZWN0aW9uVG9rZW4gLSBUaGUgc2VjdGlvblRva2VuIHJlcHJlc2VudGluZyB0aGUgc2VjdGlvbiBvZiB0aGUgUkVBRE1FIHRvIHVwZGF0ZS5cbiAqIEBwYXJhbSB7SW5wdXRzfSBpbnB1dHMgLSBUaGUgSW5wdXRzIGNsYXNzIGluc3RhbmNlLlxuICovXG5pbXBvcnQgeyBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB7IGNvbHVtbkhlYWRlciwgcm93SGVhZGVyIH0gZnJvbSAnLi4vaGVscGVycy5qcyc7XG5pbXBvcnQgdHlwZSBJbnB1dHMgZnJvbSAnLi4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4uL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IG1hcmtkb3duZXIgZnJvbSAnLi4vbWFya2Rvd25lci9pbmRleC5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVwZGF0ZUlucHV0cyhcbiAgc2VjdGlvblRva2VuOiBSZWFkbWVTZWN0aW9uLFxuICBpbnB1dHM6IElucHV0cyxcbik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzayhzZWN0aW9uVG9rZW4pO1xuXG4gIC8vIEJ1aWxkIHRoZSBuZXcgUkVBRE1FXG4gIGNvbnN0IGNvbnRlbnQ6IHN0cmluZ1tdID0gW107XG4gIGNvbnN0IG1hcmtkb3duQXJyYXk6IHN0cmluZ1tdW10gPSBbXTtcbiAgY29uc3QgdGl0bGVBcnJheSA9IFsnSW5wdXQnLCAnRGVzY3JpcHRpb24nLCAnRGVmYXVsdCcsICdSZXF1aXJlZCddO1xuICBjb25zdCB0aXRsZXM6IHN0cmluZ1tdID0gW107XG5cbiAgZm9yIChjb25zdCB0IG9mIHRpdGxlQXJyYXkpIHtcbiAgICB0aXRsZXMucHVzaChjb2x1bW5IZWFkZXIodCkpO1xuICB9XG5cbiAgbWFya2Rvd25BcnJheS5wdXNoKHRpdGxlcyk7XG5cbiAgY29uc3QgdmFycyA9IGlucHV0cy5hY3Rpb24uaW5wdXRzO1xuICBjb25zdCB0SSA9IHZhcnMgPyBPYmplY3Qua2V5cyh2YXJzKS5sZW5ndGggOiAwO1xuXG4gIGlmICh2YXJzICYmIHRJID4gMCkge1xuICAgIGxvZy5zdGFydCgpO1xuXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXModmFycykpIHtcbiAgICAgIGNvbnN0IHZhbHVlcyA9IHZhcnNba2V5XTtcbiAgICAgIGxldCBkZXNjcmlwdGlvbiA9IHZhbHVlcz8uZGVzY3JpcHRpb24gPz8gJyc7XG5cbiAgICAgIC8vIENoZWNrIGlmIG9ubHkgdGhlIGZpcnN0IGxpbmUgc2hvdWxkIGJlIGFkZGVkIChvbmx5IHN1YmplY3Qgd2l0aG91dCBib2R5KVxuICAgICAgY29uc3QgbWF0Y2hlcyA9IC8oLio/KVxcblxcbihbU3NdKikvLmV4ZWMoZGVzY3JpcHRpb24pO1xuXG4gICAgICBpZiAobWF0Y2hlcyAmJiBtYXRjaGVzLmxlbmd0aCA+PSAyKSB7XG4gICAgICAgIGRlc2NyaXB0aW9uID0gbWF0Y2hlc1sxXSB8fCBkZXNjcmlwdGlvbjtcbiAgICAgIH1cblxuICAgICAgZGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbi50cmltKCkucmVwbGFjZSgnXFxuJywgJzxiciAvPicpO1xuXG4gICAgICBjb25zdCByb3c6IHN0cmluZ1tdID0gW1xuICAgICAgICByb3dIZWFkZXIoa2V5KSxcbiAgICAgICAgZGVzY3JpcHRpb24sXG4gICAgICAgIHZhbHVlcz8uZGVmYXVsdCA/IGA8Y29kZT4ke3ZhbHVlcy5kZWZhdWx0fTwvY29kZT5gIDogJycsXG4gICAgICAgIHZhbHVlcz8ucmVxdWlyZWQgPyAnKip0cnVlKionIDogJ19fZmFsc2VfXycsXG4gICAgICBdO1xuICAgICAgbG9nLmRlYnVnKEpTT04uc3RyaW5naWZ5KHJvdykpO1xuICAgICAgbWFya2Rvd25BcnJheS5wdXNoKHJvdyk7XG4gICAgfVxuICAgIGNvbnRlbnQucHVzaChtYXJrZG93bmVyKG1hcmtkb3duQXJyYXkpKTtcbiAgICBsb2cuaW5mbyhgQWN0aW9uIGhhcyAke3RJfSB0b3RhbCAke3NlY3Rpb25Ub2tlbn1gKTtcbiAgICBpbnB1dHMucmVhZG1lRWRpdG9yLnVwZGF0ZVNlY3Rpb24oc2VjdGlvblRva2VuLCBjb250ZW50KTtcbiAgICBsb2cuc3VjY2VzcygpO1xuICB9IGVsc2Uge1xuICAgIGxvZy5kZWJ1ZyhgQWN0aW9uIGhhcyBubyAke3NlY3Rpb25Ub2tlbn1gKTtcbiAgfVxuICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgcmV0W3NlY3Rpb25Ub2tlbl0gPSBjb250ZW50LmpvaW4oJ1xcbicpO1xuICByZXR1cm4gcmV0O1xufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgZXhwb3J0cyBhIGZ1bmN0aW9uIG5hbWVkICd1cGRhdGVPdXRwdXRzJyB3aGljaCB0YWtlcyBhIHNlY3Rpb25Ub2tlbiAoc3RyaW5nKSBhbmQgYW4gaW5zdGFuY2Ugb2YgdGhlICdJbnB1dHMnIGNsYXNzIGFzIGl0cyBwYXJhbWV0ZXJzLlxuICogVGhlIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciB1cGRhdGluZyB0aGUgb3V0cHV0cyBzZWN0aW9uIGluIHRoZSBSRUFETUUubWQgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW5wdXRzLlxuICogSXQgZ2VuZXJhdGVzIGEgdGFibGUgd2l0aCB0aHJlZSBjb2x1bW5zOiBPdXRwdXQgbmFtZSwgRGVzY3JpcHRpb24sIGFuZCBWYWx1ZSAoZm9yIGNvbXBvc2l0ZSBhY3Rpb25zKS5cbiAqIEl0IHV0aWxpemVzIHRoZSAnTG9nVGFzaycgY2xhc3MgZm9yIGxvZ2dpbmcgcHVycG9zZXMsICdjb2x1bW5IZWFkZXInIGFuZCAncm93SGVhZGVyJyBmdW5jdGlvbnMgZnJvbSAnLi4vaGVscGVycy5qcycgZm9yIGZvcm1hdHRpbmcgdGFibGUgaGVhZGVycywgYW5kICdtYXJrZG93bmVyJyBmdW5jdGlvbiBmcm9tICcuLi9tYXJrZG93bmVyL2luZGV4LmpzJyBmb3IgZ2VuZXJhdGluZyBtYXJrZG93biBjb250ZW50LlxuICogQHBhcmFtIHtSZWFkbWVTZWN0aW9ufSBzZWN0aW9uVG9rZW4gLSBUaGUgc2VjdGlvblRva2VuIHVzZWQgZm9yIGlkZW50aWZ5aW5nIHRoZSBzZWN0aW9uLlxuICogQHBhcmFtIHtJbnB1dHN9IGlucHV0cyAtIFRoZSBJbnB1dHMgY2xhc3MgaW5zdGFuY2UuXG4gKi9cbmltcG9ydCB7IFJlYWRtZVNlY3Rpb24gfSBmcm9tICcuLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgY29sdW1uSGVhZGVyLCByb3dIZWFkZXIgfSBmcm9tICcuLi9oZWxwZXJzLmpzJztcbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgbWFya2Rvd25lciBmcm9tICcuLi9tYXJrZG93bmVyL2luZGV4LmpzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXBkYXRlT3V0cHV0cyhcbiAgc2VjdGlvblRva2VuOiBSZWFkbWVTZWN0aW9uLFxuICBpbnB1dHM6IElucHV0cyxcbik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICBjb25zdCBsb2cgPSBuZXcgTG9nVGFzayhzZWN0aW9uVG9rZW4pO1xuXG4gIC8vIEJ1aWxkIHRoZSBuZXcgUkVBRE1FXG4gIGNvbnN0IGNvbnRlbnQ6IHN0cmluZ1tdID0gW107XG5cbiAgY29uc3QgbWFya2Rvd25BcnJheTogc3RyaW5nW11bXSA9IFtdO1xuICBjb25zdCB0aXRsZUFycmF5ID0gWydPdXRwdXQnLCAnRGVzY3JpcHRpb24nLCAnVmFsdWUnXTtcbiAgY29uc3QgdGl0bGVzOiBzdHJpbmdbXSA9IFtdO1xuICBmb3IgKGNvbnN0IHQgb2YgdGl0bGVBcnJheSkge1xuICAgIHRpdGxlcy5wdXNoKGNvbHVtbkhlYWRlcih0KSk7XG4gIH1cbiAgbWFya2Rvd25BcnJheS5wdXNoKHRpdGxlcyk7XG4gIGNvbnN0IHZhcnMgPSBpbnB1dHMuYWN0aW9uLm91dHB1dHM7XG4gIGNvbnN0IHRJID0gdmFycyA/IE9iamVjdC5rZXlzKHZhcnMpLmxlbmd0aCA6IDA7XG4gIGlmICh2YXJzICYmIHRJID4gMCkge1xuICAgIGxvZy5zdGFydCgpO1xuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHZhcnMpKSB7XG4gICAgICBjb25zdCB2YWx1ZXMgPSB2YXJzW2tleV07XG5cbiAgICAgIGxldCBkZXNjcmlwdGlvbiA9IHZhbHVlcz8uZGVzY3JpcHRpb24gPz8gJyc7XG5cbiAgICAgIC8vIENoZWNrIGlmIG9ubHkgZmlyc3QgbGluZSBzaG91bGQgYmUgYWRkZWQgKG9ubHkgc3ViamVjdCB3aXRob3V0IGJvZHkpXG5cbiAgICAgIGNvbnN0IG1hdGNoZXMgPSAvKC4qPylcXG5cXG4oW1NzXSopLy5leGVjKGRlc2NyaXB0aW9uKTtcbiAgICAgIGlmIChtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID49IDIpIHtcbiAgICAgICAgZGVzY3JpcHRpb24gPSBtYXRjaGVzWzFdIHx8IGRlc2NyaXB0aW9uO1xuICAgICAgfVxuXG4gICAgICBkZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uLnRyaW0oKS5yZXBsYWNlKCdcXG4nLCAnPGJyIC8+Jyk7XG4gICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlcz8udmFsdWUgPyBgXFxgJHt2YWx1ZXMudmFsdWV9XFxgYCA6ICcnO1xuICAgICAgY29uc3Qgcm93OiBzdHJpbmdbXSA9IFtyb3dIZWFkZXIoa2V5KSwgZGVzY3JpcHRpb24sIHZhbHVlXTtcblxuICAgICAgbG9nLmRlYnVnKEpTT04uc3RyaW5naWZ5KHJvdykpO1xuICAgICAgbWFya2Rvd25BcnJheS5wdXNoKHJvdyk7XG4gICAgfVxuICAgIGNvbnRlbnQucHVzaChtYXJrZG93bmVyKG1hcmtkb3duQXJyYXkpKTtcbiAgICBsb2cuaW5mbyhgQWN0aW9uIGhhcyAke3RJfSB0b3RhbCAke3NlY3Rpb25Ub2tlbn1gKTtcbiAgICBpbnB1dHMucmVhZG1lRWRpdG9yLnVwZGF0ZVNlY3Rpb24oc2VjdGlvblRva2VuLCBjb250ZW50KTtcbiAgICBsb2cuc3VjY2VzcygpO1xuICB9IGVsc2Uge1xuICAgIGxvZy5kZWJ1ZyhgQWN0aW9uIGhhcyBubyAke3NlY3Rpb25Ub2tlbn1gKTtcbiAgfVxuICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgcmV0W3NlY3Rpb25Ub2tlbl0gPSBjb250ZW50LmpvaW4oJ1xcbicpO1xuICByZXR1cm4gcmV0O1xufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgZXhwb3J0cyBhIGZ1bmN0aW9uIG5hbWVkICd1cGRhdGVUaXRsZScgd2hpY2ggdGFrZXMgYSBzZWN0aW9uVG9rZW4gKFJlYWRtZVNlY3Rpb24pIGFuZCBhbiBpbnN0YW5jZSBvZiB0aGUgJ0lucHV0cycgY2xhc3MgYXMgaXRzIHBhcmFtZXRlcnMuXG4gKiBUaGUgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIHVwZGF0aW5nIHRoZSB0aXRsZSBzZWN0aW9uIGluIHRoZSBSRUFETUUubWQgZmlsZSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgaW5wdXRzLlxuICogSXQgdXRpbGl6ZXMgdGhlICdMb2dUYXNrJyBjbGFzcyBmb3IgbG9nZ2luZyBwdXJwb3NlcywgdGhlICdnZW5lcmF0ZUltZ01hcmt1cCcgZnVuY3Rpb24gZnJvbSAnLi91cGRhdGUtYnJhbmRpbmcuanMnIGZvciBnZW5lcmF0aW5nIGltYWdlIG1hcmt1cC5cbiAqIEBwYXJhbSB7UmVhZG1lU2VjdGlvbn0gc2VjdGlvblRva2VuIC0gVGhlIHNlY3Rpb25Ub2tlbiByZXByZXNlbnRpbmcgdGhlIHNlY3Rpb24gb2YgdGhlIFJFQURNRSB0byB1cGRhdGUuXG4gKiBAcGFyYW0ge0lucHV0c30gaW5wdXRzIC0gVGhlIElucHV0cyBjbGFzcyBpbnN0YW5jZS5cbiAqL1xuaW1wb3J0IHsgUmVhZG1lU2VjdGlvbiB9IGZyb20gJy4uL2NvbnN0YW50cy5qcyc7XG5pbXBvcnQgdHlwZSBJbnB1dHMgZnJvbSAnLi4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4uL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IHsgZ2VuZXJhdGVJbWdNYXJrdXAgfSBmcm9tICcuL3VwZGF0ZS1icmFuZGluZy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHVwZGF0ZVRpdGxlKFxuICBzZWN0aW9uVG9rZW46IFJlYWRtZVNlY3Rpb24sXG4gIGlucHV0czogSW5wdXRzLFxuKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKHNlY3Rpb25Ub2tlbik7XG5cbiAgLy8gQnVpbGQgdGhlIG5ldyBSRUFETUVcbiAgY29uc3QgY29udGVudDogc3RyaW5nW10gPSBbXTtcbiAgbGV0IG5hbWUgPSAnJztcbiAgbGV0IHN2Z0lubGluZSA9ICcnO1xuXG4gIGlmIChpbnB1dHMuYWN0aW9uLm5hbWUpIHtcbiAgICBsb2cuc3RhcnQoKTtcbiAgICBuYW1lID0gaW5wdXRzLmFjdGlvbi5uYW1lO1xuICAgIGlmIChpbnB1dHMuY29uZmlnLmdldCgnYnJhbmRpbmdfYXNfdGl0bGVfcHJlZml4JykgYXMgYm9vbGVhbikge1xuICAgICAgc3ZnSW5saW5lID0gYCR7Z2VuZXJhdGVJbWdNYXJrdXAoaW5wdXRzLCAnNjBweCcpfSBgO1xuICAgIH1cbiAgICBsb2cuaW5mbyhgV3JpdGluZyAke25hbWUubGVuZ3RofSBjaGFyYWN0ZXJzIHRvIHRoZSB0aXRsZWApO1xuICAgIGNvbnN0IHRpdGxlID0gYCMgJHtzdmdJbmxpbmV9JHtpbnB1dHMuY29uZmlnLmdldCgndGl0bGVfcHJlZml4JykgYXMgc3RyaW5nfSR7XG4gICAgICBpbnB1dHMuYWN0aW9uLm5hbWVcbiAgICB9YDtcbiAgICBsb2cuaW5mbyhgVGl0bGU6ICR7dGl0bGV9YCk7XG4gICAgLy8gQnVpbGQgdGhlIG5ldyB1c2FnZSBzZWN0aW9uXG4gICAgY29udGVudC5wdXNoKHRpdGxlKTtcbiAgICBpbnB1dHMucmVhZG1lRWRpdG9yLnVwZGF0ZVNlY3Rpb24oc2VjdGlvblRva2VuLCBjb250ZW50LCB0cnVlKTtcblxuICAgIGxvZy5zdWNjZXNzKCk7XG4gIH1cbiAgY29uc3QgcmV0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG4gIHJldFtzZWN0aW9uVG9rZW5dID0gY29udGVudC5qb2luKCdcXG4nKTtcbiAgcmV0dXJuIHJldDtcbn1cbiIsICJpbXBvcnQgeyBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB7IGdldEN1cnJlbnRWZXJzaW9uU3RyaW5nIH0gZnJvbSAnLi4vaGVscGVycy5qcyc7XG5pbXBvcnQgdHlwZSBJbnB1dHMgZnJvbSAnLi4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4uL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IHsgd3JhcERlc2NyaXB0aW9uIH0gZnJvbSAnLi4vcHJldHRpZXIuanMnO1xuXG50eXBlIERlc2NyaXB0aW9uVHlwZSA9IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPjtcbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVVzYWdlKFxuICBzZWN0aW9uVG9rZW46IFJlYWRtZVNlY3Rpb24sXG4gIGlucHV0czogSW5wdXRzLFxuKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKHNlY3Rpb25Ub2tlbik7XG4gIGxvZy5zdGFydCgpO1xuXG4gIGNvbnN0IGFjdGlvbk5hbWUgPSBgJHtpbnB1dHMub3duZXJ9LyR7aW5wdXRzLnJlcG99YDtcbiAgbG9nLmluZm8oYEFjdGlvbiBuYW1lOiAke2FjdGlvbk5hbWV9YCk7XG4gIGNvbnN0IHZlcnNpb25TdHJpbmc6IHN0cmluZyA9IGdldEN1cnJlbnRWZXJzaW9uU3RyaW5nKGlucHV0cyk7XG5cbiAgbG9nLmluZm8oYFZlcnNpb24gc3RyaW5nOiAke3ZlcnNpb25TdHJpbmd9YCk7XG5cbiAgY29uc3QgYWN0aW9uUmVmZXJlbmNlID0gYCR7YWN0aW9uTmFtZX1AJHt2ZXJzaW9uU3RyaW5nfWA7XG5cbiAgY29uc3QgaW5kZW50ID0gJyAgICAjICc7XG4gIC8vIEJ1aWxkIHRoZSBuZXcgUkVBRE1FXG4gIGNvbnN0IGNvbnRlbnQ6IHN0cmluZ1tdID0gW107XG4gIC8vIEJ1aWxkIHRoZSBuZXcgdXNhZ2Ugc2VjdGlvblxuICBjb250ZW50LnB1c2goJ2BgYHlhbWwnLCBgLSB1c2VzOiAke2FjdGlvblJlZmVyZW5jZX1gLCAnICB3aXRoOicpO1xuXG4gIGNvbnN0IGlucCA9IGlucHV0cy5hY3Rpb24uaW5wdXRzO1xuICBsZXQgZmlyc3RJbnB1dCA9IHRydWU7XG4gIGNvbnN0IGRlc2NyaXB0aW9uUHJvbWlzZXM6IFJlY29yZDxzdHJpbmcsIFByb21pc2U8c3RyaW5nW10+PiA9IHt9O1xuICBpZiAoaW5wKSB7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoaW5wKSkge1xuICAgICAgY29uc3QgaW5wdXQgPSBpbnBba2V5XTtcbiAgICAgIGlmIChpbnB1dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRlc2NyaXB0aW9uUHJvbWlzZXNba2V5XSA9IHdyYXBEZXNjcmlwdGlvbihgRGVzY3JpcHRpb246ICR7aW5wdXQuZGVzY3JpcHRpb259YCwgW10sIGluZGVudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZGVzY3JpcHRpb25zOiBEZXNjcmlwdGlvblR5cGUgPSB7fTtcbiAgICBjb25zdCBrdkFycmF5ID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICBPYmplY3Qua2V5cyhkZXNjcmlwdGlvblByb21pc2VzKS5tYXAoYXN5bmMgKGtleSkgPT4ge1xuICAgICAgICByZXR1cm4geyBrZXksIHZhbHVlOiBhd2FpdCBkZXNjcmlwdGlvblByb21pc2VzW2tleV0gfTtcbiAgICAgIH0pLFxuICAgICk7XG4gICAgZm9yIChjb25zdCBlIG9mIGt2QXJyYXkpIHtcbiAgICAgIGRlc2NyaXB0aW9uc1tlLmtleV0gPSBlLnZhbHVlO1xuICAgICAgbG9nLmRlYnVnKGAke2Uua2V5fTogJHtkZXNjcmlwdGlvbnNbZS5rZXldLmpvaW4oJ1xcbicpfWApO1xuICAgIH1cblxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKGlucCkpIHtcbiAgICAgIGNvbnN0IGlucHV0ID0gaW5wW2tleV07XG4gICAgICBpZiAoaW5wdXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAvLyBMaW5lIGJyZWFrIGJldHdlZW4gaW5wdXRzXG4gICAgICAgIGlmICghZmlyc3RJbnB1dCkge1xuICAgICAgICAgIGNvbnRlbnQucHVzaCgnJyk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDb25zdHJhaW4gdGhlIHdpZHRoIG9mIHRoZSBkZXNjcmlwdGlvbiwgYW5kIGFwcGVuZCBpdFxuICAgICAgICBjb250ZW50LnB1c2goLi4uZGVzY3JpcHRpb25zW2tleV0pO1xuXG4gICAgICAgIGlmIChpbnB1dC5kZWZhdWx0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAvLyBBcHBlbmQgYmxhbmsgbGluZSBpZiBkZXNjcmlwdGlvbiBoYWQgcGFyYWdyYXBoc1xuICAgICAgICAgIC8vIGlmIChpbnB1dC5kZXNjcmlwdGlvbj8udHJpbUVuZCgpLm1hdGNoKC9cXG4gKlxccj9cXG4vKSkge1xuICAgICAgICAgIC8vICAgY29udGVudC5wdXNoKCcgICAgIycpO1xuICAgICAgICAgIC8vIH1cblxuICAgICAgICAgIC8vIERlZmF1bHRcbiAgICAgICAgICBjb250ZW50LnB1c2goYCR7aW5kZW50fURlZmF1bHQ6ICR7aW5wdXQuZGVmYXVsdH1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElucHV0IG5hbWVcbiAgICAgICAgY29udGVudC5wdXNoKGAgICAgJHtrZXl9OiAnJ2ApO1xuXG4gICAgICAgIGZpcnN0SW5wdXQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjb250ZW50LnB1c2goJ2BgYFxcbicpO1xuXG4gIGlucHV0cy5yZWFkbWVFZGl0b3IudXBkYXRlU2VjdGlvbihzZWN0aW9uVG9rZW4sIGNvbnRlbnQpO1xuICBsb2cuc3VjY2VzcygpO1xuICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgcmV0W3NlY3Rpb25Ub2tlbl0gPSBjb250ZW50LmpvaW4oJ1xcbicpO1xuICByZXR1cm4gcmV0O1xufVxuIiwgIi8qKlxuICogVGhpcyBUeXBlU2NyaXB0IGNvZGUgZXhwb3J0cyBhIGZ1bmN0aW9uIG5hbWVkICd1cGRhdGVTZWN0aW9uJyB3aGljaCB0YWtlcyBhIHNlY3Rpb24gKFJlYWRtZVNlY3Rpb24pIGFuZCBhbiBpbnN0YW5jZSBvZiB0aGUgJ0lucHV0cycgY2xhc3MgYXMgaXRzIHBhcmFtZXRlcnMuXG4gKiBUaGUgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIHVwZGF0aW5nIGRpZmZlcmVudCBzZWN0aW9ucyBvZiB0aGUgUkVBRE1FLm1kIGZpbGUgYmFzZWQgb24gdGhlIHByb3ZpZGVkIHNlY3Rpb24gaW5wdXQuXG4gKiBJdCB1dGlsaXplcyB2YXJpb3VzIHVwZGF0ZSBmdW5jdGlvbnMgKGUuZy4sIHVwZGF0ZUJyYW5kaW5nLCB1cGRhdGVCYWRnZXMpIHRvIHVwZGF0ZSBzcGVjaWZpYyBzZWN0aW9ucy5cbiAqIEBwYXJhbSB7UmVhZG1lU2VjdGlvbn0gc2VjdGlvbiAtIFRoZSBzZWN0aW9uIG9mIHRoZSBSRUFETUUgdG8gdXBkYXRlLlxuICogQHBhcmFtIHtJbnB1dHN9IGlucHV0cyAtIFRoZSBJbnB1dHMgY2xhc3MgaW5zdGFuY2UuXG4gKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0gQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgb25jZSB0aGUgc2VjdGlvbiBpcyB1cGRhdGVkLlxuICovXG5pbXBvcnQgeyBSZWFkbWVTZWN0aW9uIH0gZnJvbSAnLi4vY29uc3RhbnRzLmpzJztcbmltcG9ydCB0eXBlIElucHV0cyBmcm9tICcuLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi4vbG9ndGFzay9pbmRleC5qcyc7XG5pbXBvcnQgdXBkYXRlQmFkZ2VzIGZyb20gJy4vdXBkYXRlLWJhZGdlcy5qcyc7XG5pbXBvcnQgdXBkYXRlQnJhbmRpbmcgZnJvbSAnLi91cGRhdGUtYnJhbmRpbmcuanMnO1xuaW1wb3J0IHVwZGF0ZURlc2NyaXB0aW9uIGZyb20gJy4vdXBkYXRlLWRlc2NyaXB0aW9uLmpzJztcbmltcG9ydCB1cGRhdGVJbnB1dHMgZnJvbSAnLi91cGRhdGUtaW5wdXRzLmpzJztcbmltcG9ydCB1cGRhdGVPdXRwdXRzIGZyb20gJy4vdXBkYXRlLW91dHB1dHMuanMnO1xuaW1wb3J0IHVwZGF0ZVRpdGxlIGZyb20gJy4vdXBkYXRlLXRpdGxlLmpzJztcbmltcG9ydCB1cGRhdGVVc2FnZSBmcm9tICcuL3VwZGF0ZS11c2FnZS5qcyc7XG5cbmNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKCd1cGRhdGVTZWN0aW9uJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVNlY3Rpb24oXG4gIHNlY3Rpb246IFJlYWRtZVNlY3Rpb24sXG4gIGlucHV0czogSW5wdXRzLFxuKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB7XG4gIGNvbnN0IFtzdGFydFRva2VuLCBzdG9wVG9rZW5dID0gaW5wdXRzLnJlYWRtZUVkaXRvci5nZXRUb2tlbkluZGV4ZXMoc2VjdGlvbik7XG4gIC8vICYmXG4gIC8vIFsnYnJhbmRpbmcnLCAndGl0bGUnXS5pbmNsdWRlcyhzZWN0aW9uKSAmJlxuICAvLyBpbnB1dHMuY29uZmlnLmdldCgnYnJhbmRpbmdfYXNfdGl0bGVfcHJlZml4JykgIT09IHRydWVcbiAgaWYgKHN0YXJ0VG9rZW4gPT09IC0xIHx8IHN0b3BUb2tlbiA9PT0gLTEpIHtcbiAgICByZXR1cm4ge307XG4gIH1cbiAgc3dpdGNoIChzZWN0aW9uKSB7XG4gICAgY2FzZSAnYnJhbmRpbmcnOiB7XG4gICAgICByZXR1cm4gdXBkYXRlQnJhbmRpbmcoc2VjdGlvbiwgaW5wdXRzKTtcbiAgICB9XG4gICAgY2FzZSAnYmFkZ2VzJzoge1xuICAgICAgcmV0dXJuIHVwZGF0ZUJhZGdlcyhzZWN0aW9uLCBpbnB1dHMpO1xuICAgIH1cbiAgICBjYXNlICd1c2FnZSc6IHtcbiAgICAgIHJldHVybiB1cGRhdGVVc2FnZShzZWN0aW9uLCBpbnB1dHMpO1xuICAgIH1cbiAgICBjYXNlICd0aXRsZSc6IHtcbiAgICAgIHJldHVybiB1cGRhdGVUaXRsZShzZWN0aW9uLCBpbnB1dHMpO1xuICAgIH1cbiAgICBjYXNlICdkZXNjcmlwdGlvbic6IHtcbiAgICAgIHJldHVybiB1cGRhdGVEZXNjcmlwdGlvbihzZWN0aW9uLCBpbnB1dHMpO1xuICAgIH1cbiAgICBjYXNlICdpbnB1dHMnOiB7XG4gICAgICByZXR1cm4gdXBkYXRlSW5wdXRzKHNlY3Rpb24sIGlucHV0cyk7XG4gICAgfVxuICAgIGNhc2UgJ291dHB1dHMnOiB7XG4gICAgICByZXR1cm4gdXBkYXRlT3V0cHV0cyhzZWN0aW9uLCBpbnB1dHMpO1xuICAgIH1cbiAgICBkZWZhdWx0OiB7XG4gICAgICBsb2cuZGVidWcoYHVua25vd24gc2VjdGlvbiBmb3VuZCA8IS0tIHN0YXJ0ICR7c2VjdGlvbn0gLS0+LiBObyB1cGRhdGVzIHdlcmUgbWFkZS5gKTtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cbn1cbiIsICIvKipcbiAqIFRoaXMgVHlwZVNjcmlwdCBjb2RlIGltcG9ydHMgdGhlIG5lY2Vzc2FyeSBtb2R1bGVzIGFuZCBkZWZpbmVzIHR3byBpbnRlcmZhY2VzOiBgVmVyc2lvbmluZ2AgYW5kIGBQYXRoc2AuXG4gKiBJdCBhbHNvIGRlZmluZXMgYSBjbGFzcyBuYW1lZCBgR0hBY3Rpb25Eb2NzQ29uZmlnYCB0aGF0IHJlcHJlc2VudHMgdGhlIGNvbmZpZ3VyYXRpb24gZm9yIGdlbmVyYXRpbmcgR2l0SHViIEFjdGlvbnMgZG9jdW1lbnRhdGlvbi5cbiAqIFRoZSBjbGFzcyBoYXMgcHJvcGVydGllcyB0aGF0IGNvcnJlc3BvbmQgdG8gdGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBhbmQgYSBtZXRob2QgYGxvYWRJbnB1dHNgIHRvIGxvYWQgdGhlIGNvbmZpZ3VyYXRpb24gZnJvbSB0aGUgcHJvdmlkZWQgYElucHV0c2Agb2JqZWN0LlxuICogVGhlIGNsYXNzIGFsc28gaGFzIGEgbWV0aG9kIGBzYXZlYCB0byBzYXZlIHRoZSBjb25maWd1cmF0aW9uIHRvIGEgZmlsZS5cbiAqL1xuXG5pbXBvcnQgeyBwcm9taXNlcyBhcyBmc1Byb21pc2VzIH0gZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdub2RlOnBhdGgnO1xuXG5pbXBvcnQgdHlwZSBJbnB1dHMgZnJvbSAnLi9pbnB1dHMuanMnO1xuaW1wb3J0IExvZ1Rhc2sgZnJvbSAnLi9sb2d0YXNrL2luZGV4LmpzJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSB2ZXJzaW9uaW5nIGNvbmZpZ3VyYXRpb24gZm9yIEdpdEh1YiBBY3Rpb25zIGRvY3VtZW50YXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmVyc2lvbmluZyB7XG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuICBwcmVmaXg/OiBzdHJpbmc7XG4gIG92ZXJyaWRlPzogc3RyaW5nO1xuICBicmFuY2g/OiBzdHJpbmc7XG4gIGJhZGdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHBhdGhzIGNvbmZpZ3VyYXRpb24gZm9yIEdpdEh1YiBBY3Rpb25zIGRvY3VtZW50YXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGF0aHMge1xuICBhY3Rpb246IHN0cmluZztcbiAgcmVhZG1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29uZmlndXJhdGlvbiBmb3IgZ2VuZXJhdGluZyBHaXRIdWIgQWN0aW9ucyBkb2N1bWVudGF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgR0hBY3Rpb25Eb2NzQ29uZmlnIHtcbiAgb3duZXI/OiBzdHJpbmc7XG5cbiAgcmVwbz86IHN0cmluZztcblxuICB0aXRsZV9wcmVmaXg/OiBzdHJpbmc7XG5cbiAgdGl0bGU/OiBzdHJpbmc7XG5cbiAgcGF0aHM/OiBQYXRocztcblxuICBicmFuZGluZ19zdmdfcGF0aD86IHN0cmluZztcblxuICB2ZXJzaW9uaW5nPzogVmVyc2lvbmluZztcblxuICBwcmV0dGllcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIExvYWRzIHRoZSBjb25maWd1cmF0aW9uIGZyb20gdGhlIHByb3ZpZGVkIGBJbnB1dHNgIG9iamVjdC5cbiAgICogQHBhcmFtIHtJbnB1dHN9IGlucHV0cyAtIFRoZSBgSW5wdXRzYCBvYmplY3QgY29udGFpbmluZyB0aGUgY29uZmlndXJhdGlvbiB2YWx1ZXMuXG4gICAqL1xuICBsb2FkSW5wdXRzKGlucHV0czogSW5wdXRzKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnID0gaW5wdXRzLmNvbmZpZy5nZXQoKTtcbiAgICB0aGlzLm93bmVyID0gY29uZmlnLm93bmVyO1xuICAgIHRoaXMucmVwbyA9IGNvbmZpZy5yZXBvO1xuICAgIHRoaXMudGl0bGVfcHJlZml4ID0gY29uZmlnLnRpdGxlX3ByZWZpeDtcbiAgICB0aGlzLnRpdGxlID0gY29uZmlnLnRpdGxlO1xuICAgIHRoaXMucGF0aHMgPSBjb25maWcucGF0aHM7XG4gICAgdGhpcy5icmFuZGluZ19zdmdfcGF0aCA9IGNvbmZpZy5icmFuZGluZ19zdmdfcGF0aDtcbiAgICB0aGlzLnZlcnNpb25pbmcgPSBjb25maWcudmVyc2lvbmluZztcbiAgICB0aGlzLnByZXR0aWVyID0gY29uZmlnLnByZXR0aWVyO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhdmVzIHRoZSBjb25maWd1cmF0aW9uIHRvIGEgZmlsZS4gSWYgdGhlIGZpbGUgZXhpc3RzLCBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gY29uZmlnUGF0aCAtIFRoZSBwYXRoIHRvIHRoZSBjb25maWd1cmF0aW9uIGZpbGUuXG4gICAqL1xuICBhc3luYyBzYXZlKGNvbmZpZ1BhdGg6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKCdjb25maWc6c2F2ZScpO1xuICAgIGNvbnN0IGRpcmVjdG9yeSA9IHBhdGguZGlybmFtZShjb25maWdQYXRoKTtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBmc1Byb21pc2VzLm1rZGlyKGRpcmVjdG9yeSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGxvZy5lcnJvcihgRXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5OiAke2RpcmVjdG9yeX0uYCk7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgZnNQcm9taXNlcy53cml0ZUZpbGUoY29uZmlnUGF0aCwgSlNPTi5zdHJpbmdpZnkodGhpcywgbnVsbCwgMikpO1xuICAgICAgbG9nLmluZm8oYENvbmZpZyBmaWxlIHdyaXR0ZW4gdG86ICR7Y29uZmlnUGF0aH1gKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgbG9nLmVycm9yKGBFcnJvciB3cml0aW5nIGNvbmZpZyBmaWxlOiAke2NvbmZpZ1BhdGh9LmApO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICB9XG59XG4iLCAiLyoqXG4gKiBUaGlzIGNvZGUgZXhwb3J0cyBhIGZ1bmN0aW9uIG5hbWVkICdzYXZlJyB3aGljaCB0YWtlcyBhbiBpbnN0YW5jZSBvZiB0aGUgJ0lucHV0cycgY2xhc3MgYXMgaXRzIHBhcmFtZXRlci5cbiAqIFRoZSBmdW5jdGlvbiByZWFkcyB0aGUgY29uZmlndXJhdGlvbiBpbnB1dHMgZnJvbSB0aGUgJ2lucHV0cycgcGFyYW1ldGVyIGFuZCB1c2VzIHRoZW0gdG8gY3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSAnR0hBY3Rpb25Eb2NzQ29uZmlnJyBjbGFzcy5cbiAqIElmIHRoZSAnc2F2ZScgcHJvcGVydHkgaXMgc2V0IHRvIHRydWUgaW4gdGhlIGNvbmZpZ3VyYXRpb24gaW5wdXRzLCB0aGUgZnVuY3Rpb24gc2F2ZXMgdGhlIGNvbmZpZ3VyYXRpb24gdG8gdGhlIGZpbGUgc3BlY2lmaWVkIGluIHRoZSAnY29uZmlnUGF0aCcgcHJvcGVydHkgb2YgdGhlICdpbnB1dHMnIHBhcmFtZXRlci5cbiAqIFRoaXMgc2NyaXB0IGlzIHVzZWQgdG8gdXBkYXRlIHRoZSB1c2FnZSBzZWN0aW9uIGluIHRoZSBSRUFETUUubWQgZmlsZSB0byBtYXRjaCB0aGUgY29udGVudHMgb2YgdGhlIGFjdGlvbi55bWwgZmlsZS5cbiAqL1xuXG5pbXBvcnQgeyBHSEFjdGlvbkRvY3NDb25maWcgfSBmcm9tICcuL2NvbmZpZy5qcyc7XG5pbXBvcnQgSW5wdXRzIGZyb20gJy4vaW5wdXRzLmpzJztcbmltcG9ydCBMb2dUYXNrIGZyb20gJy4vbG9ndGFzay9pbmRleC5qcyc7XG5cbi8qKlxuICogVGhpcyBzY3JpcHQgcmVidWlsZHMgdGhlIHVzYWdlIHNlY3Rpb24gaW4gdGhlIFJFQURNRS5tZCB0byBiZSBjb25zaXN0ZW50IHdpdGggdGhlIGFjdGlvbi55bWxcbiAqIEBwYXJhbSB7SW5wdXRzfSBpbnB1dHMgLSB0aGUgaW5wdXRzIGNsYXNzXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHNhdmUoaW5wdXRzOiBJbnB1dHMsIGxvZzogTG9nVGFzayk6IHZvaWQge1xuICBjb25zdCBkb2NzQ29uZmlnID0gbmV3IEdIQWN0aW9uRG9jc0NvbmZpZygpO1xuICBkb2NzQ29uZmlnLmxvYWRJbnB1dHMoaW5wdXRzKTtcbiAgaWYgKGlucHV0cy5jb25maWcuZ2V0KCkuc2F2ZSA9PT0gdHJ1ZSkge1xuICAgIHRyeSB7XG4gICAgICBkb2NzQ29uZmlnLnNhdmUoaW5wdXRzLmNvbmZpZ1BhdGgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBsb2cuZXJyb3IoYCR7ZXJyb3J9YCk7XG4gICAgfVxuICB9XG59XG4iLCAiaW1wb3J0IElucHV0cyBmcm9tICcuL2lucHV0cy5qcyc7XG5pbXBvcnQgTG9nVGFzayBmcm9tICcuL2xvZ3Rhc2svaW5kZXguanMnO1xuaW1wb3J0IHsgUmVhZG1lR2VuZXJhdG9yIH0gZnJvbSAnLi9yZWFkbWUtZ2VuZXJhdG9yLmpzJztcbmltcG9ydCBzYXZlIGZyb20gJy4vc2F2ZS5qcyc7XG4vKipcbiAqIENyZWF0ZXMgYSBSZWFkbWVHZW5lcmF0b3IgaW5zdGFuY2UgYW5kIGdlbmVyYXRlcyBkb2NzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdGVSZWFkbWUoKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGxvZyA9IG5ldyBMb2dUYXNrKCdHZW5lcmF0ZSBEb2N1bWVudGF0aW9uJyk7XG4gIGNvbnN0IGlucHV0cyA9IG5ldyBJbnB1dHMoKTtcbiAgY29uc3QgZ2VuZXJhdG9yID0gbmV3IFJlYWRtZUdlbmVyYXRvcihpbnB1dHMsIGxvZyk7XG4gIGF3YWl0IGdlbmVyYXRvci5nZW5lcmF0ZSgpO1xuICByZXR1cm4gc2F2ZShpbnB1dHMsIGxvZyk7XG59XG5cbmF3YWl0IGdlbmVyYXRlUmVhZG1lKCk7XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBVUEsYUFBZ0IsZUFBZSxPQUFVO0FBQ3ZDLFVBQUksVUFBVSxRQUFRLFVBQVUsUUFBVztBQUN6QyxlQUFPO2lCQUNFLE9BQU8sVUFBVSxZQUFZLGlCQUFpQixRQUFRO0FBQy9ELGVBQU87O0FBRVQsYUFBTyxLQUFLLFVBQVUsS0FBSztJQUM3QjtBQVBBLFlBQUEsaUJBQUE7QUFlQSxhQUFnQixvQkFDZCxzQkFBMEM7QUFFMUMsVUFBSSxDQUFDLE9BQU8sS0FBSyxvQkFBb0IsRUFBRSxRQUFRO0FBQzdDLGVBQU8sQ0FBQTs7QUFHVCxhQUFPO1FBQ0wsT0FBTyxxQkFBcUI7UUFDNUIsTUFBTSxxQkFBcUI7UUFDM0IsTUFBTSxxQkFBcUI7UUFDM0IsU0FBUyxxQkFBcUI7UUFDOUIsS0FBSyxxQkFBcUI7UUFDMUIsV0FBVyxxQkFBcUI7O0lBRXBDO0FBZkEsWUFBQSxzQkFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ3pCQSxRQUFBQSxNQUFBLGFBQUEsVUFBQSxJQUFBLENBQUE7QUFDQSxRQUFBLFVBQUE7QUFxQkEsYUFBZ0IsYUFDZCxTQUNBLFlBQ0EsU0FBWTtBQUVaLFlBQU0sTUFBTSxJQUFJLFFBQVEsU0FBUyxZQUFZLE9BQU87QUFDcEQsY0FBUSxPQUFPLE1BQU0sSUFBSSxTQUFRLElBQUtBLElBQUcsR0FBRztJQUM5QztBQVBBLFlBQUEsZUFBQTtBQVNBLGFBQWdCLE1BQU0sTUFBYyxVQUFVLElBQUU7QUFDOUMsbUJBQWEsTUFBTSxDQUFBLEdBQUksT0FBTztJQUNoQztBQUZBLFlBQUEsUUFBQTtBQUlBLFFBQU0sYUFBYTtBQUVuQixRQUFNLFVBQU4sTUFBYTtNQUtYLFlBQVksU0FBaUIsWUFBK0IsU0FBZTtB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LE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGO0FBQUE7QUFBQTs7O0FDck9BO0FBQUE7QUFBQTtBQUdBLFFBQU0sNkJBQTZCLENBQUM7QUFHcEMsUUFBTSx1QkFBdUI7QUFBQSxNQUMzQjtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEs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QSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxXQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxNQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxLQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxZQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxVQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxPQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxVQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxXQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxhQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxPQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxPQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxZQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxNQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxLQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxVQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxVQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxPQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxNQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxPQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxVQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxlQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxlQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxVQUFBLElBQUEsRUFBQSxJQUFBO0FBQ0EsTUFBQUEsU0FBQUEsU0FBQSxRQUFBLElBQUEsRUFBQSxJQUFBO0FBRUEsTUFBQUEsU0FBQUEsU0FBQSxPQUFBLElBQUEsRUFBQSxJQUFBO0lBQ0YsR0ExRFksVUFBQSxRQUFBLFlBQUEsUUFBQSxVQUFPLENBQUEsRUFBQTtBQTRETixZQUFBLGVBQWU7TUFDMUIsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUSxVQUFVO01BQ2xCLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFBUTtNQUNSLFFBQVE7TUFDUixRQUFRO01BQ1IsUUFB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SztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUNILGlCQUFPO0FBQUEsUUFDVCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQ0gsaUJBQU87QUFBQSxRQUNULEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDSCxpQkFBTztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFB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QUFHO0FBQUEsTUFDN0IsY0FBYyxDQUFDLEtBQUssR0FBRyxHQUFHO0FBQUEsTUFDMUIsWUFBWSxDQUFDLEtBQUssSUFBSSxHQUFHO0FBQUEsTUFDekIsZUFBZSxDQUFDLEdBQUcsS0FBSyxHQUFHO0FBQUEsTUFDM0IsV0FBVyxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDekIsV0FBVyxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDekIsY0FBYyxDQUFDLElBQUksS0FBSyxHQUFHO0FBQUEsTUFDM0IsYUFBYSxDQUFDLEtBQUssSUFBSSxFQUFFO0FBQUEsTUFDekIsZUFBZSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDN0IsZUFBZSxDQUFDLElBQUksS0FBSyxFQUFFO0FBQUEsTUFDM0IsV0FBVyxDQUFDLEtBQUssR0FBRyxHQUFHO0FBQUEsTUFDdkIsYUFBYSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDM0IsY0FBYyxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDNUIsUUFBUSxDQUFDLEtBQUssS0FBSyxDQUFDO0FBQUEsTUFDcEIsYUFBYSxDQUFDLEtBQUssS0FBSyxFQUFFO0FBQUEsTUFDMUIsUUFBUSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDdEIsU0FBUyxDQUFDLEdBQUcsS0FBSyxDQUFDO0FBQUEsTUFDbkIsZUFBZSxDQUFDLEtBQUssS0FBSyxFQUFFO0FBQUEsTUFDNUIsUUFBUSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDdEIsWUFBWSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDMUIsV0FBVyxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDekIsYUFBYSxDQUFDLEtBQUssSUFBSSxFQUFFO0FBQUEsTUFDekIsVUFBVSxDQUFDLElBQUksR0FBRyxHQUFHO0FBQUEsTUFDckIsU0FBUyxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDdkIsU0FBUyxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDdkIsWUFBWSxDQUFDLEtBQUssS0FBSyxH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QUssR0FBRztBQUFBLE1BQzVCLGFBQWEsQ0FBQyxLQUFLLEtBQUssR0FBRztBQUFBLE1BQzNCLFFBQVEsQ0FBQyxLQUFLLEtBQUssRUFBRTtBQUFBLE1BQ3JCLFFBQVEsQ0FBQyxLQUFLLEtBQUssR0FBRztBQUFBLE1BQ3RCLFFBQVEsQ0FBQyxLQUFLLEtBQUssR0FBRztBQUFBLE1BQ3RCLGNBQWMsQ0FBQyxLQUFLLEtBQUssR0FBRztBQUFBLE1BQzVCLFVBQVUsQ0FBQyxLQUFLLEdBQUcsR0FBRztBQUFBLE1BQ3RCLGlCQUFpQixDQUFDLEtBQUssSUFBSSxHQUFHO0FBQUEsTUFDOUIsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDO0FBQUEsTUFDakIsYUFBYSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDM0IsYUFBYSxDQUFDLElBQUksS0FBSyxHQUFHO0FBQUEsTUFDMUIsZUFBZSxDQUFDLEtBQUssSUFBSSxFQUFFO0FBQUEsTUFDM0IsVUFBVSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDeEIsY0FBYyxDQUFDLEtBQUssS0FBSyxFQUFFO0FBQUEsTUFDM0IsWUFBWSxDQUFDLElBQUksS0FBSyxFQUFFO0FBQUEsTUFDeEIsWUFBWSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDMUIsVUFBVSxDQUFDLEtBQUssSUFBSSxFQUFFO0FBQUEsTUFDdEIsVUFBVSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDeEIsV0FBVyxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDekIsYUFBYSxDQUFDLEtBQUssSUFBSSxHQUFHO0FBQUEsTUFDMUIsYUFBYSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDM0IsYUFBYSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDM0IsUUFBUSxDQUFDLEtBQUssS0FBSyxHQUFHO0FBQUEsTUFDdEIsZUFBZSxDQUFDLEdBQUcsS0FBSyxHQUFHO0FBQUEsTUFDM0IsYUFBYSxDQUFDLElBQUksS0FBSyxHQUFHO0FBQUEsTUFDMUIsT0FBTyxDQUFDLEtBQUss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Q1IsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsS0FBSztBQUFBLFFBQ0wsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsS0FBSztBQUFBLFFBQ0wsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsU0FBUztBQUFBLFFBQ1QsTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsSUFBSTtBQUFBLFFBQ0osSUFBSTtBQUFBLFFBQ0osSUFBSTtBQUFBLFFBQ0osU0FBUztBQUFBLFFBQ1QsSUFBSTtBQUFBLFFBQ0osS0FBSztBQUFBLFFBQ0wsT0FBTztBQUFBLFFBQ1AsS0FBSztBQUFBLFFBQ0wsU0FBUztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsU0FBUztBQUFBLFFBQ1QsTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsSUFBSTtBQUFBLFFBQ0osSUFBSTtBQUFBLFFBQ0osSUFBSTtBQUFBLFFBQ0osU0FBUztBQUFBLFFBQ1QsSUFBSTtBQUFBLFFBQ0osS0FBSztBQUFBLFFBQ0wsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsS0FBSztBQUFBLFFBQ0wsU0FBUztBQUFBLFFBQ1QsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsT0FBTztBQUFBLFFBQ1AsVUFBVTtBQUFBLFFBQ1YsT0FBTztBQUFBLFFBQ1AsS0FBSztBQUFBLFFBQ0wsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsU0FBUztBQUFBLFFBQ1QsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsSUFBSTtBQUFBLFFBQ0osTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsSUFBSTtBQUFBLFFBQ0osS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsUUFBUTtBQUFBLFFBQ1IsS0FBSztBQUFBLFFBQ0wsTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsSUFBSTtBQUFBLFFBQ0osT0FBTztBQUFBLFFBQ1AsSUFBSTtBQUFBLFFBQ0osSUFBSTtBQUFBLFFBQ0osS0FBSztBQUFBLFFBQ0wsS0FBSztBQUFBLFFBQ0wsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sT0FBTztBQUFBLFFBQ1AsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsUUFBUTtBQUFBLFFBQ1IsTUFBTTtBQUFBLFFBQ04sTUFBTTtBQUFBLFFBQ04sS0FBSztBQUFBLFFBQ0wsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLFFBQ1AsUUFBUTtBQUFBLFFBQ1IsT0FBTztBQUFBLE1BQ1Q7QUFFQSxhQUFPLEtBQUtBLEtBQUksUUFBUSxFQUFFLFFBQVEsU0FBVSxLQUFLO0FBQy9DLFlBQUks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QUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQ3hFO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFDeEU7QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUN4RTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsTUFBTTtBQUFBLE1BQU07QUFBQSxNQUFNO0FBQUEsSUFDcEUsQ0FBQztBQUdELFlBQVEsT0FBTyxXQUFXO0FBQ3hCLGFBQU8sUUFBUTtBQUFBLElBQ2pCO0FBQUE7QUFBQTs7O0FDNXZTQTtBQUFBO0FBaUJBLFFBQUlDLFFBQU87QUFDWCxZQUFRLE9BQU8sV0FBVztBQUN4QixjQUFRLGFBQWFBLE1BQUssS0FBSztBQUFBLElBQ2pDO0FBRUEsWUFBUSxrQkFBa0IsSUFBSSxZQUFZO0FBQUEsTUFDckM7QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBSTtBQUFBLE1BQU87QUFBQSxNQUFNO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUMvRDtBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBTztBQUFBLE1BQU87QUFBQSxNQUFPO0FBQUEsTUFBUTtBQUFBLE1BQVE7QUFBQSxNQUFRO0FBQUEsTUFBUTtBQUFBLE1BQ25FO0FBQUEsTUFBUTtBQUFBLE1BQVE7QUFBQSxNQUFRO0FBQUEsTUFBUTtBQUFBLElBQ2pDLENBQUM7QUFFRCxZQUFRLG1CQUFtQixJQUFJLFdBQVc7QUFBQSxNQUN4QztBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUc7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQ3BDO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFLO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDcEM7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsSUFDbEIsQ0FBQztBQUVELFlBQVEsMEJBQTBCO0FBQ2xDLFlBQVEsMEJBQTBCO0FBQUE7QUFBQTs7O0FDbkNsQztBQUFBO0FBQUEsYUFBUyxZQUFZLE1BQU0sT0FBTztBQUNoQyxXQUFLLE9BQU87QUFDWixXQUFLLFFBQVE7QUFBQSxJQUNmO0FBRUEsWUFBUSxjQUFjO0FBRXRCLFFBQUksYUFBYTtBQUlqQixhQUFTLFdBQVcsS0FBSyxLQUFLO0FBQzVCLFVBQUksT0FBTyxLQUFNLE1BQU07QUFDdkIsYUFBTyxNQUFNLE1BQU07QUFDakIsaUJBQVM7QUFBQSxNQUNYO0FBQ0EsY0FBUSxNQUFPLE9BQU8sS0FBTTtBQUFBLElBQzlCO0FBSUEsYUFBUyxlQUFlLE9BQU9DLElBQUcsTUFBTSxLQUFLLE1BQU07QUFDakQsU0FBRztBQUNELGVBQU87QUFDUCxjQUFNQSxLQUFJLEdBQUcsSUFBSSxJQUFJLFlBQVksS0FBSyxNQUFNLEtBQUssS0FBSztBQUFBLE1BQ3hELFNBQVMsTUFBTTtBQUFBLElBQ2pCO0FBS0EsYUFBUyxpQkFBaUIsT0FBTyxLQUFLLFdBQVc7QUFDL0MsVUFBSSxPQUFPLEtBQU0sTUFBTTtBQUN2QixhQUFPLE1BQU0sWUFBWTtBQUN2QixnQkFBUSxNQUFNLEdBQUc7QUFDakIsWUFBSSxRQUFRLEVBQUc7QUFDZixVQUFFO0FBQ0YsaUJBQVM7QUFBQSxNQUNYO0FBQ0EsYUFBTyxNQUFNO0FBQUEsSUFDZjtBQUVBLFlBQVEsMEJBQTBCLFNBQVMsWUFBWSxPQUFPLFdBQVcsY0FBYyxtQkFBbUI7QUFDeEcsVUFBSSxjQUFjO0FBQ2xCLFVBQUk7QUFDSixVQUFJO0FBQ0osVUFBSTtBQUNKLFVBQUk7QUFDSixVQUFJO0FBQ0osVUFBSTtBQUNKLFVBQUk7QUFDSixVQUFJO0FBQ0osVUFBSTtBQUNKLFVBQUk7QUFDSixVQUFJO0FBQ0osVUFBSSxRQUFRLElBQUksV0FBVyxhQUFhLENBQUM7QUFDekMsVUFBSSxTQUFTLElBQUksV0FBVyxhQUFhLENBQUM7QUFFMUMsZUFBUyxJQUFJLFdBQVcsaUJBQWlCO0FBR3pDLFdBQUssU0FBUyxHQUFHLFNBQVMsbUJBQW1CLFVBQVU7QUFDckQsY0FBTSxhQUFhLE1BQU0sQ0FBQztBQUFBLE1BQzVCO0FBR0EsYUFBTyxDQUFDLElBQUk7QUFDWixXQUFLLE1BQU0sR0FBRyxNQUFNLFlBQVksT0FBTztBQUNyQyxlQUFPLE1BQU0sQ0FBQyxJQUFJLE9BQU8sR0FBRyxJQUFJLE1BQU0sR0FBRztBQUFBLE1BQzNDO0FBR0EsV0FBSyxTQUFTLEdBQUcsU0FBUyxtQkFBbUIsVUFBVTtBQUNyRCxZQUFJLGFBQWEsTUFBTSxNQUFNLEdBQUc7QUFDOUIsaUJBQU8sT0FBTyxhQUFhLE1BQU0sQ0FBQyxHQUFHLElBQUk7QUFBQSxRQUMzQztBQUFBLE1BQ0Y7QUFFQSxtQkFBYTtBQUNiLG1CQUFhLEtBQUs7QUFDbEIsbUJBQWE7QUFHYixVQUFJLE9BQU8sVUFBVSxNQUFNLEdBQUc7QUFDNUIsYUFBSyxNQUFNLEdBQUcsTUFBTSxZQUFZLEVBQUUsS0FBSztBQUNyQyxxQkFBVyxRQUFRLEdBQUcsSUFBSSxJQUFJLFlBQVksR0FBRyxPQUFPLENBQUMsSUFBSSxLQUFNO0FBQUEsUUFDakU7QUFFQSxlQUFPO0FBQUEsTUFDVDtBQUdBLFlBQU07QUFDTixlQUFTO0FBQ1QsV0FBSyxNQUFNLEdBQUcsT0FBTyxHQUFHLE9BQU8sV0FBVyxFQUFFLEtBQUssU0FBUyxHQUFHO0FBQzNELGVBQU8sTUFBTSxHQUFHLElBQUksR0FBRyxFQUFFLE1BQU0sR0FBRyxHQUFHO0FBQ25DLGlCQUFPLElBQUksWUFBWSxNQUFNLEtBQU0sT0FBTyxRQUFRLElBQUksS0FBTTtBQUM1RCx5QkFBZSxZQUFZLFFBQVEsS0FBSyxNQUFNLFlBQVksSUFBSTtBQUM5RCxnQkFBTSxXQUFXLEtBQUssR0FBRztBQUFBLFFBQzNCO0FBQUEsTUFDRjtBQUdBLGFBQU8sYUFBYTtBQUNwQixZQUFNO0FBQ04sV0FBSyxNQUFNLFlBQVksR0FBRyxPQUFPLEdBQUcsT0FBTyxZQUFZLEVBQUUsS0FBSyxTQUFTLEdBQUc7QUFDeEUsZUFBTyxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQUUsTUFBTSxHQUFHLEdBQUc7QUFDbkMsZUFBSyxNQUFNLFVBQVUsS0FBSztBQUN4QixxQkFBUztBQUNULHlCQUFhLGlCQUFpQixPQUFPLEtBQUssU0FBUztBQUNuRCx5QkFBYSxLQUFLO0FBQ2xCLDBCQUFjO0FBQ2Qsa0JBQU0sTUFBTTtBQUNaLHVCQUFXLGNBQWMsR0FBRyxJQUFJLElBQUksWUFBYSxhQUFhLFlBQWEsS0FBUSxRQUFRLGNBQWUsTUFBTyxLQUFNO0FBQUEsVUFDekg7QUFDQSxpQkFBTyxJQUFJLFlBQWEsTUFBTSxZQUFhLEtBQU0sT0FBTyxRQUFRLElBQUksS0FBTTtBQUMxRSx5QkFBZSxZQUFZLFNBQVMsT0FBTyxZQUFZLE1BQU0sWUFBWSxJQUFJO0FBQzdFLGdCQUFNLFdBQVcsS0FBSyxHQUFHO0FBQUEsUUFDM0I7QUFBQSxNQUNGO0FBRUEsYUFBTztBQUFBLElBQ1Q7QUFBQTtBQUFBOzs7QUMxSEEsSUFBQUMsbUJBQUE7QUFBQTtBQWdIQSxZQUFRLFNBQVMsSUFBSSxXQUFXO0FBQUE7QUFBQTtBQUFBLE1BRzdCO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUc7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUs7QUFBQTtBQUFBLE1BRTdEO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUE7QUFBQSxNQUU3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBO0FBQUE7QUFBQSxNQUc3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUE7QUFBQSxNQUU3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUE7QUFBQSxNQUU3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQTtBQUFBLE1BRTdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUE7QUFBQSxNQUU1QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzlDO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBO0FBQUEsTUFFM0Q7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFHO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUMzRDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUc7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzNEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBRztBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDM0Q7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFHO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQTtBQUFBLE1BRTNEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFHO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFDNUQ7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUM1RDtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQzVEO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUEsTUFBSTtBQUFBLE1BQUk7QUFBQSxNQUFJO0FBQUE7QUFBQSxNQUU1RDtBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUM3QztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQzdDO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFDN0M7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1BQUc7QUFBQSxNQUFHO0FBQUEsTUFBRztBQUFBLE1B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STtFQUNKLElBQUk7RUFDSixLQUFLO0VBQ0wsS0FBSztBQUNQO0FBR08sSUFBTSwyQ0FBWTs7RUFFdkIsQ0FBQTtFQUVBO0lBQ0UsR0FBRztJQUFhLElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUNwRCxHQUFHO0lBQWEsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQ3BELEdBQUc7SUFBYSxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFDcEQsR0FBRztJQUFhLElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUNwRCxHQUFHO0lBQWEsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQ3BELEdBQUc7SUFBYSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsR0FBRztJQUFhLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxHQUFHO0lBQWEsSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELEdBQUc7SUFBYSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsR0FBRztJQUFhLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtJQUFZLEtBQUs7SUFDckQsSUFBSTtJQUFZLElBQUk7SUFBWSxJQUFJO0lBQVksS0FBSztJQUNyRCxJQUFJO0lBQVksSUFBSTtJQUFZLElBQUk7SUFBWSxLQUFLO0lBQ3JELElBQUk7SUFBWSxJQUFJO0lBQVksSUFBSTtFQUN0Qzs7RUFHQSxDQUFBO0VBRUE7SUFDRSxNQUFRO0lBQVksT0FBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksT0FBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsT0FBUTtJQUFZLE9BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxNQUFRO0lBQVksT0FBUTtJQUFZLE1BQVE7SUFBZSxPQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsT0FBUTtJQUFZLE9BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxPQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE9BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsTUFBUTtJQUFZLE9BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsT0FBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxPQUFRO0lBQ3ZFLE9BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxPQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxPQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE9BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsT0FBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE1BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUFlLE1BQVE7SUFDdkUsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0lBQWUsTUFBUTtJQUN2RSxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFBZSxNQUFRO0lBQ3ZFLE9BQVE7SUFBWSxNQUFRO0lBQVksTUFBUTtJQUNoRCxNQUFRO0lBQVksTUFBUTtJQUFZLE1BQVE7SUFDaEQsTUFBUTtJQUFZLE1BQVE7SUFBWSxNQUFRO0VBQ2xEOztBRHRORixJQUFJLG1DQUFhLElBQUksT0FBUztFQUM1QixZQUFZO0VBQ1osWUFBWTtFQUNaLFlBQVk7RUFDWixRQUFZO0VBQ1osUUFBWTtFQUNaLFFBQVksSUFBSSxRQUFVLFFBQ3hCLElBQUksUUFBUyxVQUFVLENBQUEsT0FBSyxHQUFBLDJDQUFZLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxVQUFVLENBQUEsR0FDaEY7SUFBRSxNQUFNO0lBQVUsWUFBWSxDQUFBLFFBQU8sSUFBSSxPQUFPO0lBQWMsV0FBVztFQUFNLENBQUE7QUFFbkYsQ0FBQTtBQUVBLElBQUksc0NBQWdCLElBQUksT0FBUztFQUMvQixRQUFTO0VBQ1QsS0FBUyxJQUFJLFFBQVUsUUFBVSxJQUFJLFFBQVMsVUFBVSxTQUFBLEdBQVk7SUFBQyxNQUFNO0lBQVUsWUFBWSxDQUFBLFFBQU8sSUFBSTtFQUFZLENBQUE7QUFDMUgsQ0FBQTtBQUVBLElBQUksa0NBQVksSUFBSSxnQkFBa0IsUUFBVTtFQUM5QyxHQUFHO0lBQ0QsT0FBZ0I7SUFDaEIsY0FBZ0I7SUFDaEIsU0FBZ0IsSUFBSSxPQUFRLGtDQUFZLE9BQUE7RUFDMUM7RUFDQSxHQUFHO0lBQ0QsT0FBZ0I7SUFDaEIsY0FBZ0I7SUFDaEIsU0FBZ0IsSUFBSSxPQUFRLGtDQUFZLE9BQUE7SUFDeEMsY0FBZ0I7SUFDaEIsVUFBZ0IsSUFBSSxPQUFRLHFDQUFlLGNBQUE7RUFDN0M7QUFDRixDQUFBO0lBRUEsMkNBQWU7QUFFZixJQUFNLDhCQUFRO0VBQ1o7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRixnQ0FBVSxVQUFVLFNBQVMsUUFBTTtBQUNqQyxNQUFJLFVBQVUsQ0FBQztBQUNmLFdBQVMsVUFBVSxLQUFLLFNBQVM7QUFFL0IsUUFBSSxZQUFXLEdBQUEsMENBQVUsT0FBTyxVQUFVLEVBQUUsT0FBTyxVQUFVO0FBRTdELFFBQUksWUFBWSxRQUFRLEtBQUssWUFBWSxRQUFRLE9BQU8sY0FBYyxNQUNwRSxZQUFXLEtBQUssU0FBUyxPQUFPLGFBQWEsS0FBQSxFQUFRO0FBR3ZELFFBQUksWUFBWSxLQUNkLFlBQVcsT0FBTyxhQUFhLE1BQU0sT0FBTztBQUk5QyxRQUFJLE1BQU0sT0FBTyxVQUFVLE1BQU0saUJBQWtCLDRCQUFNLE9BQU8sTUFBTSxLQUFLLE9BQU87QUFDbEYsUUFBSSxRQUFRLEdBQUEsS0FBUSxLQUNsQixTQUFRLEdBQUEsSUFBTyxDQUFDO0FBR2xCLFFBQUksTUFBTSxRQUFRLEdBQUE7QUFDbEIsUUFBSSxPQUFPLFVBQVUsSUFDbkIsT0FBTSxJQUFJLE9BQU8sTUFBTSxNQUFNLElBQUksT0FBTyxNQUFNLElBQUksQ0FBQztBQUdyRCxRQUFJLE9BQU8sT0FBTyxXQUFXLFlBQVksT0FBTyxJQUFJLFFBQUEsTUFBYyxTQUNoRSxLQUFJLFFBQUEsSUFBWSxPQUFPO0VBRTNCO0FBRUEsT0FBSyxVQUFVO0FBQ2pCO0FBRUEsZ0NBQVUsWUFBWSxXQUFBO0FBQ3BCLE1BQUksTUFBTSxRQUFRLEtBQUssT0FBTyxFQUFHO0FBQ2pDLE9BQUssVUFBVTtBQUVmLE1BQUksVUFBVSxDQUFBO0FBQ2QsV0FBUyxPQUFPLEtBQUssU0FBUztBQUM1QixRQUFJLE1BQU0sS0FBSyxRQUFRLEdBQUE7QUFDdkIsUUFBSSxRQUFRLGVBQWdCO0FBRTVCLFlBQVEsS0FBSztNQUNYLFlBQVk7TUFDWixZQUFZO01BQ1osWUFBWTtNQUNaLFFBQVEsNEJBQU0sUUFBUSxHQUFBO01BQ3RCLFFBQVEsSUFBSSxHQUFHLFNBQVM7TUFDeEIsUUFBUSxJQUFJO0lBQ2QsQ0FBQTtBQUVBLFFBQUksUUFBUSxpQkFDVixTQUFRLEtBQUs7TUFDWCxZQUFZO01BQ1osWUFBWTtNQUNaLFlBQVk7TUFDWixRQUFRLDRCQUFNLFFBQVEsR0FBQTtNQUN0QixRQUFRLElBQUksR0FBRztNQUNmLFFBQVEsSUFBSTtJQUNkLENBQUE7RUFFSjtBQUVBLE9BQUssVUFBVTtBQUNmLE9BQUssUUFBUSxRQUFRO0FBQ3JCLE9BQUssZUFBZSxnQ0FBVSxLQUFLLE1BQU0sTUFBTSxLQUFBO0FBQ2pEO0FFL0hBLElBQUksNEJBQU0sSUFBSSxnQkFBa0IsUUFBVTtFQUN4QyxRQUFRO0lBQ04sZUFBd0I7SUFDeEIsZUFBd0I7SUFDeEIsY0FBd0I7SUFDeEIsUUFBd0IsSUFBSSxTQUFXLFFBQVU7TUFDL0M7TUFBTTtNQUFlO01BQVk7TUFBWTtNQUM3QztNQUFNO01BQU07TUFBTTtNQUFnQjtLQUNuQztJQUNELGlCQUF3QjtJQUN4QixpQkFBd0I7SUFDeEIsbUJBQXdCO0lBQ3hCLG1CQUF3QjtJQUN4QixtQkFBd0I7SUFDeEIsbUJBQXdCO0lBQ3hCLHFCQUF3QjtJQUN4QixxQkFBd0I7SUFDeEIsZ0JBQXdCO0lBQ3hCLG9CQUF3QjtJQUN4QixjQUF3QjtJQUN4QixRQUF3QixJQUFJLE9BQVEsT0FBUyxFQUFBO0lBQzdDLGFBQXdCLElBQUksT0FBUSxRQUFVLENBQUE7SUFDOUMsVUFBd0IsSUFBSSxRQUFTLENBQUE7SUFDckMsYUFBd0IsSUFBSSxTQUFXLFFBQVU7TUFDL0M7TUFBVTtNQUFjO01BQVk7TUFBWTtNQUNoRDtNQUFRO01BQVc7TUFBa0I7TUFBTztLQUM3QztJQUNELGtCQUF3QjtJQUN4QixpQkFBd0I7O0VBQzFCOztFQUdBLEdBQUcsQ0FBQztFQUVKLEdBQUc7SUFDRCxjQUFvQjtJQUNwQixlQUFvQjtJQUNwQixhQUFvQjtJQUNwQixXQUFvQjtJQUNwQixZQUFvQjtJQUNwQixlQUFvQixJQUFJLE9BQVEsUUFBVSxDQUFBO0VBQzVDO0VBRUEsR0FBRzs7SUFFRCxjQUFvQjtJQUNwQixlQUFvQjtJQUNwQixhQUFvQjtJQUNwQixXQUFvQjtJQUNwQixZQUFvQjtJQUNwQixlQUFvQixJQUFJLE9BQVEsUUFBVSxDQUFBO0lBRTFDLFNBQW9CO0lBQ3BCLFdBQW9CO0lBQ3BCLGFBQW9CO0lBQ3BCLFdBQW9CO0lBQ3BCLFlBQW9CO0VBQ3RCO0VBRUEsR0FBRztJQUNELGNBQW9CO0lBQ3BCLGVBQW9CO0lBQ3BCLGFBQW9CO0lBQ3BCLFdBQW9CO0lBQ3BCLFlBQW9CO0lBQ3BCLGVBQW9CLElBQUksT0FBUSxRQUFVLENBQUE7SUFFMUMsU0FBb0I7SUFDcEIsV0FBb0I7SUFDcEIsYUFBb0I7SUFDcEIsV0FBb0I7SUFDcEIsWUFBb0I7SUFFcEIseUJBQXlCO0lBQ3pCLHlCQUF5QjtFQUMzQjtBQUNGLENBQUE7QUFFQSxJQUFJLGlDQUFXLDBCQUFJO0FBQ25CLCtCQUFTLENBQUEsSUFBSywrQkFBUyxDQUFBLElBQUssK0JBQVMsQ0FBQTtJQUVyQywyQ0FBZTtJQ2hGZiwyQ0FBZSxJQUFJLGdCQUFrQixTQUFXO0VBQzlDLFFBQVE7SUFDTixhQUFvQjtJQUNwQixtQkFBb0I7SUFDcEIsb0JBQW9CO0lBQ3BCLGNBQW9CO0lBQ3BCLGNBQW9CO0lBQ3BCLGNBQW9CO0lBQ3BCLGFBQW9CO0lBQ3BCLGFBQW9COztFQUN0QjtFQUVBLEdBQUcsQ0FBQztFQUVKLEdBQUc7SUFDRCxnQkFBZ0I7SUFDaEIsZ0JBQWdCLElBQUksT0FBUSxRQUFVLGdCQUFBO0lBQ3RDLE9BQWdCLElBQUksT0FBUSxJQUFJLFFBQVMsS0FBQSxDQUFBO0VBQzNDO0VBRUEsS0FBSztJQUNILGdCQUFnQjtJQUNoQixTQUFnQixJQUFJLE9BQVEsT0FBUyxnQkFBQTtFQUN2QztFQUVBLEdBQUcsQ0FBQztFQUVKLEdBQUc7SUFDRCxLQUFLLElBQUksT0FBUSxRQUFVLENBQUEsTUFBSyxFQUFFLE9BQU8sS0FBSyxTQUFTO0VBQ3pEO0FBQ0YsQ0FBQTtJQzlCQSwyQ0FBZSxJQUFJLE9BQVM7RUFDMUIsZUFBZSxJQUFJLE9BQVEsS0FBQTtBQUM3QixDQUFBO0lDQUEsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLGNBQWMsSUFBSSxPQUFRLEtBQUE7QUFDNUIsQ0FBQTtBQ0xBLElBQUksNkJBQU8sSUFBSSxnQkFBa0IseUJBQXlCO0VBQ3hELEdBQUc7SUFDRCxTQUFTLElBQUksT0FBUSxNQUFBO0VBQ3ZCO0VBQ0EsR0FBRztJQUNELFNBQVMsSUFBSSxPQUFRLE1BQUE7RUFDdkI7QUFDRixDQUFBO0FBRUEsMkJBQUssVUFBVSxXQUFBO0FBQ2IsTUFBSSxLQUFLLFlBQVksS0FBSyxDQUFDLEtBQUssWUFBWTtBQUMxQyxhQUFTQSxLQUFJLEdBQUdBLEtBQUksS0FBSyxRQUFRLFFBQVFBLEtBQ3ZDLE1BQUssUUFBUUEsRUFBQSxNQUFPO0FBRXRCLFNBQUssYUFBYTtFQUNwQjtBQUNGO0FBRUEsMkJBQUssWUFBWSxXQUFBO0FBQ2YsTUFBSSxLQUFLLFlBQVksS0FBSyxLQUFLLGVBQWUsT0FBTztBQUNuRCxhQUFTQSxLQUFJLEdBQUdBLEtBQUksS0FBSyxRQUFRLFFBQVFBLEtBQ3ZDLE1BQUssUUFBUUEsRUFBQSxPQUFRO0FBRXZCLFNBQUssYUFBYTtFQUNwQjtBQUNGO0lBRUEsMkNBQWU7SUMxQmYsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLHFCQUFxQixJQUFJLE9BQVEsS0FBQTtBQUNuQyxDQUFBO0lDRkEsMkNBQWUsSUFBSSxPQUFRLElBQUksU0FBQTtBRURoQixJQUFNLDJDQUFOLE1BQU07RUFLbkIsY0FBYyxLQUFLO0FBQ2pCLFdBQU8sT0FBTyxDQUFDLElBQUksUUFDakIsT0FBTSxJQUFJO0FBR1osV0FBTyxNQUFNLElBQUksVUFBVTtFQUM3QjtFQUVBLE9BQU8sUUFBUSxRQUFRO0FBQ3JCLFFBQUksVUFBVSxLQUFLLGNBQWMsTUFBQTtBQUNqQyxRQUFJLFFBQVEsV0FBVyxJQUNuQixPQUFPLGFBQVksSUFDbkIsT0FBTyxhQUFZO0FBRXZCLFFBQUksVUFBVSxFQUNaLFFBQU8sQ0FBQTtBQUdULFFBQUksVUFBVSxPQUFPLFVBQVM7QUFDOUIsUUFBSTtBQUNKLFFBQUksWUFBWSxFQUNkLGNBQWE7YUFDSixZQUFZLEVBQ3JCLGNBQWE7YUFDSixZQUFZLEVBQ3JCLGNBQWE7YUFDSixZQUFZLEVBQ3JCLGNBQWE7UUFFYixPQUFNLElBQUksTUFBTSxnQ0FBZ0MsT0FBQSxJQUFXLE9BQU8sR0FBRyxFQUFFO0FBR3pFLFFBQUksTUFBTSxDQUFBO0FBQ1YsUUFBSSxXQUFXLE9BQU8sT0FBUSxRQUFRLEtBQUssVUFBVztBQUV0RCxRQUFJLFFBQVEsV0FBVyxPQUFPLE1BQUE7QUFDOUIsYUFBU0EsS0FBSSxHQUFHQSxLQUFJLE9BQU9BLE1BQUs7QUFDOUIsVUFBSSxNQUFNLFdBQVcsT0FBTyxNQUFBO0FBRTVCLFVBQUksS0FBSyxRQUFRLE1BQU07QUFDckIsWUFBSSxNQUFNLE9BQU87QUFDakIsZUFBTyxNQUFNLFdBQVc7QUFFeEIsZUFBTyxTQUFTLE1BQU07QUFDdEIsWUFBSSxLQUFLLEtBQUssS0FBSyxPQUFPLFFBQVEsTUFBQSxDQUFBO0FBQ2xDLGVBQU8sTUFBTTtNQUNmLE1BQ0UsS0FBSSxLQUFLO1FBQ1AsUUFBUSxXQUFXO1FBQ25CLFFBQVEsTUFBTTtNQUNoQixDQUFBO0FBR0YsY0FBUTtJQUNWO0FBRUEsV0FBTyxNQUFNLFdBQVc7QUFDeEIsV0FBTztFQUNUO0VBRUEsS0FBS0csTUFBSyxRQUFRO0FBQ2hCLFFBQUlDLFFBQU87QUFDWCxRQUFJRCxLQUFJLFdBQVcsRUFDakIsUUFBT0M7QUFHVCxRQUFJLE9BQU8sS0FBSyxRQUFRLElBQUk7QUFHNUIsUUFBSSxTQUFTO0FBQ2IsYUFBU0osS0FBSSxHQUFHQSxLQUFJRyxLQUFJLFFBQVFILE1BQUs7QUFDbkMsVUFBSSxPQUFPRyxLQUFJSCxFQUFBO0FBQ2YsZ0JBQVUsS0FBSyxLQUFLLE1BQU0sTUFBQTtJQUM1QjtBQUVBLFFBQUk7QUFDSixRQUFJLFVBQVUsSUFDWixjQUFhO2FBQ0osVUFBVSxNQUNuQixjQUFhO2FBQ0osVUFBVSxTQUNuQixjQUFhO2FBQ0osVUFBVSxXQUNuQixjQUFhO1FBRWIsT0FBTSxJQUFJLE1BQU0sd0JBQUE7QUFHbEIsSUFBQUksU0FBUSxJQUFJLFdBQVcsS0FBSSxLQUFNRCxLQUFJLFNBQVM7QUFDOUMsSUFBQUMsU0FBUSxTQUFTO0FBRWpCLFdBQU9BO0VBQ1Q7RUFFQSxPQUFPLFFBQVFELE1BQUssUUFBUTtBQUMxQixXQUFPLGNBQWNBLEtBQUksTUFBTTtBQUMvQixRQUFJQSxLQUFJLFdBQVcsRUFDakI7QUFHRixRQUFJLE9BQU8sS0FBSyxRQUFRLElBQUk7QUFHNUIsUUFBSSxRQUFRLENBQUE7QUFDWixRQUFJLFNBQVM7QUFDYixhQUFTLFFBQVFBLE1BQUs7QUFDcEIsVUFBSSxJQUFJLEtBQUssS0FBSyxNQUFNLE1BQUE7QUFDeEIsWUFBTSxLQUFLLENBQUE7QUFDWCxnQkFBVTtJQUNaO0FBRUEsUUFBSTtBQUNKLFFBQUksVUFBVSxJQUNaLGNBQWE7YUFDSixVQUFVLE1BQ25CLGNBQWE7YUFDSixVQUFVLFNBQ25CLGNBQWE7YUFDSixVQUFVLFdBQ25CLGNBQWE7UUFFYixPQUFNLElBQUksTUFBTSx3QkFBQTtBQUlsQixXQUFPLFdBQVcsV0FBVyxLQUFJLENBQUE7QUFHakMsYUFBUztBQUNULGVBQVcsT0FBTyxRQUFRLE1BQUE7QUFFMUIsYUFBU0MsU0FBUSxPQUFPO0FBQ3RCLGdCQUFVQTtBQUNWLGlCQUFXLE9BQU8sUUFBUSxNQUFBO0lBQzVCO0FBRUEsYUFBUyxRQUFRRCxLQUNmLE1BQUssT0FBTyxRQUFRLE1BQU0sTUFBQTtBQUc1QjtFQUNGO0VBakpBLFlBQVksTUFBTTtBQUNoQixTQUFLLE9BQU87RUFDZDtBQWdKRjtBR3JKQSxJQUFNLGtDQUFZO0FBQ2xCLElBQU0scUNBQWU7RUFDbkI7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUNuQztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQU07RUFBTTs7QUFHbEMsSUFBTSw0Q0FBc0I7RUFDMUIsS0FBSztFQUNMLEtBQUs7RUFDTCxNQUFNO0VBQ04sS0FBSztBQUNQO0FBRWUsSUFBTSwyQ0FBTixNQUFNO0VBQ25CLE9BQU8sT0FBTyxRQUFRLE9BQU87QUFDM0IsUUFBSSxNQUFNLFNBQVMsU0FBUyxJQUMxQixRQUFPLFFBQVE7QUFHakIsUUFBSSxPQUFPLFNBQVMsU0FBUyxJQUMzQixTQUFRLFFBQVEsT0FBTyxNQUFNLE9BQU8sVUFBUyxJQUFLO0FBR3BELFFBQUksT0FBTyxTQUFTLFNBQVMsSUFDM0IsUUFBTyxFQUFFLFFBQVEsT0FBTyxNQUFNLE9BQU8sVUFBUyxJQUFLO0FBR3JELFFBQUksVUFBVSxHQUNaLFFBQU8sT0FBTyxZQUFXO0FBRzNCLFFBQUksVUFBVSxHQUNaLFFBQU8sT0FBTyxZQUFXO0FBRzNCLFFBQUksVUFBVSxJQUFJO0FBQ2hCLFVBQUksTUFBTTtBQUNWLGFBQU8sTUFBTTtBQUNYLFlBQUksSUFBSSxPQUFPLFVBQVM7QUFFeEIsWUFBSSxLQUFLLEtBQUs7QUFDZCxZQUFJLE9BQU8sZ0NBQWE7QUFDeEIsZUFBTyxtQ0FBYSxFQUFBO0FBRXBCLFlBQUksS0FBSyxJQUFJO0FBQ2IsWUFBSSxPQUFPLGdDQUFhO0FBQ3hCLGVBQU8sbUNBQWEsRUFBQTtNQUN0QjtBQUVBLGFBQU8sV0FBVyxHQUFBO0lBQ3BCO0FBRUEsV0FBTztFQUNUO0VBRUEsT0FBTyxLQUFLLE9BQU87QUFHakIsUUFBSSxNQUFNLFdBQ1IsU0FBUTtBQUdWLFNBQUssUUFBUSxPQUFPLE9BQU87QUFDekIsVUFBSSxNQUFNLEtBQUs7QUFDZixhQUFPLElBQUksS0FBSyxNQUFNLElBQUksU0FBUyxLQUFLLENBQUE7SUFFMUMsV0FBVyxRQUFRLFNBQVMsU0FBUyxJQUNuQyxRQUFPO2FBRUUsT0FBTyxTQUFTLFNBQVMsUUFBUSxTQUFTLFNBQVMsU0FBUyxLQUNyRSxRQUFPO2FBRUUsVUFBVSxTQUFTLFNBQVMsTUFDckMsUUFBTztRQUdQLFFBQU87RUFFWDtFQUVBLE9BQU8sT0FBTyxRQUFRLE9BQU87QUFHM0IsUUFBSSxNQUFNLE9BQU8sS0FBQTtBQUVqQixRQUFJLE1BQU0sWUFBWTtBQUNwQixhQUFPLFdBQVcsRUFBQTtBQUNsQixhQUFPLE9BQU8sYUFBYSxHQUFBO0lBRTdCLFlBQVksTUFBTSxPQUFPLEtBQUs7QUFDNUIsYUFBTyxXQUFXLEVBQUE7QUFFbEIsVUFBSSxNQUFNLEtBQUs7QUFDZixlQUFTSCxLQUFJLEdBQUdBLEtBQUksSUFBSSxRQUFRQSxNQUFLLEdBQUc7QUFDdEMsWUFBSSxLQUFLLElBQUlBLEVBQUE7QUFDYixZQUFJLEtBQUssMENBQW9CLEVBQUEsS0FBTyxDQUFDO0FBRXJDLFlBQUlBLE9BQU0sSUFBSSxTQUFTLEVBQ3JCLEtBQUksS0FBSzthQUNKO0FBQ0wsY0FBSSxLQUFLLElBQUlBLEtBQUksQ0FBQTtBQUNqQixjQUFJLEtBQUssMENBQW9CLEVBQUEsS0FBTyxDQUFDO1FBQ3ZDO0FBRUEsZUFBTyxXQUFZLE1BQU0sSUFBTSxLQUFLLEVBQUE7TUFDdEM7QUFFQSxVQUFJLE9BQU8sZ0NBQ1QsUUFBTyxPQUFPLFdBQVksbUNBQWEsQ0FBQTtJQUczQyxXQUFXLFFBQVEsT0FBTyxPQUFPLElBQy9CLFFBQU8sT0FBTyxXQUFXLE1BQU0sR0FBQTthQUV0QixPQUFPLE9BQU8sT0FBTyxNQUFNO0FBQ3BDLGFBQU87QUFDUCxhQUFPLFlBQVksT0FBTyxLQUFLLEdBQUE7QUFDL0IsYUFBTyxPQUFPLFdBQVcsTUFBTSxHQUFBO0lBRWpDLFdBQVcsU0FBUyxPQUFPLE9BQU8sTUFBTTtBQUN0QyxZQUFNLENBQUMsTUFBTTtBQUNiLGFBQU8sWUFBWSxPQUFPLEtBQUssR0FBQTtBQUMvQixhQUFPLE9BQU8sV0FBVyxNQUFNLEdBQUE7SUFFakMsV0FBVyxVQUFVLE9BQU8sT0FBTyxPQUFPO0FBQ3hDLGFBQU8sV0FBVyxFQUFBO0FBQ2xCLGFBQU8sT0FBTyxhQUFhLEdBQUE7SUFFN0IsT0FBTztBQUNMLGFBQU8sV0FBVyxFQUFBO0FBQ2xCLGFBQU8sT0FBTyxhQUFhLEdBQUE7SUFDN0I7RUFDRjtBQUNGO0FEaEllLElBQU0sMkNBQU4sTUFBTTtFQVVuQixlQUFlLE1BQU0sUUFBUSxLQUFLLFVBQVU7QUFDMUMsUUFBSSxNQUFNLFFBQVEsSUFBQSxFQUNoQixRQUFPLFNBQVMsSUFBSSxDQUFDLElBQUlBLE9BQU0sS0FBSyxlQUFlLEtBQUtBLEVBQUEsR0FBSSxRQUFRLEtBQUs7TUFBQztLQUFHLENBQUE7YUFDcEUsS0FBSyxVQUFVLEtBQ3hCLFFBQU8sS0FBSyxPQUFPLFFBQVEsS0FBSyxRQUFBO1FBRWhDLFNBQVEsTUFBQTtNQUNOLEtBQUs7TUFDTCxLQUFLO01BQ0wsS0FBSztBQUNILGVBQU8sU0FBUyxDQUFBO01BQ2xCLEtBQUs7QUFDSCxlQUFPLENBQUMsQ0FBQyxTQUFTLENBQUE7TUFDcEI7QUFDRSxlQUFPO0lBQ1g7RUFFSjtFQUVBLGVBQWUsTUFBTSxRQUFRLEtBQUssVUFBVTtBQUMxQyxRQUFJLE1BQU0sUUFBUSxJQUFBLEVBQ2hCLFFBQU8sU0FBUyxJQUFJLENBQUMsSUFBSUEsT0FBTSxLQUFLLGVBQWUsS0FBS0EsRUFBQSxHQUFJLFFBQVEsS0FBSyxFQUFBLEVBQUksQ0FBQSxDQUFFO2FBQ3RFLEtBQUssVUFBVSxLQUN4QixRQUFPLEtBQUssT0FBTyxRQUFRLFVBQVUsR0FBQTthQUM1QixPQUFPLGFBQWEsU0FDN0IsUUFBTztNQUFDOzthQUNDLE9BQU8sYUFBYSxVQUM3QixRQUFPO01BQUMsQ0FBQzs7YUFDQSxNQUFNLFFBQVEsUUFBQSxFQUN2QixRQUFPO1FBRVAsUUFBTztNQUFDOztFQUVaO0VBRUEsT0FBTyxRQUFRLFFBQVE7QUFDckIsUUFBSSxNQUFNLE9BQU8sTUFBTSxPQUFPO0FBQzlCLFFBQUksTUFBTSxDQUFDO0FBQ1gsUUFBSSxXQUFXLENBQUE7QUFHZixXQUFPLGlCQUFpQixLQUFLO01BQzNCLFFBQWdCO1FBQUUsT0FBTztNQUFPO01BQ2hDLGNBQWdCO1FBQUUsT0FBTyxPQUFPO01BQUk7SUFDdEMsQ0FBQTtBQUdBLGFBQVMsT0FBTyxLQUFLLFFBQVE7QUFDM0IsVUFBSSxRQUFRLEtBQUssT0FBTyxHQUFBO0FBQ3hCLFVBQUksTUFBTSxDQUFBLENBQUUsSUFBSSxNQUFNLENBQUE7SUFDeEI7QUFFQSxXQUFPLE9BQU8sTUFBTSxLQUFLO0FBQ3ZCLFVBQUksSUFBSSxPQUFPLFVBQVM7QUFDeEIsVUFBSSxJQUFJLElBQUk7QUFDVixZQUFJLE1BQU0sR0FDUixLQUFLLEtBQUssSUFBSyxPQUFPLFVBQVM7QUFHakMsWUFBSSxRQUFRLEtBQUssT0FBTyxDQUFBO0FBQ3hCLFlBQUksQ0FBQyxNQUNILE9BQU0sSUFBSSxNQUFNLG9CQUFvQixDQUFBLEVBQUc7QUFHekMsWUFBSSxNQUFNLEtBQUssZUFBZSxNQUFNLENBQUEsR0FBSSxRQUFRLEtBQUssUUFBQTtBQUNyRCxZQUFJLE9BQU8sTUFBQTtBQUNULGNBQUksZ0JBQWUsR0FBQSxvQkFDakIsUUFBTyxlQUFlLEtBQUssTUFBTSxDQUFBLEdBQUksR0FBQTtjQUVyQyxLQUFJLE1BQU0sQ0FBQSxDQUFFLElBQUk7O0FBSXBCLG1CQUFXLENBQUE7TUFDYixNQUNFLFVBQVMsTUFBSyxHQUFBLDBDQUFXLE9BQU8sUUFBUSxDQUFBLENBQUE7SUFFNUM7QUFFQSxXQUFPO0VBQ1Q7RUFFQSxLQUFLLE1BQU0sUUFBUSxrQkFBa0IsTUFBTTtBQUN6QyxRQUFJLE1BQU07O01BRVIsS0FBSztNQUNMLGFBQWE7TUFDYixhQUFhLE9BQU8sZUFBZTtJQUNyQztBQUVBLFFBQUksTUFBTTtBQUVWLGFBQVMsS0FBSyxLQUFLLFFBQVE7QUFDekIsVUFBSSxRQUFRLEtBQUssT0FBTyxDQUFBO0FBQ3hCLFVBQUksTUFBTSxLQUFLLE1BQU0sQ0FBQSxDQUFFO0FBQ3ZCLFVBQUksT0FBTyxTQUFRLEdBQUEsdUJBQUFLLFNBQVEsS0FBSyxNQUFNLENBQUEsQ0FBRSxFQUN0QztBQUdGLFVBQUksV0FBVyxLQUFLLGVBQWUsTUFBTSxDQUFBLEdBQUksTUFBTSxLQUFLLEdBQUE7QUFDeEQsZUFBUyxNQUFNLFNBQ2IsU0FBTyxHQUFBLDBDQUFXLEtBQUssRUFBQTtBQUd6QixVQUFJLE1BQU0sTUFBTSxRQUFRLE1BQU0sQ0FBQSxDQUFFLElBQUksTUFBTSxDQUFBLElBQUs7UUFBQyxNQUFNLENBQUE7O0FBQ3RELGFBQU8sSUFBSTtJQUNiO0FBRUEsUUFBSSxnQkFDRixRQUFPLElBQUk7QUFHYixXQUFPO0VBQ1Q7RUFFQSxPQUFPLFFBQVEsTUFBTSxRQUFRO0FBQzNCLFFBQUksTUFBTTtNQUNSLFVBQVUsQ0FBQTtNQUNWLGFBQWEsT0FBTzs7TUFFcEIsS0FBSztNQUNMLGFBQWE7SUFDZjtBQUVBLFFBQUksZ0JBQWdCLE9BQU8sTUFBTSxLQUFLLEtBQUssTUFBTSxLQUFLLEtBQUE7QUFFdEQsYUFBUyxTQUFTLEtBQUssS0FBSztBQUMxQixVQUFJLE1BQU0sS0FBSyxNQUFNLENBQUEsQ0FBRTtBQUN2QixVQUFJLE9BQU8sU0FBUSxHQUFBLHVCQUFBQSxTQUFRLEtBQUssTUFBTSxDQUFBLENBQUUsRUFDdEM7QUFHRixVQUFJLFdBQVcsS0FBSyxlQUFlLE1BQU0sQ0FBQSxHQUFJLFFBQVEsS0FBSyxHQUFBO0FBQzFELGVBQVMsTUFBTSxTQUNiLEVBQUEsR0FBQSwwQ0FBVyxPQUFPLFFBQVEsRUFBQTtBQUc1QixVQUFJLE1BQU0sTUFBTSxRQUFRLE1BQU0sQ0FBQSxDQUFFLElBQUksTUFBTSxDQUFBLElBQUs7UUFBQyxNQUFNLENBQUE7O0FBQ3RELGVBQVMsTUFBTSxJQUNiLFFBQU8sV0FBVyxFQUFBO0lBRXRCO0FBRUEsUUFBSUwsS0FBSTtBQUNSLFdBQU9BLEtBQUksSUFBSSxTQUFTLFFBQVE7QUFDOUIsVUFBSSxNQUFNLElBQUksU0FBU0EsSUFBQTtBQUN2QixVQUFJLEtBQUssT0FBTyxRQUFRLElBQUksS0FBSyxJQUFJLE1BQU07SUFDN0M7QUFFQTtFQUNGO0VBL0pBLFlBQVksTUFBTSxDQUFBLEdBQUk7QUFDcEIsU0FBSyxNQUFNO0FBQ1gsU0FBSyxTQUFTLENBQUM7QUFDZixhQUFTLFNBQVMsS0FBSztBQUNyQixVQUFJLE1BQU0sTUFBTSxRQUFRLE1BQU0sQ0FBQSxDQUFFLElBQUksTUFBTSxDQUFBLEVBQUcsQ0FBQSxLQUFNLElBQUksTUFBTSxDQUFBLEVBQUcsQ0FBQSxJQUFLLE1BQU0sQ0FBQTtBQUMzRSxXQUFLLE9BQU8sR0FBQSxJQUFPO0lBQ3JCO0VBQ0Y7QUF5SkY7QUVwS2UsSUFBTSwyQ0FBTixjQUF5QixRQUFBO0VBU3RDLE9BQU8sUUFBUSxRQUFRLFVBQVU7QUFDL0IsU0FBSyxhQUFhO01BQ2hCLFFBQVEsTUFBTSxTQUFTLENBQUE7SUFDekI7QUFFQSxXQUFPLE1BQU0sT0FBTyxRQUFRLFFBQVEsUUFBQTtFQUN0QztFQUVBLE9BQU8sUUFBUSxPQUFPLEtBQUs7QUFDekIsUUFBSSxDQUFDLFFBQVE7QUFFWCxXQUFLLGFBQWE7UUFDaEIsTUFBTSxNQUFNO01BQ2Q7QUFFQSxXQUFLLEtBQUssT0FBTyxHQUFBO0FBQ2pCLGFBQU87UUFBQyxJQUFJLDBCQUFJLENBQUE7O0lBQ2xCO0FBRUEsUUFBSSxNQUFNO0FBQ1YsU0FBSyxhQUFhO01BQ2hCLFFBQVEsQ0FBQ00sU0FBUSxRQUFRLE1BQU07SUFDakM7QUFFQSxVQUFNLE9BQU8sUUFBUSxPQUFPLEdBQUE7QUFDNUIsV0FBTztNQUFDLElBQUksMEJBQUksR0FBQTs7RUFDbEI7RUFsQ0EsWUFBWSxNQUFNLFVBQVUsQ0FBQyxHQUFHO0FBQzlCLFFBQUksUUFBUSxRQUFRLEtBQ2xCLFNBQVEsT0FBTztBQUdqQixVQUFNLE1BQU0sTUFBTSxPQUFBO0VBQ3BCO0FBNkJGO0FBRUEsSUFBTSw0QkFBTixNQUFNO0VBTUosVUFBVTtBQUNSLFdBQU8sS0FBSztFQUNkO0VBUEEsWUFBWSxLQUFLO0FBQ2YsU0FBSyxNQUFNO0FBQ1gsU0FBSyxhQUFhO0VBQ3BCO0FBS0Y7QUM3Q0EsSUFBTSxtQ0FBTixNQUFNO0VBQ0osT0FBTyxPQUFPLFFBQVEsUUFBUSxVQUFVO0FBQ3RDLFFBQUksWUFBWSxTQUFTLElBQUc7QUFJNUIsV0FBTyxTQUFTLFNBQVMsVUFDdkIsVUFBUyxJQUFHO0VBRWhCO0FBQ0Y7SUFFQSwyQ0FBZSxLQUFJLEdBQUEsMENBQVE7O0VBRXpCO0lBQUM7SUFBVztJQUF3QjtJQUErQzs7RUFDbkY7SUFBQztJQUFXO0lBQXdCO0lBQStDOztFQUNuRjtJQUFDO0lBQVc7SUFBd0I7SUFBK0M7O0VBQ25GO0lBQUM7SUFBVztJQUF3QjtJQUErQzs7RUFDbkY7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBK0M7O0VBQ25GO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQStDOztFQUNuRjtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUErQzs7RUFDbkY7SUFBQztJQUFXO0lBQXdCO0lBQStDOztFQUNuRjtJQUFDO0lBQVc7SUFBd0I7SUFBK0M7O0VBQ25GO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQStDOztFQUNuRjtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUErQzs7RUFDbkY7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBK0M7O0VBQ25GO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQStDOztFQUNuRjtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUErQzs7RUFDbkY7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBK0M7O0VBQ25GO0lBQUM7SUFBVztJQUF3QjtJQUErQzs7RUFDbkY7SUFBQztJQUFXO0lBQXdCO0lBQStDOztFQUNuRjtJQUFDO0lBQVc7SUFBd0I7SUFBK0M7O0VBQ25GO0lBQUM7SUFBVztJQUF3QjtJQUErQzs7RUFDbkY7SUFBQztJQUFXO0lBQXdCLEtBQUksR0FBQSwwQ0FBVyxLQUFJLEdBQUEsNkNBQVU7TUFBQyxNQUFNO0lBQU8sQ0FBQTtJQUFJOztDQUNwRjtJQ3BDRCwyQ0FBZTtFQUNiO0VBQVc7RUFBUztFQUFVO0VBQVk7RUFBYztFQUN4RDtFQUFXO0VBQWE7RUFBYztFQUFhO0VBQ25EO0VBQVk7RUFBUTtFQUFTO0VBQVU7RUFBVTtFQUFTO0VBQVE7RUFDbEU7RUFBTztFQUFTO0VBQVE7RUFBUTtFQUFPO0VBQVM7RUFBUztFQUFRO0VBQ2pFO0VBQWE7RUFBUTtFQUFTO0VBQVc7RUFBWTtFQUFNO0VBQUs7RUFBSztFQUNyRTtFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFDdEU7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQWU7RUFDdkQ7RUFBZ0I7RUFBZTtFQUFjO0VBQWE7RUFBSztFQUFLO0VBQ3BFO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUN0RTtFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBYTtFQUFPO0VBQzVEO0VBQWM7RUFBYztFQUFRO0VBQVk7RUFBWTtFQUM1RDtFQUFVO0VBQVc7RUFBWTtFQUFlO0VBQ2hEO0VBQWlCO0VBQWlCO0VBQWtCO0VBQU07RUFBTTtFQUNoRTtFQUFVO0VBQWE7RUFBa0I7RUFBYTtFQUN0RDtFQUFrQjtFQUFnQjtFQUFpQjtFQUNuRDtFQUFZO0VBQWU7RUFBZ0I7RUFBUztFQUFTO0VBQzdEO0VBQVM7RUFBVTtFQUFTO0VBQWE7RUFBWTtFQUFRO0VBQzdEO0VBQWdCO0VBQVU7RUFBUztFQUFVO0VBQU07RUFBZTtFQUNsRTtFQUFVO0VBQU07RUFBZ0I7RUFBTTtFQUFZO0VBQVU7RUFBVTtFQUN0RTtFQUFjO0VBQWU7RUFBYztFQUFNO0VBQWE7RUFDOUQ7RUFBVztFQUFhO0VBQVM7RUFBYztFQUFVO0VBQ3pEO0VBQVU7RUFBUztFQUFpQjtFQUFlO0VBQWM7RUFDakU7RUFBTztFQUFZO0VBQWlCO0VBQWE7RUFBVTtFQUMzRDtFQUFhO0VBQVU7RUFBUztFQUFVO0VBQVk7RUFDdEQ7RUFBZTtFQUFhO0VBQVU7RUFBVTtFQUFlO0VBQy9EO0VBQVU7RUFBVTtFQUFVO0VBQWU7RUFBYTtFQUMxRDtFQUFVO0VBQVU7RUFBVTtFQUFlO0VBQWE7RUFDMUQ7RUFBVTtFQUFhO0VBQVU7RUFBVTtFQUFlO0VBQzFEO0VBQVU7RUFBUztFQUFVO0VBQVk7RUFBVTtFQUNuRDtFQUFhO0VBQVU7RUFBVTtFQUFlO0VBQWE7RUFDN0Q7RUFBVTtFQUFVO0VBQWU7RUFBYTtFQUFVO0VBQzFEO0VBQVU7RUFBVTtFQUFlO0VBQWE7RUFBVTtFQUMxRDtFQUFhO0VBQVU7RUFBZTtFQUN0QztFQUFrQjtFQUFrQjtFQUFrQjtFQUN0RDtFQUFxQjtFQUFzQjtFQUMzQztFQUFrQjtFQUFnQjtFQUFlO0VBQ2pEO0VBQWlCO0VBQWdCO0VBQWdCO0VBQ2pEO0VBQWlCO0VBQWlCO0VBQWdCO0VBQ2xEO0VBQXVCO0VBQWtCO0VBQWlCO0VBQzFEO0VBQWE7RUFBZ0I7RUFBYTtFQUFhO0VBQ3ZEO0VBQWE7RUFBYTtFQUFhO0VBQWE7RUFDcEQ7RUFBYTtFQUFhO0VBQU07RUFBTztFQUFPO0VBQzlDO0VBQXNCO0VBQW1CO0VBQWtCO0VBQzNEO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQzVEO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQzVEO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQzVEO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUNsRDtFQUFhO0VBQVU7RUFBYztFQUFtQjtFQUN4RDtFQUFlO0VBQWU7RUFBZTtFQUFpQjtFQUM5RDtFQUFjO0VBQWtCO0VBQWU7RUFDL0M7RUFBa0I7RUFBZTtFQUFhO0VBQzlDO0VBQXFCO0VBQWE7RUFBZ0I7RUFDbEQ7RUFBZ0I7RUFBWTtFQUFhO0VBQWdCO0VBQ3pEO0VBQWdCO0VBQWU7RUFBaUI7RUFDaEQ7RUFBZ0I7RUFBZ0I7RUFBZTtFQUMvQztFQUFpQjtFQUFnQjtFQUFnQjtFQUNqRDtFQUFpQjtFQUFpQjtFQUFnQjtFQUNsRDtFQUFrQjtFQUFrQjtFQUFpQjtFQUNyRDtFQUFlO0VBQW9CO0VBQWU7RUFDbEQ7RUFBYztFQUFXO0VBQWlCO0VBQWU7RUFDekQ7RUFBb0I7RUFBa0I7RUFBZTtFQUNyRDtFQUFvQjtFQUFrQjtFQUFZO0VBQ2xEO0VBQWU7RUFBZTtFQUFvQjtFQUNsRDtFQUFrQjtFQUFXO0VBQWU7RUFBZTtFQUMzRDtFQUFvQjtFQUFrQjtFQUFlO0VBQ3JEO0VBQWtCO0VBQVc7RUFBVztFQUFXO0VBQVc7RUFDOUQ7RUFBUTtFQUFRO0VBQVM7RUFBVTtFQUFXO0VBQVM7O0FDckVsRCxJQUFJLDRDQUFtQjtFQUM1QjtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUM1RztFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQVM7RUFBVTtFQUFZO0VBQWM7RUFBVTtFQUFXO0VBQWE7RUFDL0Y7RUFBYTtFQUFjO0VBQVk7RUFBUTtFQUFTO0VBQVU7RUFBVTtFQUFTO0VBQVE7RUFBTztFQUNwRztFQUFTO0VBQVE7RUFBUTtFQUFPO0VBQVM7RUFBUztFQUFRO0VBQVM7RUFBYTtFQUFRO0VBQVM7RUFDakc7RUFBWTtFQUFNO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQzVHO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBZTtFQUFhO0VBQWdCO0VBQWU7RUFDOUY7RUFBYTtFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQzVHO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQWE7RUFBTztFQUFjO0VBQWM7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUMxRztFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQ3BHO0VBQWM7RUFBUTtFQUFZO0VBQVk7RUFBTztFQUFVO0VBQVc7RUFBWTtFQUN0RjtFQUFnQjtFQUFpQjtFQUFpQjtFQUFrQjtFQUFNO0VBQU07RUFBSTtFQUFVO0VBQzlGO0VBQWE7RUFBa0I7RUFBSTtFQUFhO0VBQVU7RUFBa0I7RUFBZ0I7RUFDNUY7RUFBa0I7RUFBWTtFQUFlO0VBQUk7RUFBZ0I7RUFBSTtFQUFTO0VBQVM7RUFBYztFQUNyRztFQUFVO0VBQVM7RUFBYTtFQUFZO0VBQUk7RUFBUTtFQUFXO0VBQUk7RUFBZ0I7RUFBVTtFQUNqRztFQUFVO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBTTtFQUFJO0VBQWU7RUFBSTtFQUFJO0VBQzNHO0VBQUk7RUFBVTtFQUFVO0VBQU07RUFBZ0I7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQU07RUFBSTtFQUFJO0VBQUk7RUFBWTtFQUFJO0VBQ3BHO0VBQVU7RUFBVTtFQUFNOztBQUdyQixJQUFJLDRDQUFpQjtFQUMxQjtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUM1RztFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQVM7RUFBZTtFQUFxQjtFQUFJO0VBQWtCO0VBQ25GO0VBQWtCO0VBQWM7RUFBcUI7RUFBc0I7RUFBa0I7RUFDN0Y7RUFBUztFQUFVO0VBQVU7RUFBWTtFQUFnQjtFQUFlO0VBQWU7RUFDdkY7RUFBZ0I7RUFBZ0I7RUFBZTtFQUFpQjtFQUFpQjtFQUFnQjtFQUNqRztFQUFhO0VBQWlCO0VBQXVCO0VBQWtCO0VBQWlCO0VBQUk7RUFDNUY7RUFBYTtFQUFnQjtFQUFhO0VBQWE7RUFBSTtFQUFJO0VBQWE7RUFBSTtFQUFJO0VBQWE7RUFDakc7RUFBYTtFQUFhO0VBQUk7RUFBSTtFQUFhO0VBQWE7RUFBYTtFQUFJO0VBQU07RUFBTTtFQUFNO0VBQU87RUFDdEc7RUFBcUI7RUFBSTtFQUFzQjtFQUFtQjtFQUFrQjtFQUFjO0VBQ2xHO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFDcEc7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUNwRztFQUFVO0VBQVU7RUFBVTtFQUFpQjtFQUFhO0VBQVU7RUFBYztFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUM1RztFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFBSTtFQUFJO0VBQUk7RUFDeEc7RUFBbUI7RUFBZ0I7RUFBZTtFQUFJO0VBQUk7RUFBZTtFQUFlO0VBQ3hGO0VBQWM7RUFBYztFQUFJO0VBQWtCO0VBQUk7RUFBSTtFQUFlO0VBQUk7RUFBSTtFQUFjO0VBQy9GO0VBQUk7RUFBSTtFQUFlO0VBQWE7RUFBZ0I7RUFBSTtFQUFJO0VBQUk7RUFBYztFQUFXO0VBQ3pGO0VBQXFCO0VBQWE7RUFBZ0I7RUFBZTtFQUFnQjtFQUFZO0VBQWE7RUFDMUc7RUFBSTtFQUFnQjtFQUFlO0VBQWU7RUFBaUI7RUFBZ0I7RUFDbkY7RUFBZTtFQUFpQjtFQUFpQjtFQUFnQjtFQUFnQjtFQUFlO0VBQ2hHO0VBQWlCO0VBQWdCO0VBQWdCO0VBQWU7RUFBaUI7RUFDakY7RUFBZ0I7RUFBZ0I7RUFBa0I7RUFBa0I7RUFBaUI7RUFDckY7RUFBZTtFQUFvQjtFQUFlO0VBQWtCO0VBQWM7RUFBVztFQUM3RjtFQUFlO0VBQWU7RUFBb0I7RUFBa0I7RUFBZTtFQUNuRjtFQUFvQjtFQUFrQjtFQUFZO0VBQWU7RUFBZTtFQUNoRjtFQUFvQjtFQUFlO0VBQWtCO0VBQVc7RUFBZTtFQUFlO0VBQzlGO0VBQW9CO0VBQWtCO0VBQWU7RUFBYzs7QUM5QzlELElBQUksNENBQWtCO0VBQzNCO0VBQVc7RUFBUztFQUFVO0VBQVk7RUFBYztFQUN4RDtFQUFXO0VBQWE7RUFBYztFQUFhO0VBQ25EO0VBQVk7RUFBUTtFQUFTO0VBQVU7RUFBVTtFQUFTO0VBQzFEO0VBQU87RUFBTztFQUFTO0VBQVE7RUFBUTtFQUFPO0VBQVM7RUFDdkQ7RUFBUTtFQUFTO0VBQWE7RUFBUTtFQUFTO0VBQVc7RUFDMUQ7RUFBTTtFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUNsRTtFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUM1RDtFQUFlO0VBQWE7RUFBZ0I7RUFBZTtFQUMzRDtFQUFhO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUNwRTtFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQUs7RUFBSztFQUFLO0VBQ2pFO0VBQWE7RUFBTztFQUFjO0VBQWM7RUFBYztFQUM5RDtFQUFZO0VBQVk7RUFBTztFQUFVO0VBQVc7RUFDcEQ7RUFBZTtFQUFnQjtFQUFpQjtFQUNoRDtFQUFrQjtFQUFNO0VBQU07RUFBVTtFQUFVO0VBQ2xEO0VBQWtCO0VBQWE7RUFBVTtFQUN6QztFQUFnQjtFQUFpQjtFQUFrQjtFQUNuRDtFQUFlO0VBQWdCO0VBQVM7RUFBUztFQUFjO0VBQy9EO0VBQVU7RUFBUztFQUFhO0VBQVk7RUFBUTtFQUNwRDtFQUFnQjtFQUFVO0VBQVM7RUFBVTtFQUFNO0VBQ25EO0VBQVU7RUFBVTtFQUFNO0VBQWdCO0VBQU07RUFBWTtFQUM1RDtFQUFVO0VBQU07RUFBYztFQUFlO0VBQWM7RUFDM0Q7RUFBYTtFQUFPO0VBQVc7RUFBYTtFQUFTO0VBQ3JEO0VBQVU7RUFBYTtFQUFVO0VBQVM7RUFBaUI7RUFDM0Q7RUFBYztFQUFTO0VBQU87RUFBWTtFQUFpQjtFQUMzRDtFQUFVO0VBQWU7RUFBYTtFQUFVO0VBQVM7RUFDekQ7RUFBWTtFQUFVO0VBQWU7RUFBYTtFQUFVO0VBQzVEO0VBQWU7RUFBYTtFQUFVO0VBQVU7RUFBVTtFQUMxRDtFQUFhO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFDckQ7RUFBYTtFQUFVO0VBQVU7RUFBYTtFQUFVO0VBQ3hEO0VBQWU7RUFBYTtFQUFVO0VBQVM7RUFBVTtFQUN6RDtFQUFVO0VBQWU7RUFBYTtFQUFVO0VBQVU7RUFDMUQ7RUFBYTtFQUFVO0VBQVU7RUFBVTtFQUFlO0VBQzFEO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBZTtFQUN2RDtFQUFVO0VBQVU7RUFBYTs7QUFHNUIsSUFBSSw0Q0FBZ0I7RUFDekI7RUFBVztFQUFTO0VBQWU7RUFBcUI7RUFDeEQ7RUFBa0I7RUFBa0I7RUFBYztFQUNsRDtFQUFzQjtFQUFrQjtFQUFrQjtFQUMxRDtFQUFVO0VBQVU7RUFBWTtFQUFnQjtFQUNoRDtFQUFlO0VBQWlCO0VBQWdCO0VBQ2hEO0VBQWU7RUFBaUI7RUFBaUI7RUFDakQ7RUFBUztFQUFhO0VBQWlCO0VBQ3ZDO0VBQWtCO0VBQWlCO0VBQWE7RUFDaEQ7RUFBZ0I7RUFBYTtFQUFhO0VBQWE7RUFDdkQ7RUFBYTtFQUFhO0VBQWE7RUFBYTtFQUNwRDtFQUFhO0VBQU07RUFBTTtFQUFNO0VBQU87RUFBTztFQUM3QztFQUFzQjtFQUFtQjtFQUFrQjtFQUMzRDtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUM1RDtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUM1RDtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFBVTtFQUM1RDtFQUFVO0VBQVU7RUFBVTtFQUFVO0VBQVU7RUFDbEQ7RUFBYTtFQUFVO0VBQWM7RUFBbUI7RUFDeEQ7RUFBZTtFQUFlO0VBQWU7RUFDN0M7RUFBYztFQUFjO0VBQWtCO0VBQzlDO0VBQWM7RUFBa0I7RUFBZTtFQUMvQztFQUFnQjtFQUFjO0VBQVc7RUFDekM7RUFBcUI7RUFBYTtFQUFnQjtFQUNsRDtFQUFnQjtFQUFZO0VBQWE7RUFBZ0I7RUFDekQ7RUFBZTtFQUFpQjtFQUFnQjtFQUNoRDtFQUFlO0VBQWlCO0VBQWlCO0VBQ2pEO0VBQWdCO0VBQWU7RUFBZTtFQUM5QztFQUFnQjtFQUFnQjtFQUFlO0VBQy9DO0VBQWlCO0VBQWdCO0VBQWdCO0VBQ2pEO0VBQWtCO0VBQWlCO0VBQWU7RUFDbEQ7RUFBb0I7RUFBZTtFQUFrQjtFQUNyRDtFQUFXO0VBQWlCO0VBQWU7RUFDM0M7RUFBb0I7RUFBa0I7RUFBZTtFQUNyRDtFQUFvQjtFQUFrQjtFQUFZO0VBQ2xEO0VBQWU7RUFBZTtFQUFvQjtFQUNsRDtFQUFrQjtFQUFXO0VBQWU7RUFBZTtFQUMzRDtFQUFvQjtFQUFrQjtFQUFlO0VBQ3JEOztBQUdLLElBQUksNENBQXNCO0VBQy9CO0VBQVc7RUFBUztFQUFrQjtFQUN0QztFQUFxQjtFQUFzQjtFQUMzQztFQUFrQjtFQUFTO0VBQVU7RUFBVTtFQUMvQztFQUFnQjtFQUFlO0VBQWU7RUFDOUM7RUFBZ0I7RUFBZ0I7RUFBZTtFQUMvQztFQUFpQjtFQUFnQjtFQUFTO0VBQWE7RUFDdkQ7RUFBdUI7RUFBa0I7RUFBYTtFQUN0RDtFQUFnQjtFQUFhO0VBQWE7RUFBYTtFQUN2RDtFQUFhO0VBQWE7RUFBYTtFQUFhO0VBQ3BEO0VBQWE7RUFBTTtFQUFNO0VBQU07RUFBTztFQUFPO0VBQzdDO0VBQXNCO0VBQWtCO0VBQWlCO0VBQ3pEO0VBQVU7RUFBZ0I7RUFBYztFQUFrQjtFQUMxRDtFQUFXO0VBQWlCO0VBQWE7RUFBZ0I7RUFDekQ7RUFBZ0I7RUFBWTtFQUFhO0VBQWdCO0VBQ3pEO0VBQWU7RUFBaUI7RUFBZ0I7RUFDaEQ7RUFBZTtFQUFpQjtFQUFpQjtFQUNqRDtFQUFnQjtFQUFlO0VBQWU7RUFDOUM7RUFBZ0I7RUFBZ0I7RUFBZTtFQUMvQztFQUFpQjtFQUFnQjtFQUFnQjtFQUNqRDtFQUFrQjs7QUUzRnBCLElBQUkscUNBQWUsSUFBSSxPQUFTO0VBQzlCLFVBQWtCLElBQUksU0FBVyxNQUFBO0VBQ2pDLGlCQUFrQjtFQUNsQixjQUFrQjtFQUNsQixnQkFBa0IsSUFBSSxPQUFRLFFBQVUsY0FBQTtBQUMxQyxDQUFBO0FBRUEsSUFBSSxzQ0FBZ0IsSUFBSSxPQUFTO0VBQy9CLEtBQVUsSUFBSSxRQUFTLENBQUE7RUFDdkIsU0FBVSxJQUFJLFFBQVUsUUFBVSxvQ0FBYztJQUFFLE1BQU07RUFBUyxDQUFBO0FBQ25FLENBQUE7QUFFQSxJQUFJLCtCQUFTLElBQUksT0FBUztFQUN4QixnQkFBZ0IsSUFBSSxRQUFVLFFBQVUsa0NBQUE7RUFDeEMsT0FBZ0I7RUFDaEIsZ0JBQWdCLElBQUksT0FBUSxxQ0FBZSxPQUFBO0FBQzdDLENBQUE7QUFFQSxJQUFJLHFDQUFlLElBQUksT0FBUztFQUM5QixLQUFRLElBQUksUUFBUyxDQUFBO0VBQ3JCLFFBQVEsSUFBSSxRQUFVLFFBQVUsOEJBQVE7SUFBRSxNQUFNO0VBQVMsQ0FBQTtBQUMzRCxDQUFBO0FBRU8sSUFBSSw0Q0FBYSxJQUFJLE9BQVEsb0NBQWMsTUFBQTtBQU1sRCxJQUFJLHNDQUFnQixJQUFJLE9BQVM7RUFDL0IsU0FBWTtFQUNaLFFBQVk7QUFDZCxDQUFBO0FBRU8sSUFBSSwyQ0FBVSxJQUFJLE9BQVM7RUFDaEMsZUFBb0IsSUFBSSxRQUFVLFFBQVUsbUNBQUE7RUFDNUMsYUFBb0I7RUFDcEIsbUJBQW9CLElBQUksT0FBUSxRQUFVLGFBQUE7QUFDNUMsQ0FBQTtBQUVBLElBQUksc0NBQWdCLElBQUksT0FBUztFQUMvQixLQUFVLElBQUksUUFBUyxDQUFBO0VBQ3ZCLFNBQVUsSUFBSSxRQUFVLFFBQVUsMENBQVM7SUFBRSxNQUFNO0VBQVMsQ0FBQTtBQUM5RCxDQUFBO0FBRU8sSUFBSSw0Q0FBYyxJQUFJLE9BQVEscUNBQWUsTUFBQTtBQUVwRCxJQUFJLG9DQUFjLElBQUksT0FBUztFQUM3QixvQkFBb0I7RUFDcEIsT0FBTyxJQUFJLFNBQVcsT0FBUztJQUM3QjtJQUFlO0lBQW9CO0lBQ25DO0lBQWU7R0FDaEI7QUFDSCxDQUFBO0FBRU8sU0FBUywwQ0FBVyxVQUFRO0FBQ2pDLE1BQUksU0FBUyxJQUFJLE9BQVM7SUFDeEIsWUFBb0I7SUFDcEIsT0FBb0I7SUFDcEIsZUFBb0I7SUFDcEIsV0FBb0IsSUFBSSxPQUFRLElBQUksUUFBVSxRQUFVLFFBQUEsR0FBVyxlQUFBO0lBQ25FLGtCQUFvQixJQUFJLFNBQVcsUUFBVSxDQUFBLE1BQUssRUFBRSxNQUFNLE1BQU0sbUJBQW1CO0VBQ3JGLENBQUE7QUFFQSxTQUFPLElBQUksVUFBWSxJQUFJLFFBQVUsUUFBVSxNQUFBLEdBQVMsTUFBQTtBQUMxRDtBQU1BLElBQUksb0NBQWMsSUFBSSxPQUFTO0VBQzdCLE9BQW9CO0VBQ3BCLEtBQW9CO0VBQ3BCLG9CQUFvQjtBQUN0QixDQUFBO0FBRU8sSUFBSSwyQ0FBVyxJQUFJLGdCQUFrQixRQUFVO0VBQ3BELEdBQUc7SUFDRCxZQUFjO0lBQ2QsUUFBYyxJQUFJLE9BQVEsUUFBVSxZQUFBO0VBQ3RDO0VBQ0EsR0FBRztJQUNELFlBQWM7SUFDZCxjQUFjLElBQUksT0FBUSxtQ0FBYSxZQUFBO0VBQ3pDO0FBQ0YsQ0FBQTtBQU1BLElBQUkseUNBQW1CLElBQUksT0FBUztFQUNsQyxPQUFRO0VBQ1IsS0FBUTtFQUNSLE9BQVE7QUFDVixDQUFBO0FBRU8sSUFBSSw0Q0FBVyxJQUFJLGdCQUFrQixRQUFVO0VBQ3BELEdBQUc7SUFDRCxZQUFrQjtJQUNsQixZQUFrQjtJQUNsQixpQkFBa0IsSUFBSSxPQUFRLFFBQVUsWUFBQTtFQUMxQztFQUNBLEdBQUc7SUFDRCxpQkFBa0I7SUFDbEIsa0JBQWtCLElBQUksT0FBUSx3Q0FBa0IsaUJBQUE7RUFDbEQ7QUFDRixDQUFBO0FBTU8sSUFBSSw0Q0FBUyxJQUFJLE9BQVM7RUFDL0IsR0FBRztFQUNILEdBQUc7RUFDSCxhQUFhO0FBQ2YsQ0FBQTtBQU1BLElBQUkscUNBQWUsSUFBSSxPQUFTO0VBQzlCLGVBQW9CO0VBQ3BCLGlCQUFvQjtBQUN0QixDQUFBO0FBRUEsSUFBSSw2QkFBTyxJQUFJLE9BQVM7RUFDdEIsWUFBZ0I7RUFDaEIsYUFBZ0I7RUFDaEIsT0FBZ0IsSUFBSSxPQUFRLFFBQVUsQ0FBQSxNQUFLLEVBQUUsYUFBYSxDQUFBO0VBQzFELGVBQWdCLElBQUksT0FBUSxvQ0FBYyxhQUFBO0FBQzVDLENBQUE7QUFFQSxJQUFJLGdDQUFVLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSwwQkFBQSxHQUFPLE1BQUE7QUFFekQsSUFBSSxrQ0FBWSxJQUFJLE9BQVM7RUFDM0IsWUFBZ0I7RUFDaEIsYUFBZ0I7RUFDaEIsU0FBZ0IsSUFBSSxPQUFRLFFBQVUsQ0FBQSxNQUFLLEVBQUUsYUFBYSxDQUFBO0VBQzFELGVBQWdCLElBQUksT0FBUSxvQ0FBYyxhQUFBO0FBQzVDLENBQUE7QUFFQSxJQUFJLGlDQUFXLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSwrQkFBQSxHQUFZLE1BQUE7QUFFeEQsSUFBSSw0Q0FBVSxJQUFJLGdCQUFrQixRQUFVO0VBQ25ELEdBQUc7SUFDRCxVQUFlLElBQUksUUFBVSxRQUFVLHdDQUFBO0lBQ3ZDLGNBQWU7SUFDZixVQUFlLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSw2QkFBQSxHQUFVLGNBQUE7RUFDL0Q7RUFDQSxHQUFHO0lBQ0QsVUFBZSxJQUFJLFFBQVUsUUFBVSx3Q0FBQTtJQUN2QyxVQUFlLElBQUksUUFBVSxRQUFVLHlDQUFBO0lBQ3ZDLGFBQWU7SUFDZixVQUFlLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSw4QkFBQSxHQUFXLGFBQUE7RUFDaEU7RUFDQSxHQUFHO0lBQ0QsWUFBZTtJQUNmLGFBQWU7SUFDZixXQUFlLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSx3Q0FBQSxHQUFXLFlBQUE7SUFDOUQsZUFBZSxJQUFJLE9BQVEsb0NBQWMsYUFBQTtFQUMzQztBQUNGLENBQUE7QUFNQSxJQUFJLGtDQUFZLElBQUksT0FBUztFQUMzQixxQkFBc0I7RUFDdEIsV0FBc0IsSUFBSSxPQUFRLFFBQVUscUJBQUE7RUFDNUMsaUJBQXNCO0VBQ3RCLE9BQXNCLElBQUksT0FBUSxRQUFVLENBQUEsTUFBSyxFQUFFLGtCQUFrQixDQUFBO0VBQ3JFLHFCQUFzQjtFQUN0QixXQUFzQixJQUFJLE9BQVEsUUFBVSxxQkFBQTtFQUM1QyxhQUFzQjtFQUN0QixlQUFzQixJQUFJLE9BQVEsb0NBQWMsYUFBQTtBQUNsRCxDQUFBO0FBRUEsSUFBSSxxQ0FBZSxJQUFJLE9BQVEsSUFBSSxRQUFVLFFBQVUsK0JBQUEsR0FBWSxNQUFBO0FBRTVELElBQUksNENBQWtCLElBQUksZ0JBQWtCLFFBQVU7RUFDM0QsR0FBRztJQUNELFVBQW9CLElBQUksUUFBVSxRQUFVLHdDQUFBO0lBQzVDLFlBQW9CO0lBQ3BCLGVBQW9CLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSxrQ0FBQSxHQUFlLFlBQUE7RUFDekU7RUFFQSxHQUFHO0lBQ0QsVUFBb0IsSUFBSSxRQUFVLFFBQVUsd0NBQUE7SUFDNUMsbUJBQW9CLElBQUksUUFBVSxRQUFVLHlDQUFBO0lBQzVDLGVBQW9CLElBQUksUUFBVSxRQUFVLHlDQUFBO0lBQzVDLG1CQUFvQixJQUFJLFFBQVUsUUFBVSx5Q0FBQTtJQUM1QyxZQUFvQjtJQUNwQixlQUFvQixJQUFJLE9BQVEsSUFBSSxRQUFVLFFBQVUsa0NBQUEsR0FBZSxZQUFBO0VBQ3pFO0VBRUEsR0FBRztJQUNELHFCQUF3QjtJQUN4QixtQkFBd0IsSUFBSSxPQUFRLElBQUksUUFBVSxRQUFVLHdDQUFBLEdBQVcscUJBQUE7SUFDdkUsaUJBQXdCO0lBQ3hCLGVBQXdCLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSx3Q0FBQSxHQUFXLGlCQUFBO0lBQ3ZFLHFCQUF3QjtJQUN4QixtQkFBd0IsSUFBSSxPQUFRLElBQUksUUFBVSxRQUFVLHdDQUFBLEdBQVcscUJBQUE7SUFDdkUsYUFBd0I7SUFDeEIsZUFBd0IsSUFBSSxPQUFRLG9DQUFjLGFBQUE7RUFDcEQ7QUFDRixDQUFBO0FEak5BLElBQUksZ0NBQVUsSUFBSSxNQUFRLElBQUksTUFBTSxFQUFBO0FBQ3BDLElBQUksOENBQXdCLElBQUksT0FBUztFQUN2QyxZQUFZO0VBQ1osV0FBVztFQUNYLFVBQVU7QUFDWixDQUFBO0FBRUEsSUFBSSw0Q0FBc0IsSUFBSSxPQUFTO0VBQ3JDLFdBQVc7RUFDWCxhQUFhO0VBQ2Isa0JBQWtCLElBQUksT0FBUSxJQUFJLE9BQVEsNkNBQXVCLFdBQUEsR0FBYyxhQUFBO0FBQ2pGLENBQUE7QUFFQSxJQUFJLGlDQUFXLElBQUksT0FBUztFQUMxQixhQUFhLElBQUksT0FBUSxPQUFTLENBQUEsTUFBSyxFQUFFLE9BQU8sZUFBZTtFQUMvRCxjQUFjLElBQUksT0FBUSxNQUFRLENBQUEsTUFBSyxFQUFFLE9BQU8sbUJBQW1CLEVBQUUsT0FBTyxlQUFlO0VBQzNGLFFBQVEsQ0FBQSxNQUFLLEVBQUUsWUFBWSxPQUFPLEVBQUUsWUFBWTtBQUNsRCxDQUFBO0FBRUEsSUFBSSwwQ0FBb0IsSUFBSSxPQUFTO0VBQ25DLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGVBQWUsSUFBSSxPQUFRLFFBQVUsa0JBQUE7RUFDckMsV0FBVyxJQUFJLE9BQVEsZ0NBQVUsV0FBQTtBQUNuQyxDQUFBO0FBRU8sSUFBSSw0Q0FBcUIsSUFBSSxPQUFTO0VBQzNDLFFBQVE7RUFDUixxQkFBcUIsSUFBSSxRQUFVLFFBQVUseUNBQUE7RUFDN0Msb0JBQW9CO0VBQ3BCLG1CQUFtQixJQUFJLE9BQVEsSUFBSSxRQUFVLFFBQVUsdUNBQUEsR0FBb0Isb0JBQUE7QUFDN0UsQ0FBQTtBQU1BLElBQUksdUNBQWlCLElBQUksZ0JBQWtCLFFBQVU7RUFDbkQsR0FBRztJQUNELFdBQVc7SUFDWCxXQUFXO0lBQ1gscUJBQXFCO0lBQ3JCLHFCQUFxQjtFQUN2QjtBQUNGLENBQUE7QUFFQSxJQUFJLHFDQUFlLElBQUksT0FBUztFQUM5QixnQkFBZ0I7RUFDaEIsZ0JBQWdCLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSxvQ0FBQSxHQUFpQixnQkFBQTtBQUN2RSxDQUFBO0FBRUEsSUFBSSx1REFBaUMsSUFBSSxPQUFTO0VBQ2hELGNBQWM7RUFDZCx1QkFBdUIsSUFBSSxRQUFVLFNBQVUsR0FBQSwyQ0FBUztJQUFDLE1BQU07RUFBUSxDQUFBO0FBQ3pFLENBQUE7QUFFQSxJQUFJLGlEQUEyQixJQUFJLE9BQVM7RUFDMUMsU0FBUztFQUNULG1CQUFtQjtFQUNuQixlQUFlLElBQUksT0FBUSxzREFBZ0MsbUJBQUE7QUFDN0QsQ0FBQTtBQUVBLElBQUksK0NBQXlCLElBQUksT0FBUztFQUN4QyxjQUFjLElBQUksUUFBVSxRQUFVLG9DQUFjO0lBQUMsTUFBTTtFQUFRLENBQUE7RUFDbkUsMEJBQTBCLElBQUksUUFBVSxRQUFVLGdEQUEwQjtJQUFDLE1BQU07RUFBUSxDQUFBO0FBQzdGLENBQUE7QUFFTyxJQUFJLDRDQUFvQixJQUFJLE9BQVM7RUFDMUMsY0FBYztFQUNkLGNBQWM7RUFDZCw2QkFBNkI7RUFDN0IseUJBQXlCLElBQUksT0FBUSw4Q0FBd0IsNkJBQUE7QUFDL0QsQ0FBQTtBUm5FQSxJQUFNLHFDQUFOLE1BQU07RUFNSixPQUFPLFFBQVEsUUFBUSxVQUFVO0FBQy9CLFFBQUksS0FBSyxjQUFjLFNBQVMsQ0FBQSxDQUFFLEVBQ2hDLFFBQU8sS0FBSyxjQUFjLFNBQVMsQ0FBQSxDQUFFO0FBR3ZDLFdBQU8sS0FBSyxLQUFLLE9BQU8sUUFBUSxRQUFRLFFBQUE7RUFDMUM7RUFFQSxLQUFLLE9BQU8sS0FBSztBQUNmLFdBQU8sS0FBSyxLQUFLLEtBQUssT0FBTyxHQUFBO0VBQy9CO0VBRUEsT0FBTyxRQUFRLE9BQU8sS0FBSztBQUN6QixRQUFJLFFBQVEsS0FBSyxjQUFjLFFBQVEsS0FBQTtBQUN2QyxRQUFJLFVBQVUsR0FDWixRQUFPO0FBR1QsV0FBTyxLQUFLLEtBQUssT0FBTyxRQUFRLE9BQU8sR0FBQTtFQUN6QztFQXhCQSxZQUFZLGVBQWUsTUFBTTtBQUMvQixTQUFLLGdCQUFnQjtBQUNyQixTQUFLLE9BQU87RUFDZDtBQXNCRjtBQUVBLElBQU0sMkNBQU4sY0FBaUMsUUFBQTtFQUsvQixPQUFPLFFBQVE7QUFDYixXQUFPLE1BQVEsT0FBTyxNQUFBLElBQVU7RUFDbEM7RUFOQSxjQUFjO0FBQ1osVUFBTSxPQUFBO0VBQ1I7QUFLRjtBQUVBLElBQUksK0JBQVMsSUFBSSxPQUFTO0VBQ3hCLE9BQU87RUFDUCxPQUFPO0FBQ1QsQ0FBQTtBQUVBLElBQUksK0JBQVMsSUFBSSxPQUFTO0VBQ3hCLE9BQU87RUFDUCxPQUFPO0FBQ1QsQ0FBQTtBQUVBLElBQUksMENBQW9CLElBQUksZ0JBQWtCLElBQUkseUNBQUEsR0FBc0I7RUFDdEUsR0FBRztJQUNELFFBQVE7SUFDUixPQUFPLElBQUksT0FBUSxPQUFTLFFBQUE7RUFDOUI7RUFFQSxHQUFHO0lBQ0QsU0FBUztJQUNULFFBQVEsSUFBSSxPQUFRLDhCQUFRLFNBQUE7RUFDOUI7QUFHRixDQUFBO0FBRUEsSUFBSSxvQ0FBYyxJQUFJLG1DQUFhO0dBQUUsR0FBQTtHQUFrQixHQUFBO0dBQWtCLEtBQUksR0FBQSwwQ0FBVyx5Q0FBbUI7RUFBRSxNQUFNO0FBQUssQ0FBQSxDQUFBO0FBSXhILElBQU0sbUNBQU4sY0FBeUIsT0FBQTtFQUN2QixPQUFPLFFBQVEsUUFBUTtBQUNyQixRQUFJQyxXQUFTLEdBQUEsZUFBYyxLQUFLLFFBQVEsUUFBUSxNQUFBO0FBQ2hELFFBQUksUUFBUTtBQUNaLFFBQUksTUFBTSxDQUFBO0FBQ1YsV0FBTyxRQUFRQSxTQUFRO0FBQ3JCLFVBQUksUUFBUSxLQUFLLEtBQUssT0FBTyxRQUFRLE1BQUE7QUFDckMsWUFBTSxTQUFTO0FBQ2YsZUFBUyxNQUFNLFFBQVE7QUFDdkIsVUFBSSxLQUFLLEtBQUE7SUFDWDtBQUVBLFdBQU87RUFDVDtBQUNGO0FBRUEsSUFBSSx5Q0FBbUIsSUFBSSxnQkFBa0IsT0FBUztFQUNwRCxHQUFHO0lBQ0QsUUFBUSxJQUFJLE9BQVEsUUFBVSxDQUFBLE1BQUssRUFBRSxPQUFPLFlBQVksU0FBUyxDQUFBO0VBQ25FO0VBRUEsR0FBRztJQUNELFFBQVEsSUFBSSxpQ0FBVyw4QkFBUSxDQUFBLE1BQUssRUFBRSxPQUFPLFlBQVksU0FBUyxDQUFBO0VBQ3BFO0VBRUEsR0FBRztJQUNELFFBQVEsSUFBSSxpQ0FBVyw4QkFBUSxDQUFBLE1BQUssRUFBRSxPQUFPLFlBQVksU0FBUyxDQUFBO0VBQ3BFO0FBQ0YsQ0FBQTtBQUVBLElBQUksbUNBQWEsSUFBSSxtQ0FBYTtHQUFFLEdBQUE7R0FBaUIsR0FBQTtHQUFlLEdBQUE7R0FBdUIsS0FBSSxHQUFBLDBDQUFXLHdDQUFrQjtFQUFDLE1BQU07QUFBSSxDQUFBLENBQUE7QUFFdkksSUFBSSxpQ0FBVyxJQUFJLE9BQVM7RUFDMUIsT0FBTztFQUNQLElBQUk7QUFDTixDQUFBO0FBRUEsSUFBSSxpQ0FBVyxJQUFJLE9BQVM7RUFDMUIsT0FBTztFQUNQLElBQUk7QUFDTixDQUFBO0FBRUEsSUFBSSxpQ0FBVyxJQUFJLGdCQUFrQixPQUFTO0VBQzVDLEdBQUc7SUFDRCxLQUFLLElBQUksT0FBUSxPQUFTLENBQUEsTUFBSyxFQUFFLE9BQU8sWUFBWSxNQUFNO0VBQzVEO0VBRUEsR0FBRztJQUNELFNBQVM7SUFDVCxRQUFRLElBQUksT0FBUSxnQ0FBVSxTQUFBO0lBQzlCLFVBQVU7RUFDWjtFQUVBLEdBQUc7SUFDRCxTQUFTO0lBQ1QsUUFBUSxJQUFJLE9BQVEsZ0NBQVUsU0FBQTtJQUM5QixVQUFVO0VBQ1o7QUFDRixDQUFBO0FBRUEsSUFBSSw0QkFBTSxLQUFJLEdBQUEsMkNBQVcsR0FBQSx5Q0FBYTtBQUN0QyxJQUFNLHFDQUFOLE1BQU07RUFDSixPQUFPLFFBQVEsUUFBUSxVQUFVO0FBQy9CLFdBQU8sU0FBUyxTQUFTLENBQUE7QUFDekIsV0FBTywwQkFBSSxPQUFPLFFBQVEsUUFBUTtNQUFDLFNBQVMsQ0FBQTtLQUFHO0VBQ2pEO0VBRUEsS0FBSyxNQUFNLEtBQUs7QUFDZCxXQUFPO09BQUMsR0FBQSwwQ0FBZSxLQUFLLE1BQU0sS0FBSyxLQUFBO01BQVEsMEJBQUksS0FBSyxNQUFNLEdBQUEsRUFBSyxDQUFBOztFQUNyRTtFQUVBLE9BQU8sUUFBUSxNQUFNLEtBQUs7QUFDeEIsV0FBTztPQUFDLEdBQUEsMENBQWUsS0FBSyxNQUFNLEtBQUssS0FBQTtNQUFRLDBCQUFJLE9BQU8sUUFBUSxNQUFNLEdBQUEsRUFBSyxDQUFBOztFQUMvRTtBQUNGO0FBRUEsSUFBSSxpQ0FBVyxLQUFJLEdBQUEsMENBQVE7O0VBRXpCO0lBQUM7SUFBVztJQUF3QixJQUFJO0lBQW9DOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7TUFBQztNQUFPO01BQUc7TUFBRztNQUFPO01BQUc7OztFQUNwRztJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7Q0FDN0U7QUFFRCxJQUFJLG1DQUFhLEtBQUksR0FBQSwwQ0FBUTs7RUFFM0I7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7TUFBQztNQUFPO01BQU87O0lBQXlCOztFQUU1RTtJQUFDO0lBQVc7SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztJQUFXO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO0lBQVc7SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDO01BQUM7TUFBTztNQUFHO01BQUc7TUFBTztNQUFHOzs7RUFDcEc7SUFBQztJQUFXO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO0lBQVc7SUFBd0I7SUFBd0M7TUFBQztNQUFHO01BQUc7TUFBRzs7O0VBQ3RGO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO0lBQVc7SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtLQUF3QyxHQUFBOztFQUM1RTtJQUFDO0lBQVc7SUFBd0I7S0FBd0MsR0FBQTs7RUFDNUU7SUFBQztJQUFXO0lBQXdCLEtBQUksR0FBQSwwQ0FBVyxLQUFJLEdBQUEsMkNBQU87SUFBYzs7RUFDNUU7SUFBQztJQUFXO0lBQXdCLElBQUk7SUFBb0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOzs7RUFHNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0I7SUFBd0M7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCO0lBQXdDOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QixLQUFJLEdBQUEsMENBQVcsOEJBQUE7SUFBeUI7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCLEtBQUksR0FBQSwwQ0FBVyxLQUFJLEdBQUEsMENBQVMsOEJBQUEsQ0FBQTtJQUFZOztFQUM1RTtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3Qzs7Q0FDN0U7QUFFRCxJQUFJLHVDQUFpQixJQUFJLE9BQVM7RUFDaEMsUUFBUTtFQUNSLHFCQUFvQixHQUFBO0FBQ3RCLENBQUE7QUFFQSxJQUFJLG9DQUFjLEtBQUksR0FBQSwwQ0FBUTtFQUM1QjtJQUFDO01BQUM7TUFBSTs7SUFBTTtJQUF3QjtJQUF3QztNQUFDO01BQU87TUFBRztNQUFHO01BQU87TUFBRzs7O0VBQ3BHO0lBQUM7SUFBVztJQUF3QixLQUFJLEdBQUEsMENBQVcsS0FBSSxHQUFBLDJDQUFPO0lBQWM7O0VBQzVFO0lBQUM7TUFBQztNQUFJOztJQUFNO0lBQXdCLEtBQUksR0FBQSwwQ0FBVyw4QkFBQTtJQUF5Qjs7RUFDNUU7SUFBQztNQUFDO01BQUk7O0lBQU07SUFBd0IsS0FBSSxHQUFBLDBDQUFXLEtBQUksR0FBQSwwQ0FBUyw4QkFBQSxDQUFBO0lBQVk7O0VBQzVFO0lBQUM7SUFBVztJQUF3QixLQUFJLEdBQUEsMENBQVcsb0NBQUE7SUFBeUI7O0VBQzVFO0lBQUM7SUFBVztJQUF3QjtJQUF3Qzs7Q0FDN0U7QUFFRCxJQUFJLCtCQUFTLElBQUksZ0JBQWtCLFNBQVc7RUFDNUMsR0FBRztJQUNELFNBQW9CO0lBQ3BCLFNBQW9CO0lBQ3BCLFdBQW9CLEtBQUksR0FBQSwwQ0FBUyxJQUFJLFFBQVMsUUFBQSxDQUFBO0lBQzlDLGNBQW9CLEtBQUksR0FBQSwwQ0FBUyxnQ0FBQTtJQUNqQyxhQUFvQixLQUFJLEdBQUEsMENBQVMsSUFBSSxRQUFTLFFBQUEsQ0FBQTtJQUM5QyxpQkFBb0IsS0FBSSxHQUFBO0VBQzFCO0VBRUEsR0FBRztJQUNELFNBQW9CO0lBQ3BCLFFBQW9CO0lBQ3BCLFNBQW9CO0lBQ3BCLGlCQUFvQixLQUFJLEdBQUE7RUFDMUI7QUFDRixDQUFBO0lBRUEsMkNBQWU7QUZ0T2YsSUFBTSxnQ0FBTixNQUFNLCtCQUFBO0VBTUosT0FBTyxPQUFPLFFBQVE7QUFDcEIsV0FBTyxJQUFJLCtCQUFRLE1BQUE7RUFDckI7RUFFQSxTQUFTO0FBQ1AsUUFBSSxRQUFRLEtBQUssT0FBTztBQUN4QixRQUFJLE9BQU0sR0FBQSwwQ0FBTyxPQUFPLEtBQUssTUFBTTtBQUNuQyxhQUFTLE9BQU8sS0FBSztBQUNuQixVQUFJLE1BQU0sSUFBSSxHQUFBO0FBQ2QsV0FBSyxHQUFBLElBQU87SUFDZDtBQUVBLFFBQUksS0FBSyxVQUFVLEdBQUc7QUFDcEIsVUFBSSxLQUFLLGFBQWEsV0FBVyxFQUMvQixPQUFNLElBQUksTUFBTSxzQ0FBQTtBQUdsQixXQUFLLFVBQVUsS0FBSyxhQUFhLENBQUE7SUFDbkM7QUFFQSxTQUFLLFlBQVksS0FBSyxRQUFRLE9BQU87QUFDckMsV0FBTztFQUNUO0VBRUEsT0FBTyxLQUFLO0FBQ1YsUUFBSSxLQUFLLFdBQVcsRUFDbEIsUUFBTztBQUdULFFBQUksT0FBTSxHQUFBLDBDQUFnQixPQUN4QixTQUFPLEdBQUEsMENBQWdCLEdBQUE7QUFHekIsV0FBTyxLQUFLLFlBQVksT0FBTSxHQUFBLDBDQUFnQixNQUFNO0VBQ3REO0VBRUEsSUFBSSxpQkFBaUI7QUFDbkIsUUFBSSxLQUFLLFVBQVUsRUFDakIsUUFBTyxLQUFLLFVBQVUsQ0FBQTtBQUd4QixXQUFPO0VBQ1Q7RUFFQSxJQUFJLFdBQVc7QUFDYixXQUFPLEtBQUssT0FBTyxLQUFLLFFBQVEsUUFBUTtFQUMxQztFQUVBLElBQUksYUFBYTtBQUNmLFdBQU8sS0FBSyxPQUFPLEtBQUssUUFBUSxVQUFVO0VBQzVDO0VBRUEsY0FBYyxPQUFPO0FBQ25CLFNBQUssT0FBTyxNQUFNLEtBQUssUUFBUSxZQUFZLEtBQUEsRUFBTztBQUNsRCxXQUFPLEtBQUssT0FBTyxXQUFXLEtBQUssUUFBUSxZQUFZLEtBQUEsRUFBTyxNQUFNO0VBQ3RFO0VBRUEsYUFBYSxLQUFLO0FBRWhCLFFBQUksS0FBSyxXQUFXLEVBQ2xCLFFBQU87QUFJVCxRQUFJLEtBQUssVUFDUCxRQUFPO0FBR1QsUUFBSSxFQUFBLFFBQVMsSUFBSyxLQUFLO0FBQ3ZCLFFBQUksTUFBTSxRQUFRLE9BQUEsRUFDaEIsUUFBTyxRQUFRLEdBQUE7QUFHakIsUUFBSSxRQUFRLEVBQ1YsUUFBTztBQUdULFdBQU87QUFFUCxZQUFRLFFBQVEsU0FBTztNQUNyQixLQUFLO0FBQ0gsZUFBTyxLQUFLLE9BQU8sUUFBUSxPQUFPLEdBQUEsQ0FBSTtNQUV4QyxLQUFLO01BQ0wsS0FBSztBQUNILGlCQUFTUCxLQUFJLEdBQUdBLEtBQUksUUFBUSxPQUFPLFFBQVFBLE1BQUs7QUFDOUMsY0FBSSxRQUFRLFFBQVEsT0FBT0EsRUFBQTtBQUMzQixjQUFJLE1BQU0sVUFBVSxPQUFPLE9BQU8sTUFBTSxTQUFTLE1BQU0sTUFDckQsUUFBTyxLQUFLLE9BQU8sTUFBTSxTQUFTLE1BQU0sTUFBTSxPQUFLO1FBRXZEO0FBQ0E7SUFDSjtBQUVBLFdBQU87RUFDVDtFQUVBLFdBQVcsS0FBSztBQUNkLFFBQUksQ0FBQyxLQUFLLFFBQVEsU0FDaEIsUUFBTztBQUdULFlBQVEsS0FBSyxRQUFRLFNBQVMsU0FBTztNQUNuQyxLQUFLO0FBQ0gsZUFBTyxLQUFLLFFBQVEsU0FBUyxJQUFJLEdBQUE7TUFFbkMsS0FBSztNQUNMLEtBQUs7QUFDSCxZQUFJLEVBQUEsT0FBUSxJQUFLLEtBQUssUUFBUTtBQUM5QixZQUFJLE1BQU07QUFDVixZQUFJLE9BQU8sT0FBTyxTQUFTO0FBRTNCLGVBQU8sT0FBTyxNQUFNO0FBQ2xCLGNBQUksTUFBTyxNQUFNLFFBQVM7QUFFMUIsY0FBSSxNQUFNLE9BQU8sR0FBQSxFQUFLLE1BQ3BCLFFBQU8sTUFBTTttQkFDSixNQUFNLFFBQVEsT0FBTyxPQUFPLE1BQU0sQ0FBQSxFQUFHLE1BQzlDLE9BQU0sTUFBTTtjQUVaLFFBQU8sT0FBTyxHQUFBLEVBQUs7UUFFdkI7TUFDRjtBQUNFLGNBQU0sSUFBSSxNQUFNLDZCQUE2QixLQUFLLFFBQVEsU0FBUyxPQUFPLEVBQUU7SUFDaEY7RUFDRjtFQUVBLG9CQUFvQixLQUFLO0FBQ3ZCLFFBQUksS0FBSyxRQUFRLFVBQVU7QUFDekIsVUFBSSxLQUFLLEtBQUssV0FBVyxHQUFBO0FBQ3pCLFVBQUksS0FBSyxRQUFRLFFBQVEsRUFBQSxFQUN2QixRQUFPLEtBQUssUUFBUSxRQUFRLEVBQUEsRUFBSTtBQUdsQyxhQUFPO0lBQ1Q7QUFFQSxRQUFJLEtBQUssVUFBVSxFQUNqQixRQUFPLEtBQUssUUFBUTtBQUd0QixXQUFPLEtBQUssUUFBUSxRQUFRLENBQUEsRUFBRztFQUNqQztFQXBKQSxZQUFZLFFBQVE7QUFDbEIsU0FBSyxTQUFTO0FBQ2QsU0FBSyxPQUFNO0VBQ2I7QUFrSkY7SUFFQSwyQ0FBZTtBWTVKZixJQUFJLHVDQUFpQixJQUFJLE9BQVM7RUFDaEMsWUFBYztFQUNkLGFBQWM7QUFDaEIsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixjQUF3QjtFQUN4QixjQUF3QjtFQUN4QixvQkFBd0I7RUFDeEIsdUJBQXdCO0VBQ3hCLFNBQXdCLElBQUksT0FBUSxzQ0FBZ0IsdUJBQUE7QUFDdEQsQ0FBQTtBRVhPLElBQUksNENBQWEsSUFBSSxPQUFTO0VBQ25DLFFBQVE7RUFDUixPQUFPO0VBQ1AsY0FBYztFQUNkLGNBQWM7RUFDZCxhQUFhO0VBQ2IsY0FBYztFQUNkLGNBQWM7RUFDZCxhQUFhO0FBQ2YsQ0FBQTtBQUVPLElBQUksNENBQWUsSUFBSSxPQUFTO0VBQ3JDLFFBQVE7RUFDUixPQUFPO0VBQ1AsVUFBVTtFQUNWLFVBQVU7RUFDVixTQUFTO0FBQ1gsQ0FBQTtBQUVBLElBQUksc0NBQWdCLElBQUksT0FBUztFQUMvQixPQUFPO0VBQ1AsU0FBUztFQUNULFNBQVM7QUFDWCxDQUFBO0FBRUEsSUFBTSxvQ0FBTixNQUFNO0FBQWE7QUFFbkIsSUFBTSxtQ0FBTixNQUFNO0FBQVk7QUFFWCxJQUFJLDBDQUFRLElBQUksZ0JBQWtCLFdBQVc7RUFDbEQsR0FBRztJQUNELFNBQVM7SUFDVCxNQUFNO0VBQ1I7RUFFQSxHQUFHO0lBQ0QsU0FBUztJQUNULE1BQU07RUFDUjs7O0VBS0EsR0FBRztJQUNELE1BQU07RUFDUjtFQUVBLEdBQUc7SUFDRCxTQUFTO0lBQ1QsTUFBTTtFQUNSO0VBRUEsR0FBRztJQUNELFNBQVM7SUFDVCxNQUFNO0VBQ1I7RUFFQSxHQUFHO0lBQ0QsU0FBUztJQUNULEtBQUssSUFBSSxTQUFXLEtBQUE7SUFDcEIsZUFBZTtJQUNmLFlBQVksSUFBSSxPQUFRLHFDQUFlLGVBQUE7RUFDekM7RUFFQSxHQUFHO0lBQ0QsU0FBUztJQUNULEtBQUssSUFBSSxTQUFXLEtBQUE7SUFDcEIsZUFBZTtJQUNmLFlBQVksSUFBSSxPQUFRLHFDQUFlLGVBQUE7RUFDekM7RUFFQSxJQUFJO0lBQ0YsU0FBUztJQUNULFNBQVM7SUFDVCxNQUFNLElBQUksUUFBUyxTQUFBO0VBQ3JCO0VBRUEsSUFBSTtJQUNGLFNBQVM7SUFDVCxTQUFTO0lBQ1QsTUFBTSxJQUFJLFFBQVMsU0FBQTtFQUNyQjtFQUVBLElBQUk7SUFDRixTQUFTO0lBQ1QsTUFBTSxJQUFJLFFBQVMsU0FBQTtFQUNyQjtBQUNGLENBQUE7QUR0RkEsSUFBSSx3Q0FBa0IsSUFBSSxPQUFTO0VBQ2pDLFVBQVU7RUFDVixXQUFXO0VBQ1gsVUFBVTtFQUNWLHFCQUFxQjtFQUNyQix1QkFBdUI7RUFDdkIsYUFBYTtFQUNiLGFBQWE7RUFDYixjQUFjO0VBQ2QsYUFBYTtFQUNiLFlBQVk7RUFDWixLQUFLLElBQUksU0FBVyxNQUFRLENBQUE7QUFDOUIsQ0FBQTtBQUVBLElBQUksdUNBQWlCLElBQUksT0FBUztFQUNoQyxXQUFXO0VBQ1gsUUFBUTtBQUNWLENBQUE7QUFFQSxJQUFJLHNDQUFnQixJQUFJLGdCQUFrQixRQUFVO0VBQ2xELFFBQVE7SUFDTixhQUFhO0lBQ2IsaUJBQWlCO0VBQ25CO0VBRUEsR0FBRztJQUNELGFBQWEsSUFBSSxPQUFRLFFBQVUsQ0FBQSxNQUFLLEVBQUUsT0FBTyxpQkFBaUIsRUFBRSxPQUFPLGtCQUFrQixDQUFBO0VBQy9GO0VBRUEsR0FBRztJQUNELFdBQVc7SUFDWCxhQUFZLEdBQUE7RUFDZDtFQUVBLEdBQUc7SUFDRCxhQUFhLElBQUksT0FBUSxRQUFVLENBQUEsTUFBSyxFQUFFLE9BQU8saUJBQWlCLEVBQUUsT0FBTyxrQkFBa0IsQ0FBQTtFQUMvRjtFQUVBLEdBQUc7SUFDRCxXQUFXO0lBQ1gsWUFBWSxJQUFJLE9BQVEsc0NBQWdCLENBQUEsTUFBSyxFQUFFLFlBQVksQ0FBQTtFQUM3RDtFQUVBLEdBQUc7SUFDRCxXQUFXO0lBQ1gsYUFBWSxHQUFBO0lBQ1osV0FBVztJQUNYLGdCQUFnQixJQUFJLE9BQVEsUUFBVSxXQUFBO0VBQ3hDO0FBQ0YsQ0FBQTtBQUVBLElBQUksMkNBQXFCLElBQUksT0FBUztFQUNwQyxpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLFVBQVUsSUFBSSxRQUFVLFFBQVUsbUNBQUE7QUFDcEMsQ0FBQTtBQUVBLElBQUksd0NBQWtCLElBQUksT0FBUztFQUNqQyxvQkFBb0IsSUFBSSxRQUFVLFFBQVUsSUFBSSxPQUFRLDBDQUFvQixDQUFBLEdBQUk7SUFBRSxNQUFNO0VBQVMsQ0FBQTtFQUNqRyxpQkFBaUI7RUFDakIsd0JBQXdCO0VBQ3hCLFVBQVU7RUFDVixNQUFNO0VBQ04sTUFBTTtFQUNOLGlCQUFpQjtFQUNqQixlQUFlO0VBQ2YsT0FBTztFQUNQLE9BQU87RUFDUCxVQUFVO0VBQ1YsT0FBTyxJQUFJLFNBQVcsT0FBUztJQUFDO0lBQWM7R0FBVztBQUMzRCxDQUFBO0lBRUEsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLFNBQVU7RUFDVixVQUFVO0VBQ1YsT0FBVSxJQUFJLE9BQVEsdUNBQWlCLFVBQUE7QUFDekMsQ0FBQTtBRTdFQSxJQUFJLG1DQUFhLElBQUksT0FBUztFQUM1QixNQUFNO0VBQ04sWUFBWTtFQUNaLGNBQWMsSUFBSSxPQUFRLElBQUksUUFBVSxRQUFVLE1BQUEsR0FBUyxDQUFBLE1BQUssRUFBRSxPQUFPLE9BQU8sS0FBSyxZQUFZLENBQUE7QUFDbkcsQ0FBQTtJQUtBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFTO0VBQ1QsT0FBTyxJQUFJLFNBQVcsUUFBVTtJQUFDO0dBQWlCO0VBQ2xELGNBQWM7RUFDZCxhQUFhLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSxnQ0FBQSxHQUFhLGNBQUE7QUFDaEUsQ0FBQTtBQ2RBLElBQUksb0NBQWMsSUFBSSxPQUFTO0VBQzdCLEtBQUs7RUFDTCxjQUFjOztBQUNoQixDQUFBO0FBS0EsSUFBSSx3Q0FBa0IsSUFBSSxPQUFTO0VBQ2pDLEtBQUs7O0VBRUwsaUJBQWlCOztFQUVqQixXQUFXO0FBQ2IsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFTO0VBQ1QscUJBQXFCO0VBQ3JCLGlCQUFpQixJQUFJLFFBQVUsUUFBVSxJQUFJLE9BQVEsdUNBQWlCLHFCQUFBLENBQUE7RUFDdEUsY0FBYyxJQUFJLFFBQVUsUUFBVSxJQUFJLE9BQVEsbUNBQWEsaUJBQUEsR0FBb0I7SUFBRSxNQUFNO0VBQUssQ0FBQTtFQUNoRyxpQkFBaUI7QUFDbkIsQ0FBQTtBQ3RCQSxJQUFJLG9DQUFjLElBQUksT0FBUztFQUM3QixNQUFNO0VBQ04sT0FBTztFQUNQLEtBQUs7RUFDTCxPQUFPO0FBQ1QsQ0FBQTtJQUVBLDJDQUFlLElBQUksZ0JBQWtCLFFBQVU7RUFDN0MsUUFBUTtJQUNOLG1CQUFtQjtJQUNuQixhQUFhO0lBQ2IsaUJBQWlCO0lBQ2pCLGNBQWMsSUFBSSxRQUFVLFFBQVUsSUFBSSxPQUFRLG1DQUFhLGlCQUFBLENBQUE7SUFDL0Qsb0JBQW9CLElBQUksT0FBUSxRQUFVLGFBQUE7RUFDNUM7RUFDQSxHQUFHLENBQUM7RUFDSixHQUFHO0lBQ0Qsd0JBQXdCLElBQUksUUFBVSxRQUFVLElBQUksT0FBUSxRQUFVLGFBQUEsQ0FBQTtJQUN0RSx5QkFBeUIsSUFBSSxRQUFVLFFBQVUsSUFBSSxPQUFRLFFBQVUsYUFBQSxDQUFBO0lBQ3ZFLDhCQUE4QixJQUFJLFFBQVUsUUFBVSxJQUFJLE9BQVEsUUFBVSxtQkFBQSxDQUFBO0VBQzlFO0FBQ0YsQ0FBQTtBQ25CQSxJQUFJLGtDQUFZLElBQUksZ0JBQWtCLFFBQVU7RUFDOUMsR0FBRztJQUNELFlBQWM7O0VBQ2hCO0VBRUEsR0FBRztJQUNELFlBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixnQkFBZ0I7O0VBQ2xCO0VBRUEsR0FBRztJQUNELFlBQWM7SUFDZCxhQUFjLElBQUksUUFBVSxTQUFVLEdBQUEsMENBQUs7O0VBQzdDO0FBQ0YsQ0FBQTtBQUVBLElBQUksbUNBQWEsSUFBSSxPQUFTO0VBQzVCLGNBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixZQUFnQixJQUFJLE9BQVEsSUFBSSxRQUFVLFFBQVUsK0JBQUEsR0FBWSxnQkFBQTtBQUNsRSxDQUFBO0FBRUEsSUFBSSx5Q0FBbUIsSUFBSSxPQUFTO0VBQ2xDLEtBQVksSUFBSSxRQUFTLENBQUE7RUFDekIsVUFBWSxJQUFJLFFBQVUsUUFBVSxpQ0FBVztJQUFDLE1BQU07RUFBUSxDQUFBO0VBQzlELFVBQVksSUFBSSxRQUFVLFFBQVUsaUNBQVc7SUFBQyxNQUFNO0VBQVEsQ0FBQTs7QUFDaEUsQ0FBQTtBQUVBLElBQUksK0JBQVMsSUFBSSxPQUFTO0VBQ3hCLFVBQW9CLElBQUksUUFBVSxRQUFVLCtCQUFBO0VBQzVDLFVBQW9CLElBQUksUUFBVSxRQUFVLCtCQUFBO0VBQzVDLGlCQUFvQjtFQUNwQixtQkFBb0IsSUFBSSxPQUFRLHdDQUFrQixpQkFBQTs7QUFDcEQsQ0FBQTtBQUVBLElBQUksMENBQW9CLElBQUksT0FBUztFQUNuQyxLQUFRLElBQUksUUFBUyxDQUFBO0VBQ3JCLFFBQVEsSUFBSSxRQUFVLFFBQVUsOEJBQVE7SUFBQyxNQUFNO0VBQVEsQ0FBQTtBQUN6RCxDQUFBO0FBRUEsSUFBSSxtQ0FBYSxJQUFJLE9BQVM7RUFDNUIsWUFBb0IsSUFBSSxRQUFVLFFBQVUsZ0NBQUE7RUFDNUMsZUFBb0IsSUFBSSxRQUFVLFFBQVUsNEJBQUE7RUFDNUMsa0JBQW9CO0VBQ3BCLG9CQUFvQixJQUFJLE9BQVEseUNBQW1CLGtCQUFBOztBQUNyRCxDQUFBO0FBRUEsSUFBSSx5Q0FBbUIsSUFBSSxPQUFTO0VBQ2xDLEtBQVUsSUFBSSxRQUFTLENBQUE7RUFDdkIsUUFBVSxJQUFJLFFBQVUsUUFBVSxrQ0FBWTtJQUFDLE1BQU07RUFBUSxDQUFBO0FBQy9ELENBQUE7QUFFQSxJQUFJLHVDQUFpQixJQUFJLE9BQVEsd0NBQWtCLE1BQUE7QUFHbkQsSUFBSSxvQ0FBYyxJQUFJLE9BQVEsSUFBSSxRQUFTLENBQUEsR0FBSSxNQUFBO0FBRS9DLElBQUksNkJBQU8sSUFBSSxPQUFTO0VBQ3RCLGFBQWdCLElBQUksUUFBVSxRQUFVLGlDQUFBO0VBQ3hDLGdCQUFnQixJQUFJLFFBQVUsUUFBVSxvQ0FBQTtBQUMxQyxDQUFBO0lBRUEsMkNBQWUsSUFBSSxnQkFBa0IsUUFBVTtFQUM3QyxRQUFRO0lBQ04sV0FBYyxJQUFJLFFBQVUsUUFBVSwwQkFBQTtJQUN0QyxVQUFjLElBQUksUUFBVSxRQUFVLDBCQUFBOztFQUN4QztFQUVBLE9BQVksQ0FBQztFQUNiLE9BQVk7SUFDVixvQkFBb0IsSUFBSSxRQUFVLFNBQVUsR0FBQSwwQ0FBaUI7RUFDL0Q7QUFDRixDQUFBO0FDekVBLElBQUksb0NBQWMsSUFBSSxPQUFRLFFBQVUsTUFBQTtBQUN4QyxJQUFJLG1DQUFhLElBQUksT0FBUztFQUM1QixVQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO0VBQy9DLFlBQWdCO0VBQ2hCLGNBQWdCLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSxpQ0FBQSxHQUFjLFlBQUE7QUFDcEUsQ0FBQTtBQUVBLElBQUksbUNBQWEsSUFBSSxnQkFBa0IsUUFBVTtFQUMvQyxHQUFHO0lBQ0QsWUFBWTtFQUNkO0VBRUEsR0FBRztJQUNELGlCQUFpQjtFQUNuQjtFQUVBLEdBQUc7SUFDRCxZQUFnQjtJQUNoQixhQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFLO0VBQy9DO0FBQ0YsQ0FBQTtBQUVBLElBQUksaUNBQVcsSUFBSSxPQUFRLElBQUksUUFBVSxRQUFVLGdDQUFBLEdBQWEsTUFBQTtBQUVoRSxJQUFJLHFDQUFlLElBQUksT0FBUztFQUM5QixVQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO0VBQy9DLGVBQWdCO0VBQ2hCLFdBQWdCLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSw4QkFBQSxHQUFXLGVBQUE7QUFDakUsQ0FBQTtBQUVBLElBQUkseUNBQW1CLElBQUksT0FBUztFQUNsQyxvQkFBb0I7RUFDcEIsY0FBb0I7RUFDcEIsVUFBb0IsSUFBSSxPQUFRLElBQUksUUFBVSxTQUFVLEdBQUEseUNBQU8sR0FBSSxjQUFBO0FBQ3JFLENBQUE7SUFFQSwyQ0FBZSxJQUFJLGdCQUFrQixRQUFVO0VBQzdDLFFBQVE7SUFDTixlQUFvQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFPO0lBQ25ELFlBQW9CLElBQUksUUFBVSxRQUFVLGdDQUFBO0lBQzVDLGNBQW9CLElBQUksUUFBVSxRQUFVLGtDQUFBO0lBQzVDLG9CQUFvQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFPO0VBQ3JEO0VBRUEsT0FBWSxDQUFDO0VBQ2IsT0FBWTtJQUNWLGtCQUFvQixJQUFJLFFBQVUsUUFBVSxzQ0FBQTtFQUM5QztFQUNBLE9BQVk7SUFDVixrQkFBb0IsSUFBSSxRQUFVLFFBQVUsc0NBQUE7SUFDNUMsb0JBQW9CLElBQUksUUFBVSxTQUFVLEdBQUEsMENBQWlCO0VBQy9EO0FBQ0YsQ0FBQTtBQ3BEQSxJQUFJLG9DQUFjLElBQUksU0FBVyxRQUFVO0VBQ3pDO0VBQWM7RUFDZDtFQUFZO0VBQ1o7RUFBYztFQUNkO0VBQWM7Q0FDZjtBQUVELElBQUksOEJBQVE7RUFDVixZQUFZO0VBQ1osWUFBWTtFQUNaLFVBQVk7RUFDWixVQUFZO0VBQ1osWUFBWSxJQUFJLFFBQVUsU0FBVSxHQUFBLDRDQUFRO0lBQUUsTUFBTTtJQUFVLFlBQVksQ0FBQSxRQUFPLElBQUk7RUFBSSxDQUFBO0VBQ3pGLFlBQVksSUFBSSxRQUFVLFNBQVUsR0FBQSw0Q0FBUTtJQUFFLE1BQU07SUFBVSxZQUFZLENBQUEsUUFBTyxJQUFJO0VBQUksQ0FBQTtFQUN6RixZQUFZLElBQUksUUFBVSxTQUFVLEdBQUEsNENBQVE7SUFBRSxNQUFNO0lBQVUsWUFBWSxDQUFBLFFBQU8sSUFBSTtFQUFJLENBQUE7RUFDekYsWUFBWSxJQUFJLFFBQVUsU0FBVSxHQUFBLDRDQUFRO0lBQUUsTUFBTTtJQUFVLFlBQVksQ0FBQSxRQUFPLElBQUk7RUFBSSxDQUFBO0FBQzNGO0FBRUEsSUFBTSxvQ0FBTixNQUFNO0VBS0osWUFBWSxRQUFRO0FBQ2xCLFFBQUksU0FBUztBQUNiLFdBQU8sQ0FBQyxPQUFPLEtBQUssR0FBRyxLQUFLLE9BQU8sT0FDakMsVUFBUyxPQUFPO0FBR2xCLFFBQUksQ0FBQyxPQUFPLEtBQUssR0FBRyxFQUFHO0FBRXZCLFFBQUksU0FBUyxDQUFDO0FBQ2QsV0FBTyxNQUFNLE1BQU0sT0FBTztBQUUxQixRQUFJRCxVQUFTLE9BQU8sS0FBSyxHQUFHO0FBQzVCLGFBQVMsT0FBT0EsUUFDZCxLQUFJQSxRQUFPLEdBQUEsRUFDVCxRQUFPLEdBQUEsSUFBTyw0QkFBTSxHQUFBO0FBSXhCLFdBQU8sSUFBSSxPQUFTLE1BQUE7RUFDdEI7RUFFQSxLQUFLLEtBQUssS0FBSztBQUNiLFdBQU8sS0FBSyxZQUFZLEdBQUEsRUFBSyxLQUFLLEtBQUssR0FBQTtFQUN6QztFQUVBLE9BQU8sUUFBUSxRQUFRO0FBQ3JCLFFBQUksTUFBTSxLQUFLLFlBQVksTUFBQSxFQUFRLE9BQU8sUUFBUSxNQUFBO0FBQ2xELFdBQU8sSUFBSTtBQUNYLFdBQU87RUFDVDtFQWpDQSxZQUFZLE1BQU0sZUFBZTtBQUMvQixTQUFLLE1BQU07RUFDYjtBQWdDRjtBQUVBLElBQUksd0NBQWtCLElBQUksT0FBUztFQUNqQyxhQUFnQjtFQUNoQixRQUFnQixJQUFJLGtDQUFZLGNBQUE7RUFDaEMsUUFBZ0IsSUFBSSxrQ0FBWSxjQUFBO0FBQ2xDLENBQUE7QUFFQSxJQUFJLGdDQUFVLElBQUksT0FBUSx1Q0FBaUIsTUFBQTtBQUUzQyxJQUFJLHFDQUFlLElBQUksT0FBUztFQUM5QixRQUFRLElBQUksa0NBQVksY0FBQTtFQUN4QixRQUFRLElBQUksa0NBQVksY0FBQTtBQUMxQixDQUFBO0FBRUEsSUFBSSwrQkFBUyxJQUFJLGdCQUFrQixRQUFVO0VBQzNDLEdBQUc7SUFDRCxhQUFnQjtJQUNoQixhQUFnQjtFQUNsQjtFQUVBLEdBQUc7SUFDRCxhQUFnQjtJQUNoQixhQUFnQjtJQUNoQixhQUFnQjtFQUNsQjtFQUVBLEdBQUc7SUFDRCxhQUFnQjtJQUNoQixhQUFnQjtJQUNoQixjQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFLO0lBQzdDLGNBQWdCLElBQUksUUFBVSxTQUFVLEdBQUEsMENBQUs7RUFDL0M7QUFDRixDQUFBO0FBRUEsSUFBSSx3Q0FBa0IsSUFBSSxPQUFTO0VBQ2pDLGFBQWdCLElBQUksUUFBVSxRQUFVLDhCQUFRO0lBQUMsTUFBTTtFQUFRLENBQUE7RUFDL0QsWUFBZ0IsSUFBSSxRQUFVLFFBQVUsOEJBQVE7SUFBQyxNQUFNO0VBQVEsQ0FBQTtBQUNqRSxDQUFBO0FBRUEsSUFBSSxtQ0FBYSxJQUFJLE9BQVM7RUFDNUIsT0FBWTtFQUNaLFlBQVksSUFBSSxRQUFVLFFBQVUsOEJBQVE7SUFBQyxNQUFNO0VBQVEsQ0FBQTtBQUM3RCxDQUFBO0FBRUEsSUFBSSxrQ0FBWSxJQUFJLE9BQVEsa0NBQVksTUFBQTtBQUV4QyxJQUFJLG1DQUFjLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSw0QkFBQSxHQUFTLENBQUEsTUFBSyxFQUFFLE9BQU8sVUFBVTtBQUN2RixJQUFJLGtDQUFjLElBQUksT0FBUSxrQ0FBWSxNQUFBO0FBRTFDLElBQUksd0NBQWtCLElBQUksT0FBUSxJQUFJLFFBQVUsUUFBVSw0QkFBQSxHQUFTLENBQUEsTUFBSyxFQUFFLE9BQU8sT0FBTyxVQUFVO0FBQ2xHLElBQUksdUNBQWtCLElBQUksT0FBUSx1Q0FBaUIsTUFBQTtBQUNuRCxJQUFJLHNDQUFrQixJQUFJLE9BQVEsSUFBSSxRQUFVLFFBQVUsb0NBQUEsR0FBaUIsTUFBQTtBQUUzRSxJQUFJLDRDQUFhLElBQUksZ0JBQWtCLGNBQWM7RUFDbkQsR0FBRyxJQUFJLGdCQUFrQixRQUFVO0lBQ2pDLEdBQUc7TUFDRCxVQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO01BQy9DLGFBQWdCO01BQ2hCLE9BQWdCLElBQUksa0NBQUE7SUFDdEI7SUFDQSxHQUFHO01BQ0QsVUFBZ0IsSUFBSSxRQUFVLFNBQVUsR0FBQSx5Q0FBTztNQUMvQyxhQUFnQjtNQUNoQixZQUFnQjtNQUNoQixRQUFnQixJQUFJLFVBQVksSUFBSSxrQ0FBQSxHQUFlLFlBQUE7SUFDckQ7RUFDRixDQUFBO0VBRUEsR0FBRyxJQUFJLGdCQUFrQixRQUFVO0lBQ2pDLEdBQUc7TUFDRCxVQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO01BQy9DLGNBQWdCO01BQ2hCLGNBQWdCO01BQ2hCLGNBQWdCO01BQ2hCLFVBQWdCLElBQUksVUFBWSxJQUFJLFFBQVUsUUFBVSw2QkFBQSxHQUFVLGNBQUE7SUFDcEU7SUFFQSxHQUFHO01BQ0QsVUFBZ0IsSUFBSSxRQUFVLFNBQVUsR0FBQSx5Q0FBTztNQUMvQyxjQUFnQjtNQUNoQixjQUFnQjtNQUNoQixXQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFPO01BQy9DLFdBQWdCLElBQUksUUFBVSxTQUFVLEdBQUEsMENBQU87TUFDL0MsYUFBZ0I7TUFDaEIsYUFBZ0I7TUFDaEIsY0FBZ0IsSUFBSSxVQUFZLElBQUksVUFBWSxvQ0FBYyxhQUFBLEdBQWdCLGFBQUE7SUFDaEY7RUFDRixDQUFBO0VBRUEsR0FBRztJQUNELFFBQW9CO0lBQ3BCLFVBQW9CLElBQUksUUFBVSxTQUFVLEdBQUEseUNBQU87SUFDbkQsZ0JBQW9CO0lBQ3BCLGtCQUFvQixJQUFJLE9BQVEsdUNBQWlCLGdCQUFBO0VBQ25EO0VBRUEsR0FBRztJQUNELFFBQW9CO0lBQ3BCLGNBQW9CLElBQUksUUFBVSxTQUFVLEdBQUEseUNBQU87SUFDbkQsY0FBb0IsSUFBSSxRQUFVLFNBQVUsR0FBQSx5Q0FBTztJQUNuRCxZQUFvQjtJQUNwQixXQUFvQixJQUFJLFFBQVUsUUFBVSwrQkFBQTtJQUM1QyxXQUFvQixJQUFJLFFBQVUsUUFBVSwrQkFBQTtFQUM5QztFQUVBLEdBQUc7SUFDRCxRQUFvQjtJQUNwQixjQUFvQixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO0lBQ25ELGtCQUFvQixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO0lBQ25ELFlBQW9CO0lBQ3BCLFdBQW9CLElBQUksUUFBVSxRQUFVLCtCQUFBO0lBQzVDLGVBQW9CLElBQUksUUFBVSxRQUFVLG1DQUFBO0VBQzlDO0VBRUEsR0FBRztJQUNELFFBQW9CO0lBQ3BCLGVBQW9CLElBQUksUUFBVSxTQUFVLEdBQUEseUNBQU87SUFDbkQsZUFBb0IsSUFBSSxRQUFVLFNBQVUsR0FBQSx5Q0FBTztJQUNuRCxZQUFvQjtJQUNwQixZQUFvQixJQUFJLFFBQVUsUUFBVSwrQkFBQTtJQUM1QyxZQUFvQixJQUFJLFFBQVUsUUFBVSwrQkFBQTtFQUM5QztFQUVBLElBQUcsR0FBQTtFQUNILElBQUcsR0FBQTtFQUVILEdBQUc7SUFDRCxXQUFhO0lBQ2IsWUFBYTtJQUNiLFdBQWEsSUFBSSxRQUFVLFFBQVUsSUFBQTtFQUN2QztBQUNGLENBQUE7QUFHQSwwQ0FBVyxTQUFTLENBQUEsRUFBRyxVQUFVLE9BQU87SUFFeEMsMkNBQWUsSUFBSSxnQkFBa0IsUUFBVTtFQUM3QyxRQUFRO0lBQ04sWUFBZ0IsSUFBSSxRQUFVLFNBQVUsR0FBQSwwQ0FBUztJQUNqRCxhQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFVO0lBQ2xELFlBQWdCLElBQUksUUFBVSxRQUFVLEtBQUksR0FBQSwyQ0FBVyx5Q0FBQSxDQUFBO0VBQ3pEO0VBRUEsT0FBWSxDQUFDO0VBQ2IsT0FBWTtJQUNWLG1CQUFtQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFnQjtFQUM3RDtBQUNGLENBQUE7QUN6TUEsSUFBSSxpQ0FBVyxJQUFJLE9BQVEsUUFBVSxNQUFBO0FBQ3JDLElBQUkscUNBQWU7QUFFbkIsSUFBSSxpQ0FBVyxJQUFJLE9BQVM7RUFDMUIsT0FBWTtFQUNaLFdBQVk7RUFDWixZQUFZLElBQUksT0FBUSxRQUFVLENBQUEsTUFBSyxFQUFFLFlBQVksQ0FBQTtBQUN2RCxDQUFBO0FBRUEsSUFBSSxvQ0FBYyxJQUFJLE9BQVEsSUFBSSxRQUFVLFFBQVUsOEJBQUEsR0FBVyxNQUFBO0FBRWpFLElBQUksbUNBQWEsSUFBSSxnQkFBa0IsY0FBYztFQUNuRCxHQUFHLElBQUksZ0JBQWtCLFFBQVU7SUFDakMsR0FBRztNQUNELFVBQWdCLElBQUksUUFBVSxTQUFVLEdBQUEseUNBQU87TUFDL0MsY0FBZ0I7SUFDbEI7SUFDQSxHQUFHO01BQ0QsVUFBZ0IsSUFBSSxRQUFVLFNBQVUsR0FBQSx5Q0FBTztNQUMvQyxZQUFnQjtNQUNoQixZQUFnQixJQUFJLFVBQVksUUFBVSxZQUFBO0lBQzVDO0VBQ0YsQ0FBQTtFQUVBLEdBQUc7SUFDRCxhQUFnQjtJQUNoQixVQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO0lBQy9DLE9BQWdCO0lBQ2hCLFdBQWdCLElBQUksVUFBWSxJQUFJLFFBQVUsUUFBVSw4QkFBQSxHQUFXLE9BQUE7RUFDckU7RUFFQSxHQUFHO0lBQ0QsYUFBZ0I7SUFDaEIsVUFBZ0IsSUFBSSxRQUFVLFNBQVUsR0FBQSx5Q0FBTztJQUMvQyxPQUFnQjtJQUNoQixjQUFnQixJQUFJLFVBQVksSUFBSSxRQUFVLFFBQVUsa0NBQUEsR0FBZSxPQUFBO0VBQ3pFO0VBRUEsR0FBRztJQUNELGFBQWdCO0lBQ2hCLFVBQWdCLElBQUksUUFBVSxTQUFVLEdBQUEseUNBQU87SUFDL0MsT0FBZ0I7SUFDaEIsY0FBZ0IsSUFBSSxVQUFZLElBQUksUUFBVSxRQUFVLGlDQUFBLEdBQWMsT0FBQTtFQUN4RTtFQUVBLElBQUcsR0FBQTtFQUNILElBQUcsR0FBQTtFQUVILEdBQUc7SUFDRCxhQUFlO0lBQ2YsWUFBZTtJQUNmLFdBQWUsSUFBSSxRQUFVLFFBQVUsSUFBQTtFQUN6QztFQUVBLEdBQUc7SUFDRCxhQUF3QjtJQUN4QixVQUF3QixJQUFJLFFBQVUsU0FBVSxHQUFBLHlDQUFPO0lBQ3ZELG1CQUF3QixJQUFJLE9BQVEsSUFBSSxRQUFVLFNBQVUsR0FBQSx5Q0FBTyxHQUFJLHFCQUFBO0lBQ3ZFLHFCQUF3QjtJQUN4QixtQkFBd0IsSUFBSSxPQUFRLElBQUksUUFBVSxTQUFVLEdBQUEseUNBQU8sR0FBSSxxQkFBQTtJQUN2RSxZQUF3QjtJQUN4QixhQUF3QixJQUFJLE9BQVEsUUFBVSxZQUFBO0VBQ2hEO0FBQ0YsQ0FBQTtBQUdBLGlDQUFXLFNBQVMsQ0FBQSxFQUFHLFVBQVUsT0FBTztJQUV4QywyQ0FBZSxJQUFJLGdCQUFrQixRQUFVO0VBQzdDLFFBQVE7SUFDTixZQUFnQixJQUFJLFFBQVUsU0FBVSxHQUFBLDBDQUFTO0lBQ2pELGFBQWdCLElBQUksUUFBVSxTQUFVLEdBQUEsMENBQVU7SUFDbEQsWUFBZ0IsSUFBSSxRQUFVLFFBQVUsS0FBSSxHQUFBLDJDQUFXLGdDQUFBLENBQUE7RUFDekQ7RUFFQSxPQUFZLENBQUM7RUFDYixPQUFZO0lBQ1YsbUJBQW1CLElBQUksUUFBVSxTQUFVLEdBQUEsMENBQWdCO0VBQzdEO0FBQ0YsQ0FBQTtBQy9FQSxJQUFJLHdDQUFrQixJQUFJLE9BQVEsUUFBVSxNQUFBO0FBRTVDLElBQUkscUNBQWUsSUFBSSxPQUFTO0VBQzlCLHFCQUF3QixJQUFJLFFBQVUsUUFBVSxxQ0FBQTtFQUNoRCxzQkFBd0IsSUFBSSxRQUFVLFFBQVUscUNBQUE7RUFDaEQscUJBQXdCLElBQUksUUFBVSxRQUFVLHFDQUFBO0VBQ2hELHNCQUF3QixJQUFJLFFBQVUsUUFBVSxxQ0FBQTtFQUNoRCxrQkFBd0IsSUFBSSxRQUFVLFFBQVUsS0FBSSxHQUFBLDRDQUFXLEdBQUEsMENBQVMsQ0FBQTtFQUN4RSxxQkFBd0IsSUFBSSxRQUFVLFFBQVUscUNBQUE7RUFDaEQsc0JBQXdCLElBQUksUUFBVSxRQUFVLHFDQUFBO0VBQ2hELHFCQUF3QixJQUFJLFFBQVUsUUFBVSxxQ0FBQTtFQUNoRCxzQkFBd0IsSUFBSSxRQUFVLFFBQVUscUNBQUE7RUFDaEQsa0JBQXdCLElBQUksUUFBVSxRQUFVLEtBQUksR0FBQSw0Q0FBVyxHQUFBLDBDQUFTLENBQUE7QUFDMUUsQ0FBQTtBQUVBLElBQUksb0NBQWMsSUFBSSxPQUFRLElBQUksUUFBVSxRQUFVLGtDQUFBLEdBQWUsTUFBQTtBQUVyRSxJQUFJLDBDQUFvQixJQUFJLE9BQVM7RUFDbkMsS0FBYSxJQUFJLFFBQVMsQ0FBQTtFQUMxQixhQUFhLElBQUksUUFBVSxRQUFVLGlDQUFBO0FBQ3ZDLENBQUE7QUFFQSxJQUFJLG1DQUFhLElBQUksT0FBUztFQUM1QixnQkFBZ0IsSUFBSSxRQUFVLFFBQVUsSUFBSSxPQUFRLFFBQVUsTUFBQSxDQUFBO0VBQzlELGdCQUFnQixJQUFJLFFBQVUsUUFBVSxpQ0FBQTtFQUN4QyxjQUFnQjtFQUNoQixnQkFBZ0IsSUFBSSxPQUFRLHlDQUFtQixjQUFBO0FBQ2pELENBQUE7QUFFQSxJQUFJLHlDQUFtQixJQUFJLE9BQVM7RUFDbEMsS0FBUSxJQUFJLFFBQVMsQ0FBQTtFQUNyQixRQUFRLElBQUksUUFBVSxRQUFVLGtDQUFZO0lBQUMsTUFBTTtFQUFRLENBQUE7QUFDN0QsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFhO0VBQ2IsYUFBYTtFQUNiLFlBQWEsSUFBSSxPQUFRLHdDQUFrQixhQUFBO0FBQzdDLENBQUE7QUNyQ0EsSUFBTSwyQ0FBTixNQUFNO0VBS0osT0FBTyxRQUFRLFFBQVE7QUFDckIsWUFBUSxLQUFLLEtBQUssR0FBRyxNQUFBLEdBQUE7TUFDbkIsS0FBSztBQUFHLGVBQU8sT0FBTyxVQUFTO01BQy9CLEtBQUs7QUFBRyxlQUFPLE9BQU8sYUFBWTtNQUNsQyxLQUFLO0FBQUcsZUFBTyxPQUFPLGFBQVk7TUFDbEMsS0FBSztBQUFHLGVBQU8sT0FBTyxhQUFZO0lBQ3BDO0VBQ0Y7RUFFQSxLQUFLLEtBQUssUUFBUTtBQUNoQixZQUFPLEdBQUEsZUFBYyxLQUFLLE9BQU8sTUFBTSxNQUFBO0VBQ3pDO0VBZkEsWUFBWUssT0FBTTtBQUNoQixTQUFLLFFBQVFBO0VBQ2Y7QUFjRjtBQUVBLElBQUkscUNBQWUsSUFBSSxPQUFTO0VBQzlCLE9BQU8sSUFBSSx5Q0FBbUIsQ0FBQSxRQUFPLEVBQUUsT0FBTyxjQUFjLE9BQVcsS0FBSyxDQUFBO0VBQzVFLFlBQVksQ0FBQSxNQUFLLEVBQUUsVUFBVyxFQUFFLE9BQU8sY0FBYyxNQUFVO0VBQy9ELFlBQVksQ0FBQSxNQUFLLEVBQUUsU0FBVSxNQUFPLEVBQUUsT0FBTyxjQUFjLE1BQVUsS0FBTTtBQUM3RSxDQUFBO0FBRUEsSUFBSSx5Q0FBbUIsSUFBSSxPQUFTO0VBQ2xDLGFBQWE7RUFDYixVQUFVO0VBQ1YsU0FBUyxJQUFJLE9BQVEsb0NBQWMsVUFBQTtBQUNyQyxDQUFBO0lBRUEsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLGNBQWM7RUFDZCxjQUFjO0VBQ2Qsb0JBQW9CLElBQUksUUFBVSxTQUFVLEdBQUEsMENBQWlCO0VBQzdELHFCQUFxQixJQUFJLFFBQVUsUUFBVSxzQ0FBQTtFQUM3QyxZQUFZLElBQUksUUFBVSxRQUFVLHNDQUFBO0VBQ3BDLFlBQVksSUFBSSxRQUFVLFFBQVUsc0NBQUE7QUFDdEMsQ0FBQTtBQ3pDQSxJQUFJLGtDQUFZLElBQUksT0FBUztFQUMzQixRQUFRO0VBQ1IsUUFBUTtFQUNSLFFBQVE7QUFDVixDQUFBO0FBRUEsSUFBSSx1Q0FBaUIsSUFBSSxPQUFTO0VBQ2hDLFVBQWdCLElBQUksU0FBVyxRQUFVLENBQUE7RUFDekMsYUFBZ0I7RUFDaEIsV0FBZ0IsSUFBSSxRQUFTLGFBQUE7QUFDL0IsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixXQUFpQjtFQUNqQixXQUFpQjtFQUNqQixRQUFpQjtFQUNqQixZQUFpQixJQUFJLE9BQVEsaUNBQVcsV0FBQTtFQUN4QyxpQkFBaUIsSUFBSSxPQUFRLHNDQUFnQixXQUFBO0FBQy9DLENBQUE7QUNsQkEsSUFBSSxrQ0FBWSxJQUFJLE9BQVM7RUFDM0IsY0FBb0I7RUFDcEIsbUJBQW9CLElBQUksU0FBVyxRQUFVO0lBQzNDO0lBQWE7SUFDYjtJQUFzQjs7R0FDdkI7QUFDSCxDQUFBO0lBRUEsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLFNBQVk7RUFDWixXQUFZO0VBQ1osWUFBWSxJQUFJLE9BQVEsaUNBQVcsV0FBQTs7QUFDckMsQ0FBQTtBQ1pBLElBQUkscUNBQWUsSUFBSSxPQUFTO0VBQzlCLFdBQWdCO0VBQ2hCLGNBQWdCO0VBQ2hCLFFBQWdCLElBQUksT0FBUSxPQUFTLENBQUEsTUFBSyxFQUFFLE9BQU8sT0FBTyxLQUFLLFNBQVM7QUFDMUUsQ0FBQTtJQUdBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFvQjtFQUNwQixZQUFvQjtFQUNwQixrQkFBb0I7RUFDcEIsU0FBb0IsSUFBSSxPQUFRLG9DQUFjLFlBQUE7QUFDaEQsQ0FBQTtBQ1pBLElBQUksaUNBQVcsSUFBSSxPQUFTO0VBQzFCLE1BQVE7RUFDUixPQUFRO0VBQ1IsT0FBUTtBQUNWLENBQUE7QUFFQSxJQUFJLG1DQUFhLElBQUksT0FBUztFQUM1QixZQUFZO0VBQ1osU0FBUztFQUNULFNBQVMsSUFBSSxPQUFRLFFBQVUsU0FBQTtFQUMvQixLQUFLLENBQUEsTUFBSyxFQUFFLFFBQVEsVUFBVSxLQUFLLElBQUksTUFBTSxNQUFNLEVBQUUsT0FBTztBQUM5RCxDQUFBO0FBRUEsSUFBSSxtQ0FBYSxJQUFJLE9BQVM7RUFDNUIsS0FBSyxDQUFBLE1BQUssRUFBRSxlQUFlLEVBQUUsT0FBTyxPQUFPO0VBQzNDLEtBQUssQ0FBQSxRQUFRLEVBQUUsT0FBTyxVQUFVLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxXQUFZLE1BQU0sRUFBRSxPQUFPLFdBQVc7RUFDOUYsUUFBUSxJQUFJLFVBQVksT0FBUyxLQUFBO0FBQ25DLENBQUE7QUFFQSxJQUFJLHFDQUFlLElBQUksZ0JBQWtCLFVBQVU7RUFDakQsR0FBRztJQUNELFFBQWdCO0lBQ2hCLGFBQWdCO0lBQ2hCLGVBQWdCO0lBQ2hCLFlBQWdCO0lBQ2hCLE9BQWdCLElBQUksT0FBUSxnQ0FBVSxRQUFBO0VBQ3hDO0VBRUEsR0FBRztJQUNELFVBQVk7SUFDWixXQUFZLElBQUksUUFBVSxRQUFVLGtDQUFZO01BQUMsTUFBTTtJQUFRLENBQUE7SUFDL0QsWUFBWSxJQUFJLFFBQVUsUUFBVSxrQ0FBWTtNQUFDLE1BQU07SUFBUSxDQUFBO0lBQy9ELE9BQVksSUFBSSxRQUFVLFFBQVUsa0NBQVk7TUFBQyxNQUFNO0lBQVEsQ0FBQTtFQUNqRTtFQUVBLEdBQUc7SUFDRCxZQUFrQjtJQUNsQixnQkFBa0I7SUFDbEIsZ0JBQWtCO0lBQ2xCLGlCQUFrQjtJQUNsQixPQUFrQjtJQUNsQixXQUFrQixJQUFJLE9BQVEsT0FBUyxnQkFBQTtJQUN2QyxXQUFrQixJQUFJLE9BQVEsT0FBUyxZQUFBO0lBQ3ZDLFlBQWtCLElBQUksT0FBUSxPQUFTLFlBQUE7SUFDdkMsV0FBa0IsSUFBSSxPQUFRLE9BQVMsQ0FBQSxNQUFLLEVBQUUsaUJBQWlCLEVBQUUsZUFBZTtFQUNsRjtBQUNGLENBQUE7QUFFQSxJQUFJLGtDQUFZLElBQUksZ0JBQWtCLFdBQVc7RUFDL0MsR0FBRztJQUNELFlBQVk7SUFDWixRQUFZO0lBQ1osUUFBWTtJQUNaLFVBQVksSUFBSSxTQUFXLE9BQVM7TUFDbEM7TUFDQTtNQUNBO01BQ0E7O0tBQ0Q7SUFDRCxVQUFZO0lBQ1osU0FBUyxJQUFJLFNBQVcsT0FBUyxDQUFBLE1BQUssRUFBRSxTQUFTLEVBQUUsY0FBYztFQUNuRTtFQUNBLEdBQUc7SUFDRCxRQUFZO0lBQ1osVUFBWSxJQUFJLFNBQVcsT0FBUztNQUNsQztNQUFNO01BQU07TUFBTTtNQUFNO01BQ3hCO01BQ0E7TUFDQTs7S0FDRDtJQUNELFFBQVk7SUFDWixZQUFZO0lBQ1osVUFBWTtJQUNaLFNBQVMsSUFBSSxTQUFXLE9BQVMsQ0FBQSxNQUFLLEVBQUUsU0FBUyxFQUFFLGNBQWM7RUFDbkU7QUFDRixDQUFBO0lBRUEsMkNBQWUsSUFBSSxnQkFBa0IsUUFBVTtFQUM3QyxHQUFHO0lBQ0QsU0FBWTtJQUNaLFFBQVksSUFBSSxPQUFRLGlDQUFXLFNBQUE7RUFDckM7RUFFQSxHQUFHO0lBQ0QsVUFBWSxJQUFJLFNBQVcsTUFBQTtJQUMzQixTQUFZO0lBQ1osUUFBWSxJQUFJLE9BQVEsaUNBQVcsU0FBQTtFQUNyQztBQUNGLENBQUE7SUNyRkEsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLFNBQVk7RUFDWixXQUFZO0VBQ1osT0FBWSxJQUFJLE9BQVEsT0FBUyxXQUFBO0FBQ25DLENBQUE7SUNMQSwyQ0FBZSxJQUFJLE9BQVM7RUFDMUIsU0FBc0I7RUFDdEIsWUFBc0I7RUFDdEIsT0FBc0I7RUFDdEIsU0FBc0I7RUFDdEIsT0FBc0I7RUFDdEIsWUFBc0I7RUFDdEIsV0FBc0I7RUFDdEIsV0FBc0I7RUFDdEIsVUFBc0IsSUFBSSxRQUFTLEVBQUE7RUFDbkMscUJBQXNCLElBQUksUUFBUyxDQUFBO0VBQ25DLFVBQXNCLElBQUksUUFBUyxDQUFBO0VBQ25DLGNBQXNCLElBQUksUUFBUyxDQUFBO0VBQ25DLFdBQXNCLElBQUksUUFBUyxDQUFBO0VBQ25DLFlBQXNCO0VBQ3RCLFVBQXNCLElBQUksU0FBVyxLQUFBO0FBQ3ZDLENBQUE7QUNmQSxJQUFJLDhCQUFRLElBQUksT0FBUztFQUN2QixVQUFnQjtFQUNoQixRQUFnQjtFQUNoQixhQUFnQjtFQUNoQixXQUFnQjs7QUFDbEIsQ0FBQTtBQUVBLElBQUksK0JBQVMsSUFBSSxPQUFTO0VBQ3hCLFlBQWdCO0VBQ2hCLE1BQWdCO0VBQ2hCLE1BQWdCOztBQUNsQixDQUFBO0FBRUEsSUFBSSxrQ0FBWSxJQUFJLE9BQVM7RUFDM0IsTUFBZ0I7RUFDaEIsU0FBZ0I7RUFDaEIsT0FBZ0I7RUFDaEIsU0FBZ0IsSUFBSSxPQUFRLDhCQUFRLE1BQUE7O0FBQ3RDLENBQUE7SUFFQSwyQ0FBZSxJQUFJLE9BQVM7RUFDMUIsU0FBZ0I7RUFDaEIsU0FBZ0I7RUFDaEIsV0FBZ0I7RUFDaEIsYUFBZ0IsSUFBSSxPQUFRLDZCQUFPLFdBQUE7RUFDbkMsU0FBZ0IsSUFBSSxPQUFRLFFBQVUsV0FBQTtFQUN0QyxRQUFnQixJQUFJLE9BQVEsaUNBQVcsU0FBQTs7QUFDekMsQ0FBQTtJQzdCQSwyQ0FBZSxJQUFJLE9BQVM7RUFDMUIsU0FBd0I7RUFDeEIsUUFBd0I7RUFDeEIsU0FBd0I7RUFDeEIsU0FBd0I7RUFDeEIsa0JBQXdCO0VBQ3hCLG1CQUF3QjtFQUN4QixzQkFBd0I7RUFDeEIsWUFBd0I7RUFDeEIsZ0JBQXdCO0VBQ3hCLGVBQXdCO0VBQ3hCLGFBQXdCO0VBQ3hCLFVBQXdCLElBQUksU0FBVyxPQUFTLENBQUE7RUFDaEQsa0JBQXdCO0VBQ3hCLGlCQUF3Qjs7QUFDMUIsQ0FBQTtBQ2hCQSxJQUFJLGtDQUFZLElBQUksT0FBUztFQUMzQixTQUFTO0VBQ1QsU0FBUzs7QUFDWCxDQUFBO0lBR0EsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLFNBQVUsSUFBSSxVQUFZLGlDQUFXLENBQUEsTUFBSyxFQUFFLE9BQU8sS0FBSyxlQUFlO0VBQ3ZFLFVBQVUsSUFBSSxVQUFZLE9BQVMsQ0FBQSxNQUFLLEVBQUUsT0FBTyxLQUFLLFlBQVksRUFBRSxPQUFPLEtBQUssZUFBZTtBQUNqRyxDQUFBO0FDVEEsSUFBSSxrQ0FBWSxJQUFJLE1BQVEsSUFBSSxNQUFNLEVBQUE7QUFFdEMsSUFBSSx1Q0FBaUIsSUFBSSxPQUFTO0VBQ2hDLFdBQVc7RUFDWCxTQUFTO0FBQ1gsQ0FBQTtBQUVBLElBQUksZ0NBQVUsSUFBSSxPQUFTO0VBQ3pCLFdBQVc7RUFDWCxnQkFBZ0IsSUFBSSxPQUFRLHNDQUFnQixXQUFBO0FBQzlDLENBQUE7SUFFQSwyQ0FBZSxJQUFJLE9BQVM7RUFDMUIsU0FBUztFQUNULFdBQVc7RUFDWCxTQUFTLElBQUksT0FBUSwrQkFBUyxXQUFBO0FBQ2hDLENBQUE7QUVoQkEsSUFBTSwrQ0FBTixNQUFNO0VBU0osUUFBUSxPQUFPO0FBQ2IsUUFBSSxLQUFLLE9BQU8sS0FBQSxLQUFVLE1BQU07QUFDOUIsVUFBSSxNQUFNLEtBQUssT0FBTztBQUN0QixXQUFLLE9BQU8sTUFBTSxLQUFLLE9BQU8sS0FBSyxLQUFLLEtBQUssTUFBTSxLQUFLLE1BQU0sSUFBSTtBQUNsRSxXQUFLLE9BQU8sS0FBQSxJQUFTLEtBQUssS0FBSyxPQUFPLEtBQUssUUFBUSxLQUFLLE1BQU07QUFDOUQsV0FBSyxPQUFPLE1BQU07SUFDcEI7QUFFQSxXQUFPLEtBQUssT0FBTyxLQUFBO0VBQ3JCO0VBRUEsVUFBVTtBQUNSLFdBQU8sbUJBQW1CLEtBQUssS0FBSyxZQUFZLElBQUk7RUFDdEQ7RUFyQkEsWUFBWSxNQUFNLFFBQVEsUUFBUTtBQUNoQyxTQUFLLE9BQU87QUFDWixTQUFLLFNBQVM7QUFDZCxTQUFLLFNBQVM7QUFDZCxTQUFLLE9BQU8sS0FBSyxPQUFPO0FBQ3hCLFNBQUssU0FBUyxDQUFBO0VBQ2hCO0FBZ0JGO0FBRU8sSUFBTSw0Q0FBTixjQUE2QixPQUFBO0VBS2xDLE9BQU8sUUFBUSxRQUFRO0FBQ3JCLFdBQU8sSUFBSSw2Q0FBdUIsS0FBSyxNQUFNLFFBQVEsTUFBQTtFQUN2RDtFQU5BLFlBQVksTUFBTTtBQUNoQixVQUFNLE1BQU0sQ0FBQTtFQUNkO0FBS0Y7QUFFTyxJQUFJLDRDQUFjLFNBQVMsWUFBWSxRQUFRO0VBRXBELE1BQU0sT0FBQTtJQUtKLE9BQU8sUUFBUSxLQUFLO0FBQ2xCLFlBQU0sSUFBSSxPQUFPO0FBQ2pCLGFBQU8sS0FBSyxLQUFLLE9BQU8sUUFBUSxHQUFBO0lBQ2xDO0lBRUEsS0FBSyxLQUFLLEtBQUs7QUFDYixZQUFNLElBQUksT0FBTztBQUNqQixhQUFPLEtBQUssS0FBSyxLQUFLLEtBQUssR0FBQTtJQUM3QjtJQUVBLE9BQU8sUUFBUSxLQUFLLEtBQUs7QUFDdkIsWUFBTSxJQUFJLE9BQU87QUFDakIsYUFBTyxLQUFLLEtBQUssT0FBTyxRQUFRLEtBQUssR0FBQTtJQUN2QztJQWpCQSxZQUFZLE1BQU07QUFDaEIsV0FBSyxPQUFPO0lBQ2Q7RUFnQkY7QUFFQSxjQUFZLElBQUksT0FBTyxTQUFBO0FBRXZCLE1BQUkscUJBQXFCLElBQUksT0FBUztJQUNwQyxVQUFVO0lBQ1YsUUFBUTtJQUNSLGFBQWE7SUFDYixlQUFlO0lBQ2YsWUFBWTtFQUNkLENBQUE7QUFFQSxNQUFJLHNCQUFzQixJQUFJLE9BQVM7SUFDckMsV0FBVztJQUNYLFlBQVk7SUFDWixPQUFPO0VBQ1QsQ0FBQTtBQUVBLE1BQUkscUJBQXFCLElBQUksT0FBUztJQUNwQyxXQUFXO0lBQ1gsWUFBWTtJQUNaLFFBQVEsSUFBSSxRQUFVLFFBQVUsSUFBSSxPQUFRLFdBQVcsQ0FBQSxNQUFLLEVBQUUsWUFBWSxFQUFFLGFBQWEsQ0FBQSxHQUFJO01BQUMsTUFBTTtJQUFRLENBQUE7RUFDOUcsQ0FBQTtBQUVBLE1BQUksZUFBZSxJQUFJLE9BQVM7SUFDOUIsT0FBTztJQUNQLE9BQU87RUFDVCxDQUFBO0FBRUEsU0FBTyxJQUFJLGdCQUFrQixRQUFVO0lBQ3JDLEdBQUc7TUFDRCxRQUFRLElBQUksMENBQWUsU0FBQTs7SUFDN0I7SUFDQSxHQUFHO01BQ0Qsb0JBQW9CO01BQ3BCLFVBQVUsSUFBSSxPQUFRLHFCQUFxQixDQUFBLE1BQUssRUFBRSxtQkFBbUIsTUFBTTtJQUM3RTtJQUNBLEdBQUc7TUFDRCxvQkFBb0I7TUFDcEIsVUFBVSxJQUFJLE9BQVEsb0JBQW9CLENBQUEsTUFBSyxFQUFFLG1CQUFtQixNQUFNO0lBQzVFO0lBQ0EsR0FBRztNQUNELG9CQUFvQjtNQUNwQixVQUFVLElBQUksT0FBUSxjQUFjLENBQUEsTUFBSyxFQUFFLG1CQUFtQixNQUFNO0lBQ3RFO0lBQ0EsR0FBRztNQUNELFlBQVk7TUFDWixPQUFPO01BQ1AsUUFBUSxJQUFJLE9BQVEsV0FBVyxPQUFBO0lBQ2pDO0VBQ0YsQ0FBQTtBQUNGO0FBRU8sU0FBUywwQ0FBVyxZQUFZLENBQUMsR0FBRyxhQUFhLFFBQVE7QUFDOUQsTUFBSSxRQUFRLE9BQU8sT0FBTztJQUN4QixVQUFVO0lBQ1YsT0FBTztFQUNULEdBQUcsU0FBQTtBQUVILE1BQUksUUFBUSxJQUFJLE9BQVMsS0FBQTtBQUN6QixNQUFJLGFBQWEsSUFBSSwwQ0FBZSxJQUFJLE9BQVEsUUFBVSxDQUFBLE1BQUssRUFBRSxRQUFRLENBQUE7QUFFekUsTUFBSSxjQUFjLElBQUksT0FBUztJQUM3QixVQUFVO0lBQ1YsWUFBWSxJQUFJLFFBQVUsUUFBVSxJQUFJLDBDQUFZLFVBQUEsQ0FBQTtJQUNwRCxZQUFZLElBQUksUUFBVSxRQUFVLFVBQUE7SUFDcEMsWUFBWSxJQUFJLFFBQVUsUUFBVSxJQUFJLDBDQUFlLEtBQUEsQ0FBQTtFQUN6RCxDQUFBO0FBRUEsU0FBTztBQUNUO0FBR08sU0FBUywwQ0FBWSxZQUFZLENBQUMsR0FBRyxhQUFhLFFBQVE7QUFDL0QsTUFBSSxtQkFBbUIsSUFBSSxPQUFTO0lBQ2xDLFVBQUE7QUFBWSxhQUFPO0lBQUc7SUFDdEIsWUFBWTtJQUNaLFFBQVEsSUFBSSxPQUFRLE9BQVMsTUFBQTtFQUMvQixDQUFBO0FBRUEsTUFBSSxRQUFRLE9BQU8sT0FBTztJQUN4QixnQkFBZ0I7O0lBRWhCLFVBQVUsQ0FBQSxPQUFNLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxXQUFXLE9BQU8sRUFBRSxPQUFPLGlCQUFpQixFQUFFLE9BQU87SUFDbEcsT0FBTztFQUNULEdBQUcsU0FBQTtBQUVILE1BQUksUUFBUSxJQUFJLE9BQVMsS0FBQTtBQUN6QixNQUFJLGFBQWEsSUFBSSwwQ0FBZSxJQUFJLE9BQVEsT0FBUyxDQUFBLE1BQUssRUFBRSxRQUFRLENBQUE7QUFFeEUsTUFBSSxlQUFlLElBQUksT0FBUztJQUM5QixVQUFVO0lBQ1YsWUFBWSxJQUFJLFFBQVUsUUFBVSxnQkFBQTtJQUNwQyxZQUFZLElBQUksUUFBVSxRQUFVLFVBQUE7SUFDcEMsWUFBWSxJQUFJLFFBQVUsUUFBVSxJQUFJLDBDQUFlLEtBQUEsQ0FBQTtFQUN6RCxDQUFBO0FBRUEsU0FBTztBQUNUO0FEekpBLElBQUkscUNBQWUsSUFBSSxnQkFBa0IsVUFBVTtFQUNqRCxHQUFHO0lBQ0QsUUFBUSxJQUFJLE9BQVEsT0FBUyxFQUFBO0VBQy9CO0VBRUEsR0FBRztJQUNELFFBQVEsSUFBSSxPQUFRLE9BQVMsRUFBQTtJQUM3QixhQUFhLEtBQUksR0FBQSwyQ0FBWSxNQUFBO0VBQy9CO0VBRUEsR0FBRztJQUNELGVBQWU7SUFDZixlQUFlLElBQUksT0FBUSxRQUFVLEVBQUE7RUFDdkM7RUFFQSxHQUFHO0lBQ0QsZUFBZTtJQUNmLGVBQWUsSUFBSSxPQUFRLFFBQVUsRUFBQTtJQUNyQyxhQUFhLEtBQUksR0FBQSwyQ0FBWSxNQUFBO0VBQy9CO0FBQ0YsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFTO0VBQ1QsUUFBUTtFQUNSLGlCQUFpQjtFQUNqQixVQUFVO0FBQ1osQ0FBQTtBRTVCQSxJQUFJLGdDQUFVLElBQUksT0FBUztFQUN6QixTQUFTO0VBQ1QsV0FBVztFQUNYLE1BQU0sQ0FBQSxNQUFLLEVBQUUsT0FBTyxPQUFPLE9BQU8sS0FBSyxRQUFRLGFBQWEsRUFBRSxTQUFTO0FBQ3pFLENBQUE7QUFFQSxJQUFJLG9DQUFjLElBQUksT0FBUztFQUM3QixTQUFTO0VBQ1QsV0FBVztFQUNYLGNBQWMsSUFBSSxRQUFVLFFBQVUsSUFBSSxPQUFRLCtCQUFTLFdBQUEsR0FBYztJQUFFLE1BQU07RUFBUyxDQUFBO0VBQzFGLGNBQWMsSUFBSSxTQUFXLE9BQVM7SUFDcEM7SUFBTTtJQUFNO0lBQU07SUFBTTtJQUFNO0lBQzlCO0lBQWM7R0FDZjtFQUNELGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsTUFBTSxDQUFBLE1BQUssRUFBRSxPQUFPLE9BQU8sS0FBSyxRQUFRLGFBQWEsRUFBRSxTQUFTO0FBQ2xFLENBQUE7SUFFQSwyQ0FBZSxJQUFJLE9BQVM7RUFDMUIsU0FBUztFQUNULGtCQUFrQjtFQUNsQixXQUFXLElBQUksU0FBVyxNQUFBO0VBQzFCLFdBQVcsSUFBSSxTQUFXLE1BQUE7RUFDMUIsY0FBYyxJQUFJLE9BQVEsbUNBQWEsa0JBQUE7QUFDekMsQ0FBQTtBQ3pCQSxJQUFJLDZCQUFPLElBQUksT0FBUztFQUN0QixTQUFTLElBQUksUUFBUyxDQUFBO0VBQ3RCLFVBQVU7RUFDVixjQUFjO0VBQ2QsVUFBVTtFQUNWLE9BQU87RUFDUCxRQUFRO0VBQ1IsTUFBTSxDQUFBLE1BQUssRUFBRSxPQUFPLE9BQU8sS0FBSyxRQUFRLGFBQWEsRUFBRSxNQUFNO0FBQy9ELENBQUE7QUFFQSxJQUFJLGlDQUFXLElBQUksT0FBUztFQUMxQixRQUFRO0VBQ1IsTUFBTSxDQUFBLE1BQUssRUFBRSxPQUFPLE9BQU8sS0FBSyxRQUFRLGFBQWEsRUFBRSxNQUFNO0VBQzdELE9BQU87RUFDUCxPQUFPLElBQUksT0FBUSxTQUFXLENBQUEsTUFBSyxFQUFFLE9BQU8sU0FBUztFQUNyRCxrQkFBa0IsSUFBSSxTQUFXLFFBQVUsQ0FBQSxNQUFLLEVBQUUsT0FBTyxlQUFlLEVBQUUsaUJBQWlCLENBQUE7QUFDN0YsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFTO0VBQ1QsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsVUFBVTtFQUNWLGVBQWU7RUFDZixjQUFjO0VBQ2QsTUFBTSxJQUFJLE9BQVEsNEJBQU0sV0FBQTtFQUN4QixVQUFVLElBQUksT0FBUSxnQ0FBVSxlQUFBO0FBQ2xDLENBQUE7QUM1QkEsSUFBSSxrQ0FBWSxJQUFJLE1BQVEsSUFBSSxNQUFNLEVBQUE7QUFDdEMsSUFBTSwrQkFBTixNQUFNO0VBQ0osT0FBTyxPQUFPLFFBQVEsUUFBUTtBQUk1QixXQUFPLE9BQU8sUUFDVixPQUFPLGFBQVksSUFDbkIsT0FBTyxhQUFZLElBQUs7RUFDOUI7QUFDRjtBQUVBLElBQUksNkJBQU8sSUFBSSxPQUFTO0VBQ3RCLFNBQVM7RUFDVCxVQUFVLElBQUksU0FBVyxNQUFBO0VBQ3pCLFdBQVc7RUFDWCxrQkFBa0I7RUFDbEIsY0FBYyxJQUFJLFFBQVUsUUFBVSxJQUFJLE9BQVEsSUFBSSxPQUFRLGlDQUFXLFdBQUEsR0FBYyxrQkFBQSxDQUFBO0VBQ3ZGLFlBQVk7RUFDWixPQUFPO0VBQ1AsY0FBYztFQUNkLFNBQVMsSUFBSSxPQUFRLElBQUksUUFBVSw4QkFBUSxRQUFRO0lBQUUsWUFBWSxDQUFBLFFBQU8sSUFBSTtJQUFjLFdBQVc7RUFBTSxDQUFBLEdBQUksQ0FBQSxNQUFLLEVBQUUsYUFBYSxDQUFBO0FBQ3JJLENBQUE7SUFFQSwyQ0FBZTtBQ3ZCZixJQUFJLG1DQUFhLElBQUksT0FBUztFQUM1QixRQUFRO0VBQ1IsVUFBVTtFQUNWLGlCQUFpQjtFQUNqQixZQUFZLEtBQUksR0FBQTtBQUNsQixDQUFBO0FBRUEsSUFBSSx5Q0FBbUIsSUFBSSxPQUFTO0VBQ2xDLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGFBQWE7QUFDZixDQUFBO0FBRUEsSUFBSSwwQ0FBb0IsSUFBSSxPQUFRLHdDQUFrQixNQUFBO0FBRXRELElBQUksbUNBQWEsSUFBSSxnQkFBa0IsY0FBYztFQUNuRCxHQUFHO0lBQ0QsWUFBWTtJQUNaLFlBQVk7SUFDWixPQUFPO0lBQ1AsUUFBUSxJQUFJLE9BQVEsUUFBVSxNQUFBO0VBQ2hDO0VBRUEsR0FBRztJQUNELFVBQVU7RUFDWjtFQUVBLEdBQUc7SUFDRCxnQkFBZ0I7SUFDaEIsVUFBVTtJQUNWLFlBQVk7RUFDZDtFQUVBLEdBQUcsQ0FBQztFQUVKLEdBQUc7SUFDRCxlQUFlO0lBQ2YsY0FBYztJQUNkLGdCQUFnQjtJQUNoQixjQUFjO0VBQ2hCO0VBRUEsR0FBRztJQUNELE9BQU87SUFDUCxPQUFPO0VBQ1Q7QUFDRixDQUFBO0FBRUEsSUFBSSwrQkFBUyxJQUFJLE9BQVM7RUFDeEIsYUFBYTtFQUNiLFlBQVk7RUFDWixjQUFjO0VBQ2QsWUFBWTtFQUNaLFNBQVMsSUFBSSxTQUFXLE9BQVMsQ0FBQSxNQUFLLEVBQUUsZUFBZSxFQUFFLGNBQWM7QUFDekUsQ0FBQTtBQUVBLElBQUksK0NBQXlCLElBQUksT0FBUSw4QkFBUSxNQUFBO0FBQ2pELElBQUksOENBQXdCLElBQUksT0FBUztFQUN2QyxhQUFhLEtBQUksR0FBQSwyQ0FBWSxJQUFJLFFBQVUsUUFBVSw0Q0FBQSxDQUFBO0FBQ3ZELENBQUE7QUFFQSxJQUFJLDJDQUFxQixJQUFJLE9BQVM7RUFDcEMsWUFBWSxJQUFJLFFBQVUsUUFBVSxrQ0FBWTtJQUFFLE1BQU07RUFBUyxDQUFBO0VBQ2pFLFdBQVc7RUFDWCx1QkFBdUIsSUFBSSxRQUFVLFFBQVUsNkNBQXVCO0lBQUUsTUFBTTtFQUFTLENBQUE7RUFDdkYsb0JBQW9CLEtBQUksR0FBQSwyQ0FBWSxJQUFJLFFBQVUsUUFBVSx5Q0FBbUI7SUFBRSxNQUFNO0lBQVUsWUFBWSxDQUFBLFFBQU8sSUFBSTtFQUFVLENBQUEsQ0FBQTtBQUNwSSxDQUFBO0lBRUEsMkNBQWUsSUFBSSxPQUFTO0VBQzFCLFNBQVM7RUFDVCxRQUFRO0VBQ1IsWUFBWSxJQUFJLFFBQVUsUUFBVSx3Q0FBQTtFQUNwQyxVQUFVLElBQUksUUFBVSxRQUFVLHdDQUFBO0FBQ3BDLENBQUE7QUM3RUEsSUFBSSxxQ0FBZTtFQUNqQixRQUFRO0FBQ1Y7QUFFQSxJQUFJLHVDQUFpQjtFQUNuQixXQUFXO0VBQ1gsY0FBYztBQUNoQjtBQUVBLElBQUksc0NBQWdCO0VBQ2xCLG9CQUFvQjtFQUNwQixtQkFBbUI7QUFDckI7QUFFQSxJQUFJLDBDQUFvQixJQUFJLE9BQVM7RUFDbkMsT0FBTyxLQUFJLEdBQUEsMkNBQWUsSUFBSSxRQUFVLFFBQVUsS0FBSSxHQUFBLDRDQUFVLENBQUE7QUFDbEUsQ0FBQTtBQUVBLElBQUkscUNBQWUsSUFBSSxnQkFBa0IsUUFBUTtFQUMvQyxHQUFHO0lBQ0QsWUFBWSxLQUFJLEdBQUE7RUFDbEI7RUFFQSxHQUFHO0lBQ0QsWUFBWSxLQUFJLEdBQUEsMkNBQVcsb0NBQUE7SUFDM0IsbUJBQW1CLElBQUksUUFBVSxRQUFVLHVDQUFBO0VBQzdDO0VBRUEsR0FBRztJQUNELFlBQVksS0FBSSxHQUFBLDJDQUFXLGtDQUFBO0lBQzNCLGlCQUFpQixJQUFJLFFBQVUsUUFBVSxLQUFJLEdBQUEsMkNBQWUsTUFBQSxDQUFBO0lBQzVELFlBQVksSUFBSSxRQUFVLFFBQVUsS0FBSSxHQUFBLDJDQUFlLE1BQUEsQ0FBQTtJQUN2RCxjQUFjLElBQUksUUFBVSxRQUFVLEtBQUksR0FBQSwyQ0FBZSxNQUFBLENBQUE7RUFDM0Q7RUFFQSxHQUFHO0lBQ0QsYUFBYSxLQUFJLEdBQUE7RUFDbkI7RUFFQSxHQUFHO0lBQ0QsWUFBWSxLQUFJLEdBQUEsMkNBQVcsbUNBQUE7SUFDM0Isa0JBQWtCLElBQUksUUFBVSxRQUFVLEtBQUksR0FBQSwyQ0FBZSxNQUFBLENBQUE7RUFDL0Q7QUFDRixDQUFBO0FBRUEsSUFBSSxpQ0FBVyxJQUFJLE9BQVM7RUFDMUIsUUFBUTtFQUNSLFVBQVU7RUFDVixNQUFNO0VBQ04saUJBQWlCO0VBQ2pCLE9BQU87RUFDUCxTQUFTLElBQUksU0FBVyxPQUFTLENBQUEsTUFBSyxFQUFFLFNBQVMsRUFBRSxjQUFjO0FBQ25FLENBQUE7QUFFQSxJQUFJLHFDQUFlLElBQUksT0FBUztFQUM5QixhQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsYUFBZ0I7RUFDaEIsY0FBZ0I7QUFDbEIsQ0FBQTtBQUVBLElBQUksa0NBQVksSUFBSSxPQUFTO0VBQzNCLGNBQWtCO0VBQ2xCLGFBQWtCO0VBQ2xCLGlCQUFrQjtFQUNsQixZQUFrQjtFQUNsQixVQUFrQixJQUFJLE9BQVEsb0NBQWMsaUJBQUE7RUFDNUMsV0FBa0IsSUFBSSxPQUFRLGdDQUFVLFlBQUE7QUFDMUMsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFVO0VBQ1YsUUFBVSxJQUFJLFNBQVcsTUFBQTtFQUN6QixTQUFVO0VBQ1YsUUFBVSxJQUFJLE9BQVEsaUNBQVcsU0FBQTtBQUNuQyxDQUFBO0FDM0VBLElBQUksc0NBQWdCLElBQUksT0FBUztFQUMvQixNQUFNO0VBQ04sS0FBSztFQUNMLE9BQU87RUFDUCxRQUFRO0FBQ1YsQ0FBQTtJQUVBLDJDQUFlLElBQUksT0FBUztFQUMxQixTQUFTO0VBQ1QsUUFBUTtFQUNSLGFBQWEsS0FBSSxHQUFBLDJDQUFZLG1DQUFBO0FBQy9CLENBQUE7QXhEZEEsSUFBSSwrQkFBUyxDQUFDO0lBQ2QsMkNBQWU7QUFZZiw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxNQUFBLEtBQVUsR0FBQTtBQUNqQiw2QkFBTyxRQUFPLEdBQUE7QUFVZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxNQUFBLEtBQVUsR0FBQTtBQUNqQiw2QkFBTyxRQUFPLEdBQUE7QUFPZCw2QkFBTyxNQUFBLEtBQVUsR0FBQTtBQUNqQiw2QkFBTyxNQUFBLEtBQVUsR0FBQTtBQUNqQiw2QkFBTyxRQUFPLEdBQUE7QUFTZCw2QkFBTyxRQUFPLEdBQUE7QUFDZCw2QkFBTyxPQUFPLDZCQUFPO0FBQ3JCLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQVVkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUtkLDZCQUFPLFFBQU8sR0FBQTtBQWFkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQWFkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBQUNkLDZCQUFPLFFBQU8sR0FBQTtBRGpIZCxJQUFJLG1DQUFhLElBQUksT0FBUztFQUM1QixLQUFZLElBQUksUUFBUyxDQUFBO0VBQ3pCLFVBQVk7RUFDWixRQUFZLElBQUksUUFBVSxRQUFVLFFBQVE7SUFBRSxNQUFNO0VBQVMsQ0FBQTtFQUM3RCxRQUFZO0FBQ2QsQ0FBQTtBQUVBLElBQUksa0NBQVksSUFBSSxPQUFTO0VBQzNCLEtBQWdCLElBQUksUUFBUyxDQUFBO0VBQzdCLFdBQWdCO0VBQ2hCLGFBQWdCO0VBQ2hCLGVBQWdCO0VBQ2hCLFlBQWdCO0VBQ2hCLFFBQWdCLElBQUksT0FBUSxrQ0FBWSxXQUFBO0FBQzFDLENBQUE7QUFFQSxnQ0FBVSxVQUFVLFdBQUE7QUFDbEIsTUFBSSxTQUFTLENBQUM7QUFDZCxXQUFTLFNBQVMsS0FBSyxPQUNyQixRQUFPLE1BQU0sR0FBRyxJQUFJO0FBR3RCLE9BQUssU0FBUztBQUNoQjtBQUVBLGdDQUFVLFlBQVksV0FBQTtBQUNwQixNQUFJLENBQUMsTUFBTSxRQUFRLEtBQUssTUFBTSxHQUFHO0FBQy9CLFFBQUksU0FBUyxDQUFBO0FBQ2IsYUFBU0ksUUFBTyxLQUFLLFFBQVE7QUFDM0IsVUFBSSxRQUFRLEtBQUssT0FBT0EsSUFBQTtBQUN4QixVQUFJLE1BQ0YsUUFBTyxLQUFLO1FBQ1YsS0FBS0E7UUFDTCxVQUFVO1FBQ1YsUUFBUSxJQUFJLGFBQWMsR0FBQSwwQ0FBT0EsSUFBQSxHQUFNLEtBQUE7UUFDdkMsU0FBUSxHQUFBLDBDQUFPQSxJQUFBLEVBQUssS0FBSyxLQUFBO01BQzNCLENBQUE7SUFFSjtBQUVBLFNBQUssU0FBUztFQUNoQjtBQUVBLE9BQUssTUFBTTtBQUNYLE9BQUssWUFBWSxLQUFLLE9BQU87QUFFN0IsTUFBSSxrQkFBa0IsS0FBSyxNQUFPLEtBQUssSUFBSSxLQUFLLFNBQVMsSUFBSSxLQUFLLEdBQUc7QUFDckUsTUFBSSxjQUFjLEtBQUssSUFBSSxHQUFHLGVBQUE7QUFFOUIsT0FBSyxjQUFlLGNBQWM7QUFDbEMsT0FBSyxnQkFBZ0IsS0FBSyxJQUFJLFdBQUEsSUFBZSxLQUFLO0FBQ2xELE9BQUssYUFBYSxLQUFLLFlBQVksS0FBSyxLQUFLO0FBQy9DO0lBRUEsMkNBQWU7QTJEekRSLFNBQVMsMENBQWFMLE1BQUssS0FBRztBQUNuQyxNQUFJLE1BQU07QUFDVixNQUFJLE1BQU1BLEtBQUksU0FBUztBQUN2QixTQUFPLE9BQU8sS0FBSztBQUNqQixRQUFJLE1BQU8sTUFBTSxPQUFRO0FBQ3pCLFFBQUksTUFBTSxJQUFJQSxLQUFJLEdBQUEsQ0FBSTtBQUV0QixRQUFJLE1BQU0sRUFDUixPQUFNLE1BQU07YUFDSCxNQUFNLEVBQ2YsT0FBTSxNQUFNO1FBRVosUUFBTztFQUVYO0FBRUEsU0FBTztBQUNUO0FBRU8sU0FBUywwQ0FBTSxPQUFPLEtBQUc7QUFDOUIsTUFBSSxRQUFRLENBQUE7QUFDWixTQUFPLFFBQVEsSUFDYixPQUFNLEtBQUssT0FBQTtBQUViLFNBQU87QUFDVDtBQUVPLElBQU0sNENBQWUsSUFBSSxZQUFZLE9BQUE7QUFHNUMsSUFBTSw4QkFBUTtBQUNkLElBQU0sK0JBQVMsSUFBSSxXQUFXLEdBQUE7QUFDOUIsU0FBU0gsS0FBSSxHQUFHQSxLQUFJLDRCQUFNLFFBQVFBLEtBQ2hDLDhCQUFPLDRCQUFNLFdBQVdBLEVBQUEsQ0FBQSxJQUFNQTtBQUd6QixTQUFTLDBDQUFhLFFBQU07QUFDakMsTUFBSSxlQUFlLE9BQU8sU0FBUztBQUVuQyxNQUFJLE9BQU8sT0FBTyxTQUFTLENBQUEsTUFBTyxLQUFLO0FBQ3JDO0FBQ0EsUUFBSSxPQUFPLE9BQU8sU0FBUyxDQUFBLE1BQU8sSUFDaEM7RUFFSjtBQUVBLE1BQUksUUFBUSxJQUFJLFdBQVcsWUFBQTtBQUMzQixNQUFJLElBQUk7QUFFUixXQUFTQSxLQUFJLEdBQUcsTUFBTSxPQUFPLFFBQVFBLEtBQUksS0FBS0EsTUFBSyxHQUFHO0FBQ3BELFFBQUksV0FBVyw2QkFBTyxPQUFPLFdBQVdBLEVBQUEsQ0FBQTtBQUN4QyxRQUFJLFdBQVcsNkJBQU8sT0FBTyxXQUFXQSxLQUFJLENBQUEsQ0FBQTtBQUM1QyxRQUFJLFdBQVcsNkJBQU8sT0FBTyxXQUFXQSxLQUFJLENBQUEsQ0FBQTtBQUM1QyxRQUFJLFdBQVcsNkJBQU8sT0FBTyxXQUFXQSxLQUFJLENBQUEsQ0FBQTtBQUU1QyxVQUFNLEdBQUEsSUFBUSxZQUFZLElBQU0sWUFBWTtBQUM1QyxVQUFNLEdBQUEsS0FBUyxXQUFXLE9BQU8sSUFBTSxZQUFZO0FBQ25ELFVBQU0sR0FBQSxLQUFTLFdBQVcsTUFBTSxJQUFNLFdBQVc7RUFDbkQ7QUFFQSxTQUFPO0FBQ1Q7QUR4RGUsSUFBTSwyQ0FBTixNQUFNO0VBd0NuQixhQUFhLFdBQVcsT0FBTztBQUM3QixhQUFTLENBQUMsWUFBWSxVQUFBLEtBQWUsTUFDbkMsVUFBUyxRQUFRLFVBQVUsUUFBUTtBQUNqQyxVQUFJLEtBQUssZUFBZSxjQUFjLEtBQUssZUFBZSxXQUN4RCxRQUFPLEtBQUs7SUFFaEI7QUFHRixXQUFPO0VBQ1Q7RUFFQSxPQUFPLFdBQVcsbUJBQW1CO0FBR25DLFFBQUksS0FBSyxTQUNQLGFBQVksS0FBSyxTQUFTLElBQUksU0FBQSxLQUFjO2FBR25DLG1CQUFtQjtBQUM1QixVQUFJLE1BQU0sS0FBSyxxQkFBcUIsV0FBVyxpQkFBQTtBQUMvQyxVQUFJLElBQ0YsUUFBTztJQUVYO0FBRUEsUUFBSSxPQUFPLEtBQUs7QUFDaEIsWUFBUSxLQUFLLFNBQU87TUFDbEIsS0FBSztBQUNILGVBQU8sS0FBSyxRQUFRLElBQUksU0FBQSxLQUFjO01BRXhDLEtBQUssR0FBRztBQUNOLFlBQUksTUFBTTtBQUNWLFlBQUksTUFBTSxLQUFLLFdBQVc7QUFDMUIsZUFBTyxPQUFPLEtBQUs7QUFDakIsY0FBSSxNQUFPLE1BQU0sT0FBUTtBQUV6QixjQUFJLFlBQVksS0FBSyxVQUFVLElBQUksR0FBQSxFQUNqQyxPQUFNLE1BQU07bUJBQ0gsWUFBWSxLQUFLLFFBQVEsSUFBSSxHQUFBLEVBQ3RDLE9BQU0sTUFBTTtlQUNQO0FBQ0wsZ0JBQUksY0FBYyxLQUFLLGNBQWMsSUFBSSxHQUFBO0FBQ3pDLGdCQUFJO0FBRUosZ0JBQUksZ0JBQWdCLEVBQ2xCLE9BQU0sWUFBWSxLQUFLLFFBQVEsSUFBSSxHQUFBO2lCQUM5QjtBQUNMLGtCQUFJLFFBQVEsY0FBYyxLQUFLLFlBQVksS0FBSyxVQUFVLElBQUksR0FBQSxNQUFTLEtBQUssV0FBVztBQUN2RixvQkFBTSxLQUFLLGdCQUFnQixJQUFJLEtBQUEsS0FBVTtBQUN6QyxrQkFBSSxRQUFRLEVBQ1YsUUFBTyxLQUFLLFFBQVEsSUFBSSxHQUFBO1lBRTVCO0FBRUEsbUJBQU8sTUFBTTtVQUNmO1FBQ0Y7QUFFQSxlQUFPO01BQ1Q7TUFFQSxLQUFLO0FBQ0gsY0FBTSxJQUFJLE1BQU0scUJBQUE7TUFFbEIsS0FBSztNQUNMLEtBQUs7QUFDSCxlQUFPLEtBQUssYUFBYSxJQUFJLFlBQVksS0FBSyxTQUFTLEtBQUs7TUFFOUQsS0FBSztNQUNMLEtBQUssSUFBSTtBQUNQLFlBQUksTUFBTTtBQUNWLFlBQUksTUFBTSxLQUFLLFVBQVU7QUFDekIsZUFBTyxPQUFPLEtBQUs7QUFDakIsY0FBSSxNQUFPLE1BQU0sT0FBUTtBQUN6QixjQUFJLFFBQVEsS0FBSyxPQUFPLElBQUksR0FBQTtBQUU1QixjQUFJLFlBQVksTUFBTSxjQUNwQixPQUFNLE1BQU07bUJBQ0gsWUFBWSxNQUFNLFlBQzNCLE9BQU0sTUFBTTtlQUNQO0FBQ0wsZ0JBQUksS0FBSyxZQUFZLEdBQ25CLFFBQU8sTUFBTSxXQUFXLFlBQVksTUFBTTtnQkFFMUMsUUFBTyxNQUFNO1VBRWpCO1FBQ0Y7QUFFQSxlQUFPO01BQ1Q7TUFFQSxLQUFLO0FBQ0gsY0FBTSxJQUFJLE1BQU0sc0JBQUE7TUFFbEI7QUFDRSxjQUFNLElBQUksTUFBTSx1QkFBdUIsS0FBSyxPQUFPLEVBQUU7SUFDekQ7RUFDRjtFQUVBLHFCQUFxQixXQUFXLG1CQUFtQjtBQUNqRCxRQUFJLENBQUMsS0FBSyxJQUNSLFFBQU87QUFHVCxRQUFJLFlBQVksS0FBSyxJQUFJLGFBQWEsUUFBTztBQUM3QyxRQUFJQSxNQUFJLEdBQUEsMkNBQWEsV0FBVyxDQUFBUyxPQUFLLG9CQUFvQkEsR0FBRSxXQUFXO0FBQ3RFLFFBQUksTUFBTSxVQUFVVCxFQUFBO0FBRXBCLFFBQUlBLE9BQU0sTUFBTSxJQUFJLFdBQ2xCLENBQUFBLE1BQUksR0FBQSwyQ0FBYSxJQUFJLFlBQVksQ0FBQVMsT0FDL0IsWUFBWUEsR0FBRSxvQkFBb0IsS0FBSyxZQUFZQSxHQUFFLG9CQUFvQkEsR0FBRSxrQkFBa0IsSUFBSyxDQUFBO0FBSXRHLFFBQUlULE9BQU0sTUFBTSxJQUFJLGVBQWU7QUFDakMsTUFBQUEsTUFBSSxHQUFBLDJDQUFhLElBQUksZUFBZSxDQUFBUyxPQUFLLFlBQVlBLEdBQUUsWUFBWTtBQUNuRSxVQUFJVCxPQUFNLEdBQ1IsUUFBTyxJQUFJLGNBQWNBLEVBQUEsRUFBRztJQUVoQztBQUVBLFdBQU87RUFDVDtFQUdBLGtCQUFrQjtBQUNoQixRQUFJLE9BQU8sS0FBSztBQUNoQixZQUFRLEtBQUssU0FBTztNQUNsQixLQUFLO0FBQ0gsZ0JBQU8sR0FBQSwyQ0FBTSxHQUFHLEtBQUssUUFBUSxNQUFNO01BRXJDLEtBQUssR0FBRztBQUNOLFlBQUksTUFBTSxDQUFBO0FBQ1YsWUFBSSxXQUFXLEtBQUssUUFBUSxRQUFPO0FBQ25DLGlCQUFTQSxLQUFJLEdBQUdBLEtBQUksU0FBUyxRQUFRQSxNQUFLO0FBQ3hDLGNBQUksT0FBTyxTQUFTQSxFQUFBLElBQUs7QUFDekIsY0FBSSxRQUFRLEtBQUssVUFBVSxJQUFJQSxFQUFBO0FBQy9CLGNBQUksS0FBSSxJQUFJLEdBQUEsMkNBQU0sT0FBTyxJQUFBLENBQUE7UUFDM0I7QUFFQSxlQUFPO01BQ1Q7TUFFQSxLQUFLO0FBQ0gsY0FBTSxJQUFJLE1BQU0scUJBQUE7TUFFbEIsS0FBSztNQUNMLEtBQUs7QUFDSCxnQkFBTyxHQUFBLDJDQUFNLEtBQUssV0FBVyxLQUFLLFlBQVksS0FBSyxhQUFhLE1BQU07TUFFeEUsS0FBSztNQUNMLEtBQUssSUFBSTtBQUNQLFlBQUksTUFBTSxDQUFBO0FBQ1YsaUJBQVMsU0FBUyxLQUFLLE9BQU8sUUFBTyxFQUNuQyxLQUFJLEtBQUksSUFBSSxHQUFBLDJDQUFNLE1BQU0sZUFBZSxNQUFNLGNBQWMsQ0FBQSxDQUFBO0FBRzdELGVBQU87TUFDVDtNQUVBLEtBQUs7QUFDSCxjQUFNLElBQUksTUFBTSxzQkFBQTtNQUVsQjtBQUNFLGNBQU0sSUFBSSxNQUFNLHVCQUF1QixLQUFLLE9BQU8sRUFBRTtJQUN6RDtFQUNGO0VBR0EsbUJBQW1CLEtBQUs7QUFDdEIsUUFBSSxPQUFPLEtBQUs7QUFDaEIsWUFBUSxLQUFLLFNBQU87TUFDbEIsS0FBSyxHQUFHO0FBQ04sWUFBSSxNQUFNLENBQUE7QUFDVixpQkFBU0EsS0FBSSxHQUFHQSxLQUFJLEtBQUtBLEtBQ3ZCLEtBQUksS0FBSyxRQUFRLElBQUlBLEVBQUEsTUFBTyxJQUMxQixLQUFJLEtBQUtBLEVBQUE7QUFJYixlQUFPO01BQ1Q7TUFFQSxLQUFLLEdBQUc7QUFDTixZQUFJLE1BQU0sQ0FBQTtBQUNWLGlCQUFTQSxLQUFJLEdBQUdBLEtBQUksS0FBSyxVQUFVQSxNQUFLO0FBQ3RDLGNBQUksTUFBTSxLQUFLLFFBQVEsSUFBSUEsRUFBQTtBQUMzQixjQUFJLFFBQVEsS0FBSyxVQUFVLElBQUlBLEVBQUE7QUFDL0IsY0FBSSxjQUFjLEtBQUssY0FBYyxJQUFJQSxFQUFBO0FBQ3pDLGNBQUksUUFBUSxLQUFLLFFBQVEsSUFBSUEsRUFBQTtBQUU3QixtQkFBUyxJQUFJLE9BQU8sS0FBSyxLQUFLLEtBQUs7QUFDakMsZ0JBQUksSUFBSTtBQUNSLGdCQUFJLGdCQUFnQixFQUNsQixLQUFJLElBQUk7aUJBQ0g7QUFDTCxrQkFBSSxRQUFRLGNBQWMsS0FBSyxJQUFJLFVBQVUsS0FBSyxXQUFXQTtBQUM3RCxrQkFBSSxLQUFLLGdCQUFnQixJQUFJLEtBQUEsS0FBVTtBQUN2QyxrQkFBSSxNQUFNLEVBQ1IsTUFBSztZQUVUO0FBRUEsZ0JBQUksTUFBTSxJQUNSLEtBQUksS0FBSyxDQUFBO1VBRWI7UUFDRjtBQUVBLGVBQU87TUFDVDtNQUVBLEtBQUssSUFBSTtBQUNQLFlBQUksTUFBTSxDQUFBO0FBQ1YsaUJBQVMsU0FBUyxLQUFLLE9BQU8sUUFBTyxFQUNuQyxLQUFJLE9BQU8sTUFBTSxXQUFXLE9BQU8sTUFBTSxXQUFXLE1BQU0sY0FBYyxNQUFNLGVBQzVFLEtBQUksS0FBSyxNQUFNLGlCQUFpQixNQUFNLE1BQU0sUUFBTTtBQUl0RCxlQUFPO01BQ1Q7TUFFQSxLQUFLLElBQUk7QUFDUCxZQUFJLE1BQU0sQ0FBQTtBQUNWLGlCQUFTLFNBQVMsS0FBSyxPQUFPLFFBQU8sRUFDbkMsS0FBSSxRQUFRLE1BQU0sUUFDaEIsS0FBSSxLQUFJLElBQUksR0FBQSwyQ0FBTSxNQUFNLGVBQWUsTUFBTSxjQUFjLENBQUEsQ0FBQTtBQUkvRCxlQUFPO01BQ1Q7TUFFQTtBQUNFLGNBQU0sSUFBSSxNQUFNLHVCQUF1QixLQUFLLE9BQU8sRUFBRTtJQUN6RDtFQUNGO0VBdFJBLFlBQVksV0FBVztBQUVyQixTQUFLLFdBQVc7QUFDaEIsU0FBSyxPQUFPLEtBQUssYUFBYSxXQUFXOztNQUV2QztRQUFDO1FBQUc7O01BQ0o7UUFBQztRQUFHOztNQUNKO1FBQUM7UUFBRzs7O01BR0o7UUFBQztRQUFHOztNQUNKO1FBQUM7UUFBRzs7TUFDSjtRQUFDO1FBQUc7O01BQ0o7UUFBQztRQUFHOztNQUNKO1FBQUM7UUFBRzs7S0FDTDtBQUdELFFBQUksQ0FBQyxLQUFLLEtBQ1IsVUFBUyxRQUFRLFVBQVUsUUFBUTtBQUNqQyxVQUFJLFlBQVcsR0FBQSwyQ0FBWSxLQUFLLFlBQVksS0FBSyxZQUFZLEtBQUssTUFBTSxXQUFXLENBQUE7QUFDbkYsVUFBSSxXQUFVLEdBQUEsMkNBQW1CLFFBQUE7QUFDakMsVUFBSSxTQUFTO0FBQ1gsYUFBSyxPQUFPLEtBQUs7QUFDakIsYUFBSyxXQUFXO01BQ2xCO0lBQ0Y7QUFHRixRQUFJLENBQUMsS0FBSyxLQUNSLE9BQU0sSUFBSSxNQUFNLHVDQUFBO0FBR2xCLFNBQUssTUFBTSxLQUFLLGFBQWEsV0FBVztNQUFDO1FBQUM7UUFBRzs7S0FBRztBQUNoRCxRQUFJLEtBQUssT0FBTyxLQUFLLElBQUksWUFBWSxHQUNuQyxNQUFLLE1BQU07RUFFZjtBQWtQRjs7Ozs7OztBRzNSZSxJQUFNLDJDQUFOLE1BQU07RUFLbkIsUUFBUSxRQUFRLFdBQVc7QUFDekIsYUFBUyxhQUFhLEdBQUcsYUFBYSxPQUFPLFNBQVMsR0FBRyxjQUFjO0FBQ3JFLFVBQUksT0FBTyxPQUFPLFVBQUEsRUFBWTtBQUM5QixVQUFJLFFBQVEsT0FBTyxhQUFhLENBQUEsRUFBRztBQUNuQyxnQkFBVSxVQUFBLEVBQVksWUFBWSxLQUFLLFdBQVcsTUFBTSxLQUFBO0lBQzFEO0VBQ0Y7RUFFQSxXQUFXLE1BQU0sT0FBTztBQUN0QixRQUFJLE1BQU07QUFFVixhQUFTLFNBQVMsS0FBSyxLQUFLLFFBQVE7QUFDbEMsVUFBSSxNQUFNLFNBQVMsWUFDakI7QUFHRixjQUFRLE1BQU0sU0FBTztRQUNuQixLQUFLO0FBQ0gsY0FBSSxDQUFDLE1BQU0sU0FBUyxXQUNsQjtBQUdGO1FBQ0YsS0FBSztBQUNILGNBQUksTUFBTSxTQUFTLFlBQVksTUFBTSxTQUFTLFVBQzVDO0FBR0Y7UUFDRjtBQUNFLGdCQUFNLElBQUksTUFBTSxxQ0FBcUMsTUFBTSxPQUFPLEVBQUU7TUFDeEU7QUFFQSxVQUFJLE1BQU07QUFDVixVQUFJLElBQUksTUFBTTtBQUNkLGNBQVEsTUFBTSxRQUFNO1FBQ2xCLEtBQUs7QUFDSCxjQUFJLFdBQVUsR0FBQSwyQ0FBYSxFQUFFLE9BQU8sU0FBVSxNQUFJO0FBQ2hELG1CQUFRLE9BQU8sS0FBSyxRQUFVLFFBQVEsS0FBSztVQUM3QyxDQUFBO0FBRUEsY0FBSSxXQUFXLEVBQ2IsT0FBTSxFQUFFLE1BQU0sT0FBQSxFQUFTO0FBR3pCO1FBRUYsS0FBSztBQUNILGNBQUksYUFBYSxHQUFHLGNBQWM7QUFDbEMsY0FBSSxRQUFRLEVBQUUsVUFBVSxjQUFjLE9BQU8sRUFBRSxVQUFVLGFBQWEsRUFBRSxVQUFVLFFBQ2hGLGNBQWEsRUFBRSxVQUFVLFFBQVEsT0FBTyxFQUFFLFVBQVUsVUFBVTtjQUU5RCxjQUFhLEVBQUUsTUFBTTtBQUd2QixjQUFJLFNBQVMsRUFBRSxXQUFXLGNBQWMsUUFBUSxFQUFFLFdBQVcsYUFBYSxFQUFFLFdBQVcsUUFDckYsZUFBYyxFQUFFLFdBQVcsUUFBUSxRQUFRLEVBQUUsV0FBVyxVQUFVO0FBR3BFLGNBQUksU0FBUyxhQUFhLGNBQWMsRUFBRSxNQUFNLE9BQU87QUFDdkQsZ0JBQU0sRUFBRSxNQUFNLE9BQU8sSUFBSSxLQUFBO0FBQ3pCO1FBRUYsS0FBSztBQUNILGNBQUksUUFBUSxFQUFFLGNBQWMsU0FBUyxFQUFFLFdBQ3JDLFFBQU87QUFHVCxnQkFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxJQUFBLElBQVEsRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEtBQUEsQ0FBTSxDQUFDO0FBQzFGO1FBRUY7QUFDRSxnQkFBTSxJQUFJLE1BQU0sd0NBQXdDLE1BQU0sTUFBTSxFQUFFO01BQzFFO0FBSUEsVUFBSSxNQUFNLFNBQVMsU0FDakIsT0FBTTtVQUVOLFFBQU87SUFFWDtBQUVBLFdBQU87RUFDVDtFQXpGQSxZQUFZLE1BQU07QUFDaEIsU0FBSyxPQUFPLEtBQUs7RUFDbkI7QUF3RkY7QUNuRmUsSUFBTSwyQ0FBTixNQUFNO0VBS25CLGVBQWUsUUFBUSxXQUFXO0FBRWhDLFFBQUksZUFBZTtBQUNuQixRQUFJLGFBQWE7QUFDakIsYUFBUyxRQUFRLEdBQUcsUUFBUSxPQUFPLFFBQVEsU0FBUztBQUNsRCxVQUFJLFFBQVEsT0FBTyxLQUFBO0FBQ25CLFVBQUksTUFBTSxPQUNSLGNBQWE7V0FDUjtBQUNMLFlBQUksaUJBQWlCLFdBQ25CLE1BQUssZ0JBQWdCLFFBQVEsV0FBVyxjQUFjLFVBQUE7QUFHeEQsdUJBQWUsYUFBYTtNQUM5QjtJQUNGO0FBRUEsUUFBSSxpQkFBaUIsV0FDbkIsTUFBSyxnQkFBZ0IsUUFBUSxXQUFXLGNBQWMsVUFBQTtBQUd4RCxXQUFPO0VBQ1Q7RUFFQSxnQkFBZ0IsUUFBUSxXQUFXLGNBQWMsWUFBWTtBQUMzRCxRQUFJLE9BQU8sT0FBTyxZQUFBO0FBQ2xCLFFBQUksVUFBVSxLQUFLLEtBQUssS0FBSTtBQUc1QixRQUFJLEtBQUssV0FBVyxTQUFTO0FBRTNCLGNBQVEsU0FBVSxLQUFLLFdBQVcsU0FBUyxLQUFLLFFBQVEsUUFBUyxLQUFLLFdBQVc7QUFHbkYsUUFBSSxVQUFVLENBQUMsVUFBVSxZQUFBLEVBQWM7QUFDdkMsUUFBSSxVQUFVO0FBQ2QsUUFBSSxPQUFPLEtBQUssS0FBSyxhQUFhO0FBR2xDLGFBQVMsUUFBUSxlQUFlLEdBQUcsU0FBUyxZQUFZLFNBQVM7QUFDL0QsVUFBSSxPQUFPLE9BQU8sS0FBQTtBQUNsQixVQUFJLFVBQVUsS0FBSztBQUNuQixVQUFJVSxZQUFXLFVBQVUsS0FBQTtBQUV6QixVQUFJLGlCQUFpQixLQUFLLGtCQUFrQixLQUFLLFdBQVcsQ0FBQSxDQUFFO0FBRTlELFVBQUksbUJBQW1CLGlCQUFpQjtBQUN0QyxRQUFBQSxVQUFTLFVBQVVBLFVBQVMsVUFBVTtBQUd0QyxnQkFBUSxnQkFBQTtVQUNOLEtBQUs7VUFDTCxLQUFLO0FBRUgsWUFBQUEsVUFBUyxXQUFXLFFBQVEsT0FBTyxRQUFRLFFBQVEsSUFBSSxRQUFRO0FBQy9EO1VBRUYsS0FBSztVQUNMLEtBQUs7VUFDTCxLQUFLO0FBRUgsWUFBQUEsVUFBUyxXQUFXLFFBQVEsT0FBTyxRQUFRO0FBQzNDO1VBRUYsS0FBSztVQUNMLEtBQUs7VUFDTCxLQUFLO0FBRUgsWUFBQUEsVUFBUyxXQUFXLFFBQVEsT0FBTyxRQUFRLFFBQVEsUUFBUTtBQUMzRDtVQUVGO0FBRUUsWUFBQUEsVUFBUyxXQUFXLFFBQVEsUUFBUSxRQUFRLFFBQVEsUUFBUSxTQUFTLElBQUksUUFBUTtRQUNyRjtBQUdBLGdCQUFRLGdCQUFBO1VBQ04sS0FBSztVQUNMLEtBQUs7VUFDTCxLQUFLO1VBQ0wsS0FBSztVQUNMLEtBQUs7VUFDTCxLQUFLO0FBRUgsZ0JBQUksbUJBQW1CLHlCQUF5QixtQkFBbUIsaUJBQ2pFLFNBQVEsUUFBUTtBQUdsQixZQUFBQSxVQUFTLFVBQVUsQ0FBQyxRQUFRLE9BQU8sUUFBUTtBQUMzQyxvQkFBUSxRQUFRLFFBQVE7QUFDeEI7VUFFRixLQUFLO1VBQ0wsS0FBSztVQUNMLEtBQUs7VUFDTCxLQUFLO1VBQ0wsS0FBSztVQUNMLEtBQUs7QUFFSCxnQkFBSSxtQkFBbUIsb0JBQW9CLG1CQUFtQix1QkFDNUQsU0FBUSxRQUFRO0FBR2xCLFlBQUFBLFVBQVMsVUFBVSxRQUFRLE9BQU8sUUFBUTtBQUMxQyxvQkFBUSxRQUFRLFFBQVE7QUFDeEI7UUFDSjtBQUVBLFFBQUFBLFVBQVMsV0FBV0EsVUFBUyxXQUFXO0FBQ3hDLFFBQUFBLFVBQVMsV0FBVztBQUNwQixRQUFBQSxVQUFTLFdBQVc7TUFFdEIsT0FBTztBQUNMLG1CQUFXQSxVQUFTO0FBQ3BCLG1CQUFXQSxVQUFTO01BQ3RCO0lBQ0Y7QUFFQTtFQUNGO0VBRUEsa0JBQWtCLFdBQVc7QUFDM0IsUUFBSSxrQkFBaUIsR0FBQSwyQ0FBa0IsU0FBQTtBQUd2QyxTQUFLLFlBQVksVUFBVyxNQUFRO0FBQ2xDLFVBQUksbUJBQW1CLGdCQUNyQixTQUFRLFdBQUE7UUFDTixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7QUFDSCxpQkFBTztRQUVULEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO0FBQ0gsaUJBQU87UUFFVCxLQUFLO0FBQ0gsaUJBQU87TUFDWDtlQUNTLGNBQWMsS0FDdkIsUUFBTztJQUVYO0FBRUEsWUFBUSxnQkFBQTs7TUFHTixLQUFLO01BQ0wsS0FBSztNQUNMLEtBQUs7TUFDTCxLQUFLO01BQ0wsS0FBSztNQUNMLEtBQUs7TUFDTCxLQUFLO01BQ0wsS0FBSztNQUNMLEtBQUs7TUFDTCxLQUFLO01BQ0wsS0FBSztBQUNILGVBQU87TUFFVCxLQUFLO0FBQ0gsZUFBTztNQUVULEtBQUs7QUFDSCxlQUFPO01BRVQsS0FBSztNQUNMLEtBQUs7QUFDSCxlQUFPO01BRVQsS0FBSztBQUNILGVBQU87TUFFVCxLQUFLO0FBQ0g7O01BSUYsS0FBSztNQUNMLEtBQUs7TUFDTCxLQUFLO01BQ0wsS0FBSztNQUNMLEtBQUs7TUFDTCxLQUFLO01BQ0wsS0FBSztNQUNMLEtBQUs7QUFDSCxlQUFPO01BRVQsS0FBSztNQUNMLEtBQUs7QUFDSCxlQUFPOztNQUlULEtBQUs7QUFDSCxlQUFPO01BRVQsS0FBSztBQUNILGVBQU87O01BSVQsS0FBSztBQUNILGVBQU87TUFFVCxLQUFLO0FBQ0gsZUFBTzs7TUFJVCxLQUFLO01BQ0wsS0FBSztBQUNILGVBQU87TUFFVCxLQUFLO0FBQ0gsZUFBTztJQUNYO0FBRUEsV0FBTztFQUNUO0VBN09BLFlBQVksTUFBTTtBQUNoQixTQUFLLE9BQU87RUFDZDtBQTRPRjtBRXRQZSxJQUFNLDJDQUFOLE1BQU0sMENBQUE7Ozs7O0VBK0JuQixJQUFJLFFBQVE7QUFDVixXQUFPLEtBQUssT0FBTyxLQUFLO0VBQzFCOzs7OztFQU1BLElBQUksU0FBUztBQUNYLFdBQU8sS0FBSyxPQUFPLEtBQUs7RUFDMUI7RUFFQSxTQUFTRCxJQUFHRSxJQUFHO0FBQ2IsUUFBSSxLQUFLLElBQUlGLEVBQUEsTUFBTyxVQUFVO0FBQzVCLFVBQUlBLEtBQUksS0FBSyxLQUNYLE1BQUssT0FBT0E7QUFHZCxVQUFJQSxLQUFJLEtBQUssS0FDWCxNQUFLLE9BQU9BO0lBRWhCO0FBRUEsUUFBSSxLQUFLLElBQUlFLEVBQUEsTUFBTyxVQUFVO0FBQzVCLFVBQUlBLEtBQUksS0FBSyxLQUNYLE1BQUssT0FBT0E7QUFHZCxVQUFJQSxLQUFJLEtBQUssS0FDWCxNQUFLLE9BQU9BO0lBRWhCO0VBQ0Y7RUFFQSxPQUFPO0FBQ0wsV0FBTyxJQUFJLDBDQUFLLEtBQUssTUFBTSxLQUFLLE1BQU0sS0FBSyxNQUFNLEtBQUssSUFBSTtFQUM1RDtFQWxFQSxZQUFZLE9BQU8sVUFBVSxPQUFPLFVBQVUsT0FBTyxXQUFXLE9BQU8sV0FBVztBQUtoRixTQUFLLE9BQU87QUFNWixTQUFLLE9BQU87QUFNWixTQUFLLE9BQU87QUFNWixTQUFLLE9BQU87RUFDZDtBQTJDRjtBQ2xFQSxJQUFNLHdDQUFrQjtFQUN0QixvQkFBb0I7RUFDcEIsUUFBUTtFQUNSLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsU0FBUztFQUNULFVBQVU7RUFDVixPQUFPO0VBQ1AsV0FBVztFQUNYLE9BQU87RUFDUCxTQUFTO0lBQUM7SUFBUTs7RUFDbEIsVUFBVTtFQUNWLFFBQVE7RUFDUixTQUFTO0VBQ1QsVUFBVTtFQUNWLE9BQU87RUFDUCxRQUFRO0VBQ1IscUJBQXFCO0VBQ3JCLFFBQVE7RUFDUixNQUFNO0VBQ04sVUFBVTtFQUNWLFFBQVE7RUFDUixTQUFTO0VBQ1QsVUFBVTtFQUNWLFlBQVk7SUFBQztJQUFROztFQUNyQixTQUFTO0VBQ1QsVUFBVTtFQUNWLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsVUFBVTtFQUNWLFVBQVU7RUFDVixZQUFZO0VBQ1osUUFBUTtFQUNSLFNBQVM7RUFDVCxPQUFPO0VBQ1AsVUFBVTtJQUFDO0lBQVE7O0VBQ25CLFVBQVU7SUFBQztJQUFROztFQUNuQixRQUFRO0VBQ1IsS0FBSztFQUNMLFNBQVM7RUFDVCxRQUFRO0VBQ1IsVUFBVTtFQUNWLGNBQWM7RUFDZCxzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLFVBQVU7RUFDVixVQUFVO0VBQ1YsVUFBVTtFQUNWLFlBQVk7RUFDWixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVM7SUFBQztJQUFROztFQUNsQixRQUFRO0VBQ1IsVUFBVTtFQUNWLEtBQUs7RUFDTCxPQUFPO0VBQ1AsUUFBUTtFQUNSLE9BQU87RUFDUCxVQUFVO0VBQ1YsVUFBVTtFQUNWLE1BQU07RUFDTixRQUFRO0VBQ1IsUUFBUTtFQUNSLFVBQVU7RUFDVixTQUFTO0VBQ1QsWUFBWTtFQUNaLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsc0JBQXNCO0VBQ3RCLFdBQVc7SUFBQztJQUFROztFQUNwQixNQUFNO0VBQ04sV0FBVztFQUNYLEtBQUs7RUFDTCxjQUFjO0VBQ2QsU0FBUztJQUFDO0lBQVE7O0VBQ2xCLG1CQUFtQjtFQUNuQixXQUFXO0VBQ1gsS0FBSztFQUNMLE9BQU87RUFDUCxVQUFVO0VBQ1YsWUFBWTtFQUNaLE9BQU87SUFBQztJQUFROztFQUNoQixTQUFTO0VBQ1QsV0FBVztFQUNYLGFBQWE7RUFDYixZQUFZO0VBQ1osVUFBVTtFQUNWLHVCQUF1QjtFQUN2QixpQkFBaUI7RUFDakIsWUFBWTtFQUNaLE1BQU07RUFDTix3QkFBd0I7RUFDeEIsUUFBUTtFQUNSLE9BQU87RUFDUCxXQUFXO0VBQ1gsbUJBQW1CO0VBQ25CLFlBQVk7RUFDWixTQUFTO0VBQ1QsU0FBUztFQUNULFNBQVM7RUFDVCxXQUFXO0VBQ1gsU0FBUztFQUNULGNBQWM7RUFDZCxXQUFXO0VBQ1gsY0FBYztFQUNkLFFBQVE7RUFDUixVQUFVO0VBQ1YsT0FBTztFQUNQLFFBQVE7RUFDUixhQUFhO0VBQ2IsT0FBTztJQUFDO0lBQVE7O0VBQ2hCLFVBQVU7RUFDVixRQUFRO0lBQUM7SUFBUTs7RUFDakIsVUFBVTtFQUNWLFNBQVM7RUFDVCxRQUFRO0VBQ1IsTUFBTTtFQUNOLFNBQVM7RUFDVCxTQUFTO0VBQ1QsVUFBVTtFQUNWLEtBQUs7RUFDTCxhQUFhO0VBQ2IsYUFBYTtFQUNiLFdBQVc7RUFDWCxJQUFJO0VBQ0osV0FBVztFQUNYLFFBQVE7RUFDUixTQUFTO0FBQ1g7QUFFQSxJQUFNLHlDQUFtQixDQUFDO0FBQzFCLFNBQVMsVUFBVSx1Q0FBaUI7QUFDbEMsTUFBSUgsT0FBTSxzQ0FBZ0IsTUFBQTtBQUMxQixNQUFJLE1BQU0sUUFBUUEsSUFBQSxFQUNoQixVQUFTLEtBQUtBLEtBQ1osd0NBQWlCLENBQUEsSUFBSztNQUd4Qix3Q0FBaUJBLElBQUEsSUFBTztBQUU1QjtBQU1PLFNBQVMsMENBQWFJLE1BQUc7QUFDOUIsU0FBTyx1Q0FBaUJBLElBQUE7QUFDMUI7QUFFTyxTQUFTLDBDQUFVLFFBQU07QUFDOUIsTUFBSSxNQUFNLE9BQU87QUFDakIsTUFBSSxNQUFNO0FBQ1YsU0FBTyxNQUFNLEtBQUs7QUFDaEIsUUFBSSxPQUFPLE9BQU8sV0FBVyxLQUFBO0FBRzdCLFFBQUksU0FBVSxRQUFRLFFBQVEsU0FBVSxNQUFNLEtBQUs7QUFDakQsVUFBSUMsUUFBTyxPQUFPLFdBQVcsR0FBQTtBQUc3QixVQUFJLFNBQVVBLFNBQVFBLFNBQVEsT0FBUTtBQUNwQztBQUNBLGlCQUFTLE9BQU8sU0FBVSxPQUFPQSxRQUFPLFFBQVM7TUFDbkQ7SUFDRjtBQUVBLFFBQUksVUFBUyxHQUFBLDJDQUFVLElBQUE7QUFDdkIsUUFBSSxXQUFXLFlBQVksV0FBVyxlQUFlLFdBQVcsVUFDOUQsUUFBTyxzQ0FBZ0IsTUFBQTtFQUUzQjtBQUVBLFNBQU8sc0NBQWdCO0FBQ3pCO0FBRU8sU0FBUywwQ0FBYyxZQUFVO0FBQ3RDLFdBQVNDLEtBQUksR0FBR0EsS0FBSSxXQUFXLFFBQVFBLE1BQUs7QUFDMUMsUUFBSSxZQUFZLFdBQVdBLEVBQUE7QUFDM0IsUUFBSSxVQUFTLEdBQUEsMkNBQVUsU0FBQTtBQUN2QixRQUFJLFdBQVcsWUFBWSxXQUFXLGVBQWUsV0FBVyxVQUM5RCxRQUFPLHNDQUFnQixNQUFBO0VBRTNCO0FBRUEsU0FBTyxzQ0FBZ0I7QUFDekI7QUFHQSxJQUFNLDRCQUFNO0VBQ1YsTUFBTTtFQUNOLE1BQU07RUFDTixNQUFNO0VBQ04sTUFBTTtFQUNOLE1BQU07RUFDTixNQUFNO0VBQ04sTUFBTTtFQUNOLFFBQVE7RUFDUixNQUFNO0VBQ04sTUFBTTtFQUNOLE1BQU07RUFDTixNQUFNO0VBQ04sTUFBTTtFQUNOLE1BQU07RUFDTixNQUFNO0VBQ04sTUFBTTtFQUNOLE1BQU07RUFDTixNQUFNO0VBQ04sTUFBTTs7RUFHTixNQUFNO0VBQ04sTUFBTTtFQUNOLE1BQU07RUFDTixNQUFNO0VBQ04sTUFBTTtFQUNOLE1BQU07O0FBQ1I7QUFFTyxTQUFTLDBDQUFVLFFBQU07QUFDOUIsTUFBSSwwQkFBSSxNQUFBLEVBQ04sUUFBTztBQUdULFNBQU87QUFDVDtBRi9OZSxJQUFNLDJDQUFOLE1BQU07Ozs7O0VBdURuQixJQUFJLGVBQWU7QUFDakIsUUFBSUMsU0FBUTtBQUNaLGFBQVNDLGFBQVksS0FBSyxVQUN4QixDQUFBRCxVQUFTQyxVQUFTO0FBR3BCLFdBQU9EO0VBQ1Q7Ozs7O0VBTUEsSUFBSSxnQkFBZ0I7QUFDbEIsUUFBSUUsVUFBUztBQUNiLGFBQVNELGFBQVksS0FBSyxVQUN4QixDQUFBQyxXQUFVRCxVQUFTO0FBR3JCLFdBQU9DO0VBQ1Q7Ozs7O0VBTUEsSUFBSSxPQUFPO0FBQ1QsUUFBSUMsUUFBTyxLQUFJLEdBQUE7QUFFZixRQUFJQyxLQUFJO0FBQ1IsUUFBSUMsS0FBSTtBQUNSLGFBQVMsUUFBUSxHQUFHLFFBQVEsS0FBSyxPQUFPLFFBQVEsU0FBUztBQUN2RCxVQUFJLFFBQVEsS0FBSyxPQUFPLEtBQUE7QUFDeEIsVUFBSSxJQUFJLEtBQUssVUFBVSxLQUFBO0FBQ3ZCLFVBQUksSUFBSSxNQUFNO0FBRWQsTUFBQUYsTUFBSyxTQUFTLEVBQUUsT0FBT0MsS0FBSSxFQUFFLFNBQVMsRUFBRSxPQUFPQyxLQUFJLEVBQUUsT0FBTztBQUM1RCxNQUFBRixNQUFLLFNBQVMsRUFBRSxPQUFPQyxLQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU9DLEtBQUksRUFBRSxPQUFPO0FBRTVELE1BQUFELE1BQUssRUFBRTtBQUNQLE1BQUFDLE1BQUssRUFBRTtJQUNUO0FBRUEsV0FBT0Y7RUFDVDtFQWxHQSxZQUFZLFFBQVEsVUFBVSxRQUFRLFVBQVUsV0FBVztBQUt6RCxTQUFLLFNBQVM7QUFNZCxTQUFLLFlBQVk7QUFNakIsU0FBSyxTQUFTO0FBT2QsU0FBSyxXQUFXLFlBQVk7QUFPNUIsU0FBSyxZQUFZLGFBQWEsMENBQWlCLE1BQUE7QUFPL0MsU0FBSyxXQUFXLENBQUM7QUFHakIsUUFBSSxNQUFNLFFBQVEsUUFBQSxFQUNoQixVQUFTTixRQUFPLFNBQ2QsTUFBSyxTQUFTQSxJQUFBLElBQU87YUFFZCxPQUFPLGFBQWEsU0FDN0IsTUFBSyxXQUFXO0VBRXBCO0FBbURGO0FHeEdlLElBQU0sMkNBQU4sTUFBTTtFQUNuQixZQUFZLFdBQVcsR0FBRyxXQUFXLEdBQUcsVUFBVSxHQUFHLFVBQVUsR0FBRztBQUtoRSxTQUFLLFdBQVc7QUFNaEIsU0FBSyxXQUFXO0FBTWhCLFNBQUssVUFBVTtBQU1mLFNBQUssVUFBVTtFQUNqQjtBQUNGO0FFM0JBLElBQU0saUNBQVc7RUFDZix3QkFBd0I7SUFDdEIsTUFBTTtJQUNOLFdBQVc7SUFDWCxpQkFBaUI7RUFDbkI7RUFDQSxXQUFXO0lBQ1QsTUFBTTtJQUNOLFdBQVc7SUFDWCxtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLGVBQWU7O0lBRWYsZUFBZTtJQUNmLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsd0JBQXdCO0lBQ3hCLGlCQUFpQjtJQUNqQixxQkFBcUI7SUFDckIscUJBQXFCO0VBQ3ZCO0VBQ0EsbUJBQW1CO0lBQ2pCLE1BQU07SUFDTixXQUFXO0lBQ1gsYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixTQUFTO0VBQ1g7RUFDQSxZQUFZO0lBQ1YsTUFBTTtJQUNOLFdBQVc7RUFDYjs7Ozs7OztFQU9BLHNCQUFzQjtJQUNwQixNQUFNO0lBQ04sV0FBVztJQUNYLHlCQUF5QjtFQUMzQjtFQUNBLHlCQUF5QjtJQUN2QixNQUFNO0lBQ04sV0FBVztJQUNYLHlCQUF5QjtFQUMzQjtFQUNBLGVBQWU7SUFDYixNQUFNO0lBQ04sV0FBVztJQUNYLG1CQUFtQjtJQUNuQixxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLHFCQUFxQjtFQUN2QjtFQUNBLFlBQVk7SUFDVixNQUFNO0lBQ04sV0FBVztJQUNYLG9CQUFvQjtJQUNwQixrQkFBa0I7OztJQUdsQixpQkFBaUI7RUFDbkI7RUFDQSxZQUFZO0lBQ1YsTUFBTTtJQUNOLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHFCQUFxQjtFQUN2QjtFQUNBLGtCQUFrQjtJQUNoQixNQUFNO0lBQ04sV0FBVztJQUNYLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsV0FBVztJQUNYLFVBQVU7SUFDVixxQkFBcUI7RUFDdkI7RUFDQSxXQUFXO0lBQ1QsTUFBTTtJQUNOLFdBQVc7SUFDWCxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLG1CQUFtQjtFQUNyQjtFQUNBLHVCQUF1QjtJQUNyQixNQUFNO0lBQ04sV0FBVztJQUNYLGdCQUFnQjtFQUNsQjtFQUNBLG1CQUFtQjtJQUNqQixNQUFNO0lBQ04sV0FBVzs7O0lBR1gsYUFBYTtFQUNmOzs7O0VBSUEsb0JBQW9CO0lBQ2xCLE1BQU07SUFDTixXQUFXOzs7Ozs7SUFNWCxtQkFBbUI7RUFDckI7RUFDQSxjQUFjO0lBQ1osTUFBTTtJQUNOLFdBQVc7SUFDWCxhQUFhO0lBQ2IsVUFBVTtJQUNWLGNBQWM7SUFDZCxVQUFVO0lBQ1YsbUJBQW1CO0lBQ25CLHNCQUFzQjtJQUN0QixhQUFhO0VBQ2Y7RUFDQSx1QkFBdUI7SUFDckIsTUFBTTtJQUNOLFdBQVc7SUFDWCxjQUFjO0VBQ2hCOztFQUVBLGtCQUFrQjtJQUNoQixNQUFNO0lBQ04sV0FBVztJQUNYLGNBQWM7SUFDZCxjQUFjO0lBQ2QsY0FBYztJQUNkLGNBQWM7SUFDZCxjQUFjO0VBQ2hCO0VBQ0EsY0FBYztJQUNaLE1BQU07SUFDTixXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYixVQUFVO0VBQ1o7RUFDQSxnQkFBZ0I7SUFDZCxNQUFNO0lBQ04sV0FBVztJQUNYLHVCQUF1QjtJQUN2QixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixxQkFBcUI7SUFDckIsb0JBQW9CO0lBQ3BCLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsNEJBQTRCO0VBQzlCO0VBQ0EsWUFBWTtJQUNWLE1BQU07SUFDTixXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGtCQUFrQjtFQUNwQjtFQUNBLGFBQWE7SUFDWCxNQUFNO0lBQ04sV0FBVztJQUNYLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLGtCQUFrQjtFQUNwQjtFQUNBLGlCQUFpQjtJQUNmLE1BQU07SUFDTixXQUFXO0lBQ1gsbUJBQW1CO0VBQ3JCOzs7Ozs7Ozs7O0VBVUEsWUFBWTtJQUNWLE1BQU07SUFDTixXQUFXO0lBQ1gsY0FBYztJQUNkLGVBQWU7SUFDZixzQkFBc0I7SUFDdEIsa0JBQWtCO0lBQ2xCLDBCQUEwQjtJQUMxQix1QkFBdUI7SUFDdkIsa0JBQWtCO0lBQ2xCLHdCQUF3QjtJQUN4QixtQkFBbUI7SUFDbkIsdUJBQXVCO0lBQ3ZCLDhCQUE4QjtFQUNoQztFQUNBLGFBQWE7SUFDWCxNQUFNO0lBQ04sV0FBVztJQUNYLGVBQWU7SUFDZixrQkFBa0I7RUFDcEI7RUFDQSxvQkFBb0I7SUFDbEIsTUFBTTtJQUNOLFdBQVc7SUFDWCxxQkFBcUI7SUFDckIsd0JBQXdCO0lBQ3hCLHFCQUFxQjtFQUN2QjtFQUNBLHNCQUFzQjtJQUNwQixNQUFNO0lBQ04sV0FBVztJQUNYLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsd0JBQXdCO0VBQzFCO0VBQ0EsVUFBVTtJQUNSLE1BQU07SUFDTixXQUFXOzs7SUFHWCxVQUFVO0VBQ1o7RUFDQSx1QkFBdUI7SUFDckIsTUFBTTtJQUNOLFdBQVc7SUFDWCx5QkFBeUI7SUFDekIsaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsa0JBQWtCO0lBQ2xCLGtCQUFrQjtFQUNwQjtFQUNBLHlCQUF5QjtJQUN2QixNQUFNO0lBQ04sV0FBVztJQUNYLDJCQUEyQjtJQUMzQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLHFCQUFxQjtJQUNyQixvQkFBb0I7SUFDcEIsb0JBQW9CO0VBQ3RCO0VBQ0EsMkJBQTJCO0lBQ3pCLE1BQU07SUFDTixXQUFXO0lBQ1gsMEJBQTBCO0lBQzFCLDJCQUEyQjtFQUM3QjtFQUNBLGdCQUFnQjtJQUNkLE1BQU07SUFDTixXQUFXOzs7SUFHWCxnQkFBZ0I7RUFDbEI7RUFDQSxxQkFBcUI7SUFDbkIsTUFBTTtJQUNOLFdBQVc7SUFDWCxxQkFBcUI7SUFDckIsc0JBQXNCO0VBQ3hCO0VBQ0EsZUFBZTtJQUNiLE1BQU07SUFDTixXQUFXO0lBQ1gsb0JBQW9CO0lBQ3BCLG1CQUFtQjtFQUNyQjtFQUNBLHVCQUF1QjtJQUNyQixNQUFNO0lBQ04sV0FBVztJQUNYLHVCQUF1QjtJQUN2QixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLG9CQUFvQjtJQUNwQixzQkFBc0I7SUFDdEIsc0JBQXNCO0lBQ3RCLHFCQUFxQjtJQUNyQixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsb0JBQW9CO0VBQ3RCO0VBQ0Esc0JBQXNCO0lBQ3BCLE1BQU07SUFDTixXQUFXO0lBQ1gsc0JBQXNCO0lBQ3RCLGlCQUFpQjtJQUNqQiwyQkFBMkI7RUFDN0I7RUFDQSxXQUFXO0lBQ1QsTUFBTTtJQUNOLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLHFCQUFxQjtFQUN2QjtFQUNBLFdBQVc7SUFDVCxNQUFNO0lBQ04sV0FBVztJQUNYLGtCQUFrQjtJQUNsQixvQkFBb0I7SUFDcEIscUJBQXFCO0VBQ3ZCO0VBQ0EsYUFBYTtJQUNYLE1BQU07SUFDTixXQUFXO0VBQ2I7RUFDQSxpQkFBaUI7SUFDZixNQUFNO0lBQ04sV0FBVztJQUNYLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsaUJBQWlCO0lBQ2pCLG1CQUFtQjtFQUNyQjtBQUNGO0FBRUEsSUFBTSxnQ0FBVSxDQUFDLE1BQU0sYUFBYTtFQUFDLCtCQUFTLElBQUEsRUFBTTtFQUFNLCtCQUFTLElBQUEsRUFBTSxRQUFBOztBQUV6RSxJQUFNLGtDQUFZO0VBQ2hCLE1BQU0sOEJBQVEsYUFBYSxtQkFBQTtFQUMzQixNQUFNLDhCQUFRLGFBQWEscUJBQUE7RUFDM0IsTUFBTSw4QkFBUSxhQUFhLGVBQUE7RUFDM0IsTUFBTSw4QkFBUSxhQUFhLHFCQUFBO0VBQzNCLE1BQU0sOEJBQVEsYUFBYSxpQkFBQTtFQUMzQixNQUFNLDhCQUFRLGFBQWEscUJBQUE7RUFFM0IsTUFBTSw4QkFBUSxhQUFhLG9CQUFBO0VBQzNCLE1BQU0sOEJBQVEsYUFBYSxxQkFBQTtFQUUzQixNQUFNLDhCQUFRLGFBQWEsbUJBQUE7RUFDM0IsTUFBTSw4QkFBUSxhQUFhLG1CQUFBO0VBQzNCLE1BQU0sOEJBQVEsYUFBYSxtQkFBQTtFQUMzQixNQUFNLDhCQUFRLGFBQWEsbUJBQUE7Ozs7Ozs7Ozs7RUFXM0IsTUFBTSw4QkFBUSx1QkFBdUIscUJBQUE7RUFDckMsTUFBTSw4QkFBUSx3QkFBd0Isc0JBQUE7RUFDdEMsTUFBTSw4QkFBUSw2QkFBNkIsMEJBQUE7RUFDM0MsTUFBTSw4QkFBUSw2QkFBNkIsMEJBQUE7RUFDM0MsTUFBTSw4QkFBUSx3QkFBd0IsaUJBQUE7RUFDdEMsTUFBTSw4QkFBUSx3QkFBd0IsMkJBQUE7RUFDdEMsTUFBTSw4QkFBUSxxQkFBcUIsU0FBQTtFQUNuQyxNQUFNLDhCQUFRLGFBQWEscUJBQUE7RUFDM0IsTUFBTSw4QkFBUSxhQUFhLG9CQUFBO0VBRTNCLE1BQU0sOEJBQVEsY0FBYyxvQkFBQTtFQUM1QixNQUFNLDhCQUFRLGNBQWMsa0JBQUE7RUFDNUIsTUFBTSw4QkFBUSxjQUFjLGlCQUFBO0VBQzVCLE1BQU0sOEJBQVEsY0FBYyxpQkFBQTtFQUM1QixNQUFNLDhCQUFRLGNBQWMsa0JBQUE7RUFDNUIsTUFBTSw4QkFBUSxjQUFjLGtCQUFBO0VBRTVCLE1BQU0sOEJBQVEsZUFBZSxrQkFBQTtFQUM3QixNQUFNLDhCQUFRLGVBQWUsZUFBQTtFQUM3QixNQUFNLDhCQUFRLGVBQWUsa0JBQUE7RUFFN0IsTUFBTSw4QkFBUSxpQkFBaUIsb0JBQUE7RUFDL0IsTUFBTSw4QkFBUSxpQkFBaUIsbUJBQUE7O0VBRy9CLE1BQU0sOEJBQVEsa0JBQWtCLGdCQUFBO0VBQ2hDLE1BQU0sOEJBQVEsY0FBYyxrQkFBQTtFQUM1QixNQUFNLDhCQUFRLGNBQWMsa0JBQUE7RUFDNUIsTUFBTSw4QkFBUSxzQkFBc0IsbUJBQUE7OztFQUtwQyxNQUFNLDhCQUFRLHdCQUF3QixzQkFBQTtFQUN0QyxNQUFNLDhCQUFRLHdCQUF3Qix5QkFBQTtFQUN0QyxNQUFNLDhCQUFRLHdCQUF3Qix5QkFBQTtFQUN0QyxNQUFNLDhCQUFRLGlCQUFpQixtQkFBQTtFQUMvQixNQUFNLDhCQUFRLGlCQUFpQixxQkFBQTtFQUMvQixNQUFNLDhCQUFRLG9CQUFvQixXQUFBO0VBQ2xDLE1BQU0sOEJBQVEsb0JBQW9CLFdBQUE7RUFDbEMsTUFBTSw4QkFBUSxvQkFBb0IsVUFBQTtFQUNsQyxNQUFNLDhCQUFRLGVBQWUsa0JBQUE7RUFDN0IsTUFBTSw4QkFBUSxlQUFlLGVBQUE7RUFDN0IsTUFBTSw4QkFBUSxlQUFlLGtCQUFBO0VBQzdCLE1BQU0sOEJBQVEsZUFBZSxnQkFBQTtFQUM3QixNQUFNLDhCQUFRLGVBQWUsa0JBQUE7RUFDN0IsTUFBTSw4QkFBUSxlQUFlLHFCQUFBO0VBQzdCLE1BQU0sOEJBQVEsa0JBQWtCLHVCQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLHNCQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLG1CQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLG1CQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLG1CQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLG1CQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLGtCQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLGdCQUFBO0VBQ2hDLE1BQU0sOEJBQVEsa0JBQWtCLGVBQUE7RUFDaEMsTUFBTSw4QkFBUSxrQkFBa0IsNEJBQUE7RUFDaEMsTUFBTSw4QkFBUSxZQUFZLFVBQUE7RUFDMUIsTUFBTSw4QkFBUSxnQkFBZ0IsYUFBQTtFQUM5QixNQUFNLDhCQUFRLHFCQUFxQixhQUFBO0VBRW5DLE1BQU0sOEJBQVEseUJBQXlCLGlCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLGlCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLG1CQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLGtCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLGtCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLGlCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLG1CQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLG1CQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLGtCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLGlCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLG9CQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLG9CQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLHNCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLHNCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLHFCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLHFCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLHVCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLHNCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLHNCQUFBO0VBQ3ZDLE1BQU0sOEJBQVEseUJBQXlCLG9CQUFBO0FBQ3pDO0FBS0EsU0FBU0UsS0FBSSxHQUFHQSxNQUFLLElBQUlBLEtBQ3ZCLGlDQUFVLEtBQUssS0FBS0EsRUFBQSxHQUFJLE1BQU0sRUFBQSxDQUFBLEVBQUssSUFBSTtFQUFDLCtCQUFTLHNCQUFzQjtFQUFNQTs7QUFJL0UsSUFBSSxtQ0FBYSxDQUFDO0FBQ2xCLFNBQVMsTUFBTSxpQ0FBVztBQUN4QixNQUFJLE1BQU0sZ0NBQVUsRUFBQTtBQUNwQixNQUFJLGlDQUFXLElBQUksQ0FBQSxDQUFFLEtBQUssS0FDeEIsa0NBQVcsSUFBSSxDQUFBLENBQUUsSUFBSSxDQUFDO0FBR3hCLG1DQUFXLElBQUksQ0FBQSxDQUFFLEVBQUUsSUFBSSxDQUFBLENBQUUsSUFBSTtBQUMvQjtBQUlPLFNBQVMsMENBQVcsVUFBUTtBQUNqQyxNQUFJLE1BQU0sQ0FBQztBQUNYLFdBQVMsS0FBSyxVQUFVO0FBQ3RCLFFBQUk7QUFDSixRQUFJLElBQUksZ0NBQVUsQ0FBQSxHQUFJO0FBQ3BCLFVBQUksSUFBSSxFQUFFLENBQUEsQ0FBRSxLQUFLLEtBQ2YsS0FBSSxFQUFFLENBQUEsQ0FBRSxJQUFJLENBQUM7QUFHZixVQUFJLEVBQUUsQ0FBQSxDQUFFLEVBQUUsRUFBRSxDQUFBLENBQUUsSUFBSSxTQUFTLENBQUE7SUFDN0I7RUFDRjtBQUVBLFNBQU87QUFDVDtBQUlBLFNBQVMsd0NBQWtCLEdBQUM7QUFDMUIsTUFBSSxDQUFDLE1BQU0sT0FBQSxJQUFXO0FBQ3RCLE1BQUksTUFBTSxJQUFBLEVBQ1IsS0FBSSxXQUFXLCtCQUFTLElBQUEsS0FBUywrQkFBUyxJQUFBLEVBQU07TUFFaEQsS0FBSSxXQUFXO0FBR2pCLE1BQUksTUFBTSxPQUFBLEVBQ1IsS0FBSSxjQUFjLCtCQUFTLElBQUEsS0FBUywrQkFBUyxJQUFBLEVBQU0sT0FBQTtNQUVuRCxLQUFJLGNBQWM7QUFHcEIsU0FBTztJQUFDO0lBQVU7O0FBQ3BCO0FBTU8sU0FBUywwQ0FBVyxVQUFRO0FBQ2pDLE1BQUksTUFBTSxDQUFDO0FBQ1gsTUFBSSxNQUFNLFFBQVEsUUFBQSxFQUNoQixVQUFTLElBQUksR0FBRyxJQUFJLFNBQVMsUUFBUSxLQUFLO0FBQ3hDLFFBQUk7QUFDSixRQUFJLElBQUksd0NBQWtCLFNBQVMsQ0FBQSxDQUFFO0FBQ3JDLFFBQUksSUFBSSxpQ0FBVyxFQUFFLENBQUEsQ0FBRSxLQUFLLGlDQUFXLEVBQUUsQ0FBQSxDQUFFLEVBQUUsRUFBRSxDQUFBLENBQUUsRUFDL0MsS0FBSSxDQUFBLElBQUs7RUFFYjtXQUVTLE9BQU8sYUFBYSxTQUM3QixVQUFTLFFBQVEsVUFBVTtBQUN6QixRQUFJLFVBQVUsU0FBUyxJQUFBO0FBQ3ZCLGFBQVMsV0FBVyxTQUFTO0FBQzNCLFVBQUk7QUFDSixVQUFJLElBQUksd0NBQWtCO1FBQUM7UUFBTTtPQUFRO0FBQ3pDLFVBQUksUUFBUSxPQUFBLE1BQWEsSUFBSSxpQ0FBVyxFQUFFLENBQUEsQ0FBRSxLQUFLLGlDQUFXLEVBQUUsQ0FBQSxDQUFFLEVBQUUsRUFBRSxDQUFBLENBQUUsR0FDcEUsS0FBSSxDQUFBLElBQUs7SUFFYjtFQUNGO0FBR0YsU0FBTyxPQUFPLEtBQUssR0FBQTtBQUNyQjtBRzNoQmUsSUFBTSwyQ0FBTixNQUFNO0VBS25CLE9BQU8sT0FBTztBQUNaLFlBQVEsS0FBSyxNQUFNLFNBQU87TUFDeEIsS0FBSztBQUNILGVBQU8sS0FBSyxNQUFNLE9BQU8sUUFBUSxLQUFBO01BRW5DLEtBQUs7TUFDTCxLQUFLLEdBQUc7QUFDTixZQUFJLE1BQU07QUFDVixZQUFJLE1BQU0sS0FBSyxNQUFNLG1CQUFtQixTQUFTO0FBRWpELGVBQU8sT0FBTyxLQUFLO0FBQ2pCLGNBQUksTUFBTyxNQUFNLE9BQVE7QUFDekIsY0FBSSxNQUFNLEtBQUssTUFBTSxTQUFTLEdBQUE7QUFHOUIsY0FBSSxJQUFJLGVBQWUsTUFDckIsUUFBTztBQUdULGNBQUksUUFBUSxJQUFJLFdBQ2QsT0FBTSxNQUFNO21CQUNILFFBQVEsSUFBSSxVQUNyQixPQUFNLE1BQU07ZUFDUDtBQUNMLGdCQUFJLEtBQUssTUFBTSxZQUFZLEVBQ3pCLFFBQU8sSUFBSTtnQkFFWCxRQUFPLElBQUksT0FBTyxRQUFRLElBQUksVUFBVTtVQUU1QztRQUNGO0FBRUEsZUFBTztNQUNUO01BRUEsS0FBSyxHQUFHO0FBQ04sWUFBSSxNQUFNO0FBQ1YsWUFBSSxNQUFNLEtBQUssTUFBTSxtQkFBbUIsU0FBUztBQUVqRCxlQUFPLE9BQU8sS0FBSztBQUNqQixjQUFJLE1BQU8sTUFBTSxPQUFRO0FBQ3pCLGNBQUksTUFBTSxLQUFLLE1BQU0sU0FBUyxHQUFBO0FBRzlCLGNBQUksSUFBSSxVQUFVLE1BQ2hCLFFBQU87QUFHVCxjQUFJLFFBQVEsSUFBSSxNQUNkLE9BQU0sTUFBTTttQkFDSCxRQUFRLElBQUksTUFDckIsT0FBTSxNQUFNO2NBRVosUUFBTyxJQUFJO1FBRWY7QUFFQSxlQUFPO01BQ1Q7TUFFQSxLQUFLO0FBQ0gsZUFBTyxLQUFLLE1BQU0sT0FBTyxRQUFRLEtBQUssTUFBTSxVQUFVO01BRXhEO0FBQ0UsY0FBTSxJQUFJLE1BQU0sZ0NBQWdDLEtBQUssTUFBTSxPQUFPLEVBQUU7SUFDeEU7RUFDRjtFQUdBLGVBQWUsWUFBWTtBQUN6QixRQUFJLE1BQU0sQ0FBQTtBQUVWLFlBQVEsS0FBSyxNQUFNLFNBQU87TUFDeEIsS0FBSztNQUNMLEtBQUs7QUFDSCxpQkFBUyxXQUFXLEtBQUssTUFBTSxTQUM3QixLQUFLLEtBQUssTUFBTSxZQUFZLEtBQUssUUFBUSxVQUFVLFdBQ2pELEtBQUksS0FBSSxJQUFJLEdBQUEsMkNBQU0sUUFBUSxZQUFZLFFBQVEsWUFBWSxDQUFBLENBQUE7YUFDckQ7QUFDTCxtQkFBUyxRQUFRLEdBQUcsUUFBUSxRQUFRLE9BQU8sUUFBUSxRQUNqRCxLQUFJLFFBQVEsT0FBTyxLQUFBLE1BQVcsV0FDNUIsS0FBSSxLQUFLLFFBQVEsYUFBYSxLQUFBO1FBR3BDO0FBR0Y7TUFHRixLQUFLO0FBQ0gsaUJBQVMsV0FBVyxLQUFLLE1BQU0sU0FDN0IsS0FBSSxRQUFRLFVBQVUsV0FDcEIsS0FBSSxLQUFLLFFBQVEsS0FBSztBQUkxQjtNQUdGLEtBQUs7QUFDSCxpQkFBU0EsS0FBSSxHQUFHQSxLQUFJLEtBQUssTUFBTSxPQUFPLFFBQVFBLEtBQzVDLEtBQUksS0FBSyxNQUFNLE9BQU9BLEVBQUEsTUFBTyxXQUMzQixLQUFJLEtBQUssS0FBSyxNQUFNLGFBQWFBLEVBQUE7QUFJckM7TUFHRjtBQUNFLGNBQU0sSUFBSSxNQUFNLGdDQUFnQyxLQUFLLE1BQU0sT0FBTyxFQUFFO0lBQ3hFO0FBRUEsV0FBTztFQUNUO0VBdkhBLFlBQVksT0FBTztBQUNqQixTQUFLLFFBQVE7RUFDZjtBQXNIRjs7OztBRDFIQSxJQUFNLDRDQUFzQjtBQUc1QixJQUFNLDBDQUFvQjtBQUMxQixJQUFNLDRDQUFzQjtBQUM1QixJQUFNLDRDQUFzQjtBQUc1QixJQUFNLHFDQUFlO0FBRU4sSUFBTSwyQ0FBTixNQUFNO0VBTW5CLFFBQVEsUUFBUSxTQUFTLGNBQWM7QUFDckMsUUFBSSxlQUFlO0FBQ25CLFFBQUksUUFBUSxVQUFVLE9BQU8sU0FBUyxJQUFJO0FBQzFDLFFBQUksTUFBTSxVQUFVLEtBQUs7QUFFekIsV0FBUSxRQUFRLEtBQUssU0FBUyxPQUFPLFVBQVksUUFBUSxNQUFNLFNBQVMsSUFBSztBQUMzRSxVQUFJLFFBQVE7QUFDWixVQUFJLFlBQVk7QUFDaEIsVUFBSSxnQkFBZ0I7QUFFcEIsVUFBSSxVQUFVLE9BQU8sVUFBVSxVQUFVLEdBQ3ZDLGFBQVk7V0FDUDtBQUNMLGdCQUFRLE9BQU8sS0FBQTtBQUNmLFlBQUksTUFBTSxPQUFPLE1BQ2YsYUFBWTthQUNQO0FBQ0wsc0JBQVksS0FBSyxZQUFZLE9BQU8sTUFBTSxFQUFFO0FBQzVDLGNBQUksYUFBYSxLQUNmLGFBQVk7UUFFaEI7TUFDRjtBQUVBLFVBQUksTUFBTSxLQUFLLFdBQVcsV0FBVyxRQUFRLFlBQUE7QUFDN0MsVUFBSSxhQUFhLElBQUksU0FBQTtBQUNyQixVQUFJLFFBQVEsS0FBSyxXQUFXLFdBQVcsUUFBUSxVQUFBO0FBRS9DLFVBQUksY0FBYywyQ0FBcUIsY0FBZSwyQ0FBcUI7QUFDekUscUJBQWEsT0FBTyxPQUFPLEtBQUE7QUFDM0Isd0JBQWdCLEVBQUUsTUFBTSxRQUFRO01BQ2xDO0FBRUEscUJBQWUsTUFBTTtBQUNyQixVQUFJLGNBQ0YsVUFBUztJQUViO0FBRUEsV0FBTztFQUNUOzs7OztFQU1BLFNBQVMsTUFBTSxRQUFRLEdBQUcsVUFBVSxvQkFBSSxPQUFLO0FBQzNDLFFBQUksUUFBUSxJQUFJLEtBQUEsRUFDZDtBQUdGLFlBQVEsSUFBSSxLQUFBO0FBRVosUUFBSSxFQUFBLFVBQVMsWUFBWSxXQUFZLElBQUksS0FBSztBQUM5QyxRQUFJLE1BQU0sV0FBVyxRQUFRLEtBQUE7QUFHN0IsYUFBUyxZQUFZLEdBQUcsWUFBWSxVQUFVLGFBQWE7QUFDekQsVUFBSSxhQUFhLElBQUksU0FBQTtBQUNyQixVQUFJLFFBQVEsV0FBVyxRQUFRLFVBQUE7QUFHL0IsZUFBUyxTQUFTLEtBQUssWUFBWSxlQUFlLFNBQUEsR0FBWTtBQUM1RCxZQUFJLEtBQUssTUFDUCxNQUFLLE1BQU0sT0FBTyxLQUFBO0FBR3BCLFlBQUksTUFBTSxhQUFhLEVBQ3JCLE1BQUssU0FBUyxNQUFNLE1BQU0sVUFBVSxPQUFBO0FBR3RDLFlBQUksS0FBSyxLQUNQLE1BQUssS0FBSyxPQUFPLEtBQUE7TUFFckI7SUFDRjtFQUNGO0VBakZBLFlBQVksWUFBWTtBQUN0QixTQUFLLGFBQWE7QUFDbEIsU0FBSyxjQUFjLEtBQUksR0FBQSwwQ0FBZSxXQUFXLFVBQVU7RUFDN0Q7QUErRUY7QUQxRkEsSUFBTSxtQ0FBYTtBQUNuQixJQUFNLGtDQUFhO0FBQ25CLElBQU0sNkJBQWE7QUFHbkIsSUFBTSxpQ0FBVztBQUdqQixJQUFNLHNDQUFpQjtBQUN2QixJQUFNLHVDQUFpQjtBQUd2QixJQUFNLGtDQUFjO0FBQ3BCLElBQU0sbUNBQWM7QUFDcEIsSUFBTSxvQ0FBYztBQUdwQixJQUFNLDBDQUEwQjtBQU1oQyxJQUFNLDhDQUEwQjtBQUNoQyxJQUFNLDZDQUEwQjtBQUNoQyxJQUFNLDZDQUEwQjtBQUNoQyxJQUFNLDRDQUEwQjtBQUVqQixJQUFNLDJDQUFOLE1BQU07OztFQWNuQixRQUFRLFFBQVEsV0FBVyxDQUFDLEdBQUc7QUFDN0IsYUFBUyxTQUFTLEtBQUssS0FBSyxRQUFRO0FBQ2xDLFVBQUksUUFBUSxNQUFNO0FBR2xCLGVBQVMsV0FBVyxNQUFNLFVBQVU7QUFDbEMsWUFBSTtBQUNKLFlBQUksSUFBSSxTQUFTLFFBQVEsV0FBVyxHQUFHO0FBQ3JDLGNBQUksRUFBRSxRQUFRLGNBQWMsR0FBRztBQUM3QixxQkFBUyxRQUFRO0FBQ2pCLHFCQUFTLFFBQVE7VUFDbkIsV0FBVyxFQUFFLFFBQVEsY0FBYyxNQUFNLE9BQU87QUFDOUMscUJBQVMsQ0FBQyxRQUFRO0FBQ2xCLHFCQUFTLENBQUMsUUFBUTtVQUNwQjtRQUNGO01BQ0Y7QUFFQSxlQUFTLFlBQVksTUFBTSxVQUN6QixLQUFJLFNBQVMsa0JBQWtCLE1BQzdCLE1BQUssZ0JBQWdCLFVBQVUsTUFBQTtJQUdyQztBQUdBLFFBQUksUUFBUSxPQUFPLFNBQVM7QUFDNUIsV0FBTyxTQUFTLEdBQUc7QUFDakIsVUFBSSxPQUFPLEtBQUEsRUFBTyxPQUFPLE1BQ3ZCLFFBQU8sT0FBTyxPQUFPLENBQUE7QUFHdkI7SUFDRjtBQUVBLFdBQU87RUFDVDtFQUVBLGdCQUFnQixVQUFVLFFBQVE7QUFDaEMsU0FBSyxXQUFXO0FBQ2hCLFNBQUssU0FBUztBQUNkLFFBQUksS0FBSyxTQUFTLFNBQVMsR0FBRztBQUM1QixXQUFLLGtDQUFrQyxLQUFLLFVBQVUsS0FBSyxNQUFNO0FBQ2pFO0lBQ0Y7QUFFQSxTQUFLLGdCQUFnQixDQUFBO0FBQ3JCLFNBQUssY0FBYztBQUNuQixTQUFLLGFBQWE7QUFDbEIsU0FBSyxZQUFZO0FBQ2pCLFNBQUssY0FBYztBQUVuQixRQUFJLGVBQWUsS0FBSyxnQkFBZ0IsUUFBQTtBQUN4QyxRQUFJTyxXQUFVLEtBQUssYUFBWTtBQUUvQixRQUFJLFVBQVUsQ0FBQyxFQUFFLEtBQUssU0FBUyxXQUFXO0FBQzFDLFdBQU8sYUFBYSxRQUFRLEtBQUssUUFBUSxTQUFTQSxRQUFBO0VBQ3BEO0VBR0EsZ0JBQWdCLFVBQVU7QUFDeEIsV0FBTyxLQUFJLEdBQUEsMENBQWdCLFNBQVMsTUFBTSxVQUFVO0VBQ3REO0VBRUEsZUFBZTtBQUNiLFlBQVEsS0FBSyxTQUFTLE1BQUk7TUFDeEIsS0FBSztBQUNILGVBQU8sS0FBSztNQUNkLEtBQUs7QUFDSCxlQUFPLEtBQUs7TUFDZCxLQUFLO0FBQ0gsZUFBTyxLQUFLO01BQ2QsS0FBSztBQUNILGVBQU8sS0FBSztNQUNkLEtBQUs7QUFDSCxlQUFPLEtBQUs7TUFDZDtBQUNFLGNBQU0sSUFBSSxNQUFNLCtCQUErQixLQUFLLFNBQVMsSUFBSSxFQUFFO0lBQ3ZFO0VBQ0Y7RUFFQSx5QkFBeUIsT0FBTyxPQUFPLE9BQU87QUFDNUMsUUFBSSxNQUFNLFFBQVEsaUNBQ2hCLE1BQUssYUFBYTtBQUdwQixRQUFJLE1BQU0sUUFBUSxnQ0FDaEIsTUFBSyxZQUFZO0FBR25CLHdDQUFjLEtBQUssUUFBUSxNQUFNLFFBQVEsNEJBQU0sS0FBSyxZQUFZLEtBQUssU0FBUztFQUNoRjtFQUVBLDhCQUE4QixPQUFPLE9BQU8sT0FBTztBQUNqRCxRQUFJLGVBQWUsS0FBSyxTQUFTLE1BQU0sa0JBQWtCO0FBQ3pELFFBQUksTUFBTSxjQUFjLE9BQVE7QUFDOUIsVUFBSSxTQUFTLGFBQWEsUUFBUSxNQUFNLFNBQVM7QUFDakQsVUFBSSxjQUFjLEtBQUksR0FBQSwwQ0FBZSxNQUFBO0FBQ3JDLGNBQVEsS0FBSyxPQUFPLEtBQUssV0FBVztBQUNwQyxVQUFJLE1BQU0sWUFBWSxPQUFPLE1BQU0sRUFBRTtBQUNyQyxVQUFJLElBQ0YsTUFBSyxPQUFPLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxTQUFTLEtBQUssTUFBTSxVQUFVO0lBRTVFO0FBRUEsUUFBSSxNQUFNLGlCQUFpQixPQUFRO0FBQ2pDLFVBQUksU0FBUyxhQUFhLFFBQVEsTUFBTSxZQUFZO0FBQ3BELFVBQUksY0FBYyxLQUFJLEdBQUEsMENBQWUsTUFBQTtBQUNyQyxjQUFRLEtBQUssT0FBTyxLQUFBO0FBQ3BCLFVBQUksTUFBTSxZQUFZLE9BQU8sTUFBTSxFQUFFO0FBQ3JDLFVBQUksSUFDRixNQUFLLE9BQU8sS0FBQSxJQUFTLEtBQUssS0FBSyxTQUFTLEtBQUssTUFBTSxVQUFVO0lBRWpFO0FBRUEsUUFBSSxNQUFNLFFBQVEsK0JBQ2hCLE1BQUssY0FBYztFQUV2QjtFQUVBLGdCQUFnQixPQUFPLE9BQU8sT0FBTztBQUNuQyxRQUFJLE1BQU0sUUFBUSxvQ0FDaEIsTUFBSyxjQUFjLEtBQUssS0FBQTtBQUcxQixRQUFJLE1BQU0sUUFBUSxzQ0FBZ0I7QUFDaEMsVUFBSSxVQUFVLEtBQUssU0FBUyxNQUFNO0FBQ2xDLFVBQUksYUFBYSxLQUFLLFNBQVMsTUFBTTtBQUNyQyxVQUFJLGVBQWUsS0FBSyxTQUFTLE1BQU07QUFFdkMsVUFBSSxjQUFjLE1BQU07QUFDeEIsVUFBSSxPQUFPO0FBQ1gsVUFBSSxnQkFBZ0I7QUFDcEIsVUFBSSxhQUFhLENBQUE7QUFDakIsVUFBSSxpQkFBaUIsQ0FBQTtBQUVyQixhQUFPLENBQUMsTUFBTTtBQUNaLFlBQUksaUJBQWlCLEtBQUssY0FBYyxJQUFHO0FBQzNDLG1CQUFXLFFBQU8sR0FBSSxLQUFLLE9BQU8sY0FBQSxFQUFnQixVQUFVO0FBRTVELFlBQUksU0FBUyxRQUFRLFFBQVEsYUFBQTtBQUM3QixlQUFPLENBQUMsRUFBRSxTQUFTO0FBQ25CLFlBQUksUUFBUSxDQUFDLEVBQUUsU0FBUztBQUN4QixZQUFJLFVBQVUsU0FBUyxzQ0FBZ0IsS0FBSztBQUM1QyxrQkFBVSxLQUFLLE9BQU8sY0FBQSxFQUFnQjtBQUV0QyxZQUFJLFlBQVksV0FBVyxRQUFRLE1BQUE7QUFDbkMseUJBQWlCO0FBRWpCLFlBQUksUUFBUSxPQUFPO0FBQ2pCLGNBQUksZ0JBQWdCLGFBQWEsUUFBUSxhQUFBO0FBQ3pDLGVBQUssT0FBTyxjQUFBLElBQWtCLEtBQUssS0FBSyxTQUFTLGVBQWUsVUFBQTtBQUNoRSx5QkFBZSxLQUFLLGNBQUE7QUFDcEIsMEJBQWdCO0FBQ2hCLHVCQUFhLENBQUE7UUFDZixNQUNFLE1BQUssT0FBTyxjQUFBLElBQWtCLEtBQUssS0FBSyxTQUFTLEtBQUE7TUFFckQ7QUFHQSxXQUFLLGNBQWMsS0FBSSxHQUFJLGNBQUE7SUFDN0I7RUFDRjtFQUVBLGtDQUFrQyxVQUFVLFFBQVEsT0FBTztBQUN6RCxRQUFJLGNBQWMsS0FBSSxHQUFBLDBDQUFlLFNBQVMsTUFBTSxXQUFXO0FBRS9ELFNBQUssUUFBUSxHQUFHLFFBQVEsT0FBTyxRQUFRLFNBQVM7QUFDOUMsVUFBSSxRQUFRLE9BQU8sS0FBQTtBQUNuQixVQUFJLE1BQU0sT0FBTyxPQUFRO0FBQ3ZCLFlBQUksTUFBTSxZQUFZLE9BQU8sTUFBTSxFQUFFO0FBQ3JDLFlBQUksSUFDRixRQUFPLEtBQUEsSUFBUyxLQUFLLEtBQUssU0FBUyxLQUFLLE1BQU0sVUFBVTtNQUU1RDtJQUNGO0VBQ0Y7RUFFQSxjQUFjLFlBQVksc0JBQXNCLE9BQU8sVUFBVTtBQUMvRCxRQUFJLGFBQWEsQ0FBQTtBQUNqQixXQUFPLFNBQVM7QUFDZCxVQUFJLE1BQU0sS0FBSyxTQUFTLE1BQU0saUJBQWlCLFFBQVEsc0JBQUE7QUFDdkQsaUJBQVcsS0FBSyxLQUFLLEtBQUssU0FBUyxHQUFBLENBQUE7SUFDckM7QUFFQSxRQUFJLENBQUMsU0FDSDtBQUdGLFNBQUssT0FBTyxPQUFPLFlBQVksR0FBQSxHQUFNLFVBQUE7RUFDdkM7RUFFQSxzQkFBc0IsT0FBTyxPQUFPLE9BQU87QUFDekMsUUFBSSxNQUFNLFFBQVEsK0JBQ2hCLE1BQUssY0FBYztBQUdyQixRQUFJLE1BQU0sc0JBQXNCLE9BQVE7QUFDdEMsVUFBSSxTQUFTLE1BQU0sUUFBUSwrQ0FBeUI7QUFDcEQsVUFBSSxXQUFXLENBQUMsRUFBRSxNQUFNLFFBQVE7QUFDaEMsV0FBSyxjQUFjLEtBQUssYUFBYSxNQUFNLG1CQUFtQixPQUFPLFFBQUE7SUFDdkU7QUFFQSxRQUFJLE1BQU0sdUJBQXVCLE9BQVE7QUFDdkMsVUFBSSxTQUFTLE1BQU0sUUFBUSxnREFBMEI7QUFDckQsVUFBSSxXQUFXLENBQUMsRUFBRSxNQUFNLFFBQVE7QUFDaEMsV0FBSyxjQUFjLE9BQU8sTUFBTSxvQkFBb0IsT0FBTyxRQUFBO0lBQzdEO0VBQ0Y7RUFFQSx1QkFBdUI7QUFDckIsUUFBSSxXQUFXLENBQUE7QUFDZixhQUFTLFNBQVMsS0FBSyxLQUFLLE9BQzFCLFVBQVMsV0FBVyxNQUFNLFNBQ3hCLFVBQVMsS0FBSztNQUFDLFFBQVE7TUFBYSxRQUFRO0tBQWU7QUFJL0QsV0FBTztFQUNUO0VBRUEsZUFBZSxLQUFLO0FBQ2xCLFFBQUksQ0FBQyxLQUFLLFdBQ1IsTUFBSyxtQkFBa0I7QUFHekIsV0FBTyxLQUFLLFdBQVcsR0FBQSxLQUFRLENBQUE7RUFDakM7RUFFQSxxQkFBcUI7QUFDbkIsU0FBSyxhQUFhLENBQUM7QUFFbkIsYUFBUyxTQUFTLEtBQUssS0FBSyxRQUFRO0FBQ2xDLFVBQUksUUFBUSxNQUFNO0FBRWxCLGVBQVMsWUFBWSxNQUFNLFVBQ3pCLEtBQUksU0FBUyxrQkFBa0IsTUFDN0IsTUFBSywwQkFBMEIsUUFBQTtJQUdyQztFQUNGO0VBRUEsMEJBQTBCLFVBQVU7QUFFbEMsUUFBSSxTQUFTLFNBQVMsRUFDcEI7QUFHRixRQUFJLFVBQVUsQ0FBQyxFQUFFLFNBQVMsV0FBVztBQUNyQyxRQUFJLFFBQ0YsT0FBTSxJQUFJLE1BQU0sa0NBQUE7QUFHbEIsU0FBSyxXQUFXO0FBQ2hCLFNBQUssZ0JBQWdCLENBQUE7QUFFckIsUUFBSSxlQUFlLEtBQUssZ0JBQWdCLFFBQUE7QUFDeEMsUUFBSUEsV0FBVSxLQUFLLGFBQVk7QUFFL0IsUUFBSSxRQUFRLENBQUE7QUFDWixRQUFJLFFBQVEsQ0FBQTtBQUNaLFNBQUssU0FBUyxDQUFBO0FBRWQsaUJBQWEsU0FBUztNQUNwQixPQUFPLENBQUMsT0FBTyxVQUFBO0FBQ2IsWUFBSSxTQUFTLEtBQUs7QUFDbEIsY0FBTSxLQUFLO1VBQ1QsUUFBUSxPQUFPLE1BQUs7VUFDcEIsZUFBZSxLQUFLLGNBQWMsTUFBSztRQUN6QyxDQUFBO0FBR0EsWUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLEtBQUE7QUFDM0IsY0FBTSxLQUFLLENBQUE7QUFDWCxlQUFPLEtBQUssTUFBTSxNQUFNLFNBQVMsQ0FBQSxDQUFFO0FBR25DLFFBQUFBLFNBQVEsT0FBTyxPQUFPLFNBQVMsQ0FBQSxHQUFJLE9BQU8sT0FBTyxTQUFTLENBQUE7QUFHMUQsWUFBSSxRQUFRO0FBQ1osWUFBSSxRQUFRO0FBQ1osaUJBQVNDLEtBQUksR0FBR0EsS0FBSSxPQUFPLFVBQVUsU0FBUyxHQUFHQSxLQUMvQyxLQUFJLE9BQU9BLEVBQUEsRUFBRyxPQUFPLE9BQVE7QUFDM0I7QUFDQSxrQkFBUSxPQUFPQSxFQUFBLEVBQUc7UUFDcEI7QUFHRixZQUFJLFVBQVUsR0FBRztBQUNmLGNBQUksU0FBUyxNQUFNLElBQUksQ0FBQUMsT0FBS0EsR0FBRSxFQUFFO0FBQ2hDLGNBQUksUUFBUSxLQUFLLFdBQVcsS0FBQTtBQUM1QixjQUFJLE1BQ0YsT0FBTSxLQUFLLE1BQUE7Y0FFWCxNQUFLLFdBQVcsS0FBQSxJQUFTO1lBQUM7O1FBRTlCO01BQ0Y7TUFFQSxNQUFNLE1BQUE7QUFDSCxTQUFBLEVBQUMsUUFBUSxLQUFLLFFBQVEsZUFBZSxLQUFLLGNBQWEsSUFBSSxNQUFNLElBQUc7QUFDckUsY0FBTSxJQUFHO01BQ1g7SUFDRixDQUFBO0VBQ0Y7RUFoVUEsWUFBWSxNQUFNO0FBQ2hCLFNBQUssMkJBQTJCLEtBQUsseUJBQXlCLEtBQUssSUFBSTtBQUN2RSxTQUFLLGdDQUFnQyxLQUFLLDhCQUE4QixLQUFLLElBQUk7QUFDakYsU0FBSyxrQkFBa0IsS0FBSyxnQkFBZ0IsS0FBSyxJQUFJO0FBQ3JELFNBQUssb0NBQW9DLEtBQUssa0NBQWtDLEtBQUssSUFBSTtBQUN6RixTQUFLLHdCQUF3QixLQUFLLHNCQUFzQixLQUFLLElBQUk7QUFDakUsU0FBSyxPQUFPO0FBQ1osU0FBSyxPQUFPLEtBQUs7QUFDakIsU0FBSyxhQUFhO0VBQ3BCO0FBd1RGOzs7O0FBS0EsU0FBUywyQkFBSyxRQUFRLFFBQVEsUUFBUSxXQUFXLE9BQU8sV0FBVyxPQUFLO0FBQ3RFLE1BQUksTUFBTSxPQUFPLE9BQU8sT0FBTyxDQUFBLEtBQU0sT0FBTyxDQUFBLElBQUssSUFBSSxPQUFPLENBQUEsQ0FBRTtBQUM5RCxNQUFJLFNBQ0YsS0FBSSxRQUFPO0FBR2IsTUFBSSxRQUFRLE9BQU8sT0FBTyxPQUFPLENBQUEsR0FBSSxPQUFPLENBQUEsR0FBRSxHQUFLLEdBQUE7QUFDbkQsTUFBSSxTQUNGLE9BQU0sUUFBTztBQUdmLFNBQU8sT0FBTyxPQUFPLENBQUEsS0FBTSxPQUFPLENBQUEsSUFBSyxJQUFJLEdBQUEsR0FBTSxLQUFBO0FBQ2pELFNBQU87QUFDVDtBQUVBLFNBQVMsb0NBQWMsUUFBUSxNQUFNLFlBQVksV0FBUztBQUN4RCxNQUFJQyxVQUFTLFlBQVksYUFBYTtBQUN0QyxVQUFRLE1BQUE7SUFDTixLQUFLO0FBQ0gsYUFBTztJQUVULEtBQUs7QUFDSCxhQUFPLDJCQUFLLFFBQVE7UUFBQztRQUFZO1NBQUk7UUFBQztRQUFXO09BQUU7SUFFckQsS0FBSztBQUNILGFBQU8sMkJBQUssUUFBUTtRQUFDO1FBQVk7U0FBSTtRQUFDO1FBQVc7T0FBRTtJQUVyRCxLQUFLO0FBQ0gsYUFBTywyQkFBSyxRQUFRO1FBQUM7UUFBWTtTQUFJO1FBQUM7UUFBVztPQUFFO0lBRXJELEtBQUs7QUFDSCxhQUFPLDJCQUFLLFFBQVE7UUFBQztRQUFZO1NBQUk7UUFBQztRQUFXO09BQUU7SUFFckQsS0FBSztBQUNILGFBQU8sMkJBQUssUUFBUTtRQUFDO1FBQVk7U0FBSTtRQUFDO1FBQVc7U0FBSSxNQUFNLEtBQUE7SUFFN0QsS0FBSztBQUNILGFBQU8sMkJBQUssUUFBUTtRQUFDO1FBQVk7U0FBSTtRQUFDO1FBQVc7T0FBRTtJQUVyRCxLQUFLO0FBQ0gsYUFBTywyQkFBSyxRQUFRO1FBQUM7UUFBWTtTQUFJO1FBQUM7UUFBVztTQUFJLE9BQU8sSUFBQTtJQUU5RCxLQUFLO0FBQ0gsYUFBTywyQkFBSyxRQUFRO1FBQUM7UUFBWTtTQUFJO1FBQUM7UUFBVztPQUFFO0lBRXJELEtBQUs7QUFDSCxhQUFPLDJCQUFLLFFBQVE7UUFBQztRQUFZO1NBQUk7UUFBQztRQUFXO1NBQUksT0FBTyxJQUFBO0lBRTlELEtBQUs7QUFDSCxhQUFPLDJCQUFLLFFBQVE7UUFBQztRQUFZO1NBQUk7UUFBQztRQUFXO09BQUU7SUFFckQsS0FBSztBQUNILGFBQU8sMkJBQUssUUFBUTtRQUFDO1FBQVk7U0FBSTtRQUFDO1FBQVc7U0FBSSxNQUFNLEtBQUE7SUFFN0QsS0FBSztBQUNILGFBQU8sMkJBQUssUUFBUTtRQUFDO1FBQVk7U0FBSTtRQUFDO1FBQVc7T0FBRTtJQUVyRCxLQUFLO0FBQ0gsYUFBTywyQkFBSyxRQUFRO1FBQUM7UUFBWTtTQUFJO1FBQUM7UUFBVztTQUFJLE1BQU0sS0FBQTtJQUU3RCxLQUFLO0FBQ0gsYUFBTywyQkFBSyxRQUFRO1FBQUM7UUFBWTtTQUFJO1FBQUM7UUFBVztTQUFJLE9BQU8sSUFBQTtJQUU5RCxLQUFLO0FBQ0gsYUFBTywyQkFBSyxRQUFRO1FBQUM7UUFBWTtTQUFJO1FBQUM7UUFBVztTQUFJLE1BQU0sSUFBQTtJQUU3RDtBQUNFLFlBQU0sSUFBSSxNQUFNLGlCQUFpQixJQUFBLEVBQU07RUFDM0M7QUFDRjtBRnphZSxJQUFNLDJDQUFOLE1BQU07RUFPbkIsV0FBVyxVQUFVO0FBR25CLFFBQUksU0FBUyxjQUFjLE1BQ3pCLFVBQVMsT0FBTyxRQUFPO0FBR3pCLFNBQUssY0FBYyxRQUFRLFNBQVMsUUFBUSwwQ0FBeUIsU0FBUyxRQUFRLENBQUE7RUFDeEY7RUFFQSxxQkFBcUIsUUFBUSxVQUFVO0FBQ3JDLFdBQU8sMENBQXlCLEtBQUssY0FBYyxxQkFBb0IsQ0FBQTtFQUN6RTtFQUVBLGdCQUFnQixLQUFLO0FBQ25CLFFBQUksZUFBZSxLQUFLLGNBQWMsZUFBZSxHQUFBO0FBQ3JELFFBQUksU0FBUyxvQkFBSTtBQUVqQixhQUFTLFVBQVUsYUFDakIsTUFBSyxZQUFZLFFBQVEsR0FBRyxRQUFRLEVBQUE7QUFHdEMsV0FBTztFQUNUO0VBRUEsWUFBWSxRQUFRLE9BQU8sU0FBUyxRQUFRO0FBQzFDLFFBQUksYUFBYSxLQUFLLEtBQUssZUFBZSxtQkFBbUIsT0FBTyxLQUFBLENBQU07QUFFMUUsYUFBUyxhQUFhLFlBQVk7QUFDaEMsVUFBSSxJQUFJLFNBQVMsT0FBTyxjQUFjLFNBQUE7QUFDdEMsVUFBSSxRQUFRLE9BQU8sU0FBUyxFQUMxQixNQUFLLFlBQVksUUFBUSxRQUFRLEdBQUcsU0FBUyxDQUFBO1VBRTdDLFNBQVEsSUFBSSxDQUFBO0lBRWhCO0VBQ0Y7RUExQ0EsWUFBWSxNQUFNO0FBQ2hCLFNBQUssT0FBTztBQUNaLFNBQUssZ0JBQWdCLEtBQUksR0FBQSwwQ0FBaUIsSUFBQTtBQUMxQyxTQUFLLG1CQUFtQjtFQUMxQjtBQXVDRjtBTXJDZSxJQUFNLDJDQUFOLE1BQU07Ozs7O0VBY25CLGFBQWEsVUFBVUMsU0FBUTtBQUM3QixRQUFJLGFBQWEsS0FBSyxPQUFPLFNBQVM7QUFDdEMsUUFBSSxRQUFRLEtBQUssT0FBTyxVQUFBO0FBQ3hCLGFBQVMsV0FBVyxTQUNsQixLQUFJLEtBQUssWUFBWSxPQUFBLEtBQVksTUFBTTtBQUNyQyxZQUFNLEtBQUssT0FBQTtBQUNYLFdBQUssWUFBWSxPQUFBLElBQVc7QUFFNUIsVUFBSUEsUUFDRixNQUFLLGVBQWUsT0FBQSxJQUFXO0lBRW5DO0VBRUo7Ozs7RUFLQSxJQUFJLEtBQUtBLFVBQVMsTUFBTTtBQUN0QixRQUFJLEtBQUssT0FBTyxXQUFXLEVBQ3pCLE1BQUssT0FBTyxLQUFLLENBQUEsQ0FBRTtBQUdyQixRQUFJLE9BQU8sUUFBUSxTQUNqQixPQUFNO01BQUM7O0FBR1QsUUFBSSxNQUFNLFFBQVEsR0FBQSxFQUNoQixNQUFLLGFBQWEsS0FBS0EsT0FBQTthQUNkLE9BQU8sUUFBUSxVQUFVO0FBQ2xDLFdBQUssYUFBYSxJQUFJLFVBQVUsQ0FBQSxHQUFJLElBQUE7QUFDcEMsV0FBSyxhQUFhLElBQUksU0FBUyxDQUFBLEdBQUksS0FBQTtJQUNyQyxNQUNFLE9BQU0sSUFBSSxNQUFNLHlDQUFBO0VBRXBCOzs7O0VBS0EsU0FBUyxLQUFLQSxTQUFRO0FBQ3BCLFFBQUksT0FBTyxRQUFRLFdBQ2pCLE1BQUssT0FBTyxLQUFLLEtBQUssQ0FBQSxDQUFFO1NBQ25CO0FBQ0wsV0FBSyxPQUFPLEtBQUssQ0FBQSxDQUFFO0FBQ25CLFdBQUssSUFBSSxLQUFLQSxPQUFBO0lBQ2hCO0VBQ0Y7RUFFQSxvQkFBb0IsVUFBVTtBQUM1QixRQUFJLE1BQU0sUUFBUSxRQUFBLEVBQ2hCLE1BQUssSUFBSSxRQUFBO2FBQ0EsT0FBTyxhQUFhLFNBQzdCLFVBQVNDLFFBQU8sVUFBVTtBQUN4QixVQUFJLFNBQVNBLElBQUEsRUFDWCxNQUFLLElBQUlBLElBQUE7ZUFDQSxLQUFLLFlBQVlBLElBQUEsS0FBUSxNQUFNO0FBQ3hDLFlBQUksUUFBUSxLQUFLLE9BQU8sS0FBSyxZQUFZQSxJQUFBLENBQUk7QUFDN0MsY0FBTSxPQUFPLE1BQU0sUUFBUUEsSUFBQSxHQUFNLENBQUE7QUFDakMsZUFBTyxLQUFLLFlBQVlBLElBQUE7QUFDeEIsZUFBTyxLQUFLLGVBQWVBLElBQUE7TUFDN0I7SUFDRjtFQUVKOzs7O0VBS0EscUJBQXFCLFFBQVE7QUFDM0IsYUFBUyxTQUFTLE9BQ2hCLFVBQVMsV0FBVyxLQUFLLGVBQ3ZCLE9BQU0sU0FBUyxPQUFBLElBQVc7RUFHaEM7Ozs7RUFLQSxRQUFRLFdBQVcsUUFBUSxXQUFXO0FBQ3BDLGFBQVMsU0FBUyxLQUFLLFFBQVE7QUFDN0IsVUFBSSxPQUFPLFVBQVUsWUFDbkI7QUFBQSxZQUFJLENBQUMsVUFDSCxPQUFNLEtBQUssTUFBTSxRQUFRLElBQUk7TUFDL0IsV0FFUyxNQUFNLFNBQVMsRUFDeEIsV0FBVSxjQUFjLE9BQU8sUUFBUSxTQUFBO0lBRTNDO0VBQ0Y7RUF4R0EsWUFBWSxNQUFNLFFBQVEsV0FBVztBQUNuQyxTQUFLLE9BQU87QUFDWixTQUFLLFNBQVM7QUFDZCxTQUFLLFlBQVk7QUFDakIsU0FBSyxTQUFTLENBQUE7QUFDZCxTQUFLLGlCQUFpQixDQUFDO0FBQ3ZCLFNBQUssY0FBYyxDQUFDO0VBQ3RCO0FBa0dGO0FFbkhBLElBQU0sMkNBQXFCO0VBQUM7O0FBQzVCLElBQU0sd0NBQWtCO0VBQUM7RUFBUTtFQUFRO0VBQVE7RUFBUTs7QUFDekQsSUFBTSw0Q0FBc0I7RUFBQztFQUFRO0VBQVE7O0FBQzdDLElBQU0sNENBQXNCO0VBQUM7RUFBUTtFQUFRO0VBQVE7RUFBUTtFQUFROztBQUVyRSxJQUFNLDZDQUF1QjtFQUMzQixLQUFLO0lBQUM7SUFBUTs7RUFDZCxLQUFLO0lBQUM7SUFBUTs7QUFDaEI7QUFFZSxJQUFNLDJDQUFOLE1BQU07RUFFbkIsT0FBTyxLQUFLLE1BQU0sUUFBUSxVQUFVO0FBRWxDLFNBQUssa0JBQWtCLElBQUE7QUFDdkIsU0FBSyxhQUFhLElBQUE7QUFDbEIsU0FBSyxtQkFBbUIsTUFBTSxRQUFBO0FBRzlCLFNBQUsscUJBQXFCLE1BQUE7QUFHMUIsU0FBSyxlQUFlLE1BQU0sTUFBQTtFQUM1QjtFQUVBLE9BQU8sa0JBQWtCLE1BQU07QUFDN0IsU0FBSyxJQUFJO01BQ1AsUUFBUTtXQUFJO1dBQXVCLDJDQUFxQixLQUFLLFNBQVM7O01BQ3RFLE9BQU87SUFDVCxDQUFBO0VBQ0Y7RUFFQSxPQUFPLGFBQWEsTUFBTTtFQUUxQjtFQUVBLE9BQU8sbUJBQW1CLE1BQU0sY0FBYztBQUM1QyxTQUFLLElBQUk7U0FBSTtTQUFvQjtLQUFvQjtBQUNyRCxTQUFLLG9CQUFvQixZQUFBO0VBQzNCO0VBRUEsT0FBTyxlQUFlLE1BQU0sUUFBUTtBQUVsQyxhQUFTQyxLQUFJLEdBQUdBLEtBQUksT0FBTyxRQUFRQSxNQUFLO0FBQ3RDLFVBQUksUUFBUSxPQUFPQSxFQUFBO0FBQ25CLFVBQUksTUFBTSxXQUFXLENBQUEsTUFBTyxNQUFRO0FBQ2xDLFlBQUksUUFBUUE7QUFDWixZQUFJLE1BQU1BLEtBQUk7QUFHZCxlQUFPLFFBQVEsTUFBSyxHQUFBLDJDQUFRLE9BQU8sUUFBUSxDQUFBLEVBQUcsV0FBVyxDQUFBLENBQUUsR0FBRztBQUM1RCxpQkFBTyxRQUFRLENBQUEsRUFBRyxTQUFTLE9BQU87QUFDbEMsaUJBQU8sUUFBUSxDQUFBLEVBQUcsU0FBUyxPQUFPO0FBQ2xDO1FBQ0Y7QUFHQSxlQUFPLE1BQU0sT0FBTyxXQUFVLEdBQUEsMkNBQVEsT0FBTyxHQUFBLEVBQUssV0FBVyxDQUFBLENBQUUsR0FBRztBQUNoRSxpQkFBTyxHQUFBLEVBQUssU0FBUyxPQUFPO0FBQzVCLGlCQUFPLEdBQUEsRUFBSyxTQUFTLE9BQU87QUFDNUI7UUFDRjtBQUdBLGNBQU0sU0FBUyxPQUFPO0FBQ3RCLFFBQUFBLEtBQUksTUFBTTtNQUNaO0lBQ0Y7RUFDRjtBQUNGO0NBMURFLEdBQUEsa0JBRG1CLDBDQUNaLGtCQUFpQixZQUFBO0FDUjFCLElBQU0sNkJBQU8sS0FBSSxHQUFBLHFCQUFBQyxVQUFZLEdBQUEsMkNBQVcsa3NCQUFBLENBQUE7QUFDeEMsSUFBTSxpQ0FBVztFQUFDO0VBQVE7RUFBUTtFQUFRO0VBQVE7RUFBUTtFQUFROztBQUVsRSxJQUFNLHVDQUFpQjtFQUNyQixhQUFhO0VBQ2IsY0FBYztFQUNkLGVBQWU7RUFDZixjQUFjO0VBQ2QsY0FBYztFQUNkLE9BQU87RUFDUCxlQUFlO0VBQ2YsYUFBYTtBQUNmO0FBRUEsSUFBTSw2QkFBTztBQUNiLElBQU0sNkJBQU87QUFDYixJQUFNLDZCQUFPO0FBQ2IsSUFBTSw2QkFBTztBQUNiLElBQU0sNkJBQU87QUFDYixJQUFNLDZCQUFPO0FBQ2IsSUFBTSw2QkFBTztBQUNiLElBQU0sNkJBQU87QUFHYixJQUFNLG9DQUFjOzs7RUFHbEI7SUFBRTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7OztFQUdwSDtJQUFFO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOzs7O0VBR3BIO0lBQUU7TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07Ozs7RUFHcEg7SUFBRTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7OztFQUdwSDtJQUFFO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOztJQUFNO01BQUU7TUFBTTtNQUFNOzs7O0VBR3BIO0lBQUU7TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07O0lBQU07TUFBRTtNQUFNO01BQU07Ozs7RUFHcEg7SUFBRTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7SUFBTTtNQUFFO01BQU07TUFBTTs7OztBQVd2RyxJQUFNLDJDQUFOLGVBQTJCLEdBQUEsMENB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QUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFFTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7OztFQUdOLE9BQU0sR0FBQTtFQUNOLE9BQU0sR0FBQTs7O0VBR04sT0FBTSxHQUFBOzs7RUFHTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7RUFFTixPQUFNLEdBQUE7RUFDTixPQUFNLEdBQUE7QUFDUjtBQUVPLFNBQVMsMENBQU8sUUFBTTtBQUMzQixNQUFJLENBQUMsTUFB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LElBQ1I7QUFBQSxFQUNGO0FBQ0Y7OztBQzVFZSxTQUFSLEtBQXNCLFFBQWdCQyxNQUFvQjtBQUMvRCxRQUFNLGFBQWEsSUFBSSxtQkFBbUI7QUFDMUMsYUFBVyxXQUFXLE1BQU07QUFDNUIsTUFBSSxPQUFPLE9BQU8sSUFBSSxFQUFFLFNBQVMsTUFBTTtBQUNyQyxRQUFJO0FBQ0YsaUJBQVcsS0FBSyxPQUFPLFVBQVU7QUFBQSxJQUNuQyxTQUFTQyxRQUFPO0FBQ2QsTUFBQUQsS0FBSSxNQUFNLEdBQUdDLE1BQUssRUFBRTtBQUFBLElBQ3RCO0FBQUEsRUFDRjtBQUNGOzs7QUNsQkEsZUFBc0IsaUJBQWdDO0FBQ3BELFFBQU1DLE9BQU0sSUFBSSxRQUFRLHdCQUF3QjtBQUNoRCxRQUFNLFNBQVMsSUFBSSxPQUFPO0FBQzFCLFFBQU0sWUFBWSxJQUFJLGdCQUFnQixRQUFRQSxJQUFHO0FBQ2pELFFBQU0sVUFBVSxTQUFTO0FBQ3pCLFNBQU8sS0FBSyxRQUFRQSxJQUFHO0FBQ3pCO0FBRUEsTUFBTSxlQUFlOyIsCiAgIm5hbWVzIjogWyJvcyIsICJmcyIsICJvcyIsICJkZWxpbWl0ZXIiLCAieCIsICJzZWxmIiwgIm9wdGlvbnMiLCAiaSIsICJlcnJvciIsICJzb2NrZXQiLCAicmVxdWlyZV90dW5uZWwiLCAiZGF0YSIsICJpIiwgIkJsb2IiLCAicGF0aCIsICJpZHgiLCAic3RyZWFtIiwgImVyciIsICJpIiwgIngiLCAibiIsICJpIiwgImRhdGEiLCAibiIsICJzZWxmIiwgImRhdGEiLCAiaSIsICJzZWxmIiwgImRhdGEiLCAiaSIsICJuIiwgImkiLCAiYmFzZW5hbWUiLCAicGF0aCIsICJpIiwgImJhc2VuYW1lIiwgImkiLCAic2VsZiIsICJuIiwgImRhdGEiLCAiaSIsICJpIiwgImRhdGEiLCAicmVxdWlyZV9jb25zdGFudHMiLCAiRE9NRXhjZXB0aW9uIiwgInN0cnVjdHVyZWRDbG9uZSIsICJyZXF1aXJlX3V0aWwiLCAicGVyZm9ybWFuY2UiLCAibGVuZ3RoIiwgImkiLCAiQSIsICJyZXNvbHZlIiwgImtpbmQiLCAiYnl0ZUxlbmd0aCIsICJyZXF1aXJlX3N5bWJvbHMiLCAibGVuZ3RoIiwgIngiLCAibiIsICJrZXlzIiwgImkiLCAiYXRvYiIsICJwb3NpdGlvbiIsICJpIiwgImRhdGEiLCAiQmxvYiIsICJuIiwgIkJsb2IiLCAiZW50cnkiLCAiRE9NRXhjZXB0aW9uIiwgIkJsb2IiLCAidGV4dEVuY29kZXIiLCAibGVuZ3RoIiwgImNodW5rIiwgIm1ldGhvZHMiLCAicmVzb2x2ZSIsICJlcnJvciIsICJkYXRhIiwgInBhdGgiLCAiaSIsICJlcnJvciIsICJpIiwgInJlc29sdmUiLCAiZGF0YSIsICJlcnIiLCAiZGlzcGF0Y2giLCAic2Vzc2lvbiIsICJvbkNvbm5lY3RUaW1lb3V0IiwgIkVSUk9SIiwgIlRZUEUiLCAiRkxBR1MiLCAiTEVOSUVOVF9GTEFHUyIsICJNRVRIT0RTIiwgIkZJTklTSCIsICJpIiwgIkhFQURFUl9TVEFURSIsICJkaXNwYXRjaCIsICJlcnJvciIsICJwYXRoIiwgImkiLCAiZGlzcGF0Y2giLCAiY29ubmVjdCIsICJyZXNvbHZlIiwgImkiLCAiZXhwb3J0cyIsICJkYXRhIiwgInBhcnNlciIsICJzb2NrZXQiLCAicmVxdWVzdCIsICJwYXRoIiwgImhlYWRlcnMiLCAiZXJyIiwgImRhdGEiLCAibmV4dCIsICJzaXplIiwgInJlc29sdmUiLCAib3JpZ2luIiwgImVycm9yIiwgImRpc3BhdGNoZXIiLCAicG9vbCIsICJkaXNwYXRjaGVyIiwgIldlYWtSZWYiLCAiQmxvYiIsICJub29wIiwgInJlc29sdmUiLCAic2VsZiIsICJjb25zdW1lIiwgImxlbmd0aCIsICJyZXF1aXJlX3V0aWwiLCAic2VsZiIsICJyZXNvbHZlIiwgImRhdGEiLCAiY2FsbGJhY2siLCAicmVzIiwgIm9wYXF1ZSIsICJyZXNvbHZlIiwgImRhdGEiLCAiYm9keSIsICJyZXNvbHZlIiwgImRhdGEiLCAicmVzb2x2ZSIsICJkYXRhIiwgImkiLCAibW9ja0Rpc3BhdGNoIiwgInBhdGgiLCAiZGF0YSIsICJkaXNwYXRjaCIsICJ4IiwgImVycm9yIiwgImRhdGEiLCAic3RhdHVzQ29kZSIsICJyZXNwb25zZU9wdGlvbnMiLCAibmV3TW9ja0Rpc3BhdGNoIiwgImVycm9yIiwgInBhdGgiLCAiZGlzcGF0Y2giLCAiVVJMIiwgIm9wdHMiLCAiaSIsICJtZXRob2RzIiwgInNpemUiLCAiZXJyIiwgInJlcXVpcmVfZ2xvYmFsIiwgImkiLCAiZGVsaW1pdGVyIiwgIm5hbWVzIiwgIkRPTUV4Y2VwdGlvbiIsICJ0ZXh0RW5jb2RlciIsICJkYXRhIiwgInJlcXVpcmVfcmVxdWVzdCIsICJ3aW5kb3ciLCAiYWMiLCAiRE9NRXhjZXB0aW9uIiwgImVycm9yIiwgImdsb2JhbFRoaXMiLCAibGVuZ3RoIiwgImRpc3BhdGNoIiwgInJlc29sdmUiLCAibiIsICJ4IiwgInJlcXVpcmVfc3ltYm9scyIsICJyZXF1aXJlX3V0aWwiLCAiRE9NRXhjZXB0aW9uIiwgImJ0b2EiLCAiZXJyb3IiLCAidHlwZSIsICJzaXplIiwgInJlcXVpcmVfc3ltYm9scyIsICJyZXF1aXJlX3V0aWwiLCAiQSIsICJyZXF1ZXN0IiwgImNhY2hlIiwgInJlcXVpcmVfY29uc3RhbnRzIiwgInJlcXVpcmVfdXRpbCIsICJwYXRoIiwgInBvc2l0aW9uIiwgInJlcXVpcmVfY29uc3RhbnRzIiwgInJlcXVpcmVfc3ltYm9scyIsICJkYXRhIiwgInJlcXVpcmVfdXRpbCIsICJkYXRhIiwgImVycm9yIiwgImRhdGEiLCAiaSIsICJib2R5IiwgImxvd2VyIiwgIm4iLCAibmV4dCIsICJsZW5ndGgiLCAiZGF0YSIsICJET01FeGNlcHRpb24iLCAiZGF0YSIsICJwYXJzZXIiLCAicGF0aCIsICJIdHRwQ29kZXMiLCAiSGVhZGVycyIsICJNZWRpYVR5cGVzIiwgInJlc29sdmUiLCAiZGF0YSIsICJpbmZvIiwgImVycm9yIiwgIndyaXRlRmlsZSIsICJ0YWciLCAiYXR0cnMiLCAiZGF0YSIsICJ3aWR0aCIsICJoZWlnaHQiLCAicGF0aCIsICJmcyIsICJwYXRoIiwgIl9hIiwgInBhdGgiLCAib3MiLCAicGF0aCIsICJkYXRhIiwgIm4iLCAieCIsICJpIiwgInJlc29sdmUiLCAiZXJyb3IiLCAiZGF0YSIsICJvcyIsICJwYXRoIiwgIkV4aXRDb2RlIiwgIngiLCAic2V0T3V0cHV0IiwgInNldEZhaWxlZCIsICJlcnJvciIsICJpc0RlYnVnIiwgImluZm8iLCAic3RhcnRHcm91cCIsICJlbmRHcm91cCIsICJDb250ZXh0IiwgInBhdGgiLCAiZ2xvYmFsIiwgImV4cG9ydHMiLCAiZXJyb3IiLCAicmVzb2x2ZSIsICJyZWplY3QiLCAiYXBwbHlFYWNoIiwgImFyciIsICJpbmRleCIsICJpIiwgIm5leHQiLCAibGVuZ3RoIiwgIm1hcCIsICJub2RlIiwgIm9uIiwgIm9uY2UiLCAib2ZmIiwgImRhdGEiLCAicHJvbWlzZUNhbGxiYWNrIiwgIngiLCAiZmlsdGVyIiwgImxvZyIsICJ5IiwgImFycmF5IiwgImluZm8iLCAic2l6ZSIsICJuIiwgInRyYW5zZm9ybSIsICJ3aGl0ZXNwYWNlIiwgInAiLCAibmwiLCAiaSIsICJwYXRoIiwgImkiLCAic2VsZiIsICJmcyIsICJuZXh0IiwgImRhdGEiLCAibWFwIiwgImVycm9yIiwgIlByb3ZpZGVyIiwgInN0b3JlIiwgInNlbGYiLCAibmFtZXMiLCAibmV4dCIsICJpIiwgImRhdGEiLCAiZnMiLCAicGF0aCIsICJpIiwgInkxOG4iLCAicmVxdWlyZV9idWlsZCIsICJmcyIsICJwYXRoIiwgImNhbWVsQ2FzZSIsICJpIiwgImRlY2FtZWxpemUiLCAieCIsICJEZWZhdWx0VmFsdWVzRm9yVHlwZUtleSIsICJtaXhpbiIsICJrZXkiLCAiZXJyb3IiLCAibmV4dCIsICJhcmdzIiwgInZhbHVlIiwgInZhbCIsICJhcmd2IiwgInByZXYiLCAiZW52IiwgImFsaWFzZXMiLCAiZGVmYXVsdHMiLCAieSIsICJzZWxmIiwgInBhcnNlciIsICJ3aWR0aCIsICJpIiwgInJnYiIsICJ5IiwgIngiLCAiaSIsICJuIiwgInkyIiwgIngyIiwgImkiLCAibm9kZSIsICJmcm9tIiwgInRvIiwgInBhdGgiLCAiaSIsICJ3cmFwQW5zaTE2IiwgIndyYXBBbnNpMjU2IiwgIndyYXBBbnNpMTZtIiwgInJnYiIsICJuIiwgInN0eWxlcyIsICJhc3NlbWJsZVN0eWxlcyIsICJhbnNpU3R5bGVzIiwgInZpc2libGUiLCAiY29kZSIsICJyZXF1aXJlX2J1aWxkIiwgIm1peGluIiwgImkiLCAid2lkdGgiLCAiZGlybmFtZSIsICJyZXNvbHZlIiwgInN0YXRTeW5jIiwgInBvc2l0aW9uIiwgInN0YWNrIiwgImZzIiwgImpvaW4iLCAicmVzb2x2ZSIsICJkaXJuYW1lIiwgInBhdGgiLCAicmVxdWlyZV9idWlsZCIsICJjbWQiLCAiaSIsICJwb3NpdGlvbiIsICJsZW5ndGgiLCAic2hpbSIsICJmaWx0ZXIiLCAidXNhZ2UiLCAidmFsaWRhdGlvbiIsICJzZWxmIiwgImNvbW1hbmQiLCAieWFyZ3MiLCAiZXJyb3IiLCAiYyIsICJ5MThuIiwgIndpZHRoIiwgImFycmF5IiwgIm1heFdpZHRoIiwgImFyZ3YiLCAiY29tcGxldGlvbnMiLCAieSIsICJrZXkiLCAiZ2xvYmFsIiwgIngiLCAiayIsICJ0eXBlIiwgInZhbHVlIiwgInBhcnNlRm4iLCAiZ2xvYmFscyIsICJuYW1lcyIsICJoaWRlIiwgImNvbXBsZXRpb24iLCAicmVhZEZpbGVTeW5jIiwgInJlc29sdmUiLCAic2VsZiIsICJzZWxmIiwgImVudiIsICJkYXRhIiwgInNlbGYiLCAicmVxdWlyZV9maWxlIiwgImZzIiwgInBhdGgiLCAiZXhpc3RzU3luYyIsICJmb3JtYXQiLCAic2VsZiIsICJleGlzdHMiLCAiZGF0YSIsICJleCIsICJMaXRlcmFsIiwgIlByb3ZpZGVyIiwgIm5jb25mIiwgIm5vZGUiLCAibm9kZSIsICJwYXRoIiwgImkiLCAiZXJyb3IiLCAidGFnIiwgIm5vZGUiLCAicm9vdCIsICJub2RlIiwgImkiLCAiZXJyb3IiLCAiaSIsICJpIiwgImRhdGEiLCAicmVzIiwgInJlcyIsICJOb2RlIiwgIm5vZGUiLCAiYW5jaG9ycyIsICJkYXRhIiwgIk5vZGUiLCAibWFwIiwgIm5vZGUiLCAiTm9kZSIsICJwYXRoIiwgImkiLCAibm9kZSIsICJuIiwgImNvbW1lbnQiLCAicHJldiIsICJpIiwgIm5leHQiLCAiZW5kIiwgImkiLCAiY29tbWVudCIsICJ0YWciLCAibm9kZSIsICJ0YWciLCAidGFnIiwgIm1hcCIsICJ2YWx1ZSIsICJsb2ciLCAibWFwIiwgIm5vZGUiLCAic3RyaW5naWZ5IiwgImNvbW1lbnQiLCAiaSIsICJzdHIiLCAibWFwIiwgInByZXYiLCAiaSIsICJub2RlIiwgIm1hcCIsICJwcmV2IiwgImkiLCAic2VxIiwgImZvcm1hdCIsICJ0YWciLCAibiIsICJpIiwgIm5vZGUiLCAibm9kZSIsICJtYXAiLCAicmVxdWlyZV9zY2hlbWEiLCAibWFwIiwgImkiLCAiY29tbWVudCIsICJuIiwgImkiLCAicGFpcnMiLCAibWFwIiwgIm9tYXAiLCAicmVxdWlyZV9ib29sIiwgInJlcXVpcmVfZmxvYXQiLCAibm9kZSIsICJyZXF1aXJlX2ludCIsICJuIiwgIm5vZGUiLCAicHJldiIsICJzZXQiLCAibWFwIiwgIm4iLCAicmVzIiwgIm5vZGUiLCAicmVxdWlyZV9zY2hlbWEiLCAibWFwIiwgIm1hcCIsICJ0YWciLCAidGFncyIsICJtYXAiLCAiRG9jdW1lbnQiLCAicGF0aCIsICJub2RlIiwgInByZXYiLCAidGFnIiwgInJlcyIsICJyZXF1aXJlX2Vycm9ycyIsICJlcnJvciIsICJwcmV2IiwgIm5leHQiLCAiY29tbWVudCIsICJ0YWciLCAidGFnIiwgIm1hcCIsICJ0YWciLCAibm9kZSIsICJjb21tZW50IiwgInRhZyIsICJpIiwgInByZXYiLCAibWFwIiwgInRhZyIsICJubCIsICJub2RlIiwgImkiLCAidmFsdWUiLCAiZW5kIiwgImVycm9yIiwgIm4iLCAiY29tbWVudCIsICJsZW5ndGgiLCAiaSIsICJuZXh0IiwgImxlbmd0aCIsICJjb21tZW50IiwgInRhZyIsICJlcnJvciIsICJiZWZvcmUiLCAiaSIsICJjb21tZW50IiwgInRhZyIsICJub2RlIiwgImJlZm9yZSIsICJEb2N1bWVudCIsICJEb2N1bWVudCIsICJjb21tZW50IiwgImkiLCAiZXJyb3IiLCAibmwiLCAicGF0aCIsICJpIiwgIm5leHQiLCAiaSIsICJuIiwgIm5sIiwgImNoIiwgImkiLCAicHJldiIsICJuIiwgImVycm9yIiwgIm1hcCIsICJubCIsICJzdGFydCIsICJmcyIsICJEb2N1bWVudCIsICJsb2ciLCAicGFyc2VyIiwgImxpbmVDb3VudGVyIiwgIkRvY3VtZW50IiwgInBhcnNlciIsICJyb290IiwgIm1vZHVsZSIsICJleHBvcnRzIiwgImFycmF5IiwgImxlbmd0aCIsICJpIiwgInBhdGgiLCAiZnJvbSIsICJlcnJvciIsICJ0YWciLCAiY3JlYXRlIiwgIm5leHQiLCAiJCIsICJoaWRlIiwgIm1ldGhvZHMiLCAiZ2xvYmFsIiwgImRvY3VtZW50IiwgImRhdGEiLCAiaHRtbCIsICJuYW1lcyIsICJwcm90byIsICJSZWZsZWN0IiwgInBvc2l0aW9uIiwgInNpemUiLCAiU3ltYm9sIiwgInBvaW50IiwgIkljb24iLCAibmFtZSIsICJjb250ZW50cyIsICJ0YWdzIiwgImF0dHJzIiwgIkRFRkFVTFRfQVRUUlMiLCAiY2xhc3MiLCAiY29tYmluZWRBdHRycyIsICJhdHRyc1RvU3RyaW5nIiwgIk9iamVjdCIsICJrZXlzIiwgIm1hcCIsICJrZXkiLCAiam9pbiIsICJpY29ucyIsICJyZWR1Y2UiLCAib2JqZWN0IiwgImljb24iLCAidG9TdmciLCAicmVwbGFjZSIsICJFcnJvciIsICJlbGVtZW50c1RvUmVwbGFjZSIsICJxdWVyeVNlbGVjdG9yQWxsIiwgIkFycmF5IiwgImZvckVhY2giLCAicmVwbGFjZUVsZW1lbnQiLCAiZWxlbWVudCIsICJlbGVtZW50QXR0cnMiLCAiZ2V0QXR0cnMiLCAidW5kZWZpbmVkIiwgImNvbnNvbGUiLCAid2FybiIsICJzdmdTdHJpbmciLCAic3ZnRG9jdW1lbnQiLCAiRE9NUGFyc2VyIiwgInBhcnNlRnJvbVN0cmluZyIsICJzdmdFbGVtZW50IiwgInF1ZXJ5U2VsZWN0b3IiLCAicGFyZW50Tm9kZSIsICJyZXBsYWNlQ2hpbGQiLCAiYXR0cmlidXRlcyIsICJhdHRyIiwgInZhbHVlIiwgInNheCIsICJwYXJzZXIiLCAiaSIsICJlcnJvciIsICJkYXRhIiwgInMiLCAidGFnIiwgIngiLCAibiIsICJsZW5ndGgiLCAiUXVldWUiLCAic2VsZiIsICJuZXh0IiwgInJlcXVpcmVfdXRpbHMiLCAiaSIsICJtZXRob2RzIiwgImlzQmlnRW5kaWFuIiwgInJlc2VydmVkIiwgInJlc2VydmVkIiwgInNpemUiLCAiaXNCaWdFbmRpYW4iLCAibmV4dCIsICJpIiwgInNpemUiLCAibGVuZ3RoIiwgImhlaWdodCIsICJ3aWR0aCIsICJwb3NpdGlvbiIsICJzaXplIiwgInJvb3QiLCAid2lkdGgiLCAiaGVpZ2h0IiwgImF0dHJzIiwgImZzIiwgImlzQmlnRW5kaWFuIiwgImxlbmd0aCIsICJ3aWR0aCIsICJoZWlnaHQiLCAicmVxdWlyZV9kaXN0IiwgImZzIiwgInBhdGgiLCAic2l6ZSIsICJyZWFkRmlsZVN5bmMiLCAiaW5wdXQiLCAibGVuZ3RoIiwgImkiLCAiYnl0ZUxlbmd0aCIsICJpIiwgImxlbiIsICJhcnIiLCAidWludDgiLCAibGVuMiIsICJpIiwgImxlbmd0aHMiLCAib2ZmIiwgInRhZyIsICJsZW5ndGgiLCAicHJldiIsICJvZmZzIiwgImlzQmlnRW5kaWFuIiwgIm4iLCAiaSIsICJhcnJheSIsICJkYXRhIiwgIklOSVRJQUxfU1RBVEUiLCAiRkFJTF9TVEFURSIsICJTdGF0ZU1hY2hpbmUiLCAiY29uc3RydWN0b3IiLCAiZGZhIiwgInN0YXRlVGFibGUiLCAiYWNjZXB0aW5nIiwgInRhZ3MiLCAibWF0Y2giLCAic3RyIiwgInNlbGYiLCAiU3ltYm9sIiwgIml0ZXJhdG9yIiwgInN0YXRlIiwgInN0YXJ0UnVuIiwgImxhc3RBY2NlcHRpbmciLCAibGFzdFN0YXRlIiwgInAiLCAibGVuZ3RoIiwgImMiLCAiYXBwbHkiLCAiYWN0aW9ucyIsICJzdGFydCIsICJlbmQiLCAidGFnIiwgInNsaWNlIiwgImNsb25lIiwgInBhcmVudCIsICJkZXB0aCIsICJwcm90byIsICJyZXNvbHZlIiwgImkiLCAiYXR0cnMiLCAiaSIsICJyZXF1aXJlX2JpdF9yZWFkZXIiLCAiaSIsICJkYXRhIiwgImkiLCAicmVxdWlyZV9jb250ZXh0IiwgInRyYW5zZm9ybSIsICJpIiwgIkNvbnRleHQiLCAibiIsICJpIiwgIngiLCAibmV4dCIsICJjb3JlIiwgImltcG9ydF95YW1sIiwgImZzIiwgInBhdGgiLCAiZmlsZVVSTFRvUGF0aCIsICJncmVlbiIsICJoZXgiLCAicHJvY2VzcyIsICJwb3NpdGlvbiIsICJzdHlsZXMiLCAiY2hhbGsiLCAic3R5bGVzIiwgInNlbGYiLCAic3RhcnRHcm91cCIsICJsb2ciLCAiZXJyb3IiLCAiWUFNTCIsICJyZWFkRmlsZVN5bmMiLCAicGF0aCIsICJfX2Rpcm5hbWUiLCAicmVhZEZpbGVTeW5jIiwgImVycm9yIiwgImxvZyIsICJmcm9tIiwgImxvZyIsICJyZWFkRmlsZVN5bmMiLCAiZXJyb3IiLCAiY29yZSIsICJmcyIsICJlcnJvciIsICJlcnJvciIsICJsb2ciLCAibmNvbmYiLCAiX19maWxlbmFtZSIsICJmaWxlVVJMVG9QYXRoIiwgIl9fZGlybmFtZSIsICJsb2ciLCAiZXJyb3IiLCAiWUFNTCIsICJjb3JlIiwgImxvZyIsICJmcyIsICJwYXRoIiwgImFycmF5IiwgImkiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIngiLCAieSIsICJkYXRhIiwgIm5vZGUiLCAibm9kZSIsICJpIiwgIm1ldGhvZHMiLCAiaSIsICJhdHRyIiwgImFycmF5IiwgImRhdGEiLCAiaSIsICJoZXgiLCAiaSIsICJ5IiwgIl9hIiwgIl9iIiwgIl9jIiwgIngiLCAiYiIsICJjb2xvciIsICJmb3JtYXQiLCAieCIsICJ5IiwgInBvc2l0aW9uIiwgInJ4IiwgInJ5IiwgImN4IiwgImN5IiwgImR4IiwgImR5IiwgIngiLCAieSIsICJzdmciLCAicGF0aCIsICJub2RlIiwgIngiLCAieSIsICJ3aWR0aCIsICJoZWlnaHQiLCAiYm94IiwgImJib3giLCAiZWwiLCAicmJveCIsICJwb2ludCIsICJhcnIiLCAiaSIsICJtZXRob2RzIiwgImF0dHJzIiwgIm5vZGUiLCAibiIsICJub2RlIiwgImRhdGEiLCAiRXZlbnRUYXJnZXQiLCAiZGF0YSIsICJpIiwgImFyciIsICJhcnJheSIsICJhdHRyIiwgIm5vZGUiLCAiRXZlbnRUYXJnZXQiLCAibm9kZSIsICJhdHRycyIsICJpIiwgIm1hcCIsICJwb3NpdGlvbiIsICJub2RlIiwgImF0dHJzIiwgIngiLCAieSIsICJyb290IiwgImhlaWdodCIsICJhdHRyIiwgIndpZHRoIiwgImkiLCAiY3giLCAiY3kiLCAieCIsICJ5IiwgImxlbmd0aCIsICJtZXRob2RzIiwgInN0ciIsICJtYXRyaXgiLCAidHJhbnNmb3JtIiwgImkiLCAiY3RtIiwgImkiLCAibm9kZSIsICJhdHRycyIsICJyeCIsICJyeSIsICJ4IiwgInkiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiYXR0cnMiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAieCIsICJ5IiwgImF0dHJzIiwgIm5vZGUiLCAiYXR0cnMiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiYXR0cnMiLCAiYXR0ciIsICJ4IiwgInkiLCAiaSIsICJhcnJheSIsICJ3aWR0aCIsICJoZWlnaHQiLCAiaGVpZ2h0IiwgIndpZHRoIiwgIngiLCAieSIsICJ4IiwgInkiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiYXR0cnMiLCAieCIsICJ5IiwgIngyIiwgInkyIiwgIndpZHRoIiwgImhlaWdodCIsICJub2RlIiwgImF0dHJzIiwgImhlaWdodCIsICJ4IiwgInkiLCAid2lkdGgiLCAiYXR0ciIsICJ4MiIsICJ5MiIsICJmcm9tIiwgInRvIiwgIm9zIiwgImkiLCAiaSIsICJwYXJzZXIiLCAibGVuZ3RoIiwgImkiLCAieCIsICJ5IiwgIndpZHRoIiwgImhlaWdodCIsICJpIiwgImFyciIsICJmcm9tIiwgInRvIiwgIm5vZGUiLCAiYXR0cnMiLCAiaGVpZ2h0IiwgIngiLCAieSIsICJ3aWR0aCIsICJ4IiwgInkiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiYXR0cnMiLCAibm9kZSIsICJhdHRycyIsICJub2RlIiwgImF0dHJzIiwgIndpZHRoIiwgImhlaWdodCIsICJub2RlIiwgIkV2ZW50VGFyZ2V0IiwgImkiLCAicnVubmVySW5mbyIsICJpbmZvIiwgInRpbWVsaW5lIiwgIkV2ZW50VGFyZ2V0IiwgInRyYW5zZm9ybSIsICJwb3NpdGlvbiIsICJ4IiwgInRpbWVsaW5lIiwgImkiLCAidHJhbnNmb3JtcyIsICJhdHRycyIsICJwb2ludCIsICJ5IiwgInRvIiwgImZyb20iLCAid2lkdGgiLCAiaGVpZ2h0IiwgIm5vZGUiLCAiYXR0cnMiLCAiU3ltYm9sIiwgIm5vZGUiLCAiYXR0cnMiLCAiY3giLCAiY3kiLCAibW92ZSIsICJ4IiwgInkiLCAieCIsICJ5IiwgIm1vdmUiLCAiY3giLCAiY3kiLCAiYnVpbGQiLCAibm9kZSIsICJhdHRycyIsICJzZWxmIiwgImkiLCAiZm9udFNpemUiLCAiZHkiLCAibm9kZSIsICJhdHRycyIsICJkeCIsICJkeSIsICJpIiwgImZvbnRTaXplIiwgIm5vZGUiLCAiYXR0cnMiLCAicngiLCAicnkiLCAic2l6ZSIsICJub2RlIiwgImF0dHJzIiwgIm5vZGUiLCAiYXR0cnMiLCAid2lkdGgiLCAiaGVpZ2h0IiwgImhlaWdodCIsICJtb3ZlIiwgInNpemUiLCAid2lkdGgiLCAieCIsICJ5IiwgImR4IiwgImR5IiwgImJib3giLCAiaGVpZ2h0IiwgIm1vdmUiLCAieCIsICJ5IiwgInNpemUiLCAid2lkdGgiLCAibm9kZSIsICJhdHRycyIsICJub2RlIiwgImF0dHJzIiwgIm5vZGUiLCAiYXR0cnMiLCAibm9kZSIsICJhdHRycyIsICJpIiwgIm5vZGUiLCAiYXR0cnMiLCAibm9kZSIsICJhdHRycyIsICJwYXRoIiwgIm5vZGUiLCAiYXR0cnMiLCAiU3ltYm9sIiwgIkV2ZW50VGFyZ2V0IiwgImRlZmF1bHRzX2V4cG9ydHMiLCAiam9pbiIsICJkaXJuYW1lIiwgImZpbGVVUkxUb1BhdGgiLCAiZXh0ZW5kIiwgIm1ldGhvZHMiLCAiaSIsICJtaXhpbiIsICJFdmVudFRhcmdldCIsICJpIiwgIm5vZGUiLCAiYXR0cnMiLCAic3ZnIiwgImh0bWwiLCAieG1sbnMiLCAiRXZlbnRUYXJnZXQiLCAiaHRtbCIsICJpIiwgIm5vZGUiLCAiYmVmb3JlIiwgImV4dGVuZCIsICJodG1sIiwgIm5vZGUiLCAiZG9jdW1lbnQiLCAibm9kZSIsICJub2RlIiwgIm5leHQiLCAiZGF0YSIsICJFdmVudCIsICJFdmVudCIsICJUZXh0IiwgIm5vZGUiLCAicm9vdCIsICJmaWx0ZXIiLCAiaGFzQ2xhc3MiLCAibm9kZSIsICJoZXgiLCAiaHRtbEVudGl0aWVzIiwgImRlbGltaXRlciIsICJpIiwgInRyYW5zZm9ybXMiLCAiZGVsaW1pdGVyIiwgImlzUGF0aExldHRlciIsICJxdWVyeSIsICJpIiwgIm5vZGUiLCAibnRoIiwgImRlbGltaXRlciIsICJuIiwgImh0bWwiLCAibm9kZSIsICJub2RlIiwgImRvY3VtZW50IiwgImNkYXRhIiwgInBhcnNlciIsICJzYXgiLCAic3RyIiwgIm5vZGUiLCAiYXR0cnMiLCAibWFwIiwgImFyciIsICJjc3MiLCAieG1sbnMiLCAibm9kZSIsICJodG1sIiwgInN0eWxlcyIsICJFbGVtZW50IiwgImF0dHIiLCAiaHRtbEVudGl0aWVzIiwgIkVsZW1lbnQiLCAic2l6ZU9mIiwgInNpemUiLCAiRXZlbnQiLCAiRWxlbWVudCIsICJQb2ludCIsICJ4IiwgInkiLCAicG9pbnQiLCAiQm94IiwgImRlbGltaXRlciIsICJ4IiwgInkiLCAiUG9pbnQiLCAicmFkaWFucyIsICJ4IiwgInkiLCAiQm94IiwgInBhdGhIYW5kbGVycyIsICJMaW5lIiwgIlBvaW50IiwgImkiLCAicGF0aFBhcnNlciIsICJhcnJheSIsICJkZWxpbWl0ZXIiLCAiYXJyIiwgImlzUGF0aExldHRlciIsICJCb3giLCAicngiLCAicnkiLCAibGVuZ3RoIiwgInJvb3QiLCAieCIsICJ5IiwgIngyIiwgInkyIiwgInBhdGhQYXJzZXIiLCAibGVuZ3RoIiwgImkiLCAieCIsICJ5IiwgIndpZHRoIiwgImhlaWdodCIsICJub2RlIiwgInJ4IiwgInJ5IiwgIngyIiwgInkyIiwgInBhdGgiLCAibGVuZ3RoIiwgImxlbmd0aCIsICJpIiwgIkJhc2UiLCAic2l6ZSIsICJCYXNlIiwgInNpemUiLCAibGVuZ3RoIiwgIkJhc2UiLCAibGVuZ3RoIiwgImkiLCAiYXJyYXkiLCAic2l6ZSIsICJsZW5ndGgiLCAiaSIsICJCYXNlIiwgImkiLCAiQmFzZSIsICJsZW5ndGgiLCAiQmFzZSIsICJCYXNlIiwgImRhdGEiLCAiQmFzZSIsICJsZW5ndGgiLCAid2lkdGgiLCAic2l6ZSIsICJpIiwgIkJhc2UiLCAibGVuZ3RoIiwgInNpemUiLCAiaSIsICJsZW5ndGgiLCAic2l6ZSIsICJpIiwgIkJhc2UiLCAic2l6ZSIsICJpIiwgIiRiZGpHcCR1bmljb2RldHJpZSIsICIkYmRqR3AkYmFzZTY0anMiLCAibiIsICJmb3JtYXQiLCAiaSIsICJrZXkiLCAibWFwcGluZyIsICJhcnIiLCAic2l6ZSIsICIkNTJaSWYkZmFzdGRlZXBlcXVhbCIsICJzdHJlYW0iLCAibGVuZ3RoIiwgInRhZyIsICJ4IiwgInBvc2l0aW9uIiwgInkiLCAidGFnIiwgIm5leHQiLCAiaSIsICJ3aWR0aCIsICJwb3NpdGlvbiIsICJoZWlnaHQiLCAiYmJveCIsICJ4IiwgInkiLCAicHJvY2VzcyIsICJpIiwgImciLCAibGVuZ3RoIiwgImdsb2JhbCIsICJ0YWciLCAiaSIsICIkNTJaSWYkdW5pY29kZXRyaWUiLCAicHJldiIsICJ0YWciLCAiJHBhcmNlbCRpbnRlcm9wRGVmYXVsdCIsICIkNTJaSWYkZGZhIiwgInBvc2l0aW9uIiwgImluZm8iLCAiYXJyIiwgIm9sZFBvcyIsICJpbmRleCIsICJwYWlyIiwgIm5leHQiLCAieCIsICJ5IiwgImJib3giLCAiY3giLCAiY3kiLCAicGF0aCIsICJzaXplIiwgIngiLCAieSIsICJkeCIsICJkeSIsICJwcmV2IiwgImkiLCAicG9pbnQiLCAiY29udG91cnMiLCAicGF0aCIsICJ3aWR0aCIsICJuIiwgInNpemUiLCAiYmJveCIsICJwIiwgIm5leHQiLCAiJDUyWklmJGNsb25lIiwgImZvcm1hdCIsICJ0YWciLCAiJDUyWklmJHRpbnlpbmZsYXRlIiwgIiQ1MlpJZiRicm90bGlkZWNvbXByZXNzanMiLCAibGVuZ3RoIiwgImZvbnRzIiwgIngiLCAieSIsICJmb250RGlyIiwgImZvbnRTaXplIiwgImZvbnRGYW1pbHkiLCAiaSIsICJwYXRoIiwgImhlaWdodCIsICJ3aWR0aCIsICJCb3giLCAibm9kZSIsICJyYm94IiwgImdldFBhdGhTZWdtZW50cyIsICJkeCIsICJkeSIsICJ4IiwgInkiLCAiZGVsaW1pdGVyIiwgImRhdGEiLCAiZm9udFNpemUiLCAiZm9udEZhbWlseSIsICJkZWxpbWl0ZXIiLCAid2lkdGgiLCAiaGVpZ2h0IiwgIngiLCAieSIsICJub2RlIiwgInRyYW5zZm9ybXMiLCAic3RyIiwgIm1hdHJpeCIsICJ0cmFuc2Zvcm0iLCAiQm94IiwgImxlbmd0aCIsICJ1bml0U3RyaW5nIiwgInN2ZyIsICJodG1sIiwgInJvb3QiLCAiRWxlbWVudCIsICJUZXh0IiwgIkV2ZW50VGFyZ2V0IiwgIndpZHRoIiwgImhlaWdodCIsICJub2RlIiwgImF0dHIiLCAiZGVmYXVsdHNfZXhwb3J0cyIsICJwZXJmb3JtYW5jZSIsICJUZXh0IiwgIkVsZW1lbnQiLCAiRXZlbnQiLCAiZXh0ZW5kIiwgIndpbmRvdyIsICJkb2N1bWVudCIsICJzdmciLCAiZG9jdW1lbnQiLCAibG9nIiwgImF0dHIiLCAid2lkdGgiLCAibG9nIiwgInN2ZyIsICJsb2ciLCAiYXJyIiwgImRhdGEiLCAiaSIsICJsb2ciLCAibG9nIiwgImxvZyIsICJsb2ciLCAibG9nIiwgImxvZyIsICJwcm9taXNlcyIsICJwYXRoIiwgImxvZyIsICJwYXRoIiwgImVycm9yIiwgImxvZyIsICJlcnJvciIsICJsb2ciXQp9Cg== diff --git a/dist/mjs/inputs.d.ts b/dist/mjs/inputs.d.ts index 37157bc8..6df0cc0b 100644 --- a/dist/mjs/inputs.d.ts +++ b/dist/mjs/inputs.d.ts @@ -24,6 +24,7 @@ export type ArgvOptionProperties = { describe: string; parseValues?: boolean; type?: string; + default?: string; }; }; /** diff --git a/dist/mjs/inputs.js b/dist/mjs/inputs.js index 466f4ca2..257c0d86 100644 --- a/dist/mjs/inputs.js +++ b/dist/mjs/inputs.js @@ -57,6 +57,7 @@ argvOptions[ConfigKeys.pathsAction] = { alias: ['pathsAction', 'action'], type: 'string', describe: 'Path to the action.yml', + default: './action.yml', }; /** * Paths readme option configuration. @@ -68,6 +69,7 @@ argvOptions[ConfigKeys.pathsReadme] = { alias: ['pathsReadme', 'readme'], type: 'string', describe: 'Path to the README file', + default: 'README.md', }; /** * Branding SVG path option configuration. diff --git a/dist/mjs/inputs.js.map b/dist/mjs/inputs.js.map index ff022fe6..d39a1c0e 100644 --- a/dist/mjs/inputs.js.map +++ b/dist/mjs/inputs.js.map @@ -1 +1 @@ -{"version":3,"file":"inputs.js","sourceRoot":"","sources":["../../src/inputs.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * This class handles input configuration and manipulation.\n * It imports various modules and packages for file operations, configuration parsing, and logging.\n * The class has methods for initializing the input configuration, setting default values, and converting the configuration to a string.\n * It also has properties for storing the configuration values, sections, readme path, action instance, and readme editor instance.\n */\nimport * as fs from 'node:fs';\nimport * as path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nimport * as core from '@actions/core';\nimport { Context } from '@actions/github/lib/context.js';\nimport nconf from 'nconf';\nimport YAML from 'yaml';\n\nimport Action, { Input } from './Action.js';\nimport { configFileName, ConfigKeys, README_SECTIONS, ReadmeSection } from './constants.js';\nimport { repositoryFinder } from './helpers.js';\nimport LogTask from './logtask/index.js';\nimport ReadmeEditor from './readme-editor.js';\n\nconst { Provider } = nconf;\ntype IOptions = nconf.IOptions;\n\n/**\n * Get the filename from the import.meta.url\n */\nexport const __filename = fileURLToPath(import.meta.url);\n\n/**\n * Get the directory name from the filename\n */\nexport const __dirname = path.dirname(__filename);\n\n/**\n * Change working directory to output of workingDirectory()\n */\n// process.chdir(workingDirectory());\nexport const metaActionPath = '../../action.yml';\n\nexport type ArgvOptionProperties = {\n [key: string]: {\n alias: string | string[];\n describe: string;\n parseValues?: boolean;\n type?: string;\n };\n};\n/**\n * Represents the command line argument options for the application.\n */\nconst argvOptions: ArgvOptionProperties = {};\n\n/**\n * Save option configuration.\n * @property {string} alias - Alias for the save option.\n * @property {string} describe - Description for the save option.\n * @property {boolean} parseValues - Specifies whether to parse values for the save option.\n * @property {string} type - Type of the save option.\n */\nargvOptions[ConfigKeys.Save] = {\n alias: 'save',\n describe: `Save this config to ${configFileName}`,\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Paths action option configuration.\n * @property {string | string[]} alias - Alias(es) for the pathsAction option.\n * @property {string} type - Type of the pathsAction option.\n * @property {string} describe - Description for the pathsAction option.\n */\nargvOptions[ConfigKeys.pathsAction] = {\n alias: ['pathsAction', 'action'],\n type: 'string',\n describe: 'Path to the action.yml',\n};\n\n/**\n * Paths readme option configuration.\n * @property {string | string[]} alias - Alias(es) for the pathsReadme option.\n * @property {string} type - Type of the pathsReadme option.\n * @property {string} describe - Description for the pathsReadme option.\n */\nargvOptions[ConfigKeys.pathsReadme] = {\n alias: ['pathsReadme', 'readme'],\n type: 'string',\n describe: 'Path to the README file',\n};\n\n/**\n * Branding SVG path option configuration.\n * @property {string} alias - Alias for the svg option.\n * @property {string} type - Type of the svg option.\n * @property {string} describe - Description for the svg option.\n */\nargvOptions[ConfigKeys.BrandingSvgPath] = {\n alias: 'svg',\n type: 'string',\n describe: 'Save and load the branding svg image in the README from this path',\n};\n\n/**\n * Branding as title prefix option configuration.\n * @property {string} alias - Alias for the branding_prefix option.\n * @property {string} type - Type of the branding_prefix option.\n * @property {boolean} parseValues - Specifies whether to parse values for the branding_prefix option.\n * @property {string} describe - Description for the branding_prefix option.\n */\nargvOptions[ConfigKeys.BrandingAsTitlePrefix] = {\n alias: 'branding_prefix',\n type: 'boolean',\n parseValues: true,\n describe: 'Use the branding svg as a prefix for the README title',\n};\n\n/**\n * Owner option configuration.\n * @property {string} alias - Alias for the owner option.\n * @property {string} type - Type of the owner option.\n * @property {string} describe - Description for the owner option.\n */\nargvOptions[ConfigKeys.Owner] = {\n alias: 'owner',\n type: 'string',\n describe: 'The GitHub Action repository owner. i.e: `bitflight-devops`',\n};\n\n/**\n * Repo option configuration.\n * @property {string} alias - Alias for the repo option.\n * @property {string} type - Type of the repo option.\n * @property {string} describe - Description for the repo option.\n */\nargvOptions[ConfigKeys.Repo] = {\n alias: 'repo',\n type: 'string',\n describe: 'The GitHub Action repository name. i.e: `github-action-readme-generator`',\n};\n\n/**\n * Prettier option configuration.\n * @property {string | string[]} alias - Alias(es) for the prettier option.\n * @property {string} type - Type of the prettier option.\n * @property {boolean} parseValues - Specifies whether to parse values for the prettier option.\n * @property {string} describe - Description for the prettier option.\n */\nargvOptions[ConfigKeys.Prettier] = {\n alias: ['pretty', 'prettier'],\n type: 'boolean',\n parseValues: true,\n describe: 'Format the markdown using prettier formatter',\n};\n\n/**\n * Versioning enabled option configuration.\n * @property {string | string[]} alias - Alias(es) for the versioning_enabled option.\n * @property {string} describe - Description for the versioning_enabled option.\n * @property {boolean} parseValues - Specifies whether to parse values for the versioning_enabled option.\n * @property {string} type - Type of the versioning_enabled option.\n */\nargvOptions[ConfigKeys.VersioningEnabled] = {\n alias: ['versioning', 'versioning_enabled'],\n describe:\n 'Enable the update of the usage version to match the latest version in the package.json file',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Versioning override option configuration.\n * @property {string | string[]} alias - Alias(es) for the versioning_override option.\n * @property {string} describe - Description for the versioning_override option.\n * @property {boolean} parseValues - Specifies whether to parse values for the versioning_override option.\n */\nargvOptions[ConfigKeys.VersioningOverride] = {\n alias: ['setversion', 'versioning_override', 'version_override'],\n describe: 'Set a specific version to display in the README.md',\n parseValues: true,\n};\n\n/**\n * Versioning prefix option configuration.\n * @property {string | string[]} alias - Alias(es) for the version_prefix option.\n * @property {string} describe - Description for the version_prefix option.\n * @property {boolean} parseValues - Specifies whether to parse values for the version_prefix option.\n */\nargvOptions[ConfigKeys.VersioningPrefix] = {\n alias: ['vp', 'version_prefix'],\n describe: \"Prefix the version with this value (if it isn't already prefixed)\",\n parseValues: true,\n};\n\n/**\n * Versioning branch option configuration.\n * @property {string | string[]} alias - Alias(es) for the versioning_default_branch option.\n * @property {string} describe - Description for the versioning_default_branch option.\n * @property {boolean} parseValues - Specifies whether to parse values for the versioning_default_branch option.\n */\nargvOptions[ConfigKeys.VersioningBranch] = {\n alias: ['branch', 'versioning_default_branch'],\n describe: 'If versioning is disabled show this branch instead',\n parseValues: true,\n};\n\n/**\n * Include GitHub version badge option configuration.\n * @property {string | string[]} alias - Alias(es) for the include_github_version_badge option.\n * @property {string} describe - Description for the include_github_version_badge option.\n * @property {boolean} parseValues - Specifies whether to parse values for the include_github_version_badge option.\n * @property {string} type - Type of the include_github_version_badge option.\n */\nargvOptions[ConfigKeys.IncludeGithubVersionBadge] = {\n alias: ['version-badge', 'versioning_badge', 'include_github_version_badge'],\n describe: 'Display the current version as a badge',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Title prefix option configuration.\n * @property {string | string[]} alias - Alias(es) for the title_prefix option.\n * @property {string} describe - Description for the title_prefix option.\n * @property {boolean} parseValues - Specifies whether to parse values for the title_prefix option.\n */\nargvOptions[ConfigKeys.TitlePrefix] = {\n alias: ['prefix', 'title_prefix'],\n describe: 'Add a prefix to the README title',\n parseValues: true,\n};\n\n/**\n * Debug Nconf option configuration.\n * @property {string} describe - Description for the debugNconf option.\n * @property {boolean} parseValues - Specifies whether to parse values for the debugNconf option.\n * @property {string} type - Type of the debugNconf option.\n */\nargvOptions[ConfigKeys.DebugNconf] = {\n alias: ['debug_nconf'],\n describe: 'Print out the resolved nconf object with all values',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Debug Config option configuration.\n * @property {string} describe - Description for the debugConfig option.\n * @property {boolean} parseValues - Specifies whether to parse values for the debugConfig option.\n * @property {string} type - Type of the debugConfig option.\n */\nargvOptions[ConfigKeys.DebugConfig] = {\n alias: ['debug_config'],\n describe: 'Print out the resolved nconf object with all values',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Configuration inputs from the github action don't\n * all match the input names when running on cli.\n * This maps the action inputs to the cli.\n */\nconst ConfigKeysInputsMap: Record = {\n save: ConfigKeys.Save,\n action: ConfigKeys.pathsAction,\n readme: ConfigKeys.pathsReadme,\n branding_svg_path: ConfigKeys.BrandingSvgPath,\n branding_as_title_prefix: ConfigKeys.BrandingAsTitlePrefix,\n versioning_enabled: ConfigKeys.VersioningEnabled,\n version_prefix: ConfigKeys.VersioningPrefix,\n versioning_default_branch: ConfigKeys.VersioningBranch,\n version_override: ConfigKeys.VersioningOverride,\n include_github_version_badge: ConfigKeys.IncludeGithubVersionBadge,\n owner: ConfigKeys.Owner,\n repo: ConfigKeys.Repo,\n title_prefix: ConfigKeys.TitlePrefix,\n pretty: ConfigKeys.Prettier,\n};\n\n/**\n * Interface for key/value pair object\n */\ntype KVPairType = {\n key: string;\n value: string | undefined;\n};\n\n/**\n * Type alias for Provider instance\n */\ntype ProviderInstance = InstanceType;\n\nexport function transformGitHubInputsToArgv(\n log: LogTask,\n config: ProviderInstance,\n obj: KVPairType,\n): undefined | KVPairType {\n /** The obj.key is always in lowercase, but it checks for it without case sensitivity */\n if (/^(INPUT|input)_[A-Z_a-z]\\w*$/.test(obj.key)) {\n log.debug(`Parsing input: ${obj.key} with ith value: ${obj.value}`);\n const keyParsed = obj.key.replace(/^(INPUT|input)_/, '').toLocaleLowerCase();\n const key = ConfigKeysInputsMap[keyParsed] || keyParsed;\n\n log.debug(`New input is ${key} with the value ${obj.value}`);\n return { key, value: obj.value };\n }\n log.debug(`Ignoring input: ${obj.key} with ith value: ${obj.value}`);\n return undefined;\n}\n\n/**\n * Sets config value from action file default\n *\n * @param {Action} actionInstance - The action instance\n * @param {string} inputName - The input name\n * @returns {string | boolean | undefined} The default value\n */\nexport function setConfigValueFromActionFileDefault(\n log: LogTask,\n actionInstance: Action,\n inputName: string,\n): string | boolean | undefined {\n if (ConfigKeysInputsMap[inputName] === undefined) {\n log.error(\n `${inputName} from ${\n actionInstance.path\n } does not match a known input. Known inputs are: ${Object.keys(ConfigKeysInputsMap)}`,\n );\n return;\n }\n\n const configName = ConfigKeysInputsMap[inputName];\n const defaultValue = actionInstance.inputDefault(inputName);\n\n log.debug(`Default Value for action.yml: ${inputName} CLI: ${configName} = ${defaultValue}`);\n\n return defaultValue;\n}\n\n/**\n * Collects all default values from action file\n *\n * @returns {IOptions} The default values object\n */\nexport function collectAllDefaultValuesFromAction(\n log: LogTask,\n providedMetaActionPath?: string,\n providedDefaults: {\n [key: string]: Input;\n } = {},\n): IOptions {\n log.debug('Collecting default values from action.yml');\n // This loads the defaults from THIS action's own action.yml file (github-action-readme-generator's action.yml)\n // NOT the user's action.yml file (which is loaded separately via the 'action' input parameter)\n // Therefore, we use __dirname to find this package's action.yml regardless of where it's installed\n const thisActionPath = path.join(__dirname, providedMetaActionPath ?? metaActionPath);\n try {\n const defaultValues = {} as IOptions;\n const thisAction = new Action(thisActionPath);\n const defaults: {\n [key: string]: Input;\n } = { ...thisAction.inputs, ...providedDefaults };\n // Collect all of the default values from the action.yml file\n if (defaults) {\n for (const key of Object.keys(defaults)) {\n const mappedKey = ConfigKeysInputsMap[key] ?? key;\n defaultValues[mappedKey] = setConfigValueFromActionFileDefault(log, thisAction, key);\n }\n }\n log.debug(JSON.stringify(defaultValues, null, 2));\n return defaultValues;\n } catch (error) {\n // When running as a CLI tool (e.g., via npx or yarn dlx), the tool's own action.yml\n // may not be present in the node_modules. This is expected behavior, as the tool\n // should still work to generate documentation for other actions.\n log.debug(`Could not load defaults from this tool's action.yml at ${thisActionPath}: ${error}`);\n log.debug('Continuing without default values from action.yml');\n return {} as IOptions;\n }\n}\n\n/**\n * Loads the configuration\n *\n * @returns {ProviderInstance} The configuration instance\n */\nexport function loadConfig(\n log: LogTask,\n providedConfig?: ProviderInstance,\n configFilePath?: string,\n): ProviderInstance {\n log.debug('Loading config from env and argv');\n const config = providedConfig ?? new Provider();\n if (process.env.GITHUB_ACTION === 'true') {\n log.info('Running in GitHub action');\n }\n if (configFilePath) {\n if (fs.existsSync(configFilePath)) {\n log.info(`Config file found: ${configFilePath}`);\n config.file(configFilePath);\n } else {\n log.debug(`Config file not found: ${configFilePath}`);\n }\n }\n\n config\n .env({\n lowerCase: true,\n parseValues: true,\n transform: (obj: KVPairType): undefined | KVPairType => {\n return transformGitHubInputsToArgv(log, config, obj);\n },\n })\n .argv(argvOptions);\n\n return config;\n}\n\n/**\n * Loads the default configuration\n *\n * @param {ProviderInstance} config - The config instance\n * @returns {ProviderInstance} The updated config instance\n */\nexport function loadDefaultConfig(\n log: LogTask,\n config: ProviderInstance,\n providedContext?: Context,\n): ProviderInstance {\n log.debug('Loading default config');\n const defaultValues = collectAllDefaultValuesFromAction(log);\n const context = providedContext ?? new Context();\n\n // Get owner/repo from config (which includes CLI args), falling back to env vars for GitHub Actions\n const ownerFromConfig = config.get('owner') as string | undefined;\n const repoFromConfig = config.get('repo') as string | undefined;\n const ownerInput = ownerFromConfig ?? process.env.INPUT_OWNER ?? '';\n const repoInput = repoFromConfig ?? process.env.INPUT_REPO ?? '';\n\n const repositoryDetail = repositoryFinder(`${ownerInput}/${repoInput}`, context);\n log.debug(`repositoryDetail: ${repositoryDetail}`);\n // Apply the default values from the action.yml file\n return config.defaults({\n ...defaultValues,\n owner: repositoryDetail?.owner,\n repo: repositoryDetail?.repo,\n sections: [...README_SECTIONS] as ReadmeSection[],\n });\n}\n\n/**\n * Represents the required inputs for the action.\n */\nconst RequiredInputs = [\n ConfigKeys.pathsAction,\n ConfigKeys.pathsReadme,\n ConfigKeys.Owner,\n ConfigKeys.Repo,\n] as const;\n\n/**\n * Loads the required configuration\n *\n * @param {ProviderInstance} config - The config instance\n * @returns {ProviderInstance} The updated config instance\n */\nexport function loadRequiredConfig(\n log: LogTask,\n config: ProviderInstance,\n requiredInputs: readonly string[] = RequiredInputs,\n): ProviderInstance {\n log.debug('Loading required config');\n\n return config.required([...requiredInputs]);\n}\n\n/**\n *\n */\nexport function loadAction(log: LogTask, actionPath: string): Action {\n log.debug(`Loading action from: ${actionPath}`);\n if (actionPath) {\n return new Action(path.resolve(actionPath));\n }\n throw new Error(`Action path not found: ${actionPath}`);\n}\n\nexport type InputContext = {\n /**\n * The configuration instance\n */\n config?: ProviderInstance;\n\n /**\n * The readme sections\n */\n sections?: ReadmeSection[];\n\n /**\n * The readme file path\n */\n readmePath?: string;\n\n /**\n * The config file path\n */\n configPath?: string;\n\n /**\n * The action instance\n */\n action?: Action;\n\n /**\n * The readme editor instance\n */\n readmeEditor?: ReadmeEditor;\n\n /**\n * The repository owner\n */\n owner?: string;\n\n /**\n * The repository name\n */\n repo?: string;\n};\n/**\n * Main Inputs class that handles configuration\n */\nexport default class Inputs {\n /**\n * The configuration instance\n */\n config: ProviderInstance;\n\n /**\n * The readme sections\n */\n sections: ReadmeSection[];\n\n /**\n * The readme file path\n */\n readmePath: string;\n\n /**\n * The config file path\n */\n configPath: string;\n\n /**\n * The action instance\n */\n action: Action;\n\n /**\n * The readme editor instance\n */\n readmeEditor: ReadmeEditor;\n\n /**\n * The repository owner\n */\n owner: string;\n\n /**\n * The repository name\n */\n repo: string;\n\n /** The logger for this instance */\n log: LogTask;\n\n /**\n * Initializes a new instance of the Inputs class.\n */\n constructor(providedInputContext: InputContext = {}, log: LogTask = new LogTask('inputs')) {\n this.log = log ?? new LogTask('inputs');\n this.log.debug('Initializing Inputs');\n const inputContext = providedInputContext ?? {};\n this.configPath = inputContext.configPath ?? path.resolve(configFileName);\n this.config = inputContext.config ?? new Provider();\n loadConfig(log, this.config, this.configPath);\n loadDefaultConfig(log, this.config);\n loadRequiredConfig(log, this.config);\n\n this.action = inputContext.action ?? loadAction(log, this.config.get(ConfigKeys.pathsAction));\n this.config.set(\n 'sections',\n inputContext.sections ?? (this.config.get('sections') as ReadmeSection[]),\n );\n this.sections = this.config.get('sections') as ReadmeSection[];\n this.readmePath =\n inputContext.readmePath ?? path.resolve(this.config.get(ConfigKeys.pathsReadme) as string);\n this.readmeEditor = inputContext.readmeEditor ?? new ReadmeEditor(this.readmePath);\n /**\n * Output the readme path that is being parsed\n */\n if (process.env.GITHUB_ACTIONS) {\n core.setOutput('readme', this.readmePath);\n }\n /**\n * owner is required, and if it doesn't exist it is handled by nconf which throws an error\n */\n this.owner = inputContext.owner ?? this.config.get('owner');\n\n /**\n * repo is required, and if it doesn't exist it is handled by nconf which throws an error\n */\n this.repo = inputContext.repo ?? this.config.get('repo');\n }\n\n stringify(): string {\n if (this?.config) {\n try {\n return YAML.stringify(this.config.get());\n } catch (error) {\n this.log.error(`${error}`);\n // continue\n }\n }\n // this is just for debug, no need to stop the process if it fails\n return '';\n }\n}\n"]} \ No newline at end of file +{"version":3,"file":"inputs.js","sourceRoot":"","sources":["../../src/inputs.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * This class handles input configuration and manipulation.\n * It imports various modules and packages for file operations, configuration parsing, and logging.\n * The class has methods for initializing the input configuration, setting default values, and converting the configuration to a string.\n * It also has properties for storing the configuration values, sections, readme path, action instance, and readme editor instance.\n */\nimport * as fs from 'node:fs';\nimport * as path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nimport * as core from '@actions/core';\nimport { Context } from '@actions/github/lib/context.js';\nimport nconf from 'nconf';\nimport YAML from 'yaml';\n\nimport Action, { Input } from './Action.js';\nimport { configFileName, ConfigKeys, README_SECTIONS, ReadmeSection } from './constants.js';\nimport { repositoryFinder } from './helpers.js';\nimport LogTask from './logtask/index.js';\nimport ReadmeEditor from './readme-editor.js';\n\nconst { Provider } = nconf;\ntype IOptions = nconf.IOptions;\n\n/**\n * Get the filename from the import.meta.url\n */\nexport const __filename = fileURLToPath(import.meta.url);\n\n/**\n * Get the directory name from the filename\n */\nexport const __dirname = path.dirname(__filename);\n\n/**\n * Change working directory to output of workingDirectory()\n */\n// process.chdir(workingDirectory());\nexport const metaActionPath = '../../action.yml';\n\nexport type ArgvOptionProperties = {\n [key: string]: {\n alias: string | string[];\n describe: string;\n parseValues?: boolean;\n type?: string;\n default?: string;\n };\n};\n/**\n * Represents the command line argument options for the application.\n */\nconst argvOptions: ArgvOptionProperties = {};\n\n/**\n * Save option configuration.\n * @property {string} alias - Alias for the save option.\n * @property {string} describe - Description for the save option.\n * @property {boolean} parseValues - Specifies whether to parse values for the save option.\n * @property {string} type - Type of the save option.\n */\nargvOptions[ConfigKeys.Save] = {\n alias: 'save',\n describe: `Save this config to ${configFileName}`,\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Paths action option configuration.\n * @property {string | string[]} alias - Alias(es) for the pathsAction option.\n * @property {string} type - Type of the pathsAction option.\n * @property {string} describe - Description for the pathsAction option.\n */\nargvOptions[ConfigKeys.pathsAction] = {\n alias: ['pathsAction', 'action'],\n type: 'string',\n describe: 'Path to the action.yml',\n default: './action.yml',\n};\n\n/**\n * Paths readme option configuration.\n * @property {string | string[]} alias - Alias(es) for the pathsReadme option.\n * @property {string} type - Type of the pathsReadme option.\n * @property {string} describe - Description for the pathsReadme option.\n */\nargvOptions[ConfigKeys.pathsReadme] = {\n alias: ['pathsReadme', 'readme'],\n type: 'string',\n describe: 'Path to the README file',\n default: 'README.md',\n};\n\n/**\n * Branding SVG path option configuration.\n * @property {string} alias - Alias for the svg option.\n * @property {string} type - Type of the svg option.\n * @property {string} describe - Description for the svg option.\n */\nargvOptions[ConfigKeys.BrandingSvgPath] = {\n alias: 'svg',\n type: 'string',\n describe: 'Save and load the branding svg image in the README from this path',\n};\n\n/**\n * Branding as title prefix option configuration.\n * @property {string} alias - Alias for the branding_prefix option.\n * @property {string} type - Type of the branding_prefix option.\n * @property {boolean} parseValues - Specifies whether to parse values for the branding_prefix option.\n * @property {string} describe - Description for the branding_prefix option.\n */\nargvOptions[ConfigKeys.BrandingAsTitlePrefix] = {\n alias: 'branding_prefix',\n type: 'boolean',\n parseValues: true,\n describe: 'Use the branding svg as a prefix for the README title',\n};\n\n/**\n * Owner option configuration.\n * @property {string} alias - Alias for the owner option.\n * @property {string} type - Type of the owner option.\n * @property {string} describe - Description for the owner option.\n */\nargvOptions[ConfigKeys.Owner] = {\n alias: 'owner',\n type: 'string',\n describe: 'The GitHub Action repository owner. i.e: `bitflight-devops`',\n};\n\n/**\n * Repo option configuration.\n * @property {string} alias - Alias for the repo option.\n * @property {string} type - Type of the repo option.\n * @property {string} describe - Description for the repo option.\n */\nargvOptions[ConfigKeys.Repo] = {\n alias: 'repo',\n type: 'string',\n describe: 'The GitHub Action repository name. i.e: `github-action-readme-generator`',\n};\n\n/**\n * Prettier option configuration.\n * @property {string | string[]} alias - Alias(es) for the prettier option.\n * @property {string} type - Type of the prettier option.\n * @property {boolean} parseValues - Specifies whether to parse values for the prettier option.\n * @property {string} describe - Description for the prettier option.\n */\nargvOptions[ConfigKeys.Prettier] = {\n alias: ['pretty', 'prettier'],\n type: 'boolean',\n parseValues: true,\n describe: 'Format the markdown using prettier formatter',\n};\n\n/**\n * Versioning enabled option configuration.\n * @property {string | string[]} alias - Alias(es) for the versioning_enabled option.\n * @property {string} describe - Description for the versioning_enabled option.\n * @property {boolean} parseValues - Specifies whether to parse values for the versioning_enabled option.\n * @property {string} type - Type of the versioning_enabled option.\n */\nargvOptions[ConfigKeys.VersioningEnabled] = {\n alias: ['versioning', 'versioning_enabled'],\n describe:\n 'Enable the update of the usage version to match the latest version in the package.json file',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Versioning override option configuration.\n * @property {string | string[]} alias - Alias(es) for the versioning_override option.\n * @property {string} describe - Description for the versioning_override option.\n * @property {boolean} parseValues - Specifies whether to parse values for the versioning_override option.\n */\nargvOptions[ConfigKeys.VersioningOverride] = {\n alias: ['setversion', 'versioning_override', 'version_override'],\n describe: 'Set a specific version to display in the README.md',\n parseValues: true,\n};\n\n/**\n * Versioning prefix option configuration.\n * @property {string | string[]} alias - Alias(es) for the version_prefix option.\n * @property {string} describe - Description for the version_prefix option.\n * @property {boolean} parseValues - Specifies whether to parse values for the version_prefix option.\n */\nargvOptions[ConfigKeys.VersioningPrefix] = {\n alias: ['vp', 'version_prefix'],\n describe: \"Prefix the version with this value (if it isn't already prefixed)\",\n parseValues: true,\n};\n\n/**\n * Versioning branch option configuration.\n * @property {string | string[]} alias - Alias(es) for the versioning_default_branch option.\n * @property {string} describe - Description for the versioning_default_branch option.\n * @property {boolean} parseValues - Specifies whether to parse values for the versioning_default_branch option.\n */\nargvOptions[ConfigKeys.VersioningBranch] = {\n alias: ['branch', 'versioning_default_branch'],\n describe: 'If versioning is disabled show this branch instead',\n parseValues: true,\n};\n\n/**\n * Include GitHub version badge option configuration.\n * @property {string | string[]} alias - Alias(es) for the include_github_version_badge option.\n * @property {string} describe - Description for the include_github_version_badge option.\n * @property {boolean} parseValues - Specifies whether to parse values for the include_github_version_badge option.\n * @property {string} type - Type of the include_github_version_badge option.\n */\nargvOptions[ConfigKeys.IncludeGithubVersionBadge] = {\n alias: ['version-badge', 'versioning_badge', 'include_github_version_badge'],\n describe: 'Display the current version as a badge',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Title prefix option configuration.\n * @property {string | string[]} alias - Alias(es) for the title_prefix option.\n * @property {string} describe - Description for the title_prefix option.\n * @property {boolean} parseValues - Specifies whether to parse values for the title_prefix option.\n */\nargvOptions[ConfigKeys.TitlePrefix] = {\n alias: ['prefix', 'title_prefix'],\n describe: 'Add a prefix to the README title',\n parseValues: true,\n};\n\n/**\n * Debug Nconf option configuration.\n * @property {string} describe - Description for the debugNconf option.\n * @property {boolean} parseValues - Specifies whether to parse values for the debugNconf option.\n * @property {string} type - Type of the debugNconf option.\n */\nargvOptions[ConfigKeys.DebugNconf] = {\n alias: ['debug_nconf'],\n describe: 'Print out the resolved nconf object with all values',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Debug Config option configuration.\n * @property {string} describe - Description for the debugConfig option.\n * @property {boolean} parseValues - Specifies whether to parse values for the debugConfig option.\n * @property {string} type - Type of the debugConfig option.\n */\nargvOptions[ConfigKeys.DebugConfig] = {\n alias: ['debug_config'],\n describe: 'Print out the resolved nconf object with all values',\n parseValues: true,\n type: 'boolean',\n};\n\n/**\n * Configuration inputs from the github action don't\n * all match the input names when running on cli.\n * This maps the action inputs to the cli.\n */\nconst ConfigKeysInputsMap: Record = {\n save: ConfigKeys.Save,\n action: ConfigKeys.pathsAction,\n readme: ConfigKeys.pathsReadme,\n branding_svg_path: ConfigKeys.BrandingSvgPath,\n branding_as_title_prefix: ConfigKeys.BrandingAsTitlePrefix,\n versioning_enabled: ConfigKeys.VersioningEnabled,\n version_prefix: ConfigKeys.VersioningPrefix,\n versioning_default_branch: ConfigKeys.VersioningBranch,\n version_override: ConfigKeys.VersioningOverride,\n include_github_version_badge: ConfigKeys.IncludeGithubVersionBadge,\n owner: ConfigKeys.Owner,\n repo: ConfigKeys.Repo,\n title_prefix: ConfigKeys.TitlePrefix,\n pretty: ConfigKeys.Prettier,\n};\n\n/**\n * Interface for key/value pair object\n */\ntype KVPairType = {\n key: string;\n value: string | undefined;\n};\n\n/**\n * Type alias for Provider instance\n */\ntype ProviderInstance = InstanceType;\n\nexport function transformGitHubInputsToArgv(\n log: LogTask,\n config: ProviderInstance,\n obj: KVPairType,\n): undefined | KVPairType {\n /** The obj.key is always in lowercase, but it checks for it without case sensitivity */\n if (/^(INPUT|input)_[A-Z_a-z]\\w*$/.test(obj.key)) {\n log.debug(`Parsing input: ${obj.key} with ith value: ${obj.value}`);\n const keyParsed = obj.key.replace(/^(INPUT|input)_/, '').toLocaleLowerCase();\n const key = ConfigKeysInputsMap[keyParsed] || keyParsed;\n\n log.debug(`New input is ${key} with the value ${obj.value}`);\n return { key, value: obj.value };\n }\n log.debug(`Ignoring input: ${obj.key} with ith value: ${obj.value}`);\n return undefined;\n}\n\n/**\n * Sets config value from action file default\n *\n * @param {Action} actionInstance - The action instance\n * @param {string} inputName - The input name\n * @returns {string | boolean | undefined} The default value\n */\nexport function setConfigValueFromActionFileDefault(\n log: LogTask,\n actionInstance: Action,\n inputName: string,\n): string | boolean | undefined {\n if (ConfigKeysInputsMap[inputName] === undefined) {\n log.error(\n `${inputName} from ${\n actionInstance.path\n } does not match a known input. Known inputs are: ${Object.keys(ConfigKeysInputsMap)}`,\n );\n return;\n }\n\n const configName = ConfigKeysInputsMap[inputName];\n const defaultValue = actionInstance.inputDefault(inputName);\n\n log.debug(`Default Value for action.yml: ${inputName} CLI: ${configName} = ${defaultValue}`);\n\n return defaultValue;\n}\n\n/**\n * Collects all default values from action file\n *\n * @returns {IOptions} The default values object\n */\nexport function collectAllDefaultValuesFromAction(\n log: LogTask,\n providedMetaActionPath?: string,\n providedDefaults: {\n [key: string]: Input;\n } = {},\n): IOptions {\n log.debug('Collecting default values from action.yml');\n // This loads the defaults from THIS action's own action.yml file (github-action-readme-generator's action.yml)\n // NOT the user's action.yml file (which is loaded separately via the 'action' input parameter)\n // Therefore, we use __dirname to find this package's action.yml regardless of where it's installed\n const thisActionPath = path.join(__dirname, providedMetaActionPath ?? metaActionPath);\n try {\n const defaultValues = {} as IOptions;\n const thisAction = new Action(thisActionPath);\n const defaults: {\n [key: string]: Input;\n } = { ...thisAction.inputs, ...providedDefaults };\n // Collect all of the default values from the action.yml file\n if (defaults) {\n for (const key of Object.keys(defaults)) {\n const mappedKey = ConfigKeysInputsMap[key] ?? key;\n defaultValues[mappedKey] = setConfigValueFromActionFileDefault(log, thisAction, key);\n }\n }\n log.debug(JSON.stringify(defaultValues, null, 2));\n return defaultValues;\n } catch (error) {\n // When running as a CLI tool (e.g., via npx or yarn dlx), the tool's own action.yml\n // may not be present in the node_modules. This is expected behavior, as the tool\n // should still work to generate documentation for other actions.\n log.debug(`Could not load defaults from this tool's action.yml at ${thisActionPath}: ${error}`);\n log.debug('Continuing without default values from action.yml');\n return {} as IOptions;\n }\n}\n\n/**\n * Loads the configuration\n *\n * @returns {ProviderInstance} The configuration instance\n */\nexport function loadConfig(\n log: LogTask,\n providedConfig?: ProviderInstance,\n configFilePath?: string,\n): ProviderInstance {\n log.debug('Loading config from env and argv');\n const config = providedConfig ?? new Provider();\n if (process.env.GITHUB_ACTION === 'true') {\n log.info('Running in GitHub action');\n }\n if (configFilePath) {\n if (fs.existsSync(configFilePath)) {\n log.info(`Config file found: ${configFilePath}`);\n config.file(configFilePath);\n } else {\n log.debug(`Config file not found: ${configFilePath}`);\n }\n }\n\n config\n .env({\n lowerCase: true,\n parseValues: true,\n transform: (obj: KVPairType): undefined | KVPairType => {\n return transformGitHubInputsToArgv(log, config, obj);\n },\n })\n .argv(argvOptions);\n\n return config;\n}\n\n/**\n * Loads the default configuration\n *\n * @param {ProviderInstance} config - The config instance\n * @returns {ProviderInstance} The updated config instance\n */\nexport function loadDefaultConfig(\n log: LogTask,\n config: ProviderInstance,\n providedContext?: Context,\n): ProviderInstance {\n log.debug('Loading default config');\n const defaultValues = collectAllDefaultValuesFromAction(log);\n const context = providedContext ?? new Context();\n\n // Get owner/repo from config (which includes CLI args), falling back to env vars for GitHub Actions\n const ownerFromConfig = config.get('owner') as string | undefined;\n const repoFromConfig = config.get('repo') as string | undefined;\n const ownerInput = ownerFromConfig ?? process.env.INPUT_OWNER ?? '';\n const repoInput = repoFromConfig ?? process.env.INPUT_REPO ?? '';\n\n const repositoryDetail = repositoryFinder(`${ownerInput}/${repoInput}`, context);\n log.debug(`repositoryDetail: ${repositoryDetail}`);\n // Apply the default values from the action.yml file\n return config.defaults({\n ...defaultValues,\n owner: repositoryDetail?.owner,\n repo: repositoryDetail?.repo,\n sections: [...README_SECTIONS] as ReadmeSection[],\n });\n}\n\n/**\n * Represents the required inputs for the action.\n */\nconst RequiredInputs = [\n ConfigKeys.pathsAction,\n ConfigKeys.pathsReadme,\n ConfigKeys.Owner,\n ConfigKeys.Repo,\n] as const;\n\n/**\n * Loads the required configuration\n *\n * @param {ProviderInstance} config - The config instance\n * @returns {ProviderInstance} The updated config instance\n */\nexport function loadRequiredConfig(\n log: LogTask,\n config: ProviderInstance,\n requiredInputs: readonly string[] = RequiredInputs,\n): ProviderInstance {\n log.debug('Loading required config');\n\n return config.required([...requiredInputs]);\n}\n\n/**\n *\n */\nexport function loadAction(log: LogTask, actionPath: string): Action {\n log.debug(`Loading action from: ${actionPath}`);\n if (actionPath) {\n return new Action(path.resolve(actionPath));\n }\n throw new Error(`Action path not found: ${actionPath}`);\n}\n\nexport type InputContext = {\n /**\n * The configuration instance\n */\n config?: ProviderInstance;\n\n /**\n * The readme sections\n */\n sections?: ReadmeSection[];\n\n /**\n * The readme file path\n */\n readmePath?: string;\n\n /**\n * The config file path\n */\n configPath?: string;\n\n /**\n * The action instance\n */\n action?: Action;\n\n /**\n * The readme editor instance\n */\n readmeEditor?: ReadmeEditor;\n\n /**\n * The repository owner\n */\n owner?: string;\n\n /**\n * The repository name\n */\n repo?: string;\n};\n/**\n * Main Inputs class that handles configuration\n */\nexport default class Inputs {\n /**\n * The configuration instance\n */\n config: ProviderInstance;\n\n /**\n * The readme sections\n */\n sections: ReadmeSection[];\n\n /**\n * The readme file path\n */\n readmePath: string;\n\n /**\n * The config file path\n */\n configPath: string;\n\n /**\n * The action instance\n */\n action: Action;\n\n /**\n * The readme editor instance\n */\n readmeEditor: ReadmeEditor;\n\n /**\n * The repository owner\n */\n owner: string;\n\n /**\n * The repository name\n */\n repo: string;\n\n /** The logger for this instance */\n log: LogTask;\n\n /**\n * Initializes a new instance of the Inputs class.\n */\n constructor(providedInputContext: InputContext = {}, log: LogTask = new LogTask('inputs')) {\n this.log = log ?? new LogTask('inputs');\n this.log.debug('Initializing Inputs');\n const inputContext = providedInputContext ?? {};\n this.configPath = inputContext.configPath ?? path.resolve(configFileName);\n this.config = inputContext.config ?? new Provider();\n loadConfig(log, this.config, this.configPath);\n loadDefaultConfig(log, this.config);\n loadRequiredConfig(log, this.config);\n\n this.action = inputContext.action ?? loadAction(log, this.config.get(ConfigKeys.pathsAction));\n this.config.set(\n 'sections',\n inputContext.sections ?? (this.config.get('sections') as ReadmeSection[]),\n );\n this.sections = this.config.get('sections') as ReadmeSection[];\n this.readmePath =\n inputContext.readmePath ?? path.resolve(this.config.get(ConfigKeys.pathsReadme) as string);\n this.readmeEditor = inputContext.readmeEditor ?? new ReadmeEditor(this.readmePath);\n /**\n * Output the readme path that is being parsed\n */\n if (process.env.GITHUB_ACTIONS) {\n core.setOutput('readme', this.readmePath);\n }\n /**\n * owner is required, and if it doesn't exist it is handled by nconf which throws an error\n */\n this.owner = inputContext.owner ?? this.config.get('owner');\n\n /**\n * repo is required, and if it doesn't exist it is handled by nconf which throws an error\n */\n this.repo = inputContext.repo ?? this.config.get('repo');\n }\n\n stringify(): string {\n if (this?.config) {\n try {\n return YAML.stringify(this.config.get());\n } catch (error) {\n this.log.error(`${error}`);\n // continue\n }\n }\n // this is just for debug, no need to stop the process if it fails\n return '';\n }\n}\n"]} \ No newline at end of file diff --git a/dist/types/index.d.ts b/dist/types/index.d.ts index ef85f1a3..ec8fbab5 100644 --- a/dist/types/index.d.ts +++ b/dist/types/index.d.ts @@ -460,6 +460,7 @@ declare module "src/inputs" { describe: string; parseValues?: boolean; type?: string; + default?: string; }; }; /** diff --git a/src/inputs.ts b/src/inputs.ts index fa6001b0..b802e0fd 100644 --- a/src/inputs.ts +++ b/src/inputs.ts @@ -44,6 +44,7 @@ export type ArgvOptionProperties = { describe: string; parseValues?: boolean; type?: string; + default?: string; }; }; /** @@ -75,6 +76,7 @@ argvOptions[ConfigKeys.pathsAction] = { alias: ['pathsAction', 'action'], type: 'string', describe: 'Path to the action.yml', + default: './action.yml', }; /** @@ -87,6 +89,7 @@ argvOptions[ConfigKeys.pathsReadme] = { alias: ['pathsReadme', 'readme'], type: 'string', describe: 'Path to the README file', + default: 'README.md', }; /**